From e518ad34a5f185a8833a2fe339ce7b0cac9d143c Mon Sep 17 00:00:00 2001 From: web3dev1337 <160291380+web3dev1337@users.noreply.github.com> Date: Thu, 5 Mar 2026 14:57:03 +1100 Subject: [PATCH 01/40] docs: import external performance notes + verification --- .../FINDINGS.md | 80 ++++++ .../perf-external-notes-2026-03-05/README.md | 7 + .../raw/COLLIDER_ARCHITECTURE_RESEARCH.md | 159 ++++++++++ .../ENTITY_SYNC_DELTA_COMPRESSION_DESIGN.md | 226 +++++++++++++++ .../GREEDY_MESHING_IMPLEMENTATION_GUIDE.md | 182 ++++++++++++ .../raw/MAP_ENGINE_ARCHITECTURE.md | 272 ++++++++++++++++++ .../raw/MINECRAFT_ARCHITECTURE_RESEARCH.md | 161 +++++++++++ .../raw/NETWORK_PROTOCOL_2026_RESEARCH.md | 130 +++++++++ .../SMOOTH_WORLD_STREAMING_REFACTOR_PLAN.md | 180 ++++++++++++ .../raw/VOXEL_ENGINE_2026_MASTER_PLAN.md | 218 ++++++++++++++ .../raw/VOXEL_PERFORMANCE_MASTER_PLAN.md | 153 ++++++++++ .../raw/VOXEL_RENDERING_RESEARCH.md | 190 ++++++++++++ 12 files changed, 1958 insertions(+) create mode 100644 ai-memory/docs/perf-external-notes-2026-03-05/FINDINGS.md create mode 100644 ai-memory/docs/perf-external-notes-2026-03-05/README.md create mode 100644 ai-memory/docs/perf-external-notes-2026-03-05/raw/COLLIDER_ARCHITECTURE_RESEARCH.md create mode 100644 ai-memory/docs/perf-external-notes-2026-03-05/raw/ENTITY_SYNC_DELTA_COMPRESSION_DESIGN.md create mode 100644 ai-memory/docs/perf-external-notes-2026-03-05/raw/GREEDY_MESHING_IMPLEMENTATION_GUIDE.md create mode 100644 ai-memory/docs/perf-external-notes-2026-03-05/raw/MAP_ENGINE_ARCHITECTURE.md create mode 100644 ai-memory/docs/perf-external-notes-2026-03-05/raw/MINECRAFT_ARCHITECTURE_RESEARCH.md create mode 100644 ai-memory/docs/perf-external-notes-2026-03-05/raw/NETWORK_PROTOCOL_2026_RESEARCH.md create mode 100644 ai-memory/docs/perf-external-notes-2026-03-05/raw/SMOOTH_WORLD_STREAMING_REFACTOR_PLAN.md create mode 100644 ai-memory/docs/perf-external-notes-2026-03-05/raw/VOXEL_ENGINE_2026_MASTER_PLAN.md create mode 100644 ai-memory/docs/perf-external-notes-2026-03-05/raw/VOXEL_PERFORMANCE_MASTER_PLAN.md create mode 100644 ai-memory/docs/perf-external-notes-2026-03-05/raw/VOXEL_RENDERING_RESEARCH.md diff --git a/ai-memory/docs/perf-external-notes-2026-03-05/FINDINGS.md b/ai-memory/docs/perf-external-notes-2026-03-05/FINDINGS.md new file mode 100644 index 00000000..ad698935 --- /dev/null +++ b/ai-memory/docs/perf-external-notes-2026-03-05/FINDINGS.md @@ -0,0 +1,80 @@ +# External Notes vs. HYTOPIA Source (Verification + PR Cross-Check) + +Base reference for verification in this branch: `origin/master` at `24a295d` (2026-03-05). + +## What Was Imported + +Unmodified external notes live in `ai-memory/docs/perf-external-notes-2026-03-05/raw/`. + +## Quick Take + +The external docs mix: + +- **Accurate observations about the current client** (notably: face culling exists; greedy meshing does not; geometry churn is high; packet decompression is synchronous). +- **Roadmap/architecture assumptions that do not match `master`** (procedural streaming, time-budgeted collider queues, LOD/occlusion/face-limit systems, several referenced constants/functions). + +So: use them as *idea input*, but treat many “current state” statements as unverified unless they point to code that exists on `master`. + +## Claim Verification (Against `master`) + +### Client meshing/rendering + +- ✅ **Face culling exists**: `client/src/workers/ChunkWorker.ts` culls faces when neighbor blocks are solid/opaque. +- ❌ **Greedy meshing is not implemented**: `client/src/workers/ChunkWorker.ts` emits per-face quads (4 vertices per visible face) with no quad merging pass. +- ❌ **Vertex pooling is not present**: `client/src/chunks/ChunkMeshManager.ts` recreates a new `BufferGeometry` for each batch update and disposes the old geometry. +- ❌ **LOD / cave occlusion / “face limit safety caps” described in notes are not found** via repo search on `client/src/` (`lod`, `occlusion`, face-count thresholds, BFS visibility, etc.). + +### Client networking + +- ✅ **Synchronous gzip decompression on the main thread**: `client/src/network/NetworkManager.ts` calls `gunzipSync` (fflate) before msgpack decode. + +### Server networking (entity/chunk sync) + +- ✅ **Entity pos/rot are a dominant sync path (and split to unreliable when pos/rot-only)**: `server/src/networking/NetworkSynchronizer.ts`. +- ❌ **No entity quantization/delta fields exist today**: `protocol/schemas/Entity.ts` has only `p` (Vector) and `r` (Quaternion). `server/src/networking/Serializer.ts` serializes full float arrays. +- ❌ **No chunk pacing/segmentation is implemented**: `server/src/networking/NetworkSynchronizer.ts` batches *all queued chunk syncs* into a single packet each sync. + +### Server colliders / chunk streaming + +Several external docs reference a *procedural streaming* pipeline (chunks-per-tick, queued collider chunk processing, async region I/O). Those specific codepaths/constants (e.g. `CHUNKS_PER_TICK`, `processPendingColliderChunks`, `COLLIDER_MAX_CHUNK_DISTANCE`, `server/src/worlds/maps/*`) are **not present on `master`**. + +## Notable Errors / Corrections in the Notes + +- **Quantized position range math is wrong as written**: + - If you encode `pq = round(x * 256)` into **int16**, the representable world range is about **±128 blocks**, not ±32768 blocks. + - To keep **1/256 block precision** over large worlds, you need larger integers (e.g. int32), smaller quantization, or chunk-relative encoding. + +## How This Relates to Your Performance PRs + +PRs authored by you that touch performance (as of 2026-03-05): + +- #2 (OPEN) `analysis/codebase-audit`: https://github.com/web3dev1337/hytopia-source/pull/2 +- #3 (OPEN) `docs/iphone-pro-performance-analysis`: https://github.com/web3dev1337/hytopia-source/pull/3 +- #4 (OPEN) `fix/fps-cap-medium-low`: https://github.com/web3dev1337/hytopia-source/pull/4 +- #5 (OPEN) `fix/cap-mobile-dpr`: https://github.com/web3dev1337/hytopia-source/pull/5 +- #6 (OPEN) `feature/map-compression`: https://github.com/web3dev1337/hytopia-source/pull/6 +- #7 (OPEN) `review/mirror-upstream-pr-9`: https://github.com/web3dev1337/hytopia-source/pull/7 +- #8 (OPEN) `review/mirror-upstream-pr-10` (stacked on #7): https://github.com/web3dev1337/hytopia-source/pull/8 +- #9 (OPEN) `review/mirror-upstream-pr-11`: https://github.com/web3dev1337/hytopia-source/pull/9 +- #10 (CLOSED) `fix/cap-mobile-devicepixelratio` (superseded): https://github.com/web3dev1337/hytopia-source/pull/10 + +Where they overlap with the external notes: + +- **High-DPI / mobile GPU load**: + - #4 adds a 60 FPS cap for MEDIUM/LOW (matches the “uncapped 120Hz” problem described in #3). + - #5 caps mobile pixel ratio (matches the “3x DPR” issue described in #3). + - #9 introduces a **pixel budget** based effective pixel ratio and reduces outline overhead (complementary to #3). +- **Outline pass overhead**: + - #9 removes per-mesh define mutation in `SelectiveOutlinePass` by prebuilding shader variants (reduces CPU/shader churn). It does **not** reduce the outline shader’s sampling cost. +- **View-distance mesh visibility**: + - `master` currently iterates all batch meshes each frame. #9 adds cached visibility sets and updates visibility only when the camera crosses a “cell” boundary or settings change. +- **Map size / load time**: + - #6 (compressed maps) addresses the external “JSON map size” concern; the external “binary streaming maps” discussion is broader than #6’s scope. + +## What’s Still Missing (Relative to the External Notes + Your PRs) + +- **Greedy meshing / quad merging** in `client/src/workers/ChunkWorker.ts`. +- **Entity sync quantization / deltas / distance-based rates** (protocol + serializer + client deserializer work). +- **Chunk packet pacing/segmentation** to avoid bursty chunk arrays at join / fast movement. +- **Off-main-thread decompression/decoding** for network payloads (or reduced use of sync `gunzipSync`). + diff --git a/ai-memory/docs/perf-external-notes-2026-03-05/README.md b/ai-memory/docs/perf-external-notes-2026-03-05/README.md new file mode 100644 index 00000000..c1ef1518 --- /dev/null +++ b/ai-memory/docs/perf-external-notes-2026-03-05/README.md @@ -0,0 +1,7 @@ +# External Performance Notes (Imported) + +These documents were copied from the Windows mount (`/mnt/c/Users/AB/Downloads`) on **2026-03-05** and treated as *unverified external notes*. + +- Canonical copies live in `raw/`. +- Some downloads existed as duplicate filenames with ` (1)` suffixes; those duplicates were identical and were not re-copied. + diff --git a/ai-memory/docs/perf-external-notes-2026-03-05/raw/COLLIDER_ARCHITECTURE_RESEARCH.md b/ai-memory/docs/perf-external-notes-2026-03-05/raw/COLLIDER_ARCHITECTURE_RESEARCH.md new file mode 100644 index 00000000..3fe81f1a --- /dev/null +++ b/ai-memory/docs/perf-external-notes-2026-03-05/raw/COLLIDER_ARCHITECTURE_RESEARCH.md @@ -0,0 +1,159 @@ +# Collider Architecture Research + +**Purpose:** Guide the refactor of Hytopia’s block collider system from O(world) to O(nearby chunks). +**Audience:** Engineers implementing Phase 1 (Collider Locality) and Phase 2 (Incremental Voxel Updates). + +--- + +## 1. Current Architecture + +### 1.1 Block Type → Collider + +- One collider per **block type** (dirt, stone, etc.), not per block. +- Voxel collider: Rapier voxel grid; each cell = block present/absent. +- Trimesh collider: Used for non-cube blocks; rebuilt when any block of that type changes. + +### 1.2 Critical Path + +``` +setBlock / addChunkBlocks + → _addBlockTypePlacement + → _getBlockTypePlacements() // iterates ALL chunks of this block type + → _combineVoxelStates(collider) // merges placements into voxel grid + → collider.addToSimulation / setVoxel +``` + +**Problem:** `_getBlockTypePlacements` and `_combineVoxelStates` touch every chunk that contains the block type. As world size grows, this becomes O(world). + +--- + +## 2. Target Architecture: Spatial Locality + +### 2.1 Principle + +- Colliders should only include blocks from chunks **within N chunks of any player** (e.g. N=4). +- When a chunk unloads (player moves away), remove its blocks from colliders. +- When a chunk loads, add its blocks to colliders only if it’s within the active radius. + +### 2.2 Data Structure Change + +**Current:** `_blockTypePlacements` is global (or implicitly spans all chunks). + +**Target:** Maintain a **spatial index**: + +```ts +// Chunk key (bigint) → for each block type in that chunk: Set of global coordinates +private _chunkBlockPlacements: Map>> = new Map(); + +// Active chunk keys: chunks within COLLIDER_RADIUS of any player +private _activeColliderChunkKeys: Set = new Set(); +``` + +- On chunk load: add chunk key to index; add block placements. +- On chunk unload: remove chunk key; remove blocks from colliders. +- `_getBlockTypePlacements` for collider: only return placements from `_activeColliderChunkKeys`. +- `_combineVoxelStates`: only iterate over placements from active chunks. + +### 2.3 Update Flow + +``` +Player moves + → Update _activeColliderChunkKeys (chunks within radius) + → For chunks that left radius: remove from colliders + → For chunks that entered radius: add to colliders + → _combineVoxelStates only over active placements +``` + +--- + +## 3. Incremental Voxel Updates + +### 3.1 Current + +- Adding a chunk: all 4096 blocks added at once to the voxel collider. +- Heavy: `setVoxel` 4096 times + propagation. + +### 3.2 Target + +- Add blocks in **batches** (e.g. 256–512 per tick). +- Time-budget: stop when budget exceeded; resume next tick. +- Rapier voxel API: check if it supports incremental `setVoxel` without full rebuild. + +### 3.3 Implementation Sketch + +```ts +private _pendingVoxelAdds: Array<{ chunk: Chunk; blockTypeId: number; nextIndex: number }> = []; + +function processPendingVoxelAdds(timeBudgetMs: number) { + const start = performance.now(); + while (this._pendingVoxelAdds.length > 0 && (performance.now() - start) < timeBudgetMs) { + const next = this._pendingVoxelAdds[0]; + const chunk = next.chunk; + const count = Math.min(256, chunk.blockCountForType(next.blockTypeId) - next.nextIndex); + for (let i = 0; i < count; i++) { + const idx = next.nextIndex + i; + const globalCoord = chunk.getGlobalCoordinateFromIndex(idx); + collider.setVoxel(globalCoord, true); + } + next.nextIndex += count; + if (next.nextIndex >= chunk.blockCountForType(next.blockTypeId)) { + this._pendingVoxelAdds.shift(); + } + } +} +``` + +--- + +## 4. Trimesh Optimization + +### 4.1 Current + +- Trimesh collider rebuilt whenever any block of that type is added/removed. +- Rebuild = collect all placements, generate mesh, replace collider. + +### 4.2 Options + +1. **Spatial locality:** Only include trimesh blocks from active chunks. Reduces vertex count for large worlds. +2. **Deferred rebuild:** Queue rebuild; execute in next tick within time budget. +3. **Per-chunk trimesh:** If block type is sparse, consider per-chunk trimesh instances instead of one giant trimesh. (Larger change.) + +**Recommendation:** Start with (1) and (2). (3) is Phase 6. + +--- + +## 5. Collider Unload + +When a chunk unloads: + +1. Remove its block placements from the spatial index. +2. For each block type in that chunk: + - Voxel: `setVoxel(coord, false)` for each placement. + - Trimesh: trigger rebuild (only over active chunks). +3. Remove chunk from `_activeColliderChunkKeys`. + +--- + +## 6. Rapier Voxel API Notes + +- Check `rapier3d` docs for `ColliderDesc.heightfield` vs `ColliderDesc.voxel`. +- Voxel colliders: typically a 3D grid; `setVoxel` may or may not support incremental updates. +- If full rebuild required per update: minimize rebuild frequency (batch changes) and scope (active chunks only). + +--- + +## 7. Success Criteria + +| Metric | Before | After | +|--------|--------|-------| +| Chunks scanned per collider update | O(world) | O(active) ~100–300 | +| Time per `_combineVoxelStates` | 5–50 ms | <2 ms | +| Collider add spikes | Full chunk at once | Batched, time-budgeted | + +--- + +## References + +- `ChunkLattice.ts` – `_addChunkBlocksToColliders`, `_combineVoxelStates`, `_getBlockTypePlacements` +- Rapier3D voxel API +- Minecraft: per-section collision, spatial culling diff --git a/ai-memory/docs/perf-external-notes-2026-03-05/raw/ENTITY_SYNC_DELTA_COMPRESSION_DESIGN.md b/ai-memory/docs/perf-external-notes-2026-03-05/raw/ENTITY_SYNC_DELTA_COMPRESSION_DESIGN.md new file mode 100644 index 00000000..c689a4de --- /dev/null +++ b/ai-memory/docs/perf-external-notes-2026-03-05/raw/ENTITY_SYNC_DELTA_COMPRESSION_DESIGN.md @@ -0,0 +1,226 @@ +# Entity Sync: Delta / Compression Design + +**Goal:** Reduce entity position/rotation packet size and bandwidth (currently ~90% of all packets) by replacing full pos/rot with delta or compressed formats. + +--- + +## 1. Current State + +### Flow +- **Server:** Every tick, `entityManager.checkAndEmitUpdates()` runs; each entity calls `checkAndEmitUpdates()`. +- **Entity:** Emits `UPDATE_POSITION` or `UPDATE_ROTATION` when change exceeds threshold: + - **Position:** `ENTITY_POSITION_UPDATE_THRESHOLD_SQ = 0.04²` (0.04 block) + - **Rotation:** `ENTITY_ROTATION_UPDATE_THRESHOLD = cos(3°/2)` (~3°) + - **Player:** Looser position threshold `0.1²` blocks +- **NetworkSynchronizer:** Queues `{ i: id, p: [x,y,z] }` and/or `{ i: id, r: [x,y,z,w] }`. +- **Every 2 ticks (30 Hz):** Splits into reliable vs unreliable; pos/rot-only goes to **unreliable** channel. +- **Serializer:** `serializeVector` → `[x, y, z]`, `serializeQuaternion` → `[x, y, z, w]` (full floats). +- **Transport:** msgpackr with `useFloat32: FLOAT32_OPTIONS.ALWAYS` → 4 bytes per float. + +### Per-Entity Packet Size (approx) +| Format | Bytes (msgpack) | +|--------|-----------------| +| `{ i, p }` pos-only | ~25–35 | +| `{ i, r }` rot-only | ~30–40 | +| `{ i, p, r }` both | ~50–65 | +| 10 entities, pos+rot | ~500–650 | + +With 20 entities at 30 Hz: **~15–20 KB/s** for entity sync alone. + +--- + +## 2. Options for Delta / Compression + +### Option A: Quantized Position (Fixed-Point) + +**Idea:** Encode position as integers. 1 unit = 1/256 block → 0.004 block precision. + +- Range ±32768 blocks → 16-bit signed per axis. +- 3 × 2 bytes = **6 bytes** vs 3 × 4 = 12 bytes (float32). +- **~50% smaller** for position. + +**Implementation:** +```ts +// Server +const QUANT = 256; +p: [Math.round(x * QUANT), Math.round(y * QUANT), Math.round(z * QUANT)] + +// Client +position.x = p[0] / QUANT; // etc. +``` + +**Trade-off:** Precision ~0.004 block. For player/NPC movement this is fine. For very small objects, may need higher quant (e.g. 1024). + +--- + +### Option B: Quantized Quaternion (Smallest-Three) + +**Idea:** Unit quaternion has `q.x² + q.y² + q.z² + q.w² = 1`. Store the 3 components with largest magnitude; reconstruct 4th. + +- 3 × 2 bytes (quantized) = **6 bytes** vs 4 × 4 = 16 bytes. +- **~62% smaller** for rotation. + +**Implementation:** Standard "smallest three" quaternion compression (e.g. [RigidBodyDynamics](https://github.com/gameworks-builder/rigid-body-dynamics) style). Needs protocol change to support packed format. + +--- + +### Option C: Yaw-Only for Player Rotation + +**Idea:** Many entities (players, NPCs) only rotate around Y. Send 1 float (yaw) instead of 4. + +- **4 bytes** vs 16 bytes. +- **75% smaller** for rotation when applicable. + +**Caveat:** Doesn't work for entities with pitch/roll (e.g. flying, vehicles). Use as opt-in per entity type. + +--- + +### Option D: Delta Encoding (Δ from Last Sent) + +**Idea:** Send `Δp = p - p_last` instead of absolute `p`. Small movements → small deltas → msgpack encodes as smaller integers. + +- No schema change; still `[dx, dy, dz]` but values typically small. +- msgpack variable-length integers: small values use 1 byte. +- **Benefit:** 20–50% smaller when movement is small. No extra state on client if server tracks last-sent. + +**Implementation:** Server stores `_lastSentPosition` per entity per player (or broadcast). Send delta; client adds to last known position. Requires client to track "last applied" position. + +--- + +### Option E: Bulk / AoS Format + +**Idea:** Instead of `[{i:1,p:[x,y,z]},{i:2,p:[x,y,z]},...]` use structure of arrays: + +```ts +{ ids: [1,2,3], p: [[x,y,z],[x,y,z],[x,y,z]] } +``` + +- Avoids repeating keys `i`, `p` for every entity (msgpack dedup helps but structure still has overhead). +- **Benefit:** ~15–25% smaller from less map/array framing. + +**Caveat:** Requires new packet schema and client deserializer changes. All-or-nothing; can't mix with current EntitySchema in same packet. + +--- + +### Option F: Distance-Based Sync Rate + +**Idea:** Sync nearby entities at 30 Hz, distant at 10 Hz or 5 Hz. + +- **Benefit:** Fewer packets for far entities; natural LOD. +- **Implementation:** In `checkAndEmitUpdates` or NetworkSynchronizer, track distance from each player; only queue updates for entity if `tick % rateDivisor === 0` based on distance band. + +--- + +## 3. Recommended Approach + +### Phase 1: Low-Risk Wins (1–2 days each) + +| # | Change | Impact | Effort | +|---|--------|--------|--------| +| 1 | **Quantized position** (1/256 block) | ~50% smaller pos | 1 day | +| 2 | **Distance-based sync rate** (30/15/5 Hz bands) | Fewer far-entity updates | 1 day | +| 3 | **Yaw-only rotation** for player entities | ~75% smaller rot for players | 0.5 day | + +### Phase 2: Schema Changes (3–5 days) + +| # | Change | Impact | Effort | +|---|--------|--------|--------| +| 4 | **Quantized quaternion** (smallest-three) | ~62% smaller rot | 2–3 days | +| 5 | **Bulk entity update packet** | ~15–25% smaller framing | 2 days | + +### Phase 3: Advanced (Optional) + +| # | Change | Impact | Effort | +|---|--------|--------|--------| +| 6 | **Delta encoding** | Additional 20–50% when movement small | 2–3 days | +| 7 | **Client-side prediction** | Reduce perceived latency, fewer corrections | 1+ week | + +--- + +## 4. Protocol Changes Required + +### Option 1: Extend EntitySchema (Backwards Compatible) + +Add optional compressed fields; client detects and uses when present: + +```ts +// New optional fields +EntitySchema = { + i: number; + p?: VectorSchema; // existing: [x,y,z] float + r?: QuaternionSchema; // existing: [x,y,z,w] float + pq?: [number,number,number]; // quantized position (1/256 block) + rq?: [number,number,number]; // quantized quaternion (smallest-three) + ry?: number; // yaw only (radians) + // ... +} +``` + +- Server sends `pq` instead of `p` when quantized format enabled. +- Client checks `pq` first, falls back to `p`. +- Old clients ignore `pq`; new clients prefer `pq` when present. + +### Option 2: New Packet Type + +Add `EntityPosRotBulkPacket`: + +```ts +{ + ids: number[], + positions?: Int16Array | number[][], // quantized + rotations?: number[][] | Int16Array[] // quantized or yaw-only +} +``` + +- Used only for unreliable pos/rot updates. +- Existing `EntitiesPacket` still used for spawn/reliable updates. + +--- + +## 5. Key Files + +| Component | Path | +|-----------|------| +| Entity update emission | `server/src/worlds/entities/Entity.ts` (checkAndEmitUpdates) | +| Player threshold | `server/src/worlds/entities/PlayerEntity.ts` | +| Network sync queue | `server/src/networking/NetworkSynchronizer.ts` | +| Serializer | `server/src/networking/Serializer.ts` | +| Protocol schema | `protocol/schemas/Entity.ts` | +| Client deserializer | `client/src/network/Deserializer.ts` | +| Client entity update | `client/src/entities/EntityManager.ts` (_updateEntity) | +| Transport | `server/src/networking/Connection.ts`, `client/.../NetworkManager.ts` | + +--- + +## 6. Quantization Constants (Suggested) + +```ts +// Position: 1/256 block = 0.0039 block precision +const POSITION_QUANT = 256; + +// Position range: ±32768 blocks (16-bit signed) +// Covers ~1km in each direction +const POSITION_MAX = 32767; +const POSITION_MIN = -32768; + +// Quaternion: 16-bit per component, range [-1, 1] → 1/32767 precision +const QUATERNION_QUANT = 32767; +``` + +--- + +## 7. Success Metrics + +| Metric | Current | Target (Phase 1) | Target (Phase 2) | +|--------|---------|------------------|------------------| +| Entity bytes/update (10 entities) | ~500–650 | ~300–400 | ~200–280 | +| Entity sync % of total packets | ~90% | ~70% | ~50% | +| Bandwidth (20 entities, 30 Hz) | ~15–20 KB/s | ~8–12 KB/s | ~5–8 KB/s | + +--- + +## 8. References + +- [Quaternion Compression (smallest three)](http://gafferongames.com/networked-physics/snapshot-compression/) +- [Minecraft entity sync (delta/quantization)](https://wiki.vg/Protocol#Entity_Metadata) +- Current codebase: `Entity.ts` (checkAndEmitUpdates), `NetworkSynchronizer.ts` (entity sync split), `Serializer.ts` (serializeVector/Quaternion) diff --git a/ai-memory/docs/perf-external-notes-2026-03-05/raw/GREEDY_MESHING_IMPLEMENTATION_GUIDE.md b/ai-memory/docs/perf-external-notes-2026-03-05/raw/GREEDY_MESHING_IMPLEMENTATION_GUIDE.md new file mode 100644 index 00000000..66642683 --- /dev/null +++ b/ai-memory/docs/perf-external-notes-2026-03-05/raw/GREEDY_MESHING_IMPLEMENTATION_GUIDE.md @@ -0,0 +1,182 @@ +# Greedy Meshing Implementation Guide + +**Purpose:** Step-by-step guide for implementing greedy quad merging (cubic/canonical meshing) in Hytopia’s ChunkWorker. +**Audience:** Engineers implementing Phase 4 (Greedy Meshing). +**Prerequisites:** Read [0fps Part 1](https://0fps.net/2012/06/30/meshing-in-a-minecraft-game/) and [Part 2](https://0fps.net/2012/07/07/meshing-minecraft-part-2/). + +--- + +## 1. Algorithm Overview + +### 1.1 Input and Output + +- **Input:** Chunk of 16³ blocks. Each block has type ID, optional rotation. +- **Output:** Merged quads (position, size, normal, block type, AO, light). + +### 1.2 High-Level Steps + +1. **Group by (block type, normal, material flags).** Faces with same texture and normal are mergeable. +2. **For each direction** (±X, ±Y, ±Z): + - Build a 2D slice of visible faces (e.g. for +Y, iterate Y layers; for each layer, collect top faces). + - Run 2D greedy merge: combine adjacent same-type faces into rectangles. +3. **Emit merged quads** with correct UVs, AO, and lighting. + +--- + +## 2. Detailed Algorithm (0fps Style) + +### 2.1 Slice Extraction + +For direction `+Y` (top faces): + +- For each Y level `y = 0..15`: + - For each (x, z) in 16×16: + - If block at (x, y, z) is solid and block at (x, y+1, z) is air/transparent: + - Add face with normal (0, 1, 0), block type = block at (x, y, z). + - This gives a 16×16 grid of “face presence” per block type. + - Run 2D greedy merge on this grid. + +Repeat for −Y, ±X, ±Z. + +### 2.2 2D Greedy Merge (Per Slice, Per Block Type) + +``` +for each row j in slice: + for each column i in slice: + if visited[i,j]: continue + if no face at (i,j): continue + blockType = face at (i,j) + width = 1 + while i+width < 16 and same block at (i+width, j) and same AO/light: + width++ + height = 1 + while j+height < 16: + row OK = true + for k = 0 to width-1: + if different block or visited[i+k, j+height]: row OK = false; break + if !row OK: break + height++ + mark (i,j)..(i+width-1, j+height-1) as visited + emit quad: origin (i,j), size (width, height), blockType +``` + +### 2.3 Lexicographic Order (0fps) + +To get deterministic, visually stable meshes, merge in a fixed order (e.g. top-to-bottom, left-to-right) and prefer the lexicographically smallest representation when multiple merges are possible. + +--- + +## 3. Integration with ChunkWorker + +### 3.1 Current Flow (Simplified) + +``` +for each block in chunk: + for each face (6 directions): + if face visible (neighbor empty/transparent): + emit quad +``` + +### 3.2 New Flow + +``` +// Group 1: Opaque solid blocks (greedy) +for dir in [+X,-X,+Y,-Y,+Z,-Z]: + slice = extractVisibleFaces(chunk, dir) + for blockType in unique block types in slice: + subslice = slice filtered by blockType + quads = greedyMerge2D(subslice, dir) + emit quads with AO, light + +// Group 2: Transparent / special (per-face, existing logic) +for each block in chunk: + if block is transparent or special: + for each face: + if visible: emit quad +``` + +### 3.3 AO and Lighting + +- Ambient occlusion: compute per-vertex AO from neighbor blocks (as today). +- Light: sample from light volume (as today). +- For merged quads: corners may have different AO/light. Options: + - **Option A:** Use min AO/light of the merged region (slightly darker; simpler). + - **Option B:** Subdivide quad where AO/light changes (more quads, better quality). + - **Recommendation:** Start with Option A; optimize later. + +--- + +## 4. Data Structures + +### 4.1 Slice Representation + +```ts +// 16x16 grid, value = block type ID (0 = no face) +type Slice = Uint8Array; // 256 elements + +// Or: (blockTypeId, ao, light) per cell if we merge only when all match +interface SliceCell { + blockTypeId: number; + ao: number; + light: number; +} +``` + +### 4.2 Visited Mask + +```ts +// 16x16 boolean +const visited = new Uint8Array(256); // 1 bit per cell, or just 256 bytes +``` + +### 4.3 Merged Quad Output + +```ts +interface MergedQuad { + x: number; // local origin + y: number; + z: number; + width: number; // in blocks, along one horizontal axis + height: number; // in blocks, along other axis + normal: [number, number, number]; + blockTypeId: number; + ao: number; // or per-corner if subdividing + light: number; +} +``` + +--- + +## 5. Implementation Order + +| Step | Task | Est. Time | +|------|------|-----------| +| 1 | Slice extraction for +Y (top faces) | 1 day | +| 2 | 2D greedy merge for +Y slice | 1 day | +| 3 | Apply to all 6 directions | 0.5 day | +| 4 | AO/light handling for merged quads | 1 day | +| 5 | Integration: replace per-face loop for opaque solids | 1 day | +| 6 | Benchmark: vertex count and build time | 0.5 day | +| 7 | Edge cases: chunk boundaries, multi-type batches | 1 day | + +--- + +## 6. Expected Results + +| Terrain Type | Before (vertices) | After (est.) | Reduction | +|--------------|-------------------|--------------|-----------| +| Flat 16×16 | ~6000 | ~200 | ~30× | +| Hilly | ~8000 | ~800 | ~10× | +| Caves | ~4000 | ~600 | ~7× | +| Mixed | ~6000 | ~500 | ~12× | + +Build time may increase by 10–30% due to extra passes; vertex reduction should yield net FPS gain. + +--- + +## 7. References + +- [0fps Part 1 – Meshing in a Minecraft Game](https://0fps.net/2012/06/30/meshing-in-a-minecraft-game/) +- [0fps Part 2 – Multiple block types](https://0fps.net/2012/07/07/meshing-minecraft-part-2/) +- [mikolalysenko/greedy-mesher](https://github.com/mikolalysenko/greedy-mesher) (JavaScript reference) +- [Vercidium greedy voxel meshing gist](https://gist.github.com/Vercidium/a3002bd083cce2bc854c9ff8f0118d33) diff --git a/ai-memory/docs/perf-external-notes-2026-03-05/raw/MAP_ENGINE_ARCHITECTURE.md b/ai-memory/docs/perf-external-notes-2026-03-05/raw/MAP_ENGINE_ARCHITECTURE.md new file mode 100644 index 00000000..f58f543a --- /dev/null +++ b/ai-memory/docs/perf-external-notes-2026-03-05/raw/MAP_ENGINE_ARCHITECTURE.md @@ -0,0 +1,272 @@ +# Hytopia Map Engine Architecture + +This document describes how the Hytopia map engine is set up, its data flow, and a roadmap for adapting it to support **binary maps** for extremely large worlds (e.g., 100k×100k×64 blocks). + +--- + +## 1. Architecture Overview + +The map engine spans **server** (authoritative block state), **client** (rendering, meshing), and **protocol** (network serialization). Maps are loaded once at world initialization and populate a chunk-based block lattice. + +``` +┌─────────────────────────────────────────────────────────────────────────┐ +│ MAP LOAD PIPELINE │ +├─────────────────────────────────────────────────────────────────────────┤ +│ │ +│ JSON Map File World.loadMap() ChunkLattice │ +│ (blockTypes, blocks, ───────────────► initializeBlockEntries() │ +│ entities) │ │ │ +│ │ │ ▼ │ +│ │ │ ChunkLattice clears, │ +│ │ │ creates Chunks, │ +│ │ │ builds colliders │ +│ │ │ │ │ +│ │ ▼ ▼ │ +│ │ BlockTypeRegistry Map │ +│ │ (block types) (sparse chunks) │ +│ │ │ │ +│ │ ▼ │ +│ │ NetworkSynchronizer │ +│ │ (chunk sync to │ +│ │ clients) │ +└─────────────────────────────────────────────────────────────────────────┘ +``` + +--- + +## 2. WorldMap Interface (JSON Format) + +Maps conform to the `WorldMap` interface used by `World.loadMap()`: + +| Section | Purpose | Location | +|---------------|--------------------------------------------------------|-------------------------------| +| `blockTypes` | Block type definitions (id, name, textureUri, etc.) | `server/src/worlds/World.ts` | +| `blocks` | Block placements keyed by `"x,y,z"` string | `WorldMap.blocks` | +| `entities` | Entity spawns keyed by `"x,y,z"` position | `WorldMap.entities` | + +### Block Format in JSON + +Each block entry is either: + +- **Short form:** `"x,y,z": ` (e.g. `"-25,0,-16": 7`) +- **Extended form:** `"x,y,z": { "i": , "r": }` + +Coordinates are **world block coordinates** (integers). Block type IDs are 0–255 (0 = air, 1–255 = registered block types). + +### Size Implications of JSON Maps + +| Factor | Impact | +|---------------------------|-----------------------------------------------------------------------| +| Sparse object keys | Each block = `"x,y,z"` string key (10–20+ chars) + JSON overhead | +| No chunk-level batching | All blocks listed individually; no spatial grouping | +| Parsing cost | Full JSON parse loads entire map into memory before processing | +| File size | `boilerplate-small.json` ≈ 4,600+ lines; `big-world` ≈ 309,000+ lines | + +For a **100k×100k×64** fully dense map: + +- Blocks: 640 billion +- JSON would be impractically huge (hundreds of GB+ as text) +- Even sparse terrain would produce multi-GB JSON for large worlds + +--- + +## 3. Chunk Model + +### Chunk Dimensions + +| Constant | Value | Location | +|----------------|-------|--------------------------------------| +| `CHUNK_SIZE` | 16 | `server/src/worlds/blocks/Chunk.ts` | +| `CHUNK_VOLUME` | 4096 | 16³ blocks per chunk | +| `MAX_BLOCK_TYPE_ID` | 255 | `Chunk.ts` | + +Chunk origins are multiples of 16 on each axis (e.g. `(0,0,0)`, `(16,0,0)`, `(0,16,0)`). + +### Chunk Storage + +- **`Chunk._blocks`:** `Uint8Array(4096)` – block type ID per voxel +- **`Chunk._blockRotations`:** `Map` – sparse map of block index → rotation +- **Block index:** `x + (y << 4) + (z << 8)` (local coords 0–15) + +Chunks are stored in `ChunkLattice._chunks` as `Map` keyed by packed chunk origin: + +```typescript +// ChunkLattice._packCoordinate() – 54 bits per axis +chunkKey = (x << 108) | (y << 54) | z +``` + +--- + +## 4. Load Flow: `World.loadMap()` + +```typescript +// server/src/worlds/World.ts +public loadMap(map: WorldMap) { + this.chunkLattice.clear(); + + // 1. Register block types + if (map.blockTypes) { + for (const blockTypeData of map.blockTypes) { + this.blockTypeRegistry.registerGenericBlockType({ ... }); + } + } + + // 2. Iterate blocks as generator, feed to ChunkLattice + if (map.blocks) { + const blockEntries = function* () { + for (const key in mapBlocks) { + const blockValue = mapBlocks[key]; + const blockTypeId = typeof blockValue === 'number' ? blockValue : blockValue.i; + const blockRotationIndex = typeof blockValue === 'number' ? undefined : blockValue.r; + const [x, y, z] = key.split(',').map(Number); + yield { globalCoordinate: { x, y, z }, blockTypeId, blockRotation }; + } + }; + this.chunkLattice.initializeBlockEntries(blockEntries()); + } + + // 3. Spawn entities + if (map.entities) { ... } +} +``` + +### `ChunkLattice.initializeBlockEntries()` + +- Clears the lattice +- For each block: resolves chunk, creates chunk if needed, calls `chunk.setBlock()` +- Tracks block placements per type for colliders +- After all blocks: builds one collider per block type (voxel or trimesh) + +--- + +## 5. Client-Server Chunk Sync + +Chunks are serialized and sent to clients via `NetworkSynchronizer`: + +| Protocol Field | Description | +|----------------|--------------------------------------| +| `c` | Chunk origin `[x, y, z]` | +| `b` | Block IDs `Uint8Array \| number[]` (4096) | +| `r` | Rotations: flat `[blockIndex, rotIndex, ...]` | +| `rm` | Chunk removed flag | + +- **Serializer:** `Serializer.serializeChunk()` → `protocol.ChunkSchema` +- **Client:** `Deserializer.deserializeChunk()` → `DeserializedChunk` +- **ChunkWorker:** Receives `chunk_update`, registers chunk, builds meshes + +The client does **not** load the JSON map. It receives chunks from the server over the network after a player joins a world. + +--- + +## 6. Key Files Reference + +| Component | Path | +|----------------------|--------------------------------------------------| +| WorldMap interface | `server/src/worlds/World.ts` | +| loadMap | `server/src/worlds/World.ts` | +| ChunkLattice | `server/src/worlds/blocks/ChunkLattice.ts` | +| Chunk | `server/src/worlds/blocks/Chunk.ts` | +| ChunkSchema (proto) | `protocol/schemas/Chunk.ts` | +| Serializer | `server/src/networking/Serializer.ts` | +| ChunkWorker (client) | `client/src/workers/ChunkWorker.ts` | +| Deserializer | `client/src/network/Deserializer.ts` | + +--- + +## 7. Binary Map Adaptation Roadmap for 100k×100k×64 + +To support huge maps efficiently, the engine should move from JSON to **binary map sources** with **chunk-level loading** and **streaming**. + +### 7.1 Binary Chunk Format (Proposed) + +Store one file or region per chunk (or region of chunks): + +``` +chunk.{cx}.{cy}.{cz}.bin OR region.{rx}.{ry}.{rz}.bin +``` + +**Suggested layout per chunk (raw):** + +| Offset | Size | Content | +|--------|--------|------------------------------------------| +| 0 | 12 | Origin (3× int32: x, y, z) | +| 12 | 4096 | Block IDs (Uint8Array) | +| 4108 | var | Sparse rotations: count + [idx, rot]... | + +Or use a compact format (e.g. run-length encoding for air, or palette indices) for sparse chunks. + +### 7.2 Streaming / Lazy Loading + +- **Do not** load the entire map into memory. +- Use a **chunk provider** that: + - Accepts `(chunkOriginX, chunkOriginY, chunkOriginZ)` and returns chunk data + - Reads from binary files, memory-mapped files, or a database +- Replace the current `loadMap()` bulk load with: + - Initial load of a small seed area (e.g. spawn region) + - On-demand loading when `ChunkLattice.getOrCreateChunk()` needs a chunk not yet in memory + +### 7.3 Implementation Strategy + +1. **`MapProvider` interface** + ```typescript + interface MapProvider { + getChunk(origin: Vector3Like): ChunkData | null | Promise; + getBlockTypes(): BlockTypeOptions[]; + } + ``` + +2. **`BinaryMapProvider`** + - Reads `.bin` chunk files from disk or object storage + - Maps chunk origin → file path or byte range + - Returns `{ blocks: Uint8Array, rotations: Map }` + +3. **ChunkLattice changes** + - Replace `initializeBlockEntries()` full load with lazy `getOrCreateChunk()` that: + - Checks `_chunks` cache + - If miss: calls `MapProvider.getChunk()`, creates `Chunk`, inserts into `_chunks` + - Optionally preload chunks in a radius around player(s) + +4. **Block types** + - Keep block types in a small JSON or separate binary; they are tiny compared to block data. + - Load once at startup; no need to stream. + +### 7.4 Scale Estimates for 100k×100k×64 + +| Metric | Value | +|---------------------------|--------------------------| +| World dimensions | 100,000 × 100,000 × 64 | +| Chunks (16³) | 6,250 × 6,250 × 4 ≈ 156M chunks | +| Bytes per chunk (raw) | ~4.1 KB (blocks only) | +| Raw block data (if dense) | ~640 GB | +| Sparse (e.g. surface) | Much less; only store non-air chunks | + +Binary format advantages: + +- No JSON parsing; direct `Uint8Array` use +- Chunk-level I/O; load only what’s needed +- Possible memory-mapping for large files +- Optional compression (e.g. LZ4, Zstd) per chunk or region + +### 7.5 Migration Path + +1. **Phase 1:** Add `BinaryMapProvider` that reads chunk `.bin` files; `loadMap()` can accept `WorldMap | MapProvider`. +2. **Phase 2:** Make `ChunkLattice.getOrCreateChunk()` use the provider when a chunk is missing. +3. **Phase 3:** Add tooling to convert existing JSON maps → binary chunk files. +4. **Phase 4:** Optional region/compression format for production. + +--- + +## 8. Summary + +| Current (JSON) | Target (Binary + Streaming) | +|----------------------------|----------------------------------| +| Full map in memory | Chunk-level loading | +| Single large JSON parse | Small reads per chunk | +| Sparse object keys | Dense `Uint8Array` per chunk | +| Not viable for 100k³ scale | Designed for huge worlds | + +The existing `Chunk` and `ChunkLattice` design already matches a chunk-oriented model. The main changes are: + +1. Replace JSON as the map source with a binary chunk provider. +2. Add lazy loading so chunks are fetched on demand. +3. Provide conversion tools and a clear binary chunk layout. diff --git a/ai-memory/docs/perf-external-notes-2026-03-05/raw/MINECRAFT_ARCHITECTURE_RESEARCH.md b/ai-memory/docs/perf-external-notes-2026-03-05/raw/MINECRAFT_ARCHITECTURE_RESEARCH.md new file mode 100644 index 00000000..c7280c72 --- /dev/null +++ b/ai-memory/docs/perf-external-notes-2026-03-05/raw/MINECRAFT_ARCHITECTURE_RESEARCH.md @@ -0,0 +1,161 @@ +# Minecraft Architecture Research + +**Purpose:** Inform Hytopia’s voxel engine design with lessons from Minecraft Java and Bedrock. +**Audience:** Engineers implementing chunk loading, colliders, and meshing. +**Sources:** Technical wikis, decompilations, community analysis, engine talks. + +--- + +## 1. Chunk System Overview + +### 1.1 Chunk Structure + +| Version | Chunk Size | Subchunk | Notes | +|---------|------------|----------|-------| +| Java | 16×256×16 (XZ columns) | 16×16×16 sections | Vertical column; sections loaded independently | +| Bedrock | 16×256×16 | 16×16×16 | Similar; different storage layout | + +**Hytopia:** 16×16×16 chunks, 2×2×2 batches (32³). Aligns with common practice. + +### 1.2 Loading States (Java 1.14+) + +Minecraft separates chunk lifecycle into distinct states: + +| State | Purpose | +|-------|---------| +| **Empty** | Not loaded | +| **Structure** | Structures placed | +| **Noise** | Terrain generated | +| **Surface** | Surface blocks, biomes | +| **Carvers** | Caves, ravines | +| **Features** | Trees, ores, etc. | +| **Entity ticking** | Physics, entities, block updates | + +**Key insight:** Entity ticking requires a 5×5 grid of loaded chunks around the center chunk. Border chunks can be “lazy” (block updates only, no entities). This **spatial locality** keeps entity/physics work bounded. + +**Hytopia takeaway:** Only tick entities and step physics for chunks near players. Don’t pay for distant chunks. + +### 1.3 Spawn Chunks + +- 19×19 chunks (Java) or 23×23 (Bedrock) always loaded around spawn. +- Only center ~12×12 process entities. +- Reduces load/unload churn at spawn. + +**Hytopia:** Preload radius already exists; consider an “always loaded” spawn core for hubs. + +--- + +## 2. File I/O and Region Format + +### 2.1 Region Files + +- One file per 32×32 chunk region (XZ). +- Anvil format: 4 KB header (1024 entries × 4 bytes) + chunk payloads. +- Chunks stored with length prefix + compression (typically zlib; Bedrock uses different schemes). +- **Async I/O:** Modern implementations use background threads; main thread never blocks on disk. + +### 2.2 Chunk Serialization + +- Block IDs, block states, light, heightmap, biomes stored per chunk. +- Compression reduces size by ~90% for typical terrain. + +**Hytopia:** Region format exists; `readChunkAsync` and `writeChunk` (sync) are in place. Priority: make persist async. + +--- + +## 3. Terrain Generation + +### 3.1 Worker Pool + +- Terrain generation runs in worker threads. +- Main thread requests chunk; worker generates; result returned asynchronously. +- Multiple workers allow parallelism. + +### 3.2 Generation Stages + +- Noise → carvers → features (trees, ores). +- Each stage can be parallelized or deferred. + +**Hytopia:** `TerrainWorkerPool` + `generateChunkAsync` exist. Ensure `requestChunk` uses this path and doesn’t fall back to sync. + +--- + +## 4. Physics and Collision + +### 4.1 Chunk-Section Colliders + +- Collision is built per 16×16×16 section. +- Sections far from players may not have colliders at all, or use simplified shapes. +- Colliders are created/updated in batches, not all at once. + +### 4.2 Spatial Partitioning + +- Physics world uses spatial partitioning (e.g. broadphase). +- Entity vs. block collision: only check nearby chunks. +- No global scan over entire world. + +**Hytopia gap:** `_combineVoxelStates` iterates all chunks of a block type. Must restrict to nearby chunks. + +--- + +## 5. Meshing and Rendering + +### 5.1 Greedy Meshing (Ambient Occlusion) + +- Minecraft uses an approximation of greedy meshing (block model merging). +- Adjacent faces of same block type are merged into larger quads where possible. +- Results in 2–64× fewer quads than per-face rendering. + +### 5.2 Occlusion Culling + +- Section-level visibility: if a section is fully behind solid terrain, skip rendering. +- BFS from camera through air/transparent blocks; mark visible sections. +- ~10–15% frame time savings in cave-heavy areas. + +### 5.3 LOD + +- Distant chunks use lower-detail meshes or impostors. +- Reduces overdraw and vertex count. + +**Hytopia:** Face culling ✅; greedy meshing ❌; occlusion partial; LOD step 2/4. Biggest win: greedy meshing. + +--- + +## 6. Network + +### 6.1 Chunk Packets + +- Chunks sent incrementally; rate-limited to avoid client flood. +- Delta updates for modified chunks (block changes) vs. full chunk for new loads. + +### 6.2 Entity Sync + +- Position/rotation use compact encodings (fixed-point or quantized). +- Entities use delta or relative positioning where possible. +- Distant entities may sync at lower rate. + +**Source:** [Minecraft Protocol (wiki.vg)](https://wiki.vg/Protocol#Entity_Metadata) + +--- + +## 7. Lessons for Hytopia + +| Minecraft Pattern | Hytopia Status | Action | +|-------------------|----------------|--------| +| Async chunk load | ✅ `requestChunk` + `getChunkAsync` | Verify usage | +| Async I/O | ✅ `readChunkAsync` | Make persist async | +| Worker terrain gen | ✅ TerrainWorkerPool | Verify | +| Collider locality | ❌ O(world) scans | Phase 1: spatial index, scoped merge | +| Greedy meshing | ❌ | Phase 4 | +| Occlusion | ⚠️ Partial | Phase 5 | +| Entity quantization | ❌ | Phase 3 | +| Distance-based sync | ❌ | Phase 3 | + +--- + +## References + +- [Chunk Loading – Technical Minecraft Wiki](https://techmcdocs.github.io/pages/GameMechanics/ChunkLoading/) +- [Minecraft Protocol – wiki.vg](https://wiki.vg/Protocol) +- [0fps Meshing in a Minecraft Game](https://0fps.net/2012/06/30/meshing-in-a-minecraft-game/) +- [Fabric Modding Documentation (chunk loading states)](https://fabricmc.net/wiki/) diff --git a/ai-memory/docs/perf-external-notes-2026-03-05/raw/NETWORK_PROTOCOL_2026_RESEARCH.md b/ai-memory/docs/perf-external-notes-2026-03-05/raw/NETWORK_PROTOCOL_2026_RESEARCH.md new file mode 100644 index 00000000..722d42a8 --- /dev/null +++ b/ai-memory/docs/perf-external-notes-2026-03-05/raw/NETWORK_PROTOCOL_2026_RESEARCH.md @@ -0,0 +1,130 @@ +# Network Protocol 2026 Research + +**Purpose:** Modern entity sync and chunk sync patterns for low-bandwidth, low-latency voxel multiplayer. +**Audience:** Engineers implementing Phase 3 (Entity Sync Compression). + +--- + +## 1. Entity Sync: Industry Patterns + +### 1.1 Minecraft (Java) + +- Entity position/rotation sent as fixed-point or scaled integers. +- Metadata uses compact type tags. +- Delta updates for moving entities; full state on spawn or major change. + +### 1.2 Source Engine / Garry’s Mod + +- **Delta compression:** Send only changed fields; baseline is last full update. +- **Quantization:** Position in 1/16 or 1/32 unit; angles in 16-bit. + +### 1.3 Overwatch / Modern FPS + +- Client-side prediction + server reconciliation. +- Entity updates at 20–60 Hz for nearby; lower for distant. +- Snapshot compression: delta from previous snapshot. + +### 1.4 Gaffer On Games (Networked Physics) + +- [Snapshot Compression](http://gafferongames.com/networked-physics/snapshot-compression/) +- Quaternion: store 3 largest components (smallest-three); 4th derived. +- Position: fixed-point or quantized. +- Delta encoding: send difference from last acked state. + +--- + +## 2. Quantization Formulas + +### 2.1 Position (Fixed-Point) + +```ts +const QUANT = 256; // 1/256 block = 0.0039 block precision +const clamp = (v: number) => Math.max(-32768, Math.min(32767, Math.round(v * QUANT))); + +// Encode +pq: [clamp(x), clamp(y), clamp(z)] // Int16Array or [number, number, number] + +// Decode +x = pq[0] / QUANT; +``` + +**Range:** ±32768 blocks ≈ ±524 km. More than enough. + +### 2.2 Quaternion (Smallest-Three) + +- Unit quaternion: `q.x² + q.y² + q.z² + q.w² = 1`. +- One component can be derived from the other three. +- Store the 3 components with largest magnitude; 1 byte for index of omitted component. +- Quantize each stored component to 16-bit: `value * 32767` for range [-1, 1]. + +**Size:** 1 + 3×2 = 7 bytes vs 4×4 = 16 bytes (float32). ~56% smaller. + +**Reference:** [Gaffer On Games](http://gafferongames.com/networked-physics/snapshot-compression/) + +### 2.3 Yaw-Only (Euler) + +- For entities that only rotate around Y: send 1 float (radians) or 16-bit quantized. +- `yaw = 2*PI * (int16 / 65536)`. +- 2 bytes vs 16 bytes for full quaternion. + +--- + +## 3. Distance-Based Sync Rate + +| Distance Band | Sync Rate | Use Case | +|---------------|-----------|----------| +| 0–4 chunks | 30 Hz | Player, nearby NPCs | +| 4–8 chunks | 15 Hz | Mid-range entities | +| 8+ chunks | 5 Hz | Far entities, environmental | + +**Implementation:** In `checkAndEmitUpdates` or NetworkSynchronizer, compute distance from nearest player; only emit if `tick % rateDivisor === 0`. + +--- + +## 4. Bulk Format (Structure of Arrays) + +Instead of: + +```json +[ + { "i": 1, "p": [10.5, 20.1, 30.2] }, + { "i": 2, "p": [11.2, 20.0, 31.1] } +] +``` + +Use: + +```json +{ + "ids": [1, 2], + "p": [[2693, 5146, 7733], [2867, 5120, 7962]] +} +``` + +- Quantized positions in `p` (Int16). +- Avoids repeating keys; msgpack benefits from smaller maps. +- **Caveat:** New packet type; client must support. Can run parallel to existing EntitiesPacket during migration. + +--- + +## 5. Protocol Versioning + +- Add optional fields to EntitySchema: `pq`, `rq`, `ry`. +- Old clients ignore unknown fields; new clients prefer them. +- Server flag: `useQuantizedEntitySync=true` (default for new connections after version bump). + +--- + +## 6. Chunk Delta Updates (Phase 6) + +- When a single block changes, send delta: `{ chunkId, blockIndex, blockTypeId }` instead of full chunk. +- Client applies delta to local chunk; requests full chunk if out of sync. +- Reduces bandwidth for frequent block edits (mining, building). + +--- + +## 7. References + +- [Gaffer On Games – Snapshot Compression](http://gafferongames.com/networked-physics/snapshot-compression/) +- [Minecraft Protocol – wiki.vg](https://wiki.vg/Protocol) +- [ENTITY_SYNC_DELTA_COMPRESSION_DESIGN.md](../ENTITY_SYNC_DELTA_COMPRESSION_DESIGN.md) – Hytopia-specific design diff --git a/ai-memory/docs/perf-external-notes-2026-03-05/raw/SMOOTH_WORLD_STREAMING_REFACTOR_PLAN.md b/ai-memory/docs/perf-external-notes-2026-03-05/raw/SMOOTH_WORLD_STREAMING_REFACTOR_PLAN.md new file mode 100644 index 00000000..cead4812 --- /dev/null +++ b/ai-memory/docs/perf-external-notes-2026-03-05/raw/SMOOTH_WORLD_STREAMING_REFACTOR_PLAN.md @@ -0,0 +1,180 @@ +# Smooth World Streaming Refactor Plan + +> **Canonical roadmap:** See [VOXEL_ENGINE_2026_MASTER_PLAN.md](./VOXEL_ENGINE_2026_MASTER_PLAN.md) for the full executive plan and phased roadmap. This document provides additional context and cross-references. + +**Goal:** Peak performance for the procedurally generated world—smooth streaming, no lag spikes, Minecraft/Hytale/bloxd-level polish. + +**Sources:** Codebase analysis, [VOXEL_PERFORMANCE_MASTER_PLAN.md](./VOXEL_PERFORMANCE_MASTER_PLAN.md), [CHUNK_LOADING_ARCHITECTURE.md](./CHUNK_LOADING_ARCHITECTURE.md), [VOXEL_RENDERING_RESEARCH.md](./VOXEL_RENDERING_RESEARCH.md), [PR #21](https://github.com/hytopiagg/hytopia-source/pull/21), and industry patterns from Minecraft, Hytale, and Bloxd. + +--- + +## 1. Competitive Analysis: Minecraft vs Hytale vs Bloxd vs Hytopia + +| Aspect | Minecraft | Hytale | Bloxd | Hytopia (Current) | +|--------|-----------|--------|-------|-------------------| +| **Chunk load** | Worker threads, async | Worker pool | JS async | ✅ `requestChunk` + `getChunkAsync` (TerrainWorkerPool) | +| **File I/O** | Async | Async | N/A (streaming) | ✅ `readChunkAsync` (PersistenceChunkProvider) | +| **Terrain gen** | Worker threads | Worker pool | — | ✅ `generateChunkAsync` (TerrainWorkerPool) | +| **Physics colliders** | Deferred, O(chunk) | Batched, spatial | Custom voxel | ❌ Sync, O(world) via `_combineVoxelStates` | +| **Collider locality** | Per-chunk, near player | Spatial culling | — | ⚠️ Partial (COLLIDER_MAX_CHUNK_DISTANCE=3) | +| **Greedy meshing** | ✅ | ✅ (mesh culling) | ✅ | ❌ 1 quad/face, ~64× extra geometry | +| **Chunk send rate** | Incremental, rate-limited | Batched | Streaming | ⚠️ MAX_CHUNKS_PER_SYNC=8, can burst | +| **Entity sync** | Delta / compressed | — | — | Full pos/rot 30 Hz, 90%+ of packets | +| **LOD** | ✅ | Variable chunk sizes | — | ✅ (step 2/4) | +| **Occlusion** | Cave culling | Partial | — | ⚠️ Only when over face limit | +| **Vertex pooling** | — | — | ✅ | ⚠️ Partial (size-match reuse) | +| **Map compression** | Region format | — | — | ❌ JSON maps large; PR #21 adds compression | + +**Gap summary:** Hytopia’s biggest gaps are (1) collider work O(world) and sync, (2) no greedy meshing, (3) entity sync volume, (4) JSON map size for non-procedural games. Procedural world already uses async load + worker terrain gen; collider and client-side mesh work are the main bottlenecks. + +--- + +## 2. PR #21 Relevance to Procedural World + +[PR #21: Compressed world maps](https://github.com/hytopiagg/hytopia-source/pull/21) targets **JSON maps** (`loadMap(map.json)`), not procedural/region worlds. It adds: + +| Feature | Applies to Procedural? | Notes | +|---------|------------------------|-------| +| `map.compressed.json` | ❌ | JSON map format only | +| `map.chunks.bin` (chunk cache) | ❌ | Prebaked JSON map chunks | +| Chunk cache collider build | ⚠️ Partially | “perf: speed up chunk cache collider build” can inform collider design | +| Brotli compression | ❌ | For map JSON, not region .bin | +| Auto-detect / `hytopia map-compress` | ❌ | JSON map workflow | + +**Recommendation:** Merge PR #21 for JSON-map games (huntcraft, boilerplate, etc.). For procedural world, reuse the collider build approach where relevant. Procedural persistence uses region `.bin`; consider Brotli for region payloads later. + +--- + +## 3. Root Cause Summary + +When a player joins and blocks have physics: + +1. **Physics step (60 Hz):** Rapier steps the entire world, including all block colliders + player rigid body. +2. **Collider creation:** `_addChunkBlocksToColliders` → `_combineVoxelStates` scans all chunks of each block type (O(world)). +3. **Entity sync (30 Hz):** Full position/rotation for entities/players every 2 ticks; dominates packet volume. +4. **Chunk sync:** Up to 8 chunks per sync; client mesh build can spike main thread. +5. **Client mesh:** No greedy meshing → 2–64× more vertices than needed. +6. **ADD_CHUNK events:** Environmental entity spawn per chunk runs synchronously. + +--- + +## 4. Refactoring Plan (Prioritized) + +### Phase 1: Stop the Bleeding (1–2 weeks) + +| # | Task | Impact | Effort | Files | +|---|------|--------|--------|-------| +| 1.1 | **Collider locality – spatial index** | High | 3–5 days | `ChunkLattice.ts` | +| 1.2 | **Scoped `_combineVoxelStates`** | High | 2–3 days | `ChunkLattice.ts` | +| 1.3 | **Time-budget collider processing** | Medium | ✅ Done | `playground.ts` | +| 1.4 | **CHUNKS_PER_TICK = 3** | ✅ Done | — | `playground.ts` | +| 1.5 | **Defer environmental entity spawn** | Medium | 1 day | `playground.ts` | + +**1.1–1.2:** Replace global scans with spatial indexing. `_getBlockTypePlacements` and `_combineVoxelStates` should only consider chunks within a radius (e.g. 4–5 chunks) of any player. Add a spatial index (e.g. chunk key → block placements) and only merge voxel state for nearby chunks. + +### Phase 2: Main Thread Freedom (2–3 weeks) + +| # | Task | Impact | Effort | Files | +|---|------|--------|--------|-------| +| 2.1 | **Async persistChunk** | Medium | 1–2 days | `PersistenceChunkProvider.ts`, `RegionFileFormat.ts` | +| 2.2 | **Worker terrain gen verification** | — | 0.5 day | `TerrainWorkerPool.ts`, `ProceduralChunkProvider.ts` | +| 2.3 | **Incremental voxel collider updates** | High | 3–5 days | `ChunkLattice.ts` | +| 2.4 | **Chunk send pacing** | Medium | 1–2 days | `NetworkSynchronizer.ts` | + +**2.1:** `persistChunk` currently calls `writeChunk` (sync). Move to async; queue writes and process in background. + +**2.3:** Add blocks to voxel colliders in batches (e.g. 256–512/tick) instead of full chunk. Use Rapier voxel API if it supports incremental updates. + +### Phase 3: Network & Sync (2–3 weeks) + +| # | Task | Impact | Effort | Files | +|---|------|--------|--------|-------| +| 3.1 | **Entity delta/compression** | High | 5–7 days | `NetworkSynchronizer.ts`, `Serializer.ts`, protocol | +| 3.2 | **Chunk delta updates** | Medium | 3–4 days | `NetworkSynchronizer.ts`, `ChunkLattice` | +| 3.3 | **Predictive chunk preload** | Medium | 2–3 days | `playground.ts` | + +**3.1:** Send position/rotation deltas or use quantized floats. Reference: Minecraft’s entity compression, Hytale’s QUIC usage. + +### Phase 4: Client Render Pipeline (3–4 weeks) + +| # | Task | Impact | Effort | Files | +|---|------|--------|--------|-------| +| 4.1 | **Greedy meshing (quad merging)** | Very high | 5–7 days | `ChunkWorker.ts` | +| 4.2 | **Vertex pooling** | Medium | 2–3 days | `ChunkMeshManager.ts`, `ChunkWorker.ts` | +| 4.3 | **Occlusion culling always-on** | Medium | 2–3 days | `ChunkManager.ts`, `Renderer.ts` | +| 4.4 | **Mesh apply budget** | Low | 1 day | `ChunkManager.ts` | + +**4.1:** Implement 0fps-style greedy meshing for opaque solids. Merge adjacent same-type faces; expect 2–64× fewer vertices. References: [0fps](https://0fps.net/2012/06/30/meshing-in-a-minecraft-game/), [mikolalysenko/greedy-mesher](https://github.com/mikolalysenko/greedy-mesher). + +### Phase 5: Long-Term & Polish (ongoing) + +| # | Task | Impact | Effort | +|---|------|--------|--------| +| 5.1 | LOD impostors for distant chunks | Medium | 2–3 weeks | +| 5.2 | Brotli for region .bin payloads | Low | 1 week | +| 5.3 | Block/face limits (safety cap) | Low | <1 day | +| 5.4 | Profiling hooks (tick, chunk, mesh) | Low | 2–3 days | + +--- + +## 5. Implementation Order + +``` +Week 1–2: Phase 1 (collider locality, scoped _combineVoxelStates, defer env spawn) +Week 3–4: Phase 2 (async persistChunk, incremental voxel, chunk send pacing) +Week 5–6: Phase 3 (entity delta, chunk delta, predictive preload) +Week 7–10: Phase 4 (greedy meshing, vertex pooling, occlusion) +Ongoing: Phase 5 +``` + +--- + +## 6. Success Metrics + +| Metric | Current (Est.) | Target | +|--------|----------------|--------| +| Lag spikes when walking | Every ~5 steps | None within preload radius | +| Server tick time (p99) | 50–200 ms | < 16 ms | +| Chunk load (blocking) | 20–100 ms | < 5 ms (async) | +| Vertices per flat chunk | ~6000 | ~200–500 (greedy) | +| Client frame time | Spikes on new chunks | Stable ~16 ms (60 fps) | +| Entity packet share | ~90% | < 50% (delta/compression) | + +--- + +## 7. Key Files Reference + +| Component | Path | +|-----------|------| +| Chunk load loop | `server/src/playground.ts` | +| Collider processing | `server/src/worlds/blocks/ChunkLattice.ts` | +| Physics simulation | `server/src/worlds/physics/Simulation.ts` | +| Mesh generation | `client/src/workers/ChunkWorker.ts` | +| Chunk sync | `server/src/networking/NetworkSynchronizer.ts` | +| Region I/O | `server/src/worlds/maps/RegionFileFormat.ts` | +| Terrain gen | `server/src/worlds/maps/TerrainGenerator.ts`, `TerrainWorkerPool.ts` | +| Procedural provider | `server/src/worlds/maps/ProceduralChunkProvider.ts` | +| Persistence provider | `server/src/worlds/maps/PersistenceChunkProvider.ts` | +| World loop | `server/src/worlds/WorldLoop.ts` | + +--- + +## 8. PR #21 Action Items + +1. **Merge PR #21** for JSON-map games (boilerplate, huntcraft, etc.). +2. **Reuse chunk cache collider patterns** in `ChunkLattice` if applicable. +3. **Later:** Consider Brotli for region payloads or a similar compression layer. + +--- + +## 9. References + +- [VOXEL_PERFORMANCE_MASTER_PLAN.md](./VOXEL_PERFORMANCE_MASTER_PLAN.md) +- [CHUNK_LOADING_ARCHITECTURE.md](./CHUNK_LOADING_ARCHITECTURE.md) +- [VOXEL_RENDERING_RESEARCH.md](./VOXEL_RENDERING_RESEARCH.md) +- [OPTIMIZATION_STRATEGY.md](./OPTIMIZATION_STRATEGY.md) +- [PR #21 – Compressed world maps](https://github.com/hytopiagg/hytopia-source/pull/21) +- [0fps Greedy Meshing](https://0fps.net/2012/06/30/meshing-in-a-minecraft-game/) +- [mikolalysenko/greedy-mesher](https://github.com/mikolalysenko/greedy-mesher) +- [Minecraft Chunk Loading (Technical Wiki)](https://techmcdocs.github.io/pages/GameMechanics/ChunkLoading/) +- [Hytale Engine Technical Deep Dive](https://hytalecharts.com/news/hytale-engine-technical-deep-dive) diff --git a/ai-memory/docs/perf-external-notes-2026-03-05/raw/VOXEL_ENGINE_2026_MASTER_PLAN.md b/ai-memory/docs/perf-external-notes-2026-03-05/raw/VOXEL_ENGINE_2026_MASTER_PLAN.md new file mode 100644 index 00000000..c74ee120 --- /dev/null +++ b/ai-memory/docs/perf-external-notes-2026-03-05/raw/VOXEL_ENGINE_2026_MASTER_PLAN.md @@ -0,0 +1,218 @@ +# Voxel Engine 2026: World-Class Performance Master Plan + +**Document Owner:** Head of Development +**Classification:** Engineering Roadmap +**Target:** Minecraft/Hytale-grade smoothness; browser-first, 2026-ready +**Version:** 1.0 +**Date:** March 2026 + +--- + +## Executive Summary + +Hytopia aims to deliver voxel gameplay that feels as smooth and responsive as Minecraft and Hytale, while running in the browser. The current architecture has solid foundations—async chunk loading, worker terrain generation, deferred colliders—but several bottlenecks prevent parity with industry leaders. This plan addresses those gaps with a phased, research-backed approach that delivers measurable improvements without over-engineering. + +**Key thesis:** The lag and stutter are almost entirely **software architecture** issues, not hardware. Minecraft and Hytale run smoothly on similar hardware because they use different patterns. We close the gap by adopting those patterns. + +**Target outcome:** Walk/fly through a procedural world with **no perceptible lag spikes** within the preload radius, **stable 60 FPS** on the client, and **<16 ms server tick times** (p99). + +--- + +## Part 1: Strategic Context + +### 1.1 Industry Benchmark: What “On Par” Means + +| Game | Chunk Load | Physics | Rendering | Network | Notes | +|------|------------|---------|-----------|---------|-------| +| **Minecraft Java** | Worker threads, region format | Per-chunk colliders, deferred | Greedy meshing (approximate), occlusion | Delta/delta-like entity sync | 15+ years of iteration | +| **Minecraft Bedrock** | Async pipeline, priority queue | Spatial partitioning | Meshing + LOD | Variable tick rate by distance | C++ / C#; mobile-first | +| **Hytale** | Worker pool, variable chunk sizes | Batched, spatial | Mesh culling, LOD | QUIC, lower latency | Modern engine, Flecs ECS | +| **Bloxd.io** | Browser streaming | Custom voxel physics | Face culling, vertex pooling | JS-based | Browser-only | + +**Hytopia’s position:** We are browser-bound (Node server + Web client). We can’t use C++ or multiple cores on the client, but we *can* adopt the same *concepts*: async I/O, spatial locality, greedy meshing, quantized network formats, and time-budgeted main-thread work. + +### 1.2 Gap Analysis (Prioritized) + +| Priority | Gap | Impact | Root Cause | +|----------|-----|--------|------------| +| P0 | Collider work O(world) | Tick spikes, unplayable under load | `_combineVoxelStates` scans all chunks of each block type | +| P0 | No greedy meshing | 2–64× more vertices than needed | Per-face quads, no merging | +| P1 | Entity sync volume | ~90% of packets | Full pos/rot floats, no quantization | +| P1 | Sync chunk persist | Main-thread blocking | `writeChunk` sync | +| P2 | No occlusion culling | Overdraw in caves | All loaded batches rendered | +| P2 | No distance-based entity LOD | Far entities same cost as near | Single sync rate | +| P3 | Vertex allocation churn | GC spikes on mesh updates | No pooling | + +--- + +## Part 2: Phased Roadmap + +### Phase 0: Foundation & Instrumentation (Week 1) + +**Goal:** Establish baselines and guardrails before major refactors. + +| Task | Owner | Deliverable | +|------|-------|-------------| +| Profiling hooks | Eng | Tick duration, chunk load time, collider time, mesh build time | +| Metrics dashboard | Eng | Real-time charts for key metrics | +| Block/face limits | Eng | Hard cap (e.g. 500K faces) to avoid meltdown | +| Regression suite | QA | Automated “fly-through” test, capture tick/frame times | + +**Success:** We can measure and reproduce performance issues in CI and on-device. + +--- + +### Phase 1: Collider Locality (Weeks 2–3) + +**Goal:** Remove O(world) collider scans. Physics and chunk work must scale with **visible/nearby** chunks only. + +| Task | Effort | Description | +|------|--------|-------------| +| Spatial index for block placements | 3 days | Chunk key → block placements; no global iteration | +| Scoped `_combineVoxelStates` | 2 days | Merge only chunks within N chunks of any player | +| Collider unload for distant chunks | 1 day | Remove colliders when chunk unloads; don’t keep in physics | +| Time-budget verification | 0.5 day | Ensure 8 ms cap is respected; tune if needed | + +**Files:** `ChunkLattice.ts`, `playground.ts` + +**Success:** Tick time (p99) drops from 50–200 ms to <25 ms under typical load. + +--- + +### Phase 2: Main-Thread Freedom (Weeks 4–5) + +**Goal:** No sync blocking on I/O or heavy computation on the game loop. + +| Task | Effort | Description | +|------|--------|-------------| +| Async `persistChunk` | 1.5 days | Queue writes; flush in background | +| Async provider audit | 0.5 day | Confirm `requestChunk` → `getChunkAsync` path is used | +| Incremental voxel collider updates | 4 days | Add blocks in batches (256–512/tick) instead of full chunk | +| Chunk send pacing | 1.5 days | Smooth chunk sync; avoid burst of 8 chunks in one tick | + +**Files:** `PersistenceChunkProvider.ts`, `RegionFileFormat.ts`, `ChunkLattice.ts`, `NetworkSynchronizer.ts` + +**Success:** Chunk load + persist never block tick; no “catch up” spikes. + +--- + +### Phase 3: Entity Sync Compression (Weeks 6–7) + +**Goal:** Reduce entity pos/rot from ~90% of packets to <50%, with no perceptible quality loss. + +| Task | Effort | Description | +|------|--------|-------------| +| Quantized position (1/256 block, 16-bit) | 1 day | Server sends `pq`; client decodes | +| Yaw-only rotation for players | 0.5 day | 1 float vs 4 for player avatars | +| Distance-based sync rate (30/15/5 Hz) | 1 day | Near = 30 Hz, mid = 15 Hz, far = 5 Hz | +| Quantized quaternion (smallest-three) | 2 days | For NPCs and other full-rotation entities | +| Bulk pos/rot packet (optional) | 2 days | Structure-of-arrays for unreliable updates | + +**Files:** `Serializer.ts`, `NetworkSynchronizer.ts`, `protocol/schemas/Entity.ts`, `Deserializer.ts`, `EntityManager.ts` + +**Success:** Entity sync bytes/update reduced by 50–60%; bandwidth share <50%. + +--- + +### Phase 4: Greedy Meshing (Weeks 8–10) + +**Goal:** Cut vertex count by 2–64× for typical terrain; stable 60 FPS on chunk load. + +| Task | Effort | Description | +|------|--------|-------------| +| Greedy mesh algorithm (opaque solids) | 5 days | 0fps-style sweep and merge; ref `docs/research/GREEDY_MESHING_IMPLEMENTATION_GUIDE.md` | +| Integration with ChunkWorker | 2 days | Per-batch-type merge; transparent blocks unchanged | +| AO + lighting on merged quads | 1 day | Ensure ambient occlusion and lighting still apply | +| Benchmarks and tuning | 1 day | Measure build time vs vertex reduction | + +**Files:** `ChunkWorker.ts`, `ChunkMeshManager.ts` + +**Success:** Flat chunk: ~6000 vertices → ~200–500; frame time stable on new chunk load. + +--- + +### Phase 5: Render Pipeline Polish (Weeks 11–13) + +**Goal:** GPU efficiency and graceful degradation on low-end devices. + +| Task | Effort | Description | +|------|--------|-------------| +| Vertex pooling | 2 days | Reuse BufferGeometry/ArrayBuffers; avoid per-frame allocations | +| Occlusion culling always-on | 2 days | BFS from camera; cull hidden batches | +| Mesh apply budget | 1 day | Limit meshes applied per frame; spread load | +| Block/face limits enforcement | 0.5 day | Reduce view distance when over cap | + +**Files:** `ChunkMeshManager.ts`, `ChunkManager.ts`, `ChunkWorker.ts`, `Renderer.ts` + +**Success:** No GC spikes on chunk load; overdraw reduced in cave-heavy areas. + +--- + +### Phase 6: Long-Term (Month 4+) + +| Task | Impact | Effort | +|------|--------|--------| +| LOD impostors for distant chunks | Medium | 2–3 weeks | +| Brotli (or similar) for region payloads | Low | 1 week | +| Predictive chunk preload | Medium | 1 week | +| Client-side entity prediction | Medium (latency) | 2+ weeks | + +--- + +## Part 3: Research Documentation + +The following research docs support implementation and design decisions: + +| Document | Purpose | +|----------|---------| +| [MINECRAFT_ARCHITECTURE_RESEARCH.md](./research/MINECRAFT_ARCHITECTURE_RESEARCH.md) | How Minecraft structures chunk loading, colliders, and meshing | +| [GREEDY_MESHING_IMPLEMENTATION_GUIDE.md](./research/GREEDY_MESHING_IMPLEMENTATION_GUIDE.md) | Step-by-step greedy meshing for ChunkWorker | +| [COLLIDER_ARCHITECTURE_RESEARCH.md](./research/COLLIDER_ARCHITECTURE_RESEARCH.md) | Spatial locality and incremental colliders | +| [NETWORK_PROTOCOL_2026_RESEARCH.md](./research/NETWORK_PROTOCOL_2026_RESEARCH.md) | Modern entity sync: quantization, delta, LOD | + +**Mandate:** Engineers implementing Phase 2+ work must read the relevant research doc before coding. + +--- + +## Part 4: Success Metrics + +| Metric | Baseline (Current) | Phase 3 Target | Phase 6 Target | +|--------|--------------------|----------------|----------------| +| Server tick time (p99) | 50–200 ms | <25 ms | <16 ms | +| Chunk load (blocking) | 20–100 ms | 0 (async) | 0 | +| Vertices per flat chunk | ~6000 | ~200–500 | ~200–500 | +| Entity sync % of packets | ~90% | ~60% | <50% | +| Client frame time (p99) | Spikes to 50+ ms | <25 ms | <16 ms | +| Perceived lag spikes | Every ~5 steps | None in preload | None | + +--- + +## Part 5: Risks & Mitigations + +| Risk | Mitigation | +|------|------------| +| Greedy meshing regresses build time | Time-budget; fallback to non-greedy if over budget | +| Protocol changes break old clients | Backward-compatible optional fields; version handshake | +| Collider refactor introduces physics bugs | Rigorous test: spawn, walk, mine, place; compare before/after | +| Scope creep | Phases are fixed; Phase 6 is explicitly “long-term” | + +--- + +## Part 6: Dependencies & Prerequisites + +- **PR #21 (Compressed JSON maps):** Merge for JSON-map games; not blocking procedural world. +- **TerrainWorkerPool:** Already in place; verify `getChunkAsync` is used in playground. +- **Protocol package:** Schema changes require protocol version bump; coordinate with SDK consumers. +- **Browser support:** Target evergreen browsers; no polyfills for cutting-edge APIs. + +--- + +## Part 7: Sign-Off + +This plan represents a realistic path to Minecraft/Hytale-grade smoothness for Hytopia’s procedural world. It prioritizes the highest-impact bottlenecks (colliders, greedy meshing, entity sync) and defers nice-to-haves (LOD impostors, prediction) to later phases. + +**Recommendation:** Approve and execute Phase 0–1 immediately. Re-evaluate after Phase 3 based on metrics and user feedback. + +--- + +*— Head of Development* diff --git a/ai-memory/docs/perf-external-notes-2026-03-05/raw/VOXEL_PERFORMANCE_MASTER_PLAN.md b/ai-memory/docs/perf-external-notes-2026-03-05/raw/VOXEL_PERFORMANCE_MASTER_PLAN.md new file mode 100644 index 00000000..9b7fdda0 --- /dev/null +++ b/ai-memory/docs/perf-external-notes-2026-03-05/raw/VOXEL_PERFORMANCE_MASTER_PLAN.md @@ -0,0 +1,153 @@ +# Voxel Engine Performance Master Plan +## Making Hytopia as Smooth as Minecraft & Hytale + +**Problem:** Lag every ~5 steps; constant chunk rendering; engine feels clunky compared to Minecraft/Hytale. + +**Conclusion:** This is primarily a **software/codebase architecture** issue, not hardware. Minecraft and Hytale run smoothly on similar hardware because they use different architectures. The plan below addresses the gaps. + +--- + +## Part 1: Root Cause Analysis + +### Why "Every 5 Steps" Lag Happens + +| Step | What Happens | Bottleneck | +|------|--------------|------------| +| 1 | Player moves → enters new chunk/batch range | Server loads 1 chunk/tick (CHUNKS_PER_TICK=1) | +| 2 | `getOrCreateChunk` runs | **Sync** disk read or procedural gen blocks main thread | +| 3 | Chunk queued for collider | `processPendingColliderChunks(1)` – 1/tick | +| 4 | `_addChunkBlocksToColliders` | **Heavy:** 4096 blocks, voxel propagation, `_combineVoxelStates` scans ALL chunks of that block type | +| 5 | Server sends chunk to client | Network ok, but chunk sync triggers client work | +| 6 | Client receives ChunksPacket | Posts to ChunkWorker | +| 7 | ChunkWorker builds mesh | **No greedy meshing** – 1 quad per face, 64× more than optimal for flat terrain | +| 8 | Mesh sent back, added to scene | BufferGeometry creation, possible GC spike | +| 9 | Main thread applies mesh | Can cause frame hitch | + +### Current vs. Minecraft/Hytale + +| Aspect | Hytopia (Current) | Minecraft / Hytale | +|--------|-------------------|---------------------| +| Chunk load | Sync on main thread | Worker threads, async | +| File I/O | `fs.readSync`, `zlib.gunzipSync` | Async, or worker | +| Terrain gen | Sync in main thread | Worker pool | +| Collider creation | Sync, 1/tick, O(world size) | Deferred, batched, O(chunk) | +| Mesh generation | Worker ✅ | Worker ✅ | +| Greedy meshing | ❌ (1 quad/face) | ✅ (merged quads, 2–64× fewer) | +| LOD | ✅ (step 2/4) | ✅ + impostors | +| Occlusion culling | Only when over face limit | Chunk-section visibility | +| Chunk send rate | Per ADD_CHUNK event | Batched, rate-limited | + +--- + +## Part 2: Prioritized Fixes + +### Tier 1: Quick Wins (1–3 days each) + +| # | Fix | Impact | Effort | Files | +|---|-----|--------|--------|-------| +| 1 | **Increase CHUNKS_PER_TICK** to 2–3 | Fewer "catch up" spikes when moving | 5 min | `playground.ts` | +| 2 | **Time-budget collider processing** | Cap ms per tick (e.g. 8 ms), process multiple chunks if time allows | Medium | `ChunkLattice.ts`, `playground.ts` | +| 3 | **Chunk send batching** | Don’t flood client; batch chunk sync every N ms or per tick | Medium | `NetworkSynchronizer.ts` | +| 4 | **Avoid collider work for distant chunks** | Only add colliders for chunks within 2–3 chunks of player | Medium | `ChunkLattice.ts`, `playground.ts` | + +### Tier 2: High Impact (3–7 days each) + +| # | Fix | Impact | Effort | Notes | +|---|-----|--------|--------|-------| +| 5 | **Greedy meshing (quad merging)** | 2–64× fewer vertices for terrain | 3–5 days | ChunkWorker; ref 0fps, mikolalysenko/greedy-mesher | +| 6 | **Async chunk provider** | `getChunk()` returns `Promise`; no main-thread blocking | 2–3 days | PersistenceChunkProvider, ProceduralChunkProvider, ChunkLattice | +| 7 | **Worker terrain generation** | Move `generateChunk` to `worker_threads` | 2–3 days | TerrainGenerator, ProceduralChunkProvider | +| 8 | **Async file I/O** | `fs.promises`, `zlib.gunzip` async | 1–2 days | RegionFileFormat.ts | + +### Tier 3: Architectural (1–2 weeks each) + +| # | Fix | Impact | Effort | Notes | +|---|-----|--------|--------|-------| +| 9 | **Incremental colliders** | Add blocks to voxel collider in batches (e.g. 256/tick) instead of full chunk | High | Rapier voxel API; ChunkLattice | +| 10 | **Collider locality** | `_getBlockTypePlacements` and `_combineVoxelStates` should not scan entire world | High | ChunkLattice; spatial indexing | +| 11 | **Chunk preloading by prediction** | Load chunks in movement direction before player arrives | Medium | playground.ts, loadChunksAroundPlayers | +| 12 | **Vertex pooling** | Reuse BufferGeometry / ArrayBuffers to reduce allocations and GC | Medium | ChunkMeshManager, ChunkWorker | + +### Tier 4: Polish (Ongoing) + +| # | Fix | Impact | Effort | +|---|-----|--------|--------| +| 13 | **Occlusion culling always-on** | Not just when over face limit | Medium | +| 14 | **LOD impostors** | Billboard or simplified mesh for very far chunks | High | +| 15 | **Profiling hooks** | Tick time, chunk load time, mesh build time | Low | +| 16 | **Block/face limits** | Hard cap to avoid meltdown on weak devices | Low | + +--- + +## Part 3: Recommended Implementation Order + +### Phase 1: Stop the Bleeding (Week 1) + +1. **Time-budget collider processing** – Cap at 8 ms/tick; process as many chunks as fit. +2. **Increase CHUNKS_PER_TICK** to 2–3. +3. **Spatial collider culling** – Only create colliders for chunks within 2–3 chunks of any player. +4. **Chunk send batching** – Batch chunk sync; don’t send 10 chunks in one frame. + +### Phase 2: Main Thread Freedom (Week 2–3) + +5. **Async file I/O** – `fs.promises`, async decompress. +6. **Async chunk provider** – `getChunk()` returns `Promise`; ChunkLattice awaits. +7. **Worker terrain gen** – Move `generateChunk` to worker thread. + +### Phase 3: Render Pipeline (Week 4–5) + +8. **Greedy meshing** – Implement in ChunkWorker for opaque solids; merge adjacent same-type faces. +9. **Vertex pooling** – Reuse geometry buffers where possible. + +### Phase 4: Long-Term (Month 2+) + +10. **Incremental colliders** – Batched voxel updates. +11. **Collider locality** – Remove global scans. +12. **Occlusion always-on** – Reduce overdraw. + +--- + +## Part 4: Hardware vs. Software + +| Factor | Assessment | +|--------|------------| +| **Hardware** | Unlikely primary cause if Minecraft/Hytale run fine. | +| **Software** | Sync I/O, sync terrain gen, heavy collider work, no greedy meshing – all main-thread and render bottlenecks. | +| **Codebase** | Architecture is serviceable but lacks async pipeline and mesh optimization used by mature voxel engines. | + +--- + +## Part 5: Key Files + +| Component | Path | +|-----------|------| +| Chunk load loop | `server/src/playground.ts` | +| Collider processing | `server/src/worlds/blocks/ChunkLattice.ts` | +| Mesh generation | `client/src/workers/ChunkWorker.ts` | +| Chunk sync to client | `server/src/networking/NetworkSynchronizer.ts` | +| Disk I/O | `server/src/worlds/maps/RegionFileFormat.ts` | +| Terrain generation | `server/src/worlds/maps/TerrainGenerator.ts`, `ProceduralChunkProvider.ts` | +| Client chunk handling | `client/src/chunks/ChunkManager.ts` | + +--- + +## Part 6: Success Metrics + +| Metric | Current (Est.) | Target | +|--------|----------------|--------| +| Lag spikes when walking | Every ~5 steps | None within preload radius | +| Tick time (p99) | 50–200 ms | < 16 ms | +| Chunk load time | 20–100 ms (blocking) | < 5 ms (async) | +| Vertices per chunk (flat) | ~6000 (no greedy) | ~200–500 (greedy) | +| Frame time (client) | Spikes on new chunks | Stable 16 ms (60 fps) | + +--- + +## References + +- `docs/CHUNK_LOADING_ARCHITECTURE.md` +- `docs/VOXEL_RENDERING_RESEARCH.md` +- `docs/OPTIMIZATION_STRATEGY.md` +- [0fps Greedy Meshing](https://0fps.net/2012/06/30/meshing-in-a-minecraft-game/) +- [mikolalysenko/greedy-mesher](https://github.com/mikolalysenko/greedy-mesher) +- Hytale engine deep dive: variable chunks, LOD, mesh optimization diff --git a/ai-memory/docs/perf-external-notes-2026-03-05/raw/VOXEL_RENDERING_RESEARCH.md b/ai-memory/docs/perf-external-notes-2026-03-05/raw/VOXEL_RENDERING_RESEARCH.md new file mode 100644 index 00000000..5be2a42d --- /dev/null +++ b/ai-memory/docs/perf-external-notes-2026-03-05/raw/VOXEL_RENDERING_RESEARCH.md @@ -0,0 +1,190 @@ +# Voxel World Smoothness: Research on Minecraft, Hytale, and bloxd + +Deep research into how popular voxel games keep worlds lag-free and smooth during flight/movement. + +--- + +## Summary: What These Games Do + +| Technique | Minecraft | Hytale | bloxd | Hytopia (Current) | +|-----------|-----------|--------|-------|-------------------| +| **Face culling** | ✅ | ✅ | ✅ | ✅ (ChunkWorker) | +| **Greedy meshing** | ✅ (approximation) | ✅ | ✅ | ❌ | +| **Chunk batching** | ✅ (16×16×16) | Variable sizes | ✅ | ✅ (2×2×2 batches) | +| **Async mesh generation** | ✅ (worker) | ✅ | ✅ | ✅ (ChunkWorker) | +| **View distance** | ✅ | ✅ | ✅ | ✅ | +| **LOD (distant simplification)** | ✅ | ✅ | ✅ | ❌ | +| **Occlusion / cave culling** | ✅ (advanced) | Partial | Partial | ❌ | +| **Vertex pooling** | — | — | ✅ | ❌ | +| **Block/face limits** | Implicit | — | — | ❌ | + +--- + +## 1. Face Culling (Already Implemented ✅) + +**What it does:** Only render faces that are visible—i.e. faces where the adjacent block is empty or transparent. Interior faces between solid blocks are never drawn. + +**0fps comparison:** On a solid 8×8×8 cube: +- Stupid method: 3,072 quads (6 per block) +- Culling: 384 quads (1 per surface face) +- **~8× reduction** + +**Hytopia status:** Already in `ChunkWorker.ts` (lines 962–985). Neighbor check per face; solid opaque neighbors → face is culled. **No change needed.** + +--- + +## 2. Greedy Meshing / Greedy Quad Merging (Not Implemented ❌) + +**What it does:** Merge adjacent faces with the same texture/material into larger quads. Instead of many small quads, you get fewer large quads covering the same surface. + +**0fps example:** Same 8×8×8 solid cube: +- Culling: 384 quads +- Greedy: **6 quads** (one per side) +- **64× reduction over culling** + +**Algorithm (0fps):** +1. Sweep the 3D volume in 3 directions (X, Y, Z) +2. For each 2D slice, identify visible faces +3. Greedily merge adjacent same-type faces into rectangles +4. Order: top-to-bottom, left-to-right; pick the lexicographically minimal mesh + +**Multiple block types:** Group by (block type, normal direction). Mesh each group separately. + +**Performance trade-off:** +- Greedy is slower to *build* than culling (more passes, more logic) +- But produces far fewer vertices → faster rendering and less GPU memory +- Modern bottleneck is often CPU→GPU transfer; fewer vertices = less data = smoother + +**Hytopia status:** ChunkWorker emits one quad per visible face. No merging. + +**Recommendation:** High impact. Implement greedy meshing in ChunkWorker for opaque solid blocks first. Reference: [0fps greedy meshing](https://0fps.net/2012/06/30/meshing-in-a-minecraft-game/), [mikolalysenko/greedy-mesher](https://github.com/mikolalysenko/greedy-mesher). + +--- + +## 3. Occlusion / Cave Culling (Not Implemented ❌) + +**What it does:** Don’t render chunks (or chunk sections) that are completely hidden behind solid terrain. E.g. caves behind a mountain. + +**Minecraft (Tommo’s Advanced Cave Culling, 2014):** +- Works on 16×16×16 chunk sections +- Builds a connectivity graph of transparent/air paths +- BFS from camera to find visible sections +- Culls sections unreachable through air/transparent blocks +- ~14% frame time improvement + +**Hytopia status:** No occlusion culling. All loaded chunks in view distance are rendered if in frustum. + +**Recommendation:** Medium impact, higher complexity. Consider chunk-section visibility BFS. Less urgent than greedy meshing. + +--- + +## 4. Level of Detail (LOD) (Not Implemented ❌) + +**What it does:** Render distant chunks with simpler geometry—fewer quads, lower resolution, or simplified shapes. + +**Hytale:** Variable chunk sizes; LOD where distant chunks use lower-detail meshes. + +**Typical approach:** +- Near: Full detail +- Mid: Merged/simplified mesh +- Far: Very low poly or impostors + +**Hytopia status:** No LOD. All chunks use the same mesh quality. + +**Recommendation:** Medium impact. Could start with “skip every other block” or similar for distant batches. More complex: proper LOD meshes. + +--- + +## 5. Async Mesh Generation (Already Implemented ✅) + +**What it does:** Build chunk meshes in a worker thread so the main thread stays responsive. + +**Hytopia status:** `ChunkWorker.ts` runs in a Web Worker. Mesh building is off the main thread. **Already good.** + +--- + +## 6. Block / Face Limits + +**What it does:** Cap total blocks or faces to avoid overload. E.g. stop loading chunks if face count exceeds a threshold. + +**Hytopia status:** No hard limit. Chunk count is bounded by view distance, but no per-frame or total face limit. + +**Recommendation:** Low priority. Could add a safety cap (e.g. max 500K faces) to avoid extreme lag on weak devices. + +--- + +## 7. Vertex Pooling (bloxd / High-Performance Engines) + +**What it does:** Reuse vertex buffers instead of allocating new ones per chunk. Reduces allocations and GC. + +**Impact:** Can improve frame times by tens of percent in allocation-heavy setups. + +**Hytopia status:** New geometry per batch. No pooling. + +**Recommendation:** Lower priority. Consider if profiling shows allocation/GC as a bottleneck. + +--- + +## 8. Server-Side Optimizations (Already Addressed) + +- **View distance:** Reduced default, `/view` command +- **Chunk load/unload:** With grace period +- **Prioritize by view direction:** Load chunks in front first +- **Unload distant chunks:** Keeps memory bounded + +--- + +## Prioritized Implementation Plan + +| Priority | Technique | Impact | Complexity | Effort | +|----------|-----------|--------|------------|--------| +| 1 | **Greedy meshing** | High | Medium | 2–3 days | +| 2 | **LOD for distant chunks** | Medium | Medium | 1–2 days | +| 3 | **Occlusion / cave culling** | Medium | High | 3+ days | +| 4 | **Block/face limit cap** | Low (safety) | Low | <1 day | +| 5 | **Vertex pooling** | Low–Medium | Medium | 1–2 days | + +--- + +## Greedy Meshing Implementation Sketch + +For `ChunkWorker._createChunkBatchGeometries`: + +1. **Current flow:** Per block → per face → if visible → emit quad. +2. **New flow (opaque solids):** + - Collect visible faces with (normal, blockTypeId, textureUri, AO, light) as keys + - For each direction (±X, ±Y, ±Z), build a 2D grid of visible faces + - Run greedy merge per slice (0fps algorithm) + - Emit merged quads instead of per-face quads +3. **Transparent blocks:** Can stay as-is (per-face) or use a separate greedy pass with transparency grouping. +4. **Trimesh blocks:** Keep current logic (no greedy). + +**References:** +- [0fps Part 1](https://0fps.net/2012/06/30/meshing-in-a-minecraft-game/) +- [0fps Part 2 (multiple types)](https://0fps.net/2012/07/07/meshing-minecraft-part-2/) +- [mikolalysenko/greedy-mesher](https://github.com/mikolalysenko/greedy-mesher) (JS) +- [Vercidium greedy voxel meshing gist](https://gist.github.com/Vercidium/a3002bd083cce2bc854c9ff8f0118d33) + +--- + +## Other Considerations + +- **Runs-based meshing:** Alternative to full greedy; ~20% more triangles but ~4× faster build. Good compromise. +- **GPU-driven rendering:** Modern engines use compute shaders for mesh generation. WebGL limits this; workers are the main option. +- **Chunk size:** Hytopia uses 16³ chunks and 2×2×2 batches (32³). Matches common practice. + +--- + +## Implemented (Hytopia) + +- **LOD:** Distant chunks use step 2 or 4 (half/quarter detail). Underground batches get +1 LOD. +- **Block/face limits:** When total faces > 800K, view distance shrinks to 25% and occlusion runs. +- **Vertex pooling:** Mesh updates reuse existing BufferAttributes when size matches (avoids GPU realloc). +- **Occlusion culling:** BFS from camera through air/liquid; only visible batches rendered when over face limit. +- **Underground LOD:** Batches below Y=40 use one extra LOD step (reduces cave geometry; partial greedy benefit). + +## Conclusion + +The largest missing optimization is **full greedy meshing** (quad merging). Face culling is in place, but merging adjacent same-type faces into larger quads can cut vertex/quad count by roughly 2–10× depending on geometry, which directly reduces GPU work and often improves smoothness when flying. + +LOD and occlusion culling are useful next steps; block limits and vertex pooling are refinements for later. From 858164548ba94bb0e2f75a23e03cf9df191111c8 Mon Sep 17 00:00:00 2001 From: web3dev1337 <160291380+web3dev1337@users.noreply.github.com> Date: Thu, 5 Mar 2026 15:07:31 +1100 Subject: [PATCH 02/40] research: comprehensive HYTOPIA performance framework analysis 6-agent swarm research covering: - HyFire2 master: 3 profiling classes, 5 monitors, 20+ scripts, 2 Python analyzers - HyFire2 analysis/docs branches (11): 3-month retrospective, hotspot analyses, automation playbooks - HyFire2 feature branches (18): monitoring UIs, flame charts, mobile perf, stress testers - HyFire2 perf/fix branches (27): optimization techniques (caching, pooling, deferral) - HYTOPIA SDK: Telemetry, PerformanceMetricsManager, DebugPanel, Stats classes, 8 gaps identified - Headless/automation: Puppeteer scripts, Chrome trace parsers, ARM64 sim, CI/CD roadmap - SYNTHESIS: 965-line framework spec with architecture, scenarios, metrics, 4-phase roadmap Co-Authored-By: Claude Opus 4.6 --- .../SYNTHESIS-perf-framework-spec.md | 965 ++++++++++++++++++ .../headless-automation-research.md | 687 +++++++++++++ .../hyfire2-feature-perf-branches.md | 962 +++++++++++++++++ .../hyfire2-master-perf-code.md | 666 ++++++++++++ .../hyfire2-perf-analysis-branches.md | 372 +++++++ .../hyfire2-perf-fix-branches.md | 345 +++++++ .../hytopia-sdk-perf-systems.md | 410 ++++++++ .../raw/COLLIDER_ARCHITECTURE_RESEARCH.md | 159 +++ ...NTITY_SYNC_DELTA_COMPRESSION_DESIGN (1).md | 226 ++++ .../ENTITY_SYNC_DELTA_COMPRESSION_DESIGN.md | 226 ++++ .../GREEDY_MESHING_IMPLEMENTATION_GUIDE.md | 182 ++++ .../raw/MAP_ENGINE_ARCHITECTURE (1).md | 272 +++++ .../raw/MAP_ENGINE_ARCHITECTURE.md | 272 +++++ .../raw/MINECRAFT_ARCHITECTURE_RESEARCH.md | 161 +++ .../raw/NETWORK_PROTOCOL_2026_RESEARCH.md | 130 +++ ...MOOTH_WORLD_STREAMING_REFACTOR_PLAN (1).md | 180 ++++ .../SMOOTH_WORLD_STREAMING_REFACTOR_PLAN.md | 180 ++++ .../raw/VOXEL_ENGINE_2026_MASTER_PLAN (1).md | 218 ++++ .../raw/VOXEL_ENGINE_2026_MASTER_PLAN.md | 218 ++++ .../raw/VOXEL_PERFORMANCE_MASTER_PLAN.md | 153 +++ .../raw/VOXEL_RENDERING_RESEARCH.md | 190 ++++ .../perf-notes-amateur-review-24a295d/init.md | 19 + .../progress.md | 16 + 23 files changed, 7209 insertions(+) create mode 100644 ai-memory/docs/perf-amateur-notes-2026-03-05/SYNTHESIS-perf-framework-spec.md create mode 100644 ai-memory/docs/perf-amateur-notes-2026-03-05/headless-automation-research.md create mode 100644 ai-memory/docs/perf-amateur-notes-2026-03-05/hyfire2-feature-perf-branches.md create mode 100644 ai-memory/docs/perf-amateur-notes-2026-03-05/hyfire2-master-perf-code.md create mode 100644 ai-memory/docs/perf-amateur-notes-2026-03-05/hyfire2-perf-analysis-branches.md create mode 100644 ai-memory/docs/perf-amateur-notes-2026-03-05/hyfire2-perf-fix-branches.md create mode 100644 ai-memory/docs/perf-amateur-notes-2026-03-05/hytopia-sdk-perf-systems.md create mode 100644 ai-memory/docs/perf-amateur-notes-2026-03-05/raw/COLLIDER_ARCHITECTURE_RESEARCH.md create mode 100644 ai-memory/docs/perf-amateur-notes-2026-03-05/raw/ENTITY_SYNC_DELTA_COMPRESSION_DESIGN (1).md create mode 100644 ai-memory/docs/perf-amateur-notes-2026-03-05/raw/ENTITY_SYNC_DELTA_COMPRESSION_DESIGN.md create mode 100644 ai-memory/docs/perf-amateur-notes-2026-03-05/raw/GREEDY_MESHING_IMPLEMENTATION_GUIDE.md create mode 100644 ai-memory/docs/perf-amateur-notes-2026-03-05/raw/MAP_ENGINE_ARCHITECTURE (1).md create mode 100644 ai-memory/docs/perf-amateur-notes-2026-03-05/raw/MAP_ENGINE_ARCHITECTURE.md create mode 100644 ai-memory/docs/perf-amateur-notes-2026-03-05/raw/MINECRAFT_ARCHITECTURE_RESEARCH.md create mode 100644 ai-memory/docs/perf-amateur-notes-2026-03-05/raw/NETWORK_PROTOCOL_2026_RESEARCH.md create mode 100644 ai-memory/docs/perf-amateur-notes-2026-03-05/raw/SMOOTH_WORLD_STREAMING_REFACTOR_PLAN (1).md create mode 100644 ai-memory/docs/perf-amateur-notes-2026-03-05/raw/SMOOTH_WORLD_STREAMING_REFACTOR_PLAN.md create mode 100644 ai-memory/docs/perf-amateur-notes-2026-03-05/raw/VOXEL_ENGINE_2026_MASTER_PLAN (1).md create mode 100644 ai-memory/docs/perf-amateur-notes-2026-03-05/raw/VOXEL_ENGINE_2026_MASTER_PLAN.md create mode 100644 ai-memory/docs/perf-amateur-notes-2026-03-05/raw/VOXEL_PERFORMANCE_MASTER_PLAN.md create mode 100644 ai-memory/docs/perf-amateur-notes-2026-03-05/raw/VOXEL_RENDERING_RESEARCH.md create mode 100644 ai-memory/feature/perf-notes-amateur-review-24a295d/init.md create mode 100644 ai-memory/feature/perf-notes-amateur-review-24a295d/progress.md diff --git a/ai-memory/docs/perf-amateur-notes-2026-03-05/SYNTHESIS-perf-framework-spec.md b/ai-memory/docs/perf-amateur-notes-2026-03-05/SYNTHESIS-perf-framework-spec.md new file mode 100644 index 00000000..f1edce75 --- /dev/null +++ b/ai-memory/docs/perf-amateur-notes-2026-03-05/SYNTHESIS-perf-framework-spec.md @@ -0,0 +1,965 @@ +# HYTOPIA Performance Framework - Research Synthesis & Specification + +**Date:** 2026-03-05 +**Sources:** 6 research documents covering HyFire2 (100+ perf branches, 63 curated PRs) and HYTOPIA SDK engine +**Scope:** Server profiling, client profiling, network monitoring, headless automation, mobile testing, CI/CD regression detection + +--- + +## Executive Summary + +### What Exists + +The HYTOPIA ecosystem already has substantial performance infrastructure, but it is **fragmented across repos, branches, and merge states**: + +- **HYTOPIA SDK (engine):** Built-in Sentry-based server telemetry (zero-overhead when disabled), client FPS/memory tracking via `PerformanceMetricsManager`, startup performance marks (`performance.mark`/`measure`), WebGL debug stats panel, automatic quality adjustment, and RTT measurement via SyncRequest/SyncResponse. The SDK provides the foundational hooks but no aggregation, no local dev profiling (Sentry-only), and no automated benchmarks. + +- **HyFire2 (game):** 63 curated performance PRs across 4 months (July-October 2025), 300+ hours of work. On master: a full profiling suite (`PerformanceManager`, `PerformanceMonitor`, `PerformanceProfiler`, `FrameBudgetMonitor`), 16+ analysis scripts, headless browser test scaffolding, baseline capture/comparison tools, YAML test scenarios, and 82 unique instrumentation points. Unmerged: 26 PRs including the most advanced monitoring (flame charts, spike detection with game state snapshots, Python trace analyzers, Excel analysis pipeline, particle stress tester). + +### What's Missing + +1. **No reusable performance framework** -- All tools are game-specific (HyFire2) or engine-specific (SDK). No shared toolkit exists for any HYTOPIA game developer. +2. **No local SDK profiling** -- `Telemetry.startSpan()` is a no-op without Sentry. Developers have zero built-in performance visibility during local development. +3. **No automated benchmarks** -- The `big-world` SDK example loads a large map but has no timing or measurement. No stress test example exists. +4. **No CI/CD performance gates** -- A 1,244-line infrastructure plan exists on an unmerged branch but nothing is built. +5. **No client frame breakdown** -- FPS is tracked but not frame-time components (render, JS, network, GC). +6. **No GPU profiling** -- WebGL draw calls and triangle counts are shown but no GPU millisecond timing. +7. **No cross-device pipeline** -- Chrome trace analysis scripts exist but require manual capture. No automated device testing. +8. **No server-to-client perf telemetry** -- No protocol packet carries server tick time or entity count to the client. + +### What We Need + +A **HYTOPIA Performance Framework** consisting of: +1. An SDK-level performance module (built into the engine, usable by any game) +2. A standalone benchmark runner (CLI tool for repeatable tests) +3. A headless device testing pipeline (Puppeteer/Playwright-based) +4. Trace analysis tools (Python/Node scripts for Chrome trace + CPU profile parsing) +5. A regression detector (CI/CD integration with baseline comparison) +6. A dashboard/reporter (HTML reports with historical comparisons) + +--- + +## Inventory of Existing Performance Code + +### Already Merged (Ready to Use) + +#### HYTOPIA SDK Engine (server + client) + +| Component | File | What It Does | +|-----------|------|-------------| +| Telemetry (Sentry spans) | `server/src/metrics/Telemetry.ts` | Wraps Sentry spans around tick subsystems. Zero-overhead no-op without Sentry. 12 span operations defined. | +| WorldLoop timing | `server/src/worlds/WorldLoop.ts` | Emits `TICK_END` with `tickDurationMs` every tick. SDK event any game can listen to. | +| Simulation timing | `server/src/worlds/physics/Simulation.ts` | Emits `STEP_END` with `stepDurationMs` for physics. | +| Ticker safeguards | `server/src/shared/classes/Ticker.ts` | `TICK_SLOW_UPDATE_CAP=2`, `MAX_ACCUMULATOR_TICK_MULTIPLE=3`. Prevents spiral-of-death. | +| IterationMap | `server/src/shared/classes/IterationMap.ts` | Custom Map+Array hybrid for ~2x faster iteration. Used in all sync queues. | +| Connection packet cache | `server/src/networking/Connection.ts` | Encode-once, send-to-N serialization cache. Gzip at level 1 for >64KB packets. | +| Network sync (30Hz) | `server/src/networking/NetworkSynchronizer.ts` | GC-aware queue clearing, reliable/unreliable packet splitting, lazy cache clearing. | +| SyncRequest/SyncResponse | `server/src/networking/`, protocol | RTT measurement every 2s. Server sends `r`, `s`, `p`, `n` timestamps. | +| PerformanceMetricsManager | `client/src/core/PerformanceMetricsManager.ts` | FPS (1s window), delta time, memory (Chrome-only `performance.memory`), refresh rate estimation. | +| DebugPanel | `client/src/core/DebugPanel.ts` | Stats.js FPS/MS/MB/RTT panels. lil-gui folders for WebGL, Entity, Chunk, GLTF, Audio, SceneUI, Arrow stats. | +| Stats classes | `client/src/entities/EntityStats.ts`, `chunks/ChunkStats.ts`, `gltf/GLTFStats.ts`, `audio/AudioStats.ts`, `arrows/ArrowStats.ts`, `ui/SceneUIStats.ts` | Per-subsystem static counters, reset each frame. | +| Startup marks | `client/src/network/NetworkManager.ts`, `client/src/chunks/ChunkManager.ts` | `performance.mark`/`measure` for connecting, connected, first-packet, first-chunk-batch, game-ready. | +| Quality auto-adjust | `client/src/settings/SettingsManager.ts` | ULTRA/HIGH/MEDIUM/LOW/POWER_SAVING presets. Auto-adjusts based on FPS with warmup, bounce protection, mobile cap. | +| View distance + frustum culling | `client/src/entities/Entity.ts`, `EntityManager.ts` | Squared distance checks, frustum culling, update skipping. | +| Renderer optimization | `client/src/core/Renderer.ts` | `matrixAutoUpdate=false` on all scenes, manual resets, FPS cap, custom transparent sort. | + +#### HyFire2 Game (on master) + +| Component | File | What It Does | +|-----------|------|-------------| +| PerformanceManager | `src/profiling/PerformanceManager.ts` | Spike detection (>50ms), auto CPU profiling on spike, heap snapshots at 800MB, SIGUSR1/SIGUSR2 signal handlers. Event loop lag detection. | +| InspectorCpuProfiler | `src/profiling/InspectorCpuProfiler.ts` | V8 Inspector API (`Profiler` domain) wrapper. Outputs `.cpuprofile` files compatible with Chrome DevTools. Signal-based profiling. | +| @Monitor decorator | `src/profiling/decorators.ts` | `@Monitor`, `@MonitorClass`, `monitorBlock()`, `monitorAsyncBlock()`. Wraps methods in `performanceManager.measure()`. | +| PerformanceMonitor | `src/utils/PerformanceMonitor.ts` | Sampling-based metrics with p50/p95/p99. Memory and event loop lag. 1s sampling, 10-min history. (Sampling currently DISABLED due to OOM.) | +| PerformanceProfiler | `src/utils/PerformanceProfiler.ts` | Manual call stack profiler. Exports collapsed stack format for flame graphs. 1ms sampling. | +| FrameBudgetMonitor | `src/utils/FrameBudgetMonitor.ts` | 16.66ms frame budget tracking. Spike threshold 8ms. Worst frame tracking. Top offenders. 82 unique `measure()` calls across codebase. | +| ClientPerformanceReporter | `src/utils/ClientPerformanceReporter.ts` | Server-side FPS report aggregator from clients. Issue detection (<30 FPS, >50ms frame time, >1GB memory). Performance tier classification. | +| ZoneVisibilityMonitor | `src/utils/ZoneVisibilityMonitor.ts` | Raycast skip rate tracking. 30s report interval. | +| benchmark-game.ts | `scripts/benchmark-game.ts` | Automated benchmarks: idle, 5v5_combat, 10v10_full, stress_test scenarios. JSON output. | +| profile-server-auto.ts | `scripts/profile-server-auto.ts` | Auto-saving ANSI dashboard. 30s auto-save to `performance-reports/`. | +| capture-baseline.sh | `scripts/capture-baseline.sh` | 5-min server run with bots, extracts perf.* events, calculates stats, saves JSON baseline. | +| compare-baselines.ts | `scripts/compare-baselines.ts` | Compares two baseline JSONs. Flags regressions >5%. Exit code 1 on regression. CI-ready. | +| analyze-performance.cjs | `scripts/analyze-performance.cjs` | Parses .cpuprofile, builds call tree, top 20 hot functions by self time. | +| analyze-full-profile.cjs | `scripts/analyze-full-profile.cjs` | Top 100 functions from CPU profile. Game vs system categorization. | +| map-profile-to-code.cjs | `scripts/map-profile-to-code.cjs` | Maps V8 profile functions to source code via CODEBASE_REF.md. | +| generate-flamegraph.ts | `scripts/generate-flamegraph.ts` | Interactive HTML flame graphs from collapsed stack format. | +| generate-flame-chart.cjs | `scripts/generate-flame-chart.cjs` | HTML flame chart from performance-reports JSON. | +| visualize-perf.js | `scripts/visualize-perf.js` | ASCII bar charts sorted by P99 latency. | +| analyze-bottleneck.js | `scripts/analyze-bottleneck.js` | Worst-frame JSON analysis. | +| analyze-entity-lookups.sh | `scripts/analyze-entity-lookups.sh` | Audits inefficient entity lookup patterns. | +| analyze-latest-session.ts | `scripts/analyze-latest-session.ts` | Latest session log analysis with full stat breakdown. | +| test-grenade-spike.ts | `scripts/test-grenade-spike.ts` | Automated Puppeteer test: buys grenades, dies, measures handleDeath. | +| headless-player.ts | `scripts/lib/headless-player.ts` | Puppeteer headless browser player for automated testing. | +| server-controller.ts | `scripts/lib/server-controller.ts` | Server lifecycle management for tests. | +| metrics-extractor.ts | `scripts/lib/metrics-extractor.ts` | NDJSON log parser with stat calculation. | +| scenario-types.ts | `scripts/lib/scenario-types.ts` | TypeScript types for YAML test scenarios. | +| grenade-death.yaml | `scenarios/grenade-death.yaml` | YAML scenario with thresholds and pass/fail criteria. | +| analyze-frame-budget.py | `analyze-frame-budget.py` | Chrome trace frame budget analysis. 60fps and 30fps targets. | +| analyze-recurring-blockers.py | `analyze-recurring-blockers.py` | Recurring frame blockers (>3 occurrences, skips startup). Impact scoring. | +| Debug UI config | `src/config/DebugUIConfig.ts` | Cached flag lookups for perf-relevant debug toggles. | + +### Unmerged (Needs Cherry-Picking) + +Ranked by value for a reusable framework, highest first. + +#### Tier 1: High Value, Ready to Adapt + +| Branch | Key Content | Lines Added | Why It Matters | +|--------|-------------|-------------|---------------| +| `feature/add-game-performance-monitoring` | FlameChartRecorder (Chrome Trace Event format), enhanced SpikeDetector with bot state snapshots, D3.js flame chart viewer, 12 analysis scripts | +10,306 | **Only source of Chrome Trace Event format output.** FlameChartRecorder is directly reusable for any HYTOPIA game. | +| `feature/performance-monitoring-improvements` | Enhanced FrameBudgetMonitor with hierarchical tracking, self-time calculation, interactive flamechart HTML export, performance context (strategy, zone, enemies) | +4,405 | **Self-time and hierarchy are critical for meaningful profiling.** Current FrameBudgetMonitor on master has flat operation tracking only. | +| `feature/performance-monitoring-ui` | PerformanceMetricsService, FunctionProfiler, SessionSpikeTracker, SystemProfiler, F9 client overlay | +2,311 | **The only real-time visual monitoring UI.** F9 overlay with Overview/Spikes/Logs/Operations tabs. | +| `feature/performance-analysis-combined` | 200+ per-function spike analyses, instrumentation guide with ROI ranking, actual code fixes with A/B validation report, 1.6M-line codebase call graph | +1,785,915 | **Most comprehensive analysis ever done.** The INSTRUMENTATION_GUIDE.md methodology is directly reusable. | +| `test/headless-browser-automation` | 6 Puppeteer scripts for automating game client through hytopia.com/play | +951 | **Foundation for all headless testing.** Working scripts with WSL2 WebGL workarounds documented. | +| `fix/memory-optimizations` | PathfindingCache (pool of 20 Maps/Sets), PlayerCache (pre-categorized, readonly), BotManager readonly array return | Unmerged PR | **Object pooling patterns** directly applicable to framework benchmarks. | + +#### Tier 2: Valuable, Needs Adaptation + +| Branch | Key Content | Lines Added | Why It Matters | +|--------|-------------|-------------|---------------| +| `feature/performance-analysis-tools` | Python CSV-to-Excel analysis pipeline. Generates XLSX with pivot tables, high-variance functions, spike details | +3,333 | **Structured analysis for non-developers.** Excel output is shareable with stakeholders. | +| `feature/particle-stress-tester` | ParticleStressTester class (8 scenarios: weapons, smoke, HE, molotov, flash, blood, stress, ramp), F2 menu | +831 | **Only particle stress testing tool.** Directly reusable pattern for framework stress scenarios. | +| `feature/performance-monitoring-hybrid` | PerformanceLagDetector (CPU polling every 50ms, spike snapshots), PerformanceMonitoringConfig interface | +698 | **Production-safe polling approach.** Alternative to function wrapping when overhead matters. | +| `feature/bot-cover-micro-profiler` | Prototype patching with Symbol guard, env-var gating (`BOT_COVER_PROF=1`), JSON report on exit | +1,269 | **Cleanest opt-in profiler design.** Symbol-guarded prototype patching prevents double-wrap. | +| `feature/mobile-performance-analysis` | 3 Python trace analyzers (TraceAnalyzer, FrameBudgetAnalyzer, RecurringBlockerAnalyzer) | +66,578 | **Mobile-specific analysis tools.** Chrome trace parsing for mobile device profiling. | +| `feature/baseline-lag-optimization` | Mobile frame skipping (30fps on mobile), viewmodel bob disable | +64,772 | **Mobile optimization patterns.** Frame skipping technique applicable to quality presets. | +| `investigation/perf-monitoring-analysis` | master-performance-analysis.cjs (768 lines, 6 analysis categories), WASM function mapping (6,684 Rapier functions), final-complete-analysis.cjs (3,374 lines) | +8,701 | **Deepest CPU profile analysis.** WASM mapping is unique -- only tool that can identify Rapier physics functions in profiles. | +| `sentry-testing` | SentryTelemetryService (1,593 lines), dual SDK integration, 30+ game-specific span operations | +941 | **Production monitoring.** Fully implemented, just needs merge and enable. | +| `fix/10v10-performance-analysis` | DistanceCullingService, OptimizedBroadcastService, tiered update rates by distance | Unmerged PR | **Network optimization patterns** for scaling to many players. | +| `test/arm64-simulation` | Docker ARM64 emulation matching AWS m7g.large | +3,228 | **Production environment simulation.** Good for compatibility (not performance) testing. | + +#### Tier 3: Documentation / Planning Only + +| Branch | Content | +|--------|---------| +| `docs/performance-testing-infrastructure` | 1,244-line roadmap for CI/CD perf testing. Phase 1-5 plan. GitHub Actions workflow template. | +| `docs/performance-monitoring-ultrathink-analysis` | 93KB technical deep-dive. Smart spike aggregation, tree filtering, Chrome Trace/Speedscope export research. | +| `analysis/performance-work-3mo` | 3-month retrospective. 63 curated PRs. 26 unmerged PR analysis. Quantified improvements. | +| `docs/performance-analysis-outputs` | CPU profile correlation with Trello cards. Dependency graph of 219 perf records. Baseline capture scripts. | +| `analysis/performance-monitoring-strategy` | 4-phase monitoring strategy. PerformanceLagDetector design. Sentry dual-SDK setup docs. | +| `analysis/code-hotspots-metrics` | Static hotspot analysis with before/after code examples. Spatial grid indexing proposal. | + +### Key Files & Locations + +#### HYTOPIA SDK Engine + +``` +/home/ab/GitHub/hytopia/work1/ +├── server/src/ +│ ├── metrics/Telemetry.ts # Sentry span wrapper (12 operations) +│ ├── worlds/WorldLoop.ts # TICK_START/TICK_END events +│ ├── worlds/physics/Simulation.ts # STEP_START/STEP_END events +│ ├── shared/classes/Ticker.ts # Fixed timestep with safeguards +│ ├── shared/classes/IterationMap.ts # Fast-iteration Map+Array +│ ├── networking/NetworkSynchronizer.ts # 30Hz sync, GC-aware clearing +│ ├── networking/Connection.ts # Packet cache, gzip, MTU handling +│ └── GameServer.ts # Start timing +├── client/src/ +│ ├── core/PerformanceMetricsManager.ts # FPS, memory, refresh rate +│ ├── core/DebugPanel.ts # Stats.js + lil-gui overlay +│ ├── core/Renderer.ts # WebGL stats, FPS cap, matrix opt +│ ├── settings/SettingsManager.ts # Quality auto-adjust +│ ├── network/NetworkManager.ts # RTT, performance marks +│ ├── chunks/ChunkManager.ts # Chunk performance marks +│ ├── entities/EntityStats.ts # Entity counters +│ ├── chunks/ChunkStats.ts # Chunk counters +│ ├── gltf/GLTFStats.ts # GLTF counters +│ ├── audio/AudioStats.ts # Audio counters +│ ├── arrows/ArrowStats.ts # Arrow counters +│ └── ui/SceneUIStats.ts # SceneUI counters +└── protocol/ + ├── packets/inbound/SyncRequest.ts # RTT request + ├── packets/outbound/SyncResponse.ts # RTT response + └── packets/inbound/DebugConfig.ts # Physics debug toggle +``` + +#### HyFire2 Game (master) + +``` +~/GitHub/games/hyfire2/ +├── src/profiling/ +│ ├── PerformanceManager.ts # Spike detection, auto CPU profiling +│ ├── InspectorCpuProfiler.ts # V8 Inspector API wrapper +│ └── decorators.ts # @Monitor, @MonitorClass, monitorBlock +├── src/utils/ +│ ├── PerformanceMonitor.ts # Sampling metrics, percentiles +│ ├── PerformanceProfiler.ts # Call stack profiler, flame graphs +│ ├── FrameBudgetMonitor.ts # Frame budget tracking (82 measure points) +│ ├── ClientPerformanceReporter.ts # Client FPS aggregation +│ └── ZoneVisibilityMonitor.ts # Raycast optimization monitoring +├── scripts/ +│ ├── benchmark-game.ts # Automated scenarios +│ ├── profile-server-auto.ts # ANSI dashboard + auto-save +│ ├── capture-baseline.sh # Baseline JSON capture +│ ├── compare-baselines.ts # Baseline regression comparison +│ ├── analyze-performance.cjs # CPU profile analysis +│ ├── analyze-full-profile.cjs # Top 100 functions +│ ├── map-profile-to-code.cjs # Profile-to-source mapping +│ ├── generate-flamegraph.ts # HTML flame graph +│ ├── generate-flame-chart.cjs # HTML flame chart +│ ├── visualize-perf.js # ASCII bar charts +│ ├── analyze-bottleneck.js # Worst-frame analysis +│ ├── analyze-entity-lookups.sh # Entity lookup audit +│ ├── analyze-latest-session.ts # Session log analysis +│ ├── test-grenade-spike.ts # Puppeteer perf test +│ └── lib/ +│ ├── headless-player.ts # Puppeteer game client +│ ├── server-controller.ts # Server lifecycle +│ ├── metrics-extractor.ts # NDJSON log parser +│ └── scenario-types.ts # YAML scenario types +├── scenarios/ +│ └── grenade-death.yaml # Test scenario definition +├── analyze-frame-budget.py # Chrome trace analysis +└── analyze-recurring-blockers.py # Recurring blocker analysis +``` + +--- + +## Techniques Catalog + +### Server-Side Profiling + +#### 1. V8 Inspector CPU Profiling +**Source:** HyFire2 `src/profiling/InspectorCpuProfiler.ts` + +Uses Node.js `inspector.Session` to capture V8 CPU profiles programmatically. Output is `.cpuprofile` JSON, loadable in Chrome DevTools or analyzable with custom scripts. + +```typescript +const session = new inspector.Session(); +session.connect(); +session.post('Profiler.enable'); +session.post('Profiler.start'); +// ... run for duration ... +session.post('Profiler.stop', (err, { profile }) => { + fs.writeFileSync('profile.cpuprofile', JSON.stringify(profile)); +}); +``` + +**Auto-trigger:** PerformanceManager triggers a 5s CPU profile capture (with 30s cooldown) when any operation exceeds the spike threshold. SIGUSR1 signal toggles manual profiling. + +#### 2. performance.now() Checkpoint Instrumentation +**Source:** HyFire2 `src/entities/GamePlayerEntity.ts` (50+ calls) + +The most common profiling pattern. Places `performance.now()` at section boundaries within a function, logs checkpoint data when total exceeds threshold. + +```typescript +function handleDeath() { + const perfStart = performance.now(); + const checkpoints: Record = {}; + + // Section 1 + const s1 = performance.now(); + doLogging(); + checkpoints.logging = performance.now() - s1; + + // Section 2 + const s2 = performance.now(); + calcHealth(); + checkpoints.healthCalc = performance.now() - s2; + + const total = performance.now() - perfStart; + if (total > 0.5) { + eventLogger.info('perf.handleDeath', { totalMs: total.toFixed(3), checkpoints }); + } +} +``` + +**Overhead:** Negligible (~0.001ms per `performance.now()` call). The conditional logging threshold prevents log spam. + +#### 3. @Monitor Decorators +**Source:** HyFire2 `src/profiling/decorators.ts` + +Zero-effort instrumentation via TypeScript decorators. Auto-detects sync vs async methods. + +```typescript +@MonitorClass() +class BotBrain { + // Every method automatically measured as "BotBrain.methodName" + think() { ... } + evaluateCombat() { ... } +} + +// Or per-method: +class GameManager { + @Monitor() + handleDeath() { ... } +} + +// Or inline: +monitorBlock('zone.lookup', () => findZoneForPosition(pos)); +``` + +#### 4. FrameBudgetMonitor.measure() +**Source:** HyFire2 `src/utils/FrameBudgetMonitor.ts` + +Wraps operations inline with frame-level budget tracking. 82 unique tracking points across HyFire2. + +```typescript +frameBudgetMonitor.startFrame(); +// ... per-operation: +frameBudgetMonitor.measure('brain.bombDetection.Alpha', () => { + detectBomb(); +}); +frameBudgetMonitor.endFrame(); +``` + +**Key metrics:** worst frame ever, top offenders (name + count + max + avg), recent spikes (last 50), frames over budget percentage. + +**Known issue:** The monitor itself causes 15.4% overhead (6.59% for measure() + 8.81% for SpikeDetector start/end). This is documented and needs to be addressed in the framework with adaptive sampling. + +#### 5. Sentry Telemetry Spans +**Source:** HYTOPIA SDK `server/src/metrics/Telemetry.ts`, HyFire2 `sentry-testing` branch + +Zero-overhead wrapping: `Telemetry.startSpan()` is a direct function call when Sentry is not initialized. When initialized, creates hierarchical spans filtered by tick time threshold. + +```typescript +Telemetry.startSpan({ op: TelemetrySpanOperation.ENTITIES_TICK }, () => { + entityManager.tickEntities(dt); +}); +``` + +**12 defined SDK span operations:** TICKER_TICK, WORLD_TICK, ENTITIES_TICK, SIMULATION_STEP, PHYSICS_STEP, PHYSICS_CLEANUP, ENTITIES_EMIT_UPDATES, NETWORK_SYNCHRONIZE, BUILD_PACKETS, SERIALIZE_PACKETS, SEND_PACKETS, SEND_ALL_PACKETS, NETWORK_SYNCHRONIZE_CLEANUP. + +**HyFire2 extends with 30+ game-specific operations** (in the unmerged SentryTelemetryService): GAME_TICK, BOT_TICK_ALL, BOT_BRAIN_THINK, BOT_NAVIGATION, BOT_COMBAT_SYSTEM, PLAYER_DAMAGE_CALC, WEAPON_FIRE, BOMB_PLANT, etc. + +#### 6. Chrome Trace Event Format Recording +**Source:** HyFire2 `feature/add-game-performance-monitoring` branch, `FlameChartRecorder.ts` + +Records operations in Chrome Trace Event format, loadable in `chrome://tracing`, Speedscope, or the custom D3.js viewer. + +```typescript +interface TraceEvent { + name: string; + cat: string; // category + ph: string; // 'B' (begin), 'E' (end), 'X' (complete) + ts: number; // timestamp in microseconds + pid: number; + tid: number; + dur?: number; + args?: any; +} +``` + +Uses logical thread IDs: MAIN=1, BOTS=2, PHYSICS=3, NETWORK=4. + +#### 7. Process Stats / Memory Monitoring +**Source:** HYTOPIA SDK `Telemetry.getProcessStats()`, HyFire2 `PerformanceManager` + +```typescript +// SDK: +Telemetry.getProcessStats(true) // { jsHeapSizeMb, jsHeapCapacityMb, rssSizeMb, ... } + +// HyFire2: +v8.writeHeapSnapshot() // Triggered when heap > 800MB +process.memoryUsage() // { heapUsed, heapTotal, rss, external } +``` + +**Known limitation:** Bun does not expose `process.cpuUsage()`. HyFire2's PerformanceMonitor uses a hardcoded 0.7/0.3 multiplier -- effectively fake CPU stats. + +#### 8. Prototype Patching with Symbol Guard +**Source:** HyFire2 `feature/bot-cover-micro-profiler` + +Opt-in, zero-setup profiling via prototype patching gated by environment variable. Uses Symbol to prevent double-wrapping. + +```typescript +const ENABLED = process.env.BOT_COVER_PROF === "1"; +if (ENABLED) { + const SYM = Symbol.for("PROFILER_INSTALLED"); + if (!proto[SYM]) { + proto[SYM] = true; + wrapMethod(proto, 'methodName', 'label'); + } +} +``` + +#### 9. Signal-Based Profiling +**Source:** HyFire2 `PerformanceManager` + +- `SIGUSR1` -- Toggle CPU profiling on/off +- `SIGUSR2` -- Generate performance report + +Useful for production environments where you cannot attach a debugger. + +### Client-Side Profiling + +#### 1. PerformanceMetricsManager +**Source:** HYTOPIA SDK `client/src/core/PerformanceMetricsManager.ts` + +- FPS: Averaged over 1-second windows via Three.js Clock +- Memory: `performance.memory.usedJSHeapSize` / `totalJSHeapSize` (Chrome-only) +- Refresh rate estimation: Samples 30 rAF deltas, trims 10% outliers, snaps to common rates (30/60/72/90/120/144/165/240/300/360) + +#### 2. Stats Classes (Per-Subsystem Counters) +**Source:** HYTOPIA SDK client, 6 stat classes + +All use static fields, reset per frame by their respective managers: + +| Class | Key Counters | +|-------|-------------| +| EntityStats | count, inViewDistanceCount, frustumCulledCount, updateSkipCount, animationPlayCount, localMatrixUpdateCount, worldMatrixUpdateCount | +| ChunkStats | count, visibleCount, blockCount, opaqueFaceCount, transparentFaceCount, liquidFaceCount | +| GLTFStats | fileCount, sourceMeshCount, clonedMeshCount, instancedMeshCount, drawCallsSaved | +| AudioStats | count, matrixUpdateCount, matrixUpdateSkipCount | +| ArrowStats | count, visibleCount | +| SceneUIStats | count, visibleCount | + +#### 3. WebGL Renderer Stats +**Source:** HYTOPIA SDK `client/src/core/Renderer.ts` + `DebugPanel.ts` + +Read from `renderer.info` (manual reset via `renderer.info.reset()` per frame): +- `render.calls` (draw calls) +- `render.triangles` +- `memory.geometries` +- `memory.textures` +- `programs.length` + +#### 4. Performance API Marks/Measures +**Source:** HYTOPIA SDK client + +Startup performance timeline (visible in browser DevTools): +- `NetworkManager:connecting` / `connected` / `connected-time` +- `NetworkManager:world-packet-received` / `connected-to-first-packet-time` +- `NetworkManager:game-ready-time` +- `ChunkManager:first-chunk-batch-built` / `first-chunk-batch-built-time` + +#### 5. Chrome DevTools Trace Parsing +**Source:** HyFire2 Python scripts (3 analyzers) + +Parses Chrome Performance tab JSON exports. Filters by `ph === 'X'` complete events with `dur` in microseconds. + +| Script | Focus | +|--------|-------| +| `analyze-trace.py` | Long tasks (>50ms), JS execution breakdown, rendering perf, frame time distribution | +| `analyze-frame-budget.py` | Per-call cost (not cumulative), 60fps/30fps budget violations, weapon animation deep-dive | +| `analyze-recurring-blockers.py` | Recurring issues (3+ occurrences, skips startup), impact score, periodic pattern detection | + +### Network Monitoring + +#### 1. RTT Tracking via SyncRequest/SyncResponse +**Source:** HYTOPIA SDK protocol + +Client sends SyncRequest every 2 seconds. Server responds with: +- `r`: server absolute time at request receipt +- `s`: server absolute time at response +- `p`: high-res processing time (ms) +- `n`: ms until next server tick + +Client calculates RTT: `clientReceiveTime - syncStartTime - serverProcessingTime`. Exponential moving average with smoothing factor 0.5. + +#### 2. Packet Size Monitoring +**Source:** HYTOPIA SDK `Connection.ts` + +Serialization telemetry records packet count, IDs, and serialized byte count in Sentry span attributes. Gzip compression triggers at 64KB. WebTransport unreliable datagrams capped at 1200 bytes (MTU). + +#### 3. WebTransport vs WebSocket Metrics +**Source:** HYTOPIA SDK `NetworkManager.ts` + +Client tracks send/receive protocol (ws/wt) shown in debug panel. WebTransport uses unreliable datagrams for entity position updates; WebSocket falls back for everything. No per-transport performance comparison is built in. + +### Optimization Patterns Found + +Ranked by measured impact: + +| Rank | Pattern | Impact | Where Used | +|------|---------|--------|-----------| +| 1 | **Death visibility deferred** | 99.6% faster (1.5ms -> 0.006ms) | `perf/optimize-death-visibility-check` | +| 2 | **Grenade disposal logging batched** | 97% faster (40-60ms -> 1.03ms) | `perf/cache-sceneui-takedamage` | +| 3 | **Stopping power require() cached** | 93% faster (3.45ms -> 0.24ms) | `perf/stopping-power-optimization` | +| 4 | **MVP tracking deferred** | 93% faster in 10v10 (0.7ms -> <0.05ms) | `perf/optimize-mvp-tracking` | +| 5 | **Debug logging removed from hot paths** | 90% overhead eliminated | `perf/remove-damage-debug-logging` | +| 6 | **Team elimination check cached** | 80% faster (0.98ms -> 0.2ms) | Various PRs | +| 7 | **Map draw calls reduced** | 70% reduction (1,597 -> 487) | Asset optimization | +| 8 | **setTimeout(fn, 0) deferral** | Spreads spikes across ticks | 5+ branches (audio, effects, physics, drops, MVP) | +| 9 | **handleDeath optimized** | 49.2% faster (3ms -> 1.5ms) | `perf/cache-sceneui-takedamage` | +| 10 | **Weapon drops sequential-deferred** | 42.8% faster | `perf/investigate-weapon-drop` | +| 11 | **Per-tick raycast cache (bidirectional)** | 39% raycast reduction | `perf/reduce-bot-combat-spike` | +| 12 | **Weapon attack optimized** | 35% faster (4.84ms -> 3.13ms) | `perf/reduce-weapon-fire-spike` | +| 13 | **Deferred evaluation (flag-based)** | 150-700x faster intel updates | `perf-monitoring-terrorist-approaches` | +| 14 | **Object/collection pooling** | 300+ allocations/sec eliminated | `fix/memory-optimizations` | +| 15 | **Set-based lookups** | O(n) -> O(1) | `perf/optimize-bot-updates` | +| 16 | **Squared distance comparison** | Eliminates Math.sqrt() | `perf/bomb-retrieval-optimization` | +| 17 | **Frame-duration caching** | Multiple-per-tick -> once-per-tick | `perf/optimize-recoil-offset-calls` | +| 18 | **Fire-and-forget logging** | Eliminates `await` in hot paths | `perf/bomb-retrieval-optimization` | +| 19 | **Rate-limited warnings** | 1/5s instead of 1/tick | `perf/rate-limit-bot-navigator-warnings` | +| 20 | **Web Audio API** | 5-20ms latency vs 100-200ms | `perf/web-audio-kill-sounds` | +| 21 | **Distance-based network LOD** | Tiered update rates (close/medium/far) | `fix/10v10-performance-analysis` | +| 22 | **Screen-space UI over SceneUI** | n^2 DOM layers -> single overlay | `fix/teammate-ui-performance-lag` | +| 23 | **Log spam rate limiting** | 99.7% reduction (3,600/min -> 12/min) | Various PRs | +| 24 | **Mobile frame skipping** | 30fps target on mobile | `feature/baseline-lag-optimization` | + +### Anti-Patterns Identified + +These recurring bad patterns were found across HyFire2 and should be detected by the framework's lint/audit tools: + +1. `await eventLogger.debug(...)` in loops -- blocks iteration on log I/O +2. `Array.from(map.values()).includes()` -- O(n) scan with intermediate array creation +3. `[...this._collection]` on every getter call -- constant array allocation +4. `require('module')` inside tick/damage handlers -- module resolution per call +5. `JSON.parse(JSON.stringify(obj))` for deep copy -- expensive serialization roundtrip +6. `sceneUIManager.getAllSceneUIs()` to find specific UI -- full collection scan +7. Verbose logging in per-tick, per-damage, per-entity paths -- string creation + object allocation overhead +8. Creating new Map/Set in pathfinding hot paths -- GC pressure at 300+/sec +9. Multiple raycasts to same target pair in same tick -- redundant physics work +10. Synchronous physics state changes on game events -- blocks main thread + +--- + +## Gaps & Requirements + +### What's Missing in the SDK + +| Gap | Severity | Description | +|-----|----------|-------------| +| No local profiling without Sentry | **Critical** | `Telemetry.startSpan()` is a no-op without Sentry DSN. Developers have zero built-in visibility during local dev. Need a lightweight local profiler that works without external services. | +| No client frame breakdown | **Critical** | Client tracks FPS but not per-frame time breakdown (render time, JS time, animation update time, network processing, GC). Cannot diagnose *why* frames are slow. | +| No per-entity cost attribution | **High** | `ENTITIES_TICK` is one span for all entities. No way to identify which entity's `tick()` callback is expensive. Need per-entity or per-entity-type timing. | +| No bandwidth metrics exposed | **High** | Serialized byte count recorded in Sentry span attributes but never aggregated or exposed to SDK consumers. No per-player bandwidth tracking, no packet-rate counters. | +| No server-to-client perf telemetry | **High** | No protocol packet carries server tick time, entity count, or any server-side metrics to the client. Debug panel cannot show server health. | +| No tick budget tracking | **High** | No system tracks percentage of 16.67ms tick budget consumed or warns when ticks consistently exceed budget. Ticker's catch-up cap is silent. | +| No GPU profiling | **Medium** | WebGL draw calls and triangles tracked but no GPU millisecond timing. `EXT_disjoint_timer_query_webgl2` not used. | +| No chunk meshing timing | **Medium** | ChunkWorker does greedy meshing in a Web Worker but has no timing instrumentation. Slow chunk builds are invisible. | +| No memory trend tracking | **Medium** | Memory sampled once per frame but no leak detection, no trend analysis, no growth warning. | +| No network jitter metrics | **Medium** | RTT tracked with exponential smoothing but no jitter calculation (variance), no packet loss counting, no out-of-order detection. | +| No GC monitoring | **Medium** | No GC event tracking. GC-aware clearing in NetworkSynchronizer is experience-based, not measured. | +| No entity count budget warnings | **Low** | Nothing warns when entity or chunk counts approach degradation thresholds. | +| Chrome-only memory tracking | **Low** | `performance.memory` is Chrome-only. Firefox/Safari users get no memory data. | +| Stats classes not time-series | **Low** | All Stats classes are instantaneous counters reset each frame. No historical data, min/max/avg, or percentiles. | + +### What's Missing in Tooling + +| Gap | Severity | Description | +|-----|----------|-------------| +| No CI/CD performance gates | **Critical** | A 1,244-line plan exists on a branch but nothing is built. No GitHub Actions for perf testing. No merge-blocking on regression. | +| No automated regression detection | **Critical** | `compare-baselines.ts` exists on HyFire2 master but is not wired into any CI pipeline and is game-specific. | +| No cross-device testing pipeline | **High** | Chrome trace analysis scripts exist but require manual capture from physical devices. No automated device farm. | +| No headless stress testing | **High** | Puppeteer scripts exist on unmerged branches. No merged headless test infrastructure. | +| No benchmark suite for SDK | **High** | The `big-world` example loads a large map but has no measurement. No standardized benchmark scenarios. | +| No deterministic replay | **Medium** | No way to replay exact game state for A/B comparisons. Tests depend on bot AI randomness. | +| No network condition simulation | **Medium** | Puppeteer CDP network throttling documented but not implemented in any test. | +| No shared performance results format | **Low** | Each tool outputs different formats (JSON, markdown, CSV, XLSX). No unified schema for cross-tool comparison. | + +--- + +## Framework Architecture Proposal + +### Core Components + +``` +┌─────────────────────────────────────────────────────────────────────┐ +│ HYTOPIA Performance Framework │ +│ │ +│ ┌──────────────────────┐ ┌──────────────────────┐ │ +│ │ 1. SDK Perf Module │ │ 2. Benchmark Runner │ │ +│ │ (built into engine) │ │ (standalone CLI) │ │ +│ │ │ │ │ │ +│ │ - Local profiler │ │ - Scenario loader │ │ +│ │ - Tick budget track │ │ - Bot spawner │ │ +│ │ - Entity cost attr. │ │ - Metric collector │ │ +│ │ - Network metrics │ │ - Baseline compare │ │ +│ │ - Client frame break │ │ - JSON/HTML output │ │ +│ │ - Perf telemetry pkt │ │ - YAML scenarios │ │ +│ └──────────┬───────────┘ └──────────┬───────────┘ │ +│ │ │ │ +│ ┌──────────┴───────────┐ ┌──────────┴───────────┐ │ +│ │ 3. Device Pipeline │ │ 4. Trace Analyzer │ │ +│ │ (Puppeteer/Playwright)│ │ (Python/Node) │ │ +│ │ │ │ │ │ +│ │ - Headless clients │ │ - Chrome trace parse │ │ +│ │ - Network throttle │ │ - CPU profile parse │ │ +│ │ - CDP metrics pull │ │ - WASM fn mapping │ │ +│ │ - GPU timing (ext) │ │ - Flame graph gen │ │ +│ │ - Mobile emulation │ │ - Spike aggregation │ │ +│ └──────────┬───────────┘ └──────────┬───────────┘ │ +│ │ │ │ +│ ┌──────────┴───────────┐ ┌──────────┴───────────┐ │ +│ │ 5. Regression Gate │ │ 6. Dashboard/Report │ │ +│ │ (CI/CD integration) │ │ (HTML reports) │ │ +│ │ │ │ │ │ +│ │ - GH Actions workflow│ │ - Historical trends │ │ +│ │ - Baseline capture │ │ - Before/after diffs │ │ +│ │ - Threshold gates │ │ - Flame charts │ │ +│ │ - PR comments │ │ - Device comparison │ │ +│ │ - Branch comparison │ │ - Exportable (JSON) │ │ +│ └──────────────────────┘ └──────────────────────┘ │ +└─────────────────────────────────────────────────────────────────────┘ +``` + +### Component 1: SDK Performance Module + +**Built into the HYTOPIA engine** as an opt-in module. Available to every game developer. + +**Server-side additions:** +- `PerfProfiler` class (replaces need for Sentry): Local span tracking with configurable output (console, JSON file, Chrome Trace Event format). Zero-overhead when disabled (same pattern as Telemetry). +- `TickBudgetTracker`: Tracks percentage of 16.67ms budget consumed. Emits warnings when avg exceeds configurable threshold (default 80%). Exposes to SDK event system. +- `EntityCostTracker`: Optional per-entity timing via `entity.tick()` wrapping. Activated per-world with `world.enableEntityProfiling()`. Groups by entity type. +- `NetworkMetrics`: Aggregates bandwidth per player, packet rate, compression ratio, queue depths. Exposed via SDK event and optional protocol packet. +- `PerfTelemetryPacket` (new protocol packet): Server sends tick time, entity count, physics step time, network sync time to client every N ticks (configurable, default 10 = every 333ms). + +**Client-side additions:** +- `FrameTimeBreakdown`: Splits frame time into render, JS, network deserialization, animation update, GC (via `PerformanceObserver` for longtask). Displayed in DebugPanel. +- `MemoryTrendTracker`: Rolling window of memory samples. Detects sustained growth (possible leak). Warns via console. +- `NetworkJitterTracker`: RTT variance calculation. Packet loss estimation (missed SyncResponses). Out-of-order detection via WorldTick sequence. +- `Stats classes upgrade`: Add rolling min/max/avg/p95 windows (last 60 seconds) to all Stats classes. + +### Component 2: Benchmark Runner + +**Standalone CLI tool** (`@hytopia.com/perf-bench`) that any game developer can install. + +**Features:** +- Loads YAML scenario files defining test conditions (entity count, player count, world size, duration, metric thresholds) +- Starts game server with `AUTO_START_WITH_BOTS=true` or custom game init +- Spawns headless browser clients via Puppeteer +- Collects metrics from both server events and client CDP +- Compares against baseline JSON +- Outputs JSON results + HTML report + +**Built-in scenarios (shipped with the tool):** +```yaml +# idle-server.yaml +name: Idle Server Baseline +duration: 60s +setup: + world_size: default + entities: 0 + players: 0 +metrics: + server_tick_avg: { max: 0.5ms } + server_memory_mb: { max: 200 } + +# entity-stress.yaml +name: Entity Stress Test +duration: 120s +setup: + entities: [100, 500, 1000, 5000] + ramp_interval: 30s +metrics: + server_tick_avg: { max: 8ms } + server_tick_p95: { max: 14ms } + +# player-stress.yaml +name: Player Stress Test +duration: 120s +setup: + headless_clients: [10, 25, 50, 100] + ramp_interval: 30s +metrics: + server_tick_avg: { max: 10ms } + client_fps_avg: { min: 30 } + network_rtt_p95: { max: 100ms } +``` + +### Component 3: Device Testing Pipeline + +**Puppeteer/Playwright-based** headless game client automation. + +**Capabilities:** +- Connect headless browser to game server (handling hytopia.com/play connection flow) +- Extract `renderer.info` stats via CDP +- Extract `PerformanceMetricsManager` data (FPS, memory) +- Capture Chrome DevTools traces programmatically +- Apply network throttling (3G, 4G, WiFi presets) +- Apply CPU throttling (2x, 4x, 6x) +- Apply device emulation (mobile screen sizes, touch, device scale factor) +- Multi-client spawning for stress tests +- Screenshot capture at configurable intervals + +**Adapted from:** HyFire2 `test/headless-browser-automation` branch scripts, with WSL2 WebGL workarounds. + +### Component 4: Trace Analyzer + +**Python/Node scripts** for offline analysis of captured traces and profiles. + +**Chrome DevTools Traces:** +- Long task detection (>50ms) +- Frame budget violation analysis (60fps and 30fps targets) +- Recurring blocker detection (3+ occurrences, impact scoring) +- Rendering breakdown (Layout, Paint, Composite) +- Game loop analysis (FunctionCall, EvaluateScript) + +**V8 CPU Profiles:** +- Call tree construction with self/total time +- Hot function identification (top N by self time) +- Game vs SDK vs system categorization +- WASM function mapping (6,684 Rapier physics operations) +- Spike cascade analysis +- "Death by 1000 cuts" analysis (frequent low-cost functions) + +**Output formats:** Markdown reports, interactive HTML flame charts, JSON data, CSV for spreadsheet analysis. + +### Component 5: Regression Detector + +**CI/CD integration** via GitHub Actions. + +```yaml +# .github/workflows/perf-gate.yml +name: Performance Gate +on: + pull_request: + branches: [master] + +jobs: + perf-test: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + with: + ref: master + - name: Capture baseline + run: hytopia-perf-bench run scenarios/baseline.yaml --output baseline.json + + - uses: actions/checkout@v4 + - name: Capture PR metrics + run: hytopia-perf-bench run scenarios/baseline.yaml --output pr.json + + - name: Compare + run: hytopia-perf-bench compare baseline.json pr.json --threshold 10 --fail-on-regression + + - name: Comment PR + if: always() + run: hytopia-perf-bench report baseline.json pr.json --format github-comment | gh pr comment $PR_NUMBER --body-file - +``` + +### Component 6: Dashboard/Reporter + +**Static HTML reports** generated from benchmark JSON results. + +**Features:** +- Historical trend charts (tick time, FPS, memory over runs) +- Before/after comparison tables with color-coded deltas +- Interactive flame charts (from Chrome Trace Event data) +- Per-device comparison matrix +- Exportable raw JSON for custom analysis +- GitHub PR comment summary format + +### Benchmark Scenarios + +| Category | Scenario | Parameters | Key Metrics | +|----------|----------|-----------|-------------| +| Baseline | Idle server | 0 entities, 0 players | tick time, memory, event loop lag | +| Entity stress | Progressive entity load | 100, 500, 1000, 5000 entities | tick time, memory, GC frequency | +| Player stress | Progressive player load | 10, 25, 50, 100 headless clients | tick time, network sync time, bandwidth, RTT | +| Physics stress | Many dynamic bodies | 100, 500, 1000 physics bodies in motion | physics step time, simulation step ms | +| Network stress | High packet rate | 50 players, all moving, 30Hz updates | serialize time, send time, bandwidth per player | +| Chunk loading | Large world | 750x750 block area, player teleporting | chunk build time (worker), main thread stall | +| Particle stress | Many emitters | All effects simultaneously (smoke, HE, blood, etc.) | client FPS, draw calls, GPU time | +| Combined | Real-game simulation | 10v10 with bots, combat, grenades, bomb plant/defuse | all metrics simultaneously | +| Startup | Cold start to gameplay | Connect, load, render first frame | time-to-connected, time-to-first-packet, time-to-first-chunk, time-to-game-ready | +| Mobile | Device emulation | CPU throttle 4x, mobile viewport, touch input | client FPS, frame budget violations, quality auto-adjust behavior | + +### Metrics to Capture + +#### Server Metrics + +| Metric | Source | Unit | Collection Rate | +|--------|--------|------|----------------| +| Tick time | WorldLoop TICK_END event | ms | Every tick (60Hz) | +| Physics step time | Simulation STEP_END event | ms | Every tick | +| Entity update time | New: EntityCostTracker | ms | Every tick (opt-in) | +| Network sync time | New: PerfProfiler span | ms | Every 2nd tick (30Hz) | +| Serialize time | New: PerfProfiler span | ms | Every sync | +| Send time per player | New: PerfProfiler span | ms | Every sync | +| Tick budget % | New: TickBudgetTracker | % | Every tick | +| Memory (heap) | process.memoryUsage() | MB | Every 1s | +| Memory (RSS) | process.memoryUsage() | MB | Every 1s | +| Entity count | EntityManager | count | Every 1s | +| Player count | PlayerManager | count | Every 1s | +| GC pauses | PerformanceObserver (if available) | ms | On GC event | +| Event loop lag | Interval jitter measurement | ms | Every 100ms | +| Bandwidth per player | New: NetworkMetrics | KB/s | Every 1s | +| Packet rate | New: NetworkMetrics | packets/s | Every 1s | +| Compression ratio | New: NetworkMetrics | ratio | Every sync | + +#### Client Metrics + +| Metric | Source | Unit | Collection Rate | +|--------|--------|------|----------------| +| FPS | PerformanceMetricsManager | fps | Every 1s | +| Frame time | PerformanceMetricsManager | ms | Every frame | +| Frame time breakdown | New: FrameTimeBreakdown | ms per component | Every frame | +| Draw calls | renderer.info.render.calls | count | Every frame | +| Triangles | renderer.info.render.triangles | count | Every frame | +| Geometries | renderer.info.memory.geometries | count | Every frame | +| Textures | renderer.info.memory.textures | count | Every frame | +| Shader programs | renderer.info.programs.length | count | Every frame | +| JS heap memory | performance.memory (Chrome) | MB | Every 1s | +| Entity count | EntityStats.count | count | Every frame | +| Visible entities | EntityStats.inViewDistanceCount | count | Every frame | +| Frustum-culled entities | EntityStats.frustumCulledCount | count | Every frame | +| Visible chunks | ChunkStats.visibleCount | count | Every frame | +| SceneUI count | SceneUIStats.count | count | Every frame | +| RTT | NetworkManager SyncResponse | ms | Every 2s | +| Jitter | New: NetworkJitterTracker | ms | Every 2s | +| GPU time | New: EXT_disjoint_timer_query | ms | Every frame (if available) | +| Quality preset | SettingsManager | enum | On change | + +#### Network Metrics + +| Metric | Source | Unit | Collection Rate | +|--------|--------|------|----------------| +| RTT | SyncRequest/SyncResponse | ms | Every 2s | +| RTT jitter | New: variance of RTT | ms | Every 2s | +| Packet rate (outbound) | New: NetworkMetrics | packets/s | Every 1s | +| Bandwidth (outbound) | New: NetworkMetrics | KB/s | Every 1s | +| Compression ratio | New: NetworkMetrics | ratio | Per compressed packet | +| Transport type | NetworkManager | ws/wt | On connect | +| Reliable vs unreliable split | New: NetworkMetrics | % | Every 1s | +| Missed SyncResponses | New: NetworkJitterTracker | count | Rolling window | + +### Repeatability Requirements + +1. **Deterministic bot scenarios:** Use seeded random for bot decisions. Record and replay action sequences. Fixed spawn positions. +2. **Bot-driven tests:** No human input required. Headless browser clients connect automatically, select team, and idle (or follow scripted actions). +3. **Scenario configuration via YAML/JSON:** All test parameters (entity count, duration, thresholds, bot behavior) defined in declarative files. No code changes needed per scenario. +4. **Baseline capture and comparison:** Every test run produces a JSON artifact. Compare any two runs with percentage-change calculations and configurable regression thresholds. +5. **Environment isolation:** Tests specify required server config (tick rate, physics params, network sync rate). Tests validate environment before running. +6. **Warmup period:** All scenarios include a configurable warmup period (default 10s) before metric collection begins, to exclude startup costs. + +--- + +## Priority Implementation Roadmap + +### Phase 1: Core Metrics (Weeks 1-3) + +**Goal:** Every HYTOPIA game developer can see performance data during local development without Sentry. + +**Tasks:** +1. **Add `PerfProfiler` to SDK server** -- Lightweight local span tracker. Same API as `Telemetry.startSpan()` but writes to console/file instead of Sentry. Enabled via `HYTOPIA_PERF=1` env var. +2. **Add `TickBudgetTracker` to SDK server** -- Wraps WorldLoop tick. Calculates budget percentage. Emits warning event when avg >80% over 5s window. Emits critical event when any tick >32ms (2x budget). +3. **Add `FrameTimeBreakdown` to SDK client** -- Uses `PerformanceObserver` for longtask, manual marks around render/network/animation phases. Adds 4 new Stats.js panels to DebugPanel. +4. **Add `PerfTelemetryPacket` to protocol** -- New outbound packet: `{ tickMs, entityCount, physicsMs, networkMs, memoryMb }`. Sent every 10 ticks. Client displays in DebugPanel. +5. **Upgrade Stats classes** -- Add rolling 60s windows with min/max/avg/p95 to all 6 Stats classes. Expose in DebugPanel. +6. **Extract HyFire2 tools** -- Pull `compare-baselines.ts`, `capture-baseline.sh`, `metrics-extractor.ts`, and `scenario-types.ts` from HyFire2 into a standalone `@hytopia.com/perf-tools` package. Make game-agnostic. + +### Phase 2: Automation (Weeks 4-6) + +**Goal:** Automated, repeatable performance tests that run without human interaction. + +**Tasks:** +1. **Build benchmark runner CLI** -- `hytopia-perf-bench` command. Loads YAML scenarios, starts server, runs test, collects metrics, outputs JSON. Adapts from HyFire2 `benchmark-game.ts`. +2. **Merge and adapt headless browser scripts** -- Clean up HyFire2's Puppeteer scripts into a reusable `HeadlessGameClient` class. Handle connection flow, team selection, idle state. +3. **Implement 4 core scenarios** -- Idle baseline, entity stress (100/500/1000), player stress (10/25/50 headless clients), startup timing. +4. **CI/CD GitHub Actions workflow** -- Capture baseline on master, compare against PR. Block merge on >10% regression. Post comparison table as PR comment. +5. **Adapt FlameChartRecorder** -- Pull from HyFire2 `feature/add-game-performance-monitoring` branch. Make SDK-native (opt-in). Output Chrome Trace Event JSON. + +### Phase 3: Cross-Device Testing (Weeks 7-9) + +**Goal:** Automated performance testing across different device profiles. + +**Tasks:** +1. **Device profile presets** -- YAML-defined profiles: desktop-high, desktop-low, mobile-flagship, mobile-midrange, tablet. Each specifies CPU throttle, viewport, network conditions. +2. **CDP metric collection** -- Automated extraction of `renderer.info`, `PerformanceMetricsManager` data, `performance.memory` from headless clients. Time-series collection over test duration. +3. **Chrome trace capture automation** -- Programmatic trace capture via CDP `Tracing` domain. Auto-analyze with Python scripts. +4. **Network condition simulation** -- Integrate Puppeteer CDP `Network.emulateNetworkConditions` with benchmark scenarios. Presets: perfect, broadband, 4G, 3G, lossy. +5. **HTML report generator** -- Comparative HTML report showing performance across device profiles. Trend charts, comparison matrix. + +### Phase 4: Advanced (Weeks 10-12+) + +**Goal:** Deep profiling capabilities for performance engineers. + +**Tasks:** +1. **GPU timing** -- Implement `EXT_disjoint_timer_query_webgl2` in SDK client for actual GPU millisecond measurement. Add to FrameTimeBreakdown. +2. **Per-entity cost attribution** -- Optional wrapping of `entity.tick()` with per-entity-type aggregation. Exposed via PerfProfiler. +3. **Network bandwidth dashboard** -- Per-player bandwidth tracking, packet-rate monitoring, reliable/unreliable split visualization. +4. **Memory leak detection** -- Automated heap growth detection in client. Alert when JS heap grows >X MB/minute sustained over 5 minutes. +5. **Deterministic replay system** -- Record entity state + player inputs. Replay for exact A/B comparison. Seeded random for bot AI. +6. **WASM function mapping** -- Adapt HyFire2's `wasm-mappings-report.json` and `update-wasm-mappings.cjs` for SDK-level Rapier physics profiling. Auto-discover WASM functions from CPU profiles. +7. **Speedscope/Chrome Trace export from SDK** -- Native export from PerfProfiler to industry-standard formats. Research complete (HyFire2 `docs/performance-monitoring-ultrathink-analysis`), implementation estimated at 2-4 hours for Speedscope, 6-10 hours for Chrome Trace. + +--- + +## Appendix: Branch Reference + +### HyFire2 Performance Branches (Complete Inventory) + +#### Analysis/Documentation Branches (11 branches) + +| Branch | Status | Key Content | Research Doc | +|--------|--------|-------------|-------------| +| `docs-performance` | Unmerged | PERFORMANCE_GUIDE.md, benchmark-game.ts, profile-server-auto.ts, generate-flamegraph.ts | Doc 1 | +| `analysis/performance-monitoring-strategy` | Unmerged | 4-phase monitoring strategy, PerformanceLagDetector, Sentry dual-SDK, bottleneck analysis scripts | Doc 1 | +| `analysis/code-hotspots-metrics` | Unmerged | PERFORMANCE_FIX_ANALYSIS.md (5 hotspots with before/after code), bug pattern analysis | Doc 1 | +| `docs/performance-analysis-oct-5` | Unmerged | handleDeath 49.2% improvement analysis, grenade-death.yaml scenario | Doc 1 | +| `docs/performance-analysis-outputs` | Unmerged | CPU profile correlation (42,725 functions, 7.5M samples), dependency graph (219 records), baseline capture/compare scripts | Doc 1 | +| `docs/performance-automation-playbook` | Unmerged | Profiling-to-fix workflow docs, AI memory files for perf fixes | Doc 1 | +| `docs/performance-monitoring-ultrathink-analysis` | Unmerged | 93KB deep-dive: spike aggregation, tree filtering, Speedscope/Chrome Trace export research, monitoring overhead analysis (15.4%) | Doc 1 | +| `docs/performance-testing-infrastructure` | Unmerged | 1,244-line CI/CD roadmap (5 phases), GitHub Actions template | Doc 1, 6 | +| `docs/perf-hotspots-20251004` | Unmerged | Top 10 hotspot baseline (10-min profile), monitoring overhead quantified | Doc 1 | +| `docs/top-10-performance-analysis` | Unmerged | Real player session analysis (6,900 events), 9 PRs merged Oct 5 | Doc 1 | +| `analysis/performance-work-3mo` | Unmerged | 3-month retrospective, 63 curated PRs, 26 unmerged PR analysis | Doc 1 | + +#### Feature/Monitoring Branches (18 branches) + +| Branch | Status | Commits Ahead | Key Content | Research Doc | +|--------|--------|--------------|-------------|-------------| +| `feature/performance-monitoring` | **Merged** | 0 | PerformanceProfiler, profile-server-auto.ts | Doc 3 | +| `feature/performance-monitoring-system` | **Merged** | 0 | Early monitoring attempt | Doc 3 | +| `feature/performance-monitoring-ui` | Unmerged | 12 | PerformanceMetricsService, FunctionProfiler, SessionSpikeTracker, SystemProfiler, F9 client overlay | Doc 3 | +| `feature/performance-monitoring-improvements` | Unmerged | 29 | Enhanced FrameBudgetMonitor (hierarchy, self-time), flamechart export, performance context | Doc 3 | +| `feature/performance-monitoring-hybrid` | Unmerged | 2 | PerformanceLagDetector (CPU polling), PerformanceMonitoringConfig | Doc 3 | +| `feature/performance-monitoring-ui-merge-master` | Unmerged | 19 | Rebased monitoring UI | Doc 3 | +| `feature/add-game-performance-monitoring` | Unmerged | 44 | FlameChartRecorder, SpikeDetector v2, D3.js viewer, 12 scripts | Doc 3 | +| `feature/perf-monitoring-terrorist-approaches` | **Merged** | 0 | Deferred evaluation pattern (150-700x speedup) | Doc 3 | +| `feature/performance-analysis-tools` | Unmerged | 4 | Python CSV-to-Excel pipeline | Doc 3 | +| `feature/performance-analysis-combined` | Unmerged | 216 | 200+ function analyses, instrumentation guide, code fixes, validation | Doc 3 | +| `feature/performance-analysis-reports` | Unmerged | 187 | Per-function analysis reports (subset of combined) | Doc 3 | +| `feature/performance-optimizations` | **Merged** | 0 | Early optimization pass | Doc 3 | +| `feature/baseline-lag-optimization` | Unmerged | 4 | Mobile frame skipping, viewmodel bob disable | Doc 3 | +| `feature/comprehensive-mobile-performance` | **Merged** | 0 | Blood particles, A14 analysis, periodic ops audit | Doc 3 | +| `feature/mobile-performance-analysis` | Unmerged | 4 | 3 Python trace analyzers | Doc 3 | +| `feature/investigate-mobile-viewmodel-performance` | **Merged** | 0 | Ambient-only lighting on mobile | Doc 3 | +| `feature/particle-stress-tester` | Unmerged | 16 | ParticleStressTester (8 scenarios), F2 menu | Doc 3 | +| `feature/bot-cover-micro-profiler` | Unmerged | 5 | Prototype patching profiler, Symbol guard, env-var gating | Doc 3 | + +#### perf/* Branches (13 merged + 4 open) + +| Branch | Status | PR # | Key Optimization | Impact | Research Doc | +|--------|--------|------|-----------------|--------|-------------| +| `perf/cache-sceneui-takedamage` | **Merged** | #1446 | Cache SceneUI array per player | Death: 50% faster | Doc 4 | +| `perf/stopping-power-optimization` | **Merged** | #1451 | Cache require(), early exit on empty | 93% faster | Doc 4 | +| `perf/reduce-weapon-fire-spike` | **Merged** | #1457 | setTimeout projectile creation, throttle recoil UI | 35% faster | Doc 4 | +| `perf/reduce-bot-combat-spike` | **Merged** | #1458 | RaycastCacheService (bidirectional) | 39% raycast reduction | Doc 4 | +| `perf/fix-damage-ui-spikes` | **Merged** | #1462 | Defer audio/blood/damage-direction UI | Spike elimination | Doc 4 | +| `perf/optimize-death-visibility-check` | **Merged** | #1463 | Defer physics updates on death | 99.6% faster | Doc 4 | +| `perf/investigate-weapon-drop` | **Merged** | #1465 | Sequential-deferred item drops | 42.8% faster | Doc 4 | +| `perf/optimize-mvp-tracking` | **Merged** | #1469 | Defer MVP tracking, string prefix bot check | 93% faster | Doc 4 | +| `perf/remove-damage-debug-logging` | **Merged** | #1470 | Remove debug logging from damage path | 90% overhead eliminated | Doc 4 | +| `perf/rate-limit-bot-navigator-warnings` | **Merged** | #1471 | 5s rate limit on per-tick warnings | Log spam eliminated | Doc 4 | +| `perf/remove-grenade-logging-overhead` | **Merged** | #1515 | Remove verbose grenade attack logging | 44 lines removed | Doc 4 | +| `perf/optimize-recoil-offset-calls` | **Merged** | #1255 | Frame-duration recoil cache | Multi-call -> once | Doc 4 | +| `perf/web-audio-kill-sounds` | **Merged** | #1678 | Web Audio API replaces HTML5 Audio | 5-20ms vs 100-200ms latency | Doc 4 | +| `perf/add-bot-combat-instrumentation` | Open | - | Instrumentation only (no optimization) | N/A | Doc 4 | +| `perf/bomb-retrieval-optimization` | Open | - | Fire-and-forget logging, squared distance | Unquantified | Doc 4 | +| `perf/optimize-bot-updates` | Open | - | Set-based lookups, extended caches | O(n^2) -> O(1) | Doc 4 | +| `perf/optimize-logging-overhead` | Open | - | Env-gated logging, EventLogger early exit | Unquantified | Doc 4 | + +#### fix/* Performance Branches (3 open) + +| Branch | Status | Key Content | Research Doc | +|--------|--------|-------------|-------------| +| `fix/10v10-performance-analysis` | Open | DistanceCullingService, OptimizedBroadcastService, tiered update rates | Doc 4 | +| `fix/teammate-ui-performance-lag` | Open | Screen-space UI replacing n^2 SceneUI nametags | Doc 4 | +| `fix/memory-optimizations` | Open | PathfindingCache pool, PlayerCache singleton, readonly array returns | Doc 4 | + +#### Testing/Infrastructure Branches + +| Branch | Status | Key Content | Research Doc | +|--------|--------|-------------|-------------| +| `test/headless-browser-automation` | Unmerged | 6 Puppeteer scripts for WSL2 | Doc 6 | +| `test/arm64-simulation` | Unmerged | Docker ARM64 emulation | Doc 6 | +| `sentry-testing` | Unmerged | SentryTelemetryService (1,593 lines) | Doc 6 | +| `investigation/perf-monitoring-analysis` | Unmerged | CPU profile analysis (6 scripts, WASM mapping) | Doc 6 | +| `feature/mobile-debug-ui` | Unmerged | Mobile controls debug (F8 overlay) | Doc 6 | +| `feature/sentry-telemetry` | Unmerged | Earlier Sentry attempt | Doc 6 | +| `feature/sentry-review` | Unmerged | Sentry usage guide | Doc 6 | + +### Summary Statistics + +- **Total performance branches analyzed:** 58+ +- **Total performance PRs (curated):** 63 +- **Merged to master:** 17 branches (13 perf/* + 4 feature/*) +- **Unmerged (valuable):** 26+ branches +- **Estimated total development time:** 300+ hours +- **Overall improvement:** Average game tick from 10ms+ to 1.11ms (89% reduction) +- **Frame budget utilization:** ~6.7% of 16.67ms budget (down from 60%+) +- **Unique instrumentation points:** 82 frameBudgetMonitor.measure() calls +- **Peak sprint:** 9 PRs merged on October 5, 2025 diff --git a/ai-memory/docs/perf-amateur-notes-2026-03-05/headless-automation-research.md b/ai-memory/docs/perf-amateur-notes-2026-03-05/headless-automation-research.md new file mode 100644 index 00000000..18b3bc8d --- /dev/null +++ b/ai-memory/docs/perf-amateur-notes-2026-03-05/headless-automation-research.md @@ -0,0 +1,687 @@ +# Headless Testing, Browser Automation & Performance Infrastructure Research + +**Date:** 2026-03-05 +**Scope:** HyFire2 (all branches + worktrees) and HYTOPIA SDK engine repo +**Researcher:** AI agent reviewing all branches and codebases + +--- + +## Table of Contents + +1. [Executive Summary](#executive-summary) +2. [HyFire2 Branch Inventory](#hyfire2-branch-inventory) +3. [Headless Browser Automation (Puppeteer)](#headless-browser-automation-puppeteer) +4. [Chrome DevTools Trace Analysis](#chrome-devtools-trace-analysis) +5. [CPU Profile Analysis Scripts](#cpu-profile-analysis-scripts) +6. [Sentry Performance Monitoring](#sentry-performance-monitoring) +7. [Server-Side Performance Monitoring](#server-side-performance-monitoring) +8. [Mobile Device Testing](#mobile-device-testing) +9. [ARM64 Production Simulation](#arm64-production-simulation) +10. [HYTOPIA SDK Engine Performance Code](#hytopia-sdk-engine-performance-code) +11. [CI/CD Performance Regression Plans](#cicd-performance-regression-plans) +12. [General Techniques Reference](#general-techniques-reference) +13. [Gaps and Recommendations](#gaps-and-recommendations) + +--- + +## Executive Summary + +HyFire2 has an extensive but fragmented performance testing ecosystem spread across 15+ branches. The work includes: + +- **Puppeteer headless browser scripts** (6 scripts, `test/headless-browser-automation` branch) for automating game client connections through hytopia.com/play +- **Chrome DevTools trace analysis** (3 Python scripts, `feature/mobile-performance-analysis` branch) for parsing Performance tab JSON exports from mobile Chrome +- **CPU profile analysis** (6+ Node.js scripts, `investigation/perf-monitoring-analysis` branch) for parsing `--cpu-prof` V8 profiles with WASM function mapping +- **Sentry telemetry** (1593-line service, `sentry-testing` branch) with dual Hytopia SDK + direct Sentry integration for production error/performance monitoring +- **Server-side profiling** (`PerformanceMonitor.ts`, `PerformanceProfiler.ts`, `PerformanceManager.ts`) for real-time metrics, flame graphs, and spike detection +- **Mobile debug UI** (`feature/mobile-debug-ui` branch) with drag-to-reposition mobile controls tester +- **ARM64 Docker simulation** (`test/arm64-simulation` branch) for testing on AWS Graviton3-equivalent environment +- **Performance testing infrastructure doc** (1244-line planning document, `docs/performance-testing-infrastructure` branch) with full roadmap + +**HYTOPIA SDK** has built-in `performance.mark`/`performance.measure` calls in the client (NetworkManager, ChunkManager), a `PerformanceMetricsManager` for FPS/memory tracking, a server-side `Telemetry` class wrapping Sentry spans, and a `DebugPanel` exposing WebGL draw calls, entity counts, chunk stats, and GLTF stats. It has NO headless browser tests, NO Puppeteer/Playwright, and NO GitHub Actions for performance testing. + +**Critical gap:** None of the headless browser work has been merged to master. The scripts exist only on feature branches. There is no CI/CD integration for automated performance regression detection. + +--- + +## HyFire2 Branch Inventory + +### Branches with performance/testing code (vs master) + +| Branch | Key Files | Status | +|--------|-----------|--------| +| `test/headless-browser-automation` | 6 Puppeteer scripts + server log | +951 lines, unmerged | +| `feature/mobile-performance-analysis` | 3 Python trace analyzers, analysis docs | +66,578 lines, unmerged | +| `feature/comprehensive-mobile-performance` | Per-frame budget analysis docs | Already merged to master | +| `feature/mobile-debug-ui` | Mobile controls debug JS/CSS/HTML tester | +1,322 lines, unmerged | +| `test/arm64-simulation` | ARM64 Docker runner + docs | +3,228 lines, unmerged | +| `sentry-testing` | SentryTelemetryService rewrite + analysis | +941 lines, unmerged | +| `investigation/perf-monitoring-analysis` | CPU profile scripts, WASM mappings, guides | +8,701 lines, unmerged | +| `docs/performance-testing-infrastructure` | 1244-line infrastructure planning doc | +1,244 lines, unmerged | +| `feature/sentry-telemetry` | Earlier Sentry integration attempt | Unmerged | +| `feature/sentry-review` | Sentry usage guide + config fixes | +130 lines, unmerged | +| `feature/player-stats-sentry-logging` | Player stats backup via Sentry | +64 lines, unmerged | +| `fix/device-info-from-ui-load` | Device info handshake for mobile detection | Already merged to master | + +### Branches that were merged/identical to master +- `test/performance-testing` (merged) +- `feat/performance-testing-infrastructure` (merged) +- `feature/comprehensive-mobile-performance` (merged) +- `fix/device-info-from-ui-load` (merged) +- `merge/performance-testing-with-master` (merged) + +### Worktrees (all on unrelated feature branches) +- `work1`: `test/sdk015-mapcomp` +- `work2`: `feature/gun-game-mode` +- `work3`: `feature/multi-world-investigation` +- `work4`: `feature/arena-queue-mode` +- `work5`: `feature/update-hytopia` +- `work6`: `fix/practice-arena-popup-investigation` +- `work7`: `fix/investigate-sensitivity-override` +- `work8`: `feature/gungame-deathmatch-20250905` + +None of the worktrees contain performance testing code. + +--- + +## Headless Browser Automation (Puppeteer) + +### Branch: `test/headless-browser-automation` + +Six TypeScript scripts using Puppeteer to automate connecting a browser client to HyFire2 through hytopia.com/play. + +#### Scripts + +**`scripts/working-headless-test.ts`** (245 lines) -- The most complete script. +- Launches Puppeteer with WebGL flags for WSL2 +- Navigates to `https://hytopia.com/play?localhost:8081` +- Handles connection dialogs (clicks OK buttons, types server address) +- Waits for game to load (checks `window.localPlayer`, `window.world`) +- Takes screenshots at each step +- 30-second observation window + +Key Puppeteer launch args for WebGL in WSL2: +``` +--use-gl=egl +--use-angle=swiftshader-webgl +--override-use-software-gl-for-headless +--enable-unsafe-swiftshader +--enable-webgl +--enable-webgl2 +``` + +Important: Uses `headless: false` (visible mode), not true headless. True headless Chrome has WebGL issues in WSL2. + +**`scripts/diagnose-browser.ts`** (148 lines) -- Diagnostic tool. +- Captures ALL console messages, network requests, page errors +- Saves diagnostics to `/tmp/browser-diagnostics.json` +- Reports element counts (buttons, inputs, canvases, divs) +- Useful for debugging why game client fails to load + +**`scripts/interactive-test.ts`** (165 lines) -- Button interaction test. +- Searches for buttons by text content (Play, Connect, OK, Continue, Join, Start) +- Searches for input fields and types server address +- Takes screenshots after each interaction step +- Progressive screenshot capture every 5 seconds + +**`scripts/working-automated-test.ts`** (108 lines) -- Keyboard-driven automation. +- Uses `page.keyboard.press('Enter')` instead of DOM clicks +- Handles first OK dialog, server input dialog, skip intro, team selection +- Simpler approach that works when button selectors are unreliable + +**`scripts/simple-headless-test.ts`** (79 lines) -- Minimal test. +- True `headless: true` mode (no WebGL flags) +- Navigates, waits 10 seconds, takes screenshot +- Checks `window.localPlayer`, `window.world`, `[data-team]`, `.buy-menu` +- Good for testing if basic connection works + +**`scripts/simple-wait-and-screenshot.ts`** (72 lines) -- Screenshot-only test. +- No page evaluation, no clicking +- Takes screenshots at 5, 10, 15, 20, 30, 40, 50, 60, 70, 80, 90 second intervals +- Useful for visual debugging of loading progress + +#### Server Test Log +`test-logs/server-2025-10-05T22-22-25-688Z.log` confirms the server successfully started during a headless test session, loaded 182 models, initialized WebRTC. + +#### Limitations Found +1. WSL2 requires `headless: false` with SwiftShader for WebGL +2. hytopia.com/play has connection dialogs that need automated interaction +3. Certificate issues with localhost:8081 (HTTPS self-signed) +4. No performance metric extraction yet -- scripts only test connectivity +5. No CDP protocol usage beyond Puppeteer's high-level API + +--- + +## Chrome DevTools Trace Analysis + +### Branch: `feature/mobile-performance-analysis` + +Three Python scripts for analyzing Chrome DevTools Performance tab trace JSON exports. + +#### `analyze-trace.py` (429 lines) -- `TraceAnalyzer` class +Parses Chrome trace JSON (`traceEvents` array) and analyzes: +- **Long tasks** (>50ms) that block the main thread +- **JavaScript execution** by category (EvaluateScript, v8.compile, v8.run, FunctionCall) +- **Rendering performance** (Layout, UpdateLayoutTree, Paint, CompositeLayers) +- **Frame times and jank detection** + +Key technique: Chrome trace events use `ph: 'X'` (complete events) with `dur` in microseconds. The script groups by `name` and `cat` fields. + +#### `analyze-frame-budget.py` (386 lines) -- `FrameBudgetAnalyzer` class +Per-frame analysis focused on individual calls that exceed the 16ms budget: +- Groups expensive calls (>16ms) by function name: count, min, max, avg +- Finds DrawFrame/Frame/BeginMainThreadFrame events for actual frame timing +- Compares against 60fps (16.67ms) and 30fps (33.33ms) targets +- Identifies which operations are present in slow frames + +#### `analyze-recurring-blockers.py` (372 lines) -- `RecurringBlockerAnalyzer` class +Focused on RECURRING issues (not one-offs): +- Skips first 5 seconds (startup/profiler initialization) +- Filters to operations >5ms that happen 3+ times during gameplay +- Calculates impact score: `count * avg_duration` +- Identifies periodic patterns (e.g., GC every N seconds) + +#### Supporting Data +- `mobile-a14-trace.json` -- Actual Chrome trace from Apple A14 device +- `recurring_blockers_raw_data.json` (61,007 lines) -- Raw extracted data from trace +- Several analysis markdown docs (MOBILE_PERFORMANCE_ANALYSIS.md, ACTUAL_CODE_ANALYSIS.md, etc.) + +#### Key Findings from Analysis +- 418 long tasks blocking main thread (>50ms each) +- Weapon viewmodel rendering: 17.7s total, 32.8ms average (2x frame budget) +- Blood effects NOT disabled on mobile (50-300 particles per hit) +- GPU tasks taking 30-73ms in worst frames +- Major GC pauses up to 528ms during gameplay + +--- + +## CPU Profile Analysis Scripts + +### Branch: `investigation/perf-monitoring-analysis` + +Node.js scripts for analyzing V8 `--cpu-prof` output (`.cpuprofile` JSON files) from the game server. + +#### `scripts/master-performance-analysis.cjs` (768 lines) -- Primary tool +Six analysis categories: +1. **Single Worst Spikes** -- Absolute worst individual function calls +2. **Spike Cascade Analysis** -- Full call stack breakdown when a function spikes +3. **Frequent Medium Spikes** -- Regular 0.2-3ms offenders (impact = avg * count) +4. **Death by 1000 Cuts** -- Functions called >5% of samples with <0.5ms individual cost +5. **Correlated Tick Overruns** -- Ticks exceeding 16ms budget with contributor breakdown +6. **Code Classification** -- Categorizes into game-hyfire, hytopia-sdk, physics-wasm, node, gc, idle + +Loads `CODEBASE_REF.md` for function-to-class mapping. Loads `wasm-mappings-report.json` for Rapier physics WASM function names. + +#### `scripts/final-complete-analysis.cjs` (3,374 lines) -- CSV-oriented analysis +Complete analysis with built-in WASM mapping of 6,684 Rapier physics operations. Outputs CSV file for external analysis. Advanced categorization with parent context for anonymous functions. + +#### `scripts/update-wasm-mappings.cjs` (363 lines) +Auto-discovers and maps WASM functions from CPU profiles. Uses context patterns to identify physics operations (collision, broad-phase, narrow-phase, joint, body, shape, solver, etc.). Updates mapping JSON. + +#### `scripts/export-spikes-csv.cjs` (90 lines) +Simple CSV export of all CPU spikes with tick number, duration, category, function name. + +#### `scripts/profile-full-report.cjs` (303 lines) +Generates markdown report from CPU profile. Includes tick window analysis (busy time per tick, spike count, largest spike). + +#### `wasm-mappings-report.json` (2,977 lines) +Pre-computed mapping of WASM function IDs to human-readable Rapier physics operation names. + +#### Usage Pattern +```bash +# Generate CPU profile +NODE_OPTIONS="--cpu-prof --cpu-prof-interval=100" hytopia start +# Let run 3-5 minutes with activity, then Ctrl+C + +# Analyze +node scripts/master-performance-analysis.cjs CPU.*.cpuprofile 16 +``` + +--- + +## Sentry Performance Monitoring + +### Branch: `sentry-testing` (primary), also `feature/sentry-telemetry`, `feature/sentry-review` + +#### `src/services/SentryTelemetryService.ts` (1,593 lines) + +Dual integration approach: +1. **Hytopia's Telemetry class** -- Auto tick monitoring, slow-tick filtering (>17-50ms threshold) +2. **Direct Sentry SDK v10.10.0** -- Custom transactions, enriched context, manual spans + +Key capabilities: +- `measurePerformance(name, callback)` -- Wraps functions in Sentry spans +- `trackGameOperation(op, callback, options)` -- Auto-warns when exceeding expected duration +- `startProfiling(name)` / `stopProfiling(name)` -- Manual span control with memory delta tracking +- `backupPlayerDataIfNeeded()` -- Sends player stats to Sentry as backup +- `backupGlobalLeaderboardIfNeeded()` -- Raw data dump of leaderboard state +- Periodic metrics reporting (every 60s) +- Memory tracking (every 30s) with heap baseline comparison + +Game-specific span operations: +``` +GAME_TICK, ROUND_PROCESS, BOT_TICK_ALL, BOT_BRAIN_THINK, +BOT_NAVIGATION, BOT_PATHFINDING, BOT_COMBAT_SYSTEM, +BOT_STRATEGY_SELECTION, PLAYER_DAMAGE_CALC, PLAYER_SPAWN, +PLAYER_DEATH, WEAPON_FIRE, ECONOMY_PURCHASE, UI_UPDATE, +BOMB_PLANT, BOMB_DEFUSE, BOMB_EXPLOSION, +ZONE_NAVIGATION_PATH, ZONE_PATHFIND_ALGORITHM, +AUDIO_PRIORITY_CALC, REPLAY_FRAME_CAPTURE, etc. +``` + +Configuration via `game-features.yaml` or environment variables: +- `SENTRY_DSN`, `SENTRY_ENABLED`, `FORCE_SENTRY_ENABLED` +- Sample rate, threshold, environment selection +- Toggle player action capture, bot decision capture, memory metrics + +#### SENTRY_USAGE.md (from `feature/sentry-review`) +- Sentry disabled by default in development +- Enable via `npm run start:sentry` or `FORCE_SENTRY_ENABLED=true` +- Production: always enabled with 1% transaction sampling + +#### SENTRY_INTEGRATION_ANALYSIS.md +- Documents the dual-init approach (Hytopia Telemetry + direct Sentry) +- Sentry queries: `transaction:"game.tick"`, `op:"metrics.report"`, `message:"Performance Metrics Report"` +- Files: `index.ts` (init), `SentryTelemetryService.ts` (implementation), `BotTickService.ts` (game tick wrapping) + +--- + +## Server-Side Performance Monitoring + +### On HyFire2 master (merged) + +#### `src/utils/PerformanceMonitor.ts` +- `process.hrtime.bigint()` high-precision timing +- Memory tracking (heap, RSS, external) +- Event loop lag detection with rolling averages +- Per-operation stats (p50, p95, p99) +- 1-second sampling interval, 10-minute history + +#### `src/utils/PerformanceProfiler.ts` +- Manual call stack tracking for flame graphs +- Function wrapping for automatic profiling +- 1ms sampling profiler +- Exports collapsed stack format for external tools (speedscope, flamegraph.pl) + +#### `src/profiling/PerformanceManager.ts` +- Spike threshold detection (default 50ms) +- Auto-triggers CPU profiling on spike +- Heap snapshots at 800MB threshold +- Signal handlers: SIGUSR1 (CPU profile), SIGUSR2 (perf report) + +#### `scripts/profile-server-auto.ts` +- Auto-saving performance monitor for WSL/non-interactive terminals +- Saves reports every 30 seconds to `performance-reports/` directory + +#### `scripts/benchmark-game.ts` +- Automated performance benchmarking using Bun-specific APIs +- Runs scenarios, collects metrics (avgTickTime, maxTickTime, memory, event loop lag) +- Outputs JSON results + +--- + +## Mobile Device Testing + +### Branch: `feature/mobile-debug-ui` + +#### `assets/ui/components/mobile-controls-debug.js` (537 lines) +In-game debug UI for mobile controls: +- Only active in Deathmatch FFA mode +- F8 key toggles debug mode +- Drag-to-reposition all mobile control elements +- Slider-based resizing of buttons/joystick +- Tracks all control elements: joystick, fire, jump, crouch, reload, drop, buy, bomb, scope, etc. +- Saves/restores custom positions + +#### `assets/ui/components/mobile-controls-debug.css` (376 lines) +CSS for the debug panel overlay. + +#### `mobile-controls-tester.html` (349 lines) +Standalone HTML page for testing mobile controls outside the game. Mock game background with all mobile control elements rendered. + +#### `serve-mobile-tester.sh` (26 lines) +Simple HTTP server to serve the mobile tester HTML locally. + +### Branch: `feature/mobile-performance-analysis` +The mobile performance analysis (Chrome traces from A14 device) is covered in the trace analysis section above. + +### Branch: `fix/device-info-from-ui-load` (merged to master) +Device detection handshake: +- Loads `device-detector.js` and `team-config.js` from CDN +- Client sends `device_detector_ready`, responds to `request-device-info` +- Server starts 5s timeout on ready, sends single request +- Anchored to UI LOAD event (no postMessage/fallbacks) + +--- + +## ARM64 Production Simulation + +### Branch: `test/arm64-simulation` + +#### `run-arm64-server.sh` (87 lines) +Docker-based ARM64 emulation matching AWS m7g.large: +- `--platform linux/arm64` with QEMU emulation +- `--cpus="2.0" --memory="8g"` resource limits +- Base image: `arm64v8/node:20` +- Installs Bun with 3-attempt retry logic +- Caches Bun in Docker volume +- Maps port 8080 + +#### `ARM64_PRODUCTION_TESTING.md` (139 lines) +Documentation covering: +- Expected 10-50x slower than native due to emulation overhead +- Good for compatibility testing, NOT for performance testing +- Quick start, monitoring commands, troubleshooting + +--- + +## HYTOPIA SDK Engine Performance Code + +### Client-Side (`/home/ab/GitHub/hytopia/work1/client/src/`) + +#### `core/PerformanceMetricsManager.ts` +- FPS measurement using Three.js Clock +- Refresh rate estimation (samples 30 frames, trims outliers, snaps to common rates) +- Memory tracking via `performance.memory` (Chrome only) +- Common refresh rates: 30, 60, 72, 90, 120, 144, 165, 240, 300, 360 + +#### `core/DebugPanel.ts` +Exposes via lil-gui: +- Player/camera position +- Server protocol info +- WebGL stats: drawCalls, geometries, programs, textures, triangles +- Entity stats: count, frustumCulled, animationPlay, lightLevelUpdate, etc. +- Chunk stats: visible, blockCount, opaque/transparent/liquid faces +- GLTF stats: fileCount, sourceMesh, clonedMesh, instancedMesh, drawCallsSaved +- SceneUI, Arrow, Audio stats + +#### `network/NetworkManager.ts` -- Performance marks +```typescript +performance.mark('NetworkManager:connecting'); +performance.mark('NetworkManager:connected'); +performance.measure('NetworkManager:connected-time', ...); +performance.mark('NetworkManager:world-packet-received'); +performance.measure('NetworkManager:connected-to-first-packet-time', ...); +performance.measure('NetworkManager:game-ready-time', ...); +``` + +#### `chunks/ChunkManager.ts` -- Performance marks +```typescript +performance.mark('ChunkManager:first-chunk-batch-built'); +performance.measure('ChunkManager:first-chunk-batch-built-time', 'NetworkManager:connected', ...); +``` + +### Server-Side (`/home/ab/GitHub/hytopia/work1/server/src/`) + +#### `metrics/Telemetry.ts` (252 lines) +- `TelemetrySpanOperation` enum: BUILD_PACKETS, ENTITIES_TICK, PHYSICS_STEP, NETWORK_SYNCHRONIZE, WORLD_TICK, etc. +- `Telemetry.initializeSentry(dsn, threshold)` -- Initializes Sentry with tick-time filtering +- `Telemetry.startSpan(options, callback)` -- Zero-overhead span wrapping (no-op without Sentry) +- `Telemetry.getProcessStats()` -- Heap, RSS, usage percentage +- `Telemetry.sentry()` -- Direct Sentry SDK access +- `beforeSendTransaction` filters to only send TICKER_TICK spans exceeding threshold + +### No Headless Testing +- `server/test/_setup.ts` contains only a placeholder comment +- No `client/test/` directory exists +- No Puppeteer/Playwright in any `package.json` +- No GitHub Actions workflows in the engine repo + +--- + +## CI/CD Performance Regression Plans + +### Branch: `docs/performance-testing-infrastructure` + +A 1,244-line planning document (`docs/PERFORMANCE_TESTING_INFRASTRUCTURE.md`) outlines a 5-phase roadmap: + +#### Phase 1: Foundation +- Install Puppeteer +- Create headless browser test scaffold +- Add test hooks to server (`ENABLE_TEST_HOOKS` env var) +- Baseline capture and comparison scripts + +#### Phase 2: Specific Fix Validation +- Test grenade death spike with automated scenario +- Before/after comparison with metrics proof + +#### Phase 3: Automated Testing Suite +- YAML scenario definitions (spawn bots, force loadout, kill player, measure) +- Scenario runner with action executors +- 5 core test scenarios planned + +#### Phase 4: CI/CD Integration +Proposed GitHub Actions workflow: +```yaml +# .github/workflows/performance-test.yml +on: + pull_request: + branches: [master] + +steps: + - Checkout master baseline + - Capture baseline metrics + - Checkout PR branch + - Capture PR metrics + - Compare (block merge if >10% regression) +``` + +#### Phase 5: Continuous Monitoring +- Production spike alerting +- Weekly performance reports +- Automatic profiling triggers + +**Current status:** Planning only. None of this CI/CD infrastructure has been built. + +--- + +## General Techniques Reference + +### Parsing Chrome DevTools Performance Traces + +Chrome Performance tab exports a JSON file with `traceEvents` array. Each event has: +- `name`: Operation name (FunctionCall, Paint, Layout, etc.) +- `cat`: Category (devtools.timeline, v8, blink, etc.) +- `ph`: Phase (`X` = complete, `B`/`E` = begin/end, `I` = instant) +- `ts`: Timestamp in microseconds +- `dur`: Duration in microseconds (for `ph: 'X'`) +- `args`: Event-specific data (URL, function name, etc.) +- `tid`: Thread ID +- `pid`: Process ID + +To find frame budget violations: filter for `ph === 'X'` events where `dur / 1000 > 16.67`. + +### Capturing Performance Metrics from Three.js with Puppeteer + +```javascript +const page = await browser.newPage(); +await page.goto(gameUrl); + +// Extract Three.js renderer stats via CDP +const stats = await page.evaluate(() => { + // Access Three.js renderer info + const renderer = /* get renderer reference */; + return { + drawCalls: renderer.info.render.calls, + triangles: renderer.info.render.triangles, + geometries: renderer.info.memory.geometries, + textures: renderer.info.memory.textures, + programs: renderer.info.programs?.length || 0, + fps: /* from PerformanceMetricsManager */, + memory: performance.memory ? { + usedHeap: performance.memory.usedJSHeapSize, + totalHeap: performance.memory.totalJSHeapSize, + limit: performance.memory.jsHeapSizeLimit + } : null + }; +}); +``` + +For continuous monitoring, use `setInterval` inside `page.evaluate` and collect data via `page.exposeFunction`. + +### Measuring WebTransport/WebSocket Latency + +Client-side approach using the existing heartbeat packet: +```typescript +// The HYTOPIA protocol already has bidirectional Heartbeat packets +// Client sends heartbeat, server echoes, measure round-trip + +const t0 = performance.now(); +sendHeartbeat(); +onHeartbeatResponse(() => { + const rtt = performance.now() - t0; + // rtt is the round-trip latency +}); +``` + +For automated testing, inject timing via Puppeteer: +```javascript +await page.evaluate(() => { + const originalSend = WebSocket.prototype.send; + WebSocket.prototype.send = function(data) { + performance.mark('ws-send-' + Date.now()); + return originalSend.call(this, data); + }; +}); +``` + +### Running Headless Game Clients for Stress Testing + +Pattern for multi-client stress testing: +```javascript +const browsers = await Promise.all( + Array(clientCount).fill(null).map(() => + puppeteer.launch({ + headless: 'new', // New headless mode + args: ['--no-sandbox', '--disable-gpu', '--use-gl=swiftshader'] + }) + ) +); + +// Each browser connects to the game server +for (const browser of browsers) { + const page = await browser.newPage(); + await page.goto(gameUrl); + // Automate connection flow... +} + +// Monitor server-side metrics while clients are connected +``` + +Note: In WSL2, SwiftShader is required for WebGL. Each headless Chrome uses 300-400MB RAM. For 10+ clients, consider running on a machine with ample memory. + +### Collecting GPU/Renderer Stats from Three.js + +Available via `renderer.info`: +```javascript +{ + render: { + calls: number, // Draw calls per frame + triangles: number, // Triangles rendered + points: number, + lines: number, + frame: number // Frame counter + }, + memory: { + geometries: number, // Active geometries + textures: number // Active textures + }, + programs: WebGLProgram[] // Active shader programs +} +``` + +Reset per frame with `renderer.info.reset()` to get per-frame stats. + +For GPU timing (Chrome-only, requires `EXT_disjoint_timer_query_webgl2`): +```javascript +const ext = gl.getExtension('EXT_disjoint_timer_query_webgl2'); +if (ext) { + const query = gl.createQuery(); + gl.beginQuery(ext.TIME_ELAPSED_EXT, query); + // render... + gl.endQuery(ext.TIME_ELAPSED_EXT); + // Read result next frame (async) + const elapsed = gl.getQueryParameter(query, gl.QUERY_RESULT); + const gpuTimeMs = elapsed / 1e6; +} +``` + +### Network Throttling with Puppeteer CDP + +```javascript +const client = await page.target().createCDPSession(); + +// Simulate 3G network +await client.send('Network.emulateNetworkConditions', { + offline: false, + downloadThroughput: 1.5 * 1024 * 1024 / 8, // 1.5 Mbps + uploadThroughput: 750 * 1024 / 8, // 750 Kbps + latency: 40 // 40ms RTT +}); + +// Device emulation +await client.send('Emulation.setDeviceMetricsOverride', { + width: 375, + height: 812, + deviceScaleFactor: 3, + mobile: true +}); + +// CPU throttling (4x slowdown) +await client.send('Emulation.setCPUThrottlingRate', { rate: 4 }); +``` + +### Lighthouse Integration + +```javascript +const lighthouse = require('lighthouse'); +const chromeLauncher = require('chrome-launcher'); + +const chrome = await chromeLauncher.launch({ chromeFlags: ['--headless'] }); +const result = await lighthouse(gameUrl, { + port: chrome.port, + onlyCategories: ['performance'], + throttling: { + rttMs: 40, + throughputKbps: 10240, + cpuSlowdownMultiplier: 4 + } +}); +// result.lhr.categories.performance.score +``` + +Note: Lighthouse is designed for page load, not persistent game sessions. Use for initial load metrics only. + +--- + +## Gaps and Recommendations + +### Critical Gaps + +1. **No merged headless testing** -- All 6 Puppeteer scripts are on unmerged branches. No automated way to test client behavior. + +2. **No CI/CD performance gates** -- The `docs/performance-testing-infrastructure` branch has a full plan but zero implementation. + +3. **No client-side automated testing** -- HYTOPIA SDK has `server/test/_setup.ts` (empty placeholder) and no client test directory at all. + +4. **No WebTransport/WebSocket latency monitoring** -- The protocol has heartbeat packets but no automated latency measurement. + +5. **No GPU profiling pipeline** -- The DebugPanel exposes WebGL stats but there's no automated way to collect them over time. + +6. **Sentry not merged** -- The comprehensive SentryTelemetryService (1,593 lines) is still on `sentry-testing` branch. + +### What Exists and Works + +1. **Server CPU profiling** -- Mature toolchain with WASM mapping (6,684 Rapier functions), 6 analysis categories +2. **Server real-time monitoring** -- PerformanceMonitor, PerformanceProfiler, PerformanceManager all on master +3. **Client performance marks** -- NetworkManager and ChunkManager use `performance.mark`/`measure` +4. **Mobile trace analysis** -- Complete Python toolchain for Chrome DevTools trace JSON +5. **Sentry integration** -- Fully implemented, just needs to be merged and enabled + +### Recommended Next Steps + +1. Merge `sentry-testing` branch -- Production monitoring with zero effort +2. Merge `test/headless-browser-automation` -- Foundation for all future automation +3. Build on Puppeteer scripts to extract `renderer.info` stats over time +4. Implement the Phase 1 items from `docs/performance-testing-infrastructure` +5. Add `performance.measure` calls around entity rendering, chunk meshing, and network deserialization in the client +6. Create a simple CI action that runs headless browser connection test on every PR diff --git a/ai-memory/docs/perf-amateur-notes-2026-03-05/hyfire2-feature-perf-branches.md b/ai-memory/docs/perf-amateur-notes-2026-03-05/hyfire2-feature-perf-branches.md new file mode 100644 index 00000000..ca58aef1 --- /dev/null +++ b/ai-memory/docs/perf-amateur-notes-2026-03-05/hyfire2-feature-perf-branches.md @@ -0,0 +1,962 @@ +# HyFire2 Feature Performance Branches - Complete Research + +**Repo:** `~/GitHub/games/hyfire2` +**Date:** 2026-03-05 +**Total branches researched:** 18 + +--- + +## Table of Contents + +1. [BATCH 1 - Monitoring System Branches](#batch-1---monitoring-system-branches) + - [feature/performance-monitoring](#featureperformance-monitoring) (merged) + - [feature/performance-monitoring-system](#featureperformance-monitoring-system) (merged) + - [feature/performance-monitoring-ui](#featureperformance-monitoring-ui) (12 commits ahead) + - [feature/performance-monitoring-improvements](#featureperformance-monitoring-improvements) (29 commits ahead) + - [feature/performance-monitoring-hybrid](#featureperformance-monitoring-hybrid) (2 commits ahead) + - [feature/performance-monitoring-ui-merge-master](#featureperformance-monitoring-ui-merge-master) (19 commits ahead) + - [feature/add-game-performance-monitoring](#featureadd-game-performance-monitoring) (44 commits ahead) + - [feature/perf-monitoring-terrorist-approaches](#featureperf-monitoring-terrorist-approaches) (merged) + - [feature/performance-analysis-tools](#featureperformance-analysis-tools) (4 commits ahead) + - [feature/performance-analysis-combined](#featureperformance-analysis-combined) (216 commits ahead) + - [feature/performance-analysis-reports](#featureperformance-analysis-reports) (187 commits ahead) +2. [BATCH 2 - Optimization Branches](#batch-2---optimization-branches) + - [feature/performance-optimizations](#featureperformance-optimizations) (merged) + - [feature/baseline-lag-optimization](#featurebaseline-lag-optimization) (4 commits ahead) + - [feature/comprehensive-mobile-performance](#featurecomprehensive-mobile-performance) (merged) + - [feature/mobile-performance-analysis](#featuremobile-performance-analysis) (4 commits ahead) + - [feature/investigate-mobile-viewmodel-performance](#featureinvestigate-mobile-viewmodel-performance) (merged) + - [feature/particle-stress-tester](#featureparticle-stress-tester) (16 commits ahead) + - [feature/bot-cover-micro-profiler](#featurebot-cover-micro-profiler) (5 commits ahead) +3. [Cross-Cutting Architecture Summary](#cross-cutting-architecture-summary) +4. [Key Techniques Catalog](#key-techniques-catalog) + +--- + +## BATCH 1 - Monitoring System Branches + +--- + +### feature/performance-monitoring + +**Status:** Fully merged into master +**Commits:** 5 unique (all merged) +**Key commits:** +- `f54b510a6` docs: add comprehensive performance guide +- `16e22bd70` feat: add comprehensive performance monitoring system + +**What it added (now in master):** +- `PerformanceProfiler` - server-side profiling with `Bun.nanoseconds()` +- `profile-server-auto.ts` script for automated profiling in WSL terminals +- Performance monitoring documentation + +**Significance:** This was the first performance monitoring system. It established the baseline pattern of wrapping functions with `performance.now()` timing and saving JSON reports. + +--- + +### feature/performance-monitoring-system + +**Status:** Fully merged into master +**Commits:** 0 ahead (identical to master) + +Likely an earlier/duplicate branch that was merged before `feature/performance-monitoring`. + +--- + +### feature/performance-monitoring-ui + +**Status:** 12 commits ahead of master (NOT merged) +**Files changed:** 13 files, +2,311 / -40 lines + +**New files added:** +- `assets/ui/components/performance-monitor.js` (788 lines) - Client-side UI overlay +- `src/services/FunctionProfiler.ts` (236 lines) - Function-level profiling +- `src/services/PerformanceMetricsService.ts` (543 lines) - Centralized metrics collection +- `src/services/SessionSpikeTracker.ts` (218 lines) - Session-wide spike tracking +- `src/services/SystemProfiler.ts` (275 lines) - Per-system tick profiling + +**Architecture:** + +``` +Client UI (F9 toggle) Server Services ++-------------------+ +-------------------------------+ +| performance- | HTTP | PerformanceMetricsService | +| monitor.js |<------->| - collectSnapshot() (1/sec) | +| - Overview tab | | - getUIMetrics() | +| - Spikes tab | | - spikeThresholds | +| - Logs tab | +-------------------------------+ +| - Operations tab | | ++-------------------+ +----------+----------+ + | | + +-------------------+ +-------------------+ + | FunctionProfiler | | SessionSpikeTracker| + | - startFunction() | | - allTimeWorst[] | + | - endFunction() | | - recentSpikes[] | + | - wrap(fn) | | - spikePatterns | + +-------------------+ +-------------------+ + | + +-------------------+ + | SystemProfiler | + | - startTick() | + | - measureSystem() | + | - endTick() | + +-------------------+ +``` + +**Key code - PerformanceMetricsService singleton:** +```typescript +export class PerformanceMetricsService { + private spikes: PerformanceSpike[] = []; + private spikeThresholds = { + tick: 1, // 1ms - catch EVERYTHING + memory: 1000, // 1GB + eventloop: 1, // 1ms - super sensitive + operation: 5 // 5ms for operations + }; + private metricsHistory: MetricsSnapshot[] = []; + private maxHistorySize: number = 300; // 5 minutes at 1/sec + + public startCollection(): void { + this.updateInterval = setInterval(() => { + this.collectSnapshot(); + }, 1000); + } +} +``` + +**Key code - FunctionProfiler wrap pattern:** +```typescript +public wrap any>(fn: T, name: string, fileName: string = ''): T { + const profiler = this; + return function(this: any, ...args: any[]) { + profiler.startFunction(name, fileName); + try { + const result = fn.apply(this, args); + if (result instanceof Promise) { + return result.finally(() => profiler.endFunction()); + } + profiler.endFunction(); + return result; + } catch (error) { + profiler.endFunction(); + throw error; + } + } as T; +} +``` + +**Key code - SessionSpikeTracker:** +```typescript +interface DetailedSpike { + id: string; + timestamp: number; + duration: number; + functionName: string; + callStack: string[]; + context: { + botName?: string; + team?: string; + round?: string; + players?: number; + bots?: number; + }; +} +``` + +**UI Features:** +- F9 hotkey toggles full-screen overlay (90% width, 90vh height) +- Tabs: Overview, Spikes, Logs, Operations +- Green-on-black terminal aesthetic +- Pause/resume button for freezing data +- 500ms update rate +- Auto-scroll with lock + +**How to use:** Import and call `metricsService.startCollection()` in GameManager. Open client and press F9. + +--- + +### feature/performance-monitoring-improvements + +**Status:** 29 commits ahead of master (NOT merged) +**Files changed:** 14 files, +4,405 / -116 lines +**Relationship:** Superset of `performance-monitoring-ui` (contains all 12 commits + 17 more) + +**What it adds beyond the UI branch:** + +1. **Enhanced FrameBudgetMonitor** (272+ lines rewritten): + - Hierarchical operation tracking with parent-child relationships + - `selfTime` calculation (time in function excluding children) + - Concurrent load metrics per frame + - Rich `PerformanceContext` with strategy, zone, enemies, health, weapon + - Call stack capture for spikes + - Correlated log entries (before/during/after spike) + +2. **Interactive Flamechart Export** (`docs/FLAMECHART_EXPORT.md`, 345 lines): + - Generates standalone HTML with interactive flame chart visualization + - Color coding by self-time: Red (>80% = bottleneck), Orange (>50%), Yellow (>30%), Green (<30%) + - Search panel to find specific operations + - Zoom/pan controls + - Shows worst frame tree with drill-down + +3. **Markdown Report Export:** + - Removed heavy UI rendering in favor of lightweight MD export + - Phase A: Hierarchical tracking and call stack capture + - Phase B: Rich context and spike-log correlation + - Phase C: Drill-down modal for detailed spike analysis + +4. **Performance optimizations of the monitor itself:** + - Cached DOM elements to eliminate UI lag + - Stopped rebuilding DOM every second + - Reduced update rate from 2x/sec to 1x/sec + - Limited spikes window from 30s to 5s (max 20 items) + - 75% CPU reduction when debug UI is open + +**Key code - Enhanced FrameBudgetMonitor:** +```typescript +interface FrameOperation { + name: string; + duration: number; + timestamp: number; + parent: string | null; // Hierarchical tracking + depth: number; + selfTime: number; // Time excluding children + children: FrameOperation[]; + context?: PerformanceContext; +} + +interface SlowFrame { + totalDuration: number; + timestamp: number; + operations: FrameOperation[]; + exceedsBudget: boolean; + concurrentOperationsCount: number; + totalCPUTime: number; + heaviestOperations: FrameOperation[]; +} +``` + +**Key code - Flamechart color logic (in exported HTML):** +```javascript +function getFlameColor(selfTimePct) { + if (selfTimePct > 80) return '#ff4444'; // BOTTLENECK + if (selfTimePct > 50) return '#ff8800'; // Heavy + if (selfTimePct > 30) return '#ffaa00'; // Medium + return '#00ff88'; // Lightweight +} +``` + +--- + +### feature/performance-monitoring-hybrid + +**Status:** 2 commits ahead of master (NOT merged) +**Files changed:** 5 files, +698 / -25 lines + +**New files added:** +- `src/services/PerformanceLagDetector.ts` (427 lines) + +**Modified:** +- `src/config/gameConfig.ts` - Added `PerformanceMonitoringConfig` interface +- `src/services/SentryTelemetryService.ts` - Added 50-transaction cap per session +- `docs/PERFORMANCE_MONITORING.md` - Full documentation + +**Architecture - Different approach from the UI branch:** +Instead of wrapping individual functions, this uses a polling model: +- Checks CPU usage via `Telemetry.getProcessStats()` every 50ms +- Captures detailed snapshots (player states, bot states, strategies) during spikes +- Sends critical spikes to Sentry telemetry +- Generates periodic 30-second summary reports + +**Key code - PerformanceLagDetector:** +```typescript +export class PerformanceLagDetector { + private spikeThreshold = 40; // 40% CPU threshold + private consecutiveSpikes = 0; + + public initialize(): void { + this.checkInterval = setInterval(() => this.checkForSpikes(), 50); + this.reportInterval = setInterval(() => this.logPerformanceSnapshot(), 30000); + } + + private checkForSpikes(): void { + const stats = Telemetry.getProcessStats(false); + if (stats.cpuUsage > this.spikeThreshold) { + this.consecutiveSpikes++; + // Capture player/bot/round state snapshot + // Send to Sentry if critical + } + } + + public profile(name: string, fn: () => T): T { + const start = performance.now(); + try { return fn(); } + finally { this.trackOperation(name, performance.now() - start); } + } +} +``` + +**Config structure:** +```typescript +performanceMonitoring: { + enabled: false, // Master switch + lagDetection: true, + cpuThreshold: 40, // % CPU for spike detection + memoryThreshold: 500, // MB for warnings + reportInterval: 30, // seconds between reports + sentryTraceCap: 50, // max Sentry transactions/session + tickTimeThreshold: 50, // ms for slow tick warning + checkInterval: 50 // ms polling interval +} +``` + +**How to use:** Set `performanceMonitoring.enabled = true` in `gameConfig.ts`. System auto-starts on server boot. + +--- + +### feature/performance-monitoring-ui-merge-master + +**Status:** 19 commits ahead of master (NOT merged) +**Relationship:** This is `performance-monitoring-ui` rebased/merged onto a newer master, plus the `performance-monitoring-improvements` Phase 1-3 optimizations (DOM caching, reduced update rate, etc). Subset of `performance-monitoring-improvements`. + +No unique content beyond what's in the improvements branch. + +--- + +### feature/add-game-performance-monitoring + +**Status:** 44 commits ahead of master (NOT merged) +**Files changed:** 38 files, +10,306 / -70,940 lines (large diff due to `index.mjs` rebuild) + +**The most comprehensive monitoring branch.** Adds flame charts, spike detection with bot state capture, and many analysis scripts. + +**New files added:** +- `src/utils/FlameChartRecorder.ts` (550 lines) - Chrome Trace Event format recording +- `src/utils/SpikeDetector.ts` (676 lines, rewritten) - Spike detection with bot state snapshots +- `performance-reports/flame-chart-viewer.html` (905 lines) - D3.js-based flame chart viewer +- `debug-flame-chart.html` (41 lines) +- `PERFORMANCE_FIXES.md` (359 lines) +- 12 analysis scripts in `scripts/` + +**Analysis scripts:** +| Script | Purpose | +|--------|---------| +| `analyze-performance-spikes.ts` | Analyze stats JSON files, generate markdown reports | +| `analyze-all-8k-spikes.ts` | Process 8000+ spike events | +| `analyze-latest-run.ts` | Quick analysis of most recent game run | +| `analyze-latest-spikes.ts` | Recent spike summary | +| `analyze-spike-situations.ts` | Correlate spikes with game situations | +| `cross-reference-all-data.ts` | Cross-reference flame charts with spike logs | +| `dump-frame-monitor-data.ts` | Raw frame monitor data extraction | +| `export-spike-data-comprehensive.ts` | Full spike data export with all context | +| `export-spike-data-fast.ts` | Quick spike data export | +| `extract-all-spikes.ts` | Extract all spike events from logs | +| `extract-granular-operations.ts` | Per-operation timing extraction | +| `extract-spike-logs.ts` | Pull spike-related log entries | + +**Key code - FlameChartRecorder (Chrome Trace Events):** +```typescript +interface TraceEvent { + name: string; + cat: string; // category + ph: string; // phase: 'B' (begin), 'E' (end), 'X' (complete) + ts: number; // timestamp in microseconds + pid: number; + tid: number; + dur?: number; + args?: any; +} + +export class FlameChartRecorder { + private events: TraceEvent[] = []; + private readonly THREAD_MAIN = 1; + private readonly THREAD_BOTS = 2; + private readonly THREAD_PHYSICS = 3; + private readonly THREAD_NETWORK = 4; + + beginOperation(name: string, category: string, threadId: number = this.THREAD_MAIN): void { + this.events.push({ + name, cat: category, ph: 'B', + ts: (performance.now() - this.startTimeMs) * 1000, + pid: 1, tid: threadId + }); + } + + endOperation(name: string, category: string, threadId: number = this.THREAD_MAIN): void { + this.events.push({ + name, cat: category, ph: 'E', + ts: (performance.now() - this.startTimeMs) * 1000, + pid: 1, tid: threadId + }); + } + + // Output: loadable in chrome://tracing or Speedscope + saveToFile(): void { + const output = JSON.stringify({ traceEvents: this.events }); + fs.writeFileSync(path.join(this.config.outputPath, filename), output); + } +} +``` + +**Key code - SpikeDetector with bot state capture:** +```typescript +interface SpikeEvent { + timestamp: number; + operation: string; + durationMs: number; + percentOfBudget: number; + botStates: BotStateSnapshot[]; // Full state of every bot + gameContext: { + roundNumber: number; + roundTime: number; + bombPlanted: boolean; + bombTime: number | null; + teamScores: { ct: number; t: number }; + playersAlive: { ct: number; t: number }; + }; + stateChanges?: StateChange[]; // What changed since last spike +} +``` + +**Flame chart viewer** uses D3.js with: +- Dark theme (1e1e1e background) +- File upload for JSON trace files +- Pan/zoom controls +- Fixed Y-axis showing operation names +- Color-coded bars by duration + +**How to use:** +1. Enable flame chart: `flameChartRecorder.setEnabled(true)` or import `profile-server-auto.ts` +2. Run game for desired duration +3. Find output in `performance-reports/flame-chart-cumulative-*.json` +4. Open `flame-chart-viewer.html` and load the JSON file +5. Or load in `chrome://tracing` + +--- + +### feature/perf-monitoring-terrorist-approaches + +**Status:** Fully merged into master +**Commits:** 4 unique (all merged) + +**What it fixed:** +Found that `CTRotationManager.checkTerroristApproaches` was calling `evaluateRotationNeed()` on every terrorist intel update within the same tick. If 5 terrorists rushed B site in one tick, evaluation ran 5 times. + +**Solution: Deferred evaluation pattern:** +```typescript +// BEFORE: Each update triggers evaluation +updateTerroristIntel(botName, position) { + this.evaluateRotationNeed(); // Called 5x in one tick! +} + +// AFTER: Flag-based deferred evaluation +updateTerroristIntel(botName, position) { + this.pendingEvaluation = true; // Just set flag +} + +// GameManager tick loop: +for (bot of terrorists) checkApproach(bot); +if (rotationManager.hasPendingEvaluation()) { + rotationManager.evaluateRotationNeedDeferred(); // Called 1x per tick +} +``` + +**Result:** 150-700x faster intel updates, no spikes >2ms + +--- + +### feature/performance-analysis-tools + +**Status:** 4 commits ahead of master (NOT merged) +**Files changed:** 11 files, +3,333 lines (mostly new) + +**New files:** +- `scripts/performance-analysis/create_complete_analysis.py` (442 lines) +- `scripts/performance-analysis/create_pivot_analysis.py` (362 lines) +- `scripts/performance-analysis/extract_full_pivot.py` (128 lines) +- `scripts/performance-analysis/extract_issues.py` (261 lines) +- `scripts/performance-analysis/show_pivot_table.py` (61 lines) +- `scripts/performance-analysis/check_sheets.py` (31 lines) +- `scripts/performance-analysis/README.md` (186 lines) +- Output Excel files (COMPLETE_PERFORMANCE_ANALYSIS.xlsx, PIVOT_ANALYSIS.xlsx) + +**Python analysis pipeline:** +``` +Input CSVs (from Chrome DevTools CPU profiling): + profile_FunctionSummary.csv + profile_TickSummary.csv + profile_FunctionByTick_MAPPED.csv + | + v +create_complete_analysis.py + -> COMPLETE_PERFORMANCE_ANALYSIS.xlsx + Sheet 1: Overview + Sheet 2: HighVarianceFunctions (max/median > 5x) + Sheet 3: FunctionSpikeDetails (individual spike occurrences) + Sheet 4: FunctionGroups (correlated functions) + Sheet 5: HighTicks (all ticks > 3ms) + Sheet 6: GroupTickBreakdown + | + v +create_pivot_analysis.py + -> PIVOT_ANALYSIS.xlsx + Sheet 1: PivotTable (HyFire2 code only, ticks >= 1000) + Sheet 2: GroupsWithFunctionMS (per-function ms contributions) + Sheet 3: GroupSummary (one row per group) +``` + +**Key metrics to focus on (from README):** +- Variance Ratio (Max/Median): >10x = SPIKY +- TickNonIdle > 3ms: identifies problematic ticks +- Function Groups: identify event cascades (bomb plant -> retake logic) + +**How to use:** +```bash +# 1. Run game with CPU profiling +node --cpu-prof --cpu-prof-interval=100 server.js + +# 2. Convert .cpuprofile to CSVs + +# 3. Run analysis +cd /path/to/csv/data +python3 scripts/performance-analysis/create_complete_analysis.py +python3 scripts/performance-analysis/create_pivot_analysis.py +``` + +--- + +### feature/performance-analysis-combined + +**Status:** 216 commits ahead of master (NOT merged) +**Files changed:** 274 files, +1,785,915 lines +**Relationship:** Superset of `performance-analysis-tools` + `performance-analysis-reports` + +**The largest analysis branch.** Contains: + +1. **200+ individual function spike analyses** in `performance-reports/` and `spike-analysis/` directories + - Each is a markdown file analyzing one function + - Includes: metrics (max, p95, median, spike ratio), root cause, proposed fix with code + +2. **Instrumentation guide** (`INSTRUMENTATION_GUIDE.md`, 598 lines): + - Step-by-step deployment guide for performance instrumentation + - Recommended fix order by ROI: + 1. `setMovementInputs` - easiest, 60-80% improvement, 30 min + 2. `_isKnownWeaponClass` - replace require(), 70-90% improvement, 15 min + 3. `checkTerroristApproach` - cache bot lookups, 70-90% improvement, 45 min + 4. `handlePlayerInput` - cache debug config, 50-70% improvement, 30 min + 5. `isPlayerInAir` - fix Rust aliasing, 70-85% improvement, 15 min + +3. **Final spike analysis** (`FINAL_SPIKE_ANALYSIS.md`): + - 88 gameplay spikes ranked by severity + - Top offenders: pointInZone (36x spike), _handlePlayerInput (31x), getCurrentRecoilOffset (24x) + - Severity formula: spike_ratio * duration + +4. **Actual code optimizations applied** (in src/): + - `GamePlayerEntity.ts`: +260/-68 lines - optimized _handlePlayerInput, reduced grenade logging + - `MomentumPlayerController.ts`: optimized setMovementInputs + - `RecoilSystem.ts`: eliminated Vector3.clone() allocation + - `BotController.ts`: reduced string concatenation + - `CTRotationManager.ts`: cached bot lookups + - `PointInPolygon.ts`: optimized polygon checks + - `MovementAccuracySystem.ts`: throttled accuracy recalculation + +5. **Validation report** (`PERFORMANCE_VALIDATION_REPORT.md`): + - A/B test results proving fixes work + - 36% less log data with fixes applied + - 7% fewer errors + +6. **Codebase mapping** (`codebase-map.json`, 1.6M lines): + - Complete call graph analysis + - Function relationship mapping + - Used to trace spike cascades + +**Key instrumentation pattern:** +```typescript +private setMovementInputs(w, a, s, d): void { + const perfStart = performance.now(); + const perfCheckpoints: Record = {}; + + const stringStart = performance.now(); + const currentInputState = `${w}${a}${s}${d}`; + perfCheckpoints.stringConcat = performance.now() - stringStart; + + // ... rest of function with checkpoints ... + + const totalMs = performance.now() - perfStart; + if (totalMs > 0.5) { + eventLogger.info('perf.setMovementInputs', 'Performance breakdown', { + totalMs: totalMs.toFixed(3), + checkpoints: { /* ... */ }, + context: { botName: this._entity.getBotName() } + }); + } +} +``` + +--- + +### feature/performance-analysis-reports + +**Status:** 187 commits ahead of master (NOT merged) +**Relationship:** Subset of `performance-analysis-combined` (all commits present in combined) + +Contains the per-function analysis reports and codebase mapping tools but without the actual code fixes. The `combined` branch is the superset. + +--- + +## BATCH 2 - Optimization Branches + +--- + +### feature/performance-optimizations + +**Status:** Fully merged into master +**Commits:** 0 ahead + +Earlier optimization work that was fully merged. No unique content remaining. + +--- + +### feature/baseline-lag-optimization + +**Status:** 4 commits ahead of master (NOT merged) +**Files changed:** 8 files, +64,772 / -5 lines (mostly raw JSON trace data) + +**Focus:** Mobile client frame budget analysis based on real Chrome trace data. + +**Key findings (from `REAL_BASELINE_LAG_FIX.md`):** +- 59.2% of animation frames fail 60fps budget (>16ms) +- 34.2% fail 30fps budget (>33ms) +- Average frame time 38ms (238% over budget) +- Root cause: `weapon-viewmodel-dual-renderer.js` runs unconditionally at 60fps + +**Fixes applied:** +1. **Frame skipping on mobile** (`weapon-viewmodel-dual-renderer.js`): +```javascript +let frameCounter = 0; +function renderFrame() { + frameCounter++; + if (isMobile && frameCounter % 2 === 0) { + animationFrameId = requestAnimationFrame(renderFrame); + return; // Skip every other frame = 30fps on mobile + } + // ... rest of rendering +} +``` + +2. **Disable weapon bob on mobile** - removes per-frame sine/cosine calculations +3. **Reduce setInterval aggression** in mobile controls joystick + +**Analysis data:** Contains `recurring_blockers_raw_data.json` (61K lines) - full trace data for offline analysis. + +--- + +### feature/comprehensive-mobile-performance + +**Status:** Fully merged into master +**Commits:** 5 unique (all merged) + +**What was merged:** +- Per-frame analysis of what kills frame budget on mobile A14 chip +- Reduced blood particle count on mobile (instead of disabling entirely) +- Complete breakdown of mobile A14 performance characteristics +- Audit of all periodic operations and their frame budget impact +- Previously merged optimizations: antialiasing disabled, pixel ratio clamped to 1.5, shader precision lowered, simplified lighting, shell casings disabled, smoke disabled on mobile + +--- + +### feature/mobile-performance-analysis + +**Status:** 4 commits ahead of master (NOT merged) +**Files changed:** 12 files, +66,578 lines + +**New Python analysis scripts:** +- `analyze-trace.py` (429 lines) - Chrome Performance Trace Analyzer + - Analyzes long tasks (>50ms) + - JavaScript execution time breakdown + - Rendering performance (Layout, Paint, Composite) + - Frame time distribution +- `analyze-recurring-blockers.py` (372 lines) - Recurring Frame Blocker Analysis + - Filters to gameplay only (skips first 5s startup) + - Finds operations that repeatedly block frames + - Tracks call frequency and duration distribution +- `analyze-frame-budget.py` (386 lines) - Frame budget analysis + +**Key code - TraceAnalyzer:** +```python +class TraceAnalyzer: + def analyze_long_tasks(self, threshold_ms=50): + for event in self.events: + if event.get('ph') == 'X' and 'dur' in event: + duration_ms = event['dur'] / 1000 + if duration_ms > threshold_ms: + self.long_tasks.append({ + 'name': event.get('name'), + 'duration_ms': duration_ms, + 'timestamp': event.get('ts', 0) / 1000 + }) +``` + +**How to use:** +```bash +# 1. Capture Chrome trace on mobile device +# 2. Download trace JSON +python3 analyze-trace.py trace.json +python3 analyze-recurring-blockers.py trace.json +python3 analyze-frame-budget.py trace.json +``` + +--- + +### feature/investigate-mobile-viewmodel-performance + +**Status:** Fully merged into master +**Commits:** 3 unique (all merged) + +**What was merged:** +- **Ambient-only lighting on mobile** for weapon view model: + - Mobile: single ambient light (intensity 1.2) instead of ambient (0.65) + directional (0.8) + - Desktop unchanged: ambient (0.5) + directional (1.0) + fill (0.3) + - Estimated 3-5% FPS improvement on mobile +- Comprehensive mobile view model optimizations +- Analysis documentation + +--- + +### feature/particle-stress-tester + +**Status:** 16 commits ahead of master (NOT merged) +**Files changed:** 5 files, +831 / -1 lines + +**New files:** +- `src/test/ParticleStressTester.ts` (425 lines) +- `assets/ui/components/particle-test-menu.js` (255 lines) + +**Test scenarios:** +| Test | What it does | +|------|-------------| +| `weapons` | All players fire weapons simultaneously | +| `smoke` | Spawn multiple smoke grenades | +| `he` | Spawn multiple HE grenades | +| `molotov` | Spawn multiple molotov grenades | +| `flash` | Spawn multiple flashbangs | +| `blood` | Damage all players for blood effects | +| `stress` | ALL effects combined at maximum intensity | +| `ramp` | Gradually increase particle intensity | + +**Key code:** +```typescript +export class ParticleStressTester { + constructor(gameManager: GameManager) { + this.initializeScenarios(); + // Auto-start test sequence after 5 seconds + setTimeout(() => this.runAutoTestSequence(), 5000); + } + + public async runTest(scenario: string): Promise { + this.isRunning = true; + const test = this.scenarios.get(scenario); + await test.execute(); + this.isRunning = false; + } +} +``` + +**UI:** F2 hotkey toggles a floating menu with orange-on-black theme. Also adds a permanent "PARTICLE TESTS (F2)" button. + +**How to use:** The stress tester auto-runs a sequence 5 seconds after construction. Or use the F2 menu in the client to trigger individual tests. + +--- + +### feature/bot-cover-micro-profiler + +**Status:** 5 commits ahead of master (NOT merged) +**Files changed:** 10 files, +1,269 / -25 lines + +**New files:** +- `src/profiling/BotCoverServiceProfiler.ts` (181 lines) +- `docs/micro-profiler-notes.md` (35 lines) + +**Technique: Opt-in prototype patching via environment variable:** +```typescript +const ENABLED = process.env.BOT_COVER_PROF === "1"; + +if (ENABLED) { + const INSTALLED_SYMBOL = Symbol.for("BOT_COVER_PROF_INSTALLED"); + + if (!(botCoverProto as any)[INSTALLED_SYMBOL]) { + (botCoverProto as any)[INSTALLED_SYMBOL] = true; + + function wrapMethod(prototype, methodName, label) { + const original = prototype[methodName]; + prototype[methodName] = function(...args) { + const start = performance.now(); + try { + const result = original.apply(this, args); + if (result?.then) { + return result.then(v => { recordSample(label, performance.now() - start); return v; }); + } + recordSample(label, performance.now() - start); + return result; + } catch (error) { + recordSample(label, performance.now() - start); + throw error; + } + }; + } + + // Wrap specific methods + wrapMethod(botCoverProto, "assignBotsToGroups", "BotCover.assignBotsToGroups"); + wrapMethod(botCoverProto, "navigateBotToCoverPoint", "BotCover.navigateBotToCoverPoint"); + wrapMethod(botCoverProto, "updateBotPatrols", "BotCover.updateBotPatrols"); + wrapMethod(eventLoggerProto, "debug", "EventLogger.debug"); + wrapMethod(eventLoggerProto, "logToFile", "EventLogger.logToFile"); + + // Auto-emit on exit + process.once("exit", emitReport); + } +} +``` + +**Output:** JSON file at `profiles/bot-cover-prof-{timestamp}.json` with per-method stats (count, totalMs, avgMs, maxMs, minMs). + +**How to use:** +```bash +BOT_COVER_PROF=1 BOT_COVER_PROF_OUTPUT=profiles/run1.json bun run dev +``` + +**Key design principles (from micro-profiler-notes.md):** +1. Patch prototypes safely (use Symbol to prevent double-wrap) +2. Keep probe < 0.01ms overhead per call +3. Run A/B comparisons with identical workloads +4. Remove or disable behind strict opt-in flag when done + +--- + +## Cross-Cutting Architecture Summary + +### Evolution of Monitoring Approaches + +``` +Generation 1 (merged): + performance-monitoring -> Basic profiler with Bun.nanoseconds() + performance-monitoring-system -> Duplicate/early attempt + perf-monitoring-terrorist -> Targeted fix for CT rotation + performance-optimizations -> Early optimization pass + +Generation 2 (unmerged, UI-focused): + performance-monitoring-ui -> Full client overlay + server services + performance-monitoring-improvements -> Enhanced with flamecharts + hierarchy + performance-monitoring-ui-merge-master -> Rebased version + +Generation 3 (unmerged, production-focused): + performance-monitoring-hybrid -> Polling-based lag detection + Sentry + config + +Generation 4 (unmerged, deep analysis): + add-game-performance-monitoring -> Flame charts + spike detector + 12 scripts + performance-analysis-tools -> Python Excel analysis pipeline + performance-analysis-reports -> 200+ function analyses + performance-analysis-combined -> Everything + actual code fixes + validation + +Generation 5 (unmerged, targeted profilers): + bot-cover-micro-profiler -> Env-var-gated prototype patching + particle-stress-tester -> Grenade/particle load testing + +Mobile-specific (mix of merged/unmerged): + comprehensive-mobile-performance -> Merged: blood particles, A14 analysis + investigate-mobile-viewmodel -> Merged: ambient-only lighting + mobile-performance-analysis -> Unmerged: Python trace analyzers + baseline-lag-optimization -> Unmerged: frame skipping fix +``` + +### Common Metrics Tracked + +| Metric | Where | Threshold | +|--------|-------|-----------| +| Frame/tick duration | FrameBudgetMonitor | 16.66ms (60 FPS) | +| Spike detection | SpikeDetector | 0.5ms (3% of budget) | +| CPU usage | PerformanceLagDetector | 40% | +| Memory (heap) | PerformanceMetricsService | 1GB | +| Event loop lag | PerformanceMetricsService | 1ms | +| Individual operation | FunctionProfiler | 10ms | +| Sentry transactions | SentryTelemetryService | 50 per session | + +--- + +## Key Techniques Catalog + +### 1. Function Wrapping (FunctionProfiler pattern) +```typescript +const wrapped = function(...args) { + const start = performance.now(); + try { return original.apply(this, args); } + finally { record(performance.now() - start); } +}; +``` +**Used in:** performance-monitoring-ui, bot-cover-micro-profiler + +### 2. Deferred Evaluation (batch processing) +```typescript +// Flag instead of immediate execution +this.pendingEvaluation = true; +// Single evaluation at end of tick +if (hasPending()) evaluateDeferred(); +``` +**Used in:** perf-monitoring-terrorist-approaches (150-700x speedup) + +### 3. Chrome Trace Event Format +```typescript +{ name, cat, ph: 'X', ts: microseconds, pid: 1, tid: threadId, dur: microseconds } +``` +**Used in:** add-game-performance-monitoring (FlameChartRecorder) +**Viewable in:** chrome://tracing, Speedscope, custom D3.js viewer + +### 4. Prototype Patching with Symbol Guard +```typescript +const SYM = Symbol.for("PROFILER_INSTALLED"); +if (!proto[SYM]) { proto[SYM] = true; /* wrap methods */ } +``` +**Used in:** bot-cover-micro-profiler + +### 5. CPU Polling (production-safe) +```typescript +setInterval(() => { + const stats = Telemetry.getProcessStats(false); + if (stats.cpuUsage > threshold) captureSnapshot(); +}, 50); +``` +**Used in:** performance-monitoring-hybrid + +### 6. Checkpoint-based Instrumentation +```typescript +const checkpoints = {}; +checkpoints.step1 = performance.now() - stepStart; +// ... more steps ... +if (total > threshold) log({ checkpoints }); +``` +**Used in:** performance-analysis-combined (INSTRUMENTATION_GUIDE.md) + +### 7. Python CSV-to-Excel Analysis Pipeline +``` +Chrome CPU profile -> CSV -> openpyxl -> XLSX with pivot tables +``` +**Used in:** performance-analysis-tools + +### 8. Mobile Frame Skipping +```javascript +if (isMobile && frameCounter % 2 === 0) { return; } // 30fps on mobile +``` +**Used in:** baseline-lag-optimization + +### 9. Self-Time Calculation for Flamecharts +```typescript +selfTime = totalDuration - sum(children.map(c => c.duration)); +``` +**Used in:** performance-monitoring-improvements (FrameBudgetMonitor) + +### 10. A/B Validation Protocol +``` +Run 1: with fixes (5 min, AUTO_START_WITH_BOTS) +Run 2: without fixes (5 min, same config) +Compare: log volume, error count, frame timing +``` +**Used in:** performance-analysis-combined (PERFORMANCE_VALIDATION_REPORT.md) diff --git a/ai-memory/docs/perf-amateur-notes-2026-03-05/hyfire2-master-perf-code.md b/ai-memory/docs/perf-amateur-notes-2026-03-05/hyfire2-master-perf-code.md new file mode 100644 index 00000000..cac342a0 --- /dev/null +++ b/ai-memory/docs/perf-amateur-notes-2026-03-05/hyfire2-master-perf-code.md @@ -0,0 +1,666 @@ +# HyFire2 Master Branch - Performance Code Inventory + +Comprehensive inventory of ALL performance monitoring, profiling, benchmarking, and optimization code found on the `master` branch of `~/GitHub/games/hyfire2` as of 2026-03-05. + +--- + +## 1. Core Profiling System (`src/profiling/`) + +### 1.1 `src/profiling/PerformanceManager.ts` +**What it does:** Comprehensive performance monitoring singleton with spike detection, auto-profiling, memory monitoring, and report generation. + +**Key techniques:** +- `process.hrtime.bigint()` for high-precision timing +- Spike detection: any operation exceeding configurable threshold (default 50ms) triggers alerts +- Auto CPU profiling on spike via `InspectorCpuProfiler` (5s capture, 30s cooldown) +- Heap snapshots via `v8.writeHeapSnapshot()` when memory exceeds 800MB +- Event loop lag detection (interval-based) +- Signal handlers: `SIGUSR1` = toggle CPU profiling, `SIGUSR2` = generate report +- Operation stats: count, total, avg, max, min, spike count, recent history (last 100) + +**Current state:** Event loop monitoring and periodic reporting are **DISABLED** (commented out) because they were causing performance overhead and memory issues themselves. The core operation timing and spike detection remain active. + +**Key metrics:** operation duration (ms), spike count, heap used/total/RSS, event loop lag, hot paths (top by total time), spiky operations (top by spike count) + +**How to run:** Imported as singleton in `index.ts`. Configured at startup with `performanceManager.configure({...})`. + +**Dependencies:** `node:inspector`, `node:v8`, `node:fs`, `InspectorCpuProfiler`, `EventLogger` + +### 1.2 `src/profiling/InspectorCpuProfiler.ts` +**What it does:** Wraps the Node.js Inspector API (`Profiler` domain) to capture V8 CPU profiles. + +**Key techniques:** +- `inspector.Session` + `Profiler.enable` / `Profiler.start` / `Profiler.stop` +- Profile output as `.cpuprofile` JSON (Chrome DevTools compatible) +- `profileForMilliseconds(duration, outputPath)` for timed captures +- Signal-based profiling: `installSignalHandlers()` listens on configurable signals + +**How to run:** Used by PerformanceManager for auto-profiling. Can also be used standalone via signals or direct API. + +**Output:** `.cpuprofile` files in `./profiles/` directory + +### 1.3 `src/profiling/decorators.ts` +**What it does:** TypeScript decorators for zero-effort performance instrumentation. + +**Key techniques:** +- `@Monitor(captureStack?)` - method decorator, wraps sync/async methods in `performanceManager.measure()` +- `@MonitorClass(captureStack?)` - class decorator, monitors ALL methods +- `monitorBlock(name, fn, captureStack?)` - inline sync block measurement +- `monitorAsyncBlock(name, fn, captureStack?)` - inline async block measurement +- Auto-detects async vs sync methods via `constructor.name === 'AsyncFunction'` + +**How to run:** Import decorator, apply to class or method. Operation name auto-generated as `ClassName.methodName`. + +--- + +## 2. Utility Performance Monitors (`src/utils/`) + +### 2.1 `src/utils/PerformanceMonitor.ts` +**What it does:** Second performance monitoring singleton focused on sampling-based metrics collection with percentile calculations. + +**Key techniques:** +- `process.hrtime.bigint()` for timing +- Percentile calculations: p50, p95, p99 +- Memory tracking: heap used/total, RSS, external +- CPU approximation (Bun lacks `process.cpuUsage`) +- Event loop lag via interval jitter +- Auto-sampling at configurable interval (default 1s) +- Metrics history with configurable retention (default 600 samples = 10 min) + +**Current state:** Sampling is **DISABLED** in constructor (was causing memory overhead with no benefit). Timing storage also **DISABLED** (unbounded memory growth causing OOM). The `startTiming`/`endTiming` API still works but doesn't store history. + +**Key metrics:** memory (heapUsed, heapTotal, RSS, external in MB), CPU (user, system), event loop (lag, avgLag), per-operation timing stats (count, total, avg, min, max, p50, p95, p99) + +### 2.2 `src/utils/PerformanceProfiler.ts` +**What it does:** Manual call stack profiler for flame graph generation. + +**Key techniques:** +- Manual call stack tracking with `enter(name)` / `exit(name)` +- Tree-based profile data structure (ProfileNode with self time, total time, children) +- Statistical sampling: takes stack samples at configurable interval (default 1ms) +- `wrap(name, fn)` - wraps a function for automatic profiling +- Export to collapsed stack format (Brendan Gregg format) for flame graph generation +- Human-readable report with top functions by total time + +**How to run:** `profiler.enable()` then use `profiler.profile(name, fn)` or `profiler.enter()`/`profiler.exit()`. Generate output with `profiler.generateCollapsedStacks()` or `profiler.saveProfile(path)`. + +### 2.3 `src/utils/FrameBudgetMonitor.ts` +**What it does:** Tracks frame budget violations against 60 FPS target (16.66ms). + +**Key techniques:** +- Frame-level tracking: `startFrame()` / `endFrame()` with per-operation breakdown +- Spike threshold: 8ms (operations > 8ms tracked as concerning) +- Tracks worst frame ever, top offenders, recent spikes (last 50) +- Per-operation stats: name, duration, percent of budget +- `measure(name, fn)` for inline operation tracking + +**Current state:** Frame budget console logging is **DISABLED** (was causing performance overhead). Stats collection still active. + +**Key metrics:** total frames, frames over budget, percent over budget, worst frame (total duration + operation breakdown), top offenders (name, count, max, avg), recent spikes (operation, duration, % of budget) + +**Active usage:** Heavily used in `BotBrain.ts` - every bot decision path is wrapped in `frameBudgetMonitor.measure()` calls with per-bot naming (e.g., `brain.bombDetection.Alpha`, `brain.terroristStrategy.Zulu`). + +### 2.4 `src/utils/ClientPerformanceReporter.ts` +**What it does:** Server-side aggregator for client-side FPS reports. + +**Key techniques:** +- Receives `ClientPerformanceReport` from game clients (fps, frameTime, memory, performance tier) +- Per-player metric tracking with history (default 300 samples = 5 min at 1 report/sec) +- Issue detection: low FPS (<30), high frame time (>50ms), critical FPS (<20), high memory (>1GB) +- Running averages per player +- Periodic summary logging every 60 seconds +- Persistent issue detection: flags players with >30% problematic reports +- Performance tier classification: excellent/good/fair/poor/critical + +**Key metrics:** per-player FPS avg, frame time avg, memory avg, issue counts (lowFps, highFrameTime, criticalEvents), global summary (total players, players with issues, critical players, average FPS, lowest FPS player) + +### 2.5 `src/utils/ZoneVisibilityMonitor.ts` +**What it does:** Monitors zone visibility optimization performance (raycast skip rate). + +**Key techniques:** +- Periodic reporting at configurable interval (default 30s) +- Tracks checks skipped vs performed via `ZoneVisibilityService` +- Calculates estimated time saved (4ms per skipped raycast) +- Uses EventLogger for structured output + +**Key metrics:** checksSkipped, checksPerformed, skipRate, estimatedTimeSavedMs + +### 2.6 `src/utils/NameplateOptimizationConfig.ts` +**What it does:** Configuration constants for nameplate rendering optimization. + +**Key values:** +- MAX_VISIBLE_NAMEPLATES: 32 +- MAX_NAMEPLATE_DISTANCE: 75 +- CLOSE_RANGE_DISTANCE: 30 +- Update intervals: close 100ms, medium 250ms, far 500ms +- Feature flags: pooling, distance culling, batched updates, LOD + +--- + +## 3. Debug Systems + +### 3.1 `src/config/DebugUIConfig.ts` + `src/config/debugUIConfigData.ts` +**What it does:** Centralized debug UI configuration with cached flag lookups. + +**Perf-relevant flags:** +- `scene_debug_ui.show_performance_metrics` (default: false) +- `development.performance_profiling` (default: false) +- `development.verbose_logging` (default: false) +- `player_debug_ui.show_fps` / `show_ping` (default: false) + +**Perf optimization:** Flag values cached in static fields to avoid function call overhead (100+ calls/sec with 10 bots). + +### 3.2 `src/commands/DebugCommands.ts` +**What it does:** In-game debug command handler (admin/dev only). + +**Perf-relevant:** Bot debug UI toggle (shows names, roles, actions). Uses cached config flags for gate checks. + +### 3.3 `src/debug/AudioDebugConfig.ts` +**What it does:** Audio parameter tuning config singleton. + +**Perf-relevant:** Controls distance-based audio culling parameters (reference/cutoff distances). + +### 3.4 `src/entities/bot/debug/BotDebugUI.ts` + `BotDecisionTracer.ts` +**What it does:** Bot state visualization and decision tracing. + +### 3.5 `src/managers/GrenadeDebugManager.ts` +**What it does:** Debug visualization for grenade trajectories. + +### 3.6 `src/navigation/ZoneDebugManager.ts` + `ZoneDebugVisualizer.ts` +**What it does:** Navigation zone debug visualization. + +--- + +## 4. Performance Scripts (`scripts/`) + +### 4.1 `scripts/benchmark-game.ts` +**What it does:** Automated game performance benchmarking. + +**How to run:** +```bash +bun scripts/benchmark-game.ts [-d duration] [-s scenario] [-o output.json] +# npm run benchmark / benchmark:quick / benchmark:full +``` + +**Scenarios:** idle, 5v5_combat, 10v10_full, stress_test + +**Techniques:** Starts game server, measures tick times, memory, event loop lag per scenario. Reports avg/max tick time, memory, operation timings (bot.decision, pathfinding, combat.damage, network.send). + +**Dependencies:** PerformanceMonitor, PerformanceProfiler, game server + +### 4.2 `scripts/profile-server-auto.ts` +**What it does:** Auto-saving real-time performance dashboard for WSL/non-interactive terminals. + +**How to run:** +```bash +npm run profile:auto +# or: bun scripts/profile-server-auto.ts +``` + +**Techniques:** +- ANSI-colored terminal dashboard (refreshes every 1s) +- Auto-saves reports every 30s to `performance-reports/` +- Frame budget status with color coding (green/yellow/red) +- Worst frame breakdown with top operations +- Performance bar visualization +- Final comprehensive report on SIGINT (Ctrl+C) +- Saves JSON stats, text frame budget report, and performance summary + +**Dependencies:** PerformanceMonitor, PerformanceProfiler, FrameBudgetMonitor + +### 4.3 `scripts/analyze-performance.cjs` +**What it does:** Analyzes `.cpuprofile` files and generates human-readable reports. + +**How to run:** +```bash +node scripts/analyze-performance.cjs +``` + +**Techniques:** Builds call tree from V8 profile nodes, calculates self/total times, identifies hot functions (top 20 by self time, top 10 by total time), analyzes V8 engine overhead, flags slow functions (>50ms), identifies hot game paths (BotBrain, GameManager, RoundSystem, Navigation). + +### 4.4 `scripts/analyze-full-profile.cjs` +**What it does:** Complete CPU profile analysis showing top 100 functions. + +**How to run:** +```bash +node scripts/analyze-full-profile.cjs +``` + +**Techniques:** Categorizes functions as game code vs system/SDK, shows coverage percentage. + +### 4.5 `scripts/map-profile-to-code.cjs` +**What it does:** Maps V8 CPU profile functions back to game source code. + +**How to run:** +```bash +node scripts/map-profile-to-code.cjs +``` + +**Techniques:** Reads `CODEBASE_REF.md` to identify game functions, categorizes profile entries as YOUR CODE vs HYTOPIA SERVER vs UNKNOWN. Shows per-tick time contribution. Clusters unknown functions by line number ranges to identify game systems. + +### 4.6 `scripts/extract-game-performance.cjs` +**What it does:** Extracts game-specific functions from CPU profiles using CODEBASE_REF.md mapping. + +**How to run:** +```bash +node scripts/extract-game-performance.cjs +``` + +### 4.7 `scripts/generate-flamegraph.ts` +**What it does:** Generates interactive HTML flame graphs from collapsed stack format. + +**How to run:** +```bash +bun scripts/generate-flamegraph.ts [output.html] +# npm run flamegraph +``` + +**Techniques:** Parses collapsed stack format, builds tree structure, generates self-contained HTML with SVG visualization, click-to-zoom, search, tooltips. Color-coded by function name hash. + +### 4.8 `scripts/generate-flame-chart.cjs` +**What it does:** Generates text-based and HTML flame charts from performance-reports JSON stats. + +**How to run:** +```bash +node scripts/generate-flame-chart.cjs +``` + +**Techniques:** Reads latest `performance-reports/stats-*.json`, creates ASCII flame chart for terminal and HTML visualization with color-coded bars (hot/warm/cool by duration). + +### 4.9 `scripts/visualize-perf.js` +**What it does:** ASCII performance visualization and timing breakdown from stats JSON. + +**How to run:** +```bash +node scripts/visualize-perf.js +``` + +**Techniques:** Reads latest stats file, sorts by P99 latency, ASCII bar charts for avg/p99, cumulative time analysis, frame budget violation summary. + +### 4.10 `scripts/capture-baseline.sh` +**What it does:** Captures performance baseline by running the server with bots for a configurable duration. + +**How to run:** +```bash +./scripts/capture-baseline.sh [duration_seconds] [output_file] +# npm run perf:baseline +# Default: 300s (5 minutes), output to baseline.json +``` + +**Techniques:** Starts server with `AUTO_START_WITH_BOTS=true`, extracts `perf.*` events from game.log, calculates per-operation stats (avg, min, max, p50, p95, p99), saves as JSON. + +### 4.11 `scripts/compare-baselines.ts` +**What it does:** Compares two performance baselines to detect regressions or improvements. + +**How to run:** +```bash +node scripts/compare-baselines.ts [threshold%] +# npm run perf:compare before.json after.json 10 +``` + +**Techniques:** Compares avg/max/p95 for each operation, calculates percentage change, classifies as improved (>5% better), regressed (>5% worse), or stable. Exit code 1 on regression. Optional improvement threshold gate. + +### 4.12 `scripts/analyze-bottleneck.js` +**What it does:** Analyzes a specific worst-frame JSON snapshot to identify bottlenecks. + +**How to run:** +```bash +node scripts/analyze-bottleneck.js +``` + +**Techniques:** Groups operations by name, sorts by total time, creates ASCII bar chart, breaks down combat system specifically, identifies anomalies (e.g., specific bot's bomb detection taking 22ms). + +### 4.13 `scripts/add-granular-perf-tracking.sh` +**What it does:** Identifies gaps in performance instrumentation. + +**How to run:** +```bash +bash scripts/add-granular-perf-tracking.sh +``` + +**Techniques:** Greps source for `frameBudgetMonitor.measure()` calls, identifies methods with >5ms spikes that lack internal instrumentation, recommends specific measurement points. + +### 4.14 `scripts/analyze-entity-lookups.sh` +**What it does:** Audits inefficient entity lookup patterns. + +**How to run:** +```bash +bash scripts/analyze-entity-lookups.sh +``` + +**Techniques:** Counts `getAllEntities()`, `getAllPlayerEntities()`, `getEntitiesByTag()` calls across codebase, identifies bomb/player lookups that could use tags, suggests optimization phases. + +### 4.15 `scripts/analyze-latest-session.ts` +**What it does:** Analyzes performance metrics from the latest game session log. + +**How to run:** +```bash +bun scripts/analyze-latest-session.ts +``` + +**Techniques:** Extracts all `perf.*` events from `logs/latest/game.log`, calculates stats per operation (count, mean, median, min, max, p25, p75, p90, p95, p99). + +### 4.16 `scripts/comprehensive-analysis.cjs` +**What it does:** Analyzes replay files for tactical anomalies (bomb abandonment, CT defuse failures, terrorist no-plant rounds). + +**Perf-relevant:** Processes compressed replay data (gzip JSON), not primarily performance but relates to game quality analysis. + +--- + +## 5. Performance Testing Framework + +### 5.1 `scripts/test-grenade-spike.ts` +**What it does:** Automated performance regression test for grenade drop death spike. + +**How to run:** +```bash +PORT=8081 npm run perf:test:grenade +``` + +**Techniques:** +- Starts server with test hooks +- Spawns headless browser player via Puppeteer +- Buys 4 grenades, triggers death +- Extracts `perf.handleDeath` metrics from logs +- Validates against thresholds: total <50ms, weapon drop <25ms + +**Dependencies:** Puppeteer, HeadlessPlayer, ServerController, MetricsExtractor + +### 5.2 `scripts/test-grenade-performance.sh` +**What it does:** Long-running grenade performance test (3 minutes). + +**How to run:** +```bash +bash scripts/test-grenade-performance.sh +``` + +**Techniques:** Starts server with bots for 180s, analyzes death events from logs with Python, calculates avg/min/max/p95, validates thresholds. + +### 5.3 `scripts/lib/headless-player.ts` +**What it does:** Puppeteer-based headless browser player for automated testing. + +**Key API:** `connect(address)`, `selectTeam()`, `buyGrenades()`, `executeCommand()`, `screenshot()`, `getPosition()`, `isAlive()` + +**Dependencies:** puppeteer (devDependency) + +### 5.4 `scripts/lib/server-controller.ts` +**What it does:** Server lifecycle management for testing. + +**Key API:** `startServer(options)`, `stopServer(server)`, workspace port mapping (work1=8081, work2=8082, work3=8083) + +### 5.5 `scripts/lib/metrics-extractor.ts` +**What it does:** Extracts and calculates statistics from structured log files. + +**Key API:** `extractMetrics(logPath, options)`, `calculateStats(metrics)`, `formatStats(stats)` + +**Techniques:** Parses NDJSON log lines, filters by `perf.*` events, calculates count/avg/min/max/p50/p95/p99. + +### 5.6 `scripts/lib/scenario-types.ts` +**What it does:** TypeScript type definitions for YAML-based test scenarios. + +**Key types:** Scenario, ScenarioAction, ThresholdConfig, ScenarioResult, OperationResult + +### 5.7 `scenarios/grenade-death.yaml` +**What it does:** Declarative performance test scenario for grenade death spike. + +**Thresholds:** +- `perf.handleDeath`: avg <20ms, max <50ms, p95 <35ms +- `perf.weaponDrop`: avg <12ms, max <25ms, p95 <20ms +- Min 5 samples required, failure action: report_and_exit + +--- + +## 6. Python Analysis Tools (Root) + +### 6.1 `analyze-frame-budget.py` +**What it does:** Analyzes Chrome trace files for frame budget violations. + +**How to run:** +```bash +python3 analyze-frame-budget.py [trace-file.json] +``` + +**Techniques:** +- Parses Chrome trace events (ph='X' complete events with duration) +- Per-call cost analysis (not cumulative) with >16ms threshold +- Frame budget violation counting (60fps and 30fps targets) +- Weapon animation deep dive +- JavaScript game loop analysis (FunctionCall, EvaluateScript events) +- Generates `FRAME_BUDGET_ANALYSIS.md` report + +### 6.2 `analyze-recurring-blockers.py` +**What it does:** Finds RECURRING frame blockers during gameplay (excludes startup, one-offs). + +**How to run:** +```bash +python3 analyze-recurring-blockers.py [trace-file.json] +``` + +**Techniques:** +- Filters to gameplay only (skips first 5 seconds) +- Requires 3+ occurrences to qualify as "recurring" +- Impact score: frequency x average duration +- Animation frame pattern analysis (degradation over time detection) +- Periodic spike detection (checks for regular cadence) +- Full data dump with per-operation histograms +- Generates `RECURRING_BLOCKERS_FULL_DATA.md` and `recurring_blockers_raw_data.json` + +--- + +## 7. Package.json Performance Scripts + +``` +start:profile - node --cpu-prof --cpu-prof-dir=./profiles index.js +start:profile:inspect - node --inspect index.js +profile:server - node scripts/profile-server.ts +profile:enhanced - node scripts/profile-server-improved.ts +profile:auto - node scripts/profile-server-auto.ts +benchmark - bun scripts/benchmark-game.ts +benchmark:quick - bun scripts/benchmark-game.ts -d 10 +benchmark:full - bun scripts/benchmark-game.ts -d 60 -o benchmark-results.json +flamegraph - node scripts/generate-flamegraph.ts +perf:analyze - ls + tail logs/latest/performance.log +perf:test:grenade - npx ts-node scripts/test-grenade-spike.ts +perf:baseline - ./scripts/capture-baseline.sh +perf:compare - npx ts-node scripts/compare-baselines.ts +``` + +--- + +## 8. In-Game Performance Instrumentation + +### 8.1 `src/entities/bot/BotBrain.ts` - Frame Budget Instrumentation +**~30 `frameBudgetMonitor.measure()` calls** wrapping every bot decision path: +- `brain.getRoundState.{botName}`, `brain.buyPhase.{botName}` +- `brain.bombDetection.{botName}`, `brain.terroristStrategy.{botName}` +- `brain.ctRetake.{botName}`, `brain.ctRotation.{botName}` +- `brain.combatCheck.{botName}`, `brain.defaultBehavior.{botName}` +- `brain.bombRetrievalCheck.{botName}`, `brain.getNavigator.{botName}` +- `brain.bombCarrierExecute.{botName}`, `brain.supportExecute.{botName}` +- `bombDetect.getEntities.{botName}`, `bombDetect.loop.{botName}` +- `bombDetect.checkPlanted.{botName}`, `bombDetect.getPos.{botName}` + +### 8.2 `src/entities/GamePlayerEntity.ts` - Inline `performance.now()` Timing +**~50 `performance.now()` calls** with checkpoint tracking for: +- `handleDeath()` - comprehensive checkpoints: logging, healthCalc, nametag, mvpTracking, sourceTracking, audioAndEffects, healthUI, damageEffectUI, total +- Death item drops: botCacheInvalidate, audioCleanup, deathEffects, bombCancellation, broadcast, uiNotify, bombDrop, kitDrop, weaponDrop, deathEvent, inputCleanup, visibilityCheck +- Nameplate updates: timing for search, update operations +- Performance data logged via EventLogger as `perf.handleDeath` with checkpoint data + +### 8.3 `src/entities/bot/combat/BotCombatSystem.ts` - Raycast Timing +**Inline `performance.now()`** around physics raycasts with duration logging when >5ms. + +### 8.4 `src/managers/AudioManager.ts` - Audio Timing +**Inline `performance.now()`** for audio operation timing. + +--- + +## 9. Tools (`tools/`) + +### 9.1 `tools/replay-viewer/` +**What it does:** Browser-based 2D/3D replay viewer with analysis tools. + +**Perf-relevant components:** +- `js/AnalysisTools.js` - Analysis tools for replay data +- `js/BotAnomalyDetector.js` - Detects anomalous bot behavior +- `js/BotInspector.js` - Bot state inspection + +### 9.2 `src/tools/VisibilityDataCollector.ts` +**What it does:** Collects zone visibility data during gameplay to build visibility matrix. + +**Perf-relevant:** Runs raycasts during gameplay (rate-limited to `testsPerTick=50`), used to pre-compute zone visibility for optimization. + +--- + +## 10. Analysis Documents on Master + +### Root-level performance analysis docs: +- `CONSOLE_PERFORMANCE_ANALYSIS.md` - Console.log performance impact on low-end devices +- `FINAL_OPTIMIZATIONS_SUMMARY.md` - Summary of all optimizations applied +- `FRAME_SKIPPING_ANALYSIS.md` - Frame skipping patterns analysis +- `PERIODIC_STUTTER_ANALYSIS.md` - Periodic stutter investigation +- `PER_FRAME_BUDGET_KILLERS.md` - Per-frame analysis of budget violations +- `ALL_LAG_SOURCES_ACTION_PLAN.md` - Comprehensive lag source action plan +- `BASELINE_LAG_NEXT_STEPS.md` - Post-baseline lag reduction plan +- `COMPLETE_INTERVAL_AUDIT.md` - Audit of all setInterval/setTimeout calls +- `FINAL_CLIENT_SIDE_ISSUES.md` - Client-side performance issues +- `MOBILE_A14_COMPLETE_BREAKDOWN.md` - iPhone A14 performance breakdown +- `MOBILE_A14_VS_PC_6X_COMPARISON.md` - Mobile vs PC performance comparison +- `MOBILE_VIEWMODEL_PERFORMANCE_ANALYSIS.md` - Viewmodel renderer analysis +- `RECURRING_BLOCKERS_FULL_DATA.md` - Full recurring blocker data +- `WHATS_FIXED_ON_MASTER.md` - Summary of performance fixes on master +- `CLEANUP_ANALYSIS.md` - Code cleanup analysis + +### Docs directory guides: +- `docs/01-guides/performance-optimization-guide.md` - Top 10 bottlenecks, monitoring setup, root cause analysis +- `docs/01-guides/performance-testing-guide.md` - Complete testing workflow: server hooks, headless testing, baseline comparison + +### AI Memory performance folders: +- `ai-memory/feature/performance-monitoring-system-*` (4 instances: 1ead992, 4c5ae85, 695757e, 70b1968) +- `ai-memory/feature/performance-optimizations-5ac318d/` + +--- + +## 11. Saved Profile Data + +### `profiles/human-perf-20251011.log` +**What it is:** Server log from a human performance testing session on 2025-10-11. + +**Content:** Full server startup + gameplay log including performance monitoring initialization message: +``` +system.performance : Performance monitoring ENABLED + mode: automatic + spikeThreshold: 30ms + autoProfile: on spikes + reportInterval: 60s + outputDir: ./profiles +``` + +### `mobile-a14-trace.json` +**What it is:** Chrome trace file from an iPhone A14 device (used by `analyze-frame-budget.py` and `analyze-recurring-blockers.py`). + +--- + +## 12. Build-Time Optimization + +### `build-production-mode.sh` +**What it does:** Production build pipeline that strips all dev/profiling artifacts. + +**Perf-relevant removals:** +- Removes `performance-reports/`, `profiles/`, `scripts/`, `tools/`, `docs/` +- Removes all `.md` files, test files, dev configs +- Smart asset cleanup: removes unused audio/models/textures +- Creates mode-specific builds (casual vs deathmatch) + +### `scripts/optimize-map.js` +**What it does:** Removes interior blocks from the voxel map that are completely surrounded on all 6 sides. + +**Perf impact:** Reduces memory and processing for blocks never visible to players. + +### `.optimized/models/` +**What it is:** Pre-optimized GLTF model cache (regenerated with each SDK version). + +--- + +## 13. Performance-Related Configuration + +### `.env.example` +Only contains HYTOPIA API keys. No perf-specific env vars listed, but the codebase uses: +- `AUTO_START_WITH_BOTS` - Start with AI bots (for baseline capture) +- `ENABLE_TEST_HOOKS` - Enable test commands (for perf testing) +- `PORT` - Server port (workspace-specific) +- `NODE_ENV` - production/development + +### `index.ts` (entry point) +PerformanceManager configured at startup: +```typescript +performanceManager.configure({ + spikeThresholdMs: 30, // 30ms spike threshold + autoProfileOnSpike: true, + profileDurationMs: 5000, + memorySnapshotThreshold: 800, + eventLoopLagThreshold: 100, + reportIntervalMs: 60000, +}); +``` + +Periodic report generation (5-minute interval) is **DISABLED** in recent commits. + +--- + +## 14. Perf-Related Git Commit History (Recent) + +Key commits on master showing performance work: +- `932afe8c0` - perf: disable 5-minute periodic profiling interval +- `43b7d6c7a` - perf: fully disable silent PerformanceMonitor overhead +- `b6fc8934c` - perf: disable heavy performance monitoring that caused OOM crashes +- `91972d37d` - perf: use Web Audio API for low-latency kill sounds +- `4d6e2a1f6` - perf: remove 2 critical console.log calls from flashbang handler +- `d53c88039` - perf: remove 61 commented console statements from index.html +- `f7ad73521` - perf: optimize FFA scoreboard updates to reduce lag +- `dc9666220` - perf: use only ambient lighting on mobile for weapon view model +- `a805ef353` - perf: implement comprehensive mobile view model optimizations +- `1d264e14d` - perf: optimize tutorial animation size and timing +- `9f77e2c6f` - perf: refactor deathmatch podium for mobile performance +- `53fb8fe47` - perf: optimize EventLogger to skip work for filtered logs + +--- + +## 15. Summary of Techniques Used + +| Technique | Files | +|-----------|-------| +| `process.hrtime.bigint()` | PerformanceManager, PerformanceMonitor, PerformanceProfiler | +| `performance.now()` | GamePlayerEntity, BotCombatSystem, AudioManager, FrameBudgetMonitor | +| V8 Inspector CPU profiling | InspectorCpuProfiler, PerformanceManager | +| V8 heap snapshots | PerformanceManager | +| Chrome trace analysis | analyze-frame-budget.py, analyze-recurring-blockers.py | +| Flame graph generation | generate-flamegraph.ts, generate-flame-chart.cjs | +| Signal-based profiling (SIGUSR1/2) | InspectorCpuProfiler, PerformanceManager | +| Decorator instrumentation | profiling/decorators.ts | +| Frame budget tracking | FrameBudgetMonitor, BotBrain | +| Percentile calculations | PerformanceMonitor, metrics-extractor | +| Baseline comparison | capture-baseline.sh, compare-baselines.ts | +| Headless browser testing | headless-player.ts (Puppeteer) | +| YAML test scenarios | scenarios/grenade-death.yaml | +| Event loop lag detection | PerformanceManager, PerformanceMonitor | +| Memory monitoring | PerformanceManager, PerformanceMonitor | +| Entity lookup auditing | analyze-entity-lookups.sh | +| Map optimization | optimize-map.js | +| Model optimization | .optimized/ cache | +| Client FPS aggregation | ClientPerformanceReporter | +| Zone visibility optimization | ZoneVisibilityMonitor, VisibilityDataCollector | +| Distance-based LOD | NameplateOptimizationConfig | + +--- + +## 16. Known Issues with Performance Tooling + +1. **PerformanceMonitor sampling disabled** - Was causing OOM due to unbounded memory growth in timings Map +2. **PerformanceManager event loop monitoring disabled** - 100ms interval checks were themselves causing lag +3. **PerformanceManager periodic reporting disabled** - File writes every 60s added overhead +4. **FrameBudgetMonitor console logging disabled** - Console.info calls in hot path caused perf overhead +5. **Three separate monitoring singletons** (PerformanceManager, PerformanceMonitor, PerformanceProfiler) with overlapping functionality +6. **CPU approximation in PerformanceMonitor** - Bun lacks `process.cpuUsage()`, uses rough estimate +7. **Headless player tests depend on Puppeteer** - Requires Chrome/Chromium installed +8. **Profile scripts reference hardcoded file paths** (e.g., `analyze-bottleneck.js` reads specific stats file) diff --git a/ai-memory/docs/perf-amateur-notes-2026-03-05/hyfire2-perf-analysis-branches.md b/ai-memory/docs/perf-amateur-notes-2026-03-05/hyfire2-perf-analysis-branches.md new file mode 100644 index 00000000..454b29c1 --- /dev/null +++ b/ai-memory/docs/perf-amateur-notes-2026-03-05/hyfire2-perf-analysis-branches.md @@ -0,0 +1,372 @@ +# HyFire2 Performance Analysis/Docs Branches - Research Notes + +**Date**: 2026-03-05 +**Source repo**: ~/GitHub/games/hyfire2 (NeuralPixelGames/HyFire2) +**Branches analyzed**: 11 analysis/docs performance branches +**Period covered**: July-October 2025 + +--- + +## Overview + +HyFire2 is a Counter-Strike-style multiplayer FPS game built on the HYTOPIA SDK (Bun/TypeScript server, Three.js client). Over July-October 2025, extensive performance work produced 63+ curated performance PRs and 11 analysis/docs branches documenting monitoring strategies, profiling infrastructure, hotspot analysis, and optimization results. + +The game runs at 60 Hz server tick rate with a 16.67ms frame budget. Performance work focused on server-side tick spikes caused by bot AI, combat systems, death handling, entity lookups, and navigation. + +--- + +## Branch-by-Branch Analysis + +--- + +### 1. `docs-performance` + +**Purpose**: Foundational performance tooling documentation and scripts. +**Head commit**: `cfce3ac4c` ("performance") + +**Key files**: +- `PERFORMANCE_GUIDE.md` -- Comprehensive guide covering all performance tools, metrics thresholds, optimization targets, and advanced profiling techniques. +- `scripts/benchmark-game.ts` -- Automated benchmarking with scenario support (idle, 5v5 combat, 10v10 full, stress test). Collects avg/max tick time, memory, event loop lag, and per-operation percentiles (P95, P99). +- `scripts/profile-server-auto.ts` -- Auto-saving performance monitor for non-interactive terminals (WSL). Saves reports every 30s to `performance-reports/` dir. Displays frame budget, worst frame, spike patterns in color-coded terminal output. +- `scripts/generate-flamegraph.ts` -- Parses collapsed stack format into tree structure and generates interactive HTML flame graphs with zoom/pan/search. +- `test-bot-spawn.ts` -- Simple test script for bot spawn diagnostics. +- `tools/zone-visibility-viewer.html` -- HTML viewer for zone visibility data. +- `tools/log-viewer/`, `tools/replay-viewer/` -- Log and replay visualization tools. + +**Techniques**: +- Real-time server monitoring with PerformanceMonitor, PerformanceProfiler, FrameBudgetMonitor +- Automated benchmarking with configurable scenarios and JSON report output +- HTML flame graph generation from collapsed stack format +- Client FPS overlay (F3 key) +- Linux perf integration (`perf record` + FlameGraph scripts) +- V8 heap snapshots for memory profiling +- Async profiling with `perf_hooks` PerformanceObserver + +**Notable findings**: +- Baseline performance: 1.11ms avg game tick, 0.09ms bot decision, 0.10ms pathfinding +- Theoretical targets: game tick <0.5ms, bot AI <0.01ms, pathfinding <0.05ms +- Proposed advanced techniques: object pooling, spatial hash grids, SIMD operations, WebAssembly for hot paths, flow fields for pathfinding + +--- + +### 2. `analysis/performance-monitoring-strategy` + +**Purpose**: Strategy document for diagnosing production lag (CPU 10% -> 60%+ spikes causing rubber-banding). Implemented monitoring infrastructure. +**Head commit**: `c31ab1ce7` (telemetry threshold tuning) + +**Key files**: +- `PERFORMANCE_MONITORING_STRATEGY.md` -- 4-phase implementation plan: (1) enable Hytopia's Telemetry.initializeSentry with 25ms threshold, (2) add strategic performance spans to bot processing/pathfinding/combat, (3) CPU spike detection with game state snapshots at >40% CPU, (4) lightweight custom profiler (LagSpikeProfiler class). +- `PERFORMANCE_MONITORING_STATUS.md` -- Status report on what was implemented vs what works. Created `PerformanceLagDetector` service (CPU monitoring every 50ms, spike detection at 40%/60% thresholds, snapshots every 30s). Integrated Sentry v10 dual-SDK setup. Added spans to `BotBrain.think` and `ZoneNavigationService.findPath`. Problem: performance traces never appeared in Sentry despite correct span implementation -- likely Hytopia platform limitation. +- `add-granular-perf-tracking.sh` -- Bash script analyzing instrumentation gaps. Identifies methods >5ms without internal instrumentation (CTRotationStrategy.execute at 13.36ms peak, BotCombatSystem.processCombat at 14.94ms peak, TerroristStrategy.execute at 7.37ms peak). Recommends adding `frameBudgetMonitor.measure()` inside combat/navigation/strategy methods. +- `analyze-bottleneck.js` -- Node.js script analyzing worst-frame performance data from JSON stats. Parses per-operation timings, groups by category, identifies outliers. Found: `brain.bombDetection.Whiskey` took 22.65ms (62% of frame), combat operations only 6.96ms total -- bottleneck was NOT in combat/pathfinding but in bomb detection. +- `visualize-perf.js` -- ASCII flame chart and cumulative time visualization from stats JSON. Shows timing breakdown by P99 latency, cumulative time per operation, frame budget analysis. +- `generate-flame-chart.cjs` -- Generates interactive HTML flame chart from performance reports. Color-coded bars (hot/warm/cool), aggregated timing stats by category. +- `scripts/map-profile-to-code.cjs` -- Maps CPU profile (.cpuprofile) function names to game source code using CODEBASE_REF.md. Categorizes functions as game code vs Hytopia SDK vs unknown. +- `scripts/analyze-performance.cjs` -- Analyzes .cpuprofile files: builds call trees, calculates self/total times from samples, finds top 20 hot functions by self time. + +**Techniques**: +- Sentry dual-SDK setup (v10 for errors, Hytopia internal v9 for spans) +- PerformanceLagDetector service with CPU monitoring, spike detection, game state snapshots +- Hytopia Telemetry.startSpan() for bot thinking and pathfinding +- Performance stats JSON export + offline analysis scripts +- CPU profile to source code mapping + +**Notable findings**: +- Sentry performance traces do not appear in dashboard despite correct integration -- likely requires production Hytopia environment variables +- The PerformanceLagDetector works locally but Sentry trace export does not +- Bomb detection was the actual bottleneck (22.65ms), not combat/pathfinding as expected + +--- + +### 3. `analysis/code-hotspots-metrics` + +**Purpose**: Code hotspot analysis and bug pattern analysis. +**Head commit**: `0f9a175ad` (bug pattern analysis of last 1000 commits) + +**Key files**: +- `analysis-reports/bug-analysis/` -- Bug pattern analysis directory +- `PERFORMANCE_FIX_ANALYSIS.md` -- Detailed breakdown of fixable bottlenecks with before/after code and risk assessment: + 1. `_sendRecoilDataToUI` (65ms spike) -- Fix: throttle to 30fps, savings ~50ms + 2. `getCurrentRecoilOffset` (37ms spike) -- Fix: cache until state changes, savings ~30ms + 3. `findZoneForPosition` (61ms spike, 81ms total) -- Fix: spatial grid index (10-unit cells), savings ~40ms + 4. `updateTrackedFlashes` (41ms spike) -- Fix: singleton shared tracker instead of per-bot full entity scan, savings ~30ms + 5. `think()` bot AI -- Lower impact, higher risk + +**Techniques**: +- Static code analysis identifying hot functions by spike severity +- Proposed spatial grid indexing for zone lookups (O(n) -> O(1) amortized) +- Object allocation reduction (eliminate `.clone()` calls in hot paths) +- Throttling UI updates (60fps -> 30fps for recoil data) +- Singleton pattern for shared state (flash tracking) +- Git history churn analysis for bug patterns + +--- + +### 4. `docs/performance-analysis-oct-5` + +**Purpose**: October 5, 2025 performance sprint documentation. +**Head commit**: `d5e7a7412` (5-minute performance test analysis) + +**Key files**: +- `PERFORMANCE_FINDINGS.md` -- handleDeath optimization analysis. Root cause: weaponDrop (0.8-1.1ms) + deathEvent dispatch (0.7-1.5ms) accounting for entire 2-4ms death handling time. Fixes: removed JSON.parse/stringify from deathEvent, optimized grenade disposal logging. Result: 2.969ms -> 1.509ms average (49.2% faster), best case 74.3% faster. +- `scenarios/grenade-death.yaml` -- Test scenario definition for grenade death spike testing. Defines 60s duration, 10 iterations, threshold targets (handleDeath avg <20ms, max <50ms, P95 <35ms, weaponDrop avg <12ms). + +**Techniques**: +- Try-finally instrumentation blocks for granular timing measurement +- setTimeout(fn, 0) deferral for non-critical operations +- JSON serialization elimination from hot paths +- YAML-based test scenario definitions with pass/fail thresholds +- Automated testing with Puppeteer headless player support + +**Notable findings**: +- handleDeath: 49.2% improvement (2.969ms -> 1.509ms) +- Death visibility check: 99.6% improvement (1.532ms -> 0.006ms) +- Grenade disposal: 97% improvement (40-60ms -> 1.03ms) + +--- + +### 5. `docs/performance-analysis-outputs` + +**Purpose**: Comprehensive performance analysis outputs including CPU profile correlation, dependency mapping, Trello integration, and visualization. +**Head commit**: `feaea11a1` (add performance analysis outputs) + +**Key files**: +- `PERFORMANCE_ANALYSIS_SUMMARY.md` -- CPU profile analysis correlating 42,725 functions and 7.5M samples with 17 Trello cards. Top 3 critical fixes: BotTickService.tick (2.12ms spikes, affects 10 downstream issues), StoppingPowerManager.update (1.20ms spikes, affects 7 downstream), Global.checkTerroristApproaches (3.46ms spikes). Scoring system: impact (downstream fixes) + severity (spike size) + frequency. +- `PERFORMANCE_OPTIMIZATIONS_TODO.md` -- Phased optimization plan from profiling data: 192 high-variance functions, 5,080+ spikes, 99 ticks >3ms. Phase 1 low-hanging fruit: FrameBudgetMonitor sampling (90% overhead reduction), BotNavigator squared distance (60% reduction from eliminating Math.sqrt), ZoneVisibilityService zone caching (70% reduction). Phase 2: MomentumPlayerController config caching (worst offender at 33.977ms max spike, 270 spikes). +- `PERFORMANCE_DEPENDENCY_MAP.json` -- JSON dependency graph of 219 performance records with 25 root causes mapped to leaf symptoms. Largest cluster: BombEntity.completeDefusing with 42 nodes and 16 leaves. +- `PERFORMANCE_DEDUPED_TRELLO_LIST.md` -- Deduped Trello card list with spike data. BotTickService.tick: 351 spikes, 85 unique leaves, max non-idle 20.288ms. Detailed per-leaf analysis with caller context, spike counts, and percentage of cluster load. +- `perf_dependency_graph.html`, `perf_dependency_map.html` -- Interactive SVG dependency graph visualizations showing root cause -> symptom relationships. +- `SINGLE_RENDERER_ANALYSIS.md` -- Analysis of single vs dual Three.js WebGLRenderer for weapon view models. Dual renderer is safer (separate WebGL context, guaranteed to work); single renderer saves ~5% GPU but requires monkey-patching Hytopia's minified SDK. Runtime A/B switching with F9 debug panel. +- `scripts/capture-baseline.sh` -- Bash script: starts server with AUTO_START_WITH_BOTS, runs for configurable duration, extracts perf.* events from game logs, calculates statistics (avg/min/max/P50/P95/P99) per operation, outputs JSON baseline file. +- `scripts/compare-baselines.ts` -- TypeScript script comparing two baseline JSON files. Calculates avgChange/maxChange/p95Change percentages, flags regressions vs improvements, supports threshold parameter for CI pass/fail. +- `scripts/comprehensive-analysis.cjs` -- Analyzes replay files (.json.gz) from last 24 hours for tactical anomalies (bomb abandonment, CT not defusing, T not planting, stuck bots). + +**Techniques**: +- CPU profile parsing with call hierarchy construction (parent-child relationships) +- Spike detection with correlation to Trello cards +- Dependency graph construction (root causes vs symptoms) +- De-duplication analysis to identify cascading fix opportunities +- Scoring algorithm: weighted by downstream impact + spike severity + frequency +- Baseline capture and regression comparison (CI-ready) +- Replay file analysis for tactical/performance anomalies +- Interactive SVG dependency graph visualization + +**Notable findings**: +- Fixing BotTickService.tick alone should resolve 10 downstream issues +- Performance monitoring overhead (FrameBudgetMonitor itself) is 15.4% of profiled time -- ironic +- MomentumPlayerController.updateMovementConfig is the single worst offender at 33.977ms max spike + +--- + +### 6. `docs/performance-automation-playbook` + +**Purpose**: Profiling-to-fix workflow documentation. +**Head commit**: `3a2275f61` (add performance automation playbook) + +**Key files**: +- Links CLAUDE.md to performance automation playbook for AI agent consistency +- `ai-memory/` directory contains memory files from many performance fix branches: + - `fix/punch-offset-performance-*` + - `fix/recoil-ui-performance-*` + - `fix/tracked-flashes-performance-*` + - `fix/remove-unused-performance-components-*` + - `fix/knife-visibility-swap-*` + - `perf/` directory + +**Techniques**: +- Standardized profiling-to-fix workflow documentation +- AI memory files tracking progress on individual performance fixes +- Branch-isolated memory for context persistence across sessions + +--- + +### 7. `docs/performance-monitoring-ultrathink-analysis` + +**Purpose**: Deep analysis of the performance monitoring system itself, plus enhancement proposals for industry-standard format exports (Speedscope, Chrome Trace, Perfetto). +**Head commit**: `a6d5312e0` (comprehensive performance monitoring documentation) + +**Key files**: +- `ULTRATHINK_PERFORMANCE_ANALYSIS.md` (93KB) -- Complete technical deep-dive. Smart spike aggregation (groups `player.takeDamage.Yankee` + `.Echo` into `player.takeDamage` category with median/outlier detection). Tree filtering (filters <0.5ms operations, recursive significance check). Granular tracking (broke 6.8ms takeDamage black box into scoreboard 4.2ms + lookup 1.4ms + audio 0.6ms + UI 0.3ms). Fixed negative self-time display bug. +- `PERFORMANCE_SYSTEM_REALITY_CHECK.md` -- Debunks "9-layer architecture" claim. Reality: 4 separate loosely-connected systems (FrameBudgetMonitor, SessionSpikeTracker, PerformanceMonitor, PerformanceMetricsService) with only 5 integration points. All systems start automatically, data stays in RAM, F9 overlay is the only UI. +- `CPU_AND_MEMORY_MONITORING.md` -- Audit: memory tracking is real (process.memoryUsage()), CPU tracking is FAKE (hardcoded 0.7/0.3 multipliers because Bun lacks process.cpuUsage()). Memory shown only in exported reports, not in F9 overlay. Recommends adding memory to F9 UI. +- `PERFORMANCE_TRACKING_HIERARCHY.md` -- Complete map of all 82 unique `frameBudgetMonitor.measure()` tracking points across the codebase. 3-4 level hierarchy: game manager ops -> bot AI (deepest: bot.decision -> brain.combatCheck -> combat.findTarget -> combat.visibilityCheck). Documents every tracked operation with category and nesting. +- `GRANULAR_TRACKING_STATUS.md` -- Implementation status: added granular tracking to weapon shooting (5 sub-operations in Gun._shootProjectile), projectile physics (4 sub-operations in ProjectileEntity.fire), weapon pickup (4 sub-operations), bomb pickup (4 sub-operations). Skipped gm.handleTeamSelect (870 lines, too complex). +- `ADD_GRANULAR_TRACKING.md` -- Implementation guide for adding nested frameBudgetMonitor.measure() calls. +- `EXECUTIVE_SUMMARY.md` -- Research overview for Speedscope/Chrome Trace/Perfetto export. Current system is 95% complete. Missing only standard format exports. Measured overhead: 0.43ms/frame (2.6% of 16.66ms budget). Speedscope: 2-4 hours to implement. Chrome Trace: 6-10 hours. Proposes UnifiedProfiler, ProfileDataBuffer (ring buffer, 60s window, <100MB), PerformanceExporter, and enhanced bottleneck detectors. + +**Techniques**: +- Smart spike aggregation with dynamic suffix stripping (player names, weapon names, bot names) +- Outlier detection (>2x median threshold) +- Recursive tree filtering with significance checks +- Hierarchical call tree with self-time calculation +- Proposed: Chrome Trace Event Format export, Speedscope JSON export, adaptive sampling (3 modes: always/adaptive/on-spike) +- Ring buffer data management (<100MB, 60s window) + +**Notable findings**: +- Performance monitoring system is 4 real components, not 9 as previously documented +- CPU monitoring is completely fake (Bun doesn't expose process.cpuUsage()) +- Monitoring overhead is 15.4% of profiled time (FrameBudgetMonitor 6.59%, SpikeDetector start/end 8.81%) +- 82 unique tracking points in codebase + +--- + +### 8. `docs/performance-testing-infrastructure` + +**Purpose**: Testing infrastructure analysis and roadmap. +**Head commit**: `7d184799a` (comprehensive testing infrastructure analysis) + +**Key files**: +- `PERFORMANCE_FINDINGS.md` -- Same handleDeath analysis as branch #4 (Oct 5). Documents the 49.2% death handling improvement. + +**Techniques**: +- Documents the 3-layer existing monitoring system +- Identifies critical gaps: no headless browser automation, no regression framework, no scenario definitions, Bun vs Node inconsistency +- 4-phase roadmap: (1) Puppeteer + test hooks, (2) grenade fix validation, (3) automated test suite, (4) CI/CD integration + +--- + +### 9. `docs/perf-hotspots-20251004` + +**Purpose**: October 4, 2025 hotspot baseline capture. +**Head commit**: `5963a9e86` (summarize top performance hotspots) + +**Key files**: +- `PERFORMANCE_FINDINGS.md` -- Same handleDeath analysis as other branches. + +**Notable findings**: +- Top 10 HyFire hotspots by self time (from 10-minute AUTO_START_WITH_BOTS run): + 1. BotCoverServiceV2.log -- 369.81ms (10.75%) + 2. WalkingRunPlayerController.tickWithPlayerInput -- 314.78ms (9.15%) + 3. BotTickService.tick -- 264.67ms (7.70%) + 4. FrameBudgetMonitor.measure -- 226.77ms (6.59%) -- monitoring overhead + 5. SpikeDetector.endOperation -- 159.32ms (4.63%) -- monitoring overhead + 6. ZoneVisibilityService.findZoneForPosition -- 151.82ms (4.41%) + 7. SpikeDetector.startOperation -- 143.68ms (4.18%) -- monitoring overhead + 8. TerroristBombCarrierStrategy.execute -- 96.79ms (2.81%) + 9. StoppingPowerManager.update -- 92.72ms (2.70%) + 10. BB.think -- 81.37ms (2.37%) +- Monitoring overhead (#4, #5, #7) = 15.4% of total profiled time + +--- + +### 10. `docs/top-10-performance-analysis` + +**Purpose**: Real player session analysis with top 10 spike detection and fixes. +**Head commit**: `12864b831` (cache PlayerEffectsController to eliminate 7.15ms audio spike) + +**Key files**: +- `PERFORMANCE_FINDINGS.md` -- Same handleDeath analysis. +- `scenarios/grenade-death.yaml` -- Same scenario file as branch #4. + +**Techniques**: +- 10-minute real player session analysis +- 6,900 instrumented events analyzed +- Top issues identified: takeDamage (62.4ms total), damageEffectUI (26.7ms), handleDeath (23.6ms) +- 6 bad spikes >3ms (10.5% of damage events) +- Per-tick raycast caching with bidirectional optimization (A->B also caches B->A) +- PlayerEffectsController caching to eliminate 7.15ms audio spike + +**Notable findings**: +- 9 PRs merged on Oct 5 alone during performance sprint +- Audio spike: 99.9% reduction (7.15ms -> <0.01ms) +- Death visibility: 99.6% improvement (1.532ms -> 0.006ms) +- Raycast cache: 39% reduction (4,062 raycasts saved, bidirectional caching) + +--- + +### 11. `analysis/performance-work-3mo` + +**Purpose**: Comprehensive 3-month retrospective of all performance work (July-October 2025). +**Head commit**: `233c73ad0` (properly curated 63 performance PRs) + +**Key files**: +- `PERFORMANCE_WORK_EXECUTIVE_SUMMARY.md` -- 26 unmerged performance PRs representing 300+ hours of work. Top 5 critical PRs: (1) PR #1473 memory leak fixes, (2) PR #1406 remove sync file operations (5-second player join freeze), (3) PR #1184 bot navigation caching (8.8ms -> <1ms, 53% frame budget freed), (4) PR #1474 disable smoke animation spam, (5) PR #1477 automated performance testing with Puppeteer. +- `CURATED_PERFORMANCE_PRS_2025.md` -- 63 properly curated performance PRs across 4 months. Categories: spike elimination (26 PRs), caching optimizations (15 PRs), monitoring/infrastructure (8 PRs), asset/memory optimization (6 PRs), load distribution/async (5 PRs), log spam reduction (3 PRs). Peak days: Oct 5 (9 PRs), Sep 1 (8 PRs), Aug 16 (8 PRs), Aug 14 (6 PRs). +- `PERFORMANCE_PRS_LAST_3_MONTHS.md` -- Detailed breakdown of 21 PRs (11 merged, 10 open) from the October sprint. Documents per-PR metrics, test infrastructure, methodology. +- `UNMERGED_PERFORMANCE_WORK_ANALYSIS.md` -- Deep analysis of 26 unmerged PRs across 3 categories: monitoring infrastructure (13 PRs), backend optimizations (8 PRs), frontend/system optimizations (5 PRs). PR #1477 automated testing: headless Puppeteer, spike detection, baseline comparison, CI/CD ready (`npm run test:performance`, `npm run test:performance:baseline`, `npm run test:performance:compare`). +- `PERFORMANCE_PR_ACTION_CHECKLIST.md` -- Week-by-week action plan for merging critical PRs with testing requirements per PR. +- `PERFORMANCE_PRS_DATA.json` -- JSON data of all performance PRs. +- `PERFORMANCE_ANALYSIS_INDEX.md` -- Index/navigation document. + +**Notable findings (quantified improvements)**: +- Death visibility: 99.6% faster (1.5ms -> 0.006ms) +- Grenade disposal: 97% faster (40-60ms -> 1.03ms) +- Stopping power cache: 93% faster (3.45ms -> 0.24ms) +- MVP tracking: 93% faster in 10v10 (0.7ms -> <0.05ms) +- Entity lookups: ~90% iteration reduction +- Debug logging removal: 90% overhead eliminated +- Team elimination check: 80% faster (0.98ms -> 0.2ms) +- Raycast operations: ~80% reduction with zone visibility +- Map draw calls: 70% reduction (1,597 -> 487) +- handleDeath: 49.2% faster (3ms -> 1.5ms) +- Weapon drops: 42.8% faster +- Bot combat raycasts: 39% saved (4,062 fewer) +- Weapon attack: 35% faster (4.84ms -> 3.13ms) +- Log spam: 99.7% reduction (3,600/min -> 12/min) +- Recoil UI payload: 80% smaller (150 -> 30 bytes) +- Overall: average game tick went from 10ms+ to 1.11ms + +--- + +## Cross-Branch Patterns and Themes + +### Performance Monitoring Architecture (4 real layers) +1. **FrameBudgetMonitor** -- Instruments code with `.measure(name, fn)` calls, hierarchical call trees, spike detection >1ms. 82 unique tracking points across codebase. +2. **SessionSpikeTracker** -- All-time worst 20 spikes, recent spikes (15s window), pattern aggregation with log correlation. +3. **PerformanceMonitor** -- System metrics (memory real, CPU fake via Bun limitation), 1s sampling, 600-sample history (10 min). +4. **PerformanceMetricsService** -- Aggregates all other systems, sends to F9 UI overlay, supports JSON/CSV/Markdown/HTML export. + +### Key Scripts and Tools +| Script | Purpose | +|--------|---------| +| `scripts/benchmark-game.ts` | Automated benchmarking with scenarios | +| `scripts/profile-server-auto.ts` | Auto-saving profiler for WSL | +| `scripts/generate-flamegraph.ts` | HTML flame graph generation | +| `scripts/capture-baseline.sh` | Capture performance baseline JSON | +| `scripts/compare-baselines.ts` | Compare baselines for CI regression | +| `scripts/analyze-performance.cjs` | CPU profile (.cpuprofile) analysis | +| `scripts/map-profile-to-code.cjs` | Map profile functions to source | +| `scripts/comprehensive-analysis.cjs` | Replay file tactical analysis | +| `add-granular-perf-tracking.sh` | Instrumentation gap analysis | +| `analyze-bottleneck.js` | Worst-frame bottleneck analysis | +| `visualize-perf.js` | ASCII flame chart + cumulative time | +| `generate-flame-chart.cjs` | Interactive HTML flame chart | + +### Optimization Techniques Used +1. **Caching** -- Most common technique (15 PRs). Zone lookups, stopping power, SceneUI references, debug UI config, recoil offsets, input state, bomb entity lookups, alive players list. +2. **Deferral** -- setTimeout(fn, 0) for non-blocking operations: damage UI, weapon drops, MVP tracking, grenade disposal. +3. **Throttling** -- Rate-limit frequent operations: recoil UI to 20-30fps, bot navigator warnings to 1/5s. +4. **Spatial indexing** -- Grid-based zone lookups replacing linear scan (O(n) -> O(1)). +5. **Squared distance** -- Eliminate Math.sqrt() in distance comparisons. +6. **Object allocation reduction** -- Avoid .clone(), cache computed values, pre-allocate. +7. **Log spam elimination** -- Remove debug logging from hot paths, rate-limit warnings. +8. **Bidirectional caching** -- Raycast A->B also caches B->A result. +9. **Singleton shared state** -- Replace per-bot entity scans with shared tracker. +10. **Async conversion** -- Replace synchronous file I/O with startup-time loading + memory cache. + +### Testing Infrastructure +- **Headless browser automation**: Puppeteer for automated performance testing +- **Test hooks**: `ENABLE_TEST_HOOKS=true`, `AUTO_START_WITH_BOTS=true` +- **Scenario definitions**: YAML files with duration, iterations, metric thresholds, pass/fail criteria +- **Baseline comparison**: JSON baseline capture + regression detection for CI/CD +- **npm commands**: `npm run test:performance`, `npm run test:performance:baseline`, `npm run test:performance:compare` +- **F9 overlay**: Real-time performance monitoring UI with export (JSON, CSV, Markdown, Speedscope, flame chart HTML) + +### Known Limitations +1. CPU monitoring is fake (Bun lacks process.cpuUsage()) +2. Sentry performance traces do not appear in dashboard (Hytopia platform limitation) +3. Performance monitoring overhead is 15.4% of profiled time (FrameBudgetMonitor + SpikeDetector) +4. 26 performance PRs remained unmerged as of Oct 2025 despite being production-ready +5. Proposed Speedscope/Chrome Trace exports were never fully implemented (research complete, code examples ready) + +--- + +## Summary Statistics + +- **Total performance PRs (curated)**: 63 +- **Unmerged PRs (as of Oct 2025)**: 26 +- **Estimated development time**: 300+ hours +- **Unique tracking points**: 82 frameBudgetMonitor.measure() calls +- **Peak sprint**: 9 PRs merged on October 5, 2025 +- **Overall improvement**: avg game tick from 10ms+ to 1.11ms +- **Frame budget target**: 16.67ms @ 60 FPS (game now uses ~6.7% of budget) diff --git a/ai-memory/docs/perf-amateur-notes-2026-03-05/hyfire2-perf-fix-branches.md b/ai-memory/docs/perf-amateur-notes-2026-03-05/hyfire2-perf-fix-branches.md new file mode 100644 index 00000000..77411166 --- /dev/null +++ b/ai-memory/docs/perf-amateur-notes-2026-03-05/hyfire2-perf-fix-branches.md @@ -0,0 +1,345 @@ +# HyFire2 Performance Branch Research + +Research date: 2026-03-05 +Source repo: ~/GitHub/games/hyfire2 +All perf/* branches merged to master. fix/* performance branches: some merged, some open. + +--- + +## PERF/* BRANCHES (All Merged) + +### 1. perf/cache-sceneui-takedamage (PR #1446) +**Problem:** `updateTeammateNameTagHealth()` called `sceneUIManager.getAllSceneUIs()` on every damage event, iterating ALL SceneUIs in the world just to find the 1-4 nametags attached to the damaged player. Combined with takeDamage hot path, this was causing multi-ms spikes per hit. + +**Fix:** +- Cache array of SceneUIs attached to each player (`_teammateNameTagSceneUIs: SceneUI[]`) +- First call: search all SceneUIs, build cache. Subsequent calls: use cached array directly. +- Added full performance instrumentation to `takeDamage()` with checkpoint timing (logging, healthCalc, nametag, mvpTracking, sourceTracking, audioAndEffects, healthUI, damageEffectUI) +- Same instrumentation added to `handleDeath()` (init, botCacheInvalidate, audioCleanup, deathEffects, bombCancellation, broadcast, uiNotify, itemDrop) + +**Profiling pattern:** `performance.now()` checkpoints at each section boundary, logged as `perfCheckpoints` object with `.toFixed(3)` values. + +**Results from PERFORMANCE_FINDINGS.md:** +- Death handling: 3ms avg -> 1.5ms avg (50% improvement) +- weaponDrop bottleneck: ~1ms (JSON.stringify for deathEvent + grenade disposal logging) +- Removed `JSON.parse(JSON.stringify())` from deathEvent dispatch, saved ~0.5ms +- Optimized grenade disposal logging (batch instead of per-grenade), saved ~0.1ms + +--- + +### 2. perf/stopping-power-optimization (PR #1451) +**Problem:** `StoppingPowerManager` was loaded via `require()` on every tick and every damage event. Module resolution is not free. + +**Fix:** +- Cached `require()` result in module-level variable with lazy initialization pattern: + ```typescript + let stoppingPowerManagerCache: StoppingPowerManagerType | null = null; + const getStoppingPowerManager = (): StoppingPowerManagerType => { + if (!stoppingPowerManagerCache) { + const { StoppingPowerManager } = require('./managers/StoppingPowerManager'); + stoppingPowerManagerCache = StoppingPowerManager.getInstance(); + } + return stoppingPowerManagerCache; + }; + ``` +- Applied in GameManager tick handler AND GamePlayerEntity damage handler +- Added early exit in `StoppingPowerManager.update()` when no active effects: `if (this.activeEffects.size === 0 && this.cumulativeHits.size === 0) return;` + +**Key pattern:** Cache dynamic `require()` calls at module scope. Check empty collections before doing work. + +--- + +### 3. perf/reduce-weapon-fire-spike (PR #1457) +**Problem:** Multiple bots firing simultaneously caused massive frame spikes from synchronous projectile creation (physics body creation is expensive in Rapier3D). + +**Fixes:** +1. **Deferred projectile creation:** Wrapped `ProjectileEntity` creation + spawn + fire in `setTimeout(() => { ... }, 0)` to spread physics body creation across ticks +2. **Removed redundant planting/defusing checks** from `_canShoot()` (already done in `shoot()`) +3. **Throttled recoil UI updates** to every 50ms (20/sec max) instead of every tick +4. **Skip zero-recoil updates:** Early return when `Math.abs(recoilOffset.x) < 0.0001 && Math.abs(recoilOffset.y) < 0.0001` + +**Key pattern:** `setTimeout(fn, 0)` to defer expensive synchronous work to next tick. Reduces spike severity at cost of 1-frame latency (imperceptible). + +--- + +### 4. perf/reduce-bot-combat-spike (PR #1458) +**Problem:** Multiple bots independently raycasting to check visibility against the SAME targets on the same tick. 5v5 = up to 25 raycasts/tick when all bots in combat. Profiling showed 120ms+ spikes from `BotCombatSystem.validateTargetVisibility`. + +**Fix:** Created `RaycastCacheService` singleton: +- Per-tick cache (Map keyed by `${botId}_${targetId}`) +- Cleared every tick via `onTick()` called from GameManager tick handler +- **Bidirectional caching:** If A can see B, cache both A->B and B->A (visibility is symmetric along a raycast line) +- Also added zone-based pre-check in `BombVisibilityService`: `ZoneVisibilityService.shouldCheckVisibility()` before expensive raycast + +**Results:** 39% overall raycast reduction. Peak 59.2% during intense combat. Scales better with more bots. + +**Key pattern:** Per-tick cache with bidirectional key storage. Clear cache at tick boundary. + +--- + +### 5. perf/fix-damage-ui-spikes (PR #1462) +**Problem:** Damage audio playback and hit effects (blood particles, damage direction UI) were synchronous in the takeDamage hot path. When multiple players take damage simultaneously, these stack. + +**Fix:** Deferred non-critical work to next tick using `setTimeout(() => { ... }, 0)`: +- Damage audio playback +- Blood hit effect creation (PlayerEffectsController) +- Damage direction UI update to client + +**Key pattern:** Same `setTimeout(fn, 0)` deferral pattern for non-gameplay-critical visual/audio effects. + +--- + +### 6. perf/optimize-death-visibility-check (PR #1463) +**Problem:** Death handling did synchronous physics updates (disable collisions, move player below map) which blocked the main thread for ~1.5ms. + +**Fixes:** +1. **Deferred physics updates** on death: collision group clearing + position teleport wrapped in `setTimeout(() => { ... }, 0)` +2. **Cached `require()` for DeathCameraSystem** using same module-level lazy pattern as stopping power + +**Key pattern:** `setTimeout(fn, 0)` for physics state changes that don't need to be frame-perfect. Cache dynamic imports. + +--- + +### 7. perf/investigate-weapon-drop (PR #1465) +**Problem:** Dropping weapons/grenades on death was synchronous and caused spikes, especially with multiple grenades. + +**Fix:** Rewrote item dropping to be sequential-deferred: +- Collect all items to drop (best weapon + grenades) into an array +- Drop them one-per-tick using recursive `setTimeout`: + ```typescript + const dropItemsSequentially = (items, tickIndex = 0) => { + if (tickIndex >= items.length) return; + setTimeout(() => { + // drop items[tickIndex] + dropItemsSequentially(items, tickIndex + 1); + }, 0); + }; + ``` + +**Key pattern:** Sequential deferred processing for batch operations that would otherwise spike a single tick. + +--- + +### 8. perf/optimize-mvp-tracking (PR #1469) +**Problem:** MVP damage tracking (scoreboard updates, XP tracking) was synchronous in takeDamage hot path. Also did expensive `gameManager.getPlayer(killerId)` lookup to check if attacker was a bot. + +**Fixes:** +1. **Deferred MVP tracking** to next tick via `setTimeout(fn, 0)` +2. **Replaced expensive bot check:** Instead of `gameManager.getPlayer(killerId) -> attackerEntity.isBot()`, used simple string prefix check: `killerId.startsWith('bot_')` + +**Key pattern:** Replace expensive lookups with convention-based shortcuts when possible. Defer non-critical tracking. + +--- + +### 9. perf/remove-damage-debug-logging (PR #1470) +**Problem:** Extensive debug logging in the damage source tracking hot path was causing 4ms+ spikes. Logs included `Array.from(gameManager.players.keys())` and multiple `eventLogger.debug/info/warn` calls per hit. + +**Fix:** Removed all debug/info/warn logging from the damage source tracking section and stopping power application section. Kept only error-level logging. + +**Key insight:** In a 60Hz game loop, even "debug" logging has real cost. String interpolation, object creation for log context, and the logger's own overhead add up when called 10+ times per damage event. + +--- + +### 10. perf/rate-limit-bot-navigator-warnings (PR #1471) +**Problem:** Bot navigator warnings for "cannot navigate" (dead bot) and "position access error" fired every tick per affected bot, creating log spam. + +**Fix:** Added rate limiting with timestamps: +```typescript +private lastCannotNavigateTime: number = 0; +private readonly WARNING_RATE_LIMIT_MS = 5000; + +if (now - this.lastCannotNavigateTime > this.WARNING_RATE_LIMIT_MS) { + eventLogger.warn(...); + this.lastCannotNavigateTime = now; +} +``` + +**Key pattern:** Time-based rate limiting for warnings that can fire every tick. + +--- + +### 11. perf/remove-grenade-logging-overhead (PR #1515) +**Problem:** Grenade attack attempt logging was extremely verbose, firing on every left-click when holding a grenade. Included pouchSize, activeGrenadeIndex, cooldown calculations. Cooldown UI feedback was also sent on every blocked click. + +**Fix:** Removed all verbose logging from grenade attack path. Removed cooldown UI feedback messages. Kept only the error-level log for failed attacks. + +**Savings:** ~44 lines of logging code removed from the per-click hot path. + +--- + +### 12. perf/optimize-recoil-offset-calls (PR #1255) +**Problem:** `RecoilSystem.getCurrentRecoilOffset()` called every tick per player (and in `_canShoot()`), always cloning the vector and applying recovery calculation. + +**Fixes:** +1. **Added frame-level cache** to RecoilSystem: + ```typescript + private cachedOffset: Vector3 | null = null; + private lastCacheTime: number = 0; + private readonly CACHE_DURATION_MS = 16; // 1 frame at 60fps + ``` +2. Cache invalidated on `addRecoil()` and `reset()` +3. Skip recoil UI updates when offset is near-zero + +**Key pattern:** Frame-duration caching for values computed multiple times per tick. + +--- + +### 13. perf/web-audio-kill-sounds (PR #1678) +**Problem:** Kill sounds used `new Audio()` + `cloneNode()` (HTML5 Audio API), which has high latency and creates DOM elements. + +**Fix:** Rewrote to use Web Audio API: +- Create `AudioContext` on first user interaction (autoplay policy compliance) +- Pre-decode all audio files into `AudioBuffer` objects on init +- On kill: create lightweight `BufferSource` node, connect to gain node, `source.start(0)` +- Latency: ~5-20ms (vs ~100-200ms for HTML5 Audio) +- No DOM element creation, no cloneNode overhead + +**Key pattern:** Pre-decode audio into AudioBuffers for instant playback. BufferSource nodes are designed for single use and are lightweight. + +--- + +### 14. perf/add-bot-combat-instrumentation (Open, not merged) +**What it does:** Adds `performance.now()` timing to two bot combat methods: +- `BotCombatSystem` angle-based reaction modifier calculation +- `shouldAllowMovementDuringCombat()` check + +Pure instrumentation branch, no optimization. Logged as `perfMs` in existing event logger calls. + +--- + +### 15. perf/bomb-retrieval-optimization (Open, not merged) +**Problem:** Bomb retrieval bot selection was slow due to: +1. Awaited logging calls (`await eventLogger.debug(...)`) blocking the selection loop +2. `Math.sqrt()` for distance calculations when only relative comparison needed +3. No position/distance caching + +**Fixes:** +1. **Fire-and-forget logging:** Changed `await eventLogger.debug(...)` to `eventLogger.debug(...).catch(() => {})` throughout BotNavigator and BotGameService +2. **Squared distance comparison:** Replaced `Math.sqrt(dx*dx + dz*dz)` with raw `dx*dx + dz*dz` for scoring (sqrt is monotonic, so comparison order preserved) +3. **Performance instrumentation** throughout entire call chain with timing for each phase + +**Key pattern:** Never `await` logging in hot paths. Use squared distance for comparisons. + +--- + +### 16. perf/optimize-bot-updates (Open, not merged) +**Problem:** `TerroristSupportStrategy.execute()` taking 3.2ms per bot, with `brain.supportExecute` at 2.2ms (95% self-time). Root causes: +- `Array.from(assignedHoldPositions.values()).includes()` = O(n^2) +- `findBombCarrier()` cache too short (100ms) +- `getBots()` iterated frequently + +**Fixes:** +1. **O(n^2) -> O(1):** Replaced `Array.from().includes()` with `new Set().has()` for hold position filtering +2. **Bomb carrier cache extended:** 100ms -> 500ms (carrier rarely changes) +3. **Entry fragger cache invalidation:** Added `clearEntryFraggerCache()` called when roles change (support promoted to entry fragger) +4. **Comprehensive performance instrumentation** with labeled checkpoints per objective phase +5. **Build position-to-bot map once** instead of `Array.from().some()` per position in patrol logic + +**Key pattern:** Use Set for O(1) lookups instead of Array.includes(). Extend cache durations with proper invalidation. + +--- + +### 17. perf/optimize-logging-overhead (Open, not merged) +**Problem:** `BotCoverServiceV2` logged extensively even in production. `EventLogger` always ran `Promise.all([logToConsole, logToFile])` even when both were disabled. + +**Fixes:** +1. **Environment-gated logging:** Added `BOT_COVER_LOGS_ENABLED` env var check; skip all info/debug logging unless enabled +2. **Early exit in EventLogger.log():** Check if any output targets are enabled BEFORE constructing log entry: + ```typescript + const shouldLogToConsole = this.config.console.enabled && this.shouldLog(level, 'console'); + const shouldLogToFile = this.config.file.enabled && this.shouldLog(level, 'file'); + if (!shouldLogToConsole && !shouldLogToFile && !shouldNotifySubscribers) return; + ``` +3. **Conditional Promise.all:** Only create promise array for enabled outputs + +**Key pattern:** Early exit before constructing log objects. Gate verbose logging behind env vars. + +--- + +## FIX/* PERFORMANCE BRANCHES + +### 18. fix/10v10-performance-analysis (Open, not merged) +**Problem:** 10v10 mode (20 players) caused severe performance degradation. Root cause: O(n^2) broadcast -- every player's state sent to every other player every tick. + +**Fixes:** +1. **DistanceCullingService:** Skip updates for players beyond max distance (60 units default, 40 in perf mode). Different update rates by distance tier: + - Close (<20): every tick + - Medium (<40): every 3 ticks + - Far (<60): every 6 ticks +2. **OptimizedBroadcastService:** Batched updates with priority scoring (distance + team + armed). Limits max players per update (12 in perf mode, 20 default). +3. **Accuracy data dedup:** Only send UI updates when JSON.stringify(data) changes +4. **Teammate nametag SceneUIs disabled** (load calls commented out) for testing + +**Key pattern:** Distance-based LOD for network updates. Tiered update rates. Dedup before send. + +--- + +### 19. fix/teammate-ui-performance-lag (Open, not merged) +**Problem:** SceneUI-based teammate nametags were a massive GPU/CPU bottleneck: +- Each SceneUI creates a DOM layer with CSS compositing +- `text-shadow` on nametags caused per-frame GPU repaints +- Duplicate SceneUIs created (one per viewer per teammate = n^2 SceneUIs) +- `getAllSceneUIs()` iterated on every health update + +**Fix progression (11 commits, iterative):** +1. Removed `text-shadow` (GPU repaint trigger) +2. Removed forced GPU layer (`will-change`, `transform: translateZ(0)`) +3. Eliminated duplicate SceneUI creation (50% reduction) +4. Added memoization + visibility optimization +5. **Final solution:** Replaced all SceneUI nametags with screen-space UI. Server sends `teammate_positions` data every 3 ticks via `player.ui.sendData()`, client renders nametags in HTML overlay using camera projection. +6. Reverted intermediate approaches that didn't work + +**Key insight:** SceneUI (world-space HTML overlay per entity) is expensive at scale. Screen-space UI (single HTML layer with projected positions) is far cheaper. + +--- + +### 20. fix/memory-optimizations (Open, not merged) +**Problem:** Chrome heap timeline showed 12-30MB garbage collected every 5 seconds. 1,331 Array references, 372 Set references in heap dump. Mouse skipping and micro-stutters from GC pauses. + +**Root causes identified:** +1. `BotManager.getBots()` returned `[...this._bots]` (new array copy) on every call, called 10+ times/sec +2. A* pathfinding created `new Map()` + `new Set()` per path request. 10 bots x 10 ticks/sec = 300 Maps/Sets per second +3. Player filtering via `Array.from(map.values()).filter()` creating 2 arrays per call +4. Blood particle test spawning particles every 5 seconds during warmup + +**Fixes:** +1. **BotManager.getBots():** Return `readonly` reference to internal array (zero allocation) +2. **PathfindingCache:** Pre-allocated pool of 20 Maps and 20 Sets. A* acquires from pool, uses, releases back. Path results cached for 30 seconds with LRU eviction. +3. **PlayerCache:** Singleton that pre-categorizes players by team/alive/human/bot in single pass. Reuses same array instances (`array.length = 0` + push). Returns `readonly` references. +4. **Disabled blood particle test** during warmup + +**MEMORY_OPTIMIZATION_FINDINGS.md documents:** Bun/JSC Rust aliasing rules that can crash the server if you do `entity.position.x = 5; entity.position.y = 10;` (multiple mutable borrows). Must copy position first. + +**Key patterns:** Object pooling for hot-path allocations. Return readonly references instead of copies. Pre-categorize collections in single pass. `array.length = 0` to reuse array identity. + +--- + +## CROSS-CUTTING PATTERNS SUMMARY + +### Profiling Techniques Used +1. **Checkpoint timing:** `const perfStart = performance.now(); ... perfCheckpoints.name = performance.now() - perfStart;` +2. **Conditional logging:** Only log when time exceeds threshold (0.1ms, 0.3ms, 0.5ms) +3. **Per-tick cache stats:** Hit/miss counters with periodic reporting (every 60 ticks) +4. **Chrome heap timeline analysis:** For memory/GC issues (identified 1331 Array refs, 372 Set refs) + +### Top Optimization Patterns (Ranked by Impact) +1. **setTimeout(fn, 0) deferral** -- Used in 5+ branches. Spreads synchronous work across ticks. Best for: audio, effects, physics state, item drops, MVP tracking. Cost: 1 frame latency (imperceptible). +2. **Per-tick raycast cache** -- 39% raycast reduction with bidirectional keying. Scales with player count. +3. **Object/collection pooling** -- PathfindingCache pools Maps/Sets. PlayerCache reuses arrays. Eliminated 300+ allocations/sec. +4. **Replace SceneUI with screen-space UI** -- n^2 SceneUI DOM layers replaced with single HTML overlay + projected positions. +5. **Cache dynamic require()** -- Module-level lazy singleton pattern. Eliminates module resolution on every call. +6. **Set-based lookups** -- Replace `Array.from(map.values()).includes()` (O(n)) with `new Set(map.values()).has()` (O(1)). +7. **Squared distance comparison** -- Skip Math.sqrt() when only comparing relative distances. +8. **Fire-and-forget logging** -- `.catch(() => {})` instead of `await` for log calls in hot paths. +9. **Rate-limited warnings** -- Timestamp-based throttle for per-tick warnings. +10. **Remove debug logging from hot paths** -- Even "debug" level has real cost (string creation, object allocation, logger overhead). + +### Recurring Anti-Patterns Found +- `await eventLogger.debug(...)` in loops (blocks iteration on log I/O) +- `Array.from(map.values()).includes()` (O(n) scan, creates intermediate array) +- `[...this._bots]` on every getter call (constant array allocation) +- `require('module')` inside tick/damage handlers (module resolution overhead) +- `JSON.parse(JSON.stringify(obj))` for deep copy (expensive serialization roundtrip) +- `sceneUIManager.getAllSceneUIs()` to find specific UI elements (full scan) +- Verbose logging in per-damage, per-tick, per-grenade paths +- Creating new Map/Set in A* pathfinding (GC pressure at 300/sec) diff --git a/ai-memory/docs/perf-amateur-notes-2026-03-05/hytopia-sdk-perf-systems.md b/ai-memory/docs/perf-amateur-notes-2026-03-05/hytopia-sdk-perf-systems.md new file mode 100644 index 00000000..ebf4f4e7 --- /dev/null +++ b/ai-memory/docs/perf-amateur-notes-2026-03-05/hytopia-sdk-perf-systems.md @@ -0,0 +1,410 @@ +# HYTOPIA SDK/Engine Performance Infrastructure Deep-Dive + +Date: 2026-03-05 +Codebase: /home/ab/GitHub/hytopia/work1 + +--- + +## 1. SERVER-SIDE PERFORMANCE SYSTEMS + +### 1.1 Telemetry (Sentry-based span profiling) + +**File:** `server/src/metrics/Telemetry.ts` + +The primary server profiling system wraps Sentry's tracing SDK. Key design: + +- **Zero-overhead in dev**: `Telemetry.startSpan()` checks `Sentry.isInitialized()` and if false, simply calls the callback directly -- no timing overhead at all. +- **Production gating**: Only sends spans to Sentry when `tickTimeMs > tickTimeMsThreshold` (default 50ms). This means normal ticks are never reported -- only slow ticks. +- **Span hierarchy**: The TICKER_TICK span is the root transaction. Nested inside it are WORLD_TICK spans, and nested inside those are sub-spans for each phase. + +**Defined span operations** (enum `TelemetrySpanOperation`): +``` +TICKER_TICK -- root: the fixed-timestep ticker loop + WORLD_TICK -- one full world tick + ENTITIES_TICK -- entity.tick() for all active entities + SIMULATION_STEP -- Rapier physics step + cleanup + PHYSICS_STEP -- rapier.step() only + PHYSICS_CLEANUP -- drain events + collider cleanup + ENTITIES_EMIT_UPDATES -- entity.checkAndEmitUpdates() + NETWORK_SYNCHRONIZE -- full network sync flush + BUILD_PACKETS -- (not currently used in WorldLoop) + SERIALIZE_PACKETS -- msgpackr.pack() + gzip if >64KB + SERIALIZE_PACKETS_ENCODE -- (sub-span, not directly used) + SEND_PACKETS -- per-connection send + SEND_ALL_PACKETS -- send loop over all players + NETWORK_SYNCHRONIZE_CLEANUP -- clear queues + caches + SERIALIZE_FREE_BUFFERS -- (not currently used) +``` + +**Process stats** (`Telemetry.getProcessStats()`): +- `jsHeapSizeMb`, `jsHeapCapacityMb`, `jsHeapUsagePercent`, `processHeapSizeMb`, `rssSizeMb` +- Attached to every Sentry error event and every slow-tick transaction + +**Usage sites** (7 files import Telemetry): +- `WorldLoop.ts` -- WORLD_TICK + sub-spans +- `Ticker.ts` -- TICKER_TICK root span +- `Simulation.ts` -- PHYSICS_STEP, PHYSICS_CLEANUP +- `Connection.ts` -- SERIALIZE_PACKETS, SEND_PACKETS +- `NetworkSynchronizer.ts` -- SEND_ALL_PACKETS, NETWORK_SYNCHRONIZE_CLEANUP +- `index.ts` -- re-export for SDK consumers + +### 1.2 World Loop Timing + +**File:** `server/src/worlds/WorldLoop.ts` + +The world loop wraps `Ticker` and runs at 60Hz (DEFAULT_TICK_RATE). Performance instrumentation: + +- `performance.now()` captured at tick start and end +- `TICK_START` event payload includes `tickDeltaMs` (the fixed timestep) +- `TICK_END` event payload includes `tickDurationMs` (actual wall-clock time spent) +- SDK developers can listen to `WorldLoopEvent.TICK_END` to monitor per-tick cost + +**Tick order:** +1. `entityManager.tickEntities(tickDeltaMs)` -- all active (non-environmental) entities +2. `simulation.step(tickDeltaMs)` -- Rapier physics +3. `entityManager.checkAndEmitUpdates()` -- dirty-flag position/rotation change detection +4. `networkSynchronizer.synchronize()` -- only every 2nd tick (30Hz) + +### 1.3 Ticker (Fixed Timestep Engine) + +**File:** `server/src/shared/classes/Ticker.ts` + +Key performance constants: +- `TICK_SLOW_UPDATE_CAP = 2` -- max catch-up ticks per loop iteration (prevents spiral of death) +- `MAX_ACCUMULATOR_TICK_MULTIPLE = 3` -- clamp accumulator to prevent massive catch-up + +Uses `setTimeout` (not `setImmediate`) to give the main thread breathing room for GC. The delay is calculated as `Math.max(0, fixedTimestepMs - accumulatorMs)`. + +### 1.4 Physics Simulation Timing + +**File:** `server/src/worlds/physics/Simulation.ts` + +- `performance.now()` at step start/end +- Emits `SimulationEvent.STEP_START` and `STEP_END` with `stepDurationMs` +- Debug rendering (wireframe colliders) is gated by `_debugRenderingEnabled` -- explicitly warns "avoid in production; can cause noticeable lag" +- Debug raycasting emits per-raycast events when enabled + +### 1.5 Network Synchronizer Performance Design + +**File:** `server/src/networking/NetworkSynchronizer.ts` (very large, ~1200 lines) + +Performance-critical design decisions: +- **30Hz sync rate**: `TICKS_PER_NETWORK_SYNC = Math.round(60 / 30) = 2` -- network flushes every other physics tick +- **Reliable vs unreliable splitting**: Entity position/rotation updates go over unreliable WebTransport datagrams (90%+ of traffic), other entity updates go reliable +- **Lazy queue clearing**: "We only clear queues if they aren't empty, otherwise it causes significant memory growth and triggers unnecessary major GCs" -- explicit GC-aware optimization +- **IterationMap** (`server/src/shared/classes/IterationMap.ts`): Custom Map+Array hybrid for ~2x faster iteration than `Map.values()`. Used throughout NetworkSynchronizer for all sync queues. +- **Packet serialization cache**: `Connection._cachedPacketsSerializedBuffer` caches encoded packets by array identity -- encode once, send to N players. Cleared each sync cycle. + +### 1.6 Connection & Packet Performance + +**File:** `server/src/networking/Connection.ts` + +- **Gzip compression**: Packets >64KB are gzip-compressed at level 1 (fast) +- **WebTransport unreliable cap**: Datagrams >1200 bytes promoted to reliable (MTU-aware) +- **Serialization telemetry**: SERIALIZE_PACKETS span records packet count, IDs, and serialized byte count +- **Per-send span**: SEND_PACKETS wraps each connection.send() + +### 1.7 Sync Request/Response (RTT Measurement) + +**Server side** (`Player.ts` + `NetworkSynchronizer.ts`): +- Client sends SyncRequest packet (null payload) every 2 seconds +- Server records `Date.now()` and `performance.now()` on receipt +- Server responds with SyncResponse containing: + - `r`: server absolute time at request receipt + - `s`: server absolute time at response + - `p`: high-res processing time (ms) from receipt to response + - `n`: ms until next server tick + +### 1.8 Model Preloading Timing + +**File:** `server/src/models/ModelRegistry.ts` +- `performance.now()` before/after model preloading loop +- Console logs total preload time + +### 1.9 GameServer Start Timing + +**File:** `server/src/GameServer.ts` +- Emits `GameServerEvent.START` with `startedAtMs: performance.now()` + +--- + +## 2. CLIENT-SIDE PERFORMANCE SYSTEMS + +### 2.1 PerformanceMetricsManager (FPS + Memory) + +**File:** `client/src/core/PerformanceMetricsManager.ts` + +Core metrics manager that runs every frame: +- **FPS**: Calculated every 1 second (`FPS_UPDATE_INTERVAL_IN_SEC = 1.0`), averaged over that window +- **Delta time**: Uses Three.js `Clock.getDelta()` +- **Memory**: Reads `performance.memory` (Chrome-only API) for `usedJSHeapSize` and `totalJSHeapSize` +- **Refresh rate estimation**: Samples 30 `requestAnimationFrame` deltas, trims 10% outliers, rounds to nearest common rate (30/60/72/90/120/144/165/240/300/360) +- Exposed properties: `fps`, `deltaTime`, `frameCount`, `usedMemory`, `totalMemory`, `refreshRate` + +### 2.2 Debug Panel (lil-gui + Stats.js) + +**File:** `client/src/core/DebugPanel.ts` + +Full debug overlay toggled with backtick (`) or F3 (or 5-finger touch on mobile): + +**Stats.js panels:** +- Default FPS/MS panels (from three/examples Stats) +- Custom MB panel (heap memory in MB) +- Custom RTT(ms) panel (round-trip time to server) + +**lil-gui folders:** +- **Lobby**: lobby ID +- **User Agent**: browser info +- **Player**: position +- **Camera**: position +- **Server**: send/receive protocol (ws/wt), SDK version +- **Performance**: quality preset level +- **WebGL**: draw calls, geometries, textures, triangles, programs (from `renderer.info`) +- **Entity**: count, static environment, in-view-distance, frustum-culled, update-skip, animation play, local/world matrix updates, light-level updates, custom textures +- **Chunks**: count, visible, blocks, opaque/transparent/liquid faces, block textures +- **glTF**: file count, source/cloned/instanced meshes, draw calls saved, attribute elements updated +- **Scene UI**: count, visible +- **Arrows**: count, visible +- **Audio**: count, matrix updates, skip matrix updates + +### 2.3 Stats Classes (Per-Subsystem Counters) + +All use static fields, reset per-frame by their respective managers: + +**EntityStats** (`client/src/entities/EntityStats.ts`): +- count, staticEnvironmentCount, inViewDistanceCount, frustumCulledCount, updateSkipCount +- animationPlayCount, localMatrixUpdateCount, worldMatrixUpdateCount, lightLevelUpdateCount, customTextureCount + +**ChunkStats** (`client/src/chunks/ChunkStats.ts`): +- count, visibleCount, blockCount, opaqueFaceCount, transparentFaceCount, liquidFaceCount, blockTextureCount + +**GLTFStats** (`client/src/gltf/GLTFStats.ts`): +- fileCount, sourceMeshCount, clonedMeshCount, instancedMeshCount, drawCallsSaved, attributeElementsUpdated + +**AudioStats** (`client/src/audio/AudioStats.ts`): +- count, matrixUpdateCount, matrixUpdateSkipCount + +**ArrowStats** (`client/src/arrows/ArrowStats.ts`): +- count, visibleCount + +**SceneUIStats** (`client/src/ui/SceneUIStats.ts`): +- count, visibleCount + +### 2.4 Renderer Performance + +**File:** `client/src/core/Renderer.ts` + +- `renderer.info.autoReset = false` -- manual reset per frame via `renderer.info.reset()` before render calls +- WebGL stats read from `renderer.info`: draw calls, geometries, textures, triangles, programs +- FPS cap via `SettingsManager.qualityPerfTradeoff.fpsCap` -- skips render frames if elapsed time < 1/fpsCap +- Scene-level `matrixAutoUpdate = false` and `matrixWorldAutoUpdate = false` on all 4 scenes (main, viewModel, overlay, UI) -- all matrix updates are manual +- Custom transparent sort function using cached sort keys per render frame +- WebGL context loss detection with user alert + +### 2.5 Automatic Quality Adjustment + +**File:** `client/src/settings/SettingsManager.ts` + +Dynamic quality presets: ULTRA, HIGH, MEDIUM, LOW, POWER_SAVING + +Each preset controls: +- Resolution multiplier (0.5x to 2.0x) +- View distance (50 to 600 units) +- Fog near/far +- Environmental animations (enabled/disabled) +- Post-processing (outline, bloom, SMAA) +- FPS cap (30 for POWER_SAVING) +- Antialias + +**Auto-adjustment algorithm:** +- Warmup period: 10 seconds after first world packet before any adjustment +- Quality up: FPS >= refreshRate - 1 for 5 consecutive seconds +- Quality down: FPS < min(30, refreshRate * 0.5) for 3 consecutive seconds +- Bounce protection: max 5 up/down oscillations before locking +- Mobile cap: MEDIUM max on mobile +- Auto levels: HIGH, MEDIUM, LOW only (ULTRA and POWER_SAVING are manual-only) +- Tab visibility check: skips adjustment when tab inactive + +### 2.6 Performance Timeline Marks + +**File:** `client/src/network/NetworkManager.ts` + `client/src/chunks/ChunkManager.ts` + +Uses Performance API marks/measures for startup profiling (visible in browser DevTools Performance tab): +- `NetworkManager:connecting` -- mark at connection start +- `NetworkManager:connected` -- mark when connected +- `NetworkManager:connected-time` -- measure: connecting to connected +- `NetworkManager:world-packet-received` -- mark at first world packet +- `NetworkManager:connected-to-first-packet-time` -- measure: connected to first packet +- `NetworkManager:game-ready-time` -- measure: connecting to game ready +- `ChunkManager:first-chunk-batch-built` -- mark when first chunk batch is built +- `ChunkManager:first-chunk-batch-built-time` -- measure: connected to first chunk batch + +### 2.7 RTT Measurement (Client Side) + +**File:** `client/src/network/NetworkManager.ts` + +- Sends SyncRequest every 2 seconds +- Receives SyncResponse with server processing time +- Calculates RTT: `clientReceiveTime - syncStartTime - serverProcessingTime` +- Exponential moving average with smoothing factor 0.5 +- Tracks max RTT +- Displayed in debug panel RTT(ms) stats panel + +### 2.8 Entity View Distance + Frustum Culling + +**File:** `client/src/entities/Entity.ts` + `client/src/entities/EntityManager.ts` + +- Per-entity view distance check using squared distance (avoids sqrt) +- Frustum culling tracked in EntityStats +- Update skipping for entities outside view distance +- Matrix update optimization: only updates local/world matrices when dirty + +### 2.9 Chunk Worker (Web Worker Meshing) + +**File:** `client/src/workers/ChunkWorker.ts` + +- Chunk mesh building runs in a Web Worker (off main thread) +- Greedy meshing with ambient occlusion +- No explicit timing/profiling inside the worker itself + +--- + +## 3. PROTOCOL PERFORMANCE SUPPORT + +### 3.1 Debug Packets + +**DebugConfig (inbound):** `protocol/packets/inbound/DebugConfig.ts` + `protocol/schemas/DebugConfig.ts` +- Schema: `{ pdr?: boolean }` -- toggles physics debug rendering +- Client sends this to enable/disable server-side debug render + +**PhysicsDebugRender (outbound):** `protocol/packets/outbound/PhysicsDebugRender.ts` +- Sends collider wireframe vertices/colors per tick when enabled +- Very expensive -- for development only + +**PhysicsDebugRaycasts (outbound):** `protocol/packets/outbound/PhysicsDebugRaycasts.ts` +- Sends raycast visualization data when debug raycasting enabled + +### 3.2 Sync Request/Response (RTT) + +- `SyncRequest` (inbound): null payload, triggers server timestamp capture +- `SyncResponse` (outbound): `{ r: number, s: number, p: number, n: number }` + - `r` = server time at request receipt (Date.now()) + - `s` = server time at response (Date.now()) + - `p` = high-res processing time (ms) + - `n` = ms until next server tick + +### 3.3 Server Tick in Packets + +All outbound packets include a `WorldTick` field (the current world loop tick count). This enables the client to reason about packet ordering and staleness. + +--- + +## 4. SDK EXAMPLES WITH PERFORMANCE RELEVANCE + +### 4.1 big-world + +**File:** `sdk-examples/big-world/index.ts` + +Explicit stress test: 750x750 block area (~2M+ blocks, thousands of chunks). Comments state it is "meant to showcase the performance of the server" and "benchmark and test client performance." No custom profiling code -- just loads a huge map and spawns players. + +### 4.2 ark-game (WorldGenerator) + +**File:** `sdk-examples/ark-game/src/generator/WorldGenerator.ts` + +Has per-pass timing using `performance.now()`: +``` +[Generator] Starting NxN world (seed: X) +[Generator] TerrainPass: Xms +[Generator] CavePass: Xms +... +[Generator] Complete: N blocks in Xms +``` + +--- + +## 5. PERFORMANCE DATA STRUCTURES + +### 5.1 IterationMap + +**File:** `server/src/shared/classes/IterationMap.ts` + +Custom Map+Array hybrid for hot-path iteration. Maintains a backing `Map` for O(1) lookups and a separate `V[]` array for fast iteration without `Map.values()` overhead. Used in all NetworkSynchronizer sync queues. Lazy dirty-flag array rebuild. + +### 5.2 Connection Packet Cache + +**File:** `server/src/networking/Connection.ts` + +Static `Map` caches serialized packets by array identity. Encode-once, send-to-N optimization. Cleared each network sync cycle via `Connection.clearCachedPacketsSerializedBuffers()`. + +--- + +## 6. GAPS IDENTIFIED + +### 6.1 Server Gaps + +1. **No local profiling without Sentry**: Telemetry.startSpan() is a no-op when Sentry is not initialized. There is NO built-in way to profile tick timing locally during development without setting up a Sentry DSN. The TICK_END event emits `tickDurationMs` but nothing aggregates or logs it. + +2. **No tick budget tracking**: No system tracks what percentage of the ~16.67ms tick budget is consumed, or warns when ticks consistently exceed budget. The Ticker's `TICK_SLOW_UPDATE_CAP = 2` silently caps catch-up without logging. + +3. **No per-entity cost attribution**: `ENTITIES_TICK` is one span for ALL entities. There is no way to identify which entity's `tick()` callback is expensive. No per-entity timing. + +4. **No network bandwidth metrics**: Serialized byte count is recorded in Sentry span attributes but never aggregated or exposed. No per-player bandwidth tracking. No packet-rate counters. + +5. **No console.time / console.timeEnd usage**: Zero instances of `console.time` in the server codebase. Developers must rely on Sentry or roll their own timing. + +6. **No GC monitoring**: While `process.memoryUsage()` is captured in Telemetry.getProcessStats(), there is no GC event tracking (e.g., `--expose-gc` / `performance.measureUserAgentSpecificMemory()`). The GC-aware clearing in NetworkSynchronizer is based on experience, not measured. + +7. **No entity count budget or scaling warnings**: Nothing warns the developer when entity counts or chunk counts approach limits that would degrade tick performance. + +### 6.2 Client Gaps + +1. **No frame time breakdown**: The client tracks FPS but does NOT break down frame time into components (render time, JS time, animation update time, network processing time, etc.). The DebugPanel shows subsystem counters but not timings. + +2. **No GPU profiling**: No use of WebGL timer queries (`EXT_disjoint_timer_query`). The renderer tracks draw calls/triangles/geometries but not actual GPU milliseconds. + +3. **No chunk meshing timing**: The ChunkWorker does greedy meshing in a Web Worker but has no timing instrumentation. Slow chunk builds are invisible. + +4. **No memory trend tracking**: Memory is sampled once per frame but there is no leak detection, no trend analysis, no warning system for memory growth. + +5. **No network jitter metrics**: RTT is tracked with exponential smoothing but there is no jitter calculation (variance of RTT), no packet loss counting, no out-of-order detection. + +6. **No client-side Telemetry equivalent**: The client has no span/trace system. All client perf monitoring is ad-hoc (Stats.js panels + static counters). + +7. **Stats classes are not time-series**: All Stats classes (EntityStats, ChunkStats, etc.) are instantaneous counters reset each frame. No historical data, no min/max/avg tracking, no percentiles. + +8. **Quality auto-adjustment uses simple FPS threshold**: The algorithm only looks at whether FPS is above or below a threshold for N seconds. It does not consider frame time variance, GPU load, or thermal state. + +9. **performance.memory is Chrome-only**: The memory tracking in PerformanceMetricsManager relies on `performance.memory` which is non-standard and Chrome-only. Firefox/Safari users get no memory data. + +### 6.3 Protocol Gaps + +1. **No performance telemetry packet**: There is no packet type for the server to send tick timing data to the client for display. The debug panel cannot show "server tick time: Xms" or "server entity count: N" because no packet carries that data. + +2. **No client-to-server performance report**: The client cannot report its FPS, frame time, or quality level back to the server for server-side analytics. + +### 6.4 SDK Examples Gaps + +1. **big-world has no automated benchmark**: It loads a large world but has no timing, no entity stress test, no automated performance measurement. It's a manual "look at it and see if it's slow" test. + +2. **No dedicated benchmark example**: No SDK example exercises entity spawning at scale, particle systems under load, or rapid block modifications to establish performance baselines. + +--- + +## 7. SUMMARY TABLE + +| System | Location | What it Measures | Trigger/Availability | +|--------|----------|-----------------|---------------------| +| Telemetry spans | server/src/metrics/Telemetry.ts | Tick subsystem durations | Only with Sentry DSN + slow tick | +| WorldLoop events | server/src/worlds/WorldLoop.ts | tickDeltaMs, tickDurationMs | Always (SDK event) | +| Simulation events | server/src/worlds/physics/Simulation.ts | stepDurationMs | Always (SDK event) | +| Process stats | server/src/metrics/Telemetry.ts | Heap, RSS memory | On Sentry error/slow tick | +| FPS | client/src/core/PerformanceMetricsManager.ts | Frames per second | Always | +| Memory | client/src/core/PerformanceMetricsManager.ts | JS heap (Chrome only) | Always | +| RTT | client/src/network/NetworkManager.ts | Round-trip latency | Every 2 seconds | +| WebGL stats | client/src/core/DebugPanel.ts | Draw calls, triangles, etc | When debug panel open | +| Entity stats | client/src/entities/EntityStats.ts | Count, culling, updates | Always (static counters) | +| Chunk stats | client/src/chunks/ChunkStats.ts | Count, faces, visibility | Always (static counters) | +| Quality auto-adjust | client/src/settings/SettingsManager.ts | FPS vs threshold | Always | +| Startup timeline | client/src/network/NetworkManager.ts | Connection-to-ready timing | On startup | +| Debug rendering | server/src/worlds/physics/Simulation.ts | Collider wireframes | Manual toggle (dev only) | +| Packet cache | server/src/networking/Connection.ts | Serialized buffer reuse | Always (implicit) | diff --git a/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/COLLIDER_ARCHITECTURE_RESEARCH.md b/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/COLLIDER_ARCHITECTURE_RESEARCH.md new file mode 100644 index 00000000..3fe81f1a --- /dev/null +++ b/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/COLLIDER_ARCHITECTURE_RESEARCH.md @@ -0,0 +1,159 @@ +# Collider Architecture Research + +**Purpose:** Guide the refactor of Hytopia’s block collider system from O(world) to O(nearby chunks). +**Audience:** Engineers implementing Phase 1 (Collider Locality) and Phase 2 (Incremental Voxel Updates). + +--- + +## 1. Current Architecture + +### 1.1 Block Type → Collider + +- One collider per **block type** (dirt, stone, etc.), not per block. +- Voxel collider: Rapier voxel grid; each cell = block present/absent. +- Trimesh collider: Used for non-cube blocks; rebuilt when any block of that type changes. + +### 1.2 Critical Path + +``` +setBlock / addChunkBlocks + → _addBlockTypePlacement + → _getBlockTypePlacements() // iterates ALL chunks of this block type + → _combineVoxelStates(collider) // merges placements into voxel grid + → collider.addToSimulation / setVoxel +``` + +**Problem:** `_getBlockTypePlacements` and `_combineVoxelStates` touch every chunk that contains the block type. As world size grows, this becomes O(world). + +--- + +## 2. Target Architecture: Spatial Locality + +### 2.1 Principle + +- Colliders should only include blocks from chunks **within N chunks of any player** (e.g. N=4). +- When a chunk unloads (player moves away), remove its blocks from colliders. +- When a chunk loads, add its blocks to colliders only if it’s within the active radius. + +### 2.2 Data Structure Change + +**Current:** `_blockTypePlacements` is global (or implicitly spans all chunks). + +**Target:** Maintain a **spatial index**: + +```ts +// Chunk key (bigint) → for each block type in that chunk: Set of global coordinates +private _chunkBlockPlacements: Map>> = new Map(); + +// Active chunk keys: chunks within COLLIDER_RADIUS of any player +private _activeColliderChunkKeys: Set = new Set(); +``` + +- On chunk load: add chunk key to index; add block placements. +- On chunk unload: remove chunk key; remove blocks from colliders. +- `_getBlockTypePlacements` for collider: only return placements from `_activeColliderChunkKeys`. +- `_combineVoxelStates`: only iterate over placements from active chunks. + +### 2.3 Update Flow + +``` +Player moves + → Update _activeColliderChunkKeys (chunks within radius) + → For chunks that left radius: remove from colliders + → For chunks that entered radius: add to colliders + → _combineVoxelStates only over active placements +``` + +--- + +## 3. Incremental Voxel Updates + +### 3.1 Current + +- Adding a chunk: all 4096 blocks added at once to the voxel collider. +- Heavy: `setVoxel` 4096 times + propagation. + +### 3.2 Target + +- Add blocks in **batches** (e.g. 256–512 per tick). +- Time-budget: stop when budget exceeded; resume next tick. +- Rapier voxel API: check if it supports incremental `setVoxel` without full rebuild. + +### 3.3 Implementation Sketch + +```ts +private _pendingVoxelAdds: Array<{ chunk: Chunk; blockTypeId: number; nextIndex: number }> = []; + +function processPendingVoxelAdds(timeBudgetMs: number) { + const start = performance.now(); + while (this._pendingVoxelAdds.length > 0 && (performance.now() - start) < timeBudgetMs) { + const next = this._pendingVoxelAdds[0]; + const chunk = next.chunk; + const count = Math.min(256, chunk.blockCountForType(next.blockTypeId) - next.nextIndex); + for (let i = 0; i < count; i++) { + const idx = next.nextIndex + i; + const globalCoord = chunk.getGlobalCoordinateFromIndex(idx); + collider.setVoxel(globalCoord, true); + } + next.nextIndex += count; + if (next.nextIndex >= chunk.blockCountForType(next.blockTypeId)) { + this._pendingVoxelAdds.shift(); + } + } +} +``` + +--- + +## 4. Trimesh Optimization + +### 4.1 Current + +- Trimesh collider rebuilt whenever any block of that type is added/removed. +- Rebuild = collect all placements, generate mesh, replace collider. + +### 4.2 Options + +1. **Spatial locality:** Only include trimesh blocks from active chunks. Reduces vertex count for large worlds. +2. **Deferred rebuild:** Queue rebuild; execute in next tick within time budget. +3. **Per-chunk trimesh:** If block type is sparse, consider per-chunk trimesh instances instead of one giant trimesh. (Larger change.) + +**Recommendation:** Start with (1) and (2). (3) is Phase 6. + +--- + +## 5. Collider Unload + +When a chunk unloads: + +1. Remove its block placements from the spatial index. +2. For each block type in that chunk: + - Voxel: `setVoxel(coord, false)` for each placement. + - Trimesh: trigger rebuild (only over active chunks). +3. Remove chunk from `_activeColliderChunkKeys`. + +--- + +## 6. Rapier Voxel API Notes + +- Check `rapier3d` docs for `ColliderDesc.heightfield` vs `ColliderDesc.voxel`. +- Voxel colliders: typically a 3D grid; `setVoxel` may or may not support incremental updates. +- If full rebuild required per update: minimize rebuild frequency (batch changes) and scope (active chunks only). + +--- + +## 7. Success Criteria + +| Metric | Before | After | +|--------|--------|-------| +| Chunks scanned per collider update | O(world) | O(active) ~100–300 | +| Time per `_combineVoxelStates` | 5–50 ms | <2 ms | +| Collider add spikes | Full chunk at once | Batched, time-budgeted | + +--- + +## References + +- `ChunkLattice.ts` – `_addChunkBlocksToColliders`, `_combineVoxelStates`, `_getBlockTypePlacements` +- Rapier3D voxel API +- Minecraft: per-section collision, spatial culling diff --git a/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/ENTITY_SYNC_DELTA_COMPRESSION_DESIGN (1).md b/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/ENTITY_SYNC_DELTA_COMPRESSION_DESIGN (1).md new file mode 100644 index 00000000..c689a4de --- /dev/null +++ b/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/ENTITY_SYNC_DELTA_COMPRESSION_DESIGN (1).md @@ -0,0 +1,226 @@ +# Entity Sync: Delta / Compression Design + +**Goal:** Reduce entity position/rotation packet size and bandwidth (currently ~90% of all packets) by replacing full pos/rot with delta or compressed formats. + +--- + +## 1. Current State + +### Flow +- **Server:** Every tick, `entityManager.checkAndEmitUpdates()` runs; each entity calls `checkAndEmitUpdates()`. +- **Entity:** Emits `UPDATE_POSITION` or `UPDATE_ROTATION` when change exceeds threshold: + - **Position:** `ENTITY_POSITION_UPDATE_THRESHOLD_SQ = 0.04²` (0.04 block) + - **Rotation:** `ENTITY_ROTATION_UPDATE_THRESHOLD = cos(3°/2)` (~3°) + - **Player:** Looser position threshold `0.1²` blocks +- **NetworkSynchronizer:** Queues `{ i: id, p: [x,y,z] }` and/or `{ i: id, r: [x,y,z,w] }`. +- **Every 2 ticks (30 Hz):** Splits into reliable vs unreliable; pos/rot-only goes to **unreliable** channel. +- **Serializer:** `serializeVector` → `[x, y, z]`, `serializeQuaternion` → `[x, y, z, w]` (full floats). +- **Transport:** msgpackr with `useFloat32: FLOAT32_OPTIONS.ALWAYS` → 4 bytes per float. + +### Per-Entity Packet Size (approx) +| Format | Bytes (msgpack) | +|--------|-----------------| +| `{ i, p }` pos-only | ~25–35 | +| `{ i, r }` rot-only | ~30–40 | +| `{ i, p, r }` both | ~50–65 | +| 10 entities, pos+rot | ~500–650 | + +With 20 entities at 30 Hz: **~15–20 KB/s** for entity sync alone. + +--- + +## 2. Options for Delta / Compression + +### Option A: Quantized Position (Fixed-Point) + +**Idea:** Encode position as integers. 1 unit = 1/256 block → 0.004 block precision. + +- Range ±32768 blocks → 16-bit signed per axis. +- 3 × 2 bytes = **6 bytes** vs 3 × 4 = 12 bytes (float32). +- **~50% smaller** for position. + +**Implementation:** +```ts +// Server +const QUANT = 256; +p: [Math.round(x * QUANT), Math.round(y * QUANT), Math.round(z * QUANT)] + +// Client +position.x = p[0] / QUANT; // etc. +``` + +**Trade-off:** Precision ~0.004 block. For player/NPC movement this is fine. For very small objects, may need higher quant (e.g. 1024). + +--- + +### Option B: Quantized Quaternion (Smallest-Three) + +**Idea:** Unit quaternion has `q.x² + q.y² + q.z² + q.w² = 1`. Store the 3 components with largest magnitude; reconstruct 4th. + +- 3 × 2 bytes (quantized) = **6 bytes** vs 4 × 4 = 16 bytes. +- **~62% smaller** for rotation. + +**Implementation:** Standard "smallest three" quaternion compression (e.g. [RigidBodyDynamics](https://github.com/gameworks-builder/rigid-body-dynamics) style). Needs protocol change to support packed format. + +--- + +### Option C: Yaw-Only for Player Rotation + +**Idea:** Many entities (players, NPCs) only rotate around Y. Send 1 float (yaw) instead of 4. + +- **4 bytes** vs 16 bytes. +- **75% smaller** for rotation when applicable. + +**Caveat:** Doesn't work for entities with pitch/roll (e.g. flying, vehicles). Use as opt-in per entity type. + +--- + +### Option D: Delta Encoding (Δ from Last Sent) + +**Idea:** Send `Δp = p - p_last` instead of absolute `p`. Small movements → small deltas → msgpack encodes as smaller integers. + +- No schema change; still `[dx, dy, dz]` but values typically small. +- msgpack variable-length integers: small values use 1 byte. +- **Benefit:** 20–50% smaller when movement is small. No extra state on client if server tracks last-sent. + +**Implementation:** Server stores `_lastSentPosition` per entity per player (or broadcast). Send delta; client adds to last known position. Requires client to track "last applied" position. + +--- + +### Option E: Bulk / AoS Format + +**Idea:** Instead of `[{i:1,p:[x,y,z]},{i:2,p:[x,y,z]},...]` use structure of arrays: + +```ts +{ ids: [1,2,3], p: [[x,y,z],[x,y,z],[x,y,z]] } +``` + +- Avoids repeating keys `i`, `p` for every entity (msgpack dedup helps but structure still has overhead). +- **Benefit:** ~15–25% smaller from less map/array framing. + +**Caveat:** Requires new packet schema and client deserializer changes. All-or-nothing; can't mix with current EntitySchema in same packet. + +--- + +### Option F: Distance-Based Sync Rate + +**Idea:** Sync nearby entities at 30 Hz, distant at 10 Hz or 5 Hz. + +- **Benefit:** Fewer packets for far entities; natural LOD. +- **Implementation:** In `checkAndEmitUpdates` or NetworkSynchronizer, track distance from each player; only queue updates for entity if `tick % rateDivisor === 0` based on distance band. + +--- + +## 3. Recommended Approach + +### Phase 1: Low-Risk Wins (1–2 days each) + +| # | Change | Impact | Effort | +|---|--------|--------|--------| +| 1 | **Quantized position** (1/256 block) | ~50% smaller pos | 1 day | +| 2 | **Distance-based sync rate** (30/15/5 Hz bands) | Fewer far-entity updates | 1 day | +| 3 | **Yaw-only rotation** for player entities | ~75% smaller rot for players | 0.5 day | + +### Phase 2: Schema Changes (3–5 days) + +| # | Change | Impact | Effort | +|---|--------|--------|--------| +| 4 | **Quantized quaternion** (smallest-three) | ~62% smaller rot | 2–3 days | +| 5 | **Bulk entity update packet** | ~15–25% smaller framing | 2 days | + +### Phase 3: Advanced (Optional) + +| # | Change | Impact | Effort | +|---|--------|--------|--------| +| 6 | **Delta encoding** | Additional 20–50% when movement small | 2–3 days | +| 7 | **Client-side prediction** | Reduce perceived latency, fewer corrections | 1+ week | + +--- + +## 4. Protocol Changes Required + +### Option 1: Extend EntitySchema (Backwards Compatible) + +Add optional compressed fields; client detects and uses when present: + +```ts +// New optional fields +EntitySchema = { + i: number; + p?: VectorSchema; // existing: [x,y,z] float + r?: QuaternionSchema; // existing: [x,y,z,w] float + pq?: [number,number,number]; // quantized position (1/256 block) + rq?: [number,number,number]; // quantized quaternion (smallest-three) + ry?: number; // yaw only (radians) + // ... +} +``` + +- Server sends `pq` instead of `p` when quantized format enabled. +- Client checks `pq` first, falls back to `p`. +- Old clients ignore `pq`; new clients prefer `pq` when present. + +### Option 2: New Packet Type + +Add `EntityPosRotBulkPacket`: + +```ts +{ + ids: number[], + positions?: Int16Array | number[][], // quantized + rotations?: number[][] | Int16Array[] // quantized or yaw-only +} +``` + +- Used only for unreliable pos/rot updates. +- Existing `EntitiesPacket` still used for spawn/reliable updates. + +--- + +## 5. Key Files + +| Component | Path | +|-----------|------| +| Entity update emission | `server/src/worlds/entities/Entity.ts` (checkAndEmitUpdates) | +| Player threshold | `server/src/worlds/entities/PlayerEntity.ts` | +| Network sync queue | `server/src/networking/NetworkSynchronizer.ts` | +| Serializer | `server/src/networking/Serializer.ts` | +| Protocol schema | `protocol/schemas/Entity.ts` | +| Client deserializer | `client/src/network/Deserializer.ts` | +| Client entity update | `client/src/entities/EntityManager.ts` (_updateEntity) | +| Transport | `server/src/networking/Connection.ts`, `client/.../NetworkManager.ts` | + +--- + +## 6. Quantization Constants (Suggested) + +```ts +// Position: 1/256 block = 0.0039 block precision +const POSITION_QUANT = 256; + +// Position range: ±32768 blocks (16-bit signed) +// Covers ~1km in each direction +const POSITION_MAX = 32767; +const POSITION_MIN = -32768; + +// Quaternion: 16-bit per component, range [-1, 1] → 1/32767 precision +const QUATERNION_QUANT = 32767; +``` + +--- + +## 7. Success Metrics + +| Metric | Current | Target (Phase 1) | Target (Phase 2) | +|--------|---------|------------------|------------------| +| Entity bytes/update (10 entities) | ~500–650 | ~300–400 | ~200–280 | +| Entity sync % of total packets | ~90% | ~70% | ~50% | +| Bandwidth (20 entities, 30 Hz) | ~15–20 KB/s | ~8–12 KB/s | ~5–8 KB/s | + +--- + +## 8. References + +- [Quaternion Compression (smallest three)](http://gafferongames.com/networked-physics/snapshot-compression/) +- [Minecraft entity sync (delta/quantization)](https://wiki.vg/Protocol#Entity_Metadata) +- Current codebase: `Entity.ts` (checkAndEmitUpdates), `NetworkSynchronizer.ts` (entity sync split), `Serializer.ts` (serializeVector/Quaternion) diff --git a/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/ENTITY_SYNC_DELTA_COMPRESSION_DESIGN.md b/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/ENTITY_SYNC_DELTA_COMPRESSION_DESIGN.md new file mode 100644 index 00000000..c689a4de --- /dev/null +++ b/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/ENTITY_SYNC_DELTA_COMPRESSION_DESIGN.md @@ -0,0 +1,226 @@ +# Entity Sync: Delta / Compression Design + +**Goal:** Reduce entity position/rotation packet size and bandwidth (currently ~90% of all packets) by replacing full pos/rot with delta or compressed formats. + +--- + +## 1. Current State + +### Flow +- **Server:** Every tick, `entityManager.checkAndEmitUpdates()` runs; each entity calls `checkAndEmitUpdates()`. +- **Entity:** Emits `UPDATE_POSITION` or `UPDATE_ROTATION` when change exceeds threshold: + - **Position:** `ENTITY_POSITION_UPDATE_THRESHOLD_SQ = 0.04²` (0.04 block) + - **Rotation:** `ENTITY_ROTATION_UPDATE_THRESHOLD = cos(3°/2)` (~3°) + - **Player:** Looser position threshold `0.1²` blocks +- **NetworkSynchronizer:** Queues `{ i: id, p: [x,y,z] }` and/or `{ i: id, r: [x,y,z,w] }`. +- **Every 2 ticks (30 Hz):** Splits into reliable vs unreliable; pos/rot-only goes to **unreliable** channel. +- **Serializer:** `serializeVector` → `[x, y, z]`, `serializeQuaternion` → `[x, y, z, w]` (full floats). +- **Transport:** msgpackr with `useFloat32: FLOAT32_OPTIONS.ALWAYS` → 4 bytes per float. + +### Per-Entity Packet Size (approx) +| Format | Bytes (msgpack) | +|--------|-----------------| +| `{ i, p }` pos-only | ~25–35 | +| `{ i, r }` rot-only | ~30–40 | +| `{ i, p, r }` both | ~50–65 | +| 10 entities, pos+rot | ~500–650 | + +With 20 entities at 30 Hz: **~15–20 KB/s** for entity sync alone. + +--- + +## 2. Options for Delta / Compression + +### Option A: Quantized Position (Fixed-Point) + +**Idea:** Encode position as integers. 1 unit = 1/256 block → 0.004 block precision. + +- Range ±32768 blocks → 16-bit signed per axis. +- 3 × 2 bytes = **6 bytes** vs 3 × 4 = 12 bytes (float32). +- **~50% smaller** for position. + +**Implementation:** +```ts +// Server +const QUANT = 256; +p: [Math.round(x * QUANT), Math.round(y * QUANT), Math.round(z * QUANT)] + +// Client +position.x = p[0] / QUANT; // etc. +``` + +**Trade-off:** Precision ~0.004 block. For player/NPC movement this is fine. For very small objects, may need higher quant (e.g. 1024). + +--- + +### Option B: Quantized Quaternion (Smallest-Three) + +**Idea:** Unit quaternion has `q.x² + q.y² + q.z² + q.w² = 1`. Store the 3 components with largest magnitude; reconstruct 4th. + +- 3 × 2 bytes (quantized) = **6 bytes** vs 4 × 4 = 16 bytes. +- **~62% smaller** for rotation. + +**Implementation:** Standard "smallest three" quaternion compression (e.g. [RigidBodyDynamics](https://github.com/gameworks-builder/rigid-body-dynamics) style). Needs protocol change to support packed format. + +--- + +### Option C: Yaw-Only for Player Rotation + +**Idea:** Many entities (players, NPCs) only rotate around Y. Send 1 float (yaw) instead of 4. + +- **4 bytes** vs 16 bytes. +- **75% smaller** for rotation when applicable. + +**Caveat:** Doesn't work for entities with pitch/roll (e.g. flying, vehicles). Use as opt-in per entity type. + +--- + +### Option D: Delta Encoding (Δ from Last Sent) + +**Idea:** Send `Δp = p - p_last` instead of absolute `p`. Small movements → small deltas → msgpack encodes as smaller integers. + +- No schema change; still `[dx, dy, dz]` but values typically small. +- msgpack variable-length integers: small values use 1 byte. +- **Benefit:** 20–50% smaller when movement is small. No extra state on client if server tracks last-sent. + +**Implementation:** Server stores `_lastSentPosition` per entity per player (or broadcast). Send delta; client adds to last known position. Requires client to track "last applied" position. + +--- + +### Option E: Bulk / AoS Format + +**Idea:** Instead of `[{i:1,p:[x,y,z]},{i:2,p:[x,y,z]},...]` use structure of arrays: + +```ts +{ ids: [1,2,3], p: [[x,y,z],[x,y,z],[x,y,z]] } +``` + +- Avoids repeating keys `i`, `p` for every entity (msgpack dedup helps but structure still has overhead). +- **Benefit:** ~15–25% smaller from less map/array framing. + +**Caveat:** Requires new packet schema and client deserializer changes. All-or-nothing; can't mix with current EntitySchema in same packet. + +--- + +### Option F: Distance-Based Sync Rate + +**Idea:** Sync nearby entities at 30 Hz, distant at 10 Hz or 5 Hz. + +- **Benefit:** Fewer packets for far entities; natural LOD. +- **Implementation:** In `checkAndEmitUpdates` or NetworkSynchronizer, track distance from each player; only queue updates for entity if `tick % rateDivisor === 0` based on distance band. + +--- + +## 3. Recommended Approach + +### Phase 1: Low-Risk Wins (1–2 days each) + +| # | Change | Impact | Effort | +|---|--------|--------|--------| +| 1 | **Quantized position** (1/256 block) | ~50% smaller pos | 1 day | +| 2 | **Distance-based sync rate** (30/15/5 Hz bands) | Fewer far-entity updates | 1 day | +| 3 | **Yaw-only rotation** for player entities | ~75% smaller rot for players | 0.5 day | + +### Phase 2: Schema Changes (3–5 days) + +| # | Change | Impact | Effort | +|---|--------|--------|--------| +| 4 | **Quantized quaternion** (smallest-three) | ~62% smaller rot | 2–3 days | +| 5 | **Bulk entity update packet** | ~15–25% smaller framing | 2 days | + +### Phase 3: Advanced (Optional) + +| # | Change | Impact | Effort | +|---|--------|--------|--------| +| 6 | **Delta encoding** | Additional 20–50% when movement small | 2–3 days | +| 7 | **Client-side prediction** | Reduce perceived latency, fewer corrections | 1+ week | + +--- + +## 4. Protocol Changes Required + +### Option 1: Extend EntitySchema (Backwards Compatible) + +Add optional compressed fields; client detects and uses when present: + +```ts +// New optional fields +EntitySchema = { + i: number; + p?: VectorSchema; // existing: [x,y,z] float + r?: QuaternionSchema; // existing: [x,y,z,w] float + pq?: [number,number,number]; // quantized position (1/256 block) + rq?: [number,number,number]; // quantized quaternion (smallest-three) + ry?: number; // yaw only (radians) + // ... +} +``` + +- Server sends `pq` instead of `p` when quantized format enabled. +- Client checks `pq` first, falls back to `p`. +- Old clients ignore `pq`; new clients prefer `pq` when present. + +### Option 2: New Packet Type + +Add `EntityPosRotBulkPacket`: + +```ts +{ + ids: number[], + positions?: Int16Array | number[][], // quantized + rotations?: number[][] | Int16Array[] // quantized or yaw-only +} +``` + +- Used only for unreliable pos/rot updates. +- Existing `EntitiesPacket` still used for spawn/reliable updates. + +--- + +## 5. Key Files + +| Component | Path | +|-----------|------| +| Entity update emission | `server/src/worlds/entities/Entity.ts` (checkAndEmitUpdates) | +| Player threshold | `server/src/worlds/entities/PlayerEntity.ts` | +| Network sync queue | `server/src/networking/NetworkSynchronizer.ts` | +| Serializer | `server/src/networking/Serializer.ts` | +| Protocol schema | `protocol/schemas/Entity.ts` | +| Client deserializer | `client/src/network/Deserializer.ts` | +| Client entity update | `client/src/entities/EntityManager.ts` (_updateEntity) | +| Transport | `server/src/networking/Connection.ts`, `client/.../NetworkManager.ts` | + +--- + +## 6. Quantization Constants (Suggested) + +```ts +// Position: 1/256 block = 0.0039 block precision +const POSITION_QUANT = 256; + +// Position range: ±32768 blocks (16-bit signed) +// Covers ~1km in each direction +const POSITION_MAX = 32767; +const POSITION_MIN = -32768; + +// Quaternion: 16-bit per component, range [-1, 1] → 1/32767 precision +const QUATERNION_QUANT = 32767; +``` + +--- + +## 7. Success Metrics + +| Metric | Current | Target (Phase 1) | Target (Phase 2) | +|--------|---------|------------------|------------------| +| Entity bytes/update (10 entities) | ~500–650 | ~300–400 | ~200–280 | +| Entity sync % of total packets | ~90% | ~70% | ~50% | +| Bandwidth (20 entities, 30 Hz) | ~15–20 KB/s | ~8–12 KB/s | ~5–8 KB/s | + +--- + +## 8. References + +- [Quaternion Compression (smallest three)](http://gafferongames.com/networked-physics/snapshot-compression/) +- [Minecraft entity sync (delta/quantization)](https://wiki.vg/Protocol#Entity_Metadata) +- Current codebase: `Entity.ts` (checkAndEmitUpdates), `NetworkSynchronizer.ts` (entity sync split), `Serializer.ts` (serializeVector/Quaternion) diff --git a/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/GREEDY_MESHING_IMPLEMENTATION_GUIDE.md b/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/GREEDY_MESHING_IMPLEMENTATION_GUIDE.md new file mode 100644 index 00000000..66642683 --- /dev/null +++ b/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/GREEDY_MESHING_IMPLEMENTATION_GUIDE.md @@ -0,0 +1,182 @@ +# Greedy Meshing Implementation Guide + +**Purpose:** Step-by-step guide for implementing greedy quad merging (cubic/canonical meshing) in Hytopia’s ChunkWorker. +**Audience:** Engineers implementing Phase 4 (Greedy Meshing). +**Prerequisites:** Read [0fps Part 1](https://0fps.net/2012/06/30/meshing-in-a-minecraft-game/) and [Part 2](https://0fps.net/2012/07/07/meshing-minecraft-part-2/). + +--- + +## 1. Algorithm Overview + +### 1.1 Input and Output + +- **Input:** Chunk of 16³ blocks. Each block has type ID, optional rotation. +- **Output:** Merged quads (position, size, normal, block type, AO, light). + +### 1.2 High-Level Steps + +1. **Group by (block type, normal, material flags).** Faces with same texture and normal are mergeable. +2. **For each direction** (±X, ±Y, ±Z): + - Build a 2D slice of visible faces (e.g. for +Y, iterate Y layers; for each layer, collect top faces). + - Run 2D greedy merge: combine adjacent same-type faces into rectangles. +3. **Emit merged quads** with correct UVs, AO, and lighting. + +--- + +## 2. Detailed Algorithm (0fps Style) + +### 2.1 Slice Extraction + +For direction `+Y` (top faces): + +- For each Y level `y = 0..15`: + - For each (x, z) in 16×16: + - If block at (x, y, z) is solid and block at (x, y+1, z) is air/transparent: + - Add face with normal (0, 1, 0), block type = block at (x, y, z). + - This gives a 16×16 grid of “face presence” per block type. + - Run 2D greedy merge on this grid. + +Repeat for −Y, ±X, ±Z. + +### 2.2 2D Greedy Merge (Per Slice, Per Block Type) + +``` +for each row j in slice: + for each column i in slice: + if visited[i,j]: continue + if no face at (i,j): continue + blockType = face at (i,j) + width = 1 + while i+width < 16 and same block at (i+width, j) and same AO/light: + width++ + height = 1 + while j+height < 16: + row OK = true + for k = 0 to width-1: + if different block or visited[i+k, j+height]: row OK = false; break + if !row OK: break + height++ + mark (i,j)..(i+width-1, j+height-1) as visited + emit quad: origin (i,j), size (width, height), blockType +``` + +### 2.3 Lexicographic Order (0fps) + +To get deterministic, visually stable meshes, merge in a fixed order (e.g. top-to-bottom, left-to-right) and prefer the lexicographically smallest representation when multiple merges are possible. + +--- + +## 3. Integration with ChunkWorker + +### 3.1 Current Flow (Simplified) + +``` +for each block in chunk: + for each face (6 directions): + if face visible (neighbor empty/transparent): + emit quad +``` + +### 3.2 New Flow + +``` +// Group 1: Opaque solid blocks (greedy) +for dir in [+X,-X,+Y,-Y,+Z,-Z]: + slice = extractVisibleFaces(chunk, dir) + for blockType in unique block types in slice: + subslice = slice filtered by blockType + quads = greedyMerge2D(subslice, dir) + emit quads with AO, light + +// Group 2: Transparent / special (per-face, existing logic) +for each block in chunk: + if block is transparent or special: + for each face: + if visible: emit quad +``` + +### 3.3 AO and Lighting + +- Ambient occlusion: compute per-vertex AO from neighbor blocks (as today). +- Light: sample from light volume (as today). +- For merged quads: corners may have different AO/light. Options: + - **Option A:** Use min AO/light of the merged region (slightly darker; simpler). + - **Option B:** Subdivide quad where AO/light changes (more quads, better quality). + - **Recommendation:** Start with Option A; optimize later. + +--- + +## 4. Data Structures + +### 4.1 Slice Representation + +```ts +// 16x16 grid, value = block type ID (0 = no face) +type Slice = Uint8Array; // 256 elements + +// Or: (blockTypeId, ao, light) per cell if we merge only when all match +interface SliceCell { + blockTypeId: number; + ao: number; + light: number; +} +``` + +### 4.2 Visited Mask + +```ts +// 16x16 boolean +const visited = new Uint8Array(256); // 1 bit per cell, or just 256 bytes +``` + +### 4.3 Merged Quad Output + +```ts +interface MergedQuad { + x: number; // local origin + y: number; + z: number; + width: number; // in blocks, along one horizontal axis + height: number; // in blocks, along other axis + normal: [number, number, number]; + blockTypeId: number; + ao: number; // or per-corner if subdividing + light: number; +} +``` + +--- + +## 5. Implementation Order + +| Step | Task | Est. Time | +|------|------|-----------| +| 1 | Slice extraction for +Y (top faces) | 1 day | +| 2 | 2D greedy merge for +Y slice | 1 day | +| 3 | Apply to all 6 directions | 0.5 day | +| 4 | AO/light handling for merged quads | 1 day | +| 5 | Integration: replace per-face loop for opaque solids | 1 day | +| 6 | Benchmark: vertex count and build time | 0.5 day | +| 7 | Edge cases: chunk boundaries, multi-type batches | 1 day | + +--- + +## 6. Expected Results + +| Terrain Type | Before (vertices) | After (est.) | Reduction | +|--------------|-------------------|--------------|-----------| +| Flat 16×16 | ~6000 | ~200 | ~30× | +| Hilly | ~8000 | ~800 | ~10× | +| Caves | ~4000 | ~600 | ~7× | +| Mixed | ~6000 | ~500 | ~12× | + +Build time may increase by 10–30% due to extra passes; vertex reduction should yield net FPS gain. + +--- + +## 7. References + +- [0fps Part 1 – Meshing in a Minecraft Game](https://0fps.net/2012/06/30/meshing-in-a-minecraft-game/) +- [0fps Part 2 – Multiple block types](https://0fps.net/2012/07/07/meshing-minecraft-part-2/) +- [mikolalysenko/greedy-mesher](https://github.com/mikolalysenko/greedy-mesher) (JavaScript reference) +- [Vercidium greedy voxel meshing gist](https://gist.github.com/Vercidium/a3002bd083cce2bc854c9ff8f0118d33) diff --git a/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/MAP_ENGINE_ARCHITECTURE (1).md b/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/MAP_ENGINE_ARCHITECTURE (1).md new file mode 100644 index 00000000..f58f543a --- /dev/null +++ b/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/MAP_ENGINE_ARCHITECTURE (1).md @@ -0,0 +1,272 @@ +# Hytopia Map Engine Architecture + +This document describes how the Hytopia map engine is set up, its data flow, and a roadmap for adapting it to support **binary maps** for extremely large worlds (e.g., 100k×100k×64 blocks). + +--- + +## 1. Architecture Overview + +The map engine spans **server** (authoritative block state), **client** (rendering, meshing), and **protocol** (network serialization). Maps are loaded once at world initialization and populate a chunk-based block lattice. + +``` +┌─────────────────────────────────────────────────────────────────────────┐ +│ MAP LOAD PIPELINE │ +├─────────────────────────────────────────────────────────────────────────┤ +│ │ +│ JSON Map File World.loadMap() ChunkLattice │ +│ (blockTypes, blocks, ───────────────► initializeBlockEntries() │ +│ entities) │ │ │ +│ │ │ ▼ │ +│ │ │ ChunkLattice clears, │ +│ │ │ creates Chunks, │ +│ │ │ builds colliders │ +│ │ │ │ │ +│ │ ▼ ▼ │ +│ │ BlockTypeRegistry Map │ +│ │ (block types) (sparse chunks) │ +│ │ │ │ +│ │ ▼ │ +│ │ NetworkSynchronizer │ +│ │ (chunk sync to │ +│ │ clients) │ +└─────────────────────────────────────────────────────────────────────────┘ +``` + +--- + +## 2. WorldMap Interface (JSON Format) + +Maps conform to the `WorldMap` interface used by `World.loadMap()`: + +| Section | Purpose | Location | +|---------------|--------------------------------------------------------|-------------------------------| +| `blockTypes` | Block type definitions (id, name, textureUri, etc.) | `server/src/worlds/World.ts` | +| `blocks` | Block placements keyed by `"x,y,z"` string | `WorldMap.blocks` | +| `entities` | Entity spawns keyed by `"x,y,z"` position | `WorldMap.entities` | + +### Block Format in JSON + +Each block entry is either: + +- **Short form:** `"x,y,z": ` (e.g. `"-25,0,-16": 7`) +- **Extended form:** `"x,y,z": { "i": , "r": }` + +Coordinates are **world block coordinates** (integers). Block type IDs are 0–255 (0 = air, 1–255 = registered block types). + +### Size Implications of JSON Maps + +| Factor | Impact | +|---------------------------|-----------------------------------------------------------------------| +| Sparse object keys | Each block = `"x,y,z"` string key (10–20+ chars) + JSON overhead | +| No chunk-level batching | All blocks listed individually; no spatial grouping | +| Parsing cost | Full JSON parse loads entire map into memory before processing | +| File size | `boilerplate-small.json` ≈ 4,600+ lines; `big-world` ≈ 309,000+ lines | + +For a **100k×100k×64** fully dense map: + +- Blocks: 640 billion +- JSON would be impractically huge (hundreds of GB+ as text) +- Even sparse terrain would produce multi-GB JSON for large worlds + +--- + +## 3. Chunk Model + +### Chunk Dimensions + +| Constant | Value | Location | +|----------------|-------|--------------------------------------| +| `CHUNK_SIZE` | 16 | `server/src/worlds/blocks/Chunk.ts` | +| `CHUNK_VOLUME` | 4096 | 16³ blocks per chunk | +| `MAX_BLOCK_TYPE_ID` | 255 | `Chunk.ts` | + +Chunk origins are multiples of 16 on each axis (e.g. `(0,0,0)`, `(16,0,0)`, `(0,16,0)`). + +### Chunk Storage + +- **`Chunk._blocks`:** `Uint8Array(4096)` – block type ID per voxel +- **`Chunk._blockRotations`:** `Map` – sparse map of block index → rotation +- **Block index:** `x + (y << 4) + (z << 8)` (local coords 0–15) + +Chunks are stored in `ChunkLattice._chunks` as `Map` keyed by packed chunk origin: + +```typescript +// ChunkLattice._packCoordinate() – 54 bits per axis +chunkKey = (x << 108) | (y << 54) | z +``` + +--- + +## 4. Load Flow: `World.loadMap()` + +```typescript +// server/src/worlds/World.ts +public loadMap(map: WorldMap) { + this.chunkLattice.clear(); + + // 1. Register block types + if (map.blockTypes) { + for (const blockTypeData of map.blockTypes) { + this.blockTypeRegistry.registerGenericBlockType({ ... }); + } + } + + // 2. Iterate blocks as generator, feed to ChunkLattice + if (map.blocks) { + const blockEntries = function* () { + for (const key in mapBlocks) { + const blockValue = mapBlocks[key]; + const blockTypeId = typeof blockValue === 'number' ? blockValue : blockValue.i; + const blockRotationIndex = typeof blockValue === 'number' ? undefined : blockValue.r; + const [x, y, z] = key.split(',').map(Number); + yield { globalCoordinate: { x, y, z }, blockTypeId, blockRotation }; + } + }; + this.chunkLattice.initializeBlockEntries(blockEntries()); + } + + // 3. Spawn entities + if (map.entities) { ... } +} +``` + +### `ChunkLattice.initializeBlockEntries()` + +- Clears the lattice +- For each block: resolves chunk, creates chunk if needed, calls `chunk.setBlock()` +- Tracks block placements per type for colliders +- After all blocks: builds one collider per block type (voxel or trimesh) + +--- + +## 5. Client-Server Chunk Sync + +Chunks are serialized and sent to clients via `NetworkSynchronizer`: + +| Protocol Field | Description | +|----------------|--------------------------------------| +| `c` | Chunk origin `[x, y, z]` | +| `b` | Block IDs `Uint8Array \| number[]` (4096) | +| `r` | Rotations: flat `[blockIndex, rotIndex, ...]` | +| `rm` | Chunk removed flag | + +- **Serializer:** `Serializer.serializeChunk()` → `protocol.ChunkSchema` +- **Client:** `Deserializer.deserializeChunk()` → `DeserializedChunk` +- **ChunkWorker:** Receives `chunk_update`, registers chunk, builds meshes + +The client does **not** load the JSON map. It receives chunks from the server over the network after a player joins a world. + +--- + +## 6. Key Files Reference + +| Component | Path | +|----------------------|--------------------------------------------------| +| WorldMap interface | `server/src/worlds/World.ts` | +| loadMap | `server/src/worlds/World.ts` | +| ChunkLattice | `server/src/worlds/blocks/ChunkLattice.ts` | +| Chunk | `server/src/worlds/blocks/Chunk.ts` | +| ChunkSchema (proto) | `protocol/schemas/Chunk.ts` | +| Serializer | `server/src/networking/Serializer.ts` | +| ChunkWorker (client) | `client/src/workers/ChunkWorker.ts` | +| Deserializer | `client/src/network/Deserializer.ts` | + +--- + +## 7. Binary Map Adaptation Roadmap for 100k×100k×64 + +To support huge maps efficiently, the engine should move from JSON to **binary map sources** with **chunk-level loading** and **streaming**. + +### 7.1 Binary Chunk Format (Proposed) + +Store one file or region per chunk (or region of chunks): + +``` +chunk.{cx}.{cy}.{cz}.bin OR region.{rx}.{ry}.{rz}.bin +``` + +**Suggested layout per chunk (raw):** + +| Offset | Size | Content | +|--------|--------|------------------------------------------| +| 0 | 12 | Origin (3× int32: x, y, z) | +| 12 | 4096 | Block IDs (Uint8Array) | +| 4108 | var | Sparse rotations: count + [idx, rot]... | + +Or use a compact format (e.g. run-length encoding for air, or palette indices) for sparse chunks. + +### 7.2 Streaming / Lazy Loading + +- **Do not** load the entire map into memory. +- Use a **chunk provider** that: + - Accepts `(chunkOriginX, chunkOriginY, chunkOriginZ)` and returns chunk data + - Reads from binary files, memory-mapped files, or a database +- Replace the current `loadMap()` bulk load with: + - Initial load of a small seed area (e.g. spawn region) + - On-demand loading when `ChunkLattice.getOrCreateChunk()` needs a chunk not yet in memory + +### 7.3 Implementation Strategy + +1. **`MapProvider` interface** + ```typescript + interface MapProvider { + getChunk(origin: Vector3Like): ChunkData | null | Promise; + getBlockTypes(): BlockTypeOptions[]; + } + ``` + +2. **`BinaryMapProvider`** + - Reads `.bin` chunk files from disk or object storage + - Maps chunk origin → file path or byte range + - Returns `{ blocks: Uint8Array, rotations: Map }` + +3. **ChunkLattice changes** + - Replace `initializeBlockEntries()` full load with lazy `getOrCreateChunk()` that: + - Checks `_chunks` cache + - If miss: calls `MapProvider.getChunk()`, creates `Chunk`, inserts into `_chunks` + - Optionally preload chunks in a radius around player(s) + +4. **Block types** + - Keep block types in a small JSON or separate binary; they are tiny compared to block data. + - Load once at startup; no need to stream. + +### 7.4 Scale Estimates for 100k×100k×64 + +| Metric | Value | +|---------------------------|--------------------------| +| World dimensions | 100,000 × 100,000 × 64 | +| Chunks (16³) | 6,250 × 6,250 × 4 ≈ 156M chunks | +| Bytes per chunk (raw) | ~4.1 KB (blocks only) | +| Raw block data (if dense) | ~640 GB | +| Sparse (e.g. surface) | Much less; only store non-air chunks | + +Binary format advantages: + +- No JSON parsing; direct `Uint8Array` use +- Chunk-level I/O; load only what’s needed +- Possible memory-mapping for large files +- Optional compression (e.g. LZ4, Zstd) per chunk or region + +### 7.5 Migration Path + +1. **Phase 1:** Add `BinaryMapProvider` that reads chunk `.bin` files; `loadMap()` can accept `WorldMap | MapProvider`. +2. **Phase 2:** Make `ChunkLattice.getOrCreateChunk()` use the provider when a chunk is missing. +3. **Phase 3:** Add tooling to convert existing JSON maps → binary chunk files. +4. **Phase 4:** Optional region/compression format for production. + +--- + +## 8. Summary + +| Current (JSON) | Target (Binary + Streaming) | +|----------------------------|----------------------------------| +| Full map in memory | Chunk-level loading | +| Single large JSON parse | Small reads per chunk | +| Sparse object keys | Dense `Uint8Array` per chunk | +| Not viable for 100k³ scale | Designed for huge worlds | + +The existing `Chunk` and `ChunkLattice` design already matches a chunk-oriented model. The main changes are: + +1. Replace JSON as the map source with a binary chunk provider. +2. Add lazy loading so chunks are fetched on demand. +3. Provide conversion tools and a clear binary chunk layout. diff --git a/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/MAP_ENGINE_ARCHITECTURE.md b/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/MAP_ENGINE_ARCHITECTURE.md new file mode 100644 index 00000000..f58f543a --- /dev/null +++ b/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/MAP_ENGINE_ARCHITECTURE.md @@ -0,0 +1,272 @@ +# Hytopia Map Engine Architecture + +This document describes how the Hytopia map engine is set up, its data flow, and a roadmap for adapting it to support **binary maps** for extremely large worlds (e.g., 100k×100k×64 blocks). + +--- + +## 1. Architecture Overview + +The map engine spans **server** (authoritative block state), **client** (rendering, meshing), and **protocol** (network serialization). Maps are loaded once at world initialization and populate a chunk-based block lattice. + +``` +┌─────────────────────────────────────────────────────────────────────────┐ +│ MAP LOAD PIPELINE │ +├─────────────────────────────────────────────────────────────────────────┤ +│ │ +│ JSON Map File World.loadMap() ChunkLattice │ +│ (blockTypes, blocks, ───────────────► initializeBlockEntries() │ +│ entities) │ │ │ +│ │ │ ▼ │ +│ │ │ ChunkLattice clears, │ +│ │ │ creates Chunks, │ +│ │ │ builds colliders │ +│ │ │ │ │ +│ │ ▼ ▼ │ +│ │ BlockTypeRegistry Map │ +│ │ (block types) (sparse chunks) │ +│ │ │ │ +│ │ ▼ │ +│ │ NetworkSynchronizer │ +│ │ (chunk sync to │ +│ │ clients) │ +└─────────────────────────────────────────────────────────────────────────┘ +``` + +--- + +## 2. WorldMap Interface (JSON Format) + +Maps conform to the `WorldMap` interface used by `World.loadMap()`: + +| Section | Purpose | Location | +|---------------|--------------------------------------------------------|-------------------------------| +| `blockTypes` | Block type definitions (id, name, textureUri, etc.) | `server/src/worlds/World.ts` | +| `blocks` | Block placements keyed by `"x,y,z"` string | `WorldMap.blocks` | +| `entities` | Entity spawns keyed by `"x,y,z"` position | `WorldMap.entities` | + +### Block Format in JSON + +Each block entry is either: + +- **Short form:** `"x,y,z": ` (e.g. `"-25,0,-16": 7`) +- **Extended form:** `"x,y,z": { "i": , "r": }` + +Coordinates are **world block coordinates** (integers). Block type IDs are 0–255 (0 = air, 1–255 = registered block types). + +### Size Implications of JSON Maps + +| Factor | Impact | +|---------------------------|-----------------------------------------------------------------------| +| Sparse object keys | Each block = `"x,y,z"` string key (10–20+ chars) + JSON overhead | +| No chunk-level batching | All blocks listed individually; no spatial grouping | +| Parsing cost | Full JSON parse loads entire map into memory before processing | +| File size | `boilerplate-small.json` ≈ 4,600+ lines; `big-world` ≈ 309,000+ lines | + +For a **100k×100k×64** fully dense map: + +- Blocks: 640 billion +- JSON would be impractically huge (hundreds of GB+ as text) +- Even sparse terrain would produce multi-GB JSON for large worlds + +--- + +## 3. Chunk Model + +### Chunk Dimensions + +| Constant | Value | Location | +|----------------|-------|--------------------------------------| +| `CHUNK_SIZE` | 16 | `server/src/worlds/blocks/Chunk.ts` | +| `CHUNK_VOLUME` | 4096 | 16³ blocks per chunk | +| `MAX_BLOCK_TYPE_ID` | 255 | `Chunk.ts` | + +Chunk origins are multiples of 16 on each axis (e.g. `(0,0,0)`, `(16,0,0)`, `(0,16,0)`). + +### Chunk Storage + +- **`Chunk._blocks`:** `Uint8Array(4096)` – block type ID per voxel +- **`Chunk._blockRotations`:** `Map` – sparse map of block index → rotation +- **Block index:** `x + (y << 4) + (z << 8)` (local coords 0–15) + +Chunks are stored in `ChunkLattice._chunks` as `Map` keyed by packed chunk origin: + +```typescript +// ChunkLattice._packCoordinate() – 54 bits per axis +chunkKey = (x << 108) | (y << 54) | z +``` + +--- + +## 4. Load Flow: `World.loadMap()` + +```typescript +// server/src/worlds/World.ts +public loadMap(map: WorldMap) { + this.chunkLattice.clear(); + + // 1. Register block types + if (map.blockTypes) { + for (const blockTypeData of map.blockTypes) { + this.blockTypeRegistry.registerGenericBlockType({ ... }); + } + } + + // 2. Iterate blocks as generator, feed to ChunkLattice + if (map.blocks) { + const blockEntries = function* () { + for (const key in mapBlocks) { + const blockValue = mapBlocks[key]; + const blockTypeId = typeof blockValue === 'number' ? blockValue : blockValue.i; + const blockRotationIndex = typeof blockValue === 'number' ? undefined : blockValue.r; + const [x, y, z] = key.split(',').map(Number); + yield { globalCoordinate: { x, y, z }, blockTypeId, blockRotation }; + } + }; + this.chunkLattice.initializeBlockEntries(blockEntries()); + } + + // 3. Spawn entities + if (map.entities) { ... } +} +``` + +### `ChunkLattice.initializeBlockEntries()` + +- Clears the lattice +- For each block: resolves chunk, creates chunk if needed, calls `chunk.setBlock()` +- Tracks block placements per type for colliders +- After all blocks: builds one collider per block type (voxel or trimesh) + +--- + +## 5. Client-Server Chunk Sync + +Chunks are serialized and sent to clients via `NetworkSynchronizer`: + +| Protocol Field | Description | +|----------------|--------------------------------------| +| `c` | Chunk origin `[x, y, z]` | +| `b` | Block IDs `Uint8Array \| number[]` (4096) | +| `r` | Rotations: flat `[blockIndex, rotIndex, ...]` | +| `rm` | Chunk removed flag | + +- **Serializer:** `Serializer.serializeChunk()` → `protocol.ChunkSchema` +- **Client:** `Deserializer.deserializeChunk()` → `DeserializedChunk` +- **ChunkWorker:** Receives `chunk_update`, registers chunk, builds meshes + +The client does **not** load the JSON map. It receives chunks from the server over the network after a player joins a world. + +--- + +## 6. Key Files Reference + +| Component | Path | +|----------------------|--------------------------------------------------| +| WorldMap interface | `server/src/worlds/World.ts` | +| loadMap | `server/src/worlds/World.ts` | +| ChunkLattice | `server/src/worlds/blocks/ChunkLattice.ts` | +| Chunk | `server/src/worlds/blocks/Chunk.ts` | +| ChunkSchema (proto) | `protocol/schemas/Chunk.ts` | +| Serializer | `server/src/networking/Serializer.ts` | +| ChunkWorker (client) | `client/src/workers/ChunkWorker.ts` | +| Deserializer | `client/src/network/Deserializer.ts` | + +--- + +## 7. Binary Map Adaptation Roadmap for 100k×100k×64 + +To support huge maps efficiently, the engine should move from JSON to **binary map sources** with **chunk-level loading** and **streaming**. + +### 7.1 Binary Chunk Format (Proposed) + +Store one file or region per chunk (or region of chunks): + +``` +chunk.{cx}.{cy}.{cz}.bin OR region.{rx}.{ry}.{rz}.bin +``` + +**Suggested layout per chunk (raw):** + +| Offset | Size | Content | +|--------|--------|------------------------------------------| +| 0 | 12 | Origin (3× int32: x, y, z) | +| 12 | 4096 | Block IDs (Uint8Array) | +| 4108 | var | Sparse rotations: count + [idx, rot]... | + +Or use a compact format (e.g. run-length encoding for air, or palette indices) for sparse chunks. + +### 7.2 Streaming / Lazy Loading + +- **Do not** load the entire map into memory. +- Use a **chunk provider** that: + - Accepts `(chunkOriginX, chunkOriginY, chunkOriginZ)` and returns chunk data + - Reads from binary files, memory-mapped files, or a database +- Replace the current `loadMap()` bulk load with: + - Initial load of a small seed area (e.g. spawn region) + - On-demand loading when `ChunkLattice.getOrCreateChunk()` needs a chunk not yet in memory + +### 7.3 Implementation Strategy + +1. **`MapProvider` interface** + ```typescript + interface MapProvider { + getChunk(origin: Vector3Like): ChunkData | null | Promise; + getBlockTypes(): BlockTypeOptions[]; + } + ``` + +2. **`BinaryMapProvider`** + - Reads `.bin` chunk files from disk or object storage + - Maps chunk origin → file path or byte range + - Returns `{ blocks: Uint8Array, rotations: Map }` + +3. **ChunkLattice changes** + - Replace `initializeBlockEntries()` full load with lazy `getOrCreateChunk()` that: + - Checks `_chunks` cache + - If miss: calls `MapProvider.getChunk()`, creates `Chunk`, inserts into `_chunks` + - Optionally preload chunks in a radius around player(s) + +4. **Block types** + - Keep block types in a small JSON or separate binary; they are tiny compared to block data. + - Load once at startup; no need to stream. + +### 7.4 Scale Estimates for 100k×100k×64 + +| Metric | Value | +|---------------------------|--------------------------| +| World dimensions | 100,000 × 100,000 × 64 | +| Chunks (16³) | 6,250 × 6,250 × 4 ≈ 156M chunks | +| Bytes per chunk (raw) | ~4.1 KB (blocks only) | +| Raw block data (if dense) | ~640 GB | +| Sparse (e.g. surface) | Much less; only store non-air chunks | + +Binary format advantages: + +- No JSON parsing; direct `Uint8Array` use +- Chunk-level I/O; load only what’s needed +- Possible memory-mapping for large files +- Optional compression (e.g. LZ4, Zstd) per chunk or region + +### 7.5 Migration Path + +1. **Phase 1:** Add `BinaryMapProvider` that reads chunk `.bin` files; `loadMap()` can accept `WorldMap | MapProvider`. +2. **Phase 2:** Make `ChunkLattice.getOrCreateChunk()` use the provider when a chunk is missing. +3. **Phase 3:** Add tooling to convert existing JSON maps → binary chunk files. +4. **Phase 4:** Optional region/compression format for production. + +--- + +## 8. Summary + +| Current (JSON) | Target (Binary + Streaming) | +|----------------------------|----------------------------------| +| Full map in memory | Chunk-level loading | +| Single large JSON parse | Small reads per chunk | +| Sparse object keys | Dense `Uint8Array` per chunk | +| Not viable for 100k³ scale | Designed for huge worlds | + +The existing `Chunk` and `ChunkLattice` design already matches a chunk-oriented model. The main changes are: + +1. Replace JSON as the map source with a binary chunk provider. +2. Add lazy loading so chunks are fetched on demand. +3. Provide conversion tools and a clear binary chunk layout. diff --git a/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/MINECRAFT_ARCHITECTURE_RESEARCH.md b/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/MINECRAFT_ARCHITECTURE_RESEARCH.md new file mode 100644 index 00000000..c7280c72 --- /dev/null +++ b/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/MINECRAFT_ARCHITECTURE_RESEARCH.md @@ -0,0 +1,161 @@ +# Minecraft Architecture Research + +**Purpose:** Inform Hytopia’s voxel engine design with lessons from Minecraft Java and Bedrock. +**Audience:** Engineers implementing chunk loading, colliders, and meshing. +**Sources:** Technical wikis, decompilations, community analysis, engine talks. + +--- + +## 1. Chunk System Overview + +### 1.1 Chunk Structure + +| Version | Chunk Size | Subchunk | Notes | +|---------|------------|----------|-------| +| Java | 16×256×16 (XZ columns) | 16×16×16 sections | Vertical column; sections loaded independently | +| Bedrock | 16×256×16 | 16×16×16 | Similar; different storage layout | + +**Hytopia:** 16×16×16 chunks, 2×2×2 batches (32³). Aligns with common practice. + +### 1.2 Loading States (Java 1.14+) + +Minecraft separates chunk lifecycle into distinct states: + +| State | Purpose | +|-------|---------| +| **Empty** | Not loaded | +| **Structure** | Structures placed | +| **Noise** | Terrain generated | +| **Surface** | Surface blocks, biomes | +| **Carvers** | Caves, ravines | +| **Features** | Trees, ores, etc. | +| **Entity ticking** | Physics, entities, block updates | + +**Key insight:** Entity ticking requires a 5×5 grid of loaded chunks around the center chunk. Border chunks can be “lazy” (block updates only, no entities). This **spatial locality** keeps entity/physics work bounded. + +**Hytopia takeaway:** Only tick entities and step physics for chunks near players. Don’t pay for distant chunks. + +### 1.3 Spawn Chunks + +- 19×19 chunks (Java) or 23×23 (Bedrock) always loaded around spawn. +- Only center ~12×12 process entities. +- Reduces load/unload churn at spawn. + +**Hytopia:** Preload radius already exists; consider an “always loaded” spawn core for hubs. + +--- + +## 2. File I/O and Region Format + +### 2.1 Region Files + +- One file per 32×32 chunk region (XZ). +- Anvil format: 4 KB header (1024 entries × 4 bytes) + chunk payloads. +- Chunks stored with length prefix + compression (typically zlib; Bedrock uses different schemes). +- **Async I/O:** Modern implementations use background threads; main thread never blocks on disk. + +### 2.2 Chunk Serialization + +- Block IDs, block states, light, heightmap, biomes stored per chunk. +- Compression reduces size by ~90% for typical terrain. + +**Hytopia:** Region format exists; `readChunkAsync` and `writeChunk` (sync) are in place. Priority: make persist async. + +--- + +## 3. Terrain Generation + +### 3.1 Worker Pool + +- Terrain generation runs in worker threads. +- Main thread requests chunk; worker generates; result returned asynchronously. +- Multiple workers allow parallelism. + +### 3.2 Generation Stages + +- Noise → carvers → features (trees, ores). +- Each stage can be parallelized or deferred. + +**Hytopia:** `TerrainWorkerPool` + `generateChunkAsync` exist. Ensure `requestChunk` uses this path and doesn’t fall back to sync. + +--- + +## 4. Physics and Collision + +### 4.1 Chunk-Section Colliders + +- Collision is built per 16×16×16 section. +- Sections far from players may not have colliders at all, or use simplified shapes. +- Colliders are created/updated in batches, not all at once. + +### 4.2 Spatial Partitioning + +- Physics world uses spatial partitioning (e.g. broadphase). +- Entity vs. block collision: only check nearby chunks. +- No global scan over entire world. + +**Hytopia gap:** `_combineVoxelStates` iterates all chunks of a block type. Must restrict to nearby chunks. + +--- + +## 5. Meshing and Rendering + +### 5.1 Greedy Meshing (Ambient Occlusion) + +- Minecraft uses an approximation of greedy meshing (block model merging). +- Adjacent faces of same block type are merged into larger quads where possible. +- Results in 2–64× fewer quads than per-face rendering. + +### 5.2 Occlusion Culling + +- Section-level visibility: if a section is fully behind solid terrain, skip rendering. +- BFS from camera through air/transparent blocks; mark visible sections. +- ~10–15% frame time savings in cave-heavy areas. + +### 5.3 LOD + +- Distant chunks use lower-detail meshes or impostors. +- Reduces overdraw and vertex count. + +**Hytopia:** Face culling ✅; greedy meshing ❌; occlusion partial; LOD step 2/4. Biggest win: greedy meshing. + +--- + +## 6. Network + +### 6.1 Chunk Packets + +- Chunks sent incrementally; rate-limited to avoid client flood. +- Delta updates for modified chunks (block changes) vs. full chunk for new loads. + +### 6.2 Entity Sync + +- Position/rotation use compact encodings (fixed-point or quantized). +- Entities use delta or relative positioning where possible. +- Distant entities may sync at lower rate. + +**Source:** [Minecraft Protocol (wiki.vg)](https://wiki.vg/Protocol#Entity_Metadata) + +--- + +## 7. Lessons for Hytopia + +| Minecraft Pattern | Hytopia Status | Action | +|-------------------|----------------|--------| +| Async chunk load | ✅ `requestChunk` + `getChunkAsync` | Verify usage | +| Async I/O | ✅ `readChunkAsync` | Make persist async | +| Worker terrain gen | ✅ TerrainWorkerPool | Verify | +| Collider locality | ❌ O(world) scans | Phase 1: spatial index, scoped merge | +| Greedy meshing | ❌ | Phase 4 | +| Occlusion | ⚠️ Partial | Phase 5 | +| Entity quantization | ❌ | Phase 3 | +| Distance-based sync | ❌ | Phase 3 | + +--- + +## References + +- [Chunk Loading – Technical Minecraft Wiki](https://techmcdocs.github.io/pages/GameMechanics/ChunkLoading/) +- [Minecraft Protocol – wiki.vg](https://wiki.vg/Protocol) +- [0fps Meshing in a Minecraft Game](https://0fps.net/2012/06/30/meshing-in-a-minecraft-game/) +- [Fabric Modding Documentation (chunk loading states)](https://fabricmc.net/wiki/) diff --git a/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/NETWORK_PROTOCOL_2026_RESEARCH.md b/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/NETWORK_PROTOCOL_2026_RESEARCH.md new file mode 100644 index 00000000..722d42a8 --- /dev/null +++ b/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/NETWORK_PROTOCOL_2026_RESEARCH.md @@ -0,0 +1,130 @@ +# Network Protocol 2026 Research + +**Purpose:** Modern entity sync and chunk sync patterns for low-bandwidth, low-latency voxel multiplayer. +**Audience:** Engineers implementing Phase 3 (Entity Sync Compression). + +--- + +## 1. Entity Sync: Industry Patterns + +### 1.1 Minecraft (Java) + +- Entity position/rotation sent as fixed-point or scaled integers. +- Metadata uses compact type tags. +- Delta updates for moving entities; full state on spawn or major change. + +### 1.2 Source Engine / Garry’s Mod + +- **Delta compression:** Send only changed fields; baseline is last full update. +- **Quantization:** Position in 1/16 or 1/32 unit; angles in 16-bit. + +### 1.3 Overwatch / Modern FPS + +- Client-side prediction + server reconciliation. +- Entity updates at 20–60 Hz for nearby; lower for distant. +- Snapshot compression: delta from previous snapshot. + +### 1.4 Gaffer On Games (Networked Physics) + +- [Snapshot Compression](http://gafferongames.com/networked-physics/snapshot-compression/) +- Quaternion: store 3 largest components (smallest-three); 4th derived. +- Position: fixed-point or quantized. +- Delta encoding: send difference from last acked state. + +--- + +## 2. Quantization Formulas + +### 2.1 Position (Fixed-Point) + +```ts +const QUANT = 256; // 1/256 block = 0.0039 block precision +const clamp = (v: number) => Math.max(-32768, Math.min(32767, Math.round(v * QUANT))); + +// Encode +pq: [clamp(x), clamp(y), clamp(z)] // Int16Array or [number, number, number] + +// Decode +x = pq[0] / QUANT; +``` + +**Range:** ±32768 blocks ≈ ±524 km. More than enough. + +### 2.2 Quaternion (Smallest-Three) + +- Unit quaternion: `q.x² + q.y² + q.z² + q.w² = 1`. +- One component can be derived from the other three. +- Store the 3 components with largest magnitude; 1 byte for index of omitted component. +- Quantize each stored component to 16-bit: `value * 32767` for range [-1, 1]. + +**Size:** 1 + 3×2 = 7 bytes vs 4×4 = 16 bytes (float32). ~56% smaller. + +**Reference:** [Gaffer On Games](http://gafferongames.com/networked-physics/snapshot-compression/) + +### 2.3 Yaw-Only (Euler) + +- For entities that only rotate around Y: send 1 float (radians) or 16-bit quantized. +- `yaw = 2*PI * (int16 / 65536)`. +- 2 bytes vs 16 bytes for full quaternion. + +--- + +## 3. Distance-Based Sync Rate + +| Distance Band | Sync Rate | Use Case | +|---------------|-----------|----------| +| 0–4 chunks | 30 Hz | Player, nearby NPCs | +| 4–8 chunks | 15 Hz | Mid-range entities | +| 8+ chunks | 5 Hz | Far entities, environmental | + +**Implementation:** In `checkAndEmitUpdates` or NetworkSynchronizer, compute distance from nearest player; only emit if `tick % rateDivisor === 0`. + +--- + +## 4. Bulk Format (Structure of Arrays) + +Instead of: + +```json +[ + { "i": 1, "p": [10.5, 20.1, 30.2] }, + { "i": 2, "p": [11.2, 20.0, 31.1] } +] +``` + +Use: + +```json +{ + "ids": [1, 2], + "p": [[2693, 5146, 7733], [2867, 5120, 7962]] +} +``` + +- Quantized positions in `p` (Int16). +- Avoids repeating keys; msgpack benefits from smaller maps. +- **Caveat:** New packet type; client must support. Can run parallel to existing EntitiesPacket during migration. + +--- + +## 5. Protocol Versioning + +- Add optional fields to EntitySchema: `pq`, `rq`, `ry`. +- Old clients ignore unknown fields; new clients prefer them. +- Server flag: `useQuantizedEntitySync=true` (default for new connections after version bump). + +--- + +## 6. Chunk Delta Updates (Phase 6) + +- When a single block changes, send delta: `{ chunkId, blockIndex, blockTypeId }` instead of full chunk. +- Client applies delta to local chunk; requests full chunk if out of sync. +- Reduces bandwidth for frequent block edits (mining, building). + +--- + +## 7. References + +- [Gaffer On Games – Snapshot Compression](http://gafferongames.com/networked-physics/snapshot-compression/) +- [Minecraft Protocol – wiki.vg](https://wiki.vg/Protocol) +- [ENTITY_SYNC_DELTA_COMPRESSION_DESIGN.md](../ENTITY_SYNC_DELTA_COMPRESSION_DESIGN.md) – Hytopia-specific design diff --git a/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/SMOOTH_WORLD_STREAMING_REFACTOR_PLAN (1).md b/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/SMOOTH_WORLD_STREAMING_REFACTOR_PLAN (1).md new file mode 100644 index 00000000..cead4812 --- /dev/null +++ b/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/SMOOTH_WORLD_STREAMING_REFACTOR_PLAN (1).md @@ -0,0 +1,180 @@ +# Smooth World Streaming Refactor Plan + +> **Canonical roadmap:** See [VOXEL_ENGINE_2026_MASTER_PLAN.md](./VOXEL_ENGINE_2026_MASTER_PLAN.md) for the full executive plan and phased roadmap. This document provides additional context and cross-references. + +**Goal:** Peak performance for the procedurally generated world—smooth streaming, no lag spikes, Minecraft/Hytale/bloxd-level polish. + +**Sources:** Codebase analysis, [VOXEL_PERFORMANCE_MASTER_PLAN.md](./VOXEL_PERFORMANCE_MASTER_PLAN.md), [CHUNK_LOADING_ARCHITECTURE.md](./CHUNK_LOADING_ARCHITECTURE.md), [VOXEL_RENDERING_RESEARCH.md](./VOXEL_RENDERING_RESEARCH.md), [PR #21](https://github.com/hytopiagg/hytopia-source/pull/21), and industry patterns from Minecraft, Hytale, and Bloxd. + +--- + +## 1. Competitive Analysis: Minecraft vs Hytale vs Bloxd vs Hytopia + +| Aspect | Minecraft | Hytale | Bloxd | Hytopia (Current) | +|--------|-----------|--------|-------|-------------------| +| **Chunk load** | Worker threads, async | Worker pool | JS async | ✅ `requestChunk` + `getChunkAsync` (TerrainWorkerPool) | +| **File I/O** | Async | Async | N/A (streaming) | ✅ `readChunkAsync` (PersistenceChunkProvider) | +| **Terrain gen** | Worker threads | Worker pool | — | ✅ `generateChunkAsync` (TerrainWorkerPool) | +| **Physics colliders** | Deferred, O(chunk) | Batched, spatial | Custom voxel | ❌ Sync, O(world) via `_combineVoxelStates` | +| **Collider locality** | Per-chunk, near player | Spatial culling | — | ⚠️ Partial (COLLIDER_MAX_CHUNK_DISTANCE=3) | +| **Greedy meshing** | ✅ | ✅ (mesh culling) | ✅ | ❌ 1 quad/face, ~64× extra geometry | +| **Chunk send rate** | Incremental, rate-limited | Batched | Streaming | ⚠️ MAX_CHUNKS_PER_SYNC=8, can burst | +| **Entity sync** | Delta / compressed | — | — | Full pos/rot 30 Hz, 90%+ of packets | +| **LOD** | ✅ | Variable chunk sizes | — | ✅ (step 2/4) | +| **Occlusion** | Cave culling | Partial | — | ⚠️ Only when over face limit | +| **Vertex pooling** | — | — | ✅ | ⚠️ Partial (size-match reuse) | +| **Map compression** | Region format | — | — | ❌ JSON maps large; PR #21 adds compression | + +**Gap summary:** Hytopia’s biggest gaps are (1) collider work O(world) and sync, (2) no greedy meshing, (3) entity sync volume, (4) JSON map size for non-procedural games. Procedural world already uses async load + worker terrain gen; collider and client-side mesh work are the main bottlenecks. + +--- + +## 2. PR #21 Relevance to Procedural World + +[PR #21: Compressed world maps](https://github.com/hytopiagg/hytopia-source/pull/21) targets **JSON maps** (`loadMap(map.json)`), not procedural/region worlds. It adds: + +| Feature | Applies to Procedural? | Notes | +|---------|------------------------|-------| +| `map.compressed.json` | ❌ | JSON map format only | +| `map.chunks.bin` (chunk cache) | ❌ | Prebaked JSON map chunks | +| Chunk cache collider build | ⚠️ Partially | “perf: speed up chunk cache collider build” can inform collider design | +| Brotli compression | ❌ | For map JSON, not region .bin | +| Auto-detect / `hytopia map-compress` | ❌ | JSON map workflow | + +**Recommendation:** Merge PR #21 for JSON-map games (huntcraft, boilerplate, etc.). For procedural world, reuse the collider build approach where relevant. Procedural persistence uses region `.bin`; consider Brotli for region payloads later. + +--- + +## 3. Root Cause Summary + +When a player joins and blocks have physics: + +1. **Physics step (60 Hz):** Rapier steps the entire world, including all block colliders + player rigid body. +2. **Collider creation:** `_addChunkBlocksToColliders` → `_combineVoxelStates` scans all chunks of each block type (O(world)). +3. **Entity sync (30 Hz):** Full position/rotation for entities/players every 2 ticks; dominates packet volume. +4. **Chunk sync:** Up to 8 chunks per sync; client mesh build can spike main thread. +5. **Client mesh:** No greedy meshing → 2–64× more vertices than needed. +6. **ADD_CHUNK events:** Environmental entity spawn per chunk runs synchronously. + +--- + +## 4. Refactoring Plan (Prioritized) + +### Phase 1: Stop the Bleeding (1–2 weeks) + +| # | Task | Impact | Effort | Files | +|---|------|--------|--------|-------| +| 1.1 | **Collider locality – spatial index** | High | 3–5 days | `ChunkLattice.ts` | +| 1.2 | **Scoped `_combineVoxelStates`** | High | 2–3 days | `ChunkLattice.ts` | +| 1.3 | **Time-budget collider processing** | Medium | ✅ Done | `playground.ts` | +| 1.4 | **CHUNKS_PER_TICK = 3** | ✅ Done | — | `playground.ts` | +| 1.5 | **Defer environmental entity spawn** | Medium | 1 day | `playground.ts` | + +**1.1–1.2:** Replace global scans with spatial indexing. `_getBlockTypePlacements` and `_combineVoxelStates` should only consider chunks within a radius (e.g. 4–5 chunks) of any player. Add a spatial index (e.g. chunk key → block placements) and only merge voxel state for nearby chunks. + +### Phase 2: Main Thread Freedom (2–3 weeks) + +| # | Task | Impact | Effort | Files | +|---|------|--------|--------|-------| +| 2.1 | **Async persistChunk** | Medium | 1–2 days | `PersistenceChunkProvider.ts`, `RegionFileFormat.ts` | +| 2.2 | **Worker terrain gen verification** | — | 0.5 day | `TerrainWorkerPool.ts`, `ProceduralChunkProvider.ts` | +| 2.3 | **Incremental voxel collider updates** | High | 3–5 days | `ChunkLattice.ts` | +| 2.4 | **Chunk send pacing** | Medium | 1–2 days | `NetworkSynchronizer.ts` | + +**2.1:** `persistChunk` currently calls `writeChunk` (sync). Move to async; queue writes and process in background. + +**2.3:** Add blocks to voxel colliders in batches (e.g. 256–512/tick) instead of full chunk. Use Rapier voxel API if it supports incremental updates. + +### Phase 3: Network & Sync (2–3 weeks) + +| # | Task | Impact | Effort | Files | +|---|------|--------|--------|-------| +| 3.1 | **Entity delta/compression** | High | 5–7 days | `NetworkSynchronizer.ts`, `Serializer.ts`, protocol | +| 3.2 | **Chunk delta updates** | Medium | 3–4 days | `NetworkSynchronizer.ts`, `ChunkLattice` | +| 3.3 | **Predictive chunk preload** | Medium | 2–3 days | `playground.ts` | + +**3.1:** Send position/rotation deltas or use quantized floats. Reference: Minecraft’s entity compression, Hytale’s QUIC usage. + +### Phase 4: Client Render Pipeline (3–4 weeks) + +| # | Task | Impact | Effort | Files | +|---|------|--------|--------|-------| +| 4.1 | **Greedy meshing (quad merging)** | Very high | 5–7 days | `ChunkWorker.ts` | +| 4.2 | **Vertex pooling** | Medium | 2–3 days | `ChunkMeshManager.ts`, `ChunkWorker.ts` | +| 4.3 | **Occlusion culling always-on** | Medium | 2–3 days | `ChunkManager.ts`, `Renderer.ts` | +| 4.4 | **Mesh apply budget** | Low | 1 day | `ChunkManager.ts` | + +**4.1:** Implement 0fps-style greedy meshing for opaque solids. Merge adjacent same-type faces; expect 2–64× fewer vertices. References: [0fps](https://0fps.net/2012/06/30/meshing-in-a-minecraft-game/), [mikolalysenko/greedy-mesher](https://github.com/mikolalysenko/greedy-mesher). + +### Phase 5: Long-Term & Polish (ongoing) + +| # | Task | Impact | Effort | +|---|------|--------|--------| +| 5.1 | LOD impostors for distant chunks | Medium | 2–3 weeks | +| 5.2 | Brotli for region .bin payloads | Low | 1 week | +| 5.3 | Block/face limits (safety cap) | Low | <1 day | +| 5.4 | Profiling hooks (tick, chunk, mesh) | Low | 2–3 days | + +--- + +## 5. Implementation Order + +``` +Week 1–2: Phase 1 (collider locality, scoped _combineVoxelStates, defer env spawn) +Week 3–4: Phase 2 (async persistChunk, incremental voxel, chunk send pacing) +Week 5–6: Phase 3 (entity delta, chunk delta, predictive preload) +Week 7–10: Phase 4 (greedy meshing, vertex pooling, occlusion) +Ongoing: Phase 5 +``` + +--- + +## 6. Success Metrics + +| Metric | Current (Est.) | Target | +|--------|----------------|--------| +| Lag spikes when walking | Every ~5 steps | None within preload radius | +| Server tick time (p99) | 50–200 ms | < 16 ms | +| Chunk load (blocking) | 20–100 ms | < 5 ms (async) | +| Vertices per flat chunk | ~6000 | ~200–500 (greedy) | +| Client frame time | Spikes on new chunks | Stable ~16 ms (60 fps) | +| Entity packet share | ~90% | < 50% (delta/compression) | + +--- + +## 7. Key Files Reference + +| Component | Path | +|-----------|------| +| Chunk load loop | `server/src/playground.ts` | +| Collider processing | `server/src/worlds/blocks/ChunkLattice.ts` | +| Physics simulation | `server/src/worlds/physics/Simulation.ts` | +| Mesh generation | `client/src/workers/ChunkWorker.ts` | +| Chunk sync | `server/src/networking/NetworkSynchronizer.ts` | +| Region I/O | `server/src/worlds/maps/RegionFileFormat.ts` | +| Terrain gen | `server/src/worlds/maps/TerrainGenerator.ts`, `TerrainWorkerPool.ts` | +| Procedural provider | `server/src/worlds/maps/ProceduralChunkProvider.ts` | +| Persistence provider | `server/src/worlds/maps/PersistenceChunkProvider.ts` | +| World loop | `server/src/worlds/WorldLoop.ts` | + +--- + +## 8. PR #21 Action Items + +1. **Merge PR #21** for JSON-map games (boilerplate, huntcraft, etc.). +2. **Reuse chunk cache collider patterns** in `ChunkLattice` if applicable. +3. **Later:** Consider Brotli for region payloads or a similar compression layer. + +--- + +## 9. References + +- [VOXEL_PERFORMANCE_MASTER_PLAN.md](./VOXEL_PERFORMANCE_MASTER_PLAN.md) +- [CHUNK_LOADING_ARCHITECTURE.md](./CHUNK_LOADING_ARCHITECTURE.md) +- [VOXEL_RENDERING_RESEARCH.md](./VOXEL_RENDERING_RESEARCH.md) +- [OPTIMIZATION_STRATEGY.md](./OPTIMIZATION_STRATEGY.md) +- [PR #21 – Compressed world maps](https://github.com/hytopiagg/hytopia-source/pull/21) +- [0fps Greedy Meshing](https://0fps.net/2012/06/30/meshing-in-a-minecraft-game/) +- [mikolalysenko/greedy-mesher](https://github.com/mikolalysenko/greedy-mesher) +- [Minecraft Chunk Loading (Technical Wiki)](https://techmcdocs.github.io/pages/GameMechanics/ChunkLoading/) +- [Hytale Engine Technical Deep Dive](https://hytalecharts.com/news/hytale-engine-technical-deep-dive) diff --git a/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/SMOOTH_WORLD_STREAMING_REFACTOR_PLAN.md b/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/SMOOTH_WORLD_STREAMING_REFACTOR_PLAN.md new file mode 100644 index 00000000..cead4812 --- /dev/null +++ b/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/SMOOTH_WORLD_STREAMING_REFACTOR_PLAN.md @@ -0,0 +1,180 @@ +# Smooth World Streaming Refactor Plan + +> **Canonical roadmap:** See [VOXEL_ENGINE_2026_MASTER_PLAN.md](./VOXEL_ENGINE_2026_MASTER_PLAN.md) for the full executive plan and phased roadmap. This document provides additional context and cross-references. + +**Goal:** Peak performance for the procedurally generated world—smooth streaming, no lag spikes, Minecraft/Hytale/bloxd-level polish. + +**Sources:** Codebase analysis, [VOXEL_PERFORMANCE_MASTER_PLAN.md](./VOXEL_PERFORMANCE_MASTER_PLAN.md), [CHUNK_LOADING_ARCHITECTURE.md](./CHUNK_LOADING_ARCHITECTURE.md), [VOXEL_RENDERING_RESEARCH.md](./VOXEL_RENDERING_RESEARCH.md), [PR #21](https://github.com/hytopiagg/hytopia-source/pull/21), and industry patterns from Minecraft, Hytale, and Bloxd. + +--- + +## 1. Competitive Analysis: Minecraft vs Hytale vs Bloxd vs Hytopia + +| Aspect | Minecraft | Hytale | Bloxd | Hytopia (Current) | +|--------|-----------|--------|-------|-------------------| +| **Chunk load** | Worker threads, async | Worker pool | JS async | ✅ `requestChunk` + `getChunkAsync` (TerrainWorkerPool) | +| **File I/O** | Async | Async | N/A (streaming) | ✅ `readChunkAsync` (PersistenceChunkProvider) | +| **Terrain gen** | Worker threads | Worker pool | — | ✅ `generateChunkAsync` (TerrainWorkerPool) | +| **Physics colliders** | Deferred, O(chunk) | Batched, spatial | Custom voxel | ❌ Sync, O(world) via `_combineVoxelStates` | +| **Collider locality** | Per-chunk, near player | Spatial culling | — | ⚠️ Partial (COLLIDER_MAX_CHUNK_DISTANCE=3) | +| **Greedy meshing** | ✅ | ✅ (mesh culling) | ✅ | ❌ 1 quad/face, ~64× extra geometry | +| **Chunk send rate** | Incremental, rate-limited | Batched | Streaming | ⚠️ MAX_CHUNKS_PER_SYNC=8, can burst | +| **Entity sync** | Delta / compressed | — | — | Full pos/rot 30 Hz, 90%+ of packets | +| **LOD** | ✅ | Variable chunk sizes | — | ✅ (step 2/4) | +| **Occlusion** | Cave culling | Partial | — | ⚠️ Only when over face limit | +| **Vertex pooling** | — | — | ✅ | ⚠️ Partial (size-match reuse) | +| **Map compression** | Region format | — | — | ❌ JSON maps large; PR #21 adds compression | + +**Gap summary:** Hytopia’s biggest gaps are (1) collider work O(world) and sync, (2) no greedy meshing, (3) entity sync volume, (4) JSON map size for non-procedural games. Procedural world already uses async load + worker terrain gen; collider and client-side mesh work are the main bottlenecks. + +--- + +## 2. PR #21 Relevance to Procedural World + +[PR #21: Compressed world maps](https://github.com/hytopiagg/hytopia-source/pull/21) targets **JSON maps** (`loadMap(map.json)`), not procedural/region worlds. It adds: + +| Feature | Applies to Procedural? | Notes | +|---------|------------------------|-------| +| `map.compressed.json` | ❌ | JSON map format only | +| `map.chunks.bin` (chunk cache) | ❌ | Prebaked JSON map chunks | +| Chunk cache collider build | ⚠️ Partially | “perf: speed up chunk cache collider build” can inform collider design | +| Brotli compression | ❌ | For map JSON, not region .bin | +| Auto-detect / `hytopia map-compress` | ❌ | JSON map workflow | + +**Recommendation:** Merge PR #21 for JSON-map games (huntcraft, boilerplate, etc.). For procedural world, reuse the collider build approach where relevant. Procedural persistence uses region `.bin`; consider Brotli for region payloads later. + +--- + +## 3. Root Cause Summary + +When a player joins and blocks have physics: + +1. **Physics step (60 Hz):** Rapier steps the entire world, including all block colliders + player rigid body. +2. **Collider creation:** `_addChunkBlocksToColliders` → `_combineVoxelStates` scans all chunks of each block type (O(world)). +3. **Entity sync (30 Hz):** Full position/rotation for entities/players every 2 ticks; dominates packet volume. +4. **Chunk sync:** Up to 8 chunks per sync; client mesh build can spike main thread. +5. **Client mesh:** No greedy meshing → 2–64× more vertices than needed. +6. **ADD_CHUNK events:** Environmental entity spawn per chunk runs synchronously. + +--- + +## 4. Refactoring Plan (Prioritized) + +### Phase 1: Stop the Bleeding (1–2 weeks) + +| # | Task | Impact | Effort | Files | +|---|------|--------|--------|-------| +| 1.1 | **Collider locality – spatial index** | High | 3–5 days | `ChunkLattice.ts` | +| 1.2 | **Scoped `_combineVoxelStates`** | High | 2–3 days | `ChunkLattice.ts` | +| 1.3 | **Time-budget collider processing** | Medium | ✅ Done | `playground.ts` | +| 1.4 | **CHUNKS_PER_TICK = 3** | ✅ Done | — | `playground.ts` | +| 1.5 | **Defer environmental entity spawn** | Medium | 1 day | `playground.ts` | + +**1.1–1.2:** Replace global scans with spatial indexing. `_getBlockTypePlacements` and `_combineVoxelStates` should only consider chunks within a radius (e.g. 4–5 chunks) of any player. Add a spatial index (e.g. chunk key → block placements) and only merge voxel state for nearby chunks. + +### Phase 2: Main Thread Freedom (2–3 weeks) + +| # | Task | Impact | Effort | Files | +|---|------|--------|--------|-------| +| 2.1 | **Async persistChunk** | Medium | 1–2 days | `PersistenceChunkProvider.ts`, `RegionFileFormat.ts` | +| 2.2 | **Worker terrain gen verification** | — | 0.5 day | `TerrainWorkerPool.ts`, `ProceduralChunkProvider.ts` | +| 2.3 | **Incremental voxel collider updates** | High | 3–5 days | `ChunkLattice.ts` | +| 2.4 | **Chunk send pacing** | Medium | 1–2 days | `NetworkSynchronizer.ts` | + +**2.1:** `persistChunk` currently calls `writeChunk` (sync). Move to async; queue writes and process in background. + +**2.3:** Add blocks to voxel colliders in batches (e.g. 256–512/tick) instead of full chunk. Use Rapier voxel API if it supports incremental updates. + +### Phase 3: Network & Sync (2–3 weeks) + +| # | Task | Impact | Effort | Files | +|---|------|--------|--------|-------| +| 3.1 | **Entity delta/compression** | High | 5–7 days | `NetworkSynchronizer.ts`, `Serializer.ts`, protocol | +| 3.2 | **Chunk delta updates** | Medium | 3–4 days | `NetworkSynchronizer.ts`, `ChunkLattice` | +| 3.3 | **Predictive chunk preload** | Medium | 2–3 days | `playground.ts` | + +**3.1:** Send position/rotation deltas or use quantized floats. Reference: Minecraft’s entity compression, Hytale’s QUIC usage. + +### Phase 4: Client Render Pipeline (3–4 weeks) + +| # | Task | Impact | Effort | Files | +|---|------|--------|--------|-------| +| 4.1 | **Greedy meshing (quad merging)** | Very high | 5–7 days | `ChunkWorker.ts` | +| 4.2 | **Vertex pooling** | Medium | 2–3 days | `ChunkMeshManager.ts`, `ChunkWorker.ts` | +| 4.3 | **Occlusion culling always-on** | Medium | 2–3 days | `ChunkManager.ts`, `Renderer.ts` | +| 4.4 | **Mesh apply budget** | Low | 1 day | `ChunkManager.ts` | + +**4.1:** Implement 0fps-style greedy meshing for opaque solids. Merge adjacent same-type faces; expect 2–64× fewer vertices. References: [0fps](https://0fps.net/2012/06/30/meshing-in-a-minecraft-game/), [mikolalysenko/greedy-mesher](https://github.com/mikolalysenko/greedy-mesher). + +### Phase 5: Long-Term & Polish (ongoing) + +| # | Task | Impact | Effort | +|---|------|--------|--------| +| 5.1 | LOD impostors for distant chunks | Medium | 2–3 weeks | +| 5.2 | Brotli for region .bin payloads | Low | 1 week | +| 5.3 | Block/face limits (safety cap) | Low | <1 day | +| 5.4 | Profiling hooks (tick, chunk, mesh) | Low | 2–3 days | + +--- + +## 5. Implementation Order + +``` +Week 1–2: Phase 1 (collider locality, scoped _combineVoxelStates, defer env spawn) +Week 3–4: Phase 2 (async persistChunk, incremental voxel, chunk send pacing) +Week 5–6: Phase 3 (entity delta, chunk delta, predictive preload) +Week 7–10: Phase 4 (greedy meshing, vertex pooling, occlusion) +Ongoing: Phase 5 +``` + +--- + +## 6. Success Metrics + +| Metric | Current (Est.) | Target | +|--------|----------------|--------| +| Lag spikes when walking | Every ~5 steps | None within preload radius | +| Server tick time (p99) | 50–200 ms | < 16 ms | +| Chunk load (blocking) | 20–100 ms | < 5 ms (async) | +| Vertices per flat chunk | ~6000 | ~200–500 (greedy) | +| Client frame time | Spikes on new chunks | Stable ~16 ms (60 fps) | +| Entity packet share | ~90% | < 50% (delta/compression) | + +--- + +## 7. Key Files Reference + +| Component | Path | +|-----------|------| +| Chunk load loop | `server/src/playground.ts` | +| Collider processing | `server/src/worlds/blocks/ChunkLattice.ts` | +| Physics simulation | `server/src/worlds/physics/Simulation.ts` | +| Mesh generation | `client/src/workers/ChunkWorker.ts` | +| Chunk sync | `server/src/networking/NetworkSynchronizer.ts` | +| Region I/O | `server/src/worlds/maps/RegionFileFormat.ts` | +| Terrain gen | `server/src/worlds/maps/TerrainGenerator.ts`, `TerrainWorkerPool.ts` | +| Procedural provider | `server/src/worlds/maps/ProceduralChunkProvider.ts` | +| Persistence provider | `server/src/worlds/maps/PersistenceChunkProvider.ts` | +| World loop | `server/src/worlds/WorldLoop.ts` | + +--- + +## 8. PR #21 Action Items + +1. **Merge PR #21** for JSON-map games (boilerplate, huntcraft, etc.). +2. **Reuse chunk cache collider patterns** in `ChunkLattice` if applicable. +3. **Later:** Consider Brotli for region payloads or a similar compression layer. + +--- + +## 9. References + +- [VOXEL_PERFORMANCE_MASTER_PLAN.md](./VOXEL_PERFORMANCE_MASTER_PLAN.md) +- [CHUNK_LOADING_ARCHITECTURE.md](./CHUNK_LOADING_ARCHITECTURE.md) +- [VOXEL_RENDERING_RESEARCH.md](./VOXEL_RENDERING_RESEARCH.md) +- [OPTIMIZATION_STRATEGY.md](./OPTIMIZATION_STRATEGY.md) +- [PR #21 – Compressed world maps](https://github.com/hytopiagg/hytopia-source/pull/21) +- [0fps Greedy Meshing](https://0fps.net/2012/06/30/meshing-in-a-minecraft-game/) +- [mikolalysenko/greedy-mesher](https://github.com/mikolalysenko/greedy-mesher) +- [Minecraft Chunk Loading (Technical Wiki)](https://techmcdocs.github.io/pages/GameMechanics/ChunkLoading/) +- [Hytale Engine Technical Deep Dive](https://hytalecharts.com/news/hytale-engine-technical-deep-dive) diff --git a/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/VOXEL_ENGINE_2026_MASTER_PLAN (1).md b/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/VOXEL_ENGINE_2026_MASTER_PLAN (1).md new file mode 100644 index 00000000..c74ee120 --- /dev/null +++ b/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/VOXEL_ENGINE_2026_MASTER_PLAN (1).md @@ -0,0 +1,218 @@ +# Voxel Engine 2026: World-Class Performance Master Plan + +**Document Owner:** Head of Development +**Classification:** Engineering Roadmap +**Target:** Minecraft/Hytale-grade smoothness; browser-first, 2026-ready +**Version:** 1.0 +**Date:** March 2026 + +--- + +## Executive Summary + +Hytopia aims to deliver voxel gameplay that feels as smooth and responsive as Minecraft and Hytale, while running in the browser. The current architecture has solid foundations—async chunk loading, worker terrain generation, deferred colliders—but several bottlenecks prevent parity with industry leaders. This plan addresses those gaps with a phased, research-backed approach that delivers measurable improvements without over-engineering. + +**Key thesis:** The lag and stutter are almost entirely **software architecture** issues, not hardware. Minecraft and Hytale run smoothly on similar hardware because they use different patterns. We close the gap by adopting those patterns. + +**Target outcome:** Walk/fly through a procedural world with **no perceptible lag spikes** within the preload radius, **stable 60 FPS** on the client, and **<16 ms server tick times** (p99). + +--- + +## Part 1: Strategic Context + +### 1.1 Industry Benchmark: What “On Par” Means + +| Game | Chunk Load | Physics | Rendering | Network | Notes | +|------|------------|---------|-----------|---------|-------| +| **Minecraft Java** | Worker threads, region format | Per-chunk colliders, deferred | Greedy meshing (approximate), occlusion | Delta/delta-like entity sync | 15+ years of iteration | +| **Minecraft Bedrock** | Async pipeline, priority queue | Spatial partitioning | Meshing + LOD | Variable tick rate by distance | C++ / C#; mobile-first | +| **Hytale** | Worker pool, variable chunk sizes | Batched, spatial | Mesh culling, LOD | QUIC, lower latency | Modern engine, Flecs ECS | +| **Bloxd.io** | Browser streaming | Custom voxel physics | Face culling, vertex pooling | JS-based | Browser-only | + +**Hytopia’s position:** We are browser-bound (Node server + Web client). We can’t use C++ or multiple cores on the client, but we *can* adopt the same *concepts*: async I/O, spatial locality, greedy meshing, quantized network formats, and time-budgeted main-thread work. + +### 1.2 Gap Analysis (Prioritized) + +| Priority | Gap | Impact | Root Cause | +|----------|-----|--------|------------| +| P0 | Collider work O(world) | Tick spikes, unplayable under load | `_combineVoxelStates` scans all chunks of each block type | +| P0 | No greedy meshing | 2–64× more vertices than needed | Per-face quads, no merging | +| P1 | Entity sync volume | ~90% of packets | Full pos/rot floats, no quantization | +| P1 | Sync chunk persist | Main-thread blocking | `writeChunk` sync | +| P2 | No occlusion culling | Overdraw in caves | All loaded batches rendered | +| P2 | No distance-based entity LOD | Far entities same cost as near | Single sync rate | +| P3 | Vertex allocation churn | GC spikes on mesh updates | No pooling | + +--- + +## Part 2: Phased Roadmap + +### Phase 0: Foundation & Instrumentation (Week 1) + +**Goal:** Establish baselines and guardrails before major refactors. + +| Task | Owner | Deliverable | +|------|-------|-------------| +| Profiling hooks | Eng | Tick duration, chunk load time, collider time, mesh build time | +| Metrics dashboard | Eng | Real-time charts for key metrics | +| Block/face limits | Eng | Hard cap (e.g. 500K faces) to avoid meltdown | +| Regression suite | QA | Automated “fly-through” test, capture tick/frame times | + +**Success:** We can measure and reproduce performance issues in CI and on-device. + +--- + +### Phase 1: Collider Locality (Weeks 2–3) + +**Goal:** Remove O(world) collider scans. Physics and chunk work must scale with **visible/nearby** chunks only. + +| Task | Effort | Description | +|------|--------|-------------| +| Spatial index for block placements | 3 days | Chunk key → block placements; no global iteration | +| Scoped `_combineVoxelStates` | 2 days | Merge only chunks within N chunks of any player | +| Collider unload for distant chunks | 1 day | Remove colliders when chunk unloads; don’t keep in physics | +| Time-budget verification | 0.5 day | Ensure 8 ms cap is respected; tune if needed | + +**Files:** `ChunkLattice.ts`, `playground.ts` + +**Success:** Tick time (p99) drops from 50–200 ms to <25 ms under typical load. + +--- + +### Phase 2: Main-Thread Freedom (Weeks 4–5) + +**Goal:** No sync blocking on I/O or heavy computation on the game loop. + +| Task | Effort | Description | +|------|--------|-------------| +| Async `persistChunk` | 1.5 days | Queue writes; flush in background | +| Async provider audit | 0.5 day | Confirm `requestChunk` → `getChunkAsync` path is used | +| Incremental voxel collider updates | 4 days | Add blocks in batches (256–512/tick) instead of full chunk | +| Chunk send pacing | 1.5 days | Smooth chunk sync; avoid burst of 8 chunks in one tick | + +**Files:** `PersistenceChunkProvider.ts`, `RegionFileFormat.ts`, `ChunkLattice.ts`, `NetworkSynchronizer.ts` + +**Success:** Chunk load + persist never block tick; no “catch up” spikes. + +--- + +### Phase 3: Entity Sync Compression (Weeks 6–7) + +**Goal:** Reduce entity pos/rot from ~90% of packets to <50%, with no perceptible quality loss. + +| Task | Effort | Description | +|------|--------|-------------| +| Quantized position (1/256 block, 16-bit) | 1 day | Server sends `pq`; client decodes | +| Yaw-only rotation for players | 0.5 day | 1 float vs 4 for player avatars | +| Distance-based sync rate (30/15/5 Hz) | 1 day | Near = 30 Hz, mid = 15 Hz, far = 5 Hz | +| Quantized quaternion (smallest-three) | 2 days | For NPCs and other full-rotation entities | +| Bulk pos/rot packet (optional) | 2 days | Structure-of-arrays for unreliable updates | + +**Files:** `Serializer.ts`, `NetworkSynchronizer.ts`, `protocol/schemas/Entity.ts`, `Deserializer.ts`, `EntityManager.ts` + +**Success:** Entity sync bytes/update reduced by 50–60%; bandwidth share <50%. + +--- + +### Phase 4: Greedy Meshing (Weeks 8–10) + +**Goal:** Cut vertex count by 2–64× for typical terrain; stable 60 FPS on chunk load. + +| Task | Effort | Description | +|------|--------|-------------| +| Greedy mesh algorithm (opaque solids) | 5 days | 0fps-style sweep and merge; ref `docs/research/GREEDY_MESHING_IMPLEMENTATION_GUIDE.md` | +| Integration with ChunkWorker | 2 days | Per-batch-type merge; transparent blocks unchanged | +| AO + lighting on merged quads | 1 day | Ensure ambient occlusion and lighting still apply | +| Benchmarks and tuning | 1 day | Measure build time vs vertex reduction | + +**Files:** `ChunkWorker.ts`, `ChunkMeshManager.ts` + +**Success:** Flat chunk: ~6000 vertices → ~200–500; frame time stable on new chunk load. + +--- + +### Phase 5: Render Pipeline Polish (Weeks 11–13) + +**Goal:** GPU efficiency and graceful degradation on low-end devices. + +| Task | Effort | Description | +|------|--------|-------------| +| Vertex pooling | 2 days | Reuse BufferGeometry/ArrayBuffers; avoid per-frame allocations | +| Occlusion culling always-on | 2 days | BFS from camera; cull hidden batches | +| Mesh apply budget | 1 day | Limit meshes applied per frame; spread load | +| Block/face limits enforcement | 0.5 day | Reduce view distance when over cap | + +**Files:** `ChunkMeshManager.ts`, `ChunkManager.ts`, `ChunkWorker.ts`, `Renderer.ts` + +**Success:** No GC spikes on chunk load; overdraw reduced in cave-heavy areas. + +--- + +### Phase 6: Long-Term (Month 4+) + +| Task | Impact | Effort | +|------|--------|--------| +| LOD impostors for distant chunks | Medium | 2–3 weeks | +| Brotli (or similar) for region payloads | Low | 1 week | +| Predictive chunk preload | Medium | 1 week | +| Client-side entity prediction | Medium (latency) | 2+ weeks | + +--- + +## Part 3: Research Documentation + +The following research docs support implementation and design decisions: + +| Document | Purpose | +|----------|---------| +| [MINECRAFT_ARCHITECTURE_RESEARCH.md](./research/MINECRAFT_ARCHITECTURE_RESEARCH.md) | How Minecraft structures chunk loading, colliders, and meshing | +| [GREEDY_MESHING_IMPLEMENTATION_GUIDE.md](./research/GREEDY_MESHING_IMPLEMENTATION_GUIDE.md) | Step-by-step greedy meshing for ChunkWorker | +| [COLLIDER_ARCHITECTURE_RESEARCH.md](./research/COLLIDER_ARCHITECTURE_RESEARCH.md) | Spatial locality and incremental colliders | +| [NETWORK_PROTOCOL_2026_RESEARCH.md](./research/NETWORK_PROTOCOL_2026_RESEARCH.md) | Modern entity sync: quantization, delta, LOD | + +**Mandate:** Engineers implementing Phase 2+ work must read the relevant research doc before coding. + +--- + +## Part 4: Success Metrics + +| Metric | Baseline (Current) | Phase 3 Target | Phase 6 Target | +|--------|--------------------|----------------|----------------| +| Server tick time (p99) | 50–200 ms | <25 ms | <16 ms | +| Chunk load (blocking) | 20–100 ms | 0 (async) | 0 | +| Vertices per flat chunk | ~6000 | ~200–500 | ~200–500 | +| Entity sync % of packets | ~90% | ~60% | <50% | +| Client frame time (p99) | Spikes to 50+ ms | <25 ms | <16 ms | +| Perceived lag spikes | Every ~5 steps | None in preload | None | + +--- + +## Part 5: Risks & Mitigations + +| Risk | Mitigation | +|------|------------| +| Greedy meshing regresses build time | Time-budget; fallback to non-greedy if over budget | +| Protocol changes break old clients | Backward-compatible optional fields; version handshake | +| Collider refactor introduces physics bugs | Rigorous test: spawn, walk, mine, place; compare before/after | +| Scope creep | Phases are fixed; Phase 6 is explicitly “long-term” | + +--- + +## Part 6: Dependencies & Prerequisites + +- **PR #21 (Compressed JSON maps):** Merge for JSON-map games; not blocking procedural world. +- **TerrainWorkerPool:** Already in place; verify `getChunkAsync` is used in playground. +- **Protocol package:** Schema changes require protocol version bump; coordinate with SDK consumers. +- **Browser support:** Target evergreen browsers; no polyfills for cutting-edge APIs. + +--- + +## Part 7: Sign-Off + +This plan represents a realistic path to Minecraft/Hytale-grade smoothness for Hytopia’s procedural world. It prioritizes the highest-impact bottlenecks (colliders, greedy meshing, entity sync) and defers nice-to-haves (LOD impostors, prediction) to later phases. + +**Recommendation:** Approve and execute Phase 0–1 immediately. Re-evaluate after Phase 3 based on metrics and user feedback. + +--- + +*— Head of Development* diff --git a/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/VOXEL_ENGINE_2026_MASTER_PLAN.md b/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/VOXEL_ENGINE_2026_MASTER_PLAN.md new file mode 100644 index 00000000..c74ee120 --- /dev/null +++ b/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/VOXEL_ENGINE_2026_MASTER_PLAN.md @@ -0,0 +1,218 @@ +# Voxel Engine 2026: World-Class Performance Master Plan + +**Document Owner:** Head of Development +**Classification:** Engineering Roadmap +**Target:** Minecraft/Hytale-grade smoothness; browser-first, 2026-ready +**Version:** 1.0 +**Date:** March 2026 + +--- + +## Executive Summary + +Hytopia aims to deliver voxel gameplay that feels as smooth and responsive as Minecraft and Hytale, while running in the browser. The current architecture has solid foundations—async chunk loading, worker terrain generation, deferred colliders—but several bottlenecks prevent parity with industry leaders. This plan addresses those gaps with a phased, research-backed approach that delivers measurable improvements without over-engineering. + +**Key thesis:** The lag and stutter are almost entirely **software architecture** issues, not hardware. Minecraft and Hytale run smoothly on similar hardware because they use different patterns. We close the gap by adopting those patterns. + +**Target outcome:** Walk/fly through a procedural world with **no perceptible lag spikes** within the preload radius, **stable 60 FPS** on the client, and **<16 ms server tick times** (p99). + +--- + +## Part 1: Strategic Context + +### 1.1 Industry Benchmark: What “On Par” Means + +| Game | Chunk Load | Physics | Rendering | Network | Notes | +|------|------------|---------|-----------|---------|-------| +| **Minecraft Java** | Worker threads, region format | Per-chunk colliders, deferred | Greedy meshing (approximate), occlusion | Delta/delta-like entity sync | 15+ years of iteration | +| **Minecraft Bedrock** | Async pipeline, priority queue | Spatial partitioning | Meshing + LOD | Variable tick rate by distance | C++ / C#; mobile-first | +| **Hytale** | Worker pool, variable chunk sizes | Batched, spatial | Mesh culling, LOD | QUIC, lower latency | Modern engine, Flecs ECS | +| **Bloxd.io** | Browser streaming | Custom voxel physics | Face culling, vertex pooling | JS-based | Browser-only | + +**Hytopia’s position:** We are browser-bound (Node server + Web client). We can’t use C++ or multiple cores on the client, but we *can* adopt the same *concepts*: async I/O, spatial locality, greedy meshing, quantized network formats, and time-budgeted main-thread work. + +### 1.2 Gap Analysis (Prioritized) + +| Priority | Gap | Impact | Root Cause | +|----------|-----|--------|------------| +| P0 | Collider work O(world) | Tick spikes, unplayable under load | `_combineVoxelStates` scans all chunks of each block type | +| P0 | No greedy meshing | 2–64× more vertices than needed | Per-face quads, no merging | +| P1 | Entity sync volume | ~90% of packets | Full pos/rot floats, no quantization | +| P1 | Sync chunk persist | Main-thread blocking | `writeChunk` sync | +| P2 | No occlusion culling | Overdraw in caves | All loaded batches rendered | +| P2 | No distance-based entity LOD | Far entities same cost as near | Single sync rate | +| P3 | Vertex allocation churn | GC spikes on mesh updates | No pooling | + +--- + +## Part 2: Phased Roadmap + +### Phase 0: Foundation & Instrumentation (Week 1) + +**Goal:** Establish baselines and guardrails before major refactors. + +| Task | Owner | Deliverable | +|------|-------|-------------| +| Profiling hooks | Eng | Tick duration, chunk load time, collider time, mesh build time | +| Metrics dashboard | Eng | Real-time charts for key metrics | +| Block/face limits | Eng | Hard cap (e.g. 500K faces) to avoid meltdown | +| Regression suite | QA | Automated “fly-through” test, capture tick/frame times | + +**Success:** We can measure and reproduce performance issues in CI and on-device. + +--- + +### Phase 1: Collider Locality (Weeks 2–3) + +**Goal:** Remove O(world) collider scans. Physics and chunk work must scale with **visible/nearby** chunks only. + +| Task | Effort | Description | +|------|--------|-------------| +| Spatial index for block placements | 3 days | Chunk key → block placements; no global iteration | +| Scoped `_combineVoxelStates` | 2 days | Merge only chunks within N chunks of any player | +| Collider unload for distant chunks | 1 day | Remove colliders when chunk unloads; don’t keep in physics | +| Time-budget verification | 0.5 day | Ensure 8 ms cap is respected; tune if needed | + +**Files:** `ChunkLattice.ts`, `playground.ts` + +**Success:** Tick time (p99) drops from 50–200 ms to <25 ms under typical load. + +--- + +### Phase 2: Main-Thread Freedom (Weeks 4–5) + +**Goal:** No sync blocking on I/O or heavy computation on the game loop. + +| Task | Effort | Description | +|------|--------|-------------| +| Async `persistChunk` | 1.5 days | Queue writes; flush in background | +| Async provider audit | 0.5 day | Confirm `requestChunk` → `getChunkAsync` path is used | +| Incremental voxel collider updates | 4 days | Add blocks in batches (256–512/tick) instead of full chunk | +| Chunk send pacing | 1.5 days | Smooth chunk sync; avoid burst of 8 chunks in one tick | + +**Files:** `PersistenceChunkProvider.ts`, `RegionFileFormat.ts`, `ChunkLattice.ts`, `NetworkSynchronizer.ts` + +**Success:** Chunk load + persist never block tick; no “catch up” spikes. + +--- + +### Phase 3: Entity Sync Compression (Weeks 6–7) + +**Goal:** Reduce entity pos/rot from ~90% of packets to <50%, with no perceptible quality loss. + +| Task | Effort | Description | +|------|--------|-------------| +| Quantized position (1/256 block, 16-bit) | 1 day | Server sends `pq`; client decodes | +| Yaw-only rotation for players | 0.5 day | 1 float vs 4 for player avatars | +| Distance-based sync rate (30/15/5 Hz) | 1 day | Near = 30 Hz, mid = 15 Hz, far = 5 Hz | +| Quantized quaternion (smallest-three) | 2 days | For NPCs and other full-rotation entities | +| Bulk pos/rot packet (optional) | 2 days | Structure-of-arrays for unreliable updates | + +**Files:** `Serializer.ts`, `NetworkSynchronizer.ts`, `protocol/schemas/Entity.ts`, `Deserializer.ts`, `EntityManager.ts` + +**Success:** Entity sync bytes/update reduced by 50–60%; bandwidth share <50%. + +--- + +### Phase 4: Greedy Meshing (Weeks 8–10) + +**Goal:** Cut vertex count by 2–64× for typical terrain; stable 60 FPS on chunk load. + +| Task | Effort | Description | +|------|--------|-------------| +| Greedy mesh algorithm (opaque solids) | 5 days | 0fps-style sweep and merge; ref `docs/research/GREEDY_MESHING_IMPLEMENTATION_GUIDE.md` | +| Integration with ChunkWorker | 2 days | Per-batch-type merge; transparent blocks unchanged | +| AO + lighting on merged quads | 1 day | Ensure ambient occlusion and lighting still apply | +| Benchmarks and tuning | 1 day | Measure build time vs vertex reduction | + +**Files:** `ChunkWorker.ts`, `ChunkMeshManager.ts` + +**Success:** Flat chunk: ~6000 vertices → ~200–500; frame time stable on new chunk load. + +--- + +### Phase 5: Render Pipeline Polish (Weeks 11–13) + +**Goal:** GPU efficiency and graceful degradation on low-end devices. + +| Task | Effort | Description | +|------|--------|-------------| +| Vertex pooling | 2 days | Reuse BufferGeometry/ArrayBuffers; avoid per-frame allocations | +| Occlusion culling always-on | 2 days | BFS from camera; cull hidden batches | +| Mesh apply budget | 1 day | Limit meshes applied per frame; spread load | +| Block/face limits enforcement | 0.5 day | Reduce view distance when over cap | + +**Files:** `ChunkMeshManager.ts`, `ChunkManager.ts`, `ChunkWorker.ts`, `Renderer.ts` + +**Success:** No GC spikes on chunk load; overdraw reduced in cave-heavy areas. + +--- + +### Phase 6: Long-Term (Month 4+) + +| Task | Impact | Effort | +|------|--------|--------| +| LOD impostors for distant chunks | Medium | 2–3 weeks | +| Brotli (or similar) for region payloads | Low | 1 week | +| Predictive chunk preload | Medium | 1 week | +| Client-side entity prediction | Medium (latency) | 2+ weeks | + +--- + +## Part 3: Research Documentation + +The following research docs support implementation and design decisions: + +| Document | Purpose | +|----------|---------| +| [MINECRAFT_ARCHITECTURE_RESEARCH.md](./research/MINECRAFT_ARCHITECTURE_RESEARCH.md) | How Minecraft structures chunk loading, colliders, and meshing | +| [GREEDY_MESHING_IMPLEMENTATION_GUIDE.md](./research/GREEDY_MESHING_IMPLEMENTATION_GUIDE.md) | Step-by-step greedy meshing for ChunkWorker | +| [COLLIDER_ARCHITECTURE_RESEARCH.md](./research/COLLIDER_ARCHITECTURE_RESEARCH.md) | Spatial locality and incremental colliders | +| [NETWORK_PROTOCOL_2026_RESEARCH.md](./research/NETWORK_PROTOCOL_2026_RESEARCH.md) | Modern entity sync: quantization, delta, LOD | + +**Mandate:** Engineers implementing Phase 2+ work must read the relevant research doc before coding. + +--- + +## Part 4: Success Metrics + +| Metric | Baseline (Current) | Phase 3 Target | Phase 6 Target | +|--------|--------------------|----------------|----------------| +| Server tick time (p99) | 50–200 ms | <25 ms | <16 ms | +| Chunk load (blocking) | 20–100 ms | 0 (async) | 0 | +| Vertices per flat chunk | ~6000 | ~200–500 | ~200–500 | +| Entity sync % of packets | ~90% | ~60% | <50% | +| Client frame time (p99) | Spikes to 50+ ms | <25 ms | <16 ms | +| Perceived lag spikes | Every ~5 steps | None in preload | None | + +--- + +## Part 5: Risks & Mitigations + +| Risk | Mitigation | +|------|------------| +| Greedy meshing regresses build time | Time-budget; fallback to non-greedy if over budget | +| Protocol changes break old clients | Backward-compatible optional fields; version handshake | +| Collider refactor introduces physics bugs | Rigorous test: spawn, walk, mine, place; compare before/after | +| Scope creep | Phases are fixed; Phase 6 is explicitly “long-term” | + +--- + +## Part 6: Dependencies & Prerequisites + +- **PR #21 (Compressed JSON maps):** Merge for JSON-map games; not blocking procedural world. +- **TerrainWorkerPool:** Already in place; verify `getChunkAsync` is used in playground. +- **Protocol package:** Schema changes require protocol version bump; coordinate with SDK consumers. +- **Browser support:** Target evergreen browsers; no polyfills for cutting-edge APIs. + +--- + +## Part 7: Sign-Off + +This plan represents a realistic path to Minecraft/Hytale-grade smoothness for Hytopia’s procedural world. It prioritizes the highest-impact bottlenecks (colliders, greedy meshing, entity sync) and defers nice-to-haves (LOD impostors, prediction) to later phases. + +**Recommendation:** Approve and execute Phase 0–1 immediately. Re-evaluate after Phase 3 based on metrics and user feedback. + +--- + +*— Head of Development* diff --git a/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/VOXEL_PERFORMANCE_MASTER_PLAN.md b/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/VOXEL_PERFORMANCE_MASTER_PLAN.md new file mode 100644 index 00000000..9b7fdda0 --- /dev/null +++ b/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/VOXEL_PERFORMANCE_MASTER_PLAN.md @@ -0,0 +1,153 @@ +# Voxel Engine Performance Master Plan +## Making Hytopia as Smooth as Minecraft & Hytale + +**Problem:** Lag every ~5 steps; constant chunk rendering; engine feels clunky compared to Minecraft/Hytale. + +**Conclusion:** This is primarily a **software/codebase architecture** issue, not hardware. Minecraft and Hytale run smoothly on similar hardware because they use different architectures. The plan below addresses the gaps. + +--- + +## Part 1: Root Cause Analysis + +### Why "Every 5 Steps" Lag Happens + +| Step | What Happens | Bottleneck | +|------|--------------|------------| +| 1 | Player moves → enters new chunk/batch range | Server loads 1 chunk/tick (CHUNKS_PER_TICK=1) | +| 2 | `getOrCreateChunk` runs | **Sync** disk read or procedural gen blocks main thread | +| 3 | Chunk queued for collider | `processPendingColliderChunks(1)` – 1/tick | +| 4 | `_addChunkBlocksToColliders` | **Heavy:** 4096 blocks, voxel propagation, `_combineVoxelStates` scans ALL chunks of that block type | +| 5 | Server sends chunk to client | Network ok, but chunk sync triggers client work | +| 6 | Client receives ChunksPacket | Posts to ChunkWorker | +| 7 | ChunkWorker builds mesh | **No greedy meshing** – 1 quad per face, 64× more than optimal for flat terrain | +| 8 | Mesh sent back, added to scene | BufferGeometry creation, possible GC spike | +| 9 | Main thread applies mesh | Can cause frame hitch | + +### Current vs. Minecraft/Hytale + +| Aspect | Hytopia (Current) | Minecraft / Hytale | +|--------|-------------------|---------------------| +| Chunk load | Sync on main thread | Worker threads, async | +| File I/O | `fs.readSync`, `zlib.gunzipSync` | Async, or worker | +| Terrain gen | Sync in main thread | Worker pool | +| Collider creation | Sync, 1/tick, O(world size) | Deferred, batched, O(chunk) | +| Mesh generation | Worker ✅ | Worker ✅ | +| Greedy meshing | ❌ (1 quad/face) | ✅ (merged quads, 2–64× fewer) | +| LOD | ✅ (step 2/4) | ✅ + impostors | +| Occlusion culling | Only when over face limit | Chunk-section visibility | +| Chunk send rate | Per ADD_CHUNK event | Batched, rate-limited | + +--- + +## Part 2: Prioritized Fixes + +### Tier 1: Quick Wins (1–3 days each) + +| # | Fix | Impact | Effort | Files | +|---|-----|--------|--------|-------| +| 1 | **Increase CHUNKS_PER_TICK** to 2–3 | Fewer "catch up" spikes when moving | 5 min | `playground.ts` | +| 2 | **Time-budget collider processing** | Cap ms per tick (e.g. 8 ms), process multiple chunks if time allows | Medium | `ChunkLattice.ts`, `playground.ts` | +| 3 | **Chunk send batching** | Don’t flood client; batch chunk sync every N ms or per tick | Medium | `NetworkSynchronizer.ts` | +| 4 | **Avoid collider work for distant chunks** | Only add colliders for chunks within 2–3 chunks of player | Medium | `ChunkLattice.ts`, `playground.ts` | + +### Tier 2: High Impact (3–7 days each) + +| # | Fix | Impact | Effort | Notes | +|---|-----|--------|--------|-------| +| 5 | **Greedy meshing (quad merging)** | 2–64× fewer vertices for terrain | 3–5 days | ChunkWorker; ref 0fps, mikolalysenko/greedy-mesher | +| 6 | **Async chunk provider** | `getChunk()` returns `Promise`; no main-thread blocking | 2–3 days | PersistenceChunkProvider, ProceduralChunkProvider, ChunkLattice | +| 7 | **Worker terrain generation** | Move `generateChunk` to `worker_threads` | 2–3 days | TerrainGenerator, ProceduralChunkProvider | +| 8 | **Async file I/O** | `fs.promises`, `zlib.gunzip` async | 1–2 days | RegionFileFormat.ts | + +### Tier 3: Architectural (1–2 weeks each) + +| # | Fix | Impact | Effort | Notes | +|---|-----|--------|--------|-------| +| 9 | **Incremental colliders** | Add blocks to voxel collider in batches (e.g. 256/tick) instead of full chunk | High | Rapier voxel API; ChunkLattice | +| 10 | **Collider locality** | `_getBlockTypePlacements` and `_combineVoxelStates` should not scan entire world | High | ChunkLattice; spatial indexing | +| 11 | **Chunk preloading by prediction** | Load chunks in movement direction before player arrives | Medium | playground.ts, loadChunksAroundPlayers | +| 12 | **Vertex pooling** | Reuse BufferGeometry / ArrayBuffers to reduce allocations and GC | Medium | ChunkMeshManager, ChunkWorker | + +### Tier 4: Polish (Ongoing) + +| # | Fix | Impact | Effort | +|---|-----|--------|--------| +| 13 | **Occlusion culling always-on** | Not just when over face limit | Medium | +| 14 | **LOD impostors** | Billboard or simplified mesh for very far chunks | High | +| 15 | **Profiling hooks** | Tick time, chunk load time, mesh build time | Low | +| 16 | **Block/face limits** | Hard cap to avoid meltdown on weak devices | Low | + +--- + +## Part 3: Recommended Implementation Order + +### Phase 1: Stop the Bleeding (Week 1) + +1. **Time-budget collider processing** – Cap at 8 ms/tick; process as many chunks as fit. +2. **Increase CHUNKS_PER_TICK** to 2–3. +3. **Spatial collider culling** – Only create colliders for chunks within 2–3 chunks of any player. +4. **Chunk send batching** – Batch chunk sync; don’t send 10 chunks in one frame. + +### Phase 2: Main Thread Freedom (Week 2–3) + +5. **Async file I/O** – `fs.promises`, async decompress. +6. **Async chunk provider** – `getChunk()` returns `Promise`; ChunkLattice awaits. +7. **Worker terrain gen** – Move `generateChunk` to worker thread. + +### Phase 3: Render Pipeline (Week 4–5) + +8. **Greedy meshing** – Implement in ChunkWorker for opaque solids; merge adjacent same-type faces. +9. **Vertex pooling** – Reuse geometry buffers where possible. + +### Phase 4: Long-Term (Month 2+) + +10. **Incremental colliders** – Batched voxel updates. +11. **Collider locality** – Remove global scans. +12. **Occlusion always-on** – Reduce overdraw. + +--- + +## Part 4: Hardware vs. Software + +| Factor | Assessment | +|--------|------------| +| **Hardware** | Unlikely primary cause if Minecraft/Hytale run fine. | +| **Software** | Sync I/O, sync terrain gen, heavy collider work, no greedy meshing – all main-thread and render bottlenecks. | +| **Codebase** | Architecture is serviceable but lacks async pipeline and mesh optimization used by mature voxel engines. | + +--- + +## Part 5: Key Files + +| Component | Path | +|-----------|------| +| Chunk load loop | `server/src/playground.ts` | +| Collider processing | `server/src/worlds/blocks/ChunkLattice.ts` | +| Mesh generation | `client/src/workers/ChunkWorker.ts` | +| Chunk sync to client | `server/src/networking/NetworkSynchronizer.ts` | +| Disk I/O | `server/src/worlds/maps/RegionFileFormat.ts` | +| Terrain generation | `server/src/worlds/maps/TerrainGenerator.ts`, `ProceduralChunkProvider.ts` | +| Client chunk handling | `client/src/chunks/ChunkManager.ts` | + +--- + +## Part 6: Success Metrics + +| Metric | Current (Est.) | Target | +|--------|----------------|--------| +| Lag spikes when walking | Every ~5 steps | None within preload radius | +| Tick time (p99) | 50–200 ms | < 16 ms | +| Chunk load time | 20–100 ms (blocking) | < 5 ms (async) | +| Vertices per chunk (flat) | ~6000 (no greedy) | ~200–500 (greedy) | +| Frame time (client) | Spikes on new chunks | Stable 16 ms (60 fps) | + +--- + +## References + +- `docs/CHUNK_LOADING_ARCHITECTURE.md` +- `docs/VOXEL_RENDERING_RESEARCH.md` +- `docs/OPTIMIZATION_STRATEGY.md` +- [0fps Greedy Meshing](https://0fps.net/2012/06/30/meshing-in-a-minecraft-game/) +- [mikolalysenko/greedy-mesher](https://github.com/mikolalysenko/greedy-mesher) +- Hytale engine deep dive: variable chunks, LOD, mesh optimization diff --git a/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/VOXEL_RENDERING_RESEARCH.md b/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/VOXEL_RENDERING_RESEARCH.md new file mode 100644 index 00000000..5be2a42d --- /dev/null +++ b/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/VOXEL_RENDERING_RESEARCH.md @@ -0,0 +1,190 @@ +# Voxel World Smoothness: Research on Minecraft, Hytale, and bloxd + +Deep research into how popular voxel games keep worlds lag-free and smooth during flight/movement. + +--- + +## Summary: What These Games Do + +| Technique | Minecraft | Hytale | bloxd | Hytopia (Current) | +|-----------|-----------|--------|-------|-------------------| +| **Face culling** | ✅ | ✅ | ✅ | ✅ (ChunkWorker) | +| **Greedy meshing** | ✅ (approximation) | ✅ | ✅ | ❌ | +| **Chunk batching** | ✅ (16×16×16) | Variable sizes | ✅ | ✅ (2×2×2 batches) | +| **Async mesh generation** | ✅ (worker) | ✅ | ✅ | ✅ (ChunkWorker) | +| **View distance** | ✅ | ✅ | ✅ | ✅ | +| **LOD (distant simplification)** | ✅ | ✅ | ✅ | ❌ | +| **Occlusion / cave culling** | ✅ (advanced) | Partial | Partial | ❌ | +| **Vertex pooling** | — | — | ✅ | ❌ | +| **Block/face limits** | Implicit | — | — | ❌ | + +--- + +## 1. Face Culling (Already Implemented ✅) + +**What it does:** Only render faces that are visible—i.e. faces where the adjacent block is empty or transparent. Interior faces between solid blocks are never drawn. + +**0fps comparison:** On a solid 8×8×8 cube: +- Stupid method: 3,072 quads (6 per block) +- Culling: 384 quads (1 per surface face) +- **~8× reduction** + +**Hytopia status:** Already in `ChunkWorker.ts` (lines 962–985). Neighbor check per face; solid opaque neighbors → face is culled. **No change needed.** + +--- + +## 2. Greedy Meshing / Greedy Quad Merging (Not Implemented ❌) + +**What it does:** Merge adjacent faces with the same texture/material into larger quads. Instead of many small quads, you get fewer large quads covering the same surface. + +**0fps example:** Same 8×8×8 solid cube: +- Culling: 384 quads +- Greedy: **6 quads** (one per side) +- **64× reduction over culling** + +**Algorithm (0fps):** +1. Sweep the 3D volume in 3 directions (X, Y, Z) +2. For each 2D slice, identify visible faces +3. Greedily merge adjacent same-type faces into rectangles +4. Order: top-to-bottom, left-to-right; pick the lexicographically minimal mesh + +**Multiple block types:** Group by (block type, normal direction). Mesh each group separately. + +**Performance trade-off:** +- Greedy is slower to *build* than culling (more passes, more logic) +- But produces far fewer vertices → faster rendering and less GPU memory +- Modern bottleneck is often CPU→GPU transfer; fewer vertices = less data = smoother + +**Hytopia status:** ChunkWorker emits one quad per visible face. No merging. + +**Recommendation:** High impact. Implement greedy meshing in ChunkWorker for opaque solid blocks first. Reference: [0fps greedy meshing](https://0fps.net/2012/06/30/meshing-in-a-minecraft-game/), [mikolalysenko/greedy-mesher](https://github.com/mikolalysenko/greedy-mesher). + +--- + +## 3. Occlusion / Cave Culling (Not Implemented ❌) + +**What it does:** Don’t render chunks (or chunk sections) that are completely hidden behind solid terrain. E.g. caves behind a mountain. + +**Minecraft (Tommo’s Advanced Cave Culling, 2014):** +- Works on 16×16×16 chunk sections +- Builds a connectivity graph of transparent/air paths +- BFS from camera to find visible sections +- Culls sections unreachable through air/transparent blocks +- ~14% frame time improvement + +**Hytopia status:** No occlusion culling. All loaded chunks in view distance are rendered if in frustum. + +**Recommendation:** Medium impact, higher complexity. Consider chunk-section visibility BFS. Less urgent than greedy meshing. + +--- + +## 4. Level of Detail (LOD) (Not Implemented ❌) + +**What it does:** Render distant chunks with simpler geometry—fewer quads, lower resolution, or simplified shapes. + +**Hytale:** Variable chunk sizes; LOD where distant chunks use lower-detail meshes. + +**Typical approach:** +- Near: Full detail +- Mid: Merged/simplified mesh +- Far: Very low poly or impostors + +**Hytopia status:** No LOD. All chunks use the same mesh quality. + +**Recommendation:** Medium impact. Could start with “skip every other block” or similar for distant batches. More complex: proper LOD meshes. + +--- + +## 5. Async Mesh Generation (Already Implemented ✅) + +**What it does:** Build chunk meshes in a worker thread so the main thread stays responsive. + +**Hytopia status:** `ChunkWorker.ts` runs in a Web Worker. Mesh building is off the main thread. **Already good.** + +--- + +## 6. Block / Face Limits + +**What it does:** Cap total blocks or faces to avoid overload. E.g. stop loading chunks if face count exceeds a threshold. + +**Hytopia status:** No hard limit. Chunk count is bounded by view distance, but no per-frame or total face limit. + +**Recommendation:** Low priority. Could add a safety cap (e.g. max 500K faces) to avoid extreme lag on weak devices. + +--- + +## 7. Vertex Pooling (bloxd / High-Performance Engines) + +**What it does:** Reuse vertex buffers instead of allocating new ones per chunk. Reduces allocations and GC. + +**Impact:** Can improve frame times by tens of percent in allocation-heavy setups. + +**Hytopia status:** New geometry per batch. No pooling. + +**Recommendation:** Lower priority. Consider if profiling shows allocation/GC as a bottleneck. + +--- + +## 8. Server-Side Optimizations (Already Addressed) + +- **View distance:** Reduced default, `/view` command +- **Chunk load/unload:** With grace period +- **Prioritize by view direction:** Load chunks in front first +- **Unload distant chunks:** Keeps memory bounded + +--- + +## Prioritized Implementation Plan + +| Priority | Technique | Impact | Complexity | Effort | +|----------|-----------|--------|------------|--------| +| 1 | **Greedy meshing** | High | Medium | 2–3 days | +| 2 | **LOD for distant chunks** | Medium | Medium | 1–2 days | +| 3 | **Occlusion / cave culling** | Medium | High | 3+ days | +| 4 | **Block/face limit cap** | Low (safety) | Low | <1 day | +| 5 | **Vertex pooling** | Low–Medium | Medium | 1–2 days | + +--- + +## Greedy Meshing Implementation Sketch + +For `ChunkWorker._createChunkBatchGeometries`: + +1. **Current flow:** Per block → per face → if visible → emit quad. +2. **New flow (opaque solids):** + - Collect visible faces with (normal, blockTypeId, textureUri, AO, light) as keys + - For each direction (±X, ±Y, ±Z), build a 2D grid of visible faces + - Run greedy merge per slice (0fps algorithm) + - Emit merged quads instead of per-face quads +3. **Transparent blocks:** Can stay as-is (per-face) or use a separate greedy pass with transparency grouping. +4. **Trimesh blocks:** Keep current logic (no greedy). + +**References:** +- [0fps Part 1](https://0fps.net/2012/06/30/meshing-in-a-minecraft-game/) +- [0fps Part 2 (multiple types)](https://0fps.net/2012/07/07/meshing-minecraft-part-2/) +- [mikolalysenko/greedy-mesher](https://github.com/mikolalysenko/greedy-mesher) (JS) +- [Vercidium greedy voxel meshing gist](https://gist.github.com/Vercidium/a3002bd083cce2bc854c9ff8f0118d33) + +--- + +## Other Considerations + +- **Runs-based meshing:** Alternative to full greedy; ~20% more triangles but ~4× faster build. Good compromise. +- **GPU-driven rendering:** Modern engines use compute shaders for mesh generation. WebGL limits this; workers are the main option. +- **Chunk size:** Hytopia uses 16³ chunks and 2×2×2 batches (32³). Matches common practice. + +--- + +## Implemented (Hytopia) + +- **LOD:** Distant chunks use step 2 or 4 (half/quarter detail). Underground batches get +1 LOD. +- **Block/face limits:** When total faces > 800K, view distance shrinks to 25% and occlusion runs. +- **Vertex pooling:** Mesh updates reuse existing BufferAttributes when size matches (avoids GPU realloc). +- **Occlusion culling:** BFS from camera through air/liquid; only visible batches rendered when over face limit. +- **Underground LOD:** Batches below Y=40 use one extra LOD step (reduces cave geometry; partial greedy benefit). + +## Conclusion + +The largest missing optimization is **full greedy meshing** (quad merging). Face culling is in place, but merging adjacent same-type faces into larger quads can cut vertex/quad count by roughly 2–10× depending on geometry, which directly reduces GPU work and often improves smoothness when flying. + +LOD and occlusion culling are useful next steps; block limits and vertex pooling are refinements for later. diff --git a/ai-memory/feature/perf-notes-amateur-review-24a295d/init.md b/ai-memory/feature/perf-notes-amateur-review-24a295d/init.md new file mode 100644 index 00000000..4a48755b --- /dev/null +++ b/ai-memory/feature/perf-notes-amateur-review-24a295d/init.md @@ -0,0 +1,19 @@ +# Performance Framework Research - Init + +## Request +Research all performance-related code/branches in HyFire2 repo and HYTOPIA SDK to create a comprehensive performance benchmarking framework for HYTOPIA. + +## Scope +- HyFire2 performance branches (100+ branches identified) +- HYTOPIA SDK server performance (Telemetry, WorldLoop, NetworkSynchronizer) +- HYTOPIA client performance (PerformanceMetricsManager, ChunkStats, EntityStats) +- Network monitoring, device profiling, headless testing +- Repeatable benchmarks, stress testing, game scenario simulation +- F12/DevTools performance log parsing +- Cross-device testing + +## Key Locations +- HyFire2: ~/GitHub/games/hyfire2 (100+ perf branches) +- HYTOPIA SDK: /home/ab/GitHub/hytopia/work1/server/src/ +- HYTOPIA Client: /home/ab/GitHub/hytopia/work1/client/src/ +- Protocol: /home/ab/GitHub/hytopia/work1/protocol/ diff --git a/ai-memory/feature/perf-notes-amateur-review-24a295d/progress.md b/ai-memory/feature/perf-notes-amateur-review-24a295d/progress.md new file mode 100644 index 00000000..77c5c38e --- /dev/null +++ b/ai-memory/feature/perf-notes-amateur-review-24a295d/progress.md @@ -0,0 +1,16 @@ +# Progress + +- [x] Set up ai-memory directory +- [x] Survey all HyFire2 locations and branches (100+ perf branches found) +- [x] Read HYTOPIA SDK CODEBASE_DOCUMENTATION.md +- [x] Launch 6 parallel research agents + - [x] Agent 1: HyFire2 analysis/docs branches (11 branches) → hyfire2-perf-analysis-branches.md + - [x] Agent 2: HyFire2 master branch perf code → hyfire2-master-perf-code.md + - [x] Agent 3: HyFire2 feature perf branches (18 branches) → hyfire2-feature-perf-branches.md + - [x] Agent 4: HyFire2 perf/* and fix/*performance* branches (27 branches) → hyfire2-perf-fix-branches.md + - [x] Agent 5: HYTOPIA SDK perf infrastructure (server + client + protocol) → hytopia-sdk-perf-systems.md + - [x] Agent 6: Headless/automation testing branches (15+ branches) → headless-automation-research.md +- [x] Recover 3 research files dropped by parallel git conflicts +- [x] Push all research to feature/perf-notes-external-review +- [x] Synthesis agent consolidated into SYNTHESIS-perf-framework-spec.md (965 lines) +- [x] Quality review of synthesis document From 0e7f689b53980531add48ceb72cbe701f03f74e2 Mon Sep 17 00:00:00 2001 From: web3dev1337 <160291380+web3dev1337@users.noreply.github.com> Date: Thu, 5 Mar 2026 15:41:33 +1100 Subject: [PATCH 03/40] feat: implement HYTOPIA performance framework MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit SDK Module (server/src/metrics/ + server/src/bots/): - PerformanceMonitor: singleton profiler with CircularBuffer tick history, per-operation p50/p95/p99 percentiles, spike detection, entity profiling - @Monitor decorator + monitorBlock/monitorAsyncBlock helpers - NetworkMetrics: bandwidth/packet/serialization tracking singleton - CpuProfiler: V8 Inspector CPU profile + heap snapshot capture - WorldLoop integration: per-tick phase timing (entities, physics, network) - EntityManager integration: opt-in per-entity cost tracking - Telemetry.ts: dual-path Sentry + PerformanceMonitor when enabled - Bot system: BotPlayer, BotManager, 4 behaviors (Idle/RandomWalk/Chase/Interact) Benchmark CLI (packages/perf-tools/): - ScenarioLoader: YAML/JSON benchmark scenario parser - BenchmarkRunner: orchestrates scenario execution with phases - MetricCollector: aggregates server + client snapshots - HeadlessClient: Puppeteer-based headless browser for client metrics - BaselineComparer: regression detection with warning/fail thresholds - ConsoleReporter + JsonReporter - 5 built-in presets (idle, stress, large-world, many-players, combined) Trace Analysis: - TraceParser: Chrome DevTools trace → frame timings, long tasks, GC events - CpuProfileAnalyzer: V8 .cpuprofile → hot functions, call tree, WASM mapping - SpikeCorrelator: correlate tick spikes with entity spawns, GC, phase overruns - NoiseFilter: IQR outlier removal, moving average, change point detection CI/CD: - perf-gate.yml: PR performance gate with baseline comparison - perf-baseline-update.yml: baseline update on master push Co-Authored-By: Claude Opus 4.6 --- .github/workflows/perf-baseline-update.yml | 88 + .github/workflows/perf-gate.yml | 119 + .../progress.md | 27 + packages/perf-tools/package.json | 39 + .../src/analysis/CpuProfileAnalyzer.ts | 212 + .../perf-tools/src/analysis/NoiseFilter.ts | 150 + .../src/analysis/SpikeCorrelator.ts | 135 + .../perf-tools/src/analysis/TraceParser.ts | 160 + packages/perf-tools/src/cli.ts | 144 + packages/perf-tools/src/index.ts | 33 + packages/perf-tools/src/presets/combined.yaml | 31 + packages/perf-tools/src/presets/idle.yaml | 14 + .../perf-tools/src/presets/large-world.yaml | 24 + .../perf-tools/src/presets/many-players.yaml | 21 + packages/perf-tools/src/presets/stress.yaml | 26 + .../src/reporters/ConsoleReporter.ts | 116 + .../perf-tools/src/reporters/JsonReporter.ts | 55 + .../src/runners/BaselineComparer.ts | 111 + .../perf-tools/src/runners/BenchmarkRunner.ts | 252 + .../perf-tools/src/runners/HeadlessClient.ts | 157 + .../perf-tools/src/runners/MetricCollector.ts | 115 + .../perf-tools/src/runners/ScenarioLoader.ts | 113 + packages/perf-tools/tsconfig.json | 17 + sdk/docs/server.botbehavior.md | 77 + sdk/docs/server.botbehavior.name.md | 11 + sdk/docs/server.botbehavior.tick.md | 77 + sdk/docs/server.botmanager.botcount.md | 11 + sdk/docs/server.botmanager.despawnall.md | 15 + sdk/docs/server.botmanager.despawnbot.md | 49 + sdk/docs/server.botmanager.getallbots.md | 15 + sdk/docs/server.botmanager.getbot.md | 49 + sdk/docs/server.botmanager.instance.md | 11 + sdk/docs/server.botmanager.md | 168 + sdk/docs/server.botmanager.spawnbot.md | 65 + sdk/docs/server.botmanager.spawnbots.md | 79 + sdk/docs/server.botplayer._constructor_.md | 63 + sdk/docs/server.botplayer.controller.md | 11 + sdk/docs/server.botplayer.despawn.md | 15 + sdk/docs/server.botplayer.entity.md | 11 + sdk/docs/server.botplayer.id.md | 11 + sdk/docs/server.botplayer.isspawned.md | 11 + sdk/docs/server.botplayer.md | 252 + sdk/docs/server.botplayer.name.md | 11 + sdk/docs/server.botplayer.setbehavior.md | 49 + sdk/docs/server.botplayer.spawn.md | 51 + sdk/docs/server.botplayer.teleport.md | 49 + sdk/docs/server.botplayer.world.md | 11 + sdk/docs/server.botplayeroptions.behavior.md | 11 + sdk/docs/server.botplayeroptions.md | 150 + .../server.botplayeroptions.modelscale.md | 11 + sdk/docs/server.botplayeroptions.modeluri.md | 11 + sdk/docs/server.botplayeroptions.name.md | 11 + .../server.botplayeroptions.rigidbodytype.md | 11 + .../server.botplayeroptions.spawnposition.md | 11 + .../server.chasebehavior._constructor_.md | 49 + sdk/docs/server.chasebehavior.md | 122 + sdk/docs/server.chasebehavior.name.md | 11 + sdk/docs/server.chasebehavior.tick.md | 77 + .../server.chasebehavioroptions.chasespeed.md | 11 + ...er.chasebehavioroptions.detectionradius.md | 11 + sdk/docs/server.chasebehavioroptions.md | 93 + ...r.chasebehavioroptions.updateintervalms.md | 11 + .../server.cpuprofiler.captureheapsnapshot.md | 51 + sdk/docs/server.cpuprofiler.captureprofile.md | 65 + sdk/docs/server.cpuprofiler.md | 59 + sdk/docs/server.idlebehavior.md | 88 + sdk/docs/server.idlebehavior.name.md | 11 + sdk/docs/server.idlebehavior.tick.md | 77 + .../server.interactbehavior._constructor_.md | 49 + sdk/docs/server.interactbehavior.md | 122 + sdk/docs/server.interactbehavior.name.md | 11 + sdk/docs/server.interactbehavior.tick.md | 77 + ...nteractbehavioroptions.actionintervalms.md | 11 + ....interactbehavioroptions.interactradius.md | 11 + sdk/docs/server.interactbehavioroptions.md | 93 + ...erver.interactbehavioroptions.movespeed.md | 11 + sdk/docs/server.md | 225 + sdk/docs/server.monitor.md | 51 + sdk/docs/server.monitorasyncblock.md | 63 + sdk/docs/server.monitorblock.md | 63 + sdk/docs/server.monitorclass.md | 53 + sdk/docs/server.networkmetrics.disable.md | 15 + sdk/docs/server.networkmetrics.enable.md | 15 + sdk/docs/server.networkmetrics.getsnapshot.md | 15 + sdk/docs/server.networkmetrics.instance.md | 11 + sdk/docs/server.networkmetrics.isenabled.md | 11 + sdk/docs/server.networkmetrics.md | 216 + ...rver.networkmetrics.recordbytesreceived.md | 49 + .../server.networkmetrics.recordbytessent.md | 49 + ...server.networkmetrics.recordcompression.md | 15 + ...ver.networkmetrics.recordpacketreceived.md | 15 + .../server.networkmetrics.recordpacketsent.md | 15 + ...rver.networkmetrics.recordserialization.md | 49 + ...rver.networkmetrics.setconnectedplayers.md | 49 + ...tworkmetricssnapshot.avgserializationms.md | 11 + ...kmetricssnapshot.bytesreceivedpersecond.md | 11 + ...tworkmetricssnapshot.bytesreceivedtotal.md | 11 + ...tworkmetricssnapshot.bytessentpersecond.md | 11 + ...r.networkmetricssnapshot.bytessenttotal.md | 11 + ...networkmetricssnapshot.compressioncount.md | 11 + ...networkmetricssnapshot.connectedplayers.md | 11 + sdk/docs/server.networkmetricssnapshot.md | 189 + ...etricssnapshot.packetsreceivedpersecond.md | 11 + ...orkmetricssnapshot.packetssentpersecond.md | 11 + sdk/docs/server.operationstats.avgms.md | 11 + sdk/docs/server.operationstats.count.md | 11 + sdk/docs/server.operationstats.lastms.md | 11 + sdk/docs/server.operationstats.maxms.md | 11 + sdk/docs/server.operationstats.md | 189 + sdk/docs/server.operationstats.minms.md | 11 + sdk/docs/server.operationstats.p50ms.md | 11 + sdk/docs/server.operationstats.p95ms.md | 11 + sdk/docs/server.operationstats.p99ms.md | 11 + sdk/docs/server.operationstats.totalms.md | 11 + .../server.performancemonitor.begintick.md | 77 + sdk/docs/server.performancemonitor.disable.md | 15 + sdk/docs/server.performancemonitor.enable.md | 51 + ...erformancemonitor.enableentityprofiling.md | 49 + sdk/docs/server.performancemonitor.endtick.md | 15 + ...erver.performancemonitor.getentitycosts.md | 18 + .../server.performancemonitor.getsnapshot.md | 15 + .../server.performancemonitor.instance.md | 11 + .../server.performancemonitor.isenabled.md | 11 + ...ormancemonitor.isentityprofilingenabled.md | 11 + sdk/docs/server.performancemonitor.md | 272 + sdk/docs/server.performancemonitor.measure.md | 63 + .../server.performancemonitor.measureasync.md | 63 + ...ver.performancemonitor.recordentitycost.md | 77 + .../server.performancemonitor.recordphase.md | 63 + .../server.performancemonitor.resetstats.md | 15 + .../server.performancemonitor.starttiming.md | 49 + sdk/docs/server.performancemonitorevent.md | 73 + ...payloads._performance_monitor.snapshot_.md | 11 + ...ds._performance_monitor.spike_detected_.md | 11 + ...loads._performance_monitor.tick_report_.md | 11 + .../server.performancemonitoreventpayloads.md | 87 + ...r.performancemonitoroptions.historysize.md | 11 + sdk/docs/server.performancemonitoroptions.md | 112 + ...rmancemonitoroptions.snapshotintervalms.md | 11 + ...formancemonitoroptions.spikethresholdms.md | 11 + ....performancemonitoroptions.tickbudgetms.md | 11 + .../server.performancesnapshot.avgtickms.md | 11 + .../server.performancesnapshot.budgetms.md | 11 + .../server.performancesnapshot.maxtickms.md | 11 + sdk/docs/server.performancesnapshot.md | 223 + sdk/docs/server.performancesnapshot.memory.md | 15 + .../server.performancesnapshot.operations.md | 11 + .../server.performancesnapshot.p95tickms.md | 11 + .../server.performancesnapshot.p99tickms.md | 11 + .../server.performancesnapshot.tickrate.md | 11 + ...ver.performancesnapshot.ticksoverbudget.md | 11 + .../server.performancesnapshot.totalticks.md | 11 + .../server.performancesnapshot.uptimems.md | 11 + ...server.randomwalkbehavior._constructor_.md | 49 + sdk/docs/server.randomwalkbehavior.md | 122 + sdk/docs/server.randomwalkbehavior.name.md | 11 + sdk/docs/server.randomwalkbehavior.tick.md | 77 + ...omwalkoptions.changedirectionintervalms.md | 11 + sdk/docs/server.randomwalkoptions.md | 93 + .../server.randomwalkoptions.moveradius.md | 11 + .../server.randomwalkoptions.movespeed.md | 11 + sdk/docs/server.tickreport.budgetms.md | 11 + sdk/docs/server.tickreport.budgetpercent.md | 11 + sdk/docs/server.tickreport.durationms.md | 11 + sdk/docs/server.tickreport.entitycount.md | 11 + sdk/docs/server.tickreport.heapusedmb.md | 11 + sdk/docs/server.tickreport.md | 172 + sdk/docs/server.tickreport.phases.md | 11 + sdk/docs/server.tickreport.playercount.md | 11 + sdk/docs/server.tickreport.tick.md | 11 + sdk/server.api.json | 40949 +++++++++------- sdk/server.d.ts | 271 + sdk/server.mjs | 210 +- server/etc/server.api.md | 349 + server/src/bots/BotManager.ts | 70 + server/src/bots/BotPlayer.ts | 95 + server/src/bots/behaviors/ChaseBehavior.ts | 59 + server/src/bots/behaviors/IdleBehavior.ts | 11 + server/src/bots/behaviors/InteractBehavior.ts | 92 + .../src/bots/behaviors/RandomWalkBehavior.ts | 67 + server/src/index.ts | 30 + server/src/metrics/CpuProfiler.ts | 94 + server/src/metrics/Monitor.ts | 59 + server/src/metrics/NetworkMetrics.ts | 132 + server/src/metrics/PerformanceMonitor.ts | 360 + server/src/metrics/Telemetry.ts | 21 +- server/src/worlds/WorldLoop.ts | 31 +- server/src/worlds/entities/EntityManager.ts | 12 +- 188 files changed, 33388 insertions(+), 17964 deletions(-) create mode 100644 .github/workflows/perf-baseline-update.yml create mode 100644 .github/workflows/perf-gate.yml create mode 100644 packages/perf-tools/package.json create mode 100644 packages/perf-tools/src/analysis/CpuProfileAnalyzer.ts create mode 100644 packages/perf-tools/src/analysis/NoiseFilter.ts create mode 100644 packages/perf-tools/src/analysis/SpikeCorrelator.ts create mode 100644 packages/perf-tools/src/analysis/TraceParser.ts create mode 100644 packages/perf-tools/src/cli.ts create mode 100644 packages/perf-tools/src/index.ts create mode 100644 packages/perf-tools/src/presets/combined.yaml create mode 100644 packages/perf-tools/src/presets/idle.yaml create mode 100644 packages/perf-tools/src/presets/large-world.yaml create mode 100644 packages/perf-tools/src/presets/many-players.yaml create mode 100644 packages/perf-tools/src/presets/stress.yaml create mode 100644 packages/perf-tools/src/reporters/ConsoleReporter.ts create mode 100644 packages/perf-tools/src/reporters/JsonReporter.ts create mode 100644 packages/perf-tools/src/runners/BaselineComparer.ts create mode 100644 packages/perf-tools/src/runners/BenchmarkRunner.ts create mode 100644 packages/perf-tools/src/runners/HeadlessClient.ts create mode 100644 packages/perf-tools/src/runners/MetricCollector.ts create mode 100644 packages/perf-tools/src/runners/ScenarioLoader.ts create mode 100644 packages/perf-tools/tsconfig.json create mode 100644 sdk/docs/server.botbehavior.md create mode 100644 sdk/docs/server.botbehavior.name.md create mode 100644 sdk/docs/server.botbehavior.tick.md create mode 100644 sdk/docs/server.botmanager.botcount.md create mode 100644 sdk/docs/server.botmanager.despawnall.md create mode 100644 sdk/docs/server.botmanager.despawnbot.md create mode 100644 sdk/docs/server.botmanager.getallbots.md create mode 100644 sdk/docs/server.botmanager.getbot.md create mode 100644 sdk/docs/server.botmanager.instance.md create mode 100644 sdk/docs/server.botmanager.md create mode 100644 sdk/docs/server.botmanager.spawnbot.md create mode 100644 sdk/docs/server.botmanager.spawnbots.md create mode 100644 sdk/docs/server.botplayer._constructor_.md create mode 100644 sdk/docs/server.botplayer.controller.md create mode 100644 sdk/docs/server.botplayer.despawn.md create mode 100644 sdk/docs/server.botplayer.entity.md create mode 100644 sdk/docs/server.botplayer.id.md create mode 100644 sdk/docs/server.botplayer.isspawned.md create mode 100644 sdk/docs/server.botplayer.md create mode 100644 sdk/docs/server.botplayer.name.md create mode 100644 sdk/docs/server.botplayer.setbehavior.md create mode 100644 sdk/docs/server.botplayer.spawn.md create mode 100644 sdk/docs/server.botplayer.teleport.md create mode 100644 sdk/docs/server.botplayer.world.md create mode 100644 sdk/docs/server.botplayeroptions.behavior.md create mode 100644 sdk/docs/server.botplayeroptions.md create mode 100644 sdk/docs/server.botplayeroptions.modelscale.md create mode 100644 sdk/docs/server.botplayeroptions.modeluri.md create mode 100644 sdk/docs/server.botplayeroptions.name.md create mode 100644 sdk/docs/server.botplayeroptions.rigidbodytype.md create mode 100644 sdk/docs/server.botplayeroptions.spawnposition.md create mode 100644 sdk/docs/server.chasebehavior._constructor_.md create mode 100644 sdk/docs/server.chasebehavior.md create mode 100644 sdk/docs/server.chasebehavior.name.md create mode 100644 sdk/docs/server.chasebehavior.tick.md create mode 100644 sdk/docs/server.chasebehavioroptions.chasespeed.md create mode 100644 sdk/docs/server.chasebehavioroptions.detectionradius.md create mode 100644 sdk/docs/server.chasebehavioroptions.md create mode 100644 sdk/docs/server.chasebehavioroptions.updateintervalms.md create mode 100644 sdk/docs/server.cpuprofiler.captureheapsnapshot.md create mode 100644 sdk/docs/server.cpuprofiler.captureprofile.md create mode 100644 sdk/docs/server.cpuprofiler.md create mode 100644 sdk/docs/server.idlebehavior.md create mode 100644 sdk/docs/server.idlebehavior.name.md create mode 100644 sdk/docs/server.idlebehavior.tick.md create mode 100644 sdk/docs/server.interactbehavior._constructor_.md create mode 100644 sdk/docs/server.interactbehavior.md create mode 100644 sdk/docs/server.interactbehavior.name.md create mode 100644 sdk/docs/server.interactbehavior.tick.md create mode 100644 sdk/docs/server.interactbehavioroptions.actionintervalms.md create mode 100644 sdk/docs/server.interactbehavioroptions.interactradius.md create mode 100644 sdk/docs/server.interactbehavioroptions.md create mode 100644 sdk/docs/server.interactbehavioroptions.movespeed.md create mode 100644 sdk/docs/server.monitor.md create mode 100644 sdk/docs/server.monitorasyncblock.md create mode 100644 sdk/docs/server.monitorblock.md create mode 100644 sdk/docs/server.monitorclass.md create mode 100644 sdk/docs/server.networkmetrics.disable.md create mode 100644 sdk/docs/server.networkmetrics.enable.md create mode 100644 sdk/docs/server.networkmetrics.getsnapshot.md create mode 100644 sdk/docs/server.networkmetrics.instance.md create mode 100644 sdk/docs/server.networkmetrics.isenabled.md create mode 100644 sdk/docs/server.networkmetrics.md create mode 100644 sdk/docs/server.networkmetrics.recordbytesreceived.md create mode 100644 sdk/docs/server.networkmetrics.recordbytessent.md create mode 100644 sdk/docs/server.networkmetrics.recordcompression.md create mode 100644 sdk/docs/server.networkmetrics.recordpacketreceived.md create mode 100644 sdk/docs/server.networkmetrics.recordpacketsent.md create mode 100644 sdk/docs/server.networkmetrics.recordserialization.md create mode 100644 sdk/docs/server.networkmetrics.setconnectedplayers.md create mode 100644 sdk/docs/server.networkmetricssnapshot.avgserializationms.md create mode 100644 sdk/docs/server.networkmetricssnapshot.bytesreceivedpersecond.md create mode 100644 sdk/docs/server.networkmetricssnapshot.bytesreceivedtotal.md create mode 100644 sdk/docs/server.networkmetricssnapshot.bytessentpersecond.md create mode 100644 sdk/docs/server.networkmetricssnapshot.bytessenttotal.md create mode 100644 sdk/docs/server.networkmetricssnapshot.compressioncount.md create mode 100644 sdk/docs/server.networkmetricssnapshot.connectedplayers.md create mode 100644 sdk/docs/server.networkmetricssnapshot.md create mode 100644 sdk/docs/server.networkmetricssnapshot.packetsreceivedpersecond.md create mode 100644 sdk/docs/server.networkmetricssnapshot.packetssentpersecond.md create mode 100644 sdk/docs/server.operationstats.avgms.md create mode 100644 sdk/docs/server.operationstats.count.md create mode 100644 sdk/docs/server.operationstats.lastms.md create mode 100644 sdk/docs/server.operationstats.maxms.md create mode 100644 sdk/docs/server.operationstats.md create mode 100644 sdk/docs/server.operationstats.minms.md create mode 100644 sdk/docs/server.operationstats.p50ms.md create mode 100644 sdk/docs/server.operationstats.p95ms.md create mode 100644 sdk/docs/server.operationstats.p99ms.md create mode 100644 sdk/docs/server.operationstats.totalms.md create mode 100644 sdk/docs/server.performancemonitor.begintick.md create mode 100644 sdk/docs/server.performancemonitor.disable.md create mode 100644 sdk/docs/server.performancemonitor.enable.md create mode 100644 sdk/docs/server.performancemonitor.enableentityprofiling.md create mode 100644 sdk/docs/server.performancemonitor.endtick.md create mode 100644 sdk/docs/server.performancemonitor.getentitycosts.md create mode 100644 sdk/docs/server.performancemonitor.getsnapshot.md create mode 100644 sdk/docs/server.performancemonitor.instance.md create mode 100644 sdk/docs/server.performancemonitor.isenabled.md create mode 100644 sdk/docs/server.performancemonitor.isentityprofilingenabled.md create mode 100644 sdk/docs/server.performancemonitor.md create mode 100644 sdk/docs/server.performancemonitor.measure.md create mode 100644 sdk/docs/server.performancemonitor.measureasync.md create mode 100644 sdk/docs/server.performancemonitor.recordentitycost.md create mode 100644 sdk/docs/server.performancemonitor.recordphase.md create mode 100644 sdk/docs/server.performancemonitor.resetstats.md create mode 100644 sdk/docs/server.performancemonitor.starttiming.md create mode 100644 sdk/docs/server.performancemonitorevent.md create mode 100644 sdk/docs/server.performancemonitoreventpayloads._performance_monitor.snapshot_.md create mode 100644 sdk/docs/server.performancemonitoreventpayloads._performance_monitor.spike_detected_.md create mode 100644 sdk/docs/server.performancemonitoreventpayloads._performance_monitor.tick_report_.md create mode 100644 sdk/docs/server.performancemonitoreventpayloads.md create mode 100644 sdk/docs/server.performancemonitoroptions.historysize.md create mode 100644 sdk/docs/server.performancemonitoroptions.md create mode 100644 sdk/docs/server.performancemonitoroptions.snapshotintervalms.md create mode 100644 sdk/docs/server.performancemonitoroptions.spikethresholdms.md create mode 100644 sdk/docs/server.performancemonitoroptions.tickbudgetms.md create mode 100644 sdk/docs/server.performancesnapshot.avgtickms.md create mode 100644 sdk/docs/server.performancesnapshot.budgetms.md create mode 100644 sdk/docs/server.performancesnapshot.maxtickms.md create mode 100644 sdk/docs/server.performancesnapshot.md create mode 100644 sdk/docs/server.performancesnapshot.memory.md create mode 100644 sdk/docs/server.performancesnapshot.operations.md create mode 100644 sdk/docs/server.performancesnapshot.p95tickms.md create mode 100644 sdk/docs/server.performancesnapshot.p99tickms.md create mode 100644 sdk/docs/server.performancesnapshot.tickrate.md create mode 100644 sdk/docs/server.performancesnapshot.ticksoverbudget.md create mode 100644 sdk/docs/server.performancesnapshot.totalticks.md create mode 100644 sdk/docs/server.performancesnapshot.uptimems.md create mode 100644 sdk/docs/server.randomwalkbehavior._constructor_.md create mode 100644 sdk/docs/server.randomwalkbehavior.md create mode 100644 sdk/docs/server.randomwalkbehavior.name.md create mode 100644 sdk/docs/server.randomwalkbehavior.tick.md create mode 100644 sdk/docs/server.randomwalkoptions.changedirectionintervalms.md create mode 100644 sdk/docs/server.randomwalkoptions.md create mode 100644 sdk/docs/server.randomwalkoptions.moveradius.md create mode 100644 sdk/docs/server.randomwalkoptions.movespeed.md create mode 100644 sdk/docs/server.tickreport.budgetms.md create mode 100644 sdk/docs/server.tickreport.budgetpercent.md create mode 100644 sdk/docs/server.tickreport.durationms.md create mode 100644 sdk/docs/server.tickreport.entitycount.md create mode 100644 sdk/docs/server.tickreport.heapusedmb.md create mode 100644 sdk/docs/server.tickreport.md create mode 100644 sdk/docs/server.tickreport.phases.md create mode 100644 sdk/docs/server.tickreport.playercount.md create mode 100644 sdk/docs/server.tickreport.tick.md create mode 100644 server/src/bots/BotManager.ts create mode 100644 server/src/bots/BotPlayer.ts create mode 100644 server/src/bots/behaviors/ChaseBehavior.ts create mode 100644 server/src/bots/behaviors/IdleBehavior.ts create mode 100644 server/src/bots/behaviors/InteractBehavior.ts create mode 100644 server/src/bots/behaviors/RandomWalkBehavior.ts create mode 100644 server/src/metrics/CpuProfiler.ts create mode 100644 server/src/metrics/Monitor.ts create mode 100644 server/src/metrics/NetworkMetrics.ts create mode 100644 server/src/metrics/PerformanceMonitor.ts diff --git a/.github/workflows/perf-baseline-update.yml b/.github/workflows/perf-baseline-update.yml new file mode 100644 index 00000000..ad1c4731 --- /dev/null +++ b/.github/workflows/perf-baseline-update.yml @@ -0,0 +1,88 @@ +name: Update Performance Baseline + +on: + push: + branches: [master] + paths: + - 'server/src/**' + - 'client/src/**' + - 'protocol/**' + + workflow_dispatch: + +jobs: + update-baseline: + runs-on: ubuntu-latest + timeout-minutes: 20 + + steps: + - uses: actions/checkout@v4 + + - uses: oven-sh/setup-bun@v1 + with: + bun-version: latest + + - uses: actions/setup-node@v4 + with: + node-version: '20' + + - name: Install server dependencies + run: cd server && npm ci + + - name: Build SDK + run: cd server && npm run build + + - name: Install perf-tools + run: cd packages/perf-tools && npm ci && npm run build + + - name: Run benchmarks (3 rounds, averaged) + run: | + mkdir -p .perf-baseline + for preset in idle stress; do + echo "=== Running ${preset} benchmark (3 rounds) ===" + for i in 1 2 3; do + cd packages/perf-tools + npx hytopia-bench run --preset ${preset} --output "../../.perf-baseline/${preset}-run${i}.json" --verbose || true + cd ../.. + done + done + + - name: Average baselines + uses: actions/github-script@v7 + with: + script: | + const fs = require('fs'); + const dir = '.perf-baseline'; + const presets = ['idle', 'stress']; + for (const preset of presets) { + const runs = []; + for (let i = 1; i <= 3; i++) { + const path = `${dir}/${preset}-run${i}.json`; + if (fs.existsSync(path)) { + const data = JSON.parse(fs.readFileSync(path, 'utf-8')); + if (data.baseline) runs.push(data.baseline); + } + } + if (runs.length === 0) continue; + const avg = {}; + const keys = ['avgTickMs', 'maxTickMs', 'p95TickMs', 'p99TickMs', 'ticksOverBudgetPct', 'avgMemoryMb']; + for (const key of keys) { + const values = runs.map(r => r[key]).filter(v => v !== undefined); + avg[key] = values.length > 0 ? values.reduce((a, b) => a + b, 0) / values.length : 0; + } + avg.operations = runs[0].operations || {}; + fs.writeFileSync(`${dir}/${preset}.json`, JSON.stringify(avg, null, 2)); + console.log(`${preset} baseline averaged from ${runs.length} runs`); + } + + - name: Cache baseline + uses: actions/cache/save@v4 + with: + path: .perf-baseline/ + key: perf-baseline-master-${{ github.sha }} + + - name: Also save as latest + uses: actions/cache/save@v4 + with: + path: .perf-baseline/ + key: perf-baseline-master diff --git a/.github/workflows/perf-gate.yml b/.github/workflows/perf-gate.yml new file mode 100644 index 00000000..c4dce2cf --- /dev/null +++ b/.github/workflows/perf-gate.yml @@ -0,0 +1,119 @@ +name: Performance Gate + +on: + pull_request: + branches: [master] + paths: + - 'server/src/**' + - 'client/src/**' + - 'protocol/**' + +jobs: + perf-benchmark: + runs-on: ubuntu-latest + timeout-minutes: 15 + + steps: + - uses: actions/checkout@v4 + + - uses: oven-sh/setup-bun@v1 + with: + bun-version: latest + + - uses: actions/setup-node@v4 + with: + node-version: '20' + + - name: Install server dependencies + run: cd server && npm ci + + - name: Build SDK + run: cd server && npm run build + + - name: Install perf-tools + run: cd packages/perf-tools && npm ci && npm run build + + - name: Restore baseline cache + id: cache-baseline + uses: actions/cache/restore@v4 + with: + path: .perf-baseline/ + key: perf-baseline-${{ github.base_ref }} + + - name: Run idle benchmark + run: | + cd packages/perf-tools + npx hytopia-bench run --preset idle --output ../../.perf-results/idle.json --verbose + continue-on-error: true + + - name: Run stress benchmark + run: | + cd packages/perf-tools + npx hytopia-bench run --preset stress --output ../../.perf-results/stress.json --verbose + continue-on-error: true + + - name: Compare with baseline + if: steps.cache-baseline.outputs.cache-hit == 'true' + run: | + cd packages/perf-tools + RESULTS="" + for preset in idle stress; do + if [ -f "../../.perf-baseline/${preset}.json" ] && [ -f "../../.perf-results/${preset}.json" ]; then + echo "=== Comparing ${preset} ===" + npx hytopia-bench compare \ + "../../.perf-baseline/${preset}.json" \ + "../../.perf-results/${preset}.json" \ + --warn 5 --fail 10 || true + fi + done + + - name: Post results as PR comment + if: always() + uses: actions/github-script@v7 + with: + script: | + const fs = require('fs'); + const results = []; + const dir = '.perf-results'; + if (fs.existsSync(dir)) { + for (const file of fs.readdirSync(dir)) { + if (file.endsWith('.json')) { + const data = JSON.parse(fs.readFileSync(`${dir}/${file}`, 'utf-8')); + results.push(data); + } + } + } + if (results.length === 0) { + console.log('No benchmark results to post'); + return; + } + let body = '## Performance Benchmark Results\n\n'; + for (const r of results) { + body += `### ${r.scenario}\n`; + body += `| Metric | Value |\n|--------|-------|\n`; + if (r.baseline) { + const b = r.baseline; + body += `| Avg Tick | ${b.avgTickMs?.toFixed(2) ?? 'N/A'}ms |\n`; + body += `| P95 Tick | ${b.p95TickMs?.toFixed(2) ?? 'N/A'}ms |\n`; + body += `| P99 Tick | ${b.p99TickMs?.toFixed(2) ?? 'N/A'}ms |\n`; + body += `| Max Tick | ${b.maxTickMs?.toFixed(2) ?? 'N/A'}ms |\n`; + body += `| Over Budget | ${b.ticksOverBudgetPct?.toFixed(1) ?? 'N/A'}% |\n`; + body += `| Avg Memory | ${b.avgMemoryMb?.toFixed(1) ?? 'N/A'}MB |\n`; + } + body += '\n'; + } + body += '\n---\n*Generated by @hytopia/perf-tools*\n'; + await github.rest.issues.createComment({ + owner: context.repo.owner, + repo: context.repo.repo, + issue_number: context.issue.number, + body, + }); + + - name: Upload results artifact + if: always() + uses: actions/upload-artifact@v4 + with: + name: perf-results + path: .perf-results/ + retention-days: 30 diff --git a/ai-memory/feature/perf-notes-amateur-review-24a295d/progress.md b/ai-memory/feature/perf-notes-amateur-review-24a295d/progress.md index 77c5c38e..e4125fb3 100644 --- a/ai-memory/feature/perf-notes-amateur-review-24a295d/progress.md +++ b/ai-memory/feature/perf-notes-amateur-review-24a295d/progress.md @@ -14,3 +14,30 @@ - [x] Push all research to feature/perf-notes-external-review - [x] Synthesis agent consolidated into SYNTHESIS-perf-framework-spec.md (965 lines) - [x] Quality review of synthesis document + +## Phase 1: SDK Performance Module Implementation +- [x] PerformanceMonitor.ts - core singleton profiler (CircularBuffer, percentiles, spike detection) +- [x] Monitor.ts - @Monitor decorator, @MonitorClass, monitorBlock, monitorAsyncBlock +- [x] NetworkMetrics.ts - bandwidth/packet/serialization tracking +- [x] CpuProfiler.ts - V8 Inspector CPU profile + heap snapshot capture +- [x] WorldLoop.ts integration - beginTick/recordPhase/endTick per tick +- [x] EntityManager.ts integration - opt-in per-entity profiling +- [x] Telemetry.ts integration - dual-path (Sentry + PerformanceMonitor) +- [x] index.ts - all new exports added + +## Phase 2: Bot System +- [x] BotPlayer.ts, BotManager.ts, 4 behaviors (Idle/RandomWalk/Chase/Interact) + +## Phase 3: Benchmark Runner CLI (packages/perf-tools/) +- [x] ScenarioLoader, BenchmarkRunner, MetricCollector, HeadlessClient, BaselineComparer +- [x] ConsoleReporter, JsonReporter, CLI entry point, 5 YAML presets + +## Phase 4: Trace Analysis Tools +- [x] TraceParser, CpuProfileAnalyzer, SpikeCorrelator, NoiseFilter + +## Phase 5: CI/CD +- [x] perf-gate.yml, perf-baseline-update.yml + +## Verification +- [x] SDK build passes (tsc + api-extractor) +- [x] SDK size increase: ~13KB diff --git a/packages/perf-tools/package.json b/packages/perf-tools/package.json new file mode 100644 index 00000000..74826c07 --- /dev/null +++ b/packages/perf-tools/package.json @@ -0,0 +1,39 @@ +{ + "name": "@hytopia/perf-tools", + "version": "0.1.0", + "description": "Performance benchmarking and analysis tools for HYTOPIA games", + "type": "module", + "main": "dist/index.js", + "types": "dist/index.d.ts", + "bin": { + "hytopia-bench": "dist/cli.js" + }, + "scripts": { + "build": "tsc", + "dev": "tsc --watch", + "lint": "eslint src/" + }, + "dependencies": { + "js-yaml": "^4.1.0", + "puppeteer": "^23.0.0", + "commander": "^12.0.0", + "chalk": "^5.3.0" + }, + "devDependencies": { + "@types/js-yaml": "^4.0.9", + "@types/node": "^20.0.0", + "typescript": "^5.4.0" + }, + "peerDependencies": { + "hytopia": "*" + }, + "peerDependenciesMeta": { + "hytopia": { + "optional": true + } + }, + "engines": { + "node": ">=18.0.0" + }, + "license": "MIT" +} diff --git a/packages/perf-tools/src/analysis/CpuProfileAnalyzer.ts b/packages/perf-tools/src/analysis/CpuProfileAnalyzer.ts new file mode 100644 index 00000000..6fe23a5b --- /dev/null +++ b/packages/perf-tools/src/analysis/CpuProfileAnalyzer.ts @@ -0,0 +1,212 @@ +export interface ProfileNode { + id: number; + callFrame: { + functionName: string; + scriptId: string; + url: string; + lineNumber: number; + columnNumber: number; + }; + hitCount: number; + children?: number[]; + selfTimeMs: number; + totalTimeMs: number; +} + +export interface HotFunction { + name: string; + url: string; + line: number; + selfTimeMs: number; + totalTimeMs: number; + selfPct: number; + isWasm: boolean; + wasmModule?: string; +} + +export interface CallTreeNode { + name: string; + selfTimeMs: number; + totalTimeMs: number; + children: CallTreeNode[]; +} + +export interface CpuProfileAnalysis { + totalDurationMs: number; + hotFunctions: HotFunction[]; + callTree: CallTreeNode; + wasmFunctions: HotFunction[]; + topScripts: { url: string; selfTimeMs: number; pct: number }[]; +} + +interface RawProfile { + nodes: { + id: number; + callFrame: { + functionName: string; + scriptId: string; + url: string; + lineNumber: number; + columnNumber: number; + }; + hitCount: number; + children?: number[]; + }[]; + startTime: number; + endTime: number; + samples: number[]; + timeDeltas: number[]; +} + +export default class CpuProfileAnalyzer { + private _wasmNameMap: Map = new Map(); + + public setWasmNameMap(map: Map): void { + this._wasmNameMap = map; + } + + public analyze(profile: RawProfile): CpuProfileAnalysis { + const totalDurationMs = (profile.endTime - profile.startTime) / 1000; + const nodeMap = new Map(); + + for (const node of profile.nodes) { + nodeMap.set(node.id, { + ...node, + selfTimeMs: 0, + totalTimeMs: 0, + }); + } + + const sampleTimeUs = profile.timeDeltas; + + for (let i = 0; i < profile.samples.length; i++) { + const nodeId = profile.samples[i]; + const timeMs = (sampleTimeUs[i] ?? 0) / 1000; + const node = nodeMap.get(nodeId); + + if (node) { + node.selfTimeMs += timeMs; + } + } + + this._computeTotalTimes(nodeMap, profile.nodes[0]?.id ?? 1); + + const allNodes = Array.from(nodeMap.values()); + const hotFunctions = this._buildHotFunctions(allNodes, totalDurationMs); + const wasmFunctions = hotFunctions.filter(f => f.isWasm); + const callTree = this._buildCallTree(nodeMap, profile.nodes[0]?.id ?? 1); + const topScripts = this._buildTopScripts(allNodes, totalDurationMs); + + return { + totalDurationMs, + hotFunctions: hotFunctions.slice(0, 50), + callTree, + wasmFunctions, + topScripts, + }; + } + + private _computeTotalTimes(nodeMap: Map, rootId: number): void { + const visited = new Set(); + + const dfs = (id: number): number => { + if (visited.has(id)) return 0; + + visited.add(id); + + const node = nodeMap.get(id); + + if (!node) return 0; + + let total = node.selfTimeMs; + + if (node.children) { + for (const childId of node.children) { + total += dfs(childId); + } + } + + node.totalTimeMs = total; + + return total; + }; + + dfs(rootId); + } + + private _buildHotFunctions(nodes: ProfileNode[], totalMs: number): HotFunction[] { + return nodes + .filter(n => n.selfTimeMs > 0 && n.callFrame.functionName !== '(idle)') + .map(n => { + const isWasm = n.callFrame.url.includes('wasm') || n.callFrame.functionName.startsWith('wasm-'); + const wasmName = isWasm ? this._wasmNameMap.get(n.callFrame.functionName) : undefined; + + return { + name: wasmName ?? n.callFrame.functionName, + url: n.callFrame.url, + line: n.callFrame.lineNumber, + selfTimeMs: n.selfTimeMs, + totalTimeMs: n.totalTimeMs, + selfPct: totalMs > 0 ? (n.selfTimeMs / totalMs) * 100 : 0, + isWasm, + wasmModule: wasmName ? 'rapier3d' : undefined, + }; + }) + .sort((a, b) => b.selfTimeMs - a.selfTimeMs); + } + + private _buildCallTree(nodeMap: Map, rootId: number): CallTreeNode { + const build = (id: number, depth: number): CallTreeNode => { + const node = nodeMap.get(id); + + if (!node || depth > 20) { + return { name: '(unknown)', selfTimeMs: 0, totalTimeMs: 0, children: [] }; + } + + const children: CallTreeNode[] = []; + + if (node.children) { + for (const childId of node.children) { + const child = nodeMap.get(childId); + + if (child && child.totalTimeMs > 0) { + children.push(build(childId, depth + 1)); + } + } + } + + children.sort((a, b) => b.totalTimeMs - a.totalTimeMs); + + return { + name: node.callFrame.functionName || '(anonymous)', + selfTimeMs: node.selfTimeMs, + totalTimeMs: node.totalTimeMs, + children: children.slice(0, 10), + }; + }; + + return build(rootId, 0); + } + + private _buildTopScripts(nodes: ProfileNode[], totalMs: number): { url: string; selfTimeMs: number; pct: number }[] { + const scriptTimes = new Map(); + + for (const node of nodes) { + if (node.selfTimeMs > 0 && node.callFrame.url) { + scriptTimes.set( + node.callFrame.url, + (scriptTimes.get(node.callFrame.url) ?? 0) + node.selfTimeMs, + ); + } + } + + return Array.from(scriptTimes.entries()) + .map(([url, selfTimeMs]) => ({ + url, + selfTimeMs, + pct: totalMs > 0 ? (selfTimeMs / totalMs) * 100 : 0, + })) + .sort((a, b) => b.selfTimeMs - a.selfTimeMs) + .slice(0, 20); + } +} diff --git a/packages/perf-tools/src/analysis/NoiseFilter.ts b/packages/perf-tools/src/analysis/NoiseFilter.ts new file mode 100644 index 00000000..859a1b7e --- /dev/null +++ b/packages/perf-tools/src/analysis/NoiseFilter.ts @@ -0,0 +1,150 @@ +export interface ChangePoint { + index: number; + timestamp?: number; + beforeMean: number; + afterMean: number; + changePct: number; + significance: number; +} + +export type VarianceClassification = 'stable' | 'noisy' | 'trending_up' | 'trending_down' | 'erratic'; + +export default class NoiseFilter { + public removeOutliers(data: number[], iqrMultiplier: number = 1.5): number[] { + if (data.length < 4) return data.slice(); + + const sorted = data.slice().sort((a, b) => a - b); + const q1 = sorted[Math.floor(sorted.length * 0.25)]; + const q3 = sorted[Math.floor(sorted.length * 0.75)]; + const iqr = q3 - q1; + const lower = q1 - iqrMultiplier * iqr; + const upper = q3 + iqrMultiplier * iqr; + + return data.filter(v => v >= lower && v <= upper); + } + + public movingAverage(data: number[], windowSize: number = 5): number[] { + if (data.length === 0) return []; + if (windowSize < 1) windowSize = 1; + if (windowSize > data.length) windowSize = data.length; + + const result: number[] = []; + let windowSum = 0; + + for (let i = 0; i < windowSize; i++) { + windowSum += data[i]; + } + + result.push(windowSum / windowSize); + + for (let i = windowSize; i < data.length; i++) { + windowSum += data[i] - data[i - windowSize]; + result.push(windowSum / windowSize); + } + + return result; + } + + public detectChangePoints(data: number[], minSegmentSize: number = 10, thresholdPct: number = 10): ChangePoint[] { + if (data.length < minSegmentSize * 2) return []; + + const changePoints: ChangePoint[] = []; + + for (let i = minSegmentSize; i <= data.length - minSegmentSize; i++) { + const before = data.slice(i - minSegmentSize, i); + const after = data.slice(i, i + minSegmentSize); + + const beforeMean = this._mean(before); + const afterMean = this._mean(after); + + if (beforeMean === 0) continue; + + const changePct = ((afterMean - beforeMean) / beforeMean) * 100; + + if (Math.abs(changePct) >= thresholdPct) { + const beforeStd = this._std(before); + const afterStd = this._std(after); + const pooledStd = Math.sqrt((beforeStd * beforeStd + afterStd * afterStd) / 2); + const significance = pooledStd > 0 + ? Math.abs(afterMean - beforeMean) / pooledStd + : Math.abs(changePct) / 10; + + if (significance > 1.5) { + const lastCp = changePoints[changePoints.length - 1]; + + if (!lastCp || i - lastCp.index > minSegmentSize) { + changePoints.push({ + index: i, + beforeMean, + afterMean, + changePct, + significance, + }); + } + } + } + } + + return changePoints; + } + + public classifyVariance(data: number[]): VarianceClassification { + if (data.length < 5) return 'stable'; + + const mean = this._mean(data); + const std = this._std(data); + const cv = mean > 0 ? std / mean : 0; + + if (cv > 0.5) return 'erratic'; + + const firstHalf = data.slice(0, Math.floor(data.length / 2)); + const secondHalf = data.slice(Math.floor(data.length / 2)); + const firstMean = this._mean(firstHalf); + const secondMean = this._mean(secondHalf); + + if (firstMean > 0) { + const trendPct = ((secondMean - firstMean) / firstMean) * 100; + + if (trendPct > 10) return 'trending_up'; + if (trendPct < -10) return 'trending_down'; + } + + if (cv > 0.15) return 'noisy'; + + return 'stable'; + } + + public smoothAndAnalyze(data: number[], windowSize: number = 5): { + raw: number[]; + smoothed: number[]; + outlierCount: number; + variance: VarianceClassification; + changePoints: ChangePoint[]; + } { + const cleaned = this.removeOutliers(data); + const smoothed = this.movingAverage(cleaned, windowSize); + + return { + raw: data, + smoothed, + outlierCount: data.length - cleaned.length, + variance: this.classifyVariance(cleaned), + changePoints: this.detectChangePoints(cleaned), + }; + } + + private _mean(data: number[]): number { + if (data.length === 0) return 0; + + return data.reduce((s, v) => s + v, 0) / data.length; + } + + private _std(data: number[]): number { + if (data.length < 2) return 0; + + const mean = this._mean(data); + const variance = data.reduce((s, v) => s + (v - mean) ** 2, 0) / (data.length - 1); + + return Math.sqrt(variance); + } +} diff --git a/packages/perf-tools/src/analysis/SpikeCorrelator.ts b/packages/perf-tools/src/analysis/SpikeCorrelator.ts new file mode 100644 index 00000000..a47eba69 --- /dev/null +++ b/packages/perf-tools/src/analysis/SpikeCorrelator.ts @@ -0,0 +1,135 @@ +import type { SpikeEntry, TickReportEntry } from '../runners/MetricCollector.js'; +import type { GcEvent } from './TraceParser.js'; + +export interface SpikeCause { + type: 'entity_spawn' | 'entity_despawn' | 'gc_pause' | 'network_burst' | 'phase_overrun' | 'unknown'; + confidence: number; + details: string; +} + +export interface SpikeCorrelation { + spike: SpikeEntry; + causes: SpikeCause[]; + primaryCause: SpikeCause; +} + +export default class SpikeCorrelator { + public correlate( + spikes: SpikeEntry[], + tickReports: TickReportEntry[], + gcEvents?: GcEvent[], + ): SpikeCorrelation[] { + return spikes.map(spike => { + const causes: SpikeCause[] = []; + + const entityCause = this._checkEntityChange(spike, tickReports); + + if (entityCause) causes.push(entityCause); + + const phaseCause = this._checkPhaseOverrun(spike); + + if (phaseCause) causes.push(phaseCause); + + if (gcEvents) { + const gcCause = this._checkGcPause(spike, gcEvents); + + if (gcCause) causes.push(gcCause); + } + + if (causes.length === 0) { + causes.push({ + type: 'unknown', + confidence: 0.1, + details: `Spike of ${spike.durationMs.toFixed(1)}ms with no clear correlation`, + }); + } + + causes.sort((a, b) => b.confidence - a.confidence); + + return { + spike, + causes, + primaryCause: causes[0], + }; + }); + } + + private _checkEntityChange(spike: SpikeEntry, tickReports: TickReportEntry[]): SpikeCause | null { + const nearbyReports = tickReports.filter( + r => Math.abs(r.timestamp - spike.timestamp) < 2000, + ); + + if (nearbyReports.length < 2) return null; + + nearbyReports.sort((a, b) => a.timestamp - b.timestamp); + + for (let i = 1; i < nearbyReports.length; i++) { + const delta = nearbyReports[i].entityCount - nearbyReports[i - 1].entityCount; + + if (delta > 10) { + return { + type: 'entity_spawn', + confidence: 0.7, + details: `${delta} entities spawned near spike (${nearbyReports[i - 1].entityCount} -> ${nearbyReports[i].entityCount})`, + }; + } + + if (delta < -10) { + return { + type: 'entity_despawn', + confidence: 0.5, + details: `${Math.abs(delta)} entities despawned near spike`, + }; + } + } + + return null; + } + + private _checkPhaseOverrun(spike: SpikeEntry): SpikeCause | null { + const phases = spike.phases; + + if (!phases || Object.keys(phases).length === 0) return null; + + const entries = Object.entries(phases).sort((a, b) => b[1] - a[1]); + const topPhase = entries[0]; + + if (!topPhase) return null; + + const totalPhaseTime = entries.reduce((s, [, v]) => s + v, 0); + const topPct = totalPhaseTime > 0 ? (topPhase[1] / totalPhaseTime) * 100 : 0; + + if (topPct > 60) { + return { + type: 'phase_overrun', + confidence: 0.8, + details: `Phase "${topPhase[0]}" used ${topPct.toFixed(0)}% of tick time (${topPhase[1].toFixed(1)}ms)`, + }; + } + + return null; + } + + private _checkGcPause(spike: SpikeEntry, gcEvents: GcEvent[]): SpikeCause | null { + const spikeTimeMs = spike.timestamp; + const windowMs = 100; + + const nearbyGc = gcEvents.filter( + gc => Math.abs(gc.startMs - spikeTimeMs) < windowMs, + ); + + if (nearbyGc.length === 0) return null; + + const totalGcMs = nearbyGc.reduce((s, gc) => s + gc.durationMs, 0); + + if (totalGcMs > 2) { + return { + type: 'gc_pause', + confidence: 0.6, + details: `${nearbyGc.length} GC event(s) totaling ${totalGcMs.toFixed(1)}ms near spike`, + }; + } + + return null; + } +} diff --git a/packages/perf-tools/src/analysis/TraceParser.ts b/packages/perf-tools/src/analysis/TraceParser.ts new file mode 100644 index 00000000..5769c597 --- /dev/null +++ b/packages/perf-tools/src/analysis/TraceParser.ts @@ -0,0 +1,160 @@ +export interface TraceEvent { + name: string; + cat: string; + ph: string; + ts: number; + dur?: number; + pid: number; + tid: number; + args?: Record; +} + +export interface FrameTiming { + startMs: number; + durationMs: number; + scriptMs: number; + layoutMs: number; + paintMs: number; +} + +export interface LongTask { + startMs: number; + durationMs: number; + name: string; + category: string; +} + +export interface GcEvent { + startMs: number; + durationMs: number; + type: string; + sizeBeforeBytes?: number; + sizeAfterBytes?: number; +} + +export interface TraceAnalysis { + totalDurationMs: number; + frameCount: number; + avgFrameTimeMs: number; + p95FrameTimeMs: number; + jankFrames: number; + longTasks: LongTask[]; + gcEvents: GcEvent[]; + frameTimes: number[]; + userTimings: { name: string; startMs: number; durationMs: number }[]; +} + +export default class TraceParser { + public parse(traceData: { traceEvents: TraceEvent[] } | TraceEvent[]): TraceAnalysis { + const events = Array.isArray(traceData) ? traceData : traceData.traceEvents; + + if (!events || events.length === 0) { + return this._emptyAnalysis(); + } + + const minTs = Math.min(...events.filter(e => e.ts > 0).map(e => e.ts)); + + const frameTimes = this._extractFrameTimes(events, minTs); + const longTasks = this._extractLongTasks(events, minTs); + const gcEvents = this._extractGcEvents(events, minTs); + const userTimings = this._extractUserTimings(events, minTs); + + const sorted = frameTimes.slice().sort((a, b) => a - b); + const jankThresholdMs = 1000 / 30; + + return { + totalDurationMs: events.length > 0 + ? (Math.max(...events.map(e => e.ts + (e.dur ?? 0))) - minTs) / 1000 + : 0, + frameCount: frameTimes.length, + avgFrameTimeMs: sorted.length > 0 ? sorted.reduce((a, b) => a + b, 0) / sorted.length : 0, + p95FrameTimeMs: sorted.length > 0 ? sorted[Math.floor(sorted.length * 0.95)] : 0, + jankFrames: frameTimes.filter(t => t > jankThresholdMs).length, + longTasks, + gcEvents, + frameTimes, + userTimings, + }; + } + + private _extractFrameTimes(events: TraceEvent[], minTs: number): number[] { + const compositorFrames = events.filter( + e => e.name === 'Compositor::BeginFrame' || e.name === 'BeginFrame', + ); + + if (compositorFrames.length < 2) { + const mainFrames = events.filter(e => e.name === 'BeginMainThreadFrame'); + + if (mainFrames.length < 2) return []; + + const times: number[] = []; + + for (let i = 1; i < mainFrames.length; i++) { + times.push((mainFrames[i].ts - mainFrames[i - 1].ts) / 1000); + } + + return times; + } + + const times: number[] = []; + + for (let i = 1; i < compositorFrames.length; i++) { + times.push((compositorFrames[i].ts - compositorFrames[i - 1].ts) / 1000); + } + + return times; + } + + private _extractLongTasks(events: TraceEvent[], minTs: number): LongTask[] { + const longTaskThresholdUs = 50000; + + return events + .filter(e => e.ph === 'X' && (e.dur ?? 0) > longTaskThresholdUs) + .map(e => ({ + startMs: (e.ts - minTs) / 1000, + durationMs: (e.dur ?? 0) / 1000, + name: e.name, + category: e.cat, + })) + .sort((a, b) => b.durationMs - a.durationMs) + .slice(0, 100); + } + + private _extractGcEvents(events: TraceEvent[], minTs: number): GcEvent[] { + const gcNames = ['V8.GCScavenger', 'V8.GCFinalizeMC', 'V8.GCIncrementalMarking', 'MinorGC', 'MajorGC', 'BlinkGC.AtomicPhase']; + + return events + .filter(e => gcNames.some(n => e.name.includes(n)) && e.ph === 'X') + .map(e => ({ + startMs: (e.ts - minTs) / 1000, + durationMs: (e.dur ?? 0) / 1000, + type: e.name, + sizeBeforeBytes: e.args?.usedHeapSizeBefore as number | undefined, + sizeAfterBytes: e.args?.usedHeapSizeAfter as number | undefined, + })); + } + + private _extractUserTimings(events: TraceEvent[], minTs: number): { name: string; startMs: number; durationMs: number }[] { + return events + .filter(e => e.cat === 'blink.user_timing' && e.ph === 'X') + .map(e => ({ + name: e.name, + startMs: (e.ts - minTs) / 1000, + durationMs: (e.dur ?? 0) / 1000, + })); + } + + private _emptyAnalysis(): TraceAnalysis { + return { + totalDurationMs: 0, + frameCount: 0, + avgFrameTimeMs: 0, + p95FrameTimeMs: 0, + jankFrames: 0, + longTasks: [], + gcEvents: [], + frameTimes: [], + userTimings: [], + }; + } +} diff --git a/packages/perf-tools/src/cli.ts b/packages/perf-tools/src/cli.ts new file mode 100644 index 00000000..76e8d324 --- /dev/null +++ b/packages/perf-tools/src/cli.ts @@ -0,0 +1,144 @@ +#!/usr/bin/env node + +import * as fs from 'node:fs'; +import * as path from 'node:path'; +import { Command } from 'commander'; +import { loadScenario } from './runners/ScenarioLoader.js'; +import BenchmarkRunner from './runners/BenchmarkRunner.js'; +import BaselineComparer from './runners/BaselineComparer.js'; +import ConsoleReporter from './reporters/ConsoleReporter.js'; +import JsonReporter from './reporters/JsonReporter.js'; + +const program = new Command(); + +program + .name('hytopia-bench') + .description('Performance benchmarking tools for HYTOPIA games') + .version('0.1.0'); + +program + .command('run') + .description('Run a benchmark scenario') + .argument('[scenario]', 'Path to scenario YAML/JSON file') + .option('--preset ', 'Use a built-in preset (idle, stress, large-world, many-players, combined)') + .option('--output ', 'Write results to JSON file') + .option('--full-data', 'Include raw metric data in output') + .option('--baseline ', 'Compare results against a baseline JSON') + .option('--server-cmd ', 'Command to start the game server', 'npm run dev') + .option('--server-cwd ', 'Working directory for server', '.') + .option('--client-url ', 'Client URL', 'http://localhost:8080') + .option('--no-headless', 'Run browser in visible mode') + .option('--verbose', 'Enable verbose logging') + .action(async (scenarioPath, options) => { + let scenario; + + if (options.preset) { + const presetPath = path.join(import.meta.dirname, 'presets', `${options.preset}.yaml`); + + if (!fs.existsSync(presetPath)) { + console.error(`Unknown preset: ${options.preset}. Available: idle, stress, large-world, many-players, combined`); + process.exit(1); + } + + scenario = loadScenario(presetPath); + } else if (scenarioPath) { + scenario = loadScenario(scenarioPath); + } else { + console.error('Provide a scenario file or --preset name'); + process.exit(1); + } + + const runner = new BenchmarkRunner({ + serverCommand: options.serverCmd, + serverCwd: options.serverCwd, + clientUrl: options.clientUrl, + headless: options.headless !== false, + verbose: options.verbose, + }); + + console.log(`Running benchmark: ${scenario.name}`); + + const result = await runner.run(scenario); + + const consoleReporter = new ConsoleReporter(); + + consoleReporter.reportBenchmark(result); + + if (options.baseline) { + const baseline = BaselineComparer.loadBaseline(options.baseline); + const comparer = new BaselineComparer(); + const comparison = comparer.compare(baseline, result.baseline, scenario.name); + + consoleReporter.reportComparison(comparison); + + if (comparison.overallStatus === 'fail') { + process.exitCode = 1; + } + } + + if (options.output) { + const jsonReporter = new JsonReporter(); + + if (options.fullData) { + jsonReporter.writeFullData(result, options.output); + } else { + const report = jsonReporter.generateReport(result); + + jsonReporter.writeReport(report, options.output); + } + + console.log(`Results written to: ${options.output}`); + } + }); + +program + .command('compare') + .description('Compare two baseline files') + .argument('', 'Path to baseline (before) JSON') + .argument('', 'Path to baseline (after) JSON') + .option('--warn ', 'Warning threshold percentage', '5') + .option('--fail ', 'Failure threshold percentage', '15') + .option('--fail-on-regression', 'Exit with code 1 if any metric regresses beyond fail threshold') + .action((beforePath, afterPath, options) => { + const before = BaselineComparer.loadBaseline(beforePath); + const after = BaselineComparer.loadBaseline(afterPath); + + const comparer = new BaselineComparer({ + warningThresholdPct: parseFloat(options.warn), + failThresholdPct: parseFloat(options.fail), + }); + + const comparison = comparer.compare(before, after, `${path.basename(beforePath)} vs ${path.basename(afterPath)}`); + + const reporter = new ConsoleReporter(); + + reporter.reportComparison(comparison); + + if (options.failOnRegression && comparison.overallStatus === 'fail') { + process.exitCode = 1; + } + }); + +program + .command('presets') + .description('List available built-in presets') + .action(() => { + const presetsDir = path.join(import.meta.dirname, 'presets'); + + if (!fs.existsSync(presetsDir)) { + console.log('No presets directory found'); + return; + } + + const files = fs.readdirSync(presetsDir).filter(f => f.endsWith('.yaml') || f.endsWith('.yml')); + + console.log('Available presets:'); + + for (const file of files) { + const scenario = loadScenario(path.join(presetsDir, file)); + + console.log(` ${path.basename(file, path.extname(file))}: ${scenario.description ?? scenario.name}`); + } + }); + +program.parse(); diff --git a/packages/perf-tools/src/index.ts b/packages/perf-tools/src/index.ts new file mode 100644 index 00000000..c9ec38b5 --- /dev/null +++ b/packages/perf-tools/src/index.ts @@ -0,0 +1,33 @@ +// Runners +export { default as BenchmarkRunner } from './runners/BenchmarkRunner.js'; +export type { BenchmarkRunnerOptions, BenchmarkResult, PhaseResult } from './runners/BenchmarkRunner.js'; + +export { loadScenario, parseDuration } from './runners/ScenarioLoader.js'; +export type { Scenario, ScenarioPhase, ScenarioAction, ScenarioThresholds } from './runners/ScenarioLoader.js'; + +export { default as MetricCollector } from './runners/MetricCollector.js'; +export type { CollectedMetrics, ServerSnapshot, ClientSnapshot, TickReportEntry, SpikeEntry, OperationSnapshot } from './runners/MetricCollector.js'; + +export { default as HeadlessClient } from './runners/HeadlessClient.js'; +export type { HeadlessClientOptions } from './runners/HeadlessClient.js'; + +export { default as BaselineComparer } from './runners/BaselineComparer.js'; +export type { BaselineResult, ComparisonEntry, ComparisonResult, BaselineComparerOptions } from './runners/BaselineComparer.js'; + +// Reporters +export { default as ConsoleReporter } from './reporters/ConsoleReporter.js'; +export { default as JsonReporter } from './reporters/JsonReporter.js'; +export type { JsonReport } from './reporters/JsonReporter.js'; + +// Analysis (re-exported when available) +export { default as TraceParser } from './analysis/TraceParser.js'; +export type { TraceEvent, FrameTiming, LongTask, GcEvent, TraceAnalysis } from './analysis/TraceParser.js'; + +export { default as CpuProfileAnalyzer } from './analysis/CpuProfileAnalyzer.js'; +export type { ProfileNode, HotFunction, CallTreeNode, CpuProfileAnalysis } from './analysis/CpuProfileAnalyzer.js'; + +export { default as SpikeCorrelator } from './analysis/SpikeCorrelator.js'; +export type { SpikeCorrelation, SpikeCause } from './analysis/SpikeCorrelator.js'; + +export { default as NoiseFilter } from './analysis/NoiseFilter.js'; +export type { ChangePoint, VarianceClassification } from './analysis/NoiseFilter.js'; diff --git a/packages/perf-tools/src/presets/combined.yaml b/packages/perf-tools/src/presets/combined.yaml new file mode 100644 index 00000000..f896bb05 --- /dev/null +++ b/packages/perf-tools/src/presets/combined.yaml @@ -0,0 +1,31 @@ +name: "combined-stress" +description: "Combined stress test - large world, many bots, block interactions, all at once" +clients: 10 +warmupMs: 10000 +phases: + - name: load-world + actions: + - type: load_map + mapPath: "assets/maps/large-test-world.json" + - name: spawn-all + actions: + - type: spawn_bots + count: 50 + behavior: random_walk + - type: spawn_bots + count: 30 + behavior: chase + - type: spawn_bots + count: 20 + behavior: interact + - name: stabilize + duration: 10s + - name: measure + duration: 120s + collect: true +thresholds: + tick_duration_ms: + avg: 14 + p99: 30 + memory_mb: + max: 1500 diff --git a/packages/perf-tools/src/presets/idle.yaml b/packages/perf-tools/src/presets/idle.yaml new file mode 100644 index 00000000..3df52f29 --- /dev/null +++ b/packages/perf-tools/src/presets/idle.yaml @@ -0,0 +1,14 @@ +name: "idle-baseline" +description: "Empty server baseline - measures overhead of the engine with no game logic" +phases: + - name: warmup + duration: 5s + - name: measure + duration: 30s + collect: true +thresholds: + tick_duration_ms: + avg: 2 + p99: 5 + memory_mb: + max: 200 diff --git a/packages/perf-tools/src/presets/large-world.yaml b/packages/perf-tools/src/presets/large-world.yaml new file mode 100644 index 00000000..40baa3d1 --- /dev/null +++ b/packages/perf-tools/src/presets/large-world.yaml @@ -0,0 +1,24 @@ +name: "large-world" +description: "Large world with many chunks loaded - tests chunk lattice and physics broadphase" +warmupMs: 10000 +phases: + - name: load-world + actions: + - type: load_map + mapPath: "assets/maps/large-test-world.json" + - name: spawn-bots + actions: + - type: spawn_bots + count: 20 + behavior: random_walk + - name: stabilize + duration: 10s + - name: measure + duration: 60s + collect: true +thresholds: + tick_duration_ms: + avg: 14 + p99: 25 + memory_mb: + max: 1000 diff --git a/packages/perf-tools/src/presets/many-players.yaml b/packages/perf-tools/src/presets/many-players.yaml new file mode 100644 index 00000000..cff13a7b --- /dev/null +++ b/packages/perf-tools/src/presets/many-players.yaml @@ -0,0 +1,21 @@ +name: "many-players" +description: "Simulates 50 headless clients connecting to stress network and serialization" +clients: 50 +warmupMs: 10000 +phases: + - name: connect-clients + duration: 10s + - name: spawn-bots + actions: + - type: spawn_bots + count: 50 + behavior: random_walk + - name: measure + duration: 60s + collect: true +thresholds: + tick_duration_ms: + avg: 14 + p99: 25 + network: + maxBytesPerSecond: 10000000 diff --git a/packages/perf-tools/src/presets/stress.yaml b/packages/perf-tools/src/presets/stress.yaml new file mode 100644 index 00000000..9eb2b0ce --- /dev/null +++ b/packages/perf-tools/src/presets/stress.yaml @@ -0,0 +1,26 @@ +name: "stress-test" +description: "Stress test with 500 entities and 100 bots performing various actions" +warmupMs: 5000 +phases: + - name: spawn-entities + actions: + - type: spawn_bots + count: 50 + behavior: random_walk + - type: spawn_bots + count: 30 + behavior: chase + - type: spawn_bots + count: 20 + behavior: interact + - name: stabilize + duration: 5s + - name: measure + duration: 60s + collect: true +thresholds: + tick_duration_ms: + avg: 12 + p99: 20 + memory_mb: + max: 500 diff --git a/packages/perf-tools/src/reporters/ConsoleReporter.ts b/packages/perf-tools/src/reporters/ConsoleReporter.ts new file mode 100644 index 00000000..b8597f00 --- /dev/null +++ b/packages/perf-tools/src/reporters/ConsoleReporter.ts @@ -0,0 +1,116 @@ +import type { BenchmarkResult } from '../runners/BenchmarkRunner.js'; +import type { ComparisonResult } from '../runners/BaselineComparer.js'; + +export default class ConsoleReporter { + public reportBenchmark(result: BenchmarkResult): void { + console.log(''); + console.log(`=== Benchmark: ${result.scenario.name} ===`); + console.log(`Duration: ${(result.durationMs / 1000).toFixed(1)}s`); + console.log(''); + + const b = result.baseline; + + console.log('Server Tick Performance:'); + console.log(` avg: ${b.avgTickMs.toFixed(2)}ms`); + console.log(` p95: ${b.p95TickMs.toFixed(2)}ms`); + console.log(` p99: ${b.p99TickMs.toFixed(2)}ms`); + console.log(` max: ${b.maxTickMs.toFixed(2)}ms`); + console.log(` over budget: ${b.ticksOverBudgetPct.toFixed(1)}%`); + console.log(''); + + console.log(`Memory: ${b.avgMemoryMb.toFixed(1)}MB avg heap`); + + if (b.avgFps !== undefined) { + console.log(`Client FPS: ${b.avgFps.toFixed(1)} avg`); + } + + const opNames = Object.keys(b.operations); + + if (opNames.length > 0) { + console.log(''); + console.log('Operations:'); + + for (const name of opNames.sort()) { + const op = b.operations[name]; + + console.log(` ${name}: avg=${op.avgMs.toFixed(2)}ms p95=${op.p95Ms.toFixed(2)}ms`); + } + } + + console.log(''); + + if (result.scenario.thresholds) { + this._reportThresholds(result); + } + + console.log('Phases:'); + + for (const phase of result.phaseResults) { + console.log(` ${phase.name}: ${(phase.durationMs / 1000).toFixed(1)}s${phase.collected ? ' (collected)' : ''}`); + } + + console.log(''); + } + + public reportComparison(comparison: ComparisonResult): void { + console.log(''); + console.log(`=== Comparison: ${comparison.scenarioName} ===`); + console.log(`Thresholds: warning >${comparison.warningThresholdPct}%, fail >${comparison.failThresholdPct}%`); + console.log(`Overall: ${this._statusIcon(comparison.overallStatus)} ${comparison.overallStatus.toUpperCase()}`); + console.log(''); + + const maxNameLen = Math.max(...comparison.entries.map(e => e.metric.length)); + + for (const entry of comparison.entries) { + const name = entry.metric.padEnd(maxNameLen); + const icon = this._statusIcon(entry.status); + const change = entry.changePct > 0 ? `+${entry.changePct.toFixed(1)}%` : `${entry.changePct.toFixed(1)}%`; + + console.log(` ${icon} ${name} ${entry.baseline.toFixed(2)} -> ${entry.current.toFixed(2)} (${change})`); + } + + console.log(''); + } + + private _reportThresholds(result: BenchmarkResult): void { + const t = result.scenario.thresholds!; + const b = result.baseline; + let allPass = true; + + console.log('Threshold Checks:'); + + if (t.tick_duration_ms) { + if (t.tick_duration_ms.avg !== undefined) { + const pass = b.avgTickMs <= t.tick_duration_ms.avg; + + allPass = allPass && pass; + console.log(` ${pass ? 'PASS' : 'FAIL'} tick avg ${b.avgTickMs.toFixed(2)}ms <= ${t.tick_duration_ms.avg}ms`); + } + + if (t.tick_duration_ms.p99 !== undefined) { + const pass = b.p99TickMs <= t.tick_duration_ms.p99; + + allPass = allPass && pass; + console.log(` ${pass ? 'PASS' : 'FAIL'} tick p99 ${b.p99TickMs.toFixed(2)}ms <= ${t.tick_duration_ms.p99}ms`); + } + } + + if (t.memory_mb?.max !== undefined) { + const pass = b.avgMemoryMb <= t.memory_mb.max; + + allPass = allPass && pass; + console.log(` ${pass ? 'PASS' : 'FAIL'} memory ${b.avgMemoryMb.toFixed(1)}MB <= ${t.memory_mb.max}MB`); + } + + console.log(` Overall: ${allPass ? 'ALL PASS' : 'SOME FAILED'}`); + console.log(''); + } + + private _statusIcon(status: 'pass' | 'warning' | 'fail'): string { + switch (status) { + case 'pass': return 'OK'; + case 'warning': return 'WARN'; + case 'fail': return 'FAIL'; + } + } +} diff --git a/packages/perf-tools/src/reporters/JsonReporter.ts b/packages/perf-tools/src/reporters/JsonReporter.ts new file mode 100644 index 00000000..7d99e921 --- /dev/null +++ b/packages/perf-tools/src/reporters/JsonReporter.ts @@ -0,0 +1,55 @@ +import * as fs from 'node:fs'; +import type { BenchmarkResult } from '../runners/BenchmarkRunner.js'; +import type { ComparisonResult } from '../runners/BaselineComparer.js'; + +export interface JsonReport { + timestamp: string; + scenario: string; + durationMs: number; + baseline: object; + phases: object[]; + comparison?: object; + metrics?: { + tickReportCount: number; + spikeCount: number; + serverSnapshotCount: number; + clientSnapshotCount: number; + }; +} + +export default class JsonReporter { + public generateReport(result: BenchmarkResult, comparison?: ComparisonResult): JsonReport { + return { + timestamp: new Date().toISOString(), + scenario: result.scenario.name, + durationMs: result.durationMs, + baseline: result.baseline, + phases: result.phaseResults, + comparison: comparison ?? undefined, + metrics: { + tickReportCount: result.metrics.tickReports.length, + spikeCount: result.metrics.spikes.length, + serverSnapshotCount: result.metrics.serverSnapshots.length, + clientSnapshotCount: result.metrics.clientSnapshots.length, + }, + }; + } + + public writeReport(report: JsonReport, outputPath: string): void { + fs.writeFileSync(outputPath, JSON.stringify(report, null, 2), 'utf-8'); + } + + public writeFullData(result: BenchmarkResult, outputPath: string): void { + const data = { + ...this.generateReport(result), + rawMetrics: { + serverSnapshots: result.metrics.serverSnapshots, + clientSnapshots: result.metrics.clientSnapshots, + tickReports: result.metrics.tickReports, + spikes: result.metrics.spikes, + }, + }; + + fs.writeFileSync(outputPath, JSON.stringify(data, null, 2), 'utf-8'); + } +} diff --git a/packages/perf-tools/src/runners/BaselineComparer.ts b/packages/perf-tools/src/runners/BaselineComparer.ts new file mode 100644 index 00000000..2d3fcec7 --- /dev/null +++ b/packages/perf-tools/src/runners/BaselineComparer.ts @@ -0,0 +1,111 @@ +import * as fs from 'node:fs'; + +export interface BaselineResult { + avgTickMs: number; + maxTickMs: number; + p95TickMs: number; + p99TickMs: number; + ticksOverBudgetPct: number; + avgMemoryMb: number; + avgFps?: number; + operations: Record; +} + +export interface ComparisonEntry { + metric: string; + baseline: number; + current: number; + changePct: number; + status: 'pass' | 'warning' | 'fail'; +} + +export interface ComparisonResult { + scenarioName: string; + entries: ComparisonEntry[]; + overallStatus: 'pass' | 'warning' | 'fail'; + warningThresholdPct: number; + failThresholdPct: number; +} + +export interface BaselineComparerOptions { + warningThresholdPct?: number; + failThresholdPct?: number; +} + +export default class BaselineComparer { + private _warningPct: number; + private _failPct: number; + + constructor(options?: BaselineComparerOptions) { + this._warningPct = options?.warningThresholdPct ?? 5; + this._failPct = options?.failThresholdPct ?? 15; + } + + public compare(baseline: BaselineResult, current: BaselineResult, scenarioName: string = 'benchmark'): ComparisonResult { + const entries: ComparisonEntry[] = []; + + entries.push(this._compareMetric('avgTickMs', baseline.avgTickMs, current.avgTickMs)); + entries.push(this._compareMetric('maxTickMs', baseline.maxTickMs, current.maxTickMs)); + entries.push(this._compareMetric('p95TickMs', baseline.p95TickMs, current.p95TickMs)); + entries.push(this._compareMetric('p99TickMs', baseline.p99TickMs, current.p99TickMs)); + entries.push(this._compareMetric('ticksOverBudgetPct', baseline.ticksOverBudgetPct, current.ticksOverBudgetPct)); + entries.push(this._compareMetric('avgMemoryMb', baseline.avgMemoryMb, current.avgMemoryMb)); + + if (baseline.avgFps !== undefined && current.avgFps !== undefined) { + entries.push(this._compareMetric('avgFps', baseline.avgFps, current.avgFps, true)); + } + + const allBaselineOps = new Set([...Object.keys(baseline.operations), ...Object.keys(current.operations)]); + + for (const op of allBaselineOps) { + if (baseline.operations[op] && current.operations[op]) { + entries.push(this._compareMetric(`ops.${op}.avgMs`, baseline.operations[op].avgMs, current.operations[op].avgMs)); + entries.push(this._compareMetric(`ops.${op}.p95Ms`, baseline.operations[op].p95Ms, current.operations[op].p95Ms)); + } + } + + const overallStatus = entries.some(e => e.status === 'fail') + ? 'fail' + : entries.some(e => e.status === 'warning') + ? 'warning' + : 'pass'; + + return { + scenarioName, + entries, + overallStatus, + warningThresholdPct: this._warningPct, + failThresholdPct: this._failPct, + }; + } + + public static loadBaseline(filePath: string): BaselineResult { + const content = fs.readFileSync(filePath, 'utf-8'); + + return JSON.parse(content) as BaselineResult; + } + + public static saveBaseline(filePath: string, baseline: BaselineResult): void { + fs.writeFileSync(filePath, JSON.stringify(baseline, null, 2), 'utf-8'); + } + + private _compareMetric(name: string, baseline: number, current: number, lowerIsBetter: boolean = false): ComparisonEntry { + if (baseline === 0) { + return { metric: name, baseline, current, changePct: 0, status: 'pass' }; + } + + const changePct = lowerIsBetter + ? ((baseline - current) / baseline) * 100 + : ((current - baseline) / baseline) * 100; + + let status: 'pass' | 'warning' | 'fail' = 'pass'; + + if (changePct > this._failPct) { + status = 'fail'; + } else if (changePct > this._warningPct) { + status = 'warning'; + } + + return { metric: name, baseline, current, changePct, status }; + } +} diff --git a/packages/perf-tools/src/runners/BenchmarkRunner.ts b/packages/perf-tools/src/runners/BenchmarkRunner.ts new file mode 100644 index 00000000..dd7986a2 --- /dev/null +++ b/packages/perf-tools/src/runners/BenchmarkRunner.ts @@ -0,0 +1,252 @@ +import { spawn, type ChildProcess } from 'node:child_process'; +import MetricCollector, { type CollectedMetrics } from './MetricCollector.js'; +import HeadlessClient from './HeadlessClient.js'; +import { type Scenario, type ScenarioPhase, parseDuration } from './ScenarioLoader.js'; +import type { BaselineResult } from './BaselineComparer.js'; + +export interface BenchmarkRunnerOptions { + serverCommand?: string; + serverCwd?: string; + clientUrl?: string; + headless?: boolean; + verbose?: boolean; +} + +export interface BenchmarkResult { + scenario: Scenario; + metrics: CollectedMetrics; + baseline: BaselineResult; + durationMs: number; + phaseResults: PhaseResult[]; +} + +export interface PhaseResult { + name: string; + durationMs: number; + collected: boolean; +} + +export default class BenchmarkRunner { + private _options: Required; + private _collector: MetricCollector; + private _serverProcess: ChildProcess | null = null; + private _clients: HeadlessClient[] = []; + private _log: (msg: string) => void; + + constructor(options?: BenchmarkRunnerOptions) { + this._options = { + serverCommand: 'npm run dev', + serverCwd: '.', + clientUrl: 'http://localhost:8080', + headless: true, + verbose: false, + ...options, + }; + this._collector = new MetricCollector(); + this._log = this._options.verbose ? console.log : () => {}; + } + + public async run(scenario: Scenario): Promise { + const startTime = Date.now(); + const phaseResults: PhaseResult[] = []; + + this._log(`[bench] Starting scenario: ${scenario.name}`); + + try { + if (scenario.serverScript) { + await this._startServer(scenario.serverScript); + } + + if (scenario.clients && scenario.clients > 0) { + await this._launchClients(scenario.clients); + } + + if (scenario.warmupMs) { + this._log(`[bench] Warming up for ${scenario.warmupMs}ms`); + await this._wait(scenario.warmupMs); + } + + for (const phase of scenario.phases) { + const phaseResult = await this._runPhase(phase); + + phaseResults.push(phaseResult); + } + } finally { + await this._cleanup(); + } + + const metrics = this._collector.stopCollecting(); + const baseline = this._buildBaseline(metrics); + + return { + scenario, + metrics, + baseline, + durationMs: Date.now() - startTime, + phaseResults, + }; + } + + private async _runPhase(phase: ScenarioPhase): Promise { + const startTime = Date.now(); + + this._log(`[bench] Phase: ${phase.name}`); + + if (phase.collect) { + this._collector.startCollecting(); + } + + if (phase.actions) { + for (const action of phase.actions) { + this._log(`[bench] Action: ${action.type}`); + + switch (action.type) { + case 'wait': + if (action.durationMs) { + await this._wait(action.durationMs); + } + break; + case 'spawn_bots': + case 'despawn_bots': + case 'spawn_entities': + case 'load_map': + case 'custom': + this._log(`[bench] Action ${action.type} - would execute via server API`); + break; + } + } + } + + if (phase.duration) { + const durationMs = parseDuration(phase.duration); + + this._log(`[bench] Waiting ${durationMs}ms`); + await this._collectDuring(durationMs); + } + + return { + name: phase.name, + durationMs: Date.now() - startTime, + collected: phase.collect ?? false, + }; + } + + private async _collectDuring(durationMs: number): Promise { + const intervalMs = 1000; + const intervals = Math.ceil(durationMs / intervalMs); + + for (let i = 0; i < intervals; i++) { + const remaining = Math.min(intervalMs, durationMs - i * intervalMs); + + await this._wait(remaining); + + for (const client of this._clients) { + const snapshot = await client.collectClientMetrics(); + + if (snapshot) { + this._collector.addClientSnapshot(snapshot); + } + } + } + } + + private async _startServer(scriptPath: string): Promise { + this._log(`[bench] Starting server: ${scriptPath}`); + + const [cmd, ...args] = this._options.serverCommand.split(' '); + + this._serverProcess = spawn(cmd, args, { + cwd: this._options.serverCwd, + stdio: this._options.verbose ? 'inherit' : 'pipe', + env: { ...process.env, PERF_SCRIPT: scriptPath }, + }); + + await this._wait(3000); + } + + private async _launchClients(count: number): Promise { + this._log(`[bench] Launching ${count} headless client(s)`); + + for (let i = 0; i < count; i++) { + const client = new HeadlessClient({ + url: this._options.clientUrl, + headless: this._options.headless, + }); + + await client.launch(); + await client.navigate(); + this._clients.push(client); + } + } + + private async _cleanup(): Promise { + for (const client of this._clients) { + await client.close(); + } + + this._clients = []; + + if (this._serverProcess) { + this._serverProcess.kill('SIGTERM'); + this._serverProcess = null; + } + } + + private _buildBaseline(metrics: CollectedMetrics): BaselineResult { + const snapshots = metrics.serverSnapshots; + + if (snapshots.length === 0) { + return { + avgTickMs: 0, + maxTickMs: 0, + p95TickMs: 0, + p99TickMs: 0, + ticksOverBudgetPct: 0, + avgMemoryMb: 0, + operations: {}, + }; + } + + const avgTickMs = snapshots.reduce((s, v) => s + v.avgTickMs, 0) / snapshots.length; + const maxTickMs = Math.max(...snapshots.map(s => s.maxTickMs)); + const p95TickMs = snapshots.reduce((s, v) => s + v.p95TickMs, 0) / snapshots.length; + const p99TickMs = snapshots.reduce((s, v) => s + v.p99TickMs, 0) / snapshots.length; + const totalTicks = snapshots.reduce((s, v) => s + v.totalTicks, 0); + const overBudget = snapshots.reduce((s, v) => s + v.ticksOverBudget, 0); + const avgMemoryMb = snapshots.reduce((s, v) => s + v.memory.heapUsedMb, 0) / snapshots.length; + + const operations: Record = {}; + const opNames = new Set(snapshots.flatMap(s => Object.keys(s.operations))); + + for (const name of opNames) { + const opSnapshots = snapshots.filter(s => s.operations[name]); + + if (opSnapshots.length > 0) { + operations[name] = { + avgMs: opSnapshots.reduce((s, v) => s + v.operations[name].avgMs, 0) / opSnapshots.length, + p95Ms: opSnapshots.reduce((s, v) => s + v.operations[name].p95Ms, 0) / opSnapshots.length, + }; + } + } + + const clientSnapshots = metrics.clientSnapshots; + const avgFps = clientSnapshots.length > 0 + ? clientSnapshots.reduce((s, v) => s + v.fps, 0) / clientSnapshots.length + : undefined; + + return { + avgTickMs, + maxTickMs, + p95TickMs, + p99TickMs, + ticksOverBudgetPct: totalTicks > 0 ? (overBudget / totalTicks) * 100 : 0, + avgMemoryMb, + avgFps, + operations, + }; + } + + private _wait(ms: number): Promise { + return new Promise(resolve => setTimeout(resolve, ms)); + } +} diff --git a/packages/perf-tools/src/runners/HeadlessClient.ts b/packages/perf-tools/src/runners/HeadlessClient.ts new file mode 100644 index 00000000..cc1f9fa3 --- /dev/null +++ b/packages/perf-tools/src/runners/HeadlessClient.ts @@ -0,0 +1,157 @@ +import type { ClientSnapshot } from './MetricCollector.js'; + +export interface HeadlessClientOptions { + url: string; + headless?: boolean; + width?: number; + height?: number; + deviceScaleFactor?: number; + collectPerformance?: boolean; +} + +export default class HeadlessClient { + private _browser: unknown = null; + private _page: unknown = null; + private _options: HeadlessClientOptions; + private _performanceEntries: ClientSnapshot[] = []; + private _connected: boolean = false; + + constructor(options: HeadlessClientOptions) { + this._options = { + headless: true, + width: 1280, + height: 720, + deviceScaleFactor: 1, + collectPerformance: true, + ...options, + }; + } + + public async launch(): Promise { + let puppeteer: any; + + try { + puppeteer = await import('puppeteer'); + } catch { + throw new Error( + 'puppeteer is required for headless client. Install it: npm install puppeteer', + ); + } + + this._browser = await puppeteer.default.launch({ + headless: this._options.headless ? 'new' : false, + args: [ + '--no-sandbox', + '--disable-setuid-sandbox', + '--disable-gpu', + `--window-size=${this._options.width},${this._options.height}`, + ], + }); + + const browser = this._browser as any; + + this._page = await browser.newPage(); + + const page = this._page as any; + + await page.setViewport({ + width: this._options.width!, + height: this._options.height!, + deviceScaleFactor: this._options.deviceScaleFactor, + }); + + if (this._options.collectPerformance) { + const cdp = await page.createCDPSession(); + + await cdp.send('Performance.enable'); + } + } + + public async navigate(url?: string): Promise { + const page = this._page as any; + + if (!page) throw new Error('Client not launched. Call launch() first.'); + + const target = url ?? this._options.url; + + await page.goto(target, { waitUntil: 'networkidle2', timeout: 30000 }); + this._connected = true; + } + + public async collectClientMetrics(): Promise { + const page = this._page as any; + + if (!page || !this._connected) return null; + + try { + const metrics = await page.evaluate(() => { + const perf = (window as any).__HYTOPIA_PERF__; + + if (!perf) return null; + + return { + fps: perf.fps ?? 0, + frameTimeMs: perf.frameTimeMs ?? 0, + drawCalls: perf.drawCalls ?? 0, + triangles: perf.triangles ?? 0, + textureMemoryMb: perf.textureMemoryMb ?? 0, + }; + }); + + if (!metrics) return null; + + const snapshot: ClientSnapshot = { + timestamp: Date.now(), + ...metrics, + }; + + this._performanceEntries.push(snapshot); + + return snapshot; + } catch { + return null; + } + } + + public async captureTrace(durationMs: number): Promise { + const page = this._page as any; + + if (!page) return null; + + try { + await page.tracing.start({ categories: ['devtools.timeline', 'v8.execute', 'blink.user_timing'] }); + + await new Promise(resolve => setTimeout(resolve, durationMs)); + + const buffer = await page.tracing.stop(); + + return JSON.parse(buffer.toString()); + } catch { + return null; + } + } + + public async close(): Promise { + try { + const browser = this._browser as any; + + if (browser) { + await browser.close(); + } + } catch { + // best-effort cleanup + } finally { + this._browser = null; + this._page = null; + this._connected = false; + } + } + + public get performanceEntries(): ClientSnapshot[] { + return this._performanceEntries; + } + + public get isConnected(): boolean { + return this._connected; + } +} diff --git a/packages/perf-tools/src/runners/MetricCollector.ts b/packages/perf-tools/src/runners/MetricCollector.ts new file mode 100644 index 00000000..f338d4db --- /dev/null +++ b/packages/perf-tools/src/runners/MetricCollector.ts @@ -0,0 +1,115 @@ +export interface CollectedMetrics { + serverSnapshots: ServerSnapshot[]; + clientSnapshots: ClientSnapshot[]; + tickReports: TickReportEntry[]; + spikes: SpikeEntry[]; + startTime: number; + endTime: number; +} + +export interface ServerSnapshot { + timestamp: number; + avgTickMs: number; + maxTickMs: number; + p95TickMs: number; + p99TickMs: number; + ticksOverBudget: number; + totalTicks: number; + budgetMs: number; + operations: Record; + memory: { heapUsedMb: number; heapTotalMb: number; rssMb: number }; +} + +export interface OperationSnapshot { + count: number; + avgMs: number; + p95Ms: number; + p99Ms: number; + maxMs: number; +} + +export interface ClientSnapshot { + timestamp: number; + fps: number; + frameTimeMs: number; + drawCalls: number; + triangles: number; + textureMemoryMb: number; +} + +export interface TickReportEntry { + timestamp: number; + tick: number; + durationMs: number; + budgetPercent: number; + phases: Record; + entityCount: number; + playerCount: number; +} + +export interface SpikeEntry { + timestamp: number; + tick: number; + durationMs: number; + phases: Record; + entityCount: number; +} + +export default class MetricCollector { + private _serverSnapshots: ServerSnapshot[] = []; + private _clientSnapshots: ClientSnapshot[] = []; + private _tickReports: TickReportEntry[] = []; + private _spikes: SpikeEntry[] = []; + private _startTime: number = 0; + private _collecting: boolean = false; + + public startCollecting(): void { + this._collecting = true; + this._startTime = Date.now(); + this._serverSnapshots = []; + this._clientSnapshots = []; + this._tickReports = []; + this._spikes = []; + } + + public stopCollecting(): CollectedMetrics { + this._collecting = false; + + return { + serverSnapshots: this._serverSnapshots, + clientSnapshots: this._clientSnapshots, + tickReports: this._tickReports, + spikes: this._spikes, + startTime: this._startTime, + endTime: Date.now(), + }; + } + + public get isCollecting(): boolean { + return this._collecting; + } + + public addServerSnapshot(snapshot: ServerSnapshot): void { + if (!this._collecting) return; + + this._serverSnapshots.push(snapshot); + } + + public addClientSnapshot(snapshot: ClientSnapshot): void { + if (!this._collecting) return; + + this._clientSnapshots.push(snapshot); + } + + public addTickReport(report: TickReportEntry): void { + if (!this._collecting) return; + + this._tickReports.push(report); + } + + public addSpike(spike: SpikeEntry): void { + if (!this._collecting) return; + + this._spikes.push(spike); + } +} diff --git a/packages/perf-tools/src/runners/ScenarioLoader.ts b/packages/perf-tools/src/runners/ScenarioLoader.ts new file mode 100644 index 00000000..360a9dc4 --- /dev/null +++ b/packages/perf-tools/src/runners/ScenarioLoader.ts @@ -0,0 +1,113 @@ +import * as fs from 'node:fs'; +import * as yaml from 'js-yaml'; + +export interface ScenarioAction { + type: 'spawn_bots' | 'despawn_bots' | 'spawn_entities' | 'load_map' | 'wait' | 'custom'; + count?: number; + behavior?: string; + durationMs?: number; + mapPath?: string; + script?: string; +} + +export interface ScenarioPhase { + name: string; + duration?: string; + actions?: ScenarioAction[]; + collect?: boolean; +} + +export interface ScenarioThresholds { + tick_duration_ms?: { avg?: number; p95?: number; p99?: number; max?: number }; + memory_mb?: { max?: number }; + fps?: { min?: number; avg?: number }; + network?: { maxBytesPerSecond?: number }; +} + +export interface Scenario { + name: string; + description?: string; + serverScript?: string; + phases: ScenarioPhase[]; + thresholds?: ScenarioThresholds; + clients?: number; + warmupMs?: number; +} + +export function parseDuration(duration: string): number { + const match = duration.match(/^(\d+(?:\.\d+)?)\s*(ms|s|m)$/); + + if (!match) throw new Error(`Invalid duration: ${duration}`); + + const value = parseFloat(match[1]); + const unit = match[2]; + + switch (unit) { + case 'ms': return value; + case 's': return value * 1000; + case 'm': return value * 60000; + default: return value; + } +} + +export function loadScenario(filePath: string): Scenario { + const content = fs.readFileSync(filePath, 'utf-8'); + const ext = filePath.split('.').pop()?.toLowerCase(); + + let raw: unknown; + + if (ext === 'yaml' || ext === 'yml') { + raw = yaml.load(content); + } else if (ext === 'json') { + raw = JSON.parse(content); + } else { + throw new Error(`Unsupported scenario format: ${ext}. Use .yaml, .yml, or .json`); + } + + return validateScenario(raw); +} + +function validateScenario(raw: unknown): Scenario { + if (!raw || typeof raw !== 'object') { + throw new Error('Scenario must be an object'); + } + + const obj = raw as Record; + + if (!obj.name || typeof obj.name !== 'string') { + throw new Error('Scenario must have a "name" string field'); + } + + if (!Array.isArray(obj.phases) || obj.phases.length === 0) { + throw new Error('Scenario must have a non-empty "phases" array'); + } + + return { + name: obj.name, + description: typeof obj.description === 'string' ? obj.description : undefined, + serverScript: typeof obj.serverScript === 'string' ? obj.serverScript : undefined, + phases: obj.phases.map(validatePhase), + thresholds: obj.thresholds as ScenarioThresholds | undefined, + clients: typeof obj.clients === 'number' ? obj.clients : undefined, + warmupMs: typeof obj.warmupMs === 'number' ? obj.warmupMs : undefined, + }; +} + +function validatePhase(raw: unknown, index: number): ScenarioPhase { + if (!raw || typeof raw !== 'object') { + throw new Error(`Phase ${index} must be an object`); + } + + const obj = raw as Record; + + if (!obj.name || typeof obj.name !== 'string') { + throw new Error(`Phase ${index} must have a "name" string`); + } + + return { + name: obj.name, + duration: typeof obj.duration === 'string' ? obj.duration : undefined, + actions: Array.isArray(obj.actions) ? obj.actions as ScenarioAction[] : undefined, + collect: typeof obj.collect === 'boolean' ? obj.collect : undefined, + }; +} diff --git a/packages/perf-tools/tsconfig.json b/packages/perf-tools/tsconfig.json new file mode 100644 index 00000000..2cb00c31 --- /dev/null +++ b/packages/perf-tools/tsconfig.json @@ -0,0 +1,17 @@ +{ + "compilerOptions": { + "target": "ES2022", + "module": "ES2022", + "moduleResolution": "bundler", + "outDir": "dist", + "rootDir": "src", + "declaration": true, + "strict": true, + "esModuleInterop": true, + "skipLibCheck": true, + "forceConsistentCasingInFileNames": true, + "resolveJsonModule": true + }, + "include": ["src/**/*"], + "exclude": ["node_modules", "dist"] +} diff --git a/sdk/docs/server.botbehavior.md b/sdk/docs/server.botbehavior.md new file mode 100644 index 00000000..f2bcda52 --- /dev/null +++ b/sdk/docs/server.botbehavior.md @@ -0,0 +1,77 @@ + + +[Home](./index.md) > [server](./server.md) > [BotBehavior](./server.botbehavior.md) + +## BotBehavior interface + +**Signature:** + +```typescript +export interface BotBehavior +``` + +## Properties + + + +
+ +Property + + + + +Modifiers + + + + +Type + + + + +Description + + +
+ +[name](./server.botbehavior.name.md) + + + + + + + +string + + + + + +
+ +## Methods + + + +
+ +Method + + + + +Description + + +
+ +[tick(bot, world, deltaTimeMs)](./server.botbehavior.tick.md) + + + + + +
diff --git a/sdk/docs/server.botbehavior.name.md b/sdk/docs/server.botbehavior.name.md new file mode 100644 index 00000000..03d4535c --- /dev/null +++ b/sdk/docs/server.botbehavior.name.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [BotBehavior](./server.botbehavior.md) > [name](./server.botbehavior.name.md) + +## BotBehavior.name property + +**Signature:** + +```typescript +name: string; +``` diff --git a/sdk/docs/server.botbehavior.tick.md b/sdk/docs/server.botbehavior.tick.md new file mode 100644 index 00000000..72a1e45a --- /dev/null +++ b/sdk/docs/server.botbehavior.tick.md @@ -0,0 +1,77 @@ + + +[Home](./index.md) > [server](./server.md) > [BotBehavior](./server.botbehavior.md) > [tick](./server.botbehavior.tick.md) + +## BotBehavior.tick() method + +**Signature:** + +```typescript +tick(bot: BotPlayer, world: World, deltaTimeMs: number): void; +``` + +## Parameters + + + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +bot + + + + +[BotPlayer](./server.botplayer.md) + + + + + +
+ +world + + + + +[World](./server.world.md) + + + + + +
+ +deltaTimeMs + + + + +number + + + + + +
+**Returns:** + +void + diff --git a/sdk/docs/server.botmanager.botcount.md b/sdk/docs/server.botmanager.botcount.md new file mode 100644 index 00000000..bbc902ed --- /dev/null +++ b/sdk/docs/server.botmanager.botcount.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [BotManager](./server.botmanager.md) > [botCount](./server.botmanager.botcount.md) + +## BotManager.botCount property + +**Signature:** + +```typescript +get botCount(): number; +``` diff --git a/sdk/docs/server.botmanager.despawnall.md b/sdk/docs/server.botmanager.despawnall.md new file mode 100644 index 00000000..42bcc3b3 --- /dev/null +++ b/sdk/docs/server.botmanager.despawnall.md @@ -0,0 +1,15 @@ + + +[Home](./index.md) > [server](./server.md) > [BotManager](./server.botmanager.md) > [despawnAll](./server.botmanager.despawnall.md) + +## BotManager.despawnAll() method + +**Signature:** + +```typescript +despawnAll(): void; +``` +**Returns:** + +void + diff --git a/sdk/docs/server.botmanager.despawnbot.md b/sdk/docs/server.botmanager.despawnbot.md new file mode 100644 index 00000000..72259ed9 --- /dev/null +++ b/sdk/docs/server.botmanager.despawnbot.md @@ -0,0 +1,49 @@ + + +[Home](./index.md) > [server](./server.md) > [BotManager](./server.botmanager.md) > [despawnBot](./server.botmanager.despawnbot.md) + +## BotManager.despawnBot() method + +**Signature:** + +```typescript +despawnBot(id: number): void; +``` + +## Parameters + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +id + + + + +number + + + + + +
+**Returns:** + +void + diff --git a/sdk/docs/server.botmanager.getallbots.md b/sdk/docs/server.botmanager.getallbots.md new file mode 100644 index 00000000..9e3f4c13 --- /dev/null +++ b/sdk/docs/server.botmanager.getallbots.md @@ -0,0 +1,15 @@ + + +[Home](./index.md) > [server](./server.md) > [BotManager](./server.botmanager.md) > [getAllBots](./server.botmanager.getallbots.md) + +## BotManager.getAllBots() method + +**Signature:** + +```typescript +getAllBots(): BotPlayer[]; +``` +**Returns:** + +[BotPlayer](./server.botplayer.md)\[\] + diff --git a/sdk/docs/server.botmanager.getbot.md b/sdk/docs/server.botmanager.getbot.md new file mode 100644 index 00000000..f23c33aa --- /dev/null +++ b/sdk/docs/server.botmanager.getbot.md @@ -0,0 +1,49 @@ + + +[Home](./index.md) > [server](./server.md) > [BotManager](./server.botmanager.md) > [getBot](./server.botmanager.getbot.md) + +## BotManager.getBot() method + +**Signature:** + +```typescript +getBot(id: number): BotPlayer | undefined; +``` + +## Parameters + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +id + + + + +number + + + + + +
+**Returns:** + +[BotPlayer](./server.botplayer.md) \| undefined + diff --git a/sdk/docs/server.botmanager.instance.md b/sdk/docs/server.botmanager.instance.md new file mode 100644 index 00000000..6e9389a5 --- /dev/null +++ b/sdk/docs/server.botmanager.instance.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [BotManager](./server.botmanager.md) > [instance](./server.botmanager.instance.md) + +## BotManager.instance property + +**Signature:** + +```typescript +static get instance(): BotManager; +``` diff --git a/sdk/docs/server.botmanager.md b/sdk/docs/server.botmanager.md new file mode 100644 index 00000000..dca97d37 --- /dev/null +++ b/sdk/docs/server.botmanager.md @@ -0,0 +1,168 @@ + + +[Home](./index.md) > [server](./server.md) > [BotManager](./server.botmanager.md) + +## BotManager class + +**Signature:** + +```typescript +export default class BotManager +``` + +## Properties + + + + +
+ +Property + + + + +Modifiers + + + + +Type + + + + +Description + + +
+ +[botCount](./server.botmanager.botcount.md) + + + + +`readonly` + + + + +number + + + + + +
+ +[instance](./server.botmanager.instance.md) + + + + +`static` + +`readonly` + + + + +[BotManager](./server.botmanager.md) + + + + + +
+ +## Methods + + + + + + + + +
+ +Method + + + + +Modifiers + + + + +Description + + +
+ +[despawnAll()](./server.botmanager.despawnall.md) + + + + + + + + +
+ +[despawnBot(id)](./server.botmanager.despawnbot.md) + + + + + + + + +
+ +[getAllBots()](./server.botmanager.getallbots.md) + + + + + + + + +
+ +[getBot(id)](./server.botmanager.getbot.md) + + + + + + + + +
+ +[spawnBot(world, options)](./server.botmanager.spawnbot.md) + + + + + + + + +
+ +[spawnBots(world, count, options)](./server.botmanager.spawnbots.md) + + + + + + + + +
diff --git a/sdk/docs/server.botmanager.spawnbot.md b/sdk/docs/server.botmanager.spawnbot.md new file mode 100644 index 00000000..4246dfc6 --- /dev/null +++ b/sdk/docs/server.botmanager.spawnbot.md @@ -0,0 +1,65 @@ + + +[Home](./index.md) > [server](./server.md) > [BotManager](./server.botmanager.md) > [spawnBot](./server.botmanager.spawnbot.md) + +## BotManager.spawnBot() method + +**Signature:** + +```typescript +spawnBot(world: World, options?: BotPlayerOptions): BotPlayer; +``` + +## Parameters + + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +world + + + + +[World](./server.world.md) + + + + + +
+ +options + + + + +[BotPlayerOptions](./server.botplayeroptions.md) + + + + +_(Optional)_ + + +
+**Returns:** + +[BotPlayer](./server.botplayer.md) + diff --git a/sdk/docs/server.botmanager.spawnbots.md b/sdk/docs/server.botmanager.spawnbots.md new file mode 100644 index 00000000..6305723d --- /dev/null +++ b/sdk/docs/server.botmanager.spawnbots.md @@ -0,0 +1,79 @@ + + +[Home](./index.md) > [server](./server.md) > [BotManager](./server.botmanager.md) > [spawnBots](./server.botmanager.spawnbots.md) + +## BotManager.spawnBots() method + +**Signature:** + +```typescript +spawnBots(world: World, count: number, options?: BotPlayerOptions): BotPlayer[]; +``` + +## Parameters + + + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +world + + + + +[World](./server.world.md) + + + + + +
+ +count + + + + +number + + + + + +
+ +options + + + + +[BotPlayerOptions](./server.botplayeroptions.md) + + + + +_(Optional)_ + + +
+**Returns:** + +[BotPlayer](./server.botplayer.md)\[\] + diff --git a/sdk/docs/server.botplayer._constructor_.md b/sdk/docs/server.botplayer._constructor_.md new file mode 100644 index 00000000..3c46e121 --- /dev/null +++ b/sdk/docs/server.botplayer._constructor_.md @@ -0,0 +1,63 @@ + + +[Home](./index.md) > [server](./server.md) > [BotPlayer](./server.botplayer.md) > [(constructor)](./server.botplayer._constructor_.md) + +## BotPlayer.(constructor) + +Constructs a new instance of the `BotPlayer` class + +**Signature:** + +```typescript +constructor(world: World, options?: BotPlayerOptions); +``` + +## Parameters + + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +world + + + + +[World](./server.world.md) + + + + + +
+ +options + + + + +[BotPlayerOptions](./server.botplayeroptions.md) + + + + +_(Optional)_ + + +
diff --git a/sdk/docs/server.botplayer.controller.md b/sdk/docs/server.botplayer.controller.md new file mode 100644 index 00000000..960d79f9 --- /dev/null +++ b/sdk/docs/server.botplayer.controller.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [BotPlayer](./server.botplayer.md) > [controller](./server.botplayer.controller.md) + +## BotPlayer.controller property + +**Signature:** + +```typescript +get controller(): SimpleEntityController; +``` diff --git a/sdk/docs/server.botplayer.despawn.md b/sdk/docs/server.botplayer.despawn.md new file mode 100644 index 00000000..c8bb024e --- /dev/null +++ b/sdk/docs/server.botplayer.despawn.md @@ -0,0 +1,15 @@ + + +[Home](./index.md) > [server](./server.md) > [BotPlayer](./server.botplayer.md) > [despawn](./server.botplayer.despawn.md) + +## BotPlayer.despawn() method + +**Signature:** + +```typescript +despawn(): void; +``` +**Returns:** + +void + diff --git a/sdk/docs/server.botplayer.entity.md b/sdk/docs/server.botplayer.entity.md new file mode 100644 index 00000000..2d9037f9 --- /dev/null +++ b/sdk/docs/server.botplayer.entity.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [BotPlayer](./server.botplayer.md) > [entity](./server.botplayer.entity.md) + +## BotPlayer.entity property + +**Signature:** + +```typescript +readonly entity: Entity; +``` diff --git a/sdk/docs/server.botplayer.id.md b/sdk/docs/server.botplayer.id.md new file mode 100644 index 00000000..4b7b32c3 --- /dev/null +++ b/sdk/docs/server.botplayer.id.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [BotPlayer](./server.botplayer.md) > [id](./server.botplayer.id.md) + +## BotPlayer.id property + +**Signature:** + +```typescript +readonly id: number; +``` diff --git a/sdk/docs/server.botplayer.isspawned.md b/sdk/docs/server.botplayer.isspawned.md new file mode 100644 index 00000000..4e679a4c --- /dev/null +++ b/sdk/docs/server.botplayer.isspawned.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [BotPlayer](./server.botplayer.md) > [isSpawned](./server.botplayer.isspawned.md) + +## BotPlayer.isSpawned property + +**Signature:** + +```typescript +get isSpawned(): boolean; +``` diff --git a/sdk/docs/server.botplayer.md b/sdk/docs/server.botplayer.md new file mode 100644 index 00000000..54b6c6b3 --- /dev/null +++ b/sdk/docs/server.botplayer.md @@ -0,0 +1,252 @@ + + +[Home](./index.md) > [server](./server.md) > [BotPlayer](./server.botplayer.md) + +## BotPlayer class + +**Signature:** + +```typescript +export default class BotPlayer +``` + +## Constructors + + + +
+ +Constructor + + + + +Modifiers + + + + +Description + + +
+ +[(constructor)(world, options)](./server.botplayer._constructor_.md) + + + + + + + +Constructs a new instance of the `BotPlayer` class + + +
+ +## Properties + + + + + + + + +
+ +Property + + + + +Modifiers + + + + +Type + + + + +Description + + +
+ +[controller](./server.botplayer.controller.md) + + + + +`readonly` + + + + +[SimpleEntityController](./server.simpleentitycontroller.md) + + + + + +
+ +[entity](./server.botplayer.entity.md) + + + + +`readonly` + + + + +[Entity](./server.entity.md) + + + + + +
+ +[id](./server.botplayer.id.md) + + + + +`readonly` + + + + +number + + + + + +
+ +[isSpawned](./server.botplayer.isspawned.md) + + + + +`readonly` + + + + +boolean + + + + + +
+ +[name](./server.botplayer.name.md) + + + + +`readonly` + + + + +string + + + + + +
+ +[world](./server.botplayer.world.md) + + + + +`readonly` + + + + +[World](./server.world.md) + + + + + +
+ +## Methods + + + + + + +
+ +Method + + + + +Modifiers + + + + +Description + + +
+ +[despawn()](./server.botplayer.despawn.md) + + + + + + + + +
+ +[setBehavior(behavior)](./server.botplayer.setbehavior.md) + + + + + + + + +
+ +[spawn(position)](./server.botplayer.spawn.md) + + + + + + + + +
+ +[teleport(position)](./server.botplayer.teleport.md) + + + + + + + + +
diff --git a/sdk/docs/server.botplayer.name.md b/sdk/docs/server.botplayer.name.md new file mode 100644 index 00000000..808764ad --- /dev/null +++ b/sdk/docs/server.botplayer.name.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [BotPlayer](./server.botplayer.md) > [name](./server.botplayer.name.md) + +## BotPlayer.name property + +**Signature:** + +```typescript +readonly name: string; +``` diff --git a/sdk/docs/server.botplayer.setbehavior.md b/sdk/docs/server.botplayer.setbehavior.md new file mode 100644 index 00000000..1353d5a9 --- /dev/null +++ b/sdk/docs/server.botplayer.setbehavior.md @@ -0,0 +1,49 @@ + + +[Home](./index.md) > [server](./server.md) > [BotPlayer](./server.botplayer.md) > [setBehavior](./server.botplayer.setbehavior.md) + +## BotPlayer.setBehavior() method + +**Signature:** + +```typescript +setBehavior(behavior: BotBehavior): void; +``` + +## Parameters + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +behavior + + + + +[BotBehavior](./server.botbehavior.md) + + + + + +
+**Returns:** + +void + diff --git a/sdk/docs/server.botplayer.spawn.md b/sdk/docs/server.botplayer.spawn.md new file mode 100644 index 00000000..b2a67d4e --- /dev/null +++ b/sdk/docs/server.botplayer.spawn.md @@ -0,0 +1,51 @@ + + +[Home](./index.md) > [server](./server.md) > [BotPlayer](./server.botplayer.md) > [spawn](./server.botplayer.spawn.md) + +## BotPlayer.spawn() method + +**Signature:** + +```typescript +spawn(position?: Vector3Like): void; +``` + +## Parameters + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +position + + + + +[Vector3Like](./server.vector3like.md) + + + + +_(Optional)_ + + +
+**Returns:** + +void + diff --git a/sdk/docs/server.botplayer.teleport.md b/sdk/docs/server.botplayer.teleport.md new file mode 100644 index 00000000..8c419296 --- /dev/null +++ b/sdk/docs/server.botplayer.teleport.md @@ -0,0 +1,49 @@ + + +[Home](./index.md) > [server](./server.md) > [BotPlayer](./server.botplayer.md) > [teleport](./server.botplayer.teleport.md) + +## BotPlayer.teleport() method + +**Signature:** + +```typescript +teleport(position: Vector3Like): void; +``` + +## Parameters + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +position + + + + +[Vector3Like](./server.vector3like.md) + + + + + +
+**Returns:** + +void + diff --git a/sdk/docs/server.botplayer.world.md b/sdk/docs/server.botplayer.world.md new file mode 100644 index 00000000..0815debd --- /dev/null +++ b/sdk/docs/server.botplayer.world.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [BotPlayer](./server.botplayer.md) > [world](./server.botplayer.world.md) + +## BotPlayer.world property + +**Signature:** + +```typescript +get world(): World; +``` diff --git a/sdk/docs/server.botplayeroptions.behavior.md b/sdk/docs/server.botplayeroptions.behavior.md new file mode 100644 index 00000000..0ec00a7c --- /dev/null +++ b/sdk/docs/server.botplayeroptions.behavior.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [BotPlayerOptions](./server.botplayeroptions.md) > [behavior](./server.botplayeroptions.behavior.md) + +## BotPlayerOptions.behavior property + +**Signature:** + +```typescript +behavior?: BotBehavior; +``` diff --git a/sdk/docs/server.botplayeroptions.md b/sdk/docs/server.botplayeroptions.md new file mode 100644 index 00000000..5b3d9c35 --- /dev/null +++ b/sdk/docs/server.botplayeroptions.md @@ -0,0 +1,150 @@ + + +[Home](./index.md) > [server](./server.md) > [BotPlayerOptions](./server.botplayeroptions.md) + +## BotPlayerOptions interface + +**Signature:** + +```typescript +export interface BotPlayerOptions +``` + +## Properties + + + + + + + + +
+ +Property + + + + +Modifiers + + + + +Type + + + + +Description + + +
+ +[behavior?](./server.botplayeroptions.behavior.md) + + + + + + + +[BotBehavior](./server.botbehavior.md) + + + + +_(Optional)_ + + +
+ +[modelScale?](./server.botplayeroptions.modelscale.md) + + + + + + + +number + + + + +_(Optional)_ + + +
+ +[modelUri?](./server.botplayeroptions.modeluri.md) + + + + + + + +string + + + + +_(Optional)_ + + +
+ +[name?](./server.botplayeroptions.name.md) + + + + + + + +string + + + + +_(Optional)_ + + +
+ +[rigidBodyType?](./server.botplayeroptions.rigidbodytype.md) + + + + + + + +[RigidBodyType](./server.rigidbodytype.md) + + + + +_(Optional)_ + + +
+ +[spawnPosition?](./server.botplayeroptions.spawnposition.md) + + + + + + + +[Vector3Like](./server.vector3like.md) + + + + +_(Optional)_ + + +
diff --git a/sdk/docs/server.botplayeroptions.modelscale.md b/sdk/docs/server.botplayeroptions.modelscale.md new file mode 100644 index 00000000..6bd69bf0 --- /dev/null +++ b/sdk/docs/server.botplayeroptions.modelscale.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [BotPlayerOptions](./server.botplayeroptions.md) > [modelScale](./server.botplayeroptions.modelscale.md) + +## BotPlayerOptions.modelScale property + +**Signature:** + +```typescript +modelScale?: number; +``` diff --git a/sdk/docs/server.botplayeroptions.modeluri.md b/sdk/docs/server.botplayeroptions.modeluri.md new file mode 100644 index 00000000..d306c56c --- /dev/null +++ b/sdk/docs/server.botplayeroptions.modeluri.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [BotPlayerOptions](./server.botplayeroptions.md) > [modelUri](./server.botplayeroptions.modeluri.md) + +## BotPlayerOptions.modelUri property + +**Signature:** + +```typescript +modelUri?: string; +``` diff --git a/sdk/docs/server.botplayeroptions.name.md b/sdk/docs/server.botplayeroptions.name.md new file mode 100644 index 00000000..0149b34a --- /dev/null +++ b/sdk/docs/server.botplayeroptions.name.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [BotPlayerOptions](./server.botplayeroptions.md) > [name](./server.botplayeroptions.name.md) + +## BotPlayerOptions.name property + +**Signature:** + +```typescript +name?: string; +``` diff --git a/sdk/docs/server.botplayeroptions.rigidbodytype.md b/sdk/docs/server.botplayeroptions.rigidbodytype.md new file mode 100644 index 00000000..ed8c6a92 --- /dev/null +++ b/sdk/docs/server.botplayeroptions.rigidbodytype.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [BotPlayerOptions](./server.botplayeroptions.md) > [rigidBodyType](./server.botplayeroptions.rigidbodytype.md) + +## BotPlayerOptions.rigidBodyType property + +**Signature:** + +```typescript +rigidBodyType?: RigidBodyType; +``` diff --git a/sdk/docs/server.botplayeroptions.spawnposition.md b/sdk/docs/server.botplayeroptions.spawnposition.md new file mode 100644 index 00000000..17035cb7 --- /dev/null +++ b/sdk/docs/server.botplayeroptions.spawnposition.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [BotPlayerOptions](./server.botplayeroptions.md) > [spawnPosition](./server.botplayeroptions.spawnposition.md) + +## BotPlayerOptions.spawnPosition property + +**Signature:** + +```typescript +spawnPosition?: Vector3Like; +``` diff --git a/sdk/docs/server.chasebehavior._constructor_.md b/sdk/docs/server.chasebehavior._constructor_.md new file mode 100644 index 00000000..b86a1087 --- /dev/null +++ b/sdk/docs/server.chasebehavior._constructor_.md @@ -0,0 +1,49 @@ + + +[Home](./index.md) > [server](./server.md) > [ChaseBehavior](./server.chasebehavior.md) > [(constructor)](./server.chasebehavior._constructor_.md) + +## ChaseBehavior.(constructor) + +Constructs a new instance of the `ChaseBehavior` class + +**Signature:** + +```typescript +constructor(options?: ChaseBehaviorOptions); +``` + +## Parameters + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +options + + + + +[ChaseBehaviorOptions](./server.chasebehavioroptions.md) + + + + +_(Optional)_ + + +
diff --git a/sdk/docs/server.chasebehavior.md b/sdk/docs/server.chasebehavior.md new file mode 100644 index 00000000..1ffd6994 --- /dev/null +++ b/sdk/docs/server.chasebehavior.md @@ -0,0 +1,122 @@ + + +[Home](./index.md) > [server](./server.md) > [ChaseBehavior](./server.chasebehavior.md) + +## ChaseBehavior class + +**Signature:** + +```typescript +export default class ChaseBehavior implements BotBehavior +``` +**Implements:** [BotBehavior](./server.botbehavior.md) + +## Constructors + + + +
+ +Constructor + + + + +Modifiers + + + + +Description + + +
+ +[(constructor)(options)](./server.chasebehavior._constructor_.md) + + + + + + + +Constructs a new instance of the `ChaseBehavior` class + + +
+ +## Properties + + + +
+ +Property + + + + +Modifiers + + + + +Type + + + + +Description + + +
+ +[name](./server.chasebehavior.name.md) + + + + +`readonly` + + + + +(not declared) + + + + + +
+ +## Methods + + + +
+ +Method + + + + +Modifiers + + + + +Description + + +
+ +[tick(bot, world, deltaTimeMs)](./server.chasebehavior.tick.md) + + + + + + + + +
diff --git a/sdk/docs/server.chasebehavior.name.md b/sdk/docs/server.chasebehavior.name.md new file mode 100644 index 00000000..6862de69 --- /dev/null +++ b/sdk/docs/server.chasebehavior.name.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [ChaseBehavior](./server.chasebehavior.md) > [name](./server.chasebehavior.name.md) + +## ChaseBehavior.name property + +**Signature:** + +```typescript +readonly name = "chase"; +``` diff --git a/sdk/docs/server.chasebehavior.tick.md b/sdk/docs/server.chasebehavior.tick.md new file mode 100644 index 00000000..82dd17f8 --- /dev/null +++ b/sdk/docs/server.chasebehavior.tick.md @@ -0,0 +1,77 @@ + + +[Home](./index.md) > [server](./server.md) > [ChaseBehavior](./server.chasebehavior.md) > [tick](./server.chasebehavior.tick.md) + +## ChaseBehavior.tick() method + +**Signature:** + +```typescript +tick(bot: BotPlayer, world: World, deltaTimeMs: number): void; +``` + +## Parameters + + + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +bot + + + + +[BotPlayer](./server.botplayer.md) + + + + + +
+ +world + + + + +[World](./server.world.md) + + + + + +
+ +deltaTimeMs + + + + +number + + + + + +
+**Returns:** + +void + diff --git a/sdk/docs/server.chasebehavioroptions.chasespeed.md b/sdk/docs/server.chasebehavioroptions.chasespeed.md new file mode 100644 index 00000000..3f02f47b --- /dev/null +++ b/sdk/docs/server.chasebehavioroptions.chasespeed.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [ChaseBehaviorOptions](./server.chasebehavioroptions.md) > [chaseSpeed](./server.chasebehavioroptions.chasespeed.md) + +## ChaseBehaviorOptions.chaseSpeed property + +**Signature:** + +```typescript +chaseSpeed?: number; +``` diff --git a/sdk/docs/server.chasebehavioroptions.detectionradius.md b/sdk/docs/server.chasebehavioroptions.detectionradius.md new file mode 100644 index 00000000..0cf60357 --- /dev/null +++ b/sdk/docs/server.chasebehavioroptions.detectionradius.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [ChaseBehaviorOptions](./server.chasebehavioroptions.md) > [detectionRadius](./server.chasebehavioroptions.detectionradius.md) + +## ChaseBehaviorOptions.detectionRadius property + +**Signature:** + +```typescript +detectionRadius?: number; +``` diff --git a/sdk/docs/server.chasebehavioroptions.md b/sdk/docs/server.chasebehavioroptions.md new file mode 100644 index 00000000..49ce9abc --- /dev/null +++ b/sdk/docs/server.chasebehavioroptions.md @@ -0,0 +1,93 @@ + + +[Home](./index.md) > [server](./server.md) > [ChaseBehaviorOptions](./server.chasebehavioroptions.md) + +## ChaseBehaviorOptions interface + +**Signature:** + +```typescript +export interface ChaseBehaviorOptions +``` + +## Properties + + + + + +
+ +Property + + + + +Modifiers + + + + +Type + + + + +Description + + +
+ +[chaseSpeed?](./server.chasebehavioroptions.chasespeed.md) + + + + + + + +number + + + + +_(Optional)_ + + +
+ +[detectionRadius?](./server.chasebehavioroptions.detectionradius.md) + + + + + + + +number + + + + +_(Optional)_ + + +
+ +[updateIntervalMs?](./server.chasebehavioroptions.updateintervalms.md) + + + + + + + +number + + + + +_(Optional)_ + + +
diff --git a/sdk/docs/server.chasebehavioroptions.updateintervalms.md b/sdk/docs/server.chasebehavioroptions.updateintervalms.md new file mode 100644 index 00000000..4f810e56 --- /dev/null +++ b/sdk/docs/server.chasebehavioroptions.updateintervalms.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [ChaseBehaviorOptions](./server.chasebehavioroptions.md) > [updateIntervalMs](./server.chasebehavioroptions.updateintervalms.md) + +## ChaseBehaviorOptions.updateIntervalMs property + +**Signature:** + +```typescript +updateIntervalMs?: number; +``` diff --git a/sdk/docs/server.cpuprofiler.captureheapsnapshot.md b/sdk/docs/server.cpuprofiler.captureheapsnapshot.md new file mode 100644 index 00000000..d0480cbb --- /dev/null +++ b/sdk/docs/server.cpuprofiler.captureheapsnapshot.md @@ -0,0 +1,51 @@ + + +[Home](./index.md) > [server](./server.md) > [CpuProfiler](./server.cpuprofiler.md) > [captureHeapSnapshot](./server.cpuprofiler.captureheapsnapshot.md) + +## CpuProfiler.captureHeapSnapshot() method + +**Signature:** + +```typescript +static captureHeapSnapshot(outputPath?: string): Promise; +``` + +## Parameters + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +outputPath + + + + +string + + + + +_(Optional)_ + + +
+**Returns:** + +Promise<string> + diff --git a/sdk/docs/server.cpuprofiler.captureprofile.md b/sdk/docs/server.cpuprofiler.captureprofile.md new file mode 100644 index 00000000..f4e09ab7 --- /dev/null +++ b/sdk/docs/server.cpuprofiler.captureprofile.md @@ -0,0 +1,65 @@ + + +[Home](./index.md) > [server](./server.md) > [CpuProfiler](./server.cpuprofiler.md) > [captureProfile](./server.cpuprofiler.captureprofile.md) + +## CpuProfiler.captureProfile() method + +**Signature:** + +```typescript +static captureProfile(durationMs: number, outputPath?: string): Promise; +``` + +## Parameters + + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +durationMs + + + + +number + + + + + +
+ +outputPath + + + + +string + + + + +_(Optional)_ + + +
+**Returns:** + +Promise<object \| null> + diff --git a/sdk/docs/server.cpuprofiler.md b/sdk/docs/server.cpuprofiler.md new file mode 100644 index 00000000..235371a7 --- /dev/null +++ b/sdk/docs/server.cpuprofiler.md @@ -0,0 +1,59 @@ + + +[Home](./index.md) > [server](./server.md) > [CpuProfiler](./server.cpuprofiler.md) + +## CpuProfiler class + +**Signature:** + +```typescript +export default class CpuProfiler +``` + +## Methods + + + + +
+ +Method + + + + +Modifiers + + + + +Description + + +
+ +[captureHeapSnapshot(outputPath)](./server.cpuprofiler.captureheapsnapshot.md) + + + + +`static` + + + + + +
+ +[captureProfile(durationMs, outputPath)](./server.cpuprofiler.captureprofile.md) + + + + +`static` + + + + + +
diff --git a/sdk/docs/server.idlebehavior.md b/sdk/docs/server.idlebehavior.md new file mode 100644 index 00000000..a5ce6597 --- /dev/null +++ b/sdk/docs/server.idlebehavior.md @@ -0,0 +1,88 @@ + + +[Home](./index.md) > [server](./server.md) > [IdleBehavior](./server.idlebehavior.md) + +## IdleBehavior class + +**Signature:** + +```typescript +export default class IdleBehavior implements BotBehavior +``` +**Implements:** [BotBehavior](./server.botbehavior.md) + +## Properties + + + +
+ +Property + + + + +Modifiers + + + + +Type + + + + +Description + + +
+ +[name](./server.idlebehavior.name.md) + + + + +`readonly` + + + + +(not declared) + + + + + +
+ +## Methods + + + +
+ +Method + + + + +Modifiers + + + + +Description + + +
+ +[tick(\_bot, \_world, \_deltaTimeMs)](./server.idlebehavior.tick.md) + + + + + + + + +
diff --git a/sdk/docs/server.idlebehavior.name.md b/sdk/docs/server.idlebehavior.name.md new file mode 100644 index 00000000..9070c64e --- /dev/null +++ b/sdk/docs/server.idlebehavior.name.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [IdleBehavior](./server.idlebehavior.md) > [name](./server.idlebehavior.name.md) + +## IdleBehavior.name property + +**Signature:** + +```typescript +readonly name = "idle"; +``` diff --git a/sdk/docs/server.idlebehavior.tick.md b/sdk/docs/server.idlebehavior.tick.md new file mode 100644 index 00000000..5f324bf9 --- /dev/null +++ b/sdk/docs/server.idlebehavior.tick.md @@ -0,0 +1,77 @@ + + +[Home](./index.md) > [server](./server.md) > [IdleBehavior](./server.idlebehavior.md) > [tick](./server.idlebehavior.tick.md) + +## IdleBehavior.tick() method + +**Signature:** + +```typescript +tick(_bot: BotPlayer, _world: World, _deltaTimeMs: number): void; +``` + +## Parameters + + + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +\_bot + + + + +[BotPlayer](./server.botplayer.md) + + + + + +
+ +\_world + + + + +[World](./server.world.md) + + + + + +
+ +\_deltaTimeMs + + + + +number + + + + + +
+**Returns:** + +void + diff --git a/sdk/docs/server.interactbehavior._constructor_.md b/sdk/docs/server.interactbehavior._constructor_.md new file mode 100644 index 00000000..9ae66abc --- /dev/null +++ b/sdk/docs/server.interactbehavior._constructor_.md @@ -0,0 +1,49 @@ + + +[Home](./index.md) > [server](./server.md) > [InteractBehavior](./server.interactbehavior.md) > [(constructor)](./server.interactbehavior._constructor_.md) + +## InteractBehavior.(constructor) + +Constructs a new instance of the `InteractBehavior` class + +**Signature:** + +```typescript +constructor(options?: InteractBehaviorOptions); +``` + +## Parameters + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +options + + + + +[InteractBehaviorOptions](./server.interactbehavioroptions.md) + + + + +_(Optional)_ + + +
diff --git a/sdk/docs/server.interactbehavior.md b/sdk/docs/server.interactbehavior.md new file mode 100644 index 00000000..2c0f7e93 --- /dev/null +++ b/sdk/docs/server.interactbehavior.md @@ -0,0 +1,122 @@ + + +[Home](./index.md) > [server](./server.md) > [InteractBehavior](./server.interactbehavior.md) + +## InteractBehavior class + +**Signature:** + +```typescript +export default class InteractBehavior implements BotBehavior +``` +**Implements:** [BotBehavior](./server.botbehavior.md) + +## Constructors + + + +
+ +Constructor + + + + +Modifiers + + + + +Description + + +
+ +[(constructor)(options)](./server.interactbehavior._constructor_.md) + + + + + + + +Constructs a new instance of the `InteractBehavior` class + + +
+ +## Properties + + + +
+ +Property + + + + +Modifiers + + + + +Type + + + + +Description + + +
+ +[name](./server.interactbehavior.name.md) + + + + +`readonly` + + + + +(not declared) + + + + + +
+ +## Methods + + + +
+ +Method + + + + +Modifiers + + + + +Description + + +
+ +[tick(bot, world, deltaTimeMs)](./server.interactbehavior.tick.md) + + + + + + + + +
diff --git a/sdk/docs/server.interactbehavior.name.md b/sdk/docs/server.interactbehavior.name.md new file mode 100644 index 00000000..6d29dab9 --- /dev/null +++ b/sdk/docs/server.interactbehavior.name.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [InteractBehavior](./server.interactbehavior.md) > [name](./server.interactbehavior.name.md) + +## InteractBehavior.name property + +**Signature:** + +```typescript +readonly name = "interact"; +``` diff --git a/sdk/docs/server.interactbehavior.tick.md b/sdk/docs/server.interactbehavior.tick.md new file mode 100644 index 00000000..d4b3e0e8 --- /dev/null +++ b/sdk/docs/server.interactbehavior.tick.md @@ -0,0 +1,77 @@ + + +[Home](./index.md) > [server](./server.md) > [InteractBehavior](./server.interactbehavior.md) > [tick](./server.interactbehavior.tick.md) + +## InteractBehavior.tick() method + +**Signature:** + +```typescript +tick(bot: BotPlayer, world: World, deltaTimeMs: number): void; +``` + +## Parameters + + + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +bot + + + + +[BotPlayer](./server.botplayer.md) + + + + + +
+ +world + + + + +[World](./server.world.md) + + + + + +
+ +deltaTimeMs + + + + +number + + + + + +
+**Returns:** + +void + diff --git a/sdk/docs/server.interactbehavioroptions.actionintervalms.md b/sdk/docs/server.interactbehavioroptions.actionintervalms.md new file mode 100644 index 00000000..243a28a8 --- /dev/null +++ b/sdk/docs/server.interactbehavioroptions.actionintervalms.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [InteractBehaviorOptions](./server.interactbehavioroptions.md) > [actionIntervalMs](./server.interactbehavioroptions.actionintervalms.md) + +## InteractBehaviorOptions.actionIntervalMs property + +**Signature:** + +```typescript +actionIntervalMs?: number; +``` diff --git a/sdk/docs/server.interactbehavioroptions.interactradius.md b/sdk/docs/server.interactbehavioroptions.interactradius.md new file mode 100644 index 00000000..10dcb997 --- /dev/null +++ b/sdk/docs/server.interactbehavioroptions.interactradius.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [InteractBehaviorOptions](./server.interactbehavioroptions.md) > [interactRadius](./server.interactbehavioroptions.interactradius.md) + +## InteractBehaviorOptions.interactRadius property + +**Signature:** + +```typescript +interactRadius?: number; +``` diff --git a/sdk/docs/server.interactbehavioroptions.md b/sdk/docs/server.interactbehavioroptions.md new file mode 100644 index 00000000..6f52c3a8 --- /dev/null +++ b/sdk/docs/server.interactbehavioroptions.md @@ -0,0 +1,93 @@ + + +[Home](./index.md) > [server](./server.md) > [InteractBehaviorOptions](./server.interactbehavioroptions.md) + +## InteractBehaviorOptions interface + +**Signature:** + +```typescript +export interface InteractBehaviorOptions +``` + +## Properties + + + + + +
+ +Property + + + + +Modifiers + + + + +Type + + + + +Description + + +
+ +[actionIntervalMs?](./server.interactbehavioroptions.actionintervalms.md) + + + + + + + +number + + + + +_(Optional)_ + + +
+ +[interactRadius?](./server.interactbehavioroptions.interactradius.md) + + + + + + + +number + + + + +_(Optional)_ + + +
+ +[moveSpeed?](./server.interactbehavioroptions.movespeed.md) + + + + + + + +number + + + + +_(Optional)_ + + +
diff --git a/sdk/docs/server.interactbehavioroptions.movespeed.md b/sdk/docs/server.interactbehavioroptions.movespeed.md new file mode 100644 index 00000000..214819d0 --- /dev/null +++ b/sdk/docs/server.interactbehavioroptions.movespeed.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [InteractBehaviorOptions](./server.interactbehavioroptions.md) > [moveSpeed](./server.interactbehavioroptions.movespeed.md) + +## InteractBehaviorOptions.moveSpeed property + +**Signature:** + +```typescript +moveSpeed?: number; +``` diff --git a/sdk/docs/server.md b/sdk/docs/server.md index cc345102..8aad8a85 100644 --- a/sdk/docs/server.md +++ b/sdk/docs/server.md @@ -105,6 +105,33 @@ Manages known block types in a world. When to use: registering and retrieving block types for a specific world. Do NOT use for: placing blocks; use `ChunkLattice.setBlock`. + + + +[BotManager](./server.botmanager.md) + + + + + + + + +[BotPlayer](./server.botplayer.md) + + + + + + + + +[ChaseBehavior](./server.chasebehavior.md) + + + + + @@ -170,6 +197,15 @@ A helper class for building and decoding collision groups. When to use: creating custom collision filters for colliders and rigid bodies. Do NOT use for: per-frame changes; collision group changes are usually infrequent. + + + +[CpuProfiler](./server.cpuprofiler.md) + + + + + @@ -287,6 +323,24 @@ Global entry point for server systems (players, worlds, assets). When to use: accessing global managers and registries after startup. Do NOT use for: constructing your own server instance. + + + +[IdleBehavior](./server.idlebehavior.md) + + + + + + + + +[InteractBehavior](./server.interactbehavior.md) + + + + + @@ -352,6 +406,15 @@ Manages model data for all known models of the game. When to use: querying model metadata (bounds, node names, animations, trimesh). Do NOT use for: runtime mesh editing; use dedicated tooling or physics colliders. + + + +[NetworkMetrics](./server.networkmetrics.md) + + + + + @@ -389,6 +452,15 @@ A pathfinding entity controller built on top of `SimpleEntityController` When to use: obstacle-aware movement to a target coordinate. Do NOT use for: per-tick recalculation; pathfinding is synchronous and can be expensive. + + + +[PerformanceMonitor](./server.performancemonitor.md) + + + + + @@ -480,6 +552,15 @@ Represents a quaternion. When to use: rotation math for entities, cameras, or transforms. Do NOT use for: immutable math; most methods mutate the instance. + + + +[RandomWalkBehavior](./server.randomwalkbehavior.md) + + + + + @@ -905,6 +986,15 @@ See `ParticleEmitterEventPayloads` for the payloads. \*\*Category:\*\* Events + + + +[PerformanceMonitorEvent](./server.performancemonitorevent.md) + + + + + @@ -1097,6 +1187,42 @@ Description +[Monitor(operationName)](./server.monitor.md) + + + + + + + + +[monitorAsyncBlock(name, fn)](./server.monitorasyncblock.md) + + + + + + + + +[monitorBlock(name, fn)](./server.monitorblock.md) + + + + + + + + +[MonitorClass(prefix)](./server.monitorclass.md) + + + + + + + + [startServer(init)](./server.startserver.md) @@ -1309,6 +1435,24 @@ Event payloads for BlockTypeRegistry emitted events. \*\*Category:\*\* Events + + + +[BotBehavior](./server.botbehavior.md) + + + + + + + + +[BotPlayerOptions](./server.botplayeroptions.md) + + + + + @@ -1324,6 +1468,15 @@ Use for: capsule-shaped colliders. Do NOT use for: other shapes; use the matchin \*\*Category:\*\* Physics + + + +[ChaseBehaviorOptions](./server.chasebehavioroptions.md) + + + + + @@ -1516,6 +1669,15 @@ Event payloads for GameServer emitted events. \*\*Category:\*\* Events + + + +[InteractBehaviorOptions](./server.interactbehavioroptions.md) + + + + + @@ -1561,6 +1723,15 @@ Use for: entities rendered from a glTF model. Do NOT use for: block entities; us \*\*Category:\*\* Entities + + + +[NetworkMetricsSnapshot](./server.networkmetricssnapshot.md) + + + + + @@ -1576,6 +1747,15 @@ Use for: explicitly disabling collider creation. Do NOT use for: physical intera \*\*Category:\*\* Physics + + + +[OperationStats](./server.operationstats.md) + + + + + @@ -1617,6 +1797,33 @@ Use for: configuring an emitter before calling `ParticleEmitter.spawn`. \*\*Category:\*\* Particles + + + +[PerformanceMonitorEventPayloads](./server.performancemonitoreventpayloads.md) + + + + + + + + +[PerformanceMonitorOptions](./server.performancemonitoroptions.md) + + + + + + + + +[PerformanceSnapshot](./server.performancesnapshot.md) + + + + + @@ -1682,6 +1889,15 @@ A quaternion. \*\*Category:\*\* Math + + + +[RandomWalkOptions](./server.randomwalkoptions.md) + + + + + @@ -1764,6 +1980,15 @@ A 3x3 symmetric positive-definite matrix for spatial dynamics. \*\*Category:\*\* Math + + + +[TickReport](./server.tickreport.md) + + + + + diff --git a/sdk/docs/server.monitor.md b/sdk/docs/server.monitor.md new file mode 100644 index 00000000..bb37bc71 --- /dev/null +++ b/sdk/docs/server.monitor.md @@ -0,0 +1,51 @@ + + +[Home](./index.md) > [server](./server.md) > [Monitor](./server.monitor.md) + +## Monitor() function + +**Signature:** + +```typescript +export declare function Monitor(operationName?: string): (target: any, propertyKey: string, descriptor: PropertyDescriptor) => PropertyDescriptor; +``` + +## Parameters + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +operationName + + + + +string + + + + +_(Optional)_ + + +
+**Returns:** + +(target: any, propertyKey: string, descriptor: PropertyDescriptor) => PropertyDescriptor + diff --git a/sdk/docs/server.monitorasyncblock.md b/sdk/docs/server.monitorasyncblock.md new file mode 100644 index 00000000..96f02d12 --- /dev/null +++ b/sdk/docs/server.monitorasyncblock.md @@ -0,0 +1,63 @@ + + +[Home](./index.md) > [server](./server.md) > [monitorAsyncBlock](./server.monitorasyncblock.md) + +## monitorAsyncBlock() function + +**Signature:** + +```typescript +export declare function monitorAsyncBlock(name: string, fn: () => Promise): Promise; +``` + +## Parameters + + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +name + + + + +string + + + + + +
+ +fn + + + + +() => Promise<T> + + + + + +
+**Returns:** + +Promise<T> + diff --git a/sdk/docs/server.monitorblock.md b/sdk/docs/server.monitorblock.md new file mode 100644 index 00000000..7f72b48b --- /dev/null +++ b/sdk/docs/server.monitorblock.md @@ -0,0 +1,63 @@ + + +[Home](./index.md) > [server](./server.md) > [monitorBlock](./server.monitorblock.md) + +## monitorBlock() function + +**Signature:** + +```typescript +export declare function monitorBlock(name: string, fn: () => T): T; +``` + +## Parameters + + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +name + + + + +string + + + + + +
+ +fn + + + + +() => T + + + + + +
+**Returns:** + +T + diff --git a/sdk/docs/server.monitorclass.md b/sdk/docs/server.monitorclass.md new file mode 100644 index 00000000..b5965f85 --- /dev/null +++ b/sdk/docs/server.monitorclass.md @@ -0,0 +1,53 @@ + + +[Home](./index.md) > [server](./server.md) > [MonitorClass](./server.monitorclass.md) + +## MonitorClass() function + +**Signature:** + +```typescript +export declare function MonitorClass(prefix?: string): (constructor: T) => T; +``` + +## Parameters + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +prefix + + + + +string + + + + +_(Optional)_ + + +
+**Returns:** + +<T extends { new (...args: any\[\]): {}; }>(constructor: T) => T + diff --git a/sdk/docs/server.networkmetrics.disable.md b/sdk/docs/server.networkmetrics.disable.md new file mode 100644 index 00000000..9e20603f --- /dev/null +++ b/sdk/docs/server.networkmetrics.disable.md @@ -0,0 +1,15 @@ + + +[Home](./index.md) > [server](./server.md) > [NetworkMetrics](./server.networkmetrics.md) > [disable](./server.networkmetrics.disable.md) + +## NetworkMetrics.disable() method + +**Signature:** + +```typescript +disable(): void; +``` +**Returns:** + +void + diff --git a/sdk/docs/server.networkmetrics.enable.md b/sdk/docs/server.networkmetrics.enable.md new file mode 100644 index 00000000..5247b888 --- /dev/null +++ b/sdk/docs/server.networkmetrics.enable.md @@ -0,0 +1,15 @@ + + +[Home](./index.md) > [server](./server.md) > [NetworkMetrics](./server.networkmetrics.md) > [enable](./server.networkmetrics.enable.md) + +## NetworkMetrics.enable() method + +**Signature:** + +```typescript +enable(): void; +``` +**Returns:** + +void + diff --git a/sdk/docs/server.networkmetrics.getsnapshot.md b/sdk/docs/server.networkmetrics.getsnapshot.md new file mode 100644 index 00000000..9edb9d55 --- /dev/null +++ b/sdk/docs/server.networkmetrics.getsnapshot.md @@ -0,0 +1,15 @@ + + +[Home](./index.md) > [server](./server.md) > [NetworkMetrics](./server.networkmetrics.md) > [getSnapshot](./server.networkmetrics.getsnapshot.md) + +## NetworkMetrics.getSnapshot() method + +**Signature:** + +```typescript +getSnapshot(): NetworkMetricsSnapshot; +``` +**Returns:** + +[NetworkMetricsSnapshot](./server.networkmetricssnapshot.md) + diff --git a/sdk/docs/server.networkmetrics.instance.md b/sdk/docs/server.networkmetrics.instance.md new file mode 100644 index 00000000..f9556a99 --- /dev/null +++ b/sdk/docs/server.networkmetrics.instance.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [NetworkMetrics](./server.networkmetrics.md) > [instance](./server.networkmetrics.instance.md) + +## NetworkMetrics.instance property + +**Signature:** + +```typescript +static get instance(): NetworkMetrics; +``` diff --git a/sdk/docs/server.networkmetrics.isenabled.md b/sdk/docs/server.networkmetrics.isenabled.md new file mode 100644 index 00000000..81c1906a --- /dev/null +++ b/sdk/docs/server.networkmetrics.isenabled.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [NetworkMetrics](./server.networkmetrics.md) > [isEnabled](./server.networkmetrics.isenabled.md) + +## NetworkMetrics.isEnabled property + +**Signature:** + +```typescript +get isEnabled(): boolean; +``` diff --git a/sdk/docs/server.networkmetrics.md b/sdk/docs/server.networkmetrics.md new file mode 100644 index 00000000..8006319b --- /dev/null +++ b/sdk/docs/server.networkmetrics.md @@ -0,0 +1,216 @@ + + +[Home](./index.md) > [server](./server.md) > [NetworkMetrics](./server.networkmetrics.md) + +## NetworkMetrics class + +**Signature:** + +```typescript +export default class NetworkMetrics +``` + +## Properties + + + + +
+ +Property + + + + +Modifiers + + + + +Type + + + + +Description + + +
+ +[instance](./server.networkmetrics.instance.md) + + + + +`static` + +`readonly` + + + + +[NetworkMetrics](./server.networkmetrics.md) + + + + + +
+ +[isEnabled](./server.networkmetrics.isenabled.md) + + + + +`readonly` + + + + +boolean + + + + + +
+ +## Methods + + + + + + + + + + + + +
+ +Method + + + + +Modifiers + + + + +Description + + +
+ +[disable()](./server.networkmetrics.disable.md) + + + + + + + + +
+ +[enable()](./server.networkmetrics.enable.md) + + + + + + + + +
+ +[getSnapshot()](./server.networkmetrics.getsnapshot.md) + + + + + + + + +
+ +[recordBytesReceived(bytes)](./server.networkmetrics.recordbytesreceived.md) + + + + + + + + +
+ +[recordBytesSent(bytes)](./server.networkmetrics.recordbytessent.md) + + + + + + + + +
+ +[recordCompression()](./server.networkmetrics.recordcompression.md) + + + + + + + + +
+ +[recordPacketReceived()](./server.networkmetrics.recordpacketreceived.md) + + + + + + + + +
+ +[recordPacketSent()](./server.networkmetrics.recordpacketsent.md) + + + + + + + + +
+ +[recordSerialization(durationMs)](./server.networkmetrics.recordserialization.md) + + + + + + + + +
+ +[setConnectedPlayers(count)](./server.networkmetrics.setconnectedplayers.md) + + + + + + + + +
diff --git a/sdk/docs/server.networkmetrics.recordbytesreceived.md b/sdk/docs/server.networkmetrics.recordbytesreceived.md new file mode 100644 index 00000000..045e15c2 --- /dev/null +++ b/sdk/docs/server.networkmetrics.recordbytesreceived.md @@ -0,0 +1,49 @@ + + +[Home](./index.md) > [server](./server.md) > [NetworkMetrics](./server.networkmetrics.md) > [recordBytesReceived](./server.networkmetrics.recordbytesreceived.md) + +## NetworkMetrics.recordBytesReceived() method + +**Signature:** + +```typescript +recordBytesReceived(bytes: number): void; +``` + +## Parameters + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +bytes + + + + +number + + + + + +
+**Returns:** + +void + diff --git a/sdk/docs/server.networkmetrics.recordbytessent.md b/sdk/docs/server.networkmetrics.recordbytessent.md new file mode 100644 index 00000000..e6786644 --- /dev/null +++ b/sdk/docs/server.networkmetrics.recordbytessent.md @@ -0,0 +1,49 @@ + + +[Home](./index.md) > [server](./server.md) > [NetworkMetrics](./server.networkmetrics.md) > [recordBytesSent](./server.networkmetrics.recordbytessent.md) + +## NetworkMetrics.recordBytesSent() method + +**Signature:** + +```typescript +recordBytesSent(bytes: number): void; +``` + +## Parameters + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +bytes + + + + +number + + + + + +
+**Returns:** + +void + diff --git a/sdk/docs/server.networkmetrics.recordcompression.md b/sdk/docs/server.networkmetrics.recordcompression.md new file mode 100644 index 00000000..36231c4b --- /dev/null +++ b/sdk/docs/server.networkmetrics.recordcompression.md @@ -0,0 +1,15 @@ + + +[Home](./index.md) > [server](./server.md) > [NetworkMetrics](./server.networkmetrics.md) > [recordCompression](./server.networkmetrics.recordcompression.md) + +## NetworkMetrics.recordCompression() method + +**Signature:** + +```typescript +recordCompression(): void; +``` +**Returns:** + +void + diff --git a/sdk/docs/server.networkmetrics.recordpacketreceived.md b/sdk/docs/server.networkmetrics.recordpacketreceived.md new file mode 100644 index 00000000..6e12ae8c --- /dev/null +++ b/sdk/docs/server.networkmetrics.recordpacketreceived.md @@ -0,0 +1,15 @@ + + +[Home](./index.md) > [server](./server.md) > [NetworkMetrics](./server.networkmetrics.md) > [recordPacketReceived](./server.networkmetrics.recordpacketreceived.md) + +## NetworkMetrics.recordPacketReceived() method + +**Signature:** + +```typescript +recordPacketReceived(): void; +``` +**Returns:** + +void + diff --git a/sdk/docs/server.networkmetrics.recordpacketsent.md b/sdk/docs/server.networkmetrics.recordpacketsent.md new file mode 100644 index 00000000..f097f86e --- /dev/null +++ b/sdk/docs/server.networkmetrics.recordpacketsent.md @@ -0,0 +1,15 @@ + + +[Home](./index.md) > [server](./server.md) > [NetworkMetrics](./server.networkmetrics.md) > [recordPacketSent](./server.networkmetrics.recordpacketsent.md) + +## NetworkMetrics.recordPacketSent() method + +**Signature:** + +```typescript +recordPacketSent(): void; +``` +**Returns:** + +void + diff --git a/sdk/docs/server.networkmetrics.recordserialization.md b/sdk/docs/server.networkmetrics.recordserialization.md new file mode 100644 index 00000000..047b0297 --- /dev/null +++ b/sdk/docs/server.networkmetrics.recordserialization.md @@ -0,0 +1,49 @@ + + +[Home](./index.md) > [server](./server.md) > [NetworkMetrics](./server.networkmetrics.md) > [recordSerialization](./server.networkmetrics.recordserialization.md) + +## NetworkMetrics.recordSerialization() method + +**Signature:** + +```typescript +recordSerialization(durationMs: number): void; +``` + +## Parameters + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +durationMs + + + + +number + + + + + +
+**Returns:** + +void + diff --git a/sdk/docs/server.networkmetrics.setconnectedplayers.md b/sdk/docs/server.networkmetrics.setconnectedplayers.md new file mode 100644 index 00000000..3041dd80 --- /dev/null +++ b/sdk/docs/server.networkmetrics.setconnectedplayers.md @@ -0,0 +1,49 @@ + + +[Home](./index.md) > [server](./server.md) > [NetworkMetrics](./server.networkmetrics.md) > [setConnectedPlayers](./server.networkmetrics.setconnectedplayers.md) + +## NetworkMetrics.setConnectedPlayers() method + +**Signature:** + +```typescript +setConnectedPlayers(count: number): void; +``` + +## Parameters + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +count + + + + +number + + + + + +
+**Returns:** + +void + diff --git a/sdk/docs/server.networkmetricssnapshot.avgserializationms.md b/sdk/docs/server.networkmetricssnapshot.avgserializationms.md new file mode 100644 index 00000000..024e272b --- /dev/null +++ b/sdk/docs/server.networkmetricssnapshot.avgserializationms.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [NetworkMetricsSnapshot](./server.networkmetricssnapshot.md) > [avgSerializationMs](./server.networkmetricssnapshot.avgserializationms.md) + +## NetworkMetricsSnapshot.avgSerializationMs property + +**Signature:** + +```typescript +avgSerializationMs: number; +``` diff --git a/sdk/docs/server.networkmetricssnapshot.bytesreceivedpersecond.md b/sdk/docs/server.networkmetricssnapshot.bytesreceivedpersecond.md new file mode 100644 index 00000000..1718d717 --- /dev/null +++ b/sdk/docs/server.networkmetricssnapshot.bytesreceivedpersecond.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [NetworkMetricsSnapshot](./server.networkmetricssnapshot.md) > [bytesReceivedPerSecond](./server.networkmetricssnapshot.bytesreceivedpersecond.md) + +## NetworkMetricsSnapshot.bytesReceivedPerSecond property + +**Signature:** + +```typescript +bytesReceivedPerSecond: number; +``` diff --git a/sdk/docs/server.networkmetricssnapshot.bytesreceivedtotal.md b/sdk/docs/server.networkmetricssnapshot.bytesreceivedtotal.md new file mode 100644 index 00000000..8a024d0c --- /dev/null +++ b/sdk/docs/server.networkmetricssnapshot.bytesreceivedtotal.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [NetworkMetricsSnapshot](./server.networkmetricssnapshot.md) > [bytesReceivedTotal](./server.networkmetricssnapshot.bytesreceivedtotal.md) + +## NetworkMetricsSnapshot.bytesReceivedTotal property + +**Signature:** + +```typescript +bytesReceivedTotal: number; +``` diff --git a/sdk/docs/server.networkmetricssnapshot.bytessentpersecond.md b/sdk/docs/server.networkmetricssnapshot.bytessentpersecond.md new file mode 100644 index 00000000..8d7eff57 --- /dev/null +++ b/sdk/docs/server.networkmetricssnapshot.bytessentpersecond.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [NetworkMetricsSnapshot](./server.networkmetricssnapshot.md) > [bytesSentPerSecond](./server.networkmetricssnapshot.bytessentpersecond.md) + +## NetworkMetricsSnapshot.bytesSentPerSecond property + +**Signature:** + +```typescript +bytesSentPerSecond: number; +``` diff --git a/sdk/docs/server.networkmetricssnapshot.bytessenttotal.md b/sdk/docs/server.networkmetricssnapshot.bytessenttotal.md new file mode 100644 index 00000000..2f753b4b --- /dev/null +++ b/sdk/docs/server.networkmetricssnapshot.bytessenttotal.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [NetworkMetricsSnapshot](./server.networkmetricssnapshot.md) > [bytesSentTotal](./server.networkmetricssnapshot.bytessenttotal.md) + +## NetworkMetricsSnapshot.bytesSentTotal property + +**Signature:** + +```typescript +bytesSentTotal: number; +``` diff --git a/sdk/docs/server.networkmetricssnapshot.compressioncount.md b/sdk/docs/server.networkmetricssnapshot.compressioncount.md new file mode 100644 index 00000000..541c2d99 --- /dev/null +++ b/sdk/docs/server.networkmetricssnapshot.compressioncount.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [NetworkMetricsSnapshot](./server.networkmetricssnapshot.md) > [compressionCount](./server.networkmetricssnapshot.compressioncount.md) + +## NetworkMetricsSnapshot.compressionCount property + +**Signature:** + +```typescript +compressionCount: number; +``` diff --git a/sdk/docs/server.networkmetricssnapshot.connectedplayers.md b/sdk/docs/server.networkmetricssnapshot.connectedplayers.md new file mode 100644 index 00000000..4cc3c5e3 --- /dev/null +++ b/sdk/docs/server.networkmetricssnapshot.connectedplayers.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [NetworkMetricsSnapshot](./server.networkmetricssnapshot.md) > [connectedPlayers](./server.networkmetricssnapshot.connectedplayers.md) + +## NetworkMetricsSnapshot.connectedPlayers property + +**Signature:** + +```typescript +connectedPlayers: number; +``` diff --git a/sdk/docs/server.networkmetricssnapshot.md b/sdk/docs/server.networkmetricssnapshot.md new file mode 100644 index 00000000..b0c452af --- /dev/null +++ b/sdk/docs/server.networkmetricssnapshot.md @@ -0,0 +1,189 @@ + + +[Home](./index.md) > [server](./server.md) > [NetworkMetricsSnapshot](./server.networkmetricssnapshot.md) + +## NetworkMetricsSnapshot interface + +**Signature:** + +```typescript +export interface NetworkMetricsSnapshot +``` + +## Properties + + + + + + + + + + + +
+ +Property + + + + +Modifiers + + + + +Type + + + + +Description + + +
+ +[avgSerializationMs](./server.networkmetricssnapshot.avgserializationms.md) + + + + + + + +number + + + + + +
+ +[bytesReceivedPerSecond](./server.networkmetricssnapshot.bytesreceivedpersecond.md) + + + + + + + +number + + + + + +
+ +[bytesReceivedTotal](./server.networkmetricssnapshot.bytesreceivedtotal.md) + + + + + + + +number + + + + + +
+ +[bytesSentPerSecond](./server.networkmetricssnapshot.bytessentpersecond.md) + + + + + + + +number + + + + + +
+ +[bytesSentTotal](./server.networkmetricssnapshot.bytessenttotal.md) + + + + + + + +number + + + + + +
+ +[compressionCount](./server.networkmetricssnapshot.compressioncount.md) + + + + + + + +number + + + + + +
+ +[connectedPlayers](./server.networkmetricssnapshot.connectedplayers.md) + + + + + + + +number + + + + + +
+ +[packetsReceivedPerSecond](./server.networkmetricssnapshot.packetsreceivedpersecond.md) + + + + + + + +number + + + + + +
+ +[packetsSentPerSecond](./server.networkmetricssnapshot.packetssentpersecond.md) + + + + + + + +number + + + + + +
diff --git a/sdk/docs/server.networkmetricssnapshot.packetsreceivedpersecond.md b/sdk/docs/server.networkmetricssnapshot.packetsreceivedpersecond.md new file mode 100644 index 00000000..3cf3e83d --- /dev/null +++ b/sdk/docs/server.networkmetricssnapshot.packetsreceivedpersecond.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [NetworkMetricsSnapshot](./server.networkmetricssnapshot.md) > [packetsReceivedPerSecond](./server.networkmetricssnapshot.packetsreceivedpersecond.md) + +## NetworkMetricsSnapshot.packetsReceivedPerSecond property + +**Signature:** + +```typescript +packetsReceivedPerSecond: number; +``` diff --git a/sdk/docs/server.networkmetricssnapshot.packetssentpersecond.md b/sdk/docs/server.networkmetricssnapshot.packetssentpersecond.md new file mode 100644 index 00000000..c95aa93a --- /dev/null +++ b/sdk/docs/server.networkmetricssnapshot.packetssentpersecond.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [NetworkMetricsSnapshot](./server.networkmetricssnapshot.md) > [packetsSentPerSecond](./server.networkmetricssnapshot.packetssentpersecond.md) + +## NetworkMetricsSnapshot.packetsSentPerSecond property + +**Signature:** + +```typescript +packetsSentPerSecond: number; +``` diff --git a/sdk/docs/server.operationstats.avgms.md b/sdk/docs/server.operationstats.avgms.md new file mode 100644 index 00000000..b05e0d38 --- /dev/null +++ b/sdk/docs/server.operationstats.avgms.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [OperationStats](./server.operationstats.md) > [avgMs](./server.operationstats.avgms.md) + +## OperationStats.avgMs property + +**Signature:** + +```typescript +avgMs: number; +``` diff --git a/sdk/docs/server.operationstats.count.md b/sdk/docs/server.operationstats.count.md new file mode 100644 index 00000000..d97295f8 --- /dev/null +++ b/sdk/docs/server.operationstats.count.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [OperationStats](./server.operationstats.md) > [count](./server.operationstats.count.md) + +## OperationStats.count property + +**Signature:** + +```typescript +count: number; +``` diff --git a/sdk/docs/server.operationstats.lastms.md b/sdk/docs/server.operationstats.lastms.md new file mode 100644 index 00000000..8f3a6ab2 --- /dev/null +++ b/sdk/docs/server.operationstats.lastms.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [OperationStats](./server.operationstats.md) > [lastMs](./server.operationstats.lastms.md) + +## OperationStats.lastMs property + +**Signature:** + +```typescript +lastMs: number; +``` diff --git a/sdk/docs/server.operationstats.maxms.md b/sdk/docs/server.operationstats.maxms.md new file mode 100644 index 00000000..23a7eec9 --- /dev/null +++ b/sdk/docs/server.operationstats.maxms.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [OperationStats](./server.operationstats.md) > [maxMs](./server.operationstats.maxms.md) + +## OperationStats.maxMs property + +**Signature:** + +```typescript +maxMs: number; +``` diff --git a/sdk/docs/server.operationstats.md b/sdk/docs/server.operationstats.md new file mode 100644 index 00000000..d97e2225 --- /dev/null +++ b/sdk/docs/server.operationstats.md @@ -0,0 +1,189 @@ + + +[Home](./index.md) > [server](./server.md) > [OperationStats](./server.operationstats.md) + +## OperationStats interface + +**Signature:** + +```typescript +export interface OperationStats +``` + +## Properties + + + + + + + + + + + +
+ +Property + + + + +Modifiers + + + + +Type + + + + +Description + + +
+ +[avgMs](./server.operationstats.avgms.md) + + + + + + + +number + + + + + +
+ +[count](./server.operationstats.count.md) + + + + + + + +number + + + + + +
+ +[lastMs](./server.operationstats.lastms.md) + + + + + + + +number + + + + + +
+ +[maxMs](./server.operationstats.maxms.md) + + + + + + + +number + + + + + +
+ +[minMs](./server.operationstats.minms.md) + + + + + + + +number + + + + + +
+ +[p50Ms](./server.operationstats.p50ms.md) + + + + + + + +number + + + + + +
+ +[p95Ms](./server.operationstats.p95ms.md) + + + + + + + +number + + + + + +
+ +[p99Ms](./server.operationstats.p99ms.md) + + + + + + + +number + + + + + +
+ +[totalMs](./server.operationstats.totalms.md) + + + + + + + +number + + + + + +
diff --git a/sdk/docs/server.operationstats.minms.md b/sdk/docs/server.operationstats.minms.md new file mode 100644 index 00000000..99d1d2ca --- /dev/null +++ b/sdk/docs/server.operationstats.minms.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [OperationStats](./server.operationstats.md) > [minMs](./server.operationstats.minms.md) + +## OperationStats.minMs property + +**Signature:** + +```typescript +minMs: number; +``` diff --git a/sdk/docs/server.operationstats.p50ms.md b/sdk/docs/server.operationstats.p50ms.md new file mode 100644 index 00000000..c6248ba4 --- /dev/null +++ b/sdk/docs/server.operationstats.p50ms.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [OperationStats](./server.operationstats.md) > [p50Ms](./server.operationstats.p50ms.md) + +## OperationStats.p50Ms property + +**Signature:** + +```typescript +p50Ms: number; +``` diff --git a/sdk/docs/server.operationstats.p95ms.md b/sdk/docs/server.operationstats.p95ms.md new file mode 100644 index 00000000..4b984f68 --- /dev/null +++ b/sdk/docs/server.operationstats.p95ms.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [OperationStats](./server.operationstats.md) > [p95Ms](./server.operationstats.p95ms.md) + +## OperationStats.p95Ms property + +**Signature:** + +```typescript +p95Ms: number; +``` diff --git a/sdk/docs/server.operationstats.p99ms.md b/sdk/docs/server.operationstats.p99ms.md new file mode 100644 index 00000000..837ab220 --- /dev/null +++ b/sdk/docs/server.operationstats.p99ms.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [OperationStats](./server.operationstats.md) > [p99Ms](./server.operationstats.p99ms.md) + +## OperationStats.p99Ms property + +**Signature:** + +```typescript +p99Ms: number; +``` diff --git a/sdk/docs/server.operationstats.totalms.md b/sdk/docs/server.operationstats.totalms.md new file mode 100644 index 00000000..44d85661 --- /dev/null +++ b/sdk/docs/server.operationstats.totalms.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [OperationStats](./server.operationstats.md) > [totalMs](./server.operationstats.totalms.md) + +## OperationStats.totalMs property + +**Signature:** + +```typescript +totalMs: number; +``` diff --git a/sdk/docs/server.performancemonitor.begintick.md b/sdk/docs/server.performancemonitor.begintick.md new file mode 100644 index 00000000..b3dc1c1f --- /dev/null +++ b/sdk/docs/server.performancemonitor.begintick.md @@ -0,0 +1,77 @@ + + +[Home](./index.md) > [server](./server.md) > [PerformanceMonitor](./server.performancemonitor.md) > [beginTick](./server.performancemonitor.begintick.md) + +## PerformanceMonitor.beginTick() method + +**Signature:** + +```typescript +beginTick(tick: number, entityCount: number, playerCount: number): void; +``` + +## Parameters + + + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +tick + + + + +number + + + + + +
+ +entityCount + + + + +number + + + + + +
+ +playerCount + + + + +number + + + + + +
+**Returns:** + +void + diff --git a/sdk/docs/server.performancemonitor.disable.md b/sdk/docs/server.performancemonitor.disable.md new file mode 100644 index 00000000..609aad60 --- /dev/null +++ b/sdk/docs/server.performancemonitor.disable.md @@ -0,0 +1,15 @@ + + +[Home](./index.md) > [server](./server.md) > [PerformanceMonitor](./server.performancemonitor.md) > [disable](./server.performancemonitor.disable.md) + +## PerformanceMonitor.disable() method + +**Signature:** + +```typescript +disable(): void; +``` +**Returns:** + +void + diff --git a/sdk/docs/server.performancemonitor.enable.md b/sdk/docs/server.performancemonitor.enable.md new file mode 100644 index 00000000..42814477 --- /dev/null +++ b/sdk/docs/server.performancemonitor.enable.md @@ -0,0 +1,51 @@ + + +[Home](./index.md) > [server](./server.md) > [PerformanceMonitor](./server.performancemonitor.md) > [enable](./server.performancemonitor.enable.md) + +## PerformanceMonitor.enable() method + +**Signature:** + +```typescript +enable(options?: PerformanceMonitorOptions): void; +``` + +## Parameters + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +options + + + + +[PerformanceMonitorOptions](./server.performancemonitoroptions.md) + + + + +_(Optional)_ + + +
+**Returns:** + +void + diff --git a/sdk/docs/server.performancemonitor.enableentityprofiling.md b/sdk/docs/server.performancemonitor.enableentityprofiling.md new file mode 100644 index 00000000..997bd3c9 --- /dev/null +++ b/sdk/docs/server.performancemonitor.enableentityprofiling.md @@ -0,0 +1,49 @@ + + +[Home](./index.md) > [server](./server.md) > [PerformanceMonitor](./server.performancemonitor.md) > [enableEntityProfiling](./server.performancemonitor.enableentityprofiling.md) + +## PerformanceMonitor.enableEntityProfiling() method + +**Signature:** + +```typescript +enableEntityProfiling(enabled: boolean): void; +``` + +## Parameters + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +enabled + + + + +boolean + + + + + +
+**Returns:** + +void + diff --git a/sdk/docs/server.performancemonitor.endtick.md b/sdk/docs/server.performancemonitor.endtick.md new file mode 100644 index 00000000..e9f40f4f --- /dev/null +++ b/sdk/docs/server.performancemonitor.endtick.md @@ -0,0 +1,15 @@ + + +[Home](./index.md) > [server](./server.md) > [PerformanceMonitor](./server.performancemonitor.md) > [endTick](./server.performancemonitor.endtick.md) + +## PerformanceMonitor.endTick() method + +**Signature:** + +```typescript +endTick(): void; +``` +**Returns:** + +void + diff --git a/sdk/docs/server.performancemonitor.getentitycosts.md b/sdk/docs/server.performancemonitor.getentitycosts.md new file mode 100644 index 00000000..11ed8b63 --- /dev/null +++ b/sdk/docs/server.performancemonitor.getentitycosts.md @@ -0,0 +1,18 @@ + + +[Home](./index.md) > [server](./server.md) > [PerformanceMonitor](./server.performancemonitor.md) > [getEntityCosts](./server.performancemonitor.getentitycosts.md) + +## PerformanceMonitor.getEntityCosts() method + +**Signature:** + +```typescript +getEntityCosts(): Map; +``` +**Returns:** + +Map<number, { tickMs: number; name: string; }> + diff --git a/sdk/docs/server.performancemonitor.getsnapshot.md b/sdk/docs/server.performancemonitor.getsnapshot.md new file mode 100644 index 00000000..262af570 --- /dev/null +++ b/sdk/docs/server.performancemonitor.getsnapshot.md @@ -0,0 +1,15 @@ + + +[Home](./index.md) > [server](./server.md) > [PerformanceMonitor](./server.performancemonitor.md) > [getSnapshot](./server.performancemonitor.getsnapshot.md) + +## PerformanceMonitor.getSnapshot() method + +**Signature:** + +```typescript +getSnapshot(): PerformanceSnapshot; +``` +**Returns:** + +[PerformanceSnapshot](./server.performancesnapshot.md) + diff --git a/sdk/docs/server.performancemonitor.instance.md b/sdk/docs/server.performancemonitor.instance.md new file mode 100644 index 00000000..dbc5c151 --- /dev/null +++ b/sdk/docs/server.performancemonitor.instance.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [PerformanceMonitor](./server.performancemonitor.md) > [instance](./server.performancemonitor.instance.md) + +## PerformanceMonitor.instance property + +**Signature:** + +```typescript +static get instance(): PerformanceMonitor; +``` diff --git a/sdk/docs/server.performancemonitor.isenabled.md b/sdk/docs/server.performancemonitor.isenabled.md new file mode 100644 index 00000000..d694eb54 --- /dev/null +++ b/sdk/docs/server.performancemonitor.isenabled.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [PerformanceMonitor](./server.performancemonitor.md) > [isEnabled](./server.performancemonitor.isenabled.md) + +## PerformanceMonitor.isEnabled property + +**Signature:** + +```typescript +get isEnabled(): boolean; +``` diff --git a/sdk/docs/server.performancemonitor.isentityprofilingenabled.md b/sdk/docs/server.performancemonitor.isentityprofilingenabled.md new file mode 100644 index 00000000..3237621b --- /dev/null +++ b/sdk/docs/server.performancemonitor.isentityprofilingenabled.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [PerformanceMonitor](./server.performancemonitor.md) > [isEntityProfilingEnabled](./server.performancemonitor.isentityprofilingenabled.md) + +## PerformanceMonitor.isEntityProfilingEnabled property + +**Signature:** + +```typescript +get isEntityProfilingEnabled(): boolean; +``` diff --git a/sdk/docs/server.performancemonitor.md b/sdk/docs/server.performancemonitor.md new file mode 100644 index 00000000..8f0bfc1b --- /dev/null +++ b/sdk/docs/server.performancemonitor.md @@ -0,0 +1,272 @@ + + +[Home](./index.md) > [server](./server.md) > [PerformanceMonitor](./server.performancemonitor.md) + +## PerformanceMonitor class + +**Signature:** + +```typescript +export default class PerformanceMonitor extends EventRouter +``` +**Extends:** [EventRouter](./server.eventrouter.md) + +## Properties + + + + + +
+ +Property + + + + +Modifiers + + + + +Type + + + + +Description + + +
+ +[instance](./server.performancemonitor.instance.md) + + + + +`static` + +`readonly` + + + + +[PerformanceMonitor](./server.performancemonitor.md) + + + + + +
+ +[isEnabled](./server.performancemonitor.isenabled.md) + + + + +`readonly` + + + + +boolean + + + + + +
+ +[isEntityProfilingEnabled](./server.performancemonitor.isentityprofilingenabled.md) + + + + +`readonly` + + + + +boolean + + + + + +
+ +## Methods + + + + + + + + + + + + + + + +
+ +Method + + + + +Modifiers + + + + +Description + + +
+ +[beginTick(tick, entityCount, playerCount)](./server.performancemonitor.begintick.md) + + + + + + + + +
+ +[disable()](./server.performancemonitor.disable.md) + + + + + + + + +
+ +[enable(options)](./server.performancemonitor.enable.md) + + + + + + + + +
+ +[enableEntityProfiling(enabled)](./server.performancemonitor.enableentityprofiling.md) + + + + + + + + +
+ +[endTick()](./server.performancemonitor.endtick.md) + + + + + + + + +
+ +[getEntityCosts()](./server.performancemonitor.getentitycosts.md) + + + + + + + + +
+ +[getSnapshot()](./server.performancemonitor.getsnapshot.md) + + + + + + + + +
+ +[measure(name, fn)](./server.performancemonitor.measure.md) + + + + + + + + +
+ +[measureAsync(name, fn)](./server.performancemonitor.measureasync.md) + + + + + + + + +
+ +[recordEntityCost(entityId, name, tickMs)](./server.performancemonitor.recordentitycost.md) + + + + + + + + +
+ +[recordPhase(phaseName, durationMs)](./server.performancemonitor.recordphase.md) + + + + + + + + +
+ +[resetStats()](./server.performancemonitor.resetstats.md) + + + + + + + + +
+ +[startTiming(name)](./server.performancemonitor.starttiming.md) + + + + + + + + +
diff --git a/sdk/docs/server.performancemonitor.measure.md b/sdk/docs/server.performancemonitor.measure.md new file mode 100644 index 00000000..deffdee5 --- /dev/null +++ b/sdk/docs/server.performancemonitor.measure.md @@ -0,0 +1,63 @@ + + +[Home](./index.md) > [server](./server.md) > [PerformanceMonitor](./server.performancemonitor.md) > [measure](./server.performancemonitor.measure.md) + +## PerformanceMonitor.measure() method + +**Signature:** + +```typescript +measure(name: string, fn: () => T): T; +``` + +## Parameters + + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +name + + + + +string + + + + + +
+ +fn + + + + +() => T + + + + + +
+**Returns:** + +T + diff --git a/sdk/docs/server.performancemonitor.measureasync.md b/sdk/docs/server.performancemonitor.measureasync.md new file mode 100644 index 00000000..ba084327 --- /dev/null +++ b/sdk/docs/server.performancemonitor.measureasync.md @@ -0,0 +1,63 @@ + + +[Home](./index.md) > [server](./server.md) > [PerformanceMonitor](./server.performancemonitor.md) > [measureAsync](./server.performancemonitor.measureasync.md) + +## PerformanceMonitor.measureAsync() method + +**Signature:** + +```typescript +measureAsync(name: string, fn: () => Promise): Promise; +``` + +## Parameters + + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +name + + + + +string + + + + + +
+ +fn + + + + +() => Promise<T> + + + + + +
+**Returns:** + +Promise<T> + diff --git a/sdk/docs/server.performancemonitor.recordentitycost.md b/sdk/docs/server.performancemonitor.recordentitycost.md new file mode 100644 index 00000000..6808fd0e --- /dev/null +++ b/sdk/docs/server.performancemonitor.recordentitycost.md @@ -0,0 +1,77 @@ + + +[Home](./index.md) > [server](./server.md) > [PerformanceMonitor](./server.performancemonitor.md) > [recordEntityCost](./server.performancemonitor.recordentitycost.md) + +## PerformanceMonitor.recordEntityCost() method + +**Signature:** + +```typescript +recordEntityCost(entityId: number, name: string, tickMs: number): void; +``` + +## Parameters + + + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +entityId + + + + +number + + + + + +
+ +name + + + + +string + + + + + +
+ +tickMs + + + + +number + + + + + +
+**Returns:** + +void + diff --git a/sdk/docs/server.performancemonitor.recordphase.md b/sdk/docs/server.performancemonitor.recordphase.md new file mode 100644 index 00000000..14b4ddd4 --- /dev/null +++ b/sdk/docs/server.performancemonitor.recordphase.md @@ -0,0 +1,63 @@ + + +[Home](./index.md) > [server](./server.md) > [PerformanceMonitor](./server.performancemonitor.md) > [recordPhase](./server.performancemonitor.recordphase.md) + +## PerformanceMonitor.recordPhase() method + +**Signature:** + +```typescript +recordPhase(phaseName: string, durationMs: number): void; +``` + +## Parameters + + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +phaseName + + + + +string + + + + + +
+ +durationMs + + + + +number + + + + + +
+**Returns:** + +void + diff --git a/sdk/docs/server.performancemonitor.resetstats.md b/sdk/docs/server.performancemonitor.resetstats.md new file mode 100644 index 00000000..33b62df0 --- /dev/null +++ b/sdk/docs/server.performancemonitor.resetstats.md @@ -0,0 +1,15 @@ + + +[Home](./index.md) > [server](./server.md) > [PerformanceMonitor](./server.performancemonitor.md) > [resetStats](./server.performancemonitor.resetstats.md) + +## PerformanceMonitor.resetStats() method + +**Signature:** + +```typescript +resetStats(): void; +``` +**Returns:** + +void + diff --git a/sdk/docs/server.performancemonitor.starttiming.md b/sdk/docs/server.performancemonitor.starttiming.md new file mode 100644 index 00000000..89d6471d --- /dev/null +++ b/sdk/docs/server.performancemonitor.starttiming.md @@ -0,0 +1,49 @@ + + +[Home](./index.md) > [server](./server.md) > [PerformanceMonitor](./server.performancemonitor.md) > [startTiming](./server.performancemonitor.starttiming.md) + +## PerformanceMonitor.startTiming() method + +**Signature:** + +```typescript +startTiming(name: string): () => void; +``` + +## Parameters + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +name + + + + +string + + + + + +
+**Returns:** + +() => void + diff --git a/sdk/docs/server.performancemonitorevent.md b/sdk/docs/server.performancemonitorevent.md new file mode 100644 index 00000000..44e68ece --- /dev/null +++ b/sdk/docs/server.performancemonitorevent.md @@ -0,0 +1,73 @@ + + +[Home](./index.md) > [server](./server.md) > [PerformanceMonitorEvent](./server.performancemonitorevent.md) + +## PerformanceMonitorEvent enum + +**Signature:** + +```typescript +export declare enum PerformanceMonitorEvent +``` + +## Enumeration Members + + + + + +
+ +Member + + + + +Value + + + + +Description + + +
+ +SNAPSHOT + + + + +`"PERFORMANCE_MONITOR.SNAPSHOT"` + + + + + +
+ +SPIKE\_DETECTED + + + + +`"PERFORMANCE_MONITOR.SPIKE_DETECTED"` + + + + + +
+ +TICK\_REPORT + + + + +`"PERFORMANCE_MONITOR.TICK_REPORT"` + + + + + +
diff --git a/sdk/docs/server.performancemonitoreventpayloads._performance_monitor.snapshot_.md b/sdk/docs/server.performancemonitoreventpayloads._performance_monitor.snapshot_.md new file mode 100644 index 00000000..75b35921 --- /dev/null +++ b/sdk/docs/server.performancemonitoreventpayloads._performance_monitor.snapshot_.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [PerformanceMonitorEventPayloads](./server.performancemonitoreventpayloads.md) > ["PERFORMANCE\_MONITOR.SNAPSHOT"](./server.performancemonitoreventpayloads._performance_monitor.snapshot_.md) + +## PerformanceMonitorEventPayloads."PERFORMANCE\_MONITOR.SNAPSHOT" property + +**Signature:** + +```typescript +[PerformanceMonitorEvent.SNAPSHOT]: PerformanceSnapshot; +``` diff --git a/sdk/docs/server.performancemonitoreventpayloads._performance_monitor.spike_detected_.md b/sdk/docs/server.performancemonitoreventpayloads._performance_monitor.spike_detected_.md new file mode 100644 index 00000000..f02c9203 --- /dev/null +++ b/sdk/docs/server.performancemonitoreventpayloads._performance_monitor.spike_detected_.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [PerformanceMonitorEventPayloads](./server.performancemonitoreventpayloads.md) > ["PERFORMANCE\_MONITOR.SPIKE\_DETECTED"](./server.performancemonitoreventpayloads._performance_monitor.spike_detected_.md) + +## PerformanceMonitorEventPayloads."PERFORMANCE\_MONITOR.SPIKE\_DETECTED" property + +**Signature:** + +```typescript +[PerformanceMonitorEvent.SPIKE_DETECTED]: TickReport; +``` diff --git a/sdk/docs/server.performancemonitoreventpayloads._performance_monitor.tick_report_.md b/sdk/docs/server.performancemonitoreventpayloads._performance_monitor.tick_report_.md new file mode 100644 index 00000000..d3a9bcfc --- /dev/null +++ b/sdk/docs/server.performancemonitoreventpayloads._performance_monitor.tick_report_.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [PerformanceMonitorEventPayloads](./server.performancemonitoreventpayloads.md) > ["PERFORMANCE\_MONITOR.TICK\_REPORT"](./server.performancemonitoreventpayloads._performance_monitor.tick_report_.md) + +## PerformanceMonitorEventPayloads."PERFORMANCE\_MONITOR.TICK\_REPORT" property + +**Signature:** + +```typescript +[PerformanceMonitorEvent.TICK_REPORT]: TickReport; +``` diff --git a/sdk/docs/server.performancemonitoreventpayloads.md b/sdk/docs/server.performancemonitoreventpayloads.md new file mode 100644 index 00000000..e0218291 --- /dev/null +++ b/sdk/docs/server.performancemonitoreventpayloads.md @@ -0,0 +1,87 @@ + + +[Home](./index.md) > [server](./server.md) > [PerformanceMonitorEventPayloads](./server.performancemonitoreventpayloads.md) + +## PerformanceMonitorEventPayloads interface + +**Signature:** + +```typescript +export interface PerformanceMonitorEventPayloads +``` + +## Properties + + + + + +
+ +Property + + + + +Modifiers + + + + +Type + + + + +Description + + +
+ +["PERFORMANCE\_MONITOR.SNAPSHOT"](./server.performancemonitoreventpayloads._performance_monitor.snapshot_.md) + + + + + + + +[PerformanceSnapshot](./server.performancesnapshot.md) + + + + + +
+ +["PERFORMANCE\_MONITOR.SPIKE\_DETECTED"](./server.performancemonitoreventpayloads._performance_monitor.spike_detected_.md) + + + + + + + +[TickReport](./server.tickreport.md) + + + + + +
+ +["PERFORMANCE\_MONITOR.TICK\_REPORT"](./server.performancemonitoreventpayloads._performance_monitor.tick_report_.md) + + + + + + + +[TickReport](./server.tickreport.md) + + + + + +
diff --git a/sdk/docs/server.performancemonitoroptions.historysize.md b/sdk/docs/server.performancemonitoroptions.historysize.md new file mode 100644 index 00000000..d136d55e --- /dev/null +++ b/sdk/docs/server.performancemonitoroptions.historysize.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [PerformanceMonitorOptions](./server.performancemonitoroptions.md) > [historySize](./server.performancemonitoroptions.historysize.md) + +## PerformanceMonitorOptions.historySize property + +**Signature:** + +```typescript +historySize?: number; +``` diff --git a/sdk/docs/server.performancemonitoroptions.md b/sdk/docs/server.performancemonitoroptions.md new file mode 100644 index 00000000..a98af08f --- /dev/null +++ b/sdk/docs/server.performancemonitoroptions.md @@ -0,0 +1,112 @@ + + +[Home](./index.md) > [server](./server.md) > [PerformanceMonitorOptions](./server.performancemonitoroptions.md) + +## PerformanceMonitorOptions interface + +**Signature:** + +```typescript +export interface PerformanceMonitorOptions +``` + +## Properties + + + + + + +
+ +Property + + + + +Modifiers + + + + +Type + + + + +Description + + +
+ +[historySize?](./server.performancemonitoroptions.historysize.md) + + + + + + + +number + + + + +_(Optional)_ + + +
+ +[snapshotIntervalMs?](./server.performancemonitoroptions.snapshotintervalms.md) + + + + + + + +number + + + + +_(Optional)_ + + +
+ +[spikeThresholdMs?](./server.performancemonitoroptions.spikethresholdms.md) + + + + + + + +number + + + + +_(Optional)_ + + +
+ +[tickBudgetMs?](./server.performancemonitoroptions.tickbudgetms.md) + + + + + + + +number + + + + +_(Optional)_ + + +
diff --git a/sdk/docs/server.performancemonitoroptions.snapshotintervalms.md b/sdk/docs/server.performancemonitoroptions.snapshotintervalms.md new file mode 100644 index 00000000..8e85ade8 --- /dev/null +++ b/sdk/docs/server.performancemonitoroptions.snapshotintervalms.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [PerformanceMonitorOptions](./server.performancemonitoroptions.md) > [snapshotIntervalMs](./server.performancemonitoroptions.snapshotintervalms.md) + +## PerformanceMonitorOptions.snapshotIntervalMs property + +**Signature:** + +```typescript +snapshotIntervalMs?: number; +``` diff --git a/sdk/docs/server.performancemonitoroptions.spikethresholdms.md b/sdk/docs/server.performancemonitoroptions.spikethresholdms.md new file mode 100644 index 00000000..42756b06 --- /dev/null +++ b/sdk/docs/server.performancemonitoroptions.spikethresholdms.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [PerformanceMonitorOptions](./server.performancemonitoroptions.md) > [spikeThresholdMs](./server.performancemonitoroptions.spikethresholdms.md) + +## PerformanceMonitorOptions.spikeThresholdMs property + +**Signature:** + +```typescript +spikeThresholdMs?: number; +``` diff --git a/sdk/docs/server.performancemonitoroptions.tickbudgetms.md b/sdk/docs/server.performancemonitoroptions.tickbudgetms.md new file mode 100644 index 00000000..15acd2fb --- /dev/null +++ b/sdk/docs/server.performancemonitoroptions.tickbudgetms.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [PerformanceMonitorOptions](./server.performancemonitoroptions.md) > [tickBudgetMs](./server.performancemonitoroptions.tickbudgetms.md) + +## PerformanceMonitorOptions.tickBudgetMs property + +**Signature:** + +```typescript +tickBudgetMs?: number; +``` diff --git a/sdk/docs/server.performancesnapshot.avgtickms.md b/sdk/docs/server.performancesnapshot.avgtickms.md new file mode 100644 index 00000000..6ef84ae7 --- /dev/null +++ b/sdk/docs/server.performancesnapshot.avgtickms.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [PerformanceSnapshot](./server.performancesnapshot.md) > [avgTickMs](./server.performancesnapshot.avgtickms.md) + +## PerformanceSnapshot.avgTickMs property + +**Signature:** + +```typescript +avgTickMs: number; +``` diff --git a/sdk/docs/server.performancesnapshot.budgetms.md b/sdk/docs/server.performancesnapshot.budgetms.md new file mode 100644 index 00000000..4b405481 --- /dev/null +++ b/sdk/docs/server.performancesnapshot.budgetms.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [PerformanceSnapshot](./server.performancesnapshot.md) > [budgetMs](./server.performancesnapshot.budgetms.md) + +## PerformanceSnapshot.budgetMs property + +**Signature:** + +```typescript +budgetMs: number; +``` diff --git a/sdk/docs/server.performancesnapshot.maxtickms.md b/sdk/docs/server.performancesnapshot.maxtickms.md new file mode 100644 index 00000000..2d8d420e --- /dev/null +++ b/sdk/docs/server.performancesnapshot.maxtickms.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [PerformanceSnapshot](./server.performancesnapshot.md) > [maxTickMs](./server.performancesnapshot.maxtickms.md) + +## PerformanceSnapshot.maxTickMs property + +**Signature:** + +```typescript +maxTickMs: number; +``` diff --git a/sdk/docs/server.performancesnapshot.md b/sdk/docs/server.performancesnapshot.md new file mode 100644 index 00000000..6712ec4a --- /dev/null +++ b/sdk/docs/server.performancesnapshot.md @@ -0,0 +1,223 @@ + + +[Home](./index.md) > [server](./server.md) > [PerformanceSnapshot](./server.performancesnapshot.md) + +## PerformanceSnapshot interface + +**Signature:** + +```typescript +export interface PerformanceSnapshot +``` + +## Properties + + + + + + + + + + + + + +
+ +Property + + + + +Modifiers + + + + +Type + + + + +Description + + +
+ +[avgTickMs](./server.performancesnapshot.avgtickms.md) + + + + + + + +number + + + + + +
+ +[budgetMs](./server.performancesnapshot.budgetms.md) + + + + + + + +number + + + + + +
+ +[maxTickMs](./server.performancesnapshot.maxtickms.md) + + + + + + + +number + + + + + +
+ +[memory](./server.performancesnapshot.memory.md) + + + + + + + +{ heapUsedMb: number; heapTotalMb: number; rssMb: number; } + + + + + +
+ +[operations](./server.performancesnapshot.operations.md) + + + + + + + +Record<string, [OperationStats](./server.operationstats.md)> + + + + + +
+ +[p95TickMs](./server.performancesnapshot.p95tickms.md) + + + + + + + +number + + + + + +
+ +[p99TickMs](./server.performancesnapshot.p99tickms.md) + + + + + + + +number + + + + + +
+ +[tickRate](./server.performancesnapshot.tickrate.md) + + + + + + + +number + + + + + +
+ +[ticksOverBudget](./server.performancesnapshot.ticksoverbudget.md) + + + + + + + +number + + + + + +
+ +[totalTicks](./server.performancesnapshot.totalticks.md) + + + + + + + +number + + + + + +
+ +[uptimeMs](./server.performancesnapshot.uptimems.md) + + + + + + + +number + + + + + +
diff --git a/sdk/docs/server.performancesnapshot.memory.md b/sdk/docs/server.performancesnapshot.memory.md new file mode 100644 index 00000000..1a155f40 --- /dev/null +++ b/sdk/docs/server.performancesnapshot.memory.md @@ -0,0 +1,15 @@ + + +[Home](./index.md) > [server](./server.md) > [PerformanceSnapshot](./server.performancesnapshot.md) > [memory](./server.performancesnapshot.memory.md) + +## PerformanceSnapshot.memory property + +**Signature:** + +```typescript +memory: { + heapUsedMb: number; + heapTotalMb: number; + rssMb: number; + }; +``` diff --git a/sdk/docs/server.performancesnapshot.operations.md b/sdk/docs/server.performancesnapshot.operations.md new file mode 100644 index 00000000..97ad7afa --- /dev/null +++ b/sdk/docs/server.performancesnapshot.operations.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [PerformanceSnapshot](./server.performancesnapshot.md) > [operations](./server.performancesnapshot.operations.md) + +## PerformanceSnapshot.operations property + +**Signature:** + +```typescript +operations: Record; +``` diff --git a/sdk/docs/server.performancesnapshot.p95tickms.md b/sdk/docs/server.performancesnapshot.p95tickms.md new file mode 100644 index 00000000..7b90852f --- /dev/null +++ b/sdk/docs/server.performancesnapshot.p95tickms.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [PerformanceSnapshot](./server.performancesnapshot.md) > [p95TickMs](./server.performancesnapshot.p95tickms.md) + +## PerformanceSnapshot.p95TickMs property + +**Signature:** + +```typescript +p95TickMs: number; +``` diff --git a/sdk/docs/server.performancesnapshot.p99tickms.md b/sdk/docs/server.performancesnapshot.p99tickms.md new file mode 100644 index 00000000..a3e298e9 --- /dev/null +++ b/sdk/docs/server.performancesnapshot.p99tickms.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [PerformanceSnapshot](./server.performancesnapshot.md) > [p99TickMs](./server.performancesnapshot.p99tickms.md) + +## PerformanceSnapshot.p99TickMs property + +**Signature:** + +```typescript +p99TickMs: number; +``` diff --git a/sdk/docs/server.performancesnapshot.tickrate.md b/sdk/docs/server.performancesnapshot.tickrate.md new file mode 100644 index 00000000..e0917761 --- /dev/null +++ b/sdk/docs/server.performancesnapshot.tickrate.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [PerformanceSnapshot](./server.performancesnapshot.md) > [tickRate](./server.performancesnapshot.tickrate.md) + +## PerformanceSnapshot.tickRate property + +**Signature:** + +```typescript +tickRate: number; +``` diff --git a/sdk/docs/server.performancesnapshot.ticksoverbudget.md b/sdk/docs/server.performancesnapshot.ticksoverbudget.md new file mode 100644 index 00000000..62de23a3 --- /dev/null +++ b/sdk/docs/server.performancesnapshot.ticksoverbudget.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [PerformanceSnapshot](./server.performancesnapshot.md) > [ticksOverBudget](./server.performancesnapshot.ticksoverbudget.md) + +## PerformanceSnapshot.ticksOverBudget property + +**Signature:** + +```typescript +ticksOverBudget: number; +``` diff --git a/sdk/docs/server.performancesnapshot.totalticks.md b/sdk/docs/server.performancesnapshot.totalticks.md new file mode 100644 index 00000000..d69f6197 --- /dev/null +++ b/sdk/docs/server.performancesnapshot.totalticks.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [PerformanceSnapshot](./server.performancesnapshot.md) > [totalTicks](./server.performancesnapshot.totalticks.md) + +## PerformanceSnapshot.totalTicks property + +**Signature:** + +```typescript +totalTicks: number; +``` diff --git a/sdk/docs/server.performancesnapshot.uptimems.md b/sdk/docs/server.performancesnapshot.uptimems.md new file mode 100644 index 00000000..fa9b7cc8 --- /dev/null +++ b/sdk/docs/server.performancesnapshot.uptimems.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [PerformanceSnapshot](./server.performancesnapshot.md) > [uptimeMs](./server.performancesnapshot.uptimems.md) + +## PerformanceSnapshot.uptimeMs property + +**Signature:** + +```typescript +uptimeMs: number; +``` diff --git a/sdk/docs/server.randomwalkbehavior._constructor_.md b/sdk/docs/server.randomwalkbehavior._constructor_.md new file mode 100644 index 00000000..e8804cdb --- /dev/null +++ b/sdk/docs/server.randomwalkbehavior._constructor_.md @@ -0,0 +1,49 @@ + + +[Home](./index.md) > [server](./server.md) > [RandomWalkBehavior](./server.randomwalkbehavior.md) > [(constructor)](./server.randomwalkbehavior._constructor_.md) + +## RandomWalkBehavior.(constructor) + +Constructs a new instance of the `RandomWalkBehavior` class + +**Signature:** + +```typescript +constructor(options?: RandomWalkOptions); +``` + +## Parameters + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +options + + + + +[RandomWalkOptions](./server.randomwalkoptions.md) + + + + +_(Optional)_ + + +
diff --git a/sdk/docs/server.randomwalkbehavior.md b/sdk/docs/server.randomwalkbehavior.md new file mode 100644 index 00000000..5280047f --- /dev/null +++ b/sdk/docs/server.randomwalkbehavior.md @@ -0,0 +1,122 @@ + + +[Home](./index.md) > [server](./server.md) > [RandomWalkBehavior](./server.randomwalkbehavior.md) + +## RandomWalkBehavior class + +**Signature:** + +```typescript +export default class RandomWalkBehavior implements BotBehavior +``` +**Implements:** [BotBehavior](./server.botbehavior.md) + +## Constructors + + + +
+ +Constructor + + + + +Modifiers + + + + +Description + + +
+ +[(constructor)(options)](./server.randomwalkbehavior._constructor_.md) + + + + + + + +Constructs a new instance of the `RandomWalkBehavior` class + + +
+ +## Properties + + + +
+ +Property + + + + +Modifiers + + + + +Type + + + + +Description + + +
+ +[name](./server.randomwalkbehavior.name.md) + + + + +`readonly` + + + + +(not declared) + + + + + +
+ +## Methods + + + +
+ +Method + + + + +Modifiers + + + + +Description + + +
+ +[tick(bot, \_world, deltaTimeMs)](./server.randomwalkbehavior.tick.md) + + + + + + + + +
diff --git a/sdk/docs/server.randomwalkbehavior.name.md b/sdk/docs/server.randomwalkbehavior.name.md new file mode 100644 index 00000000..dc6df1e4 --- /dev/null +++ b/sdk/docs/server.randomwalkbehavior.name.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [RandomWalkBehavior](./server.randomwalkbehavior.md) > [name](./server.randomwalkbehavior.name.md) + +## RandomWalkBehavior.name property + +**Signature:** + +```typescript +readonly name = "random_walk"; +``` diff --git a/sdk/docs/server.randomwalkbehavior.tick.md b/sdk/docs/server.randomwalkbehavior.tick.md new file mode 100644 index 00000000..23c2afa4 --- /dev/null +++ b/sdk/docs/server.randomwalkbehavior.tick.md @@ -0,0 +1,77 @@ + + +[Home](./index.md) > [server](./server.md) > [RandomWalkBehavior](./server.randomwalkbehavior.md) > [tick](./server.randomwalkbehavior.tick.md) + +## RandomWalkBehavior.tick() method + +**Signature:** + +```typescript +tick(bot: BotPlayer, _world: World, deltaTimeMs: number): void; +``` + +## Parameters + + + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +bot + + + + +[BotPlayer](./server.botplayer.md) + + + + + +
+ +\_world + + + + +[World](./server.world.md) + + + + + +
+ +deltaTimeMs + + + + +number + + + + + +
+**Returns:** + +void + diff --git a/sdk/docs/server.randomwalkoptions.changedirectionintervalms.md b/sdk/docs/server.randomwalkoptions.changedirectionintervalms.md new file mode 100644 index 00000000..2d2dc147 --- /dev/null +++ b/sdk/docs/server.randomwalkoptions.changedirectionintervalms.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [RandomWalkOptions](./server.randomwalkoptions.md) > [changeDirectionIntervalMs](./server.randomwalkoptions.changedirectionintervalms.md) + +## RandomWalkOptions.changeDirectionIntervalMs property + +**Signature:** + +```typescript +changeDirectionIntervalMs?: number; +``` diff --git a/sdk/docs/server.randomwalkoptions.md b/sdk/docs/server.randomwalkoptions.md new file mode 100644 index 00000000..abe61a2a --- /dev/null +++ b/sdk/docs/server.randomwalkoptions.md @@ -0,0 +1,93 @@ + + +[Home](./index.md) > [server](./server.md) > [RandomWalkOptions](./server.randomwalkoptions.md) + +## RandomWalkOptions interface + +**Signature:** + +```typescript +export interface RandomWalkOptions +``` + +## Properties + + + + + +
+ +Property + + + + +Modifiers + + + + +Type + + + + +Description + + +
+ +[changeDirectionIntervalMs?](./server.randomwalkoptions.changedirectionintervalms.md) + + + + + + + +number + + + + +_(Optional)_ + + +
+ +[moveRadius?](./server.randomwalkoptions.moveradius.md) + + + + + + + +number + + + + +_(Optional)_ + + +
+ +[moveSpeed?](./server.randomwalkoptions.movespeed.md) + + + + + + + +number + + + + +_(Optional)_ + + +
diff --git a/sdk/docs/server.randomwalkoptions.moveradius.md b/sdk/docs/server.randomwalkoptions.moveradius.md new file mode 100644 index 00000000..800d6640 --- /dev/null +++ b/sdk/docs/server.randomwalkoptions.moveradius.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [RandomWalkOptions](./server.randomwalkoptions.md) > [moveRadius](./server.randomwalkoptions.moveradius.md) + +## RandomWalkOptions.moveRadius property + +**Signature:** + +```typescript +moveRadius?: number; +``` diff --git a/sdk/docs/server.randomwalkoptions.movespeed.md b/sdk/docs/server.randomwalkoptions.movespeed.md new file mode 100644 index 00000000..fbafc3a5 --- /dev/null +++ b/sdk/docs/server.randomwalkoptions.movespeed.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [RandomWalkOptions](./server.randomwalkoptions.md) > [moveSpeed](./server.randomwalkoptions.movespeed.md) + +## RandomWalkOptions.moveSpeed property + +**Signature:** + +```typescript +moveSpeed?: number; +``` diff --git a/sdk/docs/server.tickreport.budgetms.md b/sdk/docs/server.tickreport.budgetms.md new file mode 100644 index 00000000..8ed95793 --- /dev/null +++ b/sdk/docs/server.tickreport.budgetms.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [TickReport](./server.tickreport.md) > [budgetMs](./server.tickreport.budgetms.md) + +## TickReport.budgetMs property + +**Signature:** + +```typescript +budgetMs: number; +``` diff --git a/sdk/docs/server.tickreport.budgetpercent.md b/sdk/docs/server.tickreport.budgetpercent.md new file mode 100644 index 00000000..6b56cc33 --- /dev/null +++ b/sdk/docs/server.tickreport.budgetpercent.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [TickReport](./server.tickreport.md) > [budgetPercent](./server.tickreport.budgetpercent.md) + +## TickReport.budgetPercent property + +**Signature:** + +```typescript +budgetPercent: number; +``` diff --git a/sdk/docs/server.tickreport.durationms.md b/sdk/docs/server.tickreport.durationms.md new file mode 100644 index 00000000..6606d995 --- /dev/null +++ b/sdk/docs/server.tickreport.durationms.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [TickReport](./server.tickreport.md) > [durationMs](./server.tickreport.durationms.md) + +## TickReport.durationMs property + +**Signature:** + +```typescript +durationMs: number; +``` diff --git a/sdk/docs/server.tickreport.entitycount.md b/sdk/docs/server.tickreport.entitycount.md new file mode 100644 index 00000000..d5eddcfa --- /dev/null +++ b/sdk/docs/server.tickreport.entitycount.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [TickReport](./server.tickreport.md) > [entityCount](./server.tickreport.entitycount.md) + +## TickReport.entityCount property + +**Signature:** + +```typescript +entityCount: number; +``` diff --git a/sdk/docs/server.tickreport.heapusedmb.md b/sdk/docs/server.tickreport.heapusedmb.md new file mode 100644 index 00000000..429f20b0 --- /dev/null +++ b/sdk/docs/server.tickreport.heapusedmb.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [TickReport](./server.tickreport.md) > [heapUsedMb](./server.tickreport.heapusedmb.md) + +## TickReport.heapUsedMb property + +**Signature:** + +```typescript +heapUsedMb: number; +``` diff --git a/sdk/docs/server.tickreport.md b/sdk/docs/server.tickreport.md new file mode 100644 index 00000000..5008f106 --- /dev/null +++ b/sdk/docs/server.tickreport.md @@ -0,0 +1,172 @@ + + +[Home](./index.md) > [server](./server.md) > [TickReport](./server.tickreport.md) + +## TickReport interface + +**Signature:** + +```typescript +export interface TickReport +``` + +## Properties + + + + + + + + + + +
+ +Property + + + + +Modifiers + + + + +Type + + + + +Description + + +
+ +[budgetMs](./server.tickreport.budgetms.md) + + + + + + + +number + + + + + +
+ +[budgetPercent](./server.tickreport.budgetpercent.md) + + + + + + + +number + + + + + +
+ +[durationMs](./server.tickreport.durationms.md) + + + + + + + +number + + + + + +
+ +[entityCount](./server.tickreport.entitycount.md) + + + + + + + +number + + + + + +
+ +[heapUsedMb](./server.tickreport.heapusedmb.md) + + + + + + + +number + + + + + +
+ +[phases](./server.tickreport.phases.md) + + + + + + + +Record<string, number> + + + + + +
+ +[playerCount](./server.tickreport.playercount.md) + + + + + + + +number + + + + + +
+ +[tick](./server.tickreport.tick.md) + + + + + + + +number + + + + + +
diff --git a/sdk/docs/server.tickreport.phases.md b/sdk/docs/server.tickreport.phases.md new file mode 100644 index 00000000..7cf7a2d8 --- /dev/null +++ b/sdk/docs/server.tickreport.phases.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [TickReport](./server.tickreport.md) > [phases](./server.tickreport.phases.md) + +## TickReport.phases property + +**Signature:** + +```typescript +phases: Record; +``` diff --git a/sdk/docs/server.tickreport.playercount.md b/sdk/docs/server.tickreport.playercount.md new file mode 100644 index 00000000..0891958b --- /dev/null +++ b/sdk/docs/server.tickreport.playercount.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [TickReport](./server.tickreport.md) > [playerCount](./server.tickreport.playercount.md) + +## TickReport.playerCount property + +**Signature:** + +```typescript +playerCount: number; +``` diff --git a/sdk/docs/server.tickreport.tick.md b/sdk/docs/server.tickreport.tick.md new file mode 100644 index 00000000..6ff6cb8a --- /dev/null +++ b/sdk/docs/server.tickreport.tick.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [TickReport](./server.tickreport.md) > [tick](./server.tickreport.tick.md) + +## TickReport.tick property + +**Signature:** + +```typescript +tick: number; +``` diff --git a/sdk/server.api.json b/sdk/server.api.json index acb8833c..ce872fcc 100644 --- a/sdk/server.api.json +++ b/sdk/server.api.json @@ -6748,40 +6748,31 @@ }, { "kind": "Interface", - "canonicalReference": "server!CapsuleColliderOptions:interface", - "docComment": "/**\n * The options for a capsule collider.\n *\n * Use for: capsule-shaped colliders. Do NOT use for: other shapes; use the matching collider option type.\n *\n * **Category:** Physics\n *\n * @public\n */\n", + "canonicalReference": "server!BotBehavior:interface", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "export interface CapsuleColliderOptions extends " - }, - { - "kind": "Reference", - "text": "BaseColliderOptions", - "canonicalReference": "server!BaseColliderOptions:interface" - }, - { - "kind": "Content", - "text": " " + "text": "export interface BotBehavior " } ], - "fileUrlPath": "src/worlds/physics/Collider.ts", + "fileUrlPath": "src/bots/BotPlayer.ts", "releaseTag": "Public", - "name": "CapsuleColliderOptions", + "name": "BotBehavior", "preserveMemberOrder": false, "members": [ { "kind": "PropertySignature", - "canonicalReference": "server!CapsuleColliderOptions#halfHeight:member", - "docComment": "/**\n * The half height of the capsule collider.\n *\n * **Category:** Physics\n */\n", + "canonicalReference": "server!BotBehavior#name:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "halfHeight?: " + "text": "name: " }, { "kind": "Content", - "text": "number" + "text": "string" }, { "kind": "Content", @@ -6789,290 +6780,185 @@ } ], "isReadonly": false, - "isOptional": true, + "isOptional": false, "releaseTag": "Public", - "name": "halfHeight", + "name": "name", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 } }, { - "kind": "PropertySignature", - "canonicalReference": "server!CapsuleColliderOptions#radius:member", - "docComment": "/**\n * The radius of the capsule collider.\n *\n * **Category:** Physics\n */\n", + "kind": "MethodSignature", + "canonicalReference": "server!BotBehavior#tick:member(1)", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "radius?: " + "text": "tick(bot: " }, { - "kind": "Content", - "text": "number" + "kind": "Reference", + "text": "BotPlayer", + "canonicalReference": "server!BotPlayer:class" }, { "kind": "Content", - "text": ";" - } - ], - "isReadonly": false, - "isOptional": true, - "releaseTag": "Public", - "name": "radius", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } - }, - { - "kind": "PropertySignature", - "canonicalReference": "server!CapsuleColliderOptions#shape:member", - "docComment": "", - "excerptTokens": [ + "text": ", world: " + }, + { + "kind": "Reference", + "text": "World", + "canonicalReference": "server!World:class" + }, { "kind": "Content", - "text": "shape: " + "text": ", deltaTimeMs: " }, { - "kind": "Reference", - "text": "ColliderShape.CAPSULE", - "canonicalReference": "server!ColliderShape.CAPSULE:member" + "kind": "Content", + "text": "number" }, { "kind": "Content", - "text": ";" - } - ], - "isReadonly": false, - "isOptional": false, - "releaseTag": "Public", - "name": "shape", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } - } - ], - "extendsTokenRanges": [ - { - "startIndex": 1, - "endIndex": 2 - } - ] - }, - { - "kind": "Enum", - "canonicalReference": "server!ChatEvent:enum", - "docComment": "/**\n * Event types a ChatManager instance can emit.\n *\n * See `ChatEventPayloads` for the payloads.\n *\n * **Category:** Events\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export declare enum ChatEvent " - } - ], - "fileUrlPath": "src/worlds/chat/ChatManager.ts", - "releaseTag": "Public", - "name": "ChatEvent", - "preserveMemberOrder": false, - "members": [ - { - "kind": "EnumMember", - "canonicalReference": "server!ChatEvent.BROADCAST_MESSAGE:member", - "docComment": "", - "excerptTokens": [ + "text": "): " + }, { "kind": "Content", - "text": "BROADCAST_MESSAGE = " + "text": "void" }, { "kind": "Content", - "text": "\"CHAT.BROADCAST_MESSAGE\"" + "text": ";" } ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 + "isOptional": false, + "returnTypeTokenRange": { + "startIndex": 7, + "endIndex": 8 }, "releaseTag": "Public", - "name": "BROADCAST_MESSAGE" - }, - { - "kind": "EnumMember", - "canonicalReference": "server!ChatEvent.PLAYER_MESSAGE:member", - "docComment": "", - "excerptTokens": [ + "overloadIndex": 1, + "parameters": [ { - "kind": "Content", - "text": "PLAYER_MESSAGE = " + "parameterName": "bot", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false }, { - "kind": "Content", - "text": "\"CHAT.PLAYER_MESSAGE\"" + "parameterName": "world", + "parameterTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "isOptional": false + }, + { + "parameterName": "deltaTimeMs", + "parameterTypeTokenRange": { + "startIndex": 5, + "endIndex": 6 + }, + "isOptional": false } ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "releaseTag": "Public", - "name": "PLAYER_MESSAGE" + "name": "tick" } - ] + ], + "extendsTokenRanges": [] }, { - "kind": "Interface", - "canonicalReference": "server!ChatEventPayloads:interface", - "docComment": "/**\n * Event payloads for ChatManager emitted events.\n *\n * **Category:** Events\n *\n * @public\n */\n", + "kind": "Class", + "canonicalReference": "server!BotManager:class", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "export interface ChatEventPayloads " + "text": "export default class BotManager " } ], - "fileUrlPath": "src/worlds/chat/ChatManager.ts", + "fileUrlPath": "src/bots/BotManager.ts", "releaseTag": "Public", - "name": "ChatEventPayloads", + "isAbstract": false, + "name": "BotManager", "preserveMemberOrder": false, "members": [ { - "kind": "PropertySignature", - "canonicalReference": "server!ChatEventPayloads#\"CHAT.BROADCAST_MESSAGE\":member", - "docComment": "/**\n * Emitted when a broadcast message is sent.\n */\n", + "kind": "Property", + "canonicalReference": "server!BotManager#botCount:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "ChatEvent.BROADCAST_MESSAGE", - "canonicalReference": "server!ChatEvent.BROADCAST_MESSAGE:member" - }, - { - "kind": "Content", - "text": "]: " - }, - { - "kind": "Content", - "text": "{\n player: " - }, - { - "kind": "Reference", - "text": "Player", - "canonicalReference": "server!Player:class" + "text": "get botCount(): " }, { "kind": "Content", - "text": " | undefined;\n message: string;\n color?: string;\n }" + "text": "number" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, + "isReadonly": true, "isOptional": false, "releaseTag": "Public", - "name": "\"CHAT.BROADCAST_MESSAGE\"", + "name": "botCount", "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 6 - } + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!ChatEventPayloads#\"CHAT.PLAYER_MESSAGE\":member", - "docComment": "/**\n * Emitted when a message is sent to a specific player.\n */\n", + "kind": "Method", + "canonicalReference": "server!BotManager#despawnAll:member(1)", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "ChatEvent.PLAYER_MESSAGE", - "canonicalReference": "server!ChatEvent.PLAYER_MESSAGE:member" - }, - { - "kind": "Content", - "text": "]: " - }, - { - "kind": "Content", - "text": "{\n player: " - }, - { - "kind": "Reference", - "text": "Player", - "canonicalReference": "server!Player:class" + "text": "despawnAll(): " }, { "kind": "Content", - "text": ";\n message: string;\n color?: string;\n }" + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": false, + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, "releaseTag": "Public", - "name": "\"CHAT.PLAYER_MESSAGE\"", - "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 6 - } - } - ], - "extendsTokenRanges": [] - }, - { - "kind": "Class", - "canonicalReference": "server!ChatManager:class", - "docComment": "/**\n * Manages chat and commands in a world.\n *\n * When to use: broadcasting chat, sending system messages, or registering chat commands. Do NOT use for: player HUD/menus; use `PlayerUI` for rich UI.\n *\n * @remarks\n *\n * The ChatManager is created internally as a singleton for each `World` instance in a game server. The ChatManager allows you to broadcast messages, send messages to specific players, and register commands that can be used in chat to execute game logic.\n *\n * Pattern: register commands during world initialization and keep callbacks fast. Anti-pattern: assuming commands are permission-checked; always validate access in callbacks.\n *\n *

Events

\n *\n * This class is an EventRouter, and instances of it emit events with payloads listed under `ChatEventPayloads`\n *\n * The constructor for this class is marked as internal. Third-party code should not call the constructor directly or create subclasses that extend the `ChatManager` class.\n *\n * @example\n * ```typescript\n * world.chatManager.registerCommand('/kick', (player, args, message) => {\n * const admins = [ 'arkdev', 'testuser123' ];\n * if (admins.includes(player.username)) {\n * const targetUsername = args[0];\n * const targetPlayer = world.playerManager.getConnectedPlayerByUsername(targetUsername);\n *\n * if (targetPlayer) {\n * targetPlayer.disconnect();\n * }\n * }\n * });\n * ```\n *\n * **Category:** Chat\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export default class ChatManager extends " - }, - { - "kind": "Reference", - "text": "EventRouter", - "canonicalReference": "server!EventRouter:class" + "isProtected": false, + "overloadIndex": 1, + "parameters": [], + "isOptional": false, + "isAbstract": false, + "name": "despawnAll" }, - { - "kind": "Content", - "text": " " - } - ], - "fileUrlPath": "src/worlds/chat/ChatManager.ts", - "releaseTag": "Public", - "isAbstract": false, - "name": "ChatManager", - "preserveMemberOrder": false, - "members": [ { "kind": "Method", - "canonicalReference": "server!ChatManager#handleCommand:member(1)", - "docComment": "/**\n * Handle a command if it exists.\n *\n * @remarks\n *\n * The command is parsed as the first space-delimited token in the message.\n *\n * **Category:** Chat\n *\n * @param player - The player that sent the command.\n *\n * @param message - The full message.\n *\n * @returns True if a command was handled, false otherwise.\n */\n", + "canonicalReference": "server!BotManager#despawnBot:member(1)", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "handleCommand(player: " - }, - { - "kind": "Reference", - "text": "Player", - "canonicalReference": "server!Player:class" - }, - { - "kind": "Content", - "text": ", message: " + "text": "despawnBot(id: " }, { "kind": "Content", - "text": "string" + "text": "number" }, { "kind": "Content", @@ -7080,7 +6966,7 @@ }, { "kind": "Content", - "text": "boolean" + "text": "void" }, { "kind": "Content", @@ -7089,63 +6975,87 @@ ], "isStatic": false, "returnTypeTokenRange": { - "startIndex": 5, - "endIndex": 6 + "startIndex": 3, + "endIndex": 4 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, "parameters": [ { - "parameterName": "player", + "parameterName": "id", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, "isOptional": false - }, - { - "parameterName": "message", - "parameterTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "isOptional": false } ], "isOptional": false, "isAbstract": false, - "name": "handleCommand" + "name": "despawnBot" }, { "kind": "Method", - "canonicalReference": "server!ChatManager#registerCommand:member(1)", - "docComment": "/**\n * Register a command and its callback.\n *\n * @remarks\n *\n * Commands are matched by exact string equality against the first token in a chat message.\n *\n * @param command - The command to register.\n *\n * @param callback - The callback function to execute when the command is used.\n *\n * **Requires:** Use a consistent command prefix (for example, `/kick`) if you want slash commands.\n *\n * @see\n *\n * `ChatManager.unregisterCommand`\n *\n * **Category:** Chat\n */\n", + "canonicalReference": "server!BotManager#getAllBots:member(1)", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "registerCommand(command: " + "text": "getAllBots(): " + }, + { + "kind": "Reference", + "text": "BotPlayer", + "canonicalReference": "server!BotPlayer:class" }, { "kind": "Content", - "text": "string" + "text": "[]" }, { "kind": "Content", - "text": ", callback: " + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 1, + "endIndex": 3 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [], + "isOptional": false, + "isAbstract": false, + "name": "getAllBots" + }, + { + "kind": "Method", + "canonicalReference": "server!BotManager#getBot:member(1)", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "getBot(id: " }, { - "kind": "Reference", - "text": "CommandCallback", - "canonicalReference": "server!CommandCallback:type" + "kind": "Content", + "text": "number" }, { "kind": "Content", "text": "): " }, + { + "kind": "Reference", + "text": "BotPlayer", + "canonicalReference": "server!BotPlayer:class" + }, { "kind": "Content", - "text": "void" + "text": " | undefined" }, { "kind": "Content", @@ -7154,62 +7064,88 @@ ], "isStatic": false, "returnTypeTokenRange": { - "startIndex": 5, - "endIndex": 6 + "startIndex": 3, + "endIndex": 5 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, "parameters": [ { - "parameterName": "command", + "parameterName": "id", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "getBot" + }, + { + "kind": "Property", + "canonicalReference": "server!BotManager.instance:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "static get instance(): " }, { - "parameterName": "callback", - "parameterTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "isOptional": false + "kind": "Reference", + "text": "BotManager", + "canonicalReference": "server!BotManager:class" + }, + { + "kind": "Content", + "text": ";" } ], + "isReadonly": true, "isOptional": false, - "isAbstract": false, - "name": "registerCommand" + "releaseTag": "Public", + "name": "instance", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": true, + "isProtected": false, + "isAbstract": false }, { "kind": "Method", - "canonicalReference": "server!ChatManager#sendBroadcastMessage:member(1)", - "docComment": "/**\n * Send a system broadcast message to all players in the world.\n *\n * @param message - The message to send.\n *\n * @param color - The color of the message as a hex color code, excluding #.\n *\n * @example\n * ```typescript\n * chatManager.sendBroadcastMessage('Hello, world!', 'FF00AA');\n * ```\n *\n * **Side effects:** Emits `ChatEvent.BROADCAST_MESSAGE` for network sync.\n *\n * @see\n *\n * `ChatManager.sendPlayerMessage`\n *\n * **Category:** Chat\n */\n", + "canonicalReference": "server!BotManager#spawnBot:member(1)", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "sendBroadcastMessage(message: " + "text": "spawnBot(world: " }, { - "kind": "Content", - "text": "string" + "kind": "Reference", + "text": "World", + "canonicalReference": "server!World:class" }, { "kind": "Content", - "text": ", color?: " + "text": ", options?: " }, { - "kind": "Content", - "text": "string" + "kind": "Reference", + "text": "BotPlayerOptions", + "canonicalReference": "server!BotPlayerOptions:interface" }, { "kind": "Content", "text": "): " }, { - "kind": "Content", - "text": "void" + "kind": "Reference", + "text": "BotPlayer", + "canonicalReference": "server!BotPlayer:class" }, { "kind": "Content", @@ -7226,7 +7162,7 @@ "overloadIndex": 1, "parameters": [ { - "parameterName": "message", + "parameterName": "world", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -7234,7 +7170,7 @@ "isOptional": false }, { - "parameterName": "color", + "parameterName": "options", "parameterTypeTokenRange": { "startIndex": 3, "endIndex": 4 @@ -7244,45 +7180,51 @@ ], "isOptional": false, "isAbstract": false, - "name": "sendBroadcastMessage" + "name": "spawnBot" }, { "kind": "Method", - "canonicalReference": "server!ChatManager#sendPlayerMessage:member(1)", - "docComment": "/**\n * Send a system message to a specific player, only visible to them.\n *\n * @param player - The player to send the message to.\n *\n * @param message - The message to send.\n *\n * @param color - The color of the message as a hex color code, excluding #.\n *\n * @example\n * ```typescript\n * chatManager.sendPlayerMessage(player, 'Hello, player!', 'FF00AA');\n * ```\n *\n * **Side effects:** Emits `ChatEvent.PLAYER_MESSAGE` for network sync.\n *\n * @see\n *\n * `ChatManager.sendBroadcastMessage`\n *\n * **Category:** Chat\n */\n", + "canonicalReference": "server!BotManager#spawnBots:member(1)", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "sendPlayerMessage(player: " + "text": "spawnBots(world: " }, { "kind": "Reference", - "text": "Player", - "canonicalReference": "server!Player:class" + "text": "World", + "canonicalReference": "server!World:class" }, { "kind": "Content", - "text": ", message: " + "text": ", count: " }, { "kind": "Content", - "text": "string" + "text": "number" }, { "kind": "Content", - "text": ", color?: " + "text": ", options?: " }, { - "kind": "Content", - "text": "string" + "kind": "Reference", + "text": "BotPlayerOptions", + "canonicalReference": "server!BotPlayerOptions:interface" }, { "kind": "Content", "text": "): " }, + { + "kind": "Reference", + "text": "BotPlayer", + "canonicalReference": "server!BotPlayer:class" + }, { "kind": "Content", - "text": "void" + "text": "[]" }, { "kind": "Content", @@ -7292,14 +7234,14 @@ "isStatic": false, "returnTypeTokenRange": { "startIndex": 7, - "endIndex": 8 + "endIndex": 9 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, "parameters": [ { - "parameterName": "player", + "parameterName": "world", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -7307,7 +7249,7 @@ "isOptional": false }, { - "parameterName": "message", + "parameterName": "count", "parameterTypeTokenRange": { "startIndex": 3, "endIndex": 4 @@ -7315,7 +7257,7 @@ "isOptional": false }, { - "parameterName": "color", + "parameterName": "options", "parameterTypeTokenRange": { "startIndex": 5, "endIndex": 6 @@ -7325,205 +7267,152 @@ ], "isOptional": false, "isAbstract": false, - "name": "sendPlayerMessage" - }, + "name": "spawnBots" + } + ], + "implementsTokenRanges": [] + }, + { + "kind": "Class", + "canonicalReference": "server!BotPlayer:class", + "docComment": "", + "excerptTokens": [ { - "kind": "Method", - "canonicalReference": "server!ChatManager#unregisterCommand:member(1)", - "docComment": "/**\n * Unregister a command.\n *\n * @param command - The command to unregister.\n *\n * @see\n *\n * `ChatManager.registerCommand`\n *\n * **Category:** Chat\n */\n", + "kind": "Content", + "text": "export default class BotPlayer " + } + ], + "fileUrlPath": "src/bots/BotPlayer.ts", + "releaseTag": "Public", + "isAbstract": false, + "name": "BotPlayer", + "preserveMemberOrder": false, + "members": [ + { + "kind": "Constructor", + "canonicalReference": "server!BotPlayer:constructor(1)", + "docComment": "/**\n * Constructs a new instance of the `BotPlayer` class\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "unregisterCommand(command: " + "text": "constructor(world: " }, { - "kind": "Content", - "text": "string" + "kind": "Reference", + "text": "World", + "canonicalReference": "server!World:class" }, { "kind": "Content", - "text": "): " + "text": ", options?: " }, { - "kind": "Content", - "text": "void" + "kind": "Reference", + "text": "BotPlayerOptions", + "canonicalReference": "server!BotPlayerOptions:interface" }, { "kind": "Content", - "text": ";" + "text": ");" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, "parameters": [ { - "parameterName": "command", + "parameterName": "world", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, "isOptional": false + }, + { + "parameterName": "options", + "parameterTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "isOptional": true } - ], - "isOptional": false, - "isAbstract": false, - "name": "unregisterCommand" - } - ], - "extendsTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "implementsTokenRanges": [] - }, - { - "kind": "Class", - "canonicalReference": "server!Chunk:class", - "docComment": "/**\n * A 16^3 chunk of blocks representing a slice of world terrain.\n *\n * When to use: reading chunk data or working with bulk block operations. Do NOT use for: creating terrain directly; prefer `ChunkLattice`.\n *\n * @remarks\n *\n * Chunks are fixed-size (16×16×16) and store block IDs by local coordinates.\n *\n *

Coordinate System

\n *\n * - **Global (world) coordinates:** integer block positions in world space. - **Chunk origin:** the world coordinate at the chunk's minimum corner (multiples of 16). - **Local coordinates:** 0..15 per axis within the chunk.\n *\n * **Category:** Blocks\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export default class Chunk implements " + ] }, { - "kind": "Reference", - "text": "protocol.Serializable", - "canonicalReference": "@hytopia.com/server-protocol!Serializable:interface" - }, - { - "kind": "Content", - "text": " " - } - ], - "fileUrlPath": "src/worlds/blocks/Chunk.ts", - "releaseTag": "Public", - "isAbstract": false, - "name": "Chunk", - "preserveMemberOrder": false, - "members": [ - { - "kind": "Constructor", - "canonicalReference": "server!Chunk:constructor(1)", - "docComment": "/**\n * Creates a new chunk instance.\n */\n", + "kind": "Property", + "canonicalReference": "server!BotPlayer#controller:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "constructor(originCoordinate: " + "text": "get controller(): " }, { "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "text": "SimpleEntityController", + "canonicalReference": "server!SimpleEntityController:class" }, { "kind": "Content", - "text": ");" + "text": ";" } ], + "isReadonly": true, + "isOptional": false, "releaseTag": "Public", + "name": "controller", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "originCoordinate", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ] + "isAbstract": false }, { "kind": "Method", - "canonicalReference": "server!Chunk.blockIndexToLocalCoordinate:member(1)", - "docComment": "/**\n * Converts a block index to a local coordinate.\n *\n * @param index - The index of the block to convert.\n *\n * @returns The local coordinate of the block.\n *\n * **Category:** Blocks\n */\n", + "canonicalReference": "server!BotPlayer#despawn:member(1)", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "static blockIndexToLocalCoordinate(index: " - }, - { - "kind": "Content", - "text": "number" + "text": "despawn(): " }, { "kind": "Content", - "text": "): " - }, - { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isStatic": true, + "isStatic": false, "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 + "startIndex": 1, + "endIndex": 2 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, - "parameters": [ - { - "parameterName": "index", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], + "parameters": [], "isOptional": false, "isAbstract": false, - "name": "blockIndexToLocalCoordinate" + "name": "despawn" }, { "kind": "Property", - "canonicalReference": "server!Chunk#blockRotations:member", - "docComment": "/**\n * The rotations of the blocks in the chunk as a map of block index to rotation.\n *\n * **Category:** Blocks\n */\n", + "canonicalReference": "server!BotPlayer#entity:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "get blockRotations(): " - }, - { - "kind": "Reference", - "text": "Readonly", - "canonicalReference": "!Readonly:type" - }, - { - "kind": "Content", - "text": "<" - }, - { - "kind": "Reference", - "text": "Map", - "canonicalReference": "!Map:interface" - }, - { - "kind": "Content", - "text": ">" + "text": "Entity", + "canonicalReference": "server!Entity:class" }, { "kind": "Content", @@ -7533,10 +7422,10 @@ "isReadonly": true, "isOptional": false, "releaseTag": "Public", - "name": "blockRotations", + "name": "entity", "propertyTypeTokenRange": { "startIndex": 1, - "endIndex": 7 + "endIndex": 2 }, "isStatic": false, "isProtected": false, @@ -7544,30 +7433,16 @@ }, { "kind": "Property", - "canonicalReference": "server!Chunk#blocks:member", - "docComment": "/**\n * The blocks in the chunk as a flat Uint8Array[4096], each index as 0 or a block type ID.\n *\n * **Category:** Blocks\n */\n", + "canonicalReference": "server!BotPlayer#id:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "get blocks(): " - }, - { - "kind": "Reference", - "text": "Readonly", - "canonicalReference": "!Readonly:type" - }, - { - "kind": "Content", - "text": "<" - }, - { - "kind": "Reference", - "text": "Uint8Array", - "canonicalReference": "!Uint8Array:interface" + "text": "readonly id: " }, { "kind": "Content", - "text": ">" + "text": "number" }, { "kind": "Content", @@ -7577,143 +7452,103 @@ "isReadonly": true, "isOptional": false, "releaseTag": "Public", - "name": "blocks", + "name": "id", "propertyTypeTokenRange": { "startIndex": 1, - "endIndex": 5 + "endIndex": 2 }, "isStatic": false, "isProtected": false, "isAbstract": false }, { - "kind": "Method", - "canonicalReference": "server!Chunk#getBlockId:member(1)", - "docComment": "/**\n * Gets the block type ID at a specific local coordinate.\n *\n * @remarks\n *\n * Expects local coordinates in the range 0..15 for each axis.\n *\n * @param localCoordinate - The local coordinate of the block to get.\n *\n * @returns The block type ID.\n *\n * **Category:** Blocks\n */\n", + "kind": "Property", + "canonicalReference": "server!BotPlayer#isSpawned:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "getBlockId(localCoordinate: " - }, - { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" - }, - { - "kind": "Content", - "text": "): " + "text": "get isSpawned(): " }, { "kind": "Content", - "text": "number" + "text": "boolean" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, + "isReadonly": true, + "isOptional": false, "releaseTag": "Public", + "name": "isSpawned", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "localCoordinate", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "getBlockId" + "isAbstract": false }, { - "kind": "Method", - "canonicalReference": "server!Chunk#getBlockRotation:member(1)", - "docComment": "/**\n * Gets the rotation of a block at a specific local coordinate.\n *\n * @param localCoordinate - The local coordinate of the block to get the rotation of.\n *\n * @returns The rotation of the block (defaults to identity rotation).\n *\n * **Category:** Blocks\n */\n", + "kind": "Property", + "canonicalReference": "server!BotPlayer#name:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "getBlockRotation(localCoordinate: " - }, - { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "text": "readonly name: " }, { "kind": "Content", - "text": "): " - }, - { - "kind": "Reference", - "text": "BlockRotation", - "canonicalReference": "server!BlockRotation:type" + "text": "string" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, + "isReadonly": true, + "isOptional": false, "releaseTag": "Public", + "name": "name", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "localCoordinate", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "getBlockRotation" + "isAbstract": false }, { "kind": "Method", - "canonicalReference": "server!Chunk.globalCoordinateToLocalCoordinate:member(1)", - "docComment": "/**\n * Converts a global coordinate to a local coordinate.\n *\n * @param globalCoordinate - The global coordinate to convert.\n *\n * @returns The local coordinate.\n *\n * **Category:** Blocks\n */\n", + "canonicalReference": "server!BotPlayer#setBehavior:member(1)", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "static globalCoordinateToLocalCoordinate(globalCoordinate: " + "text": "setBehavior(behavior: " }, { "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "text": "BotBehavior", + "canonicalReference": "server!BotBehavior:interface" }, { "kind": "Content", "text": "): " }, { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "kind": "Content", + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isStatic": true, + "isStatic": false, "returnTypeTokenRange": { "startIndex": 3, "endIndex": 4 @@ -7723,7 +7558,7 @@ "overloadIndex": 1, "parameters": [ { - "parameterName": "globalCoordinate", + "parameterName": "behavior", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -7733,16 +7568,16 @@ ], "isOptional": false, "isAbstract": false, - "name": "globalCoordinateToLocalCoordinate" + "name": "setBehavior" }, { "kind": "Method", - "canonicalReference": "server!Chunk.globalCoordinateToOriginCoordinate:member(1)", - "docComment": "/**\n * Converts a global coordinate to a chunk origin coordinate.\n *\n * @param globalCoordinate - The global coordinate to convert.\n *\n * @returns The origin coordinate.\n *\n * **Category:** Blocks\n */\n", + "canonicalReference": "server!BotPlayer#spawn:member(1)", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "static globalCoordinateToOriginCoordinate(globalCoordinate: " + "text": "spawn(position?: " }, { "kind": "Reference", @@ -7754,16 +7589,15 @@ "text": "): " }, { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "kind": "Content", + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isStatic": true, + "isStatic": false, "returnTypeTokenRange": { "startIndex": 3, "endIndex": 4 @@ -7773,26 +7607,26 @@ "overloadIndex": 1, "parameters": [ { - "parameterName": "globalCoordinate", + "parameterName": "position", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "isOptional": false + "isOptional": true } ], "isOptional": false, "isAbstract": false, - "name": "globalCoordinateToOriginCoordinate" + "name": "spawn" }, { "kind": "Method", - "canonicalReference": "server!Chunk#hasBlock:member(1)", - "docComment": "/**\n * Checks if a block exists at a specific local coordinate.\n *\n * @param localCoordinate - The local coordinate of the block to check.\n *\n * @returns Whether a block exists.\n *\n * **Category:** Blocks\n */\n", + "canonicalReference": "server!BotPlayer#teleport:member(1)", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "hasBlock(localCoordinate: " + "text": "teleport(position: " }, { "kind": "Reference", @@ -7805,7 +7639,7 @@ }, { "kind": "Content", - "text": "boolean" + "text": "void" }, { "kind": "Content", @@ -7822,7 +7656,7 @@ "overloadIndex": 1, "parameters": [ { - "parameterName": "localCoordinate", + "parameterName": "position", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -7832,21 +7666,21 @@ ], "isOptional": false, "isAbstract": false, - "name": "hasBlock" + "name": "teleport" }, { "kind": "Property", - "canonicalReference": "server!Chunk#originCoordinate:member", - "docComment": "/**\n * The origin coordinate of the chunk (world-space, multiples of 16).\n *\n * **Category:** Blocks\n */\n", + "canonicalReference": "server!BotPlayer#world:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "get originCoordinate(): " + "text": "get world(): " }, { "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "text": "World", + "canonicalReference": "server!World:class" }, { "kind": "Content", @@ -7856,7 +7690,7 @@ "isReadonly": true, "isOptional": false, "releaseTag": "Public", - "name": "originCoordinate", + "name": "world", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -7866,79 +7700,59 @@ "isAbstract": false } ], - "implementsTokenRanges": [ - { - "startIndex": 1, - "endIndex": 2 - } - ] + "implementsTokenRanges": [] }, { - "kind": "Class", - "canonicalReference": "server!ChunkLattice:class", - "docComment": "/**\n * A lattice of chunks that represent a world's terrain.\n *\n * When to use: reading or mutating blocks in world space. Do NOT use for: per-entity placement logic; prefer higher-level game systems.\n *\n * @remarks\n *\n * The lattice owns all chunks and keeps physics colliders in sync with blocks.\n *\n *

Coordinate System

\n *\n * - **Global (world) coordinates:** integer block positions in world space. - **Chunk origin:** world coordinate at the chunk's minimum corner (multiples of 16). - **Local coordinates:** 0..15 per axis within a chunk. - **Axes:** +X right, +Y up, -Z forward. - **Origin:** (0,0,0) is the world origin.\n *\n * **Category:** Blocks\n *\n * @public\n */\n", + "kind": "Interface", + "canonicalReference": "server!BotPlayerOptions:interface", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "export default class ChunkLattice extends " - }, - { - "kind": "Reference", - "text": "EventRouter", - "canonicalReference": "server!EventRouter:class" - }, - { - "kind": "Content", - "text": " " + "text": "export interface BotPlayerOptions " } ], - "fileUrlPath": "src/worlds/blocks/ChunkLattice.ts", + "fileUrlPath": "src/bots/BotPlayer.ts", "releaseTag": "Public", - "isAbstract": false, - "name": "ChunkLattice", + "name": "BotPlayerOptions", "preserveMemberOrder": false, "members": [ { - "kind": "Constructor", - "canonicalReference": "server!ChunkLattice:constructor(1)", - "docComment": "/**\n * Creates a new chunk lattice instance.\n *\n * @param world - The world the chunk lattice is for.\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!BotPlayerOptions#behavior:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "constructor(world: " + "text": "behavior?: " }, { "kind": "Reference", - "text": "World", - "canonicalReference": "server!World:class" + "text": "BotBehavior", + "canonicalReference": "server!BotBehavior:interface" }, { "kind": "Content", - "text": ");" + "text": ";" } ], + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "world", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ] + "name": "behavior", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } }, { - "kind": "Property", - "canonicalReference": "server!ChunkLattice#chunkCount:member", - "docComment": "/**\n * The number of chunks in the lattice.\n *\n * **Category:** Blocks\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!BotPlayerOptions#modelScale:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "get chunkCount(): " + "text": "modelScale?: " }, { "kind": "Content", @@ -7949,204 +7763,160 @@ "text": ";" } ], - "isReadonly": true, - "isOptional": false, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "name": "chunkCount", + "name": "modelScale", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + } }, { - "kind": "Method", - "canonicalReference": "server!ChunkLattice#clear:member(1)", - "docComment": "/**\n * Removes and clears all chunks and their blocks from the lattice.\n *\n * Use for: full world resets or map reloads. Do NOT use for: incremental changes; use `ChunkLattice.setBlock`.\n *\n * @remarks\n *\n * **Removes colliders:** All block type colliders are removed from the physics simulation.\n *\n * **Emits events:** Emits `REMOVE_CHUNK` for each chunk before clearing.\n *\n * **Side effects:** Clears all chunks, placements, and block colliders.\n *\n * **Category:** Blocks\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!BotPlayerOptions#modelUri:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "clear(): " + "text": "modelUri?: " }, { "kind": "Content", - "text": "void" + "text": "string" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "modelUri", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [], - "isOptional": false, - "isAbstract": false, - "name": "clear" + } }, { - "kind": "Method", - "canonicalReference": "server!ChunkLattice#getAllChunks:member(1)", - "docComment": "/**\n * Gets all chunks in the lattice.\n *\n * @returns An array of all chunks in the lattice.\n *\n * **Category:** Blocks\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!BotPlayerOptions#name:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "getAllChunks(): " - }, - { - "kind": "Reference", - "text": "Chunk", - "canonicalReference": "server!Chunk:class" + "text": "name?: " }, { "kind": "Content", - "text": "[]" + "text": "string" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 1, - "endIndex": 3 - }, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [], - "isOptional": false, - "isAbstract": false, - "name": "getAllChunks" + "name": "name", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } }, { - "kind": "Method", - "canonicalReference": "server!ChunkLattice#getBlockId:member(1)", - "docComment": "/**\n * Gets the block type ID at a specific global coordinate.\n *\n * @param globalCoordinate - The global coordinate of the block to get.\n *\n * @returns The block type ID, or 0 if no block is set.\n *\n * **Category:** Blocks\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!BotPlayerOptions#rigidBodyType:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "getBlockId(globalCoordinate: " + "text": "rigidBodyType?: " }, { "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" - }, - { - "kind": "Content", - "text": "): " - }, - { - "kind": "Content", - "text": "number" + "text": "RigidBodyType", + "canonicalReference": "server!RigidBodyType:enum" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "globalCoordinate", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "getBlockId" + "name": "rigidBodyType", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } }, { - "kind": "Method", - "canonicalReference": "server!ChunkLattice#getBlockType:member(1)", - "docComment": "/**\n * Gets the block type at a specific global coordinate.\n *\n * @param globalCoordinate - The global coordinate of the block to get.\n *\n * @returns The block type, or null if no block is set.\n *\n * **Category:** Blocks\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!BotPlayerOptions#spawnPosition:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "getBlockType(globalCoordinate: " + "text": "spawnPosition?: " }, { "kind": "Reference", "text": "Vector3Like", "canonicalReference": "server!Vector3Like:interface" }, - { - "kind": "Content", - "text": "): " - }, - { - "kind": "Reference", - "text": "BlockType", - "canonicalReference": "server!BlockType:class" - }, - { - "kind": "Content", - "text": " | null" - }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 5 - }, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "globalCoordinate", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "getBlockType" + "name": "spawnPosition", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + } + ], + "extendsTokenRanges": [] + }, + { + "kind": "Interface", + "canonicalReference": "server!CapsuleColliderOptions:interface", + "docComment": "/**\n * The options for a capsule collider.\n *\n * Use for: capsule-shaped colliders. Do NOT use for: other shapes; use the matching collider option type.\n *\n * **Category:** Physics\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export interface CapsuleColliderOptions extends " }, { - "kind": "Method", - "canonicalReference": "server!ChunkLattice#getBlockTypeCount:member(1)", - "docComment": "/**\n * Gets the number of blocks of a specific block type in the lattice.\n *\n * @param blockTypeId - The block type ID to count.\n *\n * @returns The number of blocks of the block type.\n *\n * **Category:** Blocks\n */\n", + "kind": "Reference", + "text": "BaseColliderOptions", + "canonicalReference": "server!BaseColliderOptions:interface" + }, + { + "kind": "Content", + "text": " " + } + ], + "fileUrlPath": "src/worlds/physics/Collider.ts", + "releaseTag": "Public", + "name": "CapsuleColliderOptions", + "preserveMemberOrder": false, + "members": [ + { + "kind": "PropertySignature", + "canonicalReference": "server!CapsuleColliderOptions#halfHeight:member", + "docComment": "/**\n * The half height of the capsule collider.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "getBlockTypeCount(blockTypeId: " - }, - { - "kind": "Content", - "text": "number" - }, - { - "kind": "Content", - "text": "): " + "text": "halfHeight?: " }, { "kind": "Content", @@ -8157,318 +7927,201 @@ "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "blockTypeId", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "getBlockTypeCount" + "name": "halfHeight", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } }, { - "kind": "Method", - "canonicalReference": "server!ChunkLattice#getChunk:member(1)", - "docComment": "/**\n * Gets the chunk that contains the given global coordinate.\n *\n * @param globalCoordinate - The global coordinate to get the chunk for.\n *\n * @returns The chunk that contains the given global coordinate or undefined if not found.\n *\n * **Category:** Blocks\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!CapsuleColliderOptions#radius:member", + "docComment": "/**\n * The radius of the capsule collider.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "getChunk(globalCoordinate: " - }, - { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" - }, - { - "kind": "Content", - "text": "): " - }, - { - "kind": "Reference", - "text": "Chunk", - "canonicalReference": "server!Chunk:class" + "text": "radius?: " }, { "kind": "Content", - "text": " | undefined" + "text": "number" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 5 - }, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "globalCoordinate", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "getChunk" + "name": "radius", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } }, { - "kind": "Method", - "canonicalReference": "server!ChunkLattice#getOrCreateChunk:member(1)", - "docComment": "/**\n * Gets the chunk for a given global coordinate, creating it if it doesn't exist.\n *\n * @remarks\n *\n * Creates a new chunk and emits `ChunkLatticeEvent.ADD_CHUNK` if needed.\n *\n * @param globalCoordinate - The global coordinate of the chunk to get.\n *\n * @returns The chunk at the given global coordinate (created if needed).\n *\n * **Side effects:** May create and register a new chunk.\n *\n * **Category:** Blocks\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!CapsuleColliderOptions#shape:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "getOrCreateChunk(globalCoordinate: " - }, - { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" - }, - { - "kind": "Content", - "text": "): " + "text": "shape: " }, { "kind": "Reference", - "text": "Chunk", - "canonicalReference": "server!Chunk:class" + "text": "ColliderShape.CAPSULE", + "canonicalReference": "server!ColliderShape.CAPSULE:member" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "globalCoordinate", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], + "isReadonly": false, "isOptional": false, - "isAbstract": false, - "name": "getOrCreateChunk" + "releaseTag": "Public", + "name": "shape", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + } + ], + "extendsTokenRanges": [ + { + "startIndex": 1, + "endIndex": 2 + } + ] + }, + { + "kind": "Class", + "canonicalReference": "server!ChaseBehavior:class", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "export default class ChaseBehavior implements " }, { - "kind": "Method", - "canonicalReference": "server!ChunkLattice#hasBlock:member(1)", - "docComment": "/**\n * Checks if a block exists at a specific global coordinate.\n *\n * @param globalCoordinate - The global coordinate of the block to check.\n *\n * @returns Whether a block exists.\n *\n * **Category:** Blocks\n */\n", + "kind": "Reference", + "text": "BotBehavior", + "canonicalReference": "server!BotBehavior:interface" + }, + { + "kind": "Content", + "text": " " + } + ], + "fileUrlPath": "src/bots/behaviors/ChaseBehavior.ts", + "releaseTag": "Public", + "isAbstract": false, + "name": "ChaseBehavior", + "preserveMemberOrder": false, + "members": [ + { + "kind": "Constructor", + "canonicalReference": "server!ChaseBehavior:constructor(1)", + "docComment": "/**\n * Constructs a new instance of the `ChaseBehavior` class\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "hasBlock(globalCoordinate: " + "text": "constructor(options?: " }, { "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" - }, - { - "kind": "Content", - "text": "): " - }, - { - "kind": "Content", - "text": "boolean" + "text": "ChaseBehaviorOptions", + "canonicalReference": "server!ChaseBehaviorOptions:interface" }, { "kind": "Content", - "text": ";" + "text": ");" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, "parameters": [ { - "parameterName": "globalCoordinate", + "parameterName": "options", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "isOptional": false + "isOptional": true } - ], - "isOptional": false, - "isAbstract": false, - "name": "hasBlock" + ] }, { - "kind": "Method", - "canonicalReference": "server!ChunkLattice#hasChunk:member(1)", - "docComment": "/**\n * Checks if a chunk exists for a given global coordinate.\n *\n * @param globalCoordinate - The global coordinate of the chunk to check.\n *\n * @returns Whether the chunk exists.\n *\n * **Category:** Blocks\n */\n", + "kind": "Property", + "canonicalReference": "server!ChaseBehavior#name:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "hasChunk(globalCoordinate: " - }, - { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" - }, - { - "kind": "Content", - "text": "): " + "text": "readonly name = " }, { "kind": "Content", - "text": "boolean" + "text": "\"chase\"" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, + "isReadonly": true, + "isOptional": false, "releaseTag": "Public", + "name": "name", + "propertyTypeTokenRange": { + "startIndex": 0, + "endIndex": 0 + }, + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "globalCoordinate", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "hasChunk" + "isAbstract": false }, { "kind": "Method", - "canonicalReference": "server!ChunkLattice#initializeBlocks:member(1)", - "docComment": "/**\n * Initializes all blocks in the lattice in bulk, replacing existing blocks.\n *\n * Use for: loading maps or generating terrain in one pass. Do NOT use for: incremental edits; use `ChunkLattice.setBlock`.\n *\n * @remarks\n *\n * **Clears first:** Calls `ChunkLattice.clear` before initializing, removing all existing blocks and colliders.\n *\n * **Collider optimization:** Creates one collider per block type with all placements combined. Voxel colliders have their states combined for efficient neighbor collision detection.\n *\n * @param blocks - The blocks to initialize, keyed by block type ID.\n *\n * **Side effects:** Clears existing data, creates colliders, and emits `ChunkLatticeEvent.SET_BLOCK` per block.\n *\n * **Category:** Blocks\n */\n", + "canonicalReference": "server!ChaseBehavior#tick:member(1)", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "initializeBlocks(blocks: " - }, - { - "kind": "Content", - "text": "{\n [blockTypeId: number]: " + "text": "tick(bot: " }, { "kind": "Reference", - "text": "BlockPlacement", - "canonicalReference": "server!BlockPlacement:interface" - }, - { - "kind": "Content", - "text": "[];\n }" - }, - { - "kind": "Content", - "text": "): " - }, - { - "kind": "Content", - "text": "void" + "text": "BotPlayer", + "canonicalReference": "server!BotPlayer:class" }, { "kind": "Content", - "text": ";" - } - ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 5, - "endIndex": 6 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "blocks", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 4 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "initializeBlocks" - }, - { - "kind": "Method", - "canonicalReference": "server!ChunkLattice#setBlock:member(1)", - "docComment": "/**\n * Sets the block at a global coordinate by block type ID.\n *\n * Use for: incremental terrain edits. Do NOT use for: bulk terrain loading; use `ChunkLattice.initializeBlocks`.\n *\n * @remarks\n *\n * **Air:** Use block type ID `0` to remove a block (set to air).\n *\n * **Collider updates:** For voxel block types, updates the existing collider. For trimesh block types, recreates the entire collider.\n *\n * **Removes previous:** If replacing an existing block, removes it from its collider first. If the previous block type has no remaining blocks, its collider is removed from simulation.\n *\n * @param globalCoordinate - The global coordinate of the block to set.\n *\n * @param blockTypeId - The block type ID to set. Use 0 to remove the block and replace with air.\n *\n * @param blockRotation - The rotation of the block.\n *\n * **Side effects:** Emits `ChunkLatticeEvent.SET_BLOCK` and mutates block colliders.\n *\n * **Category:** Blocks\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "setBlock(globalCoordinate: " + "text": ", world: " }, { "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "text": "World", + "canonicalReference": "server!World:class" }, { "kind": "Content", - "text": ", blockTypeId: " + "text": ", deltaTimeMs: " }, { "kind": "Content", "text": "number" }, - { - "kind": "Content", - "text": ", blockRotation?: " - }, - { - "kind": "Reference", - "text": "BlockRotation", - "canonicalReference": "server!BlockRotation:type" - }, { "kind": "Content", "text": "): " @@ -8492,7 +8145,7 @@ "overloadIndex": 1, "parameters": [ { - "parameterName": "globalCoordinate", + "parameterName": "bot", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -8500,7 +8153,7 @@ "isOptional": false }, { - "parameterName": "blockTypeId", + "parameterName": "world", "parameterTypeTokenRange": { "startIndex": 3, "endIndex": 4 @@ -8508,73 +8161,152 @@ "isOptional": false }, { - "parameterName": "blockRotation", + "parameterName": "deltaTimeMs", "parameterTypeTokenRange": { "startIndex": 5, "endIndex": 6 }, - "isOptional": true + "isOptional": false } ], "isOptional": false, "isAbstract": false, - "name": "setBlock" + "name": "tick" } ], - "extendsTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "implementsTokenRanges": [] + "implementsTokenRanges": [ + { + "startIndex": 1, + "endIndex": 2 + } + ] }, { - "kind": "Enum", - "canonicalReference": "server!ChunkLatticeEvent:enum", - "docComment": "/**\n * Event types a ChunkLattice instance can emit.\n *\n * See `ChunkLatticeEventPayloads` for the payloads.\n *\n * **Category:** Events\n *\n * @public\n */\n", + "kind": "Interface", + "canonicalReference": "server!ChaseBehaviorOptions:interface", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "export declare enum ChunkLatticeEvent " + "text": "export interface ChaseBehaviorOptions " } ], - "fileUrlPath": "src/worlds/blocks/ChunkLattice.ts", + "fileUrlPath": "src/bots/behaviors/ChaseBehavior.ts", "releaseTag": "Public", - "name": "ChunkLatticeEvent", + "name": "ChaseBehaviorOptions", "preserveMemberOrder": false, "members": [ { - "kind": "EnumMember", - "canonicalReference": "server!ChunkLatticeEvent.ADD_CHUNK:member", + "kind": "PropertySignature", + "canonicalReference": "server!ChaseBehaviorOptions#chaseSpeed:member", "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "ADD_CHUNK = " + "text": "chaseSpeed?: " }, { "kind": "Content", - "text": "\"CHUNK_LATTICE.ADD_CHUNK\"" + "text": "number" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "chaseSpeed", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - }, + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!ChaseBehaviorOptions#detectionRadius:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "detectionRadius?: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "name": "ADD_CHUNK" + "name": "detectionRadius", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } }, + { + "kind": "PropertySignature", + "canonicalReference": "server!ChaseBehaviorOptions#updateIntervalMs:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "updateIntervalMs?: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "updateIntervalMs", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + } + ], + "extendsTokenRanges": [] + }, + { + "kind": "Enum", + "canonicalReference": "server!ChatEvent:enum", + "docComment": "/**\n * Event types a ChatManager instance can emit.\n *\n * See `ChatEventPayloads` for the payloads.\n *\n * **Category:** Events\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export declare enum ChatEvent " + } + ], + "fileUrlPath": "src/worlds/chat/ChatManager.ts", + "releaseTag": "Public", + "name": "ChatEvent", + "preserveMemberOrder": false, + "members": [ { "kind": "EnumMember", - "canonicalReference": "server!ChunkLatticeEvent.REMOVE_CHUNK:member", + "canonicalReference": "server!ChatEvent.BROADCAST_MESSAGE:member", "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "REMOVE_CHUNK = " + "text": "BROADCAST_MESSAGE = " }, { "kind": "Content", - "text": "\"CHUNK_LATTICE.REMOVE_CHUNK\"" + "text": "\"CHAT.BROADCAST_MESSAGE\"" } ], "initializerTokenRange": { @@ -8582,20 +8314,20 @@ "endIndex": 2 }, "releaseTag": "Public", - "name": "REMOVE_CHUNK" + "name": "BROADCAST_MESSAGE" }, { "kind": "EnumMember", - "canonicalReference": "server!ChunkLatticeEvent.SET_BLOCK:member", + "canonicalReference": "server!ChatEvent.PLAYER_MESSAGE:member", "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "SET_BLOCK = " + "text": "PLAYER_MESSAGE = " }, { "kind": "Content", - "text": "\"CHUNK_LATTICE.SET_BLOCK\"" + "text": "\"CHAT.PLAYER_MESSAGE\"" } ], "initializerTokenRange": { @@ -8603,29 +8335,29 @@ "endIndex": 2 }, "releaseTag": "Public", - "name": "SET_BLOCK" + "name": "PLAYER_MESSAGE" } ] }, { "kind": "Interface", - "canonicalReference": "server!ChunkLatticeEventPayloads:interface", - "docComment": "/**\n * Event payloads for ChunkLattice emitted events.\n *\n * **Category:** Events\n *\n * @public\n */\n", + "canonicalReference": "server!ChatEventPayloads:interface", + "docComment": "/**\n * Event payloads for ChatManager emitted events.\n *\n * **Category:** Events\n *\n * @public\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "export interface ChunkLatticeEventPayloads " + "text": "export interface ChatEventPayloads " } ], - "fileUrlPath": "src/worlds/blocks/ChunkLattice.ts", + "fileUrlPath": "src/worlds/chat/ChatManager.ts", "releaseTag": "Public", - "name": "ChunkLatticeEventPayloads", + "name": "ChatEventPayloads", "preserveMemberOrder": false, "members": [ { "kind": "PropertySignature", - "canonicalReference": "server!ChunkLatticeEventPayloads#\"CHUNK_LATTICE.ADD_CHUNK\":member", - "docComment": "/**\n * Emitted when a chunk is added to the lattice.\n */\n", + "canonicalReference": "server!ChatEventPayloads#\"CHAT.BROADCAST_MESSAGE\":member", + "docComment": "/**\n * Emitted when a broadcast message is sent.\n */\n", "excerptTokens": [ { "kind": "Content", @@ -8633,8 +8365,8 @@ }, { "kind": "Reference", - "text": "ChunkLatticeEvent.ADD_CHUNK", - "canonicalReference": "server!ChunkLatticeEvent.ADD_CHUNK:member" + "text": "ChatEvent.BROADCAST_MESSAGE", + "canonicalReference": "server!ChatEvent.BROADCAST_MESSAGE:member" }, { "kind": "Content", @@ -8642,25 +8374,16 @@ }, { "kind": "Content", - "text": "{\n chunkLattice: " - }, - { - "kind": "Reference", - "text": "ChunkLattice", - "canonicalReference": "server!ChunkLattice:class" - }, - { - "kind": "Content", - "text": ";\n chunk: " + "text": "{\n player: " }, { "kind": "Reference", - "text": "Chunk", - "canonicalReference": "server!Chunk:class" + "text": "Player", + "canonicalReference": "server!Player:class" }, { "kind": "Content", - "text": ";\n }" + "text": " | undefined;\n message: string;\n color?: string;\n }" }, { "kind": "Content", @@ -8670,16 +8393,16 @@ "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "\"CHUNK_LATTICE.ADD_CHUNK\"", + "name": "\"CHAT.BROADCAST_MESSAGE\"", "propertyTypeTokenRange": { "startIndex": 3, - "endIndex": 8 + "endIndex": 6 } }, { "kind": "PropertySignature", - "canonicalReference": "server!ChunkLatticeEventPayloads#\"CHUNK_LATTICE.REMOVE_CHUNK\":member", - "docComment": "/**\n * Emitted when a chunk is removed from the lattice.\n */\n", + "canonicalReference": "server!ChatEventPayloads#\"CHAT.PLAYER_MESSAGE\":member", + "docComment": "/**\n * Emitted when a message is sent to a specific player.\n */\n", "excerptTokens": [ { "kind": "Content", @@ -8687,8 +8410,8 @@ }, { "kind": "Reference", - "text": "ChunkLatticeEvent.REMOVE_CHUNK", - "canonicalReference": "server!ChunkLatticeEvent.REMOVE_CHUNK:member" + "text": "ChatEvent.PLAYER_MESSAGE", + "canonicalReference": "server!ChatEvent.PLAYER_MESSAGE:member" }, { "kind": "Content", @@ -8696,106 +8419,16 @@ }, { "kind": "Content", - "text": "{\n chunkLattice: " + "text": "{\n player: " }, { "kind": "Reference", - "text": "ChunkLattice", - "canonicalReference": "server!ChunkLattice:class" + "text": "Player", + "canonicalReference": "server!Player:class" }, { "kind": "Content", - "text": ";\n chunk: " - }, - { - "kind": "Reference", - "text": "Chunk", - "canonicalReference": "server!Chunk:class" - }, - { - "kind": "Content", - "text": ";\n }" - }, - { - "kind": "Content", - "text": ";" - } - ], - "isReadonly": false, - "isOptional": false, - "releaseTag": "Public", - "name": "\"CHUNK_LATTICE.REMOVE_CHUNK\"", - "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 8 - } - }, - { - "kind": "PropertySignature", - "canonicalReference": "server!ChunkLatticeEventPayloads#\"CHUNK_LATTICE.SET_BLOCK\":member", - "docComment": "/**\n * Emitted when a block is set in the lattice.\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "ChunkLatticeEvent.SET_BLOCK", - "canonicalReference": "server!ChunkLatticeEvent.SET_BLOCK:member" - }, - { - "kind": "Content", - "text": "]: " - }, - { - "kind": "Content", - "text": "{\n chunkLattice: " - }, - { - "kind": "Reference", - "text": "ChunkLattice", - "canonicalReference": "server!ChunkLattice:class" - }, - { - "kind": "Content", - "text": ";\n chunk: " - }, - { - "kind": "Reference", - "text": "Chunk", - "canonicalReference": "server!Chunk:class" - }, - { - "kind": "Content", - "text": ";\n globalCoordinate: " - }, - { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" - }, - { - "kind": "Content", - "text": ";\n localCoordinate: " - }, - { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" - }, - { - "kind": "Content", - "text": ";\n blockTypeId: number;\n blockRotation?: " - }, - { - "kind": "Reference", - "text": "BlockRotation", - "canonicalReference": "server!BlockRotation:type" - }, - { - "kind": "Content", - "text": ";\n }" + "text": ";\n message: string;\n color?: string;\n }" }, { "kind": "Content", @@ -8805,124 +8438,23 @@ "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "\"CHUNK_LATTICE.SET_BLOCK\"", + "name": "\"CHAT.PLAYER_MESSAGE\"", "propertyTypeTokenRange": { "startIndex": 3, - "endIndex": 14 + "endIndex": 6 } } ], "extendsTokenRanges": [] }, - { - "kind": "Enum", - "canonicalReference": "server!CoefficientCombineRule:enum", - "docComment": "/**\n * The coefficient for friction or bounciness combine rule.\n *\n * **Category:** Physics\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export declare enum CoefficientCombineRule " - } - ], - "fileUrlPath": "src/worlds/physics/Collider.ts", - "releaseTag": "Public", - "name": "CoefficientCombineRule", - "preserveMemberOrder": false, - "members": [ - { - "kind": "EnumMember", - "canonicalReference": "server!CoefficientCombineRule.Average:member", - "docComment": "", - "excerptTokens": [ - { - "kind": "Content", - "text": "Average = " - }, - { - "kind": "Content", - "text": "0" - } - ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "releaseTag": "Public", - "name": "Average" - }, - { - "kind": "EnumMember", - "canonicalReference": "server!CoefficientCombineRule.Max:member", - "docComment": "", - "excerptTokens": [ - { - "kind": "Content", - "text": "Max = " - }, - { - "kind": "Content", - "text": "3" - } - ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "releaseTag": "Public", - "name": "Max" - }, - { - "kind": "EnumMember", - "canonicalReference": "server!CoefficientCombineRule.Min:member", - "docComment": "", - "excerptTokens": [ - { - "kind": "Content", - "text": "Min = " - }, - { - "kind": "Content", - "text": "1" - } - ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "releaseTag": "Public", - "name": "Min" - }, - { - "kind": "EnumMember", - "canonicalReference": "server!CoefficientCombineRule.Multiply:member", - "docComment": "", - "excerptTokens": [ - { - "kind": "Content", - "text": "Multiply = " - }, - { - "kind": "Content", - "text": "2" - } - ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "releaseTag": "Public", - "name": "Multiply" - } - ] - }, { "kind": "Class", - "canonicalReference": "server!Collider:class", - "docComment": "/**\n * Represents a collider in a world's physics simulation.\n *\n * When to use: defining collision shapes for rigid bodies or entities. Do NOT use for: gameplay queries; use `Simulation.raycast` or intersection APIs instead.\n *\n * @remarks\n *\n * Colliders are usually created via `RigidBody` or `Entity` options. You can also create and manage them directly for advanced use cases.\n *\n * **Category:** Physics\n *\n * @public\n */\n", + "canonicalReference": "server!ChatManager:class", + "docComment": "/**\n * Manages chat and commands in a world.\n *\n * When to use: broadcasting chat, sending system messages, or registering chat commands. Do NOT use for: player HUD/menus; use `PlayerUI` for rich UI.\n *\n * @remarks\n *\n * The ChatManager is created internally as a singleton for each `World` instance in a game server. The ChatManager allows you to broadcast messages, send messages to specific players, and register commands that can be used in chat to execute game logic.\n *\n * Pattern: register commands during world initialization and keep callbacks fast. Anti-pattern: assuming commands are permission-checked; always validate access in callbacks.\n *\n *

Events

\n *\n * This class is an EventRouter, and instances of it emit events with payloads listed under `ChatEventPayloads`\n *\n * The constructor for this class is marked as internal. Third-party code should not call the constructor directly or create subclasses that extend the `ChatManager` class.\n *\n * @example\n * ```typescript\n * world.chatManager.registerCommand('/kick', (player, args, message) => {\n * const admins = [ 'arkdev', 'testuser123' ];\n * if (admins.includes(player.username)) {\n * const targetUsername = args[0];\n * const targetPlayer = world.playerManager.getConnectedPlayerByUsername(targetUsername);\n *\n * if (targetPlayer) {\n * targetPlayer.disconnect();\n * }\n * }\n * });\n * ```\n *\n * **Category:** Chat\n *\n * @public\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "export default class Collider extends " + "text": "export default class ChatManager extends " }, { "kind": "Reference", @@ -8934,67 +8466,98 @@ "text": " " } ], - "fileUrlPath": "src/worlds/physics/Collider.ts", + "fileUrlPath": "src/worlds/chat/ChatManager.ts", "releaseTag": "Public", "isAbstract": false, - "name": "Collider", + "name": "ChatManager", "preserveMemberOrder": false, "members": [ { - "kind": "Constructor", - "canonicalReference": "server!Collider:constructor(1)", - "docComment": "/**\n * Creates a collider with the provided options.\n *\n * Use for: configuring a collider before adding it to a simulation or rigid body.\n *\n * @param colliderOptions - The options for the collider instance.\n *\n * **Category:** Physics\n */\n", + "kind": "Method", + "canonicalReference": "server!ChatManager#handleCommand:member(1)", + "docComment": "/**\n * Handle a command if it exists.\n *\n * @remarks\n *\n * The command is parsed as the first space-delimited token in the message.\n *\n * **Category:** Chat\n *\n * @param player - The player that sent the command.\n *\n * @param message - The full message.\n *\n * @returns True if a command was handled, false otherwise.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "constructor(colliderOptions: " + "text": "handleCommand(player: " }, { "kind": "Reference", - "text": "ColliderOptions", - "canonicalReference": "server!ColliderOptions:type" + "text": "Player", + "canonicalReference": "server!Player:class" }, { "kind": "Content", - "text": ");" + "text": ", message: " + }, + { + "kind": "Content", + "text": "string" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Content", + "text": "boolean" + }, + { + "kind": "Content", + "text": ";" } ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 5, + "endIndex": 6 + }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, "parameters": [ { - "parameterName": "colliderOptions", + "parameterName": "player", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, "isOptional": false + }, + { + "parameterName": "message", + "parameterTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "isOptional": false } - ] + ], + "isOptional": false, + "isAbstract": false, + "name": "handleCommand" }, { "kind": "Method", - "canonicalReference": "server!Collider#addToSimulation:member(1)", - "docComment": "/**\n * Adds the collider to the simulation.\n *\n * @remarks\n *\n * **Parent linking:** Links the collider to the parent rigid body if provided.\n *\n * **Collision callback:** Applies any configured `onCollision` callback.\n *\n * @param simulation - The simulation to add the collider to.\n *\n * @param parentRigidBody - The parent rigid body of the collider.\n *\n * **Category:** Physics\n */\n", + "canonicalReference": "server!ChatManager#registerCommand:member(1)", + "docComment": "/**\n * Register a command and its callback.\n *\n * @remarks\n *\n * Commands are matched by exact string equality against the first token in a chat message.\n *\n * @param command - The command to register.\n *\n * @param callback - The callback function to execute when the command is used.\n *\n * **Requires:** Use a consistent command prefix (for example, `/kick`) if you want slash commands.\n *\n * @see\n *\n * `ChatManager.unregisterCommand`\n *\n * **Category:** Chat\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "addToSimulation(simulation: " + "text": "registerCommand(command: " }, { - "kind": "Reference", - "text": "Simulation", - "canonicalReference": "server!Simulation:class" + "kind": "Content", + "text": "string" }, { "kind": "Content", - "text": ", parentRigidBody?: " + "text": ", callback: " }, { "kind": "Reference", - "text": "RigidBody", - "canonicalReference": "server!RigidBody:class" + "text": "CommandCallback", + "canonicalReference": "server!CommandCallback:type" }, { "kind": "Content", @@ -9019,7 +8582,7 @@ "overloadIndex": 1, "parameters": [ { - "parameterName": "simulation", + "parameterName": "command", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -9027,122 +8590,111 @@ "isOptional": false }, { - "parameterName": "parentRigidBody", + "parameterName": "callback", "parameterTypeTokenRange": { "startIndex": 3, "endIndex": 4 }, - "isOptional": true + "isOptional": false } ], "isOptional": false, "isAbstract": false, - "name": "addToSimulation" + "name": "registerCommand" }, { - "kind": "Property", - "canonicalReference": "server!Collider#bounciness:member", - "docComment": "/**\n * The bounciness of the collider.\n *\n * **Category:** Physics\n */\n", + "kind": "Method", + "canonicalReference": "server!ChatManager#sendBroadcastMessage:member(1)", + "docComment": "/**\n * Send a system broadcast message to all players in the world.\n *\n * @param message - The message to send.\n *\n * @param color - The color of the message as a hex color code, excluding #.\n *\n * @example\n * ```typescript\n * chatManager.sendBroadcastMessage('Hello, world!', 'FF00AA');\n * ```\n *\n * **Side effects:** Emits `ChatEvent.BROADCAST_MESSAGE` for network sync.\n *\n * @see\n *\n * `ChatManager.sendPlayerMessage`\n *\n * **Category:** Chat\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get bounciness(): " + "text": "sendBroadcastMessage(message: " }, { "kind": "Content", - "text": "number" + "text": "string" }, { "kind": "Content", - "text": ";" - } - ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "bounciness", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false - }, - { - "kind": "Property", - "canonicalReference": "server!Collider#bouncinessCombineRule:member", - "docComment": "/**\n * The bounciness combine rule of the collider.\n *\n * **Category:** Physics\n */\n", - "excerptTokens": [ + "text": ", color?: " + }, { "kind": "Content", - "text": "get bouncinessCombineRule(): " + "text": "string" }, { - "kind": "Reference", - "text": "CoefficientCombineRule", - "canonicalReference": "server!CoefficientCombineRule:enum" + "kind": "Content", + "text": "): " + }, + { + "kind": "Content", + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "bouncinessCombineRule", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 5, + "endIndex": 6 + }, + "releaseTag": "Public", "isProtected": false, - "isAbstract": false + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "message", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + }, + { + "parameterName": "color", + "parameterTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "isOptional": true + } + ], + "isOptional": false, + "isAbstract": false, + "name": "sendBroadcastMessage" }, { - "kind": "Property", - "canonicalReference": "server!Collider#collisionGroups:member", - "docComment": "/**\n * The collision groups the collider belongs to.\n *\n * **Category:** Physics\n */\n", + "kind": "Method", + "canonicalReference": "server!ChatManager#sendPlayerMessage:member(1)", + "docComment": "/**\n * Send a system message to a specific player, only visible to them.\n *\n * @param player - The player to send the message to.\n *\n * @param message - The message to send.\n *\n * @param color - The color of the message as a hex color code, excluding #.\n *\n * @example\n * ```typescript\n * chatManager.sendPlayerMessage(player, 'Hello, player!', 'FF00AA');\n * ```\n *\n * **Side effects:** Emits `ChatEvent.PLAYER_MESSAGE` for network sync.\n *\n * @see\n *\n * `ChatManager.sendBroadcastMessage`\n *\n * **Category:** Chat\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get collisionGroups(): " + "text": "sendPlayerMessage(player: " }, { "kind": "Reference", - "text": "CollisionGroups", - "canonicalReference": "server!CollisionGroups:type" + "text": "Player", + "canonicalReference": "server!Player:class" }, { "kind": "Content", - "text": ";" - } - ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "collisionGroups", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false - }, - { - "kind": "Method", - "canonicalReference": "server!Collider#enableCollisionEvents:member(1)", - "docComment": "/**\n * Enables or disables collision events for the collider. This is automatically enabled if an on collision callback is set.\n *\n * @param enabled - Whether collision events are enabled.\n *\n * **Category:** Physics\n */\n", - "excerptTokens": [ + "text": ", message: " + }, { "kind": "Content", - "text": "enableCollisionEvents(enabled: " + "text": "string" }, { "kind": "Content", - "text": "boolean" + "text": ", color?: " + }, + { + "kind": "Content", + "text": "string" }, { "kind": "Content", @@ -9159,38 +8711,54 @@ ], "isStatic": false, "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 + "startIndex": 7, + "endIndex": 8 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, "parameters": [ { - "parameterName": "enabled", + "parameterName": "player", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, "isOptional": false + }, + { + "parameterName": "message", + "parameterTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "isOptional": false + }, + { + "parameterName": "color", + "parameterTypeTokenRange": { + "startIndex": 5, + "endIndex": 6 + }, + "isOptional": true } ], "isOptional": false, "isAbstract": false, - "name": "enableCollisionEvents" + "name": "sendPlayerMessage" }, { "kind": "Method", - "canonicalReference": "server!Collider#enableContactForceEvents:member(1)", - "docComment": "/**\n * Enables or disables contact force events for the collider. This is automatically enabled if an on contact force callback is set.\n *\n * @param enabled - Whether contact force events are enabled.\n *\n * **Category:** Physics\n */\n", + "canonicalReference": "server!ChatManager#unregisterCommand:member(1)", + "docComment": "/**\n * Unregister a command.\n *\n * @param command - The command to unregister.\n *\n * @see\n *\n * `ChatManager.registerCommand`\n *\n * **Category:** Chat\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "enableContactForceEvents(enabled: " + "text": "unregisterCommand(command: " }, { "kind": "Content", - "text": "boolean" + "text": "string" }, { "kind": "Content", @@ -9215,7 +8783,7 @@ "overloadIndex": 1, "parameters": [ { - "parameterName": "enabled", + "parameterName": "command", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -9225,111 +8793,157 @@ ], "isOptional": false, "isAbstract": false, - "name": "enableContactForceEvents" + "name": "unregisterCommand" + } + ], + "extendsTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "implementsTokenRanges": [] + }, + { + "kind": "Class", + "canonicalReference": "server!Chunk:class", + "docComment": "/**\n * A 16^3 chunk of blocks representing a slice of world terrain.\n *\n * When to use: reading chunk data or working with bulk block operations. Do NOT use for: creating terrain directly; prefer `ChunkLattice`.\n *\n * @remarks\n *\n * Chunks are fixed-size (16×16×16) and store block IDs by local coordinates.\n *\n *

Coordinate System

\n *\n * - **Global (world) coordinates:** integer block positions in world space. - **Chunk origin:** the world coordinate at the chunk's minimum corner (multiples of 16). - **Local coordinates:** 0..15 per axis within the chunk.\n *\n * **Category:** Blocks\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export default class Chunk implements " }, { - "kind": "Property", - "canonicalReference": "server!Collider#friction:member", - "docComment": "/**\n * The friction of the collider.\n *\n * **Category:** Physics\n */\n", + "kind": "Reference", + "text": "protocol.Serializable", + "canonicalReference": "@hytopia.com/server-protocol!Serializable:interface" + }, + { + "kind": "Content", + "text": " " + } + ], + "fileUrlPath": "src/worlds/blocks/Chunk.ts", + "releaseTag": "Public", + "isAbstract": false, + "name": "Chunk", + "preserveMemberOrder": false, + "members": [ + { + "kind": "Constructor", + "canonicalReference": "server!Chunk:constructor(1)", + "docComment": "/**\n * Creates a new chunk instance.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get friction(): " + "text": "constructor(originCoordinate: " }, { - "kind": "Content", - "text": "number" + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", - "text": ";" + "text": ");" } ], - "isReadonly": true, - "isOptional": false, "releaseTag": "Public", - "name": "friction", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": false, "isProtected": false, - "isAbstract": false + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "originCoordinate", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ] }, { - "kind": "Property", - "canonicalReference": "server!Collider#frictionCombineRule:member", - "docComment": "/**\n * The friction combine rule of the collider.\n *\n * **Category:** Physics\n */\n", + "kind": "Method", + "canonicalReference": "server!Chunk.blockIndexToLocalCoordinate:member(1)", + "docComment": "/**\n * Converts a block index to a local coordinate.\n *\n * @param index - The index of the block to convert.\n *\n * @returns The local coordinate of the block.\n *\n * **Category:** Blocks\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get frictionCombineRule(): " + "text": "static blockIndexToLocalCoordinate(index: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": "): " }, { "kind": "Reference", - "text": "CoefficientCombineRule", - "canonicalReference": "server!CoefficientCombineRule:enum" + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "frictionCombineRule", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 + "isStatic": true, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 }, - "isStatic": false, + "releaseTag": "Public", "isProtected": false, - "isAbstract": false + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "index", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "blockIndexToLocalCoordinate" }, { "kind": "Property", - "canonicalReference": "server!Collider#isBall:member", - "docComment": "/**\n * Whether the collider is a ball collider.\n *\n * **Category:** Physics\n */\n", + "canonicalReference": "server!Chunk#blockRotations:member", + "docComment": "/**\n * The rotations of the blocks in the chunk as a map of block index to rotation.\n *\n * **Category:** Blocks\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get isBall(): " + "text": "get blockRotations(): " }, { - "kind": "Content", - "text": "boolean" + "kind": "Reference", + "text": "Readonly", + "canonicalReference": "!Readonly:type" }, { "kind": "Content", - "text": ";" - } - ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "isBall", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false - }, - { - "kind": "Property", - "canonicalReference": "server!Collider#isBlock:member", - "docComment": "/**\n * Whether the collider is a block collider.\n *\n * **Category:** Physics\n */\n", - "excerptTokens": [ + "text": "<" + }, + { + "kind": "Reference", + "text": "Map", + "canonicalReference": "!Map:interface" + }, { "kind": "Content", - "text": "get isBlock(): " + "text": ">" }, { "kind": "Content", @@ -9339,10 +8953,10 @@ "isReadonly": true, "isOptional": false, "releaseTag": "Public", - "name": "isBlock", + "name": "blockRotations", "propertyTypeTokenRange": { "startIndex": 1, - "endIndex": 2 + "endIndex": 7 }, "isStatic": false, "isProtected": false, @@ -9350,16 +8964,30 @@ }, { "kind": "Property", - "canonicalReference": "server!Collider#isCapsule:member", - "docComment": "/**\n * Whether the collider is a capsule collider.\n *\n * **Category:** Physics\n */\n", + "canonicalReference": "server!Chunk#blocks:member", + "docComment": "/**\n * The blocks in the chunk as a flat Uint8Array[4096], each index as 0 or a block type ID.\n *\n * **Category:** Blocks\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get isCapsule(): " + "text": "get blocks(): " + }, + { + "kind": "Reference", + "text": "Readonly", + "canonicalReference": "!Readonly:type" }, { "kind": "Content", - "text": "boolean" + "text": "<" + }, + { + "kind": "Reference", + "text": "Uint8Array", + "canonicalReference": "!Uint8Array:interface" + }, + { + "kind": "Content", + "text": ">" }, { "kind": "Content", @@ -9369,143 +8997,231 @@ "isReadonly": true, "isOptional": false, "releaseTag": "Public", - "name": "isCapsule", + "name": "blocks", "propertyTypeTokenRange": { "startIndex": 1, - "endIndex": 2 + "endIndex": 5 }, "isStatic": false, "isProtected": false, "isAbstract": false }, { - "kind": "Property", - "canonicalReference": "server!Collider#isCone:member", - "docComment": "/**\n * Whether the collider is a cone collider.\n *\n * **Category:** Physics\n */\n", + "kind": "Method", + "canonicalReference": "server!Chunk#getBlockId:member(1)", + "docComment": "/**\n * Gets the block type ID at a specific local coordinate.\n *\n * @remarks\n *\n * Expects local coordinates in the range 0..15 for each axis.\n *\n * @param localCoordinate - The local coordinate of the block to get.\n *\n * @returns The block type ID.\n *\n * **Category:** Blocks\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get isCone(): " + "text": "getBlockId(localCoordinate: " + }, + { + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", - "text": "boolean" + "text": "): " + }, + { + "kind": "Content", + "text": "number" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "isCone", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", "isProtected": false, - "isAbstract": false + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "localCoordinate", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "getBlockId" }, { - "kind": "Property", - "canonicalReference": "server!Collider#isCylinder:member", - "docComment": "/**\n * Whether the collider is a cylinder collider.\n *\n * **Category:** Physics\n */\n", + "kind": "Method", + "canonicalReference": "server!Chunk#getBlockRotation:member(1)", + "docComment": "/**\n * Gets the rotation of a block at a specific local coordinate.\n *\n * @param localCoordinate - The local coordinate of the block to get the rotation of.\n *\n * @returns The rotation of the block (defaults to identity rotation).\n *\n * **Category:** Blocks\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get isCylinder(): " + "text": "getBlockRotation(localCoordinate: " + }, + { + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", - "text": "boolean" + "text": "): " + }, + { + "kind": "Reference", + "text": "BlockRotation", + "canonicalReference": "server!BlockRotation:type" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "isCylinder", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", "isProtected": false, - "isAbstract": false + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "localCoordinate", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "getBlockRotation" }, { - "kind": "Property", - "canonicalReference": "server!Collider#isEnabled:member", - "docComment": "/**\n * Whether the collider is enabled.\n *\n * **Category:** Physics\n */\n", + "kind": "Method", + "canonicalReference": "server!Chunk.globalCoordinateToLocalCoordinate:member(1)", + "docComment": "/**\n * Converts a global coordinate to a local coordinate.\n *\n * @param globalCoordinate - The global coordinate to convert.\n *\n * @returns The local coordinate.\n *\n * **Category:** Blocks\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get isEnabled(): " + "text": "static globalCoordinateToLocalCoordinate(globalCoordinate: " + }, + { + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", - "text": "boolean" + "text": "): " + }, + { + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "isEnabled", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 + "isStatic": true, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 }, - "isStatic": false, + "releaseTag": "Public", "isProtected": false, - "isAbstract": false + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "globalCoordinate", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "globalCoordinateToLocalCoordinate" }, { - "kind": "Property", - "canonicalReference": "server!Collider#isNone:member", - "docComment": "/**\n * Whether the collider is a none collider.\n *\n * **Category:** Physics\n */\n", + "kind": "Method", + "canonicalReference": "server!Chunk.globalCoordinateToOriginCoordinate:member(1)", + "docComment": "/**\n * Converts a global coordinate to a chunk origin coordinate.\n *\n * @param globalCoordinate - The global coordinate to convert.\n *\n * @returns The origin coordinate.\n *\n * **Category:** Blocks\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get isNone(): " + "text": "static globalCoordinateToOriginCoordinate(globalCoordinate: " + }, + { + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", - "text": "boolean" + "text": "): " + }, + { + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "isNone", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 + "isStatic": true, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 }, - "isStatic": false, + "releaseTag": "Public", "isProtected": false, - "isAbstract": false + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "globalCoordinate", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "globalCoordinateToOriginCoordinate" }, { - "kind": "Property", - "canonicalReference": "server!Collider#isRemoved:member", - "docComment": "/**\n * Whether the collider has been removed from the simulation.\n *\n * **Category:** Physics\n */\n", + "kind": "Method", + "canonicalReference": "server!Chunk#hasBlock:member(1)", + "docComment": "/**\n * Checks if a block exists at a specific local coordinate.\n *\n * @param localCoordinate - The local coordinate of the block to check.\n *\n * @returns Whether a block exists.\n *\n * **Category:** Blocks\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get isRemoved(): " + "text": "hasBlock(localCoordinate: " + }, + { + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" + }, + { + "kind": "Content", + "text": "): " }, { "kind": "Content", @@ -9516,30 +9232,41 @@ "text": ";" } ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "isRemoved", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", "isProtected": false, - "isAbstract": false + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "localCoordinate", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "hasBlock" }, { "kind": "Property", - "canonicalReference": "server!Collider#isRoundCylinder:member", - "docComment": "/**\n * Whether the collider is a round cylinder collider.\n *\n * **Category:** Physics\n */\n", + "canonicalReference": "server!Chunk#originCoordinate:member", + "docComment": "/**\n * The origin coordinate of the chunk (world-space, multiples of 16).\n *\n * **Category:** Blocks\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get isRoundCylinder(): " + "text": "get originCoordinate(): " }, { - "kind": "Content", - "text": "boolean" + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", @@ -9549,7 +9276,7 @@ "isReadonly": true, "isOptional": false, "releaseTag": "Public", - "name": "isRoundCylinder", + "name": "originCoordinate", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -9557,49 +9284,85 @@ "isStatic": false, "isProtected": false, "isAbstract": false + } + ], + "implementsTokenRanges": [ + { + "startIndex": 1, + "endIndex": 2 + } + ] + }, + { + "kind": "Class", + "canonicalReference": "server!ChunkLattice:class", + "docComment": "/**\n * A lattice of chunks that represent a world's terrain.\n *\n * When to use: reading or mutating blocks in world space. Do NOT use for: per-entity placement logic; prefer higher-level game systems.\n *\n * @remarks\n *\n * The lattice owns all chunks and keeps physics colliders in sync with blocks.\n *\n *

Coordinate System

\n *\n * - **Global (world) coordinates:** integer block positions in world space. - **Chunk origin:** world coordinate at the chunk's minimum corner (multiples of 16). - **Local coordinates:** 0..15 per axis within a chunk. - **Axes:** +X right, +Y up, -Z forward. - **Origin:** (0,0,0) is the world origin.\n *\n * **Category:** Blocks\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export default class ChunkLattice extends " }, { - "kind": "Property", - "canonicalReference": "server!Collider#isSensor:member", - "docComment": "/**\n * Whether the collider is a sensor.\n *\n * **Category:** Physics\n */\n", + "kind": "Reference", + "text": "EventRouter", + "canonicalReference": "server!EventRouter:class" + }, + { + "kind": "Content", + "text": " " + } + ], + "fileUrlPath": "src/worlds/blocks/ChunkLattice.ts", + "releaseTag": "Public", + "isAbstract": false, + "name": "ChunkLattice", + "preserveMemberOrder": false, + "members": [ + { + "kind": "Constructor", + "canonicalReference": "server!ChunkLattice:constructor(1)", + "docComment": "/**\n * Creates a new chunk lattice instance.\n *\n * @param world - The world the chunk lattice is for.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get isSensor(): " + "text": "constructor(world: " }, { - "kind": "Content", - "text": "boolean" + "kind": "Reference", + "text": "World", + "canonicalReference": "server!World:class" }, { "kind": "Content", - "text": ";" + "text": ");" } ], - "isReadonly": true, - "isOptional": false, "releaseTag": "Public", - "name": "isSensor", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": false, "isProtected": false, - "isAbstract": false + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "world", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ] }, { "kind": "Property", - "canonicalReference": "server!Collider#isSimulated:member", - "docComment": "/**\n * Whether the collider is simulated.\n *\n * **Category:** Physics\n */\n", + "canonicalReference": "server!ChunkLattice#chunkCount:member", + "docComment": "/**\n * The number of chunks in the lattice.\n *\n * **Category:** Blocks\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get isSimulated(): " + "text": "get chunkCount(): " }, { "kind": "Content", - "text": "boolean" + "text": "number" }, { "kind": "Content", @@ -9609,7 +9372,7 @@ "isReadonly": true, "isOptional": false, "releaseTag": "Public", - "name": "isSimulated", + "name": "chunkCount", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -9619,103 +9382,80 @@ "isAbstract": false }, { - "kind": "Property", - "canonicalReference": "server!Collider#isTrimesh:member", - "docComment": "/**\n * Whether the collider is a trimesh collider.\n *\n * **Category:** Physics\n */\n", + "kind": "Method", + "canonicalReference": "server!ChunkLattice#clear:member(1)", + "docComment": "/**\n * Removes and clears all chunks and their blocks from the lattice.\n *\n * Use for: full world resets or map reloads. Do NOT use for: incremental changes; use `ChunkLattice.setBlock`.\n *\n * @remarks\n *\n * **Removes colliders:** All block type colliders are removed from the physics simulation.\n *\n * **Emits events:** Emits `REMOVE_CHUNK` for each chunk before clearing.\n *\n * **Side effects:** Clears all chunks, placements, and block colliders.\n *\n * **Category:** Blocks\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get isTrimesh(): " + "text": "clear(): " }, { "kind": "Content", - "text": "boolean" + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "isTrimesh", - "propertyTypeTokenRange": { + "isStatic": false, + "returnTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "isStatic": false, + "releaseTag": "Public", "isProtected": false, - "isAbstract": false + "overloadIndex": 1, + "parameters": [], + "isOptional": false, + "isAbstract": false, + "name": "clear" }, { - "kind": "Property", - "canonicalReference": "server!Collider#isVoxel:member", - "docComment": "/**\n * Whether the collider is a voxel collider.\n *\n * **Category:** Physics\n */\n", + "kind": "Method", + "canonicalReference": "server!ChunkLattice#getAllChunks:member(1)", + "docComment": "/**\n * Gets all chunks in the lattice.\n *\n * @returns An array of all chunks in the lattice.\n *\n * **Category:** Blocks\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get isVoxel(): " + "text": "getAllChunks(): " + }, + { + "kind": "Reference", + "text": "Chunk", + "canonicalReference": "server!Chunk:class" }, { "kind": "Content", - "text": "boolean" + "text": "[]" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "isVoxel", - "propertyTypeTokenRange": { + "isStatic": false, + "returnTypeTokenRange": { "startIndex": 1, - "endIndex": 2 + "endIndex": 3 }, - "isStatic": false, + "releaseTag": "Public", "isProtected": false, - "isAbstract": false + "overloadIndex": 1, + "parameters": [], + "isOptional": false, + "isAbstract": false, + "name": "getAllChunks" }, { - "kind": "Property", - "canonicalReference": "server!Collider#isWedge:member", - "docComment": "/**\n * Whether the collider is a wedge collider.\n *\n * **Category:** Physics\n */\n", + "kind": "Method", + "canonicalReference": "server!ChunkLattice#getBlockId:member(1)", + "docComment": "/**\n * Gets the block type ID at a specific global coordinate.\n *\n * @param globalCoordinate - The global coordinate of the block to get.\n *\n * @returns The block type ID, or 0 if no block is set.\n *\n * **Category:** Blocks\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get isWedge(): " - }, - { - "kind": "Content", - "text": "boolean" - }, - { - "kind": "Content", - "text": ";" - } - ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "isWedge", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false - }, - { - "kind": "Method", - "canonicalReference": "server!Collider.optionsFromBlockHalfExtents:member(1)", - "docComment": "/**\n * Creates collider options from a block's half extents.\n *\n * @param halfExtents - The half extents of the block.\n *\n * @returns The collider options object.\n *\n * **Category:** Physics\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "static optionsFromBlockHalfExtents(halfExtents: " + "text": "getBlockId(globalCoordinate: " }, { "kind": "Reference", @@ -9727,16 +9467,15 @@ "text": "): " }, { - "kind": "Reference", - "text": "ColliderOptions", - "canonicalReference": "server!ColliderOptions:type" + "kind": "Content", + "text": "number" }, { "kind": "Content", "text": ";" } ], - "isStatic": true, + "isStatic": false, "returnTypeTokenRange": { "startIndex": 3, "endIndex": 4 @@ -9746,7 +9485,7 @@ "overloadIndex": 1, "parameters": [ { - "parameterName": "halfExtents", + "parameterName": "globalCoordinate", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -9756,24 +9495,16 @@ ], "isOptional": false, "isAbstract": false, - "name": "optionsFromBlockHalfExtents" + "name": "getBlockId" }, { "kind": "Method", - "canonicalReference": "server!Collider.optionsFromModelUri:member(1)", - "docComment": "/**\n * Creates collider options from a model URI using an approximate shape and size.\n *\n * @remarks\n *\n * Uses model bounds and heuristics unless `preferredShape` is specified.\n *\n * @param modelUri - The URI of the model.\n *\n * @param scale - The scale of the model.\n *\n * @param preferredShape - The preferred shape to use for the collider.\n *\n * @returns The collider options object.\n *\n * **Category:** Physics\n */\n", + "canonicalReference": "server!ChunkLattice#getBlockType:member(1)", + "docComment": "/**\n * Gets the block type at a specific global coordinate.\n *\n * @param globalCoordinate - The global coordinate of the block to get.\n *\n * @returns The block type, or null if no block is set.\n *\n * **Category:** Blocks\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "static optionsFromModelUri(modelUri: " - }, - { - "kind": "Content", - "text": "string" - }, - { - "kind": "Content", - "text": ", scale?: " + "text": "getBlockType(globalCoordinate: " }, { "kind": "Reference", @@ -9782,306 +9513,52 @@ }, { "kind": "Content", - "text": " | number" - }, - { - "kind": "Content", - "text": ", preferredShape?: " + "text": "): " }, { "kind": "Reference", - "text": "ColliderShape", - "canonicalReference": "server!ColliderShape:enum" + "text": "BlockType", + "canonicalReference": "server!BlockType:class" }, { "kind": "Content", - "text": "): " - }, - { - "kind": "Reference", - "text": "ColliderOptions", - "canonicalReference": "server!ColliderOptions:type" + "text": " | null" }, { "kind": "Content", "text": ";" } ], - "isStatic": true, + "isStatic": false, "returnTypeTokenRange": { - "startIndex": 8, - "endIndex": 9 + "startIndex": 3, + "endIndex": 5 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, "parameters": [ { - "parameterName": "modelUri", + "parameterName": "globalCoordinate", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, "isOptional": false - }, - { - "parameterName": "scale", - "parameterTypeTokenRange": { - "startIndex": 3, - "endIndex": 5 - }, - "isOptional": true - }, - { - "parameterName": "preferredShape", - "parameterTypeTokenRange": { - "startIndex": 6, - "endIndex": 7 - }, - "isOptional": true - } - ], - "isOptional": false, - "isAbstract": false, - "name": "optionsFromModelUri" - }, - { - "kind": "Property", - "canonicalReference": "server!Collider#parentRigidBody:member", - "docComment": "/**\n * The parent rigid body of the collider.\n *\n * **Category:** Physics\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "get parentRigidBody(): " - }, - { - "kind": "Reference", - "text": "RigidBody", - "canonicalReference": "server!RigidBody:class" - }, - { - "kind": "Content", - "text": " | undefined" - }, - { - "kind": "Content", - "text": ";" - } - ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "parentRigidBody", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 3 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false - }, - { - "kind": "Property", - "canonicalReference": "server!Collider#rawCollider:member", - "docComment": "/**\n * The raw collider object from the Rapier physics engine.\n *\n * **Category:** Physics\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "get rawCollider(): " - }, - { - "kind": "Reference", - "text": "RawCollider", - "canonicalReference": "server!RawCollider:type" - }, - { - "kind": "Content", - "text": " | undefined" - }, - { - "kind": "Content", - "text": ";" - } - ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "rawCollider", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 3 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false - }, - { - "kind": "Property", - "canonicalReference": "server!Collider#rawShape:member", - "docComment": "/**\n * The raw shape object from the Rapier physics engine.\n *\n * **Category:** Physics\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "get rawShape(): " - }, - { - "kind": "Reference", - "text": "RawShape", - "canonicalReference": "server!RawShape:type" - }, - { - "kind": "Content", - "text": " | undefined" - }, - { - "kind": "Content", - "text": ";" - } - ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "rawShape", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 3 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false - }, - { - "kind": "Property", - "canonicalReference": "server!Collider#relativePosition:member", - "docComment": "/**\n * The relative position of the collider to its parent rigid body.\n *\n * **Category:** Physics\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "get relativePosition(): " - }, - { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" - }, - { - "kind": "Content", - "text": ";" - } - ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "relativePosition", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false - }, - { - "kind": "Property", - "canonicalReference": "server!Collider#relativeRotation:member", - "docComment": "/**\n * The relative rotation of the collider.\n *\n * **Category:** Physics\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "get relativeRotation(): " - }, - { - "kind": "Reference", - "text": "QuaternionLike", - "canonicalReference": "server!QuaternionLike:interface" - }, - { - "kind": "Content", - "text": ";" - } - ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "relativeRotation", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false - }, - { - "kind": "Method", - "canonicalReference": "server!Collider#removeFromSimulation:member(1)", - "docComment": "/**\n * Removes the collider from the simulation.\n *\n * @remarks\n *\n * **Parent unlinking:** Unlinks from parent rigid body if attached.\n *\n * **Side effects:** Removes the collider from the simulation and unlinks it from any parent rigid body.\n *\n * **Category:** Physics\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "removeFromSimulation(): " - }, - { - "kind": "Content", - "text": "void" - }, - { - "kind": "Content", - "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [], "isOptional": false, "isAbstract": false, - "name": "removeFromSimulation" - }, - { - "kind": "Property", - "canonicalReference": "server!Collider#scale:member", - "docComment": "/**\n * The scale of the collider.\n *\n * **Category:** Physics\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "get scale(): " - }, - { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" - }, - { - "kind": "Content", - "text": ";" - } - ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "scale", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "name": "getBlockType" }, { "kind": "Method", - "canonicalReference": "server!Collider#setBounciness:member(1)", - "docComment": "/**\n * Sets the bounciness of the collider.\n *\n * @param bounciness - The bounciness of the collider.\n *\n * **Category:** Physics\n */\n", + "canonicalReference": "server!ChunkLattice#getBlockTypeCount:member(1)", + "docComment": "/**\n * Gets the number of blocks of a specific block type in the lattice.\n *\n * @param blockTypeId - The block type ID to count.\n *\n * @returns The number of blocks of the block type.\n *\n * **Category:** Blocks\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setBounciness(bounciness: " + "text": "getBlockTypeCount(blockTypeId: " }, { "kind": "Content", @@ -10093,7 +9570,7 @@ }, { "kind": "Content", - "text": "void" + "text": "number" }, { "kind": "Content", @@ -10110,7 +9587,7 @@ "overloadIndex": 1, "parameters": [ { - "parameterName": "bounciness", + "parameterName": "blockTypeId", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -10120,29 +9597,34 @@ ], "isOptional": false, "isAbstract": false, - "name": "setBounciness" + "name": "getBlockTypeCount" }, { "kind": "Method", - "canonicalReference": "server!Collider#setBouncinessCombineRule:member(1)", - "docComment": "/**\n * Sets the bounciness combine rule of the collider.\n *\n * @param bouncinessCombineRule - The bounciness combine rule of the collider.\n *\n * **Category:** Physics\n */\n", + "canonicalReference": "server!ChunkLattice#getChunk:member(1)", + "docComment": "/**\n * Gets the chunk that contains the given global coordinate.\n *\n * @param globalCoordinate - The global coordinate to get the chunk for.\n *\n * @returns The chunk that contains the given global coordinate or undefined if not found.\n *\n * **Category:** Blocks\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setBouncinessCombineRule(bouncinessCombineRule: " + "text": "getChunk(globalCoordinate: " }, { "kind": "Reference", - "text": "CoefficientCombineRule", - "canonicalReference": "server!CoefficientCombineRule:enum" + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", "text": "): " }, + { + "kind": "Reference", + "text": "Chunk", + "canonicalReference": "server!Chunk:class" + }, { "kind": "Content", - "text": "void" + "text": " | undefined" }, { "kind": "Content", @@ -10152,14 +9634,14 @@ "isStatic": false, "returnTypeTokenRange": { "startIndex": 3, - "endIndex": 4 + "endIndex": 5 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, "parameters": [ { - "parameterName": "bouncinessCombineRule", + "parameterName": "globalCoordinate", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -10169,29 +9651,30 @@ ], "isOptional": false, "isAbstract": false, - "name": "setBouncinessCombineRule" + "name": "getChunk" }, { "kind": "Method", - "canonicalReference": "server!Collider#setCollisionGroups:member(1)", - "docComment": "/**\n * Sets the collision groups of the collider.\n *\n * @param collisionGroups - The collision groups of the collider.\n *\n * **Category:** Physics\n */\n", + "canonicalReference": "server!ChunkLattice#getOrCreateChunk:member(1)", + "docComment": "/**\n * Gets the chunk for a given global coordinate, creating it if it doesn't exist.\n *\n * @remarks\n *\n * Creates a new chunk and emits `ChunkLatticeEvent.ADD_CHUNK` if needed.\n *\n * @param globalCoordinate - The global coordinate of the chunk to get.\n *\n * @returns The chunk at the given global coordinate (created if needed).\n *\n * **Side effects:** May create and register a new chunk.\n *\n * **Category:** Blocks\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setCollisionGroups(collisionGroups: " + "text": "getOrCreateChunk(globalCoordinate: " }, { "kind": "Reference", - "text": "CollisionGroups", - "canonicalReference": "server!CollisionGroups:type" + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", "text": "): " }, { - "kind": "Content", - "text": "void" + "kind": "Reference", + "text": "Chunk", + "canonicalReference": "server!Chunk:class" }, { "kind": "Content", @@ -10208,7 +9691,7 @@ "overloadIndex": 1, "parameters": [ { - "parameterName": "collisionGroups", + "parameterName": "globalCoordinate", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -10218,20 +9701,21 @@ ], "isOptional": false, "isAbstract": false, - "name": "setCollisionGroups" + "name": "getOrCreateChunk" }, { "kind": "Method", - "canonicalReference": "server!Collider#setEnabled:member(1)", - "docComment": "/**\n * Sets whether the collider is enabled.\n *\n * @param enabled - Whether the collider is enabled.\n *\n * **Category:** Physics\n */\n", + "canonicalReference": "server!ChunkLattice#hasBlock:member(1)", + "docComment": "/**\n * Checks if a block exists at a specific global coordinate.\n *\n * @param globalCoordinate - The global coordinate of the block to check.\n *\n * @returns Whether a block exists.\n *\n * **Category:** Blocks\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setEnabled(enabled: " + "text": "hasBlock(globalCoordinate: " }, { - "kind": "Content", - "text": "boolean" + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", @@ -10239,7 +9723,7 @@ }, { "kind": "Content", - "text": "void" + "text": "boolean" }, { "kind": "Content", @@ -10256,7 +9740,7 @@ "overloadIndex": 1, "parameters": [ { - "parameterName": "enabled", + "parameterName": "globalCoordinate", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -10266,20 +9750,21 @@ ], "isOptional": false, "isAbstract": false, - "name": "setEnabled" + "name": "hasBlock" }, { "kind": "Method", - "canonicalReference": "server!Collider#setFriction:member(1)", - "docComment": "/**\n * Sets the friction of the collider.\n *\n * @param friction - The friction of the collider.\n *\n * **Category:** Physics\n */\n", + "canonicalReference": "server!ChunkLattice#hasChunk:member(1)", + "docComment": "/**\n * Checks if a chunk exists for a given global coordinate.\n *\n * @param globalCoordinate - The global coordinate of the chunk to check.\n *\n * @returns Whether the chunk exists.\n *\n * **Category:** Blocks\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setFriction(friction: " + "text": "hasChunk(globalCoordinate: " }, { - "kind": "Content", - "text": "number" + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", @@ -10287,7 +9772,7 @@ }, { "kind": "Content", - "text": "void" + "text": "boolean" }, { "kind": "Content", @@ -10304,7 +9789,7 @@ "overloadIndex": 1, "parameters": [ { - "parameterName": "friction", + "parameterName": "globalCoordinate", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -10314,21 +9799,29 @@ ], "isOptional": false, "isAbstract": false, - "name": "setFriction" + "name": "hasChunk" }, { "kind": "Method", - "canonicalReference": "server!Collider#setFrictionCombineRule:member(1)", - "docComment": "/**\n * Sets the friction combine rule of the collider.\n *\n * @param frictionCombineRule - The friction combine rule of the collider.\n *\n * **Category:** Physics\n */\n", + "canonicalReference": "server!ChunkLattice#initializeBlocks:member(1)", + "docComment": "/**\n * Initializes all blocks in the lattice in bulk, replacing existing blocks.\n *\n * Use for: loading maps or generating terrain in one pass. Do NOT use for: incremental edits; use `ChunkLattice.setBlock`.\n *\n * @remarks\n *\n * **Clears first:** Calls `ChunkLattice.clear` before initializing, removing all existing blocks and colliders.\n *\n * **Collider optimization:** Creates one collider per block type with all placements combined. Voxel colliders have their states combined for efficient neighbor collision detection.\n *\n * @param blocks - The blocks to initialize, keyed by block type ID.\n *\n * **Side effects:** Clears existing data, creates colliders, and emits `ChunkLatticeEvent.SET_BLOCK` per block.\n *\n * **Category:** Blocks\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setFrictionCombineRule(frictionCombineRule: " + "text": "initializeBlocks(blocks: " + }, + { + "kind": "Content", + "text": "{\n [blockTypeId: number]: " }, { "kind": "Reference", - "text": "CoefficientCombineRule", - "canonicalReference": "server!CoefficientCombineRule:enum" + "text": "BlockPlacement", + "canonicalReference": "server!BlockPlacement:interface" + }, + { + "kind": "Content", + "text": "[];\n }" }, { "kind": "Content", @@ -10345,34 +9838,34 @@ ], "isStatic": false, "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 + "startIndex": 5, + "endIndex": 6 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, "parameters": [ { - "parameterName": "frictionCombineRule", + "parameterName": "blocks", "parameterTypeTokenRange": { "startIndex": 1, - "endIndex": 2 + "endIndex": 4 }, "isOptional": false } ], "isOptional": false, "isAbstract": false, - "name": "setFrictionCombineRule" + "name": "initializeBlocks" }, { "kind": "Method", - "canonicalReference": "server!Collider#setHalfExtents:member(1)", - "docComment": "/**\n * Sets the half extents of a simulated block collider.\n *\n * @param halfExtents - The half extents of the block collider.\n *\n * **Category:** Physics\n */\n", + "canonicalReference": "server!ChunkLattice#setBlock:member(1)", + "docComment": "/**\n * Sets the block at a global coordinate by block type ID.\n *\n * Use for: incremental terrain edits. Do NOT use for: bulk terrain loading; use `ChunkLattice.initializeBlocks`.\n *\n * @remarks\n *\n * **Air:** Use block type ID `0` to remove a block (set to air).\n *\n * **Collider updates:** For voxel block types, updates the existing collider. For trimesh block types, recreates the entire collider.\n *\n * **Removes previous:** If replacing an existing block, removes it from its collider first. If the previous block type has no remaining blocks, its collider is removed from simulation.\n *\n * @param globalCoordinate - The global coordinate of the block to set.\n *\n * @param blockTypeId - The block type ID to set. Use 0 to remove the block and replace with air.\n *\n * @param blockRotation - The rotation of the block.\n *\n * **Side effects:** Emits `ChunkLatticeEvent.SET_BLOCK` and mutates block colliders.\n *\n * **Category:** Blocks\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setHalfExtents(halfExtents: " + "text": "setBlock(globalCoordinate: " }, { "kind": "Reference", @@ -10381,51 +9874,20 @@ }, { "kind": "Content", - "text": "): " + "text": ", blockTypeId: " }, { "kind": "Content", - "text": "void" + "text": "number" }, { "kind": "Content", - "text": ";" - } - ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "halfExtents", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "setHalfExtents" - }, - { - "kind": "Method", - "canonicalReference": "server!Collider#setHalfHeight:member(1)", - "docComment": "/**\n * Sets the half height of a simulated capsule, cone, cylinder, or round cylinder collider.\n *\n * @param halfHeight - The half height of the capsule, cone, cylinder, or round cylinder collider.\n *\n * **Category:** Physics\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "setHalfHeight(halfHeight: " + "text": ", blockRotation?: " }, { - "kind": "Content", - "text": "number" + "kind": "Reference", + "text": "BlockRotation", + "canonicalReference": "server!BlockRotation:type" }, { "kind": "Content", @@ -10442,183 +9904,291 @@ ], "isStatic": false, "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 + "startIndex": 7, + "endIndex": 8 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, "parameters": [ { - "parameterName": "halfHeight", + "parameterName": "globalCoordinate", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "setHalfHeight" - }, - { - "kind": "Method", - "canonicalReference": "server!Collider#setMass:member(1)", - "docComment": "/**\n * Sets the mass of the collider.\n *\n * @param mass - The mass of the collider.\n *\n * **Category:** Physics\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "setMass(mass: " }, { - "kind": "Content", - "text": "number" + "parameterName": "blockTypeId", + "parameterTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "isOptional": false }, + { + "parameterName": "blockRotation", + "parameterTypeTokenRange": { + "startIndex": 5, + "endIndex": 6 + }, + "isOptional": true + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setBlock" + } + ], + "extendsTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "implementsTokenRanges": [] + }, + { + "kind": "Enum", + "canonicalReference": "server!ChunkLatticeEvent:enum", + "docComment": "/**\n * Event types a ChunkLattice instance can emit.\n *\n * See `ChunkLatticeEventPayloads` for the payloads.\n *\n * **Category:** Events\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export declare enum ChunkLatticeEvent " + } + ], + "fileUrlPath": "src/worlds/blocks/ChunkLattice.ts", + "releaseTag": "Public", + "name": "ChunkLatticeEvent", + "preserveMemberOrder": false, + "members": [ + { + "kind": "EnumMember", + "canonicalReference": "server!ChunkLatticeEvent.ADD_CHUNK:member", + "docComment": "", + "excerptTokens": [ { "kind": "Content", - "text": "): " + "text": "ADD_CHUNK = " }, { "kind": "Content", - "text": "void" + "text": "\"CHUNK_LATTICE.ADD_CHUNK\"" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "ADD_CHUNK" + }, + { + "kind": "EnumMember", + "canonicalReference": "server!ChunkLatticeEvent.REMOVE_CHUNK:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "REMOVE_CHUNK = " }, { "kind": "Content", - "text": ";" + "text": "\"CHUNK_LATTICE.REMOVE_CHUNK\"" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 }, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ + "name": "REMOVE_CHUNK" + }, + { + "kind": "EnumMember", + "canonicalReference": "server!ChunkLatticeEvent.SET_BLOCK:member", + "docComment": "", + "excerptTokens": [ { - "parameterName": "mass", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false + "kind": "Content", + "text": "SET_BLOCK = " + }, + { + "kind": "Content", + "text": "\"CHUNK_LATTICE.SET_BLOCK\"" } ], - "isOptional": false, - "isAbstract": false, - "name": "setMass" - }, + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "SET_BLOCK" + } + ] + }, + { + "kind": "Interface", + "canonicalReference": "server!ChunkLatticeEventPayloads:interface", + "docComment": "/**\n * Event payloads for ChunkLattice emitted events.\n *\n * **Category:** Events\n *\n * @public\n */\n", + "excerptTokens": [ { - "kind": "Method", - "canonicalReference": "server!Collider#setOnCollision:member(1)", - "docComment": "/**\n * Sets the on collision callback for the collider.\n *\n * @remarks\n *\n * **Auto-enables events:** Automatically enables/disables collision events based on whether callback is set.\n *\n * @param callback - The on collision callback for the collider.\n *\n * **Category:** Physics\n */\n", + "kind": "Content", + "text": "export interface ChunkLatticeEventPayloads " + } + ], + "fileUrlPath": "src/worlds/blocks/ChunkLattice.ts", + "releaseTag": "Public", + "name": "ChunkLatticeEventPayloads", + "preserveMemberOrder": false, + "members": [ + { + "kind": "PropertySignature", + "canonicalReference": "server!ChunkLatticeEventPayloads#\"CHUNK_LATTICE.ADD_CHUNK\":member", + "docComment": "/**\n * Emitted when a chunk is added to the lattice.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setOnCollision(callback: " + "text": "[" }, { "kind": "Reference", - "text": "CollisionCallback", - "canonicalReference": "server!CollisionCallback:type" + "text": "ChunkLatticeEvent.ADD_CHUNK", + "canonicalReference": "server!ChunkLatticeEvent.ADD_CHUNK:member" }, { "kind": "Content", - "text": " | undefined" + "text": "]: " }, { "kind": "Content", - "text": "): " + "text": "{\n chunkLattice: " + }, + { + "kind": "Reference", + "text": "ChunkLattice", + "canonicalReference": "server!ChunkLattice:class" }, { "kind": "Content", - "text": "void" + "text": ";\n chunk: " + }, + { + "kind": "Reference", + "text": "Chunk", + "canonicalReference": "server!Chunk:class" }, { "kind": "Content", - "text": ";" - } - ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 4, - "endIndex": 5 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ + "text": ";\n }" + }, { - "parameterName": "callback", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 3 - }, - "isOptional": false + "kind": "Content", + "text": ";" } ], + "isReadonly": false, "isOptional": false, - "isAbstract": false, - "name": "setOnCollision" + "releaseTag": "Public", + "name": "\"CHUNK_LATTICE.ADD_CHUNK\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 8 + } }, { - "kind": "Method", - "canonicalReference": "server!Collider#setRadius:member(1)", - "docComment": "/**\n * Sets the radius of a simulated ball, capsule, cylinder, or round cylinder collider.\n *\n * @param radius - The radius of the collider.\n *\n * **Category:** Physics\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!ChunkLatticeEventPayloads#\"CHUNK_LATTICE.REMOVE_CHUNK\":member", + "docComment": "/**\n * Emitted when a chunk is removed from the lattice.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setRadius(radius: " + "text": "[" + }, + { + "kind": "Reference", + "text": "ChunkLatticeEvent.REMOVE_CHUNK", + "canonicalReference": "server!ChunkLatticeEvent.REMOVE_CHUNK:member" }, { "kind": "Content", - "text": "number" + "text": "]: " }, { "kind": "Content", - "text": "): " + "text": "{\n chunkLattice: " + }, + { + "kind": "Reference", + "text": "ChunkLattice", + "canonicalReference": "server!ChunkLattice:class" }, { "kind": "Content", - "text": "void" + "text": ";\n chunk: " + }, + { + "kind": "Reference", + "text": "Chunk", + "canonicalReference": "server!Chunk:class" }, { "kind": "Content", - "text": ";" - } - ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ + "text": ";\n }" + }, { - "parameterName": "radius", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false + "kind": "Content", + "text": ";" } ], + "isReadonly": false, "isOptional": false, - "isAbstract": false, - "name": "setRadius" + "releaseTag": "Public", + "name": "\"CHUNK_LATTICE.REMOVE_CHUNK\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 8 + } }, { - "kind": "Method", - "canonicalReference": "server!Collider#setRelativePosition:member(1)", - "docComment": "/**\n * Sets the position of the collider relative to its parent rigid body or the world origin.\n *\n * @remarks\n *\n * Colliders can be added as a child of a rigid body, or to the world directly. This position is relative to the parent rigid body or the world origin.\n *\n * @param position - The relative position of the collider.\n *\n * **Category:** Physics\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!ChunkLatticeEventPayloads#\"CHUNK_LATTICE.SET_BLOCK\":member", + "docComment": "/**\n * Emitted when a block is set in the lattice.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setRelativePosition(position: " + "text": "[" + }, + { + "kind": "Reference", + "text": "ChunkLatticeEvent.SET_BLOCK", + "canonicalReference": "server!ChunkLatticeEvent.SET_BLOCK:member" + }, + { + "kind": "Content", + "text": "]: " + }, + { + "kind": "Content", + "text": "{\n chunkLattice: " + }, + { + "kind": "Reference", + "text": "ChunkLattice", + "canonicalReference": "server!ChunkLattice:class" + }, + { + "kind": "Content", + "text": ";\n chunk: " + }, + { + "kind": "Reference", + "text": "Chunk", + "canonicalReference": "server!Chunk:class" + }, + { + "kind": "Content", + "text": ";\n globalCoordinate: " }, { "kind": "Reference", @@ -10627,101 +10197,224 @@ }, { "kind": "Content", - "text": "): " + "text": ";\n localCoordinate: " + }, + { + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", - "text": "void" + "text": ";\n blockTypeId: number;\n blockRotation?: " + }, + { + "kind": "Reference", + "text": "BlockRotation", + "canonicalReference": "server!BlockRotation:type" + }, + { + "kind": "Content", + "text": ";\n }" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { + "isReadonly": false, + "isOptional": false, + "releaseTag": "Public", + "name": "\"CHUNK_LATTICE.SET_BLOCK\"", + "propertyTypeTokenRange": { "startIndex": 3, - "endIndex": 4 + "endIndex": 14 + } + } + ], + "extendsTokenRanges": [] + }, + { + "kind": "Enum", + "canonicalReference": "server!CoefficientCombineRule:enum", + "docComment": "/**\n * The coefficient for friction or bounciness combine rule.\n *\n * **Category:** Physics\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export declare enum CoefficientCombineRule " + } + ], + "fileUrlPath": "src/worlds/physics/Collider.ts", + "releaseTag": "Public", + "name": "CoefficientCombineRule", + "preserveMemberOrder": false, + "members": [ + { + "kind": "EnumMember", + "canonicalReference": "server!CoefficientCombineRule.Average:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "Average = " + }, + { + "kind": "Content", + "text": "0" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 }, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ + "name": "Average" + }, + { + "kind": "EnumMember", + "canonicalReference": "server!CoefficientCombineRule.Max:member", + "docComment": "", + "excerptTokens": [ { - "parameterName": "position", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false + "kind": "Content", + "text": "Max = " + }, + { + "kind": "Content", + "text": "3" } ], - "isOptional": false, - "isAbstract": false, - "name": "setRelativePosition" + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "Max" }, { - "kind": "Method", - "canonicalReference": "server!Collider#setRelativeRotation:member(1)", - "docComment": "/**\n * Sets the relative rotation of the collider to its parent rigid body or the world origin.\n *\n * @remarks\n *\n * Colliders can be added as a child of a rigid body, or to the world directly. This rotation is relative to the parent rigid body or the world origin.\n *\n * @param rotation - The relative rotation of the collider.\n *\n * **Category:** Physics\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!CoefficientCombineRule.Min:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "setRelativeRotation(rotation: " + "text": "Min = " }, { - "kind": "Reference", - "text": "QuaternionLike", - "canonicalReference": "server!QuaternionLike:interface" - }, + "kind": "Content", + "text": "1" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "Min" + }, + { + "kind": "EnumMember", + "canonicalReference": "server!CoefficientCombineRule.Multiply:member", + "docComment": "", + "excerptTokens": [ { "kind": "Content", - "text": "): " + "text": "Multiply = " }, { "kind": "Content", - "text": "void" + "text": "2" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "Multiply" + } + ] + }, + { + "kind": "Class", + "canonicalReference": "server!Collider:class", + "docComment": "/**\n * Represents a collider in a world's physics simulation.\n *\n * When to use: defining collision shapes for rigid bodies or entities. Do NOT use for: gameplay queries; use `Simulation.raycast` or intersection APIs instead.\n *\n * @remarks\n *\n * Colliders are usually created via `RigidBody` or `Entity` options. You can also create and manage them directly for advanced use cases.\n *\n * **Category:** Physics\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export default class Collider extends " + }, + { + "kind": "Reference", + "text": "EventRouter", + "canonicalReference": "server!EventRouter:class" + }, + { + "kind": "Content", + "text": " " + } + ], + "fileUrlPath": "src/worlds/physics/Collider.ts", + "releaseTag": "Public", + "isAbstract": false, + "name": "Collider", + "preserveMemberOrder": false, + "members": [ + { + "kind": "Constructor", + "canonicalReference": "server!Collider:constructor(1)", + "docComment": "/**\n * Creates a collider with the provided options.\n *\n * Use for: configuring a collider before adding it to a simulation or rigid body.\n *\n * @param colliderOptions - The options for the collider instance.\n *\n * **Category:** Physics\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "constructor(colliderOptions: " + }, + { + "kind": "Reference", + "text": "ColliderOptions", + "canonicalReference": "server!ColliderOptions:type" }, { "kind": "Content", - "text": ";" + "text": ");" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, "parameters": [ { - "parameterName": "rotation", + "parameterName": "colliderOptions", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, "isOptional": false } - ], - "isOptional": false, - "isAbstract": false, - "name": "setRelativeRotation" + ] }, { "kind": "Method", - "canonicalReference": "server!Collider#setScale:member(1)", - "docComment": "/**\n * Scales the collider by the given scalar. Only ball, block, capsule, cone, cylinder, round cylinder are supported.\n *\n * @remarks\n *\n * **Ratio-based:** Uses ratio-based scaling relative to current scale, not absolute dimensions. Also scales `relativePosition` proportionally.\n *\n * @param scalar - The scalar to scale the collider by.\n *\n * **Category:** Physics\n */\n", + "canonicalReference": "server!Collider#addToSimulation:member(1)", + "docComment": "/**\n * Adds the collider to the simulation.\n *\n * @remarks\n *\n * **Parent linking:** Links the collider to the parent rigid body if provided.\n *\n * **Collision callback:** Applies any configured `onCollision` callback.\n *\n * @param simulation - The simulation to add the collider to.\n *\n * @param parentRigidBody - The parent rigid body of the collider.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setScale(scale: " + "text": "addToSimulation(simulation: " }, { "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "text": "Simulation", + "canonicalReference": "server!Simulation:class" + }, + { + "kind": "Content", + "text": ", parentRigidBody?: " + }, + { + "kind": "Reference", + "text": "RigidBody", + "canonicalReference": "server!RigidBody:class" }, { "kind": "Content", @@ -10738,86 +10431,138 @@ ], "isStatic": false, "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 + "startIndex": 5, + "endIndex": 6 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, "parameters": [ { - "parameterName": "scale", + "parameterName": "simulation", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, "isOptional": false + }, + { + "parameterName": "parentRigidBody", + "parameterTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "isOptional": true } ], "isOptional": false, "isAbstract": false, - "name": "setScale" + "name": "addToSimulation" }, { - "kind": "Method", - "canonicalReference": "server!Collider#setSensor:member(1)", - "docComment": "/**\n * Sets whether the collider is a sensor.\n *\n * @param sensor - Whether the collider is a sensor.\n *\n * **Category:** Physics\n */\n", + "kind": "Property", + "canonicalReference": "server!Collider#bounciness:member", + "docComment": "/**\n * The bounciness of the collider.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setSensor(sensor: " + "text": "get bounciness(): " }, { "kind": "Content", - "text": "boolean" + "text": "number" }, { "kind": "Content", - "text": "): " - }, + "text": ";" + } + ], + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "bounciness", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false + }, + { + "kind": "Property", + "canonicalReference": "server!Collider#bouncinessCombineRule:member", + "docComment": "/**\n * The bounciness combine rule of the collider.\n *\n * **Category:** Physics\n */\n", + "excerptTokens": [ { "kind": "Content", - "text": "void" + "text": "get bouncinessCombineRule(): " + }, + { + "kind": "Reference", + "text": "CoefficientCombineRule", + "canonicalReference": "server!CoefficientCombineRule:enum" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, + "isReadonly": true, + "isOptional": false, "releaseTag": "Public", + "name": "bouncinessCombineRule", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, "isProtected": false, - "overloadIndex": 1, - "parameters": [ + "isAbstract": false + }, + { + "kind": "Property", + "canonicalReference": "server!Collider#collisionGroups:member", + "docComment": "/**\n * The collision groups the collider belongs to.\n *\n * **Category:** Physics\n */\n", + "excerptTokens": [ { - "parameterName": "sensor", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false + "kind": "Content", + "text": "get collisionGroups(): " + }, + { + "kind": "Reference", + "text": "CollisionGroups", + "canonicalReference": "server!CollisionGroups:type" + }, + { + "kind": "Content", + "text": ";" } ], + "isReadonly": true, "isOptional": false, - "isAbstract": false, - "name": "setSensor" + "releaseTag": "Public", + "name": "collisionGroups", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { "kind": "Method", - "canonicalReference": "server!Collider#setTag:member(1)", - "docComment": "/**\n * Sets the tag of the collider.\n *\n * @param tag - The tag of the collider.\n *\n * **Category:** Physics\n */\n", + "canonicalReference": "server!Collider#enableCollisionEvents:member(1)", + "docComment": "/**\n * Enables or disables collision events for the collider. This is automatically enabled if an on collision callback is set.\n *\n * @param enabled - Whether collision events are enabled.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setTag(tag: " + "text": "enableCollisionEvents(enabled: " }, { "kind": "Content", - "text": "string" + "text": "boolean" }, { "kind": "Content", @@ -10842,7 +10587,7 @@ "overloadIndex": 1, "parameters": [ { - "parameterName": "tag", + "parameterName": "enabled", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -10852,25 +10597,16 @@ ], "isOptional": false, "isAbstract": false, - "name": "setTag" + "name": "enableCollisionEvents" }, { "kind": "Method", - "canonicalReference": "server!Collider#setVoxel:member(1)", - "docComment": "/**\n * Sets the voxel at the given coordinate as filled or not filled.\n *\n * @param coordinate - The coordinate of the voxel to set.\n *\n * @param filled - True if the voxel at the coordinate should be filled, false if it should be removed.\n *\n * **Category:** Physics\n */\n", + "canonicalReference": "server!Collider#enableContactForceEvents:member(1)", + "docComment": "/**\n * Enables or disables contact force events for the collider. This is automatically enabled if an on contact force callback is set.\n *\n * @param enabled - Whether contact force events are enabled.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setVoxel(coordinate: " - }, - { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" - }, - { - "kind": "Content", - "text": ", filled: " + "text": "enableContactForceEvents(enabled: " }, { "kind": "Content", @@ -10891,47 +10627,38 @@ ], "isStatic": false, "returnTypeTokenRange": { - "startIndex": 5, - "endIndex": 6 + "startIndex": 3, + "endIndex": 4 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, "parameters": [ { - "parameterName": "coordinate", + "parameterName": "enabled", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, "isOptional": false - }, - { - "parameterName": "filled", - "parameterTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "isOptional": false } ], "isOptional": false, "isAbstract": false, - "name": "setVoxel" + "name": "enableContactForceEvents" }, { "kind": "Property", - "canonicalReference": "server!Collider#shape:member", - "docComment": "/**\n * The shape of the collider.\n *\n * **Category:** Physics\n */\n", + "canonicalReference": "server!Collider#friction:member", + "docComment": "/**\n * The friction of the collider.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get shape(): " + "text": "get friction(): " }, { - "kind": "Reference", - "text": "ColliderShape", - "canonicalReference": "server!ColliderShape:enum" + "kind": "Content", + "text": "number" }, { "kind": "Content", @@ -10941,7 +10668,7 @@ "isReadonly": true, "isOptional": false, "releaseTag": "Public", - "name": "shape", + "name": "friction", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -10952,16 +10679,17 @@ }, { "kind": "Property", - "canonicalReference": "server!Collider#tag:member", - "docComment": "/**\n * An arbitrary identifier tag of the collider. Useful for your own logic.\n *\n * **Category:** Physics\n */\n", + "canonicalReference": "server!Collider#frictionCombineRule:member", + "docComment": "/**\n * The friction combine rule of the collider.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get tag(): " + "text": "get frictionCombineRule(): " }, { - "kind": "Content", - "text": "string | undefined" + "kind": "Reference", + "text": "CoefficientCombineRule", + "canonicalReference": "server!CoefficientCombineRule:enum" }, { "kind": "Content", @@ -10971,7 +10699,7 @@ "isReadonly": true, "isOptional": false, "releaseTag": "Public", - "name": "tag", + "name": "frictionCombineRule", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -10979,874 +10707,966 @@ "isStatic": false, "isProtected": false, "isAbstract": false - } - ], - "extendsTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "implementsTokenRanges": [] - }, - { - "kind": "TypeAlias", - "canonicalReference": "server!ColliderOptions:type", - "docComment": "/**\n * The options for a collider.\n *\n * Use for: providing collider definitions when creating rigid bodies or entities. Do NOT use for: runtime changes; use `Collider` APIs instead.\n *\n * **Category:** Physics\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export type ColliderOptions = " - }, - { - "kind": "Reference", - "text": "BallColliderOptions", - "canonicalReference": "server!BallColliderOptions:interface" - }, - { - "kind": "Content", - "text": " | " - }, - { - "kind": "Reference", - "text": "BlockColliderOptions", - "canonicalReference": "server!BlockColliderOptions:interface" - }, - { - "kind": "Content", - "text": " | " - }, - { - "kind": "Reference", - "text": "CapsuleColliderOptions", - "canonicalReference": "server!CapsuleColliderOptions:interface" - }, - { - "kind": "Content", - "text": " | " - }, - { - "kind": "Reference", - "text": "ConeColliderOptions", - "canonicalReference": "server!ConeColliderOptions:interface" - }, - { - "kind": "Content", - "text": " | " - }, - { - "kind": "Reference", - "text": "CylinderColliderOptions", - "canonicalReference": "server!CylinderColliderOptions:interface" - }, - { - "kind": "Content", - "text": " | " - }, - { - "kind": "Reference", - "text": "RoundCylinderColliderOptions", - "canonicalReference": "server!RoundCylinderColliderOptions:interface" - }, - { - "kind": "Content", - "text": " | " - }, - { - "kind": "Reference", - "text": "TrimeshColliderOptions", - "canonicalReference": "server!TrimeshColliderOptions:interface" - }, - { - "kind": "Content", - "text": " | " - }, - { - "kind": "Reference", - "text": "VoxelsColliderOptions", - "canonicalReference": "server!VoxelsColliderOptions:interface" - }, - { - "kind": "Content", - "text": " | " - }, - { - "kind": "Reference", - "text": "WedgeColliderOptions", - "canonicalReference": "server!WedgeColliderOptions:interface" - }, - { - "kind": "Content", - "text": " | " - }, - { - "kind": "Reference", - "text": "NoneColliderOptions", - "canonicalReference": "server!NoneColliderOptions:interface" }, { - "kind": "Content", - "text": ";" - } - ], - "fileUrlPath": "src/worlds/physics/Collider.ts", - "releaseTag": "Public", - "name": "ColliderOptions", - "typeTokenRange": { - "startIndex": 1, - "endIndex": 20 - } - }, - { - "kind": "Enum", - "canonicalReference": "server!ColliderShape:enum", - "docComment": "/**\n * The shapes a collider can be.\n *\n * **Category:** Physics\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export declare enum ColliderShape " - } - ], - "fileUrlPath": "src/worlds/physics/Collider.ts", - "releaseTag": "Public", - "name": "ColliderShape", - "preserveMemberOrder": false, - "members": [ - { - "kind": "EnumMember", - "canonicalReference": "server!ColliderShape.BALL:member", - "docComment": "", + "kind": "Property", + "canonicalReference": "server!Collider#isBall:member", + "docComment": "/**\n * Whether the collider is a ball collider.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "BALL = " + "text": "get isBall(): " }, { "kind": "Content", - "text": "\"ball\"" + "text": "boolean" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "isBall", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "releaseTag": "Public", - "name": "BALL" + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "EnumMember", - "canonicalReference": "server!ColliderShape.BLOCK:member", - "docComment": "", + "kind": "Property", + "canonicalReference": "server!Collider#isBlock:member", + "docComment": "/**\n * Whether the collider is a block collider.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "BLOCK = " + "text": "get isBlock(): " }, { "kind": "Content", - "text": "\"block\"" + "text": "boolean" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "isBlock", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "releaseTag": "Public", - "name": "BLOCK" + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "EnumMember", - "canonicalReference": "server!ColliderShape.CAPSULE:member", - "docComment": "", + "kind": "Property", + "canonicalReference": "server!Collider#isCapsule:member", + "docComment": "/**\n * Whether the collider is a capsule collider.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "CAPSULE = " + "text": "get isCapsule(): " }, { "kind": "Content", - "text": "\"capsule\"" + "text": "boolean" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "isCapsule", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "releaseTag": "Public", - "name": "CAPSULE" + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "EnumMember", - "canonicalReference": "server!ColliderShape.CONE:member", - "docComment": "", + "kind": "Property", + "canonicalReference": "server!Collider#isCone:member", + "docComment": "/**\n * Whether the collider is a cone collider.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "CONE = " + "text": "get isCone(): " }, { "kind": "Content", - "text": "\"cone\"" + "text": "boolean" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "isCone", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "releaseTag": "Public", - "name": "CONE" + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "EnumMember", - "canonicalReference": "server!ColliderShape.CYLINDER:member", - "docComment": "", + "kind": "Property", + "canonicalReference": "server!Collider#isCylinder:member", + "docComment": "/**\n * Whether the collider is a cylinder collider.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "CYLINDER = " + "text": "get isCylinder(): " }, { "kind": "Content", - "text": "\"cylinder\"" + "text": "boolean" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "isCylinder", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "releaseTag": "Public", - "name": "CYLINDER" + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "EnumMember", - "canonicalReference": "server!ColliderShape.NONE:member", - "docComment": "", + "kind": "Property", + "canonicalReference": "server!Collider#isEnabled:member", + "docComment": "/**\n * Whether the collider is enabled.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "NONE = " + "text": "get isEnabled(): " }, { "kind": "Content", - "text": "\"none\"" + "text": "boolean" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "isEnabled", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "releaseTag": "Public", - "name": "NONE" + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "EnumMember", - "canonicalReference": "server!ColliderShape.ROUND_CYLINDER:member", - "docComment": "", + "kind": "Property", + "canonicalReference": "server!Collider#isNone:member", + "docComment": "/**\n * Whether the collider is a none collider.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "ROUND_CYLINDER = " + "text": "get isNone(): " }, { "kind": "Content", - "text": "\"round-cylinder\"" + "text": "boolean" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "isNone", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "releaseTag": "Public", - "name": "ROUND_CYLINDER" + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "EnumMember", - "canonicalReference": "server!ColliderShape.TRIMESH:member", - "docComment": "", + "kind": "Property", + "canonicalReference": "server!Collider#isRemoved:member", + "docComment": "/**\n * Whether the collider has been removed from the simulation.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "TRIMESH = " + "text": "get isRemoved(): " }, { "kind": "Content", - "text": "\"trimesh\"" + "text": "boolean" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "isRemoved", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "releaseTag": "Public", - "name": "TRIMESH" + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "EnumMember", - "canonicalReference": "server!ColliderShape.VOXELS:member", - "docComment": "", + "kind": "Property", + "canonicalReference": "server!Collider#isRoundCylinder:member", + "docComment": "/**\n * Whether the collider is a round cylinder collider.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "VOXELS = " + "text": "get isRoundCylinder(): " }, { "kind": "Content", - "text": "\"voxels\"" + "text": "boolean" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "isRoundCylinder", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "releaseTag": "Public", - "name": "VOXELS" + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "EnumMember", - "canonicalReference": "server!ColliderShape.WEDGE:member", - "docComment": "", + "kind": "Property", + "canonicalReference": "server!Collider#isSensor:member", + "docComment": "/**\n * Whether the collider is a sensor.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "WEDGE = " + "text": "get isSensor(): " }, { "kind": "Content", - "text": "\"wedge\"" + "text": "boolean" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "isSensor", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "releaseTag": "Public", - "name": "WEDGE" - } - ] - }, - { - "kind": "TypeAlias", - "canonicalReference": "server!CollisionCallback:type", - "docComment": "/**\n * A callback function that is called when a collision occurs.\n *\n * @param other - The other object involved in the collision, a block or entity.\n *\n * @param started - Whether the collision has started or ended.\n *\n * **Category:** Physics\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export type CollisionCallback = " - }, - { - "kind": "Content", - "text": "((other: " - }, - { - "kind": "Reference", - "text": "BlockType", - "canonicalReference": "server!BlockType:class" - }, - { - "kind": "Content", - "text": " | " - }, - { - "kind": "Reference", - "text": "Entity", - "canonicalReference": "server!Entity:class" - }, - { - "kind": "Content", - "text": ", started: boolean) => void) | ((other: " - }, - { - "kind": "Reference", - "text": "BlockType", - "canonicalReference": "server!BlockType:class" - }, - { - "kind": "Content", - "text": " | " - }, - { - "kind": "Reference", - "text": "Entity", - "canonicalReference": "server!Entity:class" - }, - { - "kind": "Content", - "text": ", started: boolean, colliderHandleA: number, colliderHandleB: number) => void)" + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "Content", - "text": ";" - } - ], - "fileUrlPath": "src/worlds/physics/ColliderMap.ts", - "releaseTag": "Public", - "name": "CollisionCallback", - "typeTokenRange": { - "startIndex": 1, - "endIndex": 10 - } - }, - { - "kind": "Enum", - "canonicalReference": "server!CollisionGroup:enum", - "docComment": "/**\n * The default collision groups.\n *\n * @remarks\n *\n * Collision groups determine which objects collide and generate events. Up to 15 groups can be registered. Filtering uses pairwise bit masks:\n *\n * - The belongsTo groups (the 16 left-most bits of `self.0`) - The collidesWith mask (the 16 right-most bits of `self.0`)\n *\n * An interaction is allowed between two filters `a` and `b` if:\n * ```\n * ((a >> 16) & b) != 0 && ((b >> 16) & a) != 0\n * ```\n *\n * **Category:** Physics\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export declare enum CollisionGroup " - } - ], - "fileUrlPath": "src/worlds/physics/CollisionGroupsBuilder.ts", - "releaseTag": "Public", - "name": "CollisionGroup", - "preserveMemberOrder": false, - "members": [ - { - "kind": "EnumMember", - "canonicalReference": "server!CollisionGroup.ALL:member", - "docComment": "", + "kind": "Property", + "canonicalReference": "server!Collider#isSimulated:member", + "docComment": "/**\n * Whether the collider is simulated.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "ALL = " + "text": "get isSimulated(): " }, { "kind": "Content", - "text": "65535" + "text": "boolean" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "isSimulated", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "releaseTag": "Public", - "name": "ALL" + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "EnumMember", - "canonicalReference": "server!CollisionGroup.BLOCK:member", - "docComment": "", + "kind": "Property", + "canonicalReference": "server!Collider#isTrimesh:member", + "docComment": "/**\n * Whether the collider is a trimesh collider.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "BLOCK = " + "text": "get isTrimesh(): " }, { "kind": "Content", - "text": "1" + "text": "boolean" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "isTrimesh", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "releaseTag": "Public", - "name": "BLOCK" + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "EnumMember", - "canonicalReference": "server!CollisionGroup.ENTITY:member", - "docComment": "", + "kind": "Property", + "canonicalReference": "server!Collider#isVoxel:member", + "docComment": "/**\n * Whether the collider is a voxel collider.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "ENTITY = " + "text": "get isVoxel(): " }, { "kind": "Content", - "text": "2" + "text": "boolean" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "isVoxel", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "releaseTag": "Public", - "name": "ENTITY" + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "EnumMember", - "canonicalReference": "server!CollisionGroup.ENTITY_SENSOR:member", - "docComment": "", + "kind": "Property", + "canonicalReference": "server!Collider#isWedge:member", + "docComment": "/**\n * Whether the collider is a wedge collider.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "ENTITY_SENSOR = " + "text": "get isWedge(): " }, { "kind": "Content", - "text": "4" + "text": "boolean" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "isWedge", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "releaseTag": "Public", - "name": "ENTITY_SENSOR" + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "EnumMember", - "canonicalReference": "server!CollisionGroup.ENVIRONMENT_ENTITY:member", - "docComment": "", + "kind": "Method", + "canonicalReference": "server!Collider.optionsFromBlockHalfExtents:member(1)", + "docComment": "/**\n * Creates collider options from a block's half extents.\n *\n * @param halfExtents - The half extents of the block.\n *\n * @returns The collider options object.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "ENVIRONMENT_ENTITY = " + "text": "static optionsFromBlockHalfExtents(halfExtents: " + }, + { + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", - "text": "8" + "text": "): " + }, + { + "kind": "Reference", + "text": "ColliderOptions", + "canonicalReference": "server!ColliderOptions:type" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 + "isStatic": true, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 }, "releaseTag": "Public", - "name": "ENVIRONMENT_ENTITY" + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "halfExtents", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "optionsFromBlockHalfExtents" }, { - "kind": "EnumMember", - "canonicalReference": "server!CollisionGroup.GROUP_1:member", - "docComment": "", + "kind": "Method", + "canonicalReference": "server!Collider.optionsFromModelUri:member(1)", + "docComment": "/**\n * Creates collider options from a model URI using an approximate shape and size.\n *\n * @remarks\n *\n * Uses model bounds and heuristics unless `preferredShape` is specified.\n *\n * @param modelUri - The URI of the model.\n *\n * @param scale - The scale of the model.\n *\n * @param preferredShape - The preferred shape to use for the collider.\n *\n * @returns The collider options object.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "GROUP_1 = " + "text": "static optionsFromModelUri(modelUri: " }, { "kind": "Content", - "text": "32" - } - ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "releaseTag": "Public", - "name": "GROUP_1" - }, - { - "kind": "EnumMember", - "canonicalReference": "server!CollisionGroup.GROUP_10:member", - "docComment": "", - "excerptTokens": [ + "text": "string" + }, { "kind": "Content", - "text": "GROUP_10 = " + "text": ", scale?: " + }, + { + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", - "text": "16384" + "text": " | number" + }, + { + "kind": "Content", + "text": ", preferredShape?: " + }, + { + "kind": "Reference", + "text": "ColliderShape", + "canonicalReference": "server!ColliderShape:enum" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "ColliderOptions", + "canonicalReference": "server!ColliderOptions:type" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 + "isStatic": true, + "returnTypeTokenRange": { + "startIndex": 8, + "endIndex": 9 }, "releaseTag": "Public", - "name": "GROUP_10" + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "modelUri", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + }, + { + "parameterName": "scale", + "parameterTypeTokenRange": { + "startIndex": 3, + "endIndex": 5 + }, + "isOptional": true + }, + { + "parameterName": "preferredShape", + "parameterTypeTokenRange": { + "startIndex": 6, + "endIndex": 7 + }, + "isOptional": true + } + ], + "isOptional": false, + "isAbstract": false, + "name": "optionsFromModelUri" }, { - "kind": "EnumMember", - "canonicalReference": "server!CollisionGroup.GROUP_11:member", - "docComment": "", + "kind": "Property", + "canonicalReference": "server!Collider#parentRigidBody:member", + "docComment": "/**\n * The parent rigid body of the collider.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "GROUP_11 = " + "text": "get parentRigidBody(): " + }, + { + "kind": "Reference", + "text": "RigidBody", + "canonicalReference": "server!RigidBody:class" }, { "kind": "Content", - "text": "32768" + "text": " | undefined" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "parentRigidBody", + "propertyTypeTokenRange": { "startIndex": 1, - "endIndex": 2 + "endIndex": 3 }, - "releaseTag": "Public", - "name": "GROUP_11" + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "EnumMember", - "canonicalReference": "server!CollisionGroup.GROUP_2:member", - "docComment": "", + "kind": "Property", + "canonicalReference": "server!Collider#rawCollider:member", + "docComment": "/**\n * The raw collider object from the Rapier physics engine.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "GROUP_2 = " + "text": "get rawCollider(): " + }, + { + "kind": "Reference", + "text": "RawCollider", + "canonicalReference": "server!RawCollider:type" }, { "kind": "Content", - "text": "64" + "text": " | undefined" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "rawCollider", + "propertyTypeTokenRange": { "startIndex": 1, - "endIndex": 2 + "endIndex": 3 }, - "releaseTag": "Public", - "name": "GROUP_2" + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "EnumMember", - "canonicalReference": "server!CollisionGroup.GROUP_3:member", - "docComment": "", + "kind": "Property", + "canonicalReference": "server!Collider#rawShape:member", + "docComment": "/**\n * The raw shape object from the Rapier physics engine.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "GROUP_3 = " + "text": "get rawShape(): " + }, + { + "kind": "Reference", + "text": "RawShape", + "canonicalReference": "server!RawShape:type" }, { "kind": "Content", - "text": "128" + "text": " | undefined" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "rawShape", + "propertyTypeTokenRange": { "startIndex": 1, - "endIndex": 2 + "endIndex": 3 }, - "releaseTag": "Public", - "name": "GROUP_3" + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "EnumMember", - "canonicalReference": "server!CollisionGroup.GROUP_4:member", - "docComment": "", + "kind": "Property", + "canonicalReference": "server!Collider#relativePosition:member", + "docComment": "/**\n * The relative position of the collider to its parent rigid body.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "GROUP_4 = " + "text": "get relativePosition(): " + }, + { + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", - "text": "256" + "text": ";" } ], - "initializerTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "relativePosition", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "releaseTag": "Public", - "name": "GROUP_4" + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "EnumMember", - "canonicalReference": "server!CollisionGroup.GROUP_5:member", - "docComment": "", + "kind": "Property", + "canonicalReference": "server!Collider#relativeRotation:member", + "docComment": "/**\n * The relative rotation of the collider.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "GROUP_5 = " + "text": "get relativeRotation(): " + }, + { + "kind": "Reference", + "text": "QuaternionLike", + "canonicalReference": "server!QuaternionLike:interface" }, { "kind": "Content", - "text": "512" + "text": ";" } ], - "initializerTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "relativeRotation", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "releaseTag": "Public", - "name": "GROUP_5" + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "EnumMember", - "canonicalReference": "server!CollisionGroup.GROUP_6:member", - "docComment": "", + "kind": "Method", + "canonicalReference": "server!Collider#removeFromSimulation:member(1)", + "docComment": "/**\n * Removes the collider from the simulation.\n *\n * @remarks\n *\n * **Parent unlinking:** Unlinks from parent rigid body if attached.\n *\n * **Side effects:** Removes the collider from the simulation and unlinks it from any parent rigid body.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "GROUP_6 = " + "text": "removeFromSimulation(): " }, { "kind": "Content", - "text": "1024" + "text": "void" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { + "isStatic": false, + "returnTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, "releaseTag": "Public", - "name": "GROUP_6" + "isProtected": false, + "overloadIndex": 1, + "parameters": [], + "isOptional": false, + "isAbstract": false, + "name": "removeFromSimulation" }, { - "kind": "EnumMember", - "canonicalReference": "server!CollisionGroup.GROUP_7:member", - "docComment": "", + "kind": "Property", + "canonicalReference": "server!Collider#scale:member", + "docComment": "/**\n * The scale of the collider.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "GROUP_7 = " + "text": "get scale(): " + }, + { + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", - "text": "2048" + "text": ";" } ], - "initializerTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "scale", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "releaseTag": "Public", - "name": "GROUP_7" + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "EnumMember", - "canonicalReference": "server!CollisionGroup.GROUP_8:member", - "docComment": "", + "kind": "Method", + "canonicalReference": "server!Collider#setBounciness:member(1)", + "docComment": "/**\n * Sets the bounciness of the collider.\n *\n * @param bounciness - The bounciness of the collider.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "GROUP_8 = " + "text": "setBounciness(bounciness: " }, { "kind": "Content", - "text": "4096" + "text": "number" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Content", + "text": "void" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 }, "releaseTag": "Public", - "name": "GROUP_8" + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "bounciness", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setBounciness" }, { - "kind": "EnumMember", - "canonicalReference": "server!CollisionGroup.GROUP_9:member", - "docComment": "", + "kind": "Method", + "canonicalReference": "server!Collider#setBouncinessCombineRule:member(1)", + "docComment": "/**\n * Sets the bounciness combine rule of the collider.\n *\n * @param bouncinessCombineRule - The bounciness combine rule of the collider.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "GROUP_9 = " + "text": "setBouncinessCombineRule(bouncinessCombineRule: " + }, + { + "kind": "Reference", + "text": "CoefficientCombineRule", + "canonicalReference": "server!CoefficientCombineRule:enum" }, { "kind": "Content", - "text": "8192" + "text": "): " + }, + { + "kind": "Content", + "text": "void" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 }, "releaseTag": "Public", - "name": "GROUP_9" + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "bouncinessCombineRule", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setBouncinessCombineRule" }, { - "kind": "EnumMember", - "canonicalReference": "server!CollisionGroup.PLAYER:member", - "docComment": "", + "kind": "Method", + "canonicalReference": "server!Collider#setCollisionGroups:member(1)", + "docComment": "/**\n * Sets the collision groups of the collider.\n *\n * @param collisionGroups - The collision groups of the collider.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "PLAYER = " + "text": "setCollisionGroups(collisionGroups: " + }, + { + "kind": "Reference", + "text": "CollisionGroups", + "canonicalReference": "server!CollisionGroups:type" }, { "kind": "Content", - "text": "16" + "text": "): " + }, + { + "kind": "Content", + "text": "void" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 }, "releaseTag": "Public", - "name": "PLAYER" - } - ] - }, - { - "kind": "TypeAlias", - "canonicalReference": "server!CollisionGroups:type", - "docComment": "/**\n * A set of collision groups.\n *\n * **Category:** Physics\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export type CollisionGroups = " - }, - { - "kind": "Content", - "text": "{\n belongsTo: " - }, - { - "kind": "Reference", - "text": "CollisionGroup", - "canonicalReference": "server!CollisionGroup:enum" - }, - { - "kind": "Content", - "text": "[];\n collidesWith: " - }, - { - "kind": "Reference", - "text": "CollisionGroup", - "canonicalReference": "server!CollisionGroup:enum" - }, - { - "kind": "Content", - "text": "[];\n}" + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "collisionGroups", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setCollisionGroups" }, - { - "kind": "Content", - "text": ";" - } - ], - "fileUrlPath": "src/worlds/physics/CollisionGroupsBuilder.ts", - "releaseTag": "Public", - "name": "CollisionGroups", - "typeTokenRange": { - "startIndex": 1, - "endIndex": 6 - } - }, - { - "kind": "Class", - "canonicalReference": "server!CollisionGroupsBuilder:class", - "docComment": "/**\n * A helper class for building and decoding collision groups.\n *\n * When to use: creating custom collision filters for colliders and rigid bodies. Do NOT use for: per-frame changes; collision group changes are usually infrequent.\n *\n * @remarks\n *\n * Use the static methods directly to encode or decode collision group masks.\n *\n * **Category:** Physics\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export default class CollisionGroupsBuilder " - } - ], - "fileUrlPath": "src/worlds/physics/CollisionGroupsBuilder.ts", - "releaseTag": "Public", - "isAbstract": false, - "name": "CollisionGroupsBuilder", - "preserveMemberOrder": false, - "members": [ { "kind": "Method", - "canonicalReference": "server!CollisionGroupsBuilder.buildRawCollisionGroups:member(1)", - "docComment": "/**\n * Builds a raw collision group mask from a set of collision groups.\n *\n * @param collisionGroups - The set of collision groups to build.\n *\n * @returns A raw set of collision groups represented as a 32-bit number.\n *\n * **Category:** Physics\n */\n", + "canonicalReference": "server!Collider#setEnabled:member(1)", + "docComment": "/**\n * Sets whether the collider is enabled.\n *\n * @param enabled - Whether the collider is enabled.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "static buildRawCollisionGroups(collisionGroups: " + "text": "setEnabled(enabled: " }, { - "kind": "Reference", - "text": "CollisionGroups", - "canonicalReference": "server!CollisionGroups:type" + "kind": "Content", + "text": "boolean" }, { "kind": "Content", "text": "): " }, { - "kind": "Reference", - "text": "RawCollisionGroups", - "canonicalReference": "server!RawCollisionGroups:type" + "kind": "Content", + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isStatic": true, + "isStatic": false, "returnTypeTokenRange": { "startIndex": 3, "endIndex": 4 @@ -11856,7 +11676,7 @@ "overloadIndex": 1, "parameters": [ { - "parameterName": "collisionGroups", + "parameterName": "enabled", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -11866,37 +11686,35 @@ ], "isOptional": false, "isAbstract": false, - "name": "buildRawCollisionGroups" + "name": "setEnabled" }, { "kind": "Method", - "canonicalReference": "server!CollisionGroupsBuilder.decodeCollisionGroups:member(1)", - "docComment": "/**\n * Decodes collision groups into their string equivalents.\n *\n * @param collisionGroups - The set of collision groups to decode.\n *\n * @returns A set of collision groups represented as their string equivalents.\n *\n * **Category:** Physics\n */\n", + "canonicalReference": "server!Collider#setFriction:member(1)", + "docComment": "/**\n * Sets the friction of the collider.\n *\n * @param friction - The friction of the collider.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "static decodeCollisionGroups(collisionGroups: " + "text": "setFriction(friction: " }, { - "kind": "Reference", - "text": "CollisionGroups", - "canonicalReference": "server!CollisionGroups:type" + "kind": "Content", + "text": "number" }, { "kind": "Content", "text": "): " }, { - "kind": "Reference", - "text": "DecodedCollisionGroups", - "canonicalReference": "server!DecodedCollisionGroups:type" + "kind": "Content", + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isStatic": true, + "isStatic": false, "returnTypeTokenRange": { "startIndex": 3, "endIndex": 4 @@ -11906,7 +11724,7 @@ "overloadIndex": 1, "parameters": [ { - "parameterName": "collisionGroups", + "parameterName": "friction", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -11916,37 +11734,36 @@ ], "isOptional": false, "isAbstract": false, - "name": "decodeCollisionGroups" + "name": "setFriction" }, { "kind": "Method", - "canonicalReference": "server!CollisionGroupsBuilder.decodeRawCollisionGroups:member(1)", - "docComment": "/**\n * Decodes a raw collision group mask into a set of collision groups.\n *\n * @param groups - The raw set of collision groups to decode.\n *\n * @returns A set of collision groups.\n *\n * **Category:** Physics\n */\n", + "canonicalReference": "server!Collider#setFrictionCombineRule:member(1)", + "docComment": "/**\n * Sets the friction combine rule of the collider.\n *\n * @param frictionCombineRule - The friction combine rule of the collider.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "static decodeRawCollisionGroups(groups: " + "text": "setFrictionCombineRule(frictionCombineRule: " }, { "kind": "Reference", - "text": "RawCollisionGroups", - "canonicalReference": "server!RawCollisionGroups:type" + "text": "CoefficientCombineRule", + "canonicalReference": "server!CoefficientCombineRule:enum" }, { "kind": "Content", "text": "): " }, { - "kind": "Reference", - "text": "CollisionGroups", - "canonicalReference": "server!CollisionGroups:type" + "kind": "Content", + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isStatic": true, + "isStatic": false, "returnTypeTokenRange": { "startIndex": 3, "endIndex": 4 @@ -11956,7 +11773,7 @@ "overloadIndex": 1, "parameters": [ { - "parameterName": "groups", + "parameterName": "frictionCombineRule", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -11966,21 +11783,21 @@ ], "isOptional": false, "isAbstract": false, - "name": "decodeRawCollisionGroups" + "name": "setFrictionCombineRule" }, { "kind": "Method", - "canonicalReference": "server!CollisionGroupsBuilder.isDefaultCollisionGroups:member(1)", - "docComment": "/**\n * Checks if the collision groups are the default collision groups.\n *\n * @param collisionGroups - The set of collision groups to check.\n *\n * @returns Whether the collision groups are the default collision groups.\n *\n * **Category:** Physics\n */\n", + "canonicalReference": "server!Collider#setHalfExtents:member(1)", + "docComment": "/**\n * Sets the half extents of a simulated block collider.\n *\n * @param halfExtents - The half extents of the block collider.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "static isDefaultCollisionGroups(collisionGroups: " + "text": "setHalfExtents(halfExtents: " }, { "kind": "Reference", - "text": "CollisionGroups", - "canonicalReference": "server!CollisionGroups:type" + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", @@ -11988,14 +11805,14 @@ }, { "kind": "Content", - "text": "boolean" + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isStatic": true, + "isStatic": false, "returnTypeTokenRange": { "startIndex": 3, "endIndex": 4 @@ -12005,7 +11822,7 @@ "overloadIndex": 1, "parameters": [ { - "parameterName": "collisionGroups", + "parameterName": "halfExtents", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -12015,298 +11832,165 @@ ], "isOptional": false, "isAbstract": false, - "name": "isDefaultCollisionGroups" - } - ], - "implementsTokenRanges": [] - }, - { - "kind": "TypeAlias", - "canonicalReference": "server!CommandCallback:type", - "docComment": "/**\n * A callback function for a chat command.\n *\n * @param player - The player that sent the command.\n *\n * @param args - An array of arguments, comprised of all space separated text after the command.\n *\n * @param message - The full message of the command. **Category:** Chat\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export type CommandCallback = " - }, - { - "kind": "Content", - "text": "(player: " - }, - { - "kind": "Reference", - "text": "Player", - "canonicalReference": "server!Player:class" - }, - { - "kind": "Content", - "text": ", args: string[], message: string) => void" - }, - { - "kind": "Content", - "text": ";" - } - ], - "fileUrlPath": "src/worlds/chat/ChatManager.ts", - "releaseTag": "Public", - "name": "CommandCallback", - "typeTokenRange": { - "startIndex": 1, - "endIndex": 4 - } - }, - { - "kind": "Interface", - "canonicalReference": "server!ConeColliderOptions:interface", - "docComment": "/**\n * The options for a cone collider.\n *\n * Use for: cone-shaped colliders. Do NOT use for: other shapes; use the matching collider option type.\n *\n * **Category:** Physics\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export interface ConeColliderOptions extends " - }, - { - "kind": "Reference", - "text": "BaseColliderOptions", - "canonicalReference": "server!BaseColliderOptions:interface" + "name": "setHalfExtents" }, { - "kind": "Content", - "text": " " - } - ], - "fileUrlPath": "src/worlds/physics/Collider.ts", - "releaseTag": "Public", - "name": "ConeColliderOptions", - "preserveMemberOrder": false, - "members": [ - { - "kind": "PropertySignature", - "canonicalReference": "server!ConeColliderOptions#halfHeight:member", - "docComment": "/**\n * The half height of the cone collider.\n *\n * **Category:** Physics\n */\n", + "kind": "Method", + "canonicalReference": "server!Collider#setHalfHeight:member(1)", + "docComment": "/**\n * Sets the half height of a simulated capsule, cone, cylinder, or round cylinder collider.\n *\n * @param halfHeight - The half height of the capsule, cone, cylinder, or round cylinder collider.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "halfHeight?: " + "text": "setHalfHeight(halfHeight: " }, { "kind": "Content", "text": "number" }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Content", + "text": "void" + }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": true, + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, "releaseTag": "Public", - "name": "halfHeight", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "halfHeight", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setHalfHeight" }, { - "kind": "PropertySignature", - "canonicalReference": "server!ConeColliderOptions#radius:member", - "docComment": "/**\n * The radius of the cone collider.\n *\n * **Category:** Physics\n */\n", + "kind": "Method", + "canonicalReference": "server!Collider#setMass:member(1)", + "docComment": "/**\n * Sets the mass of the collider.\n *\n * @param mass - The mass of the collider.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "radius?: " + "text": "setMass(mass: " }, { "kind": "Content", "text": "number" }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Content", + "text": "void" + }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": true, + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, "releaseTag": "Public", - "name": "radius", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "mass", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setMass" }, { - "kind": "PropertySignature", - "canonicalReference": "server!ConeColliderOptions#shape:member", - "docComment": "", + "kind": "Method", + "canonicalReference": "server!Collider#setOnCollision:member(1)", + "docComment": "/**\n * Sets the on collision callback for the collider.\n *\n * @remarks\n *\n * **Auto-enables events:** Automatically enables/disables collision events based on whether callback is set.\n *\n * @param callback - The on collision callback for the collider.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "shape: " + "text": "setOnCollision(callback: " }, { "kind": "Reference", - "text": "ColliderShape.CONE", - "canonicalReference": "server!ColliderShape.CONE:member" + "text": "CollisionCallback", + "canonicalReference": "server!CollisionCallback:type" + }, + { + "kind": "Content", + "text": " | undefined" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Content", + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": false, + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 4, + "endIndex": 5 + }, "releaseTag": "Public", - "name": "shape", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } - } - ], - "extendsTokenRanges": [ - { - "startIndex": 1, - "endIndex": 2 - } - ] - }, - { - "kind": "TypeAlias", - "canonicalReference": "server!ContactForceData:type", - "docComment": "/**\n * Data for contact forces.\n *\n * **Category:** Physics\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export type ContactForceData = " - }, - { - "kind": "Content", - "text": "{\n totalForce: " - }, - { - "kind": "Reference", - "text": "RAPIER.Vector", - "canonicalReference": "@dimforge/rapier3d-simd-compat!Vector:interface" - }, - { - "kind": "Content", - "text": ";\n totalForceMagnitude: number;\n maxForceDirection: " - }, - { - "kind": "Reference", - "text": "RAPIER.Vector", - "canonicalReference": "@dimforge/rapier3d-simd-compat!Vector:interface" - }, - { - "kind": "Content", - "text": ";\n maxForceMagnitude: number;\n}" - }, - { - "kind": "Content", - "text": ";" - } - ], - "fileUrlPath": "src/worlds/physics/Simulation.ts", - "releaseTag": "Public", - "name": "ContactForceData", - "typeTokenRange": { - "startIndex": 1, - "endIndex": 6 - } - }, - { - "kind": "TypeAlias", - "canonicalReference": "server!ContactManifold:type", - "docComment": "/**\n * A contact manifold.\n *\n * **Category:** Physics\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export type ContactManifold = " - }, - { - "kind": "Content", - "text": "{\n contactPoints: " - }, - { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" - }, - { - "kind": "Content", - "text": "[];\n localNormalA: " - }, - { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" - }, - { - "kind": "Content", - "text": ";\n localNormalB: " - }, - { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" - }, - { - "kind": "Content", - "text": ";\n normal: " - }, - { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" - }, - { - "kind": "Content", - "text": ";\n}" - }, - { - "kind": "Content", - "text": ";" - } - ], - "fileUrlPath": "src/worlds/physics/Simulation.ts", - "releaseTag": "Public", - "name": "ContactManifold", - "typeTokenRange": { - "startIndex": 1, - "endIndex": 10 - } - }, - { - "kind": "Interface", - "canonicalReference": "server!CylinderColliderOptions:interface", - "docComment": "/**\n * The options for a cylinder collider.\n *\n * Use for: cylinder-shaped colliders. Do NOT use for: other shapes; use the matching collider option type.\n *\n * **Category:** Physics\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export interface CylinderColliderOptions extends " - }, - { - "kind": "Reference", - "text": "BaseColliderOptions", - "canonicalReference": "server!BaseColliderOptions:interface" + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "callback", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 3 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setOnCollision" }, { - "kind": "Content", - "text": " " - } - ], - "fileUrlPath": "src/worlds/physics/Collider.ts", - "releaseTag": "Public", - "name": "CylinderColliderOptions", - "preserveMemberOrder": false, - "members": [ - { - "kind": "PropertySignature", - "canonicalReference": "server!CylinderColliderOptions#halfHeight:member", - "docComment": "/**\n * The half height of the cylinder collider.\n *\n * **Category:** Physics\n */\n", + "kind": "Method", + "canonicalReference": "server!Collider#setRadius:member(1)", + "docComment": "/**\n * Sets the radius of a simulated ball, capsule, cylinder, or round cylinder collider.\n *\n * @param radius - The radius of the collider.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "halfHeight?: " + "text": "setRadius(radius: " }, { "kind": "Content", @@ -12314,332 +11998,246 @@ }, { "kind": "Content", - "text": ";" - } - ], - "isReadonly": false, - "isOptional": true, - "releaseTag": "Public", - "name": "halfHeight", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } - }, - { - "kind": "PropertySignature", - "canonicalReference": "server!CylinderColliderOptions#radius:member", - "docComment": "/**\n * The radius of the cylinder collider.\n *\n * **Category:** Physics\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "radius?: " + "text": "): " }, { "kind": "Content", - "text": "number" + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": true, + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, "releaseTag": "Public", - "name": "radius", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "radius", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setRadius" }, { - "kind": "PropertySignature", - "canonicalReference": "server!CylinderColliderOptions#shape:member", - "docComment": "", + "kind": "Method", + "canonicalReference": "server!Collider#setRelativePosition:member(1)", + "docComment": "/**\n * Sets the position of the collider relative to its parent rigid body or the world origin.\n *\n * @remarks\n *\n * Colliders can be added as a child of a rigid body, or to the world directly. This position is relative to the parent rigid body or the world origin.\n *\n * @param position - The relative position of the collider.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "shape: " + "text": "setRelativePosition(position: " }, { "kind": "Reference", - "text": "ColliderShape.CYLINDER", - "canonicalReference": "server!ColliderShape.CYLINDER:member" + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", - "text": ";" - } - ], - "isReadonly": false, - "isOptional": false, - "releaseTag": "Public", - "name": "shape", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } - } - ], - "extendsTokenRanges": [ - { - "startIndex": 1, - "endIndex": 2 - } - ] - }, - { - "kind": "TypeAlias", - "canonicalReference": "server!DecodedCollisionGroups:type", - "docComment": "/**\n * A decoded set of collision groups represented as their string equivalents.\n *\n * **Category:** Physics\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export type DecodedCollisionGroups = " - }, - { - "kind": "Content", - "text": "{\n belongsTo: string[];\n collidesWith: string[];\n}" - }, - { - "kind": "Content", - "text": ";" - } - ], - "fileUrlPath": "src/worlds/physics/CollisionGroupsBuilder.ts", - "releaseTag": "Public", - "name": "DecodedCollisionGroups", - "typeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } - }, - { - "kind": "Variable", - "canonicalReference": "server!DEFAULT_ENTITY_RIGID_BODY_OPTIONS:var", - "docComment": "/**\n * The default rigid body options for a model entity when `EntityOptions.rigidBodyOptions` is not provided.\n *\n * **Category:** Entities\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "DEFAULT_ENTITY_RIGID_BODY_OPTIONS: " - }, - { - "kind": "Reference", - "text": "RigidBodyOptions", - "canonicalReference": "server!RigidBodyOptions:type" - } - ], - "fileUrlPath": "src/worlds/entities/Entity.ts", - "isReadonly": true, - "releaseTag": "Public", - "name": "DEFAULT_ENTITY_RIGID_BODY_OPTIONS", - "variableTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } - }, - { - "kind": "Class", - "canonicalReference": "server!DefaultPlayerEntity:class", - "docComment": "/**\n * Represents the default player model entity.\n *\n * When to use: standard player avatars with built-in cosmetics and default controls. Do NOT use for: fully custom player rigs that don't match the default model's anchors/animations.\n *\n * @remarks\n *\n * Extends `PlayerEntity`, uses the default player model, and assigns `DefaultPlayerEntityController`. You can override defaults, but if you change `modelUri`, ensure the model has the same animation names and anchor points.\n *\n * @example\n * ```typescript\n * const playerEntity = new DefaultPlayerEntity({ player });\n *\n * playerEntity.spawn(world, { x: 0, y: 10, z: 0 });\n * ```\n *\n * **Category:** Entities\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export default class DefaultPlayerEntity extends " - }, - { - "kind": "Reference", - "text": "PlayerEntity", - "canonicalReference": "server!PlayerEntity:class" - }, - { - "kind": "Content", - "text": " " - } - ], - "fileUrlPath": "src/worlds/entities/DefaultPlayerEntity.ts", - "releaseTag": "Public", - "isAbstract": false, - "name": "DefaultPlayerEntity", - "preserveMemberOrder": false, - "members": [ - { - "kind": "Constructor", - "canonicalReference": "server!DefaultPlayerEntity:constructor(1)", - "docComment": "/**\n * Creates a new DefaultPlayerEntity instance.\n *\n * @remarks\n *\n * **Auto-assigned defaults:** A `DefaultPlayerEntityController` is automatically created and assigned. Default idle animations are initialized as looped and playing.\n *\n * **Cosmetics on spawn:** When spawned, player cosmetics (hair, skin, equipped items) are fetched asynchronously and applied. Child entities are created for hair and equipped cosmetic items.\n *\n * @param options - The options for the default player entity.\n *\n * **Category:** Entities\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "constructor(options: " + "text": "): " }, { - "kind": "Reference", - "text": "DefaultPlayerEntityOptions", - "canonicalReference": "server!DefaultPlayerEntityOptions:type" + "kind": "Content", + "text": "void" }, { "kind": "Content", - "text": ");" + "text": ";" } ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, "parameters": [ { - "parameterName": "options", + "parameterName": "position", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, "isOptional": false } - ] + ], + "isOptional": false, + "isAbstract": false, + "name": "setRelativePosition" }, { - "kind": "Property", - "canonicalReference": "server!DefaultPlayerEntity#cosmeticHiddenSlots:member", - "docComment": "/**\n * The cosmetic slots that are hidden.\n *\n * **Category:** Entities\n *\n * @public\n */\n", + "kind": "Method", + "canonicalReference": "server!Collider#setRelativeRotation:member(1)", + "docComment": "/**\n * Sets the relative rotation of the collider to its parent rigid body or the world origin.\n *\n * @remarks\n *\n * Colliders can be added as a child of a rigid body, or to the world directly. This rotation is relative to the parent rigid body or the world origin.\n *\n * @param rotation - The relative rotation of the collider.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get cosmeticHiddenSlots(): " + "text": "setRelativeRotation(rotation: " }, { "kind": "Reference", - "text": "PlayerCosmeticSlot", - "canonicalReference": "server!PlayerCosmeticSlot:type" + "text": "QuaternionLike", + "canonicalReference": "server!QuaternionLike:interface" }, { "kind": "Content", - "text": "[]" + "text": "): " + }, + { + "kind": "Content", + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "cosmeticHiddenSlots", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 3 - }, "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", "isProtected": false, - "isAbstract": false - } - ], - "extendsTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "implementsTokenRanges": [] - }, - { - "kind": "Class", - "canonicalReference": "server!DefaultPlayerEntityController:class", - "docComment": "/**\n * The default player entity controller implementation.\n *\n * When to use: player-controlled avatars using `DefaultPlayerEntity`. Do NOT use for: NPCs or non-player entities; use `SimpleEntityController` or `PathfindingEntityController` instead.\n *\n * @remarks\n *\n * Extends `BaseEntityController` and implements default movement, platforming, jumping, and swimming. You can extend this class to add custom logic.\n *\n *

Coordinate System & Model Orientation

\n *\n * HYTOPIA uses **-Z as forward**. Models must be authored with their front facing -Z. A yaw of 0 means facing -Z. The controller rotates the entity based on camera yaw and movement direction, always orienting the entity's -Z axis in the intended facing direction.\n *\n * @example\n * ```typescript\n * // Create a custom entity controller for myEntity, prior to spawning it.\n * myEntity.setController(new DefaultPlayerEntityController({\n * jumpVelocity: 10,\n * runVelocity: 8,\n * walkVelocity: 4,\n * }));\n *\n * // Spawn the entity in the world.\n * myEntity.spawn(world, { x: 53, y: 10, z: 23 });\n * ```\n *\n * **Category:** Controllers\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export default class DefaultPlayerEntityController extends " - }, - { - "kind": "Reference", - "text": "BaseEntityController", - "canonicalReference": "server!BaseEntityController:class" + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "rotation", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setRelativeRotation" }, { - "kind": "Content", - "text": " " - } - ], - "fileUrlPath": "src/worlds/entities/controllers/DefaultPlayerEntityController.ts", - "releaseTag": "Public", - "isAbstract": false, - "name": "DefaultPlayerEntityController", - "preserveMemberOrder": false, - "members": [ - { - "kind": "Constructor", - "canonicalReference": "server!DefaultPlayerEntityController:constructor(1)", - "docComment": "/**\n * Constructs a new instance of the `DefaultPlayerEntityController` class\n *\n * @param options - Options for the controller.\n *\n * **Category:** Controllers\n */\n", + "kind": "Method", + "canonicalReference": "server!Collider#setScale:member(1)", + "docComment": "/**\n * Scales the collider by the given scalar. Only ball, block, capsule, cone, cylinder, round cylinder are supported.\n *\n * @remarks\n *\n * **Ratio-based:** Uses ratio-based scaling relative to current scale, not absolute dimensions. Also scales `relativePosition` proportionally.\n *\n * @param scalar - The scalar to scale the collider by.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "constructor(options?: " + "text": "setScale(scale: " }, { "kind": "Reference", - "text": "DefaultPlayerEntityControllerOptions", - "canonicalReference": "server!DefaultPlayerEntityControllerOptions:interface" + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", - "text": ");" + "text": "): " + }, + { + "kind": "Content", + "text": "void" + }, + { + "kind": "Content", + "text": ";" } ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, "parameters": [ { - "parameterName": "options", + "parameterName": "scale", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "isOptional": true + "isOptional": false } - ] + ], + "isOptional": false, + "isAbstract": false, + "name": "setScale" }, { - "kind": "Property", - "canonicalReference": "server!DefaultPlayerEntityController#applyDirectionalMovementRotations:member", - "docComment": "/**\n * Whether to apply directional rotations to the entity while moving, defaults to true.\n */\n", + "kind": "Method", + "canonicalReference": "server!Collider#setSensor:member(1)", + "docComment": "/**\n * Sets whether the collider is a sensor.\n *\n * @param sensor - Whether the collider is a sensor.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "applyDirectionalMovementRotations: " + "text": "setSensor(sensor: " }, { "kind": "Content", "text": "boolean" }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Content", + "text": "void" + }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": false, - "releaseTag": "Public", - "name": "applyDirectionalMovementRotations", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", "isProtected": false, - "isAbstract": false + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "sensor", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setSensor" }, { "kind": "Method", - "canonicalReference": "server!DefaultPlayerEntityController#attach:member(1)", - "docComment": "/**\n * Called when the controller is attached to an entity.\n *\n * @remarks\n *\n * **Wraps `applyImpulse`:** The entity's `applyImpulse` method is wrapped to track external velocities separately from internal movement. External impulses decay over time when grounded.\n *\n * **Locks rotations:** Calls `entity.lockAllRotations()` to prevent physics from rotating the entity. Rotation is set explicitly by the controller based on camera orientation.\n *\n * **Enables CCD:** Enables continuous collision detection on the entity.\n *\n * **Swimming detection:** Registers a `BLOCK_COLLISION` listener to detect liquid blocks and manage swimming state, gravity scale, and animations.\n *\n * @param entity - The entity to attach the controller to.\n *\n * **Category:** Controllers\n */\n", + "canonicalReference": "server!Collider#setTag:member(1)", + "docComment": "/**\n * Sets the tag of the collider.\n *\n * @param tag - The tag of the collider.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "attach(entity: " + "text": "setTag(tag: " }, { - "kind": "Reference", - "text": "Entity", - "canonicalReference": "server!Entity:class" + "kind": "Content", + "text": "string" }, { "kind": "Content", @@ -12664,7 +12262,7 @@ "overloadIndex": 1, "parameters": [ { - "parameterName": "entity", + "parameterName": "tag", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -12674,150 +12272,99 @@ ], "isOptional": false, "isAbstract": false, - "name": "attach" + "name": "setTag" }, { - "kind": "Property", - "canonicalReference": "server!DefaultPlayerEntityController#autoCancelMouseLeftClick:member", - "docComment": "/**\n * Whether to automatically cancel left click input after first processed tick, defaults to true.\n */\n", + "kind": "Method", + "canonicalReference": "server!Collider#setVoxel:member(1)", + "docComment": "/**\n * Sets the voxel at the given coordinate as filled or not filled.\n *\n * @param coordinate - The coordinate of the voxel to set.\n *\n * @param filled - True if the voxel at the coordinate should be filled, false if it should be removed.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "autoCancelMouseLeftClick: " + "text": "setVoxel(coordinate: " }, { - "kind": "Content", - "text": "boolean" + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", - "text": ";" - } - ], - "isReadonly": false, - "isOptional": false, - "releaseTag": "Public", - "name": "autoCancelMouseLeftClick", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false - }, - { - "kind": "Property", - "canonicalReference": "server!DefaultPlayerEntityController#canJump:member", - "docComment": "/**\n * A function allowing custom logic to determine if the entity can jump.\n *\n * @param controller - The default player entity controller instance.\n *\n * @returns Whether the entity of the entity controller can jump.\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "canJump: " + "text": ", filled: " }, { "kind": "Content", - "text": "(controller: " + "text": "boolean" }, { - "kind": "Reference", - "text": "DefaultPlayerEntityController", - "canonicalReference": "server!DefaultPlayerEntityController:class" + "kind": "Content", + "text": "): " }, { "kind": "Content", - "text": ") => boolean" + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": false, - "releaseTag": "Public", - "name": "canJump", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 4 - }, "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 5, + "endIndex": 6 + }, + "releaseTag": "Public", "isProtected": false, - "isAbstract": false - }, - { - "kind": "Property", - "canonicalReference": "server!DefaultPlayerEntityController#canRun:member", - "docComment": "/**\n * A function allowing custom logic to determine if the entity can run.\n *\n * @param controller - The default player entity controller instance.\n *\n * @returns Whether the entity of the entity controller can run.\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "canRun: " - }, - { - "kind": "Content", - "text": "(controller: " - }, - { - "kind": "Reference", - "text": "DefaultPlayerEntityController", - "canonicalReference": "server!DefaultPlayerEntityController:class" - }, + "overloadIndex": 1, + "parameters": [ { - "kind": "Content", - "text": ") => boolean" + "parameterName": "coordinate", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false }, { - "kind": "Content", - "text": ";" + "parameterName": "filled", + "parameterTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "isOptional": false } ], - "isReadonly": false, "isOptional": false, - "releaseTag": "Public", - "name": "canRun", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 4 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "isAbstract": false, + "name": "setVoxel" }, { "kind": "Property", - "canonicalReference": "server!DefaultPlayerEntityController#canSwim:member", - "docComment": "/**\n * A function allowing custom logic to determine if the entity can swim.\n *\n * @param controller - The default player entity controller instance.\n *\n * @returns Whether the entity of the entity controller can swim.\n */\n", + "canonicalReference": "server!Collider#shape:member", + "docComment": "/**\n * The shape of the collider.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "canSwim: " - }, - { - "kind": "Content", - "text": "(controller: " + "text": "get shape(): " }, { "kind": "Reference", - "text": "DefaultPlayerEntityController", - "canonicalReference": "server!DefaultPlayerEntityController:class" - }, - { - "kind": "Content", - "text": ") => boolean" + "text": "ColliderShape", + "canonicalReference": "server!ColliderShape:enum" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, + "isReadonly": true, "isOptional": false, "releaseTag": "Public", - "name": "canSwim", + "name": "shape", "propertyTypeTokenRange": { "startIndex": 1, - "endIndex": 4 + "endIndex": 2 }, "isStatic": false, "isProtected": false, @@ -12825,950 +12372,1145 @@ }, { "kind": "Property", - "canonicalReference": "server!DefaultPlayerEntityController#canWalk:member", - "docComment": "/**\n * A function allowing custom logic to determine if the entity can walk.\n *\n * @param controller - The default player entity controller instance.\n *\n * @returns Whether the entity of the entity controller can walk.\n */\n", + "canonicalReference": "server!Collider#tag:member", + "docComment": "/**\n * An arbitrary identifier tag of the collider. Useful for your own logic.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "canWalk: " - }, - { - "kind": "Content", - "text": "(controller: " - }, - { - "kind": "Reference", - "text": "DefaultPlayerEntityController", - "canonicalReference": "server!DefaultPlayerEntityController:class" + "text": "get tag(): " }, { "kind": "Content", - "text": ") => boolean" + "text": "string | undefined" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, + "isReadonly": true, "isOptional": false, "releaseTag": "Public", - "name": "canWalk", + "name": "tag", "propertyTypeTokenRange": { "startIndex": 1, - "endIndex": 4 + "endIndex": 2 }, "isStatic": false, "isProtected": false, "isAbstract": false + } + ], + "extendsTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "implementsTokenRanges": [] + }, + { + "kind": "TypeAlias", + "canonicalReference": "server!ColliderOptions:type", + "docComment": "/**\n * The options for a collider.\n *\n * Use for: providing collider definitions when creating rigid bodies or entities. Do NOT use for: runtime changes; use `Collider` APIs instead.\n *\n * **Category:** Physics\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export type ColliderOptions = " }, { - "kind": "Property", - "canonicalReference": "server!DefaultPlayerEntityController#facesCameraWhenIdle:member", - "docComment": "/**\n * Whether the entity rotates to face the camera direction when idle. When `true`, the entity always faces the camera direction. When `false`, the entity only rotates while actively moving.\n */\n", + "kind": "Reference", + "text": "BallColliderOptions", + "canonicalReference": "server!BallColliderOptions:interface" + }, + { + "kind": "Content", + "text": " | " + }, + { + "kind": "Reference", + "text": "BlockColliderOptions", + "canonicalReference": "server!BlockColliderOptions:interface" + }, + { + "kind": "Content", + "text": " | " + }, + { + "kind": "Reference", + "text": "CapsuleColliderOptions", + "canonicalReference": "server!CapsuleColliderOptions:interface" + }, + { + "kind": "Content", + "text": " | " + }, + { + "kind": "Reference", + "text": "ConeColliderOptions", + "canonicalReference": "server!ConeColliderOptions:interface" + }, + { + "kind": "Content", + "text": " | " + }, + { + "kind": "Reference", + "text": "CylinderColliderOptions", + "canonicalReference": "server!CylinderColliderOptions:interface" + }, + { + "kind": "Content", + "text": " | " + }, + { + "kind": "Reference", + "text": "RoundCylinderColliderOptions", + "canonicalReference": "server!RoundCylinderColliderOptions:interface" + }, + { + "kind": "Content", + "text": " | " + }, + { + "kind": "Reference", + "text": "TrimeshColliderOptions", + "canonicalReference": "server!TrimeshColliderOptions:interface" + }, + { + "kind": "Content", + "text": " | " + }, + { + "kind": "Reference", + "text": "VoxelsColliderOptions", + "canonicalReference": "server!VoxelsColliderOptions:interface" + }, + { + "kind": "Content", + "text": " | " + }, + { + "kind": "Reference", + "text": "WedgeColliderOptions", + "canonicalReference": "server!WedgeColliderOptions:interface" + }, + { + "kind": "Content", + "text": " | " + }, + { + "kind": "Reference", + "text": "NoneColliderOptions", + "canonicalReference": "server!NoneColliderOptions:interface" + }, + { + "kind": "Content", + "text": ";" + } + ], + "fileUrlPath": "src/worlds/physics/Collider.ts", + "releaseTag": "Public", + "name": "ColliderOptions", + "typeTokenRange": { + "startIndex": 1, + "endIndex": 20 + } + }, + { + "kind": "Enum", + "canonicalReference": "server!ColliderShape:enum", + "docComment": "/**\n * The shapes a collider can be.\n *\n * **Category:** Physics\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export declare enum ColliderShape " + } + ], + "fileUrlPath": "src/worlds/physics/Collider.ts", + "releaseTag": "Public", + "name": "ColliderShape", + "preserveMemberOrder": false, + "members": [ + { + "kind": "EnumMember", + "canonicalReference": "server!ColliderShape.BALL:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "facesCameraWhenIdle: " - }, - { - "kind": "Content", - "text": "boolean" + "text": "BALL = " }, { "kind": "Content", - "text": ";" + "text": "\"ball\"" } ], - "isReadonly": false, - "isOptional": false, - "releaseTag": "Public", - "name": "facesCameraWhenIdle", - "propertyTypeTokenRange": { + "initializerTokenRange": { "startIndex": 1, "endIndex": 2 }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "releaseTag": "Public", + "name": "BALL" }, { - "kind": "Property", - "canonicalReference": "server!DefaultPlayerEntityController#idleLoopedAnimations:member", - "docComment": "/**\n * The looped animation(s) that will play when the entity is idle.\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!ColliderShape.BLOCK:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "idleLoopedAnimations: " - }, - { - "kind": "Content", - "text": "string[]" + "text": "BLOCK = " }, { "kind": "Content", - "text": ";" + "text": "\"block\"" } ], - "isReadonly": false, - "isOptional": false, - "releaseTag": "Public", - "name": "idleLoopedAnimations", - "propertyTypeTokenRange": { + "initializerTokenRange": { "startIndex": 1, "endIndex": 2 }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "releaseTag": "Public", + "name": "BLOCK" }, { - "kind": "Property", - "canonicalReference": "server!DefaultPlayerEntityController#interactOneshotAnimations:member", - "docComment": "/**\n * The oneshot animation(s) that will play when the entity interacts (left click)\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!ColliderShape.CAPSULE:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "interactOneshotAnimations: " - }, - { - "kind": "Content", - "text": "string[]" + "text": "CAPSULE = " }, { "kind": "Content", - "text": ";" + "text": "\"capsule\"" } ], - "isReadonly": false, - "isOptional": false, - "releaseTag": "Public", - "name": "interactOneshotAnimations", - "propertyTypeTokenRange": { + "initializerTokenRange": { "startIndex": 1, "endIndex": 2 }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "releaseTag": "Public", + "name": "CAPSULE" }, { - "kind": "Property", - "canonicalReference": "server!DefaultPlayerEntityController#isActivelyMoving:member", - "docComment": "/**\n * Whether the entity is moving from player inputs.\n *\n * **Category:** Controllers\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!ColliderShape.CONE:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "get isActivelyMoving(): " - }, - { - "kind": "Content", - "text": "boolean" + "text": "CONE = " }, { "kind": "Content", - "text": ";" + "text": "\"cone\"" } ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "isActivelyMoving", - "propertyTypeTokenRange": { + "initializerTokenRange": { "startIndex": 1, "endIndex": 2 }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "releaseTag": "Public", + "name": "CONE" }, { - "kind": "Property", - "canonicalReference": "server!DefaultPlayerEntityController#isGrounded:member", - "docComment": "/**\n * Whether the entity is grounded.\n *\n * **Category:** Controllers\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!ColliderShape.CYLINDER:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "get isGrounded(): " - }, - { - "kind": "Content", - "text": "boolean" + "text": "CYLINDER = " }, { "kind": "Content", - "text": ";" + "text": "\"cylinder\"" } ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "isGrounded", - "propertyTypeTokenRange": { + "initializerTokenRange": { "startIndex": 1, "endIndex": 2 }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "releaseTag": "Public", + "name": "CYLINDER" }, { - "kind": "Property", - "canonicalReference": "server!DefaultPlayerEntityController#isOnPlatform:member", - "docComment": "/**\n * Whether the entity is on a platform.\n *\n * @remarks\n *\n * A platform is any entity with a kinematic rigid body.\n *\n * **Category:** Controllers\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!ColliderShape.NONE:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "get isOnPlatform(): " - }, - { - "kind": "Content", - "text": "boolean" + "text": "NONE = " }, { "kind": "Content", - "text": ";" + "text": "\"none\"" } ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "isOnPlatform", - "propertyTypeTokenRange": { + "initializerTokenRange": { "startIndex": 1, "endIndex": 2 }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "releaseTag": "Public", + "name": "NONE" }, { - "kind": "Property", - "canonicalReference": "server!DefaultPlayerEntityController#isSwimming:member", - "docComment": "/**\n * Whether the entity is swimming.\n *\n * @remarks\n *\n * Determined by whether the entity is in contact with a liquid block.\n *\n * **Category:** Controllers\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!ColliderShape.ROUND_CYLINDER:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "get isSwimming(): " - }, - { - "kind": "Content", - "text": "boolean" + "text": "ROUND_CYLINDER = " }, { "kind": "Content", - "text": ";" + "text": "\"round-cylinder\"" } ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "isSwimming", - "propertyTypeTokenRange": { + "initializerTokenRange": { "startIndex": 1, "endIndex": 2 }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "releaseTag": "Public", + "name": "ROUND_CYLINDER" }, { - "kind": "Property", - "canonicalReference": "server!DefaultPlayerEntityController#jumpLandHeavyOneshotAnimations:member", - "docComment": "/**\n * The oneshot animation(s) that will play when the entity lands with a high velocity.\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!ColliderShape.TRIMESH:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "jumpLandHeavyOneshotAnimations: " - }, - { - "kind": "Content", - "text": "string[]" + "text": "TRIMESH = " }, { "kind": "Content", - "text": ";" + "text": "\"trimesh\"" } ], - "isReadonly": false, - "isOptional": false, - "releaseTag": "Public", - "name": "jumpLandHeavyOneshotAnimations", - "propertyTypeTokenRange": { + "initializerTokenRange": { "startIndex": 1, "endIndex": 2 }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "releaseTag": "Public", + "name": "TRIMESH" }, { - "kind": "Property", - "canonicalReference": "server!DefaultPlayerEntityController#jumpLandLightOneshotAnimations:member", - "docComment": "/**\n * The oneshot animation(s) that will play when the entity lands after jumping or being airborne.\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!ColliderShape.VOXELS:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "jumpLandLightOneshotAnimations: " - }, - { - "kind": "Content", - "text": "string[]" + "text": "VOXELS = " }, { "kind": "Content", - "text": ";" + "text": "\"voxels\"" } ], - "isReadonly": false, - "isOptional": false, - "releaseTag": "Public", - "name": "jumpLandLightOneshotAnimations", - "propertyTypeTokenRange": { + "initializerTokenRange": { "startIndex": 1, "endIndex": 2 }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "releaseTag": "Public", + "name": "VOXELS" }, { - "kind": "Property", - "canonicalReference": "server!DefaultPlayerEntityController#jumpOneshotAnimations:member", - "docComment": "/**\n * The oneshot animation(s) that will play when the entity is jumping.\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!ColliderShape.WEDGE:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "jumpOneshotAnimations: " + "text": "WEDGE = " }, { "kind": "Content", - "text": "string[]" - }, - { - "kind": "Content", - "text": ";" + "text": "\"wedge\"" } ], - "isReadonly": false, - "isOptional": false, - "releaseTag": "Public", - "name": "jumpOneshotAnimations", - "propertyTypeTokenRange": { + "initializerTokenRange": { "startIndex": 1, "endIndex": 2 }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "releaseTag": "Public", + "name": "WEDGE" + } + ] + }, + { + "kind": "TypeAlias", + "canonicalReference": "server!CollisionCallback:type", + "docComment": "/**\n * A callback function that is called when a collision occurs.\n *\n * @param other - The other object involved in the collision, a block or entity.\n *\n * @param started - Whether the collision has started or ended.\n *\n * **Category:** Physics\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export type CollisionCallback = " }, { - "kind": "Property", - "canonicalReference": "server!DefaultPlayerEntityController#jumpVelocity:member", - "docComment": "/**\n * The upward velocity applied to the entity when it jumps.\n */\n", + "kind": "Content", + "text": "((other: " + }, + { + "kind": "Reference", + "text": "BlockType", + "canonicalReference": "server!BlockType:class" + }, + { + "kind": "Content", + "text": " | " + }, + { + "kind": "Reference", + "text": "Entity", + "canonicalReference": "server!Entity:class" + }, + { + "kind": "Content", + "text": ", started: boolean) => void) | ((other: " + }, + { + "kind": "Reference", + "text": "BlockType", + "canonicalReference": "server!BlockType:class" + }, + { + "kind": "Content", + "text": " | " + }, + { + "kind": "Reference", + "text": "Entity", + "canonicalReference": "server!Entity:class" + }, + { + "kind": "Content", + "text": ", started: boolean, colliderHandleA: number, colliderHandleB: number) => void)" + }, + { + "kind": "Content", + "text": ";" + } + ], + "fileUrlPath": "src/worlds/physics/ColliderMap.ts", + "releaseTag": "Public", + "name": "CollisionCallback", + "typeTokenRange": { + "startIndex": 1, + "endIndex": 10 + } + }, + { + "kind": "Enum", + "canonicalReference": "server!CollisionGroup:enum", + "docComment": "/**\n * The default collision groups.\n *\n * @remarks\n *\n * Collision groups determine which objects collide and generate events. Up to 15 groups can be registered. Filtering uses pairwise bit masks:\n *\n * - The belongsTo groups (the 16 left-most bits of `self.0`) - The collidesWith mask (the 16 right-most bits of `self.0`)\n *\n * An interaction is allowed between two filters `a` and `b` if:\n * ```\n * ((a >> 16) & b) != 0 && ((b >> 16) & a) != 0\n * ```\n *\n * **Category:** Physics\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export declare enum CollisionGroup " + } + ], + "fileUrlPath": "src/worlds/physics/CollisionGroupsBuilder.ts", + "releaseTag": "Public", + "name": "CollisionGroup", + "preserveMemberOrder": false, + "members": [ + { + "kind": "EnumMember", + "canonicalReference": "server!CollisionGroup.ALL:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "jumpVelocity: " - }, - { - "kind": "Content", - "text": "number" + "text": "ALL = " }, { "kind": "Content", - "text": ";" + "text": "65535" } ], - "isReadonly": false, - "isOptional": false, - "releaseTag": "Public", - "name": "jumpVelocity", - "propertyTypeTokenRange": { + "initializerTokenRange": { "startIndex": 1, "endIndex": 2 }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "releaseTag": "Public", + "name": "ALL" }, { - "kind": "Property", - "canonicalReference": "server!DefaultPlayerEntityController#platform:member", - "docComment": "/**\n * The platform the entity is on, if any.\n *\n * **Category:** Controllers\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!CollisionGroup.BLOCK:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "get platform(): " + "text": "BLOCK = " }, { - "kind": "Reference", - "text": "Entity", - "canonicalReference": "server!Entity:class" - }, + "kind": "Content", + "text": "1" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "BLOCK" + }, + { + "kind": "EnumMember", + "canonicalReference": "server!CollisionGroup.ENTITY:member", + "docComment": "", + "excerptTokens": [ { "kind": "Content", - "text": " | undefined" + "text": "ENTITY = " }, { "kind": "Content", - "text": ";" + "text": "2" } ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "platform", - "propertyTypeTokenRange": { + "initializerTokenRange": { "startIndex": 1, - "endIndex": 3 + "endIndex": 2 }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "releaseTag": "Public", + "name": "ENTITY" }, { - "kind": "Property", - "canonicalReference": "server!DefaultPlayerEntityController#runLoopedAnimations:member", - "docComment": "/**\n * The looped animation(s) that will play when the entity is running.\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!CollisionGroup.ENTITY_SENSOR:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "runLoopedAnimations: " - }, - { - "kind": "Content", - "text": "string[]" + "text": "ENTITY_SENSOR = " }, { "kind": "Content", - "text": ";" + "text": "4" } ], - "isReadonly": false, - "isOptional": false, - "releaseTag": "Public", - "name": "runLoopedAnimations", - "propertyTypeTokenRange": { + "initializerTokenRange": { "startIndex": 1, "endIndex": 2 }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "releaseTag": "Public", + "name": "ENTITY_SENSOR" }, { - "kind": "Property", - "canonicalReference": "server!DefaultPlayerEntityController#runVelocity:member", - "docComment": "/**\n * The normalized horizontal velocity applied to the entity when it runs.\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!CollisionGroup.ENVIRONMENT_ENTITY:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "runVelocity: " - }, - { - "kind": "Content", - "text": "number" + "text": "ENVIRONMENT_ENTITY = " }, { "kind": "Content", - "text": ";" + "text": "8" } ], - "isReadonly": false, - "isOptional": false, - "releaseTag": "Public", - "name": "runVelocity", - "propertyTypeTokenRange": { + "initializerTokenRange": { "startIndex": 1, "endIndex": 2 }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "releaseTag": "Public", + "name": "ENVIRONMENT_ENTITY" }, { - "kind": "Method", - "canonicalReference": "server!DefaultPlayerEntityController#spawn:member(1)", - "docComment": "/**\n * Called when the controlled entity is spawned. In DefaultPlayerEntityController, this function is used to create the colliders for the entity for wall and ground detection.\n *\n * @remarks\n *\n * **Creates colliders:** Adds two child colliders to the entity: - `groundSensor`: Cylinder sensor below entity for ground/platform detection and landing animations - `wallCollider`: Capsule collider for wall collision with zero friction\n *\n * **Collider sizes scale:** Collider dimensions scale proportionally with `entity.height`.\n *\n * @param entity - The entity that is spawned.\n *\n * **Category:** Controllers\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!CollisionGroup.GROUP_1:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "spawn(entity: " - }, - { - "kind": "Reference", - "text": "Entity", - "canonicalReference": "server!Entity:class" + "text": "GROUP_1 = " }, { "kind": "Content", - "text": "): " - }, + "text": "32" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "GROUP_1" + }, + { + "kind": "EnumMember", + "canonicalReference": "server!CollisionGroup.GROUP_10:member", + "docComment": "", + "excerptTokens": [ { "kind": "Content", - "text": "void" + "text": "GROUP_10 = " }, { "kind": "Content", - "text": ";" + "text": "16384" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 }, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "entity", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "spawn" + "name": "GROUP_10" }, { - "kind": "Property", - "canonicalReference": "server!DefaultPlayerEntityController#sticksToPlatforms:member", - "docComment": "/**\n * Whether the entity sticks to platforms.\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!CollisionGroup.GROUP_11:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "sticksToPlatforms: " - }, - { - "kind": "Content", - "text": "boolean" + "text": "GROUP_11 = " }, { "kind": "Content", - "text": ";" + "text": "32768" } ], - "isReadonly": false, - "isOptional": false, - "releaseTag": "Public", - "name": "sticksToPlatforms", - "propertyTypeTokenRange": { + "initializerTokenRange": { "startIndex": 1, "endIndex": 2 }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "releaseTag": "Public", + "name": "GROUP_11" }, { - "kind": "Property", - "canonicalReference": "server!DefaultPlayerEntityController#swimFastVelocity:member", - "docComment": "/**\n * The normalized horizontal velocity applied to the entity when it swims fast (equivalent to running).\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!CollisionGroup.GROUP_2:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "swimFastVelocity: " - }, - { - "kind": "Content", - "text": "number" + "text": "GROUP_2 = " }, { "kind": "Content", - "text": ";" + "text": "64" } ], - "isReadonly": false, - "isOptional": false, - "releaseTag": "Public", - "name": "swimFastVelocity", - "propertyTypeTokenRange": { + "initializerTokenRange": { "startIndex": 1, "endIndex": 2 }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "releaseTag": "Public", + "name": "GROUP_2" }, { - "kind": "Property", - "canonicalReference": "server!DefaultPlayerEntityController#swimGravity:member", - "docComment": "/**\n * The gravity modifier applied to the entity when swimming.\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!CollisionGroup.GROUP_3:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "swimGravity: " - }, - { - "kind": "Content", - "text": "number" + "text": "GROUP_3 = " }, { "kind": "Content", - "text": ";" + "text": "128" } ], - "isReadonly": false, - "isOptional": false, - "releaseTag": "Public", - "name": "swimGravity", - "propertyTypeTokenRange": { + "initializerTokenRange": { "startIndex": 1, "endIndex": 2 }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "releaseTag": "Public", + "name": "GROUP_3" }, { - "kind": "Property", - "canonicalReference": "server!DefaultPlayerEntityController#swimIdleLoopedAnimations:member", - "docComment": "/**\n * The looped animation(s) that will play when the entity is not moving while swimming.\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!CollisionGroup.GROUP_4:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "swimIdleLoopedAnimations: " - }, - { - "kind": "Content", - "text": "string[]" + "text": "GROUP_4 = " }, { "kind": "Content", - "text": ";" + "text": "256" } ], - "isReadonly": false, - "isOptional": false, - "releaseTag": "Public", - "name": "swimIdleLoopedAnimations", - "propertyTypeTokenRange": { + "initializerTokenRange": { "startIndex": 1, "endIndex": 2 }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "releaseTag": "Public", + "name": "GROUP_4" }, { - "kind": "Property", - "canonicalReference": "server!DefaultPlayerEntityController#swimLoopedAnimations:member", - "docComment": "/**\n * The looped animation(s) that will play when the entity is swimming in any direction.\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!CollisionGroup.GROUP_5:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "swimLoopedAnimations: " - }, - { - "kind": "Content", - "text": "string[]" + "text": "GROUP_5 = " }, { "kind": "Content", - "text": ";" + "text": "512" } ], - "isReadonly": false, - "isOptional": false, - "releaseTag": "Public", - "name": "swimLoopedAnimations", - "propertyTypeTokenRange": { + "initializerTokenRange": { "startIndex": 1, "endIndex": 2 }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "releaseTag": "Public", + "name": "GROUP_5" }, { - "kind": "Property", - "canonicalReference": "server!DefaultPlayerEntityController#swimMaxGravityVelocity:member", - "docComment": "/**\n * The maximum downward velocity that the entity can reach when affected by gravity while swimming.\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!CollisionGroup.GROUP_6:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "swimMaxGravityVelocity: " - }, - { - "kind": "Content", - "text": "number" + "text": "GROUP_6 = " }, { "kind": "Content", - "text": ";" + "text": "1024" } ], - "isReadonly": false, - "isOptional": false, - "releaseTag": "Public", - "name": "swimMaxGravityVelocity", - "propertyTypeTokenRange": { + "initializerTokenRange": { "startIndex": 1, "endIndex": 2 }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "releaseTag": "Public", + "name": "GROUP_6" }, { - "kind": "Property", - "canonicalReference": "server!DefaultPlayerEntityController#swimSlowVelocity:member", - "docComment": "/**\n * The normalized horizontal velocity applied to the entity when it swims slowly (equivalent to walking).\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!CollisionGroup.GROUP_7:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "swimSlowVelocity: " - }, - { - "kind": "Content", - "text": "number" + "text": "GROUP_7 = " }, { "kind": "Content", - "text": ";" + "text": "2048" } ], - "isReadonly": false, - "isOptional": false, - "releaseTag": "Public", - "name": "swimSlowVelocity", - "propertyTypeTokenRange": { + "initializerTokenRange": { "startIndex": 1, "endIndex": 2 }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "releaseTag": "Public", + "name": "GROUP_7" }, { - "kind": "Property", - "canonicalReference": "server!DefaultPlayerEntityController#swimUpwardVelocity:member", - "docComment": "/**\n * The upward velocity applied to the entity when swimming.\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!CollisionGroup.GROUP_8:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "swimUpwardVelocity: " - }, - { - "kind": "Content", - "text": "number" + "text": "GROUP_8 = " }, { "kind": "Content", - "text": ";" + "text": "4096" } ], - "isReadonly": false, - "isOptional": false, - "releaseTag": "Public", - "name": "swimUpwardVelocity", - "propertyTypeTokenRange": { + "initializerTokenRange": { "startIndex": 1, "endIndex": 2 }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "releaseTag": "Public", + "name": "GROUP_8" }, { - "kind": "Method", - "canonicalReference": "server!DefaultPlayerEntityController#tickWithPlayerInput:member(1)", - "docComment": "/**\n * Ticks the player movement for the entity controller, overriding the default implementation. If the entity to tick is a child entity, only the event will be emitted but the default movement logic will not be applied.\n *\n * @remarks\n *\n * **Rotation (-Z forward):** Sets entity rotation based on camera yaw. A yaw of 0 faces -Z. Movement direction offsets (WASD/joystick) are added to camera yaw to determine facing. Models must be authored with their front facing -Z.\n *\n * **Child entities:** If `entity.parent` is set, only emits the event and returns early. Movement logic is skipped for child entities.\n *\n * **Input cancellation:** If `autoCancelMouseLeftClick` is true (default), `input.ml` is set to `false` after processing to prevent repeated triggers.\n *\n * **Animations:** Automatically manages idle, walk, run, jump, swim, and interact animations based on movement state and input.\n *\n * @param entity - The entity to tick.\n *\n * @param input - The current input state of the player.\n *\n * @param cameraOrientation - The current camera orientation state of the player.\n *\n * @param deltaTimeMs - The delta time in milliseconds since the last tick.\n *\n * **Category:** Controllers\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!CollisionGroup.GROUP_9:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "tickWithPlayerInput(entity: " - }, - { - "kind": "Reference", - "text": "PlayerEntity", - "canonicalReference": "server!PlayerEntity:class" + "text": "GROUP_9 = " }, { "kind": "Content", - "text": ", input: " - }, - { - "kind": "Reference", - "text": "PlayerInput", - "canonicalReference": "server!PlayerInput:type" - }, + "text": "8192" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "GROUP_9" + }, + { + "kind": "EnumMember", + "canonicalReference": "server!CollisionGroup.PLAYER:member", + "docComment": "", + "excerptTokens": [ { "kind": "Content", - "text": ", cameraOrientation: " + "text": "PLAYER = " }, { - "kind": "Reference", - "text": "PlayerCameraOrientation", - "canonicalReference": "server!PlayerCameraOrientation:type" - }, + "kind": "Content", + "text": "16" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "PLAYER" + } + ] + }, + { + "kind": "TypeAlias", + "canonicalReference": "server!CollisionGroups:type", + "docComment": "/**\n * A set of collision groups.\n *\n * **Category:** Physics\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export type CollisionGroups = " + }, + { + "kind": "Content", + "text": "{\n belongsTo: " + }, + { + "kind": "Reference", + "text": "CollisionGroup", + "canonicalReference": "server!CollisionGroup:enum" + }, + { + "kind": "Content", + "text": "[];\n collidesWith: " + }, + { + "kind": "Reference", + "text": "CollisionGroup", + "canonicalReference": "server!CollisionGroup:enum" + }, + { + "kind": "Content", + "text": "[];\n}" + }, + { + "kind": "Content", + "text": ";" + } + ], + "fileUrlPath": "src/worlds/physics/CollisionGroupsBuilder.ts", + "releaseTag": "Public", + "name": "CollisionGroups", + "typeTokenRange": { + "startIndex": 1, + "endIndex": 6 + } + }, + { + "kind": "Class", + "canonicalReference": "server!CollisionGroupsBuilder:class", + "docComment": "/**\n * A helper class for building and decoding collision groups.\n *\n * When to use: creating custom collision filters for colliders and rigid bodies. Do NOT use for: per-frame changes; collision group changes are usually infrequent.\n *\n * @remarks\n *\n * Use the static methods directly to encode or decode collision group masks.\n *\n * **Category:** Physics\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export default class CollisionGroupsBuilder " + } + ], + "fileUrlPath": "src/worlds/physics/CollisionGroupsBuilder.ts", + "releaseTag": "Public", + "isAbstract": false, + "name": "CollisionGroupsBuilder", + "preserveMemberOrder": false, + "members": [ + { + "kind": "Method", + "canonicalReference": "server!CollisionGroupsBuilder.buildRawCollisionGroups:member(1)", + "docComment": "/**\n * Builds a raw collision group mask from a set of collision groups.\n *\n * @param collisionGroups - The set of collision groups to build.\n *\n * @returns A raw set of collision groups represented as a 32-bit number.\n *\n * **Category:** Physics\n */\n", + "excerptTokens": [ { "kind": "Content", - "text": ", deltaTimeMs: " + "text": "static buildRawCollisionGroups(collisionGroups: " }, { - "kind": "Content", - "text": "number" + "kind": "Reference", + "text": "CollisionGroups", + "canonicalReference": "server!CollisionGroups:type" }, { "kind": "Content", "text": "): " }, { - "kind": "Content", - "text": "void" + "kind": "Reference", + "text": "RawCollisionGroups", + "canonicalReference": "server!RawCollisionGroups:type" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, + "isStatic": true, "returnTypeTokenRange": { - "startIndex": 9, - "endIndex": 10 + "startIndex": 3, + "endIndex": 4 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, "parameters": [ { - "parameterName": "entity", + "parameterName": "collisionGroups", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "buildRawCollisionGroups" + }, + { + "kind": "Method", + "canonicalReference": "server!CollisionGroupsBuilder.decodeCollisionGroups:member(1)", + "docComment": "/**\n * Decodes collision groups into their string equivalents.\n *\n * @param collisionGroups - The set of collision groups to decode.\n *\n * @returns A set of collision groups represented as their string equivalents.\n *\n * **Category:** Physics\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "static decodeCollisionGroups(collisionGroups: " }, { - "parameterName": "input", - "parameterTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "isOptional": false + "kind": "Reference", + "text": "CollisionGroups", + "canonicalReference": "server!CollisionGroups:type" }, { - "parameterName": "cameraOrientation", - "parameterTypeTokenRange": { - "startIndex": 5, - "endIndex": 6 - }, - "isOptional": false + "kind": "Content", + "text": "): " }, { - "parameterName": "deltaTimeMs", + "kind": "Reference", + "text": "DecodedCollisionGroups", + "canonicalReference": "server!DecodedCollisionGroups:type" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": true, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "collisionGroups", "parameterTypeTokenRange": { - "startIndex": 7, - "endIndex": 8 + "startIndex": 1, + "endIndex": 2 }, "isOptional": false } ], "isOptional": false, "isAbstract": false, - "name": "tickWithPlayerInput" + "name": "decodeCollisionGroups" }, { - "kind": "Property", - "canonicalReference": "server!DefaultPlayerEntityController#walkLoopedAnimations:member", - "docComment": "/**\n * The looped animation(s) that will play when the entity is walking.\n */\n", + "kind": "Method", + "canonicalReference": "server!CollisionGroupsBuilder.decodeRawCollisionGroups:member(1)", + "docComment": "/**\n * Decodes a raw collision group mask into a set of collision groups.\n *\n * @param groups - The raw set of collision groups to decode.\n *\n * @returns A set of collision groups.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "walkLoopedAnimations: " + "text": "static decodeRawCollisionGroups(groups: " + }, + { + "kind": "Reference", + "text": "RawCollisionGroups", + "canonicalReference": "server!RawCollisionGroups:type" }, { "kind": "Content", - "text": "string[]" + "text": "): " + }, + { + "kind": "Reference", + "text": "CollisionGroups", + "canonicalReference": "server!CollisionGroups:type" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": false, - "releaseTag": "Public", - "name": "walkLoopedAnimations", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 + "isStatic": true, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 }, - "isStatic": false, + "releaseTag": "Public", "isProtected": false, - "isAbstract": false + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "groups", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "decodeRawCollisionGroups" }, { - "kind": "Property", - "canonicalReference": "server!DefaultPlayerEntityController#walkVelocity:member", - "docComment": "/**\n * The normalized horizontal velocity applied to the entity when it walks.\n */\n", + "kind": "Method", + "canonicalReference": "server!CollisionGroupsBuilder.isDefaultCollisionGroups:member(1)", + "docComment": "/**\n * Checks if the collision groups are the default collision groups.\n *\n * @param collisionGroups - The set of collision groups to check.\n *\n * @returns Whether the collision groups are the default collision groups.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "walkVelocity: " + "text": "static isDefaultCollisionGroups(collisionGroups: " + }, + { + "kind": "Reference", + "text": "CollisionGroups", + "canonicalReference": "server!CollisionGroups:type" }, { "kind": "Content", - "text": "number" + "text": "): " + }, + { + "kind": "Content", + "text": "boolean" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": false, - "releaseTag": "Public", - "name": "walkVelocity", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 + "isStatic": true, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 }, - "isStatic": false, + "releaseTag": "Public", "isProtected": false, - "isAbstract": false + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "collisionGroups", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "isDefaultCollisionGroups" } ], - "extendsTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, "implementsTokenRanges": [] }, + { + "kind": "TypeAlias", + "canonicalReference": "server!CommandCallback:type", + "docComment": "/**\n * A callback function for a chat command.\n *\n * @param player - The player that sent the command.\n *\n * @param args - An array of arguments, comprised of all space separated text after the command.\n *\n * @param message - The full message of the command. **Category:** Chat\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export type CommandCallback = " + }, + { + "kind": "Content", + "text": "(player: " + }, + { + "kind": "Reference", + "text": "Player", + "canonicalReference": "server!Player:class" + }, + { + "kind": "Content", + "text": ", args: string[], message: string) => void" + }, + { + "kind": "Content", + "text": ";" + } + ], + "fileUrlPath": "src/worlds/chat/ChatManager.ts", + "releaseTag": "Public", + "name": "CommandCallback", + "typeTokenRange": { + "startIndex": 1, + "endIndex": 4 + } + }, { "kind": "Interface", - "canonicalReference": "server!DefaultPlayerEntityControllerOptions:interface", - "docComment": "/**\n * Options for creating a DefaultPlayerEntityController instance.\n *\n * Use for: configuring default player movement and animation behavior at construction time. Do NOT use for: per-frame changes; override methods or adjust controller state instead.\n *\n * **Category:** Controllers\n *\n * @public\n */\n", + "canonicalReference": "server!ConeColliderOptions:interface", + "docComment": "/**\n * The options for a cone collider.\n *\n * Use for: cone-shaped colliders. Do NOT use for: other shapes; use the matching collider option type.\n *\n * **Category:** Physics\n *\n * @public\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "export interface DefaultPlayerEntityControllerOptions " + "text": "export interface ConeColliderOptions extends " + }, + { + "kind": "Reference", + "text": "BaseColliderOptions", + "canonicalReference": "server!BaseColliderOptions:interface" + }, + { + "kind": "Content", + "text": " " } ], - "fileUrlPath": "src/worlds/entities/controllers/DefaultPlayerEntityController.ts", + "fileUrlPath": "src/worlds/physics/Collider.ts", "releaseTag": "Public", - "name": "DefaultPlayerEntityControllerOptions", + "name": "ConeColliderOptions", "preserveMemberOrder": false, "members": [ { "kind": "PropertySignature", - "canonicalReference": "server!DefaultPlayerEntityControllerOptions#applyDirectionalMovementRotations:member", - "docComment": "/**\n * Whether to apply directional rotations to the entity while moving, defaults to true.\n */\n", + "canonicalReference": "server!ConeColliderOptions#halfHeight:member", + "docComment": "/**\n * The half height of the cone collider.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "applyDirectionalMovementRotations?: " + "text": "halfHeight?: " }, { "kind": "Content", - "text": "boolean" + "text": "number" }, { "kind": "Content", @@ -13778,7 +13520,7 @@ "isReadonly": false, "isOptional": true, "releaseTag": "Public", - "name": "applyDirectionalMovementRotations", + "name": "halfHeight", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -13786,16 +13528,16 @@ }, { "kind": "PropertySignature", - "canonicalReference": "server!DefaultPlayerEntityControllerOptions#autoCancelMouseLeftClick:member", - "docComment": "/**\n * Whether to automatically cancel left click input after first processed tick, defaults to true.\n */\n", + "canonicalReference": "server!ConeColliderOptions#radius:member", + "docComment": "/**\n * The radius of the cone collider.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "autoCancelMouseLeftClick?: " + "text": "radius?: " }, { "kind": "Content", - "text": "boolean" + "text": "number" }, { "kind": "Content", @@ -13805,7 +13547,7 @@ "isReadonly": false, "isOptional": true, "releaseTag": "Public", - "name": "autoCancelMouseLeftClick", + "name": "radius", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -13813,16 +13555,17 @@ }, { "kind": "PropertySignature", - "canonicalReference": "server!DefaultPlayerEntityControllerOptions#canJump:member", - "docComment": "/**\n * A function allowing custom logic to determine if the entity can jump.\n */\n", + "canonicalReference": "server!ConeColliderOptions#shape:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "canJump?: " + "text": "shape: " }, { - "kind": "Content", - "text": "() => boolean" + "kind": "Reference", + "text": "ColliderShape.CONE", + "canonicalReference": "server!ColliderShape.CONE:member" }, { "kind": "Content", @@ -13830,134 +13573,305 @@ } ], "isReadonly": false, - "isOptional": true, + "isOptional": false, "releaseTag": "Public", - "name": "canJump", + "name": "shape", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 } + } + ], + "extendsTokenRanges": [ + { + "startIndex": 1, + "endIndex": 2 + } + ] + }, + { + "kind": "TypeAlias", + "canonicalReference": "server!ContactForceData:type", + "docComment": "/**\n * Data for contact forces.\n *\n * **Category:** Physics\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export type ContactForceData = " }, { - "kind": "PropertySignature", - "canonicalReference": "server!DefaultPlayerEntityControllerOptions#canRun:member", - "docComment": "/**\n * A function allowing custom logic to determine if the entity can run.\n */\n", + "kind": "Content", + "text": "{\n totalForce: " + }, + { + "kind": "Reference", + "text": "RAPIER.Vector", + "canonicalReference": "@dimforge/rapier3d-simd-compat!Vector:interface" + }, + { + "kind": "Content", + "text": ";\n totalForceMagnitude: number;\n maxForceDirection: " + }, + { + "kind": "Reference", + "text": "RAPIER.Vector", + "canonicalReference": "@dimforge/rapier3d-simd-compat!Vector:interface" + }, + { + "kind": "Content", + "text": ";\n maxForceMagnitude: number;\n}" + }, + { + "kind": "Content", + "text": ";" + } + ], + "fileUrlPath": "src/worlds/physics/Simulation.ts", + "releaseTag": "Public", + "name": "ContactForceData", + "typeTokenRange": { + "startIndex": 1, + "endIndex": 6 + } + }, + { + "kind": "TypeAlias", + "canonicalReference": "server!ContactManifold:type", + "docComment": "/**\n * A contact manifold.\n *\n * **Category:** Physics\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export type ContactManifold = " + }, + { + "kind": "Content", + "text": "{\n contactPoints: " + }, + { + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" + }, + { + "kind": "Content", + "text": "[];\n localNormalA: " + }, + { + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" + }, + { + "kind": "Content", + "text": ";\n localNormalB: " + }, + { + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" + }, + { + "kind": "Content", + "text": ";\n normal: " + }, + { + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" + }, + { + "kind": "Content", + "text": ";\n}" + }, + { + "kind": "Content", + "text": ";" + } + ], + "fileUrlPath": "src/worlds/physics/Simulation.ts", + "releaseTag": "Public", + "name": "ContactManifold", + "typeTokenRange": { + "startIndex": 1, + "endIndex": 10 + } + }, + { + "kind": "Class", + "canonicalReference": "server!CpuProfiler:class", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "export default class CpuProfiler " + } + ], + "fileUrlPath": "src/metrics/CpuProfiler.ts", + "releaseTag": "Public", + "isAbstract": false, + "name": "CpuProfiler", + "preserveMemberOrder": false, + "members": [ + { + "kind": "Method", + "canonicalReference": "server!CpuProfiler.captureHeapSnapshot:member(1)", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "canRun?: " + "text": "static captureHeapSnapshot(outputPath?: " }, { "kind": "Content", - "text": "() => boolean" + "text": "string" }, { "kind": "Content", - "text": ";" - } - ], - "isReadonly": false, - "isOptional": true, - "releaseTag": "Public", - "name": "canRun", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } - }, - { - "kind": "PropertySignature", - "canonicalReference": "server!DefaultPlayerEntityControllerOptions#canSwim:member", - "docComment": "/**\n * A function allowing custom logic to determine if the entity can swim.\n */\n", - "excerptTokens": [ + "text": "): " + }, { - "kind": "Content", - "text": "canSwim?: " + "kind": "Reference", + "text": "Promise", + "canonicalReference": "!Promise:interface" }, { "kind": "Content", - "text": "() => boolean" + "text": "" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": true, + "isStatic": true, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 5 + }, "releaseTag": "Public", - "name": "canSwim", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "outputPath", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": true + } + ], + "isOptional": false, + "isAbstract": false, + "name": "captureHeapSnapshot" }, { - "kind": "PropertySignature", - "canonicalReference": "server!DefaultPlayerEntityControllerOptions#canWalk:member", - "docComment": "/**\n * A function allowing custom logic to determine if the entity can walk.\n */\n", + "kind": "Method", + "canonicalReference": "server!CpuProfiler.captureProfile:member(1)", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "canWalk?: " + "text": "static captureProfile(durationMs: " }, { "kind": "Content", - "text": "() => boolean" + "text": "number" }, { "kind": "Content", - "text": ";" - } - ], - "isReadonly": false, - "isOptional": true, - "releaseTag": "Public", - "name": "canWalk", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } - }, - { - "kind": "PropertySignature", - "canonicalReference": "server!DefaultPlayerEntityControllerOptions#facesCameraWhenIdle:member", - "docComment": "/**\n * Whether the entity rotates to face the camera direction when idle.\n */\n", - "excerptTokens": [ + "text": ", outputPath?: " + }, { "kind": "Content", - "text": "facesCameraWhenIdle?: " + "text": "string" }, { "kind": "Content", - "text": "boolean" + "text": "): " + }, + { + "kind": "Reference", + "text": "Promise", + "canonicalReference": "!Promise:interface" + }, + { + "kind": "Content", + "text": "" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": true, + "isStatic": true, + "returnTypeTokenRange": { + "startIndex": 5, + "endIndex": 7 + }, "releaseTag": "Public", - "name": "facesCameraWhenIdle", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "durationMs", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + }, + { + "parameterName": "outputPath", + "parameterTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "isOptional": true + } + ], + "isOptional": false, + "isAbstract": false, + "name": "captureProfile" + } + ], + "implementsTokenRanges": [] + }, + { + "kind": "Interface", + "canonicalReference": "server!CylinderColliderOptions:interface", + "docComment": "/**\n * The options for a cylinder collider.\n *\n * Use for: cylinder-shaped colliders. Do NOT use for: other shapes; use the matching collider option type.\n *\n * **Category:** Physics\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export interface CylinderColliderOptions extends " + }, + { + "kind": "Reference", + "text": "BaseColliderOptions", + "canonicalReference": "server!BaseColliderOptions:interface" }, + { + "kind": "Content", + "text": " " + } + ], + "fileUrlPath": "src/worlds/physics/Collider.ts", + "releaseTag": "Public", + "name": "CylinderColliderOptions", + "preserveMemberOrder": false, + "members": [ { "kind": "PropertySignature", - "canonicalReference": "server!DefaultPlayerEntityControllerOptions#idleLoopedAnimations:member", - "docComment": "/**\n * Overrides the animation(s) that will play when the entity is idle.\n */\n", + "canonicalReference": "server!CylinderColliderOptions#halfHeight:member", + "docComment": "/**\n * The half height of the cylinder collider.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "idleLoopedAnimations?: " + "text": "halfHeight?: " }, { "kind": "Content", - "text": "string[]" + "text": "number" }, { "kind": "Content", @@ -13967,7 +13881,7 @@ "isReadonly": false, "isOptional": true, "releaseTag": "Public", - "name": "idleLoopedAnimations", + "name": "halfHeight", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -13975,16 +13889,16 @@ }, { "kind": "PropertySignature", - "canonicalReference": "server!DefaultPlayerEntityControllerOptions#interactOneshotAnimations:member", - "docComment": "/**\n * Overrides the animation(s) that will play when the entity interacts (left click)\n */\n", + "canonicalReference": "server!CylinderColliderOptions#radius:member", + "docComment": "/**\n * The radius of the cylinder collider.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "interactOneshotAnimations?: " + "text": "radius?: " }, { "kind": "Content", - "text": "string[]" + "text": "number" }, { "kind": "Content", @@ -13994,7 +13908,7 @@ "isReadonly": false, "isOptional": true, "releaseTag": "Public", - "name": "interactOneshotAnimations", + "name": "radius", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -14002,16 +13916,17 @@ }, { "kind": "PropertySignature", - "canonicalReference": "server!DefaultPlayerEntityControllerOptions#jumpLandHeavyOneshotAnimations:member", - "docComment": "/**\n * Overrides the animation(s) that will play when the entity lands with a high velocity.\n */\n", + "canonicalReference": "server!CylinderColliderOptions#shape:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "jumpLandHeavyOneshotAnimations?: " + "text": "shape: " }, { - "kind": "Content", - "text": "string[]" + "kind": "Reference", + "text": "ColliderShape.CYLINDER", + "canonicalReference": "server!ColliderShape.CYLINDER:member" }, { "kind": "Content", @@ -14019,107 +13934,242 @@ } ], "isReadonly": false, - "isOptional": true, + "isOptional": false, "releaseTag": "Public", - "name": "jumpLandHeavyOneshotAnimations", + "name": "shape", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 } + } + ], + "extendsTokenRanges": [ + { + "startIndex": 1, + "endIndex": 2 + } + ] + }, + { + "kind": "TypeAlias", + "canonicalReference": "server!DecodedCollisionGroups:type", + "docComment": "/**\n * A decoded set of collision groups represented as their string equivalents.\n *\n * **Category:** Physics\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export type DecodedCollisionGroups = " }, { - "kind": "PropertySignature", - "canonicalReference": "server!DefaultPlayerEntityControllerOptions#jumpLandLightOneshotAnimations:member", - "docComment": "/**\n * Overrides the animation(s) that will play when the entity lands after jumping or being airborne.\n */\n", + "kind": "Content", + "text": "{\n belongsTo: string[];\n collidesWith: string[];\n}" + }, + { + "kind": "Content", + "text": ";" + } + ], + "fileUrlPath": "src/worlds/physics/CollisionGroupsBuilder.ts", + "releaseTag": "Public", + "name": "DecodedCollisionGroups", + "typeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "Variable", + "canonicalReference": "server!DEFAULT_ENTITY_RIGID_BODY_OPTIONS:var", + "docComment": "/**\n * The default rigid body options for a model entity when `EntityOptions.rigidBodyOptions` is not provided.\n *\n * **Category:** Entities\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "DEFAULT_ENTITY_RIGID_BODY_OPTIONS: " + }, + { + "kind": "Reference", + "text": "RigidBodyOptions", + "canonicalReference": "server!RigidBodyOptions:type" + } + ], + "fileUrlPath": "src/worlds/entities/Entity.ts", + "isReadonly": true, + "releaseTag": "Public", + "name": "DEFAULT_ENTITY_RIGID_BODY_OPTIONS", + "variableTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "Class", + "canonicalReference": "server!DefaultPlayerEntity:class", + "docComment": "/**\n * Represents the default player model entity.\n *\n * When to use: standard player avatars with built-in cosmetics and default controls. Do NOT use for: fully custom player rigs that don't match the default model's anchors/animations.\n *\n * @remarks\n *\n * Extends `PlayerEntity`, uses the default player model, and assigns `DefaultPlayerEntityController`. You can override defaults, but if you change `modelUri`, ensure the model has the same animation names and anchor points.\n *\n * @example\n * ```typescript\n * const playerEntity = new DefaultPlayerEntity({ player });\n *\n * playerEntity.spawn(world, { x: 0, y: 10, z: 0 });\n * ```\n *\n * **Category:** Entities\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export default class DefaultPlayerEntity extends " + }, + { + "kind": "Reference", + "text": "PlayerEntity", + "canonicalReference": "server!PlayerEntity:class" + }, + { + "kind": "Content", + "text": " " + } + ], + "fileUrlPath": "src/worlds/entities/DefaultPlayerEntity.ts", + "releaseTag": "Public", + "isAbstract": false, + "name": "DefaultPlayerEntity", + "preserveMemberOrder": false, + "members": [ + { + "kind": "Constructor", + "canonicalReference": "server!DefaultPlayerEntity:constructor(1)", + "docComment": "/**\n * Creates a new DefaultPlayerEntity instance.\n *\n * @remarks\n *\n * **Auto-assigned defaults:** A `DefaultPlayerEntityController` is automatically created and assigned. Default idle animations are initialized as looped and playing.\n *\n * **Cosmetics on spawn:** When spawned, player cosmetics (hair, skin, equipped items) are fetched asynchronously and applied. Child entities are created for hair and equipped cosmetic items.\n *\n * @param options - The options for the default player entity.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "jumpLandLightOneshotAnimations?: " + "text": "constructor(options: " }, { - "kind": "Content", - "text": "string[]" + "kind": "Reference", + "text": "DefaultPlayerEntityOptions", + "canonicalReference": "server!DefaultPlayerEntityOptions:type" }, { "kind": "Content", - "text": ";" + "text": ");" } ], - "isReadonly": false, - "isOptional": true, "releaseTag": "Public", - "name": "jumpLandLightOneshotAnimations", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "options", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ] }, { - "kind": "PropertySignature", - "canonicalReference": "server!DefaultPlayerEntityControllerOptions#jumpOneshotAnimations:member", - "docComment": "/**\n * Overrides the animation(s) that will play when the entity is jumping.\n */\n", + "kind": "Property", + "canonicalReference": "server!DefaultPlayerEntity#cosmeticHiddenSlots:member", + "docComment": "/**\n * The cosmetic slots that are hidden.\n *\n * **Category:** Entities\n *\n * @public\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "jumpOneshotAnimations?: " + "text": "get cosmeticHiddenSlots(): " + }, + { + "kind": "Reference", + "text": "PlayerCosmeticSlot", + "canonicalReference": "server!PlayerCosmeticSlot:type" }, { "kind": "Content", - "text": "string[]" + "text": "[]" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": true, + "isReadonly": true, + "isOptional": false, "releaseTag": "Public", - "name": "jumpOneshotAnimations", + "name": "cosmeticHiddenSlots", "propertyTypeTokenRange": { "startIndex": 1, - "endIndex": 2 - } + "endIndex": 3 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false + } + ], + "extendsTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "implementsTokenRanges": [] + }, + { + "kind": "Class", + "canonicalReference": "server!DefaultPlayerEntityController:class", + "docComment": "/**\n * The default player entity controller implementation.\n *\n * When to use: player-controlled avatars using `DefaultPlayerEntity`. Do NOT use for: NPCs or non-player entities; use `SimpleEntityController` or `PathfindingEntityController` instead.\n *\n * @remarks\n *\n * Extends `BaseEntityController` and implements default movement, platforming, jumping, and swimming. You can extend this class to add custom logic.\n *\n *

Coordinate System & Model Orientation

\n *\n * HYTOPIA uses **-Z as forward**. Models must be authored with their front facing -Z. A yaw of 0 means facing -Z. The controller rotates the entity based on camera yaw and movement direction, always orienting the entity's -Z axis in the intended facing direction.\n *\n * @example\n * ```typescript\n * // Create a custom entity controller for myEntity, prior to spawning it.\n * myEntity.setController(new DefaultPlayerEntityController({\n * jumpVelocity: 10,\n * runVelocity: 8,\n * walkVelocity: 4,\n * }));\n *\n * // Spawn the entity in the world.\n * myEntity.spawn(world, { x: 53, y: 10, z: 23 });\n * ```\n *\n * **Category:** Controllers\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export default class DefaultPlayerEntityController extends " }, { - "kind": "PropertySignature", - "canonicalReference": "server!DefaultPlayerEntityControllerOptions#jumpVelocity:member", - "docComment": "/**\n * The upward velocity applied to the entity when it jumps.\n */\n", + "kind": "Reference", + "text": "BaseEntityController", + "canonicalReference": "server!BaseEntityController:class" + }, + { + "kind": "Content", + "text": " " + } + ], + "fileUrlPath": "src/worlds/entities/controllers/DefaultPlayerEntityController.ts", + "releaseTag": "Public", + "isAbstract": false, + "name": "DefaultPlayerEntityController", + "preserveMemberOrder": false, + "members": [ + { + "kind": "Constructor", + "canonicalReference": "server!DefaultPlayerEntityController:constructor(1)", + "docComment": "/**\n * Constructs a new instance of the `DefaultPlayerEntityController` class\n *\n * @param options - Options for the controller.\n *\n * **Category:** Controllers\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "jumpVelocity?: " + "text": "constructor(options?: " }, { - "kind": "Content", - "text": "number" + "kind": "Reference", + "text": "DefaultPlayerEntityControllerOptions", + "canonicalReference": "server!DefaultPlayerEntityControllerOptions:interface" }, { "kind": "Content", - "text": ";" + "text": ");" } ], - "isReadonly": false, - "isOptional": true, "releaseTag": "Public", - "name": "jumpVelocity", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "options", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": true + } + ] }, { - "kind": "PropertySignature", - "canonicalReference": "server!DefaultPlayerEntityControllerOptions#runLoopedAnimations:member", - "docComment": "/**\n * Overrides the animation(s) that will play when the entity is running.\n */\n", + "kind": "Property", + "canonicalReference": "server!DefaultPlayerEntityController#applyDirectionalMovementRotations:member", + "docComment": "/**\n * Whether to apply directional rotations to the entity while moving, defaults to true.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "runLoopedAnimations?: " + "text": "applyDirectionalMovementRotations: " }, { "kind": "Content", - "text": "string[]" + "text": "boolean" }, { "kind": "Content", @@ -14127,49 +14177,74 @@ } ], "isReadonly": false, - "isOptional": true, + "isOptional": false, "releaseTag": "Public", - "name": "runLoopedAnimations", + "name": "applyDirectionalMovementRotations", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - } + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!DefaultPlayerEntityControllerOptions#runVelocity:member", - "docComment": "/**\n * The normalized horizontal velocity applied to the entity when it runs.\n */\n", + "kind": "Method", + "canonicalReference": "server!DefaultPlayerEntityController#attach:member(1)", + "docComment": "/**\n * Called when the controller is attached to an entity.\n *\n * @remarks\n *\n * **Wraps `applyImpulse`:** The entity's `applyImpulse` method is wrapped to track external velocities separately from internal movement. External impulses decay over time when grounded.\n *\n * **Locks rotations:** Calls `entity.lockAllRotations()` to prevent physics from rotating the entity. Rotation is set explicitly by the controller based on camera orientation.\n *\n * **Enables CCD:** Enables continuous collision detection on the entity.\n *\n * **Swimming detection:** Registers a `BLOCK_COLLISION` listener to detect liquid blocks and manage swimming state, gravity scale, and animations.\n *\n * @param entity - The entity to attach the controller to.\n *\n * **Category:** Controllers\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "runVelocity?: " + "text": "attach(entity: " + }, + { + "kind": "Reference", + "text": "Entity", + "canonicalReference": "server!Entity:class" }, { "kind": "Content", - "text": "number" + "text": "): " + }, + { + "kind": "Content", + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": true, + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, "releaseTag": "Public", - "name": "runVelocity", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "entity", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "attach" }, { - "kind": "PropertySignature", - "canonicalReference": "server!DefaultPlayerEntityControllerOptions#sticksToPlatforms:member", - "docComment": "/**\n * Whether the entity sticks to platforms, defaults to true.\n */\n", + "kind": "Property", + "canonicalReference": "server!DefaultPlayerEntityController#autoCancelMouseLeftClick:member", + "docComment": "/**\n * Whether to automatically cancel left click input after first processed tick, defaults to true.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "sticksToPlatforms?: " + "text": "autoCancelMouseLeftClick: " }, { "kind": "Content", @@ -14181,26 +14256,38 @@ } ], "isReadonly": false, - "isOptional": true, + "isOptional": false, "releaseTag": "Public", - "name": "sticksToPlatforms", + "name": "autoCancelMouseLeftClick", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - } + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!DefaultPlayerEntityControllerOptions#swimFastVelocity:member", - "docComment": "/**\n * The normalized horizontal velocity applied to the entity when it swims fast (equivalent to running).\n */\n", + "kind": "Property", + "canonicalReference": "server!DefaultPlayerEntityController#canJump:member", + "docComment": "/**\n * A function allowing custom logic to determine if the entity can jump.\n *\n * @param controller - The default player entity controller instance.\n *\n * @returns Whether the entity of the entity controller can jump.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "swimFastVelocity?: " + "text": "canJump: " }, { "kind": "Content", - "text": "number" + "text": "(controller: " + }, + { + "kind": "Reference", + "text": "DefaultPlayerEntityController", + "canonicalReference": "server!DefaultPlayerEntityController:class" + }, + { + "kind": "Content", + "text": ") => boolean" }, { "kind": "Content", @@ -14208,26 +14295,38 @@ } ], "isReadonly": false, - "isOptional": true, + "isOptional": false, "releaseTag": "Public", - "name": "swimFastVelocity", + "name": "canJump", "propertyTypeTokenRange": { "startIndex": 1, - "endIndex": 2 - } + "endIndex": 4 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!DefaultPlayerEntityControllerOptions#swimGravity:member", - "docComment": "/**\n * The gravity modifier applied to the entity when swimming.\n */\n", + "kind": "Property", + "canonicalReference": "server!DefaultPlayerEntityController#canRun:member", + "docComment": "/**\n * A function allowing custom logic to determine if the entity can run.\n *\n * @param controller - The default player entity controller instance.\n *\n * @returns Whether the entity of the entity controller can run.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "swimGravity?: " + "text": "canRun: " }, { "kind": "Content", - "text": "number" + "text": "(controller: " + }, + { + "kind": "Reference", + "text": "DefaultPlayerEntityController", + "canonicalReference": "server!DefaultPlayerEntityController:class" + }, + { + "kind": "Content", + "text": ") => boolean" }, { "kind": "Content", @@ -14235,26 +14334,38 @@ } ], "isReadonly": false, - "isOptional": true, + "isOptional": false, "releaseTag": "Public", - "name": "swimGravity", + "name": "canRun", "propertyTypeTokenRange": { "startIndex": 1, - "endIndex": 2 - } + "endIndex": 4 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!DefaultPlayerEntityControllerOptions#swimIdleLoopedAnimations:member", - "docComment": "/**\n * The looped animation(s) that will play when the entity is not moving while swimming.\n */\n", + "kind": "Property", + "canonicalReference": "server!DefaultPlayerEntityController#canSwim:member", + "docComment": "/**\n * A function allowing custom logic to determine if the entity can swim.\n *\n * @param controller - The default player entity controller instance.\n *\n * @returns Whether the entity of the entity controller can swim.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "swimIdleLoopedAnimations?: " + "text": "canSwim: " }, { "kind": "Content", - "text": "string[]" + "text": "(controller: " + }, + { + "kind": "Reference", + "text": "DefaultPlayerEntityController", + "canonicalReference": "server!DefaultPlayerEntityController:class" + }, + { + "kind": "Content", + "text": ") => boolean" }, { "kind": "Content", @@ -14262,26 +14373,38 @@ } ], "isReadonly": false, - "isOptional": true, + "isOptional": false, "releaseTag": "Public", - "name": "swimIdleLoopedAnimations", + "name": "canSwim", "propertyTypeTokenRange": { "startIndex": 1, - "endIndex": 2 - } + "endIndex": 4 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!DefaultPlayerEntityControllerOptions#swimLoopedAnimations:member", - "docComment": "/**\n * The looped animation(s) that will play when the entity is swimming in any direction.\n */\n", + "kind": "Property", + "canonicalReference": "server!DefaultPlayerEntityController#canWalk:member", + "docComment": "/**\n * A function allowing custom logic to determine if the entity can walk.\n *\n * @param controller - The default player entity controller instance.\n *\n * @returns Whether the entity of the entity controller can walk.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "swimLoopedAnimations?: " + "text": "canWalk: " }, { "kind": "Content", - "text": "string[]" + "text": "(controller: " + }, + { + "kind": "Reference", + "text": "DefaultPlayerEntityController", + "canonicalReference": "server!DefaultPlayerEntityController:class" + }, + { + "kind": "Content", + "text": ") => boolean" }, { "kind": "Content", @@ -14289,26 +14412,29 @@ } ], "isReadonly": false, - "isOptional": true, + "isOptional": false, "releaseTag": "Public", - "name": "swimLoopedAnimations", + "name": "canWalk", "propertyTypeTokenRange": { "startIndex": 1, - "endIndex": 2 - } + "endIndex": 4 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!DefaultPlayerEntityControllerOptions#swimMaxGravityVelocity:member", - "docComment": "/**\n * The maximum downward velocity that the entity can reach when affected by gravity while swimming.\n */\n", + "kind": "Property", + "canonicalReference": "server!DefaultPlayerEntityController#facesCameraWhenIdle:member", + "docComment": "/**\n * Whether the entity rotates to face the camera direction when idle. When `true`, the entity always faces the camera direction. When `false`, the entity only rotates while actively moving.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "swimMaxGravityVelocity?: " + "text": "facesCameraWhenIdle: " }, { "kind": "Content", - "text": "number" + "text": "boolean" }, { "kind": "Content", @@ -14316,26 +14442,29 @@ } ], "isReadonly": false, - "isOptional": true, + "isOptional": false, "releaseTag": "Public", - "name": "swimMaxGravityVelocity", + "name": "facesCameraWhenIdle", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - } + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!DefaultPlayerEntityControllerOptions#swimSlowVelocity:member", - "docComment": "/**\n * The normalized horizontal velocity applied to the entity when it swims slowly (equivalent to walking).\n */\n", + "kind": "Property", + "canonicalReference": "server!DefaultPlayerEntityController#idleLoopedAnimations:member", + "docComment": "/**\n * The looped animation(s) that will play when the entity is idle.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "swimSlowVelocity?: " + "text": "idleLoopedAnimations: " }, { "kind": "Content", - "text": "number" + "text": "string[]" }, { "kind": "Content", @@ -14343,26 +14472,29 @@ } ], "isReadonly": false, - "isOptional": true, + "isOptional": false, "releaseTag": "Public", - "name": "swimSlowVelocity", + "name": "idleLoopedAnimations", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - } + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!DefaultPlayerEntityControllerOptions#swimUpwardVelocity:member", - "docComment": "/**\n * The upward velocity applied to the entity when swimming.\n */\n", + "kind": "Property", + "canonicalReference": "server!DefaultPlayerEntityController#interactOneshotAnimations:member", + "docComment": "/**\n * The oneshot animation(s) that will play when the entity interacts (left click)\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "swimUpwardVelocity?: " + "text": "interactOneshotAnimations: " }, { "kind": "Content", - "text": "number" + "text": "string[]" }, { "kind": "Content", @@ -14370,202 +14502,149 @@ } ], "isReadonly": false, - "isOptional": true, + "isOptional": false, "releaseTag": "Public", - "name": "swimUpwardVelocity", + "name": "interactOneshotAnimations", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - } + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!DefaultPlayerEntityControllerOptions#walkLoopedAnimations:member", - "docComment": "/**\n * Overrides the animation(s) that will play when the entity is walking.\n */\n", + "kind": "Property", + "canonicalReference": "server!DefaultPlayerEntityController#isActivelyMoving:member", + "docComment": "/**\n * Whether the entity is moving from player inputs.\n *\n * **Category:** Controllers\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "walkLoopedAnimations?: " + "text": "get isActivelyMoving(): " }, { "kind": "Content", - "text": "string[]" + "text": "boolean" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": true, + "isReadonly": true, + "isOptional": false, "releaseTag": "Public", - "name": "walkLoopedAnimations", + "name": "isActivelyMoving", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - } + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!DefaultPlayerEntityControllerOptions#walkVelocity:member", - "docComment": "/**\n * The normalized horizontal velocity applied to the entity when it walks.\n */\n", + "kind": "Property", + "canonicalReference": "server!DefaultPlayerEntityController#isGrounded:member", + "docComment": "/**\n * Whether the entity is grounded.\n *\n * **Category:** Controllers\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "walkVelocity?: " + "text": "get isGrounded(): " }, { "kind": "Content", - "text": "number" + "text": "boolean" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": true, + "isReadonly": true, + "isOptional": false, "releaseTag": "Public", - "name": "walkVelocity", + "name": "isGrounded", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - } - } - ], - "extendsTokenRanges": [] - }, - { - "kind": "TypeAlias", - "canonicalReference": "server!DefaultPlayerEntityOptions:type", - "docComment": "/**\n * Options for creating a DefaultPlayerEntity instance.\n *\n * Use for: customizing the default player avatar (for example cosmetic visibility). Do NOT use for: changing movement behavior; use `DefaultPlayerEntityControllerOptions`.\n *\n * **Category:** Entities\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export type DefaultPlayerEntityOptions = " - }, - { - "kind": "Content", - "text": "{\n cosmeticHiddenSlots?: " - }, - { - "kind": "Reference", - "text": "PlayerCosmeticSlot", - "canonicalReference": "server!PlayerCosmeticSlot:type" - }, - { - "kind": "Content", - "text": "[];\n} & " - }, - { - "kind": "Reference", - "text": "PlayerEntityOptions", - "canonicalReference": "server!PlayerEntityOptions:type" - }, - { - "kind": "Content", - "text": ";" - } - ], - "fileUrlPath": "src/worlds/entities/DefaultPlayerEntity.ts", - "releaseTag": "Public", - "name": "DefaultPlayerEntityOptions", - "typeTokenRange": { - "startIndex": 1, - "endIndex": 5 - } - }, - { - "kind": "Interface", - "canonicalReference": "server!DynamicRigidBodyOptions:interface", - "docComment": "/**\n * The options for a dynamic rigid body, also the default type.\n *\n * Use for: physics-driven bodies affected by forces and collisions. Do NOT use for: kinematic bodies; use the kinematic option types instead.\n *\n * **Category:** Physics\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export interface DynamicRigidBodyOptions extends " - }, - { - "kind": "Reference", - "text": "BaseRigidBodyOptions", - "canonicalReference": "server!BaseRigidBodyOptions:interface" + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "Content", - "text": " " - } - ], - "fileUrlPath": "src/worlds/physics/RigidBody.ts", - "releaseTag": "Public", - "name": "DynamicRigidBodyOptions", - "preserveMemberOrder": false, - "members": [ - { - "kind": "PropertySignature", - "canonicalReference": "server!DynamicRigidBodyOptions#additionalMass:member", - "docComment": "/**\n * The additional mass of the rigid body.\n *\n * **Category:** Physics\n */\n", + "kind": "Property", + "canonicalReference": "server!DefaultPlayerEntityController#isOnPlatform:member", + "docComment": "/**\n * Whether the entity is on a platform.\n *\n * @remarks\n *\n * A platform is any entity with a kinematic rigid body.\n *\n * **Category:** Controllers\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "additionalMass?: " + "text": "get isOnPlatform(): " }, { "kind": "Content", - "text": "number" + "text": "boolean" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": true, + "isReadonly": true, + "isOptional": false, "releaseTag": "Public", - "name": "additionalMass", + "name": "isOnPlatform", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - } + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!DynamicRigidBodyOptions#additionalMassProperties:member", - "docComment": "/**\n * The additional mass properties of the rigid body.\n *\n * **Category:** Physics\n */\n", + "kind": "Property", + "canonicalReference": "server!DefaultPlayerEntityController#isSwimming:member", + "docComment": "/**\n * Whether the entity is swimming.\n *\n * @remarks\n *\n * Determined by whether the entity is in contact with a liquid block.\n *\n * **Category:** Controllers\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "additionalMassProperties?: " + "text": "get isSwimming(): " }, { - "kind": "Reference", - "text": "RigidBodyAdditionalMassProperties", - "canonicalReference": "server!RigidBodyAdditionalMassProperties:type" + "kind": "Content", + "text": "boolean" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": true, + "isReadonly": true, + "isOptional": false, "releaseTag": "Public", - "name": "additionalMassProperties", + "name": "isSwimming", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - } + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!DynamicRigidBodyOptions#additionalSolverIterations:member", - "docComment": "/**\n * The additional solver iterations of the rigid body.\n *\n * **Category:** Physics\n */\n", + "kind": "Property", + "canonicalReference": "server!DefaultPlayerEntityController#jumpLandHeavyOneshotAnimations:member", + "docComment": "/**\n * The oneshot animation(s) that will play when the entity lands with a high velocity.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "additionalSolverIterations?: " + "text": "jumpLandHeavyOneshotAnimations: " }, { "kind": "Content", - "text": "number" + "text": "string[]" }, { "kind": "Content", @@ -14573,26 +14652,29 @@ } ], "isReadonly": false, - "isOptional": true, + "isOptional": false, "releaseTag": "Public", - "name": "additionalSolverIterations", + "name": "jumpLandHeavyOneshotAnimations", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - } + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!DynamicRigidBodyOptions#angularDamping:member", - "docComment": "/**\n * The angular damping of the rigid body.\n *\n * **Category:** Physics\n */\n", + "kind": "Property", + "canonicalReference": "server!DefaultPlayerEntityController#jumpLandLightOneshotAnimations:member", + "docComment": "/**\n * The oneshot animation(s) that will play when the entity lands after jumping or being airborne.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "angularDamping?: " + "text": "jumpLandLightOneshotAnimations: " }, { "kind": "Content", - "text": "number" + "text": "string[]" }, { "kind": "Content", @@ -14600,27 +14682,29 @@ } ], "isReadonly": false, - "isOptional": true, + "isOptional": false, "releaseTag": "Public", - "name": "angularDamping", + "name": "jumpLandLightOneshotAnimations", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - } + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!DynamicRigidBodyOptions#angularVelocity:member", - "docComment": "/**\n * The angular velocity of the rigid body.\n *\n * **Category:** Physics\n */\n", + "kind": "Property", + "canonicalReference": "server!DefaultPlayerEntityController#jumpOneshotAnimations:member", + "docComment": "/**\n * The oneshot animation(s) that will play when the entity is jumping.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "angularVelocity?: " + "text": "jumpOneshotAnimations: " }, { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "kind": "Content", + "text": "string[]" }, { "kind": "Content", @@ -14628,26 +14712,29 @@ } ], "isReadonly": false, - "isOptional": true, + "isOptional": false, "releaseTag": "Public", - "name": "angularVelocity", + "name": "jumpOneshotAnimations", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - } + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!DynamicRigidBodyOptions#ccdEnabled:member", - "docComment": "/**\n * Whether the rigid body has continuous collision detection enabled.\n *\n * **Category:** Physics\n */\n", + "kind": "Property", + "canonicalReference": "server!DefaultPlayerEntityController#jumpVelocity:member", + "docComment": "/**\n * The upward velocity applied to the entity when it jumps.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "ccdEnabled?: " + "text": "jumpVelocity: " }, { "kind": "Content", - "text": "boolean" + "text": "number" }, { "kind": "Content", @@ -14655,54 +14742,64 @@ } ], "isReadonly": false, - "isOptional": true, + "isOptional": false, "releaseTag": "Public", - "name": "ccdEnabled", + "name": "jumpVelocity", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - } + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!DynamicRigidBodyOptions#dominanceGroup:member", - "docComment": "/**\n * The dominance group of the rigid body.\n *\n * **Category:** Physics\n */\n", + "kind": "Property", + "canonicalReference": "server!DefaultPlayerEntityController#platform:member", + "docComment": "/**\n * The platform the entity is on, if any.\n *\n * **Category:** Controllers\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "dominanceGroup?: " + "text": "get platform(): " + }, + { + "kind": "Reference", + "text": "Entity", + "canonicalReference": "server!Entity:class" }, { "kind": "Content", - "text": "number" + "text": " | undefined" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": true, + "isReadonly": true, + "isOptional": false, "releaseTag": "Public", - "name": "dominanceGroup", + "name": "platform", "propertyTypeTokenRange": { "startIndex": 1, - "endIndex": 2 - } + "endIndex": 3 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!DynamicRigidBodyOptions#enabledPositions:member", - "docComment": "/**\n * The enabled axes of positional movement of the rigid body.\n *\n * **Category:** Physics\n */\n", + "kind": "Property", + "canonicalReference": "server!DefaultPlayerEntityController#runLoopedAnimations:member", + "docComment": "/**\n * The looped animation(s) that will play when the entity is running.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "enabledPositions?: " + "text": "runLoopedAnimations: " }, { - "kind": "Reference", - "text": "Vector3Boolean", - "canonicalReference": "server!Vector3Boolean:interface" + "kind": "Content", + "text": "string[]" }, { "kind": "Content", @@ -14710,27 +14807,29 @@ } ], "isReadonly": false, - "isOptional": true, + "isOptional": false, "releaseTag": "Public", - "name": "enabledPositions", + "name": "runLoopedAnimations", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - } + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!DynamicRigidBodyOptions#enabledRotations:member", - "docComment": "/**\n * The enabled rotations of the rigid body.\n *\n * **Category:** Physics\n */\n", + "kind": "Property", + "canonicalReference": "server!DefaultPlayerEntityController#runVelocity:member", + "docComment": "/**\n * The normalized horizontal velocity applied to the entity when it runs.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "enabledRotations?: " + "text": "runVelocity: " }, { - "kind": "Reference", - "text": "Vector3Boolean", - "canonicalReference": "server!Vector3Boolean:interface" + "kind": "Content", + "text": "number" }, { "kind": "Content", @@ -14738,53 +14837,78 @@ } ], "isReadonly": false, - "isOptional": true, + "isOptional": false, "releaseTag": "Public", - "name": "enabledRotations", + "name": "runVelocity", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - } + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!DynamicRigidBodyOptions#gravityScale:member", - "docComment": "/**\n * The gravity scale of the rigid body.\n *\n * **Category:** Physics\n */\n", + "kind": "Method", + "canonicalReference": "server!DefaultPlayerEntityController#spawn:member(1)", + "docComment": "/**\n * Called when the controlled entity is spawned. In DefaultPlayerEntityController, this function is used to create the colliders for the entity for wall and ground detection.\n *\n * @remarks\n *\n * **Creates colliders:** Adds two child colliders to the entity: - `groundSensor`: Cylinder sensor below entity for ground/platform detection and landing animations - `wallCollider`: Capsule collider for wall collision with zero friction\n *\n * **Collider sizes scale:** Collider dimensions scale proportionally with `entity.height`.\n *\n * @param entity - The entity that is spawned.\n *\n * **Category:** Controllers\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "gravityScale?: " + "text": "spawn(entity: " + }, + { + "kind": "Reference", + "text": "Entity", + "canonicalReference": "server!Entity:class" }, { "kind": "Content", - "text": "number" + "text": "): " + }, + { + "kind": "Content", + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": true, + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, "releaseTag": "Public", - "name": "gravityScale", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "entity", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "spawn" }, { - "kind": "PropertySignature", - "canonicalReference": "server!DynamicRigidBodyOptions#linearDamping:member", - "docComment": "/**\n * The linear damping of the rigid body.\n *\n * **Category:** Physics\n */\n", + "kind": "Property", + "canonicalReference": "server!DefaultPlayerEntityController#sticksToPlatforms:member", + "docComment": "/**\n * Whether the entity sticks to platforms.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "linearDamping?: " + "text": "sticksToPlatforms: " }, { "kind": "Content", - "text": "number" + "text": "boolean" }, { "kind": "Content", @@ -14792,27 +14916,29 @@ } ], "isReadonly": false, - "isOptional": true, + "isOptional": false, "releaseTag": "Public", - "name": "linearDamping", + "name": "sticksToPlatforms", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - } + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!DynamicRigidBodyOptions#linearVelocity:member", - "docComment": "/**\n * The linear velocity of the rigid body.\n *\n * **Category:** Physics\n */\n", + "kind": "Property", + "canonicalReference": "server!DefaultPlayerEntityController#swimFastVelocity:member", + "docComment": "/**\n * The normalized horizontal velocity applied to the entity when it swims fast (equivalent to running).\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "linearVelocity?: " + "text": "swimFastVelocity: " }, { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "kind": "Content", + "text": "number" }, { "kind": "Content", @@ -14820,26 +14946,29 @@ } ], "isReadonly": false, - "isOptional": true, + "isOptional": false, "releaseTag": "Public", - "name": "linearVelocity", + "name": "swimFastVelocity", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - } + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!DynamicRigidBodyOptions#sleeping:member", - "docComment": "/**\n * Whether the rigid body is sleeping.\n *\n * **Category:** Physics\n */\n", + "kind": "Property", + "canonicalReference": "server!DefaultPlayerEntityController#swimGravity:member", + "docComment": "/**\n * The gravity modifier applied to the entity when swimming.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "sleeping?: " + "text": "swimGravity: " }, { "kind": "Content", - "text": "boolean" + "text": "number" }, { "kind": "Content", @@ -14847,26 +14976,29 @@ } ], "isReadonly": false, - "isOptional": true, + "isOptional": false, "releaseTag": "Public", - "name": "sleeping", + "name": "swimGravity", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - } + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!DynamicRigidBodyOptions#softCcdPrediction:member", - "docComment": "/**\n * The soft continuous collision detection prediction of the rigid body.\n *\n * **Category:** Physics\n */\n", + "kind": "Property", + "canonicalReference": "server!DefaultPlayerEntityController#swimIdleLoopedAnimations:member", + "docComment": "/**\n * The looped animation(s) that will play when the entity is not moving while swimming.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "softCcdPrediction?: " + "text": "swimIdleLoopedAnimations: " }, { "kind": "Content", - "text": "number" + "text": "string[]" }, { "kind": "Content", @@ -14874,27 +15006,29 @@ } ], "isReadonly": false, - "isOptional": true, + "isOptional": false, "releaseTag": "Public", - "name": "softCcdPrediction", + "name": "swimIdleLoopedAnimations", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - } + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!DynamicRigidBodyOptions#type:member", - "docComment": "", + "kind": "Property", + "canonicalReference": "server!DefaultPlayerEntityController#swimLoopedAnimations:member", + "docComment": "/**\n * The looped animation(s) that will play when the entity is swimming in any direction.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "type: " + "text": "swimLoopedAnimations: " }, { - "kind": "Reference", - "text": "RigidBodyType.DYNAMIC", - "canonicalReference": "server!RigidBodyType.DYNAMIC:member" + "kind": "Content", + "text": "string[]" }, { "kind": "Content", @@ -14904,117 +15038,40 @@ "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "type", + "name": "swimLoopedAnimations", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - } - } - ], - "extendsTokenRanges": [ - { - "startIndex": 1, - "endIndex": 2 - } - ] - }, - { - "kind": "Class", - "canonicalReference": "server!Entity:class", - "docComment": "/**\n * Represents a dynamic or static object in a world.\n *\n * When to use: any non-player object that needs physics, visuals, or interactions. Do NOT use for: player-controlled avatars (use `PlayerEntity` / `DefaultPlayerEntity`). Do NOT use for: voxel blocks (use block APIs on `ChunkLattice`).\n *\n * @remarks\n *\n * Entities are created from a block texture or a `.gltf` model and can have rigid bodies, colliders, animations, and controllers.\n *\n *

Coordinate System

\n *\n * HYTOPIA uses a right-handed coordinate system where: - **+X** is right - **+Y** is up - **-Z** is forward (identity orientation)\n *\n * Models should be authored with their front/forward facing the **-Z axis**. When an entity has identity rotation (0,0,0,1 quaternion or yaw=0), it faces -Z.\n *\n *

Events

\n *\n * This class is an EventRouter, and instances of it emit events with payloads listed under `EntityEventPayloads`.\n *\n * @example\n * ```typescript\n * const spider = new Entity({\n * name: 'Spider',\n * modelUri: 'models/spider.gltf',\n * rigidBodyOptions: {\n * type: RigidBodyType.DYNAMIC,\n * enabledRotations: { x: false, y: true, z: false },\n * colliders: [\n * {\n * shape: ColliderShape.ROUND_CYLINDER,\n * borderRadius: 0.1,\n * halfHeight: 0.225,\n * radius: 0.5,\n * tag: 'body',\n * }\n * ],\n * },\n * });\n *\n * spider.spawn(world, { x: 20, y: 6, z: 10 });\n * ```\n *\n * **Category:** Entities\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export default class Entity extends " - }, - { - "kind": "Reference", - "text": "RigidBody", - "canonicalReference": "server!RigidBody:class" - }, - { - "kind": "Content", - "text": " implements " - }, - { - "kind": "Reference", - "text": "protocol.Serializable", - "canonicalReference": "@hytopia.com/server-protocol!Serializable:interface" - }, - { - "kind": "Content", - "text": " " - } - ], - "fileUrlPath": "src/worlds/entities/Entity.ts", - "releaseTag": "Public", - "isAbstract": false, - "name": "Entity", - "preserveMemberOrder": false, - "members": [ - { - "kind": "Constructor", - "canonicalReference": "server!Entity:constructor(1)", - "docComment": "/**\n * Creates a new Entity instance.\n *\n * Use for: defining a new entity before spawning it into a world. Do NOT use for: player-controlled avatars (use `PlayerEntity` or `DefaultPlayerEntity`).\n *\n * @remarks\n *\n * Exactly one of `blockTextureUri` or `modelUri` must be provided. If `controller` is provided, `controller.attach(this)` is called during construction (before spawn).\n *\n * @param options - The options for the entity.\n *\n * **Requires:** If `parent` is provided, it must already be spawned.\n *\n * **Side effects:** May attach the provided controller.\n *\n * **Category:** Entities\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "constructor(options: " - }, - { - "kind": "Reference", - "text": "EntityOptions", - "canonicalReference": "server!EntityOptions:type" - }, - { - "kind": "Content", - "text": ");" - } - ], - "releaseTag": "Public", + }, + "isStatic": false, "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "options", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ] + "isAbstract": false }, { "kind": "Property", - "canonicalReference": "server!Entity#availableModelAnimationNames:member", - "docComment": "/**\n * The names of the animations available in the entity's model.\n *\n * **Category:** Entities\n */\n", + "canonicalReference": "server!DefaultPlayerEntityController#swimMaxGravityVelocity:member", + "docComment": "/**\n * The maximum downward velocity that the entity can reach when affected by gravity while swimming.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get availableModelAnimationNames(): " - }, - { - "kind": "Reference", - "text": "Readonly", - "canonicalReference": "!Readonly:type" + "text": "swimMaxGravityVelocity: " }, { "kind": "Content", - "text": "" + "text": "number" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, + "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "availableModelAnimationNames", + "name": "swimMaxGravityVelocity", "propertyTypeTokenRange": { "startIndex": 1, - "endIndex": 3 + "endIndex": 2 }, "isStatic": false, "isProtected": false, @@ -15022,34 +15079,29 @@ }, { "kind": "Property", - "canonicalReference": "server!Entity#availableModelNodeNames:member", - "docComment": "/**\n * The names of the nodes available in the entity's model.\n *\n * **Category:** Entities\n */\n", + "canonicalReference": "server!DefaultPlayerEntityController#swimSlowVelocity:member", + "docComment": "/**\n * The normalized horizontal velocity applied to the entity when it swims slowly (equivalent to walking).\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get availableModelNodeNames(): " - }, - { - "kind": "Reference", - "text": "Readonly", - "canonicalReference": "!Readonly:type" + "text": "swimSlowVelocity: " }, { "kind": "Content", - "text": "" + "text": "number" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, + "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "availableModelNodeNames", + "name": "swimSlowVelocity", "propertyTypeTokenRange": { "startIndex": 1, - "endIndex": 3 + "endIndex": 2 }, "isStatic": false, "isProtected": false, @@ -15057,77 +15109,77 @@ }, { "kind": "Property", - "canonicalReference": "server!Entity#blockHalfExtents:member", - "docComment": "/**\n * The half extents of the block entity's visual size.\n *\n * @remarks\n *\n * Only set for block entities.\n *\n * **Category:** Entities\n */\n", + "canonicalReference": "server!DefaultPlayerEntityController#swimUpwardVelocity:member", + "docComment": "/**\n * The upward velocity applied to the entity when swimming.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get blockHalfExtents(): " - }, - { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "text": "swimUpwardVelocity: " }, { "kind": "Content", - "text": " | undefined" + "text": "number" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, + "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "blockHalfExtents", + "name": "swimUpwardVelocity", "propertyTypeTokenRange": { "startIndex": 1, - "endIndex": 3 + "endIndex": 2 }, "isStatic": false, "isProtected": false, "isAbstract": false }, { - "kind": "Property", - "canonicalReference": "server!Entity#blockTextureUri:member", - "docComment": "/**\n * The texture URI for block entities.\n *\n * @remarks\n *\n * When set, this entity is treated as a block entity.\n *\n * **Category:** Entities\n */\n", + "kind": "Method", + "canonicalReference": "server!DefaultPlayerEntityController#tickWithPlayerInput:member(1)", + "docComment": "/**\n * Ticks the player movement for the entity controller, overriding the default implementation. If the entity to tick is a child entity, only the event will be emitted but the default movement logic will not be applied.\n *\n * @remarks\n *\n * **Rotation (-Z forward):** Sets entity rotation based on camera yaw. A yaw of 0 faces -Z. Movement direction offsets (WASD/joystick) are added to camera yaw to determine facing. Models must be authored with their front facing -Z.\n *\n * **Child entities:** If `entity.parent` is set, only emits the event and returns early. Movement logic is skipped for child entities.\n *\n * **Input cancellation:** If `autoCancelMouseLeftClick` is true (default), `input.ml` is set to `false` after processing to prevent repeated triggers.\n *\n * **Animations:** Automatically manages idle, walk, run, jump, swim, and interact animations based on movement state and input.\n *\n * @param entity - The entity to tick.\n *\n * @param input - The current input state of the player.\n *\n * @param cameraOrientation - The current camera orientation state of the player.\n *\n * @param deltaTimeMs - The delta time in milliseconds since the last tick.\n *\n * **Category:** Controllers\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get blockTextureUri(): " + "text": "tickWithPlayerInput(entity: " + }, + { + "kind": "Reference", + "text": "PlayerEntity", + "canonicalReference": "server!PlayerEntity:class" }, { "kind": "Content", - "text": "string | undefined" + "text": ", input: " + }, + { + "kind": "Reference", + "text": "PlayerInput", + "canonicalReference": "server!PlayerInput:type" }, { "kind": "Content", - "text": ";" - } - ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "blockTextureUri", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false - }, - { - "kind": "Method", - "canonicalReference": "server!Entity#clearModelNodeOverrides:member(1)", - "docComment": "/**\n * Clears all model node overrides from the entity's model.\n *\n * **Category:** Entities\n */\n", - "excerptTokens": [ + "text": ", cameraOrientation: " + }, + { + "kind": "Reference", + "text": "PlayerCameraOrientation", + "canonicalReference": "server!PlayerCameraOrientation:type" + }, { "kind": "Content", - "text": "clearModelNodeOverrides(): " + "text": ", deltaTimeMs: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": "): " }, { "kind": "Content", @@ -15140,47 +15192,75 @@ ], "isStatic": false, "returnTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 + "startIndex": 9, + "endIndex": 10 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, - "parameters": [], + "parameters": [ + { + "parameterName": "entity", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + }, + { + "parameterName": "input", + "parameterTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "isOptional": false + }, + { + "parameterName": "cameraOrientation", + "parameterTypeTokenRange": { + "startIndex": 5, + "endIndex": 6 + }, + "isOptional": false + }, + { + "parameterName": "deltaTimeMs", + "parameterTypeTokenRange": { + "startIndex": 7, + "endIndex": 8 + }, + "isOptional": false + } + ], "isOptional": false, "isAbstract": false, - "name": "clearModelNodeOverrides" + "name": "tickWithPlayerInput" }, { "kind": "Property", - "canonicalReference": "server!Entity#controller:member", - "docComment": "/**\n * The controller for the entity.\n *\n * **Category:** Entities\n */\n", + "canonicalReference": "server!DefaultPlayerEntityController#walkLoopedAnimations:member", + "docComment": "/**\n * The looped animation(s) that will play when the entity is walking.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get controller(): " - }, - { - "kind": "Reference", - "text": "BaseEntityController", - "canonicalReference": "server!BaseEntityController:class" + "text": "walkLoopedAnimations: " }, { "kind": "Content", - "text": " | undefined" + "text": "string[]" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, + "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "controller", + "name": "walkLoopedAnimations", "propertyTypeTokenRange": { "startIndex": 1, - "endIndex": 3 + "endIndex": 2 }, "isStatic": false, "isProtected": false, @@ -15188,12 +15268,12 @@ }, { "kind": "Property", - "canonicalReference": "server!Entity#depth:member", - "docComment": "/**\n * The depth (Z-axis) of the entity's model or block size.\n *\n * **Category:** Entities\n */\n", + "canonicalReference": "server!DefaultPlayerEntityController#walkVelocity:member", + "docComment": "/**\n * The normalized horizontal velocity applied to the entity when it walks.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get depth(): " + "text": "walkVelocity: " }, { "kind": "Content", @@ -15204,10 +15284,10 @@ "text": ";" } ], - "isReadonly": true, + "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "depth", + "name": "walkVelocity", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -15215,737 +15295,577 @@ "isStatic": false, "isProtected": false, "isAbstract": false - }, + } + ], + "extendsTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "implementsTokenRanges": [] + }, + { + "kind": "Interface", + "canonicalReference": "server!DefaultPlayerEntityControllerOptions:interface", + "docComment": "/**\n * Options for creating a DefaultPlayerEntityController instance.\n *\n * Use for: configuring default player movement and animation behavior at construction time. Do NOT use for: per-frame changes; override methods or adjust controller state instead.\n *\n * **Category:** Controllers\n *\n * @public\n */\n", + "excerptTokens": [ { - "kind": "Method", - "canonicalReference": "server!Entity#despawn:member(1)", - "docComment": "/**\n * Despawns the entity and all children from the world.\n *\n * Use for: removing entities from the world. Do NOT use for: temporary hiding; consider visibility or animations instead.\n *\n * @remarks\n *\n * **Cascading:** Recursively despawns all child entities first (depth-first).\n *\n * **Controller:** Calls `controller.detach()` then `controller.despawn()` if attached.\n *\n * **Cleanup:** Automatically unregisters attached audios, despawns attached particle emitters, and unloads attached scene UIs from their respective managers.\n *\n * **Simulation:** Removes from physics simulation.\n *\n * **Side effects:** Emits `EntityEvent.DESPAWN` and unregisters from world managers.\n *\n * **Category:** Entities\n */\n", + "kind": "Content", + "text": "export interface DefaultPlayerEntityControllerOptions " + } + ], + "fileUrlPath": "src/worlds/entities/controllers/DefaultPlayerEntityController.ts", + "releaseTag": "Public", + "name": "DefaultPlayerEntityControllerOptions", + "preserveMemberOrder": false, + "members": [ + { + "kind": "PropertySignature", + "canonicalReference": "server!DefaultPlayerEntityControllerOptions#applyDirectionalMovementRotations:member", + "docComment": "/**\n * Whether to apply directional rotations to the entity while moving, defaults to true.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "despawn(): " + "text": "applyDirectionalMovementRotations?: " }, { "kind": "Content", - "text": "void" + "text": "boolean" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "applyDirectionalMovementRotations", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [], - "isOptional": false, - "isAbstract": false, - "name": "despawn" + } }, { - "kind": "Property", - "canonicalReference": "server!Entity#emissiveColor:member", - "docComment": "/**\n * The emissive color of the entity.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!DefaultPlayerEntityControllerOptions#autoCancelMouseLeftClick:member", + "docComment": "/**\n * Whether to automatically cancel left click input after first processed tick, defaults to true.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get emissiveColor(): " - }, - { - "kind": "Reference", - "text": "RgbColor", - "canonicalReference": "server!RgbColor:interface" + "text": "autoCancelMouseLeftClick?: " }, { "kind": "Content", - "text": " | undefined" + "text": "boolean" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "name": "emissiveColor", + "name": "autoCancelMouseLeftClick", "propertyTypeTokenRange": { "startIndex": 1, - "endIndex": 3 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "endIndex": 2 + } }, { - "kind": "Property", - "canonicalReference": "server!Entity#emissiveIntensity:member", - "docComment": "/**\n * The emissive intensity of the entity.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!DefaultPlayerEntityControllerOptions#canJump:member", + "docComment": "/**\n * A function allowing custom logic to determine if the entity can jump.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get emissiveIntensity(): " + "text": "canJump?: " }, { "kind": "Content", - "text": "number | undefined" + "text": "() => boolean" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "name": "emissiveIntensity", + "name": "canJump", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + } }, { - "kind": "Method", - "canonicalReference": "server!Entity#getModelAnimation:member(1)", - "docComment": "/**\n * Gets or lazily creates a model animation for the entity's model by name.\n *\n * @remarks\n *\n * Model entities only; returns `undefined` for block entities. If the animation does not yet exist, a new instance with default settings is created and added to `modelAnimations`. Use `availableModelAnimationNames` to discover which animation names exist in the model.\n *\n * @param name - The name of the animation to get or create.\n *\n * @returns The model animation instance, or `undefined` for block entities.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!DefaultPlayerEntityControllerOptions#canRun:member", + "docComment": "/**\n * A function allowing custom logic to determine if the entity can run.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "getModelAnimation(name: " - }, - { - "kind": "Content", - "text": "string" - }, - { - "kind": "Content", - "text": "): " - }, - { - "kind": "Reference", - "text": "EntityModelAnimation", - "canonicalReference": "server!EntityModelAnimation:class" + "text": "canRun?: " }, { "kind": "Content", - "text": " | undefined" + "text": "() => boolean" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 5 - }, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "name", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "getModelAnimation" + "name": "canRun", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } }, { - "kind": "Method", - "canonicalReference": "server!Entity#getModelNodeOverride:member(1)", - "docComment": "/**\n * Gets or lazily creates a model node override for the entity's model.\n *\n * @remarks\n *\n * Model entities only; returns `undefined` for block entities. If the override does not yet exist, a new instance with default settings is created and added to `modelNodeOverrides`. Use `availableModelNodeNames` to discover which node names exist in the model.\n *\n * @param nameMatch - The node selector for the model node override to get or create. Case-insensitive exact match by default, with optional edge wildcard (`head*`, `*head`, `*head*`).\n *\n * @returns The model node override instance, or `undefined` for block entities.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!DefaultPlayerEntityControllerOptions#canSwim:member", + "docComment": "/**\n * A function allowing custom logic to determine if the entity can swim.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "getModelNodeOverride(nameMatch: " - }, - { - "kind": "Content", - "text": "string" - }, - { - "kind": "Content", - "text": "): " - }, - { - "kind": "Reference", - "text": "EntityModelNodeOverride", - "canonicalReference": "server!EntityModelNodeOverride:class" + "text": "canSwim?: " }, { "kind": "Content", - "text": " | undefined" + "text": "() => boolean" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 5 - }, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "nameMatch", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "getModelNodeOverride" + "name": "canSwim", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } }, { - "kind": "Property", - "canonicalReference": "server!Entity#height:member", - "docComment": "/**\n * The height (Y-axis) of the entity's model or block size.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!DefaultPlayerEntityControllerOptions#canWalk:member", + "docComment": "/**\n * A function allowing custom logic to determine if the entity can walk.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get height(): " + "text": "canWalk?: " }, { "kind": "Content", - "text": "number" + "text": "() => boolean" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "name": "height", + "name": "canWalk", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + } }, { - "kind": "Property", - "canonicalReference": "server!Entity#id:member", - "docComment": "/**\n * The unique identifier for the entity.\n *\n * @remarks\n *\n * Assigned when the entity is spawned.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!DefaultPlayerEntityControllerOptions#facesCameraWhenIdle:member", + "docComment": "/**\n * Whether the entity rotates to face the camera direction when idle.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get id(): " + "text": "facesCameraWhenIdle?: " }, { "kind": "Content", - "text": "number | undefined" + "text": "boolean" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "name": "id", + "name": "facesCameraWhenIdle", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + } }, { - "kind": "Method", - "canonicalReference": "server!Entity#interact:member(1)", - "docComment": "/**\n * Triggers an interaction on the entity from a player.\n *\n * Use for: programmatic interactions that should mimic a player click/tap. Do NOT use for: server-only effects without player context.\n *\n * @remarks\n *\n * This is automatically called when a player clicks or taps the entity, but can also be called directly for programmatic interactions. Emits `EntityEvent.INTERACT`.\n *\n * @param player - The player interacting with the entity.\n *\n * @param raycastHit - The raycast hit result, if the interaction was triggered by a client-side click/tap.\n *\n * **Requires:** Entity must be spawned.\n *\n * **Side effects:** Emits `EntityEvent.INTERACT`.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!DefaultPlayerEntityControllerOptions#idleLoopedAnimations:member", + "docComment": "/**\n * Overrides the animation(s) that will play when the entity is idle.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "interact(player: " - }, - { - "kind": "Reference", - "text": "Player", - "canonicalReference": "server!Player:class" - }, - { - "kind": "Content", - "text": ", raycastHit?: " - }, - { - "kind": "Reference", - "text": "RaycastHit", - "canonicalReference": "server!RaycastHit:type" - }, - { - "kind": "Content", - "text": "): " + "text": "idleLoopedAnimations?: " }, { "kind": "Content", - "text": "void" + "text": "string[]" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 5, - "endIndex": 6 - }, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "player", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - }, - { - "parameterName": "raycastHit", - "parameterTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "isOptional": true - } - ], - "isOptional": false, - "isAbstract": false, - "name": "interact" + "name": "idleLoopedAnimations", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } }, { - "kind": "Property", - "canonicalReference": "server!Entity#isBlockEntity:member", - "docComment": "/**\n * Whether this entity is a block entity.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!DefaultPlayerEntityControllerOptions#interactOneshotAnimations:member", + "docComment": "/**\n * Overrides the animation(s) that will play when the entity interacts (left click)\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get isBlockEntity(): " + "text": "interactOneshotAnimations?: " }, { "kind": "Content", - "text": "boolean" + "text": "string[]" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "name": "isBlockEntity", + "name": "interactOneshotAnimations", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + } }, { - "kind": "Property", - "canonicalReference": "server!Entity#isEnvironmental:member", - "docComment": "/**\n * Whether the entity is environmental.\n *\n * @remarks\n *\n * Environmental entities are excluded from per-tick controller updates and update emission.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!DefaultPlayerEntityControllerOptions#jumpLandHeavyOneshotAnimations:member", + "docComment": "/**\n * Overrides the animation(s) that will play when the entity lands with a high velocity.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get isEnvironmental(): " + "text": "jumpLandHeavyOneshotAnimations?: " }, { "kind": "Content", - "text": "boolean" + "text": "string[]" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "name": "isEnvironmental", + "name": "jumpLandHeavyOneshotAnimations", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + } }, { - "kind": "Property", - "canonicalReference": "server!Entity#isModelEntity:member", - "docComment": "/**\n * Whether this entity is a model entity.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!DefaultPlayerEntityControllerOptions#jumpLandLightOneshotAnimations:member", + "docComment": "/**\n * Overrides the animation(s) that will play when the entity lands after jumping or being airborne.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get isModelEntity(): " + "text": "jumpLandLightOneshotAnimations?: " }, { "kind": "Content", - "text": "boolean" + "text": "string[]" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "name": "isModelEntity", + "name": "jumpLandLightOneshotAnimations", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + } }, { - "kind": "Property", - "canonicalReference": "server!Entity#isSpawned:member", - "docComment": "/**\n * Whether the entity is spawned in a world.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!DefaultPlayerEntityControllerOptions#jumpOneshotAnimations:member", + "docComment": "/**\n * Overrides the animation(s) that will play when the entity is jumping.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get isSpawned(): " + "text": "jumpOneshotAnimations?: " }, { "kind": "Content", - "text": "boolean" + "text": "string[]" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "name": "isSpawned", + "name": "jumpOneshotAnimations", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + } }, { - "kind": "Property", - "canonicalReference": "server!Entity#modelAnimations:member", - "docComment": "/**\n * The animations of the entity's model that have been accessed or configured.\n *\n * @remarks\n *\n * Animations are lazily created on first access via `getModelAnimation()`. This array only contains animations that have been explicitly used, not every clip in the model.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!DefaultPlayerEntityControllerOptions#jumpVelocity:member", + "docComment": "/**\n * The upward velocity applied to the entity when it jumps.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get modelAnimations(): " - }, - { - "kind": "Reference", - "text": "Readonly", - "canonicalReference": "!Readonly:type" - }, - { - "kind": "Content", - "text": "<" - }, - { - "kind": "Reference", - "text": "EntityModelAnimation", - "canonicalReference": "server!EntityModelAnimation:class" + "text": "jumpVelocity?: " }, { "kind": "Content", - "text": "[]>" + "text": "number" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "name": "modelAnimations", + "name": "jumpVelocity", "propertyTypeTokenRange": { "startIndex": 1, - "endIndex": 5 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "endIndex": 2 + } }, { - "kind": "Property", - "canonicalReference": "server!Entity#modelNodeOverrides:member", - "docComment": "/**\n * The node overrides of the entity's model that have been accessed or configured.\n *\n * @remarks\n *\n * Node overrides are lazily created on first access via `getModelNodeOverride()`. This array only contains overrides that have been explicitly used.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!DefaultPlayerEntityControllerOptions#runLoopedAnimations:member", + "docComment": "/**\n * Overrides the animation(s) that will play when the entity is running.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get modelNodeOverrides(): " - }, - { - "kind": "Reference", - "text": "Readonly", - "canonicalReference": "!Readonly:type" - }, - { - "kind": "Content", - "text": "<" - }, - { - "kind": "Reference", - "text": "EntityModelNodeOverride", - "canonicalReference": "server!EntityModelNodeOverride:class" + "text": "runLoopedAnimations?: " }, { "kind": "Content", - "text": "[]>" + "text": "string[]" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "name": "modelNodeOverrides", + "name": "runLoopedAnimations", "propertyTypeTokenRange": { "startIndex": 1, - "endIndex": 5 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "endIndex": 2 + } }, { - "kind": "Property", - "canonicalReference": "server!Entity#modelPreferredShape:member", - "docComment": "/**\n * The preferred collider shape when auto-generating colliders from the model.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!DefaultPlayerEntityControllerOptions#runVelocity:member", + "docComment": "/**\n * The normalized horizontal velocity applied to the entity when it runs.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get modelPreferredShape(): " - }, - { - "kind": "Reference", - "text": "ColliderShape", - "canonicalReference": "server!ColliderShape:enum" + "text": "runVelocity?: " }, { "kind": "Content", - "text": " | undefined" + "text": "number" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "name": "modelPreferredShape", + "name": "runVelocity", "propertyTypeTokenRange": { "startIndex": 1, - "endIndex": 3 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "endIndex": 2 + } }, { - "kind": "Property", - "canonicalReference": "server!Entity#modelScale:member", - "docComment": "/**\n * The scale of the entity's model.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!DefaultPlayerEntityControllerOptions#sticksToPlatforms:member", + "docComment": "/**\n * Whether the entity sticks to platforms, defaults to true.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get modelScale(): " + "text": "sticksToPlatforms?: " }, { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "kind": "Content", + "text": "boolean" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "name": "modelScale", + "name": "sticksToPlatforms", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + } }, { - "kind": "Property", - "canonicalReference": "server!Entity#modelScaleInterpolationMs:member", - "docComment": "/**\n * The interpolation time in milliseconds applied to model scale changes.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!DefaultPlayerEntityControllerOptions#swimFastVelocity:member", + "docComment": "/**\n * The normalized horizontal velocity applied to the entity when it swims fast (equivalent to running).\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get modelScaleInterpolationMs(): " + "text": "swimFastVelocity?: " }, { "kind": "Content", - "text": "number | undefined" + "text": "number" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "name": "modelScaleInterpolationMs", + "name": "swimFastVelocity", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + } }, { - "kind": "Property", - "canonicalReference": "server!Entity#modelTextureUri:member", - "docComment": "/**\n * The texture URI that overrides the model entity's default texture.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!DefaultPlayerEntityControllerOptions#swimGravity:member", + "docComment": "/**\n * The gravity modifier applied to the entity when swimming.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get modelTextureUri(): " + "text": "swimGravity?: " }, { "kind": "Content", - "text": "string | undefined" + "text": "number" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "name": "modelTextureUri", + "name": "swimGravity", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + } }, { - "kind": "Property", - "canonicalReference": "server!Entity#modelUri:member", - "docComment": "/**\n * The URI or path to the `.gltf` model asset.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!DefaultPlayerEntityControllerOptions#swimIdleLoopedAnimations:member", + "docComment": "/**\n * The looped animation(s) that will play when the entity is not moving while swimming.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get modelUri(): " + "text": "swimIdleLoopedAnimations?: " }, { "kind": "Content", - "text": "string | undefined" + "text": "string[]" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "name": "modelUri", + "name": "swimIdleLoopedAnimations", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + } }, { - "kind": "Property", - "canonicalReference": "server!Entity#name:member", - "docComment": "/**\n * The name of the entity.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!DefaultPlayerEntityControllerOptions#swimLoopedAnimations:member", + "docComment": "/**\n * The looped animation(s) that will play when the entity is swimming in any direction.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get name(): " + "text": "swimLoopedAnimations?: " }, { "kind": "Content", - "text": "string" + "text": "string[]" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "name": "name", + "name": "swimLoopedAnimations", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + } }, { - "kind": "Property", - "canonicalReference": "server!Entity#opacity:member", - "docComment": "/**\n * The opacity of the entity between 0 and 1.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!DefaultPlayerEntityControllerOptions#swimMaxGravityVelocity:member", + "docComment": "/**\n * The maximum downward velocity that the entity can reach when affected by gravity while swimming.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get opacity(): " + "text": "swimMaxGravityVelocity?: " }, { "kind": "Content", @@ -15956,703 +15876,759 @@ "text": ";" } ], - "isReadonly": true, - "isOptional": false, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "name": "opacity", + "name": "swimMaxGravityVelocity", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + } }, { - "kind": "Property", - "canonicalReference": "server!Entity#outline:member", - "docComment": "/**\n * The outline rendering options for the entity.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!DefaultPlayerEntityControllerOptions#swimSlowVelocity:member", + "docComment": "/**\n * The normalized horizontal velocity applied to the entity when it swims slowly (equivalent to walking).\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get outline(): " - }, - { - "kind": "Reference", - "text": "Outline", - "canonicalReference": "server!Outline:interface" + "text": "swimSlowVelocity?: " }, { "kind": "Content", - "text": " | undefined" + "text": "number" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "name": "outline", + "name": "swimSlowVelocity", "propertyTypeTokenRange": { "startIndex": 1, - "endIndex": 3 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "endIndex": 2 + } }, { - "kind": "Property", - "canonicalReference": "server!Entity#parent:member", - "docComment": "/**\n * The parent entity, if attached.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!DefaultPlayerEntityControllerOptions#swimUpwardVelocity:member", + "docComment": "/**\n * The upward velocity applied to the entity when swimming.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get parent(): " - }, - { - "kind": "Reference", - "text": "Entity", - "canonicalReference": "server!Entity:class" + "text": "swimUpwardVelocity?: " }, { "kind": "Content", - "text": " | undefined" + "text": "number" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "name": "parent", + "name": "swimUpwardVelocity", "propertyTypeTokenRange": { "startIndex": 1, - "endIndex": 3 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "endIndex": 2 + } }, { - "kind": "Property", - "canonicalReference": "server!Entity#parentNodeName:member", - "docComment": "/**\n * The parent model node name, if attached.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!DefaultPlayerEntityControllerOptions#walkLoopedAnimations:member", + "docComment": "/**\n * Overrides the animation(s) that will play when the entity is walking.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get parentNodeName(): " + "text": "walkLoopedAnimations?: " }, { "kind": "Content", - "text": "string | undefined" + "text": "string[]" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "name": "parentNodeName", + "name": "walkLoopedAnimations", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + } }, { - "kind": "Property", - "canonicalReference": "server!Entity#positionInterpolationMs:member", - "docComment": "/**\n * The interpolation time in milliseconds applied to position changes.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!DefaultPlayerEntityControllerOptions#walkVelocity:member", + "docComment": "/**\n * The normalized horizontal velocity applied to the entity when it walks.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get positionInterpolationMs(): " + "text": "walkVelocity?: " }, { "kind": "Content", - "text": "number | undefined" + "text": "number" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "name": "positionInterpolationMs", + "name": "walkVelocity", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false - }, - { - "kind": "Method", - "canonicalReference": "server!Entity#removeModelNodeOverride:member(1)", - "docComment": "/**\n * Removes a model node override from the entity's model.\n *\n * @param nameMatch - The name match of the model node override to remove.\n *\n * **Category:** Entities\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "removeModelNodeOverride(nameMatch: " - }, - { - "kind": "Content", - "text": "string" - }, + } + } + ], + "extendsTokenRanges": [] + }, + { + "kind": "TypeAlias", + "canonicalReference": "server!DefaultPlayerEntityOptions:type", + "docComment": "/**\n * Options for creating a DefaultPlayerEntity instance.\n *\n * Use for: customizing the default player avatar (for example cosmetic visibility). Do NOT use for: changing movement behavior; use `DefaultPlayerEntityControllerOptions`.\n *\n * **Category:** Entities\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export type DefaultPlayerEntityOptions = " + }, + { + "kind": "Content", + "text": "{\n cosmeticHiddenSlots?: " + }, + { + "kind": "Reference", + "text": "PlayerCosmeticSlot", + "canonicalReference": "server!PlayerCosmeticSlot:type" + }, + { + "kind": "Content", + "text": "[];\n} & " + }, + { + "kind": "Reference", + "text": "PlayerEntityOptions", + "canonicalReference": "server!PlayerEntityOptions:type" + }, + { + "kind": "Content", + "text": ";" + } + ], + "fileUrlPath": "src/worlds/entities/DefaultPlayerEntity.ts", + "releaseTag": "Public", + "name": "DefaultPlayerEntityOptions", + "typeTokenRange": { + "startIndex": 1, + "endIndex": 5 + } + }, + { + "kind": "Interface", + "canonicalReference": "server!DynamicRigidBodyOptions:interface", + "docComment": "/**\n * The options for a dynamic rigid body, also the default type.\n *\n * Use for: physics-driven bodies affected by forces and collisions. Do NOT use for: kinematic bodies; use the kinematic option types instead.\n *\n * **Category:** Physics\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export interface DynamicRigidBodyOptions extends " + }, + { + "kind": "Reference", + "text": "BaseRigidBodyOptions", + "canonicalReference": "server!BaseRigidBodyOptions:interface" + }, + { + "kind": "Content", + "text": " " + } + ], + "fileUrlPath": "src/worlds/physics/RigidBody.ts", + "releaseTag": "Public", + "name": "DynamicRigidBodyOptions", + "preserveMemberOrder": false, + "members": [ + { + "kind": "PropertySignature", + "canonicalReference": "server!DynamicRigidBodyOptions#additionalMass:member", + "docComment": "/**\n * The additional mass of the rigid body.\n *\n * **Category:** Physics\n */\n", + "excerptTokens": [ { "kind": "Content", - "text": "): " + "text": "additionalMass?: " }, { "kind": "Content", - "text": "void" + "text": "number" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "nameMatch", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "removeModelNodeOverride" + "name": "additionalMass", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } }, { - "kind": "Method", - "canonicalReference": "server!Entity#removeModelNodeOverrides:member(1)", - "docComment": "/**\n * Removes multiple model node overrides from the entity's model.\n *\n * @param nameMatches - The name matches of the model node overrides to remove.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!DynamicRigidBodyOptions#additionalMassProperties:member", + "docComment": "/**\n * The additional mass properties of the rigid body.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "removeModelNodeOverrides(nameMatches: " - }, - { - "kind": "Content", - "text": "string[]" - }, - { - "kind": "Content", - "text": "): " + "text": "additionalMassProperties?: " }, { - "kind": "Content", - "text": "void" + "kind": "Reference", + "text": "RigidBodyAdditionalMassProperties", + "canonicalReference": "server!RigidBodyAdditionalMassProperties:type" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "nameMatches", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "removeModelNodeOverrides" + "name": "additionalMassProperties", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } }, { - "kind": "Property", - "canonicalReference": "server!Entity#rotationInterpolationMs:member", - "docComment": "/**\n * The interpolation time in milliseconds applied to rotation changes.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!DynamicRigidBodyOptions#additionalSolverIterations:member", + "docComment": "/**\n * The additional solver iterations of the rigid body.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get rotationInterpolationMs(): " + "text": "additionalSolverIterations?: " }, { "kind": "Content", - "text": "number | undefined" + "text": "number" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "name": "rotationInterpolationMs", + "name": "additionalSolverIterations", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + } }, { - "kind": "Method", - "canonicalReference": "server!Entity#setBlockTextureUri:member(1)", - "docComment": "", + "kind": "PropertySignature", + "canonicalReference": "server!DynamicRigidBodyOptions#angularDamping:member", + "docComment": "/**\n * The angular damping of the rigid body.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setBlockTextureUri(blockTextureUri: " - }, - { - "kind": "Content", - "text": "string | undefined" - }, - { - "kind": "Content", - "text": "): " + "text": "angularDamping?: " }, { "kind": "Content", - "text": "void" + "text": "number" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "blockTextureUri", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "setBlockTextureUri" + "name": "angularDamping", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } }, { - "kind": "Method", - "canonicalReference": "server!Entity#setEmissiveColor:member(1)", - "docComment": "/**\n * Sets the emissive color of the entity.\n *\n * Use for: glow effects or highlighted states.\n *\n * @param emissiveColor - The emissive color of the entity.\n *\n * **Side effects:** Emits `EntityEvent.SET_EMISSIVE_COLOR` when spawned.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!DynamicRigidBodyOptions#angularVelocity:member", + "docComment": "/**\n * The angular velocity of the rigid body.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setEmissiveColor(emissiveColor: " + "text": "angularVelocity?: " }, { "kind": "Reference", - "text": "RgbColor", - "canonicalReference": "server!RgbColor:interface" + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", - "text": " | undefined" - }, + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "angularVelocity", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!DynamicRigidBodyOptions#ccdEnabled:member", + "docComment": "/**\n * Whether the rigid body has continuous collision detection enabled.\n *\n * **Category:** Physics\n */\n", + "excerptTokens": [ { "kind": "Content", - "text": "): " + "text": "ccdEnabled?: " }, { "kind": "Content", - "text": "void" + "text": "boolean" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 4, - "endIndex": 5 - }, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "emissiveColor", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 3 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "setEmissiveColor" + "name": "ccdEnabled", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } }, { - "kind": "Method", - "canonicalReference": "server!Entity#setEmissiveIntensity:member(1)", - "docComment": "/**\n * Sets the emissive intensity of the entity.\n *\n * @param emissiveIntensity - The emissive intensity of the entity. Use a value over 1 for brighter emissive effects.\n *\n * **Side effects:** Emits `EntityEvent.SET_EMISSIVE_INTENSITY` when spawned.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!DynamicRigidBodyOptions#dominanceGroup:member", + "docComment": "/**\n * The dominance group of the rigid body.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setEmissiveIntensity(emissiveIntensity: " + "text": "dominanceGroup?: " }, { "kind": "Content", - "text": "number | undefined" + "text": "number" }, { "kind": "Content", - "text": "): " - }, + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "dominanceGroup", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!DynamicRigidBodyOptions#enabledPositions:member", + "docComment": "/**\n * The enabled axes of positional movement of the rigid body.\n *\n * **Category:** Physics\n */\n", + "excerptTokens": [ { "kind": "Content", - "text": "void" + "text": "enabledPositions?: " + }, + { + "kind": "Reference", + "text": "Vector3Boolean", + "canonicalReference": "server!Vector3Boolean:interface" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "emissiveIntensity", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "setEmissiveIntensity" + "name": "enabledPositions", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } }, { - "kind": "Method", - "canonicalReference": "server!Entity#setModelScale:member(1)", - "docComment": "/**\n * Sets the scale of the entity's model and proportionally scales its colliders.\n *\n * @remarks\n *\n * Model entities only; no effect for block entities.\n *\n * **Collider scaling is relative:** Colliders are scaled by the ratio of new/old scale, not set to absolute values. Example: scaling from 1 to 2 doubles collider size; scaling from 2 to 4 also doubles it.\n *\n * **Reference equality check:** Uses `===` to compare with current scale, so passing the same object reference will early return even if values changed. Always pass a new object.\n *\n * @param modelScale - The scale of the entity's model. Can be a vector or a number for uniform scaling.\n *\n * **Side effects:** Scales existing colliders and emits `EntityEvent.SET_MODEL_SCALE` when spawned.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!DynamicRigidBodyOptions#enabledRotations:member", + "docComment": "/**\n * The enabled rotations of the rigid body.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setModelScale(modelScale: " + "text": "enabledRotations?: " }, { "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "text": "Vector3Boolean", + "canonicalReference": "server!Vector3Boolean:interface" }, { "kind": "Content", - "text": " | number" - }, + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "enabledRotations", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!DynamicRigidBodyOptions#gravityScale:member", + "docComment": "/**\n * The gravity scale of the rigid body.\n *\n * **Category:** Physics\n */\n", + "excerptTokens": [ { "kind": "Content", - "text": "): " + "text": "gravityScale?: " }, { "kind": "Content", - "text": "void" + "text": "number" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 4, - "endIndex": 5 - }, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "modelScale", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 3 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "setModelScale" + "name": "gravityScale", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } }, { - "kind": "Method", - "canonicalReference": "server!Entity#setModelScaleInterpolationMs:member(1)", - "docComment": "/**\n * Sets the interpolation time in milliseconds applied to model scale changes.\n *\n * @param interpolationMs - The interpolation time in milliseconds to set.\n *\n * **Side effects:** Emits `EntityEvent.SET_MODEL_SCALE_INTERPOLATION_MS` when spawned.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!DynamicRigidBodyOptions#linearDamping:member", + "docComment": "/**\n * The linear damping of the rigid body.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setModelScaleInterpolationMs(interpolationMs: " + "text": "linearDamping?: " }, { "kind": "Content", - "text": "number | undefined" + "text": "number" }, { "kind": "Content", - "text": "): " - }, + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "linearDamping", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!DynamicRigidBodyOptions#linearVelocity:member", + "docComment": "/**\n * The linear velocity of the rigid body.\n *\n * **Category:** Physics\n */\n", + "excerptTokens": [ { "kind": "Content", - "text": "void" + "text": "linearVelocity?: " + }, + { + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "interpolationMs", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "setModelScaleInterpolationMs" + "name": "linearVelocity", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } }, { - "kind": "Method", - "canonicalReference": "server!Entity#setModelTextureUri:member(1)", - "docComment": "/**\n * Sets the texture uri of the entity's model. Setting this overrides the model's default texture.\n *\n * @remarks\n *\n * Model entities only; no effect for block entities.\n *\n * @param modelTextureUri - The texture uri of the entity's model.\n *\n * **Side effects:** Emits `EntityEvent.SET_MODEL_TEXTURE_URI` when spawned.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!DynamicRigidBodyOptions#sleeping:member", + "docComment": "/**\n * Whether the rigid body is sleeping.\n *\n * **Category:** Physics\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setModelTextureUri(modelTextureUri: " + "text": "sleeping?: " }, { "kind": "Content", - "text": "string | undefined" + "text": "boolean" }, { "kind": "Content", - "text": "): " + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "sleeping", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!DynamicRigidBodyOptions#softCcdPrediction:member", + "docComment": "/**\n * The soft continuous collision detection prediction of the rigid body.\n *\n * **Category:** Physics\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "softCcdPrediction?: " }, { "kind": "Content", - "text": "void" + "text": "number" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "modelTextureUri", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "setModelTextureUri" + "name": "softCcdPrediction", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } }, { - "kind": "Method", - "canonicalReference": "server!Entity#setOpacity:member(1)", - "docComment": "/**\n * Sets the opacity of the entity.\n *\n * @param opacity - The opacity of the entity between 0 and 1. 0 is fully transparent, 1 is fully opaque.\n *\n * **Side effects:** Emits `EntityEvent.SET_OPACITY` when spawned.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!DynamicRigidBodyOptions#type:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "setOpacity(opacity: " + "text": "type: " }, { - "kind": "Content", - "text": "number" + "kind": "Reference", + "text": "RigidBodyType.DYNAMIC", + "canonicalReference": "server!RigidBodyType.DYNAMIC:member" }, { "kind": "Content", - "text": "): " - }, + "text": ";" + } + ], + "isReadonly": false, + "isOptional": false, + "releaseTag": "Public", + "name": "type", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + } + ], + "extendsTokenRanges": [ + { + "startIndex": 1, + "endIndex": 2 + } + ] + }, + { + "kind": "Class", + "canonicalReference": "server!Entity:class", + "docComment": "/**\n * Represents a dynamic or static object in a world.\n *\n * When to use: any non-player object that needs physics, visuals, or interactions. Do NOT use for: player-controlled avatars (use `PlayerEntity` / `DefaultPlayerEntity`). Do NOT use for: voxel blocks (use block APIs on `ChunkLattice`).\n *\n * @remarks\n *\n * Entities are created from a block texture or a `.gltf` model and can have rigid bodies, colliders, animations, and controllers.\n *\n *

Coordinate System

\n *\n * HYTOPIA uses a right-handed coordinate system where: - **+X** is right - **+Y** is up - **-Z** is forward (identity orientation)\n *\n * Models should be authored with their front/forward facing the **-Z axis**. When an entity has identity rotation (0,0,0,1 quaternion or yaw=0), it faces -Z.\n *\n *

Events

\n *\n * This class is an EventRouter, and instances of it emit events with payloads listed under `EntityEventPayloads`.\n *\n * @example\n * ```typescript\n * const spider = new Entity({\n * name: 'Spider',\n * modelUri: 'models/spider.gltf',\n * rigidBodyOptions: {\n * type: RigidBodyType.DYNAMIC,\n * enabledRotations: { x: false, y: true, z: false },\n * colliders: [\n * {\n * shape: ColliderShape.ROUND_CYLINDER,\n * borderRadius: 0.1,\n * halfHeight: 0.225,\n * radius: 0.5,\n * tag: 'body',\n * }\n * ],\n * },\n * });\n *\n * spider.spawn(world, { x: 20, y: 6, z: 10 });\n * ```\n *\n * **Category:** Entities\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export default class Entity extends " + }, + { + "kind": "Reference", + "text": "RigidBody", + "canonicalReference": "server!RigidBody:class" + }, + { + "kind": "Content", + "text": " implements " + }, + { + "kind": "Reference", + "text": "protocol.Serializable", + "canonicalReference": "@hytopia.com/server-protocol!Serializable:interface" + }, + { + "kind": "Content", + "text": " " + } + ], + "fileUrlPath": "src/worlds/entities/Entity.ts", + "releaseTag": "Public", + "isAbstract": false, + "name": "Entity", + "preserveMemberOrder": false, + "members": [ + { + "kind": "Constructor", + "canonicalReference": "server!Entity:constructor(1)", + "docComment": "/**\n * Creates a new Entity instance.\n *\n * Use for: defining a new entity before spawning it into a world. Do NOT use for: player-controlled avatars (use `PlayerEntity` or `DefaultPlayerEntity`).\n *\n * @remarks\n *\n * Exactly one of `blockTextureUri` or `modelUri` must be provided. If `controller` is provided, `controller.attach(this)` is called during construction (before spawn).\n *\n * @param options - The options for the entity.\n *\n * **Requires:** If `parent` is provided, it must already be spawned.\n *\n * **Side effects:** May attach the provided controller.\n *\n * **Category:** Entities\n */\n", + "excerptTokens": [ { "kind": "Content", - "text": "void" + "text": "constructor(options: " + }, + { + "kind": "Reference", + "text": "EntityOptions", + "canonicalReference": "server!EntityOptions:type" }, { "kind": "Content", - "text": ";" + "text": ");" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, "parameters": [ { - "parameterName": "opacity", + "parameterName": "options", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, "isOptional": false } - ], - "isOptional": false, - "isAbstract": false, - "name": "setOpacity" + ] }, { - "kind": "Method", - "canonicalReference": "server!Entity#setOutline:member(1)", - "docComment": "/**\n * Sets the outline rendering options for the entity.\n *\n * @param outline - The outline options, or undefined to remove the outline.\n *\n * @param forPlayer - The player to set the outline for, if undefined the outline will be set for all players.\n *\n * **Side effects:** Emits `EntityEvent.SET_OUTLINE` when spawned.\n *\n * **Category:** Entities\n */\n", + "kind": "Property", + "canonicalReference": "server!Entity#availableModelAnimationNames:member", + "docComment": "/**\n * The names of the animations available in the entity's model.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setOutline(outline: " + "text": "get availableModelAnimationNames(): " }, { "kind": "Reference", - "text": "Outline", - "canonicalReference": "server!Outline:interface" + "text": "Readonly", + "canonicalReference": "!Readonly:type" }, { "kind": "Content", - "text": " | undefined" + "text": "" }, { "kind": "Content", - "text": ", forPlayer?: " - }, + "text": ";" + } + ], + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "availableModelAnimationNames", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 3 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false + }, + { + "kind": "Property", + "canonicalReference": "server!Entity#availableModelNodeNames:member", + "docComment": "/**\n * The names of the nodes available in the entity's model.\n *\n * **Category:** Entities\n */\n", + "excerptTokens": [ { - "kind": "Reference", - "text": "Player", - "canonicalReference": "server!Player:class" + "kind": "Content", + "text": "get availableModelNodeNames(): " }, { - "kind": "Content", - "text": "): " + "kind": "Reference", + "text": "Readonly", + "canonicalReference": "!Readonly:type" }, { "kind": "Content", - "text": "void" + "text": "" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 6, - "endIndex": 7 - }, + "isReadonly": true, + "isOptional": false, "releaseTag": "Public", + "name": "availableModelNodeNames", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 3 + }, + "isStatic": false, "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "outline", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 3 - }, - "isOptional": false - }, - { - "parameterName": "forPlayer", - "parameterTypeTokenRange": { - "startIndex": 4, - "endIndex": 5 - }, - "isOptional": true - } - ], - "isOptional": false, - "isAbstract": false, - "name": "setOutline" + "isAbstract": false }, { - "kind": "Method", - "canonicalReference": "server!Entity#setParent:member(1)", - "docComment": "/**\n * Sets the parent of the entity and resets this entity's position and rotation.\n *\n * @remarks\n *\n * When setting the parent, all forces, torques and velocities of this entity are reset. Additionally, this entity's type will be set to `KINEMATIC_VELOCITY` if it is not already. All colliders of this entity will be disabled when parent is not undefined. If the provided parent is undefined, this entity will be removed from its parent and all colliders will be re-enabled. When setting an undefined parent to remove this entity from its parent, this entity's type will be set to the last type it was set to before being a child.\n *\n * @param parent - The parent entity to set, or undefined to remove from an existing parent.\n *\n * @param parentNodeName - The name of the parent's node (if parent is a model entity) this entity will attach to.\n *\n * @param position - The position to set for the entity. If parent is provided, this is relative to the parent's attachment point.\n *\n * @param rotation - The rotation to set for the entity. If parent is provided, this is relative to the parent's rotation.\n *\n * **Requires:** If `parent` is provided, it must be spawned.\n *\n * **Side effects:** Disables/enables colliders, changes rigid body type, and emits `EntityEvent.SET_PARENT`.\n *\n * **Category:** Entities\n */\n", + "kind": "Property", + "canonicalReference": "server!Entity#blockHalfExtents:member", + "docComment": "/**\n * The half extents of the block entity's visual size.\n *\n * @remarks\n *\n * Only set for block entities.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setParent(parent: " + "text": "get blockHalfExtents(): " }, { "kind": "Reference", - "text": "Entity", - "canonicalReference": "server!Entity:class" + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", @@ -16660,33 +16636,59 @@ }, { "kind": "Content", - "text": ", parentNodeName?: " - }, + "text": ";" + } + ], + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "blockHalfExtents", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 3 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false + }, + { + "kind": "Property", + "canonicalReference": "server!Entity#blockTextureUri:member", + "docComment": "/**\n * The texture URI for block entities.\n *\n * @remarks\n *\n * When set, this entity is treated as a block entity.\n *\n * **Category:** Entities\n */\n", + "excerptTokens": [ { "kind": "Content", - "text": "string" + "text": "get blockTextureUri(): " }, { "kind": "Content", - "text": ", position?: " - }, - { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "text": "string | undefined" }, { "kind": "Content", - "text": ", rotation?: " - }, - { - "kind": "Reference", - "text": "QuaternionLike", - "canonicalReference": "server!QuaternionLike:interface" - }, + "text": ";" + } + ], + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "blockTextureUri", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false + }, + { + "kind": "Method", + "canonicalReference": "server!Entity#clearModelNodeOverrides:member(1)", + "docComment": "/**\n * Clears all model node overrides from the entity's model.\n *\n * **Category:** Entities\n */\n", + "excerptTokens": [ { "kind": "Content", - "text": "): " + "text": "clearModelNodeOverrides(): " }, { "kind": "Content", @@ -16699,66 +16701,90 @@ ], "isStatic": false, "returnTypeTokenRange": { - "startIndex": 10, - "endIndex": 11 + "startIndex": 1, + "endIndex": 2 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, - "parameters": [ + "parameters": [], + "isOptional": false, + "isAbstract": false, + "name": "clearModelNodeOverrides" + }, + { + "kind": "Property", + "canonicalReference": "server!Entity#controller:member", + "docComment": "/**\n * The controller for the entity.\n *\n * **Category:** Entities\n */\n", + "excerptTokens": [ { - "parameterName": "parent", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 3 - }, - "isOptional": false + "kind": "Content", + "text": "get controller(): " }, { - "parameterName": "parentNodeName", - "parameterTypeTokenRange": { - "startIndex": 4, - "endIndex": 5 - }, - "isOptional": true + "kind": "Reference", + "text": "BaseEntityController", + "canonicalReference": "server!BaseEntityController:class" }, { - "parameterName": "position", - "parameterTypeTokenRange": { - "startIndex": 6, - "endIndex": 7 - }, - "isOptional": true + "kind": "Content", + "text": " | undefined" }, { - "parameterName": "rotation", - "parameterTypeTokenRange": { - "startIndex": 8, - "endIndex": 9 - }, - "isOptional": true + "kind": "Content", + "text": ";" } ], + "isReadonly": true, "isOptional": false, - "isAbstract": false, - "name": "setParent" + "releaseTag": "Public", + "name": "controller", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 3 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "Method", - "canonicalReference": "server!Entity#setPositionInterpolationMs:member(1)", - "docComment": "/**\n * Sets the interpolation time in milliseconds applied to position changes.\n *\n * @param interpolationMs - The interpolation time in milliseconds to set.\n *\n * **Side effects:** Emits `EntityEvent.SET_POSITION_INTERPOLATION_MS` when spawned.\n *\n * **Category:** Entities\n */\n", + "kind": "Property", + "canonicalReference": "server!Entity#depth:member", + "docComment": "/**\n * The depth (Z-axis) of the entity's model or block size.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setPositionInterpolationMs(interpolationMs: " + "text": "get depth(): " }, { "kind": "Content", - "text": "number | undefined" + "text": "number" }, { "kind": "Content", - "text": "): " + "text": ";" + } + ], + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "depth", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false + }, + { + "kind": "Method", + "canonicalReference": "server!Entity#despawn:member(1)", + "docComment": "/**\n * Despawns the entity and all children from the world.\n *\n * Use for: removing entities from the world. Do NOT use for: temporary hiding; consider visibility or animations instead.\n *\n * @remarks\n *\n * **Cascading:** Recursively despawns all child entities first (depth-first).\n *\n * **Controller:** Calls `controller.detach()` then `controller.despawn()` if attached.\n *\n * **Cleanup:** Automatically unregisters attached audios, despawns attached particle emitters, and unloads attached scene UIs from their respective managers.\n *\n * **Simulation:** Removes from physics simulation.\n *\n * **Side effects:** Emits `EntityEvent.DESPAWN` and unregisters from world managers.\n *\n * **Category:** Entities\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "despawn(): " }, { "kind": "Content", @@ -16771,46 +16797,107 @@ ], "isStatic": false, "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 + "startIndex": 1, + "endIndex": 2 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, - "parameters": [ + "parameters": [], + "isOptional": false, + "isAbstract": false, + "name": "despawn" + }, + { + "kind": "Property", + "canonicalReference": "server!Entity#emissiveColor:member", + "docComment": "/**\n * The emissive color of the entity.\n *\n * **Category:** Entities\n */\n", + "excerptTokens": [ { - "parameterName": "interpolationMs", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false + "kind": "Content", + "text": "get emissiveColor(): " + }, + { + "kind": "Reference", + "text": "RgbColor", + "canonicalReference": "server!RgbColor:interface" + }, + { + "kind": "Content", + "text": " | undefined" + }, + { + "kind": "Content", + "text": ";" } ], + "isReadonly": true, "isOptional": false, - "isAbstract": false, - "name": "setPositionInterpolationMs" + "releaseTag": "Public", + "name": "emissiveColor", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 3 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "Method", - "canonicalReference": "server!Entity#setRotationInterpolationMs:member(1)", - "docComment": "/**\n * Sets the interpolation time in milliseconds applied to rotation changes.\n *\n * @param interpolationMs - The interpolation time in milliseconds to set.\n *\n * **Side effects:** Emits `EntityEvent.SET_ROTATION_INTERPOLATION_MS` when spawned.\n *\n * **Category:** Entities\n */\n", + "kind": "Property", + "canonicalReference": "server!Entity#emissiveIntensity:member", + "docComment": "/**\n * The emissive intensity of the entity.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setRotationInterpolationMs(interpolationMs: " + "text": "get emissiveIntensity(): " }, { "kind": "Content", "text": "number | undefined" }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "emissiveIntensity", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false + }, + { + "kind": "Method", + "canonicalReference": "server!Entity#getModelAnimation:member(1)", + "docComment": "/**\n * Gets or lazily creates a model animation for the entity's model by name.\n *\n * @remarks\n *\n * Model entities only; returns `undefined` for block entities. If the animation does not yet exist, a new instance with default settings is created and added to `modelAnimations`. Use `availableModelAnimationNames` to discover which animation names exist in the model.\n *\n * @param name - The name of the animation to get or create.\n *\n * @returns The model animation instance, or `undefined` for block entities.\n *\n * **Category:** Entities\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "getModelAnimation(name: " + }, + { + "kind": "Content", + "text": "string" + }, { "kind": "Content", "text": "): " }, + { + "kind": "Reference", + "text": "EntityModelAnimation", + "canonicalReference": "server!EntityModelAnimation:class" + }, { "kind": "Content", - "text": "void" + "text": " | undefined" }, { "kind": "Content", @@ -16820,14 +16907,14 @@ "isStatic": false, "returnTypeTokenRange": { "startIndex": 3, - "endIndex": 4 + "endIndex": 5 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, "parameters": [ { - "parameterName": "interpolationMs", + "parameterName": "name", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -16837,33 +16924,33 @@ ], "isOptional": false, "isAbstract": false, - "name": "setRotationInterpolationMs" + "name": "getModelAnimation" }, { "kind": "Method", - "canonicalReference": "server!Entity#setTintColor:member(1)", - "docComment": "/**\n * Sets the tint color of the entity.\n *\n * @param tintColor - The tint color of the entity.\n *\n * **Side effects:** Emits `EntityEvent.SET_TINT_COLOR` when spawned.\n *\n * **Category:** Entities\n */\n", + "canonicalReference": "server!Entity#getModelNodeOverride:member(1)", + "docComment": "/**\n * Gets or lazily creates a model node override for the entity's model.\n *\n * @remarks\n *\n * Model entities only; returns `undefined` for block entities. If the override does not yet exist, a new instance with default settings is created and added to `modelNodeOverrides`. Use `availableModelNodeNames` to discover which node names exist in the model.\n *\n * @param nameMatch - The node selector for the model node override to get or create. Case-insensitive exact match by default, with optional edge wildcard (`head*`, `*head`, `*head*`).\n *\n * @returns The model node override instance, or `undefined` for block entities.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setTintColor(tintColor: " - }, - { - "kind": "Reference", - "text": "RgbColor", - "canonicalReference": "server!RgbColor:interface" + "text": "getModelNodeOverride(nameMatch: " }, { "kind": "Content", - "text": " | undefined" + "text": "string" }, { "kind": "Content", "text": "): " }, + { + "kind": "Reference", + "text": "EntityModelNodeOverride", + "canonicalReference": "server!EntityModelNodeOverride:class" + }, { "kind": "Content", - "text": "void" + "text": " | undefined" }, { "kind": "Content", @@ -16872,7 +16959,7 @@ ], "isStatic": false, "returnTypeTokenRange": { - "startIndex": 4, + "startIndex": 3, "endIndex": 5 }, "releaseTag": "Public", @@ -16880,131 +16967,100 @@ "overloadIndex": 1, "parameters": [ { - "parameterName": "tintColor", + "parameterName": "nameMatch", "parameterTypeTokenRange": { "startIndex": 1, - "endIndex": 3 + "endIndex": 2 }, "isOptional": false } ], "isOptional": false, "isAbstract": false, - "name": "setTintColor" + "name": "getModelNodeOverride" }, { - "kind": "Method", - "canonicalReference": "server!Entity#spawn:member(1)", - "docComment": "/**\n * Spawns the entity in the world.\n *\n * Use for: placing the entity into a world so it simulates and syncs to clients. Do NOT use for: reusing a single entity instance across multiple worlds.\n *\n * @remarks\n *\n * **Rotation default:** If no rotation is provided, entity spawns with identity rotation facing -Z. For Y-axis rotation (yaw): `{ x: 0, y: sin(yaw/2), z: 0, w: cos(yaw/2) }`. Yaw 0 = facing -Z.\n *\n * **Auto-collider creation:** If no colliders are provided, a default collider is auto-generated from the model bounds (or block half extents). Set `modelPreferredShape` to `ColliderShape.NONE` to disable.\n *\n * **Collision groups:** Colliders with default collision groups are auto-assigned based on `isEnvironmental` and `isSensor` flags. Environmental entities don't collide with blocks or other environmental entities.\n *\n * **Event enabling:** Collision/contact force events are auto-enabled on colliders if listeners are registered for `BLOCK_COLLISION`, `ENTITY_COLLISION`, `BLOCK_CONTACT_FORCE`, or `ENTITY_CONTACT_FORCE` prior to spawning.\n *\n * **Controller:** If a controller is attached, `controller.spawn()` is called after the entity is added to the physics simulation.\n *\n * **Parent handling:** If `parent` was set in options, `setParent()` is called after spawn with the provided position/rotation.\n *\n * @param world - The world to spawn the entity in.\n *\n * @param position - The position to spawn the entity at.\n *\n * @param rotation - The optional rotation to spawn the entity with.\n *\n * **Requires:** Entity must not already be spawned.\n *\n * **Side effects:** Registers the entity, adds it to the simulation, and emits `EntityEvent.SPAWN`.\n *\n * **Category:** Entities\n */\n", + "kind": "Property", + "canonicalReference": "server!Entity#height:member", + "docComment": "/**\n * The height (Y-axis) of the entity's model or block size.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "spawn(world: " - }, - { - "kind": "Reference", - "text": "World", - "canonicalReference": "server!World:class" + "text": "get height(): " }, { "kind": "Content", - "text": ", position: " - }, - { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" - }, - { - "kind": "Content", - "text": ", rotation?: " - }, - { - "kind": "Reference", - "text": "QuaternionLike", - "canonicalReference": "server!QuaternionLike:interface" - }, - { - "kind": "Content", - "text": "): " - }, - { - "kind": "Content", - "text": "void" + "text": "number" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 7, - "endIndex": 8 - }, + "isReadonly": true, + "isOptional": false, "releaseTag": "Public", + "name": "height", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, "isProtected": false, - "overloadIndex": 1, - "parameters": [ + "isAbstract": false + }, + { + "kind": "Property", + "canonicalReference": "server!Entity#id:member", + "docComment": "/**\n * The unique identifier for the entity.\n *\n * @remarks\n *\n * Assigned when the entity is spawned.\n *\n * **Category:** Entities\n */\n", + "excerptTokens": [ { - "parameterName": "world", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false + "kind": "Content", + "text": "get id(): " }, { - "parameterName": "position", - "parameterTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "isOptional": false + "kind": "Content", + "text": "number | undefined" }, { - "parameterName": "rotation", - "parameterTypeTokenRange": { - "startIndex": 5, - "endIndex": 6 - }, - "isOptional": true + "kind": "Content", + "text": ";" } ], + "isReadonly": true, "isOptional": false, - "isAbstract": false, - "name": "spawn" + "releaseTag": "Public", + "name": "id", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { "kind": "Method", - "canonicalReference": "server!Entity#stopAllModelAnimations:member(1)", - "docComment": "/**\n * Stops all model animations for the entity, optionally excluding the provided animations from stopping.\n *\n * @param exclusionFilter - The filter to determine if a model animation should be excluded from being stopped.\n *\n * **Side effects:** May emit `EntityModelAnimationEvent.STOP` for each stopped animation.\n *\n * **Category:** Entities\n */\n", + "canonicalReference": "server!Entity#interact:member(1)", + "docComment": "/**\n * Triggers an interaction on the entity from a player.\n *\n * Use for: programmatic interactions that should mimic a player click/tap. Do NOT use for: server-only effects without player context.\n *\n * @remarks\n *\n * This is automatically called when a player clicks or taps the entity, but can also be called directly for programmatic interactions. Emits `EntityEvent.INTERACT`.\n *\n * @param player - The player interacting with the entity.\n *\n * @param raycastHit - The raycast hit result, if the interaction was triggered by a client-side click/tap.\n *\n * **Requires:** Entity must be spawned.\n *\n * **Side effects:** Emits `EntityEvent.INTERACT`.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "stopAllModelAnimations(exclusionFilter?: " - }, - { - "kind": "Content", - "text": "(modelAnimation: " + "text": "interact(player: " }, { "kind": "Reference", - "text": "Readonly", - "canonicalReference": "!Readonly:type" + "text": "Player", + "canonicalReference": "server!Player:class" }, { "kind": "Content", - "text": "<" + "text": ", raycastHit?: " }, { "kind": "Reference", - "text": "EntityModelAnimation", - "canonicalReference": "server!EntityModelAnimation:class" - }, - { - "kind": "Content", - "text": ">) => boolean" + "text": "RaycastHit", + "canonicalReference": "server!RaycastHit:type" }, { "kind": "Content", @@ -17021,86 +17077,76 @@ ], "isStatic": false, "returnTypeTokenRange": { - "startIndex": 7, - "endIndex": 8 + "startIndex": 5, + "endIndex": 6 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, "parameters": [ { - "parameterName": "exclusionFilter", + "parameterName": "player", "parameterTypeTokenRange": { "startIndex": 1, - "endIndex": 6 + "endIndex": 2 + }, + "isOptional": false + }, + { + "parameterName": "raycastHit", + "parameterTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 }, "isOptional": true } ], "isOptional": false, "isAbstract": false, - "name": "stopAllModelAnimations" + "name": "interact" }, { - "kind": "Method", - "canonicalReference": "server!Entity#stopModelAnimations:member(1)", - "docComment": "/**\n * Stops the provided model animations for the entity.\n *\n * @param modelAnimationNames - The model animation names to stop.\n *\n * **Side effects:** May emit `EntityModelAnimationEvent.STOP` for each stopped animation.\n *\n * **Category:** Entities\n */\n", + "kind": "Property", + "canonicalReference": "server!Entity#isBlockEntity:member", + "docComment": "/**\n * Whether this entity is a block entity.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "stopModelAnimations(modelAnimationNames: " - }, - { - "kind": "Content", - "text": "readonly string[]" - }, - { - "kind": "Content", - "text": "): " + "text": "get isBlockEntity(): " }, { "kind": "Content", - "text": "void" + "text": "boolean" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, + "isReadonly": true, + "isOptional": false, "releaseTag": "Public", + "name": "isBlockEntity", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "modelAnimationNames", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "stopModelAnimations" + "isAbstract": false }, { "kind": "Property", - "canonicalReference": "server!Entity#tag:member", - "docComment": "/**\n * An arbitrary identifier tag for your own logic.\n *\n * **Category:** Entities\n */\n", + "canonicalReference": "server!Entity#isEnvironmental:member", + "docComment": "/**\n * Whether the entity is environmental.\n *\n * @remarks\n *\n * Environmental entities are excluded from per-tick controller updates and update emission.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get tag(): " + "text": "get isEnvironmental(): " }, { "kind": "Content", - "text": "string | undefined" + "text": "boolean" }, { "kind": "Content", @@ -17110,7 +17156,7 @@ "isReadonly": true, "isOptional": false, "releaseTag": "Public", - "name": "tag", + "name": "isEnvironmental", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -17121,21 +17167,16 @@ }, { "kind": "Property", - "canonicalReference": "server!Entity#tintColor:member", - "docComment": "/**\n * The tint color of the entity.\n *\n * **Category:** Entities\n */\n", + "canonicalReference": "server!Entity#isModelEntity:member", + "docComment": "/**\n * Whether this entity is a model entity.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get tintColor(): " - }, - { - "kind": "Reference", - "text": "RgbColor", - "canonicalReference": "server!RgbColor:interface" + "text": "get isModelEntity(): " }, { "kind": "Content", - "text": " | undefined" + "text": "boolean" }, { "kind": "Content", @@ -17145,10 +17186,10 @@ "isReadonly": true, "isOptional": false, "releaseTag": "Public", - "name": "tintColor", + "name": "isModelEntity", "propertyTypeTokenRange": { "startIndex": 1, - "endIndex": 3 + "endIndex": 2 }, "isStatic": false, "isProtected": false, @@ -17156,16 +17197,16 @@ }, { "kind": "Property", - "canonicalReference": "server!Entity#width:member", - "docComment": "/**\n * The width (X-axis) of the entity's model or block size.\n *\n * **Category:** Entities\n */\n", + "canonicalReference": "server!Entity#isSpawned:member", + "docComment": "/**\n * Whether the entity is spawned in a world.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get width(): " + "text": "get isSpawned(): " }, { "kind": "Content", - "text": "number" + "text": "boolean" }, { "kind": "Content", @@ -17175,7 +17216,7 @@ "isReadonly": true, "isOptional": false, "releaseTag": "Public", - "name": "width", + "name": "isSpawned", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -17186,21 +17227,30 @@ }, { "kind": "Property", - "canonicalReference": "server!Entity#world:member", - "docComment": "/**\n * The world the entity is in, if spawned.\n *\n * **Category:** Entities\n */\n", + "canonicalReference": "server!Entity#modelAnimations:member", + "docComment": "/**\n * The animations of the entity's model that have been accessed or configured.\n *\n * @remarks\n *\n * Animations are lazily created on first access via `getModelAnimation()`. This array only contains animations that have been explicitly used, not every clip in the model.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get world(): " + "text": "get modelAnimations(): " }, { "kind": "Reference", - "text": "World", - "canonicalReference": "server!World:class" + "text": "Readonly", + "canonicalReference": "!Readonly:type" }, { "kind": "Content", - "text": " | undefined" + "text": "<" + }, + { + "kind": "Reference", + "text": "EntityModelAnimation", + "canonicalReference": "server!EntityModelAnimation:class" + }, + { + "kind": "Content", + "text": "[]>" }, { "kind": "Content", @@ -17210,851 +17260,898 @@ "isReadonly": true, "isOptional": false, "releaseTag": "Public", - "name": "world", + "name": "modelAnimations", "propertyTypeTokenRange": { "startIndex": 1, - "endIndex": 3 + "endIndex": 5 }, "isStatic": false, "isProtected": false, "isAbstract": false - } - ], - "extendsTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "implementsTokenRanges": [ - { - "startIndex": 3, - "endIndex": 4 - } - ] - }, - { - "kind": "Enum", - "canonicalReference": "server!EntityEvent:enum", - "docComment": "/**\n * Event types an Entity instance can emit.\n *\n * See `EntityEventPayloads` for the payloads.\n *\n * **Category:** Events\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export declare enum EntityEvent " - } - ], - "fileUrlPath": "src/worlds/entities/Entity.ts", - "releaseTag": "Public", - "name": "EntityEvent", - "preserveMemberOrder": false, - "members": [ + }, { - "kind": "EnumMember", - "canonicalReference": "server!EntityEvent.BLOCK_COLLISION:member", - "docComment": "", + "kind": "Property", + "canonicalReference": "server!Entity#modelNodeOverrides:member", + "docComment": "/**\n * The node overrides of the entity's model that have been accessed or configured.\n *\n * @remarks\n *\n * Node overrides are lazily created on first access via `getModelNodeOverride()`. This array only contains overrides that have been explicitly used.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "BLOCK_COLLISION = " + "text": "get modelNodeOverrides(): " + }, + { + "kind": "Reference", + "text": "Readonly", + "canonicalReference": "!Readonly:type" }, { "kind": "Content", - "text": "\"ENTITY.BLOCK_COLLISION\"" - } - ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "releaseTag": "Public", - "name": "BLOCK_COLLISION" - }, - { - "kind": "EnumMember", - "canonicalReference": "server!EntityEvent.BLOCK_CONTACT_FORCE:member", - "docComment": "", - "excerptTokens": [ + "text": "<" + }, + { + "kind": "Reference", + "text": "EntityModelNodeOverride", + "canonicalReference": "server!EntityModelNodeOverride:class" + }, { "kind": "Content", - "text": "BLOCK_CONTACT_FORCE = " + "text": "[]>" }, { "kind": "Content", - "text": "\"ENTITY.BLOCK_CONTACT_FORCE\"" + "text": ";" } ], - "initializerTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "modelNodeOverrides", + "propertyTypeTokenRange": { "startIndex": 1, - "endIndex": 2 + "endIndex": 5 }, - "releaseTag": "Public", - "name": "BLOCK_CONTACT_FORCE" + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "EnumMember", - "canonicalReference": "server!EntityEvent.DESPAWN:member", - "docComment": "", + "kind": "Property", + "canonicalReference": "server!Entity#modelPreferredShape:member", + "docComment": "/**\n * The preferred collider shape when auto-generating colliders from the model.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "DESPAWN = " + "text": "get modelPreferredShape(): " + }, + { + "kind": "Reference", + "text": "ColliderShape", + "canonicalReference": "server!ColliderShape:enum" }, { "kind": "Content", - "text": "\"ENTITY.DESPAWN\"" + "text": " | undefined" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "modelPreferredShape", + "propertyTypeTokenRange": { "startIndex": 1, - "endIndex": 2 + "endIndex": 3 }, - "releaseTag": "Public", - "name": "DESPAWN" + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "EnumMember", - "canonicalReference": "server!EntityEvent.ENTITY_COLLISION:member", - "docComment": "", + "kind": "Property", + "canonicalReference": "server!Entity#modelScale:member", + "docComment": "/**\n * The scale of the entity's model.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "ENTITY_COLLISION = " + "text": "get modelScale(): " + }, + { + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", - "text": "\"ENTITY.ENTITY_COLLISION\"" + "text": ";" } ], - "initializerTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "modelScale", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "releaseTag": "Public", - "name": "ENTITY_COLLISION" + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "EnumMember", - "canonicalReference": "server!EntityEvent.ENTITY_CONTACT_FORCE:member", - "docComment": "", + "kind": "Property", + "canonicalReference": "server!Entity#modelScaleInterpolationMs:member", + "docComment": "/**\n * The interpolation time in milliseconds applied to model scale changes.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "ENTITY_CONTACT_FORCE = " + "text": "get modelScaleInterpolationMs(): " }, { "kind": "Content", - "text": "\"ENTITY.ENTITY_CONTACT_FORCE\"" + "text": "number | undefined" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "modelScaleInterpolationMs", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "releaseTag": "Public", - "name": "ENTITY_CONTACT_FORCE" + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "EnumMember", - "canonicalReference": "server!EntityEvent.INTERACT:member", - "docComment": "", + "kind": "Property", + "canonicalReference": "server!Entity#modelTextureUri:member", + "docComment": "/**\n * The texture URI that overrides the model entity's default texture.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "INTERACT = " + "text": "get modelTextureUri(): " }, { "kind": "Content", - "text": "\"ENTITY.INTERACT\"" + "text": "string | undefined" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "modelTextureUri", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "releaseTag": "Public", - "name": "INTERACT" + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "EnumMember", - "canonicalReference": "server!EntityEvent.REMOVE_MODEL_NODE_OVERRIDE:member", - "docComment": "", + "kind": "Property", + "canonicalReference": "server!Entity#modelUri:member", + "docComment": "/**\n * The URI or path to the `.gltf` model asset.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "REMOVE_MODEL_NODE_OVERRIDE = " + "text": "get modelUri(): " }, { "kind": "Content", - "text": "\"ENTITY.REMOVE_MODEL_NODE_OVERRIDE\"" + "text": "string | undefined" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "modelUri", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "releaseTag": "Public", - "name": "REMOVE_MODEL_NODE_OVERRIDE" + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "EnumMember", - "canonicalReference": "server!EntityEvent.SET_BLOCK_TEXTURE_URI:member", - "docComment": "", + "kind": "Property", + "canonicalReference": "server!Entity#name:member", + "docComment": "/**\n * The name of the entity.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "SET_BLOCK_TEXTURE_URI = " + "text": "get name(): " }, { "kind": "Content", - "text": "\"ENTITY.SET_BLOCK_TEXTURE_URI\"" + "text": "string" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "name", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "releaseTag": "Public", - "name": "SET_BLOCK_TEXTURE_URI" + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "EnumMember", - "canonicalReference": "server!EntityEvent.SET_EMISSIVE_COLOR:member", - "docComment": "", + "kind": "Property", + "canonicalReference": "server!Entity#opacity:member", + "docComment": "/**\n * The opacity of the entity between 0 and 1.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "SET_EMISSIVE_COLOR = " + "text": "get opacity(): " }, { "kind": "Content", - "text": "\"ENTITY.SET_EMISSIVE_COLOR\"" + "text": "number" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "opacity", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "releaseTag": "Public", - "name": "SET_EMISSIVE_COLOR" + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "EnumMember", - "canonicalReference": "server!EntityEvent.SET_EMISSIVE_INTENSITY:member", - "docComment": "", + "kind": "Property", + "canonicalReference": "server!Entity#outline:member", + "docComment": "/**\n * The outline rendering options for the entity.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "SET_EMISSIVE_INTENSITY = " + "text": "get outline(): " + }, + { + "kind": "Reference", + "text": "Outline", + "canonicalReference": "server!Outline:interface" }, { "kind": "Content", - "text": "\"ENTITY.SET_EMISSIVE_INTENSITY\"" + "text": " | undefined" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "outline", + "propertyTypeTokenRange": { "startIndex": 1, - "endIndex": 2 + "endIndex": 3 }, - "releaseTag": "Public", - "name": "SET_EMISSIVE_INTENSITY" + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "EnumMember", - "canonicalReference": "server!EntityEvent.SET_MODEL_SCALE:member", - "docComment": "", + "kind": "Property", + "canonicalReference": "server!Entity#parent:member", + "docComment": "/**\n * The parent entity, if attached.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "SET_MODEL_SCALE = " + "text": "get parent(): " }, { - "kind": "Content", - "text": "\"ENTITY.SET_MODEL_SCALE\"" - } - ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "releaseTag": "Public", - "name": "SET_MODEL_SCALE" - }, - { - "kind": "EnumMember", - "canonicalReference": "server!EntityEvent.SET_MODEL_SCALE_INTERPOLATION_MS:member", - "docComment": "", - "excerptTokens": [ + "kind": "Reference", + "text": "Entity", + "canonicalReference": "server!Entity:class" + }, { "kind": "Content", - "text": "SET_MODEL_SCALE_INTERPOLATION_MS = " + "text": " | undefined" }, { "kind": "Content", - "text": "\"ENTITY.SET_MODEL_SCALE_INTERPOLATION_MS\"" + "text": ";" } ], - "initializerTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "parent", + "propertyTypeTokenRange": { "startIndex": 1, - "endIndex": 2 + "endIndex": 3 }, - "releaseTag": "Public", - "name": "SET_MODEL_SCALE_INTERPOLATION_MS" + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "EnumMember", - "canonicalReference": "server!EntityEvent.SET_MODEL_TEXTURE_URI:member", - "docComment": "", + "kind": "Property", + "canonicalReference": "server!Entity#parentNodeName:member", + "docComment": "/**\n * The parent model node name, if attached.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "SET_MODEL_TEXTURE_URI = " + "text": "get parentNodeName(): " }, { "kind": "Content", - "text": "\"ENTITY.SET_MODEL_TEXTURE_URI\"" - } - ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "releaseTag": "Public", - "name": "SET_MODEL_TEXTURE_URI" - }, - { - "kind": "EnumMember", - "canonicalReference": "server!EntityEvent.SET_OPACITY:member", - "docComment": "", - "excerptTokens": [ - { - "kind": "Content", - "text": "SET_OPACITY = " + "text": "string | undefined" }, { "kind": "Content", - "text": "\"ENTITY.SET_OPACITY\"" + "text": ";" } ], - "initializerTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "parentNodeName", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "releaseTag": "Public", - "name": "SET_OPACITY" + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "EnumMember", - "canonicalReference": "server!EntityEvent.SET_OUTLINE:member", - "docComment": "", + "kind": "Property", + "canonicalReference": "server!Entity#positionInterpolationMs:member", + "docComment": "/**\n * The interpolation time in milliseconds applied to position changes.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "SET_OUTLINE = " + "text": "get positionInterpolationMs(): " }, { "kind": "Content", - "text": "\"ENTITY.SET_OUTLINE\"" - } - ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "releaseTag": "Public", - "name": "SET_OUTLINE" - }, - { - "kind": "EnumMember", - "canonicalReference": "server!EntityEvent.SET_PARENT:member", - "docComment": "", - "excerptTokens": [ - { - "kind": "Content", - "text": "SET_PARENT = " + "text": "number | undefined" }, { "kind": "Content", - "text": "\"ENTITY.SET_PARENT\"" + "text": ";" } ], - "initializerTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "positionInterpolationMs", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "releaseTag": "Public", - "name": "SET_PARENT" + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "EnumMember", - "canonicalReference": "server!EntityEvent.SET_POSITION_INTERPOLATION_MS:member", - "docComment": "", + "kind": "Method", + "canonicalReference": "server!Entity#removeModelNodeOverride:member(1)", + "docComment": "/**\n * Removes a model node override from the entity's model.\n *\n * @param nameMatch - The name match of the model node override to remove.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "SET_POSITION_INTERPOLATION_MS = " + "text": "removeModelNodeOverride(nameMatch: " }, { "kind": "Content", - "text": "\"ENTITY.SET_POSITION_INTERPOLATION_MS\"" - } - ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "releaseTag": "Public", - "name": "SET_POSITION_INTERPOLATION_MS" - }, - { - "kind": "EnumMember", - "canonicalReference": "server!EntityEvent.SET_ROTATION_INTERPOLATION_MS:member", - "docComment": "", - "excerptTokens": [ + "text": "string" + }, { "kind": "Content", - "text": "SET_ROTATION_INTERPOLATION_MS = " + "text": "): " }, { "kind": "Content", - "text": "\"ENTITY.SET_ROTATION_INTERPOLATION_MS\"" + "text": "void" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 }, "releaseTag": "Public", - "name": "SET_ROTATION_INTERPOLATION_MS" + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "nameMatch", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "removeModelNodeOverride" }, { - "kind": "EnumMember", - "canonicalReference": "server!EntityEvent.SET_TINT_COLOR:member", - "docComment": "", + "kind": "Method", + "canonicalReference": "server!Entity#removeModelNodeOverrides:member(1)", + "docComment": "/**\n * Removes multiple model node overrides from the entity's model.\n *\n * @param nameMatches - The name matches of the model node overrides to remove.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "SET_TINT_COLOR = " + "text": "removeModelNodeOverrides(nameMatches: " }, { "kind": "Content", - "text": "\"ENTITY.SET_TINT_COLOR\"" - } - ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "releaseTag": "Public", - "name": "SET_TINT_COLOR" - }, - { - "kind": "EnumMember", - "canonicalReference": "server!EntityEvent.SPAWN:member", - "docComment": "", - "excerptTokens": [ + "text": "string[]" + }, { "kind": "Content", - "text": "SPAWN = " + "text": "): " }, { "kind": "Content", - "text": "\"ENTITY.SPAWN\"" + "text": "void" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 }, "releaseTag": "Public", - "name": "SPAWN" + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "nameMatches", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "removeModelNodeOverrides" }, { - "kind": "EnumMember", - "canonicalReference": "server!EntityEvent.TICK:member", - "docComment": "", + "kind": "Property", + "canonicalReference": "server!Entity#rotationInterpolationMs:member", + "docComment": "/**\n * The interpolation time in milliseconds applied to rotation changes.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "TICK = " + "text": "get rotationInterpolationMs(): " }, { "kind": "Content", - "text": "\"ENTITY.TICK\"" + "text": "number | undefined" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "rotationInterpolationMs", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "releaseTag": "Public", - "name": "TICK" + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "EnumMember", - "canonicalReference": "server!EntityEvent.UPDATE_POSITION:member", + "kind": "Method", + "canonicalReference": "server!Entity#setBlockTextureUri:member(1)", "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "UPDATE_POSITION = " + "text": "setBlockTextureUri(blockTextureUri: " }, { "kind": "Content", - "text": "\"ENTITY.UPDATE_POSITION\"" - } - ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "releaseTag": "Public", - "name": "UPDATE_POSITION" - }, - { - "kind": "EnumMember", - "canonicalReference": "server!EntityEvent.UPDATE_ROTATION:member", - "docComment": "", - "excerptTokens": [ + "text": "string | undefined" + }, { "kind": "Content", - "text": "UPDATE_ROTATION = " + "text": "): " }, { "kind": "Content", - "text": "\"ENTITY.UPDATE_ROTATION\"" + "text": "void" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 }, "releaseTag": "Public", - "name": "UPDATE_ROTATION" - } - ] - }, - { - "kind": "Interface", - "canonicalReference": "server!EntityEventPayloads:interface", - "docComment": "/**\n * Event payloads for Entity emitted events.\n *\n * **Category:** Events\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export interface EntityEventPayloads " - } - ], - "fileUrlPath": "src/worlds/entities/Entity.ts", - "releaseTag": "Public", - "name": "EntityEventPayloads", - "preserveMemberOrder": false, - "members": [ + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "blockTextureUri", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setBlockTextureUri" + }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityEventPayloads#\"ENTITY.BLOCK_COLLISION\":member", - "docComment": "/**\n * Emitted when an entity collides with a block type.\n */\n", + "kind": "Method", + "canonicalReference": "server!Entity#setEmissiveColor:member(1)", + "docComment": "/**\n * Sets the emissive color of the entity.\n *\n * Use for: glow effects or highlighted states.\n *\n * @param emissiveColor - The emissive color of the entity.\n *\n * **Side effects:** Emits `EntityEvent.SET_EMISSIVE_COLOR` when spawned.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" + "text": "setEmissiveColor(emissiveColor: " }, { "kind": "Reference", - "text": "EntityEvent.BLOCK_COLLISION", - "canonicalReference": "server!EntityEvent.BLOCK_COLLISION:member" - }, - { - "kind": "Content", - "text": "]: " + "text": "RgbColor", + "canonicalReference": "server!RgbColor:interface" }, { "kind": "Content", - "text": "{\n entity: " - }, - { - "kind": "Reference", - "text": "Entity", - "canonicalReference": "server!Entity:class" + "text": " | undefined" }, { "kind": "Content", - "text": ";\n blockType: " - }, - { - "kind": "Reference", - "text": "BlockType", - "canonicalReference": "server!BlockType:class" + "text": "): " }, { "kind": "Content", - "text": ";\n started: boolean;\n colliderHandleA: number;\n colliderHandleB: number;\n }" + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": false, + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 4, + "endIndex": 5 + }, "releaseTag": "Public", - "name": "\"ENTITY.BLOCK_COLLISION\"", - "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 8 - } + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "emissiveColor", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 3 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setEmissiveColor" }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityEventPayloads#\"ENTITY.BLOCK_CONTACT_FORCE\":member", - "docComment": "/**\n * Emitted when an entity's contact force is applied to a block type.\n */\n", + "kind": "Method", + "canonicalReference": "server!Entity#setEmissiveIntensity:member(1)", + "docComment": "/**\n * Sets the emissive intensity of the entity.\n *\n * @param emissiveIntensity - The emissive intensity of the entity. Use a value over 1 for brighter emissive effects.\n *\n * **Side effects:** Emits `EntityEvent.SET_EMISSIVE_INTENSITY` when spawned.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "EntityEvent.BLOCK_CONTACT_FORCE", - "canonicalReference": "server!EntityEvent.BLOCK_CONTACT_FORCE:member" - }, - { - "kind": "Content", - "text": "]: " - }, - { - "kind": "Content", - "text": "{\n entity: " - }, - { - "kind": "Reference", - "text": "Entity", - "canonicalReference": "server!Entity:class" + "text": "setEmissiveIntensity(emissiveIntensity: " }, { "kind": "Content", - "text": ";\n blockType: " - }, - { - "kind": "Reference", - "text": "BlockType", - "canonicalReference": "server!BlockType:class" + "text": "number | undefined" }, { "kind": "Content", - "text": ";\n contactForceData: " - }, - { - "kind": "Reference", - "text": "ContactForceData", - "canonicalReference": "server!ContactForceData:type" + "text": "): " }, { "kind": "Content", - "text": ";\n }" + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": false, - "releaseTag": "Public", - "name": "\"ENTITY.BLOCK_CONTACT_FORCE\"", - "propertyTypeTokenRange": { + "isStatic": false, + "returnTypeTokenRange": { "startIndex": 3, - "endIndex": 10 - } + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "emissiveIntensity", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setEmissiveIntensity" }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityEventPayloads#\"ENTITY.DESPAWN\":member", - "docComment": "/**\n * Emitted when an entity is despawned.\n */\n", + "kind": "Method", + "canonicalReference": "server!Entity#setModelScale:member(1)", + "docComment": "/**\n * Sets the scale of the entity's model and proportionally scales its colliders.\n *\n * @remarks\n *\n * Model entities only; no effect for block entities.\n *\n * **Collider scaling is relative:** Colliders are scaled by the ratio of new/old scale, not set to absolute values. Example: scaling from 1 to 2 doubles collider size; scaling from 2 to 4 also doubles it.\n *\n * **Reference equality check:** Uses `===` to compare with current scale, so passing the same object reference will early return even if values changed. Always pass a new object.\n *\n * @param modelScale - The scale of the entity's model. Can be a vector or a number for uniform scaling.\n *\n * **Side effects:** Scales existing colliders and emits `EntityEvent.SET_MODEL_SCALE` when spawned.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" + "text": "setModelScale(modelScale: " }, { "kind": "Reference", - "text": "EntityEvent.DESPAWN", - "canonicalReference": "server!EntityEvent.DESPAWN:member" + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", - "text": "]: " + "text": " | number" }, { "kind": "Content", - "text": "{\n entity: " - }, - { - "kind": "Reference", - "text": "Entity", - "canonicalReference": "server!Entity:class" + "text": "): " }, { "kind": "Content", - "text": ";\n }" + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": false, + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 4, + "endIndex": 5 + }, "releaseTag": "Public", - "name": "\"ENTITY.DESPAWN\"", - "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 6 - } - }, + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "modelScale", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 3 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setModelScale" + }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityEventPayloads#\"ENTITY.ENTITY_COLLISION\":member", - "docComment": "/**\n * Emitted when an entity collides with another entity.\n */\n", + "kind": "Method", + "canonicalReference": "server!Entity#setModelScaleInterpolationMs:member(1)", + "docComment": "/**\n * Sets the interpolation time in milliseconds applied to model scale changes.\n *\n * @param interpolationMs - The interpolation time in milliseconds to set.\n *\n * **Side effects:** Emits `EntityEvent.SET_MODEL_SCALE_INTERPOLATION_MS` when spawned.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "EntityEvent.ENTITY_COLLISION", - "canonicalReference": "server!EntityEvent.ENTITY_COLLISION:member" - }, - { - "kind": "Content", - "text": "]: " + "text": "setModelScaleInterpolationMs(interpolationMs: " }, { "kind": "Content", - "text": "{\n entity: " - }, - { - "kind": "Reference", - "text": "Entity", - "canonicalReference": "server!Entity:class" + "text": "number | undefined" }, { "kind": "Content", - "text": ";\n otherEntity: " - }, - { - "kind": "Reference", - "text": "Entity", - "canonicalReference": "server!Entity:class" + "text": "): " }, { "kind": "Content", - "text": ";\n started: boolean;\n colliderHandleA: number;\n colliderHandleB: number;\n }" + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": false, - "releaseTag": "Public", - "name": "\"ENTITY.ENTITY_COLLISION\"", - "propertyTypeTokenRange": { + "isStatic": false, + "returnTypeTokenRange": { "startIndex": 3, - "endIndex": 8 - } + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "interpolationMs", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setModelScaleInterpolationMs" }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityEventPayloads#\"ENTITY.ENTITY_CONTACT_FORCE\":member", - "docComment": "/**\n * Emitted when an entity's contact force is applied to another entity.\n */\n", + "kind": "Method", + "canonicalReference": "server!Entity#setModelTextureUri:member(1)", + "docComment": "/**\n * Sets the texture uri of the entity's model. Setting this overrides the model's default texture.\n *\n * @remarks\n *\n * Model entities only; no effect for block entities.\n *\n * @param modelTextureUri - The texture uri of the entity's model.\n *\n * **Side effects:** Emits `EntityEvent.SET_MODEL_TEXTURE_URI` when spawned.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "EntityEvent.ENTITY_CONTACT_FORCE", - "canonicalReference": "server!EntityEvent.ENTITY_CONTACT_FORCE:member" + "text": "setModelTextureUri(modelTextureUri: " }, { "kind": "Content", - "text": "]: " + "text": "string | undefined" }, { "kind": "Content", - "text": "{\n entity: " + "text": "): " }, { - "kind": "Reference", - "text": "Entity", - "canonicalReference": "server!Entity:class" + "kind": "Content", + "text": "void" }, { "kind": "Content", - "text": ";\n otherEntity: " - }, + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ { - "kind": "Reference", - "text": "Entity", - "canonicalReference": "server!Entity:class" + "parameterName": "modelTextureUri", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setModelTextureUri" + }, + { + "kind": "Method", + "canonicalReference": "server!Entity#setOpacity:member(1)", + "docComment": "/**\n * Sets the opacity of the entity.\n *\n * @param opacity - The opacity of the entity between 0 and 1. 0 is fully transparent, 1 is fully opaque.\n *\n * **Side effects:** Emits `EntityEvent.SET_OPACITY` when spawned.\n *\n * **Category:** Entities\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "setOpacity(opacity: " }, { "kind": "Content", - "text": ";\n contactForceData: " + "text": "number" }, { - "kind": "Reference", - "text": "ContactForceData", - "canonicalReference": "server!ContactForceData:type" + "kind": "Content", + "text": "): " }, { "kind": "Content", - "text": ";\n }" + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": false, - "releaseTag": "Public", - "name": "\"ENTITY.ENTITY_CONTACT_FORCE\"", - "propertyTypeTokenRange": { + "isStatic": false, + "returnTypeTokenRange": { "startIndex": 3, - "endIndex": 10 - } + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "opacity", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setOpacity" }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityEventPayloads#\"ENTITY.INTERACT\":member", - "docComment": "/**\n * Emitted when a player interacts with the entity by clicking or tapping it.\n */\n", + "kind": "Method", + "canonicalReference": "server!Entity#setOutline:member(1)", + "docComment": "/**\n * Sets the outline rendering options for the entity.\n *\n * @param outline - The outline options, or undefined to remove the outline.\n *\n * @param forPlayer - The player to set the outline for, if undefined the outline will be set for all players.\n *\n * **Side effects:** Emits `EntityEvent.SET_OUTLINE` when spawned.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" + "text": "setOutline(outline: " }, { "kind": "Reference", - "text": "EntityEvent.INTERACT", - "canonicalReference": "server!EntityEvent.INTERACT:member" - }, - { - "kind": "Content", - "text": "]: " + "text": "Outline", + "canonicalReference": "server!Outline:interface" }, { "kind": "Content", - "text": "{\n entity: " - }, - { - "kind": "Reference", - "text": "Entity", - "canonicalReference": "server!Entity:class" + "text": " | undefined" }, { "kind": "Content", - "text": ";\n player: " + "text": ", forPlayer?: " }, { "kind": "Reference", @@ -18063,644 +18160,1172 @@ }, { "kind": "Content", - "text": ";\n raycastHit?: " - }, - { - "kind": "Reference", - "text": "RaycastHit", - "canonicalReference": "server!RaycastHit:type" + "text": "): " }, { "kind": "Content", - "text": ";\n }" + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": false, + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 6, + "endIndex": 7 + }, "releaseTag": "Public", - "name": "\"ENTITY.INTERACT\"", - "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 10 - } + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "outline", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 3 + }, + "isOptional": false + }, + { + "parameterName": "forPlayer", + "parameterTypeTokenRange": { + "startIndex": 4, + "endIndex": 5 + }, + "isOptional": true + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setOutline" }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityEventPayloads#\"ENTITY.REMOVE_MODEL_NODE_OVERRIDE\":member", - "docComment": "/**\n * Emitted when a model node override is removed from the entity's model.\n */\n", + "kind": "Method", + "canonicalReference": "server!Entity#setParent:member(1)", + "docComment": "/**\n * Sets the parent of the entity and resets this entity's position and rotation.\n *\n * @remarks\n *\n * When setting the parent, all forces, torques and velocities of this entity are reset. Additionally, this entity's type will be set to `KINEMATIC_VELOCITY` if it is not already. All colliders of this entity will be disabled when parent is not undefined. If the provided parent is undefined, this entity will be removed from its parent and all colliders will be re-enabled. When setting an undefined parent to remove this entity from its parent, this entity's type will be set to the last type it was set to before being a child.\n *\n * @param parent - The parent entity to set, or undefined to remove from an existing parent.\n *\n * @param parentNodeName - The name of the parent's node (if parent is a model entity) this entity will attach to.\n *\n * @param position - The position to set for the entity. If parent is provided, this is relative to the parent's attachment point.\n *\n * @param rotation - The rotation to set for the entity. If parent is provided, this is relative to the parent's rotation.\n *\n * **Requires:** If `parent` is provided, it must be spawned.\n *\n * **Side effects:** Disables/enables colliders, changes rigid body type, and emits `EntityEvent.SET_PARENT`.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" + "text": "setParent(parent: " }, { "kind": "Reference", - "text": "EntityEvent.REMOVE_MODEL_NODE_OVERRIDE", - "canonicalReference": "server!EntityEvent.REMOVE_MODEL_NODE_OVERRIDE:member" + "text": "Entity", + "canonicalReference": "server!Entity:class" }, { "kind": "Content", - "text": "]: " + "text": " | undefined" }, { "kind": "Content", - "text": "{\n entity: " + "text": ", parentNodeName?: " + }, + { + "kind": "Content", + "text": "string" + }, + { + "kind": "Content", + "text": ", position?: " }, { "kind": "Reference", - "text": "Entity", - "canonicalReference": "server!Entity:class" + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", - "text": ";\n entityModelNodeOverride: " + "text": ", rotation?: " }, { "kind": "Reference", - "text": "EntityModelNodeOverride", - "canonicalReference": "server!EntityModelNodeOverride:class" + "text": "QuaternionLike", + "canonicalReference": "server!QuaternionLike:interface" }, { "kind": "Content", - "text": ";\n }" + "text": "): " + }, + { + "kind": "Content", + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": false, + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 10, + "endIndex": 11 + }, "releaseTag": "Public", - "name": "\"ENTITY.REMOVE_MODEL_NODE_OVERRIDE\"", - "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 8 - } - }, - { - "kind": "PropertySignature", - "canonicalReference": "server!EntityEventPayloads#\"ENTITY.SET_BLOCK_TEXTURE_URI\":member", - "docComment": "/**\n * Emitted when the texture uri of a block entity is set.\n */\n", - "excerptTokens": [ + "isProtected": false, + "overloadIndex": 1, + "parameters": [ { - "kind": "Content", - "text": "[" + "parameterName": "parent", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 3 + }, + "isOptional": false }, { - "kind": "Reference", - "text": "EntityEvent.SET_BLOCK_TEXTURE_URI", - "canonicalReference": "server!EntityEvent.SET_BLOCK_TEXTURE_URI:member" + "parameterName": "parentNodeName", + "parameterTypeTokenRange": { + "startIndex": 4, + "endIndex": 5 + }, + "isOptional": true + }, + { + "parameterName": "position", + "parameterTypeTokenRange": { + "startIndex": 6, + "endIndex": 7 + }, + "isOptional": true }, + { + "parameterName": "rotation", + "parameterTypeTokenRange": { + "startIndex": 8, + "endIndex": 9 + }, + "isOptional": true + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setParent" + }, + { + "kind": "Method", + "canonicalReference": "server!Entity#setPositionInterpolationMs:member(1)", + "docComment": "/**\n * Sets the interpolation time in milliseconds applied to position changes.\n *\n * @param interpolationMs - The interpolation time in milliseconds to set.\n *\n * **Side effects:** Emits `EntityEvent.SET_POSITION_INTERPOLATION_MS` when spawned.\n *\n * **Category:** Entities\n */\n", + "excerptTokens": [ { "kind": "Content", - "text": "]: " + "text": "setPositionInterpolationMs(interpolationMs: " }, { "kind": "Content", - "text": "{\n entity: " + "text": "number | undefined" }, { - "kind": "Reference", - "text": "Entity", - "canonicalReference": "server!Entity:class" + "kind": "Content", + "text": "): " }, { "kind": "Content", - "text": ";\n blockTextureUri: string | undefined;\n }" + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": false, - "releaseTag": "Public", - "name": "\"ENTITY.SET_BLOCK_TEXTURE_URI\"", - "propertyTypeTokenRange": { + "isStatic": false, + "returnTypeTokenRange": { "startIndex": 3, - "endIndex": 6 - } + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "interpolationMs", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setPositionInterpolationMs" }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityEventPayloads#\"ENTITY.SET_EMISSIVE_COLOR\":member", - "docComment": "/**\n * Emitted when the emissive color is set.\n */\n", + "kind": "Method", + "canonicalReference": "server!Entity#setRotationInterpolationMs:member(1)", + "docComment": "/**\n * Sets the interpolation time in milliseconds applied to rotation changes.\n *\n * @param interpolationMs - The interpolation time in milliseconds to set.\n *\n * **Side effects:** Emits `EntityEvent.SET_ROTATION_INTERPOLATION_MS` when spawned.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "EntityEvent.SET_EMISSIVE_COLOR", - "canonicalReference": "server!EntityEvent.SET_EMISSIVE_COLOR:member" - }, - { - "kind": "Content", - "text": "]: " + "text": "setRotationInterpolationMs(interpolationMs: " }, { "kind": "Content", - "text": "{\n entity: " - }, - { - "kind": "Reference", - "text": "Entity", - "canonicalReference": "server!Entity:class" + "text": "number | undefined" }, { "kind": "Content", - "text": ";\n emissiveColor: " - }, - { - "kind": "Reference", - "text": "RgbColor", - "canonicalReference": "server!RgbColor:interface" + "text": "): " }, { "kind": "Content", - "text": " | undefined;\n }" + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": false, - "releaseTag": "Public", - "name": "\"ENTITY.SET_EMISSIVE_COLOR\"", - "propertyTypeTokenRange": { + "isStatic": false, + "returnTypeTokenRange": { "startIndex": 3, - "endIndex": 8 - } + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "interpolationMs", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setRotationInterpolationMs" }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityEventPayloads#\"ENTITY.SET_EMISSIVE_INTENSITY\":member", - "docComment": "/**\n * Emitted when the emissive intensity is set.\n */\n", + "kind": "Method", + "canonicalReference": "server!Entity#setTintColor:member(1)", + "docComment": "/**\n * Sets the tint color of the entity.\n *\n * @param tintColor - The tint color of the entity.\n *\n * **Side effects:** Emits `EntityEvent.SET_TINT_COLOR` when spawned.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" + "text": "setTintColor(tintColor: " }, { "kind": "Reference", - "text": "EntityEvent.SET_EMISSIVE_INTENSITY", - "canonicalReference": "server!EntityEvent.SET_EMISSIVE_INTENSITY:member" + "text": "RgbColor", + "canonicalReference": "server!RgbColor:interface" }, { "kind": "Content", - "text": "]: " + "text": " | undefined" }, { "kind": "Content", - "text": "{\n entity: " - }, - { - "kind": "Reference", - "text": "Entity", - "canonicalReference": "server!Entity:class" + "text": "): " }, { "kind": "Content", - "text": ";\n emissiveIntensity: number | undefined;\n }" + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": false, + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 4, + "endIndex": 5 + }, "releaseTag": "Public", - "name": "\"ENTITY.SET_EMISSIVE_INTENSITY\"", - "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 6 - } + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "tintColor", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 3 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setTintColor" }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityEventPayloads#\"ENTITY.SET_MODEL_SCALE_INTERPOLATION_MS\":member", - "docComment": "/**\n * Emitted when the interpolation time in milliseconds applied to model scale changes is set.\n */\n", + "kind": "Method", + "canonicalReference": "server!Entity#spawn:member(1)", + "docComment": "/**\n * Spawns the entity in the world.\n *\n * Use for: placing the entity into a world so it simulates and syncs to clients. Do NOT use for: reusing a single entity instance across multiple worlds.\n *\n * @remarks\n *\n * **Rotation default:** If no rotation is provided, entity spawns with identity rotation facing -Z. For Y-axis rotation (yaw): `{ x: 0, y: sin(yaw/2), z: 0, w: cos(yaw/2) }`. Yaw 0 = facing -Z.\n *\n * **Auto-collider creation:** If no colliders are provided, a default collider is auto-generated from the model bounds (or block half extents). Set `modelPreferredShape` to `ColliderShape.NONE` to disable.\n *\n * **Collision groups:** Colliders with default collision groups are auto-assigned based on `isEnvironmental` and `isSensor` flags. Environmental entities don't collide with blocks or other environmental entities.\n *\n * **Event enabling:** Collision/contact force events are auto-enabled on colliders if listeners are registered for `BLOCK_COLLISION`, `ENTITY_COLLISION`, `BLOCK_CONTACT_FORCE`, or `ENTITY_CONTACT_FORCE` prior to spawning.\n *\n * **Controller:** If a controller is attached, `controller.spawn()` is called after the entity is added to the physics simulation.\n *\n * **Parent handling:** If `parent` was set in options, `setParent()` is called after spawn with the provided position/rotation.\n *\n * @param world - The world to spawn the entity in.\n *\n * @param position - The position to spawn the entity at.\n *\n * @param rotation - The optional rotation to spawn the entity with.\n *\n * **Requires:** Entity must not already be spawned.\n *\n * **Side effects:** Registers the entity, adds it to the simulation, and emits `EntityEvent.SPAWN`.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" + "text": "spawn(world: " }, { "kind": "Reference", - "text": "EntityEvent.SET_MODEL_SCALE_INTERPOLATION_MS", - "canonicalReference": "server!EntityEvent.SET_MODEL_SCALE_INTERPOLATION_MS:member" + "text": "World", + "canonicalReference": "server!World:class" }, { "kind": "Content", - "text": "]: " + "text": ", position: " }, { - "kind": "Content", - "text": "{\n entity: " + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { - "kind": "Reference", - "text": "Entity", - "canonicalReference": "server!Entity:class" + "kind": "Content", + "text": ", rotation?: " + }, + { + "kind": "Reference", + "text": "QuaternionLike", + "canonicalReference": "server!QuaternionLike:interface" }, { "kind": "Content", - "text": ";\n interpolationMs: number | undefined;\n }" + "text": "): " + }, + { + "kind": "Content", + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": false, + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 7, + "endIndex": 8 + }, "releaseTag": "Public", - "name": "\"ENTITY.SET_MODEL_SCALE_INTERPOLATION_MS\"", - "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 6 - } + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "world", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + }, + { + "parameterName": "position", + "parameterTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "isOptional": false + }, + { + "parameterName": "rotation", + "parameterTypeTokenRange": { + "startIndex": 5, + "endIndex": 6 + }, + "isOptional": true + } + ], + "isOptional": false, + "isAbstract": false, + "name": "spawn" }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityEventPayloads#\"ENTITY.SET_MODEL_SCALE\":member", - "docComment": "/**\n * Emitted when the scale of the entity's model is set.\n */\n", + "kind": "Method", + "canonicalReference": "server!Entity#stopAllModelAnimations:member(1)", + "docComment": "/**\n * Stops all model animations for the entity, optionally excluding the provided animations from stopping.\n *\n * @param exclusionFilter - The filter to determine if a model animation should be excluded from being stopped.\n *\n * **Side effects:** May emit `EntityModelAnimationEvent.STOP` for each stopped animation.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" + "text": "stopAllModelAnimations(exclusionFilter?: " }, { - "kind": "Reference", - "text": "EntityEvent.SET_MODEL_SCALE", - "canonicalReference": "server!EntityEvent.SET_MODEL_SCALE:member" + "kind": "Content", + "text": "(modelAnimation: " }, { - "kind": "Content", - "text": "]: " + "kind": "Reference", + "text": "Readonly", + "canonicalReference": "!Readonly:type" }, { "kind": "Content", - "text": "{\n entity: " + "text": "<" }, { "kind": "Reference", - "text": "Entity", - "canonicalReference": "server!Entity:class" + "text": "EntityModelAnimation", + "canonicalReference": "server!EntityModelAnimation:class" }, { "kind": "Content", - "text": ";\n modelScale: " + "text": ">) => boolean" }, { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "kind": "Content", + "text": "): " }, { "kind": "Content", - "text": ";\n }" + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": false, - "releaseTag": "Public", - "name": "\"ENTITY.SET_MODEL_SCALE\"", - "propertyTypeTokenRange": { - "startIndex": 3, + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 7, "endIndex": 8 - } + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "exclusionFilter", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 6 + }, + "isOptional": true + } + ], + "isOptional": false, + "isAbstract": false, + "name": "stopAllModelAnimations" }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityEventPayloads#\"ENTITY.SET_MODEL_TEXTURE_URI\":member", - "docComment": "/**\n * Emitted when the texture uri of the entity's model is set.\n */\n", + "kind": "Method", + "canonicalReference": "server!Entity#stopModelAnimations:member(1)", + "docComment": "/**\n * Stops the provided model animations for the entity.\n *\n * @param modelAnimationNames - The model animation names to stop.\n *\n * **Side effects:** May emit `EntityModelAnimationEvent.STOP` for each stopped animation.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "EntityEvent.SET_MODEL_TEXTURE_URI", - "canonicalReference": "server!EntityEvent.SET_MODEL_TEXTURE_URI:member" + "text": "stopModelAnimations(modelAnimationNames: " }, { "kind": "Content", - "text": "]: " + "text": "readonly string[]" }, { "kind": "Content", - "text": "{\n entity: " - }, - { - "kind": "Reference", - "text": "Entity", - "canonicalReference": "server!Entity:class" + "text": "): " }, { "kind": "Content", - "text": ";\n modelTextureUri: string | undefined;\n }" + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": false, - "releaseTag": "Public", - "name": "\"ENTITY.SET_MODEL_TEXTURE_URI\"", - "propertyTypeTokenRange": { + "isStatic": false, + "returnTypeTokenRange": { "startIndex": 3, - "endIndex": 6 - } + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "modelAnimationNames", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "stopModelAnimations" }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityEventPayloads#\"ENTITY.SET_OPACITY\":member", - "docComment": "/**\n * Emitted when the opacity of the entity is set.\n */\n", + "kind": "Property", + "canonicalReference": "server!Entity#tag:member", + "docComment": "/**\n * An arbitrary identifier tag for your own logic.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "EntityEvent.SET_OPACITY", - "canonicalReference": "server!EntityEvent.SET_OPACITY:member" - }, - { - "kind": "Content", - "text": "]: " - }, - { - "kind": "Content", - "text": "{\n entity: " - }, - { - "kind": "Reference", - "text": "Entity", - "canonicalReference": "server!Entity:class" + "text": "get tag(): " }, { "kind": "Content", - "text": ";\n opacity: number;\n }" + "text": "string | undefined" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, + "isReadonly": true, "isOptional": false, "releaseTag": "Public", - "name": "\"ENTITY.SET_OPACITY\"", + "name": "tag", "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 6 - } + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityEventPayloads#\"ENTITY.SET_OUTLINE\":member", - "docComment": "/**\n * Emitted when the outline of the entity is set.\n */\n", + "kind": "Property", + "canonicalReference": "server!Entity#tintColor:member", + "docComment": "/**\n * The tint color of the entity.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "EntityEvent.SET_OUTLINE", - "canonicalReference": "server!EntityEvent.SET_OUTLINE:member" - }, - { - "kind": "Content", - "text": "]: " - }, - { - "kind": "Content", - "text": "{\n entity: " - }, - { - "kind": "Reference", - "text": "Entity", - "canonicalReference": "server!Entity:class" - }, - { - "kind": "Content", - "text": ";\n outline: " - }, - { - "kind": "Reference", - "text": "Outline", - "canonicalReference": "server!Outline:interface" - }, - { - "kind": "Content", - "text": " | undefined;\n forPlayer?: " + "text": "get tintColor(): " }, { "kind": "Reference", - "text": "Player", - "canonicalReference": "server!Player:class" + "text": "RgbColor", + "canonicalReference": "server!RgbColor:interface" }, { "kind": "Content", - "text": ";\n }" + "text": " | undefined" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, + "isReadonly": true, "isOptional": false, "releaseTag": "Public", - "name": "\"ENTITY.SET_OUTLINE\"", + "name": "tintColor", "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 10 - } + "startIndex": 1, + "endIndex": 3 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityEventPayloads#\"ENTITY.SET_PARENT\":member", - "docComment": "/**\n * Emitted when the parent of the entity is set.\n */\n", + "kind": "Property", + "canonicalReference": "server!Entity#width:member", + "docComment": "/**\n * The width (X-axis) of the entity's model or block size.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "EntityEvent.SET_PARENT", - "canonicalReference": "server!EntityEvent.SET_PARENT:member" + "text": "get width(): " }, { "kind": "Content", - "text": "]: " + "text": "number" }, { "kind": "Content", - "text": "{\n entity: " - }, - { - "kind": "Reference", - "text": "Entity", - "canonicalReference": "server!Entity:class" - }, + "text": ";" + } + ], + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "width", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false + }, + { + "kind": "Property", + "canonicalReference": "server!Entity#world:member", + "docComment": "/**\n * The world the entity is in, if spawned.\n *\n * **Category:** Entities\n */\n", + "excerptTokens": [ { "kind": "Content", - "text": ";\n parent: " + "text": "get world(): " }, { "kind": "Reference", - "text": "Entity", - "canonicalReference": "server!Entity:class" + "text": "World", + "canonicalReference": "server!World:class" }, { "kind": "Content", - "text": " | undefined;\n parentNodeName: string | undefined;\n }" + "text": " | undefined" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, + "isReadonly": true, "isOptional": false, "releaseTag": "Public", - "name": "\"ENTITY.SET_PARENT\"", + "name": "world", "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 8 - } - }, + "startIndex": 1, + "endIndex": 3 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false + } + ], + "extendsTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "implementsTokenRanges": [ { - "kind": "PropertySignature", - "canonicalReference": "server!EntityEventPayloads#\"ENTITY.SET_POSITION_INTERPOLATION_MS\":member", - "docComment": "/**\n * Emitted when the interpolation time in milliseconds applied to position changes is set.\n */\n", + "startIndex": 3, + "endIndex": 4 + } + ] + }, + { + "kind": "Enum", + "canonicalReference": "server!EntityEvent:enum", + "docComment": "/**\n * Event types an Entity instance can emit.\n *\n * See `EntityEventPayloads` for the payloads.\n *\n * **Category:** Events\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export declare enum EntityEvent " + } + ], + "fileUrlPath": "src/worlds/entities/Entity.ts", + "releaseTag": "Public", + "name": "EntityEvent", + "preserveMemberOrder": false, + "members": [ + { + "kind": "EnumMember", + "canonicalReference": "server!EntityEvent.BLOCK_COLLISION:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "EntityEvent.SET_POSITION_INTERPOLATION_MS", - "canonicalReference": "server!EntityEvent.SET_POSITION_INTERPOLATION_MS:member" + "text": "BLOCK_COLLISION = " }, { "kind": "Content", - "text": "]: " - }, + "text": "\"ENTITY.BLOCK_COLLISION\"" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "BLOCK_COLLISION" + }, + { + "kind": "EnumMember", + "canonicalReference": "server!EntityEvent.BLOCK_CONTACT_FORCE:member", + "docComment": "", + "excerptTokens": [ { "kind": "Content", - "text": "{\n entity: " + "text": "BLOCK_CONTACT_FORCE = " }, { - "kind": "Reference", - "text": "Entity", - "canonicalReference": "server!Entity:class" - }, + "kind": "Content", + "text": "\"ENTITY.BLOCK_CONTACT_FORCE\"" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "BLOCK_CONTACT_FORCE" + }, + { + "kind": "EnumMember", + "canonicalReference": "server!EntityEvent.DESPAWN:member", + "docComment": "", + "excerptTokens": [ { "kind": "Content", - "text": ";\n interpolationMs: number | undefined;\n }" + "text": "DESPAWN = " }, { "kind": "Content", - "text": ";" + "text": "\"ENTITY.DESPAWN\"" } ], - "isReadonly": false, - "isOptional": false, + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, "releaseTag": "Public", - "name": "\"ENTITY.SET_POSITION_INTERPOLATION_MS\"", - "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 6 - } + "name": "DESPAWN" }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityEventPayloads#\"ENTITY.SET_ROTATION_INTERPOLATION_MS\":member", - "docComment": "/**\n * Emitted when the interpolation time in milliseconds applied to rotation changes is set.\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!EntityEvent.ENTITY_COLLISION:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "EntityEvent.SET_ROTATION_INTERPOLATION_MS", - "canonicalReference": "server!EntityEvent.SET_ROTATION_INTERPOLATION_MS:member" + "text": "ENTITY_COLLISION = " }, { "kind": "Content", - "text": "]: " - }, + "text": "\"ENTITY.ENTITY_COLLISION\"" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "ENTITY_COLLISION" + }, + { + "kind": "EnumMember", + "canonicalReference": "server!EntityEvent.ENTITY_CONTACT_FORCE:member", + "docComment": "", + "excerptTokens": [ { "kind": "Content", - "text": "{\n entity: " + "text": "ENTITY_CONTACT_FORCE = " }, { - "kind": "Reference", - "text": "Entity", - "canonicalReference": "server!Entity:class" - }, + "kind": "Content", + "text": "\"ENTITY.ENTITY_CONTACT_FORCE\"" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "ENTITY_CONTACT_FORCE" + }, + { + "kind": "EnumMember", + "canonicalReference": "server!EntityEvent.INTERACT:member", + "docComment": "", + "excerptTokens": [ { "kind": "Content", - "text": ";\n interpolationMs: number | undefined;\n }" + "text": "INTERACT = " }, { "kind": "Content", - "text": ";" + "text": "\"ENTITY.INTERACT\"" } ], - "isReadonly": false, - "isOptional": false, + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, "releaseTag": "Public", - "name": "\"ENTITY.SET_ROTATION_INTERPOLATION_MS\"", - "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 6 - } + "name": "INTERACT" }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityEventPayloads#\"ENTITY.SET_TINT_COLOR\":member", - "docComment": "/**\n * Emitted when the tint color of the entity is set.\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!EntityEvent.REMOVE_MODEL_NODE_OVERRIDE:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "EntityEvent.SET_TINT_COLOR", - "canonicalReference": "server!EntityEvent.SET_TINT_COLOR:member" + "text": "REMOVE_MODEL_NODE_OVERRIDE = " }, { "kind": "Content", - "text": "]: " - }, - { + "text": "\"ENTITY.REMOVE_MODEL_NODE_OVERRIDE\"" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "REMOVE_MODEL_NODE_OVERRIDE" + }, + { + "kind": "EnumMember", + "canonicalReference": "server!EntityEvent.SET_BLOCK_TEXTURE_URI:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "SET_BLOCK_TEXTURE_URI = " + }, + { + "kind": "Content", + "text": "\"ENTITY.SET_BLOCK_TEXTURE_URI\"" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "SET_BLOCK_TEXTURE_URI" + }, + { + "kind": "EnumMember", + "canonicalReference": "server!EntityEvent.SET_EMISSIVE_COLOR:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "SET_EMISSIVE_COLOR = " + }, + { + "kind": "Content", + "text": "\"ENTITY.SET_EMISSIVE_COLOR\"" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "SET_EMISSIVE_COLOR" + }, + { + "kind": "EnumMember", + "canonicalReference": "server!EntityEvent.SET_EMISSIVE_INTENSITY:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "SET_EMISSIVE_INTENSITY = " + }, + { + "kind": "Content", + "text": "\"ENTITY.SET_EMISSIVE_INTENSITY\"" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "SET_EMISSIVE_INTENSITY" + }, + { + "kind": "EnumMember", + "canonicalReference": "server!EntityEvent.SET_MODEL_SCALE:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "SET_MODEL_SCALE = " + }, + { + "kind": "Content", + "text": "\"ENTITY.SET_MODEL_SCALE\"" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "SET_MODEL_SCALE" + }, + { + "kind": "EnumMember", + "canonicalReference": "server!EntityEvent.SET_MODEL_SCALE_INTERPOLATION_MS:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "SET_MODEL_SCALE_INTERPOLATION_MS = " + }, + { + "kind": "Content", + "text": "\"ENTITY.SET_MODEL_SCALE_INTERPOLATION_MS\"" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "SET_MODEL_SCALE_INTERPOLATION_MS" + }, + { + "kind": "EnumMember", + "canonicalReference": "server!EntityEvent.SET_MODEL_TEXTURE_URI:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "SET_MODEL_TEXTURE_URI = " + }, + { + "kind": "Content", + "text": "\"ENTITY.SET_MODEL_TEXTURE_URI\"" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "SET_MODEL_TEXTURE_URI" + }, + { + "kind": "EnumMember", + "canonicalReference": "server!EntityEvent.SET_OPACITY:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "SET_OPACITY = " + }, + { + "kind": "Content", + "text": "\"ENTITY.SET_OPACITY\"" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "SET_OPACITY" + }, + { + "kind": "EnumMember", + "canonicalReference": "server!EntityEvent.SET_OUTLINE:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "SET_OUTLINE = " + }, + { + "kind": "Content", + "text": "\"ENTITY.SET_OUTLINE\"" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "SET_OUTLINE" + }, + { + "kind": "EnumMember", + "canonicalReference": "server!EntityEvent.SET_PARENT:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "SET_PARENT = " + }, + { + "kind": "Content", + "text": "\"ENTITY.SET_PARENT\"" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "SET_PARENT" + }, + { + "kind": "EnumMember", + "canonicalReference": "server!EntityEvent.SET_POSITION_INTERPOLATION_MS:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "SET_POSITION_INTERPOLATION_MS = " + }, + { + "kind": "Content", + "text": "\"ENTITY.SET_POSITION_INTERPOLATION_MS\"" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "SET_POSITION_INTERPOLATION_MS" + }, + { + "kind": "EnumMember", + "canonicalReference": "server!EntityEvent.SET_ROTATION_INTERPOLATION_MS:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "SET_ROTATION_INTERPOLATION_MS = " + }, + { + "kind": "Content", + "text": "\"ENTITY.SET_ROTATION_INTERPOLATION_MS\"" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "SET_ROTATION_INTERPOLATION_MS" + }, + { + "kind": "EnumMember", + "canonicalReference": "server!EntityEvent.SET_TINT_COLOR:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "SET_TINT_COLOR = " + }, + { + "kind": "Content", + "text": "\"ENTITY.SET_TINT_COLOR\"" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "SET_TINT_COLOR" + }, + { + "kind": "EnumMember", + "canonicalReference": "server!EntityEvent.SPAWN:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "SPAWN = " + }, + { + "kind": "Content", + "text": "\"ENTITY.SPAWN\"" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "SPAWN" + }, + { + "kind": "EnumMember", + "canonicalReference": "server!EntityEvent.TICK:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "TICK = " + }, + { + "kind": "Content", + "text": "\"ENTITY.TICK\"" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "TICK" + }, + { + "kind": "EnumMember", + "canonicalReference": "server!EntityEvent.UPDATE_POSITION:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "UPDATE_POSITION = " + }, + { + "kind": "Content", + "text": "\"ENTITY.UPDATE_POSITION\"" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "UPDATE_POSITION" + }, + { + "kind": "EnumMember", + "canonicalReference": "server!EntityEvent.UPDATE_ROTATION:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "UPDATE_ROTATION = " + }, + { + "kind": "Content", + "text": "\"ENTITY.UPDATE_ROTATION\"" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "UPDATE_ROTATION" + } + ] + }, + { + "kind": "Interface", + "canonicalReference": "server!EntityEventPayloads:interface", + "docComment": "/**\n * Event payloads for Entity emitted events.\n *\n * **Category:** Events\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export interface EntityEventPayloads " + } + ], + "fileUrlPath": "src/worlds/entities/Entity.ts", + "releaseTag": "Public", + "name": "EntityEventPayloads", + "preserveMemberOrder": false, + "members": [ + { + "kind": "PropertySignature", + "canonicalReference": "server!EntityEventPayloads#\"ENTITY.BLOCK_COLLISION\":member", + "docComment": "/**\n * Emitted when an entity collides with a block type.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "[" + }, + { + "kind": "Reference", + "text": "EntityEvent.BLOCK_COLLISION", + "canonicalReference": "server!EntityEvent.BLOCK_COLLISION:member" + }, + { + "kind": "Content", + "text": "]: " + }, + { "kind": "Content", "text": "{\n entity: " }, @@ -18711,16 +19336,16 @@ }, { "kind": "Content", - "text": ";\n tintColor: " + "text": ";\n blockType: " }, { "kind": "Reference", - "text": "RgbColor", - "canonicalReference": "server!RgbColor:interface" + "text": "BlockType", + "canonicalReference": "server!BlockType:class" }, { "kind": "Content", - "text": " | undefined;\n }" + "text": ";\n started: boolean;\n colliderHandleA: number;\n colliderHandleB: number;\n }" }, { "kind": "Content", @@ -18730,7 +19355,7 @@ "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "\"ENTITY.SET_TINT_COLOR\"", + "name": "\"ENTITY.BLOCK_COLLISION\"", "propertyTypeTokenRange": { "startIndex": 3, "endIndex": 8 @@ -18738,8 +19363,8 @@ }, { "kind": "PropertySignature", - "canonicalReference": "server!EntityEventPayloads#\"ENTITY.SPAWN\":member", - "docComment": "/**\n * Emitted when the entity is spawned.\n */\n", + "canonicalReference": "server!EntityEventPayloads#\"ENTITY.BLOCK_CONTACT_FORCE\":member", + "docComment": "/**\n * Emitted when an entity's contact force is applied to a block type.\n */\n", "excerptTokens": [ { "kind": "Content", @@ -18747,8 +19372,8 @@ }, { "kind": "Reference", - "text": "EntityEvent.SPAWN", - "canonicalReference": "server!EntityEvent.SPAWN:member" + "text": "EntityEvent.BLOCK_CONTACT_FORCE", + "canonicalReference": "server!EntityEvent.BLOCK_CONTACT_FORCE:member" }, { "kind": "Content", @@ -18763,6 +19388,24 @@ "text": "Entity", "canonicalReference": "server!Entity:class" }, + { + "kind": "Content", + "text": ";\n blockType: " + }, + { + "kind": "Reference", + "text": "BlockType", + "canonicalReference": "server!BlockType:class" + }, + { + "kind": "Content", + "text": ";\n contactForceData: " + }, + { + "kind": "Reference", + "text": "ContactForceData", + "canonicalReference": "server!ContactForceData:type" + }, { "kind": "Content", "text": ";\n }" @@ -18775,16 +19418,16 @@ "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "\"ENTITY.SPAWN\"", + "name": "\"ENTITY.BLOCK_CONTACT_FORCE\"", "propertyTypeTokenRange": { "startIndex": 3, - "endIndex": 6 + "endIndex": 10 } }, { "kind": "PropertySignature", - "canonicalReference": "server!EntityEventPayloads#\"ENTITY.TICK\":member", - "docComment": "/**\n * Emitted when the entity is ticked.\n */\n", + "canonicalReference": "server!EntityEventPayloads#\"ENTITY.DESPAWN\":member", + "docComment": "/**\n * Emitted when an entity is despawned.\n */\n", "excerptTokens": [ { "kind": "Content", @@ -18792,8 +19435,8 @@ }, { "kind": "Reference", - "text": "EntityEvent.TICK", - "canonicalReference": "server!EntityEvent.TICK:member" + "text": "EntityEvent.DESPAWN", + "canonicalReference": "server!EntityEvent.DESPAWN:member" }, { "kind": "Content", @@ -18810,7 +19453,7 @@ }, { "kind": "Content", - "text": ";\n tickDeltaMs: number;\n }" + "text": ";\n }" }, { "kind": "Content", @@ -18820,7 +19463,7 @@ "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "\"ENTITY.TICK\"", + "name": "\"ENTITY.DESPAWN\"", "propertyTypeTokenRange": { "startIndex": 3, "endIndex": 6 @@ -18828,8 +19471,8 @@ }, { "kind": "PropertySignature", - "canonicalReference": "server!EntityEventPayloads#\"ENTITY.UPDATE_POSITION\":member", - "docComment": "/**\n * Emitted when the position of the entity is updated at the end of the tick, either directly or by physics.\n */\n", + "canonicalReference": "server!EntityEventPayloads#\"ENTITY.ENTITY_COLLISION\":member", + "docComment": "/**\n * Emitted when an entity collides with another entity.\n */\n", "excerptTokens": [ { "kind": "Content", @@ -18837,8 +19480,8 @@ }, { "kind": "Reference", - "text": "EntityEvent.UPDATE_POSITION", - "canonicalReference": "server!EntityEvent.UPDATE_POSITION:member" + "text": "EntityEvent.ENTITY_COLLISION", + "canonicalReference": "server!EntityEvent.ENTITY_COLLISION:member" }, { "kind": "Content", @@ -18855,16 +19498,16 @@ }, { "kind": "Content", - "text": ";\n position: " + "text": ";\n otherEntity: " }, { "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "text": "Entity", + "canonicalReference": "server!Entity:class" }, { "kind": "Content", - "text": ";\n }" + "text": ";\n started: boolean;\n colliderHandleA: number;\n colliderHandleB: number;\n }" }, { "kind": "Content", @@ -18874,7 +19517,7 @@ "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "\"ENTITY.UPDATE_POSITION\"", + "name": "\"ENTITY.ENTITY_COLLISION\"", "propertyTypeTokenRange": { "startIndex": 3, "endIndex": 8 @@ -18882,8 +19525,8 @@ }, { "kind": "PropertySignature", - "canonicalReference": "server!EntityEventPayloads#\"ENTITY.UPDATE_ROTATION\":member", - "docComment": "/**\n * Emitted when the rotation of the entity is updated at the end of the tick, either directly or by physics.\n */\n", + "canonicalReference": "server!EntityEventPayloads#\"ENTITY.ENTITY_CONTACT_FORCE\":member", + "docComment": "/**\n * Emitted when an entity's contact force is applied to another entity.\n */\n", "excerptTokens": [ { "kind": "Content", @@ -18891,8 +19534,8 @@ }, { "kind": "Reference", - "text": "EntityEvent.UPDATE_ROTATION", - "canonicalReference": "server!EntityEvent.UPDATE_ROTATION:member" + "text": "EntityEvent.ENTITY_CONTACT_FORCE", + "canonicalReference": "server!EntityEvent.ENTITY_CONTACT_FORCE:member" }, { "kind": "Content", @@ -18909,12 +19552,21 @@ }, { "kind": "Content", - "text": ";\n rotation: " + "text": ";\n otherEntity: " }, { "kind": "Reference", - "text": "QuaternionLike", - "canonicalReference": "server!QuaternionLike:interface" + "text": "Entity", + "canonicalReference": "server!Entity:class" + }, + { + "kind": "Content", + "text": ";\n contactForceData: " + }, + { + "kind": "Reference", + "text": "ContactForceData", + "canonicalReference": "server!ContactForceData:type" }, { "kind": "Content", @@ -18928,69 +19580,33 @@ "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "\"ENTITY.UPDATE_ROTATION\"", + "name": "\"ENTITY.ENTITY_CONTACT_FORCE\"", "propertyTypeTokenRange": { "startIndex": 3, - "endIndex": 8 + "endIndex": 10 } - } - ], - "extendsTokenRanges": [] - }, - { - "kind": "Class", - "canonicalReference": "server!EntityManager:class", - "docComment": "/**\n * Manages entities in a world.\n *\n * When to use: querying and filtering entities within a specific world. Do NOT use for: cross-world queries; access each world's manager separately.\n *\n * @remarks\n *\n * The EntityManager is created internally per `World` instance.\n *\n * The constructor for this class is marked as internal. Third-party code should not call the constructor directly or create subclasses that extend the `EntityManager` class.\n *\n * @example\n * ```typescript\n * // Get all entities in the world\n * const entityManager = world.entityManager;\n * const entities = entityManager.getAllEntities();\n * ```\n *\n * **Category:** Entities\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export default class EntityManager " - } - ], - "fileUrlPath": "src/worlds/entities/EntityManager.ts", - "releaseTag": "Public", - "isAbstract": false, - "name": "EntityManager", - "preserveMemberOrder": false, - "members": [ + }, { - "kind": "Property", - "canonicalReference": "server!EntityManager#entityCount:member", - "docComment": "/**\n * The number of spawned entities in the world.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!EntityEventPayloads#\"ENTITY.INTERACT\":member", + "docComment": "/**\n * Emitted when a player interacts with the entity by clicking or tapping it.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get entityCount(): " - }, - { - "kind": "Content", - "text": "number" + "text": "[" + }, + { + "kind": "Reference", + "text": "EntityEvent.INTERACT", + "canonicalReference": "server!EntityEvent.INTERACT:member" }, { "kind": "Content", - "text": ";" - } - ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "entityCount", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false - }, - { - "kind": "Method", - "canonicalReference": "server!EntityManager#getAllEntities:member(1)", - "docComment": "/**\n * Gets all spawned entities in the world.\n *\n * @returns All spawned entities in the world.\n *\n * **Category:** Entities\n */\n", - "excerptTokens": [ + "text": "]: " + }, { "kind": "Content", - "text": "getAllEntities(): " + "text": "{\n entity: " }, { "kind": "Reference", @@ -18999,78 +19615,61 @@ }, { "kind": "Content", - "text": "[]" + "text": ";\n player: " }, { - "kind": "Content", - "text": ";" - } - ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 1, - "endIndex": 3 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [], - "isOptional": false, - "isAbstract": false, - "name": "getAllEntities" - }, - { - "kind": "Method", - "canonicalReference": "server!EntityManager#getAllPlayerEntities:member(1)", - "docComment": "/**\n * Gets all spawned player entities in the world.\n *\n * @returns All spawned player entities in the world.\n *\n * **Category:** Entities\n */\n", - "excerptTokens": [ + "kind": "Reference", + "text": "Player", + "canonicalReference": "server!Player:class" + }, { "kind": "Content", - "text": "getAllPlayerEntities(): " + "text": ";\n raycastHit?: " }, { "kind": "Reference", - "text": "PlayerEntity", - "canonicalReference": "server!PlayerEntity:class" + "text": "RaycastHit", + "canonicalReference": "server!RaycastHit:type" }, { "kind": "Content", - "text": "[]" + "text": ";\n }" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 1, - "endIndex": 3 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [], + "isReadonly": false, "isOptional": false, - "isAbstract": false, - "name": "getAllPlayerEntities" + "releaseTag": "Public", + "name": "\"ENTITY.INTERACT\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 10 + } }, { - "kind": "Method", - "canonicalReference": "server!EntityManager#getEntitiesByTag:member(1)", - "docComment": "/**\n * Gets all spawned entities in the world with a specific tag.\n *\n * @param tag - The tag to get the entities for.\n *\n * @returns All spawned entities in the world with the provided tag.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!EntityEventPayloads#\"ENTITY.REMOVE_MODEL_NODE_OVERRIDE\":member", + "docComment": "/**\n * Emitted when a model node override is removed from the entity's model.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "getEntitiesByTag(tag: " + "text": "[" + }, + { + "kind": "Reference", + "text": "EntityEvent.REMOVE_MODEL_NODE_OVERRIDE", + "canonicalReference": "server!EntityEvent.REMOVE_MODEL_NODE_OVERRIDE:member" }, { "kind": "Content", - "text": "string" + "text": "]: " }, { "kind": "Content", - "text": "): " + "text": "{\n entity: " }, { "kind": "Reference", @@ -19079,51 +19678,52 @@ }, { "kind": "Content", - "text": "[]" + "text": ";\n entityModelNodeOverride: " + }, + { + "kind": "Reference", + "text": "EntityModelNodeOverride", + "canonicalReference": "server!EntityModelNodeOverride:class" }, { "kind": "Content", - "text": ";" - } - ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 5 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ + "text": ";\n }" + }, { - "parameterName": "tag", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false + "kind": "Content", + "text": ";" } ], + "isReadonly": false, "isOptional": false, - "isAbstract": false, - "name": "getEntitiesByTag" + "releaseTag": "Public", + "name": "\"ENTITY.REMOVE_MODEL_NODE_OVERRIDE\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 8 + } }, { - "kind": "Method", - "canonicalReference": "server!EntityManager#getEntitiesByTagSubstring:member(1)", - "docComment": "/**\n * Gets all spawned entities in the world with a tag that includes a specific substring.\n *\n * @param tagSubstring - The tag substring to get the entities for.\n *\n * @returns All spawned entities in the world with a tag that includes the provided substring.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!EntityEventPayloads#\"ENTITY.SET_BLOCK_TEXTURE_URI\":member", + "docComment": "/**\n * Emitted when the texture uri of a block entity is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "getEntitiesByTagSubstring(tagSubstring: " + "text": "[" + }, + { + "kind": "Reference", + "text": "EntityEvent.SET_BLOCK_TEXTURE_URI", + "canonicalReference": "server!EntityEvent.SET_BLOCK_TEXTURE_URI:member" }, { "kind": "Content", - "text": "string" + "text": "]: " }, { "kind": "Content", - "text": "): " + "text": "{\n entity: " }, { "kind": "Reference", @@ -19132,122 +19732,97 @@ }, { "kind": "Content", - "text": "[]" + "text": ";\n blockTextureUri: string | undefined;\n }" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 5 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "tagSubstring", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], + "isReadonly": false, "isOptional": false, - "isAbstract": false, - "name": "getEntitiesByTagSubstring" + "releaseTag": "Public", + "name": "\"ENTITY.SET_BLOCK_TEXTURE_URI\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 6 + } }, { - "kind": "Method", - "canonicalReference": "server!EntityManager#getEntity:member(1)", - "docComment": "/**\n * Gets a spawned entity in the world by its ID.\n *\n * @param id - The ID of the entity to get.\n *\n * @returns The spawned entity with the provided ID, or undefined if no entity is found.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!EntityEventPayloads#\"ENTITY.SET_EMISSIVE_COLOR\":member", + "docComment": "/**\n * Emitted when the emissive color is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "getEntity(id: " + "text": "]: " }, { "kind": "Content", - "text": "number" + "text": "{\n entity: " + }, + { + "kind": "Reference", + "text": "Entity", + "canonicalReference": "server!Entity:class" }, { "kind": "Content", - "text": "): " + "text": ";\n emissiveColor: " + }, + { + "kind": "Reference", + "text": "RgbColor", + "canonicalReference": "server!RgbColor:interface" }, { "kind": "Content", - "text": "T | undefined" + "text": " | undefined;\n }" }, { "kind": "Content", "text": ";" } ], - "typeParameters": [ - { - "typeParameterName": "T", - "constraintTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "defaultTypeTokenRange": { - "startIndex": 0, - "endIndex": 0 - } - } - ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 5, - "endIndex": 6 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "id", - "parameterTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "isOptional": false - } - ], + "isReadonly": false, "isOptional": false, - "isAbstract": false, - "name": "getEntity" + "releaseTag": "Public", + "name": "\"ENTITY.SET_EMISSIVE_COLOR\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 8 + } }, { - "kind": "Method", - "canonicalReference": "server!EntityManager#getEntityChildren:member(1)", - "docComment": "/**\n * Gets all child entities of an entity.\n *\n * @remarks\n *\n * Direct children only; does not include recursive descendants.\n *\n * @param entity - The entity to get the children for.\n *\n * @returns All direct child entities of the entity.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!EntityEventPayloads#\"ENTITY.SET_EMISSIVE_INTENSITY\":member", + "docComment": "/**\n * Emitted when the emissive intensity is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "getEntityChildren(entity: " + "text": "[" }, { "kind": "Reference", - "text": "Entity", - "canonicalReference": "server!Entity:class" + "text": "EntityEvent.SET_EMISSIVE_INTENSITY", + "canonicalReference": "server!EntityEvent.SET_EMISSIVE_INTENSITY:member" }, { "kind": "Content", - "text": "): " + "text": "]: " + }, + { + "kind": "Content", + "text": "{\n entity: " }, { "kind": "Reference", @@ -19256,772 +19831,816 @@ }, { "kind": "Content", - "text": "[]" + "text": ";\n emissiveIntensity: number | undefined;\n }" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 5 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "entity", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], + "isReadonly": false, "isOptional": false, - "isAbstract": false, - "name": "getEntityChildren" + "releaseTag": "Public", + "name": "\"ENTITY.SET_EMISSIVE_INTENSITY\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 6 + } }, { - "kind": "Method", - "canonicalReference": "server!EntityManager#getPlayerEntitiesByPlayer:member(1)", - "docComment": "/**\n * Gets all spawned player entities in the world assigned to the provided player.\n *\n * @param player - The player to get the entities for.\n *\n * @returns All spawned player entities in the world assigned to the player.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!EntityEventPayloads#\"ENTITY.SET_MODEL_SCALE_INTERPOLATION_MS\":member", + "docComment": "/**\n * Emitted when the interpolation time in milliseconds applied to model scale changes is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "getPlayerEntitiesByPlayer(player: " + "text": "[" }, { "kind": "Reference", - "text": "Player", - "canonicalReference": "server!Player:class" + "text": "EntityEvent.SET_MODEL_SCALE_INTERPOLATION_MS", + "canonicalReference": "server!EntityEvent.SET_MODEL_SCALE_INTERPOLATION_MS:member" }, { "kind": "Content", - "text": "): " + "text": "]: " + }, + { + "kind": "Content", + "text": "{\n entity: " }, { "kind": "Reference", - "text": "PlayerEntity", - "canonicalReference": "server!PlayerEntity:class" + "text": "Entity", + "canonicalReference": "server!Entity:class" }, { "kind": "Content", - "text": "[]" + "text": ";\n interpolationMs: number | undefined;\n }" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 5 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "player", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], + "isReadonly": false, "isOptional": false, - "isAbstract": false, - "name": "getPlayerEntitiesByPlayer" + "releaseTag": "Public", + "name": "\"ENTITY.SET_MODEL_SCALE_INTERPOLATION_MS\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 6 + } }, { - "kind": "Property", - "canonicalReference": "server!EntityManager#world:member", - "docComment": "/**\n * The world this manager is for.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!EntityEventPayloads#\"ENTITY.SET_MODEL_SCALE\":member", + "docComment": "/**\n * Emitted when the scale of the entity's model is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get world(): " + "text": "[" }, { "kind": "Reference", - "text": "World", - "canonicalReference": "server!World:class" + "text": "EntityEvent.SET_MODEL_SCALE", + "canonicalReference": "server!EntityEvent.SET_MODEL_SCALE:member" }, { "kind": "Content", - "text": ";" - } - ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "world", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false - } - ], - "implementsTokenRanges": [] - }, - { - "kind": "Class", - "canonicalReference": "server!EntityModelAnimation:class", - "docComment": "/**\n * Represents a single animation of the model used for an Entity.\n *\n * When to use: controlling individual animation playback, blending, and looping on model entities. Do NOT use for: block entities (they have no model animations).\n *\n * @remarks\n *\n * EntityModelAnimation instances are composed by an Entity and represent a single animation clip from the entity's model. Events are emitted through the parent Entity's event router and its world.\n *\n *

Events

\n *\n * Events emitted by this class are listed under `EntityModelAnimationEventPayloads`. They are emitted via the parent entity's event router.\n *\n * @example\n * ```typescript\n * const walkAnimation = entity.getModelAnimation('walk');\n * walkAnimation.setLoopMode(EntityModelAnimationLoopMode.LOOP);\n * walkAnimation.play();\n * walkAnimation.setPlaybackRate(2);\n * ```\n *\n * **Category:** Entities\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export default class EntityModelAnimation implements " - }, - { - "kind": "Reference", - "text": "protocol.Serializable", - "canonicalReference": "@hytopia.com/server-protocol!Serializable:interface" - }, - { - "kind": "Content", - "text": " " - } - ], - "fileUrlPath": "src/worlds/entities/EntityModelAnimation.ts", - "releaseTag": "Public", - "isAbstract": false, - "name": "EntityModelAnimation", - "preserveMemberOrder": false, - "members": [ - { - "kind": "Constructor", - "canonicalReference": "server!EntityModelAnimation:constructor(1)", - "docComment": "/**\n * Creates a new EntityModelAnimation instance.\n *\n * @param options - The options for the entity model animation.\n *\n * **Category:** Entities\n */\n", - "excerptTokens": [ + "text": "]: " + }, { "kind": "Content", - "text": "constructor(options: " + "text": "{\n entity: " }, { "kind": "Reference", - "text": "EntityModelAnimationOptions", - "canonicalReference": "server!EntityModelAnimationOptions:interface" + "text": "Entity", + "canonicalReference": "server!Entity:class" }, { "kind": "Content", - "text": ");" - } - ], - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "options", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ] - }, - { - "kind": "Property", - "canonicalReference": "server!EntityModelAnimation#blendMode:member", - "docComment": "/**\n * The blend mode of the entity model animation.\n *\n * **Category:** Entities\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "get blendMode(): " + "text": ";\n modelScale: " }, { "kind": "Reference", - "text": "EntityModelAnimationBlendMode", - "canonicalReference": "server!EntityModelAnimationBlendMode:enum" + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" + }, + { + "kind": "Content", + "text": ";\n }" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, + "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "blendMode", + "name": "\"ENTITY.SET_MODEL_SCALE\"", "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "startIndex": 3, + "endIndex": 8 + } }, { - "kind": "Property", - "canonicalReference": "server!EntityModelAnimation#clampWhenFinished:member", - "docComment": "/**\n * Whether the animation should clamp when finished, holding the last frame.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!EntityEventPayloads#\"ENTITY.SET_MODEL_TEXTURE_URI\":member", + "docComment": "/**\n * Emitted when the texture uri of the entity's model is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get clampWhenFinished(): " + "text": "[" }, { - "kind": "Content", - "text": "boolean" + "kind": "Reference", + "text": "EntityEvent.SET_MODEL_TEXTURE_URI", + "canonicalReference": "server!EntityEvent.SET_MODEL_TEXTURE_URI:member" }, { "kind": "Content", - "text": ";" - } - ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "clampWhenFinished", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false - }, - { - "kind": "Property", - "canonicalReference": "server!EntityModelAnimation#entity:member", - "docComment": "/**\n * The entity that the entity model animation belongs to.\n *\n * **Category:** Entities\n */\n", - "excerptTokens": [ + "text": "]: " + }, { "kind": "Content", - "text": "get entity(): " + "text": "{\n entity: " }, { "kind": "Reference", "text": "Entity", "canonicalReference": "server!Entity:class" }, + { + "kind": "Content", + "text": ";\n modelTextureUri: string | undefined;\n }" + }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, + "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "entity", + "name": "\"ENTITY.SET_MODEL_TEXTURE_URI\"", "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "startIndex": 3, + "endIndex": 6 + } }, { - "kind": "Property", - "canonicalReference": "server!EntityModelAnimation#fadesIn:member", - "docComment": "/**\n * Whether the animation fades in when played or restarted.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!EntityEventPayloads#\"ENTITY.SET_OPACITY\":member", + "docComment": "/**\n * Emitted when the opacity of the entity is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get fadesIn(): " + "text": "[" + }, + { + "kind": "Reference", + "text": "EntityEvent.SET_OPACITY", + "canonicalReference": "server!EntityEvent.SET_OPACITY:member" }, { "kind": "Content", - "text": "boolean" + "text": "]: " + }, + { + "kind": "Content", + "text": "{\n entity: " + }, + { + "kind": "Reference", + "text": "Entity", + "canonicalReference": "server!Entity:class" + }, + { + "kind": "Content", + "text": ";\n opacity: number;\n }" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, + "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "fadesIn", + "name": "\"ENTITY.SET_OPACITY\"", "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "startIndex": 3, + "endIndex": 6 + } }, { - "kind": "Property", - "canonicalReference": "server!EntityModelAnimation#fadesOut:member", - "docComment": "/**\n * Whether the animation fades out when paused or stopped.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!EntityEventPayloads#\"ENTITY.SET_OUTLINE\":member", + "docComment": "/**\n * Emitted when the outline of the entity is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get fadesOut(): " + "text": "[" + }, + { + "kind": "Reference", + "text": "EntityEvent.SET_OUTLINE", + "canonicalReference": "server!EntityEvent.SET_OUTLINE:member" }, { "kind": "Content", - "text": "boolean" + "text": "]: " }, { "kind": "Content", - "text": ";" - } - ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "fadesOut", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false - }, - { - "kind": "Property", - "canonicalReference": "server!EntityModelAnimation#isPaused:member", - "docComment": "/**\n * Whether the animation is currently paused.\n *\n * **Category:** Entities\n */\n", - "excerptTokens": [ + "text": "{\n entity: " + }, + { + "kind": "Reference", + "text": "Entity", + "canonicalReference": "server!Entity:class" + }, { "kind": "Content", - "text": "get isPaused(): " + "text": ";\n outline: " + }, + { + "kind": "Reference", + "text": "Outline", + "canonicalReference": "server!Outline:interface" }, { "kind": "Content", - "text": "boolean" + "text": " | undefined;\n forPlayer?: " + }, + { + "kind": "Reference", + "text": "Player", + "canonicalReference": "server!Player:class" + }, + { + "kind": "Content", + "text": ";\n }" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, + "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "isPaused", + "name": "\"ENTITY.SET_OUTLINE\"", "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "startIndex": 3, + "endIndex": 10 + } }, { - "kind": "Property", - "canonicalReference": "server!EntityModelAnimation#isPlaying:member", - "docComment": "/**\n * Whether the animation is currently playing.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!EntityEventPayloads#\"ENTITY.SET_PARENT\":member", + "docComment": "/**\n * Emitted when the parent of the entity is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get isPlaying(): " + "text": "[" + }, + { + "kind": "Reference", + "text": "EntityEvent.SET_PARENT", + "canonicalReference": "server!EntityEvent.SET_PARENT:member" }, { "kind": "Content", - "text": "boolean" + "text": "]: " }, { "kind": "Content", - "text": ";" - } - ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "isPlaying", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false - }, - { - "kind": "Property", - "canonicalReference": "server!EntityModelAnimation#isStopped:member", - "docComment": "/**\n * Whether the animation is currently stopped.\n *\n * **Category:** Entities\n */\n", - "excerptTokens": [ + "text": "{\n entity: " + }, + { + "kind": "Reference", + "text": "Entity", + "canonicalReference": "server!Entity:class" + }, { "kind": "Content", - "text": "get isStopped(): " + "text": ";\n parent: " + }, + { + "kind": "Reference", + "text": "Entity", + "canonicalReference": "server!Entity:class" }, { "kind": "Content", - "text": "boolean" + "text": " | undefined;\n parentNodeName: string | undefined;\n }" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, + "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "isStopped", + "name": "\"ENTITY.SET_PARENT\"", "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "startIndex": 3, + "endIndex": 8 + } }, { - "kind": "Property", - "canonicalReference": "server!EntityModelAnimation#loopMode:member", - "docComment": "/**\n * The loop mode of the entity model animation.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!EntityEventPayloads#\"ENTITY.SET_POSITION_INTERPOLATION_MS\":member", + "docComment": "/**\n * Emitted when the interpolation time in milliseconds applied to position changes is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get loopMode(): " + "text": "[" }, { "kind": "Reference", - "text": "EntityModelAnimationLoopMode", - "canonicalReference": "server!EntityModelAnimationLoopMode:enum" + "text": "EntityEvent.SET_POSITION_INTERPOLATION_MS", + "canonicalReference": "server!EntityEvent.SET_POSITION_INTERPOLATION_MS:member" }, { "kind": "Content", - "text": ";" - } - ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "loopMode", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false - }, - { - "kind": "Property", - "canonicalReference": "server!EntityModelAnimation#name:member", - "docComment": "/**\n * The name of the entity model animation.\n *\n * @remarks\n *\n * This is the name of the animation as defined in the model.\n *\n * **Category:** Entities\n */\n", - "excerptTokens": [ + "text": "]: " + }, { "kind": "Content", - "text": "get name(): " + "text": "{\n entity: " + }, + { + "kind": "Reference", + "text": "Entity", + "canonicalReference": "server!Entity:class" }, { "kind": "Content", - "text": "string" + "text": ";\n interpolationMs: number | undefined;\n }" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, + "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "name", + "name": "\"ENTITY.SET_POSITION_INTERPOLATION_MS\"", "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "startIndex": 3, + "endIndex": 6 + } }, { - "kind": "Method", - "canonicalReference": "server!EntityModelAnimation#pause:member(1)", - "docComment": "/**\n * Pauses the entity model animation, does nothing if already paused.\n *\n * **Side effects:** Emits `EntityModelAnimationEvent.PAUSE` when spawned.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!EntityEventPayloads#\"ENTITY.SET_ROTATION_INTERPOLATION_MS\":member", + "docComment": "/**\n * Emitted when the interpolation time in milliseconds applied to rotation changes is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "pause(): " + "text": "[" }, { - "kind": "Content", - "text": "void" + "kind": "Reference", + "text": "EntityEvent.SET_ROTATION_INTERPOLATION_MS", + "canonicalReference": "server!EntityEvent.SET_ROTATION_INTERPOLATION_MS:member" }, { "kind": "Content", - "text": ";" - } - ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [], - "isOptional": false, - "isAbstract": false, - "name": "pause" - }, - { - "kind": "Method", - "canonicalReference": "server!EntityModelAnimation#play:member(1)", - "docComment": "/**\n * Plays the entity model animation, does nothing if already playing.\n *\n * **Side effects:** Emits `EntityModelAnimationEvent.PLAY` when spawned.\n *\n * **Category:** Entities\n */\n", - "excerptTokens": [ + "text": "]: " + }, { "kind": "Content", - "text": "play(): " + "text": "{\n entity: " + }, + { + "kind": "Reference", + "text": "Entity", + "canonicalReference": "server!Entity:class" }, { "kind": "Content", - "text": "void" + "text": ";\n interpolationMs: number | undefined;\n }" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [], + "isReadonly": false, "isOptional": false, - "isAbstract": false, - "name": "play" + "releaseTag": "Public", + "name": "\"ENTITY.SET_ROTATION_INTERPOLATION_MS\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 6 + } }, { - "kind": "Property", - "canonicalReference": "server!EntityModelAnimation#playbackRate:member", - "docComment": "/**\n * The playback rate of the entity model animation.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!EntityEventPayloads#\"ENTITY.SET_TINT_COLOR\":member", + "docComment": "/**\n * Emitted when the tint color of the entity is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get playbackRate(): " + "text": "[" + }, + { + "kind": "Reference", + "text": "EntityEvent.SET_TINT_COLOR", + "canonicalReference": "server!EntityEvent.SET_TINT_COLOR:member" }, { "kind": "Content", - "text": "number" + "text": "]: " }, { "kind": "Content", - "text": ";" - } - ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "playbackRate", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false - }, - { - "kind": "Method", - "canonicalReference": "server!EntityModelAnimation#restart:member(1)", - "docComment": "/**\n * Restarts the entity model animation from the beginning.\n *\n * @remarks\n *\n * Unlike `play()`, this always emits even if the animation is already playing, allowing the animation to restart from the beginning.\n *\n * **Side effects:** Emits `EntityModelAnimationEvent.RESTART` when spawned.\n *\n * **Category:** Entities\n */\n", - "excerptTokens": [ + "text": "{\n entity: " + }, + { + "kind": "Reference", + "text": "Entity", + "canonicalReference": "server!Entity:class" + }, { "kind": "Content", - "text": "restart(): " + "text": ";\n tintColor: " + }, + { + "kind": "Reference", + "text": "RgbColor", + "canonicalReference": "server!RgbColor:interface" }, { "kind": "Content", - "text": "void" + "text": " | undefined;\n }" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [], + "isReadonly": false, "isOptional": false, - "isAbstract": false, - "name": "restart" + "releaseTag": "Public", + "name": "\"ENTITY.SET_TINT_COLOR\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 8 + } }, { - "kind": "Method", - "canonicalReference": "server!EntityModelAnimation#setBlendMode:member(1)", - "docComment": "/**\n * Sets the blend mode of the entity model animation.\n *\n * @param blendMode - The blend mode of the entity model animation.\n *\n * **Side effects:** Emits `EntityModelAnimationEvent.SET_BLEND_MODE` when spawned.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!EntityEventPayloads#\"ENTITY.SPAWN\":member", + "docComment": "/**\n * Emitted when the entity is spawned.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setBlendMode(blendMode: " + "text": "[" }, { "kind": "Reference", - "text": "EntityModelAnimationBlendMode", - "canonicalReference": "server!EntityModelAnimationBlendMode:enum" + "text": "EntityEvent.SPAWN", + "canonicalReference": "server!EntityEvent.SPAWN:member" }, { "kind": "Content", - "text": "): " + "text": "]: " }, { "kind": "Content", - "text": "void" + "text": "{\n entity: " + }, + { + "kind": "Reference", + "text": "Entity", + "canonicalReference": "server!Entity:class" }, { "kind": "Content", - "text": ";" - } - ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ + "text": ";\n }" + }, { - "parameterName": "blendMode", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false + "kind": "Content", + "text": ";" } ], + "isReadonly": false, "isOptional": false, - "isAbstract": false, - "name": "setBlendMode" + "releaseTag": "Public", + "name": "\"ENTITY.SPAWN\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 6 + } }, { - "kind": "Method", - "canonicalReference": "server!EntityModelAnimation#setClampWhenFinished:member(1)", - "docComment": "/**\n * Sets whether the animation should clamp when finished, holding the last frame.\n *\n * @param clampWhenFinished - Whether to clamp when finished.\n *\n * **Side effects:** Emits `EntityModelAnimationEvent.SET_CLAMP_WHEN_FINISHED` when spawned.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!EntityEventPayloads#\"ENTITY.TICK\":member", + "docComment": "/**\n * Emitted when the entity is ticked.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setClampWhenFinished(clampWhenFinished: " + "text": "[" + }, + { + "kind": "Reference", + "text": "EntityEvent.TICK", + "canonicalReference": "server!EntityEvent.TICK:member" }, { "kind": "Content", - "text": "boolean" + "text": "]: " }, { "kind": "Content", - "text": "): " + "text": "{\n entity: " + }, + { + "kind": "Reference", + "text": "Entity", + "canonicalReference": "server!Entity:class" }, { "kind": "Content", - "text": "void" + "text": ";\n tickDeltaMs: number;\n }" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "clampWhenFinished", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], + "isReadonly": false, "isOptional": false, - "isAbstract": false, - "name": "setClampWhenFinished" + "releaseTag": "Public", + "name": "\"ENTITY.TICK\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 6 + } }, { - "kind": "Method", - "canonicalReference": "server!EntityModelAnimation#setFadesIn:member(1)", - "docComment": "/**\n * Sets whether the animation fades in when played or restarted.\n *\n * @param fadesIn - Whether the animation should fade in when played or restarted.\n *\n * **Side effects:** Emits `EntityModelAnimationEvent.SET_FADES_IN` when spawned.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!EntityEventPayloads#\"ENTITY.UPDATE_POSITION\":member", + "docComment": "/**\n * Emitted when the position of the entity is updated at the end of the tick, either directly or by physics.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setFadesIn(fadesIn: " + "text": "[" + }, + { + "kind": "Reference", + "text": "EntityEvent.UPDATE_POSITION", + "canonicalReference": "server!EntityEvent.UPDATE_POSITION:member" }, { "kind": "Content", - "text": "boolean" + "text": "]: " }, { "kind": "Content", - "text": "): " + "text": "{\n entity: " + }, + { + "kind": "Reference", + "text": "Entity", + "canonicalReference": "server!Entity:class" }, { "kind": "Content", - "text": "void" + "text": ";\n position: " + }, + { + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" + }, + { + "kind": "Content", + "text": ";\n }" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { + "isReadonly": false, + "isOptional": false, + "releaseTag": "Public", + "name": "\"ENTITY.UPDATE_POSITION\"", + "propertyTypeTokenRange": { "startIndex": 3, - "endIndex": 4 + "endIndex": 8 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!EntityEventPayloads#\"ENTITY.UPDATE_ROTATION\":member", + "docComment": "/**\n * Emitted when the rotation of the entity is updated at the end of the tick, either directly or by physics.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "[" + }, + { + "kind": "Reference", + "text": "EntityEvent.UPDATE_ROTATION", + "canonicalReference": "server!EntityEvent.UPDATE_ROTATION:member" + }, + { + "kind": "Content", + "text": "]: " + }, + { + "kind": "Content", + "text": "{\n entity: " + }, + { + "kind": "Reference", + "text": "Entity", + "canonicalReference": "server!Entity:class" + }, + { + "kind": "Content", + "text": ";\n rotation: " + }, + { + "kind": "Reference", + "text": "QuaternionLike", + "canonicalReference": "server!QuaternionLike:interface" + }, + { + "kind": "Content", + "text": ";\n }" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": false, + "releaseTag": "Public", + "name": "\"ENTITY.UPDATE_ROTATION\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 8 + } + } + ], + "extendsTokenRanges": [] + }, + { + "kind": "Class", + "canonicalReference": "server!EntityManager:class", + "docComment": "/**\n * Manages entities in a world.\n *\n * When to use: querying and filtering entities within a specific world. Do NOT use for: cross-world queries; access each world's manager separately.\n *\n * @remarks\n *\n * The EntityManager is created internally per `World` instance.\n *\n * The constructor for this class is marked as internal. Third-party code should not call the constructor directly or create subclasses that extend the `EntityManager` class.\n *\n * @example\n * ```typescript\n * // Get all entities in the world\n * const entityManager = world.entityManager;\n * const entities = entityManager.getAllEntities();\n * ```\n *\n * **Category:** Entities\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export default class EntityManager " + } + ], + "fileUrlPath": "src/worlds/entities/EntityManager.ts", + "releaseTag": "Public", + "isAbstract": false, + "name": "EntityManager", + "preserveMemberOrder": false, + "members": [ + { + "kind": "Property", + "canonicalReference": "server!EntityManager#entityCount:member", + "docComment": "/**\n * The number of spawned entities in the world.\n *\n * **Category:** Entities\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "get entityCount(): " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "entityCount", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false + }, + { + "kind": "Method", + "canonicalReference": "server!EntityManager#getAllEntities:member(1)", + "docComment": "/**\n * Gets all spawned entities in the world.\n *\n * @returns All spawned entities in the world.\n *\n * **Category:** Entities\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "getAllEntities(): " + }, + { + "kind": "Reference", + "text": "Entity", + "canonicalReference": "server!Entity:class" + }, + { + "kind": "Content", + "text": "[]" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 1, + "endIndex": 3 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, - "parameters": [ + "parameters": [], + "isOptional": false, + "isAbstract": false, + "name": "getAllEntities" + }, + { + "kind": "Method", + "canonicalReference": "server!EntityManager#getAllPlayerEntities:member(1)", + "docComment": "/**\n * Gets all spawned player entities in the world.\n *\n * @returns All spawned player entities in the world.\n *\n * **Category:** Entities\n */\n", + "excerptTokens": [ { - "parameterName": "fadesIn", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false + "kind": "Content", + "text": "getAllPlayerEntities(): " + }, + { + "kind": "Reference", + "text": "PlayerEntity", + "canonicalReference": "server!PlayerEntity:class" + }, + { + "kind": "Content", + "text": "[]" + }, + { + "kind": "Content", + "text": ";" } ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 1, + "endIndex": 3 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [], "isOptional": false, "isAbstract": false, - "name": "setFadesIn" + "name": "getAllPlayerEntities" }, { "kind": "Method", - "canonicalReference": "server!EntityModelAnimation#setFadesOut:member(1)", - "docComment": "/**\n * Sets whether the animation fades out when paused or stopped.\n *\n * @param fadesOut - Whether the animation should fade out when paused or stopped.\n *\n * **Side effects:** Emits `EntityModelAnimationEvent.SET_FADES_OUT` when spawned.\n *\n * **Category:** Entities\n */\n", + "canonicalReference": "server!EntityManager#getEntitiesByTag:member(1)", + "docComment": "/**\n * Gets all spawned entities in the world with a specific tag.\n *\n * @param tag - The tag to get the entities for.\n *\n * @returns All spawned entities in the world with the provided tag.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setFadesOut(fadesOut: " + "text": "getEntitiesByTag(tag: " }, { "kind": "Content", - "text": "boolean" + "text": "string" }, { "kind": "Content", "text": "): " }, + { + "kind": "Reference", + "text": "Entity", + "canonicalReference": "server!Entity:class" + }, { "kind": "Content", - "text": "void" + "text": "[]" }, { "kind": "Content", @@ -20031,14 +20650,14 @@ "isStatic": false, "returnTypeTokenRange": { "startIndex": 3, - "endIndex": 4 + "endIndex": 5 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, "parameters": [ { - "parameterName": "fadesOut", + "parameterName": "tag", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -20048,29 +20667,33 @@ ], "isOptional": false, "isAbstract": false, - "name": "setFadesOut" + "name": "getEntitiesByTag" }, { "kind": "Method", - "canonicalReference": "server!EntityModelAnimation#setLoopMode:member(1)", - "docComment": "/**\n * Sets the loop mode of the entity model animation.\n *\n * @param loopMode - The loop mode of the entity model animation.\n *\n * **Side effects:** Emits `EntityModelAnimationEvent.SET_LOOP_MODE` when spawned.\n *\n * **Category:** Entities\n */\n", + "canonicalReference": "server!EntityManager#getEntitiesByTagSubstring:member(1)", + "docComment": "/**\n * Gets all spawned entities in the world with a tag that includes a specific substring.\n *\n * @param tagSubstring - The tag substring to get the entities for.\n *\n * @returns All spawned entities in the world with a tag that includes the provided substring.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setLoopMode(loopMode: " + "text": "getEntitiesByTagSubstring(tagSubstring: " }, { - "kind": "Reference", - "text": "EntityModelAnimationLoopMode", - "canonicalReference": "server!EntityModelAnimationLoopMode:enum" + "kind": "Content", + "text": "string" }, { "kind": "Content", "text": "): " }, + { + "kind": "Reference", + "text": "Entity", + "canonicalReference": "server!Entity:class" + }, { "kind": "Content", - "text": "void" + "text": "[]" }, { "kind": "Content", @@ -20080,14 +20703,14 @@ "isStatic": false, "returnTypeTokenRange": { "startIndex": 3, - "endIndex": 4 + "endIndex": 5 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, "parameters": [ { - "parameterName": "loopMode", + "parameterName": "tagSubstring", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -20097,16 +20720,25 @@ ], "isOptional": false, "isAbstract": false, - "name": "setLoopMode" + "name": "getEntitiesByTagSubstring" }, { "kind": "Method", - "canonicalReference": "server!EntityModelAnimation#setPlaybackRate:member(1)", - "docComment": "/**\n * Sets the playback rate of the entity model animation.\n *\n * @remarks\n *\n * A positive value plays the animation forward, a negative value plays it in reverse. Defaults to 1.\n *\n * @param playbackRate - The playback rate of the entity model animation.\n *\n * **Side effects:** Emits `EntityModelAnimationEvent.SET_PLAYBACK_RATE` when spawned.\n *\n * **Category:** Entities\n */\n", + "canonicalReference": "server!EntityManager#getEntity:member(1)", + "docComment": "/**\n * Gets a spawned entity in the world by its ID.\n *\n * @param id - The ID of the entity to get.\n *\n * @returns The spawned entity with the provided ID, or undefined if no entity is found.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setPlaybackRate(playbackRate: " + "text": "getEntity(id: " }, { "kind": "Content", @@ -20118,55 +20750,74 @@ }, { "kind": "Content", - "text": "void" + "text": "T | undefined" }, { "kind": "Content", "text": ";" } ], + "typeParameters": [ + { + "typeParameterName": "T", + "constraintTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "defaultTypeTokenRange": { + "startIndex": 0, + "endIndex": 0 + } + } + ], "isStatic": false, "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 + "startIndex": 5, + "endIndex": 6 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, "parameters": [ { - "parameterName": "playbackRate", + "parameterName": "id", "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 + "startIndex": 3, + "endIndex": 4 }, "isOptional": false } ], "isOptional": false, "isAbstract": false, - "name": "setPlaybackRate" + "name": "getEntity" }, { "kind": "Method", - "canonicalReference": "server!EntityModelAnimation#setWeight:member(1)", - "docComment": "/**\n * Sets the weight of the entity model animation for blending with other playing animations.\n *\n * @param weight - The weight of the entity model animation.\n *\n * **Side effects:** Emits `EntityModelAnimationEvent.SET_WEIGHT` when spawned.\n *\n * **Category:** Entities\n */\n", + "canonicalReference": "server!EntityManager#getEntityChildren:member(1)", + "docComment": "/**\n * Gets all child entities of an entity.\n *\n * @remarks\n *\n * Direct children only; does not include recursive descendants.\n *\n * @param entity - The entity to get the children for.\n *\n * @returns All direct child entities of the entity.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setWeight(weight: " + "text": "getEntityChildren(entity: " }, { - "kind": "Content", - "text": "number" + "kind": "Reference", + "text": "Entity", + "canonicalReference": "server!Entity:class" }, { "kind": "Content", "text": "): " }, + { + "kind": "Reference", + "text": "Entity", + "canonicalReference": "server!Entity:class" + }, { "kind": "Content", - "text": "void" + "text": "[]" }, { "kind": "Content", @@ -20176,14 +20827,14 @@ "isStatic": false, "returnTypeTokenRange": { "startIndex": 3, - "endIndex": 4 + "endIndex": 5 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, "parameters": [ { - "parameterName": "weight", + "parameterName": "entity", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -20193,20 +20844,34 @@ ], "isOptional": false, "isAbstract": false, - "name": "setWeight" + "name": "getEntityChildren" }, { "kind": "Method", - "canonicalReference": "server!EntityModelAnimation#stop:member(1)", - "docComment": "/**\n * Stops the entity model animation, does nothing if already stopped.\n *\n * **Side effects:** Emits `EntityModelAnimationEvent.STOP` when spawned.\n *\n * **Category:** Entities\n */\n", + "canonicalReference": "server!EntityManager#getPlayerEntitiesByPlayer:member(1)", + "docComment": "/**\n * Gets all spawned player entities in the world assigned to the provided player.\n *\n * @param player - The player to get the entities for.\n *\n * @returns All spawned player entities in the world assigned to the player.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "stop(): " + "text": "getPlayerEntitiesByPlayer(player: " + }, + { + "kind": "Reference", + "text": "Player", + "canonicalReference": "server!Player:class" }, { "kind": "Content", - "text": "void" + "text": "): " + }, + { + "kind": "Reference", + "text": "PlayerEntity", + "canonicalReference": "server!PlayerEntity:class" + }, + { + "kind": "Content", + "text": "[]" }, { "kind": "Content", @@ -20215,29 +20880,39 @@ ], "isStatic": false, "returnTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 + "startIndex": 3, + "endIndex": 5 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, - "parameters": [], + "parameters": [ + { + "parameterName": "player", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], "isOptional": false, "isAbstract": false, - "name": "stop" + "name": "getPlayerEntitiesByPlayer" }, { "kind": "Property", - "canonicalReference": "server!EntityModelAnimation#weight:member", - "docComment": "/**\n * The weight of the entity model animation.\n *\n * **Category:** Entities\n */\n", + "canonicalReference": "server!EntityManager#world:member", + "docComment": "/**\n * The world this manager is for.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get weight(): " + "text": "get world(): " }, { - "kind": "Content", - "text": "number" + "kind": "Reference", + "text": "World", + "canonicalReference": "server!World:class" }, { "kind": "Content", @@ -20247,7 +20922,7 @@ "isReadonly": true, "isOptional": false, "releaseTag": "Public", - "name": "weight", + "name": "world", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -20257,895 +20932,922 @@ "isAbstract": false } ], - "implementsTokenRanges": [ - { - "startIndex": 1, - "endIndex": 2 - } - ] + "implementsTokenRanges": [] }, { - "kind": "Enum", - "canonicalReference": "server!EntityModelAnimationBlendMode:enum", - "docComment": "/**\n * The blend mode of an entity model animation.\n *\n * **Category:** Entities\n *\n * @public\n */\n", + "kind": "Class", + "canonicalReference": "server!EntityModelAnimation:class", + "docComment": "/**\n * Represents a single animation of the model used for an Entity.\n *\n * When to use: controlling individual animation playback, blending, and looping on model entities. Do NOT use for: block entities (they have no model animations).\n *\n * @remarks\n *\n * EntityModelAnimation instances are composed by an Entity and represent a single animation clip from the entity's model. Events are emitted through the parent Entity's event router and its world.\n *\n *

Events

\n *\n * Events emitted by this class are listed under `EntityModelAnimationEventPayloads`. They are emitted via the parent entity's event router.\n *\n * @example\n * ```typescript\n * const walkAnimation = entity.getModelAnimation('walk');\n * walkAnimation.setLoopMode(EntityModelAnimationLoopMode.LOOP);\n * walkAnimation.play();\n * walkAnimation.setPlaybackRate(2);\n * ```\n *\n * **Category:** Entities\n *\n * @public\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "export declare enum EntityModelAnimationBlendMode " + "text": "export default class EntityModelAnimation implements " + }, + { + "kind": "Reference", + "text": "protocol.Serializable", + "canonicalReference": "@hytopia.com/server-protocol!Serializable:interface" + }, + { + "kind": "Content", + "text": " " } ], "fileUrlPath": "src/worlds/entities/EntityModelAnimation.ts", "releaseTag": "Public", - "name": "EntityModelAnimationBlendMode", + "isAbstract": false, + "name": "EntityModelAnimation", "preserveMemberOrder": false, "members": [ { - "kind": "EnumMember", - "canonicalReference": "server!EntityModelAnimationBlendMode.ADDITIVE:member", - "docComment": "", + "kind": "Constructor", + "canonicalReference": "server!EntityModelAnimation:constructor(1)", + "docComment": "/**\n * Creates a new EntityModelAnimation instance.\n *\n * @param options - The options for the entity model animation.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "ADDITIVE = " + "text": "constructor(options: " + }, + { + "kind": "Reference", + "text": "EntityModelAnimationOptions", + "canonicalReference": "server!EntityModelAnimationOptions:interface" }, { "kind": "Content", - "text": "0" + "text": ");" } ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, "releaseTag": "Public", - "name": "ADDITIVE" + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "options", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ] }, { - "kind": "EnumMember", - "canonicalReference": "server!EntityModelAnimationBlendMode.NORMAL:member", - "docComment": "", + "kind": "Property", + "canonicalReference": "server!EntityModelAnimation#blendMode:member", + "docComment": "/**\n * The blend mode of the entity model animation.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "NORMAL = " + "text": "get blendMode(): " + }, + { + "kind": "Reference", + "text": "EntityModelAnimationBlendMode", + "canonicalReference": "server!EntityModelAnimationBlendMode:enum" }, { "kind": "Content", - "text": "1" + "text": ";" } ], - "initializerTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "blendMode", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "releaseTag": "Public", - "name": "NORMAL" - } - ] - }, - { - "kind": "Enum", - "canonicalReference": "server!EntityModelAnimationEvent:enum", - "docComment": "/**\n * Event types an EntityModelAnimation instance can emit.\n *\n * See `EntityModelAnimationEventPayloads` for the payloads.\n *\n * **Category:** Events\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export declare enum EntityModelAnimationEvent " - } - ], - "fileUrlPath": "src/worlds/entities/EntityModelAnimation.ts", - "releaseTag": "Public", - "name": "EntityModelAnimationEvent", - "preserveMemberOrder": false, - "members": [ + "isStatic": false, + "isProtected": false, + "isAbstract": false + }, { - "kind": "EnumMember", - "canonicalReference": "server!EntityModelAnimationEvent.PAUSE:member", - "docComment": "", + "kind": "Property", + "canonicalReference": "server!EntityModelAnimation#clampWhenFinished:member", + "docComment": "/**\n * Whether the animation should clamp when finished, holding the last frame.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "PAUSE = " + "text": "get clampWhenFinished(): " }, { "kind": "Content", - "text": "\"ENTITY_MODEL_ANIMATION.PAUSE\"" + "text": "boolean" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "clampWhenFinished", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "releaseTag": "Public", - "name": "PAUSE" + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "EnumMember", - "canonicalReference": "server!EntityModelAnimationEvent.PLAY:member", - "docComment": "", + "kind": "Property", + "canonicalReference": "server!EntityModelAnimation#entity:member", + "docComment": "/**\n * The entity that the entity model animation belongs to.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "PLAY = " + "text": "get entity(): " + }, + { + "kind": "Reference", + "text": "Entity", + "canonicalReference": "server!Entity:class" }, { "kind": "Content", - "text": "\"ENTITY_MODEL_ANIMATION.PLAY\"" + "text": ";" } ], - "initializerTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "entity", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "releaseTag": "Public", - "name": "PLAY" + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "EnumMember", - "canonicalReference": "server!EntityModelAnimationEvent.RESTART:member", - "docComment": "", + "kind": "Property", + "canonicalReference": "server!EntityModelAnimation#fadesIn:member", + "docComment": "/**\n * Whether the animation fades in when played or restarted.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "RESTART = " + "text": "get fadesIn(): " }, { "kind": "Content", - "text": "\"ENTITY_MODEL_ANIMATION.RESTART\"" - } - ], - "initializerTokenRange": { + "text": "boolean" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "fadesIn", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "releaseTag": "Public", - "name": "RESTART" + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "EnumMember", - "canonicalReference": "server!EntityModelAnimationEvent.SET_BLEND_MODE:member", - "docComment": "", + "kind": "Property", + "canonicalReference": "server!EntityModelAnimation#fadesOut:member", + "docComment": "/**\n * Whether the animation fades out when paused or stopped.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "SET_BLEND_MODE = " + "text": "get fadesOut(): " }, { "kind": "Content", - "text": "\"ENTITY_MODEL_ANIMATION.SET_BLEND_MODE\"" + "text": "boolean" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "fadesOut", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "releaseTag": "Public", - "name": "SET_BLEND_MODE" + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "EnumMember", - "canonicalReference": "server!EntityModelAnimationEvent.SET_CLAMP_WHEN_FINISHED:member", - "docComment": "", + "kind": "Property", + "canonicalReference": "server!EntityModelAnimation#isPaused:member", + "docComment": "/**\n * Whether the animation is currently paused.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "SET_CLAMP_WHEN_FINISHED = " + "text": "get isPaused(): " }, { "kind": "Content", - "text": "\"ENTITY_MODEL_ANIMATION.SET_CLAMP_WHEN_FINISHED\"" + "text": "boolean" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "isPaused", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "releaseTag": "Public", - "name": "SET_CLAMP_WHEN_FINISHED" + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "EnumMember", - "canonicalReference": "server!EntityModelAnimationEvent.SET_FADES_IN:member", - "docComment": "", + "kind": "Property", + "canonicalReference": "server!EntityModelAnimation#isPlaying:member", + "docComment": "/**\n * Whether the animation is currently playing.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "SET_FADES_IN = " + "text": "get isPlaying(): " }, { "kind": "Content", - "text": "\"ENTITY_MODEL_ANIMATION.SET_FADES_IN\"" + "text": "boolean" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "isPlaying", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "releaseTag": "Public", - "name": "SET_FADES_IN" + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "EnumMember", - "canonicalReference": "server!EntityModelAnimationEvent.SET_FADES_OUT:member", - "docComment": "", + "kind": "Property", + "canonicalReference": "server!EntityModelAnimation#isStopped:member", + "docComment": "/**\n * Whether the animation is currently stopped.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "SET_FADES_OUT = " + "text": "get isStopped(): " }, { "kind": "Content", - "text": "\"ENTITY_MODEL_ANIMATION.SET_FADES_OUT\"" + "text": "boolean" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "isStopped", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "releaseTag": "Public", - "name": "SET_FADES_OUT" + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "EnumMember", - "canonicalReference": "server!EntityModelAnimationEvent.SET_LOOP_MODE:member", - "docComment": "", + "kind": "Property", + "canonicalReference": "server!EntityModelAnimation#loopMode:member", + "docComment": "/**\n * The loop mode of the entity model animation.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "SET_LOOP_MODE = " + "text": "get loopMode(): " + }, + { + "kind": "Reference", + "text": "EntityModelAnimationLoopMode", + "canonicalReference": "server!EntityModelAnimationLoopMode:enum" }, { "kind": "Content", - "text": "\"ENTITY_MODEL_ANIMATION.SET_LOOP_MODE\"" + "text": ";" } ], - "initializerTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "loopMode", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "releaseTag": "Public", - "name": "SET_LOOP_MODE" + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "EnumMember", - "canonicalReference": "server!EntityModelAnimationEvent.SET_PLAYBACK_RATE:member", - "docComment": "", + "kind": "Property", + "canonicalReference": "server!EntityModelAnimation#name:member", + "docComment": "/**\n * The name of the entity model animation.\n *\n * @remarks\n *\n * This is the name of the animation as defined in the model.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "SET_PLAYBACK_RATE = " + "text": "get name(): " }, { "kind": "Content", - "text": "\"ENTITY_MODEL_ANIMATION.SET_PLAYBACK_RATE\"" + "text": "string" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "name", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "releaseTag": "Public", - "name": "SET_PLAYBACK_RATE" + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "EnumMember", - "canonicalReference": "server!EntityModelAnimationEvent.SET_WEIGHT:member", - "docComment": "", + "kind": "Method", + "canonicalReference": "server!EntityModelAnimation#pause:member(1)", + "docComment": "/**\n * Pauses the entity model animation, does nothing if already paused.\n *\n * **Side effects:** Emits `EntityModelAnimationEvent.PAUSE` when spawned.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "SET_WEIGHT = " + "text": "pause(): " }, { "kind": "Content", - "text": "\"ENTITY_MODEL_ANIMATION.SET_WEIGHT\"" + "text": "void" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { + "isStatic": false, + "returnTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, "releaseTag": "Public", - "name": "SET_WEIGHT" + "isProtected": false, + "overloadIndex": 1, + "parameters": [], + "isOptional": false, + "isAbstract": false, + "name": "pause" }, { - "kind": "EnumMember", - "canonicalReference": "server!EntityModelAnimationEvent.STOP:member", - "docComment": "", + "kind": "Method", + "canonicalReference": "server!EntityModelAnimation#play:member(1)", + "docComment": "/**\n * Plays the entity model animation, does nothing if already playing.\n *\n * **Side effects:** Emits `EntityModelAnimationEvent.PLAY` when spawned.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "STOP = " + "text": "play(): " }, { "kind": "Content", - "text": "\"ENTITY_MODEL_ANIMATION.STOP\"" + "text": "void" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { + "isStatic": false, + "returnTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, "releaseTag": "Public", - "name": "STOP" - } - ] - }, - { - "kind": "Interface", - "canonicalReference": "server!EntityModelAnimationEventPayloads:interface", - "docComment": "/**\n * Event payloads for EntityModelAnimation emitted events.\n *\n * **Category:** Events\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export interface EntityModelAnimationEventPayloads " - } - ], - "fileUrlPath": "src/worlds/entities/EntityModelAnimation.ts", - "releaseTag": "Public", - "name": "EntityModelAnimationEventPayloads", - "preserveMemberOrder": false, - "members": [ + "isProtected": false, + "overloadIndex": 1, + "parameters": [], + "isOptional": false, + "isAbstract": false, + "name": "play" + }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityModelAnimationEventPayloads#\"ENTITY_MODEL_ANIMATION.PAUSE\":member", - "docComment": "/**\n * Emitted when an entity model animation is paused.\n */\n", + "kind": "Property", + "canonicalReference": "server!EntityModelAnimation#playbackRate:member", + "docComment": "/**\n * The playback rate of the entity model animation.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "EntityModelAnimationEvent.PAUSE", - "canonicalReference": "server!EntityModelAnimationEvent.PAUSE:member" - }, - { - "kind": "Content", - "text": "]: " - }, - { - "kind": "Content", - "text": "{\n entityModelAnimation: " - }, - { - "kind": "Reference", - "text": "EntityModelAnimation", - "canonicalReference": "server!EntityModelAnimation:class" + "text": "get playbackRate(): " }, { "kind": "Content", - "text": ";\n }" + "text": "number" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, + "isReadonly": true, "isOptional": false, "releaseTag": "Public", - "name": "\"ENTITY_MODEL_ANIMATION.PAUSE\"", + "name": "playbackRate", "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 6 - } + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityModelAnimationEventPayloads#\"ENTITY_MODEL_ANIMATION.PLAY\":member", - "docComment": "/**\n * Emitted when an entity model animation is played.\n */\n", + "kind": "Method", + "canonicalReference": "server!EntityModelAnimation#restart:member(1)", + "docComment": "/**\n * Restarts the entity model animation from the beginning.\n *\n * @remarks\n *\n * Unlike `play()`, this always emits even if the animation is already playing, allowing the animation to restart from the beginning.\n *\n * **Side effects:** Emits `EntityModelAnimationEvent.RESTART` when spawned.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "EntityModelAnimationEvent.PLAY", - "canonicalReference": "server!EntityModelAnimationEvent.PLAY:member" - }, - { - "kind": "Content", - "text": "]: " - }, - { - "kind": "Content", - "text": "{\n entityModelAnimation: " - }, - { - "kind": "Reference", - "text": "EntityModelAnimation", - "canonicalReference": "server!EntityModelAnimation:class" + "text": "restart(): " }, { "kind": "Content", - "text": ";\n }" + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": false, + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, "releaseTag": "Public", - "name": "\"ENTITY_MODEL_ANIMATION.PLAY\"", - "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 6 - } + "isProtected": false, + "overloadIndex": 1, + "parameters": [], + "isOptional": false, + "isAbstract": false, + "name": "restart" }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityModelAnimationEventPayloads#\"ENTITY_MODEL_ANIMATION.RESTART\":member", - "docComment": "/**\n * Emitted when an entity model animation is restarted.\n */\n", + "kind": "Method", + "canonicalReference": "server!EntityModelAnimation#setBlendMode:member(1)", + "docComment": "/**\n * Sets the blend mode of the entity model animation.\n *\n * @param blendMode - The blend mode of the entity model animation.\n *\n * **Side effects:** Emits `EntityModelAnimationEvent.SET_BLEND_MODE` when spawned.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" + "text": "setBlendMode(blendMode: " }, { "kind": "Reference", - "text": "EntityModelAnimationEvent.RESTART", - "canonicalReference": "server!EntityModelAnimationEvent.RESTART:member" - }, - { - "kind": "Content", - "text": "]: " + "text": "EntityModelAnimationBlendMode", + "canonicalReference": "server!EntityModelAnimationBlendMode:enum" }, { "kind": "Content", - "text": "{\n entityModelAnimation: " - }, - { - "kind": "Reference", - "text": "EntityModelAnimation", - "canonicalReference": "server!EntityModelAnimation:class" + "text": "): " }, { "kind": "Content", - "text": ";\n }" + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": false, - "releaseTag": "Public", - "name": "\"ENTITY_MODEL_ANIMATION.RESTART\"", - "propertyTypeTokenRange": { + "isStatic": false, + "returnTypeTokenRange": { "startIndex": 3, - "endIndex": 6 - } + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "blendMode", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setBlendMode" }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityModelAnimationEventPayloads#\"ENTITY_MODEL_ANIMATION.SET_BLEND_MODE\":member", - "docComment": "/**\n * Emitted when the blend mode of an entity model animation is set.\n */\n", + "kind": "Method", + "canonicalReference": "server!EntityModelAnimation#setClampWhenFinished:member(1)", + "docComment": "/**\n * Sets whether the animation should clamp when finished, holding the last frame.\n *\n * @param clampWhenFinished - Whether to clamp when finished.\n *\n * **Side effects:** Emits `EntityModelAnimationEvent.SET_CLAMP_WHEN_FINISHED` when spawned.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "EntityModelAnimationEvent.SET_BLEND_MODE", - "canonicalReference": "server!EntityModelAnimationEvent.SET_BLEND_MODE:member" - }, - { - "kind": "Content", - "text": "]: " + "text": "setClampWhenFinished(clampWhenFinished: " }, { "kind": "Content", - "text": "{\n entityModelAnimation: " - }, - { - "kind": "Reference", - "text": "EntityModelAnimation", - "canonicalReference": "server!EntityModelAnimation:class" + "text": "boolean" }, { "kind": "Content", - "text": ";\n blendMode: " - }, - { - "kind": "Reference", - "text": "EntityModelAnimationBlendMode", - "canonicalReference": "server!EntityModelAnimationBlendMode:enum" + "text": "): " }, { "kind": "Content", - "text": ";\n }" + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": false, - "releaseTag": "Public", - "name": "\"ENTITY_MODEL_ANIMATION.SET_BLEND_MODE\"", - "propertyTypeTokenRange": { + "isStatic": false, + "returnTypeTokenRange": { "startIndex": 3, - "endIndex": 8 - } + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "clampWhenFinished", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setClampWhenFinished" }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityModelAnimationEventPayloads#\"ENTITY_MODEL_ANIMATION.SET_CLAMP_WHEN_FINISHED\":member", - "docComment": "/**\n * Emitted when the clamp when finished setting of an entity model animation is set.\n */\n", + "kind": "Method", + "canonicalReference": "server!EntityModelAnimation#setFadesIn:member(1)", + "docComment": "/**\n * Sets whether the animation fades in when played or restarted.\n *\n * @param fadesIn - Whether the animation should fade in when played or restarted.\n *\n * **Side effects:** Emits `EntityModelAnimationEvent.SET_FADES_IN` when spawned.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "EntityModelAnimationEvent.SET_CLAMP_WHEN_FINISHED", - "canonicalReference": "server!EntityModelAnimationEvent.SET_CLAMP_WHEN_FINISHED:member" + "text": "setFadesIn(fadesIn: " }, { "kind": "Content", - "text": "]: " + "text": "boolean" }, { "kind": "Content", - "text": "{\n entityModelAnimation: " - }, - { - "kind": "Reference", - "text": "EntityModelAnimation", - "canonicalReference": "server!EntityModelAnimation:class" + "text": "): " }, { "kind": "Content", - "text": ";\n clampWhenFinished: boolean;\n }" + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": false, - "releaseTag": "Public", - "name": "\"ENTITY_MODEL_ANIMATION.SET_CLAMP_WHEN_FINISHED\"", - "propertyTypeTokenRange": { + "isStatic": false, + "returnTypeTokenRange": { "startIndex": 3, - "endIndex": 6 - } + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "fadesIn", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setFadesIn" }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityModelAnimationEventPayloads#\"ENTITY_MODEL_ANIMATION.SET_FADES_IN\":member", - "docComment": "/**\n * Emitted when the fade in behavior of an entity model animation is set.\n */\n", + "kind": "Method", + "canonicalReference": "server!EntityModelAnimation#setFadesOut:member(1)", + "docComment": "/**\n * Sets whether the animation fades out when paused or stopped.\n *\n * @param fadesOut - Whether the animation should fade out when paused or stopped.\n *\n * **Side effects:** Emits `EntityModelAnimationEvent.SET_FADES_OUT` when spawned.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "EntityModelAnimationEvent.SET_FADES_IN", - "canonicalReference": "server!EntityModelAnimationEvent.SET_FADES_IN:member" + "text": "setFadesOut(fadesOut: " }, { "kind": "Content", - "text": "]: " + "text": "boolean" }, { "kind": "Content", - "text": "{\n entityModelAnimation: " - }, - { - "kind": "Reference", - "text": "EntityModelAnimation", - "canonicalReference": "server!EntityModelAnimation:class" + "text": "): " }, { "kind": "Content", - "text": ";\n fadesIn: boolean;\n }" + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": false, - "releaseTag": "Public", - "name": "\"ENTITY_MODEL_ANIMATION.SET_FADES_IN\"", - "propertyTypeTokenRange": { + "isStatic": false, + "returnTypeTokenRange": { "startIndex": 3, - "endIndex": 6 - } + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "fadesOut", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setFadesOut" }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityModelAnimationEventPayloads#\"ENTITY_MODEL_ANIMATION.SET_FADES_OUT\":member", - "docComment": "/**\n * Emitted when the fade out behavior of an entity model animation is set.\n */\n", + "kind": "Method", + "canonicalReference": "server!EntityModelAnimation#setLoopMode:member(1)", + "docComment": "/**\n * Sets the loop mode of the entity model animation.\n *\n * @param loopMode - The loop mode of the entity model animation.\n *\n * **Side effects:** Emits `EntityModelAnimationEvent.SET_LOOP_MODE` when spawned.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" + "text": "setLoopMode(loopMode: " }, { "kind": "Reference", - "text": "EntityModelAnimationEvent.SET_FADES_OUT", - "canonicalReference": "server!EntityModelAnimationEvent.SET_FADES_OUT:member" - }, - { - "kind": "Content", - "text": "]: " + "text": "EntityModelAnimationLoopMode", + "canonicalReference": "server!EntityModelAnimationLoopMode:enum" }, { "kind": "Content", - "text": "{\n entityModelAnimation: " - }, - { - "kind": "Reference", - "text": "EntityModelAnimation", - "canonicalReference": "server!EntityModelAnimation:class" + "text": "): " }, { "kind": "Content", - "text": ";\n fadesOut: boolean;\n }" + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": false, - "releaseTag": "Public", - "name": "\"ENTITY_MODEL_ANIMATION.SET_FADES_OUT\"", - "propertyTypeTokenRange": { + "isStatic": false, + "returnTypeTokenRange": { "startIndex": 3, - "endIndex": 6 - } + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "loopMode", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setLoopMode" }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityModelAnimationEventPayloads#\"ENTITY_MODEL_ANIMATION.SET_LOOP_MODE\":member", - "docComment": "/**\n * Emitted when the loop mode of an entity model animation is set.\n */\n", + "kind": "Method", + "canonicalReference": "server!EntityModelAnimation#setPlaybackRate:member(1)", + "docComment": "/**\n * Sets the playback rate of the entity model animation.\n *\n * @remarks\n *\n * A positive value plays the animation forward, a negative value plays it in reverse. Defaults to 1.\n *\n * @param playbackRate - The playback rate of the entity model animation.\n *\n * **Side effects:** Emits `EntityModelAnimationEvent.SET_PLAYBACK_RATE` when spawned.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "EntityModelAnimationEvent.SET_LOOP_MODE", - "canonicalReference": "server!EntityModelAnimationEvent.SET_LOOP_MODE:member" - }, - { - "kind": "Content", - "text": "]: " + "text": "setPlaybackRate(playbackRate: " }, { "kind": "Content", - "text": "{\n entityModelAnimation: " - }, - { - "kind": "Reference", - "text": "EntityModelAnimation", - "canonicalReference": "server!EntityModelAnimation:class" + "text": "number" }, { "kind": "Content", - "text": ";\n loopMode: " - }, - { - "kind": "Reference", - "text": "EntityModelAnimationLoopMode", - "canonicalReference": "server!EntityModelAnimationLoopMode:enum" + "text": "): " }, { "kind": "Content", - "text": ";\n }" + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": false, - "releaseTag": "Public", - "name": "\"ENTITY_MODEL_ANIMATION.SET_LOOP_MODE\"", - "propertyTypeTokenRange": { + "isStatic": false, + "returnTypeTokenRange": { "startIndex": 3, - "endIndex": 8 - } + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "playbackRate", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setPlaybackRate" }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityModelAnimationEventPayloads#\"ENTITY_MODEL_ANIMATION.SET_PLAYBACK_RATE\":member", - "docComment": "/**\n * Emitted when the playback rate of an entity model animation is set.\n */\n", + "kind": "Method", + "canonicalReference": "server!EntityModelAnimation#setWeight:member(1)", + "docComment": "/**\n * Sets the weight of the entity model animation for blending with other playing animations.\n *\n * @param weight - The weight of the entity model animation.\n *\n * **Side effects:** Emits `EntityModelAnimationEvent.SET_WEIGHT` when spawned.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "EntityModelAnimationEvent.SET_PLAYBACK_RATE", - "canonicalReference": "server!EntityModelAnimationEvent.SET_PLAYBACK_RATE:member" + "text": "setWeight(weight: " }, { "kind": "Content", - "text": "]: " + "text": "number" }, { "kind": "Content", - "text": "{\n entityModelAnimation: " - }, - { - "kind": "Reference", - "text": "EntityModelAnimation", - "canonicalReference": "server!EntityModelAnimation:class" + "text": "): " }, { "kind": "Content", - "text": ";\n playbackRate: number;\n }" + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": false, - "releaseTag": "Public", - "name": "\"ENTITY_MODEL_ANIMATION.SET_PLAYBACK_RATE\"", - "propertyTypeTokenRange": { + "isStatic": false, + "returnTypeTokenRange": { "startIndex": 3, - "endIndex": 6 - } + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "weight", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setWeight" }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityModelAnimationEventPayloads#\"ENTITY_MODEL_ANIMATION.SET_WEIGHT\":member", - "docComment": "/**\n * Emitted when the weight of an entity model animation is set.\n */\n", + "kind": "Method", + "canonicalReference": "server!EntityModelAnimation#stop:member(1)", + "docComment": "/**\n * Stops the entity model animation, does nothing if already stopped.\n *\n * **Side effects:** Emits `EntityModelAnimationEvent.STOP` when spawned.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "EntityModelAnimationEvent.SET_WEIGHT", - "canonicalReference": "server!EntityModelAnimationEvent.SET_WEIGHT:member" - }, - { - "kind": "Content", - "text": "]: " - }, - { - "kind": "Content", - "text": "{\n entityModelAnimation: " - }, - { - "kind": "Reference", - "text": "EntityModelAnimation", - "canonicalReference": "server!EntityModelAnimation:class" + "text": "stop(): " }, { "kind": "Content", - "text": ";\n weight: number;\n }" + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": false, + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, "releaseTag": "Public", - "name": "\"ENTITY_MODEL_ANIMATION.SET_WEIGHT\"", - "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 6 - } + "isProtected": false, + "overloadIndex": 1, + "parameters": [], + "isOptional": false, + "isAbstract": false, + "name": "stop" }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityModelAnimationEventPayloads#\"ENTITY_MODEL_ANIMATION.STOP\":member", - "docComment": "/**\n * Emitted when an entity model animation is stopped.\n */\n", + "kind": "Property", + "canonicalReference": "server!EntityModelAnimation#weight:member", + "docComment": "/**\n * The weight of the entity model animation.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "EntityModelAnimationEvent.STOP", - "canonicalReference": "server!EntityModelAnimationEvent.STOP:member" - }, - { - "kind": "Content", - "text": "]: " - }, - { - "kind": "Content", - "text": "{\n entityModelAnimation: " - }, - { - "kind": "Reference", - "text": "EntityModelAnimation", - "canonicalReference": "server!EntityModelAnimation:class" + "text": "get weight(): " }, { "kind": "Content", - "text": ";\n }" + "text": "number" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, + "isReadonly": true, "isOptional": false, "releaseTag": "Public", - "name": "\"ENTITY_MODEL_ANIMATION.STOP\"", + "name": "weight", "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 6 - } + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false } ], - "extendsTokenRanges": [] + "implementsTokenRanges": [ + { + "startIndex": 1, + "endIndex": 2 + } + ] }, { "kind": "Enum", - "canonicalReference": "server!EntityModelAnimationLoopMode:enum", - "docComment": "/**\n * The loop mode of an entity model animation.\n *\n * **Category:** Entities\n *\n * @public\n */\n", + "canonicalReference": "server!EntityModelAnimationBlendMode:enum", + "docComment": "/**\n * The blend mode of an entity model animation.\n *\n * **Category:** Entities\n *\n * @public\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "export declare enum EntityModelAnimationLoopMode " + "text": "export declare enum EntityModelAnimationBlendMode " } ], "fileUrlPath": "src/worlds/entities/EntityModelAnimation.ts", "releaseTag": "Public", - "name": "EntityModelAnimationLoopMode", + "name": "EntityModelAnimationBlendMode", "preserveMemberOrder": false, "members": [ { "kind": "EnumMember", - "canonicalReference": "server!EntityModelAnimationLoopMode.LOOP:member", - "docComment": "", - "excerptTokens": [ - { - "kind": "Content", - "text": "LOOP = " - }, - { - "kind": "Content", - "text": "1" - } - ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "releaseTag": "Public", - "name": "LOOP" - }, - { - "kind": "EnumMember", - "canonicalReference": "server!EntityModelAnimationLoopMode.ONCE:member", + "canonicalReference": "server!EntityModelAnimationBlendMode.ADDITIVE:member", "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "ONCE = " + "text": "ADDITIVE = " }, { "kind": "Content", @@ -21157,20 +21859,20 @@ "endIndex": 2 }, "releaseTag": "Public", - "name": "ONCE" + "name": "ADDITIVE" }, { "kind": "EnumMember", - "canonicalReference": "server!EntityModelAnimationLoopMode.PING_PONG:member", + "canonicalReference": "server!EntityModelAnimationBlendMode.NORMAL:member", "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "PING_PONG = " + "text": "NORMAL = " }, { "kind": "Content", - "text": "2" + "text": "1" } ], "initializerTokenRange": { @@ -21178,328 +21880,205 @@ "endIndex": 2 }, "releaseTag": "Public", - "name": "PING_PONG" + "name": "NORMAL" } ] }, { - "kind": "Interface", - "canonicalReference": "server!EntityModelAnimationOptions:interface", - "docComment": "/**\n * The options for creating an EntityModelAnimation instance.\n *\n * **Category:** Entities\n *\n * @public\n */\n", + "kind": "Enum", + "canonicalReference": "server!EntityModelAnimationEvent:enum", + "docComment": "/**\n * Event types an EntityModelAnimation instance can emit.\n *\n * See `EntityModelAnimationEventPayloads` for the payloads.\n *\n * **Category:** Events\n *\n * @public\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "export interface EntityModelAnimationOptions " + "text": "export declare enum EntityModelAnimationEvent " } ], "fileUrlPath": "src/worlds/entities/EntityModelAnimation.ts", "releaseTag": "Public", - "name": "EntityModelAnimationOptions", + "name": "EntityModelAnimationEvent", "preserveMemberOrder": false, "members": [ { - "kind": "PropertySignature", - "canonicalReference": "server!EntityModelAnimationOptions#blendMode:member", - "docComment": "/**\n * The initial blend mode of the entity model animation.\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!EntityModelAnimationEvent.PAUSE:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "blendMode?: " - }, - { - "kind": "Reference", - "text": "EntityModelAnimationBlendMode", - "canonicalReference": "server!EntityModelAnimationBlendMode:enum" + "text": "PAUSE = " }, { "kind": "Content", - "text": ";" + "text": "\"ENTITY_MODEL_ANIMATION.PAUSE\"" } ], - "isReadonly": false, - "isOptional": true, - "releaseTag": "Public", - "name": "blendMode", - "propertyTypeTokenRange": { + "initializerTokenRange": { "startIndex": 1, "endIndex": 2 - } + }, + "releaseTag": "Public", + "name": "PAUSE" }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityModelAnimationOptions#clampWhenFinished:member", - "docComment": "/**\n * Whether the animation should clamp when finished, holding the last frame.\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!EntityModelAnimationEvent.PLAY:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "clampWhenFinished?: " - }, - { - "kind": "Content", - "text": "boolean" + "text": "PLAY = " }, { "kind": "Content", - "text": ";" + "text": "\"ENTITY_MODEL_ANIMATION.PLAY\"" } ], - "isReadonly": false, - "isOptional": true, - "releaseTag": "Public", - "name": "clampWhenFinished", - "propertyTypeTokenRange": { + "initializerTokenRange": { "startIndex": 1, "endIndex": 2 - } + }, + "releaseTag": "Public", + "name": "PLAY" }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityModelAnimationOptions#entity:member", - "docComment": "/**\n * The entity that the entity model animation belongs to.\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!EntityModelAnimationEvent.RESTART:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "entity: " - }, - { - "kind": "Reference", - "text": "Entity", - "canonicalReference": "server!Entity:class" + "text": "RESTART = " }, { "kind": "Content", - "text": ";" + "text": "\"ENTITY_MODEL_ANIMATION.RESTART\"" } ], - "isReadonly": false, - "isOptional": false, - "releaseTag": "Public", - "name": "entity", - "propertyTypeTokenRange": { + "initializerTokenRange": { "startIndex": 1, "endIndex": 2 - } + }, + "releaseTag": "Public", + "name": "RESTART" }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityModelAnimationOptions#fadesIn:member", - "docComment": "/**\n * Whether the animation fades in when played or restarted.\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!EntityModelAnimationEvent.SET_BLEND_MODE:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "fadesIn?: " - }, - { - "kind": "Content", - "text": "boolean" + "text": "SET_BLEND_MODE = " }, { "kind": "Content", - "text": ";" + "text": "\"ENTITY_MODEL_ANIMATION.SET_BLEND_MODE\"" } ], - "isReadonly": false, - "isOptional": true, - "releaseTag": "Public", - "name": "fadesIn", - "propertyTypeTokenRange": { + "initializerTokenRange": { "startIndex": 1, "endIndex": 2 - } + }, + "releaseTag": "Public", + "name": "SET_BLEND_MODE" }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityModelAnimationOptions#fadesOut:member", - "docComment": "/**\n * Whether the animation fades out when paused or stopped.\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!EntityModelAnimationEvent.SET_CLAMP_WHEN_FINISHED:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "fadesOut?: " - }, - { - "kind": "Content", - "text": "boolean" + "text": "SET_CLAMP_WHEN_FINISHED = " }, { "kind": "Content", - "text": ";" + "text": "\"ENTITY_MODEL_ANIMATION.SET_CLAMP_WHEN_FINISHED\"" } ], - "isReadonly": false, - "isOptional": true, - "releaseTag": "Public", - "name": "fadesOut", - "propertyTypeTokenRange": { + "initializerTokenRange": { "startIndex": 1, "endIndex": 2 - } + }, + "releaseTag": "Public", + "name": "SET_CLAMP_WHEN_FINISHED" }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityModelAnimationOptions#loopMode:member", - "docComment": "/**\n * The initial loop mode of the entity model animation.\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!EntityModelAnimationEvent.SET_FADES_IN:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "loopMode?: " - }, - { - "kind": "Reference", - "text": "EntityModelAnimationLoopMode", - "canonicalReference": "server!EntityModelAnimationLoopMode:enum" + "text": "SET_FADES_IN = " }, { "kind": "Content", - "text": ";" + "text": "\"ENTITY_MODEL_ANIMATION.SET_FADES_IN\"" } ], - "isReadonly": false, - "isOptional": true, - "releaseTag": "Public", - "name": "loopMode", - "propertyTypeTokenRange": { + "initializerTokenRange": { "startIndex": 1, "endIndex": 2 - } + }, + "releaseTag": "Public", + "name": "SET_FADES_IN" }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityModelAnimationOptions#name:member", - "docComment": "/**\n * The name of the entity model animation.\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!EntityModelAnimationEvent.SET_FADES_OUT:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "name: " - }, - { - "kind": "Content", - "text": "string" + "text": "SET_FADES_OUT = " }, { "kind": "Content", - "text": ";" + "text": "\"ENTITY_MODEL_ANIMATION.SET_FADES_OUT\"" } ], - "isReadonly": false, - "isOptional": false, - "releaseTag": "Public", - "name": "name", - "propertyTypeTokenRange": { + "initializerTokenRange": { "startIndex": 1, "endIndex": 2 - } + }, + "releaseTag": "Public", + "name": "SET_FADES_OUT" }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityModelAnimationOptions#play:member", - "docComment": "/**\n * Whether the animation should start playing on construction.\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!EntityModelAnimationEvent.SET_LOOP_MODE:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "play?: " - }, - { - "kind": "Content", - "text": "boolean" + "text": "SET_LOOP_MODE = " }, { "kind": "Content", - "text": ";" + "text": "\"ENTITY_MODEL_ANIMATION.SET_LOOP_MODE\"" } ], - "isReadonly": false, - "isOptional": true, - "releaseTag": "Public", - "name": "play", - "propertyTypeTokenRange": { + "initializerTokenRange": { "startIndex": 1, "endIndex": 2 - } - }, - { - "kind": "PropertySignature", - "canonicalReference": "server!EntityModelAnimationOptions#playbackRate:member", - "docComment": "/**\n * The initial playback rate of the entity model animation.\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "playbackRate?: " - }, - { - "kind": "Content", - "text": "number" - }, - { - "kind": "Content", - "text": ";" - } - ], - "isReadonly": false, - "isOptional": true, + }, "releaseTag": "Public", - "name": "playbackRate", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } + "name": "SET_LOOP_MODE" }, - { - "kind": "PropertySignature", - "canonicalReference": "server!EntityModelAnimationOptions#weight:member", - "docComment": "/**\n * The initial blend weight of the entity model animation.\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "weight?: " - }, - { - "kind": "Content", - "text": "number" - }, - { - "kind": "Content", - "text": ";" - } - ], - "isReadonly": false, - "isOptional": true, - "releaseTag": "Public", - "name": "weight", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } - } - ], - "extendsTokenRanges": [] - }, - { - "kind": "Enum", - "canonicalReference": "server!EntityModelAnimationState:enum", - "docComment": "/**\n * The state of an entity model animation.\n *\n * **Category:** Entities\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export declare enum EntityModelAnimationState " - } - ], - "fileUrlPath": "src/worlds/entities/EntityModelAnimation.ts", - "releaseTag": "Public", - "name": "EntityModelAnimationState", - "preserveMemberOrder": false, - "members": [ { "kind": "EnumMember", - "canonicalReference": "server!EntityModelAnimationState.PAUSED:member", + "canonicalReference": "server!EntityModelAnimationEvent.SET_PLAYBACK_RATE:member", "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "PAUSED = " + "text": "SET_PLAYBACK_RATE = " }, { "kind": "Content", - "text": "1" + "text": "\"ENTITY_MODEL_ANIMATION.SET_PLAYBACK_RATE\"" } ], "initializerTokenRange": { @@ -21507,20 +22086,20 @@ "endIndex": 2 }, "releaseTag": "Public", - "name": "PAUSED" + "name": "SET_PLAYBACK_RATE" }, { "kind": "EnumMember", - "canonicalReference": "server!EntityModelAnimationState.PLAYING:member", + "canonicalReference": "server!EntityModelAnimationEvent.SET_WEIGHT:member", "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "PLAYING = " + "text": "SET_WEIGHT = " }, { "kind": "Content", - "text": "0" + "text": "\"ENTITY_MODEL_ANIMATION.SET_WEIGHT\"" } ], "initializerTokenRange": { @@ -21528,20 +22107,20 @@ "endIndex": 2 }, "releaseTag": "Public", - "name": "PLAYING" + "name": "SET_WEIGHT" }, { "kind": "EnumMember", - "canonicalReference": "server!EntityModelAnimationState.STOPPED:member", + "canonicalReference": "server!EntityModelAnimationEvent.STOP:member", "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "STOPPED = " + "text": "STOP = " }, { "kind": "Content", - "text": "2" + "text": "\"ENTITY_MODEL_ANIMATION.STOP\"" } ], "initializerTokenRange": { @@ -21549,1093 +22128,939 @@ "endIndex": 2 }, "releaseTag": "Public", - "name": "STOPPED" + "name": "STOP" } ] }, { - "kind": "Class", - "canonicalReference": "server!EntityModelNodeOverride:class", - "docComment": "/**\n * Represents a name-match model node override rule for an Entity.\n *\n * When to use: configuring visual and transform overrides for one or more model nodes selected by name match.\n *\n * @remarks\n *\n * Node overrides are match-rule based and may target multiple nodes. Matching is case-insensitive. Exact match is used by default; wildcard matching is only enabled when `*` is used at the start and/or end of `nameMatch` (`head*`, `*head`, `*head*`). Supported override settings include emissive color/intensity, hidden state, and local position/rotation/scale.\n *\n * **Category:** Entities\n *\n * @public\n */\n", + "kind": "Interface", + "canonicalReference": "server!EntityModelAnimationEventPayloads:interface", + "docComment": "/**\n * Event payloads for EntityModelAnimation emitted events.\n *\n * **Category:** Events\n *\n * @public\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "export default class EntityModelNodeOverride implements " - }, - { - "kind": "Reference", - "text": "protocol.Serializable", - "canonicalReference": "@hytopia.com/server-protocol!Serializable:interface" - }, - { - "kind": "Content", - "text": " " + "text": "export interface EntityModelAnimationEventPayloads " } ], - "fileUrlPath": "src/worlds/entities/EntityModelNodeOverride.ts", + "fileUrlPath": "src/worlds/entities/EntityModelAnimation.ts", "releaseTag": "Public", - "isAbstract": false, - "name": "EntityModelNodeOverride", + "name": "EntityModelAnimationEventPayloads", "preserveMemberOrder": false, "members": [ { - "kind": "Constructor", - "canonicalReference": "server!EntityModelNodeOverride:constructor(1)", - "docComment": "/**\n * Creates a new EntityModelNodeOverride instance.\n *\n * @param options - The options for the model node override.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!EntityModelAnimationEventPayloads#\"ENTITY_MODEL_ANIMATION.PAUSE\":member", + "docComment": "/**\n * Emitted when an entity model animation is paused.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "constructor(options: " + "text": "[" }, { "kind": "Reference", - "text": "EntityModelNodeOverrideOptions", - "canonicalReference": "server!EntityModelNodeOverrideOptions:interface" + "text": "EntityModelAnimationEvent.PAUSE", + "canonicalReference": "server!EntityModelAnimationEvent.PAUSE:member" }, { "kind": "Content", - "text": ");" - } - ], - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "options", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ] - }, - { - "kind": "Property", - "canonicalReference": "server!EntityModelNodeOverride#emissiveColor:member", - "docComment": "/**\n * The emissive color for matching nodes.\n *\n * **Category:** Entities\n */\n", - "excerptTokens": [ + "text": "]: " + }, { "kind": "Content", - "text": "get emissiveColor(): " + "text": "{\n entityModelAnimation: " }, { "kind": "Reference", - "text": "RgbColor", - "canonicalReference": "server!RgbColor:interface" + "text": "EntityModelAnimation", + "canonicalReference": "server!EntityModelAnimation:class" }, { "kind": "Content", - "text": " | undefined" + "text": ";\n }" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, + "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "emissiveColor", + "name": "\"ENTITY_MODEL_ANIMATION.PAUSE\"", "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 3 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "startIndex": 3, + "endIndex": 6 + } }, { - "kind": "Property", - "canonicalReference": "server!EntityModelNodeOverride#emissiveIntensity:member", - "docComment": "/**\n * The emissive intensity for matching nodes.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!EntityModelAnimationEventPayloads#\"ENTITY_MODEL_ANIMATION.PLAY\":member", + "docComment": "/**\n * Emitted when an entity model animation is played.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get emissiveIntensity(): " + "text": "[" + }, + { + "kind": "Reference", + "text": "EntityModelAnimationEvent.PLAY", + "canonicalReference": "server!EntityModelAnimationEvent.PLAY:member" }, { "kind": "Content", - "text": "number | undefined" + "text": "]: " + }, + { + "kind": "Content", + "text": "{\n entityModelAnimation: " + }, + { + "kind": "Reference", + "text": "EntityModelAnimation", + "canonicalReference": "server!EntityModelAnimation:class" + }, + { + "kind": "Content", + "text": ";\n }" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, + "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "emissiveIntensity", + "name": "\"ENTITY_MODEL_ANIMATION.PLAY\"", "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "startIndex": 3, + "endIndex": 6 + } }, { - "kind": "Property", - "canonicalReference": "server!EntityModelNodeOverride#entity:member", - "docComment": "/**\n * The entity that the model node override belongs to.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!EntityModelAnimationEventPayloads#\"ENTITY_MODEL_ANIMATION.RESTART\":member", + "docComment": "/**\n * Emitted when an entity model animation is restarted.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get entity(): " + "text": "[" }, { "kind": "Reference", - "text": "Entity", - "canonicalReference": "server!Entity:class" + "text": "EntityModelAnimationEvent.RESTART", + "canonicalReference": "server!EntityModelAnimationEvent.RESTART:member" }, { "kind": "Content", - "text": ";" - } - ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "entity", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false - }, - { - "kind": "Property", - "canonicalReference": "server!EntityModelNodeOverride#isHidden:member", - "docComment": "/**\n * Whether the matched node(s) are hidden.\n *\n * **Category:** Entities\n */\n", - "excerptTokens": [ + "text": "]: " + }, { "kind": "Content", - "text": "get isHidden(): " + "text": "{\n entityModelAnimation: " + }, + { + "kind": "Reference", + "text": "EntityModelAnimation", + "canonicalReference": "server!EntityModelAnimation:class" }, { "kind": "Content", - "text": "boolean" + "text": ";\n }" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, + "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "isHidden", + "name": "\"ENTITY_MODEL_ANIMATION.RESTART\"", "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "startIndex": 3, + "endIndex": 6 + } }, { - "kind": "Property", - "canonicalReference": "server!EntityModelNodeOverride#localPosition:member", - "docComment": "/**\n * The local position set for matching nodes.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!EntityModelAnimationEventPayloads#\"ENTITY_MODEL_ANIMATION.SET_BLEND_MODE\":member", + "docComment": "/**\n * Emitted when the blend mode of an entity model animation is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get localPosition(): " + "text": "[" }, { "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "text": "EntityModelAnimationEvent.SET_BLEND_MODE", + "canonicalReference": "server!EntityModelAnimationEvent.SET_BLEND_MODE:member" }, { "kind": "Content", - "text": " | undefined" + "text": "]: " }, { "kind": "Content", - "text": ";" - } - ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "localPosition", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 3 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false - }, - { - "kind": "Property", - "canonicalReference": "server!EntityModelNodeOverride#localPositionInterpolationMs:member", - "docComment": "/**\n * The interpolation time in milliseconds applied to local position changes.\n *\n * **Category:** Entities\n */\n", - "excerptTokens": [ + "text": "{\n entityModelAnimation: " + }, + { + "kind": "Reference", + "text": "EntityModelAnimation", + "canonicalReference": "server!EntityModelAnimation:class" + }, { "kind": "Content", - "text": "get localPositionInterpolationMs(): " + "text": ";\n blendMode: " + }, + { + "kind": "Reference", + "text": "EntityModelAnimationBlendMode", + "canonicalReference": "server!EntityModelAnimationBlendMode:enum" }, { "kind": "Content", - "text": "number | undefined" + "text": ";\n }" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, + "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "localPositionInterpolationMs", + "name": "\"ENTITY_MODEL_ANIMATION.SET_BLEND_MODE\"", "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "startIndex": 3, + "endIndex": 8 + } }, { - "kind": "Property", - "canonicalReference": "server!EntityModelNodeOverride#localRotation:member", - "docComment": "/**\n * The local rotation set for matching nodes.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!EntityModelAnimationEventPayloads#\"ENTITY_MODEL_ANIMATION.SET_CLAMP_WHEN_FINISHED\":member", + "docComment": "/**\n * Emitted when the clamp when finished setting of an entity model animation is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get localRotation(): " + "text": "[" }, { "kind": "Reference", - "text": "QuaternionLike", - "canonicalReference": "server!QuaternionLike:interface" + "text": "EntityModelAnimationEvent.SET_CLAMP_WHEN_FINISHED", + "canonicalReference": "server!EntityModelAnimationEvent.SET_CLAMP_WHEN_FINISHED:member" }, { "kind": "Content", - "text": " | undefined" + "text": "]: " }, { "kind": "Content", - "text": ";" - } - ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "localRotation", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 3 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false - }, - { - "kind": "Property", - "canonicalReference": "server!EntityModelNodeOverride#localRotationInterpolationMs:member", - "docComment": "/**\n * The interpolation time in milliseconds applied to local rotation changes.\n *\n * **Category:** Entities\n */\n", - "excerptTokens": [ + "text": "{\n entityModelAnimation: " + }, { - "kind": "Content", - "text": "get localRotationInterpolationMs(): " + "kind": "Reference", + "text": "EntityModelAnimation", + "canonicalReference": "server!EntityModelAnimation:class" }, { "kind": "Content", - "text": "number | undefined" + "text": ";\n clampWhenFinished: boolean;\n }" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, + "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "localRotationInterpolationMs", + "name": "\"ENTITY_MODEL_ANIMATION.SET_CLAMP_WHEN_FINISHED\"", "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "startIndex": 3, + "endIndex": 6 + } }, { - "kind": "Property", - "canonicalReference": "server!EntityModelNodeOverride#localScale:member", - "docComment": "/**\n * The local scale set for matching nodes.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!EntityModelAnimationEventPayloads#\"ENTITY_MODEL_ANIMATION.SET_FADES_IN\":member", + "docComment": "/**\n * Emitted when the fade in behavior of an entity model animation is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get localScale(): " + "text": "[" }, { "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "text": "EntityModelAnimationEvent.SET_FADES_IN", + "canonicalReference": "server!EntityModelAnimationEvent.SET_FADES_IN:member" }, { "kind": "Content", - "text": " | undefined" + "text": "]: " }, { "kind": "Content", - "text": ";" - } - ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "localScale", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 3 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false - }, - { - "kind": "Property", - "canonicalReference": "server!EntityModelNodeOverride#localScaleInterpolationMs:member", - "docComment": "/**\n * The interpolation time in milliseconds applied to local scale changes.\n *\n * **Category:** Entities\n */\n", - "excerptTokens": [ + "text": "{\n entityModelAnimation: " + }, { - "kind": "Content", - "text": "get localScaleInterpolationMs(): " + "kind": "Reference", + "text": "EntityModelAnimation", + "canonicalReference": "server!EntityModelAnimation:class" }, { "kind": "Content", - "text": "number | undefined" + "text": ";\n fadesIn: boolean;\n }" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, + "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "localScaleInterpolationMs", + "name": "\"ENTITY_MODEL_ANIMATION.SET_FADES_IN\"", "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "startIndex": 3, + "endIndex": 6 + } }, { - "kind": "Property", - "canonicalReference": "server!EntityModelNodeOverride#name:member", - "docComment": "/**\n * Alias used by networking serializer and protocol schema (`n`).\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!EntityModelAnimationEventPayloads#\"ENTITY_MODEL_ANIMATION.SET_FADES_OUT\":member", + "docComment": "/**\n * Emitted when the fade out behavior of an entity model animation is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get name(): " + "text": "[" }, { - "kind": "Content", - "text": "string" + "kind": "Reference", + "text": "EntityModelAnimationEvent.SET_FADES_OUT", + "canonicalReference": "server!EntityModelAnimationEvent.SET_FADES_OUT:member" }, { "kind": "Content", - "text": ";" - } - ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "name", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false - }, - { - "kind": "Property", - "canonicalReference": "server!EntityModelNodeOverride#nameMatch:member", - "docComment": "/**\n * The node name match selector for this override. Exact match by default, with optional edge wildcard (`head*`, `*head`, `*head*`).\n *\n * **Category:** Entities\n */\n", - "excerptTokens": [ + "text": "]: " + }, { "kind": "Content", - "text": "get nameMatch(): " + "text": "{\n entityModelAnimation: " + }, + { + "kind": "Reference", + "text": "EntityModelAnimation", + "canonicalReference": "server!EntityModelAnimation:class" }, { "kind": "Content", - "text": "string" + "text": ";\n fadesOut: boolean;\n }" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, + "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "nameMatch", + "name": "\"ENTITY_MODEL_ANIMATION.SET_FADES_OUT\"", "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "startIndex": 3, + "endIndex": 6 + } }, { - "kind": "Method", - "canonicalReference": "server!EntityModelNodeOverride#remove:member(1)", - "docComment": "/**\n * Removes this model node override from its parent entity.\n *\n * @remarks\n *\n * This delegates to `Entity.removeModelNodeOverride()` so that map mutation and related event emission remain centralized on the entity.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!EntityModelAnimationEventPayloads#\"ENTITY_MODEL_ANIMATION.SET_LOOP_MODE\":member", + "docComment": "/**\n * Emitted when the loop mode of an entity model animation is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "remove(): " + "text": "[" }, { - "kind": "Content", - "text": "void" + "kind": "Reference", + "text": "EntityModelAnimationEvent.SET_LOOP_MODE", + "canonicalReference": "server!EntityModelAnimationEvent.SET_LOOP_MODE:member" }, { "kind": "Content", - "text": ";" - } - ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [], - "isOptional": false, - "isAbstract": false, - "name": "remove" - }, - { - "kind": "Method", - "canonicalReference": "server!EntityModelNodeOverride#setEmissiveColor:member(1)", - "docComment": "/**\n * Sets the emissive color for matching nodes.\n *\n * @param emissiveColor - The emissive color to set.\n *\n * **Side effects:** Emits `EntityModelNodeOverrideEvent.SET_EMISSIVE_COLOR` when spawned.\n *\n * **Category:** Entities\n */\n", - "excerptTokens": [ + "text": "]: " + }, { "kind": "Content", - "text": "setEmissiveColor(emissiveColor: " + "text": "{\n entityModelAnimation: " }, { "kind": "Reference", - "text": "RgbColor", - "canonicalReference": "server!RgbColor:interface" + "text": "EntityModelAnimation", + "canonicalReference": "server!EntityModelAnimation:class" }, { "kind": "Content", - "text": " | undefined" + "text": ";\n loopMode: " }, { - "kind": "Content", - "text": "): " + "kind": "Reference", + "text": "EntityModelAnimationLoopMode", + "canonicalReference": "server!EntityModelAnimationLoopMode:enum" }, { "kind": "Content", - "text": "void" + "text": ";\n }" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 4, - "endIndex": 5 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "emissiveColor", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 3 - }, - "isOptional": false - } - ], + "isReadonly": false, "isOptional": false, - "isAbstract": false, - "name": "setEmissiveColor" + "releaseTag": "Public", + "name": "\"ENTITY_MODEL_ANIMATION.SET_LOOP_MODE\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 8 + } }, { - "kind": "Method", - "canonicalReference": "server!EntityModelNodeOverride#setEmissiveIntensity:member(1)", - "docComment": "/**\n * Sets the emissive intensity for matching nodes.\n *\n * @param emissiveIntensity - The emissive intensity to set.\n *\n * **Side effects:** Emits `EntityModelNodeOverrideEvent.SET_EMISSIVE_INTENSITY` when spawned.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!EntityModelAnimationEventPayloads#\"ENTITY_MODEL_ANIMATION.SET_PLAYBACK_RATE\":member", + "docComment": "/**\n * Emitted when the playback rate of an entity model animation is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setEmissiveIntensity(emissiveIntensity: " + "text": "[" + }, + { + "kind": "Reference", + "text": "EntityModelAnimationEvent.SET_PLAYBACK_RATE", + "canonicalReference": "server!EntityModelAnimationEvent.SET_PLAYBACK_RATE:member" }, { "kind": "Content", - "text": "number | undefined" + "text": "]: " }, { "kind": "Content", - "text": "): " + "text": "{\n entityModelAnimation: " + }, + { + "kind": "Reference", + "text": "EntityModelAnimation", + "canonicalReference": "server!EntityModelAnimation:class" }, { "kind": "Content", - "text": "void" + "text": ";\n playbackRate: number;\n }" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "emissiveIntensity", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], + "isReadonly": false, "isOptional": false, - "isAbstract": false, - "name": "setEmissiveIntensity" + "releaseTag": "Public", + "name": "\"ENTITY_MODEL_ANIMATION.SET_PLAYBACK_RATE\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 6 + } }, { - "kind": "Method", - "canonicalReference": "server!EntityModelNodeOverride#setHidden:member(1)", - "docComment": "/**\n * Sets the hidden state for matching nodes.\n *\n * @param hidden - The hidden state to set.\n *\n * **Side effects:** Emits `EntityModelNodeOverrideEvent.SET_HIDDEN` when spawned.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!EntityModelAnimationEventPayloads#\"ENTITY_MODEL_ANIMATION.SET_WEIGHT\":member", + "docComment": "/**\n * Emitted when the weight of an entity model animation is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setHidden(hidden: " + "text": "[" + }, + { + "kind": "Reference", + "text": "EntityModelAnimationEvent.SET_WEIGHT", + "canonicalReference": "server!EntityModelAnimationEvent.SET_WEIGHT:member" }, { "kind": "Content", - "text": "boolean" + "text": "]: " }, { "kind": "Content", - "text": "): " + "text": "{\n entityModelAnimation: " + }, + { + "kind": "Reference", + "text": "EntityModelAnimation", + "canonicalReference": "server!EntityModelAnimation:class" }, { "kind": "Content", - "text": "void" + "text": ";\n weight: number;\n }" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "hidden", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], + "isReadonly": false, "isOptional": false, - "isAbstract": false, - "name": "setHidden" + "releaseTag": "Public", + "name": "\"ENTITY_MODEL_ANIMATION.SET_WEIGHT\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 6 + } }, { - "kind": "Method", - "canonicalReference": "server!EntityModelNodeOverride#setLocalPosition:member(1)", - "docComment": "/**\n * Sets the local position for matching nodes.\n *\n * @param localPosition - The local position to set.\n *\n * **Side effects:** Emits `EntityModelNodeOverrideEvent.SET_LOCAL_POSITION` when spawned.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!EntityModelAnimationEventPayloads#\"ENTITY_MODEL_ANIMATION.STOP\":member", + "docComment": "/**\n * Emitted when an entity model animation is stopped.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setLocalPosition(localPosition: " + "text": "[" }, { "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "text": "EntityModelAnimationEvent.STOP", + "canonicalReference": "server!EntityModelAnimationEvent.STOP:member" }, { "kind": "Content", - "text": " | undefined" + "text": "]: " }, { "kind": "Content", - "text": "): " + "text": "{\n entityModelAnimation: " + }, + { + "kind": "Reference", + "text": "EntityModelAnimation", + "canonicalReference": "server!EntityModelAnimation:class" }, { "kind": "Content", - "text": "void" + "text": ";\n }" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 4, - "endIndex": 5 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "localPosition", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 3 - }, - "isOptional": false - } - ], + "isReadonly": false, "isOptional": false, - "isAbstract": false, - "name": "setLocalPosition" - }, + "releaseTag": "Public", + "name": "\"ENTITY_MODEL_ANIMATION.STOP\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 6 + } + } + ], + "extendsTokenRanges": [] + }, + { + "kind": "Enum", + "canonicalReference": "server!EntityModelAnimationLoopMode:enum", + "docComment": "/**\n * The loop mode of an entity model animation.\n *\n * **Category:** Entities\n *\n * @public\n */\n", + "excerptTokens": [ { - "kind": "Method", - "canonicalReference": "server!EntityModelNodeOverride#setLocalPositionInterpolationMs:member(1)", - "docComment": "/**\n * Sets the interpolation time in milliseconds applied to local position changes.\n *\n * @param interpolationMs - The interpolation time in milliseconds to set.\n *\n * **Side effects:** Emits `EntityModelNodeOverrideEvent.SET_LOCAL_POSITION_INTERPOLATION_MS` when spawned.\n *\n * **Category:** Entities\n */\n", + "kind": "Content", + "text": "export declare enum EntityModelAnimationLoopMode " + } + ], + "fileUrlPath": "src/worlds/entities/EntityModelAnimation.ts", + "releaseTag": "Public", + "name": "EntityModelAnimationLoopMode", + "preserveMemberOrder": false, + "members": [ + { + "kind": "EnumMember", + "canonicalReference": "server!EntityModelAnimationLoopMode.LOOP:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "setLocalPositionInterpolationMs(interpolationMs: " - }, - { - "kind": "Content", - "text": "number | undefined" + "text": "LOOP = " }, { "kind": "Content", - "text": "): " - }, + "text": "1" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "LOOP" + }, + { + "kind": "EnumMember", + "canonicalReference": "server!EntityModelAnimationLoopMode.ONCE:member", + "docComment": "", + "excerptTokens": [ { "kind": "Content", - "text": "void" + "text": "ONCE = " }, { "kind": "Content", - "text": ";" + "text": "0" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 }, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "interpolationMs", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "setLocalPositionInterpolationMs" + "name": "ONCE" }, { - "kind": "Method", - "canonicalReference": "server!EntityModelNodeOverride#setLocalRotation:member(1)", - "docComment": "/**\n * Sets the local rotation for matching nodes.\n *\n * @param localRotation - The local rotation to set.\n *\n * **Side effects:** Emits `EntityModelNodeOverrideEvent.SET_LOCAL_ROTATION` when spawned.\n *\n * **Category:** Entities\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!EntityModelAnimationLoopMode.PING_PONG:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "setLocalRotation(localRotation: " - }, - { - "kind": "Reference", - "text": "QuaternionLike", - "canonicalReference": "server!QuaternionLike:interface" + "text": "PING_PONG = " }, { "kind": "Content", - "text": " | undefined" - }, + "text": "2" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "PING_PONG" + } + ] + }, + { + "kind": "Interface", + "canonicalReference": "server!EntityModelAnimationOptions:interface", + "docComment": "/**\n * The options for creating an EntityModelAnimation instance.\n *\n * **Category:** Entities\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export interface EntityModelAnimationOptions " + } + ], + "fileUrlPath": "src/worlds/entities/EntityModelAnimation.ts", + "releaseTag": "Public", + "name": "EntityModelAnimationOptions", + "preserveMemberOrder": false, + "members": [ + { + "kind": "PropertySignature", + "canonicalReference": "server!EntityModelAnimationOptions#blendMode:member", + "docComment": "/**\n * The initial blend mode of the entity model animation.\n */\n", + "excerptTokens": [ { "kind": "Content", - "text": "): " + "text": "blendMode?: " }, { - "kind": "Content", - "text": "void" + "kind": "Reference", + "text": "EntityModelAnimationBlendMode", + "canonicalReference": "server!EntityModelAnimationBlendMode:enum" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 4, - "endIndex": 5 - }, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "localRotation", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 3 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "setLocalRotation" + "name": "blendMode", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } }, { - "kind": "Method", - "canonicalReference": "server!EntityModelNodeOverride#setLocalRotationInterpolationMs:member(1)", - "docComment": "/**\n * Sets the interpolation time in milliseconds applied to local rotation changes.\n *\n * @param interpolationMs - The interpolation time in milliseconds to set.\n *\n * **Side effects:** Emits `EntityModelNodeOverrideEvent.SET_LOCAL_ROTATION_INTERPOLATION_MS` when spawned.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!EntityModelAnimationOptions#clampWhenFinished:member", + "docComment": "/**\n * Whether the animation should clamp when finished, holding the last frame.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setLocalRotationInterpolationMs(interpolationMs: " - }, - { - "kind": "Content", - "text": "number | undefined" - }, - { - "kind": "Content", - "text": "): " + "text": "clampWhenFinished?: " }, { "kind": "Content", - "text": "void" + "text": "boolean" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "interpolationMs", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "setLocalRotationInterpolationMs" + "name": "clampWhenFinished", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } }, { - "kind": "Method", - "canonicalReference": "server!EntityModelNodeOverride#setLocalScale:member(1)", - "docComment": "/**\n * Sets the local scale for matching nodes.\n *\n * @param localScale - The local scale to set.\n *\n * **Side effects:** Emits `EntityModelNodeOverrideEvent.SET_LOCAL_SCALE` when spawned.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!EntityModelAnimationOptions#entity:member", + "docComment": "/**\n * The entity that the entity model animation belongs to.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setLocalScale(localScale: " + "text": "entity: " }, { "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "text": "Entity", + "canonicalReference": "server!Entity:class" }, { "kind": "Content", - "text": " | number | undefined" - }, + "text": ";" + } + ], + "isReadonly": false, + "isOptional": false, + "releaseTag": "Public", + "name": "entity", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!EntityModelAnimationOptions#fadesIn:member", + "docComment": "/**\n * Whether the animation fades in when played or restarted.\n */\n", + "excerptTokens": [ { "kind": "Content", - "text": "): " + "text": "fadesIn?: " }, { "kind": "Content", - "text": "void" + "text": "boolean" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 4, - "endIndex": 5 - }, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "localScale", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 3 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "setLocalScale" + "name": "fadesIn", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } }, { - "kind": "Method", - "canonicalReference": "server!EntityModelNodeOverride#setLocalScaleInterpolationMs:member(1)", - "docComment": "/**\n * Sets the interpolation time in milliseconds applied to local scale changes.\n *\n * @param interpolationMs - The interpolation time in milliseconds to set.\n *\n * **Side effects:** Emits `EntityModelNodeOverrideEvent.SET_LOCAL_SCALE_INTERPOLATION_MS` when spawned.\n *\n * **Category:** Entities\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!EntityModelAnimationOptions#fadesOut:member", + "docComment": "/**\n * Whether the animation fades out when paused or stopped.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setLocalScaleInterpolationMs(interpolationMs: " + "text": "fadesOut?: " }, { "kind": "Content", - "text": "number | undefined" - }, - { - "kind": "Content", - "text": "): " - }, - { - "kind": "Content", - "text": "void" + "text": "boolean" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "interpolationMs", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "setLocalScaleInterpolationMs" - } - ], - "implementsTokenRanges": [ - { - "startIndex": 1, - "endIndex": 2 - } - ] - }, - { - "kind": "Enum", - "canonicalReference": "server!EntityModelNodeOverrideEvent:enum", - "docComment": "/**\n * Event types an EntityModelNodeOverride instance can emit.\n *\n * See `EntityModelNodeOverrideEventPayloads` for payloads.\n *\n * **Category:** Events\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export declare enum EntityModelNodeOverrideEvent " - } - ], - "fileUrlPath": "src/worlds/entities/EntityModelNodeOverride.ts", - "releaseTag": "Public", - "name": "EntityModelNodeOverrideEvent", - "preserveMemberOrder": false, - "members": [ - { - "kind": "EnumMember", - "canonicalReference": "server!EntityModelNodeOverrideEvent.SET_EMISSIVE_COLOR:member", - "docComment": "", - "excerptTokens": [ - { - "kind": "Content", - "text": "SET_EMISSIVE_COLOR = " - }, - { - "kind": "Content", - "text": "\"ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_COLOR\"" - } - ], - "initializerTokenRange": { + "name": "fadesOut", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - }, - "releaseTag": "Public", - "name": "SET_EMISSIVE_COLOR" + } }, { - "kind": "EnumMember", - "canonicalReference": "server!EntityModelNodeOverrideEvent.SET_EMISSIVE_INTENSITY:member", - "docComment": "", + "kind": "PropertySignature", + "canonicalReference": "server!EntityModelAnimationOptions#loopMode:member", + "docComment": "/**\n * The initial loop mode of the entity model animation.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "SET_EMISSIVE_INTENSITY = " + "text": "loopMode?: " + }, + { + "kind": "Reference", + "text": "EntityModelAnimationLoopMode", + "canonicalReference": "server!EntityModelAnimationLoopMode:enum" }, { "kind": "Content", - "text": "\"ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_INTENSITY\"" + "text": ";" } ], - "initializerTokenRange": { + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "loopMode", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - }, - "releaseTag": "Public", - "name": "SET_EMISSIVE_INTENSITY" + } }, { - "kind": "EnumMember", - "canonicalReference": "server!EntityModelNodeOverrideEvent.SET_HIDDEN:member", - "docComment": "", + "kind": "PropertySignature", + "canonicalReference": "server!EntityModelAnimationOptions#name:member", + "docComment": "/**\n * The name of the entity model animation.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "SET_HIDDEN = " + "text": "name: " }, { "kind": "Content", - "text": "\"ENTITY_MODEL_NODE_OVERRIDE.SET_HIDDEN\"" + "text": "string" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { + "isReadonly": false, + "isOptional": false, + "releaseTag": "Public", + "name": "name", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - }, - "releaseTag": "Public", - "name": "SET_HIDDEN" + } }, { - "kind": "EnumMember", - "canonicalReference": "server!EntityModelNodeOverrideEvent.SET_LOCAL_POSITION:member", - "docComment": "", + "kind": "PropertySignature", + "canonicalReference": "server!EntityModelAnimationOptions#play:member", + "docComment": "/**\n * Whether the animation should start playing on construction.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "SET_LOCAL_POSITION = " + "text": "play?: " }, { "kind": "Content", - "text": "\"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION\"" + "text": "boolean" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "play", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - }, - "releaseTag": "Public", - "name": "SET_LOCAL_POSITION" + } }, { - "kind": "EnumMember", - "canonicalReference": "server!EntityModelNodeOverrideEvent.SET_LOCAL_POSITION_INTERPOLATION_MS:member", - "docComment": "", + "kind": "PropertySignature", + "canonicalReference": "server!EntityModelAnimationOptions#playbackRate:member", + "docComment": "/**\n * The initial playback rate of the entity model animation.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "SET_LOCAL_POSITION_INTERPOLATION_MS = " + "text": "playbackRate?: " }, { "kind": "Content", - "text": "\"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION_INTERPOLATION_MS\"" + "text": "number" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "playbackRate", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - }, - "releaseTag": "Public", - "name": "SET_LOCAL_POSITION_INTERPOLATION_MS" + } }, { - "kind": "EnumMember", - "canonicalReference": "server!EntityModelNodeOverrideEvent.SET_LOCAL_ROTATION:member", - "docComment": "", + "kind": "PropertySignature", + "canonicalReference": "server!EntityModelAnimationOptions#weight:member", + "docComment": "/**\n * The initial blend weight of the entity model animation.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "SET_LOCAL_ROTATION = " + "text": "weight?: " }, { "kind": "Content", - "text": "\"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION\"" + "text": "number" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "weight", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - }, - "releaseTag": "Public", - "name": "SET_LOCAL_ROTATION" - }, + } + } + ], + "extendsTokenRanges": [] + }, + { + "kind": "Enum", + "canonicalReference": "server!EntityModelAnimationState:enum", + "docComment": "/**\n * The state of an entity model animation.\n *\n * **Category:** Entities\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export declare enum EntityModelAnimationState " + } + ], + "fileUrlPath": "src/worlds/entities/EntityModelAnimation.ts", + "releaseTag": "Public", + "name": "EntityModelAnimationState", + "preserveMemberOrder": false, + "members": [ { "kind": "EnumMember", - "canonicalReference": "server!EntityModelNodeOverrideEvent.SET_LOCAL_ROTATION_INTERPOLATION_MS:member", + "canonicalReference": "server!EntityModelAnimationState.PAUSED:member", "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "SET_LOCAL_ROTATION_INTERPOLATION_MS = " + "text": "PAUSED = " }, { "kind": "Content", - "text": "\"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION_INTERPOLATION_MS\"" + "text": "1" } ], "initializerTokenRange": { @@ -22643,20 +23068,20 @@ "endIndex": 2 }, "releaseTag": "Public", - "name": "SET_LOCAL_ROTATION_INTERPOLATION_MS" + "name": "PAUSED" }, { "kind": "EnumMember", - "canonicalReference": "server!EntityModelNodeOverrideEvent.SET_LOCAL_SCALE:member", + "canonicalReference": "server!EntityModelAnimationState.PLAYING:member", "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "SET_LOCAL_SCALE = " + "text": "PLAYING = " }, { "kind": "Content", - "text": "\"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE\"" + "text": "0" } ], "initializerTokenRange": { @@ -22664,20 +23089,20 @@ "endIndex": 2 }, "releaseTag": "Public", - "name": "SET_LOCAL_SCALE" + "name": "PLAYING" }, { "kind": "EnumMember", - "canonicalReference": "server!EntityModelNodeOverrideEvent.SET_LOCAL_SCALE_INTERPOLATION_MS:member", + "canonicalReference": "server!EntityModelAnimationState.STOPPED:member", "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "SET_LOCAL_SCALE_INTERPOLATION_MS = " + "text": "STOPPED = " }, { "kind": "Content", - "text": "\"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE_INTERPOLATION_MS\"" + "text": "2" } ], "initializerTokenRange": { @@ -22685,55 +23110,76 @@ "endIndex": 2 }, "releaseTag": "Public", - "name": "SET_LOCAL_SCALE_INTERPOLATION_MS" + "name": "STOPPED" } ] }, { - "kind": "Interface", - "canonicalReference": "server!EntityModelNodeOverrideEventPayloads:interface", - "docComment": "/**\n * Event payloads for EntityModelNodeOverride emitted events.\n *\n * **Category:** Events\n *\n * @public\n */\n", + "kind": "Class", + "canonicalReference": "server!EntityModelNodeOverride:class", + "docComment": "/**\n * Represents a name-match model node override rule for an Entity.\n *\n * When to use: configuring visual and transform overrides for one or more model nodes selected by name match.\n *\n * @remarks\n *\n * Node overrides are match-rule based and may target multiple nodes. Matching is case-insensitive. Exact match is used by default; wildcard matching is only enabled when `*` is used at the start and/or end of `nameMatch` (`head*`, `*head`, `*head*`). Supported override settings include emissive color/intensity, hidden state, and local position/rotation/scale.\n *\n * **Category:** Entities\n *\n * @public\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "export interface EntityModelNodeOverrideEventPayloads " + "text": "export default class EntityModelNodeOverride implements " + }, + { + "kind": "Reference", + "text": "protocol.Serializable", + "canonicalReference": "@hytopia.com/server-protocol!Serializable:interface" + }, + { + "kind": "Content", + "text": " " } ], "fileUrlPath": "src/worlds/entities/EntityModelNodeOverride.ts", "releaseTag": "Public", - "name": "EntityModelNodeOverrideEventPayloads", + "isAbstract": false, + "name": "EntityModelNodeOverride", "preserveMemberOrder": false, "members": [ { - "kind": "PropertySignature", - "canonicalReference": "server!EntityModelNodeOverrideEventPayloads#\"ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_COLOR\":member", - "docComment": "/**\n * Emitted when the emissive color for matching nodes is set.\n */\n", + "kind": "Constructor", + "canonicalReference": "server!EntityModelNodeOverride:constructor(1)", + "docComment": "/**\n * Creates a new EntityModelNodeOverride instance.\n *\n * @param options - The options for the model node override.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" + "text": "constructor(options: " }, { "kind": "Reference", - "text": "EntityModelNodeOverrideEvent.SET_EMISSIVE_COLOR", - "canonicalReference": "server!EntityModelNodeOverrideEvent.SET_EMISSIVE_COLOR:member" - }, - { - "kind": "Content", - "text": "]: " + "text": "EntityModelNodeOverrideOptions", + "canonicalReference": "server!EntityModelNodeOverrideOptions:interface" }, { "kind": "Content", - "text": "{\n entityModelNodeOverride: " - }, + "text": ");" + } + ], + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ { - "kind": "Reference", - "text": "EntityModelNodeOverride", - "canonicalReference": "server!EntityModelNodeOverride:class" - }, + "parameterName": "options", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ] + }, + { + "kind": "Property", + "canonicalReference": "server!EntityModelNodeOverride#emissiveColor:member", + "docComment": "/**\n * The emissive color for matching nodes.\n *\n * **Category:** Entities\n */\n", + "excerptTokens": [ { "kind": "Content", - "text": ";\n emissiveColor: " + "text": "get emissiveColor(): " }, { "kind": "Reference", @@ -22742,655 +23188,559 @@ }, { "kind": "Content", - "text": " | undefined;\n }" + "text": " | undefined" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, + "isReadonly": true, "isOptional": false, "releaseTag": "Public", - "name": "\"ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_COLOR\"", + "name": "emissiveColor", "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 8 - } + "startIndex": 1, + "endIndex": 3 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityModelNodeOverrideEventPayloads#\"ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_INTENSITY\":member", - "docComment": "/**\n * Emitted when the emissive intensity for matching nodes is set.\n */\n", + "kind": "Property", + "canonicalReference": "server!EntityModelNodeOverride#emissiveIntensity:member", + "docComment": "/**\n * The emissive intensity for matching nodes.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "EntityModelNodeOverrideEvent.SET_EMISSIVE_INTENSITY", - "canonicalReference": "server!EntityModelNodeOverrideEvent.SET_EMISSIVE_INTENSITY:member" - }, - { - "kind": "Content", - "text": "]: " - }, - { - "kind": "Content", - "text": "{\n entityModelNodeOverride: " - }, - { - "kind": "Reference", - "text": "EntityModelNodeOverride", - "canonicalReference": "server!EntityModelNodeOverride:class" + "text": "get emissiveIntensity(): " }, { "kind": "Content", - "text": ";\n emissiveIntensity: number | undefined;\n }" + "text": "number | undefined" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, + "isReadonly": true, "isOptional": false, "releaseTag": "Public", - "name": "\"ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_INTENSITY\"", + "name": "emissiveIntensity", "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 6 - } + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityModelNodeOverrideEventPayloads#\"ENTITY_MODEL_NODE_OVERRIDE.SET_HIDDEN\":member", - "docComment": "/**\n * Emitted when the hidden state for matching nodes is set.\n */\n", + "kind": "Property", + "canonicalReference": "server!EntityModelNodeOverride#entity:member", + "docComment": "/**\n * The entity that the model node override belongs to.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" + "text": "get entity(): " }, { "kind": "Reference", - "text": "EntityModelNodeOverrideEvent.SET_HIDDEN", - "canonicalReference": "server!EntityModelNodeOverrideEvent.SET_HIDDEN:member" + "text": "Entity", + "canonicalReference": "server!Entity:class" }, { "kind": "Content", - "text": "]: " - }, + "text": ";" + } + ], + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "entity", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false + }, + { + "kind": "Property", + "canonicalReference": "server!EntityModelNodeOverride#isHidden:member", + "docComment": "/**\n * Whether the matched node(s) are hidden.\n *\n * **Category:** Entities\n */\n", + "excerptTokens": [ { "kind": "Content", - "text": "{\n entityModelNodeOverride: " - }, - { - "kind": "Reference", - "text": "EntityModelNodeOverride", - "canonicalReference": "server!EntityModelNodeOverride:class" + "text": "get isHidden(): " }, { "kind": "Content", - "text": ";\n hidden: boolean;\n }" + "text": "boolean" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, + "isReadonly": true, "isOptional": false, "releaseTag": "Public", - "name": "\"ENTITY_MODEL_NODE_OVERRIDE.SET_HIDDEN\"", + "name": "isHidden", "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 6 - } + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityModelNodeOverrideEventPayloads#\"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION_INTERPOLATION_MS\":member", - "docComment": "/**\n * Emitted when the interpolation time in milliseconds applied to local position changes is set.\n */\n", + "kind": "Property", + "canonicalReference": "server!EntityModelNodeOverride#localPosition:member", + "docComment": "/**\n * The local position set for matching nodes.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "EntityModelNodeOverrideEvent.SET_LOCAL_POSITION_INTERPOLATION_MS", - "canonicalReference": "server!EntityModelNodeOverrideEvent.SET_LOCAL_POSITION_INTERPOLATION_MS:member" - }, - { - "kind": "Content", - "text": "]: " - }, - { - "kind": "Content", - "text": "{\n entityModelNodeOverride: " + "text": "get localPosition(): " }, { "kind": "Reference", - "text": "EntityModelNodeOverride", - "canonicalReference": "server!EntityModelNodeOverride:class" + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", - "text": ";\n interpolationMs: number | undefined;\n }" + "text": " | undefined" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, + "isReadonly": true, "isOptional": false, "releaseTag": "Public", - "name": "\"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION_INTERPOLATION_MS\"", + "name": "localPosition", "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 6 - } + "startIndex": 1, + "endIndex": 3 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityModelNodeOverrideEventPayloads#\"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION\":member", - "docComment": "/**\n * Emitted when the position for matching nodes is set.\n */\n", + "kind": "Property", + "canonicalReference": "server!EntityModelNodeOverride#localPositionInterpolationMs:member", + "docComment": "/**\n * The interpolation time in milliseconds applied to local position changes.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "EntityModelNodeOverrideEvent.SET_LOCAL_POSITION", - "canonicalReference": "server!EntityModelNodeOverrideEvent.SET_LOCAL_POSITION:member" + "text": "get localPositionInterpolationMs(): " }, { "kind": "Content", - "text": "]: " + "text": "number | undefined" }, { "kind": "Content", - "text": "{\n entityModelNodeOverride: " - }, - { - "kind": "Reference", - "text": "EntityModelNodeOverride", - "canonicalReference": "server!EntityModelNodeOverride:class" - }, + "text": ";" + } + ], + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "localPositionInterpolationMs", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false + }, + { + "kind": "Property", + "canonicalReference": "server!EntityModelNodeOverride#localRotation:member", + "docComment": "/**\n * The local rotation set for matching nodes.\n *\n * **Category:** Entities\n */\n", + "excerptTokens": [ { "kind": "Content", - "text": ";\n localPosition: " + "text": "get localRotation(): " }, { "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "text": "QuaternionLike", + "canonicalReference": "server!QuaternionLike:interface" }, { "kind": "Content", - "text": " | undefined;\n }" + "text": " | undefined" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, + "isReadonly": true, "isOptional": false, "releaseTag": "Public", - "name": "\"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION\"", + "name": "localRotation", "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 8 - } + "startIndex": 1, + "endIndex": 3 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityModelNodeOverrideEventPayloads#\"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION_INTERPOLATION_MS\":member", - "docComment": "/**\n * Emitted when the interpolation time in milliseconds applied to local rotation changes is set.\n */\n", + "kind": "Property", + "canonicalReference": "server!EntityModelNodeOverride#localRotationInterpolationMs:member", + "docComment": "/**\n * The interpolation time in milliseconds applied to local rotation changes.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "EntityModelNodeOverrideEvent.SET_LOCAL_ROTATION_INTERPOLATION_MS", - "canonicalReference": "server!EntityModelNodeOverrideEvent.SET_LOCAL_ROTATION_INTERPOLATION_MS:member" - }, - { - "kind": "Content", - "text": "]: " - }, - { - "kind": "Content", - "text": "{\n entityModelNodeOverride: " - }, - { - "kind": "Reference", - "text": "EntityModelNodeOverride", - "canonicalReference": "server!EntityModelNodeOverride:class" + "text": "get localRotationInterpolationMs(): " }, { "kind": "Content", - "text": ";\n interpolationMs: number | undefined;\n }" + "text": "number | undefined" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, + "isReadonly": true, "isOptional": false, "releaseTag": "Public", - "name": "\"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION_INTERPOLATION_MS\"", + "name": "localRotationInterpolationMs", "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 6 - } + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityModelNodeOverrideEventPayloads#\"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION\":member", - "docComment": "/**\n * Emitted when the rotation for matching nodes is set.\n */\n", + "kind": "Property", + "canonicalReference": "server!EntityModelNodeOverride#localScale:member", + "docComment": "/**\n * The local scale set for matching nodes.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "EntityModelNodeOverrideEvent.SET_LOCAL_ROTATION", - "canonicalReference": "server!EntityModelNodeOverrideEvent.SET_LOCAL_ROTATION:member" - }, - { - "kind": "Content", - "text": "]: " - }, - { - "kind": "Content", - "text": "{\n entityModelNodeOverride: " - }, - { - "kind": "Reference", - "text": "EntityModelNodeOverride", - "canonicalReference": "server!EntityModelNodeOverride:class" - }, - { - "kind": "Content", - "text": ";\n localRotation: " + "text": "get localScale(): " }, { "kind": "Reference", - "text": "QuaternionLike", - "canonicalReference": "server!QuaternionLike:interface" + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", - "text": " | undefined;\n }" + "text": " | undefined" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, + "isReadonly": true, "isOptional": false, "releaseTag": "Public", - "name": "\"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION\"", + "name": "localScale", "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 8 - } + "startIndex": 1, + "endIndex": 3 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityModelNodeOverrideEventPayloads#\"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE_INTERPOLATION_MS\":member", - "docComment": "/**\n * Emitted when the interpolation time in milliseconds applied to local scale changes is set.\n */\n", + "kind": "Property", + "canonicalReference": "server!EntityModelNodeOverride#localScaleInterpolationMs:member", + "docComment": "/**\n * The interpolation time in milliseconds applied to local scale changes.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "EntityModelNodeOverrideEvent.SET_LOCAL_SCALE_INTERPOLATION_MS", - "canonicalReference": "server!EntityModelNodeOverrideEvent.SET_LOCAL_SCALE_INTERPOLATION_MS:member" - }, - { - "kind": "Content", - "text": "]: " - }, - { - "kind": "Content", - "text": "{\n entityModelNodeOverride: " - }, - { - "kind": "Reference", - "text": "EntityModelNodeOverride", - "canonicalReference": "server!EntityModelNodeOverride:class" + "text": "get localScaleInterpolationMs(): " }, { "kind": "Content", - "text": ";\n interpolationMs: number | undefined;\n }" + "text": "number | undefined" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, + "isReadonly": true, "isOptional": false, "releaseTag": "Public", - "name": "\"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE_INTERPOLATION_MS\"", + "name": "localScaleInterpolationMs", "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 6 - } + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityModelNodeOverrideEventPayloads#\"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE\":member", - "docComment": "/**\n * Emitted when the scale for matching nodes is set.\n */\n", + "kind": "Property", + "canonicalReference": "server!EntityModelNodeOverride#name:member", + "docComment": "/**\n * Alias used by networking serializer and protocol schema (`n`).\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "EntityModelNodeOverrideEvent.SET_LOCAL_SCALE", - "canonicalReference": "server!EntityModelNodeOverrideEvent.SET_LOCAL_SCALE:member" - }, - { - "kind": "Content", - "text": "]: " - }, - { - "kind": "Content", - "text": "{\n entityModelNodeOverride: " - }, - { - "kind": "Reference", - "text": "EntityModelNodeOverride", - "canonicalReference": "server!EntityModelNodeOverride:class" - }, - { - "kind": "Content", - "text": ";\n localScale: " - }, - { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "text": "get name(): " }, { "kind": "Content", - "text": " | undefined;\n }" + "text": "string" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, + "isReadonly": true, "isOptional": false, "releaseTag": "Public", - "name": "\"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE\"", + "name": "name", "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 8 - } - } - ], - "extendsTokenRanges": [] - }, - { - "kind": "Interface", - "canonicalReference": "server!EntityModelNodeOverrideOptions:interface", - "docComment": "/**\n * The options for creating an EntityModelNodeOverride instance.\n *\n * **Category:** Entities\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export interface EntityModelNodeOverrideOptions " - } - ], - "fileUrlPath": "src/worlds/entities/EntityModelNodeOverride.ts", - "releaseTag": "Public", - "name": "EntityModelNodeOverrideOptions", - "preserveMemberOrder": false, - "members": [ + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false + }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityModelNodeOverrideOptions#emissiveColor:member", - "docComment": "/**\n * The emissive color for matching nodes.\n */\n", + "kind": "Property", + "canonicalReference": "server!EntityModelNodeOverride#nameMatch:member", + "docComment": "/**\n * The node name match selector for this override. Exact match by default, with optional edge wildcard (`head*`, `*head`, `*head*`).\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "emissiveColor?: " + "text": "get nameMatch(): " }, { - "kind": "Reference", - "text": "RgbColor", - "canonicalReference": "server!RgbColor:interface" + "kind": "Content", + "text": "string" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": true, + "isReadonly": true, + "isOptional": false, "releaseTag": "Public", - "name": "emissiveColor", + "name": "nameMatch", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - } + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityModelNodeOverrideOptions#emissiveIntensity:member", - "docComment": "/**\n * The emissive intensity for matching nodes.\n */\n", + "kind": "Method", + "canonicalReference": "server!EntityModelNodeOverride#remove:member(1)", + "docComment": "/**\n * Removes this model node override from its parent entity.\n *\n * @remarks\n *\n * This delegates to `Entity.removeModelNodeOverride()` so that map mutation and related event emission remain centralized on the entity.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "emissiveIntensity?: " + "text": "remove(): " }, { "kind": "Content", - "text": "number" + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": true, - "releaseTag": "Public", - "name": "emissiveIntensity", - "propertyTypeTokenRange": { + "isStatic": false, + "returnTypeTokenRange": { "startIndex": 1, "endIndex": 2 - } + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [], + "isOptional": false, + "isAbstract": false, + "name": "remove" }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityModelNodeOverrideOptions#entity:member", - "docComment": "/**\n * The entity that the model node override belongs to.\n */\n", + "kind": "Method", + "canonicalReference": "server!EntityModelNodeOverride#setEmissiveColor:member(1)", + "docComment": "/**\n * Sets the emissive color for matching nodes.\n *\n * @param emissiveColor - The emissive color to set.\n *\n * **Side effects:** Emits `EntityModelNodeOverrideEvent.SET_EMISSIVE_COLOR` when spawned.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "entity: " + "text": "setEmissiveColor(emissiveColor: " }, { "kind": "Reference", - "text": "Entity", - "canonicalReference": "server!Entity:class" + "text": "RgbColor", + "canonicalReference": "server!RgbColor:interface" }, { "kind": "Content", - "text": ";" - } - ], - "isReadonly": false, - "isOptional": false, - "releaseTag": "Public", - "name": "entity", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } - }, - { - "kind": "PropertySignature", - "canonicalReference": "server!EntityModelNodeOverrideOptions#hidden:member", - "docComment": "/**\n * The hidden state for matching nodes.\n */\n", - "excerptTokens": [ + "text": " | undefined" + }, { "kind": "Content", - "text": "hidden?: " + "text": "): " }, { "kind": "Content", - "text": "boolean" + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": true, + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 4, + "endIndex": 5 + }, "releaseTag": "Public", - "name": "hidden", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "emissiveColor", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 3 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setEmissiveColor" }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityModelNodeOverrideOptions#localPosition:member", - "docComment": "/**\n * The local position for matching nodes.\n */\n", + "kind": "Method", + "canonicalReference": "server!EntityModelNodeOverride#setEmissiveIntensity:member(1)", + "docComment": "/**\n * Sets the emissive intensity for matching nodes.\n *\n * @param emissiveIntensity - The emissive intensity to set.\n *\n * **Side effects:** Emits `EntityModelNodeOverrideEvent.SET_EMISSIVE_INTENSITY` when spawned.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "localPosition?: " - }, - { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "text": "setEmissiveIntensity(emissiveIntensity: " }, { "kind": "Content", - "text": ";" - } - ], - "isReadonly": false, - "isOptional": true, - "releaseTag": "Public", - "name": "localPosition", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } - }, - { - "kind": "PropertySignature", - "canonicalReference": "server!EntityModelNodeOverrideOptions#localPositionInterpolationMs:member", - "docComment": "/**\n * The interpolation time in milliseconds applied to local position changes.\n */\n", - "excerptTokens": [ + "text": "number | undefined" + }, { "kind": "Content", - "text": "localPositionInterpolationMs?: " + "text": "): " }, { "kind": "Content", - "text": "number" + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": true, + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, "releaseTag": "Public", - "name": "localPositionInterpolationMs", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "emissiveIntensity", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setEmissiveIntensity" }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityModelNodeOverrideOptions#localRotation:member", - "docComment": "/**\n * The local rotation for matching nodes.\n */\n", + "kind": "Method", + "canonicalReference": "server!EntityModelNodeOverride#setHidden:member(1)", + "docComment": "/**\n * Sets the hidden state for matching nodes.\n *\n * @param hidden - The hidden state to set.\n *\n * **Side effects:** Emits `EntityModelNodeOverrideEvent.SET_HIDDEN` when spawned.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "localRotation?: " - }, - { - "kind": "Reference", - "text": "QuaternionLike", - "canonicalReference": "server!QuaternionLike:interface" + "text": "setHidden(hidden: " }, { "kind": "Content", - "text": ";" - } - ], - "isReadonly": false, - "isOptional": true, - "releaseTag": "Public", - "name": "localRotation", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } - }, - { - "kind": "PropertySignature", - "canonicalReference": "server!EntityModelNodeOverrideOptions#localRotationInterpolationMs:member", - "docComment": "/**\n * The interpolation time in milliseconds applied to local rotation changes.\n */\n", - "excerptTokens": [ + "text": "boolean" + }, { "kind": "Content", - "text": "localRotationInterpolationMs?: " + "text": "): " }, { "kind": "Content", - "text": "number" + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": true, + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, "releaseTag": "Public", - "name": "localRotationInterpolationMs", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "hidden", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setHidden" }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityModelNodeOverrideOptions#localScale:member", - "docComment": "/**\n * The local scale for matching nodes.\n */\n", + "kind": "Method", + "canonicalReference": "server!EntityModelNodeOverride#setLocalPosition:member(1)", + "docComment": "/**\n * Sets the local position for matching nodes.\n *\n * @param localPosition - The local position to set.\n *\n * **Side effects:** Emits `EntityModelNodeOverrideEvent.SET_LOCAL_POSITION` when spawned.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "localScale?: " + "text": "setLocalPosition(localPosition: " }, { "kind": "Reference", @@ -23399,151 +23749,156 @@ }, { "kind": "Content", - "text": " | number" + "text": " | undefined" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Content", + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": true, + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 4, + "endIndex": 5 + }, "releaseTag": "Public", - "name": "localScale", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 3 - } + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "localPosition", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 3 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setLocalPosition" }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityModelNodeOverrideOptions#localScaleInterpolationMs:member", - "docComment": "/**\n * The interpolation time in milliseconds applied to local scale changes.\n */\n", + "kind": "Method", + "canonicalReference": "server!EntityModelNodeOverride#setLocalPositionInterpolationMs:member(1)", + "docComment": "/**\n * Sets the interpolation time in milliseconds applied to local position changes.\n *\n * @param interpolationMs - The interpolation time in milliseconds to set.\n *\n * **Side effects:** Emits `EntityModelNodeOverrideEvent.SET_LOCAL_POSITION_INTERPOLATION_MS` when spawned.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "localScaleInterpolationMs?: " + "text": "setLocalPositionInterpolationMs(interpolationMs: " }, { "kind": "Content", - "text": "number" + "text": "number | undefined" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Content", + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": true, + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, "releaseTag": "Public", - "name": "localScaleInterpolationMs", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "interpolationMs", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setLocalPositionInterpolationMs" }, { - "kind": "PropertySignature", - "canonicalReference": "server!EntityModelNodeOverrideOptions#nameMatch:member", - "docComment": "/**\n * The node name match selector. Case-insensitive exact match by default, with optional edge wildcard (`head*`, `*head`, `*head*`).\n */\n", + "kind": "Method", + "canonicalReference": "server!EntityModelNodeOverride#setLocalRotation:member(1)", + "docComment": "/**\n * Sets the local rotation for matching nodes.\n *\n * @param localRotation - The local rotation to set.\n *\n * **Side effects:** Emits `EntityModelNodeOverrideEvent.SET_LOCAL_ROTATION` when spawned.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "nameMatch: " + "text": "setLocalRotation(localRotation: " + }, + { + "kind": "Reference", + "text": "QuaternionLike", + "canonicalReference": "server!QuaternionLike:interface" }, { "kind": "Content", - "text": "string" + "text": " | undefined" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Content", + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": false, + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 4, + "endIndex": 5 + }, "releaseTag": "Public", - "name": "nameMatch", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } - } - ], - "extendsTokenRanges": [] - }, - { - "kind": "TypeAlias", - "canonicalReference": "server!EntityOptions:type", - "docComment": "/**\n * The options for creating an `Entity` instance.\n *\n * Use for: constructing an entity; choose `BlockEntityOptions` or `ModelEntityOptions`. Do NOT use for: mutating entity state after spawn; use entity setters and methods.\n *\n * **Category:** Entities\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export type EntityOptions = " - }, - { - "kind": "Reference", - "text": "BlockEntityOptions", - "canonicalReference": "server!BlockEntityOptions:interface" - }, - { - "kind": "Content", - "text": " | " - }, - { - "kind": "Reference", - "text": "ModelEntityOptions", - "canonicalReference": "server!ModelEntityOptions:interface" + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "localRotation", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 3 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setLocalRotation" }, - { - "kind": "Content", - "text": ";" - } - ], - "fileUrlPath": "src/worlds/entities/Entity.ts", - "releaseTag": "Public", - "name": "EntityOptions", - "typeTokenRange": { - "startIndex": 1, - "endIndex": 4 - } - }, - { - "kind": "Class", - "canonicalReference": "server!ErrorHandler:class", - "docComment": "/**\n * Manages error and warning logging.\n *\n * When to use: reporting recoverable issues or fatal errors with consistent formatting. Do NOT use for: normal control flow; prefer explicit return values or exceptions.\n *\n * @remarks\n *\n * In production, `console.log` is disabled to reduce log spam; use `console.info` instead. Pattern: log warnings for recoverable issues and use `ErrorHandler.fatalError` for unrecoverable state. Anti-pattern: swallowing exceptions without logging context.\n *\n * **Category:** Utilities\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export default class ErrorHandler " - } - ], - "fileUrlPath": "src/errors/ErrorHandler.ts", - "releaseTag": "Public", - "isAbstract": false, - "name": "ErrorHandler", - "preserveMemberOrder": false, - "members": [ { "kind": "Method", - "canonicalReference": "server!ErrorHandler.error:member(1)", - "docComment": "/**\n * Logs a formatted error message with stack trace to help debug issues\n *\n * @param message - The error message to display\n *\n * @param context - Optional context information about the error\n *\n * **Side effects:** Writes to stderr and increments the error count.\n *\n * **Category:** Utilities\n */\n", + "canonicalReference": "server!EntityModelNodeOverride#setLocalRotationInterpolationMs:member(1)", + "docComment": "/**\n * Sets the interpolation time in milliseconds applied to local rotation changes.\n *\n * @param interpolationMs - The interpolation time in milliseconds to set.\n *\n * **Side effects:** Emits `EntityModelNodeOverrideEvent.SET_LOCAL_ROTATION_INTERPOLATION_MS` when spawned.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "static error(message: " - }, - { - "kind": "Content", - "text": "string" - }, - { - "kind": "Content", - "text": ", context?: " + "text": "setLocalRotationInterpolationMs(interpolationMs: " }, { "kind": "Content", - "text": "string" + "text": "number | undefined" }, { "kind": "Content", @@ -23558,56 +23913,45 @@ "text": ";" } ], - "isStatic": true, + "isStatic": false, "returnTypeTokenRange": { - "startIndex": 5, - "endIndex": 6 + "startIndex": 3, + "endIndex": 4 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, "parameters": [ { - "parameterName": "message", + "parameterName": "interpolationMs", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, "isOptional": false - }, - { - "parameterName": "context", - "parameterTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "isOptional": true } ], "isOptional": false, "isAbstract": false, - "name": "error" + "name": "setLocalRotationInterpolationMs" }, { "kind": "Method", - "canonicalReference": "server!ErrorHandler.fatalError:member(1)", - "docComment": "/**\n * Logs a formatted fatal error message with stack trace and throws the error\n *\n * @param message - The error message to display\n *\n * @param context - Optional context information about the error\n *\n * @throws\n *\n * The created Error object\n *\n * **Side effects:** Writes to stderr and throws, terminating the current execution path.\n *\n * **Category:** Utilities\n */\n", + "canonicalReference": "server!EntityModelNodeOverride#setLocalScale:member(1)", + "docComment": "/**\n * Sets the local scale for matching nodes.\n *\n * @param localScale - The local scale to set.\n *\n * **Side effects:** Emits `EntityModelNodeOverrideEvent.SET_LOCAL_SCALE` when spawned.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "static fatalError(message: " - }, - { - "kind": "Content", - "text": "string" + "text": "setLocalScale(localScale: " }, { - "kind": "Content", - "text": ", context?: " + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", - "text": "string" + "text": " | number | undefined" }, { "kind": "Content", @@ -23615,63 +23959,47 @@ }, { "kind": "Content", - "text": "never" + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isStatic": true, + "isStatic": false, "returnTypeTokenRange": { - "startIndex": 5, - "endIndex": 6 + "startIndex": 4, + "endIndex": 5 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, "parameters": [ { - "parameterName": "message", + "parameterName": "localScale", "parameterTypeTokenRange": { "startIndex": 1, - "endIndex": 2 + "endIndex": 3 }, "isOptional": false - }, - { - "parameterName": "context", - "parameterTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "isOptional": true } ], "isOptional": false, "isAbstract": false, - "name": "fatalError" + "name": "setLocalScale" }, { "kind": "Method", - "canonicalReference": "server!ErrorHandler.warning:member(1)", - "docComment": "/**\n * Logs a formatted warning message to alert about potential issues\n *\n * @param message - The warning message to display\n *\n * @param context - Optional context information about the warning\n *\n * **Side effects:** Writes to stderr and increments the warning count.\n *\n * **Category:** Utilities\n */\n", + "canonicalReference": "server!EntityModelNodeOverride#setLocalScaleInterpolationMs:member(1)", + "docComment": "/**\n * Sets the interpolation time in milliseconds applied to local scale changes.\n *\n * @param interpolationMs - The interpolation time in milliseconds to set.\n *\n * **Side effects:** Emits `EntityModelNodeOverrideEvent.SET_LOCAL_SCALE_INTERPOLATION_MS` when spawned.\n *\n * **Category:** Entities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "static warning(message: " - }, - { - "kind": "Content", - "text": "string" - }, - { - "kind": "Content", - "text": ", context?: " + "text": "setLocalScaleInterpolationMs(interpolationMs: " }, { "kind": "Content", - "text": "string" + "text": "number | undefined" }, { "kind": "Content", @@ -23686,1055 +24014,807 @@ "text": ";" } ], - "isStatic": true, + "isStatic": false, "returnTypeTokenRange": { - "startIndex": 5, - "endIndex": 6 + "startIndex": 3, + "endIndex": 4 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, "parameters": [ { - "parameterName": "message", + "parameterName": "interpolationMs", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, "isOptional": false - }, - { - "parameterName": "context", - "parameterTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "isOptional": true } ], "isOptional": false, "isAbstract": false, - "name": "warning" + "name": "setLocalScaleInterpolationMs" } ], - "implementsTokenRanges": [] + "implementsTokenRanges": [ + { + "startIndex": 1, + "endIndex": 2 + } + ] }, { - "kind": "Interface", - "canonicalReference": "server!EventPayloads:interface", - "docComment": "/**\n * The payloads for all events in the game server.\n *\n * **Category:** Events\n *\n * @public\n */\n", + "kind": "Enum", + "canonicalReference": "server!EntityModelNodeOverrideEvent:enum", + "docComment": "/**\n * Event types an EntityModelNodeOverride instance can emit.\n *\n * See `EntityModelNodeOverrideEventPayloads` for payloads.\n *\n * **Category:** Events\n *\n * @public\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "export interface EventPayloads extends " - }, - { - "kind": "Reference", - "text": "AudioEventPayloads", - "canonicalReference": "server!AudioEventPayloads:interface" - }, - { - "kind": "Content", - "text": ", " - }, - { - "kind": "Reference", - "text": "BaseEntityControllerEventPayloads", - "canonicalReference": "server!BaseEntityControllerEventPayloads:interface" - }, - { - "kind": "Content", - "text": ", " - }, - { - "kind": "Reference", - "text": "BlockTypeEventPayloads", - "canonicalReference": "server!BlockTypeEventPayloads:interface" - }, - { - "kind": "Content", - "text": ", " - }, - { - "kind": "Reference", - "text": "BlockTypeRegistryEventPayloads", - "canonicalReference": "server!BlockTypeRegistryEventPayloads:interface" - }, - { - "kind": "Content", - "text": ", " - }, + "text": "export declare enum EntityModelNodeOverrideEvent " + } + ], + "fileUrlPath": "src/worlds/entities/EntityModelNodeOverride.ts", + "releaseTag": "Public", + "name": "EntityModelNodeOverrideEvent", + "preserveMemberOrder": false, + "members": [ { - "kind": "Reference", - "text": "ChatEventPayloads", - "canonicalReference": "server!ChatEventPayloads:interface" + "kind": "EnumMember", + "canonicalReference": "server!EntityModelNodeOverrideEvent.SET_EMISSIVE_COLOR:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "SET_EMISSIVE_COLOR = " + }, + { + "kind": "Content", + "text": "\"ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_COLOR\"" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "SET_EMISSIVE_COLOR" }, { - "kind": "Content", - "text": ", " + "kind": "EnumMember", + "canonicalReference": "server!EntityModelNodeOverrideEvent.SET_EMISSIVE_INTENSITY:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "SET_EMISSIVE_INTENSITY = " + }, + { + "kind": "Content", + "text": "\"ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_INTENSITY\"" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "SET_EMISSIVE_INTENSITY" }, { - "kind": "Reference", - "text": "ChunkLatticeEventPayloads", - "canonicalReference": "server!ChunkLatticeEventPayloads:interface" + "kind": "EnumMember", + "canonicalReference": "server!EntityModelNodeOverrideEvent.SET_HIDDEN:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "SET_HIDDEN = " + }, + { + "kind": "Content", + "text": "\"ENTITY_MODEL_NODE_OVERRIDE.SET_HIDDEN\"" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "SET_HIDDEN" }, { - "kind": "Content", - "text": ", " + "kind": "EnumMember", + "canonicalReference": "server!EntityModelNodeOverrideEvent.SET_LOCAL_POSITION:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "SET_LOCAL_POSITION = " + }, + { + "kind": "Content", + "text": "\"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION\"" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "SET_LOCAL_POSITION" }, { - "kind": "Reference", - "text": "ConnectionEventPayloads", - "canonicalReference": "server!~ConnectionEventPayloads:interface" + "kind": "EnumMember", + "canonicalReference": "server!EntityModelNodeOverrideEvent.SET_LOCAL_POSITION_INTERPOLATION_MS:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "SET_LOCAL_POSITION_INTERPOLATION_MS = " + }, + { + "kind": "Content", + "text": "\"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION_INTERPOLATION_MS\"" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "SET_LOCAL_POSITION_INTERPOLATION_MS" }, { - "kind": "Content", - "text": ", " + "kind": "EnumMember", + "canonicalReference": "server!EntityModelNodeOverrideEvent.SET_LOCAL_ROTATION:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "SET_LOCAL_ROTATION = " + }, + { + "kind": "Content", + "text": "\"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION\"" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "SET_LOCAL_ROTATION" }, { - "kind": "Reference", - "text": "EntityEventPayloads", - "canonicalReference": "server!EntityEventPayloads:interface" + "kind": "EnumMember", + "canonicalReference": "server!EntityModelNodeOverrideEvent.SET_LOCAL_ROTATION_INTERPOLATION_MS:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "SET_LOCAL_ROTATION_INTERPOLATION_MS = " + }, + { + "kind": "Content", + "text": "\"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION_INTERPOLATION_MS\"" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "SET_LOCAL_ROTATION_INTERPOLATION_MS" }, { - "kind": "Content", - "text": ", " + "kind": "EnumMember", + "canonicalReference": "server!EntityModelNodeOverrideEvent.SET_LOCAL_SCALE:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "SET_LOCAL_SCALE = " + }, + { + "kind": "Content", + "text": "\"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE\"" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "SET_LOCAL_SCALE" }, { - "kind": "Reference", - "text": "EntityModelAnimationEventPayloads", - "canonicalReference": "server!EntityModelAnimationEventPayloads:interface" - }, + "kind": "EnumMember", + "canonicalReference": "server!EntityModelNodeOverrideEvent.SET_LOCAL_SCALE_INTERPOLATION_MS:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "SET_LOCAL_SCALE_INTERPOLATION_MS = " + }, + { + "kind": "Content", + "text": "\"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE_INTERPOLATION_MS\"" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "SET_LOCAL_SCALE_INTERPOLATION_MS" + } + ] + }, + { + "kind": "Interface", + "canonicalReference": "server!EntityModelNodeOverrideEventPayloads:interface", + "docComment": "/**\n * Event payloads for EntityModelNodeOverride emitted events.\n *\n * **Category:** Events\n *\n * @public\n */\n", + "excerptTokens": [ { "kind": "Content", - "text": ", " - }, + "text": "export interface EntityModelNodeOverrideEventPayloads " + } + ], + "fileUrlPath": "src/worlds/entities/EntityModelNodeOverride.ts", + "releaseTag": "Public", + "name": "EntityModelNodeOverrideEventPayloads", + "preserveMemberOrder": false, + "members": [ { - "kind": "Reference", - "text": "EntityModelNodeOverrideEventPayloads", - "canonicalReference": "server!EntityModelNodeOverrideEventPayloads:interface" - }, - { - "kind": "Content", - "text": ", " - }, - { - "kind": "Reference", - "text": "GameServerEventPayloads", - "canonicalReference": "server!GameServerEventPayloads:interface" - }, - { - "kind": "Content", - "text": ", " - }, - { - "kind": "Reference", - "text": "ParticleEmitterEventPayloads", - "canonicalReference": "server!ParticleEmitterEventPayloads:interface" - }, - { - "kind": "Content", - "text": ", " - }, - { - "kind": "Reference", - "text": "PlayerCameraEventPayloads", - "canonicalReference": "server!PlayerCameraEventPayloads:interface" - }, - { - "kind": "Content", - "text": ", " - }, - { - "kind": "Reference", - "text": "PlayerEventPayloads", - "canonicalReference": "server!PlayerEventPayloads:interface" - }, - { - "kind": "Content", - "text": ", " - }, - { - "kind": "Reference", - "text": "PlayerManagerEventPayloads", - "canonicalReference": "server!PlayerManagerEventPayloads:interface" - }, - { - "kind": "Content", - "text": ", " - }, - { - "kind": "Reference", - "text": "PlayerUIEventPayloads", - "canonicalReference": "server!PlayerUIEventPayloads:interface" - }, - { - "kind": "Content", - "text": ", " - }, - { - "kind": "Reference", - "text": "SceneUIEventPayloads", - "canonicalReference": "server!SceneUIEventPayloads:interface" - }, - { - "kind": "Content", - "text": ", " - }, - { - "kind": "Reference", - "text": "SimulationEventPayloads", - "canonicalReference": "server!SimulationEventPayloads:interface" - }, - { - "kind": "Content", - "text": ", " - }, - { - "kind": "Reference", - "text": "WebServerEventPayloads", - "canonicalReference": "server!~WebServerEventPayloads:interface" - }, - { - "kind": "Content", - "text": ", " - }, - { - "kind": "Reference", - "text": "WorldEventPayloads", - "canonicalReference": "server!WorldEventPayloads:interface" - }, - { - "kind": "Content", - "text": ", " - }, - { - "kind": "Reference", - "text": "WorldLoopEventPayloads", - "canonicalReference": "server!WorldLoopEventPayloads:interface" - }, - { - "kind": "Content", - "text": ", " - }, - { - "kind": "Reference", - "text": "WorldManagerEventPayloads", - "canonicalReference": "server!WorldManagerEventPayloads:interface" - }, - { - "kind": "Content", - "text": " " - } - ], - "fileUrlPath": "src/events/Events.ts", - "releaseTag": "Public", - "name": "EventPayloads", - "preserveMemberOrder": false, - "members": [], - "extendsTokenRanges": [ - { - "startIndex": 1, - "endIndex": 2 - }, - { - "startIndex": 3, - "endIndex": 4 - }, - { - "startIndex": 5, - "endIndex": 6 - }, - { - "startIndex": 7, - "endIndex": 8 - }, - { - "startIndex": 9, - "endIndex": 10 - }, - { - "startIndex": 11, - "endIndex": 12 - }, - { - "startIndex": 13, - "endIndex": 14 - }, - { - "startIndex": 15, - "endIndex": 16 - }, - { - "startIndex": 17, - "endIndex": 18 - }, - { - "startIndex": 19, - "endIndex": 20 - }, - { - "startIndex": 21, - "endIndex": 22 - }, - { - "startIndex": 23, - "endIndex": 24 - }, - { - "startIndex": 25, - "endIndex": 26 - }, - { - "startIndex": 27, - "endIndex": 28 - }, - { - "startIndex": 29, - "endIndex": 30 - }, - { - "startIndex": 31, - "endIndex": 32 - }, - { - "startIndex": 33, - "endIndex": 34 - }, - { - "startIndex": 35, - "endIndex": 36 - }, - { - "startIndex": 37, - "endIndex": 38 - }, - { - "startIndex": 39, - "endIndex": 40 - }, - { - "startIndex": 41, - "endIndex": 42 - }, - { - "startIndex": 43, - "endIndex": 44 - } - ] - }, - { - "kind": "Class", - "canonicalReference": "server!EventRouter:class", - "docComment": "/**\n * Routes events to listeners in local, world, or global scope.\n *\n * When to use: event-driven hooks within server subsystems. Do NOT use for: high-frequency per-entity updates; prefer direct method calls for hot paths.\n *\n * @remarks\n *\n * Provides local emission, world-scoped emission, and a shared global instance. Pattern: use `EventRouter.emitWithWorld()` for world-scoped events and `final()` to install a single terminal listener. Anti-pattern: installing multiple final listeners for the same event type; only one is supported.\n *\n * **Category:** Events\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export default class EventRouter " - } - ], - "fileUrlPath": "src/events/EventRouter.ts", - "releaseTag": "Public", - "isAbstract": false, - "name": "EventRouter", - "preserveMemberOrder": false, - "members": [ - { - "kind": "Method", - "canonicalReference": "server!EventRouter#emit:member(1)", - "docComment": "/**\n * Emit an event, invoking all registered listeners for the event type.\n *\n * @param eventType - The type of event to emit.\n *\n * @param payload - The payload to emit.\n *\n * @returns `true` if any listeners were found and invoked, `false` otherwise.\n *\n * **Side effects:** Invokes listeners registered for the event type.\n *\n * **Category:** Events\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!EntityModelNodeOverrideEventPayloads#\"ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_COLOR\":member", + "docComment": "/**\n * Emitted when the emissive color for matching nodes is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "emit(eventType: " + "text": "EntityModelNodeOverrideEvent.SET_EMISSIVE_COLOR", + "canonicalReference": "server!EntityModelNodeOverrideEvent.SET_EMISSIVE_COLOR:member" }, { "kind": "Content", - "text": "TEventType" + "text": "]: " }, { "kind": "Content", - "text": ", payload: " + "text": "{\n entityModelNodeOverride: " }, { "kind": "Reference", - "text": "EventPayloads", - "canonicalReference": "server!EventPayloads:interface" + "text": "EntityModelNodeOverride", + "canonicalReference": "server!EntityModelNodeOverride:class" }, { "kind": "Content", - "text": "[TEventType]" + "text": ";\n emissiveColor: " }, { - "kind": "Content", - "text": "): " + "kind": "Reference", + "text": "RgbColor", + "canonicalReference": "server!RgbColor:interface" }, { "kind": "Content", - "text": "boolean" + "text": " | undefined;\n }" }, { "kind": "Content", "text": ";" } ], - "typeParameters": [ - { - "typeParameterName": "TEventType", - "constraintTokenRange": { - "startIndex": 1, - "endIndex": 3 - }, - "defaultTypeTokenRange": { - "startIndex": 0, - "endIndex": 0 - } - } - ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 9, - "endIndex": 10 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "eventType", - "parameterTypeTokenRange": { - "startIndex": 4, - "endIndex": 5 - }, - "isOptional": false - }, - { - "parameterName": "payload", - "parameterTypeTokenRange": { - "startIndex": 6, - "endIndex": 8 - }, - "isOptional": false - } - ], + "isReadonly": false, "isOptional": false, - "isAbstract": false, - "name": "emit" + "releaseTag": "Public", + "name": "\"ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_COLOR\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 8 + } }, { - "kind": "Method", - "canonicalReference": "server!EventRouter#emit:member(2)", - "docComment": "", + "kind": "PropertySignature", + "canonicalReference": "server!EntityModelNodeOverrideEventPayloads#\"ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_INTENSITY\":member", + "docComment": "/**\n * Emitted when the emissive intensity for matching nodes is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "emit(eventType: " + "text": "[" }, { - "kind": "Content", - "text": "string" + "kind": "Reference", + "text": "EntityModelNodeOverrideEvent.SET_EMISSIVE_INTENSITY", + "canonicalReference": "server!EntityModelNodeOverrideEvent.SET_EMISSIVE_INTENSITY:member" }, { "kind": "Content", - "text": ", payload: " + "text": "]: " }, { "kind": "Content", - "text": "any" + "text": "{\n entityModelNodeOverride: " }, { - "kind": "Content", - "text": "): " + "kind": "Reference", + "text": "EntityModelNodeOverride", + "canonicalReference": "server!EntityModelNodeOverride:class" }, { "kind": "Content", - "text": "boolean" + "text": ";\n emissiveIntensity: number | undefined;\n }" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 5, - "endIndex": 6 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 2, - "parameters": [ - { - "parameterName": "eventType", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - }, - { - "parameterName": "payload", - "parameterTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "isOptional": false - } - ], + "isReadonly": false, "isOptional": false, - "isAbstract": false, - "name": "emit" + "releaseTag": "Public", + "name": "\"ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_INTENSITY\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 6 + } }, { - "kind": "Method", - "canonicalReference": "server!EventRouter#emitWithGlobal:member(1)", - "docComment": "/**\n * Emits an event to the local and global server instance event routers.\n *\n * @param eventType - The type of event to emit.\n *\n * @param payload - The payload to emit.\n *\n * **Side effects:** Invokes local listeners and `EventRouter.globalInstance` listeners.\n *\n * @see\n *\n * `EventRouter.emit()`\n *\n * **Category:** Events\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!EntityModelNodeOverrideEventPayloads#\"ENTITY_MODEL_NODE_OVERRIDE.SET_HIDDEN\":member", + "docComment": "/**\n * Emitted when the hidden state for matching nodes is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "emitWithGlobal(eventType: " + "text": ";\n hidden: boolean;\n }" }, { "kind": "Content", - "text": "TEventType" - }, + "text": ";" + } + ], + "isReadonly": false, + "isOptional": false, + "releaseTag": "Public", + "name": "\"ENTITY_MODEL_NODE_OVERRIDE.SET_HIDDEN\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 6 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!EntityModelNodeOverrideEventPayloads#\"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION_INTERPOLATION_MS\":member", + "docComment": "/**\n * Emitted when the interpolation time in milliseconds applied to local position changes is set.\n */\n", + "excerptTokens": [ { "kind": "Content", - "text": ", payload: " + "text": "[" }, { "kind": "Reference", - "text": "EventPayloads", - "canonicalReference": "server!EventPayloads:interface" + "text": "EntityModelNodeOverrideEvent.SET_LOCAL_POSITION_INTERPOLATION_MS", + "canonicalReference": "server!EntityModelNodeOverrideEvent.SET_LOCAL_POSITION_INTERPOLATION_MS:member" }, { "kind": "Content", - "text": "[TEventType]" + "text": "]: " }, { "kind": "Content", - "text": "): " + "text": "{\n entityModelNodeOverride: " }, { - "kind": "Content", - "text": "void" + "kind": "Reference", + "text": "EntityModelNodeOverride", + "canonicalReference": "server!EntityModelNodeOverride:class" }, { "kind": "Content", - "text": ";" - } - ], - "typeParameters": [ - { - "typeParameterName": "TEventType", - "constraintTokenRange": { - "startIndex": 1, - "endIndex": 3 - }, - "defaultTypeTokenRange": { - "startIndex": 0, - "endIndex": 0 - } - } - ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 9, - "endIndex": 10 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "eventType", - "parameterTypeTokenRange": { - "startIndex": 4, - "endIndex": 5 - }, - "isOptional": false + "text": ";\n interpolationMs: number | undefined;\n }" }, { - "parameterName": "payload", - "parameterTypeTokenRange": { - "startIndex": 6, - "endIndex": 8 - }, - "isOptional": false + "kind": "Content", + "text": ";" } ], + "isReadonly": false, "isOptional": false, - "isAbstract": false, - "name": "emitWithGlobal" + "releaseTag": "Public", + "name": "\"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION_INTERPOLATION_MS\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 6 + } }, { - "kind": "Method", - "canonicalReference": "server!EventRouter#emitWithGlobal:member(2)", - "docComment": "", + "kind": "PropertySignature", + "canonicalReference": "server!EntityModelNodeOverrideEventPayloads#\"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION\":member", + "docComment": "/**\n * Emitted when the position for matching nodes is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "emitWithGlobal(eventType: " + "text": "[" }, { - "kind": "Content", - "text": "string" + "kind": "Reference", + "text": "EntityModelNodeOverrideEvent.SET_LOCAL_POSITION", + "canonicalReference": "server!EntityModelNodeOverrideEvent.SET_LOCAL_POSITION:member" }, { "kind": "Content", - "text": ", payload: " + "text": "]: " }, { "kind": "Content", - "text": "any" + "text": "{\n entityModelNodeOverride: " + }, + { + "kind": "Reference", + "text": "EntityModelNodeOverride", + "canonicalReference": "server!EntityModelNodeOverride:class" }, { "kind": "Content", - "text": "): " + "text": ";\n localPosition: " + }, + { + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", - "text": "void" + "text": " | undefined;\n }" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 5, - "endIndex": 6 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 2, - "parameters": [ - { - "parameterName": "eventType", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - }, - { - "parameterName": "payload", - "parameterTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "isOptional": false - } - ], + "isReadonly": false, "isOptional": false, - "isAbstract": false, - "name": "emitWithGlobal" + "releaseTag": "Public", + "name": "\"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 8 + } }, { - "kind": "Method", - "canonicalReference": "server!EventRouter#emitWithWorld:member(1)", - "docComment": "/**\n * Emits an event to local and provided world event routers.\n *\n * @param world - The world to broadcast the event to.\n *\n * @param eventType - The type of event to broadcast.\n *\n * @param payload - The payload to broadcast.\n *\n * **Requires:** The provided world must be active and using the same event payload types.\n *\n * **Side effects:** Invokes local listeners and listeners registered on the world instance.\n *\n * @see\n *\n * `EventRouter.emit()`\n *\n * **Category:** Events\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!EntityModelNodeOverrideEventPayloads#\"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION_INTERPOLATION_MS\":member", + "docComment": "/**\n * Emitted when the interpolation time in milliseconds applied to local rotation changes is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "emitWithWorld(world: " + "text": "{\n entityModelNodeOverride: " }, { "kind": "Reference", - "text": "World", - "canonicalReference": "server!World:class" + "text": "EntityModelNodeOverride", + "canonicalReference": "server!EntityModelNodeOverride:class" }, { "kind": "Content", - "text": ", eventType: " + "text": ";\n interpolationMs: number | undefined;\n }" }, { "kind": "Content", - "text": "TEventType" - }, + "text": ";" + } + ], + "isReadonly": false, + "isOptional": false, + "releaseTag": "Public", + "name": "\"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION_INTERPOLATION_MS\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 6 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!EntityModelNodeOverrideEventPayloads#\"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION\":member", + "docComment": "/**\n * Emitted when the rotation for matching nodes is set.\n */\n", + "excerptTokens": [ { "kind": "Content", - "text": ", payload: " + "text": "[" }, { "kind": "Reference", - "text": "EventPayloads", - "canonicalReference": "server!EventPayloads:interface" + "text": "EntityModelNodeOverrideEvent.SET_LOCAL_ROTATION", + "canonicalReference": "server!EntityModelNodeOverrideEvent.SET_LOCAL_ROTATION:member" }, { "kind": "Content", - "text": "[TEventType]" + "text": "]: " }, { "kind": "Content", - "text": "): " + "text": "{\n entityModelNodeOverride: " }, { - "kind": "Content", - "text": "void" + "kind": "Reference", + "text": "EntityModelNodeOverride", + "canonicalReference": "server!EntityModelNodeOverride:class" }, { "kind": "Content", - "text": ";" - } - ], - "typeParameters": [ - { - "typeParameterName": "TEventType", - "constraintTokenRange": { - "startIndex": 1, - "endIndex": 3 - }, - "defaultTypeTokenRange": { - "startIndex": 0, - "endIndex": 0 - } - } - ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 11, - "endIndex": 12 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ + "text": ";\n localRotation: " + }, { - "parameterName": "world", - "parameterTypeTokenRange": { - "startIndex": 4, - "endIndex": 5 - }, - "isOptional": false + "kind": "Reference", + "text": "QuaternionLike", + "canonicalReference": "server!QuaternionLike:interface" }, { - "parameterName": "eventType", - "parameterTypeTokenRange": { - "startIndex": 6, - "endIndex": 7 - }, - "isOptional": false + "kind": "Content", + "text": " | undefined;\n }" }, { - "parameterName": "payload", - "parameterTypeTokenRange": { - "startIndex": 8, - "endIndex": 10 - }, - "isOptional": false + "kind": "Content", + "text": ";" } ], + "isReadonly": false, "isOptional": false, - "isAbstract": false, - "name": "emitWithWorld" + "releaseTag": "Public", + "name": "\"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 8 + } }, { - "kind": "Method", - "canonicalReference": "server!EventRouter#emitWithWorld:member(2)", - "docComment": "", + "kind": "PropertySignature", + "canonicalReference": "server!EntityModelNodeOverrideEventPayloads#\"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE_INTERPOLATION_MS\":member", + "docComment": "/**\n * Emitted when the interpolation time in milliseconds applied to local scale changes is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "emitWithWorld(world: " + "text": "[" }, { "kind": "Reference", - "text": "World", - "canonicalReference": "server!World:class" - }, - { - "kind": "Content", - "text": ", eventType: " - }, - { - "kind": "Content", - "text": "string" + "text": "EntityModelNodeOverrideEvent.SET_LOCAL_SCALE_INTERPOLATION_MS", + "canonicalReference": "server!EntityModelNodeOverrideEvent.SET_LOCAL_SCALE_INTERPOLATION_MS:member" }, { "kind": "Content", - "text": ", payload: " + "text": "]: " }, { "kind": "Content", - "text": "any" + "text": "{\n entityModelNodeOverride: " }, { - "kind": "Content", - "text": "): " + "kind": "Reference", + "text": "EntityModelNodeOverride", + "canonicalReference": "server!EntityModelNodeOverride:class" }, { "kind": "Content", - "text": "void" + "text": ";\n interpolationMs: number | undefined;\n }" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 7, - "endIndex": 8 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 2, - "parameters": [ - { - "parameterName": "world", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - }, - { - "parameterName": "eventType", - "parameterTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "isOptional": false - }, - { - "parameterName": "payload", - "parameterTypeTokenRange": { - "startIndex": 5, - "endIndex": 6 - }, - "isOptional": false - } - ], + "isReadonly": false, "isOptional": false, - "isAbstract": false, - "name": "emitWithWorld" + "releaseTag": "Public", + "name": "\"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE_INTERPOLATION_MS\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 6 + } }, { - "kind": "Method", - "canonicalReference": "server!EventRouter#final:member(2)", - "docComment": "", + "kind": "PropertySignature", + "canonicalReference": "server!EntityModelNodeOverrideEventPayloads#\"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE\":member", + "docComment": "/**\n * Emitted when the scale for matching nodes is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "final(eventType: " + "text": "[" }, { - "kind": "Content", - "text": "string" + "kind": "Reference", + "text": "EntityModelNodeOverrideEvent.SET_LOCAL_SCALE", + "canonicalReference": "server!EntityModelNodeOverrideEvent.SET_LOCAL_SCALE:member" }, { "kind": "Content", - "text": ", listener: " + "text": "]: " }, { "kind": "Content", - "text": "(payload: any) => void" + "text": "{\n entityModelNodeOverride: " }, { - "kind": "Content", - "text": "): " + "kind": "Reference", + "text": "EntityModelNodeOverride", + "canonicalReference": "server!EntityModelNodeOverride:class" }, { "kind": "Content", - "text": "void" + "text": ";\n localScale: " }, { - "kind": "Content", - "text": ";" - } - ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 5, - "endIndex": 6 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 2, - "parameters": [ + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" + }, { - "parameterName": "eventType", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false + "kind": "Content", + "text": " | undefined;\n }" }, { - "parameterName": "listener", - "parameterTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "isOptional": false + "kind": "Content", + "text": ";" } ], + "isReadonly": false, "isOptional": false, - "isAbstract": false, - "name": "final" - }, + "releaseTag": "Public", + "name": "\"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 8 + } + } + ], + "extendsTokenRanges": [] + }, + { + "kind": "Interface", + "canonicalReference": "server!EntityModelNodeOverrideOptions:interface", + "docComment": "/**\n * The options for creating an EntityModelNodeOverride instance.\n *\n * **Category:** Entities\n *\n * @public\n */\n", + "excerptTokens": [ { - "kind": "Property", - "canonicalReference": "server!EventRouter.globalInstance:member", - "docComment": "/**\n * The global event router instance.\n *\n * **Category:** Events\n */\n", + "kind": "Content", + "text": "export interface EntityModelNodeOverrideOptions " + } + ], + "fileUrlPath": "src/worlds/entities/EntityModelNodeOverride.ts", + "releaseTag": "Public", + "name": "EntityModelNodeOverrideOptions", + "preserveMemberOrder": false, + "members": [ + { + "kind": "PropertySignature", + "canonicalReference": "server!EntityModelNodeOverrideOptions#emissiveColor:member", + "docComment": "/**\n * The emissive color for matching nodes.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "static readonly globalInstance: " + "text": "emissiveColor?: " }, { "kind": "Reference", - "text": "EventRouter", - "canonicalReference": "server!EventRouter:class" + "text": "RgbColor", + "canonicalReference": "server!RgbColor:interface" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "name": "globalInstance", + "name": "emissiveColor", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - }, - "isStatic": true, - "isProtected": false, - "isAbstract": false + } }, { - "kind": "Method", - "canonicalReference": "server!EventRouter#hasListeners:member(1)", - "docComment": "/**\n * Check if there are listeners for a specific event type.\n *\n * @param eventType - The type of event to check for listeners.\n *\n * @returns `true` if listeners are found, `false` otherwise.\n *\n * **Category:** Events\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!EntityModelNodeOverrideOptions#emissiveIntensity:member", + "docComment": "/**\n * The emissive intensity for matching nodes.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "hasListeners(eventType: " + "text": "number" }, { "kind": "Content", - "text": "TEventType" - }, + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "emissiveIntensity", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!EntityModelNodeOverrideOptions#entity:member", + "docComment": "/**\n * The entity that the model node override belongs to.\n */\n", + "excerptTokens": [ { "kind": "Content", - "text": "): " + "text": "entity: " }, { - "kind": "Content", - "text": "boolean" + "kind": "Reference", + "text": "Entity", + "canonicalReference": "server!Entity:class" }, { "kind": "Content", "text": ";" } ], - "typeParameters": [ - { - "typeParameterName": "TEventType", - "constraintTokenRange": { - "startIndex": 1, - "endIndex": 3 - }, - "defaultTypeTokenRange": { - "startIndex": 0, - "endIndex": 0 - } - } - ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 6, - "endIndex": 7 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "eventType", - "parameterTypeTokenRange": { - "startIndex": 4, - "endIndex": 5 - }, - "isOptional": false - } - ], + "isReadonly": false, "isOptional": false, - "isAbstract": false, - "name": "hasListeners" + "releaseTag": "Public", + "name": "entity", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } }, { - "kind": "Method", - "canonicalReference": "server!EventRouter#hasListeners:member(2)", - "docComment": "", + "kind": "PropertySignature", + "canonicalReference": "server!EntityModelNodeOverrideOptions#hidden:member", + "docComment": "/**\n * The hidden state for matching nodes.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "hasListeners(eventType: " - }, - { - "kind": "Content", - "text": "string" - }, - { - "kind": "Content", - "text": "): " + "text": "hidden?: " }, { "kind": "Content", @@ -24745,57 +24825,51 @@ "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 2, - "parameters": [ - { - "parameterName": "eventType", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "hasListeners" + "name": "hidden", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } }, { - "kind": "Method", - "canonicalReference": "server!EventRouter#listenerCount:member(1)", - "docComment": "/**\n * Get the number of listeners for a specific event type.\n *\n * @param eventType - The type of event to get the listener count for.\n *\n * @returns The number of listeners for the event type.\n *\n * **Category:** Events\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!EntityModelNodeOverrideOptions#localPosition:member", + "docComment": "/**\n * The local position for matching nodes.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "listenerCount(eventType: " + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", - "text": "TEventType" - }, + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "localPosition", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!EntityModelNodeOverrideOptions#localPositionInterpolationMs:member", + "docComment": "/**\n * The interpolation time in milliseconds applied to local position changes.\n */\n", + "excerptTokens": [ { "kind": "Content", - "text": "): " + "text": "localPositionInterpolationMs?: " }, { "kind": "Content", @@ -24806,57 +24880,51 @@ "text": ";" } ], - "typeParameters": [ - { - "typeParameterName": "TEventType", - "constraintTokenRange": { - "startIndex": 1, - "endIndex": 3 - }, - "defaultTypeTokenRange": { - "startIndex": 0, - "endIndex": 0 - } - } - ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 6, - "endIndex": 7 - }, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "eventType", - "parameterTypeTokenRange": { - "startIndex": 4, - "endIndex": 5 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "listenerCount" + "name": "localPositionInterpolationMs", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } }, { - "kind": "Method", - "canonicalReference": "server!EventRouter#listenerCount:member(2)", - "docComment": "", + "kind": "PropertySignature", + "canonicalReference": "server!EntityModelNodeOverrideOptions#localRotation:member", + "docComment": "/**\n * The local rotation for matching nodes.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "listenerCount(eventType: " + "text": "localRotation?: " }, { - "kind": "Content", - "text": "string" + "kind": "Reference", + "text": "QuaternionLike", + "canonicalReference": "server!QuaternionLike:interface" }, { "kind": "Content", - "text": "): " + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "localRotation", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!EntityModelNodeOverrideOptions#localRotationInterpolationMs:member", + "docComment": "/**\n * The interpolation time in milliseconds applied to local rotation changes.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "localRotationInterpolationMs?: " }, { "kind": "Content", @@ -24867,202 +24935,176 @@ "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 2, - "parameters": [ - { - "parameterName": "eventType", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "listenerCount" + "name": "localRotationInterpolationMs", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } }, { - "kind": "Method", - "canonicalReference": "server!EventRouter#listeners:member(1)", - "docComment": "/**\n * Get all listeners for a specific event type.\n *\n * @param eventType - The type of event to get listeners for.\n *\n * @returns All listeners for the event type.\n *\n * **Category:** Events\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!EntityModelNodeOverrideOptions#localScale:member", + "docComment": "/**\n * The local scale for matching nodes.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "listeners(eventType: " + "text": " | number" }, { "kind": "Content", - "text": "TEventType" - }, + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "localScale", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 3 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!EntityModelNodeOverrideOptions#localScaleInterpolationMs:member", + "docComment": "/**\n * The interpolation time in milliseconds applied to local scale changes.\n */\n", + "excerptTokens": [ { "kind": "Content", - "text": "): " - }, - { - "kind": "Reference", - "text": "EventEmitter.EventListener", - "canonicalReference": "eventemitter3!EventEmitter.EventListener:type" + "text": "localScaleInterpolationMs?: " }, { "kind": "Content", - "text": "[]" + "text": "number" }, { "kind": "Content", "text": ";" } ], - "typeParameters": [ - { - "typeParameterName": "TEventType", - "constraintTokenRange": { - "startIndex": 1, - "endIndex": 3 - }, - "defaultTypeTokenRange": { - "startIndex": 0, - "endIndex": 0 - } - } - ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 6, - "endIndex": 8 - }, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "eventType", - "parameterTypeTokenRange": { - "startIndex": 4, - "endIndex": 5 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "listeners" + "name": "localScaleInterpolationMs", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } }, { - "kind": "Method", - "canonicalReference": "server!EventRouter#listeners:member(2)", - "docComment": "", + "kind": "PropertySignature", + "canonicalReference": "server!EntityModelNodeOverrideOptions#nameMatch:member", + "docComment": "/**\n * The node name match selector. Case-insensitive exact match by default, with optional edge wildcard (`head*`, `*head`, `*head*`).\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "listeners(eventType: " + "text": "nameMatch: " }, { "kind": "Content", "text": "string" }, - { - "kind": "Content", - "text": "): " - }, - { - "kind": "Reference", - "text": "EventEmitter.EventListener", - "canonicalReference": "eventemitter3!EventEmitter.EventListener:type" - }, - { - "kind": "Content", - "text": "[]" - }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 5 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 2, - "parameters": [ - { - "parameterName": "eventType", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], + "isReadonly": false, "isOptional": false, - "isAbstract": false, - "name": "listeners" + "releaseTag": "Public", + "name": "nameMatch", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + } + ], + "extendsTokenRanges": [] + }, + { + "kind": "TypeAlias", + "canonicalReference": "server!EntityOptions:type", + "docComment": "/**\n * The options for creating an `Entity` instance.\n *\n * Use for: constructing an entity; choose `BlockEntityOptions` or `ModelEntityOptions`. Do NOT use for: mutating entity state after spawn; use entity setters and methods.\n *\n * **Category:** Entities\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export type EntityOptions = " + }, + { + "kind": "Reference", + "text": "BlockEntityOptions", + "canonicalReference": "server!BlockEntityOptions:interface" + }, + { + "kind": "Content", + "text": " | " + }, + { + "kind": "Reference", + "text": "ModelEntityOptions", + "canonicalReference": "server!ModelEntityOptions:interface" }, + { + "kind": "Content", + "text": ";" + } + ], + "fileUrlPath": "src/worlds/entities/Entity.ts", + "releaseTag": "Public", + "name": "EntityOptions", + "typeTokenRange": { + "startIndex": 1, + "endIndex": 4 + } + }, + { + "kind": "Class", + "canonicalReference": "server!ErrorHandler:class", + "docComment": "/**\n * Manages error and warning logging.\n *\n * When to use: reporting recoverable issues or fatal errors with consistent formatting. Do NOT use for: normal control flow; prefer explicit return values or exceptions.\n *\n * @remarks\n *\n * In production, `console.log` is disabled to reduce log spam; use `console.info` instead. Pattern: log warnings for recoverable issues and use `ErrorHandler.fatalError` for unrecoverable state. Anti-pattern: swallowing exceptions without logging context.\n *\n * **Category:** Utilities\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export default class ErrorHandler " + } + ], + "fileUrlPath": "src/errors/ErrorHandler.ts", + "releaseTag": "Public", + "isAbstract": false, + "name": "ErrorHandler", + "preserveMemberOrder": false, + "members": [ { "kind": "Method", - "canonicalReference": "server!EventRouter#off:member(1)", - "docComment": "/**\n * Remove a listener for a specific event type.\n *\n * @param eventType - The type of event to remove the listener from.\n *\n * @param listener - The listener function to remove.\n *\n * **Category:** Events\n */\n", + "canonicalReference": "server!ErrorHandler.error:member(1)", + "docComment": "/**\n * Logs a formatted error message with stack trace to help debug issues\n *\n * @param message - The error message to display\n *\n * @param context - Optional context information about the error\n *\n * **Side effects:** Writes to stderr and increments the error count.\n *\n * **Category:** Utilities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "off(eventType: " - }, - { - "kind": "Content", - "text": "TEventType" + "text": "static error(message: " }, { "kind": "Content", - "text": ", listener: " + "text": "string" }, { "kind": "Content", - "text": "(payload: " - }, - { - "kind": "Reference", - "text": "EventPayloads", - "canonicalReference": "server!EventPayloads:interface" + "text": ", context?: " }, { "kind": "Content", - "text": "[TEventType]) => void" + "text": "string" }, { "kind": "Content", @@ -25077,57 +25119,44 @@ "text": ";" } ], - "typeParameters": [ - { - "typeParameterName": "TEventType", - "constraintTokenRange": { - "startIndex": 1, - "endIndex": 3 - }, - "defaultTypeTokenRange": { - "startIndex": 0, - "endIndex": 0 - } - } - ], - "isStatic": false, + "isStatic": true, "returnTypeTokenRange": { - "startIndex": 10, - "endIndex": 11 + "startIndex": 5, + "endIndex": 6 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, "parameters": [ { - "parameterName": "eventType", + "parameterName": "message", "parameterTypeTokenRange": { - "startIndex": 4, - "endIndex": 5 + "startIndex": 1, + "endIndex": 2 }, "isOptional": false }, { - "parameterName": "listener", + "parameterName": "context", "parameterTypeTokenRange": { - "startIndex": 6, - "endIndex": 9 + "startIndex": 3, + "endIndex": 4 }, - "isOptional": false + "isOptional": true } ], "isOptional": false, "isAbstract": false, - "name": "off" + "name": "error" }, { "kind": "Method", - "canonicalReference": "server!EventRouter#off:member(2)", - "docComment": "", + "canonicalReference": "server!ErrorHandler.fatalError:member(1)", + "docComment": "/**\n * Logs a formatted fatal error message with stack trace and throws the error\n *\n * @param message - The error message to display\n *\n * @param context - Optional context information about the error\n *\n * @throws\n *\n * The created Error object\n *\n * **Side effects:** Writes to stderr and throws, terminating the current execution path.\n *\n * **Category:** Utilities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "off(eventType: " + "text": "static fatalError(message: " }, { "kind": "Content", @@ -25135,11 +25164,11 @@ }, { "kind": "Content", - "text": ", listener: " + "text": ", context?: " }, { "kind": "Content", - "text": "(payload: any) => void" + "text": "string" }, { "kind": "Content", @@ -25147,24 +25176,24 @@ }, { "kind": "Content", - "text": "void" + "text": "never" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, + "isStatic": true, "returnTypeTokenRange": { "startIndex": 5, "endIndex": 6 }, "releaseTag": "Public", "isProtected": false, - "overloadIndex": 2, + "overloadIndex": 1, "parameters": [ { - "parameterName": "eventType", + "parameterName": "message", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -25172,43 +25201,38 @@ "isOptional": false }, { - "parameterName": "listener", + "parameterName": "context", "parameterTypeTokenRange": { "startIndex": 3, "endIndex": 4 }, - "isOptional": false + "isOptional": true } ], "isOptional": false, "isAbstract": false, - "name": "off" + "name": "fatalError" }, { "kind": "Method", - "canonicalReference": "server!EventRouter#offAll:member(1)", - "docComment": "/**\n * Remove all listeners or all listeners for a provided event type.\n *\n * @param eventType - The type of event to remove all listeners from.\n *\n * **Side effects:** Clears listeners and final listeners for the event type.\n *\n * **Category:** Events\n */\n", + "canonicalReference": "server!ErrorHandler.warning:member(1)", + "docComment": "/**\n * Logs a formatted warning message to alert about potential issues\n *\n * @param message - The warning message to display\n *\n * @param context - Optional context information about the warning\n *\n * **Side effects:** Writes to stderr and increments the warning count.\n *\n * **Category:** Utilities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "offAll(eventType?: " + "text": ", context?: " }, { "kind": "Content", - "text": "TEventType" + "text": "string" }, { "kind": "Content", @@ -25223,122 +25247,371 @@ "text": ";" } ], - "typeParameters": [ - { - "typeParameterName": "TEventType", - "constraintTokenRange": { - "startIndex": 1, - "endIndex": 3 - }, - "defaultTypeTokenRange": { - "startIndex": 0, - "endIndex": 0 - } - } - ], - "isStatic": false, + "isStatic": true, "returnTypeTokenRange": { - "startIndex": 6, - "endIndex": 7 + "startIndex": 5, + "endIndex": 6 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, "parameters": [ { - "parameterName": "eventType", + "parameterName": "message", "parameterTypeTokenRange": { - "startIndex": 4, - "endIndex": 5 + "startIndex": 1, + "endIndex": 2 }, - "isOptional": true - } - ], - "isOptional": false, - "isAbstract": false, - "name": "offAll" - }, - { - "kind": "Method", - "canonicalReference": "server!EventRouter#offAll:member(2)", - "docComment": "", - "excerptTokens": [ - { - "kind": "Content", - "text": "offAll(eventType?: " - }, - { - "kind": "Content", - "text": "string" - }, - { - "kind": "Content", - "text": "): " - }, - { - "kind": "Content", - "text": "void" + "isOptional": false }, { - "kind": "Content", - "text": ";" - } - ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 2, - "parameters": [ - { - "parameterName": "eventType", + "parameterName": "context", "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 + "startIndex": 3, + "endIndex": 4 }, "isOptional": true } ], "isOptional": false, "isAbstract": false, - "name": "offAll" + "name": "warning" + } + ], + "implementsTokenRanges": [] + }, + { + "kind": "Interface", + "canonicalReference": "server!EventPayloads:interface", + "docComment": "/**\n * The payloads for all events in the game server.\n *\n * **Category:** Events\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export interface EventPayloads extends " }, { - "kind": "Method", - "canonicalReference": "server!EventRouter#on:member(1)", - "docComment": "/**\n * Register a listener for a specific event type.\n *\n * @remarks\n *\n * Listeners are invoked in the order they are registered.\n *\n * @param eventType - The type of event to listen for.\n *\n * @param listener - The listener function to invoke when the event is emitted.\n *\n * **Category:** Events\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "on(eventType: " - }, - { - "kind": "Content", - "text": "TEventType" - }, - { - "kind": "Content", - "text": ", listener: " - }, - { + "kind": "Reference", + "text": "AudioEventPayloads", + "canonicalReference": "server!AudioEventPayloads:interface" + }, + { + "kind": "Content", + "text": ", " + }, + { + "kind": "Reference", + "text": "BaseEntityControllerEventPayloads", + "canonicalReference": "server!BaseEntityControllerEventPayloads:interface" + }, + { + "kind": "Content", + "text": ", " + }, + { + "kind": "Reference", + "text": "BlockTypeEventPayloads", + "canonicalReference": "server!BlockTypeEventPayloads:interface" + }, + { + "kind": "Content", + "text": ", " + }, + { + "kind": "Reference", + "text": "BlockTypeRegistryEventPayloads", + "canonicalReference": "server!BlockTypeRegistryEventPayloads:interface" + }, + { + "kind": "Content", + "text": ", " + }, + { + "kind": "Reference", + "text": "ChatEventPayloads", + "canonicalReference": "server!ChatEventPayloads:interface" + }, + { + "kind": "Content", + "text": ", " + }, + { + "kind": "Reference", + "text": "ChunkLatticeEventPayloads", + "canonicalReference": "server!ChunkLatticeEventPayloads:interface" + }, + { + "kind": "Content", + "text": ", " + }, + { + "kind": "Reference", + "text": "ConnectionEventPayloads", + "canonicalReference": "server!~ConnectionEventPayloads:interface" + }, + { + "kind": "Content", + "text": ", " + }, + { + "kind": "Reference", + "text": "EntityEventPayloads", + "canonicalReference": "server!EntityEventPayloads:interface" + }, + { + "kind": "Content", + "text": ", " + }, + { + "kind": "Reference", + "text": "EntityModelAnimationEventPayloads", + "canonicalReference": "server!EntityModelAnimationEventPayloads:interface" + }, + { + "kind": "Content", + "text": ", " + }, + { + "kind": "Reference", + "text": "EntityModelNodeOverrideEventPayloads", + "canonicalReference": "server!EntityModelNodeOverrideEventPayloads:interface" + }, + { + "kind": "Content", + "text": ", " + }, + { + "kind": "Reference", + "text": "GameServerEventPayloads", + "canonicalReference": "server!GameServerEventPayloads:interface" + }, + { + "kind": "Content", + "text": ", " + }, + { + "kind": "Reference", + "text": "ParticleEmitterEventPayloads", + "canonicalReference": "server!ParticleEmitterEventPayloads:interface" + }, + { + "kind": "Content", + "text": ", " + }, + { + "kind": "Reference", + "text": "PlayerCameraEventPayloads", + "canonicalReference": "server!PlayerCameraEventPayloads:interface" + }, + { + "kind": "Content", + "text": ", " + }, + { + "kind": "Reference", + "text": "PlayerEventPayloads", + "canonicalReference": "server!PlayerEventPayloads:interface" + }, + { + "kind": "Content", + "text": ", " + }, + { + "kind": "Reference", + "text": "PlayerManagerEventPayloads", + "canonicalReference": "server!PlayerManagerEventPayloads:interface" + }, + { + "kind": "Content", + "text": ", " + }, + { + "kind": "Reference", + "text": "PlayerUIEventPayloads", + "canonicalReference": "server!PlayerUIEventPayloads:interface" + }, + { + "kind": "Content", + "text": ", " + }, + { + "kind": "Reference", + "text": "SceneUIEventPayloads", + "canonicalReference": "server!SceneUIEventPayloads:interface" + }, + { + "kind": "Content", + "text": ", " + }, + { + "kind": "Reference", + "text": "SimulationEventPayloads", + "canonicalReference": "server!SimulationEventPayloads:interface" + }, + { + "kind": "Content", + "text": ", " + }, + { + "kind": "Reference", + "text": "WebServerEventPayloads", + "canonicalReference": "server!~WebServerEventPayloads:interface" + }, + { + "kind": "Content", + "text": ", " + }, + { + "kind": "Reference", + "text": "WorldEventPayloads", + "canonicalReference": "server!WorldEventPayloads:interface" + }, + { + "kind": "Content", + "text": ", " + }, + { + "kind": "Reference", + "text": "WorldLoopEventPayloads", + "canonicalReference": "server!WorldLoopEventPayloads:interface" + }, + { + "kind": "Content", + "text": ", " + }, + { + "kind": "Reference", + "text": "WorldManagerEventPayloads", + "canonicalReference": "server!WorldManagerEventPayloads:interface" + }, + { + "kind": "Content", + "text": " " + } + ], + "fileUrlPath": "src/events/Events.ts", + "releaseTag": "Public", + "name": "EventPayloads", + "preserveMemberOrder": false, + "members": [], + "extendsTokenRanges": [ + { + "startIndex": 1, + "endIndex": 2 + }, + { + "startIndex": 3, + "endIndex": 4 + }, + { + "startIndex": 5, + "endIndex": 6 + }, + { + "startIndex": 7, + "endIndex": 8 + }, + { + "startIndex": 9, + "endIndex": 10 + }, + { + "startIndex": 11, + "endIndex": 12 + }, + { + "startIndex": 13, + "endIndex": 14 + }, + { + "startIndex": 15, + "endIndex": 16 + }, + { + "startIndex": 17, + "endIndex": 18 + }, + { + "startIndex": 19, + "endIndex": 20 + }, + { + "startIndex": 21, + "endIndex": 22 + }, + { + "startIndex": 23, + "endIndex": 24 + }, + { + "startIndex": 25, + "endIndex": 26 + }, + { + "startIndex": 27, + "endIndex": 28 + }, + { + "startIndex": 29, + "endIndex": 30 + }, + { + "startIndex": 31, + "endIndex": 32 + }, + { + "startIndex": 33, + "endIndex": 34 + }, + { + "startIndex": 35, + "endIndex": 36 + }, + { + "startIndex": 37, + "endIndex": 38 + }, + { + "startIndex": 39, + "endIndex": 40 + }, + { + "startIndex": 41, + "endIndex": 42 + }, + { + "startIndex": 43, + "endIndex": 44 + } + ] + }, + { + "kind": "Class", + "canonicalReference": "server!EventRouter:class", + "docComment": "/**\n * Routes events to listeners in local, world, or global scope.\n *\n * When to use: event-driven hooks within server subsystems. Do NOT use for: high-frequency per-entity updates; prefer direct method calls for hot paths.\n *\n * @remarks\n *\n * Provides local emission, world-scoped emission, and a shared global instance. Pattern: use `EventRouter.emitWithWorld()` for world-scoped events and `final()` to install a single terminal listener. Anti-pattern: installing multiple final listeners for the same event type; only one is supported.\n *\n * **Category:** Events\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export default class EventRouter " + } + ], + "fileUrlPath": "src/events/EventRouter.ts", + "releaseTag": "Public", + "isAbstract": false, + "name": "EventRouter", + "preserveMemberOrder": false, + "members": [ + { + "kind": "Method", + "canonicalReference": "server!EventRouter#emit:member(1)", + "docComment": "/**\n * Emit an event, invoking all registered listeners for the event type.\n *\n * @param eventType - The type of event to emit.\n *\n * @param payload - The payload to emit.\n *\n * @returns `true` if any listeners were found and invoked, `false` otherwise.\n *\n * **Side effects:** Invokes listeners registered for the event type.\n *\n * **Category:** Events\n */\n", + "excerptTokens": [ + { "kind": "Content", - "text": "(payload: " + "text": "emit void" + "text": ">(eventType: " + }, + { + "kind": "Content", + "text": "TEventType" + }, + { + "kind": "Content", + "text": ", payload: " + }, + { + "kind": "Reference", + "text": "EventPayloads", + "canonicalReference": "server!EventPayloads:interface" + }, + { + "kind": "Content", + "text": "[TEventType]" }, { "kind": "Content", @@ -25355,7 +25645,7 @@ }, { "kind": "Content", - "text": "void" + "text": "boolean" }, { "kind": "Content", @@ -25377,8 +25667,8 @@ ], "isStatic": false, "returnTypeTokenRange": { - "startIndex": 10, - "endIndex": 11 + "startIndex": 9, + "endIndex": 10 }, "releaseTag": "Public", "isProtected": false, @@ -25393,26 +25683,26 @@ "isOptional": false }, { - "parameterName": "listener", + "parameterName": "payload", "parameterTypeTokenRange": { "startIndex": 6, - "endIndex": 9 + "endIndex": 8 }, "isOptional": false } ], "isOptional": false, "isAbstract": false, - "name": "on" + "name": "emit" }, { "kind": "Method", - "canonicalReference": "server!EventRouter#on:member(2)", + "canonicalReference": "server!EventRouter#emit:member(2)", "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "on(eventType: " + "text": "emit(eventType: " }, { "kind": "Content", @@ -25420,11 +25710,11 @@ }, { "kind": "Content", - "text": ", listener: " + "text": ", payload: " }, { "kind": "Content", - "text": "(payload: any) => void" + "text": "any" }, { "kind": "Content", @@ -25432,7 +25722,7 @@ }, { "kind": "Content", - "text": "void" + "text": "boolean" }, { "kind": "Content", @@ -25457,7 +25747,7 @@ "isOptional": false }, { - "parameterName": "listener", + "parameterName": "payload", "parameterTypeTokenRange": { "startIndex": 3, "endIndex": 4 @@ -25467,16 +25757,16 @@ ], "isOptional": false, "isAbstract": false, - "name": "on" + "name": "emit" }, { "kind": "Method", - "canonicalReference": "server!EventRouter#once:member(1)", - "docComment": "/**\n * Register a listener for a specific event type that will be invoked once.\n *\n * @param eventType - The type of event to listen for.\n *\n * @param listener - The listener function to invoke when the event is emitted.\n *\n * **Category:** Events\n */\n", + "canonicalReference": "server!EventRouter#emitWithGlobal:member(1)", + "docComment": "/**\n * Emits an event to the local and global server instance event routers.\n *\n * @param eventType - The type of event to emit.\n *\n * @param payload - The payload to emit.\n *\n * **Side effects:** Invokes local listeners and `EventRouter.globalInstance` listeners.\n *\n * @see\n *\n * `EventRouter.emit()`\n *\n * **Category:** Events\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "once void" + "text": "[TEventType]" }, { "kind": "Content", @@ -25540,8 +25826,8 @@ ], "isStatic": false, "returnTypeTokenRange": { - "startIndex": 10, - "endIndex": 11 + "startIndex": 9, + "endIndex": 10 }, "releaseTag": "Public", "isProtected": false, @@ -25556,26 +25842,26 @@ "isOptional": false }, { - "parameterName": "listener", + "parameterName": "payload", "parameterTypeTokenRange": { "startIndex": 6, - "endIndex": 9 + "endIndex": 8 }, "isOptional": false } ], "isOptional": false, "isAbstract": false, - "name": "once" + "name": "emitWithGlobal" }, { "kind": "Method", - "canonicalReference": "server!EventRouter#once:member(2)", + "canonicalReference": "server!EventRouter#emitWithGlobal:member(2)", "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "once(eventType: " + "text": "emitWithGlobal(eventType: " }, { "kind": "Content", @@ -25583,11 +25869,11 @@ }, { "kind": "Content", - "text": ", listener: " + "text": ", payload: " }, { "kind": "Content", - "text": "(payload: any) => void" + "text": "any" }, { "kind": "Content", @@ -25620,7 +25906,7 @@ "isOptional": false }, { - "parameterName": "listener", + "parameterName": "payload", "parameterTypeTokenRange": { "startIndex": 3, "endIndex": 4 @@ -25630,409 +25916,278 @@ ], "isOptional": false, "isAbstract": false, - "name": "once" - } - ], - "implementsTokenRanges": [] - }, - { - "kind": "TypeAlias", - "canonicalReference": "server!FaceCallback:type", - "docComment": "/**\n * Callback invoked as the entity rotates toward a target.\n *\n * @param currentRotation - The current rotation of the entity.\n *\n * @param targetRotation - The target rotation of the entity.\n *\n * **Category:** Controllers\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export type FaceCallback = " - }, - { - "kind": "Content", - "text": "(currentRotation: " - }, - { - "kind": "Reference", - "text": "QuaternionLike", - "canonicalReference": "server!QuaternionLike:interface" - }, - { - "kind": "Content", - "text": ", targetRotation: " - }, - { - "kind": "Reference", - "text": "QuaternionLike", - "canonicalReference": "server!QuaternionLike:interface" - }, - { - "kind": "Content", - "text": ") => void" - }, - { - "kind": "Content", - "text": ";" - } - ], - "fileUrlPath": "src/worlds/entities/controllers/SimpleEntityController.ts", - "releaseTag": "Public", - "name": "FaceCallback", - "typeTokenRange": { - "startIndex": 1, - "endIndex": 6 - } - }, - { - "kind": "TypeAlias", - "canonicalReference": "server!FaceCompleteCallback:type", - "docComment": "/**\n * Callback invoked when the entity finishes rotating to face a target.\n *\n * @param endRotation - The rotation of the entity after it has finished rotating.\n *\n * **Category:** Controllers\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export type FaceCompleteCallback = " - }, - { - "kind": "Content", - "text": "(endRotation: " - }, - { - "kind": "Reference", - "text": "QuaternionLike", - "canonicalReference": "server!QuaternionLike:interface" - }, - { - "kind": "Content", - "text": ") => void" - }, - { - "kind": "Content", - "text": ";" - } - ], - "fileUrlPath": "src/worlds/entities/controllers/SimpleEntityController.ts", - "releaseTag": "Public", - "name": "FaceCompleteCallback", - "typeTokenRange": { - "startIndex": 1, - "endIndex": 4 - } - }, - { - "kind": "TypeAlias", - "canonicalReference": "server!FaceOptions:type", - "docComment": "/**\n * Options for `SimpleEntityController.face`.\n *\n * Use for: customizing a single `face()` call (callbacks, completion). Do NOT use for: persistent defaults; use `SimpleEntityControllerOptions`.\n *\n * **Category:** Controllers\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export type FaceOptions = " - }, - { - "kind": "Content", - "text": "{\n faceCallback?: " - }, - { - "kind": "Reference", - "text": "FaceCallback", - "canonicalReference": "server!FaceCallback:type" - }, - { - "kind": "Content", - "text": ";\n faceCompleteCallback?: " - }, - { - "kind": "Reference", - "text": "FaceCompleteCallback", - "canonicalReference": "server!FaceCompleteCallback:type" + "name": "emitWithGlobal" }, { - "kind": "Content", - "text": ";\n}" - }, - { - "kind": "Content", - "text": ";" - } - ], - "fileUrlPath": "src/worlds/entities/controllers/SimpleEntityController.ts", - "releaseTag": "Public", - "name": "FaceOptions", - "typeTokenRange": { - "startIndex": 1, - "endIndex": 6 - } - }, - { - "kind": "TypeAlias", - "canonicalReference": "server!FilterOptions:type", - "docComment": "/**\n * Filter options for raycasting and intersection queries.\n *\n * Use for: scoping physics queries to specific colliders or groups. Do NOT use for: persistent collision configuration; use `CollisionGroupsBuilder`.\n *\n * **Category:** Physics\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export type FilterOptions = " - }, - { - "kind": "Content", - "text": "{\n filterFlags?: " - }, - { - "kind": "Reference", - "text": "RAPIER.QueryFilterFlags", - "canonicalReference": "@dimforge/rapier3d-simd-compat!QueryFilterFlags:enum" - }, - { - "kind": "Content", - "text": ";\n filterGroups?: number;\n filterExcludeCollider?: " - }, - { - "kind": "Reference", - "text": "RawCollider", - "canonicalReference": "server!RawCollider:type" - }, - { - "kind": "Content", - "text": ";\n filterExcludeRigidBody?: " - }, - { - "kind": "Reference", - "text": "RAPIER.RigidBody", - "canonicalReference": "@dimforge/rapier3d-simd-compat!RigidBody:class" - }, - { - "kind": "Content", - "text": ";\n filterPredicate?: (collider: " - }, - { - "kind": "Reference", - "text": "RawCollider", - "canonicalReference": "server!RawCollider:type" - }, - { - "kind": "Content", - "text": ") => boolean;\n}" - }, - { - "kind": "Content", - "text": ";" - } - ], - "fileUrlPath": "src/worlds/physics/Simulation.ts", - "releaseTag": "Public", - "name": "FilterOptions", - "typeTokenRange": { - "startIndex": 1, - "endIndex": 10 - } - }, - { - "kind": "Interface", - "canonicalReference": "server!FixedRigidBodyOptions:interface", - "docComment": "/**\n * The options for a fixed rigid body.\n *\n * Use for: immovable bodies (world geometry, static platforms). Do NOT use for: moving objects; use dynamic or kinematic options.\n *\n * **Category:** Physics\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export interface FixedRigidBodyOptions extends " - }, - { - "kind": "Reference", - "text": "BaseRigidBodyOptions", - "canonicalReference": "server!BaseRigidBodyOptions:interface" - }, - { - "kind": "Content", - "text": " " - } - ], - "fileUrlPath": "src/worlds/physics/RigidBody.ts", - "releaseTag": "Public", - "name": "FixedRigidBodyOptions", - "preserveMemberOrder": false, - "members": [ - { - "kind": "PropertySignature", - "canonicalReference": "server!FixedRigidBodyOptions#type:member", - "docComment": "", + "kind": "Method", + "canonicalReference": "server!EventRouter#emitWithWorld:member(1)", + "docComment": "/**\n * Emits an event to local and provided world event routers.\n *\n * @param world - The world to broadcast the event to.\n *\n * @param eventType - The type of event to broadcast.\n *\n * @param payload - The payload to broadcast.\n *\n * **Requires:** The provided world must be active and using the same event payload types.\n *\n * **Side effects:** Invokes local listeners and listeners registered on the world instance.\n *\n * @see\n *\n * `EventRouter.emit()`\n *\n * **Category:** Events\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "type: " + "text": "emitWithWorld(world: " + }, + { + "kind": "Reference", + "text": "World", + "canonicalReference": "server!World:class" + }, { "kind": "Content", - "text": "get blockTextureRegistry(): " + "text": ", eventType: " + }, + { + "kind": "Content", + "text": "TEventType" + }, + { + "kind": "Content", + "text": ", payload: " }, { "kind": "Reference", - "text": "BlockTextureRegistry", - "canonicalReference": "server!BlockTextureRegistry:class" + "text": "EventPayloads", + "canonicalReference": "server!EventPayloads:interface" + }, + { + "kind": "Content", + "text": "[TEventType]" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Content", + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "blockTextureRegistry", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, + "typeParameters": [ + { + "typeParameterName": "TEventType", + "constraintTokenRange": { + "startIndex": 1, + "endIndex": 3 + }, + "defaultTypeTokenRange": { + "startIndex": 0, + "endIndex": 0 + } + } + ], "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 11, + "endIndex": 12 + }, + "releaseTag": "Public", "isProtected": false, - "isAbstract": false - }, - { - "kind": "Property", - "canonicalReference": "server!GameServer.instance:member", - "docComment": "/**\n * The singleton instance of the game server.\n *\n * @remarks\n *\n * Access this after calling `startServer`.\n *\n * **Category:** Core\n */\n", - "excerptTokens": [ + "overloadIndex": 1, + "parameters": [ { - "kind": "Content", - "text": "static get instance(): " + "parameterName": "world", + "parameterTypeTokenRange": { + "startIndex": 4, + "endIndex": 5 + }, + "isOptional": false }, { - "kind": "Reference", - "text": "GameServer", - "canonicalReference": "server!GameServer:class" + "parameterName": "eventType", + "parameterTypeTokenRange": { + "startIndex": 6, + "endIndex": 7 + }, + "isOptional": false }, { - "kind": "Content", - "text": ";" + "parameterName": "payload", + "parameterTypeTokenRange": { + "startIndex": 8, + "endIndex": 10 + }, + "isOptional": false } ], - "isReadonly": true, "isOptional": false, - "releaseTag": "Public", - "name": "instance", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": true, - "isProtected": false, - "isAbstract": false + "isAbstract": false, + "name": "emitWithWorld" }, { - "kind": "Property", - "canonicalReference": "server!GameServer#modelRegistry:member", - "docComment": "/**\n * The model registry for the game server.\n *\n * **Category:** Core\n */\n", + "kind": "Method", + "canonicalReference": "server!EventRouter#emitWithWorld:member(2)", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "get modelRegistry(): " + "text": "emitWithWorld(world: " }, { "kind": "Reference", - "text": "ModelRegistry", - "canonicalReference": "server!ModelRegistry:class" + "text": "World", + "canonicalReference": "server!World:class" + }, + { + "kind": "Content", + "text": ", eventType: " + }, + { + "kind": "Content", + "text": "string" + }, + { + "kind": "Content", + "text": ", payload: " + }, + { + "kind": "Content", + "text": "any" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Content", + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "modelRegistry", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 7, + "endIndex": 8 + }, + "releaseTag": "Public", "isProtected": false, - "isAbstract": false + "overloadIndex": 2, + "parameters": [ + { + "parameterName": "world", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + }, + { + "parameterName": "eventType", + "parameterTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "isOptional": false + }, + { + "parameterName": "payload", + "parameterTypeTokenRange": { + "startIndex": 5, + "endIndex": 6 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "emitWithWorld" }, { - "kind": "Property", - "canonicalReference": "server!GameServer#playerManager:member", - "docComment": "/**\n * The player manager for the game server.\n *\n * **Category:** Core\n */\n", + "kind": "Method", + "canonicalReference": "server!EventRouter#final:member(2)", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "get playerManager(): " + "text": "final(eventType: " }, { - "kind": "Reference", - "text": "PlayerManager", - "canonicalReference": "server!PlayerManager:class" + "kind": "Content", + "text": "string" + }, + { + "kind": "Content", + "text": ", listener: " + }, + { + "kind": "Content", + "text": "(payload: any) => void" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Content", + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "playerManager", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 5, + "endIndex": 6 + }, + "releaseTag": "Public", "isProtected": false, - "isAbstract": false + "overloadIndex": 2, + "parameters": [ + { + "parameterName": "eventType", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + }, + { + "parameterName": "listener", + "parameterTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "final" }, { "kind": "Property", - "canonicalReference": "server!GameServer#webServer:member", - "docComment": "/**\n * The web server for the game server.\n *\n * **Category:** Core\n */\n", + "canonicalReference": "server!EventRouter.globalInstance:member", + "docComment": "/**\n * The global event router instance.\n *\n * **Category:** Events\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get webServer(): " + "text": "static readonly globalInstance: " }, { "kind": "Reference", - "text": "WebServer", - "canonicalReference": "server!WebServer:class" + "text": "EventRouter", + "canonicalReference": "server!EventRouter:class" }, { "kind": "Content", @@ -26042,339 +26197,231 @@ "isReadonly": true, "isOptional": false, "releaseTag": "Public", - "name": "webServer", + "name": "globalInstance", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "isStatic": false, + "isStatic": true, "isProtected": false, "isAbstract": false }, { - "kind": "Property", - "canonicalReference": "server!GameServer#worldManager:member", - "docComment": "/**\n * The world manager for the game server.\n *\n * **Category:** Core\n */\n", + "kind": "Method", + "canonicalReference": "server!EventRouter#hasListeners:member(1)", + "docComment": "/**\n * Check if there are listeners for a specific event type.\n *\n * @param eventType - The type of event to check for listeners.\n *\n * @returns `true` if listeners are found, `false` otherwise.\n *\n * **Category:** Events\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get worldManager(): " + "text": "hasListeners(eventType: " + }, { "kind": "Content", - "text": "START = " + "text": "TEventType" }, { "kind": "Content", - "text": "\"GAMESERVER.START\"" - } - ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "releaseTag": "Public", - "name": "START" - }, - { - "kind": "EnumMember", - "canonicalReference": "server!GameServerEvent.STOP:member", - "docComment": "", - "excerptTokens": [ + "text": "): " + }, { "kind": "Content", - "text": "STOP = " + "text": "boolean" }, { "kind": "Content", - "text": "\"GAMESERVER.STOP\"" + "text": ";" } ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "releaseTag": "Public", - "name": "STOP" - } - ] - }, - { - "kind": "Interface", - "canonicalReference": "server!GameServerEventPayloads:interface", - "docComment": "/**\n * Event payloads for GameServer emitted events.\n *\n * **Category:** Events\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export interface GameServerEventPayloads " - } - ], - "fileUrlPath": "src/GameServer.ts", - "releaseTag": "Public", - "name": "GameServerEventPayloads", - "preserveMemberOrder": false, - "members": [ - { - "kind": "PropertySignature", - "canonicalReference": "server!GameServerEventPayloads#\"GAMESERVER.START\":member", - "docComment": "/**\n * Emitted when the game server starts.\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "GameServerEvent.START", - "canonicalReference": "server!GameServerEvent.START:member" - }, - { - "kind": "Content", - "text": "]: " - }, + "typeParameters": [ { - "kind": "Content", - "text": "{\n startedAtMs: number;\n }" - }, + "typeParameterName": "TEventType", + "constraintTokenRange": { + "startIndex": 1, + "endIndex": 3 + }, + "defaultTypeTokenRange": { + "startIndex": 0, + "endIndex": 0 + } + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 6, + "endIndex": 7 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ { - "kind": "Content", - "text": ";" + "parameterName": "eventType", + "parameterTypeTokenRange": { + "startIndex": 4, + "endIndex": 5 + }, + "isOptional": false } ], - "isReadonly": false, "isOptional": false, - "releaseTag": "Public", - "name": "\"GAMESERVER.START\"", - "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - } + "isAbstract": false, + "name": "hasListeners" }, { - "kind": "PropertySignature", - "canonicalReference": "server!GameServerEventPayloads#\"GAMESERVER.STOP\":member", - "docComment": "/**\n * Emitted when the game server stops.\n */\n", + "kind": "Method", + "canonicalReference": "server!EventRouter#hasListeners:member(2)", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "[" + "text": "hasListeners(eventType: " }, { - "kind": "Reference", - "text": "GameServerEvent.STOP", - "canonicalReference": "server!GameServerEvent.STOP:member" + "kind": "Content", + "text": "string" }, { "kind": "Content", - "text": "]: " + "text": "): " }, { "kind": "Content", - "text": "{\n stoppedAtMs: number;\n }" + "text": "boolean" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": false, - "releaseTag": "Public", - "name": "\"GAMESERVER.STOP\"", - "propertyTypeTokenRange": { + "isStatic": false, + "returnTypeTokenRange": { "startIndex": 3, "endIndex": 4 - } - } - ], - "extendsTokenRanges": [] - }, - { - "kind": "TypeAlias", - "canonicalReference": "server!IntersectionResult:type", - "docComment": "/**\n * An intersection result.\n *\n * **Category:** Physics\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export type IntersectionResult = " - }, - { - "kind": "Content", - "text": "{\n intersectedBlockType?: " - }, - { - "kind": "Reference", - "text": "BlockType", - "canonicalReference": "server!BlockType:class" - }, - { - "kind": "Content", - "text": ";\n intersectedEntity?: " - }, - { - "kind": "Reference", - "text": "Entity", - "canonicalReference": "server!Entity:class" - }, - { - "kind": "Content", - "text": ";\n}" - }, - { - "kind": "Content", - "text": ";" - } - ], - "fileUrlPath": "src/worlds/physics/Simulation.ts", - "releaseTag": "Public", - "name": "IntersectionResult", - "typeTokenRange": { - "startIndex": 1, - "endIndex": 6 - } - }, - { - "kind": "Class", - "canonicalReference": "server!IterationMap:class", - "docComment": "/**\n * A high-performance Map-like data structure optimized for frequent iteration.\n *\n * When to use: per-tick collections that are built, iterated, and cleared each frame. Do NOT use for: long-lived maps with rare iteration; a standard Map is simpler.\n *\n * @remarks\n *\n * IterationMap maintains both a Map for O(1) lookups and an Array for fast iteration, eliminating the need for Array.from() calls and providing ~2x faster iteration than Map.values(). Optimized for \"build up, iterate, clear\" usage patterns common in game loops.\n *\n * Pattern: update via `IterationMap.set`, iterate with `IterationMap.valuesArray`, then `IterationMap.clear`. Anti-pattern: mutating the map during `IterationMap.valuesArray` iteration.\n *\n * @example\n * ```typescript\n * const iterationMap = new IterationMap();\n * iterationMap.set(1, 'hello');\n * iterationMap.set(2, 'world');\n *\n * // Fast O(1) lookup\n * const value = iterationMap.get(1);\n *\n * // Fast array iteration (no Map.values() overhead)\n * for (const item of iterationMap.valuesArray) {\n * console.log(item);\n * }\n *\n * // Efficient bulk clear\n * iterationMap.clear();\n * ```\n *\n * **Category:** Utilities\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export default class IterationMap " - } - ], - "fileUrlPath": "src/shared/classes/IterationMap.ts", - "releaseTag": "Public", - "typeParameters": [ - { - "typeParameterName": "K", - "constraintTokenRange": { - "startIndex": 0, - "endIndex": 0 }, - "defaultTypeTokenRange": { - "startIndex": 0, - "endIndex": 0 - } + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 2, + "parameters": [ + { + "parameterName": "eventType", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "hasListeners" }, - { - "typeParameterName": "V", - "constraintTokenRange": { - "startIndex": 0, - "endIndex": 0 - }, - "defaultTypeTokenRange": { - "startIndex": 0, - "endIndex": 0 - } - } - ], - "isAbstract": false, - "name": "IterationMap", - "preserveMemberOrder": false, - "members": [ { "kind": "Method", - "canonicalReference": "server!IterationMap#[Symbol.iterator]:member(1)", - "docComment": "/**\n * Returns an iterator for the key-value pairs in the IterationMap.\n *\n * @returns An iterator for the entries.\n *\n * **Category:** Utilities\n */\n", + "canonicalReference": "server!EventRouter#listenerCount:member(1)", + "docComment": "/**\n * Get the number of listeners for a specific event type.\n *\n * @param eventType - The type of event to get the listener count for.\n *\n * @returns The number of listeners for the event type.\n *\n * **Category:** Events\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" + "text": "listenerCount(eventType: " }, { - "kind": "Reference", - "text": "IterableIterator", - "canonicalReference": "!IterableIterator:interface" + "kind": "Content", + "text": "TEventType" }, { "kind": "Content", - "text": "<[K, V]>" + "text": "): " + }, + { + "kind": "Content", + "text": "number" }, { "kind": "Content", "text": ";" } ], + "typeParameters": [ + { + "typeParameterName": "TEventType", + "constraintTokenRange": { + "startIndex": 1, + "endIndex": 3 + }, + "defaultTypeTokenRange": { + "startIndex": 0, + "endIndex": 0 + } + } + ], "isStatic": false, "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 5 + "startIndex": 6, + "endIndex": 7 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, - "parameters": [], + "parameters": [ + { + "parameterName": "eventType", + "parameterTypeTokenRange": { + "startIndex": 4, + "endIndex": 5 + }, + "isOptional": false + } + ], "isOptional": false, "isAbstract": false, - "name": "[Symbol.iterator]" + "name": "listenerCount" }, { "kind": "Method", - "canonicalReference": "server!IterationMap#clear:member(1)", - "docComment": "/**\n * Removes all key-value pairs from the IterationMap. Highly optimized for the common \"build up, iterate, clear\" pattern.\n *\n * **Side effects:** Clears the backing map and value array.\n *\n * **Category:** Utilities\n */\n", + "canonicalReference": "server!EventRouter#listenerCount:member(2)", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "clear(): " + "text": "listenerCount(eventType: " }, { "kind": "Content", - "text": "void" + "text": "string" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Content", + "text": "number" }, { "kind": "Content", @@ -26383,82 +26430,130 @@ ], "isStatic": false, "returnTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 + "startIndex": 3, + "endIndex": 4 }, "releaseTag": "Public", "isProtected": false, - "overloadIndex": 1, - "parameters": [], + "overloadIndex": 2, + "parameters": [ + { + "parameterName": "eventType", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], "isOptional": false, "isAbstract": false, - "name": "clear" + "name": "listenerCount" }, { "kind": "Method", - "canonicalReference": "server!IterationMap#delete:member(1)", - "docComment": "/**\n * Removes the key-value pair from the IterationMap.\n *\n * @param key - The key to delete.\n *\n * @returns True if the key existed and was deleted, false otherwise.\n *\n * **Side effects:** Marks the internal array as dirty.\n *\n * **Category:** Utilities\n */\n", + "canonicalReference": "server!EventRouter#listeners:member(1)", + "docComment": "/**\n * Get all listeners for a specific event type.\n *\n * @param eventType - The type of event to get listeners for.\n *\n * @returns All listeners for the event type.\n *\n * **Category:** Events\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "delete(key: " + "text": "listeners(eventType: " + }, + { + "kind": "Content", + "text": "TEventType" }, { "kind": "Content", "text": "): " }, + { + "kind": "Reference", + "text": "EventEmitter.EventListener", + "canonicalReference": "eventemitter3!EventEmitter.EventListener:type" + }, { "kind": "Content", - "text": "boolean" + "text": "[]" }, { "kind": "Content", "text": ";" } ], + "typeParameters": [ + { + "typeParameterName": "TEventType", + "constraintTokenRange": { + "startIndex": 1, + "endIndex": 3 + }, + "defaultTypeTokenRange": { + "startIndex": 0, + "endIndex": 0 + } + } + ], "isStatic": false, "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 + "startIndex": 6, + "endIndex": 8 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, "parameters": [ { - "parameterName": "key", + "parameterName": "eventType", "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 + "startIndex": 4, + "endIndex": 5 }, "isOptional": false } ], "isOptional": false, "isAbstract": false, - "name": "delete" + "name": "listeners" }, { "kind": "Method", - "canonicalReference": "server!IterationMap#entries:member(1)", - "docComment": "/**\n * Returns an iterator for the key-value pairs in the IterationMap.\n *\n * @returns An iterator for the entries.\n *\n * **Category:** Utilities\n */\n", + "canonicalReference": "server!EventRouter#listeners:member(2)", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "entries(): " + "text": "listeners(eventType: " + }, + { + "kind": "Content", + "text": "string" + }, + { + "kind": "Content", + "text": "): " }, { "kind": "Reference", - "text": "IterableIterator", - "canonicalReference": "!IterableIterator:interface" + "text": "EventEmitter.EventListener", + "canonicalReference": "eventemitter3!EventEmitter.EventListener:type" }, { "kind": "Content", - "text": "<[K, V]>" + "text": "[]" }, { "kind": "Content", @@ -26467,46 +26562,68 @@ ], "isStatic": false, "returnTypeTokenRange": { - "startIndex": 1, - "endIndex": 3 + "startIndex": 3, + "endIndex": 5 }, "releaseTag": "Public", "isProtected": false, - "overloadIndex": 1, - "parameters": [], + "overloadIndex": 2, + "parameters": [ + { + "parameterName": "eventType", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], "isOptional": false, "isAbstract": false, - "name": "entries" + "name": "listeners" }, { "kind": "Method", - "canonicalReference": "server!IterationMap#forEach:member(1)", - "docComment": "/**\n * Executes a provided function once for each key-value pair.\n *\n * @param callbackfn - Function to execute for each element.\n *\n * @param thisArg - Value to use as this when executing callback.\n *\n * **Category:** Utilities\n */\n", + "canonicalReference": "server!EventRouter#off:member(1)", + "docComment": "/**\n * Remove a listener for a specific event type.\n *\n * @param eventType - The type of event to remove the listener from.\n *\n * @param listener - The listener function to remove.\n *\n * **Category:** Events\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "forEach(callbackfn: " + "text": "off) => void" + "text": ">(eventType: " }, { "kind": "Content", - "text": ", thisArg?: " + "text": "TEventType" }, { "kind": "Content", - "text": "any" + "text": ", listener: " + }, + { + "kind": "Content", + "text": "(payload: " + }, + { + "kind": "Reference", + "text": "EventPayloads", + "canonicalReference": "server!EventPayloads:interface" + }, + { + "kind": "Content", + "text": "[TEventType]) => void" }, { "kind": "Content", @@ -26521,48 +26638,69 @@ "text": ";" } ], + "typeParameters": [ + { + "typeParameterName": "TEventType", + "constraintTokenRange": { + "startIndex": 1, + "endIndex": 3 + }, + "defaultTypeTokenRange": { + "startIndex": 0, + "endIndex": 0 + } + } + ], "isStatic": false, "returnTypeTokenRange": { - "startIndex": 7, - "endIndex": 8 + "startIndex": 10, + "endIndex": 11 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, "parameters": [ { - "parameterName": "callbackfn", + "parameterName": "eventType", "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 4 + "startIndex": 4, + "endIndex": 5 }, "isOptional": false }, { - "parameterName": "thisArg", + "parameterName": "listener", "parameterTypeTokenRange": { - "startIndex": 5, - "endIndex": 6 + "startIndex": 6, + "endIndex": 9 }, - "isOptional": true + "isOptional": false } ], "isOptional": false, "isAbstract": false, - "name": "forEach" + "name": "off" }, { "kind": "Method", - "canonicalReference": "server!IterationMap#get:member(1)", - "docComment": "/**\n * Returns the value associated with the key, or undefined if the key doesn't exist.\n *\n * @param key - The key to look up.\n *\n * @returns The value associated with the key, or undefined.\n *\n * **Category:** Utilities\n */\n", + "canonicalReference": "server!EventRouter#off:member(2)", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "get(key: " + "text": "off(eventType: " }, { "kind": "Content", - "text": "K" + "text": "string" + }, + { + "kind": "Content", + "text": ", listener: " + }, + { + "kind": "Content", + "text": "(payload: any) => void" }, { "kind": "Content", @@ -26570,7 +26708,7 @@ }, { "kind": "Content", - "text": "V | undefined" + "text": "void" }, { "kind": "Content", @@ -26579,38 +26717,59 @@ ], "isStatic": false, "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 + "startIndex": 5, + "endIndex": 6 }, "releaseTag": "Public", "isProtected": false, - "overloadIndex": 1, + "overloadIndex": 2, "parameters": [ { - "parameterName": "key", + "parameterName": "eventType", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, "isOptional": false + }, + { + "parameterName": "listener", + "parameterTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "isOptional": false } ], "isOptional": false, "isAbstract": false, - "name": "get" + "name": "off" }, { "kind": "Method", - "canonicalReference": "server!IterationMap#has:member(1)", - "docComment": "/**\n * Returns true if the key exists in the IterationMap.\n *\n * @param key - The key to check.\n *\n * @returns True if the key exists, false otherwise.\n *\n * **Category:** Utilities\n */\n", + "canonicalReference": "server!EventRouter#offAll:member(1)", + "docComment": "/**\n * Remove all listeners or all listeners for a provided event type.\n *\n * @param eventType - The type of event to remove all listeners from.\n *\n * **Side effects:** Clears listeners and final listeners for the event type.\n *\n * **Category:** Events\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "has(key: " + "text": "offAll(eventType?: " + }, + { + "kind": "Content", + "text": "TEventType" }, { "kind": "Content", @@ -26618,52 +26777,68 @@ }, { "kind": "Content", - "text": "boolean" + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 + "typeParameters": [ + { + "typeParameterName": "TEventType", + "constraintTokenRange": { + "startIndex": 1, + "endIndex": 3 + }, + "defaultTypeTokenRange": { + "startIndex": 0, + "endIndex": 0 + } + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 6, + "endIndex": 7 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, "parameters": [ { - "parameterName": "key", + "parameterName": "eventType", "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 + "startIndex": 4, + "endIndex": 5 }, - "isOptional": false + "isOptional": true } ], "isOptional": false, "isAbstract": false, - "name": "has" + "name": "offAll" }, { "kind": "Method", - "canonicalReference": "server!IterationMap#keys:member(1)", - "docComment": "/**\n * Returns an iterator for the keys in the IterationMap.\n *\n * @returns An iterator for the keys.\n *\n * **Category:** Utilities\n */\n", + "canonicalReference": "server!EventRouter#offAll:member(2)", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "keys(): " + "text": "offAll(eventType?: " }, { - "kind": "Reference", - "text": "IterableIterator", - "canonicalReference": "!IterableIterator:interface" + "kind": "Content", + "text": "string" }, { "kind": "Content", - "text": "" + "text": "): " + }, + { + "kind": "Content", + "text": "void" }, { "kind": "Content", @@ -26672,37 +26847,68 @@ ], "isStatic": false, "returnTypeTokenRange": { - "startIndex": 1, - "endIndex": 3 + "startIndex": 3, + "endIndex": 4 }, "releaseTag": "Public", "isProtected": false, - "overloadIndex": 1, - "parameters": [], + "overloadIndex": 2, + "parameters": [ + { + "parameterName": "eventType", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": true + } + ], "isOptional": false, "isAbstract": false, - "name": "keys" + "name": "offAll" }, { "kind": "Method", - "canonicalReference": "server!IterationMap#set:member(1)", - "docComment": "/**\n * Sets the value for the key in the IterationMap.\n *\n * @param key - The key to set.\n *\n * @param value - The value to set.\n *\n * @returns The IterationMap instance for chaining.\n *\n * **Side effects:** May mark the internal array as dirty.\n *\n * **Category:** Utilities\n */\n", + "canonicalReference": "server!EventRouter#on:member(1)", + "docComment": "/**\n * Register a listener for a specific event type.\n *\n * @remarks\n *\n * Listeners are invoked in the order they are registered.\n *\n * @param eventType - The type of event to listen for.\n *\n * @param listener - The listener function to invoke when the event is emitted.\n *\n * **Category:** Events\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "set(key: " + "text": "on(eventType: " }, { "kind": "Content", - "text": "V" + "text": "TEventType" + }, + { + "kind": "Content", + "text": ", listener: " + }, + { + "kind": "Content", + "text": "(payload: " + }, + { + "kind": "Reference", + "text": "EventPayloads", + "canonicalReference": "server!EventPayloads:interface" + }, + { + "kind": "Content", + "text": "[TEventType]) => void" }, { "kind": "Content", @@ -26710,90 +26916,84 @@ }, { "kind": "Content", - "text": "this" + "text": "void" }, { "kind": "Content", "text": ";" } ], + "typeParameters": [ + { + "typeParameterName": "TEventType", + "constraintTokenRange": { + "startIndex": 1, + "endIndex": 3 + }, + "defaultTypeTokenRange": { + "startIndex": 0, + "endIndex": 0 + } + } + ], "isStatic": false, "returnTypeTokenRange": { - "startIndex": 5, - "endIndex": 6 + "startIndex": 10, + "endIndex": 11 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, "parameters": [ { - "parameterName": "key", + "parameterName": "eventType", "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 + "startIndex": 4, + "endIndex": 5 }, "isOptional": false }, { - "parameterName": "value", + "parameterName": "listener", "parameterTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 + "startIndex": 6, + "endIndex": 9 }, "isOptional": false } ], "isOptional": false, "isAbstract": false, - "name": "set" + "name": "on" }, { - "kind": "Property", - "canonicalReference": "server!IterationMap#size:member", - "docComment": "/**\n * Returns the number of key-value pairs in the IterationMap.\n *\n * **Category:** Utilities\n */\n", + "kind": "Method", + "canonicalReference": "server!EventRouter#on:member(2)", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "get size(): " + "text": "on(eventType: " }, { "kind": "Content", - "text": "number" + "text": "string" }, { "kind": "Content", - "text": ";" - } - ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "size", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false - }, - { - "kind": "Method", - "canonicalReference": "server!IterationMap#values:member(1)", - "docComment": "/**\n * Returns an iterator for the values in the IterationMap. Note: For performance-critical iteration, use .valuesArray instead.\n *\n * @returns An iterator for the values.\n *\n * **Category:** Utilities\n */\n", - "excerptTokens": [ + "text": ", listener: " + }, { "kind": "Content", - "text": "values(): " + "text": "(payload: any) => void" }, { - "kind": "Reference", - "text": "IterableIterator", - "canonicalReference": "!IterableIterator:interface" + "kind": "Content", + "text": "): " }, { "kind": "Content", - "text": "" + "text": "void" }, { "kind": "Content", @@ -26802,299 +27002,178 @@ ], "isStatic": false, "returnTypeTokenRange": { - "startIndex": 1, - "endIndex": 3 + "startIndex": 5, + "endIndex": 6 }, "releaseTag": "Public", "isProtected": false, - "overloadIndex": 1, - "parameters": [], + "overloadIndex": 2, + "parameters": [ + { + "parameterName": "eventType", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + }, + { + "parameterName": "listener", + "parameterTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "isOptional": false + } + ], "isOptional": false, "isAbstract": false, - "name": "values" + "name": "on" }, { - "kind": "Property", - "canonicalReference": "server!IterationMap#valuesArray:member", - "docComment": "/**\n * Returns a readonly array of all values for fast iteration. This is the key performance feature - use this instead of .values() for iteration.\n *\n * **Side effects:** Rebuilds the backing array when the map has changed.\n *\n * **Category:** Utilities\n */\n", + "kind": "Method", + "canonicalReference": "server!EventRouter#once:member(1)", + "docComment": "/**\n * Register a listener for a specific event type that will be invoked once.\n *\n * @param eventType - The type of event to listen for.\n *\n * @param listener - The listener function to invoke when the event is emitted.\n *\n * **Category:** Events\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get valuesArray(): " + "text": "once(eventType: " }, { - "kind": "Reference", - "text": "RigidBodyType.KINEMATIC_POSITION", - "canonicalReference": "server!RigidBodyType.KINEMATIC_POSITION:member" + "kind": "Content", + "text": "TEventType" }, { "kind": "Content", - "text": ";" - } - ], - "isReadonly": false, - "isOptional": false, - "releaseTag": "Public", - "name": "type", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } - } - ], - "extendsTokenRanges": [ - { - "startIndex": 1, - "endIndex": 2 - } - ] - }, - { - "kind": "Interface", - "canonicalReference": "server!KinematicVelocityRigidBodyOptions:interface", - "docComment": "/**\n * The options for a kinematic velocity rigid body.\n *\n * Use for: moving bodies by setting velocities each tick. Do NOT use for: physics-driven motion; use dynamic bodies instead.\n *\n * **Category:** Physics\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export interface KinematicVelocityRigidBodyOptions extends " - }, - { - "kind": "Reference", - "text": "BaseRigidBodyOptions", - "canonicalReference": "server!BaseRigidBodyOptions:interface" - }, - { - "kind": "Content", - "text": " " - } - ], - "fileUrlPath": "src/worlds/physics/RigidBody.ts", - "releaseTag": "Public", - "name": "KinematicVelocityRigidBodyOptions", - "preserveMemberOrder": false, - "members": [ - { - "kind": "PropertySignature", - "canonicalReference": "server!KinematicVelocityRigidBodyOptions#angularVelocity:member", - "docComment": "/**\n * The angular velocity of the rigid body.\n *\n * **Category:** Physics\n */\n", - "excerptTokens": [ + "text": ", listener: " + }, { "kind": "Content", - "text": "angularVelocity?: " + "text": "(payload: " }, { "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "text": "EventPayloads", + "canonicalReference": "server!EventPayloads:interface" }, { "kind": "Content", - "text": ";" - } - ], - "isReadonly": false, - "isOptional": true, - "releaseTag": "Public", - "name": "angularVelocity", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } - }, - { - "kind": "PropertySignature", - "canonicalReference": "server!KinematicVelocityRigidBodyOptions#linearVelocity:member", - "docComment": "/**\n * The linear velocity of the rigid body.\n *\n * **Category:** Physics\n */\n", - "excerptTokens": [ + "text": "[TEventType]) => void" + }, { "kind": "Content", - "text": "linearVelocity?: " + "text": "): " }, { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "kind": "Content", + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": true, - "releaseTag": "Public", - "name": "linearVelocity", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } - }, - { - "kind": "PropertySignature", - "canonicalReference": "server!KinematicVelocityRigidBodyOptions#type:member", - "docComment": "", - "excerptTokens": [ + "typeParameters": [ { - "kind": "Content", - "text": "type: " - }, + "typeParameterName": "TEventType", + "constraintTokenRange": { + "startIndex": 1, + "endIndex": 3 + }, + "defaultTypeTokenRange": { + "startIndex": 0, + "endIndex": 0 + } + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 10, + "endIndex": 11 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ { - "kind": "Reference", - "text": "RigidBodyType.KINEMATIC_VELOCITY", - "canonicalReference": "server!RigidBodyType.KINEMATIC_VELOCITY:member" + "parameterName": "eventType", + "parameterTypeTokenRange": { + "startIndex": 4, + "endIndex": 5 + }, + "isOptional": false }, { - "kind": "Content", - "text": ";" + "parameterName": "listener", + "parameterTypeTokenRange": { + "startIndex": 6, + "endIndex": 9 + }, + "isOptional": false } ], - "isReadonly": false, "isOptional": false, - "releaseTag": "Public", - "name": "type", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } - } - ], - "extendsTokenRanges": [ - { - "startIndex": 1, - "endIndex": 2 - } - ] - }, - { - "kind": "Class", - "canonicalReference": "server!Matrix2:class", - "docComment": "/**\n * Represents a 2x2 matrix.\n *\n * When to use: 2D transforms or linear algebra utilities. Do NOT use for: immutable math; most methods mutate the instance.\n *\n * @remarks\n *\n * All matrix methods result in mutation of the matrix instance. This class extends `Float32Array` to provide an efficient way to create and manipulate a 2x2 matrix.\n *\n * Pattern: reuse instances to reduce allocations. Anti-pattern: treating matrices as immutable values.\n *\n * **Category:** Math\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export default class Matrix2 extends " - }, - { - "kind": "Reference", - "text": "Float32Array", - "canonicalReference": "!Float32Array:interface" + "isAbstract": false, + "name": "once" }, { - "kind": "Content", - "text": " " - } - ], - "fileUrlPath": "src/shared/classes/Matrix2.ts", - "releaseTag": "Public", - "isAbstract": false, - "name": "Matrix2", - "preserveMemberOrder": false, - "members": [ - { - "kind": "Constructor", - "canonicalReference": "server!Matrix2:constructor(1)", - "docComment": "/**\n * Constructs a new instance of the `Matrix2` class\n */\n", + "kind": "Method", + "canonicalReference": "server!EventRouter#once:member(2)", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "constructor(m00: " - }, - { - "kind": "Content", - "text": "number" - }, - { - "kind": "Content", - "text": ", m01: " + "text": "once(eventType: " }, { "kind": "Content", - "text": "number" + "text": "string" }, { "kind": "Content", - "text": ", m10: " + "text": ", listener: " }, { "kind": "Content", - "text": "number" + "text": "(payload: any) => void" }, { "kind": "Content", - "text": ", m11: " + "text": "): " }, { "kind": "Content", - "text": "number" + "text": "void" }, { "kind": "Content", - "text": ");" + "text": ";" } ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 5, + "endIndex": 6 + }, "releaseTag": "Public", "isProtected": false, - "overloadIndex": 1, + "overloadIndex": 2, "parameters": [ { - "parameterName": "m00", + "parameterName": "eventType", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -27102,239 +27181,419 @@ "isOptional": false }, { - "parameterName": "m01", + "parameterName": "listener", "parameterTypeTokenRange": { "startIndex": 3, "endIndex": 4 }, "isOptional": false - }, - { - "parameterName": "m10", - "parameterTypeTokenRange": { - "startIndex": 5, - "endIndex": 6 - }, - "isOptional": false - }, - { - "parameterName": "m11", - "parameterTypeTokenRange": { - "startIndex": 7, - "endIndex": 8 - }, - "isOptional": false } - ] - }, - { - "kind": "Method", - "canonicalReference": "server!Matrix2#add:member(1)", - "docComment": "/**\n * Adds a matrix to the current matrix.\n *\n * @param matrix2 - The matrix to add to the current matrix.\n *\n * @returns The current matrix.\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "add(matrix2: " - }, - { - "kind": "Reference", - "text": "Matrix2", - "canonicalReference": "server!Matrix2:class" - }, + ], + "isOptional": false, + "isAbstract": false, + "name": "once" + } + ], + "implementsTokenRanges": [] + }, + { + "kind": "TypeAlias", + "canonicalReference": "server!FaceCallback:type", + "docComment": "/**\n * Callback invoked as the entity rotates toward a target.\n *\n * @param currentRotation - The current rotation of the entity.\n *\n * @param targetRotation - The target rotation of the entity.\n *\n * **Category:** Controllers\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export type FaceCallback = " + }, + { + "kind": "Content", + "text": "(currentRotation: " + }, + { + "kind": "Reference", + "text": "QuaternionLike", + "canonicalReference": "server!QuaternionLike:interface" + }, + { + "kind": "Content", + "text": ", targetRotation: " + }, + { + "kind": "Reference", + "text": "QuaternionLike", + "canonicalReference": "server!QuaternionLike:interface" + }, + { + "kind": "Content", + "text": ") => void" + }, + { + "kind": "Content", + "text": ";" + } + ], + "fileUrlPath": "src/worlds/entities/controllers/SimpleEntityController.ts", + "releaseTag": "Public", + "name": "FaceCallback", + "typeTokenRange": { + "startIndex": 1, + "endIndex": 6 + } + }, + { + "kind": "TypeAlias", + "canonicalReference": "server!FaceCompleteCallback:type", + "docComment": "/**\n * Callback invoked when the entity finishes rotating to face a target.\n *\n * @param endRotation - The rotation of the entity after it has finished rotating.\n *\n * **Category:** Controllers\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export type FaceCompleteCallback = " + }, + { + "kind": "Content", + "text": "(endRotation: " + }, + { + "kind": "Reference", + "text": "QuaternionLike", + "canonicalReference": "server!QuaternionLike:interface" + }, + { + "kind": "Content", + "text": ") => void" + }, + { + "kind": "Content", + "text": ";" + } + ], + "fileUrlPath": "src/worlds/entities/controllers/SimpleEntityController.ts", + "releaseTag": "Public", + "name": "FaceCompleteCallback", + "typeTokenRange": { + "startIndex": 1, + "endIndex": 4 + } + }, + { + "kind": "TypeAlias", + "canonicalReference": "server!FaceOptions:type", + "docComment": "/**\n * Options for `SimpleEntityController.face`.\n *\n * Use for: customizing a single `face()` call (callbacks, completion). Do NOT use for: persistent defaults; use `SimpleEntityControllerOptions`.\n *\n * **Category:** Controllers\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export type FaceOptions = " + }, + { + "kind": "Content", + "text": "{\n faceCallback?: " + }, + { + "kind": "Reference", + "text": "FaceCallback", + "canonicalReference": "server!FaceCallback:type" + }, + { + "kind": "Content", + "text": ";\n faceCompleteCallback?: " + }, + { + "kind": "Reference", + "text": "FaceCompleteCallback", + "canonicalReference": "server!FaceCompleteCallback:type" + }, + { + "kind": "Content", + "text": ";\n}" + }, + { + "kind": "Content", + "text": ";" + } + ], + "fileUrlPath": "src/worlds/entities/controllers/SimpleEntityController.ts", + "releaseTag": "Public", + "name": "FaceOptions", + "typeTokenRange": { + "startIndex": 1, + "endIndex": 6 + } + }, + { + "kind": "TypeAlias", + "canonicalReference": "server!FilterOptions:type", + "docComment": "/**\n * Filter options for raycasting and intersection queries.\n *\n * Use for: scoping physics queries to specific colliders or groups. Do NOT use for: persistent collision configuration; use `CollisionGroupsBuilder`.\n *\n * **Category:** Physics\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export type FilterOptions = " + }, + { + "kind": "Content", + "text": "{\n filterFlags?: " + }, + { + "kind": "Reference", + "text": "RAPIER.QueryFilterFlags", + "canonicalReference": "@dimforge/rapier3d-simd-compat!QueryFilterFlags:enum" + }, + { + "kind": "Content", + "text": ";\n filterGroups?: number;\n filterExcludeCollider?: " + }, + { + "kind": "Reference", + "text": "RawCollider", + "canonicalReference": "server!RawCollider:type" + }, + { + "kind": "Content", + "text": ";\n filterExcludeRigidBody?: " + }, + { + "kind": "Reference", + "text": "RAPIER.RigidBody", + "canonicalReference": "@dimforge/rapier3d-simd-compat!RigidBody:class" + }, + { + "kind": "Content", + "text": ";\n filterPredicate?: (collider: " + }, + { + "kind": "Reference", + "text": "RawCollider", + "canonicalReference": "server!RawCollider:type" + }, + { + "kind": "Content", + "text": ") => boolean;\n}" + }, + { + "kind": "Content", + "text": ";" + } + ], + "fileUrlPath": "src/worlds/physics/Simulation.ts", + "releaseTag": "Public", + "name": "FilterOptions", + "typeTokenRange": { + "startIndex": 1, + "endIndex": 10 + } + }, + { + "kind": "Interface", + "canonicalReference": "server!FixedRigidBodyOptions:interface", + "docComment": "/**\n * The options for a fixed rigid body.\n *\n * Use for: immovable bodies (world geometry, static platforms). Do NOT use for: moving objects; use dynamic or kinematic options.\n *\n * **Category:** Physics\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export interface FixedRigidBodyOptions extends " + }, + { + "kind": "Reference", + "text": "BaseRigidBodyOptions", + "canonicalReference": "server!BaseRigidBodyOptions:interface" + }, + { + "kind": "Content", + "text": " " + } + ], + "fileUrlPath": "src/worlds/physics/RigidBody.ts", + "releaseTag": "Public", + "name": "FixedRigidBodyOptions", + "preserveMemberOrder": false, + "members": [ + { + "kind": "PropertySignature", + "canonicalReference": "server!FixedRigidBodyOptions#type:member", + "docComment": "", + "excerptTokens": [ { "kind": "Content", - "text": "): " + "text": "type: " }, { "kind": "Reference", - "text": "Matrix2", - "canonicalReference": "server!Matrix2:class" + "text": "RigidBodyType.FIXED", + "canonicalReference": "server!RigidBodyType.FIXED:member" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "matrix2", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], + "isReadonly": false, "isOptional": false, - "isAbstract": false, - "name": "add" - }, + "releaseTag": "Public", + "name": "type", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + } + ], + "extendsTokenRanges": [ { - "kind": "Method", - "canonicalReference": "server!Matrix2#adjoint:member(1)", - "docComment": "/**\n * Sets the adjugate of the current matrix.\n *\n * @returns The current matrix.\n */\n", + "startIndex": 1, + "endIndex": 2 + } + ] + }, + { + "kind": "Class", + "canonicalReference": "server!GameServer:class", + "docComment": "/**\n * Global entry point for server systems (players, worlds, assets).\n *\n * When to use: accessing global managers and registries after startup. Do NOT use for: constructing your own server instance.\n *\n * @remarks\n *\n * Access via `GameServer.instance` — do not construct directly. Initialize with `startServer` to ensure physics and assets are ready.\n *\n * **Category:** Core\n *\n * The constructor for this class is marked as internal. Third-party code should not call the constructor directly or create subclasses that extend the `GameServer` class.\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export default class GameServer " + } + ], + "fileUrlPath": "src/GameServer.ts", + "releaseTag": "Public", + "isAbstract": false, + "name": "GameServer", + "preserveMemberOrder": false, + "members": [ + { + "kind": "Property", + "canonicalReference": "server!GameServer#blockTextureRegistry:member", + "docComment": "/**\n * The block texture registry for the game server.\n *\n * **Category:** Core\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "adjoint(): " + "text": "get blockTextureRegistry(): " }, { "kind": "Reference", - "text": "Matrix2", - "canonicalReference": "server!Matrix2:class" + "text": "BlockTextureRegistry", + "canonicalReference": "server!BlockTextureRegistry:class" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "blockTextureRegistry", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "releaseTag": "Public", + "isStatic": false, "isProtected": false, - "overloadIndex": 1, - "parameters": [], - "isOptional": false, - "isAbstract": false, - "name": "adjoint" + "isAbstract": false }, { - "kind": "Method", - "canonicalReference": "server!Matrix2#clone:member(1)", - "docComment": "/**\n * Clones the current matrix.\n *\n * @returns A clone of the current matrix.\n */\n", + "kind": "Property", + "canonicalReference": "server!GameServer.instance:member", + "docComment": "/**\n * The singleton instance of the game server.\n *\n * @remarks\n *\n * Access this after calling `startServer`.\n *\n * **Category:** Core\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "clone(): " + "text": "static get instance(): " }, { "kind": "Reference", - "text": "Matrix2", - "canonicalReference": "server!Matrix2:class" + "text": "GameServer", + "canonicalReference": "server!GameServer:class" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "instance", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "releaseTag": "Public", + "isStatic": true, "isProtected": false, - "overloadIndex": 1, - "parameters": [], - "isOptional": false, - "isAbstract": false, - "name": "clone" + "isAbstract": false }, { - "kind": "Method", - "canonicalReference": "server!Matrix2#copy:member(1)", - "docComment": "/**\n * Copies a matrix to the current matrix.\n *\n * @param matrix2 - The matrix2 to copy to the current matrix.\n *\n * @returns The current matrix.\n */\n", + "kind": "Property", + "canonicalReference": "server!GameServer#modelRegistry:member", + "docComment": "/**\n * The model registry for the game server.\n *\n * **Category:** Core\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "copy(matrix2: " - }, - { - "kind": "Reference", - "text": "Matrix2", - "canonicalReference": "server!Matrix2:class" - }, - { - "kind": "Content", - "text": "): " + "text": "get modelRegistry(): " }, { "kind": "Reference", - "text": "Matrix2", - "canonicalReference": "server!Matrix2:class" + "text": "ModelRegistry", + "canonicalReference": "server!ModelRegistry:class" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, + "isReadonly": true, + "isOptional": false, "releaseTag": "Public", + "name": "modelRegistry", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "matrix2", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "copy" + "isAbstract": false }, { - "kind": "Method", - "canonicalReference": "server!Matrix2.create:member(1)", - "docComment": "/**\n * Creates a new `Matrix2` instance.\n *\n * @returns A new `Matrix2` instance.\n */\n", + "kind": "Property", + "canonicalReference": "server!GameServer#playerManager:member", + "docComment": "/**\n * The player manager for the game server.\n *\n * **Category:** Core\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "static create(): " + "text": "get playerManager(): " }, { "kind": "Reference", - "text": "Matrix2", - "canonicalReference": "server!Matrix2:class" + "text": "PlayerManager", + "canonicalReference": "server!PlayerManager:class" }, { "kind": "Content", "text": ";" } ], - "isStatic": true, - "returnTypeTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "playerManager", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "releaseTag": "Public", + "isStatic": false, "isProtected": false, - "overloadIndex": 1, - "parameters": [], - "isOptional": false, - "isAbstract": false, - "name": "create" + "isAbstract": false }, { "kind": "Property", - "canonicalReference": "server!Matrix2#determinant:member", - "docComment": "/**\n * The determinant of the matrix.\n */\n", + "canonicalReference": "server!GameServer#webServer:member", + "docComment": "/**\n * The web server for the game server.\n *\n * **Category:** Core\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get determinant(): " + "text": "get webServer(): " }, { - "kind": "Content", - "text": "number" + "kind": "Reference", + "text": "WebServer", + "canonicalReference": "server!WebServer:class" }, { "kind": "Content", @@ -27344,7 +27603,7 @@ "isReadonly": true, "isOptional": false, "releaseTag": "Public", - "name": "determinant", + "name": "webServer", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -27354,318 +27613,285 @@ "isAbstract": false }, { - "kind": "Method", - "canonicalReference": "server!Matrix2#equals:member(1)", - "docComment": "/**\n * Checks if the current matrix is approximately equal to another matrix.\n *\n * @param matrix2 - The matrix to compare to the current matrix.\n *\n * @returns `true` if the current matrix is equal to the provided matrix, `false` otherwise.\n */\n", + "kind": "Property", + "canonicalReference": "server!GameServer#worldManager:member", + "docComment": "/**\n * The world manager for the game server.\n *\n * **Category:** Core\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "equals(matrix2: " + "text": "get worldManager(): " }, { "kind": "Reference", - "text": "Matrix2", - "canonicalReference": "server!Matrix2:class" - }, - { - "kind": "Content", - "text": "): " - }, - { - "kind": "Content", - "text": "boolean" + "text": "WorldManager", + "canonicalReference": "server!WorldManager:class" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, + "isReadonly": true, + "isOptional": false, "releaseTag": "Public", + "name": "worldManager", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "matrix2", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "equals" - }, + "isAbstract": false + } + ], + "implementsTokenRanges": [] + }, + { + "kind": "Enum", + "canonicalReference": "server!GameServerEvent:enum", + "docComment": "/**\n * Event types a GameServer instance can emit to the global event router.\n *\n * See `GameServerEventPayloads` for the payloads.\n *\n * **Category:** Events\n *\n * @public\n */\n", + "excerptTokens": [ { - "kind": "Method", - "canonicalReference": "server!Matrix2#exactEquals:member(1)", - "docComment": "/**\n * Checks if the current matrix is exactly equal to another matrix.\n *\n * @param matrix2 - The matrix to compare to the current matrix.\n *\n * @returns `true` if the current matrix is equal to the provided matrix, `false` otherwise.\n */\n", + "kind": "Content", + "text": "export declare enum GameServerEvent " + } + ], + "fileUrlPath": "src/GameServer.ts", + "releaseTag": "Public", + "name": "GameServerEvent", + "preserveMemberOrder": false, + "members": [ + { + "kind": "EnumMember", + "canonicalReference": "server!GameServerEvent.START:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "exactEquals(matrix2: " - }, - { - "kind": "Reference", - "text": "Matrix2", - "canonicalReference": "server!Matrix2:class" + "text": "START = " }, { "kind": "Content", - "text": "): " - }, - { - "kind": "Content", - "text": "boolean" - }, - { - "kind": "Content", - "text": ";" + "text": "\"GAMESERVER.START\"" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 }, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "matrix2", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "exactEquals" + "name": "START" }, { - "kind": "Property", - "canonicalReference": "server!Matrix2#frobeniusNorm:member", - "docComment": "/**\n * The frobenius normal of the matrix.\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!GameServerEvent.STOP:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "get frobeniusNorm(): " - }, - { - "kind": "Content", - "text": "number" + "text": "STOP = " }, { "kind": "Content", - "text": ";" + "text": "\"GAMESERVER.STOP\"" } ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "frobeniusNorm", - "propertyTypeTokenRange": { + "initializerTokenRange": { "startIndex": 1, "endIndex": 2 }, - "isStatic": false, - "isProtected": false, - "isAbstract": false - }, + "releaseTag": "Public", + "name": "STOP" + } + ] + }, + { + "kind": "Interface", + "canonicalReference": "server!GameServerEventPayloads:interface", + "docComment": "/**\n * Event payloads for GameServer emitted events.\n *\n * **Category:** Events\n *\n * @public\n */\n", + "excerptTokens": [ { - "kind": "Method", - "canonicalReference": "server!Matrix2.fromRotation:member(1)", - "docComment": "/**\n * Creates a new `Matrix2` instance from a rotation of identity matrix.\n *\n * @param angle - The angle in radians to rotate the matrix by.\n *\n * @returns A new `Matrix2` instance.\n */\n", + "kind": "Content", + "text": "export interface GameServerEventPayloads " + } + ], + "fileUrlPath": "src/GameServer.ts", + "releaseTag": "Public", + "name": "GameServerEventPayloads", + "preserveMemberOrder": false, + "members": [ + { + "kind": "PropertySignature", + "canonicalReference": "server!GameServerEventPayloads#\"GAMESERVER.START\":member", + "docComment": "/**\n * Emitted when the game server starts.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "static fromRotation(angle: " + "text": "[" }, { - "kind": "Content", - "text": "number" + "kind": "Reference", + "text": "GameServerEvent.START", + "canonicalReference": "server!GameServerEvent.START:member" }, { "kind": "Content", - "text": "): " + "text": "]: " }, { - "kind": "Reference", - "text": "Matrix2", - "canonicalReference": "server!Matrix2:class" + "kind": "Content", + "text": "{\n startedAtMs: number;\n }" }, { "kind": "Content", "text": ";" } ], - "isStatic": true, - "returnTypeTokenRange": { + "isReadonly": false, + "isOptional": false, + "releaseTag": "Public", + "name": "\"GAMESERVER.START\"", + "propertyTypeTokenRange": { "startIndex": 3, "endIndex": 4 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "angle", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "fromRotation" + } }, { - "kind": "Method", - "canonicalReference": "server!Matrix2.fromScaling:member(1)", - "docComment": "/**\n * Creates a new `Matrix2` instance from a scale of identity matrix.\n *\n * @param scale - The scale of the matrix.\n *\n * @returns A new `Matrix2` instance.\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!GameServerEventPayloads#\"GAMESERVER.STOP\":member", + "docComment": "/**\n * Emitted when the game server stops.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "static fromScaling(scale: " + "text": "[" }, { "kind": "Reference", - "text": "Vector2", - "canonicalReference": "server!Vector2:class" + "text": "GameServerEvent.STOP", + "canonicalReference": "server!GameServerEvent.STOP:member" }, { "kind": "Content", - "text": "): " + "text": "]: " }, { - "kind": "Reference", - "text": "Matrix2", - "canonicalReference": "server!Matrix2:class" + "kind": "Content", + "text": "{\n stoppedAtMs: number;\n }" }, { "kind": "Content", "text": ";" } ], - "isStatic": true, - "returnTypeTokenRange": { + "isReadonly": false, + "isOptional": false, + "releaseTag": "Public", + "name": "\"GAMESERVER.STOP\"", + "propertyTypeTokenRange": { "startIndex": 3, "endIndex": 4 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "scale", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "fromScaling" + } + } + ], + "extendsTokenRanges": [] + }, + { + "kind": "Class", + "canonicalReference": "server!IdleBehavior:class", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "export default class IdleBehavior implements " }, { - "kind": "Method", - "canonicalReference": "server!Matrix2#identity:member(1)", - "docComment": "/**\n * Sets the current matrix to the identity matrix.\n *\n * @returns The current matrix.\n */\n", + "kind": "Reference", + "text": "BotBehavior", + "canonicalReference": "server!BotBehavior:interface" + }, + { + "kind": "Content", + "text": " " + } + ], + "fileUrlPath": "src/bots/behaviors/IdleBehavior.ts", + "releaseTag": "Public", + "isAbstract": false, + "name": "IdleBehavior", + "preserveMemberOrder": false, + "members": [ + { + "kind": "Property", + "canonicalReference": "server!IdleBehavior#name:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "identity(): " + "text": "readonly name = " }, { - "kind": "Reference", - "text": "Matrix2", - "canonicalReference": "server!Matrix2:class" + "kind": "Content", + "text": "\"idle\"" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "name", + "propertyTypeTokenRange": { + "startIndex": 0, + "endIndex": 0 + }, + "initializerTokenRange": { "startIndex": 1, "endIndex": 2 }, - "releaseTag": "Public", + "isStatic": false, "isProtected": false, - "overloadIndex": 1, - "parameters": [], - "isOptional": false, - "isAbstract": false, - "name": "identity" + "isAbstract": false }, { "kind": "Method", - "canonicalReference": "server!Matrix2#invert:member(1)", - "docComment": "/**\n * Inverts the current matrix.\n *\n * @returns The current matrix.\n */\n", + "canonicalReference": "server!IdleBehavior#tick:member(1)", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "invert(): " + "text": "tick(_bot: " }, { "kind": "Reference", - "text": "Matrix2", - "canonicalReference": "server!Matrix2:class" + "text": "BotPlayer", + "canonicalReference": "server!BotPlayer:class" }, { "kind": "Content", - "text": ";" - } - ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [], - "isOptional": false, - "isAbstract": false, - "name": "invert" - }, - { - "kind": "Method", - "canonicalReference": "server!Matrix2#multiply:member(1)", - "docComment": "/**\n * Multiplies the current matrix by another matrix.\n *\n * @param matrix2 - The matrix to multiply the current matrix by.\n *\n * @returns The current matrix.\n */\n", - "excerptTokens": [ + "text": ", _world: " + }, + { + "kind": "Reference", + "text": "World", + "canonicalReference": "server!World:class" + }, { "kind": "Content", - "text": "multiply(matrix2: " + "text": ", _deltaTimeMs: " }, { - "kind": "Reference", - "text": "Matrix2", - "canonicalReference": "server!Matrix2:class" + "kind": "Content", + "text": "number" }, { "kind": "Content", "text": "): " }, { - "kind": "Reference", - "text": "Matrix2", - "canonicalReference": "server!Matrix2:class" + "kind": "Content", + "text": "void" }, { "kind": "Content", @@ -27674,146 +27900,180 @@ ], "isStatic": false, "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 + "startIndex": 7, + "endIndex": 8 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, "parameters": [ { - "parameterName": "matrix2", + "parameterName": "_bot", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, "isOptional": false + }, + { + "parameterName": "_world", + "parameterTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "isOptional": false + }, + { + "parameterName": "_deltaTimeMs", + "parameterTypeTokenRange": { + "startIndex": 5, + "endIndex": 6 + }, + "isOptional": false } ], "isOptional": false, "isAbstract": false, - "name": "multiply" + "name": "tick" + } + ], + "implementsTokenRanges": [ + { + "startIndex": 1, + "endIndex": 2 + } + ] + }, + { + "kind": "Class", + "canonicalReference": "server!InteractBehavior:class", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "export default class InteractBehavior implements " }, { - "kind": "Method", - "canonicalReference": "server!Matrix2#multiplyScalar:member(1)", - "docComment": "/**\n * Multiplies each element of the current matrix by a scalar value.\n *\n * @param scalar - The scalar value to multiply the current matrix elements by.\n *\n * @returns The current matrix.\n */\n", + "kind": "Reference", + "text": "BotBehavior", + "canonicalReference": "server!BotBehavior:interface" + }, + { + "kind": "Content", + "text": " " + } + ], + "fileUrlPath": "src/bots/behaviors/InteractBehavior.ts", + "releaseTag": "Public", + "isAbstract": false, + "name": "InteractBehavior", + "preserveMemberOrder": false, + "members": [ + { + "kind": "Constructor", + "canonicalReference": "server!InteractBehavior:constructor(1)", + "docComment": "/**\n * Constructs a new instance of the `InteractBehavior` class\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "multiplyScalar(scalar: " - }, - { - "kind": "Content", - "text": "number" - }, - { - "kind": "Content", - "text": "): " + "text": "constructor(options?: " }, { "kind": "Reference", - "text": "Matrix2", - "canonicalReference": "server!Matrix2:class" + "text": "InteractBehaviorOptions", + "canonicalReference": "server!InteractBehaviorOptions:interface" }, { "kind": "Content", - "text": ";" + "text": ");" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, "parameters": [ { - "parameterName": "scalar", + "parameterName": "options", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "isOptional": false + "isOptional": true } - ], - "isOptional": false, - "isAbstract": false, - "name": "multiplyScalar" + ] }, { - "kind": "Method", - "canonicalReference": "server!Matrix2#rotate:member(1)", - "docComment": "/**\n * Rotates the current matrix by an angle in radians.\n *\n * @param angle - The angle in radians to rotate the current matrix by.\n *\n * @returns The current matrix.\n */\n", + "kind": "Property", + "canonicalReference": "server!InteractBehavior#name:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "rotate(angle: " - }, - { - "kind": "Content", - "text": "number" + "text": "readonly name = " }, { "kind": "Content", - "text": "): " - }, - { - "kind": "Reference", - "text": "Matrix2", - "canonicalReference": "server!Matrix2:class" + "text": "\"interact\"" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, + "isReadonly": true, + "isOptional": false, "releaseTag": "Public", + "name": "name", + "propertyTypeTokenRange": { + "startIndex": 0, + "endIndex": 0 + }, + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "angle", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "rotate" + "isAbstract": false }, { "kind": "Method", - "canonicalReference": "server!Matrix2#subtract:member(1)", - "docComment": "/**\n * Subtracts a matrix from the current matrix.\n *\n * @param matrix2 - The matrix to subtract from the current matrix.\n *\n * @returns The current matrix.\n */\n", + "canonicalReference": "server!InteractBehavior#tick:member(1)", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "subtract(matrix2: " + "text": "tick(bot: " }, { "kind": "Reference", - "text": "Matrix2", - "canonicalReference": "server!Matrix2:class" + "text": "BotPlayer", + "canonicalReference": "server!BotPlayer:class" }, { "kind": "Content", - "text": "): " + "text": ", world: " }, { "kind": "Reference", - "text": "Matrix2", - "canonicalReference": "server!Matrix2:class" + "text": "World", + "canonicalReference": "server!World:class" + }, + { + "kind": "Content", + "text": ", deltaTimeMs: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Content", + "text": "void" }, { "kind": "Content", @@ -27822,303 +28082,486 @@ ], "isStatic": false, "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 + "startIndex": 7, + "endIndex": 8 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, "parameters": [ { - "parameterName": "matrix2", + "parameterName": "bot", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, "isOptional": false + }, + { + "parameterName": "world", + "parameterTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "isOptional": false + }, + { + "parameterName": "deltaTimeMs", + "parameterTypeTokenRange": { + "startIndex": 5, + "endIndex": 6 + }, + "isOptional": false } ], "isOptional": false, "isAbstract": false, - "name": "subtract" - }, + "name": "tick" + } + ], + "implementsTokenRanges": [ { - "kind": "Method", - "canonicalReference": "server!Matrix2#toString:member(1)", - "docComment": "/**\n * Returns a string representation of the current matrix.\n *\n * @returns A string representation of the current matrix.\n */\n", + "startIndex": 1, + "endIndex": 2 + } + ] + }, + { + "kind": "Interface", + "canonicalReference": "server!InteractBehaviorOptions:interface", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "export interface InteractBehaviorOptions " + } + ], + "fileUrlPath": "src/bots/behaviors/InteractBehavior.ts", + "releaseTag": "Public", + "name": "InteractBehaviorOptions", + "preserveMemberOrder": false, + "members": [ + { + "kind": "PropertySignature", + "canonicalReference": "server!InteractBehaviorOptions#actionIntervalMs:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "toString(): " + "text": "actionIntervalMs?: " }, { "kind": "Content", - "text": "string" + "text": "number" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "actionIntervalMs", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [], - "isOptional": false, - "isAbstract": false, - "name": "toString" + } }, { - "kind": "Method", - "canonicalReference": "server!Matrix2#transpose:member(1)", - "docComment": "/**\n * Transposes the current matrix.\n *\n * @returns The current matrix.\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!InteractBehaviorOptions#interactRadius:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "transpose(): " + "text": "interactRadius?: " }, { - "kind": "Reference", - "text": "Matrix2", - "canonicalReference": "server!Matrix2:class" + "kind": "Content", + "text": "number" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "interactRadius", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [], - "isOptional": false, - "isAbstract": false, - "name": "transpose" - } - ], - "extendsTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "implementsTokenRanges": [] - }, + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!InteractBehaviorOptions#moveSpeed:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "moveSpeed?: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "moveSpeed", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + } + ], + "extendsTokenRanges": [] + }, { - "kind": "Class", - "canonicalReference": "server!Matrix3:class", - "docComment": "/**\n * Represents a 3x3 matrix.\n *\n * When to use: 2D homogeneous transforms or normal matrix math. Do NOT use for: immutable math; most methods mutate the instance.\n *\n * @remarks\n *\n * All matrix methods result in mutation of the matrix instance. This class extends `Float32Array` to provide an efficient way to create and manipulate a 3x3 matrix.\n *\n * Pattern: reuse instances to reduce allocations. Anti-pattern: treating matrices as immutable values.\n *\n * **Category:** Math\n *\n * @public\n */\n", + "kind": "TypeAlias", + "canonicalReference": "server!IntersectionResult:type", + "docComment": "/**\n * An intersection result.\n *\n * **Category:** Physics\n *\n * @public\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "export default class Matrix3 extends " + "text": "export type IntersectionResult = " + }, + { + "kind": "Content", + "text": "{\n intersectedBlockType?: " }, { "kind": "Reference", - "text": "Float32Array", - "canonicalReference": "!Float32Array:interface" + "text": "BlockType", + "canonicalReference": "server!BlockType:class" }, { "kind": "Content", - "text": " " + "text": ";\n intersectedEntity?: " + }, + { + "kind": "Reference", + "text": "Entity", + "canonicalReference": "server!Entity:class" + }, + { + "kind": "Content", + "text": ";\n}" + }, + { + "kind": "Content", + "text": ";" } ], - "fileUrlPath": "src/shared/classes/Matrix3.ts", + "fileUrlPath": "src/worlds/physics/Simulation.ts", + "releaseTag": "Public", + "name": "IntersectionResult", + "typeTokenRange": { + "startIndex": 1, + "endIndex": 6 + } + }, + { + "kind": "Class", + "canonicalReference": "server!IterationMap:class", + "docComment": "/**\n * A high-performance Map-like data structure optimized for frequent iteration.\n *\n * When to use: per-tick collections that are built, iterated, and cleared each frame. Do NOT use for: long-lived maps with rare iteration; a standard Map is simpler.\n *\n * @remarks\n *\n * IterationMap maintains both a Map for O(1) lookups and an Array for fast iteration, eliminating the need for Array.from() calls and providing ~2x faster iteration than Map.values(). Optimized for \"build up, iterate, clear\" usage patterns common in game loops.\n *\n * Pattern: update via `IterationMap.set`, iterate with `IterationMap.valuesArray`, then `IterationMap.clear`. Anti-pattern: mutating the map during `IterationMap.valuesArray` iteration.\n *\n * @example\n * ```typescript\n * const iterationMap = new IterationMap();\n * iterationMap.set(1, 'hello');\n * iterationMap.set(2, 'world');\n *\n * // Fast O(1) lookup\n * const value = iterationMap.get(1);\n *\n * // Fast array iteration (no Map.values() overhead)\n * for (const item of iterationMap.valuesArray) {\n * console.log(item);\n * }\n *\n * // Efficient bulk clear\n * iterationMap.clear();\n * ```\n *\n * **Category:** Utilities\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export default class IterationMap " + } + ], + "fileUrlPath": "src/shared/classes/IterationMap.ts", "releaseTag": "Public", + "typeParameters": [ + { + "typeParameterName": "K", + "constraintTokenRange": { + "startIndex": 0, + "endIndex": 0 + }, + "defaultTypeTokenRange": { + "startIndex": 0, + "endIndex": 0 + } + }, + { + "typeParameterName": "V", + "constraintTokenRange": { + "startIndex": 0, + "endIndex": 0 + }, + "defaultTypeTokenRange": { + "startIndex": 0, + "endIndex": 0 + } + } + ], "isAbstract": false, - "name": "Matrix3", + "name": "IterationMap", "preserveMemberOrder": false, "members": [ { - "kind": "Constructor", - "canonicalReference": "server!Matrix3:constructor(1)", - "docComment": "/**\n * Constructs a new instance of the `Matrix3` class\n */\n", + "kind": "Method", + "canonicalReference": "server!IterationMap#[Symbol.iterator]:member(1)", + "docComment": "/**\n * Returns an iterator for the key-value pairs in the IterationMap.\n *\n * @returns An iterator for the entries.\n *\n * **Category:** Utilities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "constructor(m00: " + "text": "[" }, { - "kind": "Content", - "text": "number" + "kind": "Reference", + "text": "Symbol.iterator", + "canonicalReference": "!SymbolConstructor#iterator" }, { "kind": "Content", - "text": ", m01: " + "text": "](): " }, { - "kind": "Content", - "text": "number" + "kind": "Reference", + "text": "IterableIterator", + "canonicalReference": "!IterableIterator:interface" }, { "kind": "Content", - "text": ", m02: " + "text": "<[K, V]>" }, { "kind": "Content", - "text": "number" - }, + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 5 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [], + "isOptional": false, + "isAbstract": false, + "name": "[Symbol.iterator]" + }, + { + "kind": "Method", + "canonicalReference": "server!IterationMap#clear:member(1)", + "docComment": "/**\n * Removes all key-value pairs from the IterationMap. Highly optimized for the common \"build up, iterate, clear\" pattern.\n *\n * **Side effects:** Clears the backing map and value array.\n *\n * **Category:** Utilities\n */\n", + "excerptTokens": [ { "kind": "Content", - "text": ", m10: " + "text": "clear(): " }, { "kind": "Content", - "text": "number" + "text": "void" }, { "kind": "Content", - "text": ", m11: " - }, + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [], + "isOptional": false, + "isAbstract": false, + "name": "clear" + }, + { + "kind": "Method", + "canonicalReference": "server!IterationMap#delete:member(1)", + "docComment": "/**\n * Removes the key-value pair from the IterationMap.\n *\n * @param key - The key to delete.\n *\n * @returns True if the key existed and was deleted, false otherwise.\n *\n * **Side effects:** Marks the internal array as dirty.\n *\n * **Category:** Utilities\n */\n", + "excerptTokens": [ { "kind": "Content", - "text": "number" + "text": "delete(key: " }, { "kind": "Content", - "text": ", m12: " + "text": "K" }, { "kind": "Content", - "text": "number" + "text": "): " }, { "kind": "Content", - "text": ", m20: " + "text": "boolean" }, { "kind": "Content", - "text": "number" - }, + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ { - "kind": "Content", - "text": ", m21: " - }, + "parameterName": "key", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "delete" + }, + { + "kind": "Method", + "canonicalReference": "server!IterationMap#entries:member(1)", + "docComment": "/**\n * Returns an iterator for the key-value pairs in the IterationMap.\n *\n * @returns An iterator for the entries.\n *\n * **Category:** Utilities\n */\n", + "excerptTokens": [ { "kind": "Content", - "text": "number" + "text": "entries(): " }, { - "kind": "Content", - "text": ", m22: " + "kind": "Reference", + "text": "IterableIterator", + "canonicalReference": "!IterableIterator:interface" }, { "kind": "Content", - "text": "number" + "text": "<[K, V]>" }, { "kind": "Content", - "text": ");" + "text": ";" } ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 1, + "endIndex": 3 + }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, - "parameters": [ + "parameters": [], + "isOptional": false, + "isAbstract": false, + "name": "entries" + }, + { + "kind": "Method", + "canonicalReference": "server!IterationMap#forEach:member(1)", + "docComment": "/**\n * Executes a provided function once for each key-value pair.\n *\n * @param callbackfn - Function to execute for each element.\n *\n * @param thisArg - Value to use as this when executing callback.\n *\n * **Category:** Utilities\n */\n", + "excerptTokens": [ { - "parameterName": "m00", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false + "kind": "Content", + "text": "forEach(callbackfn: " }, { - "parameterName": "m01", - "parameterTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "isOptional": false + "kind": "Content", + "text": "(value: V, key: K, map: " }, { - "parameterName": "m02", - "parameterTypeTokenRange": { - "startIndex": 5, - "endIndex": 6 - }, - "isOptional": false + "kind": "Reference", + "text": "IterationMap", + "canonicalReference": "server!IterationMap:class" }, { - "parameterName": "m10", - "parameterTypeTokenRange": { - "startIndex": 7, - "endIndex": 8 - }, - "isOptional": false + "kind": "Content", + "text": ") => void" }, { - "parameterName": "m11", - "parameterTypeTokenRange": { - "startIndex": 9, - "endIndex": 10 - }, - "isOptional": false + "kind": "Content", + "text": ", thisArg?: " }, { - "parameterName": "m12", - "parameterTypeTokenRange": { - "startIndex": 11, - "endIndex": 12 - }, - "isOptional": false + "kind": "Content", + "text": "any" }, { - "parameterName": "m20", - "parameterTypeTokenRange": { - "startIndex": 13, - "endIndex": 14 - }, - "isOptional": false + "kind": "Content", + "text": "): " }, { - "parameterName": "m21", + "kind": "Content", + "text": "void" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 7, + "endIndex": 8 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "callbackfn", "parameterTypeTokenRange": { - "startIndex": 15, - "endIndex": 16 + "startIndex": 1, + "endIndex": 4 }, "isOptional": false }, { - "parameterName": "m22", + "parameterName": "thisArg", "parameterTypeTokenRange": { - "startIndex": 17, - "endIndex": 18 + "startIndex": 5, + "endIndex": 6 }, - "isOptional": false + "isOptional": true } - ] + ], + "isOptional": false, + "isAbstract": false, + "name": "forEach" }, { "kind": "Method", - "canonicalReference": "server!Matrix3#add:member(1)", - "docComment": "/**\n * Adds a matrix to the current matrix.\n *\n * @param matrix3 - The matrix to add to the current matrix.\n *\n * @returns The current matrix.\n */\n", + "canonicalReference": "server!IterationMap#get:member(1)", + "docComment": "/**\n * Returns the value associated with the key, or undefined if the key doesn't exist.\n *\n * @param key - The key to look up.\n *\n * @returns The value associated with the key, or undefined.\n *\n * **Category:** Utilities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "add(matrix3: " + "text": "get(key: " }, { - "kind": "Reference", - "text": "Matrix3", - "canonicalReference": "server!Matrix3:class" + "kind": "Content", + "text": "K" }, { "kind": "Content", "text": "): " }, { - "kind": "Reference", - "text": "Matrix3", - "canonicalReference": "server!Matrix3:class" + "kind": "Content", + "text": "V | undefined" }, { "kind": "Content", @@ -28135,7 +28578,7 @@ "overloadIndex": 1, "parameters": [ { - "parameterName": "matrix3", + "parameterName": "key", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -28145,21 +28588,28 @@ ], "isOptional": false, "isAbstract": false, - "name": "add" + "name": "get" }, { "kind": "Method", - "canonicalReference": "server!Matrix3#adjoint:member(1)", - "docComment": "/**\n * Sets the adjugate of the current matrix.\n *\n * @returns The current matrix.\n */\n", + "canonicalReference": "server!IterationMap#has:member(1)", + "docComment": "/**\n * Returns true if the key exists in the IterationMap.\n *\n * @param key - The key to check.\n *\n * @returns True if the key exists, false otherwise.\n *\n * **Category:** Utilities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "adjoint(): " + "text": "has(key: " }, { - "kind": "Reference", - "text": "Matrix3", - "canonicalReference": "server!Matrix3:class" + "kind": "Content", + "text": "K" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Content", + "text": "boolean" }, { "kind": "Content", @@ -28168,30 +28618,43 @@ ], "isStatic": false, "returnTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 + "startIndex": 3, + "endIndex": 4 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, - "parameters": [], + "parameters": [ + { + "parameterName": "key", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], "isOptional": false, "isAbstract": false, - "name": "adjoint" + "name": "has" }, { "kind": "Method", - "canonicalReference": "server!Matrix3#clone:member(1)", - "docComment": "/**\n * Clones the current matrix.\n *\n * @returns A clone of the current matrix.\n */\n", + "canonicalReference": "server!IterationMap#keys:member(1)", + "docComment": "/**\n * Returns an iterator for the keys in the IterationMap.\n *\n * @returns An iterator for the keys.\n *\n * **Category:** Utilities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "clone(): " + "text": "keys(): " }, { "kind": "Reference", - "text": "Matrix3", - "canonicalReference": "server!Matrix3:class" + "text": "IterableIterator", + "canonicalReference": "!IterableIterator:interface" + }, + { + "kind": "Content", + "text": "" }, { "kind": "Content", @@ -28201,7 +28664,7 @@ "isStatic": false, "returnTypeTokenRange": { "startIndex": 1, - "endIndex": 2 + "endIndex": 3 }, "releaseTag": "Public", "isProtected": false, @@ -28209,30 +28672,36 @@ "parameters": [], "isOptional": false, "isAbstract": false, - "name": "clone" + "name": "keys" }, { "kind": "Method", - "canonicalReference": "server!Matrix3#copy:member(1)", - "docComment": "/**\n * Copies a matrix to the current matrix.\n *\n * @param matrix3 - The matrix to copy to the current matrix.\n *\n * @returns The current matrix.\n */\n", + "canonicalReference": "server!IterationMap#set:member(1)", + "docComment": "/**\n * Sets the value for the key in the IterationMap.\n *\n * @param key - The key to set.\n *\n * @param value - The value to set.\n *\n * @returns The IterationMap instance for chaining.\n *\n * **Side effects:** May mark the internal array as dirty.\n *\n * **Category:** Utilities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "copy(matrix3: " + "text": "set(key: " }, { - "kind": "Reference", - "text": "Matrix3", - "canonicalReference": "server!Matrix3:class" + "kind": "Content", + "text": "K" + }, + { + "kind": "Content", + "text": ", value: " + }, + { + "kind": "Content", + "text": "V" }, { "kind": "Content", "text": "): " }, { - "kind": "Reference", - "text": "Matrix3", - "canonicalReference": "server!Matrix3:class" + "kind": "Content", + "text": "this" }, { "kind": "Content", @@ -28241,66 +28710,42 @@ ], "isStatic": false, "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 + "startIndex": 5, + "endIndex": 6 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, "parameters": [ { - "parameterName": "matrix3", + "parameterName": "key", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "copy" - }, - { - "kind": "Method", - "canonicalReference": "server!Matrix3.create:member(1)", - "docComment": "/**\n * Creates a new `Matrix3` instance.\n *\n * @returns A new `Matrix3` instance.\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "static create(): " - }, - { - "kind": "Reference", - "text": "Matrix3", - "canonicalReference": "server!Matrix3:class" }, { - "kind": "Content", - "text": ";" + "parameterName": "value", + "parameterTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "isOptional": false } ], - "isStatic": true, - "returnTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [], "isOptional": false, "isAbstract": false, - "name": "create" + "name": "set" }, { "kind": "Property", - "canonicalReference": "server!Matrix3#determinant:member", - "docComment": "/**\n * The determinant of the matrix.\n */\n", + "canonicalReference": "server!IterationMap#size:member", + "docComment": "/**\n * Returns the number of key-value pairs in the IterationMap.\n *\n * **Category:** Utilities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get determinant(): " + "text": "get size(): " }, { "kind": "Content", @@ -28314,7 +28759,7 @@ "isReadonly": true, "isOptional": false, "releaseTag": "Public", - "name": "determinant", + "name": "size", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -28325,25 +28770,21 @@ }, { "kind": "Method", - "canonicalReference": "server!Matrix3#equals:member(1)", - "docComment": "/**\n * Checks if the current matrix is approximately equal to another matrix.\n *\n * @param matrix3 - The matrix to compare to the current matrix.\n *\n * @returns `true` if the current matrix is equal to the provided matrix, `false` otherwise.\n */\n", + "canonicalReference": "server!IterationMap#values:member(1)", + "docComment": "/**\n * Returns an iterator for the values in the IterationMap. Note: For performance-critical iteration, use .valuesArray instead.\n *\n * @returns An iterator for the values.\n *\n * **Category:** Utilities\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "equals(matrix3: " + "text": "values(): " }, { "kind": "Reference", - "text": "Matrix3", - "canonicalReference": "server!Matrix3:class" - }, - { - "kind": "Content", - "text": "): " + "text": "IterableIterator", + "canonicalReference": "!IterableIterator:interface" }, { "kind": "Content", - "text": "boolean" + "text": "" }, { "kind": "Content", @@ -28352,168 +28793,344 @@ ], "isStatic": false, "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 + "startIndex": 1, + "endIndex": 3 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, - "parameters": [ + "parameters": [], + "isOptional": false, + "isAbstract": false, + "name": "values" + }, + { + "kind": "Property", + "canonicalReference": "server!IterationMap#valuesArray:member", + "docComment": "/**\n * Returns a readonly array of all values for fast iteration. This is the key performance feature - use this instead of .values() for iteration.\n *\n * **Side effects:** Rebuilds the backing array when the map has changed.\n *\n * **Category:** Utilities\n */\n", + "excerptTokens": [ { - "parameterName": "matrix3", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false + "kind": "Content", + "text": "get valuesArray(): " + }, + { + "kind": "Content", + "text": "readonly V[]" + }, + { + "kind": "Content", + "text": ";" } ], + "isReadonly": true, "isOptional": false, - "isAbstract": false, - "name": "equals" + "releaseTag": "Public", + "name": "valuesArray", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false + } + ], + "implementsTokenRanges": [] + }, + { + "kind": "Interface", + "canonicalReference": "server!KinematicPositionRigidBodyOptions:interface", + "docComment": "/**\n * The options for a kinematic position rigid body.\n *\n * Use for: moving bodies by setting target positions each tick. Do NOT use for: physics-driven motion; use dynamic bodies instead.\n *\n * **Category:** Physics\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export interface KinematicPositionRigidBodyOptions extends " }, { - "kind": "Method", - "canonicalReference": "server!Matrix3#exactEquals:member(1)", - "docComment": "/**\n * Checks if the current matrix is exactly equal to another matrix.\n *\n * @param matrix3 - The matrix to compare to the current matrix.\n *\n * @returns `true` if the current matrix is equal to the provided matrix, `false` otherwise.\n */\n", + "kind": "Reference", + "text": "BaseRigidBodyOptions", + "canonicalReference": "server!BaseRigidBodyOptions:interface" + }, + { + "kind": "Content", + "text": " " + } + ], + "fileUrlPath": "src/worlds/physics/RigidBody.ts", + "releaseTag": "Public", + "name": "KinematicPositionRigidBodyOptions", + "preserveMemberOrder": false, + "members": [ + { + "kind": "PropertySignature", + "canonicalReference": "server!KinematicPositionRigidBodyOptions#type:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "exactEquals(matrix3: " + "text": "type: " }, { "kind": "Reference", - "text": "Matrix3", - "canonicalReference": "server!Matrix3:class" + "text": "RigidBodyType.KINEMATIC_POSITION", + "canonicalReference": "server!RigidBodyType.KINEMATIC_POSITION:member" }, { "kind": "Content", - "text": "): " - }, + "text": ";" + } + ], + "isReadonly": false, + "isOptional": false, + "releaseTag": "Public", + "name": "type", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + } + ], + "extendsTokenRanges": [ + { + "startIndex": 1, + "endIndex": 2 + } + ] + }, + { + "kind": "Interface", + "canonicalReference": "server!KinematicVelocityRigidBodyOptions:interface", + "docComment": "/**\n * The options for a kinematic velocity rigid body.\n *\n * Use for: moving bodies by setting velocities each tick. Do NOT use for: physics-driven motion; use dynamic bodies instead.\n *\n * **Category:** Physics\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export interface KinematicVelocityRigidBodyOptions extends " + }, + { + "kind": "Reference", + "text": "BaseRigidBodyOptions", + "canonicalReference": "server!BaseRigidBodyOptions:interface" + }, + { + "kind": "Content", + "text": " " + } + ], + "fileUrlPath": "src/worlds/physics/RigidBody.ts", + "releaseTag": "Public", + "name": "KinematicVelocityRigidBodyOptions", + "preserveMemberOrder": false, + "members": [ + { + "kind": "PropertySignature", + "canonicalReference": "server!KinematicVelocityRigidBodyOptions#angularVelocity:member", + "docComment": "/**\n * The angular velocity of the rigid body.\n *\n * **Category:** Physics\n */\n", + "excerptTokens": [ { "kind": "Content", - "text": "boolean" + "text": "angularVelocity?: " + }, + { + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ + "name": "angularVelocity", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!KinematicVelocityRigidBodyOptions#linearVelocity:member", + "docComment": "/**\n * The linear velocity of the rigid body.\n *\n * **Category:** Physics\n */\n", + "excerptTokens": [ { - "parameterName": "matrix3", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false + "kind": "Content", + "text": "linearVelocity?: " + }, + { + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" + }, + { + "kind": "Content", + "text": ";" } ], - "isOptional": false, - "isAbstract": false, - "name": "exactEquals" + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "linearVelocity", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } }, { - "kind": "Property", - "canonicalReference": "server!Matrix3#frobeniusNorm:member", - "docComment": "/**\n * The frobenius norm of the matrix.\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!KinematicVelocityRigidBodyOptions#type:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "get frobeniusNorm(): " + "text": "type: " }, { - "kind": "Content", - "text": "number" + "kind": "Reference", + "text": "RigidBodyType.KINEMATIC_VELOCITY", + "canonicalReference": "server!RigidBodyType.KINEMATIC_VELOCITY:member" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, + "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "frobeniusNorm", + "name": "type", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + } + } + ], + "extendsTokenRanges": [ + { + "startIndex": 1, + "endIndex": 2 + } + ] + }, + { + "kind": "Class", + "canonicalReference": "server!Matrix2:class", + "docComment": "/**\n * Represents a 2x2 matrix.\n *\n * When to use: 2D transforms or linear algebra utilities. Do NOT use for: immutable math; most methods mutate the instance.\n *\n * @remarks\n *\n * All matrix methods result in mutation of the matrix instance. This class extends `Float32Array` to provide an efficient way to create and manipulate a 2x2 matrix.\n *\n * Pattern: reuse instances to reduce allocations. Anti-pattern: treating matrices as immutable values.\n *\n * **Category:** Math\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export default class Matrix2 extends " }, { - "kind": "Method", - "canonicalReference": "server!Matrix3.fromMatrix4:member(1)", - "docComment": "/**\n * Creates a new `Matrix3` instance from a `Matrix4` instance.\n *\n * @param matrix4 - The `Matrix4` instance to create the `Matrix3` instance from.\n *\n * @returns A new `Matrix3` instance.\n */\n", + "kind": "Reference", + "text": "Float32Array", + "canonicalReference": "!Float32Array:interface" + }, + { + "kind": "Content", + "text": " " + } + ], + "fileUrlPath": "src/shared/classes/Matrix2.ts", + "releaseTag": "Public", + "isAbstract": false, + "name": "Matrix2", + "preserveMemberOrder": false, + "members": [ + { + "kind": "Constructor", + "canonicalReference": "server!Matrix2:constructor(1)", + "docComment": "/**\n * Constructs a new instance of the `Matrix2` class\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "static fromMatrix4(matrix4: " + "text": "constructor(m00: " }, { - "kind": "Reference", - "text": "Matrix4", - "canonicalReference": "server!Matrix4:class" + "kind": "Content", + "text": "number" }, { "kind": "Content", - "text": "): " + "text": ", m01: " }, { - "kind": "Reference", - "text": "Matrix3", - "canonicalReference": "server!Matrix3:class" + "kind": "Content", + "text": "number" }, { "kind": "Content", - "text": ";" + "text": ", m10: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ", m11: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ");" } ], - "isStatic": true, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, "parameters": [ { - "parameterName": "matrix4", + "parameterName": "m00", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, "isOptional": false + }, + { + "parameterName": "m01", + "parameterTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "isOptional": false + }, + { + "parameterName": "m10", + "parameterTypeTokenRange": { + "startIndex": 5, + "endIndex": 6 + }, + "isOptional": false + }, + { + "parameterName": "m11", + "parameterTypeTokenRange": { + "startIndex": 7, + "endIndex": 8 + }, + "isOptional": false } - ], - "isOptional": false, - "isAbstract": false, - "name": "fromMatrix4" + ] }, { "kind": "Method", - "canonicalReference": "server!Matrix3.fromQuaternion:member(1)", - "docComment": "/**\n * Creates a new `Matrix3` instance from a `Quaternion` instance.\n *\n * @param quaternion - The `Quaternion` instance to create the `Matrix3` instance from.\n *\n * @returns A new `Matrix3` instance.\n */\n", + "canonicalReference": "server!Matrix2#add:member(1)", + "docComment": "/**\n * Adds a matrix to the current matrix.\n *\n * @param matrix2 - The matrix to add to the current matrix.\n *\n * @returns The current matrix.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "static fromQuaternion(quaternion: " + "text": "add(matrix2: " }, { "kind": "Reference", - "text": "Quaternion", - "canonicalReference": "server!Quaternion:class" + "text": "Matrix2", + "canonicalReference": "server!Matrix2:class" }, { "kind": "Content", @@ -28521,15 +29138,15 @@ }, { "kind": "Reference", - "text": "Matrix3", - "canonicalReference": "server!Matrix3:class" + "text": "Matrix2", + "canonicalReference": "server!Matrix2:class" }, { "kind": "Content", "text": ";" } ], - "isStatic": true, + "isStatic": false, "returnTypeTokenRange": { "startIndex": 3, "endIndex": 4 @@ -28539,7 +29156,7 @@ "overloadIndex": 1, "parameters": [ { - "parameterName": "quaternion", + "parameterName": "matrix2", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -28549,120 +29166,85 @@ ], "isOptional": false, "isAbstract": false, - "name": "fromQuaternion" + "name": "add" }, { "kind": "Method", - "canonicalReference": "server!Matrix3.fromRotation:member(1)", - "docComment": "/**\n * Creates a new `Matrix3` instance from a rotation of identity matrix.\n *\n * @param angle - The angle in radians to rotate the matrix by.\n *\n * @returns A new `Matrix3` instance.\n */\n", + "canonicalReference": "server!Matrix2#adjoint:member(1)", + "docComment": "/**\n * Sets the adjugate of the current matrix.\n *\n * @returns The current matrix.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "static fromRotation(angle: " - }, - { - "kind": "Content", - "text": "number" - }, - { - "kind": "Content", - "text": "): " + "text": "adjoint(): " }, { "kind": "Reference", - "text": "Matrix3", - "canonicalReference": "server!Matrix3:class" + "text": "Matrix2", + "canonicalReference": "server!Matrix2:class" }, { "kind": "Content", "text": ";" } ], - "isStatic": true, + "isStatic": false, "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 + "startIndex": 1, + "endIndex": 2 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, - "parameters": [ - { - "parameterName": "angle", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], + "parameters": [], "isOptional": false, "isAbstract": false, - "name": "fromRotation" + "name": "adjoint" }, { "kind": "Method", - "canonicalReference": "server!Matrix3.fromScaling:member(1)", - "docComment": "/**\n * Creates a new `Matrix3` instance from a scale of identity matrix.\n *\n * @param scale - The scale of the matrix.\n *\n * @returns A new `Matrix3` instance.\n */\n", + "canonicalReference": "server!Matrix2#clone:member(1)", + "docComment": "/**\n * Clones the current matrix.\n *\n * @returns A clone of the current matrix.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "static fromScaling(scale: " - }, - { - "kind": "Reference", - "text": "Vector3", - "canonicalReference": "server!Vector3:class" - }, - { - "kind": "Content", - "text": "): " + "text": "clone(): " }, { "kind": "Reference", - "text": "Matrix3", - "canonicalReference": "server!Matrix3:class" + "text": "Matrix2", + "canonicalReference": "server!Matrix2:class" }, { "kind": "Content", "text": ";" } ], - "isStatic": true, + "isStatic": false, "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 + "startIndex": 1, + "endIndex": 2 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, - "parameters": [ - { - "parameterName": "scale", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], + "parameters": [], "isOptional": false, "isAbstract": false, - "name": "fromScaling" + "name": "clone" }, { "kind": "Method", - "canonicalReference": "server!Matrix3.fromTranslation:member(1)", - "docComment": "/**\n * Creates a new `Matrix3` instance from a translation of identity matrix. This is used only when working with two-dimensional homogeneous coordinates, which is why the `translation` parameter is a `Vector2`.\n *\n * @param translation - The translation of the matrix.\n *\n * @returns A new `Matrix3` instance.\n */\n", + "canonicalReference": "server!Matrix2#copy:member(1)", + "docComment": "/**\n * Copies a matrix to the current matrix.\n *\n * @param matrix2 - The matrix2 to copy to the current matrix.\n *\n * @returns The current matrix.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "static fromTranslation(translation: " + "text": "copy(matrix2: " }, { "kind": "Reference", - "text": "Vector2", - "canonicalReference": "server!Vector2:class" + "text": "Matrix2", + "canonicalReference": "server!Matrix2:class" }, { "kind": "Content", @@ -28670,15 +29252,15 @@ }, { "kind": "Reference", - "text": "Matrix3", - "canonicalReference": "server!Matrix3:class" + "text": "Matrix2", + "canonicalReference": "server!Matrix2:class" }, { "kind": "Content", "text": ";" } ], - "isStatic": true, + "isStatic": false, "returnTypeTokenRange": { "startIndex": 3, "endIndex": 4 @@ -28688,7 +29270,7 @@ "overloadIndex": 1, "parameters": [ { - "parameterName": "translation", + "parameterName": "matrix2", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -28698,28 +29280,28 @@ ], "isOptional": false, "isAbstract": false, - "name": "fromTranslation" + "name": "copy" }, { "kind": "Method", - "canonicalReference": "server!Matrix3#identity:member(1)", - "docComment": "/**\n * Sets the current matrix to the identity matrix.\n *\n * @returns The current matrix.\n */\n", + "canonicalReference": "server!Matrix2.create:member(1)", + "docComment": "/**\n * Creates a new `Matrix2` instance.\n *\n * @returns A new `Matrix2` instance.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "identity(): " + "text": "static create(): " }, { "kind": "Reference", - "text": "Matrix3", - "canonicalReference": "server!Matrix3:class" + "text": "Matrix2", + "canonicalReference": "server!Matrix2:class" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, + "isStatic": true, "returnTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -28730,62 +29312,59 @@ "parameters": [], "isOptional": false, "isAbstract": false, - "name": "identity" + "name": "create" }, { - "kind": "Method", - "canonicalReference": "server!Matrix3#invert:member(1)", - "docComment": "/**\n * Inverts the current matrix.\n *\n * @returns The current matrix.\n */\n", + "kind": "Property", + "canonicalReference": "server!Matrix2#determinant:member", + "docComment": "/**\n * The determinant of the matrix.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "invert(): " + "text": "get determinant(): " }, { - "kind": "Reference", - "text": "Matrix3", - "canonicalReference": "server!Matrix3:class" + "kind": "Content", + "text": "number" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "determinant", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "releaseTag": "Public", + "isStatic": false, "isProtected": false, - "overloadIndex": 1, - "parameters": [], - "isOptional": false, - "isAbstract": false, - "name": "invert" + "isAbstract": false }, { "kind": "Method", - "canonicalReference": "server!Matrix3#multiply:member(1)", - "docComment": "/**\n * Multiplies the current matrix by another matrix.\n *\n * @param matrix3 - The matrix to multiply the current matrix by.\n *\n * @returns The current matrix.\n */\n", + "canonicalReference": "server!Matrix2#equals:member(1)", + "docComment": "/**\n * Checks if the current matrix is approximately equal to another matrix.\n *\n * @param matrix2 - The matrix to compare to the current matrix.\n *\n * @returns `true` if the current matrix is equal to the provided matrix, `false` otherwise.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "multiply(matrix3: " + "text": "equals(matrix2: " }, { "kind": "Reference", - "text": "Matrix3", - "canonicalReference": "server!Matrix3:class" + "text": "Matrix2", + "canonicalReference": "server!Matrix2:class" }, { "kind": "Content", "text": "): " }, { - "kind": "Reference", - "text": "Matrix3", - "canonicalReference": "server!Matrix3:class" + "kind": "Content", + "text": "boolean" }, { "kind": "Content", @@ -28802,7 +29381,7 @@ "overloadIndex": 1, "parameters": [ { - "parameterName": "matrix3", + "parameterName": "matrix2", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -28812,29 +29391,29 @@ ], "isOptional": false, "isAbstract": false, - "name": "multiply" + "name": "equals" }, { "kind": "Method", - "canonicalReference": "server!Matrix3#multiplyScalar:member(1)", - "docComment": "/**\n * Multiplies each element of the current matrix by a scalar value.\n *\n * @param scalar - The scalar value to multiply the current matrix elements by.\n *\n * @returns The current matrix.\n */\n", + "canonicalReference": "server!Matrix2#exactEquals:member(1)", + "docComment": "/**\n * Checks if the current matrix is exactly equal to another matrix.\n *\n * @param matrix2 - The matrix to compare to the current matrix.\n *\n * @returns `true` if the current matrix is equal to the provided matrix, `false` otherwise.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "multiplyScalar(scalar: " + "text": "exactEquals(matrix2: " }, { - "kind": "Content", - "text": "number" + "kind": "Reference", + "text": "Matrix2", + "canonicalReference": "server!Matrix2:class" }, { "kind": "Content", "text": "): " }, { - "kind": "Reference", - "text": "Matrix3", - "canonicalReference": "server!Matrix3:class" + "kind": "Content", + "text": "boolean" }, { "kind": "Content", @@ -28851,7 +29430,7 @@ "overloadIndex": 1, "parameters": [ { - "parameterName": "scalar", + "parameterName": "matrix2", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -28861,16 +29440,16 @@ ], "isOptional": false, "isAbstract": false, - "name": "multiplyScalar" + "name": "exactEquals" }, { - "kind": "Method", - "canonicalReference": "server!Matrix3#projection:member(1)", - "docComment": "/**\n * Sets the current matrix to a orthographic projection matrix with the given bounds.\n *\n * @param width - The width of the projection.\n *\n * @param height - The height of the projection.\n *\n * @returns The current matrix.\n */\n", + "kind": "Property", + "canonicalReference": "server!Matrix2#frobeniusNorm:member", + "docComment": "/**\n * The frobenius normal of the matrix.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "projection(width: " + "text": "get frobeniusNorm(): " }, { "kind": "Content", @@ -28878,7 +29457,29 @@ }, { "kind": "Content", - "text": ", height: " + "text": ";" + } + ], + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "frobeniusNorm", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix2.fromRotation:member(1)", + "docComment": "/**\n * Creates a new `Matrix2` instance from a rotation of identity matrix.\n *\n * @param angle - The angle in radians to rotate the matrix by.\n *\n * @returns A new `Matrix2` instance.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "static fromRotation(angle: " }, { "kind": "Content", @@ -28890,56 +29491,163 @@ }, { "kind": "Reference", - "text": "Matrix3", - "canonicalReference": "server!Matrix3:class" + "text": "Matrix2", + "canonicalReference": "server!Matrix2:class" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, + "isStatic": true, "returnTypeTokenRange": { - "startIndex": 5, - "endIndex": 6 + "startIndex": 3, + "endIndex": 4 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, "parameters": [ { - "parameterName": "width", + "parameterName": "angle", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "fromRotation" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix2.fromScaling:member(1)", + "docComment": "/**\n * Creates a new `Matrix2` instance from a scale of identity matrix.\n *\n * @param scale - The scale of the matrix.\n *\n * @returns A new `Matrix2` instance.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "static fromScaling(scale: " }, { - "parameterName": "height", + "kind": "Reference", + "text": "Vector2", + "canonicalReference": "server!Vector2:class" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "Matrix2", + "canonicalReference": "server!Matrix2:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": true, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "scale", "parameterTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 + "startIndex": 1, + "endIndex": 2 }, "isOptional": false } ], "isOptional": false, "isAbstract": false, - "name": "projection" + "name": "fromScaling" }, { "kind": "Method", - "canonicalReference": "server!Matrix3#rotate:member(1)", - "docComment": "/**\n * Rotates the current matrix by an angle in radians.\n *\n * @param angle - The angle in radians to rotate the current matrix by.\n *\n * @returns The current matrix.\n */\n", + "canonicalReference": "server!Matrix2#identity:member(1)", + "docComment": "/**\n * Sets the current matrix to the identity matrix.\n *\n * @returns The current matrix.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "rotate(angle: " + "text": "identity(): " + }, + { + "kind": "Reference", + "text": "Matrix2", + "canonicalReference": "server!Matrix2:class" }, { "kind": "Content", - "text": "number" + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [], + "isOptional": false, + "isAbstract": false, + "name": "identity" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix2#invert:member(1)", + "docComment": "/**\n * Inverts the current matrix.\n *\n * @returns The current matrix.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "invert(): " + }, + { + "kind": "Reference", + "text": "Matrix2", + "canonicalReference": "server!Matrix2:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [], + "isOptional": false, + "isAbstract": false, + "name": "invert" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix2#multiply:member(1)", + "docComment": "/**\n * Multiplies the current matrix by another matrix.\n *\n * @param matrix2 - The matrix to multiply the current matrix by.\n *\n * @returns The current matrix.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "multiply(matrix2: " + }, + { + "kind": "Reference", + "text": "Matrix2", + "canonicalReference": "server!Matrix2:class" }, { "kind": "Content", @@ -28947,8 +29655,8 @@ }, { "kind": "Reference", - "text": "Matrix3", - "canonicalReference": "server!Matrix3:class" + "text": "Matrix2", + "canonicalReference": "server!Matrix2:class" }, { "kind": "Content", @@ -28965,7 +29673,7 @@ "overloadIndex": 1, "parameters": [ { - "parameterName": "angle", + "parameterName": "matrix2", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -28975,21 +29683,20 @@ ], "isOptional": false, "isAbstract": false, - "name": "rotate" + "name": "multiply" }, { "kind": "Method", - "canonicalReference": "server!Matrix3#subtract:member(1)", - "docComment": "/**\n * Subtracts a matrix from the current matrix.\n *\n * @param matrix3 - The matrix to subtract from the current matrix.\n *\n * @returns The current matrix.\n */\n", + "canonicalReference": "server!Matrix2#multiplyScalar:member(1)", + "docComment": "/**\n * Multiplies each element of the current matrix by a scalar value.\n *\n * @param scalar - The scalar value to multiply the current matrix elements by.\n *\n * @returns The current matrix.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "subtract(matrix3: " + "text": "multiplyScalar(scalar: " }, { - "kind": "Reference", - "text": "Matrix3", - "canonicalReference": "server!Matrix3:class" + "kind": "Content", + "text": "number" }, { "kind": "Content", @@ -28997,8 +29704,8 @@ }, { "kind": "Reference", - "text": "Matrix3", - "canonicalReference": "server!Matrix3:class" + "text": "Matrix2", + "canonicalReference": "server!Matrix2:class" }, { "kind": "Content", @@ -29015,7 +29722,7 @@ "overloadIndex": 1, "parameters": [ { - "parameterName": "matrix3", + "parameterName": "scalar", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -29025,20 +29732,29 @@ ], "isOptional": false, "isAbstract": false, - "name": "subtract" + "name": "multiplyScalar" }, { "kind": "Method", - "canonicalReference": "server!Matrix3#toString:member(1)", - "docComment": "/**\n * Returns a string representation of the current matrix.\n *\n * @returns A string representation of the current matrix.\n */\n", + "canonicalReference": "server!Matrix2#rotate:member(1)", + "docComment": "/**\n * Rotates the current matrix by an angle in radians.\n *\n * @param angle - The angle in radians to rotate the current matrix by.\n *\n * @returns The current matrix.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "toString(): " + "text": "rotate(angle: " }, { "kind": "Content", - "text": "string" + "text": "number" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "Matrix2", + "canonicalReference": "server!Matrix2:class" }, { "kind": "Content", @@ -29047,30 +29763,39 @@ ], "isStatic": false, "returnTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 + "startIndex": 3, + "endIndex": 4 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, - "parameters": [], + "parameters": [ + { + "parameterName": "angle", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], "isOptional": false, "isAbstract": false, - "name": "toString" + "name": "rotate" }, { "kind": "Method", - "canonicalReference": "server!Matrix3#transformVector:member(1)", - "docComment": "/**\n * Multiplies the provided vector3 by this matrix. This modifies the vector in-place, but also returns the transformed vector.\n *\n * @param vector - The vector to multiply by this.\n *\n * @returns The transformed vector.\n */\n", + "canonicalReference": "server!Matrix2#subtract:member(1)", + "docComment": "/**\n * Subtracts a matrix from the current matrix.\n *\n * @param matrix2 - The matrix to subtract from the current matrix.\n *\n * @returns The current matrix.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "transformVector(vector: " + "text": "subtract(matrix2: " }, { "kind": "Reference", - "text": "Vector3", - "canonicalReference": "server!Vector3:class" + "text": "Matrix2", + "canonicalReference": "server!Matrix2:class" }, { "kind": "Content", @@ -29078,8 +29803,8 @@ }, { "kind": "Reference", - "text": "Vector3", - "canonicalReference": "server!Vector3:class" + "text": "Matrix2", + "canonicalReference": "server!Matrix2:class" }, { "kind": "Content", @@ -29096,7 +29821,7 @@ "overloadIndex": 1, "parameters": [ { - "parameterName": "vector", + "parameterName": "matrix2", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -29106,11 +29831,42 @@ ], "isOptional": false, "isAbstract": false, - "name": "transformVector" + "name": "subtract" }, { "kind": "Method", - "canonicalReference": "server!Matrix3#transpose:member(1)", + "canonicalReference": "server!Matrix2#toString:member(1)", + "docComment": "/**\n * Returns a string representation of the current matrix.\n *\n * @returns A string representation of the current matrix.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "toString(): " + }, + { + "kind": "Content", + "text": "string" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [], + "isOptional": false, + "isAbstract": false, + "name": "toString" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix2#transpose:member(1)", "docComment": "/**\n * Transposes the current matrix.\n *\n * @returns The current matrix.\n */\n", "excerptTokens": [ { @@ -29119,8 +29875,8 @@ }, { "kind": "Reference", - "text": "Matrix3", - "canonicalReference": "server!Matrix3:class" + "text": "Matrix2", + "canonicalReference": "server!Matrix2:class" }, { "kind": "Content", @@ -29149,12 +29905,12 @@ }, { "kind": "Class", - "canonicalReference": "server!Matrix4:class", - "docComment": "/**\n * Represents a 4x4 matrix.\n *\n * When to use: 3D transforms (translation, rotation, scale) and camera math. Do NOT use for: immutable math; most methods mutate the instance.\n *\n * @remarks\n *\n * All matrix methods result in mutation of the matrix instance. This class extends `Float32Array` to provide an efficient way to create and manipulate a 4x4 matrix.\n *\n * Pattern: reuse instances to reduce allocations. Anti-pattern: treating matrices as immutable values.\n *\n * **Category:** Math\n *\n * @public\n */\n", + "canonicalReference": "server!Matrix3:class", + "docComment": "/**\n * Represents a 3x3 matrix.\n *\n * When to use: 2D homogeneous transforms or normal matrix math. Do NOT use for: immutable math; most methods mutate the instance.\n *\n * @remarks\n *\n * All matrix methods result in mutation of the matrix instance. This class extends `Float32Array` to provide an efficient way to create and manipulate a 3x3 matrix.\n *\n * Pattern: reuse instances to reduce allocations. Anti-pattern: treating matrices as immutable values.\n *\n * **Category:** Math\n *\n * @public\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "export default class Matrix4 extends " + "text": "export default class Matrix3 extends " }, { "kind": "Reference", @@ -29166,16 +29922,16 @@ "text": " " } ], - "fileUrlPath": "src/shared/classes/Matrix4.ts", + "fileUrlPath": "src/shared/classes/Matrix3.ts", "releaseTag": "Public", "isAbstract": false, - "name": "Matrix4", + "name": "Matrix3", "preserveMemberOrder": false, "members": [ { "kind": "Constructor", - "canonicalReference": "server!Matrix4:constructor(1)", - "docComment": "/**\n * Constructs a new instance of the `Matrix4` class\n */\n", + "canonicalReference": "server!Matrix3:constructor(1)", + "docComment": "/**\n * Constructs a new instance of the `Matrix3` class\n */\n", "excerptTokens": [ { "kind": "Content", @@ -29201,14 +29957,6 @@ "kind": "Content", "text": "number" }, - { - "kind": "Content", - "text": ", m03: " - }, - { - "kind": "Content", - "text": "number" - }, { "kind": "Content", "text": ", m10: " @@ -29233,14 +29981,6 @@ "kind": "Content", "text": "number" }, - { - "kind": "Content", - "text": ", m13: " - }, - { - "kind": "Content", - "text": "number" - }, { "kind": "Content", "text": ", m20: " @@ -29265,46 +30005,6 @@ "kind": "Content", "text": "number" }, - { - "kind": "Content", - "text": ", m23: " - }, - { - "kind": "Content", - "text": "number" - }, - { - "kind": "Content", - "text": ", m30: " - }, - { - "kind": "Content", - "text": "number" - }, - { - "kind": "Content", - "text": ", m31: " - }, - { - "kind": "Content", - "text": "number" - }, - { - "kind": "Content", - "text": ", m32: " - }, - { - "kind": "Content", - "text": "number" - }, - { - "kind": "Content", - "text": ", m33: " - }, - { - "kind": "Content", - "text": "number" - }, { "kind": "Content", "text": ");" @@ -29339,7 +30039,7 @@ "isOptional": false }, { - "parameterName": "m03", + "parameterName": "m10", "parameterTypeTokenRange": { "startIndex": 7, "endIndex": 8 @@ -29347,7 +30047,7 @@ "isOptional": false }, { - "parameterName": "m10", + "parameterName": "m11", "parameterTypeTokenRange": { "startIndex": 9, "endIndex": 10 @@ -29355,7 +30055,7 @@ "isOptional": false }, { - "parameterName": "m11", + "parameterName": "m12", "parameterTypeTokenRange": { "startIndex": 11, "endIndex": 12 @@ -29363,7 +30063,7 @@ "isOptional": false }, { - "parameterName": "m12", + "parameterName": "m20", "parameterTypeTokenRange": { "startIndex": 13, "endIndex": 14 @@ -29371,7 +30071,7 @@ "isOptional": false }, { - "parameterName": "m13", + "parameterName": "m21", "parameterTypeTokenRange": { "startIndex": 15, "endIndex": 16 @@ -29379,84 +30079,28 @@ "isOptional": false }, { - "parameterName": "m20", + "parameterName": "m22", "parameterTypeTokenRange": { "startIndex": 17, "endIndex": 18 }, "isOptional": false - }, - { - "parameterName": "m21", - "parameterTypeTokenRange": { - "startIndex": 19, - "endIndex": 20 - }, - "isOptional": false - }, - { - "parameterName": "m22", - "parameterTypeTokenRange": { - "startIndex": 21, - "endIndex": 22 - }, - "isOptional": false - }, - { - "parameterName": "m23", - "parameterTypeTokenRange": { - "startIndex": 23, - "endIndex": 24 - }, - "isOptional": false - }, - { - "parameterName": "m30", - "parameterTypeTokenRange": { - "startIndex": 25, - "endIndex": 26 - }, - "isOptional": false - }, - { - "parameterName": "m31", - "parameterTypeTokenRange": { - "startIndex": 27, - "endIndex": 28 - }, - "isOptional": false - }, - { - "parameterName": "m32", - "parameterTypeTokenRange": { - "startIndex": 29, - "endIndex": 30 - }, - "isOptional": false - }, - { - "parameterName": "m33", - "parameterTypeTokenRange": { - "startIndex": 31, - "endIndex": 32 - }, - "isOptional": false } ] }, { "kind": "Method", - "canonicalReference": "server!Matrix4#add:member(1)", - "docComment": "/**\n * Adds a matrix to the current matrix.\n *\n * @param matrix4 - The matrix to add to the current matrix.\n *\n * @returns The current matrix.\n */\n", + "canonicalReference": "server!Matrix3#add:member(1)", + "docComment": "/**\n * Adds a matrix to the current matrix.\n *\n * @param matrix3 - The matrix to add to the current matrix.\n *\n * @returns The current matrix.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "add(matrix4: " + "text": "add(matrix3: " }, { "kind": "Reference", - "text": "Matrix4", - "canonicalReference": "server!Matrix4:class" + "text": "Matrix3", + "canonicalReference": "server!Matrix3:class" }, { "kind": "Content", @@ -29464,8 +30108,8 @@ }, { "kind": "Reference", - "text": "Matrix4", - "canonicalReference": "server!Matrix4:class" + "text": "Matrix3", + "canonicalReference": "server!Matrix3:class" }, { "kind": "Content", @@ -29482,7 +30126,7 @@ "overloadIndex": 1, "parameters": [ { - "parameterName": "matrix4", + "parameterName": "matrix3", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -29496,17 +30140,4736 @@ }, { "kind": "Method", - "canonicalReference": "server!Matrix4#adjoint:member(1)", - "docComment": "/**\n * Sets the adjugate of the current matrix.\n *\n * @returns The current matrix.\n */\n", + "canonicalReference": "server!Matrix3#adjoint:member(1)", + "docComment": "/**\n * Sets the adjugate of the current matrix.\n *\n * @returns The current matrix.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "adjoint(): " + }, + { + "kind": "Reference", + "text": "Matrix3", + "canonicalReference": "server!Matrix3:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [], + "isOptional": false, + "isAbstract": false, + "name": "adjoint" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix3#clone:member(1)", + "docComment": "/**\n * Clones the current matrix.\n *\n * @returns A clone of the current matrix.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "clone(): " + }, + { + "kind": "Reference", + "text": "Matrix3", + "canonicalReference": "server!Matrix3:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [], + "isOptional": false, + "isAbstract": false, + "name": "clone" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix3#copy:member(1)", + "docComment": "/**\n * Copies a matrix to the current matrix.\n *\n * @param matrix3 - The matrix to copy to the current matrix.\n *\n * @returns The current matrix.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "copy(matrix3: " + }, + { + "kind": "Reference", + "text": "Matrix3", + "canonicalReference": "server!Matrix3:class" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "Matrix3", + "canonicalReference": "server!Matrix3:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "matrix3", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "copy" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix3.create:member(1)", + "docComment": "/**\n * Creates a new `Matrix3` instance.\n *\n * @returns A new `Matrix3` instance.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "static create(): " + }, + { + "kind": "Reference", + "text": "Matrix3", + "canonicalReference": "server!Matrix3:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": true, + "returnTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [], + "isOptional": false, + "isAbstract": false, + "name": "create" + }, + { + "kind": "Property", + "canonicalReference": "server!Matrix3#determinant:member", + "docComment": "/**\n * The determinant of the matrix.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "get determinant(): " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "determinant", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix3#equals:member(1)", + "docComment": "/**\n * Checks if the current matrix is approximately equal to another matrix.\n *\n * @param matrix3 - The matrix to compare to the current matrix.\n *\n * @returns `true` if the current matrix is equal to the provided matrix, `false` otherwise.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "equals(matrix3: " + }, + { + "kind": "Reference", + "text": "Matrix3", + "canonicalReference": "server!Matrix3:class" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Content", + "text": "boolean" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "matrix3", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "equals" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix3#exactEquals:member(1)", + "docComment": "/**\n * Checks if the current matrix is exactly equal to another matrix.\n *\n * @param matrix3 - The matrix to compare to the current matrix.\n *\n * @returns `true` if the current matrix is equal to the provided matrix, `false` otherwise.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "exactEquals(matrix3: " + }, + { + "kind": "Reference", + "text": "Matrix3", + "canonicalReference": "server!Matrix3:class" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Content", + "text": "boolean" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "matrix3", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "exactEquals" + }, + { + "kind": "Property", + "canonicalReference": "server!Matrix3#frobeniusNorm:member", + "docComment": "/**\n * The frobenius norm of the matrix.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "get frobeniusNorm(): " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "frobeniusNorm", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix3.fromMatrix4:member(1)", + "docComment": "/**\n * Creates a new `Matrix3` instance from a `Matrix4` instance.\n *\n * @param matrix4 - The `Matrix4` instance to create the `Matrix3` instance from.\n *\n * @returns A new `Matrix3` instance.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "static fromMatrix4(matrix4: " + }, + { + "kind": "Reference", + "text": "Matrix4", + "canonicalReference": "server!Matrix4:class" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "Matrix3", + "canonicalReference": "server!Matrix3:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": true, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "matrix4", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "fromMatrix4" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix3.fromQuaternion:member(1)", + "docComment": "/**\n * Creates a new `Matrix3` instance from a `Quaternion` instance.\n *\n * @param quaternion - The `Quaternion` instance to create the `Matrix3` instance from.\n *\n * @returns A new `Matrix3` instance.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "static fromQuaternion(quaternion: " + }, + { + "kind": "Reference", + "text": "Quaternion", + "canonicalReference": "server!Quaternion:class" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "Matrix3", + "canonicalReference": "server!Matrix3:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": true, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "quaternion", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "fromQuaternion" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix3.fromRotation:member(1)", + "docComment": "/**\n * Creates a new `Matrix3` instance from a rotation of identity matrix.\n *\n * @param angle - The angle in radians to rotate the matrix by.\n *\n * @returns A new `Matrix3` instance.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "static fromRotation(angle: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "Matrix3", + "canonicalReference": "server!Matrix3:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": true, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "angle", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "fromRotation" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix3.fromScaling:member(1)", + "docComment": "/**\n * Creates a new `Matrix3` instance from a scale of identity matrix.\n *\n * @param scale - The scale of the matrix.\n *\n * @returns A new `Matrix3` instance.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "static fromScaling(scale: " + }, + { + "kind": "Reference", + "text": "Vector3", + "canonicalReference": "server!Vector3:class" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "Matrix3", + "canonicalReference": "server!Matrix3:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": true, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "scale", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "fromScaling" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix3.fromTranslation:member(1)", + "docComment": "/**\n * Creates a new `Matrix3` instance from a translation of identity matrix. This is used only when working with two-dimensional homogeneous coordinates, which is why the `translation` parameter is a `Vector2`.\n *\n * @param translation - The translation of the matrix.\n *\n * @returns A new `Matrix3` instance.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "static fromTranslation(translation: " + }, + { + "kind": "Reference", + "text": "Vector2", + "canonicalReference": "server!Vector2:class" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "Matrix3", + "canonicalReference": "server!Matrix3:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": true, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "translation", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "fromTranslation" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix3#identity:member(1)", + "docComment": "/**\n * Sets the current matrix to the identity matrix.\n *\n * @returns The current matrix.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "identity(): " + }, + { + "kind": "Reference", + "text": "Matrix3", + "canonicalReference": "server!Matrix3:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [], + "isOptional": false, + "isAbstract": false, + "name": "identity" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix3#invert:member(1)", + "docComment": "/**\n * Inverts the current matrix.\n *\n * @returns The current matrix.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "invert(): " + }, + { + "kind": "Reference", + "text": "Matrix3", + "canonicalReference": "server!Matrix3:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [], + "isOptional": false, + "isAbstract": false, + "name": "invert" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix3#multiply:member(1)", + "docComment": "/**\n * Multiplies the current matrix by another matrix.\n *\n * @param matrix3 - The matrix to multiply the current matrix by.\n *\n * @returns The current matrix.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "multiply(matrix3: " + }, + { + "kind": "Reference", + "text": "Matrix3", + "canonicalReference": "server!Matrix3:class" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "Matrix3", + "canonicalReference": "server!Matrix3:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "matrix3", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "multiply" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix3#multiplyScalar:member(1)", + "docComment": "/**\n * Multiplies each element of the current matrix by a scalar value.\n *\n * @param scalar - The scalar value to multiply the current matrix elements by.\n *\n * @returns The current matrix.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "multiplyScalar(scalar: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "Matrix3", + "canonicalReference": "server!Matrix3:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "scalar", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "multiplyScalar" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix3#projection:member(1)", + "docComment": "/**\n * Sets the current matrix to a orthographic projection matrix with the given bounds.\n *\n * @param width - The width of the projection.\n *\n * @param height - The height of the projection.\n *\n * @returns The current matrix.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "projection(width: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ", height: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "Matrix3", + "canonicalReference": "server!Matrix3:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 5, + "endIndex": 6 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "width", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + }, + { + "parameterName": "height", + "parameterTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "projection" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix3#rotate:member(1)", + "docComment": "/**\n * Rotates the current matrix by an angle in radians.\n *\n * @param angle - The angle in radians to rotate the current matrix by.\n *\n * @returns The current matrix.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "rotate(angle: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "Matrix3", + "canonicalReference": "server!Matrix3:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "angle", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "rotate" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix3#subtract:member(1)", + "docComment": "/**\n * Subtracts a matrix from the current matrix.\n *\n * @param matrix3 - The matrix to subtract from the current matrix.\n *\n * @returns The current matrix.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "subtract(matrix3: " + }, + { + "kind": "Reference", + "text": "Matrix3", + "canonicalReference": "server!Matrix3:class" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "Matrix3", + "canonicalReference": "server!Matrix3:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "matrix3", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "subtract" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix3#toString:member(1)", + "docComment": "/**\n * Returns a string representation of the current matrix.\n *\n * @returns A string representation of the current matrix.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "toString(): " + }, + { + "kind": "Content", + "text": "string" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [], + "isOptional": false, + "isAbstract": false, + "name": "toString" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix3#transformVector:member(1)", + "docComment": "/**\n * Multiplies the provided vector3 by this matrix. This modifies the vector in-place, but also returns the transformed vector.\n *\n * @param vector - The vector to multiply by this.\n *\n * @returns The transformed vector.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "transformVector(vector: " + }, + { + "kind": "Reference", + "text": "Vector3", + "canonicalReference": "server!Vector3:class" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "Vector3", + "canonicalReference": "server!Vector3:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "vector", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "transformVector" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix3#transpose:member(1)", + "docComment": "/**\n * Transposes the current matrix.\n *\n * @returns The current matrix.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "transpose(): " + }, + { + "kind": "Reference", + "text": "Matrix3", + "canonicalReference": "server!Matrix3:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [], + "isOptional": false, + "isAbstract": false, + "name": "transpose" + } + ], + "extendsTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "implementsTokenRanges": [] + }, + { + "kind": "Class", + "canonicalReference": "server!Matrix4:class", + "docComment": "/**\n * Represents a 4x4 matrix.\n *\n * When to use: 3D transforms (translation, rotation, scale) and camera math. Do NOT use for: immutable math; most methods mutate the instance.\n *\n * @remarks\n *\n * All matrix methods result in mutation of the matrix instance. This class extends `Float32Array` to provide an efficient way to create and manipulate a 4x4 matrix.\n *\n * Pattern: reuse instances to reduce allocations. Anti-pattern: treating matrices as immutable values.\n *\n * **Category:** Math\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export default class Matrix4 extends " + }, + { + "kind": "Reference", + "text": "Float32Array", + "canonicalReference": "!Float32Array:interface" + }, + { + "kind": "Content", + "text": " " + } + ], + "fileUrlPath": "src/shared/classes/Matrix4.ts", + "releaseTag": "Public", + "isAbstract": false, + "name": "Matrix4", + "preserveMemberOrder": false, + "members": [ + { + "kind": "Constructor", + "canonicalReference": "server!Matrix4:constructor(1)", + "docComment": "/**\n * Constructs a new instance of the `Matrix4` class\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "constructor(m00: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ", m01: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ", m02: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ", m03: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ", m10: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ", m11: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ", m12: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ", m13: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ", m20: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ", m21: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ", m22: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ", m23: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ", m30: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ", m31: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ", m32: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ", m33: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ");" + } + ], + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "m00", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + }, + { + "parameterName": "m01", + "parameterTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "isOptional": false + }, + { + "parameterName": "m02", + "parameterTypeTokenRange": { + "startIndex": 5, + "endIndex": 6 + }, + "isOptional": false + }, + { + "parameterName": "m03", + "parameterTypeTokenRange": { + "startIndex": 7, + "endIndex": 8 + }, + "isOptional": false + }, + { + "parameterName": "m10", + "parameterTypeTokenRange": { + "startIndex": 9, + "endIndex": 10 + }, + "isOptional": false + }, + { + "parameterName": "m11", + "parameterTypeTokenRange": { + "startIndex": 11, + "endIndex": 12 + }, + "isOptional": false + }, + { + "parameterName": "m12", + "parameterTypeTokenRange": { + "startIndex": 13, + "endIndex": 14 + }, + "isOptional": false + }, + { + "parameterName": "m13", + "parameterTypeTokenRange": { + "startIndex": 15, + "endIndex": 16 + }, + "isOptional": false + }, + { + "parameterName": "m20", + "parameterTypeTokenRange": { + "startIndex": 17, + "endIndex": 18 + }, + "isOptional": false + }, + { + "parameterName": "m21", + "parameterTypeTokenRange": { + "startIndex": 19, + "endIndex": 20 + }, + "isOptional": false + }, + { + "parameterName": "m22", + "parameterTypeTokenRange": { + "startIndex": 21, + "endIndex": 22 + }, + "isOptional": false + }, + { + "parameterName": "m23", + "parameterTypeTokenRange": { + "startIndex": 23, + "endIndex": 24 + }, + "isOptional": false + }, + { + "parameterName": "m30", + "parameterTypeTokenRange": { + "startIndex": 25, + "endIndex": 26 + }, + "isOptional": false + }, + { + "parameterName": "m31", + "parameterTypeTokenRange": { + "startIndex": 27, + "endIndex": 28 + }, + "isOptional": false + }, + { + "parameterName": "m32", + "parameterTypeTokenRange": { + "startIndex": 29, + "endIndex": 30 + }, + "isOptional": false + }, + { + "parameterName": "m33", + "parameterTypeTokenRange": { + "startIndex": 31, + "endIndex": 32 + }, + "isOptional": false + } + ] + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix4#add:member(1)", + "docComment": "/**\n * Adds a matrix to the current matrix.\n *\n * @param matrix4 - The matrix to add to the current matrix.\n *\n * @returns The current matrix.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "add(matrix4: " + }, + { + "kind": "Reference", + "text": "Matrix4", + "canonicalReference": "server!Matrix4:class" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "Matrix4", + "canonicalReference": "server!Matrix4:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "matrix4", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "add" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix4#adjoint:member(1)", + "docComment": "/**\n * Sets the adjugate of the current matrix.\n *\n * @returns The current matrix.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "adjoint(): " + }, + { + "kind": "Reference", + "text": "Matrix4", + "canonicalReference": "server!Matrix4:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [], + "isOptional": false, + "isAbstract": false, + "name": "adjoint" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix4#clone:member(1)", + "docComment": "/**\n * Clones the current matrix.\n *\n * @returns A clone of the current matrix.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "clone(): " + }, + { + "kind": "Reference", + "text": "Matrix4", + "canonicalReference": "server!Matrix4:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [], + "isOptional": false, + "isAbstract": false, + "name": "clone" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix4#copy:member(1)", + "docComment": "/**\n * Copies a matrix to the current matrix.\n *\n * @param matrix4 - The matrix to copy to the current matrix.\n *\n * @returns The current matrix.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "copy(matrix4: " + }, + { + "kind": "Reference", + "text": "Matrix4", + "canonicalReference": "server!Matrix4:class" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "Matrix4", + "canonicalReference": "server!Matrix4:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "matrix4", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "copy" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix4.create:member(1)", + "docComment": "/**\n * Creates a new `Matrix4` instance.\n *\n * @returns A new `Matrix4` instance.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "static create(): " + }, + { + "kind": "Reference", + "text": "Matrix4", + "canonicalReference": "server!Matrix4:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": true, + "returnTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [], + "isOptional": false, + "isAbstract": false, + "name": "create" + }, + { + "kind": "Property", + "canonicalReference": "server!Matrix4#determinant:member", + "docComment": "/**\n * The determinant of the matrix.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "get determinant(): " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "determinant", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix4#equals:member(1)", + "docComment": "/**\n * Checks if the current matrix is approximately equal to another matrix.\n *\n * @param matrix4 - The matrix to compare to the current matrix.\n *\n * @returns `true` if the current matrix is equal to the provided matrix, `false` otherwise.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "equals(matrix4: " + }, + { + "kind": "Reference", + "text": "Matrix4", + "canonicalReference": "server!Matrix4:class" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Content", + "text": "boolean" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "matrix4", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "equals" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix4#exactEquals:member(1)", + "docComment": "/**\n * Checks if the current matrix is exactly equal to another matrix.\n *\n * @param matrix4 - The matrix to compare to the current matrix.\n *\n * @returns `true` if the current matrix is equal to the provided matrix, `false` otherwise.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "exactEquals(matrix4: " + }, + { + "kind": "Reference", + "text": "Matrix4", + "canonicalReference": "server!Matrix4:class" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Content", + "text": "boolean" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "matrix4", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "exactEquals" + }, + { + "kind": "Property", + "canonicalReference": "server!Matrix4#frobeniusNorm:member", + "docComment": "/**\n * The frobenius norm of the matrix.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "get frobeniusNorm(): " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "frobeniusNorm", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix4.fromQuaternion:member(1)", + "docComment": "/**\n * Creates a new `Matrix4` instance from a `Quaternion` object.\n *\n * @param quaternion - The `Quaternion` object to create the `Matrix4` instance from.\n *\n * @returns A new `Matrix4` instance.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "static fromQuaternion(quaternion: " + }, + { + "kind": "Reference", + "text": "Quaternion", + "canonicalReference": "server!Quaternion:class" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "Matrix4", + "canonicalReference": "server!Matrix4:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": true, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "quaternion", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "fromQuaternion" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix4.fromRotation:member(1)", + "docComment": "/**\n * Creates a new `Matrix4` instance from an angle and axis.\n *\n * @param angle - The angle in radians to rotate the matrix by.\n *\n * @param axis - The axis to rotate the matrix around.\n *\n * @returns A new `Matrix4` instance.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "static fromRotation(angle: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ", axis: " + }, + { + "kind": "Reference", + "text": "Vector3", + "canonicalReference": "server!Vector3:class" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "Matrix4", + "canonicalReference": "server!Matrix4:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": true, + "returnTypeTokenRange": { + "startIndex": 5, + "endIndex": 6 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "angle", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + }, + { + "parameterName": "axis", + "parameterTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "fromRotation" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix4.fromRotationTranslation:member(1)", + "docComment": "/**\n * Creates a new `Matrix4` instance from a rotation and translation.\n *\n * @param rotation - The rotation of the matrix.\n *\n * @param translation - The translation of the matrix.\n *\n * @returns A new `Matrix4` instance.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "static fromRotationTranslation(rotation: " + }, + { + "kind": "Reference", + "text": "Quaternion", + "canonicalReference": "server!Quaternion:class" + }, + { + "kind": "Content", + "text": ", translation: " + }, + { + "kind": "Reference", + "text": "Vector3", + "canonicalReference": "server!Vector3:class" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "Matrix4", + "canonicalReference": "server!Matrix4:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": true, + "returnTypeTokenRange": { + "startIndex": 5, + "endIndex": 6 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "rotation", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + }, + { + "parameterName": "translation", + "parameterTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "fromRotationTranslation" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix4.fromRotationTranslationScale:member(1)", + "docComment": "/**\n * Creates a new `Matrix4` instance from a rotation, translation, and scale.\n *\n * @param rotation - The rotation of the matrix.\n *\n * @param translation - The translation of the matrix.\n *\n * @param scale - The scale of the matrix.\n *\n * @returns A new `Matrix4` instance.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "static fromRotationTranslationScale(rotation: " + }, + { + "kind": "Reference", + "text": "Quaternion", + "canonicalReference": "server!Quaternion:class" + }, + { + "kind": "Content", + "text": ", translation: " + }, + { + "kind": "Reference", + "text": "Vector3", + "canonicalReference": "server!Vector3:class" + }, + { + "kind": "Content", + "text": ", scale: " + }, + { + "kind": "Reference", + "text": "Vector3", + "canonicalReference": "server!Vector3:class" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "Matrix4", + "canonicalReference": "server!Matrix4:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": true, + "returnTypeTokenRange": { + "startIndex": 7, + "endIndex": 8 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "rotation", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + }, + { + "parameterName": "translation", + "parameterTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "isOptional": false + }, + { + "parameterName": "scale", + "parameterTypeTokenRange": { + "startIndex": 5, + "endIndex": 6 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "fromRotationTranslationScale" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix4.fromRotationTranslationScaleOrigin:member(1)", + "docComment": "/**\n * Creates a new `Matrix4` instance from a rotation, translation, scale, and origin.\n *\n * @param rotation - The rotation of the matrix.\n *\n * @param translation - The translation of the matrix.\n *\n * @param scale - The scale of the matrix.\n *\n * @param origin - The origin of the matrix.\n *\n * @returns A new `Matrix4` instance.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "static fromRotationTranslationScaleOrigin(rotation: " + }, + { + "kind": "Reference", + "text": "Quaternion", + "canonicalReference": "server!Quaternion:class" + }, + { + "kind": "Content", + "text": ", translation: " + }, + { + "kind": "Reference", + "text": "Vector3", + "canonicalReference": "server!Vector3:class" + }, + { + "kind": "Content", + "text": ", scale: " + }, + { + "kind": "Reference", + "text": "Vector3", + "canonicalReference": "server!Vector3:class" + }, + { + "kind": "Content", + "text": ", origin: " + }, + { + "kind": "Reference", + "text": "Vector3", + "canonicalReference": "server!Vector3:class" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "Matrix4", + "canonicalReference": "server!Matrix4:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": true, + "returnTypeTokenRange": { + "startIndex": 9, + "endIndex": 10 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "rotation", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + }, + { + "parameterName": "translation", + "parameterTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "isOptional": false + }, + { + "parameterName": "scale", + "parameterTypeTokenRange": { + "startIndex": 5, + "endIndex": 6 + }, + "isOptional": false + }, + { + "parameterName": "origin", + "parameterTypeTokenRange": { + "startIndex": 7, + "endIndex": 8 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "fromRotationTranslationScaleOrigin" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix4.fromScaling:member(1)", + "docComment": "/**\n * Creates a new `Matrix4` instance from a scale of identity matrix.\n *\n * @param scale - The scale of the matrix.\n *\n * @returns A new `Matrix4` instance.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "static fromScaling(scale: " + }, + { + "kind": "Reference", + "text": "Vector3", + "canonicalReference": "server!Vector3:class" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "Matrix4", + "canonicalReference": "server!Matrix4:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": true, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "scale", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "fromScaling" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix4.fromTranslation:member(1)", + "docComment": "/**\n * Creates a new `Matrix4` instance from a translation of identity matrix.\n *\n * @param translation - The translation of the matrix.\n *\n * @returns A new `Matrix4` instance.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "static fromTranslation(translation: " + }, + { + "kind": "Reference", + "text": "Vector3", + "canonicalReference": "server!Vector3:class" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "Matrix4", + "canonicalReference": "server!Matrix4:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": true, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "translation", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "fromTranslation" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix4.fromXRotation:member(1)", + "docComment": "/**\n * Creates a new `Matrix4` instance from an x-rotation of identity matrix.\n *\n * @param angle - The angle in radians to rotate the matrix by.\n *\n * @returns A new `Matrix4` instance.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "static fromXRotation(angle: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "Matrix4", + "canonicalReference": "server!Matrix4:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": true, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "angle", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "fromXRotation" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix4.fromYRotation:member(1)", + "docComment": "/**\n * Creates a new `Matrix4` instance from a y-rotation of identity matrix.\n *\n * @param angle - The angle in radians to rotate the matrix by.\n *\n * @returns A new `Matrix4` instance.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "static fromYRotation(angle: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "Matrix4", + "canonicalReference": "server!Matrix4:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": true, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "angle", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "fromYRotation" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix4.fromZRotation:member(1)", + "docComment": "/**\n * Creates a new `Matrix4` instance from a z-rotation of identity matrix.\n *\n * @param angle - The angle in radians to rotate the matrix by.\n *\n * @returns A new `Matrix4` instance.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "static fromZRotation(angle: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "Matrix4", + "canonicalReference": "server!Matrix4:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": true, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "angle", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "fromZRotation" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix4#frustrum:member(1)", + "docComment": "/**\n * Sets the current matrix to a frustrum matrix with the given bounds.\n *\n * @param left - The left bound of the projection.\n *\n * @param right - The right bound of the projection.\n *\n * @param bottom - The bottom bound of the projection.\n *\n * @param top - The top bound of the projection.\n *\n * @param near - The near bound of the projection.\n *\n * @param far - The far bound of the projection.\n *\n * @returns The current matrix.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "frustrum(left: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ", right: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ", bottom: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ", top: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ", near: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ", far: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "Matrix4", + "canonicalReference": "server!Matrix4:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 13, + "endIndex": 14 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "left", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + }, + { + "parameterName": "right", + "parameterTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "isOptional": false + }, + { + "parameterName": "bottom", + "parameterTypeTokenRange": { + "startIndex": 5, + "endIndex": 6 + }, + "isOptional": false + }, + { + "parameterName": "top", + "parameterTypeTokenRange": { + "startIndex": 7, + "endIndex": 8 + }, + "isOptional": false + }, + { + "parameterName": "near", + "parameterTypeTokenRange": { + "startIndex": 9, + "endIndex": 10 + }, + "isOptional": false + }, + { + "parameterName": "far", + "parameterTypeTokenRange": { + "startIndex": 11, + "endIndex": 12 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "frustrum" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix4#identity:member(1)", + "docComment": "/**\n * Sets the current matrix to the identity matrix.\n *\n * @returns The current matrix.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "identity(): " + }, + { + "kind": "Reference", + "text": "Matrix4", + "canonicalReference": "server!Matrix4:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [], + "isOptional": false, + "isAbstract": false, + "name": "identity" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix4#invert:member(1)", + "docComment": "/**\n * Inverts the current matrix.\n *\n * @returns The current matrix.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "invert(): " + }, + { + "kind": "Reference", + "text": "Matrix4", + "canonicalReference": "server!Matrix4:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [], + "isOptional": false, + "isAbstract": false, + "name": "invert" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix4#lookAt:member(1)", + "docComment": "/**\n * Sets the current matrix to a look-at matrix with the given eye, center, and up vectors.\n *\n * @param eye - The eye vector of the camera.\n *\n * @param center - The center vector of the camera.\n *\n * @param up - The up vector of the camera.\n *\n * @returns The current matrix.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "lookAt(eye: " + }, + { + "kind": "Reference", + "text": "Vector3", + "canonicalReference": "server!Vector3:class" + }, + { + "kind": "Content", + "text": ", center: " + }, + { + "kind": "Reference", + "text": "Vector3", + "canonicalReference": "server!Vector3:class" + }, + { + "kind": "Content", + "text": ", up: " + }, + { + "kind": "Reference", + "text": "Vector3", + "canonicalReference": "server!Vector3:class" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "Matrix4", + "canonicalReference": "server!Matrix4:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 7, + "endIndex": 8 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "eye", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + }, + { + "parameterName": "center", + "parameterTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "isOptional": false + }, + { + "parameterName": "up", + "parameterTypeTokenRange": { + "startIndex": 5, + "endIndex": 6 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "lookAt" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix4#multiply:member(1)", + "docComment": "/**\n * Multiplies the current matrix by another matrix.\n *\n * @param matrix4 - The matrix to multiply the current matrix by.\n *\n * @returns The current matrix.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "multiply(matrix4: " + }, + { + "kind": "Reference", + "text": "Matrix4", + "canonicalReference": "server!Matrix4:class" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "Matrix4", + "canonicalReference": "server!Matrix4:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "matrix4", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "multiply" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix4#multiplyScalar:member(1)", + "docComment": "/**\n * Multiplies each element of the current matrix by a scalar value.\n *\n * @param scalar - The scalar value to multiply the current matrix elements by.\n *\n * @returns The current matrix.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "multiplyScalar(scalar: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "Matrix4", + "canonicalReference": "server!Matrix4:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "scalar", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "multiplyScalar" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix4#orthographic:member(1)", + "docComment": "/**\n * Sets the current matrix to an orthographic projection matrix with the given bounds.\n *\n * @param left - The left bound of the frustum.\n *\n * @param right - The right bound of the frustum.\n *\n * @param bottom - The bottom bound of the frustum.\n *\n * @param top - The top bound of the frustum.\n *\n * @param near - The near bound of the frustum.\n *\n * @param far - The far bound of the frustum.\n *\n * @returns The current matrix.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "orthographic(left: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ", right: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ", bottom: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ", top: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ", near: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ", far: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "Matrix4", + "canonicalReference": "server!Matrix4:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 13, + "endIndex": 14 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "left", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + }, + { + "parameterName": "right", + "parameterTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "isOptional": false + }, + { + "parameterName": "bottom", + "parameterTypeTokenRange": { + "startIndex": 5, + "endIndex": 6 + }, + "isOptional": false + }, + { + "parameterName": "top", + "parameterTypeTokenRange": { + "startIndex": 7, + "endIndex": 8 + }, + "isOptional": false + }, + { + "parameterName": "near", + "parameterTypeTokenRange": { + "startIndex": 9, + "endIndex": 10 + }, + "isOptional": false + }, + { + "parameterName": "far", + "parameterTypeTokenRange": { + "startIndex": 11, + "endIndex": 12 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "orthographic" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix4#perspective:member(1)", + "docComment": "/**\n * Sets the current matrix to a perspective matrix with the given field of view, aspect ratio, and near and far bounds.\n *\n * @param fovy - The field of view of the projection.\n *\n * @param aspect - The aspect ratio of the projection.\n *\n * @param near - The near bound of the projection.\n *\n * @param far - The far bound of the projection.\n *\n * @returns The current matrix.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "perspective(fovy: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ", aspect: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ", near: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ", far: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "Matrix4", + "canonicalReference": "server!Matrix4:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 9, + "endIndex": 10 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "fovy", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + }, + { + "parameterName": "aspect", + "parameterTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "isOptional": false + }, + { + "parameterName": "near", + "parameterTypeTokenRange": { + "startIndex": 5, + "endIndex": 6 + }, + "isOptional": false + }, + { + "parameterName": "far", + "parameterTypeTokenRange": { + "startIndex": 7, + "endIndex": 8 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "perspective" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix4#rotate:member(1)", + "docComment": "/**\n * Rotates the current matrix by an angle in radians around an axis.\n *\n * @param angle - The angle in radians to rotate the current matrix by.\n *\n * @param axis - The axis to rotate the current matrix around.\n *\n * @returns The current matrix.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "rotate(angle: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ", axis: " + }, + { + "kind": "Reference", + "text": "Vector3", + "canonicalReference": "server!Vector3:class" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "Matrix4", + "canonicalReference": "server!Matrix4:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 5, + "endIndex": 6 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "angle", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + }, + { + "parameterName": "axis", + "parameterTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "rotate" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix4#rotateX:member(1)", + "docComment": "/**\n * Rotates the current matrix by an angle in radians around the x-axis.\n *\n * @param angle - The angle in radians to rotate the current matrix by.\n *\n * @returns The current matrix.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "rotateX(angle: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "Matrix4", + "canonicalReference": "server!Matrix4:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "angle", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "rotateX" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix4#rotateY:member(1)", + "docComment": "/**\n * Rotates the current matrix by an angle in radians around the y-axis.\n *\n * @param angle - The angle in radians to rotate the current matrix by.\n *\n * @returns The current matrix.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "rotateY(angle: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "Matrix4", + "canonicalReference": "server!Matrix4:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "angle", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "rotateY" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix4#rotateZ:member(1)", + "docComment": "/**\n * Rotates the current matrix by an angle in radians around the z-axis.\n *\n * @param angle - The angle in radians to rotate the current matrix by.\n *\n * @returns The current matrix.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "rotateZ(angle: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "Matrix4", + "canonicalReference": "server!Matrix4:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "angle", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "rotateZ" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix4#scale:member(1)", + "docComment": "/**\n * Scales the current matrix by a vector.\n *\n * @param vector3 - The vector to scale the current matrix by.\n *\n * @returns The current matrix.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "scale(vector3: " + }, + { + "kind": "Reference", + "text": "Vector3", + "canonicalReference": "server!Vector3:class" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "Matrix4", + "canonicalReference": "server!Matrix4:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "vector3", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "scale" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix4#subtract:member(1)", + "docComment": "/**\n * Subtracts a matrix from the current matrix.\n *\n * @param matrix4 - The matrix to subtract from the current matrix.\n *\n * @returns The current matrix.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "subtract(matrix4: " + }, + { + "kind": "Reference", + "text": "Matrix4", + "canonicalReference": "server!Matrix4:class" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "Matrix4", + "canonicalReference": "server!Matrix4:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "matrix4", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "subtract" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix4#targetTo:member(1)", + "docComment": "/**\n * Sets the current matrix to a matrix that looks at a target.\n *\n * @param eye - The eye vector of the camera.\n *\n * @param center - The center vector of the camera.\n *\n * @param up - The up vector of the camera.\n *\n * @returns The current matrix.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "targetTo(eye: " + }, + { + "kind": "Reference", + "text": "Vector3", + "canonicalReference": "server!Vector3:class" + }, + { + "kind": "Content", + "text": ", center: " + }, + { + "kind": "Reference", + "text": "Vector3", + "canonicalReference": "server!Vector3:class" + }, + { + "kind": "Content", + "text": ", up: " + }, + { + "kind": "Reference", + "text": "Vector3", + "canonicalReference": "server!Vector3:class" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "Matrix4", + "canonicalReference": "server!Matrix4:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 7, + "endIndex": 8 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "eye", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + }, + { + "parameterName": "center", + "parameterTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "isOptional": false + }, + { + "parameterName": "up", + "parameterTypeTokenRange": { + "startIndex": 5, + "endIndex": 6 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "targetTo" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix4#toString:member(1)", + "docComment": "/**\n * Returns a string representation of the current matrix.\n *\n * @returns A string representation of the current matrix.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "toString(): " + }, + { + "kind": "Content", + "text": "string" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [], + "isOptional": false, + "isAbstract": false, + "name": "toString" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix4#translate:member(1)", + "docComment": "/**\n * Translates the current matrix by a vector.\n *\n * @param vector3 - The vector to translate the current matrix by.\n *\n * @returns The current matrix.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "translate(vector3: " + }, + { + "kind": "Reference", + "text": "Vector3", + "canonicalReference": "server!Vector3:class" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "Matrix4", + "canonicalReference": "server!Matrix4:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "vector3", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "translate" + }, + { + "kind": "Method", + "canonicalReference": "server!Matrix4#transpose:member(1)", + "docComment": "/**\n * Transposes the current matrix.\n *\n * @returns The current matrix.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "transpose(): " + }, + { + "kind": "Reference", + "text": "Matrix4", + "canonicalReference": "server!Matrix4:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [], + "isOptional": false, + "isAbstract": false, + "name": "transpose" + } + ], + "extendsTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "implementsTokenRanges": [] + }, + { + "kind": "TypeAlias", + "canonicalReference": "server!ModelBoundingBox:type", + "docComment": "/**\n * A bounding box for a model.\n *\n * **Category:** Models\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export type ModelBoundingBox = " + }, + { + "kind": "Content", + "text": "{\n min: " + }, + { + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" + }, + { + "kind": "Content", + "text": ";\n max: " + }, + { + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" + }, + { + "kind": "Content", + "text": ";\n}" + }, + { + "kind": "Content", + "text": ";" + } + ], + "fileUrlPath": "src/models/ModelRegistry.ts", + "releaseTag": "Public", + "name": "ModelBoundingBox", + "typeTokenRange": { + "startIndex": 1, + "endIndex": 6 + } + }, + { + "kind": "Interface", + "canonicalReference": "server!ModelEntityOptions:interface", + "docComment": "/**\n * The options for creating a model entity.\n *\n * Use for: entities rendered from a glTF model. Do NOT use for: block entities; use `BlockEntityOptions`.\n *\n * **Category:** Entities\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export interface ModelEntityOptions extends " + }, + { + "kind": "Reference", + "text": "BaseEntityOptions", + "canonicalReference": "server!BaseEntityOptions:interface" + }, + { + "kind": "Content", + "text": " " + } + ], + "fileUrlPath": "src/worlds/entities/Entity.ts", + "releaseTag": "Public", + "name": "ModelEntityOptions", + "preserveMemberOrder": false, + "members": [ + { + "kind": "PropertySignature", + "canonicalReference": "server!ModelEntityOptions#modelAnimations:member", + "docComment": "/**\n * The model animation options for animations to configure immediately.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "modelAnimations?: " + }, + { + "kind": "Reference", + "text": "Omit", + "canonicalReference": "!Omit:type" + }, + { + "kind": "Content", + "text": "<" + }, + { + "kind": "Reference", + "text": "EntityModelAnimationOptions", + "canonicalReference": "server!EntityModelAnimationOptions:interface" + }, + { + "kind": "Content", + "text": ", 'entity'>[]" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "modelAnimations", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 5 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!ModelEntityOptions#modelNodeOverrides:member", + "docComment": "/**\n * The node overrides for the entity's model. `nameMatch` is exact by default, with optional edge wildcard (`head*`, `*head`, `*head*`).\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "modelNodeOverrides?: " + }, + { + "kind": "Reference", + "text": "Omit", + "canonicalReference": "!Omit:type" + }, + { + "kind": "Content", + "text": "<" + }, + { + "kind": "Reference", + "text": "EntityModelNodeOverrideOptions", + "canonicalReference": "server!EntityModelNodeOverrideOptions:interface" + }, + { + "kind": "Content", + "text": ", 'entity'>[]" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "modelNodeOverrides", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 5 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!ModelEntityOptions#modelPreferredShape:member", + "docComment": "/**\n * The preferred shape of the entity's model when automatically generating its collider when no explicit colliders are provided.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "modelPreferredShape?: " + }, + { + "kind": "Reference", + "text": "ColliderShape", + "canonicalReference": "server!ColliderShape:enum" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "modelPreferredShape", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!ModelEntityOptions#modelScale:member", + "docComment": "/**\n * The scale of the entity's model. Can be a vector3 for per-axis scaling, or a number for uniform scaling.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "modelScale?: " + }, + { + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" + }, + { + "kind": "Content", + "text": " | number" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "modelScale", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 3 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!ModelEntityOptions#modelScaleInterpolationMs:member", + "docComment": "/**\n * The interpolation time in milliseconds applied to model scale changes.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "modelScaleInterpolationMs?: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "modelScaleInterpolationMs", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!ModelEntityOptions#modelTextureUri:member", + "docComment": "/**\n * The texture uri of the entity's model. Setting this overrides the model's default texture.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "modelTextureUri?: " + }, + { + "kind": "Content", + "text": "string" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "modelTextureUri", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!ModelEntityOptions#modelUri:member", + "docComment": "/**\n * The URI or path to the .gltf model asset to be used for the entity.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "modelUri?: " + }, + { + "kind": "Content", + "text": "string" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "modelUri", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + } + ], + "extendsTokenRanges": [ + { + "startIndex": 1, + "endIndex": 2 + } + ] + }, + { + "kind": "Class", + "canonicalReference": "server!ModelRegistry:class", + "docComment": "/**\n * Manages model data for all known models of the game.\n *\n * When to use: querying model metadata (bounds, node names, animations, trimesh). Do NOT use for: runtime mesh editing; use dedicated tooling or physics colliders.\n *\n * @remarks\n *\n * The ModelRegistry is created internally as a global singleton accessible via `ModelRegistry.instance`. Model data is preloaded during server startup and cached in memory.\n *\n * Pattern: call `ModelRegistry.hasModel` before accessing metadata to avoid warnings. Anti-pattern: calling `ModelRegistry.getTrimesh` every tick; it may allocate arrays.\n *\n * The constructor for this class is marked as internal. Third-party code should not call the constructor directly or create subclasses that extend the `ModelRegistry` class.\n *\n * @example\n * ```typescript\n * import { ModelRegistry } from 'hytopia';\n *\n * const modelRegistry = ModelRegistry.instance;\n * const boundingBox = modelRegistry.getBoundingBox('models/player.gltf');\n * ```\n *\n * **Category:** Models\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export default class ModelRegistry " + } + ], + "fileUrlPath": "src/models/ModelRegistry.ts", + "releaseTag": "Public", + "isAbstract": false, + "name": "ModelRegistry", + "preserveMemberOrder": false, + "members": [ + { + "kind": "Method", + "canonicalReference": "server!ModelRegistry#getAllModelUris:member(1)", + "docComment": "/**\n * Retrieves an array of all available model URIs.\n *\n * @returns An array of all available model URIs.\n *\n * **Category:** Models\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "getAllModelUris(): " + }, + { + "kind": "Content", + "text": "string[]" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [], + "isOptional": false, + "isAbstract": false, + "name": "getAllModelUris" + }, + { + "kind": "Method", + "canonicalReference": "server!ModelRegistry#getAnimationNames:member(1)", + "docComment": "/**\n * Retrieves an array of all known animation names for a model.\n *\n * @param modelUri - The URI of the model to retrieve the animation names for.\n *\n * @returns An array of all known animation names for the model.\n *\n * **Requires:** Model data must be loaded (server startup).\n *\n * **Category:** Models\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "getAnimationNames(modelUri: " + }, + { + "kind": "Content", + "text": "string" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "Readonly", + "canonicalReference": "!Readonly:type" + }, + { + "kind": "Content", + "text": "" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 5 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "modelUri", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "getAnimationNames" + }, + { + "kind": "Method", + "canonicalReference": "server!ModelRegistry#getBoundingBox:member(1)", + "docComment": "/**\n * Retrieves the bounding box of a model.\n *\n * @param modelUri - The URI of the model to retrieve the bounding box for.\n *\n * @returns The bounding box of the model.\n *\n * **Requires:** Model data must be loaded (server startup).\n *\n * **Category:** Models\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "getBoundingBox(modelUri: " + }, + { + "kind": "Content", + "text": "string" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "ModelBoundingBox", + "canonicalReference": "server!ModelBoundingBox:type" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "modelUri", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "getBoundingBox" + }, + { + "kind": "Method", + "canonicalReference": "server!ModelRegistry#getDepth:member(1)", + "docComment": "/**\n * Retrieves the Z-axis depth of a model for a scale of 1.\n *\n * @param modelUri - The URI of the model to retrieve the depth for.\n *\n * @returns The depth of the model.\n *\n * @see\n *\n * `ModelRegistry.getBoundingBox`\n *\n * **Category:** Models\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "getDepth(modelUri: " + }, + { + "kind": "Content", + "text": "string" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "modelUri", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "getDepth" + }, + { + "kind": "Method", + "canonicalReference": "server!ModelRegistry#getHeight:member(1)", + "docComment": "/**\n * Retrieves the Y-axis height of a model for a scale of 1.\n *\n * @param modelUri - The URI of the model to retrieve the height for.\n *\n * @returns The height of the model.\n *\n * @see\n *\n * `ModelRegistry.getBoundingBox`\n *\n * **Category:** Models\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "getHeight(modelUri: " + }, + { + "kind": "Content", + "text": "string" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "modelUri", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "getHeight" + }, + { + "kind": "Method", + "canonicalReference": "server!ModelRegistry#getNodeNames:member(1)", + "docComment": "/**\n * Retrieves the names of all nodes in a model.\n *\n * @param modelUri - The URI of the model to retrieve the node names for.\n *\n * @returns The names of all nodes in the model.\n *\n * **Requires:** Model data must be loaded (server startup).\n *\n * **Category:** Models\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "getNodeNames(modelUri: " + }, + { + "kind": "Content", + "text": "string" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Content", + "text": "string[]" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "modelUri", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "getNodeNames" + }, + { + "kind": "Method", + "canonicalReference": "server!ModelRegistry#getTrimesh:member(1)", + "docComment": "/**\n * Retrieves the trimesh of a model.\n *\n * @param modelUri - The URI of the model to retrieve the trimesh for.\n *\n * @param scale - Optional scaling to apply to the trimesh. Defaults to 1 for all axes (no scaling).\n *\n * @returns The trimesh of the model.\n *\n * **Requires:** Model data must be loaded (server startup).\n *\n * **Category:** Models\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "getTrimesh(modelUri: " + }, + { + "kind": "Content", + "text": "string" + }, + { + "kind": "Content", + "text": ", scale?: " + }, + { + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "ModelTrimesh", + "canonicalReference": "server!ModelTrimesh:type" + }, + { + "kind": "Content", + "text": " | undefined" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 5, + "endIndex": 7 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "modelUri", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + }, + { + "parameterName": "scale", + "parameterTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "isOptional": true + } + ], + "isOptional": false, + "isAbstract": false, + "name": "getTrimesh" + }, + { + "kind": "Method", + "canonicalReference": "server!ModelRegistry#getWidth:member(1)", + "docComment": "/**\n * Retrieves the X-axis width of a model for a scale of 1.\n *\n * @param modelUri - The URI of the model to retrieve the width for.\n *\n * @returns The width of the model.\n *\n * @see\n *\n * `ModelRegistry.getBoundingBox`\n *\n * **Category:** Models\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "getWidth(modelUri: " + }, + { + "kind": "Content", + "text": "string" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "modelUri", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "getWidth" + }, + { + "kind": "Method", + "canonicalReference": "server!ModelRegistry#hasModel:member(1)", + "docComment": "/**\n * Checks if a model is registered in the model registry.\n *\n * @param modelUri - The URI of the model to check.\n *\n * @returns Whether the model is registered.\n *\n * **Category:** Models\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "hasModel(modelUri: " + }, + { + "kind": "Content", + "text": "string" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Content", + "text": "boolean" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "modelUri", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "hasModel" + }, + { + "kind": "Property", + "canonicalReference": "server!ModelRegistry.instance:member", + "docComment": "/**\n * The global ModelRegistry instance as a singleton.\n *\n * **Category:** Models\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "static readonly instance: " + }, + { + "kind": "Reference", + "text": "ModelRegistry", + "canonicalReference": "server!ModelRegistry:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "instance", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": true, + "isProtected": false, + "isAbstract": false + }, + { + "kind": "Method", + "canonicalReference": "server!ModelRegistry#modelHasNode:member(1)", + "docComment": "/**\n * Checks if a model has a node with the given name.\n *\n * @param modelUri - The URI of the model to check.\n *\n * @param nodeName - The name of the node to check for.\n *\n * @returns Whether the model has a node with the given name.\n *\n * **Requires:** Model data must be loaded (server startup).\n *\n * **Category:** Models\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "modelHasNode(modelUri: " + }, + { + "kind": "Content", + "text": "string" + }, + { + "kind": "Content", + "text": ", nodeName: " + }, + { + "kind": "Content", + "text": "string" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Content", + "text": "boolean" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 5, + "endIndex": 6 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "modelUri", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + }, + { + "parameterName": "nodeName", + "parameterTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "modelHasNode" + }, + { + "kind": "Property", + "canonicalReference": "server!ModelRegistry#optimize:member", + "docComment": "/**\n * Whether to generate optimized models if needed.\n *\n * Defaults to `true` in development, `false` in production.\n *\n * **Category:** Models\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "optimize: " + }, + { + "kind": "Content", + "text": "boolean" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": false, + "releaseTag": "Public", + "name": "optimize", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false + } + ], + "implementsTokenRanges": [] + }, + { + "kind": "TypeAlias", + "canonicalReference": "server!ModelTrimesh:type", + "docComment": "/**\n * A trimesh for a model.\n *\n * **Category:** Models\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export type ModelTrimesh = " + }, + { + "kind": "Content", + "text": "{\n vertices: " + }, + { + "kind": "Reference", + "text": "Float32Array", + "canonicalReference": "!Float32Array:interface" + }, + { + "kind": "Content", + "text": ";\n indices: " + }, + { + "kind": "Reference", + "text": "Uint32Array", + "canonicalReference": "!Uint32Array:interface" + }, + { + "kind": "Content", + "text": ";\n}" + }, + { + "kind": "Content", + "text": ";" + } + ], + "fileUrlPath": "src/models/ModelRegistry.ts", + "releaseTag": "Public", + "name": "ModelTrimesh", + "typeTokenRange": { + "startIndex": 1, + "endIndex": 6 + } + }, + { + "kind": "Function", + "canonicalReference": "server!Monitor:function(1)", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "export declare function Monitor(operationName?: " + }, + { + "kind": "Content", + "text": "string" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Content", + "text": "(target: any, propertyKey: string, descriptor: " + }, + { + "kind": "Reference", + "text": "PropertyDescriptor", + "canonicalReference": "!PropertyDescriptor:interface" + }, + { + "kind": "Content", + "text": ") => " + }, + { + "kind": "Reference", + "text": "PropertyDescriptor", + "canonicalReference": "!PropertyDescriptor:interface" + }, + { + "kind": "Content", + "text": ";" + } + ], + "fileUrlPath": "src/metrics/Monitor.ts", + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 7 + }, + "releaseTag": "Public", + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "operationName", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": true + } + ], + "name": "Monitor" + }, + { + "kind": "Function", + "canonicalReference": "server!monitorAsyncBlock:function(1)", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "export declare function monitorAsyncBlock(name: " + }, + { + "kind": "Content", + "text": "string" + }, + { + "kind": "Content", + "text": ", fn: " + }, + { + "kind": "Content", + "text": "() => " + }, + { + "kind": "Reference", + "text": "Promise", + "canonicalReference": "!Promise:interface" + }, + { + "kind": "Content", + "text": "" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "Promise", + "canonicalReference": "!Promise:interface" + }, + { + "kind": "Content", + "text": "" + }, + { + "kind": "Content", + "text": ";" + } + ], + "fileUrlPath": "src/metrics/Monitor.ts", + "returnTypeTokenRange": { + "startIndex": 7, + "endIndex": 9 + }, + "releaseTag": "Public", + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "name", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + }, + { + "parameterName": "fn", + "parameterTypeTokenRange": { + "startIndex": 3, + "endIndex": 6 + }, + "isOptional": false + } + ], + "typeParameters": [ + { + "typeParameterName": "T", + "constraintTokenRange": { + "startIndex": 0, + "endIndex": 0 + }, + "defaultTypeTokenRange": { + "startIndex": 0, + "endIndex": 0 + } + } + ], + "name": "monitorAsyncBlock" + }, + { + "kind": "Function", + "canonicalReference": "server!monitorBlock:function(1)", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "export declare function monitorBlock(name: " + }, + { + "kind": "Content", + "text": "string" + }, + { + "kind": "Content", + "text": ", fn: " + }, + { + "kind": "Content", + "text": "() => T" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Content", + "text": "T" + }, + { + "kind": "Content", + "text": ";" + } + ], + "fileUrlPath": "src/metrics/Monitor.ts", + "returnTypeTokenRange": { + "startIndex": 5, + "endIndex": 6 + }, + "releaseTag": "Public", + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "name", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + }, + { + "parameterName": "fn", + "parameterTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "isOptional": false + } + ], + "typeParameters": [ + { + "typeParameterName": "T", + "constraintTokenRange": { + "startIndex": 0, + "endIndex": 0 + }, + "defaultTypeTokenRange": { + "startIndex": 0, + "endIndex": 0 + } + } + ], + "name": "monitorBlock" + }, + { + "kind": "Function", + "canonicalReference": "server!MonitorClass:function(1)", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "export declare function MonitorClass(prefix?: " + }, + { + "kind": "Content", + "text": "string" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Content", + "text": "(constructor: T) => T" + }, + { + "kind": "Content", + "text": ";" + } + ], + "fileUrlPath": "src/metrics/Monitor.ts", + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "prefix", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": true + } + ], + "name": "MonitorClass" + }, + { + "kind": "TypeAlias", + "canonicalReference": "server!MoveCallback:type", + "docComment": "/**\n * Callback invoked as the entity moves toward a target coordinate.\n *\n * @param currentPosition - The current position of the entity.\n *\n * @param targetPosition - The target position of the entity.\n *\n * **Category:** Controllers\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export type MoveCallback = " + }, + { + "kind": "Content", + "text": "(currentPosition: " + }, + { + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" + }, + { + "kind": "Content", + "text": ", targetPosition: " + }, + { + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" + }, + { + "kind": "Content", + "text": ") => void" + }, + { + "kind": "Content", + "text": ";" + } + ], + "fileUrlPath": "src/worlds/entities/controllers/SimpleEntityController.ts", + "releaseTag": "Public", + "name": "MoveCallback", + "typeTokenRange": { + "startIndex": 1, + "endIndex": 6 + } + }, + { + "kind": "TypeAlias", + "canonicalReference": "server!MoveCompleteCallback:type", + "docComment": "/**\n * Callback invoked when the entity reaches the target coordinate.\n *\n * @param endPosition - The position of the entity after it has finished moving.\n *\n * **Category:** Controllers\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export type MoveCompleteCallback = " + }, + { + "kind": "Content", + "text": "(endPosition: " + }, + { + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" + }, + { + "kind": "Content", + "text": ") => void" + }, + { + "kind": "Content", + "text": ";" + } + ], + "fileUrlPath": "src/worlds/entities/controllers/SimpleEntityController.ts", + "releaseTag": "Public", + "name": "MoveCompleteCallback", + "typeTokenRange": { + "startIndex": 1, + "endIndex": 4 + } + }, + { + "kind": "TypeAlias", + "canonicalReference": "server!MoveOptions:type", + "docComment": "/**\n * Options for `SimpleEntityController.move`.\n *\n * Use for: customizing a single `move()` call. Do NOT use for: persistent defaults; use `SimpleEntityControllerOptions`.\n *\n * **Category:** Controllers\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export type MoveOptions = " + }, + { + "kind": "Content", + "text": "{\n moveCallback?: " + }, + { + "kind": "Reference", + "text": "MoveCallback", + "canonicalReference": "server!MoveCallback:type" + }, + { + "kind": "Content", + "text": ";\n moveCompleteCallback?: " + }, + { + "kind": "Reference", + "text": "MoveCompleteCallback", + "canonicalReference": "server!MoveCompleteCallback:type" + }, + { + "kind": "Content", + "text": ";\n moveIgnoreAxes?: {\n x?: boolean;\n y?: boolean;\n z?: boolean;\n };\n moveStartIdleAnimationsOnCompletion?: boolean;\n moveStoppingDistance?: number;\n moveCompletesWhenStuck?: boolean;\n}" + }, + { + "kind": "Content", + "text": ";" + } + ], + "fileUrlPath": "src/worlds/entities/controllers/SimpleEntityController.ts", + "releaseTag": "Public", + "name": "MoveOptions", + "typeTokenRange": { + "startIndex": 1, + "endIndex": 6 + } + }, + { + "kind": "Class", + "canonicalReference": "server!NetworkMetrics:class", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "export default class NetworkMetrics " + } + ], + "fileUrlPath": "src/metrics/NetworkMetrics.ts", + "releaseTag": "Public", + "isAbstract": false, + "name": "NetworkMetrics", + "preserveMemberOrder": false, + "members": [ + { + "kind": "Method", + "canonicalReference": "server!NetworkMetrics#disable:member(1)", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "adjoint(): " + "text": "disable(): " }, { - "kind": "Reference", - "text": "Matrix4", - "canonicalReference": "server!Matrix4:class" + "kind": "Content", + "text": "void" }, { "kind": "Content", @@ -29524,21 +34887,20 @@ "parameters": [], "isOptional": false, "isAbstract": false, - "name": "adjoint" + "name": "disable" }, { "kind": "Method", - "canonicalReference": "server!Matrix4#clone:member(1)", - "docComment": "/**\n * Clones the current matrix.\n *\n * @returns A clone of the current matrix.\n */\n", + "canonicalReference": "server!NetworkMetrics#enable:member(1)", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "clone(): " + "text": "enable(): " }, { - "kind": "Reference", - "text": "Matrix4", - "canonicalReference": "server!Matrix4:class" + "kind": "Content", + "text": "void" }, { "kind": "Content", @@ -29556,30 +34918,21 @@ "parameters": [], "isOptional": false, "isAbstract": false, - "name": "clone" + "name": "enable" }, { "kind": "Method", - "canonicalReference": "server!Matrix4#copy:member(1)", - "docComment": "/**\n * Copies a matrix to the current matrix.\n *\n * @param matrix4 - The matrix to copy to the current matrix.\n *\n * @returns The current matrix.\n */\n", + "canonicalReference": "server!NetworkMetrics#getSnapshot:member(1)", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "copy(matrix4: " - }, - { - "kind": "Reference", - "text": "Matrix4", - "canonicalReference": "server!Matrix4:class" - }, - { - "kind": "Content", - "text": "): " + "text": "getSnapshot(): " }, { "kind": "Reference", - "text": "Matrix4", - "canonicalReference": "server!Matrix4:class" + "text": "NetworkMetricsSnapshot", + "canonicalReference": "server!NetworkMetricsSnapshot:interface" }, { "kind": "Content", @@ -29587,47 +34940,6 @@ } ], "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "matrix4", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "copy" - }, - { - "kind": "Method", - "canonicalReference": "server!Matrix4.create:member(1)", - "docComment": "/**\n * Creates a new `Matrix4` instance.\n *\n * @returns A new `Matrix4` instance.\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "static create(): " - }, - { - "kind": "Reference", - "text": "Matrix4", - "canonicalReference": "server!Matrix4:class" - }, - { - "kind": "Content", - "text": ";" - } - ], - "isStatic": true, "returnTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -29638,20 +34950,21 @@ "parameters": [], "isOptional": false, "isAbstract": false, - "name": "create" + "name": "getSnapshot" }, { "kind": "Property", - "canonicalReference": "server!Matrix4#determinant:member", - "docComment": "/**\n * The determinant of the matrix.\n */\n", + "canonicalReference": "server!NetworkMetrics.instance:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "get determinant(): " + "text": "static get instance(): " }, { - "kind": "Content", - "text": "number" + "kind": "Reference", + "text": "NetworkMetrics", + "canonicalReference": "server!NetworkMetrics:class" }, { "kind": "Content", @@ -29661,125 +34974,27 @@ "isReadonly": true, "isOptional": false, "releaseTag": "Public", - "name": "determinant", + "name": "instance", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "isStatic": false, + "isStatic": true, "isProtected": false, "isAbstract": false }, - { - "kind": "Method", - "canonicalReference": "server!Matrix4#equals:member(1)", - "docComment": "/**\n * Checks if the current matrix is approximately equal to another matrix.\n *\n * @param matrix4 - The matrix to compare to the current matrix.\n *\n * @returns `true` if the current matrix is equal to the provided matrix, `false` otherwise.\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "equals(matrix4: " - }, - { - "kind": "Reference", - "text": "Matrix4", - "canonicalReference": "server!Matrix4:class" - }, - { - "kind": "Content", - "text": "): " - }, - { - "kind": "Content", - "text": "boolean" - }, - { - "kind": "Content", - "text": ";" - } - ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "matrix4", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "equals" - }, - { - "kind": "Method", - "canonicalReference": "server!Matrix4#exactEquals:member(1)", - "docComment": "/**\n * Checks if the current matrix is exactly equal to another matrix.\n *\n * @param matrix4 - The matrix to compare to the current matrix.\n *\n * @returns `true` if the current matrix is equal to the provided matrix, `false` otherwise.\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "exactEquals(matrix4: " - }, - { - "kind": "Reference", - "text": "Matrix4", - "canonicalReference": "server!Matrix4:class" - }, - { - "kind": "Content", - "text": "): " - }, - { - "kind": "Content", - "text": "boolean" - }, - { - "kind": "Content", - "text": ";" - } - ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "matrix4", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "exactEquals" - }, { "kind": "Property", - "canonicalReference": "server!Matrix4#frobeniusNorm:member", - "docComment": "/**\n * The frobenius norm of the matrix.\n */\n", + "canonicalReference": "server!NetworkMetrics#isEnabled:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "get frobeniusNorm(): " + "text": "get isEnabled(): " }, { "kind": "Content", - "text": "number" + "text": "boolean" }, { "kind": "Content", @@ -29789,7 +35004,7 @@ "isReadonly": true, "isOptional": false, "releaseTag": "Public", - "name": "frobeniusNorm", + "name": "isEnabled", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -29799,402 +35014,80 @@ "isAbstract": false }, { - "kind": "Method", - "canonicalReference": "server!Matrix4.fromQuaternion:member(1)", - "docComment": "/**\n * Creates a new `Matrix4` instance from a `Quaternion` object.\n *\n * @param quaternion - The `Quaternion` object to create the `Matrix4` instance from.\n *\n * @returns A new `Matrix4` instance.\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "static fromQuaternion(quaternion: " - }, - { - "kind": "Reference", - "text": "Quaternion", - "canonicalReference": "server!Quaternion:class" - }, - { - "kind": "Content", - "text": "): " - }, - { - "kind": "Reference", - "text": "Matrix4", - "canonicalReference": "server!Matrix4:class" - }, - { - "kind": "Content", - "text": ";" - } - ], - "isStatic": true, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "quaternion", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "fromQuaternion" - }, - { - "kind": "Method", - "canonicalReference": "server!Matrix4.fromRotation:member(1)", - "docComment": "/**\n * Creates a new `Matrix4` instance from an angle and axis.\n *\n * @param angle - The angle in radians to rotate the matrix by.\n *\n * @param axis - The axis to rotate the matrix around.\n *\n * @returns A new `Matrix4` instance.\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "static fromRotation(angle: " - }, - { - "kind": "Content", - "text": "number" - }, - { - "kind": "Content", - "text": ", axis: " - }, - { - "kind": "Reference", - "text": "Vector3", - "canonicalReference": "server!Vector3:class" - }, - { - "kind": "Content", - "text": "): " - }, - { - "kind": "Reference", - "text": "Matrix4", - "canonicalReference": "server!Matrix4:class" - }, - { - "kind": "Content", - "text": ";" - } - ], - "isStatic": true, - "returnTypeTokenRange": { - "startIndex": 5, - "endIndex": 6 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "angle", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - }, - { - "parameterName": "axis", - "parameterTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "fromRotation" - }, - { - "kind": "Method", - "canonicalReference": "server!Matrix4.fromRotationTranslation:member(1)", - "docComment": "/**\n * Creates a new `Matrix4` instance from a rotation and translation.\n *\n * @param rotation - The rotation of the matrix.\n *\n * @param translation - The translation of the matrix.\n *\n * @returns A new `Matrix4` instance.\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "static fromRotationTranslation(rotation: " - }, - { - "kind": "Reference", - "text": "Quaternion", - "canonicalReference": "server!Quaternion:class" - }, - { - "kind": "Content", - "text": ", translation: " - }, - { - "kind": "Reference", - "text": "Vector3", - "canonicalReference": "server!Vector3:class" - }, - { - "kind": "Content", - "text": "): " - }, - { - "kind": "Reference", - "text": "Matrix4", - "canonicalReference": "server!Matrix4:class" - }, - { - "kind": "Content", - "text": ";" - } - ], - "isStatic": true, - "returnTypeTokenRange": { - "startIndex": 5, - "endIndex": 6 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "rotation", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - }, - { - "parameterName": "translation", - "parameterTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "fromRotationTranslation" - }, - { - "kind": "Method", - "canonicalReference": "server!Matrix4.fromRotationTranslationScale:member(1)", - "docComment": "/**\n * Creates a new `Matrix4` instance from a rotation, translation, and scale.\n *\n * @param rotation - The rotation of the matrix.\n *\n * @param translation - The translation of the matrix.\n *\n * @param scale - The scale of the matrix.\n *\n * @returns A new `Matrix4` instance.\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "static fromRotationTranslationScale(rotation: " - }, - { - "kind": "Reference", - "text": "Quaternion", - "canonicalReference": "server!Quaternion:class" - }, - { - "kind": "Content", - "text": ", translation: " - }, - { - "kind": "Reference", - "text": "Vector3", - "canonicalReference": "server!Vector3:class" - }, - { - "kind": "Content", - "text": ", scale: " - }, - { - "kind": "Reference", - "text": "Vector3", - "canonicalReference": "server!Vector3:class" - }, - { - "kind": "Content", - "text": "): " - }, - { - "kind": "Reference", - "text": "Matrix4", - "canonicalReference": "server!Matrix4:class" - }, - { - "kind": "Content", - "text": ";" - } - ], - "isStatic": true, - "returnTypeTokenRange": { - "startIndex": 7, - "endIndex": 8 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "rotation", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - }, - { - "parameterName": "translation", - "parameterTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "isOptional": false - }, - { - "parameterName": "scale", - "parameterTypeTokenRange": { - "startIndex": 5, - "endIndex": 6 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "fromRotationTranslationScale" - }, - { - "kind": "Method", - "canonicalReference": "server!Matrix4.fromRotationTranslationScaleOrigin:member(1)", - "docComment": "/**\n * Creates a new `Matrix4` instance from a rotation, translation, scale, and origin.\n *\n * @param rotation - The rotation of the matrix.\n *\n * @param translation - The translation of the matrix.\n *\n * @param scale - The scale of the matrix.\n *\n * @param origin - The origin of the matrix.\n *\n * @returns A new `Matrix4` instance.\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "static fromRotationTranslationScaleOrigin(rotation: " - }, - { - "kind": "Reference", - "text": "Quaternion", - "canonicalReference": "server!Quaternion:class" - }, - { - "kind": "Content", - "text": ", translation: " - }, - { - "kind": "Reference", - "text": "Vector3", - "canonicalReference": "server!Vector3:class" - }, + "kind": "Method", + "canonicalReference": "server!NetworkMetrics#recordBytesReceived:member(1)", + "docComment": "", + "excerptTokens": [ { "kind": "Content", - "text": ", scale: " - }, - { - "kind": "Reference", - "text": "Vector3", - "canonicalReference": "server!Vector3:class" + "text": "recordBytesReceived(bytes: " }, { "kind": "Content", - "text": ", origin: " - }, - { - "kind": "Reference", - "text": "Vector3", - "canonicalReference": "server!Vector3:class" + "text": "number" }, { "kind": "Content", "text": "): " }, { - "kind": "Reference", - "text": "Matrix4", - "canonicalReference": "server!Matrix4:class" + "kind": "Content", + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isStatic": true, + "isStatic": false, "returnTypeTokenRange": { - "startIndex": 9, - "endIndex": 10 + "startIndex": 3, + "endIndex": 4 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, "parameters": [ { - "parameterName": "rotation", + "parameterName": "bytes", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, "isOptional": false - }, - { - "parameterName": "translation", - "parameterTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "isOptional": false - }, - { - "parameterName": "scale", - "parameterTypeTokenRange": { - "startIndex": 5, - "endIndex": 6 - }, - "isOptional": false - }, - { - "parameterName": "origin", - "parameterTypeTokenRange": { - "startIndex": 7, - "endIndex": 8 - }, - "isOptional": false } ], "isOptional": false, "isAbstract": false, - "name": "fromRotationTranslationScaleOrigin" + "name": "recordBytesReceived" }, { "kind": "Method", - "canonicalReference": "server!Matrix4.fromScaling:member(1)", - "docComment": "/**\n * Creates a new `Matrix4` instance from a scale of identity matrix.\n *\n * @param scale - The scale of the matrix.\n *\n * @returns A new `Matrix4` instance.\n */\n", + "canonicalReference": "server!NetworkMetrics#recordBytesSent:member(1)", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "static fromScaling(scale: " + "text": "recordBytesSent(bytes: " }, { - "kind": "Reference", - "text": "Vector3", - "canonicalReference": "server!Vector3:class" + "kind": "Content", + "text": "number" }, { "kind": "Content", "text": "): " }, { - "kind": "Reference", - "text": "Matrix4", - "canonicalReference": "server!Matrix4:class" + "kind": "Content", + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isStatic": true, + "isStatic": false, "returnTypeTokenRange": { "startIndex": 3, "endIndex": 4 @@ -30204,7 +35097,7 @@ "overloadIndex": 1, "parameters": [ { - "parameterName": "scale", + "parameterName": "bytes", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -30214,66 +35107,109 @@ ], "isOptional": false, "isAbstract": false, - "name": "fromScaling" + "name": "recordBytesSent" }, { "kind": "Method", - "canonicalReference": "server!Matrix4.fromTranslation:member(1)", - "docComment": "/**\n * Creates a new `Matrix4` instance from a translation of identity matrix.\n *\n * @param translation - The translation of the matrix.\n *\n * @returns A new `Matrix4` instance.\n */\n", + "canonicalReference": "server!NetworkMetrics#recordCompression:member(1)", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "static fromTranslation(translation: " + "text": "recordCompression(): " }, { - "kind": "Reference", - "text": "Vector3", - "canonicalReference": "server!Vector3:class" + "kind": "Content", + "text": "void" }, { "kind": "Content", - "text": "): " + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [], + "isOptional": false, + "isAbstract": false, + "name": "recordCompression" + }, + { + "kind": "Method", + "canonicalReference": "server!NetworkMetrics#recordPacketReceived:member(1)", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "recordPacketReceived(): " }, { - "kind": "Reference", - "text": "Matrix4", - "canonicalReference": "server!Matrix4:class" + "kind": "Content", + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isStatic": true, + "isStatic": false, "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 + "startIndex": 1, + "endIndex": 2 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, - "parameters": [ + "parameters": [], + "isOptional": false, + "isAbstract": false, + "name": "recordPacketReceived" + }, + { + "kind": "Method", + "canonicalReference": "server!NetworkMetrics#recordPacketSent:member(1)", + "docComment": "", + "excerptTokens": [ { - "parameterName": "translation", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false + "kind": "Content", + "text": "recordPacketSent(): " + }, + { + "kind": "Content", + "text": "void" + }, + { + "kind": "Content", + "text": ";" } ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [], "isOptional": false, "isAbstract": false, - "name": "fromTranslation" + "name": "recordPacketSent" }, { "kind": "Method", - "canonicalReference": "server!Matrix4.fromXRotation:member(1)", - "docComment": "/**\n * Creates a new `Matrix4` instance from an x-rotation of identity matrix.\n *\n * @param angle - The angle in radians to rotate the matrix by.\n *\n * @returns A new `Matrix4` instance.\n */\n", + "canonicalReference": "server!NetworkMetrics#recordSerialization:member(1)", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "static fromXRotation(angle: " + "text": "recordSerialization(durationMs: " }, { "kind": "Content", @@ -30284,16 +35220,15 @@ "text": "): " }, { - "kind": "Reference", - "text": "Matrix4", - "canonicalReference": "server!Matrix4:class" + "kind": "Content", + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isStatic": true, + "isStatic": false, "returnTypeTokenRange": { "startIndex": 3, "endIndex": 4 @@ -30303,7 +35238,7 @@ "overloadIndex": 1, "parameters": [ { - "parameterName": "angle", + "parameterName": "durationMs", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -30313,16 +35248,16 @@ ], "isOptional": false, "isAbstract": false, - "name": "fromXRotation" + "name": "recordSerialization" }, { "kind": "Method", - "canonicalReference": "server!Matrix4.fromYRotation:member(1)", - "docComment": "/**\n * Creates a new `Matrix4` instance from a y-rotation of identity matrix.\n *\n * @param angle - The angle in radians to rotate the matrix by.\n *\n * @returns A new `Matrix4` instance.\n */\n", + "canonicalReference": "server!NetworkMetrics#setConnectedPlayers:member(1)", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "static fromYRotation(angle: " + "text": "setConnectedPlayers(count: " }, { "kind": "Content", @@ -30333,16 +35268,15 @@ "text": "): " }, { - "kind": "Reference", - "text": "Matrix4", - "canonicalReference": "server!Matrix4:class" + "kind": "Content", + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isStatic": true, + "isStatic": false, "returnTypeTokenRange": { "startIndex": 3, "endIndex": 4 @@ -30352,7 +35286,7 @@ "overloadIndex": 1, "parameters": [ { - "parameterName": "angle", + "parameterName": "count", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -30362,16 +35296,34 @@ ], "isOptional": false, "isAbstract": false, - "name": "fromYRotation" - }, + "name": "setConnectedPlayers" + } + ], + "implementsTokenRanges": [] + }, + { + "kind": "Interface", + "canonicalReference": "server!NetworkMetricsSnapshot:interface", + "docComment": "", + "excerptTokens": [ { - "kind": "Method", - "canonicalReference": "server!Matrix4.fromZRotation:member(1)", - "docComment": "/**\n * Creates a new `Matrix4` instance from a z-rotation of identity matrix.\n *\n * @param angle - The angle in radians to rotate the matrix by.\n *\n * @returns A new `Matrix4` instance.\n */\n", + "kind": "Content", + "text": "export interface NetworkMetricsSnapshot " + } + ], + "fileUrlPath": "src/metrics/NetworkMetrics.ts", + "releaseTag": "Public", + "name": "NetworkMetricsSnapshot", + "preserveMemberOrder": false, + "members": [ + { + "kind": "PropertySignature", + "canonicalReference": "server!NetworkMetricsSnapshot#avgSerializationMs:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "static fromZRotation(angle: " + "text": "avgSerializationMs: " }, { "kind": "Content", @@ -30379,48 +35331,80 @@ }, { "kind": "Content", - "text": "): " + "text": ";" + } + ], + "isReadonly": false, + "isOptional": false, + "releaseTag": "Public", + "name": "avgSerializationMs", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!NetworkMetricsSnapshot#bytesReceivedPerSecond:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "bytesReceivedPerSecond: " }, { - "kind": "Reference", - "text": "Matrix4", - "canonicalReference": "server!Matrix4:class" + "kind": "Content", + "text": "number" }, { "kind": "Content", "text": ";" } ], - "isStatic": true, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, + "isReadonly": false, + "isOptional": false, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ + "name": "bytesReceivedPerSecond", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!NetworkMetricsSnapshot#bytesReceivedTotal:member", + "docComment": "", + "excerptTokens": [ { - "parameterName": "angle", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false + "kind": "Content", + "text": "bytesReceivedTotal: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ";" } ], + "isReadonly": false, "isOptional": false, - "isAbstract": false, - "name": "fromZRotation" + "releaseTag": "Public", + "name": "bytesReceivedTotal", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } }, { - "kind": "Method", - "canonicalReference": "server!Matrix4#frustrum:member(1)", - "docComment": "/**\n * Sets the current matrix to a frustrum matrix with the given bounds.\n *\n * @param left - The left bound of the projection.\n *\n * @param right - The right bound of the projection.\n *\n * @param bottom - The bottom bound of the projection.\n *\n * @param top - The top bound of the projection.\n *\n * @param near - The near bound of the projection.\n *\n * @param far - The far bound of the projection.\n *\n * @returns The current matrix.\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!NetworkMetricsSnapshot#bytesSentPerSecond:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "frustrum(left: " + "text": "bytesSentPerSecond: " }, { "kind": "Content", @@ -30428,7 +35412,26 @@ }, { "kind": "Content", - "text": ", right: " + "text": ";" + } + ], + "isReadonly": false, + "isOptional": false, + "releaseTag": "Public", + "name": "bytesSentPerSecond", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!NetworkMetricsSnapshot#bytesSentTotal:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "bytesSentTotal: " }, { "kind": "Content", @@ -30436,7 +35439,26 @@ }, { "kind": "Content", - "text": ", bottom: " + "text": ";" + } + ], + "isReadonly": false, + "isOptional": false, + "releaseTag": "Public", + "name": "bytesSentTotal", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!NetworkMetricsSnapshot#compressionCount:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "compressionCount: " }, { "kind": "Content", @@ -30444,7 +35466,26 @@ }, { "kind": "Content", - "text": ", top: " + "text": ";" + } + ], + "isReadonly": false, + "isOptional": false, + "releaseTag": "Public", + "name": "compressionCount", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!NetworkMetricsSnapshot#connectedPlayers:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "connectedPlayers: " }, { "kind": "Content", @@ -30452,7 +35493,26 @@ }, { "kind": "Content", - "text": ", near: " + "text": ";" + } + ], + "isReadonly": false, + "isOptional": false, + "releaseTag": "Public", + "name": "connectedPlayers", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!NetworkMetricsSnapshot#packetsReceivedPerSecond:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "packetsReceivedPerSecond: " }, { "kind": "Content", @@ -30460,7 +35520,26 @@ }, { "kind": "Content", - "text": ", far: " + "text": ";" + } + ], + "isReadonly": false, + "isOptional": false, + "releaseTag": "Public", + "name": "packetsReceivedPerSecond", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!NetworkMetricsSnapshot#packetsSentPerSecond:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "packetsSentPerSecond: " }, { "kind": "Content", @@ -30468,286 +35547,320 @@ }, { "kind": "Content", - "text": "): " + "text": ";" + } + ], + "isReadonly": false, + "isOptional": false, + "releaseTag": "Public", + "name": "packetsSentPerSecond", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + } + ], + "extendsTokenRanges": [] + }, + { + "kind": "Interface", + "canonicalReference": "server!NoneColliderOptions:interface", + "docComment": "/**\n * The options for an error type \"none\" collider.\n *\n * Use for: explicitly disabling collider creation. Do NOT use for: physical interactions; no collider will be created.\n *\n * **Category:** Physics\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export interface NoneColliderOptions extends " + }, + { + "kind": "Reference", + "text": "BaseColliderOptions", + "canonicalReference": "server!BaseColliderOptions:interface" + }, + { + "kind": "Content", + "text": " " + } + ], + "fileUrlPath": "src/worlds/physics/Collider.ts", + "releaseTag": "Public", + "name": "NoneColliderOptions", + "preserveMemberOrder": false, + "members": [ + { + "kind": "PropertySignature", + "canonicalReference": "server!NoneColliderOptions#shape:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "shape: " }, { "kind": "Reference", - "text": "Matrix4", - "canonicalReference": "server!Matrix4:class" + "text": "ColliderShape.NONE", + "canonicalReference": "server!ColliderShape.NONE:member" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 13, - "endIndex": 14 - }, + "isReadonly": false, + "isOptional": false, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ + "name": "shape", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + } + ], + "extendsTokenRanges": [ + { + "startIndex": 1, + "endIndex": 2 + } + ] + }, + { + "kind": "Interface", + "canonicalReference": "server!OperationStats:interface", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "export interface OperationStats " + } + ], + "fileUrlPath": "src/metrics/PerformanceMonitor.ts", + "releaseTag": "Public", + "name": "OperationStats", + "preserveMemberOrder": false, + "members": [ + { + "kind": "PropertySignature", + "canonicalReference": "server!OperationStats#avgMs:member", + "docComment": "", + "excerptTokens": [ { - "parameterName": "left", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false + "kind": "Content", + "text": "avgMs: " }, { - "parameterName": "right", - "parameterTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "isOptional": false + "kind": "Content", + "text": "number" }, { - "parameterName": "bottom", - "parameterTypeTokenRange": { - "startIndex": 5, - "endIndex": 6 - }, - "isOptional": false - }, + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": false, + "releaseTag": "Public", + "name": "avgMs", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!OperationStats#count:member", + "docComment": "", + "excerptTokens": [ { - "parameterName": "top", - "parameterTypeTokenRange": { - "startIndex": 7, - "endIndex": 8 - }, - "isOptional": false + "kind": "Content", + "text": "count: " }, { - "parameterName": "near", - "parameterTypeTokenRange": { - "startIndex": 9, - "endIndex": 10 - }, - "isOptional": false + "kind": "Content", + "text": "number" }, { - "parameterName": "far", - "parameterTypeTokenRange": { - "startIndex": 11, - "endIndex": 12 - }, - "isOptional": false + "kind": "Content", + "text": ";" } ], + "isReadonly": false, "isOptional": false, - "isAbstract": false, - "name": "frustrum" + "releaseTag": "Public", + "name": "count", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } }, { - "kind": "Method", - "canonicalReference": "server!Matrix4#identity:member(1)", - "docComment": "/**\n * Sets the current matrix to the identity matrix.\n *\n * @returns The current matrix.\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!OperationStats#lastMs:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "identity(): " + "text": "lastMs: " }, { - "kind": "Reference", - "text": "Matrix4", - "canonicalReference": "server!Matrix4:class" + "kind": "Content", + "text": "number" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { + "isReadonly": false, + "isOptional": false, + "releaseTag": "Public", + "name": "lastMs", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [], - "isOptional": false, - "isAbstract": false, - "name": "identity" + } }, { - "kind": "Method", - "canonicalReference": "server!Matrix4#invert:member(1)", - "docComment": "/**\n * Inverts the current matrix.\n *\n * @returns The current matrix.\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!OperationStats#maxMs:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "invert(): " + "text": "maxMs: " }, { - "kind": "Reference", - "text": "Matrix4", - "canonicalReference": "server!Matrix4:class" + "kind": "Content", + "text": "number" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { + "isReadonly": false, + "isOptional": false, + "releaseTag": "Public", + "name": "maxMs", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [], - "isOptional": false, - "isAbstract": false, - "name": "invert" + } }, { - "kind": "Method", - "canonicalReference": "server!Matrix4#lookAt:member(1)", - "docComment": "/**\n * Sets the current matrix to a look-at matrix with the given eye, center, and up vectors.\n *\n * @param eye - The eye vector of the camera.\n *\n * @param center - The center vector of the camera.\n *\n * @param up - The up vector of the camera.\n *\n * @returns The current matrix.\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!OperationStats#minMs:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "lookAt(eye: " - }, - { - "kind": "Reference", - "text": "Vector3", - "canonicalReference": "server!Vector3:class" + "text": "minMs: " }, { "kind": "Content", - "text": ", center: " - }, - { - "kind": "Reference", - "text": "Vector3", - "canonicalReference": "server!Vector3:class" + "text": "number" }, { "kind": "Content", - "text": ", up: " - }, - { - "kind": "Reference", - "text": "Vector3", - "canonicalReference": "server!Vector3:class" - }, + "text": ";" + } + ], + "isReadonly": false, + "isOptional": false, + "releaseTag": "Public", + "name": "minMs", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!OperationStats#p50Ms:member", + "docComment": "", + "excerptTokens": [ { "kind": "Content", - "text": "): " + "text": "p50Ms: " }, { - "kind": "Reference", - "text": "Matrix4", - "canonicalReference": "server!Matrix4:class" + "kind": "Content", + "text": "number" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 7, - "endIndex": 8 - }, + "isReadonly": false, + "isOptional": false, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ + "name": "p50Ms", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!OperationStats#p95Ms:member", + "docComment": "", + "excerptTokens": [ { - "parameterName": "eye", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false + "kind": "Content", + "text": "p95Ms: " }, { - "parameterName": "center", - "parameterTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "isOptional": false + "kind": "Content", + "text": "number" }, { - "parameterName": "up", - "parameterTypeTokenRange": { - "startIndex": 5, - "endIndex": 6 - }, - "isOptional": false + "kind": "Content", + "text": ";" } ], + "isReadonly": false, "isOptional": false, - "isAbstract": false, - "name": "lookAt" + "releaseTag": "Public", + "name": "p95Ms", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } }, { - "kind": "Method", - "canonicalReference": "server!Matrix4#multiply:member(1)", - "docComment": "/**\n * Multiplies the current matrix by another matrix.\n *\n * @param matrix4 - The matrix to multiply the current matrix by.\n *\n * @returns The current matrix.\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!OperationStats#p99Ms:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "multiply(matrix4: " - }, - { - "kind": "Reference", - "text": "Matrix4", - "canonicalReference": "server!Matrix4:class" + "text": "p99Ms: " }, { "kind": "Content", - "text": "): " - }, - { - "kind": "Reference", - "text": "Matrix4", - "canonicalReference": "server!Matrix4:class" + "text": "number" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "matrix4", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], + "isReadonly": false, "isOptional": false, - "isAbstract": false, - "name": "multiply" + "releaseTag": "Public", + "name": "p99Ms", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } }, { - "kind": "Method", - "canonicalReference": "server!Matrix4#multiplyScalar:member(1)", - "docComment": "/**\n * Multiplies each element of the current matrix by a scalar value.\n *\n * @param scalar - The scalar value to multiply the current matrix elements by.\n *\n * @returns The current matrix.\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!OperationStats#totalMs:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "multiplyScalar(scalar: " + "text": "totalMs: " }, { "kind": "Content", @@ -30755,48 +35868,72 @@ }, { "kind": "Content", - "text": "): " + "text": ";" + } + ], + "isReadonly": false, + "isOptional": false, + "releaseTag": "Public", + "name": "totalMs", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + } + ], + "extendsTokenRanges": [] + }, + { + "kind": "Interface", + "canonicalReference": "server!Outline:interface", + "docComment": "/**\n * The options for rendering an outline.\n *\n * **Category:** Types\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "interface Outline " + } + ], + "fileUrlPath": "src/shared/types/Outline.ts", + "releaseTag": "Public", + "name": "Outline", + "preserveMemberOrder": false, + "members": [ + { + "kind": "PropertySignature", + "canonicalReference": "server!Outline#color:member", + "docComment": "/**\n * The color of the outline. Defaults to black.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "color?: " }, { "kind": "Reference", - "text": "Matrix4", - "canonicalReference": "server!Matrix4:class" + "text": "RgbColor", + "canonicalReference": "server!RgbColor:interface" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, + "isReadonly": false, + "isOptional": true, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "scalar", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "multiplyScalar" + "name": "color", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } }, { - "kind": "Method", - "canonicalReference": "server!Matrix4#orthographic:member(1)", - "docComment": "/**\n * Sets the current matrix to an orthographic projection matrix with the given bounds.\n *\n * @param left - The left bound of the frustum.\n *\n * @param right - The right bound of the frustum.\n *\n * @param bottom - The bottom bound of the frustum.\n *\n * @param top - The top bound of the frustum.\n *\n * @param near - The near bound of the frustum.\n *\n * @param far - The far bound of the frustum.\n *\n * @returns The current matrix.\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!Outline#colorIntensity:member", + "docComment": "/**\n * The intensity multiplier for the outline color. Use values over 1 for brighter/glowing outlines. Defaults to 1.0.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "orthographic(left: " + "text": "colorIntensity?: " }, { "kind": "Content", @@ -30804,23 +35941,53 @@ }, { "kind": "Content", - "text": ", right: " - }, + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "colorIntensity", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!Outline#occluded:member", + "docComment": "/**\n * Whether the outline should be hidden when the entity is occluded by other objects. If false, the outline is always visible (shows through walls). Defaults to true.\n */\n", + "excerptTokens": [ { "kind": "Content", - "text": "number" + "text": "occluded?: " }, { "kind": "Content", - "text": ", bottom: " + "text": "boolean" }, { "kind": "Content", - "text": "number" - }, + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "occluded", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!Outline#opacity:member", + "docComment": "/**\n * The opacity of the outline between 0 and 1. Defaults to 1.0.\n */\n", + "excerptTokens": [ { "kind": "Content", - "text": ", top: " + "text": "opacity?: " }, { "kind": "Content", @@ -30828,128 +35995,218 @@ }, { "kind": "Content", - "text": ", near: " - }, + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "opacity", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!Outline#thickness:member", + "docComment": "/**\n * The thickness of the outline in world units. Defaults to 0.03.\n */\n", + "excerptTokens": [ { "kind": "Content", - "text": "number" + "text": "thickness?: " }, { "kind": "Content", - "text": ", far: " + "text": "number" }, { "kind": "Content", - "text": "number" - }, + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "thickness", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + } + ], + "extendsTokenRanges": [] + }, + { + "kind": "Class", + "canonicalReference": "server!ParticleEmitter:class", + "docComment": "/**\n * Represents a particle emitter in the world. Emit 2D particles that always face the camera.\n *\n * @remarks\n *\n * Particle emitters are created directly as instances. They support a variety of configuration options through the `ParticleEmitterOptions` constructor argument.\n *\n *

Events

\n *\n * This class is an EventRouter, and instance of it emit events with payloads listed under `ParticleEmitterEventPayloads`.\n *\n * @example\n * ```typescript\n * const particleEmitter = new ParticleEmitter({\n * textureUri: 'textures/particles/smoke.png',\n * });\n *\n * particleEmitter.spawn(world);\n * ```\n *\n * **Category:** Particles\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export default class ParticleEmitter extends " + }, + { + "kind": "Reference", + "text": "EventRouter", + "canonicalReference": "server!EventRouter:class" + }, + { + "kind": "Content", + "text": " implements " + }, + { + "kind": "Reference", + "text": "protocol.Serializable", + "canonicalReference": "@hytopia.com/server-protocol!Serializable:interface" + }, + { + "kind": "Content", + "text": " " + } + ], + "fileUrlPath": "src/worlds/particles/ParticleEmitter.ts", + "releaseTag": "Public", + "isAbstract": false, + "name": "ParticleEmitter", + "preserveMemberOrder": false, + "members": [ + { + "kind": "Constructor", + "canonicalReference": "server!ParticleEmitter:constructor(1)", + "docComment": "/**\n * Constructs a new instance of the `ParticleEmitter` class\n */\n", + "excerptTokens": [ { "kind": "Content", - "text": "): " + "text": "constructor(options: " }, { "kind": "Reference", - "text": "Matrix4", - "canonicalReference": "server!Matrix4:class" + "text": "ParticleEmitterOptions", + "canonicalReference": "server!ParticleEmitterOptions:interface" }, { "kind": "Content", - "text": ";" + "text": ");" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 13, - "endIndex": 14 - }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, "parameters": [ { - "parameterName": "left", + "parameterName": "options", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, "isOptional": false - }, - { - "parameterName": "right", - "parameterTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "isOptional": false - }, - { - "parameterName": "bottom", - "parameterTypeTokenRange": { - "startIndex": 5, - "endIndex": 6 - }, - "isOptional": false - }, + } + ] + }, + { + "kind": "Property", + "canonicalReference": "server!ParticleEmitter#alphaTest:member", + "docComment": "/**\n * The alpha test value, discards particle texture pixels with alpha opacity less than this value.\n */\n", + "excerptTokens": [ { - "parameterName": "top", - "parameterTypeTokenRange": { - "startIndex": 7, - "endIndex": 8 - }, - "isOptional": false + "kind": "Content", + "text": "get alphaTest(): " }, { - "parameterName": "near", - "parameterTypeTokenRange": { - "startIndex": 9, - "endIndex": 10 - }, - "isOptional": false + "kind": "Content", + "text": "number | undefined" }, { - "parameterName": "far", - "parameterTypeTokenRange": { - "startIndex": 11, - "endIndex": 12 - }, - "isOptional": false + "kind": "Content", + "text": ";" } ], + "isReadonly": true, "isOptional": false, - "isAbstract": false, - "name": "orthographic" + "releaseTag": "Public", + "name": "alphaTest", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "Method", - "canonicalReference": "server!Matrix4#perspective:member(1)", - "docComment": "/**\n * Sets the current matrix to a perspective matrix with the given field of view, aspect ratio, and near and far bounds.\n *\n * @param fovy - The field of view of the projection.\n *\n * @param aspect - The aspect ratio of the projection.\n *\n * @param near - The near bound of the projection.\n *\n * @param far - The far bound of the projection.\n *\n * @returns The current matrix.\n */\n", + "kind": "Property", + "canonicalReference": "server!ParticleEmitter#attachedToEntity:member", + "docComment": "/**\n * The entity to which the ParticleEmitter is attached if explicitly set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "perspective(fovy: " + "text": "get attachedToEntity(): " }, { - "kind": "Content", - "text": "number" + "kind": "Reference", + "text": "Entity", + "canonicalReference": "server!Entity:class" }, { "kind": "Content", - "text": ", aspect: " + "text": " | undefined" }, { "kind": "Content", - "text": "number" + "text": ";" + } + ], + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "attachedToEntity", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 3 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false + }, + { + "kind": "Property", + "canonicalReference": "server!ParticleEmitter#attachedToEntityNodeName:member", + "docComment": "/**\n * The name of the node of the attached entity (if the attached entity is a model entity) to attach the particle emitter to.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "get attachedToEntityNodeName(): " }, { "kind": "Content", - "text": ", near: " + "text": "string | undefined" }, { "kind": "Content", - "text": "number" - }, + "text": ";" + } + ], + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "attachedToEntityNodeName", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false + }, + { + "kind": "Method", + "canonicalReference": "server!ParticleEmitter#burst:member(1)", + "docComment": "/**\n * Creates a burst of particles, regardless of pause state.\n *\n * @param count - The number of particles to burst.\n */\n", + "excerptTokens": [ { "kind": "Content", - "text": ", far: " + "text": "burst(count: " }, { "kind": "Content", @@ -30960,9 +36217,8 @@ "text": "): " }, { - "kind": "Reference", - "text": "Matrix4", - "canonicalReference": "server!Matrix4:class" + "kind": "Content", + "text": "void" }, { "kind": "Content", @@ -30971,285 +36227,298 @@ ], "isStatic": false, "returnTypeTokenRange": { - "startIndex": 9, - "endIndex": 10 + "startIndex": 3, + "endIndex": 4 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, "parameters": [ { - "parameterName": "fovy", + "parameterName": "count", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, "isOptional": false - }, - { - "parameterName": "aspect", - "parameterTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "isOptional": false - }, - { - "parameterName": "near", - "parameterTypeTokenRange": { - "startIndex": 5, - "endIndex": 6 - }, - "isOptional": false - }, - { - "parameterName": "far", - "parameterTypeTokenRange": { - "startIndex": 7, - "endIndex": 8 - }, - "isOptional": false } ], "isOptional": false, "isAbstract": false, - "name": "perspective" + "name": "burst" }, { - "kind": "Method", - "canonicalReference": "server!Matrix4#rotate:member(1)", - "docComment": "/**\n * Rotates the current matrix by an angle in radians around an axis.\n *\n * @param angle - The angle in radians to rotate the current matrix by.\n *\n * @param axis - The axis to rotate the current matrix around.\n *\n * @returns The current matrix.\n */\n", + "kind": "Property", + "canonicalReference": "server!ParticleEmitter#colorEnd:member", + "docComment": "/**\n * The color of an emitted particle at the end of its lifetime.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "rotate(angle: " + "text": "get colorEnd(): " }, { - "kind": "Content", - "text": "number" + "kind": "Reference", + "text": "RgbColor", + "canonicalReference": "server!RgbColor:interface" }, { "kind": "Content", - "text": ", axis: " + "text": " | undefined" }, { - "kind": "Reference", - "text": "Vector3", - "canonicalReference": "server!Vector3:class" - }, + "kind": "Content", + "text": ";" + } + ], + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "colorEnd", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 3 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false + }, + { + "kind": "Property", + "canonicalReference": "server!ParticleEmitter#colorEndVariance:member", + "docComment": "/**\n * The color variance of an emitted particle at the end of its lifetime.\n */\n", + "excerptTokens": [ { "kind": "Content", - "text": "): " + "text": "get colorEndVariance(): " }, { "kind": "Reference", - "text": "Matrix4", - "canonicalReference": "server!Matrix4:class" + "text": "RgbColor", + "canonicalReference": "server!RgbColor:interface" + }, + { + "kind": "Content", + "text": " | undefined" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 5, - "endIndex": 6 - }, + "isReadonly": true, + "isOptional": false, "releaseTag": "Public", + "name": "colorEndVariance", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 3 + }, + "isStatic": false, "isProtected": false, - "overloadIndex": 1, - "parameters": [ + "isAbstract": false + }, + { + "kind": "Property", + "canonicalReference": "server!ParticleEmitter#colorIntensityEnd:member", + "docComment": "/**\n * The color intensity of an emitted particle at the end of its lifetime.\n */\n", + "excerptTokens": [ { - "parameterName": "angle", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false + "kind": "Content", + "text": "get colorIntensityEnd(): " }, { - "parameterName": "axis", - "parameterTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "isOptional": false + "kind": "Content", + "text": "number | undefined" + }, + { + "kind": "Content", + "text": ";" } ], + "isReadonly": true, "isOptional": false, - "isAbstract": false, - "name": "rotate" + "releaseTag": "Public", + "name": "colorIntensityEnd", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "Method", - "canonicalReference": "server!Matrix4#rotateX:member(1)", - "docComment": "/**\n * Rotates the current matrix by an angle in radians around the x-axis.\n *\n * @param angle - The angle in radians to rotate the current matrix by.\n *\n * @returns The current matrix.\n */\n", + "kind": "Property", + "canonicalReference": "server!ParticleEmitter#colorIntensityEndVariance:member", + "docComment": "/**\n * The color intensity variance of an emitted particle at the end of its lifetime.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "rotateX(angle: " + "text": "get colorIntensityEndVariance(): " }, { "kind": "Content", - "text": "number" + "text": "number | undefined" }, { "kind": "Content", - "text": "): " + "text": ";" + } + ], + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "colorIntensityEndVariance", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false + }, + { + "kind": "Property", + "canonicalReference": "server!ParticleEmitter#colorIntensityStart:member", + "docComment": "/**\n * The color intensity of an emitted particle at the start of its lifetime.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "get colorIntensityStart(): " }, { - "kind": "Reference", - "text": "Matrix4", - "canonicalReference": "server!Matrix4:class" + "kind": "Content", + "text": "number | undefined" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, + "isReadonly": true, + "isOptional": false, "releaseTag": "Public", + "name": "colorIntensityStart", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "angle", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "rotateX" + "isAbstract": false }, { - "kind": "Method", - "canonicalReference": "server!Matrix4#rotateY:member(1)", - "docComment": "/**\n * Rotates the current matrix by an angle in radians around the y-axis.\n *\n * @param angle - The angle in radians to rotate the current matrix by.\n *\n * @returns The current matrix.\n */\n", + "kind": "Property", + "canonicalReference": "server!ParticleEmitter#colorIntensityStartVariance:member", + "docComment": "/**\n * The color intensity variance of an emitted particle at the start of its lifetime.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "rotateY(angle: " + "text": "get colorIntensityStartVariance(): " }, { "kind": "Content", - "text": "number" + "text": "number | undefined" }, { "kind": "Content", - "text": "): " + "text": ";" + } + ], + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "colorIntensityStartVariance", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false + }, + { + "kind": "Property", + "canonicalReference": "server!ParticleEmitter#colorStart:member", + "docComment": "/**\n * The color of an emitted particle at the start of its lifetime.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "get colorStart(): " }, { "kind": "Reference", - "text": "Matrix4", - "canonicalReference": "server!Matrix4:class" + "text": "RgbColor", + "canonicalReference": "server!RgbColor:interface" + }, + { + "kind": "Content", + "text": " | undefined" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, + "isReadonly": true, + "isOptional": false, "releaseTag": "Public", + "name": "colorStart", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 3 + }, + "isStatic": false, "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "angle", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "rotateY" + "isAbstract": false }, { - "kind": "Method", - "canonicalReference": "server!Matrix4#rotateZ:member(1)", - "docComment": "/**\n * Rotates the current matrix by an angle in radians around the z-axis.\n *\n * @param angle - The angle in radians to rotate the current matrix by.\n *\n * @returns The current matrix.\n */\n", + "kind": "Property", + "canonicalReference": "server!ParticleEmitter#colorStartVariance:member", + "docComment": "/**\n * The color variance of an emitted particle at the start of its lifetime.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "rotateZ(angle: " + "text": "get colorStartVariance(): " }, { - "kind": "Content", - "text": "number" + "kind": "Reference", + "text": "RgbColor", + "canonicalReference": "server!RgbColor:interface" }, { "kind": "Content", - "text": "): " - }, - { - "kind": "Reference", - "text": "Matrix4", - "canonicalReference": "server!Matrix4:class" + "text": " | undefined" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, + "isReadonly": true, + "isOptional": false, "releaseTag": "Public", + "name": "colorStartVariance", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 3 + }, + "isStatic": false, "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "angle", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "rotateZ" + "isAbstract": false }, { "kind": "Method", - "canonicalReference": "server!Matrix4#scale:member(1)", - "docComment": "/**\n * Scales the current matrix by a vector.\n *\n * @param vector3 - The vector to scale the current matrix by.\n *\n * @returns The current matrix.\n */\n", + "canonicalReference": "server!ParticleEmitter#despawn:member(1)", + "docComment": "/**\n * Despawns the ParticleEmitter from the world.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "scale(vector3: " - }, - { - "kind": "Reference", - "text": "Vector3", - "canonicalReference": "server!Vector3:class" + "text": "despawn(): " }, { "kind": "Content", - "text": "): " - }, - { - "kind": "Reference", - "text": "Matrix4", - "canonicalReference": "server!Matrix4:class" + "text": "void" }, { "kind": "Content", @@ -31258,466 +36527,430 @@ ], "isStatic": false, "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 + "startIndex": 1, + "endIndex": 2 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, - "parameters": [ - { - "parameterName": "vector3", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], + "parameters": [], "isOptional": false, "isAbstract": false, - "name": "scale" + "name": "despawn" }, { - "kind": "Method", - "canonicalReference": "server!Matrix4#subtract:member(1)", - "docComment": "/**\n * Subtracts a matrix from the current matrix.\n *\n * @param matrix4 - The matrix to subtract from the current matrix.\n *\n * @returns The current matrix.\n */\n", + "kind": "Property", + "canonicalReference": "server!ParticleEmitter#gravity:member", + "docComment": "/**\n * The gravity vector for an emitted particle.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "subtract(matrix4: " + "text": "get gravity(): " }, { "kind": "Reference", - "text": "Matrix4", - "canonicalReference": "server!Matrix4:class" + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", - "text": "): " - }, - { - "kind": "Reference", - "text": "Matrix4", - "canonicalReference": "server!Matrix4:class" + "text": " | undefined" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, + "isReadonly": true, + "isOptional": false, "releaseTag": "Public", + "name": "gravity", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 3 + }, + "isStatic": false, "isProtected": false, - "overloadIndex": 1, - "parameters": [ + "isAbstract": false + }, + { + "kind": "Property", + "canonicalReference": "server!ParticleEmitter#id:member", + "docComment": "/**\n * The unique identifier for the ParticlEmitter.\n */\n", + "excerptTokens": [ { - "parameterName": "matrix4", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false + "kind": "Content", + "text": "get id(): " + }, + { + "kind": "Content", + "text": "number | undefined" + }, + { + "kind": "Content", + "text": ";" } ], + "isReadonly": true, "isOptional": false, - "isAbstract": false, - "name": "subtract" + "releaseTag": "Public", + "name": "id", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "Method", - "canonicalReference": "server!Matrix4#targetTo:member(1)", - "docComment": "/**\n * Sets the current matrix to a matrix that looks at a target.\n *\n * @param eye - The eye vector of the camera.\n *\n * @param center - The center vector of the camera.\n *\n * @param up - The up vector of the camera.\n *\n * @returns The current matrix.\n */\n", + "kind": "Property", + "canonicalReference": "server!ParticleEmitter#isSpawned:member", + "docComment": "/**\n * Whether the ParticleEmitter is spawned in the world.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "targetTo(eye: " + "text": "get isSpawned(): " }, { - "kind": "Reference", - "text": "Vector3", - "canonicalReference": "server!Vector3:class" + "kind": "Content", + "text": "boolean" }, { "kind": "Content", - "text": ", center: " + "text": ";" + } + ], + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "isSpawned", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false + }, + { + "kind": "Property", + "canonicalReference": "server!ParticleEmitter#lifetime:member", + "docComment": "/**\n * The lifetime of an emitted particle in seconds.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "get lifetime(): " }, { - "kind": "Reference", - "text": "Vector3", - "canonicalReference": "server!Vector3:class" + "kind": "Content", + "text": "number | undefined" }, { "kind": "Content", - "text": ", up: " - }, - { - "kind": "Reference", - "text": "Vector3", - "canonicalReference": "server!Vector3:class" + "text": ";" + } + ], + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "lifetime", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false + }, + { + "kind": "Property", + "canonicalReference": "server!ParticleEmitter#lifetimeVariance:member", + "docComment": "/**\n * The lifetime variance of an emitted particle in seconds.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "get lifetimeVariance(): " }, { "kind": "Content", - "text": "): " - }, - { - "kind": "Reference", - "text": "Matrix4", - "canonicalReference": "server!Matrix4:class" + "text": "number | undefined" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 7, - "endIndex": 8 - }, + "isReadonly": true, + "isOptional": false, "releaseTag": "Public", + "name": "lifetimeVariance", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, "isProtected": false, - "overloadIndex": 1, - "parameters": [ + "isAbstract": false + }, + { + "kind": "Property", + "canonicalReference": "server!ParticleEmitter#lockToEmitter:member", + "docComment": "/**\n * Whether emitted particles follow the emitter's world position. Cannot be changed after construction.\n */\n", + "excerptTokens": [ { - "parameterName": "eye", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false + "kind": "Content", + "text": "get lockToEmitter(): " }, { - "parameterName": "center", - "parameterTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "isOptional": false + "kind": "Content", + "text": "boolean" }, { - "parameterName": "up", - "parameterTypeTokenRange": { - "startIndex": 5, - "endIndex": 6 - }, - "isOptional": false + "kind": "Content", + "text": ";" } ], + "isReadonly": true, "isOptional": false, - "isAbstract": false, - "name": "targetTo" + "releaseTag": "Public", + "name": "lockToEmitter", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "Method", - "canonicalReference": "server!Matrix4#toString:member(1)", - "docComment": "/**\n * Returns a string representation of the current matrix.\n *\n * @returns A string representation of the current matrix.\n */\n", + "kind": "Property", + "canonicalReference": "server!ParticleEmitter#maxParticles:member", + "docComment": "/**\n * The maximum number of live particles.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "toString(): " + "text": "get maxParticles(): " }, { "kind": "Content", - "text": "string" + "text": "number | undefined" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "maxParticles", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "releaseTag": "Public", + "isStatic": false, "isProtected": false, - "overloadIndex": 1, - "parameters": [], - "isOptional": false, - "isAbstract": false, - "name": "toString" + "isAbstract": false }, { - "kind": "Method", - "canonicalReference": "server!Matrix4#translate:member(1)", - "docComment": "/**\n * Translates the current matrix by a vector.\n *\n * @param vector3 - The vector to translate the current matrix by.\n *\n * @returns The current matrix.\n */\n", + "kind": "Property", + "canonicalReference": "server!ParticleEmitter#offset:member", + "docComment": "/**\n * The offset of the particle emitter from the attached entity or position.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "translate(vector3: " + "text": "get offset(): " }, { "kind": "Reference", - "text": "Vector3", - "canonicalReference": "server!Vector3:class" + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", - "text": "): " - }, - { - "kind": "Reference", - "text": "Matrix4", - "canonicalReference": "server!Matrix4:class" + "text": " | undefined" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, + "isReadonly": true, + "isOptional": false, "releaseTag": "Public", + "name": "offset", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 3 + }, + "isStatic": false, "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "vector3", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "translate" + "isAbstract": false }, { - "kind": "Method", - "canonicalReference": "server!Matrix4#transpose:member(1)", - "docComment": "/**\n * Transposes the current matrix.\n *\n * @returns The current matrix.\n */\n", + "kind": "Property", + "canonicalReference": "server!ParticleEmitter#opacityEnd:member", + "docComment": "/**\n * The opacity of an emitted particle at the end of its lifetime.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "transpose(): " + "text": "get opacityEnd(): " }, { - "kind": "Reference", - "text": "Matrix4", - "canonicalReference": "server!Matrix4:class" + "kind": "Content", + "text": "number | undefined" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "opacityEnd", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "releaseTag": "Public", + "isStatic": false, "isProtected": false, - "overloadIndex": 1, - "parameters": [], - "isOptional": false, - "isAbstract": false, - "name": "transpose" - } - ], - "extendsTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "implementsTokenRanges": [] - }, - { - "kind": "TypeAlias", - "canonicalReference": "server!ModelBoundingBox:type", - "docComment": "/**\n * A bounding box for a model.\n *\n * **Category:** Models\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export type ModelBoundingBox = " - }, - { - "kind": "Content", - "text": "{\n min: " - }, - { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" - }, - { - "kind": "Content", - "text": ";\n max: " - }, - { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" - }, - { - "kind": "Content", - "text": ";\n}" - }, - { - "kind": "Content", - "text": ";" - } - ], - "fileUrlPath": "src/models/ModelRegistry.ts", - "releaseTag": "Public", - "name": "ModelBoundingBox", - "typeTokenRange": { - "startIndex": 1, - "endIndex": 6 - } - }, - { - "kind": "Interface", - "canonicalReference": "server!ModelEntityOptions:interface", - "docComment": "/**\n * The options for creating a model entity.\n *\n * Use for: entities rendered from a glTF model. Do NOT use for: block entities; use `BlockEntityOptions`.\n *\n * **Category:** Entities\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export interface ModelEntityOptions extends " - }, - { - "kind": "Reference", - "text": "BaseEntityOptions", - "canonicalReference": "server!BaseEntityOptions:interface" + "isAbstract": false }, { - "kind": "Content", - "text": " " - } - ], - "fileUrlPath": "src/worlds/entities/Entity.ts", - "releaseTag": "Public", - "name": "ModelEntityOptions", - "preserveMemberOrder": false, - "members": [ - { - "kind": "PropertySignature", - "canonicalReference": "server!ModelEntityOptions#modelAnimations:member", - "docComment": "/**\n * The model animation options for animations to configure immediately.\n */\n", + "kind": "Property", + "canonicalReference": "server!ParticleEmitter#opacityEndVariance:member", + "docComment": "/**\n * The opacity variance of an emitted particle at the end of its lifetime.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "modelAnimations?: " - }, - { - "kind": "Reference", - "text": "Omit", - "canonicalReference": "!Omit:type" - }, - { - "kind": "Content", - "text": "<" - }, - { - "kind": "Reference", - "text": "EntityModelAnimationOptions", - "canonicalReference": "server!EntityModelAnimationOptions:interface" + "text": "get opacityEndVariance(): " }, { "kind": "Content", - "text": ", 'entity'>[]" + "text": "number | undefined" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": true, + "isReadonly": true, + "isOptional": false, "releaseTag": "Public", - "name": "modelAnimations", + "name": "opacityEndVariance", "propertyTypeTokenRange": { "startIndex": 1, - "endIndex": 5 - } + "endIndex": 2 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!ModelEntityOptions#modelNodeOverrides:member", - "docComment": "/**\n * The node overrides for the entity's model. `nameMatch` is exact by default, with optional edge wildcard (`head*`, `*head`, `*head*`).\n */\n", + "kind": "Property", + "canonicalReference": "server!ParticleEmitter#opacityStart:member", + "docComment": "/**\n * The opacity of an emitted particle at the start of its lifetime.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "modelNodeOverrides?: " + "text": "get opacityStart(): " }, { - "kind": "Reference", - "text": "Omit", - "canonicalReference": "!Omit:type" + "kind": "Content", + "text": "number | undefined" }, { "kind": "Content", - "text": "<" - }, + "text": ";" + } + ], + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "opacityStart", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false + }, + { + "kind": "Property", + "canonicalReference": "server!ParticleEmitter#opacityStartVariance:member", + "docComment": "/**\n * The opacity variance of an emitted particle at the start of its lifetime.\n */\n", + "excerptTokens": [ { - "kind": "Reference", - "text": "EntityModelNodeOverrideOptions", - "canonicalReference": "server!EntityModelNodeOverrideOptions:interface" + "kind": "Content", + "text": "get opacityStartVariance(): " }, { "kind": "Content", - "text": ", 'entity'>[]" + "text": "number | undefined" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": true, + "isReadonly": true, + "isOptional": false, "releaseTag": "Public", - "name": "modelNodeOverrides", + "name": "opacityStartVariance", "propertyTypeTokenRange": { "startIndex": 1, - "endIndex": 5 - } + "endIndex": 2 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!ModelEntityOptions#modelPreferredShape:member", - "docComment": "/**\n * The preferred shape of the entity's model when automatically generating its collider when no explicit colliders are provided.\n */\n", + "kind": "Property", + "canonicalReference": "server!ParticleEmitter#orientation:member", + "docComment": "/**\n * The orientation mode of emitted particles.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "modelPreferredShape?: " + "text": "get orientation(): " }, { "kind": "Reference", - "text": "ColliderShape", - "canonicalReference": "server!ColliderShape:enum" + "text": "ParticleEmitterOrientation", + "canonicalReference": "server!ParticleEmitterOrientation:type" + }, + { + "kind": "Content", + "text": " | undefined" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": true, + "isReadonly": true, + "isOptional": false, "releaseTag": "Public", - "name": "modelPreferredShape", + "name": "orientation", "propertyTypeTokenRange": { "startIndex": 1, - "endIndex": 2 - } + "endIndex": 3 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!ModelEntityOptions#modelScale:member", - "docComment": "/**\n * The scale of the entity's model. Can be a vector3 for per-axis scaling, or a number for uniform scaling.\n */\n", + "kind": "Property", + "canonicalReference": "server!ParticleEmitter#orientationFixedRotation:member", + "docComment": "/**\n * The fixed rotation of emitted particles in degrees when orientation is 'fixed'.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "modelScale?: " + "text": "get orientationFixedRotation(): " }, { "kind": "Reference", @@ -31726,232 +36959,197 @@ }, { "kind": "Content", - "text": " | number" + "text": " | undefined" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": true, + "isReadonly": true, + "isOptional": false, "releaseTag": "Public", - "name": "modelScale", + "name": "orientationFixedRotation", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 3 - } + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!ModelEntityOptions#modelScaleInterpolationMs:member", - "docComment": "/**\n * The interpolation time in milliseconds applied to model scale changes.\n */\n", + "kind": "Property", + "canonicalReference": "server!ParticleEmitter#paused:member", + "docComment": "/**\n * Whether an emitted particle is being paused.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "modelScaleInterpolationMs?: " + "text": "get paused(): " }, { "kind": "Content", - "text": "number" + "text": "boolean | undefined" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": true, + "isReadonly": true, + "isOptional": false, "releaseTag": "Public", - "name": "modelScaleInterpolationMs", + "name": "paused", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - } + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!ModelEntityOptions#modelTextureUri:member", - "docComment": "/**\n * The texture uri of the entity's model. Setting this overrides the model's default texture.\n */\n", + "kind": "Property", + "canonicalReference": "server!ParticleEmitter#position:member", + "docComment": "/**\n * The position of the particle emitter in the world if explicitly set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "modelTextureUri?: " + "text": "get position(): " + }, + { + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", - "text": "string" + "text": " | undefined" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": true, + "isReadonly": true, + "isOptional": false, "releaseTag": "Public", - "name": "modelTextureUri", + "name": "position", "propertyTypeTokenRange": { "startIndex": 1, - "endIndex": 2 - } + "endIndex": 3 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!ModelEntityOptions#modelUri:member", - "docComment": "/**\n * The URI or path to the .gltf model asset to be used for the entity.\n */\n", + "kind": "Property", + "canonicalReference": "server!ParticleEmitter#positionVariance:member", + "docComment": "/**\n * The position variance of an emitted particle.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "modelUri?: " + "text": "get positionVariance(): " + }, + { + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", - "text": "string" + "text": " | undefined" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": true, + "isReadonly": true, + "isOptional": false, "releaseTag": "Public", - "name": "modelUri", + "name": "positionVariance", "propertyTypeTokenRange": { "startIndex": 1, - "endIndex": 2 - } - } - ], - "extendsTokenRanges": [ - { - "startIndex": 1, - "endIndex": 2 - } - ] - }, - { - "kind": "Class", - "canonicalReference": "server!ModelRegistry:class", - "docComment": "/**\n * Manages model data for all known models of the game.\n *\n * When to use: querying model metadata (bounds, node names, animations, trimesh). Do NOT use for: runtime mesh editing; use dedicated tooling or physics colliders.\n *\n * @remarks\n *\n * The ModelRegistry is created internally as a global singleton accessible via `ModelRegistry.instance`. Model data is preloaded during server startup and cached in memory.\n *\n * Pattern: call `ModelRegistry.hasModel` before accessing metadata to avoid warnings. Anti-pattern: calling `ModelRegistry.getTrimesh` every tick; it may allocate arrays.\n *\n * The constructor for this class is marked as internal. Third-party code should not call the constructor directly or create subclasses that extend the `ModelRegistry` class.\n *\n * @example\n * ```typescript\n * import { ModelRegistry } from 'hytopia';\n *\n * const modelRegistry = ModelRegistry.instance;\n * const boundingBox = modelRegistry.getBoundingBox('models/player.gltf');\n * ```\n *\n * **Category:** Models\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export default class ModelRegistry " - } - ], - "fileUrlPath": "src/models/ModelRegistry.ts", - "releaseTag": "Public", - "isAbstract": false, - "name": "ModelRegistry", - "preserveMemberOrder": false, - "members": [ + "endIndex": 3 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false + }, { - "kind": "Method", - "canonicalReference": "server!ModelRegistry#getAllModelUris:member(1)", - "docComment": "/**\n * Retrieves an array of all available model URIs.\n *\n * @returns An array of all available model URIs.\n *\n * **Category:** Models\n */\n", + "kind": "Property", + "canonicalReference": "server!ParticleEmitter#rate:member", + "docComment": "/**\n * The rate per second at which particles are emitted.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "getAllModelUris(): " + "text": "get rate(): " }, { "kind": "Content", - "text": "string[]" + "text": "number | undefined" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "rate", + "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "releaseTag": "Public", + "isStatic": false, "isProtected": false, - "overloadIndex": 1, - "parameters": [], - "isOptional": false, - "isAbstract": false, - "name": "getAllModelUris" + "isAbstract": false }, { - "kind": "Method", - "canonicalReference": "server!ModelRegistry#getAnimationNames:member(1)", - "docComment": "/**\n * Retrieves an array of all known animation names for a model.\n *\n * @param modelUri - The URI of the model to retrieve the animation names for.\n *\n * @returns An array of all known animation names for the model.\n *\n * **Requires:** Model data must be loaded (server startup).\n *\n * **Category:** Models\n */\n", + "kind": "Property", + "canonicalReference": "server!ParticleEmitter#rateVariance:member", + "docComment": "/**\n * The rate per second variance of the particle emission rate.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "getAnimationNames(modelUri: " - }, - { - "kind": "Content", - "text": "string" - }, - { - "kind": "Content", - "text": "): " - }, - { - "kind": "Reference", - "text": "Readonly", - "canonicalReference": "!Readonly:type" + "text": "get rateVariance(): " }, { "kind": "Content", - "text": "" + "text": "number | undefined" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 5 - }, + "isReadonly": true, + "isOptional": false, "releaseTag": "Public", + "name": "rateVariance", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "modelUri", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "getAnimationNames" + "isAbstract": false }, { "kind": "Method", - "canonicalReference": "server!ModelRegistry#getBoundingBox:member(1)", - "docComment": "/**\n * Retrieves the bounding box of a model.\n *\n * @param modelUri - The URI of the model to retrieve the bounding box for.\n *\n * @returns The bounding box of the model.\n *\n * **Requires:** Model data must be loaded (server startup).\n *\n * **Category:** Models\n */\n", + "canonicalReference": "server!ParticleEmitter#restart:member(1)", + "docComment": "/**\n * Restarts the particle emission if it was previously stopped.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "getBoundingBox(modelUri: " - }, - { - "kind": "Content", - "text": "string" + "text": "restart(): " }, { "kind": "Content", - "text": "): " - }, - { - "kind": "Reference", - "text": "ModelBoundingBox", - "canonicalReference": "server!ModelBoundingBox:type" + "text": "void" }, { "kind": "Content", @@ -31960,38 +37158,29 @@ ], "isStatic": false, "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 + "startIndex": 1, + "endIndex": 2 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, - "parameters": [ - { - "parameterName": "modelUri", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], + "parameters": [], "isOptional": false, "isAbstract": false, - "name": "getBoundingBox" + "name": "restart" }, { "kind": "Method", - "canonicalReference": "server!ModelRegistry#getDepth:member(1)", - "docComment": "/**\n * Retrieves the Z-axis depth of a model for a scale of 1.\n *\n * @param modelUri - The URI of the model to retrieve the depth for.\n *\n * @returns The depth of the model.\n *\n * @see\n *\n * `ModelRegistry.getBoundingBox`\n *\n * **Category:** Models\n */\n", + "canonicalReference": "server!ParticleEmitter#setAlphaTest:member(1)", + "docComment": "/**\n * Sets the alpha test value, discards particle texture pixels with alpha opacity less than this value.\n *\n * @param alphaTest - The alpha test value, discards particle texture pixels with alpha opacity less than this value.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "getDepth(modelUri: " + "text": "setAlphaTest(alphaTest: " }, { "kind": "Content", - "text": "string" + "text": "number" }, { "kind": "Content", @@ -31999,7 +37188,7 @@ }, { "kind": "Content", - "text": "number" + "text": "void" }, { "kind": "Content", @@ -32016,7 +37205,7 @@ "overloadIndex": 1, "parameters": [ { - "parameterName": "modelUri", + "parameterName": "alphaTest", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -32026,20 +37215,21 @@ ], "isOptional": false, "isAbstract": false, - "name": "getDepth" + "name": "setAlphaTest" }, { "kind": "Method", - "canonicalReference": "server!ModelRegistry#getHeight:member(1)", - "docComment": "/**\n * Retrieves the Y-axis height of a model for a scale of 1.\n *\n * @param modelUri - The URI of the model to retrieve the height for.\n *\n * @returns The height of the model.\n *\n * @see\n *\n * `ModelRegistry.getBoundingBox`\n *\n * **Category:** Models\n */\n", + "canonicalReference": "server!ParticleEmitter#setAttachedToEntity:member(1)", + "docComment": "/**\n * Sets the entity to which the ParticleEmitter is attached.\n *\n * @remarks\n *\n * Clears any set position (mutual exclusivity).\n *\n * @param entity - The entity to attach the ParticleEmitter to.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "getHeight(modelUri: " + "text": "setAttachedToEntity(entity: " }, { - "kind": "Content", - "text": "string" + "kind": "Reference", + "text": "Entity", + "canonicalReference": "server!Entity:class" }, { "kind": "Content", @@ -32047,7 +37237,7 @@ }, { "kind": "Content", - "text": "number" + "text": "void" }, { "kind": "Content", @@ -32064,7 +37254,7 @@ "overloadIndex": 1, "parameters": [ { - "parameterName": "modelUri", + "parameterName": "entity", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -32074,16 +37264,16 @@ ], "isOptional": false, "isAbstract": false, - "name": "getHeight" + "name": "setAttachedToEntity" }, { "kind": "Method", - "canonicalReference": "server!ModelRegistry#getNodeNames:member(1)", - "docComment": "/**\n * Retrieves the names of all nodes in a model.\n *\n * @param modelUri - The URI of the model to retrieve the node names for.\n *\n * @returns The names of all nodes in the model.\n *\n * **Requires:** Model data must be loaded (server startup).\n *\n * **Category:** Models\n */\n", + "canonicalReference": "server!ParticleEmitter#setAttachedToEntityNodeName:member(1)", + "docComment": "/**\n * Sets the name of the node of the attached entity (if the attached entity is a model entity) to attach the particle emitter to.\n *\n * @param attachedToEntityNodeName - The name of the node of the attached entity (if the attached entity is a model entity) to attach the particle emitter to.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "getNodeNames(modelUri: " + "text": "setAttachedToEntityNodeName(attachedToEntityNodeName: " }, { "kind": "Content", @@ -32095,7 +37285,7 @@ }, { "kind": "Content", - "text": "string[]" + "text": "void" }, { "kind": "Content", @@ -32112,7 +37302,7 @@ "overloadIndex": 1, "parameters": [ { - "parameterName": "modelUri", + "parameterName": "attachedToEntityNodeName", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -32122,42 +37312,29 @@ ], "isOptional": false, "isAbstract": false, - "name": "getNodeNames" + "name": "setAttachedToEntityNodeName" }, { "kind": "Method", - "canonicalReference": "server!ModelRegistry#getTrimesh:member(1)", - "docComment": "/**\n * Retrieves the trimesh of a model.\n *\n * @param modelUri - The URI of the model to retrieve the trimesh for.\n *\n * @param scale - Optional scaling to apply to the trimesh. Defaults to 1 for all axes (no scaling).\n *\n * @returns The trimesh of the model.\n *\n * **Requires:** Model data must be loaded (server startup).\n *\n * **Category:** Models\n */\n", + "canonicalReference": "server!ParticleEmitter#setColorEnd:member(1)", + "docComment": "/**\n * Sets the color of an emitted particle at the end of its lifetime.\n *\n * @param colorEnd - The color of an emitted particle at the end of its lifetime.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "getTrimesh(modelUri: " - }, - { - "kind": "Content", - "text": "string" - }, - { - "kind": "Content", - "text": ", scale?: " + "text": "setColorEnd(colorEnd: " }, { "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "text": "RgbColor", + "canonicalReference": "server!RgbColor:interface" }, { "kind": "Content", "text": "): " }, - { - "kind": "Reference", - "text": "ModelTrimesh", - "canonicalReference": "server!ModelTrimesh:type" - }, { "kind": "Content", - "text": " | undefined" + "text": "void" }, { "kind": "Content", @@ -32166,46 +37343,39 @@ ], "isStatic": false, "returnTypeTokenRange": { - "startIndex": 5, - "endIndex": 7 + "startIndex": 3, + "endIndex": 4 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, "parameters": [ { - "parameterName": "modelUri", + "parameterName": "colorEnd", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, "isOptional": false - }, - { - "parameterName": "scale", - "parameterTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "isOptional": true } ], "isOptional": false, "isAbstract": false, - "name": "getTrimesh" + "name": "setColorEnd" }, { "kind": "Method", - "canonicalReference": "server!ModelRegistry#getWidth:member(1)", - "docComment": "/**\n * Retrieves the X-axis width of a model for a scale of 1.\n *\n * @param modelUri - The URI of the model to retrieve the width for.\n *\n * @returns The width of the model.\n *\n * @see\n *\n * `ModelRegistry.getBoundingBox`\n *\n * **Category:** Models\n */\n", + "canonicalReference": "server!ParticleEmitter#setColorEndVariance:member(1)", + "docComment": "/**\n * Sets the color variance of an emitted particle at the end of its lifetime.\n *\n * @param colorEndVariance - The color variance of an emitted particle at the end of its lifetime.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "getWidth(modelUri: " + "text": "setColorEndVariance(colorEndVariance: " }, { - "kind": "Content", - "text": "string" + "kind": "Reference", + "text": "RgbColor", + "canonicalReference": "server!RgbColor:interface" }, { "kind": "Content", @@ -32213,7 +37383,7 @@ }, { "kind": "Content", - "text": "number" + "text": "void" }, { "kind": "Content", @@ -32230,7 +37400,7 @@ "overloadIndex": 1, "parameters": [ { - "parameterName": "modelUri", + "parameterName": "colorEndVariance", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -32240,20 +37410,20 @@ ], "isOptional": false, "isAbstract": false, - "name": "getWidth" + "name": "setColorEndVariance" }, { "kind": "Method", - "canonicalReference": "server!ModelRegistry#hasModel:member(1)", - "docComment": "/**\n * Checks if a model is registered in the model registry.\n *\n * @param modelUri - The URI of the model to check.\n *\n * @returns Whether the model is registered.\n *\n * **Category:** Models\n */\n", + "canonicalReference": "server!ParticleEmitter#setColorIntensityEnd:member(1)", + "docComment": "/**\n * Sets the color intensity of an emitted particle at the end of its lifetime.\n *\n * @param colorIntensityEnd - The color intensity at the end of lifetime. Values greater than 1 create HDR/bloom effects.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "hasModel(modelUri: " + "text": "setColorIntensityEnd(colorIntensityEnd: " }, { "kind": "Content", - "text": "string" + "text": "number" }, { "kind": "Content", @@ -32261,7 +37431,7 @@ }, { "kind": "Content", - "text": "boolean" + "text": "void" }, { "kind": "Content", @@ -32278,7 +37448,7 @@ "overloadIndex": 1, "parameters": [ { - "parameterName": "modelUri", + "parameterName": "colorIntensityEnd", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -32288,59 +37458,20 @@ ], "isOptional": false, "isAbstract": false, - "name": "hasModel" - }, - { - "kind": "Property", - "canonicalReference": "server!ModelRegistry.instance:member", - "docComment": "/**\n * The global ModelRegistry instance as a singleton.\n *\n * **Category:** Models\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "static readonly instance: " - }, - { - "kind": "Reference", - "text": "ModelRegistry", - "canonicalReference": "server!ModelRegistry:class" - }, - { - "kind": "Content", - "text": ";" - } - ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "instance", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": true, - "isProtected": false, - "isAbstract": false + "name": "setColorIntensityEnd" }, { "kind": "Method", - "canonicalReference": "server!ModelRegistry#modelHasNode:member(1)", - "docComment": "/**\n * Checks if a model has a node with the given name.\n *\n * @param modelUri - The URI of the model to check.\n *\n * @param nodeName - The name of the node to check for.\n *\n * @returns Whether the model has a node with the given name.\n *\n * **Requires:** Model data must be loaded (server startup).\n *\n * **Category:** Models\n */\n", + "canonicalReference": "server!ParticleEmitter#setColorIntensityEndVariance:member(1)", + "docComment": "/**\n * Sets the color intensity variance of an emitted particle at the end of its lifetime.\n *\n * @param colorIntensityEndVariance - The color intensity variance at the end of lifetime.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "modelHasNode(modelUri: " - }, - { - "kind": "Content", - "text": "string" - }, - { - "kind": "Content", - "text": ", nodeName: " + "text": "setColorIntensityEndVariance(colorIntensityEndVariance: " }, { "kind": "Content", - "text": "string" + "text": "number" }, { "kind": "Content", @@ -32348,7 +37479,7 @@ }, { "kind": "Content", - "text": "boolean" + "text": "void" }, { "kind": "Content", @@ -32357,618 +37488,518 @@ ], "isStatic": false, "returnTypeTokenRange": { - "startIndex": 5, - "endIndex": 6 + "startIndex": 3, + "endIndex": 4 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, "parameters": [ { - "parameterName": "modelUri", + "parameterName": "colorIntensityEndVariance", "parameterTypeTokenRange": { "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - }, - { - "parameterName": "nodeName", - "parameterTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "modelHasNode" - }, - { - "kind": "Property", - "canonicalReference": "server!ModelRegistry#optimize:member", - "docComment": "/**\n * Whether to generate optimized models if needed.\n *\n * Defaults to `true` in development, `false` in production.\n *\n * **Category:** Models\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "optimize: " - }, - { - "kind": "Content", - "text": "boolean" - }, - { - "kind": "Content", - "text": ";" - } - ], - "isReadonly": false, - "isOptional": false, - "releaseTag": "Public", - "name": "optimize", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false - } - ], - "implementsTokenRanges": [] - }, - { - "kind": "TypeAlias", - "canonicalReference": "server!ModelTrimesh:type", - "docComment": "/**\n * A trimesh for a model.\n *\n * **Category:** Models\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export type ModelTrimesh = " - }, - { - "kind": "Content", - "text": "{\n vertices: " - }, - { - "kind": "Reference", - "text": "Float32Array", - "canonicalReference": "!Float32Array:interface" - }, - { - "kind": "Content", - "text": ";\n indices: " - }, - { - "kind": "Reference", - "text": "Uint32Array", - "canonicalReference": "!Uint32Array:interface" - }, - { - "kind": "Content", - "text": ";\n}" - }, - { - "kind": "Content", - "text": ";" - } - ], - "fileUrlPath": "src/models/ModelRegistry.ts", - "releaseTag": "Public", - "name": "ModelTrimesh", - "typeTokenRange": { - "startIndex": 1, - "endIndex": 6 - } - }, - { - "kind": "TypeAlias", - "canonicalReference": "server!MoveCallback:type", - "docComment": "/**\n * Callback invoked as the entity moves toward a target coordinate.\n *\n * @param currentPosition - The current position of the entity.\n *\n * @param targetPosition - The target position of the entity.\n *\n * **Category:** Controllers\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export type MoveCallback = " - }, - { - "kind": "Content", - "text": "(currentPosition: " - }, - { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" - }, - { - "kind": "Content", - "text": ", targetPosition: " - }, - { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" - }, - { - "kind": "Content", - "text": ") => void" - }, - { - "kind": "Content", - "text": ";" - } - ], - "fileUrlPath": "src/worlds/entities/controllers/SimpleEntityController.ts", - "releaseTag": "Public", - "name": "MoveCallback", - "typeTokenRange": { - "startIndex": 1, - "endIndex": 6 - } - }, - { - "kind": "TypeAlias", - "canonicalReference": "server!MoveCompleteCallback:type", - "docComment": "/**\n * Callback invoked when the entity reaches the target coordinate.\n *\n * @param endPosition - The position of the entity after it has finished moving.\n *\n * **Category:** Controllers\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export type MoveCompleteCallback = " - }, - { - "kind": "Content", - "text": "(endPosition: " - }, - { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" - }, - { - "kind": "Content", - "text": ") => void" - }, - { - "kind": "Content", - "text": ";" - } - ], - "fileUrlPath": "src/worlds/entities/controllers/SimpleEntityController.ts", - "releaseTag": "Public", - "name": "MoveCompleteCallback", - "typeTokenRange": { - "startIndex": 1, - "endIndex": 4 - } - }, - { - "kind": "TypeAlias", - "canonicalReference": "server!MoveOptions:type", - "docComment": "/**\n * Options for `SimpleEntityController.move`.\n *\n * Use for: customizing a single `move()` call. Do NOT use for: persistent defaults; use `SimpleEntityControllerOptions`.\n *\n * **Category:** Controllers\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export type MoveOptions = " - }, - { - "kind": "Content", - "text": "{\n moveCallback?: " - }, - { - "kind": "Reference", - "text": "MoveCallback", - "canonicalReference": "server!MoveCallback:type" - }, - { - "kind": "Content", - "text": ";\n moveCompleteCallback?: " - }, - { - "kind": "Reference", - "text": "MoveCompleteCallback", - "canonicalReference": "server!MoveCompleteCallback:type" - }, - { - "kind": "Content", - "text": ";\n moveIgnoreAxes?: {\n x?: boolean;\n y?: boolean;\n z?: boolean;\n };\n moveStartIdleAnimationsOnCompletion?: boolean;\n moveStoppingDistance?: number;\n moveCompletesWhenStuck?: boolean;\n}" - }, - { - "kind": "Content", - "text": ";" - } - ], - "fileUrlPath": "src/worlds/entities/controllers/SimpleEntityController.ts", - "releaseTag": "Public", - "name": "MoveOptions", - "typeTokenRange": { - "startIndex": 1, - "endIndex": 6 - } - }, - { - "kind": "Interface", - "canonicalReference": "server!NoneColliderOptions:interface", - "docComment": "/**\n * The options for an error type \"none\" collider.\n *\n * Use for: explicitly disabling collider creation. Do NOT use for: physical interactions; no collider will be created.\n *\n * **Category:** Physics\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export interface NoneColliderOptions extends " - }, - { - "kind": "Reference", - "text": "BaseColliderOptions", - "canonicalReference": "server!BaseColliderOptions:interface" - }, - { - "kind": "Content", - "text": " " - } - ], - "fileUrlPath": "src/worlds/physics/Collider.ts", - "releaseTag": "Public", - "name": "NoneColliderOptions", - "preserveMemberOrder": false, - "members": [ + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setColorIntensityEndVariance" + }, { - "kind": "PropertySignature", - "canonicalReference": "server!NoneColliderOptions#shape:member", - "docComment": "", + "kind": "Method", + "canonicalReference": "server!ParticleEmitter#setColorIntensityStart:member(1)", + "docComment": "/**\n * Sets the color intensity of an emitted particle at the start of its lifetime.\n *\n * @param colorIntensityStart - The color intensity at the start of lifetime. Values greater than 1 create HDR/bloom effects.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "shape: " + "text": "setColorIntensityStart(colorIntensityStart: " }, { - "kind": "Reference", - "text": "ColliderShape.NONE", - "canonicalReference": "server!ColliderShape.NONE:member" + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Content", + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": false, + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, "releaseTag": "Public", - "name": "shape", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } - } - ], - "extendsTokenRanges": [ - { - "startIndex": 1, - "endIndex": 2 - } - ] - }, - { - "kind": "Interface", - "canonicalReference": "server!Outline:interface", - "docComment": "/**\n * The options for rendering an outline.\n *\n * **Category:** Types\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "interface Outline " - } - ], - "fileUrlPath": "src/shared/types/Outline.ts", - "releaseTag": "Public", - "name": "Outline", - "preserveMemberOrder": false, - "members": [ + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "colorIntensityStart", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setColorIntensityStart" + }, { - "kind": "PropertySignature", - "canonicalReference": "server!Outline#color:member", - "docComment": "/**\n * The color of the outline. Defaults to black.\n */\n", + "kind": "Method", + "canonicalReference": "server!ParticleEmitter#setColorIntensityStartVariance:member(1)", + "docComment": "/**\n * Sets the color intensity variance of an emitted particle at the start of its lifetime.\n *\n * @param colorIntensityStartVariance - The color intensity variance at the start of lifetime.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "color?: " + "text": "setColorIntensityStartVariance(colorIntensityStartVariance: " }, { - "kind": "Reference", - "text": "RgbColor", - "canonicalReference": "server!RgbColor:interface" + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Content", + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": true, + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, "releaseTag": "Public", - "name": "color", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "colorIntensityStartVariance", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setColorIntensityStartVariance" }, { - "kind": "PropertySignature", - "canonicalReference": "server!Outline#colorIntensity:member", - "docComment": "/**\n * The intensity multiplier for the outline color. Use values over 1 for brighter/glowing outlines. Defaults to 1.0.\n */\n", + "kind": "Method", + "canonicalReference": "server!ParticleEmitter#setColorStart:member(1)", + "docComment": "/**\n * Sets the color of an emitted particle at the start of its lifetime.\n *\n * @param colorStart - The color of an emitted particle at the start of its lifetime.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "colorIntensity?: " + "text": "setColorStart(colorStart: " + }, + { + "kind": "Reference", + "text": "RgbColor", + "canonicalReference": "server!RgbColor:interface" }, { "kind": "Content", - "text": "number" + "text": "): " + }, + { + "kind": "Content", + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": true, + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, "releaseTag": "Public", - "name": "colorIntensity", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "colorStart", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setColorStart" }, { - "kind": "PropertySignature", - "canonicalReference": "server!Outline#occluded:member", - "docComment": "/**\n * Whether the outline should be hidden when the entity is occluded by other objects. If false, the outline is always visible (shows through walls). Defaults to true.\n */\n", + "kind": "Method", + "canonicalReference": "server!ParticleEmitter#setColorStartVariance:member(1)", + "docComment": "/**\n * Sets the color variance of an emitted particle at the start of its lifetime.\n *\n * @param colorStartVariance - The color variance of an emitted particle at the start of its lifetime.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "occluded?: " + "text": "setColorStartVariance(colorStartVariance: " + }, + { + "kind": "Reference", + "text": "RgbColor", + "canonicalReference": "server!RgbColor:interface" }, { "kind": "Content", - "text": "boolean" + "text": "): " + }, + { + "kind": "Content", + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": true, + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, "releaseTag": "Public", - "name": "occluded", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "colorStartVariance", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setColorStartVariance" }, { - "kind": "PropertySignature", - "canonicalReference": "server!Outline#opacity:member", - "docComment": "/**\n * The opacity of the outline between 0 and 1. Defaults to 1.0.\n */\n", + "kind": "Method", + "canonicalReference": "server!ParticleEmitter#setGravity:member(1)", + "docComment": "/**\n * Sets the gravity vector for an emitted particle.\n *\n * @param gravity - The gravity vector for an emitted particle.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "opacity?: " + "text": "setGravity(gravity: " + }, + { + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", - "text": "number" + "text": "): " + }, + { + "kind": "Content", + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": true, + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, "releaseTag": "Public", - "name": "opacity", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "gravity", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setGravity" }, { - "kind": "PropertySignature", - "canonicalReference": "server!Outline#thickness:member", - "docComment": "/**\n * The thickness of the outline in world units. Defaults to 0.03.\n */\n", + "kind": "Method", + "canonicalReference": "server!ParticleEmitter#setLifetime:member(1)", + "docComment": "/**\n * Sets the lifetime of an emitted particle in seconds.\n *\n * @param lifetime - The lifetime of an emitted particle in seconds.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "thickness?: " + "text": "setLifetime(lifetime: " }, { "kind": "Content", "text": "number" }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Content", + "text": "void" + }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": true, + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, "releaseTag": "Public", - "name": "thickness", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } - } - ], - "extendsTokenRanges": [] - }, - { - "kind": "Class", - "canonicalReference": "server!ParticleEmitter:class", - "docComment": "/**\n * Represents a particle emitter in the world. Emit 2D particles that always face the camera.\n *\n * @remarks\n *\n * Particle emitters are created directly as instances. They support a variety of configuration options through the `ParticleEmitterOptions` constructor argument.\n *\n *

Events

\n *\n * This class is an EventRouter, and instance of it emit events with payloads listed under `ParticleEmitterEventPayloads`.\n *\n * @example\n * ```typescript\n * const particleEmitter = new ParticleEmitter({\n * textureUri: 'textures/particles/smoke.png',\n * });\n *\n * particleEmitter.spawn(world);\n * ```\n *\n * **Category:** Particles\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export default class ParticleEmitter extends " - }, - { - "kind": "Reference", - "text": "EventRouter", - "canonicalReference": "server!EventRouter:class" - }, - { - "kind": "Content", - "text": " implements " - }, - { - "kind": "Reference", - "text": "protocol.Serializable", - "canonicalReference": "@hytopia.com/server-protocol!Serializable:interface" + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "lifetime", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setLifetime" }, { - "kind": "Content", - "text": " " - } - ], - "fileUrlPath": "src/worlds/particles/ParticleEmitter.ts", - "releaseTag": "Public", - "isAbstract": false, - "name": "ParticleEmitter", - "preserveMemberOrder": false, - "members": [ - { - "kind": "Constructor", - "canonicalReference": "server!ParticleEmitter:constructor(1)", - "docComment": "/**\n * Constructs a new instance of the `ParticleEmitter` class\n */\n", + "kind": "Method", + "canonicalReference": "server!ParticleEmitter#setLifetimeVariance:member(1)", + "docComment": "/**\n * Sets the lifetime variance of an emitted particle in seconds.\n *\n * @param lifetimeVariance - The lifetime variance of an emitted particle in seconds.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "constructor(options: " + "text": "setLifetimeVariance(lifetimeVariance: " }, { - "kind": "Reference", - "text": "ParticleEmitterOptions", - "canonicalReference": "server!ParticleEmitterOptions:interface" + "kind": "Content", + "text": "number" }, { "kind": "Content", - "text": ");" + "text": "): " + }, + { + "kind": "Content", + "text": "void" + }, + { + "kind": "Content", + "text": ";" } ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, "parameters": [ { - "parameterName": "options", + "parameterName": "lifetimeVariance", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, "isOptional": false } - ] + ], + "isOptional": false, + "isAbstract": false, + "name": "setLifetimeVariance" }, { - "kind": "Property", - "canonicalReference": "server!ParticleEmitter#alphaTest:member", - "docComment": "/**\n * The alpha test value, discards particle texture pixels with alpha opacity less than this value.\n */\n", + "kind": "Method", + "canonicalReference": "server!ParticleEmitter#setMaxParticles:member(1)", + "docComment": "/**\n * Sets the maximum number of live particles.\n *\n * @param maxParticles - The maximum number of live particles.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get alphaTest(): " + "text": "setMaxParticles(maxParticles: " }, { "kind": "Content", - "text": "number | undefined" + "text": "number" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Content", + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "alphaTest", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", "isProtected": false, - "isAbstract": false + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "maxParticles", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setMaxParticles" }, { - "kind": "Property", - "canonicalReference": "server!ParticleEmitter#attachedToEntity:member", - "docComment": "/**\n * The entity to which the ParticleEmitter is attached if explicitly set.\n */\n", + "kind": "Method", + "canonicalReference": "server!ParticleEmitter#setOffset:member(1)", + "docComment": "/**\n * Sets the offset of the particle emitter from the attached entity or position.\n *\n * @param offset - The offset of the particle emitter from the attached entity or position.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get attachedToEntity(): " + "text": "setOffset(offset: " }, { "kind": "Reference", - "text": "Entity", - "canonicalReference": "server!Entity:class" + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", - "text": " | undefined" + "text": "): " + }, + { + "kind": "Content", + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "attachedToEntity", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 3 - }, "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", "isProtected": false, - "isAbstract": false + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "offset", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setOffset" }, { - "kind": "Property", - "canonicalReference": "server!ParticleEmitter#attachedToEntityNodeName:member", - "docComment": "/**\n * The name of the node of the attached entity (if the attached entity is a model entity) to attach the particle emitter to.\n */\n", + "kind": "Method", + "canonicalReference": "server!ParticleEmitter#setOpacityEnd:member(1)", + "docComment": "/**\n * Sets the opacity of an emitted particle at the end of its lifetime.\n *\n * @param opacityEnd - The opacity of an emitted particle at the end of its lifetime.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get attachedToEntityNodeName(): " + "text": "setOpacityEnd(opacityEnd: " }, { "kind": "Content", - "text": "string | undefined" + "text": "number" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Content", + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "opacityEnd", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], "isOptional": false, - "releaseTag": "Public", - "name": "attachedToEntityNodeName", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "isAbstract": false, + "name": "setOpacityEnd" }, { "kind": "Method", - "canonicalReference": "server!ParticleEmitter#burst:member(1)", - "docComment": "/**\n * Creates a burst of particles, regardless of pause state.\n *\n * @param count - The number of particles to burst.\n */\n", + "canonicalReference": "server!ParticleEmitter#setOpacityEndVariance:member(1)", + "docComment": "/**\n * Sets the opacity variance of an emitted particle at the end of its lifetime.\n *\n * @param opacityEndVariance - The opacity variance of an emitted particle at the end of its lifetime.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "burst(count: " + "text": "setOpacityEndVariance(opacityEndVariance: " }, { "kind": "Content", @@ -32997,7 +38028,7 @@ "overloadIndex": 1, "parameters": [ { - "parameterName": "count", + "parameterName": "opacityEndVariance", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -33007,276 +38038,219 @@ ], "isOptional": false, "isAbstract": false, - "name": "burst" + "name": "setOpacityEndVariance" }, { - "kind": "Property", - "canonicalReference": "server!ParticleEmitter#colorEnd:member", - "docComment": "/**\n * The color of an emitted particle at the end of its lifetime.\n */\n", + "kind": "Method", + "canonicalReference": "server!ParticleEmitter#setOpacityStart:member(1)", + "docComment": "/**\n * Sets the opacity of an emitted particle at the start of its lifetime.\n *\n * @param opacityStart - The opacity of an emitted particle at the start of its lifetime.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get colorEnd(): " - }, - { - "kind": "Reference", - "text": "RgbColor", - "canonicalReference": "server!RgbColor:interface" + "text": "setOpacityStart(opacityStart: " }, { "kind": "Content", - "text": " | undefined" + "text": "number" }, { "kind": "Content", - "text": ";" - } - ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "colorEnd", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 3 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false - }, - { - "kind": "Property", - "canonicalReference": "server!ParticleEmitter#colorEndVariance:member", - "docComment": "/**\n * The color variance of an emitted particle at the end of its lifetime.\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "get colorEndVariance(): " - }, - { - "kind": "Reference", - "text": "RgbColor", - "canonicalReference": "server!RgbColor:interface" + "text": "): " }, { "kind": "Content", - "text": " | undefined" + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "colorEndVariance", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 3 - }, "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", "isProtected": false, - "isAbstract": false - }, - { - "kind": "Property", - "canonicalReference": "server!ParticleEmitter#colorIntensityEnd:member", - "docComment": "/**\n * The color intensity of an emitted particle at the end of its lifetime.\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "get colorIntensityEnd(): " - }, - { - "kind": "Content", - "text": "number | undefined" - }, + "overloadIndex": 1, + "parameters": [ { - "kind": "Content", - "text": ";" + "parameterName": "opacityStart", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false } ], - "isReadonly": true, "isOptional": false, - "releaseTag": "Public", - "name": "colorIntensityEnd", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "isAbstract": false, + "name": "setOpacityStart" }, { - "kind": "Property", - "canonicalReference": "server!ParticleEmitter#colorIntensityEndVariance:member", - "docComment": "/**\n * The color intensity variance of an emitted particle at the end of its lifetime.\n */\n", + "kind": "Method", + "canonicalReference": "server!ParticleEmitter#setOpacityStartVariance:member(1)", + "docComment": "/**\n * Sets the opacity variance of an emitted particle at the start of its lifetime.\n *\n * @param opacityStartVariance - The opacity variance of an emitted particle at the start of its lifetime.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get colorIntensityEndVariance(): " + "text": "setOpacityStartVariance(opacityStartVariance: " }, { "kind": "Content", - "text": "number | undefined" + "text": "number" }, { "kind": "Content", - "text": ";" - } - ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "colorIntensityEndVariance", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false - }, - { - "kind": "Property", - "canonicalReference": "server!ParticleEmitter#colorIntensityStart:member", - "docComment": "/**\n * The color intensity of an emitted particle at the start of its lifetime.\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "get colorIntensityStart(): " + "text": "): " }, { "kind": "Content", - "text": "number | undefined" + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "colorIntensityStart", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", "isProtected": false, - "isAbstract": false - }, - { - "kind": "Property", - "canonicalReference": "server!ParticleEmitter#colorIntensityStartVariance:member", - "docComment": "/**\n * The color intensity variance of an emitted particle at the start of its lifetime.\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "get colorIntensityStartVariance(): " - }, - { - "kind": "Content", - "text": "number | undefined" - }, + "overloadIndex": 1, + "parameters": [ { - "kind": "Content", - "text": ";" + "parameterName": "opacityStartVariance", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false } ], - "isReadonly": true, "isOptional": false, - "releaseTag": "Public", - "name": "colorIntensityStartVariance", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "isAbstract": false, + "name": "setOpacityStartVariance" }, { - "kind": "Property", - "canonicalReference": "server!ParticleEmitter#colorStart:member", - "docComment": "/**\n * The color of an emitted particle at the start of its lifetime.\n */\n", + "kind": "Method", + "canonicalReference": "server!ParticleEmitter#setOrientation:member(1)", + "docComment": "/**\n * Sets the orientation mode of emitted particles.\n *\n * @param orientation - The orientation mode. 'billboard' faces the camera, 'billboardY' faces the camera but keeps Y-axis upward, 'fixed' uses a fixed rotation.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get colorStart(): " + "text": "setOrientation(orientation: " }, { "kind": "Reference", - "text": "RgbColor", - "canonicalReference": "server!RgbColor:interface" + "text": "ParticleEmitterOrientation", + "canonicalReference": "server!ParticleEmitterOrientation:type" }, { "kind": "Content", - "text": " | undefined" + "text": "): " + }, + { + "kind": "Content", + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "colorStart", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 3 - }, "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", "isProtected": false, - "isAbstract": false + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "orientation", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setOrientation" }, { - "kind": "Property", - "canonicalReference": "server!ParticleEmitter#colorStartVariance:member", - "docComment": "/**\n * The color variance of an emitted particle at the start of its lifetime.\n */\n", + "kind": "Method", + "canonicalReference": "server!ParticleEmitter#setOrientationFixedRotation:member(1)", + "docComment": "/**\n * Sets the fixed rotation of emitted particles when orientation is 'fixed'.\n *\n * @param orientationFixedRotation - The fixed rotation in degrees (x, y, z).\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get colorStartVariance(): " + "text": "setOrientationFixedRotation(orientationFixedRotation: " }, { "kind": "Reference", - "text": "RgbColor", - "canonicalReference": "server!RgbColor:interface" + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", - "text": " | undefined" + "text": "): " + }, + { + "kind": "Content", + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "colorStartVariance", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 3 - }, "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", "isProtected": false, - "isAbstract": false + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "orientationFixedRotation", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setOrientationFixedRotation" }, { "kind": "Method", - "canonicalReference": "server!ParticleEmitter#despawn:member(1)", - "docComment": "/**\n * Despawns the ParticleEmitter from the world.\n */\n", + "canonicalReference": "server!ParticleEmitter#setPosition:member(1)", + "docComment": "/**\n * Sets the position of the particle emitter.\n *\n * @param position - The position of the particle emitter.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "despawn(): " + "text": "setPosition(position: " + }, + { + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" + }, + { + "kind": "Content", + "text": "): " }, { "kind": "Content", @@ -33289,25 +38263,34 @@ ], "isStatic": false, "returnTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 + "startIndex": 3, + "endIndex": 4 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, - "parameters": [], + "parameters": [ + { + "parameterName": "position", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], "isOptional": false, "isAbstract": false, - "name": "despawn" + "name": "setPosition" }, { - "kind": "Property", - "canonicalReference": "server!ParticleEmitter#gravity:member", - "docComment": "/**\n * The gravity vector for an emitted particle.\n */\n", + "kind": "Method", + "canonicalReference": "server!ParticleEmitter#setPositionVariance:member(1)", + "docComment": "/**\n * Sets the position variance of an emitted particle.\n *\n * @param positionVariance - The position variance of an emitted particle.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get gravity(): " + "text": "setPositionVariance(positionVariance: " }, { "kind": "Reference", @@ -33316,403 +38299,480 @@ }, { "kind": "Content", - "text": " | undefined" + "text": "): " + }, + { + "kind": "Content", + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "gravity", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 3 - }, "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", "isProtected": false, - "isAbstract": false + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "positionVariance", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setPositionVariance" }, { - "kind": "Property", - "canonicalReference": "server!ParticleEmitter#id:member", - "docComment": "/**\n * The unique identifier for the ParticlEmitter.\n */\n", + "kind": "Method", + "canonicalReference": "server!ParticleEmitter#setRate:member(1)", + "docComment": "/**\n * Sets the rate per second at which particles are emitted.\n *\n * @param rate - The rate per second at which particles are emitted.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get id(): " + "text": "setRate(rate: " }, { "kind": "Content", - "text": "number | undefined" + "text": "number" }, { "kind": "Content", - "text": ";" - } - ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "id", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false - }, - { - "kind": "Property", - "canonicalReference": "server!ParticleEmitter#isSpawned:member", - "docComment": "/**\n * Whether the ParticleEmitter is spawned in the world.\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "get isSpawned(): " + "text": "): " }, { "kind": "Content", - "text": "boolean" + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "isSpawned", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", "isProtected": false, - "isAbstract": false + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "rate", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setRate" }, { - "kind": "Property", - "canonicalReference": "server!ParticleEmitter#lifetime:member", - "docComment": "/**\n * The lifetime of an emitted particle in seconds.\n */\n", + "kind": "Method", + "canonicalReference": "server!ParticleEmitter#setRateVariance:member(1)", + "docComment": "/**\n * Sets the rate variance of the particle emission rate.\n *\n * @param rateVariance - The rate variance of the particle emission rate.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get lifetime(): " + "text": "setRateVariance(rateVariance: " }, { "kind": "Content", - "text": "number | undefined" + "text": "number" }, { "kind": "Content", - "text": ";" - } - ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "lifetime", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false - }, - { - "kind": "Property", - "canonicalReference": "server!ParticleEmitter#lifetimeVariance:member", - "docComment": "/**\n * The lifetime variance of an emitted particle in seconds.\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "get lifetimeVariance(): " + "text": "): " }, { "kind": "Content", - "text": "number | undefined" + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "lifetimeVariance", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", "isProtected": false, - "isAbstract": false + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "rateVariance", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setRateVariance" }, { - "kind": "Property", - "canonicalReference": "server!ParticleEmitter#lockToEmitter:member", - "docComment": "/**\n * Whether emitted particles follow the emitter's world position. Cannot be changed after construction.\n */\n", + "kind": "Method", + "canonicalReference": "server!ParticleEmitter#setSizeEnd:member(1)", + "docComment": "/**\n * Sets the size at the end of an emitted particle's lifetime.\n *\n * @param sizeEnd - The size at the end of an emitted particle's lifetime.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get lockToEmitter(): " + "text": "setSizeEnd(sizeEnd: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": "): " }, { "kind": "Content", - "text": "boolean" + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "lockToEmitter", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", "isProtected": false, - "isAbstract": false + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "sizeEnd", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setSizeEnd" }, { - "kind": "Property", - "canonicalReference": "server!ParticleEmitter#maxParticles:member", - "docComment": "/**\n * The maximum number of live particles.\n */\n", + "kind": "Method", + "canonicalReference": "server!ParticleEmitter#setSizeEndVariance:member(1)", + "docComment": "/**\n * Sets the size variance at the end of an emitted particle's lifetime.\n *\n * @param sizeEndVariance - The size variance at the end of an emitted particle's lifetime.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get maxParticles(): " + "text": "setSizeEndVariance(sizeEndVariance: " }, { "kind": "Content", - "text": "number | undefined" + "text": "number" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Content", + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "maxParticles", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", "isProtected": false, - "isAbstract": false + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "sizeEndVariance", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setSizeEndVariance" }, { - "kind": "Property", - "canonicalReference": "server!ParticleEmitter#offset:member", - "docComment": "/**\n * The offset of the particle emitter from the attached entity or position.\n */\n", + "kind": "Method", + "canonicalReference": "server!ParticleEmitter#setSizeStart:member(1)", + "docComment": "/**\n * Sets the size at the start of an emitted particle's lifetime.\n *\n * @param sizeStart - The size at the start of an emitted particle's lifetime.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get offset(): " + "text": "setSizeStart(sizeStart: " }, { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "kind": "Content", + "text": "number" }, { "kind": "Content", - "text": " | undefined" + "text": "): " + }, + { + "kind": "Content", + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "offset", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 3 - }, "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", "isProtected": false, - "isAbstract": false + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "sizeStart", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setSizeStart" }, { - "kind": "Property", - "canonicalReference": "server!ParticleEmitter#opacityEnd:member", - "docComment": "/**\n * The opacity of an emitted particle at the end of its lifetime.\n */\n", + "kind": "Method", + "canonicalReference": "server!ParticleEmitter#setSizeStartVariance:member(1)", + "docComment": "/**\n * Sets the size variance at the start of an emitted particle's lifetime.\n *\n * @param sizeStartVariance - The size variance at the start of an emitted particle's lifetime.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get opacityEnd(): " + "text": "setSizeStartVariance(sizeStartVariance: " }, { "kind": "Content", - "text": "number | undefined" + "text": "number" }, { "kind": "Content", - "text": ";" - } - ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "opacityEnd", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false - }, - { - "kind": "Property", - "canonicalReference": "server!ParticleEmitter#opacityEndVariance:member", - "docComment": "/**\n * The opacity variance of an emitted particle at the end of its lifetime.\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "get opacityEndVariance(): " + "text": "): " }, { "kind": "Content", - "text": "number | undefined" + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "opacityEndVariance", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", "isProtected": false, - "isAbstract": false + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "sizeStartVariance", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setSizeStartVariance" }, { - "kind": "Property", - "canonicalReference": "server!ParticleEmitter#opacityStart:member", - "docComment": "/**\n * The opacity of an emitted particle at the start of its lifetime.\n */\n", + "kind": "Method", + "canonicalReference": "server!ParticleEmitter#setTextureUri:member(1)", + "docComment": "/**\n * Sets the texture URI of the particles emitted.\n *\n * @param textureUri - The texture URI of the particles emitted.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get opacityStart(): " + "text": "setTextureUri(textureUri: " }, { "kind": "Content", - "text": "number | undefined" + "text": "string" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Content", + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "opacityStart", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", "isProtected": false, - "isAbstract": false + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "textureUri", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setTextureUri" }, { - "kind": "Property", - "canonicalReference": "server!ParticleEmitter#opacityStartVariance:member", - "docComment": "/**\n * The opacity variance of an emitted particle at the start of its lifetime.\n */\n", + "kind": "Method", + "canonicalReference": "server!ParticleEmitter#setTransparent:member(1)", + "docComment": "/**\n * Sets the transparency of the particle emitter.\n *\n * @param transparent - The transparency of the particle emitter.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get opacityStartVariance(): " + "text": "setTransparent(transparent: " }, { "kind": "Content", - "text": "number | undefined" + "text": "boolean" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Content", + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "opacityStartVariance", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", "isProtected": false, - "isAbstract": false + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "transparent", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setTransparent" }, { - "kind": "Property", - "canonicalReference": "server!ParticleEmitter#orientation:member", - "docComment": "/**\n * The orientation mode of emitted particles.\n */\n", + "kind": "Method", + "canonicalReference": "server!ParticleEmitter#setVelocity:member(1)", + "docComment": "/**\n * Sets the velocity of an emitted particle.\n *\n * @param velocity - The velocity of an emitted particle.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get orientation(): " + "text": "setVelocity(velocity: " }, { "kind": "Reference", - "text": "ParticleEmitterOrientation", - "canonicalReference": "server!ParticleEmitterOrientation:type" + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", - "text": " | undefined" + "text": "): " + }, + { + "kind": "Content", + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "orientation", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 3 - }, "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", "isProtected": false, - "isAbstract": false + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "velocity", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setVelocity" }, { - "kind": "Property", - "canonicalReference": "server!ParticleEmitter#orientationFixedRotation:member", - "docComment": "/**\n * The fixed rotation of emitted particles in degrees when orientation is 'fixed'.\n */\n", + "kind": "Method", + "canonicalReference": "server!ParticleEmitter#setVelocityVariance:member(1)", + "docComment": "/**\n * Sets the velocity variance of an emitted particle.\n *\n * @param velocityVariance - The velocity variance of an emitted particle.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get orientationFixedRotation(): " + "text": "setVelocityVariance(velocityVariance: " }, { "kind": "Reference", @@ -33721,37 +38781,51 @@ }, { "kind": "Content", - "text": " | undefined" + "text": "): " + }, + { + "kind": "Content", + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "orientationFixedRotation", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 3 - }, "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", "isProtected": false, - "isAbstract": false + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "velocityVariance", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setVelocityVariance" }, { "kind": "Property", - "canonicalReference": "server!ParticleEmitter#paused:member", - "docComment": "/**\n * Whether an emitted particle is being paused.\n */\n", + "canonicalReference": "server!ParticleEmitter#sizeEnd:member", + "docComment": "/**\n * The size at the end of an emitted particle's lifetime.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get paused(): " + "text": "get sizeEnd(): " }, { "kind": "Content", - "text": "boolean | undefined" + "text": "number | undefined" }, { "kind": "Content", @@ -33761,7 +38835,7 @@ "isReadonly": true, "isOptional": false, "releaseTag": "Public", - "name": "paused", + "name": "sizeEnd", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -33772,21 +38846,16 @@ }, { "kind": "Property", - "canonicalReference": "server!ParticleEmitter#position:member", - "docComment": "/**\n * The position of the particle emitter in the world if explicitly set.\n */\n", + "canonicalReference": "server!ParticleEmitter#sizeEndVariance:member", + "docComment": "/**\n * The size variance at the end of an emitted particle's lifetime.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get position(): " - }, - { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "text": "get sizeEndVariance(): " }, { "kind": "Content", - "text": " | undefined" + "text": "number | undefined" }, { "kind": "Content", @@ -33796,10 +38865,10 @@ "isReadonly": true, "isOptional": false, "releaseTag": "Public", - "name": "position", + "name": "sizeEndVariance", "propertyTypeTokenRange": { "startIndex": 1, - "endIndex": 3 + "endIndex": 2 }, "isStatic": false, "isProtected": false, @@ -33807,21 +38876,16 @@ }, { "kind": "Property", - "canonicalReference": "server!ParticleEmitter#positionVariance:member", - "docComment": "/**\n * The position variance of an emitted particle.\n */\n", + "canonicalReference": "server!ParticleEmitter#sizeStart:member", + "docComment": "/**\n * The size at the start of an emitted particle's lifetime.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get positionVariance(): " - }, - { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "text": "get sizeStart(): " }, { "kind": "Content", - "text": " | undefined" + "text": "number | undefined" }, { "kind": "Content", @@ -33831,10 +38895,10 @@ "isReadonly": true, "isOptional": false, "releaseTag": "Public", - "name": "positionVariance", + "name": "sizeStart", "propertyTypeTokenRange": { "startIndex": 1, - "endIndex": 3 + "endIndex": 2 }, "isStatic": false, "isProtected": false, @@ -33842,12 +38906,12 @@ }, { "kind": "Property", - "canonicalReference": "server!ParticleEmitter#rate:member", - "docComment": "/**\n * The rate per second at which particles are emitted.\n */\n", + "canonicalReference": "server!ParticleEmitter#sizeStartVariance:member", + "docComment": "/**\n * The size variance at the start of an emitted particle's lifetime.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get rate(): " + "text": "get sizeStartVariance(): " }, { "kind": "Content", @@ -33861,7 +38925,7 @@ "isReadonly": true, "isOptional": false, "releaseTag": "Public", - "name": "rate", + "name": "sizeStartVariance", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -33872,12 +38936,12 @@ }, { "kind": "Property", - "canonicalReference": "server!ParticleEmitter#rateVariance:member", - "docComment": "/**\n * The rate per second variance of the particle emission rate.\n */\n", + "canonicalReference": "server!ParticleEmitter#sizeVariance:member", + "docComment": "/**\n * The size variance of an emitted particle.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get rateVariance(): " + "text": "get sizeVariance(): " }, { "kind": "Content", @@ -33891,7 +38955,7 @@ "isReadonly": true, "isOptional": false, "releaseTag": "Public", - "name": "rateVariance", + "name": "sizeVariance", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -33902,96 +38966,17 @@ }, { "kind": "Method", - "canonicalReference": "server!ParticleEmitter#restart:member(1)", - "docComment": "/**\n * Restarts the particle emission if it was previously stopped.\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "restart(): " - }, - { - "kind": "Content", - "text": "void" - }, - { - "kind": "Content", - "text": ";" - } - ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [], - "isOptional": false, - "isAbstract": false, - "name": "restart" - }, - { - "kind": "Method", - "canonicalReference": "server!ParticleEmitter#setAlphaTest:member(1)", - "docComment": "/**\n * Sets the alpha test value, discards particle texture pixels with alpha opacity less than this value.\n *\n * @param alphaTest - The alpha test value, discards particle texture pixels with alpha opacity less than this value.\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "setAlphaTest(alphaTest: " - }, - { - "kind": "Content", - "text": "number" - }, - { - "kind": "Content", - "text": "): " - }, - { - "kind": "Content", - "text": "void" - }, - { - "kind": "Content", - "text": ";" - } - ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "alphaTest", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "setAlphaTest" - }, - { - "kind": "Method", - "canonicalReference": "server!ParticleEmitter#setAttachedToEntity:member(1)", - "docComment": "/**\n * Sets the entity to which the ParticleEmitter is attached.\n *\n * @remarks\n *\n * Clears any set position (mutual exclusivity).\n *\n * @param entity - The entity to attach the ParticleEmitter to.\n */\n", + "canonicalReference": "server!ParticleEmitter#spawn:member(1)", + "docComment": "/**\n * Spawns the ParticleEmitter in the world.\n *\n * @remarks\n *\n * **Requires spawned entity:** If attached to an entity, the entity must be spawned first.\n *\n * @param world - The world to spawn the ParticleEmitter in.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setAttachedToEntity(entity: " + "text": "spawn(world: " }, { "kind": "Reference", - "text": "Entity", - "canonicalReference": "server!Entity:class" + "text": "World", + "canonicalReference": "server!World:class" }, { "kind": "Content", @@ -34016,7 +39001,7 @@ "overloadIndex": 1, "parameters": [ { - "parameterName": "entity", + "parameterName": "world", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -34026,24 +39011,16 @@ ], "isOptional": false, "isAbstract": false, - "name": "setAttachedToEntity" + "name": "spawn" }, { "kind": "Method", - "canonicalReference": "server!ParticleEmitter#setAttachedToEntityNodeName:member(1)", - "docComment": "/**\n * Sets the name of the node of the attached entity (if the attached entity is a model entity) to attach the particle emitter to.\n *\n * @param attachedToEntityNodeName - The name of the node of the attached entity (if the attached entity is a model entity) to attach the particle emitter to.\n */\n", + "canonicalReference": "server!ParticleEmitter#stop:member(1)", + "docComment": "/**\n * Stops the particle emission.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setAttachedToEntityNodeName(attachedToEntityNodeName: " - }, - { - "kind": "Content", - "text": "string" - }, - { - "kind": "Content", - "text": "): " + "text": "stop(): " }, { "kind": "Content", @@ -34056,2767 +39033,2522 @@ ], "isStatic": false, "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 + "startIndex": 1, + "endIndex": 2 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, - "parameters": [ - { - "parameterName": "attachedToEntityNodeName", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], + "parameters": [], "isOptional": false, "isAbstract": false, - "name": "setAttachedToEntityNodeName" + "name": "stop" }, { - "kind": "Method", - "canonicalReference": "server!ParticleEmitter#setColorEnd:member(1)", - "docComment": "/**\n * Sets the color of an emitted particle at the end of its lifetime.\n *\n * @param colorEnd - The color of an emitted particle at the end of its lifetime.\n */\n", + "kind": "Property", + "canonicalReference": "server!ParticleEmitter#textureUri:member", + "docComment": "/**\n * The URI or path to the texture to be used for the particles.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setColorEnd(colorEnd: " + "text": "get textureUri(): " }, { - "kind": "Reference", - "text": "RgbColor", - "canonicalReference": "server!RgbColor:interface" + "kind": "Content", + "text": "string" }, { "kind": "Content", - "text": "): " + "text": ";" + } + ], + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "textureUri", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false + }, + { + "kind": "Property", + "canonicalReference": "server!ParticleEmitter#transparent:member", + "docComment": "/**\n * Whether an emitted particle is transparent, resulting in smoother transparency blending.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "get transparent(): " }, { "kind": "Content", - "text": "void" + "text": "boolean | undefined" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, + "isReadonly": true, + "isOptional": false, "releaseTag": "Public", + "name": "transparent", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "colorEnd", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "setColorEnd" + "isAbstract": false }, { - "kind": "Method", - "canonicalReference": "server!ParticleEmitter#setColorEndVariance:member(1)", - "docComment": "/**\n * Sets the color variance of an emitted particle at the end of its lifetime.\n *\n * @param colorEndVariance - The color variance of an emitted particle at the end of its lifetime.\n */\n", + "kind": "Property", + "canonicalReference": "server!ParticleEmitter#velocity:member", + "docComment": "/**\n * The velocity of an emitted particle.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setColorEndVariance(colorEndVariance: " + "text": "get velocity(): " }, { "kind": "Reference", - "text": "RgbColor", - "canonicalReference": "server!RgbColor:interface" - }, - { - "kind": "Content", - "text": "): " + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", - "text": "void" + "text": " | undefined" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, + "isReadonly": true, + "isOptional": false, "releaseTag": "Public", + "name": "velocity", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 3 + }, + "isStatic": false, "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "colorEndVariance", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "setColorEndVariance" + "isAbstract": false }, { - "kind": "Method", - "canonicalReference": "server!ParticleEmitter#setColorIntensityEnd:member(1)", - "docComment": "/**\n * Sets the color intensity of an emitted particle at the end of its lifetime.\n *\n * @param colorIntensityEnd - The color intensity at the end of lifetime. Values greater than 1 create HDR/bloom effects.\n */\n", + "kind": "Property", + "canonicalReference": "server!ParticleEmitter#velocityVariance:member", + "docComment": "/**\n * The velocity variance of an emitted particle.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setColorIntensityEnd(colorIntensityEnd: " - }, - { - "kind": "Content", - "text": "number" + "text": "get velocityVariance(): " }, { - "kind": "Content", - "text": "): " + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", - "text": "void" + "text": " | undefined" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, + "isReadonly": true, + "isOptional": false, "releaseTag": "Public", + "name": "velocityVariance", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 3 + }, + "isStatic": false, "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "colorIntensityEnd", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "setColorIntensityEnd" + "isAbstract": false }, { - "kind": "Method", - "canonicalReference": "server!ParticleEmitter#setColorIntensityEndVariance:member(1)", - "docComment": "/**\n * Sets the color intensity variance of an emitted particle at the end of its lifetime.\n *\n * @param colorIntensityEndVariance - The color intensity variance at the end of lifetime.\n */\n", + "kind": "Property", + "canonicalReference": "server!ParticleEmitter#world:member", + "docComment": "/**\n * The world the ParticleEmitter is in.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setColorIntensityEndVariance(colorIntensityEndVariance: " - }, - { - "kind": "Content", - "text": "number" + "text": "get world(): " }, { - "kind": "Content", - "text": "): " + "kind": "Reference", + "text": "World", + "canonicalReference": "server!World:class" }, { "kind": "Content", - "text": "void" + "text": " | undefined" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, + "isReadonly": true, + "isOptional": false, "releaseTag": "Public", + "name": "world", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 3 + }, + "isStatic": false, "isProtected": false, - "overloadIndex": 1, - "parameters": [ + "isAbstract": false + } + ], + "extendsTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "implementsTokenRanges": [ + { + "startIndex": 3, + "endIndex": 4 + } + ] + }, + { + "kind": "Enum", + "canonicalReference": "server!ParticleEmitterEvent:enum", + "docComment": "/**\n * Event types a ParticleEmitter instance can emit.\n *\n * See `ParticleEmitterEventPayloads` for the payloads.\n *\n * **Category:** Events\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export declare enum ParticleEmitterEvent " + } + ], + "fileUrlPath": "src/worlds/particles/ParticleEmitter.ts", + "releaseTag": "Public", + "name": "ParticleEmitterEvent", + "preserveMemberOrder": false, + "members": [ + { + "kind": "EnumMember", + "canonicalReference": "server!ParticleEmitterEvent.BURST:member", + "docComment": "", + "excerptTokens": [ { - "parameterName": "colorIntensityEndVariance", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false + "kind": "Content", + "text": "BURST = " + }, + { + "kind": "Content", + "text": "\"PARTICLE_EMITTER.BURST\"" } ], - "isOptional": false, - "isAbstract": false, - "name": "setColorIntensityEndVariance" + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "BURST" }, { - "kind": "Method", - "canonicalReference": "server!ParticleEmitter#setColorIntensityStart:member(1)", - "docComment": "/**\n * Sets the color intensity of an emitted particle at the start of its lifetime.\n *\n * @param colorIntensityStart - The color intensity at the start of lifetime. Values greater than 1 create HDR/bloom effects.\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!ParticleEmitterEvent.DESPAWN:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "setColorIntensityStart(colorIntensityStart: " - }, - { - "kind": "Content", - "text": "number" + "text": "DESPAWN = " }, { "kind": "Content", - "text": "): " - }, + "text": "\"PARTICLE_EMITTER.DESPAWN\"" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "DESPAWN" + }, + { + "kind": "EnumMember", + "canonicalReference": "server!ParticleEmitterEvent.SET_ALPHA_TEST:member", + "docComment": "", + "excerptTokens": [ { "kind": "Content", - "text": "void" + "text": "SET_ALPHA_TEST = " }, { "kind": "Content", - "text": ";" + "text": "\"PARTICLE_EMITTER.SET_ALPHA_TEST\"" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 }, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "colorIntensityStart", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "setColorIntensityStart" + "name": "SET_ALPHA_TEST" }, { - "kind": "Method", - "canonicalReference": "server!ParticleEmitter#setColorIntensityStartVariance:member(1)", - "docComment": "/**\n * Sets the color intensity variance of an emitted particle at the start of its lifetime.\n *\n * @param colorIntensityStartVariance - The color intensity variance at the start of lifetime.\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!ParticleEmitterEvent.SET_ATTACHED_TO_ENTITY:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "setColorIntensityStartVariance(colorIntensityStartVariance: " - }, - { - "kind": "Content", - "text": "number" + "text": "SET_ATTACHED_TO_ENTITY = " }, { "kind": "Content", - "text": "): " - }, + "text": "\"PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY\"" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "SET_ATTACHED_TO_ENTITY" + }, + { + "kind": "EnumMember", + "canonicalReference": "server!ParticleEmitterEvent.SET_ATTACHED_TO_ENTITY_NODE_NAME:member", + "docComment": "", + "excerptTokens": [ { "kind": "Content", - "text": "void" + "text": "SET_ATTACHED_TO_ENTITY_NODE_NAME = " }, { "kind": "Content", - "text": ";" + "text": "\"PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY_NODE_NAME\"" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 }, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ + "name": "SET_ATTACHED_TO_ENTITY_NODE_NAME" + }, + { + "kind": "EnumMember", + "canonicalReference": "server!ParticleEmitterEvent.SET_COLOR_END:member", + "docComment": "", + "excerptTokens": [ { - "parameterName": "colorIntensityStartVariance", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false + "kind": "Content", + "text": "SET_COLOR_END = " + }, + { + "kind": "Content", + "text": "\"PARTICLE_EMITTER.SET_COLOR_END\"" } ], - "isOptional": false, - "isAbstract": false, - "name": "setColorIntensityStartVariance" + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "SET_COLOR_END" }, { - "kind": "Method", - "canonicalReference": "server!ParticleEmitter#setColorStart:member(1)", - "docComment": "/**\n * Sets the color of an emitted particle at the start of its lifetime.\n *\n * @param colorStart - The color of an emitted particle at the start of its lifetime.\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!ParticleEmitterEvent.SET_COLOR_END_VARIANCE:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "setColorStart(colorStart: " - }, - { - "kind": "Reference", - "text": "RgbColor", - "canonicalReference": "server!RgbColor:interface" + "text": "SET_COLOR_END_VARIANCE = " }, { "kind": "Content", - "text": "): " - }, + "text": "\"PARTICLE_EMITTER.SET_COLOR_END_VARIANCE\"" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "SET_COLOR_END_VARIANCE" + }, + { + "kind": "EnumMember", + "canonicalReference": "server!ParticleEmitterEvent.SET_COLOR_INTENSITY_END:member", + "docComment": "", + "excerptTokens": [ { "kind": "Content", - "text": "void" + "text": "SET_COLOR_INTENSITY_END = " }, { "kind": "Content", - "text": ";" + "text": "\"PARTICLE_EMITTER.SET_COLOR_INTENSITY_END\"" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 }, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ + "name": "SET_COLOR_INTENSITY_END" + }, + { + "kind": "EnumMember", + "canonicalReference": "server!ParticleEmitterEvent.SET_COLOR_INTENSITY_END_VARIANCE:member", + "docComment": "", + "excerptTokens": [ { - "parameterName": "colorStart", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false + "kind": "Content", + "text": "SET_COLOR_INTENSITY_END_VARIANCE = " + }, + { + "kind": "Content", + "text": "\"PARTICLE_EMITTER.SET_COLOR_INTENSITY_END_VARIANCE\"" } ], - "isOptional": false, - "isAbstract": false, - "name": "setColorStart" + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "SET_COLOR_INTENSITY_END_VARIANCE" }, { - "kind": "Method", - "canonicalReference": "server!ParticleEmitter#setColorStartVariance:member(1)", - "docComment": "/**\n * Sets the color variance of an emitted particle at the start of its lifetime.\n *\n * @param colorStartVariance - The color variance of an emitted particle at the start of its lifetime.\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!ParticleEmitterEvent.SET_COLOR_INTENSITY_START:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "setColorStartVariance(colorStartVariance: " - }, - { - "kind": "Reference", - "text": "RgbColor", - "canonicalReference": "server!RgbColor:interface" + "text": "SET_COLOR_INTENSITY_START = " }, { "kind": "Content", - "text": "): " - }, + "text": "\"PARTICLE_EMITTER.SET_COLOR_INTENSITY_START\"" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "SET_COLOR_INTENSITY_START" + }, + { + "kind": "EnumMember", + "canonicalReference": "server!ParticleEmitterEvent.SET_COLOR_INTENSITY_START_VARIANCE:member", + "docComment": "", + "excerptTokens": [ { "kind": "Content", - "text": "void" + "text": "SET_COLOR_INTENSITY_START_VARIANCE = " }, { "kind": "Content", - "text": ";" + "text": "\"PARTICLE_EMITTER.SET_COLOR_INTENSITY_START_VARIANCE\"" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 }, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "colorStartVariance", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "setColorStartVariance" + "name": "SET_COLOR_INTENSITY_START_VARIANCE" }, { - "kind": "Method", - "canonicalReference": "server!ParticleEmitter#setGravity:member(1)", - "docComment": "/**\n * Sets the gravity vector for an emitted particle.\n *\n * @param gravity - The gravity vector for an emitted particle.\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!ParticleEmitterEvent.SET_COLOR_START:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "setGravity(gravity: " - }, - { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "text": "SET_COLOR_START = " }, { "kind": "Content", - "text": "): " - }, + "text": "\"PARTICLE_EMITTER.SET_COLOR_START\"" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "SET_COLOR_START" + }, + { + "kind": "EnumMember", + "canonicalReference": "server!ParticleEmitterEvent.SET_COLOR_START_VARIANCE:member", + "docComment": "", + "excerptTokens": [ { "kind": "Content", - "text": "void" + "text": "SET_COLOR_START_VARIANCE = " }, { "kind": "Content", - "text": ";" + "text": "\"PARTICLE_EMITTER.SET_COLOR_START_VARIANCE\"" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 }, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "gravity", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "setGravity" + "name": "SET_COLOR_START_VARIANCE" }, { - "kind": "Method", - "canonicalReference": "server!ParticleEmitter#setLifetime:member(1)", - "docComment": "/**\n * Sets the lifetime of an emitted particle in seconds.\n *\n * @param lifetime - The lifetime of an emitted particle in seconds.\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!ParticleEmitterEvent.SET_GRAVITY:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "setLifetime(lifetime: " - }, - { - "kind": "Content", - "text": "number" + "text": "SET_GRAVITY = " }, { "kind": "Content", - "text": "): " - }, + "text": "\"PARTICLE_EMITTER.SET_GRAVITY\"" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "SET_GRAVITY" + }, + { + "kind": "EnumMember", + "canonicalReference": "server!ParticleEmitterEvent.SET_LIFETIME:member", + "docComment": "", + "excerptTokens": [ { "kind": "Content", - "text": "void" + "text": "SET_LIFETIME = " }, { "kind": "Content", - "text": ";" + "text": "\"PARTICLE_EMITTER.SET_LIFETIME\"" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 }, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "lifetime", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "setLifetime" + "name": "SET_LIFETIME" }, { - "kind": "Method", - "canonicalReference": "server!ParticleEmitter#setLifetimeVariance:member(1)", - "docComment": "/**\n * Sets the lifetime variance of an emitted particle in seconds.\n *\n * @param lifetimeVariance - The lifetime variance of an emitted particle in seconds.\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!ParticleEmitterEvent.SET_LIFETIME_VARIANCE:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "setLifetimeVariance(lifetimeVariance: " - }, - { - "kind": "Content", - "text": "number" + "text": "SET_LIFETIME_VARIANCE = " }, { "kind": "Content", - "text": "): " - }, + "text": "\"PARTICLE_EMITTER.SET_LIFETIME_VARIANCE\"" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "SET_LIFETIME_VARIANCE" + }, + { + "kind": "EnumMember", + "canonicalReference": "server!ParticleEmitterEvent.SET_MAX_PARTICLES:member", + "docComment": "", + "excerptTokens": [ { "kind": "Content", - "text": "void" + "text": "SET_MAX_PARTICLES = " }, { "kind": "Content", - "text": ";" + "text": "\"PARTICLE_EMITTER.SET_MAX_PARTICLES\"" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 }, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "lifetimeVariance", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "setLifetimeVariance" + "name": "SET_MAX_PARTICLES" }, { - "kind": "Method", - "canonicalReference": "server!ParticleEmitter#setMaxParticles:member(1)", - "docComment": "/**\n * Sets the maximum number of live particles.\n *\n * @param maxParticles - The maximum number of live particles.\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!ParticleEmitterEvent.SET_OFFSET:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "setMaxParticles(maxParticles: " - }, - { - "kind": "Content", - "text": "number" + "text": "SET_OFFSET = " }, { "kind": "Content", - "text": "): " - }, + "text": "\"PARTICLE_EMITTER.SET_OFFSET\"" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "SET_OFFSET" + }, + { + "kind": "EnumMember", + "canonicalReference": "server!ParticleEmitterEvent.SET_OPACITY_END:member", + "docComment": "", + "excerptTokens": [ { "kind": "Content", - "text": "void" + "text": "SET_OPACITY_END = " }, { "kind": "Content", - "text": ";" + "text": "\"PARTICLE_EMITTER.SET_OPACITY_END\"" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 }, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "maxParticles", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "setMaxParticles" + "name": "SET_OPACITY_END" }, { - "kind": "Method", - "canonicalReference": "server!ParticleEmitter#setOffset:member(1)", - "docComment": "/**\n * Sets the offset of the particle emitter from the attached entity or position.\n *\n * @param offset - The offset of the particle emitter from the attached entity or position.\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!ParticleEmitterEvent.SET_OPACITY_END_VARIANCE:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "setOffset(offset: " - }, - { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "text": "SET_OPACITY_END_VARIANCE = " }, { "kind": "Content", - "text": "): " - }, + "text": "\"PARTICLE_EMITTER.SET_OPACITY_END_VARIANCE\"" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "SET_OPACITY_END_VARIANCE" + }, + { + "kind": "EnumMember", + "canonicalReference": "server!ParticleEmitterEvent.SET_OPACITY_START:member", + "docComment": "", + "excerptTokens": [ { "kind": "Content", - "text": "void" + "text": "SET_OPACITY_START = " }, { "kind": "Content", - "text": ";" + "text": "\"PARTICLE_EMITTER.SET_OPACITY_START\"" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 }, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "offset", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "setOffset" + "name": "SET_OPACITY_START" }, { - "kind": "Method", - "canonicalReference": "server!ParticleEmitter#setOpacityEnd:member(1)", - "docComment": "/**\n * Sets the opacity of an emitted particle at the end of its lifetime.\n *\n * @param opacityEnd - The opacity of an emitted particle at the end of its lifetime.\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!ParticleEmitterEvent.SET_OPACITY_START_VARIANCE:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "setOpacityEnd(opacityEnd: " - }, - { - "kind": "Content", - "text": "number" + "text": "SET_OPACITY_START_VARIANCE = " }, { "kind": "Content", - "text": "): " - }, + "text": "\"PARTICLE_EMITTER.SET_OPACITY_START_VARIANCE\"" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "SET_OPACITY_START_VARIANCE" + }, + { + "kind": "EnumMember", + "canonicalReference": "server!ParticleEmitterEvent.SET_ORIENTATION:member", + "docComment": "", + "excerptTokens": [ { "kind": "Content", - "text": "void" + "text": "SET_ORIENTATION = " }, { "kind": "Content", - "text": ";" + "text": "\"PARTICLE_EMITTER.SET_ORIENTATION\"" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 }, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "opacityEnd", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "setOpacityEnd" + "name": "SET_ORIENTATION" }, { - "kind": "Method", - "canonicalReference": "server!ParticleEmitter#setOpacityEndVariance:member(1)", - "docComment": "/**\n * Sets the opacity variance of an emitted particle at the end of its lifetime.\n *\n * @param opacityEndVariance - The opacity variance of an emitted particle at the end of its lifetime.\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!ParticleEmitterEvent.SET_ORIENTATION_FIXED_ROTATION:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "setOpacityEndVariance(opacityEndVariance: " - }, - { - "kind": "Content", - "text": "number" + "text": "SET_ORIENTATION_FIXED_ROTATION = " }, { "kind": "Content", - "text": "): " - }, + "text": "\"PARTICLE_EMITTER.SET_ORIENTATION_FIXED_ROTATION\"" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "SET_ORIENTATION_FIXED_ROTATION" + }, + { + "kind": "EnumMember", + "canonicalReference": "server!ParticleEmitterEvent.SET_PAUSED:member", + "docComment": "", + "excerptTokens": [ { "kind": "Content", - "text": "void" + "text": "SET_PAUSED = " }, { "kind": "Content", - "text": ";" + "text": "\"PARTICLE_EMITTER.SET_PAUSED\"" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 }, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "opacityEndVariance", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "setOpacityEndVariance" + "name": "SET_PAUSED" }, { - "kind": "Method", - "canonicalReference": "server!ParticleEmitter#setOpacityStart:member(1)", - "docComment": "/**\n * Sets the opacity of an emitted particle at the start of its lifetime.\n *\n * @param opacityStart - The opacity of an emitted particle at the start of its lifetime.\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!ParticleEmitterEvent.SET_POSITION:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "setOpacityStart(opacityStart: " - }, - { - "kind": "Content", - "text": "number" + "text": "SET_POSITION = " }, { "kind": "Content", - "text": "): " - }, + "text": "\"PARTICLE_EMITTER.SET_POSITION\"" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "SET_POSITION" + }, + { + "kind": "EnumMember", + "canonicalReference": "server!ParticleEmitterEvent.SET_POSITION_VARIANCE:member", + "docComment": "", + "excerptTokens": [ { "kind": "Content", - "text": "void" + "text": "SET_POSITION_VARIANCE = " }, { "kind": "Content", - "text": ";" + "text": "\"PARTICLE_EMITTER.SET_POSITION_VARIANCE\"" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 }, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "opacityStart", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "setOpacityStart" + "name": "SET_POSITION_VARIANCE" }, { - "kind": "Method", - "canonicalReference": "server!ParticleEmitter#setOpacityStartVariance:member(1)", - "docComment": "/**\n * Sets the opacity variance of an emitted particle at the start of its lifetime.\n *\n * @param opacityStartVariance - The opacity variance of an emitted particle at the start of its lifetime.\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!ParticleEmitterEvent.SET_RATE:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "setOpacityStartVariance(opacityStartVariance: " - }, - { - "kind": "Content", - "text": "number" + "text": "SET_RATE = " }, { "kind": "Content", - "text": "): " - }, + "text": "\"PARTICLE_EMITTER.SET_RATE\"" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "SET_RATE" + }, + { + "kind": "EnumMember", + "canonicalReference": "server!ParticleEmitterEvent.SET_RATE_VARIANCE:member", + "docComment": "", + "excerptTokens": [ { "kind": "Content", - "text": "void" + "text": "SET_RATE_VARIANCE = " }, { "kind": "Content", - "text": ";" + "text": "\"PARTICLE_EMITTER.SET_RATE_VARIANCE\"" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 }, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "opacityStartVariance", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "setOpacityStartVariance" + "name": "SET_RATE_VARIANCE" }, { - "kind": "Method", - "canonicalReference": "server!ParticleEmitter#setOrientation:member(1)", - "docComment": "/**\n * Sets the orientation mode of emitted particles.\n *\n * @param orientation - The orientation mode. 'billboard' faces the camera, 'billboardY' faces the camera but keeps Y-axis upward, 'fixed' uses a fixed rotation.\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!ParticleEmitterEvent.SET_SIZE_END:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "setOrientation(orientation: " - }, - { - "kind": "Reference", - "text": "ParticleEmitterOrientation", - "canonicalReference": "server!ParticleEmitterOrientation:type" + "text": "SET_SIZE_END = " }, { "kind": "Content", - "text": "): " - }, + "text": "\"PARTICLE_EMITTER.SET_SIZE_END\"" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "SET_SIZE_END" + }, + { + "kind": "EnumMember", + "canonicalReference": "server!ParticleEmitterEvent.SET_SIZE_END_VARIANCE:member", + "docComment": "", + "excerptTokens": [ { "kind": "Content", - "text": "void" + "text": "SET_SIZE_END_VARIANCE = " }, { "kind": "Content", - "text": ";" + "text": "\"PARTICLE_EMITTER.SET_SIZE_END_VARIANCE\"" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 }, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "orientation", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "setOrientation" + "name": "SET_SIZE_END_VARIANCE" }, { - "kind": "Method", - "canonicalReference": "server!ParticleEmitter#setOrientationFixedRotation:member(1)", - "docComment": "/**\n * Sets the fixed rotation of emitted particles when orientation is 'fixed'.\n *\n * @param orientationFixedRotation - The fixed rotation in degrees (x, y, z).\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!ParticleEmitterEvent.SET_SIZE_START:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "setOrientationFixedRotation(orientationFixedRotation: " - }, - { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "text": "SET_SIZE_START = " }, { "kind": "Content", - "text": "): " - }, + "text": "\"PARTICLE_EMITTER.SET_SIZE_START\"" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "SET_SIZE_START" + }, + { + "kind": "EnumMember", + "canonicalReference": "server!ParticleEmitterEvent.SET_SIZE_START_VARIANCE:member", + "docComment": "", + "excerptTokens": [ { "kind": "Content", - "text": "void" + "text": "SET_SIZE_START_VARIANCE = " }, { "kind": "Content", - "text": ";" + "text": "\"PARTICLE_EMITTER.SET_SIZE_START_VARIANCE\"" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 }, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "orientationFixedRotation", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "setOrientationFixedRotation" + "name": "SET_SIZE_START_VARIANCE" }, { - "kind": "Method", - "canonicalReference": "server!ParticleEmitter#setPosition:member(1)", - "docComment": "/**\n * Sets the position of the particle emitter.\n *\n * @param position - The position of the particle emitter.\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!ParticleEmitterEvent.SET_TEXTURE_URI:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "setPosition(position: " - }, - { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "text": "SET_TEXTURE_URI = " }, { "kind": "Content", - "text": "): " - }, + "text": "\"PARTICLE_EMITTER.SET_TEXTURE_URI\"" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "SET_TEXTURE_URI" + }, + { + "kind": "EnumMember", + "canonicalReference": "server!ParticleEmitterEvent.SET_TRANSPARENT:member", + "docComment": "", + "excerptTokens": [ { "kind": "Content", - "text": "void" + "text": "SET_TRANSPARENT = " }, { "kind": "Content", - "text": ";" + "text": "\"PARTICLE_EMITTER.SET_TRANSPARENT\"" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 }, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "position", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "setPosition" + "name": "SET_TRANSPARENT" }, { - "kind": "Method", - "canonicalReference": "server!ParticleEmitter#setPositionVariance:member(1)", - "docComment": "/**\n * Sets the position variance of an emitted particle.\n *\n * @param positionVariance - The position variance of an emitted particle.\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!ParticleEmitterEvent.SET_VELOCITY:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "setPositionVariance(positionVariance: " - }, - { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "text": "SET_VELOCITY = " }, { "kind": "Content", - "text": "): " - }, + "text": "\"PARTICLE_EMITTER.SET_VELOCITY\"" + } + ], + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "SET_VELOCITY" + }, + { + "kind": "EnumMember", + "canonicalReference": "server!ParticleEmitterEvent.SET_VELOCITY_VARIANCE:member", + "docComment": "", + "excerptTokens": [ { "kind": "Content", - "text": "void" + "text": "SET_VELOCITY_VARIANCE = " }, { "kind": "Content", - "text": ";" + "text": "\"PARTICLE_EMITTER.SET_VELOCITY_VARIANCE\"" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 }, "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ + "name": "SET_VELOCITY_VARIANCE" + }, + { + "kind": "EnumMember", + "canonicalReference": "server!ParticleEmitterEvent.SPAWN:member", + "docComment": "", + "excerptTokens": [ { - "parameterName": "positionVariance", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false + "kind": "Content", + "text": "SPAWN = " + }, + { + "kind": "Content", + "text": "\"PARTICLE_EMITTER.SPAWN\"" } ], - "isOptional": false, - "isAbstract": false, - "name": "setPositionVariance" - }, + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "name": "SPAWN" + } + ] + }, + { + "kind": "Interface", + "canonicalReference": "server!ParticleEmitterEventPayloads:interface", + "docComment": "/**\n * Event payloads for ParticleEmitter emitted events.\n *\n * **Category:** Events\n *\n * @public\n */\n", + "excerptTokens": [ { - "kind": "Method", - "canonicalReference": "server!ParticleEmitter#setRate:member(1)", - "docComment": "/**\n * Sets the rate per second at which particles are emitted.\n *\n * @param rate - The rate per second at which particles are emitted.\n */\n", + "kind": "Content", + "text": "export interface ParticleEmitterEventPayloads " + } + ], + "fileUrlPath": "src/worlds/particles/ParticleEmitter.ts", + "releaseTag": "Public", + "name": "ParticleEmitterEventPayloads", + "preserveMemberOrder": false, + "members": [ + { + "kind": "PropertySignature", + "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.BURST\":member", + "docComment": "/**\n * Emitted when a ParticleEmitter bursts the specified number of particles.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setRate(rate: " + "text": "[" + }, + { + "kind": "Reference", + "text": "ParticleEmitterEvent.BURST", + "canonicalReference": "server!ParticleEmitterEvent.BURST:member" }, { "kind": "Content", - "text": "number" + "text": "]: " }, { "kind": "Content", - "text": "): " + "text": "{\n particleEmitter: " + }, + { + "kind": "Reference", + "text": "ParticleEmitter", + "canonicalReference": "server!ParticleEmitter:class" }, { "kind": "Content", - "text": "void" + "text": ";\n count: number;\n }" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "rate", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], + "isReadonly": false, "isOptional": false, - "isAbstract": false, - "name": "setRate" + "releaseTag": "Public", + "name": "\"PARTICLE_EMITTER.BURST\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 6 + } }, { - "kind": "Method", - "canonicalReference": "server!ParticleEmitter#setRateVariance:member(1)", - "docComment": "/**\n * Sets the rate variance of the particle emission rate.\n *\n * @param rateVariance - The rate variance of the particle emission rate.\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.DESPAWN\":member", + "docComment": "/**\n * Emitted when a ParticleEmitter is despawned.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setRateVariance(rateVariance: " + "text": "[" + }, + { + "kind": "Reference", + "text": "ParticleEmitterEvent.DESPAWN", + "canonicalReference": "server!ParticleEmitterEvent.DESPAWN:member" }, { "kind": "Content", - "text": "number" + "text": "]: " }, { "kind": "Content", - "text": "): " + "text": "{\n particleEmitter: " + }, + { + "kind": "Reference", + "text": "ParticleEmitter", + "canonicalReference": "server!ParticleEmitter:class" }, { "kind": "Content", - "text": "void" + "text": ";\n }" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "rateVariance", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], + "isReadonly": false, "isOptional": false, - "isAbstract": false, - "name": "setRateVariance" + "releaseTag": "Public", + "name": "\"PARTICLE_EMITTER.DESPAWN\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 6 + } }, { - "kind": "Method", - "canonicalReference": "server!ParticleEmitter#setSizeEnd:member(1)", - "docComment": "/**\n * Sets the size at the end of an emitted particle's lifetime.\n *\n * @param sizeEnd - The size at the end of an emitted particle's lifetime.\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_ALPHA_TEST\":member", + "docComment": "/**\n * Emitted when the alpha test value is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setSizeEnd(sizeEnd: " + "text": "[" + }, + { + "kind": "Reference", + "text": "ParticleEmitterEvent.SET_ALPHA_TEST", + "canonicalReference": "server!ParticleEmitterEvent.SET_ALPHA_TEST:member" }, { "kind": "Content", - "text": "number" + "text": "]: " }, { "kind": "Content", - "text": "): " + "text": "{\n particleEmitter: " + }, + { + "kind": "Reference", + "text": "ParticleEmitter", + "canonicalReference": "server!ParticleEmitter:class" }, { "kind": "Content", - "text": "void" + "text": ";\n alphaTest: number;\n }" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "sizeEnd", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], + "isReadonly": false, "isOptional": false, - "isAbstract": false, - "name": "setSizeEnd" + "releaseTag": "Public", + "name": "\"PARTICLE_EMITTER.SET_ALPHA_TEST\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 6 + } }, { - "kind": "Method", - "canonicalReference": "server!ParticleEmitter#setSizeEndVariance:member(1)", - "docComment": "/**\n * Sets the size variance at the end of an emitted particle's lifetime.\n *\n * @param sizeEndVariance - The size variance at the end of an emitted particle's lifetime.\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY_NODE_NAME\":member", + "docComment": "/**\n * Emitted when the name of the node of the attached entity the particle emitter is attached to is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setSizeEndVariance(sizeEndVariance: " + "text": "[" + }, + { + "kind": "Reference", + "text": "ParticleEmitterEvent.SET_ATTACHED_TO_ENTITY_NODE_NAME", + "canonicalReference": "server!ParticleEmitterEvent.SET_ATTACHED_TO_ENTITY_NODE_NAME:member" }, { "kind": "Content", - "text": "number" + "text": "]: " }, { "kind": "Content", - "text": "): " + "text": "{\n particleEmitter: " + }, + { + "kind": "Reference", + "text": "ParticleEmitter", + "canonicalReference": "server!ParticleEmitter:class" }, { "kind": "Content", - "text": "void" + "text": ";\n attachedToEntityNodeName: string;\n }" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "sizeEndVariance", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], + "isReadonly": false, "isOptional": false, - "isAbstract": false, - "name": "setSizeEndVariance" + "releaseTag": "Public", + "name": "\"PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY_NODE_NAME\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 6 + } }, { - "kind": "Method", - "canonicalReference": "server!ParticleEmitter#setSizeStart:member(1)", - "docComment": "/**\n * Sets the size at the start of an emitted particle's lifetime.\n *\n * @param sizeStart - The size at the start of an emitted particle's lifetime.\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY\":member", + "docComment": "/**\n * Emitted when the ParticleEmitter is attached to an entity.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setSizeStart(sizeStart: " + "text": "[" + }, + { + "kind": "Reference", + "text": "ParticleEmitterEvent.SET_ATTACHED_TO_ENTITY", + "canonicalReference": "server!ParticleEmitterEvent.SET_ATTACHED_TO_ENTITY:member" + }, + { + "kind": "Content", + "text": "]: " + }, + { + "kind": "Content", + "text": "{\n particleEmitter: " }, { - "kind": "Content", - "text": "number" + "kind": "Reference", + "text": "ParticleEmitter", + "canonicalReference": "server!ParticleEmitter:class" }, { "kind": "Content", - "text": "): " + "text": ";\n entity: " + }, + { + "kind": "Reference", + "text": "Entity", + "canonicalReference": "server!Entity:class" }, { "kind": "Content", - "text": "void" + "text": ";\n }" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "sizeStart", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], + "isReadonly": false, "isOptional": false, - "isAbstract": false, - "name": "setSizeStart" + "releaseTag": "Public", + "name": "\"PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 8 + } }, { - "kind": "Method", - "canonicalReference": "server!ParticleEmitter#setSizeStartVariance:member(1)", - "docComment": "/**\n * Sets the size variance at the start of an emitted particle's lifetime.\n *\n * @param sizeStartVariance - The size variance at the start of an emitted particle's lifetime.\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_COLOR_END_VARIANCE\":member", + "docComment": "/**\n * Emitted when the color variance of an emitted particle at the end of its lifetime is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setSizeStartVariance(sizeStartVariance: " + "text": "[" + }, + { + "kind": "Reference", + "text": "ParticleEmitterEvent.SET_COLOR_END_VARIANCE", + "canonicalReference": "server!ParticleEmitterEvent.SET_COLOR_END_VARIANCE:member" }, { "kind": "Content", - "text": "number" + "text": "]: " }, { "kind": "Content", - "text": "): " + "text": "{\n particleEmitter: " + }, + { + "kind": "Reference", + "text": "ParticleEmitter", + "canonicalReference": "server!ParticleEmitter:class" }, { "kind": "Content", - "text": "void" + "text": ";\n colorEndVariance: " + }, + { + "kind": "Reference", + "text": "RgbColor", + "canonicalReference": "server!RgbColor:interface" }, { "kind": "Content", - "text": ";" - } - ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ + "text": ";\n }" + }, { - "parameterName": "sizeStartVariance", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false + "kind": "Content", + "text": ";" } ], + "isReadonly": false, "isOptional": false, - "isAbstract": false, - "name": "setSizeStartVariance" + "releaseTag": "Public", + "name": "\"PARTICLE_EMITTER.SET_COLOR_END_VARIANCE\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 8 + } }, { - "kind": "Method", - "canonicalReference": "server!ParticleEmitter#setTextureUri:member(1)", - "docComment": "/**\n * Sets the texture URI of the particles emitted.\n *\n * @param textureUri - The texture URI of the particles emitted.\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_COLOR_END\":member", + "docComment": "/**\n * Emitted when the color of an emitted particle at the end of its lifetime is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setTextureUri(textureUri: " + "text": "[" + }, + { + "kind": "Reference", + "text": "ParticleEmitterEvent.SET_COLOR_END", + "canonicalReference": "server!ParticleEmitterEvent.SET_COLOR_END:member" }, { "kind": "Content", - "text": "string" + "text": "]: " }, { "kind": "Content", - "text": "): " + "text": "{\n particleEmitter: " + }, + { + "kind": "Reference", + "text": "ParticleEmitter", + "canonicalReference": "server!ParticleEmitter:class" }, { "kind": "Content", - "text": "void" + "text": ";\n colorEnd: " + }, + { + "kind": "Reference", + "text": "RgbColor", + "canonicalReference": "server!RgbColor:interface" }, { "kind": "Content", - "text": ";" - } - ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ + "text": ";\n }" + }, { - "parameterName": "textureUri", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false + "kind": "Content", + "text": ";" } ], + "isReadonly": false, "isOptional": false, - "isAbstract": false, - "name": "setTextureUri" + "releaseTag": "Public", + "name": "\"PARTICLE_EMITTER.SET_COLOR_END\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 8 + } }, { - "kind": "Method", - "canonicalReference": "server!ParticleEmitter#setTransparent:member(1)", - "docComment": "/**\n * Sets the transparency of the particle emitter.\n *\n * @param transparent - The transparency of the particle emitter.\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_COLOR_INTENSITY_END_VARIANCE\":member", + "docComment": "/**\n * Emitted when the color intensity variance of an emitted particle at the end of its lifetime is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setTransparent(transparent: " + "text": "[" + }, + { + "kind": "Reference", + "text": "ParticleEmitterEvent.SET_COLOR_INTENSITY_END_VARIANCE", + "canonicalReference": "server!ParticleEmitterEvent.SET_COLOR_INTENSITY_END_VARIANCE:member" }, { "kind": "Content", - "text": "boolean" + "text": "]: " }, { "kind": "Content", - "text": "): " + "text": "{\n particleEmitter: " + }, + { + "kind": "Reference", + "text": "ParticleEmitter", + "canonicalReference": "server!ParticleEmitter:class" }, { "kind": "Content", - "text": "void" + "text": ";\n colorIntensityEndVariance: number;\n }" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "transparent", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], + "isReadonly": false, "isOptional": false, - "isAbstract": false, - "name": "setTransparent" + "releaseTag": "Public", + "name": "\"PARTICLE_EMITTER.SET_COLOR_INTENSITY_END_VARIANCE\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 6 + } }, { - "kind": "Method", - "canonicalReference": "server!ParticleEmitter#setVelocity:member(1)", - "docComment": "/**\n * Sets the velocity of an emitted particle.\n *\n * @param velocity - The velocity of an emitted particle.\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_COLOR_INTENSITY_END\":member", + "docComment": "/**\n * Emitted when the color intensity of an emitted particle at the end of its lifetime is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setVelocity(velocity: " + "text": "[" }, { "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "text": "ParticleEmitterEvent.SET_COLOR_INTENSITY_END", + "canonicalReference": "server!ParticleEmitterEvent.SET_COLOR_INTENSITY_END:member" }, { "kind": "Content", - "text": "): " + "text": "]: " }, { "kind": "Content", - "text": "void" + "text": "{\n particleEmitter: " + }, + { + "kind": "Reference", + "text": "ParticleEmitter", + "canonicalReference": "server!ParticleEmitter:class" }, { "kind": "Content", - "text": ";" - } - ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ + "text": ";\n colorIntensityEnd: number;\n }" + }, { - "parameterName": "velocity", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false + "kind": "Content", + "text": ";" } ], + "isReadonly": false, "isOptional": false, - "isAbstract": false, - "name": "setVelocity" + "releaseTag": "Public", + "name": "\"PARTICLE_EMITTER.SET_COLOR_INTENSITY_END\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 6 + } }, { - "kind": "Method", - "canonicalReference": "server!ParticleEmitter#setVelocityVariance:member(1)", - "docComment": "/**\n * Sets the velocity variance of an emitted particle.\n *\n * @param velocityVariance - The velocity variance of an emitted particle.\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_COLOR_INTENSITY_START_VARIANCE\":member", + "docComment": "/**\n * Emitted when the color intensity variance of an emitted particle at the start of its lifetime is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "setVelocityVariance(velocityVariance: " + "text": "[" }, { "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "text": "ParticleEmitterEvent.SET_COLOR_INTENSITY_START_VARIANCE", + "canonicalReference": "server!ParticleEmitterEvent.SET_COLOR_INTENSITY_START_VARIANCE:member" }, { "kind": "Content", - "text": "): " + "text": "]: " }, { "kind": "Content", - "text": "void" + "text": "{\n particleEmitter: " }, { - "kind": "Content", - "text": ";" - } - ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "velocityVariance", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "setVelocityVariance" - }, - { - "kind": "Property", - "canonicalReference": "server!ParticleEmitter#sizeEnd:member", - "docComment": "/**\n * The size at the end of an emitted particle's lifetime.\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "get sizeEnd(): " + "kind": "Reference", + "text": "ParticleEmitter", + "canonicalReference": "server!ParticleEmitter:class" }, { "kind": "Content", - "text": "number | undefined" + "text": ";\n colorIntensityStartVariance: number;\n }" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, + "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "sizeEnd", + "name": "\"PARTICLE_EMITTER.SET_COLOR_INTENSITY_START_VARIANCE\"", "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "startIndex": 3, + "endIndex": 6 + } }, { - "kind": "Property", - "canonicalReference": "server!ParticleEmitter#sizeEndVariance:member", - "docComment": "/**\n * The size variance at the end of an emitted particle's lifetime.\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_COLOR_INTENSITY_START\":member", + "docComment": "/**\n * Emitted when the color intensity of an emitted particle at the start of its lifetime is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get sizeEndVariance(): " + "text": "[" }, { - "kind": "Content", - "text": "number | undefined" + "kind": "Reference", + "text": "ParticleEmitterEvent.SET_COLOR_INTENSITY_START", + "canonicalReference": "server!ParticleEmitterEvent.SET_COLOR_INTENSITY_START:member" }, { "kind": "Content", - "text": ";" - } - ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "sizeEndVariance", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false - }, - { - "kind": "Property", - "canonicalReference": "server!ParticleEmitter#sizeStart:member", - "docComment": "/**\n * The size at the start of an emitted particle's lifetime.\n */\n", - "excerptTokens": [ + "text": "]: " + }, { "kind": "Content", - "text": "get sizeStart(): " + "text": "{\n particleEmitter: " + }, + { + "kind": "Reference", + "text": "ParticleEmitter", + "canonicalReference": "server!ParticleEmitter:class" }, { "kind": "Content", - "text": "number | undefined" + "text": ";\n colorIntensityStart: number;\n }" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, + "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "sizeStart", + "name": "\"PARTICLE_EMITTER.SET_COLOR_INTENSITY_START\"", "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "startIndex": 3, + "endIndex": 6 + } }, { - "kind": "Property", - "canonicalReference": "server!ParticleEmitter#sizeStartVariance:member", - "docComment": "/**\n * The size variance at the start of an emitted particle's lifetime.\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_COLOR_START_VARIANCE\":member", + "docComment": "/**\n * Emitted when the color variance of an emitted particle at the start of its lifetime is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get sizeStartVariance(): " + "text": "[" + }, + { + "kind": "Reference", + "text": "ParticleEmitterEvent.SET_COLOR_START_VARIANCE", + "canonicalReference": "server!ParticleEmitterEvent.SET_COLOR_START_VARIANCE:member" }, { "kind": "Content", - "text": "number | undefined" + "text": "]: " }, { "kind": "Content", - "text": ";" - } - ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "sizeStartVariance", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false - }, - { - "kind": "Property", - "canonicalReference": "server!ParticleEmitter#sizeVariance:member", - "docComment": "/**\n * The size variance of an emitted particle.\n */\n", - "excerptTokens": [ + "text": "{\n particleEmitter: " + }, + { + "kind": "Reference", + "text": "ParticleEmitter", + "canonicalReference": "server!ParticleEmitter:class" + }, { "kind": "Content", - "text": "get sizeVariance(): " + "text": ";\n colorStartVariance: " + }, + { + "kind": "Reference", + "text": "RgbColor", + "canonicalReference": "server!RgbColor:interface" }, { "kind": "Content", - "text": "number | undefined" + "text": ";\n }" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, + "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "sizeVariance", + "name": "\"PARTICLE_EMITTER.SET_COLOR_START_VARIANCE\"", "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "startIndex": 3, + "endIndex": 8 + } }, { - "kind": "Method", - "canonicalReference": "server!ParticleEmitter#spawn:member(1)", - "docComment": "/**\n * Spawns the ParticleEmitter in the world.\n *\n * @remarks\n *\n * **Requires spawned entity:** If attached to an entity, the entity must be spawned first.\n *\n * @param world - The world to spawn the ParticleEmitter in.\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_COLOR_START\":member", + "docComment": "/**\n * Emitted when the color of an emitted particle at the start of its lifetime is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "spawn(world: " + "text": "[" }, { "kind": "Reference", - "text": "World", - "canonicalReference": "server!World:class" + "text": "ParticleEmitterEvent.SET_COLOR_START", + "canonicalReference": "server!ParticleEmitterEvent.SET_COLOR_START:member" }, { "kind": "Content", - "text": "): " + "text": "]: " }, { "kind": "Content", - "text": "void" + "text": "{\n particleEmitter: " }, { - "kind": "Content", - "text": ";" - } - ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "world", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - } - ], - "isOptional": false, - "isAbstract": false, - "name": "spawn" - }, - { - "kind": "Method", - "canonicalReference": "server!ParticleEmitter#stop:member(1)", - "docComment": "/**\n * Stops the particle emission.\n */\n", - "excerptTokens": [ + "kind": "Reference", + "text": "ParticleEmitter", + "canonicalReference": "server!ParticleEmitter:class" + }, { "kind": "Content", - "text": "stop(): " + "text": ";\n colorStart: " + }, + { + "kind": "Reference", + "text": "RgbColor", + "canonicalReference": "server!RgbColor:interface" }, { "kind": "Content", - "text": "void" + "text": ";\n }" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [], + "isReadonly": false, "isOptional": false, - "isAbstract": false, - "name": "stop" + "releaseTag": "Public", + "name": "\"PARTICLE_EMITTER.SET_COLOR_START\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 8 + } }, { - "kind": "Property", - "canonicalReference": "server!ParticleEmitter#textureUri:member", - "docComment": "/**\n * The URI or path to the texture to be used for the particles.\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_GRAVITY\":member", + "docComment": "/**\n * Emitted when the gravity vector for an emitted particle is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get textureUri(): " + "text": "[" + }, + { + "kind": "Reference", + "text": "ParticleEmitterEvent.SET_GRAVITY", + "canonicalReference": "server!ParticleEmitterEvent.SET_GRAVITY:member" }, { "kind": "Content", - "text": "string" + "text": "]: " }, { "kind": "Content", - "text": ";" - } - ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "textureUri", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false - }, - { - "kind": "Property", - "canonicalReference": "server!ParticleEmitter#transparent:member", - "docComment": "/**\n * Whether an emitted particle is transparent, resulting in smoother transparency blending.\n */\n", - "excerptTokens": [ + "text": "{\n particleEmitter: " + }, + { + "kind": "Reference", + "text": "ParticleEmitter", + "canonicalReference": "server!ParticleEmitter:class" + }, { "kind": "Content", - "text": "get transparent(): " + "text": ";\n gravity: " + }, + { + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", - "text": "boolean | undefined" + "text": ";\n }" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, + "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "transparent", + "name": "\"PARTICLE_EMITTER.SET_GRAVITY\"", "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "startIndex": 3, + "endIndex": 8 + } }, { - "kind": "Property", - "canonicalReference": "server!ParticleEmitter#velocity:member", - "docComment": "/**\n * The velocity of an emitted particle.\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_LIFETIME_VARIANCE\":member", + "docComment": "/**\n * Emitted when the lifetime variance of an emitted particle is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get velocity(): " + "text": "[" }, { "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "text": "ParticleEmitterEvent.SET_LIFETIME_VARIANCE", + "canonicalReference": "server!ParticleEmitterEvent.SET_LIFETIME_VARIANCE:member" }, { "kind": "Content", - "text": " | undefined" + "text": "]: " + }, + { + "kind": "Content", + "text": "{\n particleEmitter: " + }, + { + "kind": "Reference", + "text": "ParticleEmitter", + "canonicalReference": "server!ParticleEmitter:class" + }, + { + "kind": "Content", + "text": ";\n lifetimeVariance: number;\n }" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, + "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "velocity", + "name": "\"PARTICLE_EMITTER.SET_LIFETIME_VARIANCE\"", "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 3 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "startIndex": 3, + "endIndex": 6 + } }, { - "kind": "Property", - "canonicalReference": "server!ParticleEmitter#velocityVariance:member", - "docComment": "/**\n * The velocity variance of an emitted particle.\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_LIFETIME\":member", + "docComment": "/**\n * Emitted when the lifetime of an emitted particle is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get velocityVariance(): " + "text": "[" }, { "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "text": "ParticleEmitterEvent.SET_LIFETIME", + "canonicalReference": "server!ParticleEmitterEvent.SET_LIFETIME:member" }, { "kind": "Content", - "text": " | undefined" + "text": "]: " + }, + { + "kind": "Content", + "text": "{\n particleEmitter: " + }, + { + "kind": "Reference", + "text": "ParticleEmitter", + "canonicalReference": "server!ParticleEmitter:class" + }, + { + "kind": "Content", + "text": ";\n lifetime: number;\n }" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, + "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "velocityVariance", + "name": "\"PARTICLE_EMITTER.SET_LIFETIME\"", "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 3 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "startIndex": 3, + "endIndex": 6 + } }, { - "kind": "Property", - "canonicalReference": "server!ParticleEmitter#world:member", - "docComment": "/**\n * The world the ParticleEmitter is in.\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_MAX_PARTICLES\":member", + "docComment": "/**\n * Emitted when the maximum number of live particles is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "get world(): " + "text": "[" }, { "kind": "Reference", - "text": "World", - "canonicalReference": "server!World:class" + "text": "ParticleEmitterEvent.SET_MAX_PARTICLES", + "canonicalReference": "server!ParticleEmitterEvent.SET_MAX_PARTICLES:member" }, { "kind": "Content", - "text": " | undefined" + "text": "]: " }, { "kind": "Content", - "text": ";" - } - ], - "isReadonly": true, - "isOptional": false, - "releaseTag": "Public", - "name": "world", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 3 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false - } - ], - "extendsTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "implementsTokenRanges": [ - { - "startIndex": 3, - "endIndex": 4 - } - ] - }, - { - "kind": "Enum", - "canonicalReference": "server!ParticleEmitterEvent:enum", - "docComment": "/**\n * Event types a ParticleEmitter instance can emit.\n *\n * See `ParticleEmitterEventPayloads` for the payloads.\n *\n * **Category:** Events\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export declare enum ParticleEmitterEvent " - } - ], - "fileUrlPath": "src/worlds/particles/ParticleEmitter.ts", - "releaseTag": "Public", - "name": "ParticleEmitterEvent", - "preserveMemberOrder": false, - "members": [ - { - "kind": "EnumMember", - "canonicalReference": "server!ParticleEmitterEvent.BURST:member", - "docComment": "", - "excerptTokens": [ + "text": "{\n particleEmitter: " + }, + { + "kind": "Reference", + "text": "ParticleEmitter", + "canonicalReference": "server!ParticleEmitter:class" + }, { "kind": "Content", - "text": "BURST = " + "text": ";\n maxParticles: number;\n }" }, { "kind": "Content", - "text": "\"PARTICLE_EMITTER.BURST\"" + "text": ";" } ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, + "isReadonly": false, + "isOptional": false, "releaseTag": "Public", - "name": "BURST" + "name": "\"PARTICLE_EMITTER.SET_MAX_PARTICLES\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 6 + } }, { - "kind": "EnumMember", - "canonicalReference": "server!ParticleEmitterEvent.DESPAWN:member", - "docComment": "", + "kind": "PropertySignature", + "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_OFFSET\":member", + "docComment": "/**\n * Emitted when the offset of the particle emitter is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "DESPAWN = " + "text": "[" + }, + { + "kind": "Reference", + "text": "ParticleEmitterEvent.SET_OFFSET", + "canonicalReference": "server!ParticleEmitterEvent.SET_OFFSET:member" }, { "kind": "Content", - "text": "\"PARTICLE_EMITTER.DESPAWN\"" - } - ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "releaseTag": "Public", - "name": "DESPAWN" - }, - { - "kind": "EnumMember", - "canonicalReference": "server!ParticleEmitterEvent.SET_ALPHA_TEST:member", - "docComment": "", - "excerptTokens": [ + "text": "]: " + }, { "kind": "Content", - "text": "SET_ALPHA_TEST = " + "text": "{\n particleEmitter: " + }, + { + "kind": "Reference", + "text": "ParticleEmitter", + "canonicalReference": "server!ParticleEmitter:class" }, { "kind": "Content", - "text": "\"PARTICLE_EMITTER.SET_ALPHA_TEST\"" - } - ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "releaseTag": "Public", - "name": "SET_ALPHA_TEST" - }, - { - "kind": "EnumMember", - "canonicalReference": "server!ParticleEmitterEvent.SET_ATTACHED_TO_ENTITY:member", - "docComment": "", - "excerptTokens": [ + "text": ";\n offset: " + }, + { + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" + }, { "kind": "Content", - "text": "SET_ATTACHED_TO_ENTITY = " + "text": ";\n }" }, { "kind": "Content", - "text": "\"PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY\"" + "text": ";" } ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, + "isReadonly": false, + "isOptional": false, "releaseTag": "Public", - "name": "SET_ATTACHED_TO_ENTITY" + "name": "\"PARTICLE_EMITTER.SET_OFFSET\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 8 + } }, { - "kind": "EnumMember", - "canonicalReference": "server!ParticleEmitterEvent.SET_ATTACHED_TO_ENTITY_NODE_NAME:member", - "docComment": "", + "kind": "PropertySignature", + "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_OPACITY_END_VARIANCE\":member", + "docComment": "/**\n * Emitted when the opacity variance of an emitted particle at the end of its lifetime is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "SET_ATTACHED_TO_ENTITY_NODE_NAME = " + "text": "[" }, { - "kind": "Content", - "text": "\"PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY_NODE_NAME\"" - } - ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "releaseTag": "Public", - "name": "SET_ATTACHED_TO_ENTITY_NODE_NAME" - }, - { - "kind": "EnumMember", - "canonicalReference": "server!ParticleEmitterEvent.SET_COLOR_END:member", - "docComment": "", - "excerptTokens": [ + "kind": "Reference", + "text": "ParticleEmitterEvent.SET_OPACITY_END_VARIANCE", + "canonicalReference": "server!ParticleEmitterEvent.SET_OPACITY_END_VARIANCE:member" + }, { "kind": "Content", - "text": "SET_COLOR_END = " + "text": "]: " }, { "kind": "Content", - "text": "\"PARTICLE_EMITTER.SET_COLOR_END\"" - } - ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "releaseTag": "Public", - "name": "SET_COLOR_END" - }, - { - "kind": "EnumMember", - "canonicalReference": "server!ParticleEmitterEvent.SET_COLOR_END_VARIANCE:member", - "docComment": "", - "excerptTokens": [ + "text": "{\n particleEmitter: " + }, + { + "kind": "Reference", + "text": "ParticleEmitter", + "canonicalReference": "server!ParticleEmitter:class" + }, { "kind": "Content", - "text": "SET_COLOR_END_VARIANCE = " + "text": ";\n opacityEndVariance: number;\n }" }, { "kind": "Content", - "text": "\"PARTICLE_EMITTER.SET_COLOR_END_VARIANCE\"" + "text": ";" } ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, + "isReadonly": false, + "isOptional": false, "releaseTag": "Public", - "name": "SET_COLOR_END_VARIANCE" + "name": "\"PARTICLE_EMITTER.SET_OPACITY_END_VARIANCE\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 6 + } }, { - "kind": "EnumMember", - "canonicalReference": "server!ParticleEmitterEvent.SET_COLOR_INTENSITY_END:member", - "docComment": "", + "kind": "PropertySignature", + "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_OPACITY_END\":member", + "docComment": "/**\n * Emitted when the opacity of an emitted particle at the end of its lifetime is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "SET_COLOR_INTENSITY_END = " + "text": "[" }, { - "kind": "Content", - "text": "\"PARTICLE_EMITTER.SET_COLOR_INTENSITY_END\"" - } - ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "releaseTag": "Public", - "name": "SET_COLOR_INTENSITY_END" - }, - { - "kind": "EnumMember", - "canonicalReference": "server!ParticleEmitterEvent.SET_COLOR_INTENSITY_END_VARIANCE:member", - "docComment": "", - "excerptTokens": [ + "kind": "Reference", + "text": "ParticleEmitterEvent.SET_OPACITY_END", + "canonicalReference": "server!ParticleEmitterEvent.SET_OPACITY_END:member" + }, { "kind": "Content", - "text": "SET_COLOR_INTENSITY_END_VARIANCE = " + "text": "]: " }, { "kind": "Content", - "text": "\"PARTICLE_EMITTER.SET_COLOR_INTENSITY_END_VARIANCE\"" - } - ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "releaseTag": "Public", - "name": "SET_COLOR_INTENSITY_END_VARIANCE" - }, - { - "kind": "EnumMember", - "canonicalReference": "server!ParticleEmitterEvent.SET_COLOR_INTENSITY_START:member", - "docComment": "", - "excerptTokens": [ + "text": "{\n particleEmitter: " + }, + { + "kind": "Reference", + "text": "ParticleEmitter", + "canonicalReference": "server!ParticleEmitter:class" + }, { "kind": "Content", - "text": "SET_COLOR_INTENSITY_START = " + "text": ";\n opacityEnd: number;\n }" }, { "kind": "Content", - "text": "\"PARTICLE_EMITTER.SET_COLOR_INTENSITY_START\"" + "text": ";" } ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, + "isReadonly": false, + "isOptional": false, "releaseTag": "Public", - "name": "SET_COLOR_INTENSITY_START" + "name": "\"PARTICLE_EMITTER.SET_OPACITY_END\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 6 + } }, { - "kind": "EnumMember", - "canonicalReference": "server!ParticleEmitterEvent.SET_COLOR_INTENSITY_START_VARIANCE:member", - "docComment": "", + "kind": "PropertySignature", + "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_OPACITY_START_VARIANCE\":member", + "docComment": "/**\n * Emitted when the opacity variance of an emitted particle at the start of its lifetime is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "SET_COLOR_INTENSITY_START_VARIANCE = " + "text": "[" }, { - "kind": "Content", - "text": "\"PARTICLE_EMITTER.SET_COLOR_INTENSITY_START_VARIANCE\"" - } - ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "releaseTag": "Public", - "name": "SET_COLOR_INTENSITY_START_VARIANCE" - }, - { - "kind": "EnumMember", - "canonicalReference": "server!ParticleEmitterEvent.SET_COLOR_START:member", - "docComment": "", - "excerptTokens": [ + "kind": "Reference", + "text": "ParticleEmitterEvent.SET_OPACITY_START_VARIANCE", + "canonicalReference": "server!ParticleEmitterEvent.SET_OPACITY_START_VARIANCE:member" + }, { "kind": "Content", - "text": "SET_COLOR_START = " + "text": "]: " }, { "kind": "Content", - "text": "\"PARTICLE_EMITTER.SET_COLOR_START\"" - } - ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "releaseTag": "Public", - "name": "SET_COLOR_START" - }, - { - "kind": "EnumMember", - "canonicalReference": "server!ParticleEmitterEvent.SET_COLOR_START_VARIANCE:member", - "docComment": "", - "excerptTokens": [ + "text": "{\n particleEmitter: " + }, + { + "kind": "Reference", + "text": "ParticleEmitter", + "canonicalReference": "server!ParticleEmitter:class" + }, { "kind": "Content", - "text": "SET_COLOR_START_VARIANCE = " + "text": ";\n opacityStartVariance: number;\n }" }, { "kind": "Content", - "text": "\"PARTICLE_EMITTER.SET_COLOR_START_VARIANCE\"" + "text": ";" } ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, + "isReadonly": false, + "isOptional": false, "releaseTag": "Public", - "name": "SET_COLOR_START_VARIANCE" + "name": "\"PARTICLE_EMITTER.SET_OPACITY_START_VARIANCE\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 6 + } }, { - "kind": "EnumMember", - "canonicalReference": "server!ParticleEmitterEvent.SET_GRAVITY:member", - "docComment": "", + "kind": "PropertySignature", + "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_OPACITY_START\":member", + "docComment": "/**\n * Emitted when the opacity of an emitted particle at the start of its lifetime is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "SET_GRAVITY = " + "text": "[" + }, + { + "kind": "Reference", + "text": "ParticleEmitterEvent.SET_OPACITY_START", + "canonicalReference": "server!ParticleEmitterEvent.SET_OPACITY_START:member" }, { "kind": "Content", - "text": "\"PARTICLE_EMITTER.SET_GRAVITY\"" - } - ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "releaseTag": "Public", - "name": "SET_GRAVITY" - }, - { - "kind": "EnumMember", - "canonicalReference": "server!ParticleEmitterEvent.SET_LIFETIME:member", - "docComment": "", - "excerptTokens": [ + "text": "]: " + }, { "kind": "Content", - "text": "SET_LIFETIME = " + "text": "{\n particleEmitter: " + }, + { + "kind": "Reference", + "text": "ParticleEmitter", + "canonicalReference": "server!ParticleEmitter:class" }, { "kind": "Content", - "text": "\"PARTICLE_EMITTER.SET_LIFETIME\"" + "text": ";\n opacityStart: number;\n }" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, + "isReadonly": false, + "isOptional": false, "releaseTag": "Public", - "name": "SET_LIFETIME" + "name": "\"PARTICLE_EMITTER.SET_OPACITY_START\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 6 + } }, { - "kind": "EnumMember", - "canonicalReference": "server!ParticleEmitterEvent.SET_LIFETIME_VARIANCE:member", - "docComment": "", + "kind": "PropertySignature", + "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_ORIENTATION_FIXED_ROTATION\":member", + "docComment": "/**\n * Emitted when the fixed rotation of emitted particles is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "SET_LIFETIME_VARIANCE = " + "text": "[" + }, + { + "kind": "Reference", + "text": "ParticleEmitterEvent.SET_ORIENTATION_FIXED_ROTATION", + "canonicalReference": "server!ParticleEmitterEvent.SET_ORIENTATION_FIXED_ROTATION:member" }, { "kind": "Content", - "text": "\"PARTICLE_EMITTER.SET_LIFETIME_VARIANCE\"" - } - ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "releaseTag": "Public", - "name": "SET_LIFETIME_VARIANCE" - }, - { - "kind": "EnumMember", - "canonicalReference": "server!ParticleEmitterEvent.SET_MAX_PARTICLES:member", - "docComment": "", - "excerptTokens": [ + "text": "]: " + }, { "kind": "Content", - "text": "SET_MAX_PARTICLES = " + "text": "{\n particleEmitter: " + }, + { + "kind": "Reference", + "text": "ParticleEmitter", + "canonicalReference": "server!ParticleEmitter:class" }, { "kind": "Content", - "text": "\"PARTICLE_EMITTER.SET_MAX_PARTICLES\"" - } - ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "releaseTag": "Public", - "name": "SET_MAX_PARTICLES" - }, - { - "kind": "EnumMember", - "canonicalReference": "server!ParticleEmitterEvent.SET_OFFSET:member", - "docComment": "", - "excerptTokens": [ + "text": ";\n orientationFixedRotation: " + }, + { + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" + }, { "kind": "Content", - "text": "SET_OFFSET = " + "text": ";\n }" }, { "kind": "Content", - "text": "\"PARTICLE_EMITTER.SET_OFFSET\"" + "text": ";" } ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, + "isReadonly": false, + "isOptional": false, "releaseTag": "Public", - "name": "SET_OFFSET" + "name": "\"PARTICLE_EMITTER.SET_ORIENTATION_FIXED_ROTATION\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 8 + } }, { - "kind": "EnumMember", - "canonicalReference": "server!ParticleEmitterEvent.SET_OPACITY_END:member", - "docComment": "", + "kind": "PropertySignature", + "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_ORIENTATION\":member", + "docComment": "/**\n * Emitted when the orientation mode of emitted particles is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "SET_OPACITY_END = " + "text": "[" + }, + { + "kind": "Reference", + "text": "ParticleEmitterEvent.SET_ORIENTATION", + "canonicalReference": "server!ParticleEmitterEvent.SET_ORIENTATION:member" }, { "kind": "Content", - "text": "\"PARTICLE_EMITTER.SET_OPACITY_END\"" - } - ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "releaseTag": "Public", - "name": "SET_OPACITY_END" - }, - { - "kind": "EnumMember", - "canonicalReference": "server!ParticleEmitterEvent.SET_OPACITY_END_VARIANCE:member", - "docComment": "", - "excerptTokens": [ + "text": "]: " + }, { "kind": "Content", - "text": "SET_OPACITY_END_VARIANCE = " + "text": "{\n particleEmitter: " + }, + { + "kind": "Reference", + "text": "ParticleEmitter", + "canonicalReference": "server!ParticleEmitter:class" }, { "kind": "Content", - "text": "\"PARTICLE_EMITTER.SET_OPACITY_END_VARIANCE\"" - } - ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "releaseTag": "Public", - "name": "SET_OPACITY_END_VARIANCE" - }, - { - "kind": "EnumMember", - "canonicalReference": "server!ParticleEmitterEvent.SET_OPACITY_START:member", - "docComment": "", - "excerptTokens": [ + "text": ";\n orientation: " + }, + { + "kind": "Reference", + "text": "ParticleEmitterOrientation", + "canonicalReference": "server!ParticleEmitterOrientation:type" + }, { "kind": "Content", - "text": "SET_OPACITY_START = " + "text": ";\n }" }, { "kind": "Content", - "text": "\"PARTICLE_EMITTER.SET_OPACITY_START\"" + "text": ";" } ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, + "isReadonly": false, + "isOptional": false, "releaseTag": "Public", - "name": "SET_OPACITY_START" + "name": "\"PARTICLE_EMITTER.SET_ORIENTATION\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 8 + } }, { - "kind": "EnumMember", - "canonicalReference": "server!ParticleEmitterEvent.SET_OPACITY_START_VARIANCE:member", - "docComment": "", + "kind": "PropertySignature", + "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_PAUSED\":member", + "docComment": "/**\n * Emitted when the paused state of an emitted particle is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "SET_OPACITY_START_VARIANCE = " + "text": "[" + }, + { + "kind": "Reference", + "text": "ParticleEmitterEvent.SET_PAUSED", + "canonicalReference": "server!ParticleEmitterEvent.SET_PAUSED:member" }, { "kind": "Content", - "text": "\"PARTICLE_EMITTER.SET_OPACITY_START_VARIANCE\"" - } - ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "releaseTag": "Public", - "name": "SET_OPACITY_START_VARIANCE" - }, - { - "kind": "EnumMember", - "canonicalReference": "server!ParticleEmitterEvent.SET_ORIENTATION:member", - "docComment": "", - "excerptTokens": [ + "text": "]: " + }, { "kind": "Content", - "text": "SET_ORIENTATION = " + "text": "{\n particleEmitter: " + }, + { + "kind": "Reference", + "text": "ParticleEmitter", + "canonicalReference": "server!ParticleEmitter:class" }, { "kind": "Content", - "text": "\"PARTICLE_EMITTER.SET_ORIENTATION\"" + "text": ";\n paused: boolean;\n }" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, + "isReadonly": false, + "isOptional": false, "releaseTag": "Public", - "name": "SET_ORIENTATION" + "name": "\"PARTICLE_EMITTER.SET_PAUSED\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 6 + } }, { - "kind": "EnumMember", - "canonicalReference": "server!ParticleEmitterEvent.SET_ORIENTATION_FIXED_ROTATION:member", - "docComment": "", + "kind": "PropertySignature", + "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_POSITION_VARIANCE\":member", + "docComment": "/**\n * Emitted when the position variance of an emitted particle is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "SET_ORIENTATION_FIXED_ROTATION = " + "text": "[" + }, + { + "kind": "Reference", + "text": "ParticleEmitterEvent.SET_POSITION_VARIANCE", + "canonicalReference": "server!ParticleEmitterEvent.SET_POSITION_VARIANCE:member" }, { "kind": "Content", - "text": "\"PARTICLE_EMITTER.SET_ORIENTATION_FIXED_ROTATION\"" - } - ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "releaseTag": "Public", - "name": "SET_ORIENTATION_FIXED_ROTATION" - }, - { - "kind": "EnumMember", - "canonicalReference": "server!ParticleEmitterEvent.SET_PAUSED:member", - "docComment": "", - "excerptTokens": [ + "text": "]: " + }, { "kind": "Content", - "text": "SET_PAUSED = " + "text": "{\n particleEmitter: " + }, + { + "kind": "Reference", + "text": "ParticleEmitter", + "canonicalReference": "server!ParticleEmitter:class" }, { "kind": "Content", - "text": "\"PARTICLE_EMITTER.SET_PAUSED\"" - } - ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "releaseTag": "Public", - "name": "SET_PAUSED" - }, - { - "kind": "EnumMember", - "canonicalReference": "server!ParticleEmitterEvent.SET_POSITION:member", - "docComment": "", - "excerptTokens": [ + "text": ";\n positionVariance: " + }, + { + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" + }, { "kind": "Content", - "text": "SET_POSITION = " + "text": ";\n }" }, { "kind": "Content", - "text": "\"PARTICLE_EMITTER.SET_POSITION\"" + "text": ";" } ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, + "isReadonly": false, + "isOptional": false, "releaseTag": "Public", - "name": "SET_POSITION" + "name": "\"PARTICLE_EMITTER.SET_POSITION_VARIANCE\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 8 + } }, { - "kind": "EnumMember", - "canonicalReference": "server!ParticleEmitterEvent.SET_POSITION_VARIANCE:member", - "docComment": "", + "kind": "PropertySignature", + "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_POSITION\":member", + "docComment": "/**\n * Emitted when the position of the particle emitter is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "SET_POSITION_VARIANCE = " + "text": "[" + }, + { + "kind": "Reference", + "text": "ParticleEmitterEvent.SET_POSITION", + "canonicalReference": "server!ParticleEmitterEvent.SET_POSITION:member" }, { "kind": "Content", - "text": "\"PARTICLE_EMITTER.SET_POSITION_VARIANCE\"" - } - ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "releaseTag": "Public", - "name": "SET_POSITION_VARIANCE" - }, - { - "kind": "EnumMember", - "canonicalReference": "server!ParticleEmitterEvent.SET_RATE:member", - "docComment": "", - "excerptTokens": [ + "text": "]: " + }, { "kind": "Content", - "text": "SET_RATE = " + "text": "{\n particleEmitter: " + }, + { + "kind": "Reference", + "text": "ParticleEmitter", + "canonicalReference": "server!ParticleEmitter:class" }, { "kind": "Content", - "text": "\"PARTICLE_EMITTER.SET_RATE\"" - } - ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "releaseTag": "Public", - "name": "SET_RATE" - }, - { - "kind": "EnumMember", - "canonicalReference": "server!ParticleEmitterEvent.SET_RATE_VARIANCE:member", - "docComment": "", - "excerptTokens": [ + "text": ";\n position: " + }, + { + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" + }, { "kind": "Content", - "text": "SET_RATE_VARIANCE = " + "text": ";\n }" }, { "kind": "Content", - "text": "\"PARTICLE_EMITTER.SET_RATE_VARIANCE\"" + "text": ";" } ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, + "isReadonly": false, + "isOptional": false, "releaseTag": "Public", - "name": "SET_RATE_VARIANCE" + "name": "\"PARTICLE_EMITTER.SET_POSITION\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 8 + } }, { - "kind": "EnumMember", - "canonicalReference": "server!ParticleEmitterEvent.SET_SIZE_END:member", - "docComment": "", + "kind": "PropertySignature", + "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_RATE_VARIANCE\":member", + "docComment": "/**\n * Emitted when the rate per second variance of the particle emission rate is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "SET_SIZE_END = " + "text": "[" + }, + { + "kind": "Reference", + "text": "ParticleEmitterEvent.SET_RATE_VARIANCE", + "canonicalReference": "server!ParticleEmitterEvent.SET_RATE_VARIANCE:member" }, { "kind": "Content", - "text": "\"PARTICLE_EMITTER.SET_SIZE_END\"" - } - ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "releaseTag": "Public", - "name": "SET_SIZE_END" - }, - { - "kind": "EnumMember", - "canonicalReference": "server!ParticleEmitterEvent.SET_SIZE_END_VARIANCE:member", - "docComment": "", - "excerptTokens": [ + "text": "]: " + }, { "kind": "Content", - "text": "SET_SIZE_END_VARIANCE = " + "text": "{\n particleEmitter: " + }, + { + "kind": "Reference", + "text": "ParticleEmitter", + "canonicalReference": "server!ParticleEmitter:class" }, { "kind": "Content", - "text": "\"PARTICLE_EMITTER.SET_SIZE_END_VARIANCE\"" + "text": ";\n rateVariance: number;\n }" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, + "isReadonly": false, + "isOptional": false, "releaseTag": "Public", - "name": "SET_SIZE_END_VARIANCE" + "name": "\"PARTICLE_EMITTER.SET_RATE_VARIANCE\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 6 + } }, { - "kind": "EnumMember", - "canonicalReference": "server!ParticleEmitterEvent.SET_SIZE_START:member", - "docComment": "", + "kind": "PropertySignature", + "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_RATE\":member", + "docComment": "/**\n * Emitted when the rate per second at which particles are emitted is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "SET_SIZE_START = " + "text": "[" + }, + { + "kind": "Reference", + "text": "ParticleEmitterEvent.SET_RATE", + "canonicalReference": "server!ParticleEmitterEvent.SET_RATE:member" }, { "kind": "Content", - "text": "\"PARTICLE_EMITTER.SET_SIZE_START\"" - } - ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "releaseTag": "Public", - "name": "SET_SIZE_START" - }, - { - "kind": "EnumMember", - "canonicalReference": "server!ParticleEmitterEvent.SET_SIZE_START_VARIANCE:member", - "docComment": "", - "excerptTokens": [ + "text": "]: " + }, + { + "kind": "Content", + "text": "{\n particleEmitter: " + }, + { + "kind": "Reference", + "text": "ParticleEmitter", + "canonicalReference": "server!ParticleEmitter:class" + }, { "kind": "Content", - "text": "SET_SIZE_START_VARIANCE = " + "text": ";\n rate: number;\n }" }, { "kind": "Content", - "text": "\"PARTICLE_EMITTER.SET_SIZE_START_VARIANCE\"" + "text": ";" } ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, + "isReadonly": false, + "isOptional": false, "releaseTag": "Public", - "name": "SET_SIZE_START_VARIANCE" + "name": "\"PARTICLE_EMITTER.SET_RATE\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 6 + } }, { - "kind": "EnumMember", - "canonicalReference": "server!ParticleEmitterEvent.SET_TEXTURE_URI:member", - "docComment": "", + "kind": "PropertySignature", + "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_SIZE_END_VARIANCE\":member", + "docComment": "/**\n * Emitted when the size variance at the end of an emitted particle's lifetime is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "SET_TEXTURE_URI = " + "text": "[" }, { - "kind": "Content", - "text": "\"PARTICLE_EMITTER.SET_TEXTURE_URI\"" - } - ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "releaseTag": "Public", - "name": "SET_TEXTURE_URI" - }, - { - "kind": "EnumMember", - "canonicalReference": "server!ParticleEmitterEvent.SET_TRANSPARENT:member", - "docComment": "", - "excerptTokens": [ + "kind": "Reference", + "text": "ParticleEmitterEvent.SET_SIZE_END_VARIANCE", + "canonicalReference": "server!ParticleEmitterEvent.SET_SIZE_END_VARIANCE:member" + }, { "kind": "Content", - "text": "SET_TRANSPARENT = " + "text": "]: " }, { "kind": "Content", - "text": "\"PARTICLE_EMITTER.SET_TRANSPARENT\"" - } - ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "releaseTag": "Public", - "name": "SET_TRANSPARENT" - }, - { - "kind": "EnumMember", - "canonicalReference": "server!ParticleEmitterEvent.SET_VELOCITY:member", - "docComment": "", - "excerptTokens": [ + "text": "{\n particleEmitter: " + }, + { + "kind": "Reference", + "text": "ParticleEmitter", + "canonicalReference": "server!ParticleEmitter:class" + }, { "kind": "Content", - "text": "SET_VELOCITY = " + "text": ";\n sizeEndVariance: number;\n }" }, { "kind": "Content", - "text": "\"PARTICLE_EMITTER.SET_VELOCITY\"" + "text": ";" } ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, + "isReadonly": false, + "isOptional": false, "releaseTag": "Public", - "name": "SET_VELOCITY" + "name": "\"PARTICLE_EMITTER.SET_SIZE_END_VARIANCE\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 6 + } }, { - "kind": "EnumMember", - "canonicalReference": "server!ParticleEmitterEvent.SET_VELOCITY_VARIANCE:member", - "docComment": "", + "kind": "PropertySignature", + "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_SIZE_END\":member", + "docComment": "/**\n * Emitted when the size at the end of an emitted particle's lifetime is set.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "SET_VELOCITY_VARIANCE = " + "text": "[" + }, + { + "kind": "Reference", + "text": "ParticleEmitterEvent.SET_SIZE_END", + "canonicalReference": "server!ParticleEmitterEvent.SET_SIZE_END:member" }, { "kind": "Content", - "text": "\"PARTICLE_EMITTER.SET_VELOCITY_VARIANCE\"" - } - ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "releaseTag": "Public", - "name": "SET_VELOCITY_VARIANCE" - }, - { - "kind": "EnumMember", - "canonicalReference": "server!ParticleEmitterEvent.SPAWN:member", - "docComment": "", - "excerptTokens": [ + "text": "]: " + }, { "kind": "Content", - "text": "SPAWN = " + "text": "{\n particleEmitter: " + }, + { + "kind": "Reference", + "text": "ParticleEmitter", + "canonicalReference": "server!ParticleEmitter:class" }, { "kind": "Content", - "text": "\"PARTICLE_EMITTER.SPAWN\"" + "text": ";\n sizeEnd: number;\n }" + }, + { + "kind": "Content", + "text": ";" } ], - "initializerTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, + "isReadonly": false, + "isOptional": false, "releaseTag": "Public", - "name": "SPAWN" - } - ] - }, - { - "kind": "Interface", - "canonicalReference": "server!ParticleEmitterEventPayloads:interface", - "docComment": "/**\n * Event payloads for ParticleEmitter emitted events.\n *\n * **Category:** Events\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export interface ParticleEmitterEventPayloads " - } - ], - "fileUrlPath": "src/worlds/particles/ParticleEmitter.ts", - "releaseTag": "Public", - "name": "ParticleEmitterEventPayloads", - "preserveMemberOrder": false, - "members": [ + "name": "\"PARTICLE_EMITTER.SET_SIZE_END\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 6 + } + }, { "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.BURST\":member", - "docComment": "/**\n * Emitted when a ParticleEmitter bursts the specified number of particles.\n */\n", + "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_SIZE_START_VARIANCE\":member", + "docComment": "/**\n * Emitted when the size variance at the start of an emitted particle's lifetime is set.\n */\n", "excerptTokens": [ { "kind": "Content", @@ -36824,8 +41556,8 @@ }, { "kind": "Reference", - "text": "ParticleEmitterEvent.BURST", - "canonicalReference": "server!ParticleEmitterEvent.BURST:member" + "text": "ParticleEmitterEvent.SET_SIZE_START_VARIANCE", + "canonicalReference": "server!ParticleEmitterEvent.SET_SIZE_START_VARIANCE:member" }, { "kind": "Content", @@ -36842,7 +41574,7 @@ }, { "kind": "Content", - "text": ";\n count: number;\n }" + "text": ";\n sizeStartVariance: number;\n }" }, { "kind": "Content", @@ -36852,7 +41584,7 @@ "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "\"PARTICLE_EMITTER.BURST\"", + "name": "\"PARTICLE_EMITTER.SET_SIZE_START_VARIANCE\"", "propertyTypeTokenRange": { "startIndex": 3, "endIndex": 6 @@ -36860,8 +41592,8 @@ }, { "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.DESPAWN\":member", - "docComment": "/**\n * Emitted when a ParticleEmitter is despawned.\n */\n", + "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_SIZE_START\":member", + "docComment": "/**\n * Emitted when the size at the start of an emitted particle's lifetime is set.\n */\n", "excerptTokens": [ { "kind": "Content", @@ -36869,8 +41601,8 @@ }, { "kind": "Reference", - "text": "ParticleEmitterEvent.DESPAWN", - "canonicalReference": "server!ParticleEmitterEvent.DESPAWN:member" + "text": "ParticleEmitterEvent.SET_SIZE_START", + "canonicalReference": "server!ParticleEmitterEvent.SET_SIZE_START:member" }, { "kind": "Content", @@ -36887,7 +41619,7 @@ }, { "kind": "Content", - "text": ";\n }" + "text": ";\n sizeStart: number;\n }" }, { "kind": "Content", @@ -36897,7 +41629,7 @@ "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "\"PARTICLE_EMITTER.DESPAWN\"", + "name": "\"PARTICLE_EMITTER.SET_SIZE_START\"", "propertyTypeTokenRange": { "startIndex": 3, "endIndex": 6 @@ -36905,8 +41637,8 @@ }, { "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_ALPHA_TEST\":member", - "docComment": "/**\n * Emitted when the alpha test value is set.\n */\n", + "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_TEXTURE_URI\":member", + "docComment": "/**\n * Emitted when the texture URI is set.\n */\n", "excerptTokens": [ { "kind": "Content", @@ -36914,8 +41646,8 @@ }, { "kind": "Reference", - "text": "ParticleEmitterEvent.SET_ALPHA_TEST", - "canonicalReference": "server!ParticleEmitterEvent.SET_ALPHA_TEST:member" + "text": "ParticleEmitterEvent.SET_TEXTURE_URI", + "canonicalReference": "server!ParticleEmitterEvent.SET_TEXTURE_URI:member" }, { "kind": "Content", @@ -36932,7 +41664,7 @@ }, { "kind": "Content", - "text": ";\n alphaTest: number;\n }" + "text": ";\n textureUri: string;\n }" }, { "kind": "Content", @@ -36942,7 +41674,7 @@ "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "\"PARTICLE_EMITTER.SET_ALPHA_TEST\"", + "name": "\"PARTICLE_EMITTER.SET_TEXTURE_URI\"", "propertyTypeTokenRange": { "startIndex": 3, "endIndex": 6 @@ -36950,8 +41682,8 @@ }, { "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY_NODE_NAME\":member", - "docComment": "/**\n * Emitted when the name of the node of the attached entity the particle emitter is attached to is set.\n */\n", + "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_TRANSPARENT\":member", + "docComment": "/**\n * Emitted when the transparency of an emitted particle is set.\n */\n", "excerptTokens": [ { "kind": "Content", @@ -36959,8 +41691,8 @@ }, { "kind": "Reference", - "text": "ParticleEmitterEvent.SET_ATTACHED_TO_ENTITY_NODE_NAME", - "canonicalReference": "server!ParticleEmitterEvent.SET_ATTACHED_TO_ENTITY_NODE_NAME:member" + "text": "ParticleEmitterEvent.SET_TRANSPARENT", + "canonicalReference": "server!ParticleEmitterEvent.SET_TRANSPARENT:member" }, { "kind": "Content", @@ -36977,7 +41709,7 @@ }, { "kind": "Content", - "text": ";\n attachedToEntityNodeName: string;\n }" + "text": ";\n transparent: boolean;\n }" }, { "kind": "Content", @@ -36987,7 +41719,7 @@ "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "\"PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY_NODE_NAME\"", + "name": "\"PARTICLE_EMITTER.SET_TRANSPARENT\"", "propertyTypeTokenRange": { "startIndex": 3, "endIndex": 6 @@ -36995,8 +41727,8 @@ }, { "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY\":member", - "docComment": "/**\n * Emitted when the ParticleEmitter is attached to an entity.\n */\n", + "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_VELOCITY_VARIANCE\":member", + "docComment": "/**\n * Emitted when the velocity variance of an emitted particle is set.\n */\n", "excerptTokens": [ { "kind": "Content", @@ -37004,8 +41736,8 @@ }, { "kind": "Reference", - "text": "ParticleEmitterEvent.SET_ATTACHED_TO_ENTITY", - "canonicalReference": "server!ParticleEmitterEvent.SET_ATTACHED_TO_ENTITY:member" + "text": "ParticleEmitterEvent.SET_VELOCITY_VARIANCE", + "canonicalReference": "server!ParticleEmitterEvent.SET_VELOCITY_VARIANCE:member" }, { "kind": "Content", @@ -37022,12 +41754,12 @@ }, { "kind": "Content", - "text": ";\n entity: " + "text": ";\n velocityVariance: " }, { "kind": "Reference", - "text": "Entity", - "canonicalReference": "server!Entity:class" + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", @@ -37041,7 +41773,7 @@ "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "\"PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY\"", + "name": "\"PARTICLE_EMITTER.SET_VELOCITY_VARIANCE\"", "propertyTypeTokenRange": { "startIndex": 3, "endIndex": 8 @@ -37049,8 +41781,8 @@ }, { "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_COLOR_END_VARIANCE\":member", - "docComment": "/**\n * Emitted when the color variance of an emitted particle at the end of its lifetime is set.\n */\n", + "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_VELOCITY\":member", + "docComment": "/**\n * Emitted when the velocity of an emitted particle is set.\n */\n", "excerptTokens": [ { "kind": "Content", @@ -37058,8 +41790,8 @@ }, { "kind": "Reference", - "text": "ParticleEmitterEvent.SET_COLOR_END_VARIANCE", - "canonicalReference": "server!ParticleEmitterEvent.SET_COLOR_END_VARIANCE:member" + "text": "ParticleEmitterEvent.SET_VELOCITY", + "canonicalReference": "server!ParticleEmitterEvent.SET_VELOCITY:member" }, { "kind": "Content", @@ -37076,12 +41808,12 @@ }, { "kind": "Content", - "text": ";\n colorEndVariance: " + "text": ";\n velocity: " }, { "kind": "Reference", - "text": "RgbColor", - "canonicalReference": "server!RgbColor:interface" + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", @@ -37095,7 +41827,7 @@ "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "\"PARTICLE_EMITTER.SET_COLOR_END_VARIANCE\"", + "name": "\"PARTICLE_EMITTER.SET_VELOCITY\"", "propertyTypeTokenRange": { "startIndex": 3, "endIndex": 8 @@ -37103,8 +41835,8 @@ }, { "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_COLOR_END\":member", - "docComment": "/**\n * Emitted when the color of an emitted particle at the end of its lifetime is set.\n */\n", + "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SPAWN\":member", + "docComment": "/**\n * Emitted when a ParticleEmitter is spawned.\n */\n", "excerptTokens": [ { "kind": "Content", @@ -37112,8 +41844,8 @@ }, { "kind": "Reference", - "text": "ParticleEmitterEvent.SET_COLOR_END", - "canonicalReference": "server!ParticleEmitterEvent.SET_COLOR_END:member" + "text": "ParticleEmitterEvent.SPAWN", + "canonicalReference": "server!ParticleEmitterEvent.SPAWN:member" }, { "kind": "Content", @@ -37130,61 +41862,303 @@ }, { "kind": "Content", - "text": ";\n colorEnd: " + "text": ";\n }" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": false, + "releaseTag": "Public", + "name": "\"PARTICLE_EMITTER.SPAWN\"", + "propertyTypeTokenRange": { + "startIndex": 3, + "endIndex": 6 + } + } + ], + "extendsTokenRanges": [] + }, + { + "kind": "Class", + "canonicalReference": "server!ParticleEmitterManager:class", + "docComment": "/**\n * Manages ParticleEmitter instances in a world.\n *\n * When to use: querying or bulk-cleaning particle emitters for a world. Do NOT use for: configuring emitters; use `ParticleEmitter` instances directly.\n *\n * @remarks\n *\n * The ParticleEmitterManager is created internally per `World` instance. Pattern: spawn emitters during gameplay and use this manager for cleanup on entity despawn.\n *\n * **Category:** Particles\n *\n * The constructor for this class is marked as internal. Third-party code should not call the constructor directly or create subclasses that extend the `ParticleEmitterManager` class.\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export default class ParticleEmitterManager " + } + ], + "fileUrlPath": "src/worlds/particles/ParticleEmitterManager.ts", + "releaseTag": "Public", + "isAbstract": false, + "name": "ParticleEmitterManager", + "preserveMemberOrder": false, + "members": [ + { + "kind": "Method", + "canonicalReference": "server!ParticleEmitterManager#getAllEntityAttachedParticleEmitters:member(1)", + "docComment": "/**\n * Retrieves all spawned ParticleEmitter instances attached to a specific entity.\n *\n * Use for: cleanup or inspection of entity-bound emitters.\n *\n * @param entity - The entity to get attached ParticleEmitter instances for.\n *\n * @returns An array of ParticleEmitter instances.\n *\n * **Requires:** Entity should belong to this world for meaningful results.\n *\n * @see\n *\n * `despawnEntityAttachedParticleEmitters()`\n *\n * **Category:** Particles\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "getAllEntityAttachedParticleEmitters(entity: " + }, + { + "kind": "Reference", + "text": "Entity", + "canonicalReference": "server!Entity:class" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "ParticleEmitter", + "canonicalReference": "server!ParticleEmitter:class" + }, + { + "kind": "Content", + "text": "[]" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 5 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "entity", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "getAllEntityAttachedParticleEmitters" + }, + { + "kind": "Method", + "canonicalReference": "server!ParticleEmitterManager#getAllParticleEmitters:member(1)", + "docComment": "/**\n * Retrieves all spawned ParticleEmitter instances for the world.\n *\n * @returns An array of ParticleEmitter instances.\n *\n * **Category:** Particles\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "getAllParticleEmitters(): " + }, + { + "kind": "Reference", + "text": "ParticleEmitter", + "canonicalReference": "server!ParticleEmitter:class" + }, + { + "kind": "Content", + "text": "[]" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 1, + "endIndex": 3 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [], + "isOptional": false, + "isAbstract": false, + "name": "getAllParticleEmitters" + }, + { + "kind": "Property", + "canonicalReference": "server!ParticleEmitterManager#world:member", + "docComment": "/**\n * The world the ParticleEmitterManager is for.\n *\n * **Category:** Particles\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "get world(): " + }, + { + "kind": "Reference", + "text": "World", + "canonicalReference": "server!World:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "world", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false + } + ], + "implementsTokenRanges": [] + }, + { + "kind": "Interface", + "canonicalReference": "server!ParticleEmitterOptions:interface", + "docComment": "/**\n * Options for creating a ParticleEmitter instance.\n *\n * Use for: configuring an emitter before calling `ParticleEmitter.spawn`. Do NOT use for: runtime updates after spawn; use `ParticleEmitter.set*` methods.\n *\n * **Category:** Particles\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export interface ParticleEmitterOptions " + } + ], + "fileUrlPath": "src/worlds/particles/ParticleEmitter.ts", + "releaseTag": "Public", + "name": "ParticleEmitterOptions", + "preserveMemberOrder": false, + "members": [ + { + "kind": "PropertySignature", + "canonicalReference": "server!ParticleEmitterOptions#alphaTest:member", + "docComment": "/**\n * The alpha test value, discards particle texture pixels with alpha opacity less than this value. Defaults to 0.5.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "alphaTest?: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "alphaTest", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!ParticleEmitterOptions#attachedToEntity:member", + "docComment": "/**\n * If set, the ParticleEmitter will be attached to this entity.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "attachedToEntity?: " + }, + { + "kind": "Reference", + "text": "Entity", + "canonicalReference": "server!Entity:class" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "attachedToEntity", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!ParticleEmitterOptions#attachedToEntityNodeName:member", + "docComment": "/**\n * The name of the node of the attached entity (if the attached entity is a model entity) to attach the particle emitter to.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "attachedToEntityNodeName?: " + }, + { + "kind": "Content", + "text": "string" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "attachedToEntityNodeName", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!ParticleEmitterOptions#colorEnd:member", + "docComment": "/**\n * The color of an emitted particle at the end of its lifetime.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "colorEnd?: " }, { "kind": "Reference", "text": "RgbColor", "canonicalReference": "server!RgbColor:interface" }, - { - "kind": "Content", - "text": ";\n }" - }, { "kind": "Content", "text": ";" } ], "isReadonly": false, - "isOptional": false, + "isOptional": true, "releaseTag": "Public", - "name": "\"PARTICLE_EMITTER.SET_COLOR_END\"", + "name": "colorEnd", "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 8 + "startIndex": 1, + "endIndex": 2 } }, { "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_COLOR_INTENSITY_END_VARIANCE\":member", - "docComment": "/**\n * Emitted when the color intensity variance of an emitted particle at the end of its lifetime is set.\n */\n", + "canonicalReference": "server!ParticleEmitterOptions#colorEndVariance:member", + "docComment": "/**\n * The color variance of an emitted particle at the end of its lifetime.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "ParticleEmitterEvent.SET_COLOR_INTENSITY_END_VARIANCE", - "canonicalReference": "server!ParticleEmitterEvent.SET_COLOR_INTENSITY_END_VARIANCE:member" - }, - { - "kind": "Content", - "text": "]: " - }, - { - "kind": "Content", - "text": "{\n particleEmitter: " + "text": "colorEndVariance?: " }, { "kind": "Reference", - "text": "ParticleEmitter", - "canonicalReference": "server!ParticleEmitter:class" - }, - { - "kind": "Content", - "text": ";\n colorIntensityEndVariance: number;\n }" + "text": "RgbColor", + "canonicalReference": "server!RgbColor:interface" }, { "kind": "Content", @@ -37192,44 +42166,26 @@ } ], "isReadonly": false, - "isOptional": false, + "isOptional": true, "releaseTag": "Public", - "name": "\"PARTICLE_EMITTER.SET_COLOR_INTENSITY_END_VARIANCE\"", + "name": "colorEndVariance", "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 6 + "startIndex": 1, + "endIndex": 2 } }, { "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_COLOR_INTENSITY_END\":member", - "docComment": "/**\n * Emitted when the color intensity of an emitted particle at the end of its lifetime is set.\n */\n", + "canonicalReference": "server!ParticleEmitterOptions#colorIntensityEnd:member", + "docComment": "/**\n * The color intensity of an emitted particle at the end of its lifetime. Values greater than 1 create HDR/bloom effects.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "ParticleEmitterEvent.SET_COLOR_INTENSITY_END", - "canonicalReference": "server!ParticleEmitterEvent.SET_COLOR_INTENSITY_END:member" - }, - { - "kind": "Content", - "text": "]: " - }, - { - "kind": "Content", - "text": "{\n particleEmitter: " - }, - { - "kind": "Reference", - "text": "ParticleEmitter", - "canonicalReference": "server!ParticleEmitter:class" + "text": "colorIntensityEnd?: " }, { "kind": "Content", - "text": ";\n colorIntensityEnd: number;\n }" + "text": "number" }, { "kind": "Content", @@ -37237,44 +42193,26 @@ } ], "isReadonly": false, - "isOptional": false, + "isOptional": true, "releaseTag": "Public", - "name": "\"PARTICLE_EMITTER.SET_COLOR_INTENSITY_END\"", + "name": "colorIntensityEnd", "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 6 + "startIndex": 1, + "endIndex": 2 } }, { "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_COLOR_INTENSITY_START_VARIANCE\":member", - "docComment": "/**\n * Emitted when the color intensity variance of an emitted particle at the start of its lifetime is set.\n */\n", + "canonicalReference": "server!ParticleEmitterOptions#colorIntensityEndVariance:member", + "docComment": "/**\n * The color intensity variance of an emitted particle at the end of its lifetime.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "ParticleEmitterEvent.SET_COLOR_INTENSITY_START_VARIANCE", - "canonicalReference": "server!ParticleEmitterEvent.SET_COLOR_INTENSITY_START_VARIANCE:member" - }, - { - "kind": "Content", - "text": "]: " - }, - { - "kind": "Content", - "text": "{\n particleEmitter: " - }, - { - "kind": "Reference", - "text": "ParticleEmitter", - "canonicalReference": "server!ParticleEmitter:class" + "text": "colorIntensityEndVariance?: " }, { "kind": "Content", - "text": ";\n colorIntensityStartVariance: number;\n }" + "text": "number" }, { "kind": "Content", @@ -37282,44 +42220,26 @@ } ], "isReadonly": false, - "isOptional": false, + "isOptional": true, "releaseTag": "Public", - "name": "\"PARTICLE_EMITTER.SET_COLOR_INTENSITY_START_VARIANCE\"", + "name": "colorIntensityEndVariance", "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 6 + "startIndex": 1, + "endIndex": 2 } }, { "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_COLOR_INTENSITY_START\":member", - "docComment": "/**\n * Emitted when the color intensity of an emitted particle at the start of its lifetime is set.\n */\n", + "canonicalReference": "server!ParticleEmitterOptions#colorIntensityStart:member", + "docComment": "/**\n * The color intensity of an emitted particle at the start of its lifetime. Values greater than 1 create HDR/bloom effects.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "ParticleEmitterEvent.SET_COLOR_INTENSITY_START", - "canonicalReference": "server!ParticleEmitterEvent.SET_COLOR_INTENSITY_START:member" - }, - { - "kind": "Content", - "text": "]: " - }, - { - "kind": "Content", - "text": "{\n particleEmitter: " - }, - { - "kind": "Reference", - "text": "ParticleEmitter", - "canonicalReference": "server!ParticleEmitter:class" + "text": "colorIntensityStart?: " }, { "kind": "Content", - "text": ";\n colorIntensityStart: number;\n }" + "text": "number" }, { "kind": "Content", @@ -37327,206 +42247,164 @@ } ], "isReadonly": false, - "isOptional": false, + "isOptional": true, "releaseTag": "Public", - "name": "\"PARTICLE_EMITTER.SET_COLOR_INTENSITY_START\"", + "name": "colorIntensityStart", "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 6 + "startIndex": 1, + "endIndex": 2 } }, { "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_COLOR_START_VARIANCE\":member", - "docComment": "/**\n * Emitted when the color variance of an emitted particle at the start of its lifetime is set.\n */\n", + "canonicalReference": "server!ParticleEmitterOptions#colorIntensityStartVariance:member", + "docComment": "/**\n * The color intensity variance of an emitted particle at the start of its lifetime.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "ParticleEmitterEvent.SET_COLOR_START_VARIANCE", - "canonicalReference": "server!ParticleEmitterEvent.SET_COLOR_START_VARIANCE:member" + "text": "colorIntensityStartVariance?: " }, { "kind": "Content", - "text": "]: " + "text": "number" }, { "kind": "Content", - "text": "{\n particleEmitter: " - }, - { - "kind": "Reference", - "text": "ParticleEmitter", - "canonicalReference": "server!ParticleEmitter:class" - }, + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "colorIntensityStartVariance", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!ParticleEmitterOptions#colorStart:member", + "docComment": "/**\n * The color of an emitted particle at the start of its lifetime.\n */\n", + "excerptTokens": [ { "kind": "Content", - "text": ";\n colorStartVariance: " + "text": "colorStart?: " }, { "kind": "Reference", "text": "RgbColor", "canonicalReference": "server!RgbColor:interface" }, - { - "kind": "Content", - "text": ";\n }" - }, { "kind": "Content", "text": ";" } ], "isReadonly": false, - "isOptional": false, + "isOptional": true, "releaseTag": "Public", - "name": "\"PARTICLE_EMITTER.SET_COLOR_START_VARIANCE\"", + "name": "colorStart", "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 8 + "startIndex": 1, + "endIndex": 2 } }, { "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_COLOR_START\":member", - "docComment": "/**\n * Emitted when the color of an emitted particle at the start of its lifetime is set.\n */\n", + "canonicalReference": "server!ParticleEmitterOptions#colorStartVariance:member", + "docComment": "/**\n * The color variance of an emitted particle at the start of its lifetime.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "ParticleEmitterEvent.SET_COLOR_START", - "canonicalReference": "server!ParticleEmitterEvent.SET_COLOR_START:member" - }, - { - "kind": "Content", - "text": "]: " - }, - { - "kind": "Content", - "text": "{\n particleEmitter: " - }, - { - "kind": "Reference", - "text": "ParticleEmitter", - "canonicalReference": "server!ParticleEmitter:class" - }, - { - "kind": "Content", - "text": ";\n colorStart: " + "text": "colorStartVariance?: " }, { "kind": "Reference", "text": "RgbColor", "canonicalReference": "server!RgbColor:interface" }, - { - "kind": "Content", - "text": ";\n }" - }, { "kind": "Content", "text": ";" } ], "isReadonly": false, - "isOptional": false, + "isOptional": true, "releaseTag": "Public", - "name": "\"PARTICLE_EMITTER.SET_COLOR_START\"", + "name": "colorStartVariance", "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 8 + "startIndex": 1, + "endIndex": 2 } }, { "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_GRAVITY\":member", - "docComment": "/**\n * Emitted when the gravity vector for an emitted particle is set.\n */\n", + "canonicalReference": "server!ParticleEmitterOptions#gravity:member", + "docComment": "/**\n * The gravity vector for an emitted particle.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "ParticleEmitterEvent.SET_GRAVITY", - "canonicalReference": "server!ParticleEmitterEvent.SET_GRAVITY:member" - }, - { - "kind": "Content", - "text": "]: " - }, - { - "kind": "Content", - "text": "{\n particleEmitter: " - }, - { - "kind": "Reference", - "text": "ParticleEmitter", - "canonicalReference": "server!ParticleEmitter:class" - }, - { - "kind": "Content", - "text": ";\n gravity: " + "text": "gravity?: " }, { "kind": "Reference", "text": "Vector3Like", "canonicalReference": "server!Vector3Like:interface" }, - { - "kind": "Content", - "text": ";\n }" - }, { "kind": "Content", "text": ";" } ], "isReadonly": false, - "isOptional": false, + "isOptional": true, "releaseTag": "Public", - "name": "\"PARTICLE_EMITTER.SET_GRAVITY\"", + "name": "gravity", "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 8 + "startIndex": 1, + "endIndex": 2 } }, { "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_LIFETIME_VARIANCE\":member", - "docComment": "/**\n * Emitted when the lifetime variance of an emitted particle is set.\n */\n", + "canonicalReference": "server!ParticleEmitterOptions#lifetime:member", + "docComment": "/**\n * The lifetime of an emitted particle in seconds.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "ParticleEmitterEvent.SET_LIFETIME_VARIANCE", - "canonicalReference": "server!ParticleEmitterEvent.SET_LIFETIME_VARIANCE:member" + "text": "lifetime?: " }, { "kind": "Content", - "text": "]: " + "text": "number" }, { "kind": "Content", - "text": "{\n particleEmitter: " - }, + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "lifetime", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!ParticleEmitterOptions#lifetimeVariance:member", + "docComment": "/**\n * The lifetime variance of an emitted particle in seconds.\n */\n", + "excerptTokens": [ { - "kind": "Reference", - "text": "ParticleEmitter", - "canonicalReference": "server!ParticleEmitter:class" + "kind": "Content", + "text": "lifetimeVariance?: " }, { "kind": "Content", - "text": ";\n lifetimeVariance: number;\n }" + "text": "number" }, { "kind": "Content", @@ -37534,44 +42412,53 @@ } ], "isReadonly": false, - "isOptional": false, + "isOptional": true, "releaseTag": "Public", - "name": "\"PARTICLE_EMITTER.SET_LIFETIME_VARIANCE\"", + "name": "lifetimeVariance", "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 6 + "startIndex": 1, + "endIndex": 2 } }, { "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_LIFETIME\":member", - "docComment": "/**\n * Emitted when the lifetime of an emitted particle is set.\n */\n", + "canonicalReference": "server!ParticleEmitterOptions#lockToEmitter:member", + "docComment": "/**\n * When enabled, emitted particles follow the emitter's world position. Cannot be changed after construction.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "ParticleEmitterEvent.SET_LIFETIME", - "canonicalReference": "server!ParticleEmitterEvent.SET_LIFETIME:member" + "text": "lockToEmitter?: " }, { "kind": "Content", - "text": "]: " + "text": "boolean" }, { "kind": "Content", - "text": "{\n particleEmitter: " - }, + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "lockToEmitter", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!ParticleEmitterOptions#maxParticles:member", + "docComment": "/**\n * The maximum number of live particles.\n */\n", + "excerptTokens": [ { - "kind": "Reference", - "text": "ParticleEmitter", - "canonicalReference": "server!ParticleEmitter:class" + "kind": "Content", + "text": "maxParticles?: " }, { "kind": "Content", - "text": ";\n lifetime: number;\n }" + "text": "number" }, { "kind": "Content", @@ -37579,44 +42466,54 @@ } ], "isReadonly": false, - "isOptional": false, + "isOptional": true, "releaseTag": "Public", - "name": "\"PARTICLE_EMITTER.SET_LIFETIME\"", + "name": "maxParticles", "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 6 + "startIndex": 1, + "endIndex": 2 } }, { "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_MAX_PARTICLES\":member", - "docComment": "/**\n * Emitted when the maximum number of live particles is set.\n */\n", + "canonicalReference": "server!ParticleEmitterOptions#offset:member", + "docComment": "/**\n * The offset of the particle emitter from the attached entity or position.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" + "text": "offset?: " }, { "kind": "Reference", - "text": "ParticleEmitterEvent.SET_MAX_PARTICLES", - "canonicalReference": "server!ParticleEmitterEvent.SET_MAX_PARTICLES:member" + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", - "text": "]: " - }, + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "offset", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!ParticleEmitterOptions#opacityEnd:member", + "docComment": "/**\n * The opacity of an emitted particle at the end of its lifetime.\n */\n", + "excerptTokens": [ { "kind": "Content", - "text": "{\n particleEmitter: " - }, - { - "kind": "Reference", - "text": "ParticleEmitter", - "canonicalReference": "server!ParticleEmitter:class" + "text": "opacityEnd?: " }, { "kind": "Content", - "text": ";\n maxParticles: number;\n }" + "text": "number" }, { "kind": "Content", @@ -37624,53 +42521,53 @@ } ], "isReadonly": false, - "isOptional": false, + "isOptional": true, "releaseTag": "Public", - "name": "\"PARTICLE_EMITTER.SET_MAX_PARTICLES\"", + "name": "opacityEnd", "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 6 + "startIndex": 1, + "endIndex": 2 } }, { "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_OFFSET\":member", - "docComment": "/**\n * Emitted when the offset of the particle emitter is set.\n */\n", + "canonicalReference": "server!ParticleEmitterOptions#opacityEndVariance:member", + "docComment": "/**\n * The opacity variance of an emitted particle at the end of its lifetime.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "ParticleEmitterEvent.SET_OFFSET", - "canonicalReference": "server!ParticleEmitterEvent.SET_OFFSET:member" + "text": "opacityEndVariance?: " }, { "kind": "Content", - "text": "]: " + "text": "number" }, { "kind": "Content", - "text": "{\n particleEmitter: " - }, - { - "kind": "Reference", - "text": "ParticleEmitter", - "canonicalReference": "server!ParticleEmitter:class" - }, + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "opacityEndVariance", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!ParticleEmitterOptions#opacityStart:member", + "docComment": "/**\n * The opacity of an emitted particle at the start of its lifetime.\n */\n", + "excerptTokens": [ { "kind": "Content", - "text": ";\n offset: " - }, - { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "text": "opacityStart?: " }, { "kind": "Content", - "text": ";\n }" + "text": "number" }, { "kind": "Content", @@ -37678,44 +42575,54 @@ } ], "isReadonly": false, - "isOptional": false, + "isOptional": true, "releaseTag": "Public", - "name": "\"PARTICLE_EMITTER.SET_OFFSET\"", + "name": "opacityStart", "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 8 + "startIndex": 1, + "endIndex": 2 } }, { "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_OPACITY_END_VARIANCE\":member", - "docComment": "/**\n * Emitted when the opacity variance of an emitted particle at the end of its lifetime is set.\n */\n", + "canonicalReference": "server!ParticleEmitterOptions#opacityStartVariance:member", + "docComment": "/**\n * The opacity variance of an emitted particle at the start of its lifetime.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" + "text": "opacityStartVariance?: " }, { - "kind": "Reference", - "text": "ParticleEmitterEvent.SET_OPACITY_END_VARIANCE", - "canonicalReference": "server!ParticleEmitterEvent.SET_OPACITY_END_VARIANCE:member" + "kind": "Content", + "text": "number" }, { "kind": "Content", - "text": "]: " - }, + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "opacityStartVariance", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!ParticleEmitterOptions#orientation:member", + "docComment": "/**\n * The orientation mode of emitted particles. 'billboard' faces the camera, 'billboardY' faces the camera but keeps Y-axis upward, 'fixed' uses a fixed rotation. Defaults to 'billboard'.\n */\n", + "excerptTokens": [ { "kind": "Content", - "text": "{\n particleEmitter: " + "text": "orientation?: " }, { "kind": "Reference", - "text": "ParticleEmitter", - "canonicalReference": "server!ParticleEmitter:class" - }, - { - "kind": "Content", - "text": ";\n opacityEndVariance: number;\n }" + "text": "ParticleEmitterOrientation", + "canonicalReference": "server!ParticleEmitterOrientation:type" }, { "kind": "Content", @@ -37723,44 +42630,55 @@ } ], "isReadonly": false, - "isOptional": false, + "isOptional": true, "releaseTag": "Public", - "name": "\"PARTICLE_EMITTER.SET_OPACITY_END_VARIANCE\"", + "name": "orientation", "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 6 + "startIndex": 1, + "endIndex": 2 } }, { "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_OPACITY_END\":member", - "docComment": "/**\n * Emitted when the opacity of an emitted particle at the end of its lifetime is set.\n */\n", + "canonicalReference": "server!ParticleEmitterOptions#orientationFixedRotation:member", + "docComment": "/**\n * The fixed rotation of emitted particles in degrees (x, y, z) when orientation is 'fixed'. Defaults to (0, 0, 0).\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" + "text": "orientationFixedRotation?: " }, { "kind": "Reference", - "text": "ParticleEmitterEvent.SET_OPACITY_END", - "canonicalReference": "server!ParticleEmitterEvent.SET_OPACITY_END:member" + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", - "text": "]: " - }, + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "orientationFixedRotation", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!ParticleEmitterOptions#position:member", + "docComment": "/**\n * The position of the particle emitter in the world if explicitly set.\n */\n", + "excerptTokens": [ { "kind": "Content", - "text": "{\n particleEmitter: " + "text": "position?: " }, { "kind": "Reference", - "text": "ParticleEmitter", - "canonicalReference": "server!ParticleEmitter:class" - }, - { - "kind": "Content", - "text": ";\n opacityEnd: number;\n }" + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", @@ -37768,44 +42686,54 @@ } ], "isReadonly": false, - "isOptional": false, + "isOptional": true, "releaseTag": "Public", - "name": "\"PARTICLE_EMITTER.SET_OPACITY_END\"", + "name": "position", "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 6 + "startIndex": 1, + "endIndex": 2 } }, { "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_OPACITY_START_VARIANCE\":member", - "docComment": "/**\n * Emitted when the opacity variance of an emitted particle at the start of its lifetime is set.\n */\n", + "canonicalReference": "server!ParticleEmitterOptions#positionVariance:member", + "docComment": "/**\n * The position variance of an emitted particle.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" + "text": "positionVariance?: " }, { "kind": "Reference", - "text": "ParticleEmitterEvent.SET_OPACITY_START_VARIANCE", - "canonicalReference": "server!ParticleEmitterEvent.SET_OPACITY_START_VARIANCE:member" + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", - "text": "]: " - }, + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "positionVariance", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!ParticleEmitterOptions#rate:member", + "docComment": "/**\n * The rate per second at which particles are emitted.\n */\n", + "excerptTokens": [ { "kind": "Content", - "text": "{\n particleEmitter: " - }, - { - "kind": "Reference", - "text": "ParticleEmitter", - "canonicalReference": "server!ParticleEmitter:class" + "text": "rate?: " }, { "kind": "Content", - "text": ";\n opacityStartVariance: number;\n }" + "text": "number" }, { "kind": "Content", @@ -37813,44 +42741,26 @@ } ], "isReadonly": false, - "isOptional": false, + "isOptional": true, "releaseTag": "Public", - "name": "\"PARTICLE_EMITTER.SET_OPACITY_START_VARIANCE\"", + "name": "rate", "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 6 + "startIndex": 1, + "endIndex": 2 } }, { "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_OPACITY_START\":member", - "docComment": "/**\n * Emitted when the opacity of an emitted particle at the start of its lifetime is set.\n */\n", + "canonicalReference": "server!ParticleEmitterOptions#rateVariance:member", + "docComment": "/**\n * The rate per second variance of the particle emission rate.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "ParticleEmitterEvent.SET_OPACITY_START", - "canonicalReference": "server!ParticleEmitterEvent.SET_OPACITY_START:member" - }, - { - "kind": "Content", - "text": "]: " - }, - { - "kind": "Content", - "text": "{\n particleEmitter: " - }, - { - "kind": "Reference", - "text": "ParticleEmitter", - "canonicalReference": "server!ParticleEmitter:class" + "text": "rateVariance?: " }, { "kind": "Content", - "text": ";\n opacityStart: number;\n }" + "text": "number" }, { "kind": "Content", @@ -37858,53 +42768,53 @@ } ], "isReadonly": false, - "isOptional": false, + "isOptional": true, "releaseTag": "Public", - "name": "\"PARTICLE_EMITTER.SET_OPACITY_START\"", + "name": "rateVariance", "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 6 + "startIndex": 1, + "endIndex": 2 } }, { "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_ORIENTATION_FIXED_ROTATION\":member", - "docComment": "/**\n * Emitted when the fixed rotation of emitted particles is set.\n */\n", + "canonicalReference": "server!ParticleEmitterOptions#sizeEnd:member", + "docComment": "/**\n * The size at the end of an emitted particle's lifetime.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "ParticleEmitterEvent.SET_ORIENTATION_FIXED_ROTATION", - "canonicalReference": "server!ParticleEmitterEvent.SET_ORIENTATION_FIXED_ROTATION:member" + "text": "sizeEnd?: " }, { "kind": "Content", - "text": "]: " + "text": "number" }, { "kind": "Content", - "text": "{\n particleEmitter: " - }, - { - "kind": "Reference", - "text": "ParticleEmitter", - "canonicalReference": "server!ParticleEmitter:class" - }, + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "sizeEnd", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!ParticleEmitterOptions#sizeEndVariance:member", + "docComment": "/**\n * The size variance at the end of an emitted particle's lifetime.\n */\n", + "excerptTokens": [ { "kind": "Content", - "text": ";\n orientationFixedRotation: " - }, - { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "text": "sizeEndVariance?: " }, { "kind": "Content", - "text": ";\n }" + "text": "number" }, { "kind": "Content", @@ -37912,53 +42822,53 @@ } ], "isReadonly": false, - "isOptional": false, + "isOptional": true, "releaseTag": "Public", - "name": "\"PARTICLE_EMITTER.SET_ORIENTATION_FIXED_ROTATION\"", + "name": "sizeEndVariance", "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 8 + "startIndex": 1, + "endIndex": 2 } }, { "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_ORIENTATION\":member", - "docComment": "/**\n * Emitted when the orientation mode of emitted particles is set.\n */\n", + "canonicalReference": "server!ParticleEmitterOptions#sizeStart:member", + "docComment": "/**\n * The size at the start of an emitted particle's lifetime.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "ParticleEmitterEvent.SET_ORIENTATION", - "canonicalReference": "server!ParticleEmitterEvent.SET_ORIENTATION:member" + "text": "sizeStart?: " }, { "kind": "Content", - "text": "]: " + "text": "number" }, { "kind": "Content", - "text": "{\n particleEmitter: " - }, - { - "kind": "Reference", - "text": "ParticleEmitter", - "canonicalReference": "server!ParticleEmitter:class" - }, + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "sizeStart", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!ParticleEmitterOptions#sizeStartVariance:member", + "docComment": "/**\n * The size variance at the start of an emitted particle's lifetime.\n */\n", + "excerptTokens": [ { "kind": "Content", - "text": ";\n orientation: " - }, - { - "kind": "Reference", - "text": "ParticleEmitterOrientation", - "canonicalReference": "server!ParticleEmitterOrientation:type" + "text": "sizeStartVariance?: " }, { "kind": "Content", - "text": ";\n }" + "text": "number" }, { "kind": "Content", @@ -37966,44 +42876,26 @@ } ], "isReadonly": false, - "isOptional": false, + "isOptional": true, "releaseTag": "Public", - "name": "\"PARTICLE_EMITTER.SET_ORIENTATION\"", + "name": "sizeStartVariance", "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 8 + "startIndex": 1, + "endIndex": 2 } }, { "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_PAUSED\":member", - "docComment": "/**\n * Emitted when the paused state of an emitted particle is set.\n */\n", + "canonicalReference": "server!ParticleEmitterOptions#textureUri:member", + "docComment": "/**\n * The URI or path to the texture to be used for the particles.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "ParticleEmitterEvent.SET_PAUSED", - "canonicalReference": "server!ParticleEmitterEvent.SET_PAUSED:member" - }, - { - "kind": "Content", - "text": "]: " - }, - { - "kind": "Content", - "text": "{\n particleEmitter: " - }, - { - "kind": "Reference", - "text": "ParticleEmitter", - "canonicalReference": "server!ParticleEmitter:class" + "text": "textureUri: " }, { "kind": "Content", - "text": ";\n paused: boolean;\n }" + "text": "string" }, { "kind": "Content", @@ -38013,678 +42905,852 @@ "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "\"PARTICLE_EMITTER.SET_PAUSED\"", + "name": "textureUri", "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 6 + "startIndex": 1, + "endIndex": 2 } }, { "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_POSITION_VARIANCE\":member", - "docComment": "/**\n * Emitted when the position variance of an emitted particle is set.\n */\n", + "canonicalReference": "server!ParticleEmitterOptions#transparent:member", + "docComment": "/**\n * Whether an emitted particle is transparent, resulting in smoother transparency blending.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "ParticleEmitterEvent.SET_POSITION_VARIANCE", - "canonicalReference": "server!ParticleEmitterEvent.SET_POSITION_VARIANCE:member" + "text": "transparent?: " }, { "kind": "Content", - "text": "]: " + "text": "boolean" }, { "kind": "Content", - "text": "{\n particleEmitter: " - }, - { - "kind": "Reference", - "text": "ParticleEmitter", - "canonicalReference": "server!ParticleEmitter:class" - }, + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "transparent", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!ParticleEmitterOptions#velocity:member", + "docComment": "/**\n * The velocity of an emitted particle.\n */\n", + "excerptTokens": [ { "kind": "Content", - "text": ";\n positionVariance: " + "text": "velocity?: " }, { "kind": "Reference", "text": "Vector3Like", "canonicalReference": "server!Vector3Like:interface" }, - { - "kind": "Content", - "text": ";\n }" - }, { "kind": "Content", "text": ";" } ], "isReadonly": false, - "isOptional": false, + "isOptional": true, "releaseTag": "Public", - "name": "\"PARTICLE_EMITTER.SET_POSITION_VARIANCE\"", + "name": "velocity", "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 8 + "startIndex": 1, + "endIndex": 2 } }, { "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_POSITION\":member", - "docComment": "/**\n * Emitted when the position of the particle emitter is set.\n */\n", + "canonicalReference": "server!ParticleEmitterOptions#velocityVariance:member", + "docComment": "/**\n * The velocity variance of an emitted particle.\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "ParticleEmitterEvent.SET_POSITION", - "canonicalReference": "server!ParticleEmitterEvent.SET_POSITION:member" - }, - { - "kind": "Content", - "text": "]: " - }, - { - "kind": "Content", - "text": "{\n particleEmitter: " - }, - { - "kind": "Reference", - "text": "ParticleEmitter", - "canonicalReference": "server!ParticleEmitter:class" - }, - { - "kind": "Content", - "text": ";\n position: " + "text": "velocityVariance?: " }, { "kind": "Reference", "text": "Vector3Like", "canonicalReference": "server!Vector3Like:interface" }, - { - "kind": "Content", - "text": ";\n }" - }, { "kind": "Content", "text": ";" } ], "isReadonly": false, - "isOptional": false, + "isOptional": true, "releaseTag": "Public", - "name": "\"PARTICLE_EMITTER.SET_POSITION\"", + "name": "velocityVariance", "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 8 + "startIndex": 1, + "endIndex": 2 } + } + ], + "extendsTokenRanges": [] + }, + { + "kind": "TypeAlias", + "canonicalReference": "server!ParticleEmitterOrientation:type", + "docComment": "/**\n * The orientation mode for particles.\n *\n * **Category:** Particles\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export type ParticleEmitterOrientation = " }, { - "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_RATE_VARIANCE\":member", - "docComment": "/**\n * Emitted when the rate per second variance of the particle emission rate is set.\n */\n", + "kind": "Content", + "text": "'billboard' | 'billboardY' | 'fixed' | 'velocity'" + }, + { + "kind": "Content", + "text": ";" + } + ], + "fileUrlPath": "src/worlds/particles/ParticleEmitter.ts", + "releaseTag": "Public", + "name": "ParticleEmitterOrientation", + "typeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "TypeAlias", + "canonicalReference": "server!PathfindAbortCallback:type", + "docComment": "/**\n * Callback invoked when pathfinding aborts.\n *\n * **Category:** Controllers\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export type PathfindAbortCallback = " + }, + { + "kind": "Content", + "text": "() => void" + }, + { + "kind": "Content", + "text": ";" + } + ], + "fileUrlPath": "src/worlds/entities/controllers/PathfindingEntityController.ts", + "releaseTag": "Public", + "name": "PathfindAbortCallback", + "typeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "TypeAlias", + "canonicalReference": "server!PathfindCompleteCallback:type", + "docComment": "/**\n * Callback invoked when pathfinding completes and the entity reaches the target.\n *\n * **Category:** Controllers\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export type PathfindCompleteCallback = " + }, + { + "kind": "Content", + "text": "() => void" + }, + { + "kind": "Content", + "text": ";" + } + ], + "fileUrlPath": "src/worlds/entities/controllers/PathfindingEntityController.ts", + "releaseTag": "Public", + "name": "PathfindCompleteCallback", + "typeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "Class", + "canonicalReference": "server!PathfindingEntityController:class", + "docComment": "/**\n * A pathfinding entity controller built on top of `SimpleEntityController`.\n *\n * When to use: obstacle-aware movement to a target coordinate. Do NOT use for: per-tick recalculation; pathfinding is synchronous and can be expensive.\n *\n * @remarks\n *\n * Implements A* pathfinding. Call `PathfindingEntityController.pathfind` sparingly; it is intended to be called once per destination in most cases.\n *\n *

Coordinate System & Model Orientation

\n *\n * HYTOPIA uses **-Z as forward**. Models must be authored with their front facing -Z. The controller automatically calls `face()` to orient the entity's -Z axis toward each waypoint.\n *\n * **Category:** Controllers\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export default class PathfindingEntityController extends " + }, + { + "kind": "Reference", + "text": "SimpleEntityController", + "canonicalReference": "server!SimpleEntityController:class" + }, + { + "kind": "Content", + "text": " " + } + ], + "fileUrlPath": "src/worlds/entities/controllers/PathfindingEntityController.ts", + "releaseTag": "Public", + "isAbstract": false, + "name": "PathfindingEntityController", + "preserveMemberOrder": false, + "members": [ + { + "kind": "Constructor", + "canonicalReference": "server!PathfindingEntityController:constructor(1)", + "docComment": "/**\n * Constructs a new instance of the `PathfindingEntityController` class\n *\n * @param options - Options for the controller.\n *\n * **Category:** Controllers\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" + "text": "constructor(options?: " }, { "kind": "Reference", - "text": "ParticleEmitterEvent.SET_RATE_VARIANCE", - "canonicalReference": "server!ParticleEmitterEvent.SET_RATE_VARIANCE:member" + "text": "PathfindingEntityControllerOptions", + "canonicalReference": "server!~PathfindingEntityControllerOptions:interface" }, { "kind": "Content", - "text": "]: " - }, + "text": ");" + } + ], + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "options", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": true + } + ] + }, + { + "kind": "Property", + "canonicalReference": "server!PathfindingEntityController#debug:member", + "docComment": "/**\n * Whether to enable debug mode.\n *\n * @remarks\n *\n * When enabled, pathfinding logs debug information to the console.\n *\n * **Category:** Controllers\n */\n", + "excerptTokens": [ { "kind": "Content", - "text": "{\n particleEmitter: " - }, - { - "kind": "Reference", - "text": "ParticleEmitter", - "canonicalReference": "server!ParticleEmitter:class" + "text": "get debug(): " }, { "kind": "Content", - "text": ";\n rateVariance: number;\n }" + "text": "boolean" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, + "isReadonly": true, "isOptional": false, "releaseTag": "Public", - "name": "\"PARTICLE_EMITTER.SET_RATE_VARIANCE\"", + "name": "debug", "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 6 - } + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_RATE\":member", - "docComment": "/**\n * Emitted when the rate per second at which particles are emitted is set.\n */\n", + "kind": "Property", + "canonicalReference": "server!PathfindingEntityController#maxFall:member", + "docComment": "/**\n * The maximum fall distance the entity can fall.\n *\n * **Category:** Controllers\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "ParticleEmitterEvent.SET_RATE", - "canonicalReference": "server!ParticleEmitterEvent.SET_RATE:member" - }, - { - "kind": "Content", - "text": "]: " - }, - { - "kind": "Content", - "text": "{\n particleEmitter: " - }, - { - "kind": "Reference", - "text": "ParticleEmitter", - "canonicalReference": "server!ParticleEmitter:class" + "text": "get maxFall(): " }, { "kind": "Content", - "text": ";\n rate: number;\n }" + "text": "number" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, + "isReadonly": true, "isOptional": false, "releaseTag": "Public", - "name": "\"PARTICLE_EMITTER.SET_RATE\"", + "name": "maxFall", "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 6 - } + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_SIZE_END_VARIANCE\":member", - "docComment": "/**\n * Emitted when the size variance at the end of an emitted particle's lifetime is set.\n */\n", + "kind": "Property", + "canonicalReference": "server!PathfindingEntityController#maxJump:member", + "docComment": "/**\n * The maximum jump distance the entity can jump.\n *\n * **Category:** Controllers\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "ParticleEmitterEvent.SET_SIZE_END_VARIANCE", - "canonicalReference": "server!ParticleEmitterEvent.SET_SIZE_END_VARIANCE:member" - }, - { - "kind": "Content", - "text": "]: " - }, - { - "kind": "Content", - "text": "{\n particleEmitter: " - }, - { - "kind": "Reference", - "text": "ParticleEmitter", - "canonicalReference": "server!ParticleEmitter:class" + "text": "get maxJump(): " }, { "kind": "Content", - "text": ";\n sizeEndVariance: number;\n }" + "text": "number" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, + "isReadonly": true, "isOptional": false, "releaseTag": "Public", - "name": "\"PARTICLE_EMITTER.SET_SIZE_END_VARIANCE\"", + "name": "maxJump", "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 6 - } + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_SIZE_END\":member", - "docComment": "/**\n * Emitted when the size at the end of an emitted particle's lifetime is set.\n */\n", + "kind": "Property", + "canonicalReference": "server!PathfindingEntityController#maxOpenSetIterations:member", + "docComment": "/**\n * The maximum open set iterations before aborting pathfinding.\n *\n * **Category:** Controllers\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "ParticleEmitterEvent.SET_SIZE_END", - "canonicalReference": "server!ParticleEmitterEvent.SET_SIZE_END:member" - }, - { - "kind": "Content", - "text": "]: " - }, - { - "kind": "Content", - "text": "{\n particleEmitter: " - }, - { - "kind": "Reference", - "text": "ParticleEmitter", - "canonicalReference": "server!ParticleEmitter:class" + "text": "get maxOpenSetIterations(): " }, { "kind": "Content", - "text": ";\n sizeEnd: number;\n }" + "text": "number" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, + "isReadonly": true, "isOptional": false, "releaseTag": "Public", - "name": "\"PARTICLE_EMITTER.SET_SIZE_END\"", + "name": "maxOpenSetIterations", "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 6 - } + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_SIZE_START_VARIANCE\":member", - "docComment": "/**\n * Emitted when the size variance at the start of an emitted particle's lifetime is set.\n */\n", + "kind": "Method", + "canonicalReference": "server!PathfindingEntityController#pathfind:member(1)", + "docComment": "/**\n * Calculates a path and moves to the target if a path is found.\n *\n * Use for: one-shot navigation to a destination. Do NOT use for: high-frequency replanning; it is synchronous.\n *\n * @remarks\n *\n * **Synchronous return:** Path calculation happens synchronously. Returns `true` if a path was found, `false` if no path exists or calculation was aborted.\n *\n * **Auto-starts movement:** If a path is found, movement begins immediately using the inherited `move()`, `face()`, and `jump()` methods from `SimpleEntityController`.\n *\n * **Auto-facing (-Z forward):** Automatically calls `face()` for each waypoint, orienting the entity's -Z axis toward the next waypoint. Models must be authored with their front facing -Z.\n *\n * **A* algorithm:** Uses A* pathfinding with configurable `maxJump`, `maxFall`, and `verticalPenalty`. Path calculation is capped by `maxOpenSetIterations` (default 200) to prevent blocking.\n *\n * **Waypoint progression:** Entity moves through calculated waypoints sequentially. Each waypoint has a timeout (`waypointTimeoutMs`) after which it's skipped if not reached.\n *\n * @param target - The target coordinate to pathfind to.\n *\n * @param speed - The speed of the entity (blocks per second).\n *\n * @param options - The pathfinding options.\n *\n * @returns True if a path was found, false otherwise.\n *\n * **Requires:** The controller must be attached to a spawned entity in a world.\n *\n * **Side effects:** Starts movement and facing if a path is found.\n *\n * **Category:** Controllers\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" + "text": "pathfind(target: " }, { "kind": "Reference", - "text": "ParticleEmitterEvent.SET_SIZE_START_VARIANCE", - "canonicalReference": "server!ParticleEmitterEvent.SET_SIZE_START_VARIANCE:member" + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", - "text": "]: " + "text": ", speed: " }, { "kind": "Content", - "text": "{\n particleEmitter: " + "text": "number" + }, + { + "kind": "Content", + "text": ", options?: " }, { "kind": "Reference", - "text": "ParticleEmitter", - "canonicalReference": "server!ParticleEmitter:class" + "text": "PathfindingOptions", + "canonicalReference": "server!PathfindingOptions:type" }, { "kind": "Content", - "text": ";\n sizeStartVariance: number;\n }" + "text": "): " + }, + { + "kind": "Content", + "text": "boolean" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": false, + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 7, + "endIndex": 8 + }, "releaseTag": "Public", - "name": "\"PARTICLE_EMITTER.SET_SIZE_START_VARIANCE\"", - "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 6 - } - }, - { - "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_SIZE_START\":member", - "docComment": "/**\n * Emitted when the size at the start of an emitted particle's lifetime is set.\n */\n", - "excerptTokens": [ + "isProtected": false, + "overloadIndex": 1, + "parameters": [ { - "kind": "Content", - "text": "[" + "parameterName": "target", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false }, { - "kind": "Reference", - "text": "ParticleEmitterEvent.SET_SIZE_START", - "canonicalReference": "server!ParticleEmitterEvent.SET_SIZE_START:member" + "parameterName": "speed", + "parameterTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "isOptional": false }, { - "kind": "Content", - "text": "]: " - }, + "parameterName": "options", + "parameterTypeTokenRange": { + "startIndex": 5, + "endIndex": 6 + }, + "isOptional": true + } + ], + "isOptional": false, + "isAbstract": false, + "name": "pathfind" + }, + { + "kind": "Property", + "canonicalReference": "server!PathfindingEntityController#speed:member", + "docComment": "/**\n * The speed used for path movement.\n *\n * **Category:** Controllers\n */\n", + "excerptTokens": [ { "kind": "Content", - "text": "{\n particleEmitter: " - }, - { - "kind": "Reference", - "text": "ParticleEmitter", - "canonicalReference": "server!ParticleEmitter:class" + "text": "get speed(): " }, { "kind": "Content", - "text": ";\n sizeStart: number;\n }" + "text": "number" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, + "isReadonly": true, "isOptional": false, "releaseTag": "Public", - "name": "\"PARTICLE_EMITTER.SET_SIZE_START\"", + "name": "speed", "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 6 - } + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_TEXTURE_URI\":member", - "docComment": "/**\n * Emitted when the texture URI is set.\n */\n", + "kind": "Property", + "canonicalReference": "server!PathfindingEntityController#target:member", + "docComment": "/**\n * The target coordinate being pathfound to.\n *\n * **Category:** Controllers\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "ParticleEmitterEvent.SET_TEXTURE_URI", - "canonicalReference": "server!ParticleEmitterEvent.SET_TEXTURE_URI:member" - }, - { - "kind": "Content", - "text": "]: " - }, - { - "kind": "Content", - "text": "{\n particleEmitter: " + "text": "get target(): " }, { "kind": "Reference", - "text": "ParticleEmitter", - "canonicalReference": "server!ParticleEmitter:class" + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", - "text": ";\n textureUri: string;\n }" + "text": " | undefined" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, + "isReadonly": true, "isOptional": false, "releaseTag": "Public", - "name": "\"PARTICLE_EMITTER.SET_TEXTURE_URI\"", + "name": "target", "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 6 - } + "startIndex": 1, + "endIndex": 3 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_TRANSPARENT\":member", - "docComment": "/**\n * Emitted when the transparency of an emitted particle is set.\n */\n", + "kind": "Property", + "canonicalReference": "server!PathfindingEntityController#verticalPenalty:member", + "docComment": "/**\n * The vertical penalty used during pathfinding.\n *\n * **Category:** Controllers\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" - }, - { - "kind": "Reference", - "text": "ParticleEmitterEvent.SET_TRANSPARENT", - "canonicalReference": "server!ParticleEmitterEvent.SET_TRANSPARENT:member" + "text": "get verticalPenalty(): " }, { "kind": "Content", - "text": "]: " + "text": "number" }, { "kind": "Content", - "text": "{\n particleEmitter: " - }, + "text": ";" + } + ], + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "verticalPenalty", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false + }, + { + "kind": "Property", + "canonicalReference": "server!PathfindingEntityController#waypointNextIndex:member", + "docComment": "/**\n * The index of the next waypoint being approached.\n *\n * **Category:** Controllers\n */\n", + "excerptTokens": [ { - "kind": "Reference", - "text": "ParticleEmitter", - "canonicalReference": "server!ParticleEmitter:class" + "kind": "Content", + "text": "get waypointNextIndex(): " }, { "kind": "Content", - "text": ";\n transparent: boolean;\n }" + "text": "number" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, + "isReadonly": true, "isOptional": false, "releaseTag": "Public", - "name": "\"PARTICLE_EMITTER.SET_TRANSPARENT\"", + "name": "waypointNextIndex", "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 6 - } + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_VELOCITY_VARIANCE\":member", - "docComment": "/**\n * Emitted when the velocity variance of an emitted particle is set.\n */\n", + "kind": "Property", + "canonicalReference": "server!PathfindingEntityController#waypoints:member", + "docComment": "/**\n * The current waypoints being followed.\n *\n * **Category:** Controllers\n */\n", "excerptTokens": [ { "kind": "Content", - "text": "[" + "text": "get waypoints(): " }, { "kind": "Reference", - "text": "ParticleEmitterEvent.SET_VELOCITY_VARIANCE", - "canonicalReference": "server!ParticleEmitterEvent.SET_VELOCITY_VARIANCE:member" + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" }, { "kind": "Content", - "text": "]: " + "text": "[]" }, { "kind": "Content", - "text": "{\n particleEmitter: " - }, - { - "kind": "Reference", - "text": "ParticleEmitter", - "canonicalReference": "server!ParticleEmitter:class" - }, + "text": ";" + } + ], + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "waypoints", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 3 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false + }, + { + "kind": "Property", + "canonicalReference": "server!PathfindingEntityController#waypointTimeoutMs:member", + "docComment": "/**\n * The timeout in milliseconds for a waypoint to be considered reached.\n *\n * **Category:** Controllers\n */\n", + "excerptTokens": [ { "kind": "Content", - "text": ";\n velocityVariance: " - }, - { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "text": "get waypointTimeoutMs(): " }, { "kind": "Content", - "text": ";\n }" + "text": "number" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, + "isReadonly": true, "isOptional": false, "releaseTag": "Public", - "name": "\"PARTICLE_EMITTER.SET_VELOCITY_VARIANCE\"", + "name": "waypointTimeoutMs", "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 8 - } + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false + } + ], + "extendsTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "implementsTokenRanges": [] + }, + { + "kind": "TypeAlias", + "canonicalReference": "server!PathfindingOptions:type", + "docComment": "/**\n * Options for `PathfindingEntityController.pathfind`.\n *\n * Use for: configuring a single pathfinding request. Do NOT use for: per-tick recalculation; call `pathfind` sparingly.\n *\n * **Category:** Controllers\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export type PathfindingOptions = " }, { - "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SET_VELOCITY\":member", - "docComment": "/**\n * Emitted when the velocity of an emitted particle is set.\n */\n", + "kind": "Content", + "text": "{\n debug?: boolean;\n maxFall?: number;\n maxJump?: number;\n maxOpenSetIterations?: number;\n pathfindAbortCallback?: " + }, + { + "kind": "Reference", + "text": "PathfindAbortCallback", + "canonicalReference": "server!PathfindAbortCallback:type" + }, + { + "kind": "Content", + "text": ";\n pathfindCompleteCallback?: " + }, + { + "kind": "Reference", + "text": "PathfindCompleteCallback", + "canonicalReference": "server!PathfindCompleteCallback:type" + }, + { + "kind": "Content", + "text": ";\n verticalPenalty?: number;\n waypointMoveCompleteCallback?: " + }, + { + "kind": "Reference", + "text": "WaypointMoveCompleteCallback", + "canonicalReference": "server!WaypointMoveCompleteCallback:type" + }, + { + "kind": "Content", + "text": ";\n waypointMoveSkippedCallback?: " + }, + { + "kind": "Reference", + "text": "WaypointMoveSkippedCallback", + "canonicalReference": "server!WaypointMoveSkippedCallback:type" + }, + { + "kind": "Content", + "text": ";\n waypointStoppingDistance?: number;\n waypointTimeoutMs?: number;\n}" + }, + { + "kind": "Content", + "text": ";" + } + ], + "fileUrlPath": "src/worlds/entities/controllers/PathfindingEntityController.ts", + "releaseTag": "Public", + "name": "PathfindingOptions", + "typeTokenRange": { + "startIndex": 1, + "endIndex": 10 + } + }, + { + "kind": "Class", + "canonicalReference": "server!PerformanceMonitor:class", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "export default class PerformanceMonitor extends " + }, + { + "kind": "Reference", + "text": "EventRouter", + "canonicalReference": "server!EventRouter:class" + }, + { + "kind": "Content", + "text": " " + } + ], + "fileUrlPath": "src/metrics/PerformanceMonitor.ts", + "releaseTag": "Public", + "isAbstract": false, + "name": "PerformanceMonitor", + "preserveMemberOrder": false, + "members": [ + { + "kind": "Method", + "canonicalReference": "server!PerformanceMonitor#beginTick:member(1)", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "[" + "text": "beginTick(tick: " }, { - "kind": "Reference", - "text": "ParticleEmitterEvent.SET_VELOCITY", - "canonicalReference": "server!ParticleEmitterEvent.SET_VELOCITY:member" + "kind": "Content", + "text": "number" }, { "kind": "Content", - "text": "]: " + "text": ", entityCount: " }, { "kind": "Content", - "text": "{\n particleEmitter: " + "text": "number" }, { - "kind": "Reference", - "text": "ParticleEmitter", - "canonicalReference": "server!ParticleEmitter:class" + "kind": "Content", + "text": ", playerCount: " }, { "kind": "Content", - "text": ";\n velocity: " + "text": "number" }, { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "kind": "Content", + "text": "): " }, { "kind": "Content", - "text": ";\n }" + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": false, - "releaseTag": "Public", - "name": "\"PARTICLE_EMITTER.SET_VELOCITY\"", - "propertyTypeTokenRange": { - "startIndex": 3, + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 7, "endIndex": 8 - } - }, - { - "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterEventPayloads#\"PARTICLE_EMITTER.SPAWN\":member", - "docComment": "/**\n * Emitted when a ParticleEmitter is spawned.\n */\n", - "excerptTokens": [ + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ { - "kind": "Content", - "text": "[" + "parameterName": "tick", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false }, { - "kind": "Reference", - "text": "ParticleEmitterEvent.SPAWN", - "canonicalReference": "server!ParticleEmitterEvent.SPAWN:member" + "parameterName": "entityCount", + "parameterTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "isOptional": false }, { - "kind": "Content", - "text": "]: " - }, + "parameterName": "playerCount", + "parameterTypeTokenRange": { + "startIndex": 5, + "endIndex": 6 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "beginTick" + }, + { + "kind": "Method", + "canonicalReference": "server!PerformanceMonitor#disable:member(1)", + "docComment": "", + "excerptTokens": [ { "kind": "Content", - "text": "{\n particleEmitter: " - }, - { - "kind": "Reference", - "text": "ParticleEmitter", - "canonicalReference": "server!ParticleEmitter:class" + "text": "disable(): " }, { "kind": "Content", - "text": ";\n }" + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": false, + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, "releaseTag": "Public", - "name": "\"PARTICLE_EMITTER.SPAWN\"", - "propertyTypeTokenRange": { - "startIndex": 3, - "endIndex": 6 - } - } - ], - "extendsTokenRanges": [] - }, - { - "kind": "Class", - "canonicalReference": "server!ParticleEmitterManager:class", - "docComment": "/**\n * Manages ParticleEmitter instances in a world.\n *\n * When to use: querying or bulk-cleaning particle emitters for a world. Do NOT use for: configuring emitters; use `ParticleEmitter` instances directly.\n *\n * @remarks\n *\n * The ParticleEmitterManager is created internally per `World` instance. Pattern: spawn emitters during gameplay and use this manager for cleanup on entity despawn.\n *\n * **Category:** Particles\n *\n * The constructor for this class is marked as internal. Third-party code should not call the constructor directly or create subclasses that extend the `ParticleEmitterManager` class.\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export default class ParticleEmitterManager " - } - ], - "fileUrlPath": "src/worlds/particles/ParticleEmitterManager.ts", - "releaseTag": "Public", - "isAbstract": false, - "name": "ParticleEmitterManager", - "preserveMemberOrder": false, - "members": [ + "isProtected": false, + "overloadIndex": 1, + "parameters": [], + "isOptional": false, + "isAbstract": false, + "name": "disable" + }, { "kind": "Method", - "canonicalReference": "server!ParticleEmitterManager#getAllEntityAttachedParticleEmitters:member(1)", - "docComment": "/**\n * Retrieves all spawned ParticleEmitter instances attached to a specific entity.\n *\n * Use for: cleanup or inspection of entity-bound emitters.\n *\n * @param entity - The entity to get attached ParticleEmitter instances for.\n *\n * @returns An array of ParticleEmitter instances.\n *\n * **Requires:** Entity should belong to this world for meaningful results.\n *\n * @see\n *\n * `despawnEntityAttachedParticleEmitters()`\n *\n * **Category:** Particles\n */\n", + "canonicalReference": "server!PerformanceMonitor#enable:member(1)", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "getAllEntityAttachedParticleEmitters(entity: " + "text": "enable(options?: " }, { "kind": "Reference", - "text": "Entity", - "canonicalReference": "server!Entity:class" + "text": "PerformanceMonitorOptions", + "canonicalReference": "server!PerformanceMonitorOptions:interface" }, { "kind": "Content", "text": "): " }, - { - "kind": "Reference", - "text": "ParticleEmitter", - "canonicalReference": "server!ParticleEmitter:class" - }, { "kind": "Content", - "text": "[]" + "text": "void" }, { "kind": "Content", @@ -38694,42 +43760,45 @@ "isStatic": false, "returnTypeTokenRange": { "startIndex": 3, - "endIndex": 5 + "endIndex": 4 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, "parameters": [ { - "parameterName": "entity", + "parameterName": "options", "parameterTypeTokenRange": { "startIndex": 1, "endIndex": 2 }, - "isOptional": false + "isOptional": true } ], "isOptional": false, "isAbstract": false, - "name": "getAllEntityAttachedParticleEmitters" + "name": "enable" }, { "kind": "Method", - "canonicalReference": "server!ParticleEmitterManager#getAllParticleEmitters:member(1)", - "docComment": "/**\n * Retrieves all spawned ParticleEmitter instances for the world.\n *\n * @returns An array of ParticleEmitter instances.\n *\n * **Category:** Particles\n */\n", + "canonicalReference": "server!PerformanceMonitor#enableEntityProfiling:member(1)", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "getAllParticleEmitters(): " + "text": "enableEntityProfiling(enabled: " }, { - "kind": "Reference", - "text": "ParticleEmitter", - "canonicalReference": "server!ParticleEmitter:class" + "kind": "Content", + "text": "boolean" }, { "kind": "Content", - "text": "[]" + "text": "): " + }, + { + "kind": "Content", + "text": "void" }, { "kind": "Content", @@ -38738,485 +43807,392 @@ ], "isStatic": false, "returnTypeTokenRange": { - "startIndex": 1, - "endIndex": 3 + "startIndex": 3, + "endIndex": 4 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, - "parameters": [], - "isOptional": false, - "isAbstract": false, - "name": "getAllParticleEmitters" - }, - { - "kind": "Property", - "canonicalReference": "server!ParticleEmitterManager#world:member", - "docComment": "/**\n * The world the ParticleEmitterManager is for.\n *\n * **Category:** Particles\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "get world(): " - }, - { - "kind": "Reference", - "text": "World", - "canonicalReference": "server!World:class" - }, + "parameters": [ { - "kind": "Content", - "text": ";" + "parameterName": "enabled", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false } ], - "isReadonly": true, "isOptional": false, - "releaseTag": "Public", - "name": "world", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false - } - ], - "implementsTokenRanges": [] - }, - { - "kind": "Interface", - "canonicalReference": "server!ParticleEmitterOptions:interface", - "docComment": "/**\n * Options for creating a ParticleEmitter instance.\n *\n * Use for: configuring an emitter before calling `ParticleEmitter.spawn`. Do NOT use for: runtime updates after spawn; use `ParticleEmitter.set*` methods.\n *\n * **Category:** Particles\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export interface ParticleEmitterOptions " - } - ], - "fileUrlPath": "src/worlds/particles/ParticleEmitter.ts", - "releaseTag": "Public", - "name": "ParticleEmitterOptions", - "preserveMemberOrder": false, - "members": [ + "isAbstract": false, + "name": "enableEntityProfiling" + }, { - "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterOptions#alphaTest:member", - "docComment": "/**\n * The alpha test value, discards particle texture pixels with alpha opacity less than this value. Defaults to 0.5.\n */\n", + "kind": "Method", + "canonicalReference": "server!PerformanceMonitor#endTick:member(1)", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "alphaTest?: " + "text": "endTick(): " }, { "kind": "Content", - "text": "number" + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": true, - "releaseTag": "Public", - "name": "alphaTest", - "propertyTypeTokenRange": { + "isStatic": false, + "returnTypeTokenRange": { "startIndex": 1, "endIndex": 2 - } + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [], + "isOptional": false, + "isAbstract": false, + "name": "endTick" }, { - "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterOptions#attachedToEntity:member", - "docComment": "/**\n * If set, the ParticleEmitter will be attached to this entity.\n */\n", + "kind": "Method", + "canonicalReference": "server!PerformanceMonitor#getEntityCosts:member(1)", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "attachedToEntity?: " + "text": "getEntityCosts(): " }, { "kind": "Reference", - "text": "Entity", - "canonicalReference": "server!Entity:class" - }, - { - "kind": "Content", - "text": ";" - } - ], - "isReadonly": false, - "isOptional": true, - "releaseTag": "Public", - "name": "attachedToEntity", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } - }, - { - "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterOptions#attachedToEntityNodeName:member", - "docComment": "/**\n * The name of the node of the attached entity (if the attached entity is a model entity) to attach the particle emitter to.\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "attachedToEntityNodeName?: " + "text": "Map", + "canonicalReference": "!Map:interface" }, { "kind": "Content", - "text": "string" + "text": "" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": true, - "releaseTag": "Public", - "name": "attachedToEntityNodeName", - "propertyTypeTokenRange": { + "isStatic": false, + "returnTypeTokenRange": { "startIndex": 1, - "endIndex": 2 - } + "endIndex": 3 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [], + "isOptional": false, + "isAbstract": false, + "name": "getEntityCosts" }, { - "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterOptions#colorEnd:member", - "docComment": "/**\n * The color of an emitted particle at the end of its lifetime.\n */\n", + "kind": "Method", + "canonicalReference": "server!PerformanceMonitor#getSnapshot:member(1)", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "colorEnd?: " + "text": "getSnapshot(): " }, { "kind": "Reference", - "text": "RgbColor", - "canonicalReference": "server!RgbColor:interface" + "text": "PerformanceSnapshot", + "canonicalReference": "server!PerformanceSnapshot:interface" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": true, - "releaseTag": "Public", - "name": "colorEnd", - "propertyTypeTokenRange": { + "isStatic": false, + "returnTypeTokenRange": { "startIndex": 1, "endIndex": 2 - } + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [], + "isOptional": false, + "isAbstract": false, + "name": "getSnapshot" }, { - "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterOptions#colorEndVariance:member", - "docComment": "/**\n * The color variance of an emitted particle at the end of its lifetime.\n */\n", + "kind": "Property", + "canonicalReference": "server!PerformanceMonitor.instance:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "colorEndVariance?: " + "text": "static get instance(): " }, { "kind": "Reference", - "text": "RgbColor", - "canonicalReference": "server!RgbColor:interface" + "text": "PerformanceMonitor", + "canonicalReference": "server!PerformanceMonitor:class" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": true, + "isReadonly": true, + "isOptional": false, "releaseTag": "Public", - "name": "colorEndVariance", + "name": "instance", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - } + }, + "isStatic": true, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterOptions#colorIntensityEnd:member", - "docComment": "/**\n * The color intensity of an emitted particle at the end of its lifetime. Values greater than 1 create HDR/bloom effects.\n */\n", + "kind": "Property", + "canonicalReference": "server!PerformanceMonitor#isEnabled:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "colorIntensityEnd?: " + "text": "get isEnabled(): " }, { "kind": "Content", - "text": "number" + "text": "boolean" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": true, + "isReadonly": true, + "isOptional": false, "releaseTag": "Public", - "name": "colorIntensityEnd", + "name": "isEnabled", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - } + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterOptions#colorIntensityEndVariance:member", - "docComment": "/**\n * The color intensity variance of an emitted particle at the end of its lifetime.\n */\n", + "kind": "Property", + "canonicalReference": "server!PerformanceMonitor#isEntityProfilingEnabled:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "colorIntensityEndVariance?: " + "text": "get isEntityProfilingEnabled(): " }, { "kind": "Content", - "text": "number" + "text": "boolean" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": true, + "isReadonly": true, + "isOptional": false, "releaseTag": "Public", - "name": "colorIntensityEndVariance", + "name": "isEntityProfilingEnabled", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - } + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false }, { - "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterOptions#colorIntensityStart:member", - "docComment": "/**\n * The color intensity of an emitted particle at the start of its lifetime. Values greater than 1 create HDR/bloom effects.\n */\n", + "kind": "Method", + "canonicalReference": "server!PerformanceMonitor#measure:member(1)", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "colorIntensityStart?: " + "text": "measure(name: " }, { "kind": "Content", - "text": "number" + "text": "string" }, { "kind": "Content", - "text": ";" - } - ], - "isReadonly": false, - "isOptional": true, - "releaseTag": "Public", - "name": "colorIntensityStart", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } - }, - { - "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterOptions#colorIntensityStartVariance:member", - "docComment": "/**\n * The color intensity variance of an emitted particle at the start of its lifetime.\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "colorIntensityStartVariance?: " + "text": ", fn: " }, { "kind": "Content", - "text": "number" + "text": "() => T" }, { "kind": "Content", - "text": ";" - } - ], - "isReadonly": false, - "isOptional": true, - "releaseTag": "Public", - "name": "colorIntensityStartVariance", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } - }, - { - "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterOptions#colorStart:member", - "docComment": "/**\n * The color of an emitted particle at the start of its lifetime.\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "colorStart?: " + "text": "): " }, { - "kind": "Reference", - "text": "RgbColor", - "canonicalReference": "server!RgbColor:interface" + "kind": "Content", + "text": "T" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": true, - "releaseTag": "Public", - "name": "colorStart", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } - }, - { - "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterOptions#colorStartVariance:member", - "docComment": "/**\n * The color variance of an emitted particle at the start of its lifetime.\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "colorStartVariance?: " - }, - { - "kind": "Reference", - "text": "RgbColor", - "canonicalReference": "server!RgbColor:interface" - }, + "typeParameters": [ { - "kind": "Content", - "text": ";" + "typeParameterName": "T", + "constraintTokenRange": { + "startIndex": 0, + "endIndex": 0 + }, + "defaultTypeTokenRange": { + "startIndex": 0, + "endIndex": 0 + } } ], - "isReadonly": false, - "isOptional": true, + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 5, + "endIndex": 6 + }, "releaseTag": "Public", - "name": "colorStartVariance", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } - }, - { - "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterOptions#gravity:member", - "docComment": "/**\n * The gravity vector for an emitted particle.\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "gravity?: " - }, + "isProtected": false, + "overloadIndex": 1, + "parameters": [ { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "parameterName": "name", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false }, { - "kind": "Content", - "text": ";" - } - ], - "isReadonly": false, - "isOptional": true, - "releaseTag": "Public", - "name": "gravity", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } + "parameterName": "fn", + "parameterTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "measure" }, { - "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterOptions#lifetime:member", - "docComment": "/**\n * The lifetime of an emitted particle in seconds.\n */\n", + "kind": "Method", + "canonicalReference": "server!PerformanceMonitor#measureAsync:member(1)", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "lifetime?: " + "text": "measureAsync(name: " }, { "kind": "Content", - "text": "number" + "text": "string" }, { "kind": "Content", - "text": ";" - } - ], - "isReadonly": false, - "isOptional": true, - "releaseTag": "Public", - "name": "lifetime", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } - }, - { - "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterOptions#lifetimeVariance:member", - "docComment": "/**\n * The lifetime variance of an emitted particle in seconds.\n */\n", - "excerptTokens": [ + "text": ", fn: " + }, { "kind": "Content", - "text": "lifetimeVariance?: " + "text": "() => " }, { - "kind": "Content", - "text": "number" + "kind": "Reference", + "text": "Promise", + "canonicalReference": "!Promise:interface" }, { "kind": "Content", - "text": ";" - } - ], - "isReadonly": false, - "isOptional": true, - "releaseTag": "Public", - "name": "lifetimeVariance", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } - }, - { - "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterOptions#lockToEmitter:member", - "docComment": "/**\n * When enabled, emitted particles follow the emitter's world position. Cannot be changed after construction.\n */\n", - "excerptTokens": [ + "text": "" + }, { "kind": "Content", - "text": "lockToEmitter?: " + "text": "): " + }, + { + "kind": "Reference", + "text": "Promise", + "canonicalReference": "!Promise:interface" }, { "kind": "Content", - "text": "boolean" + "text": "" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": true, + "typeParameters": [ + { + "typeParameterName": "T", + "constraintTokenRange": { + "startIndex": 0, + "endIndex": 0 + }, + "defaultTypeTokenRange": { + "startIndex": 0, + "endIndex": 0 + } + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 7, + "endIndex": 9 + }, "releaseTag": "Public", - "name": "lockToEmitter", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "name", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + }, + { + "parameterName": "fn", + "parameterTypeTokenRange": { + "startIndex": 3, + "endIndex": 6 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "measureAsync" }, { - "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterOptions#maxParticles:member", - "docComment": "/**\n * The maximum number of live particles.\n */\n", + "kind": "Method", + "canonicalReference": "server!PerformanceMonitor#recordEntityCost:member(1)", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "maxParticles?: " + "text": "recordEntityCost(entityId: " }, { "kind": "Content", @@ -39224,359 +44200,338 @@ }, { "kind": "Content", - "text": ";" - } - ], - "isReadonly": false, - "isOptional": true, - "releaseTag": "Public", - "name": "maxParticles", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } - }, - { - "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterOptions#offset:member", - "docComment": "/**\n * The offset of the particle emitter from the attached entity or position.\n */\n", - "excerptTokens": [ + "text": ", name: " + }, { "kind": "Content", - "text": "offset?: " + "text": "string" }, { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "kind": "Content", + "text": ", tickMs: " }, { "kind": "Content", - "text": ";" - } - ], - "isReadonly": false, - "isOptional": true, - "releaseTag": "Public", - "name": "offset", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } - }, - { - "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterOptions#opacityEnd:member", - "docComment": "/**\n * The opacity of an emitted particle at the end of its lifetime.\n */\n", - "excerptTokens": [ + "text": "number" + }, { "kind": "Content", - "text": "opacityEnd?: " + "text": "): " }, { "kind": "Content", - "text": "number" + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": true, + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 7, + "endIndex": 8 + }, "releaseTag": "Public", - "name": "opacityEnd", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } - }, - { - "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterOptions#opacityEndVariance:member", - "docComment": "/**\n * The opacity variance of an emitted particle at the end of its lifetime.\n */\n", - "excerptTokens": [ + "isProtected": false, + "overloadIndex": 1, + "parameters": [ { - "kind": "Content", - "text": "opacityEndVariance?: " + "parameterName": "entityId", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false }, { - "kind": "Content", - "text": "number" + "parameterName": "name", + "parameterTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "isOptional": false }, { - "kind": "Content", - "text": ";" + "parameterName": "tickMs", + "parameterTypeTokenRange": { + "startIndex": 5, + "endIndex": 6 + }, + "isOptional": false } ], - "isReadonly": false, - "isOptional": true, - "releaseTag": "Public", - "name": "opacityEndVariance", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } + "isOptional": false, + "isAbstract": false, + "name": "recordEntityCost" }, { - "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterOptions#opacityStart:member", - "docComment": "/**\n * The opacity of an emitted particle at the start of its lifetime.\n */\n", + "kind": "Method", + "canonicalReference": "server!PerformanceMonitor#recordPhase:member(1)", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "opacityStart?: " + "text": "recordPhase(phaseName: " }, { "kind": "Content", - "text": "number" + "text": "string" }, { "kind": "Content", - "text": ";" - } - ], - "isReadonly": false, - "isOptional": true, - "releaseTag": "Public", - "name": "opacityStart", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } - }, - { - "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterOptions#opacityStartVariance:member", - "docComment": "/**\n * The opacity variance of an emitted particle at the start of its lifetime.\n */\n", - "excerptTokens": [ + "text": ", durationMs: " + }, { "kind": "Content", - "text": "opacityStartVariance?: " + "text": "number" }, { "kind": "Content", - "text": "number" + "text": "): " + }, + { + "kind": "Content", + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": true, + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 5, + "endIndex": 6 + }, "releaseTag": "Public", - "name": "opacityStartVariance", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } - }, - { - "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterOptions#orientation:member", - "docComment": "/**\n * The orientation mode of emitted particles. 'billboard' faces the camera, 'billboardY' faces the camera but keeps Y-axis upward, 'fixed' uses a fixed rotation. Defaults to 'billboard'.\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "orientation?: " - }, + "isProtected": false, + "overloadIndex": 1, + "parameters": [ { - "kind": "Reference", - "text": "ParticleEmitterOrientation", - "canonicalReference": "server!ParticleEmitterOrientation:type" + "parameterName": "phaseName", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false }, { - "kind": "Content", - "text": ";" + "parameterName": "durationMs", + "parameterTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "isOptional": false } ], - "isReadonly": false, - "isOptional": true, - "releaseTag": "Public", - "name": "orientation", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } + "isOptional": false, + "isAbstract": false, + "name": "recordPhase" }, { - "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterOptions#orientationFixedRotation:member", - "docComment": "/**\n * The fixed rotation of emitted particles in degrees (x, y, z) when orientation is 'fixed'. Defaults to (0, 0, 0).\n */\n", + "kind": "Method", + "canonicalReference": "server!PerformanceMonitor#resetStats:member(1)", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "orientationFixedRotation?: " + "text": "resetStats(): " }, { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "kind": "Content", + "text": "void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": true, - "releaseTag": "Public", - "name": "orientationFixedRotation", - "propertyTypeTokenRange": { + "isStatic": false, + "returnTypeTokenRange": { "startIndex": 1, "endIndex": 2 - } + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [], + "isOptional": false, + "isAbstract": false, + "name": "resetStats" }, { - "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterOptions#position:member", - "docComment": "/**\n * The position of the particle emitter in the world if explicitly set.\n */\n", + "kind": "Method", + "canonicalReference": "server!PerformanceMonitor#startTiming:member(1)", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "position?: " - }, - { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "text": "startTiming(name: " }, { "kind": "Content", - "text": ";" - } - ], - "isReadonly": false, - "isOptional": true, - "releaseTag": "Public", - "name": "position", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } - }, - { - "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterOptions#positionVariance:member", - "docComment": "/**\n * The position variance of an emitted particle.\n */\n", - "excerptTokens": [ + "text": "string" + }, { "kind": "Content", - "text": "positionVariance?: " + "text": "): " }, { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "kind": "Content", + "text": "() => void" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": true, + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, "releaseTag": "Public", - "name": "positionVariance", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } - }, + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "name", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "startTiming" + } + ], + "extendsTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "implementsTokenRanges": [] + }, + { + "kind": "Enum", + "canonicalReference": "server!PerformanceMonitorEvent:enum", + "docComment": "", + "excerptTokens": [ { - "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterOptions#rate:member", - "docComment": "/**\n * The rate per second at which particles are emitted.\n */\n", + "kind": "Content", + "text": "export declare enum PerformanceMonitorEvent " + } + ], + "fileUrlPath": "src/metrics/PerformanceMonitor.ts", + "releaseTag": "Public", + "name": "PerformanceMonitorEvent", + "preserveMemberOrder": false, + "members": [ + { + "kind": "EnumMember", + "canonicalReference": "server!PerformanceMonitorEvent.SNAPSHOT:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "rate?: " - }, - { - "kind": "Content", - "text": "number" + "text": "SNAPSHOT = " }, { "kind": "Content", - "text": ";" + "text": "\"PERFORMANCE_MONITOR.SNAPSHOT\"" } ], - "isReadonly": false, - "isOptional": true, - "releaseTag": "Public", - "name": "rate", - "propertyTypeTokenRange": { + "initializerTokenRange": { "startIndex": 1, "endIndex": 2 - } + }, + "releaseTag": "Public", + "name": "SNAPSHOT" }, { - "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterOptions#rateVariance:member", - "docComment": "/**\n * The rate per second variance of the particle emission rate.\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!PerformanceMonitorEvent.SPIKE_DETECTED:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "rateVariance?: " - }, - { - "kind": "Content", - "text": "number" + "text": "SPIKE_DETECTED = " }, { "kind": "Content", - "text": ";" + "text": "\"PERFORMANCE_MONITOR.SPIKE_DETECTED\"" } ], - "isReadonly": false, - "isOptional": true, - "releaseTag": "Public", - "name": "rateVariance", - "propertyTypeTokenRange": { + "initializerTokenRange": { "startIndex": 1, "endIndex": 2 - } + }, + "releaseTag": "Public", + "name": "SPIKE_DETECTED" }, { - "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterOptions#sizeEnd:member", - "docComment": "/**\n * The size at the end of an emitted particle's lifetime.\n */\n", + "kind": "EnumMember", + "canonicalReference": "server!PerformanceMonitorEvent.TICK_REPORT:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "sizeEnd?: " - }, - { - "kind": "Content", - "text": "number" + "text": "TICK_REPORT = " }, { "kind": "Content", - "text": ";" + "text": "\"PERFORMANCE_MONITOR.TICK_REPORT\"" } ], - "isReadonly": false, - "isOptional": true, - "releaseTag": "Public", - "name": "sizeEnd", - "propertyTypeTokenRange": { + "initializerTokenRange": { "startIndex": 1, "endIndex": 2 - } - }, + }, + "releaseTag": "Public", + "name": "TICK_REPORT" + } + ] + }, + { + "kind": "Interface", + "canonicalReference": "server!PerformanceMonitorEventPayloads:interface", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "export interface PerformanceMonitorEventPayloads " + } + ], + "fileUrlPath": "src/metrics/PerformanceMonitor.ts", + "releaseTag": "Public", + "name": "PerformanceMonitorEventPayloads", + "preserveMemberOrder": false, + "members": [ { "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterOptions#sizeEndVariance:member", - "docComment": "/**\n * The size variance at the end of an emitted particle's lifetime.\n */\n", + "canonicalReference": "server!PerformanceMonitorEventPayloads#\"PERFORMANCE_MONITOR.SNAPSHOT\":member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "sizeEndVariance?: " + "text": "[" + }, + { + "kind": "Reference", + "text": "PerformanceMonitorEvent.SNAPSHOT", + "canonicalReference": "server!PerformanceMonitorEvent.SNAPSHOT:member" }, { "kind": "Content", - "text": "number" + "text": "]: " + }, + { + "kind": "Reference", + "text": "PerformanceSnapshot", + "canonicalReference": "server!PerformanceSnapshot:interface" }, { "kind": "Content", @@ -39584,26 +44539,36 @@ } ], "isReadonly": false, - "isOptional": true, + "isOptional": false, "releaseTag": "Public", - "name": "sizeEndVariance", + "name": "\"PERFORMANCE_MONITOR.SNAPSHOT\"", "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 + "startIndex": 3, + "endIndex": 4 } }, { "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterOptions#sizeStart:member", - "docComment": "/**\n * The size at the start of an emitted particle's lifetime.\n */\n", + "canonicalReference": "server!PerformanceMonitorEventPayloads#\"PERFORMANCE_MONITOR.SPIKE_DETECTED\":member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "sizeStart?: " + "text": "[" + }, + { + "kind": "Reference", + "text": "PerformanceMonitorEvent.SPIKE_DETECTED", + "canonicalReference": "server!PerformanceMonitorEvent.SPIKE_DETECTED:member" + }, + { + "kind": "Content", + "text": "]: " }, { - "kind": "Content", - "text": "number" + "kind": "Reference", + "text": "TickReport", + "canonicalReference": "server!TickReport:interface" }, { "kind": "Content", @@ -39611,26 +44576,36 @@ } ], "isReadonly": false, - "isOptional": true, + "isOptional": false, "releaseTag": "Public", - "name": "sizeStart", + "name": "\"PERFORMANCE_MONITOR.SPIKE_DETECTED\"", "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 + "startIndex": 3, + "endIndex": 4 } }, { "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterOptions#sizeStartVariance:member", - "docComment": "/**\n * The size variance at the start of an emitted particle's lifetime.\n */\n", + "canonicalReference": "server!PerformanceMonitorEventPayloads#\"PERFORMANCE_MONITOR.TICK_REPORT\":member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "sizeStartVariance?: " + "text": "[" + }, + { + "kind": "Reference", + "text": "PerformanceMonitorEvent.TICK_REPORT", + "canonicalReference": "server!PerformanceMonitorEvent.TICK_REPORT:member" }, { "kind": "Content", - "text": "number" + "text": "]: " + }, + { + "kind": "Reference", + "text": "TickReport", + "canonicalReference": "server!TickReport:interface" }, { "kind": "Content", @@ -39638,26 +44613,44 @@ } ], "isReadonly": false, - "isOptional": true, + "isOptional": false, "releaseTag": "Public", - "name": "sizeStartVariance", + "name": "\"PERFORMANCE_MONITOR.TICK_REPORT\"", "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 + "startIndex": 3, + "endIndex": 4 } - }, + } + ], + "extendsTokenRanges": [] + }, + { + "kind": "Interface", + "canonicalReference": "server!PerformanceMonitorOptions:interface", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "export interface PerformanceMonitorOptions " + } + ], + "fileUrlPath": "src/metrics/PerformanceMonitor.ts", + "releaseTag": "Public", + "name": "PerformanceMonitorOptions", + "preserveMemberOrder": false, + "members": [ { "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterOptions#textureUri:member", - "docComment": "/**\n * The URI or path to the texture to be used for the particles.\n */\n", + "canonicalReference": "server!PerformanceMonitorOptions#historySize:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "textureUri: " + "text": "historySize?: " }, { "kind": "Content", - "text": "string" + "text": "number" }, { "kind": "Content", @@ -39665,9 +44658,9 @@ } ], "isReadonly": false, - "isOptional": false, + "isOptional": true, "releaseTag": "Public", - "name": "textureUri", + "name": "historySize", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -39675,16 +44668,16 @@ }, { "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterOptions#transparent:member", - "docComment": "/**\n * Whether an emitted particle is transparent, resulting in smoother transparency blending.\n */\n", + "canonicalReference": "server!PerformanceMonitorOptions#snapshotIntervalMs:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "transparent?: " + "text": "snapshotIntervalMs?: " }, { "kind": "Content", - "text": "boolean" + "text": "number" }, { "kind": "Content", @@ -39694,7 +44687,7 @@ "isReadonly": false, "isOptional": true, "releaseTag": "Public", - "name": "transparent", + "name": "snapshotIntervalMs", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -39702,17 +44695,16 @@ }, { "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterOptions#velocity:member", - "docComment": "/**\n * The velocity of an emitted particle.\n */\n", + "canonicalReference": "server!PerformanceMonitorOptions#spikeThresholdMs:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "velocity?: " + "text": "spikeThresholdMs?: " }, { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "kind": "Content", + "text": "number" }, { "kind": "Content", @@ -39722,7 +44714,7 @@ "isReadonly": false, "isOptional": true, "releaseTag": "Public", - "name": "velocity", + "name": "spikeThresholdMs", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -39730,17 +44722,16 @@ }, { "kind": "PropertySignature", - "canonicalReference": "server!ParticleEmitterOptions#velocityVariance:member", - "docComment": "/**\n * The velocity variance of an emitted particle.\n */\n", + "canonicalReference": "server!PerformanceMonitorOptions#tickBudgetMs:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "velocityVariance?: " + "text": "tickBudgetMs?: " }, { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "kind": "Content", + "text": "number" }, { "kind": "Content", @@ -39750,7 +44741,7 @@ "isReadonly": false, "isOptional": true, "releaseTag": "Public", - "name": "velocityVariance", + "name": "tickBudgetMs", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -39760,179 +44751,55 @@ "extendsTokenRanges": [] }, { - "kind": "TypeAlias", - "canonicalReference": "server!ParticleEmitterOrientation:type", - "docComment": "/**\n * The orientation mode for particles.\n *\n * **Category:** Particles\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export type ParticleEmitterOrientation = " - }, - { - "kind": "Content", - "text": "'billboard' | 'billboardY' | 'fixed' | 'velocity'" - }, - { - "kind": "Content", - "text": ";" - } - ], - "fileUrlPath": "src/worlds/particles/ParticleEmitter.ts", - "releaseTag": "Public", - "name": "ParticleEmitterOrientation", - "typeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } - }, - { - "kind": "TypeAlias", - "canonicalReference": "server!PathfindAbortCallback:type", - "docComment": "/**\n * Callback invoked when pathfinding aborts.\n *\n * **Category:** Controllers\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export type PathfindAbortCallback = " - }, - { - "kind": "Content", - "text": "() => void" - }, - { - "kind": "Content", - "text": ";" - } - ], - "fileUrlPath": "src/worlds/entities/controllers/PathfindingEntityController.ts", - "releaseTag": "Public", - "name": "PathfindAbortCallback", - "typeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } - }, - { - "kind": "TypeAlias", - "canonicalReference": "server!PathfindCompleteCallback:type", - "docComment": "/**\n * Callback invoked when pathfinding completes and the entity reaches the target.\n *\n * **Category:** Controllers\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export type PathfindCompleteCallback = " - }, - { - "kind": "Content", - "text": "() => void" - }, - { - "kind": "Content", - "text": ";" - } - ], - "fileUrlPath": "src/worlds/entities/controllers/PathfindingEntityController.ts", - "releaseTag": "Public", - "name": "PathfindCompleteCallback", - "typeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } - }, - { - "kind": "Class", - "canonicalReference": "server!PathfindingEntityController:class", - "docComment": "/**\n * A pathfinding entity controller built on top of `SimpleEntityController`.\n *\n * When to use: obstacle-aware movement to a target coordinate. Do NOT use for: per-tick recalculation; pathfinding is synchronous and can be expensive.\n *\n * @remarks\n *\n * Implements A* pathfinding. Call `PathfindingEntityController.pathfind` sparingly; it is intended to be called once per destination in most cases.\n *\n *

Coordinate System & Model Orientation

\n *\n * HYTOPIA uses **-Z as forward**. Models must be authored with their front facing -Z. The controller automatically calls `face()` to orient the entity's -Z axis toward each waypoint.\n *\n * **Category:** Controllers\n *\n * @public\n */\n", + "kind": "Interface", + "canonicalReference": "server!PerformanceSnapshot:interface", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "export default class PathfindingEntityController extends " - }, - { - "kind": "Reference", - "text": "SimpleEntityController", - "canonicalReference": "server!SimpleEntityController:class" - }, - { - "kind": "Content", - "text": " " + "text": "export interface PerformanceSnapshot " } ], - "fileUrlPath": "src/worlds/entities/controllers/PathfindingEntityController.ts", + "fileUrlPath": "src/metrics/PerformanceMonitor.ts", "releaseTag": "Public", - "isAbstract": false, - "name": "PathfindingEntityController", + "name": "PerformanceSnapshot", "preserveMemberOrder": false, "members": [ { - "kind": "Constructor", - "canonicalReference": "server!PathfindingEntityController:constructor(1)", - "docComment": "/**\n * Constructs a new instance of the `PathfindingEntityController` class\n *\n * @param options - Options for the controller.\n *\n * **Category:** Controllers\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "constructor(options?: " - }, - { - "kind": "Reference", - "text": "PathfindingEntityControllerOptions", - "canonicalReference": "server!~PathfindingEntityControllerOptions:interface" - }, - { - "kind": "Content", - "text": ");" - } - ], - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "options", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": true - } - ] - }, - { - "kind": "Property", - "canonicalReference": "server!PathfindingEntityController#debug:member", - "docComment": "/**\n * Whether to enable debug mode.\n *\n * @remarks\n *\n * When enabled, pathfinding logs debug information to the console.\n *\n * **Category:** Controllers\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!PerformanceSnapshot#avgTickMs:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "get debug(): " + "text": "avgTickMs: " }, { "kind": "Content", - "text": "boolean" + "text": "number" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, + "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "debug", + "name": "avgTickMs", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + } }, { - "kind": "Property", - "canonicalReference": "server!PathfindingEntityController#maxFall:member", - "docComment": "/**\n * The maximum fall distance the entity can fall.\n *\n * **Category:** Controllers\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!PerformanceSnapshot#budgetMs:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "get maxFall(): " + "text": "budgetMs: " }, { "kind": "Content", @@ -39943,26 +44810,23 @@ "text": ";" } ], - "isReadonly": true, + "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "maxFall", + "name": "budgetMs", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + } }, { - "kind": "Property", - "canonicalReference": "server!PathfindingEntityController#maxJump:member", - "docComment": "/**\n * The maximum jump distance the entity can jump.\n *\n * **Category:** Controllers\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!PerformanceSnapshot#maxTickMs:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "get maxJump(): " + "text": "maxTickMs: " }, { "kind": "Content", @@ -39973,138 +44837,91 @@ "text": ";" } ], - "isReadonly": true, + "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "maxJump", + "name": "maxTickMs", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + } }, { - "kind": "Property", - "canonicalReference": "server!PathfindingEntityController#maxOpenSetIterations:member", - "docComment": "/**\n * The maximum open set iterations before aborting pathfinding.\n *\n * **Category:** Controllers\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!PerformanceSnapshot#memory:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "get maxOpenSetIterations(): " + "text": "memory: " }, { "kind": "Content", - "text": "number" + "text": "{\n heapUsedMb: number;\n heapTotalMb: number;\n rssMb: number;\n }" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, + "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "maxOpenSetIterations", + "name": "memory", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + } }, { - "kind": "Method", - "canonicalReference": "server!PathfindingEntityController#pathfind:member(1)", - "docComment": "/**\n * Calculates a path and moves to the target if a path is found.\n *\n * Use for: one-shot navigation to a destination. Do NOT use for: high-frequency replanning; it is synchronous.\n *\n * @remarks\n *\n * **Synchronous return:** Path calculation happens synchronously. Returns `true` if a path was found, `false` if no path exists or calculation was aborted.\n *\n * **Auto-starts movement:** If a path is found, movement begins immediately using the inherited `move()`, `face()`, and `jump()` methods from `SimpleEntityController`.\n *\n * **Auto-facing (-Z forward):** Automatically calls `face()` for each waypoint, orienting the entity's -Z axis toward the next waypoint. Models must be authored with their front facing -Z.\n *\n * **A* algorithm:** Uses A* pathfinding with configurable `maxJump`, `maxFall`, and `verticalPenalty`. Path calculation is capped by `maxOpenSetIterations` (default 200) to prevent blocking.\n *\n * **Waypoint progression:** Entity moves through calculated waypoints sequentially. Each waypoint has a timeout (`waypointTimeoutMs`) after which it's skipped if not reached.\n *\n * @param target - The target coordinate to pathfind to.\n *\n * @param speed - The speed of the entity (blocks per second).\n *\n * @param options - The pathfinding options.\n *\n * @returns True if a path was found, false otherwise.\n *\n * **Requires:** The controller must be attached to a spawned entity in a world.\n *\n * **Side effects:** Starts movement and facing if a path is found.\n *\n * **Category:** Controllers\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!PerformanceSnapshot#operations:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "pathfind(target: " + "text": "operations: " }, { "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" - }, - { - "kind": "Content", - "text": ", speed: " - }, - { - "kind": "Content", - "text": "number" + "text": "Record", + "canonicalReference": "!Record:type" }, { "kind": "Content", - "text": ", options?: " + "text": "" }, { "kind": "Content", "text": ";" } ], - "isStatic": false, - "returnTypeTokenRange": { - "startIndex": 7, - "endIndex": 8 - }, - "releaseTag": "Public", - "isProtected": false, - "overloadIndex": 1, - "parameters": [ - { - "parameterName": "target", - "parameterTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "isOptional": false - }, - { - "parameterName": "speed", - "parameterTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 - }, - "isOptional": false - }, - { - "parameterName": "options", - "parameterTypeTokenRange": { - "startIndex": 5, - "endIndex": 6 - }, - "isOptional": true - } - ], + "isReadonly": false, "isOptional": false, - "isAbstract": false, - "name": "pathfind" + "releaseTag": "Public", + "name": "operations", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 5 + } }, { - "kind": "Property", - "canonicalReference": "server!PathfindingEntityController#speed:member", - "docComment": "/**\n * The speed used for path movement.\n *\n * **Category:** Controllers\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!PerformanceSnapshot#p95TickMs:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "get speed(): " + "text": "p95TickMs: " }, { "kind": "Content", @@ -40115,61 +44932,50 @@ "text": ";" } ], - "isReadonly": true, + "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "speed", + "name": "p95TickMs", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + } }, { - "kind": "Property", - "canonicalReference": "server!PathfindingEntityController#target:member", - "docComment": "/**\n * The target coordinate being pathfound to.\n *\n * **Category:** Controllers\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!PerformanceSnapshot#p99TickMs:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "get target(): " - }, - { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "text": "p99TickMs: " }, { "kind": "Content", - "text": " | undefined" + "text": "number" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, + "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "target", + "name": "p99TickMs", "propertyTypeTokenRange": { "startIndex": 1, - "endIndex": 3 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "endIndex": 2 + } }, { - "kind": "Property", - "canonicalReference": "server!PathfindingEntityController#verticalPenalty:member", - "docComment": "/**\n * The vertical penalty used during pathfinding.\n *\n * **Category:** Controllers\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!PerformanceSnapshot#tickRate:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "get verticalPenalty(): " + "text": "tickRate: " }, { "kind": "Content", @@ -40180,26 +44986,23 @@ "text": ";" } ], - "isReadonly": true, + "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "verticalPenalty", + "name": "tickRate", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + } }, { - "kind": "Property", - "canonicalReference": "server!PathfindingEntityController#waypointNextIndex:member", - "docComment": "/**\n * The index of the next waypoint being approached.\n *\n * **Category:** Controllers\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!PerformanceSnapshot#ticksOverBudget:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "get waypointNextIndex(): " + "text": "ticksOverBudget: " }, { "kind": "Content", @@ -40210,61 +45013,50 @@ "text": ";" } ], - "isReadonly": true, + "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "waypointNextIndex", + "name": "ticksOverBudget", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + } }, { - "kind": "Property", - "canonicalReference": "server!PathfindingEntityController#waypoints:member", - "docComment": "/**\n * The current waypoints being followed.\n *\n * **Category:** Controllers\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!PerformanceSnapshot#totalTicks:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "get waypoints(): " - }, - { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "text": "totalTicks: " }, { "kind": "Content", - "text": "[]" + "text": "number" }, { "kind": "Content", "text": ";" } ], - "isReadonly": true, + "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "waypoints", + "name": "totalTicks", "propertyTypeTokenRange": { "startIndex": 1, - "endIndex": 3 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false + "endIndex": 2 + } }, { - "kind": "Property", - "canonicalReference": "server!PathfindingEntityController#waypointTimeoutMs:member", - "docComment": "/**\n * The timeout in milliseconds for a waypoint to be considered reached.\n *\n * **Category:** Controllers\n */\n", + "kind": "PropertySignature", + "canonicalReference": "server!PerformanceSnapshot#uptimeMs:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "get waypointTimeoutMs(): " + "text": "uptimeMs: " }, { "kind": "Content", @@ -40275,86 +45067,17 @@ "text": ";" } ], - "isReadonly": true, + "isReadonly": false, "isOptional": false, "releaseTag": "Public", - "name": "waypointTimeoutMs", + "name": "uptimeMs", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 - }, - "isStatic": false, - "isProtected": false, - "isAbstract": false - } - ], - "extendsTokenRange": { - "startIndex": 1, - "endIndex": 2 - }, - "implementsTokenRanges": [] - }, - { - "kind": "TypeAlias", - "canonicalReference": "server!PathfindingOptions:type", - "docComment": "/**\n * Options for `PathfindingEntityController.pathfind`.\n *\n * Use for: configuring a single pathfinding request. Do NOT use for: per-tick recalculation; call `pathfind` sparingly.\n *\n * **Category:** Controllers\n *\n * @public\n */\n", - "excerptTokens": [ - { - "kind": "Content", - "text": "export type PathfindingOptions = " - }, - { - "kind": "Content", - "text": "{\n debug?: boolean;\n maxFall?: number;\n maxJump?: number;\n maxOpenSetIterations?: number;\n pathfindAbortCallback?: " - }, - { - "kind": "Reference", - "text": "PathfindAbortCallback", - "canonicalReference": "server!PathfindAbortCallback:type" - }, - { - "kind": "Content", - "text": ";\n pathfindCompleteCallback?: " - }, - { - "kind": "Reference", - "text": "PathfindCompleteCallback", - "canonicalReference": "server!PathfindCompleteCallback:type" - }, - { - "kind": "Content", - "text": ";\n verticalPenalty?: number;\n waypointMoveCompleteCallback?: " - }, - { - "kind": "Reference", - "text": "WaypointMoveCompleteCallback", - "canonicalReference": "server!WaypointMoveCompleteCallback:type" - }, - { - "kind": "Content", - "text": ";\n waypointMoveSkippedCallback?: " - }, - { - "kind": "Reference", - "text": "WaypointMoveSkippedCallback", - "canonicalReference": "server!WaypointMoveSkippedCallback:type" - }, - { - "kind": "Content", - "text": ";\n waypointStoppingDistance?: number;\n waypointTimeoutMs?: number;\n}" - }, - { - "kind": "Content", - "text": ";" + } } ], - "fileUrlPath": "src/worlds/entities/controllers/PathfindingEntityController.ts", - "releaseTag": "Public", - "name": "PathfindingOptions", - "typeTokenRange": { - "startIndex": 1, - "endIndex": 10 - } + "extendsTokenRanges": [] }, { "kind": "Class", @@ -48453,6 +53176,287 @@ ], "extendsTokenRanges": [] }, + { + "kind": "Class", + "canonicalReference": "server!RandomWalkBehavior:class", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "export default class RandomWalkBehavior implements " + }, + { + "kind": "Reference", + "text": "BotBehavior", + "canonicalReference": "server!BotBehavior:interface" + }, + { + "kind": "Content", + "text": " " + } + ], + "fileUrlPath": "src/bots/behaviors/RandomWalkBehavior.ts", + "releaseTag": "Public", + "isAbstract": false, + "name": "RandomWalkBehavior", + "preserveMemberOrder": false, + "members": [ + { + "kind": "Constructor", + "canonicalReference": "server!RandomWalkBehavior:constructor(1)", + "docComment": "/**\n * Constructs a new instance of the `RandomWalkBehavior` class\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "constructor(options?: " + }, + { + "kind": "Reference", + "text": "RandomWalkOptions", + "canonicalReference": "server!RandomWalkOptions:interface" + }, + { + "kind": "Content", + "text": ");" + } + ], + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "options", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": true + } + ] + }, + { + "kind": "Property", + "canonicalReference": "server!RandomWalkBehavior#name:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "readonly name = " + }, + { + "kind": "Content", + "text": "\"random_walk\"" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": true, + "isOptional": false, + "releaseTag": "Public", + "name": "name", + "propertyTypeTokenRange": { + "startIndex": 0, + "endIndex": 0 + }, + "initializerTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isStatic": false, + "isProtected": false, + "isAbstract": false + }, + { + "kind": "Method", + "canonicalReference": "server!RandomWalkBehavior#tick:member(1)", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "tick(bot: " + }, + { + "kind": "Reference", + "text": "BotPlayer", + "canonicalReference": "server!BotPlayer:class" + }, + { + "kind": "Content", + "text": ", _world: " + }, + { + "kind": "Reference", + "text": "World", + "canonicalReference": "server!World:class" + }, + { + "kind": "Content", + "text": ", deltaTimeMs: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Content", + "text": "void" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 7, + "endIndex": 8 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "bot", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + }, + { + "parameterName": "_world", + "parameterTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "isOptional": false + }, + { + "parameterName": "deltaTimeMs", + "parameterTypeTokenRange": { + "startIndex": 5, + "endIndex": 6 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "tick" + } + ], + "implementsTokenRanges": [ + { + "startIndex": 1, + "endIndex": 2 + } + ] + }, + { + "kind": "Interface", + "canonicalReference": "server!RandomWalkOptions:interface", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "export interface RandomWalkOptions " + } + ], + "fileUrlPath": "src/bots/behaviors/RandomWalkBehavior.ts", + "releaseTag": "Public", + "name": "RandomWalkOptions", + "preserveMemberOrder": false, + "members": [ + { + "kind": "PropertySignature", + "canonicalReference": "server!RandomWalkOptions#changeDirectionIntervalMs:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "changeDirectionIntervalMs?: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "changeDirectionIntervalMs", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!RandomWalkOptions#moveRadius:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "moveRadius?: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "moveRadius", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!RandomWalkOptions#moveSpeed:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "moveSpeed?: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "moveSpeed", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + } + ], + "extendsTokenRanges": [] + }, { "kind": "TypeAlias", "canonicalReference": "server!RawCollider:type", @@ -56178,6 +61182,245 @@ "endIndex": 6 } }, + { + "kind": "Interface", + "canonicalReference": "server!TickReport:interface", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "export interface TickReport " + } + ], + "fileUrlPath": "src/metrics/PerformanceMonitor.ts", + "releaseTag": "Public", + "name": "TickReport", + "preserveMemberOrder": false, + "members": [ + { + "kind": "PropertySignature", + "canonicalReference": "server!TickReport#budgetMs:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "budgetMs: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": false, + "releaseTag": "Public", + "name": "budgetMs", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!TickReport#budgetPercent:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "budgetPercent: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": false, + "releaseTag": "Public", + "name": "budgetPercent", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!TickReport#durationMs:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "durationMs: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": false, + "releaseTag": "Public", + "name": "durationMs", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!TickReport#entityCount:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "entityCount: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": false, + "releaseTag": "Public", + "name": "entityCount", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!TickReport#heapUsedMb:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "heapUsedMb: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": false, + "releaseTag": "Public", + "name": "heapUsedMb", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!TickReport#phases:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "phases: " + }, + { + "kind": "Reference", + "text": "Record", + "canonicalReference": "!Record:type" + }, + { + "kind": "Content", + "text": "" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": false, + "releaseTag": "Public", + "name": "phases", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 3 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!TickReport#playerCount:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "playerCount: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": false, + "releaseTag": "Public", + "name": "playerCount", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!TickReport#tick:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "tick: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": false, + "releaseTag": "Public", + "name": "tick", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + } + ], + "extendsTokenRanges": [] + }, { "kind": "Interface", "canonicalReference": "server!TrimeshColliderOptions:interface", diff --git a/sdk/server.d.ts b/sdk/server.d.ts index a0edb5c0..e0650e9e 100644 --- a/sdk/server.d.ts +++ b/sdk/server.d.ts @@ -1461,6 +1461,50 @@ export declare interface BlockTypeRegistryEventPayloads { }; } +export declare interface BotBehavior { + name: string; + tick(bot: BotPlayer, world: World, deltaTimeMs: number): void; +} + +export declare class BotManager { + private static _instance; + static get instance(): BotManager; + private _bots; + get botCount(): number; + spawnBot(world: World, options?: BotPlayerOptions): BotPlayer; + spawnBots(world: World, count: number, options?: BotPlayerOptions): BotPlayer[]; + getBot(id: number): BotPlayer | undefined; + getAllBots(): BotPlayer[]; + despawnBot(id: number): void; + despawnAll(): void; +} + +export declare class BotPlayer { + readonly id: number; + readonly entity: Entity; + readonly name: string; + private _behavior; + private _world; + private _spawned; + constructor(world: World, options?: BotPlayerOptions); + get isSpawned(): boolean; + get world(): World; + get controller(): SimpleEntityController; + setBehavior(behavior: BotBehavior): void; + spawn(position?: Vector3Like): void; + teleport(position: Vector3Like): void; + despawn(): void; +} + +export declare interface BotPlayerOptions { + name?: string; + behavior?: BotBehavior; + spawnPosition?: Vector3Like; + modelUri?: string; + modelScale?: number; + rigidBodyType?: RigidBodyType; +} + /** * The options for a capsule collider. @public * @@ -1485,6 +1529,22 @@ export declare interface CapsuleColliderOptions extends BaseColliderOptions { radius?: number; } +export declare class ChaseBehavior implements BotBehavior { + readonly name = "chase"; + private _chaseSpeed; + private _detectionRadius; + private _updateIntervalMs; + private _elapsed; + constructor(options?: ChaseBehaviorOptions); + tick(bot: BotPlayer, world: World, deltaTimeMs: number): void; +} + +export declare interface ChaseBehaviorOptions { + chaseSpeed?: number; + detectionRadius?: number; + updateIntervalMs?: number; +} + /** * Event types a ChatManager instance can emit. * @@ -2647,6 +2707,11 @@ export declare type ContactManifold = { normal: Vector3Like; }; +export declare class CpuProfiler { + static captureProfile(durationMs: number, outputPath?: string): Promise; + static captureHeapSnapshot(outputPath?: string): Promise; +} + /** * The options for a cylinder collider. @public * @@ -5115,6 +5180,32 @@ export declare interface GameServerEventPayloads { }; } +export declare class IdleBehavior implements BotBehavior { + readonly name = "idle"; + tick(_bot: BotPlayer, _world: World, _deltaTimeMs: number): void; +} + +export declare class InteractBehavior implements BotBehavior { + readonly name = "interact"; + private _interactRadius; + private _actionIntervalMs; + private _moveSpeed; + private _elapsed; + private _moveElapsed; + private _originX; + private _originZ; + private _originSet; + constructor(options?: InteractBehaviorOptions); + tick(bot: BotPlayer, world: World, deltaTimeMs: number): void; + private _moveToRandom; +} + +export declare interface InteractBehaviorOptions { + interactRadius?: number; + actionIntervalMs?: number; + moveSpeed?: number; +} + /** * An intersection result. * @@ -6121,6 +6212,16 @@ export declare type ModelTrimesh = { indices: Uint32Array; }; +export declare function Monitor(operationName?: string): (target: any, propertyKey: string, descriptor: PropertyDescriptor) => PropertyDescriptor; + +export declare function monitorAsyncBlock(name: string, fn: () => Promise): Promise; + +export declare function monitorBlock(name: string, fn: () => T): T; + +export declare function MonitorClass(prefix?: string): (constructor: T) => T; + /** * Callback invoked as the entity moves toward a target coordinate. * @@ -6170,6 +6271,49 @@ export declare type MoveOptions = { moveCompletesWhenStuck?: boolean; }; +export declare class NetworkMetrics { + private static _instance; + static get instance(): NetworkMetrics; + private _enabled; + private _bytesSentTotal; + private _bytesReceivedTotal; + private _packetsSentTotal; + private _packetsReceivedTotal; + private _compressionCount; + private _serializationTotalMs; + private _serializationCount; + private _lastSnapshotTime; + private _lastBytesSent; + private _lastBytesReceived; + private _lastPacketsSent; + private _lastPacketsReceived; + private _connectedPlayers; + get isEnabled(): boolean; + enable(): void; + disable(): void; + setConnectedPlayers(count: number): void; + recordBytesSent(bytes: number): void; + recordBytesReceived(bytes: number): void; + recordPacketSent(): void; + recordPacketReceived(): void; + recordSerialization(durationMs: number): void; + recordCompression(): void; + getSnapshot(): NetworkMetricsSnapshot; + private _reset; +} + +export declare interface NetworkMetricsSnapshot { + connectedPlayers: number; + bytesSentTotal: number; + bytesReceivedTotal: number; + bytesSentPerSecond: number; + bytesReceivedPerSecond: number; + packetsSentPerSecond: number; + packetsReceivedPerSecond: number; + avgSerializationMs: number; + compressionCount: number; +} + /** * The options for an error type "none" collider. @public * @@ -6182,6 +6326,18 @@ export declare interface NoneColliderOptions extends BaseColliderOptions { shape: ColliderShape.NONE; } +export declare interface OperationStats { + count: number; + totalMs: number; + avgMs: number; + minMs: number; + maxMs: number; + lastMs: number; + p50Ms: number; + p95Ms: number; + p99Ms: number; +} + /** * The options for rendering an outline. * @@ -7184,6 +7340,90 @@ export declare type PathfindingOptions = { waypointTimeoutMs?: number; }; +export declare class PerformanceMonitor extends EventRouter { + private static _instance; + static get instance(): PerformanceMonitor; + private _enabled; + private _entityProfilingEnabled; + private _spikeThresholdMs; + private _tickBudgetMs; + private _snapshotIntervalMs; + private _startTime; + private _operations; + private _tickDurations; + private _tickIndex; + private _tickCount; + private _ticksOverBudget; + private _maxTickMs; + private _totalTicks; + private _currentTick; + private _currentTickStart; + private _currentPhases; + private _currentEntityCount; + private _currentPlayerCount; + private _entityCosts; + private _snapshotTimer; + private constructor(); + get isEnabled(): boolean; + get isEntityProfilingEnabled(): boolean; + enable(options?: PerformanceMonitorOptions): void; + disable(): void; + enableEntityProfiling(enabled: boolean): void; + measure(name: string, fn: () => T): T; + measureAsync(name: string, fn: () => Promise): Promise; + startTiming(name: string): () => void; + beginTick(tick: number, entityCount: number, playerCount: number): void; + recordPhase(phaseName: string, durationMs: number): void; + endTick(): void; + recordEntityCost(entityId: number, name: string, tickMs: number): void; + getEntityCosts(): Map; + getSnapshot(): PerformanceSnapshot; + resetStats(): void; + private _recordOperation; + private _getTickSamples; + private _getOperationStats; +} + +export declare enum PerformanceMonitorEvent { + TICK_REPORT = "PERFORMANCE_MONITOR.TICK_REPORT", + SPIKE_DETECTED = "PERFORMANCE_MONITOR.SPIKE_DETECTED", + SNAPSHOT = "PERFORMANCE_MONITOR.SNAPSHOT" +} + +export declare interface PerformanceMonitorEventPayloads { + [PerformanceMonitorEvent.TICK_REPORT]: TickReport; + [PerformanceMonitorEvent.SPIKE_DETECTED]: TickReport; + [PerformanceMonitorEvent.SNAPSHOT]: PerformanceSnapshot; +} + +export declare interface PerformanceMonitorOptions { + spikeThresholdMs?: number; + tickBudgetMs?: number; + snapshotIntervalMs?: number; + historySize?: number; +} + +export declare interface PerformanceSnapshot { + uptimeMs: number; + tickRate: number; + avgTickMs: number; + maxTickMs: number; + p95TickMs: number; + p99TickMs: number; + ticksOverBudget: number; + totalTicks: number; + budgetMs: number; + operations: Record; + memory: { + heapUsedMb: number; + heapTotalMb: number; + rssMb: number; + }; +} + /** * Manages persistence of player and global data. * @@ -8825,6 +9065,26 @@ export declare interface QuaternionLike { w: number; } +export declare class RandomWalkBehavior implements BotBehavior { + readonly name = "random_walk"; + private _moveRadius; + private _moveSpeed; + private _changeIntervalMs; + private _elapsed; + private _originX; + private _originZ; + private _originSet; + constructor(options?: RandomWalkOptions); + tick(bot: BotPlayer, _world: World, deltaTimeMs: number): void; + private _pickNewTarget; +} + +export declare interface RandomWalkOptions { + moveRadius?: number; + moveSpeed?: number; + changeDirectionIntervalMs?: number; +} + /** * A raw collider object from the Rapier physics engine. @public * @@ -10492,6 +10752,17 @@ export declare type TelemetrySpanOptions = { attributes?: Record; }; +export declare interface TickReport { + tick: number; + durationMs: number; + budgetMs: number; + budgetPercent: number; + phases: Record; + entityCount: number; + playerCount: number; + heapUsedMb: number; +} + /** * The options for a trimesh collider. @public * diff --git a/sdk/server.mjs b/sdk/server.mjs index 86a41077..ffa7e7ec 100644 --- a/sdk/server.mjs +++ b/sdk/server.mjs @@ -1,97 +1,97 @@ -import{createRequire as AkQ}from"node:module";var aSQ=Object.create;var{getPrototypeOf:oSQ,defineProperty:Tk,getOwnPropertyNames:tSQ}=Object;var eSQ=Object.prototype.hasOwnProperty;var qA=(A,Q,B)=>{B=A!=null?aSQ(oSQ(A)):{};let Y=Q||!A||!A.__esModule?Tk(B,"default",{value:A,enumerable:!0}):B;for(let J of tSQ(A))if(!eSQ.call(Y,J))Tk(Y,J,{get:()=>A[J],enumerable:!0});return Y};var R=(A,Q)=>()=>(Q||A((Q={exports:{}}).exports,Q),Q.exports);var x6=(A,Q)=>{for(var B in Q)Tk(A,B,{get:Q[B],enumerable:!0,configurable:!0,set:(Y)=>Q[B]=()=>Y})};var u=AkQ(import.meta.url);var go=R((No0,Sk)=>{var QkQ=Object.prototype.hasOwnProperty,xJ="~";function jV(){}if(Object.create){if(jV.prototype=Object.create(null),!new jV().__proto__)xJ=!1}function BkQ(A,Q,B){this.fn=A,this.context=Q,this.once=B||!1}function yo(A,Q,B,Y,J){if(typeof B!=="function")throw TypeError("The listener must be a function");var C=new BkQ(B,Y||A,J),X=xJ?xJ+Q:Q;if(!A._events[X])A._events[X]=C,A._eventsCount++;else if(!A._events[X].fn)A._events[X].push(C);else A._events[X]=[A._events[X],C];return A}function CM(A,Q){if(--A._eventsCount===0)A._events=new jV;else delete A._events[Q]}function UJ(){this._events=new jV,this._eventsCount=0}UJ.prototype.eventNames=function(){var Q=[],B,Y;if(this._eventsCount===0)return Q;for(Y in B=this._events)if(QkQ.call(B,Y))Q.push(xJ?Y.slice(1):Y);if(Object.getOwnPropertySymbols)return Q.concat(Object.getOwnPropertySymbols(B));return Q};UJ.prototype.listeners=function(Q){var B=xJ?xJ+Q:Q,Y=this._events[B];if(!Y)return[];if(Y.fn)return[Y.fn];for(var J=0,C=Y.length,X=Array(C);J{Dt.exports=Ht;Ht.sync=Y_Q;var Vt=u("fs");function B_Q(A,Q){var B=Q.pathExt!==void 0?Q.pathExt:process.env.PATHEXT;if(!B)return!0;if(B=B.split(";"),B.indexOf("")!==-1)return!0;for(var Y=0;Y{zt.exports=qt;qt.sync=J_Q;var Lt=u("fs");function qt(A,Q,B){Lt.stat(A,function(Y,J){B(Y,Y?!1:Mt(J,Q))})}function J_Q(A,Q){return Mt(Lt.statSync(A),Q)}function Mt(A,Q){return A.isFile()&&C_Q(A,Q)}function C_Q(A,Q){var{mode:B,uid:Y,gid:J}=A,C=Q.uid!==void 0?Q.uid:process.getuid&&process.getuid(),X=Q.gid!==void 0?Q.gid:process.getgid&&process.getgid(),G=parseInt("100",8),F=parseInt("010",8),W=parseInt("001",8),Z=G|F,U=B&W||B&F&&J===X||B&G&&Y===C||B&Z&&C===0;return U}});var jt=R((ze0,wt)=>{var Me0=u("fs"),DM;if(process.platform==="win32"||global.TESTING_WINDOWS)DM=Nt();else DM=Rt();wt.exports=lk;lk.sync=X_Q;function lk(A,Q,B){if(typeof Q==="function")B=Q,Q={};if(!B){if(typeof Promise!=="function")throw TypeError("callback not provided");return new Promise(function(Y,J){lk(A,Q||{},function(C,X){if(C)J(C);else Y(X)})})}DM(A,Q||{},function(Y,J){if(Y){if(Y.code==="EACCES"||Q&&Q.ignoreErrors)Y=null,J=!1}B(Y,J)})}function X_Q(A,Q){try{return DM.sync(A,Q||{})}catch(B){if(Q&&Q.ignoreErrors||B.code==="EACCES")return!1;else throw B}}});var vt=R((Re0,_t)=>{var $4=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",Ot=u("path"),G_Q=$4?";":":",Pt=jt(),Tt=(A)=>Object.assign(Error(`not found: ${A}`),{code:"ENOENT"}),St=(A,Q)=>{let B=Q.colon||G_Q,Y=A.match(/\//)||$4&&A.match(/\\/)?[""]:[...$4?[process.cwd()]:[],...(Q.path||process.env.PATH||"").split(B)],J=$4?Q.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",C=$4?J.split(B):[""];if($4){if(A.indexOf(".")!==-1&&C[0]!=="")C.unshift("")}return{pathEnv:Y,pathExt:C,pathExtExe:J}},kt=(A,Q,B)=>{if(typeof Q==="function")B=Q,Q={};if(!Q)Q={};let{pathEnv:Y,pathExt:J,pathExtExe:C}=St(A,Q),X=[],G=(W)=>new Promise((Z,U)=>{if(W===Y.length)return Q.all&&X.length?Z(X):U(Tt(A));let $=Y[W],E=/^".*"$/.test($)?$.slice(1,-1):$,K=Ot.join(E,A),I=!E&&/^\.[\\\/]/.test(A)?A.slice(0,2)+K:K;Z(F(I,W,0))}),F=(W,Z,U)=>new Promise(($,E)=>{if(U===J.length)return $(G(Z+1));let K=J[U];Pt(W+K,{pathExt:C},(I,V)=>{if(!I&&V)if(Q.all)X.push(W+K);else return $(W+K);return $(F(W,Z,U+1))})});return B?G(0).then((W)=>B(null,W),B):G(0)},F_Q=(A,Q)=>{Q=Q||{};let{pathEnv:B,pathExt:Y,pathExtExe:J}=St(A,Q),C=[];for(let X=0;X{var yt=(A={})=>{let Q=A.env||process.env;if((A.platform||process.platform)!=="win32")return"PATH";return Object.keys(Q).reverse().find((Y)=>Y.toUpperCase()==="PATH")||"Path"};pk.exports=yt;pk.exports.default=yt});var bt=R((je0,ft)=>{var ht=u("path"),W_Q=vt(),Z_Q=gt();function xt(A,Q){let B=A.options.env||process.env,Y=process.cwd(),J=A.options.cwd!=null,C=J&&process.chdir!==void 0&&!process.chdir.disabled;if(C)try{process.chdir(A.options.cwd)}catch(G){}let X;try{X=W_Q.sync(A.command,{path:B[Z_Q({env:B})],pathExt:Q?ht.delimiter:void 0})}catch(G){}finally{if(C)process.chdir(Y)}if(X)X=ht.resolve(J?A.options.cwd:"",X);return X}function $_Q(A){return xt(A)||xt(A,!0)}ft.exports=$_Q});var mt=R((K_Q,nk)=>{var ik=/([()\][%!^"`<>&|;, *?])/g;function U_Q(A){return A=A.replace(ik,"^$1"),A}function E_Q(A,Q){if(A=`${A}`,A=A.replace(/(?=(\\+?)?)\1"/g,"$1$1\\\""),A=A.replace(/(?=(\\+?)?)\1$/,"$1$1"),A=`"${A}"`,A=A.replace(ik,"^$1"),Q)A=A.replace(ik,"^$1");return A}K_Q.command=U_Q;K_Q.argument=E_Q});var dt=R((Oe0,ut)=>{ut.exports=/^#!(.*)/});var lt=R((Pe0,ct)=>{var H_Q=dt();ct.exports=(A="")=>{let Q=A.match(H_Q);if(!Q)return null;let[B,Y]=Q[0].replace(/#! ?/,"").split(" "),J=B.split("/").pop();if(J==="env")return Y;return Y?`${J} ${Y}`:J}});var it=R((Te0,pt)=>{var sk=u("fs"),D_Q=lt();function N_Q(A){let B=Buffer.alloc(150),Y;try{Y=sk.openSync(A,"r"),sk.readSync(Y,B,0,150,0),sk.closeSync(Y)}catch(J){}return D_Q(B.toString())}pt.exports=N_Q});var at=R((Se0,rt)=>{var L_Q=u("path"),nt=bt(),st=mt(),q_Q=it(),M_Q=process.platform==="win32",z_Q=/\.(?:com|exe)$/i,R_Q=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function w_Q(A){A.file=nt(A);let Q=A.file&&q_Q(A.file);if(Q)return A.args.unshift(A.file),A.command=Q,nt(A);return A.file}function j_Q(A){if(!M_Q)return A;let Q=w_Q(A),B=!z_Q.test(Q);if(A.options.forceShell||B){let Y=R_Q.test(Q);A.command=L_Q.normalize(A.command),A.command=st.command(A.command),A.args=A.args.map((C)=>st.argument(C,Y));let J=[A.command].concat(A.args).join(" ");A.args=["/d","/s","/c",`"${J}"`],A.command=process.env.comspec||"cmd.exe",A.options.windowsVerbatimArguments=!0}return A}function O_Q(A,Q,B){if(Q&&!Array.isArray(Q))B=Q,Q=null;Q=Q?Q.slice(0):[],B=Object.assign({},B);let Y={command:A,args:Q,options:B,file:void 0,original:{command:A,args:Q}};return B.shell?Y:j_Q(Y)}rt.exports=O_Q});var et=R((ke0,tt)=>{var rk=process.platform==="win32";function ak(A,Q){return Object.assign(Error(`${Q} ${A.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${Q} ${A.command}`,path:A.command,spawnargs:A.args})}function P_Q(A,Q){if(!rk)return;let B=A.emit;A.emit=function(Y,J){if(Y==="exit"){let C=ot(J,Q);if(C)return B.call(A,"error",C)}return B.apply(A,arguments)}}function ot(A,Q){if(rk&&A===1&&!Q.file)return ak(Q.original,"spawn");return null}function T_Q(A,Q){if(rk&&A===1&&!Q.file)return ak(Q.original,"spawnSync");return null}tt.exports={hookChildProcess:P_Q,verifyENOENT:ot,verifyENOENTSync:T_Q,notFoundError:ak}});var Be=R((_e0,U4)=>{var Ae=u("child_process"),ok=at(),tk=et();function Qe(A,Q,B){let Y=ok(A,Q,B),J=Ae.spawn(Y.command,Y.args,Y.options);return tk.hookChildProcess(J,Y),J}function S_Q(A,Q,B){let Y=ok(A,Q,B),J=Ae.spawnSync(Y.command,Y.args,Y.options);return J.error=J.error||tk.verifyENOENTSync(J.status,Y),J}U4.exports=Qe;U4.exports.spawn=Qe;U4.exports.sync=S_Q;U4.exports._parse=ok;U4.exports._enoent=tk});var Fv=R((x5Y,eBA)=>{eBA.exports=oBA;function oBA(A,Q,B){if(A instanceof RegExp)A=aBA(A,B);if(Q instanceof RegExp)Q=aBA(Q,B);var Y=tBA(A,Q,B);return Y&&{start:Y[0],end:Y[1],pre:B.slice(0,Y[0]),body:B.slice(Y[0]+A.length,Y[1]),post:B.slice(Y[1]+Q.length)}}function aBA(A,Q){var B=Q.match(A);return B?B[0]:null}oBA.range=tBA;function tBA(A,Q,B){var Y,J,C,X,G,F=B.indexOf(A),W=B.indexOf(Q,F+1),Z=F;if(F>=0&&W>0){if(A===Q)return[F,W];Y=[],C=B.length;while(Z>=0&&!G){if(Z==F)Y.push(Z),F=B.indexOf(A,Z+1);else if(Y.length==1)G=[Y.pop(),W];else{if(J=Y.pop(),J=0?F:W}if(Y.length)G=[C,X]}return G}});var G0A=R((f5Y,X0A)=>{var A0A=Fv();X0A.exports=vfQ;var Q0A="\x00SLASH"+Math.random()+"\x00",B0A="\x00OPEN"+Math.random()+"\x00",Zv="\x00CLOSE"+Math.random()+"\x00",Y0A="\x00COMMA"+Math.random()+"\x00",J0A="\x00PERIOD"+Math.random()+"\x00";function Wv(A){return parseInt(A,10)==A?parseInt(A,10):A.charCodeAt(0)}function kfQ(A){return A.split("\\\\").join(Q0A).split("\\{").join(B0A).split("\\}").join(Zv).split("\\,").join(Y0A).split("\\.").join(J0A)}function _fQ(A){return A.split(Q0A).join("\\").split(B0A).join("{").split(Zv).join("}").split(Y0A).join(",").split(J0A).join(".")}function C0A(A){if(!A)return[""];var Q=[],B=A0A("{","}",A);if(!B)return A.split(",");var{pre:Y,body:J,post:C}=B,X=Y.split(",");X[X.length-1]+="{"+J+"}";var G=C0A(C);if(C.length)X[X.length-1]+=G.shift(),X.push.apply(X,G);return Q.push.apply(Q,X),Q}function vfQ(A){if(!A)return[];if(A.substr(0,2)==="{}")A="\\{\\}"+A.substr(2);return lV(kfQ(A),!0).map(_fQ)}function yfQ(A){return"{"+A+"}"}function gfQ(A){return/^-?0\d/.test(A)}function hfQ(A,Q){return A<=Q}function xfQ(A,Q){return A>=Q}function lV(A,Q){var B=[],Y=A0A("{","}",A);if(!Y)return[A];var J=Y.pre,C=Y.post.length?lV(Y.post,!1):[""];if(/\$$/.test(Y.pre))for(var X=0;X=0;if(!Z&&!U){if(Y.post.match(/,.*\}/))return A=Y.pre+"{"+Y.body+Zv+Y.post,lV(A);return[A]}var $;if(Z)$=Y.body.split(/\.\./);else if($=C0A(Y.body),$.length===1){if($=lV($[0],!1).map(yfQ),$.length===1)return C.map(function(_){return Y.pre+$[0]+_})}var E;if(Z){var K=Wv($[0]),I=Wv($[1]),V=Math.max($[0].length,$[1].length),H=$.length==3?Math.abs(Wv($[2])):1,D=hfQ,L=I0){var w=Array(q+1).join("0");if(M<0)N="-"+w+N.slice(1);else N=w+N}}E.push(N)}}else{E=[];for(var P=0;P<$.length;P++)E.push.apply(E,lV($[P],!1))}for(var P=0;P{function TmQ(A,Q,B,C){var J=0,C=C===void 0?{}:C,X=C.loop===void 0?null:C.loop,G=C.palette===void 0?null:C.palette;if(Q<=0||B<=0||Q>65535||B>65535)throw Error("Width/Height invalid.");function F(V){var H=V.length;if(H<2||H>256||H&H-1)throw Error("Invalid code/color length, must be power of 2 and 2 .. 256.");return H}A[J++]=71,A[J++]=73,A[J++]=70,A[J++]=56,A[J++]=57,A[J++]=97;var W=0,Z=0;if(G!==null){var U=F(G);while(U>>=1)++W;if(U=1<=U)throw Error("Background index out of range.");if(Z===0)throw Error("Background index explicitly passed as 0.")}}if(A[J++]=Q&255,A[J++]=Q>>8&255,A[J++]=B&255,A[J++]=B>>8&255,A[J++]=(G!==null?128:0)|W,A[J++]=Z,A[J++]=0,G!==null)for(var $=0,E=G.length;$>16&255,A[J++]=K>>8&255,A[J++]=K&255}if(X!==null){if(X<0||X>65535)throw Error("Loop count invalid.");A[J++]=33,A[J++]=255,A[J++]=11,A[J++]=78,A[J++]=69,A[J++]=84,A[J++]=83,A[J++]=67,A[J++]=65,A[J++]=80,A[J++]=69,A[J++]=50,A[J++]=46,A[J++]=48,A[J++]=3,A[J++]=1,A[J++]=X&255,A[J++]=X>>8&255,A[J++]=0}var I=!1;this.addFrame=function(V,H,D,L,z,M){if(I===!0)--J,I=!1;if(M=M===void 0?{}:M,V<0||H<0||V>65535||H>65535)throw Error("x/y invalid.");if(D<=0||L<=0||D>65535||L>65535)throw Error("Width/Height invalid.");if(z.length>=1)++P;w=1<3)throw Error("Disposal out of range.");var k=!1,T=0;if(M.transparent!==void 0&&M.transparent!==null){if(k=!0,T=M.transparent,T<0||T>=w)throw Error("Transparent color index.")}if(O!==0||k||_!==0)A[J++]=33,A[J++]=249,A[J++]=4,A[J++]=O<<2|(k===!0?1:0),A[J++]=_&255,A[J++]=_>>8&255,A[J++]=T,A[J++]=0;if(A[J++]=44,A[J++]=V&255,A[J++]=V>>8&255,A[J++]=H&255,A[J++]=H>>8&255,A[J++]=D&255,A[J++]=D>>8&255,A[J++]=L&255,A[J++]=L>>8&255,A[J++]=N===!0?128|P-1:0,N===!0)for(var S=0,v=q.length;S>16&255,A[J++]=y>>8&255,A[J++]=y&255}return J=SmQ(A,J,P<2?2:P,z),J},this.end=function(){if(I===!1)A[J++]=59,I=!0;return J},this.getOutputBuffer=function(){return A},this.setOutputBuffer=function(V){A=V},this.getOutputBufferPosition=function(){return J},this.setOutputBufferPosition=function(V){J=V}}function SmQ(A,Q,B,Y){A[Q++]=B;var J=Q++,C=1<=M)if(A[Q++]=U&255,U>>=8,Z-=8,Q===J+256)A[J]=255,J=Q++}function E(M){U|=M<=8)if(A[Q++]=U&255,U>>=8,Z-=8,Q===J+256)A[J]=255,J=Q++;if(F===4096)E(C),F=G+1,W=B+1,I={};else{if(F>=1<>7,X=J&7,G=1<=0))throw Error("Invalid block size");if(H===0)break;Q+=H}}break;case 249:if(A[Q++]!==4||A[Q+4]!==0)throw Error("Invalid graphics extension block.");var D=A[Q++];if(E=A[Q++]|A[Q++]<<8,K=A[Q++],(D&1)===0)K=null;I=D>>2&7,Q++;break;case 254:while(!0){var H=A[Q++];if(!(H>=0))throw Error("Invalid block size");if(H===0)break;Q+=H}break;default:throw Error("Unknown graphic control label: 0x"+A[Q-1].toString(16))}break;case 44:var L=A[Q++]|A[Q++]<<8,z=A[Q++]|A[Q++]<<8,M=A[Q++]|A[Q++]<<8,N=A[Q++]|A[Q++]<<8,q=A[Q++],w=q>>7,P=q>>6&1,_=q&7,O=1<<_+1,k=W,T=Z,S=!1;if(w){var S=!0;k=Q,T=O,Q+=O*3}var v=Q;Q++;while(!0){var H=A[Q++];if(!(H>=0))throw Error("Invalid block size");if(H===0)break;Q+=H}$.push({x:L,y:z,width:M,height:N,has_local_palette:S,palette_offset:k,palette_size:T,data_offset:v,data_length:Q-v,transparent_index:K,interlaced:!!P,delay:E,disposal:I});break;case 59:U=!1;break;default:throw Error("Unknown gif block: 0x"+A[Q-1].toString(16))}this.numFrames=function(){return $.length},this.loopCount=function(){return V},this.frameInfo=function(y){if(y<0||y>=$.length)throw Error("Frame index out of range.");return $[y]},this.decodeAndBlitFrameBGRA=function(y,h){var g=this.frameInfo(y),m=g.width*g.height,i=new Uint8Array(m);UYA(A,g.data_offset,i,m);var{palette_offset:p,transparent_index:l}=g;if(l===null)l=256;var d=g.width,x=B-d,b=d,o=(g.y*B+g.x)*4,GA=((g.y+g.height)*B+g.x)*4,VA=o,EA=x*4;if(g.interlaced===!0)EA+=B*4*7;var UA=8;for(var CA=0,QA=i.length;CA=GA)EA=x*4+B*4*(UA-1),VA=o+(d+x)*(UA<<1),UA>>=1}if(KA===l)VA+=4;else{var HA=A[p+KA*3],DA=A[p+KA*3+1],hA=A[p+KA*3+2];h[VA++]=hA,h[VA++]=DA,h[VA++]=HA,h[VA++]=255}--b}},this.decodeAndBlitFrameRGBA=function(y,h){var g=this.frameInfo(y),m=g.width*g.height,i=new Uint8Array(m);UYA(A,g.data_offset,i,m);var{palette_offset:p,transparent_index:l}=g;if(l===null)l=256;var d=g.width,x=B-d,b=d,o=(g.y*B+g.x)*4,GA=((g.y+g.height)*B+g.x)*4,VA=o,EA=x*4;if(g.interlaced===!0)EA+=B*4*7;var UA=8;for(var CA=0,QA=i.length;CA=GA)EA=x*4+B*4*(UA-1),VA=o+(d+x)*(UA<<1),UA>>=1}if(KA===l)VA+=4;else{var HA=A[p+KA*3],DA=A[p+KA*3+1],hA=A[p+KA*3+2];h[VA++]=HA,h[VA++]=DA,h[VA++]=hA,h[VA++]=255}--b}}}function UYA(A,Q,B,Y){var J=A[Q++],C=1<>=F,Z-=F,V===C){G=X+1,F=J+1,W=(1<C)L=K[L]>>8,++D;var z=L,M=$+D+(H!==V?1:0);if(M>Y){console.log("Warning, gif stream longer than expected.");return}B[$++]=z,$+=D;var N=$;if(H!==V)B[$++]=z;L=H;while(D--)L=K[L],B[--N]=L&255,L>>=8;if(I!==null&&G<4096){if(K[G++]=I<<8|z,G>=W+1&&F<12)++F,W=W<<1|1}I=V}if($!==Y)console.log("Warning, gif stream shorter than expected.");return B}try{_mQ.GifWriter=TmQ,_mQ.GifReader=kmQ}catch(A){}});var xz=R((F1Y,EYA)=>{class WI{constructor(...A){if(A.length===0)throw Error("constructor requires parameters");let Q=A[0];if(Q!==null&&typeof Q==="object")if(Q instanceof WI){let B=Q.bitmap;this.bitmap={width:B.width,height:B.height,data:new Buffer(B.width*B.height*4)},B.data.copy(this.bitmap.data)}else if(Q.width&&Q.height&&Q.data)this.bitmap=Q;else throw Error("unrecognized constructor parameters");else if(typeof Q==="number"&&typeof A[1]==="number"){let B=Q,Y=A[1],J=A[2];if(this.bitmap={width:B,height:Y},Buffer.isBuffer(J))this.bitmap.data=J;else if(this.bitmap.data=new Buffer(B*Y*4),typeof J==="number")this.fillRGBA(J)}else throw Error("unrecognized constructor parameters")}blit(A,Q,B,Y,J,C,X){if(Y+C>this.bitmap.width)throw Error("copy exceeds width of source bitmap");if(Q+C>A.bitmap.width)throw Error("copy exceeds width of target bitmap");if(J+X>this.bitmap.height)throw Error("copy exceeds height of source bitmap");if(B+X>A.bitmap.height)throw new Erro("copy exceeds height of target bitmap");let G=this.bitmap.data,F=A.bitmap.data,W=this.bitmap.width*4,Z=A.bitmap.width*4,U=C*4,$=J*W+Y*4,E=B*Z+Q*4;while(--X>=0)G.copy(F,E,$,$+U),$+=W,E+=Z;return this}fillRGBA(A){let Q=this.bitmap.data,B=this.bitmap.height*4,Y=0;while(Y{let J=Math.round(0.299*A[Y]+0.587*A[Y+1]+0.114*A[Y+2]);A[Y]=J,A[Y+1]=J,A[Y+2]=J}),this}reframe(A,Q,B,Y,J){let C=A<0?0:A,X=Q<0?0:Q,G=B+C>this.bitmap.width?this.bitmap.width-C:B,F=Y+X>this.bitmap.height?this.bitmap.height-X:Y,W=A<0?-A:0,Z=Q<0?-Q:0,U;if(J===void 0){if(C!==A||X!=Q||G!==B||F!==Y)throw new GifError("fillRGBA required for this reframing");U=new WI(B,Y)}else U=new WI(B,Y,J);return this.blit(U,W,Z,C,X,G,F),this.bitmap=U.bitmap,this}scale(A){if(A===1)return;if(!Number.isInteger(A)||A<1)throw Error("the scale must be an integer >= 1");let Q=this.bitmap.width,B=this.bitmap.height,Y=Q*A*4,J=this.bitmap.data,C=new Buffer(B*Y*A),X=0,G,F=0;for(let W=0;W{class ZI{constructor(A,Q,B){this.width=B.width,this.height=B.height,this.loops=B.loops,this.usesTransparency=B.usesTransparency,this.colorScope=B.colorScope,this.frames=Q,this.buffer=A}}ZI.GlobalColorsPreferred=0;ZI.GlobalColorsOnly=1;ZI.LocalColorsOnly=2;class KYA extends Error{constructor(A){super(A);if(A instanceof Error)this.stack="Gif"+A.stack}}vmQ.Gif=ZI;vmQ.GifError=KYA});var YJA=R((Z1Y,BJA)=>{var{defineProperty:mz,getOwnPropertyDescriptor:hmQ,getOwnPropertyNames:xmQ}=Object,fmQ=Object.prototype.hasOwnProperty,bmQ=(A,Q,B)=>(Q in A)?mz(A,Q,{enumerable:!0,configurable:!0,writable:!0,value:B}):A[Q]=B,mmQ=(A)=>mz(A,"__esModule",{value:!0}),R1=(A,Q)=>{for(var B in Q)mz(A,B,{get:Q[B],enumerable:!0})},umQ=(A,Q,B,Y)=>{if(Q&&typeof Q==="object"||typeof Q==="function"){for(let J of xmQ(Q))if(!fmQ.call(A,J)&&(B||J!=="default"))mz(A,J,{get:()=>Q[J],enumerable:!(Y=hmQ(Q,J))||Y.enumerable})}return A},dmQ=((A)=>{return(Q,B)=>{return A&&A.get(Q)||(B=umQ(mmQ({}),Q,1),A&&A.set(Q,B),B)}})(typeof WeakMap<"u"?new WeakMap:0),WA=(A,Q,B)=>{return bmQ(A,typeof Q!=="symbol"?Q+"":Q,B),B},DYA={};R1(DYA,{applyPalette:()=>WuQ,applyPaletteSync:()=>FuQ,buildPalette:()=>GuQ,buildPaletteSync:()=>XuQ,constants:()=>NYA,conversion:()=>RYA,distance:()=>_YA,image:()=>aYA,palette:()=>lYA,quality:()=>eYA,utils:()=>pYA});var NYA={};R1(NYA,{bt709:()=>LYA});var LYA={};R1(LYA,{Y:()=>qYA,x:()=>MYA,y:()=>zYA});var qYA=((A)=>{return A[A.RED=0.2126]="RED",A[A.GREEN=0.7152]="GREEN",A[A.BLUE=0.0722]="BLUE",A[A.WHITE=1]="WHITE",A})(qYA||{}),MYA=((A)=>{return A[A.RED=0.64]="RED",A[A.GREEN=0.3]="GREEN",A[A.BLUE=0.15]="BLUE",A[A.WHITE=0.3127]="WHITE",A})(MYA||{}),zYA=((A)=>{return A[A.RED=0.33]="RED",A[A.GREEN=0.6]="GREEN",A[A.BLUE=0.06]="BLUE",A[A.WHITE=0.329]="WHITE",A})(zYA||{}),RYA={};R1(RYA,{lab2rgb:()=>amQ,lab2xyz:()=>SYA,rgb2hsl:()=>fz,rgb2lab:()=>EI,rgb2xyz:()=>wYA,xyz2lab:()=>TYA,xyz2rgb:()=>kYA});function vv(A){return A>0.04045?((A+0.055)/1.055)**2.4:A/12.92}function wYA(A,Q,B){return A=vv(A/255),Q=vv(Q/255),B=vv(B/255),{x:A*0.4124+Q*0.3576+B*0.1805,y:A*0.2126+Q*0.7152+B*0.0722,z:A*0.0193+Q*0.1192+B*0.9505}}var jYA={};R1(jYA,{degrees2radians:()=>l6,inRange0to255:()=>J8,inRange0to255Rounded:()=>t8,intInRange:()=>cmQ,max3:()=>OYA,min3:()=>PYA,stableSort:()=>fv});function l6(A){return A*(Math.PI/180)}function OYA(A,Q,B){let Y=A;if(YQ)Y=Q;if(Y>B)Y=B;return Y}function cmQ(A,Q,B){if(A>B)A=B;if(A255)A=255;else if(A<0)A=0;return A}function J8(A){if(A>255)A=255;else if(A<0)A=0;return A}function fv(A,Q){let B=typeof A[0],Y;if(B==="number"||B==="string"){let J=Object.create(null);for(let C=0,X=A.length;CQ(C,X)||J[C]-J[X])}else{let J=A.slice(0);Y=A.sort((C,X)=>Q(C,X)||J.indexOf(C)-J.indexOf(X))}return Y}function fz(A,Q,B){let Y=PYA(A,Q,B),J=OYA(A,Q,B),C=J-Y,X=(Y+J)/510,G=0;if(X>0&&X<1)G=C/(X<0.5?J+Y:510-J-Y);let F=0;if(C>0){if(J===A)F=(Q-B)/C;else if(J===Q)F=2+(B-A)/C;else F=4+(A-Q)/C;if(F*=60,F<0)F+=360}return{h:F,s:G,l:X}}var lmQ=0.95047,pmQ=1,imQ=1.08883;function yv(A){return A>0.008856?A**0.3333333333333333:7.787*A+0.13793103448275862}function TYA(A,Q,B){if(A=yv(A/lmQ),Q=yv(Q/pmQ),B=yv(B/imQ),116*Q-16<0)throw Error("xxx");return{L:Math.max(0,116*Q-16),a:500*(A-Q),b:200*(Q-B)}}function EI(A,Q,B){let Y=wYA(A,Q,B);return TYA(Y.x,Y.y,Y.z)}var nmQ=0.95047,smQ=1,rmQ=1.08883;function gv(A){return A>0.206893034?A**3:(A-0.13793103448275862)/7.787}function SYA(A,Q,B){let Y=(A+16)/116,J=Q/500+Y,C=Y-B/200;return{x:nmQ*gv(J),y:smQ*gv(Y),z:rmQ*gv(C)}}function hv(A){return A>0.0031308?1.055*A**0.4166666666666667-0.055:12.92*A}function kYA(A,Q,B){let Y=hv(A*3.2406+Q*-1.5372+B*-0.4986),J=hv(A*-0.9689+Q*1.8758+B*0.0415),C=hv(A*0.0557+Q*-0.204+B*1.057);return{r:t8(Y*255),g:t8(J*255),b:t8(C*255)}}function amQ(A,Q,B){let Y=SYA(A,Q,B);return kYA(Y.x,Y.y,Y.z)}var _YA={};R1(_YA,{AbstractDistanceCalculator:()=>wW,AbstractEuclidean:()=>uz,AbstractManhattan:()=>dz,CIE94GraphicArts:()=>gYA,CIE94Textiles:()=>yYA,CIEDE2000:()=>VC,CMetric:()=>hYA,Euclidean:()=>xYA,EuclideanBT709:()=>fYA,EuclideanBT709NoAlpha:()=>bYA,Manhattan:()=>mYA,ManhattanBT709:()=>dYA,ManhattanNommyde:()=>uYA,PNGQuant:()=>cYA});var wW=class{constructor(){WA(this,"_maxDistance"),WA(this,"_whitePoint"),this._setDefaults(),this.setWhitePoint(255,255,255,255)}setWhitePoint(A,Q,B,Y){this._whitePoint={r:A>0?255/A:0,g:Q>0?255/Q:0,b:B>0?255/B:0,a:Y>0?255/Y:0},this._maxDistance=this.calculateRaw(A,Q,B,Y,0,0,0,0)}calculateNormalized(A,Q){return this.calculateRaw(A.r,A.g,A.b,A.a,Q.r,Q.g,Q.b,Q.a)/this._maxDistance}},vYA=class extends wW{calculateRaw(A,Q,B,Y,J,C,X,G){let F=EI(J8(A*this._whitePoint.r),J8(Q*this._whitePoint.g),J8(B*this._whitePoint.b)),W=EI(J8(J*this._whitePoint.r),J8(C*this._whitePoint.g),J8(X*this._whitePoint.b)),Z=F.L-W.L,U=F.a-W.a,$=F.b-W.b,E=Math.sqrt(F.a*F.a+F.b*F.b),K=Math.sqrt(W.a*W.a+W.b*W.b),I=E-K,V=U*U+$*$-I*I;V=V<0?0:Math.sqrt(V);let H=(G-Y)*this._whitePoint.a*this._kA;return Math.sqrt((Z/this._Kl)**2+(I/(1+this._K1*E))**2+(V/(1+this._K2*E))**2+H**2)}},yYA=class extends vYA{_setDefaults(){this._Kl=2,this._K1=0.048,this._K2=0.014,this._kA=0.049019607843137254}},gYA=class extends vYA{_setDefaults(){this._Kl=1,this._K1=0.045,this._K2=0.015,this._kA=0.09803921568627451}},L0=class extends wW{_setDefaults(){}static _calculatehp(A,Q){let B=Math.atan2(A,Q);if(B>=0)return B;return B+L0._deg360InRad}static _calculateRT(A,Q){let B=Q**7,Y=2*Math.sqrt(B/(B+L0._pow25to7)),J=L0._deg30InRad*Math.exp(-(((A-L0._deg275InRad)/L0._deg25InRad)**2));return-Math.sin(2*J)*Y}static _calculateT(A){return 1-0.17*Math.cos(A-L0._deg30InRad)+0.24*Math.cos(A*2)+0.32*Math.cos(A*3+L0._deg6InRad)-0.2*Math.cos(A*4-L0._deg63InRad)}static _calculate_ahp(A,Q,B,Y){let J=B+Y;if(A===0)return J;if(Q<=L0._deg180InRad)return J/2;if(J>8)+4*Z*Z+((767-F)*U*U>>8),E=(G-Y)*this._whitePoint.a;return Math.sqrt($+E*E)}_setDefaults(){}},uz=class extends wW{calculateRaw(A,Q,B,Y,J,C,X,G){let F=J-A,W=C-Q,Z=X-B,U=G-Y;return Math.sqrt(this._kR*F*F+this._kG*W*W+this._kB*Z*Z+this._kA*U*U)}},xYA=class extends uz{_setDefaults(){this._kR=1,this._kG=1,this._kB=1,this._kA=1}},fYA=class extends uz{_setDefaults(){this._kR=0.2126,this._kG=0.7152,this._kB=0.0722,this._kA=1}},bYA=class extends uz{_setDefaults(){this._kR=0.2126,this._kG=0.7152,this._kB=0.0722,this._kA=0}},dz=class extends wW{calculateRaw(A,Q,B,Y,J,C,X,G){let F=J-A,W=C-Q,Z=X-B,U=G-Y;if(F<0)F=0-F;if(W<0)W=0-W;if(Z<0)Z=0-Z;if(U<0)U=0-U;return this._kR*F+this._kG*W+this._kB*Z+this._kA*U}},mYA=class extends dz{_setDefaults(){this._kR=1,this._kG=1,this._kB=1,this._kA=1}},uYA=class extends dz{_setDefaults(){this._kR=0.4984,this._kG=0.8625,this._kB=0.2979,this._kA=1}},dYA=class extends dz{_setDefaults(){this._kR=0.2126,this._kG=0.7152,this._kB=0.0722,this._kA=1}},cYA=class extends wW{calculateRaw(A,Q,B,Y,J,C,X,G){let F=(G-Y)*this._whitePoint.a;return this._colordifferenceCh(A*this._whitePoint.r,J*this._whitePoint.r,F)+this._colordifferenceCh(Q*this._whitePoint.g,C*this._whitePoint.g,F)+this._colordifferenceCh(B*this._whitePoint.b,X*this._whitePoint.b,F)}_colordifferenceCh(A,Q,B){let Y=A-Q,J=Y+B;return Y*Y+J*J}_setDefaults(){}},lYA={};R1(lYA,{AbstractPaletteQuantizer:()=>KI,ColorHistogram:()=>II,NeuQuant:()=>w0,NeuQuantFloat:()=>j0,RGBQuant:()=>sYA,WuColorCube:()=>rYA,WuQuant:()=>h4});var KI=class{quantizeSync(){for(let A of this.quantize())if(A.palette)return A.palette;throw Error("unreachable")}},C8=class{constructor(){WA(this,"r"),WA(this,"g"),WA(this,"b"),WA(this,"a"),WA(this,"uint32"),WA(this,"rgba"),this.uint32=4294967295,this.r=this.g=this.b=this.a=0,this.rgba=[,,,,],this.rgba[0]=0,this.rgba[1]=0,this.rgba[2]=0,this.rgba[3]=0}static createByQuadruplet(A){let Q=new C8;return Q.r=A[0]|0,Q.g=A[1]|0,Q.b=A[2]|0,Q.a=A[3]|0,Q._loadUINT32(),Q._loadQuadruplet(),Q}static createByRGBA(A,Q,B,Y){let J=new C8;return J.r=A|0,J.g=Q|0,J.b=B|0,J.a=Y|0,J._loadUINT32(),J._loadQuadruplet(),J}static createByUint32(A){let Q=new C8;return Q.uint32=A>>>0,Q._loadRGBA(),Q._loadQuadruplet(),Q}from(A){this.r=A.r,this.g=A.g,this.b=A.b,this.a=A.a,this.uint32=A.uint32,this.rgba[0]=A.r,this.rgba[1]=A.g,this.rgba[2]=A.b,this.rgba[3]=A.a}getLuminosity(A){let Q=this.r,B=this.g,Y=this.b;if(A)Q=Math.min(255,255-this.a+this.a*Q/255),B=Math.min(255,255-this.a+this.a*B/255),Y=Math.min(255,255-this.a+this.a*Y/255);return Q*0.2126+B*0.7152+Y*0.0722}_loadUINT32(){this.uint32=(this.a<<24|this.b<<16|this.g<<8|this.r)>>>0}_loadRGBA(){this.r=this.uint32&255,this.g=this.uint32>>>8&255,this.b=this.uint32>>>16&255,this.a=this.uint32>>>24&255}_loadQuadruplet(){this.rgba[0]=this.r,this.rgba[1]=this.g,this.rgba[2]=this.b,this.rgba[3]=this.a}},lX=class{constructor(){WA(this,"_pointArray"),WA(this,"_width"),WA(this,"_height"),this._width=0,this._height=0,this._pointArray=[]}getWidth(){return this._width}getHeight(){return this._height}setWidth(A){this._width=A}setHeight(A){this._height=A}getPointArray(){return this._pointArray}clone(){let A=new lX;A._width=this._width,A._height=this._height;for(let Q=0,B=this._pointArray.length;Q=X&&A=0;Q--)if(A.uint32===this._pointArray[Q].uint32)return!0;return!1}getNearestColor(A,Q){return this._pointArray[this._getNearestIndex(A,Q)|0]}getPointContainer(){return this._pointContainer}_nearestPointFromCache(A){return typeof this._i32idx[A]==="number"?this._i32idx[A]:-1}_getNearestIndex(A,Q){let B=this._nearestPointFromCache(""+Q.uint32);if(B>=0)return B;let Y=Number.MAX_VALUE;B=0;for(let J=0,C=this._pointArray.length;J{let B=fz(A.r,A.g,A.b),Y=fz(Q.r,Q.g,Q.b),J=A.r===A.g&&A.g===A.b?0:1+xv(B.h,VYA),X=(Q.r===Q.g&&Q.g===Q.b?0:1+xv(Y.h,VYA))-J;if(X)return-X;let G=A.getLuminosity(!0),F=Q.getLuminosity(!0);if(F-G!==0)return F-G;let W=(Y.s*100|0)-(B.s*100|0);if(W)return-W;return 0})}},pYA={};R1(pYA,{HueStatistics:()=>iYA,Palette:()=>VI,Point:()=>C8,PointContainer:()=>lX,ProgressTracker:()=>pX,arithmetic:()=>jYA});var omQ=class{constructor(){WA(this,"num",0),WA(this,"cols",[])}},iYA=class{constructor(A,Q){WA(this,"_numGroups"),WA(this,"_minCols"),WA(this,"_stats"),WA(this,"_groupsFull"),this._numGroups=A,this._minCols=Q,this._stats=[];for(let B=0;B<=A;B++)this._stats[B]=new omQ;this._groupsFull=0}check(A){if(this._groupsFull===this._numGroups+1)this.check=()=>{};let Q=A&255,B=A>>>8&255,Y=A>>>16&255,J=Q===B&&B===Y?0:1+xv(fz(Q,B,Y).h,this._numGroups),C=this._stats[J],X=this._minCols;if(C.num++,C.num>X)return;if(C.num===X)this._groupsFull++;if(C.num<=X)this._stats[J].cols.push(A)}injectIntoDictionary(A){for(let Q=0;Q<=this._numGroups;Q++)if(this._stats[Q].num<=this._minCols)this._stats[Q].cols.forEach((B)=>{if(!A[B])A[B]=1;else A[B]++})}injectIntoArray(A){for(let Q=0;Q<=this._numGroups;Q++)if(this._stats[Q].num<=this._minCols)this._stats[Q].cols.forEach((B)=>{if(A.indexOf(B)===-1)A.push(B)})}},nYA=class{constructor(A,Q){WA(this,"progress"),WA(this,"_step"),WA(this,"_range"),WA(this,"_last"),WA(this,"_progressRange"),this._range=A,this._progressRange=Q,this._step=Math.max(1,this._range/(nYA.steps+1)|0),this._last=-this._step,this.progress=0}shouldNotify(A){if(A-this._last>=this._step)return this._last=A,this.progress=Math.min(this._progressRange*this._last/this._range,this._progressRange),!0;return!1}},pX=nYA;WA(pX,"steps",100);var uJ=3,tmQ=class{constructor(A){WA(this,"r"),WA(this,"g"),WA(this,"b"),WA(this,"a"),this.r=this.g=this.b=this.a=A}toPoint(){return C8.createByRGBA(this.r>>uJ,this.g>>uJ,this.b>>uJ,this.a>>uJ)}subtract(A,Q,B,Y){this.r-=A|0,this.g-=Q|0,this.b-=B|0,this.a-=Y|0}},BB=class extends KI{constructor(A,Q=256){super();WA(this,"_pointArray"),WA(this,"_networkSize"),WA(this,"_network"),WA(this,"_sampleFactor"),WA(this,"_radPower"),WA(this,"_freq"),WA(this,"_bias"),WA(this,"_distance"),this._distance=A,this._pointArray=[],this._sampleFactor=1,this._networkSize=Q,this._distance.setWhitePoint(255<>3)*BB._radiusBias,G=X>>BB._radiusBiasShift;if(G<=1)G=0;for(let Z=0;Z>>0;let F;if(Q=Q)U-=Q;if(Z++,J===0)J=1;if(Z%J===0){if(C-=C/B|0,X-=X/BB._radiusDecrease|0,G=X>>BB._radiusBiasShift,G<=1)G=0;for(let D=0;D>>0}}}_buildPalette(){let A=new VI;return this._network.forEach((Q)=>{A.add(Q.toPoint())}),A.sort(),A}_alterNeighbour(A,Q,B,Y,J,C){let X=Q-A;if(X<-1)X=-1;let G=Q+A;if(G>this._networkSize)G=this._networkSize;let F=Q+1,W=Q-1,Z=1;while(FX){let U=this._radPower[Z++]/BB._alphaRadBias;if(FX){let $=this._network[W--];$.subtract(U*($.r-J),U*($.g-Y),U*($.b-B),U*($.a-C))}}}_alterSingle(A,Q,B,Y,J,C){A/=BB._initAlpha;let X=this._network[Q];X.subtract(A*(X.r-J),A*(X.g-Y),A*(X.b-B),A*(X.a-C))}_contest(A,Q,B,Y){let J=1020<>BB._initialBiasShift-uJ);if($>BB._betaShift;this._freq[W]-=E,this._bias[W]+=E<>BB._betaShift);WA(w0,"_betaGamma",BB._initialBias<>dJ,this.g>>dJ,this.b>>dJ,this.a>>dJ)}subtract(A,Q,B,Y){this.r-=A,this.g-=Q,this.b-=B,this.a-=Y}},YB=class extends KI{constructor(A,Q=256){super();WA(this,"_pointArray"),WA(this,"_networkSize"),WA(this,"_network"),WA(this,"_sampleFactor"),WA(this,"_radPower"),WA(this,"_freq"),WA(this,"_bias"),WA(this,"_distance"),this._distance=A,this._pointArray=[],this._sampleFactor=1,this._networkSize=Q,this._distance.setWhitePoint(255<>3)*YB._radiusBias,G=X>>YB._radiusBiasShift;if(G<=1)G=0;for(let Z=0;Z=Q)U-=Q;if(Z++,J===0)J=1;if(Z%J===0){if(C-=C/B,X-=X/YB._radiusDecrease,G=X>>YB._radiusBiasShift,G<=1)G=0;for(let D=0;D{A.add(Q.toPoint())}),A.sort(),A}_alterNeighbour(A,Q,B,Y,J,C){let X=Q-A;if(X<-1)X=-1;let G=Q+A;if(G>this._networkSize)G=this._networkSize;let F=Q+1,W=Q-1,Z=1;while(FX){let U=this._radPower[Z++]/YB._alphaRadBias;if(FX){let $=this._network[W--];$.subtract(U*($.r-J),U*($.g-Y),U*($.b-B),U*($.a-C))}}}_alterSingle(A,Q,B,Y,J,C){A/=YB._initAlpha;let X=this._network[Q];X.subtract(A*(X.r-J),A*(X.g-Y),A*(X.b-B),A*(X.a-C))}_contest(A,Q,B,Y){let J=1020<>YB._initialBiasShift-dJ);if($>YB._betaShift;this._freq[W]-=E,this._bias[W]+=E<>YB._betaShift);WA(j0,"_betaGamma",YB._initialBias<this._histogram[Y]-this._histogram[B]);if(A.length===0)return[];let Q;switch(this._method){case 1:let B=Math.min(A.length,this._initColors),Y=A[B-1],J=this._histogram[Y];Q=A.slice(0,B);let C=B,X=A.length;while(C+B)}_colorStats1D(A){let Q=this._histogram,B=A.getPointArray(),Y=B.length;for(let J=0;J{let Z=Math.round(W.w*W.h/X)*UI._boxPixels;if(Z<2)Z=2;let U={};this._iterateBox(W,Q,($)=>{let E=Y[$].uint32;if(this._hueStats.check(E),E in F)F[E]++;else if(E in U){if(++U[E]>=Z)F[E]=U[E]}else U[E]=1})}),this._hueStats.injectIntoDictionary(F)}_iterateBox(A,Q,B){let Y=A,J=Y.y*Q+Y.x,C=(Y.y+Y.h-1)*Q+(Y.x+Y.w-1),X=Q-Y.w+1,G=0,F=J;do B.call(this,F),F+=++G%Y.w===0?X:1;while(F<=C)}_makeBoxes(A,Q,B,Y){let J=A%B,C=Q%Y,X=A-J,G=Q-C,F=[];for(let W=0;Wthis._colors){C.length=0;for(let Z=0;Zthis._colors*3?this._initialDistance:this._distanceIncrement}if(X$.distance-U.distance);let Z=0;while(X=0;Z--)if(Y[Z]===0){if(Z!==W-1)B[Z]=B[W-1];--W}B.length=W,Q.sort(),yield{palette:Q,progress:100}}};function k4(A){let Q=[];for(let B=0;B0){let B=this._sums[Q],Y=this._reds[Q]/B,J=this._greens[Q]/B,C=this._blues[Q]/B,X=this._alphas[Q]/B,G=C8.createByRGBA(Y|0,J|0,C|0,X|0);A.add(G)}A.sort(),yield{palette:A,progress:100}}*_preparePalette(){yield*this._calculateMoments();let A=0,Q=k4(this._colors);for(let X=1;X1?this._calculateVariance(this._cubes[A]):0,Q[X]=this._cubes[X].volume>1?this._calculateVariance(this._cubes[X]):0;else Q[A]=0,X--;A=0;let G=Q[0];for(let F=1;F<=X;++F)if(Q[F]>G)G=Q[F],A=F;if(G<=0){this._colors=X+1;break}}let B=[],Y=[],J=[],C=[];for(let X=0;X0)B[X]=jQ._volume(this._cubes[X],this._momentsRed)/G|0,Y[X]=jQ._volume(this._cubes[X],this._momentsGreen)/G|0,J[X]=jQ._volume(this._cubes[X],this._momentsBlue)/G|0,C[X]=jQ._volume(this._cubes[X],this._momentsAlpha)/G|0;else B[X]=0,Y[X]=0,J[X]=0,C[X]=0}this._reds=k4(this._colors+1),this._greens=k4(this._colors+1),this._blues=k4(this._colors+1),this._alphas=k4(this._colors+1),this._sums=k4(this._colors+1);for(let X=0,G=this._pixels.length;X>Q)+1,Y=(A.g>>Q)+1,J=(A.b>>Q)+1,C=(A.a>>Q)+1;this._weights[C][B][Y][J]++,this._momentsRed[C][B][Y][J]+=A.r,this._momentsGreen[C][B][Y][J]+=A.g,this._momentsBlue[C][B][Y][J]+=A.b,this._momentsAlpha[C][B][Y][J]+=A.a,this._moments[C][B][Y][J]+=this._table[A.r]+this._table[A.g]+this._table[A.b]+this._table[A.a]}*_calculateMoments(){let A=[],Q=[],B=[],Y=[],J=[],C=[],X=v4(this._sideSize,this._sideSize,this._sideSize),G=v4(this._sideSize,this._sideSize,this._sideSize),F=v4(this._sideSize,this._sideSize,this._sideSize),W=v4(this._sideSize,this._sideSize,this._sideSize),Z=v4(this._sideSize,this._sideSize,this._sideSize),U=v4(this._sideSize,this._sideSize,this._sideSize),$=0,E=new pX(this._alphaMaxSideIndex*this._maxSideIndex,99);for(let K=1;K<=this._alphaMaxSideIndex;++K){y4(X,this._sideSize,this._sideSize,this._sideSize,0),y4(G,this._sideSize,this._sideSize,this._sideSize,0),y4(F,this._sideSize,this._sideSize,this._sideSize,0),y4(W,this._sideSize,this._sideSize,this._sideSize,0),y4(Z,this._sideSize,this._sideSize,this._sideSize,0),y4(U,this._sideSize,this._sideSize,this._sideSize,0);for(let I=1;I<=this._maxSideIndex;++I,++$){if(E.shouldNotify($))yield{progress:E.progress};g4(A,this._sideSize,0),g4(Q,this._sideSize,0),g4(B,this._sideSize,0),g4(Y,this._sideSize,0),g4(J,this._sideSize,0),g4(C,this._sideSize,0);for(let V=1;V<=this._maxSideIndex;++V){let H=0,D=0,L=0,z=0,M=0,N=0;for(let q=1;q<=this._maxSideIndex;++q)H+=this._weights[K][I][V][q],D+=this._momentsRed[K][I][V][q],L+=this._momentsGreen[K][I][V][q],z+=this._momentsBlue[K][I][V][q],M+=this._momentsAlpha[K][I][V][q],N+=this._moments[K][I][V][q],A[q]+=H,Q[q]+=D,B[q]+=L,Y[q]+=z,J[q]+=M,C[q]+=N,X[I][V][q]=X[I-1][V][q]+A[q],G[I][V][q]=G[I-1][V][q]+Q[q],F[I][V][q]=F[I-1][V][q]+B[q],W[I][V][q]=W[I-1][V][q]+Y[q],Z[I][V][q]=Z[I-1][V][q]+J[q],U[I][V][q]=U[I-1][V][q]+C[q],this._weights[K][I][V][q]=this._weights[K-1][I][V][q]+X[I][V][q],this._momentsRed[K][I][V][q]=this._momentsRed[K-1][I][V][q]+G[I][V][q],this._momentsGreen[K][I][V][q]=this._momentsGreen[K-1][I][V][q]+F[I][V][q],this._momentsBlue[K][I][V][q]=this._momentsBlue[K-1][I][V][q]+W[I][V][q],this._momentsAlpha[K][I][V][q]=this._momentsAlpha[K-1][I][V][q]+Z[I][V][q],this._moments[K][I][V][q]=this._moments[K-1][I][V][q]+U[I][V][q]}}}}static _volumeFloat(A,Q){return Q[A.alphaMaximum][A.redMaximum][A.greenMaximum][A.blueMaximum]-Q[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMaximum]-Q[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMaximum]+Q[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMaximum]-Q[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMaximum]+Q[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMaximum]+Q[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMaximum]-Q[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(Q[A.alphaMaximum][A.redMaximum][A.greenMaximum][A.blueMinimum]-Q[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMinimum]-Q[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMinimum]+Q[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]-Q[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMinimum]+Q[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]+Q[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]-Q[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum])}static _volume(A,Q){return jQ._volumeFloat(A,Q)|0}static _top(A,Q,B,Y){let J;switch(Q){case jQ._alpha:J=Y[B][A.redMaximum][A.greenMaximum][A.blueMaximum]-Y[B][A.redMaximum][A.greenMinimum][A.blueMaximum]-Y[B][A.redMinimum][A.greenMaximum][A.blueMaximum]+Y[B][A.redMinimum][A.greenMinimum][A.blueMaximum]-(Y[B][A.redMaximum][A.greenMaximum][A.blueMinimum]-Y[B][A.redMaximum][A.greenMinimum][A.blueMinimum]-Y[B][A.redMinimum][A.greenMaximum][A.blueMinimum]+Y[B][A.redMinimum][A.greenMinimum][A.blueMinimum]);break;case jQ._red:J=Y[A.alphaMaximum][B][A.greenMaximum][A.blueMaximum]-Y[A.alphaMaximum][B][A.greenMinimum][A.blueMaximum]-Y[A.alphaMinimum][B][A.greenMaximum][A.blueMaximum]+Y[A.alphaMinimum][B][A.greenMinimum][A.blueMaximum]-(Y[A.alphaMaximum][B][A.greenMaximum][A.blueMinimum]-Y[A.alphaMaximum][B][A.greenMinimum][A.blueMinimum]-Y[A.alphaMinimum][B][A.greenMaximum][A.blueMinimum]+Y[A.alphaMinimum][B][A.greenMinimum][A.blueMinimum]);break;case jQ._green:J=Y[A.alphaMaximum][A.redMaximum][B][A.blueMaximum]-Y[A.alphaMaximum][A.redMinimum][B][A.blueMaximum]-Y[A.alphaMinimum][A.redMaximum][B][A.blueMaximum]+Y[A.alphaMinimum][A.redMinimum][B][A.blueMaximum]-(Y[A.alphaMaximum][A.redMaximum][B][A.blueMinimum]-Y[A.alphaMaximum][A.redMinimum][B][A.blueMinimum]-Y[A.alphaMinimum][A.redMaximum][B][A.blueMinimum]+Y[A.alphaMinimum][A.redMinimum][B][A.blueMinimum]);break;case jQ._blue:J=Y[A.alphaMaximum][A.redMaximum][A.greenMaximum][B]-Y[A.alphaMaximum][A.redMaximum][A.greenMinimum][B]-Y[A.alphaMaximum][A.redMinimum][A.greenMaximum][B]+Y[A.alphaMaximum][A.redMinimum][A.greenMinimum][B]-(Y[A.alphaMinimum][A.redMaximum][A.greenMaximum][B]-Y[A.alphaMinimum][A.redMaximum][A.greenMinimum][B]-Y[A.alphaMinimum][A.redMinimum][A.greenMaximum][B]+Y[A.alphaMinimum][A.redMinimum][A.greenMinimum][B]);break;default:throw Error("impossible")}return J|0}static _bottom(A,Q,B){switch(Q){case jQ._alpha:return-B[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMaximum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMaximum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMaximum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(-B[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMinimum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);case jQ._red:return-B[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMaximum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMaximum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMaximum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(-B[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMinimum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);case jQ._green:return-B[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMaximum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMaximum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMaximum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(-B[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);case jQ._blue:return-B[A.alphaMaximum][A.redMaximum][A.greenMaximum][A.blueMinimum]+B[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]-(-B[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMinimum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);default:return 0}}_calculateVariance(A){let Q=jQ._volume(A,this._momentsRed),B=jQ._volume(A,this._momentsGreen),Y=jQ._volume(A,this._momentsBlue),J=jQ._volume(A,this._momentsAlpha),C=jQ._volumeFloat(A,this._moments),X=jQ._volume(A,this._weights),G=Q*Q+B*B+Y*Y+J*J;return C-G/X}_maximize(A,Q,B,Y,J,C,X,G,F){let W=jQ._bottom(A,Q,this._momentsRed)|0,Z=jQ._bottom(A,Q,this._momentsGreen)|0,U=jQ._bottom(A,Q,this._momentsBlue)|0,$=jQ._bottom(A,Q,this._momentsAlpha)|0,E=jQ._bottom(A,Q,this._weights)|0,K=0,I=-1;for(let V=B;VK)K=q,I=V}}}return{max:K,position:I}}_cut(A,Q){let B,Y=jQ._volume(A,this._momentsRed),J=jQ._volume(A,this._momentsGreen),C=jQ._volume(A,this._momentsBlue),X=jQ._volume(A,this._momentsAlpha),G=jQ._volume(A,this._weights),F=this._maximize(A,jQ._red,A.redMinimum+1,A.redMaximum,Y,J,C,X,G),W=this._maximize(A,jQ._green,A.greenMinimum+1,A.greenMaximum,Y,J,C,X,G),Z=this._maximize(A,jQ._blue,A.blueMinimum+1,A.blueMaximum,Y,J,C,X,G),U=this._maximize(A,jQ._alpha,A.alphaMinimum+1,A.alphaMaximum,Y,J,C,X,G);if(U.max>=F.max&&U.max>=W.max&&U.max>=Z.max){if(B=jQ._alpha,U.position<0)return!1}else if(F.max>=U.max&&F.max>=W.max&&F.max>=Z.max)B=jQ._red;else if(W.max>=U.max&&W.max>=F.max&&W.max>=Z.max)B=jQ._green;else B=jQ._blue;switch(Q.redMaximum=A.redMaximum,Q.greenMaximum=A.greenMaximum,Q.blueMaximum=A.blueMaximum,Q.alphaMaximum=A.alphaMaximum,B){case jQ._red:Q.redMinimum=A.redMaximum=F.position,Q.greenMinimum=A.greenMinimum,Q.blueMinimum=A.blueMinimum,Q.alphaMinimum=A.alphaMinimum;break;case jQ._green:Q.greenMinimum=A.greenMaximum=W.position,Q.redMinimum=A.redMinimum,Q.blueMinimum=A.blueMinimum,Q.alphaMinimum=A.alphaMinimum;break;case jQ._blue:Q.blueMinimum=A.blueMaximum=Z.position,Q.redMinimum=A.redMinimum,Q.greenMinimum=A.greenMinimum,Q.alphaMinimum=A.alphaMinimum;break;case jQ._alpha:Q.alphaMinimum=A.alphaMaximum=U.position,Q.blueMinimum=A.blueMinimum,Q.redMinimum=A.redMinimum,Q.greenMinimum=A.greenMinimum;break}return A.volume=(A.redMaximum-A.redMinimum)*(A.greenMaximum-A.greenMinimum)*(A.blueMaximum-A.blueMinimum)*(A.alphaMaximum-A.alphaMinimum),Q.volume=(Q.redMaximum-Q.redMinimum)*(Q.greenMaximum-Q.greenMinimum)*(Q.blueMaximum-Q.blueMinimum)*(Q.alphaMaximum-Q.alphaMinimum),!0}_initialize(A){this._colors=A,this._cubes=[];for(let Q=0;Qcz,ErrorDiffusionArray:()=>z1,ErrorDiffusionArrayKernel:()=>tYA,ErrorDiffusionRiemersma:()=>bv,NearestColor:()=>oYA});var cz=class{quantizeSync(A,Q){for(let B of this.quantize(A,Q))if(B.pointContainer)return B.pointContainer;throw Error("unreachable")}},oYA=class extends cz{constructor(A){super();WA(this,"_distance"),this._distance=A}*quantize(A,Q){let B=A.getPointArray(),Y=A.getWidth(),J=A.getHeight(),C=new pX(J,99);for(let X=0;X{return A[A.FloydSteinberg=0]="FloydSteinberg",A[A.FalseFloydSteinberg=1]="FalseFloydSteinberg",A[A.Stucki=2]="Stucki",A[A.Atkinson=3]="Atkinson",A[A.Jarvis=4]="Jarvis",A[A.Burkes=5]="Burkes",A[A.Sierra=6]="Sierra",A[A.TwoSierra=7]="TwoSierra",A[A.SierraLite=8]="SierraLite",A})(tYA||{}),z1=class extends cz{constructor(A,Q,B=!0,Y=0,J=!1){super();WA(this,"_minColorDistance"),WA(this,"_serpentine"),WA(this,"_kernel"),WA(this,"_calculateErrorLikeGIMP"),WA(this,"_distance"),this._setKernel(Q),this._distance=A,this._minColorDistance=Y,this._serpentine=B,this._calculateErrorLikeGIMP=J}*quantize(A,Q){let B=A.getPointArray(),Y=new C8,J=A.getWidth(),C=A.getHeight(),X=[],G=1,F=1;for(let Z of this._kernel){let U=Z[2]+1;if(F=0&&k+I=0&&T+ZQ)A.length=Q;let B=A.length;for(let Y=0;Y=0&&A.x=0&&A.y{let W=B[G+F*Y],{r:Z,g:U,b:$,a:E}=W;for(let H=0;HJuQ});var BuQ=0.01,YuQ=0.03;function JuQ(A,Q){if(A.getHeight()!==Q.getHeight()||A.getWidth()!==Q.getWidth())throw Error("Images have different sizes!");let Y=255,J=(BuQ*Y)**2,C=(YuQ*Y)**2,X=0,G=0;return CuQ(A,Q,(F,W,Z,U)=>{let $=0,E=0,K=0;for(let L=0;Lprocess.nextTick(A):(A)=>setTimeout(A,0);function XuQ(A,{colorDistanceFormula:Q,paletteQuantization:B,colors:Y}={}){let J=lz(Q),C=QJA(J,B,Y);return A.forEach((X)=>C.sample(X)),C.quantizeSync()}async function GuQ(A,{colorDistanceFormula:Q,paletteQuantization:B,colors:Y,onProgress:J}={}){return new Promise((C,X)=>{let G=lz(Q),F=QJA(G,B,Y);A.forEach(($)=>F.sample($));let W,Z=F.quantize(),U=()=>{try{let $=Z.next();if($.done)C(W);else{if($.value.palette)W=$.value.palette;if(J)J($.value.progress);bz(U)}}catch($){X($)}};bz(U)})}function FuQ(A,Q,{colorDistanceFormula:B,imageQuantization:Y}={}){let J=lz(B);return AJA(J,Y).quantizeSync(A,Q)}async function WuQ(A,Q,{colorDistanceFormula:B,imageQuantization:Y,onProgress:J}={}){return new Promise((C,X)=>{let G=lz(B),F=AJA(G,Y),W,Z=F.quantize(A,Q),U=()=>{try{let $=Z.next();if($.done)C(W);else{if($.value.pointContainer)W=$.value.pointContainer;if(J)J($.value.progress);bz(U)}}catch($){X($)}};bz(U)})}function lz(A="euclidean-bt709"){switch(A){case"cie94-graphic-arts":return new gYA;case"cie94-textiles":return new yYA;case"ciede2000":return new VC;case"color-metric":return new hYA;case"euclidean":return new xYA;case"euclidean-bt709":return new fYA;case"euclidean-bt709-noalpha":return new bYA;case"manhattan":return new mYA;case"manhattan-bt709":return new dYA;case"manhattan-nommyde":return new uYA;case"pngquant":return new cYA;default:throw Error(`Unknown colorDistanceFormula ${A}`)}}function AJA(A,Q="floyd-steinberg"){switch(Q){case"nearest":return new oYA(A);case"riemersma":return new bv(A);case"floyd-steinberg":return new z1(A,0);case"false-floyd-steinberg":return new z1(A,1);case"stucki":return new z1(A,2);case"atkinson":return new z1(A,3);case"jarvis":return new z1(A,4);case"burkes":return new z1(A,5);case"sierra":return new z1(A,6);case"two-sierra":return new z1(A,7);case"sierra-lite":return new z1(A,8);default:throw Error(`Unknown imageQuantization ${Q}`)}}function QJA(A,Q="wuquant",B=256){switch(Q){case"neuquant":return new w0(A,B);case"rgbquant":return new sYA(A,B);case"wuquant":return new h4(A,B);case"neuquant-float":return new j0(A,B);default:throw Error(`Unknown paletteQuantization ${Q}`)}}BJA.exports=dmQ(DYA)});var pz=R((ZuQ)=>{var JJA=xz(),{GifError:i1Y}=$I();class p6 extends JJA{constructor(...A){super(...A);if(A[0]instanceof p6){let Q=A[0];this.xOffset=Q.xOffset,this.yOffset=Q.yOffset,this.disposalMethod=Q.disposalMethod,this.delayCentisecs=Q.delayCentisecs,this.interlaced=Q.interlaced}else{let Q=A[A.length-1],B={};if(typeof Q==="object"&&!(Q instanceof JJA))B=Q;this.xOffset=B.xOffset||0,this.yOffset=B.yOffset||0,this.disposalMethod=B.disposalMethod!==void 0?B.disposalMethod:p6.DisposeToBackgroundColor,this.delayCentisecs=B.delayCentisecs||8,this.interlaced=B.interlaced||!1}}getPalette(){let A=new Set,Q=this.bitmap.data,B=0,Y=!1;while(B>8&16777215;A.add(G)}B+=4}let J=Array(A.size),C=A.values();for(B=0;BG-F);let X=J.length;if(Y)++X;return{colors:J,usesTransparency:Y,indexCount:X}}}p6.DisposeToAnything=0;p6.DisposeNothing=1;p6.DisposeToBackgroundColor=2;p6.DisposeToPrevious=3;ZuQ.GifFrame=p6});var uv=R((NuQ)=>{var CJA=u("fs"),x4=YJA(),UuQ=xz(),{GifFrame:EuQ}=pz(),{GifError:KuQ}=$I(),{GifCodec:VuQ}=dv(),IuQ=[".jpg",".jpeg",".png",".bmp"],XJA=new VuQ;NuQ.cloneFrames=function(A){let Q=[];return A.forEach((B)=>{Q.push(new EuQ(B))}),Q};NuQ.getColorInfo=function(A,Q){let B=!1,Y=[];for(let F=0;F256)throw new KuQ(`Frame ${F} uses more than 256 color indexes`);Y.push(W)}if(Q===0)return{usesTransparency:B,palettes:Y};let J=new Set;Y.forEach((F)=>{F.colors.forEach((W)=>{J.add(W)})});let C=J.size;if(B)++C;if(Q&&C>Q)return{usesTransparency:B,palettes:Y};let X=Array(J.size),G=J.values();for(let F=0;FF-W),{colors:X,indexCount:C,usesTransparency:B,palettes:Y}};NuQ.copyAsJimp=function(A,Q){return NuQ.shareAsJimp(A,new UuQ(Q))};NuQ.getMaxDimensions=function(A){let Q=0,B=0;return A.forEach((Y)=>{let J=Y.xOffset+Y.bitmap.width;if(J>Q)Q=J;let C=Y.yOffset+Y.bitmap.height;if(C>B)B=C}),{maxWidth:Q,maxHeight:B}};NuQ.quantizeDekker=function(A,Q,B){Q=Q||256,mv(A,"NeuQuantFloat",Q,0,B)};NuQ.quantizeSorokin=function(A,Q,B,Y){Q=Q||256,B=B||"min-pop";let J;switch(B){case"min-pop":J=2;break;case"top-pop":J=1;break;default:throw Error(`Invalid quantizeSorokin histogram '${B}'`)}mv(A,"RGBQuant",Q,J,Y)};NuQ.quantizeWu=function(A,Q,B,Y){if(Q=Q||256,B=B||5,B<1||B>8)throw Error("Invalid quantization quality");mv(A,"WuQuant",Q,B,Y)};NuQ.read=function(A,Q){if(Q=Q||XJA,Buffer.isBuffer(A))return Q.decodeGif(A);return HuQ(A).then((B)=>{return Q.decodeGif(B)})};NuQ.shareAsJimp=function(A,Q){let B=new A(Q.bitmap.width,Q.bitmap.height,0);return B.bitmap.data=Q.bitmap.data,B};NuQ.write=function(A,Q,B,Y){Y=Y||XJA;let J=A.match(/\.[a-zA-Z]+$/);if(J!==null&&IuQ.includes(J[0].toLowerCase()))throw Error(`GIF '${A}' has an unexpected suffix`);return Y.encodeGif(Q,B).then((C)=>{return DuQ(A,C.buffer).then(()=>{return C})})};function mv(A,Q,B,Y,J){let C=Array.isArray(A)?A:[A],X=["FloydSteinberg","FalseFloydSteinberg","Stucki","Atkinson","Jarvis","Burkes","Sierra","TwoSierra","SierraLite"];if(J){if(X.indexOf(J.ditherAlgorithm)<0)throw Error(`Invalid ditherAlgorithm '${J.ditherAlgorithm}'`);if(J.serpentine===void 0)J.serpentine=!0;if(J.minimumColorDistanceToDither===void 0)J.minimumColorDistanceToDither=0;if(J.calculateErrorLikeGIMP===void 0)J.calculateErrorLikeGIMP=!1}let G=new x4.distance.Euclidean,F=new x4.palette[Q](G,B,Y),W;if(J)W=new x4.image.ErrorDiffusionArray(G,x4.image.ErrorDiffusionArrayKernel[J.ditherAlgorithm],J.serpentine,J.minimumColorDistanceToDither,J.calculateErrorLikeGIMP);else W=new x4.image.NearestColor(G);let Z=[];C.forEach(($)=>{let E=$.bitmap.data,K=new ArrayBuffer(E.length),I=new Uint32Array(K);for(let H=0,D=0;H{CJA.readFile(A,(Y,J)=>{if(Y)return B(Y);return Q(J)})})}function DuQ(A,Q){return new Promise((B,Y)=>{CJA.writeFile(A,Q,(J)=>{if(J)return Y(J);return B()})})}});var dv=R((xuQ)=>{var cv=_v(),{Gif:i6,GifError:iX}=$I();function iz(){let A=uv();return iz=function(){return A},A}var{GifFrame:SuQ}=pz(),GJA=200,kuQ=100;class ZJA{constructor(A={}){if(this._transparentRGB=null,typeof A.transparentRGB==="number"&&A.transparentRGB!==0)this._transparentRGBA=A.transparentRGB*256;this._testInitialBufferSize=0}decodeGif(A){try{let Q;try{Q=new cv.GifReader(A)}catch(C){throw new iX(C)}let B=Q.numFrames(),Y=[],J={width:Q.width,height:Q.height,loops:Q.loopCount()};J.usesTransparency=!1;for(let C=0;CY.width)for(let G=0;G0)return this._testInitialBufferSize;let B=GJA+768,Y=WJA(A);return Q.forEach((J)=>{B+=FJA(J,Y)}),B}_getSizeEstimateLocal(A,Q){if(this._testInitialBufferSize>0)return this._testInitialBufferSize;let B=GJA;for(let Y=0;YQ)Y=J-1;else if(A[J]Y)Y<<=1;Q.length=Y,Q.fill(0,B)}function FJA(A,Q){let B=A.bitmap.width*A.bitmap.height;return B=Math.ceil(B*Q/8),B+=Math.ceil(B/255),kuQ+B+768}function huQ(A,Q,B){let Y=B.colors,J=Y.length<=8?_uQ:vuQ,C=Q.bitmap.data,X=new Buffer(C.length/4),G=Y.length,F=0,W=0;while(F>8&16777215;X[W]=J(Y,Z)}else X[W]=G;F+=4,++W}if(B.usesTransparency){if(G===256)throw new iX(`Frame ${A} already has 256 colorsand so can't use transparency`)}else G=null;return{buffer:X,transparentIndex:G}}function WJA(A){let Q=A.indexCount,B=0;--Q;while(Q)++B,Q>>=1;return B>0?B:1}function UJA(A,Q,B,Y,J){if(B.interlaced)throw new iX("writing interlaced GIFs is not supported");let C=huQ(Q,B,Y),X={delay:B.delayCentisecs,disposal:B.disposalMethod,transparent:C.transparentIndex};if(J)$JA(Y),X.palette=Y.colors;try{let G=A.getOutputBuffer(),F=A.getOutputBufferPosition(),W,Z=!0;while(Z)if(W=A.addFrame(B.xOffset,B.yOffset,B.bitmap.width,B.bitmap.height,C.buffer,X),Z=!1,W>=G.length-1){let U=new Buffer(G.length*1.5);G.copy(U),A.setOutputBuffer(U),A.setOutputBufferPosition(F),G=U,Z=!0}return G}catch(G){throw new iX(G)}}});var KJA=R((a1Y,EJA)=>{var buQ=xz(),{Gif:muQ,GifError:uuQ}=$I(),{GifCodec:duQ}=dv(),{GifFrame:cuQ}=pz(),luQ=uv();EJA.exports={BitmapImage:buQ,Gif:muQ,GifCodec:duQ,GifFrame:cuQ,GifUtil:luQ,GifError:uuQ}});var DJA=R((t1Y,sz)=>{var HJA=HJA||function(A){return Buffer.from(A).toString("base64")};function puQ(A){var Q=this,B=Math.round,Y=Math.floor,J=Array(64),C=Array(64),X=Array(64),G=Array(64),F,W,Z,U,$=Array(65535),E=Array(65535),K=Array(64),I=Array(64),V=[],H=0,D=7,L=Array(64),z=Array(64),M=Array(64),N=Array(256),q=Array(2048),w,P=[0,1,5,6,14,15,27,28,2,4,7,13,16,26,29,42,3,8,12,17,25,30,41,43,9,11,18,24,31,40,44,53,10,19,23,32,39,45,52,54,20,22,33,38,46,51,55,60,21,34,37,47,50,56,59,61,35,36,48,49,57,58,62,63],_=[0,0,1,5,1,1,1,1,1,1,0,0,0,0,0,0,0],O=[0,1,2,3,4,5,6,7,8,9,10,11],k=[0,0,2,1,3,3,2,4,3,5,5,4,4,0,0,1,125],T=[1,2,3,0,4,17,5,18,33,49,65,6,19,81,97,7,34,113,20,50,129,145,161,8,35,66,177,193,21,82,209,240,36,51,98,114,130,9,10,22,23,24,25,26,37,38,39,40,41,42,52,53,54,55,56,57,58,67,68,69,70,71,72,73,74,83,84,85,86,87,88,89,90,99,100,101,102,103,104,105,106,115,116,117,118,119,120,121,122,131,132,133,134,135,136,137,138,146,147,148,149,150,151,152,153,154,162,163,164,165,166,167,168,169,170,178,179,180,181,182,183,184,185,186,194,195,196,197,198,199,200,201,202,210,211,212,213,214,215,216,217,218,225,226,227,228,229,230,231,232,233,234,241,242,243,244,245,246,247,248,249,250],S=[0,0,3,1,1,1,1,1,1,1,1,1,0,0,0,0,0],v=[0,1,2,3,4,5,6,7,8,9,10,11],y=[0,0,2,1,2,4,4,3,4,7,5,4,4,0,1,2,119],h=[0,1,2,3,17,4,5,33,49,6,18,65,81,7,97,113,19,34,50,129,8,20,66,145,161,177,193,9,35,51,82,240,21,98,114,209,10,22,36,52,225,37,241,23,24,25,26,38,39,40,41,42,53,54,55,56,57,58,67,68,69,70,71,72,73,74,83,84,85,86,87,88,89,90,99,100,101,102,103,104,105,106,115,116,117,118,119,120,121,122,130,131,132,133,134,135,136,137,138,146,147,148,149,150,151,152,153,154,162,163,164,165,166,167,168,169,170,178,179,180,181,182,183,184,185,186,194,195,196,197,198,199,200,201,202,210,211,212,213,214,215,216,217,218,226,227,228,229,230,231,232,233,234,242,243,244,245,246,247,248,249,250];function g(XA){var PA=[16,11,10,16,24,40,51,61,12,12,14,19,26,58,60,55,14,13,16,24,40,57,69,56,14,17,22,29,51,87,80,62,18,22,37,56,68,109,103,77,24,35,55,64,81,104,113,92,49,64,78,87,103,121,120,101,72,92,95,98,112,100,103,99];for(var NA=0;NA<64;NA++){var TA=Y((PA[NA]*XA+50)/100);if(TA<1)TA=1;else if(TA>255)TA=255;J[P[NA]]=TA}var vA=[17,18,24,47,99,99,99,99,18,21,26,66,99,99,99,99,24,26,56,99,99,99,99,99,47,66,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99];for(var mA=0;mA<64;mA++){var ZQ=Y((vA[mA]*XA+50)/100);if(ZQ<1)ZQ=1;else if(ZQ>255)ZQ=255;C[P[mA]]=ZQ}var NQ=[1,1.387039845,1.306562965,1.175875602,1,0.785694958,0.5411961,0.275899379],JQ=0;for(var SQ=0;SQ<8;SQ++)for(var LA=0;LA<8;LA++)X[JQ]=1/(J[P[JQ]]*NQ[SQ]*NQ[LA]*8),G[JQ]=1/(C[P[JQ]]*NQ[SQ]*NQ[LA]*8),JQ++}function m(XA,PA){var NA=0,TA=0,vA=[];for(var mA=1;mA<=16;mA++){for(var ZQ=1;ZQ<=XA[mA];ZQ++)vA[PA[TA]]=[],vA[PA[TA]][0]=NA,vA[PA[TA]][1]=mA,TA++,NA++;NA*=2}return vA}function i(){F=m(_,O),W=m(S,v),Z=m(k,T),U=m(y,h)}function p(){var XA=1,PA=2;for(var NA=1;NA<=15;NA++){for(var TA=XA;TA>0]=38470*XA,q[XA+512>>0]=7471*XA+32768,q[XA+768>>0]=-11059*XA,q[XA+1024>>0]=-21709*XA,q[XA+1280>>0]=32768*XA+8421375,q[XA+1536>>0]=-27439*XA,q[XA+1792>>0]=-5329*XA}function d(XA){var PA=XA[0],NA=XA[1]-1;while(NA>=0){if(PA&1<>8&255),x(XA&255)}function o(XA,PA){var NA,TA,vA,mA,ZQ,NQ,JQ,SQ,LA=0,IA,jA=8,tQ=64;for(IA=0;IA0?JM+0.5|0:JM-0.5|0;return K}function GA(){b(65504),b(16),x(74),x(70),x(73),x(70),x(0),x(1),x(1),x(0),b(1),b(1),x(0),x(0)}function VA(XA){if(!XA)return;if(b(65505),XA[0]===69&&XA[1]===120&&XA[2]===105&&XA[3]===102)b(XA.length+2);else b(XA.length+5+2),x(69),x(120),x(105),x(102),x(0);for(var PA=0;PA"u"||XA.constructor!==Array)return;XA.forEach((PA)=>{if(typeof PA!=="string")return;b(65534);var NA=PA.length;b(NA+2);var TA;for(TA=0;TA0&&I[IQ]==0;IQ--);if(IQ==0)return d(mA),NA;var vQ=1,KB;while(vQ<=IQ){var zA=vQ;for(;I[vQ]==0&&vQ<=IQ;++vQ);var uA=vQ-zA;if(uA>=JQ){KB=uA>>4;for(var MQ=1;MQ<=KB;++MQ)d(ZQ);uA=uA&15}NQ=32767+I[vQ],d(vA[(uA<<4)+E[NQ]]),d($[NQ]),vQ++}if(IQ!=SQ)d(mA);return NA}function DA(){var XA=String.fromCharCode;for(var PA=0;PA<256;PA++)N[PA]=XA(PA)}this.encode=function(XA,PA){var NA=new Date().getTime();if(PA)hA(PA);V=[],H=0,D=7,b(65496),GA(),QA(XA.comments),VA(XA.exifBuffer),UA(),EA(XA.width,XA.height),CA(),KA();var TA=0,vA=0,mA=0;H=0,D=7,this.encode.displayName="_encode_";var{data:ZQ,width:NQ,height:JQ}=XA,SQ=NQ*4,LA=NQ*3,IA,jA=0,tQ,IQ,vQ,KB,zA,uA,MQ,bQ;while(jA>3,uA=(bQ&7)*4,zA=KB+MQ*SQ+uA,jA+MQ>=JQ)zA-=SQ*(jA+1+MQ-JQ);if(IA+uA>=SQ)zA-=IA+uA-SQ+4;tQ=ZQ[zA++],IQ=ZQ[zA++],vQ=ZQ[zA++],L[bQ]=(q[tQ]+q[IQ+256>>0]+q[vQ+512>>0]>>16)-128,z[bQ]=(q[tQ+768>>0]+q[IQ+1024>>0]+q[vQ+1280>>0]>>16)-128,M[bQ]=(q[tQ+1280>>0]+q[IQ+1536>>0]+q[vQ+1792>>0]>>16)-128}TA=HA(L,X,TA,F,Z),vA=HA(z,G,vA,W,U),mA=HA(M,G,mA,W,U),IA+=32}jA+=8}if(D>=0){var eQ=[];eQ[1]=D+1,eQ[0]=(1<"u")return new Uint8Array(V);return Buffer.from(V);var cB,mQ};function hA(XA){if(XA<=0)XA=1;if(XA>100)XA=100;if(w==XA)return;var PA=0;if(XA<50)PA=Math.floor(5000/XA);else PA=Math.floor(200-XA*2);g(PA),w=XA}function QQ(){var XA=new Date().getTime();if(!A)A=50;DA(),i(),p(),l(),hA(A);var PA=new Date().getTime()-XA}QQ()}if(typeof sz<"u")sz.exports=IJA;else if(typeof window<"u")window["jpeg-js"]=window["jpeg-js"]||{},window["jpeg-js"].encode=IJA;function IJA(A,Q){if(typeof Q>"u")Q=50;var B=new puQ(Q),Y=B.encode(A,Q);return{data:Y,width:A.width,height:A.height}}});var LJA=R((e1Y,pv)=>{var lv=function(){var Q=new Int32Array([0,1,8,16,9,2,3,10,17,24,32,25,18,11,4,5,12,19,26,33,40,48,41,34,27,20,13,6,7,14,21,28,35,42,49,56,57,50,43,36,29,22,15,23,30,37,44,51,58,59,52,45,38,31,39,46,53,60,61,54,47,55,62,63]),B=4017,Y=799,J=3406,C=2276,X=1567,G=3784,F=5793,W=2896;function Z(){}function U(D,L){var z=0,M=[],N,q,w=16;while(w>0&&!D[w-1])w--;M.push({children:[],index:0});var P=M[0],_;for(N=0;N0){if(M.length===0)throw Error("Could not recreate Huffman Table");P=M.pop()}P.index++,M.push(P);while(M.length<=N)M.push(_={children:[],index:0}),P.children[P.index]=_.children,P=_;z++}if(N+10)return p--,i>>p&1;if(i=D[L++],i==255){var LA=D[L++];if(LA)throw Error("unexpected marker: "+(i<<8|LA).toString(16))}return p=7,i>>>7}function d(LA){var IA=LA,jA;while((jA=l())!==null){if(IA=IA[jA],typeof IA==="number")return IA;if(typeof IA!=="object")throw Error("invalid huffman sequence")}return null}function x(LA){var IA=0;while(LA>0){var jA=l();if(jA===null)return;IA=IA<<1|jA,LA--}return IA}function b(LA){var IA=x(LA);if(IA>=1<>4;if(KB===0){if(zA<15)break;IQ+=16;continue}IQ+=zA;var uA=Q[IQ];IA[uA]=b(KB),IQ++}}function GA(LA,IA){var jA=d(LA.huffmanTableDC),tQ=jA===0?0:b(jA)<<_;IA[0]=LA.pred+=tQ}function VA(LA,IA){IA[0]|=l()<<_}var EA=0;function UA(LA,IA){if(EA>0){EA--;return}var jA=q,tQ=w;while(jA<=tQ){var IQ=d(LA.huffmanTableAC),vQ=IQ&15,KB=IQ>>4;if(vQ===0){if(KB<15){EA=x(KB)+(1<>4;if(uA===0)if(IQ<15)EA=x(IQ)+(1<=65488&&ZQ<=65495)L+=2;else break}return L-m}function E(D,L){var z=[],M=L.blocksPerLine,N=L.blocksPerColumn,q=M<<3,w=new Int32Array(64),P=new Uint8Array(64);function _(m,i,p){var l=L.quantizationTable,d,x,b,o,GA,VA,EA,UA,CA,QA=p,KA;for(KA=0;KA<64;KA++)QA[KA]=m[KA]*l[KA];for(KA=0;KA<8;++KA){var HA=8*KA;if(QA[1+HA]==0&&QA[2+HA]==0&&QA[3+HA]==0&&QA[4+HA]==0&&QA[5+HA]==0&&QA[6+HA]==0&&QA[7+HA]==0){CA=F*QA[0+HA]+512>>10,QA[0+HA]=CA,QA[1+HA]=CA,QA[2+HA]=CA,QA[3+HA]=CA,QA[4+HA]=CA,QA[5+HA]=CA,QA[6+HA]=CA,QA[7+HA]=CA;continue}d=F*QA[0+HA]+128>>8,x=F*QA[4+HA]+128>>8,b=QA[2+HA],o=QA[6+HA],GA=W*(QA[1+HA]-QA[7+HA])+128>>8,UA=W*(QA[1+HA]+QA[7+HA])+128>>8,VA=QA[3+HA]<<4,EA=QA[5+HA]<<4,CA=d-x+1>>1,d=d+x+1>>1,x=CA,CA=b*G+o*X+128>>8,b=b*X-o*G+128>>8,o=CA,CA=GA-EA+1>>1,GA=GA+EA+1>>1,EA=CA,CA=UA+VA+1>>1,VA=UA-VA+1>>1,UA=CA,CA=d-o+1>>1,d=d+o+1>>1,o=CA,CA=x-b+1>>1,x=x+b+1>>1,b=CA,CA=GA*C+UA*J+2048>>12,GA=GA*J-UA*C+2048>>12,UA=CA,CA=VA*Y+EA*B+2048>>12,VA=VA*B-EA*Y+2048>>12,EA=CA,QA[0+HA]=d+UA,QA[7+HA]=d-UA,QA[1+HA]=x+EA,QA[6+HA]=x-EA,QA[2+HA]=b+VA,QA[5+HA]=b-VA,QA[3+HA]=o+GA,QA[4+HA]=o-GA}for(KA=0;KA<8;++KA){var DA=KA;if(QA[8+DA]==0&&QA[16+DA]==0&&QA[24+DA]==0&&QA[32+DA]==0&&QA[40+DA]==0&&QA[48+DA]==0&&QA[56+DA]==0){CA=F*p[KA+0]+8192>>14,QA[0+DA]=CA,QA[8+DA]=CA,QA[16+DA]=CA,QA[24+DA]=CA,QA[32+DA]=CA,QA[40+DA]=CA,QA[48+DA]=CA,QA[56+DA]=CA;continue}d=F*QA[0+DA]+2048>>12,x=F*QA[32+DA]+2048>>12,b=QA[16+DA],o=QA[48+DA],GA=W*(QA[8+DA]-QA[56+DA])+2048>>12,UA=W*(QA[8+DA]+QA[56+DA])+2048>>12,VA=QA[24+DA],EA=QA[40+DA],CA=d-x+1>>1,d=d+x+1>>1,x=CA,CA=b*G+o*X+2048>>12,b=b*X-o*G+2048>>12,o=CA,CA=GA-EA+1>>1,GA=GA+EA+1>>1,EA=CA,CA=UA+VA+1>>1,VA=UA-VA+1>>1,UA=CA,CA=d-o+1>>1,d=d+o+1>>1,o=CA,CA=x-b+1>>1,x=x+b+1>>1,b=CA,CA=GA*C+UA*J+2048>>12,GA=GA*J-UA*C+2048>>12,UA=CA,CA=VA*Y+EA*B+2048>>12,VA=VA*B-EA*Y+2048>>12,EA=CA,QA[0+DA]=d+UA,QA[56+DA]=d-UA,QA[8+DA]=x+EA,QA[48+DA]=x-EA,QA[16+DA]=b+VA,QA[40+DA]=b-VA,QA[24+DA]=o+GA,QA[32+DA]=o-GA}for(KA=0;KA<64;++KA){var hA=128+(QA[KA]+8>>4);i[KA]=hA<0?0:hA>255?255:hA}}H(q*N*8);var O,k;for(var T=0;T255?255:D}Z.prototype={load:function(L){var z=new XMLHttpRequest;z.open("GET",L,!0),z.responseType="arraybuffer",z.onload=function(){var M=new Uint8Array(z.response||z.mozResponseArrayBuffer);if(this.parse(M),this.onload)this.onload()}.bind(this),z.send(null)},parse:function(L){var z=this.opts.maxResolutionInMP*1000*1000,M=0,N=L.length;function q(){var zA=L[M]<<8|L[M+1];return M+=2,zA}function w(){var zA=q(),uA=L.subarray(M,M+zA-2);return M+=uA.length,uA}function P(zA){var uA=1,MQ=1,bQ,eQ;for(eQ in zA.components)if(zA.components.hasOwnProperty(eQ)){if(bQ=zA.components[eQ],uA>4===0)for(l=0;l<64;l++){var UA=Q[l];EA[UA]=L[M++]}else if(VA>>4===1)for(l=0;l<64;l++){var UA=Q[l];EA[UA]=q()}else throw Error("DQT: invalid table spec");v[VA&15]=EA}break;case 65472:case 65473:case 65474:q(),T={},T.extended=m===65473,T.progressive=m===65474,T.precision=L[M++],T.scanLines=q(),T.samplesPerLine=q(),T.components={},T.componentsOrder=[];var CA=T.scanLines*T.samplesPerLine;if(CA>z){var QA=Math.ceil((CA-z)/1e6);throw Error(`maxResolutionInMP limit exceeded by ${QA}MP`)}var KA=L[M++],HA,DA=0,hA=0;for(p=0;p>4,XA=L[M+1]&15,PA=L[M+2];if(QQ<=0||XA<=0)throw Error("Invalid sampling factor, expected values above 0");T.componentsOrder.push(HA),T.components[HA]={h:QQ,v:XA,quantizationIdx:PA},M+=3}P(T),y.push(T);break;case 65476:var NA=q();for(p=2;p>4===0?g:h)[TA&15]=U(vA,ZQ)}break;case 65501:q(),S=q();break;case 65500:q(),q();break;case 65498:var NQ=q(),JQ=L[M++],SQ=[],LA;for(p=0;p>4],LA.huffmanTableAC=h[IA&15],SQ.push(LA)}var jA=L[M++],tQ=L[M++],IQ=L[M++],vQ=$(L,M,T,SQ,S,jA,tQ,IQ>>4,IQ&15,this.opts);M+=vQ;break;case 65535:if(L[M]!==255)M--;break;default:if(L[M-3]==255&&L[M-2]>=192&&L[M-2]<=254){M-=3;break}else if(m===224||m==225){if(i!==-1)throw Error(`first unknown JPEG marker at offset ${i.toString(16)}, second unknown JPEG marker ${m.toString(16)} at offset ${(M-1).toString(16)}`);i=M-1;let zA=q();if(L[M+zA-2]===255){M+=zA-2;break}}throw Error("unknown JPEG marker "+m.toString(16))}m=q()}if(y.length!=1)throw Error("only single frame JPEGs supported");for(var p=0;pV){var z=Math.ceil((L-V)/1024/1024);throw Error(`maxMemoryUsageInMB limit exceeded by at least ${z}MB`)}I=L}return Z.resetMaxMemoryUsage=function(D){I=0,V=D},Z.getBytesAllocated=function(){return I},Z.requestMemoryAllocation=H,Z}();if(typeof pv<"u")pv.exports=NJA;else if(typeof window<"u")window["jpeg-js"]=window["jpeg-js"]||{},window["jpeg-js"].decode=NJA;function NJA(A,Q={}){var B={colorTransform:void 0,useTArray:!1,formatAsRGBA:!0,tolerantDecoding:!0,maxResolutionInMP:100,maxMemoryUsageInMB:512},Y={...B,...Q},J=new Uint8Array(A),C=new lv;C.opts=Y,lv.resetMaxMemoryUsage(Y.maxMemoryUsageInMB*1024*1024),C.parse(J);var X=Y.formatAsRGBA?4:3,G=C.width*C.height*X;try{lv.requestMemoryAllocation(G);var F={width:C.width,height:C.height,exifBuffer:C.exifBuffer,data:Y.useTArray?new Uint8Array(G):Buffer.alloc(G)};if(C.comments.length>0)F.comments=C.comments}catch(W){if(W instanceof RangeError)throw Error("Could not allocate enough memory for the image. Required: "+G);if(W instanceof ReferenceError){if(W.message==="Buffer is not defined")throw Error("Buffer is not globally defined in this environment. Consider setting useTArray to true")}throw W}return C.copyToImageData(F,Y.formatAsRGBA),F}});var MJA=R((AXY,qJA)=>{var iuQ=DJA(),nuQ=LJA();qJA.exports={encode:iuQ,decode:nuQ}});var nv=R((BXY,RJA)=>{var suQ=u("util"),zJA=u("stream"),IC=RJA.exports=function(){zJA.call(this),this._buffers=[],this._buffered=0,this._reads=[],this._paused=!1,this._encoding="utf8",this.writable=!0};suQ.inherits(IC,zJA);IC.prototype.read=function(A,Q){this._reads.push({length:Math.abs(A),allowLess:A<0,func:Q}),process.nextTick(function(){if(this._process(),this._paused&&this._reads&&this._reads.length>0)this._paused=!1,this.emit("drain")}.bind(this))};IC.prototype.write=function(A,Q){if(!this.writable)return this.emit("error",Error("Stream not writable")),!1;let B;if(Buffer.isBuffer(A))B=A;else B=Buffer.from(A,Q||this._encoding);if(this._buffers.push(B),this._buffered+=B.length,this._process(),this._reads&&this._reads.length===0)this._paused=!0;return this.writable&&!this._paused};IC.prototype.end=function(A,Q){if(A)this.write(A,Q);if(this.writable=!1,!this._buffers)return;if(this._buffers.length===0)this._end();else this._buffers.push(null),this._process()};IC.prototype.destroySoon=IC.prototype.end;IC.prototype._end=function(){if(this._reads.length>0)this.emit("error",Error("Unexpected end of input"));this.destroy()};IC.prototype.destroy=function(){if(!this._buffers)return;this.writable=!1,this._reads=null,this._buffers=null,this.emit("close")};IC.prototype._processReadAllowingLess=function(A){this._reads.shift();let Q=this._buffers[0];if(Q.length>A.length)this._buffered-=A.length,this._buffers[0]=Q.slice(A.length),A.func.call(this,Q.slice(0,A.length));else this._buffered-=Q.length,this._buffers.shift(),A.func.call(this,Q)};IC.prototype._processRead=function(A){this._reads.shift();let Q=0,B=0,Y=Buffer.alloc(A.length);while(Q0)this._buffers.splice(0,B);this._buffered-=A.length,A.func.call(this,Y)};IC.prototype._process=function(){try{while(this._buffered>0&&this._reads&&this._reads.length>0){let A=this._reads[0];if(A.allowLess)this._processReadAllowingLess(A);else if(this._buffered>=A.length)this._processRead(A);else break}if(this._buffers&&!this.writable)this._end()}catch(A){this.emit("error",A)}}});var sv=R((ruQ)=>{var s6=[{x:[0],y:[0]},{x:[4],y:[0]},{x:[0,4],y:[4]},{x:[2,6],y:[0,4]},{x:[0,2,4,6],y:[2,6]},{x:[1,3,5,7],y:[0,2,4,6]},{x:[0,1,2,3,4,5,6,7],y:[1,3,5,7]}];ruQ.getImagePasses=function(A,Q){let B=[],Y=A%8,J=Q%8,C=(A-Y)/8,X=(Q-J)/8;for(let G=0;G0&&Z>0)B.push({width:W,height:Z,index:G})}return B};ruQ.getInterlaceIterator=function(A){return function(Q,B,Y){let J=Q%s6[Y].x.length,C=(Q-J)/s6[Y].x.length*8+s6[Y].x[J],X=B%s6[Y].y.length,G=(B-X)/s6[Y].y.length*8+s6[Y].y[X];return C*4+G*A*4}}});var rv=R((JXY,wJA)=>{wJA.exports=function(Q,B,Y){let J=Q+B-Y,C=Math.abs(J-Q),X=Math.abs(J-B),G=Math.abs(J-Y);if(C<=X&&C<=G)return Q;if(X<=G)return B;return Y}});var av=R((CXY,OJA)=>{var tuQ=sv(),euQ=rv();function jJA(A,Q,B){let Y=A*Q;if(B!==8)Y=Math.ceil(Y/(8/B));return Y}var f4=OJA.exports=function(A,Q){let{width:B,height:Y,interlace:J,bpp:C,depth:X}=A;if(this.read=Q.read,this.write=Q.write,this.complete=Q.complete,this._imageIndex=0,this._images=[],J){let G=tuQ.getImagePasses(B,Y);for(let F=0;FJ?Q[C-Y]:0;Q[C]=X+G}};f4.prototype._unFilterType2=function(A,Q,B){let Y=this._lastLine;for(let J=0;JJ?Q[X-Y]:0,Z=Math.floor((W+F)/2);Q[X]=G+Z}};f4.prototype._unFilterType4=function(A,Q,B){let Y=this._xComparison,J=Y-1,C=this._lastLine;for(let X=0;XJ?Q[X-Y]:0,Z=X>J&&C?C[X-Y]:0,U=euQ(W,F,Z);Q[X]=G+U}};f4.prototype._reverseFilterLine=function(A){let Q=A[0],B,Y=this._images[this._imageIndex],J=Y.byteWidth;if(Q===0)B=A.slice(1,J+1);else switch(B=Buffer.alloc(J),Q){case 1:this._unFilterType1(A,B,J);break;case 2:this._unFilterType2(A,B,J);break;case 3:this._unFilterType3(A,B,J);break;case 4:this._unFilterType4(A,B,J);break;default:throw Error("Unrecognised filter type - "+Q)}if(this.write(B),Y.lineIndex++,Y.lineIndex>=Y.height)this._lastLine=null,this._imageIndex++,Y=this._images[this._imageIndex];else this._lastLine=B;if(Y)this.read(Y.byteWidth+1,this._reverseFilterLine.bind(this));else this._lastLine=null,this.complete()}});var SJA=R((XXY,TJA)=>{var AdQ=u("util"),PJA=nv(),QdQ=av(),BdQ=TJA.exports=function(A){PJA.call(this);let Q=[],B=this;this._filter=new QdQ(A,{read:this.read.bind(this),write:function(Y){Q.push(Y)},complete:function(){B.emit("complete",Buffer.concat(Q))}}),this._filter.start()};AdQ.inherits(BdQ,PJA)});var b4=R((GXY,kJA)=>{kJA.exports={PNG_SIGNATURE:[137,80,78,71,13,10,26,10],TYPE_IHDR:1229472850,TYPE_IEND:1229278788,TYPE_IDAT:1229209940,TYPE_PLTE:1347179589,TYPE_tRNS:1951551059,TYPE_gAMA:1732332865,COLORTYPE_GRAYSCALE:0,COLORTYPE_PALETTE:1,COLORTYPE_COLOR:2,COLORTYPE_ALPHA:4,COLORTYPE_PALETTE_COLOR:3,COLORTYPE_COLOR_ALPHA:6,COLORTYPE_TO_BPP_MAP:{0:1,2:3,3:1,4:2,6:4},GAMMA_DIVISION:1e5}});var ev=R((FXY,_JA)=>{var ov=[];(function(){for(let A=0;A<256;A++){let Q=A;for(let B=0;B<8;B++)if(Q&1)Q=3988292384^Q>>>1;else Q=Q>>>1;ov[A]=Q}})();var tv=_JA.exports=function(){this._crc=-1};tv.prototype.write=function(A){for(let Q=0;Q>>8;return!0};tv.prototype.crc32=function(){return this._crc^-1};tv.crc32=function(A){let Q=-1;for(let B=0;B>>8;return Q^-1}});var Ay=R((WXY,vJA)=>{var wY=b4(),YdQ=ev(),fY=vJA.exports=function(A,Q){this._options=A,A.checkCRC=A.checkCRC!==!1,this._hasIHDR=!1,this._hasIEND=!1,this._emittedHeadersFinished=!1,this._palette=[],this._colorType=0,this._chunks={},this._chunks[wY.TYPE_IHDR]=this._handleIHDR.bind(this),this._chunks[wY.TYPE_IEND]=this._handleIEND.bind(this),this._chunks[wY.TYPE_IDAT]=this._handleIDAT.bind(this),this._chunks[wY.TYPE_PLTE]=this._handlePLTE.bind(this),this._chunks[wY.TYPE_tRNS]=this._handleTRNS.bind(this),this._chunks[wY.TYPE_gAMA]=this._handleGAMA.bind(this),this.read=Q.read,this.error=Q.error,this.metadata=Q.metadata,this.gamma=Q.gamma,this.transColor=Q.transColor,this.palette=Q.palette,this.parsed=Q.parsed,this.inflateData=Q.inflateData,this.finished=Q.finished,this.simpleTransparency=Q.simpleTransparency,this.headersFinished=Q.headersFinished||function(){}};fY.prototype.start=function(){this.read(wY.PNG_SIGNATURE.length,this._parseSignature.bind(this))};fY.prototype._parseSignature=function(A){let Q=wY.PNG_SIGNATURE;for(let B=0;Bthis._palette.length){this.error(Error("More transparent colors than palette size"));return}for(let Q=0;Q0)this._handleIDAT(B);else this._handleChunkEnd()};fY.prototype._handleIEND=function(A){this.read(A,this._parseIEND.bind(this))};fY.prototype._parseIEND=function(A){if(this._crc.write(A),this._hasIEND=!0,this._handleChunkEnd(),this.finished)this.finished()}});var Qy=R((WdQ)=>{var yJA=sv(),JdQ=[function(){},function(A,Q,B,Y){if(Y===Q.length)throw Error("Ran out of data");let J=Q[Y];A[B]=J,A[B+1]=J,A[B+2]=J,A[B+3]=255},function(A,Q,B,Y){if(Y+1>=Q.length)throw Error("Ran out of data");let J=Q[Y];A[B]=J,A[B+1]=J,A[B+2]=J,A[B+3]=Q[Y+1]},function(A,Q,B,Y){if(Y+2>=Q.length)throw Error("Ran out of data");A[B]=Q[Y],A[B+1]=Q[Y+1],A[B+2]=Q[Y+2],A[B+3]=255},function(A,Q,B,Y){if(Y+3>=Q.length)throw Error("Ran out of data");A[B]=Q[Y],A[B+1]=Q[Y+1],A[B+2]=Q[Y+2],A[B+3]=Q[Y+3]}],CdQ=[function(){},function(A,Q,B,Y){let J=Q[0];A[B]=J,A[B+1]=J,A[B+2]=J,A[B+3]=Y},function(A,Q,B){let Y=Q[0];A[B]=Y,A[B+1]=Y,A[B+2]=Y,A[B+3]=Q[1]},function(A,Q,B,Y){A[B]=Q[0],A[B+1]=Q[1],A[B+2]=Q[2],A[B+3]=Y},function(A,Q,B){A[B]=Q[0],A[B+1]=Q[1],A[B+2]=Q[2],A[B+3]=Q[3]}];function XdQ(A,Q){let B=[],Y=0;function J(){if(Y===A.length)throw Error("Ran out of data");let C=A[Y];Y++;let X,G,F,W,Z,U,$,E;switch(Q){default:throw Error("unrecognised depth");case 16:$=A[Y],Y++,B.push((C<<8)+$);break;case 4:$=C&15,E=C>>4,B.push(E,$);break;case 2:Z=C&3,U=C>>2&3,$=C>>4&3,E=C>>6&3,B.push(E,$,U,Z);break;case 1:X=C&1,G=C>>1&1,F=C>>2&1,W=C>>3&1,Z=C>>4&1,U=C>>5&1,$=C>>6&1,E=C>>7&1,B.push(E,$,U,Z,W,F,G,X);break}}return{get:function(C){while(B.length{function $dQ(A,Q,B,Y,J){let C=0;for(let X=0;X{var KdQ=u("util"),Yy=u("zlib"),hJA=nv(),VdQ=SJA(),IdQ=Ay(),HdQ=Qy(),DdQ=By(),w1=xJA.exports=function(A){hJA.call(this),this._parser=new IdQ(A,{read:this.read.bind(this),error:this._handleError.bind(this),metadata:this._handleMetaData.bind(this),gamma:this.emit.bind(this,"gamma"),palette:this._handlePalette.bind(this),transColor:this._handleTransColor.bind(this),finished:this._finished.bind(this),inflateData:this._inflateData.bind(this),simpleTransparency:this._simpleTransparency.bind(this),headersFinished:this._headersFinished.bind(this)}),this._options=A,this.writable=!0,this._parser.start()};KdQ.inherits(w1,hJA);w1.prototype._handleError=function(A){if(this.emit("error",A),this.writable=!1,this.destroy(),this._inflate&&this._inflate.destroy)this._inflate.destroy();if(this._filter)this._filter.destroy(),this._filter.on("error",function(){});this.errord=!0};w1.prototype._inflateData=function(A){if(!this._inflate)if(this._bitmapInfo.interlace)this._inflate=Yy.createInflate(),this._inflate.on("error",this.emit.bind(this,"error")),this._filter.on("complete",this._complete.bind(this)),this._inflate.pipe(this._filter);else{let B=((this._bitmapInfo.width*this._bitmapInfo.bpp*this._bitmapInfo.depth+7>>3)+1)*this._bitmapInfo.height,Y=Math.max(B,Yy.Z_MIN_CHUNK);this._inflate=Yy.createInflate({chunkSize:Y});let J=B,C=this.emit.bind(this,"error");this._inflate.on("error",function(G){if(!J)return;C(G)}),this._filter.on("complete",this._complete.bind(this));let X=this._filter.write.bind(this._filter);this._inflate.on("data",function(G){if(!J)return;if(G.length>J)G=G.slice(0,J);J-=G.length,X(G)}),this._inflate.on("end",this._filter.end.bind(this._filter))}this._inflate.write(A)};w1.prototype._handleMetaData=function(A){this._metaData=A,this._bitmapInfo=Object.create(A),this._filter=new VdQ(this._bitmapInfo)};w1.prototype._handleTransColor=function(A){this._bitmapInfo.transColor=A};w1.prototype._handlePalette=function(A){this._bitmapInfo.palette=A};w1.prototype._simpleTransparency=function(){this._metaData.alpha=!0};w1.prototype._headersFinished=function(){this.emit("metadata",this._metaData)};w1.prototype._finished=function(){if(this.errord)return;if(!this._inflate)this.emit("error","No Inflate block");else this._inflate.end()};w1.prototype._complete=function(A){if(this.errord)return;let Q;try{let B=HdQ.dataToBitMap(A,this._bitmapInfo);Q=DdQ(B,this._bitmapInfo,this._options.skipRescale),B=null}catch(B){this._handleError(B);return}this.emit("parsed",Q)}});var mJA=R((EXY,bJA)=>{var e8=b4();bJA.exports=function(A,Q,B,Y){let J=[e8.COLORTYPE_COLOR_ALPHA,e8.COLORTYPE_ALPHA].indexOf(Y.colorType)!==-1;if(Y.colorType===Y.inputColorType){let K=function(){let I=new ArrayBuffer(2);return new DataView(I).setInt16(0,256,!0),new Int16Array(I)[0]!==256}();if(Y.bitDepth===8||Y.bitDepth===16&&K)return A}let C=Y.bitDepth!==16?A:new Uint16Array(A.buffer),X=255,G=e8.COLORTYPE_TO_BPP_MAP[Y.inputColorType];if(G===4&&!Y.inputHasAlpha)G=3;let F=e8.COLORTYPE_TO_BPP_MAP[Y.colorType];if(Y.bitDepth===16)X=65535,F*=2;let W=Buffer.alloc(Q*B*F),Z=0,U=0,$=Y.bgColor||{};if($.red===void 0)$.red=X;if($.green===void 0)$.green=X;if($.blue===void 0)$.blue=X;function E(){let K,I,V,H=X;switch(Y.inputColorType){case e8.COLORTYPE_COLOR_ALPHA:H=C[Z+3],K=C[Z],I=C[Z+1],V=C[Z+2];break;case e8.COLORTYPE_COLOR:K=C[Z],I=C[Z+1],V=C[Z+2];break;case e8.COLORTYPE_ALPHA:H=C[Z+1],K=C[Z],I=K,V=K;break;case e8.COLORTYPE_GRAYSCALE:K=C[Z],I=K,V=K;break;default:throw Error("input color type:"+Y.inputColorType+" is not supported at present")}if(Y.inputHasAlpha){if(!J)H/=X,K=Math.min(Math.max(Math.round((1-H)*$.red+H*K),0),X),I=Math.min(Math.max(Math.round((1-H)*$.green+H*I),0),X),V=Math.min(Math.max(Math.round((1-H)*$.blue+H*V),0),X)}return{red:K,green:I,blue:V,alpha:H}}for(let K=0;K{var uJA=rv();function NdQ(A,Q,B,Y,J){for(let C=0;C=C?A[Q+X-C]:0,F=A[Q+X]-G;Y[J+X]=F}}function MdQ(A,Q,B,Y){let J=0;for(let C=0;C=Y?A[Q+C-Y]:0,G=A[Q+C]-X;J+=Math.abs(G)}return J}function zdQ(A,Q,B,Y,J){for(let C=0;C0?A[Q+C-B]:0,G=A[Q+C]-X;Y[J+C]=G}}function RdQ(A,Q,B){let Y=0,J=Q+B;for(let C=Q;C0?A[C-B]:0,G=A[C]-X;Y+=Math.abs(G)}return Y}function wdQ(A,Q,B,Y,J,C){for(let X=0;X=C?A[Q+X-C]:0,F=Q>0?A[Q+X-B]:0,W=A[Q+X]-(G+F>>1);Y[J+X]=W}}function jdQ(A,Q,B,Y){let J=0;for(let C=0;C=Y?A[Q+C-Y]:0,G=Q>0?A[Q+C-B]:0,F=A[Q+C]-(X+G>>1);J+=Math.abs(F)}return J}function OdQ(A,Q,B,Y,J,C){for(let X=0;X=C?A[Q+X-C]:0,F=Q>0?A[Q+X-B]:0,W=Q>0&&X>=C?A[Q+X-(B+C)]:0,Z=A[Q+X]-uJA(G,F,W);Y[J+X]=Z}}function PdQ(A,Q,B,Y){let J=0;for(let C=0;C=Y?A[Q+C-Y]:0,G=Q>0?A[Q+C-B]:0,F=Q>0&&C>=Y?A[Q+C-(B+Y)]:0,W=A[Q+C]-uJA(X,G,F);J+=Math.abs(W)}return J}var TdQ={0:NdQ,1:qdQ,2:zdQ,3:wdQ,4:OdQ},SdQ={0:LdQ,1:MdQ,2:RdQ,3:jdQ,4:PdQ};dJA.exports=function(A,Q,B,Y,J){let C;if(!("filterType"in Y)||Y.filterType===-1)C=[0,1,2,3,4];else if(typeof Y.filterType==="number")C=[Y.filterType];else throw Error("unrecognised filter types");if(Y.bitDepth===16)J*=2;let X=Q*J,G=0,F=0,W=Buffer.alloc((X+1)*B),Z=C[0];for(let U=0;U1){let $=1/0;for(let E=0;E{var KJ=b4(),kdQ=ev(),_dQ=mJA(),vdQ=cJA(),ydQ=u("zlib"),r6=lJA.exports=function(A){if(this._options=A,A.deflateChunkSize=A.deflateChunkSize||32768,A.deflateLevel=A.deflateLevel!=null?A.deflateLevel:9,A.deflateStrategy=A.deflateStrategy!=null?A.deflateStrategy:3,A.inputHasAlpha=A.inputHasAlpha!=null?A.inputHasAlpha:!0,A.deflateFactory=A.deflateFactory||ydQ.createDeflate,A.bitDepth=A.bitDepth||8,A.colorType=typeof A.colorType==="number"?A.colorType:KJ.COLORTYPE_COLOR_ALPHA,A.inputColorType=typeof A.inputColorType==="number"?A.inputColorType:KJ.COLORTYPE_COLOR_ALPHA,[KJ.COLORTYPE_GRAYSCALE,KJ.COLORTYPE_COLOR,KJ.COLORTYPE_COLOR_ALPHA,KJ.COLORTYPE_ALPHA].indexOf(A.colorType)===-1)throw Error("option color type:"+A.colorType+" is not supported at present");if([KJ.COLORTYPE_GRAYSCALE,KJ.COLORTYPE_COLOR,KJ.COLORTYPE_COLOR_ALPHA,KJ.COLORTYPE_ALPHA].indexOf(A.inputColorType)===-1)throw Error("option input color type:"+A.inputColorType+" is not supported at present");if(A.bitDepth!==8&&A.bitDepth!==16)throw Error("option bit depth:"+A.bitDepth+" is not supported at present")};r6.prototype.getDeflateOptions=function(){return{chunkSize:this._options.deflateChunkSize,level:this._options.deflateLevel,strategy:this._options.deflateStrategy}};r6.prototype.createDeflate=function(){return this._options.deflateFactory(this.getDeflateOptions())};r6.prototype.filterData=function(A,Q,B){let Y=_dQ(A,Q,B,this._options),J=KJ.COLORTYPE_TO_BPP_MAP[this._options.colorType];return vdQ(Y,Q,B,this._options,J)};r6.prototype._packChunk=function(A,Q){let B=Q?Q.length:0,Y=Buffer.alloc(B+12);if(Y.writeUInt32BE(B,0),Y.writeUInt32BE(A,4),Q)Q.copy(Y,8);return Y.writeInt32BE(kdQ.crc32(Y.slice(4,Y.length-4)),Y.length-4),Y};r6.prototype.packGAMA=function(A){let Q=Buffer.alloc(4);return Q.writeUInt32BE(Math.floor(A*KJ.GAMMA_DIVISION),0),this._packChunk(KJ.TYPE_gAMA,Q)};r6.prototype.packIHDR=function(A,Q){let B=Buffer.alloc(13);return B.writeUInt32BE(A,0),B.writeUInt32BE(Q,4),B[8]=this._options.bitDepth,B[9]=this._options.colorType,B[10]=0,B[11]=0,B[12]=0,this._packChunk(KJ.TYPE_IHDR,B)};r6.prototype.packIDAT=function(A){return this._packChunk(KJ.TYPE_IDAT,A)};r6.prototype.packIEND=function(){return this._packChunk(KJ.TYPE_IEND,null)}});var sJA=R((IXY,nJA)=>{var gdQ=u("util"),pJA=u("stream"),hdQ=b4(),xdQ=Jy(),iJA=nJA.exports=function(A){pJA.call(this);let Q=A||{};this._packer=new xdQ(Q),this._deflate=this._packer.createDeflate(),this.readable=!0};gdQ.inherits(iJA,pJA);iJA.prototype.pack=function(A,Q,B,Y){if(this.emit("data",Buffer.from(hdQ.PNG_SIGNATURE)),this.emit("data",this._packer.packIHDR(Q,B)),Y)this.emit("data",this._packer.packGAMA(Y));let J=this._packer.filterData(A,Q,B);this._deflate.on("error",this.emit.bind(this,"error")),this._deflate.on("data",function(C){this.emit("data",this._packer.packIDAT(C))}.bind(this)),this._deflate.on("end",function(){this.emit("data",this._packer.packIEND()),this.emit("end")}.bind(this)),this._deflate.end(J)}});var A9A=R((HI,eJA)=>{var rJA=u("assert").ok,m4=u("zlib"),fdQ=u("util"),aJA=u("buffer").kMaxLength;function jW(A){if(!(this instanceof jW))return new jW(A);if(A&&A.chunkSize=0,"have should not go down"),V>0){let H=Y._buffer.slice(Y._offset,Y._offset+V);if(Y._offset+=V,H.length>X)H=H.slice(0,X);if(F.push(H),W+=H.length,X-=H.length,X===0)return!1}if(I===0||Y._offset>=Y._chunkSize)C=Y._chunkSize,Y._offset=0,Y._buffer=Buffer.allocUnsafe(Y._chunkSize);if(I===0)return G+=J-K,J=K,!0;return!1}rJA(this._handle,"zlib binding closed");let $;do $=this._handle.writeSync(Q,A,G,J,this._buffer,this._offset,C),$=$||this._writeState;while(!this._hadError&&U($[0],$[1]));if(this._hadError)throw Z;if(W>=aJA)throw oJA(this),RangeError("Cannot create final Buffer. It would be larger than 0x"+aJA.toString(16)+" bytes");let E=Buffer.concat(F,W);return oJA(this),E};fdQ.inherits(jW,m4.Inflate);function mdQ(A,Q){if(typeof Q==="string")Q=Buffer.from(Q);if(!(Q instanceof Buffer))throw TypeError("Not a string or buffer");let B=A._finishFlushFlag;if(B==null)B=m4.Z_FINISH;return A._processChunk(Q,B)}function tJA(A,Q){return mdQ(new jW(Q),A)}eJA.exports=HI=tJA;HI.Inflate=jW;HI.createInflate=bdQ;HI.inflateSync=tJA});var Cy=R((HXY,B9A)=>{var Q9A=B9A.exports=function(A){this._buffer=A,this._reads=[]};Q9A.prototype.read=function(A,Q){this._reads.push({length:Math.abs(A),allowLess:A<0,func:Q})};Q9A.prototype.process=function(){while(this._reads.length>0&&this._buffer.length){let A=this._reads[0];if(this._buffer.length&&(this._buffer.length>=A.length||A.allowLess)){this._reads.shift();let Q=this._buffer;this._buffer=Q.slice(A.length),A.func.call(this,Q.slice(0,A.length))}else break}if(this._reads.length>0)throw Error("There are some read requests waitng on finished stream");if(this._buffer.length>0)throw Error("unrecognised content at end of stream")}});var Y9A=R((cdQ)=>{var udQ=Cy(),ddQ=av();cdQ.process=function(A,Q){let B=[],Y=new udQ(A);return new ddQ(Q,{read:Y.read.bind(Y),write:function(C){B.push(C)},complete:function(){}}).start(),Y.process(),Buffer.concat(B)}});var G9A=R((NXY,X9A)=>{var J9A=!0,C9A=u("zlib"),pdQ=A9A();if(!C9A.deflateSync)J9A=!1;var idQ=Cy(),ndQ=Y9A(),sdQ=Ay(),rdQ=Qy(),adQ=By();X9A.exports=function(A,Q){if(!J9A)throw Error("To use the sync capability of this library in old node versions, please pin pngjs to v2.3.0");let B;function Y(z){B=z}let J;function C(z){J=z}function X(z){J.transColor=z}function G(z){J.palette=z}function F(){J.alpha=!0}let W;function Z(z){W=z}let U=[];function $(z){U.push(z)}let E=new idQ(A);if(new sdQ(Q,{read:E.read.bind(E),error:Y,metadata:C,gamma:Z,palette:G,transColor:X,inflateData:$,simpleTransparency:F}).start(),E.process(),B)throw B;let I=Buffer.concat(U);U.length=0;let V;if(J.interlace)V=C9A.inflateSync(I);else{let M=((J.width*J.bpp*J.depth+7>>3)+1)*J.height;V=pdQ(I,{chunkSize:M,maxLength:M})}if(I=null,!V||!V.length)throw Error("bad png - invalid inflate data response");let H=ndQ.process(V,J);I=null;let D=rdQ.dataToBitMap(H,J);H=null;let L=adQ(D,J,Q.skipRescale);return J.data=L,J.gamma=W||0,J}});var $9A=R((LXY,Z9A)=>{var F9A=!0,W9A=u("zlib");if(!W9A.deflateSync)F9A=!1;var odQ=b4(),tdQ=Jy();Z9A.exports=function(A,Q){if(!F9A)throw Error("To use the sync capability of this library in old node versions, please pin pngjs to v2.3.0");let Y=new tdQ(Q||{}),J=[];if(J.push(Buffer.from(odQ.PNG_SIGNATURE)),J.push(Y.packIHDR(A.width,A.height)),A.gamma)J.push(Y.packGAMA(A.gamma));let C=Y.filterData(A.data,A.width,A.height),X=W9A.deflateSync(C,Y.getDeflateOptions());if(C=null,!X||!X.length)throw Error("bad png - invalid compressed data response");return J.push(Y.packIDAT(X)),J.push(Y.packIEND()),Buffer.concat(J)}});var U9A=R((QcQ)=>{var edQ=G9A(),AcQ=$9A();QcQ.read=function(A,Q){return edQ(A,Q||{})};QcQ.write=function(A,Q){return AcQ(A,Q)}});var K9A=R((FcQ)=>{var JcQ=u("util"),E9A=u("stream"),CcQ=fJA(),XcQ=sJA(),GcQ=U9A(),cJ=FcQ.PNG=function(A){if(E9A.call(this),A=A||{},this.width=A.width|0,this.height=A.height|0,this.data=this.width>0&&this.height>0?Buffer.alloc(4*this.width*this.height):null,A.fill&&this.data)this.data.fill(0);this.gamma=0,this.readable=this.writable=!0,this._parser=new CcQ(A),this._parser.on("error",this.emit.bind(this,"error")),this._parser.on("close",this._handleClose.bind(this)),this._parser.on("metadata",this._metadata.bind(this)),this._parser.on("gamma",this._gamma.bind(this)),this._parser.on("parsed",function(Q){this.data=Q,this.emit("parsed",Q)}.bind(this)),this._packer=new XcQ(A),this._packer.on("data",this.emit.bind(this,"data")),this._packer.on("end",this.emit.bind(this,"end")),this._parser.on("close",this._handleClose.bind(this)),this._packer.on("error",this.emit.bind(this,"error"))};JcQ.inherits(cJ,E9A);cJ.sync=GcQ;cJ.prototype.pack=function(){if(!this.data||!this.data.length)return this.emit("error","No data provided"),this;return process.nextTick(function(){this._packer.pack(this.data,this.width,this.height,this.gamma)}.bind(this)),this};cJ.prototype.parse=function(A,Q){if(Q){let B,Y;B=function(J){this.removeListener("error",Y),this.data=J,Q(null,this)}.bind(this),Y=function(J){this.removeListener("parsed",B),Q(J,null)}.bind(this),this.once("parsed",B),this.once("error",Y)}return this.end(A),this};cJ.prototype.write=function(A){return this._parser.write(A),!0};cJ.prototype.end=function(A){this._parser.end(A)};cJ.prototype._metadata=function(A){this.width=A.width,this.height=A.height,this.emit("metadata",A)};cJ.prototype._gamma=function(A){this.gamma=A};cJ.prototype._handleClose=function(){if(!this._parser.writable&&!this._packer.readable)this.emit("close")};cJ.bitblt=function(A,Q,B,Y,J,C,X,G){if(B|=0,Y|=0,J|=0,C|=0,X|=0,G|=0,B>A.width||Y>A.height||B+J>A.width||Y+C>A.height)throw Error("bitblt reading outside image");if(X>Q.width||G>Q.height||X+J>Q.width||G+C>Q.height)throw Error("bitblt writing outside image");for(let F=0;F{var UcQ=typeof Uint8Array<"u"&&typeof Uint16Array<"u"&&typeof Int32Array<"u";function EcQ(A,Q){return Object.prototype.hasOwnProperty.call(A,Q)}Xy.assign=function(A){var Q=Array.prototype.slice.call(arguments,1);while(Q.length){var B=Q.shift();if(!B)continue;if(typeof B!=="object")throw TypeError(B+"must be non-object");for(var Y in B)if(EcQ(B,Y))A[Y]=B[Y]}return A};Xy.shrinkBuf=function(A,Q){if(A.length===Q)return A;if(A.subarray)return A.subarray(0,Q);return A.length=Q,A};var KcQ={arraySet:function(A,Q,B,Y,J){if(Q.subarray&&A.subarray){A.set(Q.subarray(B,B+Y),J);return}for(var C=0;C{var HcQ=nX(),DcQ=4,I9A=0,H9A=1,NcQ=2;function d4(A){var Q=A.length;while(--Q>=0)A[Q]=0}var LcQ=0,z9A=1,qcQ=2,McQ=3,zcQ=258,Ky=29,RI=256,LI=RI+1+Ky,u4=30,Vy=19,R9A=2*LI+1,OW=15,Fy=16,RcQ=7,Iy=256,w9A=16,j9A=17,O9A=18,Uy=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],ez=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],wcQ=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],P9A=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],jcQ=512,sX=Array((LI+2)*2);d4(sX);var NI=Array(u4*2);d4(NI);var qI=Array(jcQ);d4(qI);var MI=Array(zcQ-McQ+1);d4(MI);var Hy=Array(Ky);d4(Hy);var A2=Array(u4);d4(A2);function Wy(A,Q,B,Y,J){this.static_tree=A,this.extra_bits=Q,this.extra_base=B,this.elems=Y,this.max_length=J,this.has_stree=A&&A.length}var T9A,S9A,k9A;function Zy(A,Q){this.dyn_tree=A,this.max_code=0,this.stat_desc=Q}function _9A(A){return A<256?qI[A]:qI[256+(A>>>7)]}function zI(A,Q){A.pending_buf[A.pending++]=Q&255,A.pending_buf[A.pending++]=Q>>>8&255}function M9(A,Q,B){if(A.bi_valid>Fy-B)A.bi_buf|=Q<>Fy-A.bi_valid,A.bi_valid+=B-Fy;else A.bi_buf|=Q<>>=1,B<<=1;while(--Q>0);return B>>>1}function OcQ(A){if(A.bi_valid===16)zI(A,A.bi_buf),A.bi_buf=0,A.bi_valid=0;else if(A.bi_valid>=8)A.pending_buf[A.pending++]=A.bi_buf&255,A.bi_buf>>=8,A.bi_valid-=8}function PcQ(A,Q){var{dyn_tree:B,max_code:Y}=Q,J=Q.stat_desc.static_tree,C=Q.stat_desc.has_stree,X=Q.stat_desc.extra_bits,G=Q.stat_desc.extra_base,F=Q.stat_desc.max_length,W,Z,U,$,E,K,I=0;for($=0;$<=OW;$++)A.bl_count[$]=0;B[A.heap[A.heap_max]*2+1]=0;for(W=A.heap_max+1;WF)$=F,I++;if(B[Z*2+1]=$,Z>Y)continue;if(A.bl_count[$]++,E=0,Z>=G)E=X[Z-G];if(K=B[Z*2],A.opt_len+=K*($+E),C)A.static_len+=K*(J[Z*2+1]+E)}if(I===0)return;do{$=F-1;while(A.bl_count[$]===0)$--;A.bl_count[$]--,A.bl_count[$+1]+=2,A.bl_count[F]--,I-=2}while(I>0);for($=F;$!==0;$--){Z=A.bl_count[$];while(Z!==0){if(U=A.heap[--W],U>Y)continue;if(B[U*2+1]!==$)A.opt_len+=($-B[U*2+1])*B[U*2],B[U*2+1]=$;Z--}}}function y9A(A,Q,B){var Y=Array(OW+1),J=0,C,X;for(C=1;C<=OW;C++)Y[C]=J=J+B[C-1]<<1;for(X=0;X<=Q;X++){var G=A[X*2+1];if(G===0)continue;A[X*2]=v9A(Y[G]++,G)}}function TcQ(){var A,Q,B,Y,J,C=Array(OW+1);B=0;for(Y=0;Y>=7;for(;Y8)zI(A,A.bi_buf);else if(A.bi_valid>0)A.pending_buf[A.pending++]=A.bi_buf;A.bi_buf=0,A.bi_valid=0}function ScQ(A,Q,B,Y){if(h9A(A),Y)zI(A,B),zI(A,~B);HcQ.arraySet(A.pending_buf,A.window,Q,B,A.pending),A.pending+=B}function D9A(A,Q,B,Y){var J=Q*2,C=B*2;return A[J]>1;X>=1;X--)$y(A,B,X);W=C;do X=A.heap[1],A.heap[1]=A.heap[A.heap_len--],$y(A,B,1),G=A.heap[1],A.heap[--A.heap_max]=X,A.heap[--A.heap_max]=G,B[W*2]=B[X*2]+B[G*2],A.depth[W]=(A.depth[X]>=A.depth[G]?A.depth[X]:A.depth[G])+1,B[X*2+1]=B[G*2+1]=W,A.heap[1]=W++,$y(A,B,1);while(A.heap_len>=2);A.heap[--A.heap_max]=A.heap[1],PcQ(A,Q),y9A(B,F,A.bl_count)}function L9A(A,Q,B){var Y,J=-1,C,X=Q[1],G=0,F=7,W=4;if(X===0)F=138,W=3;Q[(B+1)*2+1]=65535;for(Y=0;Y<=B;Y++){if(C=X,X=Q[(Y+1)*2+1],++G=3;Q--)if(A.bl_tree[P9A[Q]*2+1]!==0)break;return A.opt_len+=3*(Q+1)+5+5+4,Q}function _cQ(A,Q,B,Y){var J;M9(A,Q-257,5),M9(A,B-1,5),M9(A,Y-4,4);for(J=0;J>>=1)if(Q&1&&A.dyn_ltree[B*2]!==0)return I9A;if(A.dyn_ltree[18]!==0||A.dyn_ltree[20]!==0||A.dyn_ltree[26]!==0)return H9A;for(B=32;B0){if(A.strm.data_type===NcQ)A.strm.data_type=vcQ(A);if(Ey(A,A.l_desc),Ey(A,A.d_desc),X=kcQ(A),J=A.opt_len+3+7>>>3,C=A.static_len+3+7>>>3,C<=J)J=C}else J=C=B+5;if(B+4<=J&&Q!==-1)x9A(A,Q,B,Y);else if(A.strategy===DcQ||C===J)M9(A,(z9A<<1)+(Y?1:0),3),N9A(A,sX,NI);else M9(A,(qcQ<<1)+(Y?1:0),3),_cQ(A,A.l_desc.max_code+1,A.d_desc.max_code+1,X+1),N9A(A,A.dyn_ltree,A.dyn_dtree);if(g9A(A),Y)h9A(A)}function xcQ(A,Q,B){if(A.pending_buf[A.d_buf+A.last_lit*2]=Q>>>8&255,A.pending_buf[A.d_buf+A.last_lit*2+1]=Q&255,A.pending_buf[A.l_buf+A.last_lit]=B&255,A.last_lit++,Q===0)A.dyn_ltree[B*2]++;else A.matches++,Q--,A.dyn_ltree[(MI[B]+RI+1)*2]++,A.dyn_dtree[_9A(Q)*2]++;return A.last_lit===A.lit_bufsize-1}fcQ._tr_init=ycQ;fcQ._tr_stored_block=x9A;fcQ._tr_flush_block=hcQ;fcQ._tr_tally=xcQ;fcQ._tr_align=gcQ});var Dy=R((SXY,b9A)=>{function lcQ(A,Q,B,Y){var J=A&65535|0,C=A>>>16&65535|0,X=0;while(B!==0){X=B>2000?2000:B,B-=X;do J=J+Q[Y++]|0,C=C+J|0;while(--X);J%=65521,C%=65521}return J|C<<16|0}b9A.exports=lcQ});var Ny=R((kXY,m9A)=>{function pcQ(){var A,Q=[];for(var B=0;B<256;B++){A=B;for(var Y=0;Y<8;Y++)A=A&1?3988292384^A>>>1:A>>>1;Q[B]=A}return Q}var icQ=pcQ();function ncQ(A,Q,B,Y){var J=icQ,C=Y+B;A^=-1;for(var X=Y;X>>8^J[(A^Q[X])&255];return A^-1}m9A.exports=ncQ});var Q2=R((_XY,u9A)=>{u9A.exports={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}});var a9A=R((jlQ)=>{var lJ=nX(),A5=f9A(),p9A=Dy(),a6=Ny(),scQ=Q2(),kW=0,rcQ=1,acQ=3,Q7=4,d9A=5,P1=0,c9A=1,Q5=-2,ocQ=-3,Ly=-5,tcQ=-1,ecQ=1,B2=2,AlQ=3,QlQ=4,BlQ=0,YlQ=2,X2=8,JlQ=9,ClQ=15,XlQ=8,GlQ=29,FlQ=256,My=FlQ+1+GlQ,WlQ=30,ZlQ=19,$lQ=2*My+1,UlQ=15,VB=3,e6=258,HC=e6+VB+1,ElQ=32,G2=42,zy=69,Y2=73,J2=91,C2=103,PW=113,jI=666,jY=1,OI=2,TW=3,p4=4,KlQ=3;function A7(A,Q){return A.msg=scQ[Q],Q}function l9A(A){return(A<<1)-(A>4?9:0)}function t6(A){var Q=A.length;while(--Q>=0)A[Q]=0}function o6(A){var Q=A.state,B=Q.pending;if(B>A.avail_out)B=A.avail_out;if(B===0)return;if(lJ.arraySet(A.output,Q.pending_buf,Q.pending_out,B,A.next_out),A.next_out+=B,Q.pending_out+=B,A.total_out+=B,A.avail_out-=B,Q.pending-=B,Q.pending===0)Q.pending_out=0}function eY(A,Q){A5._tr_flush_block(A,A.block_start>=0?A.block_start:-1,A.strstart-A.block_start,Q),A.block_start=A.strstart,o6(A.strm)}function PB(A,Q){A.pending_buf[A.pending++]=Q}function wI(A,Q){A.pending_buf[A.pending++]=Q>>>8&255,A.pending_buf[A.pending++]=Q&255}function VlQ(A,Q,B,Y){var J=A.avail_in;if(J>Y)J=Y;if(J===0)return 0;if(A.avail_in-=J,lJ.arraySet(Q,A.input,A.next_in,J,B),A.state.wrap===1)A.adler=p9A(A.adler,Q,J,B);else if(A.state.wrap===2)A.adler=a6(A.adler,Q,J,B);return A.next_in+=J,A.total_in+=J,J}function i9A(A,Q){var{max_chain_length:B,strstart:Y}=A,J,C,X=A.prev_length,G=A.nice_match,F=A.strstart>A.w_size-HC?A.strstart-(A.w_size-HC):0,W=A.window,Z=A.w_mask,U=A.prev,$=A.strstart+e6,E=W[Y+X-1],K=W[Y+X];if(A.prev_length>=A.good_match)B>>=2;if(G>A.lookahead)G=A.lookahead;do{if(J=Q,W[J+X]!==K||W[J+X-1]!==E||W[J]!==W[Y]||W[++J]!==W[Y+1])continue;Y+=2,J++;do;while(W[++Y]===W[++J]&&W[++Y]===W[++J]&&W[++Y]===W[++J]&&W[++Y]===W[++J]&&W[++Y]===W[++J]&&W[++Y]===W[++J]&&W[++Y]===W[++J]&&W[++Y]===W[++J]&&Y<$);if(C=e6-($-Y),Y=$-e6,C>X){if(A.match_start=Q,X=C,C>=G)break;E=W[Y+X-1],K=W[Y+X]}}while((Q=U[Q&Z])>F&&--B!==0);if(X<=A.lookahead)return X;return A.lookahead}function SW(A){var Q=A.w_size,B,Y,J,C,X;do{if(C=A.window_size-A.lookahead-A.strstart,A.strstart>=Q+(Q-HC)){lJ.arraySet(A.window,A.window,Q,Q,0),A.match_start-=Q,A.strstart-=Q,A.block_start-=Q,Y=A.hash_size,B=Y;do J=A.head[--B],A.head[B]=J>=Q?J-Q:0;while(--Y);Y=Q,B=Y;do J=A.prev[--B],A.prev[B]=J>=Q?J-Q:0;while(--Y);C+=Q}if(A.strm.avail_in===0)break;if(Y=VlQ(A.strm,A.window,A.strstart+A.lookahead,C),A.lookahead+=Y,A.lookahead+A.insert>=VB){X=A.strstart-A.insert,A.ins_h=A.window[X],A.ins_h=(A.ins_h<A.pending_buf_size-5)B=A.pending_buf_size-5;for(;;){if(A.lookahead<=1){if(SW(A),A.lookahead===0&&Q===kW)return jY;if(A.lookahead===0)break}A.strstart+=A.lookahead,A.lookahead=0;var Y=A.block_start+B;if(A.strstart===0||A.strstart>=Y){if(A.lookahead=A.strstart-Y,A.strstart=Y,eY(A,!1),A.strm.avail_out===0)return jY}if(A.strstart-A.block_start>=A.w_size-HC){if(eY(A,!1),A.strm.avail_out===0)return jY}}if(A.insert=0,Q===Q7){if(eY(A,!0),A.strm.avail_out===0)return TW;return p4}if(A.strstart>A.block_start){if(eY(A,!1),A.strm.avail_out===0)return jY}return jY}function qy(A,Q){var B,Y;for(;;){if(A.lookahead=VB)A.ins_h=(A.ins_h<=VB)if(Y=A5._tr_tally(A,A.strstart-A.match_start,A.match_length-VB),A.lookahead-=A.match_length,A.match_length<=A.max_lazy_match&&A.lookahead>=VB){A.match_length--;do A.strstart++,A.ins_h=(A.ins_h<=VB)A.ins_h=(A.ins_h<4096))A.match_length=VB-1}if(A.prev_length>=VB&&A.match_length<=A.prev_length){J=A.strstart+A.lookahead-VB,Y=A5._tr_tally(A,A.strstart-1-A.prev_match,A.prev_length-VB),A.lookahead-=A.prev_length-1,A.prev_length-=2;do if(++A.strstart<=J)A.ins_h=(A.ins_h<=VB&&A.strstart>0){if(J=A.strstart-1,Y=X[J],Y===X[++J]&&Y===X[++J]&&Y===X[++J]){C=A.strstart+e6;do;while(Y===X[++J]&&Y===X[++J]&&Y===X[++J]&&Y===X[++J]&&Y===X[++J]&&Y===X[++J]&&Y===X[++J]&&Y===X[++J]&&JA.lookahead)A.match_length=A.lookahead}}if(A.match_length>=VB)B=A5._tr_tally(A,1,A.match_length-VB),A.lookahead-=A.match_length,A.strstart+=A.match_length,A.match_length=0;else B=A5._tr_tally(A,0,A.window[A.strstart]),A.lookahead--,A.strstart++;if(B){if(eY(A,!1),A.strm.avail_out===0)return jY}}if(A.insert=0,Q===Q7){if(eY(A,!0),A.strm.avail_out===0)return TW;return p4}if(A.last_lit){if(eY(A,!1),A.strm.avail_out===0)return jY}return OI}function DlQ(A,Q){var B;for(;;){if(A.lookahead===0){if(SW(A),A.lookahead===0){if(Q===kW)return jY;break}}if(A.match_length=0,B=A5._tr_tally(A,0,A.window[A.strstart]),A.lookahead--,A.strstart++,B){if(eY(A,!1),A.strm.avail_out===0)return jY}}if(A.insert=0,Q===Q7){if(eY(A,!0),A.strm.avail_out===0)return TW;return p4}if(A.last_lit){if(eY(A,!1),A.strm.avail_out===0)return jY}return OI}function O1(A,Q,B,Y,J){this.good_length=A,this.max_lazy=Q,this.nice_length=B,this.max_chain=Y,this.func=J}var l4;l4=[new O1(0,0,0,0,IlQ),new O1(4,4,8,4,qy),new O1(4,5,16,8,qy),new O1(4,6,32,32,qy),new O1(4,4,16,16,c4),new O1(8,16,32,32,c4),new O1(8,16,128,128,c4),new O1(8,32,128,256,c4),new O1(32,128,258,1024,c4),new O1(32,258,258,4096,c4)];function NlQ(A){A.window_size=2*A.w_size,t6(A.head),A.max_lazy_match=l4[A.level].max_lazy,A.good_match=l4[A.level].good_length,A.nice_match=l4[A.level].nice_length,A.max_chain_length=l4[A.level].max_chain,A.strstart=0,A.block_start=0,A.lookahead=0,A.insert=0,A.match_length=A.prev_length=VB-1,A.match_available=0,A.ins_h=0}function LlQ(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=X2,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new lJ.Buf16($lQ*2),this.dyn_dtree=new lJ.Buf16((2*WlQ+1)*2),this.bl_tree=new lJ.Buf16((2*ZlQ+1)*2),t6(this.dyn_ltree),t6(this.dyn_dtree),t6(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new lJ.Buf16(UlQ+1),this.heap=new lJ.Buf16(2*My+1),t6(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new lJ.Buf16(2*My+1),t6(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function n9A(A){var Q;if(!A||!A.state)return A7(A,Q5);if(A.total_in=A.total_out=0,A.data_type=YlQ,Q=A.state,Q.pending=0,Q.pending_out=0,Q.wrap<0)Q.wrap=-Q.wrap;return Q.status=Q.wrap?G2:PW,A.adler=Q.wrap===2?0:1,Q.last_flush=kW,A5._tr_init(Q),P1}function s9A(A){var Q=n9A(A);if(Q===P1)NlQ(A.state);return Q}function qlQ(A,Q){if(!A||!A.state)return Q5;if(A.state.wrap!==2)return Q5;return A.state.gzhead=Q,P1}function r9A(A,Q,B,Y,J,C){if(!A)return Q5;var X=1;if(Q===tcQ)Q=6;if(Y<0)X=0,Y=-Y;else if(Y>15)X=2,Y-=16;if(J<1||J>JlQ||B!==X2||Y<8||Y>15||Q<0||Q>9||C<0||C>QlQ)return A7(A,Q5);if(Y===8)Y=9;var G=new LlQ;return A.state=G,G.strm=A,G.wrap=X,G.gzhead=null,G.w_bits=Y,G.w_size=1<d9A||Q<0)return A?A7(A,Q5):Q5;if(Y=A.state,!A.output||!A.input&&A.avail_in!==0||Y.status===jI&&Q!==Q7)return A7(A,A.avail_out===0?Ly:Q5);if(Y.strm=A,B=Y.last_flush,Y.last_flush=Q,Y.status===G2)if(Y.wrap===2)if(A.adler=0,PB(Y,31),PB(Y,139),PB(Y,8),!Y.gzhead)PB(Y,0),PB(Y,0),PB(Y,0),PB(Y,0),PB(Y,0),PB(Y,Y.level===9?2:Y.strategy>=B2||Y.level<2?4:0),PB(Y,KlQ),Y.status=PW;else{if(PB(Y,(Y.gzhead.text?1:0)+(Y.gzhead.hcrc?2:0)+(!Y.gzhead.extra?0:4)+(!Y.gzhead.name?0:8)+(!Y.gzhead.comment?0:16)),PB(Y,Y.gzhead.time&255),PB(Y,Y.gzhead.time>>8&255),PB(Y,Y.gzhead.time>>16&255),PB(Y,Y.gzhead.time>>24&255),PB(Y,Y.level===9?2:Y.strategy>=B2||Y.level<2?4:0),PB(Y,Y.gzhead.os&255),Y.gzhead.extra&&Y.gzhead.extra.length)PB(Y,Y.gzhead.extra.length&255),PB(Y,Y.gzhead.extra.length>>8&255);if(Y.gzhead.hcrc)A.adler=a6(A.adler,Y.pending_buf,Y.pending,0);Y.gzindex=0,Y.status=zy}else{var X=X2+(Y.w_bits-8<<4)<<8,G=-1;if(Y.strategy>=B2||Y.level<2)G=0;else if(Y.level<6)G=1;else if(Y.level===6)G=2;else G=3;if(X|=G<<6,Y.strstart!==0)X|=ElQ;if(X+=31-X%31,Y.status=PW,wI(Y,X),Y.strstart!==0)wI(Y,A.adler>>>16),wI(Y,A.adler&65535);A.adler=1}if(Y.status===zy)if(Y.gzhead.extra){J=Y.pending;while(Y.gzindex<(Y.gzhead.extra.length&65535)){if(Y.pending===Y.pending_buf_size){if(Y.gzhead.hcrc&&Y.pending>J)A.adler=a6(A.adler,Y.pending_buf,Y.pending-J,J);if(o6(A),J=Y.pending,Y.pending===Y.pending_buf_size)break}PB(Y,Y.gzhead.extra[Y.gzindex]&255),Y.gzindex++}if(Y.gzhead.hcrc&&Y.pending>J)A.adler=a6(A.adler,Y.pending_buf,Y.pending-J,J);if(Y.gzindex===Y.gzhead.extra.length)Y.gzindex=0,Y.status=Y2}else Y.status=Y2;if(Y.status===Y2)if(Y.gzhead.name){J=Y.pending;do{if(Y.pending===Y.pending_buf_size){if(Y.gzhead.hcrc&&Y.pending>J)A.adler=a6(A.adler,Y.pending_buf,Y.pending-J,J);if(o6(A),J=Y.pending,Y.pending===Y.pending_buf_size){C=1;break}}if(Y.gzindexJ)A.adler=a6(A.adler,Y.pending_buf,Y.pending-J,J);if(C===0)Y.gzindex=0,Y.status=J2}else Y.status=J2;if(Y.status===J2)if(Y.gzhead.comment){J=Y.pending;do{if(Y.pending===Y.pending_buf_size){if(Y.gzhead.hcrc&&Y.pending>J)A.adler=a6(A.adler,Y.pending_buf,Y.pending-J,J);if(o6(A),J=Y.pending,Y.pending===Y.pending_buf_size){C=1;break}}if(Y.gzindexJ)A.adler=a6(A.adler,Y.pending_buf,Y.pending-J,J);if(C===0)Y.status=C2}else Y.status=C2;if(Y.status===C2)if(Y.gzhead.hcrc){if(Y.pending+2>Y.pending_buf_size)o6(A);if(Y.pending+2<=Y.pending_buf_size)PB(Y,A.adler&255),PB(Y,A.adler>>8&255),A.adler=0,Y.status=PW}else Y.status=PW;if(Y.pending!==0){if(o6(A),A.avail_out===0)return Y.last_flush=-1,P1}else if(A.avail_in===0&&l9A(Q)<=l9A(B)&&Q!==Q7)return A7(A,Ly);if(Y.status===jI&&A.avail_in!==0)return A7(A,Ly);if(A.avail_in!==0||Y.lookahead!==0||Q!==kW&&Y.status!==jI){var F=Y.strategy===B2?DlQ(Y,Q):Y.strategy===AlQ?HlQ(Y,Q):l4[Y.level].func(Y,Q);if(F===TW||F===p4)Y.status=jI;if(F===jY||F===TW){if(A.avail_out===0)Y.last_flush=-1;return P1}if(F===OI){if(Q===rcQ)A5._tr_align(Y);else if(Q!==d9A){if(A5._tr_stored_block(Y,0,0,!1),Q===acQ){if(t6(Y.head),Y.lookahead===0)Y.strstart=0,Y.block_start=0,Y.insert=0}}if(o6(A),A.avail_out===0)return Y.last_flush=-1,P1}}if(Q!==Q7)return P1;if(Y.wrap<=0)return c9A;if(Y.wrap===2)PB(Y,A.adler&255),PB(Y,A.adler>>8&255),PB(Y,A.adler>>16&255),PB(Y,A.adler>>24&255),PB(Y,A.total_in&255),PB(Y,A.total_in>>8&255),PB(Y,A.total_in>>16&255),PB(Y,A.total_in>>24&255);else wI(Y,A.adler>>>16),wI(Y,A.adler&65535);if(o6(A),Y.wrap>0)Y.wrap=-Y.wrap;return Y.pending!==0?P1:c9A}function RlQ(A){var Q;if(!A||!A.state)return Q5;if(Q=A.state.status,Q!==G2&&Q!==zy&&Q!==Y2&&Q!==J2&&Q!==C2&&Q!==PW&&Q!==jI)return A7(A,Q5);return A.state=null,Q===PW?A7(A,ocQ):P1}function wlQ(A,Q){var B=Q.length,Y,J,C,X,G,F,W,Z;if(!A||!A.state)return Q5;if(Y=A.state,X=Y.wrap,X===2||X===1&&Y.status!==G2||Y.lookahead)return Q5;if(X===1)A.adler=p9A(A.adler,Q,B,0);if(Y.wrap=0,B>=Y.w_size){if(X===0)t6(Y.head),Y.strstart=0,Y.block_start=0,Y.insert=0;Z=new lJ.Buf8(Y.w_size),lJ.arraySet(Z,Q,B-Y.w_size,Y.w_size,0),Q=Z,B=Y.w_size}G=A.avail_in,F=A.next_in,W=A.input,A.avail_in=B,A.next_in=0,A.input=Q,SW(Y);while(Y.lookahead>=VB){J=Y.strstart,C=Y.lookahead-(VB-1);do Y.ins_h=(Y.ins_h<{var F2=nX(),o9A=!0,t9A=!0;try{String.fromCharCode.apply(null,[0])}catch(A){o9A=!1}try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(A){t9A=!1}var PI=new F2.Buf8(256);for(T1=0;T1<256;T1++)PI[T1]=T1>=252?6:T1>=248?5:T1>=240?4:T1>=224?3:T1>=192?2:1;var T1;PI[254]=PI[254]=1;hlQ.string2buf=function(A){var Q,B,Y,J,C,X=A.length,G=0;for(J=0;J>>6,Q[C++]=128|B&63;else if(B<65536)Q[C++]=224|B>>>12,Q[C++]=128|B>>>6&63,Q[C++]=128|B&63;else Q[C++]=240|B>>>18,Q[C++]=128|B>>>12&63,Q[C++]=128|B>>>6&63,Q[C++]=128|B&63}return Q};function e9A(A,Q){if(Q<65534){if(A.subarray&&t9A||!A.subarray&&o9A)return String.fromCharCode.apply(null,F2.shrinkBuf(A,Q))}var B="";for(var Y=0;Y4){G[Y++]=65533,B+=C-1;continue}J&=C===2?31:C===3?15:7;while(C>1&&B1){G[Y++]=65533;continue}if(J<65536)G[Y++]=J;else J-=65536,G[Y++]=55296|J>>10&1023,G[Y++]=56320|J&1023}return e9A(G,Y)};hlQ.utf8border=function(A,Q){var B;if(Q=Q||A.length,Q>A.length)Q=A.length;B=Q-1;while(B>=0&&(A[B]&192)===128)B--;if(B<0)return Q;if(B===0)return Q;return B+PI[A[B]]>Q?B:Q}});var wy=R((gXY,A8A)=>{function dlQ(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}A8A.exports=dlQ});var J8A=R((alQ)=>{var TI=a9A(),SI=nX(),Oy=Ry(),Py=Q2(),clQ=wy(),Y8A=Object.prototype.toString,llQ=0,jy=4,i4=0,Q8A=1,B8A=2,plQ=-1,ilQ=0,nlQ=8;function _W(A){if(!(this instanceof _W))return new _W(A);this.options=SI.assign({level:plQ,method:nlQ,chunkSize:16384,windowBits:15,memLevel:8,strategy:ilQ,to:""},A||{});var Q=this.options;if(Q.raw&&Q.windowBits>0)Q.windowBits=-Q.windowBits;else if(Q.gzip&&Q.windowBits>0&&Q.windowBits<16)Q.windowBits+=16;this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new clQ,this.strm.avail_out=0;var B=TI.deflateInit2(this.strm,Q.level,Q.method,Q.windowBits,Q.memLevel,Q.strategy);if(B!==i4)throw Error(Py[B]);if(Q.header)TI.deflateSetHeader(this.strm,Q.header);if(Q.dictionary){var Y;if(typeof Q.dictionary==="string")Y=Oy.string2buf(Q.dictionary);else if(Y8A.call(Q.dictionary)==="[object ArrayBuffer]")Y=new Uint8Array(Q.dictionary);else Y=Q.dictionary;if(B=TI.deflateSetDictionary(this.strm,Y),B!==i4)throw Error(Py[B]);this._dict_set=!0}}_W.prototype.push=function(A,Q){var B=this.strm,Y=this.options.chunkSize,J,C;if(this.ended)return!1;if(C=Q===~~Q?Q:Q===!0?jy:llQ,typeof A==="string")B.input=Oy.string2buf(A);else if(Y8A.call(A)==="[object ArrayBuffer]")B.input=new Uint8Array(A);else B.input=A;B.next_in=0,B.avail_in=B.input.length;do{if(B.avail_out===0)B.output=new SI.Buf8(Y),B.next_out=0,B.avail_out=Y;if(J=TI.deflate(B,C),J!==Q8A&&J!==i4)return this.onEnd(J),this.ended=!0,!1;if(B.avail_out===0||B.avail_in===0&&(C===jy||C===B8A))if(this.options.to==="string")this.onData(Oy.buf2binstring(SI.shrinkBuf(B.output,B.next_out)));else this.onData(SI.shrinkBuf(B.output,B.next_out))}while((B.avail_in>0||B.avail_out===0)&&J!==Q8A);if(C===jy)return J=TI.deflateEnd(this.strm),this.onEnd(J),this.ended=!0,J===i4;if(C===B8A)return this.onEnd(i4),B.avail_out=0,!0;return!0};_W.prototype.onData=function(A){this.chunks.push(A)};_W.prototype.onEnd=function(A){if(A===i4)if(this.options.to==="string")this.result=this.chunks.join("");else this.result=SI.flattenChunks(this.chunks);this.chunks=[],this.err=A,this.msg=this.strm.msg};function Ty(A,Q){var B=new _W(Q);if(B.push(A,!0),B.err)throw B.msg||Py[B.err];return B.result}function slQ(A,Q){return Q=Q||{},Q.raw=!0,Ty(A,Q)}function rlQ(A,Q){return Q=Q||{},Q.gzip=!0,Ty(A,Q)}alQ.Deflate=_W;alQ.deflate=Ty;alQ.deflateRaw=slQ;alQ.gzip=rlQ});var X8A=R((xXY,C8A)=>{var W2=30,QpQ=12;C8A.exports=function(Q,B){var Y,J,C,X,G,F,W,Z,U,$,E,K,I,V,H,D,L,z,M,N,q,w,P,_,O;Y=Q.state,J=Q.next_in,_=Q.input,C=J+(Q.avail_in-5),X=Q.next_out,O=Q.output,G=X-(B-Q.avail_out),F=X+(Q.avail_out-257),W=Y.dmax,Z=Y.wsize,U=Y.whave,$=Y.wnext,E=Y.window,K=Y.hold,I=Y.bits,V=Y.lencode,H=Y.distcode,D=(1<>>24,K>>>=M,I-=M,M=z>>>16&255,M===0)O[X++]=z&65535;else if(M&16){if(N=z&65535,M&=15,M){if(I>>=M,I-=M}if(I<15)K+=_[J++]<>>24,K>>>=M,I-=M,M=z>>>16&255,M&16){if(q=z&65535,M&=15,IW){Q.msg="invalid distance too far back",Y.mode=W2;break A}if(K>>>=M,I-=M,M=X-G,q>M){if(M=q-M,M>U){if(Y.sane){Q.msg="invalid distance too far back",Y.mode=W2;break A}}if(w=0,P=E,$===0){if(w+=Z-M,M2)O[X++]=P[w++],O[X++]=P[w++],O[X++]=P[w++],N-=3;if(N){if(O[X++]=P[w++],N>1)O[X++]=P[w++]}}else{w=X-q;do O[X++]=O[w++],O[X++]=O[w++],O[X++]=O[w++],N-=3;while(N>2);if(N){if(O[X++]=O[w++],N>1)O[X++]=O[w++]}}}else if((M&64)===0){z=H[(z&65535)+(K&(1<>3,J-=N,I-=N<<3,K&=(1<{var G8A=nX(),n4=15,F8A=852,W8A=592,Z8A=0,Sy=1,$8A=2,BpQ=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],YpQ=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78],JpQ=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],CpQ=[16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];U8A.exports=function(Q,B,Y,J,C,X,G,F){var W=F.bits,Z=0,U=0,$=0,E=0,K=0,I=0,V=0,H=0,D=0,L=0,z,M,N,q,w,P=null,_=0,O,k=new G8A.Buf16(n4+1),T=new G8A.Buf16(n4+1),S=null,v=0,y,h,g;for(Z=0;Z<=n4;Z++)k[Z]=0;for(U=0;U=1;E--)if(k[E]!==0)break;if(K>E)K=E;if(E===0)return C[X++]=20971520,C[X++]=20971520,F.bits=1,0;for($=1;$0&&(Q===Z8A||E!==1))return-1;T[1]=0;for(Z=1;ZF8A||Q===$8A&&D>W8A)return 1;for(;;){if(y=Z-V,G[U]O)h=S[v+G[U]],g=P[_+G[U]];else h=96,g=0;z=1<>V)+M]=y<<24|h<<16|g|0;while(M!==0);z=1<>=1;if(z!==0)L&=z-1,L+=z;else L=0;if(U++,--k[Z]===0){if(Z===E)break;Z=B[Y+G[U]]}if(Z>K&&(L&q)!==N){if(V===0)V=K;w+=$,I=Z-V,H=1<F8A||Q===$8A&&D>W8A)return 1;N=L&q,C[N]=K<<24|I<<16|w-X|0}}if(L!==0)C[w+L]=Z-V<<24|4194304|0;return F.bits=K,0}});var s8A=R((RpQ)=>{var X8=nX(),hy=Dy(),S1=Ny(),XpQ=X8A(),kI=E8A(),GpQ=0,b8A=1,m8A=2,K8A=4,FpQ=5,Z2=6,vW=0,WpQ=1,ZpQ=2,B5=-2,u8A=-3,xy=-4,$pQ=-5,V8A=8,d8A=1,I8A=2,H8A=3,D8A=4,N8A=5,L8A=6,q8A=7,M8A=8,z8A=9,R8A=10,E2=11,rX=12,ky=13,w8A=14,_y=15,j8A=16,O8A=17,P8A=18,T8A=19,$2=20,U2=21,S8A=22,k8A=23,_8A=24,v8A=25,y8A=26,vy=27,g8A=28,h8A=29,q0=30,fy=31,UpQ=32,EpQ=852,KpQ=592,VpQ=15,IpQ=VpQ;function x8A(A){return(A>>>24&255)+(A>>>8&65280)+((A&65280)<<8)+((A&255)<<24)}function HpQ(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new X8.Buf16(320),this.work=new X8.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function c8A(A){var Q;if(!A||!A.state)return B5;if(Q=A.state,A.total_in=A.total_out=Q.total=0,A.msg="",Q.wrap)A.adler=Q.wrap&1;return Q.mode=d8A,Q.last=0,Q.havedict=0,Q.dmax=32768,Q.head=null,Q.hold=0,Q.bits=0,Q.lencode=Q.lendyn=new X8.Buf32(EpQ),Q.distcode=Q.distdyn=new X8.Buf32(KpQ),Q.sane=1,Q.back=-1,vW}function l8A(A){var Q;if(!A||!A.state)return B5;return Q=A.state,Q.wsize=0,Q.whave=0,Q.wnext=0,c8A(A)}function p8A(A,Q){var B,Y;if(!A||!A.state)return B5;if(Y=A.state,Q<0)B=0,Q=-Q;else if(B=(Q>>4)+1,Q<48)Q&=15;if(Q&&(Q<8||Q>15))return B5;if(Y.window!==null&&Y.wbits!==Q)Y.window=null;return Y.wrap=B,Y.wbits=Q,l8A(A)}function i8A(A,Q){var B,Y;if(!A)return B5;if(Y=new HpQ,A.state=Y,Y.window=null,B=p8A(A,Q),B!==vW)A.state=null;return B}function DpQ(A){return i8A(A,IpQ)}var f8A=!0,yy,gy;function NpQ(A){if(f8A){var Q;yy=new X8.Buf32(512),gy=new X8.Buf32(32),Q=0;while(Q<144)A.lens[Q++]=8;while(Q<256)A.lens[Q++]=9;while(Q<280)A.lens[Q++]=7;while(Q<288)A.lens[Q++]=8;kI(b8A,A.lens,0,288,yy,0,A.work,{bits:9}),Q=0;while(Q<32)A.lens[Q++]=5;kI(m8A,A.lens,0,32,gy,0,A.work,{bits:5}),f8A=!1}A.lencode=yy,A.lenbits=9,A.distcode=gy,A.distbits=5}function n8A(A,Q,B,Y){var J,C=A.state;if(C.window===null)C.wsize=1<=C.wsize)X8.arraySet(C.window,Q,B-C.wsize,C.wsize,0),C.wnext=0,C.whave=C.wsize;else{if(J=C.wsize-C.wnext,J>Y)J=Y;if(X8.arraySet(C.window,Q,B-Y,J,C.wnext),Y-=J,Y)X8.arraySet(C.window,Q,B-Y,Y,0),C.wnext=Y,C.whave=C.wsize;else{if(C.wnext+=J,C.wnext===C.wsize)C.wnext=0;if(C.whave>>8&255,B.check=S1(B.check,P,2,0),W=0,Z=0,B.mode=I8A;break}if(B.flags=0,B.head)B.head.done=!1;if(!(B.wrap&1)||(((W&255)<<8)+(W>>8))%31){A.msg="incorrect header check",B.mode=q0;break}if((W&15)!==V8A){A.msg="unknown compression method",B.mode=q0;break}if(W>>>=4,Z-=4,q=(W&15)+8,B.wbits===0)B.wbits=q;else if(q>B.wbits){A.msg="invalid window size",B.mode=q0;break}B.dmax=1<>8&1;if(B.flags&512)P[0]=W&255,P[1]=W>>>8&255,B.check=S1(B.check,P,2,0);W=0,Z=0,B.mode=H8A;case H8A:while(Z<32){if(G===0)break A;G--,W+=Y[C++]<>>8&255,P[2]=W>>>16&255,P[3]=W>>>24&255,B.check=S1(B.check,P,4,0);W=0,Z=0,B.mode=D8A;case D8A:while(Z<16){if(G===0)break A;G--,W+=Y[C++]<>8;if(B.flags&512)P[0]=W&255,P[1]=W>>>8&255,B.check=S1(B.check,P,2,0);W=0,Z=0,B.mode=N8A;case N8A:if(B.flags&1024){while(Z<16){if(G===0)break A;G--,W+=Y[C++]<>>8&255,B.check=S1(B.check,P,2,0);W=0,Z=0}else if(B.head)B.head.extra=null;B.mode=L8A;case L8A:if(B.flags&1024){if(E=B.length,E>G)E=G;if(E){if(B.head){if(q=B.head.extra_len-B.length,!B.head.extra)B.head.extra=Array(B.head.extra_len);X8.arraySet(B.head.extra,Y,C,E,q)}if(B.flags&512)B.check=S1(B.check,Y,E,C);G-=E,C+=E,B.length-=E}if(B.length)break A}B.length=0,B.mode=q8A;case q8A:if(B.flags&2048){if(G===0)break A;E=0;do if(q=Y[C+E++],B.head&&q&&B.length<65536)B.head.name+=String.fromCharCode(q);while(q&&E>9&1,B.head.done=!0;A.adler=B.check=0,B.mode=rX;break;case R8A:while(Z<32){if(G===0)break A;G--,W+=Y[C++]<>>=Z&7,Z-=Z&7,B.mode=vy;break}while(Z<3){if(G===0)break A;G--,W+=Y[C++]<>>=1,Z-=1,W&3){case 0:B.mode=w8A;break;case 1:if(NpQ(B),B.mode=$2,Q===Z2){W>>>=2,Z-=2;break A}break;case 2:B.mode=O8A;break;case 3:A.msg="invalid block type",B.mode=q0}W>>>=2,Z-=2;break;case w8A:W>>>=Z&7,Z-=Z&7;while(Z<32){if(G===0)break A;G--,W+=Y[C++]<>>16^65535)){A.msg="invalid stored block lengths",B.mode=q0;break}if(B.length=W&65535,W=0,Z=0,B.mode=_y,Q===Z2)break A;case _y:B.mode=j8A;case j8A:if(E=B.length,E){if(E>G)E=G;if(E>F)E=F;if(E===0)break A;X8.arraySet(J,Y,C,E,X),G-=E,C+=E,F-=E,X+=E,B.length-=E;break}B.mode=rX;break;case O8A:while(Z<14){if(G===0)break A;G--,W+=Y[C++]<>>=5,Z-=5,B.ndist=(W&31)+1,W>>>=5,Z-=5,B.ncode=(W&15)+4,W>>>=4,Z-=4,B.nlen>286||B.ndist>30){A.msg="too many length or distance symbols",B.mode=q0;break}B.have=0,B.mode=P8A;case P8A:while(B.have>>=3,Z-=3}while(B.have<19)B.lens[k[B.have++]]=0;if(B.lencode=B.lendyn,B.lenbits=7,_={bits:B.lenbits},w=kI(GpQ,B.lens,0,19,B.lencode,0,B.work,_),B.lenbits=_.bits,w){A.msg="invalid code lengths set",B.mode=q0;break}B.have=0,B.mode=T8A;case T8A:while(B.have>>24,D=V>>>16&255,L=V&65535,H<=Z)break;if(G===0)break A;G--,W+=Y[C++]<>>=H,Z-=H,B.lens[B.have++]=L;else{if(L===16){O=H+2;while(Z>>=H,Z-=H,B.have===0){A.msg="invalid bit length repeat",B.mode=q0;break}q=B.lens[B.have-1],E=3+(W&3),W>>>=2,Z-=2}else if(L===17){O=H+3;while(Z>>=H,Z-=H,q=0,E=3+(W&7),W>>>=3,Z-=3}else{O=H+7;while(Z>>=H,Z-=H,q=0,E=11+(W&127),W>>>=7,Z-=7}if(B.have+E>B.nlen+B.ndist){A.msg="invalid bit length repeat",B.mode=q0;break}while(E--)B.lens[B.have++]=q}}if(B.mode===q0)break;if(B.lens[256]===0){A.msg="invalid code -- missing end-of-block",B.mode=q0;break}if(B.lenbits=9,_={bits:B.lenbits},w=kI(b8A,B.lens,0,B.nlen,B.lencode,0,B.work,_),B.lenbits=_.bits,w){A.msg="invalid literal/lengths set",B.mode=q0;break}if(B.distbits=6,B.distcode=B.distdyn,_={bits:B.distbits},w=kI(m8A,B.lens,B.nlen,B.ndist,B.distcode,0,B.work,_),B.distbits=_.bits,w){A.msg="invalid distances set",B.mode=q0;break}if(B.mode=$2,Q===Z2)break A;case $2:B.mode=U2;case U2:if(G>=6&&F>=258){if(A.next_out=X,A.avail_out=F,A.next_in=C,A.avail_in=G,B.hold=W,B.bits=Z,XpQ(A,$),X=A.next_out,J=A.output,F=A.avail_out,C=A.next_in,Y=A.input,G=A.avail_in,W=B.hold,Z=B.bits,B.mode===rX)B.back=-1;break}B.back=0;for(;;){if(V=B.lencode[W&(1<>>24,D=V>>>16&255,L=V&65535,H<=Z)break;if(G===0)break A;G--,W+=Y[C++]<>z)],H=V>>>24,D=V>>>16&255,L=V&65535,z+H<=Z)break;if(G===0)break A;G--,W+=Y[C++]<>>=z,Z-=z,B.back+=z}if(W>>>=H,Z-=H,B.back+=H,B.length=L,D===0){B.mode=y8A;break}if(D&32){B.back=-1,B.mode=rX;break}if(D&64){A.msg="invalid literal/length code",B.mode=q0;break}B.extra=D&15,B.mode=S8A;case S8A:if(B.extra){O=B.extra;while(Z>>=B.extra,Z-=B.extra,B.back+=B.extra}B.was=B.length,B.mode=k8A;case k8A:for(;;){if(V=B.distcode[W&(1<>>24,D=V>>>16&255,L=V&65535,H<=Z)break;if(G===0)break A;G--,W+=Y[C++]<>z)],H=V>>>24,D=V>>>16&255,L=V&65535,z+H<=Z)break;if(G===0)break A;G--,W+=Y[C++]<>>=z,Z-=z,B.back+=z}if(W>>>=H,Z-=H,B.back+=H,D&64){A.msg="invalid distance code",B.mode=q0;break}B.offset=L,B.extra=D&15,B.mode=_8A;case _8A:if(B.extra){O=B.extra;while(Z>>=B.extra,Z-=B.extra,B.back+=B.extra}if(B.offset>B.dmax){A.msg="invalid distance too far back",B.mode=q0;break}B.mode=v8A;case v8A:if(F===0)break A;if(E=$-F,B.offset>E){if(E=B.offset-E,E>B.whave){if(B.sane){A.msg="invalid distance too far back",B.mode=q0;break}}if(E>B.wnext)E-=B.wnext,K=B.wsize-E;else K=B.wnext-E;if(E>B.length)E=B.length;I=B.window}else I=J,K=X-B.offset,E=B.length;if(E>F)E=F;F-=E,B.length-=E;do J[X++]=I[K++];while(--E);if(B.length===0)B.mode=U2;break;case y8A:if(F===0)break A;J[X++]=B.length,F--,B.mode=U2;break;case vy:if(B.wrap){while(Z<32){if(G===0)break A;G--,W|=Y[C++]<{r8A.exports={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8}});var o8A=R((uXY,a8A)=>{function gpQ(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}a8A.exports=gpQ});var e8A=R((bpQ)=>{var s4=s8A(),_I=nX(),K2=Ry(),QY=by(),my=Q2(),hpQ=wy(),xpQ=o8A(),t8A=Object.prototype.toString;function yW(A){if(!(this instanceof yW))return new yW(A);this.options=_I.assign({chunkSize:16384,windowBits:0,to:""},A||{});var Q=this.options;if(Q.raw&&Q.windowBits>=0&&Q.windowBits<16){if(Q.windowBits=-Q.windowBits,Q.windowBits===0)Q.windowBits=-15}if(Q.windowBits>=0&&Q.windowBits<16&&!(A&&A.windowBits))Q.windowBits+=32;if(Q.windowBits>15&&Q.windowBits<48){if((Q.windowBits&15)===0)Q.windowBits|=15}this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new hpQ,this.strm.avail_out=0;var B=s4.inflateInit2(this.strm,Q.windowBits);if(B!==QY.Z_OK)throw Error(my[B]);if(this.header=new xpQ,s4.inflateGetHeader(this.strm,this.header),Q.dictionary){if(typeof Q.dictionary==="string")Q.dictionary=K2.string2buf(Q.dictionary);else if(t8A.call(Q.dictionary)==="[object ArrayBuffer]")Q.dictionary=new Uint8Array(Q.dictionary);if(Q.raw){if(B=s4.inflateSetDictionary(this.strm,Q.dictionary),B!==QY.Z_OK)throw Error(my[B])}}}yW.prototype.push=function(A,Q){var B=this.strm,Y=this.options.chunkSize,J=this.options.dictionary,C,X,G,F,W,Z=!1;if(this.ended)return!1;if(X=Q===~~Q?Q:Q===!0?QY.Z_FINISH:QY.Z_NO_FLUSH,typeof A==="string")B.input=K2.binstring2buf(A);else if(t8A.call(A)==="[object ArrayBuffer]")B.input=new Uint8Array(A);else B.input=A;B.next_in=0,B.avail_in=B.input.length;do{if(B.avail_out===0)B.output=new _I.Buf8(Y),B.next_out=0,B.avail_out=Y;if(C=s4.inflate(B,QY.Z_NO_FLUSH),C===QY.Z_NEED_DICT&&J)C=s4.inflateSetDictionary(this.strm,J);if(C===QY.Z_BUF_ERROR&&Z===!0)C=QY.Z_OK,Z=!1;if(C!==QY.Z_STREAM_END&&C!==QY.Z_OK)return this.onEnd(C),this.ended=!0,!1;if(B.next_out){if(B.avail_out===0||C===QY.Z_STREAM_END||B.avail_in===0&&(X===QY.Z_FINISH||X===QY.Z_SYNC_FLUSH))if(this.options.to==="string"){if(G=K2.utf8border(B.output,B.next_out),F=B.next_out-G,W=K2.buf2string(B.output,G),B.next_out=F,B.avail_out=Y-F,F)_I.arraySet(B.output,B.output,G,F,0);this.onData(W)}else this.onData(_I.shrinkBuf(B.output,B.next_out))}if(B.avail_in===0&&B.avail_out===0)Z=!0}while((B.avail_in>0||B.avail_out===0)&&C!==QY.Z_STREAM_END);if(C===QY.Z_STREAM_END)X=QY.Z_FINISH;if(X===QY.Z_FINISH)return C=s4.inflateEnd(this.strm),this.onEnd(C),this.ended=!0,C===QY.Z_OK;if(X===QY.Z_SYNC_FLUSH)return this.onEnd(QY.Z_OK),B.avail_out=0,!0;return!0};yW.prototype.onData=function(A){this.chunks.push(A)};yW.prototype.onEnd=function(A){if(A===QY.Z_OK)if(this.options.to==="string")this.result=this.chunks.join("");else this.result=_I.flattenChunks(this.chunks);this.chunks=[],this.err=A,this.msg=this.strm.msg};function uy(A,Q){var B=new yW(Q);if(B.push(A,!0),B.err)throw B.msg||my[B.err];return B.result}function fpQ(A,Q){return Q=Q||{},Q.raw=!0,uy(A,Q)}bpQ.Inflate=yW;bpQ.inflate=uy;bpQ.inflateRaw=fpQ;bpQ.ungzip=uy});var B5A=R((cXY,Q5A)=>{var lpQ=nX().assign,ppQ=J8A(),ipQ=e8A(),npQ=by(),A5A={};lpQ(A5A,ppQ,ipQ,npQ);Q5A.exports=A5A});var Y5A=R((lXY,dy)=>{(function(){var A={};if(typeof dy=="object")dy.exports=A;else self.UTIF=A;var Q=B5A();function B(){if(typeof process>"u"||process.env.NODE_ENV=="development")console.log.apply(console,arguments)}(function(Y,J){(function(){var C=function(){function U($){this.message="JPEG error: "+$}return U.prototype=Error(),U.prototype.name="JpegError",U.constructor=U,U}(),X=function(){var U=new Uint8Array([0,1,8,16,9,2,3,10,17,24,32,25,18,11,4,5,12,19,26,33,40,48,41,34,27,20,13,6,7,14,21,28,35,42,49,56,57,50,43,36,29,22,15,23,30,37,44,51,58,59,52,45,38,31,39,46,53,60,61,54,47,55,62,63]),$=4017,E=799,K=3406,I=2276,V=1567,H=3784,D=5793,L=2896;function z(O){if(O==null)O={};if(O.w==null)O.w=-1;this.V=O.n,this.N=O.w}function M(O,k){var T=0,S=[],v,y,h=16,g;while(h>0&&!O[h-1])h--;S.push({children:[],index:0});var m=S[0];for(v=0;v0)m=S.pop();m.index++,S.push(m);while(S.length<=v)S.push(g={children:[],index:0}),m.children[m.index]=g.children,m=g;T++}if(v+10)return b--,x>>b&1;if(x=O[k++],x===255){var zA=O[k++];if(zA){if(zA===220&&i){k+=2;var uA=F(O,k);if(k+=2,uA>0&&uA!==T.s)throw new DNLMarkerError("Found DNL marker (0xFFDC) while parsing scan data",uA)}else if(zA===217){if(i){var MQ=EA*8;if(MQ>0&&MQ>>7}function vA(zA){var uA=zA;while(!0){switch(uA=uA[TA()],typeof uA){case"number":return uA;case"object":continue}throw new C("invalid huffman sequence")}}function mA(zA){var uA=0;while(zA>0)uA=uA<<1|TA(),zA--;return uA}function ZQ(zA){if(zA===1)return TA()===1?1:-1;var uA=mA(zA);if(uA>=1<>4;if(mQ===0){if(yB<15)break;eQ+=16;continue}eQ+=yB;var H0=U[eQ];zA.D[uA+H0]=ZQ(mQ),eQ++}}function JQ(zA,uA){var MQ=vA(zA.J),bQ=MQ===0?0:ZQ(MQ)<0){o--;return}var MQ=y,bQ=h;while(MQ<=bQ){var eQ=vA(zA.i),cB=eQ&15,mQ=eQ>>4;if(cB===0){if(mQ<15){o=mA(mQ)+(1<>4,cB===0)if(eQ<15)o=mA(eQ)+(1<0){for(CA=0;CA0?"unexpected":"excessive";k=QQ.offset}if(QQ.M>=65488&&QQ.M<=65495)k+=2;else break}return k-d}function w(O,k,T){var{$:S,D:v}=O,y,h,g,m,i,p,l,d,x,b,o,GA,VA,EA,UA,CA,QA;if(!S)throw new C("missing required Quantization Table.");for(var KA=0;KA<64;KA+=8){if(x=v[k+KA],b=v[k+KA+1],o=v[k+KA+2],GA=v[k+KA+3],VA=v[k+KA+4],EA=v[k+KA+5],UA=v[k+KA+6],CA=v[k+KA+7],x*=S[KA],(b|o|GA|VA|EA|UA|CA)===0){QA=D*x+512>>10,T[KA]=QA,T[KA+1]=QA,T[KA+2]=QA,T[KA+3]=QA,T[KA+4]=QA,T[KA+5]=QA,T[KA+6]=QA,T[KA+7]=QA;continue}b*=S[KA+1],o*=S[KA+2],GA*=S[KA+3],VA*=S[KA+4],EA*=S[KA+5],UA*=S[KA+6],CA*=S[KA+7],y=D*x+128>>8,h=D*VA+128>>8,g=o,m=UA,i=L*(b-CA)+128>>8,d=L*(b+CA)+128>>8,p=GA<<4,l=EA<<4,y=y+h+1>>1,h=y-h,QA=g*H+m*V+128>>8,g=g*V-m*H+128>>8,m=QA,i=i+l+1>>1,l=i-l,d=d+p+1>>1,p=d-p,y=y+m+1>>1,m=y-m,h=h+g+1>>1,g=h-g,QA=i*I+d*K+2048>>12,i=i*K-d*I+2048>>12,d=QA,QA=p*E+l*$+2048>>12,p=p*$-l*E+2048>>12,l=QA,T[KA]=y+d,T[KA+7]=y-d,T[KA+1]=h+l,T[KA+6]=h-l,T[KA+2]=g+p,T[KA+5]=g-p,T[KA+3]=m+i,T[KA+4]=m-i}for(var HA=0;HA<8;++HA){if(x=T[HA],b=T[HA+8],o=T[HA+16],GA=T[HA+24],VA=T[HA+32],EA=T[HA+40],UA=T[HA+48],CA=T[HA+56],(b|o|GA|VA|EA|UA|CA)===0){if(QA=D*x+8192>>14,QA<-2040)QA=0;else if(QA>=2024)QA=255;else QA=QA+2056>>4;v[k+HA]=QA,v[k+HA+8]=QA,v[k+HA+16]=QA,v[k+HA+24]=QA,v[k+HA+32]=QA,v[k+HA+40]=QA,v[k+HA+48]=QA,v[k+HA+56]=QA;continue}if(y=D*x+2048>>12,h=D*VA+2048>>12,g=o,m=UA,i=L*(b-CA)+2048>>12,d=L*(b+CA)+2048>>12,p=GA,l=EA,y=(y+h+1>>1)+4112,h=y-h,QA=g*H+m*V+2048>>12,g=g*V-m*H+2048>>12,m=QA,i=i+l+1>>1,l=i-l,d=d+p+1>>1,p=d-p,y=y+m+1>>1,m=y-m,h=h+g+1>>1,g=h-g,QA=i*I+d*K+2048>>12,i=i*K-d*I+2048>>12,d=QA,QA=p*E+l*$+2048>>12,p=p*$-l*E+2048>>12,l=QA,x=y+d,CA=y-d,b=h+l,UA=h-l,o=g+p,EA=g-p,GA=m+i,VA=m-i,x<16)x=0;else if(x>=4080)x=255;else x>>=4;if(b<16)b=0;else if(b>=4080)b=255;else b>>=4;if(o<16)o=0;else if(o>=4080)o=255;else o>>=4;if(GA<16)GA=0;else if(GA>=4080)GA=255;else GA>>=4;if(VA<16)VA=0;else if(VA>=4080)VA=255;else VA>>=4;if(EA<16)EA=0;else if(EA>=4080)EA=255;else EA>>=4;if(UA<16)UA=0;else if(UA>=4080)UA=255;else UA>>=4;if(CA<16)CA=0;else if(CA>=4080)CA=255;else CA>>=4;v[k+HA]=x,v[k+HA+8]=b,v[k+HA+16]=o,v[k+HA+24]=GA,v[k+HA+32]=VA,v[k+HA+40]=EA,v[k+HA+48]=UA,v[k+HA+56]=CA}}function P(O,k){var{P:T,c:S}=k,v=new Int16Array(64);for(var y=0;y=S)return null;var y=F(O,k);if(y>=65472&&y<=65534)return{u:null,M:y,offset:k};var h=F(O,v);while(!(h>=65472&&h<=65534)){if(++v>=S)return null;h=F(O,v)}return{u:y.toString(16),M:h,offset:v}}return z.prototype={parse(O,k){if(k==null)k={};var T=k.F,S=0,v=null,y=null,h,g,m=0;function i(){var mQ=F(O,S);S+=2;var yB=S+mQ-2,H0=_(O,yB,S);if(H0&&H0.u)yB=H0.offset;var hJ=O.subarray(S,yB);return S+=hJ.length,hJ}function p(mQ){var yB=Math.ceil(mQ.o/8/mQ.X),H0=Math.ceil(mQ.s/8/mQ.B);for(var hJ=0;hJ>4===0)for(GA=0;GA<64;GA++)CA=U[GA],HA[CA]=O[S++];else if(KA>>4===1)for(GA=0;GA<64;GA++)CA=U[GA],HA[CA]=F(O,S),S+=2;else throw new C("DQT - invalid table spec");l[KA&15]=HA}break;case 65472:case 65473:case 65474:if(h)throw new C("Only single frame JPEGs supported");S+=2,h={},h.G=b===65473,h.Z=b===65474,h.precision=O[S++];var DA=F(O,S),hA,QQ=0,XA=0;S+=2,h.s=T||DA,h.o=F(O,S),S+=2,h.W=[],h._={};var PA=O[S++];for(o=0;o>4,TA=O[S+1]&15;if(QQ>4===0?x:d)[ZQ&15]=M(NQ,SQ)}break;case 65501:S+=2,g=F(O,S),S+=2;break;case 65498:var LA=++m===1&&!T,IA;S+=2;var jA=O[S++],tQ=[];for(o=0;o>4],IA.i=d[KB&15],tQ.push(IA)}var zA=O[S++],uA=O[S++],MQ=O[S++];try{var bQ=q(O,S,h,tQ,g,zA,uA,MQ>>4,MQ&15,LA);S+=bQ}catch(mQ){if(mQ instanceof DNLMarkerError)return this.parse(O,{F:mQ.s});else if(mQ instanceof EOIMarkerError)break A;throw mQ}break;case 65500:S+=4;break;case 65535:if(O[S]!==255)S--;break;default:var eQ=_(O,S-2,S-3);if(eQ&&eQ.u){S=eQ.offset;break}if(S>=O.length-1)break A;throw new C("JpegImage.parse - unknown marker: "+b.toString(16))}b=F(O,S),S+=2}this.width=h.o,this.height=h.s,this.g=v,this.b=y,this.W=[];for(o=0;o>8)+HA[x+1];return UA},get f(){if(this.b)return!!this.b.a;if(this.p===3){if(this.N===0)return!1;else if(this.W[0].index===82&&this.W[1].index===71&&this.W[2].index===66)return!1;return!0}if(this.N===1)return!0;return!1},z:function(k){var T,S,v;for(var y=0,h=k.length;y4)throw new C("Unsupported color mode");var y=this.Y(k,T,v);if(this.p===1&&S){var h=y.length,g=new Uint8ClampedArray(h*3),m=0;for(var i=0;i>24}function F(Z,U){return Z[U]<<8|Z[U+1]}function W(Z,U){return(Z[U]<<24|Z[U+1]<<16|Z[U+2]<<8|Z[U+3])>>>0}Y.JpegDecoder=X})(),Y.encodeImage=function(C,X,G,F){var W={t256:[X],t257:[G],t258:[8,8,8,8],t259:[1],t262:[2],t273:[1000],t277:[4],t278:[G],t279:[X*G*4],t282:[[72,1]],t283:[[72,1]],t284:[1],t286:[[0,1]],t287:[[0,1]],t296:[1],t305:["Photopea (UTIF.js)"],t338:[1]};if(F)for(var Z in F)W[Z]=F[Z];var U=new Uint8Array(Y.encode([W])),$=new Uint8Array(C),E=new Uint8Array(1000+X*G*4);for(var Z=0;Z3)X.t258=X.t258.slice(0,3);var $=X.t277?X.t277[0]:1,E=X.t258?X.t258[0]:1,K=E*$;if(Z==1&&X.t279!=null&&X.t278&&X.t262[0]==32803)K=Math.round(X.t279[0]*8/(X.width*X.t278[0]));if(X.t50885&&X.t50885[0]==4)K=X.t258[0]*3;var I=Math.ceil(X.width*K/8)*8,V=X.t273;if(V==null||X.t322)V=X.t324;var H=X.t279;if(Z==1&&V.length==1)H=[X.height*(I>>>3)];if(H==null||X.t322)H=X.t325;var D=new Uint8Array(X.height*(I>>>3)),L=0;if(X.t322!=null){var z=X.t322[0],M=X.t323[0],N=Math.floor((X.width+z-1)/z),q=Math.floor((X.height+M-1)/M),w=new Uint8Array(Math.ceil(z*M*K/8)|0);console.log("====",N,q);for(var P=0;P>>3,N=Math.ceil(L*z*K/8);if(L==16&&!C.isLE&&C.t33422==null)for(var q=0;q>>8&255}else if(z==3)for(var V=3;V>3^16368,(g[L]|g[L+1]<<8)>>(D&7)&~(-1<>2,N[1]=((p(1)&3)<<12|p(2)<<4|p(3)>>4)&16383,N[2]=p(3)>>2&3,N[3]=(p(3)&3)<<8|p(4),N[4]=p(5)<<2|p(6)>>6,N[5]=(p(6)&63)<<4|p(7)>>4,N[6]=p(7)>>2&3,N[7]=(p(7)&3)<<8|p(8),N[8]=p(9)<<2&1020|p(10)>>6,N[9]=(p(10)<<4|p(11)>>4)&1023,N[10]=p(11)>>2&3,N[11]=(p(11)&3)<<8|p(12),N[12]=(p(13)<<2&1020|p(14)>>6)&1023,N[13]=(p(14)<<4|p(15)>>4)&1023,D+=16,L=0}function d(){N[0]=p(0)<<4|p(1)>>4,N[1]=((p(1)&15)<<8|p(2))&4095,N[2]=p(3)>>6&3,N[3]=(p(3)&63)<<2|p(4)>>6,N[4]=(p(4)&63)<<2|p(5)>>6,N[5]=(p(5)&63)<<2|p(6)>>6,N[6]=p(6)>>4&3,N[7]=(p(6)&15)<<4|p(7)>>4,N[8]=(p(7)&15)<<4|p(8)>>4,N[9]=(p(8)&15)<<4|p(9)>>4,N[10]=p(9)>>2&3,N[11]=(p(9)&3)<<6|p(10)>>2,N[12]=(p(10)&3)<<6|p(11)>>2,N[13]=(p(11)&3)<<6|p(12)>>2,N[14]=p(12)&3,N[15]=p(13),N[16]=p(14),N[17]=p(15),D+=16,L=0}function x(){_[0]=0,_[1]=0,O[0]=0,O[1]=0}if(I==7)throw I;else if(I==6){var b=K==12,o=b?d:l,GA=b?14:11,VA=b?128:512,EA=b?2048:8192,UA=b?16383:65535,CA=b?4095:16383,QA=$/GA,KA=QA*16,HA=b?18:14;for(v=0;vS)PA+=O[k]-S;O[k]=PA}else if(_[k]=PA,PA)O[k]=PA;else PA=O[k];m[T+y++]=PA-15<=UA?PA-15&UA:PA+2147483633>>31&CA}}}}}else if(I==5){var NA=K==12?10:9;for(v=0;v>4),m[T++]=((N[4]&15)<<8)+N[3],m[T++]=16*N[5]+(N[4]>>4),m[T++]=((N[7]&15)<<8)+N[6],m[T++]=16*N[8]+(N[7]>>4),m[T++]=((N[10]&15)<<8)+N[9],m[T++]=16*N[11]+(N[10]>>4),m[T++]=((N[13]&15)<<8)+N[12],m[T++]=16*N[14]+(N[13]>>4);else if(K==14)m[T++]=N[0]+((N[1]&63)<<8),m[T++]=(N[1]>>6)+4*N[2]+((N[3]&15)<<10),m[T++]=(N[3]>>4)+16*N[4]+((N[5]&3)<<12),m[T++]=((N[5]&252)>>2)+(N[6]<<6),m[T++]=N[7]+((N[8]&63)<<8),m[T++]=(N[8]>>6)+4*N[9]+((N[10]&15)<<10),m[T++]=(N[10]>>4)+16*N[11]+((N[12]&3)<<12),m[T++]=((N[12]&252)>>2)+(N[13]<<6),m[T++]=N[14]+((N[15]&63)<<8)}else if(I==4)for(v=0;v>3-i(2);if(O[k]){if(w=i(8),w!=0){if(_[k]-=128<11)_[k]=O[k]<<4|i(4);m[T++]=_[y&1]}else throw I},Y.decode._decodeVC5=function(){var C=[1,0,1,0,2,2,1,1,3,7,1,2,5,25,1,3,6,48,1,4,6,54,1,5,7,111,1,8,7,99,1,6,7,105,12,0,7,107,1,7,8,209,20,0,8,212,1,9,8,220,1,10,9,393,1,11,9,394,32,0,9,416,1,12,9,427,1,13,10,887,1,18,10,784,1,14,10,790,1,15,10,835,60,0,10,852,1,16,10,885,1,17,11,1571,1,19,11,1668,1,20,11,1669,100,0,11,1707,1,21,11,1772,1,22,12,3547,1,29,12,3164,1,24,12,3166,1,25,12,3140,1,23,12,3413,1,26,12,3537,1,27,12,3539,1,28,13,7093,1,35,13,6283,1,30,13,6331,1,31,13,6335,180,0,13,6824,1,32,13,7072,1,33,13,7077,320,0,13,7076,1,34,14,12565,1,36,14,12661,1,37,14,12669,1,38,14,13651,1,39,14,14184,1,40,15,28295,1,46,15,28371,1,47,15,25320,1,42,15,25336,1,43,15,25128,1,41,15,27300,1,44,15,28293,1,45,16,50259,1,48,16,50643,1,49,16,50675,1,50,16,56740,1,53,16,56584,1,51,16,56588,1,52,17,113483,1,61,17,113482,1,60,17,101285,1,55,17,101349,1,56,17,109205,1,57,17,109207,1,58,17,100516,1,54,17,113171,1,59,18,202568,1,62,18,202696,1,63,18,218408,1,64,18,218412,1,65,18,226340,1,66,18,226356,1,67,18,226358,1,68,19,402068,1,69,19,405138,1,70,19,405394,1,71,19,436818,1,72,19,436826,1,73,19,452714,1,75,19,452718,1,76,19,452682,1,74,20,804138,1,77,20,810279,1,78,20,810790,1,79,20,873638,1,80,20,873654,1,81,20,905366,1,82,20,905430,1,83,20,905438,1,84,21,1608278,1,85,21,1620557,1,86,21,1621582,1,87,21,1621583,1,88,21,1747310,1,89,21,1810734,1,90,21,1810735,1,91,21,1810863,1,92,21,1810879,1,93,22,3621725,1,99,22,3621757,1,100,22,3241112,1,94,22,3494556,1,95,22,3494557,1,96,22,3494622,1,97,22,3494623,1,98,23,6482227,1,102,23,6433117,1,101,23,6989117,1,103,23,6989119,1,105,23,6989118,1,104,23,7243449,1,106,23,7243512,1,107,24,13978233,1,111,24,12964453,1,109,24,12866232,1,108,24,14486897,1,113,24,13978232,1,110,24,14486896,1,112,24,14487026,1,114,24,14487027,1,115,25,25732598,1,225,25,25732597,1,189,25,25732596,1,188,25,25732595,1,203,25,25732594,1,202,25,25732593,1,197,25,25732592,1,207,25,25732591,1,169,25,25732590,1,223,25,25732589,1,159,25,25732522,1,235,25,25732579,1,152,25,25732575,1,192,25,25732489,1,179,25,25732573,1,201,25,25732472,1,172,25,25732576,1,149,25,25732488,1,178,25,25732566,1,120,25,25732571,1,219,25,25732577,1,150,25,25732487,1,127,25,25732506,1,211,25,25732548,1,125,25,25732588,1,158,25,25732486,1,247,25,25732467,1,238,25,25732508,1,163,25,25732552,1,228,25,25732603,1,183,25,25732513,1,217,25,25732587,1,168,25,25732520,1,122,25,25732484,1,128,25,25732562,1,249,25,25732505,1,187,25,25732504,1,186,25,25732483,1,136,25,25928905,1,181,25,25732560,1,255,25,25732500,1,230,25,25732482,1,135,25,25732555,1,233,25,25732568,1,222,25,25732583,1,145,25,25732481,1,134,25,25732586,1,167,25,25732521,1,248,25,25732518,1,209,25,25732480,1,243,25,25732512,1,216,25,25732509,1,164,25,25732547,1,140,25,25732479,1,157,25,25732544,1,239,25,25732574,1,191,25,25732564,1,251,25,25732478,1,156,25,25732546,1,139,25,25732498,1,242,25,25732557,1,133,25,25732477,1,162,25,25732515,1,213,25,25732584,1,165,25,25732514,1,212,25,25732476,1,227,25,25732494,1,198,25,25732531,1,236,25,25732530,1,234,25,25732529,1,117,25,25732528,1,215,25,25732527,1,124,25,25732526,1,123,25,25732525,1,254,25,25732524,1,253,25,25732523,1,148,25,25732570,1,218,25,25732580,1,146,25,25732581,1,147,25,25732569,1,224,25,25732533,1,143,25,25732540,1,184,25,25732541,1,185,25,25732585,1,166,25,25732556,1,132,25,25732485,1,129,25,25732563,1,250,25,25732578,1,151,25,25732501,1,119,25,25732502,1,193,25,25732536,1,176,25,25732496,1,245,25,25732553,1,229,25,25732516,1,206,25,25732582,1,144,25,25732517,1,208,25,25732558,1,137,25,25732543,1,241,25,25732466,1,237,25,25732507,1,190,25,25732542,1,240,25,25732551,1,131,25,25732554,1,232,25,25732565,1,252,25,25732475,1,171,25,25732493,1,205,25,25732492,1,204,25,25732491,1,118,25,25732490,1,214,25,25928904,1,180,25,25732549,1,126,25,25732602,1,182,25,25732539,1,175,25,25732545,1,141,25,25732559,1,138,25,25732537,1,177,25,25732534,1,153,25,25732503,1,194,25,25732606,1,160,25,25732567,1,121,25,25732538,1,174,25,25732497,1,246,25,25732550,1,130,25,25732572,1,200,25,25732474,1,170,25,25732511,1,221,25,25732601,1,196,25,25732532,1,142,25,25732519,1,210,25,25732495,1,199,25,25732605,1,155,25,25732535,1,154,25,25732499,1,244,25,25732510,1,220,25,25732600,1,195,25,25732607,1,161,25,25732604,1,231,25,25732473,1,173,25,25732599,1,226,26,51465122,1,116,26,51465123,0,1],X,G,F,W=[3,3,3,3,2,2,2,1,1,1],Z=24576,U=16384,$=8192,E=U|$;function K(q){var w=q[1],P=q[0][w>>>3]>>>7-(w&7)&1;return q[1]++,P}function I(q,w){if(X==null){X={};for(var P=0;P>>1}return q}function H(q,w){return q>>w}function D(q,w,P,_,O,k){w[P]=H(H(11*q[O]-4*q[O+k]+q[O+k+k]+4,3)+q[_],1),w[P+k]=H(H(5*q[O]+4*q[O+k]-q[O+k+k]+4,3)-q[_],1)}function L(q,w,P,_,O,k){var T=q[O-k]-q[O+k],S=q[O],v=q[_];w[P]=H(H(T+4,3)+S+v,1),w[P+k]=H(H(-T+4,3)+S-v,1)}function z(q,w,P,_,O,k){w[P]=H(H(5*q[O]+4*q[O-k]-q[O-k-k]+4,3)+q[_],1),w[P+k]=H(H(11*q[O]-4*q[O-k]+q[O-k-k]+4,3)-q[_],1)}function M(q){return q=q<0?0:q>4095?4095:q,q=F[q]>>>2,q}function N(q,w,P,_,O,k){_=new Uint16Array(_.buffer);var T=Date.now(),S=Y._binBE,v=w+P,y,h,g,m,i,p,l,d,x,b,o,GA,VA,EA,UA,CA,QA,KA;w+=4;var HA=k[0]==1;while(w>>1)*(g>>>1));KA=new Int16Array((h>>>1)*(g>>>1)),G=new Int16Array(1024);for(var NA=0;NA<1024;NA++){var TA=NA-512,vA=Math.abs(TA),y=Math.floor(768*vA*vA*vA/16581375)+vA;G[NA]=Math.sign(TA)*y}F=new Uint16Array(4096);var mA=65535;for(var NA=0;NA<4096;NA++){var ZQ=NA,NQ=mA*(Math.pow(113,ZQ/4095)-1)/112;F[NA]=Math.min(NQ,mA)}}var JQ=QA[l],SQ=V(h,1+W[m]),LA=V(g,1+W[m]);if(m==0)for(var IA=0;IA>>1)+jA]=q[tQ]<<8|q[tQ+1]}else{var IQ=[q,w*8],vQ=[],KB=0,zA=SQ*LA,uA=[0,0],MQ=0,hA=0;while(KB0)vQ[KB++]=hA,MQ--}var bQ=(m-1)%3,eQ=bQ!=1?SQ:0,cB=bQ!=0?LA:0;for(var IA=0;IA>>1)+eQ,yB=IA*SQ;for(var jA=0;jA>>1,H0=SQ*2,hJ=LA*2;for(var IA=0;IA>14-K1*2&3;var MV=E1[kX];if(MV!=0)for(var IA=0;IA>>1)*(h>>>1)+(jA>>>1),ZW=zV[tQ],Pk=QM[tQ]-2048,$W=BM[tQ]-2048,J4=YM[tQ]-2048,UW=(Pk<<1)+ZW,EW=($W<<1)+ZW,RV=ZW+J4,wV=ZW-J4;if(HA)_[XC]=M(RV),_[XC+1]=M(EW),_[XC+h]=M(UW),_[XC+h+1]=M(wV);else _[XC]=M(UW),_[XC+1]=M(RV),_[XC+h]=M(wV),_[XC+h+1]=M(EW)}}w+=PA*4}else if(QQ==16388)w+=PA*4;else if(XA==8192||XA==8448||XA==9216);else throw QQ.toString(16)}}console.log(Date.now()-T)}return N}(),Y.decode._decodeLogLuv32=function(C,X,G,F,W,Z){var U=C.width,$=U*4,E=0,K=new Uint8Array($);while(E>>(D[l]>>>8);for(var L=0;L>>4,W[Z+l+1]=P<<4|O>>>4,W[Z+l+2]=O<<4|_>>>4}return}var k=new Uint16Array(16),T,S,v,y,h,g,m,i,p,l,d,x=new Uint8Array(U+1);for(T=0;T<$;T++){for(var b=0;b>>11,g=15&v>>>22,m=15&v>>>26;for(i=0;i<4&&128<>3))>>>(p&7)&127)<2047)k[l]=2047;p+=7}for(l=0;l<16;l++,S+=2){var w=k[l]<<1;Y.decode._putsF(W,(T*U+S)*E,w<<16-E)}S-=S&1?1:31}}},Y.decode._decodeNikon=function(C,X,G,F,W,Z,U){var $=[[0,0,1,5,1,1,1,1,1,1,2,0,0,0,0,0,0,5,4,3,6,2,7,1,0,8,9,11,10,12],[0,0,1,5,1,1,1,1,1,1,2,0,0,0,0,0,0,57,90,56,39,22,5,4,3,2,1,0,11,12,12],[0,0,1,4,2,3,1,2,0,0,0,0,0,0,0,0,0,5,4,6,3,7,2,8,1,9,0,10,11,12],[0,0,1,4,3,1,1,1,1,1,2,0,0,0,0,0,0,5,6,4,7,8,3,9,2,1,0,10,11,12,13,14],[0,0,1,5,1,1,1,1,1,1,1,2,0,0,0,0,0,8,92,75,58,41,7,6,5,4,3,2,1,0,13,14],[0,0,1,4,2,2,3,1,2,0,0,0,0,0,0,0,0,7,6,8,5,9,4,10,3,11,12,2,0,1,13,14]],E=C.t256[0],K=C.t257[0],I=C.t258[0],V=0,H=0,D=Y.decode._make_decoder,L=Y.decode._getbithuff,z=X[0].exifIFD.makerNote,M=z.t150?z.t150:z.t140,N=0,q=M[N++],w=M[N++];if(q==73||w==88)N+=2110;if(q==70)V=2;if(I==14)V+=3;var P=[[0,0],[0,0]],_=C.isLE?Y._binLE:Y._binBE;for(var v=0;v<2;v++)for(var O=0;O<2;O++)P[v][O]=_.readShort(M,N),N+=2;var k=1<1)T=Math.floor(k/(S-1));if(q==68&&w==32&&T>0)H=_.readShort(M,562);var v,y,h,g,m,i,p=0,l=[0,0],d=D($[V]),x=[F,0,0,0];for(p=y=0;y>>4,i=(L(G,x,g-m,0)<<1)+1<>>1,(i&1<>>3;C[F]|=G>>>16,C[F+1]|=G>>>8,C[F+2]|=G},Y.decode._getbithuff=function(C,X,G,F){var W=0,Z=Y.decode._get_byte,U,$=X[0],E=X[1],K=X[2],I=X[3];if(G==0||K<0)return 0;while(!I&&K>>32-G,F)K-=F[U+1]>>>8,U=F[U+1]&255;else K-=G;if(K<0)throw"e";return X[0]=$,X[1]=E,X[2]=K,X[3]=I,U},Y.decode._make_decoder=function(C){var X,G,F,W,Z,U=[];for(X=16;X!=0&&!C[X];X--);var $=17;U[0]=X;for(F=G=1;G<=X;G++)for(W=0;W>>8;else for(var H=0;H>>8,W[Z+(H<<1)+1]=M[H]&255;else if(z==14||z==12||z==10){var q=16-z;for(var H=0;H1;if(!z){if(X[G]==255&&X[G+1]==W)return{jpegOffset:G};if(w!=null){if(X[G+P]==255&&X[G+P+1]==W)V=G+P;else B("JPEGInterchangeFormat does not point to SOI");if(_==null)B("JPEGInterchangeFormatLength field is missing");else if(P>=H||P+O<=H)B("JPEGInterchangeFormatLength field value is invalid");if(V!=null)return{jpegOffset:V}}}if(T!=null)S=T[0],v=T[1];if(w!=null){if(_!=null)if(O>=2&&P+O<=H){if(X[G+P+O-2]==255&&X[G+P+O-1]==W)D=new Uint8Array(O-2);else D=new Uint8Array(O);for(M=0;M offset to first strip or tile")}if(D==null){var g=0,m=[];m[g++]=255,m[g++]=W;var i=C.t519;if(i==null)throw Error("JPEGQTables tag is missing");for(M=0;M>>8,m[g++]=l&255,m[g++]=M|q<<4;for(N=0;N<16;N++)m[g++]=X[G+p[M]+N];for(N=0;N>>8&255,m[g++]=C.height&255,m[g++]=C.width>>>8&255,m[g++]=C.width&255,m[g++]=y,y==1)m[g++]=1,m[g++]=17,m[g++]=0;else for(M=0;M<3;M++)m[g++]=M+1,m[g++]=M!=0?17:(S&15)<<4|v&15,m[g++]=M;if(h!=null&&h[0]!=0)m[g++]=255,m[g++]=E,m[g++]=0,m[g++]=4,m[g++]=h[0]>>>8&255,m[g++]=h[0]&255;D=new Uint8Array(m)}var d=-1;M=0;while(M>>8&255,D[b++]=C.height&255,D[b++]=C.width>>>8&255,D[b++]=C.width&255,D[b++]=y,y==1)D[b++]=1,D[b++]=17,D[b++]=0;else for(M=0;M<3;M++)D[b++]=M+1,D[b++]=M!=0?17:(S&15)<<4|v&15,D[b++]=M}if(X[H]==255&&X[H+1]==I){var o=X[H+2]<<8|X[H+3];L=new Uint8Array(o+2),L[0]=X[H],L[1]=X[H+1],L[2]=X[H+2],L[3]=X[H+3];for(M=0;M>>8&255,K[V.sofPosition+6]=C.height&255,K[V.sofPosition+7]=C.width>>>8&255,K[V.sofPosition+8]=C.width&255,X[G]!=255||X[G+1]!=SOS)K.set(V.sosMarker,I),I+=sosMarker.length;for(U=0;U=0&&E<128)for(var K=0;K=-127&&E<0){for(var K=0;K<-E+1;K++)U[W]=Z[X],W++;X++}}return W},Y.decode._decodeThunder=function(C,X,G,F,W){var Z=[0,1,0,-1],U=[0,1,2,3,0,-3,-2,-1],$=X+G,E=W*2,K=0;while(X<$){var I=C[X],V=I>>>6,H=I&63;if(X++,V==3)K=H&15,F[E>>>1]|=K<<4*(1-E&1),E++;if(V==0)for(var D=0;D>>1]|=K<<4*(1-E&1),E++;if(V==2)for(var D=0;D<2;D++){var L=H>>>3*(1-D)&7;if(L!=4)K+=U[L],F[E>>>1]|=K<<4*(1-E&1),E++}if(V==1)for(var D=0;D<3;D++){var L=H>>>2*(2-D)&3;if(L!=2)K+=Z[L],F[E>>>1]|=K<<4*(1-E&1),E++}}},Y.decode._dmap={"1":0,"011":1,"000011":2,"0000011":3,"010":-1,"000010":-2,"0000010":-3},Y.decode._lens=function(){var C=function(E,K,I,V){for(var H=0;H>>3>>3]>>>7-(E&7)&1;if(U==2)T=C[E>>>3]>>>(E&7)&1;if(E++,I+=T,_=="H"){if($._lens[w][I]!=null){var S=$._lens[w][I];if(I="",K+=S,S<64){if($._addNtimes(V,K,w),L+=K,w=1-w,K=0,O--,O==0)_=""}}}else{if(I=="0001")I="",$._addNtimes(V,q-L,w),L=q;if(I=="001")I="",_="H",O=2;if($._dmap[I]!=null)z=N+$._dmap[I],$._addNtimes(V,z-L,w),L=z,I="",w=1-w}if(V.length==Z&&_=="")$._writeBits(V,F,W*8+P*k),w=0,P++,L=0,H=$._makeDiff(V),V=[]}},Y.decode._findDiff=function(C,X,G){for(var F=0;F=X&&C[F+1]==G)return C[F]},Y.decode._makeDiff=function(C){var X=[];if(C[0]==1)X.push(0,1);for(var G=1;G>>3>>3]>>>7-(E&7)&1;if(U==2)z=C[E>>>3]>>>(E&7)&1;if(E++,I+=z,K=$._lens[H][I],K!=null){if($._addNtimes(V,K,H),I="",K<64)H=1-H;if(V.length==Z){if($._writeBits(V,F,W*8+D*L),V=[],D++,H=0,(E&7)!=0)E+=8-(E&7);if(K>=64)E+=8}}}},Y.decode._decodeG3=function(C,X,G,F,W,Z,U,$){var E=Y.decode,K=X<<3,I=0,V="",H=[],D=[];for(var L=0;L>>3>>3]>>>7-(K&7)&1;if(U==2)v=C[K>>>3]>>>(K&7)&1;if(K++,V+=v,T){if(E._lens[P][V]!=null){var y=E._lens[P][V];if(V="",I+=y,y<64)E._addNtimes(H,I,P),P=1-P,I=0}}else if(O=="H"){if(E._lens[P][V]!=null){var y=E._lens[P][V];if(V="",I+=y,y<64){if(E._addNtimes(H,I,P),z+=I,P=1-P,I=0,k--,k==0)O=""}}}else{if(V=="0001")V="",E._addNtimes(H,w-z,P),z=w;if(V=="001")V="",O="H",k=2;if(E._dmap[V]!=null)M=q+E._dmap[V],E._addNtimes(H,M-z,P),z=M,V="",P=1-P}if(V.endsWith("000000000001")){if(_>=0)E._writeBits(H,F,W*8+_*S);if($){if(U==1)T=(C[K>>>3]>>>7-(K&7)&1)==1;if(U==2)T=(C[K>>>3]>>>(K&7)&1)==1;K++}V="",P=0,_++,z=0,D=E._makeDiff(H),H=[]}}if(H.length==Z)E._writeBits(H,F,W*8+_*S)},Y.decode._addNtimes=function(C,X,G){for(var F=0;F>>3]|=C[F]<<7-(G+F&7)},Y.decode._decodeLZW=Y.decode._decodeLZW=function(){var C,X,G,F,W=0,Z=0,U=0,$=0,E=function(){var M=C>>>3,N=X[M]<<16|X[M+1]<<8|X[M+2],q=N>>>24-(C&7)-Z&(1<>>----------------");for(var E=0;EX.buffer.byteLength)V=X.buffer.byteLength-L;D=new Uint8Array(X.buffer,L,V)}if(I==2){var z=V<5?G-4:H,M=X[z],N=Math.max(0,Math.min(V-1,X.length-z));if(M<128||N==0)D.push(C.readASCII(X,z,N));else D=new Uint8Array(X.buffer,z,N)}if(I==3)for(var q=0;q4)C.writeUint(G,F,$),M=$;if(V==1||V==7)for(var N=0;N4)z+=z&1,$+=z;F+=4}return[F,$]},Y.toRGBA8=function(C,X){function G(JQ){return JQ<0.0031308?12.92*JQ:1.055*Math.pow(JQ,0.4166666666666667)-0.055}var{width:F,height:W}=C,Z=F*W,U=Z*4,$=C.data,E=new Uint8Array(Z*4),K=C.t262?C.t262[0]:2,I=C.t258?Math.min(32,C.t258[0]):1;if(C.t262==null&&I==1)K=0;var V=C.t277?C.t277[0]:C.t258?C.t258.length:[1,1,3,1,1,4,3][K],H=C.t339?C.t339[0]:null;if(K==1&&I==32&&H!=3)throw"e";var D=Math.ceil(V*I*F/8);if(K==0){X=0.00390625;for(var L=0;L>3)]>>7-(N&7)&1;E[q]=E[q+1]=E[q+2]=(1-w)*255,E[q+3]=255}if(I==4)for(var N=0;N>1)]>>4-4*(N&1)&15;E[q]=E[q+1]=E[q+2]=(15-w)*17,E[q+3]=255}if(I==8)for(var N=0;N>3)]>>7-(N&7)&1;E[q]=E[q+1]=E[q+2]=w*255,E[q+3]=255}if(I==2)for(var N=0;N>2)]>>6-2*(N&3)&3;E[q]=E[q+1]=E[q+2]=w*85,E[q+3]=255}if(I==8)for(var N=0;N>>2)+N,w=_[P];E[q]=E[q+1]=E[q+2]=~~(0.5+255*w),E[q+3]=255}}}else if(K==2)if(I==8){if(V==1)for(var N=0;N=4)for(var N=0;N1&&C.t338&&C.t338[0]!=0;for(var L=0;L>>3)]>>>7-(i&7)&1;else if(I==2)p=$[l+(i>>>2)]>>>6-2*(i&3)&3;else if(I==4)p=$[l+(i>>>1)]>>>4-4*(i&1)&15;else if(I==8)p=$[l+i*V];else throw I;E[q]=h[p]>>8,E[q+1]=h[g+p]>>8,E[q+2]=h[g+g+p]>>8,E[q+3]=m?$[l+i*V+1]:255}}else if(K==5){var d=V>4?1:0;for(var N=0;N>>1),GA=$[x+(QA&1)],KA=$[x+2]-128,HA=$[x+3]-128,DA=GA+((HA>>2)+(HA>>3)+(HA>>5)),hA=GA-((KA>>2)+(KA>>4)+(KA>>5))-((HA>>1)+(HA>>3)+(HA>>4)+(HA>>5)),QQ=GA+(KA+(KA>>1)+(KA>>2)+(KA>>6));E[q]=Math.max(0,Math.min(255,DA)),E[q+1]=Math.max(0,Math.min(255,hA)),E[q+2]=Math.max(0,Math.min(255,QQ)),E[q+3]=255}}}else if(K==32845)for(var L=0;LF)F=$,W=U}Y.decodeImage(C,W,X);var E=Y.toRGBA8(W),K=W.width,I=W.height,V=document.createElement("canvas");V.width=K,V.height=I;var H=V.getContext("2d"),D=new ImageData(new Uint8ClampedArray(E.buffer),K,I);return H.putImageData(D,0,0),V.toDataURL()},Y._binBE={nextZero:function(C,X){while(C[X]!=0)X++;return X},readUshort:function(C,X){return C[X]<<8|C[X+1]},readShort:function(C,X){var G=Y._binBE.ui8;return G[0]=C[X+1],G[1]=C[X+0],Y._binBE.i16[0]},readInt:function(C,X){var G=Y._binBE.ui8;return G[0]=C[X+3],G[1]=C[X+2],G[2]=C[X+1],G[3]=C[X+0],Y._binBE.i32[0]},readUint:function(C,X){var G=Y._binBE.ui8;return G[0]=C[X+3],G[1]=C[X+2],G[2]=C[X+1],G[3]=C[X+0],Y._binBE.ui32[0]},readASCII:function(C,X,G){var F="";for(var W=0;W>8&255,C[X+1]=G&255},writeInt:function(C,X,G){var F=Y._binBE.ui8;Y._binBE.i32[0]=G,C[X+3]=F[0],C[X+2]=F[1],C[X+1]=F[2],C[X+0]=F[3]},writeUint:function(C,X,G){C[X]=G>>24&255,C[X+1]=G>>16&255,C[X+2]=G>>8&255,C[X+3]=G>>0&255},writeASCII:function(C,X,G){for(var F=0;F>8&255},writeInt:function(C,X,G){var F=Y._binBE.ui8;Y._binBE.i32[0]=G,C[X+0]=F[0],C[X+1]=F[1],C[X+2]=F[2],C[X+3]=F[3]},writeUint:function(C,X,G){C[X]=G>>>0&255,C[X+1]=G>>>8&255,C[X+2]=G>>>16&255,C[X+3]=G>>>24&255},writeASCII:Y._binBE.writeASCII},Y._copyTile=function(C,X,G,F,W,Z,U,$){var E=Math.min(X,W-U),K=Math.min(G,Z-$);for(var I=0;I>--S&1,y=q[y+h];T[_]=y}}function Z(M,N,q,w){if(M[N+3]!=255)return 0;if(q==0)return N;for(var P=0;P<2;P++){if(M[N+P]==0)M[N+P]=M.length,M.push(0,0,w,255);var _=Z(M,M[N+P],q-1,w+1);if(_!=0)return _}return 0}function U(M){var{b:N,f:q}=M;while(N<25&&M.a>(N.b-=M)&65535>>16-M}function E(M,N){var q=M[0],w=0,P=255,_=0;if(N.b<16)U(N);var O=N.f>>N.b-8&255;w=M[1][O],P=q[w+3],N.b-=q[w+2];while(P==255)_=N.f>>--N.b&1,w=q[w+_],P=q[w+3];return P}function K(M,N){if(M<32768>>16-N)M+=-(1<>4,i&15]}}else if(y==65476){var l=X+h-2;while(X>>4],_[x[0]]=x.slice(1)}q=G(),X+=2;break}else if(y==65501)P=F();else X+=h-2}var b=w>8?Uint16Array:Uint8Array,o=new b(S*v*T),GA={b:0,f:0,c:q==8,a:X,data:C,d:C.length,e:P};if(GA.c)D(o,v*T,GA,k[0],S);else{var VA=[],EA=0,UA=0;for(var g=0;gEA)EA=QA;if(KA>UA)UA=KA;VA.push(QA*KA)}if(EA!=1||UA!=1){if(T!=3||VA[1]!=1||VA[2]!=1)throw"e";if(EA!=2||UA!=1&&UA!=2)throw"e";var HA=[],DA=0;for(var g=0;g>>1)*QQ+(QA>>>1))*DA,ZQ=(KA&1)*2+(QA&1);o[vA]=TA[mA+ZQ],o[vA+1]=TA[mA+4],o[vA+2]=TA[mA+5]}else for(var QA=0;QA>>1))*DA,ZQ=QA&1;o[vA]=TA[mA+ZQ],o[vA+1]=TA[mA+2],o[vA+2]=TA[mA+3]}}else if(V(o,v*T,GA,k,T,S),P==0)z(o,q,v,S,0,T,T,w);else{var NQ=Math.floor(P/v);for(var KA=0;KA>>1);else if(N==6)p=M[m]+(i-M[m-O]>>>1);else if(N==7)p=i+M[m]>>>1;else throw N;M[g]+=p}}}return L}(),function(){var C=0,X=1,G=2,F=3,W=4,Z=5,U=6,$=7,E=8,K=9,I=10,V=11,H=12,D=13,L=14,z=15,M=16,N=17,q=18;function w(d){var x=Y._binBE.readUshort,b={b:x(d,0),i:d[2],C:d[3],u:d[4],q:x(d,5),k:x(d,7),e:x(d,9),l:x(d,11),s:d[13],d:x(d,14)};if(b.b!=18771||b.i>1||b.q<6||b.q%6||b.e<768||b.e%24||b.l!=768||b.k=b.l||b.s>16||b.s!=b.k/b.l||b.s!=Math.ceil(b.e/b.l)||b.d!=b.q/6||b.u!=12&&b.u!=14&&b.u!=16||b.C!=16&&b.C!=0)throw"Invalid data";if(b.i==0)throw"Not implemented. We need this file!";return b.h=b.C==16,b.m=(b.h?b.l*2/3:b.l>>>1)|0,b.A=b.m+2,b.f=64,b.g=(1<>>6);for(var o=0;o<3;o++)for(var GA=0;GA<41;GA++)x[o][GA]=[b,1];return x}function S(d){for(var x=-1,b=0;!b;x++)if(b=d[d.j]>>>7-d.a&1,d.a++,d.a&=7,!d.a)d.j++;return x}function v(d,x){var b=0,o=8-d.a,GA=d.j,VA=d.a;if(x){if(x>=o)do b<<=o,x-=o,b|=d[d.j]&(1<=8);if(x)b<<=x,o-=x,b|=d[d.j]>>>o&(1<IA&&LA>>2,UA){XA[CA]=jA;return}hA=x.t*x.c[d.g+vA-NA]+x.c[d.g+TA-vA]}else jA=vA>TA&&vA>mA||vA>>2:ZQ+NQ>>>1,hA=x.t*x.c[d.g+vA-TA]+x.c[d.g+TA-ZQ];QQ=JQ(hA);var tQ=S(b);if(tQ>>1):DA>>>1,EA[QQ][0]+=JQ(DA),EA[QQ][1]==d.f)EA[QQ][0]>>>=1,EA[QQ][1]>>>=1;if(EA[QQ][1]++,jA=hA<0?jA-DA:jA+DA,d.i){if(jA<0)jA+=x.w;else if(jA>d.g)jA-=x.w}XA[CA]=jA>=0?Math.min(jA,d.g):0}function g(d,x,b){var o=d[0].length;for(var GA=x;GA<=b;GA++)d[GA][0]=d[GA-1][1],d[GA][o-1]=d[GA-1][o-2]}function m(d){g(d,$,H),g(d,G,W),g(d,z,N)}function i(d,x,b,o,GA,VA,EA,UA,CA,QA,KA,HA,DA){var hA=0,QQ=1,XA=GAW;while(QQ8)h(d,x,b,o,GA,QQ,UA[CA]),h(d,x,b,o,VA,QQ,UA[CA]),QQ+=2}m(o)}function p(d,x,b,o,GA,VA){i(d,x,b,o,G,$,GA,VA,0,0,1,0,8),i(d,x,b,o,E,z,GA,VA,1,0,1,0,8),i(d,x,b,o,F,K,GA,VA,2,1,0,3,0),i(d,x,b,o,I,M,GA,VA,0,0,0,3,2),i(d,x,b,o,W,V,GA,VA,1,0,0,3,2),i(d,x,b,o,H,N,GA,VA,2,1,0,3,0)}function l(d,x,b,o,GA,VA){var EA=VA.length,UA=d.l;if(GA+1==d.s)UA=d.e-GA*d.l;var CA=6*d.e*o+GA*d.l;for(var QA=0;QA<6;QA++){for(var KA=0;KA>>1);else if(HA==2)DA=z+(QA>>>1);else DA=$+QA;var hA=d.h?(KA*2/3&2147483646|KA%3&1)+(KA%3>>>1):KA>>>1;x[CA+KA]=b[DA][hA+1]}CA+=d.e}}Y._decompressRAF=function(d,x){var b=w(d),o=P(d,b),GA=k(b),VA=new Int16Array(b.e*b.q);if(x==null)x=b.h?[[1,1,0,1,1,2],[1,1,2,1,1,0],[2,0,1,0,2,1],[1,1,2,1,1,0],[1,1,0,1,1,2],[0,2,1,2,0,1]]:[[0,1],[3,2]];var EA=[[C,F],[X,W],[Z,V],[U,H],[D,M],[L,N]],UA=[];for(var CA=0;CA{/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh */ynQ.read=function(A,Q,B,Y,J){var C,X,G=J*8-Y-1,F=(1<>1,Z=-7,U=B?J-1:0,$=B?-1:1,E=A[Q+U];U+=$,C=E&(1<<-Z)-1,E>>=-Z,Z+=G;for(;Z>0;C=C*256+A[Q+U],U+=$,Z-=8);X=C&(1<<-Z)-1,C>>=-Z,Z+=Y;for(;Z>0;X=X*256+A[Q+U],U+=$,Z-=8);if(C===0)C=1-W;else if(C===F)return X?NaN:(E?-1:1)*(1/0);else X=X+Math.pow(2,Y),C=C-W;return(E?-1:1)*X*Math.pow(2,C-Y)};ynQ.write=function(A,Q,B,Y,J,C){var X,G,F,W=C*8-J-1,Z=(1<>1,$=J===23?Math.pow(2,-24)-Math.pow(2,-77):0,E=Y?0:C-1,K=Y?1:-1,I=Q<0||Q===0&&1/Q<0?1:0;if(Q=Math.abs(Q),isNaN(Q)||Q===1/0)G=isNaN(Q)?1:0,X=Z;else{if(X=Math.floor(Math.log(Q)/Math.LN2),Q*(F=Math.pow(2,-X))<1)X--,F*=2;if(X+U>=1)Q+=$/F;else Q+=$*Math.pow(2,1-U);if(Q*F>=2)X++,F/=2;if(X+U>=Z)G=0,X=Z;else if(X+U>=1)G=(Q*F-1)*Math.pow(2,J),X=X+U;else G=Q*Math.pow(2,U-1)*Math.pow(2,J),X=0}for(;J>=8;A[B+E]=G&255,E+=K,G/=256,J-=8);X=X<0;A[B+E]=X&255,E+=K,X/=256,W-=8);A[B+E-K]|=I*128}});var k5A=R((O5A)=>{Object.defineProperty(O5A,"__esModule",{value:!0});O5A.AnsiStringType=O5A.StringType=O5A.BufferType=O5A.Uint8ArrayType=O5A.IgnoreType=O5A.Float80_LE=O5A.Float80_BE=O5A.Float64_LE=O5A.Float64_BE=O5A.Float32_LE=O5A.Float32_BE=O5A.Float16_LE=O5A.Float16_BE=O5A.INT64_BE=O5A.UINT64_BE=O5A.INT64_LE=O5A.UINT64_LE=O5A.INT32_LE=O5A.INT32_BE=O5A.INT24_BE=O5A.INT24_LE=O5A.INT16_LE=O5A.INT16_BE=O5A.INT8=O5A.UINT32_BE=O5A.UINT32_LE=O5A.UINT24_BE=O5A.UINT24_LE=O5A.UINT16_BE=O5A.UINT16_LE=O5A.UINT8=void 0;var W7=M5A();function iQ(A){return new DataView(A.buffer,A.byteOffset)}O5A.UINT8={len:1,get(A,Q){return iQ(A).getUint8(Q)},put(A,Q,B){return iQ(A).setUint8(Q,B),Q+1}};O5A.UINT16_LE={len:2,get(A,Q){return iQ(A).getUint16(Q,!0)},put(A,Q,B){return iQ(A).setUint16(Q,B,!0),Q+2}};O5A.UINT16_BE={len:2,get(A,Q){return iQ(A).getUint16(Q)},put(A,Q,B){return iQ(A).setUint16(Q,B),Q+2}};O5A.UINT24_LE={len:3,get(A,Q){let B=iQ(A);return B.getUint8(Q)+(B.getUint16(Q+1,!0)<<8)},put(A,Q,B){let Y=iQ(A);return Y.setUint8(Q,B&255),Y.setUint16(Q+1,B>>8,!0),Q+3}};O5A.UINT24_BE={len:3,get(A,Q){let B=iQ(A);return(B.getUint16(Q)<<8)+B.getUint8(Q+2)},put(A,Q,B){let Y=iQ(A);return Y.setUint16(Q,B>>8),Y.setUint8(Q+2,B&255),Q+3}};O5A.UINT32_LE={len:4,get(A,Q){return iQ(A).getUint32(Q,!0)},put(A,Q,B){return iQ(A).setUint32(Q,B,!0),Q+4}};O5A.UINT32_BE={len:4,get(A,Q){return iQ(A).getUint32(Q)},put(A,Q,B){return iQ(A).setUint32(Q,B),Q+4}};O5A.INT8={len:1,get(A,Q){return iQ(A).getInt8(Q)},put(A,Q,B){return iQ(A).setInt8(Q,B),Q+1}};O5A.INT16_BE={len:2,get(A,Q){return iQ(A).getInt16(Q)},put(A,Q,B){return iQ(A).setInt16(Q,B),Q+2}};O5A.INT16_LE={len:2,get(A,Q){return iQ(A).getInt16(Q,!0)},put(A,Q,B){return iQ(A).setInt16(Q,B,!0),Q+2}};O5A.INT24_LE={len:3,get(A,Q){let B=O5A.UINT24_LE.get(A,Q);return B>8388607?B-16777216:B},put(A,Q,B){let Y=iQ(A);return Y.setUint8(Q,B&255),Y.setUint16(Q+1,B>>8,!0),Q+3}};O5A.INT24_BE={len:3,get(A,Q){let B=O5A.UINT24_BE.get(A,Q);return B>8388607?B-16777216:B},put(A,Q,B){let Y=iQ(A);return Y.setUint16(Q,B>>8),Y.setUint8(Q+2,B&255),Q+3}};O5A.INT32_BE={len:4,get(A,Q){return iQ(A).getInt32(Q)},put(A,Q,B){return iQ(A).setInt32(Q,B),Q+4}};O5A.INT32_LE={len:4,get(A,Q){return iQ(A).getInt32(Q,!0)},put(A,Q,B){return iQ(A).setInt32(Q,B,!0),Q+4}};O5A.UINT64_LE={len:8,get(A,Q){return iQ(A).getBigUint64(Q,!0)},put(A,Q,B){return iQ(A).setBigUint64(Q,B,!0),Q+8}};O5A.INT64_LE={len:8,get(A,Q){return iQ(A).getBigInt64(Q,!0)},put(A,Q,B){return iQ(A).setBigInt64(Q,B,!0),Q+8}};O5A.UINT64_BE={len:8,get(A,Q){return iQ(A).getBigUint64(Q)},put(A,Q,B){return iQ(A).setBigUint64(Q,B),Q+8}};O5A.INT64_BE={len:8,get(A,Q){return iQ(A).getBigInt64(Q)},put(A,Q,B){return iQ(A).setBigInt64(Q,B),Q+8}};O5A.Float16_BE={len:2,get(A,Q){return W7.read(A,Q,!1,10,this.len)},put(A,Q,B){return W7.write(A,B,Q,!1,10,this.len),Q+this.len}};O5A.Float16_LE={len:2,get(A,Q){return W7.read(A,Q,!0,10,this.len)},put(A,Q,B){return W7.write(A,B,Q,!0,10,this.len),Q+this.len}};O5A.Float32_BE={len:4,get(A,Q){return iQ(A).getFloat32(Q)},put(A,Q,B){return iQ(A).setFloat32(Q,B),Q+4}};O5A.Float32_LE={len:4,get(A,Q){return iQ(A).getFloat32(Q,!0)},put(A,Q,B){return iQ(A).setFloat32(Q,B,!0),Q+4}};O5A.Float64_BE={len:8,get(A,Q){return iQ(A).getFloat64(Q)},put(A,Q,B){return iQ(A).setFloat64(Q,B),Q+8}};O5A.Float64_LE={len:8,get(A,Q){return iQ(A).getFloat64(Q,!0)},put(A,Q,B){return iQ(A).setFloat64(Q,B,!0),Q+8}};O5A.Float80_BE={len:10,get(A,Q){return W7.read(A,Q,!1,63,this.len)},put(A,Q,B){return W7.write(A,B,Q,!1,63,this.len),Q+this.len}};O5A.Float80_LE={len:10,get(A,Q){return W7.read(A,Q,!0,63,this.len)},put(A,Q,B){return W7.write(A,B,Q,!0,63,this.len),Q+this.len}};class z5A{constructor(A){this.len=A}get(A,Q){}}O5A.IgnoreType=z5A;class R5A{constructor(A){this.len=A}get(A,Q){return A.subarray(Q,Q+this.len)}}O5A.Uint8ArrayType=R5A;class w5A{constructor(A){this.len=A}get(A,Q){return Buffer.from(A.subarray(Q,Q+this.len))}}O5A.BufferType=w5A;class j5A{constructor(A,Q){this.len=A,this.encoding=Q}get(A,Q){return Buffer.from(A).toString(this.encoding,Q,Q+this.len)}}O5A.StringType=j5A;class F7{constructor(A){this.len=A}static decode(A,Q,B){let Y="";for(let J=Q;J>10)+55296,(A&1023)+56320)}static singleByteDecoder(A){if(F7.inRange(A,0,127))return A;let Q=F7.windows1252[A-128];if(Q===null)throw Error("invaliding encoding");return Q}get(A,Q=0){return F7.decode(A,Q,Q+this.len)}}O5A.AnsiStringType=F7;F7.windows1252=[8364,129,8218,402,8222,8230,8224,8225,710,8240,352,8249,338,141,381,143,144,8216,8217,8220,8221,8226,8211,8212,732,8482,353,8250,339,157,382,376,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255]});var q2=R((v5A)=>{Object.defineProperty(v5A,"__esModule",{value:!0});v5A.EndOfStreamError=v5A.defaultMessages=void 0;v5A.defaultMessages="End-Of-Stream";class _5A extends Error{constructor(){super(v5A.defaultMessages)}}v5A.EndOfStreamError=_5A});var b5A=R((x5A)=>{Object.defineProperty(x5A,"__esModule",{value:!0});x5A.Deferred=void 0;class h5A{constructor(){this.resolve=()=>null,this.reject=()=>null,this.promise=new Promise((A,Q)=>{this.reject=Q,this.resolve=A})}}x5A.Deferred=h5A});var c5A=R((ay)=>{Object.defineProperty(ay,"__esModule",{value:!0});ay.StreamReader=ay.EndOfStreamError=void 0;var m5A=q2(),$sQ=b5A(),UsQ=q2();Object.defineProperty(ay,"EndOfStreamError",{enumerable:!0,get:function(){return UsQ.EndOfStreamError}});var EsQ=1048576;class u5A{constructor(A){if(this.s=A,this.deferred=null,this.endOfStream=!1,this.peekQueue=[],!A.read||!A.once)throw Error("Expected an instance of stream.Readable");this.s.once("end",()=>this.reject(new m5A.EndOfStreamError)),this.s.once("error",(Q)=>this.reject(Q)),this.s.once("close",()=>this.reject(Error("Stream closed")))}async peek(A,Q,B){let Y=await this.read(A,Q,B);return this.peekQueue.push(A.subarray(Q,Q+Y)),Y}async read(A,Q,B){if(B===0)return 0;if(this.peekQueue.length===0&&this.endOfStream)throw new m5A.EndOfStreamError;let Y=B,J=0;while(this.peekQueue.length>0&&Y>0){let C=this.peekQueue.pop();if(!C)throw Error("peekData should be defined");let X=Math.min(C.length,Y);if(A.set(C.subarray(0,X),Q+J),J+=X,Y-=X,X0&&!this.endOfStream){let C=Math.min(Y,EsQ),X=await this.readFromStream(A,Q+J,C);if(J+=X,X{this.readDeferred(J)}),J.deferred.promise}}readDeferred(A){let Q=this.s.read(A.length);if(Q)A.buffer.set(Q,A.offset),A.deferred.resolve(Q.length),this.deferred=null;else this.s.once("readable",()=>{this.readDeferred(A)})}reject(A){if(this.endOfStream=!0,this.deferred)this.deferred.reject(A),this.deferred=null}}ay.StreamReader=u5A});var uI=R((M2)=>{Object.defineProperty(M2,"__esModule",{value:!0});M2.StreamReader=M2.EndOfStreamError=void 0;var KsQ=q2();Object.defineProperty(M2,"EndOfStreamError",{enumerable:!0,get:function(){return KsQ.EndOfStreamError}});var VsQ=c5A();Object.defineProperty(M2,"StreamReader",{enumerable:!0,get:function(){return VsQ.StreamReader}})});var oy=R((p5A)=>{Object.defineProperty(p5A,"__esModule",{value:!0});p5A.AbstractTokenizer=void 0;var z2=uI();class l5A{constructor(A){this.position=0,this.numBuffer=new Uint8Array(8),this.fileInfo=A?A:{}}async readToken(A,Q=this.position){let B=Buffer.alloc(A.len);if(await this.readBuffer(B,{position:Q})Q)return this.position+=Q,Q}return this.position+=A,A}async close(){}normalizeOptions(A,Q){if(Q&&Q.position!==void 0&&Q.position{Object.defineProperty(s5A,"__esModule",{value:!0});s5A.ReadStreamTokenizer=void 0;var HsQ=oy(),R2=uI(),DsQ=256000;class n5A extends HsQ.AbstractTokenizer{constructor(A,Q){super(Q);this.streamReader=new R2.StreamReader(A)}async getFileInfo(){return this.fileInfo}async readBuffer(A,Q){let B=this.normalizeOptions(A,Q),Y=B.position-this.position;if(Y>0)return await this.ignore(Y),this.readBuffer(A,Q);else if(Y<0)throw Error("`options.position` must be equal or greater than `tokenizer.position`");if(B.length===0)return 0;let J=await this.streamReader.read(A,B.offset,B.length);if(this.position+=J,(!Q||!Q.mayBeLess)&&J0){let C=new Uint8Array(B.length+J);return Y=await this.peekBuffer(C,{mayBeLess:B.mayBeLess}),A.set(C.subarray(J),B.offset),Y-J}else if(J<0)throw Error("Cannot peek from a negative offset in a stream")}if(B.length>0){try{Y=await this.streamReader.peek(A,B.offset,B.length)}catch(J){if(Q&&Q.mayBeLess&&J instanceof R2.EndOfStreamError)return 0;throw J}if(!B.mayBeLess&&Y{Object.defineProperty(t5A,"__esModule",{value:!0});t5A.BufferTokenizer=void 0;var NsQ=uI(),LsQ=oy();class o5A extends LsQ.AbstractTokenizer{constructor(A,Q){super(Q);this.uint8Array=A,this.fileInfo.size=this.fileInfo.size?this.fileInfo.size:A.length}async readBuffer(A,Q){if(Q&&Q.position){if(Q.position{Object.defineProperty(ty,"__esModule",{value:!0});ty.fromBuffer=ty.fromStream=ty.EndOfStreamError=void 0;var qsQ=a5A(),MsQ=ACA(),zsQ=uI();Object.defineProperty(ty,"EndOfStreamError",{enumerable:!0,get:function(){return zsQ.EndOfStreamError}});function RsQ(A,Q){return Q=Q?Q:{},new qsQ.ReadStreamTokenizer(A,Q)}ty.fromStream=RsQ;function wsQ(A,Q){return new MsQ.BufferTokenizer(A,Q)}ty.fromBuffer=wsQ});var YCA=R((OsQ)=>{OsQ.stringToBytes=(A)=>[...A].map((Q)=>Q.charCodeAt(0));OsQ.tarHeaderChecksumMatches=(A,Q=0)=>{let B=parseInt(A.toString("utf8",148,154).replace(/\0.*$/,"").trim(),8);if(isNaN(B))return!1;let Y=256;for(let J=Q;J{return A[Q+3]&127|A[Q+2]<<7|A[Q+1]<<14|A[Q]<<21},len:4}});var CCA=R((nGY,JCA)=>{JCA.exports={extensions:["jpg","png","apng","gif","webp","flif","xcf","cr2","cr3","orf","arw","dng","nef","rw2","raf","tif","bmp","icns","jxr","psd","indd","zip","tar","rar","gz","bz2","7z","dmg","mp4","mid","mkv","webm","mov","avi","mpg","mp2","mp3","m4a","oga","ogg","ogv","opus","flac","wav","spx","amr","pdf","epub","exe","swf","rtf","wasm","woff","woff2","eot","ttf","otf","ico","flv","ps","xz","sqlite","nes","crx","xpi","cab","deb","ar","rpm","Z","lz","cfb","mxf","mts","blend","bpg","docx","pptx","xlsx","3gp","3g2","jp2","jpm","jpx","mj2","aif","qcp","odt","ods","odp","xml","mobi","heic","cur","ktx","ape","wv","dcm","ics","glb","pcap","dsf","lnk","alias","voc","ac3","m4v","m4p","m4b","f4v","f4p","f4b","f4a","mie","asf","ogm","ogx","mpc","arrow","shp","aac","mp1","it","s3m","xm","ai","skp","avif","eps","lzh","pgp","asar","stl","chm","3mf","zst","jxl","vcf"],mimeTypes:["image/jpeg","image/png","image/gif","image/webp","image/flif","image/x-xcf","image/x-canon-cr2","image/x-canon-cr3","image/tiff","image/bmp","image/vnd.ms-photo","image/vnd.adobe.photoshop","application/x-indesign","application/epub+zip","application/x-xpinstall","application/vnd.oasis.opendocument.text","application/vnd.oasis.opendocument.spreadsheet","application/vnd.oasis.opendocument.presentation","application/vnd.openxmlformats-officedocument.wordprocessingml.document","application/vnd.openxmlformats-officedocument.presentationml.presentation","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet","application/zip","application/x-tar","application/x-rar-compressed","application/gzip","application/x-bzip2","application/x-7z-compressed","application/x-apple-diskimage","application/x-apache-arrow","video/mp4","audio/midi","video/x-matroska","video/webm","video/quicktime","video/vnd.avi","audio/vnd.wave","audio/qcelp","audio/x-ms-asf","video/x-ms-asf","application/vnd.ms-asf","video/mpeg","video/3gpp","audio/mpeg","audio/mp4","audio/opus","video/ogg","audio/ogg","application/ogg","audio/x-flac","audio/ape","audio/wavpack","audio/amr","application/pdf","application/x-msdownload","application/x-shockwave-flash","application/rtf","application/wasm","font/woff","font/woff2","application/vnd.ms-fontobject","font/ttf","font/otf","image/x-icon","video/x-flv","application/postscript","application/eps","application/x-xz","application/x-sqlite3","application/x-nintendo-nes-rom","application/x-google-chrome-extension","application/vnd.ms-cab-compressed","application/x-deb","application/x-unix-archive","application/x-rpm","application/x-compress","application/x-lzip","application/x-cfb","application/x-mie","application/mxf","video/mp2t","application/x-blender","image/bpg","image/jp2","image/jpx","image/jpm","image/mj2","audio/aiff","application/xml","application/x-mobipocket-ebook","image/heif","image/heif-sequence","image/heic","image/heic-sequence","image/icns","image/ktx","application/dicom","audio/x-musepack","text/calendar","text/vcard","model/gltf-binary","application/vnd.tcpdump.pcap","audio/x-dsf","application/x.ms.shortcut","application/x.apple.alias","audio/x-voc","audio/vnd.dolby.dd-raw","audio/x-m4a","image/apng","image/x-olympus-orf","image/x-sony-arw","image/x-adobe-dng","image/x-nikon-nef","image/x-panasonic-rw2","image/x-fujifilm-raf","video/x-m4v","video/3gpp2","application/x-esri-shape","audio/aac","audio/x-it","audio/x-s3m","audio/x-xm","video/MP1S","video/MP2P","application/vnd.sketchup.skp","image/avif","application/x-lzh-compressed","application/pgp-encrypted","application/x-asar","model/stl","application/vnd.ms-htmlhelp","model/3mf","image/jxl","application/zstd"]}});var WCA=R((FCA,Ag)=>{var eX=k5A(),w2=BCA(),{stringToBytes:ksQ,tarHeaderChecksumMatches:_sQ,uint32SyncSafeToken:vsQ}=YCA(),XCA=CCA(),sGY=4100;async function ysQ(A){let Q=await w2.fromStream(A);try{return await j2(Q)}finally{await Q.close()}}async function GCA(A){if(!(A instanceof Uint8Array||A instanceof ArrayBuffer||Buffer.isBuffer(A)))throw TypeError(`Expected the \`input\` argument to be of type \`Uint8Array\` or \`Buffer\` or \`ArrayBuffer\`, got \`${typeof A}\``);let Q=A instanceof Buffer?A:Buffer.from(A);if(!(Q&&Q.length>1))return;let B=w2.fromBuffer(Q);return j2(B)}function y1(A,Q,B){B={offset:0,...B};for(let[Y,J]of Q.entries())if(B.mask){if(J!==(B.mask[Y]&A[Y+B.offset]))return!1}else if(J!==A[Y+B.offset])return!1;return!0}async function j2(A){try{return gsQ(A)}catch(Q){if(!(Q instanceof w2.EndOfStreamError))throw Q}}async function gsQ(A){let Q=Buffer.alloc(4100),B=12,Y=(C,X)=>y1(Q,C,X),J=(C,X)=>Y(ksQ(C),X);if(!A.fileInfo.size)A.fileInfo.size=Number.MAX_SAFE_INTEGER;if(await A.peekBuffer(Q,{length:B,mayBeLess:!0}),Y([66,77]))return{ext:"bmp",mime:"image/bmp"};if(Y([11,119]))return{ext:"ac3",mime:"audio/vnd.dolby.dd-raw"};if(Y([120,1]))return{ext:"dmg",mime:"application/x-apple-diskimage"};if(Y([77,90]))return{ext:"exe",mime:"application/x-msdownload"};if(Y([37,33])){if(await A.peekBuffer(Q,{length:24,mayBeLess:!0}),J("PS-Adobe-",{offset:2})&&J(" EPSF-",{offset:14}))return{ext:"eps",mime:"application/eps"};return{ext:"ps",mime:"application/postscript"}}if(Y([31,160])||Y([31,157]))return{ext:"Z",mime:"application/x-compress"};if(Y([255,216,255]))return{ext:"jpg",mime:"image/jpeg"};if(Y([73,73,188]))return{ext:"jxr",mime:"image/vnd.ms-photo"};if(Y([31,139,8]))return{ext:"gz",mime:"application/gzip"};if(Y([66,90,104]))return{ext:"bz2",mime:"application/x-bzip2"};if(J("ID3")){await A.ignore(6);let C=await A.readToken(vsQ);if(A.position+C>A.fileInfo.size)return{ext:"mp3",mime:"audio/mpeg"};return await A.ignore(C),j2(A)}if(J("MP+"))return{ext:"mpc",mime:"audio/x-musepack"};if((Q[0]===67||Q[0]===70)&&Y([87,83],{offset:1}))return{ext:"swf",mime:"application/x-shockwave-flash"};if(Y([71,73,70]))return{ext:"gif",mime:"image/gif"};if(J("FLIF"))return{ext:"flif",mime:"image/flif"};if(J("8BPS"))return{ext:"psd",mime:"image/vnd.adobe.photoshop"};if(J("WEBP",{offset:8}))return{ext:"webp",mime:"image/webp"};if(J("MPCK"))return{ext:"mpc",mime:"audio/x-musepack"};if(J("FORM"))return{ext:"aif",mime:"audio/aiff"};if(J("icns",{offset:0}))return{ext:"icns",mime:"image/icns"};if(Y([80,75,3,4])){try{while(A.position+30=0?X:Q.length)}else await A.ignore(C.compressedSize)}}catch(C){if(!(C instanceof w2.EndOfStreamError))throw C}return{ext:"zip",mime:"application/zip"}}if(J("OggS")){await A.ignore(28);let C=Buffer.alloc(8);if(await A.readBuffer(C),y1(C,[79,112,117,115,72,101,97,100]))return{ext:"opus",mime:"audio/opus"};if(y1(C,[128,116,104,101,111,114,97]))return{ext:"ogv",mime:"video/ogg"};if(y1(C,[1,118,105,100,101,111,0]))return{ext:"ogm",mime:"video/ogg"};if(y1(C,[127,70,76,65,67]))return{ext:"oga",mime:"audio/ogg"};if(y1(C,[83,112,101,101,120,32,32]))return{ext:"spx",mime:"audio/ogg"};if(y1(C,[1,118,111,114,98,105,115]))return{ext:"ogg",mime:"audio/ogg"};return{ext:"ogx",mime:"application/ogg"}}if(Y([80,75])&&(Q[2]===3||Q[2]===5||Q[2]===7)&&(Q[3]===4||Q[3]===6||Q[3]===8))return{ext:"zip",mime:"application/zip"};if(J("ftyp",{offset:4})&&(Q[8]&96)!==0){let C=Q.toString("binary",8,12).replace("\x00"," ").trim();switch(C){case"avif":return{ext:"avif",mime:"image/avif"};case"mif1":return{ext:"heic",mime:"image/heif"};case"msf1":return{ext:"heic",mime:"image/heif-sequence"};case"heic":case"heix":return{ext:"heic",mime:"image/heic"};case"hevc":case"hevx":return{ext:"heic",mime:"image/heic-sequence"};case"qt":return{ext:"mov",mime:"video/quicktime"};case"M4V":case"M4VH":case"M4VP":return{ext:"m4v",mime:"video/x-m4v"};case"M4P":return{ext:"m4p",mime:"video/mp4"};case"M4B":return{ext:"m4b",mime:"audio/mp4"};case"M4A":return{ext:"m4a",mime:"audio/x-m4a"};case"F4V":return{ext:"f4v",mime:"video/mp4"};case"F4P":return{ext:"f4p",mime:"video/mp4"};case"F4A":return{ext:"f4a",mime:"audio/mp4"};case"F4B":return{ext:"f4b",mime:"audio/mp4"};case"crx":return{ext:"cr3",mime:"image/x-canon-cr3"};default:if(C.startsWith("3g")){if(C.startsWith("3g2"))return{ext:"3g2",mime:"video/3gpp2"};return{ext:"3gp",mime:"video/3gpp"}}return{ext:"mp4",mime:"video/mp4"}}}if(J("MThd"))return{ext:"mid",mime:"audio/midi"};if(J("wOFF")&&(Y([0,1,0,0],{offset:4})||J("OTTO",{offset:4})))return{ext:"woff",mime:"font/woff"};if(J("wOF2")&&(Y([0,1,0,0],{offset:4})||J("OTTO",{offset:4})))return{ext:"woff2",mime:"font/woff2"};if(Y([212,195,178,161])||Y([161,178,195,212]))return{ext:"pcap",mime:"application/vnd.tcpdump.pcap"};if(J("DSD "))return{ext:"dsf",mime:"audio/x-dsf"};if(J("LZIP"))return{ext:"lz",mime:"application/x-lzip"};if(J("fLaC"))return{ext:"flac",mime:"audio/x-flac"};if(Y([66,80,71,251]))return{ext:"bpg",mime:"image/bpg"};if(J("wvpk"))return{ext:"wv",mime:"audio/wavpack"};if(J("%PDF")){await A.ignore(1350);let C=10485760,X=Buffer.alloc(Math.min(C,A.fileInfo.size));if(await A.readBuffer(X,{mayBeLess:!0}),X.includes(Buffer.from("AIPrivateData")))return{ext:"ai",mime:"application/postscript"};return{ext:"pdf",mime:"application/pdf"}}if(Y([0,97,115,109]))return{ext:"wasm",mime:"application/wasm"};if(Y([73,73,42,0])){if(J("CR",{offset:8}))return{ext:"cr2",mime:"image/x-canon-cr2"};if(Y([28,0,254,0],{offset:8})||Y([31,0,11,0],{offset:8}))return{ext:"nef",mime:"image/x-nikon-nef"};if(Y([8,0,0,0],{offset:4})&&(Y([45,0,254,0],{offset:8})||Y([39,0,254,0],{offset:8})))return{ext:"dng",mime:"image/x-adobe-dng"};if(Q=Buffer.alloc(24),await A.peekBuffer(Q),(Y([16,251,134,1],{offset:4})||Y([8,0,0,0],{offset:4}))&&Y([0,254,0,4,0,1,0,0,0,1,0,0,0,3,1],{offset:9}))return{ext:"arw",mime:"image/x-sony-arw"};return{ext:"tif",mime:"image/tiff"}}if(Y([77,77,0,42]))return{ext:"tif",mime:"image/tiff"};if(J("MAC "))return{ext:"ape",mime:"audio/ape"};if(Y([26,69,223,163])){async function C(){let Z=await A.peekNumber(eX.UINT8),U=128,$=0;while((Z&U)===0&&U!==0)++$,U>>=1;let E=Buffer.alloc($+1);return await A.readBuffer(E),E}async function X(){let Z=await C(),U=await C();U[0]^=128>>U.length-1;let $=Math.min(6,U.length);return{id:Z.readUIntBE(0,Z.length),len:U.readUIntBE(U.length-$,$)}}async function G(Z,U){while(U>0){let $=await X();if($.id===17026)return A.readToken(new eX.StringType($.len,"utf-8"));await A.ignore($.len),--U}}let F=await X();switch(await G(1,F.len)){case"webm":return{ext:"webm",mime:"video/webm"};case"matroska":return{ext:"mkv",mime:"video/x-matroska"};default:return}}if(Y([82,73,70,70])){if(Y([65,86,73],{offset:8}))return{ext:"avi",mime:"video/vnd.avi"};if(Y([87,65,86,69],{offset:8}))return{ext:"wav",mime:"audio/vnd.wave"};if(Y([81,76,67,77],{offset:8}))return{ext:"qcp",mime:"audio/qcelp"}}if(J("SQLi"))return{ext:"sqlite",mime:"application/x-sqlite3"};if(Y([78,69,83,26]))return{ext:"nes",mime:"application/x-nintendo-nes-rom"};if(J("Cr24"))return{ext:"crx",mime:"application/x-google-chrome-extension"};if(J("MSCF")||J("ISc("))return{ext:"cab",mime:"application/vnd.ms-cab-compressed"};if(Y([237,171,238,219]))return{ext:"rpm",mime:"application/x-rpm"};if(Y([197,208,211,198]))return{ext:"eps",mime:"application/eps"};if(Y([40,181,47,253]))return{ext:"zst",mime:"application/zstd"};if(Y([79,84,84,79,0]))return{ext:"otf",mime:"font/otf"};if(J("#!AMR"))return{ext:"amr",mime:"audio/amr"};if(J("{\\rtf"))return{ext:"rtf",mime:"application/rtf"};if(Y([70,76,86,1]))return{ext:"flv",mime:"video/x-flv"};if(J("IMPM"))return{ext:"it",mime:"audio/x-it"};if(J("-lh0-",{offset:2})||J("-lh1-",{offset:2})||J("-lh2-",{offset:2})||J("-lh3-",{offset:2})||J("-lh4-",{offset:2})||J("-lh5-",{offset:2})||J("-lh6-",{offset:2})||J("-lh7-",{offset:2})||J("-lzs-",{offset:2})||J("-lz4-",{offset:2})||J("-lz5-",{offset:2})||J("-lhd-",{offset:2}))return{ext:"lzh",mime:"application/x-lzh-compressed"};if(Y([0,0,1,186])){if(Y([33],{offset:4,mask:[241]}))return{ext:"mpg",mime:"video/MP1S"};if(Y([68],{offset:4,mask:[196]}))return{ext:"mpg",mime:"video/MP2P"}}if(J("ITSF"))return{ext:"chm",mime:"application/vnd.ms-htmlhelp"};if(Y([253,55,122,88,90,0]))return{ext:"xz",mime:"application/x-xz"};if(J("")){if(await A.ignore(8),await A.readToken(new eX.StringType(13,"ascii"))==="debian-binary")return{ext:"deb",mime:"application/x-deb"};return{ext:"ar",mime:"application/x-unix-archive"}}if(Y([137,80,78,71,13,10,26,10])){await A.ignore(8);async function C(){return{length:await A.readToken(eX.INT32_BE),type:await A.readToken(new eX.StringType(4,"binary"))}}do{let X=await C();if(X.length<0)return;switch(X.type){case"IDAT":return{ext:"png",mime:"image/png"};case"acTL":return{ext:"apng",mime:"image/apng"};default:await A.ignore(X.length+4)}}while(A.position+8=16){let C=Q.readUInt32LE(12);if(C>12&&Q.length>=C+16)try{let X=Q.slice(16,C+16).toString();if(JSON.parse(X).files)return{ext:"asar",mime:"application/x-asar"}}catch(X){}}if(Y([6,14,43,52,2,5,1,1,13,1,2,1,1,2]))return{ext:"mxf",mime:"application/mxf"};if(J("SCRM",{offset:44}))return{ext:"s3m",mime:"audio/x-s3m"};if(Y([71],{offset:4})&&(Y([71],{offset:192})||Y([71],{offset:196})))return{ext:"mts",mime:"video/mp2t"};if(Y([66,79,79,75,77,79,66,73],{offset:60}))return{ext:"mobi",mime:"application/x-mobipocket-ebook"};if(Y([68,73,67,77],{offset:128}))return{ext:"dcm",mime:"application/dicom"};if(Y([76,0,0,0,1,20,2,0,0,0,0,0,192,0,0,0,0,0,0,70]))return{ext:"lnk",mime:"application/x.ms.shortcut"};if(Y([98,111,111,107,0,0,0,0,109,97,114,107,0,0,0,0]))return{ext:"alias",mime:"application/x.apple.alias"};if(Y([76,80],{offset:34})&&(Y([0,0,1],{offset:8})||Y([1,0,2],{offset:8})||Y([2,0,2],{offset:8})))return{ext:"eot",mime:"application/vnd.ms-fontobject"};if(Y([6,6,237,245,216,29,70,229,189,49,239,231,254,116,183,29]))return{ext:"indd",mime:"application/x-indesign"};if(await A.peekBuffer(Q,{length:Math.min(512,A.fileInfo.size),mayBeLess:!0}),_sQ(Q))return{ext:"tar",mime:"application/x-tar"};if(Y([255,254,255,14,83,0,107,0,101,0,116,0,99,0,104,0,85,0,112,0,32,0,77,0,111,0,100,0,101,0,108,0]))return{ext:"skp",mime:"application/vnd.sketchup.skp"};if(J("-----BEGIN PGP MESSAGE-----"))return{ext:"pgp",mime:"application/pgp-encrypted"};if(Q.length>=2&&Y([255,224],{offset:0,mask:[255,224]})){if(Y([16],{offset:1,mask:[22]})){if(Y([8],{offset:1,mask:[8]}))return{ext:"aac",mime:"audio/aac"};return{ext:"aac",mime:"audio/aac"}}if(Y([2],{offset:1,mask:[6]}))return{ext:"mp3",mime:"audio/mpeg"};if(Y([4],{offset:1,mask:[6]}))return{ext:"mp2",mime:"audio/mpeg"};if(Y([6],{offset:1,mask:[6]}))return{ext:"mp1",mime:"audio/mpeg"}}}var hsQ=(readableStream)=>new Promise((resolve,reject)=>{let stream=eval("require")("stream");readableStream.on("error",reject),readableStream.once("readable",async()=>{let A=new stream.PassThrough,Q;if(stream.pipeline)Q=stream.pipeline(readableStream,A,()=>{});else Q=readableStream.pipe(A);let B=readableStream.read(4100)||readableStream.read()||Buffer.alloc(0);try{let Y=await GCA(B);A.fileType=Y}catch(Y){reject(Y)}resolve(Q)})}),ey={fromStream:ysQ,fromTokenizer:j2,fromBuffer:GCA,stream:hsQ};Object.defineProperty(ey,"extensions",{get(){return new Set(XCA.extensions)}});Object.defineProperty(ey,"mimeTypes",{get(){return new Set(XCA.mimeTypes)}});Ag.exports=ey});var $CA=R((O2,ZCA)=>{(function(A,Q){typeof O2==="object"&&typeof ZCA<"u"?Q(O2):typeof define==="function"&&define.amd?define(["exports"],Q):Q(A.awaitToJs={})})(O2,function(A){function Q(B,Y){return B.then(function(J){return[null,J]}).catch(function(J){if(Y)Object.assign(J,Y);return[J,void 0]})}A.to=Q,A.default=Q,Object.defineProperty(A,"__esModule",{value:!0})})});var HCA=R((tGY,ICA)=>{function P2(){this._types=Object.create(null),this._extensions=Object.create(null);for(let A=0;A{DCA.exports={"application/andrew-inset":["ez"],"application/applixware":["aw"],"application/atom+xml":["atom"],"application/atomcat+xml":["atomcat"],"application/atomdeleted+xml":["atomdeleted"],"application/atomsvc+xml":["atomsvc"],"application/atsc-dwd+xml":["dwd"],"application/atsc-held+xml":["held"],"application/atsc-rsat+xml":["rsat"],"application/bdoc":["bdoc"],"application/calendar+xml":["xcs"],"application/ccxml+xml":["ccxml"],"application/cdfx+xml":["cdfx"],"application/cdmi-capability":["cdmia"],"application/cdmi-container":["cdmic"],"application/cdmi-domain":["cdmid"],"application/cdmi-object":["cdmio"],"application/cdmi-queue":["cdmiq"],"application/cu-seeme":["cu"],"application/dash+xml":["mpd"],"application/davmount+xml":["davmount"],"application/docbook+xml":["dbk"],"application/dssc+der":["dssc"],"application/dssc+xml":["xdssc"],"application/ecmascript":["es","ecma"],"application/emma+xml":["emma"],"application/emotionml+xml":["emotionml"],"application/epub+zip":["epub"],"application/exi":["exi"],"application/express":["exp"],"application/fdt+xml":["fdt"],"application/font-tdpfr":["pfr"],"application/geo+json":["geojson"],"application/gml+xml":["gml"],"application/gpx+xml":["gpx"],"application/gxf":["gxf"],"application/gzip":["gz"],"application/hjson":["hjson"],"application/hyperstudio":["stk"],"application/inkml+xml":["ink","inkml"],"application/ipfix":["ipfix"],"application/its+xml":["its"],"application/java-archive":["jar","war","ear"],"application/java-serialized-object":["ser"],"application/java-vm":["class"],"application/javascript":["js","mjs"],"application/json":["json","map"],"application/json5":["json5"],"application/jsonml+json":["jsonml"],"application/ld+json":["jsonld"],"application/lgr+xml":["lgr"],"application/lost+xml":["lostxml"],"application/mac-binhex40":["hqx"],"application/mac-compactpro":["cpt"],"application/mads+xml":["mads"],"application/manifest+json":["webmanifest"],"application/marc":["mrc"],"application/marcxml+xml":["mrcx"],"application/mathematica":["ma","nb","mb"],"application/mathml+xml":["mathml"],"application/mbox":["mbox"],"application/mediaservercontrol+xml":["mscml"],"application/metalink+xml":["metalink"],"application/metalink4+xml":["meta4"],"application/mets+xml":["mets"],"application/mmt-aei+xml":["maei"],"application/mmt-usd+xml":["musd"],"application/mods+xml":["mods"],"application/mp21":["m21","mp21"],"application/mp4":["mp4s","m4p"],"application/msword":["doc","dot"],"application/mxf":["mxf"],"application/n-quads":["nq"],"application/n-triples":["nt"],"application/node":["cjs"],"application/octet-stream":["bin","dms","lrf","mar","so","dist","distz","pkg","bpk","dump","elc","deploy","exe","dll","deb","dmg","iso","img","msi","msp","msm","buffer"],"application/oda":["oda"],"application/oebps-package+xml":["opf"],"application/ogg":["ogx"],"application/omdoc+xml":["omdoc"],"application/onenote":["onetoc","onetoc2","onetmp","onepkg"],"application/oxps":["oxps"],"application/p2p-overlay+xml":["relo"],"application/patch-ops-error+xml":["xer"],"application/pdf":["pdf"],"application/pgp-encrypted":["pgp"],"application/pgp-signature":["asc","sig"],"application/pics-rules":["prf"],"application/pkcs10":["p10"],"application/pkcs7-mime":["p7m","p7c"],"application/pkcs7-signature":["p7s"],"application/pkcs8":["p8"],"application/pkix-attr-cert":["ac"],"application/pkix-cert":["cer"],"application/pkix-crl":["crl"],"application/pkix-pkipath":["pkipath"],"application/pkixcmp":["pki"],"application/pls+xml":["pls"],"application/postscript":["ai","eps","ps"],"application/provenance+xml":["provx"],"application/pskc+xml":["pskcxml"],"application/raml+yaml":["raml"],"application/rdf+xml":["rdf","owl"],"application/reginfo+xml":["rif"],"application/relax-ng-compact-syntax":["rnc"],"application/resource-lists+xml":["rl"],"application/resource-lists-diff+xml":["rld"],"application/rls-services+xml":["rs"],"application/route-apd+xml":["rapd"],"application/route-s-tsid+xml":["sls"],"application/route-usd+xml":["rusd"],"application/rpki-ghostbusters":["gbr"],"application/rpki-manifest":["mft"],"application/rpki-roa":["roa"],"application/rsd+xml":["rsd"],"application/rss+xml":["rss"],"application/rtf":["rtf"],"application/sbml+xml":["sbml"],"application/scvp-cv-request":["scq"],"application/scvp-cv-response":["scs"],"application/scvp-vp-request":["spq"],"application/scvp-vp-response":["spp"],"application/sdp":["sdp"],"application/senml+xml":["senmlx"],"application/sensml+xml":["sensmlx"],"application/set-payment-initiation":["setpay"],"application/set-registration-initiation":["setreg"],"application/shf+xml":["shf"],"application/sieve":["siv","sieve"],"application/smil+xml":["smi","smil"],"application/sparql-query":["rq"],"application/sparql-results+xml":["srx"],"application/srgs":["gram"],"application/srgs+xml":["grxml"],"application/sru+xml":["sru"],"application/ssdl+xml":["ssdl"],"application/ssml+xml":["ssml"],"application/swid+xml":["swidtag"],"application/tei+xml":["tei","teicorpus"],"application/thraud+xml":["tfi"],"application/timestamped-data":["tsd"],"application/toml":["toml"],"application/trig":["trig"],"application/ttml+xml":["ttml"],"application/ubjson":["ubj"],"application/urc-ressheet+xml":["rsheet"],"application/urc-targetdesc+xml":["td"],"application/voicexml+xml":["vxml"],"application/wasm":["wasm"],"application/widget":["wgt"],"application/winhlp":["hlp"],"application/wsdl+xml":["wsdl"],"application/wspolicy+xml":["wspolicy"],"application/xaml+xml":["xaml"],"application/xcap-att+xml":["xav"],"application/xcap-caps+xml":["xca"],"application/xcap-diff+xml":["xdf"],"application/xcap-el+xml":["xel"],"application/xcap-ns+xml":["xns"],"application/xenc+xml":["xenc"],"application/xhtml+xml":["xhtml","xht"],"application/xliff+xml":["xlf"],"application/xml":["xml","xsl","xsd","rng"],"application/xml-dtd":["dtd"],"application/xop+xml":["xop"],"application/xproc+xml":["xpl"],"application/xslt+xml":["*xsl","xslt"],"application/xspf+xml":["xspf"],"application/xv+xml":["mxml","xhvml","xvml","xvm"],"application/yang":["yang"],"application/yin+xml":["yin"],"application/zip":["zip"],"audio/3gpp":["*3gpp"],"audio/adpcm":["adp"],"audio/amr":["amr"],"audio/basic":["au","snd"],"audio/midi":["mid","midi","kar","rmi"],"audio/mobile-xmf":["mxmf"],"audio/mp3":["*mp3"],"audio/mp4":["m4a","mp4a"],"audio/mpeg":["mpga","mp2","mp2a","mp3","m2a","m3a"],"audio/ogg":["oga","ogg","spx","opus"],"audio/s3m":["s3m"],"audio/silk":["sil"],"audio/wav":["wav"],"audio/wave":["*wav"],"audio/webm":["weba"],"audio/xm":["xm"],"font/collection":["ttc"],"font/otf":["otf"],"font/ttf":["ttf"],"font/woff":["woff"],"font/woff2":["woff2"],"image/aces":["exr"],"image/apng":["apng"],"image/avif":["avif"],"image/bmp":["bmp"],"image/cgm":["cgm"],"image/dicom-rle":["drle"],"image/emf":["emf"],"image/fits":["fits"],"image/g3fax":["g3"],"image/gif":["gif"],"image/heic":["heic"],"image/heic-sequence":["heics"],"image/heif":["heif"],"image/heif-sequence":["heifs"],"image/hej2k":["hej2"],"image/hsj2":["hsj2"],"image/ief":["ief"],"image/jls":["jls"],"image/jp2":["jp2","jpg2"],"image/jpeg":["jpeg","jpg","jpe"],"image/jph":["jph"],"image/jphc":["jhc"],"image/jpm":["jpm"],"image/jpx":["jpx","jpf"],"image/jxr":["jxr"],"image/jxra":["jxra"],"image/jxrs":["jxrs"],"image/jxs":["jxs"],"image/jxsc":["jxsc"],"image/jxsi":["jxsi"],"image/jxss":["jxss"],"image/ktx":["ktx"],"image/ktx2":["ktx2"],"image/png":["png"],"image/sgi":["sgi"],"image/svg+xml":["svg","svgz"],"image/t38":["t38"],"image/tiff":["tif","tiff"],"image/tiff-fx":["tfx"],"image/webp":["webp"],"image/wmf":["wmf"],"message/disposition-notification":["disposition-notification"],"message/global":["u8msg"],"message/global-delivery-status":["u8dsn"],"message/global-disposition-notification":["u8mdn"],"message/global-headers":["u8hdr"],"message/rfc822":["eml","mime"],"model/3mf":["3mf"],"model/gltf+json":["gltf"],"model/gltf-binary":["glb"],"model/iges":["igs","iges"],"model/mesh":["msh","mesh","silo"],"model/mtl":["mtl"],"model/obj":["obj"],"model/step+xml":["stpx"],"model/step+zip":["stpz"],"model/step-xml+zip":["stpxz"],"model/stl":["stl"],"model/vrml":["wrl","vrml"],"model/x3d+binary":["*x3db","x3dbz"],"model/x3d+fastinfoset":["x3db"],"model/x3d+vrml":["*x3dv","x3dvz"],"model/x3d+xml":["x3d","x3dz"],"model/x3d-vrml":["x3dv"],"text/cache-manifest":["appcache","manifest"],"text/calendar":["ics","ifb"],"text/coffeescript":["coffee","litcoffee"],"text/css":["css"],"text/csv":["csv"],"text/html":["html","htm","shtml"],"text/jade":["jade"],"text/jsx":["jsx"],"text/less":["less"],"text/markdown":["markdown","md"],"text/mathml":["mml"],"text/mdx":["mdx"],"text/n3":["n3"],"text/plain":["txt","text","conf","def","list","log","in","ini"],"text/richtext":["rtx"],"text/rtf":["*rtf"],"text/sgml":["sgml","sgm"],"text/shex":["shex"],"text/slim":["slim","slm"],"text/spdx":["spdx"],"text/stylus":["stylus","styl"],"text/tab-separated-values":["tsv"],"text/troff":["t","tr","roff","man","me","ms"],"text/turtle":["ttl"],"text/uri-list":["uri","uris","urls"],"text/vcard":["vcard"],"text/vtt":["vtt"],"text/xml":["*xml"],"text/yaml":["yaml","yml"],"video/3gpp":["3gp","3gpp"],"video/3gpp2":["3g2"],"video/h261":["h261"],"video/h263":["h263"],"video/h264":["h264"],"video/iso.segment":["m4s"],"video/jpeg":["jpgv"],"video/jpm":["*jpm","jpgm"],"video/mj2":["mj2","mjp2"],"video/mp2t":["ts"],"video/mp4":["mp4","mp4v","mpg4"],"video/mpeg":["mpeg","mpg","mpe","m1v","m2v"],"video/ogg":["ogv"],"video/quicktime":["qt","mov"],"video/webm":["webm"]}});var qCA=R((A6Y,LCA)=>{var xsQ=HCA();LCA.exports=new xsQ(NCA())});var yCA=R((X6Y,vCA)=>{vCA.exports={parseSections:function(A,Q){var B,Y;A.setBigEndian(!0);while(A.remainingLength()>0&&Y!==218){if(A.nextUInt8()!==255)throw Error("Invalid JPEG section offset");if(Y=A.nextUInt8(),Y>=208&&Y<=217||Y===218)B=0;else B=A.nextUInt16()-2;Q(Y,A.branch(0,B)),A.skip(B)}},getSizeFromSOFSection:function(A){return A.skip(1),{height:A.nextUInt16(),width:A.nextUInt16()}},getSectionName:function(A){var Q,B;switch(A){case 216:Q="SOI";break;case 196:Q="DHT";break;case 219:Q="DQT";break;case 221:Q="DRI";break;case 218:Q="SOS";break;case 254:Q="COM";break;case 217:Q="EOI";break;default:if(A>=224&&A<=239)Q="APP",B=A-224;else if(A>=192&&A<=207&&A!==196&&A!==200&&A!==204)Q="SOF",B=A-192;else if(A>=208&&A<=215)Q="RST",B=A-208;break}var Y={name:Q};if(typeof B==="number")Y.index=B;return Y}}});var Bg=R((G6Y,gCA)=>{function bsQ(A,Q){switch(A){case 1:return Q.nextUInt8();case 3:return Q.nextUInt16();case 4:return Q.nextUInt32();case 5:return[Q.nextUInt32(),Q.nextUInt32()];case 6:return Q.nextInt8();case 8:return Q.nextUInt16();case 9:return Q.nextUInt32();case 10:return[Q.nextInt32(),Q.nextInt32()];case 11:return Q.nextFloat();case 12:return Q.nextDouble();default:throw Error("Invalid format while decoding: "+A)}}function msQ(A){switch(A){case 1:case 2:case 6:case 7:return 1;case 3:case 8:return 2;case 4:case 9:case 11:return 4;case 5:case 10:case 12:return 8;default:return 0}}function usQ(A,Q){var B=Q.nextUInt16(),Y=Q.nextUInt16(),J=msQ(Y),C=Q.nextUInt32(),X=J*C,G,F,W;if(X>4)Q=A.openWithOffset(Q.nextUInt32());if(Y===2){G=Q.nextString(C);var Z=G.indexOf("\x00");if(Z!==-1)G=G.substr(0,Z)}else if(Y===7)G=Q.nextBuffer(C);else if(Y!==0){G=[];for(W=0;W{function Yg(A){return parseInt(A,10)}var csQ=3600,lsQ=60;function hCA(A,Q){A=A.map(Yg),Q=Q.map(Yg);var B=A[0],Y=A[1]-1,J=A[2],C=Q[0],X=Q[1],G=Q[2],F=Date.UTC(B,Y,J,C,X,G,0),W=F/1000;return W}function xCA(A){var Q=A.substr(0,10).split("-"),B=A.substr(11,8).split(":"),Y=A.substr(19,6),J=Y.split(":").map(Yg),C=J[0]*csQ+J[1]*lsQ,X=hCA(Q,B);if(X-=C,typeof X==="number"&&!isNaN(X))return X}function fCA(A){var Q=A.split(" "),B=Q[0].split(":"),Y=Q[1].split(":"),J=hCA(B,Y);if(typeof J==="number"&&!isNaN(J))return J}function psQ(A){var Q=A.length===19&&A.charAt(4)===":",B=A.length===25&&A.charAt(10)==="T",Y;if(B)return xCA(A);else if(Q)return fCA(A)}bCA.exports={parseDateWithSpecFormat:fCA,parseDateWithTimezoneFormat:xCA,parseExifDate:psQ}});var dCA=R((W6Y,uCA)=>{var EU=Bg(),isQ=mCA(),nsQ=[{section:EU.GPSIFD,type:2,name:"GPSLatitude",refType:1,refName:"GPSLatitudeRef",posVal:"N"},{section:EU.GPSIFD,type:4,name:"GPSLongitude",refType:3,refName:"GPSLongitudeRef",posVal:"E"}],ssQ=[{section:EU.SubIFD,type:306,name:"ModifyDate"},{section:EU.SubIFD,type:36867,name:"DateTimeOriginal"},{section:EU.SubIFD,type:36868,name:"CreateDate"},{section:EU.SubIFD,type:306,name:"ModifyDate"}];uCA.exports={castDegreeValues:function(A,Q){nsQ.forEach(function(B){var Y=A(B);if(Y){var J=A({section:B.section,type:B.refType,name:B.refName}),C=J===B.posVal?1:-1,X=(Y[0]+Y[1]/60+Y[2]/3600)*C;Q(B,X)}})},castDateValues:function(A,Q){ssQ.forEach(function(B){var Y=A(B);if(Y){var J=isQ.parseExifDate(Y);if(typeof J<"u")Q(B,J)}})},simplifyValue:function(A,Q){if(Array.isArray(A)){if(A=A.map(function(B){if(Q===10||Q===5)return B[0]/B[1];return B}),A.length===1)A=A[0]}return A}}});var lCA=R((Z6Y,cCA)=>{cCA.exports={exif:{1:"InteropIndex",2:"InteropVersion",11:"ProcessingSoftware",254:"SubfileType",255:"OldSubfileType",256:"ImageWidth",257:"ImageHeight",258:"BitsPerSample",259:"Compression",262:"PhotometricInterpretation",263:"Thresholding",264:"CellWidth",265:"CellLength",266:"FillOrder",269:"DocumentName",270:"ImageDescription",271:"Make",272:"Model",273:"StripOffsets",274:"Orientation",277:"SamplesPerPixel",278:"RowsPerStrip",279:"StripByteCounts",280:"MinSampleValue",281:"MaxSampleValue",282:"XResolution",283:"YResolution",284:"PlanarConfiguration",285:"PageName",286:"XPosition",287:"YPosition",288:"FreeOffsets",289:"FreeByteCounts",290:"GrayResponseUnit",291:"GrayResponseCurve",292:"T4Options",293:"T6Options",296:"ResolutionUnit",297:"PageNumber",300:"ColorResponseUnit",301:"TransferFunction",305:"Software",306:"ModifyDate",315:"Artist",316:"HostComputer",317:"Predictor",318:"WhitePoint",319:"PrimaryChromaticities",320:"ColorMap",321:"HalftoneHints",322:"TileWidth",323:"TileLength",324:"TileOffsets",325:"TileByteCounts",326:"BadFaxLines",327:"CleanFaxData",328:"ConsecutiveBadFaxLines",330:"SubIFD",332:"InkSet",333:"InkNames",334:"NumberofInks",336:"DotRange",337:"TargetPrinter",338:"ExtraSamples",339:"SampleFormat",340:"SMinSampleValue",341:"SMaxSampleValue",342:"TransferRange",343:"ClipPath",344:"XClipPathUnits",345:"YClipPathUnits",346:"Indexed",347:"JPEGTables",351:"OPIProxy",400:"GlobalParametersIFD",401:"ProfileType",402:"FaxProfile",403:"CodingMethods",404:"VersionYear",405:"ModeNumber",433:"Decode",434:"DefaultImageColor",435:"T82Options",437:"JPEGTables",512:"JPEGProc",513:"ThumbnailOffset",514:"ThumbnailLength",515:"JPEGRestartInterval",517:"JPEGLosslessPredictors",518:"JPEGPointTransforms",519:"JPEGQTables",520:"JPEGDCTables",521:"JPEGACTables",529:"YCbCrCoefficients",530:"YCbCrSubSampling",531:"YCbCrPositioning",532:"ReferenceBlackWhite",559:"StripRowCounts",700:"ApplicationNotes",999:"USPTOMiscellaneous",4096:"RelatedImageFileFormat",4097:"RelatedImageWidth",4098:"RelatedImageHeight",18246:"Rating",18247:"XP_DIP_XML",18248:"StitchInfo",18249:"RatingPercent",32781:"ImageID",32931:"WangTag1",32932:"WangAnnotation",32933:"WangTag3",32934:"WangTag4",32995:"Matteing",32996:"DataType",32997:"ImageDepth",32998:"TileDepth",33405:"Model2",33421:"CFARepeatPatternDim",33422:"CFAPattern2",33423:"BatteryLevel",33424:"KodakIFD",33432:"Copyright",33434:"ExposureTime",33437:"FNumber",33445:"MDFileTag",33446:"MDScalePixel",33447:"MDColorTable",33448:"MDLabName",33449:"MDSampleInfo",33450:"MDPrepDate",33451:"MDPrepTime",33452:"MDFileUnits",33550:"PixelScale",33589:"AdventScale",33590:"AdventRevision",33628:"UIC1Tag",33629:"UIC2Tag",33630:"UIC3Tag",33631:"UIC4Tag",33723:"IPTC-NAA",33918:"IntergraphPacketData",33919:"IntergraphFlagRegisters",33920:"IntergraphMatrix",33921:"INGRReserved",33922:"ModelTiePoint",34016:"Site",34017:"ColorSequence",34018:"IT8Header",34019:"RasterPadding",34020:"BitsPerRunLength",34021:"BitsPerExtendedRunLength",34022:"ColorTable",34023:"ImageColorIndicator",34024:"BackgroundColorIndicator",34025:"ImageColorValue",34026:"BackgroundColorValue",34027:"PixelIntensityRange",34028:"TransparencyIndicator",34029:"ColorCharacterization",34030:"HCUsage",34031:"TrapIndicator",34032:"CMYKEquivalent",34118:"SEMInfo",34152:"AFCP_IPTC",34232:"PixelMagicJBIGOptions",34264:"ModelTransform",34306:"WB_GRGBLevels",34310:"LeafData",34377:"PhotoshopSettings",34665:"ExifOffset",34675:"ICC_Profile",34687:"TIFF_FXExtensions",34688:"MultiProfiles",34689:"SharedData",34690:"T88Options",34732:"ImageLayer",34735:"GeoTiffDirectory",34736:"GeoTiffDoubleParams",34737:"GeoTiffAsciiParams",34850:"ExposureProgram",34852:"SpectralSensitivity",34853:"GPSInfo",34855:"ISO",34856:"Opto-ElectricConvFactor",34857:"Interlace",34858:"TimeZoneOffset",34859:"SelfTimerMode",34864:"SensitivityType",34865:"StandardOutputSensitivity",34866:"RecommendedExposureIndex",34867:"ISOSpeed",34868:"ISOSpeedLatitudeyyy",34869:"ISOSpeedLatitudezzz",34908:"FaxRecvParams",34909:"FaxSubAddress",34910:"FaxRecvTime",34954:"LeafSubIFD",36864:"ExifVersion",36867:"DateTimeOriginal",36868:"CreateDate",37121:"ComponentsConfiguration",37122:"CompressedBitsPerPixel",37377:"ShutterSpeedValue",37378:"ApertureValue",37379:"BrightnessValue",37380:"ExposureCompensation",37381:"MaxApertureValue",37382:"SubjectDistance",37383:"MeteringMode",37384:"LightSource",37385:"Flash",37386:"FocalLength",37387:"FlashEnergy",37388:"SpatialFrequencyResponse",37389:"Noise",37390:"FocalPlaneXResolution",37391:"FocalPlaneYResolution",37392:"FocalPlaneResolutionUnit",37393:"ImageNumber",37394:"SecurityClassification",37395:"ImageHistory",37396:"SubjectArea",37397:"ExposureIndex",37398:"TIFF-EPStandardID",37399:"SensingMethod",37434:"CIP3DataFile",37435:"CIP3Sheet",37436:"CIP3Side",37439:"StoNits",37500:"MakerNote",37510:"UserComment",37520:"SubSecTime",37521:"SubSecTimeOriginal",37522:"SubSecTimeDigitized",37679:"MSDocumentText",37680:"MSPropertySetStorage",37681:"MSDocumentTextPosition",37724:"ImageSourceData",40091:"XPTitle",40092:"XPComment",40093:"XPAuthor",40094:"XPKeywords",40095:"XPSubject",40960:"FlashpixVersion",40961:"ColorSpace",40962:"ExifImageWidth",40963:"ExifImageHeight",40964:"RelatedSoundFile",40965:"InteropOffset",41483:"FlashEnergy",41484:"SpatialFrequencyResponse",41485:"Noise",41486:"FocalPlaneXResolution",41487:"FocalPlaneYResolution",41488:"FocalPlaneResolutionUnit",41489:"ImageNumber",41490:"SecurityClassification",41491:"ImageHistory",41492:"SubjectLocation",41493:"ExposureIndex",41494:"TIFF-EPStandardID",41495:"SensingMethod",41728:"FileSource",41729:"SceneType",41730:"CFAPattern",41985:"CustomRendered",41986:"ExposureMode",41987:"WhiteBalance",41988:"DigitalZoomRatio",41989:"FocalLengthIn35mmFormat",41990:"SceneCaptureType",41991:"GainControl",41992:"Contrast",41993:"Saturation",41994:"Sharpness",41995:"DeviceSettingDescription",41996:"SubjectDistanceRange",42016:"ImageUniqueID",42032:"OwnerName",42033:"SerialNumber",42034:"LensInfo",42035:"LensMake",42036:"LensModel",42037:"LensSerialNumber",42112:"GDALMetadata",42113:"GDALNoData",42240:"Gamma",44992:"ExpandSoftware",44993:"ExpandLens",44994:"ExpandFilm",44995:"ExpandFilterLens",44996:"ExpandScanner",44997:"ExpandFlashLamp",48129:"PixelFormat",48130:"Transformation",48131:"Uncompressed",48132:"ImageType",48256:"ImageWidth",48257:"ImageHeight",48258:"WidthResolution",48259:"HeightResolution",48320:"ImageOffset",48321:"ImageByteCount",48322:"AlphaOffset",48323:"AlphaByteCount",48324:"ImageDataDiscard",48325:"AlphaDataDiscard",50215:"OceScanjobDesc",50216:"OceApplicationSelector",50217:"OceIDNumber",50218:"OceImageLogic",50255:"Annotations",50341:"PrintIM",50560:"USPTOOriginalContentType",50706:"DNGVersion",50707:"DNGBackwardVersion",50708:"UniqueCameraModel",50709:"LocalizedCameraModel",50710:"CFAPlaneColor",50711:"CFALayout",50712:"LinearizationTable",50713:"BlackLevelRepeatDim",50714:"BlackLevel",50715:"BlackLevelDeltaH",50716:"BlackLevelDeltaV",50717:"WhiteLevel",50718:"DefaultScale",50719:"DefaultCropOrigin",50720:"DefaultCropSize",50721:"ColorMatrix1",50722:"ColorMatrix2",50723:"CameraCalibration1",50724:"CameraCalibration2",50725:"ReductionMatrix1",50726:"ReductionMatrix2",50727:"AnalogBalance",50728:"AsShotNeutral",50729:"AsShotWhiteXY",50730:"BaselineExposure",50731:"BaselineNoise",50732:"BaselineSharpness",50733:"BayerGreenSplit",50734:"LinearResponseLimit",50735:"CameraSerialNumber",50736:"DNGLensInfo",50737:"ChromaBlurRadius",50738:"AntiAliasStrength",50739:"ShadowScale",50740:"DNGPrivateData",50741:"MakerNoteSafety",50752:"RawImageSegmentation",50778:"CalibrationIlluminant1",50779:"CalibrationIlluminant2",50780:"BestQualityScale",50781:"RawDataUniqueID",50784:"AliasLayerMetadata",50827:"OriginalRawFileName",50828:"OriginalRawFileData",50829:"ActiveArea",50830:"MaskedAreas",50831:"AsShotICCProfile",50832:"AsShotPreProfileMatrix",50833:"CurrentICCProfile",50834:"CurrentPreProfileMatrix",50879:"ColorimetricReference",50898:"PanasonicTitle",50899:"PanasonicTitle2",50931:"CameraCalibrationSig",50932:"ProfileCalibrationSig",50933:"ProfileIFD",50934:"AsShotProfileName",50935:"NoiseReductionApplied",50936:"ProfileName",50937:"ProfileHueSatMapDims",50938:"ProfileHueSatMapData1",50939:"ProfileHueSatMapData2",50940:"ProfileToneCurve",50941:"ProfileEmbedPolicy",50942:"ProfileCopyright",50964:"ForwardMatrix1",50965:"ForwardMatrix2",50966:"PreviewApplicationName",50967:"PreviewApplicationVersion",50968:"PreviewSettingsName",50969:"PreviewSettingsDigest",50970:"PreviewColorSpace",50971:"PreviewDateTime",50972:"RawImageDigest",50973:"OriginalRawFileDigest",50974:"SubTileBlockSize",50975:"RowInterleaveFactor",50981:"ProfileLookTableDims",50982:"ProfileLookTableData",51008:"OpcodeList1",51009:"OpcodeList2",51022:"OpcodeList3",51041:"NoiseProfile",51043:"TimeCodes",51044:"FrameRate",51058:"TStop",51081:"ReelName",51089:"OriginalDefaultFinalSize",51090:"OriginalBestQualitySize",51091:"OriginalDefaultCropSize",51105:"CameraLabel",51107:"ProfileHueSatMapEncoding",51108:"ProfileLookTableEncoding",51109:"BaselineExposureOffset",51110:"DefaultBlackRender",51111:"NewRawImageDigest",51112:"RawToPreviewGain",51125:"DefaultUserCrop",59932:"Padding",59933:"OffsetSchema",65000:"OwnerName",65001:"SerialNumber",65002:"Lens",65024:"KDC_IFD",65100:"RawFile",65101:"Converter",65102:"WhiteBalance",65105:"Exposure",65106:"Shadows",65107:"Brightness",65108:"Contrast",65109:"Saturation",65110:"Sharpness",65111:"Smoothness",65112:"MoireFilter"},gps:{0:"GPSVersionID",1:"GPSLatitudeRef",2:"GPSLatitude",3:"GPSLongitudeRef",4:"GPSLongitude",5:"GPSAltitudeRef",6:"GPSAltitude",7:"GPSTimeStamp",8:"GPSSatellites",9:"GPSStatus",10:"GPSMeasureMode",11:"GPSDOP",12:"GPSSpeedRef",13:"GPSSpeed",14:"GPSTrackRef",15:"GPSTrack",16:"GPSImgDirectionRef",17:"GPSImgDirection",18:"GPSMapDatum",19:"GPSDestLatitudeRef",20:"GPSDestLatitude",21:"GPSDestLongitudeRef",22:"GPSDestLongitude",23:"GPSDestBearingRef",24:"GPSDestBearing",25:"GPSDestDistanceRef",26:"GPSDestDistance",27:"GPSProcessingMethod",28:"GPSAreaInformation",29:"GPSDateStamp",30:"GPSDifferential",31:"GPSHPositioningError"}}});var rCA=R(($6Y,sCA)=>{var KU=yCA(),pCA=Bg(),Jg=dCA();function iCA(A,Q,B,Y,J,C,X){this.startMarker=A,this.tags=Q,this.imageSize=B,this.thumbnailOffset=Y,this.thumbnailLength=J,this.thumbnailType=C,this.app1Offset=X}iCA.prototype={hasThumbnail:function(A){if(!this.thumbnailOffset||!this.thumbnailLength)return!1;if(typeof A!=="string")return!0;if(A.toLowerCase().trim()==="image/jpeg")return this.thumbnailType===6;if(A.toLowerCase().trim()==="image/tiff")return this.thumbnailType===1;return!1},getThumbnailOffset:function(){return this.app1Offset+6+this.thumbnailOffset},getThumbnailLength:function(){return this.thumbnailLength},getThumbnailBuffer:function(){return this._getThumbnailStream().nextBuffer(this.thumbnailLength)},_getThumbnailStream:function(){return this.startMarker.openWithOffset(this.getThumbnailOffset())},getImageSize:function(){return this.imageSize},getThumbnailSize:function(){var A=this._getThumbnailStream(),Q;return KU.parseSections(A,function(B,Y){if(KU.getSectionName(B).name==="SOF")Q=KU.getSizeFromSOFSection(Y)}),Q}};function nCA(A){this.stream=A,this.flags={readBinaryTags:!1,resolveTagNames:!0,simplifyValues:!0,imageSize:!0,hidePointers:!0,returnTags:!0}}nCA.prototype={enableBinaryFields:function(A){return this.flags.readBinaryTags=!!A,this},enablePointers:function(A){return this.flags.hidePointers=!A,this},enableTagNames:function(A){return this.flags.resolveTagNames=!!A,this},enableImageSize:function(A){return this.flags.imageSize=!!A,this},enableReturnTags:function(A){return this.flags.returnTags=!!A,this},enableSimpleValues:function(A){return this.flags.simplifyValues=!!A,this},parse:function(){var A=this.stream.mark(),Q=A.openWithOffset(0),B=this.flags,Y,J,C,X,G,F,W,Z,U;if(B.resolveTagNames)W=lCA();if(B.resolveTagNames)Y={},Z=function($){return Y[$.name]},U=function($,E){Y[$.name]=E};else Y=[],Z=function($){var E;for(E=0;E{function S2(A,Q,B,Y,J,C){this.global=J,Q=Q||0,B=B||A.byteLength-Q,this.arrayBuffer=A.slice(Q,Q+B),this.view=new J.DataView(this.arrayBuffer,0,this.arrayBuffer.byteLength),this.setBigEndian(Y),this.offset=0,this.parentOffset=(C||0)+Q}S2.prototype={setBigEndian:function(A){this.littleEndian=!A},nextUInt8:function(){var A=this.view.getUint8(this.offset);return this.offset+=1,A},nextInt8:function(){var A=this.view.getInt8(this.offset);return this.offset+=1,A},nextUInt16:function(){var A=this.view.getUint16(this.offset,this.littleEndian);return this.offset+=2,A},nextUInt32:function(){var A=this.view.getUint32(this.offset,this.littleEndian);return this.offset+=4,A},nextInt16:function(){var A=this.view.getInt16(this.offset,this.littleEndian);return this.offset+=2,A},nextInt32:function(){var A=this.view.getInt32(this.offset,this.littleEndian);return this.offset+=4,A},nextFloat:function(){var A=this.view.getFloat32(this.offset,this.littleEndian);return this.offset+=4,A},nextDouble:function(){var A=this.view.getFloat64(this.offset,this.littleEndian);return this.offset+=8,A},nextBuffer:function(A){var Q=this.arrayBuffer.slice(this.offset,this.offset+A);return this.offset+=A,Q},remainingLength:function(){return this.arrayBuffer.byteLength-this.offset},nextString:function(A){var Q=this.arrayBuffer.slice(this.offset,this.offset+A);return Q=String.fromCharCode.apply(null,new this.global.Uint8Array(Q)),this.offset+=A,Q},mark:function(){var A=this;return{openWithOffset:function(Q){return Q=(Q||0)+this.offset,new S2(A.arrayBuffer,Q,A.arrayBuffer.byteLength-Q,!A.littleEndian,A.global,A.parentOffset)},offset:this.offset,getParentOffset:function(){return A.parentOffset}}},offsetFrom:function(A){return this.parentOffset+this.offset-(A.offset+A.getParentOffset())},skip:function(A){this.offset+=A},branch:function(A,Q){return Q=typeof Q==="number"?Q:this.arrayBuffer.byteLength-(this.offset+A),new S2(this.arrayBuffer,this.offset+A,Q,!this.littleEndian,this.global,this.parentOffset)}};aCA.exports=S2});var eCA=R((E6Y,tCA)=>{function k2(A,Q,B,Y){this.buffer=A,this.offset=Q||0,B=typeof B==="number"?B:A.length,this.endPosition=this.offset+B,this.setBigEndian(Y)}k2.prototype={setBigEndian:function(A){this.bigEndian=!!A},nextUInt8:function(){var A=this.buffer.readUInt8(this.offset);return this.offset+=1,A},nextInt8:function(){var A=this.buffer.readInt8(this.offset);return this.offset+=1,A},nextUInt16:function(){var A=this.bigEndian?this.buffer.readUInt16BE(this.offset):this.buffer.readUInt16LE(this.offset);return this.offset+=2,A},nextUInt32:function(){var A=this.bigEndian?this.buffer.readUInt32BE(this.offset):this.buffer.readUInt32LE(this.offset);return this.offset+=4,A},nextInt16:function(){var A=this.bigEndian?this.buffer.readInt16BE(this.offset):this.buffer.readInt16LE(this.offset);return this.offset+=2,A},nextInt32:function(){var A=this.bigEndian?this.buffer.readInt32BE(this.offset):this.buffer.readInt32LE(this.offset);return this.offset+=4,A},nextFloat:function(){var A=this.bigEndian?this.buffer.readFloatBE(this.offset):this.buffer.readFloatLE(this.offset);return this.offset+=4,A},nextDouble:function(){var A=this.bigEndian?this.buffer.readDoubleBE(this.offset):this.buffer.readDoubleLE(this.offset);return this.offset+=8,A},nextBuffer:function(A){var Q=this.buffer.slice(this.offset,this.offset+A);return this.offset+=A,Q},remainingLength:function(){return this.endPosition-this.offset},nextString:function(A){var Q=this.buffer.toString("utf8",this.offset,this.offset+A);return this.offset+=A,Q},mark:function(){var A=this;return{openWithOffset:function(Q){return Q=(Q||0)+this.offset,new k2(A.buffer,Q,A.endPosition-Q,A.bigEndian)},offset:this.offset}},offsetFrom:function(A){return this.offset-A.offset},skip:function(A){this.offset+=A},branch:function(A,Q){return Q=typeof Q==="number"?Q:this.endPosition-(this.offset+A),new k2(this.buffer,this.offset+A,Q,this.bigEndian)}};tCA.exports=k2});var B1A=R((K6Y,Q1A)=>{var A1A=rCA();function rsQ(){return(0,eval)("this")}Q1A.exports={create:function(A,Q){if(Q=Q||rsQ(),A instanceof Q.ArrayBuffer){var B=oCA();return new A1A(new B(A,0,A.byteLength,!0,Q))}else{var Y=eCA();return new A1A(new Y(A,0,A.length,!0))}}}});var H1A=R((r6Y,I1A)=>{function Wg(A,Q){if(!A||!Q||!A.length||!Q.length)throw Error("Bad alphabet");this.srcAlphabet=A,this.dstAlphabet=Q}Wg.prototype.convert=function(A){var Q,B,Y,J={},C=this.srcAlphabet.length,X=this.dstAlphabet.length,G=A.length,F=typeof A==="string"?"":[];if(!this.isValid(A))throw Error('Number "'+A+'" contains of non-alphabetic digits ('+this.srcAlphabet+")");if(this.srcAlphabet===this.dstAlphabet)return A;for(Q=0;Q=X)J[Y++]=parseInt(B/X,10),B=B%X;else if(Y>0)J[Y++]=0;G=Y,F=this.dstAlphabet.slice(B,B+1).concat(F)}while(Y!==0);return F};Wg.prototype.isValid=function(A){var Q=0;for(;Q{var HrQ=H1A();function cI(A,Q){var B=new HrQ(A,Q);return function(Y){return B.convert(Y)}}cI.BIN="01";cI.OCT="01234567";cI.DEC="0123456789";cI.HEX="0123456789abcdef";D1A.exports=cI});var hGA=R((vFY,gGA)=>{function goQ(A){var Q=Array(A);for(var B=0;B{/*! +import{createRequire as VkQ}from"node:module";var $kQ=Object.create;var{getPrototypeOf:UkQ,defineProperty:yk,getOwnPropertyNames:EkQ}=Object;var KkQ=Object.prototype.hasOwnProperty;var qA=(A,Q,B)=>{B=A!=null?$kQ(UkQ(A)):{};let Y=Q||!A||!A.__esModule?yk(B,"default",{value:A,enumerable:!0}):B;for(let J of EkQ(A))if(!KkQ.call(Y,J))yk(Y,J,{get:()=>A[J],enumerable:!0});return Y};var R=(A,Q)=>()=>(Q||A((Q={exports:{}}).exports,Q),Q.exports);var fG=(A,Q)=>{for(var B in Q)yk(A,B,{get:Q[B],enumerable:!0,configurable:!0,set:(Y)=>Q[B]=()=>Y})};var u=VkQ(import.meta.url);var _t=R((uo0,u_)=>{var MkQ=Object.prototype.hasOwnProperty,bJ="~";function sV(){}if(Object.create){if(sV.prototype=Object.create(null),!new sV().__proto__)bJ=!1}function zkQ(A,Q,B){this.fn=A,this.context=Q,this.once=B||!1}function kt(A,Q,B,Y,J){if(typeof B!=="function")throw TypeError("The listener must be a function");var C=new zkQ(B,Y||A,J),X=bJ?bJ+Q:Q;if(!A._events[X])A._events[X]=C,A._eventsCount++;else if(!A._events[X].fn)A._events[X].push(C);else A._events[X]=[A._events[X],C];return A}function pM(A,Q){if(--A._eventsCount===0)A._events=new sV;else delete A._events[Q]}function EJ(){this._events=new sV,this._eventsCount=0}EJ.prototype.eventNames=function(){var Q=[],B,Y;if(this._eventsCount===0)return Q;for(Y in B=this._events)if(MkQ.call(B,Y))Q.push(bJ?Y.slice(1):Y);if(Object.getOwnPropertySymbols)return Q.concat(Object.getOwnPropertySymbols(B));return Q};EJ.prototype.listeners=function(Q){var B=bJ?bJ+Q:Q,Y=this._events[B];if(!Y)return[];if(Y.fn)return[Y.fn];for(var J=0,C=Y.length,X=Array(C);J{$e.exports=Ze;Ze.sync=R_Q;var Fe=u("fs");function z_Q(A,Q){var B=Q.pathExt!==void 0?Q.pathExt:process.env.PATHEXT;if(!B)return!0;if(B=B.split(";"),B.indexOf("")!==-1)return!0;for(var Y=0;Y{Ie.exports=Ke;Ke.sync=w_Q;var Ee=u("fs");function Ke(A,Q,B){Ee.stat(A,function(Y,J){B(Y,Y?!1:Ve(J,Q))})}function w_Q(A,Q){return Ve(Ee.statSync(A),Q)}function Ve(A,Q){return A.isFile()&&j_Q(A,Q)}function j_Q(A,Q){var{mode:B,uid:Y,gid:J}=A,C=Q.uid!==void 0?Q.uid:process.getuid&&process.getuid(),X=Q.gid!==void 0?Q.gid:process.getgid&&process.getgid(),G=parseInt("100",8),F=parseInt("010",8),W=parseInt("001",8),Z=G|F,U=B&W||B&F&&J===X||B&G&&Y===C||B&Z&&C===0;return U}});var Ne=R((ke0,De)=>{var Se0=u("fs"),Jz;if(process.platform==="win32"||global.TESTING_WINDOWS)Jz=Ue();else Jz=He();De.exports=t_;t_.sync=O_Q;function t_(A,Q,B){if(typeof Q==="function")B=Q,Q={};if(!B){if(typeof Promise!=="function")throw TypeError("callback not provided");return new Promise(function(Y,J){t_(A,Q||{},function(C,X){if(C)J(C);else Y(X)})})}Jz(A,Q||{},function(Y,J){if(Y){if(Y.code==="EACCES"||Q&&Q.ignoreErrors)Y=null,J=!1}B(Y,J)})}function O_Q(A,Q){try{return Jz.sync(A,Q||{})}catch(B){if(Q&&Q.ignoreErrors||B.code==="EACCES")return!1;else throw B}}});var je=R((_e0,we)=>{var I4=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",Le=u("path"),P_Q=I4?";":":",qe=Ne(),Me=(A)=>Object.assign(Error(`not found: ${A}`),{code:"ENOENT"}),ze=(A,Q)=>{let B=Q.colon||P_Q,Y=A.match(/\//)||I4&&A.match(/\\/)?[""]:[...I4?[process.cwd()]:[],...(Q.path||process.env.PATH||"").split(B)],J=I4?Q.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",C=I4?J.split(B):[""];if(I4){if(A.indexOf(".")!==-1&&C[0]!=="")C.unshift("")}return{pathEnv:Y,pathExt:C,pathExtExe:J}},Re=(A,Q,B)=>{if(typeof Q==="function")B=Q,Q={};if(!Q)Q={};let{pathEnv:Y,pathExt:J,pathExtExe:C}=ze(A,Q),X=[],G=(W)=>new Promise((Z,U)=>{if(W===Y.length)return Q.all&&X.length?Z(X):U(Me(A));let $=Y[W],E=/^".*"$/.test($)?$.slice(1,-1):$,K=Le.join(E,A),I=!E&&/^\.[\\\/]/.test(A)?A.slice(0,2)+K:K;Z(F(I,W,0))}),F=(W,Z,U)=>new Promise(($,E)=>{if(U===J.length)return $(G(Z+1));let K=J[U];qe(W+K,{pathExt:C},(I,V)=>{if(!I&&V)if(Q.all)X.push(W+K);else return $(W+K);return $(F(W,Z,U+1))})});return B?G(0).then((W)=>B(null,W),B):G(0)},T_Q=(A,Q)=>{Q=Q||{};let{pathEnv:B,pathExt:Y,pathExtExe:J}=ze(A,Q),C=[];for(let X=0;X{var Oe=(A={})=>{let Q=A.env||process.env;if((A.platform||process.platform)!=="win32")return"PATH";return Object.keys(Q).reverse().find((Y)=>Y.toUpperCase()==="PATH")||"Path"};e_.exports=Oe;e_.exports.default=Oe});var _e=R((ye0,ke)=>{var Te=u("path"),S_Q=je(),k_Q=Pe();function Se(A,Q){let B=A.options.env||process.env,Y=process.cwd(),J=A.options.cwd!=null,C=J&&process.chdir!==void 0&&!process.chdir.disabled;if(C)try{process.chdir(A.options.cwd)}catch(G){}let X;try{X=S_Q.sync(A.command,{path:B[k_Q({env:B})],pathExt:Q?Te.delimiter:void 0})}catch(G){}finally{if(C)process.chdir(Y)}if(X)X=Te.resolve(J?A.options.cwd:"",X);return X}function __Q(A){return Se(A)||Se(A,!0)}ke.exports=__Q});var ve=R((h_Q,Qv)=>{var Av=/([()\][%!^"`<>&|;, *?])/g;function v_Q(A){return A=A.replace(Av,"^$1"),A}function y_Q(A,Q){if(A=`${A}`,A=A.replace(/(?=(\\+?)?)\1"/g,"$1$1\\\""),A=A.replace(/(?=(\\+?)?)\1$/,"$1$1"),A=`"${A}"`,A=A.replace(Av,"^$1"),Q)A=A.replace(Av,"^$1");return A}h_Q.command=v_Q;h_Q.argument=y_Q});var he=R((he0,ye)=>{ye.exports=/^#!(.*)/});var xe=R((ge0,ge)=>{var f_Q=he();ge.exports=(A="")=>{let Q=A.match(f_Q);if(!Q)return null;let[B,Y]=Q[0].replace(/#! ?/,"").split(" "),J=B.split("/").pop();if(J==="env")return Y;return Y?`${J} ${Y}`:J}});var be=R((xe0,fe)=>{var Bv=u("fs"),b_Q=xe();function m_Q(A){let B=Buffer.alloc(150),Y;try{Y=Bv.openSync(A,"r"),Bv.readSync(Y,B,0,150,0),Bv.closeSync(Y)}catch(J){}return b_Q(B.toString())}fe.exports=m_Q});var ce=R((fe0,de)=>{var u_Q=u("path"),me=_e(),ue=ve(),d_Q=be(),c_Q=process.platform==="win32",l_Q=/\.(?:com|exe)$/i,p_Q=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function i_Q(A){A.file=me(A);let Q=A.file&&d_Q(A.file);if(Q)return A.args.unshift(A.file),A.command=Q,me(A);return A.file}function n_Q(A){if(!c_Q)return A;let Q=i_Q(A),B=!l_Q.test(Q);if(A.options.forceShell||B){let Y=p_Q.test(Q);A.command=u_Q.normalize(A.command),A.command=ue.command(A.command),A.args=A.args.map((C)=>ue.argument(C,Y));let J=[A.command].concat(A.args).join(" ");A.args=["/d","/s","/c",`"${J}"`],A.command=process.env.comspec||"cmd.exe",A.options.windowsVerbatimArguments=!0}return A}function s_Q(A,Q,B){if(Q&&!Array.isArray(Q))B=Q,Q=null;Q=Q?Q.slice(0):[],B=Object.assign({},B);let Y={command:A,args:Q,options:B,file:void 0,original:{command:A,args:Q}};return B.shell?Y:n_Q(Y)}de.exports=s_Q});var ie=R((be0,pe)=>{var Yv=process.platform==="win32";function Jv(A,Q){return Object.assign(Error(`${Q} ${A.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${Q} ${A.command}`,path:A.command,spawnargs:A.args})}function r_Q(A,Q){if(!Yv)return;let B=A.emit;A.emit=function(Y,J){if(Y==="exit"){let C=le(J,Q);if(C)return B.call(A,"error",C)}return B.apply(A,arguments)}}function le(A,Q){if(Yv&&A===1&&!Q.file)return Jv(Q.original,"spawn");return null}function a_Q(A,Q){if(Yv&&A===1&&!Q.file)return Jv(Q.original,"spawnSync");return null}pe.exports={hookChildProcess:r_Q,verifyENOENT:le,verifyENOENTSync:a_Q,notFoundError:Jv}});var re=R((me0,H4)=>{var ne=u("child_process"),Cv=ce(),Xv=ie();function se(A,Q,B){let Y=Cv(A,Q,B),J=ne.spawn(Y.command,Y.args,Y.options);return Xv.hookChildProcess(J,Y),J}function o_Q(A,Q,B){let Y=Cv(A,Q,B),J=ne.spawnSync(Y.command,Y.args,Y.options);return J.error=J.error||Xv.verifyENOENTSync(J.status,Y),J}H4.exports=se;H4.exports.spawn=se;H4.exports.sync=o_Q;H4.exports._parse=Cv;H4.exports._enoent=Xv});var Iy=R((p5Y,i0A)=>{i0A.exports=l0A;function l0A(A,Q,B){if(A instanceof RegExp)A=c0A(A,B);if(Q instanceof RegExp)Q=c0A(Q,B);var Y=p0A(A,Q,B);return Y&&{start:Y[0],end:Y[1],pre:B.slice(0,Y[0]),body:B.slice(Y[0]+A.length,Y[1]),post:B.slice(Y[1]+Q.length)}}function c0A(A,Q){var B=Q.match(A);return B?B[0]:null}l0A.range=p0A;function p0A(A,Q,B){var Y,J,C,X,G,F=B.indexOf(A),W=B.indexOf(Q,F+1),Z=F;if(F>=0&&W>0){if(A===Q)return[F,W];Y=[],C=B.length;while(Z>=0&&!G){if(Z==F)Y.push(Z),F=B.indexOf(A,Z+1);else if(Y.length==1)G=[Y.pop(),W];else{if(J=Y.pop(),J=0?F:W}if(Y.length)G=[C,X]}return G}});var AYA=R((i5Y,e0A)=>{var n0A=Iy();e0A.exports=AbQ;var s0A="\x00SLASH"+Math.random()+"\x00",r0A="\x00OPEN"+Math.random()+"\x00",Dy="\x00CLOSE"+Math.random()+"\x00",a0A="\x00COMMA"+Math.random()+"\x00",o0A="\x00PERIOD"+Math.random()+"\x00";function Hy(A){return parseInt(A,10)==A?parseInt(A,10):A.charCodeAt(0)}function tfQ(A){return A.split("\\\\").join(s0A).split("\\{").join(r0A).split("\\}").join(Dy).split("\\,").join(a0A).split("\\.").join(o0A)}function efQ(A){return A.split(s0A).join("\\").split(r0A).join("{").split(Dy).join("}").split(a0A).join(",").split(o0A).join(".")}function t0A(A){if(!A)return[""];var Q=[],B=n0A("{","}",A);if(!B)return A.split(",");var{pre:Y,body:J,post:C}=B,X=Y.split(",");X[X.length-1]+="{"+J+"}";var G=t0A(C);if(C.length)X[X.length-1]+=G.shift(),X.push.apply(X,G);return Q.push.apply(Q,X),Q}function AbQ(A){if(!A)return[];if(A.substr(0,2)==="{}")A="\\{\\}"+A.substr(2);return ZI(tfQ(A),!0).map(efQ)}function QbQ(A){return"{"+A+"}"}function BbQ(A){return/^-?0\d/.test(A)}function YbQ(A,Q){return A<=Q}function JbQ(A,Q){return A>=Q}function ZI(A,Q){var B=[],Y=n0A("{","}",A);if(!Y)return[A];var J=Y.pre,C=Y.post.length?ZI(Y.post,!1):[""];if(/\$$/.test(Y.pre))for(var X=0;X=0;if(!Z&&!U){if(Y.post.match(/,.*\}/))return A=Y.pre+"{"+Y.body+Dy+Y.post,ZI(A);return[A]}var $;if(Z)$=Y.body.split(/\.\./);else if($=t0A(Y.body),$.length===1){if($=ZI($[0],!1).map(QbQ),$.length===1)return C.map(function(_){return Y.pre+$[0]+_})}var E;if(Z){var K=Hy($[0]),I=Hy($[1]),V=Math.max($[0].length,$[1].length),H=$.length==3?Math.abs(Hy($[2])):1,D=YbQ,L=I0){var w=Array(q+1).join("0");if(M<0)N="-"+w+N.slice(1);else N=w+N}}E.push(N)}}else{E=[];for(var P=0;P<$.length;P++)E.push.apply(E,ZI($[P],!1))}for(var P=0;P{function uuQ(A){var Q=Array(A);for(var B=0;B{/*! * Determine if an object is a Buffer * * @author Feross Aboukhadijeh * @license MIT - */fGA.exports=function(A){return A!=null&&(xGA(A)||hoQ(A)||!!A._isBuffer)};function xGA(A){return!!A.constructor&&typeof A.constructor.isBuffer==="function"&&A.constructor.isBuffer(A)}function hoQ(A){return typeof A.readFloatLE==="function"&&typeof A.slice==="function"&&xGA(A.slice(0,0))}});var Hx=R((gFY,mGA)=>{var xoQ=hGA(),foQ=bGA(),boQ=typeof Float64Array<"u";function moQ(A,Q){return A[0]-Q[0]}function uoQ(){var A=this.stride,Q=Array(A.length),B;for(B=0;BMath.abs(this.stride[1]))?[1,0]:[0,1]}})");else if(Q===3)J.push("var s0=Math.abs(this.stride[0]),s1=Math.abs(this.stride[1]),s2=Math.abs(this.stride[2]);if(s0>s1){if(s1>s2){return [2,1,0];}else if(s0>s2){return [1,2,0];}else{return [1,0,2];}}else if(s0>s2){return [2,0,1];}else if(s2>s1){return [0,1,2];}else{return [0,2,1];}}})")}else J.push("ORDER})");if(J.push("proto.set=function "+B+"_set("+X.join(",")+",v){"),Y)J.push("return this.data.set("+G+",v)}");else J.push("return this.data["+G+"]=v}");if(J.push("proto.get=function "+B+"_get("+X.join(",")+"){"),Y)J.push("return this.data.get("+G+")}");else J.push("return this.data["+G+"]}");J.push("proto.index=function "+B+"_index(",X.join(),"){return "+G+"}"),J.push("proto.hi=function "+B+"_hi("+X.join(",")+"){return new "+B+"(this.data,"+C.map(function(V){return["(typeof i",V,"!=='number'||i",V,"<0)?this.shape[",V,"]:i",V,"|0"].join("")}).join(",")+","+C.map(function(V){return"this.stride["+V+"]"}).join(",")+",this.offset)}");var Z=C.map(function(V){return"a"+V+"=this.shape["+V+"]"}),U=C.map(function(V){return"c"+V+"=this.stride["+V+"]"});J.push("proto.lo=function "+B+"_lo("+X.join(",")+"){var b=this.offset,d=0,"+Z.join(",")+","+U.join(","));for(var $=0;$=0){d=i"+$+"|0;b+=c"+$+"*d;a"+$+"-=d}");J.push("return new "+B+"(this.data,"+C.map(function(V){return"a"+V}).join(",")+","+C.map(function(V){return"c"+V}).join(",")+",b)}"),J.push("proto.step=function "+B+"_step("+X.join(",")+"){var "+C.map(function(V){return"a"+V+"=this.shape["+V+"]"}).join(",")+","+C.map(function(V){return"b"+V+"=this.stride["+V+"]"}).join(",")+",c=this.offset,d=0,ceil=Math.ceil");for(var $=0;$=0){c=(c+this.stride["+$+"]*i"+$+")|0}else{a.push(this.shape["+$+"]);b.push(this.stride["+$+"])}");J.push("var ctor=CTOR_LIST[a.length+1];return ctor(this.data,a,b,c)}"),J.push("return function construct_"+B+"(data,shape,stride,offset){return new "+B+"(data,"+C.map(function(V){return"shape["+V+"]"}).join(",")+","+C.map(function(V){return"stride["+V+"]"}).join(",")+",offset)}");var I=Function("CTOR_LIST","ORDER",J.join(` -`));return I(c3[A],uoQ)}function coQ(A){if(foQ(A))return"buffer";if(boQ)switch(Object.prototype.toString.call(A)){case"[object Float64Array]":return"float64";case"[object Float32Array]":return"float32";case"[object Int8Array]":return"int8";case"[object Int16Array]":return"int16";case"[object Int32Array]":return"int32";case"[object Uint8Array]":return"uint8";case"[object Uint16Array]":return"uint16";case"[object Uint32Array]":return"uint32";case"[object Uint8ClampedArray]":return"uint8_clamped";case"[object BigInt64Array]":return"bigint64";case"[object BigUint64Array]":return"biguint64"}if(Array.isArray(A))return"array";return"generic"}var c3={float32:[],float64:[],int8:[],int16:[],int32:[],uint8:[],uint16:[],uint32:[],array:[],uint8_clamped:[],bigint64:[],biguint64:[],buffer:[],generic:[]};function loQ(A,Q,B,Y){if(A===void 0){var W=c3.array[0];return W([])}else if(typeof A==="number")A=[A];if(Q===void 0)Q=[A.length];var J=Q.length;if(B===void 0){B=Array(J);for(var C=J-1,X=1;C>=0;--C)B[C]=X,X*=Q[C]}if(Y===void 0){Y=0;for(var C=0;C{var uGA=function(A){return typeof A<"u"&&A!==null},poQ=function(A){return typeof A==="object"},ioQ=function(A){return Object.prototype.toString.call(A)==="[object Object]"},noQ=function(A){return typeof A==="function"},soQ=function(A){return typeof A==="boolean"},roQ=function(A){return A instanceof Buffer},aoQ=function(A){if(uGA(A))switch(A.constructor){case Uint8Array:case Uint8ClampedArray:case Int8Array:case Uint16Array:case Int16Array:case Uint32Array:case Int32Array:case Float32Array:case Float64Array:return!0}return!1},ooQ=function(A){return A instanceof ArrayBuffer},toQ=function(A){return typeof A==="string"&&A.length>0},eoQ=function(A){return typeof A==="number"&&!Number.isNaN(A)},AtQ=function(A){return Number.isInteger(A)},QtQ=function(A,Q,B){return A>=Q&&A<=B},BtQ=function(A,Q){return Q.includes(A)},YtQ=function(A,Q,B){return Error(`Expected ${Q} for ${A} but received ${B} of type ${typeof B}`)},JtQ=function(A,Q){return Q.message=A.message,Q};dGA.exports={defined:uGA,object:poQ,plainObject:ioQ,fn:noQ,bool:soQ,buffer:roQ,typedArray:aoQ,arrayBuffer:ooQ,string:toQ,number:eoQ,integer:AtQ,inRange:QtQ,inArray:BtQ,invalidParameterError:YtQ,nativeError:JtQ}});var pGA=R((xFY,lGA)=>{var cGA=()=>process.platform==="linux",l3=null,CtQ=()=>{if(!l3)if(cGA()&&process.report){let A=process.report.excludeNetwork;process.report.excludeNetwork=!0,l3=process.report.getReport(),process.report.excludeNetwork=A}else l3={};return l3};lGA.exports={isLinux:cGA,getReport:CtQ}});var sGA=R((fFY,nGA)=>{var iGA=u("fs"),XtQ=(A)=>iGA.readFileSync(A,"utf-8"),GtQ=(A)=>new Promise((Q,B)=>{iGA.readFile(A,"utf-8",(Y,J)=>{if(Y)B(Y);else Q(J)})});nGA.exports={LDD_PATH:"/usr/bin/ldd",readFileSync:XtQ,readFile:GtQ}});var TH=R((bFY,Z6A)=>{var aGA=u("child_process"),{isLinux:yU,getReport:oGA}=pGA(),{LDD_PATH:p3,readFile:tGA,readFileSync:eGA}=sGA(),b1,m1,q7="",A6A=()=>{if(!q7)return new Promise((A)=>{aGA.exec("getconf GNU_LIBC_VERSION 2>&1 || true; ldd --version 2>&1 || true",(Q,B)=>{q7=Q?" ":B,A(q7)})});return q7},Q6A=()=>{if(!q7)try{q7=aGA.execSync("getconf GNU_LIBC_VERSION 2>&1 || true; ldd --version 2>&1 || true",{encoding:"utf8"})}catch(A){q7=" "}return q7},M7="glibc",B6A=/LIBC[a-z0-9 \-).]*?(\d+\.\d+)/i,vU="musl",FtQ=(A)=>A.includes("libc.musl-")||A.includes("ld-musl-"),Y6A=()=>{let A=oGA();if(A.header&&A.header.glibcVersionRuntime)return M7;if(Array.isArray(A.sharedObjects)){if(A.sharedObjects.some(FtQ))return vU}return null},J6A=(A)=>{let[Q,B]=A.split(/[\r\n]+/);if(Q&&Q.includes(M7))return M7;if(B&&B.includes(vU))return vU;return null},C6A=(A)=>{if(A.includes("musl"))return vU;if(A.includes("GNU C Library"))return M7;return null},WtQ=async()=>{if(b1!==void 0)return b1;b1=null;try{let A=await tGA(p3);b1=C6A(A)}catch(A){}return b1},ZtQ=()=>{if(b1!==void 0)return b1;b1=null;try{let A=eGA(p3);b1=C6A(A)}catch(A){}return b1},X6A=async()=>{let A=null;if(yU()){if(A=await WtQ(),!A)A=Y6A();if(!A){let Q=await A6A();A=J6A(Q)}}return A},G6A=()=>{let A=null;if(yU()){if(A=ZtQ(),!A)A=Y6A();if(!A){let Q=Q6A();A=J6A(Q)}}return A},$tQ=async()=>yU()&&await X6A()!==M7,UtQ=()=>yU()&&G6A()!==M7,EtQ=async()=>{if(m1!==void 0)return m1;m1=null;try{let Q=(await tGA(p3)).match(B6A);if(Q)m1=Q[1]}catch(A){}return m1},KtQ=()=>{if(m1!==void 0)return m1;m1=null;try{let Q=eGA(p3).match(B6A);if(Q)m1=Q[1]}catch(A){}return m1},F6A=()=>{let A=oGA();if(A.header&&A.header.glibcVersionRuntime)return A.header.glibcVersionRuntime;return null},rGA=(A)=>A.trim().split(/\s+/)[1],W6A=(A)=>{let[Q,B,Y]=A.split(/[\r\n]+/);if(Q&&Q.includes(M7))return rGA(Q);if(B&&Y&&B.includes(vU))return rGA(Y);return null},VtQ=async()=>{let A=null;if(yU()){if(A=await EtQ(),!A)A=F6A();if(!A){let Q=await A6A();A=W6A(Q)}}return A},ItQ=()=>{let A=null;if(yU()){if(A=KtQ(),!A)A=F6A();if(!A){let Q=Q6A();A=W6A(Q)}}return A};Z6A.exports={GLIBC:M7,MUSL:vU,family:X6A,familySync:G6A,isNonGlibcLinux:$tQ,isNonGlibcLinuxSync:UtQ,version:VtQ,versionSync:ItQ}});var SH=R((mFY,$6A)=>{var HtQ=typeof process==="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...A)=>console.error("SEMVER",...A):()=>{};$6A.exports=HtQ});var i3=R((uFY,U6A)=>{var DtQ=Number.MAX_SAFE_INTEGER||9007199254740991,NtQ=["major","premajor","minor","preminor","patch","prepatch","prerelease"];U6A.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:16,MAX_SAFE_BUILD_LENGTH:250,MAX_SAFE_INTEGER:DtQ,RELEASE_TYPES:NtQ,SEMVER_SPEC_VERSION:"2.0.0",FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var kH=R((u1,E6A)=>{var{MAX_SAFE_COMPONENT_LENGTH:Dx,MAX_SAFE_BUILD_LENGTH:LtQ,MAX_LENGTH:qtQ}=i3(),MtQ=SH();u1=E6A.exports={};var ztQ=u1.re=[],RtQ=u1.safeRe=[],dA=u1.src=[],wtQ=u1.safeSrc=[],cA=u1.t={},jtQ=0,Nx="[a-zA-Z0-9-]",OtQ=[["\\s",1],["\\d",qtQ],[Nx,LtQ]],PtQ=(A)=>{for(let[Q,B]of OtQ)A=A.split(`${Q}*`).join(`${Q}{0,${B}}`).split(`${Q}+`).join(`${Q}{1,${B}}`);return A},uQ=(A,Q,B)=>{let Y=PtQ(Q),J=jtQ++;MtQ(A,J,Q),cA[A]=J,dA[J]=Q,wtQ[J]=Y,ztQ[J]=new RegExp(Q,B?"g":void 0),RtQ[J]=new RegExp(Y,B?"g":void 0)};uQ("NUMERICIDENTIFIER","0|[1-9]\\d*");uQ("NUMERICIDENTIFIERLOOSE","\\d+");uQ("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${Nx}*`);uQ("MAINVERSION",`(${dA[cA.NUMERICIDENTIFIER]})\\.(${dA[cA.NUMERICIDENTIFIER]})\\.(${dA[cA.NUMERICIDENTIFIER]})`);uQ("MAINVERSIONLOOSE",`(${dA[cA.NUMERICIDENTIFIERLOOSE]})\\.(${dA[cA.NUMERICIDENTIFIERLOOSE]})\\.(${dA[cA.NUMERICIDENTIFIERLOOSE]})`);uQ("PRERELEASEIDENTIFIER",`(?:${dA[cA.NONNUMERICIDENTIFIER]}|${dA[cA.NUMERICIDENTIFIER]})`);uQ("PRERELEASEIDENTIFIERLOOSE",`(?:${dA[cA.NONNUMERICIDENTIFIER]}|${dA[cA.NUMERICIDENTIFIERLOOSE]})`);uQ("PRERELEASE",`(?:-(${dA[cA.PRERELEASEIDENTIFIER]}(?:\\.${dA[cA.PRERELEASEIDENTIFIER]})*))`);uQ("PRERELEASELOOSE",`(?:-?(${dA[cA.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${dA[cA.PRERELEASEIDENTIFIERLOOSE]})*))`);uQ("BUILDIDENTIFIER",`${Nx}+`);uQ("BUILD",`(?:\\+(${dA[cA.BUILDIDENTIFIER]}(?:\\.${dA[cA.BUILDIDENTIFIER]})*))`);uQ("FULLPLAIN",`v?${dA[cA.MAINVERSION]}${dA[cA.PRERELEASE]}?${dA[cA.BUILD]}?`);uQ("FULL",`^${dA[cA.FULLPLAIN]}$`);uQ("LOOSEPLAIN",`[v=\\s]*${dA[cA.MAINVERSIONLOOSE]}${dA[cA.PRERELEASELOOSE]}?${dA[cA.BUILD]}?`);uQ("LOOSE",`^${dA[cA.LOOSEPLAIN]}$`);uQ("GTLT","((?:<|>)?=?)");uQ("XRANGEIDENTIFIERLOOSE",`${dA[cA.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);uQ("XRANGEIDENTIFIER",`${dA[cA.NUMERICIDENTIFIER]}|x|X|\\*`);uQ("XRANGEPLAIN",`[v=\\s]*(${dA[cA.XRANGEIDENTIFIER]})(?:\\.(${dA[cA.XRANGEIDENTIFIER]})(?:\\.(${dA[cA.XRANGEIDENTIFIER]})(?:${dA[cA.PRERELEASE]})?${dA[cA.BUILD]}?)?)?`);uQ("XRANGEPLAINLOOSE",`[v=\\s]*(${dA[cA.XRANGEIDENTIFIERLOOSE]})(?:\\.(${dA[cA.XRANGEIDENTIFIERLOOSE]})(?:\\.(${dA[cA.XRANGEIDENTIFIERLOOSE]})(?:${dA[cA.PRERELEASELOOSE]})?${dA[cA.BUILD]}?)?)?`);uQ("XRANGE",`^${dA[cA.GTLT]}\\s*${dA[cA.XRANGEPLAIN]}$`);uQ("XRANGELOOSE",`^${dA[cA.GTLT]}\\s*${dA[cA.XRANGEPLAINLOOSE]}$`);uQ("COERCEPLAIN",`(^|[^\\d])(\\d{1,${Dx}})(?:\\.(\\d{1,${Dx}}))?(?:\\.(\\d{1,${Dx}}))?`);uQ("COERCE",`${dA[cA.COERCEPLAIN]}(?:$|[^\\d])`);uQ("COERCEFULL",dA[cA.COERCEPLAIN]+`(?:${dA[cA.PRERELEASE]})?(?:${dA[cA.BUILD]})?(?:$|[^\\d])`);uQ("COERCERTL",dA[cA.COERCE],!0);uQ("COERCERTLFULL",dA[cA.COERCEFULL],!0);uQ("LONETILDE","(?:~>?)");uQ("TILDETRIM",`(\\s*)${dA[cA.LONETILDE]}\\s+`,!0);u1.tildeTrimReplace="$1~";uQ("TILDE",`^${dA[cA.LONETILDE]}${dA[cA.XRANGEPLAIN]}$`);uQ("TILDELOOSE",`^${dA[cA.LONETILDE]}${dA[cA.XRANGEPLAINLOOSE]}$`);uQ("LONECARET","(?:\\^)");uQ("CARETTRIM",`(\\s*)${dA[cA.LONECARET]}\\s+`,!0);u1.caretTrimReplace="$1^";uQ("CARET",`^${dA[cA.LONECARET]}${dA[cA.XRANGEPLAIN]}$`);uQ("CARETLOOSE",`^${dA[cA.LONECARET]}${dA[cA.XRANGEPLAINLOOSE]}$`);uQ("COMPARATORLOOSE",`^${dA[cA.GTLT]}\\s*(${dA[cA.LOOSEPLAIN]})$|^$`);uQ("COMPARATOR",`^${dA[cA.GTLT]}\\s*(${dA[cA.FULLPLAIN]})$|^$`);uQ("COMPARATORTRIM",`(\\s*)${dA[cA.GTLT]}\\s*(${dA[cA.LOOSEPLAIN]}|${dA[cA.XRANGEPLAIN]})`,!0);u1.comparatorTrimReplace="$1$2$3";uQ("HYPHENRANGE",`^\\s*(${dA[cA.XRANGEPLAIN]})\\s+-\\s+(${dA[cA.XRANGEPLAIN]})\\s*$`);uQ("HYPHENRANGELOOSE",`^\\s*(${dA[cA.XRANGEPLAINLOOSE]})\\s+-\\s+(${dA[cA.XRANGEPLAINLOOSE]})\\s*$`);uQ("STAR","(<|>)?=?\\s*\\*");uQ("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");uQ("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var n3=R((dFY,K6A)=>{var TtQ=Object.freeze({loose:!0}),StQ=Object.freeze({}),ktQ=(A)=>{if(!A)return StQ;if(typeof A!=="object")return TtQ;return A};K6A.exports=ktQ});var D6A=R((cFY,H6A)=>{var V6A=/^[0-9]+$/,I6A=(A,Q)=>{let B=V6A.test(A),Y=V6A.test(Q);if(B&&Y)A=+A,Q=+Q;return A===Q?0:B&&!Y?-1:Y&&!B?1:AI6A(Q,A);H6A.exports={compareIdentifiers:I6A,rcompareIdentifiers:_tQ}});var hU=R((lFY,L6A)=>{var s3=SH(),{MAX_LENGTH:N6A,MAX_SAFE_INTEGER:r3}=i3(),{safeRe:a3,t:o3}=kH(),vtQ=n3(),{compareIdentifiers:gU}=D6A();class kC{constructor(A,Q){if(Q=vtQ(Q),A instanceof kC)if(A.loose===!!Q.loose&&A.includePrerelease===!!Q.includePrerelease)return A;else A=A.version;else if(typeof A!=="string")throw TypeError(`Invalid version. Must be a string. Got type "${typeof A}".`);if(A.length>N6A)throw TypeError(`version is longer than ${N6A} characters`);s3("SemVer",A,Q),this.options=Q,this.loose=!!Q.loose,this.includePrerelease=!!Q.includePrerelease;let B=A.trim().match(Q.loose?a3[o3.LOOSE]:a3[o3.FULL]);if(!B)throw TypeError(`Invalid Version: ${A}`);if(this.raw=A,this.major=+B[1],this.minor=+B[2],this.patch=+B[3],this.major>r3||this.major<0)throw TypeError("Invalid major version");if(this.minor>r3||this.minor<0)throw TypeError("Invalid minor version");if(this.patch>r3||this.patch<0)throw TypeError("Invalid patch version");if(!B[4])this.prerelease=[];else this.prerelease=B[4].split(".").map((Y)=>{if(/^[0-9]+$/.test(Y)){let J=+Y;if(J>=0&&J=0)if(typeof this.prerelease[J]==="number")this.prerelease[J]++,J=-2;if(J===-1){if(Q===this.prerelease.join(".")&&B===!1)throw Error("invalid increment argument: identifier already exists");this.prerelease.push(Y)}}if(Q){let J=[Q,Y];if(B===!1)J=[Q];if(gU(this.prerelease[0],Q)===0){if(isNaN(this.prerelease[1]))this.prerelease=J}else this.prerelease=J}break}default:throw Error(`invalid increment argument: ${A}`)}if(this.raw=this.format(),this.build.length)this.raw+=`+${this.build.join(".")}`;return this}}L6A.exports=kC});var z6A=R((pFY,M6A)=>{var q6A=hU(),ytQ=(A,Q,B=!1)=>{if(A instanceof q6A)return A;try{return new q6A(A,Q)}catch(Y){if(!B)return null;throw Y}};M6A.exports=ytQ});var w6A=R((iFY,R6A)=>{var gtQ=hU(),htQ=z6A(),{safeRe:t3,t:e3}=kH(),xtQ=(A,Q)=>{if(A instanceof gtQ)return A;if(typeof A==="number")A=String(A);if(typeof A!=="string")return null;Q=Q||{};let B=null;if(!Q.rtl)B=A.match(Q.includePrerelease?t3[e3.COERCEFULL]:t3[e3.COERCE]);else{let F=Q.includePrerelease?t3[e3.COERCERTLFULL]:t3[e3.COERCERTL],W;while((W=F.exec(A))&&(!B||B.index+B[0].length!==A.length)){if(!B||W.index+W[0].length!==B.index+B[0].length)B=W;F.lastIndex=W.index+W[1].length+W[2].length}F.lastIndex=-1}if(B===null)return null;let Y=B[2],J=B[3]||"0",C=B[4]||"0",X=Q.includePrerelease&&B[5]?`-${B[5]}`:"",G=Q.includePrerelease&&B[6]?`+${B[6]}`:"";return htQ(`${Y}.${J}.${C}${X}${G}`,Q)};R6A.exports=xtQ});var rW=R((nFY,O6A)=>{var j6A=hU(),ftQ=(A,Q,B)=>new j6A(A,B).compare(new j6A(Q,B));O6A.exports=ftQ});var Lx=R((sFY,P6A)=>{var btQ=rW(),mtQ=(A,Q,B)=>btQ(A,Q,B)>=0;P6A.exports=mtQ});var k6A=R((rFY,S6A)=>{class T6A{constructor(){this.max=1000,this.map=new Map}get(A){let Q=this.map.get(A);if(Q===void 0)return;else return this.map.delete(A),this.map.set(A,Q),Q}delete(A){return this.map.delete(A)}set(A,Q){if(!this.delete(A)&&Q!==void 0){if(this.map.size>=this.max){let Y=this.map.keys().next().value;this.delete(Y)}this.map.set(A,Q)}return this}}S6A.exports=T6A});var v6A=R((aFY,_6A)=>{var utQ=rW(),dtQ=(A,Q,B)=>utQ(A,Q,B)===0;_6A.exports=dtQ});var g6A=R((oFY,y6A)=>{var ctQ=rW(),ltQ=(A,Q,B)=>ctQ(A,Q,B)!==0;y6A.exports=ltQ});var x6A=R((tFY,h6A)=>{var ptQ=rW(),itQ=(A,Q,B)=>ptQ(A,Q,B)>0;h6A.exports=itQ});var b6A=R((eFY,f6A)=>{var ntQ=rW(),stQ=(A,Q,B)=>ntQ(A,Q,B)<0;f6A.exports=stQ});var u6A=R((AWY,m6A)=>{var rtQ=rW(),atQ=(A,Q,B)=>rtQ(A,Q,B)<=0;m6A.exports=atQ});var c6A=R((QWY,d6A)=>{var otQ=v6A(),ttQ=g6A(),etQ=x6A(),AeQ=Lx(),QeQ=b6A(),BeQ=u6A(),YeQ=(A,Q,B,Y)=>{switch(Q){case"===":if(typeof A==="object")A=A.version;if(typeof B==="object")B=B.version;return A===B;case"!==":if(typeof A==="object")A=A.version;if(typeof B==="object")B=B.version;return A!==B;case"":case"=":case"==":return otQ(A,B,Y);case"!=":return ttQ(A,B,Y);case">":return etQ(A,B,Y);case">=":return AeQ(A,B,Y);case"<":return QeQ(A,B,Y);case"<=":return BeQ(A,B,Y);default:throw TypeError(`Invalid operator: ${Q}`)}};d6A.exports=YeQ});var a6A=R((BWY,r6A)=>{var _H=Symbol("SemVer ANY");class AR{static get ANY(){return _H}constructor(A,Q){if(Q=l6A(Q),A instanceof AR)if(A.loose===!!Q.loose)return A;else A=A.value;if(A=A.trim().split(/\s+/).join(" "),Mx("comparator",A,Q),this.options=Q,this.loose=!!Q.loose,this.parse(A),this.semver===_H)this.value="";else this.value=this.operator+this.semver.version;Mx("comp",this)}parse(A){let Q=this.options.loose?p6A[i6A.COMPARATORLOOSE]:p6A[i6A.COMPARATOR],B=A.match(Q);if(!B)throw TypeError(`Invalid comparator: ${A}`);if(this.operator=B[1]!==void 0?B[1]:"",this.operator==="=")this.operator="";if(!B[2])this.semver=_H;else this.semver=new n6A(B[2],this.options.loose)}toString(){return this.value}test(A){if(Mx("Comparator.test",A,this.options.loose),this.semver===_H||A===_H)return!0;if(typeof A==="string")try{A=new n6A(A,this.options)}catch(Q){return!1}return qx(A,this.operator,this.semver,this.options)}intersects(A,Q){if(!(A instanceof AR))throw TypeError("a Comparator is required");if(this.operator===""){if(this.value==="")return!0;return new s6A(A.value,Q).test(this.value)}else if(A.operator===""){if(A.value==="")return!0;return new s6A(this.value,Q).test(A.semver)}if(Q=l6A(Q),Q.includePrerelease&&(this.value==="<0.0.0-0"||A.value==="<0.0.0-0"))return!1;if(!Q.includePrerelease&&(this.value.startsWith("<0.0.0")||A.value.startsWith("<0.0.0")))return!1;if(this.operator.startsWith(">")&&A.operator.startsWith(">"))return!0;if(this.operator.startsWith("<")&&A.operator.startsWith("<"))return!0;if(this.semver.version===A.semver.version&&this.operator.includes("=")&&A.operator.includes("="))return!0;if(qx(this.semver,"<",A.semver,Q)&&this.operator.startsWith(">")&&A.operator.startsWith("<"))return!0;if(qx(this.semver,">",A.semver,Q)&&this.operator.startsWith("<")&&A.operator.startsWith(">"))return!0;return!1}}r6A.exports=AR;var l6A=n3(),{safeRe:p6A,t:i6A}=kH(),qx=c6A(),Mx=SH(),n6A=hU(),s6A=zx()});var zx=R((YWY,A7A)=>{var JeQ=/\s+/g;class vH{constructor(A,Q){if(Q=XeQ(Q),A instanceof vH)if(A.loose===!!Q.loose&&A.includePrerelease===!!Q.includePrerelease)return A;else return new vH(A.raw,Q);if(A instanceof Rx)return this.raw=A.value,this.set=[[A]],this.formatted=void 0,this;if(this.options=Q,this.loose=!!Q.loose,this.includePrerelease=!!Q.includePrerelease,this.raw=A.trim().replace(JeQ," "),this.set=this.raw.split("||").map((B)=>this.parseRange(B.trim())).filter((B)=>B.length),!this.set.length)throw TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let B=this.set[0];if(this.set=this.set.filter((Y)=>!t6A(Y[0])),this.set.length===0)this.set=[B];else if(this.set.length>1){for(let Y of this.set)if(Y.length===1&&EeQ(Y[0])){this.set=[Y];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let A=0;A0)this.formatted+="||";let Q=this.set[A];for(let B=0;B0)this.formatted+=" ";this.formatted+=Q[B].toString().trim()}}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(A){let B=((this.options.includePrerelease&&$eQ)|(this.options.loose&&UeQ))+":"+A,Y=o6A.get(B);if(Y)return Y;let J=this.options.loose,C=J?O9[oJ.HYPHENRANGELOOSE]:O9[oJ.HYPHENRANGE];A=A.replace(C,zeQ(this.options.includePrerelease)),W0("hyphen replace",A),A=A.replace(O9[oJ.COMPARATORTRIM],FeQ),W0("comparator trim",A),A=A.replace(O9[oJ.TILDETRIM],WeQ),W0("tilde trim",A),A=A.replace(O9[oJ.CARETTRIM],ZeQ),W0("caret trim",A);let X=A.split(" ").map((Z)=>KeQ(Z,this.options)).join(" ").split(/\s+/).map((Z)=>MeQ(Z,this.options));if(J)X=X.filter((Z)=>{return W0("loose invalid filter",Z,this.options),!!Z.match(O9[oJ.COMPARATORLOOSE])});W0("range list",X);let G=new Map,F=X.map((Z)=>new Rx(Z,this.options));for(let Z of F){if(t6A(Z))return[Z];G.set(Z.value,Z)}if(G.size>1&&G.has(""))G.delete("");let W=[...G.values()];return o6A.set(B,W),W}intersects(A,Q){if(!(A instanceof vH))throw TypeError("a Range is required");return this.set.some((B)=>{return e6A(B,Q)&&A.set.some((Y)=>{return e6A(Y,Q)&&B.every((J)=>{return Y.every((C)=>{return J.intersects(C,Q)})})})})}test(A){if(!A)return!1;if(typeof A==="string")try{A=new GeQ(A,this.options)}catch(Q){return!1}for(let Q=0;QA.value==="<0.0.0-0",EeQ=(A)=>A.value==="",e6A=(A,Q)=>{let B=!0,Y=A.slice(),J=Y.pop();while(B&&Y.length)B=Y.every((C)=>{return J.intersects(C,Q)}),J=Y.pop();return B},KeQ=(A,Q)=>{return W0("comp",A,Q),A=HeQ(A,Q),W0("caret",A),A=VeQ(A,Q),W0("tildes",A),A=NeQ(A,Q),W0("xrange",A),A=qeQ(A,Q),W0("stars",A),A},tJ=(A)=>!A||A.toLowerCase()==="x"||A==="*",VeQ=(A,Q)=>{return A.trim().split(/\s+/).map((B)=>IeQ(B,Q)).join(" ")},IeQ=(A,Q)=>{let B=Q.loose?O9[oJ.TILDELOOSE]:O9[oJ.TILDE];return A.replace(B,(Y,J,C,X,G)=>{W0("tilde",A,Y,J,C,X,G);let F;if(tJ(J))F="";else if(tJ(C))F=`>=${J}.0.0 <${+J+1}.0.0-0`;else if(tJ(X))F=`>=${J}.${C}.0 <${J}.${+C+1}.0-0`;else if(G)W0("replaceTilde pr",G),F=`>=${J}.${C}.${X}-${G} <${J}.${+C+1}.0-0`;else F=`>=${J}.${C}.${X} <${J}.${+C+1}.0-0`;return W0("tilde return",F),F})},HeQ=(A,Q)=>{return A.trim().split(/\s+/).map((B)=>DeQ(B,Q)).join(" ")},DeQ=(A,Q)=>{W0("caret",A,Q);let B=Q.loose?O9[oJ.CARETLOOSE]:O9[oJ.CARET],Y=Q.includePrerelease?"-0":"";return A.replace(B,(J,C,X,G,F)=>{W0("caret",A,J,C,X,G,F);let W;if(tJ(C))W="";else if(tJ(X))W=`>=${C}.0.0${Y} <${+C+1}.0.0-0`;else if(tJ(G))if(C==="0")W=`>=${C}.${X}.0${Y} <${C}.${+X+1}.0-0`;else W=`>=${C}.${X}.0${Y} <${+C+1}.0.0-0`;else if(F)if(W0("replaceCaret pr",F),C==="0")if(X==="0")W=`>=${C}.${X}.${G}-${F} <${C}.${X}.${+G+1}-0`;else W=`>=${C}.${X}.${G}-${F} <${C}.${+X+1}.0-0`;else W=`>=${C}.${X}.${G}-${F} <${+C+1}.0.0-0`;else if(W0("no pr"),C==="0")if(X==="0")W=`>=${C}.${X}.${G}${Y} <${C}.${X}.${+G+1}-0`;else W=`>=${C}.${X}.${G}${Y} <${C}.${+X+1}.0-0`;else W=`>=${C}.${X}.${G} <${+C+1}.0.0-0`;return W0("caret return",W),W})},NeQ=(A,Q)=>{return W0("replaceXRanges",A,Q),A.split(/\s+/).map((B)=>LeQ(B,Q)).join(" ")},LeQ=(A,Q)=>{A=A.trim();let B=Q.loose?O9[oJ.XRANGELOOSE]:O9[oJ.XRANGE];return A.replace(B,(Y,J,C,X,G,F)=>{W0("xRange",A,Y,J,C,X,G,F);let W=tJ(C),Z=W||tJ(X),U=Z||tJ(G),$=U;if(J==="="&&$)J="";if(F=Q.includePrerelease?"-0":"",W)if(J===">"||J==="<")Y="<0.0.0-0";else Y="*";else if(J&&$){if(Z)X=0;if(G=0,J===">")if(J=">=",Z)C=+C+1,X=0,G=0;else X=+X+1,G=0;else if(J==="<=")if(J="<",Z)C=+C+1;else X=+X+1;if(J==="<")F="-0";Y=`${J+C}.${X}.${G}${F}`}else if(Z)Y=`>=${C}.0.0${F} <${+C+1}.0.0-0`;else if(U)Y=`>=${C}.${X}.0${F} <${C}.${+X+1}.0-0`;return W0("xRange return",Y),Y})},qeQ=(A,Q)=>{return W0("replaceStars",A,Q),A.trim().replace(O9[oJ.STAR],"")},MeQ=(A,Q)=>{return W0("replaceGTE0",A,Q),A.trim().replace(O9[Q.includePrerelease?oJ.GTE0PRE:oJ.GTE0],"")},zeQ=(A)=>(Q,B,Y,J,C,X,G,F,W,Z,U,$)=>{if(tJ(Y))B="";else if(tJ(J))B=`>=${Y}.0.0${A?"-0":""}`;else if(tJ(C))B=`>=${Y}.${J}.0${A?"-0":""}`;else if(X)B=`>=${B}`;else B=`>=${B}${A?"-0":""}`;if(tJ(W))F="";else if(tJ(Z))F=`<${+W+1}.0.0-0`;else if(tJ(U))F=`<${W}.${+Z+1}.0-0`;else if($)F=`<=${W}.${Z}.${U}-${$}`;else if(A)F=`<${W}.${Z}.${+U+1}-0`;else F=`<=${F}`;return`${B} ${F}`.trim()},ReQ=(A,Q,B)=>{for(let Y=0;Y0){let J=A[Y].semver;if(J.major===Q.major&&J.minor===Q.minor&&J.patch===Q.patch)return!0}}return!1}return!0}});var B7A=R((JWY,Q7A)=>{var weQ=zx(),jeQ=(A,Q,B)=>{try{Q=new weQ(Q,B)}catch(Y){return!1}return Q.test(A)};Q7A.exports=jeQ});var wx=R((CWY,OeQ)=>{OeQ.exports={name:"sharp",description:"High performance Node.js image processing, the fastest module to resize JPEG, PNG, WebP, GIF, AVIF and TIFF images",version:"0.34.3",author:"Lovell Fuller ",homepage:"https://sharp.pixelplumbing.com",contributors:["Pierre Inglebert ","Jonathan Ong ","Chanon Sajjamanochai ","Juliano Julio ","Daniel Gasienica ","Julian Walker ","Amit Pitaru ","Brandon Aaron ","Andreas Lind ","Maurus Cuelenaere ","Linus Unnebäck ","Victor Mateevitsi ","Alaric Holloway ","Bernhard K. Weisshuhn ","Chris Riley ","David Carley ","John Tobin ","Kenton Gray ","Felix Bünemann ","Samy Al Zahrani ","Chintan Thakkar ","F. Orlando Galashan ","Kleis Auke Wolthuizen ","Matt Hirsch ","Matthias Thoemmes ","Patrick Paskaris ","Jérémy Lal ","Rahul Nanwani ","Alice Monday ","Kristo Jorgenson ","YvesBos ","Guy Maliar ","Nicolas Coden ","Matt Parrish ","Marcel Bretschneider ","Matthew McEachen ","Jarda Kotěšovec ","Kenric D'Souza ","Oleh Aleinyk ","Marcel Bretschneider ","Andrea Bianco ","Rik Heywood ","Thomas Parisot ","Nathan Graves ","Tom Lokhorst ","Espen Hovlandsdal ","Sylvain Dumont ","Alun Davies ","Aidan Hoolachan ","Axel Eirola ","Freezy ","Daiz ","Julian Aubourg ","Keith Belovay ","Michael B. Klein ","Jordan Prudhomme ","Ilya Ovdin ","Andargor ","Paul Neave ","Brendan Kennedy ","Brychan Bennett-Odlum ","Edward Silverton ","Roman Malieiev ","Tomas Szabo ","Robert O'Rourke ","Guillermo Alfonso Varela Chouciño ","Christian Flintrup ","Manan Jadhav ","Leon Radley ","alza54 ","Jacob Smith ","Michael Nutt ","Brad Parham ","Taneli Vatanen ","Joris Dugué ","Chris Banks ","Ompal Singh ","Brodan ","Ankur Parihar ","Brahim Ait elhaj ","Mart Jansink ","Lachlan Newman ","Dennis Beatty ","Ingvar Stepanyan ","Don Denton "],scripts:{install:"node install/check.js",clean:"rm -rf src/build/ .nyc_output/ coverage/ test/fixtures/output.*",test:"npm run test-lint && npm run test-unit && npm run test-licensing && npm run test-types","test-lint":"semistandard && cpplint","test-unit":"nyc --reporter=lcov --reporter=text --check-coverage --branches=100 mocha","test-licensing":'license-checker --production --summary --onlyAllow="Apache-2.0;BSD;ISC;LGPL-3.0-or-later;MIT"',"test-leak":"./test/leak/leak.sh","test-types":"tsd","package-from-local-build":"node npm/from-local-build.js","docs-build":"node docs/build.mjs","docs-serve":"cd docs && npm start","docs-publish":"cd docs && npm run build && npx firebase-tools deploy --project pixelplumbing --only hosting:pixelplumbing-sharp"},type:"commonjs",main:"lib/index.js",types:"lib/index.d.ts",files:["install","lib","src/*.{cc,h,gyp}"],repository:{type:"git",url:"git://github.com/lovell/sharp.git"},keywords:["jpeg","png","webp","avif","tiff","gif","svg","jp2","dzi","image","resize","thumbnail","crop","embed","libvips","vips"],dependencies:{color:"^4.2.3","detect-libc":"^2.0.4",semver:"^7.7.2"},optionalDependencies:{"@img/sharp-darwin-arm64":"0.34.3","@img/sharp-darwin-x64":"0.34.3","@img/sharp-libvips-darwin-arm64":"1.2.0","@img/sharp-libvips-darwin-x64":"1.2.0","@img/sharp-libvips-linux-arm":"1.2.0","@img/sharp-libvips-linux-arm64":"1.2.0","@img/sharp-libvips-linux-ppc64":"1.2.0","@img/sharp-libvips-linux-s390x":"1.2.0","@img/sharp-libvips-linux-x64":"1.2.0","@img/sharp-libvips-linuxmusl-arm64":"1.2.0","@img/sharp-libvips-linuxmusl-x64":"1.2.0","@img/sharp-linux-arm":"0.34.3","@img/sharp-linux-arm64":"0.34.3","@img/sharp-linux-ppc64":"0.34.3","@img/sharp-linux-s390x":"0.34.3","@img/sharp-linux-x64":"0.34.3","@img/sharp-linuxmusl-arm64":"0.34.3","@img/sharp-linuxmusl-x64":"0.34.3","@img/sharp-wasm32":"0.34.3","@img/sharp-win32-arm64":"0.34.3","@img/sharp-win32-ia32":"0.34.3","@img/sharp-win32-x64":"0.34.3"},devDependencies:{"@emnapi/runtime":"^1.4.4","@img/sharp-libvips-dev":"1.2.0","@img/sharp-libvips-dev-wasm32":"1.2.0","@img/sharp-libvips-win32-arm64":"1.2.0","@img/sharp-libvips-win32-ia32":"1.2.0","@img/sharp-libvips-win32-x64":"1.2.0","@types/node":"*",cc:"^3.0.1",emnapi:"^1.4.4","exif-reader":"^2.0.2","extract-zip":"^2.0.1",icc:"^3.0.0","jsdoc-to-markdown":"^9.1.1","license-checker":"^25.0.1",mocha:"^11.7.1","node-addon-api":"^8.4.0","node-gyp":"^11.2.0",nyc:"^17.1.0",semistandard:"^17.0.0","tar-fs":"^3.1.0",tsd:"^0.32.0"},license:"Apache-2.0",engines:{node:"^18.17.0 || ^20.3.0 || >=21.0.0"},config:{libvips:">=8.17.1"},funding:{url:"https://opencollective.com/libvips"},semistandard:{env:["mocha"]},cc:{linelength:"120",filter:["build/include"]},nyc:{include:["lib"]},tsd:{directory:"test/types/"}}});var Ox=R((XWY,U7A)=>{var{spawnSync:QR}=u("node:child_process"),{createHash:PeQ}=u("node:crypto"),X7A=w6A(),TeQ=Lx(),SeQ=B7A(),Y7A=TH(),{config:keQ,engines:J7A,optionalDependencies:_eQ}=wx(),veQ=process.env.npm_package_config_libvips||keQ.libvips,G7A=X7A(veQ).version,yeQ=["darwin-arm64","darwin-x64","linux-arm","linux-arm64","linux-ppc64","linux-s390x","linux-x64","linuxmusl-arm64","linuxmusl-x64","win32-arm64","win32-ia32","win32-x64"],BR={encoding:"utf8",shell:!0},geQ=(A)=>{if(A instanceof Error)console.error(`sharp: Installation error: ${A.message}`);else console.log(`sharp: ${A}`)},F7A=()=>Y7A.isNonGlibcLinuxSync()?Y7A.familySync():"",heQ=()=>`${process.platform}${F7A()}-${process.arch}`,xU=()=>{if(W7A())return"wasm32";let{npm_config_arch:A,npm_config_platform:Q,npm_config_libc:B}=process.env,Y=typeof B==="string"?B:F7A();return`${Q||process.platform}${Y}-${A||process.arch}`},xeQ=()=>{try{return u(`@img/sharp-libvips-dev-${xU()}/include`)}catch{try{return (()=>{throw new Error("Cannot require module "+"@img/sharp-libvips-dev/include");})()}catch{}}return""},feQ=()=>{try{return (()=>{throw new Error("Cannot require module "+"@img/sharp-libvips-dev/cplusplus");})()}catch{}return""},beQ=()=>{try{return u(`@img/sharp-libvips-dev-${xU()}/lib`)}catch{try{return u(`@img/sharp-libvips-${xU()}/lib`)}catch{}}return""},meQ=()=>{if(process.release?.name==="node"&&process.versions){if(!SeQ(process.versions.node,J7A.node))return{found:process.versions.node,expected:J7A.node}}},W7A=()=>{let{CC:A}=process.env;return Boolean(A&&A.endsWith("/emcc"))},ueQ=()=>{if(process.platform==="darwin"&&process.arch==="x64")return(QR("sysctl sysctl.proc_translated",BR).stdout||"").trim()==="sysctl.proc_translated: 1";return!1},C7A=(A)=>PeQ("sha512").update(A).digest("hex"),deQ=()=>{try{let A=C7A(`imgsharp-libvips-${xU()}`),Q=X7A(_eQ[`@img/sharp-libvips-${xU()}`],{includePrerelease:!0}).version;return C7A(`${A}npm:${Q}`).slice(0,10)}catch{}return""},ceQ=()=>QR(`node-gyp rebuild --directory=src ${W7A()?"--nodedir=emscripten":""}`,{...BR,stdio:"inherit"}).status,Z7A=()=>{if(process.platform!=="win32")return(QR("pkg-config --modversion vips-cpp",{...BR,env:{...process.env,PKG_CONFIG_PATH:$7A()}}).stdout||"").trim();else return""},$7A=()=>{if(process.platform!=="win32")return[(QR('which brew >/dev/null 2>&1 && brew environment --plain | grep PKG_CONFIG_LIBDIR | cut -d" " -f2',BR).stdout||"").trim(),process.env.PKG_CONFIG_PATH,"/usr/local/lib/pkgconfig","/usr/lib/pkgconfig","/usr/local/libdata/pkgconfig","/usr/libdata/pkgconfig"].filter(Boolean).join(":");else return""},jx=(A,Q,B)=>{if(B)B(`Detected ${Q}, skipping search for globally-installed libvips`);return A},leQ=(A)=>{if(Boolean(process.env.SHARP_IGNORE_GLOBAL_LIBVIPS)===!0)return jx(!1,"SHARP_IGNORE_GLOBAL_LIBVIPS",A);if(Boolean(process.env.SHARP_FORCE_GLOBAL_LIBVIPS)===!0)return jx(!0,"SHARP_FORCE_GLOBAL_LIBVIPS",A);if(ueQ())return jx(!1,"Rosetta",A);let Q=Z7A();return!!Q&&TeQ(Q,G7A)};U7A.exports={minimumLibvipsVersion:G7A,prebuiltPlatforms:yeQ,buildPlatformArch:xU,buildSharpLibvipsIncludeDir:xeQ,buildSharpLibvipsCPlusPlusDir:feQ,buildSharpLibvipsLibDir:beQ,isUnsupportedNodeRuntime:meQ,runtimePlatformArch:heQ,log:geQ,yarnLocator:deQ,spawnRebuild:ceQ,globalLibvipsVersion:Z7A,pkgConfigPath:$7A,useGlobalLibvips:leQ}});var gH=R((FWY,K7A)=>{var{familySync:peQ,versionSync:ieQ}=TH(),{runtimePlatformArch:neQ,isUnsupportedNodeRuntime:E7A,prebuiltPlatforms:seQ,minimumLibvipsVersion:reQ}=Ox(),aW=neQ(),aeQ=[`../src/build/Release/sharp-${aW}.node`,"../src/build/Release/sharp-wasm32.node",`@img/sharp-${aW}/sharp.node`,"@img/sharp-wasm32/sharp.node"],Px,fU,yH=[];for(Px of aeQ)try{fU=u(Px);break}catch(A){yH.push(A)}if(fU&&Px.startsWith("@img/sharp-linux-x64")&&!fU._isUsingX64V2()){let A=Error("Prebuilt binaries for linux-x64 require v2 microarchitecture");A.code="Unsupported CPU",yH.push(A),fU=null}if(fU)K7A.exports=fU;else{let[A,Q,B]=["linux","darwin","win32"].map((C)=>aW.startsWith(C)),Y=[`Could not load the "sharp" module using the ${aW} runtime`];yH.forEach((C)=>{if(C.code!=="MODULE_NOT_FOUND")Y.push(`${C.code}: ${C.message}`)});let J=yH.map((C)=>C.message).join(" ");if(Y.push("Possible solutions:"),E7A()){let{found:C,expected:X}=E7A();Y.push("- Please upgrade Node.js:",` Found ${C}`,` Requires ${X}`)}else if(seQ.includes(aW)){let[C,X]=aW.split("-"),G=C.endsWith("musl")?" --libc=musl":"";Y.push("- Ensure optional dependencies can be installed:"," npm install --include=optional sharp","- Ensure your package manager supports multi-platform installation:"," See https://sharp.pixelplumbing.com/install#cross-platform","- Add platform-specific dependencies:",` npm install --os=${C.replace("musl","")}${G} --cpu=${X} sharp`)}else Y.push(`- Manually install libvips >= ${reQ}`,"- Add experimental WebAssembly-based dependencies:"," npm install --cpu=wasm32 sharp"," npm install @img/sharp-wasm32");if(A&&/(symbol not found|CXXABI_)/i.test(J))try{let{config:C}=u(`@img/sharp-libvips-${aW}/package`),X=`${peQ()} ${ieQ()}`,G=`${C.musl?"musl":"glibc"} ${C.musl||C.glibc}`;Y.push("- Update your OS:",` Found ${X}`,` Requires ${G}`)}catch(C){}if(A&&/\/snap\/core[0-9]{2}/.test(J))Y.push("- Remove the Node.js Snap, which does not support native modules"," snap remove node");if(Q&&/Incompatible library version/.test(J))Y.push("- Update Homebrew:"," brew update && brew upgrade vips");if(yH.some((C)=>C.code==="ERR_DLOPEN_DISABLED"))Y.push("- Run Node.js without using the --no-addons flag");if(B&&/The specified procedure could not be found/.test(J))Y.push("- Using the canvas package on Windows?"," See https://sharp.pixelplumbing.com/install#canvas-and-windows","- Check for outdated versions of sharp in the dependency tree:"," npm ls sharp");throw Y.push("- Consult the installation documentation:"," See https://sharp.pixelplumbing.com/install"),Error(Y.join(` -`))}});var I7A=R((ZWY,V7A)=>{var oeQ=u("node:util"),Tx=u("node:stream"),teQ=f1();gH();var eeQ=oeQ.debuglog("sharp"),oW=function(A,Q){if(arguments.length===1&&!teQ.defined(A))throw Error("Invalid input");if(!(this instanceof oW))return new oW(A,Q);return Tx.Duplex.call(this),this.options={topOffsetPre:-1,leftOffsetPre:-1,widthPre:-1,heightPre:-1,topOffsetPost:-1,leftOffsetPost:-1,widthPost:-1,heightPost:-1,width:-1,height:-1,canvas:"crop",position:0,resizeBackground:[0,0,0,255],angle:0,rotationAngle:0,rotationBackground:[0,0,0,255],rotateBeforePreExtract:!1,flip:!1,flop:!1,extendTop:0,extendBottom:0,extendLeft:0,extendRight:0,extendBackground:[0,0,0,255],extendWith:"background",withoutEnlargement:!1,withoutReduction:!1,affineMatrix:[],affineBackground:[0,0,0,255],affineIdx:0,affineIdy:0,affineOdx:0,affineOdy:0,affineInterpolator:this.constructor.interpolators.bilinear,kernel:"lanczos3",fastShrinkOnLoad:!0,tint:[-1,0,0,0],flatten:!1,flattenBackground:[0,0,0],unflatten:!1,negate:!1,negateAlpha:!0,medianSize:0,blurSigma:0,precision:"integer",minAmpl:0.2,sharpenSigma:0,sharpenM1:1,sharpenM2:2,sharpenX1:2,sharpenY2:10,sharpenY3:20,threshold:0,thresholdGrayscale:!0,trimBackground:[],trimThreshold:-1,trimLineArt:!1,dilateWidth:0,erodeWidth:0,gamma:0,gammaOut:0,greyscale:!1,normalise:!1,normaliseLower:1,normaliseUpper:99,claheWidth:0,claheHeight:0,claheMaxSlope:3,brightness:1,saturation:1,hue:0,lightness:0,booleanBufferIn:null,booleanFileIn:"",joinChannelIn:[],extractChannel:-1,removeAlpha:!1,ensureAlpha:-1,colourspace:"srgb",colourspacePipeline:"last",composite:[],fileOut:"",formatOut:"input",streamOut:!1,keepMetadata:0,withMetadataOrientation:-1,withMetadataDensity:0,withIccProfile:"",withExif:{},withExifMerge:!0,withXmp:"",resolveWithObject:!1,loop:-1,delay:[],jpegQuality:80,jpegProgressive:!1,jpegChromaSubsampling:"4:2:0",jpegTrellisQuantisation:!1,jpegOvershootDeringing:!1,jpegOptimiseScans:!1,jpegOptimiseCoding:!0,jpegQuantisationTable:0,pngProgressive:!1,pngCompressionLevel:6,pngAdaptiveFiltering:!1,pngPalette:!1,pngQuality:100,pngEffort:7,pngBitdepth:8,pngDither:1,jp2Quality:80,jp2TileHeight:512,jp2TileWidth:512,jp2Lossless:!1,jp2ChromaSubsampling:"4:4:4",webpQuality:80,webpAlphaQuality:100,webpLossless:!1,webpNearLossless:!1,webpSmartSubsample:!1,webpSmartDeblock:!1,webpPreset:"default",webpEffort:4,webpMinSize:!1,webpMixed:!1,gifBitdepth:8,gifEffort:7,gifDither:1,gifInterFrameMaxError:0,gifInterPaletteMaxError:3,gifKeepDuplicateFrames:!1,gifReuse:!0,gifProgressive:!1,tiffQuality:80,tiffCompression:"jpeg",tiffPredictor:"horizontal",tiffPyramid:!1,tiffMiniswhite:!1,tiffBitdepth:8,tiffTile:!1,tiffTileHeight:256,tiffTileWidth:256,tiffXres:1,tiffYres:1,tiffResolutionUnit:"inch",heifQuality:50,heifLossless:!1,heifCompression:"av1",heifEffort:4,heifChromaSubsampling:"4:4:4",heifBitdepth:8,jxlDistance:1,jxlDecodingTier:0,jxlEffort:7,jxlLossless:!1,rawDepth:"uchar",tileSize:256,tileOverlap:0,tileContainer:"fs",tileLayout:"dz",tileFormat:"last",tileDepth:"last",tileAngle:0,tileSkipBlanks:-1,tileBackground:[255,255,255,255],tileCentre:!1,tileId:"https://example.com/iiif",tileBasename:"",timeoutSeconds:0,linearA:[],linearB:[],pdfBackground:[255,255,255,255],debuglog:(B)=>{this.emit("warning",B),eeQ(B)},queueListener:function(B){oW.queue.emit("change",B)}},this.options.input=this._createInputDescriptor(A,Q,{allowStream:!0}),this};Object.setPrototypeOf(oW.prototype,Tx.Duplex.prototype);Object.setPrototypeOf(oW,Tx.Duplex);function AAB(){let A=this.constructor.call(),{debuglog:Q,queueListener:B,...Y}=this.options;if(A.options=structuredClone(Y),A.options.debuglog=Q,A.options.queueListener=B,this._isStreamInput())this.on("finish",()=>{this._flattenBufferIn(),A.options.input.buffer=this.options.input.buffer,A.emit("finish")});return A}Object.assign(oW.prototype,{clone:AAB});V7A.exports=oW});var N7A=R(($WY,D7A)=>{var AA=f1(),z7=gH(),QAB={left:"low",top:"low",low:"low",center:"centre",centre:"centre",right:"high",bottom:"high",high:"high"},BAB=["failOn","limitInputPixels","unlimited","animated","autoOrient","density","ignoreIcc","page","pages","sequentialRead","jp2","openSlide","pdf","raw","svg","tiff","failOnError","openSlideLevel","pdfBackground","tiffSubifd"];function H7A(A){let Q=BAB.filter((B)=>AA.defined(A[B])).map((B)=>[B,A[B]]);return Q.length?Object.fromEntries(Q):void 0}function YAB(A,Q,B){let Y={autoOrient:!1,failOn:"warning",limitInputPixels:Math.pow(16383,2),ignoreIcc:!1,unlimited:!1,sequentialRead:!0};if(AA.string(A))Y.file=A;else if(AA.buffer(A)){if(A.length===0)throw Error("Input Buffer is empty");Y.buffer=A}else if(AA.arrayBuffer(A)){if(A.byteLength===0)throw Error("Input bit Array is empty");Y.buffer=Buffer.from(A,0,A.byteLength)}else if(AA.typedArray(A)){if(A.length===0)throw Error("Input Bit Array is empty");Y.buffer=Buffer.from(A.buffer,A.byteOffset,A.byteLength)}else if(AA.plainObject(A)&&!AA.defined(Q)){if(Q=A,H7A(Q))Y.buffer=[]}else if(!AA.defined(A)&&!AA.defined(Q)&&AA.object(B)&&B.allowStream)Y.buffer=[];else if(Array.isArray(A))if(A.length>1)if(!this.options.joining)this.options.joining=!0,this.options.join=A.map((J)=>this._createInputDescriptor(J));else throw Error("Recursive join is unsupported");else throw Error("Expected at least two images to join");else throw Error(`Unsupported input '${A}' of type ${typeof A}${AA.defined(Q)?` when also providing options of type ${typeof Q}`:""}`);if(AA.object(Q)){if(AA.defined(Q.failOnError))if(AA.bool(Q.failOnError))Y.failOn=Q.failOnError?"warning":"none";else throw AA.invalidParameterError("failOnError","boolean",Q.failOnError);if(AA.defined(Q.failOn))if(AA.string(Q.failOn)&&AA.inArray(Q.failOn,["none","truncated","error","warning"]))Y.failOn=Q.failOn;else throw AA.invalidParameterError("failOn","one of: none, truncated, error, warning",Q.failOn);if(AA.defined(Q.autoOrient))if(AA.bool(Q.autoOrient))Y.autoOrient=Q.autoOrient;else throw AA.invalidParameterError("autoOrient","boolean",Q.autoOrient);if(AA.defined(Q.density))if(AA.inRange(Q.density,1,1e5))Y.density=Q.density;else throw AA.invalidParameterError("density","number between 1 and 100000",Q.density);if(AA.defined(Q.ignoreIcc))if(AA.bool(Q.ignoreIcc))Y.ignoreIcc=Q.ignoreIcc;else throw AA.invalidParameterError("ignoreIcc","boolean",Q.ignoreIcc);if(AA.defined(Q.limitInputPixels))if(AA.bool(Q.limitInputPixels))Y.limitInputPixels=Q.limitInputPixels?Math.pow(16383,2):0;else if(AA.integer(Q.limitInputPixels)&&AA.inRange(Q.limitInputPixels,0,Number.MAX_SAFE_INTEGER))Y.limitInputPixels=Q.limitInputPixels;else throw AA.invalidParameterError("limitInputPixels","positive integer",Q.limitInputPixels);if(AA.defined(Q.unlimited))if(AA.bool(Q.unlimited))Y.unlimited=Q.unlimited;else throw AA.invalidParameterError("unlimited","boolean",Q.unlimited);if(AA.defined(Q.sequentialRead))if(AA.bool(Q.sequentialRead))Y.sequentialRead=Q.sequentialRead;else throw AA.invalidParameterError("sequentialRead","boolean",Q.sequentialRead);if(AA.defined(Q.raw)){if(AA.object(Q.raw)&&AA.integer(Q.raw.width)&&Q.raw.width>0&&AA.integer(Q.raw.height)&&Q.raw.height>0&&AA.integer(Q.raw.channels)&&AA.inRange(Q.raw.channels,1,4))switch(Y.rawWidth=Q.raw.width,Y.rawHeight=Q.raw.height,Y.rawChannels=Q.raw.channels,A.constructor){case Uint8Array:case Uint8ClampedArray:Y.rawDepth="uchar";break;case Int8Array:Y.rawDepth="char";break;case Uint16Array:Y.rawDepth="ushort";break;case Int16Array:Y.rawDepth="short";break;case Uint32Array:Y.rawDepth="uint";break;case Int32Array:Y.rawDepth="int";break;case Float32Array:Y.rawDepth="float";break;case Float64Array:Y.rawDepth="double";break;default:Y.rawDepth="uchar";break}else throw Error("Expected width, height and channels for raw pixel input");if(Y.rawPremultiplied=!1,AA.defined(Q.raw.premultiplied))if(AA.bool(Q.raw.premultiplied))Y.rawPremultiplied=Q.raw.premultiplied;else throw AA.invalidParameterError("raw.premultiplied","boolean",Q.raw.premultiplied);if(Y.rawPageHeight=0,AA.defined(Q.raw.pageHeight))if(AA.integer(Q.raw.pageHeight)&&Q.raw.pageHeight>0&&Q.raw.pageHeight<=Q.raw.height){if(Q.raw.height%Q.raw.pageHeight!==0)throw Error(`Expected raw.height ${Q.raw.height} to be a multiple of raw.pageHeight ${Q.raw.pageHeight}`);Y.rawPageHeight=Q.raw.pageHeight}else throw AA.invalidParameterError("raw.pageHeight","positive integer",Q.raw.pageHeight)}if(AA.defined(Q.animated))if(AA.bool(Q.animated))Y.pages=Q.animated?-1:1;else throw AA.invalidParameterError("animated","boolean",Q.animated);if(AA.defined(Q.pages))if(AA.integer(Q.pages)&&AA.inRange(Q.pages,-1,1e5))Y.pages=Q.pages;else throw AA.invalidParameterError("pages","integer between -1 and 100000",Q.pages);if(AA.defined(Q.page))if(AA.integer(Q.page)&&AA.inRange(Q.page,0,1e5))Y.page=Q.page;else throw AA.invalidParameterError("page","integer between 0 and 100000",Q.page);if(AA.object(Q.openSlide)&&AA.defined(Q.openSlide.level))if(AA.integer(Q.openSlide.level)&&AA.inRange(Q.openSlide.level,0,256))Y.openSlideLevel=Q.openSlide.level;else throw AA.invalidParameterError("openSlide.level","integer between 0 and 256",Q.openSlide.level);else if(AA.defined(Q.level))if(AA.integer(Q.level)&&AA.inRange(Q.level,0,256))Y.openSlideLevel=Q.level;else throw AA.invalidParameterError("level","integer between 0 and 256",Q.level);if(AA.object(Q.tiff)&&AA.defined(Q.tiff.subifd))if(AA.integer(Q.tiff.subifd)&&AA.inRange(Q.tiff.subifd,-1,1e5))Y.tiffSubifd=Q.tiff.subifd;else throw AA.invalidParameterError("tiff.subifd","integer between -1 and 100000",Q.tiff.subifd);else if(AA.defined(Q.subifd))if(AA.integer(Q.subifd)&&AA.inRange(Q.subifd,-1,1e5))Y.tiffSubifd=Q.subifd;else throw AA.invalidParameterError("subifd","integer between -1 and 100000",Q.subifd);if(AA.object(Q.svg)){if(AA.defined(Q.svg.stylesheet))if(AA.string(Q.svg.stylesheet))Y.svgStylesheet=Q.svg.stylesheet;else throw AA.invalidParameterError("svg.stylesheet","string",Q.svg.stylesheet);if(AA.defined(Q.svg.highBitdepth))if(AA.bool(Q.svg.highBitdepth))Y.svgHighBitdepth=Q.svg.highBitdepth;else throw AA.invalidParameterError("svg.highBitdepth","boolean",Q.svg.highBitdepth)}if(AA.object(Q.pdf)&&AA.defined(Q.pdf.background))Y.pdfBackground=this._getBackgroundColourOption(Q.pdf.background);else if(AA.defined(Q.pdfBackground))Y.pdfBackground=this._getBackgroundColourOption(Q.pdfBackground);if(AA.object(Q.jp2)&&AA.defined(Q.jp2.oneshot))if(AA.bool(Q.jp2.oneshot))Y.jp2Oneshot=Q.jp2.oneshot;else throw AA.invalidParameterError("jp2.oneshot","boolean",Q.jp2.oneshot);if(AA.defined(Q.create))if(AA.object(Q.create)&&AA.integer(Q.create.width)&&Q.create.width>0&&AA.integer(Q.create.height)&&Q.create.height>0&&AA.integer(Q.create.channels)){if(Y.createWidth=Q.create.width,Y.createHeight=Q.create.height,Y.createChannels=Q.create.channels,Y.createPageHeight=0,AA.defined(Q.create.pageHeight))if(AA.integer(Q.create.pageHeight)&&Q.create.pageHeight>0&&Q.create.pageHeight<=Q.create.height){if(Q.create.height%Q.create.pageHeight!==0)throw Error(`Expected create.height ${Q.create.height} to be a multiple of create.pageHeight ${Q.create.pageHeight}`);Y.createPageHeight=Q.create.pageHeight}else throw AA.invalidParameterError("create.pageHeight","positive integer",Q.create.pageHeight);if(AA.defined(Q.create.noise)){if(!AA.object(Q.create.noise))throw Error("Expected noise to be an object");if(Q.create.noise.type!=="gaussian")throw Error("Only gaussian noise is supported at the moment");if(Y.createNoiseType=Q.create.noise.type,!AA.inRange(Q.create.channels,1,4))throw AA.invalidParameterError("create.channels","number between 1 and 4",Q.create.channels);if(Y.createNoiseMean=128,AA.defined(Q.create.noise.mean))if(AA.number(Q.create.noise.mean)&&AA.inRange(Q.create.noise.mean,0,1e4))Y.createNoiseMean=Q.create.noise.mean;else throw AA.invalidParameterError("create.noise.mean","number between 0 and 10000",Q.create.noise.mean);if(Y.createNoiseSigma=30,AA.defined(Q.create.noise.sigma))if(AA.number(Q.create.noise.sigma)&&AA.inRange(Q.create.noise.sigma,0,1e4))Y.createNoiseSigma=Q.create.noise.sigma;else throw AA.invalidParameterError("create.noise.sigma","number between 0 and 10000",Q.create.noise.sigma)}else if(AA.defined(Q.create.background)){if(!AA.inRange(Q.create.channels,3,4))throw AA.invalidParameterError("create.channels","number between 3 and 4",Q.create.channels);Y.createBackground=this._getBackgroundColourOption(Q.create.background)}else throw Error("Expected valid noise or background to create a new input image");delete Y.buffer}else throw Error("Expected valid width, height and channels to create a new input image");if(AA.defined(Q.text))if(AA.object(Q.text)&&AA.string(Q.text.text)){if(Y.textValue=Q.text.text,AA.defined(Q.text.height)&&AA.defined(Q.text.dpi))throw Error("Expected only one of dpi or height");if(AA.defined(Q.text.font))if(AA.string(Q.text.font))Y.textFont=Q.text.font;else throw AA.invalidParameterError("text.font","string",Q.text.font);if(AA.defined(Q.text.fontfile))if(AA.string(Q.text.fontfile))Y.textFontfile=Q.text.fontfile;else throw AA.invalidParameterError("text.fontfile","string",Q.text.fontfile);if(AA.defined(Q.text.width))if(AA.integer(Q.text.width)&&Q.text.width>0)Y.textWidth=Q.text.width;else throw AA.invalidParameterError("text.width","positive integer",Q.text.width);if(AA.defined(Q.text.height))if(AA.integer(Q.text.height)&&Q.text.height>0)Y.textHeight=Q.text.height;else throw AA.invalidParameterError("text.height","positive integer",Q.text.height);if(AA.defined(Q.text.align))if(AA.string(Q.text.align)&&AA.string(this.constructor.align[Q.text.align]))Y.textAlign=this.constructor.align[Q.text.align];else throw AA.invalidParameterError("text.align","valid alignment",Q.text.align);if(AA.defined(Q.text.justify))if(AA.bool(Q.text.justify))Y.textJustify=Q.text.justify;else throw AA.invalidParameterError("text.justify","boolean",Q.text.justify);if(AA.defined(Q.text.dpi))if(AA.integer(Q.text.dpi)&&AA.inRange(Q.text.dpi,1,1e6))Y.textDpi=Q.text.dpi;else throw AA.invalidParameterError("text.dpi","integer between 1 and 1000000",Q.text.dpi);if(AA.defined(Q.text.rgba))if(AA.bool(Q.text.rgba))Y.textRgba=Q.text.rgba;else throw AA.invalidParameterError("text.rgba","bool",Q.text.rgba);if(AA.defined(Q.text.spacing))if(AA.integer(Q.text.spacing)&&AA.inRange(Q.text.spacing,-1e6,1e6))Y.textSpacing=Q.text.spacing;else throw AA.invalidParameterError("text.spacing","integer between -1000000 and 1000000",Q.text.spacing);if(AA.defined(Q.text.wrap))if(AA.string(Q.text.wrap)&&AA.inArray(Q.text.wrap,["word","char","word-char","none"]))Y.textWrap=Q.text.wrap;else throw AA.invalidParameterError("text.wrap","one of: word, char, word-char, none",Q.text.wrap);delete Y.buffer}else throw Error("Expected a valid string to create an image with text.");if(AA.defined(Q.join))if(AA.defined(this.options.join)){if(AA.defined(Q.join.animated))if(AA.bool(Q.join.animated))Y.joinAnimated=Q.join.animated;else throw AA.invalidParameterError("join.animated","boolean",Q.join.animated);if(AA.defined(Q.join.across))if(AA.integer(Q.join.across)&&AA.inRange(Q.join.across,1,1e6))Y.joinAcross=Q.join.across;else throw AA.invalidParameterError("join.across","integer between 1 and 100000",Q.join.across);if(AA.defined(Q.join.shim))if(AA.integer(Q.join.shim)&&AA.inRange(Q.join.shim,0,1e6))Y.joinShim=Q.join.shim;else throw AA.invalidParameterError("join.shim","integer between 0 and 100000",Q.join.shim);if(AA.defined(Q.join.background))Y.joinBackground=this._getBackgroundColourOption(Q.join.background);if(AA.defined(Q.join.halign))if(AA.string(Q.join.halign)&&AA.string(this.constructor.align[Q.join.halign]))Y.joinHalign=this.constructor.align[Q.join.halign];else throw AA.invalidParameterError("join.halign","valid alignment",Q.join.halign);if(AA.defined(Q.join.valign))if(AA.string(Q.join.valign)&&AA.string(this.constructor.align[Q.join.valign]))Y.joinValign=this.constructor.align[Q.join.valign];else throw AA.invalidParameterError("join.valign","valid alignment",Q.join.valign)}else throw Error("Expected input to be an array of images to join")}else if(AA.defined(Q))throw Error("Invalid input options "+Q);return Y}function JAB(A,Q,B){if(Array.isArray(this.options.input.buffer))if(AA.buffer(A)){if(this.options.input.buffer.length===0)this.on("finish",()=>{this.streamInFinished=!0});this.options.input.buffer.push(A),B()}else B(Error("Non-Buffer data on Writable Stream"));else B(Error("Unexpected data on Writable Stream"))}function CAB(){if(this._isStreamInput())this.options.input.buffer=Buffer.concat(this.options.input.buffer)}function XAB(){return Array.isArray(this.options.input.buffer)}function GAB(A){let Q=Error();if(AA.fn(A)){if(this._isStreamInput())this.on("finish",()=>{this._flattenBufferIn(),z7.metadata(this.options,(B,Y)=>{if(B)A(AA.nativeError(B,Q));else A(null,Y)})});else z7.metadata(this.options,(B,Y)=>{if(B)A(AA.nativeError(B,Q));else A(null,Y)});return this}else if(this._isStreamInput())return new Promise((B,Y)=>{let J=()=>{this._flattenBufferIn(),z7.metadata(this.options,(C,X)=>{if(C)Y(AA.nativeError(C,Q));else B(X)})};if(this.writableFinished)J();else this.once("finish",J)});else return new Promise((B,Y)=>{z7.metadata(this.options,(J,C)=>{if(J)Y(AA.nativeError(J,Q));else B(C)})})}function FAB(A){let Q=Error();if(AA.fn(A)){if(this._isStreamInput())this.on("finish",()=>{this._flattenBufferIn(),z7.stats(this.options,(B,Y)=>{if(B)A(AA.nativeError(B,Q));else A(null,Y)})});else z7.stats(this.options,(B,Y)=>{if(B)A(AA.nativeError(B,Q));else A(null,Y)});return this}else if(this._isStreamInput())return new Promise((B,Y)=>{this.on("finish",function(){this._flattenBufferIn(),z7.stats(this.options,(J,C)=>{if(J)Y(AA.nativeError(J,Q));else B(C)})})});else return new Promise((B,Y)=>{z7.stats(this.options,(J,C)=>{if(J)Y(AA.nativeError(J,Q));else B(C)})})}D7A.exports=function(A){Object.assign(A.prototype,{_inputOptionsFromObject:H7A,_createInputDescriptor:YAB,_write:JAB,_flattenBufferIn:CAB,_isStreamInput:XAB,metadata:GAB,stats:FAB}),A.align=QAB}});var w7A=R((UWY,R7A)=>{var XQ=f1(),q7A={center:0,centre:0,north:1,east:2,south:3,west:4,northeast:5,southeast:6,southwest:7,northwest:8},M7A={top:1,right:2,bottom:3,left:4,"right top":5,"right bottom":6,"left bottom":7,"left top":8},L7A={background:"background",copy:"copy",repeat:"repeat",mirror:"mirror"},z7A={entropy:16,attention:17},Sx={nearest:"nearest",linear:"linear",cubic:"cubic",mitchell:"mitchell",lanczos2:"lanczos2",lanczos3:"lanczos3",mks2013:"mks2013",mks2021:"mks2021"},WAB={contain:"contain",cover:"cover",fill:"fill",inside:"inside",outside:"outside"},ZAB={contain:"embed",cover:"crop",fill:"ignore_aspect",inside:"max",outside:"min"};function kx(A){return A.angle%360!==0||A.input.autoOrient===!0||A.rotationAngle!==0}function YR(A){return A.width!==-1||A.height!==-1}function $AB(A,Q,B){if(YR(this.options))this.options.debuglog("ignoring previous resize options");if(this.options.widthPost!==-1)this.options.debuglog("operation order will be: extract, resize, extract");if(XQ.defined(A))if(XQ.object(A)&&!XQ.defined(B))B=A;else if(XQ.integer(A)&&A>0)this.options.width=A;else throw XQ.invalidParameterError("width","positive integer",A);else this.options.width=-1;if(XQ.defined(Q))if(XQ.integer(Q)&&Q>0)this.options.height=Q;else throw XQ.invalidParameterError("height","positive integer",Q);else this.options.height=-1;if(XQ.object(B)){if(XQ.defined(B.width))if(XQ.integer(B.width)&&B.width>0)this.options.width=B.width;else throw XQ.invalidParameterError("width","positive integer",B.width);if(XQ.defined(B.height))if(XQ.integer(B.height)&&B.height>0)this.options.height=B.height;else throw XQ.invalidParameterError("height","positive integer",B.height);if(XQ.defined(B.fit)){let Y=ZAB[B.fit];if(XQ.string(Y))this.options.canvas=Y;else throw XQ.invalidParameterError("fit","valid fit",B.fit)}if(XQ.defined(B.position)){let Y=XQ.integer(B.position)?B.position:z7A[B.position]||M7A[B.position]||q7A[B.position];if(XQ.integer(Y)&&(XQ.inRange(Y,0,8)||XQ.inRange(Y,16,17)))this.options.position=Y;else throw XQ.invalidParameterError("position","valid position/gravity/strategy",B.position)}if(this._setBackgroundColourOption("resizeBackground",B.background),XQ.defined(B.kernel))if(XQ.string(Sx[B.kernel]))this.options.kernel=Sx[B.kernel];else throw XQ.invalidParameterError("kernel","valid kernel name",B.kernel);if(XQ.defined(B.withoutEnlargement))this._setBooleanOption("withoutEnlargement",B.withoutEnlargement);if(XQ.defined(B.withoutReduction))this._setBooleanOption("withoutReduction",B.withoutReduction);if(XQ.defined(B.fastShrinkOnLoad))this._setBooleanOption("fastShrinkOnLoad",B.fastShrinkOnLoad)}if(kx(this.options)&&YR(this.options))this.options.rotateBeforePreExtract=!0;return this}function UAB(A){if(XQ.integer(A)&&A>0)this.options.extendTop=A,this.options.extendBottom=A,this.options.extendLeft=A,this.options.extendRight=A;else if(XQ.object(A)){if(XQ.defined(A.top))if(XQ.integer(A.top)&&A.top>=0)this.options.extendTop=A.top;else throw XQ.invalidParameterError("top","positive integer",A.top);if(XQ.defined(A.bottom))if(XQ.integer(A.bottom)&&A.bottom>=0)this.options.extendBottom=A.bottom;else throw XQ.invalidParameterError("bottom","positive integer",A.bottom);if(XQ.defined(A.left))if(XQ.integer(A.left)&&A.left>=0)this.options.extendLeft=A.left;else throw XQ.invalidParameterError("left","positive integer",A.left);if(XQ.defined(A.right))if(XQ.integer(A.right)&&A.right>=0)this.options.extendRight=A.right;else throw XQ.invalidParameterError("right","positive integer",A.right);if(this._setBackgroundColourOption("extendBackground",A.background),XQ.defined(A.extendWith))if(XQ.string(L7A[A.extendWith]))this.options.extendWith=L7A[A.extendWith];else throw XQ.invalidParameterError("extendWith","one of: background, copy, repeat, mirror",A.extendWith)}else throw XQ.invalidParameterError("extend","integer or object",A);return this}function EAB(A){let Q=YR(this.options)||this.options.widthPre!==-1?"Post":"Pre";if(this.options[`width${Q}`]!==-1)this.options.debuglog("ignoring previous extract options");if(["left","top","width","height"].forEach(function(B){let Y=A[B];if(XQ.integer(Y)&&Y>=0)this.options[B+(B==="left"||B==="top"?"Offset":"")+Q]=Y;else throw XQ.invalidParameterError(B,"integer",Y)},this),kx(this.options)&&!YR(this.options)){if(this.options.widthPre===-1||this.options.widthPost===-1)this.options.rotateBeforePreExtract=!0}return this}function KAB(A){if(this.options.trimThreshold=10,XQ.defined(A))if(XQ.object(A)){if(XQ.defined(A.background))this._setBackgroundColourOption("trimBackground",A.background);if(XQ.defined(A.threshold))if(XQ.number(A.threshold)&&A.threshold>=0)this.options.trimThreshold=A.threshold;else throw XQ.invalidParameterError("threshold","positive number",A.threshold);if(XQ.defined(A.lineArt))this._setBooleanOption("trimLineArt",A.lineArt)}else throw XQ.invalidParameterError("trim","object",A);if(kx(this.options))this.options.rotateBeforePreExtract=!0;return this}R7A.exports=function(A){Object.assign(A.prototype,{resize:$AB,extend:UAB,extract:EAB,trim:KAB}),A.gravity=q7A,A.strategy=z7A,A.kernel=Sx,A.fit=WAB,A.position=M7A}});var O7A=R((EWY,j7A)=>{var iB=f1(),_x={clear:"clear",source:"source",over:"over",in:"in",out:"out",atop:"atop",dest:"dest","dest-over":"dest-over","dest-in":"dest-in","dest-out":"dest-out","dest-atop":"dest-atop",xor:"xor",add:"add",saturate:"saturate",multiply:"multiply",screen:"screen",overlay:"overlay",darken:"darken",lighten:"lighten","colour-dodge":"colour-dodge","color-dodge":"colour-dodge","colour-burn":"colour-burn","color-burn":"colour-burn","hard-light":"hard-light","soft-light":"soft-light",difference:"difference",exclusion:"exclusion"};function VAB(A){if(!Array.isArray(A))throw iB.invalidParameterError("images to composite","array",A);return this.options.composite=A.map((Q)=>{if(!iB.object(Q))throw iB.invalidParameterError("image to composite","object",Q);let B=this._inputOptionsFromObject(Q),Y={input:this._createInputDescriptor(Q.input,B,{allowStream:!1}),blend:"over",tile:!1,left:0,top:0,hasOffset:!1,gravity:0,premultiplied:!1};if(iB.defined(Q.blend))if(iB.string(_x[Q.blend]))Y.blend=_x[Q.blend];else throw iB.invalidParameterError("blend","valid blend name",Q.blend);if(iB.defined(Q.tile))if(iB.bool(Q.tile))Y.tile=Q.tile;else throw iB.invalidParameterError("tile","boolean",Q.tile);if(iB.defined(Q.left))if(iB.integer(Q.left))Y.left=Q.left;else throw iB.invalidParameterError("left","integer",Q.left);if(iB.defined(Q.top))if(iB.integer(Q.top))Y.top=Q.top;else throw iB.invalidParameterError("top","integer",Q.top);if(iB.defined(Q.top)!==iB.defined(Q.left))throw Error("Expected both left and top to be set");else Y.hasOffset=iB.integer(Q.top)&&iB.integer(Q.left);if(iB.defined(Q.gravity))if(iB.integer(Q.gravity)&&iB.inRange(Q.gravity,0,8))Y.gravity=Q.gravity;else if(iB.string(Q.gravity)&&iB.integer(this.constructor.gravity[Q.gravity]))Y.gravity=this.constructor.gravity[Q.gravity];else throw iB.invalidParameterError("gravity","valid gravity",Q.gravity);if(iB.defined(Q.premultiplied))if(iB.bool(Q.premultiplied))Y.premultiplied=Q.premultiplied;else throw iB.invalidParameterError("premultiplied","boolean",Q.premultiplied);return Y}),this}j7A.exports=function(A){A.prototype.composite=VAB,A.blend=_x}});var _7A=R((KWY,k7A)=>{var FA=f1(),P7A={integer:"integer",float:"float",approximate:"approximate"};function IAB(A,Q){if(!FA.defined(A))return this.autoOrient();if(this.options.angle||this.options.rotationAngle)this.options.debuglog("ignoring previous rotate options"),this.options.angle=0,this.options.rotationAngle=0;if(FA.integer(A)&&!(A%90))this.options.angle=A;else if(FA.number(A)){if(this.options.rotationAngle=A,FA.object(Q)&&Q.background)this._setBackgroundColourOption("rotationBackground",Q.background)}else throw FA.invalidParameterError("angle","numeric",A);return this}function HAB(){return this.options.input.autoOrient=!0,this}function DAB(A){return this.options.flip=FA.bool(A)?A:!0,this}function NAB(A){return this.options.flop=FA.bool(A)?A:!0,this}function LAB(A,Q){let B=[].concat(...A);if(B.length===4&&B.every(FA.number))this.options.affineMatrix=B;else throw FA.invalidParameterError("matrix","1x4 or 2x2 array",A);if(FA.defined(Q))if(FA.object(Q)){if(this._setBackgroundColourOption("affineBackground",Q.background),FA.defined(Q.idx))if(FA.number(Q.idx))this.options.affineIdx=Q.idx;else throw FA.invalidParameterError("options.idx","number",Q.idx);if(FA.defined(Q.idy))if(FA.number(Q.idy))this.options.affineIdy=Q.idy;else throw FA.invalidParameterError("options.idy","number",Q.idy);if(FA.defined(Q.odx))if(FA.number(Q.odx))this.options.affineOdx=Q.odx;else throw FA.invalidParameterError("options.odx","number",Q.odx);if(FA.defined(Q.ody))if(FA.number(Q.ody))this.options.affineOdy=Q.ody;else throw FA.invalidParameterError("options.ody","number",Q.ody);if(FA.defined(Q.interpolator))if(FA.inArray(Q.interpolator,Object.values(this.constructor.interpolators)))this.options.affineInterpolator=Q.interpolator;else throw FA.invalidParameterError("options.interpolator","valid interpolator name",Q.interpolator)}else throw FA.invalidParameterError("options","object",Q);return this}function qAB(A,Q,B){if(!FA.defined(A))this.options.sharpenSigma=-1;else if(FA.bool(A))this.options.sharpenSigma=A?-1:0;else if(FA.number(A)&&FA.inRange(A,0.01,1e4)){if(this.options.sharpenSigma=A,FA.defined(Q))if(FA.number(Q)&&FA.inRange(Q,0,1e4))this.options.sharpenM1=Q;else throw FA.invalidParameterError("flat","number between 0 and 10000",Q);if(FA.defined(B))if(FA.number(B)&&FA.inRange(B,0,1e4))this.options.sharpenM2=B;else throw FA.invalidParameterError("jagged","number between 0 and 10000",B)}else if(FA.plainObject(A)){if(FA.number(A.sigma)&&FA.inRange(A.sigma,0.000001,10))this.options.sharpenSigma=A.sigma;else throw FA.invalidParameterError("options.sigma","number between 0.000001 and 10",A.sigma);if(FA.defined(A.m1))if(FA.number(A.m1)&&FA.inRange(A.m1,0,1e6))this.options.sharpenM1=A.m1;else throw FA.invalidParameterError("options.m1","number between 0 and 1000000",A.m1);if(FA.defined(A.m2))if(FA.number(A.m2)&&FA.inRange(A.m2,0,1e6))this.options.sharpenM2=A.m2;else throw FA.invalidParameterError("options.m2","number between 0 and 1000000",A.m2);if(FA.defined(A.x1))if(FA.number(A.x1)&&FA.inRange(A.x1,0,1e6))this.options.sharpenX1=A.x1;else throw FA.invalidParameterError("options.x1","number between 0 and 1000000",A.x1);if(FA.defined(A.y2))if(FA.number(A.y2)&&FA.inRange(A.y2,0,1e6))this.options.sharpenY2=A.y2;else throw FA.invalidParameterError("options.y2","number between 0 and 1000000",A.y2);if(FA.defined(A.y3))if(FA.number(A.y3)&&FA.inRange(A.y3,0,1e6))this.options.sharpenY3=A.y3;else throw FA.invalidParameterError("options.y3","number between 0 and 1000000",A.y3)}else throw FA.invalidParameterError("sigma","number between 0.01 and 10000",A);return this}function MAB(A){if(!FA.defined(A))this.options.medianSize=3;else if(FA.integer(A)&&FA.inRange(A,1,1000))this.options.medianSize=A;else throw FA.invalidParameterError("size","integer between 1 and 1000",A);return this}function zAB(A){let Q;if(FA.number(A))Q=A;else if(FA.plainObject(A)){if(!FA.number(A.sigma))throw FA.invalidParameterError("options.sigma","number between 0.3 and 1000",Q);if(Q=A.sigma,"precision"in A)if(FA.string(P7A[A.precision]))this.options.precision=P7A[A.precision];else throw FA.invalidParameterError("precision","one of: integer, float, approximate",A.precision);if("minAmplitude"in A)if(FA.number(A.minAmplitude)&&FA.inRange(A.minAmplitude,0.001,1))this.options.minAmpl=A.minAmplitude;else throw FA.invalidParameterError("minAmplitude","number between 0.001 and 1",A.minAmplitude)}if(!FA.defined(A))this.options.blurSigma=-1;else if(FA.bool(A))this.options.blurSigma=A?-1:0;else if(FA.number(Q)&&FA.inRange(Q,0.3,1000))this.options.blurSigma=Q;else throw FA.invalidParameterError("sigma","number between 0.3 and 1000",Q);return this}function T7A(A){if(!FA.defined(A))this.options.dilateWidth=1;else if(FA.integer(A)&&A>0)this.options.dilateWidth=A;else throw FA.invalidParameterError("dilate","positive integer",T7A);return this}function S7A(A){if(!FA.defined(A))this.options.erodeWidth=1;else if(FA.integer(A)&&A>0)this.options.erodeWidth=A;else throw FA.invalidParameterError("erode","positive integer",S7A);return this}function RAB(A){if(this.options.flatten=FA.bool(A)?A:!0,FA.object(A))this._setBackgroundColourOption("flattenBackground",A.background);return this}function wAB(){return this.options.unflatten=!0,this}function jAB(A,Q){if(!FA.defined(A))this.options.gamma=2.2;else if(FA.number(A)&&FA.inRange(A,1,3))this.options.gamma=A;else throw FA.invalidParameterError("gamma","number between 1.0 and 3.0",A);if(!FA.defined(Q))this.options.gammaOut=this.options.gamma;else if(FA.number(Q)&&FA.inRange(Q,1,3))this.options.gammaOut=Q;else throw FA.invalidParameterError("gammaOut","number between 1.0 and 3.0",Q);return this}function OAB(A){if(this.options.negate=FA.bool(A)?A:!0,FA.plainObject(A)&&"alpha"in A)if(!FA.bool(A.alpha))throw FA.invalidParameterError("alpha","should be boolean value",A.alpha);else this.options.negateAlpha=A.alpha;return this}function PAB(A){if(FA.plainObject(A)){if(FA.defined(A.lower))if(FA.number(A.lower)&&FA.inRange(A.lower,0,99))this.options.normaliseLower=A.lower;else throw FA.invalidParameterError("lower","number between 0 and 99",A.lower);if(FA.defined(A.upper))if(FA.number(A.upper)&&FA.inRange(A.upper,1,100))this.options.normaliseUpper=A.upper;else throw FA.invalidParameterError("upper","number between 1 and 100",A.upper)}if(this.options.normaliseLower>=this.options.normaliseUpper)throw FA.invalidParameterError("range","lower to be less than upper",`${this.options.normaliseLower} >= ${this.options.normaliseUpper}`);return this.options.normalise=!0,this}function TAB(A){return this.normalise(A)}function SAB(A){if(FA.plainObject(A)){if(FA.integer(A.width)&&A.width>0)this.options.claheWidth=A.width;else throw FA.invalidParameterError("width","integer greater than zero",A.width);if(FA.integer(A.height)&&A.height>0)this.options.claheHeight=A.height;else throw FA.invalidParameterError("height","integer greater than zero",A.height);if(FA.defined(A.maxSlope))if(FA.integer(A.maxSlope)&&FA.inRange(A.maxSlope,0,100))this.options.claheMaxSlope=A.maxSlope;else throw FA.invalidParameterError("maxSlope","integer between 0 and 100",A.maxSlope)}else throw FA.invalidParameterError("options","plain object",A);return this}function kAB(A){if(!FA.object(A)||!Array.isArray(A.kernel)||!FA.integer(A.width)||!FA.integer(A.height)||!FA.inRange(A.width,3,1001)||!FA.inRange(A.height,3,1001)||A.height*A.width!==A.kernel.length)throw Error("Invalid convolution kernel");if(!FA.integer(A.scale))A.scale=A.kernel.reduce(function(Q,B){return Q+B},0);if(A.scale<1)A.scale=1;if(!FA.integer(A.offset))A.offset=0;return this.options.convKernel=A,this}function _AB(A,Q){if(!FA.defined(A))this.options.threshold=128;else if(FA.bool(A))this.options.threshold=A?128:0;else if(FA.integer(A)&&FA.inRange(A,0,255))this.options.threshold=A;else throw FA.invalidParameterError("threshold","integer between 0 and 255",A);if(!FA.object(Q)||Q.greyscale===!0||Q.grayscale===!0)this.options.thresholdGrayscale=!0;else this.options.thresholdGrayscale=!1;return this}function vAB(A,Q,B){if(this.options.boolean=this._createInputDescriptor(A,B),FA.string(Q)&&FA.inArray(Q,["and","or","eor"]))this.options.booleanOp=Q;else throw FA.invalidParameterError("operator","one of: and, or, eor",Q);return this}function yAB(A,Q){if(!FA.defined(A)&&FA.number(Q))A=1;else if(FA.number(A)&&!FA.defined(Q))Q=0;if(!FA.defined(A))this.options.linearA=[];else if(FA.number(A))this.options.linearA=[A];else if(Array.isArray(A)&&A.length&&A.every(FA.number))this.options.linearA=A;else throw FA.invalidParameterError("a","number or array of numbers",A);if(!FA.defined(Q))this.options.linearB=[];else if(FA.number(Q))this.options.linearB=[Q];else if(Array.isArray(Q)&&Q.length&&Q.every(FA.number))this.options.linearB=Q;else throw FA.invalidParameterError("b","number or array of numbers",Q);if(this.options.linearA.length!==this.options.linearB.length)throw Error("Expected a and b to be arrays of the same length");return this}function gAB(A){if(!Array.isArray(A))throw FA.invalidParameterError("inputMatrix","array",A);if(A.length!==3&&A.length!==4)throw FA.invalidParameterError("inputMatrix","3x3 or 4x4 array",A.length);let Q=A.flat().map(Number);if(Q.length!==9&&Q.length!==16)throw FA.invalidParameterError("inputMatrix","cardinality of 9 or 16",Q.length);return this.options.recombMatrix=Q,this}function hAB(A){if(!FA.plainObject(A))throw FA.invalidParameterError("options","plain object",A);if("brightness"in A)if(FA.number(A.brightness)&&A.brightness>=0)this.options.brightness=A.brightness;else throw FA.invalidParameterError("brightness","number above zero",A.brightness);if("saturation"in A)if(FA.number(A.saturation)&&A.saturation>=0)this.options.saturation=A.saturation;else throw FA.invalidParameterError("saturation","number above zero",A.saturation);if("hue"in A)if(FA.integer(A.hue))this.options.hue=A.hue%360;else throw FA.invalidParameterError("hue","number",A.hue);if("lightness"in A)if(FA.number(A.lightness))this.options.lightness=A.lightness;else throw FA.invalidParameterError("lightness","number",A.lightness);return this}k7A.exports=function(A){Object.assign(A.prototype,{autoOrient:HAB,rotate:IAB,flip:DAB,flop:NAB,affine:LAB,sharpen:qAB,erode:S7A,dilate:T7A,median:MAB,blur:zAB,flatten:RAB,unflatten:wAB,gamma:jAB,negate:OAB,normalise:PAB,normalize:TAB,clahe:SAB,convolve:kAB,threshold:_AB,boolean:vAB,linear:yAB,recomb:gAB,modulate:hAB})}});var vx=R((VWY,v7A)=>{v7A.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}});var g7A=R((IWY,y7A)=>{y7A.exports=function(Q){if(!Q||typeof Q==="string")return!1;return Q instanceof Array||Array.isArray(Q)||Q.length>=0&&(Q.splice instanceof Function||Object.getOwnPropertyDescriptor(Q,Q.length-1)&&Q.constructor.name!=="String")}});var f7A=R((HWY,x7A)=>{var xAB=g7A(),fAB=Array.prototype.concat,bAB=Array.prototype.slice,h7A=x7A.exports=function(Q){var B=[];for(var Y=0,J=Q.length;Y{var xH=vx(),fH=f7A(),b7A=Object.hasOwnProperty,m7A=Object.create(null);for(hH in xH)if(b7A.call(xH,hH))m7A[xH[hH]]=hH;var hH,K8=u7A.exports={to:{},get:{}};K8.get=function(A){var Q=A.substring(0,3).toLowerCase(),B,Y;switch(Q){case"hsl":B=K8.get.hsl(A),Y="hsl";break;case"hwb":B=K8.get.hwb(A),Y="hwb";break;default:B=K8.get.rgb(A),Y="rgb";break}if(!B)return null;return{model:Y,value:B}};K8.get.rgb=function(A){if(!A)return null;var Q=/^#([a-f0-9]{3,4})$/i,B=/^#([a-f0-9]{6})([a-f0-9]{2})?$/i,Y=/^rgba?\(\s*([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/,J=/^rgba?\(\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/,C=/^(\w+)$/,X=[0,0,0,1],G,F,W;if(G=A.match(B)){W=G[2],G=G[1];for(F=0;F<3;F++){var Z=F*2;X[F]=parseInt(G.slice(Z,Z+2),16)}if(W)X[3]=parseInt(W,16)/255}else if(G=A.match(Q)){G=G[1],W=G[3];for(F=0;F<3;F++)X[F]=parseInt(G[F]+G[F],16);if(W)X[3]=parseInt(W+W,16)/255}else if(G=A.match(Y)){for(F=0;F<3;F++)X[F]=parseInt(G[F+1],0);if(G[4])if(G[5])X[3]=parseFloat(G[4])*0.01;else X[3]=parseFloat(G[4])}else if(G=A.match(J)){for(F=0;F<3;F++)X[F]=Math.round(parseFloat(G[F+1])*2.55);if(G[4])if(G[5])X[3]=parseFloat(G[4])*0.01;else X[3]=parseFloat(G[4])}else if(G=A.match(C)){if(G[1]==="transparent")return[0,0,0,0];if(!b7A.call(xH,G[1]))return null;return X=xH[G[1]],X[3]=1,X}else return null;for(F=0;F<3;F++)X[F]=R7(X[F],0,255);return X[3]=R7(X[3],0,1),X};K8.get.hsl=function(A){if(!A)return null;var Q=/^hsla?\(\s*([+-]?(?:\d{0,3}\.)?\d+)(?:deg)?\s*,?\s*([+-]?[\d\.]+)%\s*,?\s*([+-]?[\d\.]+)%\s*(?:[,|\/]\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:[eE][+-]?\d+)?)\s*)?\)$/,B=A.match(Q);if(B){var Y=parseFloat(B[4]),J=(parseFloat(B[1])%360+360)%360,C=R7(parseFloat(B[2]),0,100),X=R7(parseFloat(B[3]),0,100),G=R7(isNaN(Y)?1:Y,0,1);return[J,C,X,G]}return null};K8.get.hwb=function(A){if(!A)return null;var Q=/^hwb\(\s*([+-]?\d{0,3}(?:\.\d+)?)(?:deg)?\s*,\s*([+-]?[\d\.]+)%\s*,\s*([+-]?[\d\.]+)%\s*(?:,\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:[eE][+-]?\d+)?)\s*)?\)$/,B=A.match(Q);if(B){var Y=parseFloat(B[4]),J=(parseFloat(B[1])%360+360)%360,C=R7(parseFloat(B[2]),0,100),X=R7(parseFloat(B[3]),0,100),G=R7(isNaN(Y)?1:Y,0,1);return[J,C,X,G]}return null};K8.to.hex=function(){var A=fH(arguments);return"#"+JR(A[0])+JR(A[1])+JR(A[2])+(A[3]<1?JR(Math.round(A[3]*255)):"")};K8.to.rgb=function(){var A=fH(arguments);return A.length<4||A[3]===1?"rgb("+Math.round(A[0])+", "+Math.round(A[1])+", "+Math.round(A[2])+")":"rgba("+Math.round(A[0])+", "+Math.round(A[1])+", "+Math.round(A[2])+", "+A[3]+")"};K8.to.rgb.percent=function(){var A=fH(arguments),Q=Math.round(A[0]/255*100),B=Math.round(A[1]/255*100),Y=Math.round(A[2]/255*100);return A.length<4||A[3]===1?"rgb("+Q+"%, "+B+"%, "+Y+"%)":"rgba("+Q+"%, "+B+"%, "+Y+"%, "+A[3]+")"};K8.to.hsl=function(){var A=fH(arguments);return A.length<4||A[3]===1?"hsl("+A[0]+", "+A[1]+"%, "+A[2]+"%)":"hsla("+A[0]+", "+A[1]+"%, "+A[2]+"%, "+A[3]+")"};K8.to.hwb=function(){var A=fH(arguments),Q="";if(A.length>=4&&A[3]!==1)Q=", "+A[3];return"hwb("+A[0]+", "+A[1]+"%, "+A[2]+"%"+Q+")"};K8.to.keyword=function(A){return m7A[A.slice(0,3)]};function R7(A,Q,B){return Math.min(Math.max(Q,A),B)}function JR(A){var Q=Math.round(A).toString(16).toUpperCase();return Q.length<2?"0"+Q:Q}});var yx=R((NWY,l7A)=>{var bH=vx(),c7A={};for(let A of Object.keys(bH))c7A[bH[A]]=A;var tA={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},lch:{channels:3,labels:"lch"},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}};l7A.exports=tA;for(let A of Object.keys(tA)){if(!("channels"in tA[A]))throw Error("missing channels property: "+A);if(!("labels"in tA[A]))throw Error("missing channel labels property: "+A);if(tA[A].labels.length!==tA[A].channels)throw Error("channel and label counts mismatch: "+A);let{channels:Q,labels:B}=tA[A];delete tA[A].channels,delete tA[A].labels,Object.defineProperty(tA[A],"channels",{value:Q}),Object.defineProperty(tA[A],"labels",{value:B})}tA.rgb.hsl=function(A){let Q=A[0]/255,B=A[1]/255,Y=A[2]/255,J=Math.min(Q,B,Y),C=Math.max(Q,B,Y),X=C-J,G,F;if(C===J)G=0;else if(Q===C)G=(B-Y)/X;else if(B===C)G=2+(Y-Q)/X;else if(Y===C)G=4+(Q-B)/X;if(G=Math.min(G*60,360),G<0)G+=360;let W=(J+C)/2;if(C===J)F=0;else if(W<=0.5)F=X/(C+J);else F=X/(2-C-J);return[G,F*100,W*100]};tA.rgb.hsv=function(A){let Q,B,Y,J,C,X=A[0]/255,G=A[1]/255,F=A[2]/255,W=Math.max(X,G,F),Z=W-Math.min(X,G,F),U=function($){return(W-$)/6/Z+0.5};if(Z===0)J=0,C=0;else{if(C=Z/W,Q=U(X),B=U(G),Y=U(F),X===W)J=Y-B;else if(G===W)J=0.3333333333333333+Q-Y;else if(F===W)J=0.6666666666666666+B-Q;if(J<0)J+=1;else if(J>1)J-=1}return[J*360,C*100,W*100]};tA.rgb.hwb=function(A){let Q=A[0],B=A[1],Y=A[2],J=tA.rgb.hsl(A)[0],C=0.00392156862745098*Math.min(Q,Math.min(B,Y));return Y=1-0.00392156862745098*Math.max(Q,Math.max(B,Y)),[J,C*100,Y*100]};tA.rgb.cmyk=function(A){let Q=A[0]/255,B=A[1]/255,Y=A[2]/255,J=Math.min(1-Q,1-B,1-Y),C=(1-Q-J)/(1-J)||0,X=(1-B-J)/(1-J)||0,G=(1-Y-J)/(1-J)||0;return[C*100,X*100,G*100,J*100]};function mAB(A,Q){return(A[0]-Q[0])**2+(A[1]-Q[1])**2+(A[2]-Q[2])**2}tA.rgb.keyword=function(A){let Q=c7A[A];if(Q)return Q;let B=1/0,Y;for(let J of Object.keys(bH)){let C=bH[J],X=mAB(A,C);if(X0.04045?((Q+0.055)/1.055)**2.4:Q/12.92,B=B>0.04045?((B+0.055)/1.055)**2.4:B/12.92,Y=Y>0.04045?((Y+0.055)/1.055)**2.4:Y/12.92;let J=Q*0.4124+B*0.3576+Y*0.1805,C=Q*0.2126+B*0.7152+Y*0.0722,X=Q*0.0193+B*0.1192+Y*0.9505;return[J*100,C*100,X*100]};tA.rgb.lab=function(A){let Q=tA.rgb.xyz(A),B=Q[0],Y=Q[1],J=Q[2];B/=95.047,Y/=100,J/=108.883,B=B>0.008856?B**0.3333333333333333:7.787*B+0.13793103448275862,Y=Y>0.008856?Y**0.3333333333333333:7.787*Y+0.13793103448275862,J=J>0.008856?J**0.3333333333333333:7.787*J+0.13793103448275862;let C=116*Y-16,X=500*(B-Y),G=200*(Y-J);return[C,X,G]};tA.hsl.rgb=function(A){let Q=A[0]/360,B=A[1]/100,Y=A[2]/100,J,C,X;if(B===0)return X=Y*255,[X,X,X];if(Y<0.5)J=Y*(1+B);else J=Y+B-Y*B;let G=2*Y-J,F=[0,0,0];for(let W=0;W<3;W++){if(C=Q+0.3333333333333333*-(W-1),C<0)C++;if(C>1)C--;if(6*C<1)X=G+(J-G)*6*C;else if(2*C<1)X=J;else if(3*C<2)X=G+(J-G)*(0.6666666666666666-C)*6;else X=G;F[W]=X*255}return F};tA.hsl.hsv=function(A){let Q=A[0],B=A[1]/100,Y=A[2]/100,J=B,C=Math.max(Y,0.01);Y*=2,B*=Y<=1?Y:2-Y,J*=C<=1?C:2-C;let X=(Y+B)/2,G=Y===0?2*J/(C+J):2*B/(Y+B);return[Q,G*100,X*100]};tA.hsv.rgb=function(A){let Q=A[0]/60,B=A[1]/100,Y=A[2]/100,J=Math.floor(Q)%6,C=Q-Math.floor(Q),X=255*Y*(1-B),G=255*Y*(1-B*C),F=255*Y*(1-B*(1-C));switch(Y*=255,J){case 0:return[Y,F,X];case 1:return[G,Y,X];case 2:return[X,Y,F];case 3:return[X,G,Y];case 4:return[F,X,Y];case 5:return[Y,X,G]}};tA.hsv.hsl=function(A){let Q=A[0],B=A[1]/100,Y=A[2]/100,J=Math.max(Y,0.01),C,X;X=(2-B)*Y;let G=(2-B)*J;return C=B*J,C/=G<=1?G:2-G,C=C||0,X/=2,[Q,C*100,X*100]};tA.hwb.rgb=function(A){let Q=A[0]/360,B=A[1]/100,Y=A[2]/100,J=B+Y,C;if(J>1)B/=J,Y/=J;let X=Math.floor(6*Q),G=1-Y;if(C=6*Q-X,(X&1)!==0)C=1-C;let F=B+C*(G-B),W,Z,U;switch(X){default:case 6:case 0:W=G,Z=F,U=B;break;case 1:W=F,Z=G,U=B;break;case 2:W=B,Z=G,U=F;break;case 3:W=B,Z=F,U=G;break;case 4:W=F,Z=B,U=G;break;case 5:W=G,Z=B,U=F;break}return[W*255,Z*255,U*255]};tA.cmyk.rgb=function(A){let Q=A[0]/100,B=A[1]/100,Y=A[2]/100,J=A[3]/100,C=1-Math.min(1,Q*(1-J)+J),X=1-Math.min(1,B*(1-J)+J),G=1-Math.min(1,Y*(1-J)+J);return[C*255,X*255,G*255]};tA.xyz.rgb=function(A){let Q=A[0]/100,B=A[1]/100,Y=A[2]/100,J,C,X;return J=Q*3.2406+B*-1.5372+Y*-0.4986,C=Q*-0.9689+B*1.8758+Y*0.0415,X=Q*0.0557+B*-0.204+Y*1.057,J=J>0.0031308?1.055*J**0.4166666666666667-0.055:J*12.92,C=C>0.0031308?1.055*C**0.4166666666666667-0.055:C*12.92,X=X>0.0031308?1.055*X**0.4166666666666667-0.055:X*12.92,J=Math.min(Math.max(0,J),1),C=Math.min(Math.max(0,C),1),X=Math.min(Math.max(0,X),1),[J*255,C*255,X*255]};tA.xyz.lab=function(A){let Q=A[0],B=A[1],Y=A[2];Q/=95.047,B/=100,Y/=108.883,Q=Q>0.008856?Q**0.3333333333333333:7.787*Q+0.13793103448275862,B=B>0.008856?B**0.3333333333333333:7.787*B+0.13793103448275862,Y=Y>0.008856?Y**0.3333333333333333:7.787*Y+0.13793103448275862;let J=116*B-16,C=500*(Q-B),X=200*(B-Y);return[J,C,X]};tA.lab.xyz=function(A){let Q=A[0],B=A[1],Y=A[2],J,C,X;C=(Q+16)/116,J=B/500+C,X=C-Y/200;let G=C**3,F=J**3,W=X**3;return C=G>0.008856?G:(C-0.13793103448275862)/7.787,J=F>0.008856?F:(J-0.13793103448275862)/7.787,X=W>0.008856?W:(X-0.13793103448275862)/7.787,J*=95.047,C*=100,X*=108.883,[J,C,X]};tA.lab.lch=function(A){let Q=A[0],B=A[1],Y=A[2],J;if(J=Math.atan2(Y,B)*360/2/Math.PI,J<0)J+=360;let X=Math.sqrt(B*B+Y*Y);return[Q,X,J]};tA.lch.lab=function(A){let Q=A[0],B=A[1],J=A[2]/360*2*Math.PI,C=B*Math.cos(J),X=B*Math.sin(J);return[Q,C,X]};tA.rgb.ansi16=function(A,Q=null){let[B,Y,J]=A,C=Q===null?tA.rgb.hsv(A)[2]:Q;if(C=Math.round(C/50),C===0)return 30;let X=30+(Math.round(J/255)<<2|Math.round(Y/255)<<1|Math.round(B/255));if(C===2)X+=60;return X};tA.hsv.ansi16=function(A){return tA.rgb.ansi16(tA.hsv.rgb(A),A[2])};tA.rgb.ansi256=function(A){let Q=A[0],B=A[1],Y=A[2];if(Q===B&&B===Y){if(Q<8)return 16;if(Q>248)return 231;return Math.round((Q-8)/247*24)+232}return 16+36*Math.round(Q/255*5)+6*Math.round(B/255*5)+Math.round(Y/255*5)};tA.ansi16.rgb=function(A){let Q=A%10;if(Q===0||Q===7){if(A>50)Q+=3.5;return Q=Q/10.5*255,[Q,Q,Q]}let B=(~~(A>50)+1)*0.5,Y=(Q&1)*B*255,J=(Q>>1&1)*B*255,C=(Q>>2&1)*B*255;return[Y,J,C]};tA.ansi256.rgb=function(A){if(A>=232){let C=(A-232)*10+8;return[C,C,C]}A-=16;let Q,B=Math.floor(A/36)/5*255,Y=Math.floor((Q=A%36)/6)/5*255,J=Q%6/5*255;return[B,Y,J]};tA.rgb.hex=function(A){let B=(((Math.round(A[0])&255)<<16)+((Math.round(A[1])&255)<<8)+(Math.round(A[2])&255)).toString(16).toUpperCase();return"000000".substring(B.length)+B};tA.hex.rgb=function(A){let Q=A.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!Q)return[0,0,0];let B=Q[0];if(Q[0].length===3)B=B.split("").map((G)=>{return G+G}).join("");let Y=parseInt(B,16),J=Y>>16&255,C=Y>>8&255,X=Y&255;return[J,C,X]};tA.rgb.hcg=function(A){let Q=A[0]/255,B=A[1]/255,Y=A[2]/255,J=Math.max(Math.max(Q,B),Y),C=Math.min(Math.min(Q,B),Y),X=J-C,G,F;if(X<1)G=C/(1-X);else G=0;if(X<=0)F=0;else if(J===Q)F=(B-Y)/X%6;else if(J===B)F=2+(Y-Q)/X;else F=4+(Q-B)/X;return F/=6,F%=1,[F*360,X*100,G*100]};tA.hsl.hcg=function(A){let Q=A[1]/100,B=A[2]/100,Y=B<0.5?2*Q*B:2*Q*(1-B),J=0;if(Y<1)J=(B-0.5*Y)/(1-Y);return[A[0],Y*100,J*100]};tA.hsv.hcg=function(A){let Q=A[1]/100,B=A[2]/100,Y=Q*B,J=0;if(Y<1)J=(B-Y)/(1-Y);return[A[0],Y*100,J*100]};tA.hcg.rgb=function(A){let Q=A[0]/360,B=A[1]/100,Y=A[2]/100;if(B===0)return[Y*255,Y*255,Y*255];let J=[0,0,0],C=Q%1*6,X=C%1,G=1-X,F=0;switch(Math.floor(C)){case 0:J[0]=1,J[1]=X,J[2]=0;break;case 1:J[0]=G,J[1]=1,J[2]=0;break;case 2:J[0]=0,J[1]=1,J[2]=X;break;case 3:J[0]=0,J[1]=G,J[2]=1;break;case 4:J[0]=X,J[1]=0,J[2]=1;break;default:J[0]=1,J[1]=0,J[2]=G}return F=(1-B)*Y,[(B*J[0]+F)*255,(B*J[1]+F)*255,(B*J[2]+F)*255]};tA.hcg.hsv=function(A){let Q=A[1]/100,B=A[2]/100,Y=Q+B*(1-Q),J=0;if(Y>0)J=Q/Y;return[A[0],J*100,Y*100]};tA.hcg.hsl=function(A){let Q=A[1]/100,Y=A[2]/100*(1-Q)+0.5*Q,J=0;if(Y>0&&Y<0.5)J=Q/(2*Y);else if(Y>=0.5&&Y<1)J=Q/(2*(1-Y));return[A[0],J*100,Y*100]};tA.hcg.hwb=function(A){let Q=A[1]/100,B=A[2]/100,Y=Q+B*(1-Q);return[A[0],(Y-Q)*100,(1-Y)*100]};tA.hwb.hcg=function(A){let Q=A[1]/100,Y=1-A[2]/100,J=Y-Q,C=0;if(J<1)C=(Y-J)/(1-J);return[A[0],J*100,C*100]};tA.apple.rgb=function(A){return[A[0]/65535*255,A[1]/65535*255,A[2]/65535*255]};tA.rgb.apple=function(A){return[A[0]/255*65535,A[1]/255*65535,A[2]/255*65535]};tA.gray.rgb=function(A){return[A[0]/100*255,A[0]/100*255,A[0]/100*255]};tA.gray.hsl=function(A){return[0,0,A[0]]};tA.gray.hsv=tA.gray.hsl;tA.gray.hwb=function(A){return[0,100,A[0]]};tA.gray.cmyk=function(A){return[0,0,0,A[0]]};tA.gray.lab=function(A){return[A[0],0,0]};tA.gray.hex=function(A){let Q=Math.round(A[0]/100*255)&255,Y=((Q<<16)+(Q<<8)+Q).toString(16).toUpperCase();return"000000".substring(Y.length)+Y};tA.rgb.gray=function(A){return[(A[0]+A[1]+A[2])/3/255*100]}});var i7A=R((LWY,p7A)=>{var CR=yx();function uAB(){let A={},Q=Object.keys(CR);for(let B=Q.length,Y=0;Y{var gx=yx(),pAB=i7A(),bU={},iAB=Object.keys(gx);function nAB(A){let Q=function(...B){let Y=B[0];if(Y===void 0||Y===null)return Y;if(Y.length>1)B=Y;return A(B)};if("conversion"in A)Q.conversion=A.conversion;return Q}function sAB(A){let Q=function(...B){let Y=B[0];if(Y===void 0||Y===null)return Y;if(Y.length>1)B=Y;let J=A(B);if(typeof J==="object")for(let C=J.length,X=0;X{bU[A]={},Object.defineProperty(bU[A],"channels",{value:gx[A].channels}),Object.defineProperty(bU[A],"labels",{value:gx[A].labels});let Q=pAB(A);Object.keys(Q).forEach((Y)=>{let J=Q[Y];bU[A][Y]=sAB(J),bU[A][Y].raw=nAB(J)})});n7A.exports=bU});var o7A=R((MWY,a7A)=>{var mU=d7A(),V8=s7A(),r7A=["keyword","gray","hex"],hx={};for(let A of Object.keys(V8))hx[[...V8[A].labels].sort().join("")]=A;var XR={};function uY(A,Q){if(!(this instanceof uY))return new uY(A,Q);if(Q&&Q in r7A)Q=null;if(Q&&!(Q in V8))throw Error("Unknown model: "+Q);let B,Y;if(A==null)this.model="rgb",this.color=[0,0,0],this.valpha=1;else if(A instanceof uY)this.model=A.model,this.color=[...A.color],this.valpha=A.valpha;else if(typeof A==="string"){let J=mU.get(A);if(J===null)throw Error("Unable to parse color from string: "+A);this.model=J.model,Y=V8[this.model].channels,this.color=J.value.slice(0,Y),this.valpha=typeof J.value[Y]==="number"?J.value[Y]:1}else if(A.length>0){this.model=Q||"rgb",Y=V8[this.model].channels;let J=Array.prototype.slice.call(A,0,Y);this.color=xx(J,Y),this.valpha=typeof A[Y]==="number"?A[Y]:1}else if(typeof A==="number")this.model="rgb",this.color=[A>>16&255,A>>8&255,A&255],this.valpha=1;else{this.valpha=1;let J=Object.keys(A);if("alpha"in A)J.splice(J.indexOf("alpha"),1),this.valpha=typeof A.alpha==="number"?A.alpha:0;let C=J.sort().join("");if(!(C in hx))throw Error("Unable to parse color from object: "+JSON.stringify(A));this.model=hx[C];let{labels:X}=V8[this.model],G=[];for(B=0;B(A%360+360)%360),saturationl:b0("hsl",1,PY(100)),lightness:b0("hsl",2,PY(100)),saturationv:b0("hsv",1,PY(100)),value:b0("hsv",2,PY(100)),chroma:b0("hcg",1,PY(100)),gray:b0("hcg",2,PY(100)),white:b0("hwb",1,PY(100)),wblack:b0("hwb",2,PY(100)),cyan:b0("cmyk",0,PY(100)),magenta:b0("cmyk",1,PY(100)),yellow:b0("cmyk",2,PY(100)),black:b0("cmyk",3,PY(100)),x:b0("xyz",0,PY(95.047)),y:b0("xyz",1,PY(100)),z:b0("xyz",2,PY(108.833)),l:b0("lab",0,PY(100)),a:b0("lab",1),b:b0("lab",2),keyword(A){if(A!==void 0)return new uY(A);return V8[this.model].keyword(this.color)},hex(A){if(A!==void 0)return new uY(A);return mU.to.hex(this.rgb().round().color)},hexa(A){if(A!==void 0)return new uY(A);let Q=this.rgb().round().color,B=Math.round(this.valpha*255).toString(16).toUpperCase();if(B.length===1)B="0"+B;return mU.to.hex(Q)+B},rgbNumber(){let A=this.rgb().color;return(A[0]&255)<<16|(A[1]&255)<<8|A[2]&255},luminosity(){let A=this.rgb().color,Q=[];for(let[B,Y]of A.entries()){let J=Y/255;Q[B]=J<=0.04045?J/12.92:((J+0.055)/1.055)**2.4}return 0.2126*Q[0]+0.7152*Q[1]+0.0722*Q[2]},contrast(A){let Q=this.luminosity(),B=A.luminosity();if(Q>B)return(Q+0.05)/(B+0.05);return(B+0.05)/(Q+0.05)},level(A){let Q=this.contrast(A);if(Q>=7)return"AAA";return Q>=4.5?"AA":""},isDark(){let A=this.rgb().color;return(A[0]*2126+A[1]*7152+A[2]*722)/1e4<128},isLight(){return!this.isDark()},negate(){let A=this.rgb();for(let Q=0;Q<3;Q++)A.color[Q]=255-A.color[Q];return A},lighten(A){let Q=this.hsl();return Q.color[2]+=Q.color[2]*A,Q},darken(A){let Q=this.hsl();return Q.color[2]-=Q.color[2]*A,Q},saturate(A){let Q=this.hsl();return Q.color[1]+=Q.color[1]*A,Q},desaturate(A){let Q=this.hsl();return Q.color[1]-=Q.color[1]*A,Q},whiten(A){let Q=this.hwb();return Q.color[1]+=Q.color[1]*A,Q},blacken(A){let Q=this.hwb();return Q.color[2]+=Q.color[2]*A,Q},grayscale(){let A=this.rgb().color,Q=A[0]*0.3+A[1]*0.59+A[2]*0.11;return uY.rgb(Q,Q,Q)},fade(A){return this.alpha(this.valpha-this.valpha*A)},opaquer(A){return this.alpha(this.valpha+this.valpha*A)},rotate(A){let Q=this.hsl(),B=Q.color[0];return B=(B+A)%360,B=B<0?360+B:B,Q.color[0]=B,Q},mix(A,Q){if(!A||!A.rgb)throw Error('Argument to "mix" was not a Color instance, but rather an instance of '+typeof A);let B=A.rgb(),Y=this.rgb(),J=Q===void 0?0.5:Q,C=2*J-1,X=B.alpha()-Y.alpha(),G=((C*X===-1?C:(C+X)/(1+C*X))+1)/2,F=1-G;return uY.rgb(G*B.red()+F*Y.red(),G*B.green()+F*Y.green(),G*B.blue()+F*Y.blue(),B.alpha()*J+Y.alpha()*(1-J))}};for(let A of Object.keys(V8)){if(r7A.includes(A))continue;let{channels:Q}=V8[A];uY.prototype[A]=function(...B){if(this.model===A)return new uY(this);if(B.length>0)return new uY(B,A);return new uY([...oAB(V8[this.model][A].raw(this.color)),this.valpha],A)},uY[A]=function(...B){let Y=B[0];if(typeof Y==="number")Y=xx(B,Q);return new uY(Y,A)}}function rAB(A,Q){return Number(A.toFixed(Q))}function aAB(A){return function(Q){return rAB(Q,A)}}function b0(A,Q,B){A=Array.isArray(A)?A:[A];for(let Y of A)(XR[Y]||(XR[Y]=[]))[Q]=B;return A=A[0],function(Y){let J;if(Y!==void 0){if(B)Y=B(Y);return J=this[A](),J.color[Q]=Y,J}if(J=this[A]().color[Q],B)J=B(J);return J}}function PY(A){return function(Q){return Math.max(0,Math.min(A,Q))}}function oAB(A){return Array.isArray(A)?A:[A]}function xx(A,Q){for(let B=0;B{var tAB=o7A(),OG=f1(),t7A={multiband:"multiband","b-w":"b-w",bw:"b-w",cmyk:"cmyk",srgb:"srgb"};function eAB(A){return this._setBackgroundColourOption("tint",A),this}function AQB(A){return this.options.greyscale=OG.bool(A)?A:!0,this}function QQB(A){return this.greyscale(A)}function BQB(A){if(!OG.string(A))throw OG.invalidParameterError("colourspace","string",A);return this.options.colourspacePipeline=A,this}function YQB(A){return this.pipelineColourspace(A)}function JQB(A){if(!OG.string(A))throw OG.invalidParameterError("colourspace","string",A);return this.options.colourspace=A,this}function CQB(A){return this.toColourspace(A)}function e7A(A){if(OG.object(A)||OG.string(A)){let Q=tAB(A);return[Q.red(),Q.green(),Q.blue(),Math.round(Q.alpha()*255)]}else throw OG.invalidParameterError("background","object or string",A)}function XQB(A,Q){if(OG.defined(Q))this.options[A]=e7A(Q)}AFA.exports=function(A){Object.assign(A.prototype,{tint:eAB,greyscale:AQB,grayscale:QQB,pipelineColourspace:BQB,pipelineColorspace:YQB,toColourspace:JQB,toColorspace:CQB,_getBackgroundColourOption:e7A,_setBackgroundColourOption:XQB}),A.colourspace=t7A,A.colorspace=t7A}});var YFA=R((RWY,BFA)=>{var d1=f1(),GQB={and:"and",or:"or",eor:"eor"};function FQB(){return this.options.removeAlpha=!0,this}function WQB(A){if(d1.defined(A))if(d1.number(A)&&d1.inRange(A,0,1))this.options.ensureAlpha=A;else throw d1.invalidParameterError("alpha","number between 0 and 1",A);else this.options.ensureAlpha=1;return this}function ZQB(A){let Q={red:0,green:1,blue:2,alpha:3};if(Object.keys(Q).includes(A))A=Q[A];if(d1.integer(A)&&d1.inRange(A,0,4))this.options.extractChannel=A;else throw d1.invalidParameterError("channel","integer or one of: red, green, blue, alpha",A);return this}function $QB(A,Q){if(Array.isArray(A))A.forEach(function(B){this.options.joinChannelIn.push(this._createInputDescriptor(B,Q))},this);else this.options.joinChannelIn.push(this._createInputDescriptor(A,Q));return this}function UQB(A){if(d1.string(A)&&d1.inArray(A,["and","or","eor"]))this.options.bandBoolOp=A;else throw d1.invalidParameterError("boolOp","one of: and, or, eor",A);return this}BFA.exports=function(A){Object.assign(A.prototype,{removeAlpha:FQB,ensureAlpha:WQB,extractChannel:ZQB,joinChannel:$QB,bandbool:UQB}),A.bool=GQB}});var FFA=R((wWY,GFA)=>{var fx=u("node:path"),f=f1(),uU=gH(),JFA=new Map([["heic","heif"],["heif","heif"],["avif","avif"],["jpeg","jpeg"],["jpg","jpeg"],["jpe","jpeg"],["tile","tile"],["dz","tile"],["png","png"],["raw","raw"],["tiff","tiff"],["tif","tiff"],["webp","webp"],["gif","gif"],["jp2","jp2"],["jpx","jp2"],["j2k","jp2"],["j2c","jp2"],["jxl","jxl"]]),EQB=/\.(jp[2x]|j2[kc])$/i,CFA=()=>Error("JP2 output requires libvips with support for OpenJPEG"),XFA=(A)=>1<<31-Math.clz32(Math.ceil(Math.log2(A)));function KQB(A,Q){let B;if(!f.string(A))B=Error("Missing output file path");else if(f.string(this.options.input.file)&&fx.resolve(this.options.input.file)===fx.resolve(A))B=Error("Cannot use same file for input and output");else if(EQB.test(fx.extname(A))&&!this.constructor.format.jp2k.output.file)B=CFA();if(B)if(f.fn(Q))Q(B);else return Promise.reject(B);else{this.options.fileOut=A;let Y=Error();return this._pipeline(Q,Y)}return this}function VQB(A,Q){if(f.object(A))this._setBooleanOption("resolveWithObject",A.resolveWithObject);else if(this.options.resolveWithObject)this.options.resolveWithObject=!1;this.options.fileOut="";let B=Error();return this._pipeline(f.fn(A)?A:Q,B)}function IQB(){return this.options.keepMetadata|=1,this}function HQB(A){if(f.object(A))for(let[Q,B]of Object.entries(A))if(f.object(B))for(let[Y,J]of Object.entries(B))if(f.string(J))this.options.withExif[`exif-${Q.toLowerCase()}-${Y}`]=J;else throw f.invalidParameterError(`${Q}.${Y}`,"string",J);else throw f.invalidParameterError(Q,"object",B);else throw f.invalidParameterError("exif","object",A);return this.options.withExifMerge=!1,this.keepExif()}function DQB(A){return this.withExif(A),this.options.withExifMerge=!0,this}function NQB(){return this.options.keepMetadata|=8,this}function LQB(A,Q){if(f.string(A))this.options.withIccProfile=A;else throw f.invalidParameterError("icc","string",A);if(this.keepIccProfile(),f.object(Q)){if(f.defined(Q.attach))if(f.bool(Q.attach)){if(!Q.attach)this.options.keepMetadata&=-9}else throw f.invalidParameterError("attach","boolean",Q.attach)}return this}function qQB(){return this.options.keepMetadata|=2,this}function MQB(A){if(f.string(A)&&A.length>0)this.options.withXmp=A,this.options.keepMetadata|=2;else throw f.invalidParameterError("xmp","non-empty string",A);return this}function zQB(){return this.options.keepMetadata=31,this}function RQB(A){if(this.keepMetadata(),this.withIccProfile("srgb"),f.object(A)){if(f.defined(A.orientation))if(f.integer(A.orientation)&&f.inRange(A.orientation,1,8))this.options.withMetadataOrientation=A.orientation;else throw f.invalidParameterError("orientation","integer between 1 and 8",A.orientation);if(f.defined(A.density))if(f.number(A.density)&&A.density>0)this.options.withMetadataDensity=A.density;else throw f.invalidParameterError("density","positive number",A.density);if(f.defined(A.icc))this.withIccProfile(A.icc);if(f.defined(A.exif))this.withExifMerge(A.exif)}return this}function wQB(A,Q){let B=JFA.get((f.object(A)&&f.string(A.id)?A.id:A).toLowerCase());if(!B)throw f.invalidParameterError("format",`one of: ${[...JFA.keys()].join(", ")}`,A);return this[B](Q)}function jQB(A){if(f.object(A)){if(f.defined(A.quality))if(f.integer(A.quality)&&f.inRange(A.quality,1,100))this.options.jpegQuality=A.quality;else throw f.invalidParameterError("quality","integer between 1 and 100",A.quality);if(f.defined(A.progressive))this._setBooleanOption("jpegProgressive",A.progressive);if(f.defined(A.chromaSubsampling))if(f.string(A.chromaSubsampling)&&f.inArray(A.chromaSubsampling,["4:2:0","4:4:4"]))this.options.jpegChromaSubsampling=A.chromaSubsampling;else throw f.invalidParameterError("chromaSubsampling","one of: 4:2:0, 4:4:4",A.chromaSubsampling);let Q=f.bool(A.optimizeCoding)?A.optimizeCoding:A.optimiseCoding;if(f.defined(Q))this._setBooleanOption("jpegOptimiseCoding",Q);if(f.defined(A.mozjpeg))if(f.bool(A.mozjpeg)){if(A.mozjpeg)this.options.jpegTrellisQuantisation=!0,this.options.jpegOvershootDeringing=!0,this.options.jpegOptimiseScans=!0,this.options.jpegProgressive=!0,this.options.jpegQuantisationTable=3}else throw f.invalidParameterError("mozjpeg","boolean",A.mozjpeg);let B=f.bool(A.trellisQuantization)?A.trellisQuantization:A.trellisQuantisation;if(f.defined(B))this._setBooleanOption("jpegTrellisQuantisation",B);if(f.defined(A.overshootDeringing))this._setBooleanOption("jpegOvershootDeringing",A.overshootDeringing);let Y=f.bool(A.optimizeScans)?A.optimizeScans:A.optimiseScans;if(f.defined(Y)){if(this._setBooleanOption("jpegOptimiseScans",Y),Y)this.options.jpegProgressive=!0}let J=f.number(A.quantizationTable)?A.quantizationTable:A.quantisationTable;if(f.defined(J))if(f.integer(J)&&f.inRange(J,0,8))this.options.jpegQuantisationTable=J;else throw f.invalidParameterError("quantisationTable","integer between 0 and 8",J)}return this._updateFormatOut("jpeg",A)}function OQB(A){if(f.object(A)){if(f.defined(A.progressive))this._setBooleanOption("pngProgressive",A.progressive);if(f.defined(A.compressionLevel))if(f.integer(A.compressionLevel)&&f.inRange(A.compressionLevel,0,9))this.options.pngCompressionLevel=A.compressionLevel;else throw f.invalidParameterError("compressionLevel","integer between 0 and 9",A.compressionLevel);if(f.defined(A.adaptiveFiltering))this._setBooleanOption("pngAdaptiveFiltering",A.adaptiveFiltering);let Q=A.colours||A.colors;if(f.defined(Q))if(f.integer(Q)&&f.inRange(Q,2,256))this.options.pngBitdepth=XFA(Q);else throw f.invalidParameterError("colours","integer between 2 and 256",Q);if(f.defined(A.palette))this._setBooleanOption("pngPalette",A.palette);else if([A.quality,A.effort,A.colours,A.colors,A.dither].some(f.defined))this._setBooleanOption("pngPalette",!0);if(this.options.pngPalette){if(f.defined(A.quality))if(f.integer(A.quality)&&f.inRange(A.quality,0,100))this.options.pngQuality=A.quality;else throw f.invalidParameterError("quality","integer between 0 and 100",A.quality);if(f.defined(A.effort))if(f.integer(A.effort)&&f.inRange(A.effort,1,10))this.options.pngEffort=A.effort;else throw f.invalidParameterError("effort","integer between 1 and 10",A.effort);if(f.defined(A.dither))if(f.number(A.dither)&&f.inRange(A.dither,0,1))this.options.pngDither=A.dither;else throw f.invalidParameterError("dither","number between 0.0 and 1.0",A.dither)}}return this._updateFormatOut("png",A)}function PQB(A){if(f.object(A)){if(f.defined(A.quality))if(f.integer(A.quality)&&f.inRange(A.quality,1,100))this.options.webpQuality=A.quality;else throw f.invalidParameterError("quality","integer between 1 and 100",A.quality);if(f.defined(A.alphaQuality))if(f.integer(A.alphaQuality)&&f.inRange(A.alphaQuality,0,100))this.options.webpAlphaQuality=A.alphaQuality;else throw f.invalidParameterError("alphaQuality","integer between 0 and 100",A.alphaQuality);if(f.defined(A.lossless))this._setBooleanOption("webpLossless",A.lossless);if(f.defined(A.nearLossless))this._setBooleanOption("webpNearLossless",A.nearLossless);if(f.defined(A.smartSubsample))this._setBooleanOption("webpSmartSubsample",A.smartSubsample);if(f.defined(A.smartDeblock))this._setBooleanOption("webpSmartDeblock",A.smartDeblock);if(f.defined(A.preset))if(f.string(A.preset)&&f.inArray(A.preset,["default","photo","picture","drawing","icon","text"]))this.options.webpPreset=A.preset;else throw f.invalidParameterError("preset","one of: default, photo, picture, drawing, icon, text",A.preset);if(f.defined(A.effort))if(f.integer(A.effort)&&f.inRange(A.effort,0,6))this.options.webpEffort=A.effort;else throw f.invalidParameterError("effort","integer between 0 and 6",A.effort);if(f.defined(A.minSize))this._setBooleanOption("webpMinSize",A.minSize);if(f.defined(A.mixed))this._setBooleanOption("webpMixed",A.mixed)}return bx(A,this.options),this._updateFormatOut("webp",A)}function TQB(A){if(f.object(A)){if(f.defined(A.reuse))this._setBooleanOption("gifReuse",A.reuse);if(f.defined(A.progressive))this._setBooleanOption("gifProgressive",A.progressive);let Q=A.colours||A.colors;if(f.defined(Q))if(f.integer(Q)&&f.inRange(Q,2,256))this.options.gifBitdepth=XFA(Q);else throw f.invalidParameterError("colours","integer between 2 and 256",Q);if(f.defined(A.effort))if(f.number(A.effort)&&f.inRange(A.effort,1,10))this.options.gifEffort=A.effort;else throw f.invalidParameterError("effort","integer between 1 and 10",A.effort);if(f.defined(A.dither))if(f.number(A.dither)&&f.inRange(A.dither,0,1))this.options.gifDither=A.dither;else throw f.invalidParameterError("dither","number between 0.0 and 1.0",A.dither);if(f.defined(A.interFrameMaxError))if(f.number(A.interFrameMaxError)&&f.inRange(A.interFrameMaxError,0,32))this.options.gifInterFrameMaxError=A.interFrameMaxError;else throw f.invalidParameterError("interFrameMaxError","number between 0.0 and 32.0",A.interFrameMaxError);if(f.defined(A.interPaletteMaxError))if(f.number(A.interPaletteMaxError)&&f.inRange(A.interPaletteMaxError,0,256))this.options.gifInterPaletteMaxError=A.interPaletteMaxError;else throw f.invalidParameterError("interPaletteMaxError","number between 0.0 and 256.0",A.interPaletteMaxError);if(f.defined(A.keepDuplicateFrames))if(f.bool(A.keepDuplicateFrames))this._setBooleanOption("gifKeepDuplicateFrames",A.keepDuplicateFrames);else throw f.invalidParameterError("keepDuplicateFrames","boolean",A.keepDuplicateFrames)}return bx(A,this.options),this._updateFormatOut("gif",A)}function SQB(A){if(!this.constructor.format.jp2k.output.buffer)throw CFA();if(f.object(A)){if(f.defined(A.quality))if(f.integer(A.quality)&&f.inRange(A.quality,1,100))this.options.jp2Quality=A.quality;else throw f.invalidParameterError("quality","integer between 1 and 100",A.quality);if(f.defined(A.lossless))if(f.bool(A.lossless))this.options.jp2Lossless=A.lossless;else throw f.invalidParameterError("lossless","boolean",A.lossless);if(f.defined(A.tileWidth))if(f.integer(A.tileWidth)&&f.inRange(A.tileWidth,1,32768))this.options.jp2TileWidth=A.tileWidth;else throw f.invalidParameterError("tileWidth","integer between 1 and 32768",A.tileWidth);if(f.defined(A.tileHeight))if(f.integer(A.tileHeight)&&f.inRange(A.tileHeight,1,32768))this.options.jp2TileHeight=A.tileHeight;else throw f.invalidParameterError("tileHeight","integer between 1 and 32768",A.tileHeight);if(f.defined(A.chromaSubsampling))if(f.string(A.chromaSubsampling)&&f.inArray(A.chromaSubsampling,["4:2:0","4:4:4"]))this.options.jp2ChromaSubsampling=A.chromaSubsampling;else throw f.invalidParameterError("chromaSubsampling","one of: 4:2:0, 4:4:4",A.chromaSubsampling)}return this._updateFormatOut("jp2",A)}function bx(A,Q){if(f.object(A)&&f.defined(A.loop))if(f.integer(A.loop)&&f.inRange(A.loop,0,65535))Q.loop=A.loop;else throw f.invalidParameterError("loop","integer between 0 and 65535",A.loop);if(f.object(A)&&f.defined(A.delay))if(f.integer(A.delay)&&f.inRange(A.delay,0,65535))Q.delay=[A.delay];else if(Array.isArray(A.delay)&&A.delay.every(f.integer)&&A.delay.every((B)=>f.inRange(B,0,65535)))Q.delay=A.delay;else throw f.invalidParameterError("delay","integer or an array of integers between 0 and 65535",A.delay)}function kQB(A){if(f.object(A)){if(f.defined(A.quality))if(f.integer(A.quality)&&f.inRange(A.quality,1,100))this.options.tiffQuality=A.quality;else throw f.invalidParameterError("quality","integer between 1 and 100",A.quality);if(f.defined(A.bitdepth))if(f.integer(A.bitdepth)&&f.inArray(A.bitdepth,[1,2,4,8]))this.options.tiffBitdepth=A.bitdepth;else throw f.invalidParameterError("bitdepth","1, 2, 4 or 8",A.bitdepth);if(f.defined(A.tile))this._setBooleanOption("tiffTile",A.tile);if(f.defined(A.tileWidth))if(f.integer(A.tileWidth)&&A.tileWidth>0)this.options.tiffTileWidth=A.tileWidth;else throw f.invalidParameterError("tileWidth","integer greater than zero",A.tileWidth);if(f.defined(A.tileHeight))if(f.integer(A.tileHeight)&&A.tileHeight>0)this.options.tiffTileHeight=A.tileHeight;else throw f.invalidParameterError("tileHeight","integer greater than zero",A.tileHeight);if(f.defined(A.miniswhite))this._setBooleanOption("tiffMiniswhite",A.miniswhite);if(f.defined(A.pyramid))this._setBooleanOption("tiffPyramid",A.pyramid);if(f.defined(A.xres))if(f.number(A.xres)&&A.xres>0)this.options.tiffXres=A.xres;else throw f.invalidParameterError("xres","number greater than zero",A.xres);if(f.defined(A.yres))if(f.number(A.yres)&&A.yres>0)this.options.tiffYres=A.yres;else throw f.invalidParameterError("yres","number greater than zero",A.yres);if(f.defined(A.compression))if(f.string(A.compression)&&f.inArray(A.compression,["none","jpeg","deflate","packbits","ccittfax4","lzw","webp","zstd","jp2k"]))this.options.tiffCompression=A.compression;else throw f.invalidParameterError("compression","one of: none, jpeg, deflate, packbits, ccittfax4, lzw, webp, zstd, jp2k",A.compression);if(f.defined(A.predictor))if(f.string(A.predictor)&&f.inArray(A.predictor,["none","horizontal","float"]))this.options.tiffPredictor=A.predictor;else throw f.invalidParameterError("predictor","one of: none, horizontal, float",A.predictor);if(f.defined(A.resolutionUnit))if(f.string(A.resolutionUnit)&&f.inArray(A.resolutionUnit,["inch","cm"]))this.options.tiffResolutionUnit=A.resolutionUnit;else throw f.invalidParameterError("resolutionUnit","one of: inch, cm",A.resolutionUnit)}return this._updateFormatOut("tiff",A)}function _QB(A){return this.heif({...A,compression:"av1"})}function vQB(A){if(f.object(A)){if(f.string(A.compression)&&f.inArray(A.compression,["av1","hevc"]))this.options.heifCompression=A.compression;else throw f.invalidParameterError("compression","one of: av1, hevc",A.compression);if(f.defined(A.quality))if(f.integer(A.quality)&&f.inRange(A.quality,1,100))this.options.heifQuality=A.quality;else throw f.invalidParameterError("quality","integer between 1 and 100",A.quality);if(f.defined(A.lossless))if(f.bool(A.lossless))this.options.heifLossless=A.lossless;else throw f.invalidParameterError("lossless","boolean",A.lossless);if(f.defined(A.effort))if(f.integer(A.effort)&&f.inRange(A.effort,0,9))this.options.heifEffort=A.effort;else throw f.invalidParameterError("effort","integer between 0 and 9",A.effort);if(f.defined(A.chromaSubsampling))if(f.string(A.chromaSubsampling)&&f.inArray(A.chromaSubsampling,["4:2:0","4:4:4"]))this.options.heifChromaSubsampling=A.chromaSubsampling;else throw f.invalidParameterError("chromaSubsampling","one of: 4:2:0, 4:4:4",A.chromaSubsampling);if(f.defined(A.bitdepth))if(f.integer(A.bitdepth)&&f.inArray(A.bitdepth,[8,10,12])){if(A.bitdepth!==8&&this.constructor.versions.heif)throw f.invalidParameterError("bitdepth when using prebuilt binaries",8,A.bitdepth);this.options.heifBitdepth=A.bitdepth}else throw f.invalidParameterError("bitdepth","8, 10 or 12",A.bitdepth)}else throw f.invalidParameterError("options","Object",A);return this._updateFormatOut("heif",A)}function yQB(A){if(f.object(A)){if(f.defined(A.quality))if(f.integer(A.quality)&&f.inRange(A.quality,1,100))this.options.jxlDistance=A.quality>=30?0.1+(100-A.quality)*0.09:0.017666666666666667*A.quality*A.quality-1.15*A.quality+25;else throw f.invalidParameterError("quality","integer between 1 and 100",A.quality);else if(f.defined(A.distance))if(f.number(A.distance)&&f.inRange(A.distance,0,15))this.options.jxlDistance=A.distance;else throw f.invalidParameterError("distance","number between 0.0 and 15.0",A.distance);if(f.defined(A.decodingTier))if(f.integer(A.decodingTier)&&f.inRange(A.decodingTier,0,4))this.options.jxlDecodingTier=A.decodingTier;else throw f.invalidParameterError("decodingTier","integer between 0 and 4",A.decodingTier);if(f.defined(A.lossless))if(f.bool(A.lossless))this.options.jxlLossless=A.lossless;else throw f.invalidParameterError("lossless","boolean",A.lossless);if(f.defined(A.effort))if(f.integer(A.effort)&&f.inRange(A.effort,1,9))this.options.jxlEffort=A.effort;else throw f.invalidParameterError("effort","integer between 1 and 9",A.effort)}return bx(A,this.options),this._updateFormatOut("jxl",A)}function gQB(A){if(f.object(A)){if(f.defined(A.depth))if(f.string(A.depth)&&f.inArray(A.depth,["char","uchar","short","ushort","int","uint","float","complex","double","dpcomplex"]))this.options.rawDepth=A.depth;else throw f.invalidParameterError("depth","one of: char, uchar, short, ushort, int, uint, float, complex, double, dpcomplex",A.depth)}return this._updateFormatOut("raw")}function hQB(A){if(f.object(A)){if(f.defined(A.size))if(f.integer(A.size)&&f.inRange(A.size,1,8192))this.options.tileSize=A.size;else throw f.invalidParameterError("size","integer between 1 and 8192",A.size);if(f.defined(A.overlap))if(f.integer(A.overlap)&&f.inRange(A.overlap,0,8192)){if(A.overlap>this.options.tileSize)throw f.invalidParameterError("overlap",`<= size (${this.options.tileSize})`,A.overlap);this.options.tileOverlap=A.overlap}else throw f.invalidParameterError("overlap","integer between 0 and 8192",A.overlap);if(f.defined(A.container))if(f.string(A.container)&&f.inArray(A.container,["fs","zip"]))this.options.tileContainer=A.container;else throw f.invalidParameterError("container","one of: fs, zip",A.container);if(f.defined(A.layout))if(f.string(A.layout)&&f.inArray(A.layout,["dz","google","iiif","iiif3","zoomify"]))this.options.tileLayout=A.layout;else throw f.invalidParameterError("layout","one of: dz, google, iiif, iiif3, zoomify",A.layout);if(f.defined(A.angle))if(f.integer(A.angle)&&!(A.angle%90))this.options.tileAngle=A.angle;else throw f.invalidParameterError("angle","positive/negative multiple of 90",A.angle);if(this._setBackgroundColourOption("tileBackground",A.background),f.defined(A.depth))if(f.string(A.depth)&&f.inArray(A.depth,["onepixel","onetile","one"]))this.options.tileDepth=A.depth;else throw f.invalidParameterError("depth","one of: onepixel, onetile, one",A.depth);if(f.defined(A.skipBlanks))if(f.integer(A.skipBlanks)&&f.inRange(A.skipBlanks,-1,65535))this.options.tileSkipBlanks=A.skipBlanks;else throw f.invalidParameterError("skipBlanks","integer between -1 and 255/65535",A.skipBlanks);else if(f.defined(A.layout)&&A.layout==="google")this.options.tileSkipBlanks=5;let Q=f.bool(A.center)?A.center:A.centre;if(f.defined(Q))this._setBooleanOption("tileCentre",Q);if(f.defined(A.id))if(f.string(A.id))this.options.tileId=A.id;else throw f.invalidParameterError("id","string",A.id);if(f.defined(A.basename))if(f.string(A.basename))this.options.tileBasename=A.basename;else throw f.invalidParameterError("basename","string",A.basename)}if(f.inArray(this.options.formatOut,["jpeg","png","webp"]))this.options.tileFormat=this.options.formatOut;else if(this.options.formatOut!=="input")throw f.invalidParameterError("format","one of: jpeg, png, webp",this.options.formatOut);return this._updateFormatOut("dz")}function xQB(A){if(!f.plainObject(A))throw f.invalidParameterError("options","object",A);if(f.integer(A.seconds)&&f.inRange(A.seconds,0,3600))this.options.timeoutSeconds=A.seconds;else throw f.invalidParameterError("seconds","integer between 0 and 3600",A.seconds);return this}function fQB(A,Q){if(!(f.object(Q)&&Q.force===!1))this.options.formatOut=A;return this}function bQB(A,Q){if(f.bool(Q))this.options[A]=Q;else throw f.invalidParameterError(A,"boolean",Q)}function mQB(){if(!this.options.streamOut){this.options.streamOut=!0;let A=Error();this._pipeline(void 0,A)}}function uQB(A,Q){if(typeof A==="function"){if(this._isStreamInput())this.on("finish",()=>{this._flattenBufferIn(),uU.pipeline(this.options,(B,Y,J)=>{if(B)A(f.nativeError(B,Q));else A(null,Y,J)})});else uU.pipeline(this.options,(B,Y,J)=>{if(B)A(f.nativeError(B,Q));else A(null,Y,J)});return this}else if(this.options.streamOut){if(this._isStreamInput()){if(this.once("finish",()=>{this._flattenBufferIn(),uU.pipeline(this.options,(B,Y,J)=>{if(B)this.emit("error",f.nativeError(B,Q));else this.emit("info",J),this.push(Y);this.push(null),this.on("end",()=>this.emit("close"))})}),this.streamInFinished)this.emit("finish")}else uU.pipeline(this.options,(B,Y,J)=>{if(B)this.emit("error",f.nativeError(B,Q));else this.emit("info",J),this.push(Y);this.push(null),this.on("end",()=>this.emit("close"))});return this}else if(this._isStreamInput())return new Promise((B,Y)=>{this.once("finish",()=>{this._flattenBufferIn(),uU.pipeline(this.options,(J,C,X)=>{if(J)Y(f.nativeError(J,Q));else if(this.options.resolveWithObject)B({data:C,info:X});else B(C)})})});else return new Promise((B,Y)=>{uU.pipeline(this.options,(J,C,X)=>{if(J)Y(f.nativeError(J,Q));else if(this.options.resolveWithObject)B({data:C,info:X});else B(C)})})}GFA.exports=function(A){Object.assign(A.prototype,{toFile:KQB,toBuffer:VQB,keepExif:IQB,withExif:HQB,withExifMerge:DQB,keepIccProfile:NQB,withIccProfile:LQB,keepXmp:qQB,withXmp:MQB,keepMetadata:zQB,withMetadata:RQB,toFormat:wQB,jpeg:jQB,jp2:SQB,png:OQB,webp:PQB,tiff:kQB,avif:_QB,heif:vQB,jxl:yQB,gif:TQB,raw:gQB,tile:hQB,timeout:xQB,_updateFormatOut:fQB,_setBooleanOption:bQB,_read:mQB,_pipeline:uQB})}});var UFA=R((jWY,$FA)=>{var dQB=u("node:events"),GR=TH(),E5=f1(),{runtimePlatformArch:cQB}=Ox(),eJ=gH(),WFA=cQB(),mx=eJ.libvipsVersion(),w7=eJ.format();w7.heif.output.alias=["avif","heic"];w7.jpeg.output.alias=["jpe","jpg"];w7.tiff.output.alias=["tif"];w7.jp2k.output.alias=["j2c","j2k","jp2","jpx"];var lQB={nearest:"nearest",bilinear:"bilinear",bicubic:"bicubic",locallyBoundedBicubic:"lbb",nohalo:"nohalo",vertexSplitQuadraticBasisSpline:"vsqbs"},dU={vips:mx.semver};if(!mx.isGlobal)if(!mx.isWasm)try{dU=u(`@img/sharp-${WFA}/versions`)}catch(A){try{dU=u(`@img/sharp-libvips-${WFA}/versions`)}catch(Q){}}else try{dU=(()=>{throw new Error("Cannot require module "+"@img/sharp-wasm32/versions");})()}catch(A){}dU.sharp=wx().version;if(dU.heif&&w7.heif)w7.heif.input.fileSuffix=[".avif"],w7.heif.output.alias=["avif"];function ZFA(A){if(E5.bool(A))if(A)return eJ.cache(50,20,100);else return eJ.cache(0,0,0);else if(E5.object(A))return eJ.cache(A.memory,A.files,A.items);else return eJ.cache()}ZFA(!0);function pQB(A){return eJ.concurrency(E5.integer(A)?A:null)}if(GR.familySync()===GR.GLIBC&&!eJ._isUsingJemalloc())eJ.concurrency(1);else if(GR.familySync()===GR.MUSL&&eJ.concurrency()===1024)eJ.concurrency(u("node:os").availableParallelism());var iQB=new dQB.EventEmitter;function nQB(){return eJ.counters()}function sQB(A){return eJ.simd(E5.bool(A)?A:null)}function rQB(A){if(E5.object(A))if(Array.isArray(A.operation)&&A.operation.every(E5.string))eJ.block(A.operation,!0);else throw E5.invalidParameterError("operation","Array",A.operation);else throw E5.invalidParameterError("options","object",A)}function aQB(A){if(E5.object(A))if(Array.isArray(A.operation)&&A.operation.every(E5.string))eJ.block(A.operation,!1);else throw E5.invalidParameterError("operation","Array",A.operation);else throw E5.invalidParameterError("options","object",A)}$FA.exports=function(A){A.cache=ZFA,A.concurrency=pQB,A.counters=nQB,A.simd=sQB,A.format=w7,A.interpolators=lQB,A.versions=dU,A.queue=iQB,A.block=rQB,A.unblock=aQB}});var KFA=R((PWY,EFA)=>{var PG=I7A();N7A()(PG);w7A()(PG);O7A()(PG);_7A()(PG);QFA()(PG);YFA()(PG);FFA()(PG);UFA()(PG);EFA.exports=PG});var IFA=R((TWY,VFA)=>{function oQB(A,Q){var B=1,Y=A.length,J=A[0],C=A[0];for(var X=1;X{var ABB=IFA();function HFA(A,Q,B){var Y=A.length,J=Q.arrayArgs.length,C=Q.indexArgs.length>0,X=[],G=[],F=0,W=0,Z,U;for(Z=0;Z0)X.push("var "+G.join(","));for(Z=Y-1;Z>=0;--Z)F=A[Z],X.push(["for(i",Z,"=0;i",Z,"0)X.push(["index[",W,"]-=s",W].join(""));X.push(["++index[",F,"]"].join(""))}X.push("}")}return X.join(` -`)}function QBB(A,Q,B,Y){var J=Q.length,C=B.arrayArgs.length,X=B.blockSize,G=B.indexArgs.length>0,F=[];for(var W=0;W0;){"].join("")),F.push(["if(j",W,"<",X,"){"].join("")),F.push(["s",Q[W],"=j",W].join("")),F.push(["j",W,"=0"].join("")),F.push(["}else{s",Q[W],"=",X].join("")),F.push(["j",W,"-=",X,"}"].join("")),G)F.push(["index[",Q[W],"]=j",W].join(""));for(var W=0;W{var cuQ=TJA(),luQ=_JA(),puQ=typeof Float64Array<"u";function iuQ(A,Q){return A[0]-Q[0]}function nuQ(){var A=this.stride,Q=Array(A.length),B;for(B=0;BMath.abs(this.stride[1]))?[1,0]:[0,1]}})");else if(Q===3)J.push("var s0=Math.abs(this.stride[0]),s1=Math.abs(this.stride[1]),s2=Math.abs(this.stride[2]);if(s0>s1){if(s1>s2){return [2,1,0];}else if(s0>s2){return [1,2,0];}else{return [1,0,2];}}else if(s0>s2){return [2,0,1];}else if(s2>s1){return [0,1,2];}else{return [0,2,1];}}})")}else J.push("ORDER})");if(J.push("proto.set=function "+B+"_set("+X.join(",")+",v){"),Y)J.push("return this.data.set("+G+",v)}");else J.push("return this.data["+G+"]=v}");if(J.push("proto.get=function "+B+"_get("+X.join(",")+"){"),Y)J.push("return this.data.get("+G+")}");else J.push("return this.data["+G+"]}");J.push("proto.index=function "+B+"_index(",X.join(),"){return "+G+"}"),J.push("proto.hi=function "+B+"_hi("+X.join(",")+"){return new "+B+"(this.data,"+C.map(function(V){return["(typeof i",V,"!=='number'||i",V,"<0)?this.shape[",V,"]:i",V,"|0"].join("")}).join(",")+","+C.map(function(V){return"this.stride["+V+"]"}).join(",")+",this.offset)}");var Z=C.map(function(V){return"a"+V+"=this.shape["+V+"]"}),U=C.map(function(V){return"c"+V+"=this.stride["+V+"]"});J.push("proto.lo=function "+B+"_lo("+X.join(",")+"){var b=this.offset,d=0,"+Z.join(",")+","+U.join(","));for(var $=0;$=0){d=i"+$+"|0;b+=c"+$+"*d;a"+$+"-=d}");J.push("return new "+B+"(this.data,"+C.map(function(V){return"a"+V}).join(",")+","+C.map(function(V){return"c"+V}).join(",")+",b)}"),J.push("proto.step=function "+B+"_step("+X.join(",")+"){var "+C.map(function(V){return"a"+V+"=this.shape["+V+"]"}).join(",")+","+C.map(function(V){return"b"+V+"=this.stride["+V+"]"}).join(",")+",c=this.offset,d=0,ceil=Math.ceil");for(var $=0;$=0){c=(c+this.stride["+$+"]*i"+$+")|0}else{a.push(this.shape["+$+"]);b.push(this.stride["+$+"])}");J.push("var ctor=CTOR_LIST[a.length+1];return ctor(this.data,a,b,c)}"),J.push("return function construct_"+B+"(data,shape,stride,offset){return new "+B+"(data,"+C.map(function(V){return"shape["+V+"]"}).join(",")+","+C.map(function(V){return"stride["+V+"]"}).join(",")+",offset)}");var I=Function("CTOR_LIST","ORDER",J.join(` +`));return I(u2[A],nuQ)}function ruQ(A){if(luQ(A))return"buffer";if(puQ)switch(Object.prototype.toString.call(A)){case"[object Float64Array]":return"float64";case"[object Float32Array]":return"float32";case"[object Int8Array]":return"int8";case"[object Int16Array]":return"int16";case"[object Int32Array]":return"int32";case"[object Uint8Array]":return"uint8";case"[object Uint16Array]":return"uint16";case"[object Uint32Array]":return"uint32";case"[object Uint8ClampedArray]":return"uint8_clamped";case"[object BigInt64Array]":return"bigint64";case"[object BigUint64Array]":return"biguint64"}if(Array.isArray(A))return"array";return"generic"}var u2={float32:[],float64:[],int8:[],int16:[],int32:[],uint8:[],uint16:[],uint32:[],array:[],uint8_clamped:[],bigint64:[],biguint64:[],buffer:[],generic:[]};function auQ(A,Q,B,Y){if(A===void 0){var W=u2.array[0];return W([])}else if(typeof A==="number")A=[A];if(Q===void 0)Q=[A.length];var J=Q.length;if(B===void 0){B=Array(J);for(var C=J-1,X=1;C>=0;--C)B[C]=X,X*=Q[C]}if(Y===void 0){Y=0;for(var C=0;C{var yJA=function(A){return typeof A<"u"&&A!==null},ouQ=function(A){return typeof A==="object"},tuQ=function(A){return Object.prototype.toString.call(A)==="[object Object]"},euQ=function(A){return typeof A==="function"},AdQ=function(A){return typeof A==="boolean"},QdQ=function(A){return A instanceof Buffer},BdQ=function(A){if(yJA(A))switch(A.constructor){case Uint8Array:case Uint8ClampedArray:case Int8Array:case Uint16Array:case Int16Array:case Uint32Array:case Int32Array:case Float32Array:case Float64Array:return!0}return!1},YdQ=function(A){return A instanceof ArrayBuffer},JdQ=function(A){return typeof A==="string"&&A.length>0},CdQ=function(A){return typeof A==="number"&&!Number.isNaN(A)},XdQ=function(A){return Number.isInteger(A)},GdQ=function(A,Q,B){return A>=Q&&A<=B},FdQ=function(A,Q){return Q.includes(A)},WdQ=function(A,Q,B){return Error(`Expected ${Q} for ${A} but received ${B} of type ${typeof B}`)},ZdQ=function(A,Q){return Q.message=A.message,Q};hJA.exports={defined:yJA,object:ouQ,plainObject:tuQ,fn:euQ,bool:AdQ,buffer:QdQ,typedArray:BdQ,arrayBuffer:YdQ,string:JdQ,number:CdQ,integer:XdQ,inRange:GdQ,inArray:FdQ,invalidParameterError:WdQ,nativeError:ZdQ}});var fJA=R((W1Y,xJA)=>{var gJA=()=>process.platform==="linux",d2=null,$dQ=()=>{if(!d2)if(gJA()&&process.report){let A=process.report.excludeNetwork;process.report.excludeNetwork=!0,d2=process.report.getReport(),process.report.excludeNetwork=A}else d2={};return d2};xJA.exports={isLinux:gJA,getReport:$dQ}});var uJA=R((Z1Y,mJA)=>{var bJA=u("fs"),UdQ=(A)=>bJA.readFileSync(A,"utf-8"),EdQ=(A)=>new Promise((Q,B)=>{bJA.readFile(A,"utf-8",(Y,J)=>{if(Y)B(Y);else Q(J)})});mJA.exports={LDD_PATH:"/usr/bin/ldd",readFileSync:UdQ,readFile:EdQ}});var dI=R(($1Y,Y9A)=>{var cJA=u("child_process"),{isLinux:d4,getReport:lJA}=fJA(),{LDD_PATH:c2,readFile:pJA,readFileSync:iJA}=uJA(),O1,P1,eG="",nJA=()=>{if(!eG)return new Promise((A)=>{cJA.exec("getconf GNU_LIBC_VERSION 2>&1 || true; ldd --version 2>&1 || true",(Q,B)=>{eG=Q?" ":B,A(eG)})});return eG},sJA=()=>{if(!eG)try{eG=cJA.execSync("getconf GNU_LIBC_VERSION 2>&1 || true; ldd --version 2>&1 || true",{encoding:"utf8"})}catch(A){eG=" "}return eG},A7="glibc",rJA=/LIBC[a-z0-9 \-).]*?(\d+\.\d+)/i,u4="musl",KdQ=(A)=>A.includes("libc.musl-")||A.includes("ld-musl-"),aJA=()=>{let A=lJA();if(A.header&&A.header.glibcVersionRuntime)return A7;if(Array.isArray(A.sharedObjects)){if(A.sharedObjects.some(KdQ))return u4}return null},oJA=(A)=>{let[Q,B]=A.split(/[\r\n]+/);if(Q&&Q.includes(A7))return A7;if(B&&B.includes(u4))return u4;return null},tJA=(A)=>{if(A.includes("musl"))return u4;if(A.includes("GNU C Library"))return A7;return null},VdQ=async()=>{if(O1!==void 0)return O1;O1=null;try{let A=await pJA(c2);O1=tJA(A)}catch(A){}return O1},IdQ=()=>{if(O1!==void 0)return O1;O1=null;try{let A=iJA(c2);O1=tJA(A)}catch(A){}return O1},eJA=async()=>{let A=null;if(d4()){if(A=await VdQ(),!A)A=aJA();if(!A){let Q=await nJA();A=oJA(Q)}}return A},A9A=()=>{let A=null;if(d4()){if(A=IdQ(),!A)A=aJA();if(!A){let Q=sJA();A=oJA(Q)}}return A},HdQ=async()=>d4()&&await eJA()!==A7,DdQ=()=>d4()&&A9A()!==A7,NdQ=async()=>{if(P1!==void 0)return P1;P1=null;try{let Q=(await pJA(c2)).match(rJA);if(Q)P1=Q[1]}catch(A){}return P1},LdQ=()=>{if(P1!==void 0)return P1;P1=null;try{let Q=iJA(c2).match(rJA);if(Q)P1=Q[1]}catch(A){}return P1},Q9A=()=>{let A=lJA();if(A.header&&A.header.glibcVersionRuntime)return A.header.glibcVersionRuntime;return null},dJA=(A)=>A.trim().split(/\s+/)[1],B9A=(A)=>{let[Q,B,Y]=A.split(/[\r\n]+/);if(Q&&Q.includes(A7))return dJA(Q);if(B&&Y&&B.includes(u4))return dJA(Y);return null},qdQ=async()=>{let A=null;if(d4()){if(A=await NdQ(),!A)A=Q9A();if(!A){let Q=await nJA();A=B9A(Q)}}return A},MdQ=()=>{let A=null;if(d4()){if(A=LdQ(),!A)A=Q9A();if(!A){let Q=sJA();A=B9A(Q)}}return A};Y9A.exports={GLIBC:A7,MUSL:u4,family:eJA,familySync:A9A,isNonGlibcLinux:HdQ,isNonGlibcLinuxSync:DdQ,version:qdQ,versionSync:MdQ}});var cI=R((U1Y,J9A)=>{var zdQ=typeof process==="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...A)=>console.error("SEMVER",...A):()=>{};J9A.exports=zdQ});var l2=R((E1Y,C9A)=>{var RdQ=Number.MAX_SAFE_INTEGER||9007199254740991,wdQ=["major","premajor","minor","preminor","patch","prepatch","prerelease"];C9A.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:16,MAX_SAFE_BUILD_LENGTH:250,MAX_SAFE_INTEGER:RdQ,RELEASE_TYPES:wdQ,SEMVER_SPEC_VERSION:"2.0.0",FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var lI=R((T1,X9A)=>{var{MAX_SAFE_COMPONENT_LENGTH:Oh,MAX_SAFE_BUILD_LENGTH:jdQ,MAX_LENGTH:OdQ}=l2(),PdQ=cI();T1=X9A.exports={};var TdQ=T1.re=[],SdQ=T1.safeRe=[],dA=T1.src=[],kdQ=T1.safeSrc=[],cA=T1.t={},_dQ=0,Ph="[a-zA-Z0-9-]",vdQ=[["\\s",1],["\\d",OdQ],[Ph,jdQ]],ydQ=(A)=>{for(let[Q,B]of vdQ)A=A.split(`${Q}*`).join(`${Q}{0,${B}}`).split(`${Q}+`).join(`${Q}{1,${B}}`);return A},uQ=(A,Q,B)=>{let Y=ydQ(Q),J=_dQ++;PdQ(A,J,Q),cA[A]=J,dA[J]=Q,kdQ[J]=Y,TdQ[J]=new RegExp(Q,B?"g":void 0),SdQ[J]=new RegExp(Y,B?"g":void 0)};uQ("NUMERICIDENTIFIER","0|[1-9]\\d*");uQ("NUMERICIDENTIFIERLOOSE","\\d+");uQ("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${Ph}*`);uQ("MAINVERSION",`(${dA[cA.NUMERICIDENTIFIER]})\\.(${dA[cA.NUMERICIDENTIFIER]})\\.(${dA[cA.NUMERICIDENTIFIER]})`);uQ("MAINVERSIONLOOSE",`(${dA[cA.NUMERICIDENTIFIERLOOSE]})\\.(${dA[cA.NUMERICIDENTIFIERLOOSE]})\\.(${dA[cA.NUMERICIDENTIFIERLOOSE]})`);uQ("PRERELEASEIDENTIFIER",`(?:${dA[cA.NONNUMERICIDENTIFIER]}|${dA[cA.NUMERICIDENTIFIER]})`);uQ("PRERELEASEIDENTIFIERLOOSE",`(?:${dA[cA.NONNUMERICIDENTIFIER]}|${dA[cA.NUMERICIDENTIFIERLOOSE]})`);uQ("PRERELEASE",`(?:-(${dA[cA.PRERELEASEIDENTIFIER]}(?:\\.${dA[cA.PRERELEASEIDENTIFIER]})*))`);uQ("PRERELEASELOOSE",`(?:-?(${dA[cA.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${dA[cA.PRERELEASEIDENTIFIERLOOSE]})*))`);uQ("BUILDIDENTIFIER",`${Ph}+`);uQ("BUILD",`(?:\\+(${dA[cA.BUILDIDENTIFIER]}(?:\\.${dA[cA.BUILDIDENTIFIER]})*))`);uQ("FULLPLAIN",`v?${dA[cA.MAINVERSION]}${dA[cA.PRERELEASE]}?${dA[cA.BUILD]}?`);uQ("FULL",`^${dA[cA.FULLPLAIN]}$`);uQ("LOOSEPLAIN",`[v=\\s]*${dA[cA.MAINVERSIONLOOSE]}${dA[cA.PRERELEASELOOSE]}?${dA[cA.BUILD]}?`);uQ("LOOSE",`^${dA[cA.LOOSEPLAIN]}$`);uQ("GTLT","((?:<|>)?=?)");uQ("XRANGEIDENTIFIERLOOSE",`${dA[cA.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);uQ("XRANGEIDENTIFIER",`${dA[cA.NUMERICIDENTIFIER]}|x|X|\\*`);uQ("XRANGEPLAIN",`[v=\\s]*(${dA[cA.XRANGEIDENTIFIER]})(?:\\.(${dA[cA.XRANGEIDENTIFIER]})(?:\\.(${dA[cA.XRANGEIDENTIFIER]})(?:${dA[cA.PRERELEASE]})?${dA[cA.BUILD]}?)?)?`);uQ("XRANGEPLAINLOOSE",`[v=\\s]*(${dA[cA.XRANGEIDENTIFIERLOOSE]})(?:\\.(${dA[cA.XRANGEIDENTIFIERLOOSE]})(?:\\.(${dA[cA.XRANGEIDENTIFIERLOOSE]})(?:${dA[cA.PRERELEASELOOSE]})?${dA[cA.BUILD]}?)?)?`);uQ("XRANGE",`^${dA[cA.GTLT]}\\s*${dA[cA.XRANGEPLAIN]}$`);uQ("XRANGELOOSE",`^${dA[cA.GTLT]}\\s*${dA[cA.XRANGEPLAINLOOSE]}$`);uQ("COERCEPLAIN",`(^|[^\\d])(\\d{1,${Oh}})(?:\\.(\\d{1,${Oh}}))?(?:\\.(\\d{1,${Oh}}))?`);uQ("COERCE",`${dA[cA.COERCEPLAIN]}(?:$|[^\\d])`);uQ("COERCEFULL",dA[cA.COERCEPLAIN]+`(?:${dA[cA.PRERELEASE]})?(?:${dA[cA.BUILD]})?(?:$|[^\\d])`);uQ("COERCERTL",dA[cA.COERCE],!0);uQ("COERCERTLFULL",dA[cA.COERCEFULL],!0);uQ("LONETILDE","(?:~>?)");uQ("TILDETRIM",`(\\s*)${dA[cA.LONETILDE]}\\s+`,!0);T1.tildeTrimReplace="$1~";uQ("TILDE",`^${dA[cA.LONETILDE]}${dA[cA.XRANGEPLAIN]}$`);uQ("TILDELOOSE",`^${dA[cA.LONETILDE]}${dA[cA.XRANGEPLAINLOOSE]}$`);uQ("LONECARET","(?:\\^)");uQ("CARETTRIM",`(\\s*)${dA[cA.LONECARET]}\\s+`,!0);T1.caretTrimReplace="$1^";uQ("CARET",`^${dA[cA.LONECARET]}${dA[cA.XRANGEPLAIN]}$`);uQ("CARETLOOSE",`^${dA[cA.LONECARET]}${dA[cA.XRANGEPLAINLOOSE]}$`);uQ("COMPARATORLOOSE",`^${dA[cA.GTLT]}\\s*(${dA[cA.LOOSEPLAIN]})$|^$`);uQ("COMPARATOR",`^${dA[cA.GTLT]}\\s*(${dA[cA.FULLPLAIN]})$|^$`);uQ("COMPARATORTRIM",`(\\s*)${dA[cA.GTLT]}\\s*(${dA[cA.LOOSEPLAIN]}|${dA[cA.XRANGEPLAIN]})`,!0);T1.comparatorTrimReplace="$1$2$3";uQ("HYPHENRANGE",`^\\s*(${dA[cA.XRANGEPLAIN]})\\s+-\\s+(${dA[cA.XRANGEPLAIN]})\\s*$`);uQ("HYPHENRANGELOOSE",`^\\s*(${dA[cA.XRANGEPLAINLOOSE]})\\s+-\\s+(${dA[cA.XRANGEPLAINLOOSE]})\\s*$`);uQ("STAR","(<|>)?=?\\s*\\*");uQ("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");uQ("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var p2=R((K1Y,G9A)=>{var hdQ=Object.freeze({loose:!0}),gdQ=Object.freeze({}),xdQ=(A)=>{if(!A)return gdQ;if(typeof A!=="object")return hdQ;return A};G9A.exports=xdQ});var $9A=R((V1Y,Z9A)=>{var F9A=/^[0-9]+$/,W9A=(A,Q)=>{let B=F9A.test(A),Y=F9A.test(Q);if(B&&Y)A=+A,Q=+Q;return A===Q?0:B&&!Y?-1:Y&&!B?1:AW9A(Q,A);Z9A.exports={compareIdentifiers:W9A,rcompareIdentifiers:fdQ}});var l4=R((I1Y,E9A)=>{var i2=cI(),{MAX_LENGTH:U9A,MAX_SAFE_INTEGER:n2}=l2(),{safeRe:s2,t:r2}=lI(),bdQ=p2(),{compareIdentifiers:c4}=$9A();class NC{constructor(A,Q){if(Q=bdQ(Q),A instanceof NC)if(A.loose===!!Q.loose&&A.includePrerelease===!!Q.includePrerelease)return A;else A=A.version;else if(typeof A!=="string")throw TypeError(`Invalid version. Must be a string. Got type "${typeof A}".`);if(A.length>U9A)throw TypeError(`version is longer than ${U9A} characters`);i2("SemVer",A,Q),this.options=Q,this.loose=!!Q.loose,this.includePrerelease=!!Q.includePrerelease;let B=A.trim().match(Q.loose?s2[r2.LOOSE]:s2[r2.FULL]);if(!B)throw TypeError(`Invalid Version: ${A}`);if(this.raw=A,this.major=+B[1],this.minor=+B[2],this.patch=+B[3],this.major>n2||this.major<0)throw TypeError("Invalid major version");if(this.minor>n2||this.minor<0)throw TypeError("Invalid minor version");if(this.patch>n2||this.patch<0)throw TypeError("Invalid patch version");if(!B[4])this.prerelease=[];else this.prerelease=B[4].split(".").map((Y)=>{if(/^[0-9]+$/.test(Y)){let J=+Y;if(J>=0&&J=0)if(typeof this.prerelease[J]==="number")this.prerelease[J]++,J=-2;if(J===-1){if(Q===this.prerelease.join(".")&&B===!1)throw Error("invalid increment argument: identifier already exists");this.prerelease.push(Y)}}if(Q){let J=[Q,Y];if(B===!1)J=[Q];if(c4(this.prerelease[0],Q)===0){if(isNaN(this.prerelease[1]))this.prerelease=J}else this.prerelease=J}break}default:throw Error(`invalid increment argument: ${A}`)}if(this.raw=this.format(),this.build.length)this.raw+=`+${this.build.join(".")}`;return this}}E9A.exports=NC});var I9A=R((H1Y,V9A)=>{var K9A=l4(),mdQ=(A,Q,B=!1)=>{if(A instanceof K9A)return A;try{return new K9A(A,Q)}catch(Y){if(!B)return null;throw Y}};V9A.exports=mdQ});var D9A=R((D1Y,H9A)=>{var udQ=l4(),ddQ=I9A(),{safeRe:a2,t:o2}=lI(),cdQ=(A,Q)=>{if(A instanceof udQ)return A;if(typeof A==="number")A=String(A);if(typeof A!=="string")return null;Q=Q||{};let B=null;if(!Q.rtl)B=A.match(Q.includePrerelease?a2[o2.COERCEFULL]:a2[o2.COERCE]);else{let F=Q.includePrerelease?a2[o2.COERCERTLFULL]:a2[o2.COERCERTL],W;while((W=F.exec(A))&&(!B||B.index+B[0].length!==A.length)){if(!B||W.index+W[0].length!==B.index+B[0].length)B=W;F.lastIndex=W.index+W[1].length+W[2].length}F.lastIndex=-1}if(B===null)return null;let Y=B[2],J=B[3]||"0",C=B[4]||"0",X=Q.includePrerelease&&B[5]?`-${B[5]}`:"",G=Q.includePrerelease&&B[6]?`+${B[6]}`:"";return ddQ(`${Y}.${J}.${C}${X}${G}`,Q)};H9A.exports=cdQ});var vW=R((N1Y,L9A)=>{var N9A=l4(),ldQ=(A,Q,B)=>new N9A(A,B).compare(new N9A(Q,B));L9A.exports=ldQ});var Th=R((L1Y,q9A)=>{var pdQ=vW(),idQ=(A,Q,B)=>pdQ(A,Q,B)>=0;q9A.exports=idQ});var R9A=R((q1Y,z9A)=>{class M9A{constructor(){this.max=1000,this.map=new Map}get(A){let Q=this.map.get(A);if(Q===void 0)return;else return this.map.delete(A),this.map.set(A,Q),Q}delete(A){return this.map.delete(A)}set(A,Q){if(!this.delete(A)&&Q!==void 0){if(this.map.size>=this.max){let Y=this.map.keys().next().value;this.delete(Y)}this.map.set(A,Q)}return this}}z9A.exports=M9A});var j9A=R((M1Y,w9A)=>{var ndQ=vW(),sdQ=(A,Q,B)=>ndQ(A,Q,B)===0;w9A.exports=sdQ});var P9A=R((z1Y,O9A)=>{var rdQ=vW(),adQ=(A,Q,B)=>rdQ(A,Q,B)!==0;O9A.exports=adQ});var S9A=R((R1Y,T9A)=>{var odQ=vW(),tdQ=(A,Q,B)=>odQ(A,Q,B)>0;T9A.exports=tdQ});var _9A=R((w1Y,k9A)=>{var edQ=vW(),AcQ=(A,Q,B)=>edQ(A,Q,B)<0;k9A.exports=AcQ});var y9A=R((j1Y,v9A)=>{var QcQ=vW(),BcQ=(A,Q,B)=>QcQ(A,Q,B)<=0;v9A.exports=BcQ});var g9A=R((O1Y,h9A)=>{var YcQ=j9A(),JcQ=P9A(),CcQ=S9A(),XcQ=Th(),GcQ=_9A(),FcQ=y9A(),WcQ=(A,Q,B,Y)=>{switch(Q){case"===":if(typeof A==="object")A=A.version;if(typeof B==="object")B=B.version;return A===B;case"!==":if(typeof A==="object")A=A.version;if(typeof B==="object")B=B.version;return A!==B;case"":case"=":case"==":return YcQ(A,B,Y);case"!=":return JcQ(A,B,Y);case">":return CcQ(A,B,Y);case">=":return XcQ(A,B,Y);case"<":return GcQ(A,B,Y);case"<=":return FcQ(A,B,Y);default:throw TypeError(`Invalid operator: ${Q}`)}};h9A.exports=WcQ});var c9A=R((P1Y,d9A)=>{var pI=Symbol("SemVer ANY");class t2{static get ANY(){return pI}constructor(A,Q){if(Q=x9A(Q),A instanceof t2)if(A.loose===!!Q.loose)return A;else A=A.value;if(A=A.trim().split(/\s+/).join(" "),kh("comparator",A,Q),this.options=Q,this.loose=!!Q.loose,this.parse(A),this.semver===pI)this.value="";else this.value=this.operator+this.semver.version;kh("comp",this)}parse(A){let Q=this.options.loose?f9A[b9A.COMPARATORLOOSE]:f9A[b9A.COMPARATOR],B=A.match(Q);if(!B)throw TypeError(`Invalid comparator: ${A}`);if(this.operator=B[1]!==void 0?B[1]:"",this.operator==="=")this.operator="";if(!B[2])this.semver=pI;else this.semver=new m9A(B[2],this.options.loose)}toString(){return this.value}test(A){if(kh("Comparator.test",A,this.options.loose),this.semver===pI||A===pI)return!0;if(typeof A==="string")try{A=new m9A(A,this.options)}catch(Q){return!1}return Sh(A,this.operator,this.semver,this.options)}intersects(A,Q){if(!(A instanceof t2))throw TypeError("a Comparator is required");if(this.operator===""){if(this.value==="")return!0;return new u9A(A.value,Q).test(this.value)}else if(A.operator===""){if(A.value==="")return!0;return new u9A(this.value,Q).test(A.semver)}if(Q=x9A(Q),Q.includePrerelease&&(this.value==="<0.0.0-0"||A.value==="<0.0.0-0"))return!1;if(!Q.includePrerelease&&(this.value.startsWith("<0.0.0")||A.value.startsWith("<0.0.0")))return!1;if(this.operator.startsWith(">")&&A.operator.startsWith(">"))return!0;if(this.operator.startsWith("<")&&A.operator.startsWith("<"))return!0;if(this.semver.version===A.semver.version&&this.operator.includes("=")&&A.operator.includes("="))return!0;if(Sh(this.semver,"<",A.semver,Q)&&this.operator.startsWith(">")&&A.operator.startsWith("<"))return!0;if(Sh(this.semver,">",A.semver,Q)&&this.operator.startsWith("<")&&A.operator.startsWith(">"))return!0;return!1}}d9A.exports=t2;var x9A=p2(),{safeRe:f9A,t:b9A}=lI(),Sh=g9A(),kh=cI(),m9A=l4(),u9A=_h()});var _h=R((T1Y,n9A)=>{var ZcQ=/\s+/g;class iI{constructor(A,Q){if(Q=UcQ(Q),A instanceof iI)if(A.loose===!!Q.loose&&A.includePrerelease===!!Q.includePrerelease)return A;else return new iI(A.raw,Q);if(A instanceof vh)return this.raw=A.value,this.set=[[A]],this.formatted=void 0,this;if(this.options=Q,this.loose=!!Q.loose,this.includePrerelease=!!Q.includePrerelease,this.raw=A.trim().replace(ZcQ," "),this.set=this.raw.split("||").map((B)=>this.parseRange(B.trim())).filter((B)=>B.length),!this.set.length)throw TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let B=this.set[0];if(this.set=this.set.filter((Y)=>!p9A(Y[0])),this.set.length===0)this.set=[B];else if(this.set.length>1){for(let Y of this.set)if(Y.length===1&&NcQ(Y[0])){this.set=[Y];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let A=0;A0)this.formatted+="||";let Q=this.set[A];for(let B=0;B0)this.formatted+=" ";this.formatted+=Q[B].toString().trim()}}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(A){let B=((this.options.includePrerelease&&HcQ)|(this.options.loose&&DcQ))+":"+A,Y=l9A.get(B);if(Y)return Y;let J=this.options.loose,C=J?j9[iJ.HYPHENRANGELOOSE]:j9[iJ.HYPHENRANGE];A=A.replace(C,TcQ(this.options.includePrerelease)),F0("hyphen replace",A),A=A.replace(j9[iJ.COMPARATORTRIM],KcQ),F0("comparator trim",A),A=A.replace(j9[iJ.TILDETRIM],VcQ),F0("tilde trim",A),A=A.replace(j9[iJ.CARETTRIM],IcQ),F0("caret trim",A);let X=A.split(" ").map((Z)=>LcQ(Z,this.options)).join(" ").split(/\s+/).map((Z)=>PcQ(Z,this.options));if(J)X=X.filter((Z)=>{return F0("loose invalid filter",Z,this.options),!!Z.match(j9[iJ.COMPARATORLOOSE])});F0("range list",X);let G=new Map,F=X.map((Z)=>new vh(Z,this.options));for(let Z of F){if(p9A(Z))return[Z];G.set(Z.value,Z)}if(G.size>1&&G.has(""))G.delete("");let W=[...G.values()];return l9A.set(B,W),W}intersects(A,Q){if(!(A instanceof iI))throw TypeError("a Range is required");return this.set.some((B)=>{return i9A(B,Q)&&A.set.some((Y)=>{return i9A(Y,Q)&&B.every((J)=>{return Y.every((C)=>{return J.intersects(C,Q)})})})})}test(A){if(!A)return!1;if(typeof A==="string")try{A=new EcQ(A,this.options)}catch(Q){return!1}for(let Q=0;QA.value==="<0.0.0-0",NcQ=(A)=>A.value==="",i9A=(A,Q)=>{let B=!0,Y=A.slice(),J=Y.pop();while(B&&Y.length)B=Y.every((C)=>{return J.intersects(C,Q)}),J=Y.pop();return B},LcQ=(A,Q)=>{return F0("comp",A,Q),A=zcQ(A,Q),F0("caret",A),A=qcQ(A,Q),F0("tildes",A),A=wcQ(A,Q),F0("xrange",A),A=OcQ(A,Q),F0("stars",A),A},nJ=(A)=>!A||A.toLowerCase()==="x"||A==="*",qcQ=(A,Q)=>{return A.trim().split(/\s+/).map((B)=>McQ(B,Q)).join(" ")},McQ=(A,Q)=>{let B=Q.loose?j9[iJ.TILDELOOSE]:j9[iJ.TILDE];return A.replace(B,(Y,J,C,X,G)=>{F0("tilde",A,Y,J,C,X,G);let F;if(nJ(J))F="";else if(nJ(C))F=`>=${J}.0.0 <${+J+1}.0.0-0`;else if(nJ(X))F=`>=${J}.${C}.0 <${J}.${+C+1}.0-0`;else if(G)F0("replaceTilde pr",G),F=`>=${J}.${C}.${X}-${G} <${J}.${+C+1}.0-0`;else F=`>=${J}.${C}.${X} <${J}.${+C+1}.0-0`;return F0("tilde return",F),F})},zcQ=(A,Q)=>{return A.trim().split(/\s+/).map((B)=>RcQ(B,Q)).join(" ")},RcQ=(A,Q)=>{F0("caret",A,Q);let B=Q.loose?j9[iJ.CARETLOOSE]:j9[iJ.CARET],Y=Q.includePrerelease?"-0":"";return A.replace(B,(J,C,X,G,F)=>{F0("caret",A,J,C,X,G,F);let W;if(nJ(C))W="";else if(nJ(X))W=`>=${C}.0.0${Y} <${+C+1}.0.0-0`;else if(nJ(G))if(C==="0")W=`>=${C}.${X}.0${Y} <${C}.${+X+1}.0-0`;else W=`>=${C}.${X}.0${Y} <${+C+1}.0.0-0`;else if(F)if(F0("replaceCaret pr",F),C==="0")if(X==="0")W=`>=${C}.${X}.${G}-${F} <${C}.${X}.${+G+1}-0`;else W=`>=${C}.${X}.${G}-${F} <${C}.${+X+1}.0-0`;else W=`>=${C}.${X}.${G}-${F} <${+C+1}.0.0-0`;else if(F0("no pr"),C==="0")if(X==="0")W=`>=${C}.${X}.${G}${Y} <${C}.${X}.${+G+1}-0`;else W=`>=${C}.${X}.${G}${Y} <${C}.${+X+1}.0-0`;else W=`>=${C}.${X}.${G} <${+C+1}.0.0-0`;return F0("caret return",W),W})},wcQ=(A,Q)=>{return F0("replaceXRanges",A,Q),A.split(/\s+/).map((B)=>jcQ(B,Q)).join(" ")},jcQ=(A,Q)=>{A=A.trim();let B=Q.loose?j9[iJ.XRANGELOOSE]:j9[iJ.XRANGE];return A.replace(B,(Y,J,C,X,G,F)=>{F0("xRange",A,Y,J,C,X,G,F);let W=nJ(C),Z=W||nJ(X),U=Z||nJ(G),$=U;if(J==="="&&$)J="";if(F=Q.includePrerelease?"-0":"",W)if(J===">"||J==="<")Y="<0.0.0-0";else Y="*";else if(J&&$){if(Z)X=0;if(G=0,J===">")if(J=">=",Z)C=+C+1,X=0,G=0;else X=+X+1,G=0;else if(J==="<=")if(J="<",Z)C=+C+1;else X=+X+1;if(J==="<")F="-0";Y=`${J+C}.${X}.${G}${F}`}else if(Z)Y=`>=${C}.0.0${F} <${+C+1}.0.0-0`;else if(U)Y=`>=${C}.${X}.0${F} <${C}.${+X+1}.0-0`;return F0("xRange return",Y),Y})},OcQ=(A,Q)=>{return F0("replaceStars",A,Q),A.trim().replace(j9[iJ.STAR],"")},PcQ=(A,Q)=>{return F0("replaceGTE0",A,Q),A.trim().replace(j9[Q.includePrerelease?iJ.GTE0PRE:iJ.GTE0],"")},TcQ=(A)=>(Q,B,Y,J,C,X,G,F,W,Z,U,$)=>{if(nJ(Y))B="";else if(nJ(J))B=`>=${Y}.0.0${A?"-0":""}`;else if(nJ(C))B=`>=${Y}.${J}.0${A?"-0":""}`;else if(X)B=`>=${B}`;else B=`>=${B}${A?"-0":""}`;if(nJ(W))F="";else if(nJ(Z))F=`<${+W+1}.0.0-0`;else if(nJ(U))F=`<${W}.${+Z+1}.0-0`;else if($)F=`<=${W}.${Z}.${U}-${$}`;else if(A)F=`<${W}.${Z}.${+U+1}-0`;else F=`<=${F}`;return`${B} ${F}`.trim()},ScQ=(A,Q,B)=>{for(let Y=0;Y0){let J=A[Y].semver;if(J.major===Q.major&&J.minor===Q.minor&&J.patch===Q.patch)return!0}}return!1}return!0}});var r9A=R((S1Y,s9A)=>{var kcQ=_h(),_cQ=(A,Q,B)=>{try{Q=new kcQ(Q,B)}catch(Y){return!1}return Q.test(A)};s9A.exports=_cQ});var yh=R((k1Y,vcQ)=>{vcQ.exports={name:"sharp",description:"High performance Node.js image processing, the fastest module to resize JPEG, PNG, WebP, GIF, AVIF and TIFF images",version:"0.34.3",author:"Lovell Fuller ",homepage:"https://sharp.pixelplumbing.com",contributors:["Pierre Inglebert ","Jonathan Ong ","Chanon Sajjamanochai ","Juliano Julio ","Daniel Gasienica ","Julian Walker ","Amit Pitaru ","Brandon Aaron ","Andreas Lind ","Maurus Cuelenaere ","Linus Unnebäck ","Victor Mateevitsi ","Alaric Holloway ","Bernhard K. Weisshuhn ","Chris Riley ","David Carley ","John Tobin ","Kenton Gray ","Felix Bünemann ","Samy Al Zahrani ","Chintan Thakkar ","F. Orlando Galashan ","Kleis Auke Wolthuizen ","Matt Hirsch ","Matthias Thoemmes ","Patrick Paskaris ","Jérémy Lal ","Rahul Nanwani ","Alice Monday ","Kristo Jorgenson ","YvesBos ","Guy Maliar ","Nicolas Coden ","Matt Parrish ","Marcel Bretschneider ","Matthew McEachen ","Jarda Kotěšovec ","Kenric D'Souza ","Oleh Aleinyk ","Marcel Bretschneider ","Andrea Bianco ","Rik Heywood ","Thomas Parisot ","Nathan Graves ","Tom Lokhorst ","Espen Hovlandsdal ","Sylvain Dumont ","Alun Davies ","Aidan Hoolachan ","Axel Eirola ","Freezy ","Daiz ","Julian Aubourg ","Keith Belovay ","Michael B. Klein ","Jordan Prudhomme ","Ilya Ovdin ","Andargor ","Paul Neave ","Brendan Kennedy ","Brychan Bennett-Odlum ","Edward Silverton ","Roman Malieiev ","Tomas Szabo ","Robert O'Rourke ","Guillermo Alfonso Varela Chouciño ","Christian Flintrup ","Manan Jadhav ","Leon Radley ","alza54 ","Jacob Smith ","Michael Nutt ","Brad Parham ","Taneli Vatanen ","Joris Dugué ","Chris Banks ","Ompal Singh ","Brodan ","Ankur Parihar ","Brahim Ait elhaj ","Mart Jansink ","Lachlan Newman ","Dennis Beatty ","Ingvar Stepanyan ","Don Denton "],scripts:{install:"node install/check.js",clean:"rm -rf src/build/ .nyc_output/ coverage/ test/fixtures/output.*",test:"npm run test-lint && npm run test-unit && npm run test-licensing && npm run test-types","test-lint":"semistandard && cpplint","test-unit":"nyc --reporter=lcov --reporter=text --check-coverage --branches=100 mocha","test-licensing":'license-checker --production --summary --onlyAllow="Apache-2.0;BSD;ISC;LGPL-3.0-or-later;MIT"',"test-leak":"./test/leak/leak.sh","test-types":"tsd","package-from-local-build":"node npm/from-local-build.js","docs-build":"node docs/build.mjs","docs-serve":"cd docs && npm start","docs-publish":"cd docs && npm run build && npx firebase-tools deploy --project pixelplumbing --only hosting:pixelplumbing-sharp"},type:"commonjs",main:"lib/index.js",types:"lib/index.d.ts",files:["install","lib","src/*.{cc,h,gyp}"],repository:{type:"git",url:"git://github.com/lovell/sharp.git"},keywords:["jpeg","png","webp","avif","tiff","gif","svg","jp2","dzi","image","resize","thumbnail","crop","embed","libvips","vips"],dependencies:{color:"^4.2.3","detect-libc":"^2.0.4",semver:"^7.7.2"},optionalDependencies:{"@img/sharp-darwin-arm64":"0.34.3","@img/sharp-darwin-x64":"0.34.3","@img/sharp-libvips-darwin-arm64":"1.2.0","@img/sharp-libvips-darwin-x64":"1.2.0","@img/sharp-libvips-linux-arm":"1.2.0","@img/sharp-libvips-linux-arm64":"1.2.0","@img/sharp-libvips-linux-ppc64":"1.2.0","@img/sharp-libvips-linux-s390x":"1.2.0","@img/sharp-libvips-linux-x64":"1.2.0","@img/sharp-libvips-linuxmusl-arm64":"1.2.0","@img/sharp-libvips-linuxmusl-x64":"1.2.0","@img/sharp-linux-arm":"0.34.3","@img/sharp-linux-arm64":"0.34.3","@img/sharp-linux-ppc64":"0.34.3","@img/sharp-linux-s390x":"0.34.3","@img/sharp-linux-x64":"0.34.3","@img/sharp-linuxmusl-arm64":"0.34.3","@img/sharp-linuxmusl-x64":"0.34.3","@img/sharp-wasm32":"0.34.3","@img/sharp-win32-arm64":"0.34.3","@img/sharp-win32-ia32":"0.34.3","@img/sharp-win32-x64":"0.34.3"},devDependencies:{"@emnapi/runtime":"^1.4.4","@img/sharp-libvips-dev":"1.2.0","@img/sharp-libvips-dev-wasm32":"1.2.0","@img/sharp-libvips-win32-arm64":"1.2.0","@img/sharp-libvips-win32-ia32":"1.2.0","@img/sharp-libvips-win32-x64":"1.2.0","@types/node":"*",cc:"^3.0.1",emnapi:"^1.4.4","exif-reader":"^2.0.2","extract-zip":"^2.0.1",icc:"^3.0.0","jsdoc-to-markdown":"^9.1.1","license-checker":"^25.0.1",mocha:"^11.7.1","node-addon-api":"^8.4.0","node-gyp":"^11.2.0",nyc:"^17.1.0",semistandard:"^17.0.0","tar-fs":"^3.1.0",tsd:"^0.32.0"},license:"Apache-2.0",engines:{node:"^18.17.0 || ^20.3.0 || >=21.0.0"},config:{libvips:">=8.17.1"},funding:{url:"https://opencollective.com/libvips"},semistandard:{env:["mocha"]},cc:{linelength:"120",filter:["build/include"]},nyc:{include:["lib"]},tsd:{directory:"test/types/"}}});var gh=R((_1Y,C8A)=>{var{spawnSync:e2}=u("node:child_process"),{createHash:ycQ}=u("node:crypto"),e9A=D9A(),hcQ=Th(),gcQ=r9A(),a9A=dI(),{config:xcQ,engines:o9A,optionalDependencies:fcQ}=yh(),bcQ=process.env.npm_package_config_libvips||xcQ.libvips,A8A=e9A(bcQ).version,mcQ=["darwin-arm64","darwin-x64","linux-arm","linux-arm64","linux-ppc64","linux-s390x","linux-x64","linuxmusl-arm64","linuxmusl-x64","win32-arm64","win32-ia32","win32-x64"],A3={encoding:"utf8",shell:!0},ucQ=(A)=>{if(A instanceof Error)console.error(`sharp: Installation error: ${A.message}`);else console.log(`sharp: ${A}`)},Q8A=()=>a9A.isNonGlibcLinuxSync()?a9A.familySync():"",dcQ=()=>`${process.platform}${Q8A()}-${process.arch}`,p4=()=>{if(B8A())return"wasm32";let{npm_config_arch:A,npm_config_platform:Q,npm_config_libc:B}=process.env,Y=typeof B==="string"?B:Q8A();return`${Q||process.platform}${Y}-${A||process.arch}`},ccQ=()=>{try{return u(`@img/sharp-libvips-dev-${p4()}/include`)}catch{try{return (()=>{throw new Error("Cannot require module "+"@img/sharp-libvips-dev/include");})()}catch{}}return""},lcQ=()=>{try{return (()=>{throw new Error("Cannot require module "+"@img/sharp-libvips-dev/cplusplus");})()}catch{}return""},pcQ=()=>{try{return u(`@img/sharp-libvips-dev-${p4()}/lib`)}catch{try{return u(`@img/sharp-libvips-${p4()}/lib`)}catch{}}return""},icQ=()=>{if(process.release?.name==="node"&&process.versions){if(!gcQ(process.versions.node,o9A.node))return{found:process.versions.node,expected:o9A.node}}},B8A=()=>{let{CC:A}=process.env;return Boolean(A&&A.endsWith("/emcc"))},ncQ=()=>{if(process.platform==="darwin"&&process.arch==="x64")return(e2("sysctl sysctl.proc_translated",A3).stdout||"").trim()==="sysctl.proc_translated: 1";return!1},t9A=(A)=>ycQ("sha512").update(A).digest("hex"),scQ=()=>{try{let A=t9A(`imgsharp-libvips-${p4()}`),Q=e9A(fcQ[`@img/sharp-libvips-${p4()}`],{includePrerelease:!0}).version;return t9A(`${A}npm:${Q}`).slice(0,10)}catch{}return""},rcQ=()=>e2(`node-gyp rebuild --directory=src ${B8A()?"--nodedir=emscripten":""}`,{...A3,stdio:"inherit"}).status,Y8A=()=>{if(process.platform!=="win32")return(e2("pkg-config --modversion vips-cpp",{...A3,env:{...process.env,PKG_CONFIG_PATH:J8A()}}).stdout||"").trim();else return""},J8A=()=>{if(process.platform!=="win32")return[(e2('which brew >/dev/null 2>&1 && brew environment --plain | grep PKG_CONFIG_LIBDIR | cut -d" " -f2',A3).stdout||"").trim(),process.env.PKG_CONFIG_PATH,"/usr/local/lib/pkgconfig","/usr/lib/pkgconfig","/usr/local/libdata/pkgconfig","/usr/libdata/pkgconfig"].filter(Boolean).join(":");else return""},hh=(A,Q,B)=>{if(B)B(`Detected ${Q}, skipping search for globally-installed libvips`);return A},acQ=(A)=>{if(Boolean(process.env.SHARP_IGNORE_GLOBAL_LIBVIPS)===!0)return hh(!1,"SHARP_IGNORE_GLOBAL_LIBVIPS",A);if(Boolean(process.env.SHARP_FORCE_GLOBAL_LIBVIPS)===!0)return hh(!0,"SHARP_FORCE_GLOBAL_LIBVIPS",A);if(ncQ())return hh(!1,"Rosetta",A);let Q=Y8A();return!!Q&&hcQ(Q,A8A)};C8A.exports={minimumLibvipsVersion:A8A,prebuiltPlatforms:mcQ,buildPlatformArch:p4,buildSharpLibvipsIncludeDir:ccQ,buildSharpLibvipsCPlusPlusDir:lcQ,buildSharpLibvipsLibDir:pcQ,isUnsupportedNodeRuntime:icQ,runtimePlatformArch:dcQ,log:ucQ,yarnLocator:scQ,spawnRebuild:rcQ,globalLibvipsVersion:Y8A,pkgConfigPath:J8A,useGlobalLibvips:acQ}});var sI=R((y1Y,G8A)=>{var{familySync:ocQ,versionSync:tcQ}=dI(),{runtimePlatformArch:ecQ,isUnsupportedNodeRuntime:X8A,prebuiltPlatforms:AlQ,minimumLibvipsVersion:QlQ}=gh(),yW=ecQ(),BlQ=[`../src/build/Release/sharp-${yW}.node`,"../src/build/Release/sharp-wasm32.node",`@img/sharp-${yW}/sharp.node`,"@img/sharp-wasm32/sharp.node"],xh,i4,nI=[];for(xh of BlQ)try{i4=u(xh);break}catch(A){nI.push(A)}if(i4&&xh.startsWith("@img/sharp-linux-x64")&&!i4._isUsingX64V2()){let A=Error("Prebuilt binaries for linux-x64 require v2 microarchitecture");A.code="Unsupported CPU",nI.push(A),i4=null}if(i4)G8A.exports=i4;else{let[A,Q,B]=["linux","darwin","win32"].map((C)=>yW.startsWith(C)),Y=[`Could not load the "sharp" module using the ${yW} runtime`];nI.forEach((C)=>{if(C.code!=="MODULE_NOT_FOUND")Y.push(`${C.code}: ${C.message}`)});let J=nI.map((C)=>C.message).join(" ");if(Y.push("Possible solutions:"),X8A()){let{found:C,expected:X}=X8A();Y.push("- Please upgrade Node.js:",` Found ${C}`,` Requires ${X}`)}else if(AlQ.includes(yW)){let[C,X]=yW.split("-"),G=C.endsWith("musl")?" --libc=musl":"";Y.push("- Ensure optional dependencies can be installed:"," npm install --include=optional sharp","- Ensure your package manager supports multi-platform installation:"," See https://sharp.pixelplumbing.com/install#cross-platform","- Add platform-specific dependencies:",` npm install --os=${C.replace("musl","")}${G} --cpu=${X} sharp`)}else Y.push(`- Manually install libvips >= ${QlQ}`,"- Add experimental WebAssembly-based dependencies:"," npm install --cpu=wasm32 sharp"," npm install @img/sharp-wasm32");if(A&&/(symbol not found|CXXABI_)/i.test(J))try{let{config:C}=u(`@img/sharp-libvips-${yW}/package`),X=`${ocQ()} ${tcQ()}`,G=`${C.musl?"musl":"glibc"} ${C.musl||C.glibc}`;Y.push("- Update your OS:",` Found ${X}`,` Requires ${G}`)}catch(C){}if(A&&/\/snap\/core[0-9]{2}/.test(J))Y.push("- Remove the Node.js Snap, which does not support native modules"," snap remove node");if(Q&&/Incompatible library version/.test(J))Y.push("- Update Homebrew:"," brew update && brew upgrade vips");if(nI.some((C)=>C.code==="ERR_DLOPEN_DISABLED"))Y.push("- Run Node.js without using the --no-addons flag");if(B&&/The specified procedure could not be found/.test(J))Y.push("- Using the canvas package on Windows?"," See https://sharp.pixelplumbing.com/install#canvas-and-windows","- Check for outdated versions of sharp in the dependency tree:"," npm ls sharp");throw Y.push("- Consult the installation documentation:"," See https://sharp.pixelplumbing.com/install"),Error(Y.join(` +`))}});var W8A=R((g1Y,F8A)=>{var YlQ=u("node:util"),fh=u("node:stream"),JlQ=j1();sI();var ClQ=YlQ.debuglog("sharp"),hW=function(A,Q){if(arguments.length===1&&!JlQ.defined(A))throw Error("Invalid input");if(!(this instanceof hW))return new hW(A,Q);return fh.Duplex.call(this),this.options={topOffsetPre:-1,leftOffsetPre:-1,widthPre:-1,heightPre:-1,topOffsetPost:-1,leftOffsetPost:-1,widthPost:-1,heightPost:-1,width:-1,height:-1,canvas:"crop",position:0,resizeBackground:[0,0,0,255],angle:0,rotationAngle:0,rotationBackground:[0,0,0,255],rotateBeforePreExtract:!1,flip:!1,flop:!1,extendTop:0,extendBottom:0,extendLeft:0,extendRight:0,extendBackground:[0,0,0,255],extendWith:"background",withoutEnlargement:!1,withoutReduction:!1,affineMatrix:[],affineBackground:[0,0,0,255],affineIdx:0,affineIdy:0,affineOdx:0,affineOdy:0,affineInterpolator:this.constructor.interpolators.bilinear,kernel:"lanczos3",fastShrinkOnLoad:!0,tint:[-1,0,0,0],flatten:!1,flattenBackground:[0,0,0],unflatten:!1,negate:!1,negateAlpha:!0,medianSize:0,blurSigma:0,precision:"integer",minAmpl:0.2,sharpenSigma:0,sharpenM1:1,sharpenM2:2,sharpenX1:2,sharpenY2:10,sharpenY3:20,threshold:0,thresholdGrayscale:!0,trimBackground:[],trimThreshold:-1,trimLineArt:!1,dilateWidth:0,erodeWidth:0,gamma:0,gammaOut:0,greyscale:!1,normalise:!1,normaliseLower:1,normaliseUpper:99,claheWidth:0,claheHeight:0,claheMaxSlope:3,brightness:1,saturation:1,hue:0,lightness:0,booleanBufferIn:null,booleanFileIn:"",joinChannelIn:[],extractChannel:-1,removeAlpha:!1,ensureAlpha:-1,colourspace:"srgb",colourspacePipeline:"last",composite:[],fileOut:"",formatOut:"input",streamOut:!1,keepMetadata:0,withMetadataOrientation:-1,withMetadataDensity:0,withIccProfile:"",withExif:{},withExifMerge:!0,withXmp:"",resolveWithObject:!1,loop:-1,delay:[],jpegQuality:80,jpegProgressive:!1,jpegChromaSubsampling:"4:2:0",jpegTrellisQuantisation:!1,jpegOvershootDeringing:!1,jpegOptimiseScans:!1,jpegOptimiseCoding:!0,jpegQuantisationTable:0,pngProgressive:!1,pngCompressionLevel:6,pngAdaptiveFiltering:!1,pngPalette:!1,pngQuality:100,pngEffort:7,pngBitdepth:8,pngDither:1,jp2Quality:80,jp2TileHeight:512,jp2TileWidth:512,jp2Lossless:!1,jp2ChromaSubsampling:"4:4:4",webpQuality:80,webpAlphaQuality:100,webpLossless:!1,webpNearLossless:!1,webpSmartSubsample:!1,webpSmartDeblock:!1,webpPreset:"default",webpEffort:4,webpMinSize:!1,webpMixed:!1,gifBitdepth:8,gifEffort:7,gifDither:1,gifInterFrameMaxError:0,gifInterPaletteMaxError:3,gifKeepDuplicateFrames:!1,gifReuse:!0,gifProgressive:!1,tiffQuality:80,tiffCompression:"jpeg",tiffPredictor:"horizontal",tiffPyramid:!1,tiffMiniswhite:!1,tiffBitdepth:8,tiffTile:!1,tiffTileHeight:256,tiffTileWidth:256,tiffXres:1,tiffYres:1,tiffResolutionUnit:"inch",heifQuality:50,heifLossless:!1,heifCompression:"av1",heifEffort:4,heifChromaSubsampling:"4:4:4",heifBitdepth:8,jxlDistance:1,jxlDecodingTier:0,jxlEffort:7,jxlLossless:!1,rawDepth:"uchar",tileSize:256,tileOverlap:0,tileContainer:"fs",tileLayout:"dz",tileFormat:"last",tileDepth:"last",tileAngle:0,tileSkipBlanks:-1,tileBackground:[255,255,255,255],tileCentre:!1,tileId:"https://example.com/iiif",tileBasename:"",timeoutSeconds:0,linearA:[],linearB:[],pdfBackground:[255,255,255,255],debuglog:(B)=>{this.emit("warning",B),ClQ(B)},queueListener:function(B){hW.queue.emit("change",B)}},this.options.input=this._createInputDescriptor(A,Q,{allowStream:!0}),this};Object.setPrototypeOf(hW.prototype,fh.Duplex.prototype);Object.setPrototypeOf(hW,fh.Duplex);function XlQ(){let A=this.constructor.call(),{debuglog:Q,queueListener:B,...Y}=this.options;if(A.options=structuredClone(Y),A.options.debuglog=Q,A.options.queueListener=B,this._isStreamInput())this.on("finish",()=>{this._flattenBufferIn(),A.options.input.buffer=this.options.input.buffer,A.emit("finish")});return A}Object.assign(hW.prototype,{clone:XlQ});F8A.exports=hW});var U8A=R((x1Y,$8A)=>{var AA=j1(),Q7=sI(),GlQ={left:"low",top:"low",low:"low",center:"centre",centre:"centre",right:"high",bottom:"high",high:"high"},FlQ=["failOn","limitInputPixels","unlimited","animated","autoOrient","density","ignoreIcc","page","pages","sequentialRead","jp2","openSlide","pdf","raw","svg","tiff","failOnError","openSlideLevel","pdfBackground","tiffSubifd"];function Z8A(A){let Q=FlQ.filter((B)=>AA.defined(A[B])).map((B)=>[B,A[B]]);return Q.length?Object.fromEntries(Q):void 0}function WlQ(A,Q,B){let Y={autoOrient:!1,failOn:"warning",limitInputPixels:Math.pow(16383,2),ignoreIcc:!1,unlimited:!1,sequentialRead:!0};if(AA.string(A))Y.file=A;else if(AA.buffer(A)){if(A.length===0)throw Error("Input Buffer is empty");Y.buffer=A}else if(AA.arrayBuffer(A)){if(A.byteLength===0)throw Error("Input bit Array is empty");Y.buffer=Buffer.from(A,0,A.byteLength)}else if(AA.typedArray(A)){if(A.length===0)throw Error("Input Bit Array is empty");Y.buffer=Buffer.from(A.buffer,A.byteOffset,A.byteLength)}else if(AA.plainObject(A)&&!AA.defined(Q)){if(Q=A,Z8A(Q))Y.buffer=[]}else if(!AA.defined(A)&&!AA.defined(Q)&&AA.object(B)&&B.allowStream)Y.buffer=[];else if(Array.isArray(A))if(A.length>1)if(!this.options.joining)this.options.joining=!0,this.options.join=A.map((J)=>this._createInputDescriptor(J));else throw Error("Recursive join is unsupported");else throw Error("Expected at least two images to join");else throw Error(`Unsupported input '${A}' of type ${typeof A}${AA.defined(Q)?` when also providing options of type ${typeof Q}`:""}`);if(AA.object(Q)){if(AA.defined(Q.failOnError))if(AA.bool(Q.failOnError))Y.failOn=Q.failOnError?"warning":"none";else throw AA.invalidParameterError("failOnError","boolean",Q.failOnError);if(AA.defined(Q.failOn))if(AA.string(Q.failOn)&&AA.inArray(Q.failOn,["none","truncated","error","warning"]))Y.failOn=Q.failOn;else throw AA.invalidParameterError("failOn","one of: none, truncated, error, warning",Q.failOn);if(AA.defined(Q.autoOrient))if(AA.bool(Q.autoOrient))Y.autoOrient=Q.autoOrient;else throw AA.invalidParameterError("autoOrient","boolean",Q.autoOrient);if(AA.defined(Q.density))if(AA.inRange(Q.density,1,1e5))Y.density=Q.density;else throw AA.invalidParameterError("density","number between 1 and 100000",Q.density);if(AA.defined(Q.ignoreIcc))if(AA.bool(Q.ignoreIcc))Y.ignoreIcc=Q.ignoreIcc;else throw AA.invalidParameterError("ignoreIcc","boolean",Q.ignoreIcc);if(AA.defined(Q.limitInputPixels))if(AA.bool(Q.limitInputPixels))Y.limitInputPixels=Q.limitInputPixels?Math.pow(16383,2):0;else if(AA.integer(Q.limitInputPixels)&&AA.inRange(Q.limitInputPixels,0,Number.MAX_SAFE_INTEGER))Y.limitInputPixels=Q.limitInputPixels;else throw AA.invalidParameterError("limitInputPixels","positive integer",Q.limitInputPixels);if(AA.defined(Q.unlimited))if(AA.bool(Q.unlimited))Y.unlimited=Q.unlimited;else throw AA.invalidParameterError("unlimited","boolean",Q.unlimited);if(AA.defined(Q.sequentialRead))if(AA.bool(Q.sequentialRead))Y.sequentialRead=Q.sequentialRead;else throw AA.invalidParameterError("sequentialRead","boolean",Q.sequentialRead);if(AA.defined(Q.raw)){if(AA.object(Q.raw)&&AA.integer(Q.raw.width)&&Q.raw.width>0&&AA.integer(Q.raw.height)&&Q.raw.height>0&&AA.integer(Q.raw.channels)&&AA.inRange(Q.raw.channels,1,4))switch(Y.rawWidth=Q.raw.width,Y.rawHeight=Q.raw.height,Y.rawChannels=Q.raw.channels,A.constructor){case Uint8Array:case Uint8ClampedArray:Y.rawDepth="uchar";break;case Int8Array:Y.rawDepth="char";break;case Uint16Array:Y.rawDepth="ushort";break;case Int16Array:Y.rawDepth="short";break;case Uint32Array:Y.rawDepth="uint";break;case Int32Array:Y.rawDepth="int";break;case Float32Array:Y.rawDepth="float";break;case Float64Array:Y.rawDepth="double";break;default:Y.rawDepth="uchar";break}else throw Error("Expected width, height and channels for raw pixel input");if(Y.rawPremultiplied=!1,AA.defined(Q.raw.premultiplied))if(AA.bool(Q.raw.premultiplied))Y.rawPremultiplied=Q.raw.premultiplied;else throw AA.invalidParameterError("raw.premultiplied","boolean",Q.raw.premultiplied);if(Y.rawPageHeight=0,AA.defined(Q.raw.pageHeight))if(AA.integer(Q.raw.pageHeight)&&Q.raw.pageHeight>0&&Q.raw.pageHeight<=Q.raw.height){if(Q.raw.height%Q.raw.pageHeight!==0)throw Error(`Expected raw.height ${Q.raw.height} to be a multiple of raw.pageHeight ${Q.raw.pageHeight}`);Y.rawPageHeight=Q.raw.pageHeight}else throw AA.invalidParameterError("raw.pageHeight","positive integer",Q.raw.pageHeight)}if(AA.defined(Q.animated))if(AA.bool(Q.animated))Y.pages=Q.animated?-1:1;else throw AA.invalidParameterError("animated","boolean",Q.animated);if(AA.defined(Q.pages))if(AA.integer(Q.pages)&&AA.inRange(Q.pages,-1,1e5))Y.pages=Q.pages;else throw AA.invalidParameterError("pages","integer between -1 and 100000",Q.pages);if(AA.defined(Q.page))if(AA.integer(Q.page)&&AA.inRange(Q.page,0,1e5))Y.page=Q.page;else throw AA.invalidParameterError("page","integer between 0 and 100000",Q.page);if(AA.object(Q.openSlide)&&AA.defined(Q.openSlide.level))if(AA.integer(Q.openSlide.level)&&AA.inRange(Q.openSlide.level,0,256))Y.openSlideLevel=Q.openSlide.level;else throw AA.invalidParameterError("openSlide.level","integer between 0 and 256",Q.openSlide.level);else if(AA.defined(Q.level))if(AA.integer(Q.level)&&AA.inRange(Q.level,0,256))Y.openSlideLevel=Q.level;else throw AA.invalidParameterError("level","integer between 0 and 256",Q.level);if(AA.object(Q.tiff)&&AA.defined(Q.tiff.subifd))if(AA.integer(Q.tiff.subifd)&&AA.inRange(Q.tiff.subifd,-1,1e5))Y.tiffSubifd=Q.tiff.subifd;else throw AA.invalidParameterError("tiff.subifd","integer between -1 and 100000",Q.tiff.subifd);else if(AA.defined(Q.subifd))if(AA.integer(Q.subifd)&&AA.inRange(Q.subifd,-1,1e5))Y.tiffSubifd=Q.subifd;else throw AA.invalidParameterError("subifd","integer between -1 and 100000",Q.subifd);if(AA.object(Q.svg)){if(AA.defined(Q.svg.stylesheet))if(AA.string(Q.svg.stylesheet))Y.svgStylesheet=Q.svg.stylesheet;else throw AA.invalidParameterError("svg.stylesheet","string",Q.svg.stylesheet);if(AA.defined(Q.svg.highBitdepth))if(AA.bool(Q.svg.highBitdepth))Y.svgHighBitdepth=Q.svg.highBitdepth;else throw AA.invalidParameterError("svg.highBitdepth","boolean",Q.svg.highBitdepth)}if(AA.object(Q.pdf)&&AA.defined(Q.pdf.background))Y.pdfBackground=this._getBackgroundColourOption(Q.pdf.background);else if(AA.defined(Q.pdfBackground))Y.pdfBackground=this._getBackgroundColourOption(Q.pdfBackground);if(AA.object(Q.jp2)&&AA.defined(Q.jp2.oneshot))if(AA.bool(Q.jp2.oneshot))Y.jp2Oneshot=Q.jp2.oneshot;else throw AA.invalidParameterError("jp2.oneshot","boolean",Q.jp2.oneshot);if(AA.defined(Q.create))if(AA.object(Q.create)&&AA.integer(Q.create.width)&&Q.create.width>0&&AA.integer(Q.create.height)&&Q.create.height>0&&AA.integer(Q.create.channels)){if(Y.createWidth=Q.create.width,Y.createHeight=Q.create.height,Y.createChannels=Q.create.channels,Y.createPageHeight=0,AA.defined(Q.create.pageHeight))if(AA.integer(Q.create.pageHeight)&&Q.create.pageHeight>0&&Q.create.pageHeight<=Q.create.height){if(Q.create.height%Q.create.pageHeight!==0)throw Error(`Expected create.height ${Q.create.height} to be a multiple of create.pageHeight ${Q.create.pageHeight}`);Y.createPageHeight=Q.create.pageHeight}else throw AA.invalidParameterError("create.pageHeight","positive integer",Q.create.pageHeight);if(AA.defined(Q.create.noise)){if(!AA.object(Q.create.noise))throw Error("Expected noise to be an object");if(Q.create.noise.type!=="gaussian")throw Error("Only gaussian noise is supported at the moment");if(Y.createNoiseType=Q.create.noise.type,!AA.inRange(Q.create.channels,1,4))throw AA.invalidParameterError("create.channels","number between 1 and 4",Q.create.channels);if(Y.createNoiseMean=128,AA.defined(Q.create.noise.mean))if(AA.number(Q.create.noise.mean)&&AA.inRange(Q.create.noise.mean,0,1e4))Y.createNoiseMean=Q.create.noise.mean;else throw AA.invalidParameterError("create.noise.mean","number between 0 and 10000",Q.create.noise.mean);if(Y.createNoiseSigma=30,AA.defined(Q.create.noise.sigma))if(AA.number(Q.create.noise.sigma)&&AA.inRange(Q.create.noise.sigma,0,1e4))Y.createNoiseSigma=Q.create.noise.sigma;else throw AA.invalidParameterError("create.noise.sigma","number between 0 and 10000",Q.create.noise.sigma)}else if(AA.defined(Q.create.background)){if(!AA.inRange(Q.create.channels,3,4))throw AA.invalidParameterError("create.channels","number between 3 and 4",Q.create.channels);Y.createBackground=this._getBackgroundColourOption(Q.create.background)}else throw Error("Expected valid noise or background to create a new input image");delete Y.buffer}else throw Error("Expected valid width, height and channels to create a new input image");if(AA.defined(Q.text))if(AA.object(Q.text)&&AA.string(Q.text.text)){if(Y.textValue=Q.text.text,AA.defined(Q.text.height)&&AA.defined(Q.text.dpi))throw Error("Expected only one of dpi or height");if(AA.defined(Q.text.font))if(AA.string(Q.text.font))Y.textFont=Q.text.font;else throw AA.invalidParameterError("text.font","string",Q.text.font);if(AA.defined(Q.text.fontfile))if(AA.string(Q.text.fontfile))Y.textFontfile=Q.text.fontfile;else throw AA.invalidParameterError("text.fontfile","string",Q.text.fontfile);if(AA.defined(Q.text.width))if(AA.integer(Q.text.width)&&Q.text.width>0)Y.textWidth=Q.text.width;else throw AA.invalidParameterError("text.width","positive integer",Q.text.width);if(AA.defined(Q.text.height))if(AA.integer(Q.text.height)&&Q.text.height>0)Y.textHeight=Q.text.height;else throw AA.invalidParameterError("text.height","positive integer",Q.text.height);if(AA.defined(Q.text.align))if(AA.string(Q.text.align)&&AA.string(this.constructor.align[Q.text.align]))Y.textAlign=this.constructor.align[Q.text.align];else throw AA.invalidParameterError("text.align","valid alignment",Q.text.align);if(AA.defined(Q.text.justify))if(AA.bool(Q.text.justify))Y.textJustify=Q.text.justify;else throw AA.invalidParameterError("text.justify","boolean",Q.text.justify);if(AA.defined(Q.text.dpi))if(AA.integer(Q.text.dpi)&&AA.inRange(Q.text.dpi,1,1e6))Y.textDpi=Q.text.dpi;else throw AA.invalidParameterError("text.dpi","integer between 1 and 1000000",Q.text.dpi);if(AA.defined(Q.text.rgba))if(AA.bool(Q.text.rgba))Y.textRgba=Q.text.rgba;else throw AA.invalidParameterError("text.rgba","bool",Q.text.rgba);if(AA.defined(Q.text.spacing))if(AA.integer(Q.text.spacing)&&AA.inRange(Q.text.spacing,-1e6,1e6))Y.textSpacing=Q.text.spacing;else throw AA.invalidParameterError("text.spacing","integer between -1000000 and 1000000",Q.text.spacing);if(AA.defined(Q.text.wrap))if(AA.string(Q.text.wrap)&&AA.inArray(Q.text.wrap,["word","char","word-char","none"]))Y.textWrap=Q.text.wrap;else throw AA.invalidParameterError("text.wrap","one of: word, char, word-char, none",Q.text.wrap);delete Y.buffer}else throw Error("Expected a valid string to create an image with text.");if(AA.defined(Q.join))if(AA.defined(this.options.join)){if(AA.defined(Q.join.animated))if(AA.bool(Q.join.animated))Y.joinAnimated=Q.join.animated;else throw AA.invalidParameterError("join.animated","boolean",Q.join.animated);if(AA.defined(Q.join.across))if(AA.integer(Q.join.across)&&AA.inRange(Q.join.across,1,1e6))Y.joinAcross=Q.join.across;else throw AA.invalidParameterError("join.across","integer between 1 and 100000",Q.join.across);if(AA.defined(Q.join.shim))if(AA.integer(Q.join.shim)&&AA.inRange(Q.join.shim,0,1e6))Y.joinShim=Q.join.shim;else throw AA.invalidParameterError("join.shim","integer between 0 and 100000",Q.join.shim);if(AA.defined(Q.join.background))Y.joinBackground=this._getBackgroundColourOption(Q.join.background);if(AA.defined(Q.join.halign))if(AA.string(Q.join.halign)&&AA.string(this.constructor.align[Q.join.halign]))Y.joinHalign=this.constructor.align[Q.join.halign];else throw AA.invalidParameterError("join.halign","valid alignment",Q.join.halign);if(AA.defined(Q.join.valign))if(AA.string(Q.join.valign)&&AA.string(this.constructor.align[Q.join.valign]))Y.joinValign=this.constructor.align[Q.join.valign];else throw AA.invalidParameterError("join.valign","valid alignment",Q.join.valign)}else throw Error("Expected input to be an array of images to join")}else if(AA.defined(Q))throw Error("Invalid input options "+Q);return Y}function ZlQ(A,Q,B){if(Array.isArray(this.options.input.buffer))if(AA.buffer(A)){if(this.options.input.buffer.length===0)this.on("finish",()=>{this.streamInFinished=!0});this.options.input.buffer.push(A),B()}else B(Error("Non-Buffer data on Writable Stream"));else B(Error("Unexpected data on Writable Stream"))}function $lQ(){if(this._isStreamInput())this.options.input.buffer=Buffer.concat(this.options.input.buffer)}function UlQ(){return Array.isArray(this.options.input.buffer)}function ElQ(A){let Q=Error();if(AA.fn(A)){if(this._isStreamInput())this.on("finish",()=>{this._flattenBufferIn(),Q7.metadata(this.options,(B,Y)=>{if(B)A(AA.nativeError(B,Q));else A(null,Y)})});else Q7.metadata(this.options,(B,Y)=>{if(B)A(AA.nativeError(B,Q));else A(null,Y)});return this}else if(this._isStreamInput())return new Promise((B,Y)=>{let J=()=>{this._flattenBufferIn(),Q7.metadata(this.options,(C,X)=>{if(C)Y(AA.nativeError(C,Q));else B(X)})};if(this.writableFinished)J();else this.once("finish",J)});else return new Promise((B,Y)=>{Q7.metadata(this.options,(J,C)=>{if(J)Y(AA.nativeError(J,Q));else B(C)})})}function KlQ(A){let Q=Error();if(AA.fn(A)){if(this._isStreamInput())this.on("finish",()=>{this._flattenBufferIn(),Q7.stats(this.options,(B,Y)=>{if(B)A(AA.nativeError(B,Q));else A(null,Y)})});else Q7.stats(this.options,(B,Y)=>{if(B)A(AA.nativeError(B,Q));else A(null,Y)});return this}else if(this._isStreamInput())return new Promise((B,Y)=>{this.on("finish",function(){this._flattenBufferIn(),Q7.stats(this.options,(J,C)=>{if(J)Y(AA.nativeError(J,Q));else B(C)})})});else return new Promise((B,Y)=>{Q7.stats(this.options,(J,C)=>{if(J)Y(AA.nativeError(J,Q));else B(C)})})}$8A.exports=function(A){Object.assign(A.prototype,{_inputOptionsFromObject:Z8A,_createInputDescriptor:WlQ,_write:ZlQ,_flattenBufferIn:$lQ,_isStreamInput:UlQ,metadata:ElQ,stats:KlQ}),A.align=GlQ}});var D8A=R((f1Y,H8A)=>{var XQ=j1(),K8A={center:0,centre:0,north:1,east:2,south:3,west:4,northeast:5,southeast:6,southwest:7,northwest:8},V8A={top:1,right:2,bottom:3,left:4,"right top":5,"right bottom":6,"left bottom":7,"left top":8},E8A={background:"background",copy:"copy",repeat:"repeat",mirror:"mirror"},I8A={entropy:16,attention:17},bh={nearest:"nearest",linear:"linear",cubic:"cubic",mitchell:"mitchell",lanczos2:"lanczos2",lanczos3:"lanczos3",mks2013:"mks2013",mks2021:"mks2021"},VlQ={contain:"contain",cover:"cover",fill:"fill",inside:"inside",outside:"outside"},IlQ={contain:"embed",cover:"crop",fill:"ignore_aspect",inside:"max",outside:"min"};function mh(A){return A.angle%360!==0||A.input.autoOrient===!0||A.rotationAngle!==0}function Q3(A){return A.width!==-1||A.height!==-1}function HlQ(A,Q,B){if(Q3(this.options))this.options.debuglog("ignoring previous resize options");if(this.options.widthPost!==-1)this.options.debuglog("operation order will be: extract, resize, extract");if(XQ.defined(A))if(XQ.object(A)&&!XQ.defined(B))B=A;else if(XQ.integer(A)&&A>0)this.options.width=A;else throw XQ.invalidParameterError("width","positive integer",A);else this.options.width=-1;if(XQ.defined(Q))if(XQ.integer(Q)&&Q>0)this.options.height=Q;else throw XQ.invalidParameterError("height","positive integer",Q);else this.options.height=-1;if(XQ.object(B)){if(XQ.defined(B.width))if(XQ.integer(B.width)&&B.width>0)this.options.width=B.width;else throw XQ.invalidParameterError("width","positive integer",B.width);if(XQ.defined(B.height))if(XQ.integer(B.height)&&B.height>0)this.options.height=B.height;else throw XQ.invalidParameterError("height","positive integer",B.height);if(XQ.defined(B.fit)){let Y=IlQ[B.fit];if(XQ.string(Y))this.options.canvas=Y;else throw XQ.invalidParameterError("fit","valid fit",B.fit)}if(XQ.defined(B.position)){let Y=XQ.integer(B.position)?B.position:I8A[B.position]||V8A[B.position]||K8A[B.position];if(XQ.integer(Y)&&(XQ.inRange(Y,0,8)||XQ.inRange(Y,16,17)))this.options.position=Y;else throw XQ.invalidParameterError("position","valid position/gravity/strategy",B.position)}if(this._setBackgroundColourOption("resizeBackground",B.background),XQ.defined(B.kernel))if(XQ.string(bh[B.kernel]))this.options.kernel=bh[B.kernel];else throw XQ.invalidParameterError("kernel","valid kernel name",B.kernel);if(XQ.defined(B.withoutEnlargement))this._setBooleanOption("withoutEnlargement",B.withoutEnlargement);if(XQ.defined(B.withoutReduction))this._setBooleanOption("withoutReduction",B.withoutReduction);if(XQ.defined(B.fastShrinkOnLoad))this._setBooleanOption("fastShrinkOnLoad",B.fastShrinkOnLoad)}if(mh(this.options)&&Q3(this.options))this.options.rotateBeforePreExtract=!0;return this}function DlQ(A){if(XQ.integer(A)&&A>0)this.options.extendTop=A,this.options.extendBottom=A,this.options.extendLeft=A,this.options.extendRight=A;else if(XQ.object(A)){if(XQ.defined(A.top))if(XQ.integer(A.top)&&A.top>=0)this.options.extendTop=A.top;else throw XQ.invalidParameterError("top","positive integer",A.top);if(XQ.defined(A.bottom))if(XQ.integer(A.bottom)&&A.bottom>=0)this.options.extendBottom=A.bottom;else throw XQ.invalidParameterError("bottom","positive integer",A.bottom);if(XQ.defined(A.left))if(XQ.integer(A.left)&&A.left>=0)this.options.extendLeft=A.left;else throw XQ.invalidParameterError("left","positive integer",A.left);if(XQ.defined(A.right))if(XQ.integer(A.right)&&A.right>=0)this.options.extendRight=A.right;else throw XQ.invalidParameterError("right","positive integer",A.right);if(this._setBackgroundColourOption("extendBackground",A.background),XQ.defined(A.extendWith))if(XQ.string(E8A[A.extendWith]))this.options.extendWith=E8A[A.extendWith];else throw XQ.invalidParameterError("extendWith","one of: background, copy, repeat, mirror",A.extendWith)}else throw XQ.invalidParameterError("extend","integer or object",A);return this}function NlQ(A){let Q=Q3(this.options)||this.options.widthPre!==-1?"Post":"Pre";if(this.options[`width${Q}`]!==-1)this.options.debuglog("ignoring previous extract options");if(["left","top","width","height"].forEach(function(B){let Y=A[B];if(XQ.integer(Y)&&Y>=0)this.options[B+(B==="left"||B==="top"?"Offset":"")+Q]=Y;else throw XQ.invalidParameterError(B,"integer",Y)},this),mh(this.options)&&!Q3(this.options)){if(this.options.widthPre===-1||this.options.widthPost===-1)this.options.rotateBeforePreExtract=!0}return this}function LlQ(A){if(this.options.trimThreshold=10,XQ.defined(A))if(XQ.object(A)){if(XQ.defined(A.background))this._setBackgroundColourOption("trimBackground",A.background);if(XQ.defined(A.threshold))if(XQ.number(A.threshold)&&A.threshold>=0)this.options.trimThreshold=A.threshold;else throw XQ.invalidParameterError("threshold","positive number",A.threshold);if(XQ.defined(A.lineArt))this._setBooleanOption("trimLineArt",A.lineArt)}else throw XQ.invalidParameterError("trim","object",A);if(mh(this.options))this.options.rotateBeforePreExtract=!0;return this}H8A.exports=function(A){Object.assign(A.prototype,{resize:HlQ,extend:DlQ,extract:NlQ,trim:LlQ}),A.gravity=K8A,A.strategy=I8A,A.kernel=bh,A.fit=VlQ,A.position=V8A}});var L8A=R((b1Y,N8A)=>{var iB=j1(),uh={clear:"clear",source:"source",over:"over",in:"in",out:"out",atop:"atop",dest:"dest","dest-over":"dest-over","dest-in":"dest-in","dest-out":"dest-out","dest-atop":"dest-atop",xor:"xor",add:"add",saturate:"saturate",multiply:"multiply",screen:"screen",overlay:"overlay",darken:"darken",lighten:"lighten","colour-dodge":"colour-dodge","color-dodge":"colour-dodge","colour-burn":"colour-burn","color-burn":"colour-burn","hard-light":"hard-light","soft-light":"soft-light",difference:"difference",exclusion:"exclusion"};function qlQ(A){if(!Array.isArray(A))throw iB.invalidParameterError("images to composite","array",A);return this.options.composite=A.map((Q)=>{if(!iB.object(Q))throw iB.invalidParameterError("image to composite","object",Q);let B=this._inputOptionsFromObject(Q),Y={input:this._createInputDescriptor(Q.input,B,{allowStream:!1}),blend:"over",tile:!1,left:0,top:0,hasOffset:!1,gravity:0,premultiplied:!1};if(iB.defined(Q.blend))if(iB.string(uh[Q.blend]))Y.blend=uh[Q.blend];else throw iB.invalidParameterError("blend","valid blend name",Q.blend);if(iB.defined(Q.tile))if(iB.bool(Q.tile))Y.tile=Q.tile;else throw iB.invalidParameterError("tile","boolean",Q.tile);if(iB.defined(Q.left))if(iB.integer(Q.left))Y.left=Q.left;else throw iB.invalidParameterError("left","integer",Q.left);if(iB.defined(Q.top))if(iB.integer(Q.top))Y.top=Q.top;else throw iB.invalidParameterError("top","integer",Q.top);if(iB.defined(Q.top)!==iB.defined(Q.left))throw Error("Expected both left and top to be set");else Y.hasOffset=iB.integer(Q.top)&&iB.integer(Q.left);if(iB.defined(Q.gravity))if(iB.integer(Q.gravity)&&iB.inRange(Q.gravity,0,8))Y.gravity=Q.gravity;else if(iB.string(Q.gravity)&&iB.integer(this.constructor.gravity[Q.gravity]))Y.gravity=this.constructor.gravity[Q.gravity];else throw iB.invalidParameterError("gravity","valid gravity",Q.gravity);if(iB.defined(Q.premultiplied))if(iB.bool(Q.premultiplied))Y.premultiplied=Q.premultiplied;else throw iB.invalidParameterError("premultiplied","boolean",Q.premultiplied);return Y}),this}N8A.exports=function(A){A.prototype.composite=qlQ,A.blend=uh}});var w8A=R((m1Y,R8A)=>{var FA=j1(),q8A={integer:"integer",float:"float",approximate:"approximate"};function MlQ(A,Q){if(!FA.defined(A))return this.autoOrient();if(this.options.angle||this.options.rotationAngle)this.options.debuglog("ignoring previous rotate options"),this.options.angle=0,this.options.rotationAngle=0;if(FA.integer(A)&&!(A%90))this.options.angle=A;else if(FA.number(A)){if(this.options.rotationAngle=A,FA.object(Q)&&Q.background)this._setBackgroundColourOption("rotationBackground",Q.background)}else throw FA.invalidParameterError("angle","numeric",A);return this}function zlQ(){return this.options.input.autoOrient=!0,this}function RlQ(A){return this.options.flip=FA.bool(A)?A:!0,this}function wlQ(A){return this.options.flop=FA.bool(A)?A:!0,this}function jlQ(A,Q){let B=[].concat(...A);if(B.length===4&&B.every(FA.number))this.options.affineMatrix=B;else throw FA.invalidParameterError("matrix","1x4 or 2x2 array",A);if(FA.defined(Q))if(FA.object(Q)){if(this._setBackgroundColourOption("affineBackground",Q.background),FA.defined(Q.idx))if(FA.number(Q.idx))this.options.affineIdx=Q.idx;else throw FA.invalidParameterError("options.idx","number",Q.idx);if(FA.defined(Q.idy))if(FA.number(Q.idy))this.options.affineIdy=Q.idy;else throw FA.invalidParameterError("options.idy","number",Q.idy);if(FA.defined(Q.odx))if(FA.number(Q.odx))this.options.affineOdx=Q.odx;else throw FA.invalidParameterError("options.odx","number",Q.odx);if(FA.defined(Q.ody))if(FA.number(Q.ody))this.options.affineOdy=Q.ody;else throw FA.invalidParameterError("options.ody","number",Q.ody);if(FA.defined(Q.interpolator))if(FA.inArray(Q.interpolator,Object.values(this.constructor.interpolators)))this.options.affineInterpolator=Q.interpolator;else throw FA.invalidParameterError("options.interpolator","valid interpolator name",Q.interpolator)}else throw FA.invalidParameterError("options","object",Q);return this}function OlQ(A,Q,B){if(!FA.defined(A))this.options.sharpenSigma=-1;else if(FA.bool(A))this.options.sharpenSigma=A?-1:0;else if(FA.number(A)&&FA.inRange(A,0.01,1e4)){if(this.options.sharpenSigma=A,FA.defined(Q))if(FA.number(Q)&&FA.inRange(Q,0,1e4))this.options.sharpenM1=Q;else throw FA.invalidParameterError("flat","number between 0 and 10000",Q);if(FA.defined(B))if(FA.number(B)&&FA.inRange(B,0,1e4))this.options.sharpenM2=B;else throw FA.invalidParameterError("jagged","number between 0 and 10000",B)}else if(FA.plainObject(A)){if(FA.number(A.sigma)&&FA.inRange(A.sigma,0.000001,10))this.options.sharpenSigma=A.sigma;else throw FA.invalidParameterError("options.sigma","number between 0.000001 and 10",A.sigma);if(FA.defined(A.m1))if(FA.number(A.m1)&&FA.inRange(A.m1,0,1e6))this.options.sharpenM1=A.m1;else throw FA.invalidParameterError("options.m1","number between 0 and 1000000",A.m1);if(FA.defined(A.m2))if(FA.number(A.m2)&&FA.inRange(A.m2,0,1e6))this.options.sharpenM2=A.m2;else throw FA.invalidParameterError("options.m2","number between 0 and 1000000",A.m2);if(FA.defined(A.x1))if(FA.number(A.x1)&&FA.inRange(A.x1,0,1e6))this.options.sharpenX1=A.x1;else throw FA.invalidParameterError("options.x1","number between 0 and 1000000",A.x1);if(FA.defined(A.y2))if(FA.number(A.y2)&&FA.inRange(A.y2,0,1e6))this.options.sharpenY2=A.y2;else throw FA.invalidParameterError("options.y2","number between 0 and 1000000",A.y2);if(FA.defined(A.y3))if(FA.number(A.y3)&&FA.inRange(A.y3,0,1e6))this.options.sharpenY3=A.y3;else throw FA.invalidParameterError("options.y3","number between 0 and 1000000",A.y3)}else throw FA.invalidParameterError("sigma","number between 0.01 and 10000",A);return this}function PlQ(A){if(!FA.defined(A))this.options.medianSize=3;else if(FA.integer(A)&&FA.inRange(A,1,1000))this.options.medianSize=A;else throw FA.invalidParameterError("size","integer between 1 and 1000",A);return this}function TlQ(A){let Q;if(FA.number(A))Q=A;else if(FA.plainObject(A)){if(!FA.number(A.sigma))throw FA.invalidParameterError("options.sigma","number between 0.3 and 1000",Q);if(Q=A.sigma,"precision"in A)if(FA.string(q8A[A.precision]))this.options.precision=q8A[A.precision];else throw FA.invalidParameterError("precision","one of: integer, float, approximate",A.precision);if("minAmplitude"in A)if(FA.number(A.minAmplitude)&&FA.inRange(A.minAmplitude,0.001,1))this.options.minAmpl=A.minAmplitude;else throw FA.invalidParameterError("minAmplitude","number between 0.001 and 1",A.minAmplitude)}if(!FA.defined(A))this.options.blurSigma=-1;else if(FA.bool(A))this.options.blurSigma=A?-1:0;else if(FA.number(Q)&&FA.inRange(Q,0.3,1000))this.options.blurSigma=Q;else throw FA.invalidParameterError("sigma","number between 0.3 and 1000",Q);return this}function M8A(A){if(!FA.defined(A))this.options.dilateWidth=1;else if(FA.integer(A)&&A>0)this.options.dilateWidth=A;else throw FA.invalidParameterError("dilate","positive integer",M8A);return this}function z8A(A){if(!FA.defined(A))this.options.erodeWidth=1;else if(FA.integer(A)&&A>0)this.options.erodeWidth=A;else throw FA.invalidParameterError("erode","positive integer",z8A);return this}function SlQ(A){if(this.options.flatten=FA.bool(A)?A:!0,FA.object(A))this._setBackgroundColourOption("flattenBackground",A.background);return this}function klQ(){return this.options.unflatten=!0,this}function _lQ(A,Q){if(!FA.defined(A))this.options.gamma=2.2;else if(FA.number(A)&&FA.inRange(A,1,3))this.options.gamma=A;else throw FA.invalidParameterError("gamma","number between 1.0 and 3.0",A);if(!FA.defined(Q))this.options.gammaOut=this.options.gamma;else if(FA.number(Q)&&FA.inRange(Q,1,3))this.options.gammaOut=Q;else throw FA.invalidParameterError("gammaOut","number between 1.0 and 3.0",Q);return this}function vlQ(A){if(this.options.negate=FA.bool(A)?A:!0,FA.plainObject(A)&&"alpha"in A)if(!FA.bool(A.alpha))throw FA.invalidParameterError("alpha","should be boolean value",A.alpha);else this.options.negateAlpha=A.alpha;return this}function ylQ(A){if(FA.plainObject(A)){if(FA.defined(A.lower))if(FA.number(A.lower)&&FA.inRange(A.lower,0,99))this.options.normaliseLower=A.lower;else throw FA.invalidParameterError("lower","number between 0 and 99",A.lower);if(FA.defined(A.upper))if(FA.number(A.upper)&&FA.inRange(A.upper,1,100))this.options.normaliseUpper=A.upper;else throw FA.invalidParameterError("upper","number between 1 and 100",A.upper)}if(this.options.normaliseLower>=this.options.normaliseUpper)throw FA.invalidParameterError("range","lower to be less than upper",`${this.options.normaliseLower} >= ${this.options.normaliseUpper}`);return this.options.normalise=!0,this}function hlQ(A){return this.normalise(A)}function glQ(A){if(FA.plainObject(A)){if(FA.integer(A.width)&&A.width>0)this.options.claheWidth=A.width;else throw FA.invalidParameterError("width","integer greater than zero",A.width);if(FA.integer(A.height)&&A.height>0)this.options.claheHeight=A.height;else throw FA.invalidParameterError("height","integer greater than zero",A.height);if(FA.defined(A.maxSlope))if(FA.integer(A.maxSlope)&&FA.inRange(A.maxSlope,0,100))this.options.claheMaxSlope=A.maxSlope;else throw FA.invalidParameterError("maxSlope","integer between 0 and 100",A.maxSlope)}else throw FA.invalidParameterError("options","plain object",A);return this}function xlQ(A){if(!FA.object(A)||!Array.isArray(A.kernel)||!FA.integer(A.width)||!FA.integer(A.height)||!FA.inRange(A.width,3,1001)||!FA.inRange(A.height,3,1001)||A.height*A.width!==A.kernel.length)throw Error("Invalid convolution kernel");if(!FA.integer(A.scale))A.scale=A.kernel.reduce(function(Q,B){return Q+B},0);if(A.scale<1)A.scale=1;if(!FA.integer(A.offset))A.offset=0;return this.options.convKernel=A,this}function flQ(A,Q){if(!FA.defined(A))this.options.threshold=128;else if(FA.bool(A))this.options.threshold=A?128:0;else if(FA.integer(A)&&FA.inRange(A,0,255))this.options.threshold=A;else throw FA.invalidParameterError("threshold","integer between 0 and 255",A);if(!FA.object(Q)||Q.greyscale===!0||Q.grayscale===!0)this.options.thresholdGrayscale=!0;else this.options.thresholdGrayscale=!1;return this}function blQ(A,Q,B){if(this.options.boolean=this._createInputDescriptor(A,B),FA.string(Q)&&FA.inArray(Q,["and","or","eor"]))this.options.booleanOp=Q;else throw FA.invalidParameterError("operator","one of: and, or, eor",Q);return this}function mlQ(A,Q){if(!FA.defined(A)&&FA.number(Q))A=1;else if(FA.number(A)&&!FA.defined(Q))Q=0;if(!FA.defined(A))this.options.linearA=[];else if(FA.number(A))this.options.linearA=[A];else if(Array.isArray(A)&&A.length&&A.every(FA.number))this.options.linearA=A;else throw FA.invalidParameterError("a","number or array of numbers",A);if(!FA.defined(Q))this.options.linearB=[];else if(FA.number(Q))this.options.linearB=[Q];else if(Array.isArray(Q)&&Q.length&&Q.every(FA.number))this.options.linearB=Q;else throw FA.invalidParameterError("b","number or array of numbers",Q);if(this.options.linearA.length!==this.options.linearB.length)throw Error("Expected a and b to be arrays of the same length");return this}function ulQ(A){if(!Array.isArray(A))throw FA.invalidParameterError("inputMatrix","array",A);if(A.length!==3&&A.length!==4)throw FA.invalidParameterError("inputMatrix","3x3 or 4x4 array",A.length);let Q=A.flat().map(Number);if(Q.length!==9&&Q.length!==16)throw FA.invalidParameterError("inputMatrix","cardinality of 9 or 16",Q.length);return this.options.recombMatrix=Q,this}function dlQ(A){if(!FA.plainObject(A))throw FA.invalidParameterError("options","plain object",A);if("brightness"in A)if(FA.number(A.brightness)&&A.brightness>=0)this.options.brightness=A.brightness;else throw FA.invalidParameterError("brightness","number above zero",A.brightness);if("saturation"in A)if(FA.number(A.saturation)&&A.saturation>=0)this.options.saturation=A.saturation;else throw FA.invalidParameterError("saturation","number above zero",A.saturation);if("hue"in A)if(FA.integer(A.hue))this.options.hue=A.hue%360;else throw FA.invalidParameterError("hue","number",A.hue);if("lightness"in A)if(FA.number(A.lightness))this.options.lightness=A.lightness;else throw FA.invalidParameterError("lightness","number",A.lightness);return this}R8A.exports=function(A){Object.assign(A.prototype,{autoOrient:zlQ,rotate:MlQ,flip:RlQ,flop:wlQ,affine:jlQ,sharpen:OlQ,erode:z8A,dilate:M8A,median:PlQ,blur:TlQ,flatten:SlQ,unflatten:klQ,gamma:_lQ,negate:vlQ,normalise:ylQ,normalize:hlQ,clahe:glQ,convolve:xlQ,threshold:flQ,boolean:blQ,linear:mlQ,recomb:ulQ,modulate:dlQ})}});var dh=R((u1Y,j8A)=>{j8A.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}});var P8A=R((d1Y,O8A)=>{O8A.exports=function(Q){if(!Q||typeof Q==="string")return!1;return Q instanceof Array||Array.isArray(Q)||Q.length>=0&&(Q.splice instanceof Function||Object.getOwnPropertyDescriptor(Q,Q.length-1)&&Q.constructor.name!=="String")}});var k8A=R((c1Y,S8A)=>{var clQ=P8A(),llQ=Array.prototype.concat,plQ=Array.prototype.slice,T8A=S8A.exports=function(Q){var B=[];for(var Y=0,J=Q.length;Y{var aI=dh(),oI=k8A(),_8A=Object.hasOwnProperty,v8A=Object.create(null);for(rI in aI)if(_8A.call(aI,rI))v8A[aI[rI]]=rI;var rI,J8=y8A.exports={to:{},get:{}};J8.get=function(A){var Q=A.substring(0,3).toLowerCase(),B,Y;switch(Q){case"hsl":B=J8.get.hsl(A),Y="hsl";break;case"hwb":B=J8.get.hwb(A),Y="hwb";break;default:B=J8.get.rgb(A),Y="rgb";break}if(!B)return null;return{model:Y,value:B}};J8.get.rgb=function(A){if(!A)return null;var Q=/^#([a-f0-9]{3,4})$/i,B=/^#([a-f0-9]{6})([a-f0-9]{2})?$/i,Y=/^rgba?\(\s*([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/,J=/^rgba?\(\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/,C=/^(\w+)$/,X=[0,0,0,1],G,F,W;if(G=A.match(B)){W=G[2],G=G[1];for(F=0;F<3;F++){var Z=F*2;X[F]=parseInt(G.slice(Z,Z+2),16)}if(W)X[3]=parseInt(W,16)/255}else if(G=A.match(Q)){G=G[1],W=G[3];for(F=0;F<3;F++)X[F]=parseInt(G[F]+G[F],16);if(W)X[3]=parseInt(W+W,16)/255}else if(G=A.match(Y)){for(F=0;F<3;F++)X[F]=parseInt(G[F+1],0);if(G[4])if(G[5])X[3]=parseFloat(G[4])*0.01;else X[3]=parseFloat(G[4])}else if(G=A.match(J)){for(F=0;F<3;F++)X[F]=Math.round(parseFloat(G[F+1])*2.55);if(G[4])if(G[5])X[3]=parseFloat(G[4])*0.01;else X[3]=parseFloat(G[4])}else if(G=A.match(C)){if(G[1]==="transparent")return[0,0,0,0];if(!_8A.call(aI,G[1]))return null;return X=aI[G[1]],X[3]=1,X}else return null;for(F=0;F<3;F++)X[F]=B7(X[F],0,255);return X[3]=B7(X[3],0,1),X};J8.get.hsl=function(A){if(!A)return null;var Q=/^hsla?\(\s*([+-]?(?:\d{0,3}\.)?\d+)(?:deg)?\s*,?\s*([+-]?[\d\.]+)%\s*,?\s*([+-]?[\d\.]+)%\s*(?:[,|\/]\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:[eE][+-]?\d+)?)\s*)?\)$/,B=A.match(Q);if(B){var Y=parseFloat(B[4]),J=(parseFloat(B[1])%360+360)%360,C=B7(parseFloat(B[2]),0,100),X=B7(parseFloat(B[3]),0,100),G=B7(isNaN(Y)?1:Y,0,1);return[J,C,X,G]}return null};J8.get.hwb=function(A){if(!A)return null;var Q=/^hwb\(\s*([+-]?\d{0,3}(?:\.\d+)?)(?:deg)?\s*,\s*([+-]?[\d\.]+)%\s*,\s*([+-]?[\d\.]+)%\s*(?:,\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:[eE][+-]?\d+)?)\s*)?\)$/,B=A.match(Q);if(B){var Y=parseFloat(B[4]),J=(parseFloat(B[1])%360+360)%360,C=B7(parseFloat(B[2]),0,100),X=B7(parseFloat(B[3]),0,100),G=B7(isNaN(Y)?1:Y,0,1);return[J,C,X,G]}return null};J8.to.hex=function(){var A=oI(arguments);return"#"+B3(A[0])+B3(A[1])+B3(A[2])+(A[3]<1?B3(Math.round(A[3]*255)):"")};J8.to.rgb=function(){var A=oI(arguments);return A.length<4||A[3]===1?"rgb("+Math.round(A[0])+", "+Math.round(A[1])+", "+Math.round(A[2])+")":"rgba("+Math.round(A[0])+", "+Math.round(A[1])+", "+Math.round(A[2])+", "+A[3]+")"};J8.to.rgb.percent=function(){var A=oI(arguments),Q=Math.round(A[0]/255*100),B=Math.round(A[1]/255*100),Y=Math.round(A[2]/255*100);return A.length<4||A[3]===1?"rgb("+Q+"%, "+B+"%, "+Y+"%)":"rgba("+Q+"%, "+B+"%, "+Y+"%, "+A[3]+")"};J8.to.hsl=function(){var A=oI(arguments);return A.length<4||A[3]===1?"hsl("+A[0]+", "+A[1]+"%, "+A[2]+"%)":"hsla("+A[0]+", "+A[1]+"%, "+A[2]+"%, "+A[3]+")"};J8.to.hwb=function(){var A=oI(arguments),Q="";if(A.length>=4&&A[3]!==1)Q=", "+A[3];return"hwb("+A[0]+", "+A[1]+"%, "+A[2]+"%"+Q+")"};J8.to.keyword=function(A){return v8A[A.slice(0,3)]};function B7(A,Q,B){return Math.min(Math.max(Q,A),B)}function B3(A){var Q=Math.round(A).toString(16).toUpperCase();return Q.length<2?"0"+Q:Q}});var ch=R((p1Y,x8A)=>{var tI=dh(),g8A={};for(let A of Object.keys(tI))g8A[tI[A]]=A;var aA={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},lch:{channels:3,labels:"lch"},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}};x8A.exports=aA;for(let A of Object.keys(aA)){if(!("channels"in aA[A]))throw Error("missing channels property: "+A);if(!("labels"in aA[A]))throw Error("missing channel labels property: "+A);if(aA[A].labels.length!==aA[A].channels)throw Error("channel and label counts mismatch: "+A);let{channels:Q,labels:B}=aA[A];delete aA[A].channels,delete aA[A].labels,Object.defineProperty(aA[A],"channels",{value:Q}),Object.defineProperty(aA[A],"labels",{value:B})}aA.rgb.hsl=function(A){let Q=A[0]/255,B=A[1]/255,Y=A[2]/255,J=Math.min(Q,B,Y),C=Math.max(Q,B,Y),X=C-J,G,F;if(C===J)G=0;else if(Q===C)G=(B-Y)/X;else if(B===C)G=2+(Y-Q)/X;else if(Y===C)G=4+(Q-B)/X;if(G=Math.min(G*60,360),G<0)G+=360;let W=(J+C)/2;if(C===J)F=0;else if(W<=0.5)F=X/(C+J);else F=X/(2-C-J);return[G,F*100,W*100]};aA.rgb.hsv=function(A){let Q,B,Y,J,C,X=A[0]/255,G=A[1]/255,F=A[2]/255,W=Math.max(X,G,F),Z=W-Math.min(X,G,F),U=function($){return(W-$)/6/Z+0.5};if(Z===0)J=0,C=0;else{if(C=Z/W,Q=U(X),B=U(G),Y=U(F),X===W)J=Y-B;else if(G===W)J=0.3333333333333333+Q-Y;else if(F===W)J=0.6666666666666666+B-Q;if(J<0)J+=1;else if(J>1)J-=1}return[J*360,C*100,W*100]};aA.rgb.hwb=function(A){let Q=A[0],B=A[1],Y=A[2],J=aA.rgb.hsl(A)[0],C=0.00392156862745098*Math.min(Q,Math.min(B,Y));return Y=1-0.00392156862745098*Math.max(Q,Math.max(B,Y)),[J,C*100,Y*100]};aA.rgb.cmyk=function(A){let Q=A[0]/255,B=A[1]/255,Y=A[2]/255,J=Math.min(1-Q,1-B,1-Y),C=(1-Q-J)/(1-J)||0,X=(1-B-J)/(1-J)||0,G=(1-Y-J)/(1-J)||0;return[C*100,X*100,G*100,J*100]};function ilQ(A,Q){return(A[0]-Q[0])**2+(A[1]-Q[1])**2+(A[2]-Q[2])**2}aA.rgb.keyword=function(A){let Q=g8A[A];if(Q)return Q;let B=1/0,Y;for(let J of Object.keys(tI)){let C=tI[J],X=ilQ(A,C);if(X0.04045?((Q+0.055)/1.055)**2.4:Q/12.92,B=B>0.04045?((B+0.055)/1.055)**2.4:B/12.92,Y=Y>0.04045?((Y+0.055)/1.055)**2.4:Y/12.92;let J=Q*0.4124+B*0.3576+Y*0.1805,C=Q*0.2126+B*0.7152+Y*0.0722,X=Q*0.0193+B*0.1192+Y*0.9505;return[J*100,C*100,X*100]};aA.rgb.lab=function(A){let Q=aA.rgb.xyz(A),B=Q[0],Y=Q[1],J=Q[2];B/=95.047,Y/=100,J/=108.883,B=B>0.008856?B**0.3333333333333333:7.787*B+0.13793103448275862,Y=Y>0.008856?Y**0.3333333333333333:7.787*Y+0.13793103448275862,J=J>0.008856?J**0.3333333333333333:7.787*J+0.13793103448275862;let C=116*Y-16,X=500*(B-Y),G=200*(Y-J);return[C,X,G]};aA.hsl.rgb=function(A){let Q=A[0]/360,B=A[1]/100,Y=A[2]/100,J,C,X;if(B===0)return X=Y*255,[X,X,X];if(Y<0.5)J=Y*(1+B);else J=Y+B-Y*B;let G=2*Y-J,F=[0,0,0];for(let W=0;W<3;W++){if(C=Q+0.3333333333333333*-(W-1),C<0)C++;if(C>1)C--;if(6*C<1)X=G+(J-G)*6*C;else if(2*C<1)X=J;else if(3*C<2)X=G+(J-G)*(0.6666666666666666-C)*6;else X=G;F[W]=X*255}return F};aA.hsl.hsv=function(A){let Q=A[0],B=A[1]/100,Y=A[2]/100,J=B,C=Math.max(Y,0.01);Y*=2,B*=Y<=1?Y:2-Y,J*=C<=1?C:2-C;let X=(Y+B)/2,G=Y===0?2*J/(C+J):2*B/(Y+B);return[Q,G*100,X*100]};aA.hsv.rgb=function(A){let Q=A[0]/60,B=A[1]/100,Y=A[2]/100,J=Math.floor(Q)%6,C=Q-Math.floor(Q),X=255*Y*(1-B),G=255*Y*(1-B*C),F=255*Y*(1-B*(1-C));switch(Y*=255,J){case 0:return[Y,F,X];case 1:return[G,Y,X];case 2:return[X,Y,F];case 3:return[X,G,Y];case 4:return[F,X,Y];case 5:return[Y,X,G]}};aA.hsv.hsl=function(A){let Q=A[0],B=A[1]/100,Y=A[2]/100,J=Math.max(Y,0.01),C,X;X=(2-B)*Y;let G=(2-B)*J;return C=B*J,C/=G<=1?G:2-G,C=C||0,X/=2,[Q,C*100,X*100]};aA.hwb.rgb=function(A){let Q=A[0]/360,B=A[1]/100,Y=A[2]/100,J=B+Y,C;if(J>1)B/=J,Y/=J;let X=Math.floor(6*Q),G=1-Y;if(C=6*Q-X,(X&1)!==0)C=1-C;let F=B+C*(G-B),W,Z,U;switch(X){default:case 6:case 0:W=G,Z=F,U=B;break;case 1:W=F,Z=G,U=B;break;case 2:W=B,Z=G,U=F;break;case 3:W=B,Z=F,U=G;break;case 4:W=F,Z=B,U=G;break;case 5:W=G,Z=B,U=F;break}return[W*255,Z*255,U*255]};aA.cmyk.rgb=function(A){let Q=A[0]/100,B=A[1]/100,Y=A[2]/100,J=A[3]/100,C=1-Math.min(1,Q*(1-J)+J),X=1-Math.min(1,B*(1-J)+J),G=1-Math.min(1,Y*(1-J)+J);return[C*255,X*255,G*255]};aA.xyz.rgb=function(A){let Q=A[0]/100,B=A[1]/100,Y=A[2]/100,J,C,X;return J=Q*3.2406+B*-1.5372+Y*-0.4986,C=Q*-0.9689+B*1.8758+Y*0.0415,X=Q*0.0557+B*-0.204+Y*1.057,J=J>0.0031308?1.055*J**0.4166666666666667-0.055:J*12.92,C=C>0.0031308?1.055*C**0.4166666666666667-0.055:C*12.92,X=X>0.0031308?1.055*X**0.4166666666666667-0.055:X*12.92,J=Math.min(Math.max(0,J),1),C=Math.min(Math.max(0,C),1),X=Math.min(Math.max(0,X),1),[J*255,C*255,X*255]};aA.xyz.lab=function(A){let Q=A[0],B=A[1],Y=A[2];Q/=95.047,B/=100,Y/=108.883,Q=Q>0.008856?Q**0.3333333333333333:7.787*Q+0.13793103448275862,B=B>0.008856?B**0.3333333333333333:7.787*B+0.13793103448275862,Y=Y>0.008856?Y**0.3333333333333333:7.787*Y+0.13793103448275862;let J=116*B-16,C=500*(Q-B),X=200*(B-Y);return[J,C,X]};aA.lab.xyz=function(A){let Q=A[0],B=A[1],Y=A[2],J,C,X;C=(Q+16)/116,J=B/500+C,X=C-Y/200;let G=C**3,F=J**3,W=X**3;return C=G>0.008856?G:(C-0.13793103448275862)/7.787,J=F>0.008856?F:(J-0.13793103448275862)/7.787,X=W>0.008856?W:(X-0.13793103448275862)/7.787,J*=95.047,C*=100,X*=108.883,[J,C,X]};aA.lab.lch=function(A){let Q=A[0],B=A[1],Y=A[2],J;if(J=Math.atan2(Y,B)*360/2/Math.PI,J<0)J+=360;let X=Math.sqrt(B*B+Y*Y);return[Q,X,J]};aA.lch.lab=function(A){let Q=A[0],B=A[1],J=A[2]/360*2*Math.PI,C=B*Math.cos(J),X=B*Math.sin(J);return[Q,C,X]};aA.rgb.ansi16=function(A,Q=null){let[B,Y,J]=A,C=Q===null?aA.rgb.hsv(A)[2]:Q;if(C=Math.round(C/50),C===0)return 30;let X=30+(Math.round(J/255)<<2|Math.round(Y/255)<<1|Math.round(B/255));if(C===2)X+=60;return X};aA.hsv.ansi16=function(A){return aA.rgb.ansi16(aA.hsv.rgb(A),A[2])};aA.rgb.ansi256=function(A){let Q=A[0],B=A[1],Y=A[2];if(Q===B&&B===Y){if(Q<8)return 16;if(Q>248)return 231;return Math.round((Q-8)/247*24)+232}return 16+36*Math.round(Q/255*5)+6*Math.round(B/255*5)+Math.round(Y/255*5)};aA.ansi16.rgb=function(A){let Q=A%10;if(Q===0||Q===7){if(A>50)Q+=3.5;return Q=Q/10.5*255,[Q,Q,Q]}let B=(~~(A>50)+1)*0.5,Y=(Q&1)*B*255,J=(Q>>1&1)*B*255,C=(Q>>2&1)*B*255;return[Y,J,C]};aA.ansi256.rgb=function(A){if(A>=232){let C=(A-232)*10+8;return[C,C,C]}A-=16;let Q,B=Math.floor(A/36)/5*255,Y=Math.floor((Q=A%36)/6)/5*255,J=Q%6/5*255;return[B,Y,J]};aA.rgb.hex=function(A){let B=(((Math.round(A[0])&255)<<16)+((Math.round(A[1])&255)<<8)+(Math.round(A[2])&255)).toString(16).toUpperCase();return"000000".substring(B.length)+B};aA.hex.rgb=function(A){let Q=A.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!Q)return[0,0,0];let B=Q[0];if(Q[0].length===3)B=B.split("").map((G)=>{return G+G}).join("");let Y=parseInt(B,16),J=Y>>16&255,C=Y>>8&255,X=Y&255;return[J,C,X]};aA.rgb.hcg=function(A){let Q=A[0]/255,B=A[1]/255,Y=A[2]/255,J=Math.max(Math.max(Q,B),Y),C=Math.min(Math.min(Q,B),Y),X=J-C,G,F;if(X<1)G=C/(1-X);else G=0;if(X<=0)F=0;else if(J===Q)F=(B-Y)/X%6;else if(J===B)F=2+(Y-Q)/X;else F=4+(Q-B)/X;return F/=6,F%=1,[F*360,X*100,G*100]};aA.hsl.hcg=function(A){let Q=A[1]/100,B=A[2]/100,Y=B<0.5?2*Q*B:2*Q*(1-B),J=0;if(Y<1)J=(B-0.5*Y)/(1-Y);return[A[0],Y*100,J*100]};aA.hsv.hcg=function(A){let Q=A[1]/100,B=A[2]/100,Y=Q*B,J=0;if(Y<1)J=(B-Y)/(1-Y);return[A[0],Y*100,J*100]};aA.hcg.rgb=function(A){let Q=A[0]/360,B=A[1]/100,Y=A[2]/100;if(B===0)return[Y*255,Y*255,Y*255];let J=[0,0,0],C=Q%1*6,X=C%1,G=1-X,F=0;switch(Math.floor(C)){case 0:J[0]=1,J[1]=X,J[2]=0;break;case 1:J[0]=G,J[1]=1,J[2]=0;break;case 2:J[0]=0,J[1]=1,J[2]=X;break;case 3:J[0]=0,J[1]=G,J[2]=1;break;case 4:J[0]=X,J[1]=0,J[2]=1;break;default:J[0]=1,J[1]=0,J[2]=G}return F=(1-B)*Y,[(B*J[0]+F)*255,(B*J[1]+F)*255,(B*J[2]+F)*255]};aA.hcg.hsv=function(A){let Q=A[1]/100,B=A[2]/100,Y=Q+B*(1-Q),J=0;if(Y>0)J=Q/Y;return[A[0],J*100,Y*100]};aA.hcg.hsl=function(A){let Q=A[1]/100,Y=A[2]/100*(1-Q)+0.5*Q,J=0;if(Y>0&&Y<0.5)J=Q/(2*Y);else if(Y>=0.5&&Y<1)J=Q/(2*(1-Y));return[A[0],J*100,Y*100]};aA.hcg.hwb=function(A){let Q=A[1]/100,B=A[2]/100,Y=Q+B*(1-Q);return[A[0],(Y-Q)*100,(1-Y)*100]};aA.hwb.hcg=function(A){let Q=A[1]/100,Y=1-A[2]/100,J=Y-Q,C=0;if(J<1)C=(Y-J)/(1-J);return[A[0],J*100,C*100]};aA.apple.rgb=function(A){return[A[0]/65535*255,A[1]/65535*255,A[2]/65535*255]};aA.rgb.apple=function(A){return[A[0]/255*65535,A[1]/255*65535,A[2]/255*65535]};aA.gray.rgb=function(A){return[A[0]/100*255,A[0]/100*255,A[0]/100*255]};aA.gray.hsl=function(A){return[0,0,A[0]]};aA.gray.hsv=aA.gray.hsl;aA.gray.hwb=function(A){return[0,100,A[0]]};aA.gray.cmyk=function(A){return[0,0,0,A[0]]};aA.gray.lab=function(A){return[A[0],0,0]};aA.gray.hex=function(A){let Q=Math.round(A[0]/100*255)&255,Y=((Q<<16)+(Q<<8)+Q).toString(16).toUpperCase();return"000000".substring(Y.length)+Y};aA.rgb.gray=function(A){return[(A[0]+A[1]+A[2])/3/255*100]}});var b8A=R((i1Y,f8A)=>{var Y3=ch();function nlQ(){let A={},Q=Object.keys(Y3);for(let B=Q.length,Y=0;Y{var lh=ch(),olQ=b8A(),n4={},tlQ=Object.keys(lh);function elQ(A){let Q=function(...B){let Y=B[0];if(Y===void 0||Y===null)return Y;if(Y.length>1)B=Y;return A(B)};if("conversion"in A)Q.conversion=A.conversion;return Q}function ApQ(A){let Q=function(...B){let Y=B[0];if(Y===void 0||Y===null)return Y;if(Y.length>1)B=Y;let J=A(B);if(typeof J==="object")for(let C=J.length,X=0;X{n4[A]={},Object.defineProperty(n4[A],"channels",{value:lh[A].channels}),Object.defineProperty(n4[A],"labels",{value:lh[A].labels});let Q=olQ(A);Object.keys(Q).forEach((Y)=>{let J=Q[Y];n4[A][Y]=ApQ(J),n4[A][Y].raw=elQ(J)})});m8A.exports=n4});var l8A=R((s1Y,c8A)=>{var s4=h8A(),C8=u8A(),d8A=["keyword","gray","hex"],ph={};for(let A of Object.keys(C8))ph[[...C8[A].labels].sort().join("")]=A;var J3={};function mY(A,Q){if(!(this instanceof mY))return new mY(A,Q);if(Q&&Q in d8A)Q=null;if(Q&&!(Q in C8))throw Error("Unknown model: "+Q);let B,Y;if(A==null)this.model="rgb",this.color=[0,0,0],this.valpha=1;else if(A instanceof mY)this.model=A.model,this.color=[...A.color],this.valpha=A.valpha;else if(typeof A==="string"){let J=s4.get(A);if(J===null)throw Error("Unable to parse color from string: "+A);this.model=J.model,Y=C8[this.model].channels,this.color=J.value.slice(0,Y),this.valpha=typeof J.value[Y]==="number"?J.value[Y]:1}else if(A.length>0){this.model=Q||"rgb",Y=C8[this.model].channels;let J=Array.prototype.slice.call(A,0,Y);this.color=ih(J,Y),this.valpha=typeof A[Y]==="number"?A[Y]:1}else if(typeof A==="number")this.model="rgb",this.color=[A>>16&255,A>>8&255,A&255],this.valpha=1;else{this.valpha=1;let J=Object.keys(A);if("alpha"in A)J.splice(J.indexOf("alpha"),1),this.valpha=typeof A.alpha==="number"?A.alpha:0;let C=J.sort().join("");if(!(C in ph))throw Error("Unable to parse color from object: "+JSON.stringify(A));this.model=ph[C];let{labels:X}=C8[this.model],G=[];for(B=0;B(A%360+360)%360),saturationl:m0("hsl",1,jY(100)),lightness:m0("hsl",2,jY(100)),saturationv:m0("hsv",1,jY(100)),value:m0("hsv",2,jY(100)),chroma:m0("hcg",1,jY(100)),gray:m0("hcg",2,jY(100)),white:m0("hwb",1,jY(100)),wblack:m0("hwb",2,jY(100)),cyan:m0("cmyk",0,jY(100)),magenta:m0("cmyk",1,jY(100)),yellow:m0("cmyk",2,jY(100)),black:m0("cmyk",3,jY(100)),x:m0("xyz",0,jY(95.047)),y:m0("xyz",1,jY(100)),z:m0("xyz",2,jY(108.833)),l:m0("lab",0,jY(100)),a:m0("lab",1),b:m0("lab",2),keyword(A){if(A!==void 0)return new mY(A);return C8[this.model].keyword(this.color)},hex(A){if(A!==void 0)return new mY(A);return s4.to.hex(this.rgb().round().color)},hexa(A){if(A!==void 0)return new mY(A);let Q=this.rgb().round().color,B=Math.round(this.valpha*255).toString(16).toUpperCase();if(B.length===1)B="0"+B;return s4.to.hex(Q)+B},rgbNumber(){let A=this.rgb().color;return(A[0]&255)<<16|(A[1]&255)<<8|A[2]&255},luminosity(){let A=this.rgb().color,Q=[];for(let[B,Y]of A.entries()){let J=Y/255;Q[B]=J<=0.04045?J/12.92:((J+0.055)/1.055)**2.4}return 0.2126*Q[0]+0.7152*Q[1]+0.0722*Q[2]},contrast(A){let Q=this.luminosity(),B=A.luminosity();if(Q>B)return(Q+0.05)/(B+0.05);return(B+0.05)/(Q+0.05)},level(A){let Q=this.contrast(A);if(Q>=7)return"AAA";return Q>=4.5?"AA":""},isDark(){let A=this.rgb().color;return(A[0]*2126+A[1]*7152+A[2]*722)/1e4<128},isLight(){return!this.isDark()},negate(){let A=this.rgb();for(let Q=0;Q<3;Q++)A.color[Q]=255-A.color[Q];return A},lighten(A){let Q=this.hsl();return Q.color[2]+=Q.color[2]*A,Q},darken(A){let Q=this.hsl();return Q.color[2]-=Q.color[2]*A,Q},saturate(A){let Q=this.hsl();return Q.color[1]+=Q.color[1]*A,Q},desaturate(A){let Q=this.hsl();return Q.color[1]-=Q.color[1]*A,Q},whiten(A){let Q=this.hwb();return Q.color[1]+=Q.color[1]*A,Q},blacken(A){let Q=this.hwb();return Q.color[2]+=Q.color[2]*A,Q},grayscale(){let A=this.rgb().color,Q=A[0]*0.3+A[1]*0.59+A[2]*0.11;return mY.rgb(Q,Q,Q)},fade(A){return this.alpha(this.valpha-this.valpha*A)},opaquer(A){return this.alpha(this.valpha+this.valpha*A)},rotate(A){let Q=this.hsl(),B=Q.color[0];return B=(B+A)%360,B=B<0?360+B:B,Q.color[0]=B,Q},mix(A,Q){if(!A||!A.rgb)throw Error('Argument to "mix" was not a Color instance, but rather an instance of '+typeof A);let B=A.rgb(),Y=this.rgb(),J=Q===void 0?0.5:Q,C=2*J-1,X=B.alpha()-Y.alpha(),G=((C*X===-1?C:(C+X)/(1+C*X))+1)/2,F=1-G;return mY.rgb(G*B.red()+F*Y.red(),G*B.green()+F*Y.green(),G*B.blue()+F*Y.blue(),B.alpha()*J+Y.alpha()*(1-J))}};for(let A of Object.keys(C8)){if(d8A.includes(A))continue;let{channels:Q}=C8[A];mY.prototype[A]=function(...B){if(this.model===A)return new mY(this);if(B.length>0)return new mY(B,A);return new mY([...YpQ(C8[this.model][A].raw(this.color)),this.valpha],A)},mY[A]=function(...B){let Y=B[0];if(typeof Y==="number")Y=ih(B,Q);return new mY(Y,A)}}function QpQ(A,Q){return Number(A.toFixed(Q))}function BpQ(A){return function(Q){return QpQ(Q,A)}}function m0(A,Q,B){A=Array.isArray(A)?A:[A];for(let Y of A)(J3[Y]||(J3[Y]=[]))[Q]=B;return A=A[0],function(Y){let J;if(Y!==void 0){if(B)Y=B(Y);return J=this[A](),J.color[Q]=Y,J}if(J=this[A]().color[Q],B)J=B(J);return J}}function jY(A){return function(Q){return Math.max(0,Math.min(A,Q))}}function YpQ(A){return Array.isArray(A)?A:[A]}function ih(A,Q){for(let B=0;B{var JpQ=l8A(),UX=j1(),p8A={multiband:"multiband","b-w":"b-w",bw:"b-w",cmyk:"cmyk",srgb:"srgb"};function CpQ(A){return this._setBackgroundColourOption("tint",A),this}function XpQ(A){return this.options.greyscale=UX.bool(A)?A:!0,this}function GpQ(A){return this.greyscale(A)}function FpQ(A){if(!UX.string(A))throw UX.invalidParameterError("colourspace","string",A);return this.options.colourspacePipeline=A,this}function WpQ(A){return this.pipelineColourspace(A)}function ZpQ(A){if(!UX.string(A))throw UX.invalidParameterError("colourspace","string",A);return this.options.colourspace=A,this}function $pQ(A){return this.toColourspace(A)}function i8A(A){if(UX.object(A)||UX.string(A)){let Q=JpQ(A);return[Q.red(),Q.green(),Q.blue(),Math.round(Q.alpha()*255)]}else throw UX.invalidParameterError("background","object or string",A)}function UpQ(A,Q){if(UX.defined(Q))this.options[A]=i8A(Q)}n8A.exports=function(A){Object.assign(A.prototype,{tint:CpQ,greyscale:XpQ,grayscale:GpQ,pipelineColourspace:FpQ,pipelineColorspace:WpQ,toColourspace:ZpQ,toColorspace:$pQ,_getBackgroundColourOption:i8A,_setBackgroundColourOption:UpQ}),A.colourspace=p8A,A.colorspace=p8A}});var a8A=R((a1Y,r8A)=>{var S1=j1(),EpQ={and:"and",or:"or",eor:"eor"};function KpQ(){return this.options.removeAlpha=!0,this}function VpQ(A){if(S1.defined(A))if(S1.number(A)&&S1.inRange(A,0,1))this.options.ensureAlpha=A;else throw S1.invalidParameterError("alpha","number between 0 and 1",A);else this.options.ensureAlpha=1;return this}function IpQ(A){let Q={red:0,green:1,blue:2,alpha:3};if(Object.keys(Q).includes(A))A=Q[A];if(S1.integer(A)&&S1.inRange(A,0,4))this.options.extractChannel=A;else throw S1.invalidParameterError("channel","integer or one of: red, green, blue, alpha",A);return this}function HpQ(A,Q){if(Array.isArray(A))A.forEach(function(B){this.options.joinChannelIn.push(this._createInputDescriptor(B,Q))},this);else this.options.joinChannelIn.push(this._createInputDescriptor(A,Q));return this}function DpQ(A){if(S1.string(A)&&S1.inArray(A,["and","or","eor"]))this.options.bandBoolOp=A;else throw S1.invalidParameterError("boolOp","one of: and, or, eor",A);return this}r8A.exports=function(A){Object.assign(A.prototype,{removeAlpha:KpQ,ensureAlpha:VpQ,extractChannel:IpQ,joinChannel:HpQ,bandbool:DpQ}),A.bool=EpQ}});var Q5A=R((o1Y,A5A)=>{var nh=u("node:path"),f=j1(),r4=sI(),o8A=new Map([["heic","heif"],["heif","heif"],["avif","avif"],["jpeg","jpeg"],["jpg","jpeg"],["jpe","jpeg"],["tile","tile"],["dz","tile"],["png","png"],["raw","raw"],["tiff","tiff"],["tif","tiff"],["webp","webp"],["gif","gif"],["jp2","jp2"],["jpx","jp2"],["j2k","jp2"],["j2c","jp2"],["jxl","jxl"]]),NpQ=/\.(jp[2x]|j2[kc])$/i,t8A=()=>Error("JP2 output requires libvips with support for OpenJPEG"),e8A=(A)=>1<<31-Math.clz32(Math.ceil(Math.log2(A)));function LpQ(A,Q){let B;if(!f.string(A))B=Error("Missing output file path");else if(f.string(this.options.input.file)&&nh.resolve(this.options.input.file)===nh.resolve(A))B=Error("Cannot use same file for input and output");else if(NpQ.test(nh.extname(A))&&!this.constructor.format.jp2k.output.file)B=t8A();if(B)if(f.fn(Q))Q(B);else return Promise.reject(B);else{this.options.fileOut=A;let Y=Error();return this._pipeline(Q,Y)}return this}function qpQ(A,Q){if(f.object(A))this._setBooleanOption("resolveWithObject",A.resolveWithObject);else if(this.options.resolveWithObject)this.options.resolveWithObject=!1;this.options.fileOut="";let B=Error();return this._pipeline(f.fn(A)?A:Q,B)}function MpQ(){return this.options.keepMetadata|=1,this}function zpQ(A){if(f.object(A))for(let[Q,B]of Object.entries(A))if(f.object(B))for(let[Y,J]of Object.entries(B))if(f.string(J))this.options.withExif[`exif-${Q.toLowerCase()}-${Y}`]=J;else throw f.invalidParameterError(`${Q}.${Y}`,"string",J);else throw f.invalidParameterError(Q,"object",B);else throw f.invalidParameterError("exif","object",A);return this.options.withExifMerge=!1,this.keepExif()}function RpQ(A){return this.withExif(A),this.options.withExifMerge=!0,this}function wpQ(){return this.options.keepMetadata|=8,this}function jpQ(A,Q){if(f.string(A))this.options.withIccProfile=A;else throw f.invalidParameterError("icc","string",A);if(this.keepIccProfile(),f.object(Q)){if(f.defined(Q.attach))if(f.bool(Q.attach)){if(!Q.attach)this.options.keepMetadata&=-9}else throw f.invalidParameterError("attach","boolean",Q.attach)}return this}function OpQ(){return this.options.keepMetadata|=2,this}function PpQ(A){if(f.string(A)&&A.length>0)this.options.withXmp=A,this.options.keepMetadata|=2;else throw f.invalidParameterError("xmp","non-empty string",A);return this}function TpQ(){return this.options.keepMetadata=31,this}function SpQ(A){if(this.keepMetadata(),this.withIccProfile("srgb"),f.object(A)){if(f.defined(A.orientation))if(f.integer(A.orientation)&&f.inRange(A.orientation,1,8))this.options.withMetadataOrientation=A.orientation;else throw f.invalidParameterError("orientation","integer between 1 and 8",A.orientation);if(f.defined(A.density))if(f.number(A.density)&&A.density>0)this.options.withMetadataDensity=A.density;else throw f.invalidParameterError("density","positive number",A.density);if(f.defined(A.icc))this.withIccProfile(A.icc);if(f.defined(A.exif))this.withExifMerge(A.exif)}return this}function kpQ(A,Q){let B=o8A.get((f.object(A)&&f.string(A.id)?A.id:A).toLowerCase());if(!B)throw f.invalidParameterError("format",`one of: ${[...o8A.keys()].join(", ")}`,A);return this[B](Q)}function _pQ(A){if(f.object(A)){if(f.defined(A.quality))if(f.integer(A.quality)&&f.inRange(A.quality,1,100))this.options.jpegQuality=A.quality;else throw f.invalidParameterError("quality","integer between 1 and 100",A.quality);if(f.defined(A.progressive))this._setBooleanOption("jpegProgressive",A.progressive);if(f.defined(A.chromaSubsampling))if(f.string(A.chromaSubsampling)&&f.inArray(A.chromaSubsampling,["4:2:0","4:4:4"]))this.options.jpegChromaSubsampling=A.chromaSubsampling;else throw f.invalidParameterError("chromaSubsampling","one of: 4:2:0, 4:4:4",A.chromaSubsampling);let Q=f.bool(A.optimizeCoding)?A.optimizeCoding:A.optimiseCoding;if(f.defined(Q))this._setBooleanOption("jpegOptimiseCoding",Q);if(f.defined(A.mozjpeg))if(f.bool(A.mozjpeg)){if(A.mozjpeg)this.options.jpegTrellisQuantisation=!0,this.options.jpegOvershootDeringing=!0,this.options.jpegOptimiseScans=!0,this.options.jpegProgressive=!0,this.options.jpegQuantisationTable=3}else throw f.invalidParameterError("mozjpeg","boolean",A.mozjpeg);let B=f.bool(A.trellisQuantization)?A.trellisQuantization:A.trellisQuantisation;if(f.defined(B))this._setBooleanOption("jpegTrellisQuantisation",B);if(f.defined(A.overshootDeringing))this._setBooleanOption("jpegOvershootDeringing",A.overshootDeringing);let Y=f.bool(A.optimizeScans)?A.optimizeScans:A.optimiseScans;if(f.defined(Y)){if(this._setBooleanOption("jpegOptimiseScans",Y),Y)this.options.jpegProgressive=!0}let J=f.number(A.quantizationTable)?A.quantizationTable:A.quantisationTable;if(f.defined(J))if(f.integer(J)&&f.inRange(J,0,8))this.options.jpegQuantisationTable=J;else throw f.invalidParameterError("quantisationTable","integer between 0 and 8",J)}return this._updateFormatOut("jpeg",A)}function vpQ(A){if(f.object(A)){if(f.defined(A.progressive))this._setBooleanOption("pngProgressive",A.progressive);if(f.defined(A.compressionLevel))if(f.integer(A.compressionLevel)&&f.inRange(A.compressionLevel,0,9))this.options.pngCompressionLevel=A.compressionLevel;else throw f.invalidParameterError("compressionLevel","integer between 0 and 9",A.compressionLevel);if(f.defined(A.adaptiveFiltering))this._setBooleanOption("pngAdaptiveFiltering",A.adaptiveFiltering);let Q=A.colours||A.colors;if(f.defined(Q))if(f.integer(Q)&&f.inRange(Q,2,256))this.options.pngBitdepth=e8A(Q);else throw f.invalidParameterError("colours","integer between 2 and 256",Q);if(f.defined(A.palette))this._setBooleanOption("pngPalette",A.palette);else if([A.quality,A.effort,A.colours,A.colors,A.dither].some(f.defined))this._setBooleanOption("pngPalette",!0);if(this.options.pngPalette){if(f.defined(A.quality))if(f.integer(A.quality)&&f.inRange(A.quality,0,100))this.options.pngQuality=A.quality;else throw f.invalidParameterError("quality","integer between 0 and 100",A.quality);if(f.defined(A.effort))if(f.integer(A.effort)&&f.inRange(A.effort,1,10))this.options.pngEffort=A.effort;else throw f.invalidParameterError("effort","integer between 1 and 10",A.effort);if(f.defined(A.dither))if(f.number(A.dither)&&f.inRange(A.dither,0,1))this.options.pngDither=A.dither;else throw f.invalidParameterError("dither","number between 0.0 and 1.0",A.dither)}}return this._updateFormatOut("png",A)}function ypQ(A){if(f.object(A)){if(f.defined(A.quality))if(f.integer(A.quality)&&f.inRange(A.quality,1,100))this.options.webpQuality=A.quality;else throw f.invalidParameterError("quality","integer between 1 and 100",A.quality);if(f.defined(A.alphaQuality))if(f.integer(A.alphaQuality)&&f.inRange(A.alphaQuality,0,100))this.options.webpAlphaQuality=A.alphaQuality;else throw f.invalidParameterError("alphaQuality","integer between 0 and 100",A.alphaQuality);if(f.defined(A.lossless))this._setBooleanOption("webpLossless",A.lossless);if(f.defined(A.nearLossless))this._setBooleanOption("webpNearLossless",A.nearLossless);if(f.defined(A.smartSubsample))this._setBooleanOption("webpSmartSubsample",A.smartSubsample);if(f.defined(A.smartDeblock))this._setBooleanOption("webpSmartDeblock",A.smartDeblock);if(f.defined(A.preset))if(f.string(A.preset)&&f.inArray(A.preset,["default","photo","picture","drawing","icon","text"]))this.options.webpPreset=A.preset;else throw f.invalidParameterError("preset","one of: default, photo, picture, drawing, icon, text",A.preset);if(f.defined(A.effort))if(f.integer(A.effort)&&f.inRange(A.effort,0,6))this.options.webpEffort=A.effort;else throw f.invalidParameterError("effort","integer between 0 and 6",A.effort);if(f.defined(A.minSize))this._setBooleanOption("webpMinSize",A.minSize);if(f.defined(A.mixed))this._setBooleanOption("webpMixed",A.mixed)}return sh(A,this.options),this._updateFormatOut("webp",A)}function hpQ(A){if(f.object(A)){if(f.defined(A.reuse))this._setBooleanOption("gifReuse",A.reuse);if(f.defined(A.progressive))this._setBooleanOption("gifProgressive",A.progressive);let Q=A.colours||A.colors;if(f.defined(Q))if(f.integer(Q)&&f.inRange(Q,2,256))this.options.gifBitdepth=e8A(Q);else throw f.invalidParameterError("colours","integer between 2 and 256",Q);if(f.defined(A.effort))if(f.number(A.effort)&&f.inRange(A.effort,1,10))this.options.gifEffort=A.effort;else throw f.invalidParameterError("effort","integer between 1 and 10",A.effort);if(f.defined(A.dither))if(f.number(A.dither)&&f.inRange(A.dither,0,1))this.options.gifDither=A.dither;else throw f.invalidParameterError("dither","number between 0.0 and 1.0",A.dither);if(f.defined(A.interFrameMaxError))if(f.number(A.interFrameMaxError)&&f.inRange(A.interFrameMaxError,0,32))this.options.gifInterFrameMaxError=A.interFrameMaxError;else throw f.invalidParameterError("interFrameMaxError","number between 0.0 and 32.0",A.interFrameMaxError);if(f.defined(A.interPaletteMaxError))if(f.number(A.interPaletteMaxError)&&f.inRange(A.interPaletteMaxError,0,256))this.options.gifInterPaletteMaxError=A.interPaletteMaxError;else throw f.invalidParameterError("interPaletteMaxError","number between 0.0 and 256.0",A.interPaletteMaxError);if(f.defined(A.keepDuplicateFrames))if(f.bool(A.keepDuplicateFrames))this._setBooleanOption("gifKeepDuplicateFrames",A.keepDuplicateFrames);else throw f.invalidParameterError("keepDuplicateFrames","boolean",A.keepDuplicateFrames)}return sh(A,this.options),this._updateFormatOut("gif",A)}function gpQ(A){if(!this.constructor.format.jp2k.output.buffer)throw t8A();if(f.object(A)){if(f.defined(A.quality))if(f.integer(A.quality)&&f.inRange(A.quality,1,100))this.options.jp2Quality=A.quality;else throw f.invalidParameterError("quality","integer between 1 and 100",A.quality);if(f.defined(A.lossless))if(f.bool(A.lossless))this.options.jp2Lossless=A.lossless;else throw f.invalidParameterError("lossless","boolean",A.lossless);if(f.defined(A.tileWidth))if(f.integer(A.tileWidth)&&f.inRange(A.tileWidth,1,32768))this.options.jp2TileWidth=A.tileWidth;else throw f.invalidParameterError("tileWidth","integer between 1 and 32768",A.tileWidth);if(f.defined(A.tileHeight))if(f.integer(A.tileHeight)&&f.inRange(A.tileHeight,1,32768))this.options.jp2TileHeight=A.tileHeight;else throw f.invalidParameterError("tileHeight","integer between 1 and 32768",A.tileHeight);if(f.defined(A.chromaSubsampling))if(f.string(A.chromaSubsampling)&&f.inArray(A.chromaSubsampling,["4:2:0","4:4:4"]))this.options.jp2ChromaSubsampling=A.chromaSubsampling;else throw f.invalidParameterError("chromaSubsampling","one of: 4:2:0, 4:4:4",A.chromaSubsampling)}return this._updateFormatOut("jp2",A)}function sh(A,Q){if(f.object(A)&&f.defined(A.loop))if(f.integer(A.loop)&&f.inRange(A.loop,0,65535))Q.loop=A.loop;else throw f.invalidParameterError("loop","integer between 0 and 65535",A.loop);if(f.object(A)&&f.defined(A.delay))if(f.integer(A.delay)&&f.inRange(A.delay,0,65535))Q.delay=[A.delay];else if(Array.isArray(A.delay)&&A.delay.every(f.integer)&&A.delay.every((B)=>f.inRange(B,0,65535)))Q.delay=A.delay;else throw f.invalidParameterError("delay","integer or an array of integers between 0 and 65535",A.delay)}function xpQ(A){if(f.object(A)){if(f.defined(A.quality))if(f.integer(A.quality)&&f.inRange(A.quality,1,100))this.options.tiffQuality=A.quality;else throw f.invalidParameterError("quality","integer between 1 and 100",A.quality);if(f.defined(A.bitdepth))if(f.integer(A.bitdepth)&&f.inArray(A.bitdepth,[1,2,4,8]))this.options.tiffBitdepth=A.bitdepth;else throw f.invalidParameterError("bitdepth","1, 2, 4 or 8",A.bitdepth);if(f.defined(A.tile))this._setBooleanOption("tiffTile",A.tile);if(f.defined(A.tileWidth))if(f.integer(A.tileWidth)&&A.tileWidth>0)this.options.tiffTileWidth=A.tileWidth;else throw f.invalidParameterError("tileWidth","integer greater than zero",A.tileWidth);if(f.defined(A.tileHeight))if(f.integer(A.tileHeight)&&A.tileHeight>0)this.options.tiffTileHeight=A.tileHeight;else throw f.invalidParameterError("tileHeight","integer greater than zero",A.tileHeight);if(f.defined(A.miniswhite))this._setBooleanOption("tiffMiniswhite",A.miniswhite);if(f.defined(A.pyramid))this._setBooleanOption("tiffPyramid",A.pyramid);if(f.defined(A.xres))if(f.number(A.xres)&&A.xres>0)this.options.tiffXres=A.xres;else throw f.invalidParameterError("xres","number greater than zero",A.xres);if(f.defined(A.yres))if(f.number(A.yres)&&A.yres>0)this.options.tiffYres=A.yres;else throw f.invalidParameterError("yres","number greater than zero",A.yres);if(f.defined(A.compression))if(f.string(A.compression)&&f.inArray(A.compression,["none","jpeg","deflate","packbits","ccittfax4","lzw","webp","zstd","jp2k"]))this.options.tiffCompression=A.compression;else throw f.invalidParameterError("compression","one of: none, jpeg, deflate, packbits, ccittfax4, lzw, webp, zstd, jp2k",A.compression);if(f.defined(A.predictor))if(f.string(A.predictor)&&f.inArray(A.predictor,["none","horizontal","float"]))this.options.tiffPredictor=A.predictor;else throw f.invalidParameterError("predictor","one of: none, horizontal, float",A.predictor);if(f.defined(A.resolutionUnit))if(f.string(A.resolutionUnit)&&f.inArray(A.resolutionUnit,["inch","cm"]))this.options.tiffResolutionUnit=A.resolutionUnit;else throw f.invalidParameterError("resolutionUnit","one of: inch, cm",A.resolutionUnit)}return this._updateFormatOut("tiff",A)}function fpQ(A){return this.heif({...A,compression:"av1"})}function bpQ(A){if(f.object(A)){if(f.string(A.compression)&&f.inArray(A.compression,["av1","hevc"]))this.options.heifCompression=A.compression;else throw f.invalidParameterError("compression","one of: av1, hevc",A.compression);if(f.defined(A.quality))if(f.integer(A.quality)&&f.inRange(A.quality,1,100))this.options.heifQuality=A.quality;else throw f.invalidParameterError("quality","integer between 1 and 100",A.quality);if(f.defined(A.lossless))if(f.bool(A.lossless))this.options.heifLossless=A.lossless;else throw f.invalidParameterError("lossless","boolean",A.lossless);if(f.defined(A.effort))if(f.integer(A.effort)&&f.inRange(A.effort,0,9))this.options.heifEffort=A.effort;else throw f.invalidParameterError("effort","integer between 0 and 9",A.effort);if(f.defined(A.chromaSubsampling))if(f.string(A.chromaSubsampling)&&f.inArray(A.chromaSubsampling,["4:2:0","4:4:4"]))this.options.heifChromaSubsampling=A.chromaSubsampling;else throw f.invalidParameterError("chromaSubsampling","one of: 4:2:0, 4:4:4",A.chromaSubsampling);if(f.defined(A.bitdepth))if(f.integer(A.bitdepth)&&f.inArray(A.bitdepth,[8,10,12])){if(A.bitdepth!==8&&this.constructor.versions.heif)throw f.invalidParameterError("bitdepth when using prebuilt binaries",8,A.bitdepth);this.options.heifBitdepth=A.bitdepth}else throw f.invalidParameterError("bitdepth","8, 10 or 12",A.bitdepth)}else throw f.invalidParameterError("options","Object",A);return this._updateFormatOut("heif",A)}function mpQ(A){if(f.object(A)){if(f.defined(A.quality))if(f.integer(A.quality)&&f.inRange(A.quality,1,100))this.options.jxlDistance=A.quality>=30?0.1+(100-A.quality)*0.09:0.017666666666666667*A.quality*A.quality-1.15*A.quality+25;else throw f.invalidParameterError("quality","integer between 1 and 100",A.quality);else if(f.defined(A.distance))if(f.number(A.distance)&&f.inRange(A.distance,0,15))this.options.jxlDistance=A.distance;else throw f.invalidParameterError("distance","number between 0.0 and 15.0",A.distance);if(f.defined(A.decodingTier))if(f.integer(A.decodingTier)&&f.inRange(A.decodingTier,0,4))this.options.jxlDecodingTier=A.decodingTier;else throw f.invalidParameterError("decodingTier","integer between 0 and 4",A.decodingTier);if(f.defined(A.lossless))if(f.bool(A.lossless))this.options.jxlLossless=A.lossless;else throw f.invalidParameterError("lossless","boolean",A.lossless);if(f.defined(A.effort))if(f.integer(A.effort)&&f.inRange(A.effort,1,9))this.options.jxlEffort=A.effort;else throw f.invalidParameterError("effort","integer between 1 and 9",A.effort)}return sh(A,this.options),this._updateFormatOut("jxl",A)}function upQ(A){if(f.object(A)){if(f.defined(A.depth))if(f.string(A.depth)&&f.inArray(A.depth,["char","uchar","short","ushort","int","uint","float","complex","double","dpcomplex"]))this.options.rawDepth=A.depth;else throw f.invalidParameterError("depth","one of: char, uchar, short, ushort, int, uint, float, complex, double, dpcomplex",A.depth)}return this._updateFormatOut("raw")}function dpQ(A){if(f.object(A)){if(f.defined(A.size))if(f.integer(A.size)&&f.inRange(A.size,1,8192))this.options.tileSize=A.size;else throw f.invalidParameterError("size","integer between 1 and 8192",A.size);if(f.defined(A.overlap))if(f.integer(A.overlap)&&f.inRange(A.overlap,0,8192)){if(A.overlap>this.options.tileSize)throw f.invalidParameterError("overlap",`<= size (${this.options.tileSize})`,A.overlap);this.options.tileOverlap=A.overlap}else throw f.invalidParameterError("overlap","integer between 0 and 8192",A.overlap);if(f.defined(A.container))if(f.string(A.container)&&f.inArray(A.container,["fs","zip"]))this.options.tileContainer=A.container;else throw f.invalidParameterError("container","one of: fs, zip",A.container);if(f.defined(A.layout))if(f.string(A.layout)&&f.inArray(A.layout,["dz","google","iiif","iiif3","zoomify"]))this.options.tileLayout=A.layout;else throw f.invalidParameterError("layout","one of: dz, google, iiif, iiif3, zoomify",A.layout);if(f.defined(A.angle))if(f.integer(A.angle)&&!(A.angle%90))this.options.tileAngle=A.angle;else throw f.invalidParameterError("angle","positive/negative multiple of 90",A.angle);if(this._setBackgroundColourOption("tileBackground",A.background),f.defined(A.depth))if(f.string(A.depth)&&f.inArray(A.depth,["onepixel","onetile","one"]))this.options.tileDepth=A.depth;else throw f.invalidParameterError("depth","one of: onepixel, onetile, one",A.depth);if(f.defined(A.skipBlanks))if(f.integer(A.skipBlanks)&&f.inRange(A.skipBlanks,-1,65535))this.options.tileSkipBlanks=A.skipBlanks;else throw f.invalidParameterError("skipBlanks","integer between -1 and 255/65535",A.skipBlanks);else if(f.defined(A.layout)&&A.layout==="google")this.options.tileSkipBlanks=5;let Q=f.bool(A.center)?A.center:A.centre;if(f.defined(Q))this._setBooleanOption("tileCentre",Q);if(f.defined(A.id))if(f.string(A.id))this.options.tileId=A.id;else throw f.invalidParameterError("id","string",A.id);if(f.defined(A.basename))if(f.string(A.basename))this.options.tileBasename=A.basename;else throw f.invalidParameterError("basename","string",A.basename)}if(f.inArray(this.options.formatOut,["jpeg","png","webp"]))this.options.tileFormat=this.options.formatOut;else if(this.options.formatOut!=="input")throw f.invalidParameterError("format","one of: jpeg, png, webp",this.options.formatOut);return this._updateFormatOut("dz")}function cpQ(A){if(!f.plainObject(A))throw f.invalidParameterError("options","object",A);if(f.integer(A.seconds)&&f.inRange(A.seconds,0,3600))this.options.timeoutSeconds=A.seconds;else throw f.invalidParameterError("seconds","integer between 0 and 3600",A.seconds);return this}function lpQ(A,Q){if(!(f.object(Q)&&Q.force===!1))this.options.formatOut=A;return this}function ppQ(A,Q){if(f.bool(Q))this.options[A]=Q;else throw f.invalidParameterError(A,"boolean",Q)}function ipQ(){if(!this.options.streamOut){this.options.streamOut=!0;let A=Error();this._pipeline(void 0,A)}}function npQ(A,Q){if(typeof A==="function"){if(this._isStreamInput())this.on("finish",()=>{this._flattenBufferIn(),r4.pipeline(this.options,(B,Y,J)=>{if(B)A(f.nativeError(B,Q));else A(null,Y,J)})});else r4.pipeline(this.options,(B,Y,J)=>{if(B)A(f.nativeError(B,Q));else A(null,Y,J)});return this}else if(this.options.streamOut){if(this._isStreamInput()){if(this.once("finish",()=>{this._flattenBufferIn(),r4.pipeline(this.options,(B,Y,J)=>{if(B)this.emit("error",f.nativeError(B,Q));else this.emit("info",J),this.push(Y);this.push(null),this.on("end",()=>this.emit("close"))})}),this.streamInFinished)this.emit("finish")}else r4.pipeline(this.options,(B,Y,J)=>{if(B)this.emit("error",f.nativeError(B,Q));else this.emit("info",J),this.push(Y);this.push(null),this.on("end",()=>this.emit("close"))});return this}else if(this._isStreamInput())return new Promise((B,Y)=>{this.once("finish",()=>{this._flattenBufferIn(),r4.pipeline(this.options,(J,C,X)=>{if(J)Y(f.nativeError(J,Q));else if(this.options.resolveWithObject)B({data:C,info:X});else B(C)})})});else return new Promise((B,Y)=>{r4.pipeline(this.options,(J,C,X)=>{if(J)Y(f.nativeError(J,Q));else if(this.options.resolveWithObject)B({data:C,info:X});else B(C)})})}A5A.exports=function(A){Object.assign(A.prototype,{toFile:LpQ,toBuffer:qpQ,keepExif:MpQ,withExif:zpQ,withExifMerge:RpQ,keepIccProfile:wpQ,withIccProfile:jpQ,keepXmp:OpQ,withXmp:PpQ,keepMetadata:TpQ,withMetadata:SpQ,toFormat:kpQ,jpeg:_pQ,jp2:gpQ,png:vpQ,webp:ypQ,tiff:xpQ,avif:fpQ,heif:bpQ,jxl:mpQ,gif:hpQ,raw:upQ,tile:dpQ,timeout:cpQ,_updateFormatOut:lpQ,_setBooleanOption:ppQ,_read:ipQ,_pipeline:npQ})}});var C5A=R((t1Y,J5A)=>{var spQ=u("node:events"),C3=dI(),J5=j1(),{runtimePlatformArch:rpQ}=gh(),sJ=sI(),B5A=rpQ(),rh=sJ.libvipsVersion(),Y7=sJ.format();Y7.heif.output.alias=["avif","heic"];Y7.jpeg.output.alias=["jpe","jpg"];Y7.tiff.output.alias=["tif"];Y7.jp2k.output.alias=["j2c","j2k","jp2","jpx"];var apQ={nearest:"nearest",bilinear:"bilinear",bicubic:"bicubic",locallyBoundedBicubic:"lbb",nohalo:"nohalo",vertexSplitQuadraticBasisSpline:"vsqbs"},a4={vips:rh.semver};if(!rh.isGlobal)if(!rh.isWasm)try{a4=u(`@img/sharp-${B5A}/versions`)}catch(A){try{a4=u(`@img/sharp-libvips-${B5A}/versions`)}catch(Q){}}else try{a4=(()=>{throw new Error("Cannot require module "+"@img/sharp-wasm32/versions");})()}catch(A){}a4.sharp=yh().version;if(a4.heif&&Y7.heif)Y7.heif.input.fileSuffix=[".avif"],Y7.heif.output.alias=["avif"];function Y5A(A){if(J5.bool(A))if(A)return sJ.cache(50,20,100);else return sJ.cache(0,0,0);else if(J5.object(A))return sJ.cache(A.memory,A.files,A.items);else return sJ.cache()}Y5A(!0);function opQ(A){return sJ.concurrency(J5.integer(A)?A:null)}if(C3.familySync()===C3.GLIBC&&!sJ._isUsingJemalloc())sJ.concurrency(1);else if(C3.familySync()===C3.MUSL&&sJ.concurrency()===1024)sJ.concurrency(u("node:os").availableParallelism());var tpQ=new spQ.EventEmitter;function epQ(){return sJ.counters()}function AiQ(A){return sJ.simd(J5.bool(A)?A:null)}function QiQ(A){if(J5.object(A))if(Array.isArray(A.operation)&&A.operation.every(J5.string))sJ.block(A.operation,!0);else throw J5.invalidParameterError("operation","Array",A.operation);else throw J5.invalidParameterError("options","object",A)}function BiQ(A){if(J5.object(A))if(Array.isArray(A.operation)&&A.operation.every(J5.string))sJ.block(A.operation,!1);else throw J5.invalidParameterError("operation","Array",A.operation);else throw J5.invalidParameterError("options","object",A)}J5A.exports=function(A){A.cache=Y5A,A.concurrency=opQ,A.counters=epQ,A.simd=AiQ,A.format=Y7,A.interpolators=apQ,A.versions=a4,A.queue=tpQ,A.block=QiQ,A.unblock=BiQ}});var G5A=R((A6Y,X5A)=>{var EX=W8A();U8A()(EX);D8A()(EX);L8A()(EX);w8A()(EX);s8A()(EX);a8A()(EX);Q5A()(EX);C5A()(EX);X5A.exports=EX});var W5A=R((Q6Y,F5A)=>{function YiQ(A,Q){var B=1,Y=A.length,J=A[0],C=A[0];for(var X=1;X{var XiQ=W5A();function Z5A(A,Q,B){var Y=A.length,J=Q.arrayArgs.length,C=Q.indexArgs.length>0,X=[],G=[],F=0,W=0,Z,U;for(Z=0;Z0)X.push("var "+G.join(","));for(Z=Y-1;Z>=0;--Z)F=A[Z],X.push(["for(i",Z,"=0;i",Z,"0)X.push(["index[",W,"]-=s",W].join(""));X.push(["++index[",F,"]"].join(""))}X.push("}")}return X.join(` +`)}function GiQ(A,Q,B,Y){var J=Q.length,C=B.arrayArgs.length,X=B.blockSize,G=B.indexArgs.length>0,F=[];for(var W=0;W0;){"].join("")),F.push(["if(j",W,"<",X,"){"].join("")),F.push(["s",Q[W],"=j",W].join("")),F.push(["j",W,"=0"].join("")),F.push(["}else{s",Q[W],"=",X].join("")),F.push(["j",W,"-=",X,"}"].join("")),G)F.push(["index[",Q[W],"]=j",W].join(""));for(var W=0;W0)B=B&&Q[Y]===Q[Y-1]}if(B)return Q[0];return Q.join("")}function JBB(A,Q){var B=Q[1].length-Math.abs(A.arrayBlockIndices[0])|0,Y=Array(A.arrayArgs.length),J=Array(A.arrayArgs.length);for(var C=0;C0)I.push("shape=SS.slice(0)");if(A.indexArgs.length>0){var V=Array(B);for(var C=0;C0)K.push("var "+I.join(","));for(var C=0;C3)K.push(ux(A.pre,A,J));var z=ux(A.body,A,J),M=BBB(Z);if(M3)K.push(ux(A.post,A,J));if(A.debug)console.log("-----Generated cwise routine for ",Q,`: +`).trim()}function WiQ(A){var Q=Array(A.length),B=!0;for(var Y=0;Y0)B=B&&Q[Y]===Q[Y-1]}if(B)return Q[0];return Q.join("")}function ZiQ(A,Q){var B=Q[1].length-Math.abs(A.arrayBlockIndices[0])|0,Y=Array(A.arrayArgs.length),J=Array(A.arrayArgs.length);for(var C=0;C0)I.push("shape=SS.slice(0)");if(A.indexArgs.length>0){var V=Array(B);for(var C=0;C0)K.push("var "+I.join(","));for(var C=0;C3)K.push(ah(A.pre,A,J));var z=ah(A.body,A,J),M=FiQ(Z);if(M3)K.push(ah(A.post,A,J));if(A.debug)console.log("-----Generated cwise routine for ",Q,`: `+K.join(` `)+` -----------`);var N=[A.funcName||"unnamed","_cwise_loop_",Y[0].join("s"),"m",M,YBB(J)].join(""),q=Function(["function ",N,"(",E.join(","),"){",K.join(` -`),"} return ",N].join(""));return q()}DFA.exports=JBB});var qFA=R((kWY,LFA)=>{var CBB=NFA();function XBB(A){var Q=["'use strict'","var CACHED={}"],B=[],Y=A.funcName+"_cwise_thunk";Q.push(["return function ",Y,"(",A.shimArgs.join(","),"){"].join(""));var J=[],C=[],X=[["array",A.arrayArgs[0],".shape.slice(",Math.max(0,A.arrayBlockIndices[0]),A.arrayBlockIndices[0]<0?","+A.arrayBlockIndices[0]+")":")"].join("")],G=[],F=[];for(var W=0;W0)G.push("array"+A.arrayArgs[0]+".shape.length===array"+Z+".shape.length+"+(Math.abs(A.arrayBlockIndices[0])-Math.abs(A.arrayBlockIndices[W]))),F.push("array"+A.arrayArgs[0]+".shape[shapeIndex+"+Math.max(0,A.arrayBlockIndices[0])+"]===array"+Z+".shape[shapeIndex+"+Math.max(0,A.arrayBlockIndices[W])+"]")}if(A.arrayArgs.length>1)Q.push("if (!("+G.join(" && ")+")) throw new Error('cwise: Arrays do not all have the same dimensionality!')"),Q.push("for(var shapeIndex=array"+A.arrayArgs[0]+".shape.length-"+Math.abs(A.arrayBlockIndices[0])+"; shapeIndex-->0;) {"),Q.push("if (!("+F.join(" && ")+")) throw new Error('cwise: Arrays do not all have the same shape!')"),Q.push("}");for(var W=0;W{var $iQ=U5A();function UiQ(A){var Q=["'use strict'","var CACHED={}"],B=[],Y=A.funcName+"_cwise_thunk";Q.push(["return function ",Y,"(",A.shimArgs.join(","),"){"].join(""));var J=[],C=[],X=[["array",A.arrayArgs[0],".shape.slice(",Math.max(0,A.arrayBlockIndices[0]),A.arrayBlockIndices[0]<0?","+A.arrayBlockIndices[0]+")":")"].join("")],G=[],F=[];for(var W=0;W0)G.push("array"+A.arrayArgs[0]+".shape.length===array"+Z+".shape.length+"+(Math.abs(A.arrayBlockIndices[0])-Math.abs(A.arrayBlockIndices[W]))),F.push("array"+A.arrayArgs[0]+".shape[shapeIndex+"+Math.max(0,A.arrayBlockIndices[0])+"]===array"+Z+".shape[shapeIndex+"+Math.max(0,A.arrayBlockIndices[W])+"]")}if(A.arrayArgs.length>1)Q.push("if (!("+G.join(" && ")+")) throw new Error('cwise: Arrays do not all have the same dimensionality!')"),Q.push("for(var shapeIndex=array"+A.arrayArgs[0]+".shape.length-"+Math.abs(A.arrayBlockIndices[0])+"; shapeIndex-->0;) {"),Q.push("if (!("+F.join(" && ")+")) throw new Error('cwise: Arrays do not all have the same shape!')"),Q.push("}");for(var W=0;W{var GBB=qFA();function FBB(){this.argTypes=[],this.shimArgs=[],this.arrayArgs=[],this.arrayBlockIndices=[],this.scalarArgs=[],this.offsetArgs=[],this.offsetArgIndex=[],this.indexArgs=[],this.shapeArgs=[],this.funcName="",this.pre=null,this.body=null,this.post=null,this.debug=!1}function WBB(A){var Q=new FBB;Q.pre=A.pre,Q.body=A.body,Q.post=A.post;var B=A.args.slice(0);Q.argTypes=B;for(var Y=0;Y0)throw Error("cwise: pre() block may not reference array args");if(Y0)throw Error("cwise: post() block may not reference array args")}else if(J==="scalar")Q.scalarArgs.push(Y),Q.shimArgs.push("scalar"+Y);else if(J==="index"){if(Q.indexArgs.push(Y),Y0)throw Error("cwise: pre() block may not reference array index");if(Y0)throw Error("cwise: post() block may not reference array index")}else if(J==="shape"){if(Q.shapeArgs.push(Y),YB.length)throw Error("cwise: Too many arguments in pre() block");if(Q.body.args.length>B.length)throw Error("cwise: Too many arguments in body() block");if(Q.post.args.length>B.length)throw Error("cwise: Too many arguments in post() block");return Q.debug=!!A.printCode||!!A.debug,Q.funcName=A.funcName||"cwise",Q.blockSize=A.blockSize||64,GBB(Q)}MFA.exports=WBB});var SFA=R((CY)=>{var P9=zFA(),FR={body:"",args:[],thisVars:[],localVars:[]};function dx(A){if(!A)return FR;for(var Q=0;Q>",rrshift:">>>"};(function(){for(var A in RFA){var Q=RFA[A];CY[A]=_0({args:["array","array","array"],body:{args:["a","b","c"],body:"a=b"+Q+"c"},funcName:A}),CY[A+"eq"]=_0({args:["array","array"],body:{args:["a","b"],body:"a"+Q+"=b"},rvalue:!0,funcName:A+"eq"}),CY[A+"s"]=_0({args:["array","array","scalar"],body:{args:["a","b","s"],body:"a=b"+Q+"s"},funcName:A+"s"}),CY[A+"seq"]=_0({args:["array","scalar"],body:{args:["a","s"],body:"a"+Q+"=s"},rvalue:!0,funcName:A+"seq"})}})();var wFA={not:"!",bnot:"~",neg:"-",recip:"1.0/"};(function(){for(var A in wFA){var Q=wFA[A];CY[A]=_0({args:["array","array"],body:{args:["a","b"],body:"a="+Q+"b"},funcName:A}),CY[A+"eq"]=_0({args:["array"],body:{args:["a"],body:"a="+Q+"a"},rvalue:!0,count:2,funcName:A+"eq"})}})();var jFA={and:"&&",or:"||",eq:"===",neq:"!==",lt:"<",gt:">",leq:"<=",geq:">="};(function(){for(var A in jFA){var Q=jFA[A];CY[A]=_0({args:["array","array","array"],body:{args:["a","b","c"],body:"a=b"+Q+"c"},funcName:A}),CY[A+"s"]=_0({args:["array","array","scalar"],body:{args:["a","b","s"],body:"a=b"+Q+"s"},funcName:A+"s"}),CY[A+"eq"]=_0({args:["array","array"],body:{args:["a","b"],body:"a=a"+Q+"b"},rvalue:!0,count:2,funcName:A+"eq"}),CY[A+"seq"]=_0({args:["array","scalar"],body:{args:["a","s"],body:"a=a"+Q+"s"},rvalue:!0,count:2,funcName:A+"seq"})}})();var OFA=["abs","acos","asin","atan","ceil","cos","exp","floor","log","round","sin","sqrt","tan"];(function(){for(var A=0;Athis_s){this_s=-a}else if(a>this_s){this_s=a}",localVars:[],thisVars:["this_s"]},post:{args:[],localVars:[],thisVars:["this_s"],body:"return this_s"},funcName:"norminf"});CY.norm1=P9({args:["array"],pre:{args:[],localVars:[],thisVars:["this_s"],body:"this_s=0"},body:{args:[{name:"a",lvalue:!1,rvalue:!0,count:3}],body:"this_s+=a<0?-a:a",localVars:[],thisVars:["this_s"]},post:{args:[],localVars:[],thisVars:["this_s"],body:"return this_s"},funcName:"norm1"});CY.sup=P9({args:["array"],pre:{body:"this_h=-Infinity",args:[],thisVars:["this_h"],localVars:[]},body:{body:"if(_inline_1_arg0_>this_h)this_h=_inline_1_arg0_",args:[{name:"_inline_1_arg0_",lvalue:!1,rvalue:!0,count:2}],thisVars:["this_h"],localVars:[]},post:{body:"return this_h",args:[],thisVars:["this_h"],localVars:[]}});CY.inf=P9({args:["array"],pre:{body:"this_h=Infinity",args:[],thisVars:["this_h"],localVars:[]},body:{body:"if(_inline_1_arg0_this_v){this_v=_inline_1_arg1_;for(var _inline_1_k=0;_inline_1_k<_inline_1_arg0_.length;++_inline_1_k){this_i[_inline_1_k]=_inline_1_arg0_[_inline_1_k]}}}",args:[{name:"_inline_1_arg0_",lvalue:!1,rvalue:!0,count:2},{name:"_inline_1_arg1_",lvalue:!1,rvalue:!0,count:2}],thisVars:["this_i","this_v"],localVars:["_inline_1_k"]},post:{body:"{return this_i}",args:[],thisVars:["this_i"],localVars:[]}});CY.random=_0({args:["array"],pre:{args:[],body:"this_f=Math.random",thisVars:["this_f"]},body:{args:["a"],body:"a=this_f()",thisVars:["this_f"]},funcName:"random"});CY.assign=_0({args:["array","array"],body:{args:["a","b"],body:"a=b"},funcName:"assign"});CY.assigns=_0({args:["array","scalar"],body:{args:["a","b"],body:"a=b"},funcName:"assigns"});CY.equals=P9({args:["array","array"],pre:FR,body:{args:[{name:"x",lvalue:!1,rvalue:!0,count:1},{name:"y",lvalue:!1,rvalue:!0,count:1}],body:"if(x!==y){return false}",localVars:[],thisVars:[]},post:{args:[],localVars:[],thisVars:[],body:"return true"},funcName:"equals"})});var RWA=R((dH,Jf)=>{var LR=function(){var A="b9H79Tebbbe9ok9Geueu9Geub9Gbb9Gruuuuuuueu9Gvuuuuueu9Gduueu9Gluuuueu9Gvuuuuub9Gouuuuuub9Gluuuub9Giuuueui8AYdilveoveovrrwrrDDoDrbqqbelve9Weiiviebeoweuec;G:Qdkr:nlAo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bb8F9TW79O9V9Wt9FW9U9J9V9KW9wWVtW949c919M9MWV9mW4W2be8A9TW79O9V9Wt9FW9U9J9V9KW9wWVtW949c919M9MWVbd8F9TW79O9V9Wt9FW9U9J9V9KW9wWVtW949c919M9MWV9c9V919U9KbiE9TW79O9V9Wt9FW9U9J9V9KW9wWVtW949wWV79P9V9UblY9TW79O9V9Wt9FW9U9J9V9KW69U9KW949c919M9MWVbv8E9TW79O9V9Wt9FW9U9J9V9KW69U9KW949c919M9MWV9c9V919U9Kbo8A9TW79O9V9Wt9FW9U9J9V9KW69U9KW949wWV79P9V9UbrE9TW79O9V9Wt9FW9U9J9V9KW69U9KW949tWG91W9U9JWbwa9TW79O9V9Wt9FW9U9J9V9KW69U9KW949tWG91W9U9JW9c9V919U9KbDL9TW79O9V9Wt9FW9U9J9V9KWS9P2tWV9p9JtbqK9TW79O9V9Wt9FW9U9J9V9KWS9P2tWV9r919HtbkL9TW79O9V9Wt9FW9U9J9V9KWS9P2tWVT949WbxE9TW79O9V9Wt9F9V9Wt9P9T9P96W9wWVtW94J9H9J9OWbsa9TW79O9V9Wt9F9V9Wt9P9T9P96W9wWVtW94J9H9J9OW9ttV9P9Wbza9TW79O9V9Wt9F9V9Wt9P9T9P96W9wWVtW94SWt9J9O9sW9T9H9WbHK9TW79O9V9Wt9F79W9Ht9P9H29t9VVt9sW9T9H9WbOl79IV9RbCDwebcekdKLqN9OYdbk:Bhdhud9:8Jjjjjbc;qw9Rgr8KjjjjbcbhwdnaeTmbabcbyd;C:kjjbaoaocb9iEgDc:GeV86bbarc;adfcbcjdz:wjjjb8AdnaiTmbarc;adfadalz:vjjjb8Akarc;abfalfcbcbcjdal9RalcFe0Ez:wjjjb8Aarc;abfarc;adfalz:vjjjb8AarcUf9cb83ibarc8Wf9cb83ibarcyf9cb83ibarcaf9cb83ibarcKf9cb83ibarczf9cb83ibar9cb83iwar9cb83ibcj;abal9Uc;WFbGcjdalca0Ehqdnaicd6mbavcd9imbaDTmbadcefhkaqci2gxal2hmarc;alfclfhParc;qlfceVhsarc;qofclVhzarc;qofcKfhHarc;qofczfhOcbhAincdhCcbhodnavci6mbaH9cb83ibaO9cb83ibar9cb83i;yoar9cb83i;qoadaAfgoybbhXcbhQincbhwcbhLdninaoalfhKaoybbgYaX7aLVhLawcP0meaKhoaYhXawcefgwaQfai6mbkkcbhXarc;qofhwincwh8AcwhEdnaLaX93gocFeGg3cs0mbclhEa3ci0mba3cb9hcethEkdnaocw4cFeGg3cs0mbclh8Aa3ci0mba3cb9hceth8Aka8AaEfh3awydbh5cwh8AcwhEdnaocz4cFeGg8Ecs0mbclhEa8Eci0mba8Ecb9hcethEka3a5fh3dnaocFFFFb0mbclh8AaocFFF8F0mbaocFFFr0ceth8Akawa3aEfa8AfBdbawclfhwaXcefgXcw9hmbkaKhoaYhXaQczfgQai6mbkcbhocehwazhLinawaoaLydbarc;qofaocdtfydb6EhoaLclfhLawcefgwcw9hmbkcihCkcbh3arc;qlfcbcjdz:wjjjb8Aarc;alfcwfcbBdbar9cb83i;alaoclth8Fadhaaqhhakh5inarc;qlfadcba3cufgoaoa30Eal2falz:vjjjb8Aaiahaiah6Ehgdnaqaia39Ra3aqfai6EgYcsfc9WGgoaY9nmbarc;qofaYfcbaoaY9Rz:wjjjb8Akada3al2fh8Jcbh8Kina8Ka8FVcl4hQarc;alfa8Kcdtfh8LaAh8Mcbh8Nina8NaAfhwdndndndndndna8KPldebidkasa8Mc98GgLfhoa5aLfh8Aarc;qlfawc98GgLfRbbhXcwhwinaoRbbawtaXVhXaocefhoawcwfgwca9hmbkaYTmla8Ncith8Ea8JaLfhEcbhKinaERbbhLcwhoa8AhwinawRbbaotaLVhLawcefhwaocwfgoca9hmbkarc;qofaKfaLaX7aQ93a8E486bba8Aalfh8AaEalfhEaLhXaKcefgKaY9hmbxlkkaYTmia8Mc9:Ghoa8NcitcwGhEarc;qlfawceVfRbbcwtarc;qlfawc9:GfRbbVhLarc;qofhwaghXinawa5aofRbbcwtaaaofRbbVg8AaL9RgLcetaLcztcz91cs47cFFiGaE486bbaoalfhoawcefhwa8AhLa3aXcufgX9hmbxikkaYTmda8Jawfhoarc;qlfawfRbbhLarc;qofhwaghXinawaoRbbg8AaL9RgLcetaLcKtcK91cr4786bbawcefhwaoalfhoa8AhLa3aXcufgX9hmbxdkkaYTmeka8LydbhEcbhKarc;qofhoincdhLcbhwinaLaoawfRbbcb9hfhLawcefgwcz9hmbkclhXcbhwinaXaoawfRbbcd0fhXawcefgwcz9hmbkcwh8Acbhwina8AaoawfRbbcP0fh8Aawcefgwcz9hmbkaLaXaLaX6Egwa8Aawa8A6Egwczawcz6EaEfhEaoczfhoaKczfgKaY6mbka8LaEBdbka8Mcefh8Ma8Ncefg8Ncl9hmbka8Kcefg8KaC9hmbkaaamfhaahaxfhha5amfh5a3axfg3ai6mbkcbhocehwaPhLinawaoaLydbarc;alfaocdtfydb6EhoaLclfhLawcefgXhwaCaX9hmbkaraAcd4fa8FcdVaoaocdSE86bbaAclfgAal6mbkkabaefh8Kabcefhoalcd4gecbaDEhkadcefhOarc;abfceVhHcbhmdndninaiam9nmearc;qofcbcjdz:wjjjb8Aa8Kao9Rak6mdadamal2gwfhxcbh8JaOawfhzaocbakz:wjjjbghakfh5aqaiam9Ramaqfai6Egscsfgocl4cifcd4hCaoc9WGg8LThPindndndndndndndndndndnaDTmbara8Jcd4fRbbgLciGPlbedlbkasTmdaxa8Jfhoarc;abfa8JfRbbhLarc;qofhwashXinawaoRbbg8AaL9RgLcetaLcKtcK91cr4786bbawcefhwaoalfhoa8AhLaXcufgXmbxikkasTmia8JcitcwGhEarc;abfa8JceVfRbbcwtarc;abfa8Jc9:GgofRbbVhLaxaofhoarc;qofhwashXinawao8Vbbg8AaL9RgLcetaLcztcz91cs47cFFiGaE486bbawcefhwaoalfhoa8AhLaXcufgXmbxdkkaHa8Jc98GgEfhoazaEfh8Aarc;abfaEfRbbhXcwhwinaoRbbawtaXVhXaocefhoawcwfgwca9hmbkasTmbaLcl4hYa8JcitcKGh3axaEfhEcbhKinaERbbhLcwhoa8AhwinawRbbaotaLVhLawcefhwaocwfgoca9hmbkarc;qofaKfaLaX7aY93a3486bba8Aalfh8AaEalfhEaLhXaKcefgKas9hmbkkaDmbcbhoxlka8LTmbcbhodninarc;qofaofgwcwf8Pibaw8Pib:e9qTmeaoczfgoa8L9pmdxbkkdnavmbcehoxikcbhEaChKaChYinarc;qofaEfgocwf8Pibhyao8Pibh8PcdhLcbhwinaLaoawfRbbcb9hfhLawcefgwcz9hmbkclhXcbhwinaXaoawfRbbcd0fhXawcefgwcz9hmbkcwh8Acbhwina8AaoawfRbbcP0fh8Aawcefgwcz9hmbkaLaXaLaX6Egoa8Aaoa8A6Egoczaocz6EaYfhYaocucbaya8P:e9cb9sEgwaoaw6EaKfhKaEczfgEa8L9pmdxbkkaha8Jcd4fgoaoRbbcda8JcetcoGtV86bbxikdnaKas6mbaYas6mbaha8Jcd4fgoaoRbbcia8JcetcoGtV86bba8Ka59Ras6mra5arc;qofasz:vjjjbasfh5xikaKaY9phokaha8Jcd4fgwawRbbaoa8JcetcoGtV86bbka8Ka59RaC6mla5cbaCz:wjjjbgAaCfhYdndna8LmbaPhoxekdna8KaY9RcK9pmbaPhoxekaocdtc:q1jjbfcj1jjbaDEg5ydxggcetc;:FFFeGh8Fcuh3cuagtcu7cFeGhacbh8Marc;qofhLinarc;qofa8MfhQczhEdndndnagPDbeeeeeeedekcucbaQcwf8PibaQ8Pib:e9cb9sEhExekcbhoa8FhEinaEaaaLaofRbb9nfhEaocefgocz9hmbkkcih8Ecbh8Ainczhwdndndna5a8AcdtfydbgKPDbeeeeeeedekcucbaQcwf8PibaQ8Pib:e9cb9sEhwxekaKcetc;:FFFeGhwcuaKtcu7cFeGhXcbhoinawaXaLaofRbb9nfhwaocefgocz9hmbkkdndnawaE6mbaKa39hmeawaE9hmea5a8EcdtfydbcwSmeka8Ah8EawhEka8Acefg8Aci9hmbkaAa8Mco4fgoaoRbba8Ea8Mci4coGtV86bbdndndna5a8Ecdtfydbg3PDdbbbbbbbebkdncwa39Tg8ETmbcua3tcu7hwdndna3ceSmbcbh8NaLhQinaQhoa8Eh8AcbhXinaoRbbgEawcFeGgKaEaK6EaXa3tVhXaocefhoa8Acufg8AmbkaYaX86bbaQa8EfhQaYcefhYa8Na8Efg8Ncz6mbxdkkcbh8NaLhQinaQhoa8Eh8AcbhXinaoRbbgEawcFeGgKaEaK6EaXcetVhXaocefhoa8Acufg8AmbkaYaX:T9cFe:d9c:c:qj:bw9:9c:q;c1:I1e:d9c:b:c:e1z9:9ca188bbaQa8EfhQaYcefhYa8Na8Efg8Ncz6mbkkcbhoinaYaLaofRbbgX86bbaYaXawcFeG9pfhYaocefgocz9hmbxikkdna3ceSmbinaYcb86bbaYcefhYxbkkinaYcb86bbaYcefhYxbkkaYaQ8Pbb83bbaYcwfaQcwf8Pbb83bbaYczfhYka8Mczfg8Ma8L9pgomeaLczfhLa8KaY9RcK9pmbkkaoTmlaYh5aYTmlka8Jcefg8Jal9hmbkarc;abfaxascufal2falz:vjjjb8Aasamfhma5hoa5mbkcbhwxdkdna8Kao9RakalfgwcKcaaDEgLawaL0EgX9pmbcbhwxdkdnawaL9pmbaocbaXaw9Rgwz:wjjjbawfhokaoarc;adfalz:vjjjbalfhodnaDTmbaoaraez:vjjjbaefhokaoab9Rhwxekcbhwkarc;qwf8Kjjjjbawk5babaeadaialcdcbyd;C:kjjbz:bjjjbk9reduaecd4gdaefgicaaica0Eabcj;abae9Uc;WFbGcjdaeca0Egifcufai9Uae2aiadfaicl4cifcd4f2fcefkmbcbabBd;C:kjjbk:Ese5u8Jjjjjbc;ae9Rgl8Kjjjjbcbhvdnaici9UgocHfae0mbabcbyd;m:kjjbgrc;GeV86bbalc;abfcFecjez:wjjjb8AalcUfgw9cu83ibalc8WfgD9cu83ibalcyfgq9cu83ibalcafgk9cu83ibalcKfgx9cu83ibalczfgm9cu83ibal9cu83iwal9cu83ibabaefc9WfhPabcefgsaofhednaiTmbcmcsarcb9kgzEhHcbhOcbhAcbhCcbhXcbhQindnaeaP9nmbcbhvxikaQcufhvadaCcdtfgLydbhKaLcwfydbhYaLclfydbh8AcbhEdndndninalc;abfavcsGcitfgoydlh3dndndnaoydbgoaK9hmba3a8ASmekdnaoa8A9hmba3aY9hmbaEcefhExekaoaY9hmea3aK9hmeaEcdfhEkaEc870mdaXcufhvaLaEciGcx2goc;i1jjbfydbcdtfydbh3aLaoc;e1jjbfydbcdtfydbh8AaLaoc;a1jjbfydbcdtfydbhKcbhodnindnalavcsGcdtfydba39hmbaohYxdkcuhYavcufhvaocefgocz9hmbkkaOa3aOSgvaYce9iaYaH9oVgoGfhOdndndncbcsavEaYaoEgvcs9hmbarce9imba3a3aAa3cefaASgvEgAcefSmecmcsavEhvkasavaEcdtc;WeGV86bbavcs9hmea3aA9Rgvcetavc8F917hvinaeavcFb0crtavcFbGV86bbaecefheavcje6hoavcr4hvaoTmbka3hAxvkcPhvasaEcdtcPV86bba3hAkavTmiavaH9omicdhocehEaQhYxlkavcufhvaEclfgEc;ab9hmbkkdnaLceaYaOSceta8AaOSEcx2gvc;a1jjbfydbcdtfydbgKTaLavc;e1jjbfydbcdtfydbg8AceSGaLavc;i1jjbfydbcdtfydbg3cdSGaOcb9hGazGg5ce9hmbaw9cu83ibaD9cu83ibaq9cu83ibak9cu83ibax9cu83ibam9cu83ibal9cu83iwal9cu83ibcbhOkcbhEaXcufgvhodnindnalaocsGcdtfydba8A9hmbaEhYxdkcuhYaocufhoaEcefgEcz9hmbkkcbhodnindnalavcsGcdtfydba39hmbaohExdkcuhEavcufhvaocefgocz9hmbkkaOaKaOSg8EfhLdndnaYcm0mbaYcefhYxekcbcsa8AaLSgvEhYaLavfhLkdndnaEcm0mbaEcefhExekcbcsa3aLSgvEhEaLavfhLkc9:cua8EEh8FcbhvaEaYcltVgacFeGhodndndninavc:W1jjbfRbbaoSmeavcefgvcz9hmbxdkka5aKaO9havcm0VVmbasavc;WeV86bbxekasa8F86bbaeaa86bbaecefhekdna8EmbaKaA9Rgvcetavc8F917hvinaeavcFb0gocrtavcFbGV86bbavcr4hvaecefheaombkaKhAkdnaYcs9hmba8AaA9Rgvcetavc8F917hvinaeavcFb0gocrtavcFbGV86bbavcr4hvaecefheaombka8AhAkdnaEcs9hmba3aA9Rgvcetavc8F917hvinaeavcFb0gocrtavcFbGV86bbavcr4hvaecefheaombka3hAkalaXcdtfaKBdbaXcefcsGhvdndnaYPzbeeeeeeeeeeeeeebekalavcdtfa8ABdbaXcdfcsGhvkdndnaEPzbeeeeeeeeeeeeeebekalavcdtfa3BdbavcefcsGhvkcihoalc;abfaQcitfgEaKBdlaEa8ABdbaQcefcsGhYcdhEavhXaLhOxekcdhoalaXcdtfa3BdbcehEaXcefcsGhXaQhYkalc;abfaYcitfgva8ABdlava3Bdbalc;abfaQaEfcsGcitfgva3BdlavaKBdbascefhsaQaofcsGhQaCcifgCai6mbkkdnaeaP9nmbcbhvxekcbhvinaeavfavc:W1jjbfRbb86bbavcefgvcz9hmbkaeab9Ravfhvkalc;aef8KjjjjbavkZeeucbhddninadcefgdc8F0meceadtae6mbkkadcrfcFeGcr9Uci2cdfabci9U2cHfkmbcbabBd;m:kjjbk:Adewu8Jjjjjbcz9Rhlcbhvdnaicvfae0mbcbhvabcbRb;m:kjjbc;qeV86bbal9cb83iwabcefhoabaefc98fhrdnaiTmbcbhwcbhDindnaoar6mbcbskadaDcdtfydbgqalcwfawaqav9Rgvavc8F91gv7av9Rc507gwcdtfgkydb9Rgvc8E91c9:Gavcdt7awVhvinaoavcFb0gecrtavcFbGV86bbavcr4hvaocefhoaembkakaqBdbaqhvaDcefgDai9hmbkkdnaoar9nmbcbskaocbBbbaoab9RclfhvkavkBeeucbhddninadcefgdc8F0meceadtae6mbkkadcwfcFeGcr9Uab2cvfk:bvli99dui99ludnaeTmbcuadcetcuftcu7:Zhvdndncuaicuftcu7:ZgoJbbbZMgr:lJbbb9p9DTmbar:Ohwxekcjjjj94hwkcbhicbhDinalclfIdbgrJbbbbJbbjZalIdbgq:lar:lMalcwfIdbgk:lMgr:varJbbbb9BEgrNhxaqarNhrdndnakJbbbb9GTmbaxhqxekJbbjZar:l:tgqaq:maxJbbbb9GEhqJbbjZax:l:tgxax:marJbbbb9GEhrkdndnalcxfIdbgxJbbj:;axJbbj:;9GEgkJbbjZakJbbjZ9FEavNJbbbZJbbb:;axJbbbb9GEMgx:lJbbb9p9DTmbax:Ohmxekcjjjj94hmkdndnaqJbbj:;aqJbbj:;9GEgxJbbjZaxJbbjZ9FEaoNJbbbZJbbb:;aqJbbbb9GEMgq:lJbbb9p9DTmbaq:OhPxekcjjjj94hPkdndnarJbbj:;arJbbj:;9GEgqJbbjZaqJbbjZ9FEaoNJbbbZJbbb:;arJbbbb9GEMgr:lJbbb9p9DTmbar:Ohsxekcjjjj94hskdndnadcl9hmbabaifgzas86bbazcifam86bbazcdfaw86bbazcefaP86bbxekabaDfgzas87ebazcofam87ebazclfaw87ebazcdfaP87ebkalczfhlaiclfhiaDcwfhDaecufgembkkk;hlld99eud99eudnaeTmbdndncuaicuftcu7:ZgvJbbbZMgo:lJbbb9p9DTmbao:Ohixekcjjjj94hikaic;8FiGhrinabcofcicdalclfIdb:lalIdb:l9EgialcwfIdb:lalaicdtfIdb:l9EEgialcxfIdb:lalaicdtfIdb:l9EEgiarV87ebdndnJbbj:;JbbjZalaicdtfIdbJbbbb9DEgoalaicd7cdtfIdbJ;Zl:1ZNNgwJbbj:;awJbbj:;9GEgDJbbjZaDJbbjZ9FEavNJbbbZJbbb:;awJbbbb9GEMgw:lJbbb9p9DTmbaw:Ohqxekcjjjj94hqkabcdfaq87ebdndnalaicefciGcdtfIdbJ;Zl:1ZNaoNgwJbbj:;awJbbj:;9GEgDJbbjZaDJbbjZ9FEavNJbbbZJbbb:;awJbbbb9GEMgw:lJbbb9p9DTmbaw:Ohqxekcjjjj94hqkabaq87ebdndnaoalaicufciGcdtfIdbJ;Zl:1ZNNgoJbbj:;aoJbbj:;9GEgwJbbjZawJbbjZ9FEavNJbbbZJbbb:;aoJbbbb9GEMgo:lJbbb9p9DTmbao:Ohixekcjjjj94hikabclfai87ebabcwfhbalczfhlaecufgembkkk;3viDue99eu8Jjjjjbcjd9Rgo8Kjjjjbadcd4hrdndndndnavcd9hmbadcl6meaohwarhDinawc:CuBdbawclfhwaDcufgDmbkaeTmiadcl6mdarcdthqalhkcbhxinaohwakhDarhminawawydbgPcbaDIdbgs:8cL4cFeGc:cufasJbbbb9BEgzaPaz9kEBdbaDclfhDawclfhwamcufgmmbkakaqfhkaxcefgxaeSmixbkkaeTmdxekaeTmekarcdthkavce9hhqadcl6hdcbhxindndndnaqmbadmdc:CuhDalhwarhminaDcbawIdbgs:8cL4cFeGc:cufasJbbbb9BEgPaDaP9kEhDawclfhwamcufgmmbxdkkc:CuhDdndnavPleddbdkadmdaohwalhmarhPinawcbamIdbgs:8cL4cFeGgzc;:bazc;:b0Ec:cufasJbbbb9BEBdbamclfhmawclfhwaPcufgPmbxdkkadmecbhwarhminaoawfcbalawfIdbgs:8cL4cFeGgPc8AaPc8A0Ec:cufasJbbbb9BEBdbawclfhwamcufgmmbkkadmbcbhwarhPinaDhmdnavceSmbaoawfydbhmkdndnalawfIdbgscjjj;8iamai9RcefgmcLt9R::NJbbbZJbbb:;asJbbbb9GEMgs:lJbbb9p9DTmbas:Ohzxekcjjjj94hzkabawfazcFFFrGamcKtVBdbawclfhwaPcufgPmbkkabakfhbalakfhlaxcefgxae9hmbkkaocjdf8Kjjjjbk;YqdXui998Jjjjjbc:qd9Rgv8Kjjjjbavc:Sefcbc;Kbz:wjjjb8AcbhodnadTmbcbhoaiTmbdndnabaeSmbaehrxekavcuadcdtgwadcFFFFi0Ecbyd;u:kjjbHjjjjbbgrBd:SeavceBd:mdaraeawz:vjjjb8Akavc:GefcwfcbBdbav9cb83i:Geavc:Gefaradaiavc:Sefz:ojjjbavyd:GehDadci9Ugqcbyd;u:kjjbHjjjjbbheavc:Sefavyd:mdgkcdtfaeBdbavakcefgwBd:mdaecbaqz:wjjjbhxavc:SefawcdtfcuaicdtaicFFFFi0Ecbyd;u:kjjbHjjjjbbgmBdbavakcdfgPBd:mdalc;ebfhsaDheamhwinawalIdbasaeydbgzcwazcw6EcdtfIdbMUdbaeclfheawclfhwaicufgimbkavc:SefaPcdtfcuaqcdtadcFFFF970Ecbyd;u:kjjbHjjjjbbgPBdbdnadci6mbarheaPhwaqhiinawamaeydbcdtfIdbamaeclfydbcdtfIdbMamaecwfydbcdtfIdbMUdbaecxfheawclfhwaicufgimbkkakcifhoalc;ebfhHavc;qbfhOavheavyd:KehAavyd:OehCcbhzcbhwcbhXcehQinaehLcihkarawci2gKcdtfgeydbhsaeclfydbhdabaXcx2fgicwfaecwfydbgYBdbaiclfadBdbaiasBdbaxawfce86bbaOaYBdwaOadBdlaOasBdbaPawcdtfcbBdbdnazTmbcihkaLhiinaOakcdtfaiydbgeBdbakaeaY9haeas9haead9hGGfhkaiclfhiazcufgzmbkkaXcefhXcbhzinaCaAarazaKfcdtfydbcdtgifydbcdtfgYheaDaifgdydbgshidnasTmbdninaeydbawSmeaeclfheaicufgiTmdxbkkaeaYascdtfc98fydbBdbadadydbcufBdbkazcefgzci9hmbkdndnakTmbcuhwJbbbbh8Acbhdavyd:KehYavyd:OehKindndnaDaOadcdtfydbcdtgzfydbgembadcefhdxekadcs0hiamazfgsIdbhEasalcbadcefgdaiEcdtfIdbaHaecwaecw6EcdtfIdbMg3Udba3aE:th3aecdthiaKaYazfydbcdtfheinaPaeydbgzcdtfgsa3asIdbMgEUdbaEa8Aa8AaE9DgsEh8AazawasEhwaeclfheaic98fgimbkkadak9hmbkawcu9hmekaQaq9pmdindnaxaQfRbbmbaQhwxdkaqaQcefgQ9hmbxikkakczakcz6EhzaOheaLhOawcu9hmbkkaocdtavc:Seffc98fhedninaoTmeaeydbcbyd;q:kjjbH:bjjjbbaec98fheaocufhoxbkkavc:qdf8Kjjjjbk;IlevucuaicdtgvaicFFFFi0Egocbyd;u:kjjbHjjjjbbhralalyd9GgwcdtfarBdbalawcefBd9GabarBdbaocbyd;u:kjjbHjjjjbbhralalyd9GgocdtfarBdbalaocefBd9GabarBdlcuadcdtadcFFFFi0Ecbyd;u:kjjbHjjjjbbhralalyd9GgocdtfarBdbalaocefBd9GabarBdwabydbcbavz:wjjjb8Aadci9UhDdnadTmbabydbhoaehladhrinaoalydbcdtfgvavydbcefBdbalclfhlarcufgrmbkkdnaiTmbabydbhlabydlhrcbhvaihoinaravBdbarclfhralydbavfhvalclfhlaocufgombkkdnadci6mbabydlhrabydwhvcbhlinaecwfydbhoaeclfydbhdaraeydbcdtfgwawydbgwcefBdbavawcdtfalBdbaradcdtfgdadydbgdcefBdbavadcdtfalBdbaraocdtfgoaoydbgocefBdbavaocdtfalBdbaecxfheaDalcefgl9hmbkkdnaiTmbabydlheabydbhlinaeaeydbalydb9RBdbalclfhlaeclfheaicufgimbkkkQbabaeadaic;K1jjbz:njjjbkQbabaeadaic;m:jjjbz:njjjbk9DeeuabcFeaicdtz:wjjjbhlcbhbdnadTmbindnalaeydbcdtfgiydbcu9hmbaiabBdbabcefhbkaeclfheadcufgdmbkkabk:Vvioud9:du8Jjjjjbc;Wa9Rgl8Kjjjjbcbhvalcxfcbc;Kbz:wjjjb8AalcuadcitgoadcFFFFe0Ecbyd;u:kjjbHjjjjbbgrBdxalceBd2araeadaicez:tjjjbalcuaoadcjjjjoGEcbyd;u:kjjbHjjjjbbgwBdzadcdthednadTmbabhiinaiavBdbaiclfhiadavcefgv9hmbkkawaefhDalabBdwalawBdl9cbhqindnadTmbaq9cq9:hkarhvaDhiadheinaiav8Pibak1:NcFrG87ebavcwfhvaicdfhiaecufgembkkalclfaq:NceGcdtfydbhxalclfaq9ce98gq:NceGcdtfydbhmalc;Wbfcbcjaz:wjjjb8AaDhvadhidnadTmbinalc;Wbfav8VebcdtfgeaeydbcefBdbavcdfhvaicufgimbkkcbhvcbhiinalc;WbfavfgeydbhoaeaiBdbaoaifhiavclfgvcja9hmbkadhvdndnadTmbinalc;WbfaDamydbgicetf8VebcdtfgeaeydbgecefBdbaxaecdtfaiBdbamclfhmavcufgvmbkaq9cv9smdcbhvinabawydbcdtfavBdbawclfhwadavcefgv9hmbxdkkaq9cv9smekkclhvdninavc98Smealcxfavfydbcbyd;q:kjjbH:bjjjbbavc98fhvxbkkalc;Waf8Kjjjjbk:Jwliuo99iud9:cbhv8Jjjjjbca9Rgoczfcwfcbyd:8:kjjbBdbaocb8Pd:0:kjjb83izaocwfcbyd;i:kjjbBdbaocb8Pd;a:kjjb83ibaicd4hrdndnadmbJFFuFhwJFFuuhDJFFuuhqJFFuFhkJFFuuhxJFFuFhmxekarcdthPaehsincbhiinaoczfaifgzasaifIdbgwazIdbgDaDaw9EEUdbaoaifgzawazIdbgDaDaw9DEUdbaiclfgicx9hmbkasaPfhsavcefgvad9hmbkaoIdKhDaoIdwhwaoIdChqaoIdlhkaoIdzhxaoIdbhmkdnadTmbJbbbbJbFu9hJbbbbamax:tgmamJbbbb9DEgmakaq:tgkakam9DEgkawaD:tgwawak9DEgw:vawJbbbb9BEhwdnalmbarcdthoindndnaeclfIdbaq:tawNJbbbZMgk:lJbbb9p9DTmbak:Ohixekcjjjj94hikai:S9cC:ghHdndnaeIdbax:tawNJbbbZMgk:lJbbb9p9DTmbak:Ohixekcjjjj94hikaHai:S:ehHdndnaecwfIdbaD:tawNJbbbZMgk:lJbbb9p9DTmbak:Ohixekcjjjj94hikabaHai:T9cy:g:e83ibaeaofheabcwfhbadcufgdmbxdkkarcdthoindndnaeIdbax:tawNJbbbZMgk:lJbbb9p9DTmbak:Ohixekcjjjj94hikai:SgH9ca:gaH9cz:g9cjjj;4s:d:eaH9cFe:d:e9cF:bj;4:pj;ar:d9c:bd9:9c:p;G:d;4j:E;ar:d9cH9:9c;d;H:W:y:m:g;d;Hb:d9cv9:9c;j:KM;j:KM;j:Kd:dhOdndnaeclfIdbaq:tawNJbbbZMgk:lJbbb9p9DTmbak:Ohixekcjjjj94hikai:SgH9ca:gaH9cz:g9cjjj;4s:d:eaH9cFe:d:e9cF:bj;4:pj;ar:d9c:bd9:9c:p;G:d;4j:E;ar:d9cH9:9c;d;H:W:y:m:g;d;Hb:d9cq9:9cM;j:KM;j:KM;jl:daO:ehOdndnaecwfIdbaD:tawNJbbbZMgk:lJbbb9p9DTmbak:Ohixekcjjjj94hikabaOai:SgH9ca:gaH9cz:g9cjjj;4s:d:eaH9cFe:d:e9cF:bj;4:pj;ar:d9c:bd9:9c:p;G:d;4j:E;ar:d9cH9:9c;d;H:W:y:m:g;d;Hb:d9cC9:9c:KM;j:KM;j:KMD:d:e83ibaeaofheabcwfhbadcufgdmbkkk9teiucbcbyd;y:kjjbgeabcifc98GfgbBd;y:kjjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik;teeeudndnaeabVciGTmbabhixekdndnadcz9pmbabhixekabhiinaiaeydbBdbaiaeydlBdlaiaeydwBdwaiaeydxBdxaeczfheaiczfhiadc9Wfgdcs0mbkkadcl6mbinaiaeydbBdbaeclfheaiclfhiadc98fgdci0mbkkdnadTmbinaiaeRbb86bbaicefhiaecefheadcufgdmbkkabk:3eedudndnabciGTmbabhixekaecFeGc:b:c:ew2hldndnadcz9pmbabhixekabhiinaialBdxaialBdwaialBdlaialBdbaiczfhiadc9Wfgdcs0mbkkadcl6mbinaialBdbaiclfhiadc98fgdci0mbkkdnadTmbinaiae86bbaicefhiadcufgdmbkkabk9teiucbcbyd;y:kjjbgeabcrfc94GfgbBd;y:kjjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik9:eiuZbhedndncbyd;y:kjjbgdaecztgi9nmbcuheadai9RcFFifcz4nbcuSmekadhekcbabae9Rcifc98Gcbyd;y:kjjbfgdBd;y:kjjbdnadZbcztge9nmbadae9RcFFifcz4nb8Akkk;Qddbcjwk;mdbbbbdbbblbbbwbbbbbbbebbbdbbblbbbwbbbbbbbbbbbbbbbb4:h9w9N94:P:gW:j9O:ye9Pbbbbbbebbbdbbbebbbdbbbbbbbdbbbbbbbebbbbbbb:l29hZ;69:9kZ;N;76Z;rg97Z;z;o9xZ8J;B85Z;:;u9yZ;b;k9HZ:2;Z9DZ9e:l9mZ59A8KZ:r;T3Z:A:zYZ79OHZ;j4::8::Y:D9V8:bbbb9s:49:Z8R:hBZ9M9M;M8:L;z;o8:;8:PG89q;x:J878R:hQ8::M:B;e87bbbbbbjZbbjZbbjZ:E;V;N8::Y:DsZ9i;H;68:xd;R8:;h0838:;W:NoZbbbb:WV9O8:uf888:9i;H;68:9c9G;L89;n;m9m89;D8Ko8:bbbbf:8tZ9m836ZS:2AZL;zPZZ818EZ9e:lxZ;U98F8:819E;68:FFuuFFuuFFuuFFuFFFuFFFuFbc;mqkzebbbebbbdbbb9G:vbb",Q=new Uint8Array([32,0,65,2,1,106,34,33,3,128,11,4,13,64,6,253,10,7,15,116,127,5,8,12,40,16,19,54,20,9,27,255,113,17,42,67,24,23,146,148,18,14,22,45,70,69,56,114,101,21,25,63,75,136,108,28,118,29,73,115]);if(typeof WebAssembly!=="object")return{supported:!1};var B,Y=WebAssembly.instantiate(J(A),{}).then(function(E){B=E.instance,B.exports.__wasm_call_ctors(),B.exports.meshopt_encodeVertexVersion(0),B.exports.meshopt_encodeIndexVersion(1)});function J(E){var K=new Uint8Array(E.length);for(var I=0;I96?V-97:V>64?V-39:V+4}var H=0;for(var I=0;I=3),F(B.exports.meshopt_spatialSortRemap,E,E.length/K,K*4)},encodeVertexBuffer:function(E,K,I){C(I>0&&I<=256),C(I%4==0);var V=B.exports.meshopt_encodeVertexBufferBound(K,I);return W(B.exports.meshopt_encodeVertexBuffer,V,E,K,I)},encodeIndexBuffer:function(E,K,I){C(I==2||I==4),C(K%3==0);var V=U(E,I),H=B.exports.meshopt_encodeIndexBufferBound(K,Z(V)+1);return W(B.exports.meshopt_encodeIndexBuffer,H,V,K,4)},encodeIndexSequence:function(E,K,I){C(I==2||I==4);var V=U(E,I),H=B.exports.meshopt_encodeIndexSequenceBound(K,Z(V)+1);return W(B.exports.meshopt_encodeIndexSequence,H,V,K,4)},encodeGltfBuffer:function(E,K,I,V){var H={ATTRIBUTES:this.encodeVertexBuffer,TRIANGLES:this.encodeIndexBuffer,INDICES:this.encodeIndexSequence};return C(H[V]),H[V](E,K,I)},encodeFilterOct:function(E,K,I,V){return C(I==4||I==8),C(V>=1&&V<=16),$(B.exports.meshopt_encodeFilterOct,E,K,I,V,16)},encodeFilterQuat:function(E,K,I,V){return C(I==8),C(V>=4&&V<=16),$(B.exports.meshopt_encodeFilterQuat,E,K,I,V,16)},encodeFilterExp:function(E,K,I,V,H){C(I>0&&I%4==0),C(V>=1&&V<=24);var D={Separate:0,SharedVector:1,SharedComponent:2,Clamped:3};return $(B.exports.meshopt_encodeFilterExp,E,K,I,V,I,H?D[H]:1)}}}();if(typeof dH==="object"&&typeof Jf==="object")Jf.exports=LR;else if(typeof define==="function"&&define.amd)define([],function(){return LR});else if(typeof dH==="object")dH.MeshoptEncoder=LR;else(typeof self<"u"?self:dH).MeshoptEncoder=LR});var wWA=R((cH,Cf)=>{var qR=function(){var A="b9H79Tebbbe8Fv9Gbb9Gvuuuuueu9Giuuub9Geueu9Giuuueuikqbeeedddillviebeoweuec:W:Odkr;leDo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bb8A9TW79O9V9Wt9F9KW9J9V9KW9wWVtW949c919M9MWVbeY9TW79O9V9Wt9F9KW9J9V9KW69U9KW949c919M9MWVbdE9TW79O9V9Wt9F9KW9J9V9KW69U9KW949tWG91W9U9JWbiL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9p9JtblK9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9r919HtbvL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWVT949Wbol79IV9Rbrq:S86qdbk;jYi5ud9:du8Jjjjjbcj;kb9Rgv8Kjjjjbc9:hodnalTmbcuhoaiRbbgrc;WeGc:Ge9hmbarcsGgwce0mbc9:hoalcufadcd4cbawEgDadfgrcKcaawEgqaraq0Egk6mbaicefhxcj;abad9Uc;WFbGcjdadca0EhmaialfgPar9Rgoadfhsavaoadz1jjjbgzceVhHcbhOdndninaeaO9nmeaPax9RaD6mdamaeaO9RaOamfgoae6EgAcsfglc9WGhCabaOad2fhXaAcethQaxaDfhiaOaeaoaeao6E9RhLalcl4cifcd4hKazcj;cbfaAfhYcbh8AazcjdfhEaHh3incbhodnawTmbaxa8Acd4fRbbhokaocFeGh5cbh8Eazcj;cbfhqinaih8Fdndndndna5a8Ecet4ciGgoc9:fPdebdkaPa8F9RaA6mrazcj;cbfa8EaA2fa8FaAz1jjjb8Aa8FaAfhixdkazcj;cbfa8EaA2fcbaAz:jjjjb8Aa8FhixekaPa8F9RaK6mva8FaKfhidnaCTmbaPai9RcK6mbaocdtc:q1jjbfcj1jjbawEhaczhrcbhlinargoc9Wfghaqfhrdndndndndndnaaa8Fahco4fRbbalcoG4ciGcdtfydbPDbedvivvvlvkar9cb83bbarcwf9cb83bbxlkarcbaiRbdai8Xbb9c:c:qj:bw9:9c:q;c1:I1e:d9c:b:c:e1z9:gg9cjjjjjz:dg8J9qE86bbaqaofgrcGfag9c8F1:NghcKtc8F91aicdfa8J9c8N1:Nfg8KRbbG86bbarcVfcba8KahcjeGcr4fghRbbag9cjjjjjl:dg8J9qE86bbarc7fcbaha8J9c8L1:NfghRbbag9cjjjjjd:dg8J9qE86bbarctfcbaha8J9c8K1:NfghRbbag9cjjjjje:dg8J9qE86bbarc91fcbaha8J9c8J1:NfghRbbag9cjjjj;ab:dg8J9qE86bbarc4fcbaha8J9cg1:NfghRbbag9cjjjja:dg8J9qE86bbarc93fcbaha8J9ch1:NfghRbbag9cjjjjz:dgg9qE86bbarc94fcbahag9ca1:NfghRbbai8Xbe9c:c:qj:bw9:9c:q;c1:I1e:d9c:b:c:e1z9:gg9cjjjjjz:dg8J9qE86bbarc95fag9c8F1:NgicKtc8F91aha8J9c8N1:NfghRbbG86bbarc96fcbahaicjeGcr4fgiRbbag9cjjjjjl:dg8J9qE86bbarc97fcbaia8J9c8L1:NfgiRbbag9cjjjjjd:dg8J9qE86bbarc98fcbaia8J9c8K1:NfgiRbbag9cjjjjje:dg8J9qE86bbarc99fcbaia8J9c8J1:NfgiRbbag9cjjjj;ab:dg8J9qE86bbarc9:fcbaia8J9cg1:NfgiRbbag9cjjjja:dg8J9qE86bbarcufcbaia8J9ch1:NfgiRbbag9cjjjjz:dgg9qE86bbaiag9ca1:NfhixikaraiRblaiRbbghco4g8Ka8KciSg8KE86bbaqaofgrcGfaiclfa8Kfg8KRbbahcl4ciGg8La8LciSg8LE86bbarcVfa8Ka8Lfg8KRbbahcd4ciGg8La8LciSg8LE86bbarc7fa8Ka8Lfg8KRbbahciGghahciSghE86bbarctfa8Kahfg8KRbbaiRbeghco4g8La8LciSg8LE86bbarc91fa8Ka8Lfg8KRbbahcl4ciGg8La8LciSg8LE86bbarc4fa8Ka8Lfg8KRbbahcd4ciGg8La8LciSg8LE86bbarc93fa8Ka8Lfg8KRbbahciGghahciSghE86bbarc94fa8Kahfg8KRbbaiRbdghco4g8La8LciSg8LE86bbarc95fa8Ka8Lfg8KRbbahcl4ciGg8La8LciSg8LE86bbarc96fa8Ka8Lfg8KRbbahcd4ciGg8La8LciSg8LE86bbarc97fa8Ka8Lfg8KRbbahciGghahciSghE86bbarc98fa8KahfghRbbaiRbigico4g8Ka8KciSg8KE86bbarc99faha8KfghRbbaicl4ciGg8Ka8KciSg8KE86bbarc9:faha8KfghRbbaicd4ciGg8Ka8KciSg8KE86bbarcufaha8KfgrRbbaiciGgiaiciSgiE86bbaraifhixdkaraiRbwaiRbbghcl4g8Ka8KcsSg8KE86bbaqaofgrcGfaicwfa8Kfg8KRbbahcsGghahcsSghE86bbarcVfa8KahfghRbbaiRbeg8Kcl4g8La8LcsSg8LE86bbarc7faha8LfghRbba8KcsGg8Ka8KcsSg8KE86bbarctfaha8KfghRbbaiRbdg8Kcl4g8La8LcsSg8LE86bbarc91faha8LfghRbba8KcsGg8Ka8KcsSg8KE86bbarc4faha8KfghRbbaiRbig8Kcl4g8La8LcsSg8LE86bbarc93faha8LfghRbba8KcsGg8Ka8KcsSg8KE86bbarc94faha8KfghRbbaiRblg8Kcl4g8La8LcsSg8LE86bbarc95faha8LfghRbba8KcsGg8Ka8KcsSg8KE86bbarc96faha8KfghRbbaiRbvg8Kcl4g8La8LcsSg8LE86bbarc97faha8LfghRbba8KcsGg8Ka8KcsSg8KE86bbarc98faha8KfghRbbaiRbog8Kcl4g8La8LcsSg8LE86bbarc99faha8LfghRbba8KcsGg8Ka8KcsSg8KE86bbarc9:faha8KfghRbbaiRbrgicl4g8Ka8KcsSg8KE86bbarcufaha8KfgrRbbaicsGgiaicsSgiE86bbaraifhixekarai8Pbb83bbarcwfaicwf8Pbb83bbaiczfhikdnaoaC9pmbalcdfhlaoczfhraPai9RcL0mekkaoaC6moaimexokaCmva8FTmvkaqaAfhqa8Ecefg8Ecl9hmbkdndndndnawTmbasa8Acd4fRbbgociGPlbedrbkaATmdaza8Afh8Fazcj;cbfhhcbh8EaEhaina8FRbbhraahocbhlinaoahalfRbbgqce4cbaqceG9R7arfgr86bbaoadfhoaAalcefgl9hmbkaacefhaa8Fcefh8FahaAfhha8Ecefg8Ecl9hmbxikkaATmeaza8Afhaazcj;cbfhhcbhoceh8EaYh8FinaEaofhlaa8Vbbhrcbhoinala8FaofRbbcwtahaofRbbgqVc;:FiGce4cbaqceG9R7arfgr87bbaladfhlaLaocefgofmbka8FaQfh8FcdhoaacdfhaahaQfhha8EceGhlcbh8EalmbxdkkaATmbcbaocl49Rh8Eaza8AfRbbhqcwhoa3hlinalRbbaotaqVhqalcefhlaocwfgoca9hmbkcbhhaEh8FaYhainazcj;cbfahfRbbhrcwhoaahlinalRbbaotarVhralaAfhlaocwfgoca9hmbkara8E93aq7hqcbhoa8Fhlinalaqao486bbalcefhlaocwfgoca9hmbka8Fadfh8FaacefhaahcefghaA9hmbkkaEclfhEa3clfh3a8Aclfg8Aad6mbkaXazcjdfaAad2z1jjjb8AazazcjdfaAcufad2fadz1jjjb8AaAaOfhOaihxaimbkc9:hoxdkcbc99aPax9RakSEhoxekc9:hokavcj;kbf8Kjjjjbaok:XseHu8Jjjjjbc;ae9Rgv8Kjjjjbc9:hodnaeci9UgrcHfal0mbcuhoaiRbbgwc;WeGc;Ge9hmbawcsGgDce0mbavc;abfcFecjez:jjjjb8AavcUf9cu83ibavc8Wf9cu83ibavcyf9cu83ibavcaf9cu83ibavcKf9cu83ibavczf9cu83ibav9cu83iwav9cu83ibaialfc9WfhqaicefgwarfhldnaeTmbcmcsaDceSEhkcbhxcbhmcbhrcbhicbhoindnalaq9nmbc9:hoxikdndnawRbbgDc;Ve0mbavc;abfaoaDcu7gPcl4fcsGcitfgsydlhzasydbhHdndnaDcsGgsak9pmbavaiaPfcsGcdtfydbaxasEhDaxasTgOfhxxekdndnascsSmbcehOasc987asamffcefhDxekalcefhDal8SbbgscFeGhPdndnascu9mmbaDhlxekalcvfhlaPcFbGhPcrhsdninaD8SbbgOcFbGastaPVhPaOcu9kmeaDcefhDascrfgsc8J9hmbxdkkaDcefhlkcehOaPce4cbaPceG9R7amfhDkaDhmkavc;abfaocitfgsaDBdbasazBdlavaicdtfaDBdbavc;abfaocefcsGcitfgsaHBdbasaDBdlaocdfhoaOaifhidnadcd9hmbabarcetfgsaH87ebasclfaD87ebascdfaz87ebxdkabarcdtfgsaHBdbascwfaDBdbasclfazBdbxekdnaDcpe0mbaxcefgOavaiaqaDcsGfRbbgscl49RcsGcdtfydbascz6gPEhDavaias9RcsGcdtfydbaOaPfgzascsGgOEhsaOThOdndnadcd9hmbabarcetfgHax87ebaHclfas87ebaHcdfaD87ebxekabarcdtfgHaxBdbaHcwfasBdbaHclfaDBdbkavaicdtfaxBdbavc;abfaocitfgHaDBdbaHaxBdlavaicefgicsGcdtfaDBdbavc;abfaocefcsGcitfgHasBdbaHaDBdlavaiaPfgicsGcdtfasBdbavc;abfaocdfcsGcitfgDaxBdbaDasBdlaocifhoaiaOfhiazaOfhxxekaxcbalRbbgHEgAaDc;:eSgDfhzaHcsGhCaHcl4hXdndnaHcs0mbazcefhOxekazhOavaiaX9RcsGcdtfydbhzkdndnaCmbaOcefhxxekaOhxavaiaH9RcsGcdtfydbhOkdndnaDTmbalcefhDxekalcdfhDal8SbegPcFeGhsdnaPcu9kmbalcofhAascFbGhscrhldninaD8SbbgPcFbGaltasVhsaPcu9kmeaDcefhDalcrfglc8J9hmbkaAhDxekaDcefhDkasce4cbasceG9R7amfgmhAkdndnaXcsSmbaDhsxekaDcefhsaD8SbbglcFeGhPdnalcu9kmbaDcvfhzaPcFbGhPcrhldninas8SbbgDcFbGaltaPVhPaDcu9kmeascefhsalcrfglc8J9hmbkazhsxekascefhskaPce4cbaPceG9R7amfgmhzkdndnaCcsSmbashlxekascefhlas8SbbgDcFeGhPdnaDcu9kmbascvfhOaPcFbGhPcrhDdninal8SbbgscFbGaDtaPVhPascu9kmealcefhlaDcrfgDc8J9hmbkaOhlxekalcefhlkaPce4cbaPceG9R7amfgmhOkdndnadcd9hmbabarcetfgDaA87ebaDclfaO87ebaDcdfaz87ebxekabarcdtfgDaABdbaDcwfaOBdbaDclfazBdbkavc;abfaocitfgDazBdbaDaABdlavaicdtfaABdbavc;abfaocefcsGcitfgDaOBdbaDazBdlavaicefgicsGcdtfazBdbavc;abfaocdfcsGcitfgDaABdbaDaOBdlavaiaHcz6aXcsSVfgicsGcdtfaOBdbaiaCTaCcsSVfhiaocifhokawcefhwaocsGhoaicsGhiarcifgrae6mbkkcbc99alaqSEhokavc;aef8Kjjjjbaok:clevu8Jjjjjbcz9Rhvdnaecvfal9nmbc9:skdnaiRbbc;:eGc;qeSmbcuskav9cb83iwaicefhoaialfc98fhrdnaeTmbdnadcdSmbcbhwindnaoar6mbc9:skaocefhlao8SbbgicFeGhddndnaicu9mmbalhoxekaocvfhoadcFbGhdcrhidninal8SbbgDcFbGaitadVhdaDcu9kmealcefhlaicrfgic8J9hmbxdkkalcefhokabawcdtfadc8Etc8F91adcd47avcwfadceGcdtVglydbfgiBdbalaiBdbawcefgwae9hmbxdkkcbhwindnaoar6mbc9:skaocefhlao8SbbgicFeGhddndnaicu9mmbalhoxekaocvfhoadcFbGhdcrhidninal8SbbgDcFbGaitadVhdaDcu9kmealcefhlaicrfgic8J9hmbxdkkalcefhokabawcetfadc8Etc8F91adcd47avcwfadceGcdtVglydbfgi87ebalaiBdbawcefgwae9hmbkkcbc99aoarSEk:Lvoeue99dud99eud99dndnadcl9hmbaeTmeindndnabcdfgd8Sbb:Yab8Sbbgi:Ygl:l:tabcefgv8Sbbgo:Ygr:l:tgwJbb;:9cawawNJbbbbawawJbbbb9GgDEgq:mgkaqaicb9iEalMgwawNakaqaocb9iEarMgqaqNMM:r:vglNJbbbZJbbb:;aDEMgr:lJbbb9p9DTmbar:Ohixekcjjjj94hikadai86bbdndnaqalNJbbbZJbbb:;aqJbbbb9GEMgq:lJbbb9p9DTmbaq:Ohdxekcjjjj94hdkavad86bbdndnawalNJbbbZJbbb:;awJbbbb9GEMgw:lJbbb9p9DTmbaw:Ohdxekcjjjj94hdkabad86bbabclfhbaecufgembxdkkaeTmbindndnabclfgd8Ueb:Yab8Uebgi:Ygl:l:tabcdfgv8Uebgo:Ygr:l:tgwJb;:FSawawNJbbbbawawJbbbb9GgDEgq:mgkaqaicb9iEalMgwawNakaqaocb9iEarMgqaqNMM:r:vglNJbbbZJbbb:;aDEMgr:lJbbb9p9DTmbar:Ohixekcjjjj94hikadai87ebdndnaqalNJbbbZJbbb:;aqJbbbb9GEMgq:lJbbb9p9DTmbaq:Ohdxekcjjjj94hdkavad87ebdndnawalNJbbbZJbbb:;awJbbbb9GEMgw:lJbbb9p9DTmbaw:Ohdxekcjjjj94hdkabad87ebabcwfhbaecufgembkkk;oiliui99iue99dnaeTmbcbhiabhlindndnJ;Zl81Zalcof8UebgvciV:Y:vgoal8Ueb:YNgrJb;:FSNJbbbZJbbb:;arJbbbb9GEMgw:lJbbb9p9DTmbaw:OhDxekcjjjj94hDkalclf8Uebhqalcdf8UebhkabaiavcefciGfcetfaD87ebdndnaoak:YNgwJb;:FSNJbbbZJbbb:;awJbbbb9GEMgx:lJbbb9p9DTmbax:OhDxekcjjjj94hDkabaiavciGfgkcd7cetfaD87ebdndnaoaq:YNgoJb;:FSNJbbbZJbbb:;aoJbbbb9GEMgx:lJbbb9p9DTmbax:OhDxekcjjjj94hDkabaiavcufciGfcetfaD87ebdndnJbbjZararN:tawawN:taoaoN:tgrJbbbbarJbbbb9GE:rJb;:FSNJbbbZMgr:lJbbb9p9DTmbar:Ohvxekcjjjj94hvkabakcetfav87ebalcwfhlaiclfhiaecufgembkkk9mbdnadcd4ae2gdTmbinababydbgecwtcw91:Yaece91cjjj98Gcjjj;8if::NUdbabclfhbadcufgdmbkkk9teiucbcbyd:K1jjbgeabcifc98GfgbBd:K1jjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik;teeeudndnaeabVciGTmbabhixekdndnadcz9pmbabhixekabhiinaiaeydbBdbaiaeydlBdlaiaeydwBdwaiaeydxBdxaeczfheaiczfhiadc9Wfgdcs0mbkkadcl6mbinaiaeydbBdbaeclfheaiclfhiadc98fgdci0mbkkdnadTmbinaiaeRbb86bbaicefhiaecefheadcufgdmbkkabk:3eedudndnabciGTmbabhixekaecFeGc:b:c:ew2hldndnadcz9pmbabhixekabhiinaialBdxaialBdwaialBdlaialBdbaiczfhiadc9Wfgdcs0mbkkadcl6mbinaialBdbaiclfhiadc98fgdci0mbkkdnadTmbinaiae86bbaicefhiadcufgdmbkkabkk81dbcjwk8Kbbbbdbbblbbbwbbbbbbbebbbdbbblbbbwbbbbc:Kwkl8WNbb",Q="b9H79TebbbeKl9Gbb9Gvuuuuueu9Giuuub9Geueuikqbbebeedddilve9Weeeviebeoweuec:q:6dkr;leDo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bb8A9TW79O9V9Wt9F9KW9J9V9KW9wWVtW949c919M9MWVbdY9TW79O9V9Wt9F9KW9J9V9KW69U9KW949c919M9MWVblE9TW79O9V9Wt9F9KW9J9V9KW69U9KW949tWG91W9U9JWbvL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9p9JtboK9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9r919HtbrL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWVT949Wbwl79IV9RbDq;G9Mqlbzik9:evu8Jjjjjbcz9Rhbcbheincbhdcbhiinabcwfadfaicjuaead4ceGglE86bbaialfhiadcefgdcw9hmbkaec:q:yjjbfai86bbaecitc:q1jjbfab8Piw83ibaecefgecjd9hmbkk:183lYud97dur978Jjjjjbcj;kb9Rgv8Kjjjjbc9:hodnalTmbcuhoaiRbbgrc;WeGc:Ge9hmbarcsGgwce0mbc9:hoalcufadcd4cbawEgDadfgrcKcaawEgqaraq0Egk6mbaicefhxavaialfgmar9Rgoad;8qbbcj;abad9Uc;WFbGcjdadca0EhPdndndnadTmbaoadfhscbhzinaeaz9nmdamax9RaD6miabazad2fhHaxaDfhOaPaeaz9RazaPfae6EgAcsfgocl4cifcd4hCavcj;cbfaoc9WGgXcetfhQavcj;cbfaXci2fhLavcj;cbfaXfhKcbhYaoc;ab6h8AincbhodnawTmbaxaYcd4fRbbhokaocFeGhEcbh3avcj;cbfh5indndndndnaEa3cet4ciGgoc9:fPdebdkamaO9RaX6mwavcj;cbfa3aX2faOaX;8qbbaOaAfhOxdkavcj;cbfa3aX2fcbaX;8kbxekamaO9RaC6moaoclVcbawEhraOaCfhocbhidna8Ambamao9Rc;Gb6mbcbhlina5alfhidndndndndndnaOalco4fRbbgqciGarfPDbedibledibkaipxbbbbbbbbbbbbbbbbpklbxlkaiaopbblaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLg8Ecdp:mea8EpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9og8Fpxiiiiiiiiiiiiiiiip8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaaaoclffahc:q:yjjbfRbbfhoxikaiaopbbwaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9og8Fpxssssssssssssssssp8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaaaocwffahc:q:yjjbfRbbfhoxdkaiaopbbbpklbaoczfhoxekaiaopbbdaoRbbgacitc:q1jjbfpbibaac:q:yjjbfRbbgapsaoRbeghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPpklbaaaocdffahc:q:yjjbfRbbfhokdndndndndndnaqcd4ciGarfPDbedibledibkaiczfpxbbbbbbbbbbbbbbbbpklbxlkaiczfaopbblaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLg8Ecdp:mea8EpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9og8Fpxiiiiiiiiiiiiiiiip8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaaaoclffahc:q:yjjbfRbbfhoxikaiczfaopbbwaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9og8Fpxssssssssssssssssp8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaaaocwffahc:q:yjjbfRbbfhoxdkaiczfaopbbbpklbaoczfhoxekaiczfaopbbdaoRbbgacitc:q1jjbfpbibaac:q:yjjbfRbbgapsaoRbeghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPpklbaaaocdffahc:q:yjjbfRbbfhokdndndndndndnaqcl4ciGarfPDbedibledibkaicafpxbbbbbbbbbbbbbbbbpklbxlkaicafaopbblaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLg8Ecdp:mea8EpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9og8Fpxiiiiiiiiiiiiiiiip8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaaaoclffahc:q:yjjbfRbbfhoxikaicafaopbbwaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9og8Fpxssssssssssssssssp8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaaaocwffahc:q:yjjbfRbbfhoxdkaicafaopbbbpklbaoczfhoxekaicafaopbbdaoRbbgacitc:q1jjbfpbibaac:q:yjjbfRbbgapsaoRbeghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPpklbaaaocdffahc:q:yjjbfRbbfhokdndndndndndnaqco4arfPDbedibledibkaic8Wfpxbbbbbbbbbbbbbbbbpklbxlkaic8Wfaopbblaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLg8Ecdp:mea8EpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9og8Fpxiiiiiiiiiiiiiiiip8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngicitc:q1jjbfpbibaic:q:yjjbfRbbgipsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Ngqcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaiaoclffaqc:q:yjjbfRbbfhoxikaic8Wfaopbbwaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9og8Fpxssssssssssssssssp8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngicitc:q1jjbfpbibaic:q:yjjbfRbbgipsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Ngqcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaiaocwffaqc:q:yjjbfRbbfhoxdkaic8Wfaopbbbpklbaoczfhoxekaic8WfaopbbdaoRbbgicitc:q1jjbfpbibaic:q:yjjbfRbbgipsaoRbegqcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPpklbaiaocdffaqc:q:yjjbfRbbfhokalc;abfhialcjefaX0meaihlamao9Rc;Fb0mbkkdnaiaX9pmbaici4hlinamao9RcK6mwa5aifhqdndndndndndnaOaico4fRbbalcoG4ciGarfPDbedibledibkaqpxbbbbbbbbbbbbbbbbpkbbxlkaqaopbblaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLg8Ecdp:mea8EpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9og8Fpxiiiiiiiiiiiiiiiip8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spkbbaaaoclffahc:q:yjjbfRbbfhoxikaqaopbbwaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9og8Fpxssssssssssssssssp8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spkbbaaaocwffahc:q:yjjbfRbbfhoxdkaqaopbbbpkbbaoczfhoxekaqaopbbdaoRbbgacitc:q1jjbfpbibaac:q:yjjbfRbbgapsaoRbeghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPpkbbaaaocdffahc:q:yjjbfRbbfhokalcdfhlaiczfgiaX6mbkkaohOaoTmoka5aXfh5a3cefg3cl9hmbkdndndndnawTmbasaYcd4fRbbglciGPlbedwbkaXTmdavcjdfaYfhlavaYfpbdbhgcbhoinalavcj;cbfaofpblbg8JaKaofpblbg8KpmbzeHdOiAlCvXoQrLg8LaQaofpblbg8MaLaofpblbg8NpmbzeHdOiAlCvXoQrLgypmbezHdiOAlvCXorQLg8Ecep9Ta8Epxeeeeeeeeeeeeeeeeg8Fp9op9Hp9rg8Eagp9Uggp9Abbbaladfglaga8Ea8Epmlvorlvorlvorlvorp9Uggp9Abbbaladfglaga8Ea8EpmwDqkwDqkwDqkwDqkp9Uggp9Abbbaladfglaga8Ea8EpmxmPsxmPsxmPsxmPsp9Uggp9Abbbaladfglaga8LaypmwDKYqk8AExm35Ps8E8Fg8Ecep9Ta8Ea8Fp9op9Hp9rg8Ep9Uggp9Abbbaladfglaga8Ea8Epmlvorlvorlvorlvorp9Uggp9Abbbaladfglaga8Ea8EpmwDqkwDqkwDqkwDqkp9Uggp9Abbbaladfglaga8Ea8EpmxmPsxmPsxmPsxmPsp9Uggp9Abbbaladfglaga8Ja8KpmwKDYq8AkEx3m5P8Es8Fg8Ja8Ma8NpmwKDYq8AkEx3m5P8Es8Fg8KpmbezHdiOAlvCXorQLg8Ecep9Ta8Ea8Fp9op9Hp9rg8Ep9Uggp9Abbbaladfglaga8Ea8Epmlvorlvorlvorlvorp9Uggp9Abbbaladfglaga8Ea8EpmwDqkwDqkwDqkwDqkp9Uggp9Abbbaladfglaga8Ea8EpmxmPsxmPsxmPsxmPsp9Uggp9Abbbaladfglaga8Ja8KpmwDKYqk8AExm35Ps8E8Fg8Ecep9Ta8Ea8Fp9op9Hp9rg8Ep9Ug8Fp9Abbbaladfgla8Fa8Ea8Epmlvorlvorlvorlvorp9Ug8Fp9Abbbaladfgla8Fa8Ea8EpmwDqkwDqkwDqkwDqkp9Ug8Fp9Abbbaladfgla8Fa8Ea8EpmxmPsxmPsxmPsxmPsp9Uggp9AbbbaladfhlaoczfgoaX6mbxikkaXTmeavcjdfaYfhlavaYfpbdbhgcbhoinalavcj;cbfaofpblbg8JaKaofpblbg8KpmbzeHdOiAlCvXoQrLg8LaQaofpblbg8MaLaofpblbg8NpmbzeHdOiAlCvXoQrLgypmbezHdiOAlvCXorQLg8Ecep:nea8Epxebebebebebebebebg8Fp9op:bep9rg8Eagp:oeggp9Abbbaladfglaga8Ea8Epmlvorlvorlvorlvorp:oeggp9Abbbaladfglaga8Ea8EpmwDqkwDqkwDqkwDqkp:oeggp9Abbbaladfglaga8Ea8EpmxmPsxmPsxmPsxmPsp:oeggp9Abbbaladfglaga8LaypmwDKYqk8AExm35Ps8E8Fg8Ecep:nea8Ea8Fp9op:bep9rg8Ep:oeggp9Abbbaladfglaga8Ea8Epmlvorlvorlvorlvorp:oeggp9Abbbaladfglaga8Ea8EpmwDqkwDqkwDqkwDqkp:oeggp9Abbbaladfglaga8Ea8EpmxmPsxmPsxmPsxmPsp:oeggp9Abbbaladfglaga8Ja8KpmwKDYq8AkEx3m5P8Es8Fg8Ja8Ma8NpmwKDYq8AkEx3m5P8Es8Fg8KpmbezHdiOAlvCXorQLg8Ecep:nea8Ea8Fp9op:bep9rg8Ep:oeggp9Abbbaladfglaga8Ea8Epmlvorlvorlvorlvorp:oeggp9Abbbaladfglaga8Ea8EpmwDqkwDqkwDqkwDqkp:oeggp9Abbbaladfglaga8Ea8EpmxmPsxmPsxmPsxmPsp:oeggp9Abbbaladfglaga8Ja8KpmwDKYqk8AExm35Ps8E8Fg8Ecep:nea8Ea8Fp9op:bep9rg8Ep:oeg8Fp9Abbbaladfgla8Fa8Ea8Epmlvorlvorlvorlvorp:oeg8Fp9Abbbaladfgla8Fa8Ea8EpmwDqkwDqkwDqkwDqkp:oeg8Fp9Abbbaladfgla8Fa8Ea8EpmxmPsxmPsxmPsxmPsp:oeggp9AbbbaladfhlaoczfgoaX6mbxdkkaXTmbcbhocbalcl4gl9Rc8FGhiavcjdfaYfhravaYfpbdbh8Finaravcj;cbfaofpblbggaKaofpblbg8JpmbzeHdOiAlCvXoQrLg8KaQaofpblbg8LaLaofpblbg8MpmbzeHdOiAlCvXoQrLg8NpmbezHdiOAlvCXorQLg8Eaip:Rea8Ealp:Sep9qg8Ea8Fp9rg8Fp9Abbbaradfgra8Fa8Ea8Epmlvorlvorlvorlvorp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmwDqkwDqkwDqkwDqkp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmxmPsxmPsxmPsxmPsp9rg8Fp9Abbbaradfgra8Fa8Ka8NpmwDKYqk8AExm35Ps8E8Fg8Eaip:Rea8Ealp:Sep9qg8Ep9rg8Fp9Abbbaradfgra8Fa8Ea8Epmlvorlvorlvorlvorp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmwDqkwDqkwDqkwDqkp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmxmPsxmPsxmPsxmPsp9rg8Fp9Abbbaradfgra8Faga8JpmwKDYq8AkEx3m5P8Es8Fgga8La8MpmwKDYq8AkEx3m5P8Es8Fg8JpmbezHdiOAlvCXorQLg8Eaip:Rea8Ealp:Sep9qg8Ep9rg8Fp9Abbbaradfgra8Fa8Ea8Epmlvorlvorlvorlvorp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmwDqkwDqkwDqkwDqkp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmxmPsxmPsxmPsxmPsp9rg8Fp9Abbbaradfgra8Faga8JpmwDKYqk8AExm35Ps8E8Fg8Eaip:Rea8Ealp:Sep9qg8Ep9rg8Fp9Abbbaradfgra8Fa8Ea8Epmlvorlvorlvorlvorp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmwDqkwDqkwDqkwDqkp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmxmPsxmPsxmPsxmPsp9rg8Fp9AbbbaradfhraoczfgoaX6mbkkaYclfgYad6mbkaHavcjdfaAad2;8qbbavavcjdfaAcufad2fad;8qbbaAazfhzc9:hoaOhxaOmbxlkkaeTmbaDalfhrcbhocuhlinaralaD9RglfaD6mdaPaeao9RaoaPfae6Eaofgoae6mbkaial9Rhxkcbc99amax9RakSEhoxekc9:hokavcj;kbf8Kjjjjbaokwbz:bjjjbk:TseHu8Jjjjjbc;ae9Rgv8Kjjjjbc9:hodnaeci9UgrcHfal0mbcuhoaiRbbgwc;WeGc;Ge9hmbawcsGgDce0mbavc;abfcFecje;8kbavcUf9cu83ibavc8Wf9cu83ibavcyf9cu83ibavcaf9cu83ibavcKf9cu83ibavczf9cu83ibav9cu83iwav9cu83ibaialfc9WfhqaicefgwarfhldnaeTmbcmcsaDceSEhkcbhxcbhmcbhrcbhicbhoindnalaq9nmbc9:hoxikdndnawRbbgDc;Ve0mbavc;abfaoaDcu7gPcl4fcsGcitfgsydlhzasydbhHdndnaDcsGgsak9pmbavaiaPfcsGcdtfydbaxasEhDaxasTgOfhxxekdndnascsSmbcehOasc987asamffcefhDxekalcefhDal8SbbgscFeGhPdndnascu9mmbaDhlxekalcvfhlaPcFbGhPcrhsdninaD8SbbgOcFbGastaPVhPaOcu9kmeaDcefhDascrfgsc8J9hmbxdkkaDcefhlkcehOaPce4cbaPceG9R7amfhDkaDhmkavc;abfaocitfgsaDBdbasazBdlavaicdtfaDBdbavc;abfaocefcsGcitfgsaHBdbasaDBdlaocdfhoaOaifhidnadcd9hmbabarcetfgsaH87ebasclfaD87ebascdfaz87ebxdkabarcdtfgsaHBdbascwfaDBdbasclfazBdbxekdnaDcpe0mbaxcefgOavaiaqaDcsGfRbbgscl49RcsGcdtfydbascz6gPEhDavaias9RcsGcdtfydbaOaPfgzascsGgOEhsaOThOdndnadcd9hmbabarcetfgHax87ebaHclfas87ebaHcdfaD87ebxekabarcdtfgHaxBdbaHcwfasBdbaHclfaDBdbkavaicdtfaxBdbavc;abfaocitfgHaDBdbaHaxBdlavaicefgicsGcdtfaDBdbavc;abfaocefcsGcitfgHasBdbaHaDBdlavaiaPfgicsGcdtfasBdbavc;abfaocdfcsGcitfgDaxBdbaDasBdlaocifhoaiaOfhiazaOfhxxekaxcbalRbbgHEgAaDc;:eSgDfhzaHcsGhCaHcl4hXdndnaHcs0mbazcefhOxekazhOavaiaX9RcsGcdtfydbhzkdndnaCmbaOcefhxxekaOhxavaiaH9RcsGcdtfydbhOkdndnaDTmbalcefhDxekalcdfhDal8SbegPcFeGhsdnaPcu9kmbalcofhAascFbGhscrhldninaD8SbbgPcFbGaltasVhsaPcu9kmeaDcefhDalcrfglc8J9hmbkaAhDxekaDcefhDkasce4cbasceG9R7amfgmhAkdndnaXcsSmbaDhsxekaDcefhsaD8SbbglcFeGhPdnalcu9kmbaDcvfhzaPcFbGhPcrhldninas8SbbgDcFbGaltaPVhPaDcu9kmeascefhsalcrfglc8J9hmbkazhsxekascefhskaPce4cbaPceG9R7amfgmhzkdndnaCcsSmbashlxekascefhlas8SbbgDcFeGhPdnaDcu9kmbascvfhOaPcFbGhPcrhDdninal8SbbgscFbGaDtaPVhPascu9kmealcefhlaDcrfgDc8J9hmbkaOhlxekalcefhlkaPce4cbaPceG9R7amfgmhOkdndnadcd9hmbabarcetfgDaA87ebaDclfaO87ebaDcdfaz87ebxekabarcdtfgDaABdbaDcwfaOBdbaDclfazBdbkavc;abfaocitfgDazBdbaDaABdlavaicdtfaABdbavc;abfaocefcsGcitfgDaOBdbaDazBdlavaicefgicsGcdtfazBdbavc;abfaocdfcsGcitfgDaABdbaDaOBdlavaiaHcz6aXcsSVfgicsGcdtfaOBdbaiaCTaCcsSVfhiaocifhokawcefhwaocsGhoaicsGhiarcifgrae6mbkkcbc99alaqSEhokavc;aef8Kjjjjbaok:clevu8Jjjjjbcz9Rhvdnaecvfal9nmbc9:skdnaiRbbc;:eGc;qeSmbcuskav9cb83iwaicefhoaialfc98fhrdnaeTmbdnadcdSmbcbhwindnaoar6mbc9:skaocefhlao8SbbgicFeGhddndnaicu9mmbalhoxekaocvfhoadcFbGhdcrhidninal8SbbgDcFbGaitadVhdaDcu9kmealcefhlaicrfgic8J9hmbxdkkalcefhokabawcdtfadc8Etc8F91adcd47avcwfadceGcdtVglydbfgiBdbalaiBdbawcefgwae9hmbxdkkcbhwindnaoar6mbc9:skaocefhlao8SbbgicFeGhddndnaicu9mmbalhoxekaocvfhoadcFbGhdcrhidninal8SbbgDcFbGaitadVhdaDcu9kmealcefhlaicrfgic8J9hmbxdkkalcefhokabawcetfadc8Etc8F91adcd47avcwfadceGcdtVglydbfgi87ebalaiBdbawcefgwae9hmbkkcbc99aoarSEk:SPliuo97eue978Jjjjjbca9Rhiaec98Ghldndnadcl9hmbdnalTmbcbhvabhdinadadpbbbgocKp:RecKp:Sep;6egraocwp:RecKp:Sep;6earp;Geaoczp:RecKp:Sep;6egwp;Gep;Kep;LegDpxbbbbbbbbbbbbbbbbp:2egqarpxbbbjbbbjbbbjbbbjgkp9op9rp;Kegrpxbb;:9cbb;:9cbb;:9cbb;:9cararp;MeaDaDp;Meawaqawakp9op9rp;Kegrarp;Mep;Kep;Kep;Jep;Negwp;Mepxbbn0bbn0bbn0bbn0gqp;KepxFbbbFbbbFbbbFbbbp9oaopxbbbFbbbFbbbFbbbFp9op9qarawp;Meaqp;Kecwp:RepxbFbbbFbbbFbbbFbbp9op9qaDawp;Meaqp;Keczp:RepxbbFbbbFbbbFbbbFbp9op9qpkbbadczfhdavclfgval6mbkkalaeSmeaipxbbbbbbbbbbbbbbbbgqpklbaiabalcdtfgdaeciGglcdtgv;8qbbdnalTmbaiaipblbgocKp:RecKp:Sep;6egraocwp:RecKp:Sep;6earp;Geaoczp:RecKp:Sep;6egwp;Gep;Kep;LegDaqp:2egqarpxbbbjbbbjbbbjbbbjgkp9op9rp;Kegrpxbb;:9cbb;:9cbb;:9cbb;:9cararp;MeaDaDp;Meawaqawakp9op9rp;Kegrarp;Mep;Kep;Kep;Jep;Negwp;Mepxbbn0bbn0bbn0bbn0gqp;KepxFbbbFbbbFbbbFbbbp9oaopxbbbFbbbFbbbFbbbFp9op9qarawp;Meaqp;Kecwp:RepxbFbbbFbbbFbbbFbbp9op9qaDawp;Meaqp;Keczp:RepxbbFbbbFbbbFbbbFbp9op9qpklbkadaiav;8qbbskdnalTmbcbhvabhdinadczfgxaxpbbbgopxbbbbbbFFbbbbbbFFgkp9oadpbbbgDaopmbediwDqkzHOAKY8AEgwczp:Reczp:Sep;6egraDaopmlvorxmPsCXQL358E8FpxFubbFubbFubbFubbp9op;7eawczp:Sep;6egwp;Gearp;Gep;Kep;Legopxbbbbbbbbbbbbbbbbp:2egqarpxbbbjbbbjbbbjbbbjgmp9op9rp;Kegrpxb;:FSb;:FSb;:FSb;:FSararp;Meaoaop;Meawaqawamp9op9rp;Kegrarp;Mep;Kep;Kep;Jep;Negwp;Mepxbbn0bbn0bbn0bbn0gqp;KepxFFbbFFbbFFbbFFbbp9oaoawp;Meaqp;Keczp:Rep9qgoarawp;Meaqp;KepxFFbbFFbbFFbbFFbbp9ogrpmwDKYqk8AExm35Ps8E8Fp9qpkbbadaDakp9oaoarpmbezHdiOAlvCXorQLp9qpkbbadcafhdavclfgval6mbkkalaeSmbaiczfpxbbbbbbbbbbbbbbbbgopklbaiaopklbaiabalcitfgdaeciGglcitgv;8qbbdnalTmbaiaipblzgopxbbbbbbFFbbbbbbFFgkp9oaipblbgDaopmbediwDqkzHOAKY8AEgwczp:Reczp:Sep;6egraDaopmlvorxmPsCXQL358E8FpxFubbFubbFubbFubbp9op;7eawczp:Sep;6egwp;Gearp;Gep;Kep;Legopxbbbbbbbbbbbbbbbbp:2egqarpxbbbjbbbjbbbjbbbjgmp9op9rp;Kegrpxb;:FSb;:FSb;:FSb;:FSararp;Meaoaop;Meawaqawamp9op9rp;Kegrarp;Mep;Kep;Kep;Jep;Negwp;Mepxbbn0bbn0bbn0bbn0gqp;KepxFFbbFFbbFFbbFFbbp9oaoawp;Meaqp;Keczp:Rep9qgoarawp;Meaqp;KepxFFbbFFbbFFbbFFbbp9ogrpmwDKYqk8AExm35Ps8E8Fp9qpklzaiaDakp9oaoarpmbezHdiOAlvCXorQLp9qpklbkadaiav;8qbbkk:oDllue97euv978Jjjjjbc8W9Rhidnaec98GglTmbcbhvabhoinaiaopbbbgraoczfgwpbbbgDpmlvorxmPsCXQL358E8Fgqczp:Segkclp:RepklbaopxbbjZbbjZbbjZbbjZpx;Zl81Z;Zl81Z;Zl81Z;Zl81Zakpxibbbibbbibbbibbbp9qp;6ep;NegkaraDpmbediwDqkzHOAKY8AEgrczp:Reczp:Sep;6ep;MegDaDp;Meakarczp:Sep;6ep;Megxaxp;Meakaqczp:Reczp:Sep;6ep;Megqaqp;Mep;Kep;Kep;Lepxbbbbbbbbbbbbbbbbp:4ep;Jepxb;:FSb;:FSb;:FSb;:FSgkp;Mepxbbn0bbn0bbn0bbn0grp;KepxFFbbFFbbFFbbFFbbgmp9oaxakp;Mearp;Keczp:Rep9qgxaDakp;Mearp;Keamp9oaqakp;Mearp;Keczp:Rep9qgkpmbezHdiOAlvCXorQLgrp5baipblbpEb:T:j83ibaocwfarp5eaipblbpEe:T:j83ibawaxakpmwDKYqk8AExm35Ps8E8Fgkp5baipblbpEd:T:j83ibaocKfakp5eaipblbpEi:T:j83ibaocafhoavclfgval6mbkkdnalaeSmbaiczfpxbbbbbbbbbbbbbbbbgkpklbaiakpklbaiabalcitfgoaeciGgvcitgw;8qbbdnavTmbaiaipblbgraipblzgDpmlvorxmPsCXQL358E8Fgqczp:Segkclp:RepklaaipxbbjZbbjZbbjZbbjZpx;Zl81Z;Zl81Z;Zl81Z;Zl81Zakpxibbbibbbibbbibbbp9qp;6ep;NegkaraDpmbediwDqkzHOAKY8AEgrczp:Reczp:Sep;6ep;MegDaDp;Meakarczp:Sep;6ep;Megxaxp;Meakaqczp:Reczp:Sep;6ep;Megqaqp;Mep;Kep;Kep;Lepxbbbbbbbbbbbbbbbbp:4ep;Jepxb;:FSb;:FSb;:FSb;:FSgkp;Mepxbbn0bbn0bbn0bbn0grp;KepxFFbbFFbbFFbbFFbbgmp9oaxakp;Mearp;Keczp:Rep9qgxaDakp;Mearp;Keamp9oaqakp;Mearp;Keczp:Rep9qgkpmbezHdiOAlvCXorQLgrp5baipblapEb:T:j83ibaiarp5eaipblapEe:T:j83iwaiaxakpmwDKYqk8AExm35Ps8E8Fgkp5baipblapEd:T:j83izaiakp5eaipblapEi:T:j83iKkaoaiaw;8qbbkk;uddiue978Jjjjjbc;ab9Rhidnadcd4ae2glc98GgvTmbcbheabhdinadadpbbbgocwp:Recwp:Sep;6eaocep:SepxbbjFbbjFbbjFbbjFp9opxbbjZbbjZbbjZbbjZp:Uep;Mepkbbadczfhdaeclfgeav6mbkkdnavalSmbaic8WfpxbbbbbbbbbbbbbbbbgopklbaicafaopklbaiczfaopklbaiaopklbaiabavcdtfgdalciGgecdtgv;8qbbdnaeTmbaiaipblbgocwp:Recwp:Sep;6eaocep:SepxbbjFbbjFbbjFbbjFp9opxbbjZbbjZbbjZbbjZp:Uep;Mepklbkadaiav;8qbbkk9teiucbcbydj1jjbgeabcifc98GfgbBdj1jjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaikkkebcjwklz:Dbb",B=new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,3,2,0,0,5,3,1,0,1,12,1,0,10,22,2,12,0,65,0,65,0,65,0,252,10,0,0,11,7,0,65,0,253,15,26,11]),Y=new Uint8Array([32,0,65,2,1,106,34,33,3,128,11,4,13,64,6,253,10,7,15,116,127,5,8,12,40,16,19,54,20,9,27,255,113,17,42,67,24,23,146,148,18,14,22,45,70,69,56,114,101,21,25,63,75,136,108,28,118,29,73,115]);if(typeof WebAssembly!=="object")return{supported:!1};var J=WebAssembly.validate(B)?G(Q):G(A),C,X=WebAssembly.instantiate(J,{}).then(function(H){C=H.instance,C.exports.__wasm_call_ctors()});function G(H){var D=new Uint8Array(H.length);for(var L=0;L96?z-97:z>64?z-39:z+4}var M=0;for(var L=0;L0)return I(H,D,L,Z[z],W[M]);return X.then(function(){var N=new Uint8Array(H*D);return F(C,C.exports[Z[z]],N,H,D,L,C.exports[W[M]]),N})}}}();if(typeof cH==="object"&&typeof Cf==="object")Cf.exports=qR;else if(typeof define==="function"&&define.amd)define([],function(){return qR});else if(typeof cH==="object")cH.MeshoptDecoder=qR;else(typeof self<"u"?self:cH).MeshoptDecoder=qR});var jWA=R((lH,Xf)=>{var MR=function(){var A="b9H79Tebbbetm9Geueu9Geub9Gbb9Gsuuuuuuuuuuuu99uueu9Gvuuuuub9Gruuuuuuub9Gvuuuuue999Gvuuuuueu9Gquuuuuuu99uueu9Gwuuuuuu99ueu9Giuuue999Gluuuueu9GiuuueuiOHdilvorlwiDqkbxxbelve9Weiiviebeoweuec:G:Pdkr:Tewo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bbz9TW79O9V9Wt9F79P9T9W29P9M95br8E9TW79O9V9Wt9F79P9T9W29P9M959x9Pt9OcttV9P9I91tW7bwQ9TW79O9V9Wt9F79P9T9W29P9M959q9V9P9Ut7bDX9TW79O9V9Wt9F79P9T9W29P9M959t9J9H2Wbqa9TW79O9V9Wt9F9V9Wt9P9T9P96W9wWVtW94SWt9J9O9sW9T9H9Wbkl79IV9RbxDwebcekdzsq;B:xeHdbkM9Hi8Au8A99Au8Jjjjjbc;W;qb9Rgs8Kjjjjbcbhzascxfcbc;Kbz:ojjjb8AdnabaeSmbabaeadcdtz:njjjb8AkdndnamcdGmbascxfhHcbhOxekasalcrfci4gecbyd:m:jjjbHjjjjbbgABdxasceBd2aAcbaez:ojjjbhCcbhlcbhednadTmbcbhlabheadhAinaCaeydbgXci4fgQaQRbbgQceaXcrGgXtV86bbaQcu7aX4ceGalfhlaeclfheaAcufgAmbkcualcdtalcFFFFi0EhekascCfhHasaecbyd:m:jjjbHjjjjbbgOBdzascdBd2alcd4alfhXcehAinaAgecethAaeaX6mbkcdhzcbhLascuaecdtgAaecFFFFi0Ecbyd:m:jjjbHjjjjbbgXBdCasciBd2aXcFeaAz:ojjjbhKdnadTmbaecufhYcbh8AindndnaKabaLcdtfgEydbgQc:v;t;h;Ev2aYGgXcdtfgCydbgAcuSmbceheinaOaAcdtfydbaQSmdaXaefhAaecefheaKaAaYGgXcdtfgCydbgAcu9hmbkkaOa8AcdtfaQBdbaCa8ABdba8AhAa8Acefh8AkaEaABdbaLcefgLad9hmbkkaKcbyd1:jjjbH:bjjjbbascdBd2kcbh3aHcualcefgecdtaecFFFFi0Ecbyd:m:jjjbHjjjjbbg5Bdbasa5BdlasazceVgeBd2ascxfaecdtfcuadcitadcFFFFe0Ecbyd:m:jjjbHjjjjbbg8EBdbasa8EBdwasazcdfgeBd2asclfabadalcbz:cjjjbascxfaecdtfcualcdtgealcFFFFi0Eg8Fcbyd:m:jjjbHjjjjbbgABdbasazcifgXBd2ascxfaXcdtfa8Fcbyd:m:jjjbHjjjjbbgaBdbasazclVBd2aAaaaialavaOascxfz:djjjbalcbyd:m:jjjbHjjjjbbhCascxfasyd2ghcdtfaCBdbasahcefgXBd2ascxfaXcdtfa8Fcbyd:m:jjjbHjjjjbbgXBdbasahcdfgQBd2ascxfaQcdtfa8Fcbyd:m:jjjbHjjjjbbgQBdbasahcifggBd2aXcFeaez:ojjjbh8JaQcFeaez:ojjjbh8KdnalTmba8Ecwfh8Lindna5a3gQcefg3cdtfydbgKa5aQcdtgefydbgXSmbaKaX9Rhza8EaXcitfhHa8Kaefh8Ma8JaefhEcbhYindndnaHaYcitfydbg8AaQ9hmbaEaQBdba8MaQBdbxekdna5a8Acdtg8NfgeclfydbgXaeydbgeSmba8EaecitgKfydbaQSmeaXae9Rhyaecu7aXfhLa8LaKfhXcbheinaLaeSmeaecefheaXydbhKaXcwfhXaKaQ9hmbkaeay6meka8Ka8NfgeaQa8AaeydbcuSEBdbaEa8AaQaEydbcuSEBdbkaYcefgYaz9hmbkka3al9hmbkaAhXaahQa8KhKa8JhYcbheindndnaeaXydbg8A9hmbdnaeaQydbg8A9hmbaYydbh8AdnaKydbgLcu9hmba8Acu9hmbaCaefcb86bbxikaCaefhEdnaeaLSmbaea8ASmbaEce86bbxikaEcl86bbxdkdnaeaaa8AcdtgLfydb9hmbdnaKydbgEcuSmbaeaESmbaYydbgzcuSmbaeazSmba8KaLfydbgHcuSmbaHa8ASmba8JaLfydbgLcuSmbaLa8ASmbdnaAaEcdtfydbg8AaAaLcdtfydb9hmba8AaAazcdtfydbgLSmbaLaAaHcdtfydb9hmbaCaefcd86bbxlkaCaefcl86bbxikaCaefcl86bbxdkaCaefcl86bbxekaCaefaCa8AfRbb86bbkaXclfhXaQclfhQaKclfhKaYclfhYalaecefge9hmbkdnaqTmbdndnaOTmbaOheaAhXalhQindnaqaeydbfRbbTmbaCaXydbfcl86bbkaeclfheaXclfhXaQcufgQmbxdkkaAhealhXindnaqRbbTmbaCaeydbfcl86bbkaqcefhqaeclfheaXcufgXmbkkaAhealhQaChXindnaCaeydbfRbbcl9hmbaXcl86bbkaeclfheaXcefhXaQcufgQmbkkamceGTmbaChealhXindnaeRbbce9hmbaecl86bbkaecefheaXcufgXmbkkascxfagcdtfcualcx2alc;v:Q;v:Qe0Ecbyd:m:jjjbHjjjjbbg3BdbasahclfgHBd2a3aialavaOz:ejjjbh8PdndnaDmbcbhgcbh8Lxekcbh8LawhecbhXindnaeIdbJbbbb9ETmbasc;Wbfa8LcdtfaXBdba8Lcefh8LkaeclfheaDaXcefgX9hmbkascxfaHcdtfcua8Lal2gecdtaecFFFFi0Ecbyd:m:jjjbHjjjjbbggBdbasahcvfgHBd2alTmba8LTmbarcd4hEdnaOTmba8Lcdthzcbh8AaghLinaoaOa8AcdtfydbaE2cdtfhYasc;WbfheaLhXa8LhQinaXaYaeydbcdtgKfIdbawaKfIdbNUdbaeclfheaXclfhXaQcufgQmbkaLazfhLa8Acefg8Aal9hmbxdkka8Lcdthzcbh8AaghLinaoa8AaE2cdtfhYasc;WbfheaLhXa8LhQinaXaYaeydbcdtgKfIdbawaKfIdbNUdbaeclfheaXclfhXaQcufgQmbkaLazfhLa8Acefg8Aal9hmbkkascxfaHcdtfcualc8S2gealc;D;O;f8U0EgQcbyd:m:jjjbHjjjjbbgXBdbasaHcefgKBd2aXcbaez:ojjjbhqdndndna8LTmbascxfaKcdtfaQcbyd:m:jjjbHjjjjbbgvBdbasaHcdfgXBd2avcbaez:ojjjb8AascxfaXcdtfcua8Lal2gecltgXaecFFFFb0Ecbyd:m:jjjbHjjjjbbgiBdbasaHcifBd2aicbaXz:ojjjb8AadmexdkcbhvcbhiadTmekcbhYabhXindna3aXclfydbg8Acx2fgeIdba3aXydbgLcx2fgQIdbgI:tg8Ra3aXcwfydbgEcx2fgKIdlaQIdlg8S:tgRNaKIdbaI:tg8UaeIdla8S:tg8VN:tg8Wa8WNa8VaKIdwaQIdwg8X:tg8YNaRaeIdwa8X:tg8VN:tgRaRNa8Va8UNa8Ya8RN:tg8Ra8RNMM:rg8UJbbbb9ETmba8Wa8U:vh8Wa8Ra8U:vh8RaRa8U:vhRkaqaAaLcdtfydbc8S2fgeaRa8U:rg8UaRNNg8VaeIdbMUdbaea8Ra8Ua8RNg8ZNg8YaeIdlMUdlaea8Wa8Ua8WNg80Ng81aeIdwMUdwaea8ZaRNg8ZaeIdxMUdxaea80aRNgBaeIdzMUdzaea80a8RNg80aeIdCMUdCaeaRa8Ua8Wa8XNaRaINa8Sa8RNMM:mg8SNgINgRaeIdKMUdKaea8RaINg8RaeId3MUd3aea8WaINg8WaeIdaMUdaaeaIa8SNgIaeId8KMUd8Kaea8UaeIdyMUdyaqaAa8Acdtfydbc8S2fgea8VaeIdbMUdbaea8YaeIdlMUdlaea81aeIdwMUdwaea8ZaeIdxMUdxaeaBaeIdzMUdzaea80aeIdCMUdCaeaRaeIdKMUdKaea8RaeId3MUd3aea8WaeIdaMUdaaeaIaeId8KMUd8Kaea8UaeIdyMUdyaqaAaEcdtfydbc8S2fgea8VaeIdbMUdbaea8YaeIdlMUdlaea81aeIdwMUdwaea8ZaeIdxMUdxaeaBaeIdzMUdzaea80aeIdCMUdCaeaRaeIdKMUdKaea8RaeId3MUd3aea8WaeIdaMUdaaeaIaeId8KMUd8Kaea8UaeIdyMUdyaXcxfhXaYcifgYad6mbkcbhzabhLinabazcdtfh8AcbhXinaCa8AaXc;a1jjbfydbcdtfydbgQfRbbhedndnaCaLaXfydbgKfRbbgYc99fcFeGcpe0mbaec99fcFeGc;:e6mekdnaYcufcFeGce0mba8JaKcdtfydbaQ9hmekdnaecufcFeGce0mba8KaQcdtfydbaK9hmekdnaYcv2aefc:G1jjbfRbbTmbaAaQcdtfydbaAaKcdtfydb0mekJbbacJbbacJbbjZaecFeGceSEaYceSEh80dna3a8AaXc;e1jjbfydbcdtfydbcx2fgeIdwa3aKcx2fgYIdwg8S:tg8Wa3aQcx2fgEIdwa8S:tgRaRNaEIdbaYIdbg8X:tg8Ra8RNaEIdlaYIdlg8V:tg8Ua8UNMMgINa8WaRNaeIdba8X:tg81a8RNa8UaeIdla8V:tg8ZNMMg8YaRN:tg8Wa8WNa81aINa8Ya8RN:tgRaRNa8ZaINa8Ya8UN:tg8Ra8RNMM:rg8UJbbbb9ETmba8Wa8U:vh8Wa8Ra8U:vh8RaRa8U:vhRkaqaAaKcdtfydbc8S2fgeaRa80aI:rNg8UaRNNg8YaeIdbMUdbaea8Ra8Ua8RNg80Ng81aeIdlMUdlaea8Wa8Ua8WNgINg8ZaeIdwMUdwaea80aRNg80aeIdxMUdxaeaIaRNgBaeIdzMUdzaeaIa8RNg83aeIdCMUdCaeaRa8Ua8Wa8SNaRa8XNa8Va8RNMM:mg8SNgINgRaeIdKMUdKaea8RaINg8RaeId3MUd3aea8WaINg8WaeIdaMUdaaeaIa8SNgIaeId8KMUd8Kaea8UaeIdyMUdyaqaAaQcdtfydbc8S2fgea8YaeIdbMUdbaea81aeIdlMUdlaea8ZaeIdwMUdwaea80aeIdxMUdxaeaBaeIdzMUdzaea83aeIdCMUdCaeaRaeIdKMUdKaea8RaeId3MUd3aea8WaeIdaMUdaaeaIaeId8KMUd8Kaea8UaeIdyMUdykaXclfgXcx9hmbkaLcxfhLazcifgzad6mbka8LTmbcbhLinJbbbbh8Xa3abaLcdtfgeclfydbgEcx2fgXIdwa3aeydbgzcx2fgQIdwg8Z:tg8Ra8RNaXIdbaQIdbgB:tg8Wa8WNaXIdlaQIdlg83:tg8Ua8UNMMg80a3aecwfydbgHcx2fgeIdwa8Z:tgINa8Ra8RaINa8WaeIdbaB:tg8SNa8UaeIdla83:tg8VNMMgRN:tJbbbbJbbjZa80aIaINa8Sa8SNa8Va8VNMMg81NaRaRN:tg8Y:va8YJbbbb9BEg8YNhUa81a8RNaIaRN:ta8YNh85a80a8VNa8UaRN:ta8YNh86a81a8UNa8VaRN:ta8YNh87a80a8SNa8WaRN:ta8YNh88a81a8WNa8SaRN:ta8YNh89a8Wa8VNa8Sa8UN:tgRaRNa8UaINa8Va8RN:tgRaRNa8Ra8SNaIa8WN:tgRaRNMM:rJbbbZNhRagaza8L2gwcdtfhXagaHa8L2g8NcdtfhQagaEa8L2g5cdtfhKa8Z:mh8:a83:mhZaB:mhncbhYa8Lh8AJbbbbh8VJbbbbh8YJbbbbh80Jbbbbh81Jbbbbh8ZJbbbbhBJbbbbh83JbbbbhcJbbbbh9cinasc;WbfaYfgecwfaRa85aKIdbaXIdbgI:tg8UNaUaQIdbaI:tg8SNMg8RNUdbaeclfaRa87a8UNa86a8SNMg8WNUdbaeaRa89a8UNa88a8SNMg8UNUdbaecxfaRa8:a8RNaZa8WNaIana8UNMMMgINUdbaRa8Ra8WNNa81Mh81aRa8Ra8UNNa8ZMh8ZaRa8Wa8UNNaBMhBaRaIaINNa8XMh8XaRa8RaINNa8VMh8VaRa8WaINNa8YMh8YaRa8UaINNa80Mh80aRa8Ra8RNNa83Mh83aRa8Wa8WNNacMhcaRa8Ua8UNNa9cMh9caXclfhXaKclfhKaQclfhQaYczfhYa8Acufg8Ambkavazc8S2fgea9caeIdbMUdbaeacaeIdlMUdlaea83aeIdwMUdwaeaBaeIdxMUdxaea8ZaeIdzMUdzaea81aeIdCMUdCaea80aeIdKMUdKaea8YaeId3MUd3aea8VaeIdaMUdaaea8XaeId8KMUd8KaeaRaeIdyMUdyavaEc8S2fgea9caeIdbMUdbaeacaeIdlMUdlaea83aeIdwMUdwaeaBaeIdxMUdxaea8ZaeIdzMUdzaea81aeIdCMUdCaea80aeIdKMUdKaea8YaeId3MUd3aea8VaeIdaMUdaaea8XaeId8KMUd8KaeaRaeIdyMUdyavaHc8S2fgea9caeIdbMUdbaeacaeIdlMUdlaea83aeIdwMUdwaeaBaeIdxMUdxaea8ZaeIdzMUdzaea81aeIdCMUdCaea80aeIdKMUdKaea8YaeId3MUd3aea8VaeIdaMUdaaea8XaeId8KMUd8KaeaRaeIdyMUdyaiawcltfh8AcbhXa8LhKina8AaXfgeasc;WbfaXfgQIdbaeIdbMUdbaeclfgYaQclfIdbaYIdbMUdbaecwfgYaQcwfIdbaYIdbMUdbaecxfgeaQcxfIdbaeIdbMUdbaXczfhXaKcufgKmbkaia5cltfh8AcbhXa8LhKina8AaXfgeasc;WbfaXfgQIdbaeIdbMUdbaeclfgYaQclfIdbaYIdbMUdbaecwfgYaQcwfIdbaYIdbMUdbaecxfgeaQcxfIdbaeIdbMUdbaXczfhXaKcufgKmbkaia8Ncltfh8AcbhXa8LhKina8AaXfgeasc;WbfaXfgQIdbaeIdbMUdbaeclfgYaQclfIdbaYIdbMUdbaecwfgYaQcwfIdbaYIdbMUdbaecxfgeaQcxfIdbaeIdbMUdbaXczfhXaKcufgKmbkaLcifgLad6mbkkcbhQdndnamcwGgJmbJbbbbh8Vcbh9ecbhocbhhxekcbh9ea8Fcbyd:m:jjjbHjjjjbbhhascxfasyd2gecdtfahBdbasaecefgXBd2ascxfaXcdtfcuahalabadaAz:fjjjbgKcltaKcjjjjiGEcbyd:m:jjjbHjjjjbbgoBdbasaecdfBd2aoaKaha3alz:gjjjbJFFuuh8VaKTmbaoheaKhXinaeIdbgRa8Va8VaR9EEh8VaeclfheaXcufgXmbkaKh9ekasydlhTdnalTmbaTclfheaTydbhKaChXalhYcbhQincbaeydbg8AaK9RaXRbbcpeGEaQfhQaXcefhXaeclfhea8AhKaYcufgYmbkaQce4hQkcuadaQ9RcifgScx2aSc;v:Q;v:Qe0Ecbyd:m:jjjbHjjjjbbhDascxfasyd2g9hcdtfaDBdbasa9hcefgeBd2ascxfaecdtfcuaScdtaScFFFFi0Ecbyd:m:jjjbHjjjjbbgrBdbasa9hcdfgeBd2ascxfaecdtfa8Fcbyd:m:jjjbHjjjjbbgyBdbasa9hcifgeBd2ascxfaecdtfalcbyd:m:jjjbHjjjjbbg9iBdbasa9hclfg6Bd2axaxNa8PJbbjZamclGEgUaUN:vh9cJbbbbhcdnadak9nmbdnaSci6mba8Lclth9kaDcwfh0Jbbbbh83JbbbbhcinasclfabadalaAz:cjjjbabhzcbh8Ecbh8Finaba8FcdtfhHcbheindnaAazaefydbgQcdtgEfydbgYaAaHaec;q1jjbfydbcdtfydbgXcdtgwfydbg8ASmbaCaXfRbbgLcv2aCaQfRbbgKfc;G1jjbfRbbg5aKcv2aLfg8Nc;G1jjbfRbbg8MVcFeGTmbdna8AaY9nmba8Nc:G1jjbfRbbcFeGmekaKcufhYdnaKaL9hmbaYcFeGce0mba8JaEfydbaX9hmekdndnaKclSmbaLcl9hmekdnaYcFeGce0mba8JaEfydbaX9hmdkaLcufcFeGce0mba8KawfydbaQ9hmekaDa8Ecx2fgKaXaQa8McFeGgYEBdlaKaQaXaYEBdbaKaYa5Gcb9hBdwa8Ecefh8Ekaeclfgecx9hmbkdna8Fcifg8Fad9pmbazcxfhza8EcifaS9nmekka8ETmdcbhLinaqaAaDaLcx2fgKydbgYcdtgzfydbc8S2fgeIdwa3aKydlg8Acx2fgXIdwg8WNaeIdzaXIdbg8UNaeIdaMgRaRMMa8WNaeIdlaXIdlgINaeIdCa8WNaeId3MgRaRMMaINaeIdba8UNaeIdxaINaeIdKMgRaRMMa8UNaeId8KMMM:lhRJbbbbJbbjZaeIdyg8R:va8RJbbbb9BEh8RdndnaKydwgEmbJFFuuh8YxekJbbbbJbbjZaqaAa8Acdtfydbc8S2fgeIdyg8S:va8SJbbbb9BEaeIdwa3aYcx2fgXIdwg8SNaeIdzaXIdbg8XNaeIdaMg8Ya8YMMa8SNaeIdlaXIdlg8YNaeIdCa8SNaeId3Mg8Sa8SMMa8YNaeIdba8XNaeIdxa8YNaeIdKMg8Sa8SMMa8XNaeId8KMMM:lNh8Yka8RaRNh80dna8LTmbavaYc8S2fgQIdwa8WNaQIdza8UNaQIdaMgRaRMMa8WNaQIdlaINaQIdCa8WNaQId3MgRaRMMaINaQIdba8UNaQIdxaINaQIdKMgRaRMMa8UNaQId8KMMMhRaga8Aa8L2gHcdtfhXaiaYa8L2gwcltfheaQIdyh8Sa8LhQinaXIdbg8Ra8Ra8SNaecxfIdba8WaecwfIdbNa8UaeIdbNaIaeclfIdbNMMMg8Ra8RM:tNaRMhRaXclfhXaeczfheaQcufgQmbkdndnaEmbJbbbbh8Rxekava8Ac8S2fgQIdwa3aYcx2fgeIdwg8UNaQIdzaeIdbgINaQIdaMg8Ra8RMMa8UNaQIdlaeIdlg8SNaQIdCa8UNaQId3Mg8Ra8RMMa8SNaQIdbaINaQIdxa8SNaQIdKMg8Ra8RMMaINaQId8KMMMh8RagawcdtfhXaiaHcltfheaQIdyh8Xa8LhQinaXIdbg8Wa8Wa8XNaecxfIdba8UaecwfIdbNaIaeIdbNa8SaeclfIdbNMMMg8Wa8WM:tNa8RMh8RaXclfhXaeczfheaQcufgQmbka8R:lh8Rka80aR:lMh80a8Ya8RMh8YaCaYfRbbcd9hmbdna8Ka8Ja8Jazfydba8ASEaaazfydbgHcdtfydbgzcu9hmbaaa8AcdtfydbhzkavaHc8S2fgQIdwa3azcx2fgeIdwg8WNaQIdzaeIdbg8UNaQIdaMgRaRMMa8WNaQIdlaeIdlgINaQIdCa8WNaQId3MgRaRMMaINaQIdba8UNaQIdxaINaQIdKMgRaRMMa8UNaQId8KMMMhRagaza8L2gwcdtfhXaiaHa8L2g8NcltfheaQIdyh8Sa8LhQinaXIdbg8Ra8Ra8SNaecxfIdba8WaecwfIdbNa8UaeIdbNaIaeclfIdbNMMMg8Ra8RM:tNaRMhRaXclfhXaeczfheaQcufgQmbkdndnaEmbJbbbbh8Rxekavazc8S2fgQIdwa3aHcx2fgeIdwg8UNaQIdzaeIdbgINaQIdaMg8Ra8RMMa8UNaQIdlaeIdlg8SNaQIdCa8UNaQId3Mg8Ra8RMMa8SNaQIdbaINaQIdxa8SNaQIdKMg8Ra8RMMaINaQId8KMMMh8Raga8NcdtfhXaiawcltfheaQIdyh8Xa8LhQinaXIdbg8Wa8Wa8XNaecxfIdba8UaecwfIdbNaIaeIdbNa8SaeclfIdbNMMMg8Wa8WM:tNa8RMh8RaXclfhXaeczfheaQcufgQmbka8R:lh8Rka80aR:lMh80a8Ya8RMh8YkaKa80a8Ya80a8Y9FgeEUdwaKa8AaYaeaETVgeEBdlaKaYa8AaeEBdbaLcefgLa8E9hmbkasc;Wbfcbcj;qbz:ojjjb8Aa0hea8EhXinasc;WbfaeydbcA4cF8FGgQcFAaQcFA6EcdtfgQaQydbcefBdbaecxfheaXcufgXmbkcbhecbhXinasc;WbfaefgQydbhKaQaXBdbaKaXfhXaeclfgecj;qb9hmbkcbhea0hXinasc;WbfaXydbcA4cF8FGgQcFAaQcFA6EcdtfgQaQydbgQcefBdbaraQcdtfaeBdbaXcxfhXa8Eaecefge9hmbkadak9RgQci9Uh9mdnalTmbcbheayhXinaXaeBdbaXclfhXalaecefge9hmbkkcbh9na9icbalz:ojjjbh8FaQcO9Uh9oa9mce4h9pasydwh9qcbh8Mcbh5dninaDara5cdtfydbcx2fg8NIdwgRa9c9Emea8Ma9m9pmeJFFuuh8Rdna9pa8E9pmbaDara9pcdtfydbcx2fIdwJbb;aZNh8RkdnaRa8R9ETmbaRac9ETmba8Ma9o0mdkdna8FaAa8NydlgHcdtg9rfydbgKfg9sRbba8FaAa8Nydbgzcdtg9tfydbgefg9uRbbVmbaCazfRbbh9vdnaTaecdtfgXclfydbgQaXydbgXSmbaQaX9RhYa3aKcx2fhLa3aecx2fhEa9qaXcitfhecbhXcehwdnindnayaeydbcdtfydbgQaKSmbayaeclfydbcdtfydbg8AaKSmbaQa8ASmba3a8Acx2fg8AIdba3aQcx2fgQIdbg8W:tgRaEIdlaQIdlg8U:tg8XNaEIdba8W:tg8Ya8AIdla8U:tg8RN:tgIaRaLIdla8U:tg80NaLIdba8W:tg81a8RN:tg8UNa8RaEIdwaQIdwg8S:tg8ZNa8Xa8AIdwa8S:tg8WN:tg8Xa8RaLIdwa8S:tgBNa80a8WN:tg8RNa8Wa8YNa8ZaRN:tg8Sa8Wa81NaBaRN:tgRNMMaIaINa8Xa8XNa8Sa8SNMMa8Ua8UNa8Ra8RNaRaRNMMN:rJbbj8:N9FmdkaecwfheaXcefgXaY6hwaYaX9hmbkkawceGTmba9pcefh9pxekdndndndna9vc9:fPdebdkazheinayaecdtgefaHBdbaaaefydbgeaz9hmbxikkdna8Ka8Ja8Ja9tfydbaHSEaaa9tfydbgzcdtfydbgecu9hmbaaa9rfydbhekaya9tfaHBdbaehHkayazcdtfaHBdbka9uce86bba9sce86bba8NIdwgRacacaR9DEhca9ncefh9ncecda9vceSEa8Mfh8Mka5cefg5a8E9hmbkka9nTmddnalTmbcbh8AcbhEindnayaEcdtgefydbgQaESmbaAaQcdtfydbhzdnaEaAaefydb9hgHmbaqazc8S2fgeaqaEc8S2fgXIdbaeIdbMUdbaeaXIdlaeIdlMUdlaeaXIdwaeIdwMUdwaeaXIdxaeIdxMUdxaeaXIdzaeIdzMUdzaeaXIdCaeIdCMUdCaeaXIdKaeIdKMUdKaeaXId3aeId3MUd3aeaXIdaaeIdaMUdaaeaXId8KaeId8KMUd8KaeaXIdyaeIdyMUdyka8LTmbavaQc8S2fgeavaEc8S2gwfgXIdbaeIdbMUdbaeaXIdlaeIdlMUdlaeaXIdwaeIdwMUdwaeaXIdxaeIdxMUdxaeaXIdzaeIdzMUdzaeaXIdCaeIdCMUdCaeaXIdKaeIdKMUdKaeaXId3aeId3MUd3aeaXIdaaeIdaMUdaaeaXId8KaeId8KMUd8KaeaXIdyaeIdyMUdya9kaQ2hLaihXa8LhKinaXaLfgeaXa8AfgQIdbaeIdbMUdbaeclfgYaQclfIdbaYIdbMUdbaecwfgYaQcwfIdbaYIdbMUdbaecxfgeaQcxfIdbaeIdbMUdbaXczfhXaKcufgKmbkaHmbJbbbbJbbjZaqawfgeIdygR:vaRJbbbb9BEaeIdwa3azcx2fgXIdwgRNaeIdzaXIdbg8RNaeIdaMg8Wa8WMMaRNaeIdlaXIdlg8WNaeIdCaRNaeId3MgRaRMMa8WNaeIdba8RNaeIdxa8WNaeIdKMgRaRMMa8RNaeId8KMMM:lNgRa83a83aR9DEh83ka8Aa9kfh8AaEcefgEal9hmbkcbhXa8JheindnaeydbgQcuSmbdnaXayaQcdtgKfydbgQ9hmbcuhQa8JaKfydbgKcuSmbayaKcdtfydbhQkaeaQBdbkaeclfhealaXcefgX9hmbkcbhXa8KheindnaeydbgQcuSmbdnaXayaQcdtgKfydbgQ9hmbcuhQa8KaKfydbgKcuSmbayaKcdtfydbhQkaeaQBdbkaeclfhealaXcefgX9hmbkka83aca8LEh83cbhKabhecbhYindnayaeydbcdtfydbgXayaeclfydbcdtfydbgQSmbaXayaecwfydbcdtfydbg8ASmbaQa8ASmbabaKcdtfgLaXBdbaLcwfa8ABdbaLclfaQBdbaKcifhKkaecxfheaYcifgYad6mbkdndnaJTmbaKak9nmba8Va839FTmbcbhdabhecbhXindnaoahaeydbgQcdtfydbcdtfIdba839ETmbabadcdtfgYaQBdbaYclfaeclfydbBdbaYcwfaecwfydbBdbadcifhdkaecxfheaXcifgXaK6mbkJFFuuh8Va9eTmeaohea9ehXJFFuuhRinaeIdbg8RaRaRa8R9EEg8WaRa8Ra839EgQEhRa8Wa8VaQEh8VaeclfheaXcufgXmbxdkkaKhdkadak0mbxdkkasclfabadalaAz:cjjjbkdndnadak0mbadhXxekdnaJmbadhXxekdna8Va9c9FmbadhXxekina8VJbb;aZNgRa9caRa9c9DEh8WJbbbbhRdna9eTmbaohea9ehAinaeIdbg8RaRa8Ra8W9FEaRa8RaR9EEhRaeclfheaAcufgAmbkkcbhXabhecbhAindnaoahaeydbgQcdtfydbcdtfIdba8W9ETmbabaXcdtfgKaQBdbaKclfaeclfydbBdbaKcwfaecwfydbBdbaXcifhXkaecxfheaAcifgAad6mbkJFFuuh8Vdna9eTmbaohea9ehAJFFuuh8RinaeIdbg8Ua8Ra8Ra8U9EEgIa8Ra8Ua8W9EgQEh8RaIa8VaQEh8VaeclfheaAcufgAmbkkdnaXad9hmbadhXxdkaRacacaR9DEhcaXak9nmeaXhda8Va9c9FmbkkdnamcjjjjlGTmbaOmbaXTmbcbh8AabheinaCaeydbgKfRbbc3thLaecwfgEydbhAdndna8JaKcdtgHfydbaeclfgzydbgQSmbcbhYa8KaQcdtfydbaK9hmekcjjjj94hYkaeaLaYVaKVBdbaCaQfRbbc3thLdndna8JaQcdtfydbaASmbcbhYa8KaAcdtfydbaQ9hmekcjjjj94hYkazaLaYVaQVBdbaCaAfRbbc3thYdndna8JaAcdtfydbaKSmbcbhQa8KaHfydbaA9hmekcjjjj94hQkaEaYaQVaAVBdbaecxfhea8Acifg8AaX6mbkkdnaOTmbaXTmbaXheinabaOabydbcdtfydbBdbabclfhbaecufgembkkdnaPTmbaPaUac:rNUdbka9hcdtascxffcxfhednina6Tmeaeydbcbyd1:jjjbH:bjjjbbaec98fhea6cufh6xbkkasc;W;qbf8KjjjjbaXk;Yieouabydlhvabydbclfcbaicdtz:ojjjbhoadci9UhrdnadTmbdnalTmbaehwadhDinaoalawydbcdtfydbcdtfgqaqydbcefBdbawclfhwaDcufgDmbxdkkaehwadhDinaoawydbcdtfgqaqydbcefBdbawclfhwaDcufgDmbkkdnaiTmbcbhDaohwinawydbhqawaDBdbawclfhwaqaDfhDaicufgimbkkdnadci6mbinaecwfydbhwaeclfydbhDaeydbhidnalTmbalawcdtfydbhwalaDcdtfydbhDalaicdtfydbhikavaoaicdtfgqydbcitfaDBdbavaqydbcitfawBdlaqaqydbcefBdbavaoaDcdtfgqydbcitfawBdbavaqydbcitfaiBdlaqaqydbcefBdbavaoawcdtfgwydbcitfaiBdbavawydbcitfaDBdlawawydbcefBdbaecxfhearcufgrmbkkabydbcbBdbk:todDue99aicd4aifhrcehwinawgDcethwaDar6mbkcuaDcdtgraDcFFFFi0Ecbyd:m:jjjbHjjjjbbhwaoaoyd9GgqcefBd9GaoaqcdtfawBdbawcFearz:ojjjbhkdnaiTmbalcd4hlaDcufhxcbhminamhDdnavTmbavamcdtfydbhDkcbadaDal2cdtfgDydlgwawcjjjj94SEgwcH4aw7c:F:b:DD2cbaDydbgwawcjjjj94SEgwcH4aw7c;D;O:B8J27cbaDydwgDaDcjjjj94SEgDcH4aD7c:3F;N8N27axGhwamcdthPdndndnavTmbakawcdtfgrydbgDcuSmeadavaPfydbal2cdtfgsIdbhzcehqinaqhrdnadavaDcdtfydbal2cdtfgqIdbaz9CmbaqIdlasIdl9CmbaqIdwasIdw9BmlkarcefhqakawarfaxGgwcdtfgrydbgDcu9hmbxdkkakawcdtfgrydbgDcuSmbadamal2cdtfgsIdbhzcehqinaqhrdnadaDal2cdtfgqIdbaz9CmbaqIdlasIdl9CmbaqIdwasIdw9BmikarcefhqakawarfaxGgwcdtfgrydbgDcu9hmbkkaramBdbamhDkabaPfaDBdbamcefgmai9hmbkkakcbyd1:jjjbH:bjjjbbaoaoyd9GcufBd9GdnaeTmbaiTmbcbhDaehwinawaDBdbawclfhwaiaDcefgD9hmbkcbhDaehwindnaDabydbgrSmbawaearcdtfgrydbBdbaraDBdbkawclfhwabclfhbaiaDcefgD9hmbkkk;Qodvuv998Jjjjjbca9Rgvczfcwfcbyd11jjbBdbavcb8Pdj1jjb83izavcwfcbydN1jjbBdbavcb8Pd:m1jjb83ibdnadTmbaicd4hodnabmbdnalTmbcbhrinaealarcdtfydbao2cdtfhwcbhiinavczfaifgDawaifIdbgqaDIdbgkakaq9EEUdbavaifgDaqaDIdbgkakaq9DEUdbaiclfgicx9hmbkarcefgrad9hmbxikkaocdthrcbhwincbhiinavczfaifgDaeaifIdbgqaDIdbgkakaq9EEUdbavaifgDaqaDIdbgkakaq9DEUdbaiclfgicx9hmbkaearfheawcefgwad9hmbxdkkdnalTmbcbhrinabarcx2fgiaealarcdtfydbao2cdtfgwIdbUdbaiawIdlUdlaiawIdwUdwcbhiinavczfaifgDawaifIdbgqaDIdbgkakaq9EEUdbavaifgDaqaDIdbgkakaq9DEUdbaiclfgicx9hmbkarcefgrad9hmbxdkkaocdthlcbhraehwinabarcx2fgiaearao2cdtfgDIdbUdbaiaDIdlUdlaiaDIdwUdwcbhiinavczfaifgDawaifIdbgqaDIdbgkakaq9EEUdbavaifgDaqaDIdbgkakaq9DEUdbaiclfgicx9hmbkawalfhwarcefgrad9hmbkkJbbbbavIdbavIdzgk:tgqaqJbbbb9DEgqavIdlavIdCgx:tgmamaq9DEgqavIdwavIdKgm:tgPaPaq9DEhPdnabTmbadTmbJbbbbJbbjZaP:vaPJbbbb9BEhqinabaqabIdbak:tNUdbabclfgvaqavIdbax:tNUdbabcwfgvaqavIdbam:tNUdbabcxfhbadcufgdmbkkaPk:ZlewudnaeTmbcbhvabhoinaoavBdbaoclfhoaeavcefgv9hmbkkdnaiTmbcbhrinadarcdtfhwcbhDinalawaDcdtgvc;a1jjbfydbcdtfydbcdtfydbhodnabalawavfydbcdtfydbgqcdtfgkydbgvaqSmbinakabavgqcdtfgxydbgvBdbaxhkaqav9hmbkkdnabaocdtfgkydbgvaoSmbinakabavgocdtfgxydbgvBdbaxhkaoav9hmbkkdnaqaoSmbabaqaoaqao0Ecdtfaqaoaqao6EBdbkaDcefgDci9hmbkarcifgrai6mbkkdnaembcbskcbhxindnalaxcdtgvfydbax9hmbaxhodnabavfgDydbgvaxSmbaDhqinaqabavgocdtfgkydbgvBdbakhqaoav9hmbkkaDaoBdbkaxcefgxae9hmbkcbhvabhocbhkindndnavalydbgq9hmbdnavaoydbgq9hmbaoakBdbakcefhkxdkaoabaqcdtfydbBdbxekaoabaqcdtfydbBdbkaoclfhoalclfhlaeavcefgv9hmbkakk;Jiilud99duabcbaecltz:ojjjbhvdnalTmbadhoaihralhwinarcwfIdbhDarclfIdbhqavaoydbcltfgkarIdbakIdbMUdbakclfgxaqaxIdbMUdbakcwfgxaDaxIdbMUdbakcxfgkakIdbJbbjZMUdbaoclfhoarcxfhrawcufgwmbkkdnaeTmbavhraehkinarcxfgoIdbhDaocbBdbararIdbJbbbbJbbjZaD:vaDJbbbb9BEgDNUdbarclfgoaDaoIdbNUdbarcwfgoaDaoIdbNUdbarczfhrakcufgkmbkkdnalTmbinavadydbcltfgrcxfgkaicwfIdbarcwfIdb:tgDaDNaiIdbarIdb:tgDaDNaiclfIdbarclfIdb:tgDaDNMMgDakIdbgqaqaD9DEUdbadclfhdaicxfhialcufglmbkkdnaeTmbavcxfhrinabarIdbUdbarczfhrabclfhbaecufgembkkk8MbabaeadaialavcbcbcbcbcbaoarawaDz:bjjjbk8MbabaeadaialavaoarawaDaqakaxamaPz:bjjjbk:DCoDud99rue99iul998Jjjjjbc;Wb9Rgw8KjjjjbdndnarmbcbhDxekawcxfcbc;Kbz:ojjjb8Aawcuadcx2adc;v:Q;v:Qe0Ecbyd:m:jjjbHjjjjbbgqBdxawceBd2aqaeadaicbz:ejjjb8AawcuadcdtadcFFFFi0Egkcbyd:m:jjjbHjjjjbbgxBdzawcdBd2adcd4adfhmceheinaegicetheaiam6mbkcbhPawcuaicdtgsaicFFFFi0Ecbyd:m:jjjbHjjjjbbgzBdCawciBd2dndnar:ZgH:rJbbbZMgO:lJbbb9p9DTmbaO:Ohexekcjjjj94hekaicufhAc:bwhmcbhCadhXcbhQinaChLaeamgKcufaeaK9iEaPgDcefaeaD9kEhYdndnadTmbaYcuf:YhOaqhiaxheadhmindndnaiIdbaONJbbbZMg8A:lJbbb9p9DTmba8A:OhCxekcjjjj94hCkaCcCthCdndnaiclfIdbaONJbbbZMg8A:lJbbb9p9DTmba8A:OhExekcjjjj94hEkaEcqtaCVhCdndnaicwfIdbaONJbbbZMg8A:lJbbb9p9DTmba8A:OhExekcjjjj94hEkaeaCaEVBdbaicxfhiaeclfheamcufgmmbkazcFeasz:ojjjbh3cbh5cbhPindna3axaPcdtfydbgCcm4aC7c:v;t;h;Ev2gics4ai7aAGgmcdtfgEydbgecuSmbaeaCSmbcehiina3amaifaAGgmcdtfgEydbgecuSmeaicefhiaeaC9hmbkkaEaCBdba5aecuSfh5aPcefgPad9hmbxdkkazcFeasz:ojjjb8Acbh5kaDaYa5ar0giEhPaLa5aiEhCdna5arSmbaYaKaiEgmaP9Rcd9imbdndnaQcl0mbdnaX:ZgOaL:Zg8A:taY:Yg8EaD:Y:tg8Fa8EaK:Y:tgaa5:ZghaH:tNNNaOaH:taaNa8Aah:tNa8AaH:ta8FNahaO:tNM:va8EMJbbbZMgO:lJbbb9p9DTmbaO:Ohexdkcjjjj94hexekaPamfcd9Theka5aXaiEhXaQcefgQcs9hmekkdndnaCmbcihicbhDxekcbhiawakcbyd:m:jjjbHjjjjbbg5BdKawclBd2aPcuf:Yh8AdndnadTmbaqhiaxheadhmindndnaiIdba8ANJbbbZMgO:lJbbb9p9DTmbaO:OhCxekcjjjj94hCkaCcCthCdndnaiclfIdba8ANJbbbZMgO:lJbbb9p9DTmbaO:OhExekcjjjj94hEkaEcqtaCVhCdndnaicwfIdba8ANJbbbZMgO:lJbbb9p9DTmbaO:OhExekcjjjj94hEkaeaCaEVBdbaicxfhiaeclfheamcufgmmbkazcFeasz:ojjjbh3cbhDcbhYindndndna3axaYcdtgKfydbgCcm4aC7c:v;t;h;Ev2gics4ai7aAGgmcdtfgEydbgecuSmbcehiinaxaecdtgefydbaCSmdamaifheaicefhia3aeaAGgmcdtfgEydbgecu9hmbkkaEaYBdbaDhiaDcefhDxeka5aefydbhika5aKfaiBdbaYcefgYad9hmbkcuaDc32giaDc;j:KM;jb0EhexekazcFeasz:ojjjb8AcbhDcbhekawaecbyd:m:jjjbHjjjjbbgeBd3awcvBd2aecbaiz:ojjjbhEavcd4hKdnadTmbdnalTmbaKcdth3a5hCaqhealhmadhAinaEaCydbc32fgiaeIdbaiIdbMUdbaiaeclfIdbaiIdlMUdlaiaecwfIdbaiIdwMUdwaiamIdbaiIdxMUdxaiamclfIdbaiIdzMUdzaiamcwfIdbaiIdCMUdCaiaiIdKJbbjZMUdKaCclfhCaecxfheama3fhmaAcufgAmbxdkka5hmaqheadhCinaEamydbc32fgiaeIdbaiIdbMUdbaiaeclfIdbaiIdlMUdlaiaecwfIdbaiIdwMUdwaiaiIdxJbbbbMUdxaiaiIdzJbbbbMUdzaiaiIdCJbbbbMUdCaiaiIdKJbbjZMUdKamclfhmaecxfheaCcufgCmbkkdnaDTmbaEhiaDheinaiaiIdbJbbbbJbbjZaicKfIdbgO:vaOJbbbb9BEgONUdbaiclfgmaOamIdbNUdbaicwfgmaOamIdbNUdbaicxfgmaOamIdbNUdbaiczfgmaOamIdbNUdbaicCfgmaOamIdbNUdbaic3fhiaecufgembkkcbhCawcuaDcdtgYaDcFFFFi0Egicbyd:m:jjjbHjjjjbbgeBdaawcoBd2awaicbyd:m:jjjbHjjjjbbg3Bd8KaecFeaYz:ojjjbhxdnadTmbJbbjZJbbjZa8A:vaPceSEaoNgOaONh8AaKcdthPalheina8Aaec;81jjbalEgmIdwaEa5ydbgAc32fgiIdC:tgOaONamIdbaiIdx:tgOaONamIdlaiIdz:tgOaONMMNaqcwfIdbaiIdw:tgOaONaqIdbaiIdb:tgOaONaqclfIdbaiIdl:tgOaONMMMhOdndnaxaAcdtgifgmydbcuSmba3aifIdbaO9ETmekamaCBdba3aifaOUdbka5clfh5aqcxfhqaeaPfheadaCcefgC9hmbkkabaxaYz:njjjb8AcrhikaicdthiinaiTmeaic98fgiawcxffydbcbyd1:jjjbH:bjjjbbxbkkawc;Wbf8KjjjjbaDk:Ydidui99ducbhi8Jjjjjbca9Rglczfcwfcbyd11jjbBdbalcb8Pdj1jjb83izalcwfcbydN1jjbBdbalcb8Pd:m1jjb83ibdndnaembJbbjFhvJbbjFhoJbbjFhrxekadcd4cdthwincbhdinalczfadfgDabadfIdbgvaDIdbgoaoav9EEUdbaladfgDavaDIdbgoaoav9DEUdbadclfgdcx9hmbkabawfhbaicefgiae9hmbkalIdwalIdK:thralIdlalIdC:thoalIdbalIdz:thvkJbbbbavavJbbbb9DEgvaoaoav9DEgvararav9DEk9DeeuabcFeaicdtz:ojjjbhlcbhbdnadTmbindnalaeydbcdtfgiydbcu9hmbaiabBdbabcefhbkaeclfheadcufgdmbkkabk9teiucbcbyd:q:jjjbgeabcifc98GfgbBd:q:jjjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik;teeeudndnaeabVciGTmbabhixekdndnadcz9pmbabhixekabhiinaiaeydbBdbaiaeydlBdlaiaeydwBdwaiaeydxBdxaeczfheaiczfhiadc9Wfgdcs0mbkkadcl6mbinaiaeydbBdbaeclfheaiclfhiadc98fgdci0mbkkdnadTmbinaiaeRbb86bbaicefhiaecefheadcufgdmbkkabk:3eedudndnabciGTmbabhixekaecFeGc:b:c:ew2hldndnadcz9pmbabhixekabhiinaialBdxaialBdwaialBdlaialBdbaiczfhiadc9Wfgdcs0mbkkadcl6mbinaialBdbaiclfhiadc98fgdci0mbkkdnadTmbinaiae86bbaicefhiadcufgdmbkkabk9teiucbcbyd:q:jjjbgeabcrfc94GfgbBd:q:jjjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik9:eiuZbhedndncbyd:q:jjjbgdaecztgi9nmbcuheadai9RcFFifcz4nbcuSmekadhekcbabae9Rcifc98Gcbyd:q:jjjbfgdBd:q:jjjbdnadZbcztge9nmbadae9RcFFifcz4nb8Akkk:Iedbcjwk1eFFuuFFuuFFuuFFuFFFuFFFuFbbbbbbbbeeebeebebbeeebebbbbbebebbbbbbbbbebbbdbbbbbbbebbbebbbdbbbbbbbbbbbeeeeebebbebbebebbbeebbbbbbbbbbbbbbbbbbbbbc1Dkxebbbdbbb:GNbb",Q=new Uint8Array([32,0,65,2,1,106,34,33,3,128,11,4,13,64,6,253,10,7,15,116,127,5,8,12,40,16,19,54,20,9,27,255,113,17,42,67,24,23,146,148,18,14,22,45,70,69,56,114,101,21,25,63,75,136,108,28,118,29,73,115]);if(typeof WebAssembly!=="object")return{supported:!1};var B,Y=WebAssembly.instantiate(J(A),{}).then(function(K){B=K.instance,B.exports.__wasm_call_ctors()});function J(K){var I=new Uint8Array(K.length);for(var V=0;V96?H-97:H>64?H-39:H+4}var D=0;for(var V=0;V=3),C(H>=0&&H<=K.length),C(H%3==0),C(D>=0);var z=0;for(var M=0;M<(L?L.length:0);++M)C(L[M]in E),z|=E[L[M]];var N=K.BYTES_PER_ELEMENT==4?K:new Uint32Array(K),q=W(B.exports.meshopt_simplify,N,K.length,I,I.length/V,V*4,H,D,z);return q[0]=K instanceof Uint32Array?q[0]:new K.constructor(q[0]),q},simplifyWithAttributes:function(K,I,V,H,D,L,z,M,N,q){C(K instanceof Uint32Array||K instanceof Int32Array||K instanceof Uint16Array||K instanceof Int16Array),C(K.length%3==0),C(I instanceof Float32Array),C(I.length%V==0),C(V>=3),C(H instanceof Float32Array),C(H.length%D==0),C(D>=0),C(z==null||z instanceof Uint8Array),C(z==null||z.length==I.length/V),C(M>=0&&M<=K.length),C(M%3==0),C(N>=0),C(Array.isArray(L)),C(D>=L.length),C(L.length<=32);for(var w=0;w=0);var P=0;for(var w=0;w<(q?q.length:0);++w)C(q[w]in E),P|=E[q[w]];var _=K.BYTES_PER_ELEMENT==4?K:new Uint32Array(K),O=Z(B.exports.meshopt_simplifyWithAttributes,_,K.length,I,I.length/V,V*4,H,D*4,new Float32Array(L),z?new Uint8Array(z):null,M,N,P);return O[0]=K instanceof Uint32Array?O[0]:new K.constructor(O[0]),O},getScale:function(K,I){return C(K instanceof Float32Array),C(K.length%I==0),C(I>=3),U(B.exports.meshopt_simplifyScale,K,K.length/I,I*4)},simplifyPoints:function(K,I,V,H,D,L){if(C(K instanceof Float32Array),C(K.length%I==0),C(I>=3),C(V>=0&&V<=K.length/I),H)return C(H instanceof Float32Array),C(H.length%D==0),C(D>=3),C(K.length/I==H.length/D),$(B.exports.meshopt_simplifyPoints,K,K.length/I,I*4,H,D*4,L,V);else return $(B.exports.meshopt_simplifyPoints,K,K.length/I,I*4,void 0,0,0,V)}}}();if(typeof lH==="object"&&typeof Xf==="object")Xf.exports=MR;else if(typeof define==="function"&&define.amd)define([],function(){return MR});else if(typeof lH==="object")lH.MeshoptSimplifier=MR;else(typeof self<"u"?self:lH).MeshoptSimplifier=MR});var OWA=R((pH,Gf)=>{var zR=function(){var A="b9H79TebbbeVx9Geueu9Geub9Gbb9Giuuueu9Gmuuuuuuuuuuu9999eu9Gvuuuuueu9Gwuuuuuuuub9Gxuuuuuuuuuuuueu9Gkuuuuuuuuuu99eu9Gouuuuuub9Gruuuuuuub9GluuuubiOHdilvorwDqqkbiibeilve9Weiiviebeoweuec;G:Odkr:Yewo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bb8A9TW79O9V9Wt9F9I919P29K9nW79O2Wt79c9V919U9KbeX9TW79O9V9Wt9F9I919P29K9nW79O2Wt7bo39TW79O9V9Wt9F9J9V9T9W91tWJ2917tWV9c9V919U9K7br39TW79O9V9Wt9F9J9V9T9W91tW9nW79O2Wt9c9V919U9K7bDL9TW79O9V9Wt9F9V9Wt9P9T9P96W9nW79O2Wtbql79IV9RbkDwebcekdsPq;Q9BHdbkIbabaec9:fgefcufae9Ugeabci9Uadfcufad9Ugbaeab0Ek:w8KDPue99eux99dui99euo99iu8Jjjjjbc:WD9Rgm8KjjjjbdndnalmbcbhPxekamc:Cwfcbc;Kbz:njjjb8Adndnalcb9imbaoal9nmbamcuaocdtaocFFFFi0Egscbyd;y1jjbHjjjjbbgzBd:CwamceBd;8wamascbyd;y1jjbHjjjjbbgHBd:GwamcdBd;8wamcualcdtalcFFFFi0Ecbyd;y1jjbHjjjjbbgOBd:KwamciBd;8waihsalhAinazasydbcdtfcbBdbasclfhsaAcufgAmbkaihsalhAinazasydbcdtfgCaCydbcefBdbasclfhsaAcufgAmbkaihsalhCcbhXindnazasydbcdtgQfgAydbcb9imbaHaQfaXBdbaAaAydbgQcjjjj94VBdbaQaXfhXkasclfhsaCcufgCmbkalci9UhLdnalci6mbcbhsaihAinaAcwfydbhCaAclfydbhXaHaAydbcdtfgQaQydbgQcefBdbaOaQcdtfasBdbaHaXcdtfgXaXydbgXcefBdbaOaXcdtfasBdbaHaCcdtfgCaCydbgCcefBdbaOaCcdtfasBdbaAcxfhAaLascefgs9hmbkkaihsalhAindnazasydbcdtgCfgXydbgQcu9kmbaXaQcFFFFrGgQBdbaHaCfgCaCydbaQ9RBdbkasclfhsaAcufgAmbxdkkamcuaocdtgsaocFFFFi0EgAcbyd;y1jjbHjjjjbbgzBd:CwamceBd;8wamaAcbyd;y1jjbHjjjjbbgHBd:GwamcdBd;8wamcualcdtalcFFFFi0Ecbyd;y1jjbHjjjjbbgOBd:KwamciBd;8wazcbasz:njjjbhXalci9UhLaihsalhAinaXasydbcdtfgCaCydbcefBdbasclfhsaAcufgAmbkdnaoTmbcbhsaHhAaXhCaohQinaAasBdbaAclfhAaCydbasfhsaCclfhCaQcufgQmbkkdnalci6mbcbhsaihAinaAcwfydbhCaAclfydbhQaHaAydbcdtfgKaKydbgKcefBdbaOaKcdtfasBdbaHaQcdtfgQaQydbgQcefBdbaOaQcdtfasBdbaHaCcdtfgCaCydbgCcefBdbaOaCcdtfasBdbaAcxfhAaLascefgs9hmbkkaoTmbcbhsaohAinaHasfgCaCydbaXasfydb9RBdbasclfhsaAcufgAmbkkamaLcbyd;y1jjbHjjjjbbgsBd:OwamclBd;8wascbaLz:njjjbhYamcuaLcK2alcjjjjd0Ecbyd;y1jjbHjjjjbbg8ABd:SwamcvBd;8wJbbbbhEdnalci6g3mbarcd4hKaihAa8AhsaLhrJbbbbh5inavaAclfydbaK2cdtfgCIdlh8EavaAydbaK2cdtfgXIdlhEavaAcwfydbaK2cdtfgQIdlh8FaCIdwhaaXIdwhhaQIdwhgasaCIdbg8JaXIdbg8KMaQIdbg8LMJbbnn:vUdbasclfaXIdlaCIdlMaQIdlMJbbnn:vUdbaQIdwh8MaCIdwh8NaXIdwhyascxfa8EaE:tg8Eagah:tggNa8FaE:tg8Faaah:tgaN:tgEJbbbbJbbjZa8Ja8K:tg8Ja8FNa8La8K:tg8Ka8EN:tghahNaEaENaaa8KNaga8JN:tgEaENMM:rg8K:va8KJbbbb9BEg8ENUdbasczfaEa8ENUdbascCfaha8ENUdbascwfa8Maya8NMMJbbnn:vUdba5a8KMh5aAcxfhAascKfhsarcufgrmbka5aL:Z:vJbbbZNhEkamcuaLcdtalcFFFF970Ecbyd;y1jjbHjjjjbbgCBd:WwamcoBd;8waEaq:ZNhEdna3mbcbhsaChAinaAasBdbaAclfhAaLascefgs9hmbkkaE:rhhcuh8PamcuaLcltalcFFFFd0Ecbyd;y1jjbHjjjjbbgIBd:0wamcrBd;8wcbaIa8AaCaLz:djjjb8AJFFuuhyJFFuuh8RJFFuuh8Sdnalci6gXmbJFFuuh8Sa8AhsaLhAJFFuuh8RJFFuuhyinascwfIdbgEayayaE9EEhyasclfIdbgEa8Ra8RaE9EEh8RasIdbgEa8Sa8SaE9EEh8SascKfhsaAcufgAmbkkahJbbbZNhgamaocetgscuaocu9kEcbyd;y1jjbHjjjjbbgABd:4waAcFeasz:njjjbhCdnaXmbcbhAJFFuuhEa8Ahscuh8PinascwfIdbay:tghahNasIdba8S:tghahNasclfIdba8R:tghahNMM:rghaEa8PcuSahaE9DVgXEhEaAa8PaXEh8PascKfhsaLaAcefgA9hmbkkamczfcbcjwz:njjjb8Aamcwf9cb83ibam9cb83ibagaxNhRJbbjZak:th8Ncbh8UJbbbbh8VJbbbbh8WJbbbbh8XJbbbbh8YJbbbbh8ZJbbbbh80cbh81cbhPinJbbbbhEdna8UTmbJbbjZa8U:Z:vhEkJbbbbhhdna80a80Na8Ya8YNa8Za8ZNMMg8KJbbbb9BmbJbbjZa8K:r:vhhka8XaENh5a8WaENh8Fa8VaENhaa8PhQdndndndndna8UaPVTmbamydwgBTmea80ahNh8Ja8ZahNh8La8YahNh8Maeamydbcdtfh83cbh3JFFuuhEcvhXcuhQindnaza83a3cdtfydbcdtgsfydbgvTmbaOaHasfydbcdtfhAindndnaCaiaAydbgKcx2fgsclfydbgrcetf8Vebcs4aCasydbgLcetf8Vebcs4faCascwfydbglcetf8Vebcs4fgombcbhsxekcehsazaLcdtfydbgLceSmbcehsazarcdtfydbgrceSmbcehsazalcdtfydbglceSmbdnarcdSaLcdSfalcdSfcd6mbaocefhsxekaocdfhskdnasaX9kmba8AaKcK2fgLIdwa5:thhaLIdla8F:th8KaLIdbaa:th8EdndnakJbbbb9DTmba8E:lg8Ea8K:lg8Ka8Ea8K9EEg8Kah:lgha8Kah9EEag:vJbbjZMhhxekahahNa8Ea8ENa8Ka8KNMM:rag:va8NNJbbjZMJ9VO:d86JbbjZaLIdCa8JNaLIdxa8MNa8LaLIdzNMMakN:tghahJ9VO:d869DENhhkaKaQasaX6ahaE9DVgLEhQasaXaLEhXahaEaLEhEkaAclfhAavcufgvmbkka3cefg3aB9hmbkkaQcu9hmekama5Ud:ODama8FUd:KDamaaUd:GDamcuBd:qDamcFFF;7rBdjDaIcba8AaYamc:GDfakJbbbb9Damc:qDfamcjDfz:ejjjbamyd:qDhQdndnaxJbbbb9ETmba8UaD6mbaQcuSmeceh3amIdjDaR9EmixdkaQcu9hmekdna8UTmbdnamydlgza8Uci2fgsciGTmbadasfcba8Uazcu7fciGcefz:njjjb8AkabaPcltfgzam8Pib83dbazcwfamcwf8Pib83dbaPcefhPkc3hzinazc98Smvamc:Cwfazfydbcbyd;u1jjbH:bjjjbbazc98fhzxbkkcbh3a8Uaq9pmbamydwaCaiaQcx2fgsydbcetf8Vebcs4aCascwfydbcetf8Vebcs4faCasclfydbcetf8Vebcs4ffaw9nmekcbhscbhAdna81TmbcbhAamczfhXinamczfaAcdtfaXydbgLBdbaXclfhXaAaYaLfRbbTfhAa81cufg81mbkkamydwhlamydbhXam9cu83i:GDam9cu83i:ODam9cu83i:qDam9cu83i:yDaAc;8eaAclfc:bd6Eh81inamcjDfasfcFFF;7rBdbasclfgscz9hmbka81cdthBdnalTmbaeaXcdtfhocbhrindnazaoarcdtfydbcdtgsfydbgvTmbaOaHasfydbcdtfhAcuhLcuhsinazaiaAydbgKcx2fgXclfydbcdtfydbazaXydbcdtfydbfazaXcwfydbcdtfydbfgXasaXas6gXEhsaKaLaXEhLaAclfhAavcufgvmbkaLcuSmba8AaLcK2fgAIdway:tgEaENaAIdba8S:tgEaENaAIdla8R:tgEaENMM:rhEcbhAindndnasamc:qDfaAfgvydbgX6mbasaX9hmeaEamcjDfaAfIdb9FTmekavasBdbamc:GDfaAfaLBdbamcjDfaAfaEUdbxdkaAclfgAcz9hmbkkarcefgral9hmbkkamczfaBfhLcbhscbhAindnamc:GDfasfydbgXcuSmbaLaAcdtfaXBdbaAcefhAkasclfgscz9hmbkaAa81fg81TmbJFFuuhhcuhKamczfhsa81hvcuhLina8AasydbgXcK2fgAIdway:tgEaENaAIdba8S:tgEaENaAIdla8R:tgEaENMM:rhEdndnazaiaXcx2fgAclfydbcdtfydbazaAydbcdtfydbfazaAcwfydbcdtfydbfgAaL6mbaAaL9hmeaEah9DTmekaEhhaAhLaXhKkasclfhsavcufgvmbkaKcuSmbaKhQkdnamaiaQcx2fgrydbarclfydbarcwfydbaCabaeadaPawaqa3z:fjjjbTmbaPcefhPJbbbbh8VJbbbbh8WJbbbbh8XJbbbbh8YJbbbbh8ZJbbbbh80kcbhXinaOaHaraXcdtfydbcdtgAfydbcdtfgKhsazaAfgvydbgLhAdnaLTmbdninasydbaQSmeasclfhsaAcufgATmdxbkkasaKaLcdtfc98fydbBdbavavydbcufBdbkaXcefgXci9hmbka8AaQcK2fgsIdbhEasIdlhhasIdwh8KasIdxh8EasIdzh5asIdCh8FaYaQfce86bba80a8FMh80a8Za5Mh8Za8Ya8EMh8Ya8Xa8KMh8Xa8WahMh8Wa8VaEMh8Vamydxh8Uxbkkamc:WDf8KjjjjbaPk;Vvivuv99lu8Jjjjjbca9Rgv8Kjjjjbdndnalcw0mbaiydbhoaeabcitfgralcdtcufBdlaraoBdbdnalcd6mbaiclfhoalcufhwarcxfhrinaoydbhDarcuBdbarc98faDBdbarcwfhraoclfhoawcufgwmbkkalabfhrxekcbhDavczfcwfcbBdbav9cb83izavcwfcbBdbav9cb83ibJbbjZhqJbbjZhkinadaiaDcdtfydbcK2fhwcbhrinavczfarfgoawarfIdbgxaoIdbgm:tgPakNamMgmUdbavarfgoaPaxam:tNaoIdbMUdbarclfgrcx9hmbkJbbjZaqJbbjZMgq:vhkaDcefgDal9hmbkcbhoadcbcecdavIdlgxavIdwgm9GEgravIdbgPam9GEaraPax9GEgscdtgrfhzavczfarfIdbhxaihralhwinaiaocdtfgDydbhHaDarydbgOBdbaraHBdbarclfhraoazaOcK2fIdbax9Dfhoawcufgwmbkaeabcitfhrdndnaocv6mbaoalc98f6mekaraiydbBdbaralcdtcufBdlaiclfhoalcufhwarcxfhrinaoydbhDarcuBdbarc98faDBdbarcwfhraoclfhoawcufgwmbkalabfhrxekaraxUdbararydlc98GasVBdlabcefaeadaiaoz:djjjbhwararydlciGawabcu7fcdtVBdlawaeadaiaocdtfalao9Rz:djjjbhrkavcaf8Kjjjjbark:;idiud99dndnabaecitfgwydlgDciGgqciSmbinabcbaDcd4gDalaqcdtfIdbawIdb:tgkJbbbb9FEgwaecefgefadaialavaoarz:ejjjbak:larIdb9FTmdabawaD7aefgecitfgwydlgDciGgqci9hmbkkabaecitfgeclfhbdnavmbcuhwindnaiaeydbgDfRbbmbadaDcK2fgqIdwalIdw:tgkakNaqIdbalIdb:tgkakNaqIdlalIdl:tgkakNMM:rgkarIdb9DTmbarakUdbaoaDBdbkaecwfheawcefgwabydbcd46mbxdkkcuhwindnaiaeydbgDfRbbmbadaDcK2fgqIdbalIdb:t:lgkaqIdlalIdl:t:lgxakax9EEgkaqIdwalIdw:t:lgxakax9EEgkarIdb9DTmbarakUdbaoaDBdbkaecwfheawcefgwabydbcd46mbkkk;llevudnabydwgxaladcetfgm8Vebcs4alaecetfgP8Vebgscs4falaicetfgz8Vebcs4ffaD0abydxaq9pVakVgDce9hmbavawcltfgxab8Pdb83dbaxcwfabcwfgx8Pdb83dbdnaxydbgqTmbaoabydbcdtfhxaqhsinalaxydbcetfcFFi87ebaxclfhxascufgsmbkkdnabydxglci2gsabydlgxfgkciGTmbarakfcbalaxcu7fciGcefz:njjjb8Aabydxci2hsabydlhxabydwhqkab9cb83dwababydbaqfBdbabascifc98GaxfBdlaP8Vebhscbhxkdnascztcz91cu9kmbabaxcefBdwaPax87ebaoabydbcdtfaxcdtfaeBdbkdnam8Uebcu9kmbababydwgxcefBdwamax87ebaoabydbcdtfaxcdtfadBdbkdnaz8Uebcu9kmbababydwgxcefBdwazax87ebaoabydbcdtfaxcdtfaiBdbkarabydlfabydxci2faPRbb86bbarabydlfabydxci2fcefamRbb86bbarabydlfabydxci2fcdfazRbb86bbababydxcefBdxaDk8LbabaeadaialavaoarawaDaDaqJbbbbz:cjjjbk;Nkovud99euv99eul998Jjjjjbc:W;ae9Rgo8KjjjjbdndnadTmbavcd4hrcbhwcbhDindnaiaeclfydbar2cdtfgvIdbaiaeydbar2cdtfgqIdbgk:tgxaiaecwfydbar2cdtfgmIdlaqIdlgP:tgsNamIdbak:tgzavIdlaP:tgPN:tgkakNaPamIdwaqIdwgH:tgONasavIdwaH:tgHN:tgPaPNaHazNaOaxN:tgxaxNMM:rgsJbbbb9Bmbaoc:W:qefawcx2fgAakas:vUdwaAaxas:vUdlaAaPas:vUdbaoc8Wfawc8K2fgAaq8Pdb83dbaAav8Pdb83dxaAam8Pdb83dKaAcwfaqcwfydbBdbaAcCfavcwfydbBdbaAcafamcwfydbBdbawcefhwkaecxfheaDcifgDad6mbkab9cb83dbabcyf9cb83dbabcaf9cb83dbabcKf9cb83dbabczf9cb83dbabcwf9cb83dbawTmeaocbBd8Sao9cb83iKao9cb83izaoczfaoc8Wfawci2cxaoc8Sfcbcrz1jjjbaoIdKhCaoIdChXaoIdzhQao9cb83iwao9cb83ibaoaoc:W:qefawcxaoc8Sfcbciz1jjjbJbbjZhkaoIdwgPJbbbbJbbjZaPaPNaoIdbgPaPNaoIdlgsasNMM:rgx:vaxJbbbb9BEgzNhxasazNhsaPazNhzaoc:W:qefheawhvinaecwfIdbaxNaeIdbazNasaeclfIdbNMMgPakaPak9DEhkaecxfheavcufgvmbkabaCUdwabaXUdlabaQUdbabaoId3UdxdndnakJ;n;m;m899FmbJbbbbhPaoc:W:qefheaoc8WfhvinaCavcwfIdb:taecwfIdbgHNaQavIdb:taeIdbgONaXavclfIdb:taeclfIdbgLNMMaxaHNazaONasaLNMM:vgHaPaHaP9EEhPavc8KfhvaecxfheawcufgwmbkabaxUd8KabasUdaabazUd3abaCaxaPN:tUdKabaXasaPN:tUdCabaQazaPN:tUdzabJbbjZakakN:t:rgkUdydndnaxJbbj:;axJbbj:;9GEgPJbbjZaPJbbjZ9FEJbb;:9cNJbbbZJbbb:;axJbbbb9GEMgP:lJbbb9p9DTmbaP:Ohexekcjjjj94hekabae86b8UdndnasJbbj:;asJbbj:;9GEgPJbbjZaPJbbjZ9FEJbb;:9cNJbbbZJbbb:;asJbbbb9GEMgP:lJbbb9p9DTmbaP:Ohvxekcjjjj94hvkabav86bRdndnazJbbj:;azJbbj:;9GEgPJbbjZaPJbbjZ9FEJbb;:9cNJbbbZJbbb:;azJbbbb9GEMgP:lJbbb9p9DTmbaP:Ohqxekcjjjj94hqkabaq86b8SdndnaecKtcK91:YJbb;:9c:vax:t:lavcKtcK91:YJbb;:9c:vas:t:laqcKtcK91:YJbb;:9c:vaz:t:lakMMMJbb;:9cNJbbjZMgk:lJbbb9p9DTmbak:Ohexekcjjjj94hekaecFbaecFb9iEhexekabcjjj;8iBdycFbhekabae86b8Vxekab9cb83dbabcyf9cb83dbabcaf9cb83dbabcKf9cb83dbabczf9cb83dbabcwf9cb83dbkaoc:W;aef8Kjjjjbk;Iwwvul99iud99eue99eul998Jjjjjbcje9Rgr8Kjjjjbavcd4hwaicd4hDdndnaoTmbarc;abfcbaocdtgvz:njjjb8Aarc;Gbfcbavz:njjjb8AarhvarcafhiaohqinavcFFF97BdbaicFFF;7rBdbaiclfhiavclfhvaqcufgqmbkdnadTmbcbhkinaeakaD2cdtfgvIdwhxavIdlhmavIdbhPalakaw2cdtfIdbhsarc;abfhzarhiarc;GbfhHarcafhqcj1jjbhvaohOinasavcwfIdbaxNavIdbaPNavclfIdbamNMMgAMhCakhXdnaAas:tgAaqIdbgQ9DgLmbaHydbhXkaHaXBdbakhXdnaCaiIdbgK9EmbazydbhXaKhCkazaXBdbaiaCUdbaqaAaQaLEUdbavcxfhvaqclfhqaHclfhHaiclfhiazclfhzaOcufgOmbkakcefgkad9hmbkkadThkJbbbbhCcbhXarc;abfhvarc;Gbfhicbhqinalavydbgzaw2cdtfIdbalaiydbgHaw2cdtfIdbaeazaD2cdtfgzIdwaeaHaD2cdtfgHIdw:tgsasNazIdbaHIdb:tgsasNazIdlaHIdl:tgsasNMM:rMMgsaCasaC9EgzEhCaqaXazEhXaiclfhiavclfhvaoaqcefgq9hmbkaCJbbbZNhKxekadThkcbhXJbbbbhKkJbbbbhCdnaearc;abfaXcdtgifydbgqaD2cdtfgvIdwaearc;GbfaifydbgzaD2cdtfgiIdwgm:tgsasNavIdbaiIdbgY:tgAaANavIdlaiIdlgP:tgQaQNMM:rgxJbbbb9ETmbaxalaqaw2cdtfIdbMalazaw2cdtfIdb:taxaxM:vhCkasaCNamMhmaQaCNaPMhPaAaCNaYMhYdnakmbaDcdthvawcdthiindnalIdbg8AaecwfIdbam:tgCaCNaeIdbaY:tgsasNaeclfIdbaP:tgAaANMM:rgQMgEaK9ETmbJbbbbhxdnaQJbbbb9ETmbaEaK:taQaQM:vhxkaxaCNamMhmaxaANaPMhPaxasNaYMhYa8AaKaQMMJbbbZNhKkaeavfhealaifhladcufgdmbkkabaKUdxabamUdwabaPUdlabaYUdbarcjef8Kjjjjbkjeeiu8Jjjjjbcj8W9Rgr8Kjjjjbaici2hwdnaiTmbawceawce0EhDarhiinaiaeadRbbcdtfydbBdbadcefhdaiclfhiaDcufgDmbkkabarawaladaoz:hjjjbarcj8Wf8Kjjjjbk:3lequ8JjjjjbcjP9Rgl8Kjjjjbcbhvalcjxfcbaiz:njjjb8AdndnadTmbcjehoaehrincuhwarhDcuhqavhkdninawakaoalcjxfaDcefRbbfRbb9RcFeGci6aoalcjxfaDRbbfRbb9RcFeGci6faoalcjxfaDcdfRbbfRbb9RcFeGci6fgxaq9mgmEhwdnammbaxce0mdkaxaqaxaq9kEhqaDcifhDadakcefgk9hmbkkaeawci2fgDcdfRbbhqaDcefRbbhxaDRbbhkaeavci2fgDcifaDawav9Rci2z:qjjjb8Aakalcjxffaocefgo86bbaxalcjxffao86bbaDcdfaq86bbaDcefax86bbaDak86bbaqalcjxffao86bbarcifhravcefgvad9hmbkalcFeaicetz:njjjbhoadci2gDceaDce0EhqcbhxindnaoaeRbbgkcetfgw8UebgDcu9kmbawax87ebaocjlfaxcdtfabakcdtfydbBdbaxhDaxcefhxkaeaD86bbaecefheaqcufgqmbkaxcdthDxekcbhDkabalcjlfaDz:mjjjb8AalcjPf8Kjjjjbk9teiucbcbyd;C1jjbgeabcifc98GfgbBd;C1jjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik;teeeudndnaeabVciGTmbabhixekdndnadcz9pmbabhixekabhiinaiaeydbBdbaiaeydlBdlaiaeydwBdwaiaeydxBdxaeczfheaiczfhiadc9Wfgdcs0mbkkadcl6mbinaiaeydbBdbaeclfheaiclfhiadc98fgdci0mbkkdnadTmbinaiaeRbb86bbaicefhiaecefheadcufgdmbkkabk:3eedudndnabciGTmbabhixekaecFeGc:b:c:ew2hldndnadcz9pmbabhixekabhiinaialBdxaialBdwaialBdlaialBdbaiczfhiadc9Wfgdcs0mbkkadcl6mbinaialBdbaiclfhiadc98fgdci0mbkkdnadTmbinaiae86bbaicefhiadcufgdmbkkabk9teiucbcbyd;C1jjbgeabcrfc94GfgbBd;C1jjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik9:eiuZbhedndncbyd;C1jjbgdaecztgi9nmbcuheadai9RcFFifcz4nbcuSmekadhekcbabae9Rcifc98Gcbyd;C1jjbfgdBd;C1jjbdnadZbcztge9nmbadae9RcFFifcz4nb8Akk:;Deludndndnadch9pmbabaeSmdaeabadfgi9Rcbadcet9R0mekabaead;8qbbxekaeab7ciGhldndndnabae9pmbdnalTmbadhvabhixikdnabciGmbadhvabhixdkadTmiabaeRbb86bbadcufhvdnabcefgiciGmbaecefhexdkavTmiabaeRbe86beadc9:fhvdnabcdfgiciGmbaecdfhexdkavTmiabaeRbd86bdadc99fhvdnabcifgiciGmbaecifhexdkavTmiabaeRbi86biabclfhiaeclfheadc98fhvxekdnalmbdnaiciGTmbadTmlabadcufgifglaeaifRbb86bbdnalciGmbaihdxekaiTmlabadc9:fgifglaeaifRbb86bbdnalciGmbaihdxekaiTmlabadc99fgifglaeaifRbb86bbdnalciGmbaihdxekaiTmlabadc98fgdfaeadfRbb86bbkadcl6mbdnadc98fgocd4cefciGgiTmbaec98fhlabc98fhvinavadfaladfydbBdbadc98fhdaicufgimbkkaocx6mbaec9Wfhvabc9WfhoinaoadfgicxfavadfglcxfydbBdbaicwfalcwfydbBdbaiclfalclfydbBdbaialydbBdbadc9Wfgdci0mbkkadTmdadhidnadciGglTmbaecufhvabcufhoadhiinaoaifavaifRbb86bbaicufhialcufglmbkkadcl6mdaec98fhlabc98fhvinavaifgecifalaifgdcifRbb86bbaecdfadcdfRbb86bbaecefadcefRbb86bbaeadRbb86bbaic98fgimbxikkavcl6mbdnavc98fglcd4cefcrGgdTmbavadcdt9RhvinaiaeydbBdbaeclfheaiclfhiadcufgdmbkkalc36mbinaiaeydbBdbaiaeydlBdlaiaeydwBdwaiaeydxBdxaiaeydzBdzaiaeydCBdCaiaeydKBdKaiaeyd3Bd3aecafheaicafhiavc9Gfgvci0mbkkavTmbdndnavcrGgdmbavhlxekavc94GhlinaiaeRbb86bbaicefhiaecefheadcufgdmbkkavcw6mbinaiaeRbb86bbaiaeRbe86beaiaeRbd86bdaiaeRbi86biaiaeRbl86blaiaeRbv86bvaiaeRbo86boaiaeRbr86braicwfhiaecwfhealc94fglmbkkabkk9Tdbcjwk9ubbjZbbbbbbbbbbbbbbjZbbbbbbbbbbbbbbjZ86;nAZ86;nAZ86;nAZ86;nA:;86;nAZ86;nAZ86;nAZ86;nA:;86;nAZ86;nAZ86;nAZ86;nA:;bc;uwkxebbbdbbb9GNbb",Q=new Uint8Array([32,0,65,2,1,106,34,33,3,128,11,4,13,64,6,253,10,7,15,116,127,5,8,12,40,16,19,54,20,9,27,255,113,17,42,67,24,23,146,148,18,14,22,45,70,69,56,114,101,21,25,63,75,136,108,28,118,29,73,115]);if(typeof WebAssembly!=="object")return{supported:!1};var B,Y=WebAssembly.instantiate(J(A),{}).then(function(K){B=K.instance,B.exports.__wasm_call_ctors()});function J(K){var I=new Uint8Array(K.length);for(var V=0;V96?H-97:H>64?H-39:H+4}var D=0;for(var V=0;V=3),C(H<=256||H>0),C(D<=512),C(D%4==0),L=L||0;var z=K.BYTES_PER_ELEMENT==4?K:new Uint32Array(K);return Z(z,I,I.length/V,V*4,H,D,L)},computeClusterBounds:function(K,I,V){C(K.length%3==0),C(K.length/3<=512),C(I instanceof Float32Array),C(I.length%V==0),C(V>=3);var H=K.BYTES_PER_ELEMENT==4?K:new Uint32Array(K);return E(H,I,I.length/V,V*4)},computeMeshletBounds:function(K,I,V){return C(K.meshletCount!=0),C(I instanceof Float32Array),C(I.length%V==0),C(V>=3),$(K,I,I.length/V,V*4)},extractMeshlet:function(K,I){return C(I>=0&&I{var ZYB=RWA(),$YB=wWA(),UYB=jWA(),EYB=OWA();PWA.exports={MeshoptEncoder:ZYB,MeshoptDecoder:$YB,MeshoptSimplifier:UYB,MeshoptClusterizer:EYB}});var rH=R((yWA)=>{Object.defineProperty(yWA,"__esModule",{value:!0});yWA.regexpCode=yWA.getEsmExportName=yWA.getProperty=yWA.safeStringify=yWA.stringify=yWA.strConcat=yWA.addCodeArg=yWA.str=yWA._=yWA.nil=yWA._Code=yWA.Name=yWA.IDENTIFIER=yWA._CodeOrName=void 0;class wR{}yWA._CodeOrName=wR;yWA.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;class sU extends wR{constructor(A){super();if(!yWA.IDENTIFIER.test(A))throw Error("CodeGen: name must be a valid identifier");this.str=A}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}}yWA.Name=sU;class _C extends wR{constructor(A){super();this._items=typeof A==="string"?[A]:A}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let A=this._items[0];return A===""||A==='""'}get str(){var A;return(A=this._str)!==null&&A!==void 0?A:this._str=this._items.reduce((Q,B)=>`${Q}${B}`,"")}get names(){var A;return(A=this._names)!==null&&A!==void 0?A:this._names=this._items.reduce((Q,B)=>{if(B instanceof sU)Q[B.str]=(Q[B.str]||0)+1;return Q},{})}}yWA._Code=_C;yWA.nil=new _C("");function _WA(A,...Q){let B=[A[0]],Y=0;while(Y{Object.defineProperty(fWA,"__esModule",{value:!0});fWA.ValueScope=fWA.ValueScopeName=fWA.Scope=fWA.varKinds=fWA.UsedValueState=void 0;var S9=rH();class hWA extends Error{constructor(A){super(`CodeGen: "code" for ${A} not defined`);this.value=A.value}}var OR;(function(A){A[A.Started=0]="Started",A[A.Completed=1]="Completed"})(OR||(fWA.UsedValueState=OR={}));fWA.varKinds={const:new S9.Name("const"),let:new S9.Name("let"),var:new S9.Name("var")};class Vf{constructor({prefixes:A,parent:Q}={}){this._names={},this._prefixes=A,this._parent=Q}toName(A){return A instanceof S9.Name?A:this.name(A)}name(A){return new S9.Name(this._newName(A))}_newName(A){let Q=this._names[A]||this._nameGroup(A);return`${A}${Q.index++}`}_nameGroup(A){var Q,B;if(((B=(Q=this._parent)===null||Q===void 0?void 0:Q._prefixes)===null||B===void 0?void 0:B.has(A))||this._prefixes&&!this._prefixes.has(A))throw Error(`CodeGen: prefix "${A}" is not allowed in this scope`);return this._names[A]={prefix:A,index:0}}}fWA.Scope=Vf;class If extends S9.Name{constructor(A,Q){super(Q);this.prefix=A}setValue(A,{property:Q,itemIndex:B}){this.value=A,this.scopePath=S9._`.${new S9.Name(Q)}[${B}]`}}fWA.ValueScopeName=If;var hYB=S9._`\n`;class xWA extends Vf{constructor(A){super(A);this._values={},this._scope=A.scope,this.opts={...A,_n:A.lines?hYB:S9.nil}}get(){return this._scope}name(A){return new If(A,this._newName(A))}value(A,Q){var B;if(Q.ref===void 0)throw Error("CodeGen: ref must be passed in value");let Y=this.toName(A),{prefix:J}=Y,C=(B=Q.key)!==null&&B!==void 0?B:Q.ref,X=this._values[J];if(X){let W=X.get(C);if(W)return W}else X=this._values[J]=new Map;X.set(C,Y);let G=this._scope[J]||(this._scope[J]=[]),F=G.length;return G[F]=Q.ref,Y.setValue(Q,{property:J,itemIndex:F}),Y}getValue(A,Q){let B=this._values[A];if(!B)return;return B.get(Q)}scopeRefs(A,Q=this._values){return this._reduceValues(Q,(B)=>{if(B.scopePath===void 0)throw Error(`CodeGen: name "${B}" has no value`);return S9._`${A}${B.scopePath}`})}scopeCode(A=this._values,Q,B){return this._reduceValues(A,(Y)=>{if(Y.value===void 0)throw Error(`CodeGen: name "${Y}" has no value`);return Y.value.code},Q,B)}_reduceValues(A,Q,B={},Y){let J=S9.nil;for(let C in A){let X=A[C];if(!X)continue;let G=B[C]=B[C]||new Map;X.forEach((F)=>{if(G.has(F))return;G.set(F,OR.Started);let W=Q(F);if(W){let Z=this.opts.es5?fWA.varKinds.var:fWA.varKinds.const;J=S9._`${J}${Z} ${F} = ${W};${this.opts._n}`}else if(W=Y===null||Y===void 0?void 0:Y(F))J=S9._`${J}${W}${this.opts._n}`;else throw new hWA(F);G.set(F,OR.Completed)})}return J}}fWA.ValueScope=xWA});var GB=R((k9)=>{Object.defineProperty(k9,"__esModule",{value:!0});k9.or=k9.and=k9.not=k9.CodeGen=k9.operators=k9.varKinds=k9.ValueScopeName=k9.ValueScope=k9.Scope=k9.Name=k9.regexpCode=k9.stringify=k9.getProperty=k9.nil=k9.strConcat=k9.str=k9._=void 0;var HB=rH(),vC=Hf(),P7=rH();Object.defineProperty(k9,"_",{enumerable:!0,get:function(){return P7._}});Object.defineProperty(k9,"str",{enumerable:!0,get:function(){return P7.str}});Object.defineProperty(k9,"strConcat",{enumerable:!0,get:function(){return P7.strConcat}});Object.defineProperty(k9,"nil",{enumerable:!0,get:function(){return P7.nil}});Object.defineProperty(k9,"getProperty",{enumerable:!0,get:function(){return P7.getProperty}});Object.defineProperty(k9,"stringify",{enumerable:!0,get:function(){return P7.stringify}});Object.defineProperty(k9,"regexpCode",{enumerable:!0,get:function(){return P7.regexpCode}});Object.defineProperty(k9,"Name",{enumerable:!0,get:function(){return P7.Name}});var vR=Hf();Object.defineProperty(k9,"Scope",{enumerable:!0,get:function(){return vR.Scope}});Object.defineProperty(k9,"ValueScope",{enumerable:!0,get:function(){return vR.ValueScope}});Object.defineProperty(k9,"ValueScopeName",{enumerable:!0,get:function(){return vR.ValueScopeName}});Object.defineProperty(k9,"varKinds",{enumerable:!0,get:function(){return vR.varKinds}});k9.operators={GT:new HB._Code(">"),GTE:new HB._Code(">="),LT:new HB._Code("<"),LTE:new HB._Code("<="),EQ:new HB._Code("==="),NEQ:new HB._Code("!=="),NOT:new HB._Code("!"),OR:new HB._Code("||"),AND:new HB._Code("&&"),ADD:new HB._Code("+")};class T7{optimizeNodes(){return this}optimizeNames(A,Q){return this}}class mWA extends T7{constructor(A,Q,B){super();this.varKind=A,this.name=Q,this.rhs=B}render({es5:A,_n:Q}){let B=A?vC.varKinds.var:this.varKind,Y=this.rhs===void 0?"":` = ${this.rhs}`;return`${B} ${this.name}${Y};`+Q}optimizeNames(A,Q){if(!A[this.name.str])return;if(this.rhs)this.rhs=aU(this.rhs,A,Q);return this}get names(){return this.rhs instanceof HB._CodeOrName?this.rhs.names:{}}}class Lf extends T7{constructor(A,Q,B){super();this.lhs=A,this.rhs=Q,this.sideEffects=B}render({_n:A}){return`${this.lhs} = ${this.rhs};`+A}optimizeNames(A,Q){if(this.lhs instanceof HB.Name&&!A[this.lhs.str]&&!this.sideEffects)return;return this.rhs=aU(this.rhs,A,Q),this}get names(){let A=this.lhs instanceof HB.Name?{}:{...this.lhs.names};return _R(A,this.rhs)}}class uWA extends Lf{constructor(A,Q,B,Y){super(A,B,Y);this.op=Q}render({_n:A}){return`${this.lhs} ${this.op}= ${this.rhs};`+A}}class dWA extends T7{constructor(A){super();this.label=A,this.names={}}render({_n:A}){return`${this.label}:`+A}}class cWA extends T7{constructor(A){super();this.label=A,this.names={}}render({_n:A}){return`break${this.label?` ${this.label}`:""};`+A}}class lWA extends T7{constructor(A){super();this.error=A}render({_n:A}){return`throw ${this.error};`+A}get names(){return this.error.names}}class pWA extends T7{constructor(A){super();this.code=A}render({_n:A}){return`${this.code};`+A}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(A,Q){return this.code=aU(this.code,A,Q),this}get names(){return this.code instanceof HB._CodeOrName?this.code.names:{}}}class yR extends T7{constructor(A=[]){super();this.nodes=A}render(A){return this.nodes.reduce((Q,B)=>Q+B.render(A),"")}optimizeNodes(){let{nodes:A}=this,Q=A.length;while(Q--){let B=A[Q].optimizeNodes();if(Array.isArray(B))A.splice(Q,1,...B);else if(B)A[Q]=B;else A.splice(Q,1)}return A.length>0?this:void 0}optimizeNames(A,Q){let{nodes:B}=this,Y=B.length;while(Y--){let J=B[Y];if(J.optimizeNames(A,Q))continue;mYB(A,J.names),B.splice(Y,1)}return B.length>0?this:void 0}get names(){return this.nodes.reduce((A,Q)=>QZ(A,Q.names),{})}}class S7 extends yR{render(A){return"{"+A._n+super.render(A)+"}"+A._n}}class iWA extends yR{}class aH extends S7{}aH.kind="else";class kG extends S7{constructor(A,Q){super(Q);this.condition=A}render(A){let Q=`if(${this.condition})`+super.render(A);if(this.else)Q+="else "+this.else.render(A);return Q}optimizeNodes(){super.optimizeNodes();let A=this.condition;if(A===!0)return this.nodes;let Q=this.else;if(Q){let B=Q.optimizeNodes();Q=this.else=Array.isArray(B)?new aH(B):B}if(Q){if(A===!1)return Q instanceof kG?Q:Q.nodes;if(this.nodes.length)return this;return new kG(oWA(A),Q instanceof kG?[Q]:Q.nodes)}if(A===!1||!this.nodes.length)return;return this}optimizeNames(A,Q){var B;if(this.else=(B=this.else)===null||B===void 0?void 0:B.optimizeNames(A,Q),!(super.optimizeNames(A,Q)||this.else))return;return this.condition=aU(this.condition,A,Q),this}get names(){let A=super.names;if(_R(A,this.condition),this.else)QZ(A,this.else.names);return A}}kG.kind="if";class rU extends S7{}rU.kind="for";class nWA extends rU{constructor(A){super();this.iteration=A}render(A){return`for(${this.iteration})`+super.render(A)}optimizeNames(A,Q){if(!super.optimizeNames(A,Q))return;return this.iteration=aU(this.iteration,A,Q),this}get names(){return QZ(super.names,this.iteration.names)}}class sWA extends rU{constructor(A,Q,B,Y){super();this.varKind=A,this.name=Q,this.from=B,this.to=Y}render(A){let Q=A.es5?vC.varKinds.var:this.varKind,{name:B,from:Y,to:J}=this;return`for(${Q} ${B}=${Y}; ${B}<${J}; ${B}++)`+super.render(A)}get names(){let A=_R(super.names,this.from);return _R(A,this.to)}}class Df extends rU{constructor(A,Q,B,Y){super();this.loop=A,this.varKind=Q,this.name=B,this.iterable=Y}render(A){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(A)}optimizeNames(A,Q){if(!super.optimizeNames(A,Q))return;return this.iterable=aU(this.iterable,A,Q),this}get names(){return QZ(super.names,this.iterable.names)}}class PR extends S7{constructor(A,Q,B){super();this.name=A,this.args=Q,this.async=B}render(A){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(A)}}PR.kind="func";class TR extends yR{render(A){return"return "+super.render(A)}}TR.kind="return";class rWA extends S7{render(A){let Q="try"+super.render(A);if(this.catch)Q+=this.catch.render(A);if(this.finally)Q+=this.finally.render(A);return Q}optimizeNodes(){var A,Q;return super.optimizeNodes(),(A=this.catch)===null||A===void 0||A.optimizeNodes(),(Q=this.finally)===null||Q===void 0||Q.optimizeNodes(),this}optimizeNames(A,Q){var B,Y;return super.optimizeNames(A,Q),(B=this.catch)===null||B===void 0||B.optimizeNames(A,Q),(Y=this.finally)===null||Y===void 0||Y.optimizeNames(A,Q),this}get names(){let A=super.names;if(this.catch)QZ(A,this.catch.names);if(this.finally)QZ(A,this.finally.names);return A}}class SR extends S7{constructor(A){super();this.error=A}render(A){return`catch(${this.error})`+super.render(A)}}SR.kind="catch";class kR extends S7{render(A){return"finally"+super.render(A)}}kR.kind="finally";class aWA{constructor(A,Q={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...Q,_n:Q.lines?` -`:""},this._extScope=A,this._scope=new vC.Scope({parent:A}),this._nodes=[new iWA]}toString(){return this._root.render(this.opts)}name(A){return this._scope.name(A)}scopeName(A){return this._extScope.name(A)}scopeValue(A,Q){let B=this._extScope.value(A,Q);return(this._values[B.prefix]||(this._values[B.prefix]=new Set)).add(B),B}getScopeValue(A,Q){return this._extScope.getValue(A,Q)}scopeRefs(A){return this._extScope.scopeRefs(A,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(A,Q,B,Y){let J=this._scope.toName(Q);if(B!==void 0&&Y)this._constants[J.str]=B;return this._leafNode(new mWA(A,J,B)),J}const(A,Q,B){return this._def(vC.varKinds.const,A,Q,B)}let(A,Q,B){return this._def(vC.varKinds.let,A,Q,B)}var(A,Q,B){return this._def(vC.varKinds.var,A,Q,B)}assign(A,Q,B){return this._leafNode(new Lf(A,Q,B))}add(A,Q){return this._leafNode(new uWA(A,k9.operators.ADD,Q))}code(A){if(typeof A=="function")A();else if(A!==HB.nil)this._leafNode(new pWA(A));return this}object(...A){let Q=["{"];for(let[B,Y]of A){if(Q.length>1)Q.push(",");if(Q.push(B),B!==Y||this.opts.es5)Q.push(":"),(0,HB.addCodeArg)(Q,Y)}return Q.push("}"),new HB._Code(Q)}if(A,Q,B){if(this._blockNode(new kG(A)),Q&&B)this.code(Q).else().code(B).endIf();else if(Q)this.code(Q).endIf();else if(B)throw Error('CodeGen: "else" body without "then" body');return this}elseIf(A){return this._elseNode(new kG(A))}else(){return this._elseNode(new aH)}endIf(){return this._endBlockNode(kG,aH)}_for(A,Q){if(this._blockNode(A),Q)this.code(Q).endFor();return this}for(A,Q){return this._for(new nWA(A),Q)}forRange(A,Q,B,Y,J=this.opts.es5?vC.varKinds.var:vC.varKinds.let){let C=this._scope.toName(A);return this._for(new sWA(J,C,Q,B),()=>Y(C))}forOf(A,Q,B,Y=vC.varKinds.const){let J=this._scope.toName(A);if(this.opts.es5){let C=Q instanceof HB.Name?Q:this.var("_arr",Q);return this.forRange("_i",0,HB._`${C}.length`,(X)=>{this.var(J,HB._`${C}[${X}]`),B(J)})}return this._for(new Df("of",Y,J,Q),()=>B(J))}forIn(A,Q,B,Y=this.opts.es5?vC.varKinds.var:vC.varKinds.const){if(this.opts.ownProperties)return this.forOf(A,HB._`Object.keys(${Q})`,B);let J=this._scope.toName(A);return this._for(new Df("in",Y,J,Q),()=>B(J))}endFor(){return this._endBlockNode(rU)}label(A){return this._leafNode(new dWA(A))}break(A){return this._leafNode(new cWA(A))}return(A){let Q=new TR;if(this._blockNode(Q),this.code(A),Q.nodes.length!==1)throw Error('CodeGen: "return" should have one node');return this._endBlockNode(TR)}try(A,Q,B){if(!Q&&!B)throw Error('CodeGen: "try" without "catch" and "finally"');let Y=new rWA;if(this._blockNode(Y),this.code(A),Q){let J=this.name("e");this._currNode=Y.catch=new SR(J),Q(J)}if(B)this._currNode=Y.finally=new kR,this.code(B);return this._endBlockNode(SR,kR)}throw(A){return this._leafNode(new lWA(A))}block(A,Q){if(this._blockStarts.push(this._nodes.length),A)this.code(A).endBlock(Q);return this}endBlock(A){let Q=this._blockStarts.pop();if(Q===void 0)throw Error("CodeGen: not in self-balancing block");let B=this._nodes.length-Q;if(B<0||A!==void 0&&B!==A)throw Error(`CodeGen: wrong number of nodes: ${B} vs ${A} expected`);return this._nodes.length=Q,this}func(A,Q=HB.nil,B,Y){if(this._blockNode(new PR(A,Q,B)),Y)this.code(Y).endFunc();return this}endFunc(){return this._endBlockNode(PR)}optimize(A=1){while(A-- >0)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(A){return this._currNode.nodes.push(A),this}_blockNode(A){this._currNode.nodes.push(A),this._nodes.push(A)}_endBlockNode(A,Q){let B=this._currNode;if(B instanceof A||Q&&B instanceof Q)return this._nodes.pop(),this;throw Error(`CodeGen: not in block "${Q?`${A.kind}/${Q.kind}`:A.kind}"`)}_elseNode(A){let Q=this._currNode;if(!(Q instanceof kG))throw Error('CodeGen: "else" without "if"');return this._currNode=Q.else=A,this}get _root(){return this._nodes[0]}get _currNode(){let A=this._nodes;return A[A.length-1]}set _currNode(A){let Q=this._nodes;Q[Q.length-1]=A}}k9.CodeGen=aWA;function QZ(A,Q){for(let B in Q)A[B]=(A[B]||0)+(Q[B]||0);return A}function _R(A,Q){return Q instanceof HB._CodeOrName?QZ(A,Q.names):A}function aU(A,Q,B){if(A instanceof HB.Name)return Y(A);if(!J(A))return A;return new HB._Code(A._items.reduce((C,X)=>{if(X instanceof HB.Name)X=Y(X);if(X instanceof HB._Code)C.push(...X._items);else C.push(X);return C},[]));function Y(C){let X=B[C.str];if(X===void 0||Q[C.str]!==1)return C;return delete Q[C.str],X}function J(C){return C instanceof HB._Code&&C._items.some((X)=>X instanceof HB.Name&&Q[X.str]===1&&B[X.str]!==void 0)}}function mYB(A,Q){for(let B in Q)A[B]=(A[B]||0)-(Q[B]||0)}function oWA(A){return typeof A=="boolean"||typeof A=="number"||A===null?!A:HB._`!${Nf(A)}`}k9.not=oWA;var uYB=tWA(k9.operators.AND);function dYB(...A){return A.reduce(uYB)}k9.and=dYB;var cYB=tWA(k9.operators.OR);function lYB(...A){return A.reduce(cYB)}k9.or=lYB;function tWA(A){return(Q,B)=>Q===HB.nil?B:B===HB.nil?Q:HB._`${Nf(Q)} ${A} ${Nf(B)}`}function Nf(A){return A instanceof HB.Name?A:HB._`(${A})`}});var wB=R((GZA)=>{Object.defineProperty(GZA,"__esModule",{value:!0});GZA.checkStrictMode=GZA.getErrorPath=GZA.Type=GZA.useFunc=GZA.setEvaluated=GZA.evaluatedPropsToName=GZA.mergeEvaluated=GZA.eachItem=GZA.unescapeJsonPointer=GZA.escapeJsonPointer=GZA.escapeFragment=GZA.unescapeFragment=GZA.schemaRefOrVal=GZA.schemaHasRulesButRef=GZA.schemaHasRules=GZA.checkUnknownRules=GZA.alwaysValidSchema=GZA.toHash=void 0;var tB=GB(),sYB=rH();function rYB(A){let Q={};for(let B of A)Q[B]=!0;return Q}GZA.toHash=rYB;function aYB(A,Q){if(typeof Q=="boolean")return Q;if(Object.keys(Q).length===0)return!0;return BZA(A,Q),!YZA(Q,A.self.RULES.all)}GZA.alwaysValidSchema=aYB;function BZA(A,Q=A.schema){let{opts:B,self:Y}=A;if(!B.strictSchema)return;if(typeof Q==="boolean")return;let J=Y.RULES.keywords;for(let C in Q)if(!J[C])XZA(A,`unknown keyword: "${C}"`)}GZA.checkUnknownRules=BZA;function YZA(A,Q){if(typeof A=="boolean")return!A;for(let B in A)if(Q[B])return!0;return!1}GZA.schemaHasRules=YZA;function oYB(A,Q){if(typeof A=="boolean")return!A;for(let B in A)if(B!=="$ref"&&Q.all[B])return!0;return!1}GZA.schemaHasRulesButRef=oYB;function tYB({topSchemaRef:A,schemaPath:Q},B,Y,J){if(!J){if(typeof B=="number"||typeof B=="boolean")return B;if(typeof B=="string")return tB._`${B}`}return tB._`${A}${Q}${(0,tB.getProperty)(Y)}`}GZA.schemaRefOrVal=tYB;function eYB(A){return JZA(decodeURIComponent(A))}GZA.unescapeFragment=eYB;function AJB(A){return encodeURIComponent(Mf(A))}GZA.escapeFragment=AJB;function Mf(A){if(typeof A=="number")return`${A}`;return A.replace(/~/g,"~0").replace(/\//g,"~1")}GZA.escapeJsonPointer=Mf;function JZA(A){return A.replace(/~1/g,"/").replace(/~0/g,"~")}GZA.unescapeJsonPointer=JZA;function QJB(A,Q){if(Array.isArray(A))for(let B of A)Q(B);else Q(A)}GZA.eachItem=QJB;function AZA({mergeNames:A,mergeToName:Q,mergeValues:B,resultToName:Y}){return(J,C,X,G)=>{let F=X===void 0?C:X instanceof tB.Name?(C instanceof tB.Name?A(J,C,X):Q(J,C,X),X):C instanceof tB.Name?(Q(J,X,C),C):B(C,X);return G===tB.Name&&!(F instanceof tB.Name)?Y(J,F):F}}GZA.mergeEvaluated={props:AZA({mergeNames:(A,Q,B)=>A.if(tB._`${B} !== true && ${Q} !== undefined`,()=>{A.if(tB._`${Q} === true`,()=>A.assign(B,!0),()=>A.assign(B,tB._`${B} || {}`).code(tB._`Object.assign(${B}, ${Q})`))}),mergeToName:(A,Q,B)=>A.if(tB._`${B} !== true`,()=>{if(Q===!0)A.assign(B,!0);else A.assign(B,tB._`${B} || {}`),zf(A,B,Q)}),mergeValues:(A,Q)=>A===!0?!0:{...A,...Q},resultToName:CZA}),items:AZA({mergeNames:(A,Q,B)=>A.if(tB._`${B} !== true && ${Q} !== undefined`,()=>A.assign(B,tB._`${Q} === true ? true : ${B} > ${Q} ? ${B} : ${Q}`)),mergeToName:(A,Q,B)=>A.if(tB._`${B} !== true`,()=>A.assign(B,Q===!0?!0:tB._`${B} > ${Q} ? ${B} : ${Q}`)),mergeValues:(A,Q)=>A===!0?!0:Math.max(A,Q),resultToName:(A,Q)=>A.var("items",Q)})};function CZA(A,Q){if(Q===!0)return A.var("props",!0);let B=A.var("props",tB._`{}`);if(Q!==void 0)zf(A,B,Q);return B}GZA.evaluatedPropsToName=CZA;function zf(A,Q,B){Object.keys(B).forEach((Y)=>A.assign(tB._`${Q}${(0,tB.getProperty)(Y)}`,!0))}GZA.setEvaluated=zf;var QZA={};function BJB(A,Q){return A.scopeValue("func",{ref:Q,code:QZA[Q.code]||(QZA[Q.code]=new sYB._Code(Q.code))})}GZA.useFunc=BJB;var qf;(function(A){A[A.Num=0]="Num",A[A.Str=1]="Str"})(qf||(GZA.Type=qf={}));function YJB(A,Q,B){if(A instanceof tB.Name){let Y=Q===qf.Num;return B?Y?tB._`"[" + ${A} + "]"`:tB._`"['" + ${A} + "']"`:Y?tB._`"/" + ${A}`:tB._`"/" + ${A}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return B?(0,tB.getProperty)(A).toString():"/"+Mf(A)}GZA.getErrorPath=YJB;function XZA(A,Q,B=A.opts.strictSchema){if(!B)return;if(Q=`strict mode: ${Q}`,B===!0)throw Error(Q);A.self.logger.warn(Q)}GZA.checkStrictMode=XZA});var _G=R((WZA)=>{Object.defineProperty(WZA,"__esModule",{value:!0});var qJ=GB(),qJB={data:new qJ.Name("data"),valCxt:new qJ.Name("valCxt"),instancePath:new qJ.Name("instancePath"),parentData:new qJ.Name("parentData"),parentDataProperty:new qJ.Name("parentDataProperty"),rootData:new qJ.Name("rootData"),dynamicAnchors:new qJ.Name("dynamicAnchors"),vErrors:new qJ.Name("vErrors"),errors:new qJ.Name("errors"),this:new qJ.Name("this"),self:new qJ.Name("self"),scope:new qJ.Name("scope"),json:new qJ.Name("json"),jsonPos:new qJ.Name("jsonPos"),jsonLen:new qJ.Name("jsonLen"),jsonPart:new qJ.Name("jsonPart")};WZA.default=qJB});var oH=R((EZA)=>{Object.defineProperty(EZA,"__esModule",{value:!0});EZA.extendErrors=EZA.resetErrorsCount=EZA.reportExtraError=EZA.reportError=EZA.keyword$DataError=EZA.keywordError=void 0;var qB=GB(),hR=wB(),A9=_G();EZA.keywordError={message:({keyword:A})=>qB.str`must pass "${A}" keyword validation`};EZA.keyword$DataError={message:({keyword:A,schemaType:Q})=>Q?qB.str`"${A}" keyword must be ${Q} ($data)`:qB.str`"${A}" keyword is invalid ($data)`};function zJB(A,Q=EZA.keywordError,B,Y){let{it:J}=A,{gen:C,compositeRule:X,allErrors:G}=J,F=UZA(A,Q,B);if(Y!==null&&Y!==void 0?Y:X||G)ZZA(C,F);else $ZA(J,qB._`[${F}]`)}EZA.reportError=zJB;function RJB(A,Q=EZA.keywordError,B){let{it:Y}=A,{gen:J,compositeRule:C,allErrors:X}=Y,G=UZA(A,Q,B);if(ZZA(J,G),!(C||X))$ZA(Y,A9.default.vErrors)}EZA.reportExtraError=RJB;function wJB(A,Q){A.assign(A9.default.errors,Q),A.if(qB._`${A9.default.vErrors} !== null`,()=>A.if(Q,()=>A.assign(qB._`${A9.default.vErrors}.length`,Q),()=>A.assign(A9.default.vErrors,null)))}EZA.resetErrorsCount=wJB;function jJB({gen:A,keyword:Q,schemaValue:B,data:Y,errsCount:J,it:C}){if(J===void 0)throw Error("ajv implementation error");let X=A.name("err");A.forRange("i",J,A9.default.errors,(G)=>{if(A.const(X,qB._`${A9.default.vErrors}[${G}]`),A.if(qB._`${X}.instancePath === undefined`,()=>A.assign(qB._`${X}.instancePath`,(0,qB.strConcat)(A9.default.instancePath,C.errorPath))),A.assign(qB._`${X}.schemaPath`,qB.str`${C.errSchemaPath}/${Q}`),C.opts.verbose)A.assign(qB._`${X}.schema`,B),A.assign(qB._`${X}.data`,Y)})}EZA.extendErrors=jJB;function ZZA(A,Q){let B=A.const("err",Q);A.if(qB._`${A9.default.vErrors} === null`,()=>A.assign(A9.default.vErrors,qB._`[${B}]`),qB._`${A9.default.vErrors}.push(${B})`),A.code(qB._`${A9.default.errors}++`)}function $ZA(A,Q){let{gen:B,validateName:Y,schemaEnv:J}=A;if(J.$async)B.throw(qB._`new ${A.ValidationError}(${Q})`);else B.assign(qB._`${Y}.errors`,Q),B.return(!1)}var BZ={keyword:new qB.Name("keyword"),schemaPath:new qB.Name("schemaPath"),params:new qB.Name("params"),propertyName:new qB.Name("propertyName"),message:new qB.Name("message"),schema:new qB.Name("schema"),parentSchema:new qB.Name("parentSchema")};function UZA(A,Q,B){let{createErrors:Y}=A.it;if(Y===!1)return qB._`{}`;return OJB(A,Q,B)}function OJB(A,Q,B={}){let{gen:Y,it:J}=A,C=[PJB(J,B),TJB(A,B)];return SJB(A,Q,C),Y.object(...C)}function PJB({errorPath:A},{instancePath:Q}){let B=Q?qB.str`${A}${(0,hR.getErrorPath)(Q,hR.Type.Str)}`:A;return[A9.default.instancePath,(0,qB.strConcat)(A9.default.instancePath,B)]}function TJB({keyword:A,it:{errSchemaPath:Q}},{schemaPath:B,parentSchema:Y}){let J=Y?Q:qB.str`${Q}/${A}`;if(B)J=qB.str`${J}${(0,hR.getErrorPath)(B,hR.Type.Str)}`;return[BZ.schemaPath,J]}function SJB(A,{params:Q,message:B},Y){let{keyword:J,data:C,schemaValue:X,it:G}=A,{opts:F,propertyName:W,topSchemaRef:Z,schemaPath:U}=G;if(Y.push([BZ.keyword,J],[BZ.params,typeof Q=="function"?Q(A):Q||qB._`{}`]),F.messages)Y.push([BZ.message,typeof B=="function"?B(A):B]);if(F.verbose)Y.push([BZ.schema,X],[BZ.parentSchema,qB._`${Z}${U}`],[A9.default.data,C]);if(W)Y.push([BZ.propertyName,W])}});var DZA=R((IZA)=>{Object.defineProperty(IZA,"__esModule",{value:!0});IZA.boolOrEmptySchema=IZA.topBoolOrEmptySchema=void 0;var gJB=oH(),hJB=GB(),xJB=_G(),fJB={message:"boolean schema is false"};function bJB(A){let{gen:Q,schema:B,validateName:Y}=A;if(B===!1)VZA(A,!1);else if(typeof B=="object"&&B.$async===!0)Q.return(xJB.default.data);else Q.assign(hJB._`${Y}.errors`,null),Q.return(!0)}IZA.topBoolOrEmptySchema=bJB;function mJB(A,Q){let{gen:B,schema:Y}=A;if(Y===!1)B.var(Q,!1),VZA(A);else B.var(Q,!0)}IZA.boolOrEmptySchema=mJB;function VZA(A,Q){let{gen:B,data:Y}=A,J={gen:B,keyword:"false schema",data:Y,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:A};(0,gJB.reportError)(J,fJB,void 0,Q)}});var wf=R((NZA)=>{Object.defineProperty(NZA,"__esModule",{value:!0});NZA.getRules=NZA.isJSONType=void 0;var dJB=["string","number","integer","boolean","null","object","array"],cJB=new Set(dJB);function lJB(A){return typeof A=="string"&&cJB.has(A)}NZA.isJSONType=lJB;function pJB(){let A={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...A,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},A.number,A.string,A.array,A.object],post:{rules:[]},all:{},keywords:{}}}NZA.getRules=pJB});var jf=R((zZA)=>{Object.defineProperty(zZA,"__esModule",{value:!0});zZA.shouldUseRule=zZA.shouldUseGroup=zZA.schemaHasRulesForType=void 0;function nJB({schema:A,self:Q},B){let Y=Q.RULES.types[B];return Y&&Y!==!0&&qZA(A,Y)}zZA.schemaHasRulesForType=nJB;function qZA(A,Q){return Q.rules.some((B)=>MZA(A,B))}zZA.shouldUseGroup=qZA;function MZA(A,Q){var B;return A[Q.keyword]!==void 0||((B=Q.definition.implements)===null||B===void 0?void 0:B.some((Y)=>A[Y]!==void 0))}zZA.shouldUseRule=MZA});var tH=R((PZA)=>{Object.defineProperty(PZA,"__esModule",{value:!0});PZA.reportTypeError=PZA.checkDataTypes=PZA.checkDataType=PZA.coerceAndCheckDataType=PZA.getJSONTypes=PZA.getSchemaTypes=PZA.DataType=void 0;var aJB=wf(),oJB=jf(),tJB=oH(),aQ=GB(),wZA=wB(),oU;(function(A){A[A.Correct=0]="Correct",A[A.Wrong=1]="Wrong"})(oU||(PZA.DataType=oU={}));function eJB(A){let Q=jZA(A.type);if(Q.includes("null")){if(A.nullable===!1)throw Error("type: null contradicts nullable: false")}else{if(!Q.length&&A.nullable!==void 0)throw Error('"nullable" cannot be used without "type"');if(A.nullable===!0)Q.push("null")}return Q}PZA.getSchemaTypes=eJB;function jZA(A){let Q=Array.isArray(A)?A:A?[A]:[];if(Q.every(aJB.isJSONType))return Q;throw Error("type must be JSONType or JSONType[]: "+Q.join(","))}PZA.getJSONTypes=jZA;function A9B(A,Q){let{gen:B,data:Y,opts:J}=A,C=Q9B(Q,J.coerceTypes),X=Q.length>0&&!(C.length===0&&Q.length===1&&(0,oJB.schemaHasRulesForType)(A,Q[0]));if(X){let G=Pf(Q,Y,J.strictNumbers,oU.Wrong);B.if(G,()=>{if(C.length)B9B(A,Q,C);else Tf(A)})}return X}PZA.coerceAndCheckDataType=A9B;var OZA=new Set(["string","number","integer","boolean","null"]);function Q9B(A,Q){return Q?A.filter((B)=>OZA.has(B)||Q==="array"&&B==="array"):[]}function B9B(A,Q,B){let{gen:Y,data:J,opts:C}=A,X=Y.let("dataType",aQ._`typeof ${J}`),G=Y.let("coerced",aQ._`undefined`);if(C.coerceTypes==="array")Y.if(aQ._`${X} == 'object' && Array.isArray(${J}) && ${J}.length == 1`,()=>Y.assign(J,aQ._`${J}[0]`).assign(X,aQ._`typeof ${J}`).if(Pf(Q,J,C.strictNumbers),()=>Y.assign(G,J)));Y.if(aQ._`${G} !== undefined`);for(let W of B)if(OZA.has(W)||W==="array"&&C.coerceTypes==="array")F(W);Y.else(),Tf(A),Y.endIf(),Y.if(aQ._`${G} !== undefined`,()=>{Y.assign(J,G),Y9B(A,G)});function F(W){switch(W){case"string":Y.elseIf(aQ._`${X} == "number" || ${X} == "boolean"`).assign(G,aQ._`"" + ${J}`).elseIf(aQ._`${J} === null`).assign(G,aQ._`""`);return;case"number":Y.elseIf(aQ._`${X} == "boolean" || ${J} === null +`));return U($iQ.bind(void 0,A))}E5A.exports=UiQ});var I5A=R((J6Y,V5A)=>{var EiQ=K5A();function KiQ(){this.argTypes=[],this.shimArgs=[],this.arrayArgs=[],this.arrayBlockIndices=[],this.scalarArgs=[],this.offsetArgs=[],this.offsetArgIndex=[],this.indexArgs=[],this.shapeArgs=[],this.funcName="",this.pre=null,this.body=null,this.post=null,this.debug=!1}function ViQ(A){var Q=new KiQ;Q.pre=A.pre,Q.body=A.body,Q.post=A.post;var B=A.args.slice(0);Q.argTypes=B;for(var Y=0;Y0)throw Error("cwise: pre() block may not reference array args");if(Y0)throw Error("cwise: post() block may not reference array args")}else if(J==="scalar")Q.scalarArgs.push(Y),Q.shimArgs.push("scalar"+Y);else if(J==="index"){if(Q.indexArgs.push(Y),Y0)throw Error("cwise: pre() block may not reference array index");if(Y0)throw Error("cwise: post() block may not reference array index")}else if(J==="shape"){if(Q.shapeArgs.push(Y),YB.length)throw Error("cwise: Too many arguments in pre() block");if(Q.body.args.length>B.length)throw Error("cwise: Too many arguments in body() block");if(Q.post.args.length>B.length)throw Error("cwise: Too many arguments in post() block");return Q.debug=!!A.printCode||!!A.debug,Q.funcName=A.funcName||"cwise",Q.blockSize=A.blockSize||64,EiQ(Q)}V5A.exports=ViQ});var z5A=R((JY)=>{var O9=I5A(),X3={body:"",args:[],thisVars:[],localVars:[]};function oh(A){if(!A)return X3;for(var Q=0;Q>",rrshift:">>>"};(function(){for(var A in H5A){var Q=H5A[A];JY[A]=P0({args:["array","array","array"],body:{args:["a","b","c"],body:"a=b"+Q+"c"},funcName:A}),JY[A+"eq"]=P0({args:["array","array"],body:{args:["a","b"],body:"a"+Q+"=b"},rvalue:!0,funcName:A+"eq"}),JY[A+"s"]=P0({args:["array","array","scalar"],body:{args:["a","b","s"],body:"a=b"+Q+"s"},funcName:A+"s"}),JY[A+"seq"]=P0({args:["array","scalar"],body:{args:["a","s"],body:"a"+Q+"=s"},rvalue:!0,funcName:A+"seq"})}})();var D5A={not:"!",bnot:"~",neg:"-",recip:"1.0/"};(function(){for(var A in D5A){var Q=D5A[A];JY[A]=P0({args:["array","array"],body:{args:["a","b"],body:"a="+Q+"b"},funcName:A}),JY[A+"eq"]=P0({args:["array"],body:{args:["a"],body:"a="+Q+"a"},rvalue:!0,count:2,funcName:A+"eq"})}})();var N5A={and:"&&",or:"||",eq:"===",neq:"!==",lt:"<",gt:">",leq:"<=",geq:">="};(function(){for(var A in N5A){var Q=N5A[A];JY[A]=P0({args:["array","array","array"],body:{args:["a","b","c"],body:"a=b"+Q+"c"},funcName:A}),JY[A+"s"]=P0({args:["array","array","scalar"],body:{args:["a","b","s"],body:"a=b"+Q+"s"},funcName:A+"s"}),JY[A+"eq"]=P0({args:["array","array"],body:{args:["a","b"],body:"a=a"+Q+"b"},rvalue:!0,count:2,funcName:A+"eq"}),JY[A+"seq"]=P0({args:["array","scalar"],body:{args:["a","s"],body:"a=a"+Q+"s"},rvalue:!0,count:2,funcName:A+"seq"})}})();var L5A=["abs","acos","asin","atan","ceil","cos","exp","floor","log","round","sin","sqrt","tan"];(function(){for(var A=0;Athis_s){this_s=-a}else if(a>this_s){this_s=a}",localVars:[],thisVars:["this_s"]},post:{args:[],localVars:[],thisVars:["this_s"],body:"return this_s"},funcName:"norminf"});JY.norm1=O9({args:["array"],pre:{args:[],localVars:[],thisVars:["this_s"],body:"this_s=0"},body:{args:[{name:"a",lvalue:!1,rvalue:!0,count:3}],body:"this_s+=a<0?-a:a",localVars:[],thisVars:["this_s"]},post:{args:[],localVars:[],thisVars:["this_s"],body:"return this_s"},funcName:"norm1"});JY.sup=O9({args:["array"],pre:{body:"this_h=-Infinity",args:[],thisVars:["this_h"],localVars:[]},body:{body:"if(_inline_1_arg0_>this_h)this_h=_inline_1_arg0_",args:[{name:"_inline_1_arg0_",lvalue:!1,rvalue:!0,count:2}],thisVars:["this_h"],localVars:[]},post:{body:"return this_h",args:[],thisVars:["this_h"],localVars:[]}});JY.inf=O9({args:["array"],pre:{body:"this_h=Infinity",args:[],thisVars:["this_h"],localVars:[]},body:{body:"if(_inline_1_arg0_this_v){this_v=_inline_1_arg1_;for(var _inline_1_k=0;_inline_1_k<_inline_1_arg0_.length;++_inline_1_k){this_i[_inline_1_k]=_inline_1_arg0_[_inline_1_k]}}}",args:[{name:"_inline_1_arg0_",lvalue:!1,rvalue:!0,count:2},{name:"_inline_1_arg1_",lvalue:!1,rvalue:!0,count:2}],thisVars:["this_i","this_v"],localVars:["_inline_1_k"]},post:{body:"{return this_i}",args:[],thisVars:["this_i"],localVars:[]}});JY.random=P0({args:["array"],pre:{args:[],body:"this_f=Math.random",thisVars:["this_f"]},body:{args:["a"],body:"a=this_f()",thisVars:["this_f"]},funcName:"random"});JY.assign=P0({args:["array","array"],body:{args:["a","b"],body:"a=b"},funcName:"assign"});JY.assigns=P0({args:["array","scalar"],body:{args:["a","b"],body:"a=b"},funcName:"assigns"});JY.equals=O9({args:["array","array"],pre:X3,body:{args:[{name:"x",lvalue:!1,rvalue:!0,count:1},{name:"y",lvalue:!1,rvalue:!0,count:1}],body:"if(x!==y){return false}",localVars:[],thisVars:[]},post:{args:[],localVars:[],thisVars:[],body:"return true"},funcName:"equals"})});var HCA=R((QH,Eg)=>{var D3=function(){var A="b9H79Tebbbe9ok9Geueu9Geub9Gbb9Gruuuuuuueu9Gvuuuuueu9Gduueu9Gluuuueu9Gvuuuuub9Gouuuuuub9Gluuuub9Giuuueui8AYdilveoveovrrwrrDDoDrbqqbelve9Weiiviebeoweuec;G:Qdkr:nlAo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bb8F9TW79O9V9Wt9FW9U9J9V9KW9wWVtW949c919M9MWV9mW4W2be8A9TW79O9V9Wt9FW9U9J9V9KW9wWVtW949c919M9MWVbd8F9TW79O9V9Wt9FW9U9J9V9KW9wWVtW949c919M9MWV9c9V919U9KbiE9TW79O9V9Wt9FW9U9J9V9KW9wWVtW949wWV79P9V9UblY9TW79O9V9Wt9FW9U9J9V9KW69U9KW949c919M9MWVbv8E9TW79O9V9Wt9FW9U9J9V9KW69U9KW949c919M9MWV9c9V919U9Kbo8A9TW79O9V9Wt9FW9U9J9V9KW69U9KW949wWV79P9V9UbrE9TW79O9V9Wt9FW9U9J9V9KW69U9KW949tWG91W9U9JWbwa9TW79O9V9Wt9FW9U9J9V9KW69U9KW949tWG91W9U9JW9c9V919U9KbDL9TW79O9V9Wt9FW9U9J9V9KWS9P2tWV9p9JtbqK9TW79O9V9Wt9FW9U9J9V9KWS9P2tWV9r919HtbkL9TW79O9V9Wt9FW9U9J9V9KWS9P2tWVT949WbxE9TW79O9V9Wt9F9V9Wt9P9T9P96W9wWVtW94J9H9J9OWbsa9TW79O9V9Wt9F9V9Wt9P9T9P96W9wWVtW94J9H9J9OW9ttV9P9Wbza9TW79O9V9Wt9F9V9Wt9P9T9P96W9wWVtW94SWt9J9O9sW9T9H9WbHK9TW79O9V9Wt9F79W9Ht9P9H29t9VVt9sW9T9H9WbOl79IV9RbCDwebcekdKLqN9OYdbk:Bhdhud9:8Jjjjjbc;qw9Rgr8KjjjjbcbhwdnaeTmbabcbyd;C:kjjbaoaocb9iEgDc:GeV86bbarc;adfcbcjdz:wjjjb8AdnaiTmbarc;adfadalz:vjjjb8Akarc;abfalfcbcbcjdal9RalcFe0Ez:wjjjb8Aarc;abfarc;adfalz:vjjjb8AarcUf9cb83ibarc8Wf9cb83ibarcyf9cb83ibarcaf9cb83ibarcKf9cb83ibarczf9cb83ibar9cb83iwar9cb83ibcj;abal9Uc;WFbGcjdalca0Ehqdnaicd6mbavcd9imbaDTmbadcefhkaqci2gxal2hmarc;alfclfhParc;qlfceVhsarc;qofclVhzarc;qofcKfhHarc;qofczfhOcbhAincdhCcbhodnavci6mbaH9cb83ibaO9cb83ibar9cb83i;yoar9cb83i;qoadaAfgoybbhXcbhQincbhwcbhLdninaoalfhKaoybbgYaX7aLVhLawcP0meaKhoaYhXawcefgwaQfai6mbkkcbhXarc;qofhwincwh8AcwhEdnaLaX93gocFeGg3cs0mbclhEa3ci0mba3cb9hcethEkdnaocw4cFeGg3cs0mbclh8Aa3ci0mba3cb9hceth8Aka8AaEfh3awydbh5cwh8AcwhEdnaocz4cFeGg8Ecs0mbclhEa8Eci0mba8Ecb9hcethEka3a5fh3dnaocFFFFb0mbclh8AaocFFF8F0mbaocFFFr0ceth8Akawa3aEfa8AfBdbawclfhwaXcefgXcw9hmbkaKhoaYhXaQczfgQai6mbkcbhocehwazhLinawaoaLydbarc;qofaocdtfydb6EhoaLclfhLawcefgwcw9hmbkcihCkcbh3arc;qlfcbcjdz:wjjjb8Aarc;alfcwfcbBdbar9cb83i;alaoclth8Fadhaaqhhakh5inarc;qlfadcba3cufgoaoa30Eal2falz:vjjjb8Aaiahaiah6Ehgdnaqaia39Ra3aqfai6EgYcsfc9WGgoaY9nmbarc;qofaYfcbaoaY9Rz:wjjjb8Akada3al2fh8Jcbh8Kina8Ka8FVcl4hQarc;alfa8Kcdtfh8LaAh8Mcbh8Nina8NaAfhwdndndndndndna8KPldebidkasa8Mc98GgLfhoa5aLfh8Aarc;qlfawc98GgLfRbbhXcwhwinaoRbbawtaXVhXaocefhoawcwfgwca9hmbkaYTmla8Ncith8Ea8JaLfhEcbhKinaERbbhLcwhoa8AhwinawRbbaotaLVhLawcefhwaocwfgoca9hmbkarc;qofaKfaLaX7aQ93a8E486bba8Aalfh8AaEalfhEaLhXaKcefgKaY9hmbxlkkaYTmia8Mc9:Ghoa8NcitcwGhEarc;qlfawceVfRbbcwtarc;qlfawc9:GfRbbVhLarc;qofhwaghXinawa5aofRbbcwtaaaofRbbVg8AaL9RgLcetaLcztcz91cs47cFFiGaE486bbaoalfhoawcefhwa8AhLa3aXcufgX9hmbxikkaYTmda8Jawfhoarc;qlfawfRbbhLarc;qofhwaghXinawaoRbbg8AaL9RgLcetaLcKtcK91cr4786bbawcefhwaoalfhoa8AhLa3aXcufgX9hmbxdkkaYTmeka8LydbhEcbhKarc;qofhoincdhLcbhwinaLaoawfRbbcb9hfhLawcefgwcz9hmbkclhXcbhwinaXaoawfRbbcd0fhXawcefgwcz9hmbkcwh8Acbhwina8AaoawfRbbcP0fh8Aawcefgwcz9hmbkaLaXaLaX6Egwa8Aawa8A6Egwczawcz6EaEfhEaoczfhoaKczfgKaY6mbka8LaEBdbka8Mcefh8Ma8Ncefg8Ncl9hmbka8Kcefg8KaC9hmbkaaamfhaahaxfhha5amfh5a3axfg3ai6mbkcbhocehwaPhLinawaoaLydbarc;alfaocdtfydb6EhoaLclfhLawcefgXhwaCaX9hmbkaraAcd4fa8FcdVaoaocdSE86bbaAclfgAal6mbkkabaefh8Kabcefhoalcd4gecbaDEhkadcefhOarc;abfceVhHcbhmdndninaiam9nmearc;qofcbcjdz:wjjjb8Aa8Kao9Rak6mdadamal2gwfhxcbh8JaOawfhzaocbakz:wjjjbghakfh5aqaiam9Ramaqfai6Egscsfgocl4cifcd4hCaoc9WGg8LThPindndndndndndndndndndnaDTmbara8Jcd4fRbbgLciGPlbedlbkasTmdaxa8Jfhoarc;abfa8JfRbbhLarc;qofhwashXinawaoRbbg8AaL9RgLcetaLcKtcK91cr4786bbawcefhwaoalfhoa8AhLaXcufgXmbxikkasTmia8JcitcwGhEarc;abfa8JceVfRbbcwtarc;abfa8Jc9:GgofRbbVhLaxaofhoarc;qofhwashXinawao8Vbbg8AaL9RgLcetaLcztcz91cs47cFFiGaE486bbawcefhwaoalfhoa8AhLaXcufgXmbxdkkaHa8Jc98GgEfhoazaEfh8Aarc;abfaEfRbbhXcwhwinaoRbbawtaXVhXaocefhoawcwfgwca9hmbkasTmbaLcl4hYa8JcitcKGh3axaEfhEcbhKinaERbbhLcwhoa8AhwinawRbbaotaLVhLawcefhwaocwfgoca9hmbkarc;qofaKfaLaX7aY93a3486bba8Aalfh8AaEalfhEaLhXaKcefgKas9hmbkkaDmbcbhoxlka8LTmbcbhodninarc;qofaofgwcwf8Pibaw8Pib:e9qTmeaoczfgoa8L9pmdxbkkdnavmbcehoxikcbhEaChKaChYinarc;qofaEfgocwf8Pibhyao8Pibh8PcdhLcbhwinaLaoawfRbbcb9hfhLawcefgwcz9hmbkclhXcbhwinaXaoawfRbbcd0fhXawcefgwcz9hmbkcwh8Acbhwina8AaoawfRbbcP0fh8Aawcefgwcz9hmbkaLaXaLaX6Egoa8Aaoa8A6Egoczaocz6EaYfhYaocucbaya8P:e9cb9sEgwaoaw6EaKfhKaEczfgEa8L9pmdxbkkaha8Jcd4fgoaoRbbcda8JcetcoGtV86bbxikdnaKas6mbaYas6mbaha8Jcd4fgoaoRbbcia8JcetcoGtV86bba8Ka59Ras6mra5arc;qofasz:vjjjbasfh5xikaKaY9phokaha8Jcd4fgwawRbbaoa8JcetcoGtV86bbka8Ka59RaC6mla5cbaCz:wjjjbgAaCfhYdndna8LmbaPhoxekdna8KaY9RcK9pmbaPhoxekaocdtc:q1jjbfcj1jjbaDEg5ydxggcetc;:FFFeGh8Fcuh3cuagtcu7cFeGhacbh8Marc;qofhLinarc;qofa8MfhQczhEdndndnagPDbeeeeeeedekcucbaQcwf8PibaQ8Pib:e9cb9sEhExekcbhoa8FhEinaEaaaLaofRbb9nfhEaocefgocz9hmbkkcih8Ecbh8Ainczhwdndndna5a8AcdtfydbgKPDbeeeeeeedekcucbaQcwf8PibaQ8Pib:e9cb9sEhwxekaKcetc;:FFFeGhwcuaKtcu7cFeGhXcbhoinawaXaLaofRbb9nfhwaocefgocz9hmbkkdndnawaE6mbaKa39hmeawaE9hmea5a8EcdtfydbcwSmeka8Ah8EawhEka8Acefg8Aci9hmbkaAa8Mco4fgoaoRbba8Ea8Mci4coGtV86bbdndndna5a8Ecdtfydbg3PDdbbbbbbbebkdncwa39Tg8ETmbcua3tcu7hwdndna3ceSmbcbh8NaLhQinaQhoa8Eh8AcbhXinaoRbbgEawcFeGgKaEaK6EaXa3tVhXaocefhoa8Acufg8AmbkaYaX86bbaQa8EfhQaYcefhYa8Na8Efg8Ncz6mbxdkkcbh8NaLhQinaQhoa8Eh8AcbhXinaoRbbgEawcFeGgKaEaK6EaXcetVhXaocefhoa8Acufg8AmbkaYaX:T9cFe:d9c:c:qj:bw9:9c:q;c1:I1e:d9c:b:c:e1z9:9ca188bbaQa8EfhQaYcefhYa8Na8Efg8Ncz6mbkkcbhoinaYaLaofRbbgX86bbaYaXawcFeG9pfhYaocefgocz9hmbxikkdna3ceSmbinaYcb86bbaYcefhYxbkkinaYcb86bbaYcefhYxbkkaYaQ8Pbb83bbaYcwfaQcwf8Pbb83bbaYczfhYka8Mczfg8Ma8L9pgomeaLczfhLa8KaY9RcK9pmbkkaoTmlaYh5aYTmlka8Jcefg8Jal9hmbkarc;abfaxascufal2falz:vjjjb8Aasamfhma5hoa5mbkcbhwxdkdna8Kao9RakalfgwcKcaaDEgLawaL0EgX9pmbcbhwxdkdnawaL9pmbaocbaXaw9Rgwz:wjjjbawfhokaoarc;adfalz:vjjjbalfhodnaDTmbaoaraez:vjjjbaefhokaoab9Rhwxekcbhwkarc;qwf8Kjjjjbawk5babaeadaialcdcbyd;C:kjjbz:bjjjbk9reduaecd4gdaefgicaaica0Eabcj;abae9Uc;WFbGcjdaeca0Egifcufai9Uae2aiadfaicl4cifcd4f2fcefkmbcbabBd;C:kjjbk:Ese5u8Jjjjjbc;ae9Rgl8Kjjjjbcbhvdnaici9UgocHfae0mbabcbyd;m:kjjbgrc;GeV86bbalc;abfcFecjez:wjjjb8AalcUfgw9cu83ibalc8WfgD9cu83ibalcyfgq9cu83ibalcafgk9cu83ibalcKfgx9cu83ibalczfgm9cu83ibal9cu83iwal9cu83ibabaefc9WfhPabcefgsaofhednaiTmbcmcsarcb9kgzEhHcbhOcbhAcbhCcbhXcbhQindnaeaP9nmbcbhvxikaQcufhvadaCcdtfgLydbhKaLcwfydbhYaLclfydbh8AcbhEdndndninalc;abfavcsGcitfgoydlh3dndndnaoydbgoaK9hmba3a8ASmekdnaoa8A9hmba3aY9hmbaEcefhExekaoaY9hmea3aK9hmeaEcdfhEkaEc870mdaXcufhvaLaEciGcx2goc;i1jjbfydbcdtfydbh3aLaoc;e1jjbfydbcdtfydbh8AaLaoc;a1jjbfydbcdtfydbhKcbhodnindnalavcsGcdtfydba39hmbaohYxdkcuhYavcufhvaocefgocz9hmbkkaOa3aOSgvaYce9iaYaH9oVgoGfhOdndndncbcsavEaYaoEgvcs9hmbarce9imba3a3aAa3cefaASgvEgAcefSmecmcsavEhvkasavaEcdtc;WeGV86bbavcs9hmea3aA9Rgvcetavc8F917hvinaeavcFb0crtavcFbGV86bbaecefheavcje6hoavcr4hvaoTmbka3hAxvkcPhvasaEcdtcPV86bba3hAkavTmiavaH9omicdhocehEaQhYxlkavcufhvaEclfgEc;ab9hmbkkdnaLceaYaOSceta8AaOSEcx2gvc;a1jjbfydbcdtfydbgKTaLavc;e1jjbfydbcdtfydbg8AceSGaLavc;i1jjbfydbcdtfydbg3cdSGaOcb9hGazGg5ce9hmbaw9cu83ibaD9cu83ibaq9cu83ibak9cu83ibax9cu83ibam9cu83ibal9cu83iwal9cu83ibcbhOkcbhEaXcufgvhodnindnalaocsGcdtfydba8A9hmbaEhYxdkcuhYaocufhoaEcefgEcz9hmbkkcbhodnindnalavcsGcdtfydba39hmbaohExdkcuhEavcufhvaocefgocz9hmbkkaOaKaOSg8EfhLdndnaYcm0mbaYcefhYxekcbcsa8AaLSgvEhYaLavfhLkdndnaEcm0mbaEcefhExekcbcsa3aLSgvEhEaLavfhLkc9:cua8EEh8FcbhvaEaYcltVgacFeGhodndndninavc:W1jjbfRbbaoSmeavcefgvcz9hmbxdkka5aKaO9havcm0VVmbasavc;WeV86bbxekasa8F86bbaeaa86bbaecefhekdna8EmbaKaA9Rgvcetavc8F917hvinaeavcFb0gocrtavcFbGV86bbavcr4hvaecefheaombkaKhAkdnaYcs9hmba8AaA9Rgvcetavc8F917hvinaeavcFb0gocrtavcFbGV86bbavcr4hvaecefheaombka8AhAkdnaEcs9hmba3aA9Rgvcetavc8F917hvinaeavcFb0gocrtavcFbGV86bbavcr4hvaecefheaombka3hAkalaXcdtfaKBdbaXcefcsGhvdndnaYPzbeeeeeeeeeeeeeebekalavcdtfa8ABdbaXcdfcsGhvkdndnaEPzbeeeeeeeeeeeeeebekalavcdtfa3BdbavcefcsGhvkcihoalc;abfaQcitfgEaKBdlaEa8ABdbaQcefcsGhYcdhEavhXaLhOxekcdhoalaXcdtfa3BdbcehEaXcefcsGhXaQhYkalc;abfaYcitfgva8ABdlava3Bdbalc;abfaQaEfcsGcitfgva3BdlavaKBdbascefhsaQaofcsGhQaCcifgCai6mbkkdnaeaP9nmbcbhvxekcbhvinaeavfavc:W1jjbfRbb86bbavcefgvcz9hmbkaeab9Ravfhvkalc;aef8KjjjjbavkZeeucbhddninadcefgdc8F0meceadtae6mbkkadcrfcFeGcr9Uci2cdfabci9U2cHfkmbcbabBd;m:kjjbk:Adewu8Jjjjjbcz9Rhlcbhvdnaicvfae0mbcbhvabcbRb;m:kjjbc;qeV86bbal9cb83iwabcefhoabaefc98fhrdnaiTmbcbhwcbhDindnaoar6mbcbskadaDcdtfydbgqalcwfawaqav9Rgvavc8F91gv7av9Rc507gwcdtfgkydb9Rgvc8E91c9:Gavcdt7awVhvinaoavcFb0gecrtavcFbGV86bbavcr4hvaocefhoaembkakaqBdbaqhvaDcefgDai9hmbkkdnaoar9nmbcbskaocbBbbaoab9RclfhvkavkBeeucbhddninadcefgdc8F0meceadtae6mbkkadcwfcFeGcr9Uab2cvfk:bvli99dui99ludnaeTmbcuadcetcuftcu7:Zhvdndncuaicuftcu7:ZgoJbbbZMgr:lJbbb9p9DTmbar:Ohwxekcjjjj94hwkcbhicbhDinalclfIdbgrJbbbbJbbjZalIdbgq:lar:lMalcwfIdbgk:lMgr:varJbbbb9BEgrNhxaqarNhrdndnakJbbbb9GTmbaxhqxekJbbjZar:l:tgqaq:maxJbbbb9GEhqJbbjZax:l:tgxax:marJbbbb9GEhrkdndnalcxfIdbgxJbbj:;axJbbj:;9GEgkJbbjZakJbbjZ9FEavNJbbbZJbbb:;axJbbbb9GEMgx:lJbbb9p9DTmbax:Ohmxekcjjjj94hmkdndnaqJbbj:;aqJbbj:;9GEgxJbbjZaxJbbjZ9FEaoNJbbbZJbbb:;aqJbbbb9GEMgq:lJbbb9p9DTmbaq:OhPxekcjjjj94hPkdndnarJbbj:;arJbbj:;9GEgqJbbjZaqJbbjZ9FEaoNJbbbZJbbb:;arJbbbb9GEMgr:lJbbb9p9DTmbar:Ohsxekcjjjj94hskdndnadcl9hmbabaifgzas86bbazcifam86bbazcdfaw86bbazcefaP86bbxekabaDfgzas87ebazcofam87ebazclfaw87ebazcdfaP87ebkalczfhlaiclfhiaDcwfhDaecufgembkkk;hlld99eud99eudnaeTmbdndncuaicuftcu7:ZgvJbbbZMgo:lJbbb9p9DTmbao:Ohixekcjjjj94hikaic;8FiGhrinabcofcicdalclfIdb:lalIdb:l9EgialcwfIdb:lalaicdtfIdb:l9EEgialcxfIdb:lalaicdtfIdb:l9EEgiarV87ebdndnJbbj:;JbbjZalaicdtfIdbJbbbb9DEgoalaicd7cdtfIdbJ;Zl:1ZNNgwJbbj:;awJbbj:;9GEgDJbbjZaDJbbjZ9FEavNJbbbZJbbb:;awJbbbb9GEMgw:lJbbb9p9DTmbaw:Ohqxekcjjjj94hqkabcdfaq87ebdndnalaicefciGcdtfIdbJ;Zl:1ZNaoNgwJbbj:;awJbbj:;9GEgDJbbjZaDJbbjZ9FEavNJbbbZJbbb:;awJbbbb9GEMgw:lJbbb9p9DTmbaw:Ohqxekcjjjj94hqkabaq87ebdndnaoalaicufciGcdtfIdbJ;Zl:1ZNNgoJbbj:;aoJbbj:;9GEgwJbbjZawJbbjZ9FEavNJbbbZJbbb:;aoJbbbb9GEMgo:lJbbb9p9DTmbao:Ohixekcjjjj94hikabclfai87ebabcwfhbalczfhlaecufgembkkk;3viDue99eu8Jjjjjbcjd9Rgo8Kjjjjbadcd4hrdndndndnavcd9hmbadcl6meaohwarhDinawc:CuBdbawclfhwaDcufgDmbkaeTmiadcl6mdarcdthqalhkcbhxinaohwakhDarhminawawydbgPcbaDIdbgs:8cL4cFeGc:cufasJbbbb9BEgzaPaz9kEBdbaDclfhDawclfhwamcufgmmbkakaqfhkaxcefgxaeSmixbkkaeTmdxekaeTmekarcdthkavce9hhqadcl6hdcbhxindndndnaqmbadmdc:CuhDalhwarhminaDcbawIdbgs:8cL4cFeGc:cufasJbbbb9BEgPaDaP9kEhDawclfhwamcufgmmbxdkkc:CuhDdndnavPleddbdkadmdaohwalhmarhPinawcbamIdbgs:8cL4cFeGgzc;:bazc;:b0Ec:cufasJbbbb9BEBdbamclfhmawclfhwaPcufgPmbxdkkadmecbhwarhminaoawfcbalawfIdbgs:8cL4cFeGgPc8AaPc8A0Ec:cufasJbbbb9BEBdbawclfhwamcufgmmbkkadmbcbhwarhPinaDhmdnavceSmbaoawfydbhmkdndnalawfIdbgscjjj;8iamai9RcefgmcLt9R::NJbbbZJbbb:;asJbbbb9GEMgs:lJbbb9p9DTmbas:Ohzxekcjjjj94hzkabawfazcFFFrGamcKtVBdbawclfhwaPcufgPmbkkabakfhbalakfhlaxcefgxae9hmbkkaocjdf8Kjjjjbk;YqdXui998Jjjjjbc:qd9Rgv8Kjjjjbavc:Sefcbc;Kbz:wjjjb8AcbhodnadTmbcbhoaiTmbdndnabaeSmbaehrxekavcuadcdtgwadcFFFFi0Ecbyd;u:kjjbHjjjjbbgrBd:SeavceBd:mdaraeawz:vjjjb8Akavc:GefcwfcbBdbav9cb83i:Geavc:Gefaradaiavc:Sefz:ojjjbavyd:GehDadci9Ugqcbyd;u:kjjbHjjjjbbheavc:Sefavyd:mdgkcdtfaeBdbavakcefgwBd:mdaecbaqz:wjjjbhxavc:SefawcdtfcuaicdtaicFFFFi0Ecbyd;u:kjjbHjjjjbbgmBdbavakcdfgPBd:mdalc;ebfhsaDheamhwinawalIdbasaeydbgzcwazcw6EcdtfIdbMUdbaeclfheawclfhwaicufgimbkavc:SefaPcdtfcuaqcdtadcFFFF970Ecbyd;u:kjjbHjjjjbbgPBdbdnadci6mbarheaPhwaqhiinawamaeydbcdtfIdbamaeclfydbcdtfIdbMamaecwfydbcdtfIdbMUdbaecxfheawclfhwaicufgimbkkakcifhoalc;ebfhHavc;qbfhOavheavyd:KehAavyd:OehCcbhzcbhwcbhXcehQinaehLcihkarawci2gKcdtfgeydbhsaeclfydbhdabaXcx2fgicwfaecwfydbgYBdbaiclfadBdbaiasBdbaxawfce86bbaOaYBdwaOadBdlaOasBdbaPawcdtfcbBdbdnazTmbcihkaLhiinaOakcdtfaiydbgeBdbakaeaY9haeas9haead9hGGfhkaiclfhiazcufgzmbkkaXcefhXcbhzinaCaAarazaKfcdtfydbcdtgifydbcdtfgYheaDaifgdydbgshidnasTmbdninaeydbawSmeaeclfheaicufgiTmdxbkkaeaYascdtfc98fydbBdbadadydbcufBdbkazcefgzci9hmbkdndnakTmbcuhwJbbbbh8Acbhdavyd:KehYavyd:OehKindndnaDaOadcdtfydbcdtgzfydbgembadcefhdxekadcs0hiamazfgsIdbhEasalcbadcefgdaiEcdtfIdbaHaecwaecw6EcdtfIdbMg3Udba3aE:th3aecdthiaKaYazfydbcdtfheinaPaeydbgzcdtfgsa3asIdbMgEUdbaEa8Aa8AaE9DgsEh8AazawasEhwaeclfheaic98fgimbkkadak9hmbkawcu9hmekaQaq9pmdindnaxaQfRbbmbaQhwxdkaqaQcefgQ9hmbxikkakczakcz6EhzaOheaLhOawcu9hmbkkaocdtavc:Seffc98fhedninaoTmeaeydbcbyd;q:kjjbH:bjjjbbaec98fheaocufhoxbkkavc:qdf8Kjjjjbk;IlevucuaicdtgvaicFFFFi0Egocbyd;u:kjjbHjjjjbbhralalyd9GgwcdtfarBdbalawcefBd9GabarBdbaocbyd;u:kjjbHjjjjbbhralalyd9GgocdtfarBdbalaocefBd9GabarBdlcuadcdtadcFFFFi0Ecbyd;u:kjjbHjjjjbbhralalyd9GgocdtfarBdbalaocefBd9GabarBdwabydbcbavz:wjjjb8Aadci9UhDdnadTmbabydbhoaehladhrinaoalydbcdtfgvavydbcefBdbalclfhlarcufgrmbkkdnaiTmbabydbhlabydlhrcbhvaihoinaravBdbarclfhralydbavfhvalclfhlaocufgombkkdnadci6mbabydlhrabydwhvcbhlinaecwfydbhoaeclfydbhdaraeydbcdtfgwawydbgwcefBdbavawcdtfalBdbaradcdtfgdadydbgdcefBdbavadcdtfalBdbaraocdtfgoaoydbgocefBdbavaocdtfalBdbaecxfheaDalcefgl9hmbkkdnaiTmbabydlheabydbhlinaeaeydbalydb9RBdbalclfhlaeclfheaicufgimbkkkQbabaeadaic;K1jjbz:njjjbkQbabaeadaic;m:jjjbz:njjjbk9DeeuabcFeaicdtz:wjjjbhlcbhbdnadTmbindnalaeydbcdtfgiydbcu9hmbaiabBdbabcefhbkaeclfheadcufgdmbkkabk:Vvioud9:du8Jjjjjbc;Wa9Rgl8Kjjjjbcbhvalcxfcbc;Kbz:wjjjb8AalcuadcitgoadcFFFFe0Ecbyd;u:kjjbHjjjjbbgrBdxalceBd2araeadaicez:tjjjbalcuaoadcjjjjoGEcbyd;u:kjjbHjjjjbbgwBdzadcdthednadTmbabhiinaiavBdbaiclfhiadavcefgv9hmbkkawaefhDalabBdwalawBdl9cbhqindnadTmbaq9cq9:hkarhvaDhiadheinaiav8Pibak1:NcFrG87ebavcwfhvaicdfhiaecufgembkkalclfaq:NceGcdtfydbhxalclfaq9ce98gq:NceGcdtfydbhmalc;Wbfcbcjaz:wjjjb8AaDhvadhidnadTmbinalc;Wbfav8VebcdtfgeaeydbcefBdbavcdfhvaicufgimbkkcbhvcbhiinalc;WbfavfgeydbhoaeaiBdbaoaifhiavclfgvcja9hmbkadhvdndnadTmbinalc;WbfaDamydbgicetf8VebcdtfgeaeydbgecefBdbaxaecdtfaiBdbamclfhmavcufgvmbkaq9cv9smdcbhvinabawydbcdtfavBdbawclfhwadavcefgv9hmbxdkkaq9cv9smekkclhvdninavc98Smealcxfavfydbcbyd;q:kjjbH:bjjjbbavc98fhvxbkkalc;Waf8Kjjjjbk:Jwliuo99iud9:cbhv8Jjjjjbca9Rgoczfcwfcbyd:8:kjjbBdbaocb8Pd:0:kjjb83izaocwfcbyd;i:kjjbBdbaocb8Pd;a:kjjb83ibaicd4hrdndnadmbJFFuFhwJFFuuhDJFFuuhqJFFuFhkJFFuuhxJFFuFhmxekarcdthPaehsincbhiinaoczfaifgzasaifIdbgwazIdbgDaDaw9EEUdbaoaifgzawazIdbgDaDaw9DEUdbaiclfgicx9hmbkasaPfhsavcefgvad9hmbkaoIdKhDaoIdwhwaoIdChqaoIdlhkaoIdzhxaoIdbhmkdnadTmbJbbbbJbFu9hJbbbbamax:tgmamJbbbb9DEgmakaq:tgkakam9DEgkawaD:tgwawak9DEgw:vawJbbbb9BEhwdnalmbarcdthoindndnaeclfIdbaq:tawNJbbbZMgk:lJbbb9p9DTmbak:Ohixekcjjjj94hikai:S9cC:ghHdndnaeIdbax:tawNJbbbZMgk:lJbbb9p9DTmbak:Ohixekcjjjj94hikaHai:S:ehHdndnaecwfIdbaD:tawNJbbbZMgk:lJbbb9p9DTmbak:Ohixekcjjjj94hikabaHai:T9cy:g:e83ibaeaofheabcwfhbadcufgdmbxdkkarcdthoindndnaeIdbax:tawNJbbbZMgk:lJbbb9p9DTmbak:Ohixekcjjjj94hikai:SgH9ca:gaH9cz:g9cjjj;4s:d:eaH9cFe:d:e9cF:bj;4:pj;ar:d9c:bd9:9c:p;G:d;4j:E;ar:d9cH9:9c;d;H:W:y:m:g;d;Hb:d9cv9:9c;j:KM;j:KM;j:Kd:dhOdndnaeclfIdbaq:tawNJbbbZMgk:lJbbb9p9DTmbak:Ohixekcjjjj94hikai:SgH9ca:gaH9cz:g9cjjj;4s:d:eaH9cFe:d:e9cF:bj;4:pj;ar:d9c:bd9:9c:p;G:d;4j:E;ar:d9cH9:9c;d;H:W:y:m:g;d;Hb:d9cq9:9cM;j:KM;j:KM;jl:daO:ehOdndnaecwfIdbaD:tawNJbbbZMgk:lJbbb9p9DTmbak:Ohixekcjjjj94hikabaOai:SgH9ca:gaH9cz:g9cjjj;4s:d:eaH9cFe:d:e9cF:bj;4:pj;ar:d9c:bd9:9c:p;G:d;4j:E;ar:d9cH9:9c;d;H:W:y:m:g;d;Hb:d9cC9:9c:KM;j:KM;j:KMD:d:e83ibaeaofheabcwfhbadcufgdmbkkk9teiucbcbyd;y:kjjbgeabcifc98GfgbBd;y:kjjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik;teeeudndnaeabVciGTmbabhixekdndnadcz9pmbabhixekabhiinaiaeydbBdbaiaeydlBdlaiaeydwBdwaiaeydxBdxaeczfheaiczfhiadc9Wfgdcs0mbkkadcl6mbinaiaeydbBdbaeclfheaiclfhiadc98fgdci0mbkkdnadTmbinaiaeRbb86bbaicefhiaecefheadcufgdmbkkabk:3eedudndnabciGTmbabhixekaecFeGc:b:c:ew2hldndnadcz9pmbabhixekabhiinaialBdxaialBdwaialBdlaialBdbaiczfhiadc9Wfgdcs0mbkkadcl6mbinaialBdbaiclfhiadc98fgdci0mbkkdnadTmbinaiae86bbaicefhiadcufgdmbkkabk9teiucbcbyd;y:kjjbgeabcrfc94GfgbBd;y:kjjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik9:eiuZbhedndncbyd;y:kjjbgdaecztgi9nmbcuheadai9RcFFifcz4nbcuSmekadhekcbabae9Rcifc98Gcbyd;y:kjjbfgdBd;y:kjjbdnadZbcztge9nmbadae9RcFFifcz4nb8Akkk;Qddbcjwk;mdbbbbdbbblbbbwbbbbbbbebbbdbbblbbbwbbbbbbbbbbbbbbbb4:h9w9N94:P:gW:j9O:ye9Pbbbbbbebbbdbbbebbbdbbbbbbbdbbbbbbbebbbbbbb:l29hZ;69:9kZ;N;76Z;rg97Z;z;o9xZ8J;B85Z;:;u9yZ;b;k9HZ:2;Z9DZ9e:l9mZ59A8KZ:r;T3Z:A:zYZ79OHZ;j4::8::Y:D9V8:bbbb9s:49:Z8R:hBZ9M9M;M8:L;z;o8:;8:PG89q;x:J878R:hQ8::M:B;e87bbbbbbjZbbjZbbjZ:E;V;N8::Y:DsZ9i;H;68:xd;R8:;h0838:;W:NoZbbbb:WV9O8:uf888:9i;H;68:9c9G;L89;n;m9m89;D8Ko8:bbbbf:8tZ9m836ZS:2AZL;zPZZ818EZ9e:lxZ;U98F8:819E;68:FFuuFFuuFFuuFFuFFFuFFFuFbc;mqkzebbbebbbdbbb9G:vbb",Q=new Uint8Array([32,0,65,2,1,106,34,33,3,128,11,4,13,64,6,253,10,7,15,116,127,5,8,12,40,16,19,54,20,9,27,255,113,17,42,67,24,23,146,148,18,14,22,45,70,69,56,114,101,21,25,63,75,136,108,28,118,29,73,115]);if(typeof WebAssembly!=="object")return{supported:!1};var B,Y=WebAssembly.instantiate(J(A),{}).then(function(E){B=E.instance,B.exports.__wasm_call_ctors(),B.exports.meshopt_encodeVertexVersion(0),B.exports.meshopt_encodeIndexVersion(1)});function J(E){var K=new Uint8Array(E.length);for(var I=0;I96?V-97:V>64?V-39:V+4}var H=0;for(var I=0;I=3),F(B.exports.meshopt_spatialSortRemap,E,E.length/K,K*4)},encodeVertexBuffer:function(E,K,I){C(I>0&&I<=256),C(I%4==0);var V=B.exports.meshopt_encodeVertexBufferBound(K,I);return W(B.exports.meshopt_encodeVertexBuffer,V,E,K,I)},encodeIndexBuffer:function(E,K,I){C(I==2||I==4),C(K%3==0);var V=U(E,I),H=B.exports.meshopt_encodeIndexBufferBound(K,Z(V)+1);return W(B.exports.meshopt_encodeIndexBuffer,H,V,K,4)},encodeIndexSequence:function(E,K,I){C(I==2||I==4);var V=U(E,I),H=B.exports.meshopt_encodeIndexSequenceBound(K,Z(V)+1);return W(B.exports.meshopt_encodeIndexSequence,H,V,K,4)},encodeGltfBuffer:function(E,K,I,V){var H={ATTRIBUTES:this.encodeVertexBuffer,TRIANGLES:this.encodeIndexBuffer,INDICES:this.encodeIndexSequence};return C(H[V]),H[V](E,K,I)},encodeFilterOct:function(E,K,I,V){return C(I==4||I==8),C(V>=1&&V<=16),$(B.exports.meshopt_encodeFilterOct,E,K,I,V,16)},encodeFilterQuat:function(E,K,I,V){return C(I==8),C(V>=4&&V<=16),$(B.exports.meshopt_encodeFilterQuat,E,K,I,V,16)},encodeFilterExp:function(E,K,I,V,H){C(I>0&&I%4==0),C(V>=1&&V<=24);var D={Separate:0,SharedVector:1,SharedComponent:2,Clamped:3};return $(B.exports.meshopt_encodeFilterExp,E,K,I,V,I,H?D[H]:1)}}}();if(typeof QH==="object"&&typeof Eg==="object")Eg.exports=D3;else if(typeof define==="function"&&define.amd)define([],function(){return D3});else if(typeof QH==="object")QH.MeshoptEncoder=D3;else(typeof self<"u"?self:QH).MeshoptEncoder=D3});var DCA=R((BH,Kg)=>{var N3=function(){var A="b9H79Tebbbe8Fv9Gbb9Gvuuuuueu9Giuuub9Geueu9Giuuueuikqbeeedddillviebeoweuec:W:Odkr;leDo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bb8A9TW79O9V9Wt9F9KW9J9V9KW9wWVtW949c919M9MWVbeY9TW79O9V9Wt9F9KW9J9V9KW69U9KW949c919M9MWVbdE9TW79O9V9Wt9F9KW9J9V9KW69U9KW949tWG91W9U9JWbiL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9p9JtblK9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9r919HtbvL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWVT949Wbol79IV9Rbrq:S86qdbk;jYi5ud9:du8Jjjjjbcj;kb9Rgv8Kjjjjbc9:hodnalTmbcuhoaiRbbgrc;WeGc:Ge9hmbarcsGgwce0mbc9:hoalcufadcd4cbawEgDadfgrcKcaawEgqaraq0Egk6mbaicefhxcj;abad9Uc;WFbGcjdadca0EhmaialfgPar9Rgoadfhsavaoadz1jjjbgzceVhHcbhOdndninaeaO9nmeaPax9RaD6mdamaeaO9RaOamfgoae6EgAcsfglc9WGhCabaOad2fhXaAcethQaxaDfhiaOaeaoaeao6E9RhLalcl4cifcd4hKazcj;cbfaAfhYcbh8AazcjdfhEaHh3incbhodnawTmbaxa8Acd4fRbbhokaocFeGh5cbh8Eazcj;cbfhqinaih8Fdndndndna5a8Ecet4ciGgoc9:fPdebdkaPa8F9RaA6mrazcj;cbfa8EaA2fa8FaAz1jjjb8Aa8FaAfhixdkazcj;cbfa8EaA2fcbaAz:jjjjb8Aa8FhixekaPa8F9RaK6mva8FaKfhidnaCTmbaPai9RcK6mbaocdtc:q1jjbfcj1jjbawEhaczhrcbhlinargoc9Wfghaqfhrdndndndndndnaaa8Fahco4fRbbalcoG4ciGcdtfydbPDbedvivvvlvkar9cb83bbarcwf9cb83bbxlkarcbaiRbdai8Xbb9c:c:qj:bw9:9c:q;c1:I1e:d9c:b:c:e1z9:gg9cjjjjjz:dg8J9qE86bbaqaofgrcGfag9c8F1:NghcKtc8F91aicdfa8J9c8N1:Nfg8KRbbG86bbarcVfcba8KahcjeGcr4fghRbbag9cjjjjjl:dg8J9qE86bbarc7fcbaha8J9c8L1:NfghRbbag9cjjjjjd:dg8J9qE86bbarctfcbaha8J9c8K1:NfghRbbag9cjjjjje:dg8J9qE86bbarc91fcbaha8J9c8J1:NfghRbbag9cjjjj;ab:dg8J9qE86bbarc4fcbaha8J9cg1:NfghRbbag9cjjjja:dg8J9qE86bbarc93fcbaha8J9ch1:NfghRbbag9cjjjjz:dgg9qE86bbarc94fcbahag9ca1:NfghRbbai8Xbe9c:c:qj:bw9:9c:q;c1:I1e:d9c:b:c:e1z9:gg9cjjjjjz:dg8J9qE86bbarc95fag9c8F1:NgicKtc8F91aha8J9c8N1:NfghRbbG86bbarc96fcbahaicjeGcr4fgiRbbag9cjjjjjl:dg8J9qE86bbarc97fcbaia8J9c8L1:NfgiRbbag9cjjjjjd:dg8J9qE86bbarc98fcbaia8J9c8K1:NfgiRbbag9cjjjjje:dg8J9qE86bbarc99fcbaia8J9c8J1:NfgiRbbag9cjjjj;ab:dg8J9qE86bbarc9:fcbaia8J9cg1:NfgiRbbag9cjjjja:dg8J9qE86bbarcufcbaia8J9ch1:NfgiRbbag9cjjjjz:dgg9qE86bbaiag9ca1:NfhixikaraiRblaiRbbghco4g8Ka8KciSg8KE86bbaqaofgrcGfaiclfa8Kfg8KRbbahcl4ciGg8La8LciSg8LE86bbarcVfa8Ka8Lfg8KRbbahcd4ciGg8La8LciSg8LE86bbarc7fa8Ka8Lfg8KRbbahciGghahciSghE86bbarctfa8Kahfg8KRbbaiRbeghco4g8La8LciSg8LE86bbarc91fa8Ka8Lfg8KRbbahcl4ciGg8La8LciSg8LE86bbarc4fa8Ka8Lfg8KRbbahcd4ciGg8La8LciSg8LE86bbarc93fa8Ka8Lfg8KRbbahciGghahciSghE86bbarc94fa8Kahfg8KRbbaiRbdghco4g8La8LciSg8LE86bbarc95fa8Ka8Lfg8KRbbahcl4ciGg8La8LciSg8LE86bbarc96fa8Ka8Lfg8KRbbahcd4ciGg8La8LciSg8LE86bbarc97fa8Ka8Lfg8KRbbahciGghahciSghE86bbarc98fa8KahfghRbbaiRbigico4g8Ka8KciSg8KE86bbarc99faha8KfghRbbaicl4ciGg8Ka8KciSg8KE86bbarc9:faha8KfghRbbaicd4ciGg8Ka8KciSg8KE86bbarcufaha8KfgrRbbaiciGgiaiciSgiE86bbaraifhixdkaraiRbwaiRbbghcl4g8Ka8KcsSg8KE86bbaqaofgrcGfaicwfa8Kfg8KRbbahcsGghahcsSghE86bbarcVfa8KahfghRbbaiRbeg8Kcl4g8La8LcsSg8LE86bbarc7faha8LfghRbba8KcsGg8Ka8KcsSg8KE86bbarctfaha8KfghRbbaiRbdg8Kcl4g8La8LcsSg8LE86bbarc91faha8LfghRbba8KcsGg8Ka8KcsSg8KE86bbarc4faha8KfghRbbaiRbig8Kcl4g8La8LcsSg8LE86bbarc93faha8LfghRbba8KcsGg8Ka8KcsSg8KE86bbarc94faha8KfghRbbaiRblg8Kcl4g8La8LcsSg8LE86bbarc95faha8LfghRbba8KcsGg8Ka8KcsSg8KE86bbarc96faha8KfghRbbaiRbvg8Kcl4g8La8LcsSg8LE86bbarc97faha8LfghRbba8KcsGg8Ka8KcsSg8KE86bbarc98faha8KfghRbbaiRbog8Kcl4g8La8LcsSg8LE86bbarc99faha8LfghRbba8KcsGg8Ka8KcsSg8KE86bbarc9:faha8KfghRbbaiRbrgicl4g8Ka8KcsSg8KE86bbarcufaha8KfgrRbbaicsGgiaicsSgiE86bbaraifhixekarai8Pbb83bbarcwfaicwf8Pbb83bbaiczfhikdnaoaC9pmbalcdfhlaoczfhraPai9RcL0mekkaoaC6moaimexokaCmva8FTmvkaqaAfhqa8Ecefg8Ecl9hmbkdndndndnawTmbasa8Acd4fRbbgociGPlbedrbkaATmdaza8Afh8Fazcj;cbfhhcbh8EaEhaina8FRbbhraahocbhlinaoahalfRbbgqce4cbaqceG9R7arfgr86bbaoadfhoaAalcefgl9hmbkaacefhaa8Fcefh8FahaAfhha8Ecefg8Ecl9hmbxikkaATmeaza8Afhaazcj;cbfhhcbhoceh8EaYh8FinaEaofhlaa8Vbbhrcbhoinala8FaofRbbcwtahaofRbbgqVc;:FiGce4cbaqceG9R7arfgr87bbaladfhlaLaocefgofmbka8FaQfh8FcdhoaacdfhaahaQfhha8EceGhlcbh8EalmbxdkkaATmbcbaocl49Rh8Eaza8AfRbbhqcwhoa3hlinalRbbaotaqVhqalcefhlaocwfgoca9hmbkcbhhaEh8FaYhainazcj;cbfahfRbbhrcwhoaahlinalRbbaotarVhralaAfhlaocwfgoca9hmbkara8E93aq7hqcbhoa8Fhlinalaqao486bbalcefhlaocwfgoca9hmbka8Fadfh8FaacefhaahcefghaA9hmbkkaEclfhEa3clfh3a8Aclfg8Aad6mbkaXazcjdfaAad2z1jjjb8AazazcjdfaAcufad2fadz1jjjb8AaAaOfhOaihxaimbkc9:hoxdkcbc99aPax9RakSEhoxekc9:hokavcj;kbf8Kjjjjbaok:XseHu8Jjjjjbc;ae9Rgv8Kjjjjbc9:hodnaeci9UgrcHfal0mbcuhoaiRbbgwc;WeGc;Ge9hmbawcsGgDce0mbavc;abfcFecjez:jjjjb8AavcUf9cu83ibavc8Wf9cu83ibavcyf9cu83ibavcaf9cu83ibavcKf9cu83ibavczf9cu83ibav9cu83iwav9cu83ibaialfc9WfhqaicefgwarfhldnaeTmbcmcsaDceSEhkcbhxcbhmcbhrcbhicbhoindnalaq9nmbc9:hoxikdndnawRbbgDc;Ve0mbavc;abfaoaDcu7gPcl4fcsGcitfgsydlhzasydbhHdndnaDcsGgsak9pmbavaiaPfcsGcdtfydbaxasEhDaxasTgOfhxxekdndnascsSmbcehOasc987asamffcefhDxekalcefhDal8SbbgscFeGhPdndnascu9mmbaDhlxekalcvfhlaPcFbGhPcrhsdninaD8SbbgOcFbGastaPVhPaOcu9kmeaDcefhDascrfgsc8J9hmbxdkkaDcefhlkcehOaPce4cbaPceG9R7amfhDkaDhmkavc;abfaocitfgsaDBdbasazBdlavaicdtfaDBdbavc;abfaocefcsGcitfgsaHBdbasaDBdlaocdfhoaOaifhidnadcd9hmbabarcetfgsaH87ebasclfaD87ebascdfaz87ebxdkabarcdtfgsaHBdbascwfaDBdbasclfazBdbxekdnaDcpe0mbaxcefgOavaiaqaDcsGfRbbgscl49RcsGcdtfydbascz6gPEhDavaias9RcsGcdtfydbaOaPfgzascsGgOEhsaOThOdndnadcd9hmbabarcetfgHax87ebaHclfas87ebaHcdfaD87ebxekabarcdtfgHaxBdbaHcwfasBdbaHclfaDBdbkavaicdtfaxBdbavc;abfaocitfgHaDBdbaHaxBdlavaicefgicsGcdtfaDBdbavc;abfaocefcsGcitfgHasBdbaHaDBdlavaiaPfgicsGcdtfasBdbavc;abfaocdfcsGcitfgDaxBdbaDasBdlaocifhoaiaOfhiazaOfhxxekaxcbalRbbgHEgAaDc;:eSgDfhzaHcsGhCaHcl4hXdndnaHcs0mbazcefhOxekazhOavaiaX9RcsGcdtfydbhzkdndnaCmbaOcefhxxekaOhxavaiaH9RcsGcdtfydbhOkdndnaDTmbalcefhDxekalcdfhDal8SbegPcFeGhsdnaPcu9kmbalcofhAascFbGhscrhldninaD8SbbgPcFbGaltasVhsaPcu9kmeaDcefhDalcrfglc8J9hmbkaAhDxekaDcefhDkasce4cbasceG9R7amfgmhAkdndnaXcsSmbaDhsxekaDcefhsaD8SbbglcFeGhPdnalcu9kmbaDcvfhzaPcFbGhPcrhldninas8SbbgDcFbGaltaPVhPaDcu9kmeascefhsalcrfglc8J9hmbkazhsxekascefhskaPce4cbaPceG9R7amfgmhzkdndnaCcsSmbashlxekascefhlas8SbbgDcFeGhPdnaDcu9kmbascvfhOaPcFbGhPcrhDdninal8SbbgscFbGaDtaPVhPascu9kmealcefhlaDcrfgDc8J9hmbkaOhlxekalcefhlkaPce4cbaPceG9R7amfgmhOkdndnadcd9hmbabarcetfgDaA87ebaDclfaO87ebaDcdfaz87ebxekabarcdtfgDaABdbaDcwfaOBdbaDclfazBdbkavc;abfaocitfgDazBdbaDaABdlavaicdtfaABdbavc;abfaocefcsGcitfgDaOBdbaDazBdlavaicefgicsGcdtfazBdbavc;abfaocdfcsGcitfgDaABdbaDaOBdlavaiaHcz6aXcsSVfgicsGcdtfaOBdbaiaCTaCcsSVfhiaocifhokawcefhwaocsGhoaicsGhiarcifgrae6mbkkcbc99alaqSEhokavc;aef8Kjjjjbaok:clevu8Jjjjjbcz9Rhvdnaecvfal9nmbc9:skdnaiRbbc;:eGc;qeSmbcuskav9cb83iwaicefhoaialfc98fhrdnaeTmbdnadcdSmbcbhwindnaoar6mbc9:skaocefhlao8SbbgicFeGhddndnaicu9mmbalhoxekaocvfhoadcFbGhdcrhidninal8SbbgDcFbGaitadVhdaDcu9kmealcefhlaicrfgic8J9hmbxdkkalcefhokabawcdtfadc8Etc8F91adcd47avcwfadceGcdtVglydbfgiBdbalaiBdbawcefgwae9hmbxdkkcbhwindnaoar6mbc9:skaocefhlao8SbbgicFeGhddndnaicu9mmbalhoxekaocvfhoadcFbGhdcrhidninal8SbbgDcFbGaitadVhdaDcu9kmealcefhlaicrfgic8J9hmbxdkkalcefhokabawcetfadc8Etc8F91adcd47avcwfadceGcdtVglydbfgi87ebalaiBdbawcefgwae9hmbkkcbc99aoarSEk:Lvoeue99dud99eud99dndnadcl9hmbaeTmeindndnabcdfgd8Sbb:Yab8Sbbgi:Ygl:l:tabcefgv8Sbbgo:Ygr:l:tgwJbb;:9cawawNJbbbbawawJbbbb9GgDEgq:mgkaqaicb9iEalMgwawNakaqaocb9iEarMgqaqNMM:r:vglNJbbbZJbbb:;aDEMgr:lJbbb9p9DTmbar:Ohixekcjjjj94hikadai86bbdndnaqalNJbbbZJbbb:;aqJbbbb9GEMgq:lJbbb9p9DTmbaq:Ohdxekcjjjj94hdkavad86bbdndnawalNJbbbZJbbb:;awJbbbb9GEMgw:lJbbb9p9DTmbaw:Ohdxekcjjjj94hdkabad86bbabclfhbaecufgembxdkkaeTmbindndnabclfgd8Ueb:Yab8Uebgi:Ygl:l:tabcdfgv8Uebgo:Ygr:l:tgwJb;:FSawawNJbbbbawawJbbbb9GgDEgq:mgkaqaicb9iEalMgwawNakaqaocb9iEarMgqaqNMM:r:vglNJbbbZJbbb:;aDEMgr:lJbbb9p9DTmbar:Ohixekcjjjj94hikadai87ebdndnaqalNJbbbZJbbb:;aqJbbbb9GEMgq:lJbbb9p9DTmbaq:Ohdxekcjjjj94hdkavad87ebdndnawalNJbbbZJbbb:;awJbbbb9GEMgw:lJbbb9p9DTmbaw:Ohdxekcjjjj94hdkabad87ebabcwfhbaecufgembkkk;oiliui99iue99dnaeTmbcbhiabhlindndnJ;Zl81Zalcof8UebgvciV:Y:vgoal8Ueb:YNgrJb;:FSNJbbbZJbbb:;arJbbbb9GEMgw:lJbbb9p9DTmbaw:OhDxekcjjjj94hDkalclf8Uebhqalcdf8UebhkabaiavcefciGfcetfaD87ebdndnaoak:YNgwJb;:FSNJbbbZJbbb:;awJbbbb9GEMgx:lJbbb9p9DTmbax:OhDxekcjjjj94hDkabaiavciGfgkcd7cetfaD87ebdndnaoaq:YNgoJb;:FSNJbbbZJbbb:;aoJbbbb9GEMgx:lJbbb9p9DTmbax:OhDxekcjjjj94hDkabaiavcufciGfcetfaD87ebdndnJbbjZararN:tawawN:taoaoN:tgrJbbbbarJbbbb9GE:rJb;:FSNJbbbZMgr:lJbbb9p9DTmbar:Ohvxekcjjjj94hvkabakcetfav87ebalcwfhlaiclfhiaecufgembkkk9mbdnadcd4ae2gdTmbinababydbgecwtcw91:Yaece91cjjj98Gcjjj;8if::NUdbabclfhbadcufgdmbkkk9teiucbcbyd:K1jjbgeabcifc98GfgbBd:K1jjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik;teeeudndnaeabVciGTmbabhixekdndnadcz9pmbabhixekabhiinaiaeydbBdbaiaeydlBdlaiaeydwBdwaiaeydxBdxaeczfheaiczfhiadc9Wfgdcs0mbkkadcl6mbinaiaeydbBdbaeclfheaiclfhiadc98fgdci0mbkkdnadTmbinaiaeRbb86bbaicefhiaecefheadcufgdmbkkabk:3eedudndnabciGTmbabhixekaecFeGc:b:c:ew2hldndnadcz9pmbabhixekabhiinaialBdxaialBdwaialBdlaialBdbaiczfhiadc9Wfgdcs0mbkkadcl6mbinaialBdbaiclfhiadc98fgdci0mbkkdnadTmbinaiae86bbaicefhiadcufgdmbkkabkk81dbcjwk8Kbbbbdbbblbbbwbbbbbbbebbbdbbblbbbwbbbbc:Kwkl8WNbb",Q="b9H79TebbbeKl9Gbb9Gvuuuuueu9Giuuub9Geueuikqbbebeedddilve9Weeeviebeoweuec:q:6dkr;leDo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bb8A9TW79O9V9Wt9F9KW9J9V9KW9wWVtW949c919M9MWVbdY9TW79O9V9Wt9F9KW9J9V9KW69U9KW949c919M9MWVblE9TW79O9V9Wt9F9KW9J9V9KW69U9KW949tWG91W9U9JWbvL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9p9JtboK9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9r919HtbrL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWVT949Wbwl79IV9RbDq;G9Mqlbzik9:evu8Jjjjjbcz9Rhbcbheincbhdcbhiinabcwfadfaicjuaead4ceGglE86bbaialfhiadcefgdcw9hmbkaec:q:yjjbfai86bbaecitc:q1jjbfab8Piw83ibaecefgecjd9hmbkk:183lYud97dur978Jjjjjbcj;kb9Rgv8Kjjjjbc9:hodnalTmbcuhoaiRbbgrc;WeGc:Ge9hmbarcsGgwce0mbc9:hoalcufadcd4cbawEgDadfgrcKcaawEgqaraq0Egk6mbaicefhxavaialfgmar9Rgoad;8qbbcj;abad9Uc;WFbGcjdadca0EhPdndndnadTmbaoadfhscbhzinaeaz9nmdamax9RaD6miabazad2fhHaxaDfhOaPaeaz9RazaPfae6EgAcsfgocl4cifcd4hCavcj;cbfaoc9WGgXcetfhQavcj;cbfaXci2fhLavcj;cbfaXfhKcbhYaoc;ab6h8AincbhodnawTmbaxaYcd4fRbbhokaocFeGhEcbh3avcj;cbfh5indndndndnaEa3cet4ciGgoc9:fPdebdkamaO9RaX6mwavcj;cbfa3aX2faOaX;8qbbaOaAfhOxdkavcj;cbfa3aX2fcbaX;8kbxekamaO9RaC6moaoclVcbawEhraOaCfhocbhidna8Ambamao9Rc;Gb6mbcbhlina5alfhidndndndndndnaOalco4fRbbgqciGarfPDbedibledibkaipxbbbbbbbbbbbbbbbbpklbxlkaiaopbblaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLg8Ecdp:mea8EpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9og8Fpxiiiiiiiiiiiiiiiip8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaaaoclffahc:q:yjjbfRbbfhoxikaiaopbbwaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9og8Fpxssssssssssssssssp8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaaaocwffahc:q:yjjbfRbbfhoxdkaiaopbbbpklbaoczfhoxekaiaopbbdaoRbbgacitc:q1jjbfpbibaac:q:yjjbfRbbgapsaoRbeghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPpklbaaaocdffahc:q:yjjbfRbbfhokdndndndndndnaqcd4ciGarfPDbedibledibkaiczfpxbbbbbbbbbbbbbbbbpklbxlkaiczfaopbblaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLg8Ecdp:mea8EpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9og8Fpxiiiiiiiiiiiiiiiip8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaaaoclffahc:q:yjjbfRbbfhoxikaiczfaopbbwaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9og8Fpxssssssssssssssssp8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaaaocwffahc:q:yjjbfRbbfhoxdkaiczfaopbbbpklbaoczfhoxekaiczfaopbbdaoRbbgacitc:q1jjbfpbibaac:q:yjjbfRbbgapsaoRbeghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPpklbaaaocdffahc:q:yjjbfRbbfhokdndndndndndnaqcl4ciGarfPDbedibledibkaicafpxbbbbbbbbbbbbbbbbpklbxlkaicafaopbblaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLg8Ecdp:mea8EpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9og8Fpxiiiiiiiiiiiiiiiip8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaaaoclffahc:q:yjjbfRbbfhoxikaicafaopbbwaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9og8Fpxssssssssssssssssp8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaaaocwffahc:q:yjjbfRbbfhoxdkaicafaopbbbpklbaoczfhoxekaicafaopbbdaoRbbgacitc:q1jjbfpbibaac:q:yjjbfRbbgapsaoRbeghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPpklbaaaocdffahc:q:yjjbfRbbfhokdndndndndndnaqco4arfPDbedibledibkaic8Wfpxbbbbbbbbbbbbbbbbpklbxlkaic8Wfaopbblaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLg8Ecdp:mea8EpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9og8Fpxiiiiiiiiiiiiiiiip8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngicitc:q1jjbfpbibaic:q:yjjbfRbbgipsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Ngqcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaiaoclffaqc:q:yjjbfRbbfhoxikaic8Wfaopbbwaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9og8Fpxssssssssssssssssp8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngicitc:q1jjbfpbibaic:q:yjjbfRbbgipsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Ngqcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaiaocwffaqc:q:yjjbfRbbfhoxdkaic8Wfaopbbbpklbaoczfhoxekaic8WfaopbbdaoRbbgicitc:q1jjbfpbibaic:q:yjjbfRbbgipsaoRbegqcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPpklbaiaocdffaqc:q:yjjbfRbbfhokalc;abfhialcjefaX0meaihlamao9Rc;Fb0mbkkdnaiaX9pmbaici4hlinamao9RcK6mwa5aifhqdndndndndndnaOaico4fRbbalcoG4ciGarfPDbedibledibkaqpxbbbbbbbbbbbbbbbbpkbbxlkaqaopbblaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLg8Ecdp:mea8EpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9og8Fpxiiiiiiiiiiiiiiiip8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spkbbaaaoclffahc:q:yjjbfRbbfhoxikaqaopbbwaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9og8Fpxssssssssssssssssp8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spkbbaaaocwffahc:q:yjjbfRbbfhoxdkaqaopbbbpkbbaoczfhoxekaqaopbbdaoRbbgacitc:q1jjbfpbibaac:q:yjjbfRbbgapsaoRbeghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPpkbbaaaocdffahc:q:yjjbfRbbfhokalcdfhlaiczfgiaX6mbkkaohOaoTmoka5aXfh5a3cefg3cl9hmbkdndndndnawTmbasaYcd4fRbbglciGPlbedwbkaXTmdavcjdfaYfhlavaYfpbdbhgcbhoinalavcj;cbfaofpblbg8JaKaofpblbg8KpmbzeHdOiAlCvXoQrLg8LaQaofpblbg8MaLaofpblbg8NpmbzeHdOiAlCvXoQrLgypmbezHdiOAlvCXorQLg8Ecep9Ta8Epxeeeeeeeeeeeeeeeeg8Fp9op9Hp9rg8Eagp9Uggp9Abbbaladfglaga8Ea8Epmlvorlvorlvorlvorp9Uggp9Abbbaladfglaga8Ea8EpmwDqkwDqkwDqkwDqkp9Uggp9Abbbaladfglaga8Ea8EpmxmPsxmPsxmPsxmPsp9Uggp9Abbbaladfglaga8LaypmwDKYqk8AExm35Ps8E8Fg8Ecep9Ta8Ea8Fp9op9Hp9rg8Ep9Uggp9Abbbaladfglaga8Ea8Epmlvorlvorlvorlvorp9Uggp9Abbbaladfglaga8Ea8EpmwDqkwDqkwDqkwDqkp9Uggp9Abbbaladfglaga8Ea8EpmxmPsxmPsxmPsxmPsp9Uggp9Abbbaladfglaga8Ja8KpmwKDYq8AkEx3m5P8Es8Fg8Ja8Ma8NpmwKDYq8AkEx3m5P8Es8Fg8KpmbezHdiOAlvCXorQLg8Ecep9Ta8Ea8Fp9op9Hp9rg8Ep9Uggp9Abbbaladfglaga8Ea8Epmlvorlvorlvorlvorp9Uggp9Abbbaladfglaga8Ea8EpmwDqkwDqkwDqkwDqkp9Uggp9Abbbaladfglaga8Ea8EpmxmPsxmPsxmPsxmPsp9Uggp9Abbbaladfglaga8Ja8KpmwDKYqk8AExm35Ps8E8Fg8Ecep9Ta8Ea8Fp9op9Hp9rg8Ep9Ug8Fp9Abbbaladfgla8Fa8Ea8Epmlvorlvorlvorlvorp9Ug8Fp9Abbbaladfgla8Fa8Ea8EpmwDqkwDqkwDqkwDqkp9Ug8Fp9Abbbaladfgla8Fa8Ea8EpmxmPsxmPsxmPsxmPsp9Uggp9AbbbaladfhlaoczfgoaX6mbxikkaXTmeavcjdfaYfhlavaYfpbdbhgcbhoinalavcj;cbfaofpblbg8JaKaofpblbg8KpmbzeHdOiAlCvXoQrLg8LaQaofpblbg8MaLaofpblbg8NpmbzeHdOiAlCvXoQrLgypmbezHdiOAlvCXorQLg8Ecep:nea8Epxebebebebebebebebg8Fp9op:bep9rg8Eagp:oeggp9Abbbaladfglaga8Ea8Epmlvorlvorlvorlvorp:oeggp9Abbbaladfglaga8Ea8EpmwDqkwDqkwDqkwDqkp:oeggp9Abbbaladfglaga8Ea8EpmxmPsxmPsxmPsxmPsp:oeggp9Abbbaladfglaga8LaypmwDKYqk8AExm35Ps8E8Fg8Ecep:nea8Ea8Fp9op:bep9rg8Ep:oeggp9Abbbaladfglaga8Ea8Epmlvorlvorlvorlvorp:oeggp9Abbbaladfglaga8Ea8EpmwDqkwDqkwDqkwDqkp:oeggp9Abbbaladfglaga8Ea8EpmxmPsxmPsxmPsxmPsp:oeggp9Abbbaladfglaga8Ja8KpmwKDYq8AkEx3m5P8Es8Fg8Ja8Ma8NpmwKDYq8AkEx3m5P8Es8Fg8KpmbezHdiOAlvCXorQLg8Ecep:nea8Ea8Fp9op:bep9rg8Ep:oeggp9Abbbaladfglaga8Ea8Epmlvorlvorlvorlvorp:oeggp9Abbbaladfglaga8Ea8EpmwDqkwDqkwDqkwDqkp:oeggp9Abbbaladfglaga8Ea8EpmxmPsxmPsxmPsxmPsp:oeggp9Abbbaladfglaga8Ja8KpmwDKYqk8AExm35Ps8E8Fg8Ecep:nea8Ea8Fp9op:bep9rg8Ep:oeg8Fp9Abbbaladfgla8Fa8Ea8Epmlvorlvorlvorlvorp:oeg8Fp9Abbbaladfgla8Fa8Ea8EpmwDqkwDqkwDqkwDqkp:oeg8Fp9Abbbaladfgla8Fa8Ea8EpmxmPsxmPsxmPsxmPsp:oeggp9AbbbaladfhlaoczfgoaX6mbxdkkaXTmbcbhocbalcl4gl9Rc8FGhiavcjdfaYfhravaYfpbdbh8Finaravcj;cbfaofpblbggaKaofpblbg8JpmbzeHdOiAlCvXoQrLg8KaQaofpblbg8LaLaofpblbg8MpmbzeHdOiAlCvXoQrLg8NpmbezHdiOAlvCXorQLg8Eaip:Rea8Ealp:Sep9qg8Ea8Fp9rg8Fp9Abbbaradfgra8Fa8Ea8Epmlvorlvorlvorlvorp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmwDqkwDqkwDqkwDqkp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmxmPsxmPsxmPsxmPsp9rg8Fp9Abbbaradfgra8Fa8Ka8NpmwDKYqk8AExm35Ps8E8Fg8Eaip:Rea8Ealp:Sep9qg8Ep9rg8Fp9Abbbaradfgra8Fa8Ea8Epmlvorlvorlvorlvorp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmwDqkwDqkwDqkwDqkp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmxmPsxmPsxmPsxmPsp9rg8Fp9Abbbaradfgra8Faga8JpmwKDYq8AkEx3m5P8Es8Fgga8La8MpmwKDYq8AkEx3m5P8Es8Fg8JpmbezHdiOAlvCXorQLg8Eaip:Rea8Ealp:Sep9qg8Ep9rg8Fp9Abbbaradfgra8Fa8Ea8Epmlvorlvorlvorlvorp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmwDqkwDqkwDqkwDqkp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmxmPsxmPsxmPsxmPsp9rg8Fp9Abbbaradfgra8Faga8JpmwDKYqk8AExm35Ps8E8Fg8Eaip:Rea8Ealp:Sep9qg8Ep9rg8Fp9Abbbaradfgra8Fa8Ea8Epmlvorlvorlvorlvorp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmwDqkwDqkwDqkwDqkp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmxmPsxmPsxmPsxmPsp9rg8Fp9AbbbaradfhraoczfgoaX6mbkkaYclfgYad6mbkaHavcjdfaAad2;8qbbavavcjdfaAcufad2fad;8qbbaAazfhzc9:hoaOhxaOmbxlkkaeTmbaDalfhrcbhocuhlinaralaD9RglfaD6mdaPaeao9RaoaPfae6Eaofgoae6mbkaial9Rhxkcbc99amax9RakSEhoxekc9:hokavcj;kbf8Kjjjjbaokwbz:bjjjbk:TseHu8Jjjjjbc;ae9Rgv8Kjjjjbc9:hodnaeci9UgrcHfal0mbcuhoaiRbbgwc;WeGc;Ge9hmbawcsGgDce0mbavc;abfcFecje;8kbavcUf9cu83ibavc8Wf9cu83ibavcyf9cu83ibavcaf9cu83ibavcKf9cu83ibavczf9cu83ibav9cu83iwav9cu83ibaialfc9WfhqaicefgwarfhldnaeTmbcmcsaDceSEhkcbhxcbhmcbhrcbhicbhoindnalaq9nmbc9:hoxikdndnawRbbgDc;Ve0mbavc;abfaoaDcu7gPcl4fcsGcitfgsydlhzasydbhHdndnaDcsGgsak9pmbavaiaPfcsGcdtfydbaxasEhDaxasTgOfhxxekdndnascsSmbcehOasc987asamffcefhDxekalcefhDal8SbbgscFeGhPdndnascu9mmbaDhlxekalcvfhlaPcFbGhPcrhsdninaD8SbbgOcFbGastaPVhPaOcu9kmeaDcefhDascrfgsc8J9hmbxdkkaDcefhlkcehOaPce4cbaPceG9R7amfhDkaDhmkavc;abfaocitfgsaDBdbasazBdlavaicdtfaDBdbavc;abfaocefcsGcitfgsaHBdbasaDBdlaocdfhoaOaifhidnadcd9hmbabarcetfgsaH87ebasclfaD87ebascdfaz87ebxdkabarcdtfgsaHBdbascwfaDBdbasclfazBdbxekdnaDcpe0mbaxcefgOavaiaqaDcsGfRbbgscl49RcsGcdtfydbascz6gPEhDavaias9RcsGcdtfydbaOaPfgzascsGgOEhsaOThOdndnadcd9hmbabarcetfgHax87ebaHclfas87ebaHcdfaD87ebxekabarcdtfgHaxBdbaHcwfasBdbaHclfaDBdbkavaicdtfaxBdbavc;abfaocitfgHaDBdbaHaxBdlavaicefgicsGcdtfaDBdbavc;abfaocefcsGcitfgHasBdbaHaDBdlavaiaPfgicsGcdtfasBdbavc;abfaocdfcsGcitfgDaxBdbaDasBdlaocifhoaiaOfhiazaOfhxxekaxcbalRbbgHEgAaDc;:eSgDfhzaHcsGhCaHcl4hXdndnaHcs0mbazcefhOxekazhOavaiaX9RcsGcdtfydbhzkdndnaCmbaOcefhxxekaOhxavaiaH9RcsGcdtfydbhOkdndnaDTmbalcefhDxekalcdfhDal8SbegPcFeGhsdnaPcu9kmbalcofhAascFbGhscrhldninaD8SbbgPcFbGaltasVhsaPcu9kmeaDcefhDalcrfglc8J9hmbkaAhDxekaDcefhDkasce4cbasceG9R7amfgmhAkdndnaXcsSmbaDhsxekaDcefhsaD8SbbglcFeGhPdnalcu9kmbaDcvfhzaPcFbGhPcrhldninas8SbbgDcFbGaltaPVhPaDcu9kmeascefhsalcrfglc8J9hmbkazhsxekascefhskaPce4cbaPceG9R7amfgmhzkdndnaCcsSmbashlxekascefhlas8SbbgDcFeGhPdnaDcu9kmbascvfhOaPcFbGhPcrhDdninal8SbbgscFbGaDtaPVhPascu9kmealcefhlaDcrfgDc8J9hmbkaOhlxekalcefhlkaPce4cbaPceG9R7amfgmhOkdndnadcd9hmbabarcetfgDaA87ebaDclfaO87ebaDcdfaz87ebxekabarcdtfgDaABdbaDcwfaOBdbaDclfazBdbkavc;abfaocitfgDazBdbaDaABdlavaicdtfaABdbavc;abfaocefcsGcitfgDaOBdbaDazBdlavaicefgicsGcdtfazBdbavc;abfaocdfcsGcitfgDaABdbaDaOBdlavaiaHcz6aXcsSVfgicsGcdtfaOBdbaiaCTaCcsSVfhiaocifhokawcefhwaocsGhoaicsGhiarcifgrae6mbkkcbc99alaqSEhokavc;aef8Kjjjjbaok:clevu8Jjjjjbcz9Rhvdnaecvfal9nmbc9:skdnaiRbbc;:eGc;qeSmbcuskav9cb83iwaicefhoaialfc98fhrdnaeTmbdnadcdSmbcbhwindnaoar6mbc9:skaocefhlao8SbbgicFeGhddndnaicu9mmbalhoxekaocvfhoadcFbGhdcrhidninal8SbbgDcFbGaitadVhdaDcu9kmealcefhlaicrfgic8J9hmbxdkkalcefhokabawcdtfadc8Etc8F91adcd47avcwfadceGcdtVglydbfgiBdbalaiBdbawcefgwae9hmbxdkkcbhwindnaoar6mbc9:skaocefhlao8SbbgicFeGhddndnaicu9mmbalhoxekaocvfhoadcFbGhdcrhidninal8SbbgDcFbGaitadVhdaDcu9kmealcefhlaicrfgic8J9hmbxdkkalcefhokabawcetfadc8Etc8F91adcd47avcwfadceGcdtVglydbfgi87ebalaiBdbawcefgwae9hmbkkcbc99aoarSEk:SPliuo97eue978Jjjjjbca9Rhiaec98Ghldndnadcl9hmbdnalTmbcbhvabhdinadadpbbbgocKp:RecKp:Sep;6egraocwp:RecKp:Sep;6earp;Geaoczp:RecKp:Sep;6egwp;Gep;Kep;LegDpxbbbbbbbbbbbbbbbbp:2egqarpxbbbjbbbjbbbjbbbjgkp9op9rp;Kegrpxbb;:9cbb;:9cbb;:9cbb;:9cararp;MeaDaDp;Meawaqawakp9op9rp;Kegrarp;Mep;Kep;Kep;Jep;Negwp;Mepxbbn0bbn0bbn0bbn0gqp;KepxFbbbFbbbFbbbFbbbp9oaopxbbbFbbbFbbbFbbbFp9op9qarawp;Meaqp;Kecwp:RepxbFbbbFbbbFbbbFbbp9op9qaDawp;Meaqp;Keczp:RepxbbFbbbFbbbFbbbFbp9op9qpkbbadczfhdavclfgval6mbkkalaeSmeaipxbbbbbbbbbbbbbbbbgqpklbaiabalcdtfgdaeciGglcdtgv;8qbbdnalTmbaiaipblbgocKp:RecKp:Sep;6egraocwp:RecKp:Sep;6earp;Geaoczp:RecKp:Sep;6egwp;Gep;Kep;LegDaqp:2egqarpxbbbjbbbjbbbjbbbjgkp9op9rp;Kegrpxbb;:9cbb;:9cbb;:9cbb;:9cararp;MeaDaDp;Meawaqawakp9op9rp;Kegrarp;Mep;Kep;Kep;Jep;Negwp;Mepxbbn0bbn0bbn0bbn0gqp;KepxFbbbFbbbFbbbFbbbp9oaopxbbbFbbbFbbbFbbbFp9op9qarawp;Meaqp;Kecwp:RepxbFbbbFbbbFbbbFbbp9op9qaDawp;Meaqp;Keczp:RepxbbFbbbFbbbFbbbFbp9op9qpklbkadaiav;8qbbskdnalTmbcbhvabhdinadczfgxaxpbbbgopxbbbbbbFFbbbbbbFFgkp9oadpbbbgDaopmbediwDqkzHOAKY8AEgwczp:Reczp:Sep;6egraDaopmlvorxmPsCXQL358E8FpxFubbFubbFubbFubbp9op;7eawczp:Sep;6egwp;Gearp;Gep;Kep;Legopxbbbbbbbbbbbbbbbbp:2egqarpxbbbjbbbjbbbjbbbjgmp9op9rp;Kegrpxb;:FSb;:FSb;:FSb;:FSararp;Meaoaop;Meawaqawamp9op9rp;Kegrarp;Mep;Kep;Kep;Jep;Negwp;Mepxbbn0bbn0bbn0bbn0gqp;KepxFFbbFFbbFFbbFFbbp9oaoawp;Meaqp;Keczp:Rep9qgoarawp;Meaqp;KepxFFbbFFbbFFbbFFbbp9ogrpmwDKYqk8AExm35Ps8E8Fp9qpkbbadaDakp9oaoarpmbezHdiOAlvCXorQLp9qpkbbadcafhdavclfgval6mbkkalaeSmbaiczfpxbbbbbbbbbbbbbbbbgopklbaiaopklbaiabalcitfgdaeciGglcitgv;8qbbdnalTmbaiaipblzgopxbbbbbbFFbbbbbbFFgkp9oaipblbgDaopmbediwDqkzHOAKY8AEgwczp:Reczp:Sep;6egraDaopmlvorxmPsCXQL358E8FpxFubbFubbFubbFubbp9op;7eawczp:Sep;6egwp;Gearp;Gep;Kep;Legopxbbbbbbbbbbbbbbbbp:2egqarpxbbbjbbbjbbbjbbbjgmp9op9rp;Kegrpxb;:FSb;:FSb;:FSb;:FSararp;Meaoaop;Meawaqawamp9op9rp;Kegrarp;Mep;Kep;Kep;Jep;Negwp;Mepxbbn0bbn0bbn0bbn0gqp;KepxFFbbFFbbFFbbFFbbp9oaoawp;Meaqp;Keczp:Rep9qgoarawp;Meaqp;KepxFFbbFFbbFFbbFFbbp9ogrpmwDKYqk8AExm35Ps8E8Fp9qpklzaiaDakp9oaoarpmbezHdiOAlvCXorQLp9qpklbkadaiav;8qbbkk:oDllue97euv978Jjjjjbc8W9Rhidnaec98GglTmbcbhvabhoinaiaopbbbgraoczfgwpbbbgDpmlvorxmPsCXQL358E8Fgqczp:Segkclp:RepklbaopxbbjZbbjZbbjZbbjZpx;Zl81Z;Zl81Z;Zl81Z;Zl81Zakpxibbbibbbibbbibbbp9qp;6ep;NegkaraDpmbediwDqkzHOAKY8AEgrczp:Reczp:Sep;6ep;MegDaDp;Meakarczp:Sep;6ep;Megxaxp;Meakaqczp:Reczp:Sep;6ep;Megqaqp;Mep;Kep;Kep;Lepxbbbbbbbbbbbbbbbbp:4ep;Jepxb;:FSb;:FSb;:FSb;:FSgkp;Mepxbbn0bbn0bbn0bbn0grp;KepxFFbbFFbbFFbbFFbbgmp9oaxakp;Mearp;Keczp:Rep9qgxaDakp;Mearp;Keamp9oaqakp;Mearp;Keczp:Rep9qgkpmbezHdiOAlvCXorQLgrp5baipblbpEb:T:j83ibaocwfarp5eaipblbpEe:T:j83ibawaxakpmwDKYqk8AExm35Ps8E8Fgkp5baipblbpEd:T:j83ibaocKfakp5eaipblbpEi:T:j83ibaocafhoavclfgval6mbkkdnalaeSmbaiczfpxbbbbbbbbbbbbbbbbgkpklbaiakpklbaiabalcitfgoaeciGgvcitgw;8qbbdnavTmbaiaipblbgraipblzgDpmlvorxmPsCXQL358E8Fgqczp:Segkclp:RepklaaipxbbjZbbjZbbjZbbjZpx;Zl81Z;Zl81Z;Zl81Z;Zl81Zakpxibbbibbbibbbibbbp9qp;6ep;NegkaraDpmbediwDqkzHOAKY8AEgrczp:Reczp:Sep;6ep;MegDaDp;Meakarczp:Sep;6ep;Megxaxp;Meakaqczp:Reczp:Sep;6ep;Megqaqp;Mep;Kep;Kep;Lepxbbbbbbbbbbbbbbbbp:4ep;Jepxb;:FSb;:FSb;:FSb;:FSgkp;Mepxbbn0bbn0bbn0bbn0grp;KepxFFbbFFbbFFbbFFbbgmp9oaxakp;Mearp;Keczp:Rep9qgxaDakp;Mearp;Keamp9oaqakp;Mearp;Keczp:Rep9qgkpmbezHdiOAlvCXorQLgrp5baipblapEb:T:j83ibaiarp5eaipblapEe:T:j83iwaiaxakpmwDKYqk8AExm35Ps8E8Fgkp5baipblapEd:T:j83izaiakp5eaipblapEi:T:j83iKkaoaiaw;8qbbkk;uddiue978Jjjjjbc;ab9Rhidnadcd4ae2glc98GgvTmbcbheabhdinadadpbbbgocwp:Recwp:Sep;6eaocep:SepxbbjFbbjFbbjFbbjFp9opxbbjZbbjZbbjZbbjZp:Uep;Mepkbbadczfhdaeclfgeav6mbkkdnavalSmbaic8WfpxbbbbbbbbbbbbbbbbgopklbaicafaopklbaiczfaopklbaiaopklbaiabavcdtfgdalciGgecdtgv;8qbbdnaeTmbaiaipblbgocwp:Recwp:Sep;6eaocep:SepxbbjFbbjFbbjFbbjFp9opxbbjZbbjZbbjZbbjZp:Uep;Mepklbkadaiav;8qbbkk9teiucbcbydj1jjbgeabcifc98GfgbBdj1jjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaikkkebcjwklz:Dbb",B=new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,3,2,0,0,5,3,1,0,1,12,1,0,10,22,2,12,0,65,0,65,0,65,0,252,10,0,0,11,7,0,65,0,253,15,26,11]),Y=new Uint8Array([32,0,65,2,1,106,34,33,3,128,11,4,13,64,6,253,10,7,15,116,127,5,8,12,40,16,19,54,20,9,27,255,113,17,42,67,24,23,146,148,18,14,22,45,70,69,56,114,101,21,25,63,75,136,108,28,118,29,73,115]);if(typeof WebAssembly!=="object")return{supported:!1};var J=WebAssembly.validate(B)?G(Q):G(A),C,X=WebAssembly.instantiate(J,{}).then(function(H){C=H.instance,C.exports.__wasm_call_ctors()});function G(H){var D=new Uint8Array(H.length);for(var L=0;L96?z-97:z>64?z-39:z+4}var M=0;for(var L=0;L0)return I(H,D,L,Z[z],W[M]);return X.then(function(){var N=new Uint8Array(H*D);return F(C,C.exports[Z[z]],N,H,D,L,C.exports[W[M]]),N})}}}();if(typeof BH==="object"&&typeof Kg==="object")Kg.exports=N3;else if(typeof define==="function"&&define.amd)define([],function(){return N3});else if(typeof BH==="object")BH.MeshoptDecoder=N3;else(typeof self<"u"?self:BH).MeshoptDecoder=N3});var NCA=R((YH,Vg)=>{var L3=function(){var A="b9H79Tebbbetm9Geueu9Geub9Gbb9Gsuuuuuuuuuuuu99uueu9Gvuuuuub9Gruuuuuuub9Gvuuuuue999Gvuuuuueu9Gquuuuuuu99uueu9Gwuuuuuu99ueu9Giuuue999Gluuuueu9GiuuueuiOHdilvorlwiDqkbxxbelve9Weiiviebeoweuec:G:Pdkr:Tewo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bbz9TW79O9V9Wt9F79P9T9W29P9M95br8E9TW79O9V9Wt9F79P9T9W29P9M959x9Pt9OcttV9P9I91tW7bwQ9TW79O9V9Wt9F79P9T9W29P9M959q9V9P9Ut7bDX9TW79O9V9Wt9F79P9T9W29P9M959t9J9H2Wbqa9TW79O9V9Wt9F9V9Wt9P9T9P96W9wWVtW94SWt9J9O9sW9T9H9Wbkl79IV9RbxDwebcekdzsq;B:xeHdbkM9Hi8Au8A99Au8Jjjjjbc;W;qb9Rgs8Kjjjjbcbhzascxfcbc;Kbz:ojjjb8AdnabaeSmbabaeadcdtz:njjjb8AkdndnamcdGmbascxfhHcbhOxekasalcrfci4gecbyd:m:jjjbHjjjjbbgABdxasceBd2aAcbaez:ojjjbhCcbhlcbhednadTmbcbhlabheadhAinaCaeydbgXci4fgQaQRbbgQceaXcrGgXtV86bbaQcu7aX4ceGalfhlaeclfheaAcufgAmbkcualcdtalcFFFFi0EhekascCfhHasaecbyd:m:jjjbHjjjjbbgOBdzascdBd2alcd4alfhXcehAinaAgecethAaeaX6mbkcdhzcbhLascuaecdtgAaecFFFFi0Ecbyd:m:jjjbHjjjjbbgXBdCasciBd2aXcFeaAz:ojjjbhKdnadTmbaecufhYcbh8AindndnaKabaLcdtfgEydbgQc:v;t;h;Ev2aYGgXcdtfgCydbgAcuSmbceheinaOaAcdtfydbaQSmdaXaefhAaecefheaKaAaYGgXcdtfgCydbgAcu9hmbkkaOa8AcdtfaQBdbaCa8ABdba8AhAa8Acefh8AkaEaABdbaLcefgLad9hmbkkaKcbyd1:jjjbH:bjjjbbascdBd2kcbh3aHcualcefgecdtaecFFFFi0Ecbyd:m:jjjbHjjjjbbg5Bdbasa5BdlasazceVgeBd2ascxfaecdtfcuadcitadcFFFFe0Ecbyd:m:jjjbHjjjjbbg8EBdbasa8EBdwasazcdfgeBd2asclfabadalcbz:cjjjbascxfaecdtfcualcdtgealcFFFFi0Eg8Fcbyd:m:jjjbHjjjjbbgABdbasazcifgXBd2ascxfaXcdtfa8Fcbyd:m:jjjbHjjjjbbgaBdbasazclVBd2aAaaaialavaOascxfz:djjjbalcbyd:m:jjjbHjjjjbbhCascxfasyd2ghcdtfaCBdbasahcefgXBd2ascxfaXcdtfa8Fcbyd:m:jjjbHjjjjbbgXBdbasahcdfgQBd2ascxfaQcdtfa8Fcbyd:m:jjjbHjjjjbbgQBdbasahcifggBd2aXcFeaez:ojjjbh8JaQcFeaez:ojjjbh8KdnalTmba8Ecwfh8Lindna5a3gQcefg3cdtfydbgKa5aQcdtgefydbgXSmbaKaX9Rhza8EaXcitfhHa8Kaefh8Ma8JaefhEcbhYindndnaHaYcitfydbg8AaQ9hmbaEaQBdba8MaQBdbxekdna5a8Acdtg8NfgeclfydbgXaeydbgeSmba8EaecitgKfydbaQSmeaXae9Rhyaecu7aXfhLa8LaKfhXcbheinaLaeSmeaecefheaXydbhKaXcwfhXaKaQ9hmbkaeay6meka8Ka8NfgeaQa8AaeydbcuSEBdbaEa8AaQaEydbcuSEBdbkaYcefgYaz9hmbkka3al9hmbkaAhXaahQa8KhKa8JhYcbheindndnaeaXydbg8A9hmbdnaeaQydbg8A9hmbaYydbh8AdnaKydbgLcu9hmba8Acu9hmbaCaefcb86bbxikaCaefhEdnaeaLSmbaea8ASmbaEce86bbxikaEcl86bbxdkdnaeaaa8AcdtgLfydb9hmbdnaKydbgEcuSmbaeaESmbaYydbgzcuSmbaeazSmba8KaLfydbgHcuSmbaHa8ASmba8JaLfydbgLcuSmbaLa8ASmbdnaAaEcdtfydbg8AaAaLcdtfydb9hmba8AaAazcdtfydbgLSmbaLaAaHcdtfydb9hmbaCaefcd86bbxlkaCaefcl86bbxikaCaefcl86bbxdkaCaefcl86bbxekaCaefaCa8AfRbb86bbkaXclfhXaQclfhQaKclfhKaYclfhYalaecefge9hmbkdnaqTmbdndnaOTmbaOheaAhXalhQindnaqaeydbfRbbTmbaCaXydbfcl86bbkaeclfheaXclfhXaQcufgQmbxdkkaAhealhXindnaqRbbTmbaCaeydbfcl86bbkaqcefhqaeclfheaXcufgXmbkkaAhealhQaChXindnaCaeydbfRbbcl9hmbaXcl86bbkaeclfheaXcefhXaQcufgQmbkkamceGTmbaChealhXindnaeRbbce9hmbaecl86bbkaecefheaXcufgXmbkkascxfagcdtfcualcx2alc;v:Q;v:Qe0Ecbyd:m:jjjbHjjjjbbg3BdbasahclfgHBd2a3aialavaOz:ejjjbh8PdndnaDmbcbhgcbh8Lxekcbh8LawhecbhXindnaeIdbJbbbb9ETmbasc;Wbfa8LcdtfaXBdba8Lcefh8LkaeclfheaDaXcefgX9hmbkascxfaHcdtfcua8Lal2gecdtaecFFFFi0Ecbyd:m:jjjbHjjjjbbggBdbasahcvfgHBd2alTmba8LTmbarcd4hEdnaOTmba8Lcdthzcbh8AaghLinaoaOa8AcdtfydbaE2cdtfhYasc;WbfheaLhXa8LhQinaXaYaeydbcdtgKfIdbawaKfIdbNUdbaeclfheaXclfhXaQcufgQmbkaLazfhLa8Acefg8Aal9hmbxdkka8Lcdthzcbh8AaghLinaoa8AaE2cdtfhYasc;WbfheaLhXa8LhQinaXaYaeydbcdtgKfIdbawaKfIdbNUdbaeclfheaXclfhXaQcufgQmbkaLazfhLa8Acefg8Aal9hmbkkascxfaHcdtfcualc8S2gealc;D;O;f8U0EgQcbyd:m:jjjbHjjjjbbgXBdbasaHcefgKBd2aXcbaez:ojjjbhqdndndna8LTmbascxfaKcdtfaQcbyd:m:jjjbHjjjjbbgvBdbasaHcdfgXBd2avcbaez:ojjjb8AascxfaXcdtfcua8Lal2gecltgXaecFFFFb0Ecbyd:m:jjjbHjjjjbbgiBdbasaHcifBd2aicbaXz:ojjjb8AadmexdkcbhvcbhiadTmekcbhYabhXindna3aXclfydbg8Acx2fgeIdba3aXydbgLcx2fgQIdbgI:tg8Ra3aXcwfydbgEcx2fgKIdlaQIdlg8S:tgRNaKIdbaI:tg8UaeIdla8S:tg8VN:tg8Wa8WNa8VaKIdwaQIdwg8X:tg8YNaRaeIdwa8X:tg8VN:tgRaRNa8Va8UNa8Ya8RN:tg8Ra8RNMM:rg8UJbbbb9ETmba8Wa8U:vh8Wa8Ra8U:vh8RaRa8U:vhRkaqaAaLcdtfydbc8S2fgeaRa8U:rg8UaRNNg8VaeIdbMUdbaea8Ra8Ua8RNg8ZNg8YaeIdlMUdlaea8Wa8Ua8WNg80Ng81aeIdwMUdwaea8ZaRNg8ZaeIdxMUdxaea80aRNgBaeIdzMUdzaea80a8RNg80aeIdCMUdCaeaRa8Ua8Wa8XNaRaINa8Sa8RNMM:mg8SNgINgRaeIdKMUdKaea8RaINg8RaeId3MUd3aea8WaINg8WaeIdaMUdaaeaIa8SNgIaeId8KMUd8Kaea8UaeIdyMUdyaqaAa8Acdtfydbc8S2fgea8VaeIdbMUdbaea8YaeIdlMUdlaea81aeIdwMUdwaea8ZaeIdxMUdxaeaBaeIdzMUdzaea80aeIdCMUdCaeaRaeIdKMUdKaea8RaeId3MUd3aea8WaeIdaMUdaaeaIaeId8KMUd8Kaea8UaeIdyMUdyaqaAaEcdtfydbc8S2fgea8VaeIdbMUdbaea8YaeIdlMUdlaea81aeIdwMUdwaea8ZaeIdxMUdxaeaBaeIdzMUdzaea80aeIdCMUdCaeaRaeIdKMUdKaea8RaeId3MUd3aea8WaeIdaMUdaaeaIaeId8KMUd8Kaea8UaeIdyMUdyaXcxfhXaYcifgYad6mbkcbhzabhLinabazcdtfh8AcbhXinaCa8AaXc;a1jjbfydbcdtfydbgQfRbbhedndnaCaLaXfydbgKfRbbgYc99fcFeGcpe0mbaec99fcFeGc;:e6mekdnaYcufcFeGce0mba8JaKcdtfydbaQ9hmekdnaecufcFeGce0mba8KaQcdtfydbaK9hmekdnaYcv2aefc:G1jjbfRbbTmbaAaQcdtfydbaAaKcdtfydb0mekJbbacJbbacJbbjZaecFeGceSEaYceSEh80dna3a8AaXc;e1jjbfydbcdtfydbcx2fgeIdwa3aKcx2fgYIdwg8S:tg8Wa3aQcx2fgEIdwa8S:tgRaRNaEIdbaYIdbg8X:tg8Ra8RNaEIdlaYIdlg8V:tg8Ua8UNMMgINa8WaRNaeIdba8X:tg81a8RNa8UaeIdla8V:tg8ZNMMg8YaRN:tg8Wa8WNa81aINa8Ya8RN:tgRaRNa8ZaINa8Ya8UN:tg8Ra8RNMM:rg8UJbbbb9ETmba8Wa8U:vh8Wa8Ra8U:vh8RaRa8U:vhRkaqaAaKcdtfydbc8S2fgeaRa80aI:rNg8UaRNNg8YaeIdbMUdbaea8Ra8Ua8RNg80Ng81aeIdlMUdlaea8Wa8Ua8WNgINg8ZaeIdwMUdwaea80aRNg80aeIdxMUdxaeaIaRNgBaeIdzMUdzaeaIa8RNg83aeIdCMUdCaeaRa8Ua8Wa8SNaRa8XNa8Va8RNMM:mg8SNgINgRaeIdKMUdKaea8RaINg8RaeId3MUd3aea8WaINg8WaeIdaMUdaaeaIa8SNgIaeId8KMUd8Kaea8UaeIdyMUdyaqaAaQcdtfydbc8S2fgea8YaeIdbMUdbaea81aeIdlMUdlaea8ZaeIdwMUdwaea80aeIdxMUdxaeaBaeIdzMUdzaea83aeIdCMUdCaeaRaeIdKMUdKaea8RaeId3MUd3aea8WaeIdaMUdaaeaIaeId8KMUd8Kaea8UaeIdyMUdykaXclfgXcx9hmbkaLcxfhLazcifgzad6mbka8LTmbcbhLinJbbbbh8Xa3abaLcdtfgeclfydbgEcx2fgXIdwa3aeydbgzcx2fgQIdwg8Z:tg8Ra8RNaXIdbaQIdbgB:tg8Wa8WNaXIdlaQIdlg83:tg8Ua8UNMMg80a3aecwfydbgHcx2fgeIdwa8Z:tgINa8Ra8RaINa8WaeIdbaB:tg8SNa8UaeIdla83:tg8VNMMgRN:tJbbbbJbbjZa80aIaINa8Sa8SNa8Va8VNMMg81NaRaRN:tg8Y:va8YJbbbb9BEg8YNhUa81a8RNaIaRN:ta8YNh85a80a8VNa8UaRN:ta8YNh86a81a8UNa8VaRN:ta8YNh87a80a8SNa8WaRN:ta8YNh88a81a8WNa8SaRN:ta8YNh89a8Wa8VNa8Sa8UN:tgRaRNa8UaINa8Va8RN:tgRaRNa8Ra8SNaIa8WN:tgRaRNMM:rJbbbZNhRagaza8L2gwcdtfhXagaHa8L2g8NcdtfhQagaEa8L2g5cdtfhKa8Z:mh8:a83:mhZaB:mhncbhYa8Lh8AJbbbbh8VJbbbbh8YJbbbbh80Jbbbbh81Jbbbbh8ZJbbbbhBJbbbbh83JbbbbhcJbbbbh9cinasc;WbfaYfgecwfaRa85aKIdbaXIdbgI:tg8UNaUaQIdbaI:tg8SNMg8RNUdbaeclfaRa87a8UNa86a8SNMg8WNUdbaeaRa89a8UNa88a8SNMg8UNUdbaecxfaRa8:a8RNaZa8WNaIana8UNMMMgINUdbaRa8Ra8WNNa81Mh81aRa8Ra8UNNa8ZMh8ZaRa8Wa8UNNaBMhBaRaIaINNa8XMh8XaRa8RaINNa8VMh8VaRa8WaINNa8YMh8YaRa8UaINNa80Mh80aRa8Ra8RNNa83Mh83aRa8Wa8WNNacMhcaRa8Ua8UNNa9cMh9caXclfhXaKclfhKaQclfhQaYczfhYa8Acufg8Ambkavazc8S2fgea9caeIdbMUdbaeacaeIdlMUdlaea83aeIdwMUdwaeaBaeIdxMUdxaea8ZaeIdzMUdzaea81aeIdCMUdCaea80aeIdKMUdKaea8YaeId3MUd3aea8VaeIdaMUdaaea8XaeId8KMUd8KaeaRaeIdyMUdyavaEc8S2fgea9caeIdbMUdbaeacaeIdlMUdlaea83aeIdwMUdwaeaBaeIdxMUdxaea8ZaeIdzMUdzaea81aeIdCMUdCaea80aeIdKMUdKaea8YaeId3MUd3aea8VaeIdaMUdaaea8XaeId8KMUd8KaeaRaeIdyMUdyavaHc8S2fgea9caeIdbMUdbaeacaeIdlMUdlaea83aeIdwMUdwaeaBaeIdxMUdxaea8ZaeIdzMUdzaea81aeIdCMUdCaea80aeIdKMUdKaea8YaeId3MUd3aea8VaeIdaMUdaaea8XaeId8KMUd8KaeaRaeIdyMUdyaiawcltfh8AcbhXa8LhKina8AaXfgeasc;WbfaXfgQIdbaeIdbMUdbaeclfgYaQclfIdbaYIdbMUdbaecwfgYaQcwfIdbaYIdbMUdbaecxfgeaQcxfIdbaeIdbMUdbaXczfhXaKcufgKmbkaia5cltfh8AcbhXa8LhKina8AaXfgeasc;WbfaXfgQIdbaeIdbMUdbaeclfgYaQclfIdbaYIdbMUdbaecwfgYaQcwfIdbaYIdbMUdbaecxfgeaQcxfIdbaeIdbMUdbaXczfhXaKcufgKmbkaia8Ncltfh8AcbhXa8LhKina8AaXfgeasc;WbfaXfgQIdbaeIdbMUdbaeclfgYaQclfIdbaYIdbMUdbaecwfgYaQcwfIdbaYIdbMUdbaecxfgeaQcxfIdbaeIdbMUdbaXczfhXaKcufgKmbkaLcifgLad6mbkkcbhQdndnamcwGgJmbJbbbbh8Vcbh9ecbhocbhhxekcbh9ea8Fcbyd:m:jjjbHjjjjbbhhascxfasyd2gecdtfahBdbasaecefgXBd2ascxfaXcdtfcuahalabadaAz:fjjjbgKcltaKcjjjjiGEcbyd:m:jjjbHjjjjbbgoBdbasaecdfBd2aoaKaha3alz:gjjjbJFFuuh8VaKTmbaoheaKhXinaeIdbgRa8Va8VaR9EEh8VaeclfheaXcufgXmbkaKh9ekasydlhTdnalTmbaTclfheaTydbhKaChXalhYcbhQincbaeydbg8AaK9RaXRbbcpeGEaQfhQaXcefhXaeclfhea8AhKaYcufgYmbkaQce4hQkcuadaQ9RcifgScx2aSc;v:Q;v:Qe0Ecbyd:m:jjjbHjjjjbbhDascxfasyd2g9hcdtfaDBdbasa9hcefgeBd2ascxfaecdtfcuaScdtaScFFFFi0Ecbyd:m:jjjbHjjjjbbgrBdbasa9hcdfgeBd2ascxfaecdtfa8Fcbyd:m:jjjbHjjjjbbgyBdbasa9hcifgeBd2ascxfaecdtfalcbyd:m:jjjbHjjjjbbg9iBdbasa9hclfg6Bd2axaxNa8PJbbjZamclGEgUaUN:vh9cJbbbbhcdnadak9nmbdnaSci6mba8Lclth9kaDcwfh0Jbbbbh83JbbbbhcinasclfabadalaAz:cjjjbabhzcbh8Ecbh8Finaba8FcdtfhHcbheindnaAazaefydbgQcdtgEfydbgYaAaHaec;q1jjbfydbcdtfydbgXcdtgwfydbg8ASmbaCaXfRbbgLcv2aCaQfRbbgKfc;G1jjbfRbbg5aKcv2aLfg8Nc;G1jjbfRbbg8MVcFeGTmbdna8AaY9nmba8Nc:G1jjbfRbbcFeGmekaKcufhYdnaKaL9hmbaYcFeGce0mba8JaEfydbaX9hmekdndnaKclSmbaLcl9hmekdnaYcFeGce0mba8JaEfydbaX9hmdkaLcufcFeGce0mba8KawfydbaQ9hmekaDa8Ecx2fgKaXaQa8McFeGgYEBdlaKaQaXaYEBdbaKaYa5Gcb9hBdwa8Ecefh8Ekaeclfgecx9hmbkdna8Fcifg8Fad9pmbazcxfhza8EcifaS9nmekka8ETmdcbhLinaqaAaDaLcx2fgKydbgYcdtgzfydbc8S2fgeIdwa3aKydlg8Acx2fgXIdwg8WNaeIdzaXIdbg8UNaeIdaMgRaRMMa8WNaeIdlaXIdlgINaeIdCa8WNaeId3MgRaRMMaINaeIdba8UNaeIdxaINaeIdKMgRaRMMa8UNaeId8KMMM:lhRJbbbbJbbjZaeIdyg8R:va8RJbbbb9BEh8RdndnaKydwgEmbJFFuuh8YxekJbbbbJbbjZaqaAa8Acdtfydbc8S2fgeIdyg8S:va8SJbbbb9BEaeIdwa3aYcx2fgXIdwg8SNaeIdzaXIdbg8XNaeIdaMg8Ya8YMMa8SNaeIdlaXIdlg8YNaeIdCa8SNaeId3Mg8Sa8SMMa8YNaeIdba8XNaeIdxa8YNaeIdKMg8Sa8SMMa8XNaeId8KMMM:lNh8Yka8RaRNh80dna8LTmbavaYc8S2fgQIdwa8WNaQIdza8UNaQIdaMgRaRMMa8WNaQIdlaINaQIdCa8WNaQId3MgRaRMMaINaQIdba8UNaQIdxaINaQIdKMgRaRMMa8UNaQId8KMMMhRaga8Aa8L2gHcdtfhXaiaYa8L2gwcltfheaQIdyh8Sa8LhQinaXIdbg8Ra8Ra8SNaecxfIdba8WaecwfIdbNa8UaeIdbNaIaeclfIdbNMMMg8Ra8RM:tNaRMhRaXclfhXaeczfheaQcufgQmbkdndnaEmbJbbbbh8Rxekava8Ac8S2fgQIdwa3aYcx2fgeIdwg8UNaQIdzaeIdbgINaQIdaMg8Ra8RMMa8UNaQIdlaeIdlg8SNaQIdCa8UNaQId3Mg8Ra8RMMa8SNaQIdbaINaQIdxa8SNaQIdKMg8Ra8RMMaINaQId8KMMMh8RagawcdtfhXaiaHcltfheaQIdyh8Xa8LhQinaXIdbg8Wa8Wa8XNaecxfIdba8UaecwfIdbNaIaeIdbNa8SaeclfIdbNMMMg8Wa8WM:tNa8RMh8RaXclfhXaeczfheaQcufgQmbka8R:lh8Rka80aR:lMh80a8Ya8RMh8YaCaYfRbbcd9hmbdna8Ka8Ja8Jazfydba8ASEaaazfydbgHcdtfydbgzcu9hmbaaa8AcdtfydbhzkavaHc8S2fgQIdwa3azcx2fgeIdwg8WNaQIdzaeIdbg8UNaQIdaMgRaRMMa8WNaQIdlaeIdlgINaQIdCa8WNaQId3MgRaRMMaINaQIdba8UNaQIdxaINaQIdKMgRaRMMa8UNaQId8KMMMhRagaza8L2gwcdtfhXaiaHa8L2g8NcltfheaQIdyh8Sa8LhQinaXIdbg8Ra8Ra8SNaecxfIdba8WaecwfIdbNa8UaeIdbNaIaeclfIdbNMMMg8Ra8RM:tNaRMhRaXclfhXaeczfheaQcufgQmbkdndnaEmbJbbbbh8Rxekavazc8S2fgQIdwa3aHcx2fgeIdwg8UNaQIdzaeIdbgINaQIdaMg8Ra8RMMa8UNaQIdlaeIdlg8SNaQIdCa8UNaQId3Mg8Ra8RMMa8SNaQIdbaINaQIdxa8SNaQIdKMg8Ra8RMMaINaQId8KMMMh8Raga8NcdtfhXaiawcltfheaQIdyh8Xa8LhQinaXIdbg8Wa8Wa8XNaecxfIdba8UaecwfIdbNaIaeIdbNa8SaeclfIdbNMMMg8Wa8WM:tNa8RMh8RaXclfhXaeczfheaQcufgQmbka8R:lh8Rka80aR:lMh80a8Ya8RMh8YkaKa80a8Ya80a8Y9FgeEUdwaKa8AaYaeaETVgeEBdlaKaYa8AaeEBdbaLcefgLa8E9hmbkasc;Wbfcbcj;qbz:ojjjb8Aa0hea8EhXinasc;WbfaeydbcA4cF8FGgQcFAaQcFA6EcdtfgQaQydbcefBdbaecxfheaXcufgXmbkcbhecbhXinasc;WbfaefgQydbhKaQaXBdbaKaXfhXaeclfgecj;qb9hmbkcbhea0hXinasc;WbfaXydbcA4cF8FGgQcFAaQcFA6EcdtfgQaQydbgQcefBdbaraQcdtfaeBdbaXcxfhXa8Eaecefge9hmbkadak9RgQci9Uh9mdnalTmbcbheayhXinaXaeBdbaXclfhXalaecefge9hmbkkcbh9na9icbalz:ojjjbh8FaQcO9Uh9oa9mce4h9pasydwh9qcbh8Mcbh5dninaDara5cdtfydbcx2fg8NIdwgRa9c9Emea8Ma9m9pmeJFFuuh8Rdna9pa8E9pmbaDara9pcdtfydbcx2fIdwJbb;aZNh8RkdnaRa8R9ETmbaRac9ETmba8Ma9o0mdkdna8FaAa8NydlgHcdtg9rfydbgKfg9sRbba8FaAa8Nydbgzcdtg9tfydbgefg9uRbbVmbaCazfRbbh9vdnaTaecdtfgXclfydbgQaXydbgXSmbaQaX9RhYa3aKcx2fhLa3aecx2fhEa9qaXcitfhecbhXcehwdnindnayaeydbcdtfydbgQaKSmbayaeclfydbcdtfydbg8AaKSmbaQa8ASmba3a8Acx2fg8AIdba3aQcx2fgQIdbg8W:tgRaEIdlaQIdlg8U:tg8XNaEIdba8W:tg8Ya8AIdla8U:tg8RN:tgIaRaLIdla8U:tg80NaLIdba8W:tg81a8RN:tg8UNa8RaEIdwaQIdwg8S:tg8ZNa8Xa8AIdwa8S:tg8WN:tg8Xa8RaLIdwa8S:tgBNa80a8WN:tg8RNa8Wa8YNa8ZaRN:tg8Sa8Wa81NaBaRN:tgRNMMaIaINa8Xa8XNa8Sa8SNMMa8Ua8UNa8Ra8RNaRaRNMMN:rJbbj8:N9FmdkaecwfheaXcefgXaY6hwaYaX9hmbkkawceGTmba9pcefh9pxekdndndndna9vc9:fPdebdkazheinayaecdtgefaHBdbaaaefydbgeaz9hmbxikkdna8Ka8Ja8Ja9tfydbaHSEaaa9tfydbgzcdtfydbgecu9hmbaaa9rfydbhekaya9tfaHBdbaehHkayazcdtfaHBdbka9uce86bba9sce86bba8NIdwgRacacaR9DEhca9ncefh9ncecda9vceSEa8Mfh8Mka5cefg5a8E9hmbkka9nTmddnalTmbcbh8AcbhEindnayaEcdtgefydbgQaESmbaAaQcdtfydbhzdnaEaAaefydb9hgHmbaqazc8S2fgeaqaEc8S2fgXIdbaeIdbMUdbaeaXIdlaeIdlMUdlaeaXIdwaeIdwMUdwaeaXIdxaeIdxMUdxaeaXIdzaeIdzMUdzaeaXIdCaeIdCMUdCaeaXIdKaeIdKMUdKaeaXId3aeId3MUd3aeaXIdaaeIdaMUdaaeaXId8KaeId8KMUd8KaeaXIdyaeIdyMUdyka8LTmbavaQc8S2fgeavaEc8S2gwfgXIdbaeIdbMUdbaeaXIdlaeIdlMUdlaeaXIdwaeIdwMUdwaeaXIdxaeIdxMUdxaeaXIdzaeIdzMUdzaeaXIdCaeIdCMUdCaeaXIdKaeIdKMUdKaeaXId3aeId3MUd3aeaXIdaaeIdaMUdaaeaXId8KaeId8KMUd8KaeaXIdyaeIdyMUdya9kaQ2hLaihXa8LhKinaXaLfgeaXa8AfgQIdbaeIdbMUdbaeclfgYaQclfIdbaYIdbMUdbaecwfgYaQcwfIdbaYIdbMUdbaecxfgeaQcxfIdbaeIdbMUdbaXczfhXaKcufgKmbkaHmbJbbbbJbbjZaqawfgeIdygR:vaRJbbbb9BEaeIdwa3azcx2fgXIdwgRNaeIdzaXIdbg8RNaeIdaMg8Wa8WMMaRNaeIdlaXIdlg8WNaeIdCaRNaeId3MgRaRMMa8WNaeIdba8RNaeIdxa8WNaeIdKMgRaRMMa8RNaeId8KMMM:lNgRa83a83aR9DEh83ka8Aa9kfh8AaEcefgEal9hmbkcbhXa8JheindnaeydbgQcuSmbdnaXayaQcdtgKfydbgQ9hmbcuhQa8JaKfydbgKcuSmbayaKcdtfydbhQkaeaQBdbkaeclfhealaXcefgX9hmbkcbhXa8KheindnaeydbgQcuSmbdnaXayaQcdtgKfydbgQ9hmbcuhQa8KaKfydbgKcuSmbayaKcdtfydbhQkaeaQBdbkaeclfhealaXcefgX9hmbkka83aca8LEh83cbhKabhecbhYindnayaeydbcdtfydbgXayaeclfydbcdtfydbgQSmbaXayaecwfydbcdtfydbg8ASmbaQa8ASmbabaKcdtfgLaXBdbaLcwfa8ABdbaLclfaQBdbaKcifhKkaecxfheaYcifgYad6mbkdndnaJTmbaKak9nmba8Va839FTmbcbhdabhecbhXindnaoahaeydbgQcdtfydbcdtfIdba839ETmbabadcdtfgYaQBdbaYclfaeclfydbBdbaYcwfaecwfydbBdbadcifhdkaecxfheaXcifgXaK6mbkJFFuuh8Va9eTmeaohea9ehXJFFuuhRinaeIdbg8RaRaRa8R9EEg8WaRa8Ra839EgQEhRa8Wa8VaQEh8VaeclfheaXcufgXmbxdkkaKhdkadak0mbxdkkasclfabadalaAz:cjjjbkdndnadak0mbadhXxekdnaJmbadhXxekdna8Va9c9FmbadhXxekina8VJbb;aZNgRa9caRa9c9DEh8WJbbbbhRdna9eTmbaohea9ehAinaeIdbg8RaRa8Ra8W9FEaRa8RaR9EEhRaeclfheaAcufgAmbkkcbhXabhecbhAindnaoahaeydbgQcdtfydbcdtfIdba8W9ETmbabaXcdtfgKaQBdbaKclfaeclfydbBdbaKcwfaecwfydbBdbaXcifhXkaecxfheaAcifgAad6mbkJFFuuh8Vdna9eTmbaohea9ehAJFFuuh8RinaeIdbg8Ua8Ra8Ra8U9EEgIa8Ra8Ua8W9EgQEh8RaIa8VaQEh8VaeclfheaAcufgAmbkkdnaXad9hmbadhXxdkaRacacaR9DEhcaXak9nmeaXhda8Va9c9FmbkkdnamcjjjjlGTmbaOmbaXTmbcbh8AabheinaCaeydbgKfRbbc3thLaecwfgEydbhAdndna8JaKcdtgHfydbaeclfgzydbgQSmbcbhYa8KaQcdtfydbaK9hmekcjjjj94hYkaeaLaYVaKVBdbaCaQfRbbc3thLdndna8JaQcdtfydbaASmbcbhYa8KaAcdtfydbaQ9hmekcjjjj94hYkazaLaYVaQVBdbaCaAfRbbc3thYdndna8JaAcdtfydbaKSmbcbhQa8KaHfydbaA9hmekcjjjj94hQkaEaYaQVaAVBdbaecxfhea8Acifg8AaX6mbkkdnaOTmbaXTmbaXheinabaOabydbcdtfydbBdbabclfhbaecufgembkkdnaPTmbaPaUac:rNUdbka9hcdtascxffcxfhednina6Tmeaeydbcbyd1:jjjbH:bjjjbbaec98fhea6cufh6xbkkasc;W;qbf8KjjjjbaXk;Yieouabydlhvabydbclfcbaicdtz:ojjjbhoadci9UhrdnadTmbdnalTmbaehwadhDinaoalawydbcdtfydbcdtfgqaqydbcefBdbawclfhwaDcufgDmbxdkkaehwadhDinaoawydbcdtfgqaqydbcefBdbawclfhwaDcufgDmbkkdnaiTmbcbhDaohwinawydbhqawaDBdbawclfhwaqaDfhDaicufgimbkkdnadci6mbinaecwfydbhwaeclfydbhDaeydbhidnalTmbalawcdtfydbhwalaDcdtfydbhDalaicdtfydbhikavaoaicdtfgqydbcitfaDBdbavaqydbcitfawBdlaqaqydbcefBdbavaoaDcdtfgqydbcitfawBdbavaqydbcitfaiBdlaqaqydbcefBdbavaoawcdtfgwydbcitfaiBdbavawydbcitfaDBdlawawydbcefBdbaecxfhearcufgrmbkkabydbcbBdbk:todDue99aicd4aifhrcehwinawgDcethwaDar6mbkcuaDcdtgraDcFFFFi0Ecbyd:m:jjjbHjjjjbbhwaoaoyd9GgqcefBd9GaoaqcdtfawBdbawcFearz:ojjjbhkdnaiTmbalcd4hlaDcufhxcbhminamhDdnavTmbavamcdtfydbhDkcbadaDal2cdtfgDydlgwawcjjjj94SEgwcH4aw7c:F:b:DD2cbaDydbgwawcjjjj94SEgwcH4aw7c;D;O:B8J27cbaDydwgDaDcjjjj94SEgDcH4aD7c:3F;N8N27axGhwamcdthPdndndnavTmbakawcdtfgrydbgDcuSmeadavaPfydbal2cdtfgsIdbhzcehqinaqhrdnadavaDcdtfydbal2cdtfgqIdbaz9CmbaqIdlasIdl9CmbaqIdwasIdw9BmlkarcefhqakawarfaxGgwcdtfgrydbgDcu9hmbxdkkakawcdtfgrydbgDcuSmbadamal2cdtfgsIdbhzcehqinaqhrdnadaDal2cdtfgqIdbaz9CmbaqIdlasIdl9CmbaqIdwasIdw9BmikarcefhqakawarfaxGgwcdtfgrydbgDcu9hmbkkaramBdbamhDkabaPfaDBdbamcefgmai9hmbkkakcbyd1:jjjbH:bjjjbbaoaoyd9GcufBd9GdnaeTmbaiTmbcbhDaehwinawaDBdbawclfhwaiaDcefgD9hmbkcbhDaehwindnaDabydbgrSmbawaearcdtfgrydbBdbaraDBdbkawclfhwabclfhbaiaDcefgD9hmbkkk;Qodvuv998Jjjjjbca9Rgvczfcwfcbyd11jjbBdbavcb8Pdj1jjb83izavcwfcbydN1jjbBdbavcb8Pd:m1jjb83ibdnadTmbaicd4hodnabmbdnalTmbcbhrinaealarcdtfydbao2cdtfhwcbhiinavczfaifgDawaifIdbgqaDIdbgkakaq9EEUdbavaifgDaqaDIdbgkakaq9DEUdbaiclfgicx9hmbkarcefgrad9hmbxikkaocdthrcbhwincbhiinavczfaifgDaeaifIdbgqaDIdbgkakaq9EEUdbavaifgDaqaDIdbgkakaq9DEUdbaiclfgicx9hmbkaearfheawcefgwad9hmbxdkkdnalTmbcbhrinabarcx2fgiaealarcdtfydbao2cdtfgwIdbUdbaiawIdlUdlaiawIdwUdwcbhiinavczfaifgDawaifIdbgqaDIdbgkakaq9EEUdbavaifgDaqaDIdbgkakaq9DEUdbaiclfgicx9hmbkarcefgrad9hmbxdkkaocdthlcbhraehwinabarcx2fgiaearao2cdtfgDIdbUdbaiaDIdlUdlaiaDIdwUdwcbhiinavczfaifgDawaifIdbgqaDIdbgkakaq9EEUdbavaifgDaqaDIdbgkakaq9DEUdbaiclfgicx9hmbkawalfhwarcefgrad9hmbkkJbbbbavIdbavIdzgk:tgqaqJbbbb9DEgqavIdlavIdCgx:tgmamaq9DEgqavIdwavIdKgm:tgPaPaq9DEhPdnabTmbadTmbJbbbbJbbjZaP:vaPJbbbb9BEhqinabaqabIdbak:tNUdbabclfgvaqavIdbax:tNUdbabcwfgvaqavIdbam:tNUdbabcxfhbadcufgdmbkkaPk:ZlewudnaeTmbcbhvabhoinaoavBdbaoclfhoaeavcefgv9hmbkkdnaiTmbcbhrinadarcdtfhwcbhDinalawaDcdtgvc;a1jjbfydbcdtfydbcdtfydbhodnabalawavfydbcdtfydbgqcdtfgkydbgvaqSmbinakabavgqcdtfgxydbgvBdbaxhkaqav9hmbkkdnabaocdtfgkydbgvaoSmbinakabavgocdtfgxydbgvBdbaxhkaoav9hmbkkdnaqaoSmbabaqaoaqao0Ecdtfaqaoaqao6EBdbkaDcefgDci9hmbkarcifgrai6mbkkdnaembcbskcbhxindnalaxcdtgvfydbax9hmbaxhodnabavfgDydbgvaxSmbaDhqinaqabavgocdtfgkydbgvBdbakhqaoav9hmbkkaDaoBdbkaxcefgxae9hmbkcbhvabhocbhkindndnavalydbgq9hmbdnavaoydbgq9hmbaoakBdbakcefhkxdkaoabaqcdtfydbBdbxekaoabaqcdtfydbBdbkaoclfhoalclfhlaeavcefgv9hmbkakk;Jiilud99duabcbaecltz:ojjjbhvdnalTmbadhoaihralhwinarcwfIdbhDarclfIdbhqavaoydbcltfgkarIdbakIdbMUdbakclfgxaqaxIdbMUdbakcwfgxaDaxIdbMUdbakcxfgkakIdbJbbjZMUdbaoclfhoarcxfhrawcufgwmbkkdnaeTmbavhraehkinarcxfgoIdbhDaocbBdbararIdbJbbbbJbbjZaD:vaDJbbbb9BEgDNUdbarclfgoaDaoIdbNUdbarcwfgoaDaoIdbNUdbarczfhrakcufgkmbkkdnalTmbinavadydbcltfgrcxfgkaicwfIdbarcwfIdb:tgDaDNaiIdbarIdb:tgDaDNaiclfIdbarclfIdb:tgDaDNMMgDakIdbgqaqaD9DEUdbadclfhdaicxfhialcufglmbkkdnaeTmbavcxfhrinabarIdbUdbarczfhrabclfhbaecufgembkkk8MbabaeadaialavcbcbcbcbcbaoarawaDz:bjjjbk8MbabaeadaialavaoarawaDaqakaxamaPz:bjjjbk:DCoDud99rue99iul998Jjjjjbc;Wb9Rgw8KjjjjbdndnarmbcbhDxekawcxfcbc;Kbz:ojjjb8Aawcuadcx2adc;v:Q;v:Qe0Ecbyd:m:jjjbHjjjjbbgqBdxawceBd2aqaeadaicbz:ejjjb8AawcuadcdtadcFFFFi0Egkcbyd:m:jjjbHjjjjbbgxBdzawcdBd2adcd4adfhmceheinaegicetheaiam6mbkcbhPawcuaicdtgsaicFFFFi0Ecbyd:m:jjjbHjjjjbbgzBdCawciBd2dndnar:ZgH:rJbbbZMgO:lJbbb9p9DTmbaO:Ohexekcjjjj94hekaicufhAc:bwhmcbhCadhXcbhQinaChLaeamgKcufaeaK9iEaPgDcefaeaD9kEhYdndnadTmbaYcuf:YhOaqhiaxheadhmindndnaiIdbaONJbbbZMg8A:lJbbb9p9DTmba8A:OhCxekcjjjj94hCkaCcCthCdndnaiclfIdbaONJbbbZMg8A:lJbbb9p9DTmba8A:OhExekcjjjj94hEkaEcqtaCVhCdndnaicwfIdbaONJbbbZMg8A:lJbbb9p9DTmba8A:OhExekcjjjj94hEkaeaCaEVBdbaicxfhiaeclfheamcufgmmbkazcFeasz:ojjjbh3cbh5cbhPindna3axaPcdtfydbgCcm4aC7c:v;t;h;Ev2gics4ai7aAGgmcdtfgEydbgecuSmbaeaCSmbcehiina3amaifaAGgmcdtfgEydbgecuSmeaicefhiaeaC9hmbkkaEaCBdba5aecuSfh5aPcefgPad9hmbxdkkazcFeasz:ojjjb8Acbh5kaDaYa5ar0giEhPaLa5aiEhCdna5arSmbaYaKaiEgmaP9Rcd9imbdndnaQcl0mbdnaX:ZgOaL:Zg8A:taY:Yg8EaD:Y:tg8Fa8EaK:Y:tgaa5:ZghaH:tNNNaOaH:taaNa8Aah:tNa8AaH:ta8FNahaO:tNM:va8EMJbbbZMgO:lJbbb9p9DTmbaO:Ohexdkcjjjj94hexekaPamfcd9Theka5aXaiEhXaQcefgQcs9hmekkdndnaCmbcihicbhDxekcbhiawakcbyd:m:jjjbHjjjjbbg5BdKawclBd2aPcuf:Yh8AdndnadTmbaqhiaxheadhmindndnaiIdba8ANJbbbZMgO:lJbbb9p9DTmbaO:OhCxekcjjjj94hCkaCcCthCdndnaiclfIdba8ANJbbbZMgO:lJbbb9p9DTmbaO:OhExekcjjjj94hEkaEcqtaCVhCdndnaicwfIdba8ANJbbbZMgO:lJbbb9p9DTmbaO:OhExekcjjjj94hEkaeaCaEVBdbaicxfhiaeclfheamcufgmmbkazcFeasz:ojjjbh3cbhDcbhYindndndna3axaYcdtgKfydbgCcm4aC7c:v;t;h;Ev2gics4ai7aAGgmcdtfgEydbgecuSmbcehiinaxaecdtgefydbaCSmdamaifheaicefhia3aeaAGgmcdtfgEydbgecu9hmbkkaEaYBdbaDhiaDcefhDxeka5aefydbhika5aKfaiBdbaYcefgYad9hmbkcuaDc32giaDc;j:KM;jb0EhexekazcFeasz:ojjjb8AcbhDcbhekawaecbyd:m:jjjbHjjjjbbgeBd3awcvBd2aecbaiz:ojjjbhEavcd4hKdnadTmbdnalTmbaKcdth3a5hCaqhealhmadhAinaEaCydbc32fgiaeIdbaiIdbMUdbaiaeclfIdbaiIdlMUdlaiaecwfIdbaiIdwMUdwaiamIdbaiIdxMUdxaiamclfIdbaiIdzMUdzaiamcwfIdbaiIdCMUdCaiaiIdKJbbjZMUdKaCclfhCaecxfheama3fhmaAcufgAmbxdkka5hmaqheadhCinaEamydbc32fgiaeIdbaiIdbMUdbaiaeclfIdbaiIdlMUdlaiaecwfIdbaiIdwMUdwaiaiIdxJbbbbMUdxaiaiIdzJbbbbMUdzaiaiIdCJbbbbMUdCaiaiIdKJbbjZMUdKamclfhmaecxfheaCcufgCmbkkdnaDTmbaEhiaDheinaiaiIdbJbbbbJbbjZaicKfIdbgO:vaOJbbbb9BEgONUdbaiclfgmaOamIdbNUdbaicwfgmaOamIdbNUdbaicxfgmaOamIdbNUdbaiczfgmaOamIdbNUdbaicCfgmaOamIdbNUdbaic3fhiaecufgembkkcbhCawcuaDcdtgYaDcFFFFi0Egicbyd:m:jjjbHjjjjbbgeBdaawcoBd2awaicbyd:m:jjjbHjjjjbbg3Bd8KaecFeaYz:ojjjbhxdnadTmbJbbjZJbbjZa8A:vaPceSEaoNgOaONh8AaKcdthPalheina8Aaec;81jjbalEgmIdwaEa5ydbgAc32fgiIdC:tgOaONamIdbaiIdx:tgOaONamIdlaiIdz:tgOaONMMNaqcwfIdbaiIdw:tgOaONaqIdbaiIdb:tgOaONaqclfIdbaiIdl:tgOaONMMMhOdndnaxaAcdtgifgmydbcuSmba3aifIdbaO9ETmekamaCBdba3aifaOUdbka5clfh5aqcxfhqaeaPfheadaCcefgC9hmbkkabaxaYz:njjjb8AcrhikaicdthiinaiTmeaic98fgiawcxffydbcbyd1:jjjbH:bjjjbbxbkkawc;Wbf8KjjjjbaDk:Ydidui99ducbhi8Jjjjjbca9Rglczfcwfcbyd11jjbBdbalcb8Pdj1jjb83izalcwfcbydN1jjbBdbalcb8Pd:m1jjb83ibdndnaembJbbjFhvJbbjFhoJbbjFhrxekadcd4cdthwincbhdinalczfadfgDabadfIdbgvaDIdbgoaoav9EEUdbaladfgDavaDIdbgoaoav9DEUdbadclfgdcx9hmbkabawfhbaicefgiae9hmbkalIdwalIdK:thralIdlalIdC:thoalIdbalIdz:thvkJbbbbavavJbbbb9DEgvaoaoav9DEgvararav9DEk9DeeuabcFeaicdtz:ojjjbhlcbhbdnadTmbindnalaeydbcdtfgiydbcu9hmbaiabBdbabcefhbkaeclfheadcufgdmbkkabk9teiucbcbyd:q:jjjbgeabcifc98GfgbBd:q:jjjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik;teeeudndnaeabVciGTmbabhixekdndnadcz9pmbabhixekabhiinaiaeydbBdbaiaeydlBdlaiaeydwBdwaiaeydxBdxaeczfheaiczfhiadc9Wfgdcs0mbkkadcl6mbinaiaeydbBdbaeclfheaiclfhiadc98fgdci0mbkkdnadTmbinaiaeRbb86bbaicefhiaecefheadcufgdmbkkabk:3eedudndnabciGTmbabhixekaecFeGc:b:c:ew2hldndnadcz9pmbabhixekabhiinaialBdxaialBdwaialBdlaialBdbaiczfhiadc9Wfgdcs0mbkkadcl6mbinaialBdbaiclfhiadc98fgdci0mbkkdnadTmbinaiae86bbaicefhiadcufgdmbkkabk9teiucbcbyd:q:jjjbgeabcrfc94GfgbBd:q:jjjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik9:eiuZbhedndncbyd:q:jjjbgdaecztgi9nmbcuheadai9RcFFifcz4nbcuSmekadhekcbabae9Rcifc98Gcbyd:q:jjjbfgdBd:q:jjjbdnadZbcztge9nmbadae9RcFFifcz4nb8Akkk:Iedbcjwk1eFFuuFFuuFFuuFFuFFFuFFFuFbbbbbbbbeeebeebebbeeebebbbbbebebbbbbbbbbebbbdbbbbbbbebbbebbbdbbbbbbbbbbbeeeeebebbebbebebbbeebbbbbbbbbbbbbbbbbbbbbc1Dkxebbbdbbb:GNbb",Q=new Uint8Array([32,0,65,2,1,106,34,33,3,128,11,4,13,64,6,253,10,7,15,116,127,5,8,12,40,16,19,54,20,9,27,255,113,17,42,67,24,23,146,148,18,14,22,45,70,69,56,114,101,21,25,63,75,136,108,28,118,29,73,115]);if(typeof WebAssembly!=="object")return{supported:!1};var B,Y=WebAssembly.instantiate(J(A),{}).then(function(K){B=K.instance,B.exports.__wasm_call_ctors()});function J(K){var I=new Uint8Array(K.length);for(var V=0;V96?H-97:H>64?H-39:H+4}var D=0;for(var V=0;V=3),C(H>=0&&H<=K.length),C(H%3==0),C(D>=0);var z=0;for(var M=0;M<(L?L.length:0);++M)C(L[M]in E),z|=E[L[M]];var N=K.BYTES_PER_ELEMENT==4?K:new Uint32Array(K),q=W(B.exports.meshopt_simplify,N,K.length,I,I.length/V,V*4,H,D,z);return q[0]=K instanceof Uint32Array?q[0]:new K.constructor(q[0]),q},simplifyWithAttributes:function(K,I,V,H,D,L,z,M,N,q){C(K instanceof Uint32Array||K instanceof Int32Array||K instanceof Uint16Array||K instanceof Int16Array),C(K.length%3==0),C(I instanceof Float32Array),C(I.length%V==0),C(V>=3),C(H instanceof Float32Array),C(H.length%D==0),C(D>=0),C(z==null||z instanceof Uint8Array),C(z==null||z.length==I.length/V),C(M>=0&&M<=K.length),C(M%3==0),C(N>=0),C(Array.isArray(L)),C(D>=L.length),C(L.length<=32);for(var w=0;w=0);var P=0;for(var w=0;w<(q?q.length:0);++w)C(q[w]in E),P|=E[q[w]];var _=K.BYTES_PER_ELEMENT==4?K:new Uint32Array(K),O=Z(B.exports.meshopt_simplifyWithAttributes,_,K.length,I,I.length/V,V*4,H,D*4,new Float32Array(L),z?new Uint8Array(z):null,M,N,P);return O[0]=K instanceof Uint32Array?O[0]:new K.constructor(O[0]),O},getScale:function(K,I){return C(K instanceof Float32Array),C(K.length%I==0),C(I>=3),U(B.exports.meshopt_simplifyScale,K,K.length/I,I*4)},simplifyPoints:function(K,I,V,H,D,L){if(C(K instanceof Float32Array),C(K.length%I==0),C(I>=3),C(V>=0&&V<=K.length/I),H)return C(H instanceof Float32Array),C(H.length%D==0),C(D>=3),C(K.length/I==H.length/D),$(B.exports.meshopt_simplifyPoints,K,K.length/I,I*4,H,D*4,L,V);else return $(B.exports.meshopt_simplifyPoints,K,K.length/I,I*4,void 0,0,0,V)}}}();if(typeof YH==="object"&&typeof Vg==="object")Vg.exports=L3;else if(typeof define==="function"&&define.amd)define([],function(){return L3});else if(typeof YH==="object")YH.MeshoptSimplifier=L3;else(typeof self<"u"?self:YH).MeshoptSimplifier=L3});var LCA=R((JH,Ig)=>{var q3=function(){var A="b9H79TebbbeVx9Geueu9Geub9Gbb9Giuuueu9Gmuuuuuuuuuuu9999eu9Gvuuuuueu9Gwuuuuuuuub9Gxuuuuuuuuuuuueu9Gkuuuuuuuuuu99eu9Gouuuuuub9Gruuuuuuub9GluuuubiOHdilvorwDqqkbiibeilve9Weiiviebeoweuec;G:Odkr:Yewo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bb8A9TW79O9V9Wt9F9I919P29K9nW79O2Wt79c9V919U9KbeX9TW79O9V9Wt9F9I919P29K9nW79O2Wt7bo39TW79O9V9Wt9F9J9V9T9W91tWJ2917tWV9c9V919U9K7br39TW79O9V9Wt9F9J9V9T9W91tW9nW79O2Wt9c9V919U9K7bDL9TW79O9V9Wt9F9V9Wt9P9T9P96W9nW79O2Wtbql79IV9RbkDwebcekdsPq;Q9BHdbkIbabaec9:fgefcufae9Ugeabci9Uadfcufad9Ugbaeab0Ek:w8KDPue99eux99dui99euo99iu8Jjjjjbc:WD9Rgm8KjjjjbdndnalmbcbhPxekamc:Cwfcbc;Kbz:njjjb8Adndnalcb9imbaoal9nmbamcuaocdtaocFFFFi0Egscbyd;y1jjbHjjjjbbgzBd:CwamceBd;8wamascbyd;y1jjbHjjjjbbgHBd:GwamcdBd;8wamcualcdtalcFFFFi0Ecbyd;y1jjbHjjjjbbgOBd:KwamciBd;8waihsalhAinazasydbcdtfcbBdbasclfhsaAcufgAmbkaihsalhAinazasydbcdtfgCaCydbcefBdbasclfhsaAcufgAmbkaihsalhCcbhXindnazasydbcdtgQfgAydbcb9imbaHaQfaXBdbaAaAydbgQcjjjj94VBdbaQaXfhXkasclfhsaCcufgCmbkalci9UhLdnalci6mbcbhsaihAinaAcwfydbhCaAclfydbhXaHaAydbcdtfgQaQydbgQcefBdbaOaQcdtfasBdbaHaXcdtfgXaXydbgXcefBdbaOaXcdtfasBdbaHaCcdtfgCaCydbgCcefBdbaOaCcdtfasBdbaAcxfhAaLascefgs9hmbkkaihsalhAindnazasydbcdtgCfgXydbgQcu9kmbaXaQcFFFFrGgQBdbaHaCfgCaCydbaQ9RBdbkasclfhsaAcufgAmbxdkkamcuaocdtgsaocFFFFi0EgAcbyd;y1jjbHjjjjbbgzBd:CwamceBd;8wamaAcbyd;y1jjbHjjjjbbgHBd:GwamcdBd;8wamcualcdtalcFFFFi0Ecbyd;y1jjbHjjjjbbgOBd:KwamciBd;8wazcbasz:njjjbhXalci9UhLaihsalhAinaXasydbcdtfgCaCydbcefBdbasclfhsaAcufgAmbkdnaoTmbcbhsaHhAaXhCaohQinaAasBdbaAclfhAaCydbasfhsaCclfhCaQcufgQmbkkdnalci6mbcbhsaihAinaAcwfydbhCaAclfydbhQaHaAydbcdtfgKaKydbgKcefBdbaOaKcdtfasBdbaHaQcdtfgQaQydbgQcefBdbaOaQcdtfasBdbaHaCcdtfgCaCydbgCcefBdbaOaCcdtfasBdbaAcxfhAaLascefgs9hmbkkaoTmbcbhsaohAinaHasfgCaCydbaXasfydb9RBdbasclfhsaAcufgAmbkkamaLcbyd;y1jjbHjjjjbbgsBd:OwamclBd;8wascbaLz:njjjbhYamcuaLcK2alcjjjjd0Ecbyd;y1jjbHjjjjbbg8ABd:SwamcvBd;8wJbbbbhEdnalci6g3mbarcd4hKaihAa8AhsaLhrJbbbbh5inavaAclfydbaK2cdtfgCIdlh8EavaAydbaK2cdtfgXIdlhEavaAcwfydbaK2cdtfgQIdlh8FaCIdwhaaXIdwhhaQIdwhgasaCIdbg8JaXIdbg8KMaQIdbg8LMJbbnn:vUdbasclfaXIdlaCIdlMaQIdlMJbbnn:vUdbaQIdwh8MaCIdwh8NaXIdwhyascxfa8EaE:tg8Eagah:tggNa8FaE:tg8Faaah:tgaN:tgEJbbbbJbbjZa8Ja8K:tg8Ja8FNa8La8K:tg8Ka8EN:tghahNaEaENaaa8KNaga8JN:tgEaENMM:rg8K:va8KJbbbb9BEg8ENUdbasczfaEa8ENUdbascCfaha8ENUdbascwfa8Maya8NMMJbbnn:vUdba5a8KMh5aAcxfhAascKfhsarcufgrmbka5aL:Z:vJbbbZNhEkamcuaLcdtalcFFFF970Ecbyd;y1jjbHjjjjbbgCBd:WwamcoBd;8waEaq:ZNhEdna3mbcbhsaChAinaAasBdbaAclfhAaLascefgs9hmbkkaE:rhhcuh8PamcuaLcltalcFFFFd0Ecbyd;y1jjbHjjjjbbgIBd:0wamcrBd;8wcbaIa8AaCaLz:djjjb8AJFFuuhyJFFuuh8RJFFuuh8Sdnalci6gXmbJFFuuh8Sa8AhsaLhAJFFuuh8RJFFuuhyinascwfIdbgEayayaE9EEhyasclfIdbgEa8Ra8RaE9EEh8RasIdbgEa8Sa8SaE9EEh8SascKfhsaAcufgAmbkkahJbbbZNhgamaocetgscuaocu9kEcbyd;y1jjbHjjjjbbgABd:4waAcFeasz:njjjbhCdnaXmbcbhAJFFuuhEa8Ahscuh8PinascwfIdbay:tghahNasIdba8S:tghahNasclfIdba8R:tghahNMM:rghaEa8PcuSahaE9DVgXEhEaAa8PaXEh8PascKfhsaLaAcefgA9hmbkkamczfcbcjwz:njjjb8Aamcwf9cb83ibam9cb83ibagaxNhRJbbjZak:th8Ncbh8UJbbbbh8VJbbbbh8WJbbbbh8XJbbbbh8YJbbbbh8ZJbbbbh80cbh81cbhPinJbbbbhEdna8UTmbJbbjZa8U:Z:vhEkJbbbbhhdna80a80Na8Ya8YNa8Za8ZNMMg8KJbbbb9BmbJbbjZa8K:r:vhhka8XaENh5a8WaENh8Fa8VaENhaa8PhQdndndndndna8UaPVTmbamydwgBTmea80ahNh8Ja8ZahNh8La8YahNh8Maeamydbcdtfh83cbh3JFFuuhEcvhXcuhQindnaza83a3cdtfydbcdtgsfydbgvTmbaOaHasfydbcdtfhAindndnaCaiaAydbgKcx2fgsclfydbgrcetf8Vebcs4aCasydbgLcetf8Vebcs4faCascwfydbglcetf8Vebcs4fgombcbhsxekcehsazaLcdtfydbgLceSmbcehsazarcdtfydbgrceSmbcehsazalcdtfydbglceSmbdnarcdSaLcdSfalcdSfcd6mbaocefhsxekaocdfhskdnasaX9kmba8AaKcK2fgLIdwa5:thhaLIdla8F:th8KaLIdbaa:th8EdndnakJbbbb9DTmba8E:lg8Ea8K:lg8Ka8Ea8K9EEg8Kah:lgha8Kah9EEag:vJbbjZMhhxekahahNa8Ea8ENa8Ka8KNMM:rag:va8NNJbbjZMJ9VO:d86JbbjZaLIdCa8JNaLIdxa8MNa8LaLIdzNMMakN:tghahJ9VO:d869DENhhkaKaQasaX6ahaE9DVgLEhQasaXaLEhXahaEaLEhEkaAclfhAavcufgvmbkka3cefg3aB9hmbkkaQcu9hmekama5Ud:ODama8FUd:KDamaaUd:GDamcuBd:qDamcFFF;7rBdjDaIcba8AaYamc:GDfakJbbbb9Damc:qDfamcjDfz:ejjjbamyd:qDhQdndnaxJbbbb9ETmba8UaD6mbaQcuSmeceh3amIdjDaR9EmixdkaQcu9hmekdna8UTmbdnamydlgza8Uci2fgsciGTmbadasfcba8Uazcu7fciGcefz:njjjb8AkabaPcltfgzam8Pib83dbazcwfamcwf8Pib83dbaPcefhPkc3hzinazc98Smvamc:Cwfazfydbcbyd;u1jjbH:bjjjbbazc98fhzxbkkcbh3a8Uaq9pmbamydwaCaiaQcx2fgsydbcetf8Vebcs4aCascwfydbcetf8Vebcs4faCasclfydbcetf8Vebcs4ffaw9nmekcbhscbhAdna81TmbcbhAamczfhXinamczfaAcdtfaXydbgLBdbaXclfhXaAaYaLfRbbTfhAa81cufg81mbkkamydwhlamydbhXam9cu83i:GDam9cu83i:ODam9cu83i:qDam9cu83i:yDaAc;8eaAclfc:bd6Eh81inamcjDfasfcFFF;7rBdbasclfgscz9hmbka81cdthBdnalTmbaeaXcdtfhocbhrindnazaoarcdtfydbcdtgsfydbgvTmbaOaHasfydbcdtfhAcuhLcuhsinazaiaAydbgKcx2fgXclfydbcdtfydbazaXydbcdtfydbfazaXcwfydbcdtfydbfgXasaXas6gXEhsaKaLaXEhLaAclfhAavcufgvmbkaLcuSmba8AaLcK2fgAIdway:tgEaENaAIdba8S:tgEaENaAIdla8R:tgEaENMM:rhEcbhAindndnasamc:qDfaAfgvydbgX6mbasaX9hmeaEamcjDfaAfIdb9FTmekavasBdbamc:GDfaAfaLBdbamcjDfaAfaEUdbxdkaAclfgAcz9hmbkkarcefgral9hmbkkamczfaBfhLcbhscbhAindnamc:GDfasfydbgXcuSmbaLaAcdtfaXBdbaAcefhAkasclfgscz9hmbkaAa81fg81TmbJFFuuhhcuhKamczfhsa81hvcuhLina8AasydbgXcK2fgAIdway:tgEaENaAIdba8S:tgEaENaAIdla8R:tgEaENMM:rhEdndnazaiaXcx2fgAclfydbcdtfydbazaAydbcdtfydbfazaAcwfydbcdtfydbfgAaL6mbaAaL9hmeaEah9DTmekaEhhaAhLaXhKkasclfhsavcufgvmbkaKcuSmbaKhQkdnamaiaQcx2fgrydbarclfydbarcwfydbaCabaeadaPawaqa3z:fjjjbTmbaPcefhPJbbbbh8VJbbbbh8WJbbbbh8XJbbbbh8YJbbbbh8ZJbbbbh80kcbhXinaOaHaraXcdtfydbcdtgAfydbcdtfgKhsazaAfgvydbgLhAdnaLTmbdninasydbaQSmeasclfhsaAcufgATmdxbkkasaKaLcdtfc98fydbBdbavavydbcufBdbkaXcefgXci9hmbka8AaQcK2fgsIdbhEasIdlhhasIdwh8KasIdxh8EasIdzh5asIdCh8FaYaQfce86bba80a8FMh80a8Za5Mh8Za8Ya8EMh8Ya8Xa8KMh8Xa8WahMh8Wa8VaEMh8Vamydxh8Uxbkkamc:WDf8KjjjjbaPk;Vvivuv99lu8Jjjjjbca9Rgv8Kjjjjbdndnalcw0mbaiydbhoaeabcitfgralcdtcufBdlaraoBdbdnalcd6mbaiclfhoalcufhwarcxfhrinaoydbhDarcuBdbarc98faDBdbarcwfhraoclfhoawcufgwmbkkalabfhrxekcbhDavczfcwfcbBdbav9cb83izavcwfcbBdbav9cb83ibJbbjZhqJbbjZhkinadaiaDcdtfydbcK2fhwcbhrinavczfarfgoawarfIdbgxaoIdbgm:tgPakNamMgmUdbavarfgoaPaxam:tNaoIdbMUdbarclfgrcx9hmbkJbbjZaqJbbjZMgq:vhkaDcefgDal9hmbkcbhoadcbcecdavIdlgxavIdwgm9GEgravIdbgPam9GEaraPax9GEgscdtgrfhzavczfarfIdbhxaihralhwinaiaocdtfgDydbhHaDarydbgOBdbaraHBdbarclfhraoazaOcK2fIdbax9Dfhoawcufgwmbkaeabcitfhrdndnaocv6mbaoalc98f6mekaraiydbBdbaralcdtcufBdlaiclfhoalcufhwarcxfhrinaoydbhDarcuBdbarc98faDBdbarcwfhraoclfhoawcufgwmbkalabfhrxekaraxUdbararydlc98GasVBdlabcefaeadaiaoz:djjjbhwararydlciGawabcu7fcdtVBdlawaeadaiaocdtfalao9Rz:djjjbhrkavcaf8Kjjjjbark:;idiud99dndnabaecitfgwydlgDciGgqciSmbinabcbaDcd4gDalaqcdtfIdbawIdb:tgkJbbbb9FEgwaecefgefadaialavaoarz:ejjjbak:larIdb9FTmdabawaD7aefgecitfgwydlgDciGgqci9hmbkkabaecitfgeclfhbdnavmbcuhwindnaiaeydbgDfRbbmbadaDcK2fgqIdwalIdw:tgkakNaqIdbalIdb:tgkakNaqIdlalIdl:tgkakNMM:rgkarIdb9DTmbarakUdbaoaDBdbkaecwfheawcefgwabydbcd46mbxdkkcuhwindnaiaeydbgDfRbbmbadaDcK2fgqIdbalIdb:t:lgkaqIdlalIdl:t:lgxakax9EEgkaqIdwalIdw:t:lgxakax9EEgkarIdb9DTmbarakUdbaoaDBdbkaecwfheawcefgwabydbcd46mbkkk;llevudnabydwgxaladcetfgm8Vebcs4alaecetfgP8Vebgscs4falaicetfgz8Vebcs4ffaD0abydxaq9pVakVgDce9hmbavawcltfgxab8Pdb83dbaxcwfabcwfgx8Pdb83dbdnaxydbgqTmbaoabydbcdtfhxaqhsinalaxydbcetfcFFi87ebaxclfhxascufgsmbkkdnabydxglci2gsabydlgxfgkciGTmbarakfcbalaxcu7fciGcefz:njjjb8Aabydxci2hsabydlhxabydwhqkab9cb83dwababydbaqfBdbabascifc98GaxfBdlaP8Vebhscbhxkdnascztcz91cu9kmbabaxcefBdwaPax87ebaoabydbcdtfaxcdtfaeBdbkdnam8Uebcu9kmbababydwgxcefBdwamax87ebaoabydbcdtfaxcdtfadBdbkdnaz8Uebcu9kmbababydwgxcefBdwazax87ebaoabydbcdtfaxcdtfaiBdbkarabydlfabydxci2faPRbb86bbarabydlfabydxci2fcefamRbb86bbarabydlfabydxci2fcdfazRbb86bbababydxcefBdxaDk8LbabaeadaialavaoarawaDaDaqJbbbbz:cjjjbk;Nkovud99euv99eul998Jjjjjbc:W;ae9Rgo8KjjjjbdndnadTmbavcd4hrcbhwcbhDindnaiaeclfydbar2cdtfgvIdbaiaeydbar2cdtfgqIdbgk:tgxaiaecwfydbar2cdtfgmIdlaqIdlgP:tgsNamIdbak:tgzavIdlaP:tgPN:tgkakNaPamIdwaqIdwgH:tgONasavIdwaH:tgHN:tgPaPNaHazNaOaxN:tgxaxNMM:rgsJbbbb9Bmbaoc:W:qefawcx2fgAakas:vUdwaAaxas:vUdlaAaPas:vUdbaoc8Wfawc8K2fgAaq8Pdb83dbaAav8Pdb83dxaAam8Pdb83dKaAcwfaqcwfydbBdbaAcCfavcwfydbBdbaAcafamcwfydbBdbawcefhwkaecxfheaDcifgDad6mbkab9cb83dbabcyf9cb83dbabcaf9cb83dbabcKf9cb83dbabczf9cb83dbabcwf9cb83dbawTmeaocbBd8Sao9cb83iKao9cb83izaoczfaoc8Wfawci2cxaoc8Sfcbcrz1jjjbaoIdKhCaoIdChXaoIdzhQao9cb83iwao9cb83ibaoaoc:W:qefawcxaoc8Sfcbciz1jjjbJbbjZhkaoIdwgPJbbbbJbbjZaPaPNaoIdbgPaPNaoIdlgsasNMM:rgx:vaxJbbbb9BEgzNhxasazNhsaPazNhzaoc:W:qefheawhvinaecwfIdbaxNaeIdbazNasaeclfIdbNMMgPakaPak9DEhkaecxfheavcufgvmbkabaCUdwabaXUdlabaQUdbabaoId3UdxdndnakJ;n;m;m899FmbJbbbbhPaoc:W:qefheaoc8WfhvinaCavcwfIdb:taecwfIdbgHNaQavIdb:taeIdbgONaXavclfIdb:taeclfIdbgLNMMaxaHNazaONasaLNMM:vgHaPaHaP9EEhPavc8KfhvaecxfheawcufgwmbkabaxUd8KabasUdaabazUd3abaCaxaPN:tUdKabaXasaPN:tUdCabaQazaPN:tUdzabJbbjZakakN:t:rgkUdydndnaxJbbj:;axJbbj:;9GEgPJbbjZaPJbbjZ9FEJbb;:9cNJbbbZJbbb:;axJbbbb9GEMgP:lJbbb9p9DTmbaP:Ohexekcjjjj94hekabae86b8UdndnasJbbj:;asJbbj:;9GEgPJbbjZaPJbbjZ9FEJbb;:9cNJbbbZJbbb:;asJbbbb9GEMgP:lJbbb9p9DTmbaP:Ohvxekcjjjj94hvkabav86bRdndnazJbbj:;azJbbj:;9GEgPJbbjZaPJbbjZ9FEJbb;:9cNJbbbZJbbb:;azJbbbb9GEMgP:lJbbb9p9DTmbaP:Ohqxekcjjjj94hqkabaq86b8SdndnaecKtcK91:YJbb;:9c:vax:t:lavcKtcK91:YJbb;:9c:vas:t:laqcKtcK91:YJbb;:9c:vaz:t:lakMMMJbb;:9cNJbbjZMgk:lJbbb9p9DTmbak:Ohexekcjjjj94hekaecFbaecFb9iEhexekabcjjj;8iBdycFbhekabae86b8Vxekab9cb83dbabcyf9cb83dbabcaf9cb83dbabcKf9cb83dbabczf9cb83dbabcwf9cb83dbkaoc:W;aef8Kjjjjbk;Iwwvul99iud99eue99eul998Jjjjjbcje9Rgr8Kjjjjbavcd4hwaicd4hDdndnaoTmbarc;abfcbaocdtgvz:njjjb8Aarc;Gbfcbavz:njjjb8AarhvarcafhiaohqinavcFFF97BdbaicFFF;7rBdbaiclfhiavclfhvaqcufgqmbkdnadTmbcbhkinaeakaD2cdtfgvIdwhxavIdlhmavIdbhPalakaw2cdtfIdbhsarc;abfhzarhiarc;GbfhHarcafhqcj1jjbhvaohOinasavcwfIdbaxNavIdbaPNavclfIdbamNMMgAMhCakhXdnaAas:tgAaqIdbgQ9DgLmbaHydbhXkaHaXBdbakhXdnaCaiIdbgK9EmbazydbhXaKhCkazaXBdbaiaCUdbaqaAaQaLEUdbavcxfhvaqclfhqaHclfhHaiclfhiazclfhzaOcufgOmbkakcefgkad9hmbkkadThkJbbbbhCcbhXarc;abfhvarc;Gbfhicbhqinalavydbgzaw2cdtfIdbalaiydbgHaw2cdtfIdbaeazaD2cdtfgzIdwaeaHaD2cdtfgHIdw:tgsasNazIdbaHIdb:tgsasNazIdlaHIdl:tgsasNMM:rMMgsaCasaC9EgzEhCaqaXazEhXaiclfhiavclfhvaoaqcefgq9hmbkaCJbbbZNhKxekadThkcbhXJbbbbhKkJbbbbhCdnaearc;abfaXcdtgifydbgqaD2cdtfgvIdwaearc;GbfaifydbgzaD2cdtfgiIdwgm:tgsasNavIdbaiIdbgY:tgAaANavIdlaiIdlgP:tgQaQNMM:rgxJbbbb9ETmbaxalaqaw2cdtfIdbMalazaw2cdtfIdb:taxaxM:vhCkasaCNamMhmaQaCNaPMhPaAaCNaYMhYdnakmbaDcdthvawcdthiindnalIdbg8AaecwfIdbam:tgCaCNaeIdbaY:tgsasNaeclfIdbaP:tgAaANMM:rgQMgEaK9ETmbJbbbbhxdnaQJbbbb9ETmbaEaK:taQaQM:vhxkaxaCNamMhmaxaANaPMhPaxasNaYMhYa8AaKaQMMJbbbZNhKkaeavfhealaifhladcufgdmbkkabaKUdxabamUdwabaPUdlabaYUdbarcjef8Kjjjjbkjeeiu8Jjjjjbcj8W9Rgr8Kjjjjbaici2hwdnaiTmbawceawce0EhDarhiinaiaeadRbbcdtfydbBdbadcefhdaiclfhiaDcufgDmbkkabarawaladaoz:hjjjbarcj8Wf8Kjjjjbk:3lequ8JjjjjbcjP9Rgl8Kjjjjbcbhvalcjxfcbaiz:njjjb8AdndnadTmbcjehoaehrincuhwarhDcuhqavhkdninawakaoalcjxfaDcefRbbfRbb9RcFeGci6aoalcjxfaDRbbfRbb9RcFeGci6faoalcjxfaDcdfRbbfRbb9RcFeGci6fgxaq9mgmEhwdnammbaxce0mdkaxaqaxaq9kEhqaDcifhDadakcefgk9hmbkkaeawci2fgDcdfRbbhqaDcefRbbhxaDRbbhkaeavci2fgDcifaDawav9Rci2z:qjjjb8Aakalcjxffaocefgo86bbaxalcjxffao86bbaDcdfaq86bbaDcefax86bbaDak86bbaqalcjxffao86bbarcifhravcefgvad9hmbkalcFeaicetz:njjjbhoadci2gDceaDce0EhqcbhxindnaoaeRbbgkcetfgw8UebgDcu9kmbawax87ebaocjlfaxcdtfabakcdtfydbBdbaxhDaxcefhxkaeaD86bbaecefheaqcufgqmbkaxcdthDxekcbhDkabalcjlfaDz:mjjjb8AalcjPf8Kjjjjbk9teiucbcbyd;C1jjbgeabcifc98GfgbBd;C1jjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik;teeeudndnaeabVciGTmbabhixekdndnadcz9pmbabhixekabhiinaiaeydbBdbaiaeydlBdlaiaeydwBdwaiaeydxBdxaeczfheaiczfhiadc9Wfgdcs0mbkkadcl6mbinaiaeydbBdbaeclfheaiclfhiadc98fgdci0mbkkdnadTmbinaiaeRbb86bbaicefhiaecefheadcufgdmbkkabk:3eedudndnabciGTmbabhixekaecFeGc:b:c:ew2hldndnadcz9pmbabhixekabhiinaialBdxaialBdwaialBdlaialBdbaiczfhiadc9Wfgdcs0mbkkadcl6mbinaialBdbaiclfhiadc98fgdci0mbkkdnadTmbinaiae86bbaicefhiadcufgdmbkkabk9teiucbcbyd;C1jjbgeabcrfc94GfgbBd;C1jjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik9:eiuZbhedndncbyd;C1jjbgdaecztgi9nmbcuheadai9RcFFifcz4nbcuSmekadhekcbabae9Rcifc98Gcbyd;C1jjbfgdBd;C1jjbdnadZbcztge9nmbadae9RcFFifcz4nb8Akk:;Deludndndnadch9pmbabaeSmdaeabadfgi9Rcbadcet9R0mekabaead;8qbbxekaeab7ciGhldndndnabae9pmbdnalTmbadhvabhixikdnabciGmbadhvabhixdkadTmiabaeRbb86bbadcufhvdnabcefgiciGmbaecefhexdkavTmiabaeRbe86beadc9:fhvdnabcdfgiciGmbaecdfhexdkavTmiabaeRbd86bdadc99fhvdnabcifgiciGmbaecifhexdkavTmiabaeRbi86biabclfhiaeclfheadc98fhvxekdnalmbdnaiciGTmbadTmlabadcufgifglaeaifRbb86bbdnalciGmbaihdxekaiTmlabadc9:fgifglaeaifRbb86bbdnalciGmbaihdxekaiTmlabadc99fgifglaeaifRbb86bbdnalciGmbaihdxekaiTmlabadc98fgdfaeadfRbb86bbkadcl6mbdnadc98fgocd4cefciGgiTmbaec98fhlabc98fhvinavadfaladfydbBdbadc98fhdaicufgimbkkaocx6mbaec9Wfhvabc9WfhoinaoadfgicxfavadfglcxfydbBdbaicwfalcwfydbBdbaiclfalclfydbBdbaialydbBdbadc9Wfgdci0mbkkadTmdadhidnadciGglTmbaecufhvabcufhoadhiinaoaifavaifRbb86bbaicufhialcufglmbkkadcl6mdaec98fhlabc98fhvinavaifgecifalaifgdcifRbb86bbaecdfadcdfRbb86bbaecefadcefRbb86bbaeadRbb86bbaic98fgimbxikkavcl6mbdnavc98fglcd4cefcrGgdTmbavadcdt9RhvinaiaeydbBdbaeclfheaiclfhiadcufgdmbkkalc36mbinaiaeydbBdbaiaeydlBdlaiaeydwBdwaiaeydxBdxaiaeydzBdzaiaeydCBdCaiaeydKBdKaiaeyd3Bd3aecafheaicafhiavc9Gfgvci0mbkkavTmbdndnavcrGgdmbavhlxekavc94GhlinaiaeRbb86bbaicefhiaecefheadcufgdmbkkavcw6mbinaiaeRbb86bbaiaeRbe86beaiaeRbd86bdaiaeRbi86biaiaeRbl86blaiaeRbv86bvaiaeRbo86boaiaeRbr86braicwfhiaecwfhealc94fglmbkkabkk9Tdbcjwk9ubbjZbbbbbbbbbbbbbbjZbbbbbbbbbbbbbbjZ86;nAZ86;nAZ86;nAZ86;nA:;86;nAZ86;nAZ86;nAZ86;nA:;86;nAZ86;nAZ86;nAZ86;nA:;bc;uwkxebbbdbbb9GNbb",Q=new Uint8Array([32,0,65,2,1,106,34,33,3,128,11,4,13,64,6,253,10,7,15,116,127,5,8,12,40,16,19,54,20,9,27,255,113,17,42,67,24,23,146,148,18,14,22,45,70,69,56,114,101,21,25,63,75,136,108,28,118,29,73,115]);if(typeof WebAssembly!=="object")return{supported:!1};var B,Y=WebAssembly.instantiate(J(A),{}).then(function(K){B=K.instance,B.exports.__wasm_call_ctors()});function J(K){var I=new Uint8Array(K.length);for(var V=0;V96?H-97:H>64?H-39:H+4}var D=0;for(var V=0;V=3),C(H<=256||H>0),C(D<=512),C(D%4==0),L=L||0;var z=K.BYTES_PER_ELEMENT==4?K:new Uint32Array(K);return Z(z,I,I.length/V,V*4,H,D,L)},computeClusterBounds:function(K,I,V){C(K.length%3==0),C(K.length/3<=512),C(I instanceof Float32Array),C(I.length%V==0),C(V>=3);var H=K.BYTES_PER_ELEMENT==4?K:new Uint32Array(K);return E(H,I,I.length/V,V*4)},computeMeshletBounds:function(K,I,V){return C(K.meshletCount!=0),C(I instanceof Float32Array),C(I.length%V==0),C(V>=3),$(K,I,I.length/V,V*4)},extractMeshlet:function(K,I){return C(I>=0&&I{var IsQ=HCA(),HsQ=DCA(),DsQ=NCA(),NsQ=LCA();qCA.exports={MeshoptEncoder:IsQ,MeshoptDecoder:HsQ,MeshoptSimplifier:DsQ,MeshoptClusterizer:NsQ}});var qg=R((ssQ)=>{function psQ(A,Q,B,C){var J=0,C=C===void 0?{}:C,X=C.loop===void 0?null:C.loop,G=C.palette===void 0?null:C.palette;if(Q<=0||B<=0||Q>65535||B>65535)throw Error("Width/Height invalid.");function F(V){var H=V.length;if(H<2||H>256||H&H-1)throw Error("Invalid code/color length, must be power of 2 and 2 .. 256.");return H}A[J++]=71,A[J++]=73,A[J++]=70,A[J++]=56,A[J++]=57,A[J++]=97;var W=0,Z=0;if(G!==null){var U=F(G);while(U>>=1)++W;if(U=1<=U)throw Error("Background index out of range.");if(Z===0)throw Error("Background index explicitly passed as 0.")}}if(A[J++]=Q&255,A[J++]=Q>>8&255,A[J++]=B&255,A[J++]=B>>8&255,A[J++]=(G!==null?128:0)|W,A[J++]=Z,A[J++]=0,G!==null)for(var $=0,E=G.length;$>16&255,A[J++]=K>>8&255,A[J++]=K&255}if(X!==null){if(X<0||X>65535)throw Error("Loop count invalid.");A[J++]=33,A[J++]=255,A[J++]=11,A[J++]=78,A[J++]=69,A[J++]=84,A[J++]=83,A[J++]=67,A[J++]=65,A[J++]=80,A[J++]=69,A[J++]=50,A[J++]=46,A[J++]=48,A[J++]=3,A[J++]=1,A[J++]=X&255,A[J++]=X>>8&255,A[J++]=0}var I=!1;this.addFrame=function(V,H,D,L,z,M){if(I===!0)--J,I=!1;if(M=M===void 0?{}:M,V<0||H<0||V>65535||H>65535)throw Error("x/y invalid.");if(D<=0||L<=0||D>65535||L>65535)throw Error("Width/Height invalid.");if(z.length>=1)++P;w=1<3)throw Error("Disposal out of range.");var k=!1,T=0;if(M.transparent!==void 0&&M.transparent!==null){if(k=!0,T=M.transparent,T<0||T>=w)throw Error("Transparent color index.")}if(O!==0||k||_!==0)A[J++]=33,A[J++]=249,A[J++]=4,A[J++]=O<<2|(k===!0?1:0),A[J++]=_&255,A[J++]=_>>8&255,A[J++]=T,A[J++]=0;if(A[J++]=44,A[J++]=V&255,A[J++]=V>>8&255,A[J++]=H&255,A[J++]=H>>8&255,A[J++]=D&255,A[J++]=D>>8&255,A[J++]=L&255,A[J++]=L>>8&255,A[J++]=N===!0?128|P-1:0,N===!0)for(var S=0,v=q.length;S>16&255,A[J++]=y>>8&255,A[J++]=y&255}return J=isQ(A,J,P<2?2:P,z),J},this.end=function(){if(I===!1)A[J++]=59,I=!0;return J},this.getOutputBuffer=function(){return A},this.setOutputBuffer=function(V){A=V},this.getOutputBufferPosition=function(){return J},this.setOutputBufferPosition=function(V){J=V}}function isQ(A,Q,B,Y){A[Q++]=B;var J=Q++,C=1<=M)if(A[Q++]=U&255,U>>=8,Z-=8,Q===J+256)A[J]=255,J=Q++}function E(M){U|=M<=8)if(A[Q++]=U&255,U>>=8,Z-=8,Q===J+256)A[J]=255,J=Q++;if(F===4096)E(C),F=G+1,W=B+1,I={};else{if(F>=1<>7,X=J&7,G=1<=0))throw Error("Invalid block size");if(H===0)break;Q+=H}}break;case 249:if(A[Q++]!==4||A[Q+4]!==0)throw Error("Invalid graphics extension block.");var D=A[Q++];if(E=A[Q++]|A[Q++]<<8,K=A[Q++],(D&1)===0)K=null;I=D>>2&7,Q++;break;case 254:while(!0){var H=A[Q++];if(!(H>=0))throw Error("Invalid block size");if(H===0)break;Q+=H}break;default:throw Error("Unknown graphic control label: 0x"+A[Q-1].toString(16))}break;case 44:var L=A[Q++]|A[Q++]<<8,z=A[Q++]|A[Q++]<<8,M=A[Q++]|A[Q++]<<8,N=A[Q++]|A[Q++]<<8,q=A[Q++],w=q>>7,P=q>>6&1,_=q&7,O=1<<_+1,k=W,T=Z,S=!1;if(w){var S=!0;k=Q,T=O,Q+=O*3}var v=Q;Q++;while(!0){var H=A[Q++];if(!(H>=0))throw Error("Invalid block size");if(H===0)break;Q+=H}$.push({x:L,y:z,width:M,height:N,has_local_palette:S,palette_offset:k,palette_size:T,data_offset:v,data_length:Q-v,transparent_index:K,interlaced:!!P,delay:E,disposal:I});break;case 59:U=!1;break;default:throw Error("Unknown gif block: 0x"+A[Q-1].toString(16))}this.numFrames=function(){return $.length},this.loopCount=function(){return V},this.frameInfo=function(y){if(y<0||y>=$.length)throw Error("Frame index out of range.");return $[y]},this.decodeAndBlitFrameBGRA=function(y,g){var h=this.frameInfo(y),m=h.width*h.height,i=new Uint8Array(m);bCA(A,h.data_offset,i,m);var{palette_offset:p,transparent_index:l}=h;if(l===null)l=256;var d=h.width,x=B-d,b=d,o=(h.y*B+h.x)*4,GA=((h.y+h.height)*B+h.x)*4,VA=o,EA=x*4;if(h.interlaced===!0)EA+=B*4*7;var UA=8;for(var CA=0,QA=i.length;CA=GA)EA=x*4+B*4*(UA-1),VA=o+(d+x)*(UA<<1),UA>>=1}if(KA===l)VA+=4;else{var HA=A[p+KA*3],DA=A[p+KA*3+1],gA=A[p+KA*3+2];g[VA++]=gA,g[VA++]=DA,g[VA++]=HA,g[VA++]=255}--b}},this.decodeAndBlitFrameRGBA=function(y,g){var h=this.frameInfo(y),m=h.width*h.height,i=new Uint8Array(m);bCA(A,h.data_offset,i,m);var{palette_offset:p,transparent_index:l}=h;if(l===null)l=256;var d=h.width,x=B-d,b=d,o=(h.y*B+h.x)*4,GA=((h.y+h.height)*B+h.x)*4,VA=o,EA=x*4;if(h.interlaced===!0)EA+=B*4*7;var UA=8;for(var CA=0,QA=i.length;CA=GA)EA=x*4+B*4*(UA-1),VA=o+(d+x)*(UA<<1),UA>>=1}if(KA===l)VA+=4;else{var HA=A[p+KA*3],DA=A[p+KA*3+1],gA=A[p+KA*3+2];g[VA++]=HA,g[VA++]=DA,g[VA++]=gA,g[VA++]=255}--b}}}function bCA(A,Q,B,Y){var J=A[Q++],C=1<>=F,Z-=F,V===C){G=X+1,F=J+1,W=(1<C)L=K[L]>>8,++D;var z=L,M=$+D+(H!==V?1:0);if(M>Y){console.log("Warning, gif stream longer than expected.");return}B[$++]=z,$+=D;var N=$;if(H!==V)B[$++]=z;L=H;while(D--)L=K[L],B[--N]=L&255,L>>=8;if(I!==null&&G<4096){if(K[G++]=I<<8|z,G>=W+1&&F<12)++F,W=W<<1|1}I=V}if($!==Y)console.log("Warning, gif stream shorter than expected.");return B}try{ssQ.GifWriter=psQ,ssQ.GifReader=nsQ}catch(A){}});var O3=R((l6Y,mCA)=>{class GH{constructor(...A){if(A.length===0)throw Error("constructor requires parameters");let Q=A[0];if(Q!==null&&typeof Q==="object")if(Q instanceof GH){let B=Q.bitmap;this.bitmap={width:B.width,height:B.height,data:new Buffer(B.width*B.height*4)},B.data.copy(this.bitmap.data)}else if(Q.width&&Q.height&&Q.data)this.bitmap=Q;else throw Error("unrecognized constructor parameters");else if(typeof Q==="number"&&typeof A[1]==="number"){let B=Q,Y=A[1],J=A[2];if(this.bitmap={width:B,height:Y},Buffer.isBuffer(J))this.bitmap.data=J;else if(this.bitmap.data=new Buffer(B*Y*4),typeof J==="number")this.fillRGBA(J)}else throw Error("unrecognized constructor parameters")}blit(A,Q,B,Y,J,C,X){if(Y+C>this.bitmap.width)throw Error("copy exceeds width of source bitmap");if(Q+C>A.bitmap.width)throw Error("copy exceeds width of target bitmap");if(J+X>this.bitmap.height)throw Error("copy exceeds height of source bitmap");if(B+X>A.bitmap.height)throw new Erro("copy exceeds height of target bitmap");let G=this.bitmap.data,F=A.bitmap.data,W=this.bitmap.width*4,Z=A.bitmap.width*4,U=C*4,$=J*W+Y*4,E=B*Z+Q*4;while(--X>=0)G.copy(F,E,$,$+U),$+=W,E+=Z;return this}fillRGBA(A){let Q=this.bitmap.data,B=this.bitmap.height*4,Y=0;while(Y{let J=Math.round(0.299*A[Y]+0.587*A[Y+1]+0.114*A[Y+2]);A[Y]=J,A[Y+1]=J,A[Y+2]=J}),this}reframe(A,Q,B,Y,J){let C=A<0?0:A,X=Q<0?0:Q,G=B+C>this.bitmap.width?this.bitmap.width-C:B,F=Y+X>this.bitmap.height?this.bitmap.height-X:Y,W=A<0?-A:0,Z=Q<0?-Q:0,U;if(J===void 0){if(C!==A||X!=Q||G!==B||F!==Y)throw new GifError("fillRGBA required for this reframing");U=new GH(B,Y)}else U=new GH(B,Y,J);return this.blit(U,W,Z,C,X,G,F),this.bitmap=U.bitmap,this}scale(A){if(A===1)return;if(!Number.isInteger(A)||A<1)throw Error("the scale must be an integer >= 1");let Q=this.bitmap.width,B=this.bitmap.height,Y=Q*A*4,J=this.bitmap.data,C=new Buffer(B*Y*A),X=0,G,F=0;for(let W=0;W{class FH{constructor(A,Q,B){this.width=B.width,this.height=B.height,this.loops=B.loops,this.usesTransparency=B.usesTransparency,this.colorScope=B.colorScope,this.frames=Q,this.buffer=A}}FH.GlobalColorsPreferred=0;FH.GlobalColorsOnly=1;FH.LocalColorsOnly=2;class uCA extends Error{constructor(A){super(A);if(A instanceof Error)this.stack="Gif"+A.stack}}rsQ.Gif=FH;rsQ.GifError=uCA});var S1A=R((i6Y,T1A)=>{var{defineProperty:S3,getOwnPropertyDescriptor:tsQ,getOwnPropertyNames:esQ}=Object,ArQ=Object.prototype.hasOwnProperty,QrQ=(A,Q,B)=>(Q in A)?S3(A,Q,{enumerable:!0,configurable:!0,writable:!0,value:B}):A[Q]=B,BrQ=(A)=>S3(A,"__esModule",{value:!0}),_1=(A,Q)=>{for(var B in Q)S3(A,B,{get:Q[B],enumerable:!0})},YrQ=(A,Q,B,Y)=>{if(Q&&typeof Q==="object"||typeof Q==="function"){for(let J of esQ(Q))if(!ArQ.call(A,J)&&(B||J!=="default"))S3(A,J,{get:()=>Q[J],enumerable:!(Y=tsQ(Q,J))||Y.enumerable})}return A},JrQ=((A)=>{return(Q,B)=>{return A&&A.get(Q)||(B=YrQ(BrQ({}),Q,1),A&&A.set(Q,B),B)}})(typeof WeakMap<"u"?new WeakMap:0),WA=(A,Q,B)=>{return QrQ(A,typeof Q!=="symbol"?Q+"":Q,B),B},pCA={};_1(pCA,{applyPalette:()=>wrQ,applyPaletteSync:()=>RrQ,buildPalette:()=>zrQ,buildPaletteSync:()=>MrQ,constants:()=>iCA,conversion:()=>oCA,distance:()=>C1A,image:()=>z1A,palette:()=>H1A,quality:()=>j1A,utils:()=>D1A});var iCA={};_1(iCA,{bt709:()=>nCA});var nCA={};_1(nCA,{Y:()=>sCA,x:()=>rCA,y:()=>aCA});var sCA=((A)=>{return A[A.RED=0.2126]="RED",A[A.GREEN=0.7152]="GREEN",A[A.BLUE=0.0722]="BLUE",A[A.WHITE=1]="WHITE",A})(sCA||{}),rCA=((A)=>{return A[A.RED=0.64]="RED",A[A.GREEN=0.3]="GREEN",A[A.BLUE=0.15]="BLUE",A[A.WHITE=0.3127]="WHITE",A})(rCA||{}),aCA=((A)=>{return A[A.RED=0.33]="RED",A[A.GREEN=0.6]="GREEN",A[A.BLUE=0.06]="BLUE",A[A.WHITE=0.329]="WHITE",A})(aCA||{}),oCA={};_1(oCA,{lab2rgb:()=>UrQ,lab2xyz:()=>Y1A,rgb2hsl:()=>P3,rgb2lab:()=>$H,rgb2xyz:()=>tCA,xyz2lab:()=>B1A,xyz2rgb:()=>J1A});function Mg(A){return A>0.04045?((A+0.055)/1.055)**2.4:A/12.92}function tCA(A,Q,B){return A=Mg(A/255),Q=Mg(Q/255),B=Mg(B/255),{x:A*0.4124+Q*0.3576+B*0.1805,y:A*0.2126+Q*0.7152+B*0.0722,z:A*0.0193+Q*0.1192+B*0.9505}}var eCA={};_1(eCA,{degrees2radians:()=>C7,inRange0to255:()=>W8,inRange0to255Rounded:()=>F5,intInRange:()=>CrQ,max3:()=>A1A,min3:()=>Q1A,stableSort:()=>Og});function C7(A){return A*(Math.PI/180)}function A1A(A,Q,B){let Y=A;if(YQ)Y=Q;if(Y>B)Y=B;return Y}function CrQ(A,Q,B){if(A>B)A=B;if(A255)A=255;else if(A<0)A=0;return A}function W8(A){if(A>255)A=255;else if(A<0)A=0;return A}function Og(A,Q){let B=typeof A[0],Y;if(B==="number"||B==="string"){let J=Object.create(null);for(let C=0,X=A.length;CQ(C,X)||J[C]-J[X])}else{let J=A.slice(0);Y=A.sort((C,X)=>Q(C,X)||J.indexOf(C)-J.indexOf(X))}return Y}function P3(A,Q,B){let Y=Q1A(A,Q,B),J=A1A(A,Q,B),C=J-Y,X=(Y+J)/510,G=0;if(X>0&&X<1)G=C/(X<0.5?J+Y:510-J-Y);let F=0;if(C>0){if(J===A)F=(Q-B)/C;else if(J===Q)F=2+(B-A)/C;else F=4+(A-Q)/C;if(F*=60,F<0)F+=360}return{h:F,s:G,l:X}}var XrQ=0.95047,GrQ=1,FrQ=1.08883;function zg(A){return A>0.008856?A**0.3333333333333333:7.787*A+0.13793103448275862}function B1A(A,Q,B){if(A=zg(A/XrQ),Q=zg(Q/GrQ),B=zg(B/FrQ),116*Q-16<0)throw Error("xxx");return{L:Math.max(0,116*Q-16),a:500*(A-Q),b:200*(Q-B)}}function $H(A,Q,B){let Y=tCA(A,Q,B);return B1A(Y.x,Y.y,Y.z)}var WrQ=0.95047,ZrQ=1,$rQ=1.08883;function Rg(A){return A>0.206893034?A**3:(A-0.13793103448275862)/7.787}function Y1A(A,Q,B){let Y=(A+16)/116,J=Q/500+Y,C=Y-B/200;return{x:WrQ*Rg(J),y:ZrQ*Rg(Y),z:$rQ*Rg(C)}}function wg(A){return A>0.0031308?1.055*A**0.4166666666666667-0.055:12.92*A}function J1A(A,Q,B){let Y=wg(A*3.2406+Q*-1.5372+B*-0.4986),J=wg(A*-0.9689+Q*1.8758+B*0.0415),C=wg(A*0.0557+Q*-0.204+B*1.057);return{r:F5(Y*255),g:F5(J*255),b:F5(C*255)}}function UrQ(A,Q,B){let Y=Y1A(A,Q,B);return J1A(Y.x,Y.y,Y.z)}var C1A={};_1(C1A,{AbstractDistanceCalculator:()=>bW,AbstractEuclidean:()=>k3,AbstractManhattan:()=>_3,CIE94GraphicArts:()=>F1A,CIE94Textiles:()=>G1A,CIEDE2000:()=>MC,CMetric:()=>W1A,Euclidean:()=>Z1A,EuclideanBT709:()=>$1A,EuclideanBT709NoAlpha:()=>U1A,Manhattan:()=>E1A,ManhattanBT709:()=>V1A,ManhattanNommyde:()=>K1A,PNGQuant:()=>I1A});var bW=class{constructor(){WA(this,"_maxDistance"),WA(this,"_whitePoint"),this._setDefaults(),this.setWhitePoint(255,255,255,255)}setWhitePoint(A,Q,B,Y){this._whitePoint={r:A>0?255/A:0,g:Q>0?255/Q:0,b:B>0?255/B:0,a:Y>0?255/Y:0},this._maxDistance=this.calculateRaw(A,Q,B,Y,0,0,0,0)}calculateNormalized(A,Q){return this.calculateRaw(A.r,A.g,A.b,A.a,Q.r,Q.g,Q.b,Q.a)/this._maxDistance}},X1A=class extends bW{calculateRaw(A,Q,B,Y,J,C,X,G){let F=$H(W8(A*this._whitePoint.r),W8(Q*this._whitePoint.g),W8(B*this._whitePoint.b)),W=$H(W8(J*this._whitePoint.r),W8(C*this._whitePoint.g),W8(X*this._whitePoint.b)),Z=F.L-W.L,U=F.a-W.a,$=F.b-W.b,E=Math.sqrt(F.a*F.a+F.b*F.b),K=Math.sqrt(W.a*W.a+W.b*W.b),I=E-K,V=U*U+$*$-I*I;V=V<0?0:Math.sqrt(V);let H=(G-Y)*this._whitePoint.a*this._kA;return Math.sqrt((Z/this._Kl)**2+(I/(1+this._K1*E))**2+(V/(1+this._K2*E))**2+H**2)}},G1A=class extends X1A{_setDefaults(){this._Kl=2,this._K1=0.048,this._K2=0.014,this._kA=0.049019607843137254}},F1A=class extends X1A{_setDefaults(){this._Kl=1,this._K1=0.045,this._K2=0.015,this._kA=0.09803921568627451}},q0=class extends bW{_setDefaults(){}static _calculatehp(A,Q){let B=Math.atan2(A,Q);if(B>=0)return B;return B+q0._deg360InRad}static _calculateRT(A,Q){let B=Q**7,Y=2*Math.sqrt(B/(B+q0._pow25to7)),J=q0._deg30InRad*Math.exp(-(((A-q0._deg275InRad)/q0._deg25InRad)**2));return-Math.sin(2*J)*Y}static _calculateT(A){return 1-0.17*Math.cos(A-q0._deg30InRad)+0.24*Math.cos(A*2)+0.32*Math.cos(A*3+q0._deg6InRad)-0.2*Math.cos(A*4-q0._deg63InRad)}static _calculate_ahp(A,Q,B,Y){let J=B+Y;if(A===0)return J;if(Q<=q0._deg180InRad)return J/2;if(J>8)+4*Z*Z+((767-F)*U*U>>8),E=(G-Y)*this._whitePoint.a;return Math.sqrt($+E*E)}_setDefaults(){}},k3=class extends bW{calculateRaw(A,Q,B,Y,J,C,X,G){let F=J-A,W=C-Q,Z=X-B,U=G-Y;return Math.sqrt(this._kR*F*F+this._kG*W*W+this._kB*Z*Z+this._kA*U*U)}},Z1A=class extends k3{_setDefaults(){this._kR=1,this._kG=1,this._kB=1,this._kA=1}},$1A=class extends k3{_setDefaults(){this._kR=0.2126,this._kG=0.7152,this._kB=0.0722,this._kA=1}},U1A=class extends k3{_setDefaults(){this._kR=0.2126,this._kG=0.7152,this._kB=0.0722,this._kA=0}},_3=class extends bW{calculateRaw(A,Q,B,Y,J,C,X,G){let F=J-A,W=C-Q,Z=X-B,U=G-Y;if(F<0)F=0-F;if(W<0)W=0-W;if(Z<0)Z=0-Z;if(U<0)U=0-U;return this._kR*F+this._kG*W+this._kB*Z+this._kA*U}},E1A=class extends _3{_setDefaults(){this._kR=1,this._kG=1,this._kB=1,this._kA=1}},K1A=class extends _3{_setDefaults(){this._kR=0.4984,this._kG=0.8625,this._kB=0.2979,this._kA=1}},V1A=class extends _3{_setDefaults(){this._kR=0.2126,this._kG=0.7152,this._kB=0.0722,this._kA=1}},I1A=class extends bW{calculateRaw(A,Q,B,Y,J,C,X,G){let F=(G-Y)*this._whitePoint.a;return this._colordifferenceCh(A*this._whitePoint.r,J*this._whitePoint.r,F)+this._colordifferenceCh(Q*this._whitePoint.g,C*this._whitePoint.g,F)+this._colordifferenceCh(B*this._whitePoint.b,X*this._whitePoint.b,F)}_colordifferenceCh(A,Q,B){let Y=A-Q,J=Y+B;return Y*Y+J*J}_setDefaults(){}},H1A={};_1(H1A,{AbstractPaletteQuantizer:()=>UH,ColorHistogram:()=>KH,NeuQuant:()=>T0,NeuQuantFloat:()=>S0,RGBQuant:()=>q1A,WuColorCube:()=>M1A,WuQuant:()=>GU});var UH=class{quantizeSync(){for(let A of this.quantize())if(A.palette)return A.palette;throw Error("unreachable")}},Z8=class{constructor(){WA(this,"r"),WA(this,"g"),WA(this,"b"),WA(this,"a"),WA(this,"uint32"),WA(this,"rgba"),this.uint32=4294967295,this.r=this.g=this.b=this.a=0,this.rgba=[,,,,],this.rgba[0]=0,this.rgba[1]=0,this.rgba[2]=0,this.rgba[3]=0}static createByQuadruplet(A){let Q=new Z8;return Q.r=A[0]|0,Q.g=A[1]|0,Q.b=A[2]|0,Q.a=A[3]|0,Q._loadUINT32(),Q._loadQuadruplet(),Q}static createByRGBA(A,Q,B,Y){let J=new Z8;return J.r=A|0,J.g=Q|0,J.b=B|0,J.a=Y|0,J._loadUINT32(),J._loadQuadruplet(),J}static createByUint32(A){let Q=new Z8;return Q.uint32=A>>>0,Q._loadRGBA(),Q._loadQuadruplet(),Q}from(A){this.r=A.r,this.g=A.g,this.b=A.b,this.a=A.a,this.uint32=A.uint32,this.rgba[0]=A.r,this.rgba[1]=A.g,this.rgba[2]=A.b,this.rgba[3]=A.a}getLuminosity(A){let Q=this.r,B=this.g,Y=this.b;if(A)Q=Math.min(255,255-this.a+this.a*Q/255),B=Math.min(255,255-this.a+this.a*B/255),Y=Math.min(255,255-this.a+this.a*Y/255);return Q*0.2126+B*0.7152+Y*0.0722}_loadUINT32(){this.uint32=(this.a<<24|this.b<<16|this.g<<8|this.r)>>>0}_loadRGBA(){this.r=this.uint32&255,this.g=this.uint32>>>8&255,this.b=this.uint32>>>16&255,this.a=this.uint32>>>24&255}_loadQuadruplet(){this.rgba[0]=this.r,this.rgba[1]=this.g,this.rgba[2]=this.b,this.rgba[3]=this.a}},DX=class{constructor(){WA(this,"_pointArray"),WA(this,"_width"),WA(this,"_height"),this._width=0,this._height=0,this._pointArray=[]}getWidth(){return this._width}getHeight(){return this._height}setWidth(A){this._width=A}setHeight(A){this._height=A}getPointArray(){return this._pointArray}clone(){let A=new DX;A._width=this._width,A._height=this._height;for(let Q=0,B=this._pointArray.length;Q=X&&A=0;Q--)if(A.uint32===this._pointArray[Q].uint32)return!0;return!1}getNearestColor(A,Q){return this._pointArray[this._getNearestIndex(A,Q)|0]}getPointContainer(){return this._pointContainer}_nearestPointFromCache(A){return typeof this._i32idx[A]==="number"?this._i32idx[A]:-1}_getNearestIndex(A,Q){let B=this._nearestPointFromCache(""+Q.uint32);if(B>=0)return B;let Y=Number.MAX_VALUE;B=0;for(let J=0,C=this._pointArray.length;J{let B=P3(A.r,A.g,A.b),Y=P3(Q.r,Q.g,Q.b),J=A.r===A.g&&A.g===A.b?0:1+jg(B.h,dCA),X=(Q.r===Q.g&&Q.g===Q.b?0:1+jg(Y.h,dCA))-J;if(X)return-X;let G=A.getLuminosity(!0),F=Q.getLuminosity(!0);if(F-G!==0)return F-G;let W=(Y.s*100|0)-(B.s*100|0);if(W)return-W;return 0})}},D1A={};_1(D1A,{HueStatistics:()=>N1A,Palette:()=>EH,Point:()=>Z8,PointContainer:()=>DX,ProgressTracker:()=>NX,arithmetic:()=>eCA});var ErQ=class{constructor(){WA(this,"num",0),WA(this,"cols",[])}},N1A=class{constructor(A,Q){WA(this,"_numGroups"),WA(this,"_minCols"),WA(this,"_stats"),WA(this,"_groupsFull"),this._numGroups=A,this._minCols=Q,this._stats=[];for(let B=0;B<=A;B++)this._stats[B]=new ErQ;this._groupsFull=0}check(A){if(this._groupsFull===this._numGroups+1)this.check=()=>{};let Q=A&255,B=A>>>8&255,Y=A>>>16&255,J=Q===B&&B===Y?0:1+jg(P3(Q,B,Y).h,this._numGroups),C=this._stats[J],X=this._minCols;if(C.num++,C.num>X)return;if(C.num===X)this._groupsFull++;if(C.num<=X)this._stats[J].cols.push(A)}injectIntoDictionary(A){for(let Q=0;Q<=this._numGroups;Q++)if(this._stats[Q].num<=this._minCols)this._stats[Q].cols.forEach((B)=>{if(!A[B])A[B]=1;else A[B]++})}injectIntoArray(A){for(let Q=0;Q<=this._numGroups;Q++)if(this._stats[Q].num<=this._minCols)this._stats[Q].cols.forEach((B)=>{if(A.indexOf(B)===-1)A.push(B)})}},L1A=class{constructor(A,Q){WA(this,"progress"),WA(this,"_step"),WA(this,"_range"),WA(this,"_last"),WA(this,"_progressRange"),this._range=A,this._progressRange=Q,this._step=Math.max(1,this._range/(L1A.steps+1)|0),this._last=-this._step,this.progress=0}shouldNotify(A){if(A-this._last>=this._step)return this._last=A,this.progress=Math.min(this._progressRange*this._last/this._range,this._progressRange),!0;return!1}},NX=L1A;WA(NX,"steps",100);var rJ=3,KrQ=class{constructor(A){WA(this,"r"),WA(this,"g"),WA(this,"b"),WA(this,"a"),this.r=this.g=this.b=this.a=A}toPoint(){return Z8.createByRGBA(this.r>>rJ,this.g>>rJ,this.b>>rJ,this.a>>rJ)}subtract(A,Q,B,Y){this.r-=A|0,this.g-=Q|0,this.b-=B|0,this.a-=Y|0}},BB=class extends UH{constructor(A,Q=256){super();WA(this,"_pointArray"),WA(this,"_networkSize"),WA(this,"_network"),WA(this,"_sampleFactor"),WA(this,"_radPower"),WA(this,"_freq"),WA(this,"_bias"),WA(this,"_distance"),this._distance=A,this._pointArray=[],this._sampleFactor=1,this._networkSize=Q,this._distance.setWhitePoint(255<>3)*BB._radiusBias,G=X>>BB._radiusBiasShift;if(G<=1)G=0;for(let Z=0;Z>>0;let F;if(Q=Q)U-=Q;if(Z++,J===0)J=1;if(Z%J===0){if(C-=C/B|0,X-=X/BB._radiusDecrease|0,G=X>>BB._radiusBiasShift,G<=1)G=0;for(let D=0;D>>0}}}_buildPalette(){let A=new EH;return this._network.forEach((Q)=>{A.add(Q.toPoint())}),A.sort(),A}_alterNeighbour(A,Q,B,Y,J,C){let X=Q-A;if(X<-1)X=-1;let G=Q+A;if(G>this._networkSize)G=this._networkSize;let F=Q+1,W=Q-1,Z=1;while(FX){let U=this._radPower[Z++]/BB._alphaRadBias;if(FX){let $=this._network[W--];$.subtract(U*($.r-J),U*($.g-Y),U*($.b-B),U*($.a-C))}}}_alterSingle(A,Q,B,Y,J,C){A/=BB._initAlpha;let X=this._network[Q];X.subtract(A*(X.r-J),A*(X.g-Y),A*(X.b-B),A*(X.a-C))}_contest(A,Q,B,Y){let J=1020<>BB._initialBiasShift-rJ);if($>BB._betaShift;this._freq[W]-=E,this._bias[W]+=E<>BB._betaShift);WA(T0,"_betaGamma",BB._initialBias<>aJ,this.g>>aJ,this.b>>aJ,this.a>>aJ)}subtract(A,Q,B,Y){this.r-=A,this.g-=Q,this.b-=B,this.a-=Y}},YB=class extends UH{constructor(A,Q=256){super();WA(this,"_pointArray"),WA(this,"_networkSize"),WA(this,"_network"),WA(this,"_sampleFactor"),WA(this,"_radPower"),WA(this,"_freq"),WA(this,"_bias"),WA(this,"_distance"),this._distance=A,this._pointArray=[],this._sampleFactor=1,this._networkSize=Q,this._distance.setWhitePoint(255<>3)*YB._radiusBias,G=X>>YB._radiusBiasShift;if(G<=1)G=0;for(let Z=0;Z=Q)U-=Q;if(Z++,J===0)J=1;if(Z%J===0){if(C-=C/B,X-=X/YB._radiusDecrease,G=X>>YB._radiusBiasShift,G<=1)G=0;for(let D=0;D{A.add(Q.toPoint())}),A.sort(),A}_alterNeighbour(A,Q,B,Y,J,C){let X=Q-A;if(X<-1)X=-1;let G=Q+A;if(G>this._networkSize)G=this._networkSize;let F=Q+1,W=Q-1,Z=1;while(FX){let U=this._radPower[Z++]/YB._alphaRadBias;if(FX){let $=this._network[W--];$.subtract(U*($.r-J),U*($.g-Y),U*($.b-B),U*($.a-C))}}}_alterSingle(A,Q,B,Y,J,C){A/=YB._initAlpha;let X=this._network[Q];X.subtract(A*(X.r-J),A*(X.g-Y),A*(X.b-B),A*(X.a-C))}_contest(A,Q,B,Y){let J=1020<>YB._initialBiasShift-aJ);if($>YB._betaShift;this._freq[W]-=E,this._bias[W]+=E<>YB._betaShift);WA(S0,"_betaGamma",YB._initialBias<this._histogram[Y]-this._histogram[B]);if(A.length===0)return[];let Q;switch(this._method){case 1:let B=Math.min(A.length,this._initColors),Y=A[B-1],J=this._histogram[Y];Q=A.slice(0,B);let C=B,X=A.length;while(C+B)}_colorStats1D(A){let Q=this._histogram,B=A.getPointArray(),Y=B.length;for(let J=0;J{let Z=Math.round(W.w*W.h/X)*ZH._boxPixels;if(Z<2)Z=2;let U={};this._iterateBox(W,Q,($)=>{let E=Y[$].uint32;if(this._hueStats.check(E),E in F)F[E]++;else if(E in U){if(++U[E]>=Z)F[E]=U[E]}else U[E]=1})}),this._hueStats.injectIntoDictionary(F)}_iterateBox(A,Q,B){let Y=A,J=Y.y*Q+Y.x,C=(Y.y+Y.h-1)*Q+(Y.x+Y.w-1),X=Q-Y.w+1,G=0,F=J;do B.call(this,F),F+=++G%Y.w===0?X:1;while(F<=C)}_makeBoxes(A,Q,B,Y){let J=A%B,C=Q%Y,X=A-J,G=Q-C,F=[];for(let W=0;Wthis._colors){C.length=0;for(let Z=0;Zthis._colors*3?this._initialDistance:this._distanceIncrement}if(X$.distance-U.distance);let Z=0;while(X=0;Z--)if(Y[Z]===0){if(Z!==W-1)B[Z]=B[W-1];--W}B.length=W,Q.sort(),yield{palette:Q,progress:100}}};function BU(A){let Q=[];for(let B=0;B0){let B=this._sums[Q],Y=this._reds[Q]/B,J=this._greens[Q]/B,C=this._blues[Q]/B,X=this._alphas[Q]/B,G=Z8.createByRGBA(Y|0,J|0,C|0,X|0);A.add(G)}A.sort(),yield{palette:A,progress:100}}*_preparePalette(){yield*this._calculateMoments();let A=0,Q=BU(this._colors);for(let X=1;X1?this._calculateVariance(this._cubes[A]):0,Q[X]=this._cubes[X].volume>1?this._calculateVariance(this._cubes[X]):0;else Q[A]=0,X--;A=0;let G=Q[0];for(let F=1;F<=X;++F)if(Q[F]>G)G=Q[F],A=F;if(G<=0){this._colors=X+1;break}}let B=[],Y=[],J=[],C=[];for(let X=0;X0)B[X]=OQ._volume(this._cubes[X],this._momentsRed)/G|0,Y[X]=OQ._volume(this._cubes[X],this._momentsGreen)/G|0,J[X]=OQ._volume(this._cubes[X],this._momentsBlue)/G|0,C[X]=OQ._volume(this._cubes[X],this._momentsAlpha)/G|0;else B[X]=0,Y[X]=0,J[X]=0,C[X]=0}this._reds=BU(this._colors+1),this._greens=BU(this._colors+1),this._blues=BU(this._colors+1),this._alphas=BU(this._colors+1),this._sums=BU(this._colors+1);for(let X=0,G=this._pixels.length;X>Q)+1,Y=(A.g>>Q)+1,J=(A.b>>Q)+1,C=(A.a>>Q)+1;this._weights[C][B][Y][J]++,this._momentsRed[C][B][Y][J]+=A.r,this._momentsGreen[C][B][Y][J]+=A.g,this._momentsBlue[C][B][Y][J]+=A.b,this._momentsAlpha[C][B][Y][J]+=A.a,this._moments[C][B][Y][J]+=this._table[A.r]+this._table[A.g]+this._table[A.b]+this._table[A.a]}*_calculateMoments(){let A=[],Q=[],B=[],Y=[],J=[],C=[],X=JU(this._sideSize,this._sideSize,this._sideSize),G=JU(this._sideSize,this._sideSize,this._sideSize),F=JU(this._sideSize,this._sideSize,this._sideSize),W=JU(this._sideSize,this._sideSize,this._sideSize),Z=JU(this._sideSize,this._sideSize,this._sideSize),U=JU(this._sideSize,this._sideSize,this._sideSize),$=0,E=new NX(this._alphaMaxSideIndex*this._maxSideIndex,99);for(let K=1;K<=this._alphaMaxSideIndex;++K){CU(X,this._sideSize,this._sideSize,this._sideSize,0),CU(G,this._sideSize,this._sideSize,this._sideSize,0),CU(F,this._sideSize,this._sideSize,this._sideSize,0),CU(W,this._sideSize,this._sideSize,this._sideSize,0),CU(Z,this._sideSize,this._sideSize,this._sideSize,0),CU(U,this._sideSize,this._sideSize,this._sideSize,0);for(let I=1;I<=this._maxSideIndex;++I,++$){if(E.shouldNotify($))yield{progress:E.progress};XU(A,this._sideSize,0),XU(Q,this._sideSize,0),XU(B,this._sideSize,0),XU(Y,this._sideSize,0),XU(J,this._sideSize,0),XU(C,this._sideSize,0);for(let V=1;V<=this._maxSideIndex;++V){let H=0,D=0,L=0,z=0,M=0,N=0;for(let q=1;q<=this._maxSideIndex;++q)H+=this._weights[K][I][V][q],D+=this._momentsRed[K][I][V][q],L+=this._momentsGreen[K][I][V][q],z+=this._momentsBlue[K][I][V][q],M+=this._momentsAlpha[K][I][V][q],N+=this._moments[K][I][V][q],A[q]+=H,Q[q]+=D,B[q]+=L,Y[q]+=z,J[q]+=M,C[q]+=N,X[I][V][q]=X[I-1][V][q]+A[q],G[I][V][q]=G[I-1][V][q]+Q[q],F[I][V][q]=F[I-1][V][q]+B[q],W[I][V][q]=W[I-1][V][q]+Y[q],Z[I][V][q]=Z[I-1][V][q]+J[q],U[I][V][q]=U[I-1][V][q]+C[q],this._weights[K][I][V][q]=this._weights[K-1][I][V][q]+X[I][V][q],this._momentsRed[K][I][V][q]=this._momentsRed[K-1][I][V][q]+G[I][V][q],this._momentsGreen[K][I][V][q]=this._momentsGreen[K-1][I][V][q]+F[I][V][q],this._momentsBlue[K][I][V][q]=this._momentsBlue[K-1][I][V][q]+W[I][V][q],this._momentsAlpha[K][I][V][q]=this._momentsAlpha[K-1][I][V][q]+Z[I][V][q],this._moments[K][I][V][q]=this._moments[K-1][I][V][q]+U[I][V][q]}}}}static _volumeFloat(A,Q){return Q[A.alphaMaximum][A.redMaximum][A.greenMaximum][A.blueMaximum]-Q[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMaximum]-Q[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMaximum]+Q[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMaximum]-Q[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMaximum]+Q[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMaximum]+Q[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMaximum]-Q[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(Q[A.alphaMaximum][A.redMaximum][A.greenMaximum][A.blueMinimum]-Q[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMinimum]-Q[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMinimum]+Q[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]-Q[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMinimum]+Q[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]+Q[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]-Q[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum])}static _volume(A,Q){return OQ._volumeFloat(A,Q)|0}static _top(A,Q,B,Y){let J;switch(Q){case OQ._alpha:J=Y[B][A.redMaximum][A.greenMaximum][A.blueMaximum]-Y[B][A.redMaximum][A.greenMinimum][A.blueMaximum]-Y[B][A.redMinimum][A.greenMaximum][A.blueMaximum]+Y[B][A.redMinimum][A.greenMinimum][A.blueMaximum]-(Y[B][A.redMaximum][A.greenMaximum][A.blueMinimum]-Y[B][A.redMaximum][A.greenMinimum][A.blueMinimum]-Y[B][A.redMinimum][A.greenMaximum][A.blueMinimum]+Y[B][A.redMinimum][A.greenMinimum][A.blueMinimum]);break;case OQ._red:J=Y[A.alphaMaximum][B][A.greenMaximum][A.blueMaximum]-Y[A.alphaMaximum][B][A.greenMinimum][A.blueMaximum]-Y[A.alphaMinimum][B][A.greenMaximum][A.blueMaximum]+Y[A.alphaMinimum][B][A.greenMinimum][A.blueMaximum]-(Y[A.alphaMaximum][B][A.greenMaximum][A.blueMinimum]-Y[A.alphaMaximum][B][A.greenMinimum][A.blueMinimum]-Y[A.alphaMinimum][B][A.greenMaximum][A.blueMinimum]+Y[A.alphaMinimum][B][A.greenMinimum][A.blueMinimum]);break;case OQ._green:J=Y[A.alphaMaximum][A.redMaximum][B][A.blueMaximum]-Y[A.alphaMaximum][A.redMinimum][B][A.blueMaximum]-Y[A.alphaMinimum][A.redMaximum][B][A.blueMaximum]+Y[A.alphaMinimum][A.redMinimum][B][A.blueMaximum]-(Y[A.alphaMaximum][A.redMaximum][B][A.blueMinimum]-Y[A.alphaMaximum][A.redMinimum][B][A.blueMinimum]-Y[A.alphaMinimum][A.redMaximum][B][A.blueMinimum]+Y[A.alphaMinimum][A.redMinimum][B][A.blueMinimum]);break;case OQ._blue:J=Y[A.alphaMaximum][A.redMaximum][A.greenMaximum][B]-Y[A.alphaMaximum][A.redMaximum][A.greenMinimum][B]-Y[A.alphaMaximum][A.redMinimum][A.greenMaximum][B]+Y[A.alphaMaximum][A.redMinimum][A.greenMinimum][B]-(Y[A.alphaMinimum][A.redMaximum][A.greenMaximum][B]-Y[A.alphaMinimum][A.redMaximum][A.greenMinimum][B]-Y[A.alphaMinimum][A.redMinimum][A.greenMaximum][B]+Y[A.alphaMinimum][A.redMinimum][A.greenMinimum][B]);break;default:throw Error("impossible")}return J|0}static _bottom(A,Q,B){switch(Q){case OQ._alpha:return-B[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMaximum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMaximum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMaximum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(-B[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMinimum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);case OQ._red:return-B[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMaximum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMaximum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMaximum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(-B[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMinimum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);case OQ._green:return-B[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMaximum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMaximum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMaximum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(-B[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);case OQ._blue:return-B[A.alphaMaximum][A.redMaximum][A.greenMaximum][A.blueMinimum]+B[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]-(-B[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMinimum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);default:return 0}}_calculateVariance(A){let Q=OQ._volume(A,this._momentsRed),B=OQ._volume(A,this._momentsGreen),Y=OQ._volume(A,this._momentsBlue),J=OQ._volume(A,this._momentsAlpha),C=OQ._volumeFloat(A,this._moments),X=OQ._volume(A,this._weights),G=Q*Q+B*B+Y*Y+J*J;return C-G/X}_maximize(A,Q,B,Y,J,C,X,G,F){let W=OQ._bottom(A,Q,this._momentsRed)|0,Z=OQ._bottom(A,Q,this._momentsGreen)|0,U=OQ._bottom(A,Q,this._momentsBlue)|0,$=OQ._bottom(A,Q,this._momentsAlpha)|0,E=OQ._bottom(A,Q,this._weights)|0,K=0,I=-1;for(let V=B;VK)K=q,I=V}}}return{max:K,position:I}}_cut(A,Q){let B,Y=OQ._volume(A,this._momentsRed),J=OQ._volume(A,this._momentsGreen),C=OQ._volume(A,this._momentsBlue),X=OQ._volume(A,this._momentsAlpha),G=OQ._volume(A,this._weights),F=this._maximize(A,OQ._red,A.redMinimum+1,A.redMaximum,Y,J,C,X,G),W=this._maximize(A,OQ._green,A.greenMinimum+1,A.greenMaximum,Y,J,C,X,G),Z=this._maximize(A,OQ._blue,A.blueMinimum+1,A.blueMaximum,Y,J,C,X,G),U=this._maximize(A,OQ._alpha,A.alphaMinimum+1,A.alphaMaximum,Y,J,C,X,G);if(U.max>=F.max&&U.max>=W.max&&U.max>=Z.max){if(B=OQ._alpha,U.position<0)return!1}else if(F.max>=U.max&&F.max>=W.max&&F.max>=Z.max)B=OQ._red;else if(W.max>=U.max&&W.max>=F.max&&W.max>=Z.max)B=OQ._green;else B=OQ._blue;switch(Q.redMaximum=A.redMaximum,Q.greenMaximum=A.greenMaximum,Q.blueMaximum=A.blueMaximum,Q.alphaMaximum=A.alphaMaximum,B){case OQ._red:Q.redMinimum=A.redMaximum=F.position,Q.greenMinimum=A.greenMinimum,Q.blueMinimum=A.blueMinimum,Q.alphaMinimum=A.alphaMinimum;break;case OQ._green:Q.greenMinimum=A.greenMaximum=W.position,Q.redMinimum=A.redMinimum,Q.blueMinimum=A.blueMinimum,Q.alphaMinimum=A.alphaMinimum;break;case OQ._blue:Q.blueMinimum=A.blueMaximum=Z.position,Q.redMinimum=A.redMinimum,Q.greenMinimum=A.greenMinimum,Q.alphaMinimum=A.alphaMinimum;break;case OQ._alpha:Q.alphaMinimum=A.alphaMaximum=U.position,Q.blueMinimum=A.blueMinimum,Q.redMinimum=A.redMinimum,Q.greenMinimum=A.greenMinimum;break}return A.volume=(A.redMaximum-A.redMinimum)*(A.greenMaximum-A.greenMinimum)*(A.blueMaximum-A.blueMinimum)*(A.alphaMaximum-A.alphaMinimum),Q.volume=(Q.redMaximum-Q.redMinimum)*(Q.greenMaximum-Q.greenMinimum)*(Q.blueMaximum-Q.blueMinimum)*(Q.alphaMaximum-Q.alphaMinimum),!0}_initialize(A){this._colors=A,this._cubes=[];for(let Q=0;Qv3,ErrorDiffusionArray:()=>k1,ErrorDiffusionArrayKernel:()=>w1A,ErrorDiffusionRiemersma:()=>Pg,NearestColor:()=>R1A});var v3=class{quantizeSync(A,Q){for(let B of this.quantize(A,Q))if(B.pointContainer)return B.pointContainer;throw Error("unreachable")}},R1A=class extends v3{constructor(A){super();WA(this,"_distance"),this._distance=A}*quantize(A,Q){let B=A.getPointArray(),Y=A.getWidth(),J=A.getHeight(),C=new NX(J,99);for(let X=0;X{return A[A.FloydSteinberg=0]="FloydSteinberg",A[A.FalseFloydSteinberg=1]="FalseFloydSteinberg",A[A.Stucki=2]="Stucki",A[A.Atkinson=3]="Atkinson",A[A.Jarvis=4]="Jarvis",A[A.Burkes=5]="Burkes",A[A.Sierra=6]="Sierra",A[A.TwoSierra=7]="TwoSierra",A[A.SierraLite=8]="SierraLite",A})(w1A||{}),k1=class extends v3{constructor(A,Q,B=!0,Y=0,J=!1){super();WA(this,"_minColorDistance"),WA(this,"_serpentine"),WA(this,"_kernel"),WA(this,"_calculateErrorLikeGIMP"),WA(this,"_distance"),this._setKernel(Q),this._distance=A,this._minColorDistance=Y,this._serpentine=B,this._calculateErrorLikeGIMP=J}*quantize(A,Q){let B=A.getPointArray(),Y=new Z8,J=A.getWidth(),C=A.getHeight(),X=[],G=1,F=1;for(let Z of this._kernel){let U=Z[2]+1;if(F=0&&k+I=0&&T+ZQ)A.length=Q;let B=A.length;for(let Y=0;Y=0&&A.x=0&&A.y{let W=B[G+F*Y],{r:Z,g:U,b:$,a:E}=W;for(let H=0;HLrQ});var DrQ=0.01,NrQ=0.03;function LrQ(A,Q){if(A.getHeight()!==Q.getHeight()||A.getWidth()!==Q.getWidth())throw Error("Images have different sizes!");let Y=255,J=(DrQ*Y)**2,C=(NrQ*Y)**2,X=0,G=0;return qrQ(A,Q,(F,W,Z,U)=>{let $=0,E=0,K=0;for(let L=0;Lprocess.nextTick(A):(A)=>setTimeout(A,0);function MrQ(A,{colorDistanceFormula:Q,paletteQuantization:B,colors:Y}={}){let J=y3(Q),C=P1A(J,B,Y);return A.forEach((X)=>C.sample(X)),C.quantizeSync()}async function zrQ(A,{colorDistanceFormula:Q,paletteQuantization:B,colors:Y,onProgress:J}={}){return new Promise((C,X)=>{let G=y3(Q),F=P1A(G,B,Y);A.forEach(($)=>F.sample($));let W,Z=F.quantize(),U=()=>{try{let $=Z.next();if($.done)C(W);else{if($.value.palette)W=$.value.palette;if(J)J($.value.progress);T3(U)}}catch($){X($)}};T3(U)})}function RrQ(A,Q,{colorDistanceFormula:B,imageQuantization:Y}={}){let J=y3(B);return O1A(J,Y).quantizeSync(A,Q)}async function wrQ(A,Q,{colorDistanceFormula:B,imageQuantization:Y,onProgress:J}={}){return new Promise((C,X)=>{let G=y3(B),F=O1A(G,Y),W,Z=F.quantize(A,Q),U=()=>{try{let $=Z.next();if($.done)C(W);else{if($.value.pointContainer)W=$.value.pointContainer;if(J)J($.value.progress);T3(U)}}catch($){X($)}};T3(U)})}function y3(A="euclidean-bt709"){switch(A){case"cie94-graphic-arts":return new F1A;case"cie94-textiles":return new G1A;case"ciede2000":return new MC;case"color-metric":return new W1A;case"euclidean":return new Z1A;case"euclidean-bt709":return new $1A;case"euclidean-bt709-noalpha":return new U1A;case"manhattan":return new E1A;case"manhattan-bt709":return new V1A;case"manhattan-nommyde":return new K1A;case"pngquant":return new I1A;default:throw Error(`Unknown colorDistanceFormula ${A}`)}}function O1A(A,Q="floyd-steinberg"){switch(Q){case"nearest":return new R1A(A);case"riemersma":return new Pg(A);case"floyd-steinberg":return new k1(A,0);case"false-floyd-steinberg":return new k1(A,1);case"stucki":return new k1(A,2);case"atkinson":return new k1(A,3);case"jarvis":return new k1(A,4);case"burkes":return new k1(A,5);case"sierra":return new k1(A,6);case"two-sierra":return new k1(A,7);case"sierra-lite":return new k1(A,8);default:throw Error(`Unknown imageQuantization ${Q}`)}}function P1A(A,Q="wuquant",B=256){switch(Q){case"neuquant":return new T0(A,B);case"rgbquant":return new q1A(A,B);case"wuquant":return new GU(A,B);case"neuquant-float":return new S0(A,B);default:throw Error(`Unknown paletteQuantization ${Q}`)}}T1A.exports=JrQ(pCA)});var h3=R((jrQ)=>{var k1A=O3(),{GifError:PXY}=WH();class X7 extends k1A{constructor(...A){super(...A);if(A[0]instanceof X7){let Q=A[0];this.xOffset=Q.xOffset,this.yOffset=Q.yOffset,this.disposalMethod=Q.disposalMethod,this.delayCentisecs=Q.delayCentisecs,this.interlaced=Q.interlaced}else{let Q=A[A.length-1],B={};if(typeof Q==="object"&&!(Q instanceof k1A))B=Q;this.xOffset=B.xOffset||0,this.yOffset=B.yOffset||0,this.disposalMethod=B.disposalMethod!==void 0?B.disposalMethod:X7.DisposeToBackgroundColor,this.delayCentisecs=B.delayCentisecs||8,this.interlaced=B.interlaced||!1}}getPalette(){let A=new Set,Q=this.bitmap.data,B=0,Y=!1;while(B>8&16777215;A.add(G)}B+=4}let J=Array(A.size),C=A.values();for(B=0;BG-F);let X=J.length;if(Y)++X;return{colors:J,usesTransparency:Y,indexCount:X}}}X7.DisposeToAnything=0;X7.DisposeNothing=1;X7.DisposeToBackgroundColor=2;X7.DisposeToPrevious=3;jrQ.GifFrame=X7});var Sg=R((hrQ)=>{var _1A=u("fs"),FU=S1A(),PrQ=O3(),{GifFrame:TrQ}=h3(),{GifError:SrQ}=WH(),{GifCodec:krQ}=kg(),_rQ=[".jpg",".jpeg",".png",".bmp"],v1A=new krQ;hrQ.cloneFrames=function(A){let Q=[];return A.forEach((B)=>{Q.push(new TrQ(B))}),Q};hrQ.getColorInfo=function(A,Q){let B=!1,Y=[];for(let F=0;F256)throw new SrQ(`Frame ${F} uses more than 256 color indexes`);Y.push(W)}if(Q===0)return{usesTransparency:B,palettes:Y};let J=new Set;Y.forEach((F)=>{F.colors.forEach((W)=>{J.add(W)})});let C=J.size;if(B)++C;if(Q&&C>Q)return{usesTransparency:B,palettes:Y};let X=Array(J.size),G=J.values();for(let F=0;FF-W),{colors:X,indexCount:C,usesTransparency:B,palettes:Y}};hrQ.copyAsJimp=function(A,Q){return hrQ.shareAsJimp(A,new PrQ(Q))};hrQ.getMaxDimensions=function(A){let Q=0,B=0;return A.forEach((Y)=>{let J=Y.xOffset+Y.bitmap.width;if(J>Q)Q=J;let C=Y.yOffset+Y.bitmap.height;if(C>B)B=C}),{maxWidth:Q,maxHeight:B}};hrQ.quantizeDekker=function(A,Q,B){Q=Q||256,Tg(A,"NeuQuantFloat",Q,0,B)};hrQ.quantizeSorokin=function(A,Q,B,Y){Q=Q||256,B=B||"min-pop";let J;switch(B){case"min-pop":J=2;break;case"top-pop":J=1;break;default:throw Error(`Invalid quantizeSorokin histogram '${B}'`)}Tg(A,"RGBQuant",Q,J,Y)};hrQ.quantizeWu=function(A,Q,B,Y){if(Q=Q||256,B=B||5,B<1||B>8)throw Error("Invalid quantization quality");Tg(A,"WuQuant",Q,B,Y)};hrQ.read=function(A,Q){if(Q=Q||v1A,Buffer.isBuffer(A))return Q.decodeGif(A);return vrQ(A).then((B)=>{return Q.decodeGif(B)})};hrQ.shareAsJimp=function(A,Q){let B=new A(Q.bitmap.width,Q.bitmap.height,0);return B.bitmap.data=Q.bitmap.data,B};hrQ.write=function(A,Q,B,Y){Y=Y||v1A;let J=A.match(/\.[a-zA-Z]+$/);if(J!==null&&_rQ.includes(J[0].toLowerCase()))throw Error(`GIF '${A}' has an unexpected suffix`);return Y.encodeGif(Q,B).then((C)=>{return yrQ(A,C.buffer).then(()=>{return C})})};function Tg(A,Q,B,Y,J){let C=Array.isArray(A)?A:[A],X=["FloydSteinberg","FalseFloydSteinberg","Stucki","Atkinson","Jarvis","Burkes","Sierra","TwoSierra","SierraLite"];if(J){if(X.indexOf(J.ditherAlgorithm)<0)throw Error(`Invalid ditherAlgorithm '${J.ditherAlgorithm}'`);if(J.serpentine===void 0)J.serpentine=!0;if(J.minimumColorDistanceToDither===void 0)J.minimumColorDistanceToDither=0;if(J.calculateErrorLikeGIMP===void 0)J.calculateErrorLikeGIMP=!1}let G=new FU.distance.Euclidean,F=new FU.palette[Q](G,B,Y),W;if(J)W=new FU.image.ErrorDiffusionArray(G,FU.image.ErrorDiffusionArrayKernel[J.ditherAlgorithm],J.serpentine,J.minimumColorDistanceToDither,J.calculateErrorLikeGIMP);else W=new FU.image.NearestColor(G);let Z=[];C.forEach(($)=>{let E=$.bitmap.data,K=new ArrayBuffer(E.length),I=new Uint32Array(K);for(let H=0,D=0;H{_1A.readFile(A,(Y,J)=>{if(Y)return B(Y);return Q(J)})})}function yrQ(A,Q){return new Promise((B,Y)=>{_1A.writeFile(A,Q,(J)=>{if(J)return Y(J);return B()})})}});var kg=R((erQ)=>{var _g=qg(),{Gif:G7,GifError:LX}=WH();function g3(){let A=Sg();return g3=function(){return A},A}var{GifFrame:irQ}=h3(),y1A=200,nrQ=100;class x1A{constructor(A={}){if(this._transparentRGB=null,typeof A.transparentRGB==="number"&&A.transparentRGB!==0)this._transparentRGBA=A.transparentRGB*256;this._testInitialBufferSize=0}decodeGif(A){try{let Q;try{Q=new _g.GifReader(A)}catch(C){throw new LX(C)}let B=Q.numFrames(),Y=[],J={width:Q.width,height:Q.height,loops:Q.loopCount()};J.usesTransparency=!1;for(let C=0;CY.width)for(let G=0;G0)return this._testInitialBufferSize;let B=y1A+768,Y=g1A(A);return Q.forEach((J)=>{B+=h1A(J,Y)}),B}_getSizeEstimateLocal(A,Q){if(this._testInitialBufferSize>0)return this._testInitialBufferSize;let B=y1A;for(let Y=0;YQ)Y=J-1;else if(A[J]Y)Y<<=1;Q.length=Y,Q.fill(0,B)}function h1A(A,Q){let B=A.bitmap.width*A.bitmap.height;return B=Math.ceil(B*Q/8),B+=Math.ceil(B/255),nrQ+B+768}function trQ(A,Q,B){let Y=B.colors,J=Y.length<=8?srQ:rrQ,C=Q.bitmap.data,X=new Buffer(C.length/4),G=Y.length,F=0,W=0;while(F>8&16777215;X[W]=J(Y,Z)}else X[W]=G;F+=4,++W}if(B.usesTransparency){if(G===256)throw new LX(`Frame ${A} already has 256 colorsand so can't use transparency`)}else G=null;return{buffer:X,transparentIndex:G}}function g1A(A){let Q=A.indexCount,B=0;--Q;while(Q)++B,Q>>=1;return B>0?B:1}function b1A(A,Q,B,Y,J){if(B.interlaced)throw new LX("writing interlaced GIFs is not supported");let C=trQ(Q,B,Y),X={delay:B.delayCentisecs,disposal:B.disposalMethod,transparent:C.transparentIndex};if(J)f1A(Y),X.palette=Y.colors;try{let G=A.getOutputBuffer(),F=A.getOutputBufferPosition(),W,Z=!0;while(Z)if(W=A.addFrame(B.xOffset,B.yOffset,B.bitmap.width,B.bitmap.height,C.buffer,X),Z=!1,W>=G.length-1){let U=new Buffer(G.length*1.5);G.copy(U),A.setOutputBuffer(U),A.setOutputBufferPosition(F),G=U,Z=!0}return G}catch(G){throw new LX(G)}}});var u1A=R((_XY,m1A)=>{var QaQ=O3(),{Gif:BaQ,GifError:YaQ}=WH(),{GifCodec:JaQ}=kg(),{GifFrame:CaQ}=h3(),XaQ=Sg();m1A.exports={BitmapImage:QaQ,Gif:BaQ,GifCodec:JaQ,GifFrame:CaQ,GifUtil:XaQ,GifError:YaQ}});var p1A=R((yXY,f3)=>{var l1A=l1A||function(A){return Buffer.from(A).toString("base64")};function GaQ(A){var Q=this,B=Math.round,Y=Math.floor,J=Array(64),C=Array(64),X=Array(64),G=Array(64),F,W,Z,U,$=Array(65535),E=Array(65535),K=Array(64),I=Array(64),V=[],H=0,D=7,L=Array(64),z=Array(64),M=Array(64),N=Array(256),q=Array(2048),w,P=[0,1,5,6,14,15,27,28,2,4,7,13,16,26,29,42,3,8,12,17,25,30,41,43,9,11,18,24,31,40,44,53,10,19,23,32,39,45,52,54,20,22,33,38,46,51,55,60,21,34,37,47,50,56,59,61,35,36,48,49,57,58,62,63],_=[0,0,1,5,1,1,1,1,1,1,0,0,0,0,0,0,0],O=[0,1,2,3,4,5,6,7,8,9,10,11],k=[0,0,2,1,3,3,2,4,3,5,5,4,4,0,0,1,125],T=[1,2,3,0,4,17,5,18,33,49,65,6,19,81,97,7,34,113,20,50,129,145,161,8,35,66,177,193,21,82,209,240,36,51,98,114,130,9,10,22,23,24,25,26,37,38,39,40,41,42,52,53,54,55,56,57,58,67,68,69,70,71,72,73,74,83,84,85,86,87,88,89,90,99,100,101,102,103,104,105,106,115,116,117,118,119,120,121,122,131,132,133,134,135,136,137,138,146,147,148,149,150,151,152,153,154,162,163,164,165,166,167,168,169,170,178,179,180,181,182,183,184,185,186,194,195,196,197,198,199,200,201,202,210,211,212,213,214,215,216,217,218,225,226,227,228,229,230,231,232,233,234,241,242,243,244,245,246,247,248,249,250],S=[0,0,3,1,1,1,1,1,1,1,1,1,0,0,0,0,0],v=[0,1,2,3,4,5,6,7,8,9,10,11],y=[0,0,2,1,2,4,4,3,4,7,5,4,4,0,1,2,119],g=[0,1,2,3,17,4,5,33,49,6,18,65,81,7,97,113,19,34,50,129,8,20,66,145,161,177,193,9,35,51,82,240,21,98,114,209,10,22,36,52,225,37,241,23,24,25,26,38,39,40,41,42,53,54,55,56,57,58,67,68,69,70,71,72,73,74,83,84,85,86,87,88,89,90,99,100,101,102,103,104,105,106,115,116,117,118,119,120,121,122,130,131,132,133,134,135,136,137,138,146,147,148,149,150,151,152,153,154,162,163,164,165,166,167,168,169,170,178,179,180,181,182,183,184,185,186,194,195,196,197,198,199,200,201,202,210,211,212,213,214,215,216,217,218,226,227,228,229,230,231,232,233,234,242,243,244,245,246,247,248,249,250];function h(XA){var PA=[16,11,10,16,24,40,51,61,12,12,14,19,26,58,60,55,14,13,16,24,40,57,69,56,14,17,22,29,51,87,80,62,18,22,37,56,68,109,103,77,24,35,55,64,81,104,113,92,49,64,78,87,103,121,120,101,72,92,95,98,112,100,103,99];for(var NA=0;NA<64;NA++){var TA=Y((PA[NA]*XA+50)/100);if(TA<1)TA=1;else if(TA>255)TA=255;J[P[NA]]=TA}var vA=[17,18,24,47,99,99,99,99,18,21,26,66,99,99,99,99,24,26,56,99,99,99,99,99,47,66,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99];for(var mA=0;mA<64;mA++){var ZQ=Y((vA[mA]*XA+50)/100);if(ZQ<1)ZQ=1;else if(ZQ>255)ZQ=255;C[P[mA]]=ZQ}var NQ=[1,1.387039845,1.306562965,1.175875602,1,0.785694958,0.5411961,0.275899379],CQ=0;for(var SQ=0;SQ<8;SQ++)for(var LA=0;LA<8;LA++)X[CQ]=1/(J[P[CQ]]*NQ[SQ]*NQ[LA]*8),G[CQ]=1/(C[P[CQ]]*NQ[SQ]*NQ[LA]*8),CQ++}function m(XA,PA){var NA=0,TA=0,vA=[];for(var mA=1;mA<=16;mA++){for(var ZQ=1;ZQ<=XA[mA];ZQ++)vA[PA[TA]]=[],vA[PA[TA]][0]=NA,vA[PA[TA]][1]=mA,TA++,NA++;NA*=2}return vA}function i(){F=m(_,O),W=m(S,v),Z=m(k,T),U=m(y,g)}function p(){var XA=1,PA=2;for(var NA=1;NA<=15;NA++){for(var TA=XA;TA>0]=38470*XA,q[XA+512>>0]=7471*XA+32768,q[XA+768>>0]=-11059*XA,q[XA+1024>>0]=-21709*XA,q[XA+1280>>0]=32768*XA+8421375,q[XA+1536>>0]=-27439*XA,q[XA+1792>>0]=-5329*XA}function d(XA){var PA=XA[0],NA=XA[1]-1;while(NA>=0){if(PA&1<>8&255),x(XA&255)}function o(XA,PA){var NA,TA,vA,mA,ZQ,NQ,CQ,SQ,LA=0,IA,jA=8,tQ=64;for(IA=0;IA0?GM+0.5|0:GM-0.5|0;return K}function GA(){b(65504),b(16),x(74),x(70),x(73),x(70),x(0),x(1),x(1),x(0),b(1),b(1),x(0),x(0)}function VA(XA){if(!XA)return;if(b(65505),XA[0]===69&&XA[1]===120&&XA[2]===105&&XA[3]===102)b(XA.length+2);else b(XA.length+5+2),x(69),x(120),x(105),x(102),x(0);for(var PA=0;PA"u"||XA.constructor!==Array)return;XA.forEach((PA)=>{if(typeof PA!=="string")return;b(65534);var NA=PA.length;b(NA+2);var TA;for(TA=0;TA0&&I[IQ]==0;IQ--);if(IQ==0)return d(mA),NA;var vQ=1,KB;while(vQ<=IQ){var zA=vQ;for(;I[vQ]==0&&vQ<=IQ;++vQ);var uA=vQ-zA;if(uA>=CQ){KB=uA>>4;for(var MQ=1;MQ<=KB;++MQ)d(ZQ);uA=uA&15}NQ=32767+I[vQ],d(vA[(uA<<4)+E[NQ]]),d($[NQ]),vQ++}if(IQ!=SQ)d(mA);return NA}function DA(){var XA=String.fromCharCode;for(var PA=0;PA<256;PA++)N[PA]=XA(PA)}this.encode=function(XA,PA){var NA=new Date().getTime();if(PA)gA(PA);V=[],H=0,D=7,b(65496),GA(),QA(XA.comments),VA(XA.exifBuffer),UA(),EA(XA.width,XA.height),CA(),KA();var TA=0,vA=0,mA=0;H=0,D=7,this.encode.displayName="_encode_";var{data:ZQ,width:NQ,height:CQ}=XA,SQ=NQ*4,LA=NQ*3,IA,jA=0,tQ,IQ,vQ,KB,zA,uA,MQ,bQ;while(jA>3,uA=(bQ&7)*4,zA=KB+MQ*SQ+uA,jA+MQ>=CQ)zA-=SQ*(jA+1+MQ-CQ);if(IA+uA>=SQ)zA-=IA+uA-SQ+4;tQ=ZQ[zA++],IQ=ZQ[zA++],vQ=ZQ[zA++],L[bQ]=(q[tQ]+q[IQ+256>>0]+q[vQ+512>>0]>>16)-128,z[bQ]=(q[tQ+768>>0]+q[IQ+1024>>0]+q[vQ+1280>>0]>>16)-128,M[bQ]=(q[tQ+1280>>0]+q[IQ+1536>>0]+q[vQ+1792>>0]>>16)-128}TA=HA(L,X,TA,F,Z),vA=HA(z,G,vA,W,U),mA=HA(M,G,mA,W,U),IA+=32}jA+=8}if(D>=0){var eQ=[];eQ[1]=D+1,eQ[0]=(1<"u")return new Uint8Array(V);return Buffer.from(V);var cB,mQ};function gA(XA){if(XA<=0)XA=1;if(XA>100)XA=100;if(w==XA)return;var PA=0;if(XA<50)PA=Math.floor(5000/XA);else PA=Math.floor(200-XA*2);h(PA),w=XA}function QQ(){var XA=new Date().getTime();if(!A)A=50;DA(),i(),p(),l(),gA(A);var PA=new Date().getTime()-XA}QQ()}if(typeof f3<"u")f3.exports=c1A;else if(typeof window<"u")window["jpeg-js"]=window["jpeg-js"]||{},window["jpeg-js"].encode=c1A;function c1A(A,Q){if(typeof Q>"u")Q=50;var B=new GaQ(Q),Y=B.encode(A,Q);return{data:Y,width:A.width,height:A.height}}});var n1A=R((hXY,yg)=>{var vg=function(){var Q=new Int32Array([0,1,8,16,9,2,3,10,17,24,32,25,18,11,4,5,12,19,26,33,40,48,41,34,27,20,13,6,7,14,21,28,35,42,49,56,57,50,43,36,29,22,15,23,30,37,44,51,58,59,52,45,38,31,39,46,53,60,61,54,47,55,62,63]),B=4017,Y=799,J=3406,C=2276,X=1567,G=3784,F=5793,W=2896;function Z(){}function U(D,L){var z=0,M=[],N,q,w=16;while(w>0&&!D[w-1])w--;M.push({children:[],index:0});var P=M[0],_;for(N=0;N0){if(M.length===0)throw Error("Could not recreate Huffman Table");P=M.pop()}P.index++,M.push(P);while(M.length<=N)M.push(_={children:[],index:0}),P.children[P.index]=_.children,P=_;z++}if(N+10)return p--,i>>p&1;if(i=D[L++],i==255){var LA=D[L++];if(LA)throw Error("unexpected marker: "+(i<<8|LA).toString(16))}return p=7,i>>>7}function d(LA){var IA=LA,jA;while((jA=l())!==null){if(IA=IA[jA],typeof IA==="number")return IA;if(typeof IA!=="object")throw Error("invalid huffman sequence")}return null}function x(LA){var IA=0;while(LA>0){var jA=l();if(jA===null)return;IA=IA<<1|jA,LA--}return IA}function b(LA){var IA=x(LA);if(IA>=1<>4;if(KB===0){if(zA<15)break;IQ+=16;continue}IQ+=zA;var uA=Q[IQ];IA[uA]=b(KB),IQ++}}function GA(LA,IA){var jA=d(LA.huffmanTableDC),tQ=jA===0?0:b(jA)<<_;IA[0]=LA.pred+=tQ}function VA(LA,IA){IA[0]|=l()<<_}var EA=0;function UA(LA,IA){if(EA>0){EA--;return}var jA=q,tQ=w;while(jA<=tQ){var IQ=d(LA.huffmanTableAC),vQ=IQ&15,KB=IQ>>4;if(vQ===0){if(KB<15){EA=x(KB)+(1<>4;if(uA===0)if(IQ<15)EA=x(IQ)+(1<=65488&&ZQ<=65495)L+=2;else break}return L-m}function E(D,L){var z=[],M=L.blocksPerLine,N=L.blocksPerColumn,q=M<<3,w=new Int32Array(64),P=new Uint8Array(64);function _(m,i,p){var l=L.quantizationTable,d,x,b,o,GA,VA,EA,UA,CA,QA=p,KA;for(KA=0;KA<64;KA++)QA[KA]=m[KA]*l[KA];for(KA=0;KA<8;++KA){var HA=8*KA;if(QA[1+HA]==0&&QA[2+HA]==0&&QA[3+HA]==0&&QA[4+HA]==0&&QA[5+HA]==0&&QA[6+HA]==0&&QA[7+HA]==0){CA=F*QA[0+HA]+512>>10,QA[0+HA]=CA,QA[1+HA]=CA,QA[2+HA]=CA,QA[3+HA]=CA,QA[4+HA]=CA,QA[5+HA]=CA,QA[6+HA]=CA,QA[7+HA]=CA;continue}d=F*QA[0+HA]+128>>8,x=F*QA[4+HA]+128>>8,b=QA[2+HA],o=QA[6+HA],GA=W*(QA[1+HA]-QA[7+HA])+128>>8,UA=W*(QA[1+HA]+QA[7+HA])+128>>8,VA=QA[3+HA]<<4,EA=QA[5+HA]<<4,CA=d-x+1>>1,d=d+x+1>>1,x=CA,CA=b*G+o*X+128>>8,b=b*X-o*G+128>>8,o=CA,CA=GA-EA+1>>1,GA=GA+EA+1>>1,EA=CA,CA=UA+VA+1>>1,VA=UA-VA+1>>1,UA=CA,CA=d-o+1>>1,d=d+o+1>>1,o=CA,CA=x-b+1>>1,x=x+b+1>>1,b=CA,CA=GA*C+UA*J+2048>>12,GA=GA*J-UA*C+2048>>12,UA=CA,CA=VA*Y+EA*B+2048>>12,VA=VA*B-EA*Y+2048>>12,EA=CA,QA[0+HA]=d+UA,QA[7+HA]=d-UA,QA[1+HA]=x+EA,QA[6+HA]=x-EA,QA[2+HA]=b+VA,QA[5+HA]=b-VA,QA[3+HA]=o+GA,QA[4+HA]=o-GA}for(KA=0;KA<8;++KA){var DA=KA;if(QA[8+DA]==0&&QA[16+DA]==0&&QA[24+DA]==0&&QA[32+DA]==0&&QA[40+DA]==0&&QA[48+DA]==0&&QA[56+DA]==0){CA=F*p[KA+0]+8192>>14,QA[0+DA]=CA,QA[8+DA]=CA,QA[16+DA]=CA,QA[24+DA]=CA,QA[32+DA]=CA,QA[40+DA]=CA,QA[48+DA]=CA,QA[56+DA]=CA;continue}d=F*QA[0+DA]+2048>>12,x=F*QA[32+DA]+2048>>12,b=QA[16+DA],o=QA[48+DA],GA=W*(QA[8+DA]-QA[56+DA])+2048>>12,UA=W*(QA[8+DA]+QA[56+DA])+2048>>12,VA=QA[24+DA],EA=QA[40+DA],CA=d-x+1>>1,d=d+x+1>>1,x=CA,CA=b*G+o*X+2048>>12,b=b*X-o*G+2048>>12,o=CA,CA=GA-EA+1>>1,GA=GA+EA+1>>1,EA=CA,CA=UA+VA+1>>1,VA=UA-VA+1>>1,UA=CA,CA=d-o+1>>1,d=d+o+1>>1,o=CA,CA=x-b+1>>1,x=x+b+1>>1,b=CA,CA=GA*C+UA*J+2048>>12,GA=GA*J-UA*C+2048>>12,UA=CA,CA=VA*Y+EA*B+2048>>12,VA=VA*B-EA*Y+2048>>12,EA=CA,QA[0+DA]=d+UA,QA[56+DA]=d-UA,QA[8+DA]=x+EA,QA[48+DA]=x-EA,QA[16+DA]=b+VA,QA[40+DA]=b-VA,QA[24+DA]=o+GA,QA[32+DA]=o-GA}for(KA=0;KA<64;++KA){var gA=128+(QA[KA]+8>>4);i[KA]=gA<0?0:gA>255?255:gA}}H(q*N*8);var O,k;for(var T=0;T255?255:D}Z.prototype={load:function(L){var z=new XMLHttpRequest;z.open("GET",L,!0),z.responseType="arraybuffer",z.onload=function(){var M=new Uint8Array(z.response||z.mozResponseArrayBuffer);if(this.parse(M),this.onload)this.onload()}.bind(this),z.send(null)},parse:function(L){var z=this.opts.maxResolutionInMP*1000*1000,M=0,N=L.length;function q(){var zA=L[M]<<8|L[M+1];return M+=2,zA}function w(){var zA=q(),uA=L.subarray(M,M+zA-2);return M+=uA.length,uA}function P(zA){var uA=1,MQ=1,bQ,eQ;for(eQ in zA.components)if(zA.components.hasOwnProperty(eQ)){if(bQ=zA.components[eQ],uA>4===0)for(l=0;l<64;l++){var UA=Q[l];EA[UA]=L[M++]}else if(VA>>4===1)for(l=0;l<64;l++){var UA=Q[l];EA[UA]=q()}else throw Error("DQT: invalid table spec");v[VA&15]=EA}break;case 65472:case 65473:case 65474:q(),T={},T.extended=m===65473,T.progressive=m===65474,T.precision=L[M++],T.scanLines=q(),T.samplesPerLine=q(),T.components={},T.componentsOrder=[];var CA=T.scanLines*T.samplesPerLine;if(CA>z){var QA=Math.ceil((CA-z)/1e6);throw Error(`maxResolutionInMP limit exceeded by ${QA}MP`)}var KA=L[M++],HA,DA=0,gA=0;for(p=0;p>4,XA=L[M+1]&15,PA=L[M+2];if(QQ<=0||XA<=0)throw Error("Invalid sampling factor, expected values above 0");T.componentsOrder.push(HA),T.components[HA]={h:QQ,v:XA,quantizationIdx:PA},M+=3}P(T),y.push(T);break;case 65476:var NA=q();for(p=2;p>4===0?h:g)[TA&15]=U(vA,ZQ)}break;case 65501:q(),S=q();break;case 65500:q(),q();break;case 65498:var NQ=q(),CQ=L[M++],SQ=[],LA;for(p=0;p>4],LA.huffmanTableAC=g[IA&15],SQ.push(LA)}var jA=L[M++],tQ=L[M++],IQ=L[M++],vQ=$(L,M,T,SQ,S,jA,tQ,IQ>>4,IQ&15,this.opts);M+=vQ;break;case 65535:if(L[M]!==255)M--;break;default:if(L[M-3]==255&&L[M-2]>=192&&L[M-2]<=254){M-=3;break}else if(m===224||m==225){if(i!==-1)throw Error(`first unknown JPEG marker at offset ${i.toString(16)}, second unknown JPEG marker ${m.toString(16)} at offset ${(M-1).toString(16)}`);i=M-1;let zA=q();if(L[M+zA-2]===255){M+=zA-2;break}}throw Error("unknown JPEG marker "+m.toString(16))}m=q()}if(y.length!=1)throw Error("only single frame JPEGs supported");for(var p=0;pV){var z=Math.ceil((L-V)/1024/1024);throw Error(`maxMemoryUsageInMB limit exceeded by at least ${z}MB`)}I=L}return Z.resetMaxMemoryUsage=function(D){I=0,V=D},Z.getBytesAllocated=function(){return I},Z.requestMemoryAllocation=H,Z}();if(typeof yg<"u")yg.exports=i1A;else if(typeof window<"u")window["jpeg-js"]=window["jpeg-js"]||{},window["jpeg-js"].decode=i1A;function i1A(A,Q={}){var B={colorTransform:void 0,useTArray:!1,formatAsRGBA:!0,tolerantDecoding:!0,maxResolutionInMP:100,maxMemoryUsageInMB:512},Y={...B,...Q},J=new Uint8Array(A),C=new vg;C.opts=Y,vg.resetMaxMemoryUsage(Y.maxMemoryUsageInMB*1024*1024),C.parse(J);var X=Y.formatAsRGBA?4:3,G=C.width*C.height*X;try{vg.requestMemoryAllocation(G);var F={width:C.width,height:C.height,exifBuffer:C.exifBuffer,data:Y.useTArray?new Uint8Array(G):Buffer.alloc(G)};if(C.comments.length>0)F.comments=C.comments}catch(W){if(W instanceof RangeError)throw Error("Could not allocate enough memory for the image. Required: "+G);if(W instanceof ReferenceError){if(W.message==="Buffer is not defined")throw Error("Buffer is not globally defined in this environment. Consider setting useTArray to true")}throw W}return C.copyToImageData(F,Y.formatAsRGBA),F}});var r1A=R((gXY,s1A)=>{var FaQ=p1A(),WaQ=n1A();s1A.exports={encode:FaQ,decode:WaQ}});var gg=R((fXY,o1A)=>{var ZaQ=u("util"),a1A=u("stream"),zC=o1A.exports=function(){a1A.call(this),this._buffers=[],this._buffered=0,this._reads=[],this._paused=!1,this._encoding="utf8",this.writable=!0};ZaQ.inherits(zC,a1A);zC.prototype.read=function(A,Q){this._reads.push({length:Math.abs(A),allowLess:A<0,func:Q}),process.nextTick(function(){if(this._process(),this._paused&&this._reads&&this._reads.length>0)this._paused=!1,this.emit("drain")}.bind(this))};zC.prototype.write=function(A,Q){if(!this.writable)return this.emit("error",Error("Stream not writable")),!1;let B;if(Buffer.isBuffer(A))B=A;else B=Buffer.from(A,Q||this._encoding);if(this._buffers.push(B),this._buffered+=B.length,this._process(),this._reads&&this._reads.length===0)this._paused=!0;return this.writable&&!this._paused};zC.prototype.end=function(A,Q){if(A)this.write(A,Q);if(this.writable=!1,!this._buffers)return;if(this._buffers.length===0)this._end();else this._buffers.push(null),this._process()};zC.prototype.destroySoon=zC.prototype.end;zC.prototype._end=function(){if(this._reads.length>0)this.emit("error",Error("Unexpected end of input"));this.destroy()};zC.prototype.destroy=function(){if(!this._buffers)return;this.writable=!1,this._reads=null,this._buffers=null,this.emit("close")};zC.prototype._processReadAllowingLess=function(A){this._reads.shift();let Q=this._buffers[0];if(Q.length>A.length)this._buffered-=A.length,this._buffers[0]=Q.slice(A.length),A.func.call(this,Q.slice(0,A.length));else this._buffered-=Q.length,this._buffers.shift(),A.func.call(this,Q)};zC.prototype._processRead=function(A){this._reads.shift();let Q=0,B=0,Y=Buffer.alloc(A.length);while(Q0)this._buffers.splice(0,B);this._buffered-=A.length,A.func.call(this,Y)};zC.prototype._process=function(){try{while(this._buffered>0&&this._reads&&this._reads.length>0){let A=this._reads[0];if(A.allowLess)this._processReadAllowingLess(A);else if(this._buffered>=A.length)this._processRead(A);else break}if(this._buffers&&!this.writable)this._end()}catch(A){this.emit("error",A)}}});var xg=R(($aQ)=>{var W7=[{x:[0],y:[0]},{x:[4],y:[0]},{x:[0,4],y:[4]},{x:[2,6],y:[0,4]},{x:[0,2,4,6],y:[2,6]},{x:[1,3,5,7],y:[0,2,4,6]},{x:[0,1,2,3,4,5,6,7],y:[1,3,5,7]}];$aQ.getImagePasses=function(A,Q){let B=[],Y=A%8,J=Q%8,C=(A-Y)/8,X=(Q-J)/8;for(let G=0;G0&&Z>0)B.push({width:W,height:Z,index:G})}return B};$aQ.getInterlaceIterator=function(A){return function(Q,B,Y){let J=Q%W7[Y].x.length,C=(Q-J)/W7[Y].x.length*8+W7[Y].x[J],X=B%W7[Y].y.length,G=(B-X)/W7[Y].y.length*8+W7[Y].y[X];return C*4+G*A*4}}});var fg=R((mXY,t1A)=>{t1A.exports=function(Q,B,Y){let J=Q+B-Y,C=Math.abs(J-Q),X=Math.abs(J-B),G=Math.abs(J-Y);if(C<=X&&C<=G)return Q;if(X<=G)return B;return Y}});var bg=R((uXY,A6A)=>{var KaQ=xg(),VaQ=fg();function e1A(A,Q,B){let Y=A*Q;if(B!==8)Y=Math.ceil(Y/(8/B));return Y}var WU=A6A.exports=function(A,Q){let{width:B,height:Y,interlace:J,bpp:C,depth:X}=A;if(this.read=Q.read,this.write=Q.write,this.complete=Q.complete,this._imageIndex=0,this._images=[],J){let G=KaQ.getImagePasses(B,Y);for(let F=0;FJ?Q[C-Y]:0;Q[C]=X+G}};WU.prototype._unFilterType2=function(A,Q,B){let Y=this._lastLine;for(let J=0;JJ?Q[X-Y]:0,Z=Math.floor((W+F)/2);Q[X]=G+Z}};WU.prototype._unFilterType4=function(A,Q,B){let Y=this._xComparison,J=Y-1,C=this._lastLine;for(let X=0;XJ?Q[X-Y]:0,Z=X>J&&C?C[X-Y]:0,U=VaQ(W,F,Z);Q[X]=G+U}};WU.prototype._reverseFilterLine=function(A){let Q=A[0],B,Y=this._images[this._imageIndex],J=Y.byteWidth;if(Q===0)B=A.slice(1,J+1);else switch(B=Buffer.alloc(J),Q){case 1:this._unFilterType1(A,B,J);break;case 2:this._unFilterType2(A,B,J);break;case 3:this._unFilterType3(A,B,J);break;case 4:this._unFilterType4(A,B,J);break;default:throw Error("Unrecognised filter type - "+Q)}if(this.write(B),Y.lineIndex++,Y.lineIndex>=Y.height)this._lastLine=null,this._imageIndex++,Y=this._images[this._imageIndex];else this._lastLine=B;if(Y)this.read(Y.byteWidth+1,this._reverseFilterLine.bind(this));else this._lastLine=null,this.complete()}});var Y6A=R((dXY,B6A)=>{var IaQ=u("util"),Q6A=gg(),HaQ=bg(),DaQ=B6A.exports=function(A){Q6A.call(this);let Q=[],B=this;this._filter=new HaQ(A,{read:this.read.bind(this),write:function(Y){Q.push(Y)},complete:function(){B.emit("complete",Buffer.concat(Q))}}),this._filter.start()};IaQ.inherits(DaQ,Q6A)});var ZU=R((cXY,J6A)=>{J6A.exports={PNG_SIGNATURE:[137,80,78,71,13,10,26,10],TYPE_IHDR:1229472850,TYPE_IEND:1229278788,TYPE_IDAT:1229209940,TYPE_PLTE:1347179589,TYPE_tRNS:1951551059,TYPE_gAMA:1732332865,COLORTYPE_GRAYSCALE:0,COLORTYPE_PALETTE:1,COLORTYPE_COLOR:2,COLORTYPE_ALPHA:4,COLORTYPE_PALETTE_COLOR:3,COLORTYPE_COLOR_ALPHA:6,COLORTYPE_TO_BPP_MAP:{0:1,2:3,3:1,4:2,6:4},GAMMA_DIVISION:1e5}});var dg=R((lXY,C6A)=>{var mg=[];(function(){for(let A=0;A<256;A++){let Q=A;for(let B=0;B<8;B++)if(Q&1)Q=3988292384^Q>>>1;else Q=Q>>>1;mg[A]=Q}})();var ug=C6A.exports=function(){this._crc=-1};ug.prototype.write=function(A){for(let Q=0;Q>>8;return!0};ug.prototype.crc32=function(){return this._crc^-1};ug.crc32=function(A){let Q=-1;for(let B=0;B>>8;return Q^-1}});var cg=R((pXY,X6A)=>{var OY=ZU(),NaQ=dg(),uY=X6A.exports=function(A,Q){this._options=A,A.checkCRC=A.checkCRC!==!1,this._hasIHDR=!1,this._hasIEND=!1,this._emittedHeadersFinished=!1,this._palette=[],this._colorType=0,this._chunks={},this._chunks[OY.TYPE_IHDR]=this._handleIHDR.bind(this),this._chunks[OY.TYPE_IEND]=this._handleIEND.bind(this),this._chunks[OY.TYPE_IDAT]=this._handleIDAT.bind(this),this._chunks[OY.TYPE_PLTE]=this._handlePLTE.bind(this),this._chunks[OY.TYPE_tRNS]=this._handleTRNS.bind(this),this._chunks[OY.TYPE_gAMA]=this._handleGAMA.bind(this),this.read=Q.read,this.error=Q.error,this.metadata=Q.metadata,this.gamma=Q.gamma,this.transColor=Q.transColor,this.palette=Q.palette,this.parsed=Q.parsed,this.inflateData=Q.inflateData,this.finished=Q.finished,this.simpleTransparency=Q.simpleTransparency,this.headersFinished=Q.headersFinished||function(){}};uY.prototype.start=function(){this.read(OY.PNG_SIGNATURE.length,this._parseSignature.bind(this))};uY.prototype._parseSignature=function(A){let Q=OY.PNG_SIGNATURE;for(let B=0;Bthis._palette.length){this.error(Error("More transparent colors than palette size"));return}for(let Q=0;Q0)this._handleIDAT(B);else this._handleChunkEnd()};uY.prototype._handleIEND=function(A){this.read(A,this._parseIEND.bind(this))};uY.prototype._parseIEND=function(A){if(this._crc.write(A),this._hasIEND=!0,this._handleChunkEnd(),this.finished)this.finished()}});var lg=R((waQ)=>{var G6A=xg(),LaQ=[function(){},function(A,Q,B,Y){if(Y===Q.length)throw Error("Ran out of data");let J=Q[Y];A[B]=J,A[B+1]=J,A[B+2]=J,A[B+3]=255},function(A,Q,B,Y){if(Y+1>=Q.length)throw Error("Ran out of data");let J=Q[Y];A[B]=J,A[B+1]=J,A[B+2]=J,A[B+3]=Q[Y+1]},function(A,Q,B,Y){if(Y+2>=Q.length)throw Error("Ran out of data");A[B]=Q[Y],A[B+1]=Q[Y+1],A[B+2]=Q[Y+2],A[B+3]=255},function(A,Q,B,Y){if(Y+3>=Q.length)throw Error("Ran out of data");A[B]=Q[Y],A[B+1]=Q[Y+1],A[B+2]=Q[Y+2],A[B+3]=Q[Y+3]}],qaQ=[function(){},function(A,Q,B,Y){let J=Q[0];A[B]=J,A[B+1]=J,A[B+2]=J,A[B+3]=Y},function(A,Q,B){let Y=Q[0];A[B]=Y,A[B+1]=Y,A[B+2]=Y,A[B+3]=Q[1]},function(A,Q,B,Y){A[B]=Q[0],A[B+1]=Q[1],A[B+2]=Q[2],A[B+3]=Y},function(A,Q,B){A[B]=Q[0],A[B+1]=Q[1],A[B+2]=Q[2],A[B+3]=Q[3]}];function MaQ(A,Q){let B=[],Y=0;function J(){if(Y===A.length)throw Error("Ran out of data");let C=A[Y];Y++;let X,G,F,W,Z,U,$,E;switch(Q){default:throw Error("unrecognised depth");case 16:$=A[Y],Y++,B.push((C<<8)+$);break;case 4:$=C&15,E=C>>4,B.push(E,$);break;case 2:Z=C&3,U=C>>2&3,$=C>>4&3,E=C>>6&3,B.push(E,$,U,Z);break;case 1:X=C&1,G=C>>1&1,F=C>>2&1,W=C>>3&1,Z=C>>4&1,U=C>>5&1,$=C>>6&1,E=C>>7&1,B.push(E,$,U,Z,W,F,G,X);break}}return{get:function(C){while(B.length{function OaQ(A,Q,B,Y,J){let C=0;for(let X=0;X{var SaQ=u("util"),ig=u("zlib"),W6A=gg(),kaQ=Y6A(),_aQ=cg(),vaQ=lg(),yaQ=pg(),v1=Z6A.exports=function(A){W6A.call(this),this._parser=new _aQ(A,{read:this.read.bind(this),error:this._handleError.bind(this),metadata:this._handleMetaData.bind(this),gamma:this.emit.bind(this,"gamma"),palette:this._handlePalette.bind(this),transColor:this._handleTransColor.bind(this),finished:this._finished.bind(this),inflateData:this._inflateData.bind(this),simpleTransparency:this._simpleTransparency.bind(this),headersFinished:this._headersFinished.bind(this)}),this._options=A,this.writable=!0,this._parser.start()};SaQ.inherits(v1,W6A);v1.prototype._handleError=function(A){if(this.emit("error",A),this.writable=!1,this.destroy(),this._inflate&&this._inflate.destroy)this._inflate.destroy();if(this._filter)this._filter.destroy(),this._filter.on("error",function(){});this.errord=!0};v1.prototype._inflateData=function(A){if(!this._inflate)if(this._bitmapInfo.interlace)this._inflate=ig.createInflate(),this._inflate.on("error",this.emit.bind(this,"error")),this._filter.on("complete",this._complete.bind(this)),this._inflate.pipe(this._filter);else{let B=((this._bitmapInfo.width*this._bitmapInfo.bpp*this._bitmapInfo.depth+7>>3)+1)*this._bitmapInfo.height,Y=Math.max(B,ig.Z_MIN_CHUNK);this._inflate=ig.createInflate({chunkSize:Y});let J=B,C=this.emit.bind(this,"error");this._inflate.on("error",function(G){if(!J)return;C(G)}),this._filter.on("complete",this._complete.bind(this));let X=this._filter.write.bind(this._filter);this._inflate.on("data",function(G){if(!J)return;if(G.length>J)G=G.slice(0,J);J-=G.length,X(G)}),this._inflate.on("end",this._filter.end.bind(this._filter))}this._inflate.write(A)};v1.prototype._handleMetaData=function(A){this._metaData=A,this._bitmapInfo=Object.create(A),this._filter=new kaQ(this._bitmapInfo)};v1.prototype._handleTransColor=function(A){this._bitmapInfo.transColor=A};v1.prototype._handlePalette=function(A){this._bitmapInfo.palette=A};v1.prototype._simpleTransparency=function(){this._metaData.alpha=!0};v1.prototype._headersFinished=function(){this.emit("metadata",this._metaData)};v1.prototype._finished=function(){if(this.errord)return;if(!this._inflate)this.emit("error","No Inflate block");else this._inflate.end()};v1.prototype._complete=function(A){if(this.errord)return;let Q;try{let B=vaQ.dataToBitMap(A,this._bitmapInfo);Q=yaQ(B,this._bitmapInfo,this._options.skipRescale),B=null}catch(B){this._handleError(B);return}this.emit("parsed",Q)}});var E6A=R((rXY,U6A)=>{var W5=ZU();U6A.exports=function(A,Q,B,Y){let J=[W5.COLORTYPE_COLOR_ALPHA,W5.COLORTYPE_ALPHA].indexOf(Y.colorType)!==-1;if(Y.colorType===Y.inputColorType){let K=function(){let I=new ArrayBuffer(2);return new DataView(I).setInt16(0,256,!0),new Int16Array(I)[0]!==256}();if(Y.bitDepth===8||Y.bitDepth===16&&K)return A}let C=Y.bitDepth!==16?A:new Uint16Array(A.buffer),X=255,G=W5.COLORTYPE_TO_BPP_MAP[Y.inputColorType];if(G===4&&!Y.inputHasAlpha)G=3;let F=W5.COLORTYPE_TO_BPP_MAP[Y.colorType];if(Y.bitDepth===16)X=65535,F*=2;let W=Buffer.alloc(Q*B*F),Z=0,U=0,$=Y.bgColor||{};if($.red===void 0)$.red=X;if($.green===void 0)$.green=X;if($.blue===void 0)$.blue=X;function E(){let K,I,V,H=X;switch(Y.inputColorType){case W5.COLORTYPE_COLOR_ALPHA:H=C[Z+3],K=C[Z],I=C[Z+1],V=C[Z+2];break;case W5.COLORTYPE_COLOR:K=C[Z],I=C[Z+1],V=C[Z+2];break;case W5.COLORTYPE_ALPHA:H=C[Z+1],K=C[Z],I=K,V=K;break;case W5.COLORTYPE_GRAYSCALE:K=C[Z],I=K,V=K;break;default:throw Error("input color type:"+Y.inputColorType+" is not supported at present")}if(Y.inputHasAlpha){if(!J)H/=X,K=Math.min(Math.max(Math.round((1-H)*$.red+H*K),0),X),I=Math.min(Math.max(Math.round((1-H)*$.green+H*I),0),X),V=Math.min(Math.max(Math.round((1-H)*$.blue+H*V),0),X)}return{red:K,green:I,blue:V,alpha:H}}for(let K=0;K{var K6A=fg();function haQ(A,Q,B,Y,J){for(let C=0;C=C?A[Q+X-C]:0,F=A[Q+X]-G;Y[J+X]=F}}function faQ(A,Q,B,Y){let J=0;for(let C=0;C=Y?A[Q+C-Y]:0,G=A[Q+C]-X;J+=Math.abs(G)}return J}function baQ(A,Q,B,Y,J){for(let C=0;C0?A[Q+C-B]:0,G=A[Q+C]-X;Y[J+C]=G}}function maQ(A,Q,B){let Y=0,J=Q+B;for(let C=Q;C0?A[C-B]:0,G=A[C]-X;Y+=Math.abs(G)}return Y}function uaQ(A,Q,B,Y,J,C){for(let X=0;X=C?A[Q+X-C]:0,F=Q>0?A[Q+X-B]:0,W=A[Q+X]-(G+F>>1);Y[J+X]=W}}function daQ(A,Q,B,Y){let J=0;for(let C=0;C=Y?A[Q+C-Y]:0,G=Q>0?A[Q+C-B]:0,F=A[Q+C]-(X+G>>1);J+=Math.abs(F)}return J}function caQ(A,Q,B,Y,J,C){for(let X=0;X=C?A[Q+X-C]:0,F=Q>0?A[Q+X-B]:0,W=Q>0&&X>=C?A[Q+X-(B+C)]:0,Z=A[Q+X]-K6A(G,F,W);Y[J+X]=Z}}function laQ(A,Q,B,Y){let J=0;for(let C=0;C=Y?A[Q+C-Y]:0,G=Q>0?A[Q+C-B]:0,F=Q>0&&C>=Y?A[Q+C-(B+Y)]:0,W=A[Q+C]-K6A(X,G,F);J+=Math.abs(W)}return J}var paQ={0:haQ,1:xaQ,2:baQ,3:uaQ,4:caQ},iaQ={0:gaQ,1:faQ,2:maQ,3:daQ,4:laQ};V6A.exports=function(A,Q,B,Y,J){let C;if(!("filterType"in Y)||Y.filterType===-1)C=[0,1,2,3,4];else if(typeof Y.filterType==="number")C=[Y.filterType];else throw Error("unrecognised filter types");if(Y.bitDepth===16)J*=2;let X=Q*J,G=0,F=0,W=Buffer.alloc((X+1)*B),Z=C[0];for(let U=0;U1){let $=1/0;for(let E=0;E{var NJ=ZU(),naQ=dg(),saQ=E6A(),raQ=I6A(),aaQ=u("zlib"),Z7=H6A.exports=function(A){if(this._options=A,A.deflateChunkSize=A.deflateChunkSize||32768,A.deflateLevel=A.deflateLevel!=null?A.deflateLevel:9,A.deflateStrategy=A.deflateStrategy!=null?A.deflateStrategy:3,A.inputHasAlpha=A.inputHasAlpha!=null?A.inputHasAlpha:!0,A.deflateFactory=A.deflateFactory||aaQ.createDeflate,A.bitDepth=A.bitDepth||8,A.colorType=typeof A.colorType==="number"?A.colorType:NJ.COLORTYPE_COLOR_ALPHA,A.inputColorType=typeof A.inputColorType==="number"?A.inputColorType:NJ.COLORTYPE_COLOR_ALPHA,[NJ.COLORTYPE_GRAYSCALE,NJ.COLORTYPE_COLOR,NJ.COLORTYPE_COLOR_ALPHA,NJ.COLORTYPE_ALPHA].indexOf(A.colorType)===-1)throw Error("option color type:"+A.colorType+" is not supported at present");if([NJ.COLORTYPE_GRAYSCALE,NJ.COLORTYPE_COLOR,NJ.COLORTYPE_COLOR_ALPHA,NJ.COLORTYPE_ALPHA].indexOf(A.inputColorType)===-1)throw Error("option input color type:"+A.inputColorType+" is not supported at present");if(A.bitDepth!==8&&A.bitDepth!==16)throw Error("option bit depth:"+A.bitDepth+" is not supported at present")};Z7.prototype.getDeflateOptions=function(){return{chunkSize:this._options.deflateChunkSize,level:this._options.deflateLevel,strategy:this._options.deflateStrategy}};Z7.prototype.createDeflate=function(){return this._options.deflateFactory(this.getDeflateOptions())};Z7.prototype.filterData=function(A,Q,B){let Y=saQ(A,Q,B,this._options),J=NJ.COLORTYPE_TO_BPP_MAP[this._options.colorType];return raQ(Y,Q,B,this._options,J)};Z7.prototype._packChunk=function(A,Q){let B=Q?Q.length:0,Y=Buffer.alloc(B+12);if(Y.writeUInt32BE(B,0),Y.writeUInt32BE(A,4),Q)Q.copy(Y,8);return Y.writeInt32BE(naQ.crc32(Y.slice(4,Y.length-4)),Y.length-4),Y};Z7.prototype.packGAMA=function(A){let Q=Buffer.alloc(4);return Q.writeUInt32BE(Math.floor(A*NJ.GAMMA_DIVISION),0),this._packChunk(NJ.TYPE_gAMA,Q)};Z7.prototype.packIHDR=function(A,Q){let B=Buffer.alloc(13);return B.writeUInt32BE(A,0),B.writeUInt32BE(Q,4),B[8]=this._options.bitDepth,B[9]=this._options.colorType,B[10]=0,B[11]=0,B[12]=0,this._packChunk(NJ.TYPE_IHDR,B)};Z7.prototype.packIDAT=function(A){return this._packChunk(NJ.TYPE_IDAT,A)};Z7.prototype.packIEND=function(){return this._packChunk(NJ.TYPE_IEND,null)}});var q6A=R((tXY,L6A)=>{var oaQ=u("util"),D6A=u("stream"),taQ=ZU(),eaQ=ng(),N6A=L6A.exports=function(A){D6A.call(this);let Q=A||{};this._packer=new eaQ(Q),this._deflate=this._packer.createDeflate(),this.readable=!0};oaQ.inherits(N6A,D6A);N6A.prototype.pack=function(A,Q,B,Y){if(this.emit("data",Buffer.from(taQ.PNG_SIGNATURE)),this.emit("data",this._packer.packIHDR(Q,B)),Y)this.emit("data",this._packer.packGAMA(Y));let J=this._packer.filterData(A,Q,B);this._deflate.on("error",this.emit.bind(this,"error")),this._deflate.on("data",function(C){this.emit("data",this._packer.packIDAT(C))}.bind(this)),this._deflate.on("end",function(){this.emit("data",this._packer.packIEND()),this.emit("end")}.bind(this)),this._deflate.end(J)}});var O6A=R((VH,j6A)=>{var M6A=u("assert").ok,$U=u("zlib"),AoQ=u("util"),z6A=u("buffer").kMaxLength;function mW(A){if(!(this instanceof mW))return new mW(A);if(A&&A.chunkSize<$U.Z_MIN_CHUNK)A.chunkSize=$U.Z_MIN_CHUNK;if($U.Inflate.call(this,A),this._offset=this._offset===void 0?this._outOffset:this._offset,this._buffer=this._buffer||this._outBuffer,A&&A.maxLength!=null)this._maxLength=A.maxLength}function QoQ(A){return new mW(A)}function R6A(A,Q){if(Q)process.nextTick(Q);if(!A._handle)return;A._handle.close(),A._handle=null}mW.prototype._processChunk=function(A,Q,B){if(typeof B==="function")return $U.Inflate._processChunk.call(this,A,Q,B);let Y=this,J=A&&A.length,C=this._chunkSize-this._offset,X=this._maxLength,G=0,F=[],W=0,Z;this.on("error",function(K){Z=K});function U(K,I){if(Y._hadError)return;let V=C-I;if(M6A(V>=0,"have should not go down"),V>0){let H=Y._buffer.slice(Y._offset,Y._offset+V);if(Y._offset+=V,H.length>X)H=H.slice(0,X);if(F.push(H),W+=H.length,X-=H.length,X===0)return!1}if(I===0||Y._offset>=Y._chunkSize)C=Y._chunkSize,Y._offset=0,Y._buffer=Buffer.allocUnsafe(Y._chunkSize);if(I===0)return G+=J-K,J=K,!0;return!1}M6A(this._handle,"zlib binding closed");let $;do $=this._handle.writeSync(Q,A,G,J,this._buffer,this._offset,C),$=$||this._writeState;while(!this._hadError&&U($[0],$[1]));if(this._hadError)throw Z;if(W>=z6A)throw R6A(this),RangeError("Cannot create final Buffer. It would be larger than 0x"+z6A.toString(16)+" bytes");let E=Buffer.concat(F,W);return R6A(this),E};AoQ.inherits(mW,$U.Inflate);function BoQ(A,Q){if(typeof Q==="string")Q=Buffer.from(Q);if(!(Q instanceof Buffer))throw TypeError("Not a string or buffer");let B=A._finishFlushFlag;if(B==null)B=$U.Z_FINISH;return A._processChunk(Q,B)}function w6A(A,Q){return BoQ(new mW(Q),A)}j6A.exports=VH=w6A;VH.Inflate=mW;VH.createInflate=QoQ;VH.inflateSync=w6A});var sg=R((eXY,T6A)=>{var P6A=T6A.exports=function(A){this._buffer=A,this._reads=[]};P6A.prototype.read=function(A,Q){this._reads.push({length:Math.abs(A),allowLess:A<0,func:Q})};P6A.prototype.process=function(){while(this._reads.length>0&&this._buffer.length){let A=this._reads[0];if(this._buffer.length&&(this._buffer.length>=A.length||A.allowLess)){this._reads.shift();let Q=this._buffer;this._buffer=Q.slice(A.length),A.func.call(this,Q.slice(0,A.length))}else break}if(this._reads.length>0)throw Error("There are some read requests waitng on finished stream");if(this._buffer.length>0)throw Error("unrecognised content at end of stream")}});var S6A=R((CoQ)=>{var YoQ=sg(),JoQ=bg();CoQ.process=function(A,Q){let B=[],Y=new YoQ(A);return new JoQ(Q,{read:Y.read.bind(Y),write:function(C){B.push(C)},complete:function(){}}).start(),Y.process(),Buffer.concat(B)}});var y6A=R((QGY,v6A)=>{var k6A=!0,_6A=u("zlib"),GoQ=O6A();if(!_6A.deflateSync)k6A=!1;var FoQ=sg(),WoQ=S6A(),ZoQ=cg(),$oQ=lg(),UoQ=pg();v6A.exports=function(A,Q){if(!k6A)throw Error("To use the sync capability of this library in old node versions, please pin pngjs to v2.3.0");let B;function Y(z){B=z}let J;function C(z){J=z}function X(z){J.transColor=z}function G(z){J.palette=z}function F(){J.alpha=!0}let W;function Z(z){W=z}let U=[];function $(z){U.push(z)}let E=new FoQ(A);if(new ZoQ(Q,{read:E.read.bind(E),error:Y,metadata:C,gamma:Z,palette:G,transColor:X,inflateData:$,simpleTransparency:F}).start(),E.process(),B)throw B;let I=Buffer.concat(U);U.length=0;let V;if(J.interlace)V=_6A.inflateSync(I);else{let M=((J.width*J.bpp*J.depth+7>>3)+1)*J.height;V=GoQ(I,{chunkSize:M,maxLength:M})}if(I=null,!V||!V.length)throw Error("bad png - invalid inflate data response");let H=WoQ.process(V,J);I=null;let D=$oQ.dataToBitMap(H,J);H=null;let L=UoQ(D,J,Q.skipRescale);return J.data=L,J.gamma=W||0,J}});var f6A=R((BGY,x6A)=>{var h6A=!0,g6A=u("zlib");if(!g6A.deflateSync)h6A=!1;var EoQ=ZU(),KoQ=ng();x6A.exports=function(A,Q){if(!h6A)throw Error("To use the sync capability of this library in old node versions, please pin pngjs to v2.3.0");let Y=new KoQ(Q||{}),J=[];if(J.push(Buffer.from(EoQ.PNG_SIGNATURE)),J.push(Y.packIHDR(A.width,A.height)),A.gamma)J.push(Y.packGAMA(A.gamma));let C=Y.filterData(A.data,A.width,A.height),X=g6A.deflateSync(C,Y.getDeflateOptions());if(C=null,!X||!X.length)throw Error("bad png - invalid compressed data response");return J.push(Y.packIDAT(X)),J.push(Y.packIEND()),Buffer.concat(J)}});var b6A=R((HoQ)=>{var VoQ=y6A(),IoQ=f6A();HoQ.read=function(A,Q){return VoQ(A,Q||{})};HoQ.write=function(A,Q){return IoQ(A,Q)}});var u6A=R((RoQ)=>{var LoQ=u("util"),m6A=u("stream"),qoQ=$6A(),MoQ=q6A(),zoQ=b6A(),oJ=RoQ.PNG=function(A){if(m6A.call(this),A=A||{},this.width=A.width|0,this.height=A.height|0,this.data=this.width>0&&this.height>0?Buffer.alloc(4*this.width*this.height):null,A.fill&&this.data)this.data.fill(0);this.gamma=0,this.readable=this.writable=!0,this._parser=new qoQ(A),this._parser.on("error",this.emit.bind(this,"error")),this._parser.on("close",this._handleClose.bind(this)),this._parser.on("metadata",this._metadata.bind(this)),this._parser.on("gamma",this._gamma.bind(this)),this._parser.on("parsed",function(Q){this.data=Q,this.emit("parsed",Q)}.bind(this)),this._packer=new MoQ(A),this._packer.on("data",this.emit.bind(this,"data")),this._packer.on("end",this.emit.bind(this,"end")),this._parser.on("close",this._handleClose.bind(this)),this._packer.on("error",this.emit.bind(this,"error"))};LoQ.inherits(oJ,m6A);oJ.sync=zoQ;oJ.prototype.pack=function(){if(!this.data||!this.data.length)return this.emit("error","No data provided"),this;return process.nextTick(function(){this._packer.pack(this.data,this.width,this.height,this.gamma)}.bind(this)),this};oJ.prototype.parse=function(A,Q){if(Q){let B,Y;B=function(J){this.removeListener("error",Y),this.data=J,Q(null,this)}.bind(this),Y=function(J){this.removeListener("parsed",B),Q(J,null)}.bind(this),this.once("parsed",B),this.once("error",Y)}return this.end(A),this};oJ.prototype.write=function(A){return this._parser.write(A),!0};oJ.prototype.end=function(A){this._parser.end(A)};oJ.prototype._metadata=function(A){this.width=A.width,this.height=A.height,this.emit("metadata",A)};oJ.prototype._gamma=function(A){this.gamma=A};oJ.prototype._handleClose=function(){if(!this._parser.writable&&!this._packer.readable)this.emit("close")};oJ.bitblt=function(A,Q,B,Y,J,C,X,G){if(B|=0,Y|=0,J|=0,C|=0,X|=0,G|=0,B>A.width||Y>A.height||B+J>A.width||Y+C>A.height)throw Error("bitblt reading outside image");if(X>Q.width||G>Q.height||X+J>Q.width||G+C>Q.height)throw Error("bitblt writing outside image");for(let F=0;F{var PoQ=typeof Uint8Array<"u"&&typeof Uint16Array<"u"&&typeof Int32Array<"u";function ToQ(A,Q){return Object.prototype.hasOwnProperty.call(A,Q)}rg.assign=function(A){var Q=Array.prototype.slice.call(arguments,1);while(Q.length){var B=Q.shift();if(!B)continue;if(typeof B!=="object")throw TypeError(B+"must be non-object");for(var Y in B)if(ToQ(B,Y))A[Y]=B[Y]}return A};rg.shrinkBuf=function(A,Q){if(A.length===Q)return A;if(A.subarray)return A.subarray(0,Q);return A.length=Q,A};var SoQ={arraySet:function(A,Q,B,Y,J){if(Q.subarray&&A.subarray){A.set(Q.subarray(B,B+Y),J);return}for(var C=0;C{var voQ=qX(),yoQ=4,c6A=0,l6A=1,hoQ=2;function EU(A){var Q=A.length;while(--Q>=0)A[Q]=0}var goQ=0,a6A=1,xoQ=2,foQ=3,boQ=258,Yx=29,MH=256,DH=MH+1+Yx,UU=30,Jx=19,o6A=2*DH+1,uW=15,og=16,moQ=7,Cx=256,t6A=16,e6A=17,AXA=18,Qx=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],c3=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],uoQ=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],QXA=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],doQ=512,MX=Array((DH+2)*2);EU(MX);var HH=Array(UU*2);EU(HH);var NH=Array(doQ);EU(NH);var LH=Array(boQ-foQ+1);EU(LH);var Xx=Array(Yx);EU(Xx);var l3=Array(UU);EU(l3);function tg(A,Q,B,Y,J){this.static_tree=A,this.extra_bits=Q,this.extra_base=B,this.elems=Y,this.max_length=J,this.has_stree=A&&A.length}var BXA,YXA,JXA;function eg(A,Q){this.dyn_tree=A,this.max_code=0,this.stat_desc=Q}function CXA(A){return A<256?NH[A]:NH[256+(A>>>7)]}function qH(A,Q){A.pending_buf[A.pending++]=Q&255,A.pending_buf[A.pending++]=Q>>>8&255}function P9(A,Q,B){if(A.bi_valid>og-B)A.bi_buf|=Q<>og-A.bi_valid,A.bi_valid+=B-og;else A.bi_buf|=Q<>>=1,B<<=1;while(--Q>0);return B>>>1}function coQ(A){if(A.bi_valid===16)qH(A,A.bi_buf),A.bi_buf=0,A.bi_valid=0;else if(A.bi_valid>=8)A.pending_buf[A.pending++]=A.bi_buf&255,A.bi_buf>>=8,A.bi_valid-=8}function loQ(A,Q){var{dyn_tree:B,max_code:Y}=Q,J=Q.stat_desc.static_tree,C=Q.stat_desc.has_stree,X=Q.stat_desc.extra_bits,G=Q.stat_desc.extra_base,F=Q.stat_desc.max_length,W,Z,U,$,E,K,I=0;for($=0;$<=uW;$++)A.bl_count[$]=0;B[A.heap[A.heap_max]*2+1]=0;for(W=A.heap_max+1;WF)$=F,I++;if(B[Z*2+1]=$,Z>Y)continue;if(A.bl_count[$]++,E=0,Z>=G)E=X[Z-G];if(K=B[Z*2],A.opt_len+=K*($+E),C)A.static_len+=K*(J[Z*2+1]+E)}if(I===0)return;do{$=F-1;while(A.bl_count[$]===0)$--;A.bl_count[$]--,A.bl_count[$+1]+=2,A.bl_count[F]--,I-=2}while(I>0);for($=F;$!==0;$--){Z=A.bl_count[$];while(Z!==0){if(U=A.heap[--W],U>Y)continue;if(B[U*2+1]!==$)A.opt_len+=($-B[U*2+1])*B[U*2],B[U*2+1]=$;Z--}}}function GXA(A,Q,B){var Y=Array(uW+1),J=0,C,X;for(C=1;C<=uW;C++)Y[C]=J=J+B[C-1]<<1;for(X=0;X<=Q;X++){var G=A[X*2+1];if(G===0)continue;A[X*2]=XXA(Y[G]++,G)}}function poQ(){var A,Q,B,Y,J,C=Array(uW+1);B=0;for(Y=0;Y>=7;for(;Y8)qH(A,A.bi_buf);else if(A.bi_valid>0)A.pending_buf[A.pending++]=A.bi_buf;A.bi_buf=0,A.bi_valid=0}function ioQ(A,Q,B,Y){if(WXA(A),Y)qH(A,B),qH(A,~B);voQ.arraySet(A.pending_buf,A.window,Q,B,A.pending),A.pending+=B}function p6A(A,Q,B,Y){var J=Q*2,C=B*2;return A[J]>1;X>=1;X--)Ax(A,B,X);W=C;do X=A.heap[1],A.heap[1]=A.heap[A.heap_len--],Ax(A,B,1),G=A.heap[1],A.heap[--A.heap_max]=X,A.heap[--A.heap_max]=G,B[W*2]=B[X*2]+B[G*2],A.depth[W]=(A.depth[X]>=A.depth[G]?A.depth[X]:A.depth[G])+1,B[X*2+1]=B[G*2+1]=W,A.heap[1]=W++,Ax(A,B,1);while(A.heap_len>=2);A.heap[--A.heap_max]=A.heap[1],loQ(A,Q),GXA(B,F,A.bl_count)}function n6A(A,Q,B){var Y,J=-1,C,X=Q[1],G=0,F=7,W=4;if(X===0)F=138,W=3;Q[(B+1)*2+1]=65535;for(Y=0;Y<=B;Y++){if(C=X,X=Q[(Y+1)*2+1],++G=3;Q--)if(A.bl_tree[QXA[Q]*2+1]!==0)break;return A.opt_len+=3*(Q+1)+5+5+4,Q}function soQ(A,Q,B,Y){var J;P9(A,Q-257,5),P9(A,B-1,5),P9(A,Y-4,4);for(J=0;J>>=1)if(Q&1&&A.dyn_ltree[B*2]!==0)return c6A;if(A.dyn_ltree[18]!==0||A.dyn_ltree[20]!==0||A.dyn_ltree[26]!==0)return l6A;for(B=32;B0){if(A.strm.data_type===hoQ)A.strm.data_type=roQ(A);if(Bx(A,A.l_desc),Bx(A,A.d_desc),X=noQ(A),J=A.opt_len+3+7>>>3,C=A.static_len+3+7>>>3,C<=J)J=C}else J=C=B+5;if(B+4<=J&&Q!==-1)ZXA(A,Q,B,Y);else if(A.strategy===yoQ||C===J)P9(A,(a6A<<1)+(Y?1:0),3),i6A(A,MX,HH);else P9(A,(xoQ<<1)+(Y?1:0),3),soQ(A,A.l_desc.max_code+1,A.d_desc.max_code+1,X+1),i6A(A,A.dyn_ltree,A.dyn_dtree);if(FXA(A),Y)WXA(A)}function eoQ(A,Q,B){if(A.pending_buf[A.d_buf+A.last_lit*2]=Q>>>8&255,A.pending_buf[A.d_buf+A.last_lit*2+1]=Q&255,A.pending_buf[A.l_buf+A.last_lit]=B&255,A.last_lit++,Q===0)A.dyn_ltree[B*2]++;else A.matches++,Q--,A.dyn_ltree[(LH[B]+MH+1)*2]++,A.dyn_dtree[CXA(Q)*2]++;return A.last_lit===A.lit_bufsize-1}AtQ._tr_init=aoQ;AtQ._tr_stored_block=ZXA;AtQ._tr_flush_block=toQ;AtQ._tr_tally=eoQ;AtQ._tr_align=ooQ});var Gx=R((UGY,UXA)=>{function XtQ(A,Q,B,Y){var J=A&65535|0,C=A>>>16&65535|0,X=0;while(B!==0){X=B>2000?2000:B,B-=X;do J=J+Q[Y++]|0,C=C+J|0;while(--X);J%=65521,C%=65521}return J|C<<16|0}UXA.exports=XtQ});var Fx=R((EGY,EXA)=>{function GtQ(){var A,Q=[];for(var B=0;B<256;B++){A=B;for(var Y=0;Y<8;Y++)A=A&1?3988292384^A>>>1:A>>>1;Q[B]=A}return Q}var FtQ=GtQ();function WtQ(A,Q,B,Y){var J=FtQ,C=Y+B;A^=-1;for(var X=Y;X>>8^J[(A^Q[X])&255];return A^-1}EXA.exports=WtQ});var p3=R((KGY,KXA)=>{KXA.exports={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}});var zXA=R((dtQ)=>{var tJ=qX(),Z5=$XA(),DXA=Gx(),$7=Fx(),ZtQ=p3(),pW=0,$tQ=1,UtQ=3,I7=4,VXA=5,g1=0,IXA=1,$5=-2,EtQ=-3,Wx=-5,KtQ=-1,VtQ=1,i3=2,ItQ=3,HtQ=4,DtQ=0,NtQ=2,a3=8,LtQ=9,qtQ=15,MtQ=8,ztQ=29,RtQ=256,$x=RtQ+1+ztQ,wtQ=30,jtQ=19,OtQ=2*$x+1,PtQ=15,IB=3,K7=258,RC=K7+IB+1,TtQ=32,o3=42,Ux=69,n3=73,s3=91,r3=103,dW=113,RH=666,PY=1,wH=2,cW=3,IU=4,StQ=3;function V7(A,Q){return A.msg=ZtQ[Q],Q}function HXA(A){return(A<<1)-(A>4?9:0)}function E7(A){var Q=A.length;while(--Q>=0)A[Q]=0}function U7(A){var Q=A.state,B=Q.pending;if(B>A.avail_out)B=A.avail_out;if(B===0)return;if(tJ.arraySet(A.output,Q.pending_buf,Q.pending_out,B,A.next_out),A.next_out+=B,Q.pending_out+=B,A.total_out+=B,A.avail_out-=B,Q.pending-=B,Q.pending===0)Q.pending_out=0}function BJ(A,Q){Z5._tr_flush_block(A,A.block_start>=0?A.block_start:-1,A.strstart-A.block_start,Q),A.block_start=A.strstart,U7(A.strm)}function TB(A,Q){A.pending_buf[A.pending++]=Q}function zH(A,Q){A.pending_buf[A.pending++]=Q>>>8&255,A.pending_buf[A.pending++]=Q&255}function ktQ(A,Q,B,Y){var J=A.avail_in;if(J>Y)J=Y;if(J===0)return 0;if(A.avail_in-=J,tJ.arraySet(Q,A.input,A.next_in,J,B),A.state.wrap===1)A.adler=DXA(A.adler,Q,J,B);else if(A.state.wrap===2)A.adler=$7(A.adler,Q,J,B);return A.next_in+=J,A.total_in+=J,J}function NXA(A,Q){var{max_chain_length:B,strstart:Y}=A,J,C,X=A.prev_length,G=A.nice_match,F=A.strstart>A.w_size-RC?A.strstart-(A.w_size-RC):0,W=A.window,Z=A.w_mask,U=A.prev,$=A.strstart+K7,E=W[Y+X-1],K=W[Y+X];if(A.prev_length>=A.good_match)B>>=2;if(G>A.lookahead)G=A.lookahead;do{if(J=Q,W[J+X]!==K||W[J+X-1]!==E||W[J]!==W[Y]||W[++J]!==W[Y+1])continue;Y+=2,J++;do;while(W[++Y]===W[++J]&&W[++Y]===W[++J]&&W[++Y]===W[++J]&&W[++Y]===W[++J]&&W[++Y]===W[++J]&&W[++Y]===W[++J]&&W[++Y]===W[++J]&&W[++Y]===W[++J]&&Y<$);if(C=K7-($-Y),Y=$-K7,C>X){if(A.match_start=Q,X=C,C>=G)break;E=W[Y+X-1],K=W[Y+X]}}while((Q=U[Q&Z])>F&&--B!==0);if(X<=A.lookahead)return X;return A.lookahead}function lW(A){var Q=A.w_size,B,Y,J,C,X;do{if(C=A.window_size-A.lookahead-A.strstart,A.strstart>=Q+(Q-RC)){tJ.arraySet(A.window,A.window,Q,Q,0),A.match_start-=Q,A.strstart-=Q,A.block_start-=Q,Y=A.hash_size,B=Y;do J=A.head[--B],A.head[B]=J>=Q?J-Q:0;while(--Y);Y=Q,B=Y;do J=A.prev[--B],A.prev[B]=J>=Q?J-Q:0;while(--Y);C+=Q}if(A.strm.avail_in===0)break;if(Y=ktQ(A.strm,A.window,A.strstart+A.lookahead,C),A.lookahead+=Y,A.lookahead+A.insert>=IB){X=A.strstart-A.insert,A.ins_h=A.window[X],A.ins_h=(A.ins_h<A.pending_buf_size-5)B=A.pending_buf_size-5;for(;;){if(A.lookahead<=1){if(lW(A),A.lookahead===0&&Q===pW)return PY;if(A.lookahead===0)break}A.strstart+=A.lookahead,A.lookahead=0;var Y=A.block_start+B;if(A.strstart===0||A.strstart>=Y){if(A.lookahead=A.strstart-Y,A.strstart=Y,BJ(A,!1),A.strm.avail_out===0)return PY}if(A.strstart-A.block_start>=A.w_size-RC){if(BJ(A,!1),A.strm.avail_out===0)return PY}}if(A.insert=0,Q===I7){if(BJ(A,!0),A.strm.avail_out===0)return cW;return IU}if(A.strstart>A.block_start){if(BJ(A,!1),A.strm.avail_out===0)return PY}return PY}function Zx(A,Q){var B,Y;for(;;){if(A.lookahead=IB)A.ins_h=(A.ins_h<=IB)if(Y=Z5._tr_tally(A,A.strstart-A.match_start,A.match_length-IB),A.lookahead-=A.match_length,A.match_length<=A.max_lazy_match&&A.lookahead>=IB){A.match_length--;do A.strstart++,A.ins_h=(A.ins_h<=IB)A.ins_h=(A.ins_h<4096))A.match_length=IB-1}if(A.prev_length>=IB&&A.match_length<=A.prev_length){J=A.strstart+A.lookahead-IB,Y=Z5._tr_tally(A,A.strstart-1-A.prev_match,A.prev_length-IB),A.lookahead-=A.prev_length-1,A.prev_length-=2;do if(++A.strstart<=J)A.ins_h=(A.ins_h<=IB&&A.strstart>0){if(J=A.strstart-1,Y=X[J],Y===X[++J]&&Y===X[++J]&&Y===X[++J]){C=A.strstart+K7;do;while(Y===X[++J]&&Y===X[++J]&&Y===X[++J]&&Y===X[++J]&&Y===X[++J]&&Y===X[++J]&&Y===X[++J]&&Y===X[++J]&&JA.lookahead)A.match_length=A.lookahead}}if(A.match_length>=IB)B=Z5._tr_tally(A,1,A.match_length-IB),A.lookahead-=A.match_length,A.strstart+=A.match_length,A.match_length=0;else B=Z5._tr_tally(A,0,A.window[A.strstart]),A.lookahead--,A.strstart++;if(B){if(BJ(A,!1),A.strm.avail_out===0)return PY}}if(A.insert=0,Q===I7){if(BJ(A,!0),A.strm.avail_out===0)return cW;return IU}if(A.last_lit){if(BJ(A,!1),A.strm.avail_out===0)return PY}return wH}function ytQ(A,Q){var B;for(;;){if(A.lookahead===0){if(lW(A),A.lookahead===0){if(Q===pW)return PY;break}}if(A.match_length=0,B=Z5._tr_tally(A,0,A.window[A.strstart]),A.lookahead--,A.strstart++,B){if(BJ(A,!1),A.strm.avail_out===0)return PY}}if(A.insert=0,Q===I7){if(BJ(A,!0),A.strm.avail_out===0)return cW;return IU}if(A.last_lit){if(BJ(A,!1),A.strm.avail_out===0)return PY}return wH}function h1(A,Q,B,Y,J){this.good_length=A,this.max_lazy=Q,this.nice_length=B,this.max_chain=Y,this.func=J}var VU;VU=[new h1(0,0,0,0,_tQ),new h1(4,4,8,4,Zx),new h1(4,5,16,8,Zx),new h1(4,6,32,32,Zx),new h1(4,4,16,16,KU),new h1(8,16,32,32,KU),new h1(8,16,128,128,KU),new h1(8,32,128,256,KU),new h1(32,128,258,1024,KU),new h1(32,258,258,4096,KU)];function htQ(A){A.window_size=2*A.w_size,E7(A.head),A.max_lazy_match=VU[A.level].max_lazy,A.good_match=VU[A.level].good_length,A.nice_match=VU[A.level].nice_length,A.max_chain_length=VU[A.level].max_chain,A.strstart=0,A.block_start=0,A.lookahead=0,A.insert=0,A.match_length=A.prev_length=IB-1,A.match_available=0,A.ins_h=0}function gtQ(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=a3,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new tJ.Buf16(OtQ*2),this.dyn_dtree=new tJ.Buf16((2*wtQ+1)*2),this.bl_tree=new tJ.Buf16((2*jtQ+1)*2),E7(this.dyn_ltree),E7(this.dyn_dtree),E7(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new tJ.Buf16(PtQ+1),this.heap=new tJ.Buf16(2*$x+1),E7(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new tJ.Buf16(2*$x+1),E7(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function LXA(A){var Q;if(!A||!A.state)return V7(A,$5);if(A.total_in=A.total_out=0,A.data_type=NtQ,Q=A.state,Q.pending=0,Q.pending_out=0,Q.wrap<0)Q.wrap=-Q.wrap;return Q.status=Q.wrap?o3:dW,A.adler=Q.wrap===2?0:1,Q.last_flush=pW,Z5._tr_init(Q),g1}function qXA(A){var Q=LXA(A);if(Q===g1)htQ(A.state);return Q}function xtQ(A,Q){if(!A||!A.state)return $5;if(A.state.wrap!==2)return $5;return A.state.gzhead=Q,g1}function MXA(A,Q,B,Y,J,C){if(!A)return $5;var X=1;if(Q===KtQ)Q=6;if(Y<0)X=0,Y=-Y;else if(Y>15)X=2,Y-=16;if(J<1||J>LtQ||B!==a3||Y<8||Y>15||Q<0||Q>9||C<0||C>HtQ)return V7(A,$5);if(Y===8)Y=9;var G=new gtQ;return A.state=G,G.strm=A,G.wrap=X,G.gzhead=null,G.w_bits=Y,G.w_size=1<VXA||Q<0)return A?V7(A,$5):$5;if(Y=A.state,!A.output||!A.input&&A.avail_in!==0||Y.status===RH&&Q!==I7)return V7(A,A.avail_out===0?Wx:$5);if(Y.strm=A,B=Y.last_flush,Y.last_flush=Q,Y.status===o3)if(Y.wrap===2)if(A.adler=0,TB(Y,31),TB(Y,139),TB(Y,8),!Y.gzhead)TB(Y,0),TB(Y,0),TB(Y,0),TB(Y,0),TB(Y,0),TB(Y,Y.level===9?2:Y.strategy>=i3||Y.level<2?4:0),TB(Y,StQ),Y.status=dW;else{if(TB(Y,(Y.gzhead.text?1:0)+(Y.gzhead.hcrc?2:0)+(!Y.gzhead.extra?0:4)+(!Y.gzhead.name?0:8)+(!Y.gzhead.comment?0:16)),TB(Y,Y.gzhead.time&255),TB(Y,Y.gzhead.time>>8&255),TB(Y,Y.gzhead.time>>16&255),TB(Y,Y.gzhead.time>>24&255),TB(Y,Y.level===9?2:Y.strategy>=i3||Y.level<2?4:0),TB(Y,Y.gzhead.os&255),Y.gzhead.extra&&Y.gzhead.extra.length)TB(Y,Y.gzhead.extra.length&255),TB(Y,Y.gzhead.extra.length>>8&255);if(Y.gzhead.hcrc)A.adler=$7(A.adler,Y.pending_buf,Y.pending,0);Y.gzindex=0,Y.status=Ux}else{var X=a3+(Y.w_bits-8<<4)<<8,G=-1;if(Y.strategy>=i3||Y.level<2)G=0;else if(Y.level<6)G=1;else if(Y.level===6)G=2;else G=3;if(X|=G<<6,Y.strstart!==0)X|=TtQ;if(X+=31-X%31,Y.status=dW,zH(Y,X),Y.strstart!==0)zH(Y,A.adler>>>16),zH(Y,A.adler&65535);A.adler=1}if(Y.status===Ux)if(Y.gzhead.extra){J=Y.pending;while(Y.gzindex<(Y.gzhead.extra.length&65535)){if(Y.pending===Y.pending_buf_size){if(Y.gzhead.hcrc&&Y.pending>J)A.adler=$7(A.adler,Y.pending_buf,Y.pending-J,J);if(U7(A),J=Y.pending,Y.pending===Y.pending_buf_size)break}TB(Y,Y.gzhead.extra[Y.gzindex]&255),Y.gzindex++}if(Y.gzhead.hcrc&&Y.pending>J)A.adler=$7(A.adler,Y.pending_buf,Y.pending-J,J);if(Y.gzindex===Y.gzhead.extra.length)Y.gzindex=0,Y.status=n3}else Y.status=n3;if(Y.status===n3)if(Y.gzhead.name){J=Y.pending;do{if(Y.pending===Y.pending_buf_size){if(Y.gzhead.hcrc&&Y.pending>J)A.adler=$7(A.adler,Y.pending_buf,Y.pending-J,J);if(U7(A),J=Y.pending,Y.pending===Y.pending_buf_size){C=1;break}}if(Y.gzindexJ)A.adler=$7(A.adler,Y.pending_buf,Y.pending-J,J);if(C===0)Y.gzindex=0,Y.status=s3}else Y.status=s3;if(Y.status===s3)if(Y.gzhead.comment){J=Y.pending;do{if(Y.pending===Y.pending_buf_size){if(Y.gzhead.hcrc&&Y.pending>J)A.adler=$7(A.adler,Y.pending_buf,Y.pending-J,J);if(U7(A),J=Y.pending,Y.pending===Y.pending_buf_size){C=1;break}}if(Y.gzindexJ)A.adler=$7(A.adler,Y.pending_buf,Y.pending-J,J);if(C===0)Y.status=r3}else Y.status=r3;if(Y.status===r3)if(Y.gzhead.hcrc){if(Y.pending+2>Y.pending_buf_size)U7(A);if(Y.pending+2<=Y.pending_buf_size)TB(Y,A.adler&255),TB(Y,A.adler>>8&255),A.adler=0,Y.status=dW}else Y.status=dW;if(Y.pending!==0){if(U7(A),A.avail_out===0)return Y.last_flush=-1,g1}else if(A.avail_in===0&&HXA(Q)<=HXA(B)&&Q!==I7)return V7(A,Wx);if(Y.status===RH&&A.avail_in!==0)return V7(A,Wx);if(A.avail_in!==0||Y.lookahead!==0||Q!==pW&&Y.status!==RH){var F=Y.strategy===i3?ytQ(Y,Q):Y.strategy===ItQ?vtQ(Y,Q):VU[Y.level].func(Y,Q);if(F===cW||F===IU)Y.status=RH;if(F===PY||F===cW){if(A.avail_out===0)Y.last_flush=-1;return g1}if(F===wH){if(Q===$tQ)Z5._tr_align(Y);else if(Q!==VXA){if(Z5._tr_stored_block(Y,0,0,!1),Q===UtQ){if(E7(Y.head),Y.lookahead===0)Y.strstart=0,Y.block_start=0,Y.insert=0}}if(U7(A),A.avail_out===0)return Y.last_flush=-1,g1}}if(Q!==I7)return g1;if(Y.wrap<=0)return IXA;if(Y.wrap===2)TB(Y,A.adler&255),TB(Y,A.adler>>8&255),TB(Y,A.adler>>16&255),TB(Y,A.adler>>24&255),TB(Y,A.total_in&255),TB(Y,A.total_in>>8&255),TB(Y,A.total_in>>16&255),TB(Y,A.total_in>>24&255);else zH(Y,A.adler>>>16),zH(Y,A.adler&65535);if(U7(A),Y.wrap>0)Y.wrap=-Y.wrap;return Y.pending!==0?g1:IXA}function mtQ(A){var Q;if(!A||!A.state)return $5;if(Q=A.state.status,Q!==o3&&Q!==Ux&&Q!==n3&&Q!==s3&&Q!==r3&&Q!==dW&&Q!==RH)return V7(A,$5);return A.state=null,Q===dW?V7(A,EtQ):g1}function utQ(A,Q){var B=Q.length,Y,J,C,X,G,F,W,Z;if(!A||!A.state)return $5;if(Y=A.state,X=Y.wrap,X===2||X===1&&Y.status!==o3||Y.lookahead)return $5;if(X===1)A.adler=DXA(A.adler,Q,B,0);if(Y.wrap=0,B>=Y.w_size){if(X===0)E7(Y.head),Y.strstart=0,Y.block_start=0,Y.insert=0;Z=new tJ.Buf8(Y.w_size),tJ.arraySet(Z,Q,B-Y.w_size,Y.w_size,0),Q=Z,B=Y.w_size}G=A.avail_in,F=A.next_in,W=A.input,A.avail_in=B,A.next_in=0,A.input=Q,lW(Y);while(Y.lookahead>=IB){J=Y.strstart,C=Y.lookahead-(IB-1);do Y.ins_h=(Y.ins_h<{var t3=qX(),RXA=!0,wXA=!0;try{String.fromCharCode.apply(null,[0])}catch(A){RXA=!1}try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(A){wXA=!1}var jH=new t3.Buf8(256);for(x1=0;x1<256;x1++)jH[x1]=x1>=252?6:x1>=248?5:x1>=240?4:x1>=224?3:x1>=192?2:1;var x1;jH[254]=jH[254]=1;ttQ.string2buf=function(A){var Q,B,Y,J,C,X=A.length,G=0;for(J=0;J>>6,Q[C++]=128|B&63;else if(B<65536)Q[C++]=224|B>>>12,Q[C++]=128|B>>>6&63,Q[C++]=128|B&63;else Q[C++]=240|B>>>18,Q[C++]=128|B>>>12&63,Q[C++]=128|B>>>6&63,Q[C++]=128|B&63}return Q};function jXA(A,Q){if(Q<65534){if(A.subarray&&wXA||!A.subarray&&RXA)return String.fromCharCode.apply(null,t3.shrinkBuf(A,Q))}var B="";for(var Y=0;Y4){G[Y++]=65533,B+=C-1;continue}J&=C===2?31:C===3?15:7;while(C>1&&B1){G[Y++]=65533;continue}if(J<65536)G[Y++]=J;else J-=65536,G[Y++]=55296|J>>10&1023,G[Y++]=56320|J&1023}return jXA(G,Y)};ttQ.utf8border=function(A,Q){var B;if(Q=Q||A.length,Q>A.length)Q=A.length;B=Q-1;while(B>=0&&(A[B]&192)===128)B--;if(B<0)return Q;if(B===0)return Q;return B+jH[A[B]]>Q?B:Q}});var Kx=R((HGY,OXA)=>{function JeQ(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}OXA.exports=JeQ});var kXA=R((UeQ)=>{var OH=zXA(),PH=qX(),Ix=Ex(),Hx=p3(),CeQ=Kx(),SXA=Object.prototype.toString,XeQ=0,Vx=4,HU=0,PXA=1,TXA=2,GeQ=-1,FeQ=0,WeQ=8;function iW(A){if(!(this instanceof iW))return new iW(A);this.options=PH.assign({level:GeQ,method:WeQ,chunkSize:16384,windowBits:15,memLevel:8,strategy:FeQ,to:""},A||{});var Q=this.options;if(Q.raw&&Q.windowBits>0)Q.windowBits=-Q.windowBits;else if(Q.gzip&&Q.windowBits>0&&Q.windowBits<16)Q.windowBits+=16;this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new CeQ,this.strm.avail_out=0;var B=OH.deflateInit2(this.strm,Q.level,Q.method,Q.windowBits,Q.memLevel,Q.strategy);if(B!==HU)throw Error(Hx[B]);if(Q.header)OH.deflateSetHeader(this.strm,Q.header);if(Q.dictionary){var Y;if(typeof Q.dictionary==="string")Y=Ix.string2buf(Q.dictionary);else if(SXA.call(Q.dictionary)==="[object ArrayBuffer]")Y=new Uint8Array(Q.dictionary);else Y=Q.dictionary;if(B=OH.deflateSetDictionary(this.strm,Y),B!==HU)throw Error(Hx[B]);this._dict_set=!0}}iW.prototype.push=function(A,Q){var B=this.strm,Y=this.options.chunkSize,J,C;if(this.ended)return!1;if(C=Q===~~Q?Q:Q===!0?Vx:XeQ,typeof A==="string")B.input=Ix.string2buf(A);else if(SXA.call(A)==="[object ArrayBuffer]")B.input=new Uint8Array(A);else B.input=A;B.next_in=0,B.avail_in=B.input.length;do{if(B.avail_out===0)B.output=new PH.Buf8(Y),B.next_out=0,B.avail_out=Y;if(J=OH.deflate(B,C),J!==PXA&&J!==HU)return this.onEnd(J),this.ended=!0,!1;if(B.avail_out===0||B.avail_in===0&&(C===Vx||C===TXA))if(this.options.to==="string")this.onData(Ix.buf2binstring(PH.shrinkBuf(B.output,B.next_out)));else this.onData(PH.shrinkBuf(B.output,B.next_out))}while((B.avail_in>0||B.avail_out===0)&&J!==PXA);if(C===Vx)return J=OH.deflateEnd(this.strm),this.onEnd(J),this.ended=!0,J===HU;if(C===TXA)return this.onEnd(HU),B.avail_out=0,!0;return!0};iW.prototype.onData=function(A){this.chunks.push(A)};iW.prototype.onEnd=function(A){if(A===HU)if(this.options.to==="string")this.result=this.chunks.join("");else this.result=PH.flattenChunks(this.chunks);this.chunks=[],this.err=A,this.msg=this.strm.msg};function Dx(A,Q){var B=new iW(Q);if(B.push(A,!0),B.err)throw B.msg||Hx[B.err];return B.result}function ZeQ(A,Q){return Q=Q||{},Q.raw=!0,Dx(A,Q)}function $eQ(A,Q){return Q=Q||{},Q.gzip=!0,Dx(A,Q)}UeQ.Deflate=iW;UeQ.deflate=Dx;UeQ.deflateRaw=ZeQ;UeQ.gzip=$eQ});var vXA=R((NGY,_XA)=>{var e3=30,HeQ=12;_XA.exports=function(Q,B){var Y,J,C,X,G,F,W,Z,U,$,E,K,I,V,H,D,L,z,M,N,q,w,P,_,O;Y=Q.state,J=Q.next_in,_=Q.input,C=J+(Q.avail_in-5),X=Q.next_out,O=Q.output,G=X-(B-Q.avail_out),F=X+(Q.avail_out-257),W=Y.dmax,Z=Y.wsize,U=Y.whave,$=Y.wnext,E=Y.window,K=Y.hold,I=Y.bits,V=Y.lencode,H=Y.distcode,D=(1<>>24,K>>>=M,I-=M,M=z>>>16&255,M===0)O[X++]=z&65535;else if(M&16){if(N=z&65535,M&=15,M){if(I>>=M,I-=M}if(I<15)K+=_[J++]<>>24,K>>>=M,I-=M,M=z>>>16&255,M&16){if(q=z&65535,M&=15,IW){Q.msg="invalid distance too far back",Y.mode=e3;break A}if(K>>>=M,I-=M,M=X-G,q>M){if(M=q-M,M>U){if(Y.sane){Q.msg="invalid distance too far back",Y.mode=e3;break A}}if(w=0,P=E,$===0){if(w+=Z-M,M2)O[X++]=P[w++],O[X++]=P[w++],O[X++]=P[w++],N-=3;if(N){if(O[X++]=P[w++],N>1)O[X++]=P[w++]}}else{w=X-q;do O[X++]=O[w++],O[X++]=O[w++],O[X++]=O[w++],N-=3;while(N>2);if(N){if(O[X++]=O[w++],N>1)O[X++]=O[w++]}}}else if((M&64)===0){z=H[(z&65535)+(K&(1<>3,J-=N,I-=N<<3,K&=(1<{var yXA=qX(),DU=15,hXA=852,gXA=592,xXA=0,Nx=1,fXA=2,DeQ=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],NeQ=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78],LeQ=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],qeQ=[16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];bXA.exports=function(Q,B,Y,J,C,X,G,F){var W=F.bits,Z=0,U=0,$=0,E=0,K=0,I=0,V=0,H=0,D=0,L=0,z,M,N,q,w,P=null,_=0,O,k=new yXA.Buf16(DU+1),T=new yXA.Buf16(DU+1),S=null,v=0,y,g,h;for(Z=0;Z<=DU;Z++)k[Z]=0;for(U=0;U=1;E--)if(k[E]!==0)break;if(K>E)K=E;if(E===0)return C[X++]=20971520,C[X++]=20971520,F.bits=1,0;for($=1;$0&&(Q===xXA||E!==1))return-1;T[1]=0;for(Z=1;ZhXA||Q===fXA&&D>gXA)return 1;for(;;){if(y=Z-V,G[U]O)g=S[v+G[U]],h=P[_+G[U]];else g=96,h=0;z=1<>V)+M]=y<<24|g<<16|h|0;while(M!==0);z=1<>=1;if(z!==0)L&=z-1,L+=z;else L=0;if(U++,--k[Z]===0){if(Z===E)break;Z=B[Y+G[U]]}if(Z>K&&(L&q)!==N){if(V===0)V=K;w+=$,I=Z-V,H=1<hXA||Q===fXA&&D>gXA)return 1;N=L&q,C[N]=K<<24|I<<16|w-X|0}}if(L!==0)C[w+L]=Z-V<<24|4194304|0;return F.bits=K,0}});var qGA=R((meQ)=>{var $8=qX(),wx=Gx(),f1=Fx(),MeQ=vXA(),TH=mXA(),zeQ=0,UGA=1,EGA=2,uXA=4,ReQ=5,AR=6,nW=0,weQ=1,jeQ=2,U5=-2,KGA=-3,jx=-4,OeQ=-5,dXA=8,VGA=1,cXA=2,lXA=3,pXA=4,iXA=5,nXA=6,sXA=7,rXA=8,aXA=9,oXA=10,YR=11,zX=12,Lx=13,tXA=14,qx=15,eXA=16,AGA=17,QGA=18,BGA=19,QR=20,BR=21,YGA=22,JGA=23,CGA=24,XGA=25,GGA=26,Mx=27,FGA=28,WGA=29,M0=30,Ox=31,PeQ=32,TeQ=852,SeQ=592,keQ=15,_eQ=keQ;function ZGA(A){return(A>>>24&255)+(A>>>8&65280)+((A&65280)<<8)+((A&255)<<24)}function veQ(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new $8.Buf16(320),this.work=new $8.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function IGA(A){var Q;if(!A||!A.state)return U5;if(Q=A.state,A.total_in=A.total_out=Q.total=0,A.msg="",Q.wrap)A.adler=Q.wrap&1;return Q.mode=VGA,Q.last=0,Q.havedict=0,Q.dmax=32768,Q.head=null,Q.hold=0,Q.bits=0,Q.lencode=Q.lendyn=new $8.Buf32(TeQ),Q.distcode=Q.distdyn=new $8.Buf32(SeQ),Q.sane=1,Q.back=-1,nW}function HGA(A){var Q;if(!A||!A.state)return U5;return Q=A.state,Q.wsize=0,Q.whave=0,Q.wnext=0,IGA(A)}function DGA(A,Q){var B,Y;if(!A||!A.state)return U5;if(Y=A.state,Q<0)B=0,Q=-Q;else if(B=(Q>>4)+1,Q<48)Q&=15;if(Q&&(Q<8||Q>15))return U5;if(Y.window!==null&&Y.wbits!==Q)Y.window=null;return Y.wrap=B,Y.wbits=Q,HGA(A)}function NGA(A,Q){var B,Y;if(!A)return U5;if(Y=new veQ,A.state=Y,Y.window=null,B=DGA(A,Q),B!==nW)A.state=null;return B}function yeQ(A){return NGA(A,_eQ)}var $GA=!0,zx,Rx;function heQ(A){if($GA){var Q;zx=new $8.Buf32(512),Rx=new $8.Buf32(32),Q=0;while(Q<144)A.lens[Q++]=8;while(Q<256)A.lens[Q++]=9;while(Q<280)A.lens[Q++]=7;while(Q<288)A.lens[Q++]=8;TH(UGA,A.lens,0,288,zx,0,A.work,{bits:9}),Q=0;while(Q<32)A.lens[Q++]=5;TH(EGA,A.lens,0,32,Rx,0,A.work,{bits:5}),$GA=!1}A.lencode=zx,A.lenbits=9,A.distcode=Rx,A.distbits=5}function LGA(A,Q,B,Y){var J,C=A.state;if(C.window===null)C.wsize=1<=C.wsize)$8.arraySet(C.window,Q,B-C.wsize,C.wsize,0),C.wnext=0,C.whave=C.wsize;else{if(J=C.wsize-C.wnext,J>Y)J=Y;if($8.arraySet(C.window,Q,B-Y,J,C.wnext),Y-=J,Y)$8.arraySet(C.window,Q,B-Y,Y,0),C.wnext=Y,C.whave=C.wsize;else{if(C.wnext+=J,C.wnext===C.wsize)C.wnext=0;if(C.whave>>8&255,B.check=f1(B.check,P,2,0),W=0,Z=0,B.mode=cXA;break}if(B.flags=0,B.head)B.head.done=!1;if(!(B.wrap&1)||(((W&255)<<8)+(W>>8))%31){A.msg="incorrect header check",B.mode=M0;break}if((W&15)!==dXA){A.msg="unknown compression method",B.mode=M0;break}if(W>>>=4,Z-=4,q=(W&15)+8,B.wbits===0)B.wbits=q;else if(q>B.wbits){A.msg="invalid window size",B.mode=M0;break}B.dmax=1<>8&1;if(B.flags&512)P[0]=W&255,P[1]=W>>>8&255,B.check=f1(B.check,P,2,0);W=0,Z=0,B.mode=lXA;case lXA:while(Z<32){if(G===0)break A;G--,W+=Y[C++]<>>8&255,P[2]=W>>>16&255,P[3]=W>>>24&255,B.check=f1(B.check,P,4,0);W=0,Z=0,B.mode=pXA;case pXA:while(Z<16){if(G===0)break A;G--,W+=Y[C++]<>8;if(B.flags&512)P[0]=W&255,P[1]=W>>>8&255,B.check=f1(B.check,P,2,0);W=0,Z=0,B.mode=iXA;case iXA:if(B.flags&1024){while(Z<16){if(G===0)break A;G--,W+=Y[C++]<>>8&255,B.check=f1(B.check,P,2,0);W=0,Z=0}else if(B.head)B.head.extra=null;B.mode=nXA;case nXA:if(B.flags&1024){if(E=B.length,E>G)E=G;if(E){if(B.head){if(q=B.head.extra_len-B.length,!B.head.extra)B.head.extra=Array(B.head.extra_len);$8.arraySet(B.head.extra,Y,C,E,q)}if(B.flags&512)B.check=f1(B.check,Y,E,C);G-=E,C+=E,B.length-=E}if(B.length)break A}B.length=0,B.mode=sXA;case sXA:if(B.flags&2048){if(G===0)break A;E=0;do if(q=Y[C+E++],B.head&&q&&B.length<65536)B.head.name+=String.fromCharCode(q);while(q&&E>9&1,B.head.done=!0;A.adler=B.check=0,B.mode=zX;break;case oXA:while(Z<32){if(G===0)break A;G--,W+=Y[C++]<>>=Z&7,Z-=Z&7,B.mode=Mx;break}while(Z<3){if(G===0)break A;G--,W+=Y[C++]<>>=1,Z-=1,W&3){case 0:B.mode=tXA;break;case 1:if(heQ(B),B.mode=QR,Q===AR){W>>>=2,Z-=2;break A}break;case 2:B.mode=AGA;break;case 3:A.msg="invalid block type",B.mode=M0}W>>>=2,Z-=2;break;case tXA:W>>>=Z&7,Z-=Z&7;while(Z<32){if(G===0)break A;G--,W+=Y[C++]<>>16^65535)){A.msg="invalid stored block lengths",B.mode=M0;break}if(B.length=W&65535,W=0,Z=0,B.mode=qx,Q===AR)break A;case qx:B.mode=eXA;case eXA:if(E=B.length,E){if(E>G)E=G;if(E>F)E=F;if(E===0)break A;$8.arraySet(J,Y,C,E,X),G-=E,C+=E,F-=E,X+=E,B.length-=E;break}B.mode=zX;break;case AGA:while(Z<14){if(G===0)break A;G--,W+=Y[C++]<>>=5,Z-=5,B.ndist=(W&31)+1,W>>>=5,Z-=5,B.ncode=(W&15)+4,W>>>=4,Z-=4,B.nlen>286||B.ndist>30){A.msg="too many length or distance symbols",B.mode=M0;break}B.have=0,B.mode=QGA;case QGA:while(B.have>>=3,Z-=3}while(B.have<19)B.lens[k[B.have++]]=0;if(B.lencode=B.lendyn,B.lenbits=7,_={bits:B.lenbits},w=TH(zeQ,B.lens,0,19,B.lencode,0,B.work,_),B.lenbits=_.bits,w){A.msg="invalid code lengths set",B.mode=M0;break}B.have=0,B.mode=BGA;case BGA:while(B.have>>24,D=V>>>16&255,L=V&65535,H<=Z)break;if(G===0)break A;G--,W+=Y[C++]<>>=H,Z-=H,B.lens[B.have++]=L;else{if(L===16){O=H+2;while(Z>>=H,Z-=H,B.have===0){A.msg="invalid bit length repeat",B.mode=M0;break}q=B.lens[B.have-1],E=3+(W&3),W>>>=2,Z-=2}else if(L===17){O=H+3;while(Z>>=H,Z-=H,q=0,E=3+(W&7),W>>>=3,Z-=3}else{O=H+7;while(Z>>=H,Z-=H,q=0,E=11+(W&127),W>>>=7,Z-=7}if(B.have+E>B.nlen+B.ndist){A.msg="invalid bit length repeat",B.mode=M0;break}while(E--)B.lens[B.have++]=q}}if(B.mode===M0)break;if(B.lens[256]===0){A.msg="invalid code -- missing end-of-block",B.mode=M0;break}if(B.lenbits=9,_={bits:B.lenbits},w=TH(UGA,B.lens,0,B.nlen,B.lencode,0,B.work,_),B.lenbits=_.bits,w){A.msg="invalid literal/lengths set",B.mode=M0;break}if(B.distbits=6,B.distcode=B.distdyn,_={bits:B.distbits},w=TH(EGA,B.lens,B.nlen,B.ndist,B.distcode,0,B.work,_),B.distbits=_.bits,w){A.msg="invalid distances set",B.mode=M0;break}if(B.mode=QR,Q===AR)break A;case QR:B.mode=BR;case BR:if(G>=6&&F>=258){if(A.next_out=X,A.avail_out=F,A.next_in=C,A.avail_in=G,B.hold=W,B.bits=Z,MeQ(A,$),X=A.next_out,J=A.output,F=A.avail_out,C=A.next_in,Y=A.input,G=A.avail_in,W=B.hold,Z=B.bits,B.mode===zX)B.back=-1;break}B.back=0;for(;;){if(V=B.lencode[W&(1<>>24,D=V>>>16&255,L=V&65535,H<=Z)break;if(G===0)break A;G--,W+=Y[C++]<>z)],H=V>>>24,D=V>>>16&255,L=V&65535,z+H<=Z)break;if(G===0)break A;G--,W+=Y[C++]<>>=z,Z-=z,B.back+=z}if(W>>>=H,Z-=H,B.back+=H,B.length=L,D===0){B.mode=GGA;break}if(D&32){B.back=-1,B.mode=zX;break}if(D&64){A.msg="invalid literal/length code",B.mode=M0;break}B.extra=D&15,B.mode=YGA;case YGA:if(B.extra){O=B.extra;while(Z>>=B.extra,Z-=B.extra,B.back+=B.extra}B.was=B.length,B.mode=JGA;case JGA:for(;;){if(V=B.distcode[W&(1<>>24,D=V>>>16&255,L=V&65535,H<=Z)break;if(G===0)break A;G--,W+=Y[C++]<>z)],H=V>>>24,D=V>>>16&255,L=V&65535,z+H<=Z)break;if(G===0)break A;G--,W+=Y[C++]<>>=z,Z-=z,B.back+=z}if(W>>>=H,Z-=H,B.back+=H,D&64){A.msg="invalid distance code",B.mode=M0;break}B.offset=L,B.extra=D&15,B.mode=CGA;case CGA:if(B.extra){O=B.extra;while(Z>>=B.extra,Z-=B.extra,B.back+=B.extra}if(B.offset>B.dmax){A.msg="invalid distance too far back",B.mode=M0;break}B.mode=XGA;case XGA:if(F===0)break A;if(E=$-F,B.offset>E){if(E=B.offset-E,E>B.whave){if(B.sane){A.msg="invalid distance too far back",B.mode=M0;break}}if(E>B.wnext)E-=B.wnext,K=B.wsize-E;else K=B.wnext-E;if(E>B.length)E=B.length;I=B.window}else I=J,K=X-B.offset,E=B.length;if(E>F)E=F;F-=E,B.length-=E;do J[X++]=I[K++];while(--E);if(B.length===0)B.mode=BR;break;case GGA:if(F===0)break A;J[X++]=B.length,F--,B.mode=BR;break;case Mx:if(B.wrap){while(Z<32){if(G===0)break A;G--,W|=Y[C++]<{MGA.exports={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8}});var RGA=R((zGY,zGA)=>{function oeQ(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}zGA.exports=oeQ});var jGA=R((QAB)=>{var NU=qGA(),SH=qX(),JR=Ex(),CY=Px(),Tx=p3(),teQ=Kx(),eeQ=RGA(),wGA=Object.prototype.toString;function sW(A){if(!(this instanceof sW))return new sW(A);this.options=SH.assign({chunkSize:16384,windowBits:0,to:""},A||{});var Q=this.options;if(Q.raw&&Q.windowBits>=0&&Q.windowBits<16){if(Q.windowBits=-Q.windowBits,Q.windowBits===0)Q.windowBits=-15}if(Q.windowBits>=0&&Q.windowBits<16&&!(A&&A.windowBits))Q.windowBits+=32;if(Q.windowBits>15&&Q.windowBits<48){if((Q.windowBits&15)===0)Q.windowBits|=15}this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new teQ,this.strm.avail_out=0;var B=NU.inflateInit2(this.strm,Q.windowBits);if(B!==CY.Z_OK)throw Error(Tx[B]);if(this.header=new eeQ,NU.inflateGetHeader(this.strm,this.header),Q.dictionary){if(typeof Q.dictionary==="string")Q.dictionary=JR.string2buf(Q.dictionary);else if(wGA.call(Q.dictionary)==="[object ArrayBuffer]")Q.dictionary=new Uint8Array(Q.dictionary);if(Q.raw){if(B=NU.inflateSetDictionary(this.strm,Q.dictionary),B!==CY.Z_OK)throw Error(Tx[B])}}}sW.prototype.push=function(A,Q){var B=this.strm,Y=this.options.chunkSize,J=this.options.dictionary,C,X,G,F,W,Z=!1;if(this.ended)return!1;if(X=Q===~~Q?Q:Q===!0?CY.Z_FINISH:CY.Z_NO_FLUSH,typeof A==="string")B.input=JR.binstring2buf(A);else if(wGA.call(A)==="[object ArrayBuffer]")B.input=new Uint8Array(A);else B.input=A;B.next_in=0,B.avail_in=B.input.length;do{if(B.avail_out===0)B.output=new SH.Buf8(Y),B.next_out=0,B.avail_out=Y;if(C=NU.inflate(B,CY.Z_NO_FLUSH),C===CY.Z_NEED_DICT&&J)C=NU.inflateSetDictionary(this.strm,J);if(C===CY.Z_BUF_ERROR&&Z===!0)C=CY.Z_OK,Z=!1;if(C!==CY.Z_STREAM_END&&C!==CY.Z_OK)return this.onEnd(C),this.ended=!0,!1;if(B.next_out){if(B.avail_out===0||C===CY.Z_STREAM_END||B.avail_in===0&&(X===CY.Z_FINISH||X===CY.Z_SYNC_FLUSH))if(this.options.to==="string"){if(G=JR.utf8border(B.output,B.next_out),F=B.next_out-G,W=JR.buf2string(B.output,G),B.next_out=F,B.avail_out=Y-F,F)SH.arraySet(B.output,B.output,G,F,0);this.onData(W)}else this.onData(SH.shrinkBuf(B.output,B.next_out))}if(B.avail_in===0&&B.avail_out===0)Z=!0}while((B.avail_in>0||B.avail_out===0)&&C!==CY.Z_STREAM_END);if(C===CY.Z_STREAM_END)X=CY.Z_FINISH;if(X===CY.Z_FINISH)return C=NU.inflateEnd(this.strm),this.onEnd(C),this.ended=!0,C===CY.Z_OK;if(X===CY.Z_SYNC_FLUSH)return this.onEnd(CY.Z_OK),B.avail_out=0,!0;return!0};sW.prototype.onData=function(A){this.chunks.push(A)};sW.prototype.onEnd=function(A){if(A===CY.Z_OK)if(this.options.to==="string")this.result=this.chunks.join("");else this.result=SH.flattenChunks(this.chunks);this.chunks=[],this.err=A,this.msg=this.strm.msg};function Sx(A,Q){var B=new sW(Q);if(B.push(A,!0),B.err)throw B.msg||Tx[B.err];return B.result}function AAB(A,Q){return Q=Q||{},Q.raw=!0,Sx(A,Q)}QAB.Inflate=sW;QAB.inflate=Sx;QAB.inflateRaw=AAB;QAB.ungzip=Sx});var TGA=R((wGY,PGA)=>{var XAB=qX().assign,GAB=kXA(),FAB=jGA(),WAB=Px(),OGA={};XAB(OGA,GAB,FAB,WAB);PGA.exports=OGA});var SGA=R((jGY,kx)=>{(function(){var A={};if(typeof kx=="object")kx.exports=A;else self.UTIF=A;var Q=TGA();function B(){if(typeof process>"u"||process.env.NODE_ENV=="development")console.log.apply(console,arguments)}(function(Y,J){(function(){var C=function(){function U($){this.message="JPEG error: "+$}return U.prototype=Error(),U.prototype.name="JpegError",U.constructor=U,U}(),X=function(){var U=new Uint8Array([0,1,8,16,9,2,3,10,17,24,32,25,18,11,4,5,12,19,26,33,40,48,41,34,27,20,13,6,7,14,21,28,35,42,49,56,57,50,43,36,29,22,15,23,30,37,44,51,58,59,52,45,38,31,39,46,53,60,61,54,47,55,62,63]),$=4017,E=799,K=3406,I=2276,V=1567,H=3784,D=5793,L=2896;function z(O){if(O==null)O={};if(O.w==null)O.w=-1;this.V=O.n,this.N=O.w}function M(O,k){var T=0,S=[],v,y,g=16,h;while(g>0&&!O[g-1])g--;S.push({children:[],index:0});var m=S[0];for(v=0;v0)m=S.pop();m.index++,S.push(m);while(S.length<=v)S.push(h={children:[],index:0}),m.children[m.index]=h.children,m=h;T++}if(v+10)return b--,x>>b&1;if(x=O[k++],x===255){var zA=O[k++];if(zA){if(zA===220&&i){k+=2;var uA=F(O,k);if(k+=2,uA>0&&uA!==T.s)throw new DNLMarkerError("Found DNL marker (0xFFDC) while parsing scan data",uA)}else if(zA===217){if(i){var MQ=EA*8;if(MQ>0&&MQ>>7}function vA(zA){var uA=zA;while(!0){switch(uA=uA[TA()],typeof uA){case"number":return uA;case"object":continue}throw new C("invalid huffman sequence")}}function mA(zA){var uA=0;while(zA>0)uA=uA<<1|TA(),zA--;return uA}function ZQ(zA){if(zA===1)return TA()===1?1:-1;var uA=mA(zA);if(uA>=1<>4;if(mQ===0){if(yB<15)break;eQ+=16;continue}eQ+=yB;var H0=U[eQ];zA.D[uA+H0]=ZQ(mQ),eQ++}}function CQ(zA,uA){var MQ=vA(zA.J),bQ=MQ===0?0:ZQ(MQ)<0){o--;return}var MQ=y,bQ=g;while(MQ<=bQ){var eQ=vA(zA.i),cB=eQ&15,mQ=eQ>>4;if(cB===0){if(mQ<15){o=mA(mQ)+(1<>4,cB===0)if(eQ<15)o=mA(eQ)+(1<0){for(CA=0;CA0?"unexpected":"excessive";k=QQ.offset}if(QQ.M>=65488&&QQ.M<=65495)k+=2;else break}return k-d}function w(O,k,T){var{$:S,D:v}=O,y,g,h,m,i,p,l,d,x,b,o,GA,VA,EA,UA,CA,QA;if(!S)throw new C("missing required Quantization Table.");for(var KA=0;KA<64;KA+=8){if(x=v[k+KA],b=v[k+KA+1],o=v[k+KA+2],GA=v[k+KA+3],VA=v[k+KA+4],EA=v[k+KA+5],UA=v[k+KA+6],CA=v[k+KA+7],x*=S[KA],(b|o|GA|VA|EA|UA|CA)===0){QA=D*x+512>>10,T[KA]=QA,T[KA+1]=QA,T[KA+2]=QA,T[KA+3]=QA,T[KA+4]=QA,T[KA+5]=QA,T[KA+6]=QA,T[KA+7]=QA;continue}b*=S[KA+1],o*=S[KA+2],GA*=S[KA+3],VA*=S[KA+4],EA*=S[KA+5],UA*=S[KA+6],CA*=S[KA+7],y=D*x+128>>8,g=D*VA+128>>8,h=o,m=UA,i=L*(b-CA)+128>>8,d=L*(b+CA)+128>>8,p=GA<<4,l=EA<<4,y=y+g+1>>1,g=y-g,QA=h*H+m*V+128>>8,h=h*V-m*H+128>>8,m=QA,i=i+l+1>>1,l=i-l,d=d+p+1>>1,p=d-p,y=y+m+1>>1,m=y-m,g=g+h+1>>1,h=g-h,QA=i*I+d*K+2048>>12,i=i*K-d*I+2048>>12,d=QA,QA=p*E+l*$+2048>>12,p=p*$-l*E+2048>>12,l=QA,T[KA]=y+d,T[KA+7]=y-d,T[KA+1]=g+l,T[KA+6]=g-l,T[KA+2]=h+p,T[KA+5]=h-p,T[KA+3]=m+i,T[KA+4]=m-i}for(var HA=0;HA<8;++HA){if(x=T[HA],b=T[HA+8],o=T[HA+16],GA=T[HA+24],VA=T[HA+32],EA=T[HA+40],UA=T[HA+48],CA=T[HA+56],(b|o|GA|VA|EA|UA|CA)===0){if(QA=D*x+8192>>14,QA<-2040)QA=0;else if(QA>=2024)QA=255;else QA=QA+2056>>4;v[k+HA]=QA,v[k+HA+8]=QA,v[k+HA+16]=QA,v[k+HA+24]=QA,v[k+HA+32]=QA,v[k+HA+40]=QA,v[k+HA+48]=QA,v[k+HA+56]=QA;continue}if(y=D*x+2048>>12,g=D*VA+2048>>12,h=o,m=UA,i=L*(b-CA)+2048>>12,d=L*(b+CA)+2048>>12,p=GA,l=EA,y=(y+g+1>>1)+4112,g=y-g,QA=h*H+m*V+2048>>12,h=h*V-m*H+2048>>12,m=QA,i=i+l+1>>1,l=i-l,d=d+p+1>>1,p=d-p,y=y+m+1>>1,m=y-m,g=g+h+1>>1,h=g-h,QA=i*I+d*K+2048>>12,i=i*K-d*I+2048>>12,d=QA,QA=p*E+l*$+2048>>12,p=p*$-l*E+2048>>12,l=QA,x=y+d,CA=y-d,b=g+l,UA=g-l,o=h+p,EA=h-p,GA=m+i,VA=m-i,x<16)x=0;else if(x>=4080)x=255;else x>>=4;if(b<16)b=0;else if(b>=4080)b=255;else b>>=4;if(o<16)o=0;else if(o>=4080)o=255;else o>>=4;if(GA<16)GA=0;else if(GA>=4080)GA=255;else GA>>=4;if(VA<16)VA=0;else if(VA>=4080)VA=255;else VA>>=4;if(EA<16)EA=0;else if(EA>=4080)EA=255;else EA>>=4;if(UA<16)UA=0;else if(UA>=4080)UA=255;else UA>>=4;if(CA<16)CA=0;else if(CA>=4080)CA=255;else CA>>=4;v[k+HA]=x,v[k+HA+8]=b,v[k+HA+16]=o,v[k+HA+24]=GA,v[k+HA+32]=VA,v[k+HA+40]=EA,v[k+HA+48]=UA,v[k+HA+56]=CA}}function P(O,k){var{P:T,c:S}=k,v=new Int16Array(64);for(var y=0;y=S)return null;var y=F(O,k);if(y>=65472&&y<=65534)return{u:null,M:y,offset:k};var g=F(O,v);while(!(g>=65472&&g<=65534)){if(++v>=S)return null;g=F(O,v)}return{u:y.toString(16),M:g,offset:v}}return z.prototype={parse(O,k){if(k==null)k={};var T=k.F,S=0,v=null,y=null,g,h,m=0;function i(){var mQ=F(O,S);S+=2;var yB=S+mQ-2,H0=_(O,yB,S);if(H0&&H0.u)yB=H0.offset;var xJ=O.subarray(S,yB);return S+=xJ.length,xJ}function p(mQ){var yB=Math.ceil(mQ.o/8/mQ.X),H0=Math.ceil(mQ.s/8/mQ.B);for(var xJ=0;xJ>4===0)for(GA=0;GA<64;GA++)CA=U[GA],HA[CA]=O[S++];else if(KA>>4===1)for(GA=0;GA<64;GA++)CA=U[GA],HA[CA]=F(O,S),S+=2;else throw new C("DQT - invalid table spec");l[KA&15]=HA}break;case 65472:case 65473:case 65474:if(g)throw new C("Only single frame JPEGs supported");S+=2,g={},g.G=b===65473,g.Z=b===65474,g.precision=O[S++];var DA=F(O,S),gA,QQ=0,XA=0;S+=2,g.s=T||DA,g.o=F(O,S),S+=2,g.W=[],g._={};var PA=O[S++];for(o=0;o>4,TA=O[S+1]&15;if(QQ>4===0?x:d)[ZQ&15]=M(NQ,SQ)}break;case 65501:S+=2,h=F(O,S),S+=2;break;case 65498:var LA=++m===1&&!T,IA;S+=2;var jA=O[S++],tQ=[];for(o=0;o>4],IA.i=d[KB&15],tQ.push(IA)}var zA=O[S++],uA=O[S++],MQ=O[S++];try{var bQ=q(O,S,g,tQ,h,zA,uA,MQ>>4,MQ&15,LA);S+=bQ}catch(mQ){if(mQ instanceof DNLMarkerError)return this.parse(O,{F:mQ.s});else if(mQ instanceof EOIMarkerError)break A;throw mQ}break;case 65500:S+=4;break;case 65535:if(O[S]!==255)S--;break;default:var eQ=_(O,S-2,S-3);if(eQ&&eQ.u){S=eQ.offset;break}if(S>=O.length-1)break A;throw new C("JpegImage.parse - unknown marker: "+b.toString(16))}b=F(O,S),S+=2}this.width=g.o,this.height=g.s,this.g=v,this.b=y,this.W=[];for(o=0;o>8)+HA[x+1];return UA},get f(){if(this.b)return!!this.b.a;if(this.p===3){if(this.N===0)return!1;else if(this.W[0].index===82&&this.W[1].index===71&&this.W[2].index===66)return!1;return!0}if(this.N===1)return!0;return!1},z:function(k){var T,S,v;for(var y=0,g=k.length;y4)throw new C("Unsupported color mode");var y=this.Y(k,T,v);if(this.p===1&&S){var g=y.length,h=new Uint8ClampedArray(g*3),m=0;for(var i=0;i>24}function F(Z,U){return Z[U]<<8|Z[U+1]}function W(Z,U){return(Z[U]<<24|Z[U+1]<<16|Z[U+2]<<8|Z[U+3])>>>0}Y.JpegDecoder=X})(),Y.encodeImage=function(C,X,G,F){var W={t256:[X],t257:[G],t258:[8,8,8,8],t259:[1],t262:[2],t273:[1000],t277:[4],t278:[G],t279:[X*G*4],t282:[[72,1]],t283:[[72,1]],t284:[1],t286:[[0,1]],t287:[[0,1]],t296:[1],t305:["Photopea (UTIF.js)"],t338:[1]};if(F)for(var Z in F)W[Z]=F[Z];var U=new Uint8Array(Y.encode([W])),$=new Uint8Array(C),E=new Uint8Array(1000+X*G*4);for(var Z=0;Z3)X.t258=X.t258.slice(0,3);var $=X.t277?X.t277[0]:1,E=X.t258?X.t258[0]:1,K=E*$;if(Z==1&&X.t279!=null&&X.t278&&X.t262[0]==32803)K=Math.round(X.t279[0]*8/(X.width*X.t278[0]));if(X.t50885&&X.t50885[0]==4)K=X.t258[0]*3;var I=Math.ceil(X.width*K/8)*8,V=X.t273;if(V==null||X.t322)V=X.t324;var H=X.t279;if(Z==1&&V.length==1)H=[X.height*(I>>>3)];if(H==null||X.t322)H=X.t325;var D=new Uint8Array(X.height*(I>>>3)),L=0;if(X.t322!=null){var z=X.t322[0],M=X.t323[0],N=Math.floor((X.width+z-1)/z),q=Math.floor((X.height+M-1)/M),w=new Uint8Array(Math.ceil(z*M*K/8)|0);console.log("====",N,q);for(var P=0;P>>3,N=Math.ceil(L*z*K/8);if(L==16&&!C.isLE&&C.t33422==null)for(var q=0;q>>8&255}else if(z==3)for(var V=3;V>3^16368,(h[L]|h[L+1]<<8)>>(D&7)&~(-1<>2,N[1]=((p(1)&3)<<12|p(2)<<4|p(3)>>4)&16383,N[2]=p(3)>>2&3,N[3]=(p(3)&3)<<8|p(4),N[4]=p(5)<<2|p(6)>>6,N[5]=(p(6)&63)<<4|p(7)>>4,N[6]=p(7)>>2&3,N[7]=(p(7)&3)<<8|p(8),N[8]=p(9)<<2&1020|p(10)>>6,N[9]=(p(10)<<4|p(11)>>4)&1023,N[10]=p(11)>>2&3,N[11]=(p(11)&3)<<8|p(12),N[12]=(p(13)<<2&1020|p(14)>>6)&1023,N[13]=(p(14)<<4|p(15)>>4)&1023,D+=16,L=0}function d(){N[0]=p(0)<<4|p(1)>>4,N[1]=((p(1)&15)<<8|p(2))&4095,N[2]=p(3)>>6&3,N[3]=(p(3)&63)<<2|p(4)>>6,N[4]=(p(4)&63)<<2|p(5)>>6,N[5]=(p(5)&63)<<2|p(6)>>6,N[6]=p(6)>>4&3,N[7]=(p(6)&15)<<4|p(7)>>4,N[8]=(p(7)&15)<<4|p(8)>>4,N[9]=(p(8)&15)<<4|p(9)>>4,N[10]=p(9)>>2&3,N[11]=(p(9)&3)<<6|p(10)>>2,N[12]=(p(10)&3)<<6|p(11)>>2,N[13]=(p(11)&3)<<6|p(12)>>2,N[14]=p(12)&3,N[15]=p(13),N[16]=p(14),N[17]=p(15),D+=16,L=0}function x(){_[0]=0,_[1]=0,O[0]=0,O[1]=0}if(I==7)throw I;else if(I==6){var b=K==12,o=b?d:l,GA=b?14:11,VA=b?128:512,EA=b?2048:8192,UA=b?16383:65535,CA=b?4095:16383,QA=$/GA,KA=QA*16,HA=b?18:14;for(v=0;vS)PA+=O[k]-S;O[k]=PA}else if(_[k]=PA,PA)O[k]=PA;else PA=O[k];m[T+y++]=PA-15<=UA?PA-15&UA:PA+2147483633>>31&CA}}}}}else if(I==5){var NA=K==12?10:9;for(v=0;v>4),m[T++]=((N[4]&15)<<8)+N[3],m[T++]=16*N[5]+(N[4]>>4),m[T++]=((N[7]&15)<<8)+N[6],m[T++]=16*N[8]+(N[7]>>4),m[T++]=((N[10]&15)<<8)+N[9],m[T++]=16*N[11]+(N[10]>>4),m[T++]=((N[13]&15)<<8)+N[12],m[T++]=16*N[14]+(N[13]>>4);else if(K==14)m[T++]=N[0]+((N[1]&63)<<8),m[T++]=(N[1]>>6)+4*N[2]+((N[3]&15)<<10),m[T++]=(N[3]>>4)+16*N[4]+((N[5]&3)<<12),m[T++]=((N[5]&252)>>2)+(N[6]<<6),m[T++]=N[7]+((N[8]&63)<<8),m[T++]=(N[8]>>6)+4*N[9]+((N[10]&15)<<10),m[T++]=(N[10]>>4)+16*N[11]+((N[12]&3)<<12),m[T++]=((N[12]&252)>>2)+(N[13]<<6),m[T++]=N[14]+((N[15]&63)<<8)}else if(I==4)for(v=0;v>3-i(2);if(O[k]){if(w=i(8),w!=0){if(_[k]-=128<11)_[k]=O[k]<<4|i(4);m[T++]=_[y&1]}else throw I},Y.decode._decodeVC5=function(){var C=[1,0,1,0,2,2,1,1,3,7,1,2,5,25,1,3,6,48,1,4,6,54,1,5,7,111,1,8,7,99,1,6,7,105,12,0,7,107,1,7,8,209,20,0,8,212,1,9,8,220,1,10,9,393,1,11,9,394,32,0,9,416,1,12,9,427,1,13,10,887,1,18,10,784,1,14,10,790,1,15,10,835,60,0,10,852,1,16,10,885,1,17,11,1571,1,19,11,1668,1,20,11,1669,100,0,11,1707,1,21,11,1772,1,22,12,3547,1,29,12,3164,1,24,12,3166,1,25,12,3140,1,23,12,3413,1,26,12,3537,1,27,12,3539,1,28,13,7093,1,35,13,6283,1,30,13,6331,1,31,13,6335,180,0,13,6824,1,32,13,7072,1,33,13,7077,320,0,13,7076,1,34,14,12565,1,36,14,12661,1,37,14,12669,1,38,14,13651,1,39,14,14184,1,40,15,28295,1,46,15,28371,1,47,15,25320,1,42,15,25336,1,43,15,25128,1,41,15,27300,1,44,15,28293,1,45,16,50259,1,48,16,50643,1,49,16,50675,1,50,16,56740,1,53,16,56584,1,51,16,56588,1,52,17,113483,1,61,17,113482,1,60,17,101285,1,55,17,101349,1,56,17,109205,1,57,17,109207,1,58,17,100516,1,54,17,113171,1,59,18,202568,1,62,18,202696,1,63,18,218408,1,64,18,218412,1,65,18,226340,1,66,18,226356,1,67,18,226358,1,68,19,402068,1,69,19,405138,1,70,19,405394,1,71,19,436818,1,72,19,436826,1,73,19,452714,1,75,19,452718,1,76,19,452682,1,74,20,804138,1,77,20,810279,1,78,20,810790,1,79,20,873638,1,80,20,873654,1,81,20,905366,1,82,20,905430,1,83,20,905438,1,84,21,1608278,1,85,21,1620557,1,86,21,1621582,1,87,21,1621583,1,88,21,1747310,1,89,21,1810734,1,90,21,1810735,1,91,21,1810863,1,92,21,1810879,1,93,22,3621725,1,99,22,3621757,1,100,22,3241112,1,94,22,3494556,1,95,22,3494557,1,96,22,3494622,1,97,22,3494623,1,98,23,6482227,1,102,23,6433117,1,101,23,6989117,1,103,23,6989119,1,105,23,6989118,1,104,23,7243449,1,106,23,7243512,1,107,24,13978233,1,111,24,12964453,1,109,24,12866232,1,108,24,14486897,1,113,24,13978232,1,110,24,14486896,1,112,24,14487026,1,114,24,14487027,1,115,25,25732598,1,225,25,25732597,1,189,25,25732596,1,188,25,25732595,1,203,25,25732594,1,202,25,25732593,1,197,25,25732592,1,207,25,25732591,1,169,25,25732590,1,223,25,25732589,1,159,25,25732522,1,235,25,25732579,1,152,25,25732575,1,192,25,25732489,1,179,25,25732573,1,201,25,25732472,1,172,25,25732576,1,149,25,25732488,1,178,25,25732566,1,120,25,25732571,1,219,25,25732577,1,150,25,25732487,1,127,25,25732506,1,211,25,25732548,1,125,25,25732588,1,158,25,25732486,1,247,25,25732467,1,238,25,25732508,1,163,25,25732552,1,228,25,25732603,1,183,25,25732513,1,217,25,25732587,1,168,25,25732520,1,122,25,25732484,1,128,25,25732562,1,249,25,25732505,1,187,25,25732504,1,186,25,25732483,1,136,25,25928905,1,181,25,25732560,1,255,25,25732500,1,230,25,25732482,1,135,25,25732555,1,233,25,25732568,1,222,25,25732583,1,145,25,25732481,1,134,25,25732586,1,167,25,25732521,1,248,25,25732518,1,209,25,25732480,1,243,25,25732512,1,216,25,25732509,1,164,25,25732547,1,140,25,25732479,1,157,25,25732544,1,239,25,25732574,1,191,25,25732564,1,251,25,25732478,1,156,25,25732546,1,139,25,25732498,1,242,25,25732557,1,133,25,25732477,1,162,25,25732515,1,213,25,25732584,1,165,25,25732514,1,212,25,25732476,1,227,25,25732494,1,198,25,25732531,1,236,25,25732530,1,234,25,25732529,1,117,25,25732528,1,215,25,25732527,1,124,25,25732526,1,123,25,25732525,1,254,25,25732524,1,253,25,25732523,1,148,25,25732570,1,218,25,25732580,1,146,25,25732581,1,147,25,25732569,1,224,25,25732533,1,143,25,25732540,1,184,25,25732541,1,185,25,25732585,1,166,25,25732556,1,132,25,25732485,1,129,25,25732563,1,250,25,25732578,1,151,25,25732501,1,119,25,25732502,1,193,25,25732536,1,176,25,25732496,1,245,25,25732553,1,229,25,25732516,1,206,25,25732582,1,144,25,25732517,1,208,25,25732558,1,137,25,25732543,1,241,25,25732466,1,237,25,25732507,1,190,25,25732542,1,240,25,25732551,1,131,25,25732554,1,232,25,25732565,1,252,25,25732475,1,171,25,25732493,1,205,25,25732492,1,204,25,25732491,1,118,25,25732490,1,214,25,25928904,1,180,25,25732549,1,126,25,25732602,1,182,25,25732539,1,175,25,25732545,1,141,25,25732559,1,138,25,25732537,1,177,25,25732534,1,153,25,25732503,1,194,25,25732606,1,160,25,25732567,1,121,25,25732538,1,174,25,25732497,1,246,25,25732550,1,130,25,25732572,1,200,25,25732474,1,170,25,25732511,1,221,25,25732601,1,196,25,25732532,1,142,25,25732519,1,210,25,25732495,1,199,25,25732605,1,155,25,25732535,1,154,25,25732499,1,244,25,25732510,1,220,25,25732600,1,195,25,25732607,1,161,25,25732604,1,231,25,25732473,1,173,25,25732599,1,226,26,51465122,1,116,26,51465123,0,1],X,G,F,W=[3,3,3,3,2,2,2,1,1,1],Z=24576,U=16384,$=8192,E=U|$;function K(q){var w=q[1],P=q[0][w>>>3]>>>7-(w&7)&1;return q[1]++,P}function I(q,w){if(X==null){X={};for(var P=0;P>>1}return q}function H(q,w){return q>>w}function D(q,w,P,_,O,k){w[P]=H(H(11*q[O]-4*q[O+k]+q[O+k+k]+4,3)+q[_],1),w[P+k]=H(H(5*q[O]+4*q[O+k]-q[O+k+k]+4,3)-q[_],1)}function L(q,w,P,_,O,k){var T=q[O-k]-q[O+k],S=q[O],v=q[_];w[P]=H(H(T+4,3)+S+v,1),w[P+k]=H(H(-T+4,3)+S-v,1)}function z(q,w,P,_,O,k){w[P]=H(H(5*q[O]+4*q[O-k]-q[O-k-k]+4,3)+q[_],1),w[P+k]=H(H(11*q[O]-4*q[O-k]+q[O-k-k]+4,3)-q[_],1)}function M(q){return q=q<0?0:q>4095?4095:q,q=F[q]>>>2,q}function N(q,w,P,_,O,k){_=new Uint16Array(_.buffer);var T=Date.now(),S=Y._binBE,v=w+P,y,g,h,m,i,p,l,d,x,b,o,GA,VA,EA,UA,CA,QA,KA;w+=4;var HA=k[0]==1;while(w>>1)*(h>>>1));KA=new Int16Array((g>>>1)*(h>>>1)),G=new Int16Array(1024);for(var NA=0;NA<1024;NA++){var TA=NA-512,vA=Math.abs(TA),y=Math.floor(768*vA*vA*vA/16581375)+vA;G[NA]=Math.sign(TA)*y}F=new Uint16Array(4096);var mA=65535;for(var NA=0;NA<4096;NA++){var ZQ=NA,NQ=mA*(Math.pow(113,ZQ/4095)-1)/112;F[NA]=Math.min(NQ,mA)}}var CQ=QA[l],SQ=V(g,1+W[m]),LA=V(h,1+W[m]);if(m==0)for(var IA=0;IA>>1)+jA]=q[tQ]<<8|q[tQ+1]}else{var IQ=[q,w*8],vQ=[],KB=0,zA=SQ*LA,uA=[0,0],MQ=0,gA=0;while(KB0)vQ[KB++]=gA,MQ--}var bQ=(m-1)%3,eQ=bQ!=1?SQ:0,cB=bQ!=0?LA:0;for(var IA=0;IA>>1)+eQ,yB=IA*SQ;for(var jA=0;jA>>1,H0=SQ*2,xJ=LA*2;for(var IA=0;IA>14-V1*2&3;var jV=K1[_6];if(jV!=0)for(var IA=0;IA>>1)*(g>>>1)+(jA>>>1),$W=OV[tQ],vk=JM[tQ]-2048,UW=CM[tQ]-2048,W4=XM[tQ]-2048,EW=(vk<<1)+$W,KW=(UW<<1)+$W,PV=$W+W4,TV=$W-W4;if(HA)_[GC]=M(PV),_[GC+1]=M(KW),_[GC+g]=M(EW),_[GC+g+1]=M(TV);else _[GC]=M(EW),_[GC+1]=M(PV),_[GC+g]=M(TV),_[GC+g+1]=M(KW)}}w+=PA*4}else if(QQ==16388)w+=PA*4;else if(XA==8192||XA==8448||XA==9216);else throw QQ.toString(16)}}console.log(Date.now()-T)}return N}(),Y.decode._decodeLogLuv32=function(C,X,G,F,W,Z){var U=C.width,$=U*4,E=0,K=new Uint8Array($);while(E>>(D[l]>>>8);for(var L=0;L>>4,W[Z+l+1]=P<<4|O>>>4,W[Z+l+2]=O<<4|_>>>4}return}var k=new Uint16Array(16),T,S,v,y,g,h,m,i,p,l,d,x=new Uint8Array(U+1);for(T=0;T<$;T++){for(var b=0;b>>11,h=15&v>>>22,m=15&v>>>26;for(i=0;i<4&&128<>3))>>>(p&7)&127)<2047)k[l]=2047;p+=7}for(l=0;l<16;l++,S+=2){var w=k[l]<<1;Y.decode._putsF(W,(T*U+S)*E,w<<16-E)}S-=S&1?1:31}}},Y.decode._decodeNikon=function(C,X,G,F,W,Z,U){var $=[[0,0,1,5,1,1,1,1,1,1,2,0,0,0,0,0,0,5,4,3,6,2,7,1,0,8,9,11,10,12],[0,0,1,5,1,1,1,1,1,1,2,0,0,0,0,0,0,57,90,56,39,22,5,4,3,2,1,0,11,12,12],[0,0,1,4,2,3,1,2,0,0,0,0,0,0,0,0,0,5,4,6,3,7,2,8,1,9,0,10,11,12],[0,0,1,4,3,1,1,1,1,1,2,0,0,0,0,0,0,5,6,4,7,8,3,9,2,1,0,10,11,12,13,14],[0,0,1,5,1,1,1,1,1,1,1,2,0,0,0,0,0,8,92,75,58,41,7,6,5,4,3,2,1,0,13,14],[0,0,1,4,2,2,3,1,2,0,0,0,0,0,0,0,0,7,6,8,5,9,4,10,3,11,12,2,0,1,13,14]],E=C.t256[0],K=C.t257[0],I=C.t258[0],V=0,H=0,D=Y.decode._make_decoder,L=Y.decode._getbithuff,z=X[0].exifIFD.makerNote,M=z.t150?z.t150:z.t140,N=0,q=M[N++],w=M[N++];if(q==73||w==88)N+=2110;if(q==70)V=2;if(I==14)V+=3;var P=[[0,0],[0,0]],_=C.isLE?Y._binLE:Y._binBE;for(var v=0;v<2;v++)for(var O=0;O<2;O++)P[v][O]=_.readShort(M,N),N+=2;var k=1<1)T=Math.floor(k/(S-1));if(q==68&&w==32&&T>0)H=_.readShort(M,562);var v,y,g,h,m,i,p=0,l=[0,0],d=D($[V]),x=[F,0,0,0];for(p=y=0;y>>4,i=(L(G,x,h-m,0)<<1)+1<>>1,(i&1<>>3;C[F]|=G>>>16,C[F+1]|=G>>>8,C[F+2]|=G},Y.decode._getbithuff=function(C,X,G,F){var W=0,Z=Y.decode._get_byte,U,$=X[0],E=X[1],K=X[2],I=X[3];if(G==0||K<0)return 0;while(!I&&K>>32-G,F)K-=F[U+1]>>>8,U=F[U+1]&255;else K-=G;if(K<0)throw"e";return X[0]=$,X[1]=E,X[2]=K,X[3]=I,U},Y.decode._make_decoder=function(C){var X,G,F,W,Z,U=[];for(X=16;X!=0&&!C[X];X--);var $=17;U[0]=X;for(F=G=1;G<=X;G++)for(W=0;W>>8;else for(var H=0;H>>8,W[Z+(H<<1)+1]=M[H]&255;else if(z==14||z==12||z==10){var q=16-z;for(var H=0;H1;if(!z){if(X[G]==255&&X[G+1]==W)return{jpegOffset:G};if(w!=null){if(X[G+P]==255&&X[G+P+1]==W)V=G+P;else B("JPEGInterchangeFormat does not point to SOI");if(_==null)B("JPEGInterchangeFormatLength field is missing");else if(P>=H||P+O<=H)B("JPEGInterchangeFormatLength field value is invalid");if(V!=null)return{jpegOffset:V}}}if(T!=null)S=T[0],v=T[1];if(w!=null){if(_!=null)if(O>=2&&P+O<=H){if(X[G+P+O-2]==255&&X[G+P+O-1]==W)D=new Uint8Array(O-2);else D=new Uint8Array(O);for(M=0;M offset to first strip or tile")}if(D==null){var h=0,m=[];m[h++]=255,m[h++]=W;var i=C.t519;if(i==null)throw Error("JPEGQTables tag is missing");for(M=0;M>>8,m[h++]=l&255,m[h++]=M|q<<4;for(N=0;N<16;N++)m[h++]=X[G+p[M]+N];for(N=0;N>>8&255,m[h++]=C.height&255,m[h++]=C.width>>>8&255,m[h++]=C.width&255,m[h++]=y,y==1)m[h++]=1,m[h++]=17,m[h++]=0;else for(M=0;M<3;M++)m[h++]=M+1,m[h++]=M!=0?17:(S&15)<<4|v&15,m[h++]=M;if(g!=null&&g[0]!=0)m[h++]=255,m[h++]=E,m[h++]=0,m[h++]=4,m[h++]=g[0]>>>8&255,m[h++]=g[0]&255;D=new Uint8Array(m)}var d=-1;M=0;while(M>>8&255,D[b++]=C.height&255,D[b++]=C.width>>>8&255,D[b++]=C.width&255,D[b++]=y,y==1)D[b++]=1,D[b++]=17,D[b++]=0;else for(M=0;M<3;M++)D[b++]=M+1,D[b++]=M!=0?17:(S&15)<<4|v&15,D[b++]=M}if(X[H]==255&&X[H+1]==I){var o=X[H+2]<<8|X[H+3];L=new Uint8Array(o+2),L[0]=X[H],L[1]=X[H+1],L[2]=X[H+2],L[3]=X[H+3];for(M=0;M>>8&255,K[V.sofPosition+6]=C.height&255,K[V.sofPosition+7]=C.width>>>8&255,K[V.sofPosition+8]=C.width&255,X[G]!=255||X[G+1]!=SOS)K.set(V.sosMarker,I),I+=sosMarker.length;for(U=0;U=0&&E<128)for(var K=0;K=-127&&E<0){for(var K=0;K<-E+1;K++)U[W]=Z[X],W++;X++}}return W},Y.decode._decodeThunder=function(C,X,G,F,W){var Z=[0,1,0,-1],U=[0,1,2,3,0,-3,-2,-1],$=X+G,E=W*2,K=0;while(X<$){var I=C[X],V=I>>>6,H=I&63;if(X++,V==3)K=H&15,F[E>>>1]|=K<<4*(1-E&1),E++;if(V==0)for(var D=0;D>>1]|=K<<4*(1-E&1),E++;if(V==2)for(var D=0;D<2;D++){var L=H>>>3*(1-D)&7;if(L!=4)K+=U[L],F[E>>>1]|=K<<4*(1-E&1),E++}if(V==1)for(var D=0;D<3;D++){var L=H>>>2*(2-D)&3;if(L!=2)K+=Z[L],F[E>>>1]|=K<<4*(1-E&1),E++}}},Y.decode._dmap={"1":0,"011":1,"000011":2,"0000011":3,"010":-1,"000010":-2,"0000010":-3},Y.decode._lens=function(){var C=function(E,K,I,V){for(var H=0;H>>3>>3]>>>7-(E&7)&1;if(U==2)T=C[E>>>3]>>>(E&7)&1;if(E++,I+=T,_=="H"){if($._lens[w][I]!=null){var S=$._lens[w][I];if(I="",K+=S,S<64){if($._addNtimes(V,K,w),L+=K,w=1-w,K=0,O--,O==0)_=""}}}else{if(I=="0001")I="",$._addNtimes(V,q-L,w),L=q;if(I=="001")I="",_="H",O=2;if($._dmap[I]!=null)z=N+$._dmap[I],$._addNtimes(V,z-L,w),L=z,I="",w=1-w}if(V.length==Z&&_=="")$._writeBits(V,F,W*8+P*k),w=0,P++,L=0,H=$._makeDiff(V),V=[]}},Y.decode._findDiff=function(C,X,G){for(var F=0;F=X&&C[F+1]==G)return C[F]},Y.decode._makeDiff=function(C){var X=[];if(C[0]==1)X.push(0,1);for(var G=1;G>>3>>3]>>>7-(E&7)&1;if(U==2)z=C[E>>>3]>>>(E&7)&1;if(E++,I+=z,K=$._lens[H][I],K!=null){if($._addNtimes(V,K,H),I="",K<64)H=1-H;if(V.length==Z){if($._writeBits(V,F,W*8+D*L),V=[],D++,H=0,(E&7)!=0)E+=8-(E&7);if(K>=64)E+=8}}}},Y.decode._decodeG3=function(C,X,G,F,W,Z,U,$){var E=Y.decode,K=X<<3,I=0,V="",H=[],D=[];for(var L=0;L>>3>>3]>>>7-(K&7)&1;if(U==2)v=C[K>>>3]>>>(K&7)&1;if(K++,V+=v,T){if(E._lens[P][V]!=null){var y=E._lens[P][V];if(V="",I+=y,y<64)E._addNtimes(H,I,P),P=1-P,I=0}}else if(O=="H"){if(E._lens[P][V]!=null){var y=E._lens[P][V];if(V="",I+=y,y<64){if(E._addNtimes(H,I,P),z+=I,P=1-P,I=0,k--,k==0)O=""}}}else{if(V=="0001")V="",E._addNtimes(H,w-z,P),z=w;if(V=="001")V="",O="H",k=2;if(E._dmap[V]!=null)M=q+E._dmap[V],E._addNtimes(H,M-z,P),z=M,V="",P=1-P}if(V.endsWith("000000000001")){if(_>=0)E._writeBits(H,F,W*8+_*S);if($){if(U==1)T=(C[K>>>3]>>>7-(K&7)&1)==1;if(U==2)T=(C[K>>>3]>>>(K&7)&1)==1;K++}V="",P=0,_++,z=0,D=E._makeDiff(H),H=[]}}if(H.length==Z)E._writeBits(H,F,W*8+_*S)},Y.decode._addNtimes=function(C,X,G){for(var F=0;F>>3]|=C[F]<<7-(G+F&7)},Y.decode._decodeLZW=Y.decode._decodeLZW=function(){var C,X,G,F,W=0,Z=0,U=0,$=0,E=function(){var M=C>>>3,N=X[M]<<16|X[M+1]<<8|X[M+2],q=N>>>24-(C&7)-Z&(1<>>----------------");for(var E=0;EX.buffer.byteLength)V=X.buffer.byteLength-L;D=new Uint8Array(X.buffer,L,V)}if(I==2){var z=V<5?G-4:H,M=X[z],N=Math.max(0,Math.min(V-1,X.length-z));if(M<128||N==0)D.push(C.readASCII(X,z,N));else D=new Uint8Array(X.buffer,z,N)}if(I==3)for(var q=0;q4)C.writeUint(G,F,$),M=$;if(V==1||V==7)for(var N=0;N4)z+=z&1,$+=z;F+=4}return[F,$]},Y.toRGBA8=function(C,X){function G(CQ){return CQ<0.0031308?12.92*CQ:1.055*Math.pow(CQ,0.4166666666666667)-0.055}var{width:F,height:W}=C,Z=F*W,U=Z*4,$=C.data,E=new Uint8Array(Z*4),K=C.t262?C.t262[0]:2,I=C.t258?Math.min(32,C.t258[0]):1;if(C.t262==null&&I==1)K=0;var V=C.t277?C.t277[0]:C.t258?C.t258.length:[1,1,3,1,1,4,3][K],H=C.t339?C.t339[0]:null;if(K==1&&I==32&&H!=3)throw"e";var D=Math.ceil(V*I*F/8);if(K==0){X=0.00390625;for(var L=0;L>3)]>>7-(N&7)&1;E[q]=E[q+1]=E[q+2]=(1-w)*255,E[q+3]=255}if(I==4)for(var N=0;N>1)]>>4-4*(N&1)&15;E[q]=E[q+1]=E[q+2]=(15-w)*17,E[q+3]=255}if(I==8)for(var N=0;N>3)]>>7-(N&7)&1;E[q]=E[q+1]=E[q+2]=w*255,E[q+3]=255}if(I==2)for(var N=0;N>2)]>>6-2*(N&3)&3;E[q]=E[q+1]=E[q+2]=w*85,E[q+3]=255}if(I==8)for(var N=0;N>>2)+N,w=_[P];E[q]=E[q+1]=E[q+2]=~~(0.5+255*w),E[q+3]=255}}}else if(K==2)if(I==8){if(V==1)for(var N=0;N=4)for(var N=0;N1&&C.t338&&C.t338[0]!=0;for(var L=0;L>>3)]>>>7-(i&7)&1;else if(I==2)p=$[l+(i>>>2)]>>>6-2*(i&3)&3;else if(I==4)p=$[l+(i>>>1)]>>>4-4*(i&1)&15;else if(I==8)p=$[l+i*V];else throw I;E[q]=g[p]>>8,E[q+1]=g[h+p]>>8,E[q+2]=g[h+h+p]>>8,E[q+3]=m?$[l+i*V+1]:255}}else if(K==5){var d=V>4?1:0;for(var N=0;N>>1),GA=$[x+(QA&1)],KA=$[x+2]-128,HA=$[x+3]-128,DA=GA+((HA>>2)+(HA>>3)+(HA>>5)),gA=GA-((KA>>2)+(KA>>4)+(KA>>5))-((HA>>1)+(HA>>3)+(HA>>4)+(HA>>5)),QQ=GA+(KA+(KA>>1)+(KA>>2)+(KA>>6));E[q]=Math.max(0,Math.min(255,DA)),E[q+1]=Math.max(0,Math.min(255,gA)),E[q+2]=Math.max(0,Math.min(255,QQ)),E[q+3]=255}}}else if(K==32845)for(var L=0;LF)F=$,W=U}Y.decodeImage(C,W,X);var E=Y.toRGBA8(W),K=W.width,I=W.height,V=document.createElement("canvas");V.width=K,V.height=I;var H=V.getContext("2d"),D=new ImageData(new Uint8ClampedArray(E.buffer),K,I);return H.putImageData(D,0,0),V.toDataURL()},Y._binBE={nextZero:function(C,X){while(C[X]!=0)X++;return X},readUshort:function(C,X){return C[X]<<8|C[X+1]},readShort:function(C,X){var G=Y._binBE.ui8;return G[0]=C[X+1],G[1]=C[X+0],Y._binBE.i16[0]},readInt:function(C,X){var G=Y._binBE.ui8;return G[0]=C[X+3],G[1]=C[X+2],G[2]=C[X+1],G[3]=C[X+0],Y._binBE.i32[0]},readUint:function(C,X){var G=Y._binBE.ui8;return G[0]=C[X+3],G[1]=C[X+2],G[2]=C[X+1],G[3]=C[X+0],Y._binBE.ui32[0]},readASCII:function(C,X,G){var F="";for(var W=0;W>8&255,C[X+1]=G&255},writeInt:function(C,X,G){var F=Y._binBE.ui8;Y._binBE.i32[0]=G,C[X+3]=F[0],C[X+2]=F[1],C[X+1]=F[2],C[X+0]=F[3]},writeUint:function(C,X,G){C[X]=G>>24&255,C[X+1]=G>>16&255,C[X+2]=G>>8&255,C[X+3]=G>>0&255},writeASCII:function(C,X,G){for(var F=0;F>8&255},writeInt:function(C,X,G){var F=Y._binBE.ui8;Y._binBE.i32[0]=G,C[X+0]=F[0],C[X+1]=F[1],C[X+2]=F[2],C[X+3]=F[3]},writeUint:function(C,X,G){C[X]=G>>>0&255,C[X+1]=G>>>8&255,C[X+2]=G>>>16&255,C[X+3]=G>>>24&255},writeASCII:Y._binBE.writeASCII},Y._copyTile=function(C,X,G,F,W,Z,U,$){var E=Math.min(X,W-U),K=Math.min(G,Z-$);for(var I=0;I>--S&1,y=q[y+g];T[_]=y}}function Z(M,N,q,w){if(M[N+3]!=255)return 0;if(q==0)return N;for(var P=0;P<2;P++){if(M[N+P]==0)M[N+P]=M.length,M.push(0,0,w,255);var _=Z(M,M[N+P],q-1,w+1);if(_!=0)return _}return 0}function U(M){var{b:N,f:q}=M;while(N<25&&M.a>(N.b-=M)&65535>>16-M}function E(M,N){var q=M[0],w=0,P=255,_=0;if(N.b<16)U(N);var O=N.f>>N.b-8&255;w=M[1][O],P=q[w+3],N.b-=q[w+2];while(P==255)_=N.f>>--N.b&1,w=q[w+_],P=q[w+3];return P}function K(M,N){if(M<32768>>16-N)M+=-(1<>4,i&15]}}else if(y==65476){var l=X+g-2;while(X>>4],_[x[0]]=x.slice(1)}q=G(),X+=2;break}else if(y==65501)P=F();else X+=g-2}var b=w>8?Uint16Array:Uint8Array,o=new b(S*v*T),GA={b:0,f:0,c:q==8,a:X,data:C,d:C.length,e:P};if(GA.c)D(o,v*T,GA,k[0],S);else{var VA=[],EA=0,UA=0;for(var h=0;hEA)EA=QA;if(KA>UA)UA=KA;VA.push(QA*KA)}if(EA!=1||UA!=1){if(T!=3||VA[1]!=1||VA[2]!=1)throw"e";if(EA!=2||UA!=1&&UA!=2)throw"e";var HA=[],DA=0;for(var h=0;h>>1)*QQ+(QA>>>1))*DA,ZQ=(KA&1)*2+(QA&1);o[vA]=TA[mA+ZQ],o[vA+1]=TA[mA+4],o[vA+2]=TA[mA+5]}else for(var QA=0;QA>>1))*DA,ZQ=QA&1;o[vA]=TA[mA+ZQ],o[vA+1]=TA[mA+2],o[vA+2]=TA[mA+3]}}else if(V(o,v*T,GA,k,T,S),P==0)z(o,q,v,S,0,T,T,w);else{var NQ=Math.floor(P/v);for(var KA=0;KA>>1);else if(N==6)p=M[m]+(i-M[m-O]>>>1);else if(N==7)p=i+M[m]>>>1;else throw N;M[h]+=p}}}return L}(),function(){var C=0,X=1,G=2,F=3,W=4,Z=5,U=6,$=7,E=8,K=9,I=10,V=11,H=12,D=13,L=14,z=15,M=16,N=17,q=18;function w(d){var x=Y._binBE.readUshort,b={b:x(d,0),i:d[2],C:d[3],u:d[4],q:x(d,5),k:x(d,7),e:x(d,9),l:x(d,11),s:d[13],d:x(d,14)};if(b.b!=18771||b.i>1||b.q<6||b.q%6||b.e<768||b.e%24||b.l!=768||b.k=b.l||b.s>16||b.s!=b.k/b.l||b.s!=Math.ceil(b.e/b.l)||b.d!=b.q/6||b.u!=12&&b.u!=14&&b.u!=16||b.C!=16&&b.C!=0)throw"Invalid data";if(b.i==0)throw"Not implemented. We need this file!";return b.h=b.C==16,b.m=(b.h?b.l*2/3:b.l>>>1)|0,b.A=b.m+2,b.f=64,b.g=(1<>>6);for(var o=0;o<3;o++)for(var GA=0;GA<41;GA++)x[o][GA]=[b,1];return x}function S(d){for(var x=-1,b=0;!b;x++)if(b=d[d.j]>>>7-d.a&1,d.a++,d.a&=7,!d.a)d.j++;return x}function v(d,x){var b=0,o=8-d.a,GA=d.j,VA=d.a;if(x){if(x>=o)do b<<=o,x-=o,b|=d[d.j]&(1<=8);if(x)b<<=x,o-=x,b|=d[d.j]>>>o&(1<IA&&LA>>2,UA){XA[CA]=jA;return}gA=x.t*x.c[d.g+vA-NA]+x.c[d.g+TA-vA]}else jA=vA>TA&&vA>mA||vA>>2:ZQ+NQ>>>1,gA=x.t*x.c[d.g+vA-TA]+x.c[d.g+TA-ZQ];QQ=CQ(gA);var tQ=S(b);if(tQ>>1):DA>>>1,EA[QQ][0]+=CQ(DA),EA[QQ][1]==d.f)EA[QQ][0]>>>=1,EA[QQ][1]>>>=1;if(EA[QQ][1]++,jA=gA<0?jA-DA:jA+DA,d.i){if(jA<0)jA+=x.w;else if(jA>d.g)jA-=x.w}XA[CA]=jA>=0?Math.min(jA,d.g):0}function h(d,x,b){var o=d[0].length;for(var GA=x;GA<=b;GA++)d[GA][0]=d[GA-1][1],d[GA][o-1]=d[GA-1][o-2]}function m(d){h(d,$,H),h(d,G,W),h(d,z,N)}function i(d,x,b,o,GA,VA,EA,UA,CA,QA,KA,HA,DA){var gA=0,QQ=1,XA=GAW;while(QQ8)g(d,x,b,o,GA,QQ,UA[CA]),g(d,x,b,o,VA,QQ,UA[CA]),QQ+=2}m(o)}function p(d,x,b,o,GA,VA){i(d,x,b,o,G,$,GA,VA,0,0,1,0,8),i(d,x,b,o,E,z,GA,VA,1,0,1,0,8),i(d,x,b,o,F,K,GA,VA,2,1,0,3,0),i(d,x,b,o,I,M,GA,VA,0,0,0,3,2),i(d,x,b,o,W,V,GA,VA,1,0,0,3,2),i(d,x,b,o,H,N,GA,VA,2,1,0,3,0)}function l(d,x,b,o,GA,VA){var EA=VA.length,UA=d.l;if(GA+1==d.s)UA=d.e-GA*d.l;var CA=6*d.e*o+GA*d.l;for(var QA=0;QA<6;QA++){for(var KA=0;KA>>1);else if(HA==2)DA=z+(QA>>>1);else DA=$+QA;var gA=d.h?(KA*2/3&2147483646|KA%3&1)+(KA%3>>>1):KA>>>1;x[CA+KA]=b[DA][gA+1]}CA+=d.e}}Y._decompressRAF=function(d,x){var b=w(d),o=P(d,b),GA=k(b),VA=new Int16Array(b.e*b.q);if(x==null)x=b.h?[[1,1,0,1,1,2],[1,1,2,1,1,0],[2,0,1,0,2,1],[1,1,2,1,1,0],[1,1,0,1,1,2],[0,2,1,2,0,1]]:[[0,1],[3,2]];var EA=[[C,F],[X,W],[Z,V],[U,H],[D,M],[L,N]],UA=[];for(var CA=0;CA{/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh */aQB.read=function(A,Q,B,Y,J){var C,X,G=J*8-Y-1,F=(1<>1,Z=-7,U=B?J-1:0,$=B?-1:1,E=A[Q+U];U+=$,C=E&(1<<-Z)-1,E>>=-Z,Z+=G;for(;Z>0;C=C*256+A[Q+U],U+=$,Z-=8);X=C&(1<<-Z)-1,C>>=-Z,Z+=Y;for(;Z>0;X=X*256+A[Q+U],U+=$,Z-=8);if(C===0)C=1-W;else if(C===F)return X?NaN:(E?-1:1)*(1/0);else X=X+Math.pow(2,Y),C=C-W;return(E?-1:1)*X*Math.pow(2,C-Y)};aQB.write=function(A,Q,B,Y,J,C){var X,G,F,W=C*8-J-1,Z=(1<>1,$=J===23?Math.pow(2,-24)-Math.pow(2,-77):0,E=Y?0:C-1,K=Y?1:-1,I=Q<0||Q===0&&1/Q<0?1:0;if(Q=Math.abs(Q),isNaN(Q)||Q===1/0)G=isNaN(Q)?1:0,X=Z;else{if(X=Math.floor(Math.log(Q)/Math.LN2),Q*(F=Math.pow(2,-X))<1)X--,F*=2;if(X+U>=1)Q+=$/F;else Q+=$*Math.pow(2,1-U);if(Q*F>=2)X++,F/=2;if(X+U>=Z)G=0,X=Z;else if(X+U>=1)G=(Q*F-1)*Math.pow(2,J),X=X+U;else G=Q*Math.pow(2,U-1)*Math.pow(2,J),X=0}for(;J>=8;A[B+E]=G&255,E+=K,G/=256,J-=8);X=X<0;A[B+E]=X&255,E+=K,X/=256,W-=8);A[B+E-K]|=I*128}});var J7A=R((A7A)=>{Object.defineProperty(A7A,"__esModule",{value:!0});A7A.AnsiStringType=A7A.StringType=A7A.BufferType=A7A.Uint8ArrayType=A7A.IgnoreType=A7A.Float80_LE=A7A.Float80_BE=A7A.Float64_LE=A7A.Float64_BE=A7A.Float32_LE=A7A.Float32_BE=A7A.Float16_LE=A7A.Float16_BE=A7A.INT64_BE=A7A.UINT64_BE=A7A.INT64_LE=A7A.UINT64_LE=A7A.INT32_LE=A7A.INT32_BE=A7A.INT24_BE=A7A.INT24_LE=A7A.INT16_LE=A7A.INT16_BE=A7A.INT8=A7A.UINT32_BE=A7A.UINT32_LE=A7A.UINT24_BE=A7A.UINT24_LE=A7A.UINT16_BE=A7A.UINT16_LE=A7A.UINT8=void 0;var R7=rGA();function iQ(A){return new DataView(A.buffer,A.byteOffset)}A7A.UINT8={len:1,get(A,Q){return iQ(A).getUint8(Q)},put(A,Q,B){return iQ(A).setUint8(Q,B),Q+1}};A7A.UINT16_LE={len:2,get(A,Q){return iQ(A).getUint16(Q,!0)},put(A,Q,B){return iQ(A).setUint16(Q,B,!0),Q+2}};A7A.UINT16_BE={len:2,get(A,Q){return iQ(A).getUint16(Q)},put(A,Q,B){return iQ(A).setUint16(Q,B),Q+2}};A7A.UINT24_LE={len:3,get(A,Q){let B=iQ(A);return B.getUint8(Q)+(B.getUint16(Q+1,!0)<<8)},put(A,Q,B){let Y=iQ(A);return Y.setUint8(Q,B&255),Y.setUint16(Q+1,B>>8,!0),Q+3}};A7A.UINT24_BE={len:3,get(A,Q){let B=iQ(A);return(B.getUint16(Q)<<8)+B.getUint8(Q+2)},put(A,Q,B){let Y=iQ(A);return Y.setUint16(Q,B>>8),Y.setUint8(Q+2,B&255),Q+3}};A7A.UINT32_LE={len:4,get(A,Q){return iQ(A).getUint32(Q,!0)},put(A,Q,B){return iQ(A).setUint32(Q,B,!0),Q+4}};A7A.UINT32_BE={len:4,get(A,Q){return iQ(A).getUint32(Q)},put(A,Q,B){return iQ(A).setUint32(Q,B),Q+4}};A7A.INT8={len:1,get(A,Q){return iQ(A).getInt8(Q)},put(A,Q,B){return iQ(A).setInt8(Q,B),Q+1}};A7A.INT16_BE={len:2,get(A,Q){return iQ(A).getInt16(Q)},put(A,Q,B){return iQ(A).setInt16(Q,B),Q+2}};A7A.INT16_LE={len:2,get(A,Q){return iQ(A).getInt16(Q,!0)},put(A,Q,B){return iQ(A).setInt16(Q,B,!0),Q+2}};A7A.INT24_LE={len:3,get(A,Q){let B=A7A.UINT24_LE.get(A,Q);return B>8388607?B-16777216:B},put(A,Q,B){let Y=iQ(A);return Y.setUint8(Q,B&255),Y.setUint16(Q+1,B>>8,!0),Q+3}};A7A.INT24_BE={len:3,get(A,Q){let B=A7A.UINT24_BE.get(A,Q);return B>8388607?B-16777216:B},put(A,Q,B){let Y=iQ(A);return Y.setUint16(Q,B>>8),Y.setUint8(Q+2,B&255),Q+3}};A7A.INT32_BE={len:4,get(A,Q){return iQ(A).getInt32(Q)},put(A,Q,B){return iQ(A).setInt32(Q,B),Q+4}};A7A.INT32_LE={len:4,get(A,Q){return iQ(A).getInt32(Q,!0)},put(A,Q,B){return iQ(A).setInt32(Q,B,!0),Q+4}};A7A.UINT64_LE={len:8,get(A,Q){return iQ(A).getBigUint64(Q,!0)},put(A,Q,B){return iQ(A).setBigUint64(Q,B,!0),Q+8}};A7A.INT64_LE={len:8,get(A,Q){return iQ(A).getBigInt64(Q,!0)},put(A,Q,B){return iQ(A).setBigInt64(Q,B,!0),Q+8}};A7A.UINT64_BE={len:8,get(A,Q){return iQ(A).getBigUint64(Q)},put(A,Q,B){return iQ(A).setBigUint64(Q,B),Q+8}};A7A.INT64_BE={len:8,get(A,Q){return iQ(A).getBigInt64(Q)},put(A,Q,B){return iQ(A).setBigInt64(Q,B),Q+8}};A7A.Float16_BE={len:2,get(A,Q){return R7.read(A,Q,!1,10,this.len)},put(A,Q,B){return R7.write(A,B,Q,!1,10,this.len),Q+this.len}};A7A.Float16_LE={len:2,get(A,Q){return R7.read(A,Q,!0,10,this.len)},put(A,Q,B){return R7.write(A,B,Q,!0,10,this.len),Q+this.len}};A7A.Float32_BE={len:4,get(A,Q){return iQ(A).getFloat32(Q)},put(A,Q,B){return iQ(A).setFloat32(Q,B),Q+4}};A7A.Float32_LE={len:4,get(A,Q){return iQ(A).getFloat32(Q,!0)},put(A,Q,B){return iQ(A).setFloat32(Q,B,!0),Q+4}};A7A.Float64_BE={len:8,get(A,Q){return iQ(A).getFloat64(Q)},put(A,Q,B){return iQ(A).setFloat64(Q,B),Q+8}};A7A.Float64_LE={len:8,get(A,Q){return iQ(A).getFloat64(Q,!0)},put(A,Q,B){return iQ(A).setFloat64(Q,B,!0),Q+8}};A7A.Float80_BE={len:10,get(A,Q){return R7.read(A,Q,!1,63,this.len)},put(A,Q,B){return R7.write(A,B,Q,!1,63,this.len),Q+this.len}};A7A.Float80_LE={len:10,get(A,Q){return R7.read(A,Q,!0,63,this.len)},put(A,Q,B){return R7.write(A,B,Q,!0,63,this.len),Q+this.len}};class aGA{constructor(A){this.len=A}get(A,Q){}}A7A.IgnoreType=aGA;class oGA{constructor(A){this.len=A}get(A,Q){return A.subarray(Q,Q+this.len)}}A7A.Uint8ArrayType=oGA;class tGA{constructor(A){this.len=A}get(A,Q){return Buffer.from(A.subarray(Q,Q+this.len))}}A7A.BufferType=tGA;class eGA{constructor(A,Q){this.len=A,this.encoding=Q}get(A,Q){return Buffer.from(A).toString(this.encoding,Q,Q+this.len)}}A7A.StringType=eGA;class z7{constructor(A){this.len=A}static decode(A,Q,B){let Y="";for(let J=Q;J>10)+55296,(A&1023)+56320)}static singleByteDecoder(A){if(z7.inRange(A,0,127))return A;let Q=z7.windows1252[A-128];if(Q===null)throw Error("invaliding encoding");return Q}get(A,Q=0){return z7.decode(A,Q,Q+this.len)}}A7A.AnsiStringType=z7;z7.windows1252=[8364,129,8218,402,8222,8230,8224,8225,710,8240,352,8249,338,141,381,143,144,8216,8217,8220,8221,8226,8211,8212,732,8482,353,8250,339,157,382,376,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255]});var $R=R((X7A)=>{Object.defineProperty(X7A,"__esModule",{value:!0});X7A.EndOfStreamError=X7A.defaultMessages=void 0;X7A.defaultMessages="End-Of-Stream";class C7A extends Error{constructor(){super(X7A.defaultMessages)}}X7A.EndOfStreamError=C7A});var U7A=R((Z7A)=>{Object.defineProperty(Z7A,"__esModule",{value:!0});Z7A.Deferred=void 0;class W7A{constructor(){this.resolve=()=>null,this.reject=()=>null,this.promise=new Promise((A,Q)=>{this.reject=Q,this.resolve=A})}}Z7A.Deferred=W7A});var I7A=R((bx)=>{Object.defineProperty(bx,"__esModule",{value:!0});bx.StreamReader=bx.EndOfStreamError=void 0;var E7A=$R(),OBB=U7A(),PBB=$R();Object.defineProperty(bx,"EndOfStreamError",{enumerable:!0,get:function(){return PBB.EndOfStreamError}});var TBB=1048576;class K7A{constructor(A){if(this.s=A,this.deferred=null,this.endOfStream=!1,this.peekQueue=[],!A.read||!A.once)throw Error("Expected an instance of stream.Readable");this.s.once("end",()=>this.reject(new E7A.EndOfStreamError)),this.s.once("error",(Q)=>this.reject(Q)),this.s.once("close",()=>this.reject(Error("Stream closed")))}async peek(A,Q,B){let Y=await this.read(A,Q,B);return this.peekQueue.push(A.subarray(Q,Q+Y)),Y}async read(A,Q,B){if(B===0)return 0;if(this.peekQueue.length===0&&this.endOfStream)throw new E7A.EndOfStreamError;let Y=B,J=0;while(this.peekQueue.length>0&&Y>0){let C=this.peekQueue.pop();if(!C)throw Error("peekData should be defined");let X=Math.min(C.length,Y);if(A.set(C.subarray(0,X),Q+J),J+=X,Y-=X,X0&&!this.endOfStream){let C=Math.min(Y,TBB),X=await this.readFromStream(A,Q+J,C);if(J+=X,X{this.readDeferred(J)}),J.deferred.promise}}readDeferred(A){let Q=this.s.read(A.length);if(Q)A.buffer.set(Q,A.offset),A.deferred.resolve(Q.length),this.deferred=null;else this.s.once("readable",()=>{this.readDeferred(A)})}reject(A){if(this.endOfStream=!0,this.deferred)this.deferred.reject(A),this.deferred=null}}bx.StreamReader=K7A});var bH=R((UR)=>{Object.defineProperty(UR,"__esModule",{value:!0});UR.StreamReader=UR.EndOfStreamError=void 0;var SBB=$R();Object.defineProperty(UR,"EndOfStreamError",{enumerable:!0,get:function(){return SBB.EndOfStreamError}});var kBB=I7A();Object.defineProperty(UR,"StreamReader",{enumerable:!0,get:function(){return kBB.StreamReader}})});var mx=R((D7A)=>{Object.defineProperty(D7A,"__esModule",{value:!0});D7A.AbstractTokenizer=void 0;var ER=bH();class H7A{constructor(A){this.position=0,this.numBuffer=new Uint8Array(8),this.fileInfo=A?A:{}}async readToken(A,Q=this.position){let B=Buffer.alloc(A.len);if(await this.readBuffer(B,{position:Q})Q)return this.position+=Q,Q}return this.position+=A,A}async close(){}normalizeOptions(A,Q){if(Q&&Q.position!==void 0&&Q.position{Object.defineProperty(q7A,"__esModule",{value:!0});q7A.ReadStreamTokenizer=void 0;var vBB=mx(),KR=bH(),yBB=256000;class L7A extends vBB.AbstractTokenizer{constructor(A,Q){super(Q);this.streamReader=new KR.StreamReader(A)}async getFileInfo(){return this.fileInfo}async readBuffer(A,Q){let B=this.normalizeOptions(A,Q),Y=B.position-this.position;if(Y>0)return await this.ignore(Y),this.readBuffer(A,Q);else if(Y<0)throw Error("`options.position` must be equal or greater than `tokenizer.position`");if(B.length===0)return 0;let J=await this.streamReader.read(A,B.offset,B.length);if(this.position+=J,(!Q||!Q.mayBeLess)&&J0){let C=new Uint8Array(B.length+J);return Y=await this.peekBuffer(C,{mayBeLess:B.mayBeLess}),A.set(C.subarray(J),B.offset),Y-J}else if(J<0)throw Error("Cannot peek from a negative offset in a stream")}if(B.length>0){try{Y=await this.streamReader.peek(A,B.offset,B.length)}catch(J){if(Q&&Q.mayBeLess&&J instanceof KR.EndOfStreamError)return 0;throw J}if(!B.mayBeLess&&Y{Object.defineProperty(w7A,"__esModule",{value:!0});w7A.BufferTokenizer=void 0;var hBB=bH(),gBB=mx();class R7A extends gBB.AbstractTokenizer{constructor(A,Q){super(Q);this.uint8Array=A,this.fileInfo.size=this.fileInfo.size?this.fileInfo.size:A.length}async readBuffer(A,Q){if(Q&&Q.position){if(Q.position{Object.defineProperty(ux,"__esModule",{value:!0});ux.fromBuffer=ux.fromStream=ux.EndOfStreamError=void 0;var xBB=z7A(),fBB=O7A(),bBB=bH();Object.defineProperty(ux,"EndOfStreamError",{enumerable:!0,get:function(){return bBB.EndOfStreamError}});function mBB(A,Q){return Q=Q?Q:{},new xBB.ReadStreamTokenizer(A,Q)}ux.fromStream=mBB;function uBB(A,Q){return new fBB.BufferTokenizer(A,Q)}ux.fromBuffer=uBB});var S7A=R((cBB)=>{cBB.stringToBytes=(A)=>[...A].map((Q)=>Q.charCodeAt(0));cBB.tarHeaderChecksumMatches=(A,Q=0)=>{let B=parseInt(A.toString("utf8",148,154).replace(/\0.*$/,"").trim(),8);if(isNaN(B))return!1;let Y=256;for(let J=Q;J{return A[Q+3]&127|A[Q+2]<<7|A[Q+1]<<14|A[Q]<<21},len:4}});var _7A=R((T7Y,k7A)=>{k7A.exports={extensions:["jpg","png","apng","gif","webp","flif","xcf","cr2","cr3","orf","arw","dng","nef","rw2","raf","tif","bmp","icns","jxr","psd","indd","zip","tar","rar","gz","bz2","7z","dmg","mp4","mid","mkv","webm","mov","avi","mpg","mp2","mp3","m4a","oga","ogg","ogv","opus","flac","wav","spx","amr","pdf","epub","exe","swf","rtf","wasm","woff","woff2","eot","ttf","otf","ico","flv","ps","xz","sqlite","nes","crx","xpi","cab","deb","ar","rpm","Z","lz","cfb","mxf","mts","blend","bpg","docx","pptx","xlsx","3gp","3g2","jp2","jpm","jpx","mj2","aif","qcp","odt","ods","odp","xml","mobi","heic","cur","ktx","ape","wv","dcm","ics","glb","pcap","dsf","lnk","alias","voc","ac3","m4v","m4p","m4b","f4v","f4p","f4b","f4a","mie","asf","ogm","ogx","mpc","arrow","shp","aac","mp1","it","s3m","xm","ai","skp","avif","eps","lzh","pgp","asar","stl","chm","3mf","zst","jxl","vcf"],mimeTypes:["image/jpeg","image/png","image/gif","image/webp","image/flif","image/x-xcf","image/x-canon-cr2","image/x-canon-cr3","image/tiff","image/bmp","image/vnd.ms-photo","image/vnd.adobe.photoshop","application/x-indesign","application/epub+zip","application/x-xpinstall","application/vnd.oasis.opendocument.text","application/vnd.oasis.opendocument.spreadsheet","application/vnd.oasis.opendocument.presentation","application/vnd.openxmlformats-officedocument.wordprocessingml.document","application/vnd.openxmlformats-officedocument.presentationml.presentation","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet","application/zip","application/x-tar","application/x-rar-compressed","application/gzip","application/x-bzip2","application/x-7z-compressed","application/x-apple-diskimage","application/x-apache-arrow","video/mp4","audio/midi","video/x-matroska","video/webm","video/quicktime","video/vnd.avi","audio/vnd.wave","audio/qcelp","audio/x-ms-asf","video/x-ms-asf","application/vnd.ms-asf","video/mpeg","video/3gpp","audio/mpeg","audio/mp4","audio/opus","video/ogg","audio/ogg","application/ogg","audio/x-flac","audio/ape","audio/wavpack","audio/amr","application/pdf","application/x-msdownload","application/x-shockwave-flash","application/rtf","application/wasm","font/woff","font/woff2","application/vnd.ms-fontobject","font/ttf","font/otf","image/x-icon","video/x-flv","application/postscript","application/eps","application/x-xz","application/x-sqlite3","application/x-nintendo-nes-rom","application/x-google-chrome-extension","application/vnd.ms-cab-compressed","application/x-deb","application/x-unix-archive","application/x-rpm","application/x-compress","application/x-lzip","application/x-cfb","application/x-mie","application/mxf","video/mp2t","application/x-blender","image/bpg","image/jp2","image/jpx","image/jpm","image/mj2","audio/aiff","application/xml","application/x-mobipocket-ebook","image/heif","image/heif-sequence","image/heic","image/heic-sequence","image/icns","image/ktx","application/dicom","audio/x-musepack","text/calendar","text/vcard","model/gltf-binary","application/vnd.tcpdump.pcap","audio/x-dsf","application/x.ms.shortcut","application/x.apple.alias","audio/x-voc","audio/vnd.dolby.dd-raw","audio/x-m4a","image/apng","image/x-olympus-orf","image/x-sony-arw","image/x-adobe-dng","image/x-nikon-nef","image/x-panasonic-rw2","image/x-fujifilm-raf","video/x-m4v","video/3gpp2","application/x-esri-shape","audio/aac","audio/x-it","audio/x-s3m","audio/x-xm","video/MP1S","video/MP2P","application/vnd.sketchup.skp","image/avif","application/x-lzh-compressed","application/pgp-encrypted","application/x-asar","model/stl","application/vnd.ms-htmlhelp","model/3mf","image/jxl","application/zstd"]}});var g7A=R((h7A,cx)=>{var OX=J7A(),VR=T7A(),{stringToBytes:nBB,tarHeaderChecksumMatches:sBB,uint32SyncSafeToken:rBB}=S7A(),v7A=_7A(),S7Y=4100;async function aBB(A){let Q=await VR.fromStream(A);try{return await IR(Q)}finally{await Q.close()}}async function y7A(A){if(!(A instanceof Uint8Array||A instanceof ArrayBuffer||Buffer.isBuffer(A)))throw TypeError(`Expected the \`input\` argument to be of type \`Uint8Array\` or \`Buffer\` or \`ArrayBuffer\`, got \`${typeof A}\``);let Q=A instanceof Buffer?A:Buffer.from(A);if(!(Q&&Q.length>1))return;let B=VR.fromBuffer(Q);return IR(B)}function d1(A,Q,B){B={offset:0,...B};for(let[Y,J]of Q.entries())if(B.mask){if(J!==(B.mask[Y]&A[Y+B.offset]))return!1}else if(J!==A[Y+B.offset])return!1;return!0}async function IR(A){try{return oBB(A)}catch(Q){if(!(Q instanceof VR.EndOfStreamError))throw Q}}async function oBB(A){let Q=Buffer.alloc(4100),B=12,Y=(C,X)=>d1(Q,C,X),J=(C,X)=>Y(nBB(C),X);if(!A.fileInfo.size)A.fileInfo.size=Number.MAX_SAFE_INTEGER;if(await A.peekBuffer(Q,{length:B,mayBeLess:!0}),Y([66,77]))return{ext:"bmp",mime:"image/bmp"};if(Y([11,119]))return{ext:"ac3",mime:"audio/vnd.dolby.dd-raw"};if(Y([120,1]))return{ext:"dmg",mime:"application/x-apple-diskimage"};if(Y([77,90]))return{ext:"exe",mime:"application/x-msdownload"};if(Y([37,33])){if(await A.peekBuffer(Q,{length:24,mayBeLess:!0}),J("PS-Adobe-",{offset:2})&&J(" EPSF-",{offset:14}))return{ext:"eps",mime:"application/eps"};return{ext:"ps",mime:"application/postscript"}}if(Y([31,160])||Y([31,157]))return{ext:"Z",mime:"application/x-compress"};if(Y([255,216,255]))return{ext:"jpg",mime:"image/jpeg"};if(Y([73,73,188]))return{ext:"jxr",mime:"image/vnd.ms-photo"};if(Y([31,139,8]))return{ext:"gz",mime:"application/gzip"};if(Y([66,90,104]))return{ext:"bz2",mime:"application/x-bzip2"};if(J("ID3")){await A.ignore(6);let C=await A.readToken(rBB);if(A.position+C>A.fileInfo.size)return{ext:"mp3",mime:"audio/mpeg"};return await A.ignore(C),IR(A)}if(J("MP+"))return{ext:"mpc",mime:"audio/x-musepack"};if((Q[0]===67||Q[0]===70)&&Y([87,83],{offset:1}))return{ext:"swf",mime:"application/x-shockwave-flash"};if(Y([71,73,70]))return{ext:"gif",mime:"image/gif"};if(J("FLIF"))return{ext:"flif",mime:"image/flif"};if(J("8BPS"))return{ext:"psd",mime:"image/vnd.adobe.photoshop"};if(J("WEBP",{offset:8}))return{ext:"webp",mime:"image/webp"};if(J("MPCK"))return{ext:"mpc",mime:"audio/x-musepack"};if(J("FORM"))return{ext:"aif",mime:"audio/aiff"};if(J("icns",{offset:0}))return{ext:"icns",mime:"image/icns"};if(Y([80,75,3,4])){try{while(A.position+30=0?X:Q.length)}else await A.ignore(C.compressedSize)}}catch(C){if(!(C instanceof VR.EndOfStreamError))throw C}return{ext:"zip",mime:"application/zip"}}if(J("OggS")){await A.ignore(28);let C=Buffer.alloc(8);if(await A.readBuffer(C),d1(C,[79,112,117,115,72,101,97,100]))return{ext:"opus",mime:"audio/opus"};if(d1(C,[128,116,104,101,111,114,97]))return{ext:"ogv",mime:"video/ogg"};if(d1(C,[1,118,105,100,101,111,0]))return{ext:"ogm",mime:"video/ogg"};if(d1(C,[127,70,76,65,67]))return{ext:"oga",mime:"audio/ogg"};if(d1(C,[83,112,101,101,120,32,32]))return{ext:"spx",mime:"audio/ogg"};if(d1(C,[1,118,111,114,98,105,115]))return{ext:"ogg",mime:"audio/ogg"};return{ext:"ogx",mime:"application/ogg"}}if(Y([80,75])&&(Q[2]===3||Q[2]===5||Q[2]===7)&&(Q[3]===4||Q[3]===6||Q[3]===8))return{ext:"zip",mime:"application/zip"};if(J("ftyp",{offset:4})&&(Q[8]&96)!==0){let C=Q.toString("binary",8,12).replace("\x00"," ").trim();switch(C){case"avif":return{ext:"avif",mime:"image/avif"};case"mif1":return{ext:"heic",mime:"image/heif"};case"msf1":return{ext:"heic",mime:"image/heif-sequence"};case"heic":case"heix":return{ext:"heic",mime:"image/heic"};case"hevc":case"hevx":return{ext:"heic",mime:"image/heic-sequence"};case"qt":return{ext:"mov",mime:"video/quicktime"};case"M4V":case"M4VH":case"M4VP":return{ext:"m4v",mime:"video/x-m4v"};case"M4P":return{ext:"m4p",mime:"video/mp4"};case"M4B":return{ext:"m4b",mime:"audio/mp4"};case"M4A":return{ext:"m4a",mime:"audio/x-m4a"};case"F4V":return{ext:"f4v",mime:"video/mp4"};case"F4P":return{ext:"f4p",mime:"video/mp4"};case"F4A":return{ext:"f4a",mime:"audio/mp4"};case"F4B":return{ext:"f4b",mime:"audio/mp4"};case"crx":return{ext:"cr3",mime:"image/x-canon-cr3"};default:if(C.startsWith("3g")){if(C.startsWith("3g2"))return{ext:"3g2",mime:"video/3gpp2"};return{ext:"3gp",mime:"video/3gpp"}}return{ext:"mp4",mime:"video/mp4"}}}if(J("MThd"))return{ext:"mid",mime:"audio/midi"};if(J("wOFF")&&(Y([0,1,0,0],{offset:4})||J("OTTO",{offset:4})))return{ext:"woff",mime:"font/woff"};if(J("wOF2")&&(Y([0,1,0,0],{offset:4})||J("OTTO",{offset:4})))return{ext:"woff2",mime:"font/woff2"};if(Y([212,195,178,161])||Y([161,178,195,212]))return{ext:"pcap",mime:"application/vnd.tcpdump.pcap"};if(J("DSD "))return{ext:"dsf",mime:"audio/x-dsf"};if(J("LZIP"))return{ext:"lz",mime:"application/x-lzip"};if(J("fLaC"))return{ext:"flac",mime:"audio/x-flac"};if(Y([66,80,71,251]))return{ext:"bpg",mime:"image/bpg"};if(J("wvpk"))return{ext:"wv",mime:"audio/wavpack"};if(J("%PDF")){await A.ignore(1350);let C=10485760,X=Buffer.alloc(Math.min(C,A.fileInfo.size));if(await A.readBuffer(X,{mayBeLess:!0}),X.includes(Buffer.from("AIPrivateData")))return{ext:"ai",mime:"application/postscript"};return{ext:"pdf",mime:"application/pdf"}}if(Y([0,97,115,109]))return{ext:"wasm",mime:"application/wasm"};if(Y([73,73,42,0])){if(J("CR",{offset:8}))return{ext:"cr2",mime:"image/x-canon-cr2"};if(Y([28,0,254,0],{offset:8})||Y([31,0,11,0],{offset:8}))return{ext:"nef",mime:"image/x-nikon-nef"};if(Y([8,0,0,0],{offset:4})&&(Y([45,0,254,0],{offset:8})||Y([39,0,254,0],{offset:8})))return{ext:"dng",mime:"image/x-adobe-dng"};if(Q=Buffer.alloc(24),await A.peekBuffer(Q),(Y([16,251,134,1],{offset:4})||Y([8,0,0,0],{offset:4}))&&Y([0,254,0,4,0,1,0,0,0,1,0,0,0,3,1],{offset:9}))return{ext:"arw",mime:"image/x-sony-arw"};return{ext:"tif",mime:"image/tiff"}}if(Y([77,77,0,42]))return{ext:"tif",mime:"image/tiff"};if(J("MAC "))return{ext:"ape",mime:"audio/ape"};if(Y([26,69,223,163])){async function C(){let Z=await A.peekNumber(OX.UINT8),U=128,$=0;while((Z&U)===0&&U!==0)++$,U>>=1;let E=Buffer.alloc($+1);return await A.readBuffer(E),E}async function X(){let Z=await C(),U=await C();U[0]^=128>>U.length-1;let $=Math.min(6,U.length);return{id:Z.readUIntBE(0,Z.length),len:U.readUIntBE(U.length-$,$)}}async function G(Z,U){while(U>0){let $=await X();if($.id===17026)return A.readToken(new OX.StringType($.len,"utf-8"));await A.ignore($.len),--U}}let F=await X();switch(await G(1,F.len)){case"webm":return{ext:"webm",mime:"video/webm"};case"matroska":return{ext:"mkv",mime:"video/x-matroska"};default:return}}if(Y([82,73,70,70])){if(Y([65,86,73],{offset:8}))return{ext:"avi",mime:"video/vnd.avi"};if(Y([87,65,86,69],{offset:8}))return{ext:"wav",mime:"audio/vnd.wave"};if(Y([81,76,67,77],{offset:8}))return{ext:"qcp",mime:"audio/qcelp"}}if(J("SQLi"))return{ext:"sqlite",mime:"application/x-sqlite3"};if(Y([78,69,83,26]))return{ext:"nes",mime:"application/x-nintendo-nes-rom"};if(J("Cr24"))return{ext:"crx",mime:"application/x-google-chrome-extension"};if(J("MSCF")||J("ISc("))return{ext:"cab",mime:"application/vnd.ms-cab-compressed"};if(Y([237,171,238,219]))return{ext:"rpm",mime:"application/x-rpm"};if(Y([197,208,211,198]))return{ext:"eps",mime:"application/eps"};if(Y([40,181,47,253]))return{ext:"zst",mime:"application/zstd"};if(Y([79,84,84,79,0]))return{ext:"otf",mime:"font/otf"};if(J("#!AMR"))return{ext:"amr",mime:"audio/amr"};if(J("{\\rtf"))return{ext:"rtf",mime:"application/rtf"};if(Y([70,76,86,1]))return{ext:"flv",mime:"video/x-flv"};if(J("IMPM"))return{ext:"it",mime:"audio/x-it"};if(J("-lh0-",{offset:2})||J("-lh1-",{offset:2})||J("-lh2-",{offset:2})||J("-lh3-",{offset:2})||J("-lh4-",{offset:2})||J("-lh5-",{offset:2})||J("-lh6-",{offset:2})||J("-lh7-",{offset:2})||J("-lzs-",{offset:2})||J("-lz4-",{offset:2})||J("-lz5-",{offset:2})||J("-lhd-",{offset:2}))return{ext:"lzh",mime:"application/x-lzh-compressed"};if(Y([0,0,1,186])){if(Y([33],{offset:4,mask:[241]}))return{ext:"mpg",mime:"video/MP1S"};if(Y([68],{offset:4,mask:[196]}))return{ext:"mpg",mime:"video/MP2P"}}if(J("ITSF"))return{ext:"chm",mime:"application/vnd.ms-htmlhelp"};if(Y([253,55,122,88,90,0]))return{ext:"xz",mime:"application/x-xz"};if(J("")){if(await A.ignore(8),await A.readToken(new OX.StringType(13,"ascii"))==="debian-binary")return{ext:"deb",mime:"application/x-deb"};return{ext:"ar",mime:"application/x-unix-archive"}}if(Y([137,80,78,71,13,10,26,10])){await A.ignore(8);async function C(){return{length:await A.readToken(OX.INT32_BE),type:await A.readToken(new OX.StringType(4,"binary"))}}do{let X=await C();if(X.length<0)return;switch(X.type){case"IDAT":return{ext:"png",mime:"image/png"};case"acTL":return{ext:"apng",mime:"image/apng"};default:await A.ignore(X.length+4)}}while(A.position+8=16){let C=Q.readUInt32LE(12);if(C>12&&Q.length>=C+16)try{let X=Q.slice(16,C+16).toString();if(JSON.parse(X).files)return{ext:"asar",mime:"application/x-asar"}}catch(X){}}if(Y([6,14,43,52,2,5,1,1,13,1,2,1,1,2]))return{ext:"mxf",mime:"application/mxf"};if(J("SCRM",{offset:44}))return{ext:"s3m",mime:"audio/x-s3m"};if(Y([71],{offset:4})&&(Y([71],{offset:192})||Y([71],{offset:196})))return{ext:"mts",mime:"video/mp2t"};if(Y([66,79,79,75,77,79,66,73],{offset:60}))return{ext:"mobi",mime:"application/x-mobipocket-ebook"};if(Y([68,73,67,77],{offset:128}))return{ext:"dcm",mime:"application/dicom"};if(Y([76,0,0,0,1,20,2,0,0,0,0,0,192,0,0,0,0,0,0,70]))return{ext:"lnk",mime:"application/x.ms.shortcut"};if(Y([98,111,111,107,0,0,0,0,109,97,114,107,0,0,0,0]))return{ext:"alias",mime:"application/x.apple.alias"};if(Y([76,80],{offset:34})&&(Y([0,0,1],{offset:8})||Y([1,0,2],{offset:8})||Y([2,0,2],{offset:8})))return{ext:"eot",mime:"application/vnd.ms-fontobject"};if(Y([6,6,237,245,216,29,70,229,189,49,239,231,254,116,183,29]))return{ext:"indd",mime:"application/x-indesign"};if(await A.peekBuffer(Q,{length:Math.min(512,A.fileInfo.size),mayBeLess:!0}),sBB(Q))return{ext:"tar",mime:"application/x-tar"};if(Y([255,254,255,14,83,0,107,0,101,0,116,0,99,0,104,0,85,0,112,0,32,0,77,0,111,0,100,0,101,0,108,0]))return{ext:"skp",mime:"application/vnd.sketchup.skp"};if(J("-----BEGIN PGP MESSAGE-----"))return{ext:"pgp",mime:"application/pgp-encrypted"};if(Q.length>=2&&Y([255,224],{offset:0,mask:[255,224]})){if(Y([16],{offset:1,mask:[22]})){if(Y([8],{offset:1,mask:[8]}))return{ext:"aac",mime:"audio/aac"};return{ext:"aac",mime:"audio/aac"}}if(Y([2],{offset:1,mask:[6]}))return{ext:"mp3",mime:"audio/mpeg"};if(Y([4],{offset:1,mask:[6]}))return{ext:"mp2",mime:"audio/mpeg"};if(Y([6],{offset:1,mask:[6]}))return{ext:"mp1",mime:"audio/mpeg"}}}var tBB=(readableStream)=>new Promise((resolve,reject)=>{let stream=eval("require")("stream");readableStream.on("error",reject),readableStream.once("readable",async()=>{let A=new stream.PassThrough,Q;if(stream.pipeline)Q=stream.pipeline(readableStream,A,()=>{});else Q=readableStream.pipe(A);let B=readableStream.read(4100)||readableStream.read()||Buffer.alloc(0);try{let Y=await y7A(B);A.fileType=Y}catch(Y){reject(Y)}resolve(Q)})}),dx={fromStream:aBB,fromTokenizer:IR,fromBuffer:y7A,stream:tBB};Object.defineProperty(dx,"extensions",{get(){return new Set(v7A.extensions)}});Object.defineProperty(dx,"mimeTypes",{get(){return new Set(v7A.mimeTypes)}});cx.exports=dx});var f7A=R((HR,x7A)=>{(function(A,Q){typeof HR==="object"&&typeof x7A<"u"?Q(HR):typeof define==="function"&&define.amd?define(["exports"],Q):Q(A.awaitToJs={})})(HR,function(A){function Q(B,Y){return B.then(function(J){return[null,J]}).catch(function(J){if(Y)Object.assign(J,Y);return[J,void 0]})}A.to=Q,A.default=Q,Object.defineProperty(A,"__esModule",{value:!0})})});var l7A=R((y7Y,c7A)=>{function DR(){this._types=Object.create(null),this._extensions=Object.create(null);for(let A=0;A{p7A.exports={"application/andrew-inset":["ez"],"application/applixware":["aw"],"application/atom+xml":["atom"],"application/atomcat+xml":["atomcat"],"application/atomdeleted+xml":["atomdeleted"],"application/atomsvc+xml":["atomsvc"],"application/atsc-dwd+xml":["dwd"],"application/atsc-held+xml":["held"],"application/atsc-rsat+xml":["rsat"],"application/bdoc":["bdoc"],"application/calendar+xml":["xcs"],"application/ccxml+xml":["ccxml"],"application/cdfx+xml":["cdfx"],"application/cdmi-capability":["cdmia"],"application/cdmi-container":["cdmic"],"application/cdmi-domain":["cdmid"],"application/cdmi-object":["cdmio"],"application/cdmi-queue":["cdmiq"],"application/cu-seeme":["cu"],"application/dash+xml":["mpd"],"application/davmount+xml":["davmount"],"application/docbook+xml":["dbk"],"application/dssc+der":["dssc"],"application/dssc+xml":["xdssc"],"application/ecmascript":["es","ecma"],"application/emma+xml":["emma"],"application/emotionml+xml":["emotionml"],"application/epub+zip":["epub"],"application/exi":["exi"],"application/express":["exp"],"application/fdt+xml":["fdt"],"application/font-tdpfr":["pfr"],"application/geo+json":["geojson"],"application/gml+xml":["gml"],"application/gpx+xml":["gpx"],"application/gxf":["gxf"],"application/gzip":["gz"],"application/hjson":["hjson"],"application/hyperstudio":["stk"],"application/inkml+xml":["ink","inkml"],"application/ipfix":["ipfix"],"application/its+xml":["its"],"application/java-archive":["jar","war","ear"],"application/java-serialized-object":["ser"],"application/java-vm":["class"],"application/javascript":["js","mjs"],"application/json":["json","map"],"application/json5":["json5"],"application/jsonml+json":["jsonml"],"application/ld+json":["jsonld"],"application/lgr+xml":["lgr"],"application/lost+xml":["lostxml"],"application/mac-binhex40":["hqx"],"application/mac-compactpro":["cpt"],"application/mads+xml":["mads"],"application/manifest+json":["webmanifest"],"application/marc":["mrc"],"application/marcxml+xml":["mrcx"],"application/mathematica":["ma","nb","mb"],"application/mathml+xml":["mathml"],"application/mbox":["mbox"],"application/mediaservercontrol+xml":["mscml"],"application/metalink+xml":["metalink"],"application/metalink4+xml":["meta4"],"application/mets+xml":["mets"],"application/mmt-aei+xml":["maei"],"application/mmt-usd+xml":["musd"],"application/mods+xml":["mods"],"application/mp21":["m21","mp21"],"application/mp4":["mp4s","m4p"],"application/msword":["doc","dot"],"application/mxf":["mxf"],"application/n-quads":["nq"],"application/n-triples":["nt"],"application/node":["cjs"],"application/octet-stream":["bin","dms","lrf","mar","so","dist","distz","pkg","bpk","dump","elc","deploy","exe","dll","deb","dmg","iso","img","msi","msp","msm","buffer"],"application/oda":["oda"],"application/oebps-package+xml":["opf"],"application/ogg":["ogx"],"application/omdoc+xml":["omdoc"],"application/onenote":["onetoc","onetoc2","onetmp","onepkg"],"application/oxps":["oxps"],"application/p2p-overlay+xml":["relo"],"application/patch-ops-error+xml":["xer"],"application/pdf":["pdf"],"application/pgp-encrypted":["pgp"],"application/pgp-signature":["asc","sig"],"application/pics-rules":["prf"],"application/pkcs10":["p10"],"application/pkcs7-mime":["p7m","p7c"],"application/pkcs7-signature":["p7s"],"application/pkcs8":["p8"],"application/pkix-attr-cert":["ac"],"application/pkix-cert":["cer"],"application/pkix-crl":["crl"],"application/pkix-pkipath":["pkipath"],"application/pkixcmp":["pki"],"application/pls+xml":["pls"],"application/postscript":["ai","eps","ps"],"application/provenance+xml":["provx"],"application/pskc+xml":["pskcxml"],"application/raml+yaml":["raml"],"application/rdf+xml":["rdf","owl"],"application/reginfo+xml":["rif"],"application/relax-ng-compact-syntax":["rnc"],"application/resource-lists+xml":["rl"],"application/resource-lists-diff+xml":["rld"],"application/rls-services+xml":["rs"],"application/route-apd+xml":["rapd"],"application/route-s-tsid+xml":["sls"],"application/route-usd+xml":["rusd"],"application/rpki-ghostbusters":["gbr"],"application/rpki-manifest":["mft"],"application/rpki-roa":["roa"],"application/rsd+xml":["rsd"],"application/rss+xml":["rss"],"application/rtf":["rtf"],"application/sbml+xml":["sbml"],"application/scvp-cv-request":["scq"],"application/scvp-cv-response":["scs"],"application/scvp-vp-request":["spq"],"application/scvp-vp-response":["spp"],"application/sdp":["sdp"],"application/senml+xml":["senmlx"],"application/sensml+xml":["sensmlx"],"application/set-payment-initiation":["setpay"],"application/set-registration-initiation":["setreg"],"application/shf+xml":["shf"],"application/sieve":["siv","sieve"],"application/smil+xml":["smi","smil"],"application/sparql-query":["rq"],"application/sparql-results+xml":["srx"],"application/srgs":["gram"],"application/srgs+xml":["grxml"],"application/sru+xml":["sru"],"application/ssdl+xml":["ssdl"],"application/ssml+xml":["ssml"],"application/swid+xml":["swidtag"],"application/tei+xml":["tei","teicorpus"],"application/thraud+xml":["tfi"],"application/timestamped-data":["tsd"],"application/toml":["toml"],"application/trig":["trig"],"application/ttml+xml":["ttml"],"application/ubjson":["ubj"],"application/urc-ressheet+xml":["rsheet"],"application/urc-targetdesc+xml":["td"],"application/voicexml+xml":["vxml"],"application/wasm":["wasm"],"application/widget":["wgt"],"application/winhlp":["hlp"],"application/wsdl+xml":["wsdl"],"application/wspolicy+xml":["wspolicy"],"application/xaml+xml":["xaml"],"application/xcap-att+xml":["xav"],"application/xcap-caps+xml":["xca"],"application/xcap-diff+xml":["xdf"],"application/xcap-el+xml":["xel"],"application/xcap-ns+xml":["xns"],"application/xenc+xml":["xenc"],"application/xhtml+xml":["xhtml","xht"],"application/xliff+xml":["xlf"],"application/xml":["xml","xsl","xsd","rng"],"application/xml-dtd":["dtd"],"application/xop+xml":["xop"],"application/xproc+xml":["xpl"],"application/xslt+xml":["*xsl","xslt"],"application/xspf+xml":["xspf"],"application/xv+xml":["mxml","xhvml","xvml","xvm"],"application/yang":["yang"],"application/yin+xml":["yin"],"application/zip":["zip"],"audio/3gpp":["*3gpp"],"audio/adpcm":["adp"],"audio/amr":["amr"],"audio/basic":["au","snd"],"audio/midi":["mid","midi","kar","rmi"],"audio/mobile-xmf":["mxmf"],"audio/mp3":["*mp3"],"audio/mp4":["m4a","mp4a"],"audio/mpeg":["mpga","mp2","mp2a","mp3","m2a","m3a"],"audio/ogg":["oga","ogg","spx","opus"],"audio/s3m":["s3m"],"audio/silk":["sil"],"audio/wav":["wav"],"audio/wave":["*wav"],"audio/webm":["weba"],"audio/xm":["xm"],"font/collection":["ttc"],"font/otf":["otf"],"font/ttf":["ttf"],"font/woff":["woff"],"font/woff2":["woff2"],"image/aces":["exr"],"image/apng":["apng"],"image/avif":["avif"],"image/bmp":["bmp"],"image/cgm":["cgm"],"image/dicom-rle":["drle"],"image/emf":["emf"],"image/fits":["fits"],"image/g3fax":["g3"],"image/gif":["gif"],"image/heic":["heic"],"image/heic-sequence":["heics"],"image/heif":["heif"],"image/heif-sequence":["heifs"],"image/hej2k":["hej2"],"image/hsj2":["hsj2"],"image/ief":["ief"],"image/jls":["jls"],"image/jp2":["jp2","jpg2"],"image/jpeg":["jpeg","jpg","jpe"],"image/jph":["jph"],"image/jphc":["jhc"],"image/jpm":["jpm"],"image/jpx":["jpx","jpf"],"image/jxr":["jxr"],"image/jxra":["jxra"],"image/jxrs":["jxrs"],"image/jxs":["jxs"],"image/jxsc":["jxsc"],"image/jxsi":["jxsi"],"image/jxss":["jxss"],"image/ktx":["ktx"],"image/ktx2":["ktx2"],"image/png":["png"],"image/sgi":["sgi"],"image/svg+xml":["svg","svgz"],"image/t38":["t38"],"image/tiff":["tif","tiff"],"image/tiff-fx":["tfx"],"image/webp":["webp"],"image/wmf":["wmf"],"message/disposition-notification":["disposition-notification"],"message/global":["u8msg"],"message/global-delivery-status":["u8dsn"],"message/global-disposition-notification":["u8mdn"],"message/global-headers":["u8hdr"],"message/rfc822":["eml","mime"],"model/3mf":["3mf"],"model/gltf+json":["gltf"],"model/gltf-binary":["glb"],"model/iges":["igs","iges"],"model/mesh":["msh","mesh","silo"],"model/mtl":["mtl"],"model/obj":["obj"],"model/step+xml":["stpx"],"model/step+zip":["stpz"],"model/step-xml+zip":["stpxz"],"model/stl":["stl"],"model/vrml":["wrl","vrml"],"model/x3d+binary":["*x3db","x3dbz"],"model/x3d+fastinfoset":["x3db"],"model/x3d+vrml":["*x3dv","x3dvz"],"model/x3d+xml":["x3d","x3dz"],"model/x3d-vrml":["x3dv"],"text/cache-manifest":["appcache","manifest"],"text/calendar":["ics","ifb"],"text/coffeescript":["coffee","litcoffee"],"text/css":["css"],"text/csv":["csv"],"text/html":["html","htm","shtml"],"text/jade":["jade"],"text/jsx":["jsx"],"text/less":["less"],"text/markdown":["markdown","md"],"text/mathml":["mml"],"text/mdx":["mdx"],"text/n3":["n3"],"text/plain":["txt","text","conf","def","list","log","in","ini"],"text/richtext":["rtx"],"text/rtf":["*rtf"],"text/sgml":["sgml","sgm"],"text/shex":["shex"],"text/slim":["slim","slm"],"text/spdx":["spdx"],"text/stylus":["stylus","styl"],"text/tab-separated-values":["tsv"],"text/troff":["t","tr","roff","man","me","ms"],"text/turtle":["ttl"],"text/uri-list":["uri","uris","urls"],"text/vcard":["vcard"],"text/vtt":["vtt"],"text/xml":["*xml"],"text/yaml":["yaml","yml"],"video/3gpp":["3gp","3gpp"],"video/3gpp2":["3g2"],"video/h261":["h261"],"video/h263":["h263"],"video/h264":["h264"],"video/iso.segment":["m4s"],"video/jpeg":["jpgv"],"video/jpm":["*jpm","jpgm"],"video/mj2":["mj2","mjp2"],"video/mp2t":["ts"],"video/mp4":["mp4","mp4v","mpg4"],"video/mpeg":["mpeg","mpg","mpe","m1v","m2v"],"video/ogg":["ogv"],"video/quicktime":["qt","mov"],"video/webm":["webm"]}});var s7A=R((g7Y,n7A)=>{var eBB=l7A();n7A.exports=new eBB(i7A())});var GFA=R((d7Y,XFA)=>{XFA.exports={parseSections:function(A,Q){var B,Y;A.setBigEndian(!0);while(A.remainingLength()>0&&Y!==218){if(A.nextUInt8()!==255)throw Error("Invalid JPEG section offset");if(Y=A.nextUInt8(),Y>=208&&Y<=217||Y===218)B=0;else B=A.nextUInt16()-2;Q(Y,A.branch(0,B)),A.skip(B)}},getSizeFromSOFSection:function(A){return A.skip(1),{height:A.nextUInt16(),width:A.nextUInt16()}},getSectionName:function(A){var Q,B;switch(A){case 216:Q="SOI";break;case 196:Q="DHT";break;case 219:Q="DQT";break;case 221:Q="DRI";break;case 218:Q="SOS";break;case 254:Q="COM";break;case 217:Q="EOI";break;default:if(A>=224&&A<=239)Q="APP",B=A-224;else if(A>=192&&A<=207&&A!==196&&A!==200&&A!==204)Q="SOF",B=A-192;else if(A>=208&&A<=215)Q="RST",B=A-208;break}var Y={name:Q};if(typeof B==="number")Y.index=B;return Y}}});var px=R((c7Y,FFA)=>{function Q0B(A,Q){switch(A){case 1:return Q.nextUInt8();case 3:return Q.nextUInt16();case 4:return Q.nextUInt32();case 5:return[Q.nextUInt32(),Q.nextUInt32()];case 6:return Q.nextInt8();case 8:return Q.nextUInt16();case 9:return Q.nextUInt32();case 10:return[Q.nextInt32(),Q.nextInt32()];case 11:return Q.nextFloat();case 12:return Q.nextDouble();default:throw Error("Invalid format while decoding: "+A)}}function B0B(A){switch(A){case 1:case 2:case 6:case 7:return 1;case 3:case 8:return 2;case 4:case 9:case 11:return 4;case 5:case 10:case 12:return 8;default:return 0}}function Y0B(A,Q){var B=Q.nextUInt16(),Y=Q.nextUInt16(),J=B0B(Y),C=Q.nextUInt32(),X=J*C,G,F,W;if(X>4)Q=A.openWithOffset(Q.nextUInt32());if(Y===2){G=Q.nextString(C);var Z=G.indexOf("\x00");if(Z!==-1)G=G.substr(0,Z)}else if(Y===7)G=Q.nextBuffer(C);else if(Y!==0){G=[];for(W=0;W{function ix(A){return parseInt(A,10)}var C0B=3600,X0B=60;function WFA(A,Q){A=A.map(ix),Q=Q.map(ix);var B=A[0],Y=A[1]-1,J=A[2],C=Q[0],X=Q[1],G=Q[2],F=Date.UTC(B,Y,J,C,X,G,0),W=F/1000;return W}function ZFA(A){var Q=A.substr(0,10).split("-"),B=A.substr(11,8).split(":"),Y=A.substr(19,6),J=Y.split(":").map(ix),C=J[0]*C0B+J[1]*X0B,X=WFA(Q,B);if(X-=C,typeof X==="number"&&!isNaN(X))return X}function $FA(A){var Q=A.split(" "),B=Q[0].split(":"),Y=Q[1].split(":"),J=WFA(B,Y);if(typeof J==="number"&&!isNaN(J))return J}function G0B(A){var Q=A.length===19&&A.charAt(4)===":",B=A.length===25&&A.charAt(10)==="T",Y;if(B)return ZFA(A);else if(Q)return $FA(A)}UFA.exports={parseDateWithSpecFormat:$FA,parseDateWithTimezoneFormat:ZFA,parseExifDate:G0B}});var VFA=R((p7Y,KFA)=>{var fU=px(),F0B=EFA(),W0B=[{section:fU.GPSIFD,type:2,name:"GPSLatitude",refType:1,refName:"GPSLatitudeRef",posVal:"N"},{section:fU.GPSIFD,type:4,name:"GPSLongitude",refType:3,refName:"GPSLongitudeRef",posVal:"E"}],Z0B=[{section:fU.SubIFD,type:306,name:"ModifyDate"},{section:fU.SubIFD,type:36867,name:"DateTimeOriginal"},{section:fU.SubIFD,type:36868,name:"CreateDate"},{section:fU.SubIFD,type:306,name:"ModifyDate"}];KFA.exports={castDegreeValues:function(A,Q){W0B.forEach(function(B){var Y=A(B);if(Y){var J=A({section:B.section,type:B.refType,name:B.refName}),C=J===B.posVal?1:-1,X=(Y[0]+Y[1]/60+Y[2]/3600)*C;Q(B,X)}})},castDateValues:function(A,Q){Z0B.forEach(function(B){var Y=A(B);if(Y){var J=F0B.parseExifDate(Y);if(typeof J<"u")Q(B,J)}})},simplifyValue:function(A,Q){if(Array.isArray(A)){if(A=A.map(function(B){if(Q===10||Q===5)return B[0]/B[1];return B}),A.length===1)A=A[0]}return A}}});var HFA=R((i7Y,IFA)=>{IFA.exports={exif:{1:"InteropIndex",2:"InteropVersion",11:"ProcessingSoftware",254:"SubfileType",255:"OldSubfileType",256:"ImageWidth",257:"ImageHeight",258:"BitsPerSample",259:"Compression",262:"PhotometricInterpretation",263:"Thresholding",264:"CellWidth",265:"CellLength",266:"FillOrder",269:"DocumentName",270:"ImageDescription",271:"Make",272:"Model",273:"StripOffsets",274:"Orientation",277:"SamplesPerPixel",278:"RowsPerStrip",279:"StripByteCounts",280:"MinSampleValue",281:"MaxSampleValue",282:"XResolution",283:"YResolution",284:"PlanarConfiguration",285:"PageName",286:"XPosition",287:"YPosition",288:"FreeOffsets",289:"FreeByteCounts",290:"GrayResponseUnit",291:"GrayResponseCurve",292:"T4Options",293:"T6Options",296:"ResolutionUnit",297:"PageNumber",300:"ColorResponseUnit",301:"TransferFunction",305:"Software",306:"ModifyDate",315:"Artist",316:"HostComputer",317:"Predictor",318:"WhitePoint",319:"PrimaryChromaticities",320:"ColorMap",321:"HalftoneHints",322:"TileWidth",323:"TileLength",324:"TileOffsets",325:"TileByteCounts",326:"BadFaxLines",327:"CleanFaxData",328:"ConsecutiveBadFaxLines",330:"SubIFD",332:"InkSet",333:"InkNames",334:"NumberofInks",336:"DotRange",337:"TargetPrinter",338:"ExtraSamples",339:"SampleFormat",340:"SMinSampleValue",341:"SMaxSampleValue",342:"TransferRange",343:"ClipPath",344:"XClipPathUnits",345:"YClipPathUnits",346:"Indexed",347:"JPEGTables",351:"OPIProxy",400:"GlobalParametersIFD",401:"ProfileType",402:"FaxProfile",403:"CodingMethods",404:"VersionYear",405:"ModeNumber",433:"Decode",434:"DefaultImageColor",435:"T82Options",437:"JPEGTables",512:"JPEGProc",513:"ThumbnailOffset",514:"ThumbnailLength",515:"JPEGRestartInterval",517:"JPEGLosslessPredictors",518:"JPEGPointTransforms",519:"JPEGQTables",520:"JPEGDCTables",521:"JPEGACTables",529:"YCbCrCoefficients",530:"YCbCrSubSampling",531:"YCbCrPositioning",532:"ReferenceBlackWhite",559:"StripRowCounts",700:"ApplicationNotes",999:"USPTOMiscellaneous",4096:"RelatedImageFileFormat",4097:"RelatedImageWidth",4098:"RelatedImageHeight",18246:"Rating",18247:"XP_DIP_XML",18248:"StitchInfo",18249:"RatingPercent",32781:"ImageID",32931:"WangTag1",32932:"WangAnnotation",32933:"WangTag3",32934:"WangTag4",32995:"Matteing",32996:"DataType",32997:"ImageDepth",32998:"TileDepth",33405:"Model2",33421:"CFARepeatPatternDim",33422:"CFAPattern2",33423:"BatteryLevel",33424:"KodakIFD",33432:"Copyright",33434:"ExposureTime",33437:"FNumber",33445:"MDFileTag",33446:"MDScalePixel",33447:"MDColorTable",33448:"MDLabName",33449:"MDSampleInfo",33450:"MDPrepDate",33451:"MDPrepTime",33452:"MDFileUnits",33550:"PixelScale",33589:"AdventScale",33590:"AdventRevision",33628:"UIC1Tag",33629:"UIC2Tag",33630:"UIC3Tag",33631:"UIC4Tag",33723:"IPTC-NAA",33918:"IntergraphPacketData",33919:"IntergraphFlagRegisters",33920:"IntergraphMatrix",33921:"INGRReserved",33922:"ModelTiePoint",34016:"Site",34017:"ColorSequence",34018:"IT8Header",34019:"RasterPadding",34020:"BitsPerRunLength",34021:"BitsPerExtendedRunLength",34022:"ColorTable",34023:"ImageColorIndicator",34024:"BackgroundColorIndicator",34025:"ImageColorValue",34026:"BackgroundColorValue",34027:"PixelIntensityRange",34028:"TransparencyIndicator",34029:"ColorCharacterization",34030:"HCUsage",34031:"TrapIndicator",34032:"CMYKEquivalent",34118:"SEMInfo",34152:"AFCP_IPTC",34232:"PixelMagicJBIGOptions",34264:"ModelTransform",34306:"WB_GRGBLevels",34310:"LeafData",34377:"PhotoshopSettings",34665:"ExifOffset",34675:"ICC_Profile",34687:"TIFF_FXExtensions",34688:"MultiProfiles",34689:"SharedData",34690:"T88Options",34732:"ImageLayer",34735:"GeoTiffDirectory",34736:"GeoTiffDoubleParams",34737:"GeoTiffAsciiParams",34850:"ExposureProgram",34852:"SpectralSensitivity",34853:"GPSInfo",34855:"ISO",34856:"Opto-ElectricConvFactor",34857:"Interlace",34858:"TimeZoneOffset",34859:"SelfTimerMode",34864:"SensitivityType",34865:"StandardOutputSensitivity",34866:"RecommendedExposureIndex",34867:"ISOSpeed",34868:"ISOSpeedLatitudeyyy",34869:"ISOSpeedLatitudezzz",34908:"FaxRecvParams",34909:"FaxSubAddress",34910:"FaxRecvTime",34954:"LeafSubIFD",36864:"ExifVersion",36867:"DateTimeOriginal",36868:"CreateDate",37121:"ComponentsConfiguration",37122:"CompressedBitsPerPixel",37377:"ShutterSpeedValue",37378:"ApertureValue",37379:"BrightnessValue",37380:"ExposureCompensation",37381:"MaxApertureValue",37382:"SubjectDistance",37383:"MeteringMode",37384:"LightSource",37385:"Flash",37386:"FocalLength",37387:"FlashEnergy",37388:"SpatialFrequencyResponse",37389:"Noise",37390:"FocalPlaneXResolution",37391:"FocalPlaneYResolution",37392:"FocalPlaneResolutionUnit",37393:"ImageNumber",37394:"SecurityClassification",37395:"ImageHistory",37396:"SubjectArea",37397:"ExposureIndex",37398:"TIFF-EPStandardID",37399:"SensingMethod",37434:"CIP3DataFile",37435:"CIP3Sheet",37436:"CIP3Side",37439:"StoNits",37500:"MakerNote",37510:"UserComment",37520:"SubSecTime",37521:"SubSecTimeOriginal",37522:"SubSecTimeDigitized",37679:"MSDocumentText",37680:"MSPropertySetStorage",37681:"MSDocumentTextPosition",37724:"ImageSourceData",40091:"XPTitle",40092:"XPComment",40093:"XPAuthor",40094:"XPKeywords",40095:"XPSubject",40960:"FlashpixVersion",40961:"ColorSpace",40962:"ExifImageWidth",40963:"ExifImageHeight",40964:"RelatedSoundFile",40965:"InteropOffset",41483:"FlashEnergy",41484:"SpatialFrequencyResponse",41485:"Noise",41486:"FocalPlaneXResolution",41487:"FocalPlaneYResolution",41488:"FocalPlaneResolutionUnit",41489:"ImageNumber",41490:"SecurityClassification",41491:"ImageHistory",41492:"SubjectLocation",41493:"ExposureIndex",41494:"TIFF-EPStandardID",41495:"SensingMethod",41728:"FileSource",41729:"SceneType",41730:"CFAPattern",41985:"CustomRendered",41986:"ExposureMode",41987:"WhiteBalance",41988:"DigitalZoomRatio",41989:"FocalLengthIn35mmFormat",41990:"SceneCaptureType",41991:"GainControl",41992:"Contrast",41993:"Saturation",41994:"Sharpness",41995:"DeviceSettingDescription",41996:"SubjectDistanceRange",42016:"ImageUniqueID",42032:"OwnerName",42033:"SerialNumber",42034:"LensInfo",42035:"LensMake",42036:"LensModel",42037:"LensSerialNumber",42112:"GDALMetadata",42113:"GDALNoData",42240:"Gamma",44992:"ExpandSoftware",44993:"ExpandLens",44994:"ExpandFilm",44995:"ExpandFilterLens",44996:"ExpandScanner",44997:"ExpandFlashLamp",48129:"PixelFormat",48130:"Transformation",48131:"Uncompressed",48132:"ImageType",48256:"ImageWidth",48257:"ImageHeight",48258:"WidthResolution",48259:"HeightResolution",48320:"ImageOffset",48321:"ImageByteCount",48322:"AlphaOffset",48323:"AlphaByteCount",48324:"ImageDataDiscard",48325:"AlphaDataDiscard",50215:"OceScanjobDesc",50216:"OceApplicationSelector",50217:"OceIDNumber",50218:"OceImageLogic",50255:"Annotations",50341:"PrintIM",50560:"USPTOOriginalContentType",50706:"DNGVersion",50707:"DNGBackwardVersion",50708:"UniqueCameraModel",50709:"LocalizedCameraModel",50710:"CFAPlaneColor",50711:"CFALayout",50712:"LinearizationTable",50713:"BlackLevelRepeatDim",50714:"BlackLevel",50715:"BlackLevelDeltaH",50716:"BlackLevelDeltaV",50717:"WhiteLevel",50718:"DefaultScale",50719:"DefaultCropOrigin",50720:"DefaultCropSize",50721:"ColorMatrix1",50722:"ColorMatrix2",50723:"CameraCalibration1",50724:"CameraCalibration2",50725:"ReductionMatrix1",50726:"ReductionMatrix2",50727:"AnalogBalance",50728:"AsShotNeutral",50729:"AsShotWhiteXY",50730:"BaselineExposure",50731:"BaselineNoise",50732:"BaselineSharpness",50733:"BayerGreenSplit",50734:"LinearResponseLimit",50735:"CameraSerialNumber",50736:"DNGLensInfo",50737:"ChromaBlurRadius",50738:"AntiAliasStrength",50739:"ShadowScale",50740:"DNGPrivateData",50741:"MakerNoteSafety",50752:"RawImageSegmentation",50778:"CalibrationIlluminant1",50779:"CalibrationIlluminant2",50780:"BestQualityScale",50781:"RawDataUniqueID",50784:"AliasLayerMetadata",50827:"OriginalRawFileName",50828:"OriginalRawFileData",50829:"ActiveArea",50830:"MaskedAreas",50831:"AsShotICCProfile",50832:"AsShotPreProfileMatrix",50833:"CurrentICCProfile",50834:"CurrentPreProfileMatrix",50879:"ColorimetricReference",50898:"PanasonicTitle",50899:"PanasonicTitle2",50931:"CameraCalibrationSig",50932:"ProfileCalibrationSig",50933:"ProfileIFD",50934:"AsShotProfileName",50935:"NoiseReductionApplied",50936:"ProfileName",50937:"ProfileHueSatMapDims",50938:"ProfileHueSatMapData1",50939:"ProfileHueSatMapData2",50940:"ProfileToneCurve",50941:"ProfileEmbedPolicy",50942:"ProfileCopyright",50964:"ForwardMatrix1",50965:"ForwardMatrix2",50966:"PreviewApplicationName",50967:"PreviewApplicationVersion",50968:"PreviewSettingsName",50969:"PreviewSettingsDigest",50970:"PreviewColorSpace",50971:"PreviewDateTime",50972:"RawImageDigest",50973:"OriginalRawFileDigest",50974:"SubTileBlockSize",50975:"RowInterleaveFactor",50981:"ProfileLookTableDims",50982:"ProfileLookTableData",51008:"OpcodeList1",51009:"OpcodeList2",51022:"OpcodeList3",51041:"NoiseProfile",51043:"TimeCodes",51044:"FrameRate",51058:"TStop",51081:"ReelName",51089:"OriginalDefaultFinalSize",51090:"OriginalBestQualitySize",51091:"OriginalDefaultCropSize",51105:"CameraLabel",51107:"ProfileHueSatMapEncoding",51108:"ProfileLookTableEncoding",51109:"BaselineExposureOffset",51110:"DefaultBlackRender",51111:"NewRawImageDigest",51112:"RawToPreviewGain",51125:"DefaultUserCrop",59932:"Padding",59933:"OffsetSchema",65000:"OwnerName",65001:"SerialNumber",65002:"Lens",65024:"KDC_IFD",65100:"RawFile",65101:"Converter",65102:"WhiteBalance",65105:"Exposure",65106:"Shadows",65107:"Brightness",65108:"Contrast",65109:"Saturation",65110:"Sharpness",65111:"Smoothness",65112:"MoireFilter"},gps:{0:"GPSVersionID",1:"GPSLatitudeRef",2:"GPSLatitude",3:"GPSLongitudeRef",4:"GPSLongitude",5:"GPSAltitudeRef",6:"GPSAltitude",7:"GPSTimeStamp",8:"GPSSatellites",9:"GPSStatus",10:"GPSMeasureMode",11:"GPSDOP",12:"GPSSpeedRef",13:"GPSSpeed",14:"GPSTrackRef",15:"GPSTrack",16:"GPSImgDirectionRef",17:"GPSImgDirection",18:"GPSMapDatum",19:"GPSDestLatitudeRef",20:"GPSDestLatitude",21:"GPSDestLongitudeRef",22:"GPSDestLongitude",23:"GPSDestBearingRef",24:"GPSDestBearing",25:"GPSDestDistanceRef",26:"GPSDestDistance",27:"GPSProcessingMethod",28:"GPSAreaInformation",29:"GPSDateStamp",30:"GPSDifferential",31:"GPSHPositioningError"}}});var MFA=R((n7Y,qFA)=>{var bU=GFA(),DFA=px(),nx=VFA();function NFA(A,Q,B,Y,J,C,X){this.startMarker=A,this.tags=Q,this.imageSize=B,this.thumbnailOffset=Y,this.thumbnailLength=J,this.thumbnailType=C,this.app1Offset=X}NFA.prototype={hasThumbnail:function(A){if(!this.thumbnailOffset||!this.thumbnailLength)return!1;if(typeof A!=="string")return!0;if(A.toLowerCase().trim()==="image/jpeg")return this.thumbnailType===6;if(A.toLowerCase().trim()==="image/tiff")return this.thumbnailType===1;return!1},getThumbnailOffset:function(){return this.app1Offset+6+this.thumbnailOffset},getThumbnailLength:function(){return this.thumbnailLength},getThumbnailBuffer:function(){return this._getThumbnailStream().nextBuffer(this.thumbnailLength)},_getThumbnailStream:function(){return this.startMarker.openWithOffset(this.getThumbnailOffset())},getImageSize:function(){return this.imageSize},getThumbnailSize:function(){var A=this._getThumbnailStream(),Q;return bU.parseSections(A,function(B,Y){if(bU.getSectionName(B).name==="SOF")Q=bU.getSizeFromSOFSection(Y)}),Q}};function LFA(A){this.stream=A,this.flags={readBinaryTags:!1,resolveTagNames:!0,simplifyValues:!0,imageSize:!0,hidePointers:!0,returnTags:!0}}LFA.prototype={enableBinaryFields:function(A){return this.flags.readBinaryTags=!!A,this},enablePointers:function(A){return this.flags.hidePointers=!A,this},enableTagNames:function(A){return this.flags.resolveTagNames=!!A,this},enableImageSize:function(A){return this.flags.imageSize=!!A,this},enableReturnTags:function(A){return this.flags.returnTags=!!A,this},enableSimpleValues:function(A){return this.flags.simplifyValues=!!A,this},parse:function(){var A=this.stream.mark(),Q=A.openWithOffset(0),B=this.flags,Y,J,C,X,G,F,W,Z,U;if(B.resolveTagNames)W=HFA();if(B.resolveTagNames)Y={},Z=function($){return Y[$.name]},U=function($,E){Y[$.name]=E};else Y=[],Z=function($){var E;for(E=0;E{function LR(A,Q,B,Y,J,C){this.global=J,Q=Q||0,B=B||A.byteLength-Q,this.arrayBuffer=A.slice(Q,Q+B),this.view=new J.DataView(this.arrayBuffer,0,this.arrayBuffer.byteLength),this.setBigEndian(Y),this.offset=0,this.parentOffset=(C||0)+Q}LR.prototype={setBigEndian:function(A){this.littleEndian=!A},nextUInt8:function(){var A=this.view.getUint8(this.offset);return this.offset+=1,A},nextInt8:function(){var A=this.view.getInt8(this.offset);return this.offset+=1,A},nextUInt16:function(){var A=this.view.getUint16(this.offset,this.littleEndian);return this.offset+=2,A},nextUInt32:function(){var A=this.view.getUint32(this.offset,this.littleEndian);return this.offset+=4,A},nextInt16:function(){var A=this.view.getInt16(this.offset,this.littleEndian);return this.offset+=2,A},nextInt32:function(){var A=this.view.getInt32(this.offset,this.littleEndian);return this.offset+=4,A},nextFloat:function(){var A=this.view.getFloat32(this.offset,this.littleEndian);return this.offset+=4,A},nextDouble:function(){var A=this.view.getFloat64(this.offset,this.littleEndian);return this.offset+=8,A},nextBuffer:function(A){var Q=this.arrayBuffer.slice(this.offset,this.offset+A);return this.offset+=A,Q},remainingLength:function(){return this.arrayBuffer.byteLength-this.offset},nextString:function(A){var Q=this.arrayBuffer.slice(this.offset,this.offset+A);return Q=String.fromCharCode.apply(null,new this.global.Uint8Array(Q)),this.offset+=A,Q},mark:function(){var A=this;return{openWithOffset:function(Q){return Q=(Q||0)+this.offset,new LR(A.arrayBuffer,Q,A.arrayBuffer.byteLength-Q,!A.littleEndian,A.global,A.parentOffset)},offset:this.offset,getParentOffset:function(){return A.parentOffset}}},offsetFrom:function(A){return this.parentOffset+this.offset-(A.offset+A.getParentOffset())},skip:function(A){this.offset+=A},branch:function(A,Q){return Q=typeof Q==="number"?Q:this.arrayBuffer.byteLength-(this.offset+A),new LR(this.arrayBuffer,this.offset+A,Q,!this.littleEndian,this.global,this.parentOffset)}};zFA.exports=LR});var jFA=R((r7Y,wFA)=>{function qR(A,Q,B,Y){this.buffer=A,this.offset=Q||0,B=typeof B==="number"?B:A.length,this.endPosition=this.offset+B,this.setBigEndian(Y)}qR.prototype={setBigEndian:function(A){this.bigEndian=!!A},nextUInt8:function(){var A=this.buffer.readUInt8(this.offset);return this.offset+=1,A},nextInt8:function(){var A=this.buffer.readInt8(this.offset);return this.offset+=1,A},nextUInt16:function(){var A=this.bigEndian?this.buffer.readUInt16BE(this.offset):this.buffer.readUInt16LE(this.offset);return this.offset+=2,A},nextUInt32:function(){var A=this.bigEndian?this.buffer.readUInt32BE(this.offset):this.buffer.readUInt32LE(this.offset);return this.offset+=4,A},nextInt16:function(){var A=this.bigEndian?this.buffer.readInt16BE(this.offset):this.buffer.readInt16LE(this.offset);return this.offset+=2,A},nextInt32:function(){var A=this.bigEndian?this.buffer.readInt32BE(this.offset):this.buffer.readInt32LE(this.offset);return this.offset+=4,A},nextFloat:function(){var A=this.bigEndian?this.buffer.readFloatBE(this.offset):this.buffer.readFloatLE(this.offset);return this.offset+=4,A},nextDouble:function(){var A=this.bigEndian?this.buffer.readDoubleBE(this.offset):this.buffer.readDoubleLE(this.offset);return this.offset+=8,A},nextBuffer:function(A){var Q=this.buffer.slice(this.offset,this.offset+A);return this.offset+=A,Q},remainingLength:function(){return this.endPosition-this.offset},nextString:function(A){var Q=this.buffer.toString("utf8",this.offset,this.offset+A);return this.offset+=A,Q},mark:function(){var A=this;return{openWithOffset:function(Q){return Q=(Q||0)+this.offset,new qR(A.buffer,Q,A.endPosition-Q,A.bigEndian)},offset:this.offset}},offsetFrom:function(A){return this.offset-A.offset},skip:function(A){this.offset+=A},branch:function(A,Q){return Q=typeof Q==="number"?Q:this.endPosition-(this.offset+A),new qR(this.buffer,this.offset+A,Q,this.bigEndian)}};wFA.exports=qR});var TFA=R((a7Y,PFA)=>{var OFA=MFA();function $0B(){return(0,eval)("this")}PFA.exports={create:function(A,Q){if(Q=Q||$0B(),A instanceof Q.ArrayBuffer){var B=RFA();return new OFA(new B(A,0,A.byteLength,!0,Q))}else{var Y=jFA();return new OFA(new Y(A,0,A.length,!0))}}}});var lFA=R((kFY,cFA)=>{function tx(A,Q){if(!A||!Q||!A.length||!Q.length)throw Error("Bad alphabet");this.srcAlphabet=A,this.dstAlphabet=Q}tx.prototype.convert=function(A){var Q,B,Y,J={},C=this.srcAlphabet.length,X=this.dstAlphabet.length,G=A.length,F=typeof A==="string"?"":[];if(!this.isValid(A))throw Error('Number "'+A+'" contains of non-alphabetic digits ('+this.srcAlphabet+")");if(this.srcAlphabet===this.dstAlphabet)return A;for(Q=0;Q=X)J[Y++]=parseInt(B/X,10),B=B%X;else if(Y>0)J[Y++]=0;G=Y,F=this.dstAlphabet.slice(B,B+1).concat(F)}while(Y!==0);return F};tx.prototype.isValid=function(A){var Q=0;for(;Q{var v0B=lFA();function uH(A,Q){var B=new v0B(A,Q);return function(Y){return B.convert(Y)}}uH.BIN="01";uH.OCT="01234567";uH.DEC="0123456789";uH.HEX="0123456789abcdef";pFA.exports=uH});var AD=R((tWA)=>{Object.defineProperty(tWA,"__esModule",{value:!0});tWA.regexpCode=tWA.getEsmExportName=tWA.getProperty=tWA.safeStringify=tWA.stringify=tWA.strConcat=tWA.addCodeArg=tWA.str=tWA._=tWA.nil=tWA._Code=tWA.Name=tWA.IDENTIFIER=tWA._CodeOrName=void 0;class TR{}tWA._CodeOrName=TR;tWA.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;class QE extends TR{constructor(A){super();if(!tWA.IDENTIFIER.test(A))throw Error("CodeGen: name must be a valid identifier");this.str=A}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}}tWA.Name=QE;class vC extends TR{constructor(A){super();this._items=typeof A==="string"?[A]:A}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let A=this._items[0];return A===""||A==='""'}get str(){var A;return(A=this._str)!==null&&A!==void 0?A:this._str=this._items.reduce((Q,B)=>`${Q}${B}`,"")}get names(){var A;return(A=this._names)!==null&&A!==void 0?A:this._names=this._items.reduce((Q,B)=>{if(B instanceof QE)Q[B.str]=(Q[B.str]||0)+1;return Q},{})}}tWA._Code=vC;tWA.nil=new vC("");function aWA(A,...Q){let B=[A[0]],Y=0;while(Y{Object.defineProperty(BZA,"__esModule",{value:!0});BZA.ValueScope=BZA.ValueScopeName=BZA.Scope=BZA.varKinds=BZA.UsedValueState=void 0;var k9=AD();class AZA extends Error{constructor(A){super(`CodeGen: "code" for ${A} not defined`);this.value=A.value}}var kR;(function(A){A[A.Started=0]="Started",A[A.Completed=1]="Completed"})(kR||(BZA.UsedValueState=kR={}));BZA.varKinds={const:new k9.Name("const"),let:new k9.Name("let"),var:new k9.Name("var")};class jf{constructor({prefixes:A,parent:Q}={}){this._names={},this._prefixes=A,this._parent=Q}toName(A){return A instanceof k9.Name?A:this.name(A)}name(A){return new k9.Name(this._newName(A))}_newName(A){let Q=this._names[A]||this._nameGroup(A);return`${A}${Q.index++}`}_nameGroup(A){var Q,B;if(((B=(Q=this._parent)===null||Q===void 0?void 0:Q._prefixes)===null||B===void 0?void 0:B.has(A))||this._prefixes&&!this._prefixes.has(A))throw Error(`CodeGen: prefix "${A}" is not allowed in this scope`);return this._names[A]={prefix:A,index:0}}}BZA.Scope=jf;class Of extends k9.Name{constructor(A,Q){super(Q);this.prefix=A}setValue(A,{property:Q,itemIndex:B}){this.value=A,this.scopePath=k9._`.${new k9.Name(Q)}[${B}]`}}BZA.ValueScopeName=Of;var tYB=k9._`\n`;class QZA extends jf{constructor(A){super(A);this._values={},this._scope=A.scope,this.opts={...A,_n:A.lines?tYB:k9.nil}}get(){return this._scope}name(A){return new Of(A,this._newName(A))}value(A,Q){var B;if(Q.ref===void 0)throw Error("CodeGen: ref must be passed in value");let Y=this.toName(A),{prefix:J}=Y,C=(B=Q.key)!==null&&B!==void 0?B:Q.ref,X=this._values[J];if(X){let W=X.get(C);if(W)return W}else X=this._values[J]=new Map;X.set(C,Y);let G=this._scope[J]||(this._scope[J]=[]),F=G.length;return G[F]=Q.ref,Y.setValue(Q,{property:J,itemIndex:F}),Y}getValue(A,Q){let B=this._values[A];if(!B)return;return B.get(Q)}scopeRefs(A,Q=this._values){return this._reduceValues(Q,(B)=>{if(B.scopePath===void 0)throw Error(`CodeGen: name "${B}" has no value`);return k9._`${A}${B.scopePath}`})}scopeCode(A=this._values,Q,B){return this._reduceValues(A,(Y)=>{if(Y.value===void 0)throw Error(`CodeGen: name "${Y}" has no value`);return Y.value.code},Q,B)}_reduceValues(A,Q,B={},Y){let J=k9.nil;for(let C in A){let X=A[C];if(!X)continue;let G=B[C]=B[C]||new Map;X.forEach((F)=>{if(G.has(F))return;G.set(F,kR.Started);let W=Q(F);if(W){let Z=this.opts.es5?BZA.varKinds.var:BZA.varKinds.const;J=k9._`${J}${Z} ${F} = ${W};${this.opts._n}`}else if(W=Y===null||Y===void 0?void 0:Y(F))J=k9._`${J}${W}${this.opts._n}`;else throw new AZA(F);G.set(F,kR.Completed)})}return J}}BZA.ValueScope=QZA});var GB=R((_9)=>{Object.defineProperty(_9,"__esModule",{value:!0});_9.or=_9.and=_9.not=_9.CodeGen=_9.operators=_9.varKinds=_9.ValueScopeName=_9.ValueScope=_9.Scope=_9.Name=_9.regexpCode=_9.stringify=_9.getProperty=_9.nil=_9.strConcat=_9.str=_9._=void 0;var HB=AD(),yC=Pf(),T7=AD();Object.defineProperty(_9,"_",{enumerable:!0,get:function(){return T7._}});Object.defineProperty(_9,"str",{enumerable:!0,get:function(){return T7.str}});Object.defineProperty(_9,"strConcat",{enumerable:!0,get:function(){return T7.strConcat}});Object.defineProperty(_9,"nil",{enumerable:!0,get:function(){return T7.nil}});Object.defineProperty(_9,"getProperty",{enumerable:!0,get:function(){return T7.getProperty}});Object.defineProperty(_9,"stringify",{enumerable:!0,get:function(){return T7.stringify}});Object.defineProperty(_9,"regexpCode",{enumerable:!0,get:function(){return T7.regexpCode}});Object.defineProperty(_9,"Name",{enumerable:!0,get:function(){return T7.Name}});var xR=Pf();Object.defineProperty(_9,"Scope",{enumerable:!0,get:function(){return xR.Scope}});Object.defineProperty(_9,"ValueScope",{enumerable:!0,get:function(){return xR.ValueScope}});Object.defineProperty(_9,"ValueScopeName",{enumerable:!0,get:function(){return xR.ValueScopeName}});Object.defineProperty(_9,"varKinds",{enumerable:!0,get:function(){return xR.varKinds}});_9.operators={GT:new HB._Code(">"),GTE:new HB._Code(">="),LT:new HB._Code("<"),LTE:new HB._Code("<="),EQ:new HB._Code("==="),NEQ:new HB._Code("!=="),NOT:new HB._Code("!"),OR:new HB._Code("||"),AND:new HB._Code("&&"),ADD:new HB._Code("+")};class S7{optimizeNodes(){return this}optimizeNames(A,Q){return this}}class JZA extends S7{constructor(A,Q,B){super();this.varKind=A,this.name=Q,this.rhs=B}render({es5:A,_n:Q}){let B=A?yC.varKinds.var:this.varKind,Y=this.rhs===void 0?"":` = ${this.rhs}`;return`${B} ${this.name}${Y};`+Q}optimizeNames(A,Q){if(!A[this.name.str])return;if(this.rhs)this.rhs=YE(this.rhs,A,Q);return this}get names(){return this.rhs instanceof HB._CodeOrName?this.rhs.names:{}}}class kf extends S7{constructor(A,Q,B){super();this.lhs=A,this.rhs=Q,this.sideEffects=B}render({_n:A}){return`${this.lhs} = ${this.rhs};`+A}optimizeNames(A,Q){if(this.lhs instanceof HB.Name&&!A[this.lhs.str]&&!this.sideEffects)return;return this.rhs=YE(this.rhs,A,Q),this}get names(){let A=this.lhs instanceof HB.Name?{}:{...this.lhs.names};return gR(A,this.rhs)}}class CZA extends kf{constructor(A,Q,B,Y){super(A,B,Y);this.op=Q}render({_n:A}){return`${this.lhs} ${this.op}= ${this.rhs};`+A}}class XZA extends S7{constructor(A){super();this.label=A,this.names={}}render({_n:A}){return`${this.label}:`+A}}class GZA extends S7{constructor(A){super();this.label=A,this.names={}}render({_n:A}){return`break${this.label?` ${this.label}`:""};`+A}}class FZA extends S7{constructor(A){super();this.error=A}render({_n:A}){return`throw ${this.error};`+A}get names(){return this.error.names}}class WZA extends S7{constructor(A){super();this.code=A}render({_n:A}){return`${this.code};`+A}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(A,Q){return this.code=YE(this.code,A,Q),this}get names(){return this.code instanceof HB._CodeOrName?this.code.names:{}}}class fR extends S7{constructor(A=[]){super();this.nodes=A}render(A){return this.nodes.reduce((Q,B)=>Q+B.render(A),"")}optimizeNodes(){let{nodes:A}=this,Q=A.length;while(Q--){let B=A[Q].optimizeNodes();if(Array.isArray(B))A.splice(Q,1,...B);else if(B)A[Q]=B;else A.splice(Q,1)}return A.length>0?this:void 0}optimizeNames(A,Q){let{nodes:B}=this,Y=B.length;while(Y--){let J=B[Y];if(J.optimizeNames(A,Q))continue;BJB(A,J.names),B.splice(Y,1)}return B.length>0?this:void 0}get names(){return this.nodes.reduce((A,Q)=>JZ(A,Q.names),{})}}class k7 extends fR{render(A){return"{"+A._n+super.render(A)+"}"+A._n}}class ZZA extends fR{}class QD extends k7{}QD.kind="else";class _X extends k7{constructor(A,Q){super(Q);this.condition=A}render(A){let Q=`if(${this.condition})`+super.render(A);if(this.else)Q+="else "+this.else.render(A);return Q}optimizeNodes(){super.optimizeNodes();let A=this.condition;if(A===!0)return this.nodes;let Q=this.else;if(Q){let B=Q.optimizeNodes();Q=this.else=Array.isArray(B)?new QD(B):B}if(Q){if(A===!1)return Q instanceof _X?Q:Q.nodes;if(this.nodes.length)return this;return new _X(VZA(A),Q instanceof _X?[Q]:Q.nodes)}if(A===!1||!this.nodes.length)return;return this}optimizeNames(A,Q){var B;if(this.else=(B=this.else)===null||B===void 0?void 0:B.optimizeNames(A,Q),!(super.optimizeNames(A,Q)||this.else))return;return this.condition=YE(this.condition,A,Q),this}get names(){let A=super.names;if(gR(A,this.condition),this.else)JZ(A,this.else.names);return A}}_X.kind="if";class BE extends k7{}BE.kind="for";class $ZA extends BE{constructor(A){super();this.iteration=A}render(A){return`for(${this.iteration})`+super.render(A)}optimizeNames(A,Q){if(!super.optimizeNames(A,Q))return;return this.iteration=YE(this.iteration,A,Q),this}get names(){return JZ(super.names,this.iteration.names)}}class UZA extends BE{constructor(A,Q,B,Y){super();this.varKind=A,this.name=Q,this.from=B,this.to=Y}render(A){let Q=A.es5?yC.varKinds.var:this.varKind,{name:B,from:Y,to:J}=this;return`for(${Q} ${B}=${Y}; ${B}<${J}; ${B}++)`+super.render(A)}get names(){let A=gR(super.names,this.from);return gR(A,this.to)}}class Tf extends BE{constructor(A,Q,B,Y){super();this.loop=A,this.varKind=Q,this.name=B,this.iterable=Y}render(A){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(A)}optimizeNames(A,Q){if(!super.optimizeNames(A,Q))return;return this.iterable=YE(this.iterable,A,Q),this}get names(){return JZ(super.names,this.iterable.names)}}class _R extends k7{constructor(A,Q,B){super();this.name=A,this.args=Q,this.async=B}render(A){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(A)}}_R.kind="func";class vR extends fR{render(A){return"return "+super.render(A)}}vR.kind="return";class EZA extends k7{render(A){let Q="try"+super.render(A);if(this.catch)Q+=this.catch.render(A);if(this.finally)Q+=this.finally.render(A);return Q}optimizeNodes(){var A,Q;return super.optimizeNodes(),(A=this.catch)===null||A===void 0||A.optimizeNodes(),(Q=this.finally)===null||Q===void 0||Q.optimizeNodes(),this}optimizeNames(A,Q){var B,Y;return super.optimizeNames(A,Q),(B=this.catch)===null||B===void 0||B.optimizeNames(A,Q),(Y=this.finally)===null||Y===void 0||Y.optimizeNames(A,Q),this}get names(){let A=super.names;if(this.catch)JZ(A,this.catch.names);if(this.finally)JZ(A,this.finally.names);return A}}class yR extends k7{constructor(A){super();this.error=A}render(A){return`catch(${this.error})`+super.render(A)}}yR.kind="catch";class hR extends k7{render(A){return"finally"+super.render(A)}}hR.kind="finally";class KZA{constructor(A,Q={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...Q,_n:Q.lines?` +`:""},this._extScope=A,this._scope=new yC.Scope({parent:A}),this._nodes=[new ZZA]}toString(){return this._root.render(this.opts)}name(A){return this._scope.name(A)}scopeName(A){return this._extScope.name(A)}scopeValue(A,Q){let B=this._extScope.value(A,Q);return(this._values[B.prefix]||(this._values[B.prefix]=new Set)).add(B),B}getScopeValue(A,Q){return this._extScope.getValue(A,Q)}scopeRefs(A){return this._extScope.scopeRefs(A,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(A,Q,B,Y){let J=this._scope.toName(Q);if(B!==void 0&&Y)this._constants[J.str]=B;return this._leafNode(new JZA(A,J,B)),J}const(A,Q,B){return this._def(yC.varKinds.const,A,Q,B)}let(A,Q,B){return this._def(yC.varKinds.let,A,Q,B)}var(A,Q,B){return this._def(yC.varKinds.var,A,Q,B)}assign(A,Q,B){return this._leafNode(new kf(A,Q,B))}add(A,Q){return this._leafNode(new CZA(A,_9.operators.ADD,Q))}code(A){if(typeof A=="function")A();else if(A!==HB.nil)this._leafNode(new WZA(A));return this}object(...A){let Q=["{"];for(let[B,Y]of A){if(Q.length>1)Q.push(",");if(Q.push(B),B!==Y||this.opts.es5)Q.push(":"),(0,HB.addCodeArg)(Q,Y)}return Q.push("}"),new HB._Code(Q)}if(A,Q,B){if(this._blockNode(new _X(A)),Q&&B)this.code(Q).else().code(B).endIf();else if(Q)this.code(Q).endIf();else if(B)throw Error('CodeGen: "else" body without "then" body');return this}elseIf(A){return this._elseNode(new _X(A))}else(){return this._elseNode(new QD)}endIf(){return this._endBlockNode(_X,QD)}_for(A,Q){if(this._blockNode(A),Q)this.code(Q).endFor();return this}for(A,Q){return this._for(new $ZA(A),Q)}forRange(A,Q,B,Y,J=this.opts.es5?yC.varKinds.var:yC.varKinds.let){let C=this._scope.toName(A);return this._for(new UZA(J,C,Q,B),()=>Y(C))}forOf(A,Q,B,Y=yC.varKinds.const){let J=this._scope.toName(A);if(this.opts.es5){let C=Q instanceof HB.Name?Q:this.var("_arr",Q);return this.forRange("_i",0,HB._`${C}.length`,(X)=>{this.var(J,HB._`${C}[${X}]`),B(J)})}return this._for(new Tf("of",Y,J,Q),()=>B(J))}forIn(A,Q,B,Y=this.opts.es5?yC.varKinds.var:yC.varKinds.const){if(this.opts.ownProperties)return this.forOf(A,HB._`Object.keys(${Q})`,B);let J=this._scope.toName(A);return this._for(new Tf("in",Y,J,Q),()=>B(J))}endFor(){return this._endBlockNode(BE)}label(A){return this._leafNode(new XZA(A))}break(A){return this._leafNode(new GZA(A))}return(A){let Q=new vR;if(this._blockNode(Q),this.code(A),Q.nodes.length!==1)throw Error('CodeGen: "return" should have one node');return this._endBlockNode(vR)}try(A,Q,B){if(!Q&&!B)throw Error('CodeGen: "try" without "catch" and "finally"');let Y=new EZA;if(this._blockNode(Y),this.code(A),Q){let J=this.name("e");this._currNode=Y.catch=new yR(J),Q(J)}if(B)this._currNode=Y.finally=new hR,this.code(B);return this._endBlockNode(yR,hR)}throw(A){return this._leafNode(new FZA(A))}block(A,Q){if(this._blockStarts.push(this._nodes.length),A)this.code(A).endBlock(Q);return this}endBlock(A){let Q=this._blockStarts.pop();if(Q===void 0)throw Error("CodeGen: not in self-balancing block");let B=this._nodes.length-Q;if(B<0||A!==void 0&&B!==A)throw Error(`CodeGen: wrong number of nodes: ${B} vs ${A} expected`);return this._nodes.length=Q,this}func(A,Q=HB.nil,B,Y){if(this._blockNode(new _R(A,Q,B)),Y)this.code(Y).endFunc();return this}endFunc(){return this._endBlockNode(_R)}optimize(A=1){while(A-- >0)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(A){return this._currNode.nodes.push(A),this}_blockNode(A){this._currNode.nodes.push(A),this._nodes.push(A)}_endBlockNode(A,Q){let B=this._currNode;if(B instanceof A||Q&&B instanceof Q)return this._nodes.pop(),this;throw Error(`CodeGen: not in block "${Q?`${A.kind}/${Q.kind}`:A.kind}"`)}_elseNode(A){let Q=this._currNode;if(!(Q instanceof _X))throw Error('CodeGen: "else" without "if"');return this._currNode=Q.else=A,this}get _root(){return this._nodes[0]}get _currNode(){let A=this._nodes;return A[A.length-1]}set _currNode(A){let Q=this._nodes;Q[Q.length-1]=A}}_9.CodeGen=KZA;function JZ(A,Q){for(let B in Q)A[B]=(A[B]||0)+(Q[B]||0);return A}function gR(A,Q){return Q instanceof HB._CodeOrName?JZ(A,Q.names):A}function YE(A,Q,B){if(A instanceof HB.Name)return Y(A);if(!J(A))return A;return new HB._Code(A._items.reduce((C,X)=>{if(X instanceof HB.Name)X=Y(X);if(X instanceof HB._Code)C.push(...X._items);else C.push(X);return C},[]));function Y(C){let X=B[C.str];if(X===void 0||Q[C.str]!==1)return C;return delete Q[C.str],X}function J(C){return C instanceof HB._Code&&C._items.some((X)=>X instanceof HB.Name&&Q[X.str]===1&&B[X.str]!==void 0)}}function BJB(A,Q){for(let B in Q)A[B]=(A[B]||0)-(Q[B]||0)}function VZA(A){return typeof A=="boolean"||typeof A=="number"||A===null?!A:HB._`!${Sf(A)}`}_9.not=VZA;var YJB=IZA(_9.operators.AND);function JJB(...A){return A.reduce(YJB)}_9.and=JJB;var CJB=IZA(_9.operators.OR);function XJB(...A){return A.reduce(CJB)}_9.or=XJB;function IZA(A){return(Q,B)=>Q===HB.nil?B:B===HB.nil?Q:HB._`${Sf(Q)} ${A} ${Sf(B)}`}function Sf(A){return A instanceof HB.Name?A:HB._`(${A})`}});var wB=R((wZA)=>{Object.defineProperty(wZA,"__esModule",{value:!0});wZA.checkStrictMode=wZA.getErrorPath=wZA.Type=wZA.useFunc=wZA.setEvaluated=wZA.evaluatedPropsToName=wZA.mergeEvaluated=wZA.eachItem=wZA.unescapeJsonPointer=wZA.escapeJsonPointer=wZA.escapeFragment=wZA.unescapeFragment=wZA.schemaRefOrVal=wZA.schemaHasRulesButRef=wZA.schemaHasRules=wZA.checkUnknownRules=wZA.alwaysValidSchema=wZA.toHash=void 0;var tB=GB(),ZJB=AD();function $JB(A){let Q={};for(let B of A)Q[B]=!0;return Q}wZA.toHash=$JB;function UJB(A,Q){if(typeof Q=="boolean")return Q;if(Object.keys(Q).length===0)return!0;return LZA(A,Q),!qZA(Q,A.self.RULES.all)}wZA.alwaysValidSchema=UJB;function LZA(A,Q=A.schema){let{opts:B,self:Y}=A;if(!B.strictSchema)return;if(typeof Q==="boolean")return;let J=Y.RULES.keywords;for(let C in Q)if(!J[C])RZA(A,`unknown keyword: "${C}"`)}wZA.checkUnknownRules=LZA;function qZA(A,Q){if(typeof A=="boolean")return!A;for(let B in A)if(Q[B])return!0;return!1}wZA.schemaHasRules=qZA;function EJB(A,Q){if(typeof A=="boolean")return!A;for(let B in A)if(B!=="$ref"&&Q.all[B])return!0;return!1}wZA.schemaHasRulesButRef=EJB;function KJB({topSchemaRef:A,schemaPath:Q},B,Y,J){if(!J){if(typeof B=="number"||typeof B=="boolean")return B;if(typeof B=="string")return tB._`${B}`}return tB._`${A}${Q}${(0,tB.getProperty)(Y)}`}wZA.schemaRefOrVal=KJB;function VJB(A){return MZA(decodeURIComponent(A))}wZA.unescapeFragment=VJB;function IJB(A){return encodeURIComponent(vf(A))}wZA.escapeFragment=IJB;function vf(A){if(typeof A=="number")return`${A}`;return A.replace(/~/g,"~0").replace(/\//g,"~1")}wZA.escapeJsonPointer=vf;function MZA(A){return A.replace(/~1/g,"/").replace(/~0/g,"~")}wZA.unescapeJsonPointer=MZA;function HJB(A,Q){if(Array.isArray(A))for(let B of A)Q(B);else Q(A)}wZA.eachItem=HJB;function DZA({mergeNames:A,mergeToName:Q,mergeValues:B,resultToName:Y}){return(J,C,X,G)=>{let F=X===void 0?C:X instanceof tB.Name?(C instanceof tB.Name?A(J,C,X):Q(J,C,X),X):C instanceof tB.Name?(Q(J,X,C),C):B(C,X);return G===tB.Name&&!(F instanceof tB.Name)?Y(J,F):F}}wZA.mergeEvaluated={props:DZA({mergeNames:(A,Q,B)=>A.if(tB._`${B} !== true && ${Q} !== undefined`,()=>{A.if(tB._`${Q} === true`,()=>A.assign(B,!0),()=>A.assign(B,tB._`${B} || {}`).code(tB._`Object.assign(${B}, ${Q})`))}),mergeToName:(A,Q,B)=>A.if(tB._`${B} !== true`,()=>{if(Q===!0)A.assign(B,!0);else A.assign(B,tB._`${B} || {}`),yf(A,B,Q)}),mergeValues:(A,Q)=>A===!0?!0:{...A,...Q},resultToName:zZA}),items:DZA({mergeNames:(A,Q,B)=>A.if(tB._`${B} !== true && ${Q} !== undefined`,()=>A.assign(B,tB._`${Q} === true ? true : ${B} > ${Q} ? ${B} : ${Q}`)),mergeToName:(A,Q,B)=>A.if(tB._`${B} !== true`,()=>A.assign(B,Q===!0?!0:tB._`${B} > ${Q} ? ${B} : ${Q}`)),mergeValues:(A,Q)=>A===!0?!0:Math.max(A,Q),resultToName:(A,Q)=>A.var("items",Q)})};function zZA(A,Q){if(Q===!0)return A.var("props",!0);let B=A.var("props",tB._`{}`);if(Q!==void 0)yf(A,B,Q);return B}wZA.evaluatedPropsToName=zZA;function yf(A,Q,B){Object.keys(B).forEach((Y)=>A.assign(tB._`${Q}${(0,tB.getProperty)(Y)}`,!0))}wZA.setEvaluated=yf;var NZA={};function DJB(A,Q){return A.scopeValue("func",{ref:Q,code:NZA[Q.code]||(NZA[Q.code]=new ZJB._Code(Q.code))})}wZA.useFunc=DJB;var _f;(function(A){A[A.Num=0]="Num",A[A.Str=1]="Str"})(_f||(wZA.Type=_f={}));function NJB(A,Q,B){if(A instanceof tB.Name){let Y=Q===_f.Num;return B?Y?tB._`"[" + ${A} + "]"`:tB._`"['" + ${A} + "']"`:Y?tB._`"/" + ${A}`:tB._`"/" + ${A}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return B?(0,tB.getProperty)(A).toString():"/"+vf(A)}wZA.getErrorPath=NJB;function RZA(A,Q,B=A.opts.strictSchema){if(!B)return;if(Q=`strict mode: ${Q}`,B===!0)throw Error(Q);A.self.logger.warn(Q)}wZA.checkStrictMode=RZA});var vX=R((OZA)=>{Object.defineProperty(OZA,"__esModule",{value:!0});var MJ=GB(),xJB={data:new MJ.Name("data"),valCxt:new MJ.Name("valCxt"),instancePath:new MJ.Name("instancePath"),parentData:new MJ.Name("parentData"),parentDataProperty:new MJ.Name("parentDataProperty"),rootData:new MJ.Name("rootData"),dynamicAnchors:new MJ.Name("dynamicAnchors"),vErrors:new MJ.Name("vErrors"),errors:new MJ.Name("errors"),this:new MJ.Name("this"),self:new MJ.Name("self"),scope:new MJ.Name("scope"),json:new MJ.Name("json"),jsonPos:new MJ.Name("jsonPos"),jsonLen:new MJ.Name("jsonLen"),jsonPart:new MJ.Name("jsonPart")};OZA.default=xJB});var BD=R((kZA)=>{Object.defineProperty(kZA,"__esModule",{value:!0});kZA.extendErrors=kZA.resetErrorsCount=kZA.reportExtraError=kZA.reportError=kZA.keyword$DataError=kZA.keywordError=void 0;var qB=GB(),mR=wB(),Q9=vX();kZA.keywordError={message:({keyword:A})=>qB.str`must pass "${A}" keyword validation`};kZA.keyword$DataError={message:({keyword:A,schemaType:Q})=>Q?qB.str`"${A}" keyword must be ${Q} ($data)`:qB.str`"${A}" keyword is invalid ($data)`};function bJB(A,Q=kZA.keywordError,B,Y){let{it:J}=A,{gen:C,compositeRule:X,allErrors:G}=J,F=SZA(A,Q,B);if(Y!==null&&Y!==void 0?Y:X||G)PZA(C,F);else TZA(J,qB._`[${F}]`)}kZA.reportError=bJB;function mJB(A,Q=kZA.keywordError,B){let{it:Y}=A,{gen:J,compositeRule:C,allErrors:X}=Y,G=SZA(A,Q,B);if(PZA(J,G),!(C||X))TZA(Y,Q9.default.vErrors)}kZA.reportExtraError=mJB;function uJB(A,Q){A.assign(Q9.default.errors,Q),A.if(qB._`${Q9.default.vErrors} !== null`,()=>A.if(Q,()=>A.assign(qB._`${Q9.default.vErrors}.length`,Q),()=>A.assign(Q9.default.vErrors,null)))}kZA.resetErrorsCount=uJB;function dJB({gen:A,keyword:Q,schemaValue:B,data:Y,errsCount:J,it:C}){if(J===void 0)throw Error("ajv implementation error");let X=A.name("err");A.forRange("i",J,Q9.default.errors,(G)=>{if(A.const(X,qB._`${Q9.default.vErrors}[${G}]`),A.if(qB._`${X}.instancePath === undefined`,()=>A.assign(qB._`${X}.instancePath`,(0,qB.strConcat)(Q9.default.instancePath,C.errorPath))),A.assign(qB._`${X}.schemaPath`,qB.str`${C.errSchemaPath}/${Q}`),C.opts.verbose)A.assign(qB._`${X}.schema`,B),A.assign(qB._`${X}.data`,Y)})}kZA.extendErrors=dJB;function PZA(A,Q){let B=A.const("err",Q);A.if(qB._`${Q9.default.vErrors} === null`,()=>A.assign(Q9.default.vErrors,qB._`[${B}]`),qB._`${Q9.default.vErrors}.push(${B})`),A.code(qB._`${Q9.default.errors}++`)}function TZA(A,Q){let{gen:B,validateName:Y,schemaEnv:J}=A;if(J.$async)B.throw(qB._`new ${A.ValidationError}(${Q})`);else B.assign(qB._`${Y}.errors`,Q),B.return(!1)}var CZ={keyword:new qB.Name("keyword"),schemaPath:new qB.Name("schemaPath"),params:new qB.Name("params"),propertyName:new qB.Name("propertyName"),message:new qB.Name("message"),schema:new qB.Name("schema"),parentSchema:new qB.Name("parentSchema")};function SZA(A,Q,B){let{createErrors:Y}=A.it;if(Y===!1)return qB._`{}`;return cJB(A,Q,B)}function cJB(A,Q,B={}){let{gen:Y,it:J}=A,C=[lJB(J,B),pJB(A,B)];return iJB(A,Q,C),Y.object(...C)}function lJB({errorPath:A},{instancePath:Q}){let B=Q?qB.str`${A}${(0,mR.getErrorPath)(Q,mR.Type.Str)}`:A;return[Q9.default.instancePath,(0,qB.strConcat)(Q9.default.instancePath,B)]}function pJB({keyword:A,it:{errSchemaPath:Q}},{schemaPath:B,parentSchema:Y}){let J=Y?Q:qB.str`${Q}/${A}`;if(B)J=qB.str`${J}${(0,mR.getErrorPath)(B,mR.Type.Str)}`;return[CZ.schemaPath,J]}function iJB(A,{params:Q,message:B},Y){let{keyword:J,data:C,schemaValue:X,it:G}=A,{opts:F,propertyName:W,topSchemaRef:Z,schemaPath:U}=G;if(Y.push([CZ.keyword,J],[CZ.params,typeof Q=="function"?Q(A):Q||qB._`{}`]),F.messages)Y.push([CZ.message,typeof B=="function"?B(A):B]);if(F.verbose)Y.push([CZ.schema,X],[CZ.parentSchema,qB._`${Z}${U}`],[Q9.default.data,C]);if(W)Y.push([CZ.propertyName,W])}});var gZA=R((yZA)=>{Object.defineProperty(yZA,"__esModule",{value:!0});yZA.boolOrEmptySchema=yZA.topBoolOrEmptySchema=void 0;var oJB=BD(),tJB=GB(),eJB=vX(),A9B={message:"boolean schema is false"};function Q9B(A){let{gen:Q,schema:B,validateName:Y}=A;if(B===!1)vZA(A,!1);else if(typeof B=="object"&&B.$async===!0)Q.return(eJB.default.data);else Q.assign(tJB._`${Y}.errors`,null),Q.return(!0)}yZA.topBoolOrEmptySchema=Q9B;function B9B(A,Q){let{gen:B,schema:Y}=A;if(Y===!1)B.var(Q,!1),vZA(A);else B.var(Q,!0)}yZA.boolOrEmptySchema=B9B;function vZA(A,Q){let{gen:B,data:Y}=A,J={gen:B,keyword:"false schema",data:Y,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:A};(0,oJB.reportError)(J,A9B,void 0,Q)}});var gf=R((xZA)=>{Object.defineProperty(xZA,"__esModule",{value:!0});xZA.getRules=xZA.isJSONType=void 0;var J9B=["string","number","integer","boolean","null","object","array"],C9B=new Set(J9B);function X9B(A){return typeof A=="string"&&C9B.has(A)}xZA.isJSONType=X9B;function G9B(){let A={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...A,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},A.number,A.string,A.array,A.object],post:{rules:[]},all:{},keywords:{}}}xZA.getRules=G9B});var xf=R((uZA)=>{Object.defineProperty(uZA,"__esModule",{value:!0});uZA.shouldUseRule=uZA.shouldUseGroup=uZA.schemaHasRulesForType=void 0;function W9B({schema:A,self:Q},B){let Y=Q.RULES.types[B];return Y&&Y!==!0&&bZA(A,Y)}uZA.schemaHasRulesForType=W9B;function bZA(A,Q){return Q.rules.some((B)=>mZA(A,B))}uZA.shouldUseGroup=bZA;function mZA(A,Q){var B;return A[Q.keyword]!==void 0||((B=Q.definition.implements)===null||B===void 0?void 0:B.some((Y)=>A[Y]!==void 0))}uZA.shouldUseRule=mZA});var YD=R((iZA)=>{Object.defineProperty(iZA,"__esModule",{value:!0});iZA.reportTypeError=iZA.checkDataTypes=iZA.checkDataType=iZA.coerceAndCheckDataType=iZA.getJSONTypes=iZA.getSchemaTypes=iZA.DataType=void 0;var U9B=gf(),E9B=xf(),K9B=BD(),aQ=GB(),cZA=wB(),JE;(function(A){A[A.Correct=0]="Correct",A[A.Wrong=1]="Wrong"})(JE||(iZA.DataType=JE={}));function V9B(A){let Q=lZA(A.type);if(Q.includes("null")){if(A.nullable===!1)throw Error("type: null contradicts nullable: false")}else{if(!Q.length&&A.nullable!==void 0)throw Error('"nullable" cannot be used without "type"');if(A.nullable===!0)Q.push("null")}return Q}iZA.getSchemaTypes=V9B;function lZA(A){let Q=Array.isArray(A)?A:A?[A]:[];if(Q.every(U9B.isJSONType))return Q;throw Error("type must be JSONType or JSONType[]: "+Q.join(","))}iZA.getJSONTypes=lZA;function I9B(A,Q){let{gen:B,data:Y,opts:J}=A,C=H9B(Q,J.coerceTypes),X=Q.length>0&&!(C.length===0&&Q.length===1&&(0,E9B.schemaHasRulesForType)(A,Q[0]));if(X){let G=bf(Q,Y,J.strictNumbers,JE.Wrong);B.if(G,()=>{if(C.length)D9B(A,Q,C);else mf(A)})}return X}iZA.coerceAndCheckDataType=I9B;var pZA=new Set(["string","number","integer","boolean","null"]);function H9B(A,Q){return Q?A.filter((B)=>pZA.has(B)||Q==="array"&&B==="array"):[]}function D9B(A,Q,B){let{gen:Y,data:J,opts:C}=A,X=Y.let("dataType",aQ._`typeof ${J}`),G=Y.let("coerced",aQ._`undefined`);if(C.coerceTypes==="array")Y.if(aQ._`${X} == 'object' && Array.isArray(${J}) && ${J}.length == 1`,()=>Y.assign(J,aQ._`${J}[0]`).assign(X,aQ._`typeof ${J}`).if(bf(Q,J,C.strictNumbers),()=>Y.assign(G,J)));Y.if(aQ._`${G} !== undefined`);for(let W of B)if(pZA.has(W)||W==="array"&&C.coerceTypes==="array")F(W);Y.else(),mf(A),Y.endIf(),Y.if(aQ._`${G} !== undefined`,()=>{Y.assign(J,G),N9B(A,G)});function F(W){switch(W){case"string":Y.elseIf(aQ._`${X} == "number" || ${X} == "boolean"`).assign(G,aQ._`"" + ${J}`).elseIf(aQ._`${J} === null`).assign(G,aQ._`""`);return;case"number":Y.elseIf(aQ._`${X} == "boolean" || ${J} === null || (${X} == "string" && ${J} && ${J} == +${J})`).assign(G,aQ._`+${J}`);return;case"integer":Y.elseIf(aQ._`${X} === "boolean" || ${J} === null || (${X} === "string" && ${J} && ${J} == +${J} && !(${J} % 1))`).assign(G,aQ._`+${J}`);return;case"boolean":Y.elseIf(aQ._`${J} === "false" || ${J} === 0 || ${J} === null`).assign(G,!1).elseIf(aQ._`${J} === "true" || ${J} === 1`).assign(G,!0);return;case"null":Y.elseIf(aQ._`${J} === "" || ${J} === 0 || ${J} === false`),Y.assign(G,null);return;case"array":Y.elseIf(aQ._`${X} === "string" || ${X} === "number" - || ${X} === "boolean" || ${J} === null`).assign(G,aQ._`[${J}]`)}}}function Y9B({gen:A,parentData:Q,parentDataProperty:B},Y){A.if(aQ._`${Q} !== undefined`,()=>A.assign(aQ._`${Q}[${B}]`,Y))}function Of(A,Q,B,Y=oU.Correct){let J=Y===oU.Correct?aQ.operators.EQ:aQ.operators.NEQ,C;switch(A){case"null":return aQ._`${Q} ${J} null`;case"array":C=aQ._`Array.isArray(${Q})`;break;case"object":C=aQ._`${Q} && typeof ${Q} == "object" && !Array.isArray(${Q})`;break;case"integer":C=X(aQ._`!(${Q} % 1) && !isNaN(${Q})`);break;case"number":C=X();break;default:return aQ._`typeof ${Q} ${J} ${A}`}return Y===oU.Correct?C:(0,aQ.not)(C);function X(G=aQ.nil){return(0,aQ.and)(aQ._`typeof ${Q} == "number"`,G,B?aQ._`isFinite(${Q})`:aQ.nil)}}PZA.checkDataType=Of;function Pf(A,Q,B,Y){if(A.length===1)return Of(A[0],Q,B,Y);let J,C=(0,wZA.toHash)(A);if(C.array&&C.object){let X=aQ._`typeof ${Q} != "object"`;J=C.null?X:aQ._`!${Q} || ${X}`,delete C.null,delete C.array,delete C.object}else J=aQ.nil;if(C.number)delete C.integer;for(let X in C)J=(0,aQ.and)(J,Of(X,Q,B,Y));return J}PZA.checkDataTypes=Pf;var J9B={message:({schema:A})=>`must be ${A}`,params:({schema:A,schemaValue:Q})=>typeof A=="string"?aQ._`{type: ${A}}`:aQ._`{type: ${Q}}`};function Tf(A){let Q=C9B(A);(0,tJB.reportError)(Q,J9B)}PZA.reportTypeError=Tf;function C9B(A){let{gen:Q,data:B,schema:Y}=A,J=(0,wZA.schemaRefOrVal)(A,Y,"type");return{gen:Q,keyword:"type",data:B,schema:Y.type,schemaCode:J,schemaValue:J,parentSchema:Y,params:{},it:A}}});var vZA=R((kZA)=>{Object.defineProperty(kZA,"__esModule",{value:!0});kZA.assignDefaults=void 0;var tU=GB(),U9B=wB();function E9B(A,Q){let{properties:B,items:Y}=A.schema;if(Q==="object"&&B)for(let J in B)SZA(A,J,B[J].default);else if(Q==="array"&&Array.isArray(Y))Y.forEach((J,C)=>SZA(A,C,J.default))}kZA.assignDefaults=E9B;function SZA(A,Q,B){let{gen:Y,compositeRule:J,data:C,opts:X}=A;if(B===void 0)return;let G=tU._`${C}${(0,tU.getProperty)(Q)}`;if(J){(0,U9B.checkStrictMode)(A,`default is ignored for: ${G}`);return}let F=tU._`${G} === undefined`;if(X.useDefaults==="empty")F=tU._`${F} || ${G} === null || ${G} === ""`;Y.if(F,tU._`${G} = ${(0,tU.stringify)(B)}`)}});var V5=R((hZA)=>{Object.defineProperty(hZA,"__esModule",{value:!0});hZA.validateUnion=hZA.validateArray=hZA.usePattern=hZA.callValidateCode=hZA.schemaProperties=hZA.allSchemaProperties=hZA.noPropertyInData=hZA.propertyInData=hZA.isOwnProperty=hZA.hasPropFunc=hZA.reportMissingProp=hZA.checkMissingProp=hZA.checkReportMissingProp=void 0;var Z0=GB(),Sf=wB(),k7=_G(),K9B=wB();function V9B(A,Q){let{gen:B,data:Y,it:J}=A;B.if(_f(B,Y,Q,J.opts.ownProperties),()=>{A.setParams({missingProperty:Z0._`${Q}`},!0),A.error()})}hZA.checkReportMissingProp=V9B;function I9B({gen:A,data:Q,it:{opts:B}},Y,J){return(0,Z0.or)(...Y.map((C)=>(0,Z0.and)(_f(A,Q,C,B.ownProperties),Z0._`${J} = ${C}`)))}hZA.checkMissingProp=I9B;function H9B(A,Q){A.setParams({missingProperty:Q},!0),A.error()}hZA.reportMissingProp=H9B;function yZA(A){return A.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:Z0._`Object.prototype.hasOwnProperty`})}hZA.hasPropFunc=yZA;function kf(A,Q,B){return Z0._`${yZA(A)}.call(${Q}, ${B})`}hZA.isOwnProperty=kf;function D9B(A,Q,B,Y){let J=Z0._`${Q}${(0,Z0.getProperty)(B)} !== undefined`;return Y?Z0._`${J} && ${kf(A,Q,B)}`:J}hZA.propertyInData=D9B;function _f(A,Q,B,Y){let J=Z0._`${Q}${(0,Z0.getProperty)(B)} === undefined`;return Y?(0,Z0.or)(J,(0,Z0.not)(kf(A,Q,B))):J}hZA.noPropertyInData=_f;function gZA(A){return A?Object.keys(A).filter((Q)=>Q!=="__proto__"):[]}hZA.allSchemaProperties=gZA;function N9B(A,Q){return gZA(Q).filter((B)=>!(0,Sf.alwaysValidSchema)(A,Q[B]))}hZA.schemaProperties=N9B;function L9B({schemaCode:A,data:Q,it:{gen:B,topSchemaRef:Y,schemaPath:J,errorPath:C},it:X},G,F,W){let Z=W?Z0._`${A}, ${Q}, ${Y}${J}`:Q,U=[[k7.default.instancePath,(0,Z0.strConcat)(k7.default.instancePath,C)],[k7.default.parentData,X.parentData],[k7.default.parentDataProperty,X.parentDataProperty],[k7.default.rootData,k7.default.rootData]];if(X.opts.dynamicRef)U.push([k7.default.dynamicAnchors,k7.default.dynamicAnchors]);let $=Z0._`${Z}, ${B.object(...U)}`;return F!==Z0.nil?Z0._`${G}.call(${F}, ${$})`:Z0._`${G}(${$})`}hZA.callValidateCode=L9B;var q9B=Z0._`new RegExp`;function M9B({gen:A,it:{opts:Q}},B){let Y=Q.unicodeRegExp?"u":"",{regExp:J}=Q.code,C=J(B,Y);return A.scopeValue("pattern",{key:C.toString(),ref:C,code:Z0._`${J.code==="new RegExp"?q9B:(0,K9B.useFunc)(A,J)}(${B}, ${Y})`})}hZA.usePattern=M9B;function z9B(A){let{gen:Q,data:B,keyword:Y,it:J}=A,C=Q.name("valid");if(J.allErrors){let G=Q.let("valid",!0);return X(()=>Q.assign(G,!1)),G}return Q.var(C,!0),X(()=>Q.break()),C;function X(G){let F=Q.const("len",Z0._`${B}.length`);Q.forRange("i",0,F,(W)=>{A.subschema({keyword:Y,dataProp:W,dataPropType:Sf.Type.Num},C),Q.if((0,Z0.not)(C),G)})}}hZA.validateArray=z9B;function R9B(A){let{gen:Q,schema:B,keyword:Y,it:J}=A;if(!Array.isArray(B))throw Error("ajv implementation error");if(B.some((F)=>(0,Sf.alwaysValidSchema)(J,F))&&!J.opts.unevaluated)return;let X=Q.let("valid",!1),G=Q.name("_valid");Q.block(()=>B.forEach((F,W)=>{let Z=A.subschema({keyword:Y,schemaProp:W,compositeRule:!0},G);if(Q.assign(X,Z0._`${X} || ${G}`),!A.mergeValidEvaluated(Z,G))Q.if((0,Z0.not)(X))})),A.result(X,()=>A.reset(),()=>A.error(!0))}hZA.validateUnion=R9B});var dZA=R((mZA)=>{Object.defineProperty(mZA,"__esModule",{value:!0});mZA.validateKeywordUsage=mZA.validSchemaType=mZA.funcKeywordCode=mZA.macroKeywordCode=void 0;var Q9=GB(),YZ=_G(),x9B=V5(),f9B=oH();function b9B(A,Q){let{gen:B,keyword:Y,schema:J,parentSchema:C,it:X}=A,G=Q.macro.call(X.self,J,C,X),F=bZA(B,Y,G);if(X.opts.validateSchema!==!1)X.self.validateSchema(G,!0);let W=B.name("valid");A.subschema({schema:G,schemaPath:Q9.nil,errSchemaPath:`${X.errSchemaPath}/${Y}`,topSchemaRef:F,compositeRule:!0},W),A.pass(W,()=>A.error(!0))}mZA.macroKeywordCode=b9B;function m9B(A,Q){var B;let{gen:Y,keyword:J,schema:C,parentSchema:X,$data:G,it:F}=A;d9B(F,Q);let W=!G&&Q.compile?Q.compile.call(F.self,C,X,F):Q.validate,Z=bZA(Y,J,W),U=Y.let("valid");A.block$data(U,$),A.ok((B=Q.valid)!==null&&B!==void 0?B:U);function $(){if(Q.errors===!1){if(I(),Q.modifying)fZA(A);V(()=>A.error())}else{let H=Q.async?E():K();if(Q.modifying)fZA(A);V(()=>u9B(A,H))}}function E(){let H=Y.let("ruleErrs",null);return Y.try(()=>I(Q9._`await `),(D)=>Y.assign(U,!1).if(Q9._`${D} instanceof ${F.ValidationError}`,()=>Y.assign(H,Q9._`${D}.errors`),()=>Y.throw(D))),H}function K(){let H=Q9._`${Z}.errors`;return Y.assign(H,null),I(Q9.nil),H}function I(H=Q.async?Q9._`await `:Q9.nil){let D=F.opts.passContext?YZ.default.this:YZ.default.self,L=!(("compile"in Q)&&!G||Q.schema===!1);Y.assign(U,Q9._`${H}${(0,x9B.callValidateCode)(A,Z,D,L)}`,Q.modifying)}function V(H){var D;Y.if((0,Q9.not)((D=Q.valid)!==null&&D!==void 0?D:U),H)}}mZA.funcKeywordCode=m9B;function fZA(A){let{gen:Q,data:B,it:Y}=A;Q.if(Y.parentData,()=>Q.assign(B,Q9._`${Y.parentData}[${Y.parentDataProperty}]`))}function u9B(A,Q){let{gen:B}=A;B.if(Q9._`Array.isArray(${Q})`,()=>{B.assign(YZ.default.vErrors,Q9._`${YZ.default.vErrors} === null ? ${Q} : ${YZ.default.vErrors}.concat(${Q})`).assign(YZ.default.errors,Q9._`${YZ.default.vErrors}.length`),(0,f9B.extendErrors)(A)},()=>A.error())}function d9B({schemaEnv:A},Q){if(Q.async&&!A.$async)throw Error("async keyword in sync schema")}function bZA(A,Q,B){if(B===void 0)throw Error(`keyword "${Q}" failed to compile`);return A.scopeValue("keyword",typeof B=="function"?{ref:B}:{ref:B,code:(0,Q9.stringify)(B)})}function c9B(A,Q,B=!1){return!Q.length||Q.some((Y)=>Y==="array"?Array.isArray(A):Y==="object"?A&&typeof A=="object"&&!Array.isArray(A):typeof A==Y||B&&typeof A>"u")}mZA.validSchemaType=c9B;function l9B({schema:A,opts:Q,self:B,errSchemaPath:Y},J,C){if(Array.isArray(J.keyword)?!J.keyword.includes(C):J.keyword!==C)throw Error("ajv implementation error");let X=J.dependencies;if(X===null||X===void 0?void 0:X.some((G)=>!Object.prototype.hasOwnProperty.call(A,G)))throw Error(`parent schema must have dependencies of ${C}: ${X.join(",")}`);if(J.validateSchema){if(!J.validateSchema(A[C])){let F=`keyword "${C}" value is invalid at path "${Y}": `+B.errorsText(J.validateSchema.errors);if(Q.validateSchema==="log")B.logger.error(F);else throw Error(F)}}}mZA.validateKeywordUsage=l9B});var iZA=R((lZA)=>{Object.defineProperty(lZA,"__esModule",{value:!0});lZA.extendSubschemaMode=lZA.extendSubschemaData=lZA.getSubschema=void 0;var c1=GB(),cZA=wB();function s9B(A,{keyword:Q,schemaProp:B,schema:Y,schemaPath:J,errSchemaPath:C,topSchemaRef:X}){if(Q!==void 0&&Y!==void 0)throw Error('both "keyword" and "schema" passed, only one allowed');if(Q!==void 0){let G=A.schema[Q];return B===void 0?{schema:G,schemaPath:c1._`${A.schemaPath}${(0,c1.getProperty)(Q)}`,errSchemaPath:`${A.errSchemaPath}/${Q}`}:{schema:G[B],schemaPath:c1._`${A.schemaPath}${(0,c1.getProperty)(Q)}${(0,c1.getProperty)(B)}`,errSchemaPath:`${A.errSchemaPath}/${Q}/${(0,cZA.escapeFragment)(B)}`}}if(Y!==void 0){if(J===void 0||C===void 0||X===void 0)throw Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:Y,schemaPath:J,topSchemaRef:X,errSchemaPath:C}}throw Error('either "keyword" or "schema" must be passed')}lZA.getSubschema=s9B;function r9B(A,Q,{dataProp:B,dataPropType:Y,data:J,dataTypes:C,propertyName:X}){if(J!==void 0&&B!==void 0)throw Error('both "data" and "dataProp" passed, only one allowed');let{gen:G}=Q;if(B!==void 0){let{errorPath:W,dataPathArr:Z,opts:U}=Q,$=G.let("data",c1._`${Q.data}${(0,c1.getProperty)(B)}`,!0);F($),A.errorPath=c1.str`${W}${(0,cZA.getErrorPath)(B,Y,U.jsPropertySyntax)}`,A.parentDataProperty=c1._`${B}`,A.dataPathArr=[...Z,A.parentDataProperty]}if(J!==void 0){let W=J instanceof c1.Name?J:G.let("data",J,!0);if(F(W),X!==void 0)A.propertyName=X}if(C)A.dataTypes=C;function F(W){A.data=W,A.dataLevel=Q.dataLevel+1,A.dataTypes=[],Q.definedProperties=new Set,A.parentData=Q.data,A.dataNames=[...Q.dataNames,W]}}lZA.extendSubschemaData=r9B;function a9B(A,{jtdDiscriminator:Q,jtdMetadata:B,compositeRule:Y,createErrors:J,allErrors:C}){if(Y!==void 0)A.compositeRule=Y;if(J!==void 0)A.createErrors=J;if(C!==void 0)A.allErrors=C;A.jtdDiscriminator=Q,A.jtdMetadata=B}lZA.extendSubschemaMode=a9B});var vf=R((G$Y,nZA)=>{nZA.exports=function A(Q,B){if(Q===B)return!0;if(Q&&B&&typeof Q=="object"&&typeof B=="object"){if(Q.constructor!==B.constructor)return!1;var Y,J,C;if(Array.isArray(Q)){if(Y=Q.length,Y!=B.length)return!1;for(J=Y;J--!==0;)if(!A(Q[J],B[J]))return!1;return!0}if(Q.constructor===RegExp)return Q.source===B.source&&Q.flags===B.flags;if(Q.valueOf!==Object.prototype.valueOf)return Q.valueOf()===B.valueOf();if(Q.toString!==Object.prototype.toString)return Q.toString()===B.toString();if(C=Object.keys(Q),Y=C.length,Y!==Object.keys(B).length)return!1;for(J=Y;J--!==0;)if(!Object.prototype.hasOwnProperty.call(B,C[J]))return!1;for(J=Y;J--!==0;){var X=C[J];if(!A(Q[X],B[X]))return!1}return!0}return Q!==Q&&B!==B}});var rZA=R((F$Y,sZA)=>{var _7=sZA.exports=function(A,Q,B){if(typeof Q=="function")B=Q,Q={};B=Q.cb||B;var Y=typeof B=="function"?B:B.pre||function(){},J=B.post||function(){};xR(Q,Y,J,A,"",A)};_7.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};_7.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};_7.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};_7.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function xR(A,Q,B,Y,J,C,X,G,F,W){if(Y&&typeof Y=="object"&&!Array.isArray(Y)){Q(Y,J,C,X,G,F,W);for(var Z in Y){var U=Y[Z];if(Array.isArray(U)){if(Z in _7.arrayKeywords)for(var $=0;${Object.defineProperty(eZA,"__esModule",{value:!0});eZA.getSchemaRefs=eZA.resolveUrl=eZA.normalizeId=eZA._getFullPath=eZA.getFullPath=eZA.inlineRef=void 0;var A8B=wB(),Q8B=vf(),B8B=rZA(),Y8B=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function J8B(A,Q=!0){if(typeof A=="boolean")return!0;if(Q===!0)return!yf(A);if(!Q)return!1;return aZA(A)<=Q}eZA.inlineRef=J8B;var C8B=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function yf(A){for(let Q in A){if(C8B.has(Q))return!0;let B=A[Q];if(Array.isArray(B)&&B.some(yf))return!0;if(typeof B=="object"&&yf(B))return!0}return!1}function aZA(A){let Q=0;for(let B in A){if(B==="$ref")return 1/0;if(Q++,Y8B.has(B))continue;if(typeof A[B]=="object")(0,A8B.eachItem)(A[B],(Y)=>Q+=aZA(Y));if(Q===1/0)return 1/0}return Q}function oZA(A,Q="",B){if(B!==!1)Q=eU(Q);let Y=A.parse(Q);return tZA(A,Y)}eZA.getFullPath=oZA;function tZA(A,Q){return A.serialize(Q).split("#")[0]+"#"}eZA._getFullPath=tZA;var X8B=/#\/?$/;function eU(A){return A?A.replace(X8B,""):""}eZA.normalizeId=eU;function G8B(A,Q,B){return B=eU(B),A.resolve(Q,B)}eZA.resolveUrl=G8B;var F8B=/^[a-z_][-a-z0-9._]*$/i;function W8B(A,Q){if(typeof A=="boolean")return{};let{schemaId:B,uriResolver:Y}=this.opts,J=eU(A[B]||Q),C={"":J},X=oZA(Y,J,!1),G={},F=new Set;return B8B(A,{allKeys:!0},(U,$,E,K)=>{if(K===void 0)return;let I=X+$,V=C[K];if(typeof U[B]=="string")V=H.call(this,U[B]);D.call(this,U.$anchor),D.call(this,U.$dynamicAnchor),C[$]=V;function H(L){let z=this.opts.uriResolver.resolve;if(L=eU(V?z(V,L):L),F.has(L))throw Z(L);F.add(L);let M=this.refs[L];if(typeof M=="string")M=this.refs[M];if(typeof M=="object")W(U,M.schema,L);else if(L!==eU(I))if(L[0]==="#")W(U,G[L],L),G[L]=U;else this.refs[L]=I;return L}function D(L){if(typeof L=="string"){if(!F8B.test(L))throw Error(`invalid anchor "${L}"`);H.call(this,`#${L}`)}}}),G;function W(U,$,E){if($!==void 0&&!Q8B(U,$))throw Z(E)}function Z(U){return Error(`reference "${U}" resolves to more than one schema`)}}eZA.getSchemaRefs=W8B});var BD=R((V$A)=>{Object.defineProperty(V$A,"__esModule",{value:!0});V$A.getData=V$A.KeywordCxt=V$A.validateFunctionCode=void 0;var C$A=DZA(),Q$A=tH(),hf=jf(),fR=tH(),V8B=vZA(),QD=dZA(),gf=iZA(),GQ=GB(),yQ=_G(),I8B=eH(),vG=wB(),AD=oH();function H8B(A){if(F$A(A)){if(W$A(A),G$A(A)){L8B(A);return}}X$A(A,()=>(0,C$A.topBoolOrEmptySchema)(A))}V$A.validateFunctionCode=H8B;function X$A({gen:A,validateName:Q,schema:B,schemaEnv:Y,opts:J},C){if(J.code.es5)A.func(Q,GQ._`${yQ.default.data}, ${yQ.default.valCxt}`,Y.$async,()=>{A.code(GQ._`"use strict"; ${B$A(B,J)}`),N8B(A,J),A.code(C)});else A.func(Q,GQ._`${yQ.default.data}, ${D8B(J)}`,Y.$async,()=>A.code(B$A(B,J)).code(C))}function D8B(A){return GQ._`{${yQ.default.instancePath}="", ${yQ.default.parentData}, ${yQ.default.parentDataProperty}, ${yQ.default.rootData}=${yQ.default.data}${A.dynamicRef?GQ._`, ${yQ.default.dynamicAnchors}={}`:GQ.nil}}={}`}function N8B(A,Q){A.if(yQ.default.valCxt,()=>{if(A.var(yQ.default.instancePath,GQ._`${yQ.default.valCxt}.${yQ.default.instancePath}`),A.var(yQ.default.parentData,GQ._`${yQ.default.valCxt}.${yQ.default.parentData}`),A.var(yQ.default.parentDataProperty,GQ._`${yQ.default.valCxt}.${yQ.default.parentDataProperty}`),A.var(yQ.default.rootData,GQ._`${yQ.default.valCxt}.${yQ.default.rootData}`),Q.dynamicRef)A.var(yQ.default.dynamicAnchors,GQ._`${yQ.default.valCxt}.${yQ.default.dynamicAnchors}`)},()=>{if(A.var(yQ.default.instancePath,GQ._`""`),A.var(yQ.default.parentData,GQ._`undefined`),A.var(yQ.default.parentDataProperty,GQ._`undefined`),A.var(yQ.default.rootData,yQ.default.data),Q.dynamicRef)A.var(yQ.default.dynamicAnchors,GQ._`{}`)})}function L8B(A){let{schema:Q,opts:B,gen:Y}=A;X$A(A,()=>{if(B.$comment&&Q.$comment)$$A(A);if(w8B(A),Y.let(yQ.default.vErrors,null),Y.let(yQ.default.errors,0),B.unevaluated)q8B(A);Z$A(A),P8B(A)});return}function q8B(A){let{gen:Q,validateName:B}=A;A.evaluated=Q.const("evaluated",GQ._`${B}.evaluated`),Q.if(GQ._`${A.evaluated}.dynamicProps`,()=>Q.assign(GQ._`${A.evaluated}.props`,GQ._`undefined`)),Q.if(GQ._`${A.evaluated}.dynamicItems`,()=>Q.assign(GQ._`${A.evaluated}.items`,GQ._`undefined`))}function B$A(A,Q){let B=typeof A=="object"&&A[Q.schemaId];return B&&(Q.code.source||Q.code.process)?GQ._`/*# sourceURL=${B} */`:GQ.nil}function M8B(A,Q){if(F$A(A)){if(W$A(A),G$A(A)){z8B(A,Q);return}}(0,C$A.boolOrEmptySchema)(A,Q)}function G$A({schema:A,self:Q}){if(typeof A=="boolean")return!A;for(let B in A)if(Q.RULES.all[B])return!0;return!1}function F$A(A){return typeof A.schema!="boolean"}function z8B(A,Q){let{schema:B,gen:Y,opts:J}=A;if(J.$comment&&B.$comment)$$A(A);j8B(A),O8B(A);let C=Y.const("_errs",yQ.default.errors);Z$A(A,C),Y.var(Q,GQ._`${C} === ${yQ.default.errors}`)}function W$A(A){(0,vG.checkUnknownRules)(A),R8B(A)}function Z$A(A,Q){if(A.opts.jtd)return Y$A(A,[],!1,Q);let B=(0,Q$A.getSchemaTypes)(A.schema),Y=(0,Q$A.coerceAndCheckDataType)(A,B);Y$A(A,B,!Y,Q)}function R8B(A){let{schema:Q,errSchemaPath:B,opts:Y,self:J}=A;if(Q.$ref&&Y.ignoreKeywordsWithRef&&(0,vG.schemaHasRulesButRef)(Q,J.RULES))J.logger.warn(`$ref: keywords ignored in schema at path "${B}"`)}function w8B(A){let{schema:Q,opts:B}=A;if(Q.default!==void 0&&B.useDefaults&&B.strictSchema)(0,vG.checkStrictMode)(A,"default is ignored in the schema root")}function j8B(A){let Q=A.schema[A.opts.schemaId];if(Q)A.baseId=(0,I8B.resolveUrl)(A.opts.uriResolver,A.baseId,Q)}function O8B(A){if(A.schema.$async&&!A.schemaEnv.$async)throw Error("async schema in sync schema")}function $$A({gen:A,schemaEnv:Q,schema:B,errSchemaPath:Y,opts:J}){let C=B.$comment;if(J.$comment===!0)A.code(GQ._`${yQ.default.self}.logger.log(${C})`);else if(typeof J.$comment=="function"){let X=GQ.str`${Y}/$comment`,G=A.scopeValue("root",{ref:Q.root});A.code(GQ._`${yQ.default.self}.opts.$comment(${C}, ${X}, ${G}.schema)`)}}function P8B(A){let{gen:Q,schemaEnv:B,validateName:Y,ValidationError:J,opts:C}=A;if(B.$async)Q.if(GQ._`${yQ.default.errors} === 0`,()=>Q.return(yQ.default.data),()=>Q.throw(GQ._`new ${J}(${yQ.default.vErrors})`));else{if(Q.assign(GQ._`${Y}.errors`,yQ.default.vErrors),C.unevaluated)T8B(A);Q.return(GQ._`${yQ.default.errors} === 0`)}}function T8B({gen:A,evaluated:Q,props:B,items:Y}){if(B instanceof GQ.Name)A.assign(GQ._`${Q}.props`,B);if(Y instanceof GQ.Name)A.assign(GQ._`${Q}.items`,Y)}function Y$A(A,Q,B,Y){let{gen:J,schema:C,data:X,allErrors:G,opts:F,self:W}=A,{RULES:Z}=W;if(C.$ref&&(F.ignoreKeywordsWithRef||!(0,vG.schemaHasRulesButRef)(C,Z))){J.block(()=>E$A(A,"$ref",Z.all.$ref.definition));return}if(!F.jtd)S8B(A,Q);J.block(()=>{for(let $ of Z.rules)U($);U(Z.post)});function U($){if(!(0,hf.shouldUseGroup)(C,$))return;if($.type){if(J.if((0,fR.checkDataType)($.type,X,F.strictNumbers)),J$A(A,$),Q.length===1&&Q[0]===$.type&&B)J.else(),(0,fR.reportTypeError)(A);J.endIf()}else J$A(A,$);if(!G)J.if(GQ._`${yQ.default.errors} === ${Y||0}`)}}function J$A(A,Q){let{gen:B,schema:Y,opts:{useDefaults:J}}=A;if(J)(0,V8B.assignDefaults)(A,Q.type);B.block(()=>{for(let C of Q.rules)if((0,hf.shouldUseRule)(Y,C))E$A(A,C.keyword,C.definition,Q.type)})}function S8B(A,Q){if(A.schemaEnv.meta||!A.opts.strictTypes)return;if(k8B(A,Q),!A.opts.allowUnionTypes)_8B(A,Q);v8B(A,A.dataTypes)}function k8B(A,Q){if(!Q.length)return;if(!A.dataTypes.length){A.dataTypes=Q;return}Q.forEach((B)=>{if(!U$A(A.dataTypes,B))xf(A,`type "${B}" not allowed by context "${A.dataTypes.join(",")}"`)}),g8B(A,Q)}function _8B(A,Q){if(Q.length>1&&!(Q.length===2&&Q.includes("null")))xf(A,"use allowUnionTypes to allow union type keyword")}function v8B(A,Q){let B=A.self.RULES.all;for(let Y in B){let J=B[Y];if(typeof J=="object"&&(0,hf.shouldUseRule)(A.schema,J)){let{type:C}=J.definition;if(C.length&&!C.some((X)=>y8B(Q,X)))xf(A,`missing type "${C.join(",")}" for keyword "${Y}"`)}}}function y8B(A,Q){return A.includes(Q)||Q==="number"&&A.includes("integer")}function U$A(A,Q){return A.includes(Q)||Q==="integer"&&A.includes("number")}function g8B(A,Q){let B=[];for(let Y of A.dataTypes)if(U$A(Q,Y))B.push(Y);else if(Q.includes("integer")&&Y==="number")B.push("integer");A.dataTypes=B}function xf(A,Q){let B=A.schemaEnv.baseId+A.errSchemaPath;Q+=` at "${B}" (strictTypes)`,(0,vG.checkStrictMode)(A,Q,A.opts.strictTypes)}class ff{constructor(A,Q,B){if((0,QD.validateKeywordUsage)(A,Q,B),this.gen=A.gen,this.allErrors=A.allErrors,this.keyword=B,this.data=A.data,this.schema=A.schema[B],this.$data=Q.$data&&A.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,vG.schemaRefOrVal)(A,this.schema,B,this.$data),this.schemaType=Q.schemaType,this.parentSchema=A.schema,this.params={},this.it=A,this.def=Q,this.$data)this.schemaCode=A.gen.const("vSchema",K$A(this.$data,A));else if(this.schemaCode=this.schemaValue,!(0,QD.validSchemaType)(this.schema,Q.schemaType,Q.allowUndefined))throw Error(`${B} value must be ${JSON.stringify(Q.schemaType)}`);if("code"in Q?Q.trackErrors:Q.errors!==!1)this.errsCount=A.gen.const("_errs",yQ.default.errors)}result(A,Q,B){this.failResult((0,GQ.not)(A),Q,B)}failResult(A,Q,B){if(this.gen.if(A),B)B();else this.error();if(Q){if(this.gen.else(),Q(),this.allErrors)this.gen.endIf()}else if(this.allErrors)this.gen.endIf();else this.gen.else()}pass(A,Q){this.failResult((0,GQ.not)(A),void 0,Q)}fail(A){if(A===void 0){if(this.error(),!this.allErrors)this.gen.if(!1);return}if(this.gen.if(A),this.error(),this.allErrors)this.gen.endIf();else this.gen.else()}fail$data(A){if(!this.$data)return this.fail(A);let{schemaCode:Q}=this;this.fail(GQ._`${Q} !== undefined && (${(0,GQ.or)(this.invalid$data(),A)})`)}error(A,Q,B){if(Q){this.setParams(Q),this._error(A,B),this.setParams({});return}this._error(A,B)}_error(A,Q){(A?AD.reportExtraError:AD.reportError)(this,this.def.error,Q)}$dataError(){(0,AD.reportError)(this,this.def.$dataError||AD.keyword$DataError)}reset(){if(this.errsCount===void 0)throw Error('add "trackErrors" to keyword definition');(0,AD.resetErrorsCount)(this.gen,this.errsCount)}ok(A){if(!this.allErrors)this.gen.if(A)}setParams(A,Q){if(Q)Object.assign(this.params,A);else this.params=A}block$data(A,Q,B=GQ.nil){this.gen.block(()=>{this.check$data(A,B),Q()})}check$data(A=GQ.nil,Q=GQ.nil){if(!this.$data)return;let{gen:B,schemaCode:Y,schemaType:J,def:C}=this;if(B.if((0,GQ.or)(GQ._`${Y} === undefined`,Q)),A!==GQ.nil)B.assign(A,!0);if(J.length||C.validateSchema){if(B.elseIf(this.invalid$data()),this.$dataError(),A!==GQ.nil)B.assign(A,!1)}B.else()}invalid$data(){let{gen:A,schemaCode:Q,schemaType:B,def:Y,it:J}=this;return(0,GQ.or)(C(),X());function C(){if(B.length){if(!(Q instanceof GQ.Name))throw Error("ajv implementation error");let G=Array.isArray(B)?B:[B];return GQ._`${(0,fR.checkDataTypes)(G,Q,J.opts.strictNumbers,fR.DataType.Wrong)}`}return GQ.nil}function X(){if(Y.validateSchema){let G=A.scopeValue("validate$data",{ref:Y.validateSchema});return GQ._`!${G}(${Q})`}return GQ.nil}}subschema(A,Q){let B=(0,gf.getSubschema)(this.it,A);(0,gf.extendSubschemaData)(B,this.it,A),(0,gf.extendSubschemaMode)(B,A);let Y={...this.it,...B,items:void 0,props:void 0};return M8B(Y,Q),Y}mergeEvaluated(A,Q){let{it:B,gen:Y}=this;if(!B.opts.unevaluated)return;if(B.props!==!0&&A.props!==void 0)B.props=vG.mergeEvaluated.props(Y,A.props,B.props,Q);if(B.items!==!0&&A.items!==void 0)B.items=vG.mergeEvaluated.items(Y,A.items,B.items,Q)}mergeValidEvaluated(A,Q){let{it:B,gen:Y}=this;if(B.opts.unevaluated&&(B.props!==!0||B.items!==!0))return Y.if(Q,()=>this.mergeEvaluated(A,GQ.Name)),!0}}V$A.KeywordCxt=ff;function E$A(A,Q,B,Y){let J=new ff(A,B,Q);if("code"in B)B.code(J,Y);else if(J.$data&&B.validate)(0,QD.funcKeywordCode)(J,B);else if("macro"in B)(0,QD.macroKeywordCode)(J,B);else if(B.compile||B.validate)(0,QD.funcKeywordCode)(J,B)}var h8B=/^\/(?:[^~]|~0|~1)*$/,x8B=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function K$A(A,{dataLevel:Q,dataNames:B,dataPathArr:Y}){let J,C;if(A==="")return yQ.default.rootData;if(A[0]==="/"){if(!h8B.test(A))throw Error(`Invalid JSON-pointer: ${A}`);J=A,C=yQ.default.rootData}else{let W=x8B.exec(A);if(!W)throw Error(`Invalid JSON-pointer: ${A}`);let Z=+W[1];if(J=W[2],J==="#"){if(Z>=Q)throw Error(F("property/index",Z));return Y[Q-Z]}if(Z>Q)throw Error(F("data",Z));if(C=B[Q-Z],!J)return C}let X=C,G=J.split("/");for(let W of G)if(W)C=GQ._`${C}${(0,GQ.getProperty)((0,vG.unescapeJsonPointer)(W))}`,X=GQ._`${X} && ${C}`;return X;function F(W,Z){return`Cannot access ${W} ${Z} levels up, current level is ${Q}`}}V$A.getData=K$A});var bR=R((D$A)=>{Object.defineProperty(D$A,"__esModule",{value:!0});class H$A extends Error{constructor(A){super("validation failed");this.errors=A,this.ajv=this.validation=!0}}D$A.default=H$A});var YD=R((L$A)=>{Object.defineProperty(L$A,"__esModule",{value:!0});var bf=eH();class N$A extends Error{constructor(A,Q,B,Y){super(Y||`can't resolve reference ${B} from id ${Q}`);this.missingRef=(0,bf.resolveUrl)(A,Q,B),this.missingSchema=(0,bf.normalizeId)((0,bf.getFullPath)(A,this.missingRef))}}L$A.default=N$A});var uR=R((z$A)=>{Object.defineProperty(z$A,"__esModule",{value:!0});z$A.resolveSchema=z$A.getCompilingSchema=z$A.resolveRef=z$A.compileSchema=z$A.SchemaEnv=void 0;var yC=GB(),d8B=bR(),JZ=_G(),gC=eH(),q$A=wB(),c8B=BD();class JD{constructor(A){var Q;this.refs={},this.dynamicAnchors={};let B;if(typeof A.schema=="object")B=A.schema;this.schema=A.schema,this.schemaId=A.schemaId,this.root=A.root||this,this.baseId=(Q=A.baseId)!==null&&Q!==void 0?Q:(0,gC.normalizeId)(B===null||B===void 0?void 0:B[A.schemaId||"$id"]),this.schemaPath=A.schemaPath,this.localRefs=A.localRefs,this.meta=A.meta,this.$async=B===null||B===void 0?void 0:B.$async,this.refs={}}}z$A.SchemaEnv=JD;function uf(A){let Q=M$A.call(this,A);if(Q)return Q;let B=(0,gC.getFullPath)(this.opts.uriResolver,A.root.baseId),{es5:Y,lines:J}=this.opts.code,{ownProperties:C}=this.opts,X=new yC.CodeGen(this.scope,{es5:Y,lines:J,ownProperties:C}),G;if(A.$async)G=X.scopeValue("Error",{ref:d8B.default,code:yC._`require("ajv/dist/runtime/validation_error").default`});let F=X.scopeName("validate");A.validateName=F;let W={gen:X,allErrors:this.opts.allErrors,data:JZ.default.data,parentData:JZ.default.parentData,parentDataProperty:JZ.default.parentDataProperty,dataNames:[JZ.default.data],dataPathArr:[yC.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:X.scopeValue("schema",this.opts.code.source===!0?{ref:A.schema,code:(0,yC.stringify)(A.schema)}:{ref:A.schema}),validateName:F,ValidationError:G,schema:A.schema,schemaEnv:A,rootId:B,baseId:A.baseId||B,schemaPath:yC.nil,errSchemaPath:A.schemaPath||(this.opts.jtd?"":"#"),errorPath:yC._`""`,opts:this.opts,self:this},Z;try{this._compilations.add(A),(0,c8B.validateFunctionCode)(W),X.optimize(this.opts.code.optimize);let U=X.toString();if(Z=`${X.scopeRefs(JZ.default.scope)}return ${U}`,this.opts.code.process)Z=this.opts.code.process(Z,A);let E=Function(`${JZ.default.self}`,`${JZ.default.scope}`,Z)(this,this.scope.get());if(this.scope.value(F,{ref:E}),E.errors=null,E.schema=A.schema,E.schemaEnv=A,A.$async)E.$async=!0;if(this.opts.code.source===!0)E.source={validateName:F,validateCode:U,scopeValues:X._values};if(this.opts.unevaluated){let{props:K,items:I}=W;if(E.evaluated={props:K instanceof yC.Name?void 0:K,items:I instanceof yC.Name?void 0:I,dynamicProps:K instanceof yC.Name,dynamicItems:I instanceof yC.Name},E.source)E.source.evaluated=(0,yC.stringify)(E.evaluated)}return A.validate=E,A}catch(U){if(delete A.validate,delete A.validateName,Z)this.logger.error("Error compiling schema, function code:",Z);throw U}finally{this._compilations.delete(A)}}z$A.compileSchema=uf;function l8B(A,Q,B){var Y;B=(0,gC.resolveUrl)(this.opts.uriResolver,Q,B);let J=A.refs[B];if(J)return J;let C=n8B.call(this,A,B);if(C===void 0){let X=(Y=A.localRefs)===null||Y===void 0?void 0:Y[B],{schemaId:G}=this.opts;if(X)C=new JD({schema:X,schemaId:G,root:A,baseId:Q})}if(C===void 0)return;return A.refs[B]=p8B.call(this,C)}z$A.resolveRef=l8B;function p8B(A){if((0,gC.inlineRef)(A.schema,this.opts.inlineRefs))return A.schema;return A.validate?A:uf.call(this,A)}function M$A(A){for(let Q of this._compilations)if(i8B(Q,A))return Q}z$A.getCompilingSchema=M$A;function i8B(A,Q){return A.schema===Q.schema&&A.root===Q.root&&A.baseId===Q.baseId}function n8B(A,Q){let B;while(typeof(B=this.refs[Q])=="string")Q=B;return B||this.schemas[Q]||mR.call(this,A,Q)}function mR(A,Q){let B=this.opts.uriResolver.parse(Q),Y=(0,gC._getFullPath)(this.opts.uriResolver,B),J=(0,gC.getFullPath)(this.opts.uriResolver,A.baseId,void 0);if(Object.keys(A.schema).length>0&&Y===J)return mf.call(this,B,A);let C=(0,gC.normalizeId)(Y),X=this.refs[C]||this.schemas[C];if(typeof X=="string"){let G=mR.call(this,A,X);if(typeof(G===null||G===void 0?void 0:G.schema)!=="object")return;return mf.call(this,B,G)}if(typeof(X===null||X===void 0?void 0:X.schema)!=="object")return;if(!X.validate)uf.call(this,X);if(C===(0,gC.normalizeId)(Q)){let{schema:G}=X,{schemaId:F}=this.opts,W=G[F];if(W)J=(0,gC.resolveUrl)(this.opts.uriResolver,J,W);return new JD({schema:G,schemaId:F,root:A,baseId:J})}return mf.call(this,B,X)}z$A.resolveSchema=mR;var s8B=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function mf(A,{baseId:Q,schema:B,root:Y}){var J;if(((J=A.fragment)===null||J===void 0?void 0:J[0])!=="/")return;for(let G of A.fragment.slice(1).split("/")){if(typeof B==="boolean")return;let F=B[(0,q$A.unescapeFragment)(G)];if(F===void 0)return;B=F;let W=typeof B==="object"&&B[this.opts.schemaId];if(!s8B.has(G)&&W)Q=(0,gC.resolveUrl)(this.opts.uriResolver,Q,W)}let C;if(typeof B!="boolean"&&B.$ref&&!(0,q$A.schemaHasRulesButRef)(B,this.RULES)){let G=(0,gC.resolveUrl)(this.opts.uriResolver,Q,B.$ref);C=mR.call(this,Y,G)}let{schemaId:X}=this.opts;if(C=C||new JD({schema:B,schemaId:X,root:Y,baseId:Q}),C.schema!==C.root.schema)return C;return}});var w$A=R((K$Y,e8B)=>{e8B.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var O$A=R((V$Y,j$A)=>{var A5B={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,a:10,A:10,b:11,B:11,c:12,C:12,d:13,D:13,e:14,E:14,f:15,F:15};j$A.exports={HEX:A5B}});var g$A=R((I$Y,y$A)=>{var{HEX:Q5B}=O$A(),B5B=/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u;function k$A(A){if(v$A(A,".")<3)return{host:A,isIPV4:!1};let Q=A.match(B5B)||[],[B]=Q;if(B)return{host:J5B(B,"."),isIPV4:!0};else return{host:A,isIPV4:!1}}function df(A,Q=!1){let B="",Y=!0;for(let J of A){if(Q5B[J]===void 0)return;if(J!=="0"&&Y===!0)Y=!1;if(!Y)B+=J}if(Q&&B.length===0)B="0";return B}function Y5B(A){let Q=0,B={error:!1,address:"",zone:""},Y=[],J=[],C=!1,X=!1,G=!1;function F(){if(J.length){if(C===!1){let W=df(J);if(W!==void 0)Y.push(W);else return B.error=!0,!1}J.length=0}return!0}for(let W=0;W7){B.error=!0;break}if(W-1>=0&&A[W-1]===":")X=!0;continue}else if(Z==="%"){if(!F())break;C=!0}else{J.push(Z);continue}}if(J.length)if(C)B.zone=J.join("");else if(G)Y.push(J.join(""));else Y.push(df(J));return B.address=Y.join(""),B}function _$A(A){if(v$A(A,":")<2)return{host:A,isIPV6:!1};let Q=Y5B(A);if(!Q.error){let{address:B,address:Y}=Q;if(Q.zone)B+="%"+Q.zone,Y+="%25"+Q.zone;return{host:B,escapedHost:Y,isIPV6:!0}}else return{host:A,isIPV6:!1}}function J5B(A,Q){let B="",Y=!0,J=A.length;for(let C=0;C{var W5B=/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu,Z5B=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu;function h$A(A){return typeof A.secure==="boolean"?A.secure:String(A.scheme).toLowerCase()==="wss"}function x$A(A){if(!A.host)A.error=A.error||"HTTP URIs must have a host.";return A}function f$A(A){let Q=String(A.scheme).toLowerCase()==="https";if(A.port===(Q?443:80)||A.port==="")A.port=void 0;if(!A.path)A.path="/";return A}function $5B(A){return A.secure=h$A(A),A.resourceName=(A.path||"/")+(A.query?"?"+A.query:""),A.path=void 0,A.query=void 0,A}function U5B(A){if(A.port===(h$A(A)?443:80)||A.port==="")A.port=void 0;if(typeof A.secure==="boolean")A.scheme=A.secure?"wss":"ws",A.secure=void 0;if(A.resourceName){let[Q,B]=A.resourceName.split("?");A.path=Q&&Q!=="/"?Q:void 0,A.query=B,A.resourceName=void 0}return A.fragment=void 0,A}function E5B(A,Q){if(!A.path)return A.error="URN can not be parsed",A;let B=A.path.match(Z5B);if(B){let Y=Q.scheme||A.scheme||"urn";A.nid=B[1].toLowerCase(),A.nss=B[2];let J=`${Y}:${Q.nid||A.nid}`,C=cf[J];if(A.path=void 0,C)A=C.parse(A,Q)}else A.error=A.error||"URN can not be parsed.";return A}function K5B(A,Q){let B=Q.scheme||A.scheme||"urn",Y=A.nid.toLowerCase(),J=`${B}:${Q.nid||Y}`,C=cf[J];if(C)A=C.serialize(A,Q);let X=A,G=A.nss;return X.path=`${Y||Q.nid}:${G}`,Q.skipEscape=!0,X}function V5B(A,Q){let B=A;if(B.uuid=B.nss,B.nss=void 0,!Q.tolerant&&(!B.uuid||!W5B.test(B.uuid)))B.error=B.error||"UUID is not valid.";return B}function I5B(A){let Q=A;return Q.nss=(A.uuid||"").toLowerCase(),Q}var b$A={scheme:"http",domainHost:!0,parse:x$A,serialize:f$A},H5B={scheme:"https",domainHost:b$A.domainHost,parse:x$A,serialize:f$A},dR={scheme:"ws",domainHost:!0,parse:$5B,serialize:U5B},D5B={scheme:"wss",domainHost:dR.domainHost,parse:dR.parse,serialize:dR.serialize},N5B={scheme:"urn",parse:E5B,serialize:K5B,skipNormalize:!0},L5B={scheme:"urn:uuid",parse:V5B,serialize:I5B,skipNormalize:!0},cf={http:b$A,https:H5B,ws:dR,wss:D5B,urn:N5B,"urn:uuid":L5B};m$A.exports=cf});var c$A=R((D$Y,lR)=>{var{normalizeIPv6:q5B,normalizeIPv4:M5B,removeDotSegments:CD,recomposeAuthority:z5B,normalizeComponentEncoding:cR}=g$A(),lf=u$A();function R5B(A,Q){if(typeof A==="string")A=l1(yG(A,Q),Q);else if(typeof A==="object")A=yG(l1(A,Q),Q);return A}function w5B(A,Q,B){let Y=Object.assign({scheme:"null"},B),J=d$A(yG(A,Y),yG(Q,Y),Y,!0);return l1(J,{...Y,skipEscape:!0})}function d$A(A,Q,B,Y){let J={};if(!Y)A=yG(l1(A,B),B),Q=yG(l1(Q,B),B);if(B=B||{},!B.tolerant&&Q.scheme)J.scheme=Q.scheme,J.userinfo=Q.userinfo,J.host=Q.host,J.port=Q.port,J.path=CD(Q.path||""),J.query=Q.query;else{if(Q.userinfo!==void 0||Q.host!==void 0||Q.port!==void 0)J.userinfo=Q.userinfo,J.host=Q.host,J.port=Q.port,J.path=CD(Q.path||""),J.query=Q.query;else{if(!Q.path)if(J.path=A.path,Q.query!==void 0)J.query=Q.query;else J.query=A.query;else{if(Q.path.charAt(0)==="/")J.path=CD(Q.path);else{if((A.userinfo!==void 0||A.host!==void 0||A.port!==void 0)&&!A.path)J.path="/"+Q.path;else if(!A.path)J.path=Q.path;else J.path=A.path.slice(0,A.path.lastIndexOf("/")+1)+Q.path;J.path=CD(J.path)}J.query=Q.query}J.userinfo=A.userinfo,J.host=A.host,J.port=A.port}J.scheme=A.scheme}return J.fragment=Q.fragment,J}function j5B(A,Q,B){if(typeof A==="string")A=unescape(A),A=l1(cR(yG(A,B),!0),{...B,skipEscape:!0});else if(typeof A==="object")A=l1(cR(A,!0),{...B,skipEscape:!0});if(typeof Q==="string")Q=unescape(Q),Q=l1(cR(yG(Q,B),!0),{...B,skipEscape:!0});else if(typeof Q==="object")Q=l1(cR(Q,!0),{...B,skipEscape:!0});return A.toLowerCase()===Q.toLowerCase()}function l1(A,Q){let B={host:A.host,scheme:A.scheme,userinfo:A.userinfo,port:A.port,path:A.path,query:A.query,nid:A.nid,nss:A.nss,uuid:A.uuid,fragment:A.fragment,reference:A.reference,resourceName:A.resourceName,secure:A.secure,error:""},Y=Object.assign({},Q),J=[],C=lf[(Y.scheme||B.scheme||"").toLowerCase()];if(C&&C.serialize)C.serialize(B,Y);if(B.path!==void 0)if(!Y.skipEscape){if(B.path=escape(B.path),B.scheme!==void 0)B.path=B.path.split("%3A").join(":")}else B.path=unescape(B.path);if(Y.reference!=="suffix"&&B.scheme)J.push(B.scheme,":");let X=z5B(B);if(X!==void 0){if(Y.reference!=="suffix")J.push("//");if(J.push(X),B.path&&B.path.charAt(0)!=="/")J.push("/")}if(B.path!==void 0){let G=B.path;if(!Y.absolutePath&&(!C||!C.absolutePath))G=CD(G);if(X===void 0)G=G.replace(/^\/\//u,"/%2F");J.push(G)}if(B.query!==void 0)J.push("?",B.query);if(B.fragment!==void 0)J.push("#",B.fragment);return J.join("")}var O5B=Array.from({length:127},(A,Q)=>/[^!"$&'()*+,\-.;=_`a-z{}~]/u.test(String.fromCharCode(Q)));function P5B(A){let Q=0;for(let B=0,Y=A.length;B126||O5B[Q])return!0;return!1}var T5B=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function yG(A,Q){let B=Object.assign({},Q),Y={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},J=A.indexOf("%")!==-1,C=!1;if(B.reference==="suffix")A=(B.scheme?B.scheme+":":"")+"//"+A;let X=A.match(T5B);if(X){if(Y.scheme=X[1],Y.userinfo=X[3],Y.host=X[4],Y.port=parseInt(X[5],10),Y.path=X[6]||"",Y.query=X[7],Y.fragment=X[8],isNaN(Y.port))Y.port=X[5];if(Y.host){let F=M5B(Y.host);if(F.isIPV4===!1){let W=q5B(F.host);Y.host=W.host.toLowerCase(),C=W.isIPV6}else Y.host=F.host,C=!0}if(Y.scheme===void 0&&Y.userinfo===void 0&&Y.host===void 0&&Y.port===void 0&&Y.query===void 0&&!Y.path)Y.reference="same-document";else if(Y.scheme===void 0)Y.reference="relative";else if(Y.fragment===void 0)Y.reference="absolute";else Y.reference="uri";if(B.reference&&B.reference!=="suffix"&&B.reference!==Y.reference)Y.error=Y.error||"URI is not a "+B.reference+" reference.";let G=lf[(B.scheme||Y.scheme||"").toLowerCase()];if(!B.unicodeSupport&&(!G||!G.unicodeSupport)){if(Y.host&&(B.domainHost||G&&G.domainHost)&&C===!1&&P5B(Y.host))try{Y.host=URL.domainToASCII(Y.host.toLowerCase())}catch(F){Y.error=Y.error||"Host's domain name can not be converted to ASCII: "+F}}if(!G||G&&!G.skipNormalize){if(J&&Y.scheme!==void 0)Y.scheme=unescape(Y.scheme);if(J&&Y.host!==void 0)Y.host=unescape(Y.host);if(Y.path)Y.path=escape(unescape(Y.path));if(Y.fragment)Y.fragment=encodeURI(decodeURIComponent(Y.fragment))}if(G&&G.parse)G.parse(Y,B)}else Y.error=Y.error||"URI can not be parsed.";return Y}var pf={SCHEMES:lf,normalize:R5B,resolve:w5B,resolveComponents:d$A,equal:j5B,serialize:l1,parse:yG};lR.exports=pf;lR.exports.default=pf;lR.exports.fastUri=pf});var i$A=R((p$A)=>{Object.defineProperty(p$A,"__esModule",{value:!0});var l$A=c$A();l$A.code='require("ajv/dist/runtime/uri").default';p$A.default=l$A});var A4A=R((gG)=>{Object.defineProperty(gG,"__esModule",{value:!0});gG.CodeGen=gG.Name=gG.nil=gG.stringify=gG.str=gG._=gG.KeywordCxt=void 0;var k5B=BD();Object.defineProperty(gG,"KeywordCxt",{enumerable:!0,get:function(){return k5B.KeywordCxt}});var AE=GB();Object.defineProperty(gG,"_",{enumerable:!0,get:function(){return AE._}});Object.defineProperty(gG,"str",{enumerable:!0,get:function(){return AE.str}});Object.defineProperty(gG,"stringify",{enumerable:!0,get:function(){return AE.stringify}});Object.defineProperty(gG,"nil",{enumerable:!0,get:function(){return AE.nil}});Object.defineProperty(gG,"Name",{enumerable:!0,get:function(){return AE.Name}});Object.defineProperty(gG,"CodeGen",{enumerable:!0,get:function(){return AE.CodeGen}});var _5B=bR(),o$A=YD(),v5B=wf(),XD=uR(),y5B=GB(),GD=eH(),pR=tH(),sf=wB(),n$A=w$A(),g5B=i$A(),t$A=(A,Q)=>new RegExp(A,Q);t$A.code="new RegExp";var h5B=["removeAdditional","useDefaults","coerceTypes"],x5B=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),f5B={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},b5B={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},s$A=200;function m5B(A){var Q,B,Y,J,C,X,G,F,W,Z,U,$,E,K,I,V,H,D,L,z,M,N,q,w,P;let _=A.strict,O=(Q=A.code)===null||Q===void 0?void 0:Q.optimize,k=O===!0||O===void 0?1:O||0,T=(Y=(B=A.code)===null||B===void 0?void 0:B.regExp)!==null&&Y!==void 0?Y:t$A,S=(J=A.uriResolver)!==null&&J!==void 0?J:g5B.default;return{strictSchema:(X=(C=A.strictSchema)!==null&&C!==void 0?C:_)!==null&&X!==void 0?X:!0,strictNumbers:(F=(G=A.strictNumbers)!==null&&G!==void 0?G:_)!==null&&F!==void 0?F:!0,strictTypes:(Z=(W=A.strictTypes)!==null&&W!==void 0?W:_)!==null&&Z!==void 0?Z:"log",strictTuples:($=(U=A.strictTuples)!==null&&U!==void 0?U:_)!==null&&$!==void 0?$:"log",strictRequired:(K=(E=A.strictRequired)!==null&&E!==void 0?E:_)!==null&&K!==void 0?K:!1,code:A.code?{...A.code,optimize:k,regExp:T}:{optimize:k,regExp:T},loopRequired:(I=A.loopRequired)!==null&&I!==void 0?I:s$A,loopEnum:(V=A.loopEnum)!==null&&V!==void 0?V:s$A,meta:(H=A.meta)!==null&&H!==void 0?H:!0,messages:(D=A.messages)!==null&&D!==void 0?D:!0,inlineRefs:(L=A.inlineRefs)!==null&&L!==void 0?L:!0,schemaId:(z=A.schemaId)!==null&&z!==void 0?z:"$id",addUsedSchema:(M=A.addUsedSchema)!==null&&M!==void 0?M:!0,validateSchema:(N=A.validateSchema)!==null&&N!==void 0?N:!0,validateFormats:(q=A.validateFormats)!==null&&q!==void 0?q:!0,unicodeRegExp:(w=A.unicodeRegExp)!==null&&w!==void 0?w:!0,int32range:(P=A.int32range)!==null&&P!==void 0?P:!0,uriResolver:S}}class iR{constructor(A={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,A=this.opts={...A,...m5B(A)};let{es5:Q,lines:B}=this.opts.code;this.scope=new y5B.ValueScope({scope:{},prefixes:x5B,es5:Q,lines:B}),this.logger=i5B(A.logger);let Y=A.validateFormats;if(A.validateFormats=!1,this.RULES=(0,v5B.getRules)(),r$A.call(this,f5B,A,"NOT SUPPORTED"),r$A.call(this,b5B,A,"DEPRECATED","warn"),this._metaOpts=l5B.call(this),A.formats)d5B.call(this);if(this._addVocabularies(),this._addDefaultMetaSchema(),A.keywords)c5B.call(this,A.keywords);if(typeof A.meta=="object")this.addMetaSchema(A.meta);u5B.call(this),A.validateFormats=Y}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:A,meta:Q,schemaId:B}=this.opts,Y=n$A;if(B==="id")Y={...n$A},Y.id=Y.$id,delete Y.$id;if(Q&&A)this.addMetaSchema(Y,Y[B],!1)}defaultMeta(){let{meta:A,schemaId:Q}=this.opts;return this.opts.defaultMeta=typeof A=="object"?A[Q]||A:void 0}validate(A,Q){let B;if(typeof A=="string"){if(B=this.getSchema(A),!B)throw Error(`no schema with key or ref "${A}"`)}else B=this.compile(A);let Y=B(Q);if(!("$async"in B))this.errors=B.errors;return Y}compile(A,Q){let B=this._addSchema(A,Q);return B.validate||this._compileSchemaEnv(B)}compileAsync(A,Q){if(typeof this.opts.loadSchema!="function")throw Error("options.loadSchema should be a function");let{loadSchema:B}=this.opts;return Y.call(this,A,Q);async function Y(W,Z){await J.call(this,W.$schema);let U=this._addSchema(W,Z);return U.validate||C.call(this,U)}async function J(W){if(W&&!this.getSchema(W))await Y.call(this,{$ref:W},!0)}async function C(W){try{return this._compileSchemaEnv(W)}catch(Z){if(!(Z instanceof o$A.default))throw Z;return X.call(this,Z),await G.call(this,Z.missingSchema),C.call(this,W)}}function X({missingSchema:W,missingRef:Z}){if(this.refs[W])throw Error(`AnySchema ${W} is loaded but ${Z} cannot be resolved`)}async function G(W){let Z=await F.call(this,W);if(!this.refs[W])await J.call(this,Z.$schema);if(!this.refs[W])this.addSchema(Z,W,Q)}async function F(W){let Z=this._loading[W];if(Z)return Z;try{return await(this._loading[W]=B(W))}finally{delete this._loading[W]}}}addSchema(A,Q,B,Y=this.opts.validateSchema){if(Array.isArray(A)){for(let C of A)this.addSchema(C,void 0,B,Y);return this}let J;if(typeof A==="object"){let{schemaId:C}=this.opts;if(J=A[C],J!==void 0&&typeof J!="string")throw Error(`schema ${C} must be string`)}return Q=(0,GD.normalizeId)(Q||J),this._checkUnique(Q),this.schemas[Q]=this._addSchema(A,B,Q,Y,!0),this}addMetaSchema(A,Q,B=this.opts.validateSchema){return this.addSchema(A,Q,!0,B),this}validateSchema(A,Q){if(typeof A=="boolean")return!0;let B;if(B=A.$schema,B!==void 0&&typeof B!="string")throw Error("$schema must be a string");if(B=B||this.opts.defaultMeta||this.defaultMeta(),!B)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let Y=this.validate(B,A);if(!Y&&Q){let J="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(J);else throw Error(J)}return Y}getSchema(A){let Q;while(typeof(Q=a$A.call(this,A))=="string")A=Q;if(Q===void 0){let{schemaId:B}=this.opts,Y=new XD.SchemaEnv({schema:{},schemaId:B});if(Q=XD.resolveSchema.call(this,Y,A),!Q)return;this.refs[A]=Q}return Q.validate||this._compileSchemaEnv(Q)}removeSchema(A){if(A instanceof RegExp)return this._removeAllSchemas(this.schemas,A),this._removeAllSchemas(this.refs,A),this;switch(typeof A){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let Q=a$A.call(this,A);if(typeof Q=="object")this._cache.delete(Q.schema);return delete this.schemas[A],delete this.refs[A],this}case"object":{let Q=A;this._cache.delete(Q);let B=A[this.opts.schemaId];if(B)B=(0,GD.normalizeId)(B),delete this.schemas[B],delete this.refs[B];return this}default:throw Error("ajv.removeSchema: invalid parameter")}}addVocabulary(A){for(let Q of A)this.addKeyword(Q);return this}addKeyword(A,Q){let B;if(typeof A=="string"){if(B=A,typeof Q=="object")this.logger.warn("these parameters are deprecated, see docs for addKeyword"),Q.keyword=B}else if(typeof A=="object"&&Q===void 0){if(Q=A,B=Q.keyword,Array.isArray(B)&&!B.length)throw Error("addKeywords: keyword must be string or non-empty array")}else throw Error("invalid addKeywords parameters");if(s5B.call(this,B,Q),!Q)return(0,sf.eachItem)(B,(J)=>nf.call(this,J)),this;a5B.call(this,Q);let Y={...Q,type:(0,pR.getJSONTypes)(Q.type),schemaType:(0,pR.getJSONTypes)(Q.schemaType)};return(0,sf.eachItem)(B,Y.type.length===0?(J)=>nf.call(this,J,Y):(J)=>Y.type.forEach((C)=>nf.call(this,J,Y,C))),this}getKeyword(A){let Q=this.RULES.all[A];return typeof Q=="object"?Q.definition:!!Q}removeKeyword(A){let{RULES:Q}=this;delete Q.keywords[A],delete Q.all[A];for(let B of Q.rules){let Y=B.rules.findIndex((J)=>J.keyword===A);if(Y>=0)B.rules.splice(Y,1)}return this}addFormat(A,Q){if(typeof Q=="string")Q=new RegExp(Q);return this.formats[A]=Q,this}errorsText(A=this.errors,{separator:Q=", ",dataVar:B="data"}={}){if(!A||A.length===0)return"No errors";return A.map((Y)=>`${B}${Y.instancePath} ${Y.message}`).reduce((Y,J)=>Y+Q+J)}$dataMetaSchema(A,Q){let B=this.RULES.all;A=JSON.parse(JSON.stringify(A));for(let Y of Q){let J=Y.split("/").slice(1),C=A;for(let X of J)C=C[X];for(let X in B){let G=B[X];if(typeof G!="object")continue;let{$data:F}=G.definition,W=C[X];if(F&&W)C[X]=e$A(W)}}return A}_removeAllSchemas(A,Q){for(let B in A){let Y=A[B];if(!Q||Q.test(B)){if(typeof Y=="string")delete A[B];else if(Y&&!Y.meta)this._cache.delete(Y.schema),delete A[B]}}}_addSchema(A,Q,B,Y=this.opts.validateSchema,J=this.opts.addUsedSchema){let C,{schemaId:X}=this.opts;if(typeof A=="object")C=A[X];else if(this.opts.jtd)throw Error("schema must be object");else if(typeof A!="boolean")throw Error("schema must be object or boolean");let G=this._cache.get(A);if(G!==void 0)return G;B=(0,GD.normalizeId)(C||B);let F=GD.getSchemaRefs.call(this,A,B);if(G=new XD.SchemaEnv({schema:A,schemaId:X,meta:Q,baseId:B,localRefs:F}),this._cache.set(G.schema,G),J&&!B.startsWith("#")){if(B)this._checkUnique(B);this.refs[B]=G}if(Y)this.validateSchema(A,!0);return G}_checkUnique(A){if(this.schemas[A]||this.refs[A])throw Error(`schema with key or id "${A}" already exists`)}_compileSchemaEnv(A){if(A.meta)this._compileMetaSchema(A);else XD.compileSchema.call(this,A);if(!A.validate)throw Error("ajv implementation error");return A.validate}_compileMetaSchema(A){let Q=this.opts;this.opts=this._metaOpts;try{XD.compileSchema.call(this,A)}finally{this.opts=Q}}}iR.ValidationError=_5B.default;iR.MissingRefError=o$A.default;gG.default=iR;function r$A(A,Q,B,Y="error"){for(let J in A){let C=J;if(C in Q)this.logger[Y](`${B}: option ${J}. ${A[C]}`)}}function a$A(A){return A=(0,GD.normalizeId)(A),this.schemas[A]||this.refs[A]}function u5B(){let A=this.opts.schemas;if(!A)return;if(Array.isArray(A))this.addSchema(A);else for(let Q in A)this.addSchema(A[Q],Q)}function d5B(){for(let A in this.opts.formats){let Q=this.opts.formats[A];if(Q)this.addFormat(A,Q)}}function c5B(A){if(Array.isArray(A)){this.addVocabulary(A);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let Q in A){let B=A[Q];if(!B.keyword)B.keyword=Q;this.addKeyword(B)}}function l5B(){let A={...this.opts};for(let Q of h5B)delete A[Q];return A}var p5B={log(){},warn(){},error(){}};function i5B(A){if(A===!1)return p5B;if(A===void 0)return console;if(A.log&&A.warn&&A.error)return A;throw Error("logger must implement log, warn and error methods")}var n5B=/^[a-z_$][a-z0-9_$:-]*$/i;function s5B(A,Q){let{RULES:B}=this;if((0,sf.eachItem)(A,(Y)=>{if(B.keywords[Y])throw Error(`Keyword ${Y} is already defined`);if(!n5B.test(Y))throw Error(`Keyword ${Y} has invalid name`)}),!Q)return;if(Q.$data&&!(("code"in Q)||("validate"in Q)))throw Error('$data keyword must have "code" or "validate" function')}function nf(A,Q,B){var Y;let J=Q===null||Q===void 0?void 0:Q.post;if(B&&J)throw Error('keyword with "post" flag cannot have "type"');let{RULES:C}=this,X=J?C.post:C.rules.find(({type:F})=>F===B);if(!X)X={type:B,rules:[]},C.rules.push(X);if(C.keywords[A]=!0,!Q)return;let G={keyword:A,definition:{...Q,type:(0,pR.getJSONTypes)(Q.type),schemaType:(0,pR.getJSONTypes)(Q.schemaType)}};if(Q.before)r5B.call(this,X,G,Q.before);else X.rules.push(G);C.all[A]=G,(Y=Q.implements)===null||Y===void 0||Y.forEach((F)=>this.addKeyword(F))}function r5B(A,Q,B){let Y=A.rules.findIndex((J)=>J.keyword===B);if(Y>=0)A.rules.splice(Y,0,Q);else A.rules.push(Q),this.logger.warn(`rule ${B} is not defined`)}function a5B(A){let{metaSchema:Q}=A;if(Q===void 0)return;if(A.$data&&this.opts.$data)Q=e$A(Q);A.validateSchema=this.compile(Q,!0)}var o5B={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function e$A(A){return{anyOf:[A,o5B]}}});var B4A=R((Q4A)=>{Object.defineProperty(Q4A,"__esModule",{value:!0});var ACB={keyword:"id",code(){throw Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};Q4A.default=ACB});var F4A=R((X4A)=>{Object.defineProperty(X4A,"__esModule",{value:!0});X4A.callRef=X4A.getValidate=void 0;var BCB=YD(),Y4A=V5(),_9=GB(),QE=_G(),J4A=uR(),nR=wB(),YCB={keyword:"$ref",schemaType:"string",code(A){let{gen:Q,schema:B,it:Y}=A,{baseId:J,schemaEnv:C,validateName:X,opts:G,self:F}=Y,{root:W}=C;if((B==="#"||B==="#/")&&J===W.baseId)return U();let Z=J4A.resolveRef.call(F,W,J,B);if(Z===void 0)throw new BCB.default(Y.opts.uriResolver,J,B);if(Z instanceof J4A.SchemaEnv)return $(Z);return E(Z);function U(){if(C===W)return sR(A,X,C,C.$async);let K=Q.scopeValue("root",{ref:W});return sR(A,_9._`${K}.validate`,W,W.$async)}function $(K){let I=C4A(A,K);sR(A,I,K,K.$async)}function E(K){let I=Q.scopeValue("schema",G.code.source===!0?{ref:K,code:(0,_9.stringify)(K)}:{ref:K}),V=Q.name("valid"),H=A.subschema({schema:K,dataTypes:[],schemaPath:_9.nil,topSchemaRef:I,errSchemaPath:B},V);A.mergeEvaluated(H),A.ok(V)}}};function C4A(A,Q){let{gen:B}=A;return Q.validate?B.scopeValue("validate",{ref:Q.validate}):_9._`${B.scopeValue("wrapper",{ref:Q})}.validate`}X4A.getValidate=C4A;function sR(A,Q,B,Y){let{gen:J,it:C}=A,{allErrors:X,schemaEnv:G,opts:F}=C,W=F.passContext?QE.default.this:_9.nil;if(Y)Z();else U();function Z(){if(!G.$async)throw Error("async schema referenced by sync schema");let K=J.let("valid");J.try(()=>{if(J.code(_9._`await ${(0,Y4A.callValidateCode)(A,Q,W)}`),E(Q),!X)J.assign(K,!0)},(I)=>{if(J.if(_9._`!(${I} instanceof ${C.ValidationError})`,()=>J.throw(I)),$(I),!X)J.assign(K,!1)}),A.ok(K)}function U(){A.result((0,Y4A.callValidateCode)(A,Q,W),()=>E(Q),()=>$(Q))}function $(K){let I=_9._`${K}.errors`;J.assign(QE.default.vErrors,_9._`${QE.default.vErrors} === null ? ${I} : ${QE.default.vErrors}.concat(${I})`),J.assign(QE.default.errors,_9._`${QE.default.vErrors}.length`)}function E(K){var I;if(!C.opts.unevaluated)return;let V=(I=B===null||B===void 0?void 0:B.validate)===null||I===void 0?void 0:I.evaluated;if(C.props!==!0)if(V&&!V.dynamicProps){if(V.props!==void 0)C.props=nR.mergeEvaluated.props(J,V.props,C.props)}else{let H=J.var("props",_9._`${K}.evaluated.props`);C.props=nR.mergeEvaluated.props(J,H,C.props,_9.Name)}if(C.items!==!0)if(V&&!V.dynamicItems){if(V.items!==void 0)C.items=nR.mergeEvaluated.items(J,V.items,C.items)}else{let H=J.var("items",_9._`${K}.evaluated.items`);C.items=nR.mergeEvaluated.items(J,H,C.items,_9.Name)}}}X4A.callRef=sR;X4A.default=YCB});var Z4A=R((W4A)=>{Object.defineProperty(W4A,"__esModule",{value:!0});var XCB=B4A(),GCB=F4A(),FCB=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",XCB.default,GCB.default];W4A.default=FCB});var U4A=R(($4A)=>{Object.defineProperty($4A,"__esModule",{value:!0});var rR=GB(),v7=rR.operators,aR={maximum:{okStr:"<=",ok:v7.LTE,fail:v7.GT},minimum:{okStr:">=",ok:v7.GTE,fail:v7.LT},exclusiveMaximum:{okStr:"<",ok:v7.LT,fail:v7.GTE},exclusiveMinimum:{okStr:">",ok:v7.GT,fail:v7.LTE}},ZCB={message:({keyword:A,schemaCode:Q})=>rR.str`must be ${aR[A].okStr} ${Q}`,params:({keyword:A,schemaCode:Q})=>rR._`{comparison: ${aR[A].okStr}, limit: ${Q}}`},$CB={keyword:Object.keys(aR),type:"number",schemaType:"number",$data:!0,error:ZCB,code(A){let{keyword:Q,data:B,schemaCode:Y}=A;A.fail$data(rR._`${B} ${aR[Q].fail} ${Y} || isNaN(${B})`)}};$4A.default=$CB});var K4A=R((E4A)=>{Object.defineProperty(E4A,"__esModule",{value:!0});var FD=GB(),ECB={message:({schemaCode:A})=>FD.str`must be multiple of ${A}`,params:({schemaCode:A})=>FD._`{multipleOf: ${A}}`},KCB={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:ECB,code(A){let{gen:Q,data:B,schemaCode:Y,it:J}=A,C=J.opts.multipleOfPrecision,X=Q.let("res"),G=C?FD._`Math.abs(Math.round(${X}) - ${X}) > 1e-${C}`:FD._`${X} !== parseInt(${X})`;A.fail$data(FD._`(${Y} === 0 || (${X} = ${B}/${Y}, ${G}))`)}};E4A.default=KCB});var H4A=R((I4A)=>{Object.defineProperty(I4A,"__esModule",{value:!0});function V4A(A){let Q=A.length,B=0,Y=0,J;while(Y=55296&&J<=56319&&Y{Object.defineProperty(D4A,"__esModule",{value:!0});var CZ=GB(),HCB=wB(),DCB=H4A(),NCB={message({keyword:A,schemaCode:Q}){let B=A==="maxLength"?"more":"fewer";return CZ.str`must NOT have ${B} than ${Q} characters`},params:({schemaCode:A})=>CZ._`{limit: ${A}}`},LCB={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:NCB,code(A){let{keyword:Q,data:B,schemaCode:Y,it:J}=A,C=Q==="maxLength"?CZ.operators.GT:CZ.operators.LT,X=J.opts.unicode===!1?CZ._`${B}.length`:CZ._`${(0,HCB.useFunc)(A.gen,DCB.default)}(${B})`;A.fail$data(CZ._`${X} ${C} ${Y}`)}};D4A.default=LCB});var q4A=R((L4A)=>{Object.defineProperty(L4A,"__esModule",{value:!0});var MCB=V5(),oR=GB(),zCB={message:({schemaCode:A})=>oR.str`must match pattern "${A}"`,params:({schemaCode:A})=>oR._`{pattern: ${A}}`},RCB={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:zCB,code(A){let{data:Q,$data:B,schema:Y,schemaCode:J,it:C}=A,X=C.opts.unicodeRegExp?"u":"",G=B?oR._`(new RegExp(${J}, ${X}))`:(0,MCB.usePattern)(A,Y);A.fail$data(oR._`!${G}.test(${Q})`)}};L4A.default=RCB});var z4A=R((M4A)=>{Object.defineProperty(M4A,"__esModule",{value:!0});var WD=GB(),jCB={message({keyword:A,schemaCode:Q}){let B=A==="maxProperties"?"more":"fewer";return WD.str`must NOT have ${B} than ${Q} properties`},params:({schemaCode:A})=>WD._`{limit: ${A}}`},OCB={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:jCB,code(A){let{keyword:Q,data:B,schemaCode:Y}=A,J=Q==="maxProperties"?WD.operators.GT:WD.operators.LT;A.fail$data(WD._`Object.keys(${B}).length ${J} ${Y}`)}};M4A.default=OCB});var w4A=R((R4A)=>{Object.defineProperty(R4A,"__esModule",{value:!0});var ZD=V5(),$D=GB(),TCB=wB(),SCB={message:({params:{missingProperty:A}})=>$D.str`must have required property '${A}'`,params:({params:{missingProperty:A}})=>$D._`{missingProperty: ${A}}`},kCB={keyword:"required",type:"object",schemaType:"array",$data:!0,error:SCB,code(A){let{gen:Q,schema:B,schemaCode:Y,data:J,$data:C,it:X}=A,{opts:G}=X;if(!C&&B.length===0)return;let F=B.length>=G.loopRequired;if(X.allErrors)W();else Z();if(G.strictRequired){let E=A.parentSchema.properties,{definedProperties:K}=A.it;for(let I of B)if((E===null||E===void 0?void 0:E[I])===void 0&&!K.has(I)){let V=X.schemaEnv.baseId+X.errSchemaPath,H=`required property "${I}" is not defined at "${V}" (strictRequired)`;(0,TCB.checkStrictMode)(X,H,X.opts.strictRequired)}}function W(){if(F||C)A.block$data($D.nil,U);else for(let E of B)(0,ZD.checkReportMissingProp)(A,E)}function Z(){let E=Q.let("missing");if(F||C){let K=Q.let("valid",!0);A.block$data(K,()=>$(E,K)),A.ok(K)}else Q.if((0,ZD.checkMissingProp)(A,B,E)),(0,ZD.reportMissingProp)(A,E),Q.else()}function U(){Q.forOf("prop",Y,(E)=>{A.setParams({missingProperty:E}),Q.if((0,ZD.noPropertyInData)(Q,J,E,G.ownProperties),()=>A.error())})}function $(E,K){A.setParams({missingProperty:E}),Q.forOf(E,Y,()=>{Q.assign(K,(0,ZD.propertyInData)(Q,J,E,G.ownProperties)),Q.if((0,$D.not)(K),()=>{A.error(),Q.break()})},$D.nil)}}};R4A.default=kCB});var O4A=R((j4A)=>{Object.defineProperty(j4A,"__esModule",{value:!0});var UD=GB(),vCB={message({keyword:A,schemaCode:Q}){let B=A==="maxItems"?"more":"fewer";return UD.str`must NOT have ${B} than ${Q} items`},params:({schemaCode:A})=>UD._`{limit: ${A}}`},yCB={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:vCB,code(A){let{keyword:Q,data:B,schemaCode:Y}=A,J=Q==="maxItems"?UD.operators.GT:UD.operators.LT;A.fail$data(UD._`${B}.length ${J} ${Y}`)}};j4A.default=yCB});var tR=R((T4A)=>{Object.defineProperty(T4A,"__esModule",{value:!0});var P4A=vf();P4A.code='require("ajv/dist/runtime/equal").default';T4A.default=P4A});var k4A=R((S4A)=>{Object.defineProperty(S4A,"__esModule",{value:!0});var rf=tH(),JJ=GB(),xCB=wB(),fCB=tR(),bCB={message:({params:{i:A,j:Q}})=>JJ.str`must NOT have duplicate items (items ## ${Q} and ${A} are identical)`,params:({params:{i:A,j:Q}})=>JJ._`{i: ${A}, j: ${Q}}`},mCB={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:bCB,code(A){let{gen:Q,data:B,$data:Y,schema:J,parentSchema:C,schemaCode:X,it:G}=A;if(!Y&&!J)return;let F=Q.let("valid"),W=C.items?(0,rf.getSchemaTypes)(C.items):[];A.block$data(F,Z,JJ._`${X} === false`),A.ok(F);function Z(){let K=Q.let("i",JJ._`${B}.length`),I=Q.let("j");A.setParams({i:K,j:I}),Q.assign(F,!0),Q.if(JJ._`${K} > 1`,()=>(U()?$:E)(K,I))}function U(){return W.length>0&&!W.some((K)=>K==="object"||K==="array")}function $(K,I){let V=Q.name("item"),H=(0,rf.checkDataTypes)(W,V,G.opts.strictNumbers,rf.DataType.Wrong),D=Q.const("indices",JJ._`{}`);Q.for(JJ._`;${K}--;`,()=>{if(Q.let(V,JJ._`${B}[${K}]`),Q.if(H,JJ._`continue`),W.length>1)Q.if(JJ._`typeof ${V} == "string"`,JJ._`${V} += "_"`);Q.if(JJ._`typeof ${D}[${V}] == "number"`,()=>{Q.assign(I,JJ._`${D}[${V}]`),A.error(),Q.assign(F,!1).break()}).code(JJ._`${D}[${V}] = ${K}`)})}function E(K,I){let V=(0,xCB.useFunc)(Q,fCB.default),H=Q.name("outer");Q.label(H).for(JJ._`;${K}--;`,()=>Q.for(JJ._`${I} = ${K}; ${I}--;`,()=>Q.if(JJ._`${V}(${B}[${K}], ${B}[${I}])`,()=>{A.error(),Q.assign(F,!1).break(H)})))}}};S4A.default=mCB});var v4A=R((_4A)=>{Object.defineProperty(_4A,"__esModule",{value:!0});var af=GB(),dCB=wB(),cCB=tR(),lCB={message:"must be equal to constant",params:({schemaCode:A})=>af._`{allowedValue: ${A}}`},pCB={keyword:"const",$data:!0,error:lCB,code(A){let{gen:Q,data:B,$data:Y,schemaCode:J,schema:C}=A;if(Y||C&&typeof C=="object")A.fail$data(af._`!${(0,dCB.useFunc)(Q,cCB.default)}(${B}, ${J})`);else A.fail(af._`${C} !== ${B}`)}};_4A.default=pCB});var g4A=R((y4A)=>{Object.defineProperty(y4A,"__esModule",{value:!0});var ED=GB(),nCB=wB(),sCB=tR(),rCB={message:"must be equal to one of the allowed values",params:({schemaCode:A})=>ED._`{allowedValues: ${A}}`},aCB={keyword:"enum",schemaType:"array",$data:!0,error:rCB,code(A){let{gen:Q,data:B,$data:Y,schema:J,schemaCode:C,it:X}=A;if(!Y&&J.length===0)throw Error("enum must have non-empty array");let G=J.length>=X.opts.loopEnum,F,W=()=>F!==null&&F!==void 0?F:F=(0,nCB.useFunc)(Q,sCB.default),Z;if(G||Y)Z=Q.let("valid"),A.block$data(Z,U);else{if(!Array.isArray(J))throw Error("ajv implementation error");let E=Q.const("vSchema",C);Z=(0,ED.or)(...J.map((K,I)=>$(E,I)))}A.pass(Z);function U(){Q.assign(Z,!1),Q.forOf("v",C,(E)=>Q.if(ED._`${W()}(${B}, ${E})`,()=>Q.assign(Z,!0).break()))}function $(E,K){let I=J[K];return typeof I==="object"&&I!==null?ED._`${W()}(${B}, ${E}[${K}])`:ED._`${B} === ${I}`}}};y4A.default=aCB});var x4A=R((h4A)=>{Object.defineProperty(h4A,"__esModule",{value:!0});var tCB=U4A(),eCB=K4A(),A1B=N4A(),Q1B=q4A(),B1B=z4A(),Y1B=w4A(),J1B=O4A(),C1B=k4A(),X1B=v4A(),G1B=g4A(),F1B=[tCB.default,eCB.default,A1B.default,Q1B.default,B1B.default,Y1B.default,J1B.default,C1B.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},X1B.default,G1B.default];h4A.default=F1B});var tf=R((b4A)=>{Object.defineProperty(b4A,"__esModule",{value:!0});b4A.validateAdditionalItems=void 0;var XZ=GB(),of=wB(),Z1B={message:({params:{len:A}})=>XZ.str`must NOT have more than ${A} items`,params:({params:{len:A}})=>XZ._`{limit: ${A}}`},$1B={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:Z1B,code(A){let{parentSchema:Q,it:B}=A,{items:Y}=Q;if(!Array.isArray(Y)){(0,of.checkStrictMode)(B,'"additionalItems" is ignored when "items" is not an array of schemas');return}f4A(A,Y)}};function f4A(A,Q){let{gen:B,schema:Y,data:J,keyword:C,it:X}=A;X.items=!0;let G=B.const("len",XZ._`${J}.length`);if(Y===!1)A.setParams({len:Q.length}),A.pass(XZ._`${G} <= ${Q.length}`);else if(typeof Y=="object"&&!(0,of.alwaysValidSchema)(X,Y)){let W=B.var("valid",XZ._`${G} <= ${Q.length}`);B.if((0,XZ.not)(W),()=>F(W)),A.ok(W)}function F(W){B.forRange("i",Q.length,G,(Z)=>{if(A.subschema({keyword:C,dataProp:Z,dataPropType:of.Type.Num},W),!X.allErrors)B.if((0,XZ.not)(W),()=>B.break())})}}b4A.validateAdditionalItems=f4A;b4A.default=$1B});var ef=R((c4A)=>{Object.defineProperty(c4A,"__esModule",{value:!0});c4A.validateTuple=void 0;var u4A=GB(),eR=wB(),E1B=V5(),K1B={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(A){let{schema:Q,it:B}=A;if(Array.isArray(Q))return d4A(A,"additionalItems",Q);if(B.items=!0,(0,eR.alwaysValidSchema)(B,Q))return;A.ok((0,E1B.validateArray)(A))}};function d4A(A,Q,B=A.schema){let{gen:Y,parentSchema:J,data:C,keyword:X,it:G}=A;if(Z(J),G.opts.unevaluated&&B.length&&G.items!==!0)G.items=eR.mergeEvaluated.items(Y,B.length,G.items);let F=Y.name("valid"),W=Y.const("len",u4A._`${C}.length`);B.forEach((U,$)=>{if((0,eR.alwaysValidSchema)(G,U))return;Y.if(u4A._`${W} > ${$}`,()=>A.subschema({keyword:X,schemaProp:$,dataProp:$},F)),A.ok(F)});function Z(U){let{opts:$,errSchemaPath:E}=G,K=B.length,I=K===U.minItems&&(K===U.maxItems||U[Q]===!1);if($.strictTuples&&!I){let V=`"${X}" is ${K}-tuple, but minItems or maxItems/${Q} are not specified or different at path "${E}"`;(0,eR.checkStrictMode)(G,V,$.strictTuples)}}}c4A.validateTuple=d4A;c4A.default=K1B});var i4A=R((p4A)=>{Object.defineProperty(p4A,"__esModule",{value:!0});var I1B=ef(),H1B={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:(A)=>(0,I1B.validateTuple)(A,"items")};p4A.default=H1B});var r4A=R((s4A)=>{Object.defineProperty(s4A,"__esModule",{value:!0});var n4A=GB(),N1B=wB(),L1B=V5(),q1B=tf(),M1B={message:({params:{len:A}})=>n4A.str`must NOT have more than ${A} items`,params:({params:{len:A}})=>n4A._`{limit: ${A}}`},z1B={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:M1B,code(A){let{schema:Q,parentSchema:B,it:Y}=A,{prefixItems:J}=B;if(Y.items=!0,(0,N1B.alwaysValidSchema)(Y,Q))return;if(J)(0,q1B.validateAdditionalItems)(A,J);else A.ok((0,L1B.validateArray)(A))}};s4A.default=z1B});var o4A=R((a4A)=>{Object.defineProperty(a4A,"__esModule",{value:!0});var I5=GB(),Aw=wB(),w1B={message:({params:{min:A,max:Q}})=>Q===void 0?I5.str`must contain at least ${A} valid item(s)`:I5.str`must contain at least ${A} and no more than ${Q} valid item(s)`,params:({params:{min:A,max:Q}})=>Q===void 0?I5._`{minContains: ${A}}`:I5._`{minContains: ${A}, maxContains: ${Q}}`},j1B={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:w1B,code(A){let{gen:Q,schema:B,parentSchema:Y,data:J,it:C}=A,X,G,{minContains:F,maxContains:W}=Y;if(C.opts.next)X=F===void 0?1:F,G=W;else X=1;let Z=Q.const("len",I5._`${J}.length`);if(A.setParams({min:X,max:G}),G===void 0&&X===0){(0,Aw.checkStrictMode)(C,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(G!==void 0&&X>G){(0,Aw.checkStrictMode)(C,'"minContains" > "maxContains" is always invalid'),A.fail();return}if((0,Aw.alwaysValidSchema)(C,B)){let I=I5._`${Z} >= ${X}`;if(G!==void 0)I=I5._`${I} && ${Z} <= ${G}`;A.pass(I);return}C.items=!0;let U=Q.name("valid");if(G===void 0&&X===1)E(U,()=>Q.if(U,()=>Q.break()));else if(X===0){if(Q.let(U,!0),G!==void 0)Q.if(I5._`${J}.length > 0`,$)}else Q.let(U,!1),$();A.result(U,()=>A.reset());function $(){let I=Q.name("_valid"),V=Q.let("count",0);E(I,()=>Q.if(I,()=>K(V)))}function E(I,V){Q.forRange("i",0,Z,(H)=>{A.subschema({keyword:"contains",dataProp:H,dataPropType:Aw.Type.Num,compositeRule:!0},I),V()})}function K(I){if(Q.code(I5._`${I}++`),G===void 0)Q.if(I5._`${I} >= ${X}`,()=>Q.assign(U,!0).break());else if(Q.if(I5._`${I} > ${G}`,()=>Q.assign(U,!1).break()),X===1)Q.assign(U,!0);else Q.if(I5._`${I} >= ${X}`,()=>Q.assign(U,!0))}}};a4A.default=j1B});var YUA=R((AUA)=>{Object.defineProperty(AUA,"__esModule",{value:!0});AUA.validateSchemaDeps=AUA.validatePropertyDeps=AUA.error=void 0;var Ab=GB(),P1B=wB(),KD=V5();AUA.error={message:({params:{property:A,depsCount:Q,deps:B}})=>{let Y=Q===1?"property":"properties";return Ab.str`must have ${Y} ${B} when property ${A} is present`},params:({params:{property:A,depsCount:Q,deps:B,missingProperty:Y}})=>Ab._`{property: ${A}, + || ${X} === "boolean" || ${J} === null`).assign(G,aQ._`[${J}]`)}}}function N9B({gen:A,parentData:Q,parentDataProperty:B},Y){A.if(aQ._`${Q} !== undefined`,()=>A.assign(aQ._`${Q}[${B}]`,Y))}function ff(A,Q,B,Y=JE.Correct){let J=Y===JE.Correct?aQ.operators.EQ:aQ.operators.NEQ,C;switch(A){case"null":return aQ._`${Q} ${J} null`;case"array":C=aQ._`Array.isArray(${Q})`;break;case"object":C=aQ._`${Q} && typeof ${Q} == "object" && !Array.isArray(${Q})`;break;case"integer":C=X(aQ._`!(${Q} % 1) && !isNaN(${Q})`);break;case"number":C=X();break;default:return aQ._`typeof ${Q} ${J} ${A}`}return Y===JE.Correct?C:(0,aQ.not)(C);function X(G=aQ.nil){return(0,aQ.and)(aQ._`typeof ${Q} == "number"`,G,B?aQ._`isFinite(${Q})`:aQ.nil)}}iZA.checkDataType=ff;function bf(A,Q,B,Y){if(A.length===1)return ff(A[0],Q,B,Y);let J,C=(0,cZA.toHash)(A);if(C.array&&C.object){let X=aQ._`typeof ${Q} != "object"`;J=C.null?X:aQ._`!${Q} || ${X}`,delete C.null,delete C.array,delete C.object}else J=aQ.nil;if(C.number)delete C.integer;for(let X in C)J=(0,aQ.and)(J,ff(X,Q,B,Y));return J}iZA.checkDataTypes=bf;var L9B={message:({schema:A})=>`must be ${A}`,params:({schema:A,schemaValue:Q})=>typeof A=="string"?aQ._`{type: ${A}}`:aQ._`{type: ${Q}}`};function mf(A){let Q=q9B(A);(0,K9B.reportError)(Q,L9B)}iZA.reportTypeError=mf;function q9B(A){let{gen:Q,data:B,schema:Y}=A,J=(0,cZA.schemaRefOrVal)(A,Y,"type");return{gen:Q,keyword:"type",data:B,schema:Y.type,schemaCode:J,schemaValue:J,parentSchema:Y,params:{},it:A}}});var oZA=R((rZA)=>{Object.defineProperty(rZA,"__esModule",{value:!0});rZA.assignDefaults=void 0;var CE=GB(),P9B=wB();function T9B(A,Q){let{properties:B,items:Y}=A.schema;if(Q==="object"&&B)for(let J in B)sZA(A,J,B[J].default);else if(Q==="array"&&Array.isArray(Y))Y.forEach((J,C)=>sZA(A,C,J.default))}rZA.assignDefaults=T9B;function sZA(A,Q,B){let{gen:Y,compositeRule:J,data:C,opts:X}=A;if(B===void 0)return;let G=CE._`${C}${(0,CE.getProperty)(Q)}`;if(J){(0,P9B.checkStrictMode)(A,`default is ignored for: ${G}`);return}let F=CE._`${G} === undefined`;if(X.useDefaults==="empty")F=CE._`${F} || ${G} === null || ${G} === ""`;Y.if(F,CE._`${G} = ${(0,CE.stringify)(B)}`)}});var I5=R((A$A)=>{Object.defineProperty(A$A,"__esModule",{value:!0});A$A.validateUnion=A$A.validateArray=A$A.usePattern=A$A.callValidateCode=A$A.schemaProperties=A$A.allSchemaProperties=A$A.noPropertyInData=A$A.propertyInData=A$A.isOwnProperty=A$A.hasPropFunc=A$A.reportMissingProp=A$A.checkMissingProp=A$A.checkReportMissingProp=void 0;var Z0=GB(),uf=wB(),_7=vX(),S9B=wB();function k9B(A,Q){let{gen:B,data:Y,it:J}=A;B.if(cf(B,Y,Q,J.opts.ownProperties),()=>{A.setParams({missingProperty:Z0._`${Q}`},!0),A.error()})}A$A.checkReportMissingProp=k9B;function _9B({gen:A,data:Q,it:{opts:B}},Y,J){return(0,Z0.or)(...Y.map((C)=>(0,Z0.and)(cf(A,Q,C,B.ownProperties),Z0._`${J} = ${C}`)))}A$A.checkMissingProp=_9B;function v9B(A,Q){A.setParams({missingProperty:Q},!0),A.error()}A$A.reportMissingProp=v9B;function tZA(A){return A.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:Z0._`Object.prototype.hasOwnProperty`})}A$A.hasPropFunc=tZA;function df(A,Q,B){return Z0._`${tZA(A)}.call(${Q}, ${B})`}A$A.isOwnProperty=df;function y9B(A,Q,B,Y){let J=Z0._`${Q}${(0,Z0.getProperty)(B)} !== undefined`;return Y?Z0._`${J} && ${df(A,Q,B)}`:J}A$A.propertyInData=y9B;function cf(A,Q,B,Y){let J=Z0._`${Q}${(0,Z0.getProperty)(B)} === undefined`;return Y?(0,Z0.or)(J,(0,Z0.not)(df(A,Q,B))):J}A$A.noPropertyInData=cf;function eZA(A){return A?Object.keys(A).filter((Q)=>Q!=="__proto__"):[]}A$A.allSchemaProperties=eZA;function h9B(A,Q){return eZA(Q).filter((B)=>!(0,uf.alwaysValidSchema)(A,Q[B]))}A$A.schemaProperties=h9B;function g9B({schemaCode:A,data:Q,it:{gen:B,topSchemaRef:Y,schemaPath:J,errorPath:C},it:X},G,F,W){let Z=W?Z0._`${A}, ${Q}, ${Y}${J}`:Q,U=[[_7.default.instancePath,(0,Z0.strConcat)(_7.default.instancePath,C)],[_7.default.parentData,X.parentData],[_7.default.parentDataProperty,X.parentDataProperty],[_7.default.rootData,_7.default.rootData]];if(X.opts.dynamicRef)U.push([_7.default.dynamicAnchors,_7.default.dynamicAnchors]);let $=Z0._`${Z}, ${B.object(...U)}`;return F!==Z0.nil?Z0._`${G}.call(${F}, ${$})`:Z0._`${G}(${$})`}A$A.callValidateCode=g9B;var x9B=Z0._`new RegExp`;function f9B({gen:A,it:{opts:Q}},B){let Y=Q.unicodeRegExp?"u":"",{regExp:J}=Q.code,C=J(B,Y);return A.scopeValue("pattern",{key:C.toString(),ref:C,code:Z0._`${J.code==="new RegExp"?x9B:(0,S9B.useFunc)(A,J)}(${B}, ${Y})`})}A$A.usePattern=f9B;function b9B(A){let{gen:Q,data:B,keyword:Y,it:J}=A,C=Q.name("valid");if(J.allErrors){let G=Q.let("valid",!0);return X(()=>Q.assign(G,!1)),G}return Q.var(C,!0),X(()=>Q.break()),C;function X(G){let F=Q.const("len",Z0._`${B}.length`);Q.forRange("i",0,F,(W)=>{A.subschema({keyword:Y,dataProp:W,dataPropType:uf.Type.Num},C),Q.if((0,Z0.not)(C),G)})}}A$A.validateArray=b9B;function m9B(A){let{gen:Q,schema:B,keyword:Y,it:J}=A;if(!Array.isArray(B))throw Error("ajv implementation error");if(B.some((F)=>(0,uf.alwaysValidSchema)(J,F))&&!J.opts.unevaluated)return;let X=Q.let("valid",!1),G=Q.name("_valid");Q.block(()=>B.forEach((F,W)=>{let Z=A.subschema({keyword:Y,schemaProp:W,compositeRule:!0},G);if(Q.assign(X,Z0._`${X} || ${G}`),!A.mergeValidEvaluated(Z,G))Q.if((0,Z0.not)(X))})),A.result(X,()=>A.reset(),()=>A.error(!0))}A$A.validateUnion=m9B});var X$A=R((J$A)=>{Object.defineProperty(J$A,"__esModule",{value:!0});J$A.validateKeywordUsage=J$A.validSchemaType=J$A.funcKeywordCode=J$A.macroKeywordCode=void 0;var B9=GB(),XZ=vX(),e9B=I5(),A8B=BD();function Q8B(A,Q){let{gen:B,keyword:Y,schema:J,parentSchema:C,it:X}=A,G=Q.macro.call(X.self,J,C,X),F=Y$A(B,Y,G);if(X.opts.validateSchema!==!1)X.self.validateSchema(G,!0);let W=B.name("valid");A.subschema({schema:G,schemaPath:B9.nil,errSchemaPath:`${X.errSchemaPath}/${Y}`,topSchemaRef:F,compositeRule:!0},W),A.pass(W,()=>A.error(!0))}J$A.macroKeywordCode=Q8B;function B8B(A,Q){var B;let{gen:Y,keyword:J,schema:C,parentSchema:X,$data:G,it:F}=A;J8B(F,Q);let W=!G&&Q.compile?Q.compile.call(F.self,C,X,F):Q.validate,Z=Y$A(Y,J,W),U=Y.let("valid");A.block$data(U,$),A.ok((B=Q.valid)!==null&&B!==void 0?B:U);function $(){if(Q.errors===!1){if(I(),Q.modifying)B$A(A);V(()=>A.error())}else{let H=Q.async?E():K();if(Q.modifying)B$A(A);V(()=>Y8B(A,H))}}function E(){let H=Y.let("ruleErrs",null);return Y.try(()=>I(B9._`await `),(D)=>Y.assign(U,!1).if(B9._`${D} instanceof ${F.ValidationError}`,()=>Y.assign(H,B9._`${D}.errors`),()=>Y.throw(D))),H}function K(){let H=B9._`${Z}.errors`;return Y.assign(H,null),I(B9.nil),H}function I(H=Q.async?B9._`await `:B9.nil){let D=F.opts.passContext?XZ.default.this:XZ.default.self,L=!(("compile"in Q)&&!G||Q.schema===!1);Y.assign(U,B9._`${H}${(0,e9B.callValidateCode)(A,Z,D,L)}`,Q.modifying)}function V(H){var D;Y.if((0,B9.not)((D=Q.valid)!==null&&D!==void 0?D:U),H)}}J$A.funcKeywordCode=B8B;function B$A(A){let{gen:Q,data:B,it:Y}=A;Q.if(Y.parentData,()=>Q.assign(B,B9._`${Y.parentData}[${Y.parentDataProperty}]`))}function Y8B(A,Q){let{gen:B}=A;B.if(B9._`Array.isArray(${Q})`,()=>{B.assign(XZ.default.vErrors,B9._`${XZ.default.vErrors} === null ? ${Q} : ${XZ.default.vErrors}.concat(${Q})`).assign(XZ.default.errors,B9._`${XZ.default.vErrors}.length`),(0,A8B.extendErrors)(A)},()=>A.error())}function J8B({schemaEnv:A},Q){if(Q.async&&!A.$async)throw Error("async keyword in sync schema")}function Y$A(A,Q,B){if(B===void 0)throw Error(`keyword "${Q}" failed to compile`);return A.scopeValue("keyword",typeof B=="function"?{ref:B}:{ref:B,code:(0,B9.stringify)(B)})}function C8B(A,Q,B=!1){return!Q.length||Q.some((Y)=>Y==="array"?Array.isArray(A):Y==="object"?A&&typeof A=="object"&&!Array.isArray(A):typeof A==Y||B&&typeof A>"u")}J$A.validSchemaType=C8B;function X8B({schema:A,opts:Q,self:B,errSchemaPath:Y},J,C){if(Array.isArray(J.keyword)?!J.keyword.includes(C):J.keyword!==C)throw Error("ajv implementation error");let X=J.dependencies;if(X===null||X===void 0?void 0:X.some((G)=>!Object.prototype.hasOwnProperty.call(A,G)))throw Error(`parent schema must have dependencies of ${C}: ${X.join(",")}`);if(J.validateSchema){if(!J.validateSchema(A[C])){let F=`keyword "${C}" value is invalid at path "${Y}": `+B.errorsText(J.validateSchema.errors);if(Q.validateSchema==="log")B.logger.error(F);else throw Error(F)}}}J$A.validateKeywordUsage=X8B});var Z$A=R((F$A)=>{Object.defineProperty(F$A,"__esModule",{value:!0});F$A.extendSubschemaMode=F$A.extendSubschemaData=F$A.getSubschema=void 0;var l1=GB(),G$A=wB();function Z8B(A,{keyword:Q,schemaProp:B,schema:Y,schemaPath:J,errSchemaPath:C,topSchemaRef:X}){if(Q!==void 0&&Y!==void 0)throw Error('both "keyword" and "schema" passed, only one allowed');if(Q!==void 0){let G=A.schema[Q];return B===void 0?{schema:G,schemaPath:l1._`${A.schemaPath}${(0,l1.getProperty)(Q)}`,errSchemaPath:`${A.errSchemaPath}/${Q}`}:{schema:G[B],schemaPath:l1._`${A.schemaPath}${(0,l1.getProperty)(Q)}${(0,l1.getProperty)(B)}`,errSchemaPath:`${A.errSchemaPath}/${Q}/${(0,G$A.escapeFragment)(B)}`}}if(Y!==void 0){if(J===void 0||C===void 0||X===void 0)throw Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:Y,schemaPath:J,topSchemaRef:X,errSchemaPath:C}}throw Error('either "keyword" or "schema" must be passed')}F$A.getSubschema=Z8B;function $8B(A,Q,{dataProp:B,dataPropType:Y,data:J,dataTypes:C,propertyName:X}){if(J!==void 0&&B!==void 0)throw Error('both "data" and "dataProp" passed, only one allowed');let{gen:G}=Q;if(B!==void 0){let{errorPath:W,dataPathArr:Z,opts:U}=Q,$=G.let("data",l1._`${Q.data}${(0,l1.getProperty)(B)}`,!0);F($),A.errorPath=l1.str`${W}${(0,G$A.getErrorPath)(B,Y,U.jsPropertySyntax)}`,A.parentDataProperty=l1._`${B}`,A.dataPathArr=[...Z,A.parentDataProperty]}if(J!==void 0){let W=J instanceof l1.Name?J:G.let("data",J,!0);if(F(W),X!==void 0)A.propertyName=X}if(C)A.dataTypes=C;function F(W){A.data=W,A.dataLevel=Q.dataLevel+1,A.dataTypes=[],Q.definedProperties=new Set,A.parentData=Q.data,A.dataNames=[...Q.dataNames,W]}}F$A.extendSubschemaData=$8B;function U8B(A,{jtdDiscriminator:Q,jtdMetadata:B,compositeRule:Y,createErrors:J,allErrors:C}){if(Y!==void 0)A.compositeRule=Y;if(J!==void 0)A.createErrors=J;if(C!==void 0)A.allErrors=C;A.jtdDiscriminator=Q,A.jtdMetadata=B}F$A.extendSubschemaMode=U8B});var lf=R((t$Y,$$A)=>{$$A.exports=function A(Q,B){if(Q===B)return!0;if(Q&&B&&typeof Q=="object"&&typeof B=="object"){if(Q.constructor!==B.constructor)return!1;var Y,J,C;if(Array.isArray(Q)){if(Y=Q.length,Y!=B.length)return!1;for(J=Y;J--!==0;)if(!A(Q[J],B[J]))return!1;return!0}if(Q.constructor===RegExp)return Q.source===B.source&&Q.flags===B.flags;if(Q.valueOf!==Object.prototype.valueOf)return Q.valueOf()===B.valueOf();if(Q.toString!==Object.prototype.toString)return Q.toString()===B.toString();if(C=Object.keys(Q),Y=C.length,Y!==Object.keys(B).length)return!1;for(J=Y;J--!==0;)if(!Object.prototype.hasOwnProperty.call(B,C[J]))return!1;for(J=Y;J--!==0;){var X=C[J];if(!A(Q[X],B[X]))return!1}return!0}return Q!==Q&&B!==B}});var E$A=R((e$Y,U$A)=>{var v7=U$A.exports=function(A,Q,B){if(typeof Q=="function")B=Q,Q={};B=Q.cb||B;var Y=typeof B=="function"?B:B.pre||function(){},J=B.post||function(){};uR(Q,Y,J,A,"",A)};v7.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};v7.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};v7.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};v7.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function uR(A,Q,B,Y,J,C,X,G,F,W){if(Y&&typeof Y=="object"&&!Array.isArray(Y)){Q(Y,J,C,X,G,F,W);for(var Z in Y){var U=Y[Z];if(Array.isArray(U)){if(Z in v7.arrayKeywords)for(var $=0;${Object.defineProperty(H$A,"__esModule",{value:!0});H$A.getSchemaRefs=H$A.resolveUrl=H$A.normalizeId=H$A._getFullPath=H$A.getFullPath=H$A.inlineRef=void 0;var I8B=wB(),H8B=lf(),D8B=E$A(),N8B=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function L8B(A,Q=!0){if(typeof A=="boolean")return!0;if(Q===!0)return!pf(A);if(!Q)return!1;return K$A(A)<=Q}H$A.inlineRef=L8B;var q8B=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function pf(A){for(let Q in A){if(q8B.has(Q))return!0;let B=A[Q];if(Array.isArray(B)&&B.some(pf))return!0;if(typeof B=="object"&&pf(B))return!0}return!1}function K$A(A){let Q=0;for(let B in A){if(B==="$ref")return 1/0;if(Q++,N8B.has(B))continue;if(typeof A[B]=="object")(0,I8B.eachItem)(A[B],(Y)=>Q+=K$A(Y));if(Q===1/0)return 1/0}return Q}function V$A(A,Q="",B){if(B!==!1)Q=XE(Q);let Y=A.parse(Q);return I$A(A,Y)}H$A.getFullPath=V$A;function I$A(A,Q){return A.serialize(Q).split("#")[0]+"#"}H$A._getFullPath=I$A;var M8B=/#\/?$/;function XE(A){return A?A.replace(M8B,""):""}H$A.normalizeId=XE;function z8B(A,Q,B){return B=XE(B),A.resolve(Q,B)}H$A.resolveUrl=z8B;var R8B=/^[a-z_][-a-z0-9._]*$/i;function w8B(A,Q){if(typeof A=="boolean")return{};let{schemaId:B,uriResolver:Y}=this.opts,J=XE(A[B]||Q),C={"":J},X=V$A(Y,J,!1),G={},F=new Set;return D8B(A,{allKeys:!0},(U,$,E,K)=>{if(K===void 0)return;let I=X+$,V=C[K];if(typeof U[B]=="string")V=H.call(this,U[B]);D.call(this,U.$anchor),D.call(this,U.$dynamicAnchor),C[$]=V;function H(L){let z=this.opts.uriResolver.resolve;if(L=XE(V?z(V,L):L),F.has(L))throw Z(L);F.add(L);let M=this.refs[L];if(typeof M=="string")M=this.refs[M];if(typeof M=="object")W(U,M.schema,L);else if(L!==XE(I))if(L[0]==="#")W(U,G[L],L),G[L]=U;else this.refs[L]=I;return L}function D(L){if(typeof L=="string"){if(!R8B.test(L))throw Error(`invalid anchor "${L}"`);H.call(this,`#${L}`)}}}),G;function W(U,$,E){if($!==void 0&&!H8B(U,$))throw Z(E)}function Z(U){return Error(`reference "${U}" resolves to more than one schema`)}}H$A.getSchemaRefs=w8B});var GD=R((v$A)=>{Object.defineProperty(v$A,"__esModule",{value:!0});v$A.getData=v$A.KeywordCxt=v$A.validateFunctionCode=void 0;var z$A=gZA(),N$A=YD(),sf=xf(),dR=YD(),k8B=oZA(),XD=X$A(),nf=Z$A(),FQ=GB(),yQ=vX(),_8B=JD(),yX=wB(),CD=BD();function v8B(A){if(j$A(A)){if(O$A(A),w$A(A)){g8B(A);return}}R$A(A,()=>(0,z$A.topBoolOrEmptySchema)(A))}v$A.validateFunctionCode=v8B;function R$A({gen:A,validateName:Q,schema:B,schemaEnv:Y,opts:J},C){if(J.code.es5)A.func(Q,FQ._`${yQ.default.data}, ${yQ.default.valCxt}`,Y.$async,()=>{A.code(FQ._`"use strict"; ${L$A(B,J)}`),h8B(A,J),A.code(C)});else A.func(Q,FQ._`${yQ.default.data}, ${y8B(J)}`,Y.$async,()=>A.code(L$A(B,J)).code(C))}function y8B(A){return FQ._`{${yQ.default.instancePath}="", ${yQ.default.parentData}, ${yQ.default.parentDataProperty}, ${yQ.default.rootData}=${yQ.default.data}${A.dynamicRef?FQ._`, ${yQ.default.dynamicAnchors}={}`:FQ.nil}}={}`}function h8B(A,Q){A.if(yQ.default.valCxt,()=>{if(A.var(yQ.default.instancePath,FQ._`${yQ.default.valCxt}.${yQ.default.instancePath}`),A.var(yQ.default.parentData,FQ._`${yQ.default.valCxt}.${yQ.default.parentData}`),A.var(yQ.default.parentDataProperty,FQ._`${yQ.default.valCxt}.${yQ.default.parentDataProperty}`),A.var(yQ.default.rootData,FQ._`${yQ.default.valCxt}.${yQ.default.rootData}`),Q.dynamicRef)A.var(yQ.default.dynamicAnchors,FQ._`${yQ.default.valCxt}.${yQ.default.dynamicAnchors}`)},()=>{if(A.var(yQ.default.instancePath,FQ._`""`),A.var(yQ.default.parentData,FQ._`undefined`),A.var(yQ.default.parentDataProperty,FQ._`undefined`),A.var(yQ.default.rootData,yQ.default.data),Q.dynamicRef)A.var(yQ.default.dynamicAnchors,FQ._`{}`)})}function g8B(A){let{schema:Q,opts:B,gen:Y}=A;R$A(A,()=>{if(B.$comment&&Q.$comment)T$A(A);if(u8B(A),Y.let(yQ.default.vErrors,null),Y.let(yQ.default.errors,0),B.unevaluated)x8B(A);P$A(A),l8B(A)});return}function x8B(A){let{gen:Q,validateName:B}=A;A.evaluated=Q.const("evaluated",FQ._`${B}.evaluated`),Q.if(FQ._`${A.evaluated}.dynamicProps`,()=>Q.assign(FQ._`${A.evaluated}.props`,FQ._`undefined`)),Q.if(FQ._`${A.evaluated}.dynamicItems`,()=>Q.assign(FQ._`${A.evaluated}.items`,FQ._`undefined`))}function L$A(A,Q){let B=typeof A=="object"&&A[Q.schemaId];return B&&(Q.code.source||Q.code.process)?FQ._`/*# sourceURL=${B} */`:FQ.nil}function f8B(A,Q){if(j$A(A)){if(O$A(A),w$A(A)){b8B(A,Q);return}}(0,z$A.boolOrEmptySchema)(A,Q)}function w$A({schema:A,self:Q}){if(typeof A=="boolean")return!A;for(let B in A)if(Q.RULES.all[B])return!0;return!1}function j$A(A){return typeof A.schema!="boolean"}function b8B(A,Q){let{schema:B,gen:Y,opts:J}=A;if(J.$comment&&B.$comment)T$A(A);d8B(A),c8B(A);let C=Y.const("_errs",yQ.default.errors);P$A(A,C),Y.var(Q,FQ._`${C} === ${yQ.default.errors}`)}function O$A(A){(0,yX.checkUnknownRules)(A),m8B(A)}function P$A(A,Q){if(A.opts.jtd)return q$A(A,[],!1,Q);let B=(0,N$A.getSchemaTypes)(A.schema),Y=(0,N$A.coerceAndCheckDataType)(A,B);q$A(A,B,!Y,Q)}function m8B(A){let{schema:Q,errSchemaPath:B,opts:Y,self:J}=A;if(Q.$ref&&Y.ignoreKeywordsWithRef&&(0,yX.schemaHasRulesButRef)(Q,J.RULES))J.logger.warn(`$ref: keywords ignored in schema at path "${B}"`)}function u8B(A){let{schema:Q,opts:B}=A;if(Q.default!==void 0&&B.useDefaults&&B.strictSchema)(0,yX.checkStrictMode)(A,"default is ignored in the schema root")}function d8B(A){let Q=A.schema[A.opts.schemaId];if(Q)A.baseId=(0,_8B.resolveUrl)(A.opts.uriResolver,A.baseId,Q)}function c8B(A){if(A.schema.$async&&!A.schemaEnv.$async)throw Error("async schema in sync schema")}function T$A({gen:A,schemaEnv:Q,schema:B,errSchemaPath:Y,opts:J}){let C=B.$comment;if(J.$comment===!0)A.code(FQ._`${yQ.default.self}.logger.log(${C})`);else if(typeof J.$comment=="function"){let X=FQ.str`${Y}/$comment`,G=A.scopeValue("root",{ref:Q.root});A.code(FQ._`${yQ.default.self}.opts.$comment(${C}, ${X}, ${G}.schema)`)}}function l8B(A){let{gen:Q,schemaEnv:B,validateName:Y,ValidationError:J,opts:C}=A;if(B.$async)Q.if(FQ._`${yQ.default.errors} === 0`,()=>Q.return(yQ.default.data),()=>Q.throw(FQ._`new ${J}(${yQ.default.vErrors})`));else{if(Q.assign(FQ._`${Y}.errors`,yQ.default.vErrors),C.unevaluated)p8B(A);Q.return(FQ._`${yQ.default.errors} === 0`)}}function p8B({gen:A,evaluated:Q,props:B,items:Y}){if(B instanceof FQ.Name)A.assign(FQ._`${Q}.props`,B);if(Y instanceof FQ.Name)A.assign(FQ._`${Q}.items`,Y)}function q$A(A,Q,B,Y){let{gen:J,schema:C,data:X,allErrors:G,opts:F,self:W}=A,{RULES:Z}=W;if(C.$ref&&(F.ignoreKeywordsWithRef||!(0,yX.schemaHasRulesButRef)(C,Z))){J.block(()=>k$A(A,"$ref",Z.all.$ref.definition));return}if(!F.jtd)i8B(A,Q);J.block(()=>{for(let $ of Z.rules)U($);U(Z.post)});function U($){if(!(0,sf.shouldUseGroup)(C,$))return;if($.type){if(J.if((0,dR.checkDataType)($.type,X,F.strictNumbers)),M$A(A,$),Q.length===1&&Q[0]===$.type&&B)J.else(),(0,dR.reportTypeError)(A);J.endIf()}else M$A(A,$);if(!G)J.if(FQ._`${yQ.default.errors} === ${Y||0}`)}}function M$A(A,Q){let{gen:B,schema:Y,opts:{useDefaults:J}}=A;if(J)(0,k8B.assignDefaults)(A,Q.type);B.block(()=>{for(let C of Q.rules)if((0,sf.shouldUseRule)(Y,C))k$A(A,C.keyword,C.definition,Q.type)})}function i8B(A,Q){if(A.schemaEnv.meta||!A.opts.strictTypes)return;if(n8B(A,Q),!A.opts.allowUnionTypes)s8B(A,Q);r8B(A,A.dataTypes)}function n8B(A,Q){if(!Q.length)return;if(!A.dataTypes.length){A.dataTypes=Q;return}Q.forEach((B)=>{if(!S$A(A.dataTypes,B))rf(A,`type "${B}" not allowed by context "${A.dataTypes.join(",")}"`)}),o8B(A,Q)}function s8B(A,Q){if(Q.length>1&&!(Q.length===2&&Q.includes("null")))rf(A,"use allowUnionTypes to allow union type keyword")}function r8B(A,Q){let B=A.self.RULES.all;for(let Y in B){let J=B[Y];if(typeof J=="object"&&(0,sf.shouldUseRule)(A.schema,J)){let{type:C}=J.definition;if(C.length&&!C.some((X)=>a8B(Q,X)))rf(A,`missing type "${C.join(",")}" for keyword "${Y}"`)}}}function a8B(A,Q){return A.includes(Q)||Q==="number"&&A.includes("integer")}function S$A(A,Q){return A.includes(Q)||Q==="integer"&&A.includes("number")}function o8B(A,Q){let B=[];for(let Y of A.dataTypes)if(S$A(Q,Y))B.push(Y);else if(Q.includes("integer")&&Y==="number")B.push("integer");A.dataTypes=B}function rf(A,Q){let B=A.schemaEnv.baseId+A.errSchemaPath;Q+=` at "${B}" (strictTypes)`,(0,yX.checkStrictMode)(A,Q,A.opts.strictTypes)}class af{constructor(A,Q,B){if((0,XD.validateKeywordUsage)(A,Q,B),this.gen=A.gen,this.allErrors=A.allErrors,this.keyword=B,this.data=A.data,this.schema=A.schema[B],this.$data=Q.$data&&A.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,yX.schemaRefOrVal)(A,this.schema,B,this.$data),this.schemaType=Q.schemaType,this.parentSchema=A.schema,this.params={},this.it=A,this.def=Q,this.$data)this.schemaCode=A.gen.const("vSchema",_$A(this.$data,A));else if(this.schemaCode=this.schemaValue,!(0,XD.validSchemaType)(this.schema,Q.schemaType,Q.allowUndefined))throw Error(`${B} value must be ${JSON.stringify(Q.schemaType)}`);if("code"in Q?Q.trackErrors:Q.errors!==!1)this.errsCount=A.gen.const("_errs",yQ.default.errors)}result(A,Q,B){this.failResult((0,FQ.not)(A),Q,B)}failResult(A,Q,B){if(this.gen.if(A),B)B();else this.error();if(Q){if(this.gen.else(),Q(),this.allErrors)this.gen.endIf()}else if(this.allErrors)this.gen.endIf();else this.gen.else()}pass(A,Q){this.failResult((0,FQ.not)(A),void 0,Q)}fail(A){if(A===void 0){if(this.error(),!this.allErrors)this.gen.if(!1);return}if(this.gen.if(A),this.error(),this.allErrors)this.gen.endIf();else this.gen.else()}fail$data(A){if(!this.$data)return this.fail(A);let{schemaCode:Q}=this;this.fail(FQ._`${Q} !== undefined && (${(0,FQ.or)(this.invalid$data(),A)})`)}error(A,Q,B){if(Q){this.setParams(Q),this._error(A,B),this.setParams({});return}this._error(A,B)}_error(A,Q){(A?CD.reportExtraError:CD.reportError)(this,this.def.error,Q)}$dataError(){(0,CD.reportError)(this,this.def.$dataError||CD.keyword$DataError)}reset(){if(this.errsCount===void 0)throw Error('add "trackErrors" to keyword definition');(0,CD.resetErrorsCount)(this.gen,this.errsCount)}ok(A){if(!this.allErrors)this.gen.if(A)}setParams(A,Q){if(Q)Object.assign(this.params,A);else this.params=A}block$data(A,Q,B=FQ.nil){this.gen.block(()=>{this.check$data(A,B),Q()})}check$data(A=FQ.nil,Q=FQ.nil){if(!this.$data)return;let{gen:B,schemaCode:Y,schemaType:J,def:C}=this;if(B.if((0,FQ.or)(FQ._`${Y} === undefined`,Q)),A!==FQ.nil)B.assign(A,!0);if(J.length||C.validateSchema){if(B.elseIf(this.invalid$data()),this.$dataError(),A!==FQ.nil)B.assign(A,!1)}B.else()}invalid$data(){let{gen:A,schemaCode:Q,schemaType:B,def:Y,it:J}=this;return(0,FQ.or)(C(),X());function C(){if(B.length){if(!(Q instanceof FQ.Name))throw Error("ajv implementation error");let G=Array.isArray(B)?B:[B];return FQ._`${(0,dR.checkDataTypes)(G,Q,J.opts.strictNumbers,dR.DataType.Wrong)}`}return FQ.nil}function X(){if(Y.validateSchema){let G=A.scopeValue("validate$data",{ref:Y.validateSchema});return FQ._`!${G}(${Q})`}return FQ.nil}}subschema(A,Q){let B=(0,nf.getSubschema)(this.it,A);(0,nf.extendSubschemaData)(B,this.it,A),(0,nf.extendSubschemaMode)(B,A);let Y={...this.it,...B,items:void 0,props:void 0};return f8B(Y,Q),Y}mergeEvaluated(A,Q){let{it:B,gen:Y}=this;if(!B.opts.unevaluated)return;if(B.props!==!0&&A.props!==void 0)B.props=yX.mergeEvaluated.props(Y,A.props,B.props,Q);if(B.items!==!0&&A.items!==void 0)B.items=yX.mergeEvaluated.items(Y,A.items,B.items,Q)}mergeValidEvaluated(A,Q){let{it:B,gen:Y}=this;if(B.opts.unevaluated&&(B.props!==!0||B.items!==!0))return Y.if(Q,()=>this.mergeEvaluated(A,FQ.Name)),!0}}v$A.KeywordCxt=af;function k$A(A,Q,B,Y){let J=new af(A,B,Q);if("code"in B)B.code(J,Y);else if(J.$data&&B.validate)(0,XD.funcKeywordCode)(J,B);else if("macro"in B)(0,XD.macroKeywordCode)(J,B);else if(B.compile||B.validate)(0,XD.funcKeywordCode)(J,B)}var t8B=/^\/(?:[^~]|~0|~1)*$/,e8B=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function _$A(A,{dataLevel:Q,dataNames:B,dataPathArr:Y}){let J,C;if(A==="")return yQ.default.rootData;if(A[0]==="/"){if(!t8B.test(A))throw Error(`Invalid JSON-pointer: ${A}`);J=A,C=yQ.default.rootData}else{let W=e8B.exec(A);if(!W)throw Error(`Invalid JSON-pointer: ${A}`);let Z=+W[1];if(J=W[2],J==="#"){if(Z>=Q)throw Error(F("property/index",Z));return Y[Q-Z]}if(Z>Q)throw Error(F("data",Z));if(C=B[Q-Z],!J)return C}let X=C,G=J.split("/");for(let W of G)if(W)C=FQ._`${C}${(0,FQ.getProperty)((0,yX.unescapeJsonPointer)(W))}`,X=FQ._`${X} && ${C}`;return X;function F(W,Z){return`Cannot access ${W} ${Z} levels up, current level is ${Q}`}}v$A.getData=_$A});var cR=R((g$A)=>{Object.defineProperty(g$A,"__esModule",{value:!0});class h$A extends Error{constructor(A){super("validation failed");this.errors=A,this.ajv=this.validation=!0}}g$A.default=h$A});var FD=R((f$A)=>{Object.defineProperty(f$A,"__esModule",{value:!0});var of=JD();class x$A extends Error{constructor(A,Q,B,Y){super(Y||`can't resolve reference ${B} from id ${Q}`);this.missingRef=(0,of.resolveUrl)(A,Q,B),this.missingSchema=(0,of.normalizeId)((0,of.getFullPath)(A,this.missingRef))}}f$A.default=x$A});var pR=R((u$A)=>{Object.defineProperty(u$A,"__esModule",{value:!0});u$A.resolveSchema=u$A.getCompilingSchema=u$A.resolveRef=u$A.compileSchema=u$A.SchemaEnv=void 0;var hC=GB(),J5B=cR(),GZ=vX(),gC=JD(),b$A=wB(),C5B=GD();class WD{constructor(A){var Q;this.refs={},this.dynamicAnchors={};let B;if(typeof A.schema=="object")B=A.schema;this.schema=A.schema,this.schemaId=A.schemaId,this.root=A.root||this,this.baseId=(Q=A.baseId)!==null&&Q!==void 0?Q:(0,gC.normalizeId)(B===null||B===void 0?void 0:B[A.schemaId||"$id"]),this.schemaPath=A.schemaPath,this.localRefs=A.localRefs,this.meta=A.meta,this.$async=B===null||B===void 0?void 0:B.$async,this.refs={}}}u$A.SchemaEnv=WD;function ef(A){let Q=m$A.call(this,A);if(Q)return Q;let B=(0,gC.getFullPath)(this.opts.uriResolver,A.root.baseId),{es5:Y,lines:J}=this.opts.code,{ownProperties:C}=this.opts,X=new hC.CodeGen(this.scope,{es5:Y,lines:J,ownProperties:C}),G;if(A.$async)G=X.scopeValue("Error",{ref:J5B.default,code:hC._`require("ajv/dist/runtime/validation_error").default`});let F=X.scopeName("validate");A.validateName=F;let W={gen:X,allErrors:this.opts.allErrors,data:GZ.default.data,parentData:GZ.default.parentData,parentDataProperty:GZ.default.parentDataProperty,dataNames:[GZ.default.data],dataPathArr:[hC.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:X.scopeValue("schema",this.opts.code.source===!0?{ref:A.schema,code:(0,hC.stringify)(A.schema)}:{ref:A.schema}),validateName:F,ValidationError:G,schema:A.schema,schemaEnv:A,rootId:B,baseId:A.baseId||B,schemaPath:hC.nil,errSchemaPath:A.schemaPath||(this.opts.jtd?"":"#"),errorPath:hC._`""`,opts:this.opts,self:this},Z;try{this._compilations.add(A),(0,C5B.validateFunctionCode)(W),X.optimize(this.opts.code.optimize);let U=X.toString();if(Z=`${X.scopeRefs(GZ.default.scope)}return ${U}`,this.opts.code.process)Z=this.opts.code.process(Z,A);let E=Function(`${GZ.default.self}`,`${GZ.default.scope}`,Z)(this,this.scope.get());if(this.scope.value(F,{ref:E}),E.errors=null,E.schema=A.schema,E.schemaEnv=A,A.$async)E.$async=!0;if(this.opts.code.source===!0)E.source={validateName:F,validateCode:U,scopeValues:X._values};if(this.opts.unevaluated){let{props:K,items:I}=W;if(E.evaluated={props:K instanceof hC.Name?void 0:K,items:I instanceof hC.Name?void 0:I,dynamicProps:K instanceof hC.Name,dynamicItems:I instanceof hC.Name},E.source)E.source.evaluated=(0,hC.stringify)(E.evaluated)}return A.validate=E,A}catch(U){if(delete A.validate,delete A.validateName,Z)this.logger.error("Error compiling schema, function code:",Z);throw U}finally{this._compilations.delete(A)}}u$A.compileSchema=ef;function X5B(A,Q,B){var Y;B=(0,gC.resolveUrl)(this.opts.uriResolver,Q,B);let J=A.refs[B];if(J)return J;let C=W5B.call(this,A,B);if(C===void 0){let X=(Y=A.localRefs)===null||Y===void 0?void 0:Y[B],{schemaId:G}=this.opts;if(X)C=new WD({schema:X,schemaId:G,root:A,baseId:Q})}if(C===void 0)return;return A.refs[B]=G5B.call(this,C)}u$A.resolveRef=X5B;function G5B(A){if((0,gC.inlineRef)(A.schema,this.opts.inlineRefs))return A.schema;return A.validate?A:ef.call(this,A)}function m$A(A){for(let Q of this._compilations)if(F5B(Q,A))return Q}u$A.getCompilingSchema=m$A;function F5B(A,Q){return A.schema===Q.schema&&A.root===Q.root&&A.baseId===Q.baseId}function W5B(A,Q){let B;while(typeof(B=this.refs[Q])=="string")Q=B;return B||this.schemas[Q]||lR.call(this,A,Q)}function lR(A,Q){let B=this.opts.uriResolver.parse(Q),Y=(0,gC._getFullPath)(this.opts.uriResolver,B),J=(0,gC.getFullPath)(this.opts.uriResolver,A.baseId,void 0);if(Object.keys(A.schema).length>0&&Y===J)return tf.call(this,B,A);let C=(0,gC.normalizeId)(Y),X=this.refs[C]||this.schemas[C];if(typeof X=="string"){let G=lR.call(this,A,X);if(typeof(G===null||G===void 0?void 0:G.schema)!=="object")return;return tf.call(this,B,G)}if(typeof(X===null||X===void 0?void 0:X.schema)!=="object")return;if(!X.validate)ef.call(this,X);if(C===(0,gC.normalizeId)(Q)){let{schema:G}=X,{schemaId:F}=this.opts,W=G[F];if(W)J=(0,gC.resolveUrl)(this.opts.uriResolver,J,W);return new WD({schema:G,schemaId:F,root:A,baseId:J})}return tf.call(this,B,X)}u$A.resolveSchema=lR;var Z5B=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function tf(A,{baseId:Q,schema:B,root:Y}){var J;if(((J=A.fragment)===null||J===void 0?void 0:J[0])!=="/")return;for(let G of A.fragment.slice(1).split("/")){if(typeof B==="boolean")return;let F=B[(0,b$A.unescapeFragment)(G)];if(F===void 0)return;B=F;let W=typeof B==="object"&&B[this.opts.schemaId];if(!Z5B.has(G)&&W)Q=(0,gC.resolveUrl)(this.opts.uriResolver,Q,W)}let C;if(typeof B!="boolean"&&B.$ref&&!(0,b$A.schemaHasRulesButRef)(B,this.RULES)){let G=(0,gC.resolveUrl)(this.opts.uriResolver,Q,B.$ref);C=lR.call(this,Y,G)}let{schemaId:X}=this.opts;if(C=C||new WD({schema:B,schemaId:X,root:Y,baseId:Q}),C.schema!==C.root.schema)return C;return}});var c$A=R((C4Y,V5B)=>{V5B.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var p$A=R((X4Y,l$A)=>{var I5B={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,a:10,A:10,b:11,B:11,c:12,C:12,d:13,D:13,e:14,E:14,f:15,F:15};l$A.exports={HEX:I5B}});var e$A=R((G4Y,t$A)=>{var{HEX:H5B}=p$A(),D5B=/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u;function r$A(A){if(o$A(A,".")<3)return{host:A,isIPV4:!1};let Q=A.match(D5B)||[],[B]=Q;if(B)return{host:L5B(B,"."),isIPV4:!0};else return{host:A,isIPV4:!1}}function Ab(A,Q=!1){let B="",Y=!0;for(let J of A){if(H5B[J]===void 0)return;if(J!=="0"&&Y===!0)Y=!1;if(!Y)B+=J}if(Q&&B.length===0)B="0";return B}function N5B(A){let Q=0,B={error:!1,address:"",zone:""},Y=[],J=[],C=!1,X=!1,G=!1;function F(){if(J.length){if(C===!1){let W=Ab(J);if(W!==void 0)Y.push(W);else return B.error=!0,!1}J.length=0}return!0}for(let W=0;W7){B.error=!0;break}if(W-1>=0&&A[W-1]===":")X=!0;continue}else if(Z==="%"){if(!F())break;C=!0}else{J.push(Z);continue}}if(J.length)if(C)B.zone=J.join("");else if(G)Y.push(J.join(""));else Y.push(Ab(J));return B.address=Y.join(""),B}function a$A(A){if(o$A(A,":")<2)return{host:A,isIPV6:!1};let Q=N5B(A);if(!Q.error){let{address:B,address:Y}=Q;if(Q.zone)B+="%"+Q.zone,Y+="%25"+Q.zone;return{host:B,escapedHost:Y,isIPV6:!0}}else return{host:A,isIPV6:!1}}function L5B(A,Q){let B="",Y=!0,J=A.length;for(let C=0;C{var w5B=/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu,j5B=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu;function A4A(A){return typeof A.secure==="boolean"?A.secure:String(A.scheme).toLowerCase()==="wss"}function Q4A(A){if(!A.host)A.error=A.error||"HTTP URIs must have a host.";return A}function B4A(A){let Q=String(A.scheme).toLowerCase()==="https";if(A.port===(Q?443:80)||A.port==="")A.port=void 0;if(!A.path)A.path="/";return A}function O5B(A){return A.secure=A4A(A),A.resourceName=(A.path||"/")+(A.query?"?"+A.query:""),A.path=void 0,A.query=void 0,A}function P5B(A){if(A.port===(A4A(A)?443:80)||A.port==="")A.port=void 0;if(typeof A.secure==="boolean")A.scheme=A.secure?"wss":"ws",A.secure=void 0;if(A.resourceName){let[Q,B]=A.resourceName.split("?");A.path=Q&&Q!=="/"?Q:void 0,A.query=B,A.resourceName=void 0}return A.fragment=void 0,A}function T5B(A,Q){if(!A.path)return A.error="URN can not be parsed",A;let B=A.path.match(j5B);if(B){let Y=Q.scheme||A.scheme||"urn";A.nid=B[1].toLowerCase(),A.nss=B[2];let J=`${Y}:${Q.nid||A.nid}`,C=Qb[J];if(A.path=void 0,C)A=C.parse(A,Q)}else A.error=A.error||"URN can not be parsed.";return A}function S5B(A,Q){let B=Q.scheme||A.scheme||"urn",Y=A.nid.toLowerCase(),J=`${B}:${Q.nid||Y}`,C=Qb[J];if(C)A=C.serialize(A,Q);let X=A,G=A.nss;return X.path=`${Y||Q.nid}:${G}`,Q.skipEscape=!0,X}function k5B(A,Q){let B=A;if(B.uuid=B.nss,B.nss=void 0,!Q.tolerant&&(!B.uuid||!w5B.test(B.uuid)))B.error=B.error||"UUID is not valid.";return B}function _5B(A){let Q=A;return Q.nss=(A.uuid||"").toLowerCase(),Q}var Y4A={scheme:"http",domainHost:!0,parse:Q4A,serialize:B4A},v5B={scheme:"https",domainHost:Y4A.domainHost,parse:Q4A,serialize:B4A},iR={scheme:"ws",domainHost:!0,parse:O5B,serialize:P5B},y5B={scheme:"wss",domainHost:iR.domainHost,parse:iR.parse,serialize:iR.serialize},h5B={scheme:"urn",parse:T5B,serialize:S5B,skipNormalize:!0},g5B={scheme:"urn:uuid",parse:k5B,serialize:_5B,skipNormalize:!0},Qb={http:Y4A,https:v5B,ws:iR,wss:y5B,urn:h5B,"urn:uuid":g5B};J4A.exports=Qb});var G4A=R((W4Y,sR)=>{var{normalizeIPv6:x5B,normalizeIPv4:f5B,removeDotSegments:ZD,recomposeAuthority:b5B,normalizeComponentEncoding:nR}=e$A(),Bb=C4A();function m5B(A,Q){if(typeof A==="string")A=p1(hX(A,Q),Q);else if(typeof A==="object")A=hX(p1(A,Q),Q);return A}function u5B(A,Q,B){let Y=Object.assign({scheme:"null"},B),J=X4A(hX(A,Y),hX(Q,Y),Y,!0);return p1(J,{...Y,skipEscape:!0})}function X4A(A,Q,B,Y){let J={};if(!Y)A=hX(p1(A,B),B),Q=hX(p1(Q,B),B);if(B=B||{},!B.tolerant&&Q.scheme)J.scheme=Q.scheme,J.userinfo=Q.userinfo,J.host=Q.host,J.port=Q.port,J.path=ZD(Q.path||""),J.query=Q.query;else{if(Q.userinfo!==void 0||Q.host!==void 0||Q.port!==void 0)J.userinfo=Q.userinfo,J.host=Q.host,J.port=Q.port,J.path=ZD(Q.path||""),J.query=Q.query;else{if(!Q.path)if(J.path=A.path,Q.query!==void 0)J.query=Q.query;else J.query=A.query;else{if(Q.path.charAt(0)==="/")J.path=ZD(Q.path);else{if((A.userinfo!==void 0||A.host!==void 0||A.port!==void 0)&&!A.path)J.path="/"+Q.path;else if(!A.path)J.path=Q.path;else J.path=A.path.slice(0,A.path.lastIndexOf("/")+1)+Q.path;J.path=ZD(J.path)}J.query=Q.query}J.userinfo=A.userinfo,J.host=A.host,J.port=A.port}J.scheme=A.scheme}return J.fragment=Q.fragment,J}function d5B(A,Q,B){if(typeof A==="string")A=unescape(A),A=p1(nR(hX(A,B),!0),{...B,skipEscape:!0});else if(typeof A==="object")A=p1(nR(A,!0),{...B,skipEscape:!0});if(typeof Q==="string")Q=unescape(Q),Q=p1(nR(hX(Q,B),!0),{...B,skipEscape:!0});else if(typeof Q==="object")Q=p1(nR(Q,!0),{...B,skipEscape:!0});return A.toLowerCase()===Q.toLowerCase()}function p1(A,Q){let B={host:A.host,scheme:A.scheme,userinfo:A.userinfo,port:A.port,path:A.path,query:A.query,nid:A.nid,nss:A.nss,uuid:A.uuid,fragment:A.fragment,reference:A.reference,resourceName:A.resourceName,secure:A.secure,error:""},Y=Object.assign({},Q),J=[],C=Bb[(Y.scheme||B.scheme||"").toLowerCase()];if(C&&C.serialize)C.serialize(B,Y);if(B.path!==void 0)if(!Y.skipEscape){if(B.path=escape(B.path),B.scheme!==void 0)B.path=B.path.split("%3A").join(":")}else B.path=unescape(B.path);if(Y.reference!=="suffix"&&B.scheme)J.push(B.scheme,":");let X=b5B(B);if(X!==void 0){if(Y.reference!=="suffix")J.push("//");if(J.push(X),B.path&&B.path.charAt(0)!=="/")J.push("/")}if(B.path!==void 0){let G=B.path;if(!Y.absolutePath&&(!C||!C.absolutePath))G=ZD(G);if(X===void 0)G=G.replace(/^\/\//u,"/%2F");J.push(G)}if(B.query!==void 0)J.push("?",B.query);if(B.fragment!==void 0)J.push("#",B.fragment);return J.join("")}var c5B=Array.from({length:127},(A,Q)=>/[^!"$&'()*+,\-.;=_`a-z{}~]/u.test(String.fromCharCode(Q)));function l5B(A){let Q=0;for(let B=0,Y=A.length;B126||c5B[Q])return!0;return!1}var p5B=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function hX(A,Q){let B=Object.assign({},Q),Y={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},J=A.indexOf("%")!==-1,C=!1;if(B.reference==="suffix")A=(B.scheme?B.scheme+":":"")+"//"+A;let X=A.match(p5B);if(X){if(Y.scheme=X[1],Y.userinfo=X[3],Y.host=X[4],Y.port=parseInt(X[5],10),Y.path=X[6]||"",Y.query=X[7],Y.fragment=X[8],isNaN(Y.port))Y.port=X[5];if(Y.host){let F=f5B(Y.host);if(F.isIPV4===!1){let W=x5B(F.host);Y.host=W.host.toLowerCase(),C=W.isIPV6}else Y.host=F.host,C=!0}if(Y.scheme===void 0&&Y.userinfo===void 0&&Y.host===void 0&&Y.port===void 0&&Y.query===void 0&&!Y.path)Y.reference="same-document";else if(Y.scheme===void 0)Y.reference="relative";else if(Y.fragment===void 0)Y.reference="absolute";else Y.reference="uri";if(B.reference&&B.reference!=="suffix"&&B.reference!==Y.reference)Y.error=Y.error||"URI is not a "+B.reference+" reference.";let G=Bb[(B.scheme||Y.scheme||"").toLowerCase()];if(!B.unicodeSupport&&(!G||!G.unicodeSupport)){if(Y.host&&(B.domainHost||G&&G.domainHost)&&C===!1&&l5B(Y.host))try{Y.host=URL.domainToASCII(Y.host.toLowerCase())}catch(F){Y.error=Y.error||"Host's domain name can not be converted to ASCII: "+F}}if(!G||G&&!G.skipNormalize){if(J&&Y.scheme!==void 0)Y.scheme=unescape(Y.scheme);if(J&&Y.host!==void 0)Y.host=unescape(Y.host);if(Y.path)Y.path=escape(unescape(Y.path));if(Y.fragment)Y.fragment=encodeURI(decodeURIComponent(Y.fragment))}if(G&&G.parse)G.parse(Y,B)}else Y.error=Y.error||"URI can not be parsed.";return Y}var Yb={SCHEMES:Bb,normalize:m5B,resolve:u5B,resolveComponents:X4A,equal:d5B,serialize:p1,parse:hX};sR.exports=Yb;sR.exports.default=Yb;sR.exports.fastUri=Yb});var Z4A=R((W4A)=>{Object.defineProperty(W4A,"__esModule",{value:!0});var F4A=G4A();F4A.code='require("ajv/dist/runtime/uri").default';W4A.default=F4A});var D4A=R((gX)=>{Object.defineProperty(gX,"__esModule",{value:!0});gX.CodeGen=gX.Name=gX.nil=gX.stringify=gX.str=gX._=gX.KeywordCxt=void 0;var n5B=GD();Object.defineProperty(gX,"KeywordCxt",{enumerable:!0,get:function(){return n5B.KeywordCxt}});var GE=GB();Object.defineProperty(gX,"_",{enumerable:!0,get:function(){return GE._}});Object.defineProperty(gX,"str",{enumerable:!0,get:function(){return GE.str}});Object.defineProperty(gX,"stringify",{enumerable:!0,get:function(){return GE.stringify}});Object.defineProperty(gX,"nil",{enumerable:!0,get:function(){return GE.nil}});Object.defineProperty(gX,"Name",{enumerable:!0,get:function(){return GE.Name}});Object.defineProperty(gX,"CodeGen",{enumerable:!0,get:function(){return GE.CodeGen}});var s5B=cR(),V4A=FD(),r5B=gf(),$D=pR(),a5B=GB(),UD=JD(),rR=YD(),Cb=wB(),$4A=c$A(),o5B=Z4A(),I4A=(A,Q)=>new RegExp(A,Q);I4A.code="new RegExp";var t5B=["removeAdditional","useDefaults","coerceTypes"],e5B=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),ACB={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},QCB={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},U4A=200;function BCB(A){var Q,B,Y,J,C,X,G,F,W,Z,U,$,E,K,I,V,H,D,L,z,M,N,q,w,P;let _=A.strict,O=(Q=A.code)===null||Q===void 0?void 0:Q.optimize,k=O===!0||O===void 0?1:O||0,T=(Y=(B=A.code)===null||B===void 0?void 0:B.regExp)!==null&&Y!==void 0?Y:I4A,S=(J=A.uriResolver)!==null&&J!==void 0?J:o5B.default;return{strictSchema:(X=(C=A.strictSchema)!==null&&C!==void 0?C:_)!==null&&X!==void 0?X:!0,strictNumbers:(F=(G=A.strictNumbers)!==null&&G!==void 0?G:_)!==null&&F!==void 0?F:!0,strictTypes:(Z=(W=A.strictTypes)!==null&&W!==void 0?W:_)!==null&&Z!==void 0?Z:"log",strictTuples:($=(U=A.strictTuples)!==null&&U!==void 0?U:_)!==null&&$!==void 0?$:"log",strictRequired:(K=(E=A.strictRequired)!==null&&E!==void 0?E:_)!==null&&K!==void 0?K:!1,code:A.code?{...A.code,optimize:k,regExp:T}:{optimize:k,regExp:T},loopRequired:(I=A.loopRequired)!==null&&I!==void 0?I:U4A,loopEnum:(V=A.loopEnum)!==null&&V!==void 0?V:U4A,meta:(H=A.meta)!==null&&H!==void 0?H:!0,messages:(D=A.messages)!==null&&D!==void 0?D:!0,inlineRefs:(L=A.inlineRefs)!==null&&L!==void 0?L:!0,schemaId:(z=A.schemaId)!==null&&z!==void 0?z:"$id",addUsedSchema:(M=A.addUsedSchema)!==null&&M!==void 0?M:!0,validateSchema:(N=A.validateSchema)!==null&&N!==void 0?N:!0,validateFormats:(q=A.validateFormats)!==null&&q!==void 0?q:!0,unicodeRegExp:(w=A.unicodeRegExp)!==null&&w!==void 0?w:!0,int32range:(P=A.int32range)!==null&&P!==void 0?P:!0,uriResolver:S}}class aR{constructor(A={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,A=this.opts={...A,...BCB(A)};let{es5:Q,lines:B}=this.opts.code;this.scope=new a5B.ValueScope({scope:{},prefixes:e5B,es5:Q,lines:B}),this.logger=FCB(A.logger);let Y=A.validateFormats;if(A.validateFormats=!1,this.RULES=(0,r5B.getRules)(),E4A.call(this,ACB,A,"NOT SUPPORTED"),E4A.call(this,QCB,A,"DEPRECATED","warn"),this._metaOpts=XCB.call(this),A.formats)JCB.call(this);if(this._addVocabularies(),this._addDefaultMetaSchema(),A.keywords)CCB.call(this,A.keywords);if(typeof A.meta=="object")this.addMetaSchema(A.meta);YCB.call(this),A.validateFormats=Y}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:A,meta:Q,schemaId:B}=this.opts,Y=$4A;if(B==="id")Y={...$4A},Y.id=Y.$id,delete Y.$id;if(Q&&A)this.addMetaSchema(Y,Y[B],!1)}defaultMeta(){let{meta:A,schemaId:Q}=this.opts;return this.opts.defaultMeta=typeof A=="object"?A[Q]||A:void 0}validate(A,Q){let B;if(typeof A=="string"){if(B=this.getSchema(A),!B)throw Error(`no schema with key or ref "${A}"`)}else B=this.compile(A);let Y=B(Q);if(!("$async"in B))this.errors=B.errors;return Y}compile(A,Q){let B=this._addSchema(A,Q);return B.validate||this._compileSchemaEnv(B)}compileAsync(A,Q){if(typeof this.opts.loadSchema!="function")throw Error("options.loadSchema should be a function");let{loadSchema:B}=this.opts;return Y.call(this,A,Q);async function Y(W,Z){await J.call(this,W.$schema);let U=this._addSchema(W,Z);return U.validate||C.call(this,U)}async function J(W){if(W&&!this.getSchema(W))await Y.call(this,{$ref:W},!0)}async function C(W){try{return this._compileSchemaEnv(W)}catch(Z){if(!(Z instanceof V4A.default))throw Z;return X.call(this,Z),await G.call(this,Z.missingSchema),C.call(this,W)}}function X({missingSchema:W,missingRef:Z}){if(this.refs[W])throw Error(`AnySchema ${W} is loaded but ${Z} cannot be resolved`)}async function G(W){let Z=await F.call(this,W);if(!this.refs[W])await J.call(this,Z.$schema);if(!this.refs[W])this.addSchema(Z,W,Q)}async function F(W){let Z=this._loading[W];if(Z)return Z;try{return await(this._loading[W]=B(W))}finally{delete this._loading[W]}}}addSchema(A,Q,B,Y=this.opts.validateSchema){if(Array.isArray(A)){for(let C of A)this.addSchema(C,void 0,B,Y);return this}let J;if(typeof A==="object"){let{schemaId:C}=this.opts;if(J=A[C],J!==void 0&&typeof J!="string")throw Error(`schema ${C} must be string`)}return Q=(0,UD.normalizeId)(Q||J),this._checkUnique(Q),this.schemas[Q]=this._addSchema(A,B,Q,Y,!0),this}addMetaSchema(A,Q,B=this.opts.validateSchema){return this.addSchema(A,Q,!0,B),this}validateSchema(A,Q){if(typeof A=="boolean")return!0;let B;if(B=A.$schema,B!==void 0&&typeof B!="string")throw Error("$schema must be a string");if(B=B||this.opts.defaultMeta||this.defaultMeta(),!B)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let Y=this.validate(B,A);if(!Y&&Q){let J="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(J);else throw Error(J)}return Y}getSchema(A){let Q;while(typeof(Q=K4A.call(this,A))=="string")A=Q;if(Q===void 0){let{schemaId:B}=this.opts,Y=new $D.SchemaEnv({schema:{},schemaId:B});if(Q=$D.resolveSchema.call(this,Y,A),!Q)return;this.refs[A]=Q}return Q.validate||this._compileSchemaEnv(Q)}removeSchema(A){if(A instanceof RegExp)return this._removeAllSchemas(this.schemas,A),this._removeAllSchemas(this.refs,A),this;switch(typeof A){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let Q=K4A.call(this,A);if(typeof Q=="object")this._cache.delete(Q.schema);return delete this.schemas[A],delete this.refs[A],this}case"object":{let Q=A;this._cache.delete(Q);let B=A[this.opts.schemaId];if(B)B=(0,UD.normalizeId)(B),delete this.schemas[B],delete this.refs[B];return this}default:throw Error("ajv.removeSchema: invalid parameter")}}addVocabulary(A){for(let Q of A)this.addKeyword(Q);return this}addKeyword(A,Q){let B;if(typeof A=="string"){if(B=A,typeof Q=="object")this.logger.warn("these parameters are deprecated, see docs for addKeyword"),Q.keyword=B}else if(typeof A=="object"&&Q===void 0){if(Q=A,B=Q.keyword,Array.isArray(B)&&!B.length)throw Error("addKeywords: keyword must be string or non-empty array")}else throw Error("invalid addKeywords parameters");if(ZCB.call(this,B,Q),!Q)return(0,Cb.eachItem)(B,(J)=>Jb.call(this,J)),this;UCB.call(this,Q);let Y={...Q,type:(0,rR.getJSONTypes)(Q.type),schemaType:(0,rR.getJSONTypes)(Q.schemaType)};return(0,Cb.eachItem)(B,Y.type.length===0?(J)=>Jb.call(this,J,Y):(J)=>Y.type.forEach((C)=>Jb.call(this,J,Y,C))),this}getKeyword(A){let Q=this.RULES.all[A];return typeof Q=="object"?Q.definition:!!Q}removeKeyword(A){let{RULES:Q}=this;delete Q.keywords[A],delete Q.all[A];for(let B of Q.rules){let Y=B.rules.findIndex((J)=>J.keyword===A);if(Y>=0)B.rules.splice(Y,1)}return this}addFormat(A,Q){if(typeof Q=="string")Q=new RegExp(Q);return this.formats[A]=Q,this}errorsText(A=this.errors,{separator:Q=", ",dataVar:B="data"}={}){if(!A||A.length===0)return"No errors";return A.map((Y)=>`${B}${Y.instancePath} ${Y.message}`).reduce((Y,J)=>Y+Q+J)}$dataMetaSchema(A,Q){let B=this.RULES.all;A=JSON.parse(JSON.stringify(A));for(let Y of Q){let J=Y.split("/").slice(1),C=A;for(let X of J)C=C[X];for(let X in B){let G=B[X];if(typeof G!="object")continue;let{$data:F}=G.definition,W=C[X];if(F&&W)C[X]=H4A(W)}}return A}_removeAllSchemas(A,Q){for(let B in A){let Y=A[B];if(!Q||Q.test(B)){if(typeof Y=="string")delete A[B];else if(Y&&!Y.meta)this._cache.delete(Y.schema),delete A[B]}}}_addSchema(A,Q,B,Y=this.opts.validateSchema,J=this.opts.addUsedSchema){let C,{schemaId:X}=this.opts;if(typeof A=="object")C=A[X];else if(this.opts.jtd)throw Error("schema must be object");else if(typeof A!="boolean")throw Error("schema must be object or boolean");let G=this._cache.get(A);if(G!==void 0)return G;B=(0,UD.normalizeId)(C||B);let F=UD.getSchemaRefs.call(this,A,B);if(G=new $D.SchemaEnv({schema:A,schemaId:X,meta:Q,baseId:B,localRefs:F}),this._cache.set(G.schema,G),J&&!B.startsWith("#")){if(B)this._checkUnique(B);this.refs[B]=G}if(Y)this.validateSchema(A,!0);return G}_checkUnique(A){if(this.schemas[A]||this.refs[A])throw Error(`schema with key or id "${A}" already exists`)}_compileSchemaEnv(A){if(A.meta)this._compileMetaSchema(A);else $D.compileSchema.call(this,A);if(!A.validate)throw Error("ajv implementation error");return A.validate}_compileMetaSchema(A){let Q=this.opts;this.opts=this._metaOpts;try{$D.compileSchema.call(this,A)}finally{this.opts=Q}}}aR.ValidationError=s5B.default;aR.MissingRefError=V4A.default;gX.default=aR;function E4A(A,Q,B,Y="error"){for(let J in A){let C=J;if(C in Q)this.logger[Y](`${B}: option ${J}. ${A[C]}`)}}function K4A(A){return A=(0,UD.normalizeId)(A),this.schemas[A]||this.refs[A]}function YCB(){let A=this.opts.schemas;if(!A)return;if(Array.isArray(A))this.addSchema(A);else for(let Q in A)this.addSchema(A[Q],Q)}function JCB(){for(let A in this.opts.formats){let Q=this.opts.formats[A];if(Q)this.addFormat(A,Q)}}function CCB(A){if(Array.isArray(A)){this.addVocabulary(A);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let Q in A){let B=A[Q];if(!B.keyword)B.keyword=Q;this.addKeyword(B)}}function XCB(){let A={...this.opts};for(let Q of t5B)delete A[Q];return A}var GCB={log(){},warn(){},error(){}};function FCB(A){if(A===!1)return GCB;if(A===void 0)return console;if(A.log&&A.warn&&A.error)return A;throw Error("logger must implement log, warn and error methods")}var WCB=/^[a-z_$][a-z0-9_$:-]*$/i;function ZCB(A,Q){let{RULES:B}=this;if((0,Cb.eachItem)(A,(Y)=>{if(B.keywords[Y])throw Error(`Keyword ${Y} is already defined`);if(!WCB.test(Y))throw Error(`Keyword ${Y} has invalid name`)}),!Q)return;if(Q.$data&&!(("code"in Q)||("validate"in Q)))throw Error('$data keyword must have "code" or "validate" function')}function Jb(A,Q,B){var Y;let J=Q===null||Q===void 0?void 0:Q.post;if(B&&J)throw Error('keyword with "post" flag cannot have "type"');let{RULES:C}=this,X=J?C.post:C.rules.find(({type:F})=>F===B);if(!X)X={type:B,rules:[]},C.rules.push(X);if(C.keywords[A]=!0,!Q)return;let G={keyword:A,definition:{...Q,type:(0,rR.getJSONTypes)(Q.type),schemaType:(0,rR.getJSONTypes)(Q.schemaType)}};if(Q.before)$CB.call(this,X,G,Q.before);else X.rules.push(G);C.all[A]=G,(Y=Q.implements)===null||Y===void 0||Y.forEach((F)=>this.addKeyword(F))}function $CB(A,Q,B){let Y=A.rules.findIndex((J)=>J.keyword===B);if(Y>=0)A.rules.splice(Y,0,Q);else A.rules.push(Q),this.logger.warn(`rule ${B} is not defined`)}function UCB(A){let{metaSchema:Q}=A;if(Q===void 0)return;if(A.$data&&this.opts.$data)Q=H4A(Q);A.validateSchema=this.compile(Q,!0)}var ECB={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function H4A(A){return{anyOf:[A,ECB]}}});var L4A=R((N4A)=>{Object.defineProperty(N4A,"__esModule",{value:!0});var ICB={keyword:"id",code(){throw Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};N4A.default=ICB});var j4A=R((R4A)=>{Object.defineProperty(R4A,"__esModule",{value:!0});R4A.callRef=R4A.getValidate=void 0;var DCB=FD(),q4A=I5(),v9=GB(),FE=vX(),M4A=pR(),oR=wB(),NCB={keyword:"$ref",schemaType:"string",code(A){let{gen:Q,schema:B,it:Y}=A,{baseId:J,schemaEnv:C,validateName:X,opts:G,self:F}=Y,{root:W}=C;if((B==="#"||B==="#/")&&J===W.baseId)return U();let Z=M4A.resolveRef.call(F,W,J,B);if(Z===void 0)throw new DCB.default(Y.opts.uriResolver,J,B);if(Z instanceof M4A.SchemaEnv)return $(Z);return E(Z);function U(){if(C===W)return tR(A,X,C,C.$async);let K=Q.scopeValue("root",{ref:W});return tR(A,v9._`${K}.validate`,W,W.$async)}function $(K){let I=z4A(A,K);tR(A,I,K,K.$async)}function E(K){let I=Q.scopeValue("schema",G.code.source===!0?{ref:K,code:(0,v9.stringify)(K)}:{ref:K}),V=Q.name("valid"),H=A.subschema({schema:K,dataTypes:[],schemaPath:v9.nil,topSchemaRef:I,errSchemaPath:B},V);A.mergeEvaluated(H),A.ok(V)}}};function z4A(A,Q){let{gen:B}=A;return Q.validate?B.scopeValue("validate",{ref:Q.validate}):v9._`${B.scopeValue("wrapper",{ref:Q})}.validate`}R4A.getValidate=z4A;function tR(A,Q,B,Y){let{gen:J,it:C}=A,{allErrors:X,schemaEnv:G,opts:F}=C,W=F.passContext?FE.default.this:v9.nil;if(Y)Z();else U();function Z(){if(!G.$async)throw Error("async schema referenced by sync schema");let K=J.let("valid");J.try(()=>{if(J.code(v9._`await ${(0,q4A.callValidateCode)(A,Q,W)}`),E(Q),!X)J.assign(K,!0)},(I)=>{if(J.if(v9._`!(${I} instanceof ${C.ValidationError})`,()=>J.throw(I)),$(I),!X)J.assign(K,!1)}),A.ok(K)}function U(){A.result((0,q4A.callValidateCode)(A,Q,W),()=>E(Q),()=>$(Q))}function $(K){let I=v9._`${K}.errors`;J.assign(FE.default.vErrors,v9._`${FE.default.vErrors} === null ? ${I} : ${FE.default.vErrors}.concat(${I})`),J.assign(FE.default.errors,v9._`${FE.default.vErrors}.length`)}function E(K){var I;if(!C.opts.unevaluated)return;let V=(I=B===null||B===void 0?void 0:B.validate)===null||I===void 0?void 0:I.evaluated;if(C.props!==!0)if(V&&!V.dynamicProps){if(V.props!==void 0)C.props=oR.mergeEvaluated.props(J,V.props,C.props)}else{let H=J.var("props",v9._`${K}.evaluated.props`);C.props=oR.mergeEvaluated.props(J,H,C.props,v9.Name)}if(C.items!==!0)if(V&&!V.dynamicItems){if(V.items!==void 0)C.items=oR.mergeEvaluated.items(J,V.items,C.items)}else{let H=J.var("items",v9._`${K}.evaluated.items`);C.items=oR.mergeEvaluated.items(J,H,C.items,v9.Name)}}}R4A.callRef=tR;R4A.default=NCB});var P4A=R((O4A)=>{Object.defineProperty(O4A,"__esModule",{value:!0});var MCB=L4A(),zCB=j4A(),RCB=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",MCB.default,zCB.default];O4A.default=RCB});var S4A=R((T4A)=>{Object.defineProperty(T4A,"__esModule",{value:!0});var eR=GB(),y7=eR.operators,Aw={maximum:{okStr:"<=",ok:y7.LTE,fail:y7.GT},minimum:{okStr:">=",ok:y7.GTE,fail:y7.LT},exclusiveMaximum:{okStr:"<",ok:y7.LT,fail:y7.GTE},exclusiveMinimum:{okStr:">",ok:y7.GT,fail:y7.LTE}},jCB={message:({keyword:A,schemaCode:Q})=>eR.str`must be ${Aw[A].okStr} ${Q}`,params:({keyword:A,schemaCode:Q})=>eR._`{comparison: ${Aw[A].okStr}, limit: ${Q}}`},OCB={keyword:Object.keys(Aw),type:"number",schemaType:"number",$data:!0,error:jCB,code(A){let{keyword:Q,data:B,schemaCode:Y}=A;A.fail$data(eR._`${B} ${Aw[Q].fail} ${Y} || isNaN(${B})`)}};T4A.default=OCB});var _4A=R((k4A)=>{Object.defineProperty(k4A,"__esModule",{value:!0});var ED=GB(),TCB={message:({schemaCode:A})=>ED.str`must be multiple of ${A}`,params:({schemaCode:A})=>ED._`{multipleOf: ${A}}`},SCB={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:TCB,code(A){let{gen:Q,data:B,schemaCode:Y,it:J}=A,C=J.opts.multipleOfPrecision,X=Q.let("res"),G=C?ED._`Math.abs(Math.round(${X}) - ${X}) > 1e-${C}`:ED._`${X} !== parseInt(${X})`;A.fail$data(ED._`(${Y} === 0 || (${X} = ${B}/${Y}, ${G}))`)}};k4A.default=SCB});var h4A=R((y4A)=>{Object.defineProperty(y4A,"__esModule",{value:!0});function v4A(A){let Q=A.length,B=0,Y=0,J;while(Y=55296&&J<=56319&&Y{Object.defineProperty(g4A,"__esModule",{value:!0});var FZ=GB(),vCB=wB(),yCB=h4A(),hCB={message({keyword:A,schemaCode:Q}){let B=A==="maxLength"?"more":"fewer";return FZ.str`must NOT have ${B} than ${Q} characters`},params:({schemaCode:A})=>FZ._`{limit: ${A}}`},gCB={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:hCB,code(A){let{keyword:Q,data:B,schemaCode:Y,it:J}=A,C=Q==="maxLength"?FZ.operators.GT:FZ.operators.LT,X=J.opts.unicode===!1?FZ._`${B}.length`:FZ._`${(0,vCB.useFunc)(A.gen,yCB.default)}(${B})`;A.fail$data(FZ._`${X} ${C} ${Y}`)}};g4A.default=gCB});var b4A=R((f4A)=>{Object.defineProperty(f4A,"__esModule",{value:!0});var fCB=I5(),Qw=GB(),bCB={message:({schemaCode:A})=>Qw.str`must match pattern "${A}"`,params:({schemaCode:A})=>Qw._`{pattern: ${A}}`},mCB={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:bCB,code(A){let{data:Q,$data:B,schema:Y,schemaCode:J,it:C}=A,X=C.opts.unicodeRegExp?"u":"",G=B?Qw._`(new RegExp(${J}, ${X}))`:(0,fCB.usePattern)(A,Y);A.fail$data(Qw._`!${G}.test(${Q})`)}};f4A.default=mCB});var u4A=R((m4A)=>{Object.defineProperty(m4A,"__esModule",{value:!0});var KD=GB(),dCB={message({keyword:A,schemaCode:Q}){let B=A==="maxProperties"?"more":"fewer";return KD.str`must NOT have ${B} than ${Q} properties`},params:({schemaCode:A})=>KD._`{limit: ${A}}`},cCB={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:dCB,code(A){let{keyword:Q,data:B,schemaCode:Y}=A,J=Q==="maxProperties"?KD.operators.GT:KD.operators.LT;A.fail$data(KD._`Object.keys(${B}).length ${J} ${Y}`)}};m4A.default=cCB});var c4A=R((d4A)=>{Object.defineProperty(d4A,"__esModule",{value:!0});var VD=I5(),ID=GB(),pCB=wB(),iCB={message:({params:{missingProperty:A}})=>ID.str`must have required property '${A}'`,params:({params:{missingProperty:A}})=>ID._`{missingProperty: ${A}}`},nCB={keyword:"required",type:"object",schemaType:"array",$data:!0,error:iCB,code(A){let{gen:Q,schema:B,schemaCode:Y,data:J,$data:C,it:X}=A,{opts:G}=X;if(!C&&B.length===0)return;let F=B.length>=G.loopRequired;if(X.allErrors)W();else Z();if(G.strictRequired){let E=A.parentSchema.properties,{definedProperties:K}=A.it;for(let I of B)if((E===null||E===void 0?void 0:E[I])===void 0&&!K.has(I)){let V=X.schemaEnv.baseId+X.errSchemaPath,H=`required property "${I}" is not defined at "${V}" (strictRequired)`;(0,pCB.checkStrictMode)(X,H,X.opts.strictRequired)}}function W(){if(F||C)A.block$data(ID.nil,U);else for(let E of B)(0,VD.checkReportMissingProp)(A,E)}function Z(){let E=Q.let("missing");if(F||C){let K=Q.let("valid",!0);A.block$data(K,()=>$(E,K)),A.ok(K)}else Q.if((0,VD.checkMissingProp)(A,B,E)),(0,VD.reportMissingProp)(A,E),Q.else()}function U(){Q.forOf("prop",Y,(E)=>{A.setParams({missingProperty:E}),Q.if((0,VD.noPropertyInData)(Q,J,E,G.ownProperties),()=>A.error())})}function $(E,K){A.setParams({missingProperty:E}),Q.forOf(E,Y,()=>{Q.assign(K,(0,VD.propertyInData)(Q,J,E,G.ownProperties)),Q.if((0,ID.not)(K),()=>{A.error(),Q.break()})},ID.nil)}}};d4A.default=nCB});var p4A=R((l4A)=>{Object.defineProperty(l4A,"__esModule",{value:!0});var HD=GB(),rCB={message({keyword:A,schemaCode:Q}){let B=A==="maxItems"?"more":"fewer";return HD.str`must NOT have ${B} than ${Q} items`},params:({schemaCode:A})=>HD._`{limit: ${A}}`},aCB={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:rCB,code(A){let{keyword:Q,data:B,schemaCode:Y}=A,J=Q==="maxItems"?HD.operators.GT:HD.operators.LT;A.fail$data(HD._`${B}.length ${J} ${Y}`)}};l4A.default=aCB});var Bw=R((n4A)=>{Object.defineProperty(n4A,"__esModule",{value:!0});var i4A=lf();i4A.code='require("ajv/dist/runtime/equal").default';n4A.default=i4A});var r4A=R((s4A)=>{Object.defineProperty(s4A,"__esModule",{value:!0});var Xb=YD(),CJ=GB(),eCB=wB(),A1B=Bw(),Q1B={message:({params:{i:A,j:Q}})=>CJ.str`must NOT have duplicate items (items ## ${Q} and ${A} are identical)`,params:({params:{i:A,j:Q}})=>CJ._`{i: ${A}, j: ${Q}}`},B1B={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:Q1B,code(A){let{gen:Q,data:B,$data:Y,schema:J,parentSchema:C,schemaCode:X,it:G}=A;if(!Y&&!J)return;let F=Q.let("valid"),W=C.items?(0,Xb.getSchemaTypes)(C.items):[];A.block$data(F,Z,CJ._`${X} === false`),A.ok(F);function Z(){let K=Q.let("i",CJ._`${B}.length`),I=Q.let("j");A.setParams({i:K,j:I}),Q.assign(F,!0),Q.if(CJ._`${K} > 1`,()=>(U()?$:E)(K,I))}function U(){return W.length>0&&!W.some((K)=>K==="object"||K==="array")}function $(K,I){let V=Q.name("item"),H=(0,Xb.checkDataTypes)(W,V,G.opts.strictNumbers,Xb.DataType.Wrong),D=Q.const("indices",CJ._`{}`);Q.for(CJ._`;${K}--;`,()=>{if(Q.let(V,CJ._`${B}[${K}]`),Q.if(H,CJ._`continue`),W.length>1)Q.if(CJ._`typeof ${V} == "string"`,CJ._`${V} += "_"`);Q.if(CJ._`typeof ${D}[${V}] == "number"`,()=>{Q.assign(I,CJ._`${D}[${V}]`),A.error(),Q.assign(F,!1).break()}).code(CJ._`${D}[${V}] = ${K}`)})}function E(K,I){let V=(0,eCB.useFunc)(Q,A1B.default),H=Q.name("outer");Q.label(H).for(CJ._`;${K}--;`,()=>Q.for(CJ._`${I} = ${K}; ${I}--;`,()=>Q.if(CJ._`${V}(${B}[${K}], ${B}[${I}])`,()=>{A.error(),Q.assign(F,!1).break(H)})))}}};s4A.default=B1B});var o4A=R((a4A)=>{Object.defineProperty(a4A,"__esModule",{value:!0});var Gb=GB(),J1B=wB(),C1B=Bw(),X1B={message:"must be equal to constant",params:({schemaCode:A})=>Gb._`{allowedValue: ${A}}`},G1B={keyword:"const",$data:!0,error:X1B,code(A){let{gen:Q,data:B,$data:Y,schemaCode:J,schema:C}=A;if(Y||C&&typeof C=="object")A.fail$data(Gb._`!${(0,J1B.useFunc)(Q,C1B.default)}(${B}, ${J})`);else A.fail(Gb._`${C} !== ${B}`)}};a4A.default=G1B});var e4A=R((t4A)=>{Object.defineProperty(t4A,"__esModule",{value:!0});var DD=GB(),W1B=wB(),Z1B=Bw(),$1B={message:"must be equal to one of the allowed values",params:({schemaCode:A})=>DD._`{allowedValues: ${A}}`},U1B={keyword:"enum",schemaType:"array",$data:!0,error:$1B,code(A){let{gen:Q,data:B,$data:Y,schema:J,schemaCode:C,it:X}=A;if(!Y&&J.length===0)throw Error("enum must have non-empty array");let G=J.length>=X.opts.loopEnum,F,W=()=>F!==null&&F!==void 0?F:F=(0,W1B.useFunc)(Q,Z1B.default),Z;if(G||Y)Z=Q.let("valid"),A.block$data(Z,U);else{if(!Array.isArray(J))throw Error("ajv implementation error");let E=Q.const("vSchema",C);Z=(0,DD.or)(...J.map((K,I)=>$(E,I)))}A.pass(Z);function U(){Q.assign(Z,!1),Q.forOf("v",C,(E)=>Q.if(DD._`${W()}(${B}, ${E})`,()=>Q.assign(Z,!0).break()))}function $(E,K){let I=J[K];return typeof I==="object"&&I!==null?DD._`${W()}(${B}, ${E}[${K}])`:DD._`${B} === ${I}`}}};t4A.default=U1B});var QUA=R((AUA)=>{Object.defineProperty(AUA,"__esModule",{value:!0});var K1B=S4A(),V1B=_4A(),I1B=x4A(),H1B=b4A(),D1B=u4A(),N1B=c4A(),L1B=p4A(),q1B=r4A(),M1B=o4A(),z1B=e4A(),R1B=[K1B.default,V1B.default,I1B.default,H1B.default,D1B.default,N1B.default,L1B.default,q1B.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},M1B.default,z1B.default];AUA.default=R1B});var Wb=R((YUA)=>{Object.defineProperty(YUA,"__esModule",{value:!0});YUA.validateAdditionalItems=void 0;var WZ=GB(),Fb=wB(),j1B={message:({params:{len:A}})=>WZ.str`must NOT have more than ${A} items`,params:({params:{len:A}})=>WZ._`{limit: ${A}}`},O1B={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:j1B,code(A){let{parentSchema:Q,it:B}=A,{items:Y}=Q;if(!Array.isArray(Y)){(0,Fb.checkStrictMode)(B,'"additionalItems" is ignored when "items" is not an array of schemas');return}BUA(A,Y)}};function BUA(A,Q){let{gen:B,schema:Y,data:J,keyword:C,it:X}=A;X.items=!0;let G=B.const("len",WZ._`${J}.length`);if(Y===!1)A.setParams({len:Q.length}),A.pass(WZ._`${G} <= ${Q.length}`);else if(typeof Y=="object"&&!(0,Fb.alwaysValidSchema)(X,Y)){let W=B.var("valid",WZ._`${G} <= ${Q.length}`);B.if((0,WZ.not)(W),()=>F(W)),A.ok(W)}function F(W){B.forRange("i",Q.length,G,(Z)=>{if(A.subschema({keyword:C,dataProp:Z,dataPropType:Fb.Type.Num},W),!X.allErrors)B.if((0,WZ.not)(W),()=>B.break())})}}YUA.validateAdditionalItems=BUA;YUA.default=O1B});var Zb=R((GUA)=>{Object.defineProperty(GUA,"__esModule",{value:!0});GUA.validateTuple=void 0;var CUA=GB(),Yw=wB(),T1B=I5(),S1B={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(A){let{schema:Q,it:B}=A;if(Array.isArray(Q))return XUA(A,"additionalItems",Q);if(B.items=!0,(0,Yw.alwaysValidSchema)(B,Q))return;A.ok((0,T1B.validateArray)(A))}};function XUA(A,Q,B=A.schema){let{gen:Y,parentSchema:J,data:C,keyword:X,it:G}=A;if(Z(J),G.opts.unevaluated&&B.length&&G.items!==!0)G.items=Yw.mergeEvaluated.items(Y,B.length,G.items);let F=Y.name("valid"),W=Y.const("len",CUA._`${C}.length`);B.forEach((U,$)=>{if((0,Yw.alwaysValidSchema)(G,U))return;Y.if(CUA._`${W} > ${$}`,()=>A.subschema({keyword:X,schemaProp:$,dataProp:$},F)),A.ok(F)});function Z(U){let{opts:$,errSchemaPath:E}=G,K=B.length,I=K===U.minItems&&(K===U.maxItems||U[Q]===!1);if($.strictTuples&&!I){let V=`"${X}" is ${K}-tuple, but minItems or maxItems/${Q} are not specified or different at path "${E}"`;(0,Yw.checkStrictMode)(G,V,$.strictTuples)}}}GUA.validateTuple=XUA;GUA.default=S1B});var ZUA=R((WUA)=>{Object.defineProperty(WUA,"__esModule",{value:!0});var _1B=Zb(),v1B={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:(A)=>(0,_1B.validateTuple)(A,"items")};WUA.default=v1B});var EUA=R((UUA)=>{Object.defineProperty(UUA,"__esModule",{value:!0});var $UA=GB(),h1B=wB(),g1B=I5(),x1B=Wb(),f1B={message:({params:{len:A}})=>$UA.str`must NOT have more than ${A} items`,params:({params:{len:A}})=>$UA._`{limit: ${A}}`},b1B={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:f1B,code(A){let{schema:Q,parentSchema:B,it:Y}=A,{prefixItems:J}=B;if(Y.items=!0,(0,h1B.alwaysValidSchema)(Y,Q))return;if(J)(0,x1B.validateAdditionalItems)(A,J);else A.ok((0,g1B.validateArray)(A))}};UUA.default=b1B});var VUA=R((KUA)=>{Object.defineProperty(KUA,"__esModule",{value:!0});var H5=GB(),Jw=wB(),u1B={message:({params:{min:A,max:Q}})=>Q===void 0?H5.str`must contain at least ${A} valid item(s)`:H5.str`must contain at least ${A} and no more than ${Q} valid item(s)`,params:({params:{min:A,max:Q}})=>Q===void 0?H5._`{minContains: ${A}}`:H5._`{minContains: ${A}, maxContains: ${Q}}`},d1B={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:u1B,code(A){let{gen:Q,schema:B,parentSchema:Y,data:J,it:C}=A,X,G,{minContains:F,maxContains:W}=Y;if(C.opts.next)X=F===void 0?1:F,G=W;else X=1;let Z=Q.const("len",H5._`${J}.length`);if(A.setParams({min:X,max:G}),G===void 0&&X===0){(0,Jw.checkStrictMode)(C,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(G!==void 0&&X>G){(0,Jw.checkStrictMode)(C,'"minContains" > "maxContains" is always invalid'),A.fail();return}if((0,Jw.alwaysValidSchema)(C,B)){let I=H5._`${Z} >= ${X}`;if(G!==void 0)I=H5._`${I} && ${Z} <= ${G}`;A.pass(I);return}C.items=!0;let U=Q.name("valid");if(G===void 0&&X===1)E(U,()=>Q.if(U,()=>Q.break()));else if(X===0){if(Q.let(U,!0),G!==void 0)Q.if(H5._`${J}.length > 0`,$)}else Q.let(U,!1),$();A.result(U,()=>A.reset());function $(){let I=Q.name("_valid"),V=Q.let("count",0);E(I,()=>Q.if(I,()=>K(V)))}function E(I,V){Q.forRange("i",0,Z,(H)=>{A.subschema({keyword:"contains",dataProp:H,dataPropType:Jw.Type.Num,compositeRule:!0},I),V()})}function K(I){if(Q.code(H5._`${I}++`),G===void 0)Q.if(H5._`${I} >= ${X}`,()=>Q.assign(U,!0).break());else if(Q.if(H5._`${I} > ${G}`,()=>Q.assign(U,!1).break()),X===1)Q.assign(U,!0);else Q.if(H5._`${I} >= ${X}`,()=>Q.assign(U,!0))}}};KUA.default=d1B});var qUA=R((DUA)=>{Object.defineProperty(DUA,"__esModule",{value:!0});DUA.validateSchemaDeps=DUA.validatePropertyDeps=DUA.error=void 0;var $b=GB(),l1B=wB(),ND=I5();DUA.error={message:({params:{property:A,depsCount:Q,deps:B}})=>{let Y=Q===1?"property":"properties";return $b.str`must have ${Y} ${B} when property ${A} is present`},params:({params:{property:A,depsCount:Q,deps:B,missingProperty:Y}})=>$b._`{property: ${A}, missingProperty: ${Y}, depsCount: ${Q}, - deps: ${B}}`};var T1B={keyword:"dependencies",type:"object",schemaType:"object",error:AUA.error,code(A){let[Q,B]=S1B(A);t4A(A,Q),e4A(A,B)}};function S1B({schema:A}){let Q={},B={};for(let Y in A){if(Y==="__proto__")continue;let J=Array.isArray(A[Y])?Q:B;J[Y]=A[Y]}return[Q,B]}function t4A(A,Q=A.schema){let{gen:B,data:Y,it:J}=A;if(Object.keys(Q).length===0)return;let C=B.let("missing");for(let X in Q){let G=Q[X];if(G.length===0)continue;let F=(0,KD.propertyInData)(B,Y,X,J.opts.ownProperties);if(A.setParams({property:X,depsCount:G.length,deps:G.join(", ")}),J.allErrors)B.if(F,()=>{for(let W of G)(0,KD.checkReportMissingProp)(A,W)});else B.if(Ab._`${F} && (${(0,KD.checkMissingProp)(A,G,C)})`),(0,KD.reportMissingProp)(A,C),B.else()}}AUA.validatePropertyDeps=t4A;function e4A(A,Q=A.schema){let{gen:B,data:Y,keyword:J,it:C}=A,X=B.name("valid");for(let G in Q){if((0,P1B.alwaysValidSchema)(C,Q[G]))continue;B.if((0,KD.propertyInData)(B,Y,G,C.opts.ownProperties),()=>{let F=A.subschema({keyword:J,schemaProp:G},X);A.mergeValidEvaluated(F,X)},()=>B.var(X,!0)),A.ok(X)}}AUA.validateSchemaDeps=e4A;AUA.default=T1B});var XUA=R((CUA)=>{Object.defineProperty(CUA,"__esModule",{value:!0});var JUA=GB(),v1B=wB(),y1B={message:"property name must be valid",params:({params:A})=>JUA._`{propertyName: ${A.propertyName}}`},g1B={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:y1B,code(A){let{gen:Q,schema:B,data:Y,it:J}=A;if((0,v1B.alwaysValidSchema)(J,B))return;let C=Q.name("valid");Q.forIn("key",Y,(X)=>{A.setParams({propertyName:X}),A.subschema({keyword:"propertyNames",data:X,dataTypes:["string"],propertyName:X,compositeRule:!0},C),Q.if((0,JUA.not)(C),()=>{if(A.error(!0),!J.allErrors)Q.break()})}),A.ok(C)}};CUA.default=g1B});var Qb=R((GUA)=>{Object.defineProperty(GUA,"__esModule",{value:!0});var Qw=V5(),hC=GB(),x1B=_G(),Bw=wB(),f1B={message:"must NOT have additional properties",params:({params:A})=>hC._`{additionalProperty: ${A.additionalProperty}}`},b1B={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:f1B,code(A){let{gen:Q,schema:B,parentSchema:Y,data:J,errsCount:C,it:X}=A;if(!C)throw Error("ajv implementation error");let{allErrors:G,opts:F}=X;if(X.props=!0,F.removeAdditional!=="all"&&(0,Bw.alwaysValidSchema)(X,B))return;let W=(0,Qw.allSchemaProperties)(Y.properties),Z=(0,Qw.allSchemaProperties)(Y.patternProperties);U(),A.ok(hC._`${C} === ${x1B.default.errors}`);function U(){Q.forIn("key",J,(V)=>{if(!W.length&&!Z.length)K(V);else Q.if($(V),()=>K(V))})}function $(V){let H;if(W.length>8){let D=(0,Bw.schemaRefOrVal)(X,Y.properties,"properties");H=(0,Qw.isOwnProperty)(Q,D,V)}else if(W.length)H=(0,hC.or)(...W.map((D)=>hC._`${V} === ${D}`));else H=hC.nil;if(Z.length)H=(0,hC.or)(H,...Z.map((D)=>hC._`${(0,Qw.usePattern)(A,D)}.test(${V})`));return(0,hC.not)(H)}function E(V){Q.code(hC._`delete ${J}[${V}]`)}function K(V){if(F.removeAdditional==="all"||F.removeAdditional&&B===!1){E(V);return}if(B===!1){if(A.setParams({additionalProperty:V}),A.error(),!G)Q.break();return}if(typeof B=="object"&&!(0,Bw.alwaysValidSchema)(X,B)){let H=Q.name("valid");if(F.removeAdditional==="failing")I(V,H,!1),Q.if((0,hC.not)(H),()=>{A.reset(),E(V)});else if(I(V,H),!G)Q.if((0,hC.not)(H),()=>Q.break())}}function I(V,H,D){let L={keyword:"additionalProperties",dataProp:V,dataPropType:Bw.Type.Str};if(D===!1)Object.assign(L,{compositeRule:!0,createErrors:!1,allErrors:!1});A.subschema(L,H)}}};GUA.default=b1B});var $UA=R((ZUA)=>{Object.defineProperty(ZUA,"__esModule",{value:!0});var u1B=BD(),FUA=V5(),Bb=wB(),WUA=Qb(),d1B={keyword:"properties",type:"object",schemaType:"object",code(A){let{gen:Q,schema:B,parentSchema:Y,data:J,it:C}=A;if(C.opts.removeAdditional==="all"&&Y.additionalProperties===void 0)WUA.default.code(new u1B.KeywordCxt(C,WUA.default,"additionalProperties"));let X=(0,FUA.allSchemaProperties)(B);for(let U of X)C.definedProperties.add(U);if(C.opts.unevaluated&&X.length&&C.props!==!0)C.props=Bb.mergeEvaluated.props(Q,(0,Bb.toHash)(X),C.props);let G=X.filter((U)=>!(0,Bb.alwaysValidSchema)(C,B[U]));if(G.length===0)return;let F=Q.name("valid");for(let U of G){if(W(U))Z(U);else{if(Q.if((0,FUA.propertyInData)(Q,J,U,C.opts.ownProperties)),Z(U),!C.allErrors)Q.else().var(F,!0);Q.endIf()}A.it.definedProperties.add(U),A.ok(F)}function W(U){return C.opts.useDefaults&&!C.compositeRule&&B[U].default!==void 0}function Z(U){A.subschema({keyword:"properties",schemaProp:U,dataProp:U},F)}}};ZUA.default=d1B});var IUA=R((VUA)=>{Object.defineProperty(VUA,"__esModule",{value:!0});var UUA=V5(),Yw=GB(),EUA=wB(),KUA=wB(),l1B={keyword:"patternProperties",type:"object",schemaType:"object",code(A){let{gen:Q,schema:B,data:Y,parentSchema:J,it:C}=A,{opts:X}=C,G=(0,UUA.allSchemaProperties)(B),F=G.filter((I)=>(0,EUA.alwaysValidSchema)(C,B[I]));if(G.length===0||F.length===G.length&&(!C.opts.unevaluated||C.props===!0))return;let W=X.strictSchema&&!X.allowMatchingProperties&&J.properties,Z=Q.name("valid");if(C.props!==!0&&!(C.props instanceof Yw.Name))C.props=(0,KUA.evaluatedPropsToName)(Q,C.props);let{props:U}=C;$();function $(){for(let I of G){if(W)E(I);if(C.allErrors)K(I);else Q.var(Z,!0),K(I),Q.if(Z)}}function E(I){for(let V in W)if(new RegExp(I).test(V))(0,EUA.checkStrictMode)(C,`property ${V} matches pattern ${I} (use allowMatchingProperties)`)}function K(I){Q.forIn("key",Y,(V)=>{Q.if(Yw._`${(0,UUA.usePattern)(A,I)}.test(${V})`,()=>{let H=F.includes(I);if(!H)A.subschema({keyword:"patternProperties",schemaProp:I,dataProp:V,dataPropType:KUA.Type.Str},Z);if(C.opts.unevaluated&&U!==!0)Q.assign(Yw._`${U}[${V}]`,!0);else if(!H&&!C.allErrors)Q.if((0,Yw.not)(Z),()=>Q.break())})})}}};VUA.default=l1B});var DUA=R((HUA)=>{Object.defineProperty(HUA,"__esModule",{value:!0});var i1B=wB(),n1B={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(A){let{gen:Q,schema:B,it:Y}=A;if((0,i1B.alwaysValidSchema)(Y,B)){A.fail();return}let J=Q.name("valid");A.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},J),A.failResult(J,()=>A.reset(),()=>A.error())},error:{message:"must NOT be valid"}};HUA.default=n1B});var LUA=R((NUA)=>{Object.defineProperty(NUA,"__esModule",{value:!0});var r1B=V5(),a1B={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:r1B.validateUnion,error:{message:"must match a schema in anyOf"}};NUA.default=a1B});var MUA=R((qUA)=>{Object.defineProperty(qUA,"__esModule",{value:!0});var Jw=GB(),t1B=wB(),e1B={message:"must match exactly one schema in oneOf",params:({params:A})=>Jw._`{passingSchemas: ${A.passing}}`},AXB={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:e1B,code(A){let{gen:Q,schema:B,parentSchema:Y,it:J}=A;if(!Array.isArray(B))throw Error("ajv implementation error");if(J.opts.discriminator&&Y.discriminator)return;let C=B,X=Q.let("valid",!1),G=Q.let("passing",null),F=Q.name("_valid");A.setParams({passing:G}),Q.block(W),A.result(X,()=>A.reset(),()=>A.error(!0));function W(){C.forEach((Z,U)=>{let $;if((0,t1B.alwaysValidSchema)(J,Z))Q.var(F,!0);else $=A.subschema({keyword:"oneOf",schemaProp:U,compositeRule:!0},F);if(U>0)Q.if(Jw._`${F} && ${X}`).assign(X,!1).assign(G,Jw._`[${G}, ${U}]`).else();Q.if(F,()=>{if(Q.assign(X,!0),Q.assign(G,U),$)A.mergeEvaluated($,Jw.Name)})})}}};qUA.default=AXB});var RUA=R((zUA)=>{Object.defineProperty(zUA,"__esModule",{value:!0});var BXB=wB(),YXB={keyword:"allOf",schemaType:"array",code(A){let{gen:Q,schema:B,it:Y}=A;if(!Array.isArray(B))throw Error("ajv implementation error");let J=Q.name("valid");B.forEach((C,X)=>{if((0,BXB.alwaysValidSchema)(Y,C))return;let G=A.subschema({keyword:"allOf",schemaProp:X},J);A.ok(J),A.mergeEvaluated(G)})}};zUA.default=YXB});var PUA=R((OUA)=>{Object.defineProperty(OUA,"__esModule",{value:!0});var Cw=GB(),jUA=wB(),CXB={message:({params:A})=>Cw.str`must match "${A.ifClause}" schema`,params:({params:A})=>Cw._`{failingKeyword: ${A.ifClause}}`},XXB={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:CXB,code(A){let{gen:Q,parentSchema:B,it:Y}=A;if(B.then===void 0&&B.else===void 0)(0,jUA.checkStrictMode)(Y,'"if" without "then" and "else" is ignored');let J=wUA(Y,"then"),C=wUA(Y,"else");if(!J&&!C)return;let X=Q.let("valid",!0),G=Q.name("_valid");if(F(),A.reset(),J&&C){let Z=Q.let("ifClause");A.setParams({ifClause:Z}),Q.if(G,W("then",Z),W("else",Z))}else if(J)Q.if(G,W("then"));else Q.if((0,Cw.not)(G),W("else"));A.pass(X,()=>A.error(!0));function F(){let Z=A.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},G);A.mergeEvaluated(Z)}function W(Z,U){return()=>{let $=A.subschema({keyword:Z},G);if(Q.assign(X,G),A.mergeValidEvaluated($,X),U)Q.assign(U,Cw._`${Z}`);else A.setParams({ifClause:Z})}}}};function wUA(A,Q){let B=A.schema[Q];return B!==void 0&&!(0,jUA.alwaysValidSchema)(A,B)}OUA.default=XXB});var SUA=R((TUA)=>{Object.defineProperty(TUA,"__esModule",{value:!0});var FXB=wB(),WXB={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:A,parentSchema:Q,it:B}){if(Q.if===void 0)(0,FXB.checkStrictMode)(B,`"${A}" without "if" is ignored`)}};TUA.default=WXB});var _UA=R((kUA)=>{Object.defineProperty(kUA,"__esModule",{value:!0});var $XB=tf(),UXB=i4A(),EXB=ef(),KXB=r4A(),VXB=o4A(),IXB=YUA(),HXB=XUA(),DXB=Qb(),NXB=$UA(),LXB=IUA(),qXB=DUA(),MXB=LUA(),zXB=MUA(),RXB=RUA(),wXB=PUA(),jXB=SUA();function OXB(A=!1){let Q=[qXB.default,MXB.default,zXB.default,RXB.default,wXB.default,jXB.default,HXB.default,DXB.default,IXB.default,NXB.default,LXB.default];if(A)Q.push(UXB.default,KXB.default);else Q.push($XB.default,EXB.default);return Q.push(VXB.default),Q}kUA.default=OXB});var yUA=R((vUA)=>{Object.defineProperty(vUA,"__esModule",{value:!0});var XY=GB(),TXB={message:({schemaCode:A})=>XY.str`must match format "${A}"`,params:({schemaCode:A})=>XY._`{format: ${A}}`},SXB={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:TXB,code(A,Q){let{gen:B,data:Y,$data:J,schema:C,schemaCode:X,it:G}=A,{opts:F,errSchemaPath:W,schemaEnv:Z,self:U}=G;if(!F.validateFormats)return;if(J)$();else E();function $(){let K=B.scopeValue("formats",{ref:U.formats,code:F.code.formats}),I=B.const("fDef",XY._`${K}[${X}]`),V=B.let("fType"),H=B.let("format");B.if(XY._`typeof ${I} == "object" && !(${I} instanceof RegExp)`,()=>B.assign(V,XY._`${I}.type || "string"`).assign(H,XY._`${I}.validate`),()=>B.assign(V,XY._`"string"`).assign(H,I)),A.fail$data((0,XY.or)(D(),L()));function D(){if(F.strictSchema===!1)return XY.nil;return XY._`${X} && !${H}`}function L(){let z=Z.$async?XY._`(${I}.async ? await ${H}(${Y}) : ${H}(${Y}))`:XY._`${H}(${Y})`,M=XY._`(typeof ${H} == "function" ? ${z} : ${H}.test(${Y}))`;return XY._`${H} && ${H} !== true && ${V} === ${Q} && !${M}`}}function E(){let K=U.formats[C];if(!K){D();return}if(K===!0)return;let[I,V,H]=L(K);if(I===Q)A.pass(z());function D(){if(F.strictSchema===!1){U.logger.warn(M());return}throw Error(M());function M(){return`unknown format "${C}" ignored in schema at path "${W}"`}}function L(M){let N=M instanceof RegExp?(0,XY.regexpCode)(M):F.code.formats?XY._`${F.code.formats}${(0,XY.getProperty)(C)}`:void 0,q=B.scopeValue("formats",{key:C,ref:M,code:N});if(typeof M=="object"&&!(M instanceof RegExp))return[M.type||"string",M.validate,XY._`${q}.validate`];return["string",M,q]}function z(){if(typeof K=="object"&&!(K instanceof RegExp)&&K.async){if(!Z.$async)throw Error("async format in sync schema");return XY._`await ${H}(${Y})`}return typeof V=="function"?XY._`${H}(${Y})`:XY._`${H}.test(${Y})`}}}};vUA.default=SXB});var hUA=R((gUA)=>{Object.defineProperty(gUA,"__esModule",{value:!0});var _XB=yUA(),vXB=[_XB.default];gUA.default=vXB});var bUA=R((xUA)=>{Object.defineProperty(xUA,"__esModule",{value:!0});xUA.contentVocabulary=xUA.metadataVocabulary=void 0;xUA.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];xUA.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var dUA=R((uUA)=>{Object.defineProperty(uUA,"__esModule",{value:!0});var hXB=Z4A(),xXB=x4A(),fXB=_UA(),bXB=hUA(),mUA=bUA(),mXB=[hXB.default,xXB.default,(0,fXB.default)(),bXB.default,mUA.metadataVocabulary,mUA.contentVocabulary];uUA.default=mXB});var iUA=R((lUA)=>{Object.defineProperty(lUA,"__esModule",{value:!0});lUA.DiscrError=void 0;var cUA;(function(A){A.Tag="tag",A.Mapping="mapping"})(cUA||(lUA.DiscrError=cUA={}))});var rUA=R((sUA)=>{Object.defineProperty(sUA,"__esModule",{value:!0});var BE=GB(),Yb=iUA(),nUA=uR(),dXB=YD(),cXB=wB(),lXB={message:({params:{discrError:A,tagName:Q}})=>A===Yb.DiscrError.Tag?`tag "${Q}" must be string`:`value of tag "${Q}" must be in oneOf`,params:({params:{discrError:A,tag:Q,tagName:B}})=>BE._`{error: ${A}, tag: ${B}, tagValue: ${Q}}`},pXB={keyword:"discriminator",type:"object",schemaType:"object",error:lXB,code(A){let{gen:Q,data:B,schema:Y,parentSchema:J,it:C}=A,{oneOf:X}=J;if(!C.opts.discriminator)throw Error("discriminator: requires discriminator option");let G=Y.propertyName;if(typeof G!="string")throw Error("discriminator: requires propertyName");if(Y.mapping)throw Error("discriminator: mapping is not supported");if(!X)throw Error("discriminator: requires oneOf keyword");let F=Q.let("valid",!1),W=Q.const("tag",BE._`${B}${(0,BE.getProperty)(G)}`);Q.if(BE._`typeof ${W} == "string"`,()=>Z(),()=>A.error(!1,{discrError:Yb.DiscrError.Tag,tag:W,tagName:G})),A.ok(F);function Z(){let E=$();Q.if(!1);for(let K in E)Q.elseIf(BE._`${W} === ${K}`),Q.assign(F,U(E[K]));Q.else(),A.error(!1,{discrError:Yb.DiscrError.Mapping,tag:W,tagName:G}),Q.endIf()}function U(E){let K=Q.name("valid"),I=A.subschema({keyword:"oneOf",schemaProp:E},K);return A.mergeEvaluated(I,BE.Name),K}function $(){var E;let K={},I=H(J),V=!0;for(let z=0;z{nXB.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var tUA=R((v9,Jb)=>{Object.defineProperty(v9,"__esModule",{value:!0});v9.MissingRefError=v9.ValidationError=v9.CodeGen=v9.Name=v9.nil=v9.stringify=v9.str=v9._=v9.KeywordCxt=v9.Ajv=void 0;var sXB=A4A(),rXB=dUA(),aXB=rUA(),oUA=aUA(),oXB=["/properties"],Xw="http://json-schema.org/draft-07/schema";class VD extends sXB.default{_addVocabularies(){if(super._addVocabularies(),rXB.default.forEach((A)=>this.addVocabulary(A)),this.opts.discriminator)this.addKeyword(aXB.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let A=this.opts.$data?this.$dataMetaSchema(oUA,oXB):oUA;this.addMetaSchema(A,Xw,!1),this.refs["http://json-schema.org/schema"]=Xw}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(Xw)?Xw:void 0)}}v9.Ajv=VD;Jb.exports=v9=VD;Jb.exports.Ajv=VD;Object.defineProperty(v9,"__esModule",{value:!0});v9.default=VD;var tXB=BD();Object.defineProperty(v9,"KeywordCxt",{enumerable:!0,get:function(){return tXB.KeywordCxt}});var YE=GB();Object.defineProperty(v9,"_",{enumerable:!0,get:function(){return YE._}});Object.defineProperty(v9,"str",{enumerable:!0,get:function(){return YE.str}});Object.defineProperty(v9,"stringify",{enumerable:!0,get:function(){return YE.stringify}});Object.defineProperty(v9,"nil",{enumerable:!0,get:function(){return YE.nil}});Object.defineProperty(v9,"Name",{enumerable:!0,get:function(){return YE.Name}});Object.defineProperty(v9,"CodeGen",{enumerable:!0,get:function(){return YE.CodeGen}});var eXB=bR();Object.defineProperty(v9,"ValidationError",{enumerable:!0,get:function(){return eXB.default}});var AGB=YD();Object.defineProperty(v9,"MissingRefError",{enumerable:!0,get:function(){return AGB.default}})});var PEA=R((OEA)=>{Object.defineProperty(OEA,"__esModule",{value:!0});OEA.fromEnv=ZGB;var jEA="HYTOPIA_API_KEY";function WGB(A){let Q=process.env[jEA];if(!Q)throw Error(`Missing environment variable ${A}`);return Q}function ZGB(){return{apiKey:WGB(jEA)}}});var TEA=R((ib)=>{Object.defineProperty(ib,"__esModule",{value:!0});ib.fromEnv=void 0;var UGB=PEA();Object.defineProperty(ib,"fromEnv",{enumerable:!0,get:function(){return UGB.fromEnv}})});var kEA=R((JE)=>{var nb=JE&&JE.__importDefault||function(A){return A&&A.__esModule?A:{default:A}};Object.defineProperty(JE,"__esModule",{value:!0});JE.LocalBackend=void 0;var sb=nb(u("fs")),KGB=nb(u("path")),rb=nb(u("util")),VGB=rb.default.promisify(sb.default.mkdir),IGB=rb.default.promisify(sb.default.readFile),HGB=rb.default.promisify(sb.default.writeFile);class SEA{dataDir;constructor(A){this.dataDir=A}calculatePath(A,Q){return`${this.dataDir}/${A}/${Q}.json`}async load(A,Q){try{let B=await IGB(this.calculatePath(A,Q),"utf8"),Y=JSON.parse(B);if(!Y.__version)Y.__version=1;return Y}catch(B){return{__version:1}}}async upload(A,Q){await VGB(KGB.default.join(this.dataDir,A),{recursive:!0});var B=[];for(var[Y,J]of Object.entries(Q))B.push(HGB(this.calculatePath(A,Y),JSON.stringify(J)));await Promise.all(B)}}JE.LocalBackend=SEA});var ab=R((vEA)=>{Object.defineProperty(vEA,"__esModule",{value:!0});vEA.proxifyObject=_EA;function _EA(A,Q,B){if(!B)B=new WeakSet;for(let[Y,J]of Object.entries(A))if(J instanceof Object){if(B.has(J)){console.error(`[SaveStates] Circular reference detected at property "${Y}". This property will be skipped to prevent infinite recursion. Please remove circular references from your persisted data.`),delete A[Y];continue}B.add(J),A[Y]=_EA(J,Q,B)}return new Proxy(A,Q)}});var hEA=R((gEA)=>{Object.defineProperty(gEA,"__esModule",{value:!0});gEA.load=NGB;var yEA=ab();async function NGB(A){let Q=await this.backend.load(this.gameId,A),B=this.saveStatesManager,Y={set(C,X,G){if(typeof G==="function")return!1;if(G instanceof Object)C[X]=(0,yEA.proxifyObject)(G,Y);else C[X]=G;if(X!=="__version")B.incrementVersion(A);return!0},deleteProperty(C,X){if(X in C)delete C[X];return B.incrementVersion(A),!0}},J=(0,yEA.proxifyObject)(Q,Y);return B.setReference(A,J),J}});var uEA=R((bEA)=>{Object.defineProperty(bEA,"__esModule",{value:!0});bEA.SaveStatesManager=void 0;var xEA=ab();class fEA{_stateReferences={};_pendingSaveQueue={};_hasQueuedSaves=!1;setReference(A,Q){this._stateReferences[A]=Q}getReference(A){return this._stateReferences[A]??null}dropReference(A){if(!this._stateReferences)return;delete this._stateReferences[A]}incrementVersion(A){if(!this._stateReferences[A])return;this._hasQueuedSaves=!0;let Q=this._stateReferences[A];Q.__version+=1,this._pendingSaveQueue[A]=Q}getPendingSaves(){if(!this._hasQueuedSaves)return null;let A=JSON.parse(JSON.stringify(this._pendingSaveQueue));return this._pendingSaveQueue={},this._hasQueuedSaves=!1,A}load(A,Q){let B=this.getReference(A);if(B)return{value:B.value};let Y=this,J={set(X,G,F){if(typeof F==="function")return!1;if(F instanceof Object)X[G]=(0,xEA.proxifyObject)(F,J);else X[G]=F;if(G!=="__version")Y.incrementVersion(A);return!0},deleteProperty(X,G){if(G in X)delete X[G];return Y.incrementVersion(A),!0}},C=(0,xEA.proxifyObject)(Q.value,J);return Y.setReference(A,C),{error:void 0,value:C}}}bEA.SaveStatesManager=fEA});var cEA=R((dEA)=>{Object.defineProperty(dEA,"__esModule",{value:!0});dEA.flush=qGB;async function qGB(){let A=this.saveStatesManager.getPendingSaves();if(!A)return;await this.backend.upload(this.gameId,A)}});var nEA=R((pEA)=>{Object.defineProperty(pEA,"__esModule",{value:!0});pEA.RemoteBackend=void 0;class lEA{baseUrl;credentials;constructor(A,Q,B){this.baseUrl=A,this.credentials=Q}async load(A,Q){while(!0){try{let B=await fetch(`${this.baseUrl}/play/kv/get/${A}/${Q}`,{headers:{"X-Api-Key":this.credentials.apiKey}}),Y=await B.json();if(B.ok){if(!Y.value.__version)Y.value.__version=1;return Y.value}if(Y&&Y.error){if(Y.error.code==="keyNotFound")return{__version:1};console.warn(`[SaveStates] Got an error loading remote state for key ${Q}: ${Y.error.code}, retrying in 1s...`),await new Promise((J)=>setTimeout(J,1000));continue}throw Error("Unexpected error body")}catch(B){console.warn(`[SaveStates] Could not load remote state for key ${Q} due to a connection issue, retrying in 1s...`)}await new Promise((B)=>setTimeout(B,1000))}}async upload(A,Q){while(!0){try{let B=await fetch(`${this.baseUrl}/play/kv/setbulk/${A}`,{method:"POST",headers:{"Content-Type":"application/json","X-Api-Key":this.credentials.apiKey},body:JSON.stringify(Q)}),Y=await B.json();if(B.ok)return;if(Y&&Y.error){console.warn(`[SaveStates] Could not upload state to remote due to an error (code '${Y.error.code}'), retrying in 1s...`),await new Promise((J)=>setTimeout(J,1000));continue}throw Error("Unexpected error body")}catch(B){console.warn("[SaveStates] Could not upload state to remote due to a connection issue, retrying in 1s...")}await new Promise((B)=>setTimeout(B,1000))}}}pEA.RemoteBackend=lEA});var rEA=R((sEA)=>{Object.defineProperty(sEA,"__esModule",{value:!0});sEA.unload=zGB;async function zGB(A){this.saveStatesManager.dropReference(A),await this.flush()}});var eEA=R((oEA)=>{Object.defineProperty(oEA,"__esModule",{value:!0});oEA.SaveStatesClient=void 0;var wGB=TEA(),jGB=kEA(),OGB=hEA(),PGB=uEA(),TGB=cEA(),SGB=nEA(),kGB=rEA();function _GB(A){if(A)return A;try{let Q=(0,wGB.fromEnv)(),B=process.env.HYTOPIA_PERSUADE_CREATIVE_GATEWAY_BASE_URL??"https://prod.persuade-creative.hytopia.com",Y=process.env.HYTOPIA_GAME_ID;if(!Y)throw Error("Missing HYTOPIA_GAME_ID environment variable");return new SGB.RemoteBackend(B,Q,Y)}catch{return console.warn("[SaveStates] Couldn't load credentials from environment variables, defaulting to local backend"),new jGB.LocalBackend("dev")}}class aEA{backend;gameId;saveStatesManager;constructor(A){this.backend=_GB(A?.backend),this.gameId=A?.gameId??process.env.HYTOPIA_GAME_ID??"persistence",this.saveStatesManager=new PGB.SaveStatesManager;async function Q(B){while(!0)await B.flush(),await new Promise((Y)=>{setTimeout(Y,1000).unref()})}Q(this)}load=OGB.load;unload=kGB.unload;flush=TGB.flush}oEA.SaveStatesClient=aEA});var hG=R((YIY,BKA)=>{var AKA=["nodebuffer","arraybuffer","fragments"],QKA=typeof Blob<"u";if(QKA)AKA.push("blob");BKA.exports={BINARY_TYPES:AKA,EMPTY_BUFFER:Buffer.alloc(0),GUID:"258EAFA5-E914-47DA-95CA-C5AB0DC85B11",hasBlob:QKA,kForOnEventAttribute:Symbol("kIsForOnEventAttribute"),kListener:Symbol("kListener"),kStatusCode:Symbol("status-code"),kWebSocket:Symbol("websocket"),NOOP:()=>{}}});var LD=R((JIY,$w)=>{var{EMPTY_BUFFER:vGB}=hG(),ob=Buffer[Symbol.species];function yGB(A,Q){if(A.length===0)return vGB;if(A.length===1)return A[0];let B=Buffer.allocUnsafe(Q),Y=0;for(let J=0;J{throw new Error("Cannot require module "+"bufferutil");})();$w.exports.mask=function(Q,B,Y,J,C){if(C<48)YKA(Q,B,Y,J,C);else A.mask(Q,B,Y,J,C)},$w.exports.unmask=function(Q,B){if(Q.length<32)JKA(Q,B);else A.unmask(Q,B)}}catch(A){}});var FKA=R((CIY,GKA)=>{var CKA=Symbol("kDone"),eb=Symbol("kRun");class XKA{constructor(A){this[CKA]=()=>{this.pending--,this[eb]()},this.concurrency=A||1/0,this.jobs=[],this.pending=0}add(A){this.jobs.push(A),this[eb]()}[eb](){if(this.pending===this.concurrency)return;if(this.jobs.length){let A=this.jobs.shift();this.pending++,A(this[CKA])}}}GKA.exports=XKA});var MD=R((XIY,EKA)=>{var qD=u("zlib"),WKA=LD(),hGB=FKA(),{kStatusCode:ZKA}=hG(),xGB=Buffer[Symbol.species],fGB=Buffer.from([0,0,255,255]),Ew=Symbol("permessage-deflate"),xG=Symbol("total-length"),CE=Symbol("callback"),y7=Symbol("buffers"),XE=Symbol("error"),Uw;class $KA{constructor(A,Q,B){if(this._maxPayload=B|0,this._options=A||{},this._threshold=this._options.threshold!==void 0?this._options.threshold:1024,this._isServer=!!Q,this._deflate=null,this._inflate=null,this.params=null,!Uw){let Y=this._options.concurrencyLimit!==void 0?this._options.concurrencyLimit:10;Uw=new hGB(Y)}}static get extensionName(){return"permessage-deflate"}offer(){let A={};if(this._options.serverNoContextTakeover)A.server_no_context_takeover=!0;if(this._options.clientNoContextTakeover)A.client_no_context_takeover=!0;if(this._options.serverMaxWindowBits)A.server_max_window_bits=this._options.serverMaxWindowBits;if(this._options.clientMaxWindowBits)A.client_max_window_bits=this._options.clientMaxWindowBits;else if(this._options.clientMaxWindowBits==null)A.client_max_window_bits=!0;return A}accept(A){return A=this.normalizeParams(A),this.params=this._isServer?this.acceptAsServer(A):this.acceptAsClient(A),this.params}cleanup(){if(this._inflate)this._inflate.close(),this._inflate=null;if(this._deflate){let A=this._deflate[CE];if(this._deflate.close(),this._deflate=null,A)A(Error("The deflate stream was closed while data was being processed"))}}acceptAsServer(A){let Q=this._options,B=A.find((Y)=>{if(Q.serverNoContextTakeover===!1&&Y.server_no_context_takeover||Y.server_max_window_bits&&(Q.serverMaxWindowBits===!1||typeof Q.serverMaxWindowBits==="number"&&Q.serverMaxWindowBits>Y.server_max_window_bits)||typeof Q.clientMaxWindowBits==="number"&&!Y.client_max_window_bits)return!1;return!0});if(!B)throw Error("None of the extension offers can be accepted");if(Q.serverNoContextTakeover)B.server_no_context_takeover=!0;if(Q.clientNoContextTakeover)B.client_no_context_takeover=!0;if(typeof Q.serverMaxWindowBits==="number")B.server_max_window_bits=Q.serverMaxWindowBits;if(typeof Q.clientMaxWindowBits==="number")B.client_max_window_bits=Q.clientMaxWindowBits;else if(B.client_max_window_bits===!0||Q.clientMaxWindowBits===!1)delete B.client_max_window_bits;return B}acceptAsClient(A){let Q=A[0];if(this._options.clientNoContextTakeover===!1&&Q.client_no_context_takeover)throw Error('Unexpected parameter "client_no_context_takeover"');if(!Q.client_max_window_bits){if(typeof this._options.clientMaxWindowBits==="number")Q.client_max_window_bits=this._options.clientMaxWindowBits}else if(this._options.clientMaxWindowBits===!1||typeof this._options.clientMaxWindowBits==="number"&&Q.client_max_window_bits>this._options.clientMaxWindowBits)throw Error('Unexpected or invalid parameter "client_max_window_bits"');return Q}normalizeParams(A){return A.forEach((Q)=>{Object.keys(Q).forEach((B)=>{let Y=Q[B];if(Y.length>1)throw Error(`Parameter "${B}" must have only a single value`);if(Y=Y[0],B==="client_max_window_bits"){if(Y!==!0){let J=+Y;if(!Number.isInteger(J)||J<8||J>15)throw TypeError(`Invalid value for parameter "${B}": ${Y}`);Y=J}else if(!this._isServer)throw TypeError(`Invalid value for parameter "${B}": ${Y}`)}else if(B==="server_max_window_bits"){let J=+Y;if(!Number.isInteger(J)||J<8||J>15)throw TypeError(`Invalid value for parameter "${B}": ${Y}`);Y=J}else if(B==="client_no_context_takeover"||B==="server_no_context_takeover"){if(Y!==!0)throw TypeError(`Invalid value for parameter "${B}": ${Y}`)}else throw Error(`Unknown parameter "${B}"`);Q[B]=Y})}),A}decompress(A,Q,B){Uw.add((Y)=>{this._decompress(A,Q,(J,C)=>{Y(),B(J,C)})})}compress(A,Q,B){Uw.add((Y)=>{this._compress(A,Q,(J,C)=>{Y(),B(J,C)})})}_decompress(A,Q,B){let Y=this._isServer?"client":"server";if(!this._inflate){let J=`${Y}_max_window_bits`,C=typeof this.params[J]!=="number"?qD.Z_DEFAULT_WINDOWBITS:this.params[J];this._inflate=qD.createInflateRaw({...this._options.zlibInflateOptions,windowBits:C}),this._inflate[Ew]=this,this._inflate[xG]=0,this._inflate[y7]=[],this._inflate.on("error",mGB),this._inflate.on("data",UKA)}if(this._inflate[CE]=B,this._inflate.write(A),Q)this._inflate.write(fGB);this._inflate.flush(()=>{let J=this._inflate[XE];if(J){this._inflate.close(),this._inflate=null,B(J);return}let C=WKA.concat(this._inflate[y7],this._inflate[xG]);if(this._inflate._readableState.endEmitted)this._inflate.close(),this._inflate=null;else if(this._inflate[xG]=0,this._inflate[y7]=[],Q&&this.params[`${Y}_no_context_takeover`])this._inflate.reset();B(null,C)})}_compress(A,Q,B){let Y=this._isServer?"server":"client";if(!this._deflate){let J=`${Y}_max_window_bits`,C=typeof this.params[J]!=="number"?qD.Z_DEFAULT_WINDOWBITS:this.params[J];this._deflate=qD.createDeflateRaw({...this._options.zlibDeflateOptions,windowBits:C}),this._deflate[xG]=0,this._deflate[y7]=[],this._deflate.on("data",bGB)}this._deflate[CE]=B,this._deflate.write(A),this._deflate.flush(qD.Z_SYNC_FLUSH,()=>{if(!this._deflate)return;let J=WKA.concat(this._deflate[y7],this._deflate[xG]);if(Q)J=new xGB(J.buffer,J.byteOffset,J.length-4);if(this._deflate[CE]=null,this._deflate[xG]=0,this._deflate[y7]=[],Q&&this.params[`${Y}_no_context_takeover`])this._deflate.reset();B(null,J)})}}EKA.exports=$KA;function bGB(A){this[y7].push(A),this[xG]+=A.length}function UKA(A){if(this[xG]+=A.length,this[Ew]._maxPayload<1||this[xG]<=this[Ew]._maxPayload){this[y7].push(A);return}this[XE]=RangeError("Max payload size exceeded"),this[XE].code="WS_ERR_UNSUPPORTED_MESSAGE_LENGTH",this[XE][ZKA]=1009,this.removeListener("data",UKA),this.reset()}function mGB(A){if(this[Ew]._inflate=null,this[XE]){this[CE](this[XE]);return}A[ZKA]=1007,this[CE](A)}});var GE=R((GIY,Kw)=>{var{isUtf8:KKA}=u("buffer"),{hasBlob:uGB}=hG(),dGB=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,1,1,1,0,0,1,1,0,1,1,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,0,1,0];function cGB(A){return A>=1000&&A<=1014&&A!==1004&&A!==1005&&A!==1006||A>=3000&&A<=4999}function Am(A){let Q=A.length,B=0;while(B=Q||(A[B+1]&192)!==128||(A[B+2]&192)!==128||A[B]===224&&(A[B+1]&224)===128||A[B]===237&&(A[B+1]&224)===160)return!1;B+=3}else if((A[B]&248)===240){if(B+3>=Q||(A[B+1]&192)!==128||(A[B+2]&192)!==128||(A[B+3]&192)!==128||A[B]===240&&(A[B+1]&240)===128||A[B]===244&&A[B+1]>143||A[B]>244)return!1;B+=4}else return!1;return!0}function lGB(A){return uGB&&typeof A==="object"&&typeof A.arrayBuffer==="function"&&typeof A.type==="string"&&typeof A.stream==="function"&&(A[Symbol.toStringTag]==="Blob"||A[Symbol.toStringTag]==="File")}Kw.exports={isBlob:lGB,isValidStatusCode:cGB,isValidUTF8:Am,tokenChars:dGB};if(KKA)Kw.exports.isValidUTF8=function(A){return A.length<24?Am(A):KKA(A)};else if(!process.env.WS_NO_UTF_8_VALIDATE)try{let A=(()=>{throw new Error("Cannot require module "+"utf-8-validate");})();Kw.exports.isValidUTF8=function(Q){return Q.length<32?Am(Q):A(Q)}}catch(A){}});var Bm=R((FIY,NKA)=>{var{Writable:pGB}=u("stream"),VKA=MD(),{BINARY_TYPES:iGB,EMPTY_BUFFER:IKA,kStatusCode:nGB,kWebSocket:sGB}=hG(),{concat:Qm,toArrayBuffer:rGB,unmask:aGB}=LD(),{isValidStatusCode:oGB,isValidUTF8:HKA}=GE(),Vw=Buffer[Symbol.species];class DKA extends pGB{constructor(A={}){super();this._allowSynchronousEvents=A.allowSynchronousEvents!==void 0?A.allowSynchronousEvents:!0,this._binaryType=A.binaryType||iGB[0],this._extensions=A.extensions||{},this._isServer=!!A.isServer,this._maxPayload=A.maxPayload|0,this._skipUTF8Validation=!!A.skipUTF8Validation,this[sGB]=void 0,this._bufferedBytes=0,this._buffers=[],this._compressed=!1,this._payloadLength=0,this._mask=void 0,this._fragmented=0,this._masked=!1,this._fin=!1,this._opcode=0,this._totalPayloadLength=0,this._messageLength=0,this._fragments=[],this._errored=!1,this._loop=!1,this._state=0}_write(A,Q,B){if(this._opcode===8&&this._state==0)return B();this._bufferedBytes+=A.length,this._buffers.push(A),this.startLoop(B)}consume(A){if(this._bufferedBytes-=A,A===this._buffers[0].length)return this._buffers.shift();if(A=B.length)Q.set(this._buffers.shift(),Y);else Q.set(new Uint8Array(B.buffer,B.byteOffset,A),Y),this._buffers[0]=new Vw(B.buffer,B.byteOffset+A,B.length-A);A-=B.length}while(A>0);return Q}startLoop(A){this._loop=!0;do switch(this._state){case 0:this.getInfo(A);break;case 1:this.getPayloadLength16(A);break;case 2:this.getPayloadLength64(A);break;case 3:this.getMask();break;case 4:this.getData(A);break;case 5:case 6:this._loop=!1;return}while(this._loop);if(!this._errored)A()}getInfo(A){if(this._bufferedBytes<2){this._loop=!1;return}let Q=this.consume(2);if((Q[0]&48)!==0){let Y=this.createError(RangeError,"RSV2 and RSV3 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_2_3");A(Y);return}let B=(Q[0]&64)===64;if(B&&!this._extensions[VKA.extensionName]){let Y=this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");A(Y);return}if(this._fin=(Q[0]&128)===128,this._opcode=Q[0]&15,this._payloadLength=Q[1]&127,this._opcode===0){if(B){let Y=this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");A(Y);return}if(!this._fragmented){let Y=this.createError(RangeError,"invalid opcode 0",!0,1002,"WS_ERR_INVALID_OPCODE");A(Y);return}this._opcode=this._fragmented}else if(this._opcode===1||this._opcode===2){if(this._fragmented){let Y=this.createError(RangeError,`invalid opcode ${this._opcode}`,!0,1002,"WS_ERR_INVALID_OPCODE");A(Y);return}this._compressed=B}else if(this._opcode>7&&this._opcode<11){if(!this._fin){let Y=this.createError(RangeError,"FIN must be set",!0,1002,"WS_ERR_EXPECTED_FIN");A(Y);return}if(B){let Y=this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");A(Y);return}if(this._payloadLength>125||this._opcode===8&&this._payloadLength===1){let Y=this.createError(RangeError,`invalid payload length ${this._payloadLength}`,!0,1002,"WS_ERR_INVALID_CONTROL_PAYLOAD_LENGTH");A(Y);return}}else{let Y=this.createError(RangeError,`invalid opcode ${this._opcode}`,!0,1002,"WS_ERR_INVALID_OPCODE");A(Y);return}if(!this._fin&&!this._fragmented)this._fragmented=this._opcode;if(this._masked=(Q[1]&128)===128,this._isServer){if(!this._masked){let Y=this.createError(RangeError,"MASK must be set",!0,1002,"WS_ERR_EXPECTED_MASK");A(Y);return}}else if(this._masked){let Y=this.createError(RangeError,"MASK must be clear",!0,1002,"WS_ERR_UNEXPECTED_MASK");A(Y);return}if(this._payloadLength===126)this._state=1;else if(this._payloadLength===127)this._state=2;else this.haveLength(A)}getPayloadLength16(A){if(this._bufferedBytes<2){this._loop=!1;return}this._payloadLength=this.consume(2).readUInt16BE(0),this.haveLength(A)}getPayloadLength64(A){if(this._bufferedBytes<8){this._loop=!1;return}let Q=this.consume(8),B=Q.readUInt32BE(0);if(B>Math.pow(2,21)-1){let Y=this.createError(RangeError,"Unsupported WebSocket frame: payload length > 2^53 - 1",!1,1009,"WS_ERR_UNSUPPORTED_DATA_PAYLOAD_LENGTH");A(Y);return}this._payloadLength=B*Math.pow(2,32)+Q.readUInt32BE(4),this.haveLength(A)}haveLength(A){if(this._payloadLength&&this._opcode<8){if(this._totalPayloadLength+=this._payloadLength,this._totalPayloadLength>this._maxPayload&&this._maxPayload>0){let Q=this.createError(RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH");A(Q);return}}if(this._masked)this._state=3;else this._state=4}getMask(){if(this._bufferedBytes<4){this._loop=!1;return}this._mask=this.consume(4),this._state=4}getData(A){let Q=IKA;if(this._payloadLength){if(this._bufferedBytes7){this.controlMessage(Q,A);return}if(this._compressed){this._state=5,this.decompress(Q,A);return}if(Q.length)this._messageLength=this._totalPayloadLength,this._fragments.push(Q);this.dataMessage(A)}decompress(A,Q){this._extensions[VKA.extensionName].decompress(A,this._fin,(Y,J)=>{if(Y)return Q(Y);if(J.length){if(this._messageLength+=J.length,this._messageLength>this._maxPayload&&this._maxPayload>0){let C=this.createError(RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH");Q(C);return}this._fragments.push(J)}if(this.dataMessage(Q),this._state===0)this.startLoop(Q)})}dataMessage(A){if(!this._fin){this._state=0;return}let Q=this._messageLength,B=this._fragments;if(this._totalPayloadLength=0,this._messageLength=0,this._fragmented=0,this._fragments=[],this._opcode===2){let Y;if(this._binaryType==="nodebuffer")Y=Qm(B,Q);else if(this._binaryType==="arraybuffer")Y=rGB(Qm(B,Q));else if(this._binaryType==="blob")Y=new Blob(B);else Y=B;if(this._allowSynchronousEvents)this.emit("message",Y,!0),this._state=0;else this._state=6,setImmediate(()=>{this.emit("message",Y,!0),this._state=0,this.startLoop(A)})}else{let Y=Qm(B,Q);if(!this._skipUTF8Validation&&!HKA(Y)){let J=this.createError(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8");A(J);return}if(this._state===5||this._allowSynchronousEvents)this.emit("message",Y,!1),this._state=0;else this._state=6,setImmediate(()=>{this.emit("message",Y,!1),this._state=0,this.startLoop(A)})}}controlMessage(A,Q){if(this._opcode===8){if(A.length===0)this._loop=!1,this.emit("conclude",1005,IKA),this.end();else{let B=A.readUInt16BE(0);if(!oGB(B)){let J=this.createError(RangeError,`invalid status code ${B}`,!0,1002,"WS_ERR_INVALID_CLOSE_CODE");Q(J);return}let Y=new Vw(A.buffer,A.byteOffset+2,A.length-2);if(!this._skipUTF8Validation&&!HKA(Y)){let J=this.createError(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8");Q(J);return}this._loop=!1,this.emit("conclude",B,Y),this.end()}this._state=0;return}if(this._allowSynchronousEvents)this.emit(this._opcode===9?"ping":"pong",A),this._state=0;else this._state=6,setImmediate(()=>{this.emit(this._opcode===9?"ping":"pong",A),this._state=0,this.startLoop(Q)})}createError(A,Q,B,Y,J){this._loop=!1,this._errored=!0;let C=new A(B?`Invalid WebSocket frame: ${Q}`:Q);return Error.captureStackTrace(C,this.createError),C.code=J,C[nGB]=Y,C}}NKA.exports=DKA});var Jm=R((ZIY,MKA)=>{var{Duplex:WIY}=u("stream"),{randomFillSync:tGB}=u("crypto"),LKA=MD(),{EMPTY_BUFFER:eGB,kWebSocket:A6B,NOOP:Q6B}=hG(),{isBlob:FE,isValidStatusCode:B6B}=GE(),{mask:qKA,toBuffer:GZ}=LD(),H5=Symbol("kByteLength"),Y6B=Buffer.alloc(4),FZ,WE=8192,xC=0,J6B=1,C6B=2;class g7{constructor(A,Q,B){if(this._extensions=Q||{},B)this._generateMask=B,this._maskBuffer=Buffer.alloc(4);this._socket=A,this._firstFragment=!0,this._compress=!1,this._bufferedBytes=0,this._queue=[],this._state=xC,this.onerror=Q6B,this[A6B]=void 0}static frame(A,Q){let B,Y=!1,J=2,C=!1;if(Q.mask){if(B=Q.maskBuffer||Y6B,Q.generateMask)Q.generateMask(B);else{if(WE===8192){if(FZ===void 0)FZ=Buffer.alloc(8192);tGB(FZ,0,8192),WE=0}B[0]=FZ[WE++],B[1]=FZ[WE++],B[2]=FZ[WE++],B[3]=FZ[WE++]}C=(B[0]|B[1]|B[2]|B[3])===0,J=6}let X;if(typeof A==="string")if((!Q.mask||C)&&Q[H5]!==void 0)X=Q[H5];else A=Buffer.from(A),X=A.length;else X=A.length,Y=Q.mask&&Q.readOnly&&!C;let G=X;if(X>=65536)J+=8,G=127;else if(X>125)J+=2,G=126;let F=Buffer.allocUnsafe(Y?X+J:J);if(F[0]=Q.fin?Q.opcode|128:Q.opcode,Q.rsv1)F[0]|=64;if(F[1]=G,G===126)F.writeUInt16BE(X,2);else if(G===127)F[2]=F[3]=0,F.writeUIntBE(X,4,6);if(!Q.mask)return[F,A];if(F[1]|=128,F[J-4]=B[0],F[J-3]=B[1],F[J-2]=B[2],F[J-1]=B[3],C)return[F,A];if(Y)return qKA(A,B,F,J,X),[F];return qKA(A,B,A,0,X),[F,A]}close(A,Q,B,Y){let J;if(A===void 0)J=eGB;else if(typeof A!=="number"||!B6B(A))throw TypeError("First argument must be a valid error code number");else if(Q===void 0||!Q.length)J=Buffer.allocUnsafe(2),J.writeUInt16BE(A,0);else{let X=Buffer.byteLength(Q);if(X>123)throw RangeError("The message must not be greater than 123 bytes");if(J=Buffer.allocUnsafe(2+X),J.writeUInt16BE(A,0),typeof Q==="string")J.write(Q,2);else J.set(Q,2)}let C={[H5]:J.length,fin:!0,generateMask:this._generateMask,mask:B,maskBuffer:this._maskBuffer,opcode:8,readOnly:!1,rsv1:!1};if(this._state!==xC)this.enqueue([this.dispatch,J,!1,C,Y]);else this.sendFrame(g7.frame(J,C),Y)}ping(A,Q,B){let Y,J;if(typeof A==="string")Y=Buffer.byteLength(A),J=!1;else if(FE(A))Y=A.size,J=!1;else A=GZ(A),Y=A.length,J=GZ.readOnly;if(Y>125)throw RangeError("The data size must not be greater than 125 bytes");let C={[H5]:Y,fin:!0,generateMask:this._generateMask,mask:Q,maskBuffer:this._maskBuffer,opcode:9,readOnly:J,rsv1:!1};if(FE(A))if(this._state!==xC)this.enqueue([this.getBlobData,A,!1,C,B]);else this.getBlobData(A,!1,C,B);else if(this._state!==xC)this.enqueue([this.dispatch,A,!1,C,B]);else this.sendFrame(g7.frame(A,C),B)}pong(A,Q,B){let Y,J;if(typeof A==="string")Y=Buffer.byteLength(A),J=!1;else if(FE(A))Y=A.size,J=!1;else A=GZ(A),Y=A.length,J=GZ.readOnly;if(Y>125)throw RangeError("The data size must not be greater than 125 bytes");let C={[H5]:Y,fin:!0,generateMask:this._generateMask,mask:Q,maskBuffer:this._maskBuffer,opcode:10,readOnly:J,rsv1:!1};if(FE(A))if(this._state!==xC)this.enqueue([this.getBlobData,A,!1,C,B]);else this.getBlobData(A,!1,C,B);else if(this._state!==xC)this.enqueue([this.dispatch,A,!1,C,B]);else this.sendFrame(g7.frame(A,C),B)}send(A,Q,B){let Y=this._extensions[LKA.extensionName],J=Q.binary?2:1,C=Q.compress,X,G;if(typeof A==="string")X=Buffer.byteLength(A),G=!1;else if(FE(A))X=A.size,G=!1;else A=GZ(A),X=A.length,G=GZ.readOnly;if(this._firstFragment){if(this._firstFragment=!1,C&&Y&&Y.params[Y._isServer?"server_no_context_takeover":"client_no_context_takeover"])C=X>=Y._threshold;this._compress=C}else C=!1,J=0;if(Q.fin)this._firstFragment=!0;let F={[H5]:X,fin:Q.fin,generateMask:this._generateMask,mask:Q.mask,maskBuffer:this._maskBuffer,opcode:J,readOnly:G,rsv1:C};if(FE(A))if(this._state!==xC)this.enqueue([this.getBlobData,A,this._compress,F,B]);else this.getBlobData(A,this._compress,F,B);else if(this._state!==xC)this.enqueue([this.dispatch,A,this._compress,F,B]);else this.dispatch(A,this._compress,F,B)}getBlobData(A,Q,B,Y){this._bufferedBytes+=B[H5],this._state=C6B,A.arrayBuffer().then((J)=>{if(this._socket.destroyed){let X=Error("The socket was closed while the blob was being read");process.nextTick(Ym,this,X,Y);return}this._bufferedBytes-=B[H5];let C=GZ(J);if(!Q)this._state=xC,this.sendFrame(g7.frame(C,B),Y),this.dequeue();else this.dispatch(C,Q,B,Y)}).catch((J)=>{process.nextTick(X6B,this,J,Y)})}dispatch(A,Q,B,Y){if(!Q){this.sendFrame(g7.frame(A,B),Y);return}let J=this._extensions[LKA.extensionName];this._bufferedBytes+=B[H5],this._state=J6B,J.compress(A,B.fin,(C,X)=>{if(this._socket.destroyed){let G=Error("The socket was closed while data was being compressed");Ym(this,G,Y);return}this._bufferedBytes-=B[H5],this._state=xC,B.readOnly=!1,this.sendFrame(g7.frame(X,B),Y),this.dequeue()})}dequeue(){while(this._state===xC&&this._queue.length){let A=this._queue.shift();this._bufferedBytes-=A[3][H5],Reflect.apply(A[0],this,A.slice(1))}}enqueue(A){this._bufferedBytes+=A[3][H5],this._queue.push(A)}sendFrame(A,Q){if(A.length===2)this._socket.cork(),this._socket.write(A[0]),this._socket.write(A[1],Q),this._socket.uncork();else this._socket.write(A[0],Q)}}MKA.exports=g7;function Ym(A,Q,B){if(typeof B==="function")B(Q);for(let Y=0;Y{var{kForOnEventAttribute:zD,kListener:Cm}=hG(),zKA=Symbol("kCode"),RKA=Symbol("kData"),wKA=Symbol("kError"),jKA=Symbol("kMessage"),OKA=Symbol("kReason"),ZE=Symbol("kTarget"),PKA=Symbol("kType"),TKA=Symbol("kWasClean");class h7{constructor(A){this[ZE]=null,this[PKA]=A}get target(){return this[ZE]}get type(){return this[PKA]}}Object.defineProperty(h7.prototype,"target",{enumerable:!0});Object.defineProperty(h7.prototype,"type",{enumerable:!0});class $E extends h7{constructor(A,Q={}){super(A);this[zKA]=Q.code===void 0?0:Q.code,this[OKA]=Q.reason===void 0?"":Q.reason,this[TKA]=Q.wasClean===void 0?!1:Q.wasClean}get code(){return this[zKA]}get reason(){return this[OKA]}get wasClean(){return this[TKA]}}Object.defineProperty($E.prototype,"code",{enumerable:!0});Object.defineProperty($E.prototype,"reason",{enumerable:!0});Object.defineProperty($E.prototype,"wasClean",{enumerable:!0});class RD extends h7{constructor(A,Q={}){super(A);this[wKA]=Q.error===void 0?null:Q.error,this[jKA]=Q.message===void 0?"":Q.message}get error(){return this[wKA]}get message(){return this[jKA]}}Object.defineProperty(RD.prototype,"error",{enumerable:!0});Object.defineProperty(RD.prototype,"message",{enumerable:!0});class Hw extends h7{constructor(A,Q={}){super(A);this[RKA]=Q.data===void 0?null:Q.data}get data(){return this[RKA]}}Object.defineProperty(Hw.prototype,"data",{enumerable:!0});var G6B={addEventListener(A,Q,B={}){for(let J of this.listeners(A))if(!B[zD]&&J[Cm]===Q&&!J[zD])return;let Y;if(A==="message")Y=function(C,X){let G=new Hw("message",{data:X?C:C.toString()});G[ZE]=this,Iw(Q,this,G)};else if(A==="close")Y=function(C,X){let G=new $E("close",{code:C,reason:X.toString(),wasClean:this._closeFrameReceived&&this._closeFrameSent});G[ZE]=this,Iw(Q,this,G)};else if(A==="error")Y=function(C){let X=new RD("error",{error:C,message:C.message});X[ZE]=this,Iw(Q,this,X)};else if(A==="open")Y=function(){let C=new h7("open");C[ZE]=this,Iw(Q,this,C)};else return;if(Y[zD]=!!B[zD],Y[Cm]=Q,B.once)this.once(A,Y);else this.on(A,Y)},removeEventListener(A,Q){for(let B of this.listeners(A))if(B[Cm]===Q&&!B[zD]){this.removeListener(A,B);break}}};SKA.exports={CloseEvent:$E,ErrorEvent:RD,Event:h7,EventTarget:G6B,MessageEvent:Hw};function Iw(A,Q,B){if(typeof A==="object"&&A.handleEvent)A.handleEvent.call(A,B);else A.call(Q,B)}});var Xm=R((UIY,_KA)=>{var{tokenChars:wD}=GE();function p1(A,Q,B){if(A[Q]===void 0)A[Q]=[B];else A[Q].push(B)}function F6B(A){let Q=Object.create(null),B=Object.create(null),Y=!1,J=!1,C=!1,X,G,F=-1,W=-1,Z=-1,U=0;for(;U{let B=A[Q];if(!Array.isArray(B))B=[B];return B.map((Y)=>{return[Q].concat(Object.keys(Y).map((J)=>{let C=Y[J];if(!Array.isArray(C))C=[C];return C.map((X)=>X===!0?J:`${J}=${X}`).join("; ")})).join("; ")}).join(", ")}).join(", ")}_KA.exports={format:W6B,parse:F6B}});var qw=R((VIY,lKA)=>{var Z6B=u("events"),$6B=u("https"),U6B=u("http"),gKA=u("net"),E6B=u("tls"),{randomBytes:K6B,createHash:V6B}=u("crypto"),{Duplex:EIY,Readable:KIY}=u("stream"),{URL:Gm}=u("url"),x7=MD(),I6B=Bm(),H6B=Jm(),{isBlob:D6B}=GE(),{BINARY_TYPES:vKA,EMPTY_BUFFER:Dw,GUID:N6B,kForOnEventAttribute:Fm,kListener:L6B,kStatusCode:q6B,kWebSocket:dY,NOOP:hKA}=hG(),{EventTarget:{addEventListener:M6B,removeEventListener:z6B}}=kKA(),{format:R6B,parse:w6B}=Xm(),{toBuffer:j6B}=LD(),xKA=Symbol("kAborted"),Wm=[8,13],fG=["CONNECTING","OPEN","CLOSING","CLOSED"],O6B=/^[!#$%&'*+\-.0-9A-Z^_`|a-z~]+$/;class xQ extends Z6B{constructor(A,Q,B){super();if(this._binaryType=vKA[0],this._closeCode=1006,this._closeFrameReceived=!1,this._closeFrameSent=!1,this._closeMessage=Dw,this._closeTimer=null,this._errorEmitted=!1,this._extensions={},this._paused=!1,this._protocol="",this._readyState=xQ.CONNECTING,this._receiver=null,this._sender=null,this._socket=null,A!==null){if(this._bufferedAmount=0,this._isServer=!1,this._redirects=0,Q===void 0)Q=[];else if(!Array.isArray(Q))if(typeof Q==="object"&&Q!==null)B=Q,Q=[];else Q=[Q];fKA(this,A,Q,B)}else this._autoPong=B.autoPong,this._isServer=!0}get binaryType(){return this._binaryType}set binaryType(A){if(!vKA.includes(A))return;if(this._binaryType=A,this._receiver)this._receiver._binaryType=A}get bufferedAmount(){if(!this._socket)return this._bufferedAmount;return this._socket._writableState.length+this._sender._bufferedBytes}get extensions(){return Object.keys(this._extensions).join()}get isPaused(){return this._paused}get onclose(){return null}get onerror(){return null}get onopen(){return null}get onmessage(){return null}get protocol(){return this._protocol}get readyState(){return this._readyState}get url(){return this._url}setSocket(A,Q,B){let Y=new I6B({allowSynchronousEvents:B.allowSynchronousEvents,binaryType:this.binaryType,extensions:this._extensions,isServer:this._isServer,maxPayload:B.maxPayload,skipUTF8Validation:B.skipUTF8Validation}),J=new H6B(A,this._extensions,B.generateMask);if(this._receiver=Y,this._sender=J,this._socket=A,Y[dY]=this,J[dY]=this,A[dY]=this,Y.on("conclude",S6B),Y.on("drain",k6B),Y.on("error",_6B),Y.on("message",v6B),Y.on("ping",y6B),Y.on("pong",g6B),J.onerror=h6B,A.setTimeout)A.setTimeout(0);if(A.setNoDelay)A.setNoDelay();if(Q.length>0)A.unshift(Q);A.on("close",uKA),A.on("data",Lw),A.on("end",dKA),A.on("error",cKA),this._readyState=xQ.OPEN,this.emit("open")}emitClose(){if(!this._socket){this._readyState=xQ.CLOSED,this.emit("close",this._closeCode,this._closeMessage);return}if(this._extensions[x7.extensionName])this._extensions[x7.extensionName].cleanup();this._receiver.removeAllListeners(),this._readyState=xQ.CLOSED,this.emit("close",this._closeCode,this._closeMessage)}close(A,Q){if(this.readyState===xQ.CLOSED)return;if(this.readyState===xQ.CONNECTING){N8(this,this._req,"WebSocket was closed before the connection was established");return}if(this.readyState===xQ.CLOSING){if(this._closeFrameSent&&(this._closeFrameReceived||this._receiver._writableState.errorEmitted))this._socket.end();return}this._readyState=xQ.CLOSING,this._sender.close(A,Q,!this._isServer,(B)=>{if(B)return;if(this._closeFrameSent=!0,this._closeFrameReceived||this._receiver._writableState.errorEmitted)this._socket.end()}),mKA(this)}pause(){if(this.readyState===xQ.CONNECTING||this.readyState===xQ.CLOSED)return;this._paused=!0,this._socket.pause()}ping(A,Q,B){if(this.readyState===xQ.CONNECTING)throw Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof A==="function")B=A,A=Q=void 0;else if(typeof Q==="function")B=Q,Q=void 0;if(typeof A==="number")A=A.toString();if(this.readyState!==xQ.OPEN){Zm(this,A,B);return}if(Q===void 0)Q=!this._isServer;this._sender.ping(A||Dw,Q,B)}pong(A,Q,B){if(this.readyState===xQ.CONNECTING)throw Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof A==="function")B=A,A=Q=void 0;else if(typeof Q==="function")B=Q,Q=void 0;if(typeof A==="number")A=A.toString();if(this.readyState!==xQ.OPEN){Zm(this,A,B);return}if(Q===void 0)Q=!this._isServer;this._sender.pong(A||Dw,Q,B)}resume(){if(this.readyState===xQ.CONNECTING||this.readyState===xQ.CLOSED)return;if(this._paused=!1,!this._receiver._writableState.needDrain)this._socket.resume()}send(A,Q,B){if(this.readyState===xQ.CONNECTING)throw Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof Q==="function")B=Q,Q={};if(typeof A==="number")A=A.toString();if(this.readyState!==xQ.OPEN){Zm(this,A,B);return}let Y={binary:typeof A!=="string",mask:!this._isServer,compress:!0,fin:!0,...Q};if(!this._extensions[x7.extensionName])Y.compress=!1;this._sender.send(A||Dw,Y,B)}terminate(){if(this.readyState===xQ.CLOSED)return;if(this.readyState===xQ.CONNECTING){N8(this,this._req,"WebSocket was closed before the connection was established");return}if(this._socket)this._readyState=xQ.CLOSING,this._socket.destroy()}}Object.defineProperty(xQ,"CONNECTING",{enumerable:!0,value:fG.indexOf("CONNECTING")});Object.defineProperty(xQ.prototype,"CONNECTING",{enumerable:!0,value:fG.indexOf("CONNECTING")});Object.defineProperty(xQ,"OPEN",{enumerable:!0,value:fG.indexOf("OPEN")});Object.defineProperty(xQ.prototype,"OPEN",{enumerable:!0,value:fG.indexOf("OPEN")});Object.defineProperty(xQ,"CLOSING",{enumerable:!0,value:fG.indexOf("CLOSING")});Object.defineProperty(xQ.prototype,"CLOSING",{enumerable:!0,value:fG.indexOf("CLOSING")});Object.defineProperty(xQ,"CLOSED",{enumerable:!0,value:fG.indexOf("CLOSED")});Object.defineProperty(xQ.prototype,"CLOSED",{enumerable:!0,value:fG.indexOf("CLOSED")});["binaryType","bufferedAmount","extensions","isPaused","protocol","readyState","url"].forEach((A)=>{Object.defineProperty(xQ.prototype,A,{enumerable:!0})});["open","error","close","message"].forEach((A)=>{Object.defineProperty(xQ.prototype,`on${A}`,{enumerable:!0,get(){for(let Q of this.listeners(A))if(Q[Fm])return Q[L6B];return null},set(Q){for(let B of this.listeners(A))if(B[Fm]){this.removeListener(A,B);break}if(typeof Q!=="function")return;this.addEventListener(A,Q,{[Fm]:!0})}})});xQ.prototype.addEventListener=M6B;xQ.prototype.removeEventListener=z6B;lKA.exports=xQ;function fKA(A,Q,B,Y){let J={allowSynchronousEvents:!0,autoPong:!0,protocolVersion:Wm[1],maxPayload:104857600,skipUTF8Validation:!1,perMessageDeflate:!0,followRedirects:!1,maxRedirects:10,...Y,socketPath:void 0,hostname:void 0,protocol:void 0,timeout:void 0,method:"GET",host:void 0,path:void 0,port:void 0};if(A._autoPong=J.autoPong,!Wm.includes(J.protocolVersion))throw RangeError(`Unsupported protocol version: ${J.protocolVersion} (supported versions: ${Wm.join(", ")})`);let C;if(Q instanceof Gm)C=Q;else try{C=new Gm(Q)}catch(I){throw SyntaxError(`Invalid URL: ${Q}`)}if(C.protocol==="http:")C.protocol="ws:";else if(C.protocol==="https:")C.protocol="wss:";A._url=C.href;let X=C.protocol==="wss:",G=C.protocol==="ws+unix:",F;if(C.protocol!=="ws:"&&!X&&!G)F=`The URL's protocol must be one of "ws:", "wss:", "http:", "https:", or "ws+unix:"`;else if(G&&!C.pathname)F="The URL's pathname is empty";else if(C.hash)F="The URL contains a fragment identifier";if(F){let I=SyntaxError(F);if(A._redirects===0)throw I;else{Nw(A,I);return}}let W=X?443:80,Z=K6B(16).toString("base64"),U=X?$6B.request:U6B.request,$=new Set,E;if(J.createConnection=J.createConnection||(X?T6B:P6B),J.defaultPort=J.defaultPort||W,J.port=C.port||W,J.host=C.hostname.startsWith("[")?C.hostname.slice(1,-1):C.hostname,J.headers={...J.headers,"Sec-WebSocket-Version":J.protocolVersion,"Sec-WebSocket-Key":Z,Connection:"Upgrade",Upgrade:"websocket"},J.path=C.pathname+C.search,J.timeout=J.handshakeTimeout,J.perMessageDeflate)E=new x7(J.perMessageDeflate!==!0?J.perMessageDeflate:{},!1,J.maxPayload),J.headers["Sec-WebSocket-Extensions"]=R6B({[x7.extensionName]:E.offer()});if(B.length){for(let I of B){if(typeof I!=="string"||!O6B.test(I)||$.has(I))throw SyntaxError("An invalid or duplicated subprotocol was specified");$.add(I)}J.headers["Sec-WebSocket-Protocol"]=B.join(",")}if(J.origin)if(J.protocolVersion<13)J.headers["Sec-WebSocket-Origin"]=J.origin;else J.headers.Origin=J.origin;if(C.username||C.password)J.auth=`${C.username}:${C.password}`;if(G){let I=J.path.split(":");J.socketPath=I[0],J.path=I[1]}let K;if(J.followRedirects){if(A._redirects===0){A._originalIpc=G,A._originalSecure=X,A._originalHostOrSocketPath=G?J.socketPath:C.host;let I=Y&&Y.headers;if(Y={...Y,headers:{}},I)for(let[V,H]of Object.entries(I))Y.headers[V.toLowerCase()]=H}else if(A.listenerCount("redirect")===0){let I=G?A._originalIpc?J.socketPath===A._originalHostOrSocketPath:!1:A._originalIpc?!1:C.host===A._originalHostOrSocketPath;if(!I||A._originalSecure&&!X){if(delete J.headers.authorization,delete J.headers.cookie,!I)delete J.headers.host;J.auth=void 0}}if(J.auth&&!Y.headers.authorization)Y.headers.authorization="Basic "+Buffer.from(J.auth).toString("base64");if(K=A._req=U(J),A._redirects)A.emit("redirect",A.url,K)}else K=A._req=U(J);if(J.timeout)K.on("timeout",()=>{N8(A,K,"Opening handshake has timed out")});if(K.on("error",(I)=>{if(K===null||K[xKA])return;K=A._req=null,Nw(A,I)}),K.on("response",(I)=>{let V=I.headers.location,H=I.statusCode;if(V&&J.followRedirects&&H>=300&&H<400){if(++A._redirects>J.maxRedirects){N8(A,K,"Maximum redirects exceeded");return}K.abort();let D;try{D=new Gm(V,Q)}catch(L){let z=SyntaxError(`Invalid URL: ${V}`);Nw(A,z);return}fKA(A,D,B,Y)}else if(!A.emit("unexpected-response",K,I))N8(A,K,`Unexpected server response: ${I.statusCode}`)}),K.on("upgrade",(I,V,H)=>{if(A.emit("upgrade",I),A.readyState!==xQ.CONNECTING)return;K=A._req=null;let D=I.headers.upgrade;if(D===void 0||D.toLowerCase()!=="websocket"){N8(A,V,"Invalid Upgrade header");return}let L=V6B("sha1").update(Z+N6B).digest("base64");if(I.headers["sec-websocket-accept"]!==L){N8(A,V,"Invalid Sec-WebSocket-Accept header");return}let z=I.headers["sec-websocket-protocol"],M;if(z!==void 0){if(!$.size)M="Server sent a subprotocol but none was requested";else if(!$.has(z))M="Server sent an invalid subprotocol"}else if($.size)M="Server sent no subprotocol";if(M){N8(A,V,M);return}if(z)A._protocol=z;let N=I.headers["sec-websocket-extensions"];if(N!==void 0){if(!E){N8(A,V,"Server sent a Sec-WebSocket-Extensions header but no extension was requested");return}let q;try{q=w6B(N)}catch(P){N8(A,V,"Invalid Sec-WebSocket-Extensions header");return}let w=Object.keys(q);if(w.length!==1||w[0]!==x7.extensionName){N8(A,V,"Server indicated an extension that was not requested");return}try{E.accept(q[x7.extensionName])}catch(P){N8(A,V,"Invalid Sec-WebSocket-Extensions header");return}A._extensions[x7.extensionName]=E}A.setSocket(V,H,{allowSynchronousEvents:J.allowSynchronousEvents,generateMask:J.generateMask,maxPayload:J.maxPayload,skipUTF8Validation:J.skipUTF8Validation})}),J.finishRequest)J.finishRequest(K,A);else K.end()}function Nw(A,Q){A._readyState=xQ.CLOSING,A._errorEmitted=!0,A.emit("error",Q),A.emitClose()}function P6B(A){return A.path=A.socketPath,gKA.connect(A)}function T6B(A){if(A.path=void 0,!A.servername&&A.servername!=="")A.servername=gKA.isIP(A.host)?"":A.host;return E6B.connect(A)}function N8(A,Q,B){A._readyState=xQ.CLOSING;let Y=Error(B);if(Error.captureStackTrace(Y,N8),Q.setHeader){if(Q[xKA]=!0,Q.abort(),Q.socket&&!Q.socket.destroyed)Q.socket.destroy();process.nextTick(Nw,A,Y)}else Q.destroy(Y),Q.once("error",A.emit.bind(A,"error")),Q.once("close",A.emitClose.bind(A))}function Zm(A,Q,B){if(Q){let Y=D6B(Q)?Q.size:j6B(Q).length;if(A._socket)A._sender._bufferedBytes+=Y;else A._bufferedAmount+=Y}if(B){let Y=Error(`WebSocket is not open: readyState ${A.readyState} (${fG[A.readyState]})`);process.nextTick(B,Y)}}function S6B(A,Q){let B=this[dY];if(B._closeFrameReceived=!0,B._closeMessage=Q,B._closeCode=A,B._socket[dY]===void 0)return;if(B._socket.removeListener("data",Lw),process.nextTick(bKA,B._socket),A===1005)B.close();else B.close(A,Q)}function k6B(){let A=this[dY];if(!A.isPaused)A._socket.resume()}function _6B(A){let Q=this[dY];if(Q._socket[dY]!==void 0)Q._socket.removeListener("data",Lw),process.nextTick(bKA,Q._socket),Q.close(A[q6B]);if(!Q._errorEmitted)Q._errorEmitted=!0,Q.emit("error",A)}function yKA(){this[dY].emitClose()}function v6B(A,Q){this[dY].emit("message",A,Q)}function y6B(A){let Q=this[dY];if(Q._autoPong)Q.pong(A,!this._isServer,hKA);Q.emit("ping",A)}function g6B(A){this[dY].emit("pong",A)}function bKA(A){A.resume()}function h6B(A){let Q=this[dY];if(Q.readyState===xQ.CLOSED)return;if(Q.readyState===xQ.OPEN)Q._readyState=xQ.CLOSING,mKA(Q);if(this._socket.end(),!Q._errorEmitted)Q._errorEmitted=!0,Q.emit("error",A)}function mKA(A){A._closeTimer=setTimeout(A._socket.destroy.bind(A._socket),30000)}function uKA(){let A=this[dY];this.removeListener("close",uKA),this.removeListener("data",Lw),this.removeListener("end",dKA),A._readyState=xQ.CLOSING;let Q;if(!this._readableState.endEmitted&&!A._closeFrameReceived&&!A._receiver._writableState.errorEmitted&&(Q=A._socket.read())!==null)A._receiver.write(Q);if(A._receiver.end(),this[dY]=void 0,clearTimeout(A._closeTimer),A._receiver._writableState.finished||A._receiver._writableState.errorEmitted)A.emitClose();else A._receiver.on("error",yKA),A._receiver.on("finish",yKA)}function Lw(A){if(!this[dY]._receiver.write(A))this.pause()}function dKA(){let A=this[dY];A._readyState=xQ.CLOSING,A._receiver.end(),this.end()}function cKA(){let A=this[dY];if(this.removeListener("error",cKA),this.on("error",hKA),A)A._readyState=xQ.CLOSING,this.destroy()}});var sKA=R((HIY,nKA)=>{var IIY=qw(),{Duplex:x6B}=u("stream");function pKA(A){A.emit("close")}function f6B(){if(!this.destroyed&&this._writableState.finished)this.destroy()}function iKA(A){if(this.removeListener("error",iKA),this.destroy(),this.listenerCount("error")===0)this.emit("error",A)}function b6B(A,Q){let B=!0,Y=new x6B({...Q,autoDestroy:!1,emitClose:!1,objectMode:!1,writableObjectMode:!1});return A.on("message",function(C,X){let G=!X&&Y._readableState.objectMode?C.toString():C;if(!Y.push(G))A.pause()}),A.once("error",function(C){if(Y.destroyed)return;B=!1,Y.destroy(C)}),A.once("close",function(){if(Y.destroyed)return;Y.push(null)}),Y._destroy=function(J,C){if(A.readyState===A.CLOSED){C(J),process.nextTick(pKA,Y);return}let X=!1;if(A.once("error",function(F){X=!0,C(F)}),A.once("close",function(){if(!X)C(J);process.nextTick(pKA,Y)}),B)A.terminate()},Y._final=function(J){if(A.readyState===A.CONNECTING){A.once("open",function(){Y._final(J)});return}if(A._socket===null)return;if(A._socket._writableState.finished){if(J(),Y._readableState.endEmitted)Y.destroy()}else A._socket.once("finish",function(){J()}),A.close()},Y._read=function(){if(A.isPaused)A.resume()},Y._write=function(J,C,X){if(A.readyState===A.CONNECTING){A.once("open",function(){Y._write(J,C,X)});return}A.send(J,X)},Y.on("end",f6B),Y.on("error",iKA),Y}nKA.exports=b6B});var aKA=R((DIY,rKA)=>{var{tokenChars:m6B}=GE();function u6B(A){let Q=new Set,B=-1,Y=-1,J=0;for(J;J{var d6B=u("events"),Mw=u("http"),{Duplex:NIY}=u("stream"),{createHash:c6B}=u("crypto"),oKA=Xm(),WZ=MD(),l6B=aKA(),p6B=qw(),{GUID:i6B,kWebSocket:n6B}=hG(),s6B=/^[+/0-9A-Za-z]{22}==$/;class eKA extends d6B{constructor(A,Q){super();if(A={allowSynchronousEvents:!0,autoPong:!0,maxPayload:104857600,skipUTF8Validation:!1,perMessageDeflate:!1,handleProtocols:null,clientTracking:!0,verifyClient:null,noServer:!1,backlog:null,server:null,host:null,path:null,port:null,WebSocket:p6B,...A},A.port==null&&!A.server&&!A.noServer||A.port!=null&&(A.server||A.noServer)||A.server&&A.noServer)throw TypeError('One and only one of the "port", "server", or "noServer" options must be specified');if(A.port!=null)this._server=Mw.createServer((B,Y)=>{let J=Mw.STATUS_CODES[426];Y.writeHead(426,{"Content-Length":J.length,"Content-Type":"text/plain"}),Y.end(J)}),this._server.listen(A.port,A.host,A.backlog,Q);else if(A.server)this._server=A.server;if(this._server){let B=this.emit.bind(this,"connection");this._removeListeners=r6B(this._server,{listening:this.emit.bind(this,"listening"),error:this.emit.bind(this,"error"),upgrade:(Y,J,C)=>{this.handleUpgrade(Y,J,C,B)}})}if(A.perMessageDeflate===!0)A.perMessageDeflate={};if(A.clientTracking)this.clients=new Set,this._shouldEmitClose=!1;this.options=A,this._state=0}address(){if(this.options.noServer)throw Error('The server is operating in "noServer" mode');if(!this._server)return null;return this._server.address()}close(A){if(this._state===2){if(A)this.once("close",()=>{A(Error("The server is not running"))});process.nextTick(jD,this);return}if(A)this.once("close",A);if(this._state===1)return;if(this._state=1,this.options.noServer||this.options.server){if(this._server)this._removeListeners(),this._removeListeners=this._server=null;if(this.clients)if(!this.clients.size)process.nextTick(jD,this);else this._shouldEmitClose=!0;else process.nextTick(jD,this)}else{let Q=this._server;this._removeListeners(),this._removeListeners=this._server=null,Q.close(()=>{jD(this)})}}shouldHandle(A){if(this.options.path){let Q=A.url.indexOf("?");if((Q!==-1?A.url.slice(0,Q):A.url)!==this.options.path)return!1}return!0}handleUpgrade(A,Q,B,Y){Q.on("error",tKA);let J=A.headers["sec-websocket-key"],C=A.headers.upgrade,X=+A.headers["sec-websocket-version"];if(A.method!=="GET"){ZZ(this,A,Q,405,"Invalid HTTP method");return}if(C===void 0||C.toLowerCase()!=="websocket"){ZZ(this,A,Q,400,"Invalid Upgrade header");return}if(J===void 0||!s6B.test(J)){ZZ(this,A,Q,400,"Missing or invalid Sec-WebSocket-Key header");return}if(X!==13&&X!==8){ZZ(this,A,Q,400,"Missing or invalid Sec-WebSocket-Version header",{"Sec-WebSocket-Version":"13, 8"});return}if(!this.shouldHandle(A)){OD(Q,400);return}let G=A.headers["sec-websocket-protocol"],F=new Set;if(G!==void 0)try{F=l6B.parse(G)}catch(U){ZZ(this,A,Q,400,"Invalid Sec-WebSocket-Protocol header");return}let W=A.headers["sec-websocket-extensions"],Z={};if(this.options.perMessageDeflate&&W!==void 0){let U=new WZ(this.options.perMessageDeflate,!0,this.options.maxPayload);try{let $=oKA.parse(W);if($[WZ.extensionName])U.accept($[WZ.extensionName]),Z[WZ.extensionName]=U}catch($){ZZ(this,A,Q,400,"Invalid or unacceptable Sec-WebSocket-Extensions header");return}}if(this.options.verifyClient){let U={origin:A.headers[`${X===8?"sec-websocket-origin":"origin"}`],secure:!!(A.socket.authorized||A.socket.encrypted),req:A};if(this.options.verifyClient.length===2){this.options.verifyClient(U,($,E,K,I)=>{if(!$)return OD(Q,E||401,K,I);this.completeUpgrade(Z,J,F,A,Q,B,Y)});return}if(!this.options.verifyClient(U))return OD(Q,401)}this.completeUpgrade(Z,J,F,A,Q,B,Y)}completeUpgrade(A,Q,B,Y,J,C,X){if(!J.readable||!J.writable)return J.destroy();if(J[n6B])throw Error("server.handleUpgrade() was called more than once with the same socket, possibly due to a misconfiguration");if(this._state>0)return OD(J,503);let F=["HTTP/1.1 101 Switching Protocols","Upgrade: websocket","Connection: Upgrade",`Sec-WebSocket-Accept: ${c6B("sha1").update(Q+i6B).digest("base64")}`],W=new this.options.WebSocket(null,void 0,this.options);if(B.size){let Z=this.options.handleProtocols?this.options.handleProtocols(B,Y):B.values().next().value;if(Z)F.push(`Sec-WebSocket-Protocol: ${Z}`),W._protocol=Z}if(A[WZ.extensionName]){let Z=A[WZ.extensionName].params,U=oKA.format({[WZ.extensionName]:[Z]});F.push(`Sec-WebSocket-Extensions: ${U}`),W._extensions=A}if(this.emit("headers",F,Y),J.write(F.concat(`\r + deps: ${B}}`};var p1B={keyword:"dependencies",type:"object",schemaType:"object",error:DUA.error,code(A){let[Q,B]=i1B(A);IUA(A,Q),HUA(A,B)}};function i1B({schema:A}){let Q={},B={};for(let Y in A){if(Y==="__proto__")continue;let J=Array.isArray(A[Y])?Q:B;J[Y]=A[Y]}return[Q,B]}function IUA(A,Q=A.schema){let{gen:B,data:Y,it:J}=A;if(Object.keys(Q).length===0)return;let C=B.let("missing");for(let X in Q){let G=Q[X];if(G.length===0)continue;let F=(0,ND.propertyInData)(B,Y,X,J.opts.ownProperties);if(A.setParams({property:X,depsCount:G.length,deps:G.join(", ")}),J.allErrors)B.if(F,()=>{for(let W of G)(0,ND.checkReportMissingProp)(A,W)});else B.if($b._`${F} && (${(0,ND.checkMissingProp)(A,G,C)})`),(0,ND.reportMissingProp)(A,C),B.else()}}DUA.validatePropertyDeps=IUA;function HUA(A,Q=A.schema){let{gen:B,data:Y,keyword:J,it:C}=A,X=B.name("valid");for(let G in Q){if((0,l1B.alwaysValidSchema)(C,Q[G]))continue;B.if((0,ND.propertyInData)(B,Y,G,C.opts.ownProperties),()=>{let F=A.subschema({keyword:J,schemaProp:G},X);A.mergeValidEvaluated(F,X)},()=>B.var(X,!0)),A.ok(X)}}DUA.validateSchemaDeps=HUA;DUA.default=p1B});var RUA=R((zUA)=>{Object.defineProperty(zUA,"__esModule",{value:!0});var MUA=GB(),r1B=wB(),a1B={message:"property name must be valid",params:({params:A})=>MUA._`{propertyName: ${A.propertyName}}`},o1B={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:a1B,code(A){let{gen:Q,schema:B,data:Y,it:J}=A;if((0,r1B.alwaysValidSchema)(J,B))return;let C=Q.name("valid");Q.forIn("key",Y,(X)=>{A.setParams({propertyName:X}),A.subschema({keyword:"propertyNames",data:X,dataTypes:["string"],propertyName:X,compositeRule:!0},C),Q.if((0,MUA.not)(C),()=>{if(A.error(!0),!J.allErrors)Q.break()})}),A.ok(C)}};zUA.default=o1B});var Ub=R((wUA)=>{Object.defineProperty(wUA,"__esModule",{value:!0});var Cw=I5(),xC=GB(),e1B=vX(),Xw=wB(),A6B={message:"must NOT have additional properties",params:({params:A})=>xC._`{additionalProperty: ${A.additionalProperty}}`},Q6B={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:A6B,code(A){let{gen:Q,schema:B,parentSchema:Y,data:J,errsCount:C,it:X}=A;if(!C)throw Error("ajv implementation error");let{allErrors:G,opts:F}=X;if(X.props=!0,F.removeAdditional!=="all"&&(0,Xw.alwaysValidSchema)(X,B))return;let W=(0,Cw.allSchemaProperties)(Y.properties),Z=(0,Cw.allSchemaProperties)(Y.patternProperties);U(),A.ok(xC._`${C} === ${e1B.default.errors}`);function U(){Q.forIn("key",J,(V)=>{if(!W.length&&!Z.length)K(V);else Q.if($(V),()=>K(V))})}function $(V){let H;if(W.length>8){let D=(0,Xw.schemaRefOrVal)(X,Y.properties,"properties");H=(0,Cw.isOwnProperty)(Q,D,V)}else if(W.length)H=(0,xC.or)(...W.map((D)=>xC._`${V} === ${D}`));else H=xC.nil;if(Z.length)H=(0,xC.or)(H,...Z.map((D)=>xC._`${(0,Cw.usePattern)(A,D)}.test(${V})`));return(0,xC.not)(H)}function E(V){Q.code(xC._`delete ${J}[${V}]`)}function K(V){if(F.removeAdditional==="all"||F.removeAdditional&&B===!1){E(V);return}if(B===!1){if(A.setParams({additionalProperty:V}),A.error(),!G)Q.break();return}if(typeof B=="object"&&!(0,Xw.alwaysValidSchema)(X,B)){let H=Q.name("valid");if(F.removeAdditional==="failing")I(V,H,!1),Q.if((0,xC.not)(H),()=>{A.reset(),E(V)});else if(I(V,H),!G)Q.if((0,xC.not)(H),()=>Q.break())}}function I(V,H,D){let L={keyword:"additionalProperties",dataProp:V,dataPropType:Xw.Type.Str};if(D===!1)Object.assign(L,{compositeRule:!0,createErrors:!1,allErrors:!1});A.subschema(L,H)}}};wUA.default=Q6B});var TUA=R((PUA)=>{Object.defineProperty(PUA,"__esModule",{value:!0});var Y6B=GD(),jUA=I5(),Eb=wB(),OUA=Ub(),J6B={keyword:"properties",type:"object",schemaType:"object",code(A){let{gen:Q,schema:B,parentSchema:Y,data:J,it:C}=A;if(C.opts.removeAdditional==="all"&&Y.additionalProperties===void 0)OUA.default.code(new Y6B.KeywordCxt(C,OUA.default,"additionalProperties"));let X=(0,jUA.allSchemaProperties)(B);for(let U of X)C.definedProperties.add(U);if(C.opts.unevaluated&&X.length&&C.props!==!0)C.props=Eb.mergeEvaluated.props(Q,(0,Eb.toHash)(X),C.props);let G=X.filter((U)=>!(0,Eb.alwaysValidSchema)(C,B[U]));if(G.length===0)return;let F=Q.name("valid");for(let U of G){if(W(U))Z(U);else{if(Q.if((0,jUA.propertyInData)(Q,J,U,C.opts.ownProperties)),Z(U),!C.allErrors)Q.else().var(F,!0);Q.endIf()}A.it.definedProperties.add(U),A.ok(F)}function W(U){return C.opts.useDefaults&&!C.compositeRule&&B[U].default!==void 0}function Z(U){A.subschema({keyword:"properties",schemaProp:U,dataProp:U},F)}}};PUA.default=J6B});var yUA=R((vUA)=>{Object.defineProperty(vUA,"__esModule",{value:!0});var SUA=I5(),Gw=GB(),kUA=wB(),_UA=wB(),X6B={keyword:"patternProperties",type:"object",schemaType:"object",code(A){let{gen:Q,schema:B,data:Y,parentSchema:J,it:C}=A,{opts:X}=C,G=(0,SUA.allSchemaProperties)(B),F=G.filter((I)=>(0,kUA.alwaysValidSchema)(C,B[I]));if(G.length===0||F.length===G.length&&(!C.opts.unevaluated||C.props===!0))return;let W=X.strictSchema&&!X.allowMatchingProperties&&J.properties,Z=Q.name("valid");if(C.props!==!0&&!(C.props instanceof Gw.Name))C.props=(0,_UA.evaluatedPropsToName)(Q,C.props);let{props:U}=C;$();function $(){for(let I of G){if(W)E(I);if(C.allErrors)K(I);else Q.var(Z,!0),K(I),Q.if(Z)}}function E(I){for(let V in W)if(new RegExp(I).test(V))(0,kUA.checkStrictMode)(C,`property ${V} matches pattern ${I} (use allowMatchingProperties)`)}function K(I){Q.forIn("key",Y,(V)=>{Q.if(Gw._`${(0,SUA.usePattern)(A,I)}.test(${V})`,()=>{let H=F.includes(I);if(!H)A.subschema({keyword:"patternProperties",schemaProp:I,dataProp:V,dataPropType:_UA.Type.Str},Z);if(C.opts.unevaluated&&U!==!0)Q.assign(Gw._`${U}[${V}]`,!0);else if(!H&&!C.allErrors)Q.if((0,Gw.not)(Z),()=>Q.break())})})}}};vUA.default=X6B});var gUA=R((hUA)=>{Object.defineProperty(hUA,"__esModule",{value:!0});var F6B=wB(),W6B={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(A){let{gen:Q,schema:B,it:Y}=A;if((0,F6B.alwaysValidSchema)(Y,B)){A.fail();return}let J=Q.name("valid");A.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},J),A.failResult(J,()=>A.reset(),()=>A.error())},error:{message:"must NOT be valid"}};hUA.default=W6B});var fUA=R((xUA)=>{Object.defineProperty(xUA,"__esModule",{value:!0});var $6B=I5(),U6B={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:$6B.validateUnion,error:{message:"must match a schema in anyOf"}};xUA.default=U6B});var mUA=R((bUA)=>{Object.defineProperty(bUA,"__esModule",{value:!0});var Fw=GB(),K6B=wB(),V6B={message:"must match exactly one schema in oneOf",params:({params:A})=>Fw._`{passingSchemas: ${A.passing}}`},I6B={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:V6B,code(A){let{gen:Q,schema:B,parentSchema:Y,it:J}=A;if(!Array.isArray(B))throw Error("ajv implementation error");if(J.opts.discriminator&&Y.discriminator)return;let C=B,X=Q.let("valid",!1),G=Q.let("passing",null),F=Q.name("_valid");A.setParams({passing:G}),Q.block(W),A.result(X,()=>A.reset(),()=>A.error(!0));function W(){C.forEach((Z,U)=>{let $;if((0,K6B.alwaysValidSchema)(J,Z))Q.var(F,!0);else $=A.subschema({keyword:"oneOf",schemaProp:U,compositeRule:!0},F);if(U>0)Q.if(Fw._`${F} && ${X}`).assign(X,!1).assign(G,Fw._`[${G}, ${U}]`).else();Q.if(F,()=>{if(Q.assign(X,!0),Q.assign(G,U),$)A.mergeEvaluated($,Fw.Name)})})}}};bUA.default=I6B});var dUA=R((uUA)=>{Object.defineProperty(uUA,"__esModule",{value:!0});var D6B=wB(),N6B={keyword:"allOf",schemaType:"array",code(A){let{gen:Q,schema:B,it:Y}=A;if(!Array.isArray(B))throw Error("ajv implementation error");let J=Q.name("valid");B.forEach((C,X)=>{if((0,D6B.alwaysValidSchema)(Y,C))return;let G=A.subschema({keyword:"allOf",schemaProp:X},J);A.ok(J),A.mergeEvaluated(G)})}};uUA.default=N6B});var iUA=R((pUA)=>{Object.defineProperty(pUA,"__esModule",{value:!0});var Ww=GB(),lUA=wB(),q6B={message:({params:A})=>Ww.str`must match "${A.ifClause}" schema`,params:({params:A})=>Ww._`{failingKeyword: ${A.ifClause}}`},M6B={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:q6B,code(A){let{gen:Q,parentSchema:B,it:Y}=A;if(B.then===void 0&&B.else===void 0)(0,lUA.checkStrictMode)(Y,'"if" without "then" and "else" is ignored');let J=cUA(Y,"then"),C=cUA(Y,"else");if(!J&&!C)return;let X=Q.let("valid",!0),G=Q.name("_valid");if(F(),A.reset(),J&&C){let Z=Q.let("ifClause");A.setParams({ifClause:Z}),Q.if(G,W("then",Z),W("else",Z))}else if(J)Q.if(G,W("then"));else Q.if((0,Ww.not)(G),W("else"));A.pass(X,()=>A.error(!0));function F(){let Z=A.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},G);A.mergeEvaluated(Z)}function W(Z,U){return()=>{let $=A.subschema({keyword:Z},G);if(Q.assign(X,G),A.mergeValidEvaluated($,X),U)Q.assign(U,Ww._`${Z}`);else A.setParams({ifClause:Z})}}}};function cUA(A,Q){let B=A.schema[Q];return B!==void 0&&!(0,lUA.alwaysValidSchema)(A,B)}pUA.default=M6B});var sUA=R((nUA)=>{Object.defineProperty(nUA,"__esModule",{value:!0});var R6B=wB(),w6B={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:A,parentSchema:Q,it:B}){if(Q.if===void 0)(0,R6B.checkStrictMode)(B,`"${A}" without "if" is ignored`)}};nUA.default=w6B});var aUA=R((rUA)=>{Object.defineProperty(rUA,"__esModule",{value:!0});var O6B=Wb(),P6B=ZUA(),T6B=Zb(),S6B=EUA(),k6B=VUA(),_6B=qUA(),v6B=RUA(),y6B=Ub(),h6B=TUA(),g6B=yUA(),x6B=gUA(),f6B=fUA(),b6B=mUA(),m6B=dUA(),u6B=iUA(),d6B=sUA();function c6B(A=!1){let Q=[x6B.default,f6B.default,b6B.default,m6B.default,u6B.default,d6B.default,v6B.default,y6B.default,_6B.default,h6B.default,g6B.default];if(A)Q.push(P6B.default,S6B.default);else Q.push(O6B.default,T6B.default);return Q.push(k6B.default),Q}rUA.default=c6B});var tUA=R((oUA)=>{Object.defineProperty(oUA,"__esModule",{value:!0});var XY=GB(),p6B={message:({schemaCode:A})=>XY.str`must match format "${A}"`,params:({schemaCode:A})=>XY._`{format: ${A}}`},i6B={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:p6B,code(A,Q){let{gen:B,data:Y,$data:J,schema:C,schemaCode:X,it:G}=A,{opts:F,errSchemaPath:W,schemaEnv:Z,self:U}=G;if(!F.validateFormats)return;if(J)$();else E();function $(){let K=B.scopeValue("formats",{ref:U.formats,code:F.code.formats}),I=B.const("fDef",XY._`${K}[${X}]`),V=B.let("fType"),H=B.let("format");B.if(XY._`typeof ${I} == "object" && !(${I} instanceof RegExp)`,()=>B.assign(V,XY._`${I}.type || "string"`).assign(H,XY._`${I}.validate`),()=>B.assign(V,XY._`"string"`).assign(H,I)),A.fail$data((0,XY.or)(D(),L()));function D(){if(F.strictSchema===!1)return XY.nil;return XY._`${X} && !${H}`}function L(){let z=Z.$async?XY._`(${I}.async ? await ${H}(${Y}) : ${H}(${Y}))`:XY._`${H}(${Y})`,M=XY._`(typeof ${H} == "function" ? ${z} : ${H}.test(${Y}))`;return XY._`${H} && ${H} !== true && ${V} === ${Q} && !${M}`}}function E(){let K=U.formats[C];if(!K){D();return}if(K===!0)return;let[I,V,H]=L(K);if(I===Q)A.pass(z());function D(){if(F.strictSchema===!1){U.logger.warn(M());return}throw Error(M());function M(){return`unknown format "${C}" ignored in schema at path "${W}"`}}function L(M){let N=M instanceof RegExp?(0,XY.regexpCode)(M):F.code.formats?XY._`${F.code.formats}${(0,XY.getProperty)(C)}`:void 0,q=B.scopeValue("formats",{key:C,ref:M,code:N});if(typeof M=="object"&&!(M instanceof RegExp))return[M.type||"string",M.validate,XY._`${q}.validate`];return["string",M,q]}function z(){if(typeof K=="object"&&!(K instanceof RegExp)&&K.async){if(!Z.$async)throw Error("async format in sync schema");return XY._`await ${H}(${Y})`}return typeof V=="function"?XY._`${H}(${Y})`:XY._`${H}.test(${Y})`}}}};oUA.default=i6B});var AEA=R((eUA)=>{Object.defineProperty(eUA,"__esModule",{value:!0});var s6B=tUA(),r6B=[s6B.default];eUA.default=r6B});var YEA=R((QEA)=>{Object.defineProperty(QEA,"__esModule",{value:!0});QEA.contentVocabulary=QEA.metadataVocabulary=void 0;QEA.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];QEA.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var XEA=R((CEA)=>{Object.defineProperty(CEA,"__esModule",{value:!0});var t6B=P4A(),e6B=QUA(),AXB=aUA(),QXB=AEA(),JEA=YEA(),BXB=[t6B.default,e6B.default,(0,AXB.default)(),QXB.default,JEA.metadataVocabulary,JEA.contentVocabulary];CEA.default=BXB});var ZEA=R((FEA)=>{Object.defineProperty(FEA,"__esModule",{value:!0});FEA.DiscrError=void 0;var GEA;(function(A){A.Tag="tag",A.Mapping="mapping"})(GEA||(FEA.DiscrError=GEA={}))});var EEA=R((UEA)=>{Object.defineProperty(UEA,"__esModule",{value:!0});var WE=GB(),Kb=ZEA(),$EA=pR(),JXB=FD(),CXB=wB(),XXB={message:({params:{discrError:A,tagName:Q}})=>A===Kb.DiscrError.Tag?`tag "${Q}" must be string`:`value of tag "${Q}" must be in oneOf`,params:({params:{discrError:A,tag:Q,tagName:B}})=>WE._`{error: ${A}, tag: ${B}, tagValue: ${Q}}`},GXB={keyword:"discriminator",type:"object",schemaType:"object",error:XXB,code(A){let{gen:Q,data:B,schema:Y,parentSchema:J,it:C}=A,{oneOf:X}=J;if(!C.opts.discriminator)throw Error("discriminator: requires discriminator option");let G=Y.propertyName;if(typeof G!="string")throw Error("discriminator: requires propertyName");if(Y.mapping)throw Error("discriminator: mapping is not supported");if(!X)throw Error("discriminator: requires oneOf keyword");let F=Q.let("valid",!1),W=Q.const("tag",WE._`${B}${(0,WE.getProperty)(G)}`);Q.if(WE._`typeof ${W} == "string"`,()=>Z(),()=>A.error(!1,{discrError:Kb.DiscrError.Tag,tag:W,tagName:G})),A.ok(F);function Z(){let E=$();Q.if(!1);for(let K in E)Q.elseIf(WE._`${W} === ${K}`),Q.assign(F,U(E[K]));Q.else(),A.error(!1,{discrError:Kb.DiscrError.Mapping,tag:W,tagName:G}),Q.endIf()}function U(E){let K=Q.name("valid"),I=A.subschema({keyword:"oneOf",schemaProp:E},K);return A.mergeEvaluated(I,WE.Name),K}function $(){var E;let K={},I=H(J),V=!0;for(let z=0;z{WXB.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var IEA=R((y9,Vb)=>{Object.defineProperty(y9,"__esModule",{value:!0});y9.MissingRefError=y9.ValidationError=y9.CodeGen=y9.Name=y9.nil=y9.stringify=y9.str=y9._=y9.KeywordCxt=y9.Ajv=void 0;var ZXB=D4A(),$XB=XEA(),UXB=EEA(),VEA=KEA(),EXB=["/properties"],Zw="http://json-schema.org/draft-07/schema";class LD extends ZXB.default{_addVocabularies(){if(super._addVocabularies(),$XB.default.forEach((A)=>this.addVocabulary(A)),this.opts.discriminator)this.addKeyword(UXB.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let A=this.opts.$data?this.$dataMetaSchema(VEA,EXB):VEA;this.addMetaSchema(A,Zw,!1),this.refs["http://json-schema.org/schema"]=Zw}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(Zw)?Zw:void 0)}}y9.Ajv=LD;Vb.exports=y9=LD;Vb.exports.Ajv=LD;Object.defineProperty(y9,"__esModule",{value:!0});y9.default=LD;var KXB=GD();Object.defineProperty(y9,"KeywordCxt",{enumerable:!0,get:function(){return KXB.KeywordCxt}});var ZE=GB();Object.defineProperty(y9,"_",{enumerable:!0,get:function(){return ZE._}});Object.defineProperty(y9,"str",{enumerable:!0,get:function(){return ZE.str}});Object.defineProperty(y9,"stringify",{enumerable:!0,get:function(){return ZE.stringify}});Object.defineProperty(y9,"nil",{enumerable:!0,get:function(){return ZE.nil}});Object.defineProperty(y9,"Name",{enumerable:!0,get:function(){return ZE.Name}});Object.defineProperty(y9,"CodeGen",{enumerable:!0,get:function(){return ZE.CodeGen}});var VXB=cR();Object.defineProperty(y9,"ValidationError",{enumerable:!0,get:function(){return VXB.default}});var IXB=FD();Object.defineProperty(y9,"MissingRefError",{enumerable:!0,get:function(){return IXB.default}})});var iEA=R((pEA)=>{Object.defineProperty(pEA,"__esModule",{value:!0});pEA.fromEnv=jXB;var lEA="HYTOPIA_API_KEY";function wXB(A){let Q=process.env[lEA];if(!Q)throw Error(`Missing environment variable ${A}`);return Q}function jXB(){return{apiKey:wXB(lEA)}}});var nEA=R((Ym)=>{Object.defineProperty(Ym,"__esModule",{value:!0});Ym.fromEnv=void 0;var PXB=iEA();Object.defineProperty(Ym,"fromEnv",{enumerable:!0,get:function(){return PXB.fromEnv}})});var rEA=R(($E)=>{var Jm=$E&&$E.__importDefault||function(A){return A&&A.__esModule?A:{default:A}};Object.defineProperty($E,"__esModule",{value:!0});$E.LocalBackend=void 0;var Cm=Jm(u("fs")),SXB=Jm(u("path")),Xm=Jm(u("util")),kXB=Xm.default.promisify(Cm.default.mkdir),_XB=Xm.default.promisify(Cm.default.readFile),vXB=Xm.default.promisify(Cm.default.writeFile);class sEA{dataDir;constructor(A){this.dataDir=A}calculatePath(A,Q){return`${this.dataDir}/${A}/${Q}.json`}async load(A,Q){try{let B=await _XB(this.calculatePath(A,Q),"utf8"),Y=JSON.parse(B);if(!Y.__version)Y.__version=1;return Y}catch(B){return{__version:1}}}async upload(A,Q){await kXB(SXB.default.join(this.dataDir,A),{recursive:!0});var B=[];for(var[Y,J]of Object.entries(Q))B.push(vXB(this.calculatePath(A,Y),JSON.stringify(J)));await Promise.all(B)}}$E.LocalBackend=sEA});var Gm=R((oEA)=>{Object.defineProperty(oEA,"__esModule",{value:!0});oEA.proxifyObject=aEA;function aEA(A,Q){for(let[B,Y]of Object.entries(A))if(Y instanceof Object)A[B]=aEA(Y,Q);return new Proxy(A,Q)}});var AKA=R((eEA)=>{Object.defineProperty(eEA,"__esModule",{value:!0});eEA.load=hXB;var tEA=Gm();async function hXB(A){let Q=await this.backend.load(this.gameId,A),B=this.saveStatesManager,Y={set(C,X,G){if(typeof G==="function")return!1;if(G instanceof Object)C[X]=(0,tEA.proxifyObject)(G,Y);else C[X]=G;if(X!=="__version")B.incrementVersion(A);return!0},deleteProperty(C,X){if(X in C)delete C[X];return B.incrementVersion(A),!0}},J=(0,tEA.proxifyObject)(Q,Y);return B.setReference(A,J),J}});var CKA=R((YKA)=>{Object.defineProperty(YKA,"__esModule",{value:!0});YKA.SaveStatesManager=void 0;var QKA=Gm();class BKA{_stateReferences={};_pendingSaveQueue={};_hasQueuedSaves=!1;setReference(A,Q){this._stateReferences[A]=Q}getReference(A){return this._stateReferences[A]??null}dropReference(A){if(!this._stateReferences)return;delete this._stateReferences[A]}incrementVersion(A){if(!this._stateReferences[A])return;this._hasQueuedSaves=!0;let Q=this._stateReferences[A];Q.__version+=1,this._pendingSaveQueue[A]=Q}getPendingSaves(){if(!this._hasQueuedSaves)return null;let A=JSON.parse(JSON.stringify(this._pendingSaveQueue));return this._pendingSaveQueue={},this._hasQueuedSaves=!1,A}load(A,Q){let B=this.getReference(A);if(B)return{value:B.value};let Y=this,J={set(X,G,F){if(typeof F==="function")return!1;if(F instanceof Object)X[G]=(0,QKA.proxifyObject)(F,J);else X[G]=F;if(G!=="__version")Y.incrementVersion(A);return!0},deleteProperty(X,G){if(G in X)delete X[G];return Y.incrementVersion(A),!0}},C=(0,QKA.proxifyObject)(Q.value,J);return Y.setReference(A,C),{error:void 0,value:C}}}YKA.SaveStatesManager=BKA});var GKA=R((XKA)=>{Object.defineProperty(XKA,"__esModule",{value:!0});XKA.flush=xXB;async function xXB(){let A=this.saveStatesManager.getPendingSaves();if(!A)return;await this.backend.upload(this.gameId,A)}});var $KA=R((WKA)=>{Object.defineProperty(WKA,"__esModule",{value:!0});WKA.RemoteBackend=void 0;class FKA{baseUrl;credentials;constructor(A,Q,B){this.baseUrl=A,this.credentials=Q}async load(A,Q){while(!0){try{let B=await fetch(`${this.baseUrl}/play/kv/get/${A}/${Q}`,{headers:{"X-Api-Key":this.credentials.apiKey}}),Y=await B.json();if(B.ok){if(!Y.value.__version)Y.value.__version=1;return Y.value}if(Y&&Y.error){if(Y.error.code==="keyNotFound")return{__version:1};console.warn(`[SaveStates] Got an error loading remote state for key ${Q}: ${Y.error.code}, retrying in 1s...`),await new Promise((J)=>setTimeout(J,1000));continue}throw Error("Unexpected error body")}catch(B){console.warn(`[SaveStates] Could not load remote state for key ${Q} due to a connection issue, retrying in 1s...`)}await new Promise((B)=>setTimeout(B,1000))}}async upload(A,Q){while(!0){try{let B=await fetch(`${this.baseUrl}/play/kv/setbulk/${A}`,{method:"POST",headers:{"Content-Type":"application/json","X-Api-Key":this.credentials.apiKey},body:JSON.stringify(Q)}),Y=await B.json();if(B.ok)return;if(Y&&Y.error){console.warn(`[SaveStates] Could not upload state to remote due to an error (code '${Y.error.code}'), retrying in 1s...`),await new Promise((J)=>setTimeout(J,1000));continue}throw Error("Unexpected error body")}catch(B){console.warn("[SaveStates] Could not upload state to remote due to a connection issue, retrying in 1s...")}await new Promise((B)=>setTimeout(B,1000))}}}WKA.RemoteBackend=FKA});var EKA=R((UKA)=>{Object.defineProperty(UKA,"__esModule",{value:!0});UKA.unload=bXB;async function bXB(A){this.saveStatesManager.dropReference(A),await this.flush()}});var HKA=R((VKA)=>{Object.defineProperty(VKA,"__esModule",{value:!0});VKA.SaveStatesClient=void 0;var uXB=nEA(),dXB=rEA(),cXB=AKA(),lXB=CKA(),pXB=GKA(),iXB=$KA(),nXB=EKA();function sXB(A){if(A)return A;try{let Q=(0,uXB.fromEnv)(),B=process.env.HYTOPIA_PERSUADE_CREATIVE_GATEWAY_BASE_URL??"https://prod.persuade-creative.hytopia.com",Y=process.env.HYTOPIA_GAME_ID;if(!Y)throw Error("Missing HYTOPIA_GAME_ID environment variable");return new iXB.RemoteBackend(B,Q,Y)}catch{return console.warn("[SaveStates] Couldn't load credentials from environment variables, defaulting to local backend"),new dXB.LocalBackend("dev")}}class KKA{backend;gameId;saveStatesManager;constructor(A){this.backend=sXB(A?.backend),this.gameId=A?.gameId??process.env.HYTOPIA_GAME_ID??"persistence",this.saveStatesManager=new lXB.SaveStatesManager;async function Q(B){while(!0)await B.flush(),await new Promise((Y)=>{setTimeout(Y,1000).unref()})}Q(this)}load=cXB.load;unload=nXB.unload;flush=pXB.flush}VKA.SaveStatesClient=KKA});var xX=R((sIY,LKA)=>{var DKA=["nodebuffer","arraybuffer","fragments"],NKA=typeof Blob<"u";if(NKA)DKA.push("blob");LKA.exports={BINARY_TYPES:DKA,EMPTY_BUFFER:Buffer.alloc(0),GUID:"258EAFA5-E914-47DA-95CA-C5AB0DC85B11",hasBlob:NKA,kForOnEventAttribute:Symbol("kIsForOnEventAttribute"),kListener:Symbol("kListener"),kStatusCode:Symbol("status-code"),kWebSocket:Symbol("websocket"),NOOP:()=>{}}});var wD=R((rIY,Vw)=>{var{EMPTY_BUFFER:rXB}=xX(),Fm=Buffer[Symbol.species];function aXB(A,Q){if(A.length===0)return rXB;if(A.length===1)return A[0];let B=Buffer.allocUnsafe(Q),Y=0;for(let J=0;J{throw new Error("Cannot require module "+"bufferutil");})();Vw.exports.mask=function(Q,B,Y,J,C){if(C<48)qKA(Q,B,Y,J,C);else A.mask(Q,B,Y,J,C)},Vw.exports.unmask=function(Q,B){if(Q.length<32)MKA(Q,B);else A.unmask(Q,B)}}catch(A){}});var jKA=R((aIY,wKA)=>{var zKA=Symbol("kDone"),Zm=Symbol("kRun");class RKA{constructor(A){this[zKA]=()=>{this.pending--,this[Zm]()},this.concurrency=A||1/0,this.jobs=[],this.pending=0}add(A){this.jobs.push(A),this[Zm]()}[Zm](){if(this.pending===this.concurrency)return;if(this.jobs.length){let A=this.jobs.shift();this.pending++,A(this[zKA])}}}wKA.exports=RKA});var OD=R((oIY,kKA)=>{var jD=u("zlib"),OKA=wD(),tXB=jKA(),{kStatusCode:PKA}=xX(),eXB=Buffer[Symbol.species],AGB=Buffer.from([0,0,255,255]),Hw=Symbol("permessage-deflate"),fX=Symbol("total-length"),UE=Symbol("callback"),h7=Symbol("buffers"),EE=Symbol("error"),Iw;class TKA{constructor(A,Q,B){if(this._maxPayload=B|0,this._options=A||{},this._threshold=this._options.threshold!==void 0?this._options.threshold:1024,this._isServer=!!Q,this._deflate=null,this._inflate=null,this.params=null,!Iw){let Y=this._options.concurrencyLimit!==void 0?this._options.concurrencyLimit:10;Iw=new tXB(Y)}}static get extensionName(){return"permessage-deflate"}offer(){let A={};if(this._options.serverNoContextTakeover)A.server_no_context_takeover=!0;if(this._options.clientNoContextTakeover)A.client_no_context_takeover=!0;if(this._options.serverMaxWindowBits)A.server_max_window_bits=this._options.serverMaxWindowBits;if(this._options.clientMaxWindowBits)A.client_max_window_bits=this._options.clientMaxWindowBits;else if(this._options.clientMaxWindowBits==null)A.client_max_window_bits=!0;return A}accept(A){return A=this.normalizeParams(A),this.params=this._isServer?this.acceptAsServer(A):this.acceptAsClient(A),this.params}cleanup(){if(this._inflate)this._inflate.close(),this._inflate=null;if(this._deflate){let A=this._deflate[UE];if(this._deflate.close(),this._deflate=null,A)A(Error("The deflate stream was closed while data was being processed"))}}acceptAsServer(A){let Q=this._options,B=A.find((Y)=>{if(Q.serverNoContextTakeover===!1&&Y.server_no_context_takeover||Y.server_max_window_bits&&(Q.serverMaxWindowBits===!1||typeof Q.serverMaxWindowBits==="number"&&Q.serverMaxWindowBits>Y.server_max_window_bits)||typeof Q.clientMaxWindowBits==="number"&&!Y.client_max_window_bits)return!1;return!0});if(!B)throw Error("None of the extension offers can be accepted");if(Q.serverNoContextTakeover)B.server_no_context_takeover=!0;if(Q.clientNoContextTakeover)B.client_no_context_takeover=!0;if(typeof Q.serverMaxWindowBits==="number")B.server_max_window_bits=Q.serverMaxWindowBits;if(typeof Q.clientMaxWindowBits==="number")B.client_max_window_bits=Q.clientMaxWindowBits;else if(B.client_max_window_bits===!0||Q.clientMaxWindowBits===!1)delete B.client_max_window_bits;return B}acceptAsClient(A){let Q=A[0];if(this._options.clientNoContextTakeover===!1&&Q.client_no_context_takeover)throw Error('Unexpected parameter "client_no_context_takeover"');if(!Q.client_max_window_bits){if(typeof this._options.clientMaxWindowBits==="number")Q.client_max_window_bits=this._options.clientMaxWindowBits}else if(this._options.clientMaxWindowBits===!1||typeof this._options.clientMaxWindowBits==="number"&&Q.client_max_window_bits>this._options.clientMaxWindowBits)throw Error('Unexpected or invalid parameter "client_max_window_bits"');return Q}normalizeParams(A){return A.forEach((Q)=>{Object.keys(Q).forEach((B)=>{let Y=Q[B];if(Y.length>1)throw Error(`Parameter "${B}" must have only a single value`);if(Y=Y[0],B==="client_max_window_bits"){if(Y!==!0){let J=+Y;if(!Number.isInteger(J)||J<8||J>15)throw TypeError(`Invalid value for parameter "${B}": ${Y}`);Y=J}else if(!this._isServer)throw TypeError(`Invalid value for parameter "${B}": ${Y}`)}else if(B==="server_max_window_bits"){let J=+Y;if(!Number.isInteger(J)||J<8||J>15)throw TypeError(`Invalid value for parameter "${B}": ${Y}`);Y=J}else if(B==="client_no_context_takeover"||B==="server_no_context_takeover"){if(Y!==!0)throw TypeError(`Invalid value for parameter "${B}": ${Y}`)}else throw Error(`Unknown parameter "${B}"`);Q[B]=Y})}),A}decompress(A,Q,B){Iw.add((Y)=>{this._decompress(A,Q,(J,C)=>{Y(),B(J,C)})})}compress(A,Q,B){Iw.add((Y)=>{this._compress(A,Q,(J,C)=>{Y(),B(J,C)})})}_decompress(A,Q,B){let Y=this._isServer?"client":"server";if(!this._inflate){let J=`${Y}_max_window_bits`,C=typeof this.params[J]!=="number"?jD.Z_DEFAULT_WINDOWBITS:this.params[J];this._inflate=jD.createInflateRaw({...this._options.zlibInflateOptions,windowBits:C}),this._inflate[Hw]=this,this._inflate[fX]=0,this._inflate[h7]=[],this._inflate.on("error",BGB),this._inflate.on("data",SKA)}if(this._inflate[UE]=B,this._inflate.write(A),Q)this._inflate.write(AGB);this._inflate.flush(()=>{let J=this._inflate[EE];if(J){this._inflate.close(),this._inflate=null,B(J);return}let C=OKA.concat(this._inflate[h7],this._inflate[fX]);if(this._inflate._readableState.endEmitted)this._inflate.close(),this._inflate=null;else if(this._inflate[fX]=0,this._inflate[h7]=[],Q&&this.params[`${Y}_no_context_takeover`])this._inflate.reset();B(null,C)})}_compress(A,Q,B){let Y=this._isServer?"server":"client";if(!this._deflate){let J=`${Y}_max_window_bits`,C=typeof this.params[J]!=="number"?jD.Z_DEFAULT_WINDOWBITS:this.params[J];this._deflate=jD.createDeflateRaw({...this._options.zlibDeflateOptions,windowBits:C}),this._deflate[fX]=0,this._deflate[h7]=[],this._deflate.on("data",QGB)}this._deflate[UE]=B,this._deflate.write(A),this._deflate.flush(jD.Z_SYNC_FLUSH,()=>{if(!this._deflate)return;let J=OKA.concat(this._deflate[h7],this._deflate[fX]);if(Q)J=new eXB(J.buffer,J.byteOffset,J.length-4);if(this._deflate[UE]=null,this._deflate[fX]=0,this._deflate[h7]=[],Q&&this.params[`${Y}_no_context_takeover`])this._deflate.reset();B(null,J)})}}kKA.exports=TKA;function QGB(A){this[h7].push(A),this[fX]+=A.length}function SKA(A){if(this[fX]+=A.length,this[Hw]._maxPayload<1||this[fX]<=this[Hw]._maxPayload){this[h7].push(A);return}this[EE]=RangeError("Max payload size exceeded"),this[EE].code="WS_ERR_UNSUPPORTED_MESSAGE_LENGTH",this[EE][PKA]=1009,this.removeListener("data",SKA),this.reset()}function BGB(A){if(this[Hw]._inflate=null,this[EE]){this[UE](this[EE]);return}A[PKA]=1007,this[UE](A)}});var KE=R((tIY,Dw)=>{var{isUtf8:_KA}=u("buffer"),{hasBlob:YGB}=xX(),JGB=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,1,1,1,0,0,1,1,0,1,1,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,0,1,0];function CGB(A){return A>=1000&&A<=1014&&A!==1004&&A!==1005&&A!==1006||A>=3000&&A<=4999}function $m(A){let Q=A.length,B=0;while(B=Q||(A[B+1]&192)!==128||(A[B+2]&192)!==128||A[B]===224&&(A[B+1]&224)===128||A[B]===237&&(A[B+1]&224)===160)return!1;B+=3}else if((A[B]&248)===240){if(B+3>=Q||(A[B+1]&192)!==128||(A[B+2]&192)!==128||(A[B+3]&192)!==128||A[B]===240&&(A[B+1]&240)===128||A[B]===244&&A[B+1]>143||A[B]>244)return!1;B+=4}else return!1;return!0}function XGB(A){return YGB&&typeof A==="object"&&typeof A.arrayBuffer==="function"&&typeof A.type==="string"&&typeof A.stream==="function"&&(A[Symbol.toStringTag]==="Blob"||A[Symbol.toStringTag]==="File")}Dw.exports={isBlob:XGB,isValidStatusCode:CGB,isValidUTF8:$m,tokenChars:JGB};if(_KA)Dw.exports.isValidUTF8=function(A){return A.length<24?$m(A):_KA(A)};else if(!process.env.WS_NO_UTF_8_VALIDATE)try{let A=(()=>{throw new Error("Cannot require module "+"utf-8-validate");})();Dw.exports.isValidUTF8=function(Q){return Q.length<32?$m(Q):A(Q)}}catch(A){}});var Em=R((eIY,xKA)=>{var{Writable:GGB}=u("stream"),vKA=OD(),{BINARY_TYPES:FGB,EMPTY_BUFFER:yKA,kStatusCode:WGB,kWebSocket:ZGB}=xX(),{concat:Um,toArrayBuffer:$GB,unmask:UGB}=wD(),{isValidStatusCode:EGB,isValidUTF8:hKA}=KE(),Nw=Buffer[Symbol.species];class gKA extends GGB{constructor(A={}){super();this._allowSynchronousEvents=A.allowSynchronousEvents!==void 0?A.allowSynchronousEvents:!0,this._binaryType=A.binaryType||FGB[0],this._extensions=A.extensions||{},this._isServer=!!A.isServer,this._maxPayload=A.maxPayload|0,this._skipUTF8Validation=!!A.skipUTF8Validation,this[ZGB]=void 0,this._bufferedBytes=0,this._buffers=[],this._compressed=!1,this._payloadLength=0,this._mask=void 0,this._fragmented=0,this._masked=!1,this._fin=!1,this._opcode=0,this._totalPayloadLength=0,this._messageLength=0,this._fragments=[],this._errored=!1,this._loop=!1,this._state=0}_write(A,Q,B){if(this._opcode===8&&this._state==0)return B();this._bufferedBytes+=A.length,this._buffers.push(A),this.startLoop(B)}consume(A){if(this._bufferedBytes-=A,A===this._buffers[0].length)return this._buffers.shift();if(A=B.length)Q.set(this._buffers.shift(),Y);else Q.set(new Uint8Array(B.buffer,B.byteOffset,A),Y),this._buffers[0]=new Nw(B.buffer,B.byteOffset+A,B.length-A);A-=B.length}while(A>0);return Q}startLoop(A){this._loop=!0;do switch(this._state){case 0:this.getInfo(A);break;case 1:this.getPayloadLength16(A);break;case 2:this.getPayloadLength64(A);break;case 3:this.getMask();break;case 4:this.getData(A);break;case 5:case 6:this._loop=!1;return}while(this._loop);if(!this._errored)A()}getInfo(A){if(this._bufferedBytes<2){this._loop=!1;return}let Q=this.consume(2);if((Q[0]&48)!==0){let Y=this.createError(RangeError,"RSV2 and RSV3 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_2_3");A(Y);return}let B=(Q[0]&64)===64;if(B&&!this._extensions[vKA.extensionName]){let Y=this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");A(Y);return}if(this._fin=(Q[0]&128)===128,this._opcode=Q[0]&15,this._payloadLength=Q[1]&127,this._opcode===0){if(B){let Y=this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");A(Y);return}if(!this._fragmented){let Y=this.createError(RangeError,"invalid opcode 0",!0,1002,"WS_ERR_INVALID_OPCODE");A(Y);return}this._opcode=this._fragmented}else if(this._opcode===1||this._opcode===2){if(this._fragmented){let Y=this.createError(RangeError,`invalid opcode ${this._opcode}`,!0,1002,"WS_ERR_INVALID_OPCODE");A(Y);return}this._compressed=B}else if(this._opcode>7&&this._opcode<11){if(!this._fin){let Y=this.createError(RangeError,"FIN must be set",!0,1002,"WS_ERR_EXPECTED_FIN");A(Y);return}if(B){let Y=this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");A(Y);return}if(this._payloadLength>125||this._opcode===8&&this._payloadLength===1){let Y=this.createError(RangeError,`invalid payload length ${this._payloadLength}`,!0,1002,"WS_ERR_INVALID_CONTROL_PAYLOAD_LENGTH");A(Y);return}}else{let Y=this.createError(RangeError,`invalid opcode ${this._opcode}`,!0,1002,"WS_ERR_INVALID_OPCODE");A(Y);return}if(!this._fin&&!this._fragmented)this._fragmented=this._opcode;if(this._masked=(Q[1]&128)===128,this._isServer){if(!this._masked){let Y=this.createError(RangeError,"MASK must be set",!0,1002,"WS_ERR_EXPECTED_MASK");A(Y);return}}else if(this._masked){let Y=this.createError(RangeError,"MASK must be clear",!0,1002,"WS_ERR_UNEXPECTED_MASK");A(Y);return}if(this._payloadLength===126)this._state=1;else if(this._payloadLength===127)this._state=2;else this.haveLength(A)}getPayloadLength16(A){if(this._bufferedBytes<2){this._loop=!1;return}this._payloadLength=this.consume(2).readUInt16BE(0),this.haveLength(A)}getPayloadLength64(A){if(this._bufferedBytes<8){this._loop=!1;return}let Q=this.consume(8),B=Q.readUInt32BE(0);if(B>Math.pow(2,21)-1){let Y=this.createError(RangeError,"Unsupported WebSocket frame: payload length > 2^53 - 1",!1,1009,"WS_ERR_UNSUPPORTED_DATA_PAYLOAD_LENGTH");A(Y);return}this._payloadLength=B*Math.pow(2,32)+Q.readUInt32BE(4),this.haveLength(A)}haveLength(A){if(this._payloadLength&&this._opcode<8){if(this._totalPayloadLength+=this._payloadLength,this._totalPayloadLength>this._maxPayload&&this._maxPayload>0){let Q=this.createError(RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH");A(Q);return}}if(this._masked)this._state=3;else this._state=4}getMask(){if(this._bufferedBytes<4){this._loop=!1;return}this._mask=this.consume(4),this._state=4}getData(A){let Q=yKA;if(this._payloadLength){if(this._bufferedBytes7){this.controlMessage(Q,A);return}if(this._compressed){this._state=5,this.decompress(Q,A);return}if(Q.length)this._messageLength=this._totalPayloadLength,this._fragments.push(Q);this.dataMessage(A)}decompress(A,Q){this._extensions[vKA.extensionName].decompress(A,this._fin,(Y,J)=>{if(Y)return Q(Y);if(J.length){if(this._messageLength+=J.length,this._messageLength>this._maxPayload&&this._maxPayload>0){let C=this.createError(RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH");Q(C);return}this._fragments.push(J)}if(this.dataMessage(Q),this._state===0)this.startLoop(Q)})}dataMessage(A){if(!this._fin){this._state=0;return}let Q=this._messageLength,B=this._fragments;if(this._totalPayloadLength=0,this._messageLength=0,this._fragmented=0,this._fragments=[],this._opcode===2){let Y;if(this._binaryType==="nodebuffer")Y=Um(B,Q);else if(this._binaryType==="arraybuffer")Y=$GB(Um(B,Q));else if(this._binaryType==="blob")Y=new Blob(B);else Y=B;if(this._allowSynchronousEvents)this.emit("message",Y,!0),this._state=0;else this._state=6,setImmediate(()=>{this.emit("message",Y,!0),this._state=0,this.startLoop(A)})}else{let Y=Um(B,Q);if(!this._skipUTF8Validation&&!hKA(Y)){let J=this.createError(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8");A(J);return}if(this._state===5||this._allowSynchronousEvents)this.emit("message",Y,!1),this._state=0;else this._state=6,setImmediate(()=>{this.emit("message",Y,!1),this._state=0,this.startLoop(A)})}}controlMessage(A,Q){if(this._opcode===8){if(A.length===0)this._loop=!1,this.emit("conclude",1005,yKA),this.end();else{let B=A.readUInt16BE(0);if(!EGB(B)){let J=this.createError(RangeError,`invalid status code ${B}`,!0,1002,"WS_ERR_INVALID_CLOSE_CODE");Q(J);return}let Y=new Nw(A.buffer,A.byteOffset+2,A.length-2);if(!this._skipUTF8Validation&&!hKA(Y)){let J=this.createError(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8");Q(J);return}this._loop=!1,this.emit("conclude",B,Y),this.end()}this._state=0;return}if(this._allowSynchronousEvents)this.emit(this._opcode===9?"ping":"pong",A),this._state=0;else this._state=6,setImmediate(()=>{this.emit(this._opcode===9?"ping":"pong",A),this._state=0,this.startLoop(Q)})}createError(A,Q,B,Y,J){this._loop=!1,this._errored=!0;let C=new A(B?`Invalid WebSocket frame: ${Q}`:Q);return Error.captureStackTrace(C,this.createError),C.code=J,C[WGB]=Y,C}}xKA.exports=gKA});var Vm=R((QHY,mKA)=>{var{Duplex:AHY}=u("stream"),{randomFillSync:KGB}=u("crypto"),fKA=OD(),{EMPTY_BUFFER:VGB,kWebSocket:IGB,NOOP:HGB}=xX(),{isBlob:VE,isValidStatusCode:DGB}=KE(),{mask:bKA,toBuffer:ZZ}=wD(),D5=Symbol("kByteLength"),NGB=Buffer.alloc(4),$Z,IE=8192,fC=0,LGB=1,qGB=2;class g7{constructor(A,Q,B){if(this._extensions=Q||{},B)this._generateMask=B,this._maskBuffer=Buffer.alloc(4);this._socket=A,this._firstFragment=!0,this._compress=!1,this._bufferedBytes=0,this._queue=[],this._state=fC,this.onerror=HGB,this[IGB]=void 0}static frame(A,Q){let B,Y=!1,J=2,C=!1;if(Q.mask){if(B=Q.maskBuffer||NGB,Q.generateMask)Q.generateMask(B);else{if(IE===8192){if($Z===void 0)$Z=Buffer.alloc(8192);KGB($Z,0,8192),IE=0}B[0]=$Z[IE++],B[1]=$Z[IE++],B[2]=$Z[IE++],B[3]=$Z[IE++]}C=(B[0]|B[1]|B[2]|B[3])===0,J=6}let X;if(typeof A==="string")if((!Q.mask||C)&&Q[D5]!==void 0)X=Q[D5];else A=Buffer.from(A),X=A.length;else X=A.length,Y=Q.mask&&Q.readOnly&&!C;let G=X;if(X>=65536)J+=8,G=127;else if(X>125)J+=2,G=126;let F=Buffer.allocUnsafe(Y?X+J:J);if(F[0]=Q.fin?Q.opcode|128:Q.opcode,Q.rsv1)F[0]|=64;if(F[1]=G,G===126)F.writeUInt16BE(X,2);else if(G===127)F[2]=F[3]=0,F.writeUIntBE(X,4,6);if(!Q.mask)return[F,A];if(F[1]|=128,F[J-4]=B[0],F[J-3]=B[1],F[J-2]=B[2],F[J-1]=B[3],C)return[F,A];if(Y)return bKA(A,B,F,J,X),[F];return bKA(A,B,A,0,X),[F,A]}close(A,Q,B,Y){let J;if(A===void 0)J=VGB;else if(typeof A!=="number"||!DGB(A))throw TypeError("First argument must be a valid error code number");else if(Q===void 0||!Q.length)J=Buffer.allocUnsafe(2),J.writeUInt16BE(A,0);else{let X=Buffer.byteLength(Q);if(X>123)throw RangeError("The message must not be greater than 123 bytes");if(J=Buffer.allocUnsafe(2+X),J.writeUInt16BE(A,0),typeof Q==="string")J.write(Q,2);else J.set(Q,2)}let C={[D5]:J.length,fin:!0,generateMask:this._generateMask,mask:B,maskBuffer:this._maskBuffer,opcode:8,readOnly:!1,rsv1:!1};if(this._state!==fC)this.enqueue([this.dispatch,J,!1,C,Y]);else this.sendFrame(g7.frame(J,C),Y)}ping(A,Q,B){let Y,J;if(typeof A==="string")Y=Buffer.byteLength(A),J=!1;else if(VE(A))Y=A.size,J=!1;else A=ZZ(A),Y=A.length,J=ZZ.readOnly;if(Y>125)throw RangeError("The data size must not be greater than 125 bytes");let C={[D5]:Y,fin:!0,generateMask:this._generateMask,mask:Q,maskBuffer:this._maskBuffer,opcode:9,readOnly:J,rsv1:!1};if(VE(A))if(this._state!==fC)this.enqueue([this.getBlobData,A,!1,C,B]);else this.getBlobData(A,!1,C,B);else if(this._state!==fC)this.enqueue([this.dispatch,A,!1,C,B]);else this.sendFrame(g7.frame(A,C),B)}pong(A,Q,B){let Y,J;if(typeof A==="string")Y=Buffer.byteLength(A),J=!1;else if(VE(A))Y=A.size,J=!1;else A=ZZ(A),Y=A.length,J=ZZ.readOnly;if(Y>125)throw RangeError("The data size must not be greater than 125 bytes");let C={[D5]:Y,fin:!0,generateMask:this._generateMask,mask:Q,maskBuffer:this._maskBuffer,opcode:10,readOnly:J,rsv1:!1};if(VE(A))if(this._state!==fC)this.enqueue([this.getBlobData,A,!1,C,B]);else this.getBlobData(A,!1,C,B);else if(this._state!==fC)this.enqueue([this.dispatch,A,!1,C,B]);else this.sendFrame(g7.frame(A,C),B)}send(A,Q,B){let Y=this._extensions[fKA.extensionName],J=Q.binary?2:1,C=Q.compress,X,G;if(typeof A==="string")X=Buffer.byteLength(A),G=!1;else if(VE(A))X=A.size,G=!1;else A=ZZ(A),X=A.length,G=ZZ.readOnly;if(this._firstFragment){if(this._firstFragment=!1,C&&Y&&Y.params[Y._isServer?"server_no_context_takeover":"client_no_context_takeover"])C=X>=Y._threshold;this._compress=C}else C=!1,J=0;if(Q.fin)this._firstFragment=!0;let F={[D5]:X,fin:Q.fin,generateMask:this._generateMask,mask:Q.mask,maskBuffer:this._maskBuffer,opcode:J,readOnly:G,rsv1:C};if(VE(A))if(this._state!==fC)this.enqueue([this.getBlobData,A,this._compress,F,B]);else this.getBlobData(A,this._compress,F,B);else if(this._state!==fC)this.enqueue([this.dispatch,A,this._compress,F,B]);else this.dispatch(A,this._compress,F,B)}getBlobData(A,Q,B,Y){this._bufferedBytes+=B[D5],this._state=qGB,A.arrayBuffer().then((J)=>{if(this._socket.destroyed){let X=Error("The socket was closed while the blob was being read");process.nextTick(Km,this,X,Y);return}this._bufferedBytes-=B[D5];let C=ZZ(J);if(!Q)this._state=fC,this.sendFrame(g7.frame(C,B),Y),this.dequeue();else this.dispatch(C,Q,B,Y)}).catch((J)=>{process.nextTick(MGB,this,J,Y)})}dispatch(A,Q,B,Y){if(!Q){this.sendFrame(g7.frame(A,B),Y);return}let J=this._extensions[fKA.extensionName];this._bufferedBytes+=B[D5],this._state=LGB,J.compress(A,B.fin,(C,X)=>{if(this._socket.destroyed){let G=Error("The socket was closed while data was being compressed");Km(this,G,Y);return}this._bufferedBytes-=B[D5],this._state=fC,B.readOnly=!1,this.sendFrame(g7.frame(X,B),Y),this.dequeue()})}dequeue(){while(this._state===fC&&this._queue.length){let A=this._queue.shift();this._bufferedBytes-=A[3][D5],Reflect.apply(A[0],this,A.slice(1))}}enqueue(A){this._bufferedBytes+=A[3][D5],this._queue.push(A)}sendFrame(A,Q){if(A.length===2)this._socket.cork(),this._socket.write(A[0]),this._socket.write(A[1],Q),this._socket.uncork();else this._socket.write(A[0],Q)}}mKA.exports=g7;function Km(A,Q,B){if(typeof B==="function")B(Q);for(let Y=0;Y{var{kForOnEventAttribute:PD,kListener:Im}=xX(),uKA=Symbol("kCode"),dKA=Symbol("kData"),cKA=Symbol("kError"),lKA=Symbol("kMessage"),pKA=Symbol("kReason"),HE=Symbol("kTarget"),iKA=Symbol("kType"),nKA=Symbol("kWasClean");class x7{constructor(A){this[HE]=null,this[iKA]=A}get target(){return this[HE]}get type(){return this[iKA]}}Object.defineProperty(x7.prototype,"target",{enumerable:!0});Object.defineProperty(x7.prototype,"type",{enumerable:!0});class DE extends x7{constructor(A,Q={}){super(A);this[uKA]=Q.code===void 0?0:Q.code,this[pKA]=Q.reason===void 0?"":Q.reason,this[nKA]=Q.wasClean===void 0?!1:Q.wasClean}get code(){return this[uKA]}get reason(){return this[pKA]}get wasClean(){return this[nKA]}}Object.defineProperty(DE.prototype,"code",{enumerable:!0});Object.defineProperty(DE.prototype,"reason",{enumerable:!0});Object.defineProperty(DE.prototype,"wasClean",{enumerable:!0});class TD extends x7{constructor(A,Q={}){super(A);this[cKA]=Q.error===void 0?null:Q.error,this[lKA]=Q.message===void 0?"":Q.message}get error(){return this[cKA]}get message(){return this[lKA]}}Object.defineProperty(TD.prototype,"error",{enumerable:!0});Object.defineProperty(TD.prototype,"message",{enumerable:!0});class qw extends x7{constructor(A,Q={}){super(A);this[dKA]=Q.data===void 0?null:Q.data}get data(){return this[dKA]}}Object.defineProperty(qw.prototype,"data",{enumerable:!0});var zGB={addEventListener(A,Q,B={}){for(let J of this.listeners(A))if(!B[PD]&&J[Im]===Q&&!J[PD])return;let Y;if(A==="message")Y=function(C,X){let G=new qw("message",{data:X?C:C.toString()});G[HE]=this,Lw(Q,this,G)};else if(A==="close")Y=function(C,X){let G=new DE("close",{code:C,reason:X.toString(),wasClean:this._closeFrameReceived&&this._closeFrameSent});G[HE]=this,Lw(Q,this,G)};else if(A==="error")Y=function(C){let X=new TD("error",{error:C,message:C.message});X[HE]=this,Lw(Q,this,X)};else if(A==="open")Y=function(){let C=new x7("open");C[HE]=this,Lw(Q,this,C)};else return;if(Y[PD]=!!B[PD],Y[Im]=Q,B.once)this.once(A,Y);else this.on(A,Y)},removeEventListener(A,Q){for(let B of this.listeners(A))if(B[Im]===Q&&!B[PD]){this.removeListener(A,B);break}}};sKA.exports={CloseEvent:DE,ErrorEvent:TD,Event:x7,EventTarget:zGB,MessageEvent:qw};function Lw(A,Q,B){if(typeof A==="object"&&A.handleEvent)A.handleEvent.call(A,B);else A.call(Q,B)}});var Hm=R((YHY,aKA)=>{var{tokenChars:SD}=KE();function i1(A,Q,B){if(A[Q]===void 0)A[Q]=[B];else A[Q].push(B)}function RGB(A){let Q=Object.create(null),B=Object.create(null),Y=!1,J=!1,C=!1,X,G,F=-1,W=-1,Z=-1,U=0;for(;U{let B=A[Q];if(!Array.isArray(B))B=[B];return B.map((Y)=>{return[Q].concat(Object.keys(Y).map((J)=>{let C=Y[J];if(!Array.isArray(C))C=[C];return C.map((X)=>X===!0?J:`${J}=${X}`).join("; ")})).join("; ")}).join(", ")}).join(", ")}aKA.exports={format:wGB,parse:RGB}});var ww=R((XHY,FVA)=>{var jGB=u("events"),OGB=u("https"),PGB=u("http"),eKA=u("net"),TGB=u("tls"),{randomBytes:SGB,createHash:kGB}=u("crypto"),{Duplex:JHY,Readable:CHY}=u("stream"),{URL:Dm}=u("url"),f7=OD(),_GB=Em(),vGB=Vm(),{isBlob:yGB}=KE(),{BINARY_TYPES:oKA,EMPTY_BUFFER:Mw,GUID:hGB,kForOnEventAttribute:Nm,kListener:gGB,kStatusCode:xGB,kWebSocket:dY,NOOP:AVA}=xX(),{EventTarget:{addEventListener:fGB,removeEventListener:bGB}}=rKA(),{format:mGB,parse:uGB}=Hm(),{toBuffer:dGB}=wD(),QVA=Symbol("kAborted"),Lm=[8,13],bX=["CONNECTING","OPEN","CLOSING","CLOSED"],cGB=/^[!#$%&'*+\-.0-9A-Z^_`|a-z~]+$/;class xQ extends jGB{constructor(A,Q,B){super();if(this._binaryType=oKA[0],this._closeCode=1006,this._closeFrameReceived=!1,this._closeFrameSent=!1,this._closeMessage=Mw,this._closeTimer=null,this._errorEmitted=!1,this._extensions={},this._paused=!1,this._protocol="",this._readyState=xQ.CONNECTING,this._receiver=null,this._sender=null,this._socket=null,A!==null){if(this._bufferedAmount=0,this._isServer=!1,this._redirects=0,Q===void 0)Q=[];else if(!Array.isArray(Q))if(typeof Q==="object"&&Q!==null)B=Q,Q=[];else Q=[Q];BVA(this,A,Q,B)}else this._autoPong=B.autoPong,this._isServer=!0}get binaryType(){return this._binaryType}set binaryType(A){if(!oKA.includes(A))return;if(this._binaryType=A,this._receiver)this._receiver._binaryType=A}get bufferedAmount(){if(!this._socket)return this._bufferedAmount;return this._socket._writableState.length+this._sender._bufferedBytes}get extensions(){return Object.keys(this._extensions).join()}get isPaused(){return this._paused}get onclose(){return null}get onerror(){return null}get onopen(){return null}get onmessage(){return null}get protocol(){return this._protocol}get readyState(){return this._readyState}get url(){return this._url}setSocket(A,Q,B){let Y=new _GB({allowSynchronousEvents:B.allowSynchronousEvents,binaryType:this.binaryType,extensions:this._extensions,isServer:this._isServer,maxPayload:B.maxPayload,skipUTF8Validation:B.skipUTF8Validation}),J=new vGB(A,this._extensions,B.generateMask);if(this._receiver=Y,this._sender=J,this._socket=A,Y[dY]=this,J[dY]=this,A[dY]=this,Y.on("conclude",iGB),Y.on("drain",nGB),Y.on("error",sGB),Y.on("message",rGB),Y.on("ping",aGB),Y.on("pong",oGB),J.onerror=tGB,A.setTimeout)A.setTimeout(0);if(A.setNoDelay)A.setNoDelay();if(Q.length>0)A.unshift(Q);A.on("close",CVA),A.on("data",Rw),A.on("end",XVA),A.on("error",GVA),this._readyState=xQ.OPEN,this.emit("open")}emitClose(){if(!this._socket){this._readyState=xQ.CLOSED,this.emit("close",this._closeCode,this._closeMessage);return}if(this._extensions[f7.extensionName])this._extensions[f7.extensionName].cleanup();this._receiver.removeAllListeners(),this._readyState=xQ.CLOSED,this.emit("close",this._closeCode,this._closeMessage)}close(A,Q){if(this.readyState===xQ.CLOSED)return;if(this.readyState===xQ.CONNECTING){L8(this,this._req,"WebSocket was closed before the connection was established");return}if(this.readyState===xQ.CLOSING){if(this._closeFrameSent&&(this._closeFrameReceived||this._receiver._writableState.errorEmitted))this._socket.end();return}this._readyState=xQ.CLOSING,this._sender.close(A,Q,!this._isServer,(B)=>{if(B)return;if(this._closeFrameSent=!0,this._closeFrameReceived||this._receiver._writableState.errorEmitted)this._socket.end()}),JVA(this)}pause(){if(this.readyState===xQ.CONNECTING||this.readyState===xQ.CLOSED)return;this._paused=!0,this._socket.pause()}ping(A,Q,B){if(this.readyState===xQ.CONNECTING)throw Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof A==="function")B=A,A=Q=void 0;else if(typeof Q==="function")B=Q,Q=void 0;if(typeof A==="number")A=A.toString();if(this.readyState!==xQ.OPEN){qm(this,A,B);return}if(Q===void 0)Q=!this._isServer;this._sender.ping(A||Mw,Q,B)}pong(A,Q,B){if(this.readyState===xQ.CONNECTING)throw Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof A==="function")B=A,A=Q=void 0;else if(typeof Q==="function")B=Q,Q=void 0;if(typeof A==="number")A=A.toString();if(this.readyState!==xQ.OPEN){qm(this,A,B);return}if(Q===void 0)Q=!this._isServer;this._sender.pong(A||Mw,Q,B)}resume(){if(this.readyState===xQ.CONNECTING||this.readyState===xQ.CLOSED)return;if(this._paused=!1,!this._receiver._writableState.needDrain)this._socket.resume()}send(A,Q,B){if(this.readyState===xQ.CONNECTING)throw Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof Q==="function")B=Q,Q={};if(typeof A==="number")A=A.toString();if(this.readyState!==xQ.OPEN){qm(this,A,B);return}let Y={binary:typeof A!=="string",mask:!this._isServer,compress:!0,fin:!0,...Q};if(!this._extensions[f7.extensionName])Y.compress=!1;this._sender.send(A||Mw,Y,B)}terminate(){if(this.readyState===xQ.CLOSED)return;if(this.readyState===xQ.CONNECTING){L8(this,this._req,"WebSocket was closed before the connection was established");return}if(this._socket)this._readyState=xQ.CLOSING,this._socket.destroy()}}Object.defineProperty(xQ,"CONNECTING",{enumerable:!0,value:bX.indexOf("CONNECTING")});Object.defineProperty(xQ.prototype,"CONNECTING",{enumerable:!0,value:bX.indexOf("CONNECTING")});Object.defineProperty(xQ,"OPEN",{enumerable:!0,value:bX.indexOf("OPEN")});Object.defineProperty(xQ.prototype,"OPEN",{enumerable:!0,value:bX.indexOf("OPEN")});Object.defineProperty(xQ,"CLOSING",{enumerable:!0,value:bX.indexOf("CLOSING")});Object.defineProperty(xQ.prototype,"CLOSING",{enumerable:!0,value:bX.indexOf("CLOSING")});Object.defineProperty(xQ,"CLOSED",{enumerable:!0,value:bX.indexOf("CLOSED")});Object.defineProperty(xQ.prototype,"CLOSED",{enumerable:!0,value:bX.indexOf("CLOSED")});["binaryType","bufferedAmount","extensions","isPaused","protocol","readyState","url"].forEach((A)=>{Object.defineProperty(xQ.prototype,A,{enumerable:!0})});["open","error","close","message"].forEach((A)=>{Object.defineProperty(xQ.prototype,`on${A}`,{enumerable:!0,get(){for(let Q of this.listeners(A))if(Q[Nm])return Q[gGB];return null},set(Q){for(let B of this.listeners(A))if(B[Nm]){this.removeListener(A,B);break}if(typeof Q!=="function")return;this.addEventListener(A,Q,{[Nm]:!0})}})});xQ.prototype.addEventListener=fGB;xQ.prototype.removeEventListener=bGB;FVA.exports=xQ;function BVA(A,Q,B,Y){let J={allowSynchronousEvents:!0,autoPong:!0,protocolVersion:Lm[1],maxPayload:104857600,skipUTF8Validation:!1,perMessageDeflate:!0,followRedirects:!1,maxRedirects:10,...Y,socketPath:void 0,hostname:void 0,protocol:void 0,timeout:void 0,method:"GET",host:void 0,path:void 0,port:void 0};if(A._autoPong=J.autoPong,!Lm.includes(J.protocolVersion))throw RangeError(`Unsupported protocol version: ${J.protocolVersion} (supported versions: ${Lm.join(", ")})`);let C;if(Q instanceof Dm)C=Q;else try{C=new Dm(Q)}catch(I){throw SyntaxError(`Invalid URL: ${Q}`)}if(C.protocol==="http:")C.protocol="ws:";else if(C.protocol==="https:")C.protocol="wss:";A._url=C.href;let X=C.protocol==="wss:",G=C.protocol==="ws+unix:",F;if(C.protocol!=="ws:"&&!X&&!G)F=`The URL's protocol must be one of "ws:", "wss:", "http:", "https:", or "ws+unix:"`;else if(G&&!C.pathname)F="The URL's pathname is empty";else if(C.hash)F="The URL contains a fragment identifier";if(F){let I=SyntaxError(F);if(A._redirects===0)throw I;else{zw(A,I);return}}let W=X?443:80,Z=SGB(16).toString("base64"),U=X?OGB.request:PGB.request,$=new Set,E;if(J.createConnection=J.createConnection||(X?pGB:lGB),J.defaultPort=J.defaultPort||W,J.port=C.port||W,J.host=C.hostname.startsWith("[")?C.hostname.slice(1,-1):C.hostname,J.headers={...J.headers,"Sec-WebSocket-Version":J.protocolVersion,"Sec-WebSocket-Key":Z,Connection:"Upgrade",Upgrade:"websocket"},J.path=C.pathname+C.search,J.timeout=J.handshakeTimeout,J.perMessageDeflate)E=new f7(J.perMessageDeflate!==!0?J.perMessageDeflate:{},!1,J.maxPayload),J.headers["Sec-WebSocket-Extensions"]=mGB({[f7.extensionName]:E.offer()});if(B.length){for(let I of B){if(typeof I!=="string"||!cGB.test(I)||$.has(I))throw SyntaxError("An invalid or duplicated subprotocol was specified");$.add(I)}J.headers["Sec-WebSocket-Protocol"]=B.join(",")}if(J.origin)if(J.protocolVersion<13)J.headers["Sec-WebSocket-Origin"]=J.origin;else J.headers.Origin=J.origin;if(C.username||C.password)J.auth=`${C.username}:${C.password}`;if(G){let I=J.path.split(":");J.socketPath=I[0],J.path=I[1]}let K;if(J.followRedirects){if(A._redirects===0){A._originalIpc=G,A._originalSecure=X,A._originalHostOrSocketPath=G?J.socketPath:C.host;let I=Y&&Y.headers;if(Y={...Y,headers:{}},I)for(let[V,H]of Object.entries(I))Y.headers[V.toLowerCase()]=H}else if(A.listenerCount("redirect")===0){let I=G?A._originalIpc?J.socketPath===A._originalHostOrSocketPath:!1:A._originalIpc?!1:C.host===A._originalHostOrSocketPath;if(!I||A._originalSecure&&!X){if(delete J.headers.authorization,delete J.headers.cookie,!I)delete J.headers.host;J.auth=void 0}}if(J.auth&&!Y.headers.authorization)Y.headers.authorization="Basic "+Buffer.from(J.auth).toString("base64");if(K=A._req=U(J),A._redirects)A.emit("redirect",A.url,K)}else K=A._req=U(J);if(J.timeout)K.on("timeout",()=>{L8(A,K,"Opening handshake has timed out")});if(K.on("error",(I)=>{if(K===null||K[QVA])return;K=A._req=null,zw(A,I)}),K.on("response",(I)=>{let V=I.headers.location,H=I.statusCode;if(V&&J.followRedirects&&H>=300&&H<400){if(++A._redirects>J.maxRedirects){L8(A,K,"Maximum redirects exceeded");return}K.abort();let D;try{D=new Dm(V,Q)}catch(L){let z=SyntaxError(`Invalid URL: ${V}`);zw(A,z);return}BVA(A,D,B,Y)}else if(!A.emit("unexpected-response",K,I))L8(A,K,`Unexpected server response: ${I.statusCode}`)}),K.on("upgrade",(I,V,H)=>{if(A.emit("upgrade",I),A.readyState!==xQ.CONNECTING)return;K=A._req=null;let D=I.headers.upgrade;if(D===void 0||D.toLowerCase()!=="websocket"){L8(A,V,"Invalid Upgrade header");return}let L=kGB("sha1").update(Z+hGB).digest("base64");if(I.headers["sec-websocket-accept"]!==L){L8(A,V,"Invalid Sec-WebSocket-Accept header");return}let z=I.headers["sec-websocket-protocol"],M;if(z!==void 0){if(!$.size)M="Server sent a subprotocol but none was requested";else if(!$.has(z))M="Server sent an invalid subprotocol"}else if($.size)M="Server sent no subprotocol";if(M){L8(A,V,M);return}if(z)A._protocol=z;let N=I.headers["sec-websocket-extensions"];if(N!==void 0){if(!E){L8(A,V,"Server sent a Sec-WebSocket-Extensions header but no extension was requested");return}let q;try{q=uGB(N)}catch(P){L8(A,V,"Invalid Sec-WebSocket-Extensions header");return}let w=Object.keys(q);if(w.length!==1||w[0]!==f7.extensionName){L8(A,V,"Server indicated an extension that was not requested");return}try{E.accept(q[f7.extensionName])}catch(P){L8(A,V,"Invalid Sec-WebSocket-Extensions header");return}A._extensions[f7.extensionName]=E}A.setSocket(V,H,{allowSynchronousEvents:J.allowSynchronousEvents,generateMask:J.generateMask,maxPayload:J.maxPayload,skipUTF8Validation:J.skipUTF8Validation})}),J.finishRequest)J.finishRequest(K,A);else K.end()}function zw(A,Q){A._readyState=xQ.CLOSING,A._errorEmitted=!0,A.emit("error",Q),A.emitClose()}function lGB(A){return A.path=A.socketPath,eKA.connect(A)}function pGB(A){if(A.path=void 0,!A.servername&&A.servername!=="")A.servername=eKA.isIP(A.host)?"":A.host;return TGB.connect(A)}function L8(A,Q,B){A._readyState=xQ.CLOSING;let Y=Error(B);if(Error.captureStackTrace(Y,L8),Q.setHeader){if(Q[QVA]=!0,Q.abort(),Q.socket&&!Q.socket.destroyed)Q.socket.destroy();process.nextTick(zw,A,Y)}else Q.destroy(Y),Q.once("error",A.emit.bind(A,"error")),Q.once("close",A.emitClose.bind(A))}function qm(A,Q,B){if(Q){let Y=yGB(Q)?Q.size:dGB(Q).length;if(A._socket)A._sender._bufferedBytes+=Y;else A._bufferedAmount+=Y}if(B){let Y=Error(`WebSocket is not open: readyState ${A.readyState} (${bX[A.readyState]})`);process.nextTick(B,Y)}}function iGB(A,Q){let B=this[dY];if(B._closeFrameReceived=!0,B._closeMessage=Q,B._closeCode=A,B._socket[dY]===void 0)return;if(B._socket.removeListener("data",Rw),process.nextTick(YVA,B._socket),A===1005)B.close();else B.close(A,Q)}function nGB(){let A=this[dY];if(!A.isPaused)A._socket.resume()}function sGB(A){let Q=this[dY];if(Q._socket[dY]!==void 0)Q._socket.removeListener("data",Rw),process.nextTick(YVA,Q._socket),Q.close(A[xGB]);if(!Q._errorEmitted)Q._errorEmitted=!0,Q.emit("error",A)}function tKA(){this[dY].emitClose()}function rGB(A,Q){this[dY].emit("message",A,Q)}function aGB(A){let Q=this[dY];if(Q._autoPong)Q.pong(A,!this._isServer,AVA);Q.emit("ping",A)}function oGB(A){this[dY].emit("pong",A)}function YVA(A){A.resume()}function tGB(A){let Q=this[dY];if(Q.readyState===xQ.CLOSED)return;if(Q.readyState===xQ.OPEN)Q._readyState=xQ.CLOSING,JVA(Q);if(this._socket.end(),!Q._errorEmitted)Q._errorEmitted=!0,Q.emit("error",A)}function JVA(A){A._closeTimer=setTimeout(A._socket.destroy.bind(A._socket),30000)}function CVA(){let A=this[dY];this.removeListener("close",CVA),this.removeListener("data",Rw),this.removeListener("end",XVA),A._readyState=xQ.CLOSING;let Q;if(!this._readableState.endEmitted&&!A._closeFrameReceived&&!A._receiver._writableState.errorEmitted&&(Q=A._socket.read())!==null)A._receiver.write(Q);if(A._receiver.end(),this[dY]=void 0,clearTimeout(A._closeTimer),A._receiver._writableState.finished||A._receiver._writableState.errorEmitted)A.emitClose();else A._receiver.on("error",tKA),A._receiver.on("finish",tKA)}function Rw(A){if(!this[dY]._receiver.write(A))this.pause()}function XVA(){let A=this[dY];A._readyState=xQ.CLOSING,A._receiver.end(),this.end()}function GVA(){let A=this[dY];if(this.removeListener("error",GVA),this.on("error",AVA),A)A._readyState=xQ.CLOSING,this.destroy()}});var UVA=R((FHY,$VA)=>{var GHY=ww(),{Duplex:eGB}=u("stream");function WVA(A){A.emit("close")}function A7B(){if(!this.destroyed&&this._writableState.finished)this.destroy()}function ZVA(A){if(this.removeListener("error",ZVA),this.destroy(),this.listenerCount("error")===0)this.emit("error",A)}function Q7B(A,Q){let B=!0,Y=new eGB({...Q,autoDestroy:!1,emitClose:!1,objectMode:!1,writableObjectMode:!1});return A.on("message",function(C,X){let G=!X&&Y._readableState.objectMode?C.toString():C;if(!Y.push(G))A.pause()}),A.once("error",function(C){if(Y.destroyed)return;B=!1,Y.destroy(C)}),A.once("close",function(){if(Y.destroyed)return;Y.push(null)}),Y._destroy=function(J,C){if(A.readyState===A.CLOSED){C(J),process.nextTick(WVA,Y);return}let X=!1;if(A.once("error",function(F){X=!0,C(F)}),A.once("close",function(){if(!X)C(J);process.nextTick(WVA,Y)}),B)A.terminate()},Y._final=function(J){if(A.readyState===A.CONNECTING){A.once("open",function(){Y._final(J)});return}if(A._socket===null)return;if(A._socket._writableState.finished){if(J(),Y._readableState.endEmitted)Y.destroy()}else A._socket.once("finish",function(){J()}),A.close()},Y._read=function(){if(A.isPaused)A.resume()},Y._write=function(J,C,X){if(A.readyState===A.CONNECTING){A.once("open",function(){Y._write(J,C,X)});return}A.send(J,X)},Y.on("end",A7B),Y.on("error",ZVA),Y}$VA.exports=Q7B});var KVA=R((WHY,EVA)=>{var{tokenChars:B7B}=KE();function Y7B(A){let Q=new Set,B=-1,Y=-1,J=0;for(J;J{var J7B=u("events"),jw=u("http"),{Duplex:ZHY}=u("stream"),{createHash:C7B}=u("crypto"),VVA=Hm(),UZ=OD(),X7B=KVA(),G7B=ww(),{GUID:F7B,kWebSocket:W7B}=xX(),Z7B=/^[+/0-9A-Za-z]{22}==$/;class HVA extends J7B{constructor(A,Q){super();if(A={allowSynchronousEvents:!0,autoPong:!0,maxPayload:104857600,skipUTF8Validation:!1,perMessageDeflate:!1,handleProtocols:null,clientTracking:!0,verifyClient:null,noServer:!1,backlog:null,server:null,host:null,path:null,port:null,WebSocket:G7B,...A},A.port==null&&!A.server&&!A.noServer||A.port!=null&&(A.server||A.noServer)||A.server&&A.noServer)throw TypeError('One and only one of the "port", "server", or "noServer" options must be specified');if(A.port!=null)this._server=jw.createServer((B,Y)=>{let J=jw.STATUS_CODES[426];Y.writeHead(426,{"Content-Length":J.length,"Content-Type":"text/plain"}),Y.end(J)}),this._server.listen(A.port,A.host,A.backlog,Q);else if(A.server)this._server=A.server;if(this._server){let B=this.emit.bind(this,"connection");this._removeListeners=$7B(this._server,{listening:this.emit.bind(this,"listening"),error:this.emit.bind(this,"error"),upgrade:(Y,J,C)=>{this.handleUpgrade(Y,J,C,B)}})}if(A.perMessageDeflate===!0)A.perMessageDeflate={};if(A.clientTracking)this.clients=new Set,this._shouldEmitClose=!1;this.options=A,this._state=0}address(){if(this.options.noServer)throw Error('The server is operating in "noServer" mode');if(!this._server)return null;return this._server.address()}close(A){if(this._state===2){if(A)this.once("close",()=>{A(Error("The server is not running"))});process.nextTick(kD,this);return}if(A)this.once("close",A);if(this._state===1)return;if(this._state=1,this.options.noServer||this.options.server){if(this._server)this._removeListeners(),this._removeListeners=this._server=null;if(this.clients)if(!this.clients.size)process.nextTick(kD,this);else this._shouldEmitClose=!0;else process.nextTick(kD,this)}else{let Q=this._server;this._removeListeners(),this._removeListeners=this._server=null,Q.close(()=>{kD(this)})}}shouldHandle(A){if(this.options.path){let Q=A.url.indexOf("?");if((Q!==-1?A.url.slice(0,Q):A.url)!==this.options.path)return!1}return!0}handleUpgrade(A,Q,B,Y){Q.on("error",IVA);let J=A.headers["sec-websocket-key"],C=A.headers.upgrade,X=+A.headers["sec-websocket-version"];if(A.method!=="GET"){EZ(this,A,Q,405,"Invalid HTTP method");return}if(C===void 0||C.toLowerCase()!=="websocket"){EZ(this,A,Q,400,"Invalid Upgrade header");return}if(J===void 0||!Z7B.test(J)){EZ(this,A,Q,400,"Missing or invalid Sec-WebSocket-Key header");return}if(X!==13&&X!==8){EZ(this,A,Q,400,"Missing or invalid Sec-WebSocket-Version header",{"Sec-WebSocket-Version":"13, 8"});return}if(!this.shouldHandle(A)){_D(Q,400);return}let G=A.headers["sec-websocket-protocol"],F=new Set;if(G!==void 0)try{F=X7B.parse(G)}catch(U){EZ(this,A,Q,400,"Invalid Sec-WebSocket-Protocol header");return}let W=A.headers["sec-websocket-extensions"],Z={};if(this.options.perMessageDeflate&&W!==void 0){let U=new UZ(this.options.perMessageDeflate,!0,this.options.maxPayload);try{let $=VVA.parse(W);if($[UZ.extensionName])U.accept($[UZ.extensionName]),Z[UZ.extensionName]=U}catch($){EZ(this,A,Q,400,"Invalid or unacceptable Sec-WebSocket-Extensions header");return}}if(this.options.verifyClient){let U={origin:A.headers[`${X===8?"sec-websocket-origin":"origin"}`],secure:!!(A.socket.authorized||A.socket.encrypted),req:A};if(this.options.verifyClient.length===2){this.options.verifyClient(U,($,E,K,I)=>{if(!$)return _D(Q,E||401,K,I);this.completeUpgrade(Z,J,F,A,Q,B,Y)});return}if(!this.options.verifyClient(U))return _D(Q,401)}this.completeUpgrade(Z,J,F,A,Q,B,Y)}completeUpgrade(A,Q,B,Y,J,C,X){if(!J.readable||!J.writable)return J.destroy();if(J[W7B])throw Error("server.handleUpgrade() was called more than once with the same socket, possibly due to a misconfiguration");if(this._state>0)return _D(J,503);let F=["HTTP/1.1 101 Switching Protocols","Upgrade: websocket","Connection: Upgrade",`Sec-WebSocket-Accept: ${C7B("sha1").update(Q+F7B).digest("base64")}`],W=new this.options.WebSocket(null,void 0,this.options);if(B.size){let Z=this.options.handleProtocols?this.options.handleProtocols(B,Y):B.values().next().value;if(Z)F.push(`Sec-WebSocket-Protocol: ${Z}`),W._protocol=Z}if(A[UZ.extensionName]){let Z=A[UZ.extensionName].params,U=VVA.format({[UZ.extensionName]:[Z]});F.push(`Sec-WebSocket-Extensions: ${U}`),W._extensions=A}if(this.emit("headers",F,Y),J.write(F.concat(`\r `).join(`\r -`)),J.removeListener("error",tKA),W.setSocket(J,C,{allowSynchronousEvents:this.options.allowSynchronousEvents,maxPayload:this.options.maxPayload,skipUTF8Validation:this.options.skipUTF8Validation}),this.clients)this.clients.add(W),W.on("close",()=>{if(this.clients.delete(W),this._shouldEmitClose&&!this.clients.size)process.nextTick(jD,this)});X(W,Y)}}AVA.exports=eKA;function r6B(A,Q){for(let B of Object.keys(Q))A.on(B,Q[B]);return function(){for(let Y of Object.keys(Q))A.removeListener(Y,Q[Y])}}function jD(A){A._state=2,A.emit("close")}function tKA(){this.destroy()}function OD(A,Q,B,Y){B=B||Mw.STATUS_CODES[Q],Y={Connection:"close","Content-Type":"text/html","Content-Length":Buffer.byteLength(B),...Y},A.once("finish",A.destroy),A.end(`HTTP/1.1 ${Q} ${Mw.STATUS_CODES[Q]}\r +`)),J.removeListener("error",IVA),W.setSocket(J,C,{allowSynchronousEvents:this.options.allowSynchronousEvents,maxPayload:this.options.maxPayload,skipUTF8Validation:this.options.skipUTF8Validation}),this.clients)this.clients.add(W),W.on("close",()=>{if(this.clients.delete(W),this._shouldEmitClose&&!this.clients.size)process.nextTick(kD,this)});X(W,Y)}}DVA.exports=HVA;function $7B(A,Q){for(let B of Object.keys(Q))A.on(B,Q[B]);return function(){for(let Y of Object.keys(Q))A.removeListener(Y,Q[Y])}}function kD(A){A._state=2,A.emit("close")}function IVA(){this.destroy()}function _D(A,Q,B,Y){B=B||jw.STATUS_CODES[Q],Y={Connection:"close","Content-Type":"text/html","Content-Length":Buffer.byteLength(B),...Y},A.once("finish",A.destroy),A.end(`HTTP/1.1 ${Q} ${jw.STATUS_CODES[Q]}\r `+Object.keys(Y).map((J)=>`${J}: ${Y[J]}`).join(`\r `)+`\r \r -`+B)}function ZZ(A,Q,B,Y,J,C){if(A.listenerCount("wsClientError")){let X=Error(J);Error.captureStackTrace(X,ZZ),A.emit("wsClientError",X,B,Q)}else OD(B,Y,J,C)}});var Vm=R((XVA)=>{Object.defineProperty(XVA,"__esModule",{value:!0});XVA.buildDefaultCredentialsProvider=Y7B;function Y7B(){let A=process.env.HYTOPIA_API_KEY,Q=process.env.HYTOPIA_GAME_ID,B=process.env.HYTOPIA_LOBBY_ID;if(!A)throw Error("Missing environment variable HYTOPIA_API_KEY");if(!Q)throw Error("Missing environment variable HYTOPIA_GAME_ID");if(!B)throw Error("Missing environment variable HYTOPIA_LOBBY_ID");return async()=>({apiKey:A,gameId:Q,lobbyId:B})}});var FVA=R((GVA)=>{Object.defineProperty(GVA,"__esModule",{value:!0});GVA.getLoadout=C7B;async function C7B(A){return await fetch(`${this.context.baseUrl}/Locker/GetLoadoutForGameByUserId/${A}`).then((Q)=>Q.json()).then((Q)=>Q).catch(()=>({error:{code:"networkError",message:"A network error happened"}}))}});var $VA=R((ZVA)=>{Object.defineProperty(ZVA,"__esModule",{value:!0});ZVA.default=WVA;function WVA(A){if(!A)return A;for(let[B,Y]of Object.entries(A))if(typeof Y==="string"){var Q=/^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2}(?:\.\d*))(?:Z|(\+|-)([\d|:]*))?$/;if(Q.test(Y))A[B]=new Date(Y)}else if(typeof Y==="object")WVA(Y);return A}});var UVA=R((PD)=>{var F7B=PD&&PD.__importDefault||function(A){return A&&A.__esModule?A:{default:A}};Object.defineProperty(PD,"__esModule",{value:!0});PD.getSession=Z7B;var W7B=F7B($VA());async function Z7B(A){let Q=await this.context.credentialsProvider();return await fetch(`${this.context.baseUrl}/Play/Matchmaking/Lobbies/ValidateSession`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({lobbyId:Q.lobbyId,sessionToken:A})}).then((B)=>B.json()).then((B)=>(0,W7B.default)(B)).then((B)=>B).catch(()=>({error:{code:"networkError",message:"A network error happened"}}))}});var KVA=R((EVA)=>{Object.defineProperty(EVA,"__esModule",{value:!0});EVA.get=$7B;async function $7B(A){let Q=await this.context.credentialsProvider();return await fetch(`${this.context.baseUrl}/Play/KV/Get/${Q.gameId}/${A}`,{headers:{"X-Api-Key":Q.apiKey}}).then((B)=>B.json()).then((B)=>B).catch(()=>({error:{code:"networkError",message:"A network error happened"}}))}});var IVA=R((VVA)=>{Object.defineProperty(VVA,"__esModule",{value:!0});VVA.set=E7B;async function E7B(A,Q,B="merge"){let Y=await this.context.credentialsProvider();return await fetch(`${this.context.baseUrl}/Play/KV/Set/${Y.gameId}/${A}?mode=${B}`,{method:"POST",headers:{"Content-Type":"application/json","X-Api-Key":Y.apiKey},body:JSON.stringify(Q)}).then((J)=>J.json()).then((J)=>J).catch(()=>({error:{code:"networkError",message:"A network error happened"}}))}});var DVA=R((HVA)=>{Object.defineProperty(HVA,"__esModule",{value:!0});HVA.unset=V7B;async function V7B(A){let Q=await this.context.credentialsProvider();return await fetch(`${this.context.baseUrl}/Play/KV/Unset/${Q.gameId}/${A}`,{method:"DELETE",headers:{"X-Api-Key":Q.apiKey}}).then((B)=>B.json()).then((B)=>B).catch(()=>({error:{code:"networkError",message:"A network error happened"}}))}});var MVA=R((LVA)=>{Object.defineProperty(LVA,"__esModule",{value:!0});LVA.KVClient=void 0;var H7B=KVA(),D7B=IVA(),N7B=DVA();class NVA{context;constructor(A){this.context=A}get=H7B.get;set=D7B.set;unset=N7B.unset}LVA.KVClient=NVA});var OVA=R((RVA)=>{Object.defineProperty(RVA,"__esModule",{value:!0});RVA.CreativeGateway=RVA.DEFAULT_BASE_URL=void 0;var L7B=Vm(),q7B=FVA(),M7B=UVA(),z7B=MVA();RVA.DEFAULT_BASE_URL="https://prod.creative.hytopia.com";class zVA{context;kv;constructor(A){if(A?.baseUrl){if(!A.baseUrl.startsWith("https://")&&!A.baseUrl.startsWith("http://"))throw Error("Base URL, if provided, must start with https:// or http://");if(A.baseUrl.endsWith("/"))throw Error("Base URL, if provided, must not end with '/'")}this.context={baseUrl:A?.baseUrl??process.env.HYTOPIA_CREATIVE_GATEWAY_BASE_URL??RVA.DEFAULT_BASE_URL,credentialsProvider:A?.credentialsProvider??(0,L7B.buildDefaultCredentialsProvider)()},this.kv=new z7B.KVClient(this.context)}getLoadout=q7B.getLoadout;getSession=M7B.getSession}RVA.CreativeGateway=zVA});var PVA=R((Rw)=>{Object.defineProperty(Rw,"__esModule",{value:!0});Rw.buildDefaultCredentialsProvider=Rw.CreativeGateway=void 0;var R7B=OVA();Object.defineProperty(Rw,"CreativeGateway",{enumerable:!0,get:function(){return R7B.CreativeGateway}});var w7B=Vm();Object.defineProperty(Rw,"buildDefaultCredentialsProvider",{enumerable:!0,get:function(){return w7B.buildDefaultCredentialsProvider}})});var mVA=R((fVA)=>{Object.defineProperty(fVA,"__esModule",{value:!0});fVA.default=void 0;var WDY=fVA.default="ffffffff-ffff-ffff-ffff-ffffffffffff"});var cVA=R((uVA)=>{Object.defineProperty(uVA,"__esModule",{value:!0});uVA.default=void 0;var $DY=uVA.default="00000000-0000-0000-0000-000000000000"});var iVA=R((lVA)=>{Object.defineProperty(lVA,"__esModule",{value:!0});lVA.default=void 0;var EDY=lVA.default=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/i});var mD=R((nVA)=>{Object.defineProperty(nVA,"__esModule",{value:!0});nVA.default=void 0;var v7B=y7B(iVA());function y7B(A){return A&&A.__esModule?A:{default:A}}function g7B(A){return typeof A==="string"&&v7B.default.test(A)}var VDY=nVA.default=g7B});var uD=R((rVA)=>{Object.defineProperty(rVA,"__esModule",{value:!0});rVA.default=void 0;var h7B=x7B(mD());function x7B(A){return A&&A.__esModule?A:{default:A}}function f7B(A){if(!(0,h7B.default)(A))throw TypeError("Invalid UUID");let Q,B=new Uint8Array(16);return B[0]=(Q=parseInt(A.slice(0,8),16))>>>24,B[1]=Q>>>16&255,B[2]=Q>>>8&255,B[3]=Q&255,B[4]=(Q=parseInt(A.slice(9,13),16))>>>8,B[5]=Q&255,B[6]=(Q=parseInt(A.slice(14,18),16))>>>8,B[7]=Q&255,B[8]=(Q=parseInt(A.slice(19,23),16))>>>8,B[9]=Q&255,B[10]=(Q=parseInt(A.slice(24,36),16))/1099511627776&255,B[11]=Q/4294967296&255,B[12]=Q>>>24&255,B[13]=Q>>>16&255,B[14]=Q>>>8&255,B[15]=Q&255,B}var HDY=rVA.default=f7B});var bG=R((tVA)=>{Object.defineProperty(tVA,"__esModule",{value:!0});tVA.default=void 0;tVA.unsafeStringify=oVA;var b7B=m7B(mD());function m7B(A){return A&&A.__esModule?A:{default:A}}var CJ=[];for(let A=0;A<256;++A)CJ.push((A+256).toString(16).slice(1));function oVA(A,Q=0){return(CJ[A[Q+0]]+CJ[A[Q+1]]+CJ[A[Q+2]]+CJ[A[Q+3]]+"-"+CJ[A[Q+4]]+CJ[A[Q+5]]+"-"+CJ[A[Q+6]]+CJ[A[Q+7]]+"-"+CJ[A[Q+8]]+CJ[A[Q+9]]+"-"+CJ[A[Q+10]]+CJ[A[Q+11]]+CJ[A[Q+12]]+CJ[A[Q+13]]+CJ[A[Q+14]]+CJ[A[Q+15]]).toLowerCase()}function u7B(A,Q=0){let B=oVA(A,Q);if(!(0,b7B.default)(B))throw TypeError("Stringified UUID is invalid");return B}var NDY=tVA.default=u7B});var Tw=R((AIA)=>{Object.defineProperty(AIA,"__esModule",{value:!0});AIA.default=p7B;var c7B=l7B(u("node:crypto"));function l7B(A){return A&&A.__esModule?A:{default:A}}var Pw=new Uint8Array(256),Ow=Pw.length;function p7B(){if(Ow>Pw.length-16)c7B.default.randomFillSync(Pw),Ow=0;return Pw.slice(Ow,Ow+=16)}});var Om=R((QIA)=>{Object.defineProperty(QIA,"__esModule",{value:!0});QIA.default=void 0;var n7B=r7B(Tw()),s7B=bG();function r7B(A){return A&&A.__esModule?A:{default:A}}var Rm,Sw,wm=0,jm=0;function a7B(A,Q,B){let Y=Q&&B||0,J=Q||Array(16);A=A||{};let{node:C,clockseq:X}=A;if(!A._v6){if(!C)C=Rm;if(X==null)X=Sw}if(C==null||X==null){let $=A.random||(A.rng||n7B.default)();if(C==null){if(C=[$[0],$[1],$[2],$[3],$[4],$[5]],!Rm&&!A._v6)C[0]|=1,Rm=C}if(X==null){if(X=($[6]<<8|$[7])&16383,Sw===void 0&&!A._v6)Sw=X}}let G=A.msecs!==void 0?A.msecs:Date.now(),F=A.nsecs!==void 0?A.nsecs:jm+1,W=G-wm+(F-jm)/1e4;if(W<0&&A.clockseq===void 0)X=X+1&16383;if((W<0||G>wm)&&A.nsecs===void 0)F=0;if(F>=1e4)throw Error("uuid.v1(): Can't create more than 10M uuids/sec");wm=G,jm=F,Sw=X,G+=12219292800000;let Z=((G&268435455)*1e4+F)%4294967296;J[Y++]=Z>>>24&255,J[Y++]=Z>>>16&255,J[Y++]=Z>>>8&255,J[Y++]=Z&255;let U=G/4294967296*1e4&268435455;J[Y++]=U>>>8&255,J[Y++]=U&255,J[Y++]=U>>>24&15|16,J[Y++]=U>>>16&255,J[Y++]=X>>>8|128,J[Y++]=X&255;for(let $=0;$<6;++$)J[Y+$]=C[$];return Q||(0,s7B.unsafeStringify)(J)}var MDY=QIA.default=a7B});var Pm=R((YIA)=>{Object.defineProperty(YIA,"__esModule",{value:!0});YIA.default=AFB;var o7B=e7B(uD()),t7B=bG();function e7B(A){return A&&A.__esModule?A:{default:A}}function AFB(A){let Q=typeof A==="string"?(0,o7B.default)(A):A,B=QFB(Q);return typeof A==="string"?(0,t7B.unsafeStringify)(B):B}function QFB(A,Q=!1){return Uint8Array.of((A[6]&15)<<4|A[7]>>4&15,(A[7]&15)<<4|(A[4]&240)>>4,(A[4]&15)<<4|(A[5]&240)>>4,(A[5]&15)<<4|(A[0]&240)>>4,(A[0]&15)<<4|(A[1]&240)>>4,(A[1]&15)<<4|(A[2]&240)>>4,96|A[2]&15,A[3],A[8],A[9],A[10],A[11],A[12],A[13],A[14],A[15])}});var Tm=R((JIA)=>{Object.defineProperty(JIA,"__esModule",{value:!0});JIA.URL=JIA.DNS=void 0;JIA.default=WFB;var YFB=bG(),JFB=CFB(uD());function CFB(A){return A&&A.__esModule?A:{default:A}}function XFB(A){A=unescape(encodeURIComponent(A));let Q=[];for(let B=0;B{Object.defineProperty(XIA,"__esModule",{value:!0});XIA.default=void 0;var UFB=EFB(u("node:crypto"));function EFB(A){return A&&A.__esModule?A:{default:A}}function KFB(A){if(Array.isArray(A))A=Buffer.from(A);else if(typeof A==="string")A=Buffer.from(A,"utf8");return UFB.default.createHash("md5").update(A).digest()}var jDY=XIA.default=KFB});var UIA=R((ZIA)=>{Object.defineProperty(ZIA,"__esModule",{value:!0});ZIA.default=void 0;var VFB=WIA(Tm()),IFB=WIA(FIA());function WIA(A){return A&&A.__esModule?A:{default:A}}var HFB=(0,VFB.default)("v3",48,IFB.default),PDY=ZIA.default=HFB});var VIA=R((EIA)=>{Object.defineProperty(EIA,"__esModule",{value:!0});EIA.default=void 0;var DFB=NFB(u("node:crypto"));function NFB(A){return A&&A.__esModule?A:{default:A}}var SDY=EIA.default={randomUUID:DFB.default.randomUUID}});var LIA=R((DIA)=>{Object.defineProperty(DIA,"__esModule",{value:!0});DIA.default=void 0;var IIA=HIA(VIA()),LFB=HIA(Tw()),qFB=bG();function HIA(A){return A&&A.__esModule?A:{default:A}}function MFB(A,Q,B){if(IIA.default.randomUUID&&!Q&&!A)return IIA.default.randomUUID();A=A||{};let Y=A.random||(A.rng||LFB.default)();if(Y[6]=Y[6]&15|64,Y[8]=Y[8]&63|128,Q){B=B||0;for(let J=0;J<16;++J)Q[B+J]=Y[J];return Q}return(0,qFB.unsafeStringify)(Y)}var _DY=DIA.default=MFB});var zIA=R((qIA)=>{Object.defineProperty(qIA,"__esModule",{value:!0});qIA.default=void 0;var zFB=RFB(u("node:crypto"));function RFB(A){return A&&A.__esModule?A:{default:A}}function wFB(A){if(Array.isArray(A))A=Buffer.from(A);else if(typeof A==="string")A=Buffer.from(A,"utf8");return zFB.default.createHash("sha1").update(A).digest()}var yDY=qIA.default=wFB});var OIA=R((wIA)=>{Object.defineProperty(wIA,"__esModule",{value:!0});wIA.default=void 0;var jFB=RIA(Tm()),OFB=RIA(zIA());function RIA(A){return A&&A.__esModule?A:{default:A}}var PFB=(0,jFB.default)("v5",80,OFB.default),hDY=wIA.default=PFB});var SIA=R((TIA)=>{Object.defineProperty(TIA,"__esModule",{value:!0});TIA.default=_FB;var TFB=bG(),SFB=PIA(Om()),kFB=PIA(Pm());function PIA(A){return A&&A.__esModule?A:{default:A}}function _FB(A={},Q,B=0){let Y=(0,SFB.default)({...A,_v6:!0},new Uint8Array(16));if(Y=(0,kFB.default)(Y),Q){for(let J=0;J<16;J++)Q[B+J]=Y[J];return Q}return(0,TFB.unsafeStringify)(Y)}});var _IA=R((kIA)=>{Object.defineProperty(kIA,"__esModule",{value:!0});kIA.default=xFB;var yFB=hFB(uD()),gFB=bG();function hFB(A){return A&&A.__esModule?A:{default:A}}function xFB(A){let Q=typeof A==="string"?(0,yFB.default)(A):A,B=fFB(Q);return typeof A==="string"?(0,gFB.unsafeStringify)(B):B}function fFB(A){return Uint8Array.of((A[3]&15)<<4|A[4]>>4&15,(A[4]&15)<<4|(A[5]&240)>>4,(A[5]&15)<<4|A[6]&15,A[7],(A[1]&15)<<4|(A[2]&240)>>4,(A[2]&15)<<4|(A[3]&240)>>4,16|(A[0]&240)>>4,(A[0]&15)<<4|(A[1]&240)>>4,A[8],A[9],A[10],A[11],A[12],A[13],A[14],A[15])}});var xIA=R((gIA)=>{Object.defineProperty(gIA,"__esModule",{value:!0});gIA.default=void 0;var mFB=dFB(Tw()),uFB=bG();function dFB(A){return A&&A.__esModule?A:{default:A}}var vIA=null,yIA=null,fC=0;function cFB(A,Q,B){A=A||{};let Y=Q&&B||0,J=Q||new Uint8Array(16),C=A.random||(A.rng||mFB.default)(),X=A.msecs!==void 0?A.msecs:Date.now(),G=A.seq!==void 0?A.seq:null,F=yIA,W=vIA;if(X>fC&&A.msecs===void 0){if(fC=X,G!==null)F=null,W=null}if(G!==null){if(G>2147483647)G=2147483647;F=G>>>19&4095,W=G&524287}if(F===null||W===null)F=C[6]&127,F=F<<8|C[7],W=C[8]&63,W=W<<8|C[9],W=W<<5|C[10]>>>3;if(X+1e4>fC&&G===null){if(++W>524287){if(W=0,++F>4095)F=0,fC++}}else fC=X;return yIA=F,vIA=W,J[Y++]=fC/1099511627776&255,J[Y++]=fC/4294967296&255,J[Y++]=fC/16777216&255,J[Y++]=fC/65536&255,J[Y++]=fC/256&255,J[Y++]=fC&255,J[Y++]=F>>>4&15|112,J[Y++]=F&255,J[Y++]=W>>>13&63|128,J[Y++]=W>>>5&255,J[Y++]=W<<3&255|C[10]&7,J[Y++]=C[11],J[Y++]=C[12],J[Y++]=C[13],J[Y++]=C[14],J[Y++]=C[15],Q||(0,uFB.unsafeStringify)(J)}var mDY=gIA.default=cFB});var mIA=R((fIA)=>{Object.defineProperty(fIA,"__esModule",{value:!0});fIA.default=void 0;var lFB=pFB(mD());function pFB(A){return A&&A.__esModule?A:{default:A}}function iFB(A){if(!(0,lFB.default)(A))throw TypeError("Invalid UUID");return parseInt(A.slice(14,15),16)}var dDY=fIA.default=iFB});var uIA=R((MJ)=>{Object.defineProperty(MJ,"__esModule",{value:!0});Object.defineProperty(MJ,"MAX",{enumerable:!0,get:function(){return nFB.default}});Object.defineProperty(MJ,"NIL",{enumerable:!0,get:function(){return sFB.default}});Object.defineProperty(MJ,"parse",{enumerable:!0,get:function(){return rFB.default}});Object.defineProperty(MJ,"stringify",{enumerable:!0,get:function(){return aFB.default}});Object.defineProperty(MJ,"v1",{enumerable:!0,get:function(){return oFB.default}});Object.defineProperty(MJ,"v1ToV6",{enumerable:!0,get:function(){return tFB.default}});Object.defineProperty(MJ,"v3",{enumerable:!0,get:function(){return eFB.default}});Object.defineProperty(MJ,"v4",{enumerable:!0,get:function(){return AWB.default}});Object.defineProperty(MJ,"v5",{enumerable:!0,get:function(){return QWB.default}});Object.defineProperty(MJ,"v6",{enumerable:!0,get:function(){return BWB.default}});Object.defineProperty(MJ,"v6ToV1",{enumerable:!0,get:function(){return YWB.default}});Object.defineProperty(MJ,"v7",{enumerable:!0,get:function(){return JWB.default}});Object.defineProperty(MJ,"validate",{enumerable:!0,get:function(){return CWB.default}});Object.defineProperty(MJ,"version",{enumerable:!0,get:function(){return XWB.default}});var nFB=h9(mVA()),sFB=h9(cVA()),rFB=h9(uD()),aFB=h9(bG()),oFB=h9(Om()),tFB=h9(Pm()),eFB=h9(UIA()),AWB=h9(LIA()),QWB=h9(OIA()),BWB=h9(SIA()),YWB=h9(_IA()),JWB=h9(xIA()),CWB=h9(mD()),XWB=h9(mIA());function h9(A){return A&&A.__esModule?A:{default:A}}});var yHA=R((MNY,vHA)=>{var vWB=u("fs"),bC=u("path"),yWB=u("url"),zHA=u("os"),RHA=typeof __webpack_require__==="function"?__non_webpack_require__:u,gWB=process.config&&process.config.variables||{},hWB=!!process.env.PREBUILDS_ONLY,am=process.versions,nm=am.modules;if(am.deno||process.isBun)nm="unsupported";var im=bWB()?"electron":fWB()?"node-webkit":"node",uw=process.env.npm_config_arch||zHA.arch(),dw=process.env.npm_config_platform||zHA.platform(),wHA=process.env.LIBC||(mWB(dw)?"musl":"glibc"),sm=process.env.ARM_VERSION||(uw==="arm64"?"8":gWB.arm_version)||"",jHA=(am.uv||"").split(".")[0];vHA.exports=r1;function r1(A){return RHA(r1.resolve(A))}r1.resolve=r1.path=function(A){A=bC.resolve(A||".");var Q="",B;try{Q=RHA(bC.join(A,"package.json")).name;var Y=Q.toUpperCase().replace(/-/g,"_");if(process.env[Y+"_PREBUILD"])A=process.env[Y+"_PREBUILD"]}catch(I){B=I}if(!hWB){var J=qHA(bC.join(A,"build/Release"),MHA);if(J)return J;var C=qHA(bC.join(A,"build/Debug"),MHA);if(C)return C}var X=E(A);if(X)return X;var G=E(bC.dirname(process.execPath));if(G)return G;var F=(Q[0]=="@"?"":"@"+Q+"/")+Q+"-"+dw+"-"+uw,W;try{var Z=bC.dirname(u("module").createRequire(yWB.pathToFileURL(bC.join(A,"package.json"))).resolve(F));return K(Z)}catch(I){W=I}var U=["platform="+dw,"arch="+uw,"runtime="+im,"abi="+nm,"uv="+jHA,sm?"armv="+sm:"","libc="+wHA,"node="+process.versions.node,process.versions.electron?"electron="+process.versions.electron:"",typeof __webpack_require__==="function"?"webpack=true":""].filter(Boolean).join(" ");let $="No native build was found for "+U+` +`+B)}function EZ(A,Q,B,Y,J,C){if(A.listenerCount("wsClientError")){let X=Error(J);Error.captureStackTrace(X,EZ),A.emit("wsClientError",X,B,Q)}else _D(B,Y,J,C)}});var jm=R((RVA)=>{Object.defineProperty(RVA,"__esModule",{value:!0});RVA.buildDefaultCredentialsProvider=N7B;function N7B(){let A=process.env.HYTOPIA_API_KEY,Q=process.env.HYTOPIA_GAME_ID,B=process.env.HYTOPIA_LOBBY_ID;if(!A)throw Error("Missing environment variable HYTOPIA_API_KEY");if(!Q)throw Error("Missing environment variable HYTOPIA_GAME_ID");if(!B)throw Error("Missing environment variable HYTOPIA_LOBBY_ID");return async()=>({apiKey:A,gameId:Q,lobbyId:B})}});var jVA=R((wVA)=>{Object.defineProperty(wVA,"__esModule",{value:!0});wVA.getLoadout=q7B;async function q7B(A){return await fetch(`${this.context.baseUrl}/Locker/GetLoadoutForGameByUserId/${A}`).then((Q)=>Q.json()).then((Q)=>Q).catch(()=>({error:{code:"networkError",message:"A network error happened"}}))}});var TVA=R((PVA)=>{Object.defineProperty(PVA,"__esModule",{value:!0});PVA.default=OVA;function OVA(A){if(!A)return A;for(let[B,Y]of Object.entries(A))if(typeof Y==="string"){var Q=/^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2}(?:\.\d*))(?:Z|(\+|-)([\d|:]*))?$/;if(Q.test(Y))A[B]=new Date(Y)}else if(typeof Y==="object")OVA(Y);return A}});var SVA=R((vD)=>{var R7B=vD&&vD.__importDefault||function(A){return A&&A.__esModule?A:{default:A}};Object.defineProperty(vD,"__esModule",{value:!0});vD.getSession=j7B;var w7B=R7B(TVA());async function j7B(A){let Q=await this.context.credentialsProvider();return await fetch(`${this.context.baseUrl}/Play/Matchmaking/Lobbies/ValidateSession`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({lobbyId:Q.lobbyId,sessionToken:A})}).then((B)=>B.json()).then((B)=>(0,w7B.default)(B)).then((B)=>B).catch(()=>({error:{code:"networkError",message:"A network error happened"}}))}});var _VA=R((kVA)=>{Object.defineProperty(kVA,"__esModule",{value:!0});kVA.get=O7B;async function O7B(A){let Q=await this.context.credentialsProvider();return await fetch(`${this.context.baseUrl}/Play/KV/Get/${Q.gameId}/${A}`,{headers:{"X-Api-Key":Q.apiKey}}).then((B)=>B.json()).then((B)=>B).catch(()=>({error:{code:"networkError",message:"A network error happened"}}))}});var yVA=R((vVA)=>{Object.defineProperty(vVA,"__esModule",{value:!0});vVA.set=T7B;async function T7B(A,Q,B="merge"){let Y=await this.context.credentialsProvider();return await fetch(`${this.context.baseUrl}/Play/KV/Set/${Y.gameId}/${A}?mode=${B}`,{method:"POST",headers:{"Content-Type":"application/json","X-Api-Key":Y.apiKey},body:JSON.stringify(Q)}).then((J)=>J.json()).then((J)=>J).catch(()=>({error:{code:"networkError",message:"A network error happened"}}))}});var gVA=R((hVA)=>{Object.defineProperty(hVA,"__esModule",{value:!0});hVA.unset=k7B;async function k7B(A){let Q=await this.context.credentialsProvider();return await fetch(`${this.context.baseUrl}/Play/KV/Unset/${Q.gameId}/${A}`,{method:"DELETE",headers:{"X-Api-Key":Q.apiKey}}).then((B)=>B.json()).then((B)=>B).catch(()=>({error:{code:"networkError",message:"A network error happened"}}))}});var mVA=R((fVA)=>{Object.defineProperty(fVA,"__esModule",{value:!0});fVA.KVClient=void 0;var v7B=_VA(),y7B=yVA(),h7B=gVA();class xVA{context;constructor(A){this.context=A}get=v7B.get;set=y7B.set;unset=h7B.unset}fVA.KVClient=xVA});var pVA=R((dVA)=>{Object.defineProperty(dVA,"__esModule",{value:!0});dVA.CreativeGateway=dVA.DEFAULT_BASE_URL=void 0;var g7B=jm(),x7B=jVA(),f7B=SVA(),b7B=mVA();dVA.DEFAULT_BASE_URL="https://prod.creative.hytopia.com";class uVA{context;kv;constructor(A){if(A?.baseUrl){if(!A.baseUrl.startsWith("https://")&&!A.baseUrl.startsWith("http://"))throw Error("Base URL, if provided, must start with https:// or http://");if(A.baseUrl.endsWith("/"))throw Error("Base URL, if provided, must not end with '/'")}this.context={baseUrl:A?.baseUrl??process.env.HYTOPIA_CREATIVE_GATEWAY_BASE_URL??dVA.DEFAULT_BASE_URL,credentialsProvider:A?.credentialsProvider??(0,g7B.buildDefaultCredentialsProvider)()},this.kv=new b7B.KVClient(this.context)}getLoadout=x7B.getLoadout;getSession=f7B.getSession}dVA.CreativeGateway=uVA});var iVA=R((Pw)=>{Object.defineProperty(Pw,"__esModule",{value:!0});Pw.buildDefaultCredentialsProvider=Pw.CreativeGateway=void 0;var m7B=pVA();Object.defineProperty(Pw,"CreativeGateway",{enumerable:!0,get:function(){return m7B.CreativeGateway}});var u7B=jm();Object.defineProperty(Pw,"buildDefaultCredentialsProvider",{enumerable:!0,get:function(){return u7B.buildDefaultCredentialsProvider}})});var BIA=R((AIA)=>{Object.defineProperty(AIA,"__esModule",{value:!0});AIA.default=void 0;var iDY=AIA.default="ffffffff-ffff-ffff-ffff-ffffffffffff"});var CIA=R((YIA)=>{Object.defineProperty(YIA,"__esModule",{value:!0});YIA.default=void 0;var sDY=YIA.default="00000000-0000-0000-0000-000000000000"});var FIA=R((XIA)=>{Object.defineProperty(XIA,"__esModule",{value:!0});XIA.default=void 0;var aDY=XIA.default=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/i});var lD=R((WIA)=>{Object.defineProperty(WIA,"__esModule",{value:!0});WIA.default=void 0;var r7B=a7B(FIA());function a7B(A){return A&&A.__esModule?A:{default:A}}function o7B(A){return typeof A==="string"&&r7B.default.test(A)}var tDY=WIA.default=o7B});var pD=R(($IA)=>{Object.defineProperty($IA,"__esModule",{value:!0});$IA.default=void 0;var t7B=e7B(lD());function e7B(A){return A&&A.__esModule?A:{default:A}}function AFB(A){if(!(0,t7B.default)(A))throw TypeError("Invalid UUID");let Q,B=new Uint8Array(16);return B[0]=(Q=parseInt(A.slice(0,8),16))>>>24,B[1]=Q>>>16&255,B[2]=Q>>>8&255,B[3]=Q&255,B[4]=(Q=parseInt(A.slice(9,13),16))>>>8,B[5]=Q&255,B[6]=(Q=parseInt(A.slice(14,18),16))>>>8,B[7]=Q&255,B[8]=(Q=parseInt(A.slice(19,23),16))>>>8,B[9]=Q&255,B[10]=(Q=parseInt(A.slice(24,36),16))/1099511627776&255,B[11]=Q/4294967296&255,B[12]=Q>>>24&255,B[13]=Q>>>16&255,B[14]=Q>>>8&255,B[15]=Q&255,B}var ANY=$IA.default=AFB});var mX=R((KIA)=>{Object.defineProperty(KIA,"__esModule",{value:!0});KIA.default=void 0;KIA.unsafeStringify=EIA;var QFB=BFB(lD());function BFB(A){return A&&A.__esModule?A:{default:A}}var XJ=[];for(let A=0;A<256;++A)XJ.push((A+256).toString(16).slice(1));function EIA(A,Q=0){return(XJ[A[Q+0]]+XJ[A[Q+1]]+XJ[A[Q+2]]+XJ[A[Q+3]]+"-"+XJ[A[Q+4]]+XJ[A[Q+5]]+"-"+XJ[A[Q+6]]+XJ[A[Q+7]]+"-"+XJ[A[Q+8]]+XJ[A[Q+9]]+"-"+XJ[A[Q+10]]+XJ[A[Q+11]]+XJ[A[Q+12]]+XJ[A[Q+13]]+XJ[A[Q+14]]+XJ[A[Q+15]]).toLowerCase()}function YFB(A,Q=0){let B=EIA(A,Q);if(!(0,QFB.default)(B))throw TypeError("Stringified UUID is invalid");return B}var BNY=KIA.default=YFB});var yw=R((IIA)=>{Object.defineProperty(IIA,"__esModule",{value:!0});IIA.default=GFB;var CFB=XFB(u("node:crypto"));function XFB(A){return A&&A.__esModule?A:{default:A}}var vw=new Uint8Array(256),_w=vw.length;function GFB(){if(_w>vw.length-16)CFB.default.randomFillSync(vw),_w=0;return vw.slice(_w,_w+=16)}});var fm=R((HIA)=>{Object.defineProperty(HIA,"__esModule",{value:!0});HIA.default=void 0;var WFB=$FB(yw()),ZFB=mX();function $FB(A){return A&&A.__esModule?A:{default:A}}var hm,hw,gm=0,xm=0;function UFB(A,Q,B){let Y=Q&&B||0,J=Q||Array(16);A=A||{};let{node:C,clockseq:X}=A;if(!A._v6){if(!C)C=hm;if(X==null)X=hw}if(C==null||X==null){let $=A.random||(A.rng||WFB.default)();if(C==null){if(C=[$[0],$[1],$[2],$[3],$[4],$[5]],!hm&&!A._v6)C[0]|=1,hm=C}if(X==null){if(X=($[6]<<8|$[7])&16383,hw===void 0&&!A._v6)hw=X}}let G=A.msecs!==void 0?A.msecs:Date.now(),F=A.nsecs!==void 0?A.nsecs:xm+1,W=G-gm+(F-xm)/1e4;if(W<0&&A.clockseq===void 0)X=X+1&16383;if((W<0||G>gm)&&A.nsecs===void 0)F=0;if(F>=1e4)throw Error("uuid.v1(): Can't create more than 10M uuids/sec");gm=G,xm=F,hw=X,G+=12219292800000;let Z=((G&268435455)*1e4+F)%4294967296;J[Y++]=Z>>>24&255,J[Y++]=Z>>>16&255,J[Y++]=Z>>>8&255,J[Y++]=Z&255;let U=G/4294967296*1e4&268435455;J[Y++]=U>>>8&255,J[Y++]=U&255,J[Y++]=U>>>24&15|16,J[Y++]=U>>>16&255,J[Y++]=X>>>8|128,J[Y++]=X&255;for(let $=0;$<6;++$)J[Y+$]=C[$];return Q||(0,ZFB.unsafeStringify)(J)}var CNY=HIA.default=UFB});var bm=R((NIA)=>{Object.defineProperty(NIA,"__esModule",{value:!0});NIA.default=IFB;var EFB=VFB(pD()),KFB=mX();function VFB(A){return A&&A.__esModule?A:{default:A}}function IFB(A){let Q=typeof A==="string"?(0,EFB.default)(A):A,B=HFB(Q);return typeof A==="string"?(0,KFB.unsafeStringify)(B):B}function HFB(A,Q=!1){return Uint8Array.of((A[6]&15)<<4|A[7]>>4&15,(A[7]&15)<<4|(A[4]&240)>>4,(A[4]&15)<<4|(A[5]&240)>>4,(A[5]&15)<<4|(A[0]&240)>>4,(A[0]&15)<<4|(A[1]&240)>>4,(A[1]&15)<<4|(A[2]&240)>>4,96|A[2]&15,A[3],A[8],A[9],A[10],A[11],A[12],A[13],A[14],A[15])}});var mm=R((LIA)=>{Object.defineProperty(LIA,"__esModule",{value:!0});LIA.URL=LIA.DNS=void 0;LIA.default=wFB;var NFB=mX(),LFB=qFB(pD());function qFB(A){return A&&A.__esModule?A:{default:A}}function MFB(A){A=unescape(encodeURIComponent(A));let Q=[];for(let B=0;B{Object.defineProperty(MIA,"__esModule",{value:!0});MIA.default=void 0;var PFB=TFB(u("node:crypto"));function TFB(A){return A&&A.__esModule?A:{default:A}}function SFB(A){if(Array.isArray(A))A=Buffer.from(A);else if(typeof A==="string")A=Buffer.from(A,"utf8");return PFB.default.createHash("md5").update(A).digest()}var WNY=MIA.default=SFB});var PIA=R((jIA)=>{Object.defineProperty(jIA,"__esModule",{value:!0});jIA.default=void 0;var kFB=wIA(mm()),_FB=wIA(RIA());function wIA(A){return A&&A.__esModule?A:{default:A}}var vFB=(0,kFB.default)("v3",48,_FB.default),$NY=jIA.default=vFB});var kIA=R((TIA)=>{Object.defineProperty(TIA,"__esModule",{value:!0});TIA.default=void 0;var yFB=hFB(u("node:crypto"));function hFB(A){return A&&A.__esModule?A:{default:A}}var ENY=TIA.default={randomUUID:yFB.default.randomUUID}});var gIA=R((yIA)=>{Object.defineProperty(yIA,"__esModule",{value:!0});yIA.default=void 0;var _IA=vIA(kIA()),gFB=vIA(yw()),xFB=mX();function vIA(A){return A&&A.__esModule?A:{default:A}}function fFB(A,Q,B){if(_IA.default.randomUUID&&!Q&&!A)return _IA.default.randomUUID();A=A||{};let Y=A.random||(A.rng||gFB.default)();if(Y[6]=Y[6]&15|64,Y[8]=Y[8]&63|128,Q){B=B||0;for(let J=0;J<16;++J)Q[B+J]=Y[J];return Q}return(0,xFB.unsafeStringify)(Y)}var VNY=yIA.default=fFB});var bIA=R((xIA)=>{Object.defineProperty(xIA,"__esModule",{value:!0});xIA.default=void 0;var bFB=mFB(u("node:crypto"));function mFB(A){return A&&A.__esModule?A:{default:A}}function uFB(A){if(Array.isArray(A))A=Buffer.from(A);else if(typeof A==="string")A=Buffer.from(A,"utf8");return bFB.default.createHash("sha1").update(A).digest()}var HNY=xIA.default=uFB});var cIA=R((uIA)=>{Object.defineProperty(uIA,"__esModule",{value:!0});uIA.default=void 0;var dFB=mIA(mm()),cFB=mIA(bIA());function mIA(A){return A&&A.__esModule?A:{default:A}}var lFB=(0,dFB.default)("v5",80,cFB.default),NNY=uIA.default=lFB});var iIA=R((pIA)=>{Object.defineProperty(pIA,"__esModule",{value:!0});pIA.default=sFB;var pFB=mX(),iFB=lIA(fm()),nFB=lIA(bm());function lIA(A){return A&&A.__esModule?A:{default:A}}function sFB(A={},Q,B=0){let Y=(0,iFB.default)({...A,_v6:!0},new Uint8Array(16));if(Y=(0,nFB.default)(Y),Q){for(let J=0;J<16;J++)Q[B+J]=Y[J];return Q}return(0,pFB.unsafeStringify)(Y)}});var sIA=R((nIA)=>{Object.defineProperty(nIA,"__esModule",{value:!0});nIA.default=eFB;var aFB=tFB(pD()),oFB=mX();function tFB(A){return A&&A.__esModule?A:{default:A}}function eFB(A){let Q=typeof A==="string"?(0,aFB.default)(A):A,B=AWB(Q);return typeof A==="string"?(0,oFB.unsafeStringify)(B):B}function AWB(A){return Uint8Array.of((A[3]&15)<<4|A[4]>>4&15,(A[4]&15)<<4|(A[5]&240)>>4,(A[5]&15)<<4|A[6]&15,A[7],(A[1]&15)<<4|(A[2]&240)>>4,(A[2]&15)<<4|(A[3]&240)>>4,16|(A[0]&240)>>4,(A[0]&15)<<4|(A[1]&240)>>4,A[8],A[9],A[10],A[11],A[12],A[13],A[14],A[15])}});var eIA=R((oIA)=>{Object.defineProperty(oIA,"__esModule",{value:!0});oIA.default=void 0;var BWB=JWB(yw()),YWB=mX();function JWB(A){return A&&A.__esModule?A:{default:A}}var rIA=null,aIA=null,bC=0;function CWB(A,Q,B){A=A||{};let Y=Q&&B||0,J=Q||new Uint8Array(16),C=A.random||(A.rng||BWB.default)(),X=A.msecs!==void 0?A.msecs:Date.now(),G=A.seq!==void 0?A.seq:null,F=aIA,W=rIA;if(X>bC&&A.msecs===void 0){if(bC=X,G!==null)F=null,W=null}if(G!==null){if(G>2147483647)G=2147483647;F=G>>>19&4095,W=G&524287}if(F===null||W===null)F=C[6]&127,F=F<<8|C[7],W=C[8]&63,W=W<<8|C[9],W=W<<5|C[10]>>>3;if(X+1e4>bC&&G===null){if(++W>524287){if(W=0,++F>4095)F=0,bC++}}else bC=X;return aIA=F,rIA=W,J[Y++]=bC/1099511627776&255,J[Y++]=bC/4294967296&255,J[Y++]=bC/16777216&255,J[Y++]=bC/65536&255,J[Y++]=bC/256&255,J[Y++]=bC&255,J[Y++]=F>>>4&15|112,J[Y++]=F&255,J[Y++]=W>>>13&63|128,J[Y++]=W>>>5&255,J[Y++]=W<<3&255|C[10]&7,J[Y++]=C[11],J[Y++]=C[12],J[Y++]=C[13],J[Y++]=C[14],J[Y++]=C[15],Q||(0,YWB.unsafeStringify)(J)}var zNY=oIA.default=CWB});var BHA=R((AHA)=>{Object.defineProperty(AHA,"__esModule",{value:!0});AHA.default=void 0;var XWB=GWB(lD());function GWB(A){return A&&A.__esModule?A:{default:A}}function FWB(A){if(!(0,XWB.default)(A))throw TypeError("Invalid UUID");return parseInt(A.slice(14,15),16)}var wNY=AHA.default=FWB});var YHA=R((zJ)=>{Object.defineProperty(zJ,"__esModule",{value:!0});Object.defineProperty(zJ,"MAX",{enumerable:!0,get:function(){return WWB.default}});Object.defineProperty(zJ,"NIL",{enumerable:!0,get:function(){return ZWB.default}});Object.defineProperty(zJ,"parse",{enumerable:!0,get:function(){return $WB.default}});Object.defineProperty(zJ,"stringify",{enumerable:!0,get:function(){return UWB.default}});Object.defineProperty(zJ,"v1",{enumerable:!0,get:function(){return EWB.default}});Object.defineProperty(zJ,"v1ToV6",{enumerable:!0,get:function(){return KWB.default}});Object.defineProperty(zJ,"v3",{enumerable:!0,get:function(){return VWB.default}});Object.defineProperty(zJ,"v4",{enumerable:!0,get:function(){return IWB.default}});Object.defineProperty(zJ,"v5",{enumerable:!0,get:function(){return HWB.default}});Object.defineProperty(zJ,"v6",{enumerable:!0,get:function(){return DWB.default}});Object.defineProperty(zJ,"v6ToV1",{enumerable:!0,get:function(){return NWB.default}});Object.defineProperty(zJ,"v7",{enumerable:!0,get:function(){return LWB.default}});Object.defineProperty(zJ,"validate",{enumerable:!0,get:function(){return qWB.default}});Object.defineProperty(zJ,"version",{enumerable:!0,get:function(){return MWB.default}});var WWB=g9(BIA()),ZWB=g9(CIA()),$WB=g9(pD()),UWB=g9(mX()),EWB=g9(fm()),KWB=g9(bm()),VWB=g9(PIA()),IWB=g9(gIA()),HWB=g9(cIA()),DWB=g9(iIA()),NWB=g9(sIA()),LWB=g9(eIA()),qWB=g9(lD()),MWB=g9(BHA());function g9(A){return A&&A.__esModule?A:{default:A}}});var aHA=R((CLY,rHA)=>{var rWB=u("fs"),mC=u("path"),aWB=u("url"),bHA=u("os"),mHA=typeof __webpack_require__==="function"?__non_webpack_require__:u,oWB=process.config&&process.config.variables||{},tWB=!!process.env.PREBUILDS_ONLY,Gu=process.versions,Ju=Gu.modules;if(Gu.deno||process.isBun)Ju="unsupported";var Yu=QZB()?"electron":AZB()?"node-webkit":"node",iw=process.env.npm_config_arch||bHA.arch(),nw=process.env.npm_config_platform||bHA.platform(),uHA=process.env.LIBC||(BZB(nw)?"musl":"glibc"),Cu=process.env.ARM_VERSION||(iw==="arm64"?"8":oWB.arm_version)||"",dHA=(Gu.uv||"").split(".")[0];rHA.exports=a1;function a1(A){return mHA(a1.resolve(A))}a1.resolve=a1.path=function(A){A=mC.resolve(A||".");var Q="",B;try{Q=mHA(mC.join(A,"package.json")).name;var Y=Q.toUpperCase().replace(/-/g,"_");if(process.env[Y+"_PREBUILD"])A=process.env[Y+"_PREBUILD"]}catch(I){B=I}if(!tWB){var J=xHA(mC.join(A,"build/Release"),fHA);if(J)return J;var C=xHA(mC.join(A,"build/Debug"),fHA);if(C)return C}var X=E(A);if(X)return X;var G=E(mC.dirname(process.execPath));if(G)return G;var F=(Q[0]=="@"?"":"@"+Q+"/")+Q+"-"+nw+"-"+iw,W;try{var Z=mC.dirname(u("module").createRequire(aWB.pathToFileURL(mC.join(A,"package.json"))).resolve(F));return K(Z)}catch(I){W=I}var U=["platform="+nw,"arch="+iw,"runtime="+Yu,"abi="+Ju,"uv="+dHA,Cu?"armv="+Cu:"","libc="+uHA,"node="+process.versions.node,process.versions.electron?"electron="+process.versions.electron:"",typeof __webpack_require__==="function"?"webpack=true":""].filter(Boolean).join(" ");let $="No native build was found for "+U+` attempted loading from: `+A+" and package: "+F+` `;if(B)$+="Error finding package.json: "+B.message+` `;if(W)$+="Error resolving package: "+W.message+` -`;throw Error($);function E(I){var V=rm(bC.join(I,"prebuilds")).map(OHA),H=V.filter(PHA(dw,uw)).sort(THA)[0];if(!H)return;return K(bC.join(I,"prebuilds",H.name))}function K(I){var V=rm(I).map(SHA),H=V.filter(kHA(im,nm)),D=H.sort(_HA(im))[0];if(D)return bC.join(I,D.file)}};function rm(A){try{return vWB.readdirSync(A)}catch(Q){return[]}}function qHA(A,Q){var B=rm(A).filter(Q);return B[0]&&bC.join(A,B[0])}function MHA(A){return/\.node$/.test(A)}function OHA(A){var Q=A.split("-");if(Q.length!==2)return;var B=Q[0],Y=Q[1].split("+");if(!B)return;if(!Y.length)return;if(!Y.every(Boolean))return;return{name:A,platform:B,architectures:Y}}function PHA(A,Q){return function(B){if(B==null)return!1;if(B.platform!==A)return!1;return B.architectures.includes(Q)}}function THA(A,Q){return A.architectures.length-Q.architectures.length}function SHA(A){var Q=A.split("."),B=Q.pop(),Y={file:A,specificity:0};if(B!=="node")return;for(var J=0;JB.specificity?-1:1;else return 0}}function fWB(){return!!(process.versions&&process.versions.nw)}function bWB(){if(process.versions&&process.versions.electron)return!0;if(process.env.ELECTRON_RUN_AS_NODE)return!0;return typeof window<"u"&&window.process&&window.process.type==="renderer"}function mWB(A){if(A!=="linux")return!1;let{familySync:Q,MUSL:B}=TH();return Q()===B}r1.parseTags=SHA;r1.matchTags=kHA;r1.compareTags=_HA;r1.parseTuple=OHA;r1.matchTuple=PHA;r1.compareTuples=THA});var gHA=R((RNY,tm)=>{var om=typeof __webpack_require__==="function"?__non_webpack_require__:u;if(typeof om.addon==="function")tm.exports=om.addon.bind(om);else tm.exports=yHA()});var xHA=R((jNY,hHA)=>{var __dirname="/Users/arkdev/Desktop/HYTOPIA/hytopia/server/node_modules/msgpackr-extract";hHA.exports=gHA()(__dirname)});var xNA=R((gNA)=>{Object.defineProperty(gNA,"__esModule",{value:!0});gNA._globalThis=void 0;gNA._globalThis=typeof globalThis==="object"?globalThis:global});var fNA=R((_Z)=>{var O4B=_Z&&_Z.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),P4B=_Z&&_Z.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))O4B(Q,A,B)};Object.defineProperty(_Z,"__esModule",{value:!0});P4B(xNA(),_Z)});var bNA=R((vZ)=>{var T4B=vZ&&vZ.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),S4B=vZ&&vZ.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))T4B(Q,A,B)};Object.defineProperty(vZ,"__esModule",{value:!0});S4B(fNA(),vZ)});var Sd=R((mNA)=>{Object.defineProperty(mNA,"__esModule",{value:!0});mNA.VERSION=void 0;mNA.VERSION="1.9.0"});var iNA=R((lNA)=>{Object.defineProperty(lNA,"__esModule",{value:!0});lNA.isCompatible=lNA._makeCompatibilityCheck=void 0;var k4B=Sd(),dNA=/^(\d+)\.(\d+)\.(\d+)(-(.+))?$/;function cNA(A){let Q=new Set([A]),B=new Set,Y=A.match(dNA);if(!Y)return()=>!1;let J={major:+Y[1],minor:+Y[2],patch:+Y[3],prerelease:Y[4]};if(J.prerelease!=null)return function(F){return F===A};function C(G){return B.add(G),!1}function X(G){return Q.add(G),!0}return function(F){if(Q.has(F))return!0;if(B.has(F))return!1;let W=F.match(dNA);if(!W)return C(F);let Z={major:+W[1],minor:+W[2],patch:+W[3],prerelease:W[4]};if(Z.prerelease!=null)return C(F);if(J.major!==Z.major)return C(F);if(J.major===0){if(J.minor===Z.minor&&J.patch<=Z.patch)return X(F);return C(F)}if(J.minor<=Z.minor)return X(F);return C(F)}}lNA._makeCompatibilityCheck=cNA;lNA.isCompatible=cNA(k4B.VERSION)});var yZ=R((nNA)=>{Object.defineProperty(nNA,"__esModule",{value:!0});nNA.unregisterGlobal=nNA.getGlobal=nNA.registerGlobal=void 0;var v4B=bNA(),bE=Sd(),y4B=iNA(),g4B=bE.VERSION.split(".")[0],qN=Symbol.for(`opentelemetry.js.api.${g4B}`),MN=v4B._globalThis;function h4B(A,Q,B,Y=!1){var J;let C=MN[qN]=(J=MN[qN])!==null&&J!==void 0?J:{version:bE.VERSION};if(!Y&&C[A]){let X=Error(`@opentelemetry/api: Attempted duplicate registration of API: ${A}`);return B.error(X.stack||X.message),!1}if(C.version!==bE.VERSION){let X=Error(`@opentelemetry/api: Registration of version v${C.version} for ${A} does not match previously registered API v${bE.VERSION}`);return B.error(X.stack||X.message),!1}return C[A]=Q,B.debug(`@opentelemetry/api: Registered a global for ${A} v${bE.VERSION}.`),!0}nNA.registerGlobal=h4B;function x4B(A){var Q,B;let Y=(Q=MN[qN])===null||Q===void 0?void 0:Q.version;if(!Y||!(0,y4B.isCompatible)(Y))return;return(B=MN[qN])===null||B===void 0?void 0:B[A]}nNA.getGlobal=x4B;function f4B(A,Q){Q.debug(`@opentelemetry/api: Unregistering a global for ${A} v${bE.VERSION}.`);let B=MN[qN];if(B)delete B[A]}nNA.unregisterGlobal=f4B});var tNA=R((aNA)=>{Object.defineProperty(aNA,"__esModule",{value:!0});aNA.DiagComponentLogger=void 0;var u4B=yZ();class rNA{constructor(A){this._namespace=A.namespace||"DiagComponentLogger"}debug(...A){return zN("debug",this._namespace,A)}error(...A){return zN("error",this._namespace,A)}info(...A){return zN("info",this._namespace,A)}warn(...A){return zN("warn",this._namespace,A)}verbose(...A){return zN("verbose",this._namespace,A)}}aNA.DiagComponentLogger=rNA;function zN(A,Q,B){let Y=(0,u4B.getGlobal)("diag");if(!Y)return;return B.unshift(Q),Y[A](...B)}});var zj=R((eNA)=>{Object.defineProperty(eNA,"__esModule",{value:!0});eNA.DiagLogLevel=void 0;var d4B;(function(A){A[A.NONE=0]="NONE",A[A.ERROR=30]="ERROR",A[A.WARN=50]="WARN",A[A.INFO=60]="INFO",A[A.DEBUG=70]="DEBUG",A[A.VERBOSE=80]="VERBOSE",A[A.ALL=9999]="ALL"})(d4B=eNA.DiagLogLevel||(eNA.DiagLogLevel={}))});var BLA=R((ALA)=>{Object.defineProperty(ALA,"__esModule",{value:!0});ALA.createLogLevelDiagLogger=void 0;var tG=zj();function c4B(A,Q){if(AtG.DiagLogLevel.ALL)A=tG.DiagLogLevel.ALL;Q=Q||{};function B(Y,J){let C=Q[Y];if(typeof C==="function"&&A>=J)return C.bind(Q);return function(){}}return{error:B("error",tG.DiagLogLevel.ERROR),warn:B("warn",tG.DiagLogLevel.WARN),info:B("info",tG.DiagLogLevel.INFO),debug:B("debug",tG.DiagLogLevel.DEBUG),verbose:B("verbose",tG.DiagLogLevel.VERBOSE)}}ALA.createLogLevelDiagLogger=c4B});var gZ=R((JLA)=>{Object.defineProperty(JLA,"__esModule",{value:!0});JLA.DiagAPI=void 0;var l4B=tNA(),p4B=BLA(),YLA=zj(),Rj=yZ(),i4B="diag";class _d{constructor(){function A(Y){return function(...J){let C=(0,Rj.getGlobal)("diag");if(!C)return;return C[Y](...J)}}let Q=this,B=(Y,J={logLevel:YLA.DiagLogLevel.INFO})=>{var C,X,G;if(Y===Q){let Z=Error("Cannot use diag as the logger for itself. Please use a DiagLogger implementation like ConsoleDiagLogger or a custom implementation");return Q.error((C=Z.stack)!==null&&C!==void 0?C:Z.message),!1}if(typeof J==="number")J={logLevel:J};let F=(0,Rj.getGlobal)("diag"),W=(0,p4B.createLogLevelDiagLogger)((X=J.logLevel)!==null&&X!==void 0?X:YLA.DiagLogLevel.INFO,Y);if(F&&!J.suppressOverrideMessage){let Z=(G=Error().stack)!==null&&G!==void 0?G:"";F.warn(`Current logger will be overwritten from ${Z}`),W.warn(`Current logger will overwrite one already registered from ${Z}`)}return(0,Rj.registerGlobal)("diag",W,Q,!0)};Q.setLogger=B,Q.disable=()=>{(0,Rj.unregisterGlobal)(i4B,Q)},Q.createComponentLogger=(Y)=>{return new l4B.DiagComponentLogger(Y)},Q.verbose=A("verbose"),Q.debug=A("debug"),Q.info=A("info"),Q.warn=A("warn"),Q.error=A("error")}static instance(){if(!this._instance)this._instance=new _d;return this._instance}}JLA.DiagAPI=_d});var FLA=R((XLA)=>{Object.defineProperty(XLA,"__esModule",{value:!0});XLA.BaggageImpl=void 0;class mE{constructor(A){this._entries=A?new Map(A):new Map}getEntry(A){let Q=this._entries.get(A);if(!Q)return;return Object.assign({},Q)}getAllEntries(){return Array.from(this._entries.entries()).map(([A,Q])=>[A,Q])}setEntry(A,Q){let B=new mE(this._entries);return B._entries.set(A,Q),B}removeEntry(A){let Q=new mE(this._entries);return Q._entries.delete(A),Q}removeEntries(...A){let Q=new mE(this._entries);for(let B of A)Q._entries.delete(B);return Q}clear(){return new mE}}XLA.BaggageImpl=mE});var $LA=R((WLA)=>{Object.defineProperty(WLA,"__esModule",{value:!0});WLA.baggageEntryMetadataSymbol=void 0;WLA.baggageEntryMetadataSymbol=Symbol("BaggageEntryMetadata")});var vd=R((ULA)=>{Object.defineProperty(ULA,"__esModule",{value:!0});ULA.baggageEntryMetadataFromString=ULA.createBaggage=void 0;var n4B=gZ(),s4B=FLA(),r4B=$LA(),a4B=n4B.DiagAPI.instance();function o4B(A={}){return new s4B.BaggageImpl(new Map(Object.entries(A)))}ULA.createBaggage=o4B;function t4B(A){if(typeof A!=="string")a4B.error(`Cannot create baggage metadata from unknown type: ${typeof A}`),A="";return{__TYPE__:r4B.baggageEntryMetadataSymbol,toString(){return A}}}ULA.baggageEntryMetadataFromString=t4B});var RN=R((KLA)=>{Object.defineProperty(KLA,"__esModule",{value:!0});KLA.ROOT_CONTEXT=KLA.createContextKey=void 0;function AUB(A){return Symbol.for(A)}KLA.createContextKey=AUB;class wj{constructor(A){let Q=this;Q._currentContext=A?new Map(A):new Map,Q.getValue=(B)=>Q._currentContext.get(B),Q.setValue=(B,Y)=>{let J=new wj(Q._currentContext);return J._currentContext.set(B,Y),J},Q.deleteValue=(B)=>{let Y=new wj(Q._currentContext);return Y._currentContext.delete(B),Y}}}KLA.ROOT_CONTEXT=new wj});var NLA=R((HLA)=>{Object.defineProperty(HLA,"__esModule",{value:!0});HLA.DiagConsoleLogger=void 0;var yd=[{n:"error",c:"error"},{n:"warn",c:"warn"},{n:"info",c:"info"},{n:"debug",c:"debug"},{n:"verbose",c:"trace"}];class ILA{constructor(){function A(Q){return function(...B){if(console){let Y=console[Q];if(typeof Y!=="function")Y=console.log;if(typeof Y==="function")return Y.apply(console,B)}}}for(let Q=0;Q{Object.defineProperty(LLA,"__esModule",{value:!0});LLA.createNoopMeter=LLA.NOOP_OBSERVABLE_UP_DOWN_COUNTER_METRIC=LLA.NOOP_OBSERVABLE_GAUGE_METRIC=LLA.NOOP_OBSERVABLE_COUNTER_METRIC=LLA.NOOP_UP_DOWN_COUNTER_METRIC=LLA.NOOP_HISTOGRAM_METRIC=LLA.NOOP_GAUGE_METRIC=LLA.NOOP_COUNTER_METRIC=LLA.NOOP_METER=LLA.NoopObservableUpDownCounterMetric=LLA.NoopObservableGaugeMetric=LLA.NoopObservableCounterMetric=LLA.NoopObservableMetric=LLA.NoopHistogramMetric=LLA.NoopGaugeMetric=LLA.NoopUpDownCounterMetric=LLA.NoopCounterMetric=LLA.NoopMetric=LLA.NoopMeter=void 0;class gd{constructor(){}createGauge(A,Q){return LLA.NOOP_GAUGE_METRIC}createHistogram(A,Q){return LLA.NOOP_HISTOGRAM_METRIC}createCounter(A,Q){return LLA.NOOP_COUNTER_METRIC}createUpDownCounter(A,Q){return LLA.NOOP_UP_DOWN_COUNTER_METRIC}createObservableGauge(A,Q){return LLA.NOOP_OBSERVABLE_GAUGE_METRIC}createObservableCounter(A,Q){return LLA.NOOP_OBSERVABLE_COUNTER_METRIC}createObservableUpDownCounter(A,Q){return LLA.NOOP_OBSERVABLE_UP_DOWN_COUNTER_METRIC}addBatchObservableCallback(A,Q){}removeBatchObservableCallback(A){}}LLA.NoopMeter=gd;class uE{}LLA.NoopMetric=uE;class hd extends uE{add(A,Q){}}LLA.NoopCounterMetric=hd;class xd extends uE{add(A,Q){}}LLA.NoopUpDownCounterMetric=xd;class fd extends uE{record(A,Q){}}LLA.NoopGaugeMetric=fd;class bd extends uE{record(A,Q){}}LLA.NoopHistogramMetric=bd;class wN{addCallback(A){}removeCallback(A){}}LLA.NoopObservableMetric=wN;class md extends wN{}LLA.NoopObservableCounterMetric=md;class ud extends wN{}LLA.NoopObservableGaugeMetric=ud;class dd extends wN{}LLA.NoopObservableUpDownCounterMetric=dd;LLA.NOOP_METER=new gd;LLA.NOOP_COUNTER_METRIC=new hd;LLA.NOOP_GAUGE_METRIC=new fd;LLA.NOOP_HISTOGRAM_METRIC=new bd;LLA.NOOP_UP_DOWN_COUNTER_METRIC=new xd;LLA.NOOP_OBSERVABLE_COUNTER_METRIC=new md;LLA.NOOP_OBSERVABLE_GAUGE_METRIC=new ud;LLA.NOOP_OBSERVABLE_UP_DOWN_COUNTER_METRIC=new dd;function BUB(){return LLA.NOOP_METER}LLA.createNoopMeter=BUB});var kLA=R((SLA)=>{Object.defineProperty(SLA,"__esModule",{value:!0});SLA.ValueType=void 0;var EUB;(function(A){A[A.INT=0]="INT",A[A.DOUBLE=1]="DOUBLE"})(EUB=SLA.ValueType||(SLA.ValueType={}))});var pd=R((_LA)=>{Object.defineProperty(_LA,"__esModule",{value:!0});_LA.defaultTextMapSetter=_LA.defaultTextMapGetter=void 0;_LA.defaultTextMapGetter={get(A,Q){if(A==null)return;return A[Q]},keys(A){if(A==null)return[];return Object.keys(A)}};_LA.defaultTextMapSetter={set(A,Q,B){if(A==null)return;A[Q]=B}}});var xLA=R((gLA)=>{Object.defineProperty(gLA,"__esModule",{value:!0});gLA.NoopContextManager=void 0;var VUB=RN();class yLA{active(){return VUB.ROOT_CONTEXT}with(A,Q,B,...Y){return Q.call(B,...Y)}bind(A,Q){return Q}enable(){return this}disable(){return this}}gLA.NoopContextManager=yLA});var jN=R((bLA)=>{Object.defineProperty(bLA,"__esModule",{value:!0});bLA.ContextAPI=void 0;var IUB=xLA(),id=yZ(),fLA=gZ(),nd="context",HUB=new IUB.NoopContextManager;class sd{constructor(){}static getInstance(){if(!this._instance)this._instance=new sd;return this._instance}setGlobalContextManager(A){return(0,id.registerGlobal)(nd,A,fLA.DiagAPI.instance())}active(){return this._getContextManager().active()}with(A,Q,B,...Y){return this._getContextManager().with(A,Q,B,...Y)}bind(A,Q){return this._getContextManager().bind(A,Q)}_getContextManager(){return(0,id.getGlobal)(nd)||HUB}disable(){this._getContextManager().disable(),(0,id.unregisterGlobal)(nd,fLA.DiagAPI.instance())}}bLA.ContextAPI=sd});var ad=R((uLA)=>{Object.defineProperty(uLA,"__esModule",{value:!0});uLA.TraceFlags=void 0;var DUB;(function(A){A[A.NONE=0]="NONE",A[A.SAMPLED=1]="SAMPLED"})(DUB=uLA.TraceFlags||(uLA.TraceFlags={}))});var jj=R((dLA)=>{Object.defineProperty(dLA,"__esModule",{value:!0});dLA.INVALID_SPAN_CONTEXT=dLA.INVALID_TRACEID=dLA.INVALID_SPANID=void 0;var NUB=ad();dLA.INVALID_SPANID="0000000000000000";dLA.INVALID_TRACEID="00000000000000000000000000000000";dLA.INVALID_SPAN_CONTEXT={traceId:dLA.INVALID_TRACEID,spanId:dLA.INVALID_SPANID,traceFlags:NUB.TraceFlags.NONE}});var Oj=R((nLA)=>{Object.defineProperty(nLA,"__esModule",{value:!0});nLA.NonRecordingSpan=void 0;var LUB=jj();class iLA{constructor(A=LUB.INVALID_SPAN_CONTEXT){this._spanContext=A}spanContext(){return this._spanContext}setAttribute(A,Q){return this}setAttributes(A){return this}addEvent(A,Q){return this}addLink(A){return this}addLinks(A){return this}setStatus(A){return this}updateName(A){return this}end(A){}isRecording(){return!1}recordException(A,Q){}}nLA.NonRecordingSpan=iLA});var ed=R((aLA)=>{Object.defineProperty(aLA,"__esModule",{value:!0});aLA.getSpanContext=aLA.setSpanContext=aLA.deleteSpan=aLA.setSpan=aLA.getActiveSpan=aLA.getSpan=void 0;var qUB=RN(),MUB=Oj(),zUB=jN(),od=(0,qUB.createContextKey)("OpenTelemetry Context Key SPAN");function td(A){return A.getValue(od)||void 0}aLA.getSpan=td;function RUB(){return td(zUB.ContextAPI.getInstance().active())}aLA.getActiveSpan=RUB;function rLA(A,Q){return A.setValue(od,Q)}aLA.setSpan=rLA;function wUB(A){return A.deleteValue(od)}aLA.deleteSpan=wUB;function jUB(A,Q){return rLA(A,new MUB.NonRecordingSpan(Q))}aLA.setSpanContext=jUB;function OUB(A){var Q;return(Q=td(A))===null||Q===void 0?void 0:Q.spanContext()}aLA.getSpanContext=OUB});var Pj=R((QqA)=>{Object.defineProperty(QqA,"__esModule",{value:!0});QqA.wrapSpanContext=QqA.isSpanContextValid=QqA.isValidSpanId=QqA.isValidTraceId=void 0;var tLA=jj(),vUB=Oj(),yUB=/^([0-9a-f]{32})$/i,gUB=/^[0-9a-f]{16}$/i;function eLA(A){return yUB.test(A)&&A!==tLA.INVALID_TRACEID}QqA.isValidTraceId=eLA;function AqA(A){return gUB.test(A)&&A!==tLA.INVALID_SPANID}QqA.isValidSpanId=AqA;function hUB(A){return eLA(A.traceId)&&AqA(A.spanId)}QqA.isSpanContextValid=hUB;function xUB(A){return new vUB.NonRecordingSpan(A)}QqA.wrapSpanContext=xUB});var Bc=R((CqA)=>{Object.defineProperty(CqA,"__esModule",{value:!0});CqA.NoopTracer=void 0;var uUB=jN(),YqA=ed(),Ac=Oj(),dUB=Pj(),Qc=uUB.ContextAPI.getInstance();class JqA{startSpan(A,Q,B=Qc.active()){if(Boolean(Q===null||Q===void 0?void 0:Q.root))return new Ac.NonRecordingSpan;let J=B&&(0,YqA.getSpanContext)(B);if(cUB(J)&&(0,dUB.isSpanContextValid)(J))return new Ac.NonRecordingSpan(J);else return new Ac.NonRecordingSpan}startActiveSpan(A,Q,B,Y){let J,C,X;if(arguments.length<2)return;else if(arguments.length===2)X=Q;else if(arguments.length===3)J=Q,X=B;else J=Q,C=B,X=Y;let G=C!==null&&C!==void 0?C:Qc.active(),F=this.startSpan(A,J,G),W=(0,YqA.setSpan)(G,F);return Qc.with(W,X,void 0,F)}}CqA.NoopTracer=JqA;function cUB(A){return typeof A==="object"&&typeof A.spanId==="string"&&typeof A.traceId==="string"&&typeof A.traceFlags==="number"}});var Yc=R((FqA)=>{Object.defineProperty(FqA,"__esModule",{value:!0});FqA.ProxyTracer=void 0;var lUB=Bc(),pUB=new lUB.NoopTracer;class GqA{constructor(A,Q,B,Y){this._provider=A,this.name=Q,this.version=B,this.options=Y}startSpan(A,Q,B){return this._getTracer().startSpan(A,Q,B)}startActiveSpan(A,Q,B,Y){let J=this._getTracer();return Reflect.apply(J.startActiveSpan,J,arguments)}_getTracer(){if(this._delegate)return this._delegate;let A=this._provider.getDelegateTracer(this.name,this.version,this.options);if(!A)return pUB;return this._delegate=A,this._delegate}}FqA.ProxyTracer=GqA});var EqA=R(($qA)=>{Object.defineProperty($qA,"__esModule",{value:!0});$qA.NoopTracerProvider=void 0;var iUB=Bc();class ZqA{getTracer(A,Q,B){return new iUB.NoopTracer}}$qA.NoopTracerProvider=ZqA});var Jc=R((VqA)=>{Object.defineProperty(VqA,"__esModule",{value:!0});VqA.ProxyTracerProvider=void 0;var nUB=Yc(),sUB=EqA(),rUB=new sUB.NoopTracerProvider;class KqA{getTracer(A,Q,B){var Y;return(Y=this.getDelegateTracer(A,Q,B))!==null&&Y!==void 0?Y:new nUB.ProxyTracer(this,A,Q,B)}getDelegate(){var A;return(A=this._delegate)!==null&&A!==void 0?A:rUB}setDelegate(A){this._delegate=A}getDelegateTracer(A,Q,B){var Y;return(Y=this._delegate)===null||Y===void 0?void 0:Y.getTracer(A,Q,B)}}VqA.ProxyTracerProvider=KqA});var DqA=R((HqA)=>{Object.defineProperty(HqA,"__esModule",{value:!0});HqA.SamplingDecision=void 0;var aUB;(function(A){A[A.NOT_RECORD=0]="NOT_RECORD",A[A.RECORD=1]="RECORD",A[A.RECORD_AND_SAMPLED=2]="RECORD_AND_SAMPLED"})(aUB=HqA.SamplingDecision||(HqA.SamplingDecision={}))});var LqA=R((NqA)=>{Object.defineProperty(NqA,"__esModule",{value:!0});NqA.SpanKind=void 0;var oUB;(function(A){A[A.INTERNAL=0]="INTERNAL",A[A.SERVER=1]="SERVER",A[A.CLIENT=2]="CLIENT",A[A.PRODUCER=3]="PRODUCER",A[A.CONSUMER=4]="CONSUMER"})(oUB=NqA.SpanKind||(NqA.SpanKind={}))});var MqA=R((qqA)=>{Object.defineProperty(qqA,"__esModule",{value:!0});qqA.SpanStatusCode=void 0;var tUB;(function(A){A[A.UNSET=0]="UNSET",A[A.OK=1]="OK",A[A.ERROR=2]="ERROR"})(tUB=qqA.SpanStatusCode||(qqA.SpanStatusCode={}))});var wqA=R((zqA)=>{Object.defineProperty(zqA,"__esModule",{value:!0});zqA.validateValue=zqA.validateKey=void 0;var Fc="[_0-9a-z-*/]",eUB=`[a-z]${Fc}{0,255}`,AEB=`[a-z0-9]${Fc}{0,240}@[a-z]${Fc}{0,13}`,QEB=new RegExp(`^(?:${eUB}|${AEB})$`),BEB=/^[ -~]{0,255}[!-~]$/,YEB=/,|=/;function JEB(A){return QEB.test(A)}zqA.validateKey=JEB;function CEB(A){return BEB.test(A)&&!YEB.test(A)}zqA.validateValue=CEB});var _qA=R((SqA)=>{Object.defineProperty(SqA,"__esModule",{value:!0});SqA.TraceStateImpl=void 0;var jqA=wqA(),OqA=32,GEB=512,PqA=",",TqA="=";class Wc{constructor(A){if(this._internalState=new Map,A)this._parse(A)}set(A,Q){let B=this._clone();if(B._internalState.has(A))B._internalState.delete(A);return B._internalState.set(A,Q),B}unset(A){let Q=this._clone();return Q._internalState.delete(A),Q}get(A){return this._internalState.get(A)}serialize(){return this._keys().reduce((A,Q)=>{return A.push(Q+TqA+this.get(Q)),A},[]).join(PqA)}_parse(A){if(A.length>GEB)return;if(this._internalState=A.split(PqA).reverse().reduce((Q,B)=>{let Y=B.trim(),J=Y.indexOf(TqA);if(J!==-1){let C=Y.slice(0,J),X=Y.slice(J+1,B.length);if((0,jqA.validateKey)(C)&&(0,jqA.validateValue)(X))Q.set(C,X)}return Q},new Map),this._internalState.size>OqA)this._internalState=new Map(Array.from(this._internalState.entries()).reverse().slice(0,OqA))}_keys(){return Array.from(this._internalState.keys()).reverse()}_clone(){let A=new Wc;return A._internalState=new Map(this._internalState),A}}SqA.TraceStateImpl=Wc});var gqA=R((vqA)=>{Object.defineProperty(vqA,"__esModule",{value:!0});vqA.createTraceState=void 0;var FEB=_qA();function WEB(A){return new FEB.TraceStateImpl(A)}vqA.createTraceState=WEB});var fqA=R((hqA)=>{Object.defineProperty(hqA,"__esModule",{value:!0});hqA.context=void 0;var ZEB=jN();hqA.context=ZEB.ContextAPI.getInstance()});var uqA=R((bqA)=>{Object.defineProperty(bqA,"__esModule",{value:!0});bqA.diag=void 0;var $EB=gZ();bqA.diag=$EB.DiagAPI.instance()});var lqA=R((dqA)=>{Object.defineProperty(dqA,"__esModule",{value:!0});dqA.NOOP_METER_PROVIDER=dqA.NoopMeterProvider=void 0;var UEB=cd();class Zc{getMeter(A,Q,B){return UEB.NOOP_METER}}dqA.NoopMeterProvider=Zc;dqA.NOOP_METER_PROVIDER=new Zc});var sqA=R((iqA)=>{Object.defineProperty(iqA,"__esModule",{value:!0});iqA.MetricsAPI=void 0;var KEB=lqA(),$c=yZ(),pqA=gZ(),Uc="metrics";class Ec{constructor(){}static getInstance(){if(!this._instance)this._instance=new Ec;return this._instance}setGlobalMeterProvider(A){return(0,$c.registerGlobal)(Uc,A,pqA.DiagAPI.instance())}getMeterProvider(){return(0,$c.getGlobal)(Uc)||KEB.NOOP_METER_PROVIDER}getMeter(A,Q,B){return this.getMeterProvider().getMeter(A,Q,B)}disable(){(0,$c.unregisterGlobal)(Uc,pqA.DiagAPI.instance())}}iqA.MetricsAPI=Ec});var oqA=R((rqA)=>{Object.defineProperty(rqA,"__esModule",{value:!0});rqA.metrics=void 0;var VEB=sqA();rqA.metrics=VEB.MetricsAPI.getInstance()});var QMA=R((eqA)=>{Object.defineProperty(eqA,"__esModule",{value:!0});eqA.NoopTextMapPropagator=void 0;class tqA{inject(A,Q){}extract(A,Q){return A}fields(){return[]}}eqA.NoopTextMapPropagator=tqA});var CMA=R((YMA)=>{Object.defineProperty(YMA,"__esModule",{value:!0});YMA.deleteBaggage=YMA.setBaggage=YMA.getActiveBaggage=YMA.getBaggage=void 0;var IEB=jN(),HEB=RN(),Kc=(0,HEB.createContextKey)("OpenTelemetry Baggage Key");function BMA(A){return A.getValue(Kc)||void 0}YMA.getBaggage=BMA;function DEB(){return BMA(IEB.ContextAPI.getInstance().active())}YMA.getActiveBaggage=DEB;function NEB(A,Q){return A.setValue(Kc,Q)}YMA.setBaggage=NEB;function LEB(A){return A.deleteValue(Kc)}YMA.deleteBaggage=LEB});var ZMA=R((FMA)=>{Object.defineProperty(FMA,"__esModule",{value:!0});FMA.PropagationAPI=void 0;var Vc=yZ(),REB=QMA(),XMA=pd(),Tj=CMA(),wEB=vd(),GMA=gZ(),Ic="propagation",jEB=new REB.NoopTextMapPropagator;class Hc{constructor(){this.createBaggage=wEB.createBaggage,this.getBaggage=Tj.getBaggage,this.getActiveBaggage=Tj.getActiveBaggage,this.setBaggage=Tj.setBaggage,this.deleteBaggage=Tj.deleteBaggage}static getInstance(){if(!this._instance)this._instance=new Hc;return this._instance}setGlobalPropagator(A){return(0,Vc.registerGlobal)(Ic,A,GMA.DiagAPI.instance())}inject(A,Q,B=XMA.defaultTextMapSetter){return this._getGlobalPropagator().inject(A,Q,B)}extract(A,Q,B=XMA.defaultTextMapGetter){return this._getGlobalPropagator().extract(A,Q,B)}fields(){return this._getGlobalPropagator().fields()}disable(){(0,Vc.unregisterGlobal)(Ic,GMA.DiagAPI.instance())}_getGlobalPropagator(){return(0,Vc.getGlobal)(Ic)||jEB}}FMA.PropagationAPI=Hc});var EMA=R(($MA)=>{Object.defineProperty($MA,"__esModule",{value:!0});$MA.propagation=void 0;var OEB=ZMA();$MA.propagation=OEB.PropagationAPI.getInstance()});var NMA=R((HMA)=>{Object.defineProperty(HMA,"__esModule",{value:!0});HMA.TraceAPI=void 0;var Dc=yZ(),KMA=Jc(),VMA=Pj(),dE=ed(),IMA=gZ(),Nc="trace";class Lc{constructor(){this._proxyTracerProvider=new KMA.ProxyTracerProvider,this.wrapSpanContext=VMA.wrapSpanContext,this.isSpanContextValid=VMA.isSpanContextValid,this.deleteSpan=dE.deleteSpan,this.getSpan=dE.getSpan,this.getActiveSpan=dE.getActiveSpan,this.getSpanContext=dE.getSpanContext,this.setSpan=dE.setSpan,this.setSpanContext=dE.setSpanContext}static getInstance(){if(!this._instance)this._instance=new Lc;return this._instance}setGlobalTracerProvider(A){let Q=(0,Dc.registerGlobal)(Nc,this._proxyTracerProvider,IMA.DiagAPI.instance());if(Q)this._proxyTracerProvider.setDelegate(A);return Q}getTracerProvider(){return(0,Dc.getGlobal)(Nc)||this._proxyTracerProvider}getTracer(A,Q){return this.getTracerProvider().getTracer(A,Q)}disable(){(0,Dc.unregisterGlobal)(Nc,IMA.DiagAPI.instance()),this._proxyTracerProvider=new KMA.ProxyTracerProvider}}HMA.TraceAPI=Lc});var MMA=R((LMA)=>{Object.defineProperty(LMA,"__esModule",{value:!0});LMA.trace=void 0;var PEB=NMA();LMA.trace=PEB.TraceAPI.getInstance()});var yA=R((mB)=>{Object.defineProperty(mB,"__esModule",{value:!0});mB.trace=mB.propagation=mB.metrics=mB.diag=mB.context=mB.INVALID_SPAN_CONTEXT=mB.INVALID_TRACEID=mB.INVALID_SPANID=mB.isValidSpanId=mB.isValidTraceId=mB.isSpanContextValid=mB.createTraceState=mB.TraceFlags=mB.SpanStatusCode=mB.SpanKind=mB.SamplingDecision=mB.ProxyTracerProvider=mB.ProxyTracer=mB.defaultTextMapSetter=mB.defaultTextMapGetter=mB.ValueType=mB.createNoopMeter=mB.DiagLogLevel=mB.DiagConsoleLogger=mB.ROOT_CONTEXT=mB.createContextKey=mB.baggageEntryMetadataFromString=void 0;var TEB=vd();Object.defineProperty(mB,"baggageEntryMetadataFromString",{enumerable:!0,get:function(){return TEB.baggageEntryMetadataFromString}});var zMA=RN();Object.defineProperty(mB,"createContextKey",{enumerable:!0,get:function(){return zMA.createContextKey}});Object.defineProperty(mB,"ROOT_CONTEXT",{enumerable:!0,get:function(){return zMA.ROOT_CONTEXT}});var SEB=NLA();Object.defineProperty(mB,"DiagConsoleLogger",{enumerable:!0,get:function(){return SEB.DiagConsoleLogger}});var kEB=zj();Object.defineProperty(mB,"DiagLogLevel",{enumerable:!0,get:function(){return kEB.DiagLogLevel}});var _EB=cd();Object.defineProperty(mB,"createNoopMeter",{enumerable:!0,get:function(){return _EB.createNoopMeter}});var vEB=kLA();Object.defineProperty(mB,"ValueType",{enumerable:!0,get:function(){return vEB.ValueType}});var RMA=pd();Object.defineProperty(mB,"defaultTextMapGetter",{enumerable:!0,get:function(){return RMA.defaultTextMapGetter}});Object.defineProperty(mB,"defaultTextMapSetter",{enumerable:!0,get:function(){return RMA.defaultTextMapSetter}});var yEB=Yc();Object.defineProperty(mB,"ProxyTracer",{enumerable:!0,get:function(){return yEB.ProxyTracer}});var gEB=Jc();Object.defineProperty(mB,"ProxyTracerProvider",{enumerable:!0,get:function(){return gEB.ProxyTracerProvider}});var hEB=DqA();Object.defineProperty(mB,"SamplingDecision",{enumerable:!0,get:function(){return hEB.SamplingDecision}});var xEB=LqA();Object.defineProperty(mB,"SpanKind",{enumerable:!0,get:function(){return xEB.SpanKind}});var fEB=MqA();Object.defineProperty(mB,"SpanStatusCode",{enumerable:!0,get:function(){return fEB.SpanStatusCode}});var bEB=ad();Object.defineProperty(mB,"TraceFlags",{enumerable:!0,get:function(){return bEB.TraceFlags}});var mEB=gqA();Object.defineProperty(mB,"createTraceState",{enumerable:!0,get:function(){return mEB.createTraceState}});var qc=Pj();Object.defineProperty(mB,"isSpanContextValid",{enumerable:!0,get:function(){return qc.isSpanContextValid}});Object.defineProperty(mB,"isValidTraceId",{enumerable:!0,get:function(){return qc.isValidTraceId}});Object.defineProperty(mB,"isValidSpanId",{enumerable:!0,get:function(){return qc.isValidSpanId}});var Mc=jj();Object.defineProperty(mB,"INVALID_SPANID",{enumerable:!0,get:function(){return Mc.INVALID_SPANID}});Object.defineProperty(mB,"INVALID_TRACEID",{enumerable:!0,get:function(){return Mc.INVALID_TRACEID}});Object.defineProperty(mB,"INVALID_SPAN_CONTEXT",{enumerable:!0,get:function(){return Mc.INVALID_SPAN_CONTEXT}});var wMA=fqA();Object.defineProperty(mB,"context",{enumerable:!0,get:function(){return wMA.context}});var jMA=uqA();Object.defineProperty(mB,"diag",{enumerable:!0,get:function(){return jMA.diag}});var OMA=oqA();Object.defineProperty(mB,"metrics",{enumerable:!0,get:function(){return OMA.metrics}});var PMA=EMA();Object.defineProperty(mB,"propagation",{enumerable:!0,get:function(){return PMA.propagation}});var TMA=MMA();Object.defineProperty(mB,"trace",{enumerable:!0,get:function(){return TMA.trace}});mB.default={context:wMA.context,diag:jMA.diag,metrics:OMA.metrics,propagation:PMA.propagation,trace:TMA.trace}});var ON=R((SMA)=>{Object.defineProperty(SMA,"__esModule",{value:!0});SMA.isTracingSuppressed=SMA.unsuppressTracing=SMA.suppressTracing=void 0;var cEB=yA(),zc=(0,cEB.createContextKey)("OpenTelemetry SDK Context Key SUPPRESS_TRACING");function lEB(A){return A.setValue(zc,!0)}SMA.suppressTracing=lEB;function pEB(A){return A.deleteValue(zc)}SMA.unsuppressTracing=pEB;function iEB(A){return A.getValue(zc)===!0}SMA.isTracingSuppressed=iEB});var Rc=R((_MA)=>{Object.defineProperty(_MA,"__esModule",{value:!0});_MA.BAGGAGE_MAX_TOTAL_LENGTH=_MA.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS=_MA.BAGGAGE_MAX_NAME_VALUE_PAIRS=_MA.BAGGAGE_HEADER=_MA.BAGGAGE_ITEMS_SEPARATOR=_MA.BAGGAGE_PROPERTIES_SEPARATOR=_MA.BAGGAGE_KEY_PAIR_SEPARATOR=void 0;_MA.BAGGAGE_KEY_PAIR_SEPARATOR="=";_MA.BAGGAGE_PROPERTIES_SEPARATOR=";";_MA.BAGGAGE_ITEMS_SEPARATOR=",";_MA.BAGGAGE_HEADER="baggage";_MA.BAGGAGE_MAX_NAME_VALUE_PAIRS=180;_MA.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS=4096;_MA.BAGGAGE_MAX_TOTAL_LENGTH=8192});var wc=R((gMA)=>{Object.defineProperty(gMA,"__esModule",{value:!0});gMA.parseKeyPairsIntoRecord=gMA.parsePairKeyValue=gMA.getKeyPairs=gMA.serializeKeyPairs=void 0;var QKB=yA(),hZ=Rc();function BKB(A){return A.reduce((Q,B)=>{let Y=`${Q}${Q!==""?hZ.BAGGAGE_ITEMS_SEPARATOR:""}${B}`;return Y.length>hZ.BAGGAGE_MAX_TOTAL_LENGTH?Q:Y},"")}gMA.serializeKeyPairs=BKB;function YKB(A){return A.getAllEntries().map(([Q,B])=>{let Y=`${encodeURIComponent(Q)}=${encodeURIComponent(B.value)}`;if(B.metadata!==void 0)Y+=hZ.BAGGAGE_PROPERTIES_SEPARATOR+B.metadata.toString();return Y})}gMA.getKeyPairs=YKB;function yMA(A){let Q=A.split(hZ.BAGGAGE_PROPERTIES_SEPARATOR);if(Q.length<=0)return;let B=Q.shift();if(!B)return;let Y=B.indexOf(hZ.BAGGAGE_KEY_PAIR_SEPARATOR);if(Y<=0)return;let J=decodeURIComponent(B.substring(0,Y).trim()),C=decodeURIComponent(B.substring(Y+1).trim()),X;if(Q.length>0)X=(0,QKB.baggageEntryMetadataFromString)(Q.join(hZ.BAGGAGE_PROPERTIES_SEPARATOR));return{key:J,value:C,metadata:X}}gMA.parsePairKeyValue=yMA;function JKB(A){if(typeof A!=="string"||A.length===0)return{};return A.split(hZ.BAGGAGE_ITEMS_SEPARATOR).map((Q)=>{return yMA(Q)}).filter((Q)=>Q!==void 0&&Q.value.length>0).reduce((Q,B)=>{return Q[B.key]=B.value,Q},{})}gMA.parseKeyPairsIntoRecord=JKB});var mMA=R((fMA)=>{Object.defineProperty(fMA,"__esModule",{value:!0});fMA.W3CBaggagePropagator=void 0;var jc=yA(),FKB=ON(),xZ=Rc(),Oc=wc();class xMA{inject(A,Q,B){let Y=jc.propagation.getBaggage(A);if(!Y||(0,FKB.isTracingSuppressed)(A))return;let J=(0,Oc.getKeyPairs)(Y).filter((X)=>{return X.length<=xZ.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS}).slice(0,xZ.BAGGAGE_MAX_NAME_VALUE_PAIRS),C=(0,Oc.serializeKeyPairs)(J);if(C.length>0)B.set(Q,xZ.BAGGAGE_HEADER,C)}extract(A,Q,B){let Y=B.get(Q,xZ.BAGGAGE_HEADER),J=Array.isArray(Y)?Y.join(xZ.BAGGAGE_ITEMS_SEPARATOR):Y;if(!J)return A;let C={};if(J.length===0)return A;if(J.split(xZ.BAGGAGE_ITEMS_SEPARATOR).forEach((G)=>{let F=(0,Oc.parsePairKeyValue)(G);if(F){let W={value:F.value};if(F.metadata)W.metadata=F.metadata;C[F.key]=W}}),Object.entries(C).length===0)return A;return jc.propagation.setBaggage(A,jc.propagation.createBaggage(C))}fields(){return[xZ.BAGGAGE_HEADER]}}fMA.W3CBaggagePropagator=xMA});var lMA=R((dMA)=>{Object.defineProperty(dMA,"__esModule",{value:!0});dMA.AnchoredClock=void 0;class uMA{constructor(A,Q){this._monotonicClock=Q,this._epochMillis=A.now(),this._performanceMillis=Q.now()}now(){let A=this._monotonicClock.now()-this._performanceMillis;return this._epochMillis+A}}dMA.AnchoredClock=uMA});var oMA=R((rMA)=>{Object.defineProperty(rMA,"__esModule",{value:!0});rMA.isAttributeValue=rMA.isAttributeKey=rMA.sanitizeAttributes=void 0;var pMA=yA();function WKB(A){let Q={};if(typeof A!=="object"||A==null)return Q;for(let[B,Y]of Object.entries(A)){if(!iMA(B)){pMA.diag.warn(`Invalid attribute key: ${B}`);continue}if(!nMA(Y)){pMA.diag.warn(`Invalid attribute value set for key: ${B}`);continue}if(Array.isArray(Y))Q[B]=Y.slice();else Q[B]=Y}return Q}rMA.sanitizeAttributes=WKB;function iMA(A){return typeof A==="string"&&A.length>0}rMA.isAttributeKey=iMA;function nMA(A){if(A==null)return!0;if(Array.isArray(A))return ZKB(A);return sMA(A)}rMA.isAttributeValue=nMA;function ZKB(A){let Q;for(let B of A){if(B==null)continue;if(!Q){if(sMA(B)){Q=typeof B;continue}return!1}if(typeof B===Q)continue;return!1}return!0}function sMA(A){switch(typeof A){case"number":case"boolean":case"string":return!0}return!1}});var Pc=R((tMA)=>{Object.defineProperty(tMA,"__esModule",{value:!0});tMA.loggingErrorHandler=void 0;var EKB=yA();function KKB(){return(A)=>{EKB.diag.error(VKB(A))}}tMA.loggingErrorHandler=KKB;function VKB(A){if(typeof A==="string")return A;else return JSON.stringify(IKB(A))}function IKB(A){let Q={},B=A;while(B!==null)Object.getOwnPropertyNames(B).forEach((Y)=>{if(Q[Y])return;let J=B[Y];if(J)Q[Y]=String(J)}),B=Object.getPrototypeOf(B);return Q}});var Tc=R((QzA)=>{Object.defineProperty(QzA,"__esModule",{value:!0});QzA.globalErrorHandler=QzA.setGlobalErrorHandler=void 0;var HKB=Pc(),AzA=(0,HKB.loggingErrorHandler)();function DKB(A){AzA=A}QzA.setGlobalErrorHandler=DKB;function NKB(A){try{AzA(A)}catch(Q){}}QzA.globalErrorHandler=NKB});var kc=R((YzA)=>{Object.defineProperty(YzA,"__esModule",{value:!0});YzA.TracesSamplerValues=void 0;var qKB;(function(A){A.AlwaysOff="always_off",A.AlwaysOn="always_on",A.ParentBasedAlwaysOff="parentbased_always_off",A.ParentBasedAlwaysOn="parentbased_always_on",A.ParentBasedTraceIdRatio="parentbased_traceidratio",A.TraceIdRatio="traceidratio"})(qKB=YzA.TracesSamplerValues||(YzA.TracesSamplerValues={}))});var _c=R((JzA)=>{Object.defineProperty(JzA,"__esModule",{value:!0});JzA.parseEnvironment=JzA.DEFAULT_ENVIRONMENT=JzA.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=JzA.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=JzA.DEFAULT_ATTRIBUTE_COUNT_LIMIT=JzA.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=void 0;var BF=yA(),MKB=kc(),zKB=",",RKB=["OTEL_SDK_DISABLED"];function wKB(A){return RKB.indexOf(A)>-1}var jKB=["OTEL_BSP_EXPORT_TIMEOUT","OTEL_BSP_MAX_EXPORT_BATCH_SIZE","OTEL_BSP_MAX_QUEUE_SIZE","OTEL_BSP_SCHEDULE_DELAY","OTEL_BLRP_EXPORT_TIMEOUT","OTEL_BLRP_MAX_EXPORT_BATCH_SIZE","OTEL_BLRP_MAX_QUEUE_SIZE","OTEL_BLRP_SCHEDULE_DELAY","OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_ATTRIBUTE_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT","OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT","OTEL_SPAN_EVENT_COUNT_LIMIT","OTEL_SPAN_LINK_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT","OTEL_EXPORTER_OTLP_TIMEOUT","OTEL_EXPORTER_OTLP_TRACES_TIMEOUT","OTEL_EXPORTER_OTLP_METRICS_TIMEOUT","OTEL_EXPORTER_OTLP_LOGS_TIMEOUT","OTEL_EXPORTER_JAEGER_AGENT_PORT"];function OKB(A){return jKB.indexOf(A)>-1}var PKB=["OTEL_NO_PATCH_MODULES","OTEL_PROPAGATORS","OTEL_SEMCONV_STABILITY_OPT_IN"];function TKB(A){return PKB.indexOf(A)>-1}JzA.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=1/0;JzA.DEFAULT_ATTRIBUTE_COUNT_LIMIT=128;JzA.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=128;JzA.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=128;JzA.DEFAULT_ENVIRONMENT={OTEL_SDK_DISABLED:!1,CONTAINER_NAME:"",ECS_CONTAINER_METADATA_URI_V4:"",ECS_CONTAINER_METADATA_URI:"",HOSTNAME:"",KUBERNETES_SERVICE_HOST:"",NAMESPACE:"",OTEL_BSP_EXPORT_TIMEOUT:30000,OTEL_BSP_MAX_EXPORT_BATCH_SIZE:512,OTEL_BSP_MAX_QUEUE_SIZE:2048,OTEL_BSP_SCHEDULE_DELAY:5000,OTEL_BLRP_EXPORT_TIMEOUT:30000,OTEL_BLRP_MAX_EXPORT_BATCH_SIZE:512,OTEL_BLRP_MAX_QUEUE_SIZE:2048,OTEL_BLRP_SCHEDULE_DELAY:5000,OTEL_EXPORTER_JAEGER_AGENT_HOST:"",OTEL_EXPORTER_JAEGER_AGENT_PORT:6832,OTEL_EXPORTER_JAEGER_ENDPOINT:"",OTEL_EXPORTER_JAEGER_PASSWORD:"",OTEL_EXPORTER_JAEGER_USER:"",OTEL_EXPORTER_OTLP_ENDPOINT:"",OTEL_EXPORTER_OTLP_TRACES_ENDPOINT:"",OTEL_EXPORTER_OTLP_METRICS_ENDPOINT:"",OTEL_EXPORTER_OTLP_LOGS_ENDPOINT:"",OTEL_EXPORTER_OTLP_HEADERS:"",OTEL_EXPORTER_OTLP_TRACES_HEADERS:"",OTEL_EXPORTER_OTLP_METRICS_HEADERS:"",OTEL_EXPORTER_OTLP_LOGS_HEADERS:"",OTEL_EXPORTER_OTLP_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_TRACES_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_METRICS_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_LOGS_TIMEOUT:1e4,OTEL_EXPORTER_ZIPKIN_ENDPOINT:"http://localhost:9411/api/v2/spans",OTEL_LOG_LEVEL:BF.DiagLogLevel.INFO,OTEL_NO_PATCH_MODULES:[],OTEL_PROPAGATORS:["tracecontext","baggage"],OTEL_RESOURCE_ATTRIBUTES:"",OTEL_SERVICE_NAME:"",OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT:JzA.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_ATTRIBUTE_COUNT_LIMIT:JzA.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT:JzA.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT:JzA.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT:JzA.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT:JzA.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_SPAN_EVENT_COUNT_LIMIT:128,OTEL_SPAN_LINK_COUNT_LIMIT:128,OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT:JzA.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT,OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT:JzA.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT,OTEL_TRACES_EXPORTER:"",OTEL_TRACES_SAMPLER:MKB.TracesSamplerValues.ParentBasedAlwaysOn,OTEL_TRACES_SAMPLER_ARG:"",OTEL_LOGS_EXPORTER:"",OTEL_EXPORTER_OTLP_INSECURE:"",OTEL_EXPORTER_OTLP_TRACES_INSECURE:"",OTEL_EXPORTER_OTLP_METRICS_INSECURE:"",OTEL_EXPORTER_OTLP_LOGS_INSECURE:"",OTEL_EXPORTER_OTLP_CERTIFICATE:"",OTEL_EXPORTER_OTLP_TRACES_CERTIFICATE:"",OTEL_EXPORTER_OTLP_METRICS_CERTIFICATE:"",OTEL_EXPORTER_OTLP_LOGS_CERTIFICATE:"",OTEL_EXPORTER_OTLP_COMPRESSION:"",OTEL_EXPORTER_OTLP_TRACES_COMPRESSION:"",OTEL_EXPORTER_OTLP_METRICS_COMPRESSION:"",OTEL_EXPORTER_OTLP_LOGS_COMPRESSION:"",OTEL_EXPORTER_OTLP_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_TRACES_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_METRICS_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_LOGS_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_TRACES_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_METRICS_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_LOGS_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_TRACES_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_METRICS_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_LOGS_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_METRICS_TEMPORALITY_PREFERENCE:"cumulative",OTEL_SEMCONV_STABILITY_OPT_IN:[]};function SKB(A,Q,B){if(typeof B[A]>"u")return;let Y=String(B[A]);Q[A]=Y.toLowerCase()==="true"}function kKB(A,Q,B,Y=-1/0,J=1/0){if(typeof B[A]<"u"){let C=Number(B[A]);if(!isNaN(C))if(CJ)Q[A]=J;else Q[A]=C}}function _KB(A,Q,B,Y=zKB){let J=B[A];if(typeof J==="string")Q[A]=J.split(Y).map((C)=>C.trim())}var vKB={ALL:BF.DiagLogLevel.ALL,VERBOSE:BF.DiagLogLevel.VERBOSE,DEBUG:BF.DiagLogLevel.DEBUG,INFO:BF.DiagLogLevel.INFO,WARN:BF.DiagLogLevel.WARN,ERROR:BF.DiagLogLevel.ERROR,NONE:BF.DiagLogLevel.NONE};function yKB(A,Q,B){let Y=B[A];if(typeof Y==="string"){let J=vKB[Y.toUpperCase()];if(J!=null)Q[A]=J}}function gKB(A){let Q={};for(let B in JzA.DEFAULT_ENVIRONMENT){let Y=B;switch(Y){case"OTEL_LOG_LEVEL":yKB(Y,Q,A);break;default:if(wKB(Y))SKB(Y,Q,A);else if(OKB(Y))kKB(Y,Q,A);else if(TKB(Y))_KB(Y,Q,A);else{let J=A[Y];if(typeof J<"u"&&J!==null)Q[Y]=String(J)}}}return Q}JzA.parseEnvironment=gKB});var $zA=R((WzA)=>{Object.defineProperty(WzA,"__esModule",{value:!0});WzA.getEnvWithoutDefaults=WzA.getEnv=void 0;var vc=_c();function hKB(){let A=(0,vc.parseEnvironment)(process.env);return Object.assign({},vc.DEFAULT_ENVIRONMENT,A)}WzA.getEnv=hKB;function xKB(){return(0,vc.parseEnvironment)(process.env)}WzA.getEnvWithoutDefaults=xKB});var KzA=R((UzA)=>{Object.defineProperty(UzA,"__esModule",{value:!0});UzA._globalThis=void 0;UzA._globalThis=typeof globalThis==="object"?globalThis:global});var yc=R((IzA)=>{Object.defineProperty(IzA,"__esModule",{value:!0});IzA.hexToBinary=void 0;function VzA(A){if(A>=48&&A<=57)return A-48;if(A>=97&&A<=102)return A-87;return A-55}function bKB(A){let Q=new Uint8Array(A.length/2),B=0;for(let Y=0;Y{Object.defineProperty(DzA,"__esModule",{value:!0});DzA.hexToBase64=void 0;var mKB=yc();function uKB(A){return Buffer.from((0,mKB.hexToBinary)(A)).toString("base64")}DzA.hexToBase64=uKB});var jzA=R((RzA)=>{Object.defineProperty(RzA,"__esModule",{value:!0});RzA.RandomIdGenerator=void 0;var dKB=8,MzA=16;class zzA{constructor(){this.generateTraceId=qzA(MzA),this.generateSpanId=qzA(dKB)}}RzA.RandomIdGenerator=zzA;var _j=Buffer.allocUnsafe(MzA);function qzA(A){return function(){for(let B=0;B>>0,B*4);for(let B=0;B0)break;else if(B===A-1)_j[A-1]=1;return _j.toString("hex",0,A)}}});var TzA=R((OzA)=>{Object.defineProperty(OzA,"__esModule",{value:!0});OzA.otperformance=void 0;var cKB=u("perf_hooks");OzA.otperformance=cKB.performance});var gc=R((SzA)=>{Object.defineProperty(SzA,"__esModule",{value:!0});SzA.VERSION=void 0;SzA.VERSION="1.30.1"});var hc=R((_zA)=>{Object.defineProperty(_zA,"__esModule",{value:!0});_zA.createConstMap=void 0;function lKB(A){let Q={},B=A.length;for(let Y=0;Y{Object.defineProperty(zjA,"__esModule",{value:!0});zjA.SEMATTRS_NET_HOST_CARRIER_ICC=zjA.SEMATTRS_NET_HOST_CARRIER_MNC=zjA.SEMATTRS_NET_HOST_CARRIER_MCC=zjA.SEMATTRS_NET_HOST_CARRIER_NAME=zjA.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=zjA.SEMATTRS_NET_HOST_CONNECTION_TYPE=zjA.SEMATTRS_NET_HOST_NAME=zjA.SEMATTRS_NET_HOST_PORT=zjA.SEMATTRS_NET_HOST_IP=zjA.SEMATTRS_NET_PEER_NAME=zjA.SEMATTRS_NET_PEER_PORT=zjA.SEMATTRS_NET_PEER_IP=zjA.SEMATTRS_NET_TRANSPORT=zjA.SEMATTRS_FAAS_INVOKED_REGION=zjA.SEMATTRS_FAAS_INVOKED_PROVIDER=zjA.SEMATTRS_FAAS_INVOKED_NAME=zjA.SEMATTRS_FAAS_COLDSTART=zjA.SEMATTRS_FAAS_CRON=zjA.SEMATTRS_FAAS_TIME=zjA.SEMATTRS_FAAS_DOCUMENT_NAME=zjA.SEMATTRS_FAAS_DOCUMENT_TIME=zjA.SEMATTRS_FAAS_DOCUMENT_OPERATION=zjA.SEMATTRS_FAAS_DOCUMENT_COLLECTION=zjA.SEMATTRS_FAAS_EXECUTION=zjA.SEMATTRS_FAAS_TRIGGER=zjA.SEMATTRS_EXCEPTION_ESCAPED=zjA.SEMATTRS_EXCEPTION_STACKTRACE=zjA.SEMATTRS_EXCEPTION_MESSAGE=zjA.SEMATTRS_EXCEPTION_TYPE=zjA.SEMATTRS_DB_SQL_TABLE=zjA.SEMATTRS_DB_MONGODB_COLLECTION=zjA.SEMATTRS_DB_REDIS_DATABASE_INDEX=zjA.SEMATTRS_DB_HBASE_NAMESPACE=zjA.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=zjA.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=zjA.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=zjA.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=zjA.SEMATTRS_DB_CASSANDRA_TABLE=zjA.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=zjA.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=zjA.SEMATTRS_DB_CASSANDRA_KEYSPACE=zjA.SEMATTRS_DB_MSSQL_INSTANCE_NAME=zjA.SEMATTRS_DB_OPERATION=zjA.SEMATTRS_DB_STATEMENT=zjA.SEMATTRS_DB_NAME=zjA.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=zjA.SEMATTRS_DB_USER=zjA.SEMATTRS_DB_CONNECTION_STRING=zjA.SEMATTRS_DB_SYSTEM=zjA.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=void 0;zjA.SEMATTRS_MESSAGING_DESTINATION_KIND=zjA.SEMATTRS_MESSAGING_DESTINATION=zjA.SEMATTRS_MESSAGING_SYSTEM=zjA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=zjA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=zjA.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=zjA.SEMATTRS_AWS_DYNAMODB_COUNT=zjA.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=zjA.SEMATTRS_AWS_DYNAMODB_SEGMENT=zjA.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=zjA.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=zjA.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=zjA.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=zjA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=zjA.SEMATTRS_AWS_DYNAMODB_SELECT=zjA.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=zjA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=zjA.SEMATTRS_AWS_DYNAMODB_LIMIT=zjA.SEMATTRS_AWS_DYNAMODB_PROJECTION=zjA.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=zjA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=zjA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=zjA.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=zjA.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=zjA.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=zjA.SEMATTRS_HTTP_CLIENT_IP=zjA.SEMATTRS_HTTP_ROUTE=zjA.SEMATTRS_HTTP_SERVER_NAME=zjA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=zjA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=zjA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=zjA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=zjA.SEMATTRS_HTTP_USER_AGENT=zjA.SEMATTRS_HTTP_FLAVOR=zjA.SEMATTRS_HTTP_STATUS_CODE=zjA.SEMATTRS_HTTP_SCHEME=zjA.SEMATTRS_HTTP_HOST=zjA.SEMATTRS_HTTP_TARGET=zjA.SEMATTRS_HTTP_URL=zjA.SEMATTRS_HTTP_METHOD=zjA.SEMATTRS_CODE_LINENO=zjA.SEMATTRS_CODE_FILEPATH=zjA.SEMATTRS_CODE_NAMESPACE=zjA.SEMATTRS_CODE_FUNCTION=zjA.SEMATTRS_THREAD_NAME=zjA.SEMATTRS_THREAD_ID=zjA.SEMATTRS_ENDUSER_SCOPE=zjA.SEMATTRS_ENDUSER_ROLE=zjA.SEMATTRS_ENDUSER_ID=zjA.SEMATTRS_PEER_SERVICE=void 0;zjA.DBSYSTEMVALUES_FILEMAKER=zjA.DBSYSTEMVALUES_DERBY=zjA.DBSYSTEMVALUES_FIREBIRD=zjA.DBSYSTEMVALUES_ADABAS=zjA.DBSYSTEMVALUES_CACHE=zjA.DBSYSTEMVALUES_EDB=zjA.DBSYSTEMVALUES_FIRSTSQL=zjA.DBSYSTEMVALUES_INGRES=zjA.DBSYSTEMVALUES_HANADB=zjA.DBSYSTEMVALUES_MAXDB=zjA.DBSYSTEMVALUES_PROGRESS=zjA.DBSYSTEMVALUES_HSQLDB=zjA.DBSYSTEMVALUES_CLOUDSCAPE=zjA.DBSYSTEMVALUES_HIVE=zjA.DBSYSTEMVALUES_REDSHIFT=zjA.DBSYSTEMVALUES_POSTGRESQL=zjA.DBSYSTEMVALUES_DB2=zjA.DBSYSTEMVALUES_ORACLE=zjA.DBSYSTEMVALUES_MYSQL=zjA.DBSYSTEMVALUES_MSSQL=zjA.DBSYSTEMVALUES_OTHER_SQL=zjA.SemanticAttributes=zjA.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=zjA.SEMATTRS_MESSAGE_COMPRESSED_SIZE=zjA.SEMATTRS_MESSAGE_ID=zjA.SEMATTRS_MESSAGE_TYPE=zjA.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=zjA.SEMATTRS_RPC_JSONRPC_ERROR_CODE=zjA.SEMATTRS_RPC_JSONRPC_REQUEST_ID=zjA.SEMATTRS_RPC_JSONRPC_VERSION=zjA.SEMATTRS_RPC_GRPC_STATUS_CODE=zjA.SEMATTRS_RPC_METHOD=zjA.SEMATTRS_RPC_SERVICE=zjA.SEMATTRS_RPC_SYSTEM=zjA.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=zjA.SEMATTRS_MESSAGING_KAFKA_PARTITION=zjA.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=zjA.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=zjA.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=zjA.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=zjA.SEMATTRS_MESSAGING_CONSUMER_ID=zjA.SEMATTRS_MESSAGING_OPERATION=zjA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=zjA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=zjA.SEMATTRS_MESSAGING_CONVERSATION_ID=zjA.SEMATTRS_MESSAGING_MESSAGE_ID=zjA.SEMATTRS_MESSAGING_URL=zjA.SEMATTRS_MESSAGING_PROTOCOL_VERSION=zjA.SEMATTRS_MESSAGING_PROTOCOL=zjA.SEMATTRS_MESSAGING_TEMP_DESTINATION=void 0;zjA.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=zjA.FaasDocumentOperationValues=zjA.FAASDOCUMENTOPERATIONVALUES_DELETE=zjA.FAASDOCUMENTOPERATIONVALUES_EDIT=zjA.FAASDOCUMENTOPERATIONVALUES_INSERT=zjA.FaasTriggerValues=zjA.FAASTRIGGERVALUES_OTHER=zjA.FAASTRIGGERVALUES_TIMER=zjA.FAASTRIGGERVALUES_PUBSUB=zjA.FAASTRIGGERVALUES_HTTP=zjA.FAASTRIGGERVALUES_DATASOURCE=zjA.DbCassandraConsistencyLevelValues=zjA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=zjA.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=zjA.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=zjA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=zjA.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=zjA.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=zjA.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=zjA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=zjA.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=zjA.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=zjA.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=zjA.DbSystemValues=zjA.DBSYSTEMVALUES_COCKROACHDB=zjA.DBSYSTEMVALUES_MEMCACHED=zjA.DBSYSTEMVALUES_ELASTICSEARCH=zjA.DBSYSTEMVALUES_GEODE=zjA.DBSYSTEMVALUES_NEO4J=zjA.DBSYSTEMVALUES_DYNAMODB=zjA.DBSYSTEMVALUES_COSMOSDB=zjA.DBSYSTEMVALUES_COUCHDB=zjA.DBSYSTEMVALUES_COUCHBASE=zjA.DBSYSTEMVALUES_REDIS=zjA.DBSYSTEMVALUES_MONGODB=zjA.DBSYSTEMVALUES_HBASE=zjA.DBSYSTEMVALUES_CASSANDRA=zjA.DBSYSTEMVALUES_COLDFUSION=zjA.DBSYSTEMVALUES_H2=zjA.DBSYSTEMVALUES_VERTICA=zjA.DBSYSTEMVALUES_TERADATA=zjA.DBSYSTEMVALUES_SYBASE=zjA.DBSYSTEMVALUES_SQLITE=zjA.DBSYSTEMVALUES_POINTBASE=zjA.DBSYSTEMVALUES_PERVASIVE=zjA.DBSYSTEMVALUES_NETEZZA=zjA.DBSYSTEMVALUES_MARIADB=zjA.DBSYSTEMVALUES_INTERBASE=zjA.DBSYSTEMVALUES_INSTANTDB=zjA.DBSYSTEMVALUES_INFORMIX=void 0;zjA.MESSAGINGOPERATIONVALUES_RECEIVE=zjA.MessagingDestinationKindValues=zjA.MESSAGINGDESTINATIONKINDVALUES_TOPIC=zjA.MESSAGINGDESTINATIONKINDVALUES_QUEUE=zjA.HttpFlavorValues=zjA.HTTPFLAVORVALUES_QUIC=zjA.HTTPFLAVORVALUES_SPDY=zjA.HTTPFLAVORVALUES_HTTP_2_0=zjA.HTTPFLAVORVALUES_HTTP_1_1=zjA.HTTPFLAVORVALUES_HTTP_1_0=zjA.NetHostConnectionSubtypeValues=zjA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=zjA.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=zjA.NETHOSTCONNECTIONSUBTYPEVALUES_NR=zjA.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=zjA.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=zjA.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=zjA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=zjA.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=zjA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=zjA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=zjA.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=zjA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=zjA.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=zjA.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=zjA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=zjA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=zjA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=zjA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=zjA.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=zjA.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=zjA.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=zjA.NetHostConnectionTypeValues=zjA.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=zjA.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=zjA.NETHOSTCONNECTIONTYPEVALUES_CELL=zjA.NETHOSTCONNECTIONTYPEVALUES_WIRED=zjA.NETHOSTCONNECTIONTYPEVALUES_WIFI=zjA.NetTransportValues=zjA.NETTRANSPORTVALUES_OTHER=zjA.NETTRANSPORTVALUES_INPROC=zjA.NETTRANSPORTVALUES_PIPE=zjA.NETTRANSPORTVALUES_UNIX=zjA.NETTRANSPORTVALUES_IP=zjA.NETTRANSPORTVALUES_IP_UDP=zjA.NETTRANSPORTVALUES_IP_TCP=zjA.FaasInvokedProviderValues=zjA.FAASINVOKEDPROVIDERVALUES_GCP=zjA.FAASINVOKEDPROVIDERVALUES_AZURE=zjA.FAASINVOKEDPROVIDERVALUES_AWS=void 0;zjA.MessageTypeValues=zjA.MESSAGETYPEVALUES_RECEIVED=zjA.MESSAGETYPEVALUES_SENT=zjA.RpcGrpcStatusCodeValues=zjA.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=zjA.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=zjA.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=zjA.RPCGRPCSTATUSCODEVALUES_INTERNAL=zjA.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=zjA.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=zjA.RPCGRPCSTATUSCODEVALUES_ABORTED=zjA.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=zjA.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=zjA.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=zjA.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=zjA.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=zjA.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=zjA.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=zjA.RPCGRPCSTATUSCODEVALUES_UNKNOWN=zjA.RPCGRPCSTATUSCODEVALUES_CANCELLED=zjA.RPCGRPCSTATUSCODEVALUES_OK=zjA.MessagingOperationValues=zjA.MESSAGINGOPERATIONVALUES_PROCESS=void 0;var j5=hc(),yzA="aws.lambda.invoked_arn",gzA="db.system",hzA="db.connection_string",xzA="db.user",fzA="db.jdbc.driver_classname",bzA="db.name",mzA="db.statement",uzA="db.operation",dzA="db.mssql.instance_name",czA="db.cassandra.keyspace",lzA="db.cassandra.page_size",pzA="db.cassandra.consistency_level",izA="db.cassandra.table",nzA="db.cassandra.idempotence",szA="db.cassandra.speculative_execution_count",rzA="db.cassandra.coordinator.id",azA="db.cassandra.coordinator.dc",ozA="db.hbase.namespace",tzA="db.redis.database_index",ezA="db.mongodb.collection",A2A="db.sql.table",Q2A="exception.type",B2A="exception.message",Y2A="exception.stacktrace",J2A="exception.escaped",C2A="faas.trigger",X2A="faas.execution",G2A="faas.document.collection",F2A="faas.document.operation",W2A="faas.document.time",Z2A="faas.document.name",$2A="faas.time",U2A="faas.cron",E2A="faas.coldstart",K2A="faas.invoked_name",V2A="faas.invoked_provider",I2A="faas.invoked_region",H2A="net.transport",D2A="net.peer.ip",N2A="net.peer.port",L2A="net.peer.name",q2A="net.host.ip",M2A="net.host.port",z2A="net.host.name",R2A="net.host.connection.type",w2A="net.host.connection.subtype",j2A="net.host.carrier.name",O2A="net.host.carrier.mcc",P2A="net.host.carrier.mnc",T2A="net.host.carrier.icc",S2A="peer.service",k2A="enduser.id",_2A="enduser.role",v2A="enduser.scope",y2A="thread.id",g2A="thread.name",h2A="code.function",x2A="code.namespace",f2A="code.filepath",b2A="code.lineno",m2A="http.method",u2A="http.url",d2A="http.target",c2A="http.host",l2A="http.scheme",p2A="http.status_code",i2A="http.flavor",n2A="http.user_agent",s2A="http.request_content_length",r2A="http.request_content_length_uncompressed",a2A="http.response_content_length",o2A="http.response_content_length_uncompressed",t2A="http.server_name",e2A="http.route",A3A="http.client_ip",Q3A="aws.dynamodb.table_names",B3A="aws.dynamodb.consumed_capacity",Y3A="aws.dynamodb.item_collection_metrics",J3A="aws.dynamodb.provisioned_read_capacity",C3A="aws.dynamodb.provisioned_write_capacity",X3A="aws.dynamodb.consistent_read",G3A="aws.dynamodb.projection",F3A="aws.dynamodb.limit",W3A="aws.dynamodb.attributes_to_get",Z3A="aws.dynamodb.index_name",$3A="aws.dynamodb.select",U3A="aws.dynamodb.global_secondary_indexes",E3A="aws.dynamodb.local_secondary_indexes",K3A="aws.dynamodb.exclusive_start_table",V3A="aws.dynamodb.table_count",I3A="aws.dynamodb.scan_forward",H3A="aws.dynamodb.segment",D3A="aws.dynamodb.total_segments",N3A="aws.dynamodb.count",L3A="aws.dynamodb.scanned_count",q3A="aws.dynamodb.attribute_definitions",M3A="aws.dynamodb.global_secondary_index_updates",z3A="messaging.system",R3A="messaging.destination",w3A="messaging.destination_kind",j3A="messaging.temp_destination",O3A="messaging.protocol",P3A="messaging.protocol_version",T3A="messaging.url",S3A="messaging.message_id",k3A="messaging.conversation_id",_3A="messaging.message_payload_size_bytes",v3A="messaging.message_payload_compressed_size_bytes",y3A="messaging.operation",g3A="messaging.consumer_id",h3A="messaging.rabbitmq.routing_key",x3A="messaging.kafka.message_key",f3A="messaging.kafka.consumer_group",b3A="messaging.kafka.client_id",m3A="messaging.kafka.partition",u3A="messaging.kafka.tombstone",d3A="rpc.system",c3A="rpc.service",l3A="rpc.method",p3A="rpc.grpc.status_code",i3A="rpc.jsonrpc.version",n3A="rpc.jsonrpc.request_id",s3A="rpc.jsonrpc.error_code",r3A="rpc.jsonrpc.error_message",a3A="message.type",o3A="message.id",t3A="message.compressed_size",e3A="message.uncompressed_size";zjA.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=yzA;zjA.SEMATTRS_DB_SYSTEM=gzA;zjA.SEMATTRS_DB_CONNECTION_STRING=hzA;zjA.SEMATTRS_DB_USER=xzA;zjA.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=fzA;zjA.SEMATTRS_DB_NAME=bzA;zjA.SEMATTRS_DB_STATEMENT=mzA;zjA.SEMATTRS_DB_OPERATION=uzA;zjA.SEMATTRS_DB_MSSQL_INSTANCE_NAME=dzA;zjA.SEMATTRS_DB_CASSANDRA_KEYSPACE=czA;zjA.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=lzA;zjA.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=pzA;zjA.SEMATTRS_DB_CASSANDRA_TABLE=izA;zjA.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=nzA;zjA.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=szA;zjA.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=rzA;zjA.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=azA;zjA.SEMATTRS_DB_HBASE_NAMESPACE=ozA;zjA.SEMATTRS_DB_REDIS_DATABASE_INDEX=tzA;zjA.SEMATTRS_DB_MONGODB_COLLECTION=ezA;zjA.SEMATTRS_DB_SQL_TABLE=A2A;zjA.SEMATTRS_EXCEPTION_TYPE=Q2A;zjA.SEMATTRS_EXCEPTION_MESSAGE=B2A;zjA.SEMATTRS_EXCEPTION_STACKTRACE=Y2A;zjA.SEMATTRS_EXCEPTION_ESCAPED=J2A;zjA.SEMATTRS_FAAS_TRIGGER=C2A;zjA.SEMATTRS_FAAS_EXECUTION=X2A;zjA.SEMATTRS_FAAS_DOCUMENT_COLLECTION=G2A;zjA.SEMATTRS_FAAS_DOCUMENT_OPERATION=F2A;zjA.SEMATTRS_FAAS_DOCUMENT_TIME=W2A;zjA.SEMATTRS_FAAS_DOCUMENT_NAME=Z2A;zjA.SEMATTRS_FAAS_TIME=$2A;zjA.SEMATTRS_FAAS_CRON=U2A;zjA.SEMATTRS_FAAS_COLDSTART=E2A;zjA.SEMATTRS_FAAS_INVOKED_NAME=K2A;zjA.SEMATTRS_FAAS_INVOKED_PROVIDER=V2A;zjA.SEMATTRS_FAAS_INVOKED_REGION=I2A;zjA.SEMATTRS_NET_TRANSPORT=H2A;zjA.SEMATTRS_NET_PEER_IP=D2A;zjA.SEMATTRS_NET_PEER_PORT=N2A;zjA.SEMATTRS_NET_PEER_NAME=L2A;zjA.SEMATTRS_NET_HOST_IP=q2A;zjA.SEMATTRS_NET_HOST_PORT=M2A;zjA.SEMATTRS_NET_HOST_NAME=z2A;zjA.SEMATTRS_NET_HOST_CONNECTION_TYPE=R2A;zjA.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=w2A;zjA.SEMATTRS_NET_HOST_CARRIER_NAME=j2A;zjA.SEMATTRS_NET_HOST_CARRIER_MCC=O2A;zjA.SEMATTRS_NET_HOST_CARRIER_MNC=P2A;zjA.SEMATTRS_NET_HOST_CARRIER_ICC=T2A;zjA.SEMATTRS_PEER_SERVICE=S2A;zjA.SEMATTRS_ENDUSER_ID=k2A;zjA.SEMATTRS_ENDUSER_ROLE=_2A;zjA.SEMATTRS_ENDUSER_SCOPE=v2A;zjA.SEMATTRS_THREAD_ID=y2A;zjA.SEMATTRS_THREAD_NAME=g2A;zjA.SEMATTRS_CODE_FUNCTION=h2A;zjA.SEMATTRS_CODE_NAMESPACE=x2A;zjA.SEMATTRS_CODE_FILEPATH=f2A;zjA.SEMATTRS_CODE_LINENO=b2A;zjA.SEMATTRS_HTTP_METHOD=m2A;zjA.SEMATTRS_HTTP_URL=u2A;zjA.SEMATTRS_HTTP_TARGET=d2A;zjA.SEMATTRS_HTTP_HOST=c2A;zjA.SEMATTRS_HTTP_SCHEME=l2A;zjA.SEMATTRS_HTTP_STATUS_CODE=p2A;zjA.SEMATTRS_HTTP_FLAVOR=i2A;zjA.SEMATTRS_HTTP_USER_AGENT=n2A;zjA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=s2A;zjA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=r2A;zjA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=a2A;zjA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=o2A;zjA.SEMATTRS_HTTP_SERVER_NAME=t2A;zjA.SEMATTRS_HTTP_ROUTE=e2A;zjA.SEMATTRS_HTTP_CLIENT_IP=A3A;zjA.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=Q3A;zjA.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=B3A;zjA.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=Y3A;zjA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=J3A;zjA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=C3A;zjA.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=X3A;zjA.SEMATTRS_AWS_DYNAMODB_PROJECTION=G3A;zjA.SEMATTRS_AWS_DYNAMODB_LIMIT=F3A;zjA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=W3A;zjA.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=Z3A;zjA.SEMATTRS_AWS_DYNAMODB_SELECT=$3A;zjA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=U3A;zjA.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=E3A;zjA.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=K3A;zjA.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=V3A;zjA.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=I3A;zjA.SEMATTRS_AWS_DYNAMODB_SEGMENT=H3A;zjA.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=D3A;zjA.SEMATTRS_AWS_DYNAMODB_COUNT=N3A;zjA.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=L3A;zjA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=q3A;zjA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=M3A;zjA.SEMATTRS_MESSAGING_SYSTEM=z3A;zjA.SEMATTRS_MESSAGING_DESTINATION=R3A;zjA.SEMATTRS_MESSAGING_DESTINATION_KIND=w3A;zjA.SEMATTRS_MESSAGING_TEMP_DESTINATION=j3A;zjA.SEMATTRS_MESSAGING_PROTOCOL=O3A;zjA.SEMATTRS_MESSAGING_PROTOCOL_VERSION=P3A;zjA.SEMATTRS_MESSAGING_URL=T3A;zjA.SEMATTRS_MESSAGING_MESSAGE_ID=S3A;zjA.SEMATTRS_MESSAGING_CONVERSATION_ID=k3A;zjA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=_3A;zjA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=v3A;zjA.SEMATTRS_MESSAGING_OPERATION=y3A;zjA.SEMATTRS_MESSAGING_CONSUMER_ID=g3A;zjA.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=h3A;zjA.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=x3A;zjA.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=f3A;zjA.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=b3A;zjA.SEMATTRS_MESSAGING_KAFKA_PARTITION=m3A;zjA.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=u3A;zjA.SEMATTRS_RPC_SYSTEM=d3A;zjA.SEMATTRS_RPC_SERVICE=c3A;zjA.SEMATTRS_RPC_METHOD=l3A;zjA.SEMATTRS_RPC_GRPC_STATUS_CODE=p3A;zjA.SEMATTRS_RPC_JSONRPC_VERSION=i3A;zjA.SEMATTRS_RPC_JSONRPC_REQUEST_ID=n3A;zjA.SEMATTRS_RPC_JSONRPC_ERROR_CODE=s3A;zjA.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=r3A;zjA.SEMATTRS_MESSAGE_TYPE=a3A;zjA.SEMATTRS_MESSAGE_ID=o3A;zjA.SEMATTRS_MESSAGE_COMPRESSED_SIZE=t3A;zjA.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=e3A;zjA.SemanticAttributes=(0,j5.createConstMap)([yzA,gzA,hzA,xzA,fzA,bzA,mzA,uzA,dzA,czA,lzA,pzA,izA,nzA,szA,rzA,azA,ozA,tzA,ezA,A2A,Q2A,B2A,Y2A,J2A,C2A,X2A,G2A,F2A,W2A,Z2A,$2A,U2A,E2A,K2A,V2A,I2A,H2A,D2A,N2A,L2A,q2A,M2A,z2A,R2A,w2A,j2A,O2A,P2A,T2A,S2A,k2A,_2A,v2A,y2A,g2A,h2A,x2A,f2A,b2A,m2A,u2A,d2A,c2A,l2A,p2A,i2A,n2A,s2A,r2A,a2A,o2A,t2A,e2A,A3A,Q3A,B3A,Y3A,J3A,C3A,X3A,G3A,F3A,W3A,Z3A,$3A,U3A,E3A,K3A,V3A,I3A,H3A,D3A,N3A,L3A,q3A,M3A,z3A,R3A,w3A,j3A,O3A,P3A,T3A,S3A,k3A,_3A,v3A,y3A,g3A,h3A,x3A,f3A,b3A,m3A,u3A,d3A,c3A,l3A,p3A,i3A,n3A,s3A,r3A,a3A,o3A,t3A,e3A]);var ARA="other_sql",QRA="mssql",BRA="mysql",YRA="oracle",JRA="db2",CRA="postgresql",XRA="redshift",GRA="hive",FRA="cloudscape",WRA="hsqldb",ZRA="progress",$RA="maxdb",URA="hanadb",ERA="ingres",KRA="firstsql",VRA="edb",IRA="cache",HRA="adabas",DRA="firebird",NRA="derby",LRA="filemaker",qRA="informix",MRA="instantdb",zRA="interbase",RRA="mariadb",wRA="netezza",jRA="pervasive",ORA="pointbase",PRA="sqlite",TRA="sybase",SRA="teradata",kRA="vertica",_RA="h2",vRA="coldfusion",yRA="cassandra",gRA="hbase",hRA="mongodb",xRA="redis",fRA="couchbase",bRA="couchdb",mRA="cosmosdb",uRA="dynamodb",dRA="neo4j",cRA="geode",lRA="elasticsearch",pRA="memcached",iRA="cockroachdb";zjA.DBSYSTEMVALUES_OTHER_SQL=ARA;zjA.DBSYSTEMVALUES_MSSQL=QRA;zjA.DBSYSTEMVALUES_MYSQL=BRA;zjA.DBSYSTEMVALUES_ORACLE=YRA;zjA.DBSYSTEMVALUES_DB2=JRA;zjA.DBSYSTEMVALUES_POSTGRESQL=CRA;zjA.DBSYSTEMVALUES_REDSHIFT=XRA;zjA.DBSYSTEMVALUES_HIVE=GRA;zjA.DBSYSTEMVALUES_CLOUDSCAPE=FRA;zjA.DBSYSTEMVALUES_HSQLDB=WRA;zjA.DBSYSTEMVALUES_PROGRESS=ZRA;zjA.DBSYSTEMVALUES_MAXDB=$RA;zjA.DBSYSTEMVALUES_HANADB=URA;zjA.DBSYSTEMVALUES_INGRES=ERA;zjA.DBSYSTEMVALUES_FIRSTSQL=KRA;zjA.DBSYSTEMVALUES_EDB=VRA;zjA.DBSYSTEMVALUES_CACHE=IRA;zjA.DBSYSTEMVALUES_ADABAS=HRA;zjA.DBSYSTEMVALUES_FIREBIRD=DRA;zjA.DBSYSTEMVALUES_DERBY=NRA;zjA.DBSYSTEMVALUES_FILEMAKER=LRA;zjA.DBSYSTEMVALUES_INFORMIX=qRA;zjA.DBSYSTEMVALUES_INSTANTDB=MRA;zjA.DBSYSTEMVALUES_INTERBASE=zRA;zjA.DBSYSTEMVALUES_MARIADB=RRA;zjA.DBSYSTEMVALUES_NETEZZA=wRA;zjA.DBSYSTEMVALUES_PERVASIVE=jRA;zjA.DBSYSTEMVALUES_POINTBASE=ORA;zjA.DBSYSTEMVALUES_SQLITE=PRA;zjA.DBSYSTEMVALUES_SYBASE=TRA;zjA.DBSYSTEMVALUES_TERADATA=SRA;zjA.DBSYSTEMVALUES_VERTICA=kRA;zjA.DBSYSTEMVALUES_H2=_RA;zjA.DBSYSTEMVALUES_COLDFUSION=vRA;zjA.DBSYSTEMVALUES_CASSANDRA=yRA;zjA.DBSYSTEMVALUES_HBASE=gRA;zjA.DBSYSTEMVALUES_MONGODB=hRA;zjA.DBSYSTEMVALUES_REDIS=xRA;zjA.DBSYSTEMVALUES_COUCHBASE=fRA;zjA.DBSYSTEMVALUES_COUCHDB=bRA;zjA.DBSYSTEMVALUES_COSMOSDB=mRA;zjA.DBSYSTEMVALUES_DYNAMODB=uRA;zjA.DBSYSTEMVALUES_NEO4J=dRA;zjA.DBSYSTEMVALUES_GEODE=cRA;zjA.DBSYSTEMVALUES_ELASTICSEARCH=lRA;zjA.DBSYSTEMVALUES_MEMCACHED=pRA;zjA.DBSYSTEMVALUES_COCKROACHDB=iRA;zjA.DbSystemValues=(0,j5.createConstMap)([ARA,QRA,BRA,YRA,JRA,CRA,XRA,GRA,FRA,WRA,ZRA,$RA,URA,ERA,KRA,VRA,IRA,HRA,DRA,NRA,LRA,qRA,MRA,zRA,RRA,wRA,jRA,ORA,PRA,TRA,SRA,kRA,_RA,vRA,yRA,gRA,hRA,xRA,fRA,bRA,mRA,uRA,dRA,cRA,lRA,pRA,iRA]);var nRA="all",sRA="each_quorum",rRA="quorum",aRA="local_quorum",oRA="one",tRA="two",eRA="three",AwA="local_one",QwA="any",BwA="serial",YwA="local_serial";zjA.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=nRA;zjA.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=sRA;zjA.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=rRA;zjA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=aRA;zjA.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=oRA;zjA.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=tRA;zjA.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=eRA;zjA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=AwA;zjA.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=QwA;zjA.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=BwA;zjA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=YwA;zjA.DbCassandraConsistencyLevelValues=(0,j5.createConstMap)([nRA,sRA,rRA,aRA,oRA,tRA,eRA,AwA,QwA,BwA,YwA]);var JwA="datasource",CwA="http",XwA="pubsub",GwA="timer",FwA="other";zjA.FAASTRIGGERVALUES_DATASOURCE=JwA;zjA.FAASTRIGGERVALUES_HTTP=CwA;zjA.FAASTRIGGERVALUES_PUBSUB=XwA;zjA.FAASTRIGGERVALUES_TIMER=GwA;zjA.FAASTRIGGERVALUES_OTHER=FwA;zjA.FaasTriggerValues=(0,j5.createConstMap)([JwA,CwA,XwA,GwA,FwA]);var WwA="insert",ZwA="edit",$wA="delete";zjA.FAASDOCUMENTOPERATIONVALUES_INSERT=WwA;zjA.FAASDOCUMENTOPERATIONVALUES_EDIT=ZwA;zjA.FAASDOCUMENTOPERATIONVALUES_DELETE=$wA;zjA.FaasDocumentOperationValues=(0,j5.createConstMap)([WwA,ZwA,$wA]);var UwA="alibaba_cloud",EwA="aws",KwA="azure",VwA="gcp";zjA.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=UwA;zjA.FAASINVOKEDPROVIDERVALUES_AWS=EwA;zjA.FAASINVOKEDPROVIDERVALUES_AZURE=KwA;zjA.FAASINVOKEDPROVIDERVALUES_GCP=VwA;zjA.FaasInvokedProviderValues=(0,j5.createConstMap)([UwA,EwA,KwA,VwA]);var IwA="ip_tcp",HwA="ip_udp",DwA="ip",NwA="unix",LwA="pipe",qwA="inproc",MwA="other";zjA.NETTRANSPORTVALUES_IP_TCP=IwA;zjA.NETTRANSPORTVALUES_IP_UDP=HwA;zjA.NETTRANSPORTVALUES_IP=DwA;zjA.NETTRANSPORTVALUES_UNIX=NwA;zjA.NETTRANSPORTVALUES_PIPE=LwA;zjA.NETTRANSPORTVALUES_INPROC=qwA;zjA.NETTRANSPORTVALUES_OTHER=MwA;zjA.NetTransportValues=(0,j5.createConstMap)([IwA,HwA,DwA,NwA,LwA,qwA,MwA]);var zwA="wifi",RwA="wired",wwA="cell",jwA="unavailable",OwA="unknown";zjA.NETHOSTCONNECTIONTYPEVALUES_WIFI=zwA;zjA.NETHOSTCONNECTIONTYPEVALUES_WIRED=RwA;zjA.NETHOSTCONNECTIONTYPEVALUES_CELL=wwA;zjA.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=jwA;zjA.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=OwA;zjA.NetHostConnectionTypeValues=(0,j5.createConstMap)([zwA,RwA,wwA,jwA,OwA]);var PwA="gprs",TwA="edge",SwA="umts",kwA="cdma",_wA="evdo_0",vwA="evdo_a",ywA="cdma2000_1xrtt",gwA="hsdpa",hwA="hsupa",xwA="hspa",fwA="iden",bwA="evdo_b",mwA="lte",uwA="ehrpd",dwA="hspap",cwA="gsm",lwA="td_scdma",pwA="iwlan",iwA="nr",nwA="nrnsa",swA="lte_ca";zjA.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=PwA;zjA.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=TwA;zjA.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=SwA;zjA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=kwA;zjA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=_wA;zjA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=vwA;zjA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=ywA;zjA.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=gwA;zjA.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=hwA;zjA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=xwA;zjA.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=fwA;zjA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=bwA;zjA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=mwA;zjA.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=uwA;zjA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=dwA;zjA.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=cwA;zjA.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=lwA;zjA.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=pwA;zjA.NETHOSTCONNECTIONSUBTYPEVALUES_NR=iwA;zjA.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=nwA;zjA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=swA;zjA.NetHostConnectionSubtypeValues=(0,j5.createConstMap)([PwA,TwA,SwA,kwA,_wA,vwA,ywA,gwA,hwA,xwA,fwA,bwA,mwA,uwA,dwA,cwA,lwA,pwA,iwA,nwA,swA]);var rwA="1.0",awA="1.1",owA="2.0",twA="SPDY",ewA="QUIC";zjA.HTTPFLAVORVALUES_HTTP_1_0=rwA;zjA.HTTPFLAVORVALUES_HTTP_1_1=awA;zjA.HTTPFLAVORVALUES_HTTP_2_0=owA;zjA.HTTPFLAVORVALUES_SPDY=twA;zjA.HTTPFLAVORVALUES_QUIC=ewA;zjA.HttpFlavorValues={HTTP_1_0:rwA,HTTP_1_1:awA,HTTP_2_0:owA,SPDY:twA,QUIC:ewA};var AjA="queue",QjA="topic";zjA.MESSAGINGDESTINATIONKINDVALUES_QUEUE=AjA;zjA.MESSAGINGDESTINATIONKINDVALUES_TOPIC=QjA;zjA.MessagingDestinationKindValues=(0,j5.createConstMap)([AjA,QjA]);var BjA="receive",YjA="process";zjA.MESSAGINGOPERATIONVALUES_RECEIVE=BjA;zjA.MESSAGINGOPERATIONVALUES_PROCESS=YjA;zjA.MessagingOperationValues=(0,j5.createConstMap)([BjA,YjA]);var JjA=0,CjA=1,XjA=2,GjA=3,FjA=4,WjA=5,ZjA=6,$jA=7,UjA=8,EjA=9,KjA=10,VjA=11,IjA=12,HjA=13,DjA=14,NjA=15,LjA=16;zjA.RPCGRPCSTATUSCODEVALUES_OK=JjA;zjA.RPCGRPCSTATUSCODEVALUES_CANCELLED=CjA;zjA.RPCGRPCSTATUSCODEVALUES_UNKNOWN=XjA;zjA.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=GjA;zjA.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=FjA;zjA.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=WjA;zjA.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=ZjA;zjA.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=$jA;zjA.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=UjA;zjA.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=EjA;zjA.RPCGRPCSTATUSCODEVALUES_ABORTED=KjA;zjA.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=VjA;zjA.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=IjA;zjA.RPCGRPCSTATUSCODEVALUES_INTERNAL=HjA;zjA.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=DjA;zjA.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=NjA;zjA.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=LjA;zjA.RpcGrpcStatusCodeValues={OK:JjA,CANCELLED:CjA,UNKNOWN:XjA,INVALID_ARGUMENT:GjA,DEADLINE_EXCEEDED:FjA,NOT_FOUND:WjA,ALREADY_EXISTS:ZjA,PERMISSION_DENIED:$jA,RESOURCE_EXHAUSTED:UjA,FAILED_PRECONDITION:EjA,ABORTED:KjA,OUT_OF_RANGE:VjA,UNIMPLEMENTED:IjA,INTERNAL:HjA,UNAVAILABLE:DjA,DATA_LOSS:NjA,UNAUTHENTICATED:LjA};var qjA="SENT",MjA="RECEIVED";zjA.MESSAGETYPEVALUES_SENT=qjA;zjA.MESSAGETYPEVALUES_RECEIVED=MjA;zjA.MessageTypeValues=(0,j5.createConstMap)([qjA,MjA])});var kjA=R((fZ)=>{var dNB=fZ&&fZ.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),cNB=fZ&&fZ.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))dNB(Q,A,B)};Object.defineProperty(fZ,"__esModule",{value:!0});cNB(SjA(),fZ)});var XTA=R((BTA)=>{Object.defineProperty(BTA,"__esModule",{value:!0});BTA.SEMRESATTRS_K8S_STATEFULSET_NAME=BTA.SEMRESATTRS_K8S_STATEFULSET_UID=BTA.SEMRESATTRS_K8S_DEPLOYMENT_NAME=BTA.SEMRESATTRS_K8S_DEPLOYMENT_UID=BTA.SEMRESATTRS_K8S_REPLICASET_NAME=BTA.SEMRESATTRS_K8S_REPLICASET_UID=BTA.SEMRESATTRS_K8S_CONTAINER_NAME=BTA.SEMRESATTRS_K8S_POD_NAME=BTA.SEMRESATTRS_K8S_POD_UID=BTA.SEMRESATTRS_K8S_NAMESPACE_NAME=BTA.SEMRESATTRS_K8S_NODE_UID=BTA.SEMRESATTRS_K8S_NODE_NAME=BTA.SEMRESATTRS_K8S_CLUSTER_NAME=BTA.SEMRESATTRS_HOST_IMAGE_VERSION=BTA.SEMRESATTRS_HOST_IMAGE_ID=BTA.SEMRESATTRS_HOST_IMAGE_NAME=BTA.SEMRESATTRS_HOST_ARCH=BTA.SEMRESATTRS_HOST_TYPE=BTA.SEMRESATTRS_HOST_NAME=BTA.SEMRESATTRS_HOST_ID=BTA.SEMRESATTRS_FAAS_MAX_MEMORY=BTA.SEMRESATTRS_FAAS_INSTANCE=BTA.SEMRESATTRS_FAAS_VERSION=BTA.SEMRESATTRS_FAAS_ID=BTA.SEMRESATTRS_FAAS_NAME=BTA.SEMRESATTRS_DEVICE_MODEL_NAME=BTA.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=BTA.SEMRESATTRS_DEVICE_ID=BTA.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=BTA.SEMRESATTRS_CONTAINER_IMAGE_TAG=BTA.SEMRESATTRS_CONTAINER_IMAGE_NAME=BTA.SEMRESATTRS_CONTAINER_RUNTIME=BTA.SEMRESATTRS_CONTAINER_ID=BTA.SEMRESATTRS_CONTAINER_NAME=BTA.SEMRESATTRS_AWS_LOG_STREAM_ARNS=BTA.SEMRESATTRS_AWS_LOG_STREAM_NAMES=BTA.SEMRESATTRS_AWS_LOG_GROUP_ARNS=BTA.SEMRESATTRS_AWS_LOG_GROUP_NAMES=BTA.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=BTA.SEMRESATTRS_AWS_ECS_TASK_REVISION=BTA.SEMRESATTRS_AWS_ECS_TASK_FAMILY=BTA.SEMRESATTRS_AWS_ECS_TASK_ARN=BTA.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=BTA.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=BTA.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=BTA.SEMRESATTRS_CLOUD_PLATFORM=BTA.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=BTA.SEMRESATTRS_CLOUD_REGION=BTA.SEMRESATTRS_CLOUD_ACCOUNT_ID=BTA.SEMRESATTRS_CLOUD_PROVIDER=void 0;BTA.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=BTA.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=BTA.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=BTA.CLOUDPLATFORMVALUES_AZURE_AKS=BTA.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=BTA.CLOUDPLATFORMVALUES_AZURE_VM=BTA.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=BTA.CLOUDPLATFORMVALUES_AWS_LAMBDA=BTA.CLOUDPLATFORMVALUES_AWS_EKS=BTA.CLOUDPLATFORMVALUES_AWS_ECS=BTA.CLOUDPLATFORMVALUES_AWS_EC2=BTA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=BTA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=BTA.CloudProviderValues=BTA.CLOUDPROVIDERVALUES_GCP=BTA.CLOUDPROVIDERVALUES_AZURE=BTA.CLOUDPROVIDERVALUES_AWS=BTA.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=BTA.SemanticResourceAttributes=BTA.SEMRESATTRS_WEBENGINE_DESCRIPTION=BTA.SEMRESATTRS_WEBENGINE_VERSION=BTA.SEMRESATTRS_WEBENGINE_NAME=BTA.SEMRESATTRS_TELEMETRY_AUTO_VERSION=BTA.SEMRESATTRS_TELEMETRY_SDK_VERSION=BTA.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=BTA.SEMRESATTRS_TELEMETRY_SDK_NAME=BTA.SEMRESATTRS_SERVICE_VERSION=BTA.SEMRESATTRS_SERVICE_INSTANCE_ID=BTA.SEMRESATTRS_SERVICE_NAMESPACE=BTA.SEMRESATTRS_SERVICE_NAME=BTA.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=BTA.SEMRESATTRS_PROCESS_RUNTIME_VERSION=BTA.SEMRESATTRS_PROCESS_RUNTIME_NAME=BTA.SEMRESATTRS_PROCESS_OWNER=BTA.SEMRESATTRS_PROCESS_COMMAND_ARGS=BTA.SEMRESATTRS_PROCESS_COMMAND_LINE=BTA.SEMRESATTRS_PROCESS_COMMAND=BTA.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=BTA.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=BTA.SEMRESATTRS_PROCESS_PID=BTA.SEMRESATTRS_OS_VERSION=BTA.SEMRESATTRS_OS_NAME=BTA.SEMRESATTRS_OS_DESCRIPTION=BTA.SEMRESATTRS_OS_TYPE=BTA.SEMRESATTRS_K8S_CRONJOB_NAME=BTA.SEMRESATTRS_K8S_CRONJOB_UID=BTA.SEMRESATTRS_K8S_JOB_NAME=BTA.SEMRESATTRS_K8S_JOB_UID=BTA.SEMRESATTRS_K8S_DAEMONSET_NAME=BTA.SEMRESATTRS_K8S_DAEMONSET_UID=void 0;BTA.TelemetrySdkLanguageValues=BTA.TELEMETRYSDKLANGUAGEVALUES_WEBJS=BTA.TELEMETRYSDKLANGUAGEVALUES_RUBY=BTA.TELEMETRYSDKLANGUAGEVALUES_PYTHON=BTA.TELEMETRYSDKLANGUAGEVALUES_PHP=BTA.TELEMETRYSDKLANGUAGEVALUES_NODEJS=BTA.TELEMETRYSDKLANGUAGEVALUES_JAVA=BTA.TELEMETRYSDKLANGUAGEVALUES_GO=BTA.TELEMETRYSDKLANGUAGEVALUES_ERLANG=BTA.TELEMETRYSDKLANGUAGEVALUES_DOTNET=BTA.TELEMETRYSDKLANGUAGEVALUES_CPP=BTA.OsTypeValues=BTA.OSTYPEVALUES_Z_OS=BTA.OSTYPEVALUES_SOLARIS=BTA.OSTYPEVALUES_AIX=BTA.OSTYPEVALUES_HPUX=BTA.OSTYPEVALUES_DRAGONFLYBSD=BTA.OSTYPEVALUES_OPENBSD=BTA.OSTYPEVALUES_NETBSD=BTA.OSTYPEVALUES_FREEBSD=BTA.OSTYPEVALUES_DARWIN=BTA.OSTYPEVALUES_LINUX=BTA.OSTYPEVALUES_WINDOWS=BTA.HostArchValues=BTA.HOSTARCHVALUES_X86=BTA.HOSTARCHVALUES_PPC64=BTA.HOSTARCHVALUES_PPC32=BTA.HOSTARCHVALUES_IA64=BTA.HOSTARCHVALUES_ARM64=BTA.HOSTARCHVALUES_ARM32=BTA.HOSTARCHVALUES_AMD64=BTA.AwsEcsLaunchtypeValues=BTA.AWSECSLAUNCHTYPEVALUES_FARGATE=BTA.AWSECSLAUNCHTYPEVALUES_EC2=BTA.CloudPlatformValues=BTA.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=BTA.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=BTA.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=BTA.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=void 0;var bZ=hc(),_jA="cloud.provider",vjA="cloud.account.id",yjA="cloud.region",gjA="cloud.availability_zone",hjA="cloud.platform",xjA="aws.ecs.container.arn",fjA="aws.ecs.cluster.arn",bjA="aws.ecs.launchtype",mjA="aws.ecs.task.arn",ujA="aws.ecs.task.family",djA="aws.ecs.task.revision",cjA="aws.eks.cluster.arn",ljA="aws.log.group.names",pjA="aws.log.group.arns",ijA="aws.log.stream.names",njA="aws.log.stream.arns",sjA="container.name",rjA="container.id",ajA="container.runtime",ojA="container.image.name",tjA="container.image.tag",ejA="deployment.environment",AOA="device.id",QOA="device.model.identifier",BOA="device.model.name",YOA="faas.name",JOA="faas.id",COA="faas.version",XOA="faas.instance",GOA="faas.max_memory",FOA="host.id",WOA="host.name",ZOA="host.type",$OA="host.arch",UOA="host.image.name",EOA="host.image.id",KOA="host.image.version",VOA="k8s.cluster.name",IOA="k8s.node.name",HOA="k8s.node.uid",DOA="k8s.namespace.name",NOA="k8s.pod.uid",LOA="k8s.pod.name",qOA="k8s.container.name",MOA="k8s.replicaset.uid",zOA="k8s.replicaset.name",ROA="k8s.deployment.uid",wOA="k8s.deployment.name",jOA="k8s.statefulset.uid",OOA="k8s.statefulset.name",POA="k8s.daemonset.uid",TOA="k8s.daemonset.name",SOA="k8s.job.uid",kOA="k8s.job.name",_OA="k8s.cronjob.uid",vOA="k8s.cronjob.name",yOA="os.type",gOA="os.description",hOA="os.name",xOA="os.version",fOA="process.pid",bOA="process.executable.name",mOA="process.executable.path",uOA="process.command",dOA="process.command_line",cOA="process.command_args",lOA="process.owner",pOA="process.runtime.name",iOA="process.runtime.version",nOA="process.runtime.description",sOA="service.name",rOA="service.namespace",aOA="service.instance.id",oOA="service.version",tOA="telemetry.sdk.name",eOA="telemetry.sdk.language",APA="telemetry.sdk.version",QPA="telemetry.auto.version",BPA="webengine.name",YPA="webengine.version",JPA="webengine.description";BTA.SEMRESATTRS_CLOUD_PROVIDER=_jA;BTA.SEMRESATTRS_CLOUD_ACCOUNT_ID=vjA;BTA.SEMRESATTRS_CLOUD_REGION=yjA;BTA.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=gjA;BTA.SEMRESATTRS_CLOUD_PLATFORM=hjA;BTA.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=xjA;BTA.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=fjA;BTA.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=bjA;BTA.SEMRESATTRS_AWS_ECS_TASK_ARN=mjA;BTA.SEMRESATTRS_AWS_ECS_TASK_FAMILY=ujA;BTA.SEMRESATTRS_AWS_ECS_TASK_REVISION=djA;BTA.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=cjA;BTA.SEMRESATTRS_AWS_LOG_GROUP_NAMES=ljA;BTA.SEMRESATTRS_AWS_LOG_GROUP_ARNS=pjA;BTA.SEMRESATTRS_AWS_LOG_STREAM_NAMES=ijA;BTA.SEMRESATTRS_AWS_LOG_STREAM_ARNS=njA;BTA.SEMRESATTRS_CONTAINER_NAME=sjA;BTA.SEMRESATTRS_CONTAINER_ID=rjA;BTA.SEMRESATTRS_CONTAINER_RUNTIME=ajA;BTA.SEMRESATTRS_CONTAINER_IMAGE_NAME=ojA;BTA.SEMRESATTRS_CONTAINER_IMAGE_TAG=tjA;BTA.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=ejA;BTA.SEMRESATTRS_DEVICE_ID=AOA;BTA.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=QOA;BTA.SEMRESATTRS_DEVICE_MODEL_NAME=BOA;BTA.SEMRESATTRS_FAAS_NAME=YOA;BTA.SEMRESATTRS_FAAS_ID=JOA;BTA.SEMRESATTRS_FAAS_VERSION=COA;BTA.SEMRESATTRS_FAAS_INSTANCE=XOA;BTA.SEMRESATTRS_FAAS_MAX_MEMORY=GOA;BTA.SEMRESATTRS_HOST_ID=FOA;BTA.SEMRESATTRS_HOST_NAME=WOA;BTA.SEMRESATTRS_HOST_TYPE=ZOA;BTA.SEMRESATTRS_HOST_ARCH=$OA;BTA.SEMRESATTRS_HOST_IMAGE_NAME=UOA;BTA.SEMRESATTRS_HOST_IMAGE_ID=EOA;BTA.SEMRESATTRS_HOST_IMAGE_VERSION=KOA;BTA.SEMRESATTRS_K8S_CLUSTER_NAME=VOA;BTA.SEMRESATTRS_K8S_NODE_NAME=IOA;BTA.SEMRESATTRS_K8S_NODE_UID=HOA;BTA.SEMRESATTRS_K8S_NAMESPACE_NAME=DOA;BTA.SEMRESATTRS_K8S_POD_UID=NOA;BTA.SEMRESATTRS_K8S_POD_NAME=LOA;BTA.SEMRESATTRS_K8S_CONTAINER_NAME=qOA;BTA.SEMRESATTRS_K8S_REPLICASET_UID=MOA;BTA.SEMRESATTRS_K8S_REPLICASET_NAME=zOA;BTA.SEMRESATTRS_K8S_DEPLOYMENT_UID=ROA;BTA.SEMRESATTRS_K8S_DEPLOYMENT_NAME=wOA;BTA.SEMRESATTRS_K8S_STATEFULSET_UID=jOA;BTA.SEMRESATTRS_K8S_STATEFULSET_NAME=OOA;BTA.SEMRESATTRS_K8S_DAEMONSET_UID=POA;BTA.SEMRESATTRS_K8S_DAEMONSET_NAME=TOA;BTA.SEMRESATTRS_K8S_JOB_UID=SOA;BTA.SEMRESATTRS_K8S_JOB_NAME=kOA;BTA.SEMRESATTRS_K8S_CRONJOB_UID=_OA;BTA.SEMRESATTRS_K8S_CRONJOB_NAME=vOA;BTA.SEMRESATTRS_OS_TYPE=yOA;BTA.SEMRESATTRS_OS_DESCRIPTION=gOA;BTA.SEMRESATTRS_OS_NAME=hOA;BTA.SEMRESATTRS_OS_VERSION=xOA;BTA.SEMRESATTRS_PROCESS_PID=fOA;BTA.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=bOA;BTA.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=mOA;BTA.SEMRESATTRS_PROCESS_COMMAND=uOA;BTA.SEMRESATTRS_PROCESS_COMMAND_LINE=dOA;BTA.SEMRESATTRS_PROCESS_COMMAND_ARGS=cOA;BTA.SEMRESATTRS_PROCESS_OWNER=lOA;BTA.SEMRESATTRS_PROCESS_RUNTIME_NAME=pOA;BTA.SEMRESATTRS_PROCESS_RUNTIME_VERSION=iOA;BTA.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=nOA;BTA.SEMRESATTRS_SERVICE_NAME=sOA;BTA.SEMRESATTRS_SERVICE_NAMESPACE=rOA;BTA.SEMRESATTRS_SERVICE_INSTANCE_ID=aOA;BTA.SEMRESATTRS_SERVICE_VERSION=oOA;BTA.SEMRESATTRS_TELEMETRY_SDK_NAME=tOA;BTA.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=eOA;BTA.SEMRESATTRS_TELEMETRY_SDK_VERSION=APA;BTA.SEMRESATTRS_TELEMETRY_AUTO_VERSION=QPA;BTA.SEMRESATTRS_WEBENGINE_NAME=BPA;BTA.SEMRESATTRS_WEBENGINE_VERSION=YPA;BTA.SEMRESATTRS_WEBENGINE_DESCRIPTION=JPA;BTA.SemanticResourceAttributes=(0,bZ.createConstMap)([_jA,vjA,yjA,gjA,hjA,xjA,fjA,bjA,mjA,ujA,djA,cjA,ljA,pjA,ijA,njA,sjA,rjA,ajA,ojA,tjA,ejA,AOA,QOA,BOA,YOA,JOA,COA,XOA,GOA,FOA,WOA,ZOA,$OA,UOA,EOA,KOA,VOA,IOA,HOA,DOA,NOA,LOA,qOA,MOA,zOA,ROA,wOA,jOA,OOA,POA,TOA,SOA,kOA,_OA,vOA,yOA,gOA,hOA,xOA,fOA,bOA,mOA,uOA,dOA,cOA,lOA,pOA,iOA,nOA,sOA,rOA,aOA,oOA,tOA,eOA,APA,QPA,BPA,YPA,JPA]);var CPA="alibaba_cloud",XPA="aws",GPA="azure",FPA="gcp";BTA.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=CPA;BTA.CLOUDPROVIDERVALUES_AWS=XPA;BTA.CLOUDPROVIDERVALUES_AZURE=GPA;BTA.CLOUDPROVIDERVALUES_GCP=FPA;BTA.CloudProviderValues=(0,bZ.createConstMap)([CPA,XPA,GPA,FPA]);var WPA="alibaba_cloud_ecs",ZPA="alibaba_cloud_fc",$PA="aws_ec2",UPA="aws_ecs",EPA="aws_eks",KPA="aws_lambda",VPA="aws_elastic_beanstalk",IPA="azure_vm",HPA="azure_container_instances",DPA="azure_aks",NPA="azure_functions",LPA="azure_app_service",qPA="gcp_compute_engine",MPA="gcp_cloud_run",zPA="gcp_kubernetes_engine",RPA="gcp_cloud_functions",wPA="gcp_app_engine";BTA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=WPA;BTA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=ZPA;BTA.CLOUDPLATFORMVALUES_AWS_EC2=$PA;BTA.CLOUDPLATFORMVALUES_AWS_ECS=UPA;BTA.CLOUDPLATFORMVALUES_AWS_EKS=EPA;BTA.CLOUDPLATFORMVALUES_AWS_LAMBDA=KPA;BTA.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=VPA;BTA.CLOUDPLATFORMVALUES_AZURE_VM=IPA;BTA.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=HPA;BTA.CLOUDPLATFORMVALUES_AZURE_AKS=DPA;BTA.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=NPA;BTA.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=LPA;BTA.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=qPA;BTA.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=MPA;BTA.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=zPA;BTA.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=RPA;BTA.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=wPA;BTA.CloudPlatformValues=(0,bZ.createConstMap)([WPA,ZPA,$PA,UPA,EPA,KPA,VPA,IPA,HPA,DPA,NPA,LPA,qPA,MPA,zPA,RPA,wPA]);var jPA="ec2",OPA="fargate";BTA.AWSECSLAUNCHTYPEVALUES_EC2=jPA;BTA.AWSECSLAUNCHTYPEVALUES_FARGATE=OPA;BTA.AwsEcsLaunchtypeValues=(0,bZ.createConstMap)([jPA,OPA]);var PPA="amd64",TPA="arm32",SPA="arm64",kPA="ia64",_PA="ppc32",vPA="ppc64",yPA="x86";BTA.HOSTARCHVALUES_AMD64=PPA;BTA.HOSTARCHVALUES_ARM32=TPA;BTA.HOSTARCHVALUES_ARM64=SPA;BTA.HOSTARCHVALUES_IA64=kPA;BTA.HOSTARCHVALUES_PPC32=_PA;BTA.HOSTARCHVALUES_PPC64=vPA;BTA.HOSTARCHVALUES_X86=yPA;BTA.HostArchValues=(0,bZ.createConstMap)([PPA,TPA,SPA,kPA,_PA,vPA,yPA]);var gPA="windows",hPA="linux",xPA="darwin",fPA="freebsd",bPA="netbsd",mPA="openbsd",uPA="dragonflybsd",dPA="hpux",cPA="aix",lPA="solaris",pPA="z_os";BTA.OSTYPEVALUES_WINDOWS=gPA;BTA.OSTYPEVALUES_LINUX=hPA;BTA.OSTYPEVALUES_DARWIN=xPA;BTA.OSTYPEVALUES_FREEBSD=fPA;BTA.OSTYPEVALUES_NETBSD=bPA;BTA.OSTYPEVALUES_OPENBSD=mPA;BTA.OSTYPEVALUES_DRAGONFLYBSD=uPA;BTA.OSTYPEVALUES_HPUX=dPA;BTA.OSTYPEVALUES_AIX=cPA;BTA.OSTYPEVALUES_SOLARIS=lPA;BTA.OSTYPEVALUES_Z_OS=pPA;BTA.OsTypeValues=(0,bZ.createConstMap)([gPA,hPA,xPA,fPA,bPA,mPA,uPA,dPA,cPA,lPA,pPA]);var iPA="cpp",nPA="dotnet",sPA="erlang",rPA="go",aPA="java",oPA="nodejs",tPA="php",ePA="python",ATA="ruby",QTA="webjs";BTA.TELEMETRYSDKLANGUAGEVALUES_CPP=iPA;BTA.TELEMETRYSDKLANGUAGEVALUES_DOTNET=nPA;BTA.TELEMETRYSDKLANGUAGEVALUES_ERLANG=sPA;BTA.TELEMETRYSDKLANGUAGEVALUES_GO=rPA;BTA.TELEMETRYSDKLANGUAGEVALUES_JAVA=aPA;BTA.TELEMETRYSDKLANGUAGEVALUES_NODEJS=oPA;BTA.TELEMETRYSDKLANGUAGEVALUES_PHP=tPA;BTA.TELEMETRYSDKLANGUAGEVALUES_PYTHON=ePA;BTA.TELEMETRYSDKLANGUAGEVALUES_RUBY=ATA;BTA.TELEMETRYSDKLANGUAGEVALUES_WEBJS=QTA;BTA.TelemetrySdkLanguageValues=(0,bZ.createConstMap)([iPA,nPA,sPA,rPA,aPA,oPA,tPA,ePA,ATA,QTA])});var GTA=R((mZ)=>{var DMB=mZ&&mZ.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),NMB=mZ&&mZ.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))DMB(Q,A,B)};Object.defineProperty(mZ,"__esModule",{value:!0});NMB(XTA(),mZ)});var UTA=R((FTA)=>{Object.defineProperty(FTA,"__esModule",{value:!0});FTA.HTTP_REQUEST_METHOD_VALUE_POST=FTA.HTTP_REQUEST_METHOD_VALUE_PATCH=FTA.HTTP_REQUEST_METHOD_VALUE_OPTIONS=FTA.HTTP_REQUEST_METHOD_VALUE_HEAD=FTA.HTTP_REQUEST_METHOD_VALUE_GET=FTA.HTTP_REQUEST_METHOD_VALUE_DELETE=FTA.HTTP_REQUEST_METHOD_VALUE_CONNECT=FTA.HTTP_REQUEST_METHOD_VALUE_OTHER=FTA.ATTR_HTTP_REQUEST_METHOD=FTA.ATTR_HTTP_REQUEST_HEADER=FTA.ATTR_EXCEPTION_TYPE=FTA.ATTR_EXCEPTION_STACKTRACE=FTA.ATTR_EXCEPTION_MESSAGE=FTA.ATTR_EXCEPTION_ESCAPED=FTA.ERROR_TYPE_VALUE_OTHER=FTA.ATTR_ERROR_TYPE=FTA.ATTR_CLIENT_PORT=FTA.ATTR_CLIENT_ADDRESS=FTA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS=FTA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE=FTA.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS=FTA.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK=FTA.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED=FTA.ATTR_ASPNETCORE_RATE_LIMITING_POLICY=FTA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED=FTA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED=FTA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED=FTA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED=FTA.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT=FTA.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE=FTA.ATTR_TELEMETRY_SDK_VERSION=FTA.ATTR_TELEMETRY_SDK_NAME=FTA.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS=FTA.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT=FTA.TELEMETRY_SDK_LANGUAGE_VALUE_RUST=FTA.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY=FTA.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON=FTA.TELEMETRY_SDK_LANGUAGE_VALUE_PHP=FTA.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS=FTA.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA=FTA.TELEMETRY_SDK_LANGUAGE_VALUE_GO=FTA.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG=FTA.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET=FTA.TELEMETRY_SDK_LANGUAGE_VALUE_CPP=FTA.ATTR_TELEMETRY_SDK_LANGUAGE=FTA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED=FTA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER=FTA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER=FTA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED=FTA.ATTR_ASPNETCORE_RATE_LIMITING_RESULT=void 0;FTA.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT=FTA.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE=FTA.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN=FTA.ATTR_SIGNALR_CONNECTION_STATUS=FTA.ATTR_SERVICE_VERSION=FTA.ATTR_SERVICE_NAME=FTA.ATTR_SERVER_PORT=FTA.ATTR_SERVER_ADDRESS=FTA.ATTR_OTEL_STATUS_DESCRIPTION=FTA.OTEL_STATUS_CODE_VALUE_OK=FTA.OTEL_STATUS_CODE_VALUE_ERROR=FTA.ATTR_OTEL_STATUS_CODE=FTA.ATTR_OTEL_SCOPE_VERSION=FTA.ATTR_OTEL_SCOPE_NAME=FTA.NETWORK_TYPE_VALUE_IPV6=FTA.NETWORK_TYPE_VALUE_IPV4=FTA.ATTR_NETWORK_TYPE=FTA.NETWORK_TRANSPORT_VALUE_UNIX=FTA.NETWORK_TRANSPORT_VALUE_UDP=FTA.NETWORK_TRANSPORT_VALUE_TCP=FTA.NETWORK_TRANSPORT_VALUE_QUIC=FTA.NETWORK_TRANSPORT_VALUE_PIPE=FTA.ATTR_NETWORK_TRANSPORT=FTA.ATTR_NETWORK_PROTOCOL_VERSION=FTA.ATTR_NETWORK_PROTOCOL_NAME=FTA.ATTR_NETWORK_PEER_PORT=FTA.ATTR_NETWORK_PEER_ADDRESS=FTA.ATTR_NETWORK_LOCAL_PORT=FTA.ATTR_NETWORK_LOCAL_ADDRESS=FTA.JVM_THREAD_STATE_VALUE_WAITING=FTA.JVM_THREAD_STATE_VALUE_TIMED_WAITING=FTA.JVM_THREAD_STATE_VALUE_TERMINATED=FTA.JVM_THREAD_STATE_VALUE_RUNNABLE=FTA.JVM_THREAD_STATE_VALUE_NEW=FTA.JVM_THREAD_STATE_VALUE_BLOCKED=FTA.ATTR_JVM_THREAD_STATE=FTA.ATTR_JVM_THREAD_DAEMON=FTA.JVM_MEMORY_TYPE_VALUE_NON_HEAP=FTA.JVM_MEMORY_TYPE_VALUE_HEAP=FTA.ATTR_JVM_MEMORY_TYPE=FTA.ATTR_JVM_MEMORY_POOL_NAME=FTA.ATTR_JVM_GC_NAME=FTA.ATTR_JVM_GC_ACTION=FTA.ATTR_HTTP_ROUTE=FTA.ATTR_HTTP_RESPONSE_STATUS_CODE=FTA.ATTR_HTTP_RESPONSE_HEADER=FTA.ATTR_HTTP_REQUEST_RESEND_COUNT=FTA.ATTR_HTTP_REQUEST_METHOD_ORIGINAL=FTA.HTTP_REQUEST_METHOD_VALUE_TRACE=FTA.HTTP_REQUEST_METHOD_VALUE_PUT=void 0;FTA.ATTR_USER_AGENT_ORIGINAL=FTA.ATTR_URL_SCHEME=FTA.ATTR_URL_QUERY=FTA.ATTR_URL_PATH=FTA.ATTR_URL_FULL=FTA.ATTR_URL_FRAGMENT=FTA.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS=FTA.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS=FTA.SIGNALR_TRANSPORT_VALUE_LONG_POLLING=FTA.ATTR_SIGNALR_TRANSPORT=void 0;FTA.ATTR_ASPNETCORE_RATE_LIMITING_RESULT="aspnetcore.rate_limiting.result";FTA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED="acquired";FTA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER="endpoint_limiter";FTA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER="global_limiter";FTA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED="request_canceled";FTA.ATTR_TELEMETRY_SDK_LANGUAGE="telemetry.sdk.language";FTA.TELEMETRY_SDK_LANGUAGE_VALUE_CPP="cpp";FTA.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET="dotnet";FTA.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG="erlang";FTA.TELEMETRY_SDK_LANGUAGE_VALUE_GO="go";FTA.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA="java";FTA.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS="nodejs";FTA.TELEMETRY_SDK_LANGUAGE_VALUE_PHP="php";FTA.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON="python";FTA.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY="ruby";FTA.TELEMETRY_SDK_LANGUAGE_VALUE_RUST="rust";FTA.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT="swift";FTA.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS="webjs";FTA.ATTR_TELEMETRY_SDK_NAME="telemetry.sdk.name";FTA.ATTR_TELEMETRY_SDK_VERSION="telemetry.sdk.version";FTA.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE="aspnetcore.diagnostics.handler.type";FTA.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT="aspnetcore.diagnostics.exception.result";FTA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED="aborted";FTA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED="handled";FTA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED="skipped";FTA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED="unhandled";FTA.ATTR_ASPNETCORE_RATE_LIMITING_POLICY="aspnetcore.rate_limiting.policy";FTA.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED="aspnetcore.request.is_unhandled";FTA.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK="aspnetcore.routing.is_fallback";FTA.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS="aspnetcore.routing.match_status";FTA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE="failure";FTA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS="success";FTA.ATTR_CLIENT_ADDRESS="client.address";FTA.ATTR_CLIENT_PORT="client.port";FTA.ATTR_ERROR_TYPE="error.type";FTA.ERROR_TYPE_VALUE_OTHER="_OTHER";FTA.ATTR_EXCEPTION_ESCAPED="exception.escaped";FTA.ATTR_EXCEPTION_MESSAGE="exception.message";FTA.ATTR_EXCEPTION_STACKTRACE="exception.stacktrace";FTA.ATTR_EXCEPTION_TYPE="exception.type";var LMB=(A)=>`http.request.header.${A}`;FTA.ATTR_HTTP_REQUEST_HEADER=LMB;FTA.ATTR_HTTP_REQUEST_METHOD="http.request.method";FTA.HTTP_REQUEST_METHOD_VALUE_OTHER="_OTHER";FTA.HTTP_REQUEST_METHOD_VALUE_CONNECT="CONNECT";FTA.HTTP_REQUEST_METHOD_VALUE_DELETE="DELETE";FTA.HTTP_REQUEST_METHOD_VALUE_GET="GET";FTA.HTTP_REQUEST_METHOD_VALUE_HEAD="HEAD";FTA.HTTP_REQUEST_METHOD_VALUE_OPTIONS="OPTIONS";FTA.HTTP_REQUEST_METHOD_VALUE_PATCH="PATCH";FTA.HTTP_REQUEST_METHOD_VALUE_POST="POST";FTA.HTTP_REQUEST_METHOD_VALUE_PUT="PUT";FTA.HTTP_REQUEST_METHOD_VALUE_TRACE="TRACE";FTA.ATTR_HTTP_REQUEST_METHOD_ORIGINAL="http.request.method_original";FTA.ATTR_HTTP_REQUEST_RESEND_COUNT="http.request.resend_count";var qMB=(A)=>`http.response.header.${A}`;FTA.ATTR_HTTP_RESPONSE_HEADER=qMB;FTA.ATTR_HTTP_RESPONSE_STATUS_CODE="http.response.status_code";FTA.ATTR_HTTP_ROUTE="http.route";FTA.ATTR_JVM_GC_ACTION="jvm.gc.action";FTA.ATTR_JVM_GC_NAME="jvm.gc.name";FTA.ATTR_JVM_MEMORY_POOL_NAME="jvm.memory.pool.name";FTA.ATTR_JVM_MEMORY_TYPE="jvm.memory.type";FTA.JVM_MEMORY_TYPE_VALUE_HEAP="heap";FTA.JVM_MEMORY_TYPE_VALUE_NON_HEAP="non_heap";FTA.ATTR_JVM_THREAD_DAEMON="jvm.thread.daemon";FTA.ATTR_JVM_THREAD_STATE="jvm.thread.state";FTA.JVM_THREAD_STATE_VALUE_BLOCKED="blocked";FTA.JVM_THREAD_STATE_VALUE_NEW="new";FTA.JVM_THREAD_STATE_VALUE_RUNNABLE="runnable";FTA.JVM_THREAD_STATE_VALUE_TERMINATED="terminated";FTA.JVM_THREAD_STATE_VALUE_TIMED_WAITING="timed_waiting";FTA.JVM_THREAD_STATE_VALUE_WAITING="waiting";FTA.ATTR_NETWORK_LOCAL_ADDRESS="network.local.address";FTA.ATTR_NETWORK_LOCAL_PORT="network.local.port";FTA.ATTR_NETWORK_PEER_ADDRESS="network.peer.address";FTA.ATTR_NETWORK_PEER_PORT="network.peer.port";FTA.ATTR_NETWORK_PROTOCOL_NAME="network.protocol.name";FTA.ATTR_NETWORK_PROTOCOL_VERSION="network.protocol.version";FTA.ATTR_NETWORK_TRANSPORT="network.transport";FTA.NETWORK_TRANSPORT_VALUE_PIPE="pipe";FTA.NETWORK_TRANSPORT_VALUE_QUIC="quic";FTA.NETWORK_TRANSPORT_VALUE_TCP="tcp";FTA.NETWORK_TRANSPORT_VALUE_UDP="udp";FTA.NETWORK_TRANSPORT_VALUE_UNIX="unix";FTA.ATTR_NETWORK_TYPE="network.type";FTA.NETWORK_TYPE_VALUE_IPV4="ipv4";FTA.NETWORK_TYPE_VALUE_IPV6="ipv6";FTA.ATTR_OTEL_SCOPE_NAME="otel.scope.name";FTA.ATTR_OTEL_SCOPE_VERSION="otel.scope.version";FTA.ATTR_OTEL_STATUS_CODE="otel.status_code";FTA.OTEL_STATUS_CODE_VALUE_ERROR="ERROR";FTA.OTEL_STATUS_CODE_VALUE_OK="OK";FTA.ATTR_OTEL_STATUS_DESCRIPTION="otel.status_description";FTA.ATTR_SERVER_ADDRESS="server.address";FTA.ATTR_SERVER_PORT="server.port";FTA.ATTR_SERVICE_NAME="service.name";FTA.ATTR_SERVICE_VERSION="service.version";FTA.ATTR_SIGNALR_CONNECTION_STATUS="signalr.connection.status";FTA.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN="app_shutdown";FTA.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE="normal_closure";FTA.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT="timeout";FTA.ATTR_SIGNALR_TRANSPORT="signalr.transport";FTA.SIGNALR_TRANSPORT_VALUE_LONG_POLLING="long_polling";FTA.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS="server_sent_events";FTA.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS="web_sockets";FTA.ATTR_URL_FRAGMENT="url.fragment";FTA.ATTR_URL_FULL="url.full";FTA.ATTR_URL_PATH="url.path";FTA.ATTR_URL_QUERY="url.query";FTA.ATTR_URL_SCHEME="url.scheme";FTA.ATTR_USER_AGENT_ORIGINAL="user_agent.original"});var VTA=R((ETA)=>{Object.defineProperty(ETA,"__esModule",{value:!0});ETA.METRIC_SIGNALR_SERVER_CONNECTION_DURATION=ETA.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS=ETA.METRIC_KESTREL_UPGRADED_CONNECTIONS=ETA.METRIC_KESTREL_TLS_HANDSHAKE_DURATION=ETA.METRIC_KESTREL_REJECTED_CONNECTIONS=ETA.METRIC_KESTREL_QUEUED_REQUESTS=ETA.METRIC_KESTREL_QUEUED_CONNECTIONS=ETA.METRIC_KESTREL_CONNECTION_DURATION=ETA.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES=ETA.METRIC_KESTREL_ACTIVE_CONNECTIONS=ETA.METRIC_JVM_THREAD_COUNT=ETA.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC=ETA.METRIC_JVM_MEMORY_USED=ETA.METRIC_JVM_MEMORY_LIMIT=ETA.METRIC_JVM_MEMORY_COMMITTED=ETA.METRIC_JVM_GC_DURATION=ETA.METRIC_JVM_CPU_TIME=ETA.METRIC_JVM_CPU_RECENT_UTILIZATION=ETA.METRIC_JVM_CPU_COUNT=ETA.METRIC_JVM_CLASS_UNLOADED=ETA.METRIC_JVM_CLASS_LOADED=ETA.METRIC_JVM_CLASS_COUNT=ETA.METRIC_HTTP_SERVER_REQUEST_DURATION=ETA.METRIC_HTTP_CLIENT_REQUEST_DURATION=ETA.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS=ETA.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS=ETA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION=ETA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE=ETA.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS=ETA.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES=ETA.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS=void 0;ETA.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS="aspnetcore.diagnostics.exceptions";ETA.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES="aspnetcore.rate_limiting.active_request_leases";ETA.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS="aspnetcore.rate_limiting.queued_requests";ETA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE="aspnetcore.rate_limiting.request.time_in_queue";ETA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION="aspnetcore.rate_limiting.request_lease.duration";ETA.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS="aspnetcore.rate_limiting.requests";ETA.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS="aspnetcore.routing.match_attempts";ETA.METRIC_HTTP_CLIENT_REQUEST_DURATION="http.client.request.duration";ETA.METRIC_HTTP_SERVER_REQUEST_DURATION="http.server.request.duration";ETA.METRIC_JVM_CLASS_COUNT="jvm.class.count";ETA.METRIC_JVM_CLASS_LOADED="jvm.class.loaded";ETA.METRIC_JVM_CLASS_UNLOADED="jvm.class.unloaded";ETA.METRIC_JVM_CPU_COUNT="jvm.cpu.count";ETA.METRIC_JVM_CPU_RECENT_UTILIZATION="jvm.cpu.recent_utilization";ETA.METRIC_JVM_CPU_TIME="jvm.cpu.time";ETA.METRIC_JVM_GC_DURATION="jvm.gc.duration";ETA.METRIC_JVM_MEMORY_COMMITTED="jvm.memory.committed";ETA.METRIC_JVM_MEMORY_LIMIT="jvm.memory.limit";ETA.METRIC_JVM_MEMORY_USED="jvm.memory.used";ETA.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC="jvm.memory.used_after_last_gc";ETA.METRIC_JVM_THREAD_COUNT="jvm.thread.count";ETA.METRIC_KESTREL_ACTIVE_CONNECTIONS="kestrel.active_connections";ETA.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES="kestrel.active_tls_handshakes";ETA.METRIC_KESTREL_CONNECTION_DURATION="kestrel.connection.duration";ETA.METRIC_KESTREL_QUEUED_CONNECTIONS="kestrel.queued_connections";ETA.METRIC_KESTREL_QUEUED_REQUESTS="kestrel.queued_requests";ETA.METRIC_KESTREL_REJECTED_CONNECTIONS="kestrel.rejected_connections";ETA.METRIC_KESTREL_TLS_HANDSHAKE_DURATION="kestrel.tls_handshake.duration";ETA.METRIC_KESTREL_UPGRADED_CONNECTIONS="kestrel.upgraded_connections";ETA.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS="signalr.server.active_connections";ETA.METRIC_SIGNALR_SERVER_CONNECTION_DURATION="signalr.server.connection.duration"});var ITA=R((t1)=>{var o2B=t1&&t1.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),vj=t1&&t1.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))o2B(Q,A,B)};Object.defineProperty(t1,"__esModule",{value:!0});vj(kjA(),t1);vj(GTA(),t1);vj(UTA(),t1);vj(VTA(),t1)});var NTA=R((HTA)=>{Object.defineProperty(HTA,"__esModule",{value:!0});HTA.SDK_INFO=void 0;var t2B=gc(),PN=ITA();HTA.SDK_INFO={[PN.SEMRESATTRS_TELEMETRY_SDK_NAME]:"opentelemetry",[PN.SEMRESATTRS_PROCESS_RUNTIME_NAME]:"node",[PN.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE]:PN.TELEMETRYSDKLANGUAGEVALUES_NODEJS,[PN.SEMRESATTRS_TELEMETRY_SDK_VERSION]:t2B.VERSION}});var MTA=R((LTA)=>{Object.defineProperty(LTA,"__esModule",{value:!0});LTA.unrefTimer=void 0;function e2B(A){A.unref()}LTA.unrefTimer=e2B});var RTA=R((e1)=>{Object.defineProperty(e1,"__esModule",{value:!0});e1.unrefTimer=e1.SDK_INFO=e1.otperformance=e1.RandomIdGenerator=e1.hexToBase64=e1._globalThis=e1.getEnv=e1.getEnvWithoutDefaults=void 0;var zTA=$zA();Object.defineProperty(e1,"getEnvWithoutDefaults",{enumerable:!0,get:function(){return zTA.getEnvWithoutDefaults}});Object.defineProperty(e1,"getEnv",{enumerable:!0,get:function(){return zTA.getEnv}});var A3B=KzA();Object.defineProperty(e1,"_globalThis",{enumerable:!0,get:function(){return A3B._globalThis}});var Q3B=LzA();Object.defineProperty(e1,"hexToBase64",{enumerable:!0,get:function(){return Q3B.hexToBase64}});var B3B=jzA();Object.defineProperty(e1,"RandomIdGenerator",{enumerable:!0,get:function(){return B3B.RandomIdGenerator}});var Y3B=TzA();Object.defineProperty(e1,"otperformance",{enumerable:!0,get:function(){return Y3B.otperformance}});var J3B=NTA();Object.defineProperty(e1,"SDK_INFO",{enumerable:!0,get:function(){return J3B.SDK_INFO}});var C3B=MTA();Object.defineProperty(e1,"unrefTimer",{enumerable:!0,get:function(){return C3B.unrefTimer}})});var xc=R((AX)=>{Object.defineProperty(AX,"__esModule",{value:!0});AX.unrefTimer=AX.otperformance=AX.hexToBase64=AX.getEnvWithoutDefaults=AX.getEnv=AX._globalThis=AX.SDK_INFO=AX.RandomIdGenerator=void 0;var YF=RTA();Object.defineProperty(AX,"RandomIdGenerator",{enumerable:!0,get:function(){return YF.RandomIdGenerator}});Object.defineProperty(AX,"SDK_INFO",{enumerable:!0,get:function(){return YF.SDK_INFO}});Object.defineProperty(AX,"_globalThis",{enumerable:!0,get:function(){return YF._globalThis}});Object.defineProperty(AX,"getEnv",{enumerable:!0,get:function(){return YF.getEnv}});Object.defineProperty(AX,"getEnvWithoutDefaults",{enumerable:!0,get:function(){return YF.getEnvWithoutDefaults}});Object.defineProperty(AX,"hexToBase64",{enumerable:!0,get:function(){return YF.hexToBase64}});Object.defineProperty(AX,"otperformance",{enumerable:!0,get:function(){return YF.otperformance}});Object.defineProperty(AX,"unrefTimer",{enumerable:!0,get:function(){return YF.unrefTimer}})});var STA=R((PTA)=>{Object.defineProperty(PTA,"__esModule",{value:!0});PTA.addHrTimes=PTA.isTimeInput=PTA.isTimeInputHrTime=PTA.hrTimeToMicroseconds=PTA.hrTimeToMilliseconds=PTA.hrTimeToNanoseconds=PTA.hrTimeToTimeStamp=PTA.hrTimeDuration=PTA.timeInputToHrTime=PTA.hrTime=PTA.getTimeOrigin=PTA.millisToHrTime=void 0;var fc=xc(),wTA=9,F3B=6,W3B=Math.pow(10,F3B),yj=Math.pow(10,wTA);function TN(A){let Q=A/1000,B=Math.trunc(Q),Y=Math.round(A%1000*W3B);return[B,Y]}PTA.millisToHrTime=TN;function bc(){let A=fc.otperformance.timeOrigin;if(typeof A!=="number"){let Q=fc.otperformance;A=Q.timing&&Q.timing.fetchStart}return A}PTA.getTimeOrigin=bc;function jTA(A){let Q=TN(bc()),B=TN(typeof A==="number"?A:fc.otperformance.now());return OTA(Q,B)}PTA.hrTime=jTA;function Z3B(A){if(mc(A))return A;else if(typeof A==="number")if(A=yj)B[1]-=yj,B[0]+=1;return B}PTA.addHrTimes=OTA});var _TA=R((kTA)=>{Object.defineProperty(kTA,"__esModule",{value:!0});kTA.ExportResultCode=void 0;var P3B;(function(A){A[A.SUCCESS=0]="SUCCESS",A[A.FAILED=1]="FAILED"})(P3B=kTA.ExportResultCode||(kTA.ExportResultCode={}))});var xTA=R((gTA)=>{Object.defineProperty(gTA,"__esModule",{value:!0});gTA.CompositePropagator=void 0;var vTA=yA();class yTA{constructor(A={}){var Q;this._propagators=(Q=A.propagators)!==null&&Q!==void 0?Q:[],this._fields=Array.from(new Set(this._propagators.map((B)=>typeof B.fields==="function"?B.fields():[]).reduce((B,Y)=>B.concat(Y),[])))}inject(A,Q,B){for(let Y of this._propagators)try{Y.inject(A,Q,B)}catch(J){vTA.diag.warn(`Failed to inject with ${Y.constructor.name}. Err: ${J.message}`)}}extract(A,Q,B){return this._propagators.reduce((Y,J)=>{try{return J.extract(Y,Q,B)}catch(C){vTA.diag.warn(`Failed to extract with ${J.constructor.name}. Err: ${C.message}`)}return Y},A)}fields(){return this._fields.slice()}}gTA.CompositePropagator=yTA});var mTA=R((fTA)=>{Object.defineProperty(fTA,"__esModule",{value:!0});fTA.validateValue=fTA.validateKey=void 0;var dc="[_0-9a-z-*/]",T3B=`[a-z]${dc}{0,255}`,S3B=`[a-z0-9]${dc}{0,240}@[a-z]${dc}{0,13}`,k3B=new RegExp(`^(?:${T3B}|${S3B})$`),_3B=/^[ -~]{0,255}[!-~]$/,v3B=/,|=/;function y3B(A){return k3B.test(A)}fTA.validateKey=y3B;function g3B(A){return _3B.test(A)&&!v3B.test(A)}fTA.validateValue=g3B});var lc=R((pTA)=>{Object.defineProperty(pTA,"__esModule",{value:!0});pTA.TraceState=void 0;var uTA=mTA(),dTA=32,x3B=512,cTA=",",lTA="=";class cc{constructor(A){if(this._internalState=new Map,A)this._parse(A)}set(A,Q){let B=this._clone();if(B._internalState.has(A))B._internalState.delete(A);return B._internalState.set(A,Q),B}unset(A){let Q=this._clone();return Q._internalState.delete(A),Q}get(A){return this._internalState.get(A)}serialize(){return this._keys().reduce((A,Q)=>{return A.push(Q+lTA+this.get(Q)),A},[]).join(cTA)}_parse(A){if(A.length>x3B)return;if(this._internalState=A.split(cTA).reverse().reduce((Q,B)=>{let Y=B.trim(),J=Y.indexOf(lTA);if(J!==-1){let C=Y.slice(0,J),X=Y.slice(J+1,B.length);if((0,uTA.validateKey)(C)&&(0,uTA.validateValue)(X))Q.set(C,X)}return Q},new Map),this._internalState.size>dTA)this._internalState=new Map(Array.from(this._internalState.entries()).reverse().slice(0,dTA))}_keys(){return Array.from(this._internalState.keys()).reverse()}_clone(){let A=new cc;return A._internalState=new Map(this._internalState),A}}pTA.TraceState=cc});var oTA=R((rTA)=>{Object.defineProperty(rTA,"__esModule",{value:!0});rTA.W3CTraceContextPropagator=rTA.parseTraceParent=rTA.TRACE_STATE_HEADER=rTA.TRACE_PARENT_HEADER=void 0;var gj=yA(),f3B=ON(),b3B=lc();rTA.TRACE_PARENT_HEADER="traceparent";rTA.TRACE_STATE_HEADER="tracestate";var m3B="00",u3B="(?!ff)[\\da-f]{2}",d3B="(?![0]{32})[\\da-f]{32}",c3B="(?![0]{16})[\\da-f]{16}",l3B="[\\da-f]{2}",p3B=new RegExp(`^\\s?(${u3B})-(${d3B})-(${c3B})-(${l3B})(-.*)?\\s?$`);function nTA(A){let Q=p3B.exec(A);if(!Q)return null;if(Q[1]==="00"&&Q[5])return null;return{traceId:Q[2],spanId:Q[3],traceFlags:parseInt(Q[4],16)}}rTA.parseTraceParent=nTA;class sTA{inject(A,Q,B){let Y=gj.trace.getSpanContext(A);if(!Y||(0,f3B.isTracingSuppressed)(A)||!(0,gj.isSpanContextValid)(Y))return;let J=`${m3B}-${Y.traceId}-${Y.spanId}-0${Number(Y.traceFlags||gj.TraceFlags.NONE).toString(16)}`;if(B.set(Q,rTA.TRACE_PARENT_HEADER,J),Y.traceState)B.set(Q,rTA.TRACE_STATE_HEADER,Y.traceState.serialize())}extract(A,Q,B){let Y=B.get(Q,rTA.TRACE_PARENT_HEADER);if(!Y)return A;let J=Array.isArray(Y)?Y[0]:Y;if(typeof J!=="string")return A;let C=nTA(J);if(!C)return A;C.isRemote=!0;let X=B.get(Q,rTA.TRACE_STATE_HEADER);if(X){let G=Array.isArray(X)?X.join(","):X;C.traceState=new b3B.TraceState(typeof G==="string"?G:void 0)}return gj.trace.setSpanContext(A,C)}fields(){return[rTA.TRACE_PARENT_HEADER,rTA.TRACE_STATE_HEADER]}}rTA.W3CTraceContextPropagator=sTA});var QSA=R((eTA)=>{Object.defineProperty(eTA,"__esModule",{value:!0});eTA.getRPCMetadata=eTA.deleteRPCMetadata=eTA.setRPCMetadata=eTA.RPCType=void 0;var n3B=yA(),pc=(0,n3B.createContextKey)("OpenTelemetry SDK Context Key RPC_METADATA"),s3B;(function(A){A.HTTP="http"})(s3B=eTA.RPCType||(eTA.RPCType={}));function r3B(A,Q){return A.setValue(pc,Q)}eTA.setRPCMetadata=r3B;function a3B(A){return A.deleteValue(pc)}eTA.deleteRPCMetadata=a3B;function o3B(A){return A.getValue(pc)}eTA.getRPCMetadata=o3B});var ic=R((YSA)=>{Object.defineProperty(YSA,"__esModule",{value:!0});YSA.AlwaysOffSampler=void 0;var ARB=yA();class BSA{shouldSample(){return{decision:ARB.SamplingDecision.NOT_RECORD}}toString(){return"AlwaysOffSampler"}}YSA.AlwaysOffSampler=BSA});var nc=R((XSA)=>{Object.defineProperty(XSA,"__esModule",{value:!0});XSA.AlwaysOnSampler=void 0;var QRB=yA();class CSA{shouldSample(){return{decision:QRB.SamplingDecision.RECORD_AND_SAMPLED}}toString(){return"AlwaysOnSampler"}}XSA.AlwaysOnSampler=CSA});var USA=R((ZSA)=>{Object.defineProperty(ZSA,"__esModule",{value:!0});ZSA.ParentBasedSampler=void 0;var fj=yA(),BRB=Tc(),FSA=ic(),sc=nc();class WSA{constructor(A){var Q,B,Y,J;if(this._root=A.root,!this._root)(0,BRB.globalErrorHandler)(Error("ParentBasedSampler must have a root sampler configured")),this._root=new sc.AlwaysOnSampler;this._remoteParentSampled=(Q=A.remoteParentSampled)!==null&&Q!==void 0?Q:new sc.AlwaysOnSampler,this._remoteParentNotSampled=(B=A.remoteParentNotSampled)!==null&&B!==void 0?B:new FSA.AlwaysOffSampler,this._localParentSampled=(Y=A.localParentSampled)!==null&&Y!==void 0?Y:new sc.AlwaysOnSampler,this._localParentNotSampled=(J=A.localParentNotSampled)!==null&&J!==void 0?J:new FSA.AlwaysOffSampler}shouldSample(A,Q,B,Y,J,C){let X=fj.trace.getSpanContext(A);if(!X||!(0,fj.isSpanContextValid)(X))return this._root.shouldSample(A,Q,B,Y,J,C);if(X.isRemote){if(X.traceFlags&fj.TraceFlags.SAMPLED)return this._remoteParentSampled.shouldSample(A,Q,B,Y,J,C);return this._remoteParentNotSampled.shouldSample(A,Q,B,Y,J,C)}if(X.traceFlags&fj.TraceFlags.SAMPLED)return this._localParentSampled.shouldSample(A,Q,B,Y,J,C);return this._localParentNotSampled.shouldSample(A,Q,B,Y,J,C)}toString(){return`ParentBased{root=${this._root.toString()}, remoteParentSampled=${this._remoteParentSampled.toString()}, remoteParentNotSampled=${this._remoteParentNotSampled.toString()}, localParentSampled=${this._localParentSampled.toString()}, localParentNotSampled=${this._localParentNotSampled.toString()}}`}}ZSA.ParentBasedSampler=WSA});var ISA=R((KSA)=>{Object.defineProperty(KSA,"__esModule",{value:!0});KSA.TraceIdRatioBasedSampler=void 0;var rc=yA();class ESA{constructor(A=0){this._ratio=A,this._ratio=this._normalize(A),this._upperBound=Math.floor(this._ratio*4294967295)}shouldSample(A,Q){return{decision:(0,rc.isValidTraceId)(Q)&&this._accumulate(Q)=1?1:A<=0?0:A}_accumulate(A){let Q=0;for(let B=0;B>>0}return Q}}KSA.TraceIdRatioBasedSampler=ESA});var zSA=R((qSA)=>{Object.defineProperty(qSA,"__esModule",{value:!0});qSA.isPlainObject=void 0;var YRB="[object Object]",JRB="[object Null]",CRB="[object Undefined]",XRB=Function.prototype,HSA=XRB.toString,GRB=HSA.call(Object),FRB=WRB(Object.getPrototypeOf,Object),DSA=Object.prototype,NSA=DSA.hasOwnProperty,uZ=Symbol?Symbol.toStringTag:void 0,LSA=DSA.toString;function WRB(A,Q){return function(B){return A(Q(B))}}function ZRB(A){if(!$RB(A)||URB(A)!==YRB)return!1;let Q=FRB(A);if(Q===null)return!0;let B=NSA.call(Q,"constructor")&&Q.constructor;return typeof B=="function"&&B instanceof B&&HSA.call(B)===GRB}qSA.isPlainObject=ZRB;function $RB(A){return A!=null&&typeof A=="object"}function URB(A){if(A==null)return A===void 0?CRB:JRB;return uZ&&uZ in Object(A)?ERB(A):KRB(A)}function ERB(A){let Q=NSA.call(A,uZ),B=A[uZ],Y=!1;try{A[uZ]=void 0,Y=!0}catch(C){}let J=LSA.call(A);if(Y)if(Q)A[uZ]=B;else delete A[uZ];return J}function KRB(A){return LSA.call(A)}});var SSA=R((PSA)=>{Object.defineProperty(PSA,"__esModule",{value:!0});PSA.merge=void 0;var RSA=zSA(),VRB=20;function IRB(...A){let Q=A.shift(),B=new WeakMap;while(A.length>0)Q=jSA(Q,A.shift(),0,B);return Q}PSA.merge=IRB;function ac(A){if(mj(A))return A.slice();return A}function jSA(A,Q,B=0,Y){let J;if(B>VRB)return;if(B++,bj(A)||bj(Q)||OSA(Q))J=ac(Q);else if(mj(A)){if(J=A.slice(),mj(Q))for(let C=0,X=Q.length;C"u")delete J[F];else J[F]=W;else{let Z=J[F],U=W;if(wSA(A,F,Y)||wSA(Q,F,Y))delete J[F];else{if(SN(Z)&&SN(U)){let $=Y.get(Z)||[],E=Y.get(U)||[];$.push({obj:A,key:F}),E.push({obj:Q,key:F}),Y.set(Z,$),Y.set(U,E)}J[F]=jSA(J[F],W,B,Y)}}}}else J=Q;return J}function wSA(A,Q,B){let Y=B.get(A[Q])||[];for(let J=0,C=Y.length;J"u"||A instanceof Date||A instanceof RegExp||A===null}function HRB(A,Q){if(!(0,RSA.isPlainObject)(A)||!(0,RSA.isPlainObject)(Q))return!1;return!0}});var vSA=R((kSA)=>{Object.defineProperty(kSA,"__esModule",{value:!0});kSA.callWithTimeout=kSA.TimeoutError=void 0;class uj extends Error{constructor(A){super(A);Object.setPrototypeOf(this,uj.prototype)}}kSA.TimeoutError=uj;function DRB(A,Q){let B,Y=new Promise(function(C,X){B=setTimeout(function(){X(new uj("Operation timed out."))},Q)});return Promise.race([A,Y]).then((J)=>{return clearTimeout(B),J},(J)=>{throw clearTimeout(B),J})}kSA.callWithTimeout=DRB});var xSA=R((gSA)=>{Object.defineProperty(gSA,"__esModule",{value:!0});gSA.isUrlIgnored=gSA.urlMatches=void 0;function ySA(A,Q){if(typeof Q==="string")return A===Q;else return!!A.match(Q)}gSA.urlMatches=ySA;function LRB(A,Q){if(!Q)return!1;for(let B of Q)if(ySA(A,B))return!0;return!1}gSA.isUrlIgnored=LRB});var mSA=R((fSA)=>{Object.defineProperty(fSA,"__esModule",{value:!0});fSA.isWrapped=void 0;function MRB(A){return typeof A==="function"&&typeof A.__original==="function"&&typeof A.__unwrap==="function"&&A.__wrapped===!0}fSA.isWrapped=MRB});var lSA=R((dSA)=>{Object.defineProperty(dSA,"__esModule",{value:!0});dSA.Deferred=void 0;class uSA{constructor(){this._promise=new Promise((A,Q)=>{this._resolve=A,this._reject=Q})}get promise(){return this._promise}resolve(A){this._resolve(A)}reject(A){this._reject(A)}}dSA.Deferred=uSA});var sSA=R((iSA)=>{Object.defineProperty(iSA,"__esModule",{value:!0});iSA.BindOnceFuture=void 0;var zRB=lSA();class pSA{constructor(A,Q){this._callback=A,this._that=Q,this._isCalled=!1,this._deferred=new zRB.Deferred}get isCalled(){return this._isCalled}get promise(){return this._deferred.promise}call(...A){if(!this._isCalled){this._isCalled=!0;try{Promise.resolve(this._callback.call(this._that,...A)).then((Q)=>this._deferred.resolve(Q),(Q)=>this._deferred.reject(Q))}catch(Q){this._deferred.reject(Q)}}return this._deferred.promise}}iSA.BindOnceFuture=pSA});var tSA=R((aSA)=>{Object.defineProperty(aSA,"__esModule",{value:!0});aSA._export=void 0;var rSA=yA(),RRB=ON();function wRB(A,Q){return new Promise((B)=>{rSA.context.with((0,RRB.suppressTracing)(rSA.context.active()),()=>{A.export(Q,(Y)=>{B(Y)})})})}aSA._export=wRB});var MB=R((sA)=>{Object.defineProperty(sA,"__esModule",{value:!0});sA.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=sA.DEFAULT_ATTRIBUTE_COUNT_LIMIT=sA.TraceState=sA.unsuppressTracing=sA.suppressTracing=sA.isTracingSuppressed=sA.TraceIdRatioBasedSampler=sA.ParentBasedSampler=sA.AlwaysOnSampler=sA.AlwaysOffSampler=sA.setRPCMetadata=sA.getRPCMetadata=sA.deleteRPCMetadata=sA.RPCType=sA.parseTraceParent=sA.W3CTraceContextPropagator=sA.TRACE_STATE_HEADER=sA.TRACE_PARENT_HEADER=sA.CompositePropagator=sA.unrefTimer=sA.otperformance=sA.hexToBase64=sA.getEnvWithoutDefaults=sA.getEnv=sA._globalThis=sA.SDK_INFO=sA.RandomIdGenerator=sA.baggageUtils=sA.ExportResultCode=sA.hexToBinary=sA.timeInputToHrTime=sA.millisToHrTime=sA.isTimeInputHrTime=sA.isTimeInput=sA.hrTimeToTimeStamp=sA.hrTimeToNanoseconds=sA.hrTimeToMilliseconds=sA.hrTimeToMicroseconds=sA.hrTimeDuration=sA.hrTime=sA.getTimeOrigin=sA.addHrTimes=sA.loggingErrorHandler=sA.setGlobalErrorHandler=sA.globalErrorHandler=sA.sanitizeAttributes=sA.isAttributeValue=sA.isAttributeKey=sA.AnchoredClock=sA.W3CBaggagePropagator=void 0;sA.internal=sA.VERSION=sA.BindOnceFuture=sA.isWrapped=sA.urlMatches=sA.isUrlIgnored=sA.callWithTimeout=sA.TimeoutError=sA.TracesSamplerValues=sA.merge=sA.parseEnvironment=sA.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=sA.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=sA.DEFAULT_ENVIRONMENT=void 0;var jRB=mMA();Object.defineProperty(sA,"W3CBaggagePropagator",{enumerable:!0,get:function(){return jRB.W3CBaggagePropagator}});var ORB=lMA();Object.defineProperty(sA,"AnchoredClock",{enumerable:!0,get:function(){return ORB.AnchoredClock}});var oc=oMA();Object.defineProperty(sA,"isAttributeKey",{enumerable:!0,get:function(){return oc.isAttributeKey}});Object.defineProperty(sA,"isAttributeValue",{enumerable:!0,get:function(){return oc.isAttributeValue}});Object.defineProperty(sA,"sanitizeAttributes",{enumerable:!0,get:function(){return oc.sanitizeAttributes}});var eSA=Tc();Object.defineProperty(sA,"globalErrorHandler",{enumerable:!0,get:function(){return eSA.globalErrorHandler}});Object.defineProperty(sA,"setGlobalErrorHandler",{enumerable:!0,get:function(){return eSA.setGlobalErrorHandler}});var PRB=Pc();Object.defineProperty(sA,"loggingErrorHandler",{enumerable:!0,get:function(){return PRB.loggingErrorHandler}});var O5=STA();Object.defineProperty(sA,"addHrTimes",{enumerable:!0,get:function(){return O5.addHrTimes}});Object.defineProperty(sA,"getTimeOrigin",{enumerable:!0,get:function(){return O5.getTimeOrigin}});Object.defineProperty(sA,"hrTime",{enumerable:!0,get:function(){return O5.hrTime}});Object.defineProperty(sA,"hrTimeDuration",{enumerable:!0,get:function(){return O5.hrTimeDuration}});Object.defineProperty(sA,"hrTimeToMicroseconds",{enumerable:!0,get:function(){return O5.hrTimeToMicroseconds}});Object.defineProperty(sA,"hrTimeToMilliseconds",{enumerable:!0,get:function(){return O5.hrTimeToMilliseconds}});Object.defineProperty(sA,"hrTimeToNanoseconds",{enumerable:!0,get:function(){return O5.hrTimeToNanoseconds}});Object.defineProperty(sA,"hrTimeToTimeStamp",{enumerable:!0,get:function(){return O5.hrTimeToTimeStamp}});Object.defineProperty(sA,"isTimeInput",{enumerable:!0,get:function(){return O5.isTimeInput}});Object.defineProperty(sA,"isTimeInputHrTime",{enumerable:!0,get:function(){return O5.isTimeInputHrTime}});Object.defineProperty(sA,"millisToHrTime",{enumerable:!0,get:function(){return O5.millisToHrTime}});Object.defineProperty(sA,"timeInputToHrTime",{enumerable:!0,get:function(){return O5.timeInputToHrTime}});var TRB=yc();Object.defineProperty(sA,"hexToBinary",{enumerable:!0,get:function(){return TRB.hexToBinary}});var SRB=_TA();Object.defineProperty(sA,"ExportResultCode",{enumerable:!0,get:function(){return SRB.ExportResultCode}});var dj=wc();sA.baggageUtils={getKeyPairs:dj.getKeyPairs,serializeKeyPairs:dj.serializeKeyPairs,parseKeyPairsIntoRecord:dj.parseKeyPairsIntoRecord,parsePairKeyValue:dj.parsePairKeyValue};var JF=xc();Object.defineProperty(sA,"RandomIdGenerator",{enumerable:!0,get:function(){return JF.RandomIdGenerator}});Object.defineProperty(sA,"SDK_INFO",{enumerable:!0,get:function(){return JF.SDK_INFO}});Object.defineProperty(sA,"_globalThis",{enumerable:!0,get:function(){return JF._globalThis}});Object.defineProperty(sA,"getEnv",{enumerable:!0,get:function(){return JF.getEnv}});Object.defineProperty(sA,"getEnvWithoutDefaults",{enumerable:!0,get:function(){return JF.getEnvWithoutDefaults}});Object.defineProperty(sA,"hexToBase64",{enumerable:!0,get:function(){return JF.hexToBase64}});Object.defineProperty(sA,"otperformance",{enumerable:!0,get:function(){return JF.otperformance}});Object.defineProperty(sA,"unrefTimer",{enumerable:!0,get:function(){return JF.unrefTimer}});var kRB=xTA();Object.defineProperty(sA,"CompositePropagator",{enumerable:!0,get:function(){return kRB.CompositePropagator}});var cj=oTA();Object.defineProperty(sA,"TRACE_PARENT_HEADER",{enumerable:!0,get:function(){return cj.TRACE_PARENT_HEADER}});Object.defineProperty(sA,"TRACE_STATE_HEADER",{enumerable:!0,get:function(){return cj.TRACE_STATE_HEADER}});Object.defineProperty(sA,"W3CTraceContextPropagator",{enumerable:!0,get:function(){return cj.W3CTraceContextPropagator}});Object.defineProperty(sA,"parseTraceParent",{enumerable:!0,get:function(){return cj.parseTraceParent}});var lj=QSA();Object.defineProperty(sA,"RPCType",{enumerable:!0,get:function(){return lj.RPCType}});Object.defineProperty(sA,"deleteRPCMetadata",{enumerable:!0,get:function(){return lj.deleteRPCMetadata}});Object.defineProperty(sA,"getRPCMetadata",{enumerable:!0,get:function(){return lj.getRPCMetadata}});Object.defineProperty(sA,"setRPCMetadata",{enumerable:!0,get:function(){return lj.setRPCMetadata}});var _RB=ic();Object.defineProperty(sA,"AlwaysOffSampler",{enumerable:!0,get:function(){return _RB.AlwaysOffSampler}});var vRB=nc();Object.defineProperty(sA,"AlwaysOnSampler",{enumerable:!0,get:function(){return vRB.AlwaysOnSampler}});var yRB=USA();Object.defineProperty(sA,"ParentBasedSampler",{enumerable:!0,get:function(){return yRB.ParentBasedSampler}});var gRB=ISA();Object.defineProperty(sA,"TraceIdRatioBasedSampler",{enumerable:!0,get:function(){return gRB.TraceIdRatioBasedSampler}});var tc=ON();Object.defineProperty(sA,"isTracingSuppressed",{enumerable:!0,get:function(){return tc.isTracingSuppressed}});Object.defineProperty(sA,"suppressTracing",{enumerable:!0,get:function(){return tc.suppressTracing}});Object.defineProperty(sA,"unsuppressTracing",{enumerable:!0,get:function(){return tc.unsuppressTracing}});var hRB=lc();Object.defineProperty(sA,"TraceState",{enumerable:!0,get:function(){return hRB.TraceState}});var cE=_c();Object.defineProperty(sA,"DEFAULT_ATTRIBUTE_COUNT_LIMIT",{enumerable:!0,get:function(){return cE.DEFAULT_ATTRIBUTE_COUNT_LIMIT}});Object.defineProperty(sA,"DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT",{enumerable:!0,get:function(){return cE.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT}});Object.defineProperty(sA,"DEFAULT_ENVIRONMENT",{enumerable:!0,get:function(){return cE.DEFAULT_ENVIRONMENT}});Object.defineProperty(sA,"DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT",{enumerable:!0,get:function(){return cE.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT}});Object.defineProperty(sA,"DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT",{enumerable:!0,get:function(){return cE.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT}});Object.defineProperty(sA,"parseEnvironment",{enumerable:!0,get:function(){return cE.parseEnvironment}});var xRB=SSA();Object.defineProperty(sA,"merge",{enumerable:!0,get:function(){return xRB.merge}});var fRB=kc();Object.defineProperty(sA,"TracesSamplerValues",{enumerable:!0,get:function(){return fRB.TracesSamplerValues}});var AkA=vSA();Object.defineProperty(sA,"TimeoutError",{enumerable:!0,get:function(){return AkA.TimeoutError}});Object.defineProperty(sA,"callWithTimeout",{enumerable:!0,get:function(){return AkA.callWithTimeout}});var QkA=xSA();Object.defineProperty(sA,"isUrlIgnored",{enumerable:!0,get:function(){return QkA.isUrlIgnored}});Object.defineProperty(sA,"urlMatches",{enumerable:!0,get:function(){return QkA.urlMatches}});var bRB=mSA();Object.defineProperty(sA,"isWrapped",{enumerable:!0,get:function(){return bRB.isWrapped}});var mRB=sSA();Object.defineProperty(sA,"BindOnceFuture",{enumerable:!0,get:function(){return mRB.BindOnceFuture}});var uRB=gc();Object.defineProperty(sA,"VERSION",{enumerable:!0,get:function(){return uRB.VERSION}});var dRB=tSA();sA.internal={_export:dRB._export}});var kN=R(($kY,YkA)=>{var pRB=Number.MAX_SAFE_INTEGER||9007199254740991,iRB=["major","premajor","minor","preminor","patch","prepatch","prerelease"];YkA.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:16,MAX_SAFE_BUILD_LENGTH:250,MAX_SAFE_INTEGER:pRB,RELEASE_TYPES:iRB,SEMVER_SPEC_VERSION:"2.0.0",FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var _N=R((UkY,JkA)=>{var nRB=typeof process==="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...A)=>console.error("SEMVER",...A):()=>{};JkA.exports=nRB});var lE=R((QX,CkA)=>{var{MAX_SAFE_COMPONENT_LENGTH:ec,MAX_SAFE_BUILD_LENGTH:sRB,MAX_LENGTH:rRB}=kN(),aRB=_N();QX=CkA.exports={};var oRB=QX.re=[],tRB=QX.safeRe=[],lA=QX.src=[],eRB=QX.safeSrc=[],pA=QX.t={},AwB=0,Al="[a-zA-Z0-9-]",QwB=[["\\s",1],["\\d",rRB],[Al,sRB]],BwB=(A)=>{for(let[Q,B]of QwB)A=A.split(`${Q}*`).join(`${Q}{0,${B}}`).split(`${Q}+`).join(`${Q}{1,${B}}`);return A},dQ=(A,Q,B)=>{let Y=BwB(Q),J=AwB++;aRB(A,J,Q),pA[A]=J,lA[J]=Q,eRB[J]=Y,oRB[J]=new RegExp(Q,B?"g":void 0),tRB[J]=new RegExp(Y,B?"g":void 0)};dQ("NUMERICIDENTIFIER","0|[1-9]\\d*");dQ("NUMERICIDENTIFIERLOOSE","\\d+");dQ("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${Al}*`);dQ("MAINVERSION",`(${lA[pA.NUMERICIDENTIFIER]})\\.(${lA[pA.NUMERICIDENTIFIER]})\\.(${lA[pA.NUMERICIDENTIFIER]})`);dQ("MAINVERSIONLOOSE",`(${lA[pA.NUMERICIDENTIFIERLOOSE]})\\.(${lA[pA.NUMERICIDENTIFIERLOOSE]})\\.(${lA[pA.NUMERICIDENTIFIERLOOSE]})`);dQ("PRERELEASEIDENTIFIER",`(?:${lA[pA.NUMERICIDENTIFIER]}|${lA[pA.NONNUMERICIDENTIFIER]})`);dQ("PRERELEASEIDENTIFIERLOOSE",`(?:${lA[pA.NUMERICIDENTIFIERLOOSE]}|${lA[pA.NONNUMERICIDENTIFIER]})`);dQ("PRERELEASE",`(?:-(${lA[pA.PRERELEASEIDENTIFIER]}(?:\\.${lA[pA.PRERELEASEIDENTIFIER]})*))`);dQ("PRERELEASELOOSE",`(?:-?(${lA[pA.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${lA[pA.PRERELEASEIDENTIFIERLOOSE]})*))`);dQ("BUILDIDENTIFIER",`${Al}+`);dQ("BUILD",`(?:\\+(${lA[pA.BUILDIDENTIFIER]}(?:\\.${lA[pA.BUILDIDENTIFIER]})*))`);dQ("FULLPLAIN",`v?${lA[pA.MAINVERSION]}${lA[pA.PRERELEASE]}?${lA[pA.BUILD]}?`);dQ("FULL",`^${lA[pA.FULLPLAIN]}$`);dQ("LOOSEPLAIN",`[v=\\s]*${lA[pA.MAINVERSIONLOOSE]}${lA[pA.PRERELEASELOOSE]}?${lA[pA.BUILD]}?`);dQ("LOOSE",`^${lA[pA.LOOSEPLAIN]}$`);dQ("GTLT","((?:<|>)?=?)");dQ("XRANGEIDENTIFIERLOOSE",`${lA[pA.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);dQ("XRANGEIDENTIFIER",`${lA[pA.NUMERICIDENTIFIER]}|x|X|\\*`);dQ("XRANGEPLAIN",`[v=\\s]*(${lA[pA.XRANGEIDENTIFIER]})(?:\\.(${lA[pA.XRANGEIDENTIFIER]})(?:\\.(${lA[pA.XRANGEIDENTIFIER]})(?:${lA[pA.PRERELEASE]})?${lA[pA.BUILD]}?)?)?`);dQ("XRANGEPLAINLOOSE",`[v=\\s]*(${lA[pA.XRANGEIDENTIFIERLOOSE]})(?:\\.(${lA[pA.XRANGEIDENTIFIERLOOSE]})(?:\\.(${lA[pA.XRANGEIDENTIFIERLOOSE]})(?:${lA[pA.PRERELEASELOOSE]})?${lA[pA.BUILD]}?)?)?`);dQ("XRANGE",`^${lA[pA.GTLT]}\\s*${lA[pA.XRANGEPLAIN]}$`);dQ("XRANGELOOSE",`^${lA[pA.GTLT]}\\s*${lA[pA.XRANGEPLAINLOOSE]}$`);dQ("COERCEPLAIN",`(^|[^\\d])(\\d{1,${ec}})(?:\\.(\\d{1,${ec}}))?(?:\\.(\\d{1,${ec}}))?`);dQ("COERCE",`${lA[pA.COERCEPLAIN]}(?:$|[^\\d])`);dQ("COERCEFULL",lA[pA.COERCEPLAIN]+`(?:${lA[pA.PRERELEASE]})?(?:${lA[pA.BUILD]})?(?:$|[^\\d])`);dQ("COERCERTL",lA[pA.COERCE],!0);dQ("COERCERTLFULL",lA[pA.COERCEFULL],!0);dQ("LONETILDE","(?:~>?)");dQ("TILDETRIM",`(\\s*)${lA[pA.LONETILDE]}\\s+`,!0);QX.tildeTrimReplace="$1~";dQ("TILDE",`^${lA[pA.LONETILDE]}${lA[pA.XRANGEPLAIN]}$`);dQ("TILDELOOSE",`^${lA[pA.LONETILDE]}${lA[pA.XRANGEPLAINLOOSE]}$`);dQ("LONECARET","(?:\\^)");dQ("CARETTRIM",`(\\s*)${lA[pA.LONECARET]}\\s+`,!0);QX.caretTrimReplace="$1^";dQ("CARET",`^${lA[pA.LONECARET]}${lA[pA.XRANGEPLAIN]}$`);dQ("CARETLOOSE",`^${lA[pA.LONECARET]}${lA[pA.XRANGEPLAINLOOSE]}$`);dQ("COMPARATORLOOSE",`^${lA[pA.GTLT]}\\s*(${lA[pA.LOOSEPLAIN]})$|^$`);dQ("COMPARATOR",`^${lA[pA.GTLT]}\\s*(${lA[pA.FULLPLAIN]})$|^$`);dQ("COMPARATORTRIM",`(\\s*)${lA[pA.GTLT]}\\s*(${lA[pA.LOOSEPLAIN]}|${lA[pA.XRANGEPLAIN]})`,!0);QX.comparatorTrimReplace="$1$2$3";dQ("HYPHENRANGE",`^\\s*(${lA[pA.XRANGEPLAIN]})\\s+-\\s+(${lA[pA.XRANGEPLAIN]})\\s*$`);dQ("HYPHENRANGELOOSE",`^\\s*(${lA[pA.XRANGEPLAINLOOSE]})\\s+-\\s+(${lA[pA.XRANGEPLAINLOOSE]})\\s*$`);dQ("STAR","(<|>)?=?\\s*\\*");dQ("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");dQ("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var pj=R((EkY,XkA)=>{var YwB=Object.freeze({loose:!0}),JwB=Object.freeze({}),CwB=(A)=>{if(!A)return JwB;if(typeof A!=="object")return YwB;return A};XkA.exports=CwB});var Ql=R((KkY,WkA)=>{var GkA=/^[0-9]+$/,FkA=(A,Q)=>{let B=GkA.test(A),Y=GkA.test(Q);if(B&&Y)A=+A,Q=+Q;return A===Q?0:B&&!Y?-1:Y&&!B?1:AFkA(Q,A);WkA.exports={compareIdentifiers:FkA,rcompareIdentifiers:XwB}});var wJ=R((VkY,EkA)=>{var ij=_N(),{MAX_LENGTH:ZkA,MAX_SAFE_INTEGER:nj}=kN(),{safeRe:$kA,safeSrc:UkA,t:sj}=lE(),GwB=pj(),{compareIdentifiers:pE}=Ql();class rC{constructor(A,Q){if(Q=GwB(Q),A instanceof rC)if(A.loose===!!Q.loose&&A.includePrerelease===!!Q.includePrerelease)return A;else A=A.version;else if(typeof A!=="string")throw TypeError(`Invalid version. Must be a string. Got type "${typeof A}".`);if(A.length>ZkA)throw TypeError(`version is longer than ${ZkA} characters`);ij("SemVer",A,Q),this.options=Q,this.loose=!!Q.loose,this.includePrerelease=!!Q.includePrerelease;let B=A.trim().match(Q.loose?$kA[sj.LOOSE]:$kA[sj.FULL]);if(!B)throw TypeError(`Invalid Version: ${A}`);if(this.raw=A,this.major=+B[1],this.minor=+B[2],this.patch=+B[3],this.major>nj||this.major<0)throw TypeError("Invalid major version");if(this.minor>nj||this.minor<0)throw TypeError("Invalid minor version");if(this.patch>nj||this.patch<0)throw TypeError("Invalid patch version");if(!B[4])this.prerelease=[];else this.prerelease=B[4].split(".").map((Y)=>{if(/^[0-9]+$/.test(Y)){let J=+Y;if(J>=0&&J=0)if(typeof this.prerelease[J]==="number")this.prerelease[J]++,J=-2;if(J===-1){if(Q===this.prerelease.join(".")&&B===!1)throw Error("invalid increment argument: identifier already exists");this.prerelease.push(Y)}}if(Q){let J=[Q,Y];if(B===!1)J=[Q];if(pE(this.prerelease[0],Q)===0){if(isNaN(this.prerelease[1]))this.prerelease=J}else this.prerelease=J}break}default:throw Error(`invalid increment argument: ${A}`)}if(this.raw=this.format(),this.build.length)this.raw+=`+${this.build.join(".")}`;return this}}EkA.exports=rC});var dZ=R((IkY,VkA)=>{var KkA=wJ(),FwB=(A,Q,B=!1)=>{if(A instanceof KkA)return A;try{return new KkA(A,Q)}catch(Y){if(!B)return null;throw Y}};VkA.exports=FwB});var HkA=R((HkY,IkA)=>{var WwB=dZ(),ZwB=(A,Q)=>{let B=WwB(A,Q);return B?B.version:null};IkA.exports=ZwB});var NkA=R((DkY,DkA)=>{var $wB=dZ(),UwB=(A,Q)=>{let B=$wB(A.trim().replace(/^[=v]+/,""),Q);return B?B.version:null};DkA.exports=UwB});var MkA=R((NkY,qkA)=>{var LkA=wJ(),EwB=(A,Q,B,Y,J)=>{if(typeof B==="string")J=Y,Y=B,B=void 0;try{return new LkA(A instanceof LkA?A.version:A,B).inc(Q,Y,J).version}catch(C){return null}};qkA.exports=EwB});var wkA=R((LkY,RkA)=>{var zkA=dZ(),KwB=(A,Q)=>{let B=zkA(A,null,!0),Y=zkA(Q,null,!0),J=B.compare(Y);if(J===0)return null;let C=J>0,X=C?B:Y,G=C?Y:B,F=!!X.prerelease.length;if(!!G.prerelease.length&&!F){if(!G.patch&&!G.minor)return"major";if(G.compareMain(X)===0){if(G.minor&&!G.patch)return"minor";return"patch"}}let Z=F?"pre":"";if(B.major!==Y.major)return Z+"major";if(B.minor!==Y.minor)return Z+"minor";if(B.patch!==Y.patch)return Z+"patch";return"prerelease"};RkA.exports=KwB});var OkA=R((qkY,jkA)=>{var VwB=wJ(),IwB=(A,Q)=>new VwB(A,Q).major;jkA.exports=IwB});var TkA=R((MkY,PkA)=>{var HwB=wJ(),DwB=(A,Q)=>new HwB(A,Q).minor;PkA.exports=DwB});var kkA=R((zkY,SkA)=>{var NwB=wJ(),LwB=(A,Q)=>new NwB(A,Q).patch;SkA.exports=LwB});var vkA=R((RkY,_kA)=>{var qwB=dZ(),MwB=(A,Q)=>{let B=qwB(A,Q);return B&&B.prerelease.length?B.prerelease:null};_kA.exports=MwB});var P5=R((wkY,gkA)=>{var ykA=wJ(),zwB=(A,Q,B)=>new ykA(A,B).compare(new ykA(Q,B));gkA.exports=zwB});var xkA=R((jkY,hkA)=>{var RwB=P5(),wwB=(A,Q,B)=>RwB(Q,A,B);hkA.exports=wwB});var bkA=R((OkY,fkA)=>{var jwB=P5(),OwB=(A,Q)=>jwB(A,Q,!0);fkA.exports=OwB});var rj=R((PkY,ukA)=>{var mkA=wJ(),PwB=(A,Q,B)=>{let Y=new mkA(A,B),J=new mkA(Q,B);return Y.compare(J)||Y.compareBuild(J)};ukA.exports=PwB});var ckA=R((TkY,dkA)=>{var TwB=rj(),SwB=(A,Q)=>A.sort((B,Y)=>TwB(B,Y,Q));dkA.exports=SwB});var pkA=R((SkY,lkA)=>{var kwB=rj(),_wB=(A,Q)=>A.sort((B,Y)=>kwB(Y,B,Q));lkA.exports=_wB});var vN=R((kkY,ikA)=>{var vwB=P5(),ywB=(A,Q,B)=>vwB(A,Q,B)>0;ikA.exports=ywB});var aj=R((_kY,nkA)=>{var gwB=P5(),hwB=(A,Q,B)=>gwB(A,Q,B)<0;nkA.exports=hwB});var Bl=R((vkY,skA)=>{var xwB=P5(),fwB=(A,Q,B)=>xwB(A,Q,B)===0;skA.exports=fwB});var Yl=R((ykY,rkA)=>{var bwB=P5(),mwB=(A,Q,B)=>bwB(A,Q,B)!==0;rkA.exports=mwB});var oj=R((gkY,akA)=>{var uwB=P5(),dwB=(A,Q,B)=>uwB(A,Q,B)>=0;akA.exports=dwB});var tj=R((hkY,okA)=>{var cwB=P5(),lwB=(A,Q,B)=>cwB(A,Q,B)<=0;okA.exports=lwB});var Jl=R((xkY,tkA)=>{var pwB=Bl(),iwB=Yl(),nwB=vN(),swB=oj(),rwB=aj(),awB=tj(),owB=(A,Q,B,Y)=>{switch(Q){case"===":if(typeof A==="object")A=A.version;if(typeof B==="object")B=B.version;return A===B;case"!==":if(typeof A==="object")A=A.version;if(typeof B==="object")B=B.version;return A!==B;case"":case"=":case"==":return pwB(A,B,Y);case"!=":return iwB(A,B,Y);case">":return nwB(A,B,Y);case">=":return swB(A,B,Y);case"<":return rwB(A,B,Y);case"<=":return awB(A,B,Y);default:throw TypeError(`Invalid operator: ${Q}`)}};tkA.exports=owB});var A_A=R((fkY,ekA)=>{var twB=wJ(),ewB=dZ(),{safeRe:ej,t:AO}=lE(),AjB=(A,Q)=>{if(A instanceof twB)return A;if(typeof A==="number")A=String(A);if(typeof A!=="string")return null;Q=Q||{};let B=null;if(!Q.rtl)B=A.match(Q.includePrerelease?ej[AO.COERCEFULL]:ej[AO.COERCE]);else{let F=Q.includePrerelease?ej[AO.COERCERTLFULL]:ej[AO.COERCERTL],W;while((W=F.exec(A))&&(!B||B.index+B[0].length!==A.length)){if(!B||W.index+W[0].length!==B.index+B[0].length)B=W;F.lastIndex=W.index+W[1].length+W[2].length}F.lastIndex=-1}if(B===null)return null;let Y=B[2],J=B[3]||"0",C=B[4]||"0",X=Q.includePrerelease&&B[5]?`-${B[5]}`:"",G=Q.includePrerelease&&B[6]?`+${B[6]}`:"";return ewB(`${Y}.${J}.${C}${X}${G}`,Q)};ekA.exports=AjB});var Y_A=R((bkY,B_A)=>{class Q_A{constructor(){this.max=1000,this.map=new Map}get(A){let Q=this.map.get(A);if(Q===void 0)return;else return this.map.delete(A),this.map.set(A,Q),Q}delete(A){return this.map.delete(A)}set(A,Q){if(!this.delete(A)&&Q!==void 0){if(this.map.size>=this.max){let Y=this.map.keys().next().value;this.delete(Y)}this.map.set(A,Q)}return this}}B_A.exports=Q_A});var T5=R((mkY,G_A)=>{var QjB=/\s+/g;class yN{constructor(A,Q){if(Q=YjB(Q),A instanceof yN)if(A.loose===!!Q.loose&&A.includePrerelease===!!Q.includePrerelease)return A;else return new yN(A.raw,Q);if(A instanceof Cl)return this.raw=A.value,this.set=[[A]],this.formatted=void 0,this;if(this.options=Q,this.loose=!!Q.loose,this.includePrerelease=!!Q.includePrerelease,this.raw=A.trim().replace(QjB," "),this.set=this.raw.split("||").map((B)=>this.parseRange(B.trim())).filter((B)=>B.length),!this.set.length)throw TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let B=this.set[0];if(this.set=this.set.filter((Y)=>!C_A(Y[0])),this.set.length===0)this.set=[B];else if(this.set.length>1){for(let Y of this.set)if(Y.length===1&&ZjB(Y[0])){this.set=[Y];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let A=0;A0)this.formatted+="||";let Q=this.set[A];for(let B=0;B0)this.formatted+=" ";this.formatted+=Q[B].toString().trim()}}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(A){let B=((this.options.includePrerelease&&FjB)|(this.options.loose&&WjB))+":"+A,Y=J_A.get(B);if(Y)return Y;let J=this.options.loose,C=J?d9[G9.HYPHENRANGELOOSE]:d9[G9.HYPHENRANGE];A=A.replace(C,LjB(this.options.includePrerelease)),U0("hyphen replace",A),A=A.replace(d9[G9.COMPARATORTRIM],CjB),U0("comparator trim",A),A=A.replace(d9[G9.TILDETRIM],XjB),U0("tilde trim",A),A=A.replace(d9[G9.CARETTRIM],GjB),U0("caret trim",A);let X=A.split(" ").map((Z)=>$jB(Z,this.options)).join(" ").split(/\s+/).map((Z)=>NjB(Z,this.options));if(J)X=X.filter((Z)=>{return U0("loose invalid filter",Z,this.options),!!Z.match(d9[G9.COMPARATORLOOSE])});U0("range list",X);let G=new Map,F=X.map((Z)=>new Cl(Z,this.options));for(let Z of F){if(C_A(Z))return[Z];G.set(Z.value,Z)}if(G.size>1&&G.has(""))G.delete("");let W=[...G.values()];return J_A.set(B,W),W}intersects(A,Q){if(!(A instanceof yN))throw TypeError("a Range is required");return this.set.some((B)=>{return X_A(B,Q)&&A.set.some((Y)=>{return X_A(Y,Q)&&B.every((J)=>{return Y.every((C)=>{return J.intersects(C,Q)})})})})}test(A){if(!A)return!1;if(typeof A==="string")try{A=new JjB(A,this.options)}catch(Q){return!1}for(let Q=0;QA.value==="<0.0.0-0",ZjB=(A)=>A.value==="",X_A=(A,Q)=>{let B=!0,Y=A.slice(),J=Y.pop();while(B&&Y.length)B=Y.every((C)=>{return J.intersects(C,Q)}),J=Y.pop();return B},$jB=(A,Q)=>{return U0("comp",A,Q),A=KjB(A,Q),U0("caret",A),A=UjB(A,Q),U0("tildes",A),A=IjB(A,Q),U0("xrange",A),A=DjB(A,Q),U0("stars",A),A},F9=(A)=>!A||A.toLowerCase()==="x"||A==="*",UjB=(A,Q)=>{return A.trim().split(/\s+/).map((B)=>EjB(B,Q)).join(" ")},EjB=(A,Q)=>{let B=Q.loose?d9[G9.TILDELOOSE]:d9[G9.TILDE];return A.replace(B,(Y,J,C,X,G)=>{U0("tilde",A,Y,J,C,X,G);let F;if(F9(J))F="";else if(F9(C))F=`>=${J}.0.0 <${+J+1}.0.0-0`;else if(F9(X))F=`>=${J}.${C}.0 <${J}.${+C+1}.0-0`;else if(G)U0("replaceTilde pr",G),F=`>=${J}.${C}.${X}-${G} <${J}.${+C+1}.0-0`;else F=`>=${J}.${C}.${X} <${J}.${+C+1}.0-0`;return U0("tilde return",F),F})},KjB=(A,Q)=>{return A.trim().split(/\s+/).map((B)=>VjB(B,Q)).join(" ")},VjB=(A,Q)=>{U0("caret",A,Q);let B=Q.loose?d9[G9.CARETLOOSE]:d9[G9.CARET],Y=Q.includePrerelease?"-0":"";return A.replace(B,(J,C,X,G,F)=>{U0("caret",A,J,C,X,G,F);let W;if(F9(C))W="";else if(F9(X))W=`>=${C}.0.0${Y} <${+C+1}.0.0-0`;else if(F9(G))if(C==="0")W=`>=${C}.${X}.0${Y} <${C}.${+X+1}.0-0`;else W=`>=${C}.${X}.0${Y} <${+C+1}.0.0-0`;else if(F)if(U0("replaceCaret pr",F),C==="0")if(X==="0")W=`>=${C}.${X}.${G}-${F} <${C}.${X}.${+G+1}-0`;else W=`>=${C}.${X}.${G}-${F} <${C}.${+X+1}.0-0`;else W=`>=${C}.${X}.${G}-${F} <${+C+1}.0.0-0`;else if(U0("no pr"),C==="0")if(X==="0")W=`>=${C}.${X}.${G}${Y} <${C}.${X}.${+G+1}-0`;else W=`>=${C}.${X}.${G}${Y} <${C}.${+X+1}.0-0`;else W=`>=${C}.${X}.${G} <${+C+1}.0.0-0`;return U0("caret return",W),W})},IjB=(A,Q)=>{return U0("replaceXRanges",A,Q),A.split(/\s+/).map((B)=>HjB(B,Q)).join(" ")},HjB=(A,Q)=>{A=A.trim();let B=Q.loose?d9[G9.XRANGELOOSE]:d9[G9.XRANGE];return A.replace(B,(Y,J,C,X,G,F)=>{U0("xRange",A,Y,J,C,X,G,F);let W=F9(C),Z=W||F9(X),U=Z||F9(G),$=U;if(J==="="&&$)J="";if(F=Q.includePrerelease?"-0":"",W)if(J===">"||J==="<")Y="<0.0.0-0";else Y="*";else if(J&&$){if(Z)X=0;if(G=0,J===">")if(J=">=",Z)C=+C+1,X=0,G=0;else X=+X+1,G=0;else if(J==="<=")if(J="<",Z)C=+C+1;else X=+X+1;if(J==="<")F="-0";Y=`${J+C}.${X}.${G}${F}`}else if(Z)Y=`>=${C}.0.0${F} <${+C+1}.0.0-0`;else if(U)Y=`>=${C}.${X}.0${F} <${C}.${+X+1}.0-0`;return U0("xRange return",Y),Y})},DjB=(A,Q)=>{return U0("replaceStars",A,Q),A.trim().replace(d9[G9.STAR],"")},NjB=(A,Q)=>{return U0("replaceGTE0",A,Q),A.trim().replace(d9[Q.includePrerelease?G9.GTE0PRE:G9.GTE0],"")},LjB=(A)=>(Q,B,Y,J,C,X,G,F,W,Z,U,$)=>{if(F9(Y))B="";else if(F9(J))B=`>=${Y}.0.0${A?"-0":""}`;else if(F9(C))B=`>=${Y}.${J}.0${A?"-0":""}`;else if(X)B=`>=${B}`;else B=`>=${B}${A?"-0":""}`;if(F9(W))F="";else if(F9(Z))F=`<${+W+1}.0.0-0`;else if(F9(U))F=`<${W}.${+Z+1}.0-0`;else if($)F=`<=${W}.${Z}.${U}-${$}`;else if(A)F=`<${W}.${Z}.${+U+1}-0`;else F=`<=${F}`;return`${B} ${F}`.trim()},qjB=(A,Q,B)=>{for(let Y=0;Y0){let J=A[Y].semver;if(J.major===Q.major&&J.minor===Q.minor&&J.patch===Q.patch)return!0}}return!1}return!0}});var gN=R((ukY,E_A)=>{var hN=Symbol("SemVer ANY");class QO{static get ANY(){return hN}constructor(A,Q){if(Q=F_A(Q),A instanceof QO)if(A.loose===!!Q.loose)return A;else A=A.value;if(A=A.trim().split(/\s+/).join(" "),Gl("comparator",A,Q),this.options=Q,this.loose=!!Q.loose,this.parse(A),this.semver===hN)this.value="";else this.value=this.operator+this.semver.version;Gl("comp",this)}parse(A){let Q=this.options.loose?W_A[Z_A.COMPARATORLOOSE]:W_A[Z_A.COMPARATOR],B=A.match(Q);if(!B)throw TypeError(`Invalid comparator: ${A}`);if(this.operator=B[1]!==void 0?B[1]:"",this.operator==="=")this.operator="";if(!B[2])this.semver=hN;else this.semver=new $_A(B[2],this.options.loose)}toString(){return this.value}test(A){if(Gl("Comparator.test",A,this.options.loose),this.semver===hN||A===hN)return!0;if(typeof A==="string")try{A=new $_A(A,this.options)}catch(Q){return!1}return Xl(A,this.operator,this.semver,this.options)}intersects(A,Q){if(!(A instanceof QO))throw TypeError("a Comparator is required");if(this.operator===""){if(this.value==="")return!0;return new U_A(A.value,Q).test(this.value)}else if(A.operator===""){if(A.value==="")return!0;return new U_A(this.value,Q).test(A.semver)}if(Q=F_A(Q),Q.includePrerelease&&(this.value==="<0.0.0-0"||A.value==="<0.0.0-0"))return!1;if(!Q.includePrerelease&&(this.value.startsWith("<0.0.0")||A.value.startsWith("<0.0.0")))return!1;if(this.operator.startsWith(">")&&A.operator.startsWith(">"))return!0;if(this.operator.startsWith("<")&&A.operator.startsWith("<"))return!0;if(this.semver.version===A.semver.version&&this.operator.includes("=")&&A.operator.includes("="))return!0;if(Xl(this.semver,"<",A.semver,Q)&&this.operator.startsWith(">")&&A.operator.startsWith("<"))return!0;if(Xl(this.semver,">",A.semver,Q)&&this.operator.startsWith("<")&&A.operator.startsWith(">"))return!0;return!1}}E_A.exports=QO;var F_A=pj(),{safeRe:W_A,t:Z_A}=lE(),Xl=Jl(),Gl=_N(),$_A=wJ(),U_A=T5()});var xN=R((dkY,K_A)=>{var MjB=T5(),zjB=(A,Q,B)=>{try{Q=new MjB(Q,B)}catch(Y){return!1}return Q.test(A)};K_A.exports=zjB});var I_A=R((ckY,V_A)=>{var RjB=T5(),wjB=(A,Q)=>new RjB(A,Q).set.map((B)=>B.map((Y)=>Y.value).join(" ").trim().split(" "));V_A.exports=wjB});var D_A=R((lkY,H_A)=>{var jjB=wJ(),OjB=T5(),PjB=(A,Q,B)=>{let Y=null,J=null,C=null;try{C=new OjB(Q,B)}catch(X){return null}return A.forEach((X)=>{if(C.test(X)){if(!Y||J.compare(X)===-1)Y=X,J=new jjB(Y,B)}}),Y};H_A.exports=PjB});var L_A=R((pkY,N_A)=>{var TjB=wJ(),SjB=T5(),kjB=(A,Q,B)=>{let Y=null,J=null,C=null;try{C=new SjB(Q,B)}catch(X){return null}return A.forEach((X)=>{if(C.test(X)){if(!Y||J.compare(X)===1)Y=X,J=new TjB(Y,B)}}),Y};N_A.exports=kjB});var z_A=R((ikY,M_A)=>{var Fl=wJ(),_jB=T5(),q_A=vN(),vjB=(A,Q)=>{A=new _jB(A,Q);let B=new Fl("0.0.0");if(A.test(B))return B;if(B=new Fl("0.0.0-0"),A.test(B))return B;B=null;for(let Y=0;Y{let G=new Fl(X.semver.version);switch(X.operator){case">":if(G.prerelease.length===0)G.patch++;else G.prerelease.push(0);G.raw=G.format();case"":case">=":if(!C||q_A(G,C))C=G;break;case"<":case"<=":break;default:throw Error(`Unexpected operation: ${X.operator}`)}}),C&&(!B||q_A(B,C)))B=C}if(B&&A.test(B))return B;return null};M_A.exports=vjB});var w_A=R((nkY,R_A)=>{var yjB=T5(),gjB=(A,Q)=>{try{return new yjB(A,Q).range||"*"}catch(B){return null}};R_A.exports=gjB});var BO=R((skY,T_A)=>{var hjB=wJ(),P_A=gN(),{ANY:xjB}=P_A,fjB=T5(),bjB=xN(),j_A=vN(),O_A=aj(),mjB=tj(),ujB=oj(),djB=(A,Q,B,Y)=>{A=new hjB(A,Y),Q=new fjB(Q,Y);let J,C,X,G,F;switch(B){case">":J=j_A,C=mjB,X=O_A,G=">",F=">=";break;case"<":J=O_A,C=ujB,X=j_A,G="<",F="<=";break;default:throw TypeError('Must provide a hilo val of "<" or ">"')}if(bjB(A,Q,Y))return!1;for(let W=0;W{if(E.semver===xjB)E=new P_A(">=0.0.0");if(U=U||E,$=$||E,J(E.semver,U.semver,Y))U=E;else if(X(E.semver,$.semver,Y))$=E}),U.operator===G||U.operator===F)return!1;if((!$.operator||$.operator===G)&&C(A,$.semver))return!1;else if($.operator===F&&X(A,$.semver))return!1}return!0};T_A.exports=djB});var k_A=R((rkY,S_A)=>{var cjB=BO(),ljB=(A,Q,B)=>cjB(A,Q,">",B);S_A.exports=ljB});var v_A=R((akY,__A)=>{var pjB=BO(),ijB=(A,Q,B)=>pjB(A,Q,"<",B);__A.exports=ijB});var h_A=R((okY,g_A)=>{var y_A=T5(),njB=(A,Q,B)=>{return A=new y_A(A,B),Q=new y_A(Q,B),A.intersects(Q,B)};g_A.exports=njB});var f_A=R((tkY,x_A)=>{var sjB=xN(),rjB=P5();x_A.exports=(A,Q,B)=>{let Y=[],J=null,C=null,X=A.sort((Z,U)=>rjB(Z,U,B));for(let Z of X)if(sjB(Z,Q,B)){if(C=Z,!J)J=Z}else{if(C)Y.push([J,C]);C=null,J=null}if(J)Y.push([J,null]);let G=[];for(let[Z,U]of Y)if(Z===U)G.push(Z);else if(!U&&Z===X[0])G.push("*");else if(!U)G.push(`>=${Z}`);else if(Z===X[0])G.push(`<=${U}`);else G.push(`${Z} - ${U}`);let F=G.join(" || "),W=typeof Q.raw==="string"?Q.raw:String(Q);return F.length{var b_A=T5(),Zl=gN(),{ANY:Wl}=Zl,fN=xN(),$l=P5(),ajB=(A,Q,B={})=>{if(A===Q)return!0;A=new b_A(A,B),Q=new b_A(Q,B);let Y=!1;A:for(let J of A.set){for(let C of Q.set){let X=tjB(J,C,B);if(Y=Y||X!==null,X)continue A}if(Y)return!1}return!0},ojB=[new Zl(">=0.0.0-0")],m_A=[new Zl(">=0.0.0")],tjB=(A,Q,B)=>{if(A===Q)return!0;if(A.length===1&&A[0].semver===Wl)if(Q.length===1&&Q[0].semver===Wl)return!0;else if(B.includePrerelease)A=ojB;else A=m_A;if(Q.length===1&&Q[0].semver===Wl)if(B.includePrerelease)return!0;else Q=m_A;let Y=new Set,J,C;for(let E of A)if(E.operator===">"||E.operator===">=")J=u_A(J,E,B);else if(E.operator==="<"||E.operator==="<=")C=d_A(C,E,B);else Y.add(E.semver);if(Y.size>1)return null;let X;if(J&&C){if(X=$l(J.semver,C.semver,B),X>0)return null;else if(X===0&&(J.operator!==">="||C.operator!=="<="))return null}for(let E of Y){if(J&&!fN(E,String(J),B))return null;if(C&&!fN(E,String(C),B))return null;for(let K of Q)if(!fN(E,String(K),B))return!1;return!0}let G,F,W,Z,U=C&&!B.includePrerelease&&C.semver.prerelease.length?C.semver:!1,$=J&&!B.includePrerelease&&J.semver.prerelease.length?J.semver:!1;if(U&&U.prerelease.length===1&&C.operator==="<"&&U.prerelease[0]===0)U=!1;for(let E of Q){if(Z=Z||E.operator===">"||E.operator===">=",W=W||E.operator==="<"||E.operator==="<=",J){if($){if(E.semver.prerelease&&E.semver.prerelease.length&&E.semver.major===$.major&&E.semver.minor===$.minor&&E.semver.patch===$.patch)$=!1}if(E.operator===">"||E.operator===">="){if(G=u_A(J,E,B),G===E&&G!==J)return!1}else if(J.operator===">="&&!fN(J.semver,String(E),B))return!1}if(C){if(U){if(E.semver.prerelease&&E.semver.prerelease.length&&E.semver.major===U.major&&E.semver.minor===U.minor&&E.semver.patch===U.patch)U=!1}if(E.operator==="<"||E.operator==="<="){if(F=d_A(C,E,B),F===E&&F!==C)return!1}else if(C.operator==="<="&&!fN(C.semver,String(E),B))return!1}if(!E.operator&&(C||J)&&X!==0)return!1}if(J&&W&&!C&&X!==0)return!1;if(C&&Z&&!J&&X!==0)return!1;if($||U)return!1;return!0},u_A=(A,Q,B)=>{if(!A)return Q;let Y=$l(A.semver,Q.semver,B);return Y>0?A:Y<0?Q:Q.operator===">"&&A.operator===">="?Q:A},d_A=(A,Q,B)=>{if(!A)return Q;let Y=$l(A.semver,Q.semver,B);return Y<0?A:Y>0?Q:Q.operator==="<"&&A.operator==="<="?Q:A};c_A.exports=ajB});var s_A=R((A_Y,n_A)=>{var Ul=lE(),p_A=kN(),ejB=wJ(),i_A=Ql(),AOB=dZ(),QOB=HkA(),BOB=NkA(),YOB=MkA(),JOB=wkA(),COB=OkA(),XOB=TkA(),GOB=kkA(),FOB=vkA(),WOB=P5(),ZOB=xkA(),$OB=bkA(),UOB=rj(),EOB=ckA(),KOB=pkA(),VOB=vN(),IOB=aj(),HOB=Bl(),DOB=Yl(),NOB=oj(),LOB=tj(),qOB=Jl(),MOB=A_A(),zOB=gN(),ROB=T5(),wOB=xN(),jOB=I_A(),OOB=D_A(),POB=L_A(),TOB=z_A(),SOB=w_A(),kOB=BO(),_OB=k_A(),vOB=v_A(),yOB=h_A(),gOB=f_A(),hOB=l_A();n_A.exports={parse:AOB,valid:QOB,clean:BOB,inc:YOB,diff:JOB,major:COB,minor:XOB,patch:GOB,prerelease:FOB,compare:WOB,rcompare:ZOB,compareLoose:$OB,compareBuild:UOB,sort:EOB,rsort:KOB,gt:VOB,lt:IOB,eq:HOB,neq:DOB,gte:NOB,lte:LOB,cmp:qOB,coerce:MOB,Comparator:zOB,Range:ROB,satisfies:wOB,toComparators:jOB,maxSatisfying:OOB,minSatisfying:POB,minVersion:TOB,validRange:SOB,outside:kOB,gtr:_OB,ltr:vOB,intersects:yOB,simplifyRange:gOB,subset:hOB,SemVer:ejB,re:Ul.re,src:Ul.src,tokens:Ul.t,SEMVER_SPEC_VERSION:p_A.SEMVER_SPEC_VERSION,RELEASE_TYPES:p_A.RELEASE_TYPES,compareIdentifiers:i_A.compareIdentifiers,rcompareIdentifiers:i_A.rcompareIdentifiers}});var o_A=R((r_A)=>{Object.defineProperty(r_A,"__esModule",{value:!0});r_A.VERSION=void 0;r_A.VERSION="0.57.2"});var e_A=R((t_A)=>{Object.defineProperty(t_A,"__esModule",{value:!0});t_A.SeverityNumber=void 0;var xOB;(function(A){A[A.UNSPECIFIED=0]="UNSPECIFIED",A[A.TRACE=1]="TRACE",A[A.TRACE2=2]="TRACE2",A[A.TRACE3=3]="TRACE3",A[A.TRACE4=4]="TRACE4",A[A.DEBUG=5]="DEBUG",A[A.DEBUG2=6]="DEBUG2",A[A.DEBUG3=7]="DEBUG3",A[A.DEBUG4=8]="DEBUG4",A[A.INFO=9]="INFO",A[A.INFO2=10]="INFO2",A[A.INFO3=11]="INFO3",A[A.INFO4=12]="INFO4",A[A.WARN=13]="WARN",A[A.WARN2=14]="WARN2",A[A.WARN3=15]="WARN3",A[A.WARN4=16]="WARN4",A[A.ERROR=17]="ERROR",A[A.ERROR2=18]="ERROR2",A[A.ERROR3=19]="ERROR3",A[A.ERROR4=20]="ERROR4",A[A.FATAL=21]="FATAL",A[A.FATAL2=22]="FATAL2",A[A.FATAL3=23]="FATAL3",A[A.FATAL4=24]="FATAL4"})(xOB=t_A.SeverityNumber||(t_A.SeverityNumber={}))});var YO=R((AvA)=>{Object.defineProperty(AvA,"__esModule",{value:!0});AvA.NOOP_LOGGER=AvA.NoopLogger=void 0;class Kl{emit(A){}}AvA.NoopLogger=Kl;AvA.NOOP_LOGGER=new Kl});var JO=R((BvA)=>{Object.defineProperty(BvA,"__esModule",{value:!0});BvA.NOOP_LOGGER_PROVIDER=BvA.NoopLoggerProvider=void 0;var bOB=YO();class Vl{getLogger(A,Q,B){return new bOB.NoopLogger}}BvA.NoopLoggerProvider=Vl;BvA.NOOP_LOGGER_PROVIDER=new Vl});var Il=R((CvA)=>{Object.defineProperty(CvA,"__esModule",{value:!0});CvA.ProxyLogger=void 0;var uOB=YO();class JvA{constructor(A,Q,B,Y){this._provider=A,this.name=Q,this.version=B,this.options=Y}emit(A){this._getLogger().emit(A)}_getLogger(){if(this._delegate)return this._delegate;let A=this._provider.getDelegateLogger(this.name,this.version,this.options);if(!A)return uOB.NOOP_LOGGER;return this._delegate=A,this._delegate}}CvA.ProxyLogger=JvA});var Hl=R((FvA)=>{Object.defineProperty(FvA,"__esModule",{value:!0});FvA.ProxyLoggerProvider=void 0;var dOB=JO(),cOB=Il();class GvA{getLogger(A,Q,B){var Y;return(Y=this.getDelegateLogger(A,Q,B))!==null&&Y!==void 0?Y:new cOB.ProxyLogger(this,A,Q,B)}getDelegate(){var A;return(A=this._delegate)!==null&&A!==void 0?A:dOB.NOOP_LOGGER_PROVIDER}setDelegate(A){this._delegate=A}getDelegateLogger(A,Q,B){var Y;return(Y=this._delegate)===null||Y===void 0?void 0:Y.getLogger(A,Q,B)}}FvA.ProxyLoggerProvider=GvA});var UvA=R((ZvA)=>{Object.defineProperty(ZvA,"__esModule",{value:!0});ZvA._globalThis=void 0;ZvA._globalThis=typeof globalThis==="object"?globalThis:global});var EvA=R((Dl)=>{Object.defineProperty(Dl,"__esModule",{value:!0});Dl._globalThis=void 0;var lOB=UvA();Object.defineProperty(Dl,"_globalThis",{enumerable:!0,get:function(){return lOB._globalThis}})});var KvA=R((Nl)=>{Object.defineProperty(Nl,"__esModule",{value:!0});Nl._globalThis=void 0;var iOB=EvA();Object.defineProperty(Nl,"_globalThis",{enumerable:!0,get:function(){return iOB._globalThis}})});var HvA=R((VvA)=>{Object.defineProperty(VvA,"__esModule",{value:!0});VvA.API_BACKWARDS_COMPATIBILITY_VERSION=VvA.makeGetter=VvA._global=VvA.GLOBAL_LOGS_API_KEY=void 0;var sOB=KvA();VvA.GLOBAL_LOGS_API_KEY=Symbol.for("io.opentelemetry.js.api.logs");VvA._global=sOB._globalThis;function rOB(A,Q,B){return(Y)=>Y===A?Q:B}VvA.makeGetter=rOB;VvA.API_BACKWARDS_COMPATIBILITY_VERSION=1});var qvA=R((NvA)=>{Object.defineProperty(NvA,"__esModule",{value:!0});NvA.LogsAPI=void 0;var S5=HvA(),eOB=JO(),DvA=Hl();class Ll{constructor(){this._proxyLoggerProvider=new DvA.ProxyLoggerProvider}static getInstance(){if(!this._instance)this._instance=new Ll;return this._instance}setGlobalLoggerProvider(A){if(S5._global[S5.GLOBAL_LOGS_API_KEY])return this.getLoggerProvider();return S5._global[S5.GLOBAL_LOGS_API_KEY]=(0,S5.makeGetter)(S5.API_BACKWARDS_COMPATIBILITY_VERSION,A,eOB.NOOP_LOGGER_PROVIDER),this._proxyLoggerProvider.setDelegate(A),A}getLoggerProvider(){var A,Q;return(Q=(A=S5._global[S5.GLOBAL_LOGS_API_KEY])===null||A===void 0?void 0:A.call(S5._global,S5.API_BACKWARDS_COMPATIBILITY_VERSION))!==null&&Q!==void 0?Q:this._proxyLoggerProvider}getLogger(A,Q,B){return this.getLoggerProvider().getLogger(A,Q,B)}disable(){delete S5._global[S5.GLOBAL_LOGS_API_KEY],this._proxyLoggerProvider=new DvA.ProxyLoggerProvider}}NvA.LogsAPI=Ll});var ql=R((eG)=>{Object.defineProperty(eG,"__esModule",{value:!0});eG.logs=eG.ProxyLoggerProvider=eG.ProxyLogger=eG.NoopLoggerProvider=eG.NOOP_LOGGER_PROVIDER=eG.NoopLogger=eG.NOOP_LOGGER=eG.SeverityNumber=void 0;var APB=e_A();Object.defineProperty(eG,"SeverityNumber",{enumerable:!0,get:function(){return APB.SeverityNumber}});var MvA=YO();Object.defineProperty(eG,"NOOP_LOGGER",{enumerable:!0,get:function(){return MvA.NOOP_LOGGER}});Object.defineProperty(eG,"NoopLogger",{enumerable:!0,get:function(){return MvA.NoopLogger}});var zvA=JO();Object.defineProperty(eG,"NOOP_LOGGER_PROVIDER",{enumerable:!0,get:function(){return zvA.NOOP_LOGGER_PROVIDER}});Object.defineProperty(eG,"NoopLoggerProvider",{enumerable:!0,get:function(){return zvA.NoopLoggerProvider}});var QPB=Il();Object.defineProperty(eG,"ProxyLogger",{enumerable:!0,get:function(){return QPB.ProxyLogger}});var BPB=Hl();Object.defineProperty(eG,"ProxyLoggerProvider",{enumerable:!0,get:function(){return BPB.ProxyLoggerProvider}});var YPB=qvA();eG.logs=YPB.LogsAPI.getInstance()});var OvA=R((wvA)=>{Object.defineProperty(wvA,"__esModule",{value:!0});wvA.disableInstrumentations=wvA.enableInstrumentations=void 0;function JPB(A,Q,B,Y){for(let J=0,C=A.length;JQ.disable())}wvA.disableInstrumentations=CPB});var _vA=R((SvA)=>{Object.defineProperty(SvA,"__esModule",{value:!0});SvA.registerInstrumentations=void 0;var PvA=yA(),GPB=ql(),TvA=OvA();function FPB(A){var Q,B;let Y=A.tracerProvider||PvA.trace.getTracerProvider(),J=A.meterProvider||PvA.metrics.getMeterProvider(),C=A.loggerProvider||GPB.logs.getLoggerProvider(),X=(B=(Q=A.instrumentations)===null||Q===void 0?void 0:Q.flat())!==null&&B!==void 0?B:[];return(0,TvA.enableInstrumentations)(X,Y,J,C),()=>{(0,TvA.disableInstrumentations)(X)}}SvA.registerInstrumentations=FPB});var bN=R((M_Y,vvA)=>{var WPB=Number.MAX_SAFE_INTEGER||9007199254740991,ZPB=["major","premajor","minor","preminor","patch","prepatch","prerelease"];vvA.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:16,MAX_SAFE_BUILD_LENGTH:250,MAX_SAFE_INTEGER:WPB,RELEASE_TYPES:ZPB,SEMVER_SPEC_VERSION:"2.0.0",FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var mN=R((z_Y,yvA)=>{var $PB=typeof process==="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...A)=>console.error("SEMVER",...A):()=>{};yvA.exports=$PB});var iE=R((BX,gvA)=>{var{MAX_SAFE_COMPONENT_LENGTH:Ml,MAX_SAFE_BUILD_LENGTH:UPB,MAX_LENGTH:EPB}=bN(),KPB=mN();BX=gvA.exports={};var VPB=BX.re=[],IPB=BX.safeRe=[],iA=BX.src=[],HPB=BX.safeSrc=[],nA=BX.t={},DPB=0,zl="[a-zA-Z0-9-]",NPB=[["\\s",1],["\\d",EPB],[zl,UPB]],LPB=(A)=>{for(let[Q,B]of NPB)A=A.split(`${Q}*`).join(`${Q}{0,${B}}`).split(`${Q}+`).join(`${Q}{1,${B}}`);return A},cQ=(A,Q,B)=>{let Y=LPB(Q),J=DPB++;KPB(A,J,Q),nA[A]=J,iA[J]=Q,HPB[J]=Y,VPB[J]=new RegExp(Q,B?"g":void 0),IPB[J]=new RegExp(Y,B?"g":void 0)};cQ("NUMERICIDENTIFIER","0|[1-9]\\d*");cQ("NUMERICIDENTIFIERLOOSE","\\d+");cQ("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${zl}*`);cQ("MAINVERSION",`(${iA[nA.NUMERICIDENTIFIER]})\\.(${iA[nA.NUMERICIDENTIFIER]})\\.(${iA[nA.NUMERICIDENTIFIER]})`);cQ("MAINVERSIONLOOSE",`(${iA[nA.NUMERICIDENTIFIERLOOSE]})\\.(${iA[nA.NUMERICIDENTIFIERLOOSE]})\\.(${iA[nA.NUMERICIDENTIFIERLOOSE]})`);cQ("PRERELEASEIDENTIFIER",`(?:${iA[nA.NUMERICIDENTIFIER]}|${iA[nA.NONNUMERICIDENTIFIER]})`);cQ("PRERELEASEIDENTIFIERLOOSE",`(?:${iA[nA.NUMERICIDENTIFIERLOOSE]}|${iA[nA.NONNUMERICIDENTIFIER]})`);cQ("PRERELEASE",`(?:-(${iA[nA.PRERELEASEIDENTIFIER]}(?:\\.${iA[nA.PRERELEASEIDENTIFIER]})*))`);cQ("PRERELEASELOOSE",`(?:-?(${iA[nA.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${iA[nA.PRERELEASEIDENTIFIERLOOSE]})*))`);cQ("BUILDIDENTIFIER",`${zl}+`);cQ("BUILD",`(?:\\+(${iA[nA.BUILDIDENTIFIER]}(?:\\.${iA[nA.BUILDIDENTIFIER]})*))`);cQ("FULLPLAIN",`v?${iA[nA.MAINVERSION]}${iA[nA.PRERELEASE]}?${iA[nA.BUILD]}?`);cQ("FULL",`^${iA[nA.FULLPLAIN]}$`);cQ("LOOSEPLAIN",`[v=\\s]*${iA[nA.MAINVERSIONLOOSE]}${iA[nA.PRERELEASELOOSE]}?${iA[nA.BUILD]}?`);cQ("LOOSE",`^${iA[nA.LOOSEPLAIN]}$`);cQ("GTLT","((?:<|>)?=?)");cQ("XRANGEIDENTIFIERLOOSE",`${iA[nA.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);cQ("XRANGEIDENTIFIER",`${iA[nA.NUMERICIDENTIFIER]}|x|X|\\*`);cQ("XRANGEPLAIN",`[v=\\s]*(${iA[nA.XRANGEIDENTIFIER]})(?:\\.(${iA[nA.XRANGEIDENTIFIER]})(?:\\.(${iA[nA.XRANGEIDENTIFIER]})(?:${iA[nA.PRERELEASE]})?${iA[nA.BUILD]}?)?)?`);cQ("XRANGEPLAINLOOSE",`[v=\\s]*(${iA[nA.XRANGEIDENTIFIERLOOSE]})(?:\\.(${iA[nA.XRANGEIDENTIFIERLOOSE]})(?:\\.(${iA[nA.XRANGEIDENTIFIERLOOSE]})(?:${iA[nA.PRERELEASELOOSE]})?${iA[nA.BUILD]}?)?)?`);cQ("XRANGE",`^${iA[nA.GTLT]}\\s*${iA[nA.XRANGEPLAIN]}$`);cQ("XRANGELOOSE",`^${iA[nA.GTLT]}\\s*${iA[nA.XRANGEPLAINLOOSE]}$`);cQ("COERCEPLAIN",`(^|[^\\d])(\\d{1,${Ml}})(?:\\.(\\d{1,${Ml}}))?(?:\\.(\\d{1,${Ml}}))?`);cQ("COERCE",`${iA[nA.COERCEPLAIN]}(?:$|[^\\d])`);cQ("COERCEFULL",iA[nA.COERCEPLAIN]+`(?:${iA[nA.PRERELEASE]})?(?:${iA[nA.BUILD]})?(?:$|[^\\d])`);cQ("COERCERTL",iA[nA.COERCE],!0);cQ("COERCERTLFULL",iA[nA.COERCEFULL],!0);cQ("LONETILDE","(?:~>?)");cQ("TILDETRIM",`(\\s*)${iA[nA.LONETILDE]}\\s+`,!0);BX.tildeTrimReplace="$1~";cQ("TILDE",`^${iA[nA.LONETILDE]}${iA[nA.XRANGEPLAIN]}$`);cQ("TILDELOOSE",`^${iA[nA.LONETILDE]}${iA[nA.XRANGEPLAINLOOSE]}$`);cQ("LONECARET","(?:\\^)");cQ("CARETTRIM",`(\\s*)${iA[nA.LONECARET]}\\s+`,!0);BX.caretTrimReplace="$1^";cQ("CARET",`^${iA[nA.LONECARET]}${iA[nA.XRANGEPLAIN]}$`);cQ("CARETLOOSE",`^${iA[nA.LONECARET]}${iA[nA.XRANGEPLAINLOOSE]}$`);cQ("COMPARATORLOOSE",`^${iA[nA.GTLT]}\\s*(${iA[nA.LOOSEPLAIN]})$|^$`);cQ("COMPARATOR",`^${iA[nA.GTLT]}\\s*(${iA[nA.FULLPLAIN]})$|^$`);cQ("COMPARATORTRIM",`(\\s*)${iA[nA.GTLT]}\\s*(${iA[nA.LOOSEPLAIN]}|${iA[nA.XRANGEPLAIN]})`,!0);BX.comparatorTrimReplace="$1$2$3";cQ("HYPHENRANGE",`^\\s*(${iA[nA.XRANGEPLAIN]})\\s+-\\s+(${iA[nA.XRANGEPLAIN]})\\s*$`);cQ("HYPHENRANGELOOSE",`^\\s*(${iA[nA.XRANGEPLAINLOOSE]})\\s+-\\s+(${iA[nA.XRANGEPLAINLOOSE]})\\s*$`);cQ("STAR","(<|>)?=?\\s*\\*");cQ("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");cQ("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var CO=R((R_Y,hvA)=>{var qPB=Object.freeze({loose:!0}),MPB=Object.freeze({}),zPB=(A)=>{if(!A)return MPB;if(typeof A!=="object")return qPB;return A};hvA.exports=zPB});var Rl=R((w_Y,bvA)=>{var xvA=/^[0-9]+$/,fvA=(A,Q)=>{let B=xvA.test(A),Y=xvA.test(Q);if(B&&Y)A=+A,Q=+Q;return A===Q?0:B&&!Y?-1:Y&&!B?1:AfvA(Q,A);bvA.exports={compareIdentifiers:fvA,rcompareIdentifiers:RPB}});var jJ=R((j_Y,cvA)=>{var XO=mN(),{MAX_LENGTH:mvA,MAX_SAFE_INTEGER:GO}=bN(),{safeRe:uvA,safeSrc:dvA,t:FO}=iE(),wPB=CO(),{compareIdentifiers:nE}=Rl();class aC{constructor(A,Q){if(Q=wPB(Q),A instanceof aC)if(A.loose===!!Q.loose&&A.includePrerelease===!!Q.includePrerelease)return A;else A=A.version;else if(typeof A!=="string")throw TypeError(`Invalid version. Must be a string. Got type "${typeof A}".`);if(A.length>mvA)throw TypeError(`version is longer than ${mvA} characters`);XO("SemVer",A,Q),this.options=Q,this.loose=!!Q.loose,this.includePrerelease=!!Q.includePrerelease;let B=A.trim().match(Q.loose?uvA[FO.LOOSE]:uvA[FO.FULL]);if(!B)throw TypeError(`Invalid Version: ${A}`);if(this.raw=A,this.major=+B[1],this.minor=+B[2],this.patch=+B[3],this.major>GO||this.major<0)throw TypeError("Invalid major version");if(this.minor>GO||this.minor<0)throw TypeError("Invalid minor version");if(this.patch>GO||this.patch<0)throw TypeError("Invalid patch version");if(!B[4])this.prerelease=[];else this.prerelease=B[4].split(".").map((Y)=>{if(/^[0-9]+$/.test(Y)){let J=+Y;if(J>=0&&J=0)if(typeof this.prerelease[J]==="number")this.prerelease[J]++,J=-2;if(J===-1){if(Q===this.prerelease.join(".")&&B===!1)throw Error("invalid increment argument: identifier already exists");this.prerelease.push(Y)}}if(Q){let J=[Q,Y];if(B===!1)J=[Q];if(nE(this.prerelease[0],Q)===0){if(isNaN(this.prerelease[1]))this.prerelease=J}else this.prerelease=J}break}default:throw Error(`invalid increment argument: ${A}`)}if(this.raw=this.format(),this.build.length)this.raw+=`+${this.build.join(".")}`;return this}}cvA.exports=aC});var cZ=R((O_Y,pvA)=>{var lvA=jJ(),jPB=(A,Q,B=!1)=>{if(A instanceof lvA)return A;try{return new lvA(A,Q)}catch(Y){if(!B)return null;throw Y}};pvA.exports=jPB});var nvA=R((P_Y,ivA)=>{var OPB=cZ(),PPB=(A,Q)=>{let B=OPB(A,Q);return B?B.version:null};ivA.exports=PPB});var rvA=R((T_Y,svA)=>{var TPB=cZ(),SPB=(A,Q)=>{let B=TPB(A.trim().replace(/^[=v]+/,""),Q);return B?B.version:null};svA.exports=SPB});var tvA=R((S_Y,ovA)=>{var avA=jJ(),kPB=(A,Q,B,Y,J)=>{if(typeof B==="string")J=Y,Y=B,B=void 0;try{return new avA(A instanceof avA?A.version:A,B).inc(Q,Y,J).version}catch(C){return null}};ovA.exports=kPB});var QyA=R((k_Y,AyA)=>{var evA=cZ(),_PB=(A,Q)=>{let B=evA(A,null,!0),Y=evA(Q,null,!0),J=B.compare(Y);if(J===0)return null;let C=J>0,X=C?B:Y,G=C?Y:B,F=!!X.prerelease.length;if(!!G.prerelease.length&&!F){if(!G.patch&&!G.minor)return"major";if(G.compareMain(X)===0){if(G.minor&&!G.patch)return"minor";return"patch"}}let Z=F?"pre":"";if(B.major!==Y.major)return Z+"major";if(B.minor!==Y.minor)return Z+"minor";if(B.patch!==Y.patch)return Z+"patch";return"prerelease"};AyA.exports=_PB});var YyA=R((__Y,ByA)=>{var vPB=jJ(),yPB=(A,Q)=>new vPB(A,Q).major;ByA.exports=yPB});var CyA=R((v_Y,JyA)=>{var gPB=jJ(),hPB=(A,Q)=>new gPB(A,Q).minor;JyA.exports=hPB});var GyA=R((y_Y,XyA)=>{var xPB=jJ(),fPB=(A,Q)=>new xPB(A,Q).patch;XyA.exports=fPB});var WyA=R((g_Y,FyA)=>{var bPB=cZ(),mPB=(A,Q)=>{let B=bPB(A,Q);return B&&B.prerelease.length?B.prerelease:null};FyA.exports=mPB});var k5=R((h_Y,$yA)=>{var ZyA=jJ(),uPB=(A,Q,B)=>new ZyA(A,B).compare(new ZyA(Q,B));$yA.exports=uPB});var EyA=R((x_Y,UyA)=>{var dPB=k5(),cPB=(A,Q,B)=>dPB(Q,A,B);UyA.exports=cPB});var VyA=R((f_Y,KyA)=>{var lPB=k5(),pPB=(A,Q)=>lPB(A,Q,!0);KyA.exports=pPB});var WO=R((b_Y,HyA)=>{var IyA=jJ(),iPB=(A,Q,B)=>{let Y=new IyA(A,B),J=new IyA(Q,B);return Y.compare(J)||Y.compareBuild(J)};HyA.exports=iPB});var NyA=R((m_Y,DyA)=>{var nPB=WO(),sPB=(A,Q)=>A.sort((B,Y)=>nPB(B,Y,Q));DyA.exports=sPB});var qyA=R((u_Y,LyA)=>{var rPB=WO(),aPB=(A,Q)=>A.sort((B,Y)=>rPB(Y,B,Q));LyA.exports=aPB});var uN=R((d_Y,MyA)=>{var oPB=k5(),tPB=(A,Q,B)=>oPB(A,Q,B)>0;MyA.exports=tPB});var ZO=R((c_Y,zyA)=>{var ePB=k5(),ATB=(A,Q,B)=>ePB(A,Q,B)<0;zyA.exports=ATB});var wl=R((l_Y,RyA)=>{var QTB=k5(),BTB=(A,Q,B)=>QTB(A,Q,B)===0;RyA.exports=BTB});var jl=R((p_Y,wyA)=>{var YTB=k5(),JTB=(A,Q,B)=>YTB(A,Q,B)!==0;wyA.exports=JTB});var $O=R((i_Y,jyA)=>{var CTB=k5(),XTB=(A,Q,B)=>CTB(A,Q,B)>=0;jyA.exports=XTB});var UO=R((n_Y,OyA)=>{var GTB=k5(),FTB=(A,Q,B)=>GTB(A,Q,B)<=0;OyA.exports=FTB});var Ol=R((s_Y,PyA)=>{var WTB=wl(),ZTB=jl(),$TB=uN(),UTB=$O(),ETB=ZO(),KTB=UO(),VTB=(A,Q,B,Y)=>{switch(Q){case"===":if(typeof A==="object")A=A.version;if(typeof B==="object")B=B.version;return A===B;case"!==":if(typeof A==="object")A=A.version;if(typeof B==="object")B=B.version;return A!==B;case"":case"=":case"==":return WTB(A,B,Y);case"!=":return ZTB(A,B,Y);case">":return $TB(A,B,Y);case">=":return UTB(A,B,Y);case"<":return ETB(A,B,Y);case"<=":return KTB(A,B,Y);default:throw TypeError(`Invalid operator: ${Q}`)}};PyA.exports=VTB});var SyA=R((r_Y,TyA)=>{var ITB=jJ(),HTB=cZ(),{safeRe:EO,t:KO}=iE(),DTB=(A,Q)=>{if(A instanceof ITB)return A;if(typeof A==="number")A=String(A);if(typeof A!=="string")return null;Q=Q||{};let B=null;if(!Q.rtl)B=A.match(Q.includePrerelease?EO[KO.COERCEFULL]:EO[KO.COERCE]);else{let F=Q.includePrerelease?EO[KO.COERCERTLFULL]:EO[KO.COERCERTL],W;while((W=F.exec(A))&&(!B||B.index+B[0].length!==A.length)){if(!B||W.index+W[0].length!==B.index+B[0].length)B=W;F.lastIndex=W.index+W[1].length+W[2].length}F.lastIndex=-1}if(B===null)return null;let Y=B[2],J=B[3]||"0",C=B[4]||"0",X=Q.includePrerelease&&B[5]?`-${B[5]}`:"",G=Q.includePrerelease&&B[6]?`+${B[6]}`:"";return HTB(`${Y}.${J}.${C}${X}${G}`,Q)};TyA.exports=DTB});var vyA=R((a_Y,_yA)=>{class kyA{constructor(){this.max=1000,this.map=new Map}get(A){let Q=this.map.get(A);if(Q===void 0)return;else return this.map.delete(A),this.map.set(A,Q),Q}delete(A){return this.map.delete(A)}set(A,Q){if(!this.delete(A)&&Q!==void 0){if(this.map.size>=this.max){let Y=this.map.keys().next().value;this.delete(Y)}this.map.set(A,Q)}return this}}_yA.exports=kyA});var _5=R((o_Y,xyA)=>{var NTB=/\s+/g;class dN{constructor(A,Q){if(Q=qTB(Q),A instanceof dN)if(A.loose===!!Q.loose&&A.includePrerelease===!!Q.includePrerelease)return A;else return new dN(A.raw,Q);if(A instanceof Pl)return this.raw=A.value,this.set=[[A]],this.formatted=void 0,this;if(this.options=Q,this.loose=!!Q.loose,this.includePrerelease=!!Q.includePrerelease,this.raw=A.trim().replace(NTB," "),this.set=this.raw.split("||").map((B)=>this.parseRange(B.trim())).filter((B)=>B.length),!this.set.length)throw TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let B=this.set[0];if(this.set=this.set.filter((Y)=>!gyA(Y[0])),this.set.length===0)this.set=[B];else if(this.set.length>1){for(let Y of this.set)if(Y.length===1&&PTB(Y[0])){this.set=[Y];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let A=0;A0)this.formatted+="||";let Q=this.set[A];for(let B=0;B0)this.formatted+=" ";this.formatted+=Q[B].toString().trim()}}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(A){let B=((this.options.includePrerelease&&jTB)|(this.options.loose&&OTB))+":"+A,Y=yyA.get(B);if(Y)return Y;let J=this.options.loose,C=J?c9[W9.HYPHENRANGELOOSE]:c9[W9.HYPHENRANGE];A=A.replace(C,fTB(this.options.includePrerelease)),E0("hyphen replace",A),A=A.replace(c9[W9.COMPARATORTRIM],zTB),E0("comparator trim",A),A=A.replace(c9[W9.TILDETRIM],RTB),E0("tilde trim",A),A=A.replace(c9[W9.CARETTRIM],wTB),E0("caret trim",A);let X=A.split(" ").map((Z)=>TTB(Z,this.options)).join(" ").split(/\s+/).map((Z)=>xTB(Z,this.options));if(J)X=X.filter((Z)=>{return E0("loose invalid filter",Z,this.options),!!Z.match(c9[W9.COMPARATORLOOSE])});E0("range list",X);let G=new Map,F=X.map((Z)=>new Pl(Z,this.options));for(let Z of F){if(gyA(Z))return[Z];G.set(Z.value,Z)}if(G.size>1&&G.has(""))G.delete("");let W=[...G.values()];return yyA.set(B,W),W}intersects(A,Q){if(!(A instanceof dN))throw TypeError("a Range is required");return this.set.some((B)=>{return hyA(B,Q)&&A.set.some((Y)=>{return hyA(Y,Q)&&B.every((J)=>{return Y.every((C)=>{return J.intersects(C,Q)})})})})}test(A){if(!A)return!1;if(typeof A==="string")try{A=new MTB(A,this.options)}catch(Q){return!1}for(let Q=0;QA.value==="<0.0.0-0",PTB=(A)=>A.value==="",hyA=(A,Q)=>{let B=!0,Y=A.slice(),J=Y.pop();while(B&&Y.length)B=Y.every((C)=>{return J.intersects(C,Q)}),J=Y.pop();return B},TTB=(A,Q)=>{return E0("comp",A,Q),A=_TB(A,Q),E0("caret",A),A=STB(A,Q),E0("tildes",A),A=yTB(A,Q),E0("xrange",A),A=hTB(A,Q),E0("stars",A),A},Z9=(A)=>!A||A.toLowerCase()==="x"||A==="*",STB=(A,Q)=>{return A.trim().split(/\s+/).map((B)=>kTB(B,Q)).join(" ")},kTB=(A,Q)=>{let B=Q.loose?c9[W9.TILDELOOSE]:c9[W9.TILDE];return A.replace(B,(Y,J,C,X,G)=>{E0("tilde",A,Y,J,C,X,G);let F;if(Z9(J))F="";else if(Z9(C))F=`>=${J}.0.0 <${+J+1}.0.0-0`;else if(Z9(X))F=`>=${J}.${C}.0 <${J}.${+C+1}.0-0`;else if(G)E0("replaceTilde pr",G),F=`>=${J}.${C}.${X}-${G} <${J}.${+C+1}.0-0`;else F=`>=${J}.${C}.${X} <${J}.${+C+1}.0-0`;return E0("tilde return",F),F})},_TB=(A,Q)=>{return A.trim().split(/\s+/).map((B)=>vTB(B,Q)).join(" ")},vTB=(A,Q)=>{E0("caret",A,Q);let B=Q.loose?c9[W9.CARETLOOSE]:c9[W9.CARET],Y=Q.includePrerelease?"-0":"";return A.replace(B,(J,C,X,G,F)=>{E0("caret",A,J,C,X,G,F);let W;if(Z9(C))W="";else if(Z9(X))W=`>=${C}.0.0${Y} <${+C+1}.0.0-0`;else if(Z9(G))if(C==="0")W=`>=${C}.${X}.0${Y} <${C}.${+X+1}.0-0`;else W=`>=${C}.${X}.0${Y} <${+C+1}.0.0-0`;else if(F)if(E0("replaceCaret pr",F),C==="0")if(X==="0")W=`>=${C}.${X}.${G}-${F} <${C}.${X}.${+G+1}-0`;else W=`>=${C}.${X}.${G}-${F} <${C}.${+X+1}.0-0`;else W=`>=${C}.${X}.${G}-${F} <${+C+1}.0.0-0`;else if(E0("no pr"),C==="0")if(X==="0")W=`>=${C}.${X}.${G}${Y} <${C}.${X}.${+G+1}-0`;else W=`>=${C}.${X}.${G}${Y} <${C}.${+X+1}.0-0`;else W=`>=${C}.${X}.${G} <${+C+1}.0.0-0`;return E0("caret return",W),W})},yTB=(A,Q)=>{return E0("replaceXRanges",A,Q),A.split(/\s+/).map((B)=>gTB(B,Q)).join(" ")},gTB=(A,Q)=>{A=A.trim();let B=Q.loose?c9[W9.XRANGELOOSE]:c9[W9.XRANGE];return A.replace(B,(Y,J,C,X,G,F)=>{E0("xRange",A,Y,J,C,X,G,F);let W=Z9(C),Z=W||Z9(X),U=Z||Z9(G),$=U;if(J==="="&&$)J="";if(F=Q.includePrerelease?"-0":"",W)if(J===">"||J==="<")Y="<0.0.0-0";else Y="*";else if(J&&$){if(Z)X=0;if(G=0,J===">")if(J=">=",Z)C=+C+1,X=0,G=0;else X=+X+1,G=0;else if(J==="<=")if(J="<",Z)C=+C+1;else X=+X+1;if(J==="<")F="-0";Y=`${J+C}.${X}.${G}${F}`}else if(Z)Y=`>=${C}.0.0${F} <${+C+1}.0.0-0`;else if(U)Y=`>=${C}.${X}.0${F} <${C}.${+X+1}.0-0`;return E0("xRange return",Y),Y})},hTB=(A,Q)=>{return E0("replaceStars",A,Q),A.trim().replace(c9[W9.STAR],"")},xTB=(A,Q)=>{return E0("replaceGTE0",A,Q),A.trim().replace(c9[Q.includePrerelease?W9.GTE0PRE:W9.GTE0],"")},fTB=(A)=>(Q,B,Y,J,C,X,G,F,W,Z,U,$)=>{if(Z9(Y))B="";else if(Z9(J))B=`>=${Y}.0.0${A?"-0":""}`;else if(Z9(C))B=`>=${Y}.${J}.0${A?"-0":""}`;else if(X)B=`>=${B}`;else B=`>=${B}${A?"-0":""}`;if(Z9(W))F="";else if(Z9(Z))F=`<${+W+1}.0.0-0`;else if(Z9(U))F=`<${W}.${+Z+1}.0-0`;else if($)F=`<=${W}.${Z}.${U}-${$}`;else if(A)F=`<${W}.${Z}.${+U+1}-0`;else F=`<=${F}`;return`${B} ${F}`.trim()},bTB=(A,Q,B)=>{for(let Y=0;Y0){let J=A[Y].semver;if(J.major===Q.major&&J.minor===Q.minor&&J.patch===Q.patch)return!0}}return!1}return!0}});var cN=R((t_Y,cyA)=>{var lN=Symbol("SemVer ANY");class VO{static get ANY(){return lN}constructor(A,Q){if(Q=fyA(Q),A instanceof VO)if(A.loose===!!Q.loose)return A;else A=A.value;if(A=A.trim().split(/\s+/).join(" "),Sl("comparator",A,Q),this.options=Q,this.loose=!!Q.loose,this.parse(A),this.semver===lN)this.value="";else this.value=this.operator+this.semver.version;Sl("comp",this)}parse(A){let Q=this.options.loose?byA[myA.COMPARATORLOOSE]:byA[myA.COMPARATOR],B=A.match(Q);if(!B)throw TypeError(`Invalid comparator: ${A}`);if(this.operator=B[1]!==void 0?B[1]:"",this.operator==="=")this.operator="";if(!B[2])this.semver=lN;else this.semver=new uyA(B[2],this.options.loose)}toString(){return this.value}test(A){if(Sl("Comparator.test",A,this.options.loose),this.semver===lN||A===lN)return!0;if(typeof A==="string")try{A=new uyA(A,this.options)}catch(Q){return!1}return Tl(A,this.operator,this.semver,this.options)}intersects(A,Q){if(!(A instanceof VO))throw TypeError("a Comparator is required");if(this.operator===""){if(this.value==="")return!0;return new dyA(A.value,Q).test(this.value)}else if(A.operator===""){if(A.value==="")return!0;return new dyA(this.value,Q).test(A.semver)}if(Q=fyA(Q),Q.includePrerelease&&(this.value==="<0.0.0-0"||A.value==="<0.0.0-0"))return!1;if(!Q.includePrerelease&&(this.value.startsWith("<0.0.0")||A.value.startsWith("<0.0.0")))return!1;if(this.operator.startsWith(">")&&A.operator.startsWith(">"))return!0;if(this.operator.startsWith("<")&&A.operator.startsWith("<"))return!0;if(this.semver.version===A.semver.version&&this.operator.includes("=")&&A.operator.includes("="))return!0;if(Tl(this.semver,"<",A.semver,Q)&&this.operator.startsWith(">")&&A.operator.startsWith("<"))return!0;if(Tl(this.semver,">",A.semver,Q)&&this.operator.startsWith("<")&&A.operator.startsWith(">"))return!0;return!1}}cyA.exports=VO;var fyA=CO(),{safeRe:byA,t:myA}=iE(),Tl=Ol(),Sl=mN(),uyA=jJ(),dyA=_5()});var pN=R((e_Y,lyA)=>{var mTB=_5(),uTB=(A,Q,B)=>{try{Q=new mTB(Q,B)}catch(Y){return!1}return Q.test(A)};lyA.exports=uTB});var iyA=R((AvY,pyA)=>{var dTB=_5(),cTB=(A,Q)=>new dTB(A,Q).set.map((B)=>B.map((Y)=>Y.value).join(" ").trim().split(" "));pyA.exports=cTB});var syA=R((QvY,nyA)=>{var lTB=jJ(),pTB=_5(),iTB=(A,Q,B)=>{let Y=null,J=null,C=null;try{C=new pTB(Q,B)}catch(X){return null}return A.forEach((X)=>{if(C.test(X)){if(!Y||J.compare(X)===-1)Y=X,J=new lTB(Y,B)}}),Y};nyA.exports=iTB});var ayA=R((BvY,ryA)=>{var nTB=jJ(),sTB=_5(),rTB=(A,Q,B)=>{let Y=null,J=null,C=null;try{C=new sTB(Q,B)}catch(X){return null}return A.forEach((X)=>{if(C.test(X)){if(!Y||J.compare(X)===1)Y=X,J=new nTB(Y,B)}}),Y};ryA.exports=rTB});var eyA=R((YvY,tyA)=>{var kl=jJ(),aTB=_5(),oyA=uN(),oTB=(A,Q)=>{A=new aTB(A,Q);let B=new kl("0.0.0");if(A.test(B))return B;if(B=new kl("0.0.0-0"),A.test(B))return B;B=null;for(let Y=0;Y{let G=new kl(X.semver.version);switch(X.operator){case">":if(G.prerelease.length===0)G.patch++;else G.prerelease.push(0);G.raw=G.format();case"":case">=":if(!C||oyA(G,C))C=G;break;case"<":case"<=":break;default:throw Error(`Unexpected operation: ${X.operator}`)}}),C&&(!B||oyA(B,C)))B=C}if(B&&A.test(B))return B;return null};tyA.exports=oTB});var QgA=R((JvY,AgA)=>{var tTB=_5(),eTB=(A,Q)=>{try{return new tTB(A,Q).range||"*"}catch(B){return null}};AgA.exports=eTB});var IO=R((CvY,CgA)=>{var ASB=jJ(),JgA=cN(),{ANY:QSB}=JgA,BSB=_5(),YSB=pN(),BgA=uN(),YgA=ZO(),JSB=UO(),CSB=$O(),XSB=(A,Q,B,Y)=>{A=new ASB(A,Y),Q=new BSB(Q,Y);let J,C,X,G,F;switch(B){case">":J=BgA,C=JSB,X=YgA,G=">",F=">=";break;case"<":J=YgA,C=CSB,X=BgA,G="<",F="<=";break;default:throw TypeError('Must provide a hilo val of "<" or ">"')}if(YSB(A,Q,Y))return!1;for(let W=0;W{if(E.semver===QSB)E=new JgA(">=0.0.0");if(U=U||E,$=$||E,J(E.semver,U.semver,Y))U=E;else if(X(E.semver,$.semver,Y))$=E}),U.operator===G||U.operator===F)return!1;if((!$.operator||$.operator===G)&&C(A,$.semver))return!1;else if($.operator===F&&X(A,$.semver))return!1}return!0};CgA.exports=XSB});var GgA=R((XvY,XgA)=>{var GSB=IO(),FSB=(A,Q,B)=>GSB(A,Q,">",B);XgA.exports=FSB});var WgA=R((GvY,FgA)=>{var WSB=IO(),ZSB=(A,Q,B)=>WSB(A,Q,"<",B);FgA.exports=ZSB});var UgA=R((FvY,$gA)=>{var ZgA=_5(),$SB=(A,Q,B)=>{return A=new ZgA(A,B),Q=new ZgA(Q,B),A.intersects(Q,B)};$gA.exports=$SB});var KgA=R((WvY,EgA)=>{var USB=pN(),ESB=k5();EgA.exports=(A,Q,B)=>{let Y=[],J=null,C=null,X=A.sort((Z,U)=>ESB(Z,U,B));for(let Z of X)if(USB(Z,Q,B)){if(C=Z,!J)J=Z}else{if(C)Y.push([J,C]);C=null,J=null}if(J)Y.push([J,null]);let G=[];for(let[Z,U]of Y)if(Z===U)G.push(Z);else if(!U&&Z===X[0])G.push("*");else if(!U)G.push(`>=${Z}`);else if(Z===X[0])G.push(`<=${U}`);else G.push(`${Z} - ${U}`);let F=G.join(" || "),W=typeof Q.raw==="string"?Q.raw:String(Q);return F.length{var VgA=_5(),vl=cN(),{ANY:_l}=vl,iN=pN(),yl=k5(),KSB=(A,Q,B={})=>{if(A===Q)return!0;A=new VgA(A,B),Q=new VgA(Q,B);let Y=!1;A:for(let J of A.set){for(let C of Q.set){let X=ISB(J,C,B);if(Y=Y||X!==null,X)continue A}if(Y)return!1}return!0},VSB=[new vl(">=0.0.0-0")],IgA=[new vl(">=0.0.0")],ISB=(A,Q,B)=>{if(A===Q)return!0;if(A.length===1&&A[0].semver===_l)if(Q.length===1&&Q[0].semver===_l)return!0;else if(B.includePrerelease)A=VSB;else A=IgA;if(Q.length===1&&Q[0].semver===_l)if(B.includePrerelease)return!0;else Q=IgA;let Y=new Set,J,C;for(let E of A)if(E.operator===">"||E.operator===">=")J=HgA(J,E,B);else if(E.operator==="<"||E.operator==="<=")C=DgA(C,E,B);else Y.add(E.semver);if(Y.size>1)return null;let X;if(J&&C){if(X=yl(J.semver,C.semver,B),X>0)return null;else if(X===0&&(J.operator!==">="||C.operator!=="<="))return null}for(let E of Y){if(J&&!iN(E,String(J),B))return null;if(C&&!iN(E,String(C),B))return null;for(let K of Q)if(!iN(E,String(K),B))return!1;return!0}let G,F,W,Z,U=C&&!B.includePrerelease&&C.semver.prerelease.length?C.semver:!1,$=J&&!B.includePrerelease&&J.semver.prerelease.length?J.semver:!1;if(U&&U.prerelease.length===1&&C.operator==="<"&&U.prerelease[0]===0)U=!1;for(let E of Q){if(Z=Z||E.operator===">"||E.operator===">=",W=W||E.operator==="<"||E.operator==="<=",J){if($){if(E.semver.prerelease&&E.semver.prerelease.length&&E.semver.major===$.major&&E.semver.minor===$.minor&&E.semver.patch===$.patch)$=!1}if(E.operator===">"||E.operator===">="){if(G=HgA(J,E,B),G===E&&G!==J)return!1}else if(J.operator===">="&&!iN(J.semver,String(E),B))return!1}if(C){if(U){if(E.semver.prerelease&&E.semver.prerelease.length&&E.semver.major===U.major&&E.semver.minor===U.minor&&E.semver.patch===U.patch)U=!1}if(E.operator==="<"||E.operator==="<="){if(F=DgA(C,E,B),F===E&&F!==C)return!1}else if(C.operator==="<="&&!iN(C.semver,String(E),B))return!1}if(!E.operator&&(C||J)&&X!==0)return!1}if(J&&W&&!C&&X!==0)return!1;if(C&&Z&&!J&&X!==0)return!1;if($||U)return!1;return!0},HgA=(A,Q,B)=>{if(!A)return Q;let Y=yl(A.semver,Q.semver,B);return Y>0?A:Y<0?Q:Q.operator===">"&&A.operator===">="?Q:A},DgA=(A,Q,B)=>{if(!A)return Q;let Y=yl(A.semver,Q.semver,B);return Y<0?A:Y>0?Q:Q.operator==="<"&&A.operator==="<="?Q:A};NgA.exports=KSB});var RgA=R(($vY,zgA)=>{var gl=iE(),qgA=bN(),HSB=jJ(),MgA=Rl(),DSB=cZ(),NSB=nvA(),LSB=rvA(),qSB=tvA(),MSB=QyA(),zSB=YyA(),RSB=CyA(),wSB=GyA(),jSB=WyA(),OSB=k5(),PSB=EyA(),TSB=VyA(),SSB=WO(),kSB=NyA(),_SB=qyA(),vSB=uN(),ySB=ZO(),gSB=wl(),hSB=jl(),xSB=$O(),fSB=UO(),bSB=Ol(),mSB=SyA(),uSB=cN(),dSB=_5(),cSB=pN(),lSB=iyA(),pSB=syA(),iSB=ayA(),nSB=eyA(),sSB=QgA(),rSB=IO(),aSB=GgA(),oSB=WgA(),tSB=UgA(),eSB=KgA(),AkB=LgA();zgA.exports={parse:DSB,valid:NSB,clean:LSB,inc:qSB,diff:MSB,major:zSB,minor:RSB,patch:wSB,prerelease:jSB,compare:OSB,rcompare:PSB,compareLoose:TSB,compareBuild:SSB,sort:kSB,rsort:_SB,gt:vSB,lt:ySB,eq:gSB,neq:hSB,gte:xSB,lte:fSB,cmp:bSB,coerce:mSB,Comparator:uSB,Range:dSB,satisfies:cSB,toComparators:lSB,maxSatisfying:pSB,minSatisfying:iSB,minVersion:nSB,validRange:sSB,outside:rSB,gtr:aSB,ltr:oSB,intersects:tSB,simplifyRange:eSB,subset:AkB,SemVer:HSB,re:gl.re,src:gl.src,tokens:gl.t,SEMVER_SPEC_VERSION:qgA.SEMVER_SPEC_VERSION,RELEASE_TYPES:qgA.RELEASE_TYPES,compareIdentifiers:MgA.compareIdentifiers,rcompareIdentifiers:MgA.rcompareIdentifiers}});var xl=R((UvY,OgA)=>{function hl(A){return typeof A==="function"}var $9=console.error.bind(console);function nN(A,Q,B){var Y=!!A[Q]&&A.propertyIsEnumerable(Q);Object.defineProperty(A,Q,{configurable:!0,enumerable:Y,writable:!0,value:B})}function sN(A){if(A&&A.logger)if(!hl(A.logger))$9("new logger isn't a function, not replacing");else $9=A.logger}function wgA(A,Q,B){if(!A||!A[Q]){$9("no original function "+Q+" to wrap");return}if(!B){$9("no wrapper function"),$9(Error().stack);return}if(!hl(A[Q])||!hl(B)){$9("original object and wrapper must be functions");return}var Y=A[Q],J=B(Y,Q);return nN(J,"__original",Y),nN(J,"__unwrap",function(){if(A[Q]===J)nN(A,Q,Y)}),nN(J,"__wrapped",!0),nN(A,Q,J),J}function QkB(A,Q,B){if(!A){$9("must provide one or more modules to patch"),$9(Error().stack);return}else if(!Array.isArray(A))A=[A];if(!(Q&&Array.isArray(Q))){$9("must provide one or more functions to wrap on modules");return}A.forEach(function(Y){Q.forEach(function(J){wgA(Y,J,B)})})}function jgA(A,Q){if(!A||!A[Q]){$9("no function to unwrap."),$9(Error().stack);return}if(!A[Q].__unwrap)$9("no original to unwrap to -- has "+Q+" already been unwrapped?");else return A[Q].__unwrap()}function BkB(A,Q){if(!A){$9("must provide one or more modules to patch"),$9(Error().stack);return}else if(!Array.isArray(A))A=[A];if(!(Q&&Array.isArray(Q))){$9("must provide one or more functions to unwrap on modules");return}A.forEach(function(B){Q.forEach(function(Y){jgA(B,Y)})})}sN.wrap=wgA;sN.massWrap=QkB;sN.unwrap=jgA;sN.massUnwrap=BkB;OgA.exports=sN});var kgA=R((TgA)=>{Object.defineProperty(TgA,"__esModule",{value:!0});TgA.InstrumentationAbstract=void 0;var fl=yA(),YkB=ql(),HO=xl();class PgA{constructor(A,Q,B){this.instrumentationName=A,this.instrumentationVersion=Q,this._config={},this._wrap=HO.wrap,this._unwrap=HO.unwrap,this._massWrap=HO.massWrap,this._massUnwrap=HO.massUnwrap,this.setConfig(B),this._diag=fl.diag.createComponentLogger({namespace:A}),this._tracer=fl.trace.getTracer(A,Q),this._meter=fl.metrics.getMeter(A,Q),this._logger=YkB.logs.getLogger(A,Q),this._updateMetricInstruments()}get meter(){return this._meter}setMeterProvider(A){this._meter=A.getMeter(this.instrumentationName,this.instrumentationVersion),this._updateMetricInstruments()}get logger(){return this._logger}setLoggerProvider(A){this._logger=A.getLogger(this.instrumentationName,this.instrumentationVersion)}getModuleDefinitions(){var A;let Q=(A=this.init())!==null&&A!==void 0?A:[];if(!Array.isArray(Q))return[Q];return Q}_updateMetricInstruments(){return}getConfig(){return this._config}setConfig(A){this._config=Object.assign({enabled:!0},A)}setTracerProvider(A){this._tracer=A.getTracer(this.instrumentationName,this.instrumentationVersion)}get tracer(){return this._tracer}_runSpanCustomizationHook(A,Q,B,Y){if(!A)return;try{A(B,Y)}catch(J){this._diag.error("Error running span customization hook due to exception in handler",{triggerName:Q},J)}}}TgA.InstrumentationAbstract=PgA});var vgA=R((KvY,_gA)=>{var sE=1000,rE=sE*60,aE=rE*60,lZ=aE*24,JkB=lZ*7,CkB=lZ*365.25;_gA.exports=function(A,Q){Q=Q||{};var B=typeof A;if(B==="string"&&A.length>0)return XkB(A);else if(B==="number"&&isFinite(A))return Q.long?FkB(A):GkB(A);throw Error("val is not a non-empty string or a valid number. val="+JSON.stringify(A))};function XkB(A){if(A=String(A),A.length>100)return;var Q=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(A);if(!Q)return;var B=parseFloat(Q[1]),Y=(Q[2]||"ms").toLowerCase();switch(Y){case"years":case"year":case"yrs":case"yr":case"y":return B*CkB;case"weeks":case"week":case"w":return B*JkB;case"days":case"day":case"d":return B*lZ;case"hours":case"hour":case"hrs":case"hr":case"h":return B*aE;case"minutes":case"minute":case"mins":case"min":case"m":return B*rE;case"seconds":case"second":case"secs":case"sec":case"s":return B*sE;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return B;default:return}}function GkB(A){var Q=Math.abs(A);if(Q>=lZ)return Math.round(A/lZ)+"d";if(Q>=aE)return Math.round(A/aE)+"h";if(Q>=rE)return Math.round(A/rE)+"m";if(Q>=sE)return Math.round(A/sE)+"s";return A+"ms"}function FkB(A){var Q=Math.abs(A);if(Q>=lZ)return DO(A,Q,lZ,"day");if(Q>=aE)return DO(A,Q,aE,"hour");if(Q>=rE)return DO(A,Q,rE,"minute");if(Q>=sE)return DO(A,Q,sE,"second");return A+" ms"}function DO(A,Q,B,Y){var J=Q>=B*1.5;return Math.round(A/B)+" "+Y+(J?"s":"")}});var bl=R((VvY,ygA)=>{function WkB(A){B.debug=B,B.default=B,B.coerce=F,B.disable=X,B.enable=J,B.enabled=G,B.humanize=vgA(),B.destroy=W,Object.keys(A).forEach((Z)=>{B[Z]=A[Z]}),B.names=[],B.skips=[],B.formatters={};function Q(Z){let U=0;for(let $=0;${if(N==="%%")return"%";z++;let w=B.formatters[q];if(typeof w==="function"){let P=V[z];N=w.call(H,P),V.splice(z,1),z--}return N}),B.formatArgs.call(H,V),(H.log||B.log).apply(H,V)}if(I.namespace=Z,I.useColors=B.useColors(),I.color=B.selectColor(Z),I.extend=Y,I.destroy=B.destroy,Object.defineProperty(I,"enabled",{enumerable:!0,configurable:!1,get:()=>{if($!==null)return $;if(E!==B.namespaces)E=B.namespaces,K=B.enabled(Z);return K},set:(V)=>{$=V}}),typeof B.init==="function")B.init(I);return I}function Y(Z,U){let $=B(this.namespace+(typeof U>"u"?":":U)+Z);return $.log=this.log,$}function J(Z){B.save(Z),B.namespaces=Z,B.names=[],B.skips=[];let U=(typeof Z==="string"?Z:"").trim().replace(/\s+/g,",").split(",").filter(Boolean);for(let $ of U)if($[0]==="-")B.skips.push($.slice(1));else B.names.push($)}function C(Z,U){let $=0,E=0,K=-1,I=0;while($"-"+U)].join(",");return B.enable(""),Z}function G(Z){for(let U of B.skips)if(C(Z,U))return!1;for(let U of B.names)if(C(Z,U))return!0;return!1}function F(Z){if(Z instanceof Error)return Z.stack||Z.message;return Z}function W(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return B.enable(B.load()),B}ygA.exports=WkB});var hgA=R((ggA,NO)=>{ggA.formatArgs=$kB;ggA.save=UkB;ggA.load=EkB;ggA.useColors=ZkB;ggA.storage=KkB();ggA.destroy=(()=>{let A=!1;return()=>{if(!A)A=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}})();ggA.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function ZkB(){if(typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let A;return typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&(A=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(A[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function $kB(A){if(A[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+A[0]+(this.useColors?"%c ":" ")+"+"+NO.exports.humanize(this.diff),!this.useColors)return;let Q="color: "+this.color;A.splice(1,0,Q,"color: inherit");let B=0,Y=0;A[0].replace(/%[a-zA-Z%]/g,(J)=>{if(J==="%%")return;if(B++,J==="%c")Y=B}),A.splice(Y,0,Q)}ggA.log=console.debug||console.log||(()=>{});function UkB(A){try{if(A)ggA.storage.setItem("debug",A);else ggA.storage.removeItem("debug")}catch(Q){}}function EkB(){let A;try{A=ggA.storage.getItem("debug")||ggA.storage.getItem("DEBUG")}catch(Q){}if(!A&&typeof process<"u"&&"env"in process)A=process.env.DEBUG;return A}function KkB(){try{return localStorage}catch(A){}}NO.exports=bl()(ggA);var{formatters:VkB}=NO.exports;VkB.j=function(A){try{return JSON.stringify(A)}catch(Q){return"[UnexpectedJSONParseError]: "+Q.message}}});var fgA=R((HvY,xgA)=>{xgA.exports=(A,Q)=>{Q=Q||process.argv;let B=A.startsWith("-")?"":A.length===1?"-":"--",Y=Q.indexOf(B+A),J=Q.indexOf("--");return Y!==-1&&(J===-1?!0:Y{var zkB=u("os"),oC=fgA(),OJ=process.env,oE;if(oC("no-color")||oC("no-colors")||oC("color=false"))oE=!1;else if(oC("color")||oC("colors")||oC("color=true")||oC("color=always"))oE=!0;if("FORCE_COLOR"in OJ)oE=OJ.FORCE_COLOR.length===0||parseInt(OJ.FORCE_COLOR,10)!==0;function RkB(A){if(A===0)return!1;return{level:A,hasBasic:!0,has256:A>=2,has16m:A>=3}}function wkB(A){if(oE===!1)return 0;if(oC("color=16m")||oC("color=full")||oC("color=truecolor"))return 3;if(oC("color=256"))return 2;if(A&&!A.isTTY&&oE!==!0)return 0;let Q=oE?1:0;if(process.platform==="win32"){let B=zkB.release().split(".");if(Number(process.versions.node.split(".")[0])>=8&&Number(B[0])>=10&&Number(B[2])>=10586)return Number(B[2])>=14931?3:2;return 1}if("CI"in OJ){if(["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI"].some((B)=>(B in OJ))||OJ.CI_NAME==="codeship")return 1;return Q}if("TEAMCITY_VERSION"in OJ)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(OJ.TEAMCITY_VERSION)?1:0;if(OJ.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in OJ){let B=parseInt((OJ.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(OJ.TERM_PROGRAM){case"iTerm.app":return B>=3?3:2;case"Apple_Terminal":return 2}}if(/-256(color)?$/i.test(OJ.TERM))return 2;if(/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(OJ.TERM))return 1;if("COLORTERM"in OJ)return 1;if(OJ.TERM==="dumb")return Q;return Q}function ml(A){let Q=wkB(A);return RkB(Q)}bgA.exports={supportsColor:ml,stdout:ml(process.stdout),stderr:ml(process.stderr)}});var lgA=R((dgA,qO)=>{var jkB=u("tty"),LO=u("util");dgA.init=vkB;dgA.log=SkB;dgA.formatArgs=PkB;dgA.save=kkB;dgA.load=_kB;dgA.useColors=OkB;dgA.destroy=LO.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");dgA.colors=[6,2,3,4,5,1];try{let A=mgA();if(A&&(A.stderr||A).level>=2)dgA.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221]}catch(A){}dgA.inspectOpts=Object.keys(process.env).filter((A)=>{return/^debug_/i.test(A)}).reduce((A,Q)=>{let B=Q.substring(6).toLowerCase().replace(/_([a-z])/g,(J,C)=>{return C.toUpperCase()}),Y=process.env[Q];if(/^(yes|on|true|enabled)$/i.test(Y))Y=!0;else if(/^(no|off|false|disabled)$/i.test(Y))Y=!1;else if(Y==="null")Y=null;else Y=Number(Y);return A[B]=Y,A},{});function OkB(){return"colors"in dgA.inspectOpts?Boolean(dgA.inspectOpts.colors):jkB.isatty(process.stderr.fd)}function PkB(A){let{namespace:Q,useColors:B}=this;if(B){let Y=this.color,J="\x1B[3"+(Y<8?Y:"8;5;"+Y),C=` ${J};1m${Q} \x1B[0m`;A[0]=C+A[0].split(` +`;throw Error($);function E(I){var V=Xu(mC.join(I,"prebuilds")).map(cHA),H=V.filter(lHA(nw,iw)).sort(pHA)[0];if(!H)return;return K(mC.join(I,"prebuilds",H.name))}function K(I){var V=Xu(I).map(iHA),H=V.filter(nHA(Yu,Ju)),D=H.sort(sHA(Yu))[0];if(D)return mC.join(I,D.file)}};function Xu(A){try{return rWB.readdirSync(A)}catch(Q){return[]}}function xHA(A,Q){var B=Xu(A).filter(Q);return B[0]&&mC.join(A,B[0])}function fHA(A){return/\.node$/.test(A)}function cHA(A){var Q=A.split("-");if(Q.length!==2)return;var B=Q[0],Y=Q[1].split("+");if(!B)return;if(!Y.length)return;if(!Y.every(Boolean))return;return{name:A,platform:B,architectures:Y}}function lHA(A,Q){return function(B){if(B==null)return!1;if(B.platform!==A)return!1;return B.architectures.includes(Q)}}function pHA(A,Q){return A.architectures.length-Q.architectures.length}function iHA(A){var Q=A.split("."),B=Q.pop(),Y={file:A,specificity:0};if(B!=="node")return;for(var J=0;JB.specificity?-1:1;else return 0}}function AZB(){return!!(process.versions&&process.versions.nw)}function QZB(){if(process.versions&&process.versions.electron)return!0;if(process.env.ELECTRON_RUN_AS_NODE)return!0;return typeof window<"u"&&window.process&&window.process.type==="renderer"}function BZB(A){if(A!=="linux")return!1;let{familySync:Q,MUSL:B}=dI();return Q()===B}a1.parseTags=iHA;a1.matchTags=nHA;a1.compareTags=sHA;a1.parseTuple=cHA;a1.matchTuple=lHA;a1.compareTuples=pHA});var oHA=R((GLY,Wu)=>{var Fu=typeof __webpack_require__==="function"?__non_webpack_require__:u;if(typeof Fu.addon==="function")Wu.exports=Fu.addon.bind(Fu);else Wu.exports=aHA()});var eHA=R((WLY,tHA)=>{var __dirname="/home/ab/GitHub/hytopia/work1/server/node_modules/msgpackr-extract";tHA.exports=oHA()(__dirname)});var eNA=R((oNA)=>{Object.defineProperty(oNA,"__esModule",{value:!0});oNA._globalThis=void 0;oNA._globalThis=typeof globalThis==="object"?globalThis:global});var ALA=R((gZ)=>{var c4B=gZ&&gZ.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),l4B=gZ&&gZ.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))c4B(Q,A,B)};Object.defineProperty(gZ,"__esModule",{value:!0});l4B(eNA(),gZ)});var QLA=R((xZ)=>{var p4B=xZ&&xZ.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),i4B=xZ&&xZ.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))p4B(Q,A,B)};Object.defineProperty(xZ,"__esModule",{value:!0});i4B(ALA(),xZ)});var dd=R((BLA)=>{Object.defineProperty(BLA,"__esModule",{value:!0});BLA.VERSION=void 0;BLA.VERSION="1.9.0"});var FLA=R((XLA)=>{Object.defineProperty(XLA,"__esModule",{value:!0});XLA.isCompatible=XLA._makeCompatibilityCheck=void 0;var n4B=dd(),JLA=/^(\d+)\.(\d+)\.(\d+)(-(.+))?$/;function CLA(A){let Q=new Set([A]),B=new Set,Y=A.match(JLA);if(!Y)return()=>!1;let J={major:+Y[1],minor:+Y[2],patch:+Y[3],prerelease:Y[4]};if(J.prerelease!=null)return function(F){return F===A};function C(G){return B.add(G),!1}function X(G){return Q.add(G),!0}return function(F){if(Q.has(F))return!0;if(B.has(F))return!1;let W=F.match(JLA);if(!W)return C(F);let Z={major:+W[1],minor:+W[2],patch:+W[3],prerelease:W[4]};if(Z.prerelease!=null)return C(F);if(J.major!==Z.major)return C(F);if(J.major===0){if(J.minor===Z.minor&&J.patch<=Z.patch)return X(F);return C(F)}if(J.minor<=Z.minor)return X(F);return C(F)}}XLA._makeCompatibilityCheck=CLA;XLA.isCompatible=CLA(n4B.VERSION)});var fZ=R((WLA)=>{Object.defineProperty(WLA,"__esModule",{value:!0});WLA.unregisterGlobal=WLA.getGlobal=WLA.registerGlobal=void 0;var r4B=QLA(),cE=dd(),a4B=FLA(),o4B=cE.VERSION.split(".")[0],wN=Symbol.for(`opentelemetry.js.api.${o4B}`),jN=r4B._globalThis;function t4B(A,Q,B,Y=!1){var J;let C=jN[wN]=(J=jN[wN])!==null&&J!==void 0?J:{version:cE.VERSION};if(!Y&&C[A]){let X=Error(`@opentelemetry/api: Attempted duplicate registration of API: ${A}`);return B.error(X.stack||X.message),!1}if(C.version!==cE.VERSION){let X=Error(`@opentelemetry/api: Registration of version v${C.version} for ${A} does not match previously registered API v${cE.VERSION}`);return B.error(X.stack||X.message),!1}return C[A]=Q,B.debug(`@opentelemetry/api: Registered a global for ${A} v${cE.VERSION}.`),!0}WLA.registerGlobal=t4B;function e4B(A){var Q,B;let Y=(Q=jN[wN])===null||Q===void 0?void 0:Q.version;if(!Y||!(0,a4B.isCompatible)(Y))return;return(B=jN[wN])===null||B===void 0?void 0:B[A]}WLA.getGlobal=e4B;function AUB(A,Q){Q.debug(`@opentelemetry/api: Unregistering a global for ${A} v${cE.VERSION}.`);let B=jN[wN];if(B)delete B[A]}WLA.unregisterGlobal=AUB});var KLA=R((ULA)=>{Object.defineProperty(ULA,"__esModule",{value:!0});ULA.DiagComponentLogger=void 0;var YUB=fZ();class $LA{constructor(A){this._namespace=A.namespace||"DiagComponentLogger"}debug(...A){return ON("debug",this._namespace,A)}error(...A){return ON("error",this._namespace,A)}info(...A){return ON("info",this._namespace,A)}warn(...A){return ON("warn",this._namespace,A)}verbose(...A){return ON("verbose",this._namespace,A)}}ULA.DiagComponentLogger=$LA;function ON(A,Q,B){let Y=(0,YUB.getGlobal)("diag");if(!Y)return;return B.unshift(Q),Y[A](...B)}});var Pj=R((VLA)=>{Object.defineProperty(VLA,"__esModule",{value:!0});VLA.DiagLogLevel=void 0;var JUB;(function(A){A[A.NONE=0]="NONE",A[A.ERROR=30]="ERROR",A[A.WARN=50]="WARN",A[A.INFO=60]="INFO",A[A.DEBUG=70]="DEBUG",A[A.VERBOSE=80]="VERBOSE",A[A.ALL=9999]="ALL"})(JUB=VLA.DiagLogLevel||(VLA.DiagLogLevel={}))});var DLA=R((ILA)=>{Object.defineProperty(ILA,"__esModule",{value:!0});ILA.createLogLevelDiagLogger=void 0;var eX=Pj();function CUB(A,Q){if(AeX.DiagLogLevel.ALL)A=eX.DiagLogLevel.ALL;Q=Q||{};function B(Y,J){let C=Q[Y];if(typeof C==="function"&&A>=J)return C.bind(Q);return function(){}}return{error:B("error",eX.DiagLogLevel.ERROR),warn:B("warn",eX.DiagLogLevel.WARN),info:B("info",eX.DiagLogLevel.INFO),debug:B("debug",eX.DiagLogLevel.DEBUG),verbose:B("verbose",eX.DiagLogLevel.VERBOSE)}}ILA.createLogLevelDiagLogger=CUB});var bZ=R((LLA)=>{Object.defineProperty(LLA,"__esModule",{value:!0});LLA.DiagAPI=void 0;var XUB=KLA(),GUB=DLA(),NLA=Pj(),Tj=fZ(),FUB="diag";class ld{constructor(){function A(Y){return function(...J){let C=(0,Tj.getGlobal)("diag");if(!C)return;return C[Y](...J)}}let Q=this,B=(Y,J={logLevel:NLA.DiagLogLevel.INFO})=>{var C,X,G;if(Y===Q){let Z=Error("Cannot use diag as the logger for itself. Please use a DiagLogger implementation like ConsoleDiagLogger or a custom implementation");return Q.error((C=Z.stack)!==null&&C!==void 0?C:Z.message),!1}if(typeof J==="number")J={logLevel:J};let F=(0,Tj.getGlobal)("diag"),W=(0,GUB.createLogLevelDiagLogger)((X=J.logLevel)!==null&&X!==void 0?X:NLA.DiagLogLevel.INFO,Y);if(F&&!J.suppressOverrideMessage){let Z=(G=Error().stack)!==null&&G!==void 0?G:"";F.warn(`Current logger will be overwritten from ${Z}`),W.warn(`Current logger will overwrite one already registered from ${Z}`)}return(0,Tj.registerGlobal)("diag",W,Q,!0)};Q.setLogger=B,Q.disable=()=>{(0,Tj.unregisterGlobal)(FUB,Q)},Q.createComponentLogger=(Y)=>{return new XUB.DiagComponentLogger(Y)},Q.verbose=A("verbose"),Q.debug=A("debug"),Q.info=A("info"),Q.warn=A("warn"),Q.error=A("error")}static instance(){if(!this._instance)this._instance=new ld;return this._instance}}LLA.DiagAPI=ld});var RLA=R((MLA)=>{Object.defineProperty(MLA,"__esModule",{value:!0});MLA.BaggageImpl=void 0;class lE{constructor(A){this._entries=A?new Map(A):new Map}getEntry(A){let Q=this._entries.get(A);if(!Q)return;return Object.assign({},Q)}getAllEntries(){return Array.from(this._entries.entries()).map(([A,Q])=>[A,Q])}setEntry(A,Q){let B=new lE(this._entries);return B._entries.set(A,Q),B}removeEntry(A){let Q=new lE(this._entries);return Q._entries.delete(A),Q}removeEntries(...A){let Q=new lE(this._entries);for(let B of A)Q._entries.delete(B);return Q}clear(){return new lE}}MLA.BaggageImpl=lE});var OLA=R((wLA)=>{Object.defineProperty(wLA,"__esModule",{value:!0});wLA.baggageEntryMetadataSymbol=void 0;wLA.baggageEntryMetadataSymbol=Symbol("BaggageEntryMetadata")});var pd=R((PLA)=>{Object.defineProperty(PLA,"__esModule",{value:!0});PLA.baggageEntryMetadataFromString=PLA.createBaggage=void 0;var WUB=bZ(),ZUB=RLA(),$UB=OLA(),UUB=WUB.DiagAPI.instance();function EUB(A={}){return new ZUB.BaggageImpl(new Map(Object.entries(A)))}PLA.createBaggage=EUB;function KUB(A){if(typeof A!=="string")UUB.error(`Cannot create baggage metadata from unknown type: ${typeof A}`),A="";return{__TYPE__:$UB.baggageEntryMetadataSymbol,toString(){return A}}}PLA.baggageEntryMetadataFromString=KUB});var PN=R((SLA)=>{Object.defineProperty(SLA,"__esModule",{value:!0});SLA.ROOT_CONTEXT=SLA.createContextKey=void 0;function IUB(A){return Symbol.for(A)}SLA.createContextKey=IUB;class Sj{constructor(A){let Q=this;Q._currentContext=A?new Map(A):new Map,Q.getValue=(B)=>Q._currentContext.get(B),Q.setValue=(B,Y)=>{let J=new Sj(Q._currentContext);return J._currentContext.set(B,Y),J},Q.deleteValue=(B)=>{let Y=new Sj(Q._currentContext);return Y._currentContext.delete(B),Y}}}SLA.ROOT_CONTEXT=new Sj});var hLA=R((vLA)=>{Object.defineProperty(vLA,"__esModule",{value:!0});vLA.DiagConsoleLogger=void 0;var id=[{n:"error",c:"error"},{n:"warn",c:"warn"},{n:"info",c:"info"},{n:"debug",c:"debug"},{n:"verbose",c:"trace"}];class _LA{constructor(){function A(Q){return function(...B){if(console){let Y=console[Q];if(typeof Y!=="function")Y=console.log;if(typeof Y==="function")return Y.apply(console,B)}}}for(let Q=0;Q{Object.defineProperty(gLA,"__esModule",{value:!0});gLA.createNoopMeter=gLA.NOOP_OBSERVABLE_UP_DOWN_COUNTER_METRIC=gLA.NOOP_OBSERVABLE_GAUGE_METRIC=gLA.NOOP_OBSERVABLE_COUNTER_METRIC=gLA.NOOP_UP_DOWN_COUNTER_METRIC=gLA.NOOP_HISTOGRAM_METRIC=gLA.NOOP_GAUGE_METRIC=gLA.NOOP_COUNTER_METRIC=gLA.NOOP_METER=gLA.NoopObservableUpDownCounterMetric=gLA.NoopObservableGaugeMetric=gLA.NoopObservableCounterMetric=gLA.NoopObservableMetric=gLA.NoopHistogramMetric=gLA.NoopGaugeMetric=gLA.NoopUpDownCounterMetric=gLA.NoopCounterMetric=gLA.NoopMetric=gLA.NoopMeter=void 0;class nd{constructor(){}createGauge(A,Q){return gLA.NOOP_GAUGE_METRIC}createHistogram(A,Q){return gLA.NOOP_HISTOGRAM_METRIC}createCounter(A,Q){return gLA.NOOP_COUNTER_METRIC}createUpDownCounter(A,Q){return gLA.NOOP_UP_DOWN_COUNTER_METRIC}createObservableGauge(A,Q){return gLA.NOOP_OBSERVABLE_GAUGE_METRIC}createObservableCounter(A,Q){return gLA.NOOP_OBSERVABLE_COUNTER_METRIC}createObservableUpDownCounter(A,Q){return gLA.NOOP_OBSERVABLE_UP_DOWN_COUNTER_METRIC}addBatchObservableCallback(A,Q){}removeBatchObservableCallback(A){}}gLA.NoopMeter=nd;class pE{}gLA.NoopMetric=pE;class sd extends pE{add(A,Q){}}gLA.NoopCounterMetric=sd;class rd extends pE{add(A,Q){}}gLA.NoopUpDownCounterMetric=rd;class ad extends pE{record(A,Q){}}gLA.NoopGaugeMetric=ad;class od extends pE{record(A,Q){}}gLA.NoopHistogramMetric=od;class TN{addCallback(A){}removeCallback(A){}}gLA.NoopObservableMetric=TN;class td extends TN{}gLA.NoopObservableCounterMetric=td;class ed extends TN{}gLA.NoopObservableGaugeMetric=ed;class Ac extends TN{}gLA.NoopObservableUpDownCounterMetric=Ac;gLA.NOOP_METER=new nd;gLA.NOOP_COUNTER_METRIC=new sd;gLA.NOOP_GAUGE_METRIC=new ad;gLA.NOOP_HISTOGRAM_METRIC=new od;gLA.NOOP_UP_DOWN_COUNTER_METRIC=new rd;gLA.NOOP_OBSERVABLE_COUNTER_METRIC=new td;gLA.NOOP_OBSERVABLE_GAUGE_METRIC=new ed;gLA.NOOP_OBSERVABLE_UP_DOWN_COUNTER_METRIC=new Ac;function DUB(){return gLA.NOOP_METER}gLA.createNoopMeter=DUB});var nLA=R((iLA)=>{Object.defineProperty(iLA,"__esModule",{value:!0});iLA.ValueType=void 0;var TUB;(function(A){A[A.INT=0]="INT",A[A.DOUBLE=1]="DOUBLE"})(TUB=iLA.ValueType||(iLA.ValueType={}))});var Yc=R((sLA)=>{Object.defineProperty(sLA,"__esModule",{value:!0});sLA.defaultTextMapSetter=sLA.defaultTextMapGetter=void 0;sLA.defaultTextMapGetter={get(A,Q){if(A==null)return;return A[Q]},keys(A){if(A==null)return[];return Object.keys(A)}};sLA.defaultTextMapSetter={set(A,Q,B){if(A==null)return;A[Q]=B}}});var eLA=R((oLA)=>{Object.defineProperty(oLA,"__esModule",{value:!0});oLA.NoopContextManager=void 0;var kUB=PN();class aLA{active(){return kUB.ROOT_CONTEXT}with(A,Q,B,...Y){return Q.call(B,...Y)}bind(A,Q){return Q}enable(){return this}disable(){return this}}oLA.NoopContextManager=aLA});var SN=R((QqA)=>{Object.defineProperty(QqA,"__esModule",{value:!0});QqA.ContextAPI=void 0;var _UB=eLA(),Jc=fZ(),AqA=bZ(),Cc="context",vUB=new _UB.NoopContextManager;class Xc{constructor(){}static getInstance(){if(!this._instance)this._instance=new Xc;return this._instance}setGlobalContextManager(A){return(0,Jc.registerGlobal)(Cc,A,AqA.DiagAPI.instance())}active(){return this._getContextManager().active()}with(A,Q,B,...Y){return this._getContextManager().with(A,Q,B,...Y)}bind(A,Q){return this._getContextManager().bind(A,Q)}_getContextManager(){return(0,Jc.getGlobal)(Cc)||vUB}disable(){this._getContextManager().disable(),(0,Jc.unregisterGlobal)(Cc,AqA.DiagAPI.instance())}}QqA.ContextAPI=Xc});var Fc=R((YqA)=>{Object.defineProperty(YqA,"__esModule",{value:!0});YqA.TraceFlags=void 0;var yUB;(function(A){A[A.NONE=0]="NONE",A[A.SAMPLED=1]="SAMPLED"})(yUB=YqA.TraceFlags||(YqA.TraceFlags={}))});var kj=R((JqA)=>{Object.defineProperty(JqA,"__esModule",{value:!0});JqA.INVALID_SPAN_CONTEXT=JqA.INVALID_TRACEID=JqA.INVALID_SPANID=void 0;var hUB=Fc();JqA.INVALID_SPANID="0000000000000000";JqA.INVALID_TRACEID="00000000000000000000000000000000";JqA.INVALID_SPAN_CONTEXT={traceId:JqA.INVALID_TRACEID,spanId:JqA.INVALID_SPANID,traceFlags:hUB.TraceFlags.NONE}});var _j=R((WqA)=>{Object.defineProperty(WqA,"__esModule",{value:!0});WqA.NonRecordingSpan=void 0;var gUB=kj();class FqA{constructor(A=gUB.INVALID_SPAN_CONTEXT){this._spanContext=A}spanContext(){return this._spanContext}setAttribute(A,Q){return this}setAttributes(A){return this}addEvent(A,Q){return this}addLink(A){return this}addLinks(A){return this}setStatus(A){return this}updateName(A){return this}end(A){}isRecording(){return!1}recordException(A,Q){}}WqA.NonRecordingSpan=FqA});var $c=R((UqA)=>{Object.defineProperty(UqA,"__esModule",{value:!0});UqA.getSpanContext=UqA.setSpanContext=UqA.deleteSpan=UqA.setSpan=UqA.getActiveSpan=UqA.getSpan=void 0;var xUB=PN(),fUB=_j(),bUB=SN(),Wc=(0,xUB.createContextKey)("OpenTelemetry Context Key SPAN");function Zc(A){return A.getValue(Wc)||void 0}UqA.getSpan=Zc;function mUB(){return Zc(bUB.ContextAPI.getInstance().active())}UqA.getActiveSpan=mUB;function $qA(A,Q){return A.setValue(Wc,Q)}UqA.setSpan=$qA;function uUB(A){return A.deleteValue(Wc)}UqA.deleteSpan=uUB;function dUB(A,Q){return $qA(A,new fUB.NonRecordingSpan(Q))}UqA.setSpanContext=dUB;function cUB(A){var Q;return(Q=Zc(A))===null||Q===void 0?void 0:Q.spanContext()}UqA.getSpanContext=cUB});var vj=R((HqA)=>{Object.defineProperty(HqA,"__esModule",{value:!0});HqA.wrapSpanContext=HqA.isSpanContextValid=HqA.isValidSpanId=HqA.isValidTraceId=void 0;var KqA=kj(),rUB=_j(),aUB=/^([0-9a-f]{32})$/i,oUB=/^[0-9a-f]{16}$/i;function VqA(A){return aUB.test(A)&&A!==KqA.INVALID_TRACEID}HqA.isValidTraceId=VqA;function IqA(A){return oUB.test(A)&&A!==KqA.INVALID_SPANID}HqA.isValidSpanId=IqA;function tUB(A){return VqA(A.traceId)&&IqA(A.spanId)}HqA.isSpanContextValid=tUB;function eUB(A){return new rUB.NonRecordingSpan(A)}HqA.wrapSpanContext=eUB});var Kc=R((qqA)=>{Object.defineProperty(qqA,"__esModule",{value:!0});qqA.NoopTracer=void 0;var YEB=SN(),NqA=$c(),Uc=_j(),JEB=vj(),Ec=YEB.ContextAPI.getInstance();class LqA{startSpan(A,Q,B=Ec.active()){if(Boolean(Q===null||Q===void 0?void 0:Q.root))return new Uc.NonRecordingSpan;let J=B&&(0,NqA.getSpanContext)(B);if(CEB(J)&&(0,JEB.isSpanContextValid)(J))return new Uc.NonRecordingSpan(J);else return new Uc.NonRecordingSpan}startActiveSpan(A,Q,B,Y){let J,C,X;if(arguments.length<2)return;else if(arguments.length===2)X=Q;else if(arguments.length===3)J=Q,X=B;else J=Q,C=B,X=Y;let G=C!==null&&C!==void 0?C:Ec.active(),F=this.startSpan(A,J,G),W=(0,NqA.setSpan)(G,F);return Ec.with(W,X,void 0,F)}}qqA.NoopTracer=LqA;function CEB(A){return typeof A==="object"&&typeof A.spanId==="string"&&typeof A.traceId==="string"&&typeof A.traceFlags==="number"}});var Vc=R((RqA)=>{Object.defineProperty(RqA,"__esModule",{value:!0});RqA.ProxyTracer=void 0;var XEB=Kc(),GEB=new XEB.NoopTracer;class zqA{constructor(A,Q,B,Y){this._provider=A,this.name=Q,this.version=B,this.options=Y}startSpan(A,Q,B){return this._getTracer().startSpan(A,Q,B)}startActiveSpan(A,Q,B,Y){let J=this._getTracer();return Reflect.apply(J.startActiveSpan,J,arguments)}_getTracer(){if(this._delegate)return this._delegate;let A=this._provider.getDelegateTracer(this.name,this.version,this.options);if(!A)return GEB;return this._delegate=A,this._delegate}}RqA.ProxyTracer=zqA});var TqA=R((OqA)=>{Object.defineProperty(OqA,"__esModule",{value:!0});OqA.NoopTracerProvider=void 0;var FEB=Kc();class jqA{getTracer(A,Q,B){return new FEB.NoopTracer}}OqA.NoopTracerProvider=jqA});var Ic=R((kqA)=>{Object.defineProperty(kqA,"__esModule",{value:!0});kqA.ProxyTracerProvider=void 0;var WEB=Vc(),ZEB=TqA(),$EB=new ZEB.NoopTracerProvider;class SqA{getTracer(A,Q,B){var Y;return(Y=this.getDelegateTracer(A,Q,B))!==null&&Y!==void 0?Y:new WEB.ProxyTracer(this,A,Q,B)}getDelegate(){var A;return(A=this._delegate)!==null&&A!==void 0?A:$EB}setDelegate(A){this._delegate=A}getDelegateTracer(A,Q,B){var Y;return(Y=this._delegate)===null||Y===void 0?void 0:Y.getTracer(A,Q,B)}}kqA.ProxyTracerProvider=SqA});var yqA=R((vqA)=>{Object.defineProperty(vqA,"__esModule",{value:!0});vqA.SamplingDecision=void 0;var UEB;(function(A){A[A.NOT_RECORD=0]="NOT_RECORD",A[A.RECORD=1]="RECORD",A[A.RECORD_AND_SAMPLED=2]="RECORD_AND_SAMPLED"})(UEB=vqA.SamplingDecision||(vqA.SamplingDecision={}))});var gqA=R((hqA)=>{Object.defineProperty(hqA,"__esModule",{value:!0});hqA.SpanKind=void 0;var EEB;(function(A){A[A.INTERNAL=0]="INTERNAL",A[A.SERVER=1]="SERVER",A[A.CLIENT=2]="CLIENT",A[A.PRODUCER=3]="PRODUCER",A[A.CONSUMER=4]="CONSUMER"})(EEB=hqA.SpanKind||(hqA.SpanKind={}))});var fqA=R((xqA)=>{Object.defineProperty(xqA,"__esModule",{value:!0});xqA.SpanStatusCode=void 0;var KEB;(function(A){A[A.UNSET=0]="UNSET",A[A.OK=1]="OK",A[A.ERROR=2]="ERROR"})(KEB=xqA.SpanStatusCode||(xqA.SpanStatusCode={}))});var uqA=R((bqA)=>{Object.defineProperty(bqA,"__esModule",{value:!0});bqA.validateValue=bqA.validateKey=void 0;var Lc="[_0-9a-z-*/]",VEB=`[a-z]${Lc}{0,255}`,IEB=`[a-z0-9]${Lc}{0,240}@[a-z]${Lc}{0,13}`,HEB=new RegExp(`^(?:${VEB}|${IEB})$`),DEB=/^[ -~]{0,255}[!-~]$/,NEB=/,|=/;function LEB(A){return HEB.test(A)}bqA.validateKey=LEB;function qEB(A){return DEB.test(A)&&!NEB.test(A)}bqA.validateValue=qEB});var sqA=R((iqA)=>{Object.defineProperty(iqA,"__esModule",{value:!0});iqA.TraceStateImpl=void 0;var dqA=uqA(),cqA=32,zEB=512,lqA=",",pqA="=";class qc{constructor(A){if(this._internalState=new Map,A)this._parse(A)}set(A,Q){let B=this._clone();if(B._internalState.has(A))B._internalState.delete(A);return B._internalState.set(A,Q),B}unset(A){let Q=this._clone();return Q._internalState.delete(A),Q}get(A){return this._internalState.get(A)}serialize(){return this._keys().reduce((A,Q)=>{return A.push(Q+pqA+this.get(Q)),A},[]).join(lqA)}_parse(A){if(A.length>zEB)return;if(this._internalState=A.split(lqA).reverse().reduce((Q,B)=>{let Y=B.trim(),J=Y.indexOf(pqA);if(J!==-1){let C=Y.slice(0,J),X=Y.slice(J+1,B.length);if((0,dqA.validateKey)(C)&&(0,dqA.validateValue)(X))Q.set(C,X)}return Q},new Map),this._internalState.size>cqA)this._internalState=new Map(Array.from(this._internalState.entries()).reverse().slice(0,cqA))}_keys(){return Array.from(this._internalState.keys()).reverse()}_clone(){let A=new qc;return A._internalState=new Map(this._internalState),A}}iqA.TraceStateImpl=qc});var oqA=R((rqA)=>{Object.defineProperty(rqA,"__esModule",{value:!0});rqA.createTraceState=void 0;var REB=sqA();function wEB(A){return new REB.TraceStateImpl(A)}rqA.createTraceState=wEB});var AMA=R((tqA)=>{Object.defineProperty(tqA,"__esModule",{value:!0});tqA.context=void 0;var jEB=SN();tqA.context=jEB.ContextAPI.getInstance()});var YMA=R((QMA)=>{Object.defineProperty(QMA,"__esModule",{value:!0});QMA.diag=void 0;var OEB=bZ();QMA.diag=OEB.DiagAPI.instance()});var XMA=R((JMA)=>{Object.defineProperty(JMA,"__esModule",{value:!0});JMA.NOOP_METER_PROVIDER=JMA.NoopMeterProvider=void 0;var PEB=Qc();class Mc{getMeter(A,Q,B){return PEB.NOOP_METER}}JMA.NoopMeterProvider=Mc;JMA.NOOP_METER_PROVIDER=new Mc});var ZMA=R((FMA)=>{Object.defineProperty(FMA,"__esModule",{value:!0});FMA.MetricsAPI=void 0;var SEB=XMA(),zc=fZ(),GMA=bZ(),Rc="metrics";class wc{constructor(){}static getInstance(){if(!this._instance)this._instance=new wc;return this._instance}setGlobalMeterProvider(A){return(0,zc.registerGlobal)(Rc,A,GMA.DiagAPI.instance())}getMeterProvider(){return(0,zc.getGlobal)(Rc)||SEB.NOOP_METER_PROVIDER}getMeter(A,Q,B){return this.getMeterProvider().getMeter(A,Q,B)}disable(){(0,zc.unregisterGlobal)(Rc,GMA.DiagAPI.instance())}}FMA.MetricsAPI=wc});var EMA=R(($MA)=>{Object.defineProperty($MA,"__esModule",{value:!0});$MA.metrics=void 0;var kEB=ZMA();$MA.metrics=kEB.MetricsAPI.getInstance()});var HMA=R((VMA)=>{Object.defineProperty(VMA,"__esModule",{value:!0});VMA.NoopTextMapPropagator=void 0;class KMA{inject(A,Q){}extract(A,Q){return A}fields(){return[]}}VMA.NoopTextMapPropagator=KMA});var qMA=R((NMA)=>{Object.defineProperty(NMA,"__esModule",{value:!0});NMA.deleteBaggage=NMA.setBaggage=NMA.getActiveBaggage=NMA.getBaggage=void 0;var _EB=SN(),vEB=PN(),jc=(0,vEB.createContextKey)("OpenTelemetry Baggage Key");function DMA(A){return A.getValue(jc)||void 0}NMA.getBaggage=DMA;function yEB(){return DMA(_EB.ContextAPI.getInstance().active())}NMA.getActiveBaggage=yEB;function hEB(A,Q){return A.setValue(jc,Q)}NMA.setBaggage=hEB;function gEB(A){return A.deleteValue(jc)}NMA.deleteBaggage=gEB});var jMA=R((RMA)=>{Object.defineProperty(RMA,"__esModule",{value:!0});RMA.PropagationAPI=void 0;var Oc=fZ(),mEB=HMA(),MMA=Yc(),yj=qMA(),uEB=pd(),zMA=bZ(),Pc="propagation",dEB=new mEB.NoopTextMapPropagator;class Tc{constructor(){this.createBaggage=uEB.createBaggage,this.getBaggage=yj.getBaggage,this.getActiveBaggage=yj.getActiveBaggage,this.setBaggage=yj.setBaggage,this.deleteBaggage=yj.deleteBaggage}static getInstance(){if(!this._instance)this._instance=new Tc;return this._instance}setGlobalPropagator(A){return(0,Oc.registerGlobal)(Pc,A,zMA.DiagAPI.instance())}inject(A,Q,B=MMA.defaultTextMapSetter){return this._getGlobalPropagator().inject(A,Q,B)}extract(A,Q,B=MMA.defaultTextMapGetter){return this._getGlobalPropagator().extract(A,Q,B)}fields(){return this._getGlobalPropagator().fields()}disable(){(0,Oc.unregisterGlobal)(Pc,zMA.DiagAPI.instance())}_getGlobalPropagator(){return(0,Oc.getGlobal)(Pc)||dEB}}RMA.PropagationAPI=Tc});var TMA=R((OMA)=>{Object.defineProperty(OMA,"__esModule",{value:!0});OMA.propagation=void 0;var cEB=jMA();OMA.propagation=cEB.PropagationAPI.getInstance()});var hMA=R((vMA)=>{Object.defineProperty(vMA,"__esModule",{value:!0});vMA.TraceAPI=void 0;var Sc=fZ(),SMA=Ic(),kMA=vj(),iE=$c(),_MA=bZ(),kc="trace";class _c{constructor(){this._proxyTracerProvider=new SMA.ProxyTracerProvider,this.wrapSpanContext=kMA.wrapSpanContext,this.isSpanContextValid=kMA.isSpanContextValid,this.deleteSpan=iE.deleteSpan,this.getSpan=iE.getSpan,this.getActiveSpan=iE.getActiveSpan,this.getSpanContext=iE.getSpanContext,this.setSpan=iE.setSpan,this.setSpanContext=iE.setSpanContext}static getInstance(){if(!this._instance)this._instance=new _c;return this._instance}setGlobalTracerProvider(A){let Q=(0,Sc.registerGlobal)(kc,this._proxyTracerProvider,_MA.DiagAPI.instance());if(Q)this._proxyTracerProvider.setDelegate(A);return Q}getTracerProvider(){return(0,Sc.getGlobal)(kc)||this._proxyTracerProvider}getTracer(A,Q){return this.getTracerProvider().getTracer(A,Q)}disable(){(0,Sc.unregisterGlobal)(kc,_MA.DiagAPI.instance()),this._proxyTracerProvider=new SMA.ProxyTracerProvider}}vMA.TraceAPI=_c});var fMA=R((gMA)=>{Object.defineProperty(gMA,"__esModule",{value:!0});gMA.trace=void 0;var lEB=hMA();gMA.trace=lEB.TraceAPI.getInstance()});var yA=R((mB)=>{Object.defineProperty(mB,"__esModule",{value:!0});mB.trace=mB.propagation=mB.metrics=mB.diag=mB.context=mB.INVALID_SPAN_CONTEXT=mB.INVALID_TRACEID=mB.INVALID_SPANID=mB.isValidSpanId=mB.isValidTraceId=mB.isSpanContextValid=mB.createTraceState=mB.TraceFlags=mB.SpanStatusCode=mB.SpanKind=mB.SamplingDecision=mB.ProxyTracerProvider=mB.ProxyTracer=mB.defaultTextMapSetter=mB.defaultTextMapGetter=mB.ValueType=mB.createNoopMeter=mB.DiagLogLevel=mB.DiagConsoleLogger=mB.ROOT_CONTEXT=mB.createContextKey=mB.baggageEntryMetadataFromString=void 0;var pEB=pd();Object.defineProperty(mB,"baggageEntryMetadataFromString",{enumerable:!0,get:function(){return pEB.baggageEntryMetadataFromString}});var bMA=PN();Object.defineProperty(mB,"createContextKey",{enumerable:!0,get:function(){return bMA.createContextKey}});Object.defineProperty(mB,"ROOT_CONTEXT",{enumerable:!0,get:function(){return bMA.ROOT_CONTEXT}});var iEB=hLA();Object.defineProperty(mB,"DiagConsoleLogger",{enumerable:!0,get:function(){return iEB.DiagConsoleLogger}});var nEB=Pj();Object.defineProperty(mB,"DiagLogLevel",{enumerable:!0,get:function(){return nEB.DiagLogLevel}});var sEB=Qc();Object.defineProperty(mB,"createNoopMeter",{enumerable:!0,get:function(){return sEB.createNoopMeter}});var rEB=nLA();Object.defineProperty(mB,"ValueType",{enumerable:!0,get:function(){return rEB.ValueType}});var mMA=Yc();Object.defineProperty(mB,"defaultTextMapGetter",{enumerable:!0,get:function(){return mMA.defaultTextMapGetter}});Object.defineProperty(mB,"defaultTextMapSetter",{enumerable:!0,get:function(){return mMA.defaultTextMapSetter}});var aEB=Vc();Object.defineProperty(mB,"ProxyTracer",{enumerable:!0,get:function(){return aEB.ProxyTracer}});var oEB=Ic();Object.defineProperty(mB,"ProxyTracerProvider",{enumerable:!0,get:function(){return oEB.ProxyTracerProvider}});var tEB=yqA();Object.defineProperty(mB,"SamplingDecision",{enumerable:!0,get:function(){return tEB.SamplingDecision}});var eEB=gqA();Object.defineProperty(mB,"SpanKind",{enumerable:!0,get:function(){return eEB.SpanKind}});var AKB=fqA();Object.defineProperty(mB,"SpanStatusCode",{enumerable:!0,get:function(){return AKB.SpanStatusCode}});var QKB=Fc();Object.defineProperty(mB,"TraceFlags",{enumerable:!0,get:function(){return QKB.TraceFlags}});var BKB=oqA();Object.defineProperty(mB,"createTraceState",{enumerable:!0,get:function(){return BKB.createTraceState}});var vc=vj();Object.defineProperty(mB,"isSpanContextValid",{enumerable:!0,get:function(){return vc.isSpanContextValid}});Object.defineProperty(mB,"isValidTraceId",{enumerable:!0,get:function(){return vc.isValidTraceId}});Object.defineProperty(mB,"isValidSpanId",{enumerable:!0,get:function(){return vc.isValidSpanId}});var yc=kj();Object.defineProperty(mB,"INVALID_SPANID",{enumerable:!0,get:function(){return yc.INVALID_SPANID}});Object.defineProperty(mB,"INVALID_TRACEID",{enumerable:!0,get:function(){return yc.INVALID_TRACEID}});Object.defineProperty(mB,"INVALID_SPAN_CONTEXT",{enumerable:!0,get:function(){return yc.INVALID_SPAN_CONTEXT}});var uMA=AMA();Object.defineProperty(mB,"context",{enumerable:!0,get:function(){return uMA.context}});var dMA=YMA();Object.defineProperty(mB,"diag",{enumerable:!0,get:function(){return dMA.diag}});var cMA=EMA();Object.defineProperty(mB,"metrics",{enumerable:!0,get:function(){return cMA.metrics}});var lMA=TMA();Object.defineProperty(mB,"propagation",{enumerable:!0,get:function(){return lMA.propagation}});var pMA=fMA();Object.defineProperty(mB,"trace",{enumerable:!0,get:function(){return pMA.trace}});mB.default={context:uMA.context,diag:dMA.diag,metrics:cMA.metrics,propagation:lMA.propagation,trace:pMA.trace}});var kN=R((iMA)=>{Object.defineProperty(iMA,"__esModule",{value:!0});iMA.isTracingSuppressed=iMA.unsuppressTracing=iMA.suppressTracing=void 0;var CKB=yA(),hc=(0,CKB.createContextKey)("OpenTelemetry SDK Context Key SUPPRESS_TRACING");function XKB(A){return A.setValue(hc,!0)}iMA.suppressTracing=XKB;function GKB(A){return A.deleteValue(hc)}iMA.unsuppressTracing=GKB;function FKB(A){return A.getValue(hc)===!0}iMA.isTracingSuppressed=FKB});var gc=R((sMA)=>{Object.defineProperty(sMA,"__esModule",{value:!0});sMA.BAGGAGE_MAX_TOTAL_LENGTH=sMA.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS=sMA.BAGGAGE_MAX_NAME_VALUE_PAIRS=sMA.BAGGAGE_HEADER=sMA.BAGGAGE_ITEMS_SEPARATOR=sMA.BAGGAGE_PROPERTIES_SEPARATOR=sMA.BAGGAGE_KEY_PAIR_SEPARATOR=void 0;sMA.BAGGAGE_KEY_PAIR_SEPARATOR="=";sMA.BAGGAGE_PROPERTIES_SEPARATOR=";";sMA.BAGGAGE_ITEMS_SEPARATOR=",";sMA.BAGGAGE_HEADER="baggage";sMA.BAGGAGE_MAX_NAME_VALUE_PAIRS=180;sMA.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS=4096;sMA.BAGGAGE_MAX_TOTAL_LENGTH=8192});var xc=R((oMA)=>{Object.defineProperty(oMA,"__esModule",{value:!0});oMA.parseKeyPairsIntoRecord=oMA.parsePairKeyValue=oMA.getKeyPairs=oMA.serializeKeyPairs=void 0;var HKB=yA(),mZ=gc();function DKB(A){return A.reduce((Q,B)=>{let Y=`${Q}${Q!==""?mZ.BAGGAGE_ITEMS_SEPARATOR:""}${B}`;return Y.length>mZ.BAGGAGE_MAX_TOTAL_LENGTH?Q:Y},"")}oMA.serializeKeyPairs=DKB;function NKB(A){return A.getAllEntries().map(([Q,B])=>{let Y=`${encodeURIComponent(Q)}=${encodeURIComponent(B.value)}`;if(B.metadata!==void 0)Y+=mZ.BAGGAGE_PROPERTIES_SEPARATOR+B.metadata.toString();return Y})}oMA.getKeyPairs=NKB;function aMA(A){let Q=A.split(mZ.BAGGAGE_PROPERTIES_SEPARATOR);if(Q.length<=0)return;let B=Q.shift();if(!B)return;let Y=B.indexOf(mZ.BAGGAGE_KEY_PAIR_SEPARATOR);if(Y<=0)return;let J=decodeURIComponent(B.substring(0,Y).trim()),C=decodeURIComponent(B.substring(Y+1).trim()),X;if(Q.length>0)X=(0,HKB.baggageEntryMetadataFromString)(Q.join(mZ.BAGGAGE_PROPERTIES_SEPARATOR));return{key:J,value:C,metadata:X}}oMA.parsePairKeyValue=aMA;function LKB(A){if(typeof A!=="string"||A.length===0)return{};return A.split(mZ.BAGGAGE_ITEMS_SEPARATOR).map((Q)=>{return aMA(Q)}).filter((Q)=>Q!==void 0&&Q.value.length>0).reduce((Q,B)=>{return Q[B.key]=B.value,Q},{})}oMA.parseKeyPairsIntoRecord=LKB});var BzA=R((AzA)=>{Object.defineProperty(AzA,"__esModule",{value:!0});AzA.W3CBaggagePropagator=void 0;var fc=yA(),RKB=kN(),uZ=gc(),bc=xc();class eMA{inject(A,Q,B){let Y=fc.propagation.getBaggage(A);if(!Y||(0,RKB.isTracingSuppressed)(A))return;let J=(0,bc.getKeyPairs)(Y).filter((X)=>{return X.length<=uZ.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS}).slice(0,uZ.BAGGAGE_MAX_NAME_VALUE_PAIRS),C=(0,bc.serializeKeyPairs)(J);if(C.length>0)B.set(Q,uZ.BAGGAGE_HEADER,C)}extract(A,Q,B){let Y=B.get(Q,uZ.BAGGAGE_HEADER),J=Array.isArray(Y)?Y.join(uZ.BAGGAGE_ITEMS_SEPARATOR):Y;if(!J)return A;let C={};if(J.length===0)return A;if(J.split(uZ.BAGGAGE_ITEMS_SEPARATOR).forEach((G)=>{let F=(0,bc.parsePairKeyValue)(G);if(F){let W={value:F.value};if(F.metadata)W.metadata=F.metadata;C[F.key]=W}}),Object.entries(C).length===0)return A;return fc.propagation.setBaggage(A,fc.propagation.createBaggage(C))}fields(){return[uZ.BAGGAGE_HEADER]}}AzA.W3CBaggagePropagator=eMA});var XzA=R((JzA)=>{Object.defineProperty(JzA,"__esModule",{value:!0});JzA.AnchoredClock=void 0;class YzA{constructor(A,Q){this._monotonicClock=Q,this._epochMillis=A.now(),this._performanceMillis=Q.now()}now(){let A=this._monotonicClock.now()-this._performanceMillis;return this._epochMillis+A}}JzA.AnchoredClock=YzA});var EzA=R(($zA)=>{Object.defineProperty($zA,"__esModule",{value:!0});$zA.isAttributeValue=$zA.isAttributeKey=$zA.sanitizeAttributes=void 0;var GzA=yA();function wKB(A){let Q={};if(typeof A!=="object"||A==null)return Q;for(let[B,Y]of Object.entries(A)){if(!FzA(B)){GzA.diag.warn(`Invalid attribute key: ${B}`);continue}if(!WzA(Y)){GzA.diag.warn(`Invalid attribute value set for key: ${B}`);continue}if(Array.isArray(Y))Q[B]=Y.slice();else Q[B]=Y}return Q}$zA.sanitizeAttributes=wKB;function FzA(A){return typeof A==="string"&&A.length>0}$zA.isAttributeKey=FzA;function WzA(A){if(A==null)return!0;if(Array.isArray(A))return jKB(A);return ZzA(A)}$zA.isAttributeValue=WzA;function jKB(A){let Q;for(let B of A){if(B==null)continue;if(!Q){if(ZzA(B)){Q=typeof B;continue}return!1}if(typeof B===Q)continue;return!1}return!0}function ZzA(A){switch(typeof A){case"number":case"boolean":case"string":return!0}return!1}});var mc=R((KzA)=>{Object.defineProperty(KzA,"__esModule",{value:!0});KzA.loggingErrorHandler=void 0;var TKB=yA();function SKB(){return(A)=>{TKB.diag.error(kKB(A))}}KzA.loggingErrorHandler=SKB;function kKB(A){if(typeof A==="string")return A;else return JSON.stringify(_KB(A))}function _KB(A){let Q={},B=A;while(B!==null)Object.getOwnPropertyNames(B).forEach((Y)=>{if(Q[Y])return;let J=B[Y];if(J)Q[Y]=String(J)}),B=Object.getPrototypeOf(B);return Q}});var uc=R((HzA)=>{Object.defineProperty(HzA,"__esModule",{value:!0});HzA.globalErrorHandler=HzA.setGlobalErrorHandler=void 0;var vKB=mc(),IzA=(0,vKB.loggingErrorHandler)();function yKB(A){IzA=A}HzA.setGlobalErrorHandler=yKB;function hKB(A){try{IzA(A)}catch(Q){}}HzA.globalErrorHandler=hKB});var cc=R((NzA)=>{Object.defineProperty(NzA,"__esModule",{value:!0});NzA.TracesSamplerValues=void 0;var xKB;(function(A){A.AlwaysOff="always_off",A.AlwaysOn="always_on",A.ParentBasedAlwaysOff="parentbased_always_off",A.ParentBasedAlwaysOn="parentbased_always_on",A.ParentBasedTraceIdRatio="parentbased_traceidratio",A.TraceIdRatio="traceidratio"})(xKB=NzA.TracesSamplerValues||(NzA.TracesSamplerValues={}))});var lc=R((LzA)=>{Object.defineProperty(LzA,"__esModule",{value:!0});LzA.parseEnvironment=LzA.DEFAULT_ENVIRONMENT=LzA.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=LzA.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=LzA.DEFAULT_ATTRIBUTE_COUNT_LIMIT=LzA.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=void 0;var YF=yA(),fKB=cc(),bKB=",",mKB=["OTEL_SDK_DISABLED"];function uKB(A){return mKB.indexOf(A)>-1}var dKB=["OTEL_BSP_EXPORT_TIMEOUT","OTEL_BSP_MAX_EXPORT_BATCH_SIZE","OTEL_BSP_MAX_QUEUE_SIZE","OTEL_BSP_SCHEDULE_DELAY","OTEL_BLRP_EXPORT_TIMEOUT","OTEL_BLRP_MAX_EXPORT_BATCH_SIZE","OTEL_BLRP_MAX_QUEUE_SIZE","OTEL_BLRP_SCHEDULE_DELAY","OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_ATTRIBUTE_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT","OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT","OTEL_SPAN_EVENT_COUNT_LIMIT","OTEL_SPAN_LINK_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT","OTEL_EXPORTER_OTLP_TIMEOUT","OTEL_EXPORTER_OTLP_TRACES_TIMEOUT","OTEL_EXPORTER_OTLP_METRICS_TIMEOUT","OTEL_EXPORTER_OTLP_LOGS_TIMEOUT","OTEL_EXPORTER_JAEGER_AGENT_PORT"];function cKB(A){return dKB.indexOf(A)>-1}var lKB=["OTEL_NO_PATCH_MODULES","OTEL_PROPAGATORS","OTEL_SEMCONV_STABILITY_OPT_IN"];function pKB(A){return lKB.indexOf(A)>-1}LzA.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=1/0;LzA.DEFAULT_ATTRIBUTE_COUNT_LIMIT=128;LzA.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=128;LzA.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=128;LzA.DEFAULT_ENVIRONMENT={OTEL_SDK_DISABLED:!1,CONTAINER_NAME:"",ECS_CONTAINER_METADATA_URI_V4:"",ECS_CONTAINER_METADATA_URI:"",HOSTNAME:"",KUBERNETES_SERVICE_HOST:"",NAMESPACE:"",OTEL_BSP_EXPORT_TIMEOUT:30000,OTEL_BSP_MAX_EXPORT_BATCH_SIZE:512,OTEL_BSP_MAX_QUEUE_SIZE:2048,OTEL_BSP_SCHEDULE_DELAY:5000,OTEL_BLRP_EXPORT_TIMEOUT:30000,OTEL_BLRP_MAX_EXPORT_BATCH_SIZE:512,OTEL_BLRP_MAX_QUEUE_SIZE:2048,OTEL_BLRP_SCHEDULE_DELAY:5000,OTEL_EXPORTER_JAEGER_AGENT_HOST:"",OTEL_EXPORTER_JAEGER_AGENT_PORT:6832,OTEL_EXPORTER_JAEGER_ENDPOINT:"",OTEL_EXPORTER_JAEGER_PASSWORD:"",OTEL_EXPORTER_JAEGER_USER:"",OTEL_EXPORTER_OTLP_ENDPOINT:"",OTEL_EXPORTER_OTLP_TRACES_ENDPOINT:"",OTEL_EXPORTER_OTLP_METRICS_ENDPOINT:"",OTEL_EXPORTER_OTLP_LOGS_ENDPOINT:"",OTEL_EXPORTER_OTLP_HEADERS:"",OTEL_EXPORTER_OTLP_TRACES_HEADERS:"",OTEL_EXPORTER_OTLP_METRICS_HEADERS:"",OTEL_EXPORTER_OTLP_LOGS_HEADERS:"",OTEL_EXPORTER_OTLP_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_TRACES_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_METRICS_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_LOGS_TIMEOUT:1e4,OTEL_EXPORTER_ZIPKIN_ENDPOINT:"http://localhost:9411/api/v2/spans",OTEL_LOG_LEVEL:YF.DiagLogLevel.INFO,OTEL_NO_PATCH_MODULES:[],OTEL_PROPAGATORS:["tracecontext","baggage"],OTEL_RESOURCE_ATTRIBUTES:"",OTEL_SERVICE_NAME:"",OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT:LzA.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_ATTRIBUTE_COUNT_LIMIT:LzA.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT:LzA.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT:LzA.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT:LzA.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT:LzA.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_SPAN_EVENT_COUNT_LIMIT:128,OTEL_SPAN_LINK_COUNT_LIMIT:128,OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT:LzA.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT,OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT:LzA.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT,OTEL_TRACES_EXPORTER:"",OTEL_TRACES_SAMPLER:fKB.TracesSamplerValues.ParentBasedAlwaysOn,OTEL_TRACES_SAMPLER_ARG:"",OTEL_LOGS_EXPORTER:"",OTEL_EXPORTER_OTLP_INSECURE:"",OTEL_EXPORTER_OTLP_TRACES_INSECURE:"",OTEL_EXPORTER_OTLP_METRICS_INSECURE:"",OTEL_EXPORTER_OTLP_LOGS_INSECURE:"",OTEL_EXPORTER_OTLP_CERTIFICATE:"",OTEL_EXPORTER_OTLP_TRACES_CERTIFICATE:"",OTEL_EXPORTER_OTLP_METRICS_CERTIFICATE:"",OTEL_EXPORTER_OTLP_LOGS_CERTIFICATE:"",OTEL_EXPORTER_OTLP_COMPRESSION:"",OTEL_EXPORTER_OTLP_TRACES_COMPRESSION:"",OTEL_EXPORTER_OTLP_METRICS_COMPRESSION:"",OTEL_EXPORTER_OTLP_LOGS_COMPRESSION:"",OTEL_EXPORTER_OTLP_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_TRACES_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_METRICS_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_LOGS_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_TRACES_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_METRICS_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_LOGS_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_TRACES_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_METRICS_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_LOGS_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_METRICS_TEMPORALITY_PREFERENCE:"cumulative",OTEL_SEMCONV_STABILITY_OPT_IN:[]};function iKB(A,Q,B){if(typeof B[A]>"u")return;let Y=String(B[A]);Q[A]=Y.toLowerCase()==="true"}function nKB(A,Q,B,Y=-1/0,J=1/0){if(typeof B[A]<"u"){let C=Number(B[A]);if(!isNaN(C))if(CJ)Q[A]=J;else Q[A]=C}}function sKB(A,Q,B,Y=bKB){let J=B[A];if(typeof J==="string")Q[A]=J.split(Y).map((C)=>C.trim())}var rKB={ALL:YF.DiagLogLevel.ALL,VERBOSE:YF.DiagLogLevel.VERBOSE,DEBUG:YF.DiagLogLevel.DEBUG,INFO:YF.DiagLogLevel.INFO,WARN:YF.DiagLogLevel.WARN,ERROR:YF.DiagLogLevel.ERROR,NONE:YF.DiagLogLevel.NONE};function aKB(A,Q,B){let Y=B[A];if(typeof Y==="string"){let J=rKB[Y.toUpperCase()];if(J!=null)Q[A]=J}}function oKB(A){let Q={};for(let B in LzA.DEFAULT_ENVIRONMENT){let Y=B;switch(Y){case"OTEL_LOG_LEVEL":aKB(Y,Q,A);break;default:if(uKB(Y))iKB(Y,Q,A);else if(cKB(Y))nKB(Y,Q,A);else if(pKB(Y))sKB(Y,Q,A);else{let J=A[Y];if(typeof J<"u"&&J!==null)Q[Y]=String(J)}}}return Q}LzA.parseEnvironment=oKB});var OzA=R((wzA)=>{Object.defineProperty(wzA,"__esModule",{value:!0});wzA.getEnvWithoutDefaults=wzA.getEnv=void 0;var pc=lc();function tKB(){let A=(0,pc.parseEnvironment)(process.env);return Object.assign({},pc.DEFAULT_ENVIRONMENT,A)}wzA.getEnv=tKB;function eKB(){return(0,pc.parseEnvironment)(process.env)}wzA.getEnvWithoutDefaults=eKB});var SzA=R((PzA)=>{Object.defineProperty(PzA,"__esModule",{value:!0});PzA._globalThis=void 0;PzA._globalThis=typeof globalThis==="object"?globalThis:global});var ic=R((_zA)=>{Object.defineProperty(_zA,"__esModule",{value:!0});_zA.hexToBinary=void 0;function kzA(A){if(A>=48&&A<=57)return A-48;if(A>=97&&A<=102)return A-87;return A-55}function QVB(A){let Q=new Uint8Array(A.length/2),B=0;for(let Y=0;Y{Object.defineProperty(yzA,"__esModule",{value:!0});yzA.hexToBase64=void 0;var BVB=ic();function YVB(A){return Buffer.from((0,BVB.hexToBinary)(A)).toString("base64")}yzA.hexToBase64=YVB});var dzA=R((mzA)=>{Object.defineProperty(mzA,"__esModule",{value:!0});mzA.RandomIdGenerator=void 0;var JVB=8,fzA=16;class bzA{constructor(){this.generateTraceId=xzA(fzA),this.generateSpanId=xzA(JVB)}}mzA.RandomIdGenerator=bzA;var xj=Buffer.allocUnsafe(fzA);function xzA(A){return function(){for(let B=0;B>>0,B*4);for(let B=0;B0)break;else if(B===A-1)xj[A-1]=1;return xj.toString("hex",0,A)}}});var pzA=R((czA)=>{Object.defineProperty(czA,"__esModule",{value:!0});czA.otperformance=void 0;var CVB=u("perf_hooks");czA.otperformance=CVB.performance});var nc=R((izA)=>{Object.defineProperty(izA,"__esModule",{value:!0});izA.VERSION=void 0;izA.VERSION="1.30.1"});var sc=R((szA)=>{Object.defineProperty(szA,"__esModule",{value:!0});szA.createConstMap=void 0;function XVB(A){let Q={},B=A.length;for(let Y=0;Y{Object.defineProperty(bjA,"__esModule",{value:!0});bjA.SEMATTRS_NET_HOST_CARRIER_ICC=bjA.SEMATTRS_NET_HOST_CARRIER_MNC=bjA.SEMATTRS_NET_HOST_CARRIER_MCC=bjA.SEMATTRS_NET_HOST_CARRIER_NAME=bjA.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=bjA.SEMATTRS_NET_HOST_CONNECTION_TYPE=bjA.SEMATTRS_NET_HOST_NAME=bjA.SEMATTRS_NET_HOST_PORT=bjA.SEMATTRS_NET_HOST_IP=bjA.SEMATTRS_NET_PEER_NAME=bjA.SEMATTRS_NET_PEER_PORT=bjA.SEMATTRS_NET_PEER_IP=bjA.SEMATTRS_NET_TRANSPORT=bjA.SEMATTRS_FAAS_INVOKED_REGION=bjA.SEMATTRS_FAAS_INVOKED_PROVIDER=bjA.SEMATTRS_FAAS_INVOKED_NAME=bjA.SEMATTRS_FAAS_COLDSTART=bjA.SEMATTRS_FAAS_CRON=bjA.SEMATTRS_FAAS_TIME=bjA.SEMATTRS_FAAS_DOCUMENT_NAME=bjA.SEMATTRS_FAAS_DOCUMENT_TIME=bjA.SEMATTRS_FAAS_DOCUMENT_OPERATION=bjA.SEMATTRS_FAAS_DOCUMENT_COLLECTION=bjA.SEMATTRS_FAAS_EXECUTION=bjA.SEMATTRS_FAAS_TRIGGER=bjA.SEMATTRS_EXCEPTION_ESCAPED=bjA.SEMATTRS_EXCEPTION_STACKTRACE=bjA.SEMATTRS_EXCEPTION_MESSAGE=bjA.SEMATTRS_EXCEPTION_TYPE=bjA.SEMATTRS_DB_SQL_TABLE=bjA.SEMATTRS_DB_MONGODB_COLLECTION=bjA.SEMATTRS_DB_REDIS_DATABASE_INDEX=bjA.SEMATTRS_DB_HBASE_NAMESPACE=bjA.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=bjA.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=bjA.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=bjA.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=bjA.SEMATTRS_DB_CASSANDRA_TABLE=bjA.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=bjA.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=bjA.SEMATTRS_DB_CASSANDRA_KEYSPACE=bjA.SEMATTRS_DB_MSSQL_INSTANCE_NAME=bjA.SEMATTRS_DB_OPERATION=bjA.SEMATTRS_DB_STATEMENT=bjA.SEMATTRS_DB_NAME=bjA.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=bjA.SEMATTRS_DB_USER=bjA.SEMATTRS_DB_CONNECTION_STRING=bjA.SEMATTRS_DB_SYSTEM=bjA.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=void 0;bjA.SEMATTRS_MESSAGING_DESTINATION_KIND=bjA.SEMATTRS_MESSAGING_DESTINATION=bjA.SEMATTRS_MESSAGING_SYSTEM=bjA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=bjA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=bjA.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=bjA.SEMATTRS_AWS_DYNAMODB_COUNT=bjA.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=bjA.SEMATTRS_AWS_DYNAMODB_SEGMENT=bjA.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=bjA.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=bjA.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=bjA.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=bjA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=bjA.SEMATTRS_AWS_DYNAMODB_SELECT=bjA.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=bjA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=bjA.SEMATTRS_AWS_DYNAMODB_LIMIT=bjA.SEMATTRS_AWS_DYNAMODB_PROJECTION=bjA.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=bjA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=bjA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=bjA.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=bjA.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=bjA.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=bjA.SEMATTRS_HTTP_CLIENT_IP=bjA.SEMATTRS_HTTP_ROUTE=bjA.SEMATTRS_HTTP_SERVER_NAME=bjA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=bjA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=bjA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=bjA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=bjA.SEMATTRS_HTTP_USER_AGENT=bjA.SEMATTRS_HTTP_FLAVOR=bjA.SEMATTRS_HTTP_STATUS_CODE=bjA.SEMATTRS_HTTP_SCHEME=bjA.SEMATTRS_HTTP_HOST=bjA.SEMATTRS_HTTP_TARGET=bjA.SEMATTRS_HTTP_URL=bjA.SEMATTRS_HTTP_METHOD=bjA.SEMATTRS_CODE_LINENO=bjA.SEMATTRS_CODE_FILEPATH=bjA.SEMATTRS_CODE_NAMESPACE=bjA.SEMATTRS_CODE_FUNCTION=bjA.SEMATTRS_THREAD_NAME=bjA.SEMATTRS_THREAD_ID=bjA.SEMATTRS_ENDUSER_SCOPE=bjA.SEMATTRS_ENDUSER_ROLE=bjA.SEMATTRS_ENDUSER_ID=bjA.SEMATTRS_PEER_SERVICE=void 0;bjA.DBSYSTEMVALUES_FILEMAKER=bjA.DBSYSTEMVALUES_DERBY=bjA.DBSYSTEMVALUES_FIREBIRD=bjA.DBSYSTEMVALUES_ADABAS=bjA.DBSYSTEMVALUES_CACHE=bjA.DBSYSTEMVALUES_EDB=bjA.DBSYSTEMVALUES_FIRSTSQL=bjA.DBSYSTEMVALUES_INGRES=bjA.DBSYSTEMVALUES_HANADB=bjA.DBSYSTEMVALUES_MAXDB=bjA.DBSYSTEMVALUES_PROGRESS=bjA.DBSYSTEMVALUES_HSQLDB=bjA.DBSYSTEMVALUES_CLOUDSCAPE=bjA.DBSYSTEMVALUES_HIVE=bjA.DBSYSTEMVALUES_REDSHIFT=bjA.DBSYSTEMVALUES_POSTGRESQL=bjA.DBSYSTEMVALUES_DB2=bjA.DBSYSTEMVALUES_ORACLE=bjA.DBSYSTEMVALUES_MYSQL=bjA.DBSYSTEMVALUES_MSSQL=bjA.DBSYSTEMVALUES_OTHER_SQL=bjA.SemanticAttributes=bjA.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=bjA.SEMATTRS_MESSAGE_COMPRESSED_SIZE=bjA.SEMATTRS_MESSAGE_ID=bjA.SEMATTRS_MESSAGE_TYPE=bjA.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=bjA.SEMATTRS_RPC_JSONRPC_ERROR_CODE=bjA.SEMATTRS_RPC_JSONRPC_REQUEST_ID=bjA.SEMATTRS_RPC_JSONRPC_VERSION=bjA.SEMATTRS_RPC_GRPC_STATUS_CODE=bjA.SEMATTRS_RPC_METHOD=bjA.SEMATTRS_RPC_SERVICE=bjA.SEMATTRS_RPC_SYSTEM=bjA.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=bjA.SEMATTRS_MESSAGING_KAFKA_PARTITION=bjA.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=bjA.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=bjA.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=bjA.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=bjA.SEMATTRS_MESSAGING_CONSUMER_ID=bjA.SEMATTRS_MESSAGING_OPERATION=bjA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=bjA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=bjA.SEMATTRS_MESSAGING_CONVERSATION_ID=bjA.SEMATTRS_MESSAGING_MESSAGE_ID=bjA.SEMATTRS_MESSAGING_URL=bjA.SEMATTRS_MESSAGING_PROTOCOL_VERSION=bjA.SEMATTRS_MESSAGING_PROTOCOL=bjA.SEMATTRS_MESSAGING_TEMP_DESTINATION=void 0;bjA.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=bjA.FaasDocumentOperationValues=bjA.FAASDOCUMENTOPERATIONVALUES_DELETE=bjA.FAASDOCUMENTOPERATIONVALUES_EDIT=bjA.FAASDOCUMENTOPERATIONVALUES_INSERT=bjA.FaasTriggerValues=bjA.FAASTRIGGERVALUES_OTHER=bjA.FAASTRIGGERVALUES_TIMER=bjA.FAASTRIGGERVALUES_PUBSUB=bjA.FAASTRIGGERVALUES_HTTP=bjA.FAASTRIGGERVALUES_DATASOURCE=bjA.DbCassandraConsistencyLevelValues=bjA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=bjA.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=bjA.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=bjA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=bjA.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=bjA.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=bjA.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=bjA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=bjA.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=bjA.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=bjA.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=bjA.DbSystemValues=bjA.DBSYSTEMVALUES_COCKROACHDB=bjA.DBSYSTEMVALUES_MEMCACHED=bjA.DBSYSTEMVALUES_ELASTICSEARCH=bjA.DBSYSTEMVALUES_GEODE=bjA.DBSYSTEMVALUES_NEO4J=bjA.DBSYSTEMVALUES_DYNAMODB=bjA.DBSYSTEMVALUES_COSMOSDB=bjA.DBSYSTEMVALUES_COUCHDB=bjA.DBSYSTEMVALUES_COUCHBASE=bjA.DBSYSTEMVALUES_REDIS=bjA.DBSYSTEMVALUES_MONGODB=bjA.DBSYSTEMVALUES_HBASE=bjA.DBSYSTEMVALUES_CASSANDRA=bjA.DBSYSTEMVALUES_COLDFUSION=bjA.DBSYSTEMVALUES_H2=bjA.DBSYSTEMVALUES_VERTICA=bjA.DBSYSTEMVALUES_TERADATA=bjA.DBSYSTEMVALUES_SYBASE=bjA.DBSYSTEMVALUES_SQLITE=bjA.DBSYSTEMVALUES_POINTBASE=bjA.DBSYSTEMVALUES_PERVASIVE=bjA.DBSYSTEMVALUES_NETEZZA=bjA.DBSYSTEMVALUES_MARIADB=bjA.DBSYSTEMVALUES_INTERBASE=bjA.DBSYSTEMVALUES_INSTANTDB=bjA.DBSYSTEMVALUES_INFORMIX=void 0;bjA.MESSAGINGOPERATIONVALUES_RECEIVE=bjA.MessagingDestinationKindValues=bjA.MESSAGINGDESTINATIONKINDVALUES_TOPIC=bjA.MESSAGINGDESTINATIONKINDVALUES_QUEUE=bjA.HttpFlavorValues=bjA.HTTPFLAVORVALUES_QUIC=bjA.HTTPFLAVORVALUES_SPDY=bjA.HTTPFLAVORVALUES_HTTP_2_0=bjA.HTTPFLAVORVALUES_HTTP_1_1=bjA.HTTPFLAVORVALUES_HTTP_1_0=bjA.NetHostConnectionSubtypeValues=bjA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=bjA.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=bjA.NETHOSTCONNECTIONSUBTYPEVALUES_NR=bjA.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=bjA.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=bjA.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=bjA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=bjA.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=bjA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=bjA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=bjA.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=bjA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=bjA.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=bjA.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=bjA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=bjA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=bjA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=bjA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=bjA.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=bjA.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=bjA.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=bjA.NetHostConnectionTypeValues=bjA.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=bjA.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=bjA.NETHOSTCONNECTIONTYPEVALUES_CELL=bjA.NETHOSTCONNECTIONTYPEVALUES_WIRED=bjA.NETHOSTCONNECTIONTYPEVALUES_WIFI=bjA.NetTransportValues=bjA.NETTRANSPORTVALUES_OTHER=bjA.NETTRANSPORTVALUES_INPROC=bjA.NETTRANSPORTVALUES_PIPE=bjA.NETTRANSPORTVALUES_UNIX=bjA.NETTRANSPORTVALUES_IP=bjA.NETTRANSPORTVALUES_IP_UDP=bjA.NETTRANSPORTVALUES_IP_TCP=bjA.FaasInvokedProviderValues=bjA.FAASINVOKEDPROVIDERVALUES_GCP=bjA.FAASINVOKEDPROVIDERVALUES_AZURE=bjA.FAASINVOKEDPROVIDERVALUES_AWS=void 0;bjA.MessageTypeValues=bjA.MESSAGETYPEVALUES_RECEIVED=bjA.MESSAGETYPEVALUES_SENT=bjA.RpcGrpcStatusCodeValues=bjA.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=bjA.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=bjA.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=bjA.RPCGRPCSTATUSCODEVALUES_INTERNAL=bjA.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=bjA.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=bjA.RPCGRPCSTATUSCODEVALUES_ABORTED=bjA.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=bjA.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=bjA.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=bjA.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=bjA.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=bjA.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=bjA.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=bjA.RPCGRPCSTATUSCODEVALUES_UNKNOWN=bjA.RPCGRPCSTATUSCODEVALUES_CANCELLED=bjA.RPCGRPCSTATUSCODEVALUES_OK=bjA.MessagingOperationValues=bjA.MESSAGINGOPERATIONVALUES_PROCESS=void 0;var O5=sc(),azA="aws.lambda.invoked_arn",ozA="db.system",tzA="db.connection_string",ezA="db.user",A2A="db.jdbc.driver_classname",Q2A="db.name",B2A="db.statement",Y2A="db.operation",J2A="db.mssql.instance_name",C2A="db.cassandra.keyspace",X2A="db.cassandra.page_size",G2A="db.cassandra.consistency_level",F2A="db.cassandra.table",W2A="db.cassandra.idempotence",Z2A="db.cassandra.speculative_execution_count",$2A="db.cassandra.coordinator.id",U2A="db.cassandra.coordinator.dc",E2A="db.hbase.namespace",K2A="db.redis.database_index",V2A="db.mongodb.collection",I2A="db.sql.table",H2A="exception.type",D2A="exception.message",N2A="exception.stacktrace",L2A="exception.escaped",q2A="faas.trigger",M2A="faas.execution",z2A="faas.document.collection",R2A="faas.document.operation",w2A="faas.document.time",j2A="faas.document.name",O2A="faas.time",P2A="faas.cron",T2A="faas.coldstart",S2A="faas.invoked_name",k2A="faas.invoked_provider",_2A="faas.invoked_region",v2A="net.transport",y2A="net.peer.ip",h2A="net.peer.port",g2A="net.peer.name",x2A="net.host.ip",f2A="net.host.port",b2A="net.host.name",m2A="net.host.connection.type",u2A="net.host.connection.subtype",d2A="net.host.carrier.name",c2A="net.host.carrier.mcc",l2A="net.host.carrier.mnc",p2A="net.host.carrier.icc",i2A="peer.service",n2A="enduser.id",s2A="enduser.role",r2A="enduser.scope",a2A="thread.id",o2A="thread.name",t2A="code.function",e2A="code.namespace",A3A="code.filepath",Q3A="code.lineno",B3A="http.method",Y3A="http.url",J3A="http.target",C3A="http.host",X3A="http.scheme",G3A="http.status_code",F3A="http.flavor",W3A="http.user_agent",Z3A="http.request_content_length",$3A="http.request_content_length_uncompressed",U3A="http.response_content_length",E3A="http.response_content_length_uncompressed",K3A="http.server_name",V3A="http.route",I3A="http.client_ip",H3A="aws.dynamodb.table_names",D3A="aws.dynamodb.consumed_capacity",N3A="aws.dynamodb.item_collection_metrics",L3A="aws.dynamodb.provisioned_read_capacity",q3A="aws.dynamodb.provisioned_write_capacity",M3A="aws.dynamodb.consistent_read",z3A="aws.dynamodb.projection",R3A="aws.dynamodb.limit",w3A="aws.dynamodb.attributes_to_get",j3A="aws.dynamodb.index_name",O3A="aws.dynamodb.select",P3A="aws.dynamodb.global_secondary_indexes",T3A="aws.dynamodb.local_secondary_indexes",S3A="aws.dynamodb.exclusive_start_table",k3A="aws.dynamodb.table_count",_3A="aws.dynamodb.scan_forward",v3A="aws.dynamodb.segment",y3A="aws.dynamodb.total_segments",h3A="aws.dynamodb.count",g3A="aws.dynamodb.scanned_count",x3A="aws.dynamodb.attribute_definitions",f3A="aws.dynamodb.global_secondary_index_updates",b3A="messaging.system",m3A="messaging.destination",u3A="messaging.destination_kind",d3A="messaging.temp_destination",c3A="messaging.protocol",l3A="messaging.protocol_version",p3A="messaging.url",i3A="messaging.message_id",n3A="messaging.conversation_id",s3A="messaging.message_payload_size_bytes",r3A="messaging.message_payload_compressed_size_bytes",a3A="messaging.operation",o3A="messaging.consumer_id",t3A="messaging.rabbitmq.routing_key",e3A="messaging.kafka.message_key",ARA="messaging.kafka.consumer_group",QRA="messaging.kafka.client_id",BRA="messaging.kafka.partition",YRA="messaging.kafka.tombstone",JRA="rpc.system",CRA="rpc.service",XRA="rpc.method",GRA="rpc.grpc.status_code",FRA="rpc.jsonrpc.version",WRA="rpc.jsonrpc.request_id",ZRA="rpc.jsonrpc.error_code",$RA="rpc.jsonrpc.error_message",URA="message.type",ERA="message.id",KRA="message.compressed_size",VRA="message.uncompressed_size";bjA.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=azA;bjA.SEMATTRS_DB_SYSTEM=ozA;bjA.SEMATTRS_DB_CONNECTION_STRING=tzA;bjA.SEMATTRS_DB_USER=ezA;bjA.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=A2A;bjA.SEMATTRS_DB_NAME=Q2A;bjA.SEMATTRS_DB_STATEMENT=B2A;bjA.SEMATTRS_DB_OPERATION=Y2A;bjA.SEMATTRS_DB_MSSQL_INSTANCE_NAME=J2A;bjA.SEMATTRS_DB_CASSANDRA_KEYSPACE=C2A;bjA.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=X2A;bjA.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=G2A;bjA.SEMATTRS_DB_CASSANDRA_TABLE=F2A;bjA.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=W2A;bjA.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=Z2A;bjA.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=$2A;bjA.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=U2A;bjA.SEMATTRS_DB_HBASE_NAMESPACE=E2A;bjA.SEMATTRS_DB_REDIS_DATABASE_INDEX=K2A;bjA.SEMATTRS_DB_MONGODB_COLLECTION=V2A;bjA.SEMATTRS_DB_SQL_TABLE=I2A;bjA.SEMATTRS_EXCEPTION_TYPE=H2A;bjA.SEMATTRS_EXCEPTION_MESSAGE=D2A;bjA.SEMATTRS_EXCEPTION_STACKTRACE=N2A;bjA.SEMATTRS_EXCEPTION_ESCAPED=L2A;bjA.SEMATTRS_FAAS_TRIGGER=q2A;bjA.SEMATTRS_FAAS_EXECUTION=M2A;bjA.SEMATTRS_FAAS_DOCUMENT_COLLECTION=z2A;bjA.SEMATTRS_FAAS_DOCUMENT_OPERATION=R2A;bjA.SEMATTRS_FAAS_DOCUMENT_TIME=w2A;bjA.SEMATTRS_FAAS_DOCUMENT_NAME=j2A;bjA.SEMATTRS_FAAS_TIME=O2A;bjA.SEMATTRS_FAAS_CRON=P2A;bjA.SEMATTRS_FAAS_COLDSTART=T2A;bjA.SEMATTRS_FAAS_INVOKED_NAME=S2A;bjA.SEMATTRS_FAAS_INVOKED_PROVIDER=k2A;bjA.SEMATTRS_FAAS_INVOKED_REGION=_2A;bjA.SEMATTRS_NET_TRANSPORT=v2A;bjA.SEMATTRS_NET_PEER_IP=y2A;bjA.SEMATTRS_NET_PEER_PORT=h2A;bjA.SEMATTRS_NET_PEER_NAME=g2A;bjA.SEMATTRS_NET_HOST_IP=x2A;bjA.SEMATTRS_NET_HOST_PORT=f2A;bjA.SEMATTRS_NET_HOST_NAME=b2A;bjA.SEMATTRS_NET_HOST_CONNECTION_TYPE=m2A;bjA.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=u2A;bjA.SEMATTRS_NET_HOST_CARRIER_NAME=d2A;bjA.SEMATTRS_NET_HOST_CARRIER_MCC=c2A;bjA.SEMATTRS_NET_HOST_CARRIER_MNC=l2A;bjA.SEMATTRS_NET_HOST_CARRIER_ICC=p2A;bjA.SEMATTRS_PEER_SERVICE=i2A;bjA.SEMATTRS_ENDUSER_ID=n2A;bjA.SEMATTRS_ENDUSER_ROLE=s2A;bjA.SEMATTRS_ENDUSER_SCOPE=r2A;bjA.SEMATTRS_THREAD_ID=a2A;bjA.SEMATTRS_THREAD_NAME=o2A;bjA.SEMATTRS_CODE_FUNCTION=t2A;bjA.SEMATTRS_CODE_NAMESPACE=e2A;bjA.SEMATTRS_CODE_FILEPATH=A3A;bjA.SEMATTRS_CODE_LINENO=Q3A;bjA.SEMATTRS_HTTP_METHOD=B3A;bjA.SEMATTRS_HTTP_URL=Y3A;bjA.SEMATTRS_HTTP_TARGET=J3A;bjA.SEMATTRS_HTTP_HOST=C3A;bjA.SEMATTRS_HTTP_SCHEME=X3A;bjA.SEMATTRS_HTTP_STATUS_CODE=G3A;bjA.SEMATTRS_HTTP_FLAVOR=F3A;bjA.SEMATTRS_HTTP_USER_AGENT=W3A;bjA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=Z3A;bjA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=$3A;bjA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=U3A;bjA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=E3A;bjA.SEMATTRS_HTTP_SERVER_NAME=K3A;bjA.SEMATTRS_HTTP_ROUTE=V3A;bjA.SEMATTRS_HTTP_CLIENT_IP=I3A;bjA.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=H3A;bjA.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=D3A;bjA.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=N3A;bjA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=L3A;bjA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=q3A;bjA.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=M3A;bjA.SEMATTRS_AWS_DYNAMODB_PROJECTION=z3A;bjA.SEMATTRS_AWS_DYNAMODB_LIMIT=R3A;bjA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=w3A;bjA.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=j3A;bjA.SEMATTRS_AWS_DYNAMODB_SELECT=O3A;bjA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=P3A;bjA.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=T3A;bjA.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=S3A;bjA.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=k3A;bjA.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=_3A;bjA.SEMATTRS_AWS_DYNAMODB_SEGMENT=v3A;bjA.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=y3A;bjA.SEMATTRS_AWS_DYNAMODB_COUNT=h3A;bjA.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=g3A;bjA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=x3A;bjA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=f3A;bjA.SEMATTRS_MESSAGING_SYSTEM=b3A;bjA.SEMATTRS_MESSAGING_DESTINATION=m3A;bjA.SEMATTRS_MESSAGING_DESTINATION_KIND=u3A;bjA.SEMATTRS_MESSAGING_TEMP_DESTINATION=d3A;bjA.SEMATTRS_MESSAGING_PROTOCOL=c3A;bjA.SEMATTRS_MESSAGING_PROTOCOL_VERSION=l3A;bjA.SEMATTRS_MESSAGING_URL=p3A;bjA.SEMATTRS_MESSAGING_MESSAGE_ID=i3A;bjA.SEMATTRS_MESSAGING_CONVERSATION_ID=n3A;bjA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=s3A;bjA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=r3A;bjA.SEMATTRS_MESSAGING_OPERATION=a3A;bjA.SEMATTRS_MESSAGING_CONSUMER_ID=o3A;bjA.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=t3A;bjA.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=e3A;bjA.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=ARA;bjA.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=QRA;bjA.SEMATTRS_MESSAGING_KAFKA_PARTITION=BRA;bjA.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=YRA;bjA.SEMATTRS_RPC_SYSTEM=JRA;bjA.SEMATTRS_RPC_SERVICE=CRA;bjA.SEMATTRS_RPC_METHOD=XRA;bjA.SEMATTRS_RPC_GRPC_STATUS_CODE=GRA;bjA.SEMATTRS_RPC_JSONRPC_VERSION=FRA;bjA.SEMATTRS_RPC_JSONRPC_REQUEST_ID=WRA;bjA.SEMATTRS_RPC_JSONRPC_ERROR_CODE=ZRA;bjA.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=$RA;bjA.SEMATTRS_MESSAGE_TYPE=URA;bjA.SEMATTRS_MESSAGE_ID=ERA;bjA.SEMATTRS_MESSAGE_COMPRESSED_SIZE=KRA;bjA.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=VRA;bjA.SemanticAttributes=(0,O5.createConstMap)([azA,ozA,tzA,ezA,A2A,Q2A,B2A,Y2A,J2A,C2A,X2A,G2A,F2A,W2A,Z2A,$2A,U2A,E2A,K2A,V2A,I2A,H2A,D2A,N2A,L2A,q2A,M2A,z2A,R2A,w2A,j2A,O2A,P2A,T2A,S2A,k2A,_2A,v2A,y2A,h2A,g2A,x2A,f2A,b2A,m2A,u2A,d2A,c2A,l2A,p2A,i2A,n2A,s2A,r2A,a2A,o2A,t2A,e2A,A3A,Q3A,B3A,Y3A,J3A,C3A,X3A,G3A,F3A,W3A,Z3A,$3A,U3A,E3A,K3A,V3A,I3A,H3A,D3A,N3A,L3A,q3A,M3A,z3A,R3A,w3A,j3A,O3A,P3A,T3A,S3A,k3A,_3A,v3A,y3A,h3A,g3A,x3A,f3A,b3A,m3A,u3A,d3A,c3A,l3A,p3A,i3A,n3A,s3A,r3A,a3A,o3A,t3A,e3A,ARA,QRA,BRA,YRA,JRA,CRA,XRA,GRA,FRA,WRA,ZRA,$RA,URA,ERA,KRA,VRA]);var IRA="other_sql",HRA="mssql",DRA="mysql",NRA="oracle",LRA="db2",qRA="postgresql",MRA="redshift",zRA="hive",RRA="cloudscape",wRA="hsqldb",jRA="progress",ORA="maxdb",PRA="hanadb",TRA="ingres",SRA="firstsql",kRA="edb",_RA="cache",vRA="adabas",yRA="firebird",hRA="derby",gRA="filemaker",xRA="informix",fRA="instantdb",bRA="interbase",mRA="mariadb",uRA="netezza",dRA="pervasive",cRA="pointbase",lRA="sqlite",pRA="sybase",iRA="teradata",nRA="vertica",sRA="h2",rRA="coldfusion",aRA="cassandra",oRA="hbase",tRA="mongodb",eRA="redis",AwA="couchbase",QwA="couchdb",BwA="cosmosdb",YwA="dynamodb",JwA="neo4j",CwA="geode",XwA="elasticsearch",GwA="memcached",FwA="cockroachdb";bjA.DBSYSTEMVALUES_OTHER_SQL=IRA;bjA.DBSYSTEMVALUES_MSSQL=HRA;bjA.DBSYSTEMVALUES_MYSQL=DRA;bjA.DBSYSTEMVALUES_ORACLE=NRA;bjA.DBSYSTEMVALUES_DB2=LRA;bjA.DBSYSTEMVALUES_POSTGRESQL=qRA;bjA.DBSYSTEMVALUES_REDSHIFT=MRA;bjA.DBSYSTEMVALUES_HIVE=zRA;bjA.DBSYSTEMVALUES_CLOUDSCAPE=RRA;bjA.DBSYSTEMVALUES_HSQLDB=wRA;bjA.DBSYSTEMVALUES_PROGRESS=jRA;bjA.DBSYSTEMVALUES_MAXDB=ORA;bjA.DBSYSTEMVALUES_HANADB=PRA;bjA.DBSYSTEMVALUES_INGRES=TRA;bjA.DBSYSTEMVALUES_FIRSTSQL=SRA;bjA.DBSYSTEMVALUES_EDB=kRA;bjA.DBSYSTEMVALUES_CACHE=_RA;bjA.DBSYSTEMVALUES_ADABAS=vRA;bjA.DBSYSTEMVALUES_FIREBIRD=yRA;bjA.DBSYSTEMVALUES_DERBY=hRA;bjA.DBSYSTEMVALUES_FILEMAKER=gRA;bjA.DBSYSTEMVALUES_INFORMIX=xRA;bjA.DBSYSTEMVALUES_INSTANTDB=fRA;bjA.DBSYSTEMVALUES_INTERBASE=bRA;bjA.DBSYSTEMVALUES_MARIADB=mRA;bjA.DBSYSTEMVALUES_NETEZZA=uRA;bjA.DBSYSTEMVALUES_PERVASIVE=dRA;bjA.DBSYSTEMVALUES_POINTBASE=cRA;bjA.DBSYSTEMVALUES_SQLITE=lRA;bjA.DBSYSTEMVALUES_SYBASE=pRA;bjA.DBSYSTEMVALUES_TERADATA=iRA;bjA.DBSYSTEMVALUES_VERTICA=nRA;bjA.DBSYSTEMVALUES_H2=sRA;bjA.DBSYSTEMVALUES_COLDFUSION=rRA;bjA.DBSYSTEMVALUES_CASSANDRA=aRA;bjA.DBSYSTEMVALUES_HBASE=oRA;bjA.DBSYSTEMVALUES_MONGODB=tRA;bjA.DBSYSTEMVALUES_REDIS=eRA;bjA.DBSYSTEMVALUES_COUCHBASE=AwA;bjA.DBSYSTEMVALUES_COUCHDB=QwA;bjA.DBSYSTEMVALUES_COSMOSDB=BwA;bjA.DBSYSTEMVALUES_DYNAMODB=YwA;bjA.DBSYSTEMVALUES_NEO4J=JwA;bjA.DBSYSTEMVALUES_GEODE=CwA;bjA.DBSYSTEMVALUES_ELASTICSEARCH=XwA;bjA.DBSYSTEMVALUES_MEMCACHED=GwA;bjA.DBSYSTEMVALUES_COCKROACHDB=FwA;bjA.DbSystemValues=(0,O5.createConstMap)([IRA,HRA,DRA,NRA,LRA,qRA,MRA,zRA,RRA,wRA,jRA,ORA,PRA,TRA,SRA,kRA,_RA,vRA,yRA,hRA,gRA,xRA,fRA,bRA,mRA,uRA,dRA,cRA,lRA,pRA,iRA,nRA,sRA,rRA,aRA,oRA,tRA,eRA,AwA,QwA,BwA,YwA,JwA,CwA,XwA,GwA,FwA]);var WwA="all",ZwA="each_quorum",$wA="quorum",UwA="local_quorum",EwA="one",KwA="two",VwA="three",IwA="local_one",HwA="any",DwA="serial",NwA="local_serial";bjA.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=WwA;bjA.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=ZwA;bjA.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=$wA;bjA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=UwA;bjA.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=EwA;bjA.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=KwA;bjA.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=VwA;bjA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=IwA;bjA.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=HwA;bjA.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=DwA;bjA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=NwA;bjA.DbCassandraConsistencyLevelValues=(0,O5.createConstMap)([WwA,ZwA,$wA,UwA,EwA,KwA,VwA,IwA,HwA,DwA,NwA]);var LwA="datasource",qwA="http",MwA="pubsub",zwA="timer",RwA="other";bjA.FAASTRIGGERVALUES_DATASOURCE=LwA;bjA.FAASTRIGGERVALUES_HTTP=qwA;bjA.FAASTRIGGERVALUES_PUBSUB=MwA;bjA.FAASTRIGGERVALUES_TIMER=zwA;bjA.FAASTRIGGERVALUES_OTHER=RwA;bjA.FaasTriggerValues=(0,O5.createConstMap)([LwA,qwA,MwA,zwA,RwA]);var wwA="insert",jwA="edit",OwA="delete";bjA.FAASDOCUMENTOPERATIONVALUES_INSERT=wwA;bjA.FAASDOCUMENTOPERATIONVALUES_EDIT=jwA;bjA.FAASDOCUMENTOPERATIONVALUES_DELETE=OwA;bjA.FaasDocumentOperationValues=(0,O5.createConstMap)([wwA,jwA,OwA]);var PwA="alibaba_cloud",TwA="aws",SwA="azure",kwA="gcp";bjA.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=PwA;bjA.FAASINVOKEDPROVIDERVALUES_AWS=TwA;bjA.FAASINVOKEDPROVIDERVALUES_AZURE=SwA;bjA.FAASINVOKEDPROVIDERVALUES_GCP=kwA;bjA.FaasInvokedProviderValues=(0,O5.createConstMap)([PwA,TwA,SwA,kwA]);var _wA="ip_tcp",vwA="ip_udp",ywA="ip",hwA="unix",gwA="pipe",xwA="inproc",fwA="other";bjA.NETTRANSPORTVALUES_IP_TCP=_wA;bjA.NETTRANSPORTVALUES_IP_UDP=vwA;bjA.NETTRANSPORTVALUES_IP=ywA;bjA.NETTRANSPORTVALUES_UNIX=hwA;bjA.NETTRANSPORTVALUES_PIPE=gwA;bjA.NETTRANSPORTVALUES_INPROC=xwA;bjA.NETTRANSPORTVALUES_OTHER=fwA;bjA.NetTransportValues=(0,O5.createConstMap)([_wA,vwA,ywA,hwA,gwA,xwA,fwA]);var bwA="wifi",mwA="wired",uwA="cell",dwA="unavailable",cwA="unknown";bjA.NETHOSTCONNECTIONTYPEVALUES_WIFI=bwA;bjA.NETHOSTCONNECTIONTYPEVALUES_WIRED=mwA;bjA.NETHOSTCONNECTIONTYPEVALUES_CELL=uwA;bjA.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=dwA;bjA.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=cwA;bjA.NetHostConnectionTypeValues=(0,O5.createConstMap)([bwA,mwA,uwA,dwA,cwA]);var lwA="gprs",pwA="edge",iwA="umts",nwA="cdma",swA="evdo_0",rwA="evdo_a",awA="cdma2000_1xrtt",owA="hsdpa",twA="hsupa",ewA="hspa",AjA="iden",QjA="evdo_b",BjA="lte",YjA="ehrpd",JjA="hspap",CjA="gsm",XjA="td_scdma",GjA="iwlan",FjA="nr",WjA="nrnsa",ZjA="lte_ca";bjA.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=lwA;bjA.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=pwA;bjA.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=iwA;bjA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=nwA;bjA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=swA;bjA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=rwA;bjA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=awA;bjA.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=owA;bjA.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=twA;bjA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=ewA;bjA.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=AjA;bjA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=QjA;bjA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=BjA;bjA.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=YjA;bjA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=JjA;bjA.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=CjA;bjA.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=XjA;bjA.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=GjA;bjA.NETHOSTCONNECTIONSUBTYPEVALUES_NR=FjA;bjA.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=WjA;bjA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=ZjA;bjA.NetHostConnectionSubtypeValues=(0,O5.createConstMap)([lwA,pwA,iwA,nwA,swA,rwA,awA,owA,twA,ewA,AjA,QjA,BjA,YjA,JjA,CjA,XjA,GjA,FjA,WjA,ZjA]);var $jA="1.0",UjA="1.1",EjA="2.0",KjA="SPDY",VjA="QUIC";bjA.HTTPFLAVORVALUES_HTTP_1_0=$jA;bjA.HTTPFLAVORVALUES_HTTP_1_1=UjA;bjA.HTTPFLAVORVALUES_HTTP_2_0=EjA;bjA.HTTPFLAVORVALUES_SPDY=KjA;bjA.HTTPFLAVORVALUES_QUIC=VjA;bjA.HttpFlavorValues={HTTP_1_0:$jA,HTTP_1_1:UjA,HTTP_2_0:EjA,SPDY:KjA,QUIC:VjA};var IjA="queue",HjA="topic";bjA.MESSAGINGDESTINATIONKINDVALUES_QUEUE=IjA;bjA.MESSAGINGDESTINATIONKINDVALUES_TOPIC=HjA;bjA.MessagingDestinationKindValues=(0,O5.createConstMap)([IjA,HjA]);var DjA="receive",NjA="process";bjA.MESSAGINGOPERATIONVALUES_RECEIVE=DjA;bjA.MESSAGINGOPERATIONVALUES_PROCESS=NjA;bjA.MessagingOperationValues=(0,O5.createConstMap)([DjA,NjA]);var LjA=0,qjA=1,MjA=2,zjA=3,RjA=4,wjA=5,jjA=6,OjA=7,PjA=8,TjA=9,SjA=10,kjA=11,_jA=12,vjA=13,yjA=14,hjA=15,gjA=16;bjA.RPCGRPCSTATUSCODEVALUES_OK=LjA;bjA.RPCGRPCSTATUSCODEVALUES_CANCELLED=qjA;bjA.RPCGRPCSTATUSCODEVALUES_UNKNOWN=MjA;bjA.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=zjA;bjA.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=RjA;bjA.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=wjA;bjA.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=jjA;bjA.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=OjA;bjA.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=PjA;bjA.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=TjA;bjA.RPCGRPCSTATUSCODEVALUES_ABORTED=SjA;bjA.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=kjA;bjA.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=_jA;bjA.RPCGRPCSTATUSCODEVALUES_INTERNAL=vjA;bjA.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=yjA;bjA.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=hjA;bjA.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=gjA;bjA.RpcGrpcStatusCodeValues={OK:LjA,CANCELLED:qjA,UNKNOWN:MjA,INVALID_ARGUMENT:zjA,DEADLINE_EXCEEDED:RjA,NOT_FOUND:wjA,ALREADY_EXISTS:jjA,PERMISSION_DENIED:OjA,RESOURCE_EXHAUSTED:PjA,FAILED_PRECONDITION:TjA,ABORTED:SjA,OUT_OF_RANGE:kjA,UNIMPLEMENTED:_jA,INTERNAL:vjA,UNAVAILABLE:yjA,DATA_LOSS:hjA,UNAUTHENTICATED:gjA};var xjA="SENT",fjA="RECEIVED";bjA.MESSAGETYPEVALUES_SENT=xjA;bjA.MESSAGETYPEVALUES_RECEIVED=fjA;bjA.MessageTypeValues=(0,O5.createConstMap)([xjA,fjA])});var njA=R((dZ)=>{var JLB=dZ&&dZ.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),CLB=dZ&&dZ.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))JLB(Q,A,B)};Object.defineProperty(dZ,"__esModule",{value:!0});CLB(ijA(),dZ)});var MTA=R((DTA)=>{Object.defineProperty(DTA,"__esModule",{value:!0});DTA.SEMRESATTRS_K8S_STATEFULSET_NAME=DTA.SEMRESATTRS_K8S_STATEFULSET_UID=DTA.SEMRESATTRS_K8S_DEPLOYMENT_NAME=DTA.SEMRESATTRS_K8S_DEPLOYMENT_UID=DTA.SEMRESATTRS_K8S_REPLICASET_NAME=DTA.SEMRESATTRS_K8S_REPLICASET_UID=DTA.SEMRESATTRS_K8S_CONTAINER_NAME=DTA.SEMRESATTRS_K8S_POD_NAME=DTA.SEMRESATTRS_K8S_POD_UID=DTA.SEMRESATTRS_K8S_NAMESPACE_NAME=DTA.SEMRESATTRS_K8S_NODE_UID=DTA.SEMRESATTRS_K8S_NODE_NAME=DTA.SEMRESATTRS_K8S_CLUSTER_NAME=DTA.SEMRESATTRS_HOST_IMAGE_VERSION=DTA.SEMRESATTRS_HOST_IMAGE_ID=DTA.SEMRESATTRS_HOST_IMAGE_NAME=DTA.SEMRESATTRS_HOST_ARCH=DTA.SEMRESATTRS_HOST_TYPE=DTA.SEMRESATTRS_HOST_NAME=DTA.SEMRESATTRS_HOST_ID=DTA.SEMRESATTRS_FAAS_MAX_MEMORY=DTA.SEMRESATTRS_FAAS_INSTANCE=DTA.SEMRESATTRS_FAAS_VERSION=DTA.SEMRESATTRS_FAAS_ID=DTA.SEMRESATTRS_FAAS_NAME=DTA.SEMRESATTRS_DEVICE_MODEL_NAME=DTA.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=DTA.SEMRESATTRS_DEVICE_ID=DTA.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=DTA.SEMRESATTRS_CONTAINER_IMAGE_TAG=DTA.SEMRESATTRS_CONTAINER_IMAGE_NAME=DTA.SEMRESATTRS_CONTAINER_RUNTIME=DTA.SEMRESATTRS_CONTAINER_ID=DTA.SEMRESATTRS_CONTAINER_NAME=DTA.SEMRESATTRS_AWS_LOG_STREAM_ARNS=DTA.SEMRESATTRS_AWS_LOG_STREAM_NAMES=DTA.SEMRESATTRS_AWS_LOG_GROUP_ARNS=DTA.SEMRESATTRS_AWS_LOG_GROUP_NAMES=DTA.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=DTA.SEMRESATTRS_AWS_ECS_TASK_REVISION=DTA.SEMRESATTRS_AWS_ECS_TASK_FAMILY=DTA.SEMRESATTRS_AWS_ECS_TASK_ARN=DTA.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=DTA.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=DTA.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=DTA.SEMRESATTRS_CLOUD_PLATFORM=DTA.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=DTA.SEMRESATTRS_CLOUD_REGION=DTA.SEMRESATTRS_CLOUD_ACCOUNT_ID=DTA.SEMRESATTRS_CLOUD_PROVIDER=void 0;DTA.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=DTA.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=DTA.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=DTA.CLOUDPLATFORMVALUES_AZURE_AKS=DTA.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=DTA.CLOUDPLATFORMVALUES_AZURE_VM=DTA.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=DTA.CLOUDPLATFORMVALUES_AWS_LAMBDA=DTA.CLOUDPLATFORMVALUES_AWS_EKS=DTA.CLOUDPLATFORMVALUES_AWS_ECS=DTA.CLOUDPLATFORMVALUES_AWS_EC2=DTA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=DTA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=DTA.CloudProviderValues=DTA.CLOUDPROVIDERVALUES_GCP=DTA.CLOUDPROVIDERVALUES_AZURE=DTA.CLOUDPROVIDERVALUES_AWS=DTA.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=DTA.SemanticResourceAttributes=DTA.SEMRESATTRS_WEBENGINE_DESCRIPTION=DTA.SEMRESATTRS_WEBENGINE_VERSION=DTA.SEMRESATTRS_WEBENGINE_NAME=DTA.SEMRESATTRS_TELEMETRY_AUTO_VERSION=DTA.SEMRESATTRS_TELEMETRY_SDK_VERSION=DTA.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=DTA.SEMRESATTRS_TELEMETRY_SDK_NAME=DTA.SEMRESATTRS_SERVICE_VERSION=DTA.SEMRESATTRS_SERVICE_INSTANCE_ID=DTA.SEMRESATTRS_SERVICE_NAMESPACE=DTA.SEMRESATTRS_SERVICE_NAME=DTA.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=DTA.SEMRESATTRS_PROCESS_RUNTIME_VERSION=DTA.SEMRESATTRS_PROCESS_RUNTIME_NAME=DTA.SEMRESATTRS_PROCESS_OWNER=DTA.SEMRESATTRS_PROCESS_COMMAND_ARGS=DTA.SEMRESATTRS_PROCESS_COMMAND_LINE=DTA.SEMRESATTRS_PROCESS_COMMAND=DTA.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=DTA.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=DTA.SEMRESATTRS_PROCESS_PID=DTA.SEMRESATTRS_OS_VERSION=DTA.SEMRESATTRS_OS_NAME=DTA.SEMRESATTRS_OS_DESCRIPTION=DTA.SEMRESATTRS_OS_TYPE=DTA.SEMRESATTRS_K8S_CRONJOB_NAME=DTA.SEMRESATTRS_K8S_CRONJOB_UID=DTA.SEMRESATTRS_K8S_JOB_NAME=DTA.SEMRESATTRS_K8S_JOB_UID=DTA.SEMRESATTRS_K8S_DAEMONSET_NAME=DTA.SEMRESATTRS_K8S_DAEMONSET_UID=void 0;DTA.TelemetrySdkLanguageValues=DTA.TELEMETRYSDKLANGUAGEVALUES_WEBJS=DTA.TELEMETRYSDKLANGUAGEVALUES_RUBY=DTA.TELEMETRYSDKLANGUAGEVALUES_PYTHON=DTA.TELEMETRYSDKLANGUAGEVALUES_PHP=DTA.TELEMETRYSDKLANGUAGEVALUES_NODEJS=DTA.TELEMETRYSDKLANGUAGEVALUES_JAVA=DTA.TELEMETRYSDKLANGUAGEVALUES_GO=DTA.TELEMETRYSDKLANGUAGEVALUES_ERLANG=DTA.TELEMETRYSDKLANGUAGEVALUES_DOTNET=DTA.TELEMETRYSDKLANGUAGEVALUES_CPP=DTA.OsTypeValues=DTA.OSTYPEVALUES_Z_OS=DTA.OSTYPEVALUES_SOLARIS=DTA.OSTYPEVALUES_AIX=DTA.OSTYPEVALUES_HPUX=DTA.OSTYPEVALUES_DRAGONFLYBSD=DTA.OSTYPEVALUES_OPENBSD=DTA.OSTYPEVALUES_NETBSD=DTA.OSTYPEVALUES_FREEBSD=DTA.OSTYPEVALUES_DARWIN=DTA.OSTYPEVALUES_LINUX=DTA.OSTYPEVALUES_WINDOWS=DTA.HostArchValues=DTA.HOSTARCHVALUES_X86=DTA.HOSTARCHVALUES_PPC64=DTA.HOSTARCHVALUES_PPC32=DTA.HOSTARCHVALUES_IA64=DTA.HOSTARCHVALUES_ARM64=DTA.HOSTARCHVALUES_ARM32=DTA.HOSTARCHVALUES_AMD64=DTA.AwsEcsLaunchtypeValues=DTA.AWSECSLAUNCHTYPEVALUES_FARGATE=DTA.AWSECSLAUNCHTYPEVALUES_EC2=DTA.CloudPlatformValues=DTA.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=DTA.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=DTA.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=DTA.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=void 0;var cZ=sc(),sjA="cloud.provider",rjA="cloud.account.id",ajA="cloud.region",ojA="cloud.availability_zone",tjA="cloud.platform",ejA="aws.ecs.container.arn",AOA="aws.ecs.cluster.arn",QOA="aws.ecs.launchtype",BOA="aws.ecs.task.arn",YOA="aws.ecs.task.family",JOA="aws.ecs.task.revision",COA="aws.eks.cluster.arn",XOA="aws.log.group.names",GOA="aws.log.group.arns",FOA="aws.log.stream.names",WOA="aws.log.stream.arns",ZOA="container.name",$OA="container.id",UOA="container.runtime",EOA="container.image.name",KOA="container.image.tag",VOA="deployment.environment",IOA="device.id",HOA="device.model.identifier",DOA="device.model.name",NOA="faas.name",LOA="faas.id",qOA="faas.version",MOA="faas.instance",zOA="faas.max_memory",ROA="host.id",wOA="host.name",jOA="host.type",OOA="host.arch",POA="host.image.name",TOA="host.image.id",SOA="host.image.version",kOA="k8s.cluster.name",_OA="k8s.node.name",vOA="k8s.node.uid",yOA="k8s.namespace.name",hOA="k8s.pod.uid",gOA="k8s.pod.name",xOA="k8s.container.name",fOA="k8s.replicaset.uid",bOA="k8s.replicaset.name",mOA="k8s.deployment.uid",uOA="k8s.deployment.name",dOA="k8s.statefulset.uid",cOA="k8s.statefulset.name",lOA="k8s.daemonset.uid",pOA="k8s.daemonset.name",iOA="k8s.job.uid",nOA="k8s.job.name",sOA="k8s.cronjob.uid",rOA="k8s.cronjob.name",aOA="os.type",oOA="os.description",tOA="os.name",eOA="os.version",APA="process.pid",QPA="process.executable.name",BPA="process.executable.path",YPA="process.command",JPA="process.command_line",CPA="process.command_args",XPA="process.owner",GPA="process.runtime.name",FPA="process.runtime.version",WPA="process.runtime.description",ZPA="service.name",$PA="service.namespace",UPA="service.instance.id",EPA="service.version",KPA="telemetry.sdk.name",VPA="telemetry.sdk.language",IPA="telemetry.sdk.version",HPA="telemetry.auto.version",DPA="webengine.name",NPA="webengine.version",LPA="webengine.description";DTA.SEMRESATTRS_CLOUD_PROVIDER=sjA;DTA.SEMRESATTRS_CLOUD_ACCOUNT_ID=rjA;DTA.SEMRESATTRS_CLOUD_REGION=ajA;DTA.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=ojA;DTA.SEMRESATTRS_CLOUD_PLATFORM=tjA;DTA.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=ejA;DTA.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=AOA;DTA.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=QOA;DTA.SEMRESATTRS_AWS_ECS_TASK_ARN=BOA;DTA.SEMRESATTRS_AWS_ECS_TASK_FAMILY=YOA;DTA.SEMRESATTRS_AWS_ECS_TASK_REVISION=JOA;DTA.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=COA;DTA.SEMRESATTRS_AWS_LOG_GROUP_NAMES=XOA;DTA.SEMRESATTRS_AWS_LOG_GROUP_ARNS=GOA;DTA.SEMRESATTRS_AWS_LOG_STREAM_NAMES=FOA;DTA.SEMRESATTRS_AWS_LOG_STREAM_ARNS=WOA;DTA.SEMRESATTRS_CONTAINER_NAME=ZOA;DTA.SEMRESATTRS_CONTAINER_ID=$OA;DTA.SEMRESATTRS_CONTAINER_RUNTIME=UOA;DTA.SEMRESATTRS_CONTAINER_IMAGE_NAME=EOA;DTA.SEMRESATTRS_CONTAINER_IMAGE_TAG=KOA;DTA.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=VOA;DTA.SEMRESATTRS_DEVICE_ID=IOA;DTA.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=HOA;DTA.SEMRESATTRS_DEVICE_MODEL_NAME=DOA;DTA.SEMRESATTRS_FAAS_NAME=NOA;DTA.SEMRESATTRS_FAAS_ID=LOA;DTA.SEMRESATTRS_FAAS_VERSION=qOA;DTA.SEMRESATTRS_FAAS_INSTANCE=MOA;DTA.SEMRESATTRS_FAAS_MAX_MEMORY=zOA;DTA.SEMRESATTRS_HOST_ID=ROA;DTA.SEMRESATTRS_HOST_NAME=wOA;DTA.SEMRESATTRS_HOST_TYPE=jOA;DTA.SEMRESATTRS_HOST_ARCH=OOA;DTA.SEMRESATTRS_HOST_IMAGE_NAME=POA;DTA.SEMRESATTRS_HOST_IMAGE_ID=TOA;DTA.SEMRESATTRS_HOST_IMAGE_VERSION=SOA;DTA.SEMRESATTRS_K8S_CLUSTER_NAME=kOA;DTA.SEMRESATTRS_K8S_NODE_NAME=_OA;DTA.SEMRESATTRS_K8S_NODE_UID=vOA;DTA.SEMRESATTRS_K8S_NAMESPACE_NAME=yOA;DTA.SEMRESATTRS_K8S_POD_UID=hOA;DTA.SEMRESATTRS_K8S_POD_NAME=gOA;DTA.SEMRESATTRS_K8S_CONTAINER_NAME=xOA;DTA.SEMRESATTRS_K8S_REPLICASET_UID=fOA;DTA.SEMRESATTRS_K8S_REPLICASET_NAME=bOA;DTA.SEMRESATTRS_K8S_DEPLOYMENT_UID=mOA;DTA.SEMRESATTRS_K8S_DEPLOYMENT_NAME=uOA;DTA.SEMRESATTRS_K8S_STATEFULSET_UID=dOA;DTA.SEMRESATTRS_K8S_STATEFULSET_NAME=cOA;DTA.SEMRESATTRS_K8S_DAEMONSET_UID=lOA;DTA.SEMRESATTRS_K8S_DAEMONSET_NAME=pOA;DTA.SEMRESATTRS_K8S_JOB_UID=iOA;DTA.SEMRESATTRS_K8S_JOB_NAME=nOA;DTA.SEMRESATTRS_K8S_CRONJOB_UID=sOA;DTA.SEMRESATTRS_K8S_CRONJOB_NAME=rOA;DTA.SEMRESATTRS_OS_TYPE=aOA;DTA.SEMRESATTRS_OS_DESCRIPTION=oOA;DTA.SEMRESATTRS_OS_NAME=tOA;DTA.SEMRESATTRS_OS_VERSION=eOA;DTA.SEMRESATTRS_PROCESS_PID=APA;DTA.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=QPA;DTA.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=BPA;DTA.SEMRESATTRS_PROCESS_COMMAND=YPA;DTA.SEMRESATTRS_PROCESS_COMMAND_LINE=JPA;DTA.SEMRESATTRS_PROCESS_COMMAND_ARGS=CPA;DTA.SEMRESATTRS_PROCESS_OWNER=XPA;DTA.SEMRESATTRS_PROCESS_RUNTIME_NAME=GPA;DTA.SEMRESATTRS_PROCESS_RUNTIME_VERSION=FPA;DTA.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=WPA;DTA.SEMRESATTRS_SERVICE_NAME=ZPA;DTA.SEMRESATTRS_SERVICE_NAMESPACE=$PA;DTA.SEMRESATTRS_SERVICE_INSTANCE_ID=UPA;DTA.SEMRESATTRS_SERVICE_VERSION=EPA;DTA.SEMRESATTRS_TELEMETRY_SDK_NAME=KPA;DTA.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=VPA;DTA.SEMRESATTRS_TELEMETRY_SDK_VERSION=IPA;DTA.SEMRESATTRS_TELEMETRY_AUTO_VERSION=HPA;DTA.SEMRESATTRS_WEBENGINE_NAME=DPA;DTA.SEMRESATTRS_WEBENGINE_VERSION=NPA;DTA.SEMRESATTRS_WEBENGINE_DESCRIPTION=LPA;DTA.SemanticResourceAttributes=(0,cZ.createConstMap)([sjA,rjA,ajA,ojA,tjA,ejA,AOA,QOA,BOA,YOA,JOA,COA,XOA,GOA,FOA,WOA,ZOA,$OA,UOA,EOA,KOA,VOA,IOA,HOA,DOA,NOA,LOA,qOA,MOA,zOA,ROA,wOA,jOA,OOA,POA,TOA,SOA,kOA,_OA,vOA,yOA,hOA,gOA,xOA,fOA,bOA,mOA,uOA,dOA,cOA,lOA,pOA,iOA,nOA,sOA,rOA,aOA,oOA,tOA,eOA,APA,QPA,BPA,YPA,JPA,CPA,XPA,GPA,FPA,WPA,ZPA,$PA,UPA,EPA,KPA,VPA,IPA,HPA,DPA,NPA,LPA]);var qPA="alibaba_cloud",MPA="aws",zPA="azure",RPA="gcp";DTA.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=qPA;DTA.CLOUDPROVIDERVALUES_AWS=MPA;DTA.CLOUDPROVIDERVALUES_AZURE=zPA;DTA.CLOUDPROVIDERVALUES_GCP=RPA;DTA.CloudProviderValues=(0,cZ.createConstMap)([qPA,MPA,zPA,RPA]);var wPA="alibaba_cloud_ecs",jPA="alibaba_cloud_fc",OPA="aws_ec2",PPA="aws_ecs",TPA="aws_eks",SPA="aws_lambda",kPA="aws_elastic_beanstalk",_PA="azure_vm",vPA="azure_container_instances",yPA="azure_aks",hPA="azure_functions",gPA="azure_app_service",xPA="gcp_compute_engine",fPA="gcp_cloud_run",bPA="gcp_kubernetes_engine",mPA="gcp_cloud_functions",uPA="gcp_app_engine";DTA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=wPA;DTA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=jPA;DTA.CLOUDPLATFORMVALUES_AWS_EC2=OPA;DTA.CLOUDPLATFORMVALUES_AWS_ECS=PPA;DTA.CLOUDPLATFORMVALUES_AWS_EKS=TPA;DTA.CLOUDPLATFORMVALUES_AWS_LAMBDA=SPA;DTA.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=kPA;DTA.CLOUDPLATFORMVALUES_AZURE_VM=_PA;DTA.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=vPA;DTA.CLOUDPLATFORMVALUES_AZURE_AKS=yPA;DTA.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=hPA;DTA.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=gPA;DTA.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=xPA;DTA.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=fPA;DTA.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=bPA;DTA.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=mPA;DTA.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=uPA;DTA.CloudPlatformValues=(0,cZ.createConstMap)([wPA,jPA,OPA,PPA,TPA,SPA,kPA,_PA,vPA,yPA,hPA,gPA,xPA,fPA,bPA,mPA,uPA]);var dPA="ec2",cPA="fargate";DTA.AWSECSLAUNCHTYPEVALUES_EC2=dPA;DTA.AWSECSLAUNCHTYPEVALUES_FARGATE=cPA;DTA.AwsEcsLaunchtypeValues=(0,cZ.createConstMap)([dPA,cPA]);var lPA="amd64",pPA="arm32",iPA="arm64",nPA="ia64",sPA="ppc32",rPA="ppc64",aPA="x86";DTA.HOSTARCHVALUES_AMD64=lPA;DTA.HOSTARCHVALUES_ARM32=pPA;DTA.HOSTARCHVALUES_ARM64=iPA;DTA.HOSTARCHVALUES_IA64=nPA;DTA.HOSTARCHVALUES_PPC32=sPA;DTA.HOSTARCHVALUES_PPC64=rPA;DTA.HOSTARCHVALUES_X86=aPA;DTA.HostArchValues=(0,cZ.createConstMap)([lPA,pPA,iPA,nPA,sPA,rPA,aPA]);var oPA="windows",tPA="linux",ePA="darwin",ATA="freebsd",QTA="netbsd",BTA="openbsd",YTA="dragonflybsd",JTA="hpux",CTA="aix",XTA="solaris",GTA="z_os";DTA.OSTYPEVALUES_WINDOWS=oPA;DTA.OSTYPEVALUES_LINUX=tPA;DTA.OSTYPEVALUES_DARWIN=ePA;DTA.OSTYPEVALUES_FREEBSD=ATA;DTA.OSTYPEVALUES_NETBSD=QTA;DTA.OSTYPEVALUES_OPENBSD=BTA;DTA.OSTYPEVALUES_DRAGONFLYBSD=YTA;DTA.OSTYPEVALUES_HPUX=JTA;DTA.OSTYPEVALUES_AIX=CTA;DTA.OSTYPEVALUES_SOLARIS=XTA;DTA.OSTYPEVALUES_Z_OS=GTA;DTA.OsTypeValues=(0,cZ.createConstMap)([oPA,tPA,ePA,ATA,QTA,BTA,YTA,JTA,CTA,XTA,GTA]);var FTA="cpp",WTA="dotnet",ZTA="erlang",$TA="go",UTA="java",ETA="nodejs",KTA="php",VTA="python",ITA="ruby",HTA="webjs";DTA.TELEMETRYSDKLANGUAGEVALUES_CPP=FTA;DTA.TELEMETRYSDKLANGUAGEVALUES_DOTNET=WTA;DTA.TELEMETRYSDKLANGUAGEVALUES_ERLANG=ZTA;DTA.TELEMETRYSDKLANGUAGEVALUES_GO=$TA;DTA.TELEMETRYSDKLANGUAGEVALUES_JAVA=UTA;DTA.TELEMETRYSDKLANGUAGEVALUES_NODEJS=ETA;DTA.TELEMETRYSDKLANGUAGEVALUES_PHP=KTA;DTA.TELEMETRYSDKLANGUAGEVALUES_PYTHON=VTA;DTA.TELEMETRYSDKLANGUAGEVALUES_RUBY=ITA;DTA.TELEMETRYSDKLANGUAGEVALUES_WEBJS=HTA;DTA.TelemetrySdkLanguageValues=(0,cZ.createConstMap)([FTA,WTA,ZTA,$TA,UTA,ETA,KTA,VTA,ITA,HTA])});var zTA=R((lZ)=>{var yMB=lZ&&lZ.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),hMB=lZ&&lZ.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))yMB(Q,A,B)};Object.defineProperty(lZ,"__esModule",{value:!0});hMB(MTA(),lZ)});var PTA=R((RTA)=>{Object.defineProperty(RTA,"__esModule",{value:!0});RTA.HTTP_REQUEST_METHOD_VALUE_POST=RTA.HTTP_REQUEST_METHOD_VALUE_PATCH=RTA.HTTP_REQUEST_METHOD_VALUE_OPTIONS=RTA.HTTP_REQUEST_METHOD_VALUE_HEAD=RTA.HTTP_REQUEST_METHOD_VALUE_GET=RTA.HTTP_REQUEST_METHOD_VALUE_DELETE=RTA.HTTP_REQUEST_METHOD_VALUE_CONNECT=RTA.HTTP_REQUEST_METHOD_VALUE_OTHER=RTA.ATTR_HTTP_REQUEST_METHOD=RTA.ATTR_HTTP_REQUEST_HEADER=RTA.ATTR_EXCEPTION_TYPE=RTA.ATTR_EXCEPTION_STACKTRACE=RTA.ATTR_EXCEPTION_MESSAGE=RTA.ATTR_EXCEPTION_ESCAPED=RTA.ERROR_TYPE_VALUE_OTHER=RTA.ATTR_ERROR_TYPE=RTA.ATTR_CLIENT_PORT=RTA.ATTR_CLIENT_ADDRESS=RTA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS=RTA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE=RTA.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS=RTA.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK=RTA.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED=RTA.ATTR_ASPNETCORE_RATE_LIMITING_POLICY=RTA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED=RTA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED=RTA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED=RTA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED=RTA.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT=RTA.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE=RTA.ATTR_TELEMETRY_SDK_VERSION=RTA.ATTR_TELEMETRY_SDK_NAME=RTA.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS=RTA.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT=RTA.TELEMETRY_SDK_LANGUAGE_VALUE_RUST=RTA.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY=RTA.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON=RTA.TELEMETRY_SDK_LANGUAGE_VALUE_PHP=RTA.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS=RTA.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA=RTA.TELEMETRY_SDK_LANGUAGE_VALUE_GO=RTA.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG=RTA.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET=RTA.TELEMETRY_SDK_LANGUAGE_VALUE_CPP=RTA.ATTR_TELEMETRY_SDK_LANGUAGE=RTA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED=RTA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER=RTA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER=RTA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED=RTA.ATTR_ASPNETCORE_RATE_LIMITING_RESULT=void 0;RTA.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT=RTA.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE=RTA.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN=RTA.ATTR_SIGNALR_CONNECTION_STATUS=RTA.ATTR_SERVICE_VERSION=RTA.ATTR_SERVICE_NAME=RTA.ATTR_SERVER_PORT=RTA.ATTR_SERVER_ADDRESS=RTA.ATTR_OTEL_STATUS_DESCRIPTION=RTA.OTEL_STATUS_CODE_VALUE_OK=RTA.OTEL_STATUS_CODE_VALUE_ERROR=RTA.ATTR_OTEL_STATUS_CODE=RTA.ATTR_OTEL_SCOPE_VERSION=RTA.ATTR_OTEL_SCOPE_NAME=RTA.NETWORK_TYPE_VALUE_IPV6=RTA.NETWORK_TYPE_VALUE_IPV4=RTA.ATTR_NETWORK_TYPE=RTA.NETWORK_TRANSPORT_VALUE_UNIX=RTA.NETWORK_TRANSPORT_VALUE_UDP=RTA.NETWORK_TRANSPORT_VALUE_TCP=RTA.NETWORK_TRANSPORT_VALUE_QUIC=RTA.NETWORK_TRANSPORT_VALUE_PIPE=RTA.ATTR_NETWORK_TRANSPORT=RTA.ATTR_NETWORK_PROTOCOL_VERSION=RTA.ATTR_NETWORK_PROTOCOL_NAME=RTA.ATTR_NETWORK_PEER_PORT=RTA.ATTR_NETWORK_PEER_ADDRESS=RTA.ATTR_NETWORK_LOCAL_PORT=RTA.ATTR_NETWORK_LOCAL_ADDRESS=RTA.JVM_THREAD_STATE_VALUE_WAITING=RTA.JVM_THREAD_STATE_VALUE_TIMED_WAITING=RTA.JVM_THREAD_STATE_VALUE_TERMINATED=RTA.JVM_THREAD_STATE_VALUE_RUNNABLE=RTA.JVM_THREAD_STATE_VALUE_NEW=RTA.JVM_THREAD_STATE_VALUE_BLOCKED=RTA.ATTR_JVM_THREAD_STATE=RTA.ATTR_JVM_THREAD_DAEMON=RTA.JVM_MEMORY_TYPE_VALUE_NON_HEAP=RTA.JVM_MEMORY_TYPE_VALUE_HEAP=RTA.ATTR_JVM_MEMORY_TYPE=RTA.ATTR_JVM_MEMORY_POOL_NAME=RTA.ATTR_JVM_GC_NAME=RTA.ATTR_JVM_GC_ACTION=RTA.ATTR_HTTP_ROUTE=RTA.ATTR_HTTP_RESPONSE_STATUS_CODE=RTA.ATTR_HTTP_RESPONSE_HEADER=RTA.ATTR_HTTP_REQUEST_RESEND_COUNT=RTA.ATTR_HTTP_REQUEST_METHOD_ORIGINAL=RTA.HTTP_REQUEST_METHOD_VALUE_TRACE=RTA.HTTP_REQUEST_METHOD_VALUE_PUT=void 0;RTA.ATTR_USER_AGENT_ORIGINAL=RTA.ATTR_URL_SCHEME=RTA.ATTR_URL_QUERY=RTA.ATTR_URL_PATH=RTA.ATTR_URL_FULL=RTA.ATTR_URL_FRAGMENT=RTA.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS=RTA.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS=RTA.SIGNALR_TRANSPORT_VALUE_LONG_POLLING=RTA.ATTR_SIGNALR_TRANSPORT=void 0;RTA.ATTR_ASPNETCORE_RATE_LIMITING_RESULT="aspnetcore.rate_limiting.result";RTA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED="acquired";RTA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER="endpoint_limiter";RTA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER="global_limiter";RTA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED="request_canceled";RTA.ATTR_TELEMETRY_SDK_LANGUAGE="telemetry.sdk.language";RTA.TELEMETRY_SDK_LANGUAGE_VALUE_CPP="cpp";RTA.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET="dotnet";RTA.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG="erlang";RTA.TELEMETRY_SDK_LANGUAGE_VALUE_GO="go";RTA.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA="java";RTA.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS="nodejs";RTA.TELEMETRY_SDK_LANGUAGE_VALUE_PHP="php";RTA.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON="python";RTA.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY="ruby";RTA.TELEMETRY_SDK_LANGUAGE_VALUE_RUST="rust";RTA.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT="swift";RTA.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS="webjs";RTA.ATTR_TELEMETRY_SDK_NAME="telemetry.sdk.name";RTA.ATTR_TELEMETRY_SDK_VERSION="telemetry.sdk.version";RTA.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE="aspnetcore.diagnostics.handler.type";RTA.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT="aspnetcore.diagnostics.exception.result";RTA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED="aborted";RTA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED="handled";RTA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED="skipped";RTA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED="unhandled";RTA.ATTR_ASPNETCORE_RATE_LIMITING_POLICY="aspnetcore.rate_limiting.policy";RTA.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED="aspnetcore.request.is_unhandled";RTA.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK="aspnetcore.routing.is_fallback";RTA.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS="aspnetcore.routing.match_status";RTA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE="failure";RTA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS="success";RTA.ATTR_CLIENT_ADDRESS="client.address";RTA.ATTR_CLIENT_PORT="client.port";RTA.ATTR_ERROR_TYPE="error.type";RTA.ERROR_TYPE_VALUE_OTHER="_OTHER";RTA.ATTR_EXCEPTION_ESCAPED="exception.escaped";RTA.ATTR_EXCEPTION_MESSAGE="exception.message";RTA.ATTR_EXCEPTION_STACKTRACE="exception.stacktrace";RTA.ATTR_EXCEPTION_TYPE="exception.type";var gMB=(A)=>`http.request.header.${A}`;RTA.ATTR_HTTP_REQUEST_HEADER=gMB;RTA.ATTR_HTTP_REQUEST_METHOD="http.request.method";RTA.HTTP_REQUEST_METHOD_VALUE_OTHER="_OTHER";RTA.HTTP_REQUEST_METHOD_VALUE_CONNECT="CONNECT";RTA.HTTP_REQUEST_METHOD_VALUE_DELETE="DELETE";RTA.HTTP_REQUEST_METHOD_VALUE_GET="GET";RTA.HTTP_REQUEST_METHOD_VALUE_HEAD="HEAD";RTA.HTTP_REQUEST_METHOD_VALUE_OPTIONS="OPTIONS";RTA.HTTP_REQUEST_METHOD_VALUE_PATCH="PATCH";RTA.HTTP_REQUEST_METHOD_VALUE_POST="POST";RTA.HTTP_REQUEST_METHOD_VALUE_PUT="PUT";RTA.HTTP_REQUEST_METHOD_VALUE_TRACE="TRACE";RTA.ATTR_HTTP_REQUEST_METHOD_ORIGINAL="http.request.method_original";RTA.ATTR_HTTP_REQUEST_RESEND_COUNT="http.request.resend_count";var xMB=(A)=>`http.response.header.${A}`;RTA.ATTR_HTTP_RESPONSE_HEADER=xMB;RTA.ATTR_HTTP_RESPONSE_STATUS_CODE="http.response.status_code";RTA.ATTR_HTTP_ROUTE="http.route";RTA.ATTR_JVM_GC_ACTION="jvm.gc.action";RTA.ATTR_JVM_GC_NAME="jvm.gc.name";RTA.ATTR_JVM_MEMORY_POOL_NAME="jvm.memory.pool.name";RTA.ATTR_JVM_MEMORY_TYPE="jvm.memory.type";RTA.JVM_MEMORY_TYPE_VALUE_HEAP="heap";RTA.JVM_MEMORY_TYPE_VALUE_NON_HEAP="non_heap";RTA.ATTR_JVM_THREAD_DAEMON="jvm.thread.daemon";RTA.ATTR_JVM_THREAD_STATE="jvm.thread.state";RTA.JVM_THREAD_STATE_VALUE_BLOCKED="blocked";RTA.JVM_THREAD_STATE_VALUE_NEW="new";RTA.JVM_THREAD_STATE_VALUE_RUNNABLE="runnable";RTA.JVM_THREAD_STATE_VALUE_TERMINATED="terminated";RTA.JVM_THREAD_STATE_VALUE_TIMED_WAITING="timed_waiting";RTA.JVM_THREAD_STATE_VALUE_WAITING="waiting";RTA.ATTR_NETWORK_LOCAL_ADDRESS="network.local.address";RTA.ATTR_NETWORK_LOCAL_PORT="network.local.port";RTA.ATTR_NETWORK_PEER_ADDRESS="network.peer.address";RTA.ATTR_NETWORK_PEER_PORT="network.peer.port";RTA.ATTR_NETWORK_PROTOCOL_NAME="network.protocol.name";RTA.ATTR_NETWORK_PROTOCOL_VERSION="network.protocol.version";RTA.ATTR_NETWORK_TRANSPORT="network.transport";RTA.NETWORK_TRANSPORT_VALUE_PIPE="pipe";RTA.NETWORK_TRANSPORT_VALUE_QUIC="quic";RTA.NETWORK_TRANSPORT_VALUE_TCP="tcp";RTA.NETWORK_TRANSPORT_VALUE_UDP="udp";RTA.NETWORK_TRANSPORT_VALUE_UNIX="unix";RTA.ATTR_NETWORK_TYPE="network.type";RTA.NETWORK_TYPE_VALUE_IPV4="ipv4";RTA.NETWORK_TYPE_VALUE_IPV6="ipv6";RTA.ATTR_OTEL_SCOPE_NAME="otel.scope.name";RTA.ATTR_OTEL_SCOPE_VERSION="otel.scope.version";RTA.ATTR_OTEL_STATUS_CODE="otel.status_code";RTA.OTEL_STATUS_CODE_VALUE_ERROR="ERROR";RTA.OTEL_STATUS_CODE_VALUE_OK="OK";RTA.ATTR_OTEL_STATUS_DESCRIPTION="otel.status_description";RTA.ATTR_SERVER_ADDRESS="server.address";RTA.ATTR_SERVER_PORT="server.port";RTA.ATTR_SERVICE_NAME="service.name";RTA.ATTR_SERVICE_VERSION="service.version";RTA.ATTR_SIGNALR_CONNECTION_STATUS="signalr.connection.status";RTA.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN="app_shutdown";RTA.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE="normal_closure";RTA.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT="timeout";RTA.ATTR_SIGNALR_TRANSPORT="signalr.transport";RTA.SIGNALR_TRANSPORT_VALUE_LONG_POLLING="long_polling";RTA.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS="server_sent_events";RTA.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS="web_sockets";RTA.ATTR_URL_FRAGMENT="url.fragment";RTA.ATTR_URL_FULL="url.full";RTA.ATTR_URL_PATH="url.path";RTA.ATTR_URL_QUERY="url.query";RTA.ATTR_URL_SCHEME="url.scheme";RTA.ATTR_USER_AGENT_ORIGINAL="user_agent.original"});var kTA=R((TTA)=>{Object.defineProperty(TTA,"__esModule",{value:!0});TTA.METRIC_SIGNALR_SERVER_CONNECTION_DURATION=TTA.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS=TTA.METRIC_KESTREL_UPGRADED_CONNECTIONS=TTA.METRIC_KESTREL_TLS_HANDSHAKE_DURATION=TTA.METRIC_KESTREL_REJECTED_CONNECTIONS=TTA.METRIC_KESTREL_QUEUED_REQUESTS=TTA.METRIC_KESTREL_QUEUED_CONNECTIONS=TTA.METRIC_KESTREL_CONNECTION_DURATION=TTA.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES=TTA.METRIC_KESTREL_ACTIVE_CONNECTIONS=TTA.METRIC_JVM_THREAD_COUNT=TTA.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC=TTA.METRIC_JVM_MEMORY_USED=TTA.METRIC_JVM_MEMORY_LIMIT=TTA.METRIC_JVM_MEMORY_COMMITTED=TTA.METRIC_JVM_GC_DURATION=TTA.METRIC_JVM_CPU_TIME=TTA.METRIC_JVM_CPU_RECENT_UTILIZATION=TTA.METRIC_JVM_CPU_COUNT=TTA.METRIC_JVM_CLASS_UNLOADED=TTA.METRIC_JVM_CLASS_LOADED=TTA.METRIC_JVM_CLASS_COUNT=TTA.METRIC_HTTP_SERVER_REQUEST_DURATION=TTA.METRIC_HTTP_CLIENT_REQUEST_DURATION=TTA.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS=TTA.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS=TTA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION=TTA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE=TTA.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS=TTA.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES=TTA.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS=void 0;TTA.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS="aspnetcore.diagnostics.exceptions";TTA.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES="aspnetcore.rate_limiting.active_request_leases";TTA.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS="aspnetcore.rate_limiting.queued_requests";TTA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE="aspnetcore.rate_limiting.request.time_in_queue";TTA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION="aspnetcore.rate_limiting.request_lease.duration";TTA.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS="aspnetcore.rate_limiting.requests";TTA.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS="aspnetcore.routing.match_attempts";TTA.METRIC_HTTP_CLIENT_REQUEST_DURATION="http.client.request.duration";TTA.METRIC_HTTP_SERVER_REQUEST_DURATION="http.server.request.duration";TTA.METRIC_JVM_CLASS_COUNT="jvm.class.count";TTA.METRIC_JVM_CLASS_LOADED="jvm.class.loaded";TTA.METRIC_JVM_CLASS_UNLOADED="jvm.class.unloaded";TTA.METRIC_JVM_CPU_COUNT="jvm.cpu.count";TTA.METRIC_JVM_CPU_RECENT_UTILIZATION="jvm.cpu.recent_utilization";TTA.METRIC_JVM_CPU_TIME="jvm.cpu.time";TTA.METRIC_JVM_GC_DURATION="jvm.gc.duration";TTA.METRIC_JVM_MEMORY_COMMITTED="jvm.memory.committed";TTA.METRIC_JVM_MEMORY_LIMIT="jvm.memory.limit";TTA.METRIC_JVM_MEMORY_USED="jvm.memory.used";TTA.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC="jvm.memory.used_after_last_gc";TTA.METRIC_JVM_THREAD_COUNT="jvm.thread.count";TTA.METRIC_KESTREL_ACTIVE_CONNECTIONS="kestrel.active_connections";TTA.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES="kestrel.active_tls_handshakes";TTA.METRIC_KESTREL_CONNECTION_DURATION="kestrel.connection.duration";TTA.METRIC_KESTREL_QUEUED_CONNECTIONS="kestrel.queued_connections";TTA.METRIC_KESTREL_QUEUED_REQUESTS="kestrel.queued_requests";TTA.METRIC_KESTREL_REJECTED_CONNECTIONS="kestrel.rejected_connections";TTA.METRIC_KESTREL_TLS_HANDSHAKE_DURATION="kestrel.tls_handshake.duration";TTA.METRIC_KESTREL_UPGRADED_CONNECTIONS="kestrel.upgraded_connections";TTA.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS="signalr.server.active_connections";TTA.METRIC_SIGNALR_SERVER_CONNECTION_DURATION="signalr.server.connection.duration"});var _TA=R((e1)=>{var E3B=e1&&e1.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),fj=e1&&e1.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))E3B(Q,A,B)};Object.defineProperty(e1,"__esModule",{value:!0});fj(njA(),e1);fj(zTA(),e1);fj(PTA(),e1);fj(kTA(),e1)});var hTA=R((vTA)=>{Object.defineProperty(vTA,"__esModule",{value:!0});vTA.SDK_INFO=void 0;var K3B=nc(),_N=_TA();vTA.SDK_INFO={[_N.SEMRESATTRS_TELEMETRY_SDK_NAME]:"opentelemetry",[_N.SEMRESATTRS_PROCESS_RUNTIME_NAME]:"node",[_N.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE]:_N.TELEMETRYSDKLANGUAGEVALUES_NODEJS,[_N.SEMRESATTRS_TELEMETRY_SDK_VERSION]:K3B.VERSION}});var fTA=R((gTA)=>{Object.defineProperty(gTA,"__esModule",{value:!0});gTA.unrefTimer=void 0;function V3B(A){A.unref()}gTA.unrefTimer=V3B});var mTA=R((A6)=>{Object.defineProperty(A6,"__esModule",{value:!0});A6.unrefTimer=A6.SDK_INFO=A6.otperformance=A6.RandomIdGenerator=A6.hexToBase64=A6._globalThis=A6.getEnv=A6.getEnvWithoutDefaults=void 0;var bTA=OzA();Object.defineProperty(A6,"getEnvWithoutDefaults",{enumerable:!0,get:function(){return bTA.getEnvWithoutDefaults}});Object.defineProperty(A6,"getEnv",{enumerable:!0,get:function(){return bTA.getEnv}});var I3B=SzA();Object.defineProperty(A6,"_globalThis",{enumerable:!0,get:function(){return I3B._globalThis}});var H3B=gzA();Object.defineProperty(A6,"hexToBase64",{enumerable:!0,get:function(){return H3B.hexToBase64}});var D3B=dzA();Object.defineProperty(A6,"RandomIdGenerator",{enumerable:!0,get:function(){return D3B.RandomIdGenerator}});var N3B=pzA();Object.defineProperty(A6,"otperformance",{enumerable:!0,get:function(){return N3B.otperformance}});var L3B=hTA();Object.defineProperty(A6,"SDK_INFO",{enumerable:!0,get:function(){return L3B.SDK_INFO}});var q3B=fTA();Object.defineProperty(A6,"unrefTimer",{enumerable:!0,get:function(){return q3B.unrefTimer}})});var rc=R((Q6)=>{Object.defineProperty(Q6,"__esModule",{value:!0});Q6.unrefTimer=Q6.otperformance=Q6.hexToBase64=Q6.getEnvWithoutDefaults=Q6.getEnv=Q6._globalThis=Q6.SDK_INFO=Q6.RandomIdGenerator=void 0;var JF=mTA();Object.defineProperty(Q6,"RandomIdGenerator",{enumerable:!0,get:function(){return JF.RandomIdGenerator}});Object.defineProperty(Q6,"SDK_INFO",{enumerable:!0,get:function(){return JF.SDK_INFO}});Object.defineProperty(Q6,"_globalThis",{enumerable:!0,get:function(){return JF._globalThis}});Object.defineProperty(Q6,"getEnv",{enumerable:!0,get:function(){return JF.getEnv}});Object.defineProperty(Q6,"getEnvWithoutDefaults",{enumerable:!0,get:function(){return JF.getEnvWithoutDefaults}});Object.defineProperty(Q6,"hexToBase64",{enumerable:!0,get:function(){return JF.hexToBase64}});Object.defineProperty(Q6,"otperformance",{enumerable:!0,get:function(){return JF.otperformance}});Object.defineProperty(Q6,"unrefTimer",{enumerable:!0,get:function(){return JF.unrefTimer}})});var iTA=R((lTA)=>{Object.defineProperty(lTA,"__esModule",{value:!0});lTA.addHrTimes=lTA.isTimeInput=lTA.isTimeInputHrTime=lTA.hrTimeToMicroseconds=lTA.hrTimeToMilliseconds=lTA.hrTimeToNanoseconds=lTA.hrTimeToTimeStamp=lTA.hrTimeDuration=lTA.timeInputToHrTime=lTA.hrTime=lTA.getTimeOrigin=lTA.millisToHrTime=void 0;var ac=rc(),uTA=9,R3B=6,w3B=Math.pow(10,R3B),bj=Math.pow(10,uTA);function vN(A){let Q=A/1000,B=Math.trunc(Q),Y=Math.round(A%1000*w3B);return[B,Y]}lTA.millisToHrTime=vN;function oc(){let A=ac.otperformance.timeOrigin;if(typeof A!=="number"){let Q=ac.otperformance;A=Q.timing&&Q.timing.fetchStart}return A}lTA.getTimeOrigin=oc;function dTA(A){let Q=vN(oc()),B=vN(typeof A==="number"?A:ac.otperformance.now());return cTA(Q,B)}lTA.hrTime=dTA;function j3B(A){if(tc(A))return A;else if(typeof A==="number")if(A=bj)B[1]-=bj,B[0]+=1;return B}lTA.addHrTimes=cTA});var sTA=R((nTA)=>{Object.defineProperty(nTA,"__esModule",{value:!0});nTA.ExportResultCode=void 0;var l3B;(function(A){A[A.SUCCESS=0]="SUCCESS",A[A.FAILED=1]="FAILED"})(l3B=nTA.ExportResultCode||(nTA.ExportResultCode={}))});var eTA=R((oTA)=>{Object.defineProperty(oTA,"__esModule",{value:!0});oTA.CompositePropagator=void 0;var rTA=yA();class aTA{constructor(A={}){var Q;this._propagators=(Q=A.propagators)!==null&&Q!==void 0?Q:[],this._fields=Array.from(new Set(this._propagators.map((B)=>typeof B.fields==="function"?B.fields():[]).reduce((B,Y)=>B.concat(Y),[])))}inject(A,Q,B){for(let Y of this._propagators)try{Y.inject(A,Q,B)}catch(J){rTA.diag.warn(`Failed to inject with ${Y.constructor.name}. Err: ${J.message}`)}}extract(A,Q,B){return this._propagators.reduce((Y,J)=>{try{return J.extract(Y,Q,B)}catch(C){rTA.diag.warn(`Failed to extract with ${J.constructor.name}. Err: ${C.message}`)}return Y},A)}fields(){return this._fields.slice()}}oTA.CompositePropagator=aTA});var BSA=R((ASA)=>{Object.defineProperty(ASA,"__esModule",{value:!0});ASA.validateValue=ASA.validateKey=void 0;var Al="[_0-9a-z-*/]",p3B=`[a-z]${Al}{0,255}`,i3B=`[a-z0-9]${Al}{0,240}@[a-z]${Al}{0,13}`,n3B=new RegExp(`^(?:${p3B}|${i3B})$`),s3B=/^[ -~]{0,255}[!-~]$/,r3B=/,|=/;function a3B(A){return n3B.test(A)}ASA.validateKey=a3B;function o3B(A){return s3B.test(A)&&!r3B.test(A)}ASA.validateValue=o3B});var Bl=R((GSA)=>{Object.defineProperty(GSA,"__esModule",{value:!0});GSA.TraceState=void 0;var YSA=BSA(),JSA=32,e3B=512,CSA=",",XSA="=";class Ql{constructor(A){if(this._internalState=new Map,A)this._parse(A)}set(A,Q){let B=this._clone();if(B._internalState.has(A))B._internalState.delete(A);return B._internalState.set(A,Q),B}unset(A){let Q=this._clone();return Q._internalState.delete(A),Q}get(A){return this._internalState.get(A)}serialize(){return this._keys().reduce((A,Q)=>{return A.push(Q+XSA+this.get(Q)),A},[]).join(CSA)}_parse(A){if(A.length>e3B)return;if(this._internalState=A.split(CSA).reverse().reduce((Q,B)=>{let Y=B.trim(),J=Y.indexOf(XSA);if(J!==-1){let C=Y.slice(0,J),X=Y.slice(J+1,B.length);if((0,YSA.validateKey)(C)&&(0,YSA.validateValue)(X))Q.set(C,X)}return Q},new Map),this._internalState.size>JSA)this._internalState=new Map(Array.from(this._internalState.entries()).reverse().slice(0,JSA))}_keys(){return Array.from(this._internalState.keys()).reverse()}_clone(){let A=new Ql;return A._internalState=new Map(this._internalState),A}}GSA.TraceState=Ql});var ESA=R(($SA)=>{Object.defineProperty($SA,"__esModule",{value:!0});$SA.W3CTraceContextPropagator=$SA.parseTraceParent=$SA.TRACE_STATE_HEADER=$SA.TRACE_PARENT_HEADER=void 0;var mj=yA(),ARB=kN(),QRB=Bl();$SA.TRACE_PARENT_HEADER="traceparent";$SA.TRACE_STATE_HEADER="tracestate";var BRB="00",YRB="(?!ff)[\\da-f]{2}",JRB="(?![0]{32})[\\da-f]{32}",CRB="(?![0]{16})[\\da-f]{16}",XRB="[\\da-f]{2}",GRB=new RegExp(`^\\s?(${YRB})-(${JRB})-(${CRB})-(${XRB})(-.*)?\\s?$`);function WSA(A){let Q=GRB.exec(A);if(!Q)return null;if(Q[1]==="00"&&Q[5])return null;return{traceId:Q[2],spanId:Q[3],traceFlags:parseInt(Q[4],16)}}$SA.parseTraceParent=WSA;class ZSA{inject(A,Q,B){let Y=mj.trace.getSpanContext(A);if(!Y||(0,ARB.isTracingSuppressed)(A)||!(0,mj.isSpanContextValid)(Y))return;let J=`${BRB}-${Y.traceId}-${Y.spanId}-0${Number(Y.traceFlags||mj.TraceFlags.NONE).toString(16)}`;if(B.set(Q,$SA.TRACE_PARENT_HEADER,J),Y.traceState)B.set(Q,$SA.TRACE_STATE_HEADER,Y.traceState.serialize())}extract(A,Q,B){let Y=B.get(Q,$SA.TRACE_PARENT_HEADER);if(!Y)return A;let J=Array.isArray(Y)?Y[0]:Y;if(typeof J!=="string")return A;let C=WSA(J);if(!C)return A;C.isRemote=!0;let X=B.get(Q,$SA.TRACE_STATE_HEADER);if(X){let G=Array.isArray(X)?X.join(","):X;C.traceState=new QRB.TraceState(typeof G==="string"?G:void 0)}return mj.trace.setSpanContext(A,C)}fields(){return[$SA.TRACE_PARENT_HEADER,$SA.TRACE_STATE_HEADER]}}$SA.W3CTraceContextPropagator=ZSA});var HSA=R((VSA)=>{Object.defineProperty(VSA,"__esModule",{value:!0});VSA.getRPCMetadata=VSA.deleteRPCMetadata=VSA.setRPCMetadata=VSA.RPCType=void 0;var WRB=yA(),Yl=(0,WRB.createContextKey)("OpenTelemetry SDK Context Key RPC_METADATA"),ZRB;(function(A){A.HTTP="http"})(ZRB=VSA.RPCType||(VSA.RPCType={}));function $RB(A,Q){return A.setValue(Yl,Q)}VSA.setRPCMetadata=$RB;function URB(A){return A.deleteValue(Yl)}VSA.deleteRPCMetadata=URB;function ERB(A){return A.getValue(Yl)}VSA.getRPCMetadata=ERB});var Jl=R((NSA)=>{Object.defineProperty(NSA,"__esModule",{value:!0});NSA.AlwaysOffSampler=void 0;var IRB=yA();class DSA{shouldSample(){return{decision:IRB.SamplingDecision.NOT_RECORD}}toString(){return"AlwaysOffSampler"}}NSA.AlwaysOffSampler=DSA});var Cl=R((MSA)=>{Object.defineProperty(MSA,"__esModule",{value:!0});MSA.AlwaysOnSampler=void 0;var HRB=yA();class qSA{shouldSample(){return{decision:HRB.SamplingDecision.RECORD_AND_SAMPLED}}toString(){return"AlwaysOnSampler"}}MSA.AlwaysOnSampler=qSA});var PSA=R((jSA)=>{Object.defineProperty(jSA,"__esModule",{value:!0});jSA.ParentBasedSampler=void 0;var cj=yA(),DRB=uc(),RSA=Jl(),Xl=Cl();class wSA{constructor(A){var Q,B,Y,J;if(this._root=A.root,!this._root)(0,DRB.globalErrorHandler)(Error("ParentBasedSampler must have a root sampler configured")),this._root=new Xl.AlwaysOnSampler;this._remoteParentSampled=(Q=A.remoteParentSampled)!==null&&Q!==void 0?Q:new Xl.AlwaysOnSampler,this._remoteParentNotSampled=(B=A.remoteParentNotSampled)!==null&&B!==void 0?B:new RSA.AlwaysOffSampler,this._localParentSampled=(Y=A.localParentSampled)!==null&&Y!==void 0?Y:new Xl.AlwaysOnSampler,this._localParentNotSampled=(J=A.localParentNotSampled)!==null&&J!==void 0?J:new RSA.AlwaysOffSampler}shouldSample(A,Q,B,Y,J,C){let X=cj.trace.getSpanContext(A);if(!X||!(0,cj.isSpanContextValid)(X))return this._root.shouldSample(A,Q,B,Y,J,C);if(X.isRemote){if(X.traceFlags&cj.TraceFlags.SAMPLED)return this._remoteParentSampled.shouldSample(A,Q,B,Y,J,C);return this._remoteParentNotSampled.shouldSample(A,Q,B,Y,J,C)}if(X.traceFlags&cj.TraceFlags.SAMPLED)return this._localParentSampled.shouldSample(A,Q,B,Y,J,C);return this._localParentNotSampled.shouldSample(A,Q,B,Y,J,C)}toString(){return`ParentBased{root=${this._root.toString()}, remoteParentSampled=${this._remoteParentSampled.toString()}, remoteParentNotSampled=${this._remoteParentNotSampled.toString()}, localParentSampled=${this._localParentSampled.toString()}, localParentNotSampled=${this._localParentNotSampled.toString()}}`}}jSA.ParentBasedSampler=wSA});var _SA=R((SSA)=>{Object.defineProperty(SSA,"__esModule",{value:!0});SSA.TraceIdRatioBasedSampler=void 0;var Gl=yA();class TSA{constructor(A=0){this._ratio=A,this._ratio=this._normalize(A),this._upperBound=Math.floor(this._ratio*4294967295)}shouldSample(A,Q){return{decision:(0,Gl.isValidTraceId)(Q)&&this._accumulate(Q)=1?1:A<=0?0:A}_accumulate(A){let Q=0;for(let B=0;B>>0}return Q}}SSA.TraceIdRatioBasedSampler=TSA});var bSA=R((xSA)=>{Object.defineProperty(xSA,"__esModule",{value:!0});xSA.isPlainObject=void 0;var NRB="[object Object]",LRB="[object Null]",qRB="[object Undefined]",MRB=Function.prototype,vSA=MRB.toString,zRB=vSA.call(Object),RRB=wRB(Object.getPrototypeOf,Object),ySA=Object.prototype,hSA=ySA.hasOwnProperty,pZ=Symbol?Symbol.toStringTag:void 0,gSA=ySA.toString;function wRB(A,Q){return function(B){return A(Q(B))}}function jRB(A){if(!ORB(A)||PRB(A)!==NRB)return!1;let Q=RRB(A);if(Q===null)return!0;let B=hSA.call(Q,"constructor")&&Q.constructor;return typeof B=="function"&&B instanceof B&&vSA.call(B)===zRB}xSA.isPlainObject=jRB;function ORB(A){return A!=null&&typeof A=="object"}function PRB(A){if(A==null)return A===void 0?qRB:LRB;return pZ&&pZ in Object(A)?TRB(A):SRB(A)}function TRB(A){let Q=hSA.call(A,pZ),B=A[pZ],Y=!1;try{A[pZ]=void 0,Y=!0}catch(C){}let J=gSA.call(A);if(Y)if(Q)A[pZ]=B;else delete A[pZ];return J}function SRB(A){return gSA.call(A)}});var iSA=R((lSA)=>{Object.defineProperty(lSA,"__esModule",{value:!0});lSA.merge=void 0;var mSA=bSA(),kRB=20;function _RB(...A){let Q=A.shift(),B=new WeakMap;while(A.length>0)Q=dSA(Q,A.shift(),0,B);return Q}lSA.merge=_RB;function Fl(A){if(pj(A))return A.slice();return A}function dSA(A,Q,B=0,Y){let J;if(B>kRB)return;if(B++,lj(A)||lj(Q)||cSA(Q))J=Fl(Q);else if(pj(A)){if(J=A.slice(),pj(Q))for(let C=0,X=Q.length;C"u")delete J[F];else J[F]=W;else{let Z=J[F],U=W;if(uSA(A,F,Y)||uSA(Q,F,Y))delete J[F];else{if(yN(Z)&&yN(U)){let $=Y.get(Z)||[],E=Y.get(U)||[];$.push({obj:A,key:F}),E.push({obj:Q,key:F}),Y.set(Z,$),Y.set(U,E)}J[F]=dSA(J[F],W,B,Y)}}}}else J=Q;return J}function uSA(A,Q,B){let Y=B.get(A[Q])||[];for(let J=0,C=Y.length;J"u"||A instanceof Date||A instanceof RegExp||A===null}function vRB(A,Q){if(!(0,mSA.isPlainObject)(A)||!(0,mSA.isPlainObject)(Q))return!1;return!0}});var rSA=R((nSA)=>{Object.defineProperty(nSA,"__esModule",{value:!0});nSA.callWithTimeout=nSA.TimeoutError=void 0;class ij extends Error{constructor(A){super(A);Object.setPrototypeOf(this,ij.prototype)}}nSA.TimeoutError=ij;function yRB(A,Q){let B,Y=new Promise(function(C,X){B=setTimeout(function(){X(new ij("Operation timed out."))},Q)});return Promise.race([A,Y]).then((J)=>{return clearTimeout(B),J},(J)=>{throw clearTimeout(B),J})}nSA.callWithTimeout=yRB});var eSA=R((oSA)=>{Object.defineProperty(oSA,"__esModule",{value:!0});oSA.isUrlIgnored=oSA.urlMatches=void 0;function aSA(A,Q){if(typeof Q==="string")return A===Q;else return!!A.match(Q)}oSA.urlMatches=aSA;function gRB(A,Q){if(!Q)return!1;for(let B of Q)if(aSA(A,B))return!0;return!1}oSA.isUrlIgnored=gRB});var BkA=R((AkA)=>{Object.defineProperty(AkA,"__esModule",{value:!0});AkA.isWrapped=void 0;function fRB(A){return typeof A==="function"&&typeof A.__original==="function"&&typeof A.__unwrap==="function"&&A.__wrapped===!0}AkA.isWrapped=fRB});var XkA=R((JkA)=>{Object.defineProperty(JkA,"__esModule",{value:!0});JkA.Deferred=void 0;class YkA{constructor(){this._promise=new Promise((A,Q)=>{this._resolve=A,this._reject=Q})}get promise(){return this._promise}resolve(A){this._resolve(A)}reject(A){this._reject(A)}}JkA.Deferred=YkA});var ZkA=R((FkA)=>{Object.defineProperty(FkA,"__esModule",{value:!0});FkA.BindOnceFuture=void 0;var bRB=XkA();class GkA{constructor(A,Q){this._callback=A,this._that=Q,this._isCalled=!1,this._deferred=new bRB.Deferred}get isCalled(){return this._isCalled}get promise(){return this._deferred.promise}call(...A){if(!this._isCalled){this._isCalled=!0;try{Promise.resolve(this._callback.call(this._that,...A)).then((Q)=>this._deferred.resolve(Q),(Q)=>this._deferred.reject(Q))}catch(Q){this._deferred.reject(Q)}}return this._deferred.promise}}FkA.BindOnceFuture=GkA});var KkA=R((UkA)=>{Object.defineProperty(UkA,"__esModule",{value:!0});UkA._export=void 0;var $kA=yA(),mRB=kN();function uRB(A,Q){return new Promise((B)=>{$kA.context.with((0,mRB.suppressTracing)($kA.context.active()),()=>{A.export(Q,(Y)=>{B(Y)})})})}UkA._export=uRB});var MB=R((sA)=>{Object.defineProperty(sA,"__esModule",{value:!0});sA.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=sA.DEFAULT_ATTRIBUTE_COUNT_LIMIT=sA.TraceState=sA.unsuppressTracing=sA.suppressTracing=sA.isTracingSuppressed=sA.TraceIdRatioBasedSampler=sA.ParentBasedSampler=sA.AlwaysOnSampler=sA.AlwaysOffSampler=sA.setRPCMetadata=sA.getRPCMetadata=sA.deleteRPCMetadata=sA.RPCType=sA.parseTraceParent=sA.W3CTraceContextPropagator=sA.TRACE_STATE_HEADER=sA.TRACE_PARENT_HEADER=sA.CompositePropagator=sA.unrefTimer=sA.otperformance=sA.hexToBase64=sA.getEnvWithoutDefaults=sA.getEnv=sA._globalThis=sA.SDK_INFO=sA.RandomIdGenerator=sA.baggageUtils=sA.ExportResultCode=sA.hexToBinary=sA.timeInputToHrTime=sA.millisToHrTime=sA.isTimeInputHrTime=sA.isTimeInput=sA.hrTimeToTimeStamp=sA.hrTimeToNanoseconds=sA.hrTimeToMilliseconds=sA.hrTimeToMicroseconds=sA.hrTimeDuration=sA.hrTime=sA.getTimeOrigin=sA.addHrTimes=sA.loggingErrorHandler=sA.setGlobalErrorHandler=sA.globalErrorHandler=sA.sanitizeAttributes=sA.isAttributeValue=sA.isAttributeKey=sA.AnchoredClock=sA.W3CBaggagePropagator=void 0;sA.internal=sA.VERSION=sA.BindOnceFuture=sA.isWrapped=sA.urlMatches=sA.isUrlIgnored=sA.callWithTimeout=sA.TimeoutError=sA.TracesSamplerValues=sA.merge=sA.parseEnvironment=sA.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=sA.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=sA.DEFAULT_ENVIRONMENT=void 0;var dRB=BzA();Object.defineProperty(sA,"W3CBaggagePropagator",{enumerable:!0,get:function(){return dRB.W3CBaggagePropagator}});var cRB=XzA();Object.defineProperty(sA,"AnchoredClock",{enumerable:!0,get:function(){return cRB.AnchoredClock}});var Wl=EzA();Object.defineProperty(sA,"isAttributeKey",{enumerable:!0,get:function(){return Wl.isAttributeKey}});Object.defineProperty(sA,"isAttributeValue",{enumerable:!0,get:function(){return Wl.isAttributeValue}});Object.defineProperty(sA,"sanitizeAttributes",{enumerable:!0,get:function(){return Wl.sanitizeAttributes}});var VkA=uc();Object.defineProperty(sA,"globalErrorHandler",{enumerable:!0,get:function(){return VkA.globalErrorHandler}});Object.defineProperty(sA,"setGlobalErrorHandler",{enumerable:!0,get:function(){return VkA.setGlobalErrorHandler}});var lRB=mc();Object.defineProperty(sA,"loggingErrorHandler",{enumerable:!0,get:function(){return lRB.loggingErrorHandler}});var P5=iTA();Object.defineProperty(sA,"addHrTimes",{enumerable:!0,get:function(){return P5.addHrTimes}});Object.defineProperty(sA,"getTimeOrigin",{enumerable:!0,get:function(){return P5.getTimeOrigin}});Object.defineProperty(sA,"hrTime",{enumerable:!0,get:function(){return P5.hrTime}});Object.defineProperty(sA,"hrTimeDuration",{enumerable:!0,get:function(){return P5.hrTimeDuration}});Object.defineProperty(sA,"hrTimeToMicroseconds",{enumerable:!0,get:function(){return P5.hrTimeToMicroseconds}});Object.defineProperty(sA,"hrTimeToMilliseconds",{enumerable:!0,get:function(){return P5.hrTimeToMilliseconds}});Object.defineProperty(sA,"hrTimeToNanoseconds",{enumerable:!0,get:function(){return P5.hrTimeToNanoseconds}});Object.defineProperty(sA,"hrTimeToTimeStamp",{enumerable:!0,get:function(){return P5.hrTimeToTimeStamp}});Object.defineProperty(sA,"isTimeInput",{enumerable:!0,get:function(){return P5.isTimeInput}});Object.defineProperty(sA,"isTimeInputHrTime",{enumerable:!0,get:function(){return P5.isTimeInputHrTime}});Object.defineProperty(sA,"millisToHrTime",{enumerable:!0,get:function(){return P5.millisToHrTime}});Object.defineProperty(sA,"timeInputToHrTime",{enumerable:!0,get:function(){return P5.timeInputToHrTime}});var pRB=ic();Object.defineProperty(sA,"hexToBinary",{enumerable:!0,get:function(){return pRB.hexToBinary}});var iRB=sTA();Object.defineProperty(sA,"ExportResultCode",{enumerable:!0,get:function(){return iRB.ExportResultCode}});var nj=xc();sA.baggageUtils={getKeyPairs:nj.getKeyPairs,serializeKeyPairs:nj.serializeKeyPairs,parseKeyPairsIntoRecord:nj.parseKeyPairsIntoRecord,parsePairKeyValue:nj.parsePairKeyValue};var CF=rc();Object.defineProperty(sA,"RandomIdGenerator",{enumerable:!0,get:function(){return CF.RandomIdGenerator}});Object.defineProperty(sA,"SDK_INFO",{enumerable:!0,get:function(){return CF.SDK_INFO}});Object.defineProperty(sA,"_globalThis",{enumerable:!0,get:function(){return CF._globalThis}});Object.defineProperty(sA,"getEnv",{enumerable:!0,get:function(){return CF.getEnv}});Object.defineProperty(sA,"getEnvWithoutDefaults",{enumerable:!0,get:function(){return CF.getEnvWithoutDefaults}});Object.defineProperty(sA,"hexToBase64",{enumerable:!0,get:function(){return CF.hexToBase64}});Object.defineProperty(sA,"otperformance",{enumerable:!0,get:function(){return CF.otperformance}});Object.defineProperty(sA,"unrefTimer",{enumerable:!0,get:function(){return CF.unrefTimer}});var nRB=eTA();Object.defineProperty(sA,"CompositePropagator",{enumerable:!0,get:function(){return nRB.CompositePropagator}});var sj=ESA();Object.defineProperty(sA,"TRACE_PARENT_HEADER",{enumerable:!0,get:function(){return sj.TRACE_PARENT_HEADER}});Object.defineProperty(sA,"TRACE_STATE_HEADER",{enumerable:!0,get:function(){return sj.TRACE_STATE_HEADER}});Object.defineProperty(sA,"W3CTraceContextPropagator",{enumerable:!0,get:function(){return sj.W3CTraceContextPropagator}});Object.defineProperty(sA,"parseTraceParent",{enumerable:!0,get:function(){return sj.parseTraceParent}});var rj=HSA();Object.defineProperty(sA,"RPCType",{enumerable:!0,get:function(){return rj.RPCType}});Object.defineProperty(sA,"deleteRPCMetadata",{enumerable:!0,get:function(){return rj.deleteRPCMetadata}});Object.defineProperty(sA,"getRPCMetadata",{enumerable:!0,get:function(){return rj.getRPCMetadata}});Object.defineProperty(sA,"setRPCMetadata",{enumerable:!0,get:function(){return rj.setRPCMetadata}});var sRB=Jl();Object.defineProperty(sA,"AlwaysOffSampler",{enumerable:!0,get:function(){return sRB.AlwaysOffSampler}});var rRB=Cl();Object.defineProperty(sA,"AlwaysOnSampler",{enumerable:!0,get:function(){return rRB.AlwaysOnSampler}});var aRB=PSA();Object.defineProperty(sA,"ParentBasedSampler",{enumerable:!0,get:function(){return aRB.ParentBasedSampler}});var oRB=_SA();Object.defineProperty(sA,"TraceIdRatioBasedSampler",{enumerable:!0,get:function(){return oRB.TraceIdRatioBasedSampler}});var Zl=kN();Object.defineProperty(sA,"isTracingSuppressed",{enumerable:!0,get:function(){return Zl.isTracingSuppressed}});Object.defineProperty(sA,"suppressTracing",{enumerable:!0,get:function(){return Zl.suppressTracing}});Object.defineProperty(sA,"unsuppressTracing",{enumerable:!0,get:function(){return Zl.unsuppressTracing}});var tRB=Bl();Object.defineProperty(sA,"TraceState",{enumerable:!0,get:function(){return tRB.TraceState}});var nE=lc();Object.defineProperty(sA,"DEFAULT_ATTRIBUTE_COUNT_LIMIT",{enumerable:!0,get:function(){return nE.DEFAULT_ATTRIBUTE_COUNT_LIMIT}});Object.defineProperty(sA,"DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT",{enumerable:!0,get:function(){return nE.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT}});Object.defineProperty(sA,"DEFAULT_ENVIRONMENT",{enumerable:!0,get:function(){return nE.DEFAULT_ENVIRONMENT}});Object.defineProperty(sA,"DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT",{enumerable:!0,get:function(){return nE.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT}});Object.defineProperty(sA,"DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT",{enumerable:!0,get:function(){return nE.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT}});Object.defineProperty(sA,"parseEnvironment",{enumerable:!0,get:function(){return nE.parseEnvironment}});var eRB=iSA();Object.defineProperty(sA,"merge",{enumerable:!0,get:function(){return eRB.merge}});var AwB=cc();Object.defineProperty(sA,"TracesSamplerValues",{enumerable:!0,get:function(){return AwB.TracesSamplerValues}});var IkA=rSA();Object.defineProperty(sA,"TimeoutError",{enumerable:!0,get:function(){return IkA.TimeoutError}});Object.defineProperty(sA,"callWithTimeout",{enumerable:!0,get:function(){return IkA.callWithTimeout}});var HkA=eSA();Object.defineProperty(sA,"isUrlIgnored",{enumerable:!0,get:function(){return HkA.isUrlIgnored}});Object.defineProperty(sA,"urlMatches",{enumerable:!0,get:function(){return HkA.urlMatches}});var QwB=BkA();Object.defineProperty(sA,"isWrapped",{enumerable:!0,get:function(){return QwB.isWrapped}});var BwB=ZkA();Object.defineProperty(sA,"BindOnceFuture",{enumerable:!0,get:function(){return BwB.BindOnceFuture}});var YwB=nc();Object.defineProperty(sA,"VERSION",{enumerable:!0,get:function(){return YwB.VERSION}});var JwB=KkA();sA.internal={_export:JwB._export}});var hN=R((akY,NkA)=>{var GwB=Number.MAX_SAFE_INTEGER||9007199254740991,FwB=["major","premajor","minor","preminor","patch","prepatch","prerelease"];NkA.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:16,MAX_SAFE_BUILD_LENGTH:250,MAX_SAFE_INTEGER:GwB,RELEASE_TYPES:FwB,SEMVER_SPEC_VERSION:"2.0.0",FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var gN=R((okY,LkA)=>{var WwB=typeof process==="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...A)=>console.error("SEMVER",...A):()=>{};LkA.exports=WwB});var sE=R((B6,qkA)=>{var{MAX_SAFE_COMPONENT_LENGTH:$l,MAX_SAFE_BUILD_LENGTH:ZwB,MAX_LENGTH:$wB}=hN(),UwB=gN();B6=qkA.exports={};var EwB=B6.re=[],KwB=B6.safeRe=[],lA=B6.src=[],VwB=B6.safeSrc=[],pA=B6.t={},IwB=0,Ul="[a-zA-Z0-9-]",HwB=[["\\s",1],["\\d",$wB],[Ul,ZwB]],DwB=(A)=>{for(let[Q,B]of HwB)A=A.split(`${Q}*`).join(`${Q}{0,${B}}`).split(`${Q}+`).join(`${Q}{1,${B}}`);return A},dQ=(A,Q,B)=>{let Y=DwB(Q),J=IwB++;UwB(A,J,Q),pA[A]=J,lA[J]=Q,VwB[J]=Y,EwB[J]=new RegExp(Q,B?"g":void 0),KwB[J]=new RegExp(Y,B?"g":void 0)};dQ("NUMERICIDENTIFIER","0|[1-9]\\d*");dQ("NUMERICIDENTIFIERLOOSE","\\d+");dQ("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${Ul}*`);dQ("MAINVERSION",`(${lA[pA.NUMERICIDENTIFIER]})\\.(${lA[pA.NUMERICIDENTIFIER]})\\.(${lA[pA.NUMERICIDENTIFIER]})`);dQ("MAINVERSIONLOOSE",`(${lA[pA.NUMERICIDENTIFIERLOOSE]})\\.(${lA[pA.NUMERICIDENTIFIERLOOSE]})\\.(${lA[pA.NUMERICIDENTIFIERLOOSE]})`);dQ("PRERELEASEIDENTIFIER",`(?:${lA[pA.NUMERICIDENTIFIER]}|${lA[pA.NONNUMERICIDENTIFIER]})`);dQ("PRERELEASEIDENTIFIERLOOSE",`(?:${lA[pA.NUMERICIDENTIFIERLOOSE]}|${lA[pA.NONNUMERICIDENTIFIER]})`);dQ("PRERELEASE",`(?:-(${lA[pA.PRERELEASEIDENTIFIER]}(?:\\.${lA[pA.PRERELEASEIDENTIFIER]})*))`);dQ("PRERELEASELOOSE",`(?:-?(${lA[pA.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${lA[pA.PRERELEASEIDENTIFIERLOOSE]})*))`);dQ("BUILDIDENTIFIER",`${Ul}+`);dQ("BUILD",`(?:\\+(${lA[pA.BUILDIDENTIFIER]}(?:\\.${lA[pA.BUILDIDENTIFIER]})*))`);dQ("FULLPLAIN",`v?${lA[pA.MAINVERSION]}${lA[pA.PRERELEASE]}?${lA[pA.BUILD]}?`);dQ("FULL",`^${lA[pA.FULLPLAIN]}$`);dQ("LOOSEPLAIN",`[v=\\s]*${lA[pA.MAINVERSIONLOOSE]}${lA[pA.PRERELEASELOOSE]}?${lA[pA.BUILD]}?`);dQ("LOOSE",`^${lA[pA.LOOSEPLAIN]}$`);dQ("GTLT","((?:<|>)?=?)");dQ("XRANGEIDENTIFIERLOOSE",`${lA[pA.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);dQ("XRANGEIDENTIFIER",`${lA[pA.NUMERICIDENTIFIER]}|x|X|\\*`);dQ("XRANGEPLAIN",`[v=\\s]*(${lA[pA.XRANGEIDENTIFIER]})(?:\\.(${lA[pA.XRANGEIDENTIFIER]})(?:\\.(${lA[pA.XRANGEIDENTIFIER]})(?:${lA[pA.PRERELEASE]})?${lA[pA.BUILD]}?)?)?`);dQ("XRANGEPLAINLOOSE",`[v=\\s]*(${lA[pA.XRANGEIDENTIFIERLOOSE]})(?:\\.(${lA[pA.XRANGEIDENTIFIERLOOSE]})(?:\\.(${lA[pA.XRANGEIDENTIFIERLOOSE]})(?:${lA[pA.PRERELEASELOOSE]})?${lA[pA.BUILD]}?)?)?`);dQ("XRANGE",`^${lA[pA.GTLT]}\\s*${lA[pA.XRANGEPLAIN]}$`);dQ("XRANGELOOSE",`^${lA[pA.GTLT]}\\s*${lA[pA.XRANGEPLAINLOOSE]}$`);dQ("COERCEPLAIN",`(^|[^\\d])(\\d{1,${$l}})(?:\\.(\\d{1,${$l}}))?(?:\\.(\\d{1,${$l}}))?`);dQ("COERCE",`${lA[pA.COERCEPLAIN]}(?:$|[^\\d])`);dQ("COERCEFULL",lA[pA.COERCEPLAIN]+`(?:${lA[pA.PRERELEASE]})?(?:${lA[pA.BUILD]})?(?:$|[^\\d])`);dQ("COERCERTL",lA[pA.COERCE],!0);dQ("COERCERTLFULL",lA[pA.COERCEFULL],!0);dQ("LONETILDE","(?:~>?)");dQ("TILDETRIM",`(\\s*)${lA[pA.LONETILDE]}\\s+`,!0);B6.tildeTrimReplace="$1~";dQ("TILDE",`^${lA[pA.LONETILDE]}${lA[pA.XRANGEPLAIN]}$`);dQ("TILDELOOSE",`^${lA[pA.LONETILDE]}${lA[pA.XRANGEPLAINLOOSE]}$`);dQ("LONECARET","(?:\\^)");dQ("CARETTRIM",`(\\s*)${lA[pA.LONECARET]}\\s+`,!0);B6.caretTrimReplace="$1^";dQ("CARET",`^${lA[pA.LONECARET]}${lA[pA.XRANGEPLAIN]}$`);dQ("CARETLOOSE",`^${lA[pA.LONECARET]}${lA[pA.XRANGEPLAINLOOSE]}$`);dQ("COMPARATORLOOSE",`^${lA[pA.GTLT]}\\s*(${lA[pA.LOOSEPLAIN]})$|^$`);dQ("COMPARATOR",`^${lA[pA.GTLT]}\\s*(${lA[pA.FULLPLAIN]})$|^$`);dQ("COMPARATORTRIM",`(\\s*)${lA[pA.GTLT]}\\s*(${lA[pA.LOOSEPLAIN]}|${lA[pA.XRANGEPLAIN]})`,!0);B6.comparatorTrimReplace="$1$2$3";dQ("HYPHENRANGE",`^\\s*(${lA[pA.XRANGEPLAIN]})\\s+-\\s+(${lA[pA.XRANGEPLAIN]})\\s*$`);dQ("HYPHENRANGELOOSE",`^\\s*(${lA[pA.XRANGEPLAINLOOSE]})\\s+-\\s+(${lA[pA.XRANGEPLAINLOOSE]})\\s*$`);dQ("STAR","(<|>)?=?\\s*\\*");dQ("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");dQ("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var aj=R((tkY,MkA)=>{var NwB=Object.freeze({loose:!0}),LwB=Object.freeze({}),qwB=(A)=>{if(!A)return LwB;if(typeof A!=="object")return NwB;return A};MkA.exports=qwB});var El=R((ekY,wkA)=>{var zkA=/^[0-9]+$/,RkA=(A,Q)=>{let B=zkA.test(A),Y=zkA.test(Q);if(B&&Y)A=+A,Q=+Q;return A===Q?0:B&&!Y?-1:Y&&!B?1:ARkA(Q,A);wkA.exports={compareIdentifiers:RkA,rcompareIdentifiers:MwB}});var jJ=R((A_Y,TkA)=>{var oj=gN(),{MAX_LENGTH:jkA,MAX_SAFE_INTEGER:tj}=hN(),{safeRe:OkA,safeSrc:PkA,t:ej}=sE(),zwB=aj(),{compareIdentifiers:rE}=El();class aC{constructor(A,Q){if(Q=zwB(Q),A instanceof aC)if(A.loose===!!Q.loose&&A.includePrerelease===!!Q.includePrerelease)return A;else A=A.version;else if(typeof A!=="string")throw TypeError(`Invalid version. Must be a string. Got type "${typeof A}".`);if(A.length>jkA)throw TypeError(`version is longer than ${jkA} characters`);oj("SemVer",A,Q),this.options=Q,this.loose=!!Q.loose,this.includePrerelease=!!Q.includePrerelease;let B=A.trim().match(Q.loose?OkA[ej.LOOSE]:OkA[ej.FULL]);if(!B)throw TypeError(`Invalid Version: ${A}`);if(this.raw=A,this.major=+B[1],this.minor=+B[2],this.patch=+B[3],this.major>tj||this.major<0)throw TypeError("Invalid major version");if(this.minor>tj||this.minor<0)throw TypeError("Invalid minor version");if(this.patch>tj||this.patch<0)throw TypeError("Invalid patch version");if(!B[4])this.prerelease=[];else this.prerelease=B[4].split(".").map((Y)=>{if(/^[0-9]+$/.test(Y)){let J=+Y;if(J>=0&&J=0)if(typeof this.prerelease[J]==="number")this.prerelease[J]++,J=-2;if(J===-1){if(Q===this.prerelease.join(".")&&B===!1)throw Error("invalid increment argument: identifier already exists");this.prerelease.push(Y)}}if(Q){let J=[Q,Y];if(B===!1)J=[Q];if(rE(this.prerelease[0],Q)===0){if(isNaN(this.prerelease[1]))this.prerelease=J}else this.prerelease=J}break}default:throw Error(`invalid increment argument: ${A}`)}if(this.raw=this.format(),this.build.length)this.raw+=`+${this.build.join(".")}`;return this}}TkA.exports=aC});var iZ=R((Q_Y,kkA)=>{var SkA=jJ(),RwB=(A,Q,B=!1)=>{if(A instanceof SkA)return A;try{return new SkA(A,Q)}catch(Y){if(!B)return null;throw Y}};kkA.exports=RwB});var vkA=R((B_Y,_kA)=>{var wwB=iZ(),jwB=(A,Q)=>{let B=wwB(A,Q);return B?B.version:null};_kA.exports=jwB});var hkA=R((Y_Y,ykA)=>{var OwB=iZ(),PwB=(A,Q)=>{let B=OwB(A.trim().replace(/^[=v]+/,""),Q);return B?B.version:null};ykA.exports=PwB});var fkA=R((J_Y,xkA)=>{var gkA=jJ(),TwB=(A,Q,B,Y,J)=>{if(typeof B==="string")J=Y,Y=B,B=void 0;try{return new gkA(A instanceof gkA?A.version:A,B).inc(Q,Y,J).version}catch(C){return null}};xkA.exports=TwB});var ukA=R((C_Y,mkA)=>{var bkA=iZ(),SwB=(A,Q)=>{let B=bkA(A,null,!0),Y=bkA(Q,null,!0),J=B.compare(Y);if(J===0)return null;let C=J>0,X=C?B:Y,G=C?Y:B,F=!!X.prerelease.length;if(!!G.prerelease.length&&!F){if(!G.patch&&!G.minor)return"major";if(G.compareMain(X)===0){if(G.minor&&!G.patch)return"minor";return"patch"}}let Z=F?"pre":"";if(B.major!==Y.major)return Z+"major";if(B.minor!==Y.minor)return Z+"minor";if(B.patch!==Y.patch)return Z+"patch";return"prerelease"};mkA.exports=SwB});var ckA=R((X_Y,dkA)=>{var kwB=jJ(),_wB=(A,Q)=>new kwB(A,Q).major;dkA.exports=_wB});var pkA=R((G_Y,lkA)=>{var vwB=jJ(),ywB=(A,Q)=>new vwB(A,Q).minor;lkA.exports=ywB});var nkA=R((F_Y,ikA)=>{var hwB=jJ(),gwB=(A,Q)=>new hwB(A,Q).patch;ikA.exports=gwB});var rkA=R((W_Y,skA)=>{var xwB=iZ(),fwB=(A,Q)=>{let B=xwB(A,Q);return B&&B.prerelease.length?B.prerelease:null};skA.exports=fwB});var T5=R((Z_Y,okA)=>{var akA=jJ(),bwB=(A,Q,B)=>new akA(A,B).compare(new akA(Q,B));okA.exports=bwB});var ekA=R(($_Y,tkA)=>{var mwB=T5(),uwB=(A,Q,B)=>mwB(Q,A,B);tkA.exports=uwB});var Q_A=R((U_Y,A_A)=>{var dwB=T5(),cwB=(A,Q)=>dwB(A,Q,!0);A_A.exports=cwB});var AO=R((E_Y,Y_A)=>{var B_A=jJ(),lwB=(A,Q,B)=>{let Y=new B_A(A,B),J=new B_A(Q,B);return Y.compare(J)||Y.compareBuild(J)};Y_A.exports=lwB});var C_A=R((K_Y,J_A)=>{var pwB=AO(),iwB=(A,Q)=>A.sort((B,Y)=>pwB(B,Y,Q));J_A.exports=iwB});var G_A=R((V_Y,X_A)=>{var nwB=AO(),swB=(A,Q)=>A.sort((B,Y)=>nwB(Y,B,Q));X_A.exports=swB});var xN=R((I_Y,F_A)=>{var rwB=T5(),awB=(A,Q,B)=>rwB(A,Q,B)>0;F_A.exports=awB});var QO=R((H_Y,W_A)=>{var owB=T5(),twB=(A,Q,B)=>owB(A,Q,B)<0;W_A.exports=twB});var Kl=R((D_Y,Z_A)=>{var ewB=T5(),AjB=(A,Q,B)=>ewB(A,Q,B)===0;Z_A.exports=AjB});var Vl=R((N_Y,$_A)=>{var QjB=T5(),BjB=(A,Q,B)=>QjB(A,Q,B)!==0;$_A.exports=BjB});var BO=R((L_Y,U_A)=>{var YjB=T5(),JjB=(A,Q,B)=>YjB(A,Q,B)>=0;U_A.exports=JjB});var YO=R((q_Y,E_A)=>{var CjB=T5(),XjB=(A,Q,B)=>CjB(A,Q,B)<=0;E_A.exports=XjB});var Il=R((M_Y,K_A)=>{var GjB=Kl(),FjB=Vl(),WjB=xN(),ZjB=BO(),$jB=QO(),UjB=YO(),EjB=(A,Q,B,Y)=>{switch(Q){case"===":if(typeof A==="object")A=A.version;if(typeof B==="object")B=B.version;return A===B;case"!==":if(typeof A==="object")A=A.version;if(typeof B==="object")B=B.version;return A!==B;case"":case"=":case"==":return GjB(A,B,Y);case"!=":return FjB(A,B,Y);case">":return WjB(A,B,Y);case">=":return ZjB(A,B,Y);case"<":return $jB(A,B,Y);case"<=":return UjB(A,B,Y);default:throw TypeError(`Invalid operator: ${Q}`)}};K_A.exports=EjB});var I_A=R((z_Y,V_A)=>{var KjB=jJ(),VjB=iZ(),{safeRe:JO,t:CO}=sE(),IjB=(A,Q)=>{if(A instanceof KjB)return A;if(typeof A==="number")A=String(A);if(typeof A!=="string")return null;Q=Q||{};let B=null;if(!Q.rtl)B=A.match(Q.includePrerelease?JO[CO.COERCEFULL]:JO[CO.COERCE]);else{let F=Q.includePrerelease?JO[CO.COERCERTLFULL]:JO[CO.COERCERTL],W;while((W=F.exec(A))&&(!B||B.index+B[0].length!==A.length)){if(!B||W.index+W[0].length!==B.index+B[0].length)B=W;F.lastIndex=W.index+W[1].length+W[2].length}F.lastIndex=-1}if(B===null)return null;let Y=B[2],J=B[3]||"0",C=B[4]||"0",X=Q.includePrerelease&&B[5]?`-${B[5]}`:"",G=Q.includePrerelease&&B[6]?`+${B[6]}`:"";return VjB(`${Y}.${J}.${C}${X}${G}`,Q)};V_A.exports=IjB});var N_A=R((R_Y,D_A)=>{class H_A{constructor(){this.max=1000,this.map=new Map}get(A){let Q=this.map.get(A);if(Q===void 0)return;else return this.map.delete(A),this.map.set(A,Q),Q}delete(A){return this.map.delete(A)}set(A,Q){if(!this.delete(A)&&Q!==void 0){if(this.map.size>=this.max){let Y=this.map.keys().next().value;this.delete(Y)}this.map.set(A,Q)}return this}}D_A.exports=H_A});var S5=R((w_Y,z_A)=>{var HjB=/\s+/g;class fN{constructor(A,Q){if(Q=NjB(Q),A instanceof fN)if(A.loose===!!Q.loose&&A.includePrerelease===!!Q.includePrerelease)return A;else return new fN(A.raw,Q);if(A instanceof Hl)return this.raw=A.value,this.set=[[A]],this.formatted=void 0,this;if(this.options=Q,this.loose=!!Q.loose,this.includePrerelease=!!Q.includePrerelease,this.raw=A.trim().replace(HjB," "),this.set=this.raw.split("||").map((B)=>this.parseRange(B.trim())).filter((B)=>B.length),!this.set.length)throw TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let B=this.set[0];if(this.set=this.set.filter((Y)=>!q_A(Y[0])),this.set.length===0)this.set=[B];else if(this.set.length>1){for(let Y of this.set)if(Y.length===1&&jjB(Y[0])){this.set=[Y];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let A=0;A0)this.formatted+="||";let Q=this.set[A];for(let B=0;B0)this.formatted+=" ";this.formatted+=Q[B].toString().trim()}}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(A){let B=((this.options.includePrerelease&&RjB)|(this.options.loose&&wjB))+":"+A,Y=L_A.get(B);if(Y)return Y;let J=this.options.loose,C=J?d9[F9.HYPHENRANGELOOSE]:d9[F9.HYPHENRANGE];A=A.replace(C,gjB(this.options.includePrerelease)),U0("hyphen replace",A),A=A.replace(d9[F9.COMPARATORTRIM],qjB),U0("comparator trim",A),A=A.replace(d9[F9.TILDETRIM],MjB),U0("tilde trim",A),A=A.replace(d9[F9.CARETTRIM],zjB),U0("caret trim",A);let X=A.split(" ").map((Z)=>OjB(Z,this.options)).join(" ").split(/\s+/).map((Z)=>hjB(Z,this.options));if(J)X=X.filter((Z)=>{return U0("loose invalid filter",Z,this.options),!!Z.match(d9[F9.COMPARATORLOOSE])});U0("range list",X);let G=new Map,F=X.map((Z)=>new Hl(Z,this.options));for(let Z of F){if(q_A(Z))return[Z];G.set(Z.value,Z)}if(G.size>1&&G.has(""))G.delete("");let W=[...G.values()];return L_A.set(B,W),W}intersects(A,Q){if(!(A instanceof fN))throw TypeError("a Range is required");return this.set.some((B)=>{return M_A(B,Q)&&A.set.some((Y)=>{return M_A(Y,Q)&&B.every((J)=>{return Y.every((C)=>{return J.intersects(C,Q)})})})})}test(A){if(!A)return!1;if(typeof A==="string")try{A=new LjB(A,this.options)}catch(Q){return!1}for(let Q=0;QA.value==="<0.0.0-0",jjB=(A)=>A.value==="",M_A=(A,Q)=>{let B=!0,Y=A.slice(),J=Y.pop();while(B&&Y.length)B=Y.every((C)=>{return J.intersects(C,Q)}),J=Y.pop();return B},OjB=(A,Q)=>{return U0("comp",A,Q),A=SjB(A,Q),U0("caret",A),A=PjB(A,Q),U0("tildes",A),A=_jB(A,Q),U0("xrange",A),A=yjB(A,Q),U0("stars",A),A},W9=(A)=>!A||A.toLowerCase()==="x"||A==="*",PjB=(A,Q)=>{return A.trim().split(/\s+/).map((B)=>TjB(B,Q)).join(" ")},TjB=(A,Q)=>{let B=Q.loose?d9[F9.TILDELOOSE]:d9[F9.TILDE];return A.replace(B,(Y,J,C,X,G)=>{U0("tilde",A,Y,J,C,X,G);let F;if(W9(J))F="";else if(W9(C))F=`>=${J}.0.0 <${+J+1}.0.0-0`;else if(W9(X))F=`>=${J}.${C}.0 <${J}.${+C+1}.0-0`;else if(G)U0("replaceTilde pr",G),F=`>=${J}.${C}.${X}-${G} <${J}.${+C+1}.0-0`;else F=`>=${J}.${C}.${X} <${J}.${+C+1}.0-0`;return U0("tilde return",F),F})},SjB=(A,Q)=>{return A.trim().split(/\s+/).map((B)=>kjB(B,Q)).join(" ")},kjB=(A,Q)=>{U0("caret",A,Q);let B=Q.loose?d9[F9.CARETLOOSE]:d9[F9.CARET],Y=Q.includePrerelease?"-0":"";return A.replace(B,(J,C,X,G,F)=>{U0("caret",A,J,C,X,G,F);let W;if(W9(C))W="";else if(W9(X))W=`>=${C}.0.0${Y} <${+C+1}.0.0-0`;else if(W9(G))if(C==="0")W=`>=${C}.${X}.0${Y} <${C}.${+X+1}.0-0`;else W=`>=${C}.${X}.0${Y} <${+C+1}.0.0-0`;else if(F)if(U0("replaceCaret pr",F),C==="0")if(X==="0")W=`>=${C}.${X}.${G}-${F} <${C}.${X}.${+G+1}-0`;else W=`>=${C}.${X}.${G}-${F} <${C}.${+X+1}.0-0`;else W=`>=${C}.${X}.${G}-${F} <${+C+1}.0.0-0`;else if(U0("no pr"),C==="0")if(X==="0")W=`>=${C}.${X}.${G}${Y} <${C}.${X}.${+G+1}-0`;else W=`>=${C}.${X}.${G}${Y} <${C}.${+X+1}.0-0`;else W=`>=${C}.${X}.${G} <${+C+1}.0.0-0`;return U0("caret return",W),W})},_jB=(A,Q)=>{return U0("replaceXRanges",A,Q),A.split(/\s+/).map((B)=>vjB(B,Q)).join(" ")},vjB=(A,Q)=>{A=A.trim();let B=Q.loose?d9[F9.XRANGELOOSE]:d9[F9.XRANGE];return A.replace(B,(Y,J,C,X,G,F)=>{U0("xRange",A,Y,J,C,X,G,F);let W=W9(C),Z=W||W9(X),U=Z||W9(G),$=U;if(J==="="&&$)J="";if(F=Q.includePrerelease?"-0":"",W)if(J===">"||J==="<")Y="<0.0.0-0";else Y="*";else if(J&&$){if(Z)X=0;if(G=0,J===">")if(J=">=",Z)C=+C+1,X=0,G=0;else X=+X+1,G=0;else if(J==="<=")if(J="<",Z)C=+C+1;else X=+X+1;if(J==="<")F="-0";Y=`${J+C}.${X}.${G}${F}`}else if(Z)Y=`>=${C}.0.0${F} <${+C+1}.0.0-0`;else if(U)Y=`>=${C}.${X}.0${F} <${C}.${+X+1}.0-0`;return U0("xRange return",Y),Y})},yjB=(A,Q)=>{return U0("replaceStars",A,Q),A.trim().replace(d9[F9.STAR],"")},hjB=(A,Q)=>{return U0("replaceGTE0",A,Q),A.trim().replace(d9[Q.includePrerelease?F9.GTE0PRE:F9.GTE0],"")},gjB=(A)=>(Q,B,Y,J,C,X,G,F,W,Z,U,$)=>{if(W9(Y))B="";else if(W9(J))B=`>=${Y}.0.0${A?"-0":""}`;else if(W9(C))B=`>=${Y}.${J}.0${A?"-0":""}`;else if(X)B=`>=${B}`;else B=`>=${B}${A?"-0":""}`;if(W9(W))F="";else if(W9(Z))F=`<${+W+1}.0.0-0`;else if(W9(U))F=`<${W}.${+Z+1}.0-0`;else if($)F=`<=${W}.${Z}.${U}-${$}`;else if(A)F=`<${W}.${Z}.${+U+1}-0`;else F=`<=${F}`;return`${B} ${F}`.trim()},xjB=(A,Q,B)=>{for(let Y=0;Y0){let J=A[Y].semver;if(J.major===Q.major&&J.minor===Q.minor&&J.patch===Q.patch)return!0}}return!1}return!0}});var bN=R((j_Y,T_A)=>{var mN=Symbol("SemVer ANY");class XO{static get ANY(){return mN}constructor(A,Q){if(Q=R_A(Q),A instanceof XO)if(A.loose===!!Q.loose)return A;else A=A.value;if(A=A.trim().split(/\s+/).join(" "),Nl("comparator",A,Q),this.options=Q,this.loose=!!Q.loose,this.parse(A),this.semver===mN)this.value="";else this.value=this.operator+this.semver.version;Nl("comp",this)}parse(A){let Q=this.options.loose?w_A[j_A.COMPARATORLOOSE]:w_A[j_A.COMPARATOR],B=A.match(Q);if(!B)throw TypeError(`Invalid comparator: ${A}`);if(this.operator=B[1]!==void 0?B[1]:"",this.operator==="=")this.operator="";if(!B[2])this.semver=mN;else this.semver=new O_A(B[2],this.options.loose)}toString(){return this.value}test(A){if(Nl("Comparator.test",A,this.options.loose),this.semver===mN||A===mN)return!0;if(typeof A==="string")try{A=new O_A(A,this.options)}catch(Q){return!1}return Dl(A,this.operator,this.semver,this.options)}intersects(A,Q){if(!(A instanceof XO))throw TypeError("a Comparator is required");if(this.operator===""){if(this.value==="")return!0;return new P_A(A.value,Q).test(this.value)}else if(A.operator===""){if(A.value==="")return!0;return new P_A(this.value,Q).test(A.semver)}if(Q=R_A(Q),Q.includePrerelease&&(this.value==="<0.0.0-0"||A.value==="<0.0.0-0"))return!1;if(!Q.includePrerelease&&(this.value.startsWith("<0.0.0")||A.value.startsWith("<0.0.0")))return!1;if(this.operator.startsWith(">")&&A.operator.startsWith(">"))return!0;if(this.operator.startsWith("<")&&A.operator.startsWith("<"))return!0;if(this.semver.version===A.semver.version&&this.operator.includes("=")&&A.operator.includes("="))return!0;if(Dl(this.semver,"<",A.semver,Q)&&this.operator.startsWith(">")&&A.operator.startsWith("<"))return!0;if(Dl(this.semver,">",A.semver,Q)&&this.operator.startsWith("<")&&A.operator.startsWith(">"))return!0;return!1}}T_A.exports=XO;var R_A=aj(),{safeRe:w_A,t:j_A}=sE(),Dl=Il(),Nl=gN(),O_A=jJ(),P_A=S5()});var uN=R((O_Y,S_A)=>{var fjB=S5(),bjB=(A,Q,B)=>{try{Q=new fjB(Q,B)}catch(Y){return!1}return Q.test(A)};S_A.exports=bjB});var __A=R((P_Y,k_A)=>{var mjB=S5(),ujB=(A,Q)=>new mjB(A,Q).set.map((B)=>B.map((Y)=>Y.value).join(" ").trim().split(" "));k_A.exports=ujB});var y_A=R((T_Y,v_A)=>{var djB=jJ(),cjB=S5(),ljB=(A,Q,B)=>{let Y=null,J=null,C=null;try{C=new cjB(Q,B)}catch(X){return null}return A.forEach((X)=>{if(C.test(X)){if(!Y||J.compare(X)===-1)Y=X,J=new djB(Y,B)}}),Y};v_A.exports=ljB});var g_A=R((S_Y,h_A)=>{var pjB=jJ(),ijB=S5(),njB=(A,Q,B)=>{let Y=null,J=null,C=null;try{C=new ijB(Q,B)}catch(X){return null}return A.forEach((X)=>{if(C.test(X)){if(!Y||J.compare(X)===1)Y=X,J=new pjB(Y,B)}}),Y};h_A.exports=njB});var b_A=R((k_Y,f_A)=>{var Ll=jJ(),sjB=S5(),x_A=xN(),rjB=(A,Q)=>{A=new sjB(A,Q);let B=new Ll("0.0.0");if(A.test(B))return B;if(B=new Ll("0.0.0-0"),A.test(B))return B;B=null;for(let Y=0;Y{let G=new Ll(X.semver.version);switch(X.operator){case">":if(G.prerelease.length===0)G.patch++;else G.prerelease.push(0);G.raw=G.format();case"":case">=":if(!C||x_A(G,C))C=G;break;case"<":case"<=":break;default:throw Error(`Unexpected operation: ${X.operator}`)}}),C&&(!B||x_A(B,C)))B=C}if(B&&A.test(B))return B;return null};f_A.exports=rjB});var u_A=R((__Y,m_A)=>{var ajB=S5(),ojB=(A,Q)=>{try{return new ajB(A,Q).range||"*"}catch(B){return null}};m_A.exports=ojB});var GO=R((v_Y,p_A)=>{var tjB=jJ(),l_A=bN(),{ANY:ejB}=l_A,AOB=S5(),QOB=uN(),d_A=xN(),c_A=QO(),BOB=YO(),YOB=BO(),JOB=(A,Q,B,Y)=>{A=new tjB(A,Y),Q=new AOB(Q,Y);let J,C,X,G,F;switch(B){case">":J=d_A,C=BOB,X=c_A,G=">",F=">=";break;case"<":J=c_A,C=YOB,X=d_A,G="<",F="<=";break;default:throw TypeError('Must provide a hilo val of "<" or ">"')}if(QOB(A,Q,Y))return!1;for(let W=0;W{if(E.semver===ejB)E=new l_A(">=0.0.0");if(U=U||E,$=$||E,J(E.semver,U.semver,Y))U=E;else if(X(E.semver,$.semver,Y))$=E}),U.operator===G||U.operator===F)return!1;if((!$.operator||$.operator===G)&&C(A,$.semver))return!1;else if($.operator===F&&X(A,$.semver))return!1}return!0};p_A.exports=JOB});var n_A=R((y_Y,i_A)=>{var COB=GO(),XOB=(A,Q,B)=>COB(A,Q,">",B);i_A.exports=XOB});var r_A=R((h_Y,s_A)=>{var GOB=GO(),FOB=(A,Q,B)=>GOB(A,Q,"<",B);s_A.exports=FOB});var t_A=R((g_Y,o_A)=>{var a_A=S5(),WOB=(A,Q,B)=>{return A=new a_A(A,B),Q=new a_A(Q,B),A.intersects(Q,B)};o_A.exports=WOB});var AvA=R((x_Y,e_A)=>{var ZOB=uN(),$OB=T5();e_A.exports=(A,Q,B)=>{let Y=[],J=null,C=null,X=A.sort((Z,U)=>$OB(Z,U,B));for(let Z of X)if(ZOB(Z,Q,B)){if(C=Z,!J)J=Z}else{if(C)Y.push([J,C]);C=null,J=null}if(J)Y.push([J,null]);let G=[];for(let[Z,U]of Y)if(Z===U)G.push(Z);else if(!U&&Z===X[0])G.push("*");else if(!U)G.push(`>=${Z}`);else if(Z===X[0])G.push(`<=${U}`);else G.push(`${Z} - ${U}`);let F=G.join(" || "),W=typeof Q.raw==="string"?Q.raw:String(Q);return F.length{var QvA=S5(),Ml=bN(),{ANY:ql}=Ml,dN=uN(),zl=T5(),UOB=(A,Q,B={})=>{if(A===Q)return!0;A=new QvA(A,B),Q=new QvA(Q,B);let Y=!1;A:for(let J of A.set){for(let C of Q.set){let X=KOB(J,C,B);if(Y=Y||X!==null,X)continue A}if(Y)return!1}return!0},EOB=[new Ml(">=0.0.0-0")],BvA=[new Ml(">=0.0.0")],KOB=(A,Q,B)=>{if(A===Q)return!0;if(A.length===1&&A[0].semver===ql)if(Q.length===1&&Q[0].semver===ql)return!0;else if(B.includePrerelease)A=EOB;else A=BvA;if(Q.length===1&&Q[0].semver===ql)if(B.includePrerelease)return!0;else Q=BvA;let Y=new Set,J,C;for(let E of A)if(E.operator===">"||E.operator===">=")J=YvA(J,E,B);else if(E.operator==="<"||E.operator==="<=")C=JvA(C,E,B);else Y.add(E.semver);if(Y.size>1)return null;let X;if(J&&C){if(X=zl(J.semver,C.semver,B),X>0)return null;else if(X===0&&(J.operator!==">="||C.operator!=="<="))return null}for(let E of Y){if(J&&!dN(E,String(J),B))return null;if(C&&!dN(E,String(C),B))return null;for(let K of Q)if(!dN(E,String(K),B))return!1;return!0}let G,F,W,Z,U=C&&!B.includePrerelease&&C.semver.prerelease.length?C.semver:!1,$=J&&!B.includePrerelease&&J.semver.prerelease.length?J.semver:!1;if(U&&U.prerelease.length===1&&C.operator==="<"&&U.prerelease[0]===0)U=!1;for(let E of Q){if(Z=Z||E.operator===">"||E.operator===">=",W=W||E.operator==="<"||E.operator==="<=",J){if($){if(E.semver.prerelease&&E.semver.prerelease.length&&E.semver.major===$.major&&E.semver.minor===$.minor&&E.semver.patch===$.patch)$=!1}if(E.operator===">"||E.operator===">="){if(G=YvA(J,E,B),G===E&&G!==J)return!1}else if(J.operator===">="&&!dN(J.semver,String(E),B))return!1}if(C){if(U){if(E.semver.prerelease&&E.semver.prerelease.length&&E.semver.major===U.major&&E.semver.minor===U.minor&&E.semver.patch===U.patch)U=!1}if(E.operator==="<"||E.operator==="<="){if(F=JvA(C,E,B),F===E&&F!==C)return!1}else if(C.operator==="<="&&!dN(C.semver,String(E),B))return!1}if(!E.operator&&(C||J)&&X!==0)return!1}if(J&&W&&!C&&X!==0)return!1;if(C&&Z&&!J&&X!==0)return!1;if($||U)return!1;return!0},YvA=(A,Q,B)=>{if(!A)return Q;let Y=zl(A.semver,Q.semver,B);return Y>0?A:Y<0?Q:Q.operator===">"&&A.operator===">="?Q:A},JvA=(A,Q,B)=>{if(!A)return Q;let Y=zl(A.semver,Q.semver,B);return Y<0?A:Y>0?Q:Q.operator==="<"&&A.operator==="<="?Q:A};CvA.exports=UOB});var ZvA=R((b_Y,WvA)=>{var Rl=sE(),GvA=hN(),VOB=jJ(),FvA=El(),IOB=iZ(),HOB=vkA(),DOB=hkA(),NOB=fkA(),LOB=ukA(),qOB=ckA(),MOB=pkA(),zOB=nkA(),ROB=rkA(),wOB=T5(),jOB=ekA(),OOB=Q_A(),POB=AO(),TOB=C_A(),SOB=G_A(),kOB=xN(),_OB=QO(),vOB=Kl(),yOB=Vl(),hOB=BO(),gOB=YO(),xOB=Il(),fOB=I_A(),bOB=bN(),mOB=S5(),uOB=uN(),dOB=__A(),cOB=y_A(),lOB=g_A(),pOB=b_A(),iOB=u_A(),nOB=GO(),sOB=n_A(),rOB=r_A(),aOB=t_A(),oOB=AvA(),tOB=XvA();WvA.exports={parse:IOB,valid:HOB,clean:DOB,inc:NOB,diff:LOB,major:qOB,minor:MOB,patch:zOB,prerelease:ROB,compare:wOB,rcompare:jOB,compareLoose:OOB,compareBuild:POB,sort:TOB,rsort:SOB,gt:kOB,lt:_OB,eq:vOB,neq:yOB,gte:hOB,lte:gOB,cmp:xOB,coerce:fOB,Comparator:bOB,Range:mOB,satisfies:uOB,toComparators:dOB,maxSatisfying:cOB,minSatisfying:lOB,minVersion:pOB,validRange:iOB,outside:nOB,gtr:sOB,ltr:rOB,intersects:aOB,simplifyRange:oOB,subset:tOB,SemVer:VOB,re:Rl.re,src:Rl.src,tokens:Rl.t,SEMVER_SPEC_VERSION:GvA.SEMVER_SPEC_VERSION,RELEASE_TYPES:GvA.RELEASE_TYPES,compareIdentifiers:FvA.compareIdentifiers,rcompareIdentifiers:FvA.rcompareIdentifiers}});var EvA=R(($vA)=>{Object.defineProperty($vA,"__esModule",{value:!0});$vA.VERSION=void 0;$vA.VERSION="0.57.2"});var VvA=R((KvA)=>{Object.defineProperty(KvA,"__esModule",{value:!0});KvA.SeverityNumber=void 0;var eOB;(function(A){A[A.UNSPECIFIED=0]="UNSPECIFIED",A[A.TRACE=1]="TRACE",A[A.TRACE2=2]="TRACE2",A[A.TRACE3=3]="TRACE3",A[A.TRACE4=4]="TRACE4",A[A.DEBUG=5]="DEBUG",A[A.DEBUG2=6]="DEBUG2",A[A.DEBUG3=7]="DEBUG3",A[A.DEBUG4=8]="DEBUG4",A[A.INFO=9]="INFO",A[A.INFO2=10]="INFO2",A[A.INFO3=11]="INFO3",A[A.INFO4=12]="INFO4",A[A.WARN=13]="WARN",A[A.WARN2=14]="WARN2",A[A.WARN3=15]="WARN3",A[A.WARN4=16]="WARN4",A[A.ERROR=17]="ERROR",A[A.ERROR2=18]="ERROR2",A[A.ERROR3=19]="ERROR3",A[A.ERROR4=20]="ERROR4",A[A.FATAL=21]="FATAL",A[A.FATAL2=22]="FATAL2",A[A.FATAL3=23]="FATAL3",A[A.FATAL4=24]="FATAL4"})(eOB=KvA.SeverityNumber||(KvA.SeverityNumber={}))});var FO=R((IvA)=>{Object.defineProperty(IvA,"__esModule",{value:!0});IvA.NOOP_LOGGER=IvA.NoopLogger=void 0;class jl{emit(A){}}IvA.NoopLogger=jl;IvA.NOOP_LOGGER=new jl});var WO=R((DvA)=>{Object.defineProperty(DvA,"__esModule",{value:!0});DvA.NOOP_LOGGER_PROVIDER=DvA.NoopLoggerProvider=void 0;var QPB=FO();class Ol{getLogger(A,Q,B){return new QPB.NoopLogger}}DvA.NoopLoggerProvider=Ol;DvA.NOOP_LOGGER_PROVIDER=new Ol});var Pl=R((qvA)=>{Object.defineProperty(qvA,"__esModule",{value:!0});qvA.ProxyLogger=void 0;var YPB=FO();class LvA{constructor(A,Q,B,Y){this._provider=A,this.name=Q,this.version=B,this.options=Y}emit(A){this._getLogger().emit(A)}_getLogger(){if(this._delegate)return this._delegate;let A=this._provider.getDelegateLogger(this.name,this.version,this.options);if(!A)return YPB.NOOP_LOGGER;return this._delegate=A,this._delegate}}qvA.ProxyLogger=LvA});var Tl=R((RvA)=>{Object.defineProperty(RvA,"__esModule",{value:!0});RvA.ProxyLoggerProvider=void 0;var JPB=WO(),CPB=Pl();class zvA{getLogger(A,Q,B){var Y;return(Y=this.getDelegateLogger(A,Q,B))!==null&&Y!==void 0?Y:new CPB.ProxyLogger(this,A,Q,B)}getDelegate(){var A;return(A=this._delegate)!==null&&A!==void 0?A:JPB.NOOP_LOGGER_PROVIDER}setDelegate(A){this._delegate=A}getDelegateLogger(A,Q,B){var Y;return(Y=this._delegate)===null||Y===void 0?void 0:Y.getLogger(A,Q,B)}}RvA.ProxyLoggerProvider=zvA});var PvA=R((jvA)=>{Object.defineProperty(jvA,"__esModule",{value:!0});jvA._globalThis=void 0;jvA._globalThis=typeof globalThis==="object"?globalThis:global});var TvA=R((Sl)=>{Object.defineProperty(Sl,"__esModule",{value:!0});Sl._globalThis=void 0;var XPB=PvA();Object.defineProperty(Sl,"_globalThis",{enumerable:!0,get:function(){return XPB._globalThis}})});var SvA=R((kl)=>{Object.defineProperty(kl,"__esModule",{value:!0});kl._globalThis=void 0;var FPB=TvA();Object.defineProperty(kl,"_globalThis",{enumerable:!0,get:function(){return FPB._globalThis}})});var vvA=R((kvA)=>{Object.defineProperty(kvA,"__esModule",{value:!0});kvA.API_BACKWARDS_COMPATIBILITY_VERSION=kvA.makeGetter=kvA._global=kvA.GLOBAL_LOGS_API_KEY=void 0;var ZPB=SvA();kvA.GLOBAL_LOGS_API_KEY=Symbol.for("io.opentelemetry.js.api.logs");kvA._global=ZPB._globalThis;function $PB(A,Q,B){return(Y)=>Y===A?Q:B}kvA.makeGetter=$PB;kvA.API_BACKWARDS_COMPATIBILITY_VERSION=1});var xvA=R((hvA)=>{Object.defineProperty(hvA,"__esModule",{value:!0});hvA.LogsAPI=void 0;var k5=vvA(),VPB=WO(),yvA=Tl();class _l{constructor(){this._proxyLoggerProvider=new yvA.ProxyLoggerProvider}static getInstance(){if(!this._instance)this._instance=new _l;return this._instance}setGlobalLoggerProvider(A){if(k5._global[k5.GLOBAL_LOGS_API_KEY])return this.getLoggerProvider();return k5._global[k5.GLOBAL_LOGS_API_KEY]=(0,k5.makeGetter)(k5.API_BACKWARDS_COMPATIBILITY_VERSION,A,VPB.NOOP_LOGGER_PROVIDER),this._proxyLoggerProvider.setDelegate(A),A}getLoggerProvider(){var A,Q;return(Q=(A=k5._global[k5.GLOBAL_LOGS_API_KEY])===null||A===void 0?void 0:A.call(k5._global,k5.API_BACKWARDS_COMPATIBILITY_VERSION))!==null&&Q!==void 0?Q:this._proxyLoggerProvider}getLogger(A,Q,B){return this.getLoggerProvider().getLogger(A,Q,B)}disable(){delete k5._global[k5.GLOBAL_LOGS_API_KEY],this._proxyLoggerProvider=new yvA.ProxyLoggerProvider}}hvA.LogsAPI=_l});var vl=R((AG)=>{Object.defineProperty(AG,"__esModule",{value:!0});AG.logs=AG.ProxyLoggerProvider=AG.ProxyLogger=AG.NoopLoggerProvider=AG.NOOP_LOGGER_PROVIDER=AG.NoopLogger=AG.NOOP_LOGGER=AG.SeverityNumber=void 0;var IPB=VvA();Object.defineProperty(AG,"SeverityNumber",{enumerable:!0,get:function(){return IPB.SeverityNumber}});var fvA=FO();Object.defineProperty(AG,"NOOP_LOGGER",{enumerable:!0,get:function(){return fvA.NOOP_LOGGER}});Object.defineProperty(AG,"NoopLogger",{enumerable:!0,get:function(){return fvA.NoopLogger}});var bvA=WO();Object.defineProperty(AG,"NOOP_LOGGER_PROVIDER",{enumerable:!0,get:function(){return bvA.NOOP_LOGGER_PROVIDER}});Object.defineProperty(AG,"NoopLoggerProvider",{enumerable:!0,get:function(){return bvA.NoopLoggerProvider}});var HPB=Pl();Object.defineProperty(AG,"ProxyLogger",{enumerable:!0,get:function(){return HPB.ProxyLogger}});var DPB=Tl();Object.defineProperty(AG,"ProxyLoggerProvider",{enumerable:!0,get:function(){return DPB.ProxyLoggerProvider}});var NPB=xvA();AG.logs=NPB.LogsAPI.getInstance()});var cvA=R((uvA)=>{Object.defineProperty(uvA,"__esModule",{value:!0});uvA.disableInstrumentations=uvA.enableInstrumentations=void 0;function LPB(A,Q,B,Y){for(let J=0,C=A.length;JQ.disable())}uvA.disableInstrumentations=qPB});var svA=R((ivA)=>{Object.defineProperty(ivA,"__esModule",{value:!0});ivA.registerInstrumentations=void 0;var lvA=yA(),zPB=vl(),pvA=cvA();function RPB(A){var Q,B;let Y=A.tracerProvider||lvA.trace.getTracerProvider(),J=A.meterProvider||lvA.metrics.getMeterProvider(),C=A.loggerProvider||zPB.logs.getLoggerProvider(),X=(B=(Q=A.instrumentations)===null||Q===void 0?void 0:Q.flat())!==null&&B!==void 0?B:[];return(0,pvA.enableInstrumentations)(X,Y,J,C),()=>{(0,pvA.disableInstrumentations)(X)}}ivA.registerInstrumentations=RPB});var cN=R((GvY,rvA)=>{var wPB=Number.MAX_SAFE_INTEGER||9007199254740991,jPB=["major","premajor","minor","preminor","patch","prepatch","prerelease"];rvA.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:16,MAX_SAFE_BUILD_LENGTH:250,MAX_SAFE_INTEGER:wPB,RELEASE_TYPES:jPB,SEMVER_SPEC_VERSION:"2.0.0",FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var lN=R((FvY,avA)=>{var OPB=typeof process==="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...A)=>console.error("SEMVER",...A):()=>{};avA.exports=OPB});var aE=R((Y6,ovA)=>{var{MAX_SAFE_COMPONENT_LENGTH:yl,MAX_SAFE_BUILD_LENGTH:PPB,MAX_LENGTH:TPB}=cN(),SPB=lN();Y6=ovA.exports={};var kPB=Y6.re=[],_PB=Y6.safeRe=[],iA=Y6.src=[],vPB=Y6.safeSrc=[],nA=Y6.t={},yPB=0,hl="[a-zA-Z0-9-]",hPB=[["\\s",1],["\\d",TPB],[hl,PPB]],gPB=(A)=>{for(let[Q,B]of hPB)A=A.split(`${Q}*`).join(`${Q}{0,${B}}`).split(`${Q}+`).join(`${Q}{1,${B}}`);return A},cQ=(A,Q,B)=>{let Y=gPB(Q),J=yPB++;SPB(A,J,Q),nA[A]=J,iA[J]=Q,vPB[J]=Y,kPB[J]=new RegExp(Q,B?"g":void 0),_PB[J]=new RegExp(Y,B?"g":void 0)};cQ("NUMERICIDENTIFIER","0|[1-9]\\d*");cQ("NUMERICIDENTIFIERLOOSE","\\d+");cQ("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${hl}*`);cQ("MAINVERSION",`(${iA[nA.NUMERICIDENTIFIER]})\\.(${iA[nA.NUMERICIDENTIFIER]})\\.(${iA[nA.NUMERICIDENTIFIER]})`);cQ("MAINVERSIONLOOSE",`(${iA[nA.NUMERICIDENTIFIERLOOSE]})\\.(${iA[nA.NUMERICIDENTIFIERLOOSE]})\\.(${iA[nA.NUMERICIDENTIFIERLOOSE]})`);cQ("PRERELEASEIDENTIFIER",`(?:${iA[nA.NUMERICIDENTIFIER]}|${iA[nA.NONNUMERICIDENTIFIER]})`);cQ("PRERELEASEIDENTIFIERLOOSE",`(?:${iA[nA.NUMERICIDENTIFIERLOOSE]}|${iA[nA.NONNUMERICIDENTIFIER]})`);cQ("PRERELEASE",`(?:-(${iA[nA.PRERELEASEIDENTIFIER]}(?:\\.${iA[nA.PRERELEASEIDENTIFIER]})*))`);cQ("PRERELEASELOOSE",`(?:-?(${iA[nA.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${iA[nA.PRERELEASEIDENTIFIERLOOSE]})*))`);cQ("BUILDIDENTIFIER",`${hl}+`);cQ("BUILD",`(?:\\+(${iA[nA.BUILDIDENTIFIER]}(?:\\.${iA[nA.BUILDIDENTIFIER]})*))`);cQ("FULLPLAIN",`v?${iA[nA.MAINVERSION]}${iA[nA.PRERELEASE]}?${iA[nA.BUILD]}?`);cQ("FULL",`^${iA[nA.FULLPLAIN]}$`);cQ("LOOSEPLAIN",`[v=\\s]*${iA[nA.MAINVERSIONLOOSE]}${iA[nA.PRERELEASELOOSE]}?${iA[nA.BUILD]}?`);cQ("LOOSE",`^${iA[nA.LOOSEPLAIN]}$`);cQ("GTLT","((?:<|>)?=?)");cQ("XRANGEIDENTIFIERLOOSE",`${iA[nA.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);cQ("XRANGEIDENTIFIER",`${iA[nA.NUMERICIDENTIFIER]}|x|X|\\*`);cQ("XRANGEPLAIN",`[v=\\s]*(${iA[nA.XRANGEIDENTIFIER]})(?:\\.(${iA[nA.XRANGEIDENTIFIER]})(?:\\.(${iA[nA.XRANGEIDENTIFIER]})(?:${iA[nA.PRERELEASE]})?${iA[nA.BUILD]}?)?)?`);cQ("XRANGEPLAINLOOSE",`[v=\\s]*(${iA[nA.XRANGEIDENTIFIERLOOSE]})(?:\\.(${iA[nA.XRANGEIDENTIFIERLOOSE]})(?:\\.(${iA[nA.XRANGEIDENTIFIERLOOSE]})(?:${iA[nA.PRERELEASELOOSE]})?${iA[nA.BUILD]}?)?)?`);cQ("XRANGE",`^${iA[nA.GTLT]}\\s*${iA[nA.XRANGEPLAIN]}$`);cQ("XRANGELOOSE",`^${iA[nA.GTLT]}\\s*${iA[nA.XRANGEPLAINLOOSE]}$`);cQ("COERCEPLAIN",`(^|[^\\d])(\\d{1,${yl}})(?:\\.(\\d{1,${yl}}))?(?:\\.(\\d{1,${yl}}))?`);cQ("COERCE",`${iA[nA.COERCEPLAIN]}(?:$|[^\\d])`);cQ("COERCEFULL",iA[nA.COERCEPLAIN]+`(?:${iA[nA.PRERELEASE]})?(?:${iA[nA.BUILD]})?(?:$|[^\\d])`);cQ("COERCERTL",iA[nA.COERCE],!0);cQ("COERCERTLFULL",iA[nA.COERCEFULL],!0);cQ("LONETILDE","(?:~>?)");cQ("TILDETRIM",`(\\s*)${iA[nA.LONETILDE]}\\s+`,!0);Y6.tildeTrimReplace="$1~";cQ("TILDE",`^${iA[nA.LONETILDE]}${iA[nA.XRANGEPLAIN]}$`);cQ("TILDELOOSE",`^${iA[nA.LONETILDE]}${iA[nA.XRANGEPLAINLOOSE]}$`);cQ("LONECARET","(?:\\^)");cQ("CARETTRIM",`(\\s*)${iA[nA.LONECARET]}\\s+`,!0);Y6.caretTrimReplace="$1^";cQ("CARET",`^${iA[nA.LONECARET]}${iA[nA.XRANGEPLAIN]}$`);cQ("CARETLOOSE",`^${iA[nA.LONECARET]}${iA[nA.XRANGEPLAINLOOSE]}$`);cQ("COMPARATORLOOSE",`^${iA[nA.GTLT]}\\s*(${iA[nA.LOOSEPLAIN]})$|^$`);cQ("COMPARATOR",`^${iA[nA.GTLT]}\\s*(${iA[nA.FULLPLAIN]})$|^$`);cQ("COMPARATORTRIM",`(\\s*)${iA[nA.GTLT]}\\s*(${iA[nA.LOOSEPLAIN]}|${iA[nA.XRANGEPLAIN]})`,!0);Y6.comparatorTrimReplace="$1$2$3";cQ("HYPHENRANGE",`^\\s*(${iA[nA.XRANGEPLAIN]})\\s+-\\s+(${iA[nA.XRANGEPLAIN]})\\s*$`);cQ("HYPHENRANGELOOSE",`^\\s*(${iA[nA.XRANGEPLAINLOOSE]})\\s+-\\s+(${iA[nA.XRANGEPLAINLOOSE]})\\s*$`);cQ("STAR","(<|>)?=?\\s*\\*");cQ("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");cQ("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var ZO=R((WvY,tvA)=>{var xPB=Object.freeze({loose:!0}),fPB=Object.freeze({}),bPB=(A)=>{if(!A)return fPB;if(typeof A!=="object")return xPB;return A};tvA.exports=bPB});var gl=R((ZvY,QyA)=>{var evA=/^[0-9]+$/,AyA=(A,Q)=>{let B=evA.test(A),Y=evA.test(Q);if(B&&Y)A=+A,Q=+Q;return A===Q?0:B&&!Y?-1:Y&&!B?1:AAyA(Q,A);QyA.exports={compareIdentifiers:AyA,rcompareIdentifiers:mPB}});var OJ=R(($vY,CyA)=>{var $O=lN(),{MAX_LENGTH:ByA,MAX_SAFE_INTEGER:UO}=cN(),{safeRe:YyA,safeSrc:JyA,t:EO}=aE(),uPB=ZO(),{compareIdentifiers:oE}=gl();class oC{constructor(A,Q){if(Q=uPB(Q),A instanceof oC)if(A.loose===!!Q.loose&&A.includePrerelease===!!Q.includePrerelease)return A;else A=A.version;else if(typeof A!=="string")throw TypeError(`Invalid version. Must be a string. Got type "${typeof A}".`);if(A.length>ByA)throw TypeError(`version is longer than ${ByA} characters`);$O("SemVer",A,Q),this.options=Q,this.loose=!!Q.loose,this.includePrerelease=!!Q.includePrerelease;let B=A.trim().match(Q.loose?YyA[EO.LOOSE]:YyA[EO.FULL]);if(!B)throw TypeError(`Invalid Version: ${A}`);if(this.raw=A,this.major=+B[1],this.minor=+B[2],this.patch=+B[3],this.major>UO||this.major<0)throw TypeError("Invalid major version");if(this.minor>UO||this.minor<0)throw TypeError("Invalid minor version");if(this.patch>UO||this.patch<0)throw TypeError("Invalid patch version");if(!B[4])this.prerelease=[];else this.prerelease=B[4].split(".").map((Y)=>{if(/^[0-9]+$/.test(Y)){let J=+Y;if(J>=0&&J=0)if(typeof this.prerelease[J]==="number")this.prerelease[J]++,J=-2;if(J===-1){if(Q===this.prerelease.join(".")&&B===!1)throw Error("invalid increment argument: identifier already exists");this.prerelease.push(Y)}}if(Q){let J=[Q,Y];if(B===!1)J=[Q];if(oE(this.prerelease[0],Q)===0){if(isNaN(this.prerelease[1]))this.prerelease=J}else this.prerelease=J}break}default:throw Error(`invalid increment argument: ${A}`)}if(this.raw=this.format(),this.build.length)this.raw+=`+${this.build.join(".")}`;return this}}CyA.exports=oC});var nZ=R((UvY,GyA)=>{var XyA=OJ(),dPB=(A,Q,B=!1)=>{if(A instanceof XyA)return A;try{return new XyA(A,Q)}catch(Y){if(!B)return null;throw Y}};GyA.exports=dPB});var WyA=R((EvY,FyA)=>{var cPB=nZ(),lPB=(A,Q)=>{let B=cPB(A,Q);return B?B.version:null};FyA.exports=lPB});var $yA=R((KvY,ZyA)=>{var pPB=nZ(),iPB=(A,Q)=>{let B=pPB(A.trim().replace(/^[=v]+/,""),Q);return B?B.version:null};ZyA.exports=iPB});var KyA=R((VvY,EyA)=>{var UyA=OJ(),nPB=(A,Q,B,Y,J)=>{if(typeof B==="string")J=Y,Y=B,B=void 0;try{return new UyA(A instanceof UyA?A.version:A,B).inc(Q,Y,J).version}catch(C){return null}};EyA.exports=nPB});var HyA=R((IvY,IyA)=>{var VyA=nZ(),sPB=(A,Q)=>{let B=VyA(A,null,!0),Y=VyA(Q,null,!0),J=B.compare(Y);if(J===0)return null;let C=J>0,X=C?B:Y,G=C?Y:B,F=!!X.prerelease.length;if(!!G.prerelease.length&&!F){if(!G.patch&&!G.minor)return"major";if(G.compareMain(X)===0){if(G.minor&&!G.patch)return"minor";return"patch"}}let Z=F?"pre":"";if(B.major!==Y.major)return Z+"major";if(B.minor!==Y.minor)return Z+"minor";if(B.patch!==Y.patch)return Z+"patch";return"prerelease"};IyA.exports=sPB});var NyA=R((HvY,DyA)=>{var rPB=OJ(),aPB=(A,Q)=>new rPB(A,Q).major;DyA.exports=aPB});var qyA=R((DvY,LyA)=>{var oPB=OJ(),tPB=(A,Q)=>new oPB(A,Q).minor;LyA.exports=tPB});var zyA=R((NvY,MyA)=>{var ePB=OJ(),ATB=(A,Q)=>new ePB(A,Q).patch;MyA.exports=ATB});var wyA=R((LvY,RyA)=>{var QTB=nZ(),BTB=(A,Q)=>{let B=QTB(A,Q);return B&&B.prerelease.length?B.prerelease:null};RyA.exports=BTB});var _5=R((qvY,OyA)=>{var jyA=OJ(),YTB=(A,Q,B)=>new jyA(A,B).compare(new jyA(Q,B));OyA.exports=YTB});var TyA=R((MvY,PyA)=>{var JTB=_5(),CTB=(A,Q,B)=>JTB(Q,A,B);PyA.exports=CTB});var kyA=R((zvY,SyA)=>{var XTB=_5(),GTB=(A,Q)=>XTB(A,Q,!0);SyA.exports=GTB});var KO=R((RvY,vyA)=>{var _yA=OJ(),FTB=(A,Q,B)=>{let Y=new _yA(A,B),J=new _yA(Q,B);return Y.compare(J)||Y.compareBuild(J)};vyA.exports=FTB});var hyA=R((wvY,yyA)=>{var WTB=KO(),ZTB=(A,Q)=>A.sort((B,Y)=>WTB(B,Y,Q));yyA.exports=ZTB});var xyA=R((jvY,gyA)=>{var $TB=KO(),UTB=(A,Q)=>A.sort((B,Y)=>$TB(Y,B,Q));gyA.exports=UTB});var pN=R((OvY,fyA)=>{var ETB=_5(),KTB=(A,Q,B)=>ETB(A,Q,B)>0;fyA.exports=KTB});var VO=R((PvY,byA)=>{var VTB=_5(),ITB=(A,Q,B)=>VTB(A,Q,B)<0;byA.exports=ITB});var xl=R((TvY,myA)=>{var HTB=_5(),DTB=(A,Q,B)=>HTB(A,Q,B)===0;myA.exports=DTB});var fl=R((SvY,uyA)=>{var NTB=_5(),LTB=(A,Q,B)=>NTB(A,Q,B)!==0;uyA.exports=LTB});var IO=R((kvY,dyA)=>{var qTB=_5(),MTB=(A,Q,B)=>qTB(A,Q,B)>=0;dyA.exports=MTB});var HO=R((_vY,cyA)=>{var zTB=_5(),RTB=(A,Q,B)=>zTB(A,Q,B)<=0;cyA.exports=RTB});var bl=R((vvY,lyA)=>{var wTB=xl(),jTB=fl(),OTB=pN(),PTB=IO(),TTB=VO(),STB=HO(),kTB=(A,Q,B,Y)=>{switch(Q){case"===":if(typeof A==="object")A=A.version;if(typeof B==="object")B=B.version;return A===B;case"!==":if(typeof A==="object")A=A.version;if(typeof B==="object")B=B.version;return A!==B;case"":case"=":case"==":return wTB(A,B,Y);case"!=":return jTB(A,B,Y);case">":return OTB(A,B,Y);case">=":return PTB(A,B,Y);case"<":return TTB(A,B,Y);case"<=":return STB(A,B,Y);default:throw TypeError(`Invalid operator: ${Q}`)}};lyA.exports=kTB});var iyA=R((yvY,pyA)=>{var _TB=OJ(),vTB=nZ(),{safeRe:DO,t:NO}=aE(),yTB=(A,Q)=>{if(A instanceof _TB)return A;if(typeof A==="number")A=String(A);if(typeof A!=="string")return null;Q=Q||{};let B=null;if(!Q.rtl)B=A.match(Q.includePrerelease?DO[NO.COERCEFULL]:DO[NO.COERCE]);else{let F=Q.includePrerelease?DO[NO.COERCERTLFULL]:DO[NO.COERCERTL],W;while((W=F.exec(A))&&(!B||B.index+B[0].length!==A.length)){if(!B||W.index+W[0].length!==B.index+B[0].length)B=W;F.lastIndex=W.index+W[1].length+W[2].length}F.lastIndex=-1}if(B===null)return null;let Y=B[2],J=B[3]||"0",C=B[4]||"0",X=Q.includePrerelease&&B[5]?`-${B[5]}`:"",G=Q.includePrerelease&&B[6]?`+${B[6]}`:"";return vTB(`${Y}.${J}.${C}${X}${G}`,Q)};pyA.exports=yTB});var ryA=R((hvY,syA)=>{class nyA{constructor(){this.max=1000,this.map=new Map}get(A){let Q=this.map.get(A);if(Q===void 0)return;else return this.map.delete(A),this.map.set(A,Q),Q}delete(A){return this.map.delete(A)}set(A,Q){if(!this.delete(A)&&Q!==void 0){if(this.map.size>=this.max){let Y=this.map.keys().next().value;this.delete(Y)}this.map.set(A,Q)}return this}}syA.exports=nyA});var v5=R((gvY,eyA)=>{var hTB=/\s+/g;class iN{constructor(A,Q){if(Q=xTB(Q),A instanceof iN)if(A.loose===!!Q.loose&&A.includePrerelease===!!Q.includePrerelease)return A;else return new iN(A.raw,Q);if(A instanceof ml)return this.raw=A.value,this.set=[[A]],this.formatted=void 0,this;if(this.options=Q,this.loose=!!Q.loose,this.includePrerelease=!!Q.includePrerelease,this.raw=A.trim().replace(hTB," "),this.set=this.raw.split("||").map((B)=>this.parseRange(B.trim())).filter((B)=>B.length),!this.set.length)throw TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let B=this.set[0];if(this.set=this.set.filter((Y)=>!oyA(Y[0])),this.set.length===0)this.set=[B];else if(this.set.length>1){for(let Y of this.set)if(Y.length===1&&lTB(Y[0])){this.set=[Y];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let A=0;A0)this.formatted+="||";let Q=this.set[A];for(let B=0;B0)this.formatted+=" ";this.formatted+=Q[B].toString().trim()}}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(A){let B=((this.options.includePrerelease&&dTB)|(this.options.loose&&cTB))+":"+A,Y=ayA.get(B);if(Y)return Y;let J=this.options.loose,C=J?c9[Z9.HYPHENRANGELOOSE]:c9[Z9.HYPHENRANGE];A=A.replace(C,ASB(this.options.includePrerelease)),E0("hyphen replace",A),A=A.replace(c9[Z9.COMPARATORTRIM],bTB),E0("comparator trim",A),A=A.replace(c9[Z9.TILDETRIM],mTB),E0("tilde trim",A),A=A.replace(c9[Z9.CARETTRIM],uTB),E0("caret trim",A);let X=A.split(" ").map((Z)=>pTB(Z,this.options)).join(" ").split(/\s+/).map((Z)=>eTB(Z,this.options));if(J)X=X.filter((Z)=>{return E0("loose invalid filter",Z,this.options),!!Z.match(c9[Z9.COMPARATORLOOSE])});E0("range list",X);let G=new Map,F=X.map((Z)=>new ml(Z,this.options));for(let Z of F){if(oyA(Z))return[Z];G.set(Z.value,Z)}if(G.size>1&&G.has(""))G.delete("");let W=[...G.values()];return ayA.set(B,W),W}intersects(A,Q){if(!(A instanceof iN))throw TypeError("a Range is required");return this.set.some((B)=>{return tyA(B,Q)&&A.set.some((Y)=>{return tyA(Y,Q)&&B.every((J)=>{return Y.every((C)=>{return J.intersects(C,Q)})})})})}test(A){if(!A)return!1;if(typeof A==="string")try{A=new fTB(A,this.options)}catch(Q){return!1}for(let Q=0;QA.value==="<0.0.0-0",lTB=(A)=>A.value==="",tyA=(A,Q)=>{let B=!0,Y=A.slice(),J=Y.pop();while(B&&Y.length)B=Y.every((C)=>{return J.intersects(C,Q)}),J=Y.pop();return B},pTB=(A,Q)=>{return E0("comp",A,Q),A=sTB(A,Q),E0("caret",A),A=iTB(A,Q),E0("tildes",A),A=aTB(A,Q),E0("xrange",A),A=tTB(A,Q),E0("stars",A),A},$9=(A)=>!A||A.toLowerCase()==="x"||A==="*",iTB=(A,Q)=>{return A.trim().split(/\s+/).map((B)=>nTB(B,Q)).join(" ")},nTB=(A,Q)=>{let B=Q.loose?c9[Z9.TILDELOOSE]:c9[Z9.TILDE];return A.replace(B,(Y,J,C,X,G)=>{E0("tilde",A,Y,J,C,X,G);let F;if($9(J))F="";else if($9(C))F=`>=${J}.0.0 <${+J+1}.0.0-0`;else if($9(X))F=`>=${J}.${C}.0 <${J}.${+C+1}.0-0`;else if(G)E0("replaceTilde pr",G),F=`>=${J}.${C}.${X}-${G} <${J}.${+C+1}.0-0`;else F=`>=${J}.${C}.${X} <${J}.${+C+1}.0-0`;return E0("tilde return",F),F})},sTB=(A,Q)=>{return A.trim().split(/\s+/).map((B)=>rTB(B,Q)).join(" ")},rTB=(A,Q)=>{E0("caret",A,Q);let B=Q.loose?c9[Z9.CARETLOOSE]:c9[Z9.CARET],Y=Q.includePrerelease?"-0":"";return A.replace(B,(J,C,X,G,F)=>{E0("caret",A,J,C,X,G,F);let W;if($9(C))W="";else if($9(X))W=`>=${C}.0.0${Y} <${+C+1}.0.0-0`;else if($9(G))if(C==="0")W=`>=${C}.${X}.0${Y} <${C}.${+X+1}.0-0`;else W=`>=${C}.${X}.0${Y} <${+C+1}.0.0-0`;else if(F)if(E0("replaceCaret pr",F),C==="0")if(X==="0")W=`>=${C}.${X}.${G}-${F} <${C}.${X}.${+G+1}-0`;else W=`>=${C}.${X}.${G}-${F} <${C}.${+X+1}.0-0`;else W=`>=${C}.${X}.${G}-${F} <${+C+1}.0.0-0`;else if(E0("no pr"),C==="0")if(X==="0")W=`>=${C}.${X}.${G}${Y} <${C}.${X}.${+G+1}-0`;else W=`>=${C}.${X}.${G}${Y} <${C}.${+X+1}.0-0`;else W=`>=${C}.${X}.${G} <${+C+1}.0.0-0`;return E0("caret return",W),W})},aTB=(A,Q)=>{return E0("replaceXRanges",A,Q),A.split(/\s+/).map((B)=>oTB(B,Q)).join(" ")},oTB=(A,Q)=>{A=A.trim();let B=Q.loose?c9[Z9.XRANGELOOSE]:c9[Z9.XRANGE];return A.replace(B,(Y,J,C,X,G,F)=>{E0("xRange",A,Y,J,C,X,G,F);let W=$9(C),Z=W||$9(X),U=Z||$9(G),$=U;if(J==="="&&$)J="";if(F=Q.includePrerelease?"-0":"",W)if(J===">"||J==="<")Y="<0.0.0-0";else Y="*";else if(J&&$){if(Z)X=0;if(G=0,J===">")if(J=">=",Z)C=+C+1,X=0,G=0;else X=+X+1,G=0;else if(J==="<=")if(J="<",Z)C=+C+1;else X=+X+1;if(J==="<")F="-0";Y=`${J+C}.${X}.${G}${F}`}else if(Z)Y=`>=${C}.0.0${F} <${+C+1}.0.0-0`;else if(U)Y=`>=${C}.${X}.0${F} <${C}.${+X+1}.0-0`;return E0("xRange return",Y),Y})},tTB=(A,Q)=>{return E0("replaceStars",A,Q),A.trim().replace(c9[Z9.STAR],"")},eTB=(A,Q)=>{return E0("replaceGTE0",A,Q),A.trim().replace(c9[Q.includePrerelease?Z9.GTE0PRE:Z9.GTE0],"")},ASB=(A)=>(Q,B,Y,J,C,X,G,F,W,Z,U,$)=>{if($9(Y))B="";else if($9(J))B=`>=${Y}.0.0${A?"-0":""}`;else if($9(C))B=`>=${Y}.${J}.0${A?"-0":""}`;else if(X)B=`>=${B}`;else B=`>=${B}${A?"-0":""}`;if($9(W))F="";else if($9(Z))F=`<${+W+1}.0.0-0`;else if($9(U))F=`<${W}.${+Z+1}.0-0`;else if($)F=`<=${W}.${Z}.${U}-${$}`;else if(A)F=`<${W}.${Z}.${+U+1}-0`;else F=`<=${F}`;return`${B} ${F}`.trim()},QSB=(A,Q,B)=>{for(let Y=0;Y0){let J=A[Y].semver;if(J.major===Q.major&&J.minor===Q.minor&&J.patch===Q.patch)return!0}}return!1}return!0}});var nN=R((xvY,ChA)=>{var sN=Symbol("SemVer ANY");class LO{static get ANY(){return sN}constructor(A,Q){if(Q=AhA(Q),A instanceof LO)if(A.loose===!!Q.loose)return A;else A=A.value;if(A=A.trim().split(/\s+/).join(" "),dl("comparator",A,Q),this.options=Q,this.loose=!!Q.loose,this.parse(A),this.semver===sN)this.value="";else this.value=this.operator+this.semver.version;dl("comp",this)}parse(A){let Q=this.options.loose?QhA[BhA.COMPARATORLOOSE]:QhA[BhA.COMPARATOR],B=A.match(Q);if(!B)throw TypeError(`Invalid comparator: ${A}`);if(this.operator=B[1]!==void 0?B[1]:"",this.operator==="=")this.operator="";if(!B[2])this.semver=sN;else this.semver=new YhA(B[2],this.options.loose)}toString(){return this.value}test(A){if(dl("Comparator.test",A,this.options.loose),this.semver===sN||A===sN)return!0;if(typeof A==="string")try{A=new YhA(A,this.options)}catch(Q){return!1}return ul(A,this.operator,this.semver,this.options)}intersects(A,Q){if(!(A instanceof LO))throw TypeError("a Comparator is required");if(this.operator===""){if(this.value==="")return!0;return new JhA(A.value,Q).test(this.value)}else if(A.operator===""){if(A.value==="")return!0;return new JhA(this.value,Q).test(A.semver)}if(Q=AhA(Q),Q.includePrerelease&&(this.value==="<0.0.0-0"||A.value==="<0.0.0-0"))return!1;if(!Q.includePrerelease&&(this.value.startsWith("<0.0.0")||A.value.startsWith("<0.0.0")))return!1;if(this.operator.startsWith(">")&&A.operator.startsWith(">"))return!0;if(this.operator.startsWith("<")&&A.operator.startsWith("<"))return!0;if(this.semver.version===A.semver.version&&this.operator.includes("=")&&A.operator.includes("="))return!0;if(ul(this.semver,"<",A.semver,Q)&&this.operator.startsWith(">")&&A.operator.startsWith("<"))return!0;if(ul(this.semver,">",A.semver,Q)&&this.operator.startsWith("<")&&A.operator.startsWith(">"))return!0;return!1}}ChA.exports=LO;var AhA=ZO(),{safeRe:QhA,t:BhA}=aE(),ul=bl(),dl=lN(),YhA=OJ(),JhA=v5()});var rN=R((fvY,XhA)=>{var BSB=v5(),YSB=(A,Q,B)=>{try{Q=new BSB(Q,B)}catch(Y){return!1}return Q.test(A)};XhA.exports=YSB});var FhA=R((bvY,GhA)=>{var JSB=v5(),CSB=(A,Q)=>new JSB(A,Q).set.map((B)=>B.map((Y)=>Y.value).join(" ").trim().split(" "));GhA.exports=CSB});var ZhA=R((mvY,WhA)=>{var XSB=OJ(),GSB=v5(),FSB=(A,Q,B)=>{let Y=null,J=null,C=null;try{C=new GSB(Q,B)}catch(X){return null}return A.forEach((X)=>{if(C.test(X)){if(!Y||J.compare(X)===-1)Y=X,J=new XSB(Y,B)}}),Y};WhA.exports=FSB});var UhA=R((uvY,$hA)=>{var WSB=OJ(),ZSB=v5(),$SB=(A,Q,B)=>{let Y=null,J=null,C=null;try{C=new ZSB(Q,B)}catch(X){return null}return A.forEach((X)=>{if(C.test(X)){if(!Y||J.compare(X)===1)Y=X,J=new WSB(Y,B)}}),Y};$hA.exports=$SB});var VhA=R((dvY,KhA)=>{var cl=OJ(),USB=v5(),EhA=pN(),ESB=(A,Q)=>{A=new USB(A,Q);let B=new cl("0.0.0");if(A.test(B))return B;if(B=new cl("0.0.0-0"),A.test(B))return B;B=null;for(let Y=0;Y{let G=new cl(X.semver.version);switch(X.operator){case">":if(G.prerelease.length===0)G.patch++;else G.prerelease.push(0);G.raw=G.format();case"":case">=":if(!C||EhA(G,C))C=G;break;case"<":case"<=":break;default:throw Error(`Unexpected operation: ${X.operator}`)}}),C&&(!B||EhA(B,C)))B=C}if(B&&A.test(B))return B;return null};KhA.exports=ESB});var HhA=R((cvY,IhA)=>{var KSB=v5(),VSB=(A,Q)=>{try{return new KSB(A,Q).range||"*"}catch(B){return null}};IhA.exports=VSB});var qO=R((lvY,qhA)=>{var ISB=OJ(),LhA=nN(),{ANY:HSB}=LhA,DSB=v5(),NSB=rN(),DhA=pN(),NhA=VO(),LSB=HO(),qSB=IO(),MSB=(A,Q,B,Y)=>{A=new ISB(A,Y),Q=new DSB(Q,Y);let J,C,X,G,F;switch(B){case">":J=DhA,C=LSB,X=NhA,G=">",F=">=";break;case"<":J=NhA,C=qSB,X=DhA,G="<",F="<=";break;default:throw TypeError('Must provide a hilo val of "<" or ">"')}if(NSB(A,Q,Y))return!1;for(let W=0;W{if(E.semver===HSB)E=new LhA(">=0.0.0");if(U=U||E,$=$||E,J(E.semver,U.semver,Y))U=E;else if(X(E.semver,$.semver,Y))$=E}),U.operator===G||U.operator===F)return!1;if((!$.operator||$.operator===G)&&C(A,$.semver))return!1;else if($.operator===F&&X(A,$.semver))return!1}return!0};qhA.exports=MSB});var zhA=R((pvY,MhA)=>{var zSB=qO(),RSB=(A,Q,B)=>zSB(A,Q,">",B);MhA.exports=RSB});var whA=R((ivY,RhA)=>{var wSB=qO(),jSB=(A,Q,B)=>wSB(A,Q,"<",B);RhA.exports=jSB});var PhA=R((nvY,OhA)=>{var jhA=v5(),OSB=(A,Q,B)=>{return A=new jhA(A,B),Q=new jhA(Q,B),A.intersects(Q,B)};OhA.exports=OSB});var ShA=R((svY,ThA)=>{var PSB=rN(),TSB=_5();ThA.exports=(A,Q,B)=>{let Y=[],J=null,C=null,X=A.sort((Z,U)=>TSB(Z,U,B));for(let Z of X)if(PSB(Z,Q,B)){if(C=Z,!J)J=Z}else{if(C)Y.push([J,C]);C=null,J=null}if(J)Y.push([J,null]);let G=[];for(let[Z,U]of Y)if(Z===U)G.push(Z);else if(!U&&Z===X[0])G.push("*");else if(!U)G.push(`>=${Z}`);else if(Z===X[0])G.push(`<=${U}`);else G.push(`${Z} - ${U}`);let F=G.join(" || "),W=typeof Q.raw==="string"?Q.raw:String(Q);return F.length{var khA=v5(),pl=nN(),{ANY:ll}=pl,aN=rN(),il=_5(),SSB=(A,Q,B={})=>{if(A===Q)return!0;A=new khA(A,B),Q=new khA(Q,B);let Y=!1;A:for(let J of A.set){for(let C of Q.set){let X=_SB(J,C,B);if(Y=Y||X!==null,X)continue A}if(Y)return!1}return!0},kSB=[new pl(">=0.0.0-0")],_hA=[new pl(">=0.0.0")],_SB=(A,Q,B)=>{if(A===Q)return!0;if(A.length===1&&A[0].semver===ll)if(Q.length===1&&Q[0].semver===ll)return!0;else if(B.includePrerelease)A=kSB;else A=_hA;if(Q.length===1&&Q[0].semver===ll)if(B.includePrerelease)return!0;else Q=_hA;let Y=new Set,J,C;for(let E of A)if(E.operator===">"||E.operator===">=")J=vhA(J,E,B);else if(E.operator==="<"||E.operator==="<=")C=yhA(C,E,B);else Y.add(E.semver);if(Y.size>1)return null;let X;if(J&&C){if(X=il(J.semver,C.semver,B),X>0)return null;else if(X===0&&(J.operator!==">="||C.operator!=="<="))return null}for(let E of Y){if(J&&!aN(E,String(J),B))return null;if(C&&!aN(E,String(C),B))return null;for(let K of Q)if(!aN(E,String(K),B))return!1;return!0}let G,F,W,Z,U=C&&!B.includePrerelease&&C.semver.prerelease.length?C.semver:!1,$=J&&!B.includePrerelease&&J.semver.prerelease.length?J.semver:!1;if(U&&U.prerelease.length===1&&C.operator==="<"&&U.prerelease[0]===0)U=!1;for(let E of Q){if(Z=Z||E.operator===">"||E.operator===">=",W=W||E.operator==="<"||E.operator==="<=",J){if($){if(E.semver.prerelease&&E.semver.prerelease.length&&E.semver.major===$.major&&E.semver.minor===$.minor&&E.semver.patch===$.patch)$=!1}if(E.operator===">"||E.operator===">="){if(G=vhA(J,E,B),G===E&&G!==J)return!1}else if(J.operator===">="&&!aN(J.semver,String(E),B))return!1}if(C){if(U){if(E.semver.prerelease&&E.semver.prerelease.length&&E.semver.major===U.major&&E.semver.minor===U.minor&&E.semver.patch===U.patch)U=!1}if(E.operator==="<"||E.operator==="<="){if(F=yhA(C,E,B),F===E&&F!==C)return!1}else if(C.operator==="<="&&!aN(C.semver,String(E),B))return!1}if(!E.operator&&(C||J)&&X!==0)return!1}if(J&&W&&!C&&X!==0)return!1;if(C&&Z&&!J&&X!==0)return!1;if($||U)return!1;return!0},vhA=(A,Q,B)=>{if(!A)return Q;let Y=il(A.semver,Q.semver,B);return Y>0?A:Y<0?Q:Q.operator===">"&&A.operator===">="?Q:A},yhA=(A,Q,B)=>{if(!A)return Q;let Y=il(A.semver,Q.semver,B);return Y<0?A:Y>0?Q:Q.operator==="<"&&A.operator==="<="?Q:A};hhA.exports=SSB});var mhA=R((avY,bhA)=>{var nl=aE(),xhA=cN(),vSB=OJ(),fhA=gl(),ySB=nZ(),hSB=WyA(),gSB=$yA(),xSB=KyA(),fSB=HyA(),bSB=NyA(),mSB=qyA(),uSB=zyA(),dSB=wyA(),cSB=_5(),lSB=TyA(),pSB=kyA(),iSB=KO(),nSB=hyA(),sSB=xyA(),rSB=pN(),aSB=VO(),oSB=xl(),tSB=fl(),eSB=IO(),AkB=HO(),QkB=bl(),BkB=iyA(),YkB=nN(),JkB=v5(),CkB=rN(),XkB=FhA(),GkB=ZhA(),FkB=UhA(),WkB=VhA(),ZkB=HhA(),$kB=qO(),UkB=zhA(),EkB=whA(),KkB=PhA(),VkB=ShA(),IkB=ghA();bhA.exports={parse:ySB,valid:hSB,clean:gSB,inc:xSB,diff:fSB,major:bSB,minor:mSB,patch:uSB,prerelease:dSB,compare:cSB,rcompare:lSB,compareLoose:pSB,compareBuild:iSB,sort:nSB,rsort:sSB,gt:rSB,lt:aSB,eq:oSB,neq:tSB,gte:eSB,lte:AkB,cmp:QkB,coerce:BkB,Comparator:YkB,Range:JkB,satisfies:CkB,toComparators:XkB,maxSatisfying:GkB,minSatisfying:FkB,minVersion:WkB,validRange:ZkB,outside:$kB,gtr:UkB,ltr:EkB,intersects:KkB,simplifyRange:VkB,subset:IkB,SemVer:vSB,re:nl.re,src:nl.src,tokens:nl.t,SEMVER_SPEC_VERSION:xhA.SEMVER_SPEC_VERSION,RELEASE_TYPES:xhA.RELEASE_TYPES,compareIdentifiers:fhA.compareIdentifiers,rcompareIdentifiers:fhA.rcompareIdentifiers}});var rl=R((ovY,chA)=>{function sl(A){return typeof A==="function"}var U9=console.error.bind(console);function oN(A,Q,B){var Y=!!A[Q]&&A.propertyIsEnumerable(Q);Object.defineProperty(A,Q,{configurable:!0,enumerable:Y,writable:!0,value:B})}function tN(A){if(A&&A.logger)if(!sl(A.logger))U9("new logger isn't a function, not replacing");else U9=A.logger}function uhA(A,Q,B){if(!A||!A[Q]){U9("no original function "+Q+" to wrap");return}if(!B){U9("no wrapper function"),U9(Error().stack);return}if(!sl(A[Q])||!sl(B)){U9("original object and wrapper must be functions");return}var Y=A[Q],J=B(Y,Q);return oN(J,"__original",Y),oN(J,"__unwrap",function(){if(A[Q]===J)oN(A,Q,Y)}),oN(J,"__wrapped",!0),oN(A,Q,J),J}function HkB(A,Q,B){if(!A){U9("must provide one or more modules to patch"),U9(Error().stack);return}else if(!Array.isArray(A))A=[A];if(!(Q&&Array.isArray(Q))){U9("must provide one or more functions to wrap on modules");return}A.forEach(function(Y){Q.forEach(function(J){uhA(Y,J,B)})})}function dhA(A,Q){if(!A||!A[Q]){U9("no function to unwrap."),U9(Error().stack);return}if(!A[Q].__unwrap)U9("no original to unwrap to -- has "+Q+" already been unwrapped?");else return A[Q].__unwrap()}function DkB(A,Q){if(!A){U9("must provide one or more modules to patch"),U9(Error().stack);return}else if(!Array.isArray(A))A=[A];if(!(Q&&Array.isArray(Q))){U9("must provide one or more functions to unwrap on modules");return}A.forEach(function(B){Q.forEach(function(Y){dhA(B,Y)})})}tN.wrap=uhA;tN.massWrap=HkB;tN.unwrap=dhA;tN.massUnwrap=DkB;chA.exports=tN});var nhA=R((phA)=>{Object.defineProperty(phA,"__esModule",{value:!0});phA.InstrumentationAbstract=void 0;var al=yA(),NkB=vl(),MO=rl();class lhA{constructor(A,Q,B){this.instrumentationName=A,this.instrumentationVersion=Q,this._config={},this._wrap=MO.wrap,this._unwrap=MO.unwrap,this._massWrap=MO.massWrap,this._massUnwrap=MO.massUnwrap,this.setConfig(B),this._diag=al.diag.createComponentLogger({namespace:A}),this._tracer=al.trace.getTracer(A,Q),this._meter=al.metrics.getMeter(A,Q),this._logger=NkB.logs.getLogger(A,Q),this._updateMetricInstruments()}get meter(){return this._meter}setMeterProvider(A){this._meter=A.getMeter(this.instrumentationName,this.instrumentationVersion),this._updateMetricInstruments()}get logger(){return this._logger}setLoggerProvider(A){this._logger=A.getLogger(this.instrumentationName,this.instrumentationVersion)}getModuleDefinitions(){var A;let Q=(A=this.init())!==null&&A!==void 0?A:[];if(!Array.isArray(Q))return[Q];return Q}_updateMetricInstruments(){return}getConfig(){return this._config}setConfig(A){this._config=Object.assign({enabled:!0},A)}setTracerProvider(A){this._tracer=A.getTracer(this.instrumentationName,this.instrumentationVersion)}get tracer(){return this._tracer}_runSpanCustomizationHook(A,Q,B,Y){if(!A)return;try{A(B,Y)}catch(J){this._diag.error("Error running span customization hook due to exception in handler",{triggerName:Q},J)}}}phA.InstrumentationAbstract=lhA});var rhA=R((evY,shA)=>{var tE=1000,eE=tE*60,AK=eE*60,sZ=AK*24,LkB=sZ*7,qkB=sZ*365.25;shA.exports=function(A,Q){Q=Q||{};var B=typeof A;if(B==="string"&&A.length>0)return MkB(A);else if(B==="number"&&isFinite(A))return Q.long?RkB(A):zkB(A);throw Error("val is not a non-empty string or a valid number. val="+JSON.stringify(A))};function MkB(A){if(A=String(A),A.length>100)return;var Q=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(A);if(!Q)return;var B=parseFloat(Q[1]),Y=(Q[2]||"ms").toLowerCase();switch(Y){case"years":case"year":case"yrs":case"yr":case"y":return B*qkB;case"weeks":case"week":case"w":return B*LkB;case"days":case"day":case"d":return B*sZ;case"hours":case"hour":case"hrs":case"hr":case"h":return B*AK;case"minutes":case"minute":case"mins":case"min":case"m":return B*eE;case"seconds":case"second":case"secs":case"sec":case"s":return B*tE;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return B;default:return}}function zkB(A){var Q=Math.abs(A);if(Q>=sZ)return Math.round(A/sZ)+"d";if(Q>=AK)return Math.round(A/AK)+"h";if(Q>=eE)return Math.round(A/eE)+"m";if(Q>=tE)return Math.round(A/tE)+"s";return A+"ms"}function RkB(A){var Q=Math.abs(A);if(Q>=sZ)return zO(A,Q,sZ,"day");if(Q>=AK)return zO(A,Q,AK,"hour");if(Q>=eE)return zO(A,Q,eE,"minute");if(Q>=tE)return zO(A,Q,tE,"second");return A+" ms"}function zO(A,Q,B,Y){var J=Q>=B*1.5;return Math.round(A/B)+" "+Y+(J?"s":"")}});var ol=R((AyY,ahA)=>{function wkB(A){B.debug=B,B.default=B,B.coerce=F,B.disable=X,B.enable=J,B.enabled=G,B.humanize=rhA(),B.destroy=W,Object.keys(A).forEach((Z)=>{B[Z]=A[Z]}),B.names=[],B.skips=[],B.formatters={};function Q(Z){let U=0;for(let $=0;${if(N==="%%")return"%";z++;let w=B.formatters[q];if(typeof w==="function"){let P=V[z];N=w.call(H,P),V.splice(z,1),z--}return N}),B.formatArgs.call(H,V),(H.log||B.log).apply(H,V)}if(I.namespace=Z,I.useColors=B.useColors(),I.color=B.selectColor(Z),I.extend=Y,I.destroy=B.destroy,Object.defineProperty(I,"enabled",{enumerable:!0,configurable:!1,get:()=>{if($!==null)return $;if(E!==B.namespaces)E=B.namespaces,K=B.enabled(Z);return K},set:(V)=>{$=V}}),typeof B.init==="function")B.init(I);return I}function Y(Z,U){let $=B(this.namespace+(typeof U>"u"?":":U)+Z);return $.log=this.log,$}function J(Z){B.save(Z),B.namespaces=Z,B.names=[],B.skips=[];let U=(typeof Z==="string"?Z:"").trim().replace(/\s+/g,",").split(",").filter(Boolean);for(let $ of U)if($[0]==="-")B.skips.push($.slice(1));else B.names.push($)}function C(Z,U){let $=0,E=0,K=-1,I=0;while($"-"+U)].join(",");return B.enable(""),Z}function G(Z){for(let U of B.skips)if(C(Z,U))return!1;for(let U of B.names)if(C(Z,U))return!0;return!1}function F(Z){if(Z instanceof Error)return Z.stack||Z.message;return Z}function W(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return B.enable(B.load()),B}ahA.exports=wkB});var thA=R((ohA,RO)=>{ohA.formatArgs=OkB;ohA.save=PkB;ohA.load=TkB;ohA.useColors=jkB;ohA.storage=SkB();ohA.destroy=(()=>{let A=!1;return()=>{if(!A)A=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}})();ohA.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function jkB(){if(typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let A;return typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&(A=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(A[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function OkB(A){if(A[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+A[0]+(this.useColors?"%c ":" ")+"+"+RO.exports.humanize(this.diff),!this.useColors)return;let Q="color: "+this.color;A.splice(1,0,Q,"color: inherit");let B=0,Y=0;A[0].replace(/%[a-zA-Z%]/g,(J)=>{if(J==="%%")return;if(B++,J==="%c")Y=B}),A.splice(Y,0,Q)}ohA.log=console.debug||console.log||(()=>{});function PkB(A){try{if(A)ohA.storage.setItem("debug",A);else ohA.storage.removeItem("debug")}catch(Q){}}function TkB(){let A;try{A=ohA.storage.getItem("debug")||ohA.storage.getItem("DEBUG")}catch(Q){}if(!A&&typeof process<"u"&&"env"in process)A=process.env.DEBUG;return A}function SkB(){try{return localStorage}catch(A){}}RO.exports=ol()(ohA);var{formatters:kkB}=RO.exports;kkB.j=function(A){try{return JSON.stringify(A)}catch(Q){return"[UnexpectedJSONParseError]: "+Q.message}}});var AgA=R((ByY,ehA)=>{ehA.exports=(A,Q)=>{Q=Q||process.argv;let B=A.startsWith("-")?"":A.length===1?"-":"--",Y=Q.indexOf(B+A),J=Q.indexOf("--");return Y!==-1&&(J===-1?!0:Y{var bkB=u("os"),tC=AgA(),PJ=process.env,QK;if(tC("no-color")||tC("no-colors")||tC("color=false"))QK=!1;else if(tC("color")||tC("colors")||tC("color=true")||tC("color=always"))QK=!0;if("FORCE_COLOR"in PJ)QK=PJ.FORCE_COLOR.length===0||parseInt(PJ.FORCE_COLOR,10)!==0;function mkB(A){if(A===0)return!1;return{level:A,hasBasic:!0,has256:A>=2,has16m:A>=3}}function ukB(A){if(QK===!1)return 0;if(tC("color=16m")||tC("color=full")||tC("color=truecolor"))return 3;if(tC("color=256"))return 2;if(A&&!A.isTTY&&QK!==!0)return 0;let Q=QK?1:0;if(process.platform==="win32"){let B=bkB.release().split(".");if(Number(process.versions.node.split(".")[0])>=8&&Number(B[0])>=10&&Number(B[2])>=10586)return Number(B[2])>=14931?3:2;return 1}if("CI"in PJ){if(["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI"].some((B)=>(B in PJ))||PJ.CI_NAME==="codeship")return 1;return Q}if("TEAMCITY_VERSION"in PJ)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(PJ.TEAMCITY_VERSION)?1:0;if(PJ.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in PJ){let B=parseInt((PJ.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(PJ.TERM_PROGRAM){case"iTerm.app":return B>=3?3:2;case"Apple_Terminal":return 2}}if(/-256(color)?$/i.test(PJ.TERM))return 2;if(/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(PJ.TERM))return 1;if("COLORTERM"in PJ)return 1;if(PJ.TERM==="dumb")return Q;return Q}function tl(A){let Q=ukB(A);return mkB(Q)}QgA.exports={supportsColor:tl,stdout:tl(process.stdout),stderr:tl(process.stderr)}});var XgA=R((JgA,jO)=>{var dkB=u("tty"),wO=u("util");JgA.init=rkB;JgA.log=ikB;JgA.formatArgs=lkB;JgA.save=nkB;JgA.load=skB;JgA.useColors=ckB;JgA.destroy=wO.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");JgA.colors=[6,2,3,4,5,1];try{let A=BgA();if(A&&(A.stderr||A).level>=2)JgA.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221]}catch(A){}JgA.inspectOpts=Object.keys(process.env).filter((A)=>{return/^debug_/i.test(A)}).reduce((A,Q)=>{let B=Q.substring(6).toLowerCase().replace(/_([a-z])/g,(J,C)=>{return C.toUpperCase()}),Y=process.env[Q];if(/^(yes|on|true|enabled)$/i.test(Y))Y=!0;else if(/^(no|off|false|disabled)$/i.test(Y))Y=!1;else if(Y==="null")Y=null;else Y=Number(Y);return A[B]=Y,A},{});function ckB(){return"colors"in JgA.inspectOpts?Boolean(JgA.inspectOpts.colors):dkB.isatty(process.stderr.fd)}function lkB(A){let{namespace:Q,useColors:B}=this;if(B){let Y=this.color,J="\x1B[3"+(Y<8?Y:"8;5;"+Y),C=` ${J};1m${Q} \x1B[0m`;A[0]=C+A[0].split(` `).join(` -`+C),A.push(J+"m+"+qO.exports.humanize(this.diff)+"\x1B[0m")}else A[0]=TkB()+Q+" "+A[0]}function TkB(){if(dgA.inspectOpts.hideDate)return"";return new Date().toISOString()+" "}function SkB(...A){return process.stderr.write(LO.formatWithOptions(dgA.inspectOpts,...A)+` -`)}function kkB(A){if(A)process.env.DEBUG=A;else delete process.env.DEBUG}function _kB(){return process.env.DEBUG}function vkB(A){A.inspectOpts={};let Q=Object.keys(dgA.inspectOpts);for(let B=0;BQ.trim()).join(" ")};ugA.O=function(A){return this.inspectOpts.colors=this.useColors,LO.inspect(A,this.inspectOpts)}});var pgA=R((LvY,ul)=>{if(typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs)ul.exports=hgA();else ul.exports=lgA()});var cl=R((qvY,igA)=>{var dl=u("path").sep;igA.exports=function(A){var Q=A.split(dl),B=Q.lastIndexOf("node_modules");if(B===-1)return;if(!Q[B+1])return;var Y=Q[B+1][0]==="@",J=Y?Q[B+1]+"/"+Q[B+2]:Q[B+1],C=Y?3:2,X="",G=B+C-1;for(var F=0;F<=G;F++)if(F===G)X+=Q[F];else X+=Q[F]+dl;var W="",Z=Q.length-1;for(var U=B+C;U<=Z;U++)if(U===Z)W+=Q[U];else W+=Q[U]+dl;return{name:J,basedir:X,path:W}}});var ll=R((MvY,ngA)=>{var ukB=u("os");ngA.exports=ukB.homedir||function(){var Q=process.env.HOME,B=process.env.LOGNAME||process.env.USER||process.env.LNAME||process.env.USERNAME;if(process.platform==="win32")return process.env.USERPROFILE||process.env.HOMEDRIVE+process.env.HOMEPATH||Q||null;if(process.platform==="darwin")return Q||(B?"/Users/"+B:null);if(process.platform==="linux")return Q||(process.getuid()===0?"/root":B?"/home/"+B:null);return Q||null}});var pl=R((zvY,sgA)=>{sgA.exports=function(){var A=Error.prepareStackTrace;Error.prepareStackTrace=function(B,Y){return Y};var Q=Error().stack;return Error.prepareStackTrace=A,Q[2].getFileName()}});var rgA=R((RvY,aN)=>{var dkB=process.platform==="win32",ckB=/^(((?:[a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/]+)?[\\\/]?)(?:[^\\\/]*[\\\/])*)((\.{1,2}|[^\\\/]+?|)(\.[^.\/\\]*|))[\\\/]*$/,il={};function lkB(A){return ckB.exec(A).slice(1)}il.parse=function(A){if(typeof A!=="string")throw TypeError("Parameter 'pathString' must be a string, not "+typeof A);var Q=lkB(A);if(!Q||Q.length!==5)throw TypeError("Invalid path '"+A+"'");return{root:Q[1],dir:Q[0]===Q[1]?Q[0]:Q[0].slice(0,-1),base:Q[2],ext:Q[4],name:Q[3]}};var pkB=/^((\/?)(?:[^\/]*\/)*)((\.{1,2}|[^\/]+?|)(\.[^.\/]*|))[\/]*$/,nl={};function ikB(A){return pkB.exec(A).slice(1)}nl.parse=function(A){if(typeof A!=="string")throw TypeError("Parameter 'pathString' must be a string, not "+typeof A);var Q=ikB(A);if(!Q||Q.length!==5)throw TypeError("Invalid path '"+A+"'");return{root:Q[1],dir:Q[0].slice(0,-1),base:Q[2],ext:Q[4],name:Q[3]}};if(dkB)aN.exports=il.parse;else aN.exports=nl.parse;aN.exports.posix=nl.parse;aN.exports.win32=il.parse});var sl=R((wvY,egA)=>{var tgA=u("path"),agA=tgA.parse||rgA(),ogA=function(Q,B){var Y="/";if(/^([A-Za-z]:)/.test(Q))Y="";else if(/^\\\\/.test(Q))Y="\\\\";var J=[Q],C=agA(Q);while(C.dir!==J[J.length-1])J.push(C.dir),C=agA(C.dir);return J.reduce(function(X,G){return X.concat(B.map(function(F){return tgA.resolve(Y,G,F)}))},[])};egA.exports=function(Q,B,Y){var J=B&&B.moduleDirectory?[].concat(B.moduleDirectory):["node_modules"];if(B&&typeof B.paths==="function")return B.paths(Y,Q,function(){return ogA(Q,J)},B);var C=ogA(Q,J);return B&&B.paths?C.concat(B.paths):C}});var rl=R((jvY,AhA)=>{AhA.exports=function(A,Q){return Q||{}}});var YhA=R((OvY,BhA)=>{var nkB="Function.prototype.bind called on incompatible ",skB=Object.prototype.toString,rkB=Math.max,akB="[object Function]",QhA=function(Q,B){var Y=[];for(var J=0;J{var ekB=YhA();JhA.exports=Function.prototype.bind||ekB});var GhA=R((TvY,XhA)=>{var A_B=Function.prototype.call,Q_B=Object.prototype.hasOwnProperty,B_B=ChA();XhA.exports=B_B.call(A_B,Q_B)});var FhA=R((SvY,Y_B)=>{Y_B.exports={assert:!0,"node:assert":[">= 14.18 && < 15",">= 16"],"assert/strict":">= 15","node:assert/strict":">= 16",async_hooks:">= 8","node:async_hooks":[">= 14.18 && < 15",">= 16"],buffer_ieee754:">= 0.5 && < 0.9.7",buffer:!0,"node:buffer":[">= 14.18 && < 15",">= 16"],child_process:!0,"node:child_process":[">= 14.18 && < 15",">= 16"],cluster:">= 0.5","node:cluster":[">= 14.18 && < 15",">= 16"],console:!0,"node:console":[">= 14.18 && < 15",">= 16"],constants:!0,"node:constants":[">= 14.18 && < 15",">= 16"],crypto:!0,"node:crypto":[">= 14.18 && < 15",">= 16"],_debug_agent:">= 1 && < 8",_debugger:"< 8",dgram:!0,"node:dgram":[">= 14.18 && < 15",">= 16"],diagnostics_channel:[">= 14.17 && < 15",">= 15.1"],"node:diagnostics_channel":[">= 14.18 && < 15",">= 16"],dns:!0,"node:dns":[">= 14.18 && < 15",">= 16"],"dns/promises":">= 15","node:dns/promises":">= 16",domain:">= 0.7.12","node:domain":[">= 14.18 && < 15",">= 16"],events:!0,"node:events":[">= 14.18 && < 15",">= 16"],freelist:"< 6",fs:!0,"node:fs":[">= 14.18 && < 15",">= 16"],"fs/promises":[">= 10 && < 10.1",">= 14"],"node:fs/promises":[">= 14.18 && < 15",">= 16"],_http_agent:">= 0.11.1","node:_http_agent":[">= 14.18 && < 15",">= 16"],_http_client:">= 0.11.1","node:_http_client":[">= 14.18 && < 15",">= 16"],_http_common:">= 0.11.1","node:_http_common":[">= 14.18 && < 15",">= 16"],_http_incoming:">= 0.11.1","node:_http_incoming":[">= 14.18 && < 15",">= 16"],_http_outgoing:">= 0.11.1","node:_http_outgoing":[">= 14.18 && < 15",">= 16"],_http_server:">= 0.11.1","node:_http_server":[">= 14.18 && < 15",">= 16"],http:!0,"node:http":[">= 14.18 && < 15",">= 16"],http2:">= 8.8","node:http2":[">= 14.18 && < 15",">= 16"],https:!0,"node:https":[">= 14.18 && < 15",">= 16"],inspector:">= 8","node:inspector":[">= 14.18 && < 15",">= 16"],"inspector/promises":[">= 19"],"node:inspector/promises":[">= 19"],_linklist:"< 8",module:!0,"node:module":[">= 14.18 && < 15",">= 16"],net:!0,"node:net":[">= 14.18 && < 15",">= 16"],"node-inspect/lib/_inspect":">= 7.6 && < 12","node-inspect/lib/internal/inspect_client":">= 7.6 && < 12","node-inspect/lib/internal/inspect_repl":">= 7.6 && < 12",os:!0,"node:os":[">= 14.18 && < 15",">= 16"],path:!0,"node:path":[">= 14.18 && < 15",">= 16"],"path/posix":">= 15.3","node:path/posix":">= 16","path/win32":">= 15.3","node:path/win32":">= 16",perf_hooks:">= 8.5","node:perf_hooks":[">= 14.18 && < 15",">= 16"],process:">= 1","node:process":[">= 14.18 && < 15",">= 16"],punycode:">= 0.5","node:punycode":[">= 14.18 && < 15",">= 16"],querystring:!0,"node:querystring":[">= 14.18 && < 15",">= 16"],readline:!0,"node:readline":[">= 14.18 && < 15",">= 16"],"readline/promises":">= 17","node:readline/promises":">= 17",repl:!0,"node:repl":[">= 14.18 && < 15",">= 16"],"node:sea":[">= 20.12 && < 21",">= 21.7"],smalloc:">= 0.11.5 && < 3","node:sqlite":[">= 22.13 && < 23",">= 23.4"],_stream_duplex:">= 0.9.4","node:_stream_duplex":[">= 14.18 && < 15",">= 16"],_stream_transform:">= 0.9.4","node:_stream_transform":[">= 14.18 && < 15",">= 16"],_stream_wrap:">= 1.4.1","node:_stream_wrap":[">= 14.18 && < 15",">= 16"],_stream_passthrough:">= 0.9.4","node:_stream_passthrough":[">= 14.18 && < 15",">= 16"],_stream_readable:">= 0.9.4","node:_stream_readable":[">= 14.18 && < 15",">= 16"],_stream_writable:">= 0.9.4","node:_stream_writable":[">= 14.18 && < 15",">= 16"],stream:!0,"node:stream":[">= 14.18 && < 15",">= 16"],"stream/consumers":">= 16.7","node:stream/consumers":">= 16.7","stream/promises":">= 15","node:stream/promises":">= 16","stream/web":">= 16.5","node:stream/web":">= 16.5",string_decoder:!0,"node:string_decoder":[">= 14.18 && < 15",">= 16"],sys:[">= 0.4 && < 0.7",">= 0.8"],"node:sys":[">= 14.18 && < 15",">= 16"],"test/reporters":">= 19.9 && < 20.2","node:test/reporters":[">= 18.17 && < 19",">= 19.9",">= 20"],"test/mock_loader":">= 22.3 && < 22.7","node:test/mock_loader":">= 22.3 && < 22.7","node:test":[">= 16.17 && < 17",">= 18"],timers:!0,"node:timers":[">= 14.18 && < 15",">= 16"],"timers/promises":">= 15","node:timers/promises":">= 16",_tls_common:">= 0.11.13","node:_tls_common":[">= 14.18 && < 15",">= 16"],_tls_legacy:">= 0.11.3 && < 10",_tls_wrap:">= 0.11.3","node:_tls_wrap":[">= 14.18 && < 15",">= 16"],tls:!0,"node:tls":[">= 14.18 && < 15",">= 16"],trace_events:">= 10","node:trace_events":[">= 14.18 && < 15",">= 16"],tty:!0,"node:tty":[">= 14.18 && < 15",">= 16"],url:!0,"node:url":[">= 14.18 && < 15",">= 16"],util:!0,"node:util":[">= 14.18 && < 15",">= 16"],"util/types":">= 15.3","node:util/types":">= 16","v8/tools/arguments":">= 10 && < 12","v8/tools/codemap":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/consarray":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/csvparser":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/logreader":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/profile_view":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/splaytree":[">= 4.4 && < 5",">= 5.2 && < 12"],v8:">= 1","node:v8":[">= 14.18 && < 15",">= 16"],vm:!0,"node:vm":[">= 14.18 && < 15",">= 16"],wasi:[">= 13.4 && < 13.5",">= 18.17 && < 19",">= 20"],"node:wasi":[">= 18.17 && < 19",">= 20"],worker_threads:">= 11.7","node:worker_threads":[">= 14.18 && < 15",">= 16"],zlib:">= 0.5","node:zlib":[">= 14.18 && < 15",">= 16"]}});var oN=R((kvY,$hA)=>{var J_B=GhA();function C_B(A,Q){var B=A.split("."),Y=Q.split(" "),J=Y.length>1?Y[0]:"=",C=(Y.length>1?Y[1]:Y[0]).split(".");for(var X=0;X<3;++X){var G=parseInt(B[X]||0,10),F=parseInt(C[X]||0,10);if(G===F)continue;if(J==="<")return G=")return G>=F;return!1}return J===">="}function WhA(A,Q){var B=Q.split(/ ?&& ?/);if(B.length===0)return!1;for(var Y=0;Y"u"?process.versions&&process.versions.node:A;if(typeof B!=="string")throw TypeError(typeof A>"u"?"Unable to determine current node version":"If provided, a valid node version is required");if(Q&&typeof Q==="object"){for(var Y=0;Y{var iZ=u("fs"),G_B=ll(),DY=u("path"),F_B=pl(),W_B=sl(),Z_B=rl(),$_B=oN(),U_B=process.platform!=="win32"&&iZ.realpath&&typeof iZ.realpath.native==="function"?iZ.realpath.native:iZ.realpath,UhA=G_B(),E_B=function(){return[DY.join(UhA,".node_modules"),DY.join(UhA,".node_libraries")]},K_B=function(Q,B){iZ.stat(Q,function(Y,J){if(!Y)return B(null,J.isFile()||J.isFIFO());if(Y.code==="ENOENT"||Y.code==="ENOTDIR")return B(null,!1);return B(Y)})},V_B=function(Q,B){iZ.stat(Q,function(Y,J){if(!Y)return B(null,J.isDirectory());if(Y.code==="ENOENT"||Y.code==="ENOTDIR")return B(null,!1);return B(Y)})},I_B=function(Q,B){U_B(Q,function(Y,J){if(Y&&Y.code!=="ENOENT")B(Y);else B(null,Y?Q:J)})},tN=function(Q,B,Y,J){if(Y&&Y.preserveSymlinks===!1)Q(B,J);else J(null,B)},H_B=function(Q,B,Y){Q(B,function(J,C){if(J)Y(J);else try{var X=JSON.parse(C);Y(null,X)}catch(G){Y(null)}})},D_B=function(Q,B,Y){var J=W_B(B,Y,Q);for(var C=0;C{N_B.exports={assert:!0,"node:assert":[">= 14.18 && < 15",">= 16"],"assert/strict":">= 15","node:assert/strict":">= 16",async_hooks:">= 8","node:async_hooks":[">= 14.18 && < 15",">= 16"],buffer_ieee754:">= 0.5 && < 0.9.7",buffer:!0,"node:buffer":[">= 14.18 && < 15",">= 16"],child_process:!0,"node:child_process":[">= 14.18 && < 15",">= 16"],cluster:">= 0.5","node:cluster":[">= 14.18 && < 15",">= 16"],console:!0,"node:console":[">= 14.18 && < 15",">= 16"],constants:!0,"node:constants":[">= 14.18 && < 15",">= 16"],crypto:!0,"node:crypto":[">= 14.18 && < 15",">= 16"],_debug_agent:">= 1 && < 8",_debugger:"< 8",dgram:!0,"node:dgram":[">= 14.18 && < 15",">= 16"],diagnostics_channel:[">= 14.17 && < 15",">= 15.1"],"node:diagnostics_channel":[">= 14.18 && < 15",">= 16"],dns:!0,"node:dns":[">= 14.18 && < 15",">= 16"],"dns/promises":">= 15","node:dns/promises":">= 16",domain:">= 0.7.12","node:domain":[">= 14.18 && < 15",">= 16"],events:!0,"node:events":[">= 14.18 && < 15",">= 16"],freelist:"< 6",fs:!0,"node:fs":[">= 14.18 && < 15",">= 16"],"fs/promises":[">= 10 && < 10.1",">= 14"],"node:fs/promises":[">= 14.18 && < 15",">= 16"],_http_agent:">= 0.11.1","node:_http_agent":[">= 14.18 && < 15",">= 16"],_http_client:">= 0.11.1","node:_http_client":[">= 14.18 && < 15",">= 16"],_http_common:">= 0.11.1","node:_http_common":[">= 14.18 && < 15",">= 16"],_http_incoming:">= 0.11.1","node:_http_incoming":[">= 14.18 && < 15",">= 16"],_http_outgoing:">= 0.11.1","node:_http_outgoing":[">= 14.18 && < 15",">= 16"],_http_server:">= 0.11.1","node:_http_server":[">= 14.18 && < 15",">= 16"],http:!0,"node:http":[">= 14.18 && < 15",">= 16"],http2:">= 8.8","node:http2":[">= 14.18 && < 15",">= 16"],https:!0,"node:https":[">= 14.18 && < 15",">= 16"],inspector:">= 8","node:inspector":[">= 14.18 && < 15",">= 16"],"inspector/promises":[">= 19"],"node:inspector/promises":[">= 19"],_linklist:"< 8",module:!0,"node:module":[">= 14.18 && < 15",">= 16"],net:!0,"node:net":[">= 14.18 && < 15",">= 16"],"node-inspect/lib/_inspect":">= 7.6 && < 12","node-inspect/lib/internal/inspect_client":">= 7.6 && < 12","node-inspect/lib/internal/inspect_repl":">= 7.6 && < 12",os:!0,"node:os":[">= 14.18 && < 15",">= 16"],path:!0,"node:path":[">= 14.18 && < 15",">= 16"],"path/posix":">= 15.3","node:path/posix":">= 16","path/win32":">= 15.3","node:path/win32":">= 16",perf_hooks:">= 8.5","node:perf_hooks":[">= 14.18 && < 15",">= 16"],process:">= 1","node:process":[">= 14.18 && < 15",">= 16"],punycode:">= 0.5","node:punycode":[">= 14.18 && < 15",">= 16"],querystring:!0,"node:querystring":[">= 14.18 && < 15",">= 16"],readline:!0,"node:readline":[">= 14.18 && < 15",">= 16"],"readline/promises":">= 17","node:readline/promises":">= 17",repl:!0,"node:repl":[">= 14.18 && < 15",">= 16"],"node:sea":[">= 20.12 && < 21",">= 21.7"],smalloc:">= 0.11.5 && < 3","node:sqlite":">= 23.4",_stream_duplex:">= 0.9.4","node:_stream_duplex":[">= 14.18 && < 15",">= 16"],_stream_transform:">= 0.9.4","node:_stream_transform":[">= 14.18 && < 15",">= 16"],_stream_wrap:">= 1.4.1","node:_stream_wrap":[">= 14.18 && < 15",">= 16"],_stream_passthrough:">= 0.9.4","node:_stream_passthrough":[">= 14.18 && < 15",">= 16"],_stream_readable:">= 0.9.4","node:_stream_readable":[">= 14.18 && < 15",">= 16"],_stream_writable:">= 0.9.4","node:_stream_writable":[">= 14.18 && < 15",">= 16"],stream:!0,"node:stream":[">= 14.18 && < 15",">= 16"],"stream/consumers":">= 16.7","node:stream/consumers":">= 16.7","stream/promises":">= 15","node:stream/promises":">= 16","stream/web":">= 16.5","node:stream/web":">= 16.5",string_decoder:!0,"node:string_decoder":[">= 14.18 && < 15",">= 16"],sys:[">= 0.4 && < 0.7",">= 0.8"],"node:sys":[">= 14.18 && < 15",">= 16"],"test/reporters":">= 19.9 && < 20.2","node:test/reporters":[">= 18.17 && < 19",">= 19.9",">= 20"],"test/mock_loader":">= 22.3 && < 22.7","node:test/mock_loader":">= 22.3 && < 22.7","node:test":[">= 16.17 && < 17",">= 18"],timers:!0,"node:timers":[">= 14.18 && < 15",">= 16"],"timers/promises":">= 15","node:timers/promises":">= 16",_tls_common:">= 0.11.13","node:_tls_common":[">= 14.18 && < 15",">= 16"],_tls_legacy:">= 0.11.3 && < 10",_tls_wrap:">= 0.11.3","node:_tls_wrap":[">= 14.18 && < 15",">= 16"],tls:!0,"node:tls":[">= 14.18 && < 15",">= 16"],trace_events:">= 10","node:trace_events":[">= 14.18 && < 15",">= 16"],tty:!0,"node:tty":[">= 14.18 && < 15",">= 16"],url:!0,"node:url":[">= 14.18 && < 15",">= 16"],util:!0,"node:util":[">= 14.18 && < 15",">= 16"],"util/types":">= 15.3","node:util/types":">= 16","v8/tools/arguments":">= 10 && < 12","v8/tools/codemap":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/consarray":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/csvparser":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/logreader":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/profile_view":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/splaytree":[">= 4.4 && < 5",">= 5.2 && < 12"],v8:">= 1","node:v8":[">= 14.18 && < 15",">= 16"],vm:!0,"node:vm":[">= 14.18 && < 15",">= 16"],wasi:[">= 13.4 && < 13.5",">= 18.17 && < 19",">= 20"],"node:wasi":[">= 18.17 && < 19",">= 20"],worker_threads:">= 11.7","node:worker_threads":[">= 14.18 && < 15",">= 16"],zlib:">= 0.5","node:zlib":[">= 14.18 && < 15",">= 16"]}});var NhA=R((yvY,DhA)=>{var L_B=oN(),IhA=VhA(),HhA={};for(eN in IhA)if(Object.prototype.hasOwnProperty.call(IhA,eN))HhA[eN]=L_B(eN);var eN;DhA.exports=HhA});var qhA=R((gvY,LhA)=>{var q_B=oN();LhA.exports=function(Q){return q_B(Q)}});var RhA=R((hvY,zhA)=>{var M_B=oN(),nZ=u("fs"),PJ=u("path"),z_B=ll(),R_B=pl(),w_B=sl(),j_B=rl(),O_B=process.platform!=="win32"&&nZ.realpathSync&&typeof nZ.realpathSync.native==="function"?nZ.realpathSync.native:nZ.realpathSync,MhA=z_B(),P_B=function(){return[PJ.join(MhA,".node_modules"),PJ.join(MhA,".node_libraries")]},T_B=function(Q){try{var B=nZ.statSync(Q,{throwIfNoEntry:!1})}catch(Y){if(Y&&(Y.code==="ENOENT"||Y.code==="ENOTDIR"))return!1;throw Y}return!!B&&(B.isFile()||B.isFIFO())},S_B=function(Q){try{var B=nZ.statSync(Q,{throwIfNoEntry:!1})}catch(Y){if(Y&&(Y.code==="ENOENT"||Y.code==="ENOTDIR"))return!1;throw Y}return!!B&&B.isDirectory()},k_B=function(Q){try{return O_B(Q)}catch(B){if(B.code!=="ENOENT")throw B}return Q},AL=function(Q,B,Y){if(Y&&Y.preserveSymlinks===!1)return Q(B);return B},__B=function(Q,B){var Y=Q(B);try{var J=JSON.parse(Y);return J}catch(C){}},v_B=function(Q,B,Y){var J=w_B(B,Y,Q);for(var C=0;C{var MO=KhA();MO.core=NhA();MO.isCore=qhA();MO.sync=RhA();whA.exports=MO});var jhA=R((fvY,y_B)=>{y_B.exports={name:"require-in-the-middle",version:"7.5.2",description:"Module to hook into the Node.js require function",main:"index.js",types:"types/index.d.ts",dependencies:{debug:"^4.3.5","module-details-from-path":"^1.0.3",resolve:"^1.22.8"},devDependencies:{"@babel/core":"^7.9.0","@babel/preset-env":"^7.9.5","@babel/preset-typescript":"^7.9.0","@babel/register":"^7.9.0","ipp-printer":"^1.0.0",patterns:"^1.0.3",roundround:"^0.2.0",semver:"^6.3.0",standard:"^14.3.1",tape:"^4.11.0"},scripts:{test:"npm run test:lint && npm run test:tape && npm run test:babel","test:lint":"standard","test:tape":"tape test/*.js","test:babel":"node test/babel/babel-register.js"},repository:{type:"git",url:"git+https://github.com/nodejs/require-in-the-middle.git"},keywords:["require","hook","shim","shimmer","shimming","patch","monkey","monkeypatch","module","load"],files:["types"],author:"Thomas Watson Steen (https://twitter.com/wa7son)",license:"MIT",bugs:{url:"https://github.com/nodejs/require-in-the-middle/issues"},homepage:"https://github.com/nodejs/require-in-the-middle#readme",engines:{node:">=8.6.0"}}});var el=R((bvY,tl)=>{var eE=u("path"),tC=u("module"),WY=pgA()("require-in-the-middle"),g_B=cl();tl.exports=QL;tl.exports.Hook=QL;var ol,tE;if(tC.isBuiltin)tE=tC.isBuiltin;else if(tC.builtinModules)tE=(A)=>{if(A.startsWith("node:"))return!0;if(ol===void 0)ol=new Set(tC.builtinModules);return ol.has(A)};else{let A=al(),[Q,B]=process.versions.node.split(".").map(Number);if(Q===8&&B<8)tE=(Y)=>{if(Y==="http2")return!0;return!!A.core[Y]};else tE=(Y)=>{return!!A.core[Y]}}var zO;function h_B(A,Q){if(!zO)if(u.resolve&&u.resolve.paths)zO=function(B,Y){return u.resolve(B,{paths:[Y]})};else{let B=al();zO=function(Y,J){return B.sync(Y,{basedir:J})}}return zO(A,Q)}var x_B=/([/\\]index)?(\.js)?$/;class OhA{constructor(){this._localCache=new Map,this._kRitmExports=Symbol("RitmExports")}has(A,Q){if(this._localCache.has(A))return!0;else if(!Q){let B=u.cache[A];return!!(B&&(this._kRitmExports in B))}else return!1}get(A,Q){let B=this._localCache.get(A);if(B!==void 0)return B;else if(!Q){let Y=u.cache[A];return Y&&Y[this._kRitmExports]}}set(A,Q,B){if(B)this._localCache.set(A,Q);else if(A in u.cache)u.cache[A][this._kRitmExports]=Q;else WY('non-core module is unexpectedly not in require.cache: "%s"',A),this._localCache.set(A,Q)}}function QL(A,Q,B){if(this instanceof QL===!1)return new QL(A,Q,B);if(typeof A==="function")B=A,A=null,Q=null;else if(typeof Q==="function")B=Q,Q=null;if(typeof tC._resolveFilename!=="function"){console.error("Error: Expected Module._resolveFilename to be a function (was: %s) - aborting!",typeof tC._resolveFilename),console.error("Please report this error as an issue related to Node.js %s at %s",process.version,jhA().bugs.url);return}this._cache=new OhA,this._unhooked=!1,this._origRequire=tC.prototype.require;let Y=this,J=new Set,C=Q?Q.internals===!0:!1,X=Array.isArray(A);if(WY("registering require hook"),this._require=tC.prototype.require=function(F){if(Y._unhooked===!0)return WY("ignoring require call - module is soft-unhooked"),Y._origRequire.apply(this,arguments);return G.call(this,arguments,!1)},typeof process.getBuiltinModule==="function")this._origGetBuiltinModule=process.getBuiltinModule,this._getBuiltinModule=process.getBuiltinModule=function(F){if(Y._unhooked===!0)return WY("ignoring process.getBuiltinModule call - module is soft-unhooked"),Y._origGetBuiltinModule.apply(this,arguments);return G.call(this,arguments,!0)};function G(F,W){let Z=F[0],U=tE(Z),$;if(U){if($=Z,Z.startsWith("node:")){let D=Z.slice(5);if(tE(D))$=D}}else if(W)return WY("call to process.getBuiltinModule with unknown built-in id"),Y._origGetBuiltinModule.apply(this,F);else try{$=tC._resolveFilename(Z,this)}catch(D){return WY('Module._resolveFilename("%s") threw %j, calling original Module.require',Z,D.message),Y._origRequire.apply(this,F)}let E,K;if(WY("processing %s module require('%s'): %s",U===!0?"core":"non-core",Z,$),Y._cache.has($,U)===!0)return WY("returning already patched cached module: %s",$),Y._cache.get($,U);let I=J.has($);if(I===!1)J.add($);let V=W?Y._origGetBuiltinModule.apply(this,F):Y._origRequire.apply(this,F);if(I===!0)return WY("module is in the process of being patched already - ignoring: %s",$),V;if(J.delete($),U===!0){if(X===!0&&A.includes($)===!1)return WY("ignoring core module not on whitelist: %s",$),V;E=$}else if(X===!0&&A.includes($)){let D=eE.parse($);E=D.name,K=D.dir}else{let D=g_B($);if(D===void 0)return WY("could not parse filename: %s",$),V;E=D.name,K=D.basedir;let L=f_B(D);WY("resolved filename to module: %s (id: %s, resolved: %s, basedir: %s)",E,Z,L,K);let z=!1;if(X){if(!Z.startsWith(".")&&A.includes(Z))E=Z,z=!0;if(!A.includes(E)&&!A.includes(L))return V;if(A.includes(L)&&L!==E)E=L,z=!0}if(!z){let M;try{M=h_B(E,K)}catch(N){return WY("could not resolve module: %s",E),Y._cache.set($,V,U),V}if(M!==$)if(C===!0)E=E+eE.sep+eE.relative(K,$),WY("preparing to process require of internal file: %s",E);else return WY("ignoring require of non-main module file: %s",M),Y._cache.set($,V,U),V}}Y._cache.set($,V,U),WY("calling require hook: %s",E);let H=B(V,E,K);return Y._cache.set($,H,U),WY("returning module: %s",E),H}}QL.prototype.unhook=function(){if(this._unhooked=!0,this._require===tC.prototype.require)tC.prototype.require=this._origRequire,WY("require unhook successful");else WY("require unhook unsuccessful");if(process.getBuiltinModule!==void 0)if(this._getBuiltinModule===process.getBuiltinModule)process.getBuiltinModule=this._origGetBuiltinModule,WY("process.getBuiltinModule unhook successful");else WY("process.getBuiltinModule unhook unsuccessful")};function f_B(A){let Q=eE.sep!=="/"?A.path.split(eE.sep).join("/"):A.path;return eE.posix.join(A.name,Q).replace(x_B,"")}});var khA=R((ThA)=>{Object.defineProperty(ThA,"__esModule",{value:!0});ThA.ModuleNameTrie=ThA.ModuleNameSeparator=void 0;ThA.ModuleNameSeparator="/";class Ap{constructor(){this.hooks=[],this.children=new Map}}class PhA{constructor(){this._trie=new Ap,this._counter=0}insert(A){let Q=this._trie;for(let B of A.moduleName.split(ThA.ModuleNameSeparator)){let Y=Q.children.get(B);if(!Y)Y=new Ap,Q.children.set(B,Y);Q=Y}Q.hooks.push({hook:A,insertedId:this._counter++})}search(A,{maintainInsertionOrder:Q,fullOnly:B}={}){let Y=this._trie,J=[],C=!0;for(let X of A.split(ThA.ModuleNameSeparator)){let G=Y.children.get(X);if(!G){C=!1;break}if(!B)J.push(...G.hooks);Y=G}if(B&&C)J.push(...Y.hooks);if(J.length===0)return[];if(J.length===1)return[J[0].hook];if(Q)J.sort((X,G)=>X.insertedId-G.insertedId);return J.map(({hook:X})=>X)}}ThA.ModuleNameTrie=PhA});var ghA=R((vhA)=>{Object.defineProperty(vhA,"__esModule",{value:!0});vhA.RequireInTheMiddleSingleton=void 0;var b_B=el(),_hA=u("path"),Bp=khA(),m_B=["afterEach","after","beforeEach","before","describe","it"].every((A)=>{return typeof global[A]==="function"});class RO{constructor(){this._moduleNameTrie=new Bp.ModuleNameTrie,this._initialize()}_initialize(){new b_B.Hook(null,{internals:!0},(A,Q,B)=>{let Y=u_B(Q),J=this._moduleNameTrie.search(Y,{maintainInsertionOrder:!0,fullOnly:B===void 0});for(let{onRequire:C}of J)A=C(A,Q,B);return A})}register(A,Q){let B={moduleName:A,onRequire:Q};return this._moduleNameTrie.insert(B),B}static getInstance(){var A;if(m_B)return new RO;return this._instance=(A=this._instance)!==null&&A!==void 0?A:new RO}}vhA.RequireInTheMiddleSingleton=RO;function u_B(A){return _hA.sep!==Bp.ModuleNameSeparator?A.split(_hA.sep).join(Bp.ModuleNameSeparator):A}});var mhA=R((l_B)=>{var hhA=[],Yp=new WeakMap,xhA=new WeakMap,fhA=new Map,bhA=[],d_B={set(A,Q,B){return Yp.get(A)[Q](B)},get(A,Q){if(Q===Symbol.toStringTag)return"Module";let B=xhA.get(A)[Q];if(typeof B==="function")return B()},defineProperty(A,Q,B){if(!("value"in B))throw Error("Getters/setters are not supported for exports property descriptors.");return Yp.get(A)[Q](B.value)}};function c_B(A,Q,B,Y,J){fhA.set(A,J),Yp.set(Q,B),xhA.set(Q,Y);let C=new Proxy(Q,d_B);hhA.forEach((X)=>X(A,C)),bhA.push([A,C])}l_B.register=c_B;l_B.importHooks=hhA;l_B.specifiers=fhA;l_B.toHook=bhA});var Xp=R((lvY,AK)=>{var uhA=u("path"),r_B=cl(),{fileURLToPath:dhA}=u("url"),{MessageChannel:a_B}=u("worker_threads"),{importHooks:Jp,specifiers:o_B,toHook:t_B}=mhA();function lhA(A){Jp.push(A),t_B.forEach(([Q,B])=>A(Q,B))}function phA(A){let Q=Jp.indexOf(A);if(Q>-1)Jp.splice(Q,1)}function chA(A,Q,B,Y){let J=A(Q,B,Y);if(J&&J!==Q)Q.default=J}var Cp;function e_B(){let{port1:A,port2:Q}=new a_B,B=0,Y;Cp=(G)=>{B++,A.postMessage(G)},A.on("message",()=>{if(B--,Y&&B<=0)Y()}).unref();function J(){let G=setInterval(()=>{},1000),F=new Promise((W)=>{Y=W}).then(()=>{clearInterval(G)});if(B===0)Y();return F}let C=Q;return{registerOptions:{data:{addHookMessagePort:C,include:[]},transferList:[C]},addHookMessagePort:C,waitForAllMessagesAcknowledged:J}}function BL(A,Q,B){if(this instanceof BL===!1)return new BL(A,Q,B);if(typeof A==="function")B=A,A=null,Q=null;else if(typeof Q==="function")B=Q,Q=null;let Y=Q?Q.internals===!0:!1;if(Cp&&Array.isArray(A))Cp(A);this._iitmHook=(J,C)=>{let X=J,G=J.startsWith("node:"),F;if(G)J=J.replace(/^node:/,"");else{if(J.startsWith("file://"))try{J=dhA(J)}catch(Z){}let W=r_B(J);if(W)J=W.name,F=W.basedir}if(A){for(let W of A)if(W===J){if(F){if(Y)J=J+uhA.sep+uhA.relative(F,dhA(X));else if(!F.endsWith(o_B.get(X)))continue}chA(B,C,J,F)}}else chA(B,C,J,F)},lhA(this._iitmHook)}BL.prototype.unhook=function(){phA(this._iitmHook)};AK.exports=BL;AK.exports.Hook=BL;AK.exports.addHook=lhA;AK.exports.removeHook=phA;AK.exports.createAddHookMessageChannel=e_B});var Gp=R((ihA)=>{Object.defineProperty(ihA,"__esModule",{value:!0});ihA.isWrapped=ihA.safeExecuteInTheMiddleAsync=ihA.safeExecuteInTheMiddle=void 0;function AvB(A,Q,B){let Y,J;try{J=A()}catch(C){Y=C}finally{if(Q(Y,J),Y&&!B)throw Y;return J}}ihA.safeExecuteInTheMiddle=AvB;async function QvB(A,Q,B){let Y,J;try{J=await A()}catch(C){Y=C}finally{if(Q(Y,J),Y&&!B)throw Y;return J}}ihA.safeExecuteInTheMiddleAsync=QvB;function BvB(A){return typeof A==="function"&&typeof A.__original==="function"&&typeof A.__unwrap==="function"&&A.__wrapped===!0}ihA.isWrapped=BvB});var ehA=R((ohA)=>{Object.defineProperty(ohA,"__esModule",{value:!0});ohA.InstrumentationBase=void 0;var YL=u("path"),shA=u("util"),CvB=RgA(),Fp=xl(),XvB=kgA(),GvB=ghA(),FvB=Xp(),JL=yA(),WvB=el(),ZvB=u("fs"),$vB=Gp();class ahA extends XvB.InstrumentationAbstract{constructor(A,Q,B){super(A,Q,B);this._hooks=[],this._requireInTheMiddleSingleton=GvB.RequireInTheMiddleSingleton.getInstance(),this._enabled=!1,this._wrap=(J,C,X)=>{if((0,$vB.isWrapped)(J[C]))this._unwrap(J,C);if(!shA.types.isProxy(J))return(0,Fp.wrap)(J,C,X);else{let G=(0,Fp.wrap)(Object.assign({},J),C,X);return Object.defineProperty(J,C,{value:G}),G}},this._unwrap=(J,C)=>{if(!shA.types.isProxy(J))return(0,Fp.unwrap)(J,C);else return Object.defineProperty(J,C,{value:J[C]})},this._massWrap=(J,C,X)=>{if(!J){JL.diag.error("must provide one or more modules to patch");return}else if(!Array.isArray(J))J=[J];if(!(C&&Array.isArray(C))){JL.diag.error("must provide one or more functions to wrap on modules");return}J.forEach((G)=>{C.forEach((F)=>{this._wrap(G,F,X)})})},this._massUnwrap=(J,C)=>{if(!J){JL.diag.error("must provide one or more modules to patch");return}else if(!Array.isArray(J))J=[J];if(!(C&&Array.isArray(C))){JL.diag.error("must provide one or more functions to wrap on modules");return}J.forEach((X)=>{C.forEach((G)=>{this._unwrap(X,G)})})};let Y=this.init();if(Y&&!Array.isArray(Y))Y=[Y];if(this._modules=Y||[],this._config.enabled)this.enable()}_warnOnPreloadedModules(){this._modules.forEach((A)=>{let{name:Q}=A;try{let B=u.resolve(Q);if(u.cache[B])this._diag.warn(`Module ${Q} has been loaded before ${this.instrumentationName} so it might not work, please initialize it before requiring ${Q}`)}catch(B){}})}_extractPackageVersion(A){try{let Q=(0,ZvB.readFileSync)(YL.join(A,"package.json"),{encoding:"utf8"}),B=JSON.parse(Q).version;return typeof B==="string"?B:void 0}catch(Q){JL.diag.warn("Failed extracting version",A)}return}_onRequire(A,Q,B,Y){var J;if(!Y){if(typeof A.patch==="function"){if(A.moduleExports=Q,this._enabled)return this._diag.debug("Applying instrumentation patch for nodejs core module on require hook",{module:A.name}),A.patch(Q)}return Q}let C=this._extractPackageVersion(Y);if(A.moduleVersion=C,A.name===B){if(rhA(A.supportedVersions,C,A.includePrerelease)){if(typeof A.patch==="function"){if(A.moduleExports=Q,this._enabled)return this._diag.debug("Applying instrumentation patch for module on require hook",{module:A.name,version:A.moduleVersion,baseDir:Y}),A.patch(Q,A.moduleVersion)}}return Q}let X=(J=A.files)!==null&&J!==void 0?J:[],G=YL.normalize(B);return X.filter((W)=>W.name===G).filter((W)=>rhA(W.supportedVersions,C,A.includePrerelease)).reduce((W,Z)=>{if(Z.moduleExports=W,this._enabled)return this._diag.debug("Applying instrumentation patch for nodejs module file on require hook",{module:A.name,version:A.moduleVersion,fileName:Z.name,baseDir:Y}),Z.patch(W,A.moduleVersion);return W},Q)}enable(){if(this._enabled)return;if(this._enabled=!0,this._hooks.length>0){for(let A of this._modules){if(typeof A.patch==="function"&&A.moduleExports)this._diag.debug("Applying instrumentation patch for nodejs module on instrumentation enabled",{module:A.name,version:A.moduleVersion}),A.patch(A.moduleExports,A.moduleVersion);for(let Q of A.files)if(Q.moduleExports)this._diag.debug("Applying instrumentation patch for nodejs module file on instrumentation enabled",{module:A.name,version:A.moduleVersion,fileName:Q.name}),Q.patch(Q.moduleExports,A.moduleVersion)}return}this._warnOnPreloadedModules();for(let A of this._modules){let Q=(C,X,G)=>{if(!G&&YL.isAbsolute(X)){let F=YL.parse(X);X=F.name,G=F.dir}return this._onRequire(A,C,X,G)},B=(C,X,G)=>{return this._onRequire(A,C,X,G)},Y=YL.isAbsolute(A.name)?new WvB.Hook([A.name],{internals:!0},B):this._requireInTheMiddleSingleton.register(A.name,B);this._hooks.push(Y);let J=new FvB.Hook([A.name],{internals:!1},Q);this._hooks.push(J)}}disable(){if(!this._enabled)return;this._enabled=!1;for(let A of this._modules){if(typeof A.unpatch==="function"&&A.moduleExports)this._diag.debug("Removing instrumentation patch for nodejs module on instrumentation disabled",{module:A.name,version:A.moduleVersion}),A.unpatch(A.moduleExports,A.moduleVersion);for(let Q of A.files)if(Q.moduleExports)this._diag.debug("Removing instrumentation patch for nodejs module file on instrumentation disabled",{module:A.name,version:A.moduleVersion,fileName:Q.name}),Q.unpatch(Q.moduleExports,A.moduleVersion)}}isEnabled(){return this._enabled}}ohA.InstrumentationBase=ahA;function rhA(A,Q,B){if(typeof Q>"u")return A.includes("*");return A.some((Y)=>{return(0,CvB.satisfies)(Q,Y,{includePrerelease:B})})}});var AxA=R((Wp)=>{Object.defineProperty(Wp,"__esModule",{value:!0});Wp.normalize=void 0;var UvB=u("path");Object.defineProperty(Wp,"normalize",{enumerable:!0,get:function(){return UvB.normalize}})});var QxA=R((wO)=>{Object.defineProperty(wO,"__esModule",{value:!0});wO.normalize=wO.InstrumentationBase=void 0;var KvB=ehA();Object.defineProperty(wO,"InstrumentationBase",{enumerable:!0,get:function(){return KvB.InstrumentationBase}});var VvB=AxA();Object.defineProperty(wO,"normalize",{enumerable:!0,get:function(){return VvB.normalize}})});var Zp=R((jO)=>{Object.defineProperty(jO,"__esModule",{value:!0});jO.normalize=jO.InstrumentationBase=void 0;var BxA=QxA();Object.defineProperty(jO,"InstrumentationBase",{enumerable:!0,get:function(){return BxA.InstrumentationBase}});Object.defineProperty(jO,"normalize",{enumerable:!0,get:function(){return BxA.normalize}})});var XxA=R((JxA)=>{Object.defineProperty(JxA,"__esModule",{value:!0});JxA.InstrumentationNodeModuleDefinition=void 0;class YxA{constructor(A,Q,B,Y,J){this.name=A,this.supportedVersions=Q,this.patch=B,this.unpatch=Y,this.files=J||[]}}JxA.InstrumentationNodeModuleDefinition=YxA});var ZxA=R((FxA)=>{Object.defineProperty(FxA,"__esModule",{value:!0});FxA.InstrumentationNodeModuleFile=void 0;var DvB=Zp();class GxA{constructor(A,Q,B,Y){this.supportedVersions=Q,this.patch=B,this.unpatch=Y,this.name=(0,DvB.normalize)(A)}}FxA.InstrumentationNodeModuleFile=GxA});var NB=R((A6)=>{Object.defineProperty(A6,"__esModule",{value:!0});A6.safeExecuteInTheMiddleAsync=A6.safeExecuteInTheMiddle=A6.isWrapped=A6.InstrumentationNodeModuleFile=A6.InstrumentationNodeModuleDefinition=A6.InstrumentationBase=A6.registerInstrumentations=void 0;var NvB=_vA();Object.defineProperty(A6,"registerInstrumentations",{enumerable:!0,get:function(){return NvB.registerInstrumentations}});var LvB=Zp();Object.defineProperty(A6,"InstrumentationBase",{enumerable:!0,get:function(){return LvB.InstrumentationBase}});var qvB=XxA();Object.defineProperty(A6,"InstrumentationNodeModuleDefinition",{enumerable:!0,get:function(){return qvB.InstrumentationNodeModuleDefinition}});var MvB=ZxA();Object.defineProperty(A6,"InstrumentationNodeModuleFile",{enumerable:!0,get:function(){return MvB.InstrumentationNodeModuleFile}});var $p=Gp();Object.defineProperty(A6,"isWrapped",{enumerable:!0,get:function(){return $p.isWrapped}});Object.defineProperty(A6,"safeExecuteInTheMiddle",{enumerable:!0,get:function(){return $p.safeExecuteInTheMiddle}});Object.defineProperty(A6,"safeExecuteInTheMiddleAsync",{enumerable:!0,get:function(){return $p.safeExecuteInTheMiddleAsync}})});var Up=R(($xA)=>{Object.defineProperty($xA,"__esModule",{value:!0});$xA.createConstMap=void 0;function RvB(A){let Q={},B=A.length;for(let Y=0;Y{Object.defineProperty(BdA,"__esModule",{value:!0});BdA.SEMATTRS_NET_HOST_CARRIER_ICC=BdA.SEMATTRS_NET_HOST_CARRIER_MNC=BdA.SEMATTRS_NET_HOST_CARRIER_MCC=BdA.SEMATTRS_NET_HOST_CARRIER_NAME=BdA.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=BdA.SEMATTRS_NET_HOST_CONNECTION_TYPE=BdA.SEMATTRS_NET_HOST_NAME=BdA.SEMATTRS_NET_HOST_PORT=BdA.SEMATTRS_NET_HOST_IP=BdA.SEMATTRS_NET_PEER_NAME=BdA.SEMATTRS_NET_PEER_PORT=BdA.SEMATTRS_NET_PEER_IP=BdA.SEMATTRS_NET_TRANSPORT=BdA.SEMATTRS_FAAS_INVOKED_REGION=BdA.SEMATTRS_FAAS_INVOKED_PROVIDER=BdA.SEMATTRS_FAAS_INVOKED_NAME=BdA.SEMATTRS_FAAS_COLDSTART=BdA.SEMATTRS_FAAS_CRON=BdA.SEMATTRS_FAAS_TIME=BdA.SEMATTRS_FAAS_DOCUMENT_NAME=BdA.SEMATTRS_FAAS_DOCUMENT_TIME=BdA.SEMATTRS_FAAS_DOCUMENT_OPERATION=BdA.SEMATTRS_FAAS_DOCUMENT_COLLECTION=BdA.SEMATTRS_FAAS_EXECUTION=BdA.SEMATTRS_FAAS_TRIGGER=BdA.SEMATTRS_EXCEPTION_ESCAPED=BdA.SEMATTRS_EXCEPTION_STACKTRACE=BdA.SEMATTRS_EXCEPTION_MESSAGE=BdA.SEMATTRS_EXCEPTION_TYPE=BdA.SEMATTRS_DB_SQL_TABLE=BdA.SEMATTRS_DB_MONGODB_COLLECTION=BdA.SEMATTRS_DB_REDIS_DATABASE_INDEX=BdA.SEMATTRS_DB_HBASE_NAMESPACE=BdA.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=BdA.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=BdA.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=BdA.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=BdA.SEMATTRS_DB_CASSANDRA_TABLE=BdA.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=BdA.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=BdA.SEMATTRS_DB_CASSANDRA_KEYSPACE=BdA.SEMATTRS_DB_MSSQL_INSTANCE_NAME=BdA.SEMATTRS_DB_OPERATION=BdA.SEMATTRS_DB_STATEMENT=BdA.SEMATTRS_DB_NAME=BdA.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=BdA.SEMATTRS_DB_USER=BdA.SEMATTRS_DB_CONNECTION_STRING=BdA.SEMATTRS_DB_SYSTEM=BdA.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=void 0;BdA.SEMATTRS_MESSAGING_DESTINATION_KIND=BdA.SEMATTRS_MESSAGING_DESTINATION=BdA.SEMATTRS_MESSAGING_SYSTEM=BdA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=BdA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=BdA.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=BdA.SEMATTRS_AWS_DYNAMODB_COUNT=BdA.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=BdA.SEMATTRS_AWS_DYNAMODB_SEGMENT=BdA.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=BdA.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=BdA.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=BdA.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=BdA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=BdA.SEMATTRS_AWS_DYNAMODB_SELECT=BdA.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=BdA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=BdA.SEMATTRS_AWS_DYNAMODB_LIMIT=BdA.SEMATTRS_AWS_DYNAMODB_PROJECTION=BdA.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=BdA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=BdA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=BdA.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=BdA.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=BdA.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=BdA.SEMATTRS_HTTP_CLIENT_IP=BdA.SEMATTRS_HTTP_ROUTE=BdA.SEMATTRS_HTTP_SERVER_NAME=BdA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=BdA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=BdA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=BdA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=BdA.SEMATTRS_HTTP_USER_AGENT=BdA.SEMATTRS_HTTP_FLAVOR=BdA.SEMATTRS_HTTP_STATUS_CODE=BdA.SEMATTRS_HTTP_SCHEME=BdA.SEMATTRS_HTTP_HOST=BdA.SEMATTRS_HTTP_TARGET=BdA.SEMATTRS_HTTP_URL=BdA.SEMATTRS_HTTP_METHOD=BdA.SEMATTRS_CODE_LINENO=BdA.SEMATTRS_CODE_FILEPATH=BdA.SEMATTRS_CODE_NAMESPACE=BdA.SEMATTRS_CODE_FUNCTION=BdA.SEMATTRS_THREAD_NAME=BdA.SEMATTRS_THREAD_ID=BdA.SEMATTRS_ENDUSER_SCOPE=BdA.SEMATTRS_ENDUSER_ROLE=BdA.SEMATTRS_ENDUSER_ID=BdA.SEMATTRS_PEER_SERVICE=void 0;BdA.DBSYSTEMVALUES_FILEMAKER=BdA.DBSYSTEMVALUES_DERBY=BdA.DBSYSTEMVALUES_FIREBIRD=BdA.DBSYSTEMVALUES_ADABAS=BdA.DBSYSTEMVALUES_CACHE=BdA.DBSYSTEMVALUES_EDB=BdA.DBSYSTEMVALUES_FIRSTSQL=BdA.DBSYSTEMVALUES_INGRES=BdA.DBSYSTEMVALUES_HANADB=BdA.DBSYSTEMVALUES_MAXDB=BdA.DBSYSTEMVALUES_PROGRESS=BdA.DBSYSTEMVALUES_HSQLDB=BdA.DBSYSTEMVALUES_CLOUDSCAPE=BdA.DBSYSTEMVALUES_HIVE=BdA.DBSYSTEMVALUES_REDSHIFT=BdA.DBSYSTEMVALUES_POSTGRESQL=BdA.DBSYSTEMVALUES_DB2=BdA.DBSYSTEMVALUES_ORACLE=BdA.DBSYSTEMVALUES_MYSQL=BdA.DBSYSTEMVALUES_MSSQL=BdA.DBSYSTEMVALUES_OTHER_SQL=BdA.SemanticAttributes=BdA.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=BdA.SEMATTRS_MESSAGE_COMPRESSED_SIZE=BdA.SEMATTRS_MESSAGE_ID=BdA.SEMATTRS_MESSAGE_TYPE=BdA.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=BdA.SEMATTRS_RPC_JSONRPC_ERROR_CODE=BdA.SEMATTRS_RPC_JSONRPC_REQUEST_ID=BdA.SEMATTRS_RPC_JSONRPC_VERSION=BdA.SEMATTRS_RPC_GRPC_STATUS_CODE=BdA.SEMATTRS_RPC_METHOD=BdA.SEMATTRS_RPC_SERVICE=BdA.SEMATTRS_RPC_SYSTEM=BdA.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=BdA.SEMATTRS_MESSAGING_KAFKA_PARTITION=BdA.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=BdA.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=BdA.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=BdA.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=BdA.SEMATTRS_MESSAGING_CONSUMER_ID=BdA.SEMATTRS_MESSAGING_OPERATION=BdA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=BdA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=BdA.SEMATTRS_MESSAGING_CONVERSATION_ID=BdA.SEMATTRS_MESSAGING_MESSAGE_ID=BdA.SEMATTRS_MESSAGING_URL=BdA.SEMATTRS_MESSAGING_PROTOCOL_VERSION=BdA.SEMATTRS_MESSAGING_PROTOCOL=BdA.SEMATTRS_MESSAGING_TEMP_DESTINATION=void 0;BdA.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=BdA.FaasDocumentOperationValues=BdA.FAASDOCUMENTOPERATIONVALUES_DELETE=BdA.FAASDOCUMENTOPERATIONVALUES_EDIT=BdA.FAASDOCUMENTOPERATIONVALUES_INSERT=BdA.FaasTriggerValues=BdA.FAASTRIGGERVALUES_OTHER=BdA.FAASTRIGGERVALUES_TIMER=BdA.FAASTRIGGERVALUES_PUBSUB=BdA.FAASTRIGGERVALUES_HTTP=BdA.FAASTRIGGERVALUES_DATASOURCE=BdA.DbCassandraConsistencyLevelValues=BdA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=BdA.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=BdA.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=BdA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=BdA.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=BdA.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=BdA.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=BdA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=BdA.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=BdA.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=BdA.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=BdA.DbSystemValues=BdA.DBSYSTEMVALUES_COCKROACHDB=BdA.DBSYSTEMVALUES_MEMCACHED=BdA.DBSYSTEMVALUES_ELASTICSEARCH=BdA.DBSYSTEMVALUES_GEODE=BdA.DBSYSTEMVALUES_NEO4J=BdA.DBSYSTEMVALUES_DYNAMODB=BdA.DBSYSTEMVALUES_COSMOSDB=BdA.DBSYSTEMVALUES_COUCHDB=BdA.DBSYSTEMVALUES_COUCHBASE=BdA.DBSYSTEMVALUES_REDIS=BdA.DBSYSTEMVALUES_MONGODB=BdA.DBSYSTEMVALUES_HBASE=BdA.DBSYSTEMVALUES_CASSANDRA=BdA.DBSYSTEMVALUES_COLDFUSION=BdA.DBSYSTEMVALUES_H2=BdA.DBSYSTEMVALUES_VERTICA=BdA.DBSYSTEMVALUES_TERADATA=BdA.DBSYSTEMVALUES_SYBASE=BdA.DBSYSTEMVALUES_SQLITE=BdA.DBSYSTEMVALUES_POINTBASE=BdA.DBSYSTEMVALUES_PERVASIVE=BdA.DBSYSTEMVALUES_NETEZZA=BdA.DBSYSTEMVALUES_MARIADB=BdA.DBSYSTEMVALUES_INTERBASE=BdA.DBSYSTEMVALUES_INSTANTDB=BdA.DBSYSTEMVALUES_INFORMIX=void 0;BdA.MESSAGINGOPERATIONVALUES_RECEIVE=BdA.MessagingDestinationKindValues=BdA.MESSAGINGDESTINATIONKINDVALUES_TOPIC=BdA.MESSAGINGDESTINATIONKINDVALUES_QUEUE=BdA.HttpFlavorValues=BdA.HTTPFLAVORVALUES_QUIC=BdA.HTTPFLAVORVALUES_SPDY=BdA.HTTPFLAVORVALUES_HTTP_2_0=BdA.HTTPFLAVORVALUES_HTTP_1_1=BdA.HTTPFLAVORVALUES_HTTP_1_0=BdA.NetHostConnectionSubtypeValues=BdA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=BdA.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=BdA.NETHOSTCONNECTIONSUBTYPEVALUES_NR=BdA.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=BdA.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=BdA.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=BdA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=BdA.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=BdA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=BdA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=BdA.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=BdA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=BdA.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=BdA.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=BdA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=BdA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=BdA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=BdA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=BdA.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=BdA.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=BdA.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=BdA.NetHostConnectionTypeValues=BdA.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=BdA.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=BdA.NETHOSTCONNECTIONTYPEVALUES_CELL=BdA.NETHOSTCONNECTIONTYPEVALUES_WIRED=BdA.NETHOSTCONNECTIONTYPEVALUES_WIFI=BdA.NetTransportValues=BdA.NETTRANSPORTVALUES_OTHER=BdA.NETTRANSPORTVALUES_INPROC=BdA.NETTRANSPORTVALUES_PIPE=BdA.NETTRANSPORTVALUES_UNIX=BdA.NETTRANSPORTVALUES_IP=BdA.NETTRANSPORTVALUES_IP_UDP=BdA.NETTRANSPORTVALUES_IP_TCP=BdA.FaasInvokedProviderValues=BdA.FAASINVOKEDPROVIDERVALUES_GCP=BdA.FAASINVOKEDPROVIDERVALUES_AZURE=BdA.FAASINVOKEDPROVIDERVALUES_AWS=void 0;BdA.MessageTypeValues=BdA.MESSAGETYPEVALUES_RECEIVED=BdA.MESSAGETYPEVALUES_SENT=BdA.RpcGrpcStatusCodeValues=BdA.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=BdA.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=BdA.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=BdA.RPCGRPCSTATUSCODEVALUES_INTERNAL=BdA.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=BdA.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=BdA.RPCGRPCSTATUSCODEVALUES_ABORTED=BdA.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=BdA.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=BdA.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=BdA.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=BdA.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=BdA.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=BdA.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=BdA.RPCGRPCSTATUSCODEVALUES_UNKNOWN=BdA.RPCGRPCSTATUSCODEVALUES_CANCELLED=BdA.RPCGRPCSTATUSCODEVALUES_OK=BdA.MessagingOperationValues=BdA.MESSAGINGOPERATIONVALUES_PROCESS=void 0;var v5=Up(),ExA="aws.lambda.invoked_arn",KxA="db.system",VxA="db.connection_string",IxA="db.user",HxA="db.jdbc.driver_classname",DxA="db.name",NxA="db.statement",LxA="db.operation",qxA="db.mssql.instance_name",MxA="db.cassandra.keyspace",zxA="db.cassandra.page_size",RxA="db.cassandra.consistency_level",wxA="db.cassandra.table",jxA="db.cassandra.idempotence",OxA="db.cassandra.speculative_execution_count",PxA="db.cassandra.coordinator.id",TxA="db.cassandra.coordinator.dc",SxA="db.hbase.namespace",kxA="db.redis.database_index",_xA="db.mongodb.collection",vxA="db.sql.table",yxA="exception.type",gxA="exception.message",hxA="exception.stacktrace",xxA="exception.escaped",fxA="faas.trigger",bxA="faas.execution",mxA="faas.document.collection",uxA="faas.document.operation",dxA="faas.document.time",cxA="faas.document.name",lxA="faas.time",pxA="faas.cron",ixA="faas.coldstart",nxA="faas.invoked_name",sxA="faas.invoked_provider",rxA="faas.invoked_region",axA="net.transport",oxA="net.peer.ip",txA="net.peer.port",exA="net.peer.name",AfA="net.host.ip",QfA="net.host.port",BfA="net.host.name",YfA="net.host.connection.type",JfA="net.host.connection.subtype",CfA="net.host.carrier.name",XfA="net.host.carrier.mcc",GfA="net.host.carrier.mnc",FfA="net.host.carrier.icc",WfA="peer.service",ZfA="enduser.id",$fA="enduser.role",UfA="enduser.scope",EfA="thread.id",KfA="thread.name",VfA="code.function",IfA="code.namespace",HfA="code.filepath",DfA="code.lineno",NfA="http.method",LfA="http.url",qfA="http.target",MfA="http.host",zfA="http.scheme",RfA="http.status_code",wfA="http.flavor",jfA="http.user_agent",OfA="http.request_content_length",PfA="http.request_content_length_uncompressed",TfA="http.response_content_length",SfA="http.response_content_length_uncompressed",kfA="http.server_name",_fA="http.route",vfA="http.client_ip",yfA="aws.dynamodb.table_names",gfA="aws.dynamodb.consumed_capacity",hfA="aws.dynamodb.item_collection_metrics",xfA="aws.dynamodb.provisioned_read_capacity",ffA="aws.dynamodb.provisioned_write_capacity",bfA="aws.dynamodb.consistent_read",mfA="aws.dynamodb.projection",ufA="aws.dynamodb.limit",dfA="aws.dynamodb.attributes_to_get",cfA="aws.dynamodb.index_name",lfA="aws.dynamodb.select",pfA="aws.dynamodb.global_secondary_indexes",ifA="aws.dynamodb.local_secondary_indexes",nfA="aws.dynamodb.exclusive_start_table",sfA="aws.dynamodb.table_count",rfA="aws.dynamodb.scan_forward",afA="aws.dynamodb.segment",ofA="aws.dynamodb.total_segments",tfA="aws.dynamodb.count",efA="aws.dynamodb.scanned_count",AbA="aws.dynamodb.attribute_definitions",QbA="aws.dynamodb.global_secondary_index_updates",BbA="messaging.system",YbA="messaging.destination",JbA="messaging.destination_kind",CbA="messaging.temp_destination",XbA="messaging.protocol",GbA="messaging.protocol_version",FbA="messaging.url",WbA="messaging.message_id",ZbA="messaging.conversation_id",$bA="messaging.message_payload_size_bytes",UbA="messaging.message_payload_compressed_size_bytes",EbA="messaging.operation",KbA="messaging.consumer_id",VbA="messaging.rabbitmq.routing_key",IbA="messaging.kafka.message_key",HbA="messaging.kafka.consumer_group",DbA="messaging.kafka.client_id",NbA="messaging.kafka.partition",LbA="messaging.kafka.tombstone",qbA="rpc.system",MbA="rpc.service",zbA="rpc.method",RbA="rpc.grpc.status_code",wbA="rpc.jsonrpc.version",jbA="rpc.jsonrpc.request_id",ObA="rpc.jsonrpc.error_code",PbA="rpc.jsonrpc.error_message",TbA="message.type",SbA="message.id",kbA="message.compressed_size",_bA="message.uncompressed_size";BdA.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=ExA;BdA.SEMATTRS_DB_SYSTEM=KxA;BdA.SEMATTRS_DB_CONNECTION_STRING=VxA;BdA.SEMATTRS_DB_USER=IxA;BdA.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=HxA;BdA.SEMATTRS_DB_NAME=DxA;BdA.SEMATTRS_DB_STATEMENT=NxA;BdA.SEMATTRS_DB_OPERATION=LxA;BdA.SEMATTRS_DB_MSSQL_INSTANCE_NAME=qxA;BdA.SEMATTRS_DB_CASSANDRA_KEYSPACE=MxA;BdA.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=zxA;BdA.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=RxA;BdA.SEMATTRS_DB_CASSANDRA_TABLE=wxA;BdA.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=jxA;BdA.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=OxA;BdA.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=PxA;BdA.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=TxA;BdA.SEMATTRS_DB_HBASE_NAMESPACE=SxA;BdA.SEMATTRS_DB_REDIS_DATABASE_INDEX=kxA;BdA.SEMATTRS_DB_MONGODB_COLLECTION=_xA;BdA.SEMATTRS_DB_SQL_TABLE=vxA;BdA.SEMATTRS_EXCEPTION_TYPE=yxA;BdA.SEMATTRS_EXCEPTION_MESSAGE=gxA;BdA.SEMATTRS_EXCEPTION_STACKTRACE=hxA;BdA.SEMATTRS_EXCEPTION_ESCAPED=xxA;BdA.SEMATTRS_FAAS_TRIGGER=fxA;BdA.SEMATTRS_FAAS_EXECUTION=bxA;BdA.SEMATTRS_FAAS_DOCUMENT_COLLECTION=mxA;BdA.SEMATTRS_FAAS_DOCUMENT_OPERATION=uxA;BdA.SEMATTRS_FAAS_DOCUMENT_TIME=dxA;BdA.SEMATTRS_FAAS_DOCUMENT_NAME=cxA;BdA.SEMATTRS_FAAS_TIME=lxA;BdA.SEMATTRS_FAAS_CRON=pxA;BdA.SEMATTRS_FAAS_COLDSTART=ixA;BdA.SEMATTRS_FAAS_INVOKED_NAME=nxA;BdA.SEMATTRS_FAAS_INVOKED_PROVIDER=sxA;BdA.SEMATTRS_FAAS_INVOKED_REGION=rxA;BdA.SEMATTRS_NET_TRANSPORT=axA;BdA.SEMATTRS_NET_PEER_IP=oxA;BdA.SEMATTRS_NET_PEER_PORT=txA;BdA.SEMATTRS_NET_PEER_NAME=exA;BdA.SEMATTRS_NET_HOST_IP=AfA;BdA.SEMATTRS_NET_HOST_PORT=QfA;BdA.SEMATTRS_NET_HOST_NAME=BfA;BdA.SEMATTRS_NET_HOST_CONNECTION_TYPE=YfA;BdA.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=JfA;BdA.SEMATTRS_NET_HOST_CARRIER_NAME=CfA;BdA.SEMATTRS_NET_HOST_CARRIER_MCC=XfA;BdA.SEMATTRS_NET_HOST_CARRIER_MNC=GfA;BdA.SEMATTRS_NET_HOST_CARRIER_ICC=FfA;BdA.SEMATTRS_PEER_SERVICE=WfA;BdA.SEMATTRS_ENDUSER_ID=ZfA;BdA.SEMATTRS_ENDUSER_ROLE=$fA;BdA.SEMATTRS_ENDUSER_SCOPE=UfA;BdA.SEMATTRS_THREAD_ID=EfA;BdA.SEMATTRS_THREAD_NAME=KfA;BdA.SEMATTRS_CODE_FUNCTION=VfA;BdA.SEMATTRS_CODE_NAMESPACE=IfA;BdA.SEMATTRS_CODE_FILEPATH=HfA;BdA.SEMATTRS_CODE_LINENO=DfA;BdA.SEMATTRS_HTTP_METHOD=NfA;BdA.SEMATTRS_HTTP_URL=LfA;BdA.SEMATTRS_HTTP_TARGET=qfA;BdA.SEMATTRS_HTTP_HOST=MfA;BdA.SEMATTRS_HTTP_SCHEME=zfA;BdA.SEMATTRS_HTTP_STATUS_CODE=RfA;BdA.SEMATTRS_HTTP_FLAVOR=wfA;BdA.SEMATTRS_HTTP_USER_AGENT=jfA;BdA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=OfA;BdA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=PfA;BdA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=TfA;BdA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=SfA;BdA.SEMATTRS_HTTP_SERVER_NAME=kfA;BdA.SEMATTRS_HTTP_ROUTE=_fA;BdA.SEMATTRS_HTTP_CLIENT_IP=vfA;BdA.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=yfA;BdA.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=gfA;BdA.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=hfA;BdA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=xfA;BdA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=ffA;BdA.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=bfA;BdA.SEMATTRS_AWS_DYNAMODB_PROJECTION=mfA;BdA.SEMATTRS_AWS_DYNAMODB_LIMIT=ufA;BdA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=dfA;BdA.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=cfA;BdA.SEMATTRS_AWS_DYNAMODB_SELECT=lfA;BdA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=pfA;BdA.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=ifA;BdA.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=nfA;BdA.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=sfA;BdA.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=rfA;BdA.SEMATTRS_AWS_DYNAMODB_SEGMENT=afA;BdA.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=ofA;BdA.SEMATTRS_AWS_DYNAMODB_COUNT=tfA;BdA.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=efA;BdA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=AbA;BdA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=QbA;BdA.SEMATTRS_MESSAGING_SYSTEM=BbA;BdA.SEMATTRS_MESSAGING_DESTINATION=YbA;BdA.SEMATTRS_MESSAGING_DESTINATION_KIND=JbA;BdA.SEMATTRS_MESSAGING_TEMP_DESTINATION=CbA;BdA.SEMATTRS_MESSAGING_PROTOCOL=XbA;BdA.SEMATTRS_MESSAGING_PROTOCOL_VERSION=GbA;BdA.SEMATTRS_MESSAGING_URL=FbA;BdA.SEMATTRS_MESSAGING_MESSAGE_ID=WbA;BdA.SEMATTRS_MESSAGING_CONVERSATION_ID=ZbA;BdA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=$bA;BdA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=UbA;BdA.SEMATTRS_MESSAGING_OPERATION=EbA;BdA.SEMATTRS_MESSAGING_CONSUMER_ID=KbA;BdA.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=VbA;BdA.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=IbA;BdA.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=HbA;BdA.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=DbA;BdA.SEMATTRS_MESSAGING_KAFKA_PARTITION=NbA;BdA.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=LbA;BdA.SEMATTRS_RPC_SYSTEM=qbA;BdA.SEMATTRS_RPC_SERVICE=MbA;BdA.SEMATTRS_RPC_METHOD=zbA;BdA.SEMATTRS_RPC_GRPC_STATUS_CODE=RbA;BdA.SEMATTRS_RPC_JSONRPC_VERSION=wbA;BdA.SEMATTRS_RPC_JSONRPC_REQUEST_ID=jbA;BdA.SEMATTRS_RPC_JSONRPC_ERROR_CODE=ObA;BdA.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=PbA;BdA.SEMATTRS_MESSAGE_TYPE=TbA;BdA.SEMATTRS_MESSAGE_ID=SbA;BdA.SEMATTRS_MESSAGE_COMPRESSED_SIZE=kbA;BdA.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=_bA;BdA.SemanticAttributes=(0,v5.createConstMap)([ExA,KxA,VxA,IxA,HxA,DxA,NxA,LxA,qxA,MxA,zxA,RxA,wxA,jxA,OxA,PxA,TxA,SxA,kxA,_xA,vxA,yxA,gxA,hxA,xxA,fxA,bxA,mxA,uxA,dxA,cxA,lxA,pxA,ixA,nxA,sxA,rxA,axA,oxA,txA,exA,AfA,QfA,BfA,YfA,JfA,CfA,XfA,GfA,FfA,WfA,ZfA,$fA,UfA,EfA,KfA,VfA,IfA,HfA,DfA,NfA,LfA,qfA,MfA,zfA,RfA,wfA,jfA,OfA,PfA,TfA,SfA,kfA,_fA,vfA,yfA,gfA,hfA,xfA,ffA,bfA,mfA,ufA,dfA,cfA,lfA,pfA,ifA,nfA,sfA,rfA,afA,ofA,tfA,efA,AbA,QbA,BbA,YbA,JbA,CbA,XbA,GbA,FbA,WbA,ZbA,$bA,UbA,EbA,KbA,VbA,IbA,HbA,DbA,NbA,LbA,qbA,MbA,zbA,RbA,wbA,jbA,ObA,PbA,TbA,SbA,kbA,_bA]);var vbA="other_sql",ybA="mssql",gbA="mysql",hbA="oracle",xbA="db2",fbA="postgresql",bbA="redshift",mbA="hive",ubA="cloudscape",dbA="hsqldb",cbA="progress",lbA="maxdb",pbA="hanadb",ibA="ingres",nbA="firstsql",sbA="edb",rbA="cache",abA="adabas",obA="firebird",tbA="derby",ebA="filemaker",AmA="informix",QmA="instantdb",BmA="interbase",YmA="mariadb",JmA="netezza",CmA="pervasive",XmA="pointbase",GmA="sqlite",FmA="sybase",WmA="teradata",ZmA="vertica",$mA="h2",UmA="coldfusion",EmA="cassandra",KmA="hbase",VmA="mongodb",ImA="redis",HmA="couchbase",DmA="couchdb",NmA="cosmosdb",LmA="dynamodb",qmA="neo4j",MmA="geode",zmA="elasticsearch",RmA="memcached",wmA="cockroachdb";BdA.DBSYSTEMVALUES_OTHER_SQL=vbA;BdA.DBSYSTEMVALUES_MSSQL=ybA;BdA.DBSYSTEMVALUES_MYSQL=gbA;BdA.DBSYSTEMVALUES_ORACLE=hbA;BdA.DBSYSTEMVALUES_DB2=xbA;BdA.DBSYSTEMVALUES_POSTGRESQL=fbA;BdA.DBSYSTEMVALUES_REDSHIFT=bbA;BdA.DBSYSTEMVALUES_HIVE=mbA;BdA.DBSYSTEMVALUES_CLOUDSCAPE=ubA;BdA.DBSYSTEMVALUES_HSQLDB=dbA;BdA.DBSYSTEMVALUES_PROGRESS=cbA;BdA.DBSYSTEMVALUES_MAXDB=lbA;BdA.DBSYSTEMVALUES_HANADB=pbA;BdA.DBSYSTEMVALUES_INGRES=ibA;BdA.DBSYSTEMVALUES_FIRSTSQL=nbA;BdA.DBSYSTEMVALUES_EDB=sbA;BdA.DBSYSTEMVALUES_CACHE=rbA;BdA.DBSYSTEMVALUES_ADABAS=abA;BdA.DBSYSTEMVALUES_FIREBIRD=obA;BdA.DBSYSTEMVALUES_DERBY=tbA;BdA.DBSYSTEMVALUES_FILEMAKER=ebA;BdA.DBSYSTEMVALUES_INFORMIX=AmA;BdA.DBSYSTEMVALUES_INSTANTDB=QmA;BdA.DBSYSTEMVALUES_INTERBASE=BmA;BdA.DBSYSTEMVALUES_MARIADB=YmA;BdA.DBSYSTEMVALUES_NETEZZA=JmA;BdA.DBSYSTEMVALUES_PERVASIVE=CmA;BdA.DBSYSTEMVALUES_POINTBASE=XmA;BdA.DBSYSTEMVALUES_SQLITE=GmA;BdA.DBSYSTEMVALUES_SYBASE=FmA;BdA.DBSYSTEMVALUES_TERADATA=WmA;BdA.DBSYSTEMVALUES_VERTICA=ZmA;BdA.DBSYSTEMVALUES_H2=$mA;BdA.DBSYSTEMVALUES_COLDFUSION=UmA;BdA.DBSYSTEMVALUES_CASSANDRA=EmA;BdA.DBSYSTEMVALUES_HBASE=KmA;BdA.DBSYSTEMVALUES_MONGODB=VmA;BdA.DBSYSTEMVALUES_REDIS=ImA;BdA.DBSYSTEMVALUES_COUCHBASE=HmA;BdA.DBSYSTEMVALUES_COUCHDB=DmA;BdA.DBSYSTEMVALUES_COSMOSDB=NmA;BdA.DBSYSTEMVALUES_DYNAMODB=LmA;BdA.DBSYSTEMVALUES_NEO4J=qmA;BdA.DBSYSTEMVALUES_GEODE=MmA;BdA.DBSYSTEMVALUES_ELASTICSEARCH=zmA;BdA.DBSYSTEMVALUES_MEMCACHED=RmA;BdA.DBSYSTEMVALUES_COCKROACHDB=wmA;BdA.DbSystemValues=(0,v5.createConstMap)([vbA,ybA,gbA,hbA,xbA,fbA,bbA,mbA,ubA,dbA,cbA,lbA,pbA,ibA,nbA,sbA,rbA,abA,obA,tbA,ebA,AmA,QmA,BmA,YmA,JmA,CmA,XmA,GmA,FmA,WmA,ZmA,$mA,UmA,EmA,KmA,VmA,ImA,HmA,DmA,NmA,LmA,qmA,MmA,zmA,RmA,wmA]);var jmA="all",OmA="each_quorum",PmA="quorum",TmA="local_quorum",SmA="one",kmA="two",_mA="three",vmA="local_one",ymA="any",gmA="serial",hmA="local_serial";BdA.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=jmA;BdA.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=OmA;BdA.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=PmA;BdA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=TmA;BdA.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=SmA;BdA.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=kmA;BdA.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=_mA;BdA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=vmA;BdA.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=ymA;BdA.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=gmA;BdA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=hmA;BdA.DbCassandraConsistencyLevelValues=(0,v5.createConstMap)([jmA,OmA,PmA,TmA,SmA,kmA,_mA,vmA,ymA,gmA,hmA]);var xmA="datasource",fmA="http",bmA="pubsub",mmA="timer",umA="other";BdA.FAASTRIGGERVALUES_DATASOURCE=xmA;BdA.FAASTRIGGERVALUES_HTTP=fmA;BdA.FAASTRIGGERVALUES_PUBSUB=bmA;BdA.FAASTRIGGERVALUES_TIMER=mmA;BdA.FAASTRIGGERVALUES_OTHER=umA;BdA.FaasTriggerValues=(0,v5.createConstMap)([xmA,fmA,bmA,mmA,umA]);var dmA="insert",cmA="edit",lmA="delete";BdA.FAASDOCUMENTOPERATIONVALUES_INSERT=dmA;BdA.FAASDOCUMENTOPERATIONVALUES_EDIT=cmA;BdA.FAASDOCUMENTOPERATIONVALUES_DELETE=lmA;BdA.FaasDocumentOperationValues=(0,v5.createConstMap)([dmA,cmA,lmA]);var pmA="alibaba_cloud",imA="aws",nmA="azure",smA="gcp";BdA.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=pmA;BdA.FAASINVOKEDPROVIDERVALUES_AWS=imA;BdA.FAASINVOKEDPROVIDERVALUES_AZURE=nmA;BdA.FAASINVOKEDPROVIDERVALUES_GCP=smA;BdA.FaasInvokedProviderValues=(0,v5.createConstMap)([pmA,imA,nmA,smA]);var rmA="ip_tcp",amA="ip_udp",omA="ip",tmA="unix",emA="pipe",AuA="inproc",QuA="other";BdA.NETTRANSPORTVALUES_IP_TCP=rmA;BdA.NETTRANSPORTVALUES_IP_UDP=amA;BdA.NETTRANSPORTVALUES_IP=omA;BdA.NETTRANSPORTVALUES_UNIX=tmA;BdA.NETTRANSPORTVALUES_PIPE=emA;BdA.NETTRANSPORTVALUES_INPROC=AuA;BdA.NETTRANSPORTVALUES_OTHER=QuA;BdA.NetTransportValues=(0,v5.createConstMap)([rmA,amA,omA,tmA,emA,AuA,QuA]);var BuA="wifi",YuA="wired",JuA="cell",CuA="unavailable",XuA="unknown";BdA.NETHOSTCONNECTIONTYPEVALUES_WIFI=BuA;BdA.NETHOSTCONNECTIONTYPEVALUES_WIRED=YuA;BdA.NETHOSTCONNECTIONTYPEVALUES_CELL=JuA;BdA.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=CuA;BdA.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=XuA;BdA.NetHostConnectionTypeValues=(0,v5.createConstMap)([BuA,YuA,JuA,CuA,XuA]);var GuA="gprs",FuA="edge",WuA="umts",ZuA="cdma",$uA="evdo_0",UuA="evdo_a",EuA="cdma2000_1xrtt",KuA="hsdpa",VuA="hsupa",IuA="hspa",HuA="iden",DuA="evdo_b",NuA="lte",LuA="ehrpd",quA="hspap",MuA="gsm",zuA="td_scdma",RuA="iwlan",wuA="nr",juA="nrnsa",OuA="lte_ca";BdA.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=GuA;BdA.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=FuA;BdA.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=WuA;BdA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=ZuA;BdA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=$uA;BdA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=UuA;BdA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=EuA;BdA.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=KuA;BdA.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=VuA;BdA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=IuA;BdA.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=HuA;BdA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=DuA;BdA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=NuA;BdA.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=LuA;BdA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=quA;BdA.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=MuA;BdA.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=zuA;BdA.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=RuA;BdA.NETHOSTCONNECTIONSUBTYPEVALUES_NR=wuA;BdA.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=juA;BdA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=OuA;BdA.NetHostConnectionSubtypeValues=(0,v5.createConstMap)([GuA,FuA,WuA,ZuA,$uA,UuA,EuA,KuA,VuA,IuA,HuA,DuA,NuA,LuA,quA,MuA,zuA,RuA,wuA,juA,OuA]);var PuA="1.0",TuA="1.1",SuA="2.0",kuA="SPDY",_uA="QUIC";BdA.HTTPFLAVORVALUES_HTTP_1_0=PuA;BdA.HTTPFLAVORVALUES_HTTP_1_1=TuA;BdA.HTTPFLAVORVALUES_HTTP_2_0=SuA;BdA.HTTPFLAVORVALUES_SPDY=kuA;BdA.HTTPFLAVORVALUES_QUIC=_uA;BdA.HttpFlavorValues={HTTP_1_0:PuA,HTTP_1_1:TuA,HTTP_2_0:SuA,SPDY:kuA,QUIC:_uA};var vuA="queue",yuA="topic";BdA.MESSAGINGDESTINATIONKINDVALUES_QUEUE=vuA;BdA.MESSAGINGDESTINATIONKINDVALUES_TOPIC=yuA;BdA.MessagingDestinationKindValues=(0,v5.createConstMap)([vuA,yuA]);var guA="receive",huA="process";BdA.MESSAGINGOPERATIONVALUES_RECEIVE=guA;BdA.MESSAGINGOPERATIONVALUES_PROCESS=huA;BdA.MessagingOperationValues=(0,v5.createConstMap)([guA,huA]);var xuA=0,fuA=1,buA=2,muA=3,uuA=4,duA=5,cuA=6,luA=7,puA=8,iuA=9,nuA=10,suA=11,ruA=12,auA=13,ouA=14,tuA=15,euA=16;BdA.RPCGRPCSTATUSCODEVALUES_OK=xuA;BdA.RPCGRPCSTATUSCODEVALUES_CANCELLED=fuA;BdA.RPCGRPCSTATUSCODEVALUES_UNKNOWN=buA;BdA.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=muA;BdA.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=uuA;BdA.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=duA;BdA.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=cuA;BdA.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=luA;BdA.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=puA;BdA.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=iuA;BdA.RPCGRPCSTATUSCODEVALUES_ABORTED=nuA;BdA.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=suA;BdA.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=ruA;BdA.RPCGRPCSTATUSCODEVALUES_INTERNAL=auA;BdA.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=ouA;BdA.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=tuA;BdA.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=euA;BdA.RpcGrpcStatusCodeValues={OK:xuA,CANCELLED:fuA,UNKNOWN:buA,INVALID_ARGUMENT:muA,DEADLINE_EXCEEDED:uuA,NOT_FOUND:duA,ALREADY_EXISTS:cuA,PERMISSION_DENIED:luA,RESOURCE_EXHAUSTED:puA,FAILED_PRECONDITION:iuA,ABORTED:nuA,OUT_OF_RANGE:suA,UNIMPLEMENTED:ruA,INTERNAL:auA,UNAVAILABLE:ouA,DATA_LOSS:tuA,UNAUTHENTICATED:euA};var AdA="SENT",QdA="RECEIVED";BdA.MESSAGETYPEVALUES_SENT=AdA;BdA.MESSAGETYPEVALUES_RECEIVED=QdA;BdA.MessageTypeValues=(0,v5.createConstMap)([AdA,QdA])});var ZdA=R((sZ)=>{var MfB=sZ&&sZ.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),zfB=sZ&&sZ.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))MfB(Q,A,B)};Object.defineProperty(sZ,"__esModule",{value:!0});zfB(WdA(),sZ)});var blA=R((glA)=>{Object.defineProperty(glA,"__esModule",{value:!0});glA.SEMRESATTRS_K8S_STATEFULSET_NAME=glA.SEMRESATTRS_K8S_STATEFULSET_UID=glA.SEMRESATTRS_K8S_DEPLOYMENT_NAME=glA.SEMRESATTRS_K8S_DEPLOYMENT_UID=glA.SEMRESATTRS_K8S_REPLICASET_NAME=glA.SEMRESATTRS_K8S_REPLICASET_UID=glA.SEMRESATTRS_K8S_CONTAINER_NAME=glA.SEMRESATTRS_K8S_POD_NAME=glA.SEMRESATTRS_K8S_POD_UID=glA.SEMRESATTRS_K8S_NAMESPACE_NAME=glA.SEMRESATTRS_K8S_NODE_UID=glA.SEMRESATTRS_K8S_NODE_NAME=glA.SEMRESATTRS_K8S_CLUSTER_NAME=glA.SEMRESATTRS_HOST_IMAGE_VERSION=glA.SEMRESATTRS_HOST_IMAGE_ID=glA.SEMRESATTRS_HOST_IMAGE_NAME=glA.SEMRESATTRS_HOST_ARCH=glA.SEMRESATTRS_HOST_TYPE=glA.SEMRESATTRS_HOST_NAME=glA.SEMRESATTRS_HOST_ID=glA.SEMRESATTRS_FAAS_MAX_MEMORY=glA.SEMRESATTRS_FAAS_INSTANCE=glA.SEMRESATTRS_FAAS_VERSION=glA.SEMRESATTRS_FAAS_ID=glA.SEMRESATTRS_FAAS_NAME=glA.SEMRESATTRS_DEVICE_MODEL_NAME=glA.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=glA.SEMRESATTRS_DEVICE_ID=glA.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=glA.SEMRESATTRS_CONTAINER_IMAGE_TAG=glA.SEMRESATTRS_CONTAINER_IMAGE_NAME=glA.SEMRESATTRS_CONTAINER_RUNTIME=glA.SEMRESATTRS_CONTAINER_ID=glA.SEMRESATTRS_CONTAINER_NAME=glA.SEMRESATTRS_AWS_LOG_STREAM_ARNS=glA.SEMRESATTRS_AWS_LOG_STREAM_NAMES=glA.SEMRESATTRS_AWS_LOG_GROUP_ARNS=glA.SEMRESATTRS_AWS_LOG_GROUP_NAMES=glA.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=glA.SEMRESATTRS_AWS_ECS_TASK_REVISION=glA.SEMRESATTRS_AWS_ECS_TASK_FAMILY=glA.SEMRESATTRS_AWS_ECS_TASK_ARN=glA.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=glA.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=glA.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=glA.SEMRESATTRS_CLOUD_PLATFORM=glA.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=glA.SEMRESATTRS_CLOUD_REGION=glA.SEMRESATTRS_CLOUD_ACCOUNT_ID=glA.SEMRESATTRS_CLOUD_PROVIDER=void 0;glA.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=glA.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=glA.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=glA.CLOUDPLATFORMVALUES_AZURE_AKS=glA.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=glA.CLOUDPLATFORMVALUES_AZURE_VM=glA.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=glA.CLOUDPLATFORMVALUES_AWS_LAMBDA=glA.CLOUDPLATFORMVALUES_AWS_EKS=glA.CLOUDPLATFORMVALUES_AWS_ECS=glA.CLOUDPLATFORMVALUES_AWS_EC2=glA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=glA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=glA.CloudProviderValues=glA.CLOUDPROVIDERVALUES_GCP=glA.CLOUDPROVIDERVALUES_AZURE=glA.CLOUDPROVIDERVALUES_AWS=glA.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=glA.SemanticResourceAttributes=glA.SEMRESATTRS_WEBENGINE_DESCRIPTION=glA.SEMRESATTRS_WEBENGINE_VERSION=glA.SEMRESATTRS_WEBENGINE_NAME=glA.SEMRESATTRS_TELEMETRY_AUTO_VERSION=glA.SEMRESATTRS_TELEMETRY_SDK_VERSION=glA.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=glA.SEMRESATTRS_TELEMETRY_SDK_NAME=glA.SEMRESATTRS_SERVICE_VERSION=glA.SEMRESATTRS_SERVICE_INSTANCE_ID=glA.SEMRESATTRS_SERVICE_NAMESPACE=glA.SEMRESATTRS_SERVICE_NAME=glA.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=glA.SEMRESATTRS_PROCESS_RUNTIME_VERSION=glA.SEMRESATTRS_PROCESS_RUNTIME_NAME=glA.SEMRESATTRS_PROCESS_OWNER=glA.SEMRESATTRS_PROCESS_COMMAND_ARGS=glA.SEMRESATTRS_PROCESS_COMMAND_LINE=glA.SEMRESATTRS_PROCESS_COMMAND=glA.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=glA.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=glA.SEMRESATTRS_PROCESS_PID=glA.SEMRESATTRS_OS_VERSION=glA.SEMRESATTRS_OS_NAME=glA.SEMRESATTRS_OS_DESCRIPTION=glA.SEMRESATTRS_OS_TYPE=glA.SEMRESATTRS_K8S_CRONJOB_NAME=glA.SEMRESATTRS_K8S_CRONJOB_UID=glA.SEMRESATTRS_K8S_JOB_NAME=glA.SEMRESATTRS_K8S_JOB_UID=glA.SEMRESATTRS_K8S_DAEMONSET_NAME=glA.SEMRESATTRS_K8S_DAEMONSET_UID=void 0;glA.TelemetrySdkLanguageValues=glA.TELEMETRYSDKLANGUAGEVALUES_WEBJS=glA.TELEMETRYSDKLANGUAGEVALUES_RUBY=glA.TELEMETRYSDKLANGUAGEVALUES_PYTHON=glA.TELEMETRYSDKLANGUAGEVALUES_PHP=glA.TELEMETRYSDKLANGUAGEVALUES_NODEJS=glA.TELEMETRYSDKLANGUAGEVALUES_JAVA=glA.TELEMETRYSDKLANGUAGEVALUES_GO=glA.TELEMETRYSDKLANGUAGEVALUES_ERLANG=glA.TELEMETRYSDKLANGUAGEVALUES_DOTNET=glA.TELEMETRYSDKLANGUAGEVALUES_CPP=glA.OsTypeValues=glA.OSTYPEVALUES_Z_OS=glA.OSTYPEVALUES_SOLARIS=glA.OSTYPEVALUES_AIX=glA.OSTYPEVALUES_HPUX=glA.OSTYPEVALUES_DRAGONFLYBSD=glA.OSTYPEVALUES_OPENBSD=glA.OSTYPEVALUES_NETBSD=glA.OSTYPEVALUES_FREEBSD=glA.OSTYPEVALUES_DARWIN=glA.OSTYPEVALUES_LINUX=glA.OSTYPEVALUES_WINDOWS=glA.HostArchValues=glA.HOSTARCHVALUES_X86=glA.HOSTARCHVALUES_PPC64=glA.HOSTARCHVALUES_PPC32=glA.HOSTARCHVALUES_IA64=glA.HOSTARCHVALUES_ARM64=glA.HOSTARCHVALUES_ARM32=glA.HOSTARCHVALUES_AMD64=glA.AwsEcsLaunchtypeValues=glA.AWSECSLAUNCHTYPEVALUES_FARGATE=glA.AWSECSLAUNCHTYPEVALUES_EC2=glA.CloudPlatformValues=glA.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=glA.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=glA.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=glA.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=void 0;var rZ=Up(),$dA="cloud.provider",UdA="cloud.account.id",EdA="cloud.region",KdA="cloud.availability_zone",VdA="cloud.platform",IdA="aws.ecs.container.arn",HdA="aws.ecs.cluster.arn",DdA="aws.ecs.launchtype",NdA="aws.ecs.task.arn",LdA="aws.ecs.task.family",qdA="aws.ecs.task.revision",MdA="aws.eks.cluster.arn",zdA="aws.log.group.names",RdA="aws.log.group.arns",wdA="aws.log.stream.names",jdA="aws.log.stream.arns",OdA="container.name",PdA="container.id",TdA="container.runtime",SdA="container.image.name",kdA="container.image.tag",_dA="deployment.environment",vdA="device.id",ydA="device.model.identifier",gdA="device.model.name",hdA="faas.name",xdA="faas.id",fdA="faas.version",bdA="faas.instance",mdA="faas.max_memory",udA="host.id",ddA="host.name",cdA="host.type",ldA="host.arch",pdA="host.image.name",idA="host.image.id",ndA="host.image.version",sdA="k8s.cluster.name",rdA="k8s.node.name",adA="k8s.node.uid",odA="k8s.namespace.name",tdA="k8s.pod.uid",edA="k8s.pod.name",AcA="k8s.container.name",QcA="k8s.replicaset.uid",BcA="k8s.replicaset.name",YcA="k8s.deployment.uid",JcA="k8s.deployment.name",CcA="k8s.statefulset.uid",XcA="k8s.statefulset.name",GcA="k8s.daemonset.uid",FcA="k8s.daemonset.name",WcA="k8s.job.uid",ZcA="k8s.job.name",$cA="k8s.cronjob.uid",UcA="k8s.cronjob.name",EcA="os.type",KcA="os.description",VcA="os.name",IcA="os.version",HcA="process.pid",DcA="process.executable.name",NcA="process.executable.path",LcA="process.command",qcA="process.command_line",McA="process.command_args",zcA="process.owner",RcA="process.runtime.name",wcA="process.runtime.version",jcA="process.runtime.description",OcA="service.name",PcA="service.namespace",TcA="service.instance.id",ScA="service.version",kcA="telemetry.sdk.name",_cA="telemetry.sdk.language",vcA="telemetry.sdk.version",ycA="telemetry.auto.version",gcA="webengine.name",hcA="webengine.version",xcA="webengine.description";glA.SEMRESATTRS_CLOUD_PROVIDER=$dA;glA.SEMRESATTRS_CLOUD_ACCOUNT_ID=UdA;glA.SEMRESATTRS_CLOUD_REGION=EdA;glA.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=KdA;glA.SEMRESATTRS_CLOUD_PLATFORM=VdA;glA.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=IdA;glA.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=HdA;glA.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=DdA;glA.SEMRESATTRS_AWS_ECS_TASK_ARN=NdA;glA.SEMRESATTRS_AWS_ECS_TASK_FAMILY=LdA;glA.SEMRESATTRS_AWS_ECS_TASK_REVISION=qdA;glA.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=MdA;glA.SEMRESATTRS_AWS_LOG_GROUP_NAMES=zdA;glA.SEMRESATTRS_AWS_LOG_GROUP_ARNS=RdA;glA.SEMRESATTRS_AWS_LOG_STREAM_NAMES=wdA;glA.SEMRESATTRS_AWS_LOG_STREAM_ARNS=jdA;glA.SEMRESATTRS_CONTAINER_NAME=OdA;glA.SEMRESATTRS_CONTAINER_ID=PdA;glA.SEMRESATTRS_CONTAINER_RUNTIME=TdA;glA.SEMRESATTRS_CONTAINER_IMAGE_NAME=SdA;glA.SEMRESATTRS_CONTAINER_IMAGE_TAG=kdA;glA.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=_dA;glA.SEMRESATTRS_DEVICE_ID=vdA;glA.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=ydA;glA.SEMRESATTRS_DEVICE_MODEL_NAME=gdA;glA.SEMRESATTRS_FAAS_NAME=hdA;glA.SEMRESATTRS_FAAS_ID=xdA;glA.SEMRESATTRS_FAAS_VERSION=fdA;glA.SEMRESATTRS_FAAS_INSTANCE=bdA;glA.SEMRESATTRS_FAAS_MAX_MEMORY=mdA;glA.SEMRESATTRS_HOST_ID=udA;glA.SEMRESATTRS_HOST_NAME=ddA;glA.SEMRESATTRS_HOST_TYPE=cdA;glA.SEMRESATTRS_HOST_ARCH=ldA;glA.SEMRESATTRS_HOST_IMAGE_NAME=pdA;glA.SEMRESATTRS_HOST_IMAGE_ID=idA;glA.SEMRESATTRS_HOST_IMAGE_VERSION=ndA;glA.SEMRESATTRS_K8S_CLUSTER_NAME=sdA;glA.SEMRESATTRS_K8S_NODE_NAME=rdA;glA.SEMRESATTRS_K8S_NODE_UID=adA;glA.SEMRESATTRS_K8S_NAMESPACE_NAME=odA;glA.SEMRESATTRS_K8S_POD_UID=tdA;glA.SEMRESATTRS_K8S_POD_NAME=edA;glA.SEMRESATTRS_K8S_CONTAINER_NAME=AcA;glA.SEMRESATTRS_K8S_REPLICASET_UID=QcA;glA.SEMRESATTRS_K8S_REPLICASET_NAME=BcA;glA.SEMRESATTRS_K8S_DEPLOYMENT_UID=YcA;glA.SEMRESATTRS_K8S_DEPLOYMENT_NAME=JcA;glA.SEMRESATTRS_K8S_STATEFULSET_UID=CcA;glA.SEMRESATTRS_K8S_STATEFULSET_NAME=XcA;glA.SEMRESATTRS_K8S_DAEMONSET_UID=GcA;glA.SEMRESATTRS_K8S_DAEMONSET_NAME=FcA;glA.SEMRESATTRS_K8S_JOB_UID=WcA;glA.SEMRESATTRS_K8S_JOB_NAME=ZcA;glA.SEMRESATTRS_K8S_CRONJOB_UID=$cA;glA.SEMRESATTRS_K8S_CRONJOB_NAME=UcA;glA.SEMRESATTRS_OS_TYPE=EcA;glA.SEMRESATTRS_OS_DESCRIPTION=KcA;glA.SEMRESATTRS_OS_NAME=VcA;glA.SEMRESATTRS_OS_VERSION=IcA;glA.SEMRESATTRS_PROCESS_PID=HcA;glA.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=DcA;glA.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=NcA;glA.SEMRESATTRS_PROCESS_COMMAND=LcA;glA.SEMRESATTRS_PROCESS_COMMAND_LINE=qcA;glA.SEMRESATTRS_PROCESS_COMMAND_ARGS=McA;glA.SEMRESATTRS_PROCESS_OWNER=zcA;glA.SEMRESATTRS_PROCESS_RUNTIME_NAME=RcA;glA.SEMRESATTRS_PROCESS_RUNTIME_VERSION=wcA;glA.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=jcA;glA.SEMRESATTRS_SERVICE_NAME=OcA;glA.SEMRESATTRS_SERVICE_NAMESPACE=PcA;glA.SEMRESATTRS_SERVICE_INSTANCE_ID=TcA;glA.SEMRESATTRS_SERVICE_VERSION=ScA;glA.SEMRESATTRS_TELEMETRY_SDK_NAME=kcA;glA.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=_cA;glA.SEMRESATTRS_TELEMETRY_SDK_VERSION=vcA;glA.SEMRESATTRS_TELEMETRY_AUTO_VERSION=ycA;glA.SEMRESATTRS_WEBENGINE_NAME=gcA;glA.SEMRESATTRS_WEBENGINE_VERSION=hcA;glA.SEMRESATTRS_WEBENGINE_DESCRIPTION=xcA;glA.SemanticResourceAttributes=(0,rZ.createConstMap)([$dA,UdA,EdA,KdA,VdA,IdA,HdA,DdA,NdA,LdA,qdA,MdA,zdA,RdA,wdA,jdA,OdA,PdA,TdA,SdA,kdA,_dA,vdA,ydA,gdA,hdA,xdA,fdA,bdA,mdA,udA,ddA,cdA,ldA,pdA,idA,ndA,sdA,rdA,adA,odA,tdA,edA,AcA,QcA,BcA,YcA,JcA,CcA,XcA,GcA,FcA,WcA,ZcA,$cA,UcA,EcA,KcA,VcA,IcA,HcA,DcA,NcA,LcA,qcA,McA,zcA,RcA,wcA,jcA,OcA,PcA,TcA,ScA,kcA,_cA,vcA,ycA,gcA,hcA,xcA]);var fcA="alibaba_cloud",bcA="aws",mcA="azure",ucA="gcp";glA.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=fcA;glA.CLOUDPROVIDERVALUES_AWS=bcA;glA.CLOUDPROVIDERVALUES_AZURE=mcA;glA.CLOUDPROVIDERVALUES_GCP=ucA;glA.CloudProviderValues=(0,rZ.createConstMap)([fcA,bcA,mcA,ucA]);var dcA="alibaba_cloud_ecs",ccA="alibaba_cloud_fc",lcA="aws_ec2",pcA="aws_ecs",icA="aws_eks",ncA="aws_lambda",scA="aws_elastic_beanstalk",rcA="azure_vm",acA="azure_container_instances",ocA="azure_aks",tcA="azure_functions",ecA="azure_app_service",AlA="gcp_compute_engine",QlA="gcp_cloud_run",BlA="gcp_kubernetes_engine",YlA="gcp_cloud_functions",JlA="gcp_app_engine";glA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=dcA;glA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=ccA;glA.CLOUDPLATFORMVALUES_AWS_EC2=lcA;glA.CLOUDPLATFORMVALUES_AWS_ECS=pcA;glA.CLOUDPLATFORMVALUES_AWS_EKS=icA;glA.CLOUDPLATFORMVALUES_AWS_LAMBDA=ncA;glA.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=scA;glA.CLOUDPLATFORMVALUES_AZURE_VM=rcA;glA.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=acA;glA.CLOUDPLATFORMVALUES_AZURE_AKS=ocA;glA.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=tcA;glA.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=ecA;glA.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=AlA;glA.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=QlA;glA.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=BlA;glA.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=YlA;glA.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=JlA;glA.CloudPlatformValues=(0,rZ.createConstMap)([dcA,ccA,lcA,pcA,icA,ncA,scA,rcA,acA,ocA,tcA,ecA,AlA,QlA,BlA,YlA,JlA]);var ClA="ec2",XlA="fargate";glA.AWSECSLAUNCHTYPEVALUES_EC2=ClA;glA.AWSECSLAUNCHTYPEVALUES_FARGATE=XlA;glA.AwsEcsLaunchtypeValues=(0,rZ.createConstMap)([ClA,XlA]);var GlA="amd64",FlA="arm32",WlA="arm64",ZlA="ia64",$lA="ppc32",UlA="ppc64",ElA="x86";glA.HOSTARCHVALUES_AMD64=GlA;glA.HOSTARCHVALUES_ARM32=FlA;glA.HOSTARCHVALUES_ARM64=WlA;glA.HOSTARCHVALUES_IA64=ZlA;glA.HOSTARCHVALUES_PPC32=$lA;glA.HOSTARCHVALUES_PPC64=UlA;glA.HOSTARCHVALUES_X86=ElA;glA.HostArchValues=(0,rZ.createConstMap)([GlA,FlA,WlA,ZlA,$lA,UlA,ElA]);var KlA="windows",VlA="linux",IlA="darwin",HlA="freebsd",DlA="netbsd",NlA="openbsd",LlA="dragonflybsd",qlA="hpux",MlA="aix",zlA="solaris",RlA="z_os";glA.OSTYPEVALUES_WINDOWS=KlA;glA.OSTYPEVALUES_LINUX=VlA;glA.OSTYPEVALUES_DARWIN=IlA;glA.OSTYPEVALUES_FREEBSD=HlA;glA.OSTYPEVALUES_NETBSD=DlA;glA.OSTYPEVALUES_OPENBSD=NlA;glA.OSTYPEVALUES_DRAGONFLYBSD=LlA;glA.OSTYPEVALUES_HPUX=qlA;glA.OSTYPEVALUES_AIX=MlA;glA.OSTYPEVALUES_SOLARIS=zlA;glA.OSTYPEVALUES_Z_OS=RlA;glA.OsTypeValues=(0,rZ.createConstMap)([KlA,VlA,IlA,HlA,DlA,NlA,LlA,qlA,MlA,zlA,RlA]);var wlA="cpp",jlA="dotnet",OlA="erlang",PlA="go",TlA="java",SlA="nodejs",klA="php",_lA="python",vlA="ruby",ylA="webjs";glA.TELEMETRYSDKLANGUAGEVALUES_CPP=wlA;glA.TELEMETRYSDKLANGUAGEVALUES_DOTNET=jlA;glA.TELEMETRYSDKLANGUAGEVALUES_ERLANG=OlA;glA.TELEMETRYSDKLANGUAGEVALUES_GO=PlA;glA.TELEMETRYSDKLANGUAGEVALUES_JAVA=TlA;glA.TELEMETRYSDKLANGUAGEVALUES_NODEJS=SlA;glA.TELEMETRYSDKLANGUAGEVALUES_PHP=klA;glA.TELEMETRYSDKLANGUAGEVALUES_PYTHON=_lA;glA.TELEMETRYSDKLANGUAGEVALUES_RUBY=vlA;glA.TELEMETRYSDKLANGUAGEVALUES_WEBJS=ylA;glA.TelemetrySdkLanguageValues=(0,rZ.createConstMap)([wlA,jlA,OlA,PlA,TlA,SlA,klA,_lA,vlA,ylA])});var mlA=R((aZ)=>{var tmB=aZ&&aZ.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),emB=aZ&&aZ.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))tmB(Q,A,B)};Object.defineProperty(aZ,"__esModule",{value:!0});emB(blA(),aZ)});var plA=R((ulA)=>{Object.defineProperty(ulA,"__esModule",{value:!0});ulA.HTTP_REQUEST_METHOD_VALUE_POST=ulA.HTTP_REQUEST_METHOD_VALUE_PATCH=ulA.HTTP_REQUEST_METHOD_VALUE_OPTIONS=ulA.HTTP_REQUEST_METHOD_VALUE_HEAD=ulA.HTTP_REQUEST_METHOD_VALUE_GET=ulA.HTTP_REQUEST_METHOD_VALUE_DELETE=ulA.HTTP_REQUEST_METHOD_VALUE_CONNECT=ulA.HTTP_REQUEST_METHOD_VALUE_OTHER=ulA.ATTR_HTTP_REQUEST_METHOD=ulA.ATTR_HTTP_REQUEST_HEADER=ulA.ATTR_EXCEPTION_TYPE=ulA.ATTR_EXCEPTION_STACKTRACE=ulA.ATTR_EXCEPTION_MESSAGE=ulA.ATTR_EXCEPTION_ESCAPED=ulA.ERROR_TYPE_VALUE_OTHER=ulA.ATTR_ERROR_TYPE=ulA.ATTR_CLIENT_PORT=ulA.ATTR_CLIENT_ADDRESS=ulA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS=ulA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE=ulA.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS=ulA.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK=ulA.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED=ulA.ATTR_ASPNETCORE_RATE_LIMITING_POLICY=ulA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED=ulA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED=ulA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED=ulA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED=ulA.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT=ulA.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE=ulA.ATTR_TELEMETRY_SDK_VERSION=ulA.ATTR_TELEMETRY_SDK_NAME=ulA.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS=ulA.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT=ulA.TELEMETRY_SDK_LANGUAGE_VALUE_RUST=ulA.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY=ulA.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON=ulA.TELEMETRY_SDK_LANGUAGE_VALUE_PHP=ulA.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS=ulA.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA=ulA.TELEMETRY_SDK_LANGUAGE_VALUE_GO=ulA.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG=ulA.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET=ulA.TELEMETRY_SDK_LANGUAGE_VALUE_CPP=ulA.ATTR_TELEMETRY_SDK_LANGUAGE=ulA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED=ulA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER=ulA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER=ulA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED=ulA.ATTR_ASPNETCORE_RATE_LIMITING_RESULT=void 0;ulA.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT=ulA.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE=ulA.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN=ulA.ATTR_SIGNALR_CONNECTION_STATUS=ulA.ATTR_SERVICE_VERSION=ulA.ATTR_SERVICE_NAME=ulA.ATTR_SERVER_PORT=ulA.ATTR_SERVER_ADDRESS=ulA.ATTR_OTEL_STATUS_DESCRIPTION=ulA.OTEL_STATUS_CODE_VALUE_OK=ulA.OTEL_STATUS_CODE_VALUE_ERROR=ulA.ATTR_OTEL_STATUS_CODE=ulA.ATTR_OTEL_SCOPE_VERSION=ulA.ATTR_OTEL_SCOPE_NAME=ulA.NETWORK_TYPE_VALUE_IPV6=ulA.NETWORK_TYPE_VALUE_IPV4=ulA.ATTR_NETWORK_TYPE=ulA.NETWORK_TRANSPORT_VALUE_UNIX=ulA.NETWORK_TRANSPORT_VALUE_UDP=ulA.NETWORK_TRANSPORT_VALUE_TCP=ulA.NETWORK_TRANSPORT_VALUE_QUIC=ulA.NETWORK_TRANSPORT_VALUE_PIPE=ulA.ATTR_NETWORK_TRANSPORT=ulA.ATTR_NETWORK_PROTOCOL_VERSION=ulA.ATTR_NETWORK_PROTOCOL_NAME=ulA.ATTR_NETWORK_PEER_PORT=ulA.ATTR_NETWORK_PEER_ADDRESS=ulA.ATTR_NETWORK_LOCAL_PORT=ulA.ATTR_NETWORK_LOCAL_ADDRESS=ulA.JVM_THREAD_STATE_VALUE_WAITING=ulA.JVM_THREAD_STATE_VALUE_TIMED_WAITING=ulA.JVM_THREAD_STATE_VALUE_TERMINATED=ulA.JVM_THREAD_STATE_VALUE_RUNNABLE=ulA.JVM_THREAD_STATE_VALUE_NEW=ulA.JVM_THREAD_STATE_VALUE_BLOCKED=ulA.ATTR_JVM_THREAD_STATE=ulA.ATTR_JVM_THREAD_DAEMON=ulA.JVM_MEMORY_TYPE_VALUE_NON_HEAP=ulA.JVM_MEMORY_TYPE_VALUE_HEAP=ulA.ATTR_JVM_MEMORY_TYPE=ulA.ATTR_JVM_MEMORY_POOL_NAME=ulA.ATTR_JVM_GC_NAME=ulA.ATTR_JVM_GC_ACTION=ulA.ATTR_HTTP_ROUTE=ulA.ATTR_HTTP_RESPONSE_STATUS_CODE=ulA.ATTR_HTTP_RESPONSE_HEADER=ulA.ATTR_HTTP_REQUEST_RESEND_COUNT=ulA.ATTR_HTTP_REQUEST_METHOD_ORIGINAL=ulA.HTTP_REQUEST_METHOD_VALUE_TRACE=ulA.HTTP_REQUEST_METHOD_VALUE_PUT=void 0;ulA.ATTR_USER_AGENT_ORIGINAL=ulA.ATTR_URL_SCHEME=ulA.ATTR_URL_QUERY=ulA.ATTR_URL_PATH=ulA.ATTR_URL_FULL=ulA.ATTR_URL_FRAGMENT=ulA.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS=ulA.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS=ulA.SIGNALR_TRANSPORT_VALUE_LONG_POLLING=ulA.ATTR_SIGNALR_TRANSPORT=void 0;ulA.ATTR_ASPNETCORE_RATE_LIMITING_RESULT="aspnetcore.rate_limiting.result";ulA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED="acquired";ulA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER="endpoint_limiter";ulA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER="global_limiter";ulA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED="request_canceled";ulA.ATTR_TELEMETRY_SDK_LANGUAGE="telemetry.sdk.language";ulA.TELEMETRY_SDK_LANGUAGE_VALUE_CPP="cpp";ulA.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET="dotnet";ulA.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG="erlang";ulA.TELEMETRY_SDK_LANGUAGE_VALUE_GO="go";ulA.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA="java";ulA.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS="nodejs";ulA.TELEMETRY_SDK_LANGUAGE_VALUE_PHP="php";ulA.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON="python";ulA.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY="ruby";ulA.TELEMETRY_SDK_LANGUAGE_VALUE_RUST="rust";ulA.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT="swift";ulA.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS="webjs";ulA.ATTR_TELEMETRY_SDK_NAME="telemetry.sdk.name";ulA.ATTR_TELEMETRY_SDK_VERSION="telemetry.sdk.version";ulA.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE="aspnetcore.diagnostics.handler.type";ulA.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT="aspnetcore.diagnostics.exception.result";ulA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED="aborted";ulA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED="handled";ulA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED="skipped";ulA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED="unhandled";ulA.ATTR_ASPNETCORE_RATE_LIMITING_POLICY="aspnetcore.rate_limiting.policy";ulA.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED="aspnetcore.request.is_unhandled";ulA.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK="aspnetcore.routing.is_fallback";ulA.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS="aspnetcore.routing.match_status";ulA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE="failure";ulA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS="success";ulA.ATTR_CLIENT_ADDRESS="client.address";ulA.ATTR_CLIENT_PORT="client.port";ulA.ATTR_ERROR_TYPE="error.type";ulA.ERROR_TYPE_VALUE_OTHER="_OTHER";ulA.ATTR_EXCEPTION_ESCAPED="exception.escaped";ulA.ATTR_EXCEPTION_MESSAGE="exception.message";ulA.ATTR_EXCEPTION_STACKTRACE="exception.stacktrace";ulA.ATTR_EXCEPTION_TYPE="exception.type";var AuB=(A)=>`http.request.header.${A}`;ulA.ATTR_HTTP_REQUEST_HEADER=AuB;ulA.ATTR_HTTP_REQUEST_METHOD="http.request.method";ulA.HTTP_REQUEST_METHOD_VALUE_OTHER="_OTHER";ulA.HTTP_REQUEST_METHOD_VALUE_CONNECT="CONNECT";ulA.HTTP_REQUEST_METHOD_VALUE_DELETE="DELETE";ulA.HTTP_REQUEST_METHOD_VALUE_GET="GET";ulA.HTTP_REQUEST_METHOD_VALUE_HEAD="HEAD";ulA.HTTP_REQUEST_METHOD_VALUE_OPTIONS="OPTIONS";ulA.HTTP_REQUEST_METHOD_VALUE_PATCH="PATCH";ulA.HTTP_REQUEST_METHOD_VALUE_POST="POST";ulA.HTTP_REQUEST_METHOD_VALUE_PUT="PUT";ulA.HTTP_REQUEST_METHOD_VALUE_TRACE="TRACE";ulA.ATTR_HTTP_REQUEST_METHOD_ORIGINAL="http.request.method_original";ulA.ATTR_HTTP_REQUEST_RESEND_COUNT="http.request.resend_count";var QuB=(A)=>`http.response.header.${A}`;ulA.ATTR_HTTP_RESPONSE_HEADER=QuB;ulA.ATTR_HTTP_RESPONSE_STATUS_CODE="http.response.status_code";ulA.ATTR_HTTP_ROUTE="http.route";ulA.ATTR_JVM_GC_ACTION="jvm.gc.action";ulA.ATTR_JVM_GC_NAME="jvm.gc.name";ulA.ATTR_JVM_MEMORY_POOL_NAME="jvm.memory.pool.name";ulA.ATTR_JVM_MEMORY_TYPE="jvm.memory.type";ulA.JVM_MEMORY_TYPE_VALUE_HEAP="heap";ulA.JVM_MEMORY_TYPE_VALUE_NON_HEAP="non_heap";ulA.ATTR_JVM_THREAD_DAEMON="jvm.thread.daemon";ulA.ATTR_JVM_THREAD_STATE="jvm.thread.state";ulA.JVM_THREAD_STATE_VALUE_BLOCKED="blocked";ulA.JVM_THREAD_STATE_VALUE_NEW="new";ulA.JVM_THREAD_STATE_VALUE_RUNNABLE="runnable";ulA.JVM_THREAD_STATE_VALUE_TERMINATED="terminated";ulA.JVM_THREAD_STATE_VALUE_TIMED_WAITING="timed_waiting";ulA.JVM_THREAD_STATE_VALUE_WAITING="waiting";ulA.ATTR_NETWORK_LOCAL_ADDRESS="network.local.address";ulA.ATTR_NETWORK_LOCAL_PORT="network.local.port";ulA.ATTR_NETWORK_PEER_ADDRESS="network.peer.address";ulA.ATTR_NETWORK_PEER_PORT="network.peer.port";ulA.ATTR_NETWORK_PROTOCOL_NAME="network.protocol.name";ulA.ATTR_NETWORK_PROTOCOL_VERSION="network.protocol.version";ulA.ATTR_NETWORK_TRANSPORT="network.transport";ulA.NETWORK_TRANSPORT_VALUE_PIPE="pipe";ulA.NETWORK_TRANSPORT_VALUE_QUIC="quic";ulA.NETWORK_TRANSPORT_VALUE_TCP="tcp";ulA.NETWORK_TRANSPORT_VALUE_UDP="udp";ulA.NETWORK_TRANSPORT_VALUE_UNIX="unix";ulA.ATTR_NETWORK_TYPE="network.type";ulA.NETWORK_TYPE_VALUE_IPV4="ipv4";ulA.NETWORK_TYPE_VALUE_IPV6="ipv6";ulA.ATTR_OTEL_SCOPE_NAME="otel.scope.name";ulA.ATTR_OTEL_SCOPE_VERSION="otel.scope.version";ulA.ATTR_OTEL_STATUS_CODE="otel.status_code";ulA.OTEL_STATUS_CODE_VALUE_ERROR="ERROR";ulA.OTEL_STATUS_CODE_VALUE_OK="OK";ulA.ATTR_OTEL_STATUS_DESCRIPTION="otel.status_description";ulA.ATTR_SERVER_ADDRESS="server.address";ulA.ATTR_SERVER_PORT="server.port";ulA.ATTR_SERVICE_NAME="service.name";ulA.ATTR_SERVICE_VERSION="service.version";ulA.ATTR_SIGNALR_CONNECTION_STATUS="signalr.connection.status";ulA.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN="app_shutdown";ulA.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE="normal_closure";ulA.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT="timeout";ulA.ATTR_SIGNALR_TRANSPORT="signalr.transport";ulA.SIGNALR_TRANSPORT_VALUE_LONG_POLLING="long_polling";ulA.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS="server_sent_events";ulA.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS="web_sockets";ulA.ATTR_URL_FRAGMENT="url.fragment";ulA.ATTR_URL_FULL="url.full";ulA.ATTR_URL_PATH="url.path";ulA.ATTR_URL_QUERY="url.query";ulA.ATTR_URL_SCHEME="url.scheme";ulA.ATTR_USER_AGENT_ORIGINAL="user_agent.original"});var slA=R((ilA)=>{Object.defineProperty(ilA,"__esModule",{value:!0});ilA.METRIC_SIGNALR_SERVER_CONNECTION_DURATION=ilA.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS=ilA.METRIC_KESTREL_UPGRADED_CONNECTIONS=ilA.METRIC_KESTREL_TLS_HANDSHAKE_DURATION=ilA.METRIC_KESTREL_REJECTED_CONNECTIONS=ilA.METRIC_KESTREL_QUEUED_REQUESTS=ilA.METRIC_KESTREL_QUEUED_CONNECTIONS=ilA.METRIC_KESTREL_CONNECTION_DURATION=ilA.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES=ilA.METRIC_KESTREL_ACTIVE_CONNECTIONS=ilA.METRIC_JVM_THREAD_COUNT=ilA.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC=ilA.METRIC_JVM_MEMORY_USED=ilA.METRIC_JVM_MEMORY_LIMIT=ilA.METRIC_JVM_MEMORY_COMMITTED=ilA.METRIC_JVM_GC_DURATION=ilA.METRIC_JVM_CPU_TIME=ilA.METRIC_JVM_CPU_RECENT_UTILIZATION=ilA.METRIC_JVM_CPU_COUNT=ilA.METRIC_JVM_CLASS_UNLOADED=ilA.METRIC_JVM_CLASS_LOADED=ilA.METRIC_JVM_CLASS_COUNT=ilA.METRIC_HTTP_SERVER_REQUEST_DURATION=ilA.METRIC_HTTP_CLIENT_REQUEST_DURATION=ilA.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS=ilA.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS=ilA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION=ilA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE=ilA.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS=ilA.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES=ilA.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS=void 0;ilA.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS="aspnetcore.diagnostics.exceptions";ilA.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES="aspnetcore.rate_limiting.active_request_leases";ilA.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS="aspnetcore.rate_limiting.queued_requests";ilA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE="aspnetcore.rate_limiting.request.time_in_queue";ilA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION="aspnetcore.rate_limiting.request_lease.duration";ilA.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS="aspnetcore.rate_limiting.requests";ilA.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS="aspnetcore.routing.match_attempts";ilA.METRIC_HTTP_CLIENT_REQUEST_DURATION="http.client.request.duration";ilA.METRIC_HTTP_SERVER_REQUEST_DURATION="http.server.request.duration";ilA.METRIC_JVM_CLASS_COUNT="jvm.class.count";ilA.METRIC_JVM_CLASS_LOADED="jvm.class.loaded";ilA.METRIC_JVM_CLASS_UNLOADED="jvm.class.unloaded";ilA.METRIC_JVM_CPU_COUNT="jvm.cpu.count";ilA.METRIC_JVM_CPU_RECENT_UTILIZATION="jvm.cpu.recent_utilization";ilA.METRIC_JVM_CPU_TIME="jvm.cpu.time";ilA.METRIC_JVM_GC_DURATION="jvm.gc.duration";ilA.METRIC_JVM_MEMORY_COMMITTED="jvm.memory.committed";ilA.METRIC_JVM_MEMORY_LIMIT="jvm.memory.limit";ilA.METRIC_JVM_MEMORY_USED="jvm.memory.used";ilA.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC="jvm.memory.used_after_last_gc";ilA.METRIC_JVM_THREAD_COUNT="jvm.thread.count";ilA.METRIC_KESTREL_ACTIVE_CONNECTIONS="kestrel.active_connections";ilA.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES="kestrel.active_tls_handshakes";ilA.METRIC_KESTREL_CONNECTION_DURATION="kestrel.connection.duration";ilA.METRIC_KESTREL_QUEUED_CONNECTIONS="kestrel.queued_connections";ilA.METRIC_KESTREL_QUEUED_REQUESTS="kestrel.queued_requests";ilA.METRIC_KESTREL_REJECTED_CONNECTIONS="kestrel.rejected_connections";ilA.METRIC_KESTREL_TLS_HANDSHAKE_DURATION="kestrel.tls_handshake.duration";ilA.METRIC_KESTREL_UPGRADED_CONNECTIONS="kestrel.upgraded_connections";ilA.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS="signalr.server.active_connections";ilA.METRIC_SIGNALR_SERVER_CONNECTION_DURATION="signalr.server.connection.duration"});var Ep=R((YX)=>{var kcB=YX&&YX.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),OO=YX&&YX.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))kcB(Q,A,B)};Object.defineProperty(YX,"__esModule",{value:!0});OO(ZdA(),YX);OO(mlA(),YX);OO(plA(),YX);OO(slA(),YX)});var alA=R((rlA)=>{Object.defineProperty(rlA,"__esModule",{value:!0});rlA.AttributeNames=void 0;var _cB;(function(A){A.HTTP_ERROR_NAME="http.error_name",A.HTTP_ERROR_MESSAGE="http.error_message",A.HTTP_STATUS_TEXT="http.status_text"})(_cB=rlA.AttributeNames||(rlA.AttributeNames={}))});var tlA=R((HyY,olA)=>{var vcB=u("util");function Vp(A,Q){Error.captureStackTrace(this,Vp),this.name=this.constructor.name,this.message=A,this.input=Q}vcB.inherits(Vp,Error);olA.exports=Vp});var ApA=R((DyY,elA)=>{function ycB(A){return A===34||A===40||A===41||A===44||A===47||A>=58&&A<=64||A>=91&&A<=93||A===123||A===125}function gcB(A){return A===33||A>=35&&A<=39||A===42||A===43||A===45||A===46||A>=48&&A<=57||A>=65&&A<=90||A>=94&&A<=122||A===124||A===126}function hcB(A){return A>=32&&A<=126}function xcB(A){return A>=128&&A<=255}elA.exports={isDelimiter:ycB,isTokenChar:gcB,isExtended:xcB,isPrint:hcB}});var CpA=R((NyY,JpA)=>{var fcB=u("util"),QK=tlA(),PO=ApA(),bcB=PO.isDelimiter,QpA=PO.isTokenChar,BpA=PO.isExtended,mcB=PO.isPrint;function YpA(A){return A.replace(/\\(.)/g,"$1")}function CL(A,Q){return fcB.format("Unexpected character '%s' at index %d",A.charAt(Q),Q)}function ucB(A){var Q=!1,B=!1,Y=!1,J={},C=[],X=-1,G=-1,F,W;for(var Z=0;Z{Object.defineProperty($pA,"__esModule",{value:!0});$pA.headerCapture=$pA.getIncomingStableRequestMetricAttributesOnResponse=$pA.getIncomingRequestMetricAttributesOnResponse=$pA.getIncomingRequestAttributesOnResponse=$pA.getIncomingRequestMetricAttributes=$pA.getIncomingRequestAttributes=$pA.getRemoteClientAddress=$pA.getOutgoingRequestMetricAttributesOnResponse=$pA.getOutgoingRequestAttributesOnResponse=$pA.setAttributesFromHttpKind=$pA.getOutgoingRequestMetricAttributes=$pA.getOutgoingRequestAttributes=$pA.extractHostnameAndPort=$pA.isValidOptionsType=$pA.getRequestInfo=$pA.isCompressed=$pA.setResponseContentLengthAttribute=$pA.setRequestContentLengthAttribute=$pA.setSpanWithError=$pA.satisfiesPattern=$pA.parseResponseStatus=$pA.getAbsoluteUrl=void 0;var XL=yA(),SA=Ep(),XpA=MB(),dcB=u("url"),TO=alA(),ccB=CpA(),lcB=(A,Q,B="http:")=>{let Y=A||{},J=Y.protocol||B,C=(Y.port||"").toString(),X=Y.path||"/",G=Y.host||Y.hostname||Q.host||"localhost";if(G.indexOf(":")===-1&&C&&C!=="80"&&C!=="443")G+=`:${C}`;return`${J}//${G}${X}`};$pA.getAbsoluteUrl=lcB;var pcB=(A,Q)=>{let B=A===XL.SpanKind.CLIENT?400:500;if(Q&&Q>=100&&Q{if(typeof Q==="string")return Q===A;else if(Q instanceof RegExp)return Q.test(A);else if(typeof Q==="function")return Q(A);else throw TypeError("Pattern is in unsupported datatype")};$pA.satisfiesPattern=icB;var ncB=(A,Q,B)=>{let Y=Q.message;if((B&2)===2)A.setAttribute(TO.AttributeNames.HTTP_ERROR_NAME,Q.name),A.setAttribute(TO.AttributeNames.HTTP_ERROR_MESSAGE,Y);if((B&1)===1)A.setAttribute(SA.ATTR_ERROR_TYPE,Q.name);A.setStatus({code:XL.SpanStatusCode.ERROR,message:Y}),A.recordException(Q)};$pA.setSpanWithError=ncB;var scB=(A,Q)=>{let B=GpA(A.headers);if(B===null)return;if($pA.isCompressed(A.headers))Q[SA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH]=B;else Q[SA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED]=B};$pA.setRequestContentLengthAttribute=scB;var rcB=(A,Q)=>{let B=GpA(A.headers);if(B===null)return;if($pA.isCompressed(A.headers))Q[SA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH]=B;else Q[SA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED]=B};$pA.setResponseContentLengthAttribute=rcB;function GpA(A){let Q=A["content-length"];if(Q===void 0)return null;let B=parseInt(Q,10);if(isNaN(B))return null;return B}var acB=(A)=>{let Q=A["content-encoding"];return!!Q&&Q!=="identity"};$pA.isCompressed=acB;function ocB(A){let{hostname:Q,pathname:B,port:Y,username:J,password:C,search:X,protocol:G,hash:F,href:W,origin:Z,host:U}=new URL(A),$={protocol:G,hostname:Q&&Q[0]==="["?Q.slice(1,-1):Q,hash:F,search:X,pathname:B,path:`${B||""}${X||""}`,href:W,origin:Z,host:U};if(Y!=="")$.port=Number(Y);if(J||C)$.auth=`${decodeURIComponent(J)}:${decodeURIComponent(C)}`;return $}var tcB=(A,Q,B)=>{let Y,J,C,X=!1;if(typeof Q==="string"){try{let F=ocB(Q);C=F,Y=F.pathname||"/"}catch(F){X=!0,A.verbose("Unable to parse URL provided to HTTP request, using fallback to determine path. Original error:",F),C={path:Q},Y=C.path||"/"}if(J=`${C.protocol||"http:"}//${C.host}`,B!==void 0)Object.assign(C,B)}else if(Q instanceof dcB.URL){if(C={protocol:Q.protocol,hostname:typeof Q.hostname==="string"&&Q.hostname.startsWith("[")?Q.hostname.slice(1,-1):Q.hostname,path:`${Q.pathname||""}${Q.search||""}`},Q.port!=="")C.port=Number(Q.port);if(Q.username||Q.password)C.auth=`${Q.username}:${Q.password}`;if(Y=Q.pathname,J=Q.origin,B!==void 0)Object.assign(C,B)}else{C=Object.assign({protocol:Q.host?"http:":void 0},Q);let F=C.host||(C.port!=null?`${C.hostname}${C.port}`:C.hostname);if(J=`${C.protocol||"http:"}//${F}`,Y=Q.pathname,!Y&&C.path)try{Y=new URL(C.path,J).pathname||"/"}catch(W){Y="/"}}let G=C.method?C.method.toUpperCase():"GET";return{origin:J,pathname:Y,method:G,optionsParsed:C,invalidUrl:X}};$pA.getRequestInfo=tcB;var ecB=(A)=>{if(!A)return!1;let Q=typeof A;return Q==="string"||Q==="object"&&!Array.isArray(A)};$pA.isValidOptionsType=ecB;var AlB=(A)=>{var Q;if(A.hostname&&A.port)return{hostname:A.hostname,port:A.port};let B=((Q=A.host)===null||Q===void 0?void 0:Q.match(/^([^:/ ]+)(:\d{1,5})?/))||null,Y=A.hostname||(B===null?"localhost":B[1]),J=A.port;if(!J)if(B&&B[2])J=B[2].substring(1);else J=A.protocol==="https:"?"443":"80";return{hostname:Y,port:J}};$pA.extractHostnameAndPort=AlB;var QlB=(A,Q,B)=>{var Y,J;let{hostname:C,port:X}=Q,G=(Y=A.method)!==null&&Y!==void 0?Y:"GET",F=WpA(G),W=A.headers||{},Z=W["user-agent"],U=$pA.getAbsoluteUrl(A,W,`${Q.component}:`),$={[SA.SEMATTRS_HTTP_URL]:U,[SA.SEMATTRS_HTTP_METHOD]:G,[SA.SEMATTRS_HTTP_TARGET]:A.path||"/",[SA.SEMATTRS_NET_PEER_NAME]:C,[SA.SEMATTRS_HTTP_HOST]:(J=W.host)!==null&&J!==void 0?J:`${C}:${X}`},E={[SA.ATTR_HTTP_REQUEST_METHOD]:F,[SA.ATTR_SERVER_ADDRESS]:C,[SA.ATTR_SERVER_PORT]:Number(X),[SA.ATTR_URL_FULL]:U};if(G!==F)E[SA.ATTR_HTTP_REQUEST_METHOD_ORIGINAL]=G;if(Z!==void 0)$[SA.SEMATTRS_HTTP_USER_AGENT]=Z;switch(B){case 1:return Object.assign(E,Q.hookAttributes);case 2:return Object.assign($,Q.hookAttributes)}return Object.assign($,E,Q.hookAttributes)};$pA.getOutgoingRequestAttributes=QlB;var BlB=(A)=>{let Q={};return Q[SA.SEMATTRS_HTTP_METHOD]=A[SA.SEMATTRS_HTTP_METHOD],Q[SA.SEMATTRS_NET_PEER_NAME]=A[SA.SEMATTRS_NET_PEER_NAME],Q};$pA.getOutgoingRequestMetricAttributes=BlB;var YlB=(A,Q)=>{if(A)if(Q[SA.SEMATTRS_HTTP_FLAVOR]=A,A.toUpperCase()!=="QUIC")Q[SA.SEMATTRS_NET_TRANSPORT]=SA.NETTRANSPORTVALUES_IP_TCP;else Q[SA.SEMATTRS_NET_TRANSPORT]=SA.NETTRANSPORTVALUES_IP_UDP};$pA.setAttributesFromHttpKind=YlB;var JlB=(A,Q)=>{let{statusCode:B,statusMessage:Y,httpVersion:J,socket:C}=A,X={},G={};if(B!=null)G[SA.ATTR_HTTP_RESPONSE_STATUS_CODE]=B;if(C){let{remoteAddress:F,remotePort:W}=C;X[SA.SEMATTRS_NET_PEER_IP]=F,X[SA.SEMATTRS_NET_PEER_PORT]=W,G[SA.ATTR_NETWORK_PEER_ADDRESS]=F,G[SA.ATTR_NETWORK_PEER_PORT]=W,G[SA.ATTR_NETWORK_PROTOCOL_VERSION]=A.httpVersion}if($pA.setResponseContentLengthAttribute(A,X),B)X[SA.SEMATTRS_HTTP_STATUS_CODE]=B,X[TO.AttributeNames.HTTP_STATUS_TEXT]=(Y||"").toUpperCase();switch($pA.setAttributesFromHttpKind(J,X),Q){case 1:return G;case 2:return X}return Object.assign(X,G)};$pA.getOutgoingRequestAttributesOnResponse=JlB;var ClB=(A)=>{let Q={};return Q[SA.SEMATTRS_NET_PEER_PORT]=A[SA.SEMATTRS_NET_PEER_PORT],Q[SA.SEMATTRS_HTTP_STATUS_CODE]=A[SA.SEMATTRS_HTTP_STATUS_CODE],Q[SA.SEMATTRS_HTTP_FLAVOR]=A[SA.SEMATTRS_HTTP_FLAVOR],Q};$pA.getOutgoingRequestMetricAttributesOnResponse=ClB;function CF(A,Q){let B=A.split(":");if(B.length===1){if(Q==="http")return{host:B[0],port:"80"};if(Q==="https")return{host:B[0],port:"443"};return{host:B[0]}}if(B.length===2)return{host:B[0],port:B[1]};if(B[0].startsWith("[")){if(B[B.length-1].endsWith("]")){if(Q==="http")return{host:A,port:"80"};if(Q==="https")return{host:A,port:"443"}}else if(B[B.length-2].endsWith("]"))return{host:B.slice(0,-1).join(":"),port:B[B.length-1]}}return{host:A}}function XlB(A,Q){let B=A.headers.forwarded;if(B){for(let C of ZpA(B))if(C.host)return CF(C.host,C.proto)}let Y=A.headers["x-forwarded-host"];if(typeof Y==="string"){if(typeof A.headers["x-forwarded-proto"]==="string")return CF(Y,A.headers["x-forwarded-proto"]);if(Array.isArray(A.headers["x-forwarded-proto"]))return CF(Y,A.headers["x-forwarded-proto"][0]);return CF(Y)}else if(Array.isArray(Y)&&typeof Y[0]==="string"&&Y[0].length>0){if(typeof A.headers["x-forwarded-proto"]==="string")return CF(Y[0],A.headers["x-forwarded-proto"]);if(Array.isArray(A.headers["x-forwarded-proto"]))return CF(Y[0],A.headers["x-forwarded-proto"][0]);return CF(Y[0])}let J=A.headers.host;if(typeof J==="string"&&J.length>0)return CF(J,Q);return null}function FpA(A){let Q=A.headers.forwarded;if(Q){for(let J of ZpA(Q))if(J.for)return J.for}let B=A.headers["x-forwarded-for"];if(typeof B==="string")return B;else if(Array.isArray(B))return B[0];let Y=A.socket.remoteAddress;if(Y)return Y;return null}$pA.getRemoteClientAddress=FpA;function GlB(A,Q,B){var Y,J;try{if(Q.headers.host)return new URL((Y=Q.url)!==null&&Y!==void 0?Y:"/",`${A}://${Q.headers.host}`);else{let C=new URL((J=Q.url)!==null&&J!==void 0?J:"/",`${A}://localhost`);return{pathname:C.pathname,search:C.search,toString:function(){return C.pathname+C.search}}}}catch(C){return B.verbose("Unable to get URL from request",C),{}}}var FlB=(A,Q,B)=>{let Y=A.headers,J=Y["user-agent"],C=Y["x-forwarded-for"],X=A.httpVersion,G=Y.host,F=(G===null||G===void 0?void 0:G.replace(/^(.*)(:[0-9]{1,5})/,"$1"))||"localhost",W=A.method,Z=WpA(W),U=XlB(A,Q.component),$=Q.serverName,E=FpA(A),K={[SA.ATTR_HTTP_REQUEST_METHOD]:Z,[SA.ATTR_URL_SCHEME]:Q.component,[SA.ATTR_SERVER_ADDRESS]:U===null||U===void 0?void 0:U.host,[SA.ATTR_NETWORK_PEER_ADDRESS]:A.socket.remoteAddress,[SA.ATTR_NETWORK_PEER_PORT]:A.socket.remotePort,[SA.ATTR_NETWORK_PROTOCOL_VERSION]:A.httpVersion,[SA.ATTR_USER_AGENT_ORIGINAL]:J},I=GlB(Q.component,A,B);if((I===null||I===void 0?void 0:I.pathname)!=null)K[SA.ATTR_URL_PATH]=I.pathname;if(E!=null)K[SA.ATTR_CLIENT_ADDRESS]=E;if((U===null||U===void 0?void 0:U.port)!=null)K[SA.ATTR_SERVER_PORT]=Number(U.port);if(W!==Z)K[SA.ATTR_HTTP_REQUEST_METHOD_ORIGINAL]=W;let V={[SA.SEMATTRS_HTTP_URL]:I.toString(),[SA.SEMATTRS_HTTP_HOST]:G,[SA.SEMATTRS_NET_HOST_NAME]:F,[SA.SEMATTRS_HTTP_METHOD]:W,[SA.SEMATTRS_HTTP_SCHEME]:Q.component};if(typeof C==="string")V[SA.SEMATTRS_HTTP_CLIENT_IP]=C.split(",")[0];if(typeof $==="string")V[SA.SEMATTRS_HTTP_SERVER_NAME]=$;if(I===null||I===void 0?void 0:I.pathname)V[SA.SEMATTRS_HTTP_TARGET]=(I===null||I===void 0?void 0:I.pathname)+(I===null||I===void 0?void 0:I.search)||"/";if(J!==void 0)V[SA.SEMATTRS_HTTP_USER_AGENT]=J;switch($pA.setRequestContentLengthAttribute(A,V),$pA.setAttributesFromHttpKind(X,V),Q.semconvStability){case 1:return Object.assign(K,Q.hookAttributes);case 2:return Object.assign(V,Q.hookAttributes)}return Object.assign(V,K,Q.hookAttributes)};$pA.getIncomingRequestAttributes=FlB;var WlB=(A)=>{let Q={};return Q[SA.SEMATTRS_HTTP_SCHEME]=A[SA.SEMATTRS_HTTP_SCHEME],Q[SA.SEMATTRS_HTTP_METHOD]=A[SA.SEMATTRS_HTTP_METHOD],Q[SA.SEMATTRS_NET_HOST_NAME]=A[SA.SEMATTRS_NET_HOST_NAME],Q[SA.SEMATTRS_HTTP_FLAVOR]=A[SA.SEMATTRS_HTTP_FLAVOR],Q};$pA.getIncomingRequestMetricAttributes=WlB;var ZlB=(A,Q,B)=>{let{socket:Y}=A,{statusCode:J,statusMessage:C}=Q,X={[SA.ATTR_HTTP_RESPONSE_STATUS_CODE]:J},G=(0,XpA.getRPCMetadata)(XL.context.active()),F={};if(Y){let{localAddress:W,localPort:Z,remoteAddress:U,remotePort:$}=Y;F[SA.SEMATTRS_NET_HOST_IP]=W,F[SA.SEMATTRS_NET_HOST_PORT]=Z,F[SA.SEMATTRS_NET_PEER_IP]=U,F[SA.SEMATTRS_NET_PEER_PORT]=$}if(F[SA.SEMATTRS_HTTP_STATUS_CODE]=J,F[TO.AttributeNames.HTTP_STATUS_TEXT]=(C||"").toUpperCase(),(G===null||G===void 0?void 0:G.type)===XpA.RPCType.HTTP&&G.route!==void 0)F[SA.SEMATTRS_HTTP_ROUTE]=G.route,X[SA.ATTR_HTTP_ROUTE]=G.route;switch(B){case 1:return X;case 2:return F}return Object.assign(F,X)};$pA.getIncomingRequestAttributesOnResponse=ZlB;var $lB=(A)=>{let Q={};if(Q[SA.SEMATTRS_HTTP_STATUS_CODE]=A[SA.SEMATTRS_HTTP_STATUS_CODE],Q[SA.SEMATTRS_NET_HOST_PORT]=A[SA.SEMATTRS_NET_HOST_PORT],A[SA.SEMATTRS_HTTP_ROUTE]!==void 0)Q[SA.SEMATTRS_HTTP_ROUTE]=A[SA.SEMATTRS_HTTP_ROUTE];return Q};$pA.getIncomingRequestMetricAttributesOnResponse=$lB;var UlB=(A)=>{let Q={};if(A[SA.ATTR_HTTP_ROUTE]!==void 0)Q[SA.ATTR_HTTP_ROUTE]=A[SA.SEMATTRS_HTTP_ROUTE];if(A[SA.ATTR_HTTP_RESPONSE_STATUS_CODE])Q[SA.ATTR_HTTP_RESPONSE_STATUS_CODE]=A[SA.ATTR_HTTP_RESPONSE_STATUS_CODE];return Q};$pA.getIncomingStableRequestMetricAttributesOnResponse=UlB;function ElB(A,Q){let B=new Map;for(let Y=0,J=Q.length;Y{for(let C of B.keys()){let X=J(C);if(X===void 0)continue;let G=B.get(C),F=`http.${A}.header.${G}`;if(typeof X==="string")Y.setAttribute(F,[X]);else if(Array.isArray(X))Y.setAttribute(F,X);else Y.setAttribute(F,[X])}}}$pA.headerCapture=ElB;var KlB=new Set(["GET","HEAD","POST","PUT","DELETE","CONNECT","OPTIONS","TRACE","PATCH"]);function WpA(A){if(A==null)return"GET";let Q=A.toUpperCase();if(KlB.has(Q))return Q;return"_OTHER"}function ZpA(A){try{return ccB(A)}catch(Q){return[]}}});var qpA=R((NpA)=>{Object.defineProperty(NpA,"__esModule",{value:!0});NpA.HttpInstrumentation=void 0;var _Q=yA(),BK=MB(),HpA=s_A(),klB=u("url"),_lB=o_A(),y5=NB(),Dp=MB(),Np=u("events"),l0=Ep(),g0=IpA();class DpA extends y5.InstrumentationBase{constructor(A={}){super("@opentelemetry/instrumentation-http",_lB.VERSION,A);this._spanNotEnded=new WeakSet,this._semconvStability=2,this._headerCapture=this._createHeaderCapture();for(let Q of(0,Dp.getEnv)().OTEL_SEMCONV_STABILITY_OPT_IN)if(Q.toLowerCase()==="http/dup"){this._semconvStability=3;break}else if(Q.toLowerCase()==="http")this._semconvStability=1}_updateMetricInstruments(){this._oldHttpServerDurationHistogram=this.meter.createHistogram("http.server.duration",{description:"Measures the duration of inbound HTTP requests.",unit:"ms",valueType:_Q.ValueType.DOUBLE}),this._oldHttpClientDurationHistogram=this.meter.createHistogram("http.client.duration",{description:"Measures the duration of outbound HTTP requests.",unit:"ms",valueType:_Q.ValueType.DOUBLE}),this._stableHttpServerDurationHistogram=this.meter.createHistogram(l0.METRIC_HTTP_SERVER_REQUEST_DURATION,{description:"Duration of HTTP server requests.",unit:"s",valueType:_Q.ValueType.DOUBLE,advice:{explicitBucketBoundaries:[0.005,0.01,0.025,0.05,0.075,0.1,0.25,0.5,0.75,1,2.5,5,7.5,10]}}),this._stableHttpClientDurationHistogram=this.meter.createHistogram(l0.METRIC_HTTP_CLIENT_REQUEST_DURATION,{description:"Duration of HTTP client requests.",unit:"s",valueType:_Q.ValueType.DOUBLE,advice:{explicitBucketBoundaries:[0.005,0.01,0.025,0.05,0.075,0.1,0.25,0.5,0.75,1,2.5,5,7.5,10]}})}_recordServerDuration(A,Q,B){if((this._semconvStability&2)===2)this._oldHttpServerDurationHistogram.record(A,Q);if((this._semconvStability&1)===1)this._stableHttpServerDurationHistogram.record(A/1000,B)}_recordClientDuration(A,Q,B){if((this._semconvStability&2)===2)this._oldHttpClientDurationHistogram.record(A,Q);if((this._semconvStability&1)===1)this._stableHttpClientDurationHistogram.record(A/1000,B)}setConfig(A={}){super.setConfig(A),this._headerCapture=this._createHeaderCapture()}init(){return[this._getHttpsInstrumentation(),this._getHttpInstrumentation()]}_getHttpInstrumentation(){return new y5.InstrumentationNodeModuleDefinition("http",["*"],(A)=>{let Q=A[Symbol.toStringTag]==="Module";if(!this.getConfig().disableOutgoingRequestInstrumentation){let B=this._wrap(A,"request",this._getPatchOutgoingRequestFunction("http")),Y=this._wrap(A,"get",this._getPatchOutgoingGetFunction(B));if(Q)A.default.request=B,A.default.get=Y}if(!this.getConfig().disableIncomingRequestInstrumentation)this._wrap(A.Server.prototype,"emit",this._getPatchIncomingRequestFunction("http"));return A},(A)=>{if(A===void 0)return;if(!this.getConfig().disableOutgoingRequestInstrumentation)this._unwrap(A,"request"),this._unwrap(A,"get");if(!this.getConfig().disableIncomingRequestInstrumentation)this._unwrap(A.Server.prototype,"emit")})}_getHttpsInstrumentation(){return new y5.InstrumentationNodeModuleDefinition("https",["*"],(A)=>{let Q=A[Symbol.toStringTag]==="Module";if(!this.getConfig().disableOutgoingRequestInstrumentation){let B=this._wrap(A,"request",this._getPatchHttpsOutgoingRequestFunction("https")),Y=this._wrap(A,"get",this._getPatchHttpsOutgoingGetFunction(B));if(Q)A.default.request=B,A.default.get=Y}if(!this.getConfig().disableIncomingRequestInstrumentation)this._wrap(A.Server.prototype,"emit",this._getPatchIncomingRequestFunction("https"));return A},(A)=>{if(A===void 0)return;if(!this.getConfig().disableOutgoingRequestInstrumentation)this._unwrap(A,"request"),this._unwrap(A,"get");if(!this.getConfig().disableIncomingRequestInstrumentation)this._unwrap(A.Server.prototype,"emit")})}_getPatchIncomingRequestFunction(A){return(Q)=>{return this._incomingRequestFunction(A,Q)}}_getPatchOutgoingRequestFunction(A){return(Q)=>{return this._outgoingRequestFunction(A,Q)}}_getPatchOutgoingGetFunction(A){return(Q)=>{return function(Y,...J){let C=A(Y,...J);return C.end(),C}}}_getPatchHttpsOutgoingRequestFunction(A){return(Q)=>{let B=this;return function(J,...C){var X;if(A==="https"&&typeof J==="object"&&((X=J===null||J===void 0?void 0:J.constructor)===null||X===void 0?void 0:X.name)!=="URL")J=Object.assign({},J),B._setDefaultOptions(J);return B._getPatchOutgoingRequestFunction(A)(Q)(J,...C)}}}_setDefaultOptions(A){A.protocol=A.protocol||"https:",A.port=A.port||443}_getPatchHttpsOutgoingGetFunction(A){return(Q)=>{let B=this;return function(J,...C){return B._getPatchOutgoingGetFunction(A)(Q)(J,...C)}}}_traceClientRequest(A,Q,B,Y,J){if(this.getConfig().requestHook)this._callRequestHook(Q,A);let C=!1;return A.prependListener("response",(X)=>{if(this._diag.debug("outgoingRequest on response()"),A.listenerCount("response")<=1)X.resume();let G=(0,g0.getOutgoingRequestAttributesOnResponse)(X,this._semconvStability);if(Q.setAttributes(G),Y=Object.assign(Y,(0,g0.getOutgoingRequestMetricAttributesOnResponse)(G)),this.getConfig().responseHook)this._callResponseHook(Q,X);this._headerCapture.client.captureRequestHeaders(Q,(W)=>A.getHeader(W)),this._headerCapture.client.captureResponseHeaders(Q,(W)=>X.headers[W]),_Q.context.bind(_Q.context.active(),X);let F=()=>{if(this._diag.debug("outgoingRequest on end()"),C)return;C=!0;let W;if(X.aborted&&!X.complete)W={code:_Q.SpanStatusCode.ERROR};else W={code:(0,g0.parseResponseStatus)(_Q.SpanKind.CLIENT,X.statusCode)};if(Q.setStatus(W),this.getConfig().applyCustomAttributesOnSpan)(0,y5.safeExecuteInTheMiddle)(()=>this.getConfig().applyCustomAttributesOnSpan(Q,A,X),()=>{},!0);this._closeHttpSpan(Q,_Q.SpanKind.CLIENT,B,Y,J)};if(X.on("end",F),HpA.lt(process.version,"16.0.0"))X.on("close",F);X.on(Np.errorMonitor,(W)=>{if(this._diag.debug("outgoingRequest on error()",W),C)return;C=!0,(0,g0.setSpanWithError)(Q,W,this._semconvStability),Q.setStatus({code:_Q.SpanStatusCode.ERROR,message:W.message}),this._closeHttpSpan(Q,_Q.SpanKind.CLIENT,B,Y,J)})}),A.on("close",()=>{if(this._diag.debug("outgoingRequest on request close()"),A.aborted||C)return;C=!0,this._closeHttpSpan(Q,_Q.SpanKind.CLIENT,B,Y,J)}),A.on(Np.errorMonitor,(X)=>{if(this._diag.debug("outgoingRequest on request error()",X),C)return;C=!0,(0,g0.setSpanWithError)(Q,X,this._semconvStability),this._closeHttpSpan(Q,_Q.SpanKind.CLIENT,B,Y,J)}),this._diag.debug("http.ClientRequest return request"),A}_incomingRequestFunction(A,Q){let B=this;return function(J,...C){if(J!=="request")return Q.apply(this,[J,...C]);let X=C[0],G=C[1],F=X.method||"GET";if(B._diag.debug(`${A} instrumentation incomingRequest`),(0,y5.safeExecuteInTheMiddle)(()=>{var D,L;return(L=(D=B.getConfig()).ignoreIncomingRequestHook)===null||L===void 0?void 0:L.call(D,X)},(D)=>{if(D!=null)B._diag.error("caught ignoreIncomingRequestHook error: ",D)},!0))return _Q.context.with((0,BK.suppressTracing)(_Q.context.active()),()=>{return _Q.context.bind(_Q.context.active(),X),_Q.context.bind(_Q.context.active(),G),Q.apply(this,[J,...C])});let W=X.headers,Z=(0,g0.getIncomingRequestAttributes)(X,{component:A,serverName:B.getConfig().serverName,hookAttributes:B._callStartSpanHook(X,B.getConfig().startIncomingSpanHook),semconvStability:B._semconvStability},B._diag),U={kind:_Q.SpanKind.SERVER,attributes:Z},$=(0,BK.hrTime)(),E=(0,g0.getIncomingRequestMetricAttributes)(Z),K={[l0.ATTR_HTTP_REQUEST_METHOD]:Z[l0.ATTR_HTTP_REQUEST_METHOD],[l0.ATTR_URL_SCHEME]:Z[l0.ATTR_URL_SCHEME]};if(Z[l0.ATTR_NETWORK_PROTOCOL_VERSION])K[l0.ATTR_NETWORK_PROTOCOL_VERSION]=Z[l0.ATTR_NETWORK_PROTOCOL_VERSION];let I=_Q.propagation.extract(_Q.ROOT_CONTEXT,W),V=B._startHttpSpan(F,U,I),H={type:Dp.RPCType.HTTP,span:V};return _Q.context.with((0,Dp.setRPCMetadata)(_Q.trace.setSpan(I,V),H),()=>{if(_Q.context.bind(_Q.context.active(),X),_Q.context.bind(_Q.context.active(),G),B.getConfig().requestHook)B._callRequestHook(V,X);if(B.getConfig().responseHook)B._callResponseHook(V,G);B._headerCapture.server.captureRequestHeaders(V,(L)=>X.headers[L]);let D=!1;return G.on("close",()=>{if(D)return;B._onServerResponseFinish(X,G,V,E,K,$)}),G.on(Np.errorMonitor,(L)=>{D=!0,B._onServerResponseError(V,E,K,$,L)}),(0,y5.safeExecuteInTheMiddle)(()=>Q.apply(this,[J,...C]),(L)=>{if(L)throw(0,g0.setSpanWithError)(V,L,B._semconvStability),B._closeHttpSpan(V,_Q.SpanKind.SERVER,$,E,K),L})})}}_outgoingRequestFunction(A,Q){let B=this;return function(J,...C){if(!(0,g0.isValidOptionsType)(J))return Q.apply(this,[J,...C]);let X=typeof C[0]==="object"&&(typeof J==="string"||J instanceof klB.URL)?C.shift():void 0,{method:G,invalidUrl:F,optionsParsed:W}=(0,g0.getRequestInfo)(B._diag,J,X);if(A==="http"&&HpA.lt(process.version,"9.0.0")&&W.protocol==="https:")return Q.apply(this,[W,...C]);if((0,y5.safeExecuteInTheMiddle)(()=>{var z,M;return(M=(z=B.getConfig()).ignoreOutgoingRequestHook)===null||M===void 0?void 0:M.call(z,W)},(z)=>{if(z!=null)B._diag.error("caught ignoreOutgoingRequestHook error: ",z)},!0))return Q.apply(this,[W,...C]);let{hostname:Z,port:U}=(0,g0.extractHostnameAndPort)(W),$=(0,g0.getOutgoingRequestAttributes)(W,{component:A,port:U,hostname:Z,hookAttributes:B._callStartSpanHook(W,B.getConfig().startOutgoingSpanHook)},B._semconvStability),E=(0,BK.hrTime)(),K=(0,g0.getOutgoingRequestMetricAttributes)($),I={[l0.ATTR_HTTP_REQUEST_METHOD]:$[l0.ATTR_HTTP_REQUEST_METHOD],[l0.ATTR_SERVER_ADDRESS]:$[l0.ATTR_SERVER_ADDRESS],[l0.ATTR_SERVER_PORT]:$[l0.ATTR_SERVER_PORT]};if($[l0.ATTR_HTTP_RESPONSE_STATUS_CODE])I[l0.ATTR_HTTP_RESPONSE_STATUS_CODE]=$[l0.ATTR_HTTP_RESPONSE_STATUS_CODE];if($[l0.ATTR_NETWORK_PROTOCOL_VERSION])I[l0.ATTR_NETWORK_PROTOCOL_VERSION]=$[l0.ATTR_NETWORK_PROTOCOL_VERSION];let V={kind:_Q.SpanKind.CLIENT,attributes:$},H=B._startHttpSpan(G,V),D=_Q.context.active(),L=_Q.trace.setSpan(D,H);if(!W.headers)W.headers={};else W.headers=Object.assign({},W.headers);return _Q.propagation.inject(L,W.headers),_Q.context.with(L,()=>{let z=C[C.length-1];if(typeof z==="function")C[C.length-1]=_Q.context.bind(D,z);let M=(0,y5.safeExecuteInTheMiddle)(()=>{if(F)return Q.apply(this,[J,...C]);else return Q.apply(this,[W,...C])},(N)=>{if(N)throw(0,g0.setSpanWithError)(H,N,B._semconvStability),B._closeHttpSpan(H,_Q.SpanKind.CLIENT,E,K,I),N});return B._diag.debug(`${A} instrumentation outgoingRequest`),_Q.context.bind(D,M),B._traceClientRequest(M,H,E,K,I)})}}_onServerResponseFinish(A,Q,B,Y,J,C){let X=(0,g0.getIncomingRequestAttributesOnResponse)(A,Q,this._semconvStability);Y=Object.assign(Y,(0,g0.getIncomingRequestMetricAttributesOnResponse)(X)),J=Object.assign(J,(0,g0.getIncomingStableRequestMetricAttributesOnResponse)(X)),this._headerCapture.server.captureResponseHeaders(B,(F)=>Q.getHeader(F)),B.setAttributes(X).setStatus({code:(0,g0.parseResponseStatus)(_Q.SpanKind.SERVER,Q.statusCode)});let G=X[l0.SEMATTRS_HTTP_ROUTE];if(G)B.updateName(`${A.method||"GET"} ${G}`);if(this.getConfig().applyCustomAttributesOnSpan)(0,y5.safeExecuteInTheMiddle)(()=>this.getConfig().applyCustomAttributesOnSpan(B,A,Q),()=>{},!0);this._closeHttpSpan(B,_Q.SpanKind.SERVER,C,Y,J)}_onServerResponseError(A,Q,B,Y,J){(0,g0.setSpanWithError)(A,J,this._semconvStability),this._closeHttpSpan(A,_Q.SpanKind.SERVER,Y,Q,B)}_startHttpSpan(A,Q,B=_Q.context.active()){let Y=Q.kind===_Q.SpanKind.CLIENT?this.getConfig().requireParentforOutgoingSpans:this.getConfig().requireParentforIncomingSpans,J,C=_Q.trace.getSpan(B);if(Y===!0&&C===void 0)J=_Q.trace.wrapSpanContext(_Q.INVALID_SPAN_CONTEXT);else if(Y===!0&&(C===null||C===void 0?void 0:C.spanContext().isRemote))J=C;else J=this.tracer.startSpan(A,Q,B);return this._spanNotEnded.add(J),J}_closeHttpSpan(A,Q,B,Y,J){if(!this._spanNotEnded.has(A))return;A.end(),this._spanNotEnded.delete(A);let C=(0,BK.hrTimeToMilliseconds)((0,BK.hrTimeDuration)(B,(0,BK.hrTime)()));if(Q===_Q.SpanKind.SERVER)this._recordServerDuration(C,Y,J);else if(Q===_Q.SpanKind.CLIENT)this._recordClientDuration(C,Y,J)}_callResponseHook(A,Q){(0,y5.safeExecuteInTheMiddle)(()=>this.getConfig().responseHook(A,Q),()=>{},!0)}_callRequestHook(A,Q){(0,y5.safeExecuteInTheMiddle)(()=>this.getConfig().requestHook(A,Q),()=>{},!0)}_callStartSpanHook(A,Q){if(typeof Q==="function")return(0,y5.safeExecuteInTheMiddle)(()=>Q(A),()=>{},!0)}_createHeaderCapture(){var A,Q,B,Y,J,C,X,G,F,W,Z,U;let $=this.getConfig();return{client:{captureRequestHeaders:(0,g0.headerCapture)("request",(B=(Q=(A=$.headersToSpanAttributes)===null||A===void 0?void 0:A.client)===null||Q===void 0?void 0:Q.requestHeaders)!==null&&B!==void 0?B:[]),captureResponseHeaders:(0,g0.headerCapture)("response",(C=(J=(Y=$.headersToSpanAttributes)===null||Y===void 0?void 0:Y.client)===null||J===void 0?void 0:J.responseHeaders)!==null&&C!==void 0?C:[])},server:{captureRequestHeaders:(0,g0.headerCapture)("request",(F=(G=(X=$.headersToSpanAttributes)===null||X===void 0?void 0:X.server)===null||G===void 0?void 0:G.requestHeaders)!==null&&F!==void 0?F:[]),captureResponseHeaders:(0,g0.headerCapture)("response",(U=(Z=(W=$.headersToSpanAttributes)===null||W===void 0?void 0:W.server)===null||Z===void 0?void 0:Z.responseHeaders)!==null&&U!==void 0?U:[])}}}}NpA.HttpInstrumentation=DpA});var MpA=R((Lp)=>{Object.defineProperty(Lp,"__esModule",{value:!0});Lp.HttpInstrumentation=void 0;var vlB=qpA();Object.defineProperty(Lp,"HttpInstrumentation",{enumerable:!0,get:function(){return vlB.HttpInstrumentation}})});var Mp=R((zpA)=>{Object.defineProperty(zpA,"__esModule",{value:!0});zpA.createConstMap=void 0;function flB(A){let Q={},B=A.length;for(let Y=0;Y{Object.defineProperty(KaA,"__esModule",{value:!0});KaA.SEMATTRS_NET_HOST_CARRIER_ICC=KaA.SEMATTRS_NET_HOST_CARRIER_MNC=KaA.SEMATTRS_NET_HOST_CARRIER_MCC=KaA.SEMATTRS_NET_HOST_CARRIER_NAME=KaA.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=KaA.SEMATTRS_NET_HOST_CONNECTION_TYPE=KaA.SEMATTRS_NET_HOST_NAME=KaA.SEMATTRS_NET_HOST_PORT=KaA.SEMATTRS_NET_HOST_IP=KaA.SEMATTRS_NET_PEER_NAME=KaA.SEMATTRS_NET_PEER_PORT=KaA.SEMATTRS_NET_PEER_IP=KaA.SEMATTRS_NET_TRANSPORT=KaA.SEMATTRS_FAAS_INVOKED_REGION=KaA.SEMATTRS_FAAS_INVOKED_PROVIDER=KaA.SEMATTRS_FAAS_INVOKED_NAME=KaA.SEMATTRS_FAAS_COLDSTART=KaA.SEMATTRS_FAAS_CRON=KaA.SEMATTRS_FAAS_TIME=KaA.SEMATTRS_FAAS_DOCUMENT_NAME=KaA.SEMATTRS_FAAS_DOCUMENT_TIME=KaA.SEMATTRS_FAAS_DOCUMENT_OPERATION=KaA.SEMATTRS_FAAS_DOCUMENT_COLLECTION=KaA.SEMATTRS_FAAS_EXECUTION=KaA.SEMATTRS_FAAS_TRIGGER=KaA.SEMATTRS_EXCEPTION_ESCAPED=KaA.SEMATTRS_EXCEPTION_STACKTRACE=KaA.SEMATTRS_EXCEPTION_MESSAGE=KaA.SEMATTRS_EXCEPTION_TYPE=KaA.SEMATTRS_DB_SQL_TABLE=KaA.SEMATTRS_DB_MONGODB_COLLECTION=KaA.SEMATTRS_DB_REDIS_DATABASE_INDEX=KaA.SEMATTRS_DB_HBASE_NAMESPACE=KaA.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=KaA.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=KaA.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=KaA.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=KaA.SEMATTRS_DB_CASSANDRA_TABLE=KaA.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=KaA.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=KaA.SEMATTRS_DB_CASSANDRA_KEYSPACE=KaA.SEMATTRS_DB_MSSQL_INSTANCE_NAME=KaA.SEMATTRS_DB_OPERATION=KaA.SEMATTRS_DB_STATEMENT=KaA.SEMATTRS_DB_NAME=KaA.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=KaA.SEMATTRS_DB_USER=KaA.SEMATTRS_DB_CONNECTION_STRING=KaA.SEMATTRS_DB_SYSTEM=KaA.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=void 0;KaA.SEMATTRS_MESSAGING_DESTINATION_KIND=KaA.SEMATTRS_MESSAGING_DESTINATION=KaA.SEMATTRS_MESSAGING_SYSTEM=KaA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=KaA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=KaA.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=KaA.SEMATTRS_AWS_DYNAMODB_COUNT=KaA.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=KaA.SEMATTRS_AWS_DYNAMODB_SEGMENT=KaA.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=KaA.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=KaA.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=KaA.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=KaA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=KaA.SEMATTRS_AWS_DYNAMODB_SELECT=KaA.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=KaA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=KaA.SEMATTRS_AWS_DYNAMODB_LIMIT=KaA.SEMATTRS_AWS_DYNAMODB_PROJECTION=KaA.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=KaA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=KaA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=KaA.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=KaA.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=KaA.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=KaA.SEMATTRS_HTTP_CLIENT_IP=KaA.SEMATTRS_HTTP_ROUTE=KaA.SEMATTRS_HTTP_SERVER_NAME=KaA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=KaA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=KaA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=KaA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=KaA.SEMATTRS_HTTP_USER_AGENT=KaA.SEMATTRS_HTTP_FLAVOR=KaA.SEMATTRS_HTTP_STATUS_CODE=KaA.SEMATTRS_HTTP_SCHEME=KaA.SEMATTRS_HTTP_HOST=KaA.SEMATTRS_HTTP_TARGET=KaA.SEMATTRS_HTTP_URL=KaA.SEMATTRS_HTTP_METHOD=KaA.SEMATTRS_CODE_LINENO=KaA.SEMATTRS_CODE_FILEPATH=KaA.SEMATTRS_CODE_NAMESPACE=KaA.SEMATTRS_CODE_FUNCTION=KaA.SEMATTRS_THREAD_NAME=KaA.SEMATTRS_THREAD_ID=KaA.SEMATTRS_ENDUSER_SCOPE=KaA.SEMATTRS_ENDUSER_ROLE=KaA.SEMATTRS_ENDUSER_ID=KaA.SEMATTRS_PEER_SERVICE=void 0;KaA.DBSYSTEMVALUES_FILEMAKER=KaA.DBSYSTEMVALUES_DERBY=KaA.DBSYSTEMVALUES_FIREBIRD=KaA.DBSYSTEMVALUES_ADABAS=KaA.DBSYSTEMVALUES_CACHE=KaA.DBSYSTEMVALUES_EDB=KaA.DBSYSTEMVALUES_FIRSTSQL=KaA.DBSYSTEMVALUES_INGRES=KaA.DBSYSTEMVALUES_HANADB=KaA.DBSYSTEMVALUES_MAXDB=KaA.DBSYSTEMVALUES_PROGRESS=KaA.DBSYSTEMVALUES_HSQLDB=KaA.DBSYSTEMVALUES_CLOUDSCAPE=KaA.DBSYSTEMVALUES_HIVE=KaA.DBSYSTEMVALUES_REDSHIFT=KaA.DBSYSTEMVALUES_POSTGRESQL=KaA.DBSYSTEMVALUES_DB2=KaA.DBSYSTEMVALUES_ORACLE=KaA.DBSYSTEMVALUES_MYSQL=KaA.DBSYSTEMVALUES_MSSQL=KaA.DBSYSTEMVALUES_OTHER_SQL=KaA.SemanticAttributes=KaA.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=KaA.SEMATTRS_MESSAGE_COMPRESSED_SIZE=KaA.SEMATTRS_MESSAGE_ID=KaA.SEMATTRS_MESSAGE_TYPE=KaA.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=KaA.SEMATTRS_RPC_JSONRPC_ERROR_CODE=KaA.SEMATTRS_RPC_JSONRPC_REQUEST_ID=KaA.SEMATTRS_RPC_JSONRPC_VERSION=KaA.SEMATTRS_RPC_GRPC_STATUS_CODE=KaA.SEMATTRS_RPC_METHOD=KaA.SEMATTRS_RPC_SERVICE=KaA.SEMATTRS_RPC_SYSTEM=KaA.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=KaA.SEMATTRS_MESSAGING_KAFKA_PARTITION=KaA.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=KaA.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=KaA.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=KaA.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=KaA.SEMATTRS_MESSAGING_CONSUMER_ID=KaA.SEMATTRS_MESSAGING_OPERATION=KaA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=KaA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=KaA.SEMATTRS_MESSAGING_CONVERSATION_ID=KaA.SEMATTRS_MESSAGING_MESSAGE_ID=KaA.SEMATTRS_MESSAGING_URL=KaA.SEMATTRS_MESSAGING_PROTOCOL_VERSION=KaA.SEMATTRS_MESSAGING_PROTOCOL=KaA.SEMATTRS_MESSAGING_TEMP_DESTINATION=void 0;KaA.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=KaA.FaasDocumentOperationValues=KaA.FAASDOCUMENTOPERATIONVALUES_DELETE=KaA.FAASDOCUMENTOPERATIONVALUES_EDIT=KaA.FAASDOCUMENTOPERATIONVALUES_INSERT=KaA.FaasTriggerValues=KaA.FAASTRIGGERVALUES_OTHER=KaA.FAASTRIGGERVALUES_TIMER=KaA.FAASTRIGGERVALUES_PUBSUB=KaA.FAASTRIGGERVALUES_HTTP=KaA.FAASTRIGGERVALUES_DATASOURCE=KaA.DbCassandraConsistencyLevelValues=KaA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=KaA.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=KaA.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=KaA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=KaA.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=KaA.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=KaA.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=KaA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=KaA.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=KaA.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=KaA.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=KaA.DbSystemValues=KaA.DBSYSTEMVALUES_COCKROACHDB=KaA.DBSYSTEMVALUES_MEMCACHED=KaA.DBSYSTEMVALUES_ELASTICSEARCH=KaA.DBSYSTEMVALUES_GEODE=KaA.DBSYSTEMVALUES_NEO4J=KaA.DBSYSTEMVALUES_DYNAMODB=KaA.DBSYSTEMVALUES_COSMOSDB=KaA.DBSYSTEMVALUES_COUCHDB=KaA.DBSYSTEMVALUES_COUCHBASE=KaA.DBSYSTEMVALUES_REDIS=KaA.DBSYSTEMVALUES_MONGODB=KaA.DBSYSTEMVALUES_HBASE=KaA.DBSYSTEMVALUES_CASSANDRA=KaA.DBSYSTEMVALUES_COLDFUSION=KaA.DBSYSTEMVALUES_H2=KaA.DBSYSTEMVALUES_VERTICA=KaA.DBSYSTEMVALUES_TERADATA=KaA.DBSYSTEMVALUES_SYBASE=KaA.DBSYSTEMVALUES_SQLITE=KaA.DBSYSTEMVALUES_POINTBASE=KaA.DBSYSTEMVALUES_PERVASIVE=KaA.DBSYSTEMVALUES_NETEZZA=KaA.DBSYSTEMVALUES_MARIADB=KaA.DBSYSTEMVALUES_INTERBASE=KaA.DBSYSTEMVALUES_INSTANTDB=KaA.DBSYSTEMVALUES_INFORMIX=void 0;KaA.MESSAGINGOPERATIONVALUES_RECEIVE=KaA.MessagingDestinationKindValues=KaA.MESSAGINGDESTINATIONKINDVALUES_TOPIC=KaA.MESSAGINGDESTINATIONKINDVALUES_QUEUE=KaA.HttpFlavorValues=KaA.HTTPFLAVORVALUES_QUIC=KaA.HTTPFLAVORVALUES_SPDY=KaA.HTTPFLAVORVALUES_HTTP_2_0=KaA.HTTPFLAVORVALUES_HTTP_1_1=KaA.HTTPFLAVORVALUES_HTTP_1_0=KaA.NetHostConnectionSubtypeValues=KaA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=KaA.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=KaA.NETHOSTCONNECTIONSUBTYPEVALUES_NR=KaA.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=KaA.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=KaA.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=KaA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=KaA.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=KaA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=KaA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=KaA.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=KaA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=KaA.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=KaA.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=KaA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=KaA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=KaA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=KaA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=KaA.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=KaA.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=KaA.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=KaA.NetHostConnectionTypeValues=KaA.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=KaA.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=KaA.NETHOSTCONNECTIONTYPEVALUES_CELL=KaA.NETHOSTCONNECTIONTYPEVALUES_WIRED=KaA.NETHOSTCONNECTIONTYPEVALUES_WIFI=KaA.NetTransportValues=KaA.NETTRANSPORTVALUES_OTHER=KaA.NETTRANSPORTVALUES_INPROC=KaA.NETTRANSPORTVALUES_PIPE=KaA.NETTRANSPORTVALUES_UNIX=KaA.NETTRANSPORTVALUES_IP=KaA.NETTRANSPORTVALUES_IP_UDP=KaA.NETTRANSPORTVALUES_IP_TCP=KaA.FaasInvokedProviderValues=KaA.FAASINVOKEDPROVIDERVALUES_GCP=KaA.FAASINVOKEDPROVIDERVALUES_AZURE=KaA.FAASINVOKEDPROVIDERVALUES_AWS=void 0;KaA.MessageTypeValues=KaA.MESSAGETYPEVALUES_RECEIVED=KaA.MESSAGETYPEVALUES_SENT=KaA.RpcGrpcStatusCodeValues=KaA.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=KaA.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=KaA.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=KaA.RPCGRPCSTATUSCODEVALUES_INTERNAL=KaA.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=KaA.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=KaA.RPCGRPCSTATUSCODEVALUES_ABORTED=KaA.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=KaA.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=KaA.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=KaA.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=KaA.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=KaA.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=KaA.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=KaA.RPCGRPCSTATUSCODEVALUES_UNKNOWN=KaA.RPCGRPCSTATUSCODEVALUES_CANCELLED=KaA.RPCGRPCSTATUSCODEVALUES_OK=KaA.MessagingOperationValues=KaA.MESSAGINGOPERATIONVALUES_PROCESS=void 0;var g5=Mp(),wpA="aws.lambda.invoked_arn",jpA="db.system",OpA="db.connection_string",PpA="db.user",TpA="db.jdbc.driver_classname",SpA="db.name",kpA="db.statement",_pA="db.operation",vpA="db.mssql.instance_name",ypA="db.cassandra.keyspace",gpA="db.cassandra.page_size",hpA="db.cassandra.consistency_level",xpA="db.cassandra.table",fpA="db.cassandra.idempotence",bpA="db.cassandra.speculative_execution_count",mpA="db.cassandra.coordinator.id",upA="db.cassandra.coordinator.dc",dpA="db.hbase.namespace",cpA="db.redis.database_index",lpA="db.mongodb.collection",ppA="db.sql.table",ipA="exception.type",npA="exception.message",spA="exception.stacktrace",rpA="exception.escaped",apA="faas.trigger",opA="faas.execution",tpA="faas.document.collection",epA="faas.document.operation",AiA="faas.document.time",QiA="faas.document.name",BiA="faas.time",YiA="faas.cron",JiA="faas.coldstart",CiA="faas.invoked_name",XiA="faas.invoked_provider",GiA="faas.invoked_region",FiA="net.transport",WiA="net.peer.ip",ZiA="net.peer.port",$iA="net.peer.name",UiA="net.host.ip",EiA="net.host.port",KiA="net.host.name",ViA="net.host.connection.type",IiA="net.host.connection.subtype",HiA="net.host.carrier.name",DiA="net.host.carrier.mcc",NiA="net.host.carrier.mnc",LiA="net.host.carrier.icc",qiA="peer.service",MiA="enduser.id",ziA="enduser.role",RiA="enduser.scope",wiA="thread.id",jiA="thread.name",OiA="code.function",PiA="code.namespace",TiA="code.filepath",SiA="code.lineno",kiA="http.method",_iA="http.url",viA="http.target",yiA="http.host",giA="http.scheme",hiA="http.status_code",xiA="http.flavor",fiA="http.user_agent",biA="http.request_content_length",miA="http.request_content_length_uncompressed",uiA="http.response_content_length",diA="http.response_content_length_uncompressed",ciA="http.server_name",liA="http.route",piA="http.client_ip",iiA="aws.dynamodb.table_names",niA="aws.dynamodb.consumed_capacity",siA="aws.dynamodb.item_collection_metrics",riA="aws.dynamodb.provisioned_read_capacity",aiA="aws.dynamodb.provisioned_write_capacity",oiA="aws.dynamodb.consistent_read",tiA="aws.dynamodb.projection",eiA="aws.dynamodb.limit",AnA="aws.dynamodb.attributes_to_get",QnA="aws.dynamodb.index_name",BnA="aws.dynamodb.select",YnA="aws.dynamodb.global_secondary_indexes",JnA="aws.dynamodb.local_secondary_indexes",CnA="aws.dynamodb.exclusive_start_table",XnA="aws.dynamodb.table_count",GnA="aws.dynamodb.scan_forward",FnA="aws.dynamodb.segment",WnA="aws.dynamodb.total_segments",ZnA="aws.dynamodb.count",$nA="aws.dynamodb.scanned_count",UnA="aws.dynamodb.attribute_definitions",EnA="aws.dynamodb.global_secondary_index_updates",KnA="messaging.system",VnA="messaging.destination",InA="messaging.destination_kind",HnA="messaging.temp_destination",DnA="messaging.protocol",NnA="messaging.protocol_version",LnA="messaging.url",qnA="messaging.message_id",MnA="messaging.conversation_id",znA="messaging.message_payload_size_bytes",RnA="messaging.message_payload_compressed_size_bytes",wnA="messaging.operation",jnA="messaging.consumer_id",OnA="messaging.rabbitmq.routing_key",PnA="messaging.kafka.message_key",TnA="messaging.kafka.consumer_group",SnA="messaging.kafka.client_id",knA="messaging.kafka.partition",_nA="messaging.kafka.tombstone",vnA="rpc.system",ynA="rpc.service",gnA="rpc.method",hnA="rpc.grpc.status_code",xnA="rpc.jsonrpc.version",fnA="rpc.jsonrpc.request_id",bnA="rpc.jsonrpc.error_code",mnA="rpc.jsonrpc.error_message",unA="message.type",dnA="message.id",cnA="message.compressed_size",lnA="message.uncompressed_size";KaA.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=wpA;KaA.SEMATTRS_DB_SYSTEM=jpA;KaA.SEMATTRS_DB_CONNECTION_STRING=OpA;KaA.SEMATTRS_DB_USER=PpA;KaA.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=TpA;KaA.SEMATTRS_DB_NAME=SpA;KaA.SEMATTRS_DB_STATEMENT=kpA;KaA.SEMATTRS_DB_OPERATION=_pA;KaA.SEMATTRS_DB_MSSQL_INSTANCE_NAME=vpA;KaA.SEMATTRS_DB_CASSANDRA_KEYSPACE=ypA;KaA.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=gpA;KaA.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=hpA;KaA.SEMATTRS_DB_CASSANDRA_TABLE=xpA;KaA.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=fpA;KaA.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=bpA;KaA.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=mpA;KaA.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=upA;KaA.SEMATTRS_DB_HBASE_NAMESPACE=dpA;KaA.SEMATTRS_DB_REDIS_DATABASE_INDEX=cpA;KaA.SEMATTRS_DB_MONGODB_COLLECTION=lpA;KaA.SEMATTRS_DB_SQL_TABLE=ppA;KaA.SEMATTRS_EXCEPTION_TYPE=ipA;KaA.SEMATTRS_EXCEPTION_MESSAGE=npA;KaA.SEMATTRS_EXCEPTION_STACKTRACE=spA;KaA.SEMATTRS_EXCEPTION_ESCAPED=rpA;KaA.SEMATTRS_FAAS_TRIGGER=apA;KaA.SEMATTRS_FAAS_EXECUTION=opA;KaA.SEMATTRS_FAAS_DOCUMENT_COLLECTION=tpA;KaA.SEMATTRS_FAAS_DOCUMENT_OPERATION=epA;KaA.SEMATTRS_FAAS_DOCUMENT_TIME=AiA;KaA.SEMATTRS_FAAS_DOCUMENT_NAME=QiA;KaA.SEMATTRS_FAAS_TIME=BiA;KaA.SEMATTRS_FAAS_CRON=YiA;KaA.SEMATTRS_FAAS_COLDSTART=JiA;KaA.SEMATTRS_FAAS_INVOKED_NAME=CiA;KaA.SEMATTRS_FAAS_INVOKED_PROVIDER=XiA;KaA.SEMATTRS_FAAS_INVOKED_REGION=GiA;KaA.SEMATTRS_NET_TRANSPORT=FiA;KaA.SEMATTRS_NET_PEER_IP=WiA;KaA.SEMATTRS_NET_PEER_PORT=ZiA;KaA.SEMATTRS_NET_PEER_NAME=$iA;KaA.SEMATTRS_NET_HOST_IP=UiA;KaA.SEMATTRS_NET_HOST_PORT=EiA;KaA.SEMATTRS_NET_HOST_NAME=KiA;KaA.SEMATTRS_NET_HOST_CONNECTION_TYPE=ViA;KaA.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=IiA;KaA.SEMATTRS_NET_HOST_CARRIER_NAME=HiA;KaA.SEMATTRS_NET_HOST_CARRIER_MCC=DiA;KaA.SEMATTRS_NET_HOST_CARRIER_MNC=NiA;KaA.SEMATTRS_NET_HOST_CARRIER_ICC=LiA;KaA.SEMATTRS_PEER_SERVICE=qiA;KaA.SEMATTRS_ENDUSER_ID=MiA;KaA.SEMATTRS_ENDUSER_ROLE=ziA;KaA.SEMATTRS_ENDUSER_SCOPE=RiA;KaA.SEMATTRS_THREAD_ID=wiA;KaA.SEMATTRS_THREAD_NAME=jiA;KaA.SEMATTRS_CODE_FUNCTION=OiA;KaA.SEMATTRS_CODE_NAMESPACE=PiA;KaA.SEMATTRS_CODE_FILEPATH=TiA;KaA.SEMATTRS_CODE_LINENO=SiA;KaA.SEMATTRS_HTTP_METHOD=kiA;KaA.SEMATTRS_HTTP_URL=_iA;KaA.SEMATTRS_HTTP_TARGET=viA;KaA.SEMATTRS_HTTP_HOST=yiA;KaA.SEMATTRS_HTTP_SCHEME=giA;KaA.SEMATTRS_HTTP_STATUS_CODE=hiA;KaA.SEMATTRS_HTTP_FLAVOR=xiA;KaA.SEMATTRS_HTTP_USER_AGENT=fiA;KaA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=biA;KaA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=miA;KaA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=uiA;KaA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=diA;KaA.SEMATTRS_HTTP_SERVER_NAME=ciA;KaA.SEMATTRS_HTTP_ROUTE=liA;KaA.SEMATTRS_HTTP_CLIENT_IP=piA;KaA.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=iiA;KaA.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=niA;KaA.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=siA;KaA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=riA;KaA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=aiA;KaA.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=oiA;KaA.SEMATTRS_AWS_DYNAMODB_PROJECTION=tiA;KaA.SEMATTRS_AWS_DYNAMODB_LIMIT=eiA;KaA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=AnA;KaA.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=QnA;KaA.SEMATTRS_AWS_DYNAMODB_SELECT=BnA;KaA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=YnA;KaA.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=JnA;KaA.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=CnA;KaA.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=XnA;KaA.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=GnA;KaA.SEMATTRS_AWS_DYNAMODB_SEGMENT=FnA;KaA.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=WnA;KaA.SEMATTRS_AWS_DYNAMODB_COUNT=ZnA;KaA.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=$nA;KaA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=UnA;KaA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=EnA;KaA.SEMATTRS_MESSAGING_SYSTEM=KnA;KaA.SEMATTRS_MESSAGING_DESTINATION=VnA;KaA.SEMATTRS_MESSAGING_DESTINATION_KIND=InA;KaA.SEMATTRS_MESSAGING_TEMP_DESTINATION=HnA;KaA.SEMATTRS_MESSAGING_PROTOCOL=DnA;KaA.SEMATTRS_MESSAGING_PROTOCOL_VERSION=NnA;KaA.SEMATTRS_MESSAGING_URL=LnA;KaA.SEMATTRS_MESSAGING_MESSAGE_ID=qnA;KaA.SEMATTRS_MESSAGING_CONVERSATION_ID=MnA;KaA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=znA;KaA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=RnA;KaA.SEMATTRS_MESSAGING_OPERATION=wnA;KaA.SEMATTRS_MESSAGING_CONSUMER_ID=jnA;KaA.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=OnA;KaA.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=PnA;KaA.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=TnA;KaA.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=SnA;KaA.SEMATTRS_MESSAGING_KAFKA_PARTITION=knA;KaA.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=_nA;KaA.SEMATTRS_RPC_SYSTEM=vnA;KaA.SEMATTRS_RPC_SERVICE=ynA;KaA.SEMATTRS_RPC_METHOD=gnA;KaA.SEMATTRS_RPC_GRPC_STATUS_CODE=hnA;KaA.SEMATTRS_RPC_JSONRPC_VERSION=xnA;KaA.SEMATTRS_RPC_JSONRPC_REQUEST_ID=fnA;KaA.SEMATTRS_RPC_JSONRPC_ERROR_CODE=bnA;KaA.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=mnA;KaA.SEMATTRS_MESSAGE_TYPE=unA;KaA.SEMATTRS_MESSAGE_ID=dnA;KaA.SEMATTRS_MESSAGE_COMPRESSED_SIZE=cnA;KaA.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=lnA;KaA.SemanticAttributes=(0,g5.createConstMap)([wpA,jpA,OpA,PpA,TpA,SpA,kpA,_pA,vpA,ypA,gpA,hpA,xpA,fpA,bpA,mpA,upA,dpA,cpA,lpA,ppA,ipA,npA,spA,rpA,apA,opA,tpA,epA,AiA,QiA,BiA,YiA,JiA,CiA,XiA,GiA,FiA,WiA,ZiA,$iA,UiA,EiA,KiA,ViA,IiA,HiA,DiA,NiA,LiA,qiA,MiA,ziA,RiA,wiA,jiA,OiA,PiA,TiA,SiA,kiA,_iA,viA,yiA,giA,hiA,xiA,fiA,biA,miA,uiA,diA,ciA,liA,piA,iiA,niA,siA,riA,aiA,oiA,tiA,eiA,AnA,QnA,BnA,YnA,JnA,CnA,XnA,GnA,FnA,WnA,ZnA,$nA,UnA,EnA,KnA,VnA,InA,HnA,DnA,NnA,LnA,qnA,MnA,znA,RnA,wnA,jnA,OnA,PnA,TnA,SnA,knA,_nA,vnA,ynA,gnA,hnA,xnA,fnA,bnA,mnA,unA,dnA,cnA,lnA]);var pnA="other_sql",inA="mssql",nnA="mysql",snA="oracle",rnA="db2",anA="postgresql",onA="redshift",tnA="hive",enA="cloudscape",AsA="hsqldb",QsA="progress",BsA="maxdb",YsA="hanadb",JsA="ingres",CsA="firstsql",XsA="edb",GsA="cache",FsA="adabas",WsA="firebird",ZsA="derby",$sA="filemaker",UsA="informix",EsA="instantdb",KsA="interbase",VsA="mariadb",IsA="netezza",HsA="pervasive",DsA="pointbase",NsA="sqlite",LsA="sybase",qsA="teradata",MsA="vertica",zsA="h2",RsA="coldfusion",wsA="cassandra",jsA="hbase",OsA="mongodb",PsA="redis",TsA="couchbase",SsA="couchdb",ksA="cosmosdb",_sA="dynamodb",vsA="neo4j",ysA="geode",gsA="elasticsearch",hsA="memcached",xsA="cockroachdb";KaA.DBSYSTEMVALUES_OTHER_SQL=pnA;KaA.DBSYSTEMVALUES_MSSQL=inA;KaA.DBSYSTEMVALUES_MYSQL=nnA;KaA.DBSYSTEMVALUES_ORACLE=snA;KaA.DBSYSTEMVALUES_DB2=rnA;KaA.DBSYSTEMVALUES_POSTGRESQL=anA;KaA.DBSYSTEMVALUES_REDSHIFT=onA;KaA.DBSYSTEMVALUES_HIVE=tnA;KaA.DBSYSTEMVALUES_CLOUDSCAPE=enA;KaA.DBSYSTEMVALUES_HSQLDB=AsA;KaA.DBSYSTEMVALUES_PROGRESS=QsA;KaA.DBSYSTEMVALUES_MAXDB=BsA;KaA.DBSYSTEMVALUES_HANADB=YsA;KaA.DBSYSTEMVALUES_INGRES=JsA;KaA.DBSYSTEMVALUES_FIRSTSQL=CsA;KaA.DBSYSTEMVALUES_EDB=XsA;KaA.DBSYSTEMVALUES_CACHE=GsA;KaA.DBSYSTEMVALUES_ADABAS=FsA;KaA.DBSYSTEMVALUES_FIREBIRD=WsA;KaA.DBSYSTEMVALUES_DERBY=ZsA;KaA.DBSYSTEMVALUES_FILEMAKER=$sA;KaA.DBSYSTEMVALUES_INFORMIX=UsA;KaA.DBSYSTEMVALUES_INSTANTDB=EsA;KaA.DBSYSTEMVALUES_INTERBASE=KsA;KaA.DBSYSTEMVALUES_MARIADB=VsA;KaA.DBSYSTEMVALUES_NETEZZA=IsA;KaA.DBSYSTEMVALUES_PERVASIVE=HsA;KaA.DBSYSTEMVALUES_POINTBASE=DsA;KaA.DBSYSTEMVALUES_SQLITE=NsA;KaA.DBSYSTEMVALUES_SYBASE=LsA;KaA.DBSYSTEMVALUES_TERADATA=qsA;KaA.DBSYSTEMVALUES_VERTICA=MsA;KaA.DBSYSTEMVALUES_H2=zsA;KaA.DBSYSTEMVALUES_COLDFUSION=RsA;KaA.DBSYSTEMVALUES_CASSANDRA=wsA;KaA.DBSYSTEMVALUES_HBASE=jsA;KaA.DBSYSTEMVALUES_MONGODB=OsA;KaA.DBSYSTEMVALUES_REDIS=PsA;KaA.DBSYSTEMVALUES_COUCHBASE=TsA;KaA.DBSYSTEMVALUES_COUCHDB=SsA;KaA.DBSYSTEMVALUES_COSMOSDB=ksA;KaA.DBSYSTEMVALUES_DYNAMODB=_sA;KaA.DBSYSTEMVALUES_NEO4J=vsA;KaA.DBSYSTEMVALUES_GEODE=ysA;KaA.DBSYSTEMVALUES_ELASTICSEARCH=gsA;KaA.DBSYSTEMVALUES_MEMCACHED=hsA;KaA.DBSYSTEMVALUES_COCKROACHDB=xsA;KaA.DbSystemValues=(0,g5.createConstMap)([pnA,inA,nnA,snA,rnA,anA,onA,tnA,enA,AsA,QsA,BsA,YsA,JsA,CsA,XsA,GsA,FsA,WsA,ZsA,$sA,UsA,EsA,KsA,VsA,IsA,HsA,DsA,NsA,LsA,qsA,MsA,zsA,RsA,wsA,jsA,OsA,PsA,TsA,SsA,ksA,_sA,vsA,ysA,gsA,hsA,xsA]);var fsA="all",bsA="each_quorum",msA="quorum",usA="local_quorum",dsA="one",csA="two",lsA="three",psA="local_one",isA="any",nsA="serial",ssA="local_serial";KaA.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=fsA;KaA.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=bsA;KaA.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=msA;KaA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=usA;KaA.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=dsA;KaA.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=csA;KaA.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=lsA;KaA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=psA;KaA.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=isA;KaA.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=nsA;KaA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=ssA;KaA.DbCassandraConsistencyLevelValues=(0,g5.createConstMap)([fsA,bsA,msA,usA,dsA,csA,lsA,psA,isA,nsA,ssA]);var rsA="datasource",asA="http",osA="pubsub",tsA="timer",esA="other";KaA.FAASTRIGGERVALUES_DATASOURCE=rsA;KaA.FAASTRIGGERVALUES_HTTP=asA;KaA.FAASTRIGGERVALUES_PUBSUB=osA;KaA.FAASTRIGGERVALUES_TIMER=tsA;KaA.FAASTRIGGERVALUES_OTHER=esA;KaA.FaasTriggerValues=(0,g5.createConstMap)([rsA,asA,osA,tsA,esA]);var ArA="insert",QrA="edit",BrA="delete";KaA.FAASDOCUMENTOPERATIONVALUES_INSERT=ArA;KaA.FAASDOCUMENTOPERATIONVALUES_EDIT=QrA;KaA.FAASDOCUMENTOPERATIONVALUES_DELETE=BrA;KaA.FaasDocumentOperationValues=(0,g5.createConstMap)([ArA,QrA,BrA]);var YrA="alibaba_cloud",JrA="aws",CrA="azure",XrA="gcp";KaA.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=YrA;KaA.FAASINVOKEDPROVIDERVALUES_AWS=JrA;KaA.FAASINVOKEDPROVIDERVALUES_AZURE=CrA;KaA.FAASINVOKEDPROVIDERVALUES_GCP=XrA;KaA.FaasInvokedProviderValues=(0,g5.createConstMap)([YrA,JrA,CrA,XrA]);var GrA="ip_tcp",FrA="ip_udp",WrA="ip",ZrA="unix",$rA="pipe",UrA="inproc",ErA="other";KaA.NETTRANSPORTVALUES_IP_TCP=GrA;KaA.NETTRANSPORTVALUES_IP_UDP=FrA;KaA.NETTRANSPORTVALUES_IP=WrA;KaA.NETTRANSPORTVALUES_UNIX=ZrA;KaA.NETTRANSPORTVALUES_PIPE=$rA;KaA.NETTRANSPORTVALUES_INPROC=UrA;KaA.NETTRANSPORTVALUES_OTHER=ErA;KaA.NetTransportValues=(0,g5.createConstMap)([GrA,FrA,WrA,ZrA,$rA,UrA,ErA]);var KrA="wifi",VrA="wired",IrA="cell",HrA="unavailable",DrA="unknown";KaA.NETHOSTCONNECTIONTYPEVALUES_WIFI=KrA;KaA.NETHOSTCONNECTIONTYPEVALUES_WIRED=VrA;KaA.NETHOSTCONNECTIONTYPEVALUES_CELL=IrA;KaA.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=HrA;KaA.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=DrA;KaA.NetHostConnectionTypeValues=(0,g5.createConstMap)([KrA,VrA,IrA,HrA,DrA]);var NrA="gprs",LrA="edge",qrA="umts",MrA="cdma",zrA="evdo_0",RrA="evdo_a",wrA="cdma2000_1xrtt",jrA="hsdpa",OrA="hsupa",PrA="hspa",TrA="iden",SrA="evdo_b",krA="lte",_rA="ehrpd",vrA="hspap",yrA="gsm",grA="td_scdma",hrA="iwlan",xrA="nr",frA="nrnsa",brA="lte_ca";KaA.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=NrA;KaA.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=LrA;KaA.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=qrA;KaA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=MrA;KaA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=zrA;KaA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=RrA;KaA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=wrA;KaA.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=jrA;KaA.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=OrA;KaA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=PrA;KaA.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=TrA;KaA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=SrA;KaA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=krA;KaA.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=_rA;KaA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=vrA;KaA.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=yrA;KaA.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=grA;KaA.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=hrA;KaA.NETHOSTCONNECTIONSUBTYPEVALUES_NR=xrA;KaA.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=frA;KaA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=brA;KaA.NetHostConnectionSubtypeValues=(0,g5.createConstMap)([NrA,LrA,qrA,MrA,zrA,RrA,wrA,jrA,OrA,PrA,TrA,SrA,krA,_rA,vrA,yrA,grA,hrA,xrA,frA,brA]);var mrA="1.0",urA="1.1",drA="2.0",crA="SPDY",lrA="QUIC";KaA.HTTPFLAVORVALUES_HTTP_1_0=mrA;KaA.HTTPFLAVORVALUES_HTTP_1_1=urA;KaA.HTTPFLAVORVALUES_HTTP_2_0=drA;KaA.HTTPFLAVORVALUES_SPDY=crA;KaA.HTTPFLAVORVALUES_QUIC=lrA;KaA.HttpFlavorValues={HTTP_1_0:mrA,HTTP_1_1:urA,HTTP_2_0:drA,SPDY:crA,QUIC:lrA};var prA="queue",irA="topic";KaA.MESSAGINGDESTINATIONKINDVALUES_QUEUE=prA;KaA.MESSAGINGDESTINATIONKINDVALUES_TOPIC=irA;KaA.MessagingDestinationKindValues=(0,g5.createConstMap)([prA,irA]);var nrA="receive",srA="process";KaA.MESSAGINGOPERATIONVALUES_RECEIVE=nrA;KaA.MESSAGINGOPERATIONVALUES_PROCESS=srA;KaA.MessagingOperationValues=(0,g5.createConstMap)([nrA,srA]);var rrA=0,arA=1,orA=2,trA=3,erA=4,AaA=5,QaA=6,BaA=7,YaA=8,JaA=9,CaA=10,XaA=11,GaA=12,FaA=13,WaA=14,ZaA=15,$aA=16;KaA.RPCGRPCSTATUSCODEVALUES_OK=rrA;KaA.RPCGRPCSTATUSCODEVALUES_CANCELLED=arA;KaA.RPCGRPCSTATUSCODEVALUES_UNKNOWN=orA;KaA.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=trA;KaA.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=erA;KaA.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=AaA;KaA.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=QaA;KaA.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=BaA;KaA.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=YaA;KaA.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=JaA;KaA.RPCGRPCSTATUSCODEVALUES_ABORTED=CaA;KaA.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=XaA;KaA.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=GaA;KaA.RPCGRPCSTATUSCODEVALUES_INTERNAL=FaA;KaA.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=WaA;KaA.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=ZaA;KaA.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=$aA;KaA.RpcGrpcStatusCodeValues={OK:rrA,CANCELLED:arA,UNKNOWN:orA,INVALID_ARGUMENT:trA,DEADLINE_EXCEEDED:erA,NOT_FOUND:AaA,ALREADY_EXISTS:QaA,PERMISSION_DENIED:BaA,RESOURCE_EXHAUSTED:YaA,FAILED_PRECONDITION:JaA,ABORTED:CaA,OUT_OF_RANGE:XaA,UNIMPLEMENTED:GaA,INTERNAL:FaA,UNAVAILABLE:WaA,DATA_LOSS:ZaA,UNAUTHENTICATED:$aA};var UaA="SENT",EaA="RECEIVED";KaA.MESSAGETYPEVALUES_SENT=UaA;KaA.MESSAGETYPEVALUES_RECEIVED=EaA;KaA.MessageTypeValues=(0,g5.createConstMap)([UaA,EaA])});var MaA=R((oZ)=>{var hrB=oZ&&oZ.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;var J=Object.getOwnPropertyDescriptor(Q,B);if(!J||("get"in J?!Q.__esModule:J.writable||J.configurable))J={enumerable:!0,get:function(){return Q[B]}};Object.defineProperty(A,Y,J)}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),xrB=oZ&&oZ.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))hrB(Q,A,B)};Object.defineProperty(oZ,"__esModule",{value:!0});xrB(qaA(),oZ)});var otA=R((ntA)=>{Object.defineProperty(ntA,"__esModule",{value:!0});ntA.SEMRESATTRS_K8S_STATEFULSET_NAME=ntA.SEMRESATTRS_K8S_STATEFULSET_UID=ntA.SEMRESATTRS_K8S_DEPLOYMENT_NAME=ntA.SEMRESATTRS_K8S_DEPLOYMENT_UID=ntA.SEMRESATTRS_K8S_REPLICASET_NAME=ntA.SEMRESATTRS_K8S_REPLICASET_UID=ntA.SEMRESATTRS_K8S_CONTAINER_NAME=ntA.SEMRESATTRS_K8S_POD_NAME=ntA.SEMRESATTRS_K8S_POD_UID=ntA.SEMRESATTRS_K8S_NAMESPACE_NAME=ntA.SEMRESATTRS_K8S_NODE_UID=ntA.SEMRESATTRS_K8S_NODE_NAME=ntA.SEMRESATTRS_K8S_CLUSTER_NAME=ntA.SEMRESATTRS_HOST_IMAGE_VERSION=ntA.SEMRESATTRS_HOST_IMAGE_ID=ntA.SEMRESATTRS_HOST_IMAGE_NAME=ntA.SEMRESATTRS_HOST_ARCH=ntA.SEMRESATTRS_HOST_TYPE=ntA.SEMRESATTRS_HOST_NAME=ntA.SEMRESATTRS_HOST_ID=ntA.SEMRESATTRS_FAAS_MAX_MEMORY=ntA.SEMRESATTRS_FAAS_INSTANCE=ntA.SEMRESATTRS_FAAS_VERSION=ntA.SEMRESATTRS_FAAS_ID=ntA.SEMRESATTRS_FAAS_NAME=ntA.SEMRESATTRS_DEVICE_MODEL_NAME=ntA.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=ntA.SEMRESATTRS_DEVICE_ID=ntA.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=ntA.SEMRESATTRS_CONTAINER_IMAGE_TAG=ntA.SEMRESATTRS_CONTAINER_IMAGE_NAME=ntA.SEMRESATTRS_CONTAINER_RUNTIME=ntA.SEMRESATTRS_CONTAINER_ID=ntA.SEMRESATTRS_CONTAINER_NAME=ntA.SEMRESATTRS_AWS_LOG_STREAM_ARNS=ntA.SEMRESATTRS_AWS_LOG_STREAM_NAMES=ntA.SEMRESATTRS_AWS_LOG_GROUP_ARNS=ntA.SEMRESATTRS_AWS_LOG_GROUP_NAMES=ntA.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=ntA.SEMRESATTRS_AWS_ECS_TASK_REVISION=ntA.SEMRESATTRS_AWS_ECS_TASK_FAMILY=ntA.SEMRESATTRS_AWS_ECS_TASK_ARN=ntA.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=ntA.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=ntA.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=ntA.SEMRESATTRS_CLOUD_PLATFORM=ntA.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=ntA.SEMRESATTRS_CLOUD_REGION=ntA.SEMRESATTRS_CLOUD_ACCOUNT_ID=ntA.SEMRESATTRS_CLOUD_PROVIDER=void 0;ntA.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=ntA.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=ntA.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=ntA.CLOUDPLATFORMVALUES_AZURE_AKS=ntA.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=ntA.CLOUDPLATFORMVALUES_AZURE_VM=ntA.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=ntA.CLOUDPLATFORMVALUES_AWS_LAMBDA=ntA.CLOUDPLATFORMVALUES_AWS_EKS=ntA.CLOUDPLATFORMVALUES_AWS_ECS=ntA.CLOUDPLATFORMVALUES_AWS_EC2=ntA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=ntA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=ntA.CloudProviderValues=ntA.CLOUDPROVIDERVALUES_GCP=ntA.CLOUDPROVIDERVALUES_AZURE=ntA.CLOUDPROVIDERVALUES_AWS=ntA.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=ntA.SemanticResourceAttributes=ntA.SEMRESATTRS_WEBENGINE_DESCRIPTION=ntA.SEMRESATTRS_WEBENGINE_VERSION=ntA.SEMRESATTRS_WEBENGINE_NAME=ntA.SEMRESATTRS_TELEMETRY_AUTO_VERSION=ntA.SEMRESATTRS_TELEMETRY_SDK_VERSION=ntA.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=ntA.SEMRESATTRS_TELEMETRY_SDK_NAME=ntA.SEMRESATTRS_SERVICE_VERSION=ntA.SEMRESATTRS_SERVICE_INSTANCE_ID=ntA.SEMRESATTRS_SERVICE_NAMESPACE=ntA.SEMRESATTRS_SERVICE_NAME=ntA.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=ntA.SEMRESATTRS_PROCESS_RUNTIME_VERSION=ntA.SEMRESATTRS_PROCESS_RUNTIME_NAME=ntA.SEMRESATTRS_PROCESS_OWNER=ntA.SEMRESATTRS_PROCESS_COMMAND_ARGS=ntA.SEMRESATTRS_PROCESS_COMMAND_LINE=ntA.SEMRESATTRS_PROCESS_COMMAND=ntA.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=ntA.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=ntA.SEMRESATTRS_PROCESS_PID=ntA.SEMRESATTRS_OS_VERSION=ntA.SEMRESATTRS_OS_NAME=ntA.SEMRESATTRS_OS_DESCRIPTION=ntA.SEMRESATTRS_OS_TYPE=ntA.SEMRESATTRS_K8S_CRONJOB_NAME=ntA.SEMRESATTRS_K8S_CRONJOB_UID=ntA.SEMRESATTRS_K8S_JOB_NAME=ntA.SEMRESATTRS_K8S_JOB_UID=ntA.SEMRESATTRS_K8S_DAEMONSET_NAME=ntA.SEMRESATTRS_K8S_DAEMONSET_UID=void 0;ntA.TelemetrySdkLanguageValues=ntA.TELEMETRYSDKLANGUAGEVALUES_WEBJS=ntA.TELEMETRYSDKLANGUAGEVALUES_RUBY=ntA.TELEMETRYSDKLANGUAGEVALUES_PYTHON=ntA.TELEMETRYSDKLANGUAGEVALUES_PHP=ntA.TELEMETRYSDKLANGUAGEVALUES_NODEJS=ntA.TELEMETRYSDKLANGUAGEVALUES_JAVA=ntA.TELEMETRYSDKLANGUAGEVALUES_GO=ntA.TELEMETRYSDKLANGUAGEVALUES_ERLANG=ntA.TELEMETRYSDKLANGUAGEVALUES_DOTNET=ntA.TELEMETRYSDKLANGUAGEVALUES_CPP=ntA.OsTypeValues=ntA.OSTYPEVALUES_Z_OS=ntA.OSTYPEVALUES_SOLARIS=ntA.OSTYPEVALUES_AIX=ntA.OSTYPEVALUES_HPUX=ntA.OSTYPEVALUES_DRAGONFLYBSD=ntA.OSTYPEVALUES_OPENBSD=ntA.OSTYPEVALUES_NETBSD=ntA.OSTYPEVALUES_FREEBSD=ntA.OSTYPEVALUES_DARWIN=ntA.OSTYPEVALUES_LINUX=ntA.OSTYPEVALUES_WINDOWS=ntA.HostArchValues=ntA.HOSTARCHVALUES_X86=ntA.HOSTARCHVALUES_PPC64=ntA.HOSTARCHVALUES_PPC32=ntA.HOSTARCHVALUES_IA64=ntA.HOSTARCHVALUES_ARM64=ntA.HOSTARCHVALUES_ARM32=ntA.HOSTARCHVALUES_AMD64=ntA.AwsEcsLaunchtypeValues=ntA.AWSECSLAUNCHTYPEVALUES_FARGATE=ntA.AWSECSLAUNCHTYPEVALUES_EC2=ntA.CloudPlatformValues=ntA.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=ntA.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=ntA.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=ntA.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=void 0;var tZ=Mp(),zaA="cloud.provider",RaA="cloud.account.id",waA="cloud.region",jaA="cloud.availability_zone",OaA="cloud.platform",PaA="aws.ecs.container.arn",TaA="aws.ecs.cluster.arn",SaA="aws.ecs.launchtype",kaA="aws.ecs.task.arn",_aA="aws.ecs.task.family",vaA="aws.ecs.task.revision",yaA="aws.eks.cluster.arn",gaA="aws.log.group.names",haA="aws.log.group.arns",xaA="aws.log.stream.names",faA="aws.log.stream.arns",baA="container.name",maA="container.id",uaA="container.runtime",daA="container.image.name",caA="container.image.tag",laA="deployment.environment",paA="device.id",iaA="device.model.identifier",naA="device.model.name",saA="faas.name",raA="faas.id",aaA="faas.version",oaA="faas.instance",taA="faas.max_memory",eaA="host.id",AoA="host.name",QoA="host.type",BoA="host.arch",YoA="host.image.name",JoA="host.image.id",CoA="host.image.version",XoA="k8s.cluster.name",GoA="k8s.node.name",FoA="k8s.node.uid",WoA="k8s.namespace.name",ZoA="k8s.pod.uid",$oA="k8s.pod.name",UoA="k8s.container.name",EoA="k8s.replicaset.uid",KoA="k8s.replicaset.name",VoA="k8s.deployment.uid",IoA="k8s.deployment.name",HoA="k8s.statefulset.uid",DoA="k8s.statefulset.name",NoA="k8s.daemonset.uid",LoA="k8s.daemonset.name",qoA="k8s.job.uid",MoA="k8s.job.name",zoA="k8s.cronjob.uid",RoA="k8s.cronjob.name",woA="os.type",joA="os.description",OoA="os.name",PoA="os.version",ToA="process.pid",SoA="process.executable.name",koA="process.executable.path",_oA="process.command",voA="process.command_line",yoA="process.command_args",goA="process.owner",hoA="process.runtime.name",xoA="process.runtime.version",foA="process.runtime.description",boA="service.name",moA="service.namespace",uoA="service.instance.id",doA="service.version",coA="telemetry.sdk.name",loA="telemetry.sdk.language",poA="telemetry.sdk.version",ioA="telemetry.auto.version",noA="webengine.name",soA="webengine.version",roA="webengine.description";ntA.SEMRESATTRS_CLOUD_PROVIDER=zaA;ntA.SEMRESATTRS_CLOUD_ACCOUNT_ID=RaA;ntA.SEMRESATTRS_CLOUD_REGION=waA;ntA.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=jaA;ntA.SEMRESATTRS_CLOUD_PLATFORM=OaA;ntA.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=PaA;ntA.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=TaA;ntA.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=SaA;ntA.SEMRESATTRS_AWS_ECS_TASK_ARN=kaA;ntA.SEMRESATTRS_AWS_ECS_TASK_FAMILY=_aA;ntA.SEMRESATTRS_AWS_ECS_TASK_REVISION=vaA;ntA.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=yaA;ntA.SEMRESATTRS_AWS_LOG_GROUP_NAMES=gaA;ntA.SEMRESATTRS_AWS_LOG_GROUP_ARNS=haA;ntA.SEMRESATTRS_AWS_LOG_STREAM_NAMES=xaA;ntA.SEMRESATTRS_AWS_LOG_STREAM_ARNS=faA;ntA.SEMRESATTRS_CONTAINER_NAME=baA;ntA.SEMRESATTRS_CONTAINER_ID=maA;ntA.SEMRESATTRS_CONTAINER_RUNTIME=uaA;ntA.SEMRESATTRS_CONTAINER_IMAGE_NAME=daA;ntA.SEMRESATTRS_CONTAINER_IMAGE_TAG=caA;ntA.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=laA;ntA.SEMRESATTRS_DEVICE_ID=paA;ntA.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=iaA;ntA.SEMRESATTRS_DEVICE_MODEL_NAME=naA;ntA.SEMRESATTRS_FAAS_NAME=saA;ntA.SEMRESATTRS_FAAS_ID=raA;ntA.SEMRESATTRS_FAAS_VERSION=aaA;ntA.SEMRESATTRS_FAAS_INSTANCE=oaA;ntA.SEMRESATTRS_FAAS_MAX_MEMORY=taA;ntA.SEMRESATTRS_HOST_ID=eaA;ntA.SEMRESATTRS_HOST_NAME=AoA;ntA.SEMRESATTRS_HOST_TYPE=QoA;ntA.SEMRESATTRS_HOST_ARCH=BoA;ntA.SEMRESATTRS_HOST_IMAGE_NAME=YoA;ntA.SEMRESATTRS_HOST_IMAGE_ID=JoA;ntA.SEMRESATTRS_HOST_IMAGE_VERSION=CoA;ntA.SEMRESATTRS_K8S_CLUSTER_NAME=XoA;ntA.SEMRESATTRS_K8S_NODE_NAME=GoA;ntA.SEMRESATTRS_K8S_NODE_UID=FoA;ntA.SEMRESATTRS_K8S_NAMESPACE_NAME=WoA;ntA.SEMRESATTRS_K8S_POD_UID=ZoA;ntA.SEMRESATTRS_K8S_POD_NAME=$oA;ntA.SEMRESATTRS_K8S_CONTAINER_NAME=UoA;ntA.SEMRESATTRS_K8S_REPLICASET_UID=EoA;ntA.SEMRESATTRS_K8S_REPLICASET_NAME=KoA;ntA.SEMRESATTRS_K8S_DEPLOYMENT_UID=VoA;ntA.SEMRESATTRS_K8S_DEPLOYMENT_NAME=IoA;ntA.SEMRESATTRS_K8S_STATEFULSET_UID=HoA;ntA.SEMRESATTRS_K8S_STATEFULSET_NAME=DoA;ntA.SEMRESATTRS_K8S_DAEMONSET_UID=NoA;ntA.SEMRESATTRS_K8S_DAEMONSET_NAME=LoA;ntA.SEMRESATTRS_K8S_JOB_UID=qoA;ntA.SEMRESATTRS_K8S_JOB_NAME=MoA;ntA.SEMRESATTRS_K8S_CRONJOB_UID=zoA;ntA.SEMRESATTRS_K8S_CRONJOB_NAME=RoA;ntA.SEMRESATTRS_OS_TYPE=woA;ntA.SEMRESATTRS_OS_DESCRIPTION=joA;ntA.SEMRESATTRS_OS_NAME=OoA;ntA.SEMRESATTRS_OS_VERSION=PoA;ntA.SEMRESATTRS_PROCESS_PID=ToA;ntA.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=SoA;ntA.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=koA;ntA.SEMRESATTRS_PROCESS_COMMAND=_oA;ntA.SEMRESATTRS_PROCESS_COMMAND_LINE=voA;ntA.SEMRESATTRS_PROCESS_COMMAND_ARGS=yoA;ntA.SEMRESATTRS_PROCESS_OWNER=goA;ntA.SEMRESATTRS_PROCESS_RUNTIME_NAME=hoA;ntA.SEMRESATTRS_PROCESS_RUNTIME_VERSION=xoA;ntA.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=foA;ntA.SEMRESATTRS_SERVICE_NAME=boA;ntA.SEMRESATTRS_SERVICE_NAMESPACE=moA;ntA.SEMRESATTRS_SERVICE_INSTANCE_ID=uoA;ntA.SEMRESATTRS_SERVICE_VERSION=doA;ntA.SEMRESATTRS_TELEMETRY_SDK_NAME=coA;ntA.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=loA;ntA.SEMRESATTRS_TELEMETRY_SDK_VERSION=poA;ntA.SEMRESATTRS_TELEMETRY_AUTO_VERSION=ioA;ntA.SEMRESATTRS_WEBENGINE_NAME=noA;ntA.SEMRESATTRS_WEBENGINE_VERSION=soA;ntA.SEMRESATTRS_WEBENGINE_DESCRIPTION=roA;ntA.SemanticResourceAttributes=(0,tZ.createConstMap)([zaA,RaA,waA,jaA,OaA,PaA,TaA,SaA,kaA,_aA,vaA,yaA,gaA,haA,xaA,faA,baA,maA,uaA,daA,caA,laA,paA,iaA,naA,saA,raA,aaA,oaA,taA,eaA,AoA,QoA,BoA,YoA,JoA,CoA,XoA,GoA,FoA,WoA,ZoA,$oA,UoA,EoA,KoA,VoA,IoA,HoA,DoA,NoA,LoA,qoA,MoA,zoA,RoA,woA,joA,OoA,PoA,ToA,SoA,koA,_oA,voA,yoA,goA,hoA,xoA,foA,boA,moA,uoA,doA,coA,loA,poA,ioA,noA,soA,roA]);var aoA="alibaba_cloud",ooA="aws",toA="azure",eoA="gcp";ntA.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=aoA;ntA.CLOUDPROVIDERVALUES_AWS=ooA;ntA.CLOUDPROVIDERVALUES_AZURE=toA;ntA.CLOUDPROVIDERVALUES_GCP=eoA;ntA.CloudProviderValues=(0,tZ.createConstMap)([aoA,ooA,toA,eoA]);var AtA="alibaba_cloud_ecs",QtA="alibaba_cloud_fc",BtA="aws_ec2",YtA="aws_ecs",JtA="aws_eks",CtA="aws_lambda",XtA="aws_elastic_beanstalk",GtA="azure_vm",FtA="azure_container_instances",WtA="azure_aks",ZtA="azure_functions",$tA="azure_app_service",UtA="gcp_compute_engine",EtA="gcp_cloud_run",KtA="gcp_kubernetes_engine",VtA="gcp_cloud_functions",ItA="gcp_app_engine";ntA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=AtA;ntA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=QtA;ntA.CLOUDPLATFORMVALUES_AWS_EC2=BtA;ntA.CLOUDPLATFORMVALUES_AWS_ECS=YtA;ntA.CLOUDPLATFORMVALUES_AWS_EKS=JtA;ntA.CLOUDPLATFORMVALUES_AWS_LAMBDA=CtA;ntA.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=XtA;ntA.CLOUDPLATFORMVALUES_AZURE_VM=GtA;ntA.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=FtA;ntA.CLOUDPLATFORMVALUES_AZURE_AKS=WtA;ntA.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=ZtA;ntA.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=$tA;ntA.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=UtA;ntA.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=EtA;ntA.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=KtA;ntA.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=VtA;ntA.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=ItA;ntA.CloudPlatformValues=(0,tZ.createConstMap)([AtA,QtA,BtA,YtA,JtA,CtA,XtA,GtA,FtA,WtA,ZtA,$tA,UtA,EtA,KtA,VtA,ItA]);var HtA="ec2",DtA="fargate";ntA.AWSECSLAUNCHTYPEVALUES_EC2=HtA;ntA.AWSECSLAUNCHTYPEVALUES_FARGATE=DtA;ntA.AwsEcsLaunchtypeValues=(0,tZ.createConstMap)([HtA,DtA]);var NtA="amd64",LtA="arm32",qtA="arm64",MtA="ia64",ztA="ppc32",RtA="ppc64",wtA="x86";ntA.HOSTARCHVALUES_AMD64=NtA;ntA.HOSTARCHVALUES_ARM32=LtA;ntA.HOSTARCHVALUES_ARM64=qtA;ntA.HOSTARCHVALUES_IA64=MtA;ntA.HOSTARCHVALUES_PPC32=ztA;ntA.HOSTARCHVALUES_PPC64=RtA;ntA.HOSTARCHVALUES_X86=wtA;ntA.HostArchValues=(0,tZ.createConstMap)([NtA,LtA,qtA,MtA,ztA,RtA,wtA]);var jtA="windows",OtA="linux",PtA="darwin",TtA="freebsd",StA="netbsd",ktA="openbsd",_tA="dragonflybsd",vtA="hpux",ytA="aix",gtA="solaris",htA="z_os";ntA.OSTYPEVALUES_WINDOWS=jtA;ntA.OSTYPEVALUES_LINUX=OtA;ntA.OSTYPEVALUES_DARWIN=PtA;ntA.OSTYPEVALUES_FREEBSD=TtA;ntA.OSTYPEVALUES_NETBSD=StA;ntA.OSTYPEVALUES_OPENBSD=ktA;ntA.OSTYPEVALUES_DRAGONFLYBSD=_tA;ntA.OSTYPEVALUES_HPUX=vtA;ntA.OSTYPEVALUES_AIX=ytA;ntA.OSTYPEVALUES_SOLARIS=gtA;ntA.OSTYPEVALUES_Z_OS=htA;ntA.OsTypeValues=(0,tZ.createConstMap)([jtA,OtA,PtA,TtA,StA,ktA,_tA,vtA,ytA,gtA,htA]);var xtA="cpp",ftA="dotnet",btA="erlang",mtA="go",utA="java",dtA="nodejs",ctA="php",ltA="python",ptA="ruby",itA="webjs";ntA.TELEMETRYSDKLANGUAGEVALUES_CPP=xtA;ntA.TELEMETRYSDKLANGUAGEVALUES_DOTNET=ftA;ntA.TELEMETRYSDKLANGUAGEVALUES_ERLANG=btA;ntA.TELEMETRYSDKLANGUAGEVALUES_GO=mtA;ntA.TELEMETRYSDKLANGUAGEVALUES_JAVA=utA;ntA.TELEMETRYSDKLANGUAGEVALUES_NODEJS=dtA;ntA.TELEMETRYSDKLANGUAGEVALUES_PHP=ctA;ntA.TELEMETRYSDKLANGUAGEVALUES_PYTHON=ltA;ntA.TELEMETRYSDKLANGUAGEVALUES_RUBY=ptA;ntA.TELEMETRYSDKLANGUAGEVALUES_WEBJS=itA;ntA.TelemetrySdkLanguageValues=(0,tZ.createConstMap)([xtA,ftA,btA,mtA,utA,dtA,ctA,ltA,ptA,itA])});var ttA=R((eZ)=>{var UtB=eZ&&eZ.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;var J=Object.getOwnPropertyDescriptor(Q,B);if(!J||("get"in J?!Q.__esModule:J.writable||J.configurable))J={enumerable:!0,get:function(){return Q[B]}};Object.defineProperty(A,Y,J)}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),EtB=eZ&&eZ.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))UtB(Q,A,B)};Object.defineProperty(eZ,"__esModule",{value:!0});EtB(otA(),eZ)});var YeA=R((etA)=>{Object.defineProperty(etA,"__esModule",{value:!0});etA.ATTR_HTTP_REQUEST_HEADER=etA.ATTR_EXCEPTION_TYPE=etA.ATTR_EXCEPTION_STACKTRACE=etA.ATTR_EXCEPTION_MESSAGE=etA.ATTR_EXCEPTION_ESCAPED=etA.ERROR_TYPE_VALUE_OTHER=etA.ATTR_ERROR_TYPE=etA.DOTNET_GC_HEAP_GENERATION_VALUE_POH=etA.DOTNET_GC_HEAP_GENERATION_VALUE_LOH=etA.DOTNET_GC_HEAP_GENERATION_VALUE_GEN2=etA.DOTNET_GC_HEAP_GENERATION_VALUE_GEN1=etA.DOTNET_GC_HEAP_GENERATION_VALUE_GEN0=etA.ATTR_DOTNET_GC_HEAP_GENERATION=etA.DB_SYSTEM_NAME_VALUE_POSTGRESQL=etA.DB_SYSTEM_NAME_VALUE_MYSQL=etA.DB_SYSTEM_NAME_VALUE_MICROSOFT_SQL_SERVER=etA.DB_SYSTEM_NAME_VALUE_MARIADB=etA.ATTR_DB_SYSTEM_NAME=etA.ATTR_DB_STORED_PROCEDURE_NAME=etA.ATTR_DB_RESPONSE_STATUS_CODE=etA.ATTR_DB_QUERY_TEXT=etA.ATTR_DB_QUERY_SUMMARY=etA.ATTR_DB_OPERATION_NAME=etA.ATTR_DB_OPERATION_BATCH_SIZE=etA.ATTR_DB_NAMESPACE=etA.ATTR_DB_COLLECTION_NAME=etA.ATTR_CODE_STACKTRACE=etA.ATTR_CODE_LINE_NUMBER=etA.ATTR_CODE_FUNCTION_NAME=etA.ATTR_CODE_FILE_PATH=etA.ATTR_CODE_COLUMN_NUMBER=etA.ATTR_CLIENT_PORT=etA.ATTR_CLIENT_ADDRESS=etA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS=etA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE=etA.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS=etA.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK=etA.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED=etA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED=etA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER=etA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER=etA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED=etA.ATTR_ASPNETCORE_RATE_LIMITING_RESULT=etA.ATTR_ASPNETCORE_RATE_LIMITING_POLICY=etA.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE=etA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED=etA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED=etA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED=etA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED=etA.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT=void 0;etA.OTEL_STATUS_CODE_VALUE_OK=etA.OTEL_STATUS_CODE_VALUE_ERROR=etA.ATTR_OTEL_STATUS_CODE=etA.ATTR_OTEL_SCOPE_VERSION=etA.ATTR_OTEL_SCOPE_NAME=etA.NETWORK_TYPE_VALUE_IPV6=etA.NETWORK_TYPE_VALUE_IPV4=etA.ATTR_NETWORK_TYPE=etA.NETWORK_TRANSPORT_VALUE_UNIX=etA.NETWORK_TRANSPORT_VALUE_UDP=etA.NETWORK_TRANSPORT_VALUE_TCP=etA.NETWORK_TRANSPORT_VALUE_QUIC=etA.NETWORK_TRANSPORT_VALUE_PIPE=etA.ATTR_NETWORK_TRANSPORT=etA.ATTR_NETWORK_PROTOCOL_VERSION=etA.ATTR_NETWORK_PROTOCOL_NAME=etA.ATTR_NETWORK_PEER_PORT=etA.ATTR_NETWORK_PEER_ADDRESS=etA.ATTR_NETWORK_LOCAL_PORT=etA.ATTR_NETWORK_LOCAL_ADDRESS=etA.JVM_THREAD_STATE_VALUE_WAITING=etA.JVM_THREAD_STATE_VALUE_TIMED_WAITING=etA.JVM_THREAD_STATE_VALUE_TERMINATED=etA.JVM_THREAD_STATE_VALUE_RUNNABLE=etA.JVM_THREAD_STATE_VALUE_NEW=etA.JVM_THREAD_STATE_VALUE_BLOCKED=etA.ATTR_JVM_THREAD_STATE=etA.ATTR_JVM_THREAD_DAEMON=etA.JVM_MEMORY_TYPE_VALUE_NON_HEAP=etA.JVM_MEMORY_TYPE_VALUE_HEAP=etA.ATTR_JVM_MEMORY_TYPE=etA.ATTR_JVM_MEMORY_POOL_NAME=etA.ATTR_JVM_GC_NAME=etA.ATTR_JVM_GC_ACTION=etA.ATTR_HTTP_ROUTE=etA.ATTR_HTTP_RESPONSE_STATUS_CODE=etA.ATTR_HTTP_RESPONSE_HEADER=etA.ATTR_HTTP_REQUEST_RESEND_COUNT=etA.ATTR_HTTP_REQUEST_METHOD_ORIGINAL=etA.HTTP_REQUEST_METHOD_VALUE_TRACE=etA.HTTP_REQUEST_METHOD_VALUE_PUT=etA.HTTP_REQUEST_METHOD_VALUE_POST=etA.HTTP_REQUEST_METHOD_VALUE_PATCH=etA.HTTP_REQUEST_METHOD_VALUE_OPTIONS=etA.HTTP_REQUEST_METHOD_VALUE_HEAD=etA.HTTP_REQUEST_METHOD_VALUE_GET=etA.HTTP_REQUEST_METHOD_VALUE_DELETE=etA.HTTP_REQUEST_METHOD_VALUE_CONNECT=etA.HTTP_REQUEST_METHOD_VALUE_OTHER=etA.ATTR_HTTP_REQUEST_METHOD=void 0;etA.ATTR_USER_AGENT_ORIGINAL=etA.ATTR_URL_SCHEME=etA.ATTR_URL_QUERY=etA.ATTR_URL_PATH=etA.ATTR_URL_FULL=etA.ATTR_URL_FRAGMENT=etA.ATTR_TELEMETRY_SDK_VERSION=etA.ATTR_TELEMETRY_SDK_NAME=etA.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS=etA.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT=etA.TELEMETRY_SDK_LANGUAGE_VALUE_RUST=etA.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY=etA.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON=etA.TELEMETRY_SDK_LANGUAGE_VALUE_PHP=etA.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS=etA.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA=etA.TELEMETRY_SDK_LANGUAGE_VALUE_GO=etA.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG=etA.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET=etA.TELEMETRY_SDK_LANGUAGE_VALUE_CPP=etA.ATTR_TELEMETRY_SDK_LANGUAGE=etA.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS=etA.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS=etA.SIGNALR_TRANSPORT_VALUE_LONG_POLLING=etA.ATTR_SIGNALR_TRANSPORT=etA.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT=etA.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE=etA.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN=etA.ATTR_SIGNALR_CONNECTION_STATUS=etA.ATTR_SERVICE_VERSION=etA.ATTR_SERVICE_NAME=etA.ATTR_SERVER_PORT=etA.ATTR_SERVER_ADDRESS=etA.ATTR_OTEL_STATUS_DESCRIPTION=void 0;etA.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT="aspnetcore.diagnostics.exception.result";etA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED="aborted";etA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED="handled";etA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED="skipped";etA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED="unhandled";etA.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE="aspnetcore.diagnostics.handler.type";etA.ATTR_ASPNETCORE_RATE_LIMITING_POLICY="aspnetcore.rate_limiting.policy";etA.ATTR_ASPNETCORE_RATE_LIMITING_RESULT="aspnetcore.rate_limiting.result";etA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED="acquired";etA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER="endpoint_limiter";etA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER="global_limiter";etA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED="request_canceled";etA.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED="aspnetcore.request.is_unhandled";etA.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK="aspnetcore.routing.is_fallback";etA.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS="aspnetcore.routing.match_status";etA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE="failure";etA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS="success";etA.ATTR_CLIENT_ADDRESS="client.address";etA.ATTR_CLIENT_PORT="client.port";etA.ATTR_CODE_COLUMN_NUMBER="code.column.number";etA.ATTR_CODE_FILE_PATH="code.file.path";etA.ATTR_CODE_FUNCTION_NAME="code.function.name";etA.ATTR_CODE_LINE_NUMBER="code.line.number";etA.ATTR_CODE_STACKTRACE="code.stacktrace";etA.ATTR_DB_COLLECTION_NAME="db.collection.name";etA.ATTR_DB_NAMESPACE="db.namespace";etA.ATTR_DB_OPERATION_BATCH_SIZE="db.operation.batch.size";etA.ATTR_DB_OPERATION_NAME="db.operation.name";etA.ATTR_DB_QUERY_SUMMARY="db.query.summary";etA.ATTR_DB_QUERY_TEXT="db.query.text";etA.ATTR_DB_RESPONSE_STATUS_CODE="db.response.status_code";etA.ATTR_DB_STORED_PROCEDURE_NAME="db.stored_procedure.name";etA.ATTR_DB_SYSTEM_NAME="db.system.name";etA.DB_SYSTEM_NAME_VALUE_MARIADB="mariadb";etA.DB_SYSTEM_NAME_VALUE_MICROSOFT_SQL_SERVER="microsoft.sql_server";etA.DB_SYSTEM_NAME_VALUE_MYSQL="mysql";etA.DB_SYSTEM_NAME_VALUE_POSTGRESQL="postgresql";etA.ATTR_DOTNET_GC_HEAP_GENERATION="dotnet.gc.heap.generation";etA.DOTNET_GC_HEAP_GENERATION_VALUE_GEN0="gen0";etA.DOTNET_GC_HEAP_GENERATION_VALUE_GEN1="gen1";etA.DOTNET_GC_HEAP_GENERATION_VALUE_GEN2="gen2";etA.DOTNET_GC_HEAP_GENERATION_VALUE_LOH="loh";etA.DOTNET_GC_HEAP_GENERATION_VALUE_POH="poh";etA.ATTR_ERROR_TYPE="error.type";etA.ERROR_TYPE_VALUE_OTHER="_OTHER";etA.ATTR_EXCEPTION_ESCAPED="exception.escaped";etA.ATTR_EXCEPTION_MESSAGE="exception.message";etA.ATTR_EXCEPTION_STACKTRACE="exception.stacktrace";etA.ATTR_EXCEPTION_TYPE="exception.type";var KtB=(A)=>`http.request.header.${A}`;etA.ATTR_HTTP_REQUEST_HEADER=KtB;etA.ATTR_HTTP_REQUEST_METHOD="http.request.method";etA.HTTP_REQUEST_METHOD_VALUE_OTHER="_OTHER";etA.HTTP_REQUEST_METHOD_VALUE_CONNECT="CONNECT";etA.HTTP_REQUEST_METHOD_VALUE_DELETE="DELETE";etA.HTTP_REQUEST_METHOD_VALUE_GET="GET";etA.HTTP_REQUEST_METHOD_VALUE_HEAD="HEAD";etA.HTTP_REQUEST_METHOD_VALUE_OPTIONS="OPTIONS";etA.HTTP_REQUEST_METHOD_VALUE_PATCH="PATCH";etA.HTTP_REQUEST_METHOD_VALUE_POST="POST";etA.HTTP_REQUEST_METHOD_VALUE_PUT="PUT";etA.HTTP_REQUEST_METHOD_VALUE_TRACE="TRACE";etA.ATTR_HTTP_REQUEST_METHOD_ORIGINAL="http.request.method_original";etA.ATTR_HTTP_REQUEST_RESEND_COUNT="http.request.resend_count";var VtB=(A)=>`http.response.header.${A}`;etA.ATTR_HTTP_RESPONSE_HEADER=VtB;etA.ATTR_HTTP_RESPONSE_STATUS_CODE="http.response.status_code";etA.ATTR_HTTP_ROUTE="http.route";etA.ATTR_JVM_GC_ACTION="jvm.gc.action";etA.ATTR_JVM_GC_NAME="jvm.gc.name";etA.ATTR_JVM_MEMORY_POOL_NAME="jvm.memory.pool.name";etA.ATTR_JVM_MEMORY_TYPE="jvm.memory.type";etA.JVM_MEMORY_TYPE_VALUE_HEAP="heap";etA.JVM_MEMORY_TYPE_VALUE_NON_HEAP="non_heap";etA.ATTR_JVM_THREAD_DAEMON="jvm.thread.daemon";etA.ATTR_JVM_THREAD_STATE="jvm.thread.state";etA.JVM_THREAD_STATE_VALUE_BLOCKED="blocked";etA.JVM_THREAD_STATE_VALUE_NEW="new";etA.JVM_THREAD_STATE_VALUE_RUNNABLE="runnable";etA.JVM_THREAD_STATE_VALUE_TERMINATED="terminated";etA.JVM_THREAD_STATE_VALUE_TIMED_WAITING="timed_waiting";etA.JVM_THREAD_STATE_VALUE_WAITING="waiting";etA.ATTR_NETWORK_LOCAL_ADDRESS="network.local.address";etA.ATTR_NETWORK_LOCAL_PORT="network.local.port";etA.ATTR_NETWORK_PEER_ADDRESS="network.peer.address";etA.ATTR_NETWORK_PEER_PORT="network.peer.port";etA.ATTR_NETWORK_PROTOCOL_NAME="network.protocol.name";etA.ATTR_NETWORK_PROTOCOL_VERSION="network.protocol.version";etA.ATTR_NETWORK_TRANSPORT="network.transport";etA.NETWORK_TRANSPORT_VALUE_PIPE="pipe";etA.NETWORK_TRANSPORT_VALUE_QUIC="quic";etA.NETWORK_TRANSPORT_VALUE_TCP="tcp";etA.NETWORK_TRANSPORT_VALUE_UDP="udp";etA.NETWORK_TRANSPORT_VALUE_UNIX="unix";etA.ATTR_NETWORK_TYPE="network.type";etA.NETWORK_TYPE_VALUE_IPV4="ipv4";etA.NETWORK_TYPE_VALUE_IPV6="ipv6";etA.ATTR_OTEL_SCOPE_NAME="otel.scope.name";etA.ATTR_OTEL_SCOPE_VERSION="otel.scope.version";etA.ATTR_OTEL_STATUS_CODE="otel.status_code";etA.OTEL_STATUS_CODE_VALUE_ERROR="ERROR";etA.OTEL_STATUS_CODE_VALUE_OK="OK";etA.ATTR_OTEL_STATUS_DESCRIPTION="otel.status_description";etA.ATTR_SERVER_ADDRESS="server.address";etA.ATTR_SERVER_PORT="server.port";etA.ATTR_SERVICE_NAME="service.name";etA.ATTR_SERVICE_VERSION="service.version";etA.ATTR_SIGNALR_CONNECTION_STATUS="signalr.connection.status";etA.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN="app_shutdown";etA.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE="normal_closure";etA.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT="timeout";etA.ATTR_SIGNALR_TRANSPORT="signalr.transport";etA.SIGNALR_TRANSPORT_VALUE_LONG_POLLING="long_polling";etA.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS="server_sent_events";etA.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS="web_sockets";etA.ATTR_TELEMETRY_SDK_LANGUAGE="telemetry.sdk.language";etA.TELEMETRY_SDK_LANGUAGE_VALUE_CPP="cpp";etA.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET="dotnet";etA.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG="erlang";etA.TELEMETRY_SDK_LANGUAGE_VALUE_GO="go";etA.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA="java";etA.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS="nodejs";etA.TELEMETRY_SDK_LANGUAGE_VALUE_PHP="php";etA.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON="python";etA.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY="ruby";etA.TELEMETRY_SDK_LANGUAGE_VALUE_RUST="rust";etA.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT="swift";etA.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS="webjs";etA.ATTR_TELEMETRY_SDK_NAME="telemetry.sdk.name";etA.ATTR_TELEMETRY_SDK_VERSION="telemetry.sdk.version";etA.ATTR_URL_FRAGMENT="url.fragment";etA.ATTR_URL_FULL="url.full";etA.ATTR_URL_PATH="url.path";etA.ATTR_URL_QUERY="url.query";etA.ATTR_URL_SCHEME="url.scheme";etA.ATTR_USER_AGENT_ORIGINAL="user_agent.original"});var GeA=R((JeA)=>{Object.defineProperty(JeA,"__esModule",{value:!0});JeA.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS=JeA.METRIC_KESTREL_UPGRADED_CONNECTIONS=JeA.METRIC_KESTREL_TLS_HANDSHAKE_DURATION=JeA.METRIC_KESTREL_REJECTED_CONNECTIONS=JeA.METRIC_KESTREL_QUEUED_REQUESTS=JeA.METRIC_KESTREL_QUEUED_CONNECTIONS=JeA.METRIC_KESTREL_CONNECTION_DURATION=JeA.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES=JeA.METRIC_KESTREL_ACTIVE_CONNECTIONS=JeA.METRIC_JVM_THREAD_COUNT=JeA.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC=JeA.METRIC_JVM_MEMORY_USED=JeA.METRIC_JVM_MEMORY_LIMIT=JeA.METRIC_JVM_MEMORY_COMMITTED=JeA.METRIC_JVM_GC_DURATION=JeA.METRIC_JVM_CPU_TIME=JeA.METRIC_JVM_CPU_RECENT_UTILIZATION=JeA.METRIC_JVM_CPU_COUNT=JeA.METRIC_JVM_CLASS_UNLOADED=JeA.METRIC_JVM_CLASS_LOADED=JeA.METRIC_JVM_CLASS_COUNT=JeA.METRIC_HTTP_SERVER_REQUEST_DURATION=JeA.METRIC_HTTP_CLIENT_REQUEST_DURATION=JeA.METRIC_DOTNET_TIMER_COUNT=JeA.METRIC_DOTNET_THREAD_POOL_WORK_ITEM_COUNT=JeA.METRIC_DOTNET_THREAD_POOL_THREAD_COUNT=JeA.METRIC_DOTNET_THREAD_POOL_QUEUE_LENGTH=JeA.METRIC_DOTNET_PROCESS_MEMORY_WORKING_SET=JeA.METRIC_DOTNET_PROCESS_CPU_TIME=JeA.METRIC_DOTNET_PROCESS_CPU_COUNT=JeA.METRIC_DOTNET_MONITOR_LOCK_CONTENTIONS=JeA.METRIC_DOTNET_JIT_COMPILED_METHODS=JeA.METRIC_DOTNET_JIT_COMPILED_IL_SIZE=JeA.METRIC_DOTNET_JIT_COMPILATION_TIME=JeA.METRIC_DOTNET_GC_PAUSE_TIME=JeA.METRIC_DOTNET_GC_LAST_COLLECTION_MEMORY_COMMITTED_SIZE=JeA.METRIC_DOTNET_GC_LAST_COLLECTION_HEAP_SIZE=JeA.METRIC_DOTNET_GC_LAST_COLLECTION_HEAP_FRAGMENTATION_SIZE=JeA.METRIC_DOTNET_GC_HEAP_TOTAL_ALLOCATED=JeA.METRIC_DOTNET_GC_COLLECTIONS=JeA.METRIC_DOTNET_EXCEPTIONS=JeA.METRIC_DOTNET_ASSEMBLY_COUNT=JeA.METRIC_DB_CLIENT_OPERATION_DURATION=JeA.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS=JeA.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS=JeA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION=JeA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE=JeA.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS=JeA.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES=JeA.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS=void 0;JeA.METRIC_SIGNALR_SERVER_CONNECTION_DURATION=void 0;JeA.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS="aspnetcore.diagnostics.exceptions";JeA.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES="aspnetcore.rate_limiting.active_request_leases";JeA.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS="aspnetcore.rate_limiting.queued_requests";JeA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE="aspnetcore.rate_limiting.request.time_in_queue";JeA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION="aspnetcore.rate_limiting.request_lease.duration";JeA.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS="aspnetcore.rate_limiting.requests";JeA.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS="aspnetcore.routing.match_attempts";JeA.METRIC_DB_CLIENT_OPERATION_DURATION="db.client.operation.duration";JeA.METRIC_DOTNET_ASSEMBLY_COUNT="dotnet.assembly.count";JeA.METRIC_DOTNET_EXCEPTIONS="dotnet.exceptions";JeA.METRIC_DOTNET_GC_COLLECTIONS="dotnet.gc.collections";JeA.METRIC_DOTNET_GC_HEAP_TOTAL_ALLOCATED="dotnet.gc.heap.total_allocated";JeA.METRIC_DOTNET_GC_LAST_COLLECTION_HEAP_FRAGMENTATION_SIZE="dotnet.gc.last_collection.heap.fragmentation.size";JeA.METRIC_DOTNET_GC_LAST_COLLECTION_HEAP_SIZE="dotnet.gc.last_collection.heap.size";JeA.METRIC_DOTNET_GC_LAST_COLLECTION_MEMORY_COMMITTED_SIZE="dotnet.gc.last_collection.memory.committed_size";JeA.METRIC_DOTNET_GC_PAUSE_TIME="dotnet.gc.pause.time";JeA.METRIC_DOTNET_JIT_COMPILATION_TIME="dotnet.jit.compilation.time";JeA.METRIC_DOTNET_JIT_COMPILED_IL_SIZE="dotnet.jit.compiled_il.size";JeA.METRIC_DOTNET_JIT_COMPILED_METHODS="dotnet.jit.compiled_methods";JeA.METRIC_DOTNET_MONITOR_LOCK_CONTENTIONS="dotnet.monitor.lock_contentions";JeA.METRIC_DOTNET_PROCESS_CPU_COUNT="dotnet.process.cpu.count";JeA.METRIC_DOTNET_PROCESS_CPU_TIME="dotnet.process.cpu.time";JeA.METRIC_DOTNET_PROCESS_MEMORY_WORKING_SET="dotnet.process.memory.working_set";JeA.METRIC_DOTNET_THREAD_POOL_QUEUE_LENGTH="dotnet.thread_pool.queue.length";JeA.METRIC_DOTNET_THREAD_POOL_THREAD_COUNT="dotnet.thread_pool.thread.count";JeA.METRIC_DOTNET_THREAD_POOL_WORK_ITEM_COUNT="dotnet.thread_pool.work_item.count";JeA.METRIC_DOTNET_TIMER_COUNT="dotnet.timer.count";JeA.METRIC_HTTP_CLIENT_REQUEST_DURATION="http.client.request.duration";JeA.METRIC_HTTP_SERVER_REQUEST_DURATION="http.server.request.duration";JeA.METRIC_JVM_CLASS_COUNT="jvm.class.count";JeA.METRIC_JVM_CLASS_LOADED="jvm.class.loaded";JeA.METRIC_JVM_CLASS_UNLOADED="jvm.class.unloaded";JeA.METRIC_JVM_CPU_COUNT="jvm.cpu.count";JeA.METRIC_JVM_CPU_RECENT_UTILIZATION="jvm.cpu.recent_utilization";JeA.METRIC_JVM_CPU_TIME="jvm.cpu.time";JeA.METRIC_JVM_GC_DURATION="jvm.gc.duration";JeA.METRIC_JVM_MEMORY_COMMITTED="jvm.memory.committed";JeA.METRIC_JVM_MEMORY_LIMIT="jvm.memory.limit";JeA.METRIC_JVM_MEMORY_USED="jvm.memory.used";JeA.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC="jvm.memory.used_after_last_gc";JeA.METRIC_JVM_THREAD_COUNT="jvm.thread.count";JeA.METRIC_KESTREL_ACTIVE_CONNECTIONS="kestrel.active_connections";JeA.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES="kestrel.active_tls_handshakes";JeA.METRIC_KESTREL_CONNECTION_DURATION="kestrel.connection.duration";JeA.METRIC_KESTREL_QUEUED_CONNECTIONS="kestrel.queued_connections";JeA.METRIC_KESTREL_QUEUED_REQUESTS="kestrel.queued_requests";JeA.METRIC_KESTREL_REJECTED_CONNECTIONS="kestrel.rejected_connections";JeA.METRIC_KESTREL_TLS_HANDSHAKE_DURATION="kestrel.tls_handshake.duration";JeA.METRIC_KESTREL_UPGRADED_CONNECTIONS="kestrel.upgraded_connections";JeA.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS="signalr.server.active_connections";JeA.METRIC_SIGNALR_SERVER_CONNECTION_DURATION="signalr.server.connection.duration"});var uB=R((JX)=>{var yQ0=JX&&JX.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;var J=Object.getOwnPropertyDescriptor(Q,B);if(!J||("get"in J?!Q.__esModule:J.writable||J.configurable))J={enumerable:!0,get:function(){return Q[B]}};Object.defineProperty(A,Y,J)}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),kO=JX&&JX.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))yQ0(Q,A,B)};Object.defineProperty(JX,"__esModule",{value:!0});kO(MaA(),JX);kO(ttA(),JX);kO(YeA(),JX);kO(GeA(),JX)});var zp=R((FeA)=>{Object.defineProperty(FeA,"__esModule",{value:!0});FeA.createConstMap=void 0;function gQ0(A){let Q={},B=A.length;for(let Y=0;Y{Object.defineProperty(e0Q,"__esModule",{value:!0});e0Q.SEMATTRS_NET_HOST_CARRIER_ICC=e0Q.SEMATTRS_NET_HOST_CARRIER_MNC=e0Q.SEMATTRS_NET_HOST_CARRIER_MCC=e0Q.SEMATTRS_NET_HOST_CARRIER_NAME=e0Q.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=e0Q.SEMATTRS_NET_HOST_CONNECTION_TYPE=e0Q.SEMATTRS_NET_HOST_NAME=e0Q.SEMATTRS_NET_HOST_PORT=e0Q.SEMATTRS_NET_HOST_IP=e0Q.SEMATTRS_NET_PEER_NAME=e0Q.SEMATTRS_NET_PEER_PORT=e0Q.SEMATTRS_NET_PEER_IP=e0Q.SEMATTRS_NET_TRANSPORT=e0Q.SEMATTRS_FAAS_INVOKED_REGION=e0Q.SEMATTRS_FAAS_INVOKED_PROVIDER=e0Q.SEMATTRS_FAAS_INVOKED_NAME=e0Q.SEMATTRS_FAAS_COLDSTART=e0Q.SEMATTRS_FAAS_CRON=e0Q.SEMATTRS_FAAS_TIME=e0Q.SEMATTRS_FAAS_DOCUMENT_NAME=e0Q.SEMATTRS_FAAS_DOCUMENT_TIME=e0Q.SEMATTRS_FAAS_DOCUMENT_OPERATION=e0Q.SEMATTRS_FAAS_DOCUMENT_COLLECTION=e0Q.SEMATTRS_FAAS_EXECUTION=e0Q.SEMATTRS_FAAS_TRIGGER=e0Q.SEMATTRS_EXCEPTION_ESCAPED=e0Q.SEMATTRS_EXCEPTION_STACKTRACE=e0Q.SEMATTRS_EXCEPTION_MESSAGE=e0Q.SEMATTRS_EXCEPTION_TYPE=e0Q.SEMATTRS_DB_SQL_TABLE=e0Q.SEMATTRS_DB_MONGODB_COLLECTION=e0Q.SEMATTRS_DB_REDIS_DATABASE_INDEX=e0Q.SEMATTRS_DB_HBASE_NAMESPACE=e0Q.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=e0Q.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=e0Q.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=e0Q.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=e0Q.SEMATTRS_DB_CASSANDRA_TABLE=e0Q.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=e0Q.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=e0Q.SEMATTRS_DB_CASSANDRA_KEYSPACE=e0Q.SEMATTRS_DB_MSSQL_INSTANCE_NAME=e0Q.SEMATTRS_DB_OPERATION=e0Q.SEMATTRS_DB_STATEMENT=e0Q.SEMATTRS_DB_NAME=e0Q.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=e0Q.SEMATTRS_DB_USER=e0Q.SEMATTRS_DB_CONNECTION_STRING=e0Q.SEMATTRS_DB_SYSTEM=e0Q.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=void 0;e0Q.SEMATTRS_MESSAGING_DESTINATION_KIND=e0Q.SEMATTRS_MESSAGING_DESTINATION=e0Q.SEMATTRS_MESSAGING_SYSTEM=e0Q.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=e0Q.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=e0Q.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=e0Q.SEMATTRS_AWS_DYNAMODB_COUNT=e0Q.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=e0Q.SEMATTRS_AWS_DYNAMODB_SEGMENT=e0Q.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=e0Q.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=e0Q.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=e0Q.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=e0Q.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=e0Q.SEMATTRS_AWS_DYNAMODB_SELECT=e0Q.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=e0Q.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=e0Q.SEMATTRS_AWS_DYNAMODB_LIMIT=e0Q.SEMATTRS_AWS_DYNAMODB_PROJECTION=e0Q.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=e0Q.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=e0Q.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=e0Q.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=e0Q.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=e0Q.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=e0Q.SEMATTRS_HTTP_CLIENT_IP=e0Q.SEMATTRS_HTTP_ROUTE=e0Q.SEMATTRS_HTTP_SERVER_NAME=e0Q.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=e0Q.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=e0Q.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=e0Q.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=e0Q.SEMATTRS_HTTP_USER_AGENT=e0Q.SEMATTRS_HTTP_FLAVOR=e0Q.SEMATTRS_HTTP_STATUS_CODE=e0Q.SEMATTRS_HTTP_SCHEME=e0Q.SEMATTRS_HTTP_HOST=e0Q.SEMATTRS_HTTP_TARGET=e0Q.SEMATTRS_HTTP_URL=e0Q.SEMATTRS_HTTP_METHOD=e0Q.SEMATTRS_CODE_LINENO=e0Q.SEMATTRS_CODE_FILEPATH=e0Q.SEMATTRS_CODE_NAMESPACE=e0Q.SEMATTRS_CODE_FUNCTION=e0Q.SEMATTRS_THREAD_NAME=e0Q.SEMATTRS_THREAD_ID=e0Q.SEMATTRS_ENDUSER_SCOPE=e0Q.SEMATTRS_ENDUSER_ROLE=e0Q.SEMATTRS_ENDUSER_ID=e0Q.SEMATTRS_PEER_SERVICE=void 0;e0Q.DBSYSTEMVALUES_FILEMAKER=e0Q.DBSYSTEMVALUES_DERBY=e0Q.DBSYSTEMVALUES_FIREBIRD=e0Q.DBSYSTEMVALUES_ADABAS=e0Q.DBSYSTEMVALUES_CACHE=e0Q.DBSYSTEMVALUES_EDB=e0Q.DBSYSTEMVALUES_FIRSTSQL=e0Q.DBSYSTEMVALUES_INGRES=e0Q.DBSYSTEMVALUES_HANADB=e0Q.DBSYSTEMVALUES_MAXDB=e0Q.DBSYSTEMVALUES_PROGRESS=e0Q.DBSYSTEMVALUES_HSQLDB=e0Q.DBSYSTEMVALUES_CLOUDSCAPE=e0Q.DBSYSTEMVALUES_HIVE=e0Q.DBSYSTEMVALUES_REDSHIFT=e0Q.DBSYSTEMVALUES_POSTGRESQL=e0Q.DBSYSTEMVALUES_DB2=e0Q.DBSYSTEMVALUES_ORACLE=e0Q.DBSYSTEMVALUES_MYSQL=e0Q.DBSYSTEMVALUES_MSSQL=e0Q.DBSYSTEMVALUES_OTHER_SQL=e0Q.SemanticAttributes=e0Q.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=e0Q.SEMATTRS_MESSAGE_COMPRESSED_SIZE=e0Q.SEMATTRS_MESSAGE_ID=e0Q.SEMATTRS_MESSAGE_TYPE=e0Q.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=e0Q.SEMATTRS_RPC_JSONRPC_ERROR_CODE=e0Q.SEMATTRS_RPC_JSONRPC_REQUEST_ID=e0Q.SEMATTRS_RPC_JSONRPC_VERSION=e0Q.SEMATTRS_RPC_GRPC_STATUS_CODE=e0Q.SEMATTRS_RPC_METHOD=e0Q.SEMATTRS_RPC_SERVICE=e0Q.SEMATTRS_RPC_SYSTEM=e0Q.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=e0Q.SEMATTRS_MESSAGING_KAFKA_PARTITION=e0Q.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=e0Q.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=e0Q.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=e0Q.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=e0Q.SEMATTRS_MESSAGING_CONSUMER_ID=e0Q.SEMATTRS_MESSAGING_OPERATION=e0Q.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=e0Q.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=e0Q.SEMATTRS_MESSAGING_CONVERSATION_ID=e0Q.SEMATTRS_MESSAGING_MESSAGE_ID=e0Q.SEMATTRS_MESSAGING_URL=e0Q.SEMATTRS_MESSAGING_PROTOCOL_VERSION=e0Q.SEMATTRS_MESSAGING_PROTOCOL=e0Q.SEMATTRS_MESSAGING_TEMP_DESTINATION=void 0;e0Q.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=e0Q.FaasDocumentOperationValues=e0Q.FAASDOCUMENTOPERATIONVALUES_DELETE=e0Q.FAASDOCUMENTOPERATIONVALUES_EDIT=e0Q.FAASDOCUMENTOPERATIONVALUES_INSERT=e0Q.FaasTriggerValues=e0Q.FAASTRIGGERVALUES_OTHER=e0Q.FAASTRIGGERVALUES_TIMER=e0Q.FAASTRIGGERVALUES_PUBSUB=e0Q.FAASTRIGGERVALUES_HTTP=e0Q.FAASTRIGGERVALUES_DATASOURCE=e0Q.DbCassandraConsistencyLevelValues=e0Q.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=e0Q.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=e0Q.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=e0Q.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=e0Q.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=e0Q.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=e0Q.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=e0Q.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=e0Q.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=e0Q.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=e0Q.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=e0Q.DbSystemValues=e0Q.DBSYSTEMVALUES_COCKROACHDB=e0Q.DBSYSTEMVALUES_MEMCACHED=e0Q.DBSYSTEMVALUES_ELASTICSEARCH=e0Q.DBSYSTEMVALUES_GEODE=e0Q.DBSYSTEMVALUES_NEO4J=e0Q.DBSYSTEMVALUES_DYNAMODB=e0Q.DBSYSTEMVALUES_COSMOSDB=e0Q.DBSYSTEMVALUES_COUCHDB=e0Q.DBSYSTEMVALUES_COUCHBASE=e0Q.DBSYSTEMVALUES_REDIS=e0Q.DBSYSTEMVALUES_MONGODB=e0Q.DBSYSTEMVALUES_HBASE=e0Q.DBSYSTEMVALUES_CASSANDRA=e0Q.DBSYSTEMVALUES_COLDFUSION=e0Q.DBSYSTEMVALUES_H2=e0Q.DBSYSTEMVALUES_VERTICA=e0Q.DBSYSTEMVALUES_TERADATA=e0Q.DBSYSTEMVALUES_SYBASE=e0Q.DBSYSTEMVALUES_SQLITE=e0Q.DBSYSTEMVALUES_POINTBASE=e0Q.DBSYSTEMVALUES_PERVASIVE=e0Q.DBSYSTEMVALUES_NETEZZA=e0Q.DBSYSTEMVALUES_MARIADB=e0Q.DBSYSTEMVALUES_INTERBASE=e0Q.DBSYSTEMVALUES_INSTANTDB=e0Q.DBSYSTEMVALUES_INFORMIX=void 0;e0Q.MESSAGINGOPERATIONVALUES_RECEIVE=e0Q.MessagingDestinationKindValues=e0Q.MESSAGINGDESTINATIONKINDVALUES_TOPIC=e0Q.MESSAGINGDESTINATIONKINDVALUES_QUEUE=e0Q.HttpFlavorValues=e0Q.HTTPFLAVORVALUES_QUIC=e0Q.HTTPFLAVORVALUES_SPDY=e0Q.HTTPFLAVORVALUES_HTTP_2_0=e0Q.HTTPFLAVORVALUES_HTTP_1_1=e0Q.HTTPFLAVORVALUES_HTTP_1_0=e0Q.NetHostConnectionSubtypeValues=e0Q.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=e0Q.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=e0Q.NETHOSTCONNECTIONSUBTYPEVALUES_NR=e0Q.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=e0Q.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=e0Q.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=e0Q.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=e0Q.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=e0Q.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=e0Q.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=e0Q.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=e0Q.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=e0Q.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=e0Q.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=e0Q.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=e0Q.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=e0Q.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=e0Q.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=e0Q.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=e0Q.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=e0Q.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=e0Q.NetHostConnectionTypeValues=e0Q.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=e0Q.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=e0Q.NETHOSTCONNECTIONTYPEVALUES_CELL=e0Q.NETHOSTCONNECTIONTYPEVALUES_WIRED=e0Q.NETHOSTCONNECTIONTYPEVALUES_WIFI=e0Q.NetTransportValues=e0Q.NETTRANSPORTVALUES_OTHER=e0Q.NETTRANSPORTVALUES_INPROC=e0Q.NETTRANSPORTVALUES_PIPE=e0Q.NETTRANSPORTVALUES_UNIX=e0Q.NETTRANSPORTVALUES_IP=e0Q.NETTRANSPORTVALUES_IP_UDP=e0Q.NETTRANSPORTVALUES_IP_TCP=e0Q.FaasInvokedProviderValues=e0Q.FAASINVOKEDPROVIDERVALUES_GCP=e0Q.FAASINVOKEDPROVIDERVALUES_AZURE=e0Q.FAASINVOKEDPROVIDERVALUES_AWS=void 0;e0Q.MessageTypeValues=e0Q.MESSAGETYPEVALUES_RECEIVED=e0Q.MESSAGETYPEVALUES_SENT=e0Q.RpcGrpcStatusCodeValues=e0Q.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=e0Q.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=e0Q.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=e0Q.RPCGRPCSTATUSCODEVALUES_INTERNAL=e0Q.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=e0Q.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=e0Q.RPCGRPCSTATUSCODEVALUES_ABORTED=e0Q.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=e0Q.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=e0Q.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=e0Q.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=e0Q.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=e0Q.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=e0Q.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=e0Q.RPCGRPCSTATUSCODEVALUES_UNKNOWN=e0Q.RPCGRPCSTATUSCODEVALUES_CANCELLED=e0Q.RPCGRPCSTATUSCODEVALUES_OK=e0Q.MessagingOperationValues=e0Q.MESSAGINGOPERATIONVALUES_PROCESS=void 0;var h5=zp(),ZeA="aws.lambda.invoked_arn",$eA="db.system",UeA="db.connection_string",EeA="db.user",KeA="db.jdbc.driver_classname",VeA="db.name",IeA="db.statement",HeA="db.operation",DeA="db.mssql.instance_name",NeA="db.cassandra.keyspace",LeA="db.cassandra.page_size",qeA="db.cassandra.consistency_level",MeA="db.cassandra.table",zeA="db.cassandra.idempotence",ReA="db.cassandra.speculative_execution_count",weA="db.cassandra.coordinator.id",jeA="db.cassandra.coordinator.dc",OeA="db.hbase.namespace",PeA="db.redis.database_index",TeA="db.mongodb.collection",SeA="db.sql.table",keA="exception.type",_eA="exception.message",veA="exception.stacktrace",yeA="exception.escaped",geA="faas.trigger",heA="faas.execution",xeA="faas.document.collection",feA="faas.document.operation",beA="faas.document.time",meA="faas.document.name",ueA="faas.time",deA="faas.cron",ceA="faas.coldstart",leA="faas.invoked_name",peA="faas.invoked_provider",ieA="faas.invoked_region",neA="net.transport",seA="net.peer.ip",reA="net.peer.port",aeA="net.peer.name",oeA="net.host.ip",teA="net.host.port",eeA="net.host.name",AAQ="net.host.connection.type",QAQ="net.host.connection.subtype",BAQ="net.host.carrier.name",YAQ="net.host.carrier.mcc",JAQ="net.host.carrier.mnc",CAQ="net.host.carrier.icc",XAQ="peer.service",GAQ="enduser.id",FAQ="enduser.role",WAQ="enduser.scope",ZAQ="thread.id",$AQ="thread.name",UAQ="code.function",EAQ="code.namespace",KAQ="code.filepath",VAQ="code.lineno",IAQ="http.method",HAQ="http.url",DAQ="http.target",NAQ="http.host",LAQ="http.scheme",qAQ="http.status_code",MAQ="http.flavor",zAQ="http.user_agent",RAQ="http.request_content_length",wAQ="http.request_content_length_uncompressed",jAQ="http.response_content_length",OAQ="http.response_content_length_uncompressed",PAQ="http.server_name",TAQ="http.route",SAQ="http.client_ip",kAQ="aws.dynamodb.table_names",_AQ="aws.dynamodb.consumed_capacity",vAQ="aws.dynamodb.item_collection_metrics",yAQ="aws.dynamodb.provisioned_read_capacity",gAQ="aws.dynamodb.provisioned_write_capacity",hAQ="aws.dynamodb.consistent_read",xAQ="aws.dynamodb.projection",fAQ="aws.dynamodb.limit",bAQ="aws.dynamodb.attributes_to_get",mAQ="aws.dynamodb.index_name",uAQ="aws.dynamodb.select",dAQ="aws.dynamodb.global_secondary_indexes",cAQ="aws.dynamodb.local_secondary_indexes",lAQ="aws.dynamodb.exclusive_start_table",pAQ="aws.dynamodb.table_count",iAQ="aws.dynamodb.scan_forward",nAQ="aws.dynamodb.segment",sAQ="aws.dynamodb.total_segments",rAQ="aws.dynamodb.count",aAQ="aws.dynamodb.scanned_count",oAQ="aws.dynamodb.attribute_definitions",tAQ="aws.dynamodb.global_secondary_index_updates",eAQ="messaging.system",AQQ="messaging.destination",QQQ="messaging.destination_kind",BQQ="messaging.temp_destination",YQQ="messaging.protocol",JQQ="messaging.protocol_version",CQQ="messaging.url",XQQ="messaging.message_id",GQQ="messaging.conversation_id",FQQ="messaging.message_payload_size_bytes",WQQ="messaging.message_payload_compressed_size_bytes",ZQQ="messaging.operation",$QQ="messaging.consumer_id",UQQ="messaging.rabbitmq.routing_key",EQQ="messaging.kafka.message_key",KQQ="messaging.kafka.consumer_group",VQQ="messaging.kafka.client_id",IQQ="messaging.kafka.partition",HQQ="messaging.kafka.tombstone",DQQ="rpc.system",NQQ="rpc.service",LQQ="rpc.method",qQQ="rpc.grpc.status_code",MQQ="rpc.jsonrpc.version",zQQ="rpc.jsonrpc.request_id",RQQ="rpc.jsonrpc.error_code",wQQ="rpc.jsonrpc.error_message",jQQ="message.type",OQQ="message.id",PQQ="message.compressed_size",TQQ="message.uncompressed_size";e0Q.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=ZeA;e0Q.SEMATTRS_DB_SYSTEM=$eA;e0Q.SEMATTRS_DB_CONNECTION_STRING=UeA;e0Q.SEMATTRS_DB_USER=EeA;e0Q.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=KeA;e0Q.SEMATTRS_DB_NAME=VeA;e0Q.SEMATTRS_DB_STATEMENT=IeA;e0Q.SEMATTRS_DB_OPERATION=HeA;e0Q.SEMATTRS_DB_MSSQL_INSTANCE_NAME=DeA;e0Q.SEMATTRS_DB_CASSANDRA_KEYSPACE=NeA;e0Q.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=LeA;e0Q.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=qeA;e0Q.SEMATTRS_DB_CASSANDRA_TABLE=MeA;e0Q.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=zeA;e0Q.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=ReA;e0Q.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=weA;e0Q.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=jeA;e0Q.SEMATTRS_DB_HBASE_NAMESPACE=OeA;e0Q.SEMATTRS_DB_REDIS_DATABASE_INDEX=PeA;e0Q.SEMATTRS_DB_MONGODB_COLLECTION=TeA;e0Q.SEMATTRS_DB_SQL_TABLE=SeA;e0Q.SEMATTRS_EXCEPTION_TYPE=keA;e0Q.SEMATTRS_EXCEPTION_MESSAGE=_eA;e0Q.SEMATTRS_EXCEPTION_STACKTRACE=veA;e0Q.SEMATTRS_EXCEPTION_ESCAPED=yeA;e0Q.SEMATTRS_FAAS_TRIGGER=geA;e0Q.SEMATTRS_FAAS_EXECUTION=heA;e0Q.SEMATTRS_FAAS_DOCUMENT_COLLECTION=xeA;e0Q.SEMATTRS_FAAS_DOCUMENT_OPERATION=feA;e0Q.SEMATTRS_FAAS_DOCUMENT_TIME=beA;e0Q.SEMATTRS_FAAS_DOCUMENT_NAME=meA;e0Q.SEMATTRS_FAAS_TIME=ueA;e0Q.SEMATTRS_FAAS_CRON=deA;e0Q.SEMATTRS_FAAS_COLDSTART=ceA;e0Q.SEMATTRS_FAAS_INVOKED_NAME=leA;e0Q.SEMATTRS_FAAS_INVOKED_PROVIDER=peA;e0Q.SEMATTRS_FAAS_INVOKED_REGION=ieA;e0Q.SEMATTRS_NET_TRANSPORT=neA;e0Q.SEMATTRS_NET_PEER_IP=seA;e0Q.SEMATTRS_NET_PEER_PORT=reA;e0Q.SEMATTRS_NET_PEER_NAME=aeA;e0Q.SEMATTRS_NET_HOST_IP=oeA;e0Q.SEMATTRS_NET_HOST_PORT=teA;e0Q.SEMATTRS_NET_HOST_NAME=eeA;e0Q.SEMATTRS_NET_HOST_CONNECTION_TYPE=AAQ;e0Q.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=QAQ;e0Q.SEMATTRS_NET_HOST_CARRIER_NAME=BAQ;e0Q.SEMATTRS_NET_HOST_CARRIER_MCC=YAQ;e0Q.SEMATTRS_NET_HOST_CARRIER_MNC=JAQ;e0Q.SEMATTRS_NET_HOST_CARRIER_ICC=CAQ;e0Q.SEMATTRS_PEER_SERVICE=XAQ;e0Q.SEMATTRS_ENDUSER_ID=GAQ;e0Q.SEMATTRS_ENDUSER_ROLE=FAQ;e0Q.SEMATTRS_ENDUSER_SCOPE=WAQ;e0Q.SEMATTRS_THREAD_ID=ZAQ;e0Q.SEMATTRS_THREAD_NAME=$AQ;e0Q.SEMATTRS_CODE_FUNCTION=UAQ;e0Q.SEMATTRS_CODE_NAMESPACE=EAQ;e0Q.SEMATTRS_CODE_FILEPATH=KAQ;e0Q.SEMATTRS_CODE_LINENO=VAQ;e0Q.SEMATTRS_HTTP_METHOD=IAQ;e0Q.SEMATTRS_HTTP_URL=HAQ;e0Q.SEMATTRS_HTTP_TARGET=DAQ;e0Q.SEMATTRS_HTTP_HOST=NAQ;e0Q.SEMATTRS_HTTP_SCHEME=LAQ;e0Q.SEMATTRS_HTTP_STATUS_CODE=qAQ;e0Q.SEMATTRS_HTTP_FLAVOR=MAQ;e0Q.SEMATTRS_HTTP_USER_AGENT=zAQ;e0Q.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=RAQ;e0Q.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=wAQ;e0Q.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=jAQ;e0Q.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=OAQ;e0Q.SEMATTRS_HTTP_SERVER_NAME=PAQ;e0Q.SEMATTRS_HTTP_ROUTE=TAQ;e0Q.SEMATTRS_HTTP_CLIENT_IP=SAQ;e0Q.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=kAQ;e0Q.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=_AQ;e0Q.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=vAQ;e0Q.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=yAQ;e0Q.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=gAQ;e0Q.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=hAQ;e0Q.SEMATTRS_AWS_DYNAMODB_PROJECTION=xAQ;e0Q.SEMATTRS_AWS_DYNAMODB_LIMIT=fAQ;e0Q.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=bAQ;e0Q.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=mAQ;e0Q.SEMATTRS_AWS_DYNAMODB_SELECT=uAQ;e0Q.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=dAQ;e0Q.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=cAQ;e0Q.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=lAQ;e0Q.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=pAQ;e0Q.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=iAQ;e0Q.SEMATTRS_AWS_DYNAMODB_SEGMENT=nAQ;e0Q.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=sAQ;e0Q.SEMATTRS_AWS_DYNAMODB_COUNT=rAQ;e0Q.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=aAQ;e0Q.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=oAQ;e0Q.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=tAQ;e0Q.SEMATTRS_MESSAGING_SYSTEM=eAQ;e0Q.SEMATTRS_MESSAGING_DESTINATION=AQQ;e0Q.SEMATTRS_MESSAGING_DESTINATION_KIND=QQQ;e0Q.SEMATTRS_MESSAGING_TEMP_DESTINATION=BQQ;e0Q.SEMATTRS_MESSAGING_PROTOCOL=YQQ;e0Q.SEMATTRS_MESSAGING_PROTOCOL_VERSION=JQQ;e0Q.SEMATTRS_MESSAGING_URL=CQQ;e0Q.SEMATTRS_MESSAGING_MESSAGE_ID=XQQ;e0Q.SEMATTRS_MESSAGING_CONVERSATION_ID=GQQ;e0Q.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=FQQ;e0Q.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=WQQ;e0Q.SEMATTRS_MESSAGING_OPERATION=ZQQ;e0Q.SEMATTRS_MESSAGING_CONSUMER_ID=$QQ;e0Q.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=UQQ;e0Q.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=EQQ;e0Q.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=KQQ;e0Q.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=VQQ;e0Q.SEMATTRS_MESSAGING_KAFKA_PARTITION=IQQ;e0Q.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=HQQ;e0Q.SEMATTRS_RPC_SYSTEM=DQQ;e0Q.SEMATTRS_RPC_SERVICE=NQQ;e0Q.SEMATTRS_RPC_METHOD=LQQ;e0Q.SEMATTRS_RPC_GRPC_STATUS_CODE=qQQ;e0Q.SEMATTRS_RPC_JSONRPC_VERSION=MQQ;e0Q.SEMATTRS_RPC_JSONRPC_REQUEST_ID=zQQ;e0Q.SEMATTRS_RPC_JSONRPC_ERROR_CODE=RQQ;e0Q.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=wQQ;e0Q.SEMATTRS_MESSAGE_TYPE=jQQ;e0Q.SEMATTRS_MESSAGE_ID=OQQ;e0Q.SEMATTRS_MESSAGE_COMPRESSED_SIZE=PQQ;e0Q.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=TQQ;e0Q.SemanticAttributes=(0,h5.createConstMap)([ZeA,$eA,UeA,EeA,KeA,VeA,IeA,HeA,DeA,NeA,LeA,qeA,MeA,zeA,ReA,weA,jeA,OeA,PeA,TeA,SeA,keA,_eA,veA,yeA,geA,heA,xeA,feA,beA,meA,ueA,deA,ceA,leA,peA,ieA,neA,seA,reA,aeA,oeA,teA,eeA,AAQ,QAQ,BAQ,YAQ,JAQ,CAQ,XAQ,GAQ,FAQ,WAQ,ZAQ,$AQ,UAQ,EAQ,KAQ,VAQ,IAQ,HAQ,DAQ,NAQ,LAQ,qAQ,MAQ,zAQ,RAQ,wAQ,jAQ,OAQ,PAQ,TAQ,SAQ,kAQ,_AQ,vAQ,yAQ,gAQ,hAQ,xAQ,fAQ,bAQ,mAQ,uAQ,dAQ,cAQ,lAQ,pAQ,iAQ,nAQ,sAQ,rAQ,aAQ,oAQ,tAQ,eAQ,AQQ,QQQ,BQQ,YQQ,JQQ,CQQ,XQQ,GQQ,FQQ,WQQ,ZQQ,$QQ,UQQ,EQQ,KQQ,VQQ,IQQ,HQQ,DQQ,NQQ,LQQ,qQQ,MQQ,zQQ,RQQ,wQQ,jQQ,OQQ,PQQ,TQQ]);var SQQ="other_sql",kQQ="mssql",_QQ="mysql",vQQ="oracle",yQQ="db2",gQQ="postgresql",hQQ="redshift",xQQ="hive",fQQ="cloudscape",bQQ="hsqldb",mQQ="progress",uQQ="maxdb",dQQ="hanadb",cQQ="ingres",lQQ="firstsql",pQQ="edb",iQQ="cache",nQQ="adabas",sQQ="firebird",rQQ="derby",aQQ="filemaker",oQQ="informix",tQQ="instantdb",eQQ="interbase",ABQ="mariadb",QBQ="netezza",BBQ="pervasive",YBQ="pointbase",JBQ="sqlite",CBQ="sybase",XBQ="teradata",GBQ="vertica",FBQ="h2",WBQ="coldfusion",ZBQ="cassandra",$BQ="hbase",UBQ="mongodb",EBQ="redis",KBQ="couchbase",VBQ="couchdb",IBQ="cosmosdb",HBQ="dynamodb",DBQ="neo4j",NBQ="geode",LBQ="elasticsearch",qBQ="memcached",MBQ="cockroachdb";e0Q.DBSYSTEMVALUES_OTHER_SQL=SQQ;e0Q.DBSYSTEMVALUES_MSSQL=kQQ;e0Q.DBSYSTEMVALUES_MYSQL=_QQ;e0Q.DBSYSTEMVALUES_ORACLE=vQQ;e0Q.DBSYSTEMVALUES_DB2=yQQ;e0Q.DBSYSTEMVALUES_POSTGRESQL=gQQ;e0Q.DBSYSTEMVALUES_REDSHIFT=hQQ;e0Q.DBSYSTEMVALUES_HIVE=xQQ;e0Q.DBSYSTEMVALUES_CLOUDSCAPE=fQQ;e0Q.DBSYSTEMVALUES_HSQLDB=bQQ;e0Q.DBSYSTEMVALUES_PROGRESS=mQQ;e0Q.DBSYSTEMVALUES_MAXDB=uQQ;e0Q.DBSYSTEMVALUES_HANADB=dQQ;e0Q.DBSYSTEMVALUES_INGRES=cQQ;e0Q.DBSYSTEMVALUES_FIRSTSQL=lQQ;e0Q.DBSYSTEMVALUES_EDB=pQQ;e0Q.DBSYSTEMVALUES_CACHE=iQQ;e0Q.DBSYSTEMVALUES_ADABAS=nQQ;e0Q.DBSYSTEMVALUES_FIREBIRD=sQQ;e0Q.DBSYSTEMVALUES_DERBY=rQQ;e0Q.DBSYSTEMVALUES_FILEMAKER=aQQ;e0Q.DBSYSTEMVALUES_INFORMIX=oQQ;e0Q.DBSYSTEMVALUES_INSTANTDB=tQQ;e0Q.DBSYSTEMVALUES_INTERBASE=eQQ;e0Q.DBSYSTEMVALUES_MARIADB=ABQ;e0Q.DBSYSTEMVALUES_NETEZZA=QBQ;e0Q.DBSYSTEMVALUES_PERVASIVE=BBQ;e0Q.DBSYSTEMVALUES_POINTBASE=YBQ;e0Q.DBSYSTEMVALUES_SQLITE=JBQ;e0Q.DBSYSTEMVALUES_SYBASE=CBQ;e0Q.DBSYSTEMVALUES_TERADATA=XBQ;e0Q.DBSYSTEMVALUES_VERTICA=GBQ;e0Q.DBSYSTEMVALUES_H2=FBQ;e0Q.DBSYSTEMVALUES_COLDFUSION=WBQ;e0Q.DBSYSTEMVALUES_CASSANDRA=ZBQ;e0Q.DBSYSTEMVALUES_HBASE=$BQ;e0Q.DBSYSTEMVALUES_MONGODB=UBQ;e0Q.DBSYSTEMVALUES_REDIS=EBQ;e0Q.DBSYSTEMVALUES_COUCHBASE=KBQ;e0Q.DBSYSTEMVALUES_COUCHDB=VBQ;e0Q.DBSYSTEMVALUES_COSMOSDB=IBQ;e0Q.DBSYSTEMVALUES_DYNAMODB=HBQ;e0Q.DBSYSTEMVALUES_NEO4J=DBQ;e0Q.DBSYSTEMVALUES_GEODE=NBQ;e0Q.DBSYSTEMVALUES_ELASTICSEARCH=LBQ;e0Q.DBSYSTEMVALUES_MEMCACHED=qBQ;e0Q.DBSYSTEMVALUES_COCKROACHDB=MBQ;e0Q.DbSystemValues=(0,h5.createConstMap)([SQQ,kQQ,_QQ,vQQ,yQQ,gQQ,hQQ,xQQ,fQQ,bQQ,mQQ,uQQ,dQQ,cQQ,lQQ,pQQ,iQQ,nQQ,sQQ,rQQ,aQQ,oQQ,tQQ,eQQ,ABQ,QBQ,BBQ,YBQ,JBQ,CBQ,XBQ,GBQ,FBQ,WBQ,ZBQ,$BQ,UBQ,EBQ,KBQ,VBQ,IBQ,HBQ,DBQ,NBQ,LBQ,qBQ,MBQ]);var zBQ="all",RBQ="each_quorum",wBQ="quorum",jBQ="local_quorum",OBQ="one",PBQ="two",TBQ="three",SBQ="local_one",kBQ="any",_BQ="serial",vBQ="local_serial";e0Q.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=zBQ;e0Q.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=RBQ;e0Q.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=wBQ;e0Q.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=jBQ;e0Q.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=OBQ;e0Q.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=PBQ;e0Q.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=TBQ;e0Q.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=SBQ;e0Q.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=kBQ;e0Q.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=_BQ;e0Q.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=vBQ;e0Q.DbCassandraConsistencyLevelValues=(0,h5.createConstMap)([zBQ,RBQ,wBQ,jBQ,OBQ,PBQ,TBQ,SBQ,kBQ,_BQ,vBQ]);var yBQ="datasource",gBQ="http",hBQ="pubsub",xBQ="timer",fBQ="other";e0Q.FAASTRIGGERVALUES_DATASOURCE=yBQ;e0Q.FAASTRIGGERVALUES_HTTP=gBQ;e0Q.FAASTRIGGERVALUES_PUBSUB=hBQ;e0Q.FAASTRIGGERVALUES_TIMER=xBQ;e0Q.FAASTRIGGERVALUES_OTHER=fBQ;e0Q.FaasTriggerValues=(0,h5.createConstMap)([yBQ,gBQ,hBQ,xBQ,fBQ]);var bBQ="insert",mBQ="edit",uBQ="delete";e0Q.FAASDOCUMENTOPERATIONVALUES_INSERT=bBQ;e0Q.FAASDOCUMENTOPERATIONVALUES_EDIT=mBQ;e0Q.FAASDOCUMENTOPERATIONVALUES_DELETE=uBQ;e0Q.FaasDocumentOperationValues=(0,h5.createConstMap)([bBQ,mBQ,uBQ]);var dBQ="alibaba_cloud",cBQ="aws",lBQ="azure",pBQ="gcp";e0Q.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=dBQ;e0Q.FAASINVOKEDPROVIDERVALUES_AWS=cBQ;e0Q.FAASINVOKEDPROVIDERVALUES_AZURE=lBQ;e0Q.FAASINVOKEDPROVIDERVALUES_GCP=pBQ;e0Q.FaasInvokedProviderValues=(0,h5.createConstMap)([dBQ,cBQ,lBQ,pBQ]);var iBQ="ip_tcp",nBQ="ip_udp",sBQ="ip",rBQ="unix",aBQ="pipe",oBQ="inproc",tBQ="other";e0Q.NETTRANSPORTVALUES_IP_TCP=iBQ;e0Q.NETTRANSPORTVALUES_IP_UDP=nBQ;e0Q.NETTRANSPORTVALUES_IP=sBQ;e0Q.NETTRANSPORTVALUES_UNIX=rBQ;e0Q.NETTRANSPORTVALUES_PIPE=aBQ;e0Q.NETTRANSPORTVALUES_INPROC=oBQ;e0Q.NETTRANSPORTVALUES_OTHER=tBQ;e0Q.NetTransportValues=(0,h5.createConstMap)([iBQ,nBQ,sBQ,rBQ,aBQ,oBQ,tBQ]);var eBQ="wifi",A0Q="wired",Q0Q="cell",B0Q="unavailable",Y0Q="unknown";e0Q.NETHOSTCONNECTIONTYPEVALUES_WIFI=eBQ;e0Q.NETHOSTCONNECTIONTYPEVALUES_WIRED=A0Q;e0Q.NETHOSTCONNECTIONTYPEVALUES_CELL=Q0Q;e0Q.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=B0Q;e0Q.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=Y0Q;e0Q.NetHostConnectionTypeValues=(0,h5.createConstMap)([eBQ,A0Q,Q0Q,B0Q,Y0Q]);var J0Q="gprs",C0Q="edge",X0Q="umts",G0Q="cdma",F0Q="evdo_0",W0Q="evdo_a",Z0Q="cdma2000_1xrtt",$0Q="hsdpa",U0Q="hsupa",E0Q="hspa",K0Q="iden",V0Q="evdo_b",I0Q="lte",H0Q="ehrpd",D0Q="hspap",N0Q="gsm",L0Q="td_scdma",q0Q="iwlan",M0Q="nr",z0Q="nrnsa",R0Q="lte_ca";e0Q.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=J0Q;e0Q.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=C0Q;e0Q.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=X0Q;e0Q.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=G0Q;e0Q.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=F0Q;e0Q.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=W0Q;e0Q.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=Z0Q;e0Q.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=$0Q;e0Q.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=U0Q;e0Q.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=E0Q;e0Q.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=K0Q;e0Q.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=V0Q;e0Q.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=I0Q;e0Q.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=H0Q;e0Q.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=D0Q;e0Q.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=N0Q;e0Q.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=L0Q;e0Q.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=q0Q;e0Q.NETHOSTCONNECTIONSUBTYPEVALUES_NR=M0Q;e0Q.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=z0Q;e0Q.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=R0Q;e0Q.NetHostConnectionSubtypeValues=(0,h5.createConstMap)([J0Q,C0Q,X0Q,G0Q,F0Q,W0Q,Z0Q,$0Q,U0Q,E0Q,K0Q,V0Q,I0Q,H0Q,D0Q,N0Q,L0Q,q0Q,M0Q,z0Q,R0Q]);var w0Q="1.0",j0Q="1.1",O0Q="2.0",P0Q="SPDY",T0Q="QUIC";e0Q.HTTPFLAVORVALUES_HTTP_1_0=w0Q;e0Q.HTTPFLAVORVALUES_HTTP_1_1=j0Q;e0Q.HTTPFLAVORVALUES_HTTP_2_0=O0Q;e0Q.HTTPFLAVORVALUES_SPDY=P0Q;e0Q.HTTPFLAVORVALUES_QUIC=T0Q;e0Q.HttpFlavorValues={HTTP_1_0:w0Q,HTTP_1_1:j0Q,HTTP_2_0:O0Q,SPDY:P0Q,QUIC:T0Q};var S0Q="queue",k0Q="topic";e0Q.MESSAGINGDESTINATIONKINDVALUES_QUEUE=S0Q;e0Q.MESSAGINGDESTINATIONKINDVALUES_TOPIC=k0Q;e0Q.MessagingDestinationKindValues=(0,h5.createConstMap)([S0Q,k0Q]);var _0Q="receive",v0Q="process";e0Q.MESSAGINGOPERATIONVALUES_RECEIVE=_0Q;e0Q.MESSAGINGOPERATIONVALUES_PROCESS=v0Q;e0Q.MessagingOperationValues=(0,h5.createConstMap)([_0Q,v0Q]);var y0Q=0,g0Q=1,h0Q=2,x0Q=3,f0Q=4,b0Q=5,m0Q=6,u0Q=7,d0Q=8,c0Q=9,l0Q=10,p0Q=11,i0Q=12,n0Q=13,s0Q=14,r0Q=15,a0Q=16;e0Q.RPCGRPCSTATUSCODEVALUES_OK=y0Q;e0Q.RPCGRPCSTATUSCODEVALUES_CANCELLED=g0Q;e0Q.RPCGRPCSTATUSCODEVALUES_UNKNOWN=h0Q;e0Q.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=x0Q;e0Q.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=f0Q;e0Q.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=b0Q;e0Q.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=m0Q;e0Q.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=u0Q;e0Q.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=d0Q;e0Q.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=c0Q;e0Q.RPCGRPCSTATUSCODEVALUES_ABORTED=l0Q;e0Q.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=p0Q;e0Q.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=i0Q;e0Q.RPCGRPCSTATUSCODEVALUES_INTERNAL=n0Q;e0Q.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=s0Q;e0Q.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=r0Q;e0Q.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=a0Q;e0Q.RpcGrpcStatusCodeValues={OK:y0Q,CANCELLED:g0Q,UNKNOWN:h0Q,INVALID_ARGUMENT:x0Q,DEADLINE_EXCEEDED:f0Q,NOT_FOUND:b0Q,ALREADY_EXISTS:m0Q,PERMISSION_DENIED:u0Q,RESOURCE_EXHAUSTED:d0Q,FAILED_PRECONDITION:c0Q,ABORTED:l0Q,OUT_OF_RANGE:p0Q,UNIMPLEMENTED:i0Q,INTERNAL:n0Q,UNAVAILABLE:s0Q,DATA_LOSS:r0Q,UNAUTHENTICATED:a0Q};var o0Q="SENT",t0Q="RECEIVED";e0Q.MESSAGETYPEVALUES_SENT=o0Q;e0Q.MESSAGETYPEVALUES_RECEIVED=t0Q;e0Q.MessageTypeValues=(0,h5.createConstMap)([o0Q,t0Q])});var GYQ=R((A$)=>{var v90=A$&&A$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),y90=A$&&A$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))v90(Q,A,B)};Object.defineProperty(A$,"__esModule",{value:!0});y90(XYQ(),A$)});var h9Q=R((_9Q)=>{Object.defineProperty(_9Q,"__esModule",{value:!0});_9Q.SEMRESATTRS_K8S_STATEFULSET_NAME=_9Q.SEMRESATTRS_K8S_STATEFULSET_UID=_9Q.SEMRESATTRS_K8S_DEPLOYMENT_NAME=_9Q.SEMRESATTRS_K8S_DEPLOYMENT_UID=_9Q.SEMRESATTRS_K8S_REPLICASET_NAME=_9Q.SEMRESATTRS_K8S_REPLICASET_UID=_9Q.SEMRESATTRS_K8S_CONTAINER_NAME=_9Q.SEMRESATTRS_K8S_POD_NAME=_9Q.SEMRESATTRS_K8S_POD_UID=_9Q.SEMRESATTRS_K8S_NAMESPACE_NAME=_9Q.SEMRESATTRS_K8S_NODE_UID=_9Q.SEMRESATTRS_K8S_NODE_NAME=_9Q.SEMRESATTRS_K8S_CLUSTER_NAME=_9Q.SEMRESATTRS_HOST_IMAGE_VERSION=_9Q.SEMRESATTRS_HOST_IMAGE_ID=_9Q.SEMRESATTRS_HOST_IMAGE_NAME=_9Q.SEMRESATTRS_HOST_ARCH=_9Q.SEMRESATTRS_HOST_TYPE=_9Q.SEMRESATTRS_HOST_NAME=_9Q.SEMRESATTRS_HOST_ID=_9Q.SEMRESATTRS_FAAS_MAX_MEMORY=_9Q.SEMRESATTRS_FAAS_INSTANCE=_9Q.SEMRESATTRS_FAAS_VERSION=_9Q.SEMRESATTRS_FAAS_ID=_9Q.SEMRESATTRS_FAAS_NAME=_9Q.SEMRESATTRS_DEVICE_MODEL_NAME=_9Q.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=_9Q.SEMRESATTRS_DEVICE_ID=_9Q.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=_9Q.SEMRESATTRS_CONTAINER_IMAGE_TAG=_9Q.SEMRESATTRS_CONTAINER_IMAGE_NAME=_9Q.SEMRESATTRS_CONTAINER_RUNTIME=_9Q.SEMRESATTRS_CONTAINER_ID=_9Q.SEMRESATTRS_CONTAINER_NAME=_9Q.SEMRESATTRS_AWS_LOG_STREAM_ARNS=_9Q.SEMRESATTRS_AWS_LOG_STREAM_NAMES=_9Q.SEMRESATTRS_AWS_LOG_GROUP_ARNS=_9Q.SEMRESATTRS_AWS_LOG_GROUP_NAMES=_9Q.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=_9Q.SEMRESATTRS_AWS_ECS_TASK_REVISION=_9Q.SEMRESATTRS_AWS_ECS_TASK_FAMILY=_9Q.SEMRESATTRS_AWS_ECS_TASK_ARN=_9Q.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=_9Q.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=_9Q.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=_9Q.SEMRESATTRS_CLOUD_PLATFORM=_9Q.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=_9Q.SEMRESATTRS_CLOUD_REGION=_9Q.SEMRESATTRS_CLOUD_ACCOUNT_ID=_9Q.SEMRESATTRS_CLOUD_PROVIDER=void 0;_9Q.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=_9Q.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=_9Q.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=_9Q.CLOUDPLATFORMVALUES_AZURE_AKS=_9Q.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=_9Q.CLOUDPLATFORMVALUES_AZURE_VM=_9Q.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=_9Q.CLOUDPLATFORMVALUES_AWS_LAMBDA=_9Q.CLOUDPLATFORMVALUES_AWS_EKS=_9Q.CLOUDPLATFORMVALUES_AWS_ECS=_9Q.CLOUDPLATFORMVALUES_AWS_EC2=_9Q.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=_9Q.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=_9Q.CloudProviderValues=_9Q.CLOUDPROVIDERVALUES_GCP=_9Q.CLOUDPROVIDERVALUES_AZURE=_9Q.CLOUDPROVIDERVALUES_AWS=_9Q.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=_9Q.SemanticResourceAttributes=_9Q.SEMRESATTRS_WEBENGINE_DESCRIPTION=_9Q.SEMRESATTRS_WEBENGINE_VERSION=_9Q.SEMRESATTRS_WEBENGINE_NAME=_9Q.SEMRESATTRS_TELEMETRY_AUTO_VERSION=_9Q.SEMRESATTRS_TELEMETRY_SDK_VERSION=_9Q.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=_9Q.SEMRESATTRS_TELEMETRY_SDK_NAME=_9Q.SEMRESATTRS_SERVICE_VERSION=_9Q.SEMRESATTRS_SERVICE_INSTANCE_ID=_9Q.SEMRESATTRS_SERVICE_NAMESPACE=_9Q.SEMRESATTRS_SERVICE_NAME=_9Q.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=_9Q.SEMRESATTRS_PROCESS_RUNTIME_VERSION=_9Q.SEMRESATTRS_PROCESS_RUNTIME_NAME=_9Q.SEMRESATTRS_PROCESS_OWNER=_9Q.SEMRESATTRS_PROCESS_COMMAND_ARGS=_9Q.SEMRESATTRS_PROCESS_COMMAND_LINE=_9Q.SEMRESATTRS_PROCESS_COMMAND=_9Q.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=_9Q.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=_9Q.SEMRESATTRS_PROCESS_PID=_9Q.SEMRESATTRS_OS_VERSION=_9Q.SEMRESATTRS_OS_NAME=_9Q.SEMRESATTRS_OS_DESCRIPTION=_9Q.SEMRESATTRS_OS_TYPE=_9Q.SEMRESATTRS_K8S_CRONJOB_NAME=_9Q.SEMRESATTRS_K8S_CRONJOB_UID=_9Q.SEMRESATTRS_K8S_JOB_NAME=_9Q.SEMRESATTRS_K8S_JOB_UID=_9Q.SEMRESATTRS_K8S_DAEMONSET_NAME=_9Q.SEMRESATTRS_K8S_DAEMONSET_UID=void 0;_9Q.TelemetrySdkLanguageValues=_9Q.TELEMETRYSDKLANGUAGEVALUES_WEBJS=_9Q.TELEMETRYSDKLANGUAGEVALUES_RUBY=_9Q.TELEMETRYSDKLANGUAGEVALUES_PYTHON=_9Q.TELEMETRYSDKLANGUAGEVALUES_PHP=_9Q.TELEMETRYSDKLANGUAGEVALUES_NODEJS=_9Q.TELEMETRYSDKLANGUAGEVALUES_JAVA=_9Q.TELEMETRYSDKLANGUAGEVALUES_GO=_9Q.TELEMETRYSDKLANGUAGEVALUES_ERLANG=_9Q.TELEMETRYSDKLANGUAGEVALUES_DOTNET=_9Q.TELEMETRYSDKLANGUAGEVALUES_CPP=_9Q.OsTypeValues=_9Q.OSTYPEVALUES_Z_OS=_9Q.OSTYPEVALUES_SOLARIS=_9Q.OSTYPEVALUES_AIX=_9Q.OSTYPEVALUES_HPUX=_9Q.OSTYPEVALUES_DRAGONFLYBSD=_9Q.OSTYPEVALUES_OPENBSD=_9Q.OSTYPEVALUES_NETBSD=_9Q.OSTYPEVALUES_FREEBSD=_9Q.OSTYPEVALUES_DARWIN=_9Q.OSTYPEVALUES_LINUX=_9Q.OSTYPEVALUES_WINDOWS=_9Q.HostArchValues=_9Q.HOSTARCHVALUES_X86=_9Q.HOSTARCHVALUES_PPC64=_9Q.HOSTARCHVALUES_PPC32=_9Q.HOSTARCHVALUES_IA64=_9Q.HOSTARCHVALUES_ARM64=_9Q.HOSTARCHVALUES_ARM32=_9Q.HOSTARCHVALUES_AMD64=_9Q.AwsEcsLaunchtypeValues=_9Q.AWSECSLAUNCHTYPEVALUES_FARGATE=_9Q.AWSECSLAUNCHTYPEVALUES_EC2=_9Q.CloudPlatformValues=_9Q.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=_9Q.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=_9Q.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=_9Q.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=void 0;var Q$=zp(),FYQ="cloud.provider",WYQ="cloud.account.id",ZYQ="cloud.region",$YQ="cloud.availability_zone",UYQ="cloud.platform",EYQ="aws.ecs.container.arn",KYQ="aws.ecs.cluster.arn",VYQ="aws.ecs.launchtype",IYQ="aws.ecs.task.arn",HYQ="aws.ecs.task.family",DYQ="aws.ecs.task.revision",NYQ="aws.eks.cluster.arn",LYQ="aws.log.group.names",qYQ="aws.log.group.arns",MYQ="aws.log.stream.names",zYQ="aws.log.stream.arns",RYQ="container.name",wYQ="container.id",jYQ="container.runtime",OYQ="container.image.name",PYQ="container.image.tag",TYQ="deployment.environment",SYQ="device.id",kYQ="device.model.identifier",_YQ="device.model.name",vYQ="faas.name",yYQ="faas.id",gYQ="faas.version",hYQ="faas.instance",xYQ="faas.max_memory",fYQ="host.id",bYQ="host.name",mYQ="host.type",uYQ="host.arch",dYQ="host.image.name",cYQ="host.image.id",lYQ="host.image.version",pYQ="k8s.cluster.name",iYQ="k8s.node.name",nYQ="k8s.node.uid",sYQ="k8s.namespace.name",rYQ="k8s.pod.uid",aYQ="k8s.pod.name",oYQ="k8s.container.name",tYQ="k8s.replicaset.uid",eYQ="k8s.replicaset.name",AJQ="k8s.deployment.uid",QJQ="k8s.deployment.name",BJQ="k8s.statefulset.uid",YJQ="k8s.statefulset.name",JJQ="k8s.daemonset.uid",CJQ="k8s.daemonset.name",XJQ="k8s.job.uid",GJQ="k8s.job.name",FJQ="k8s.cronjob.uid",WJQ="k8s.cronjob.name",ZJQ="os.type",$JQ="os.description",UJQ="os.name",EJQ="os.version",KJQ="process.pid",VJQ="process.executable.name",IJQ="process.executable.path",HJQ="process.command",DJQ="process.command_line",NJQ="process.command_args",LJQ="process.owner",qJQ="process.runtime.name",MJQ="process.runtime.version",zJQ="process.runtime.description",RJQ="service.name",wJQ="service.namespace",jJQ="service.instance.id",OJQ="service.version",PJQ="telemetry.sdk.name",TJQ="telemetry.sdk.language",SJQ="telemetry.sdk.version",kJQ="telemetry.auto.version",_JQ="webengine.name",vJQ="webengine.version",yJQ="webengine.description";_9Q.SEMRESATTRS_CLOUD_PROVIDER=FYQ;_9Q.SEMRESATTRS_CLOUD_ACCOUNT_ID=WYQ;_9Q.SEMRESATTRS_CLOUD_REGION=ZYQ;_9Q.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=$YQ;_9Q.SEMRESATTRS_CLOUD_PLATFORM=UYQ;_9Q.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=EYQ;_9Q.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=KYQ;_9Q.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=VYQ;_9Q.SEMRESATTRS_AWS_ECS_TASK_ARN=IYQ;_9Q.SEMRESATTRS_AWS_ECS_TASK_FAMILY=HYQ;_9Q.SEMRESATTRS_AWS_ECS_TASK_REVISION=DYQ;_9Q.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=NYQ;_9Q.SEMRESATTRS_AWS_LOG_GROUP_NAMES=LYQ;_9Q.SEMRESATTRS_AWS_LOG_GROUP_ARNS=qYQ;_9Q.SEMRESATTRS_AWS_LOG_STREAM_NAMES=MYQ;_9Q.SEMRESATTRS_AWS_LOG_STREAM_ARNS=zYQ;_9Q.SEMRESATTRS_CONTAINER_NAME=RYQ;_9Q.SEMRESATTRS_CONTAINER_ID=wYQ;_9Q.SEMRESATTRS_CONTAINER_RUNTIME=jYQ;_9Q.SEMRESATTRS_CONTAINER_IMAGE_NAME=OYQ;_9Q.SEMRESATTRS_CONTAINER_IMAGE_TAG=PYQ;_9Q.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=TYQ;_9Q.SEMRESATTRS_DEVICE_ID=SYQ;_9Q.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=kYQ;_9Q.SEMRESATTRS_DEVICE_MODEL_NAME=_YQ;_9Q.SEMRESATTRS_FAAS_NAME=vYQ;_9Q.SEMRESATTRS_FAAS_ID=yYQ;_9Q.SEMRESATTRS_FAAS_VERSION=gYQ;_9Q.SEMRESATTRS_FAAS_INSTANCE=hYQ;_9Q.SEMRESATTRS_FAAS_MAX_MEMORY=xYQ;_9Q.SEMRESATTRS_HOST_ID=fYQ;_9Q.SEMRESATTRS_HOST_NAME=bYQ;_9Q.SEMRESATTRS_HOST_TYPE=mYQ;_9Q.SEMRESATTRS_HOST_ARCH=uYQ;_9Q.SEMRESATTRS_HOST_IMAGE_NAME=dYQ;_9Q.SEMRESATTRS_HOST_IMAGE_ID=cYQ;_9Q.SEMRESATTRS_HOST_IMAGE_VERSION=lYQ;_9Q.SEMRESATTRS_K8S_CLUSTER_NAME=pYQ;_9Q.SEMRESATTRS_K8S_NODE_NAME=iYQ;_9Q.SEMRESATTRS_K8S_NODE_UID=nYQ;_9Q.SEMRESATTRS_K8S_NAMESPACE_NAME=sYQ;_9Q.SEMRESATTRS_K8S_POD_UID=rYQ;_9Q.SEMRESATTRS_K8S_POD_NAME=aYQ;_9Q.SEMRESATTRS_K8S_CONTAINER_NAME=oYQ;_9Q.SEMRESATTRS_K8S_REPLICASET_UID=tYQ;_9Q.SEMRESATTRS_K8S_REPLICASET_NAME=eYQ;_9Q.SEMRESATTRS_K8S_DEPLOYMENT_UID=AJQ;_9Q.SEMRESATTRS_K8S_DEPLOYMENT_NAME=QJQ;_9Q.SEMRESATTRS_K8S_STATEFULSET_UID=BJQ;_9Q.SEMRESATTRS_K8S_STATEFULSET_NAME=YJQ;_9Q.SEMRESATTRS_K8S_DAEMONSET_UID=JJQ;_9Q.SEMRESATTRS_K8S_DAEMONSET_NAME=CJQ;_9Q.SEMRESATTRS_K8S_JOB_UID=XJQ;_9Q.SEMRESATTRS_K8S_JOB_NAME=GJQ;_9Q.SEMRESATTRS_K8S_CRONJOB_UID=FJQ;_9Q.SEMRESATTRS_K8S_CRONJOB_NAME=WJQ;_9Q.SEMRESATTRS_OS_TYPE=ZJQ;_9Q.SEMRESATTRS_OS_DESCRIPTION=$JQ;_9Q.SEMRESATTRS_OS_NAME=UJQ;_9Q.SEMRESATTRS_OS_VERSION=EJQ;_9Q.SEMRESATTRS_PROCESS_PID=KJQ;_9Q.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=VJQ;_9Q.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=IJQ;_9Q.SEMRESATTRS_PROCESS_COMMAND=HJQ;_9Q.SEMRESATTRS_PROCESS_COMMAND_LINE=DJQ;_9Q.SEMRESATTRS_PROCESS_COMMAND_ARGS=NJQ;_9Q.SEMRESATTRS_PROCESS_OWNER=LJQ;_9Q.SEMRESATTRS_PROCESS_RUNTIME_NAME=qJQ;_9Q.SEMRESATTRS_PROCESS_RUNTIME_VERSION=MJQ;_9Q.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=zJQ;_9Q.SEMRESATTRS_SERVICE_NAME=RJQ;_9Q.SEMRESATTRS_SERVICE_NAMESPACE=wJQ;_9Q.SEMRESATTRS_SERVICE_INSTANCE_ID=jJQ;_9Q.SEMRESATTRS_SERVICE_VERSION=OJQ;_9Q.SEMRESATTRS_TELEMETRY_SDK_NAME=PJQ;_9Q.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=TJQ;_9Q.SEMRESATTRS_TELEMETRY_SDK_VERSION=SJQ;_9Q.SEMRESATTRS_TELEMETRY_AUTO_VERSION=kJQ;_9Q.SEMRESATTRS_WEBENGINE_NAME=_JQ;_9Q.SEMRESATTRS_WEBENGINE_VERSION=vJQ;_9Q.SEMRESATTRS_WEBENGINE_DESCRIPTION=yJQ;_9Q.SemanticResourceAttributes=(0,Q$.createConstMap)([FYQ,WYQ,ZYQ,$YQ,UYQ,EYQ,KYQ,VYQ,IYQ,HYQ,DYQ,NYQ,LYQ,qYQ,MYQ,zYQ,RYQ,wYQ,jYQ,OYQ,PYQ,TYQ,SYQ,kYQ,_YQ,vYQ,yYQ,gYQ,hYQ,xYQ,fYQ,bYQ,mYQ,uYQ,dYQ,cYQ,lYQ,pYQ,iYQ,nYQ,sYQ,rYQ,aYQ,oYQ,tYQ,eYQ,AJQ,QJQ,BJQ,YJQ,JJQ,CJQ,XJQ,GJQ,FJQ,WJQ,ZJQ,$JQ,UJQ,EJQ,KJQ,VJQ,IJQ,HJQ,DJQ,NJQ,LJQ,qJQ,MJQ,zJQ,RJQ,wJQ,jJQ,OJQ,PJQ,TJQ,SJQ,kJQ,_JQ,vJQ,yJQ]);var gJQ="alibaba_cloud",hJQ="aws",xJQ="azure",fJQ="gcp";_9Q.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=gJQ;_9Q.CLOUDPROVIDERVALUES_AWS=hJQ;_9Q.CLOUDPROVIDERVALUES_AZURE=xJQ;_9Q.CLOUDPROVIDERVALUES_GCP=fJQ;_9Q.CloudProviderValues=(0,Q$.createConstMap)([gJQ,hJQ,xJQ,fJQ]);var bJQ="alibaba_cloud_ecs",mJQ="alibaba_cloud_fc",uJQ="aws_ec2",dJQ="aws_ecs",cJQ="aws_eks",lJQ="aws_lambda",pJQ="aws_elastic_beanstalk",iJQ="azure_vm",nJQ="azure_container_instances",sJQ="azure_aks",rJQ="azure_functions",aJQ="azure_app_service",oJQ="gcp_compute_engine",tJQ="gcp_cloud_run",eJQ="gcp_kubernetes_engine",A9Q="gcp_cloud_functions",Q9Q="gcp_app_engine";_9Q.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=bJQ;_9Q.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=mJQ;_9Q.CLOUDPLATFORMVALUES_AWS_EC2=uJQ;_9Q.CLOUDPLATFORMVALUES_AWS_ECS=dJQ;_9Q.CLOUDPLATFORMVALUES_AWS_EKS=cJQ;_9Q.CLOUDPLATFORMVALUES_AWS_LAMBDA=lJQ;_9Q.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=pJQ;_9Q.CLOUDPLATFORMVALUES_AZURE_VM=iJQ;_9Q.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=nJQ;_9Q.CLOUDPLATFORMVALUES_AZURE_AKS=sJQ;_9Q.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=rJQ;_9Q.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=aJQ;_9Q.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=oJQ;_9Q.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=tJQ;_9Q.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=eJQ;_9Q.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=A9Q;_9Q.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=Q9Q;_9Q.CloudPlatformValues=(0,Q$.createConstMap)([bJQ,mJQ,uJQ,dJQ,cJQ,lJQ,pJQ,iJQ,nJQ,sJQ,rJQ,aJQ,oJQ,tJQ,eJQ,A9Q,Q9Q]);var B9Q="ec2",Y9Q="fargate";_9Q.AWSECSLAUNCHTYPEVALUES_EC2=B9Q;_9Q.AWSECSLAUNCHTYPEVALUES_FARGATE=Y9Q;_9Q.AwsEcsLaunchtypeValues=(0,Q$.createConstMap)([B9Q,Y9Q]);var J9Q="amd64",C9Q="arm32",X9Q="arm64",G9Q="ia64",F9Q="ppc32",W9Q="ppc64",Z9Q="x86";_9Q.HOSTARCHVALUES_AMD64=J9Q;_9Q.HOSTARCHVALUES_ARM32=C9Q;_9Q.HOSTARCHVALUES_ARM64=X9Q;_9Q.HOSTARCHVALUES_IA64=G9Q;_9Q.HOSTARCHVALUES_PPC32=F9Q;_9Q.HOSTARCHVALUES_PPC64=W9Q;_9Q.HOSTARCHVALUES_X86=Z9Q;_9Q.HostArchValues=(0,Q$.createConstMap)([J9Q,C9Q,X9Q,G9Q,F9Q,W9Q,Z9Q]);var $9Q="windows",U9Q="linux",E9Q="darwin",K9Q="freebsd",V9Q="netbsd",I9Q="openbsd",H9Q="dragonflybsd",D9Q="hpux",N9Q="aix",L9Q="solaris",q9Q="z_os";_9Q.OSTYPEVALUES_WINDOWS=$9Q;_9Q.OSTYPEVALUES_LINUX=U9Q;_9Q.OSTYPEVALUES_DARWIN=E9Q;_9Q.OSTYPEVALUES_FREEBSD=K9Q;_9Q.OSTYPEVALUES_NETBSD=V9Q;_9Q.OSTYPEVALUES_OPENBSD=I9Q;_9Q.OSTYPEVALUES_DRAGONFLYBSD=H9Q;_9Q.OSTYPEVALUES_HPUX=D9Q;_9Q.OSTYPEVALUES_AIX=N9Q;_9Q.OSTYPEVALUES_SOLARIS=L9Q;_9Q.OSTYPEVALUES_Z_OS=q9Q;_9Q.OsTypeValues=(0,Q$.createConstMap)([$9Q,U9Q,E9Q,K9Q,V9Q,I9Q,H9Q,D9Q,N9Q,L9Q,q9Q]);var M9Q="cpp",z9Q="dotnet",R9Q="erlang",w9Q="go",j9Q="java",O9Q="nodejs",P9Q="php",T9Q="python",S9Q="ruby",k9Q="webjs";_9Q.TELEMETRYSDKLANGUAGEVALUES_CPP=M9Q;_9Q.TELEMETRYSDKLANGUAGEVALUES_DOTNET=z9Q;_9Q.TELEMETRYSDKLANGUAGEVALUES_ERLANG=R9Q;_9Q.TELEMETRYSDKLANGUAGEVALUES_GO=w9Q;_9Q.TELEMETRYSDKLANGUAGEVALUES_JAVA=j9Q;_9Q.TELEMETRYSDKLANGUAGEVALUES_NODEJS=O9Q;_9Q.TELEMETRYSDKLANGUAGEVALUES_PHP=P9Q;_9Q.TELEMETRYSDKLANGUAGEVALUES_PYTHON=T9Q;_9Q.TELEMETRYSDKLANGUAGEVALUES_RUBY=S9Q;_9Q.TELEMETRYSDKLANGUAGEVALUES_WEBJS=k9Q;_9Q.TelemetrySdkLanguageValues=(0,Q$.createConstMap)([M9Q,z9Q,R9Q,w9Q,j9Q,O9Q,P9Q,T9Q,S9Q,k9Q])});var x9Q=R((B$)=>{var WC0=B$&&B$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),ZC0=B$&&B$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))WC0(Q,A,B)};Object.defineProperty(B$,"__esModule",{value:!0});ZC0(h9Q(),B$)});var d9Q=R((f9Q)=>{Object.defineProperty(f9Q,"__esModule",{value:!0});f9Q.HTTP_REQUEST_METHOD_VALUE_POST=f9Q.HTTP_REQUEST_METHOD_VALUE_PATCH=f9Q.HTTP_REQUEST_METHOD_VALUE_OPTIONS=f9Q.HTTP_REQUEST_METHOD_VALUE_HEAD=f9Q.HTTP_REQUEST_METHOD_VALUE_GET=f9Q.HTTP_REQUEST_METHOD_VALUE_DELETE=f9Q.HTTP_REQUEST_METHOD_VALUE_CONNECT=f9Q.HTTP_REQUEST_METHOD_VALUE_OTHER=f9Q.ATTR_HTTP_REQUEST_METHOD=f9Q.ATTR_HTTP_REQUEST_HEADER=f9Q.ATTR_EXCEPTION_TYPE=f9Q.ATTR_EXCEPTION_STACKTRACE=f9Q.ATTR_EXCEPTION_MESSAGE=f9Q.ATTR_EXCEPTION_ESCAPED=f9Q.ERROR_TYPE_VALUE_OTHER=f9Q.ATTR_ERROR_TYPE=f9Q.ATTR_CLIENT_PORT=f9Q.ATTR_CLIENT_ADDRESS=f9Q.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS=f9Q.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE=f9Q.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS=f9Q.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK=f9Q.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED=f9Q.ATTR_ASPNETCORE_RATE_LIMITING_POLICY=f9Q.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED=f9Q.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED=f9Q.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED=f9Q.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED=f9Q.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT=f9Q.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE=f9Q.ATTR_TELEMETRY_SDK_VERSION=f9Q.ATTR_TELEMETRY_SDK_NAME=f9Q.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS=f9Q.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT=f9Q.TELEMETRY_SDK_LANGUAGE_VALUE_RUST=f9Q.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY=f9Q.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON=f9Q.TELEMETRY_SDK_LANGUAGE_VALUE_PHP=f9Q.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS=f9Q.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA=f9Q.TELEMETRY_SDK_LANGUAGE_VALUE_GO=f9Q.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG=f9Q.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET=f9Q.TELEMETRY_SDK_LANGUAGE_VALUE_CPP=f9Q.ATTR_TELEMETRY_SDK_LANGUAGE=f9Q.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED=f9Q.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER=f9Q.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER=f9Q.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED=f9Q.ATTR_ASPNETCORE_RATE_LIMITING_RESULT=void 0;f9Q.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT=f9Q.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE=f9Q.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN=f9Q.ATTR_SIGNALR_CONNECTION_STATUS=f9Q.ATTR_SERVICE_VERSION=f9Q.ATTR_SERVICE_NAME=f9Q.ATTR_SERVER_PORT=f9Q.ATTR_SERVER_ADDRESS=f9Q.ATTR_OTEL_STATUS_DESCRIPTION=f9Q.OTEL_STATUS_CODE_VALUE_OK=f9Q.OTEL_STATUS_CODE_VALUE_ERROR=f9Q.ATTR_OTEL_STATUS_CODE=f9Q.ATTR_OTEL_SCOPE_VERSION=f9Q.ATTR_OTEL_SCOPE_NAME=f9Q.NETWORK_TYPE_VALUE_IPV6=f9Q.NETWORK_TYPE_VALUE_IPV4=f9Q.ATTR_NETWORK_TYPE=f9Q.NETWORK_TRANSPORT_VALUE_UNIX=f9Q.NETWORK_TRANSPORT_VALUE_UDP=f9Q.NETWORK_TRANSPORT_VALUE_TCP=f9Q.NETWORK_TRANSPORT_VALUE_QUIC=f9Q.NETWORK_TRANSPORT_VALUE_PIPE=f9Q.ATTR_NETWORK_TRANSPORT=f9Q.ATTR_NETWORK_PROTOCOL_VERSION=f9Q.ATTR_NETWORK_PROTOCOL_NAME=f9Q.ATTR_NETWORK_PEER_PORT=f9Q.ATTR_NETWORK_PEER_ADDRESS=f9Q.ATTR_NETWORK_LOCAL_PORT=f9Q.ATTR_NETWORK_LOCAL_ADDRESS=f9Q.JVM_THREAD_STATE_VALUE_WAITING=f9Q.JVM_THREAD_STATE_VALUE_TIMED_WAITING=f9Q.JVM_THREAD_STATE_VALUE_TERMINATED=f9Q.JVM_THREAD_STATE_VALUE_RUNNABLE=f9Q.JVM_THREAD_STATE_VALUE_NEW=f9Q.JVM_THREAD_STATE_VALUE_BLOCKED=f9Q.ATTR_JVM_THREAD_STATE=f9Q.ATTR_JVM_THREAD_DAEMON=f9Q.JVM_MEMORY_TYPE_VALUE_NON_HEAP=f9Q.JVM_MEMORY_TYPE_VALUE_HEAP=f9Q.ATTR_JVM_MEMORY_TYPE=f9Q.ATTR_JVM_MEMORY_POOL_NAME=f9Q.ATTR_JVM_GC_NAME=f9Q.ATTR_JVM_GC_ACTION=f9Q.ATTR_HTTP_ROUTE=f9Q.ATTR_HTTP_RESPONSE_STATUS_CODE=f9Q.ATTR_HTTP_RESPONSE_HEADER=f9Q.ATTR_HTTP_REQUEST_RESEND_COUNT=f9Q.ATTR_HTTP_REQUEST_METHOD_ORIGINAL=f9Q.HTTP_REQUEST_METHOD_VALUE_TRACE=f9Q.HTTP_REQUEST_METHOD_VALUE_PUT=void 0;f9Q.ATTR_USER_AGENT_ORIGINAL=f9Q.ATTR_URL_SCHEME=f9Q.ATTR_URL_QUERY=f9Q.ATTR_URL_PATH=f9Q.ATTR_URL_FULL=f9Q.ATTR_URL_FRAGMENT=f9Q.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS=f9Q.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS=f9Q.SIGNALR_TRANSPORT_VALUE_LONG_POLLING=f9Q.ATTR_SIGNALR_TRANSPORT=void 0;f9Q.ATTR_ASPNETCORE_RATE_LIMITING_RESULT="aspnetcore.rate_limiting.result";f9Q.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED="acquired";f9Q.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER="endpoint_limiter";f9Q.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER="global_limiter";f9Q.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED="request_canceled";f9Q.ATTR_TELEMETRY_SDK_LANGUAGE="telemetry.sdk.language";f9Q.TELEMETRY_SDK_LANGUAGE_VALUE_CPP="cpp";f9Q.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET="dotnet";f9Q.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG="erlang";f9Q.TELEMETRY_SDK_LANGUAGE_VALUE_GO="go";f9Q.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA="java";f9Q.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS="nodejs";f9Q.TELEMETRY_SDK_LANGUAGE_VALUE_PHP="php";f9Q.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON="python";f9Q.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY="ruby";f9Q.TELEMETRY_SDK_LANGUAGE_VALUE_RUST="rust";f9Q.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT="swift";f9Q.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS="webjs";f9Q.ATTR_TELEMETRY_SDK_NAME="telemetry.sdk.name";f9Q.ATTR_TELEMETRY_SDK_VERSION="telemetry.sdk.version";f9Q.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE="aspnetcore.diagnostics.handler.type";f9Q.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT="aspnetcore.diagnostics.exception.result";f9Q.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED="aborted";f9Q.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED="handled";f9Q.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED="skipped";f9Q.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED="unhandled";f9Q.ATTR_ASPNETCORE_RATE_LIMITING_POLICY="aspnetcore.rate_limiting.policy";f9Q.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED="aspnetcore.request.is_unhandled";f9Q.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK="aspnetcore.routing.is_fallback";f9Q.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS="aspnetcore.routing.match_status";f9Q.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE="failure";f9Q.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS="success";f9Q.ATTR_CLIENT_ADDRESS="client.address";f9Q.ATTR_CLIENT_PORT="client.port";f9Q.ATTR_ERROR_TYPE="error.type";f9Q.ERROR_TYPE_VALUE_OTHER="_OTHER";f9Q.ATTR_EXCEPTION_ESCAPED="exception.escaped";f9Q.ATTR_EXCEPTION_MESSAGE="exception.message";f9Q.ATTR_EXCEPTION_STACKTRACE="exception.stacktrace";f9Q.ATTR_EXCEPTION_TYPE="exception.type";var $C0=(A)=>`http.request.header.${A}`;f9Q.ATTR_HTTP_REQUEST_HEADER=$C0;f9Q.ATTR_HTTP_REQUEST_METHOD="http.request.method";f9Q.HTTP_REQUEST_METHOD_VALUE_OTHER="_OTHER";f9Q.HTTP_REQUEST_METHOD_VALUE_CONNECT="CONNECT";f9Q.HTTP_REQUEST_METHOD_VALUE_DELETE="DELETE";f9Q.HTTP_REQUEST_METHOD_VALUE_GET="GET";f9Q.HTTP_REQUEST_METHOD_VALUE_HEAD="HEAD";f9Q.HTTP_REQUEST_METHOD_VALUE_OPTIONS="OPTIONS";f9Q.HTTP_REQUEST_METHOD_VALUE_PATCH="PATCH";f9Q.HTTP_REQUEST_METHOD_VALUE_POST="POST";f9Q.HTTP_REQUEST_METHOD_VALUE_PUT="PUT";f9Q.HTTP_REQUEST_METHOD_VALUE_TRACE="TRACE";f9Q.ATTR_HTTP_REQUEST_METHOD_ORIGINAL="http.request.method_original";f9Q.ATTR_HTTP_REQUEST_RESEND_COUNT="http.request.resend_count";var UC0=(A)=>`http.response.header.${A}`;f9Q.ATTR_HTTP_RESPONSE_HEADER=UC0;f9Q.ATTR_HTTP_RESPONSE_STATUS_CODE="http.response.status_code";f9Q.ATTR_HTTP_ROUTE="http.route";f9Q.ATTR_JVM_GC_ACTION="jvm.gc.action";f9Q.ATTR_JVM_GC_NAME="jvm.gc.name";f9Q.ATTR_JVM_MEMORY_POOL_NAME="jvm.memory.pool.name";f9Q.ATTR_JVM_MEMORY_TYPE="jvm.memory.type";f9Q.JVM_MEMORY_TYPE_VALUE_HEAP="heap";f9Q.JVM_MEMORY_TYPE_VALUE_NON_HEAP="non_heap";f9Q.ATTR_JVM_THREAD_DAEMON="jvm.thread.daemon";f9Q.ATTR_JVM_THREAD_STATE="jvm.thread.state";f9Q.JVM_THREAD_STATE_VALUE_BLOCKED="blocked";f9Q.JVM_THREAD_STATE_VALUE_NEW="new";f9Q.JVM_THREAD_STATE_VALUE_RUNNABLE="runnable";f9Q.JVM_THREAD_STATE_VALUE_TERMINATED="terminated";f9Q.JVM_THREAD_STATE_VALUE_TIMED_WAITING="timed_waiting";f9Q.JVM_THREAD_STATE_VALUE_WAITING="waiting";f9Q.ATTR_NETWORK_LOCAL_ADDRESS="network.local.address";f9Q.ATTR_NETWORK_LOCAL_PORT="network.local.port";f9Q.ATTR_NETWORK_PEER_ADDRESS="network.peer.address";f9Q.ATTR_NETWORK_PEER_PORT="network.peer.port";f9Q.ATTR_NETWORK_PROTOCOL_NAME="network.protocol.name";f9Q.ATTR_NETWORK_PROTOCOL_VERSION="network.protocol.version";f9Q.ATTR_NETWORK_TRANSPORT="network.transport";f9Q.NETWORK_TRANSPORT_VALUE_PIPE="pipe";f9Q.NETWORK_TRANSPORT_VALUE_QUIC="quic";f9Q.NETWORK_TRANSPORT_VALUE_TCP="tcp";f9Q.NETWORK_TRANSPORT_VALUE_UDP="udp";f9Q.NETWORK_TRANSPORT_VALUE_UNIX="unix";f9Q.ATTR_NETWORK_TYPE="network.type";f9Q.NETWORK_TYPE_VALUE_IPV4="ipv4";f9Q.NETWORK_TYPE_VALUE_IPV6="ipv6";f9Q.ATTR_OTEL_SCOPE_NAME="otel.scope.name";f9Q.ATTR_OTEL_SCOPE_VERSION="otel.scope.version";f9Q.ATTR_OTEL_STATUS_CODE="otel.status_code";f9Q.OTEL_STATUS_CODE_VALUE_ERROR="ERROR";f9Q.OTEL_STATUS_CODE_VALUE_OK="OK";f9Q.ATTR_OTEL_STATUS_DESCRIPTION="otel.status_description";f9Q.ATTR_SERVER_ADDRESS="server.address";f9Q.ATTR_SERVER_PORT="server.port";f9Q.ATTR_SERVICE_NAME="service.name";f9Q.ATTR_SERVICE_VERSION="service.version";f9Q.ATTR_SIGNALR_CONNECTION_STATUS="signalr.connection.status";f9Q.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN="app_shutdown";f9Q.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE="normal_closure";f9Q.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT="timeout";f9Q.ATTR_SIGNALR_TRANSPORT="signalr.transport";f9Q.SIGNALR_TRANSPORT_VALUE_LONG_POLLING="long_polling";f9Q.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS="server_sent_events";f9Q.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS="web_sockets";f9Q.ATTR_URL_FRAGMENT="url.fragment";f9Q.ATTR_URL_FULL="url.full";f9Q.ATTR_URL_PATH="url.path";f9Q.ATTR_URL_QUERY="url.query";f9Q.ATTR_URL_SCHEME="url.scheme";f9Q.ATTR_USER_AGENT_ORIGINAL="user_agent.original"});var p9Q=R((c9Q)=>{Object.defineProperty(c9Q,"__esModule",{value:!0});c9Q.METRIC_SIGNALR_SERVER_CONNECTION_DURATION=c9Q.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS=c9Q.METRIC_KESTREL_UPGRADED_CONNECTIONS=c9Q.METRIC_KESTREL_TLS_HANDSHAKE_DURATION=c9Q.METRIC_KESTREL_REJECTED_CONNECTIONS=c9Q.METRIC_KESTREL_QUEUED_REQUESTS=c9Q.METRIC_KESTREL_QUEUED_CONNECTIONS=c9Q.METRIC_KESTREL_CONNECTION_DURATION=c9Q.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES=c9Q.METRIC_KESTREL_ACTIVE_CONNECTIONS=c9Q.METRIC_JVM_THREAD_COUNT=c9Q.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC=c9Q.METRIC_JVM_MEMORY_USED=c9Q.METRIC_JVM_MEMORY_LIMIT=c9Q.METRIC_JVM_MEMORY_COMMITTED=c9Q.METRIC_JVM_GC_DURATION=c9Q.METRIC_JVM_CPU_TIME=c9Q.METRIC_JVM_CPU_RECENT_UTILIZATION=c9Q.METRIC_JVM_CPU_COUNT=c9Q.METRIC_JVM_CLASS_UNLOADED=c9Q.METRIC_JVM_CLASS_LOADED=c9Q.METRIC_JVM_CLASS_COUNT=c9Q.METRIC_HTTP_SERVER_REQUEST_DURATION=c9Q.METRIC_HTTP_CLIENT_REQUEST_DURATION=c9Q.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS=c9Q.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS=c9Q.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION=c9Q.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE=c9Q.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS=c9Q.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES=c9Q.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS=void 0;c9Q.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS="aspnetcore.diagnostics.exceptions";c9Q.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES="aspnetcore.rate_limiting.active_request_leases";c9Q.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS="aspnetcore.rate_limiting.queued_requests";c9Q.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE="aspnetcore.rate_limiting.request.time_in_queue";c9Q.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION="aspnetcore.rate_limiting.request_lease.duration";c9Q.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS="aspnetcore.rate_limiting.requests";c9Q.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS="aspnetcore.routing.match_attempts";c9Q.METRIC_HTTP_CLIENT_REQUEST_DURATION="http.client.request.duration";c9Q.METRIC_HTTP_SERVER_REQUEST_DURATION="http.server.request.duration";c9Q.METRIC_JVM_CLASS_COUNT="jvm.class.count";c9Q.METRIC_JVM_CLASS_LOADED="jvm.class.loaded";c9Q.METRIC_JVM_CLASS_UNLOADED="jvm.class.unloaded";c9Q.METRIC_JVM_CPU_COUNT="jvm.cpu.count";c9Q.METRIC_JVM_CPU_RECENT_UTILIZATION="jvm.cpu.recent_utilization";c9Q.METRIC_JVM_CPU_TIME="jvm.cpu.time";c9Q.METRIC_JVM_GC_DURATION="jvm.gc.duration";c9Q.METRIC_JVM_MEMORY_COMMITTED="jvm.memory.committed";c9Q.METRIC_JVM_MEMORY_LIMIT="jvm.memory.limit";c9Q.METRIC_JVM_MEMORY_USED="jvm.memory.used";c9Q.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC="jvm.memory.used_after_last_gc";c9Q.METRIC_JVM_THREAD_COUNT="jvm.thread.count";c9Q.METRIC_KESTREL_ACTIVE_CONNECTIONS="kestrel.active_connections";c9Q.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES="kestrel.active_tls_handshakes";c9Q.METRIC_KESTREL_CONNECTION_DURATION="kestrel.connection.duration";c9Q.METRIC_KESTREL_QUEUED_CONNECTIONS="kestrel.queued_connections";c9Q.METRIC_KESTREL_QUEUED_REQUESTS="kestrel.queued_requests";c9Q.METRIC_KESTREL_REJECTED_CONNECTIONS="kestrel.rejected_connections";c9Q.METRIC_KESTREL_TLS_HANDSHAKE_DURATION="kestrel.tls_handshake.duration";c9Q.METRIC_KESTREL_UPGRADED_CONNECTIONS="kestrel.upgraded_connections";c9Q.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS="signalr.server.active_connections";c9Q.METRIC_SIGNALR_SERVER_CONNECTION_DURATION="signalr.server.connection.duration"});var i9Q=R((CX)=>{var dX0=CX&&CX.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),_O=CX&&CX.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))dX0(Q,A,B)};Object.defineProperty(CX,"__esModule",{value:!0});_O(GYQ(),CX);_O(x9Q(),CX);_O(d9Q(),CX);_O(p9Q(),CX)});var r9Q=R((n9Q)=>{Object.defineProperty(n9Q,"__esModule",{value:!0});n9Q.ExceptionEventName=void 0;n9Q.ExceptionEventName="exception"});var Rp=R((o9Q)=>{Object.defineProperty(o9Q,"__esModule",{value:!0});o9Q.Span=void 0;var x5=yA(),TJ=MB(),Y$=i9Q(),cX0=r9Q();class a9Q{constructor(A,Q,B,Y,J,C,X=[],G,F,W){this.attributes={},this.links=[],this.events=[],this._droppedAttributesCount=0,this._droppedEventsCount=0,this._droppedLinksCount=0,this.status={code:x5.SpanStatusCode.UNSET},this.endTime=[0,0],this._ended=!1,this._duration=[-1,-1],this.name=B,this._spanContext=Y,this.parentSpanId=C,this.kind=J,this.links=X;let Z=Date.now();if(this._performanceStartTime=TJ.otperformance.now(),this._performanceOffset=Z-(this._performanceStartTime+(0,TJ.getTimeOrigin)()),this._startTimeProvided=G!=null,this.startTime=this._getTime(G!==null&&G!==void 0?G:Z),this.resource=A.resource,this.instrumentationLibrary=A.instrumentationLibrary,this._spanLimits=A.getSpanLimits(),this._attributeValueLengthLimit=this._spanLimits.attributeValueLengthLimit||0,W!=null)this.setAttributes(W);this._spanProcessor=A.getActiveSpanProcessor(),this._spanProcessor.onStart(this,Q)}spanContext(){return this._spanContext}setAttribute(A,Q){if(Q==null||this._isSpanEnded())return this;if(A.length===0)return x5.diag.warn(`Invalid attribute key: ${A}`),this;if(!(0,TJ.isAttributeValue)(Q))return x5.diag.warn(`Invalid attribute value set for key: ${A}`),this;if(Object.keys(this.attributes).length>=this._spanLimits.attributeCountLimit&&!Object.prototype.hasOwnProperty.call(this.attributes,A))return this._droppedAttributesCount++,this;return this.attributes[A]=this._truncateToSize(Q),this}setAttributes(A){for(let[Q,B]of Object.entries(A))this.setAttribute(Q,B);return this}addEvent(A,Q,B){if(this._isSpanEnded())return this;if(this._spanLimits.eventCountLimit===0)return x5.diag.warn("No events allowed."),this._droppedEventsCount++,this;if(this.events.length>=this._spanLimits.eventCountLimit){if(this._droppedEventsCount===0)x5.diag.debug("Dropping extra events.");this.events.shift(),this._droppedEventsCount++}if((0,TJ.isTimeInput)(Q)){if(!(0,TJ.isTimeInput)(B))B=Q;Q=void 0}let Y=(0,TJ.sanitizeAttributes)(Q);return this.events.push({name:A,attributes:Y,time:this._getTime(B),droppedAttributesCount:0}),this}addLink(A){return this.links.push(A),this}addLinks(A){return this.links.push(...A),this}setStatus(A){if(this._isSpanEnded())return this;if(this.status=Object.assign({},A),this.status.message!=null&&typeof A.message!=="string")x5.diag.warn(`Dropping invalid status.message of type '${typeof A.message}', expected 'string'`),delete this.status.message;return this}updateName(A){if(this._isSpanEnded())return this;return this.name=A,this}end(A){if(this._isSpanEnded()){x5.diag.error(`${this.name} ${this._spanContext.traceId}-${this._spanContext.spanId} - You can only call end() on a span once.`);return}if(this._ended=!0,this.endTime=this._getTime(A),this._duration=(0,TJ.hrTimeDuration)(this.startTime,this.endTime),this._duration[0]<0)x5.diag.warn("Inconsistent start and end time, startTime > endTime. Setting span duration to 0ms.",this.startTime,this.endTime),this.endTime=this.startTime.slice(),this._duration=[0,0];if(this._droppedEventsCount>0)x5.diag.warn(`Dropped ${this._droppedEventsCount} events because eventCountLimit reached`);this._spanProcessor.onEnd(this)}_getTime(A){if(typeof A==="number"&&A<=TJ.otperformance.now())return(0,TJ.hrTime)(A+this._performanceOffset);if(typeof A==="number")return(0,TJ.millisToHrTime)(A);if(A instanceof Date)return(0,TJ.millisToHrTime)(A.getTime());if((0,TJ.isTimeInputHrTime)(A))return A;if(this._startTimeProvided)return(0,TJ.millisToHrTime)(Date.now());let Q=TJ.otperformance.now()-this._performanceStartTime;return(0,TJ.addHrTimes)(this.startTime,(0,TJ.millisToHrTime)(Q))}isRecording(){return this._ended===!1}recordException(A,Q){let B={};if(typeof A==="string")B[Y$.SEMATTRS_EXCEPTION_MESSAGE]=A;else if(A){if(A.code)B[Y$.SEMATTRS_EXCEPTION_TYPE]=A.code.toString();else if(A.name)B[Y$.SEMATTRS_EXCEPTION_TYPE]=A.name;if(A.message)B[Y$.SEMATTRS_EXCEPTION_MESSAGE]=A.message;if(A.stack)B[Y$.SEMATTRS_EXCEPTION_STACKTRACE]=A.stack}if(B[Y$.SEMATTRS_EXCEPTION_TYPE]||B[Y$.SEMATTRS_EXCEPTION_MESSAGE])this.addEvent(cX0.ExceptionEventName,B,Q);else x5.diag.warn(`Failed to record an exception ${A}`)}get duration(){return this._duration}get ended(){return this._ended}get droppedAttributesCount(){return this._droppedAttributesCount}get droppedEventsCount(){return this._droppedEventsCount}get droppedLinksCount(){return this._droppedLinksCount}_isSpanEnded(){if(this._ended)x5.diag.warn(`Can not execute the operation on ended Span {traceId: ${this._spanContext.traceId}, spanId: ${this._spanContext.spanId}}`);return this._ended}_truncateToLimitUtil(A,Q){if(A.length<=Q)return A;return A.substring(0,Q)}_truncateToSize(A){let Q=this._attributeValueLengthLimit;if(Q<=0)return x5.diag.warn(`Attribute value limit must be positive, got ${Q}`),A;if(typeof A==="string")return this._truncateToLimitUtil(A,Q);if(Array.isArray(A))return A.map((B)=>typeof B==="string"?this._truncateToLimitUtil(B,Q):B);return A}}o9Q.Span=a9Q});var FL=R((e9Q)=>{Object.defineProperty(e9Q,"__esModule",{value:!0});e9Q.SamplingDecision=void 0;var lX0;(function(A){A[A.NOT_RECORD=0]="NOT_RECORD",A[A.RECORD=1]="RECORD",A[A.RECORD_AND_SAMPLED=2]="RECORD_AND_SAMPLED"})(lX0=e9Q.SamplingDecision||(e9Q.SamplingDecision={}))});var vO=R((Q8Q)=>{Object.defineProperty(Q8Q,"__esModule",{value:!0});Q8Q.AlwaysOffSampler=void 0;var pX0=FL();class A8Q{shouldSample(){return{decision:pX0.SamplingDecision.NOT_RECORD}}toString(){return"AlwaysOffSampler"}}Q8Q.AlwaysOffSampler=A8Q});var yO=R((J8Q)=>{Object.defineProperty(J8Q,"__esModule",{value:!0});J8Q.AlwaysOnSampler=void 0;var iX0=FL();class Y8Q{shouldSample(){return{decision:iX0.SamplingDecision.RECORD_AND_SAMPLED}}toString(){return"AlwaysOnSampler"}}J8Q.AlwaysOnSampler=Y8Q});var Op=R((F8Q)=>{Object.defineProperty(F8Q,"__esModule",{value:!0});F8Q.ParentBasedSampler=void 0;var gO=yA(),nX0=MB(),X8Q=vO(),jp=yO();class G8Q{constructor(A){var Q,B,Y,J;if(this._root=A.root,!this._root)(0,nX0.globalErrorHandler)(Error("ParentBasedSampler must have a root sampler configured")),this._root=new jp.AlwaysOnSampler;this._remoteParentSampled=(Q=A.remoteParentSampled)!==null&&Q!==void 0?Q:new jp.AlwaysOnSampler,this._remoteParentNotSampled=(B=A.remoteParentNotSampled)!==null&&B!==void 0?B:new X8Q.AlwaysOffSampler,this._localParentSampled=(Y=A.localParentSampled)!==null&&Y!==void 0?Y:new jp.AlwaysOnSampler,this._localParentNotSampled=(J=A.localParentNotSampled)!==null&&J!==void 0?J:new X8Q.AlwaysOffSampler}shouldSample(A,Q,B,Y,J,C){let X=gO.trace.getSpanContext(A);if(!X||!(0,gO.isSpanContextValid)(X))return this._root.shouldSample(A,Q,B,Y,J,C);if(X.isRemote){if(X.traceFlags&gO.TraceFlags.SAMPLED)return this._remoteParentSampled.shouldSample(A,Q,B,Y,J,C);return this._remoteParentNotSampled.shouldSample(A,Q,B,Y,J,C)}if(X.traceFlags&gO.TraceFlags.SAMPLED)return this._localParentSampled.shouldSample(A,Q,B,Y,J,C);return this._localParentNotSampled.shouldSample(A,Q,B,Y,J,C)}toString(){return`ParentBased{root=${this._root.toString()}, remoteParentSampled=${this._remoteParentSampled.toString()}, remoteParentNotSampled=${this._remoteParentNotSampled.toString()}, localParentSampled=${this._localParentSampled.toString()}, localParentNotSampled=${this._localParentNotSampled.toString()}}`}}F8Q.ParentBasedSampler=G8Q});var Pp=R((U8Q)=>{Object.defineProperty(U8Q,"__esModule",{value:!0});U8Q.TraceIdRatioBasedSampler=void 0;var sX0=yA(),Z8Q=FL();class $8Q{constructor(A=0){this._ratio=A,this._ratio=this._normalize(A),this._upperBound=Math.floor(this._ratio*4294967295)}shouldSample(A,Q){return{decision:(0,sX0.isValidTraceId)(Q)&&this._accumulate(Q)=1?1:A<=0?0:A}_accumulate(A){let Q=0;for(let B=0;B>>0}return Q}}U8Q.TraceIdRatioBasedSampler=$8Q});var kp=R((D8Q)=>{Object.defineProperty(D8Q,"__esModule",{value:!0});D8Q.buildSamplerFromEnv=D8Q.loadDefaultConfig=void 0;var hO=yA(),Q6=MB(),K8Q=vO(),Tp=yO(),Sp=Op(),V8Q=Pp(),rX0=Q6.TracesSamplerValues.AlwaysOn,YK=1;function aX0(){let A=(0,Q6.getEnv)();return{sampler:H8Q(A),forceFlushTimeoutMillis:30000,generalLimits:{attributeValueLengthLimit:A.OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT,attributeCountLimit:A.OTEL_ATTRIBUTE_COUNT_LIMIT},spanLimits:{attributeValueLengthLimit:A.OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT,attributeCountLimit:A.OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT,linkCountLimit:A.OTEL_SPAN_LINK_COUNT_LIMIT,eventCountLimit:A.OTEL_SPAN_EVENT_COUNT_LIMIT,attributePerEventCountLimit:A.OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT,attributePerLinkCountLimit:A.OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT},mergeResourceWithDefaults:!0}}D8Q.loadDefaultConfig=aX0;function H8Q(A=(0,Q6.getEnv)()){switch(A.OTEL_TRACES_SAMPLER){case Q6.TracesSamplerValues.AlwaysOn:return new Tp.AlwaysOnSampler;case Q6.TracesSamplerValues.AlwaysOff:return new K8Q.AlwaysOffSampler;case Q6.TracesSamplerValues.ParentBasedAlwaysOn:return new Sp.ParentBasedSampler({root:new Tp.AlwaysOnSampler});case Q6.TracesSamplerValues.ParentBasedAlwaysOff:return new Sp.ParentBasedSampler({root:new K8Q.AlwaysOffSampler});case Q6.TracesSamplerValues.TraceIdRatio:return new V8Q.TraceIdRatioBasedSampler(I8Q(A));case Q6.TracesSamplerValues.ParentBasedTraceIdRatio:return new Sp.ParentBasedSampler({root:new V8Q.TraceIdRatioBasedSampler(I8Q(A))});default:return hO.diag.error(`OTEL_TRACES_SAMPLER value "${A.OTEL_TRACES_SAMPLER} invalid, defaulting to ${rX0}".`),new Tp.AlwaysOnSampler}}D8Q.buildSamplerFromEnv=H8Q;function I8Q(A){if(A.OTEL_TRACES_SAMPLER_ARG===void 0||A.OTEL_TRACES_SAMPLER_ARG==="")return hO.diag.error(`OTEL_TRACES_SAMPLER_ARG is blank, defaulting to ${YK}.`),YK;let Q=Number(A.OTEL_TRACES_SAMPLER_ARG);if(isNaN(Q))return hO.diag.error(`OTEL_TRACES_SAMPLER_ARG=${A.OTEL_TRACES_SAMPLER_ARG} was given, but it is invalid, defaulting to ${YK}.`),YK;if(Q<0||Q>1)return hO.diag.error(`OTEL_TRACES_SAMPLER_ARG=${A.OTEL_TRACES_SAMPLER_ARG} was given, but it is out of range ([0..1]), defaulting to ${YK}.`),YK;return Q}});var vp=R((q8Q)=>{Object.defineProperty(q8Q,"__esModule",{value:!0});q8Q.reconfigureLimits=q8Q.mergeConfig=void 0;var L8Q=kp(),_p=MB();function tX0(A){let Q={sampler:(0,L8Q.buildSamplerFromEnv)()},B=(0,L8Q.loadDefaultConfig)(),Y=Object.assign({},B,Q,A);return Y.generalLimits=Object.assign({},B.generalLimits,A.generalLimits||{}),Y.spanLimits=Object.assign({},B.spanLimits,A.spanLimits||{}),Y}q8Q.mergeConfig=tX0;function eX0(A){var Q,B,Y,J,C,X,G,F,W,Z,U,$;let E=Object.assign({},A.spanLimits),K=(0,_p.getEnvWithoutDefaults)();return E.attributeCountLimit=(X=(C=(J=(B=(Q=A.spanLimits)===null||Q===void 0?void 0:Q.attributeCountLimit)!==null&&B!==void 0?B:(Y=A.generalLimits)===null||Y===void 0?void 0:Y.attributeCountLimit)!==null&&J!==void 0?J:K.OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT)!==null&&C!==void 0?C:K.OTEL_ATTRIBUTE_COUNT_LIMIT)!==null&&X!==void 0?X:_p.DEFAULT_ATTRIBUTE_COUNT_LIMIT,E.attributeValueLengthLimit=($=(U=(Z=(F=(G=A.spanLimits)===null||G===void 0?void 0:G.attributeValueLengthLimit)!==null&&F!==void 0?F:(W=A.generalLimits)===null||W===void 0?void 0:W.attributeValueLengthLimit)!==null&&Z!==void 0?Z:K.OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT)!==null&&U!==void 0?U:K.OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT)!==null&&$!==void 0?$:_p.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,Object.assign({},A,{spanLimits:E})}q8Q.reconfigureLimits=eX0});var j8Q=R((R8Q)=>{Object.defineProperty(R8Q,"__esModule",{value:!0});R8Q.BatchSpanProcessorBase=void 0;var JK=yA(),J$=MB();class z8Q{constructor(A,Q){this._exporter=A,this._isExporting=!1,this._finishedSpans=[],this._droppedSpansCount=0;let B=(0,J$.getEnv)();if(this._maxExportBatchSize=typeof(Q===null||Q===void 0?void 0:Q.maxExportBatchSize)==="number"?Q.maxExportBatchSize:B.OTEL_BSP_MAX_EXPORT_BATCH_SIZE,this._maxQueueSize=typeof(Q===null||Q===void 0?void 0:Q.maxQueueSize)==="number"?Q.maxQueueSize:B.OTEL_BSP_MAX_QUEUE_SIZE,this._scheduledDelayMillis=typeof(Q===null||Q===void 0?void 0:Q.scheduledDelayMillis)==="number"?Q.scheduledDelayMillis:B.OTEL_BSP_SCHEDULE_DELAY,this._exportTimeoutMillis=typeof(Q===null||Q===void 0?void 0:Q.exportTimeoutMillis)==="number"?Q.exportTimeoutMillis:B.OTEL_BSP_EXPORT_TIMEOUT,this._shutdownOnce=new J$.BindOnceFuture(this._shutdown,this),this._maxExportBatchSize>this._maxQueueSize)JK.diag.warn("BatchSpanProcessor: maxExportBatchSize must be smaller or equal to maxQueueSize, setting maxExportBatchSize to match maxQueueSize"),this._maxExportBatchSize=this._maxQueueSize}forceFlush(){if(this._shutdownOnce.isCalled)return this._shutdownOnce.promise;return this._flushAll()}onStart(A,Q){}onEnd(A){if(this._shutdownOnce.isCalled)return;if((A.spanContext().traceFlags&JK.TraceFlags.SAMPLED)===0)return;this._addToBuffer(A)}shutdown(){return this._shutdownOnce.call()}_shutdown(){return Promise.resolve().then(()=>{return this.onShutdown()}).then(()=>{return this._flushAll()}).then(()=>{return this._exporter.shutdown()})}_addToBuffer(A){if(this._finishedSpans.length>=this._maxQueueSize){if(this._droppedSpansCount===0)JK.diag.debug("maxQueueSize reached, dropping spans");this._droppedSpansCount++;return}if(this._droppedSpansCount>0)JK.diag.warn(`Dropped ${this._droppedSpansCount} spans because maxQueueSize reached`),this._droppedSpansCount=0;this._finishedSpans.push(A),this._maybeStartTimer()}_flushAll(){return new Promise((A,Q)=>{let B=[],Y=Math.ceil(this._finishedSpans.length/this._maxExportBatchSize);for(let J=0,C=Y;J{A()}).catch(Q)})}_flushOneBatch(){if(this._clearTimer(),this._finishedSpans.length===0)return Promise.resolve();return new Promise((A,Q)=>{let B=setTimeout(()=>{Q(Error("Timeout"))},this._exportTimeoutMillis);JK.context.with((0,J$.suppressTracing)(JK.context.active()),()=>{let Y;if(this._finishedSpans.length<=this._maxExportBatchSize)Y=this._finishedSpans,this._finishedSpans=[];else Y=this._finishedSpans.splice(0,this._maxExportBatchSize);let J=()=>this._exporter.export(Y,(X)=>{var G;if(clearTimeout(B),X.code===J$.ExportResultCode.SUCCESS)A();else Q((G=X.error)!==null&&G!==void 0?G:Error("BatchSpanProcessor: span export failed"))}),C=null;for(let X=0,G=Y.length;X{(0,J$.globalErrorHandler)(X),Q(X)})})})}_maybeStartTimer(){if(this._isExporting)return;let A=()=>{this._isExporting=!0,this._flushOneBatch().finally(()=>{if(this._isExporting=!1,this._finishedSpans.length>0)this._clearTimer(),this._maybeStartTimer()}).catch((Q)=>{this._isExporting=!1,(0,J$.globalErrorHandler)(Q)})};if(this._finishedSpans.length>=this._maxExportBatchSize)return A();if(this._timer!==void 0)return;this._timer=setTimeout(()=>A(),this._scheduledDelayMillis),(0,J$.unrefTimer)(this._timer)}_clearTimer(){if(this._timer!==void 0)clearTimeout(this._timer),this._timer=void 0}}R8Q.BatchSpanProcessorBase=z8Q});var S8Q=R((P8Q)=>{Object.defineProperty(P8Q,"__esModule",{value:!0});P8Q.BatchSpanProcessor=void 0;var QG0=j8Q();class O8Q extends QG0.BatchSpanProcessorBase{onShutdown(){}}P8Q.BatchSpanProcessor=O8Q});var h8Q=R((y8Q)=>{Object.defineProperty(y8Q,"__esModule",{value:!0});y8Q.RandomIdGenerator=void 0;var BG0=8,_8Q=16;class v8Q{constructor(){this.generateTraceId=k8Q(_8Q),this.generateSpanId=k8Q(BG0)}}y8Q.RandomIdGenerator=v8Q;var xO=Buffer.allocUnsafe(_8Q);function k8Q(A){return function(){for(let B=0;B>>0,B*4);for(let B=0;B0)break;else if(B===A-1)xO[A-1]=1;return xO.toString("hex",0,A)}}});var x8Q=R((fO)=>{Object.defineProperty(fO,"__esModule",{value:!0});fO.RandomIdGenerator=fO.BatchSpanProcessor=void 0;var YG0=S8Q();Object.defineProperty(fO,"BatchSpanProcessor",{enumerable:!0,get:function(){return YG0.BatchSpanProcessor}});var JG0=h8Q();Object.defineProperty(fO,"RandomIdGenerator",{enumerable:!0,get:function(){return JG0.RandomIdGenerator}})});var mO=R((bO)=>{Object.defineProperty(bO,"__esModule",{value:!0});bO.RandomIdGenerator=bO.BatchSpanProcessor=void 0;var f8Q=x8Q();Object.defineProperty(bO,"BatchSpanProcessor",{enumerable:!0,get:function(){return f8Q.BatchSpanProcessor}});Object.defineProperty(bO,"RandomIdGenerator",{enumerable:!0,get:function(){return f8Q.RandomIdGenerator}})});var yp=R((m8Q)=>{Object.defineProperty(m8Q,"__esModule",{value:!0});m8Q.Tracer=void 0;var GJ=yA(),uO=MB(),GG0=Rp(),FG0=vp(),WG0=mO();class b8Q{constructor(A,Q,B){this._tracerProvider=B;let Y=(0,FG0.mergeConfig)(Q);this._sampler=Y.sampler,this._generalLimits=Y.generalLimits,this._spanLimits=Y.spanLimits,this._idGenerator=Q.idGenerator||new WG0.RandomIdGenerator,this.resource=B.resource,this.instrumentationLibrary=A}startSpan(A,Q={},B=GJ.context.active()){var Y,J,C;if(Q.root)B=GJ.trace.deleteSpan(B);let X=GJ.trace.getSpan(B);if((0,uO.isTracingSuppressed)(B))return GJ.diag.debug("Instrumentation suppressed, returning Noop Span"),GJ.trace.wrapSpanContext(GJ.INVALID_SPAN_CONTEXT);let G=X===null||X===void 0?void 0:X.spanContext(),F=this._idGenerator.generateSpanId(),W,Z,U;if(!G||!GJ.trace.isSpanContextValid(G))W=this._idGenerator.generateTraceId();else W=G.traceId,Z=G.traceState,U=G.spanId;let $=(Y=Q.kind)!==null&&Y!==void 0?Y:GJ.SpanKind.INTERNAL,E=((J=Q.links)!==null&&J!==void 0?J:[]).map((z)=>{return{context:z.context,attributes:(0,uO.sanitizeAttributes)(z.attributes)}}),K=(0,uO.sanitizeAttributes)(Q.attributes),I=this._sampler.shouldSample(B,W,A,$,K,E);Z=(C=I.traceState)!==null&&C!==void 0?C:Z;let V=I.decision===GJ.SamplingDecision.RECORD_AND_SAMPLED?GJ.TraceFlags.SAMPLED:GJ.TraceFlags.NONE,H={traceId:W,spanId:F,traceFlags:V,traceState:Z};if(I.decision===GJ.SamplingDecision.NOT_RECORD)return GJ.diag.debug("Recording is off, propagating context in a non-recording span"),GJ.trace.wrapSpanContext(H);let D=(0,uO.sanitizeAttributes)(Object.assign(K,I.attributes));return new GG0.Span(this,B,A,H,$,U,E,Q.startTime,void 0,D)}startActiveSpan(A,Q,B,Y){let J,C,X;if(arguments.length<2)return;else if(arguments.length===2)X=Q;else if(arguments.length===3)J=Q,X=B;else J=Q,C=B,X=Y;let G=C!==null&&C!==void 0?C:GJ.context.active(),F=this.startSpan(A,J,G),W=GJ.trace.setSpan(G,F);return GJ.context.with(W,X,void 0,F)}getGeneralLimits(){return this._generalLimits}getSpanLimits(){return this._spanLimits}getActiveSpanProcessor(){return this._tracerProvider.getActiveSpanProcessor()}}m8Q.Tracer=b8Q});var gp=R((d8Q)=>{Object.defineProperty(d8Q,"__esModule",{value:!0});d8Q.createConstMap=void 0;function ZG0(A){let Q={},B=A.length;for(let Y=0;Y{Object.defineProperty(vGQ,"__esModule",{value:!0});vGQ.SEMATTRS_NET_HOST_CARRIER_ICC=vGQ.SEMATTRS_NET_HOST_CARRIER_MNC=vGQ.SEMATTRS_NET_HOST_CARRIER_MCC=vGQ.SEMATTRS_NET_HOST_CARRIER_NAME=vGQ.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=vGQ.SEMATTRS_NET_HOST_CONNECTION_TYPE=vGQ.SEMATTRS_NET_HOST_NAME=vGQ.SEMATTRS_NET_HOST_PORT=vGQ.SEMATTRS_NET_HOST_IP=vGQ.SEMATTRS_NET_PEER_NAME=vGQ.SEMATTRS_NET_PEER_PORT=vGQ.SEMATTRS_NET_PEER_IP=vGQ.SEMATTRS_NET_TRANSPORT=vGQ.SEMATTRS_FAAS_INVOKED_REGION=vGQ.SEMATTRS_FAAS_INVOKED_PROVIDER=vGQ.SEMATTRS_FAAS_INVOKED_NAME=vGQ.SEMATTRS_FAAS_COLDSTART=vGQ.SEMATTRS_FAAS_CRON=vGQ.SEMATTRS_FAAS_TIME=vGQ.SEMATTRS_FAAS_DOCUMENT_NAME=vGQ.SEMATTRS_FAAS_DOCUMENT_TIME=vGQ.SEMATTRS_FAAS_DOCUMENT_OPERATION=vGQ.SEMATTRS_FAAS_DOCUMENT_COLLECTION=vGQ.SEMATTRS_FAAS_EXECUTION=vGQ.SEMATTRS_FAAS_TRIGGER=vGQ.SEMATTRS_EXCEPTION_ESCAPED=vGQ.SEMATTRS_EXCEPTION_STACKTRACE=vGQ.SEMATTRS_EXCEPTION_MESSAGE=vGQ.SEMATTRS_EXCEPTION_TYPE=vGQ.SEMATTRS_DB_SQL_TABLE=vGQ.SEMATTRS_DB_MONGODB_COLLECTION=vGQ.SEMATTRS_DB_REDIS_DATABASE_INDEX=vGQ.SEMATTRS_DB_HBASE_NAMESPACE=vGQ.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=vGQ.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=vGQ.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=vGQ.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=vGQ.SEMATTRS_DB_CASSANDRA_TABLE=vGQ.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=vGQ.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=vGQ.SEMATTRS_DB_CASSANDRA_KEYSPACE=vGQ.SEMATTRS_DB_MSSQL_INSTANCE_NAME=vGQ.SEMATTRS_DB_OPERATION=vGQ.SEMATTRS_DB_STATEMENT=vGQ.SEMATTRS_DB_NAME=vGQ.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=vGQ.SEMATTRS_DB_USER=vGQ.SEMATTRS_DB_CONNECTION_STRING=vGQ.SEMATTRS_DB_SYSTEM=vGQ.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=void 0;vGQ.SEMATTRS_MESSAGING_DESTINATION_KIND=vGQ.SEMATTRS_MESSAGING_DESTINATION=vGQ.SEMATTRS_MESSAGING_SYSTEM=vGQ.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=vGQ.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=vGQ.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=vGQ.SEMATTRS_AWS_DYNAMODB_COUNT=vGQ.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=vGQ.SEMATTRS_AWS_DYNAMODB_SEGMENT=vGQ.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=vGQ.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=vGQ.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=vGQ.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=vGQ.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=vGQ.SEMATTRS_AWS_DYNAMODB_SELECT=vGQ.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=vGQ.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=vGQ.SEMATTRS_AWS_DYNAMODB_LIMIT=vGQ.SEMATTRS_AWS_DYNAMODB_PROJECTION=vGQ.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=vGQ.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=vGQ.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=vGQ.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=vGQ.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=vGQ.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=vGQ.SEMATTRS_HTTP_CLIENT_IP=vGQ.SEMATTRS_HTTP_ROUTE=vGQ.SEMATTRS_HTTP_SERVER_NAME=vGQ.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=vGQ.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=vGQ.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=vGQ.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=vGQ.SEMATTRS_HTTP_USER_AGENT=vGQ.SEMATTRS_HTTP_FLAVOR=vGQ.SEMATTRS_HTTP_STATUS_CODE=vGQ.SEMATTRS_HTTP_SCHEME=vGQ.SEMATTRS_HTTP_HOST=vGQ.SEMATTRS_HTTP_TARGET=vGQ.SEMATTRS_HTTP_URL=vGQ.SEMATTRS_HTTP_METHOD=vGQ.SEMATTRS_CODE_LINENO=vGQ.SEMATTRS_CODE_FILEPATH=vGQ.SEMATTRS_CODE_NAMESPACE=vGQ.SEMATTRS_CODE_FUNCTION=vGQ.SEMATTRS_THREAD_NAME=vGQ.SEMATTRS_THREAD_ID=vGQ.SEMATTRS_ENDUSER_SCOPE=vGQ.SEMATTRS_ENDUSER_ROLE=vGQ.SEMATTRS_ENDUSER_ID=vGQ.SEMATTRS_PEER_SERVICE=void 0;vGQ.DBSYSTEMVALUES_FILEMAKER=vGQ.DBSYSTEMVALUES_DERBY=vGQ.DBSYSTEMVALUES_FIREBIRD=vGQ.DBSYSTEMVALUES_ADABAS=vGQ.DBSYSTEMVALUES_CACHE=vGQ.DBSYSTEMVALUES_EDB=vGQ.DBSYSTEMVALUES_FIRSTSQL=vGQ.DBSYSTEMVALUES_INGRES=vGQ.DBSYSTEMVALUES_HANADB=vGQ.DBSYSTEMVALUES_MAXDB=vGQ.DBSYSTEMVALUES_PROGRESS=vGQ.DBSYSTEMVALUES_HSQLDB=vGQ.DBSYSTEMVALUES_CLOUDSCAPE=vGQ.DBSYSTEMVALUES_HIVE=vGQ.DBSYSTEMVALUES_REDSHIFT=vGQ.DBSYSTEMVALUES_POSTGRESQL=vGQ.DBSYSTEMVALUES_DB2=vGQ.DBSYSTEMVALUES_ORACLE=vGQ.DBSYSTEMVALUES_MYSQL=vGQ.DBSYSTEMVALUES_MSSQL=vGQ.DBSYSTEMVALUES_OTHER_SQL=vGQ.SemanticAttributes=vGQ.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=vGQ.SEMATTRS_MESSAGE_COMPRESSED_SIZE=vGQ.SEMATTRS_MESSAGE_ID=vGQ.SEMATTRS_MESSAGE_TYPE=vGQ.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=vGQ.SEMATTRS_RPC_JSONRPC_ERROR_CODE=vGQ.SEMATTRS_RPC_JSONRPC_REQUEST_ID=vGQ.SEMATTRS_RPC_JSONRPC_VERSION=vGQ.SEMATTRS_RPC_GRPC_STATUS_CODE=vGQ.SEMATTRS_RPC_METHOD=vGQ.SEMATTRS_RPC_SERVICE=vGQ.SEMATTRS_RPC_SYSTEM=vGQ.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=vGQ.SEMATTRS_MESSAGING_KAFKA_PARTITION=vGQ.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=vGQ.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=vGQ.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=vGQ.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=vGQ.SEMATTRS_MESSAGING_CONSUMER_ID=vGQ.SEMATTRS_MESSAGING_OPERATION=vGQ.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=vGQ.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=vGQ.SEMATTRS_MESSAGING_CONVERSATION_ID=vGQ.SEMATTRS_MESSAGING_MESSAGE_ID=vGQ.SEMATTRS_MESSAGING_URL=vGQ.SEMATTRS_MESSAGING_PROTOCOL_VERSION=vGQ.SEMATTRS_MESSAGING_PROTOCOL=vGQ.SEMATTRS_MESSAGING_TEMP_DESTINATION=void 0;vGQ.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=vGQ.FaasDocumentOperationValues=vGQ.FAASDOCUMENTOPERATIONVALUES_DELETE=vGQ.FAASDOCUMENTOPERATIONVALUES_EDIT=vGQ.FAASDOCUMENTOPERATIONVALUES_INSERT=vGQ.FaasTriggerValues=vGQ.FAASTRIGGERVALUES_OTHER=vGQ.FAASTRIGGERVALUES_TIMER=vGQ.FAASTRIGGERVALUES_PUBSUB=vGQ.FAASTRIGGERVALUES_HTTP=vGQ.FAASTRIGGERVALUES_DATASOURCE=vGQ.DbCassandraConsistencyLevelValues=vGQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=vGQ.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=vGQ.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=vGQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=vGQ.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=vGQ.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=vGQ.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=vGQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=vGQ.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=vGQ.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=vGQ.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=vGQ.DbSystemValues=vGQ.DBSYSTEMVALUES_COCKROACHDB=vGQ.DBSYSTEMVALUES_MEMCACHED=vGQ.DBSYSTEMVALUES_ELASTICSEARCH=vGQ.DBSYSTEMVALUES_GEODE=vGQ.DBSYSTEMVALUES_NEO4J=vGQ.DBSYSTEMVALUES_DYNAMODB=vGQ.DBSYSTEMVALUES_COSMOSDB=vGQ.DBSYSTEMVALUES_COUCHDB=vGQ.DBSYSTEMVALUES_COUCHBASE=vGQ.DBSYSTEMVALUES_REDIS=vGQ.DBSYSTEMVALUES_MONGODB=vGQ.DBSYSTEMVALUES_HBASE=vGQ.DBSYSTEMVALUES_CASSANDRA=vGQ.DBSYSTEMVALUES_COLDFUSION=vGQ.DBSYSTEMVALUES_H2=vGQ.DBSYSTEMVALUES_VERTICA=vGQ.DBSYSTEMVALUES_TERADATA=vGQ.DBSYSTEMVALUES_SYBASE=vGQ.DBSYSTEMVALUES_SQLITE=vGQ.DBSYSTEMVALUES_POINTBASE=vGQ.DBSYSTEMVALUES_PERVASIVE=vGQ.DBSYSTEMVALUES_NETEZZA=vGQ.DBSYSTEMVALUES_MARIADB=vGQ.DBSYSTEMVALUES_INTERBASE=vGQ.DBSYSTEMVALUES_INSTANTDB=vGQ.DBSYSTEMVALUES_INFORMIX=void 0;vGQ.MESSAGINGOPERATIONVALUES_RECEIVE=vGQ.MessagingDestinationKindValues=vGQ.MESSAGINGDESTINATIONKINDVALUES_TOPIC=vGQ.MESSAGINGDESTINATIONKINDVALUES_QUEUE=vGQ.HttpFlavorValues=vGQ.HTTPFLAVORVALUES_QUIC=vGQ.HTTPFLAVORVALUES_SPDY=vGQ.HTTPFLAVORVALUES_HTTP_2_0=vGQ.HTTPFLAVORVALUES_HTTP_1_1=vGQ.HTTPFLAVORVALUES_HTTP_1_0=vGQ.NetHostConnectionSubtypeValues=vGQ.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=vGQ.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=vGQ.NETHOSTCONNECTIONSUBTYPEVALUES_NR=vGQ.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=vGQ.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=vGQ.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=vGQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=vGQ.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=vGQ.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=vGQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=vGQ.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=vGQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=vGQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=vGQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=vGQ.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=vGQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=vGQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=vGQ.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=vGQ.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=vGQ.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=vGQ.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=vGQ.NetHostConnectionTypeValues=vGQ.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=vGQ.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=vGQ.NETHOSTCONNECTIONTYPEVALUES_CELL=vGQ.NETHOSTCONNECTIONTYPEVALUES_WIRED=vGQ.NETHOSTCONNECTIONTYPEVALUES_WIFI=vGQ.NetTransportValues=vGQ.NETTRANSPORTVALUES_OTHER=vGQ.NETTRANSPORTVALUES_INPROC=vGQ.NETTRANSPORTVALUES_PIPE=vGQ.NETTRANSPORTVALUES_UNIX=vGQ.NETTRANSPORTVALUES_IP=vGQ.NETTRANSPORTVALUES_IP_UDP=vGQ.NETTRANSPORTVALUES_IP_TCP=vGQ.FaasInvokedProviderValues=vGQ.FAASINVOKEDPROVIDERVALUES_GCP=vGQ.FAASINVOKEDPROVIDERVALUES_AZURE=vGQ.FAASINVOKEDPROVIDERVALUES_AWS=void 0;vGQ.MessageTypeValues=vGQ.MESSAGETYPEVALUES_RECEIVED=vGQ.MESSAGETYPEVALUES_SENT=vGQ.RpcGrpcStatusCodeValues=vGQ.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=vGQ.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=vGQ.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=vGQ.RPCGRPCSTATUSCODEVALUES_INTERNAL=vGQ.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=vGQ.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=vGQ.RPCGRPCSTATUSCODEVALUES_ABORTED=vGQ.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=vGQ.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=vGQ.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=vGQ.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=vGQ.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=vGQ.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=vGQ.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=vGQ.RPCGRPCSTATUSCODEVALUES_UNKNOWN=vGQ.RPCGRPCSTATUSCODEVALUES_CANCELLED=vGQ.RPCGRPCSTATUSCODEVALUES_OK=vGQ.MessagingOperationValues=vGQ.MESSAGINGOPERATIONVALUES_PROCESS=void 0;var f5=gp(),l8Q="aws.lambda.invoked_arn",p8Q="db.system",i8Q="db.connection_string",n8Q="db.user",s8Q="db.jdbc.driver_classname",r8Q="db.name",a8Q="db.statement",o8Q="db.operation",t8Q="db.mssql.instance_name",e8Q="db.cassandra.keyspace",A5Q="db.cassandra.page_size",Q5Q="db.cassandra.consistency_level",B5Q="db.cassandra.table",Y5Q="db.cassandra.idempotence",J5Q="db.cassandra.speculative_execution_count",C5Q="db.cassandra.coordinator.id",X5Q="db.cassandra.coordinator.dc",G5Q="db.hbase.namespace",F5Q="db.redis.database_index",W5Q="db.mongodb.collection",Z5Q="db.sql.table",$5Q="exception.type",U5Q="exception.message",E5Q="exception.stacktrace",K5Q="exception.escaped",V5Q="faas.trigger",I5Q="faas.execution",H5Q="faas.document.collection",D5Q="faas.document.operation",N5Q="faas.document.time",L5Q="faas.document.name",q5Q="faas.time",M5Q="faas.cron",z5Q="faas.coldstart",R5Q="faas.invoked_name",w5Q="faas.invoked_provider",j5Q="faas.invoked_region",O5Q="net.transport",P5Q="net.peer.ip",T5Q="net.peer.port",S5Q="net.peer.name",k5Q="net.host.ip",_5Q="net.host.port",v5Q="net.host.name",y5Q="net.host.connection.type",g5Q="net.host.connection.subtype",h5Q="net.host.carrier.name",x5Q="net.host.carrier.mcc",f5Q="net.host.carrier.mnc",b5Q="net.host.carrier.icc",m5Q="peer.service",u5Q="enduser.id",d5Q="enduser.role",c5Q="enduser.scope",l5Q="thread.id",p5Q="thread.name",i5Q="code.function",n5Q="code.namespace",s5Q="code.filepath",r5Q="code.lineno",a5Q="http.method",o5Q="http.url",t5Q="http.target",e5Q="http.host",ACQ="http.scheme",QCQ="http.status_code",BCQ="http.flavor",YCQ="http.user_agent",JCQ="http.request_content_length",CCQ="http.request_content_length_uncompressed",XCQ="http.response_content_length",GCQ="http.response_content_length_uncompressed",FCQ="http.server_name",WCQ="http.route",ZCQ="http.client_ip",$CQ="aws.dynamodb.table_names",UCQ="aws.dynamodb.consumed_capacity",ECQ="aws.dynamodb.item_collection_metrics",KCQ="aws.dynamodb.provisioned_read_capacity",VCQ="aws.dynamodb.provisioned_write_capacity",ICQ="aws.dynamodb.consistent_read",HCQ="aws.dynamodb.projection",DCQ="aws.dynamodb.limit",NCQ="aws.dynamodb.attributes_to_get",LCQ="aws.dynamodb.index_name",qCQ="aws.dynamodb.select",MCQ="aws.dynamodb.global_secondary_indexes",zCQ="aws.dynamodb.local_secondary_indexes",RCQ="aws.dynamodb.exclusive_start_table",wCQ="aws.dynamodb.table_count",jCQ="aws.dynamodb.scan_forward",OCQ="aws.dynamodb.segment",PCQ="aws.dynamodb.total_segments",TCQ="aws.dynamodb.count",SCQ="aws.dynamodb.scanned_count",kCQ="aws.dynamodb.attribute_definitions",_CQ="aws.dynamodb.global_secondary_index_updates",vCQ="messaging.system",yCQ="messaging.destination",gCQ="messaging.destination_kind",hCQ="messaging.temp_destination",xCQ="messaging.protocol",fCQ="messaging.protocol_version",bCQ="messaging.url",mCQ="messaging.message_id",uCQ="messaging.conversation_id",dCQ="messaging.message_payload_size_bytes",cCQ="messaging.message_payload_compressed_size_bytes",lCQ="messaging.operation",pCQ="messaging.consumer_id",iCQ="messaging.rabbitmq.routing_key",nCQ="messaging.kafka.message_key",sCQ="messaging.kafka.consumer_group",rCQ="messaging.kafka.client_id",aCQ="messaging.kafka.partition",oCQ="messaging.kafka.tombstone",tCQ="rpc.system",eCQ="rpc.service",A1Q="rpc.method",Q1Q="rpc.grpc.status_code",B1Q="rpc.jsonrpc.version",Y1Q="rpc.jsonrpc.request_id",J1Q="rpc.jsonrpc.error_code",C1Q="rpc.jsonrpc.error_message",X1Q="message.type",G1Q="message.id",F1Q="message.compressed_size",W1Q="message.uncompressed_size";vGQ.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=l8Q;vGQ.SEMATTRS_DB_SYSTEM=p8Q;vGQ.SEMATTRS_DB_CONNECTION_STRING=i8Q;vGQ.SEMATTRS_DB_USER=n8Q;vGQ.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=s8Q;vGQ.SEMATTRS_DB_NAME=r8Q;vGQ.SEMATTRS_DB_STATEMENT=a8Q;vGQ.SEMATTRS_DB_OPERATION=o8Q;vGQ.SEMATTRS_DB_MSSQL_INSTANCE_NAME=t8Q;vGQ.SEMATTRS_DB_CASSANDRA_KEYSPACE=e8Q;vGQ.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=A5Q;vGQ.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=Q5Q;vGQ.SEMATTRS_DB_CASSANDRA_TABLE=B5Q;vGQ.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=Y5Q;vGQ.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=J5Q;vGQ.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=C5Q;vGQ.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=X5Q;vGQ.SEMATTRS_DB_HBASE_NAMESPACE=G5Q;vGQ.SEMATTRS_DB_REDIS_DATABASE_INDEX=F5Q;vGQ.SEMATTRS_DB_MONGODB_COLLECTION=W5Q;vGQ.SEMATTRS_DB_SQL_TABLE=Z5Q;vGQ.SEMATTRS_EXCEPTION_TYPE=$5Q;vGQ.SEMATTRS_EXCEPTION_MESSAGE=U5Q;vGQ.SEMATTRS_EXCEPTION_STACKTRACE=E5Q;vGQ.SEMATTRS_EXCEPTION_ESCAPED=K5Q;vGQ.SEMATTRS_FAAS_TRIGGER=V5Q;vGQ.SEMATTRS_FAAS_EXECUTION=I5Q;vGQ.SEMATTRS_FAAS_DOCUMENT_COLLECTION=H5Q;vGQ.SEMATTRS_FAAS_DOCUMENT_OPERATION=D5Q;vGQ.SEMATTRS_FAAS_DOCUMENT_TIME=N5Q;vGQ.SEMATTRS_FAAS_DOCUMENT_NAME=L5Q;vGQ.SEMATTRS_FAAS_TIME=q5Q;vGQ.SEMATTRS_FAAS_CRON=M5Q;vGQ.SEMATTRS_FAAS_COLDSTART=z5Q;vGQ.SEMATTRS_FAAS_INVOKED_NAME=R5Q;vGQ.SEMATTRS_FAAS_INVOKED_PROVIDER=w5Q;vGQ.SEMATTRS_FAAS_INVOKED_REGION=j5Q;vGQ.SEMATTRS_NET_TRANSPORT=O5Q;vGQ.SEMATTRS_NET_PEER_IP=P5Q;vGQ.SEMATTRS_NET_PEER_PORT=T5Q;vGQ.SEMATTRS_NET_PEER_NAME=S5Q;vGQ.SEMATTRS_NET_HOST_IP=k5Q;vGQ.SEMATTRS_NET_HOST_PORT=_5Q;vGQ.SEMATTRS_NET_HOST_NAME=v5Q;vGQ.SEMATTRS_NET_HOST_CONNECTION_TYPE=y5Q;vGQ.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=g5Q;vGQ.SEMATTRS_NET_HOST_CARRIER_NAME=h5Q;vGQ.SEMATTRS_NET_HOST_CARRIER_MCC=x5Q;vGQ.SEMATTRS_NET_HOST_CARRIER_MNC=f5Q;vGQ.SEMATTRS_NET_HOST_CARRIER_ICC=b5Q;vGQ.SEMATTRS_PEER_SERVICE=m5Q;vGQ.SEMATTRS_ENDUSER_ID=u5Q;vGQ.SEMATTRS_ENDUSER_ROLE=d5Q;vGQ.SEMATTRS_ENDUSER_SCOPE=c5Q;vGQ.SEMATTRS_THREAD_ID=l5Q;vGQ.SEMATTRS_THREAD_NAME=p5Q;vGQ.SEMATTRS_CODE_FUNCTION=i5Q;vGQ.SEMATTRS_CODE_NAMESPACE=n5Q;vGQ.SEMATTRS_CODE_FILEPATH=s5Q;vGQ.SEMATTRS_CODE_LINENO=r5Q;vGQ.SEMATTRS_HTTP_METHOD=a5Q;vGQ.SEMATTRS_HTTP_URL=o5Q;vGQ.SEMATTRS_HTTP_TARGET=t5Q;vGQ.SEMATTRS_HTTP_HOST=e5Q;vGQ.SEMATTRS_HTTP_SCHEME=ACQ;vGQ.SEMATTRS_HTTP_STATUS_CODE=QCQ;vGQ.SEMATTRS_HTTP_FLAVOR=BCQ;vGQ.SEMATTRS_HTTP_USER_AGENT=YCQ;vGQ.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=JCQ;vGQ.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=CCQ;vGQ.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=XCQ;vGQ.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=GCQ;vGQ.SEMATTRS_HTTP_SERVER_NAME=FCQ;vGQ.SEMATTRS_HTTP_ROUTE=WCQ;vGQ.SEMATTRS_HTTP_CLIENT_IP=ZCQ;vGQ.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=$CQ;vGQ.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=UCQ;vGQ.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=ECQ;vGQ.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=KCQ;vGQ.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=VCQ;vGQ.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=ICQ;vGQ.SEMATTRS_AWS_DYNAMODB_PROJECTION=HCQ;vGQ.SEMATTRS_AWS_DYNAMODB_LIMIT=DCQ;vGQ.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=NCQ;vGQ.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=LCQ;vGQ.SEMATTRS_AWS_DYNAMODB_SELECT=qCQ;vGQ.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=MCQ;vGQ.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=zCQ;vGQ.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=RCQ;vGQ.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=wCQ;vGQ.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=jCQ;vGQ.SEMATTRS_AWS_DYNAMODB_SEGMENT=OCQ;vGQ.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=PCQ;vGQ.SEMATTRS_AWS_DYNAMODB_COUNT=TCQ;vGQ.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=SCQ;vGQ.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=kCQ;vGQ.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=_CQ;vGQ.SEMATTRS_MESSAGING_SYSTEM=vCQ;vGQ.SEMATTRS_MESSAGING_DESTINATION=yCQ;vGQ.SEMATTRS_MESSAGING_DESTINATION_KIND=gCQ;vGQ.SEMATTRS_MESSAGING_TEMP_DESTINATION=hCQ;vGQ.SEMATTRS_MESSAGING_PROTOCOL=xCQ;vGQ.SEMATTRS_MESSAGING_PROTOCOL_VERSION=fCQ;vGQ.SEMATTRS_MESSAGING_URL=bCQ;vGQ.SEMATTRS_MESSAGING_MESSAGE_ID=mCQ;vGQ.SEMATTRS_MESSAGING_CONVERSATION_ID=uCQ;vGQ.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=dCQ;vGQ.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=cCQ;vGQ.SEMATTRS_MESSAGING_OPERATION=lCQ;vGQ.SEMATTRS_MESSAGING_CONSUMER_ID=pCQ;vGQ.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=iCQ;vGQ.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=nCQ;vGQ.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=sCQ;vGQ.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=rCQ;vGQ.SEMATTRS_MESSAGING_KAFKA_PARTITION=aCQ;vGQ.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=oCQ;vGQ.SEMATTRS_RPC_SYSTEM=tCQ;vGQ.SEMATTRS_RPC_SERVICE=eCQ;vGQ.SEMATTRS_RPC_METHOD=A1Q;vGQ.SEMATTRS_RPC_GRPC_STATUS_CODE=Q1Q;vGQ.SEMATTRS_RPC_JSONRPC_VERSION=B1Q;vGQ.SEMATTRS_RPC_JSONRPC_REQUEST_ID=Y1Q;vGQ.SEMATTRS_RPC_JSONRPC_ERROR_CODE=J1Q;vGQ.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=C1Q;vGQ.SEMATTRS_MESSAGE_TYPE=X1Q;vGQ.SEMATTRS_MESSAGE_ID=G1Q;vGQ.SEMATTRS_MESSAGE_COMPRESSED_SIZE=F1Q;vGQ.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=W1Q;vGQ.SemanticAttributes=(0,f5.createConstMap)([l8Q,p8Q,i8Q,n8Q,s8Q,r8Q,a8Q,o8Q,t8Q,e8Q,A5Q,Q5Q,B5Q,Y5Q,J5Q,C5Q,X5Q,G5Q,F5Q,W5Q,Z5Q,$5Q,U5Q,E5Q,K5Q,V5Q,I5Q,H5Q,D5Q,N5Q,L5Q,q5Q,M5Q,z5Q,R5Q,w5Q,j5Q,O5Q,P5Q,T5Q,S5Q,k5Q,_5Q,v5Q,y5Q,g5Q,h5Q,x5Q,f5Q,b5Q,m5Q,u5Q,d5Q,c5Q,l5Q,p5Q,i5Q,n5Q,s5Q,r5Q,a5Q,o5Q,t5Q,e5Q,ACQ,QCQ,BCQ,YCQ,JCQ,CCQ,XCQ,GCQ,FCQ,WCQ,ZCQ,$CQ,UCQ,ECQ,KCQ,VCQ,ICQ,HCQ,DCQ,NCQ,LCQ,qCQ,MCQ,zCQ,RCQ,wCQ,jCQ,OCQ,PCQ,TCQ,SCQ,kCQ,_CQ,vCQ,yCQ,gCQ,hCQ,xCQ,fCQ,bCQ,mCQ,uCQ,dCQ,cCQ,lCQ,pCQ,iCQ,nCQ,sCQ,rCQ,aCQ,oCQ,tCQ,eCQ,A1Q,Q1Q,B1Q,Y1Q,J1Q,C1Q,X1Q,G1Q,F1Q,W1Q]);var Z1Q="other_sql",$1Q="mssql",U1Q="mysql",E1Q="oracle",K1Q="db2",V1Q="postgresql",I1Q="redshift",H1Q="hive",D1Q="cloudscape",N1Q="hsqldb",L1Q="progress",q1Q="maxdb",M1Q="hanadb",z1Q="ingres",R1Q="firstsql",w1Q="edb",j1Q="cache",O1Q="adabas",P1Q="firebird",T1Q="derby",S1Q="filemaker",k1Q="informix",_1Q="instantdb",v1Q="interbase",y1Q="mariadb",g1Q="netezza",h1Q="pervasive",x1Q="pointbase",f1Q="sqlite",b1Q="sybase",m1Q="teradata",u1Q="vertica",d1Q="h2",c1Q="coldfusion",l1Q="cassandra",p1Q="hbase",i1Q="mongodb",n1Q="redis",s1Q="couchbase",r1Q="couchdb",a1Q="cosmosdb",o1Q="dynamodb",t1Q="neo4j",e1Q="geode",AXQ="elasticsearch",QXQ="memcached",BXQ="cockroachdb";vGQ.DBSYSTEMVALUES_OTHER_SQL=Z1Q;vGQ.DBSYSTEMVALUES_MSSQL=$1Q;vGQ.DBSYSTEMVALUES_MYSQL=U1Q;vGQ.DBSYSTEMVALUES_ORACLE=E1Q;vGQ.DBSYSTEMVALUES_DB2=K1Q;vGQ.DBSYSTEMVALUES_POSTGRESQL=V1Q;vGQ.DBSYSTEMVALUES_REDSHIFT=I1Q;vGQ.DBSYSTEMVALUES_HIVE=H1Q;vGQ.DBSYSTEMVALUES_CLOUDSCAPE=D1Q;vGQ.DBSYSTEMVALUES_HSQLDB=N1Q;vGQ.DBSYSTEMVALUES_PROGRESS=L1Q;vGQ.DBSYSTEMVALUES_MAXDB=q1Q;vGQ.DBSYSTEMVALUES_HANADB=M1Q;vGQ.DBSYSTEMVALUES_INGRES=z1Q;vGQ.DBSYSTEMVALUES_FIRSTSQL=R1Q;vGQ.DBSYSTEMVALUES_EDB=w1Q;vGQ.DBSYSTEMVALUES_CACHE=j1Q;vGQ.DBSYSTEMVALUES_ADABAS=O1Q;vGQ.DBSYSTEMVALUES_FIREBIRD=P1Q;vGQ.DBSYSTEMVALUES_DERBY=T1Q;vGQ.DBSYSTEMVALUES_FILEMAKER=S1Q;vGQ.DBSYSTEMVALUES_INFORMIX=k1Q;vGQ.DBSYSTEMVALUES_INSTANTDB=_1Q;vGQ.DBSYSTEMVALUES_INTERBASE=v1Q;vGQ.DBSYSTEMVALUES_MARIADB=y1Q;vGQ.DBSYSTEMVALUES_NETEZZA=g1Q;vGQ.DBSYSTEMVALUES_PERVASIVE=h1Q;vGQ.DBSYSTEMVALUES_POINTBASE=x1Q;vGQ.DBSYSTEMVALUES_SQLITE=f1Q;vGQ.DBSYSTEMVALUES_SYBASE=b1Q;vGQ.DBSYSTEMVALUES_TERADATA=m1Q;vGQ.DBSYSTEMVALUES_VERTICA=u1Q;vGQ.DBSYSTEMVALUES_H2=d1Q;vGQ.DBSYSTEMVALUES_COLDFUSION=c1Q;vGQ.DBSYSTEMVALUES_CASSANDRA=l1Q;vGQ.DBSYSTEMVALUES_HBASE=p1Q;vGQ.DBSYSTEMVALUES_MONGODB=i1Q;vGQ.DBSYSTEMVALUES_REDIS=n1Q;vGQ.DBSYSTEMVALUES_COUCHBASE=s1Q;vGQ.DBSYSTEMVALUES_COUCHDB=r1Q;vGQ.DBSYSTEMVALUES_COSMOSDB=a1Q;vGQ.DBSYSTEMVALUES_DYNAMODB=o1Q;vGQ.DBSYSTEMVALUES_NEO4J=t1Q;vGQ.DBSYSTEMVALUES_GEODE=e1Q;vGQ.DBSYSTEMVALUES_ELASTICSEARCH=AXQ;vGQ.DBSYSTEMVALUES_MEMCACHED=QXQ;vGQ.DBSYSTEMVALUES_COCKROACHDB=BXQ;vGQ.DbSystemValues=(0,f5.createConstMap)([Z1Q,$1Q,U1Q,E1Q,K1Q,V1Q,I1Q,H1Q,D1Q,N1Q,L1Q,q1Q,M1Q,z1Q,R1Q,w1Q,j1Q,O1Q,P1Q,T1Q,S1Q,k1Q,_1Q,v1Q,y1Q,g1Q,h1Q,x1Q,f1Q,b1Q,m1Q,u1Q,d1Q,c1Q,l1Q,p1Q,i1Q,n1Q,s1Q,r1Q,a1Q,o1Q,t1Q,e1Q,AXQ,QXQ,BXQ]);var YXQ="all",JXQ="each_quorum",CXQ="quorum",XXQ="local_quorum",GXQ="one",FXQ="two",WXQ="three",ZXQ="local_one",$XQ="any",UXQ="serial",EXQ="local_serial";vGQ.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=YXQ;vGQ.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=JXQ;vGQ.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=CXQ;vGQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=XXQ;vGQ.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=GXQ;vGQ.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=FXQ;vGQ.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=WXQ;vGQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=ZXQ;vGQ.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=$XQ;vGQ.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=UXQ;vGQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=EXQ;vGQ.DbCassandraConsistencyLevelValues=(0,f5.createConstMap)([YXQ,JXQ,CXQ,XXQ,GXQ,FXQ,WXQ,ZXQ,$XQ,UXQ,EXQ]);var KXQ="datasource",VXQ="http",IXQ="pubsub",HXQ="timer",DXQ="other";vGQ.FAASTRIGGERVALUES_DATASOURCE=KXQ;vGQ.FAASTRIGGERVALUES_HTTP=VXQ;vGQ.FAASTRIGGERVALUES_PUBSUB=IXQ;vGQ.FAASTRIGGERVALUES_TIMER=HXQ;vGQ.FAASTRIGGERVALUES_OTHER=DXQ;vGQ.FaasTriggerValues=(0,f5.createConstMap)([KXQ,VXQ,IXQ,HXQ,DXQ]);var NXQ="insert",LXQ="edit",qXQ="delete";vGQ.FAASDOCUMENTOPERATIONVALUES_INSERT=NXQ;vGQ.FAASDOCUMENTOPERATIONVALUES_EDIT=LXQ;vGQ.FAASDOCUMENTOPERATIONVALUES_DELETE=qXQ;vGQ.FaasDocumentOperationValues=(0,f5.createConstMap)([NXQ,LXQ,qXQ]);var MXQ="alibaba_cloud",zXQ="aws",RXQ="azure",wXQ="gcp";vGQ.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=MXQ;vGQ.FAASINVOKEDPROVIDERVALUES_AWS=zXQ;vGQ.FAASINVOKEDPROVIDERVALUES_AZURE=RXQ;vGQ.FAASINVOKEDPROVIDERVALUES_GCP=wXQ;vGQ.FaasInvokedProviderValues=(0,f5.createConstMap)([MXQ,zXQ,RXQ,wXQ]);var jXQ="ip_tcp",OXQ="ip_udp",PXQ="ip",TXQ="unix",SXQ="pipe",kXQ="inproc",_XQ="other";vGQ.NETTRANSPORTVALUES_IP_TCP=jXQ;vGQ.NETTRANSPORTVALUES_IP_UDP=OXQ;vGQ.NETTRANSPORTVALUES_IP=PXQ;vGQ.NETTRANSPORTVALUES_UNIX=TXQ;vGQ.NETTRANSPORTVALUES_PIPE=SXQ;vGQ.NETTRANSPORTVALUES_INPROC=kXQ;vGQ.NETTRANSPORTVALUES_OTHER=_XQ;vGQ.NetTransportValues=(0,f5.createConstMap)([jXQ,OXQ,PXQ,TXQ,SXQ,kXQ,_XQ]);var vXQ="wifi",yXQ="wired",gXQ="cell",hXQ="unavailable",xXQ="unknown";vGQ.NETHOSTCONNECTIONTYPEVALUES_WIFI=vXQ;vGQ.NETHOSTCONNECTIONTYPEVALUES_WIRED=yXQ;vGQ.NETHOSTCONNECTIONTYPEVALUES_CELL=gXQ;vGQ.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=hXQ;vGQ.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=xXQ;vGQ.NetHostConnectionTypeValues=(0,f5.createConstMap)([vXQ,yXQ,gXQ,hXQ,xXQ]);var fXQ="gprs",bXQ="edge",mXQ="umts",uXQ="cdma",dXQ="evdo_0",cXQ="evdo_a",lXQ="cdma2000_1xrtt",pXQ="hsdpa",iXQ="hsupa",nXQ="hspa",sXQ="iden",rXQ="evdo_b",aXQ="lte",oXQ="ehrpd",tXQ="hspap",eXQ="gsm",AGQ="td_scdma",QGQ="iwlan",BGQ="nr",YGQ="nrnsa",JGQ="lte_ca";vGQ.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=fXQ;vGQ.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=bXQ;vGQ.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=mXQ;vGQ.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=uXQ;vGQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=dXQ;vGQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=cXQ;vGQ.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=lXQ;vGQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=pXQ;vGQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=iXQ;vGQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=nXQ;vGQ.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=sXQ;vGQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=rXQ;vGQ.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=aXQ;vGQ.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=oXQ;vGQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=tXQ;vGQ.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=eXQ;vGQ.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=AGQ;vGQ.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=QGQ;vGQ.NETHOSTCONNECTIONSUBTYPEVALUES_NR=BGQ;vGQ.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=YGQ;vGQ.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=JGQ;vGQ.NetHostConnectionSubtypeValues=(0,f5.createConstMap)([fXQ,bXQ,mXQ,uXQ,dXQ,cXQ,lXQ,pXQ,iXQ,nXQ,sXQ,rXQ,aXQ,oXQ,tXQ,eXQ,AGQ,QGQ,BGQ,YGQ,JGQ]);var CGQ="1.0",XGQ="1.1",GGQ="2.0",FGQ="SPDY",WGQ="QUIC";vGQ.HTTPFLAVORVALUES_HTTP_1_0=CGQ;vGQ.HTTPFLAVORVALUES_HTTP_1_1=XGQ;vGQ.HTTPFLAVORVALUES_HTTP_2_0=GGQ;vGQ.HTTPFLAVORVALUES_SPDY=FGQ;vGQ.HTTPFLAVORVALUES_QUIC=WGQ;vGQ.HttpFlavorValues={HTTP_1_0:CGQ,HTTP_1_1:XGQ,HTTP_2_0:GGQ,SPDY:FGQ,QUIC:WGQ};var ZGQ="queue",$GQ="topic";vGQ.MESSAGINGDESTINATIONKINDVALUES_QUEUE=ZGQ;vGQ.MESSAGINGDESTINATIONKINDVALUES_TOPIC=$GQ;vGQ.MessagingDestinationKindValues=(0,f5.createConstMap)([ZGQ,$GQ]);var UGQ="receive",EGQ="process";vGQ.MESSAGINGOPERATIONVALUES_RECEIVE=UGQ;vGQ.MESSAGINGOPERATIONVALUES_PROCESS=EGQ;vGQ.MessagingOperationValues=(0,f5.createConstMap)([UGQ,EGQ]);var KGQ=0,VGQ=1,IGQ=2,HGQ=3,DGQ=4,NGQ=5,LGQ=6,qGQ=7,MGQ=8,zGQ=9,RGQ=10,wGQ=11,jGQ=12,OGQ=13,PGQ=14,TGQ=15,SGQ=16;vGQ.RPCGRPCSTATUSCODEVALUES_OK=KGQ;vGQ.RPCGRPCSTATUSCODEVALUES_CANCELLED=VGQ;vGQ.RPCGRPCSTATUSCODEVALUES_UNKNOWN=IGQ;vGQ.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=HGQ;vGQ.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=DGQ;vGQ.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=NGQ;vGQ.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=LGQ;vGQ.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=qGQ;vGQ.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=MGQ;vGQ.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=zGQ;vGQ.RPCGRPCSTATUSCODEVALUES_ABORTED=RGQ;vGQ.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=wGQ;vGQ.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=jGQ;vGQ.RPCGRPCSTATUSCODEVALUES_INTERNAL=OGQ;vGQ.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=PGQ;vGQ.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=TGQ;vGQ.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=SGQ;vGQ.RpcGrpcStatusCodeValues={OK:KGQ,CANCELLED:VGQ,UNKNOWN:IGQ,INVALID_ARGUMENT:HGQ,DEADLINE_EXCEEDED:DGQ,NOT_FOUND:NGQ,ALREADY_EXISTS:LGQ,PERMISSION_DENIED:qGQ,RESOURCE_EXHAUSTED:MGQ,FAILED_PRECONDITION:zGQ,ABORTED:RGQ,OUT_OF_RANGE:wGQ,UNIMPLEMENTED:jGQ,INTERNAL:OGQ,UNAVAILABLE:PGQ,DATA_LOSS:TGQ,UNAUTHENTICATED:SGQ};var kGQ="SENT",_GQ="RECEIVED";vGQ.MESSAGETYPEVALUES_SENT=kGQ;vGQ.MESSAGETYPEVALUES_RECEIVED=_GQ;vGQ.MessageTypeValues=(0,f5.createConstMap)([kGQ,_GQ])});var uGQ=R((C$)=>{var FZ0=C$&&C$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),WZ0=C$&&C$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))FZ0(Q,A,B)};Object.defineProperty(C$,"__esModule",{value:!0});WZ0(mGQ(),C$)});var IFQ=R((UFQ)=>{Object.defineProperty(UFQ,"__esModule",{value:!0});UFQ.SEMRESATTRS_K8S_STATEFULSET_NAME=UFQ.SEMRESATTRS_K8S_STATEFULSET_UID=UFQ.SEMRESATTRS_K8S_DEPLOYMENT_NAME=UFQ.SEMRESATTRS_K8S_DEPLOYMENT_UID=UFQ.SEMRESATTRS_K8S_REPLICASET_NAME=UFQ.SEMRESATTRS_K8S_REPLICASET_UID=UFQ.SEMRESATTRS_K8S_CONTAINER_NAME=UFQ.SEMRESATTRS_K8S_POD_NAME=UFQ.SEMRESATTRS_K8S_POD_UID=UFQ.SEMRESATTRS_K8S_NAMESPACE_NAME=UFQ.SEMRESATTRS_K8S_NODE_UID=UFQ.SEMRESATTRS_K8S_NODE_NAME=UFQ.SEMRESATTRS_K8S_CLUSTER_NAME=UFQ.SEMRESATTRS_HOST_IMAGE_VERSION=UFQ.SEMRESATTRS_HOST_IMAGE_ID=UFQ.SEMRESATTRS_HOST_IMAGE_NAME=UFQ.SEMRESATTRS_HOST_ARCH=UFQ.SEMRESATTRS_HOST_TYPE=UFQ.SEMRESATTRS_HOST_NAME=UFQ.SEMRESATTRS_HOST_ID=UFQ.SEMRESATTRS_FAAS_MAX_MEMORY=UFQ.SEMRESATTRS_FAAS_INSTANCE=UFQ.SEMRESATTRS_FAAS_VERSION=UFQ.SEMRESATTRS_FAAS_ID=UFQ.SEMRESATTRS_FAAS_NAME=UFQ.SEMRESATTRS_DEVICE_MODEL_NAME=UFQ.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=UFQ.SEMRESATTRS_DEVICE_ID=UFQ.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=UFQ.SEMRESATTRS_CONTAINER_IMAGE_TAG=UFQ.SEMRESATTRS_CONTAINER_IMAGE_NAME=UFQ.SEMRESATTRS_CONTAINER_RUNTIME=UFQ.SEMRESATTRS_CONTAINER_ID=UFQ.SEMRESATTRS_CONTAINER_NAME=UFQ.SEMRESATTRS_AWS_LOG_STREAM_ARNS=UFQ.SEMRESATTRS_AWS_LOG_STREAM_NAMES=UFQ.SEMRESATTRS_AWS_LOG_GROUP_ARNS=UFQ.SEMRESATTRS_AWS_LOG_GROUP_NAMES=UFQ.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=UFQ.SEMRESATTRS_AWS_ECS_TASK_REVISION=UFQ.SEMRESATTRS_AWS_ECS_TASK_FAMILY=UFQ.SEMRESATTRS_AWS_ECS_TASK_ARN=UFQ.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=UFQ.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=UFQ.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=UFQ.SEMRESATTRS_CLOUD_PLATFORM=UFQ.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=UFQ.SEMRESATTRS_CLOUD_REGION=UFQ.SEMRESATTRS_CLOUD_ACCOUNT_ID=UFQ.SEMRESATTRS_CLOUD_PROVIDER=void 0;UFQ.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=UFQ.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=UFQ.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=UFQ.CLOUDPLATFORMVALUES_AZURE_AKS=UFQ.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=UFQ.CLOUDPLATFORMVALUES_AZURE_VM=UFQ.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=UFQ.CLOUDPLATFORMVALUES_AWS_LAMBDA=UFQ.CLOUDPLATFORMVALUES_AWS_EKS=UFQ.CLOUDPLATFORMVALUES_AWS_ECS=UFQ.CLOUDPLATFORMVALUES_AWS_EC2=UFQ.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=UFQ.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=UFQ.CloudProviderValues=UFQ.CLOUDPROVIDERVALUES_GCP=UFQ.CLOUDPROVIDERVALUES_AZURE=UFQ.CLOUDPROVIDERVALUES_AWS=UFQ.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=UFQ.SemanticResourceAttributes=UFQ.SEMRESATTRS_WEBENGINE_DESCRIPTION=UFQ.SEMRESATTRS_WEBENGINE_VERSION=UFQ.SEMRESATTRS_WEBENGINE_NAME=UFQ.SEMRESATTRS_TELEMETRY_AUTO_VERSION=UFQ.SEMRESATTRS_TELEMETRY_SDK_VERSION=UFQ.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=UFQ.SEMRESATTRS_TELEMETRY_SDK_NAME=UFQ.SEMRESATTRS_SERVICE_VERSION=UFQ.SEMRESATTRS_SERVICE_INSTANCE_ID=UFQ.SEMRESATTRS_SERVICE_NAMESPACE=UFQ.SEMRESATTRS_SERVICE_NAME=UFQ.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=UFQ.SEMRESATTRS_PROCESS_RUNTIME_VERSION=UFQ.SEMRESATTRS_PROCESS_RUNTIME_NAME=UFQ.SEMRESATTRS_PROCESS_OWNER=UFQ.SEMRESATTRS_PROCESS_COMMAND_ARGS=UFQ.SEMRESATTRS_PROCESS_COMMAND_LINE=UFQ.SEMRESATTRS_PROCESS_COMMAND=UFQ.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=UFQ.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=UFQ.SEMRESATTRS_PROCESS_PID=UFQ.SEMRESATTRS_OS_VERSION=UFQ.SEMRESATTRS_OS_NAME=UFQ.SEMRESATTRS_OS_DESCRIPTION=UFQ.SEMRESATTRS_OS_TYPE=UFQ.SEMRESATTRS_K8S_CRONJOB_NAME=UFQ.SEMRESATTRS_K8S_CRONJOB_UID=UFQ.SEMRESATTRS_K8S_JOB_NAME=UFQ.SEMRESATTRS_K8S_JOB_UID=UFQ.SEMRESATTRS_K8S_DAEMONSET_NAME=UFQ.SEMRESATTRS_K8S_DAEMONSET_UID=void 0;UFQ.TelemetrySdkLanguageValues=UFQ.TELEMETRYSDKLANGUAGEVALUES_WEBJS=UFQ.TELEMETRYSDKLANGUAGEVALUES_RUBY=UFQ.TELEMETRYSDKLANGUAGEVALUES_PYTHON=UFQ.TELEMETRYSDKLANGUAGEVALUES_PHP=UFQ.TELEMETRYSDKLANGUAGEVALUES_NODEJS=UFQ.TELEMETRYSDKLANGUAGEVALUES_JAVA=UFQ.TELEMETRYSDKLANGUAGEVALUES_GO=UFQ.TELEMETRYSDKLANGUAGEVALUES_ERLANG=UFQ.TELEMETRYSDKLANGUAGEVALUES_DOTNET=UFQ.TELEMETRYSDKLANGUAGEVALUES_CPP=UFQ.OsTypeValues=UFQ.OSTYPEVALUES_Z_OS=UFQ.OSTYPEVALUES_SOLARIS=UFQ.OSTYPEVALUES_AIX=UFQ.OSTYPEVALUES_HPUX=UFQ.OSTYPEVALUES_DRAGONFLYBSD=UFQ.OSTYPEVALUES_OPENBSD=UFQ.OSTYPEVALUES_NETBSD=UFQ.OSTYPEVALUES_FREEBSD=UFQ.OSTYPEVALUES_DARWIN=UFQ.OSTYPEVALUES_LINUX=UFQ.OSTYPEVALUES_WINDOWS=UFQ.HostArchValues=UFQ.HOSTARCHVALUES_X86=UFQ.HOSTARCHVALUES_PPC64=UFQ.HOSTARCHVALUES_PPC32=UFQ.HOSTARCHVALUES_IA64=UFQ.HOSTARCHVALUES_ARM64=UFQ.HOSTARCHVALUES_ARM32=UFQ.HOSTARCHVALUES_AMD64=UFQ.AwsEcsLaunchtypeValues=UFQ.AWSECSLAUNCHTYPEVALUES_FARGATE=UFQ.AWSECSLAUNCHTYPEVALUES_EC2=UFQ.CloudPlatformValues=UFQ.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=UFQ.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=UFQ.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=UFQ.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=void 0;var X$=gp(),dGQ="cloud.provider",cGQ="cloud.account.id",lGQ="cloud.region",pGQ="cloud.availability_zone",iGQ="cloud.platform",nGQ="aws.ecs.container.arn",sGQ="aws.ecs.cluster.arn",rGQ="aws.ecs.launchtype",aGQ="aws.ecs.task.arn",oGQ="aws.ecs.task.family",tGQ="aws.ecs.task.revision",eGQ="aws.eks.cluster.arn",A6Q="aws.log.group.names",Q6Q="aws.log.group.arns",B6Q="aws.log.stream.names",Y6Q="aws.log.stream.arns",J6Q="container.name",C6Q="container.id",X6Q="container.runtime",G6Q="container.image.name",F6Q="container.image.tag",W6Q="deployment.environment",Z6Q="device.id",$6Q="device.model.identifier",U6Q="device.model.name",E6Q="faas.name",K6Q="faas.id",V6Q="faas.version",I6Q="faas.instance",H6Q="faas.max_memory",D6Q="host.id",N6Q="host.name",L6Q="host.type",q6Q="host.arch",M6Q="host.image.name",z6Q="host.image.id",R6Q="host.image.version",w6Q="k8s.cluster.name",j6Q="k8s.node.name",O6Q="k8s.node.uid",P6Q="k8s.namespace.name",T6Q="k8s.pod.uid",S6Q="k8s.pod.name",k6Q="k8s.container.name",_6Q="k8s.replicaset.uid",v6Q="k8s.replicaset.name",y6Q="k8s.deployment.uid",g6Q="k8s.deployment.name",h6Q="k8s.statefulset.uid",x6Q="k8s.statefulset.name",f6Q="k8s.daemonset.uid",b6Q="k8s.daemonset.name",m6Q="k8s.job.uid",u6Q="k8s.job.name",d6Q="k8s.cronjob.uid",c6Q="k8s.cronjob.name",l6Q="os.type",p6Q="os.description",i6Q="os.name",n6Q="os.version",s6Q="process.pid",r6Q="process.executable.name",a6Q="process.executable.path",o6Q="process.command",t6Q="process.command_line",e6Q="process.command_args",A7Q="process.owner",Q7Q="process.runtime.name",B7Q="process.runtime.version",Y7Q="process.runtime.description",J7Q="service.name",C7Q="service.namespace",X7Q="service.instance.id",G7Q="service.version",F7Q="telemetry.sdk.name",W7Q="telemetry.sdk.language",Z7Q="telemetry.sdk.version",$7Q="telemetry.auto.version",U7Q="webengine.name",E7Q="webengine.version",K7Q="webengine.description";UFQ.SEMRESATTRS_CLOUD_PROVIDER=dGQ;UFQ.SEMRESATTRS_CLOUD_ACCOUNT_ID=cGQ;UFQ.SEMRESATTRS_CLOUD_REGION=lGQ;UFQ.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=pGQ;UFQ.SEMRESATTRS_CLOUD_PLATFORM=iGQ;UFQ.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=nGQ;UFQ.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=sGQ;UFQ.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=rGQ;UFQ.SEMRESATTRS_AWS_ECS_TASK_ARN=aGQ;UFQ.SEMRESATTRS_AWS_ECS_TASK_FAMILY=oGQ;UFQ.SEMRESATTRS_AWS_ECS_TASK_REVISION=tGQ;UFQ.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=eGQ;UFQ.SEMRESATTRS_AWS_LOG_GROUP_NAMES=A6Q;UFQ.SEMRESATTRS_AWS_LOG_GROUP_ARNS=Q6Q;UFQ.SEMRESATTRS_AWS_LOG_STREAM_NAMES=B6Q;UFQ.SEMRESATTRS_AWS_LOG_STREAM_ARNS=Y6Q;UFQ.SEMRESATTRS_CONTAINER_NAME=J6Q;UFQ.SEMRESATTRS_CONTAINER_ID=C6Q;UFQ.SEMRESATTRS_CONTAINER_RUNTIME=X6Q;UFQ.SEMRESATTRS_CONTAINER_IMAGE_NAME=G6Q;UFQ.SEMRESATTRS_CONTAINER_IMAGE_TAG=F6Q;UFQ.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=W6Q;UFQ.SEMRESATTRS_DEVICE_ID=Z6Q;UFQ.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=$6Q;UFQ.SEMRESATTRS_DEVICE_MODEL_NAME=U6Q;UFQ.SEMRESATTRS_FAAS_NAME=E6Q;UFQ.SEMRESATTRS_FAAS_ID=K6Q;UFQ.SEMRESATTRS_FAAS_VERSION=V6Q;UFQ.SEMRESATTRS_FAAS_INSTANCE=I6Q;UFQ.SEMRESATTRS_FAAS_MAX_MEMORY=H6Q;UFQ.SEMRESATTRS_HOST_ID=D6Q;UFQ.SEMRESATTRS_HOST_NAME=N6Q;UFQ.SEMRESATTRS_HOST_TYPE=L6Q;UFQ.SEMRESATTRS_HOST_ARCH=q6Q;UFQ.SEMRESATTRS_HOST_IMAGE_NAME=M6Q;UFQ.SEMRESATTRS_HOST_IMAGE_ID=z6Q;UFQ.SEMRESATTRS_HOST_IMAGE_VERSION=R6Q;UFQ.SEMRESATTRS_K8S_CLUSTER_NAME=w6Q;UFQ.SEMRESATTRS_K8S_NODE_NAME=j6Q;UFQ.SEMRESATTRS_K8S_NODE_UID=O6Q;UFQ.SEMRESATTRS_K8S_NAMESPACE_NAME=P6Q;UFQ.SEMRESATTRS_K8S_POD_UID=T6Q;UFQ.SEMRESATTRS_K8S_POD_NAME=S6Q;UFQ.SEMRESATTRS_K8S_CONTAINER_NAME=k6Q;UFQ.SEMRESATTRS_K8S_REPLICASET_UID=_6Q;UFQ.SEMRESATTRS_K8S_REPLICASET_NAME=v6Q;UFQ.SEMRESATTRS_K8S_DEPLOYMENT_UID=y6Q;UFQ.SEMRESATTRS_K8S_DEPLOYMENT_NAME=g6Q;UFQ.SEMRESATTRS_K8S_STATEFULSET_UID=h6Q;UFQ.SEMRESATTRS_K8S_STATEFULSET_NAME=x6Q;UFQ.SEMRESATTRS_K8S_DAEMONSET_UID=f6Q;UFQ.SEMRESATTRS_K8S_DAEMONSET_NAME=b6Q;UFQ.SEMRESATTRS_K8S_JOB_UID=m6Q;UFQ.SEMRESATTRS_K8S_JOB_NAME=u6Q;UFQ.SEMRESATTRS_K8S_CRONJOB_UID=d6Q;UFQ.SEMRESATTRS_K8S_CRONJOB_NAME=c6Q;UFQ.SEMRESATTRS_OS_TYPE=l6Q;UFQ.SEMRESATTRS_OS_DESCRIPTION=p6Q;UFQ.SEMRESATTRS_OS_NAME=i6Q;UFQ.SEMRESATTRS_OS_VERSION=n6Q;UFQ.SEMRESATTRS_PROCESS_PID=s6Q;UFQ.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=r6Q;UFQ.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=a6Q;UFQ.SEMRESATTRS_PROCESS_COMMAND=o6Q;UFQ.SEMRESATTRS_PROCESS_COMMAND_LINE=t6Q;UFQ.SEMRESATTRS_PROCESS_COMMAND_ARGS=e6Q;UFQ.SEMRESATTRS_PROCESS_OWNER=A7Q;UFQ.SEMRESATTRS_PROCESS_RUNTIME_NAME=Q7Q;UFQ.SEMRESATTRS_PROCESS_RUNTIME_VERSION=B7Q;UFQ.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=Y7Q;UFQ.SEMRESATTRS_SERVICE_NAME=J7Q;UFQ.SEMRESATTRS_SERVICE_NAMESPACE=C7Q;UFQ.SEMRESATTRS_SERVICE_INSTANCE_ID=X7Q;UFQ.SEMRESATTRS_SERVICE_VERSION=G7Q;UFQ.SEMRESATTRS_TELEMETRY_SDK_NAME=F7Q;UFQ.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=W7Q;UFQ.SEMRESATTRS_TELEMETRY_SDK_VERSION=Z7Q;UFQ.SEMRESATTRS_TELEMETRY_AUTO_VERSION=$7Q;UFQ.SEMRESATTRS_WEBENGINE_NAME=U7Q;UFQ.SEMRESATTRS_WEBENGINE_VERSION=E7Q;UFQ.SEMRESATTRS_WEBENGINE_DESCRIPTION=K7Q;UFQ.SemanticResourceAttributes=(0,X$.createConstMap)([dGQ,cGQ,lGQ,pGQ,iGQ,nGQ,sGQ,rGQ,aGQ,oGQ,tGQ,eGQ,A6Q,Q6Q,B6Q,Y6Q,J6Q,C6Q,X6Q,G6Q,F6Q,W6Q,Z6Q,$6Q,U6Q,E6Q,K6Q,V6Q,I6Q,H6Q,D6Q,N6Q,L6Q,q6Q,M6Q,z6Q,R6Q,w6Q,j6Q,O6Q,P6Q,T6Q,S6Q,k6Q,_6Q,v6Q,y6Q,g6Q,h6Q,x6Q,f6Q,b6Q,m6Q,u6Q,d6Q,c6Q,l6Q,p6Q,i6Q,n6Q,s6Q,r6Q,a6Q,o6Q,t6Q,e6Q,A7Q,Q7Q,B7Q,Y7Q,J7Q,C7Q,X7Q,G7Q,F7Q,W7Q,Z7Q,$7Q,U7Q,E7Q,K7Q]);var V7Q="alibaba_cloud",I7Q="aws",H7Q="azure",D7Q="gcp";UFQ.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=V7Q;UFQ.CLOUDPROVIDERVALUES_AWS=I7Q;UFQ.CLOUDPROVIDERVALUES_AZURE=H7Q;UFQ.CLOUDPROVIDERVALUES_GCP=D7Q;UFQ.CloudProviderValues=(0,X$.createConstMap)([V7Q,I7Q,H7Q,D7Q]);var N7Q="alibaba_cloud_ecs",L7Q="alibaba_cloud_fc",q7Q="aws_ec2",M7Q="aws_ecs",z7Q="aws_eks",R7Q="aws_lambda",w7Q="aws_elastic_beanstalk",j7Q="azure_vm",O7Q="azure_container_instances",P7Q="azure_aks",T7Q="azure_functions",S7Q="azure_app_service",k7Q="gcp_compute_engine",_7Q="gcp_cloud_run",v7Q="gcp_kubernetes_engine",y7Q="gcp_cloud_functions",g7Q="gcp_app_engine";UFQ.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=N7Q;UFQ.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=L7Q;UFQ.CLOUDPLATFORMVALUES_AWS_EC2=q7Q;UFQ.CLOUDPLATFORMVALUES_AWS_ECS=M7Q;UFQ.CLOUDPLATFORMVALUES_AWS_EKS=z7Q;UFQ.CLOUDPLATFORMVALUES_AWS_LAMBDA=R7Q;UFQ.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=w7Q;UFQ.CLOUDPLATFORMVALUES_AZURE_VM=j7Q;UFQ.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=O7Q;UFQ.CLOUDPLATFORMVALUES_AZURE_AKS=P7Q;UFQ.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=T7Q;UFQ.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=S7Q;UFQ.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=k7Q;UFQ.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=_7Q;UFQ.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=v7Q;UFQ.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=y7Q;UFQ.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=g7Q;UFQ.CloudPlatformValues=(0,X$.createConstMap)([N7Q,L7Q,q7Q,M7Q,z7Q,R7Q,w7Q,j7Q,O7Q,P7Q,T7Q,S7Q,k7Q,_7Q,v7Q,y7Q,g7Q]);var h7Q="ec2",x7Q="fargate";UFQ.AWSECSLAUNCHTYPEVALUES_EC2=h7Q;UFQ.AWSECSLAUNCHTYPEVALUES_FARGATE=x7Q;UFQ.AwsEcsLaunchtypeValues=(0,X$.createConstMap)([h7Q,x7Q]);var f7Q="amd64",b7Q="arm32",m7Q="arm64",u7Q="ia64",d7Q="ppc32",c7Q="ppc64",l7Q="x86";UFQ.HOSTARCHVALUES_AMD64=f7Q;UFQ.HOSTARCHVALUES_ARM32=b7Q;UFQ.HOSTARCHVALUES_ARM64=m7Q;UFQ.HOSTARCHVALUES_IA64=u7Q;UFQ.HOSTARCHVALUES_PPC32=d7Q;UFQ.HOSTARCHVALUES_PPC64=c7Q;UFQ.HOSTARCHVALUES_X86=l7Q;UFQ.HostArchValues=(0,X$.createConstMap)([f7Q,b7Q,m7Q,u7Q,d7Q,c7Q,l7Q]);var p7Q="windows",i7Q="linux",n7Q="darwin",s7Q="freebsd",r7Q="netbsd",a7Q="openbsd",o7Q="dragonflybsd",t7Q="hpux",e7Q="aix",AFQ="solaris",QFQ="z_os";UFQ.OSTYPEVALUES_WINDOWS=p7Q;UFQ.OSTYPEVALUES_LINUX=i7Q;UFQ.OSTYPEVALUES_DARWIN=n7Q;UFQ.OSTYPEVALUES_FREEBSD=s7Q;UFQ.OSTYPEVALUES_NETBSD=r7Q;UFQ.OSTYPEVALUES_OPENBSD=a7Q;UFQ.OSTYPEVALUES_DRAGONFLYBSD=o7Q;UFQ.OSTYPEVALUES_HPUX=t7Q;UFQ.OSTYPEVALUES_AIX=e7Q;UFQ.OSTYPEVALUES_SOLARIS=AFQ;UFQ.OSTYPEVALUES_Z_OS=QFQ;UFQ.OsTypeValues=(0,X$.createConstMap)([p7Q,i7Q,n7Q,s7Q,r7Q,a7Q,o7Q,t7Q,e7Q,AFQ,QFQ]);var BFQ="cpp",YFQ="dotnet",JFQ="erlang",CFQ="go",XFQ="java",GFQ="nodejs",FFQ="php",WFQ="python",ZFQ="ruby",$FQ="webjs";UFQ.TELEMETRYSDKLANGUAGEVALUES_CPP=BFQ;UFQ.TELEMETRYSDKLANGUAGEVALUES_DOTNET=YFQ;UFQ.TELEMETRYSDKLANGUAGEVALUES_ERLANG=JFQ;UFQ.TELEMETRYSDKLANGUAGEVALUES_GO=CFQ;UFQ.TELEMETRYSDKLANGUAGEVALUES_JAVA=XFQ;UFQ.TELEMETRYSDKLANGUAGEVALUES_NODEJS=GFQ;UFQ.TELEMETRYSDKLANGUAGEVALUES_PHP=FFQ;UFQ.TELEMETRYSDKLANGUAGEVALUES_PYTHON=WFQ;UFQ.TELEMETRYSDKLANGUAGEVALUES_RUBY=ZFQ;UFQ.TELEMETRYSDKLANGUAGEVALUES_WEBJS=$FQ;UFQ.TelemetrySdkLanguageValues=(0,X$.createConstMap)([BFQ,YFQ,JFQ,CFQ,XFQ,GFQ,FFQ,WFQ,ZFQ,$FQ])});var HFQ=R((G$)=>{var f40=G$&&G$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),b40=G$&&G$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))f40(Q,A,B)};Object.defineProperty(G$,"__esModule",{value:!0});b40(IFQ(),G$)});var MFQ=R((DFQ)=>{Object.defineProperty(DFQ,"__esModule",{value:!0});DFQ.HTTP_REQUEST_METHOD_VALUE_POST=DFQ.HTTP_REQUEST_METHOD_VALUE_PATCH=DFQ.HTTP_REQUEST_METHOD_VALUE_OPTIONS=DFQ.HTTP_REQUEST_METHOD_VALUE_HEAD=DFQ.HTTP_REQUEST_METHOD_VALUE_GET=DFQ.HTTP_REQUEST_METHOD_VALUE_DELETE=DFQ.HTTP_REQUEST_METHOD_VALUE_CONNECT=DFQ.HTTP_REQUEST_METHOD_VALUE_OTHER=DFQ.ATTR_HTTP_REQUEST_METHOD=DFQ.ATTR_HTTP_REQUEST_HEADER=DFQ.ATTR_EXCEPTION_TYPE=DFQ.ATTR_EXCEPTION_STACKTRACE=DFQ.ATTR_EXCEPTION_MESSAGE=DFQ.ATTR_EXCEPTION_ESCAPED=DFQ.ERROR_TYPE_VALUE_OTHER=DFQ.ATTR_ERROR_TYPE=DFQ.ATTR_CLIENT_PORT=DFQ.ATTR_CLIENT_ADDRESS=DFQ.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS=DFQ.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE=DFQ.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS=DFQ.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK=DFQ.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED=DFQ.ATTR_ASPNETCORE_RATE_LIMITING_POLICY=DFQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED=DFQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED=DFQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED=DFQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED=DFQ.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT=DFQ.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE=DFQ.ATTR_TELEMETRY_SDK_VERSION=DFQ.ATTR_TELEMETRY_SDK_NAME=DFQ.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS=DFQ.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT=DFQ.TELEMETRY_SDK_LANGUAGE_VALUE_RUST=DFQ.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY=DFQ.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON=DFQ.TELEMETRY_SDK_LANGUAGE_VALUE_PHP=DFQ.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS=DFQ.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA=DFQ.TELEMETRY_SDK_LANGUAGE_VALUE_GO=DFQ.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG=DFQ.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET=DFQ.TELEMETRY_SDK_LANGUAGE_VALUE_CPP=DFQ.ATTR_TELEMETRY_SDK_LANGUAGE=DFQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED=DFQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER=DFQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER=DFQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED=DFQ.ATTR_ASPNETCORE_RATE_LIMITING_RESULT=void 0;DFQ.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT=DFQ.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE=DFQ.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN=DFQ.ATTR_SIGNALR_CONNECTION_STATUS=DFQ.ATTR_SERVICE_VERSION=DFQ.ATTR_SERVICE_NAME=DFQ.ATTR_SERVER_PORT=DFQ.ATTR_SERVER_ADDRESS=DFQ.ATTR_OTEL_STATUS_DESCRIPTION=DFQ.OTEL_STATUS_CODE_VALUE_OK=DFQ.OTEL_STATUS_CODE_VALUE_ERROR=DFQ.ATTR_OTEL_STATUS_CODE=DFQ.ATTR_OTEL_SCOPE_VERSION=DFQ.ATTR_OTEL_SCOPE_NAME=DFQ.NETWORK_TYPE_VALUE_IPV6=DFQ.NETWORK_TYPE_VALUE_IPV4=DFQ.ATTR_NETWORK_TYPE=DFQ.NETWORK_TRANSPORT_VALUE_UNIX=DFQ.NETWORK_TRANSPORT_VALUE_UDP=DFQ.NETWORK_TRANSPORT_VALUE_TCP=DFQ.NETWORK_TRANSPORT_VALUE_QUIC=DFQ.NETWORK_TRANSPORT_VALUE_PIPE=DFQ.ATTR_NETWORK_TRANSPORT=DFQ.ATTR_NETWORK_PROTOCOL_VERSION=DFQ.ATTR_NETWORK_PROTOCOL_NAME=DFQ.ATTR_NETWORK_PEER_PORT=DFQ.ATTR_NETWORK_PEER_ADDRESS=DFQ.ATTR_NETWORK_LOCAL_PORT=DFQ.ATTR_NETWORK_LOCAL_ADDRESS=DFQ.JVM_THREAD_STATE_VALUE_WAITING=DFQ.JVM_THREAD_STATE_VALUE_TIMED_WAITING=DFQ.JVM_THREAD_STATE_VALUE_TERMINATED=DFQ.JVM_THREAD_STATE_VALUE_RUNNABLE=DFQ.JVM_THREAD_STATE_VALUE_NEW=DFQ.JVM_THREAD_STATE_VALUE_BLOCKED=DFQ.ATTR_JVM_THREAD_STATE=DFQ.ATTR_JVM_THREAD_DAEMON=DFQ.JVM_MEMORY_TYPE_VALUE_NON_HEAP=DFQ.JVM_MEMORY_TYPE_VALUE_HEAP=DFQ.ATTR_JVM_MEMORY_TYPE=DFQ.ATTR_JVM_MEMORY_POOL_NAME=DFQ.ATTR_JVM_GC_NAME=DFQ.ATTR_JVM_GC_ACTION=DFQ.ATTR_HTTP_ROUTE=DFQ.ATTR_HTTP_RESPONSE_STATUS_CODE=DFQ.ATTR_HTTP_RESPONSE_HEADER=DFQ.ATTR_HTTP_REQUEST_RESEND_COUNT=DFQ.ATTR_HTTP_REQUEST_METHOD_ORIGINAL=DFQ.HTTP_REQUEST_METHOD_VALUE_TRACE=DFQ.HTTP_REQUEST_METHOD_VALUE_PUT=void 0;DFQ.ATTR_USER_AGENT_ORIGINAL=DFQ.ATTR_URL_SCHEME=DFQ.ATTR_URL_QUERY=DFQ.ATTR_URL_PATH=DFQ.ATTR_URL_FULL=DFQ.ATTR_URL_FRAGMENT=DFQ.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS=DFQ.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS=DFQ.SIGNALR_TRANSPORT_VALUE_LONG_POLLING=DFQ.ATTR_SIGNALR_TRANSPORT=void 0;DFQ.ATTR_ASPNETCORE_RATE_LIMITING_RESULT="aspnetcore.rate_limiting.result";DFQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED="acquired";DFQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER="endpoint_limiter";DFQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER="global_limiter";DFQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED="request_canceled";DFQ.ATTR_TELEMETRY_SDK_LANGUAGE="telemetry.sdk.language";DFQ.TELEMETRY_SDK_LANGUAGE_VALUE_CPP="cpp";DFQ.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET="dotnet";DFQ.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG="erlang";DFQ.TELEMETRY_SDK_LANGUAGE_VALUE_GO="go";DFQ.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA="java";DFQ.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS="nodejs";DFQ.TELEMETRY_SDK_LANGUAGE_VALUE_PHP="php";DFQ.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON="python";DFQ.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY="ruby";DFQ.TELEMETRY_SDK_LANGUAGE_VALUE_RUST="rust";DFQ.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT="swift";DFQ.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS="webjs";DFQ.ATTR_TELEMETRY_SDK_NAME="telemetry.sdk.name";DFQ.ATTR_TELEMETRY_SDK_VERSION="telemetry.sdk.version";DFQ.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE="aspnetcore.diagnostics.handler.type";DFQ.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT="aspnetcore.diagnostics.exception.result";DFQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED="aborted";DFQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED="handled";DFQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED="skipped";DFQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED="unhandled";DFQ.ATTR_ASPNETCORE_RATE_LIMITING_POLICY="aspnetcore.rate_limiting.policy";DFQ.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED="aspnetcore.request.is_unhandled";DFQ.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK="aspnetcore.routing.is_fallback";DFQ.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS="aspnetcore.routing.match_status";DFQ.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE="failure";DFQ.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS="success";DFQ.ATTR_CLIENT_ADDRESS="client.address";DFQ.ATTR_CLIENT_PORT="client.port";DFQ.ATTR_ERROR_TYPE="error.type";DFQ.ERROR_TYPE_VALUE_OTHER="_OTHER";DFQ.ATTR_EXCEPTION_ESCAPED="exception.escaped";DFQ.ATTR_EXCEPTION_MESSAGE="exception.message";DFQ.ATTR_EXCEPTION_STACKTRACE="exception.stacktrace";DFQ.ATTR_EXCEPTION_TYPE="exception.type";var m40=(A)=>`http.request.header.${A}`;DFQ.ATTR_HTTP_REQUEST_HEADER=m40;DFQ.ATTR_HTTP_REQUEST_METHOD="http.request.method";DFQ.HTTP_REQUEST_METHOD_VALUE_OTHER="_OTHER";DFQ.HTTP_REQUEST_METHOD_VALUE_CONNECT="CONNECT";DFQ.HTTP_REQUEST_METHOD_VALUE_DELETE="DELETE";DFQ.HTTP_REQUEST_METHOD_VALUE_GET="GET";DFQ.HTTP_REQUEST_METHOD_VALUE_HEAD="HEAD";DFQ.HTTP_REQUEST_METHOD_VALUE_OPTIONS="OPTIONS";DFQ.HTTP_REQUEST_METHOD_VALUE_PATCH="PATCH";DFQ.HTTP_REQUEST_METHOD_VALUE_POST="POST";DFQ.HTTP_REQUEST_METHOD_VALUE_PUT="PUT";DFQ.HTTP_REQUEST_METHOD_VALUE_TRACE="TRACE";DFQ.ATTR_HTTP_REQUEST_METHOD_ORIGINAL="http.request.method_original";DFQ.ATTR_HTTP_REQUEST_RESEND_COUNT="http.request.resend_count";var u40=(A)=>`http.response.header.${A}`;DFQ.ATTR_HTTP_RESPONSE_HEADER=u40;DFQ.ATTR_HTTP_RESPONSE_STATUS_CODE="http.response.status_code";DFQ.ATTR_HTTP_ROUTE="http.route";DFQ.ATTR_JVM_GC_ACTION="jvm.gc.action";DFQ.ATTR_JVM_GC_NAME="jvm.gc.name";DFQ.ATTR_JVM_MEMORY_POOL_NAME="jvm.memory.pool.name";DFQ.ATTR_JVM_MEMORY_TYPE="jvm.memory.type";DFQ.JVM_MEMORY_TYPE_VALUE_HEAP="heap";DFQ.JVM_MEMORY_TYPE_VALUE_NON_HEAP="non_heap";DFQ.ATTR_JVM_THREAD_DAEMON="jvm.thread.daemon";DFQ.ATTR_JVM_THREAD_STATE="jvm.thread.state";DFQ.JVM_THREAD_STATE_VALUE_BLOCKED="blocked";DFQ.JVM_THREAD_STATE_VALUE_NEW="new";DFQ.JVM_THREAD_STATE_VALUE_RUNNABLE="runnable";DFQ.JVM_THREAD_STATE_VALUE_TERMINATED="terminated";DFQ.JVM_THREAD_STATE_VALUE_TIMED_WAITING="timed_waiting";DFQ.JVM_THREAD_STATE_VALUE_WAITING="waiting";DFQ.ATTR_NETWORK_LOCAL_ADDRESS="network.local.address";DFQ.ATTR_NETWORK_LOCAL_PORT="network.local.port";DFQ.ATTR_NETWORK_PEER_ADDRESS="network.peer.address";DFQ.ATTR_NETWORK_PEER_PORT="network.peer.port";DFQ.ATTR_NETWORK_PROTOCOL_NAME="network.protocol.name";DFQ.ATTR_NETWORK_PROTOCOL_VERSION="network.protocol.version";DFQ.ATTR_NETWORK_TRANSPORT="network.transport";DFQ.NETWORK_TRANSPORT_VALUE_PIPE="pipe";DFQ.NETWORK_TRANSPORT_VALUE_QUIC="quic";DFQ.NETWORK_TRANSPORT_VALUE_TCP="tcp";DFQ.NETWORK_TRANSPORT_VALUE_UDP="udp";DFQ.NETWORK_TRANSPORT_VALUE_UNIX="unix";DFQ.ATTR_NETWORK_TYPE="network.type";DFQ.NETWORK_TYPE_VALUE_IPV4="ipv4";DFQ.NETWORK_TYPE_VALUE_IPV6="ipv6";DFQ.ATTR_OTEL_SCOPE_NAME="otel.scope.name";DFQ.ATTR_OTEL_SCOPE_VERSION="otel.scope.version";DFQ.ATTR_OTEL_STATUS_CODE="otel.status_code";DFQ.OTEL_STATUS_CODE_VALUE_ERROR="ERROR";DFQ.OTEL_STATUS_CODE_VALUE_OK="OK";DFQ.ATTR_OTEL_STATUS_DESCRIPTION="otel.status_description";DFQ.ATTR_SERVER_ADDRESS="server.address";DFQ.ATTR_SERVER_PORT="server.port";DFQ.ATTR_SERVICE_NAME="service.name";DFQ.ATTR_SERVICE_VERSION="service.version";DFQ.ATTR_SIGNALR_CONNECTION_STATUS="signalr.connection.status";DFQ.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN="app_shutdown";DFQ.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE="normal_closure";DFQ.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT="timeout";DFQ.ATTR_SIGNALR_TRANSPORT="signalr.transport";DFQ.SIGNALR_TRANSPORT_VALUE_LONG_POLLING="long_polling";DFQ.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS="server_sent_events";DFQ.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS="web_sockets";DFQ.ATTR_URL_FRAGMENT="url.fragment";DFQ.ATTR_URL_FULL="url.full";DFQ.ATTR_URL_PATH="url.path";DFQ.ATTR_URL_QUERY="url.query";DFQ.ATTR_URL_SCHEME="url.scheme";DFQ.ATTR_USER_AGENT_ORIGINAL="user_agent.original"});var wFQ=R((zFQ)=>{Object.defineProperty(zFQ,"__esModule",{value:!0});zFQ.METRIC_SIGNALR_SERVER_CONNECTION_DURATION=zFQ.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS=zFQ.METRIC_KESTREL_UPGRADED_CONNECTIONS=zFQ.METRIC_KESTREL_TLS_HANDSHAKE_DURATION=zFQ.METRIC_KESTREL_REJECTED_CONNECTIONS=zFQ.METRIC_KESTREL_QUEUED_REQUESTS=zFQ.METRIC_KESTREL_QUEUED_CONNECTIONS=zFQ.METRIC_KESTREL_CONNECTION_DURATION=zFQ.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES=zFQ.METRIC_KESTREL_ACTIVE_CONNECTIONS=zFQ.METRIC_JVM_THREAD_COUNT=zFQ.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC=zFQ.METRIC_JVM_MEMORY_USED=zFQ.METRIC_JVM_MEMORY_LIMIT=zFQ.METRIC_JVM_MEMORY_COMMITTED=zFQ.METRIC_JVM_GC_DURATION=zFQ.METRIC_JVM_CPU_TIME=zFQ.METRIC_JVM_CPU_RECENT_UTILIZATION=zFQ.METRIC_JVM_CPU_COUNT=zFQ.METRIC_JVM_CLASS_UNLOADED=zFQ.METRIC_JVM_CLASS_LOADED=zFQ.METRIC_JVM_CLASS_COUNT=zFQ.METRIC_HTTP_SERVER_REQUEST_DURATION=zFQ.METRIC_HTTP_CLIENT_REQUEST_DURATION=zFQ.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS=zFQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS=zFQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION=zFQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE=zFQ.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS=zFQ.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES=zFQ.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS=void 0;zFQ.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS="aspnetcore.diagnostics.exceptions";zFQ.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES="aspnetcore.rate_limiting.active_request_leases";zFQ.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS="aspnetcore.rate_limiting.queued_requests";zFQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE="aspnetcore.rate_limiting.request.time_in_queue";zFQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION="aspnetcore.rate_limiting.request_lease.duration";zFQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS="aspnetcore.rate_limiting.requests";zFQ.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS="aspnetcore.routing.match_attempts";zFQ.METRIC_HTTP_CLIENT_REQUEST_DURATION="http.client.request.duration";zFQ.METRIC_HTTP_SERVER_REQUEST_DURATION="http.server.request.duration";zFQ.METRIC_JVM_CLASS_COUNT="jvm.class.count";zFQ.METRIC_JVM_CLASS_LOADED="jvm.class.loaded";zFQ.METRIC_JVM_CLASS_UNLOADED="jvm.class.unloaded";zFQ.METRIC_JVM_CPU_COUNT="jvm.cpu.count";zFQ.METRIC_JVM_CPU_RECENT_UTILIZATION="jvm.cpu.recent_utilization";zFQ.METRIC_JVM_CPU_TIME="jvm.cpu.time";zFQ.METRIC_JVM_GC_DURATION="jvm.gc.duration";zFQ.METRIC_JVM_MEMORY_COMMITTED="jvm.memory.committed";zFQ.METRIC_JVM_MEMORY_LIMIT="jvm.memory.limit";zFQ.METRIC_JVM_MEMORY_USED="jvm.memory.used";zFQ.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC="jvm.memory.used_after_last_gc";zFQ.METRIC_JVM_THREAD_COUNT="jvm.thread.count";zFQ.METRIC_KESTREL_ACTIVE_CONNECTIONS="kestrel.active_connections";zFQ.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES="kestrel.active_tls_handshakes";zFQ.METRIC_KESTREL_CONNECTION_DURATION="kestrel.connection.duration";zFQ.METRIC_KESTREL_QUEUED_CONNECTIONS="kestrel.queued_connections";zFQ.METRIC_KESTREL_QUEUED_REQUESTS="kestrel.queued_requests";zFQ.METRIC_KESTREL_REJECTED_CONNECTIONS="kestrel.rejected_connections";zFQ.METRIC_KESTREL_TLS_HANDSHAKE_DURATION="kestrel.tls_handshake.duration";zFQ.METRIC_KESTREL_UPGRADED_CONNECTIONS="kestrel.upgraded_connections";zFQ.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS="signalr.server.active_connections";zFQ.METRIC_SIGNALR_SERVER_CONNECTION_DURATION="signalr.server.connection.duration"});var GF=R((XX)=>{var HK0=XX&&XX.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),dO=XX&&XX.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))HK0(Q,A,B)};Object.defineProperty(XX,"__esModule",{value:!0});dO(uGQ(),XX);dO(HFQ(),XX);dO(MFQ(),XX);dO(wFQ(),XX)});var PFQ=R((jFQ)=>{Object.defineProperty(jFQ,"__esModule",{value:!0});jFQ.defaultServiceName=void 0;function DK0(){return`unknown_service:${process.argv0}`}jFQ.defaultServiceName=DK0});var TFQ=R((hp)=>{Object.defineProperty(hp,"__esModule",{value:!0});hp.defaultServiceName=void 0;var NK0=PFQ();Object.defineProperty(hp,"defaultServiceName",{enumerable:!0,get:function(){return NK0.defaultServiceName}})});var fp=R((xp)=>{Object.defineProperty(xp,"__esModule",{value:!0});xp.defaultServiceName=void 0;var qK0=TFQ();Object.defineProperty(xp,"defaultServiceName",{enumerable:!0,get:function(){return qK0.defaultServiceName}})});var B6=R((kFQ)=>{Object.defineProperty(kFQ,"__esModule",{value:!0});kFQ.Resource=void 0;var SFQ=yA(),F$=GF(),bp=MB(),zK0=fp();class FF{constructor(A,Q){var B;this._attributes=A,this.asyncAttributesPending=Q!=null,this._syncAttributes=(B=this._attributes)!==null&&B!==void 0?B:{},this._asyncAttributesPromise=Q===null||Q===void 0?void 0:Q.then((Y)=>{return this._attributes=Object.assign({},this._attributes,Y),this.asyncAttributesPending=!1,Y},(Y)=>{return SFQ.diag.debug("a resource's async attributes promise rejected: %s",Y),this.asyncAttributesPending=!1,{}})}static empty(){return FF.EMPTY}static default(){return new FF({[F$.SEMRESATTRS_SERVICE_NAME]:(0,zK0.defaultServiceName)(),[F$.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE]:bp.SDK_INFO[F$.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE],[F$.SEMRESATTRS_TELEMETRY_SDK_NAME]:bp.SDK_INFO[F$.SEMRESATTRS_TELEMETRY_SDK_NAME],[F$.SEMRESATTRS_TELEMETRY_SDK_VERSION]:bp.SDK_INFO[F$.SEMRESATTRS_TELEMETRY_SDK_VERSION]})}get attributes(){var A;if(this.asyncAttributesPending)SFQ.diag.error("Accessing resource attributes before async attributes settled");return(A=this._attributes)!==null&&A!==void 0?A:{}}async waitForAsyncAttributes(){if(this.asyncAttributesPending)await this._asyncAttributesPromise}merge(A){var Q;if(!A)return this;let B=Object.assign(Object.assign({},this._syncAttributes),(Q=A._syncAttributes)!==null&&Q!==void 0?Q:A.attributes);if(!this._asyncAttributesPromise&&!A._asyncAttributesPromise)return new FF(B);let Y=Promise.all([this._asyncAttributesPromise,A._asyncAttributesPromise]).then(([J,C])=>{var X;return Object.assign(Object.assign(Object.assign(Object.assign({},this._syncAttributes),J),(X=A._syncAttributes)!==null&&X!==void 0?X:A.attributes),C)});return new FF(B,Y)}}kFQ.Resource=FF;FF.EMPTY=new FF({})});var mp=R((vFQ)=>{Object.defineProperty(vFQ,"__esModule",{value:!0});vFQ.normalizeType=vFQ.normalizeArch=void 0;var RK0=(A)=>{switch(A){case"arm":return"arm32";case"ppc":return"ppc32";case"x64":return"amd64";default:return A}};vFQ.normalizeArch=RK0;var wK0=(A)=>{switch(A){case"sunos":return"solaris";case"win32":return"windows";default:return A}};vFQ.normalizeType=wK0});var cO=R((gFQ)=>{Object.defineProperty(gFQ,"__esModule",{value:!0});gFQ.execAsync=void 0;var OK0=u("child_process"),PK0=u("util");gFQ.execAsync=PK0.promisify(OK0.exec)});var bFQ=R((xFQ)=>{Object.defineProperty(xFQ,"__esModule",{value:!0});xFQ.getMachineId=void 0;var TK0=cO(),SK0=yA();async function kK0(){try{let Q=(await(0,TK0.execAsync)('ioreg -rd1 -c "IOPlatformExpertDevice"')).stdout.split(` -`).find((Y)=>Y.includes("IOPlatformUUID"));if(!Q)return"";let B=Q.split('" = "');if(B.length===2)return B[1].slice(0,-1)}catch(A){SK0.diag.debug(`error reading machine id: ${A}`)}return""}xFQ.getMachineId=kK0});var dFQ=R((mFQ)=>{Object.defineProperty(mFQ,"__esModule",{value:!0});mFQ.getMachineId=void 0;var _K0=u("fs"),vK0=yA();async function yK0(){let A=["/etc/machine-id","/var/lib/dbus/machine-id"];for(let Q of A)try{return(await _K0.promises.readFile(Q,{encoding:"utf8"})).trim()}catch(B){vK0.diag.debug(`error reading machine id: ${B}`)}return""}mFQ.getMachineId=yK0});var iFQ=R((lFQ)=>{Object.defineProperty(lFQ,"__esModule",{value:!0});lFQ.getMachineId=void 0;var gK0=u("fs"),hK0=cO(),cFQ=yA();async function xK0(){try{return(await gK0.promises.readFile("/etc/hostid",{encoding:"utf8"})).trim()}catch(A){cFQ.diag.debug(`error reading machine id: ${A}`)}try{return(await(0,hK0.execAsync)("kenv -q smbios.system.uuid")).stdout.trim()}catch(A){cFQ.diag.debug(`error reading machine id: ${A}`)}return""}lFQ.getMachineId=xK0});var aFQ=R((sFQ)=>{Object.defineProperty(sFQ,"__esModule",{value:!0});sFQ.getMachineId=void 0;var nFQ=u("process"),fK0=cO(),bK0=yA();async function mK0(){let Q="%windir%\\System32\\REG.exe";if(nFQ.arch==="ia32"&&"PROCESSOR_ARCHITEW6432"in nFQ.env)Q="%windir%\\sysnative\\cmd.exe /c "+Q;try{let Y=(await(0,fK0.execAsync)(`${Q} QUERY HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Cryptography /v MachineGuid`)).stdout.split("REG_SZ");if(Y.length===2)return Y[1].trim()}catch(B){bK0.diag.debug(`error reading machine id: ${B}`)}return""}sFQ.getMachineId=mK0});var eFQ=R((oFQ)=>{Object.defineProperty(oFQ,"__esModule",{value:!0});oFQ.getMachineId=void 0;var uK0=yA();async function dK0(){return uK0.diag.debug("could not read machine-id: unsupported platform"),""}oFQ.getMachineId=dK0});var QWQ=R((AWQ)=>{Object.defineProperty(AWQ,"__esModule",{value:!0});AWQ.getMachineId=void 0;var cK0=u("process"),CK;AWQ.getMachineId=CK;switch(cK0.platform){case"darwin":AWQ.getMachineId=CK=bFQ().getMachineId;break;case"linux":AWQ.getMachineId=CK=dFQ().getMachineId;break;case"freebsd":AWQ.getMachineId=CK=iFQ().getMachineId;break;case"win32":AWQ.getMachineId=CK=aFQ().getMachineId;break;default:AWQ.getMachineId=CK=eFQ().getMachineId}});var dp=R((JWQ)=>{Object.defineProperty(JWQ,"__esModule",{value:!0});JWQ.hostDetectorSync=void 0;var up=GF(),lK0=B6(),BWQ=u("os"),pK0=mp(),iK0=QWQ();class YWQ{detect(A){let Q={[up.SEMRESATTRS_HOST_NAME]:(0,BWQ.hostname)(),[up.SEMRESATTRS_HOST_ARCH]:(0,pK0.normalizeArch)((0,BWQ.arch)())};return new lK0.Resource(Q,this._getAsyncAttributes())}_getAsyncAttributes(){return(0,iK0.getMachineId)().then((A)=>{let Q={};if(A)Q[up.SEMRESATTRS_HOST_ID]=A;return Q})}}JWQ.hostDetectorSync=new YWQ});var WWQ=R((GWQ)=>{Object.defineProperty(GWQ,"__esModule",{value:!0});GWQ.hostDetector=void 0;var nK0=dp();class XWQ{detect(A){return Promise.resolve(nK0.hostDetectorSync.detect(A))}}GWQ.hostDetector=new XWQ});var cp=R((EWQ)=>{Object.defineProperty(EWQ,"__esModule",{value:!0});EWQ.osDetectorSync=void 0;var ZWQ=GF(),sK0=B6(),$WQ=u("os"),rK0=mp();class UWQ{detect(A){let Q={[ZWQ.SEMRESATTRS_OS_TYPE]:(0,rK0.normalizeType)((0,$WQ.platform)()),[ZWQ.SEMRESATTRS_OS_VERSION]:(0,$WQ.release)()};return new sK0.Resource(Q)}}EWQ.osDetectorSync=new UWQ});var DWQ=R((IWQ)=>{Object.defineProperty(IWQ,"__esModule",{value:!0});IWQ.osDetector=void 0;var aK0=cp();class VWQ{detect(A){return Promise.resolve(aK0.osDetectorSync.detect(A))}}IWQ.osDetector=new VWQ});var lp=R((LWQ)=>{Object.defineProperty(LWQ,"__esModule",{value:!0});LWQ.processDetectorSync=void 0;var oK0=yA(),Y6=GF(),tK0=B6(),eK0=u("os");class NWQ{detect(A){let Q={[Y6.SEMRESATTRS_PROCESS_PID]:process.pid,[Y6.SEMRESATTRS_PROCESS_EXECUTABLE_NAME]:process.title,[Y6.SEMRESATTRS_PROCESS_EXECUTABLE_PATH]:process.execPath,[Y6.SEMRESATTRS_PROCESS_COMMAND_ARGS]:[process.argv[0],...process.execArgv,...process.argv.slice(1)],[Y6.SEMRESATTRS_PROCESS_RUNTIME_VERSION]:process.versions.node,[Y6.SEMRESATTRS_PROCESS_RUNTIME_NAME]:"nodejs",[Y6.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION]:"Node.js"};if(process.argv.length>1)Q[Y6.SEMRESATTRS_PROCESS_COMMAND]=process.argv[1];try{let B=eK0.userInfo();Q[Y6.SEMRESATTRS_PROCESS_OWNER]=B.username}catch(B){oK0.diag.debug(`error obtaining process owner: ${B}`)}return new tK0.Resource(Q)}}LWQ.processDetectorSync=new NWQ});var wWQ=R((zWQ)=>{Object.defineProperty(zWQ,"__esModule",{value:!0});zWQ.processDetector=void 0;var AV0=lp();class MWQ{detect(A){return Promise.resolve(AV0.processDetectorSync.detect(A))}}zWQ.processDetector=new MWQ});var TWQ=R((OWQ)=>{Object.defineProperty(OWQ,"__esModule",{value:!0});OWQ.serviceInstanceIdDetectorSync=void 0;var QV0=GF(),BV0=B6(),YV0=u("crypto");class jWQ{detect(A){let Q={[QV0.SEMRESATTRS_SERVICE_INSTANCE_ID]:(0,YV0.randomUUID)()};return new BV0.Resource(Q)}}OWQ.serviceInstanceIdDetectorSync=new jWQ});var SWQ=R((J6)=>{Object.defineProperty(J6,"__esModule",{value:!0});J6.serviceInstanceIdDetectorSync=J6.processDetectorSync=J6.processDetector=J6.osDetectorSync=J6.osDetector=J6.hostDetectorSync=J6.hostDetector=void 0;var JV0=WWQ();Object.defineProperty(J6,"hostDetector",{enumerable:!0,get:function(){return JV0.hostDetector}});var CV0=dp();Object.defineProperty(J6,"hostDetectorSync",{enumerable:!0,get:function(){return CV0.hostDetectorSync}});var XV0=DWQ();Object.defineProperty(J6,"osDetector",{enumerable:!0,get:function(){return XV0.osDetector}});var GV0=cp();Object.defineProperty(J6,"osDetectorSync",{enumerable:!0,get:function(){return GV0.osDetectorSync}});var FV0=wWQ();Object.defineProperty(J6,"processDetector",{enumerable:!0,get:function(){return FV0.processDetector}});var WV0=lp();Object.defineProperty(J6,"processDetectorSync",{enumerable:!0,get:function(){return WV0.processDetectorSync}});var ZV0=TWQ();Object.defineProperty(J6,"serviceInstanceIdDetectorSync",{enumerable:!0,get:function(){return ZV0.serviceInstanceIdDetectorSync}})});var kWQ=R((C6)=>{Object.defineProperty(C6,"__esModule",{value:!0});C6.serviceInstanceIdDetectorSync=C6.processDetectorSync=C6.processDetector=C6.osDetectorSync=C6.osDetector=C6.hostDetectorSync=C6.hostDetector=void 0;var Z$=SWQ();Object.defineProperty(C6,"hostDetector",{enumerable:!0,get:function(){return Z$.hostDetector}});Object.defineProperty(C6,"hostDetectorSync",{enumerable:!0,get:function(){return Z$.hostDetectorSync}});Object.defineProperty(C6,"osDetector",{enumerable:!0,get:function(){return Z$.osDetector}});Object.defineProperty(C6,"osDetectorSync",{enumerable:!0,get:function(){return Z$.osDetectorSync}});Object.defineProperty(C6,"processDetector",{enumerable:!0,get:function(){return Z$.processDetector}});Object.defineProperty(C6,"processDetectorSync",{enumerable:!0,get:function(){return Z$.processDetectorSync}});Object.defineProperty(C6,"serviceInstanceIdDetectorSync",{enumerable:!0,get:function(){return Z$.serviceInstanceIdDetectorSync}})});var ip=R((vWQ)=>{Object.defineProperty(vWQ,"__esModule",{value:!0});vWQ.browserDetectorSync=void 0;var lO=GF(),EV0=yA(),pp=B6();class _WQ{detect(A){var Q,B,Y;if(!(typeof navigator<"u"&&((B=(Q=global.process)===null||Q===void 0?void 0:Q.versions)===null||B===void 0?void 0:B.node)===void 0&&((Y=global.Bun)===null||Y===void 0?void 0:Y.version)===void 0))return pp.Resource.empty();let C={[lO.SEMRESATTRS_PROCESS_RUNTIME_NAME]:"browser",[lO.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION]:"Web Browser",[lO.SEMRESATTRS_PROCESS_RUNTIME_VERSION]:navigator.userAgent};return this._getResourceAttributes(C,A)}_getResourceAttributes(A,Q){if(A[lO.SEMRESATTRS_PROCESS_RUNTIME_VERSION]==="")return EV0.diag.debug("BrowserDetector failed: Unable to find required browser resources. "),pp.Resource.empty();else return new pp.Resource(Object.assign({},A))}}vWQ.browserDetectorSync=new _WQ});var fWQ=R((hWQ)=>{Object.defineProperty(hWQ,"__esModule",{value:!0});hWQ.browserDetector=void 0;var KV0=ip();class gWQ{detect(A){return Promise.resolve(KV0.browserDetectorSync.detect(A))}}hWQ.browserDetector=new gWQ});var np=R((mWQ)=>{Object.defineProperty(mWQ,"__esModule",{value:!0});mWQ.envDetectorSync=void 0;var VV0=yA(),IV0=MB(),HV0=GF(),DV0=B6();class bWQ{constructor(){this._MAX_LENGTH=255,this._COMMA_SEPARATOR=",",this._LABEL_KEY_VALUE_SPLITTER="=",this._ERROR_MESSAGE_INVALID_CHARS="should be a ASCII string with a length greater than 0 and not exceed "+this._MAX_LENGTH+" characters.",this._ERROR_MESSAGE_INVALID_VALUE="should be a ASCII string with a length not exceed "+this._MAX_LENGTH+" characters."}detect(A){let Q={},B=(0,IV0.getEnv)(),Y=B.OTEL_RESOURCE_ATTRIBUTES,J=B.OTEL_SERVICE_NAME;if(Y)try{let C=this._parseResourceAttributes(Y);Object.assign(Q,C)}catch(C){VV0.diag.debug(`EnvDetector failed: ${C.message}`)}if(J)Q[HV0.SEMRESATTRS_SERVICE_NAME]=J;return new DV0.Resource(Q)}_parseResourceAttributes(A){if(!A)return{};let Q={},B=A.split(this._COMMA_SEPARATOR,-1);for(let Y of B){let J=Y.split(this._LABEL_KEY_VALUE_SPLITTER,-1);if(J.length!==2)continue;let[C,X]=J;if(C=C.trim(),X=X.trim().split(/^"|"$/).join(""),!this._isValidAndNotEmpty(C))throw Error(`Attribute key ${this._ERROR_MESSAGE_INVALID_CHARS}`);if(!this._isValid(X))throw Error(`Attribute value ${this._ERROR_MESSAGE_INVALID_VALUE}`);Q[C]=decodeURIComponent(X)}return Q}_isValid(A){return A.length<=this._MAX_LENGTH&&this._isBaggageOctetString(A)}_isBaggageOctetString(A){for(let Q=0;Q126)return!1}return!0}_isValidAndNotEmpty(A){return A.length>0&&this._isValid(A)}}mWQ.envDetectorSync=new bWQ});var pWQ=R((cWQ)=>{Object.defineProperty(cWQ,"__esModule",{value:!0});cWQ.envDetector=void 0;var NV0=np();class dWQ{detect(A){return Promise.resolve(NV0.envDetectorSync.detect(A))}}cWQ.envDetector=new dWQ});var iWQ=R((k8)=>{Object.defineProperty(k8,"__esModule",{value:!0});k8.envDetectorSync=k8.browserDetectorSync=k8.envDetector=k8.browserDetector=k8.serviceInstanceIdDetectorSync=k8.processDetectorSync=k8.processDetector=k8.osDetectorSync=k8.osDetector=k8.hostDetectorSync=k8.hostDetector=void 0;var $$=kWQ();Object.defineProperty(k8,"hostDetector",{enumerable:!0,get:function(){return $$.hostDetector}});Object.defineProperty(k8,"hostDetectorSync",{enumerable:!0,get:function(){return $$.hostDetectorSync}});Object.defineProperty(k8,"osDetector",{enumerable:!0,get:function(){return $$.osDetector}});Object.defineProperty(k8,"osDetectorSync",{enumerable:!0,get:function(){return $$.osDetectorSync}});Object.defineProperty(k8,"processDetector",{enumerable:!0,get:function(){return $$.processDetector}});Object.defineProperty(k8,"processDetectorSync",{enumerable:!0,get:function(){return $$.processDetectorSync}});Object.defineProperty(k8,"serviceInstanceIdDetectorSync",{enumerable:!0,get:function(){return $$.serviceInstanceIdDetectorSync}});var LV0=fWQ();Object.defineProperty(k8,"browserDetector",{enumerable:!0,get:function(){return LV0.browserDetector}});var qV0=pWQ();Object.defineProperty(k8,"envDetector",{enumerable:!0,get:function(){return qV0.envDetector}});var MV0=ip();Object.defineProperty(k8,"browserDetectorSync",{enumerable:!0,get:function(){return MV0.browserDetectorSync}});var zV0=np();Object.defineProperty(k8,"envDetectorSync",{enumerable:!0,get:function(){return zV0.envDetectorSync}})});var rWQ=R((nWQ)=>{Object.defineProperty(nWQ,"__esModule",{value:!0});nWQ.isPromiseLike=void 0;var wV0=(A)=>{return A!==null&&typeof A==="object"&&typeof A.then==="function"};nWQ.isPromiseLike=wV0});var eWQ=R((oWQ)=>{Object.defineProperty(oWQ,"__esModule",{value:!0});oWQ.detectResourcesSync=oWQ.detectResources=void 0;var WL=B6(),XK=yA(),jV0=rWQ(),OV0=async(A={})=>{let Q=await Promise.all((A.detectors||[]).map(async(B)=>{try{let Y=await B.detect(A);return XK.diag.debug(`${B.constructor.name} found resource.`,Y),Y}catch(Y){return XK.diag.debug(`${B.constructor.name} failed: ${Y.message}`),WL.Resource.empty()}}));return aWQ(Q),Q.reduce((B,Y)=>B.merge(Y),WL.Resource.empty())};oWQ.detectResources=OV0;var PV0=(A={})=>{var Q;let B=((Q=A.detectors)!==null&&Q!==void 0?Q:[]).map((J)=>{try{let C=J.detect(A),X;if((0,jV0.isPromiseLike)(C)){let G=async()=>{var F;let W=await C;return await((F=W.waitForAsyncAttributes)===null||F===void 0?void 0:F.call(W)),W.attributes};X=new WL.Resource({},G())}else X=C;if(X.waitForAsyncAttributes)X.waitForAsyncAttributes().then(()=>XK.diag.debug(`${J.constructor.name} found resource.`,X));else XK.diag.debug(`${J.constructor.name} found resource.`,X);return X}catch(C){return XK.diag.error(`${J.constructor.name} failed: ${C.message}`),WL.Resource.empty()}}),Y=B.reduce((J,C)=>J.merge(C),WL.Resource.empty());if(Y.waitForAsyncAttributes)Y.waitForAsyncAttributes().then(()=>{aWQ(B)});return Y};oWQ.detectResourcesSync=PV0;var aWQ=(A)=>{A.forEach((Q)=>{if(Object.keys(Q.attributes).length>0){let B=JSON.stringify(Q.attributes,null,4);XK.diag.verbose(B)}})}});var sp=R((FJ)=>{Object.defineProperty(FJ,"__esModule",{value:!0});FJ.detectResources=FJ.detectResourcesSync=FJ.serviceInstanceIdDetectorSync=FJ.processDetectorSync=FJ.processDetector=FJ.osDetectorSync=FJ.osDetector=FJ.hostDetectorSync=FJ.hostDetector=FJ.envDetectorSync=FJ.envDetector=FJ.browserDetectorSync=FJ.browserDetector=FJ.defaultServiceName=FJ.Resource=void 0;var SV0=B6();Object.defineProperty(FJ,"Resource",{enumerable:!0,get:function(){return SV0.Resource}});var kV0=fp();Object.defineProperty(FJ,"defaultServiceName",{enumerable:!0,get:function(){return kV0.defaultServiceName}});var eC=iWQ();Object.defineProperty(FJ,"browserDetector",{enumerable:!0,get:function(){return eC.browserDetector}});Object.defineProperty(FJ,"browserDetectorSync",{enumerable:!0,get:function(){return eC.browserDetectorSync}});Object.defineProperty(FJ,"envDetector",{enumerable:!0,get:function(){return eC.envDetector}});Object.defineProperty(FJ,"envDetectorSync",{enumerable:!0,get:function(){return eC.envDetectorSync}});Object.defineProperty(FJ,"hostDetector",{enumerable:!0,get:function(){return eC.hostDetector}});Object.defineProperty(FJ,"hostDetectorSync",{enumerable:!0,get:function(){return eC.hostDetectorSync}});Object.defineProperty(FJ,"osDetector",{enumerable:!0,get:function(){return eC.osDetector}});Object.defineProperty(FJ,"osDetectorSync",{enumerable:!0,get:function(){return eC.osDetectorSync}});Object.defineProperty(FJ,"processDetector",{enumerable:!0,get:function(){return eC.processDetector}});Object.defineProperty(FJ,"processDetectorSync",{enumerable:!0,get:function(){return eC.processDetectorSync}});Object.defineProperty(FJ,"serviceInstanceIdDetectorSync",{enumerable:!0,get:function(){return eC.serviceInstanceIdDetectorSync}});var AZQ=eWQ();Object.defineProperty(FJ,"detectResourcesSync",{enumerable:!0,get:function(){return AZQ.detectResourcesSync}});Object.defineProperty(FJ,"detectResources",{enumerable:!0,get:function(){return AZQ.detectResources}})});var JZQ=R((BZQ)=>{Object.defineProperty(BZQ,"__esModule",{value:!0});BZQ.MultiSpanProcessor=void 0;var vV0=MB();class QZQ{constructor(A){this._spanProcessors=A}forceFlush(){let A=[];for(let Q of this._spanProcessors)A.push(Q.forceFlush());return new Promise((Q)=>{Promise.all(A).then(()=>{Q()}).catch((B)=>{(0,vV0.globalErrorHandler)(B||Error("MultiSpanProcessor: forceFlush failed")),Q()})})}onStart(A,Q){for(let B of this._spanProcessors)B.onStart(A,Q)}onEnd(A){for(let Q of this._spanProcessors)Q.onEnd(A)}shutdown(){let A=[];for(let Q of this._spanProcessors)A.push(Q.shutdown());return new Promise((Q,B)=>{Promise.all(A).then(()=>{Q()},B)})}}BZQ.MultiSpanProcessor=QZQ});var rp=R((XZQ)=>{Object.defineProperty(XZQ,"__esModule",{value:!0});XZQ.NoopSpanProcessor=void 0;class CZQ{onStart(A,Q){}onEnd(A){}shutdown(){return Promise.resolve()}forceFlush(){return Promise.resolve()}}XZQ.NoopSpanProcessor=CZQ});var EZQ=R(($ZQ)=>{Object.defineProperty($ZQ,"__esModule",{value:!0});$ZQ.BasicTracerProvider=$ZQ.ForceFlushState=void 0;var GK=yA(),WK=MB(),FZQ=sp(),yV0=yp(),gV0=kp(),WZQ=JZQ(),hV0=rp(),xV0=mO(),fV0=vp(),FK;(function(A){A[A.resolved=0]="resolved",A[A.timeout=1]="timeout",A[A.error=2]="error",A[A.unresolved=3]="unresolved"})(FK=$ZQ.ForceFlushState||($ZQ.ForceFlushState={}));class pO{constructor(A={}){var Q,B;this._registeredSpanProcessors=[],this._tracers=new Map;let Y=(0,WK.merge)({},(0,gV0.loadDefaultConfig)(),(0,fV0.reconfigureLimits)(A));if(this.resource=(Q=Y.resource)!==null&&Q!==void 0?Q:FZQ.Resource.empty(),Y.mergeResourceWithDefaults)this.resource=FZQ.Resource.default().merge(this.resource);if(this._config=Object.assign({},Y,{resource:this.resource}),(B=A.spanProcessors)===null||B===void 0?void 0:B.length)this._registeredSpanProcessors=[...A.spanProcessors],this.activeSpanProcessor=new WZQ.MultiSpanProcessor(this._registeredSpanProcessors);else{let J=this._buildExporterFromEnv();if(J!==void 0){let C=new xV0.BatchSpanProcessor(J);this.activeSpanProcessor=C}else this.activeSpanProcessor=new hV0.NoopSpanProcessor}}getTracer(A,Q,B){let Y=`${A}@${Q||""}:${(B===null||B===void 0?void 0:B.schemaUrl)||""}`;if(!this._tracers.has(Y))this._tracers.set(Y,new yV0.Tracer({name:A,version:Q,schemaUrl:B===null||B===void 0?void 0:B.schemaUrl},this._config,this));return this._tracers.get(Y)}addSpanProcessor(A){if(this._registeredSpanProcessors.length===0)this.activeSpanProcessor.shutdown().catch((Q)=>GK.diag.error("Error while trying to shutdown current span processor",Q));this._registeredSpanProcessors.push(A),this.activeSpanProcessor=new WZQ.MultiSpanProcessor(this._registeredSpanProcessors)}getActiveSpanProcessor(){return this.activeSpanProcessor}register(A={}){if(GK.trace.setGlobalTracerProvider(this),A.propagator===void 0)A.propagator=this._buildPropagatorFromEnv();if(A.contextManager)GK.context.setGlobalContextManager(A.contextManager);if(A.propagator)GK.propagation.setGlobalPropagator(A.propagator)}forceFlush(){let A=this._config.forceFlushTimeoutMillis,Q=this._registeredSpanProcessors.map((B)=>{return new Promise((Y)=>{let J,C=setTimeout(()=>{Y(Error(`Span processor did not completed within timeout period of ${A} ms`)),J=FK.timeout},A);B.forceFlush().then(()=>{if(clearTimeout(C),J!==FK.timeout)J=FK.resolved,Y(J)}).catch((X)=>{clearTimeout(C),J=FK.error,Y(X)})})});return new Promise((B,Y)=>{Promise.all(Q).then((J)=>{let C=J.filter((X)=>X!==FK.resolved);if(C.length>0)Y(C);else B()}).catch((J)=>Y([J]))})}shutdown(){return this.activeSpanProcessor.shutdown()}_getPropagator(A){var Q;return(Q=this.constructor._registeredPropagators.get(A))===null||Q===void 0?void 0:Q()}_getSpanExporter(A){var Q;return(Q=this.constructor._registeredExporters.get(A))===null||Q===void 0?void 0:Q()}_buildPropagatorFromEnv(){let A=Array.from(new Set((0,WK.getEnv)().OTEL_PROPAGATORS)),B=A.map((Y)=>{let J=this._getPropagator(Y);if(!J)GK.diag.warn(`Propagator "${Y}" requested through environment variable is unavailable.`);return J}).reduce((Y,J)=>{if(J)Y.push(J);return Y},[]);if(B.length===0)return;else if(A.length===1)return B[0];else return new WK.CompositePropagator({propagators:B})}_buildExporterFromEnv(){let A=(0,WK.getEnv)().OTEL_TRACES_EXPORTER;if(A==="none"||A==="")return;let Q=this._getSpanExporter(A);if(!Q)GK.diag.error(`Exporter "${A}" requested through environment variable is unavailable.`);return Q}}$ZQ.BasicTracerProvider=pO;pO._registeredPropagators=new Map([["tracecontext",()=>new WK.W3CTraceContextPropagator],["baggage",()=>new WK.W3CBaggagePropagator]]);pO._registeredExporters=new Map});var HZQ=R((VZQ)=>{Object.defineProperty(VZQ,"__esModule",{value:!0});VZQ.ConsoleSpanExporter=void 0;var ap=MB();class KZQ{export(A,Q){return this._sendSpans(A,Q)}shutdown(){return this._sendSpans([]),this.forceFlush()}forceFlush(){return Promise.resolve()}_exportInfo(A){var Q;return{resource:{attributes:A.resource.attributes},instrumentationScope:A.instrumentationLibrary,traceId:A.spanContext().traceId,parentId:A.parentSpanId,traceState:(Q=A.spanContext().traceState)===null||Q===void 0?void 0:Q.serialize(),name:A.name,id:A.spanContext().spanId,kind:A.kind,timestamp:(0,ap.hrTimeToMicroseconds)(A.startTime),duration:(0,ap.hrTimeToMicroseconds)(A.duration),attributes:A.attributes,status:A.status,events:A.events,links:A.links}}_sendSpans(A,Q){for(let B of A)console.dir(this._exportInfo(B),{depth:3});if(Q)return Q({code:ap.ExportResultCode.SUCCESS})}}VZQ.ConsoleSpanExporter=KZQ});var MZQ=R((LZQ)=>{Object.defineProperty(LZQ,"__esModule",{value:!0});LZQ.InMemorySpanExporter=void 0;var DZQ=MB();class NZQ{constructor(){this._finishedSpans=[],this._stopped=!1}export(A,Q){if(this._stopped)return Q({code:DZQ.ExportResultCode.FAILED,error:Error("Exporter has been stopped")});this._finishedSpans.push(...A),setTimeout(()=>Q({code:DZQ.ExportResultCode.SUCCESS}),0)}shutdown(){return this._stopped=!0,this._finishedSpans=[],this.forceFlush()}forceFlush(){return Promise.resolve()}reset(){this._finishedSpans=[]}getFinishedSpans(){return this._finishedSpans}}LZQ.InMemorySpanExporter=NZQ});var jZQ=R((RZQ)=>{Object.defineProperty(RZQ,"__esModule",{value:!0});RZQ.SimpleSpanProcessor=void 0;var bV0=yA(),ZK=MB();class zZQ{constructor(A){this._exporter=A,this._shutdownOnce=new ZK.BindOnceFuture(this._shutdown,this),this._unresolvedExports=new Set}async forceFlush(){if(await Promise.all(Array.from(this._unresolvedExports)),this._exporter.forceFlush)await this._exporter.forceFlush()}onStart(A,Q){}onEnd(A){var Q,B;if(this._shutdownOnce.isCalled)return;if((A.spanContext().traceFlags&bV0.TraceFlags.SAMPLED)===0)return;let Y=()=>ZK.internal._export(this._exporter,[A]).then((J)=>{var C;if(J.code!==ZK.ExportResultCode.SUCCESS)(0,ZK.globalErrorHandler)((C=J.error)!==null&&C!==void 0?C:Error(`SimpleSpanProcessor: span export failed (status ${J})`))}).catch((J)=>{(0,ZK.globalErrorHandler)(J)});if(A.resource.asyncAttributesPending){let J=(B=(Q=A.resource).waitForAsyncAttributes)===null||B===void 0?void 0:B.call(Q).then(()=>{if(J!=null)this._unresolvedExports.delete(J);return Y()},(C)=>(0,ZK.globalErrorHandler)(C));if(J!=null)this._unresolvedExports.add(J)}else Y()}shutdown(){return this._shutdownOnce.call()}_shutdown(){return this._exporter.shutdown()}}RZQ.SimpleSpanProcessor=zZQ});var op=R((WJ)=>{Object.defineProperty(WJ,"__esModule",{value:!0});WJ.Span=WJ.SamplingDecision=WJ.TraceIdRatioBasedSampler=WJ.ParentBasedSampler=WJ.AlwaysOnSampler=WJ.AlwaysOffSampler=WJ.NoopSpanProcessor=WJ.SimpleSpanProcessor=WJ.InMemorySpanExporter=WJ.ConsoleSpanExporter=WJ.RandomIdGenerator=WJ.BatchSpanProcessor=WJ.ForceFlushState=WJ.BasicTracerProvider=WJ.Tracer=void 0;var mV0=yp();Object.defineProperty(WJ,"Tracer",{enumerable:!0,get:function(){return mV0.Tracer}});var OZQ=EZQ();Object.defineProperty(WJ,"BasicTracerProvider",{enumerable:!0,get:function(){return OZQ.BasicTracerProvider}});Object.defineProperty(WJ,"ForceFlushState",{enumerable:!0,get:function(){return OZQ.ForceFlushState}});var PZQ=mO();Object.defineProperty(WJ,"BatchSpanProcessor",{enumerable:!0,get:function(){return PZQ.BatchSpanProcessor}});Object.defineProperty(WJ,"RandomIdGenerator",{enumerable:!0,get:function(){return PZQ.RandomIdGenerator}});var uV0=HZQ();Object.defineProperty(WJ,"ConsoleSpanExporter",{enumerable:!0,get:function(){return uV0.ConsoleSpanExporter}});var dV0=MZQ();Object.defineProperty(WJ,"InMemorySpanExporter",{enumerable:!0,get:function(){return dV0.InMemorySpanExporter}});var cV0=jZQ();Object.defineProperty(WJ,"SimpleSpanProcessor",{enumerable:!0,get:function(){return cV0.SimpleSpanProcessor}});var lV0=rp();Object.defineProperty(WJ,"NoopSpanProcessor",{enumerable:!0,get:function(){return lV0.NoopSpanProcessor}});var pV0=vO();Object.defineProperty(WJ,"AlwaysOffSampler",{enumerable:!0,get:function(){return pV0.AlwaysOffSampler}});var iV0=yO();Object.defineProperty(WJ,"AlwaysOnSampler",{enumerable:!0,get:function(){return iV0.AlwaysOnSampler}});var nV0=Op();Object.defineProperty(WJ,"ParentBasedSampler",{enumerable:!0,get:function(){return nV0.ParentBasedSampler}});var sV0=Pp();Object.defineProperty(WJ,"TraceIdRatioBasedSampler",{enumerable:!0,get:function(){return sV0.TraceIdRatioBasedSampler}});var rV0=FL();Object.defineProperty(WJ,"SamplingDecision",{enumerable:!0,get:function(){return rV0.SamplingDecision}});var aV0=Rp();Object.defineProperty(WJ,"Span",{enumerable:!0,get:function(){return aV0.Span}})});var F$Q=R((X$Q)=>{Object.defineProperty(X$Q,"__esModule",{value:!0});X$Q.PACKAGE_NAME=X$Q.PACKAGE_VERSION=void 0;X$Q.PACKAGE_VERSION="0.10.1";X$Q.PACKAGE_NAME="@opentelemetry/instrumentation-undici"});var $$Q=R((W$Q)=>{Object.defineProperty(W$Q,"__esModule",{value:!0});W$Q.SemanticAttributes=void 0;W$Q.SemanticAttributes={HTTP_CONNECTION_STATE:"http.connection.state",ERROR_TYPE:"error.type",HTTP_REQUEST_BODY_SIZE:"http.request.body.size",HTTP_REQUEST_METHOD:"http.request.method",HTTP_REQUEST_METHOD_ORIGINAL:"http.request.method_original",HTTP_REQUEST_RESEND_COUNT:"http.request.resend_count",HTTP_RESPONSE_BODY_SIZE:"http.response.body.size",HTTP_RESPONSE_STATUS_CODE:"http.response.status_code",HTTP_ROUTE:"http.route",NETWORK_PEER_ADDRESS:"network.peer.address",NETWORK_PEER_PORT:"network.peer.port",NETWORK_PROTOCOL_NAME:"network.protocol.name",NETWORK_PROTOCOL_VERSION:"network.protocol.version",SERVER_ADDRESS:"server.address",SERVER_PORT:"server.port",URL_FULL:"url.full",URL_PATH:"url.path",URL_QUERY:"url.query",URL_SCHEME:"url.scheme",USER_AGENT_ORIGINAL:"user_agent.original"}});var I$Q=R((K$Q)=>{Object.defineProperty(K$Q,"__esModule",{value:!0});K$Q.UndiciInstrumentation=void 0;var KL=u("diagnostics_channel"),rI0=u("url"),VL=NB(),_8=yA(),U$Q=F$Q(),_Y=$$Q(),tO=MB();class E$Q extends VL.InstrumentationBase{constructor(A={}){super(U$Q.PACKAGE_NAME,U$Q.PACKAGE_VERSION,A);this._recordFromReq=new WeakMap}init(){return}disable(){super.disable(),this._channelSubs.forEach((A)=>A.unsubscribe()),this._channelSubs.length=0}enable(){if(super.enable(),this._channelSubs=this._channelSubs||[],this._channelSubs.length>0)return;this.subscribeToChannel("undici:request:create",this.onRequestCreated.bind(this)),this.subscribeToChannel("undici:client:sendHeaders",this.onRequestHeaders.bind(this)),this.subscribeToChannel("undici:request:headers",this.onResponseHeaders.bind(this)),this.subscribeToChannel("undici:request:trailers",this.onDone.bind(this)),this.subscribeToChannel("undici:request:error",this.onError.bind(this))}_updateMetricInstruments(){this._httpClientDurationHistogram=this.meter.createHistogram("http.client.request.duration",{description:"Measures the duration of outbound HTTP requests.",unit:"s",valueType:_8.ValueType.DOUBLE,advice:{explicitBucketBoundaries:[0.005,0.01,0.025,0.05,0.075,0.1,0.25,0.5,0.75,1,2.5,5,7.5,10]}})}subscribeToChannel(A,Q){var B;let[Y,J]=process.version.replace("v","").split(".").map((G)=>Number(G)),C=Y>18||Y===18&&J>=19,X;if(C)(B=KL.subscribe)===null||B===void 0||B.call(KL,A,Q),X=()=>{var G;return(G=KL.unsubscribe)===null||G===void 0?void 0:G.call(KL,A,Q)};else{let G=KL.channel(A);G.subscribe(Q),X=()=>G.unsubscribe(Q)}this._channelSubs.push({name:A,unsubscribe:X})}onRequestCreated({request:A}){let Q=this.getConfig(),B=Q.enabled!==!1;if((0,VL.safeExecuteInTheMiddle)(()=>{var z;return!B||A.method==="CONNECT"||((z=Q.ignoreRequestHook)===null||z===void 0?void 0:z.call(Q,A))},(z)=>z&&this._diag.error("caught ignoreRequestHook error: ",z),!0))return;let J=(0,tO.hrTime)(),C;try{C=new rI0.URL(A.path,A.origin)}catch(z){this._diag.warn("could not determine url.full:",z);return}let X=C.protocol.replace(":",""),G=this.getRequestMethod(A.method),F={[_Y.SemanticAttributes.HTTP_REQUEST_METHOD]:G,[_Y.SemanticAttributes.HTTP_REQUEST_METHOD_ORIGINAL]:A.method,[_Y.SemanticAttributes.URL_FULL]:C.toString(),[_Y.SemanticAttributes.URL_PATH]:C.pathname,[_Y.SemanticAttributes.URL_QUERY]:C.search,[_Y.SemanticAttributes.URL_SCHEME]:X},W={https:"443",http:"80"},Z=C.hostname,U=C.port||W[X];if(F[_Y.SemanticAttributes.SERVER_ADDRESS]=Z,U&&!isNaN(Number(U)))F[_Y.SemanticAttributes.SERVER_PORT]=Number(U);let $;if(Array.isArray(A.headers)){let z=A.headers.findIndex((M)=>M.toLowerCase()==="user-agent");if(z>=0)$=A.headers[z+1]}else if(typeof A.headers==="string"){let M=A.headers.split(`\r -`).find((N)=>N.toLowerCase().startsWith("user-agent"));$=M&&M.substring(M.indexOf(":")+1).trim()}if($)F[_Y.SemanticAttributes.USER_AGENT_ORIGINAL]=$;let E=(0,VL.safeExecuteInTheMiddle)(()=>{var z;return(z=Q.startSpanHook)===null||z===void 0?void 0:z.call(Q,A)},(z)=>z&&this._diag.error("caught startSpanHook error: ",z),!0);if(E)Object.entries(E).forEach(([z,M])=>{F[z]=M});let K=_8.context.active(),I=_8.trace.getSpan(K),V;if(Q.requireParentforSpans&&(!I||!_8.trace.isSpanContextValid(I.spanContext())))V=_8.trace.wrapSpanContext(_8.INVALID_SPAN_CONTEXT);else V=this.tracer.startSpan(G==="_OTHER"?"HTTP":G,{kind:_8.SpanKind.CLIENT,attributes:F},K);(0,VL.safeExecuteInTheMiddle)(()=>{var z;return(z=Q.requestHook)===null||z===void 0?void 0:z.call(Q,V,A)},(z)=>z&&this._diag.error("caught requestHook error: ",z),!0);let H=_8.trace.setSpan(_8.context.active(),V),D={};_8.propagation.inject(H,D);let L=Object.entries(D);for(let z=0;zQ.trim()).join(" ")};YgA.O=function(A){return this.inspectOpts.colors=this.useColors,wO.inspect(A,this.inspectOpts)}});var GgA=R((CyY,el)=>{if(typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs)el.exports=thA();else el.exports=XgA()});var Qp=R((XyY,FgA)=>{var Ap=u("path").sep;FgA.exports=function(A){var Q=A.split(Ap),B=Q.lastIndexOf("node_modules");if(B===-1)return;if(!Q[B+1])return;var Y=Q[B+1][0]==="@",J=Y?Q[B+1]+"/"+Q[B+2]:Q[B+1],C=Y?3:2,X="",G=B+C-1;for(var F=0;F<=G;F++)if(F===G)X+=Q[F];else X+=Q[F]+Ap;var W="",Z=Q.length-1;for(var U=B+C;U<=Z;U++)if(U===Z)W+=Q[U];else W+=Q[U]+Ap;return{name:J,basedir:X,path:W}}});var Bp=R((GyY,WgA)=>{var Y_B=u("os");WgA.exports=Y_B.homedir||function(){var Q=process.env.HOME,B=process.env.LOGNAME||process.env.USER||process.env.LNAME||process.env.USERNAME;if(process.platform==="win32")return process.env.USERPROFILE||process.env.HOMEDRIVE+process.env.HOMEPATH||Q||null;if(process.platform==="darwin")return Q||(B?"/Users/"+B:null);if(process.platform==="linux")return Q||(process.getuid()===0?"/root":B?"/home/"+B:null);return Q||null}});var Yp=R((FyY,ZgA)=>{ZgA.exports=function(){var A=Error.prepareStackTrace;Error.prepareStackTrace=function(B,Y){return Y};var Q=Error().stack;return Error.prepareStackTrace=A,Q[2].getFileName()}});var $gA=R((WyY,AL)=>{var J_B=process.platform==="win32",C_B=/^(((?:[a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/]+)?[\\\/]?)(?:[^\\\/]*[\\\/])*)((\.{1,2}|[^\\\/]+?|)(\.[^.\/\\]*|))[\\\/]*$/,Jp={};function X_B(A){return C_B.exec(A).slice(1)}Jp.parse=function(A){if(typeof A!=="string")throw TypeError("Parameter 'pathString' must be a string, not "+typeof A);var Q=X_B(A);if(!Q||Q.length!==5)throw TypeError("Invalid path '"+A+"'");return{root:Q[1],dir:Q[0]===Q[1]?Q[0]:Q[0].slice(0,-1),base:Q[2],ext:Q[4],name:Q[3]}};var G_B=/^((\/?)(?:[^\/]*\/)*)((\.{1,2}|[^\/]+?|)(\.[^.\/]*|))[\/]*$/,Cp={};function F_B(A){return G_B.exec(A).slice(1)}Cp.parse=function(A){if(typeof A!=="string")throw TypeError("Parameter 'pathString' must be a string, not "+typeof A);var Q=F_B(A);if(!Q||Q.length!==5)throw TypeError("Invalid path '"+A+"'");return{root:Q[1],dir:Q[0].slice(0,-1),base:Q[2],ext:Q[4],name:Q[3]}};if(J_B)AL.exports=Jp.parse;else AL.exports=Cp.parse;AL.exports.posix=Cp.parse;AL.exports.win32=Jp.parse});var Xp=R((ZyY,VgA)=>{var KgA=u("path"),UgA=KgA.parse||$gA(),EgA=function(Q,B){var Y="/";if(/^([A-Za-z]:)/.test(Q))Y="";else if(/^\\\\/.test(Q))Y="\\\\";var J=[Q],C=UgA(Q);while(C.dir!==J[J.length-1])J.push(C.dir),C=UgA(C.dir);return J.reduce(function(X,G){return X.concat(B.map(function(F){return KgA.resolve(Y,G,F)}))},[])};VgA.exports=function(Q,B,Y){var J=B&&B.moduleDirectory?[].concat(B.moduleDirectory):["node_modules"];if(B&&typeof B.paths==="function")return B.paths(Y,Q,function(){return EgA(Q,J)},B);var C=EgA(Q,J);return B&&B.paths?C.concat(B.paths):C}});var Gp=R(($yY,IgA)=>{IgA.exports=function(A,Q){return Q||{}}});var NgA=R((UyY,DgA)=>{var W_B="Function.prototype.bind called on incompatible ",Z_B=Object.prototype.toString,$_B=Math.max,U_B="[object Function]",HgA=function(Q,B){var Y=[];for(var J=0;J{var V_B=NgA();LgA.exports=Function.prototype.bind||V_B});var zgA=R((KyY,MgA)=>{var I_B=Function.prototype.call,H_B=Object.prototype.hasOwnProperty,D_B=qgA();MgA.exports=D_B.call(I_B,H_B)});var RgA=R((VyY,N_B)=>{N_B.exports={assert:!0,"node:assert":[">= 14.18 && < 15",">= 16"],"assert/strict":">= 15","node:assert/strict":">= 16",async_hooks:">= 8","node:async_hooks":[">= 14.18 && < 15",">= 16"],buffer_ieee754:">= 0.5 && < 0.9.7",buffer:!0,"node:buffer":[">= 14.18 && < 15",">= 16"],child_process:!0,"node:child_process":[">= 14.18 && < 15",">= 16"],cluster:">= 0.5","node:cluster":[">= 14.18 && < 15",">= 16"],console:!0,"node:console":[">= 14.18 && < 15",">= 16"],constants:!0,"node:constants":[">= 14.18 && < 15",">= 16"],crypto:!0,"node:crypto":[">= 14.18 && < 15",">= 16"],_debug_agent:">= 1 && < 8",_debugger:"< 8",dgram:!0,"node:dgram":[">= 14.18 && < 15",">= 16"],diagnostics_channel:[">= 14.17 && < 15",">= 15.1"],"node:diagnostics_channel":[">= 14.18 && < 15",">= 16"],dns:!0,"node:dns":[">= 14.18 && < 15",">= 16"],"dns/promises":">= 15","node:dns/promises":">= 16",domain:">= 0.7.12","node:domain":[">= 14.18 && < 15",">= 16"],events:!0,"node:events":[">= 14.18 && < 15",">= 16"],freelist:"< 6",fs:!0,"node:fs":[">= 14.18 && < 15",">= 16"],"fs/promises":[">= 10 && < 10.1",">= 14"],"node:fs/promises":[">= 14.18 && < 15",">= 16"],_http_agent:">= 0.11.1","node:_http_agent":[">= 14.18 && < 15",">= 16"],_http_client:">= 0.11.1","node:_http_client":[">= 14.18 && < 15",">= 16"],_http_common:">= 0.11.1","node:_http_common":[">= 14.18 && < 15",">= 16"],_http_incoming:">= 0.11.1","node:_http_incoming":[">= 14.18 && < 15",">= 16"],_http_outgoing:">= 0.11.1","node:_http_outgoing":[">= 14.18 && < 15",">= 16"],_http_server:">= 0.11.1","node:_http_server":[">= 14.18 && < 15",">= 16"],http:!0,"node:http":[">= 14.18 && < 15",">= 16"],http2:">= 8.8","node:http2":[">= 14.18 && < 15",">= 16"],https:!0,"node:https":[">= 14.18 && < 15",">= 16"],inspector:">= 8","node:inspector":[">= 14.18 && < 15",">= 16"],"inspector/promises":[">= 19"],"node:inspector/promises":[">= 19"],_linklist:"< 8",module:!0,"node:module":[">= 14.18 && < 15",">= 16"],net:!0,"node:net":[">= 14.18 && < 15",">= 16"],"node-inspect/lib/_inspect":">= 7.6 && < 12","node-inspect/lib/internal/inspect_client":">= 7.6 && < 12","node-inspect/lib/internal/inspect_repl":">= 7.6 && < 12",os:!0,"node:os":[">= 14.18 && < 15",">= 16"],path:!0,"node:path":[">= 14.18 && < 15",">= 16"],"path/posix":">= 15.3","node:path/posix":">= 16","path/win32":">= 15.3","node:path/win32":">= 16",perf_hooks:">= 8.5","node:perf_hooks":[">= 14.18 && < 15",">= 16"],process:">= 1","node:process":[">= 14.18 && < 15",">= 16"],punycode:">= 0.5","node:punycode":[">= 14.18 && < 15",">= 16"],querystring:!0,"node:querystring":[">= 14.18 && < 15",">= 16"],readline:!0,"node:readline":[">= 14.18 && < 15",">= 16"],"readline/promises":">= 17","node:readline/promises":">= 17",repl:!0,"node:repl":[">= 14.18 && < 15",">= 16"],"node:sea":[">= 20.12 && < 21",">= 21.7"],smalloc:">= 0.11.5 && < 3","node:sqlite":[">= 22.13 && < 23",">= 23.4"],_stream_duplex:">= 0.9.4","node:_stream_duplex":[">= 14.18 && < 15",">= 16"],_stream_transform:">= 0.9.4","node:_stream_transform":[">= 14.18 && < 15",">= 16"],_stream_wrap:">= 1.4.1","node:_stream_wrap":[">= 14.18 && < 15",">= 16"],_stream_passthrough:">= 0.9.4","node:_stream_passthrough":[">= 14.18 && < 15",">= 16"],_stream_readable:">= 0.9.4","node:_stream_readable":[">= 14.18 && < 15",">= 16"],_stream_writable:">= 0.9.4","node:_stream_writable":[">= 14.18 && < 15",">= 16"],stream:!0,"node:stream":[">= 14.18 && < 15",">= 16"],"stream/consumers":">= 16.7","node:stream/consumers":">= 16.7","stream/promises":">= 15","node:stream/promises":">= 16","stream/web":">= 16.5","node:stream/web":">= 16.5",string_decoder:!0,"node:string_decoder":[">= 14.18 && < 15",">= 16"],sys:[">= 0.4 && < 0.7",">= 0.8"],"node:sys":[">= 14.18 && < 15",">= 16"],"test/reporters":">= 19.9 && < 20.2","node:test/reporters":[">= 18.17 && < 19",">= 19.9",">= 20"],"test/mock_loader":">= 22.3 && < 22.7","node:test/mock_loader":">= 22.3 && < 22.7","node:test":[">= 16.17 && < 17",">= 18"],timers:!0,"node:timers":[">= 14.18 && < 15",">= 16"],"timers/promises":">= 15","node:timers/promises":">= 16",_tls_common:">= 0.11.13","node:_tls_common":[">= 14.18 && < 15",">= 16"],_tls_legacy:">= 0.11.3 && < 10",_tls_wrap:">= 0.11.3","node:_tls_wrap":[">= 14.18 && < 15",">= 16"],tls:!0,"node:tls":[">= 14.18 && < 15",">= 16"],trace_events:">= 10","node:trace_events":[">= 14.18 && < 15",">= 16"],tty:!0,"node:tty":[">= 14.18 && < 15",">= 16"],url:!0,"node:url":[">= 14.18 && < 15",">= 16"],util:!0,"node:util":[">= 14.18 && < 15",">= 16"],"util/types":">= 15.3","node:util/types":">= 16","v8/tools/arguments":">= 10 && < 12","v8/tools/codemap":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/consarray":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/csvparser":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/logreader":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/profile_view":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/splaytree":[">= 4.4 && < 5",">= 5.2 && < 12"],v8:">= 1","node:v8":[">= 14.18 && < 15",">= 16"],vm:!0,"node:vm":[">= 14.18 && < 15",">= 16"],wasi:[">= 13.4 && < 13.5",">= 18.17 && < 19",">= 20"],"node:wasi":[">= 18.17 && < 19",">= 20"],worker_threads:">= 11.7","node:worker_threads":[">= 14.18 && < 15",">= 16"],zlib:">= 0.5","node:zlib":[">= 14.18 && < 15",">= 16"]}});var QL=R((IyY,OgA)=>{var L_B=zgA();function q_B(A,Q){var B=A.split("."),Y=Q.split(" "),J=Y.length>1?Y[0]:"=",C=(Y.length>1?Y[1]:Y[0]).split(".");for(var X=0;X<3;++X){var G=parseInt(B[X]||0,10),F=parseInt(C[X]||0,10);if(G===F)continue;if(J==="<")return G=")return G>=F;return!1}return J===">="}function wgA(A,Q){var B=Q.split(/ ?&& ?/);if(B.length===0)return!1;for(var Y=0;Y"u"?process.versions&&process.versions.node:A;if(typeof B!=="string")throw TypeError(typeof A>"u"?"Unable to determine current node version":"If provided, a valid node version is required");if(Q&&typeof Q==="object"){for(var Y=0;Y{var aZ=u("fs"),z_B=Bp(),DY=u("path"),R_B=Yp(),w_B=Xp(),j_B=Gp(),O_B=QL(),P_B=process.platform!=="win32"&&aZ.realpath&&typeof aZ.realpath.native==="function"?aZ.realpath.native:aZ.realpath,PgA=z_B(),T_B=function(){return[DY.join(PgA,".node_modules"),DY.join(PgA,".node_libraries")]},S_B=function(Q,B){aZ.stat(Q,function(Y,J){if(!Y)return B(null,J.isFile()||J.isFIFO());if(Y.code==="ENOENT"||Y.code==="ENOTDIR")return B(null,!1);return B(Y)})},k_B=function(Q,B){aZ.stat(Q,function(Y,J){if(!Y)return B(null,J.isDirectory());if(Y.code==="ENOENT"||Y.code==="ENOTDIR")return B(null,!1);return B(Y)})},__B=function(Q,B){P_B(Q,function(Y,J){if(Y&&Y.code!=="ENOENT")B(Y);else B(null,Y?Q:J)})},BL=function(Q,B,Y,J){if(Y&&Y.preserveSymlinks===!1)Q(B,J);else J(null,B)},v_B=function(Q,B,Y){Q(B,function(J,C){if(J)Y(J);else try{var X=JSON.parse(C);Y(null,X)}catch(G){Y(null)}})},y_B=function(Q,B,Y){var J=w_B(B,Y,Q);for(var C=0;C{h_B.exports={assert:!0,"node:assert":[">= 14.18 && < 15",">= 16"],"assert/strict":">= 15","node:assert/strict":">= 16",async_hooks:">= 8","node:async_hooks":[">= 14.18 && < 15",">= 16"],buffer_ieee754:">= 0.5 && < 0.9.7",buffer:!0,"node:buffer":[">= 14.18 && < 15",">= 16"],child_process:!0,"node:child_process":[">= 14.18 && < 15",">= 16"],cluster:">= 0.5","node:cluster":[">= 14.18 && < 15",">= 16"],console:!0,"node:console":[">= 14.18 && < 15",">= 16"],constants:!0,"node:constants":[">= 14.18 && < 15",">= 16"],crypto:!0,"node:crypto":[">= 14.18 && < 15",">= 16"],_debug_agent:">= 1 && < 8",_debugger:"< 8",dgram:!0,"node:dgram":[">= 14.18 && < 15",">= 16"],diagnostics_channel:[">= 14.17 && < 15",">= 15.1"],"node:diagnostics_channel":[">= 14.18 && < 15",">= 16"],dns:!0,"node:dns":[">= 14.18 && < 15",">= 16"],"dns/promises":">= 15","node:dns/promises":">= 16",domain:">= 0.7.12","node:domain":[">= 14.18 && < 15",">= 16"],events:!0,"node:events":[">= 14.18 && < 15",">= 16"],freelist:"< 6",fs:!0,"node:fs":[">= 14.18 && < 15",">= 16"],"fs/promises":[">= 10 && < 10.1",">= 14"],"node:fs/promises":[">= 14.18 && < 15",">= 16"],_http_agent:">= 0.11.1","node:_http_agent":[">= 14.18 && < 15",">= 16"],_http_client:">= 0.11.1","node:_http_client":[">= 14.18 && < 15",">= 16"],_http_common:">= 0.11.1","node:_http_common":[">= 14.18 && < 15",">= 16"],_http_incoming:">= 0.11.1","node:_http_incoming":[">= 14.18 && < 15",">= 16"],_http_outgoing:">= 0.11.1","node:_http_outgoing":[">= 14.18 && < 15",">= 16"],_http_server:">= 0.11.1","node:_http_server":[">= 14.18 && < 15",">= 16"],http:!0,"node:http":[">= 14.18 && < 15",">= 16"],http2:">= 8.8","node:http2":[">= 14.18 && < 15",">= 16"],https:!0,"node:https":[">= 14.18 && < 15",">= 16"],inspector:">= 8","node:inspector":[">= 14.18 && < 15",">= 16"],"inspector/promises":[">= 19"],"node:inspector/promises":[">= 19"],_linklist:"< 8",module:!0,"node:module":[">= 14.18 && < 15",">= 16"],net:!0,"node:net":[">= 14.18 && < 15",">= 16"],"node-inspect/lib/_inspect":">= 7.6 && < 12","node-inspect/lib/internal/inspect_client":">= 7.6 && < 12","node-inspect/lib/internal/inspect_repl":">= 7.6 && < 12",os:!0,"node:os":[">= 14.18 && < 15",">= 16"],path:!0,"node:path":[">= 14.18 && < 15",">= 16"],"path/posix":">= 15.3","node:path/posix":">= 16","path/win32":">= 15.3","node:path/win32":">= 16",perf_hooks:">= 8.5","node:perf_hooks":[">= 14.18 && < 15",">= 16"],process:">= 1","node:process":[">= 14.18 && < 15",">= 16"],punycode:">= 0.5","node:punycode":[">= 14.18 && < 15",">= 16"],querystring:!0,"node:querystring":[">= 14.18 && < 15",">= 16"],readline:!0,"node:readline":[">= 14.18 && < 15",">= 16"],"readline/promises":">= 17","node:readline/promises":">= 17",repl:!0,"node:repl":[">= 14.18 && < 15",">= 16"],"node:sea":[">= 20.12 && < 21",">= 21.7"],smalloc:">= 0.11.5 && < 3","node:sqlite":">= 23.4",_stream_duplex:">= 0.9.4","node:_stream_duplex":[">= 14.18 && < 15",">= 16"],_stream_transform:">= 0.9.4","node:_stream_transform":[">= 14.18 && < 15",">= 16"],_stream_wrap:">= 1.4.1","node:_stream_wrap":[">= 14.18 && < 15",">= 16"],_stream_passthrough:">= 0.9.4","node:_stream_passthrough":[">= 14.18 && < 15",">= 16"],_stream_readable:">= 0.9.4","node:_stream_readable":[">= 14.18 && < 15",">= 16"],_stream_writable:">= 0.9.4","node:_stream_writable":[">= 14.18 && < 15",">= 16"],stream:!0,"node:stream":[">= 14.18 && < 15",">= 16"],"stream/consumers":">= 16.7","node:stream/consumers":">= 16.7","stream/promises":">= 15","node:stream/promises":">= 16","stream/web":">= 16.5","node:stream/web":">= 16.5",string_decoder:!0,"node:string_decoder":[">= 14.18 && < 15",">= 16"],sys:[">= 0.4 && < 0.7",">= 0.8"],"node:sys":[">= 14.18 && < 15",">= 16"],"test/reporters":">= 19.9 && < 20.2","node:test/reporters":[">= 18.17 && < 19",">= 19.9",">= 20"],"test/mock_loader":">= 22.3 && < 22.7","node:test/mock_loader":">= 22.3 && < 22.7","node:test":[">= 16.17 && < 17",">= 18"],timers:!0,"node:timers":[">= 14.18 && < 15",">= 16"],"timers/promises":">= 15","node:timers/promises":">= 16",_tls_common:">= 0.11.13","node:_tls_common":[">= 14.18 && < 15",">= 16"],_tls_legacy:">= 0.11.3 && < 10",_tls_wrap:">= 0.11.3","node:_tls_wrap":[">= 14.18 && < 15",">= 16"],tls:!0,"node:tls":[">= 14.18 && < 15",">= 16"],trace_events:">= 10","node:trace_events":[">= 14.18 && < 15",">= 16"],tty:!0,"node:tty":[">= 14.18 && < 15",">= 16"],url:!0,"node:url":[">= 14.18 && < 15",">= 16"],util:!0,"node:util":[">= 14.18 && < 15",">= 16"],"util/types":">= 15.3","node:util/types":">= 16","v8/tools/arguments":">= 10 && < 12","v8/tools/codemap":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/consarray":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/csvparser":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/logreader":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/profile_view":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/splaytree":[">= 4.4 && < 5",">= 5.2 && < 12"],v8:">= 1","node:v8":[">= 14.18 && < 15",">= 16"],vm:!0,"node:vm":[">= 14.18 && < 15",">= 16"],wasi:[">= 13.4 && < 13.5",">= 18.17 && < 19",">= 20"],"node:wasi":[">= 18.17 && < 19",">= 20"],worker_threads:">= 11.7","node:worker_threads":[">= 14.18 && < 15",">= 16"],zlib:">= 0.5","node:zlib":[">= 14.18 && < 15",">= 16"]}});var hgA=R((NyY,ygA)=>{var g_B=QL(),_gA=kgA(),vgA={};for(YL in _gA)if(Object.prototype.hasOwnProperty.call(_gA,YL))vgA[YL]=g_B(YL);var YL;ygA.exports=vgA});var xgA=R((LyY,ggA)=>{var x_B=QL();ggA.exports=function(Q){return x_B(Q)}});var mgA=R((qyY,bgA)=>{var f_B=QL(),oZ=u("fs"),TJ=u("path"),b_B=Bp(),m_B=Yp(),u_B=Xp(),d_B=Gp(),c_B=process.platform!=="win32"&&oZ.realpathSync&&typeof oZ.realpathSync.native==="function"?oZ.realpathSync.native:oZ.realpathSync,fgA=b_B(),l_B=function(){return[TJ.join(fgA,".node_modules"),TJ.join(fgA,".node_libraries")]},p_B=function(Q){try{var B=oZ.statSync(Q,{throwIfNoEntry:!1})}catch(Y){if(Y&&(Y.code==="ENOENT"||Y.code==="ENOTDIR"))return!1;throw Y}return!!B&&(B.isFile()||B.isFIFO())},i_B=function(Q){try{var B=oZ.statSync(Q,{throwIfNoEntry:!1})}catch(Y){if(Y&&(Y.code==="ENOENT"||Y.code==="ENOTDIR"))return!1;throw Y}return!!B&&B.isDirectory()},n_B=function(Q){try{return c_B(Q)}catch(B){if(B.code!=="ENOENT")throw B}return Q},JL=function(Q,B,Y){if(Y&&Y.preserveSymlinks===!1)return Q(B);return B},s_B=function(Q,B){var Y=Q(B);try{var J=JSON.parse(Y);return J}catch(C){}},r_B=function(Q,B,Y){var J=u_B(B,Y,Q);for(var C=0;C{var OO=SgA();OO.core=hgA();OO.isCore=xgA();OO.sync=mgA();ugA.exports=OO});var dgA=R((zyY,a_B)=>{a_B.exports={name:"require-in-the-middle",version:"7.5.2",description:"Module to hook into the Node.js require function",main:"index.js",types:"types/index.d.ts",dependencies:{debug:"^4.3.5","module-details-from-path":"^1.0.3",resolve:"^1.22.8"},devDependencies:{"@babel/core":"^7.9.0","@babel/preset-env":"^7.9.5","@babel/preset-typescript":"^7.9.0","@babel/register":"^7.9.0","ipp-printer":"^1.0.0",patterns:"^1.0.3",roundround:"^0.2.0",semver:"^6.3.0",standard:"^14.3.1",tape:"^4.11.0"},scripts:{test:"npm run test:lint && npm run test:tape && npm run test:babel","test:lint":"standard","test:tape":"tape test/*.js","test:babel":"node test/babel/babel-register.js"},repository:{type:"git",url:"git+https://github.com/nodejs/require-in-the-middle.git"},keywords:["require","hook","shim","shimmer","shimming","patch","monkey","monkeypatch","module","load"],files:["types"],author:"Thomas Watson Steen (https://twitter.com/wa7son)",license:"MIT",bugs:{url:"https://github.com/nodejs/require-in-the-middle/issues"},homepage:"https://github.com/nodejs/require-in-the-middle#readme",engines:{node:">=8.6.0"}}});var $p=R((RyY,Zp)=>{var YK=u("path"),eC=u("module"),WY=GgA()("require-in-the-middle"),o_B=Qp();Zp.exports=CL;Zp.exports.Hook=CL;var Wp,BK;if(eC.isBuiltin)BK=eC.isBuiltin;else if(eC.builtinModules)BK=(A)=>{if(A.startsWith("node:"))return!0;if(Wp===void 0)Wp=new Set(eC.builtinModules);return Wp.has(A)};else{let A=Fp(),[Q,B]=process.versions.node.split(".").map(Number);if(Q===8&&B<8)BK=(Y)=>{if(Y==="http2")return!0;return!!A.core[Y]};else BK=(Y)=>{return!!A.core[Y]}}var PO;function t_B(A,Q){if(!PO)if(u.resolve&&u.resolve.paths)PO=function(B,Y){return u.resolve(B,{paths:[Y]})};else{let B=Fp();PO=function(Y,J){return B.sync(Y,{basedir:J})}}return PO(A,Q)}var e_B=/([/\\]index)?(\.js)?$/;class cgA{constructor(){this._localCache=new Map,this._kRitmExports=Symbol("RitmExports")}has(A,Q){if(this._localCache.has(A))return!0;else if(!Q){let B=u.cache[A];return!!(B&&(this._kRitmExports in B))}else return!1}get(A,Q){let B=this._localCache.get(A);if(B!==void 0)return B;else if(!Q){let Y=u.cache[A];return Y&&Y[this._kRitmExports]}}set(A,Q,B){if(B)this._localCache.set(A,Q);else if(A in u.cache)u.cache[A][this._kRitmExports]=Q;else WY('non-core module is unexpectedly not in require.cache: "%s"',A),this._localCache.set(A,Q)}}function CL(A,Q,B){if(this instanceof CL===!1)return new CL(A,Q,B);if(typeof A==="function")B=A,A=null,Q=null;else if(typeof Q==="function")B=Q,Q=null;if(typeof eC._resolveFilename!=="function"){console.error("Error: Expected Module._resolveFilename to be a function (was: %s) - aborting!",typeof eC._resolveFilename),console.error("Please report this error as an issue related to Node.js %s at %s",process.version,dgA().bugs.url);return}this._cache=new cgA,this._unhooked=!1,this._origRequire=eC.prototype.require;let Y=this,J=new Set,C=Q?Q.internals===!0:!1,X=Array.isArray(A);if(WY("registering require hook"),this._require=eC.prototype.require=function(F){if(Y._unhooked===!0)return WY("ignoring require call - module is soft-unhooked"),Y._origRequire.apply(this,arguments);return G.call(this,arguments,!1)},typeof process.getBuiltinModule==="function")this._origGetBuiltinModule=process.getBuiltinModule,this._getBuiltinModule=process.getBuiltinModule=function(F){if(Y._unhooked===!0)return WY("ignoring process.getBuiltinModule call - module is soft-unhooked"),Y._origGetBuiltinModule.apply(this,arguments);return G.call(this,arguments,!0)};function G(F,W){let Z=F[0],U=BK(Z),$;if(U){if($=Z,Z.startsWith("node:")){let D=Z.slice(5);if(BK(D))$=D}}else if(W)return WY("call to process.getBuiltinModule with unknown built-in id"),Y._origGetBuiltinModule.apply(this,F);else try{$=eC._resolveFilename(Z,this)}catch(D){return WY('Module._resolveFilename("%s") threw %j, calling original Module.require',Z,D.message),Y._origRequire.apply(this,F)}let E,K;if(WY("processing %s module require('%s'): %s",U===!0?"core":"non-core",Z,$),Y._cache.has($,U)===!0)return WY("returning already patched cached module: %s",$),Y._cache.get($,U);let I=J.has($);if(I===!1)J.add($);let V=W?Y._origGetBuiltinModule.apply(this,F):Y._origRequire.apply(this,F);if(I===!0)return WY("module is in the process of being patched already - ignoring: %s",$),V;if(J.delete($),U===!0){if(X===!0&&A.includes($)===!1)return WY("ignoring core module not on whitelist: %s",$),V;E=$}else if(X===!0&&A.includes($)){let D=YK.parse($);E=D.name,K=D.dir}else{let D=o_B($);if(D===void 0)return WY("could not parse filename: %s",$),V;E=D.name,K=D.basedir;let L=AvB(D);WY("resolved filename to module: %s (id: %s, resolved: %s, basedir: %s)",E,Z,L,K);let z=!1;if(X){if(!Z.startsWith(".")&&A.includes(Z))E=Z,z=!0;if(!A.includes(E)&&!A.includes(L))return V;if(A.includes(L)&&L!==E)E=L,z=!0}if(!z){let M;try{M=t_B(E,K)}catch(N){return WY("could not resolve module: %s",E),Y._cache.set($,V,U),V}if(M!==$)if(C===!0)E=E+YK.sep+YK.relative(K,$),WY("preparing to process require of internal file: %s",E);else return WY("ignoring require of non-main module file: %s",M),Y._cache.set($,V,U),V}}Y._cache.set($,V,U),WY("calling require hook: %s",E);let H=B(V,E,K);return Y._cache.set($,H,U),WY("returning module: %s",E),H}}CL.prototype.unhook=function(){if(this._unhooked=!0,this._require===eC.prototype.require)eC.prototype.require=this._origRequire,WY("require unhook successful");else WY("require unhook unsuccessful");if(process.getBuiltinModule!==void 0)if(this._getBuiltinModule===process.getBuiltinModule)process.getBuiltinModule=this._origGetBuiltinModule,WY("process.getBuiltinModule unhook successful");else WY("process.getBuiltinModule unhook unsuccessful")};function AvB(A){let Q=YK.sep!=="/"?A.path.split(YK.sep).join("/"):A.path;return YK.posix.join(A.name,Q).replace(e_B,"")}});var ngA=R((pgA)=>{Object.defineProperty(pgA,"__esModule",{value:!0});pgA.ModuleNameTrie=pgA.ModuleNameSeparator=void 0;pgA.ModuleNameSeparator="/";class Up{constructor(){this.hooks=[],this.children=new Map}}class lgA{constructor(){this._trie=new Up,this._counter=0}insert(A){let Q=this._trie;for(let B of A.moduleName.split(pgA.ModuleNameSeparator)){let Y=Q.children.get(B);if(!Y)Y=new Up,Q.children.set(B,Y);Q=Y}Q.hooks.push({hook:A,insertedId:this._counter++})}search(A,{maintainInsertionOrder:Q,fullOnly:B}={}){let Y=this._trie,J=[],C=!0;for(let X of A.split(pgA.ModuleNameSeparator)){let G=Y.children.get(X);if(!G){C=!1;break}if(!B)J.push(...G.hooks);Y=G}if(B&&C)J.push(...Y.hooks);if(J.length===0)return[];if(J.length===1)return[J[0].hook];if(Q)J.sort((X,G)=>X.insertedId-G.insertedId);return J.map(({hook:X})=>X)}}pgA.ModuleNameTrie=lgA});var ogA=R((rgA)=>{Object.defineProperty(rgA,"__esModule",{value:!0});rgA.RequireInTheMiddleSingleton=void 0;var QvB=$p(),sgA=u("path"),Kp=ngA(),BvB=["afterEach","after","beforeEach","before","describe","it"].every((A)=>{return typeof global[A]==="function"});class TO{constructor(){this._moduleNameTrie=new Kp.ModuleNameTrie,this._initialize()}_initialize(){new QvB.Hook(null,{internals:!0},(A,Q,B)=>{let Y=YvB(Q),J=this._moduleNameTrie.search(Y,{maintainInsertionOrder:!0,fullOnly:B===void 0});for(let{onRequire:C}of J)A=C(A,Q,B);return A})}register(A,Q){let B={moduleName:A,onRequire:Q};return this._moduleNameTrie.insert(B),B}static getInstance(){var A;if(BvB)return new TO;return this._instance=(A=this._instance)!==null&&A!==void 0?A:new TO}}rgA.RequireInTheMiddleSingleton=TO;function YvB(A){return sgA.sep!==Kp.ModuleNameSeparator?A.split(sgA.sep).join(Kp.ModuleNameSeparator):A}});var BxA=R((XvB)=>{var tgA=[],Vp=new WeakMap,egA=new WeakMap,AxA=new Map,QxA=[],JvB={set(A,Q,B){return Vp.get(A)[Q](B)},get(A,Q){if(Q===Symbol.toStringTag)return"Module";let B=egA.get(A)[Q];if(typeof B==="function")return B()},defineProperty(A,Q,B){if(!("value"in B))throw Error("Getters/setters are not supported for exports property descriptors.");return Vp.get(A)[Q](B.value)}};function CvB(A,Q,B,Y,J){AxA.set(A,J),Vp.set(Q,B),egA.set(Q,Y);let C=new Proxy(Q,JvB);tgA.forEach((X)=>X(A,C)),QxA.push([A,C])}XvB.register=CvB;XvB.importHooks=tgA;XvB.specifiers=AxA;XvB.toHook=QxA});var Dp=R((TyY,JK)=>{var YxA=u("path"),$vB=Qp(),{fileURLToPath:JxA}=u("url"),{MessageChannel:UvB}=u("worker_threads"),{importHooks:Ip,specifiers:EvB,toHook:KvB}=BxA();function XxA(A){Ip.push(A),KvB.forEach(([Q,B])=>A(Q,B))}function GxA(A){let Q=Ip.indexOf(A);if(Q>-1)Ip.splice(Q,1)}function CxA(A,Q,B,Y){let J=A(Q,B,Y);if(J&&J!==Q)Q.default=J}var Hp;function VvB(){let{port1:A,port2:Q}=new UvB,B=0,Y;Hp=(G)=>{B++,A.postMessage(G)},A.on("message",()=>{if(B--,Y&&B<=0)Y()}).unref();function J(){let G=setInterval(()=>{},1000),F=new Promise((W)=>{Y=W}).then(()=>{clearInterval(G)});if(B===0)Y();return F}let C=Q;return{registerOptions:{data:{addHookMessagePort:C,include:[]},transferList:[C]},addHookMessagePort:C,waitForAllMessagesAcknowledged:J}}function XL(A,Q,B){if(this instanceof XL===!1)return new XL(A,Q,B);if(typeof A==="function")B=A,A=null,Q=null;else if(typeof Q==="function")B=Q,Q=null;let Y=Q?Q.internals===!0:!1;if(Hp&&Array.isArray(A))Hp(A);this._iitmHook=(J,C)=>{let X=J,G=J.startsWith("node:"),F;if(G)J=J.replace(/^node:/,"");else{if(J.startsWith("file://"))try{J=JxA(J)}catch(Z){}let W=$vB(J);if(W)J=W.name,F=W.basedir}if(A){for(let W of A)if(W===J){if(F){if(Y)J=J+YxA.sep+YxA.relative(F,JxA(X));else if(!F.endsWith(EvB.get(X)))continue}CxA(B,C,J,F)}}else CxA(B,C,J,F)},XxA(this._iitmHook)}XL.prototype.unhook=function(){GxA(this._iitmHook)};JK.exports=XL;JK.exports.Hook=XL;JK.exports.addHook=XxA;JK.exports.removeHook=GxA;JK.exports.createAddHookMessageChannel=VvB});var Np=R((FxA)=>{Object.defineProperty(FxA,"__esModule",{value:!0});FxA.isWrapped=FxA.safeExecuteInTheMiddleAsync=FxA.safeExecuteInTheMiddle=void 0;function IvB(A,Q,B){let Y,J;try{J=A()}catch(C){Y=C}finally{if(Q(Y,J),Y&&!B)throw Y;return J}}FxA.safeExecuteInTheMiddle=IvB;async function HvB(A,Q,B){let Y,J;try{J=await A()}catch(C){Y=C}finally{if(Q(Y,J),Y&&!B)throw Y;return J}}FxA.safeExecuteInTheMiddleAsync=HvB;function DvB(A){return typeof A==="function"&&typeof A.__original==="function"&&typeof A.__unwrap==="function"&&A.__wrapped===!0}FxA.isWrapped=DvB});var VxA=R((ExA)=>{Object.defineProperty(ExA,"__esModule",{value:!0});ExA.InstrumentationBase=void 0;var GL=u("path"),ZxA=u("util"),qvB=mhA(),Lp=rl(),MvB=nhA(),zvB=ogA(),RvB=Dp(),FL=yA(),wvB=$p(),jvB=u("fs"),OvB=Np();class UxA extends MvB.InstrumentationAbstract{constructor(A,Q,B){super(A,Q,B);this._hooks=[],this._requireInTheMiddleSingleton=zvB.RequireInTheMiddleSingleton.getInstance(),this._enabled=!1,this._wrap=(J,C,X)=>{if((0,OvB.isWrapped)(J[C]))this._unwrap(J,C);if(!ZxA.types.isProxy(J))return(0,Lp.wrap)(J,C,X);else{let G=(0,Lp.wrap)(Object.assign({},J),C,X);return Object.defineProperty(J,C,{value:G}),G}},this._unwrap=(J,C)=>{if(!ZxA.types.isProxy(J))return(0,Lp.unwrap)(J,C);else return Object.defineProperty(J,C,{value:J[C]})},this._massWrap=(J,C,X)=>{if(!J){FL.diag.error("must provide one or more modules to patch");return}else if(!Array.isArray(J))J=[J];if(!(C&&Array.isArray(C))){FL.diag.error("must provide one or more functions to wrap on modules");return}J.forEach((G)=>{C.forEach((F)=>{this._wrap(G,F,X)})})},this._massUnwrap=(J,C)=>{if(!J){FL.diag.error("must provide one or more modules to patch");return}else if(!Array.isArray(J))J=[J];if(!(C&&Array.isArray(C))){FL.diag.error("must provide one or more functions to wrap on modules");return}J.forEach((X)=>{C.forEach((G)=>{this._unwrap(X,G)})})};let Y=this.init();if(Y&&!Array.isArray(Y))Y=[Y];if(this._modules=Y||[],this._config.enabled)this.enable()}_warnOnPreloadedModules(){this._modules.forEach((A)=>{let{name:Q}=A;try{let B=u.resolve(Q);if(u.cache[B])this._diag.warn(`Module ${Q} has been loaded before ${this.instrumentationName} so it might not work, please initialize it before requiring ${Q}`)}catch(B){}})}_extractPackageVersion(A){try{let Q=(0,jvB.readFileSync)(GL.join(A,"package.json"),{encoding:"utf8"}),B=JSON.parse(Q).version;return typeof B==="string"?B:void 0}catch(Q){FL.diag.warn("Failed extracting version",A)}return}_onRequire(A,Q,B,Y){var J;if(!Y){if(typeof A.patch==="function"){if(A.moduleExports=Q,this._enabled)return this._diag.debug("Applying instrumentation patch for nodejs core module on require hook",{module:A.name}),A.patch(Q)}return Q}let C=this._extractPackageVersion(Y);if(A.moduleVersion=C,A.name===B){if($xA(A.supportedVersions,C,A.includePrerelease)){if(typeof A.patch==="function"){if(A.moduleExports=Q,this._enabled)return this._diag.debug("Applying instrumentation patch for module on require hook",{module:A.name,version:A.moduleVersion,baseDir:Y}),A.patch(Q,A.moduleVersion)}}return Q}let X=(J=A.files)!==null&&J!==void 0?J:[],G=GL.normalize(B);return X.filter((W)=>W.name===G).filter((W)=>$xA(W.supportedVersions,C,A.includePrerelease)).reduce((W,Z)=>{if(Z.moduleExports=W,this._enabled)return this._diag.debug("Applying instrumentation patch for nodejs module file on require hook",{module:A.name,version:A.moduleVersion,fileName:Z.name,baseDir:Y}),Z.patch(W,A.moduleVersion);return W},Q)}enable(){if(this._enabled)return;if(this._enabled=!0,this._hooks.length>0){for(let A of this._modules){if(typeof A.patch==="function"&&A.moduleExports)this._diag.debug("Applying instrumentation patch for nodejs module on instrumentation enabled",{module:A.name,version:A.moduleVersion}),A.patch(A.moduleExports,A.moduleVersion);for(let Q of A.files)if(Q.moduleExports)this._diag.debug("Applying instrumentation patch for nodejs module file on instrumentation enabled",{module:A.name,version:A.moduleVersion,fileName:Q.name}),Q.patch(Q.moduleExports,A.moduleVersion)}return}this._warnOnPreloadedModules();for(let A of this._modules){let Q=(C,X,G)=>{if(!G&&GL.isAbsolute(X)){let F=GL.parse(X);X=F.name,G=F.dir}return this._onRequire(A,C,X,G)},B=(C,X,G)=>{return this._onRequire(A,C,X,G)},Y=GL.isAbsolute(A.name)?new wvB.Hook([A.name],{internals:!0},B):this._requireInTheMiddleSingleton.register(A.name,B);this._hooks.push(Y);let J=new RvB.Hook([A.name],{internals:!1},Q);this._hooks.push(J)}}disable(){if(!this._enabled)return;this._enabled=!1;for(let A of this._modules){if(typeof A.unpatch==="function"&&A.moduleExports)this._diag.debug("Removing instrumentation patch for nodejs module on instrumentation disabled",{module:A.name,version:A.moduleVersion}),A.unpatch(A.moduleExports,A.moduleVersion);for(let Q of A.files)if(Q.moduleExports)this._diag.debug("Removing instrumentation patch for nodejs module file on instrumentation disabled",{module:A.name,version:A.moduleVersion,fileName:Q.name}),Q.unpatch(Q.moduleExports,A.moduleVersion)}}isEnabled(){return this._enabled}}ExA.InstrumentationBase=UxA;function $xA(A,Q,B){if(typeof Q>"u")return A.includes("*");return A.some((Y)=>{return(0,qvB.satisfies)(Q,Y,{includePrerelease:B})})}});var IxA=R((qp)=>{Object.defineProperty(qp,"__esModule",{value:!0});qp.normalize=void 0;var PvB=u("path");Object.defineProperty(qp,"normalize",{enumerable:!0,get:function(){return PvB.normalize}})});var HxA=R((SO)=>{Object.defineProperty(SO,"__esModule",{value:!0});SO.normalize=SO.InstrumentationBase=void 0;var SvB=VxA();Object.defineProperty(SO,"InstrumentationBase",{enumerable:!0,get:function(){return SvB.InstrumentationBase}});var kvB=IxA();Object.defineProperty(SO,"normalize",{enumerable:!0,get:function(){return kvB.normalize}})});var Mp=R((kO)=>{Object.defineProperty(kO,"__esModule",{value:!0});kO.normalize=kO.InstrumentationBase=void 0;var DxA=HxA();Object.defineProperty(kO,"InstrumentationBase",{enumerable:!0,get:function(){return DxA.InstrumentationBase}});Object.defineProperty(kO,"normalize",{enumerable:!0,get:function(){return DxA.normalize}})});var MxA=R((LxA)=>{Object.defineProperty(LxA,"__esModule",{value:!0});LxA.InstrumentationNodeModuleDefinition=void 0;class NxA{constructor(A,Q,B,Y,J){this.name=A,this.supportedVersions=Q,this.patch=B,this.unpatch=Y,this.files=J||[]}}LxA.InstrumentationNodeModuleDefinition=NxA});var jxA=R((RxA)=>{Object.defineProperty(RxA,"__esModule",{value:!0});RxA.InstrumentationNodeModuleFile=void 0;var yvB=Mp();class zxA{constructor(A,Q,B,Y){this.supportedVersions=Q,this.patch=B,this.unpatch=Y,this.name=(0,yvB.normalize)(A)}}RxA.InstrumentationNodeModuleFile=zxA});var NB=R((QG)=>{Object.defineProperty(QG,"__esModule",{value:!0});QG.safeExecuteInTheMiddleAsync=QG.safeExecuteInTheMiddle=QG.isWrapped=QG.InstrumentationNodeModuleFile=QG.InstrumentationNodeModuleDefinition=QG.InstrumentationBase=QG.registerInstrumentations=void 0;var hvB=svA();Object.defineProperty(QG,"registerInstrumentations",{enumerable:!0,get:function(){return hvB.registerInstrumentations}});var gvB=Mp();Object.defineProperty(QG,"InstrumentationBase",{enumerable:!0,get:function(){return gvB.InstrumentationBase}});var xvB=MxA();Object.defineProperty(QG,"InstrumentationNodeModuleDefinition",{enumerable:!0,get:function(){return xvB.InstrumentationNodeModuleDefinition}});var fvB=jxA();Object.defineProperty(QG,"InstrumentationNodeModuleFile",{enumerable:!0,get:function(){return fvB.InstrumentationNodeModuleFile}});var zp=Np();Object.defineProperty(QG,"isWrapped",{enumerable:!0,get:function(){return zp.isWrapped}});Object.defineProperty(QG,"safeExecuteInTheMiddle",{enumerable:!0,get:function(){return zp.safeExecuteInTheMiddle}});Object.defineProperty(QG,"safeExecuteInTheMiddleAsync",{enumerable:!0,get:function(){return zp.safeExecuteInTheMiddleAsync}})});var Rp=R((OxA)=>{Object.defineProperty(OxA,"__esModule",{value:!0});OxA.createConstMap=void 0;function mvB(A){let Q={},B=A.length;for(let Y=0;Y{Object.defineProperty(DdA,"__esModule",{value:!0});DdA.SEMATTRS_NET_HOST_CARRIER_ICC=DdA.SEMATTRS_NET_HOST_CARRIER_MNC=DdA.SEMATTRS_NET_HOST_CARRIER_MCC=DdA.SEMATTRS_NET_HOST_CARRIER_NAME=DdA.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=DdA.SEMATTRS_NET_HOST_CONNECTION_TYPE=DdA.SEMATTRS_NET_HOST_NAME=DdA.SEMATTRS_NET_HOST_PORT=DdA.SEMATTRS_NET_HOST_IP=DdA.SEMATTRS_NET_PEER_NAME=DdA.SEMATTRS_NET_PEER_PORT=DdA.SEMATTRS_NET_PEER_IP=DdA.SEMATTRS_NET_TRANSPORT=DdA.SEMATTRS_FAAS_INVOKED_REGION=DdA.SEMATTRS_FAAS_INVOKED_PROVIDER=DdA.SEMATTRS_FAAS_INVOKED_NAME=DdA.SEMATTRS_FAAS_COLDSTART=DdA.SEMATTRS_FAAS_CRON=DdA.SEMATTRS_FAAS_TIME=DdA.SEMATTRS_FAAS_DOCUMENT_NAME=DdA.SEMATTRS_FAAS_DOCUMENT_TIME=DdA.SEMATTRS_FAAS_DOCUMENT_OPERATION=DdA.SEMATTRS_FAAS_DOCUMENT_COLLECTION=DdA.SEMATTRS_FAAS_EXECUTION=DdA.SEMATTRS_FAAS_TRIGGER=DdA.SEMATTRS_EXCEPTION_ESCAPED=DdA.SEMATTRS_EXCEPTION_STACKTRACE=DdA.SEMATTRS_EXCEPTION_MESSAGE=DdA.SEMATTRS_EXCEPTION_TYPE=DdA.SEMATTRS_DB_SQL_TABLE=DdA.SEMATTRS_DB_MONGODB_COLLECTION=DdA.SEMATTRS_DB_REDIS_DATABASE_INDEX=DdA.SEMATTRS_DB_HBASE_NAMESPACE=DdA.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=DdA.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=DdA.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=DdA.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=DdA.SEMATTRS_DB_CASSANDRA_TABLE=DdA.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=DdA.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=DdA.SEMATTRS_DB_CASSANDRA_KEYSPACE=DdA.SEMATTRS_DB_MSSQL_INSTANCE_NAME=DdA.SEMATTRS_DB_OPERATION=DdA.SEMATTRS_DB_STATEMENT=DdA.SEMATTRS_DB_NAME=DdA.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=DdA.SEMATTRS_DB_USER=DdA.SEMATTRS_DB_CONNECTION_STRING=DdA.SEMATTRS_DB_SYSTEM=DdA.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=void 0;DdA.SEMATTRS_MESSAGING_DESTINATION_KIND=DdA.SEMATTRS_MESSAGING_DESTINATION=DdA.SEMATTRS_MESSAGING_SYSTEM=DdA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=DdA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=DdA.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=DdA.SEMATTRS_AWS_DYNAMODB_COUNT=DdA.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=DdA.SEMATTRS_AWS_DYNAMODB_SEGMENT=DdA.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=DdA.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=DdA.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=DdA.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=DdA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=DdA.SEMATTRS_AWS_DYNAMODB_SELECT=DdA.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=DdA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=DdA.SEMATTRS_AWS_DYNAMODB_LIMIT=DdA.SEMATTRS_AWS_DYNAMODB_PROJECTION=DdA.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=DdA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=DdA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=DdA.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=DdA.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=DdA.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=DdA.SEMATTRS_HTTP_CLIENT_IP=DdA.SEMATTRS_HTTP_ROUTE=DdA.SEMATTRS_HTTP_SERVER_NAME=DdA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=DdA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=DdA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=DdA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=DdA.SEMATTRS_HTTP_USER_AGENT=DdA.SEMATTRS_HTTP_FLAVOR=DdA.SEMATTRS_HTTP_STATUS_CODE=DdA.SEMATTRS_HTTP_SCHEME=DdA.SEMATTRS_HTTP_HOST=DdA.SEMATTRS_HTTP_TARGET=DdA.SEMATTRS_HTTP_URL=DdA.SEMATTRS_HTTP_METHOD=DdA.SEMATTRS_CODE_LINENO=DdA.SEMATTRS_CODE_FILEPATH=DdA.SEMATTRS_CODE_NAMESPACE=DdA.SEMATTRS_CODE_FUNCTION=DdA.SEMATTRS_THREAD_NAME=DdA.SEMATTRS_THREAD_ID=DdA.SEMATTRS_ENDUSER_SCOPE=DdA.SEMATTRS_ENDUSER_ROLE=DdA.SEMATTRS_ENDUSER_ID=DdA.SEMATTRS_PEER_SERVICE=void 0;DdA.DBSYSTEMVALUES_FILEMAKER=DdA.DBSYSTEMVALUES_DERBY=DdA.DBSYSTEMVALUES_FIREBIRD=DdA.DBSYSTEMVALUES_ADABAS=DdA.DBSYSTEMVALUES_CACHE=DdA.DBSYSTEMVALUES_EDB=DdA.DBSYSTEMVALUES_FIRSTSQL=DdA.DBSYSTEMVALUES_INGRES=DdA.DBSYSTEMVALUES_HANADB=DdA.DBSYSTEMVALUES_MAXDB=DdA.DBSYSTEMVALUES_PROGRESS=DdA.DBSYSTEMVALUES_HSQLDB=DdA.DBSYSTEMVALUES_CLOUDSCAPE=DdA.DBSYSTEMVALUES_HIVE=DdA.DBSYSTEMVALUES_REDSHIFT=DdA.DBSYSTEMVALUES_POSTGRESQL=DdA.DBSYSTEMVALUES_DB2=DdA.DBSYSTEMVALUES_ORACLE=DdA.DBSYSTEMVALUES_MYSQL=DdA.DBSYSTEMVALUES_MSSQL=DdA.DBSYSTEMVALUES_OTHER_SQL=DdA.SemanticAttributes=DdA.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=DdA.SEMATTRS_MESSAGE_COMPRESSED_SIZE=DdA.SEMATTRS_MESSAGE_ID=DdA.SEMATTRS_MESSAGE_TYPE=DdA.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=DdA.SEMATTRS_RPC_JSONRPC_ERROR_CODE=DdA.SEMATTRS_RPC_JSONRPC_REQUEST_ID=DdA.SEMATTRS_RPC_JSONRPC_VERSION=DdA.SEMATTRS_RPC_GRPC_STATUS_CODE=DdA.SEMATTRS_RPC_METHOD=DdA.SEMATTRS_RPC_SERVICE=DdA.SEMATTRS_RPC_SYSTEM=DdA.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=DdA.SEMATTRS_MESSAGING_KAFKA_PARTITION=DdA.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=DdA.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=DdA.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=DdA.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=DdA.SEMATTRS_MESSAGING_CONSUMER_ID=DdA.SEMATTRS_MESSAGING_OPERATION=DdA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=DdA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=DdA.SEMATTRS_MESSAGING_CONVERSATION_ID=DdA.SEMATTRS_MESSAGING_MESSAGE_ID=DdA.SEMATTRS_MESSAGING_URL=DdA.SEMATTRS_MESSAGING_PROTOCOL_VERSION=DdA.SEMATTRS_MESSAGING_PROTOCOL=DdA.SEMATTRS_MESSAGING_TEMP_DESTINATION=void 0;DdA.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=DdA.FaasDocumentOperationValues=DdA.FAASDOCUMENTOPERATIONVALUES_DELETE=DdA.FAASDOCUMENTOPERATIONVALUES_EDIT=DdA.FAASDOCUMENTOPERATIONVALUES_INSERT=DdA.FaasTriggerValues=DdA.FAASTRIGGERVALUES_OTHER=DdA.FAASTRIGGERVALUES_TIMER=DdA.FAASTRIGGERVALUES_PUBSUB=DdA.FAASTRIGGERVALUES_HTTP=DdA.FAASTRIGGERVALUES_DATASOURCE=DdA.DbCassandraConsistencyLevelValues=DdA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=DdA.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=DdA.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=DdA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=DdA.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=DdA.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=DdA.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=DdA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=DdA.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=DdA.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=DdA.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=DdA.DbSystemValues=DdA.DBSYSTEMVALUES_COCKROACHDB=DdA.DBSYSTEMVALUES_MEMCACHED=DdA.DBSYSTEMVALUES_ELASTICSEARCH=DdA.DBSYSTEMVALUES_GEODE=DdA.DBSYSTEMVALUES_NEO4J=DdA.DBSYSTEMVALUES_DYNAMODB=DdA.DBSYSTEMVALUES_COSMOSDB=DdA.DBSYSTEMVALUES_COUCHDB=DdA.DBSYSTEMVALUES_COUCHBASE=DdA.DBSYSTEMVALUES_REDIS=DdA.DBSYSTEMVALUES_MONGODB=DdA.DBSYSTEMVALUES_HBASE=DdA.DBSYSTEMVALUES_CASSANDRA=DdA.DBSYSTEMVALUES_COLDFUSION=DdA.DBSYSTEMVALUES_H2=DdA.DBSYSTEMVALUES_VERTICA=DdA.DBSYSTEMVALUES_TERADATA=DdA.DBSYSTEMVALUES_SYBASE=DdA.DBSYSTEMVALUES_SQLITE=DdA.DBSYSTEMVALUES_POINTBASE=DdA.DBSYSTEMVALUES_PERVASIVE=DdA.DBSYSTEMVALUES_NETEZZA=DdA.DBSYSTEMVALUES_MARIADB=DdA.DBSYSTEMVALUES_INTERBASE=DdA.DBSYSTEMVALUES_INSTANTDB=DdA.DBSYSTEMVALUES_INFORMIX=void 0;DdA.MESSAGINGOPERATIONVALUES_RECEIVE=DdA.MessagingDestinationKindValues=DdA.MESSAGINGDESTINATIONKINDVALUES_TOPIC=DdA.MESSAGINGDESTINATIONKINDVALUES_QUEUE=DdA.HttpFlavorValues=DdA.HTTPFLAVORVALUES_QUIC=DdA.HTTPFLAVORVALUES_SPDY=DdA.HTTPFLAVORVALUES_HTTP_2_0=DdA.HTTPFLAVORVALUES_HTTP_1_1=DdA.HTTPFLAVORVALUES_HTTP_1_0=DdA.NetHostConnectionSubtypeValues=DdA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=DdA.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=DdA.NETHOSTCONNECTIONSUBTYPEVALUES_NR=DdA.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=DdA.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=DdA.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=DdA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=DdA.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=DdA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=DdA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=DdA.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=DdA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=DdA.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=DdA.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=DdA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=DdA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=DdA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=DdA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=DdA.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=DdA.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=DdA.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=DdA.NetHostConnectionTypeValues=DdA.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=DdA.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=DdA.NETHOSTCONNECTIONTYPEVALUES_CELL=DdA.NETHOSTCONNECTIONTYPEVALUES_WIRED=DdA.NETHOSTCONNECTIONTYPEVALUES_WIFI=DdA.NetTransportValues=DdA.NETTRANSPORTVALUES_OTHER=DdA.NETTRANSPORTVALUES_INPROC=DdA.NETTRANSPORTVALUES_PIPE=DdA.NETTRANSPORTVALUES_UNIX=DdA.NETTRANSPORTVALUES_IP=DdA.NETTRANSPORTVALUES_IP_UDP=DdA.NETTRANSPORTVALUES_IP_TCP=DdA.FaasInvokedProviderValues=DdA.FAASINVOKEDPROVIDERVALUES_GCP=DdA.FAASINVOKEDPROVIDERVALUES_AZURE=DdA.FAASINVOKEDPROVIDERVALUES_AWS=void 0;DdA.MessageTypeValues=DdA.MESSAGETYPEVALUES_RECEIVED=DdA.MESSAGETYPEVALUES_SENT=DdA.RpcGrpcStatusCodeValues=DdA.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=DdA.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=DdA.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=DdA.RPCGRPCSTATUSCODEVALUES_INTERNAL=DdA.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=DdA.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=DdA.RPCGRPCSTATUSCODEVALUES_ABORTED=DdA.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=DdA.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=DdA.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=DdA.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=DdA.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=DdA.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=DdA.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=DdA.RPCGRPCSTATUSCODEVALUES_UNKNOWN=DdA.RPCGRPCSTATUSCODEVALUES_CANCELLED=DdA.RPCGRPCSTATUSCODEVALUES_OK=DdA.MessagingOperationValues=DdA.MESSAGINGOPERATIONVALUES_PROCESS=void 0;var y5=Rp(),TxA="aws.lambda.invoked_arn",SxA="db.system",kxA="db.connection_string",_xA="db.user",vxA="db.jdbc.driver_classname",yxA="db.name",hxA="db.statement",gxA="db.operation",xxA="db.mssql.instance_name",fxA="db.cassandra.keyspace",bxA="db.cassandra.page_size",mxA="db.cassandra.consistency_level",uxA="db.cassandra.table",dxA="db.cassandra.idempotence",cxA="db.cassandra.speculative_execution_count",lxA="db.cassandra.coordinator.id",pxA="db.cassandra.coordinator.dc",ixA="db.hbase.namespace",nxA="db.redis.database_index",sxA="db.mongodb.collection",rxA="db.sql.table",axA="exception.type",oxA="exception.message",txA="exception.stacktrace",exA="exception.escaped",AfA="faas.trigger",QfA="faas.execution",BfA="faas.document.collection",YfA="faas.document.operation",JfA="faas.document.time",CfA="faas.document.name",XfA="faas.time",GfA="faas.cron",FfA="faas.coldstart",WfA="faas.invoked_name",ZfA="faas.invoked_provider",$fA="faas.invoked_region",UfA="net.transport",EfA="net.peer.ip",KfA="net.peer.port",VfA="net.peer.name",IfA="net.host.ip",HfA="net.host.port",DfA="net.host.name",NfA="net.host.connection.type",LfA="net.host.connection.subtype",qfA="net.host.carrier.name",MfA="net.host.carrier.mcc",zfA="net.host.carrier.mnc",RfA="net.host.carrier.icc",wfA="peer.service",jfA="enduser.id",OfA="enduser.role",PfA="enduser.scope",TfA="thread.id",SfA="thread.name",kfA="code.function",_fA="code.namespace",vfA="code.filepath",yfA="code.lineno",hfA="http.method",gfA="http.url",xfA="http.target",ffA="http.host",bfA="http.scheme",mfA="http.status_code",ufA="http.flavor",dfA="http.user_agent",cfA="http.request_content_length",lfA="http.request_content_length_uncompressed",pfA="http.response_content_length",ifA="http.response_content_length_uncompressed",nfA="http.server_name",sfA="http.route",rfA="http.client_ip",afA="aws.dynamodb.table_names",ofA="aws.dynamodb.consumed_capacity",tfA="aws.dynamodb.item_collection_metrics",efA="aws.dynamodb.provisioned_read_capacity",AbA="aws.dynamodb.provisioned_write_capacity",QbA="aws.dynamodb.consistent_read",BbA="aws.dynamodb.projection",YbA="aws.dynamodb.limit",JbA="aws.dynamodb.attributes_to_get",CbA="aws.dynamodb.index_name",XbA="aws.dynamodb.select",GbA="aws.dynamodb.global_secondary_indexes",FbA="aws.dynamodb.local_secondary_indexes",WbA="aws.dynamodb.exclusive_start_table",ZbA="aws.dynamodb.table_count",$bA="aws.dynamodb.scan_forward",UbA="aws.dynamodb.segment",EbA="aws.dynamodb.total_segments",KbA="aws.dynamodb.count",VbA="aws.dynamodb.scanned_count",IbA="aws.dynamodb.attribute_definitions",HbA="aws.dynamodb.global_secondary_index_updates",DbA="messaging.system",NbA="messaging.destination",LbA="messaging.destination_kind",qbA="messaging.temp_destination",MbA="messaging.protocol",zbA="messaging.protocol_version",RbA="messaging.url",wbA="messaging.message_id",jbA="messaging.conversation_id",ObA="messaging.message_payload_size_bytes",PbA="messaging.message_payload_compressed_size_bytes",TbA="messaging.operation",SbA="messaging.consumer_id",kbA="messaging.rabbitmq.routing_key",_bA="messaging.kafka.message_key",vbA="messaging.kafka.consumer_group",ybA="messaging.kafka.client_id",hbA="messaging.kafka.partition",gbA="messaging.kafka.tombstone",xbA="rpc.system",fbA="rpc.service",bbA="rpc.method",mbA="rpc.grpc.status_code",ubA="rpc.jsonrpc.version",dbA="rpc.jsonrpc.request_id",cbA="rpc.jsonrpc.error_code",lbA="rpc.jsonrpc.error_message",pbA="message.type",ibA="message.id",nbA="message.compressed_size",sbA="message.uncompressed_size";DdA.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=TxA;DdA.SEMATTRS_DB_SYSTEM=SxA;DdA.SEMATTRS_DB_CONNECTION_STRING=kxA;DdA.SEMATTRS_DB_USER=_xA;DdA.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=vxA;DdA.SEMATTRS_DB_NAME=yxA;DdA.SEMATTRS_DB_STATEMENT=hxA;DdA.SEMATTRS_DB_OPERATION=gxA;DdA.SEMATTRS_DB_MSSQL_INSTANCE_NAME=xxA;DdA.SEMATTRS_DB_CASSANDRA_KEYSPACE=fxA;DdA.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=bxA;DdA.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=mxA;DdA.SEMATTRS_DB_CASSANDRA_TABLE=uxA;DdA.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=dxA;DdA.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=cxA;DdA.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=lxA;DdA.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=pxA;DdA.SEMATTRS_DB_HBASE_NAMESPACE=ixA;DdA.SEMATTRS_DB_REDIS_DATABASE_INDEX=nxA;DdA.SEMATTRS_DB_MONGODB_COLLECTION=sxA;DdA.SEMATTRS_DB_SQL_TABLE=rxA;DdA.SEMATTRS_EXCEPTION_TYPE=axA;DdA.SEMATTRS_EXCEPTION_MESSAGE=oxA;DdA.SEMATTRS_EXCEPTION_STACKTRACE=txA;DdA.SEMATTRS_EXCEPTION_ESCAPED=exA;DdA.SEMATTRS_FAAS_TRIGGER=AfA;DdA.SEMATTRS_FAAS_EXECUTION=QfA;DdA.SEMATTRS_FAAS_DOCUMENT_COLLECTION=BfA;DdA.SEMATTRS_FAAS_DOCUMENT_OPERATION=YfA;DdA.SEMATTRS_FAAS_DOCUMENT_TIME=JfA;DdA.SEMATTRS_FAAS_DOCUMENT_NAME=CfA;DdA.SEMATTRS_FAAS_TIME=XfA;DdA.SEMATTRS_FAAS_CRON=GfA;DdA.SEMATTRS_FAAS_COLDSTART=FfA;DdA.SEMATTRS_FAAS_INVOKED_NAME=WfA;DdA.SEMATTRS_FAAS_INVOKED_PROVIDER=ZfA;DdA.SEMATTRS_FAAS_INVOKED_REGION=$fA;DdA.SEMATTRS_NET_TRANSPORT=UfA;DdA.SEMATTRS_NET_PEER_IP=EfA;DdA.SEMATTRS_NET_PEER_PORT=KfA;DdA.SEMATTRS_NET_PEER_NAME=VfA;DdA.SEMATTRS_NET_HOST_IP=IfA;DdA.SEMATTRS_NET_HOST_PORT=HfA;DdA.SEMATTRS_NET_HOST_NAME=DfA;DdA.SEMATTRS_NET_HOST_CONNECTION_TYPE=NfA;DdA.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=LfA;DdA.SEMATTRS_NET_HOST_CARRIER_NAME=qfA;DdA.SEMATTRS_NET_HOST_CARRIER_MCC=MfA;DdA.SEMATTRS_NET_HOST_CARRIER_MNC=zfA;DdA.SEMATTRS_NET_HOST_CARRIER_ICC=RfA;DdA.SEMATTRS_PEER_SERVICE=wfA;DdA.SEMATTRS_ENDUSER_ID=jfA;DdA.SEMATTRS_ENDUSER_ROLE=OfA;DdA.SEMATTRS_ENDUSER_SCOPE=PfA;DdA.SEMATTRS_THREAD_ID=TfA;DdA.SEMATTRS_THREAD_NAME=SfA;DdA.SEMATTRS_CODE_FUNCTION=kfA;DdA.SEMATTRS_CODE_NAMESPACE=_fA;DdA.SEMATTRS_CODE_FILEPATH=vfA;DdA.SEMATTRS_CODE_LINENO=yfA;DdA.SEMATTRS_HTTP_METHOD=hfA;DdA.SEMATTRS_HTTP_URL=gfA;DdA.SEMATTRS_HTTP_TARGET=xfA;DdA.SEMATTRS_HTTP_HOST=ffA;DdA.SEMATTRS_HTTP_SCHEME=bfA;DdA.SEMATTRS_HTTP_STATUS_CODE=mfA;DdA.SEMATTRS_HTTP_FLAVOR=ufA;DdA.SEMATTRS_HTTP_USER_AGENT=dfA;DdA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=cfA;DdA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=lfA;DdA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=pfA;DdA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=ifA;DdA.SEMATTRS_HTTP_SERVER_NAME=nfA;DdA.SEMATTRS_HTTP_ROUTE=sfA;DdA.SEMATTRS_HTTP_CLIENT_IP=rfA;DdA.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=afA;DdA.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=ofA;DdA.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=tfA;DdA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=efA;DdA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=AbA;DdA.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=QbA;DdA.SEMATTRS_AWS_DYNAMODB_PROJECTION=BbA;DdA.SEMATTRS_AWS_DYNAMODB_LIMIT=YbA;DdA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=JbA;DdA.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=CbA;DdA.SEMATTRS_AWS_DYNAMODB_SELECT=XbA;DdA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=GbA;DdA.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=FbA;DdA.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=WbA;DdA.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=ZbA;DdA.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=$bA;DdA.SEMATTRS_AWS_DYNAMODB_SEGMENT=UbA;DdA.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=EbA;DdA.SEMATTRS_AWS_DYNAMODB_COUNT=KbA;DdA.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=VbA;DdA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=IbA;DdA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=HbA;DdA.SEMATTRS_MESSAGING_SYSTEM=DbA;DdA.SEMATTRS_MESSAGING_DESTINATION=NbA;DdA.SEMATTRS_MESSAGING_DESTINATION_KIND=LbA;DdA.SEMATTRS_MESSAGING_TEMP_DESTINATION=qbA;DdA.SEMATTRS_MESSAGING_PROTOCOL=MbA;DdA.SEMATTRS_MESSAGING_PROTOCOL_VERSION=zbA;DdA.SEMATTRS_MESSAGING_URL=RbA;DdA.SEMATTRS_MESSAGING_MESSAGE_ID=wbA;DdA.SEMATTRS_MESSAGING_CONVERSATION_ID=jbA;DdA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=ObA;DdA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=PbA;DdA.SEMATTRS_MESSAGING_OPERATION=TbA;DdA.SEMATTRS_MESSAGING_CONSUMER_ID=SbA;DdA.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=kbA;DdA.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=_bA;DdA.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=vbA;DdA.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=ybA;DdA.SEMATTRS_MESSAGING_KAFKA_PARTITION=hbA;DdA.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=gbA;DdA.SEMATTRS_RPC_SYSTEM=xbA;DdA.SEMATTRS_RPC_SERVICE=fbA;DdA.SEMATTRS_RPC_METHOD=bbA;DdA.SEMATTRS_RPC_GRPC_STATUS_CODE=mbA;DdA.SEMATTRS_RPC_JSONRPC_VERSION=ubA;DdA.SEMATTRS_RPC_JSONRPC_REQUEST_ID=dbA;DdA.SEMATTRS_RPC_JSONRPC_ERROR_CODE=cbA;DdA.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=lbA;DdA.SEMATTRS_MESSAGE_TYPE=pbA;DdA.SEMATTRS_MESSAGE_ID=ibA;DdA.SEMATTRS_MESSAGE_COMPRESSED_SIZE=nbA;DdA.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=sbA;DdA.SemanticAttributes=(0,y5.createConstMap)([TxA,SxA,kxA,_xA,vxA,yxA,hxA,gxA,xxA,fxA,bxA,mxA,uxA,dxA,cxA,lxA,pxA,ixA,nxA,sxA,rxA,axA,oxA,txA,exA,AfA,QfA,BfA,YfA,JfA,CfA,XfA,GfA,FfA,WfA,ZfA,$fA,UfA,EfA,KfA,VfA,IfA,HfA,DfA,NfA,LfA,qfA,MfA,zfA,RfA,wfA,jfA,OfA,PfA,TfA,SfA,kfA,_fA,vfA,yfA,hfA,gfA,xfA,ffA,bfA,mfA,ufA,dfA,cfA,lfA,pfA,ifA,nfA,sfA,rfA,afA,ofA,tfA,efA,AbA,QbA,BbA,YbA,JbA,CbA,XbA,GbA,FbA,WbA,ZbA,$bA,UbA,EbA,KbA,VbA,IbA,HbA,DbA,NbA,LbA,qbA,MbA,zbA,RbA,wbA,jbA,ObA,PbA,TbA,SbA,kbA,_bA,vbA,ybA,hbA,gbA,xbA,fbA,bbA,mbA,ubA,dbA,cbA,lbA,pbA,ibA,nbA,sbA]);var rbA="other_sql",abA="mssql",obA="mysql",tbA="oracle",ebA="db2",AmA="postgresql",QmA="redshift",BmA="hive",YmA="cloudscape",JmA="hsqldb",CmA="progress",XmA="maxdb",GmA="hanadb",FmA="ingres",WmA="firstsql",ZmA="edb",$mA="cache",UmA="adabas",EmA="firebird",KmA="derby",VmA="filemaker",ImA="informix",HmA="instantdb",DmA="interbase",NmA="mariadb",LmA="netezza",qmA="pervasive",MmA="pointbase",zmA="sqlite",RmA="sybase",wmA="teradata",jmA="vertica",OmA="h2",PmA="coldfusion",TmA="cassandra",SmA="hbase",kmA="mongodb",_mA="redis",vmA="couchbase",ymA="couchdb",hmA="cosmosdb",gmA="dynamodb",xmA="neo4j",fmA="geode",bmA="elasticsearch",mmA="memcached",umA="cockroachdb";DdA.DBSYSTEMVALUES_OTHER_SQL=rbA;DdA.DBSYSTEMVALUES_MSSQL=abA;DdA.DBSYSTEMVALUES_MYSQL=obA;DdA.DBSYSTEMVALUES_ORACLE=tbA;DdA.DBSYSTEMVALUES_DB2=ebA;DdA.DBSYSTEMVALUES_POSTGRESQL=AmA;DdA.DBSYSTEMVALUES_REDSHIFT=QmA;DdA.DBSYSTEMVALUES_HIVE=BmA;DdA.DBSYSTEMVALUES_CLOUDSCAPE=YmA;DdA.DBSYSTEMVALUES_HSQLDB=JmA;DdA.DBSYSTEMVALUES_PROGRESS=CmA;DdA.DBSYSTEMVALUES_MAXDB=XmA;DdA.DBSYSTEMVALUES_HANADB=GmA;DdA.DBSYSTEMVALUES_INGRES=FmA;DdA.DBSYSTEMVALUES_FIRSTSQL=WmA;DdA.DBSYSTEMVALUES_EDB=ZmA;DdA.DBSYSTEMVALUES_CACHE=$mA;DdA.DBSYSTEMVALUES_ADABAS=UmA;DdA.DBSYSTEMVALUES_FIREBIRD=EmA;DdA.DBSYSTEMVALUES_DERBY=KmA;DdA.DBSYSTEMVALUES_FILEMAKER=VmA;DdA.DBSYSTEMVALUES_INFORMIX=ImA;DdA.DBSYSTEMVALUES_INSTANTDB=HmA;DdA.DBSYSTEMVALUES_INTERBASE=DmA;DdA.DBSYSTEMVALUES_MARIADB=NmA;DdA.DBSYSTEMVALUES_NETEZZA=LmA;DdA.DBSYSTEMVALUES_PERVASIVE=qmA;DdA.DBSYSTEMVALUES_POINTBASE=MmA;DdA.DBSYSTEMVALUES_SQLITE=zmA;DdA.DBSYSTEMVALUES_SYBASE=RmA;DdA.DBSYSTEMVALUES_TERADATA=wmA;DdA.DBSYSTEMVALUES_VERTICA=jmA;DdA.DBSYSTEMVALUES_H2=OmA;DdA.DBSYSTEMVALUES_COLDFUSION=PmA;DdA.DBSYSTEMVALUES_CASSANDRA=TmA;DdA.DBSYSTEMVALUES_HBASE=SmA;DdA.DBSYSTEMVALUES_MONGODB=kmA;DdA.DBSYSTEMVALUES_REDIS=_mA;DdA.DBSYSTEMVALUES_COUCHBASE=vmA;DdA.DBSYSTEMVALUES_COUCHDB=ymA;DdA.DBSYSTEMVALUES_COSMOSDB=hmA;DdA.DBSYSTEMVALUES_DYNAMODB=gmA;DdA.DBSYSTEMVALUES_NEO4J=xmA;DdA.DBSYSTEMVALUES_GEODE=fmA;DdA.DBSYSTEMVALUES_ELASTICSEARCH=bmA;DdA.DBSYSTEMVALUES_MEMCACHED=mmA;DdA.DBSYSTEMVALUES_COCKROACHDB=umA;DdA.DbSystemValues=(0,y5.createConstMap)([rbA,abA,obA,tbA,ebA,AmA,QmA,BmA,YmA,JmA,CmA,XmA,GmA,FmA,WmA,ZmA,$mA,UmA,EmA,KmA,VmA,ImA,HmA,DmA,NmA,LmA,qmA,MmA,zmA,RmA,wmA,jmA,OmA,PmA,TmA,SmA,kmA,_mA,vmA,ymA,hmA,gmA,xmA,fmA,bmA,mmA,umA]);var dmA="all",cmA="each_quorum",lmA="quorum",pmA="local_quorum",imA="one",nmA="two",smA="three",rmA="local_one",amA="any",omA="serial",tmA="local_serial";DdA.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=dmA;DdA.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=cmA;DdA.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=lmA;DdA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=pmA;DdA.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=imA;DdA.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=nmA;DdA.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=smA;DdA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=rmA;DdA.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=amA;DdA.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=omA;DdA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=tmA;DdA.DbCassandraConsistencyLevelValues=(0,y5.createConstMap)([dmA,cmA,lmA,pmA,imA,nmA,smA,rmA,amA,omA,tmA]);var emA="datasource",AuA="http",QuA="pubsub",BuA="timer",YuA="other";DdA.FAASTRIGGERVALUES_DATASOURCE=emA;DdA.FAASTRIGGERVALUES_HTTP=AuA;DdA.FAASTRIGGERVALUES_PUBSUB=QuA;DdA.FAASTRIGGERVALUES_TIMER=BuA;DdA.FAASTRIGGERVALUES_OTHER=YuA;DdA.FaasTriggerValues=(0,y5.createConstMap)([emA,AuA,QuA,BuA,YuA]);var JuA="insert",CuA="edit",XuA="delete";DdA.FAASDOCUMENTOPERATIONVALUES_INSERT=JuA;DdA.FAASDOCUMENTOPERATIONVALUES_EDIT=CuA;DdA.FAASDOCUMENTOPERATIONVALUES_DELETE=XuA;DdA.FaasDocumentOperationValues=(0,y5.createConstMap)([JuA,CuA,XuA]);var GuA="alibaba_cloud",FuA="aws",WuA="azure",ZuA="gcp";DdA.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=GuA;DdA.FAASINVOKEDPROVIDERVALUES_AWS=FuA;DdA.FAASINVOKEDPROVIDERVALUES_AZURE=WuA;DdA.FAASINVOKEDPROVIDERVALUES_GCP=ZuA;DdA.FaasInvokedProviderValues=(0,y5.createConstMap)([GuA,FuA,WuA,ZuA]);var $uA="ip_tcp",UuA="ip_udp",EuA="ip",KuA="unix",VuA="pipe",IuA="inproc",HuA="other";DdA.NETTRANSPORTVALUES_IP_TCP=$uA;DdA.NETTRANSPORTVALUES_IP_UDP=UuA;DdA.NETTRANSPORTVALUES_IP=EuA;DdA.NETTRANSPORTVALUES_UNIX=KuA;DdA.NETTRANSPORTVALUES_PIPE=VuA;DdA.NETTRANSPORTVALUES_INPROC=IuA;DdA.NETTRANSPORTVALUES_OTHER=HuA;DdA.NetTransportValues=(0,y5.createConstMap)([$uA,UuA,EuA,KuA,VuA,IuA,HuA]);var DuA="wifi",NuA="wired",LuA="cell",quA="unavailable",MuA="unknown";DdA.NETHOSTCONNECTIONTYPEVALUES_WIFI=DuA;DdA.NETHOSTCONNECTIONTYPEVALUES_WIRED=NuA;DdA.NETHOSTCONNECTIONTYPEVALUES_CELL=LuA;DdA.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=quA;DdA.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=MuA;DdA.NetHostConnectionTypeValues=(0,y5.createConstMap)([DuA,NuA,LuA,quA,MuA]);var zuA="gprs",RuA="edge",wuA="umts",juA="cdma",OuA="evdo_0",PuA="evdo_a",TuA="cdma2000_1xrtt",SuA="hsdpa",kuA="hsupa",_uA="hspa",vuA="iden",yuA="evdo_b",huA="lte",guA="ehrpd",xuA="hspap",fuA="gsm",buA="td_scdma",muA="iwlan",uuA="nr",duA="nrnsa",cuA="lte_ca";DdA.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=zuA;DdA.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=RuA;DdA.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=wuA;DdA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=juA;DdA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=OuA;DdA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=PuA;DdA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=TuA;DdA.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=SuA;DdA.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=kuA;DdA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=_uA;DdA.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=vuA;DdA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=yuA;DdA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=huA;DdA.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=guA;DdA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=xuA;DdA.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=fuA;DdA.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=buA;DdA.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=muA;DdA.NETHOSTCONNECTIONSUBTYPEVALUES_NR=uuA;DdA.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=duA;DdA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=cuA;DdA.NetHostConnectionSubtypeValues=(0,y5.createConstMap)([zuA,RuA,wuA,juA,OuA,PuA,TuA,SuA,kuA,_uA,vuA,yuA,huA,guA,xuA,fuA,buA,muA,uuA,duA,cuA]);var luA="1.0",puA="1.1",iuA="2.0",nuA="SPDY",suA="QUIC";DdA.HTTPFLAVORVALUES_HTTP_1_0=luA;DdA.HTTPFLAVORVALUES_HTTP_1_1=puA;DdA.HTTPFLAVORVALUES_HTTP_2_0=iuA;DdA.HTTPFLAVORVALUES_SPDY=nuA;DdA.HTTPFLAVORVALUES_QUIC=suA;DdA.HttpFlavorValues={HTTP_1_0:luA,HTTP_1_1:puA,HTTP_2_0:iuA,SPDY:nuA,QUIC:suA};var ruA="queue",auA="topic";DdA.MESSAGINGDESTINATIONKINDVALUES_QUEUE=ruA;DdA.MESSAGINGDESTINATIONKINDVALUES_TOPIC=auA;DdA.MessagingDestinationKindValues=(0,y5.createConstMap)([ruA,auA]);var ouA="receive",tuA="process";DdA.MESSAGINGOPERATIONVALUES_RECEIVE=ouA;DdA.MESSAGINGOPERATIONVALUES_PROCESS=tuA;DdA.MessagingOperationValues=(0,y5.createConstMap)([ouA,tuA]);var euA=0,AdA=1,QdA=2,BdA=3,YdA=4,JdA=5,CdA=6,XdA=7,GdA=8,FdA=9,WdA=10,ZdA=11,$dA=12,UdA=13,EdA=14,KdA=15,VdA=16;DdA.RPCGRPCSTATUSCODEVALUES_OK=euA;DdA.RPCGRPCSTATUSCODEVALUES_CANCELLED=AdA;DdA.RPCGRPCSTATUSCODEVALUES_UNKNOWN=QdA;DdA.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=BdA;DdA.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=YdA;DdA.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=JdA;DdA.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=CdA;DdA.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=XdA;DdA.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=GdA;DdA.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=FdA;DdA.RPCGRPCSTATUSCODEVALUES_ABORTED=WdA;DdA.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=ZdA;DdA.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=$dA;DdA.RPCGRPCSTATUSCODEVALUES_INTERNAL=UdA;DdA.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=EdA;DdA.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=KdA;DdA.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=VdA;DdA.RpcGrpcStatusCodeValues={OK:euA,CANCELLED:AdA,UNKNOWN:QdA,INVALID_ARGUMENT:BdA,DEADLINE_EXCEEDED:YdA,NOT_FOUND:JdA,ALREADY_EXISTS:CdA,PERMISSION_DENIED:XdA,RESOURCE_EXHAUSTED:GdA,FAILED_PRECONDITION:FdA,ABORTED:WdA,OUT_OF_RANGE:ZdA,UNIMPLEMENTED:$dA,INTERNAL:UdA,UNAVAILABLE:EdA,DATA_LOSS:KdA,UNAUTHENTICATED:VdA};var IdA="SENT",HdA="RECEIVED";DdA.MESSAGETYPEVALUES_SENT=IdA;DdA.MESSAGETYPEVALUES_RECEIVED=HdA;DdA.MessageTypeValues=(0,y5.createConstMap)([IdA,HdA])});var jdA=R((tZ)=>{var ffB=tZ&&tZ.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),bfB=tZ&&tZ.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))ffB(Q,A,B)};Object.defineProperty(tZ,"__esModule",{value:!0});bfB(wdA(),tZ)});var QpA=R((olA)=>{Object.defineProperty(olA,"__esModule",{value:!0});olA.SEMRESATTRS_K8S_STATEFULSET_NAME=olA.SEMRESATTRS_K8S_STATEFULSET_UID=olA.SEMRESATTRS_K8S_DEPLOYMENT_NAME=olA.SEMRESATTRS_K8S_DEPLOYMENT_UID=olA.SEMRESATTRS_K8S_REPLICASET_NAME=olA.SEMRESATTRS_K8S_REPLICASET_UID=olA.SEMRESATTRS_K8S_CONTAINER_NAME=olA.SEMRESATTRS_K8S_POD_NAME=olA.SEMRESATTRS_K8S_POD_UID=olA.SEMRESATTRS_K8S_NAMESPACE_NAME=olA.SEMRESATTRS_K8S_NODE_UID=olA.SEMRESATTRS_K8S_NODE_NAME=olA.SEMRESATTRS_K8S_CLUSTER_NAME=olA.SEMRESATTRS_HOST_IMAGE_VERSION=olA.SEMRESATTRS_HOST_IMAGE_ID=olA.SEMRESATTRS_HOST_IMAGE_NAME=olA.SEMRESATTRS_HOST_ARCH=olA.SEMRESATTRS_HOST_TYPE=olA.SEMRESATTRS_HOST_NAME=olA.SEMRESATTRS_HOST_ID=olA.SEMRESATTRS_FAAS_MAX_MEMORY=olA.SEMRESATTRS_FAAS_INSTANCE=olA.SEMRESATTRS_FAAS_VERSION=olA.SEMRESATTRS_FAAS_ID=olA.SEMRESATTRS_FAAS_NAME=olA.SEMRESATTRS_DEVICE_MODEL_NAME=olA.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=olA.SEMRESATTRS_DEVICE_ID=olA.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=olA.SEMRESATTRS_CONTAINER_IMAGE_TAG=olA.SEMRESATTRS_CONTAINER_IMAGE_NAME=olA.SEMRESATTRS_CONTAINER_RUNTIME=olA.SEMRESATTRS_CONTAINER_ID=olA.SEMRESATTRS_CONTAINER_NAME=olA.SEMRESATTRS_AWS_LOG_STREAM_ARNS=olA.SEMRESATTRS_AWS_LOG_STREAM_NAMES=olA.SEMRESATTRS_AWS_LOG_GROUP_ARNS=olA.SEMRESATTRS_AWS_LOG_GROUP_NAMES=olA.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=olA.SEMRESATTRS_AWS_ECS_TASK_REVISION=olA.SEMRESATTRS_AWS_ECS_TASK_FAMILY=olA.SEMRESATTRS_AWS_ECS_TASK_ARN=olA.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=olA.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=olA.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=olA.SEMRESATTRS_CLOUD_PLATFORM=olA.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=olA.SEMRESATTRS_CLOUD_REGION=olA.SEMRESATTRS_CLOUD_ACCOUNT_ID=olA.SEMRESATTRS_CLOUD_PROVIDER=void 0;olA.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=olA.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=olA.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=olA.CLOUDPLATFORMVALUES_AZURE_AKS=olA.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=olA.CLOUDPLATFORMVALUES_AZURE_VM=olA.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=olA.CLOUDPLATFORMVALUES_AWS_LAMBDA=olA.CLOUDPLATFORMVALUES_AWS_EKS=olA.CLOUDPLATFORMVALUES_AWS_ECS=olA.CLOUDPLATFORMVALUES_AWS_EC2=olA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=olA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=olA.CloudProviderValues=olA.CLOUDPROVIDERVALUES_GCP=olA.CLOUDPROVIDERVALUES_AZURE=olA.CLOUDPROVIDERVALUES_AWS=olA.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=olA.SemanticResourceAttributes=olA.SEMRESATTRS_WEBENGINE_DESCRIPTION=olA.SEMRESATTRS_WEBENGINE_VERSION=olA.SEMRESATTRS_WEBENGINE_NAME=olA.SEMRESATTRS_TELEMETRY_AUTO_VERSION=olA.SEMRESATTRS_TELEMETRY_SDK_VERSION=olA.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=olA.SEMRESATTRS_TELEMETRY_SDK_NAME=olA.SEMRESATTRS_SERVICE_VERSION=olA.SEMRESATTRS_SERVICE_INSTANCE_ID=olA.SEMRESATTRS_SERVICE_NAMESPACE=olA.SEMRESATTRS_SERVICE_NAME=olA.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=olA.SEMRESATTRS_PROCESS_RUNTIME_VERSION=olA.SEMRESATTRS_PROCESS_RUNTIME_NAME=olA.SEMRESATTRS_PROCESS_OWNER=olA.SEMRESATTRS_PROCESS_COMMAND_ARGS=olA.SEMRESATTRS_PROCESS_COMMAND_LINE=olA.SEMRESATTRS_PROCESS_COMMAND=olA.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=olA.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=olA.SEMRESATTRS_PROCESS_PID=olA.SEMRESATTRS_OS_VERSION=olA.SEMRESATTRS_OS_NAME=olA.SEMRESATTRS_OS_DESCRIPTION=olA.SEMRESATTRS_OS_TYPE=olA.SEMRESATTRS_K8S_CRONJOB_NAME=olA.SEMRESATTRS_K8S_CRONJOB_UID=olA.SEMRESATTRS_K8S_JOB_NAME=olA.SEMRESATTRS_K8S_JOB_UID=olA.SEMRESATTRS_K8S_DAEMONSET_NAME=olA.SEMRESATTRS_K8S_DAEMONSET_UID=void 0;olA.TelemetrySdkLanguageValues=olA.TELEMETRYSDKLANGUAGEVALUES_WEBJS=olA.TELEMETRYSDKLANGUAGEVALUES_RUBY=olA.TELEMETRYSDKLANGUAGEVALUES_PYTHON=olA.TELEMETRYSDKLANGUAGEVALUES_PHP=olA.TELEMETRYSDKLANGUAGEVALUES_NODEJS=olA.TELEMETRYSDKLANGUAGEVALUES_JAVA=olA.TELEMETRYSDKLANGUAGEVALUES_GO=olA.TELEMETRYSDKLANGUAGEVALUES_ERLANG=olA.TELEMETRYSDKLANGUAGEVALUES_DOTNET=olA.TELEMETRYSDKLANGUAGEVALUES_CPP=olA.OsTypeValues=olA.OSTYPEVALUES_Z_OS=olA.OSTYPEVALUES_SOLARIS=olA.OSTYPEVALUES_AIX=olA.OSTYPEVALUES_HPUX=olA.OSTYPEVALUES_DRAGONFLYBSD=olA.OSTYPEVALUES_OPENBSD=olA.OSTYPEVALUES_NETBSD=olA.OSTYPEVALUES_FREEBSD=olA.OSTYPEVALUES_DARWIN=olA.OSTYPEVALUES_LINUX=olA.OSTYPEVALUES_WINDOWS=olA.HostArchValues=olA.HOSTARCHVALUES_X86=olA.HOSTARCHVALUES_PPC64=olA.HOSTARCHVALUES_PPC32=olA.HOSTARCHVALUES_IA64=olA.HOSTARCHVALUES_ARM64=olA.HOSTARCHVALUES_ARM32=olA.HOSTARCHVALUES_AMD64=olA.AwsEcsLaunchtypeValues=olA.AWSECSLAUNCHTYPEVALUES_FARGATE=olA.AWSECSLAUNCHTYPEVALUES_EC2=olA.CloudPlatformValues=olA.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=olA.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=olA.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=olA.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=void 0;var eZ=Rp(),OdA="cloud.provider",PdA="cloud.account.id",TdA="cloud.region",SdA="cloud.availability_zone",kdA="cloud.platform",_dA="aws.ecs.container.arn",vdA="aws.ecs.cluster.arn",ydA="aws.ecs.launchtype",hdA="aws.ecs.task.arn",gdA="aws.ecs.task.family",xdA="aws.ecs.task.revision",fdA="aws.eks.cluster.arn",bdA="aws.log.group.names",mdA="aws.log.group.arns",udA="aws.log.stream.names",ddA="aws.log.stream.arns",cdA="container.name",ldA="container.id",pdA="container.runtime",idA="container.image.name",ndA="container.image.tag",sdA="deployment.environment",rdA="device.id",adA="device.model.identifier",odA="device.model.name",tdA="faas.name",edA="faas.id",AcA="faas.version",QcA="faas.instance",BcA="faas.max_memory",YcA="host.id",JcA="host.name",CcA="host.type",XcA="host.arch",GcA="host.image.name",FcA="host.image.id",WcA="host.image.version",ZcA="k8s.cluster.name",$cA="k8s.node.name",UcA="k8s.node.uid",EcA="k8s.namespace.name",KcA="k8s.pod.uid",VcA="k8s.pod.name",IcA="k8s.container.name",HcA="k8s.replicaset.uid",DcA="k8s.replicaset.name",NcA="k8s.deployment.uid",LcA="k8s.deployment.name",qcA="k8s.statefulset.uid",McA="k8s.statefulset.name",zcA="k8s.daemonset.uid",RcA="k8s.daemonset.name",wcA="k8s.job.uid",jcA="k8s.job.name",OcA="k8s.cronjob.uid",PcA="k8s.cronjob.name",TcA="os.type",ScA="os.description",kcA="os.name",_cA="os.version",vcA="process.pid",ycA="process.executable.name",hcA="process.executable.path",gcA="process.command",xcA="process.command_line",fcA="process.command_args",bcA="process.owner",mcA="process.runtime.name",ucA="process.runtime.version",dcA="process.runtime.description",ccA="service.name",lcA="service.namespace",pcA="service.instance.id",icA="service.version",ncA="telemetry.sdk.name",scA="telemetry.sdk.language",rcA="telemetry.sdk.version",acA="telemetry.auto.version",ocA="webengine.name",tcA="webengine.version",ecA="webengine.description";olA.SEMRESATTRS_CLOUD_PROVIDER=OdA;olA.SEMRESATTRS_CLOUD_ACCOUNT_ID=PdA;olA.SEMRESATTRS_CLOUD_REGION=TdA;olA.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=SdA;olA.SEMRESATTRS_CLOUD_PLATFORM=kdA;olA.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=_dA;olA.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=vdA;olA.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=ydA;olA.SEMRESATTRS_AWS_ECS_TASK_ARN=hdA;olA.SEMRESATTRS_AWS_ECS_TASK_FAMILY=gdA;olA.SEMRESATTRS_AWS_ECS_TASK_REVISION=xdA;olA.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=fdA;olA.SEMRESATTRS_AWS_LOG_GROUP_NAMES=bdA;olA.SEMRESATTRS_AWS_LOG_GROUP_ARNS=mdA;olA.SEMRESATTRS_AWS_LOG_STREAM_NAMES=udA;olA.SEMRESATTRS_AWS_LOG_STREAM_ARNS=ddA;olA.SEMRESATTRS_CONTAINER_NAME=cdA;olA.SEMRESATTRS_CONTAINER_ID=ldA;olA.SEMRESATTRS_CONTAINER_RUNTIME=pdA;olA.SEMRESATTRS_CONTAINER_IMAGE_NAME=idA;olA.SEMRESATTRS_CONTAINER_IMAGE_TAG=ndA;olA.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=sdA;olA.SEMRESATTRS_DEVICE_ID=rdA;olA.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=adA;olA.SEMRESATTRS_DEVICE_MODEL_NAME=odA;olA.SEMRESATTRS_FAAS_NAME=tdA;olA.SEMRESATTRS_FAAS_ID=edA;olA.SEMRESATTRS_FAAS_VERSION=AcA;olA.SEMRESATTRS_FAAS_INSTANCE=QcA;olA.SEMRESATTRS_FAAS_MAX_MEMORY=BcA;olA.SEMRESATTRS_HOST_ID=YcA;olA.SEMRESATTRS_HOST_NAME=JcA;olA.SEMRESATTRS_HOST_TYPE=CcA;olA.SEMRESATTRS_HOST_ARCH=XcA;olA.SEMRESATTRS_HOST_IMAGE_NAME=GcA;olA.SEMRESATTRS_HOST_IMAGE_ID=FcA;olA.SEMRESATTRS_HOST_IMAGE_VERSION=WcA;olA.SEMRESATTRS_K8S_CLUSTER_NAME=ZcA;olA.SEMRESATTRS_K8S_NODE_NAME=$cA;olA.SEMRESATTRS_K8S_NODE_UID=UcA;olA.SEMRESATTRS_K8S_NAMESPACE_NAME=EcA;olA.SEMRESATTRS_K8S_POD_UID=KcA;olA.SEMRESATTRS_K8S_POD_NAME=VcA;olA.SEMRESATTRS_K8S_CONTAINER_NAME=IcA;olA.SEMRESATTRS_K8S_REPLICASET_UID=HcA;olA.SEMRESATTRS_K8S_REPLICASET_NAME=DcA;olA.SEMRESATTRS_K8S_DEPLOYMENT_UID=NcA;olA.SEMRESATTRS_K8S_DEPLOYMENT_NAME=LcA;olA.SEMRESATTRS_K8S_STATEFULSET_UID=qcA;olA.SEMRESATTRS_K8S_STATEFULSET_NAME=McA;olA.SEMRESATTRS_K8S_DAEMONSET_UID=zcA;olA.SEMRESATTRS_K8S_DAEMONSET_NAME=RcA;olA.SEMRESATTRS_K8S_JOB_UID=wcA;olA.SEMRESATTRS_K8S_JOB_NAME=jcA;olA.SEMRESATTRS_K8S_CRONJOB_UID=OcA;olA.SEMRESATTRS_K8S_CRONJOB_NAME=PcA;olA.SEMRESATTRS_OS_TYPE=TcA;olA.SEMRESATTRS_OS_DESCRIPTION=ScA;olA.SEMRESATTRS_OS_NAME=kcA;olA.SEMRESATTRS_OS_VERSION=_cA;olA.SEMRESATTRS_PROCESS_PID=vcA;olA.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=ycA;olA.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=hcA;olA.SEMRESATTRS_PROCESS_COMMAND=gcA;olA.SEMRESATTRS_PROCESS_COMMAND_LINE=xcA;olA.SEMRESATTRS_PROCESS_COMMAND_ARGS=fcA;olA.SEMRESATTRS_PROCESS_OWNER=bcA;olA.SEMRESATTRS_PROCESS_RUNTIME_NAME=mcA;olA.SEMRESATTRS_PROCESS_RUNTIME_VERSION=ucA;olA.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=dcA;olA.SEMRESATTRS_SERVICE_NAME=ccA;olA.SEMRESATTRS_SERVICE_NAMESPACE=lcA;olA.SEMRESATTRS_SERVICE_INSTANCE_ID=pcA;olA.SEMRESATTRS_SERVICE_VERSION=icA;olA.SEMRESATTRS_TELEMETRY_SDK_NAME=ncA;olA.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=scA;olA.SEMRESATTRS_TELEMETRY_SDK_VERSION=rcA;olA.SEMRESATTRS_TELEMETRY_AUTO_VERSION=acA;olA.SEMRESATTRS_WEBENGINE_NAME=ocA;olA.SEMRESATTRS_WEBENGINE_VERSION=tcA;olA.SEMRESATTRS_WEBENGINE_DESCRIPTION=ecA;olA.SemanticResourceAttributes=(0,eZ.createConstMap)([OdA,PdA,TdA,SdA,kdA,_dA,vdA,ydA,hdA,gdA,xdA,fdA,bdA,mdA,udA,ddA,cdA,ldA,pdA,idA,ndA,sdA,rdA,adA,odA,tdA,edA,AcA,QcA,BcA,YcA,JcA,CcA,XcA,GcA,FcA,WcA,ZcA,$cA,UcA,EcA,KcA,VcA,IcA,HcA,DcA,NcA,LcA,qcA,McA,zcA,RcA,wcA,jcA,OcA,PcA,TcA,ScA,kcA,_cA,vcA,ycA,hcA,gcA,xcA,fcA,bcA,mcA,ucA,dcA,ccA,lcA,pcA,icA,ncA,scA,rcA,acA,ocA,tcA,ecA]);var AlA="alibaba_cloud",QlA="aws",BlA="azure",YlA="gcp";olA.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=AlA;olA.CLOUDPROVIDERVALUES_AWS=QlA;olA.CLOUDPROVIDERVALUES_AZURE=BlA;olA.CLOUDPROVIDERVALUES_GCP=YlA;olA.CloudProviderValues=(0,eZ.createConstMap)([AlA,QlA,BlA,YlA]);var JlA="alibaba_cloud_ecs",ClA="alibaba_cloud_fc",XlA="aws_ec2",GlA="aws_ecs",FlA="aws_eks",WlA="aws_lambda",ZlA="aws_elastic_beanstalk",$lA="azure_vm",UlA="azure_container_instances",ElA="azure_aks",KlA="azure_functions",VlA="azure_app_service",IlA="gcp_compute_engine",HlA="gcp_cloud_run",DlA="gcp_kubernetes_engine",NlA="gcp_cloud_functions",LlA="gcp_app_engine";olA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=JlA;olA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=ClA;olA.CLOUDPLATFORMVALUES_AWS_EC2=XlA;olA.CLOUDPLATFORMVALUES_AWS_ECS=GlA;olA.CLOUDPLATFORMVALUES_AWS_EKS=FlA;olA.CLOUDPLATFORMVALUES_AWS_LAMBDA=WlA;olA.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=ZlA;olA.CLOUDPLATFORMVALUES_AZURE_VM=$lA;olA.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=UlA;olA.CLOUDPLATFORMVALUES_AZURE_AKS=ElA;olA.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=KlA;olA.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=VlA;olA.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=IlA;olA.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=HlA;olA.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=DlA;olA.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=NlA;olA.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=LlA;olA.CloudPlatformValues=(0,eZ.createConstMap)([JlA,ClA,XlA,GlA,FlA,WlA,ZlA,$lA,UlA,ElA,KlA,VlA,IlA,HlA,DlA,NlA,LlA]);var qlA="ec2",MlA="fargate";olA.AWSECSLAUNCHTYPEVALUES_EC2=qlA;olA.AWSECSLAUNCHTYPEVALUES_FARGATE=MlA;olA.AwsEcsLaunchtypeValues=(0,eZ.createConstMap)([qlA,MlA]);var zlA="amd64",RlA="arm32",wlA="arm64",jlA="ia64",OlA="ppc32",PlA="ppc64",TlA="x86";olA.HOSTARCHVALUES_AMD64=zlA;olA.HOSTARCHVALUES_ARM32=RlA;olA.HOSTARCHVALUES_ARM64=wlA;olA.HOSTARCHVALUES_IA64=jlA;olA.HOSTARCHVALUES_PPC32=OlA;olA.HOSTARCHVALUES_PPC64=PlA;olA.HOSTARCHVALUES_X86=TlA;olA.HostArchValues=(0,eZ.createConstMap)([zlA,RlA,wlA,jlA,OlA,PlA,TlA]);var SlA="windows",klA="linux",_lA="darwin",vlA="freebsd",ylA="netbsd",hlA="openbsd",glA="dragonflybsd",xlA="hpux",flA="aix",blA="solaris",mlA="z_os";olA.OSTYPEVALUES_WINDOWS=SlA;olA.OSTYPEVALUES_LINUX=klA;olA.OSTYPEVALUES_DARWIN=_lA;olA.OSTYPEVALUES_FREEBSD=vlA;olA.OSTYPEVALUES_NETBSD=ylA;olA.OSTYPEVALUES_OPENBSD=hlA;olA.OSTYPEVALUES_DRAGONFLYBSD=glA;olA.OSTYPEVALUES_HPUX=xlA;olA.OSTYPEVALUES_AIX=flA;olA.OSTYPEVALUES_SOLARIS=blA;olA.OSTYPEVALUES_Z_OS=mlA;olA.OsTypeValues=(0,eZ.createConstMap)([SlA,klA,_lA,vlA,ylA,hlA,glA,xlA,flA,blA,mlA]);var ulA="cpp",dlA="dotnet",clA="erlang",llA="go",plA="java",ilA="nodejs",nlA="php",slA="python",rlA="ruby",alA="webjs";olA.TELEMETRYSDKLANGUAGEVALUES_CPP=ulA;olA.TELEMETRYSDKLANGUAGEVALUES_DOTNET=dlA;olA.TELEMETRYSDKLANGUAGEVALUES_ERLANG=clA;olA.TELEMETRYSDKLANGUAGEVALUES_GO=llA;olA.TELEMETRYSDKLANGUAGEVALUES_JAVA=plA;olA.TELEMETRYSDKLANGUAGEVALUES_NODEJS=ilA;olA.TELEMETRYSDKLANGUAGEVALUES_PHP=nlA;olA.TELEMETRYSDKLANGUAGEVALUES_PYTHON=slA;olA.TELEMETRYSDKLANGUAGEVALUES_RUBY=rlA;olA.TELEMETRYSDKLANGUAGEVALUES_WEBJS=alA;olA.TelemetrySdkLanguageValues=(0,eZ.createConstMap)([ulA,dlA,clA,llA,plA,ilA,nlA,slA,rlA,alA])});var BpA=R((A$)=>{var KuB=A$&&A$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),VuB=A$&&A$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))KuB(Q,A,B)};Object.defineProperty(A$,"__esModule",{value:!0});VuB(QpA(),A$)});var GpA=R((YpA)=>{Object.defineProperty(YpA,"__esModule",{value:!0});YpA.HTTP_REQUEST_METHOD_VALUE_POST=YpA.HTTP_REQUEST_METHOD_VALUE_PATCH=YpA.HTTP_REQUEST_METHOD_VALUE_OPTIONS=YpA.HTTP_REQUEST_METHOD_VALUE_HEAD=YpA.HTTP_REQUEST_METHOD_VALUE_GET=YpA.HTTP_REQUEST_METHOD_VALUE_DELETE=YpA.HTTP_REQUEST_METHOD_VALUE_CONNECT=YpA.HTTP_REQUEST_METHOD_VALUE_OTHER=YpA.ATTR_HTTP_REQUEST_METHOD=YpA.ATTR_HTTP_REQUEST_HEADER=YpA.ATTR_EXCEPTION_TYPE=YpA.ATTR_EXCEPTION_STACKTRACE=YpA.ATTR_EXCEPTION_MESSAGE=YpA.ATTR_EXCEPTION_ESCAPED=YpA.ERROR_TYPE_VALUE_OTHER=YpA.ATTR_ERROR_TYPE=YpA.ATTR_CLIENT_PORT=YpA.ATTR_CLIENT_ADDRESS=YpA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS=YpA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE=YpA.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS=YpA.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK=YpA.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED=YpA.ATTR_ASPNETCORE_RATE_LIMITING_POLICY=YpA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED=YpA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED=YpA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED=YpA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED=YpA.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT=YpA.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE=YpA.ATTR_TELEMETRY_SDK_VERSION=YpA.ATTR_TELEMETRY_SDK_NAME=YpA.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS=YpA.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT=YpA.TELEMETRY_SDK_LANGUAGE_VALUE_RUST=YpA.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY=YpA.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON=YpA.TELEMETRY_SDK_LANGUAGE_VALUE_PHP=YpA.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS=YpA.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA=YpA.TELEMETRY_SDK_LANGUAGE_VALUE_GO=YpA.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG=YpA.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET=YpA.TELEMETRY_SDK_LANGUAGE_VALUE_CPP=YpA.ATTR_TELEMETRY_SDK_LANGUAGE=YpA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED=YpA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER=YpA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER=YpA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED=YpA.ATTR_ASPNETCORE_RATE_LIMITING_RESULT=void 0;YpA.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT=YpA.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE=YpA.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN=YpA.ATTR_SIGNALR_CONNECTION_STATUS=YpA.ATTR_SERVICE_VERSION=YpA.ATTR_SERVICE_NAME=YpA.ATTR_SERVER_PORT=YpA.ATTR_SERVER_ADDRESS=YpA.ATTR_OTEL_STATUS_DESCRIPTION=YpA.OTEL_STATUS_CODE_VALUE_OK=YpA.OTEL_STATUS_CODE_VALUE_ERROR=YpA.ATTR_OTEL_STATUS_CODE=YpA.ATTR_OTEL_SCOPE_VERSION=YpA.ATTR_OTEL_SCOPE_NAME=YpA.NETWORK_TYPE_VALUE_IPV6=YpA.NETWORK_TYPE_VALUE_IPV4=YpA.ATTR_NETWORK_TYPE=YpA.NETWORK_TRANSPORT_VALUE_UNIX=YpA.NETWORK_TRANSPORT_VALUE_UDP=YpA.NETWORK_TRANSPORT_VALUE_TCP=YpA.NETWORK_TRANSPORT_VALUE_QUIC=YpA.NETWORK_TRANSPORT_VALUE_PIPE=YpA.ATTR_NETWORK_TRANSPORT=YpA.ATTR_NETWORK_PROTOCOL_VERSION=YpA.ATTR_NETWORK_PROTOCOL_NAME=YpA.ATTR_NETWORK_PEER_PORT=YpA.ATTR_NETWORK_PEER_ADDRESS=YpA.ATTR_NETWORK_LOCAL_PORT=YpA.ATTR_NETWORK_LOCAL_ADDRESS=YpA.JVM_THREAD_STATE_VALUE_WAITING=YpA.JVM_THREAD_STATE_VALUE_TIMED_WAITING=YpA.JVM_THREAD_STATE_VALUE_TERMINATED=YpA.JVM_THREAD_STATE_VALUE_RUNNABLE=YpA.JVM_THREAD_STATE_VALUE_NEW=YpA.JVM_THREAD_STATE_VALUE_BLOCKED=YpA.ATTR_JVM_THREAD_STATE=YpA.ATTR_JVM_THREAD_DAEMON=YpA.JVM_MEMORY_TYPE_VALUE_NON_HEAP=YpA.JVM_MEMORY_TYPE_VALUE_HEAP=YpA.ATTR_JVM_MEMORY_TYPE=YpA.ATTR_JVM_MEMORY_POOL_NAME=YpA.ATTR_JVM_GC_NAME=YpA.ATTR_JVM_GC_ACTION=YpA.ATTR_HTTP_ROUTE=YpA.ATTR_HTTP_RESPONSE_STATUS_CODE=YpA.ATTR_HTTP_RESPONSE_HEADER=YpA.ATTR_HTTP_REQUEST_RESEND_COUNT=YpA.ATTR_HTTP_REQUEST_METHOD_ORIGINAL=YpA.HTTP_REQUEST_METHOD_VALUE_TRACE=YpA.HTTP_REQUEST_METHOD_VALUE_PUT=void 0;YpA.ATTR_USER_AGENT_ORIGINAL=YpA.ATTR_URL_SCHEME=YpA.ATTR_URL_QUERY=YpA.ATTR_URL_PATH=YpA.ATTR_URL_FULL=YpA.ATTR_URL_FRAGMENT=YpA.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS=YpA.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS=YpA.SIGNALR_TRANSPORT_VALUE_LONG_POLLING=YpA.ATTR_SIGNALR_TRANSPORT=void 0;YpA.ATTR_ASPNETCORE_RATE_LIMITING_RESULT="aspnetcore.rate_limiting.result";YpA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED="acquired";YpA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER="endpoint_limiter";YpA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER="global_limiter";YpA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED="request_canceled";YpA.ATTR_TELEMETRY_SDK_LANGUAGE="telemetry.sdk.language";YpA.TELEMETRY_SDK_LANGUAGE_VALUE_CPP="cpp";YpA.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET="dotnet";YpA.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG="erlang";YpA.TELEMETRY_SDK_LANGUAGE_VALUE_GO="go";YpA.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA="java";YpA.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS="nodejs";YpA.TELEMETRY_SDK_LANGUAGE_VALUE_PHP="php";YpA.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON="python";YpA.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY="ruby";YpA.TELEMETRY_SDK_LANGUAGE_VALUE_RUST="rust";YpA.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT="swift";YpA.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS="webjs";YpA.ATTR_TELEMETRY_SDK_NAME="telemetry.sdk.name";YpA.ATTR_TELEMETRY_SDK_VERSION="telemetry.sdk.version";YpA.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE="aspnetcore.diagnostics.handler.type";YpA.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT="aspnetcore.diagnostics.exception.result";YpA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED="aborted";YpA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED="handled";YpA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED="skipped";YpA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED="unhandled";YpA.ATTR_ASPNETCORE_RATE_LIMITING_POLICY="aspnetcore.rate_limiting.policy";YpA.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED="aspnetcore.request.is_unhandled";YpA.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK="aspnetcore.routing.is_fallback";YpA.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS="aspnetcore.routing.match_status";YpA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE="failure";YpA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS="success";YpA.ATTR_CLIENT_ADDRESS="client.address";YpA.ATTR_CLIENT_PORT="client.port";YpA.ATTR_ERROR_TYPE="error.type";YpA.ERROR_TYPE_VALUE_OTHER="_OTHER";YpA.ATTR_EXCEPTION_ESCAPED="exception.escaped";YpA.ATTR_EXCEPTION_MESSAGE="exception.message";YpA.ATTR_EXCEPTION_STACKTRACE="exception.stacktrace";YpA.ATTR_EXCEPTION_TYPE="exception.type";var IuB=(A)=>`http.request.header.${A}`;YpA.ATTR_HTTP_REQUEST_HEADER=IuB;YpA.ATTR_HTTP_REQUEST_METHOD="http.request.method";YpA.HTTP_REQUEST_METHOD_VALUE_OTHER="_OTHER";YpA.HTTP_REQUEST_METHOD_VALUE_CONNECT="CONNECT";YpA.HTTP_REQUEST_METHOD_VALUE_DELETE="DELETE";YpA.HTTP_REQUEST_METHOD_VALUE_GET="GET";YpA.HTTP_REQUEST_METHOD_VALUE_HEAD="HEAD";YpA.HTTP_REQUEST_METHOD_VALUE_OPTIONS="OPTIONS";YpA.HTTP_REQUEST_METHOD_VALUE_PATCH="PATCH";YpA.HTTP_REQUEST_METHOD_VALUE_POST="POST";YpA.HTTP_REQUEST_METHOD_VALUE_PUT="PUT";YpA.HTTP_REQUEST_METHOD_VALUE_TRACE="TRACE";YpA.ATTR_HTTP_REQUEST_METHOD_ORIGINAL="http.request.method_original";YpA.ATTR_HTTP_REQUEST_RESEND_COUNT="http.request.resend_count";var HuB=(A)=>`http.response.header.${A}`;YpA.ATTR_HTTP_RESPONSE_HEADER=HuB;YpA.ATTR_HTTP_RESPONSE_STATUS_CODE="http.response.status_code";YpA.ATTR_HTTP_ROUTE="http.route";YpA.ATTR_JVM_GC_ACTION="jvm.gc.action";YpA.ATTR_JVM_GC_NAME="jvm.gc.name";YpA.ATTR_JVM_MEMORY_POOL_NAME="jvm.memory.pool.name";YpA.ATTR_JVM_MEMORY_TYPE="jvm.memory.type";YpA.JVM_MEMORY_TYPE_VALUE_HEAP="heap";YpA.JVM_MEMORY_TYPE_VALUE_NON_HEAP="non_heap";YpA.ATTR_JVM_THREAD_DAEMON="jvm.thread.daemon";YpA.ATTR_JVM_THREAD_STATE="jvm.thread.state";YpA.JVM_THREAD_STATE_VALUE_BLOCKED="blocked";YpA.JVM_THREAD_STATE_VALUE_NEW="new";YpA.JVM_THREAD_STATE_VALUE_RUNNABLE="runnable";YpA.JVM_THREAD_STATE_VALUE_TERMINATED="terminated";YpA.JVM_THREAD_STATE_VALUE_TIMED_WAITING="timed_waiting";YpA.JVM_THREAD_STATE_VALUE_WAITING="waiting";YpA.ATTR_NETWORK_LOCAL_ADDRESS="network.local.address";YpA.ATTR_NETWORK_LOCAL_PORT="network.local.port";YpA.ATTR_NETWORK_PEER_ADDRESS="network.peer.address";YpA.ATTR_NETWORK_PEER_PORT="network.peer.port";YpA.ATTR_NETWORK_PROTOCOL_NAME="network.protocol.name";YpA.ATTR_NETWORK_PROTOCOL_VERSION="network.protocol.version";YpA.ATTR_NETWORK_TRANSPORT="network.transport";YpA.NETWORK_TRANSPORT_VALUE_PIPE="pipe";YpA.NETWORK_TRANSPORT_VALUE_QUIC="quic";YpA.NETWORK_TRANSPORT_VALUE_TCP="tcp";YpA.NETWORK_TRANSPORT_VALUE_UDP="udp";YpA.NETWORK_TRANSPORT_VALUE_UNIX="unix";YpA.ATTR_NETWORK_TYPE="network.type";YpA.NETWORK_TYPE_VALUE_IPV4="ipv4";YpA.NETWORK_TYPE_VALUE_IPV6="ipv6";YpA.ATTR_OTEL_SCOPE_NAME="otel.scope.name";YpA.ATTR_OTEL_SCOPE_VERSION="otel.scope.version";YpA.ATTR_OTEL_STATUS_CODE="otel.status_code";YpA.OTEL_STATUS_CODE_VALUE_ERROR="ERROR";YpA.OTEL_STATUS_CODE_VALUE_OK="OK";YpA.ATTR_OTEL_STATUS_DESCRIPTION="otel.status_description";YpA.ATTR_SERVER_ADDRESS="server.address";YpA.ATTR_SERVER_PORT="server.port";YpA.ATTR_SERVICE_NAME="service.name";YpA.ATTR_SERVICE_VERSION="service.version";YpA.ATTR_SIGNALR_CONNECTION_STATUS="signalr.connection.status";YpA.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN="app_shutdown";YpA.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE="normal_closure";YpA.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT="timeout";YpA.ATTR_SIGNALR_TRANSPORT="signalr.transport";YpA.SIGNALR_TRANSPORT_VALUE_LONG_POLLING="long_polling";YpA.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS="server_sent_events";YpA.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS="web_sockets";YpA.ATTR_URL_FRAGMENT="url.fragment";YpA.ATTR_URL_FULL="url.full";YpA.ATTR_URL_PATH="url.path";YpA.ATTR_URL_QUERY="url.query";YpA.ATTR_URL_SCHEME="url.scheme";YpA.ATTR_USER_AGENT_ORIGINAL="user_agent.original"});var ZpA=R((FpA)=>{Object.defineProperty(FpA,"__esModule",{value:!0});FpA.METRIC_SIGNALR_SERVER_CONNECTION_DURATION=FpA.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS=FpA.METRIC_KESTREL_UPGRADED_CONNECTIONS=FpA.METRIC_KESTREL_TLS_HANDSHAKE_DURATION=FpA.METRIC_KESTREL_REJECTED_CONNECTIONS=FpA.METRIC_KESTREL_QUEUED_REQUESTS=FpA.METRIC_KESTREL_QUEUED_CONNECTIONS=FpA.METRIC_KESTREL_CONNECTION_DURATION=FpA.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES=FpA.METRIC_KESTREL_ACTIVE_CONNECTIONS=FpA.METRIC_JVM_THREAD_COUNT=FpA.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC=FpA.METRIC_JVM_MEMORY_USED=FpA.METRIC_JVM_MEMORY_LIMIT=FpA.METRIC_JVM_MEMORY_COMMITTED=FpA.METRIC_JVM_GC_DURATION=FpA.METRIC_JVM_CPU_TIME=FpA.METRIC_JVM_CPU_RECENT_UTILIZATION=FpA.METRIC_JVM_CPU_COUNT=FpA.METRIC_JVM_CLASS_UNLOADED=FpA.METRIC_JVM_CLASS_LOADED=FpA.METRIC_JVM_CLASS_COUNT=FpA.METRIC_HTTP_SERVER_REQUEST_DURATION=FpA.METRIC_HTTP_CLIENT_REQUEST_DURATION=FpA.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS=FpA.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS=FpA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION=FpA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE=FpA.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS=FpA.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES=FpA.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS=void 0;FpA.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS="aspnetcore.diagnostics.exceptions";FpA.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES="aspnetcore.rate_limiting.active_request_leases";FpA.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS="aspnetcore.rate_limiting.queued_requests";FpA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE="aspnetcore.rate_limiting.request.time_in_queue";FpA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION="aspnetcore.rate_limiting.request_lease.duration";FpA.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS="aspnetcore.rate_limiting.requests";FpA.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS="aspnetcore.routing.match_attempts";FpA.METRIC_HTTP_CLIENT_REQUEST_DURATION="http.client.request.duration";FpA.METRIC_HTTP_SERVER_REQUEST_DURATION="http.server.request.duration";FpA.METRIC_JVM_CLASS_COUNT="jvm.class.count";FpA.METRIC_JVM_CLASS_LOADED="jvm.class.loaded";FpA.METRIC_JVM_CLASS_UNLOADED="jvm.class.unloaded";FpA.METRIC_JVM_CPU_COUNT="jvm.cpu.count";FpA.METRIC_JVM_CPU_RECENT_UTILIZATION="jvm.cpu.recent_utilization";FpA.METRIC_JVM_CPU_TIME="jvm.cpu.time";FpA.METRIC_JVM_GC_DURATION="jvm.gc.duration";FpA.METRIC_JVM_MEMORY_COMMITTED="jvm.memory.committed";FpA.METRIC_JVM_MEMORY_LIMIT="jvm.memory.limit";FpA.METRIC_JVM_MEMORY_USED="jvm.memory.used";FpA.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC="jvm.memory.used_after_last_gc";FpA.METRIC_JVM_THREAD_COUNT="jvm.thread.count";FpA.METRIC_KESTREL_ACTIVE_CONNECTIONS="kestrel.active_connections";FpA.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES="kestrel.active_tls_handshakes";FpA.METRIC_KESTREL_CONNECTION_DURATION="kestrel.connection.duration";FpA.METRIC_KESTREL_QUEUED_CONNECTIONS="kestrel.queued_connections";FpA.METRIC_KESTREL_QUEUED_REQUESTS="kestrel.queued_requests";FpA.METRIC_KESTREL_REJECTED_CONNECTIONS="kestrel.rejected_connections";FpA.METRIC_KESTREL_TLS_HANDSHAKE_DURATION="kestrel.tls_handshake.duration";FpA.METRIC_KESTREL_UPGRADED_CONNECTIONS="kestrel.upgraded_connections";FpA.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS="signalr.server.active_connections";FpA.METRIC_SIGNALR_SERVER_CONNECTION_DURATION="signalr.server.connection.duration"});var wp=R((J6)=>{var ncB=J6&&J6.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),_O=J6&&J6.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))ncB(Q,A,B)};Object.defineProperty(J6,"__esModule",{value:!0});_O(jdA(),J6);_O(BpA(),J6);_O(GpA(),J6);_O(ZpA(),J6)});var UpA=R(($pA)=>{Object.defineProperty($pA,"__esModule",{value:!0});$pA.AttributeNames=void 0;var scB;(function(A){A.HTTP_ERROR_NAME="http.error_name",A.HTTP_ERROR_MESSAGE="http.error_message",A.HTTP_STATUS_TEXT="http.status_text"})(scB=$pA.AttributeNames||($pA.AttributeNames={}))});var KpA=R((BhY,EpA)=>{var rcB=u("util");function Op(A,Q){Error.captureStackTrace(this,Op),this.name=this.constructor.name,this.message=A,this.input=Q}rcB.inherits(Op,Error);EpA.exports=Op});var IpA=R((YhY,VpA)=>{function acB(A){return A===34||A===40||A===41||A===44||A===47||A>=58&&A<=64||A>=91&&A<=93||A===123||A===125}function ocB(A){return A===33||A>=35&&A<=39||A===42||A===43||A===45||A===46||A>=48&&A<=57||A>=65&&A<=90||A>=94&&A<=122||A===124||A===126}function tcB(A){return A>=32&&A<=126}function ecB(A){return A>=128&&A<=255}VpA.exports={isDelimiter:acB,isTokenChar:ocB,isExtended:ecB,isPrint:tcB}});var qpA=R((JhY,LpA)=>{var AlB=u("util"),CK=KpA(),vO=IpA(),QlB=vO.isDelimiter,HpA=vO.isTokenChar,DpA=vO.isExtended,BlB=vO.isPrint;function NpA(A){return A.replace(/\\(.)/g,"$1")}function WL(A,Q){return AlB.format("Unexpected character '%s' at index %d",A.charAt(Q),Q)}function YlB(A){var Q=!1,B=!1,Y=!1,J={},C=[],X=-1,G=-1,F,W;for(var Z=0;Z{Object.defineProperty(OpA,"__esModule",{value:!0});OpA.headerCapture=OpA.getIncomingStableRequestMetricAttributesOnResponse=OpA.getIncomingRequestMetricAttributesOnResponse=OpA.getIncomingRequestAttributesOnResponse=OpA.getIncomingRequestMetricAttributes=OpA.getIncomingRequestAttributes=OpA.getRemoteClientAddress=OpA.getOutgoingRequestMetricAttributesOnResponse=OpA.getOutgoingRequestAttributesOnResponse=OpA.setAttributesFromHttpKind=OpA.getOutgoingRequestMetricAttributes=OpA.getOutgoingRequestAttributes=OpA.extractHostnameAndPort=OpA.isValidOptionsType=OpA.getRequestInfo=OpA.isCompressed=OpA.setResponseContentLengthAttribute=OpA.setRequestContentLengthAttribute=OpA.setSpanWithError=OpA.satisfiesPattern=OpA.parseResponseStatus=OpA.getAbsoluteUrl=void 0;var ZL=yA(),SA=wp(),MpA=MB(),JlB=u("url"),yO=UpA(),ClB=qpA(),XlB=(A,Q,B="http:")=>{let Y=A||{},J=Y.protocol||B,C=(Y.port||"").toString(),X=Y.path||"/",G=Y.host||Y.hostname||Q.host||"localhost";if(G.indexOf(":")===-1&&C&&C!=="80"&&C!=="443")G+=`:${C}`;return`${J}//${G}${X}`};OpA.getAbsoluteUrl=XlB;var GlB=(A,Q)=>{let B=A===ZL.SpanKind.CLIENT?400:500;if(Q&&Q>=100&&Q{if(typeof Q==="string")return Q===A;else if(Q instanceof RegExp)return Q.test(A);else if(typeof Q==="function")return Q(A);else throw TypeError("Pattern is in unsupported datatype")};OpA.satisfiesPattern=FlB;var WlB=(A,Q,B)=>{let Y=Q.message;if((B&2)===2)A.setAttribute(yO.AttributeNames.HTTP_ERROR_NAME,Q.name),A.setAttribute(yO.AttributeNames.HTTP_ERROR_MESSAGE,Y);if((B&1)===1)A.setAttribute(SA.ATTR_ERROR_TYPE,Q.name);A.setStatus({code:ZL.SpanStatusCode.ERROR,message:Y}),A.recordException(Q)};OpA.setSpanWithError=WlB;var ZlB=(A,Q)=>{let B=zpA(A.headers);if(B===null)return;if(OpA.isCompressed(A.headers))Q[SA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH]=B;else Q[SA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED]=B};OpA.setRequestContentLengthAttribute=ZlB;var $lB=(A,Q)=>{let B=zpA(A.headers);if(B===null)return;if(OpA.isCompressed(A.headers))Q[SA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH]=B;else Q[SA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED]=B};OpA.setResponseContentLengthAttribute=$lB;function zpA(A){let Q=A["content-length"];if(Q===void 0)return null;let B=parseInt(Q,10);if(isNaN(B))return null;return B}var UlB=(A)=>{let Q=A["content-encoding"];return!!Q&&Q!=="identity"};OpA.isCompressed=UlB;function ElB(A){let{hostname:Q,pathname:B,port:Y,username:J,password:C,search:X,protocol:G,hash:F,href:W,origin:Z,host:U}=new URL(A),$={protocol:G,hostname:Q&&Q[0]==="["?Q.slice(1,-1):Q,hash:F,search:X,pathname:B,path:`${B||""}${X||""}`,href:W,origin:Z,host:U};if(Y!=="")$.port=Number(Y);if(J||C)$.auth=`${decodeURIComponent(J)}:${decodeURIComponent(C)}`;return $}var KlB=(A,Q,B)=>{let Y,J,C,X=!1;if(typeof Q==="string"){try{let F=ElB(Q);C=F,Y=F.pathname||"/"}catch(F){X=!0,A.verbose("Unable to parse URL provided to HTTP request, using fallback to determine path. Original error:",F),C={path:Q},Y=C.path||"/"}if(J=`${C.protocol||"http:"}//${C.host}`,B!==void 0)Object.assign(C,B)}else if(Q instanceof JlB.URL){if(C={protocol:Q.protocol,hostname:typeof Q.hostname==="string"&&Q.hostname.startsWith("[")?Q.hostname.slice(1,-1):Q.hostname,path:`${Q.pathname||""}${Q.search||""}`},Q.port!=="")C.port=Number(Q.port);if(Q.username||Q.password)C.auth=`${Q.username}:${Q.password}`;if(Y=Q.pathname,J=Q.origin,B!==void 0)Object.assign(C,B)}else{C=Object.assign({protocol:Q.host?"http:":void 0},Q);let F=C.host||(C.port!=null?`${C.hostname}${C.port}`:C.hostname);if(J=`${C.protocol||"http:"}//${F}`,Y=Q.pathname,!Y&&C.path)try{Y=new URL(C.path,J).pathname||"/"}catch(W){Y="/"}}let G=C.method?C.method.toUpperCase():"GET";return{origin:J,pathname:Y,method:G,optionsParsed:C,invalidUrl:X}};OpA.getRequestInfo=KlB;var VlB=(A)=>{if(!A)return!1;let Q=typeof A;return Q==="string"||Q==="object"&&!Array.isArray(A)};OpA.isValidOptionsType=VlB;var IlB=(A)=>{var Q;if(A.hostname&&A.port)return{hostname:A.hostname,port:A.port};let B=((Q=A.host)===null||Q===void 0?void 0:Q.match(/^([^:/ ]+)(:\d{1,5})?/))||null,Y=A.hostname||(B===null?"localhost":B[1]),J=A.port;if(!J)if(B&&B[2])J=B[2].substring(1);else J=A.protocol==="https:"?"443":"80";return{hostname:Y,port:J}};OpA.extractHostnameAndPort=IlB;var HlB=(A,Q,B)=>{var Y,J;let{hostname:C,port:X}=Q,G=(Y=A.method)!==null&&Y!==void 0?Y:"GET",F=wpA(G),W=A.headers||{},Z=W["user-agent"],U=OpA.getAbsoluteUrl(A,W,`${Q.component}:`),$={[SA.SEMATTRS_HTTP_URL]:U,[SA.SEMATTRS_HTTP_METHOD]:G,[SA.SEMATTRS_HTTP_TARGET]:A.path||"/",[SA.SEMATTRS_NET_PEER_NAME]:C,[SA.SEMATTRS_HTTP_HOST]:(J=W.host)!==null&&J!==void 0?J:`${C}:${X}`},E={[SA.ATTR_HTTP_REQUEST_METHOD]:F,[SA.ATTR_SERVER_ADDRESS]:C,[SA.ATTR_SERVER_PORT]:Number(X),[SA.ATTR_URL_FULL]:U};if(G!==F)E[SA.ATTR_HTTP_REQUEST_METHOD_ORIGINAL]=G;if(Z!==void 0)$[SA.SEMATTRS_HTTP_USER_AGENT]=Z;switch(B){case 1:return Object.assign(E,Q.hookAttributes);case 2:return Object.assign($,Q.hookAttributes)}return Object.assign($,E,Q.hookAttributes)};OpA.getOutgoingRequestAttributes=HlB;var DlB=(A)=>{let Q={};return Q[SA.SEMATTRS_HTTP_METHOD]=A[SA.SEMATTRS_HTTP_METHOD],Q[SA.SEMATTRS_NET_PEER_NAME]=A[SA.SEMATTRS_NET_PEER_NAME],Q};OpA.getOutgoingRequestMetricAttributes=DlB;var NlB=(A,Q)=>{if(A)if(Q[SA.SEMATTRS_HTTP_FLAVOR]=A,A.toUpperCase()!=="QUIC")Q[SA.SEMATTRS_NET_TRANSPORT]=SA.NETTRANSPORTVALUES_IP_TCP;else Q[SA.SEMATTRS_NET_TRANSPORT]=SA.NETTRANSPORTVALUES_IP_UDP};OpA.setAttributesFromHttpKind=NlB;var LlB=(A,Q)=>{let{statusCode:B,statusMessage:Y,httpVersion:J,socket:C}=A,X={},G={};if(B!=null)G[SA.ATTR_HTTP_RESPONSE_STATUS_CODE]=B;if(C){let{remoteAddress:F,remotePort:W}=C;X[SA.SEMATTRS_NET_PEER_IP]=F,X[SA.SEMATTRS_NET_PEER_PORT]=W,G[SA.ATTR_NETWORK_PEER_ADDRESS]=F,G[SA.ATTR_NETWORK_PEER_PORT]=W,G[SA.ATTR_NETWORK_PROTOCOL_VERSION]=A.httpVersion}if(OpA.setResponseContentLengthAttribute(A,X),B)X[SA.SEMATTRS_HTTP_STATUS_CODE]=B,X[yO.AttributeNames.HTTP_STATUS_TEXT]=(Y||"").toUpperCase();switch(OpA.setAttributesFromHttpKind(J,X),Q){case 1:return G;case 2:return X}return Object.assign(X,G)};OpA.getOutgoingRequestAttributesOnResponse=LlB;var qlB=(A)=>{let Q={};return Q[SA.SEMATTRS_NET_PEER_PORT]=A[SA.SEMATTRS_NET_PEER_PORT],Q[SA.SEMATTRS_HTTP_STATUS_CODE]=A[SA.SEMATTRS_HTTP_STATUS_CODE],Q[SA.SEMATTRS_HTTP_FLAVOR]=A[SA.SEMATTRS_HTTP_FLAVOR],Q};OpA.getOutgoingRequestMetricAttributesOnResponse=qlB;function XF(A,Q){let B=A.split(":");if(B.length===1){if(Q==="http")return{host:B[0],port:"80"};if(Q==="https")return{host:B[0],port:"443"};return{host:B[0]}}if(B.length===2)return{host:B[0],port:B[1]};if(B[0].startsWith("[")){if(B[B.length-1].endsWith("]")){if(Q==="http")return{host:A,port:"80"};if(Q==="https")return{host:A,port:"443"}}else if(B[B.length-2].endsWith("]"))return{host:B.slice(0,-1).join(":"),port:B[B.length-1]}}return{host:A}}function MlB(A,Q){let B=A.headers.forwarded;if(B){for(let C of jpA(B))if(C.host)return XF(C.host,C.proto)}let Y=A.headers["x-forwarded-host"];if(typeof Y==="string"){if(typeof A.headers["x-forwarded-proto"]==="string")return XF(Y,A.headers["x-forwarded-proto"]);if(Array.isArray(A.headers["x-forwarded-proto"]))return XF(Y,A.headers["x-forwarded-proto"][0]);return XF(Y)}else if(Array.isArray(Y)&&typeof Y[0]==="string"&&Y[0].length>0){if(typeof A.headers["x-forwarded-proto"]==="string")return XF(Y[0],A.headers["x-forwarded-proto"]);if(Array.isArray(A.headers["x-forwarded-proto"]))return XF(Y[0],A.headers["x-forwarded-proto"][0]);return XF(Y[0])}let J=A.headers.host;if(typeof J==="string"&&J.length>0)return XF(J,Q);return null}function RpA(A){let Q=A.headers.forwarded;if(Q){for(let J of jpA(Q))if(J.for)return J.for}let B=A.headers["x-forwarded-for"];if(typeof B==="string")return B;else if(Array.isArray(B))return B[0];let Y=A.socket.remoteAddress;if(Y)return Y;return null}OpA.getRemoteClientAddress=RpA;function zlB(A,Q,B){var Y,J;try{if(Q.headers.host)return new URL((Y=Q.url)!==null&&Y!==void 0?Y:"/",`${A}://${Q.headers.host}`);else{let C=new URL((J=Q.url)!==null&&J!==void 0?J:"/",`${A}://localhost`);return{pathname:C.pathname,search:C.search,toString:function(){return C.pathname+C.search}}}}catch(C){return B.verbose("Unable to get URL from request",C),{}}}var RlB=(A,Q,B)=>{let Y=A.headers,J=Y["user-agent"],C=Y["x-forwarded-for"],X=A.httpVersion,G=Y.host,F=(G===null||G===void 0?void 0:G.replace(/^(.*)(:[0-9]{1,5})/,"$1"))||"localhost",W=A.method,Z=wpA(W),U=MlB(A,Q.component),$=Q.serverName,E=RpA(A),K={[SA.ATTR_HTTP_REQUEST_METHOD]:Z,[SA.ATTR_URL_SCHEME]:Q.component,[SA.ATTR_SERVER_ADDRESS]:U===null||U===void 0?void 0:U.host,[SA.ATTR_NETWORK_PEER_ADDRESS]:A.socket.remoteAddress,[SA.ATTR_NETWORK_PEER_PORT]:A.socket.remotePort,[SA.ATTR_NETWORK_PROTOCOL_VERSION]:A.httpVersion,[SA.ATTR_USER_AGENT_ORIGINAL]:J},I=zlB(Q.component,A,B);if((I===null||I===void 0?void 0:I.pathname)!=null)K[SA.ATTR_URL_PATH]=I.pathname;if(E!=null)K[SA.ATTR_CLIENT_ADDRESS]=E;if((U===null||U===void 0?void 0:U.port)!=null)K[SA.ATTR_SERVER_PORT]=Number(U.port);if(W!==Z)K[SA.ATTR_HTTP_REQUEST_METHOD_ORIGINAL]=W;let V={[SA.SEMATTRS_HTTP_URL]:I.toString(),[SA.SEMATTRS_HTTP_HOST]:G,[SA.SEMATTRS_NET_HOST_NAME]:F,[SA.SEMATTRS_HTTP_METHOD]:W,[SA.SEMATTRS_HTTP_SCHEME]:Q.component};if(typeof C==="string")V[SA.SEMATTRS_HTTP_CLIENT_IP]=C.split(",")[0];if(typeof $==="string")V[SA.SEMATTRS_HTTP_SERVER_NAME]=$;if(I===null||I===void 0?void 0:I.pathname)V[SA.SEMATTRS_HTTP_TARGET]=(I===null||I===void 0?void 0:I.pathname)+(I===null||I===void 0?void 0:I.search)||"/";if(J!==void 0)V[SA.SEMATTRS_HTTP_USER_AGENT]=J;switch(OpA.setRequestContentLengthAttribute(A,V),OpA.setAttributesFromHttpKind(X,V),Q.semconvStability){case 1:return Object.assign(K,Q.hookAttributes);case 2:return Object.assign(V,Q.hookAttributes)}return Object.assign(V,K,Q.hookAttributes)};OpA.getIncomingRequestAttributes=RlB;var wlB=(A)=>{let Q={};return Q[SA.SEMATTRS_HTTP_SCHEME]=A[SA.SEMATTRS_HTTP_SCHEME],Q[SA.SEMATTRS_HTTP_METHOD]=A[SA.SEMATTRS_HTTP_METHOD],Q[SA.SEMATTRS_NET_HOST_NAME]=A[SA.SEMATTRS_NET_HOST_NAME],Q[SA.SEMATTRS_HTTP_FLAVOR]=A[SA.SEMATTRS_HTTP_FLAVOR],Q};OpA.getIncomingRequestMetricAttributes=wlB;var jlB=(A,Q,B)=>{let{socket:Y}=A,{statusCode:J,statusMessage:C}=Q,X={[SA.ATTR_HTTP_RESPONSE_STATUS_CODE]:J},G=(0,MpA.getRPCMetadata)(ZL.context.active()),F={};if(Y){let{localAddress:W,localPort:Z,remoteAddress:U,remotePort:$}=Y;F[SA.SEMATTRS_NET_HOST_IP]=W,F[SA.SEMATTRS_NET_HOST_PORT]=Z,F[SA.SEMATTRS_NET_PEER_IP]=U,F[SA.SEMATTRS_NET_PEER_PORT]=$}if(F[SA.SEMATTRS_HTTP_STATUS_CODE]=J,F[yO.AttributeNames.HTTP_STATUS_TEXT]=(C||"").toUpperCase(),(G===null||G===void 0?void 0:G.type)===MpA.RPCType.HTTP&&G.route!==void 0)F[SA.SEMATTRS_HTTP_ROUTE]=G.route,X[SA.ATTR_HTTP_ROUTE]=G.route;switch(B){case 1:return X;case 2:return F}return Object.assign(F,X)};OpA.getIncomingRequestAttributesOnResponse=jlB;var OlB=(A)=>{let Q={};if(Q[SA.SEMATTRS_HTTP_STATUS_CODE]=A[SA.SEMATTRS_HTTP_STATUS_CODE],Q[SA.SEMATTRS_NET_HOST_PORT]=A[SA.SEMATTRS_NET_HOST_PORT],A[SA.SEMATTRS_HTTP_ROUTE]!==void 0)Q[SA.SEMATTRS_HTTP_ROUTE]=A[SA.SEMATTRS_HTTP_ROUTE];return Q};OpA.getIncomingRequestMetricAttributesOnResponse=OlB;var PlB=(A)=>{let Q={};if(A[SA.ATTR_HTTP_ROUTE]!==void 0)Q[SA.ATTR_HTTP_ROUTE]=A[SA.SEMATTRS_HTTP_ROUTE];if(A[SA.ATTR_HTTP_RESPONSE_STATUS_CODE])Q[SA.ATTR_HTTP_RESPONSE_STATUS_CODE]=A[SA.ATTR_HTTP_RESPONSE_STATUS_CODE];return Q};OpA.getIncomingStableRequestMetricAttributesOnResponse=PlB;function TlB(A,Q){let B=new Map;for(let Y=0,J=Q.length;Y{for(let C of B.keys()){let X=J(C);if(X===void 0)continue;let G=B.get(C),F=`http.${A}.header.${G}`;if(typeof X==="string")Y.setAttribute(F,[X]);else if(Array.isArray(X))Y.setAttribute(F,X);else Y.setAttribute(F,[X])}}}OpA.headerCapture=TlB;var SlB=new Set(["GET","HEAD","POST","PUT","DELETE","CONNECT","OPTIONS","TRACE","PATCH"]);function wpA(A){if(A==null)return"GET";let Q=A.toUpperCase();if(SlB.has(Q))return Q;return"_OTHER"}function jpA(A){try{return ClB(A)}catch(Q){return[]}}});var xpA=R((hpA)=>{Object.defineProperty(hpA,"__esModule",{value:!0});hpA.HttpInstrumentation=void 0;var _Q=yA(),XK=MB(),vpA=ZvA(),nlB=u("url"),slB=EvA(),h5=NB(),Sp=MB(),kp=u("events"),l0=wp(),g0=_pA();class ypA extends h5.InstrumentationBase{constructor(A={}){super("@opentelemetry/instrumentation-http",slB.VERSION,A);this._spanNotEnded=new WeakSet,this._semconvStability=2,this._headerCapture=this._createHeaderCapture();for(let Q of(0,Sp.getEnv)().OTEL_SEMCONV_STABILITY_OPT_IN)if(Q.toLowerCase()==="http/dup"){this._semconvStability=3;break}else if(Q.toLowerCase()==="http")this._semconvStability=1}_updateMetricInstruments(){this._oldHttpServerDurationHistogram=this.meter.createHistogram("http.server.duration",{description:"Measures the duration of inbound HTTP requests.",unit:"ms",valueType:_Q.ValueType.DOUBLE}),this._oldHttpClientDurationHistogram=this.meter.createHistogram("http.client.duration",{description:"Measures the duration of outbound HTTP requests.",unit:"ms",valueType:_Q.ValueType.DOUBLE}),this._stableHttpServerDurationHistogram=this.meter.createHistogram(l0.METRIC_HTTP_SERVER_REQUEST_DURATION,{description:"Duration of HTTP server requests.",unit:"s",valueType:_Q.ValueType.DOUBLE,advice:{explicitBucketBoundaries:[0.005,0.01,0.025,0.05,0.075,0.1,0.25,0.5,0.75,1,2.5,5,7.5,10]}}),this._stableHttpClientDurationHistogram=this.meter.createHistogram(l0.METRIC_HTTP_CLIENT_REQUEST_DURATION,{description:"Duration of HTTP client requests.",unit:"s",valueType:_Q.ValueType.DOUBLE,advice:{explicitBucketBoundaries:[0.005,0.01,0.025,0.05,0.075,0.1,0.25,0.5,0.75,1,2.5,5,7.5,10]}})}_recordServerDuration(A,Q,B){if((this._semconvStability&2)===2)this._oldHttpServerDurationHistogram.record(A,Q);if((this._semconvStability&1)===1)this._stableHttpServerDurationHistogram.record(A/1000,B)}_recordClientDuration(A,Q,B){if((this._semconvStability&2)===2)this._oldHttpClientDurationHistogram.record(A,Q);if((this._semconvStability&1)===1)this._stableHttpClientDurationHistogram.record(A/1000,B)}setConfig(A={}){super.setConfig(A),this._headerCapture=this._createHeaderCapture()}init(){return[this._getHttpsInstrumentation(),this._getHttpInstrumentation()]}_getHttpInstrumentation(){return new h5.InstrumentationNodeModuleDefinition("http",["*"],(A)=>{let Q=A[Symbol.toStringTag]==="Module";if(!this.getConfig().disableOutgoingRequestInstrumentation){let B=this._wrap(A,"request",this._getPatchOutgoingRequestFunction("http")),Y=this._wrap(A,"get",this._getPatchOutgoingGetFunction(B));if(Q)A.default.request=B,A.default.get=Y}if(!this.getConfig().disableIncomingRequestInstrumentation)this._wrap(A.Server.prototype,"emit",this._getPatchIncomingRequestFunction("http"));return A},(A)=>{if(A===void 0)return;if(!this.getConfig().disableOutgoingRequestInstrumentation)this._unwrap(A,"request"),this._unwrap(A,"get");if(!this.getConfig().disableIncomingRequestInstrumentation)this._unwrap(A.Server.prototype,"emit")})}_getHttpsInstrumentation(){return new h5.InstrumentationNodeModuleDefinition("https",["*"],(A)=>{let Q=A[Symbol.toStringTag]==="Module";if(!this.getConfig().disableOutgoingRequestInstrumentation){let B=this._wrap(A,"request",this._getPatchHttpsOutgoingRequestFunction("https")),Y=this._wrap(A,"get",this._getPatchHttpsOutgoingGetFunction(B));if(Q)A.default.request=B,A.default.get=Y}if(!this.getConfig().disableIncomingRequestInstrumentation)this._wrap(A.Server.prototype,"emit",this._getPatchIncomingRequestFunction("https"));return A},(A)=>{if(A===void 0)return;if(!this.getConfig().disableOutgoingRequestInstrumentation)this._unwrap(A,"request"),this._unwrap(A,"get");if(!this.getConfig().disableIncomingRequestInstrumentation)this._unwrap(A.Server.prototype,"emit")})}_getPatchIncomingRequestFunction(A){return(Q)=>{return this._incomingRequestFunction(A,Q)}}_getPatchOutgoingRequestFunction(A){return(Q)=>{return this._outgoingRequestFunction(A,Q)}}_getPatchOutgoingGetFunction(A){return(Q)=>{return function(Y,...J){let C=A(Y,...J);return C.end(),C}}}_getPatchHttpsOutgoingRequestFunction(A){return(Q)=>{let B=this;return function(J,...C){var X;if(A==="https"&&typeof J==="object"&&((X=J===null||J===void 0?void 0:J.constructor)===null||X===void 0?void 0:X.name)!=="URL")J=Object.assign({},J),B._setDefaultOptions(J);return B._getPatchOutgoingRequestFunction(A)(Q)(J,...C)}}}_setDefaultOptions(A){A.protocol=A.protocol||"https:",A.port=A.port||443}_getPatchHttpsOutgoingGetFunction(A){return(Q)=>{let B=this;return function(J,...C){return B._getPatchOutgoingGetFunction(A)(Q)(J,...C)}}}_traceClientRequest(A,Q,B,Y,J){if(this.getConfig().requestHook)this._callRequestHook(Q,A);let C=!1;return A.prependListener("response",(X)=>{if(this._diag.debug("outgoingRequest on response()"),A.listenerCount("response")<=1)X.resume();let G=(0,g0.getOutgoingRequestAttributesOnResponse)(X,this._semconvStability);if(Q.setAttributes(G),Y=Object.assign(Y,(0,g0.getOutgoingRequestMetricAttributesOnResponse)(G)),this.getConfig().responseHook)this._callResponseHook(Q,X);this._headerCapture.client.captureRequestHeaders(Q,(W)=>A.getHeader(W)),this._headerCapture.client.captureResponseHeaders(Q,(W)=>X.headers[W]),_Q.context.bind(_Q.context.active(),X);let F=()=>{if(this._diag.debug("outgoingRequest on end()"),C)return;C=!0;let W;if(X.aborted&&!X.complete)W={code:_Q.SpanStatusCode.ERROR};else W={code:(0,g0.parseResponseStatus)(_Q.SpanKind.CLIENT,X.statusCode)};if(Q.setStatus(W),this.getConfig().applyCustomAttributesOnSpan)(0,h5.safeExecuteInTheMiddle)(()=>this.getConfig().applyCustomAttributesOnSpan(Q,A,X),()=>{},!0);this._closeHttpSpan(Q,_Q.SpanKind.CLIENT,B,Y,J)};if(X.on("end",F),vpA.lt(process.version,"16.0.0"))X.on("close",F);X.on(kp.errorMonitor,(W)=>{if(this._diag.debug("outgoingRequest on error()",W),C)return;C=!0,(0,g0.setSpanWithError)(Q,W,this._semconvStability),Q.setStatus({code:_Q.SpanStatusCode.ERROR,message:W.message}),this._closeHttpSpan(Q,_Q.SpanKind.CLIENT,B,Y,J)})}),A.on("close",()=>{if(this._diag.debug("outgoingRequest on request close()"),A.aborted||C)return;C=!0,this._closeHttpSpan(Q,_Q.SpanKind.CLIENT,B,Y,J)}),A.on(kp.errorMonitor,(X)=>{if(this._diag.debug("outgoingRequest on request error()",X),C)return;C=!0,(0,g0.setSpanWithError)(Q,X,this._semconvStability),this._closeHttpSpan(Q,_Q.SpanKind.CLIENT,B,Y,J)}),this._diag.debug("http.ClientRequest return request"),A}_incomingRequestFunction(A,Q){let B=this;return function(J,...C){if(J!=="request")return Q.apply(this,[J,...C]);let X=C[0],G=C[1],F=X.method||"GET";if(B._diag.debug(`${A} instrumentation incomingRequest`),(0,h5.safeExecuteInTheMiddle)(()=>{var D,L;return(L=(D=B.getConfig()).ignoreIncomingRequestHook)===null||L===void 0?void 0:L.call(D,X)},(D)=>{if(D!=null)B._diag.error("caught ignoreIncomingRequestHook error: ",D)},!0))return _Q.context.with((0,XK.suppressTracing)(_Q.context.active()),()=>{return _Q.context.bind(_Q.context.active(),X),_Q.context.bind(_Q.context.active(),G),Q.apply(this,[J,...C])});let W=X.headers,Z=(0,g0.getIncomingRequestAttributes)(X,{component:A,serverName:B.getConfig().serverName,hookAttributes:B._callStartSpanHook(X,B.getConfig().startIncomingSpanHook),semconvStability:B._semconvStability},B._diag),U={kind:_Q.SpanKind.SERVER,attributes:Z},$=(0,XK.hrTime)(),E=(0,g0.getIncomingRequestMetricAttributes)(Z),K={[l0.ATTR_HTTP_REQUEST_METHOD]:Z[l0.ATTR_HTTP_REQUEST_METHOD],[l0.ATTR_URL_SCHEME]:Z[l0.ATTR_URL_SCHEME]};if(Z[l0.ATTR_NETWORK_PROTOCOL_VERSION])K[l0.ATTR_NETWORK_PROTOCOL_VERSION]=Z[l0.ATTR_NETWORK_PROTOCOL_VERSION];let I=_Q.propagation.extract(_Q.ROOT_CONTEXT,W),V=B._startHttpSpan(F,U,I),H={type:Sp.RPCType.HTTP,span:V};return _Q.context.with((0,Sp.setRPCMetadata)(_Q.trace.setSpan(I,V),H),()=>{if(_Q.context.bind(_Q.context.active(),X),_Q.context.bind(_Q.context.active(),G),B.getConfig().requestHook)B._callRequestHook(V,X);if(B.getConfig().responseHook)B._callResponseHook(V,G);B._headerCapture.server.captureRequestHeaders(V,(L)=>X.headers[L]);let D=!1;return G.on("close",()=>{if(D)return;B._onServerResponseFinish(X,G,V,E,K,$)}),G.on(kp.errorMonitor,(L)=>{D=!0,B._onServerResponseError(V,E,K,$,L)}),(0,h5.safeExecuteInTheMiddle)(()=>Q.apply(this,[J,...C]),(L)=>{if(L)throw(0,g0.setSpanWithError)(V,L,B._semconvStability),B._closeHttpSpan(V,_Q.SpanKind.SERVER,$,E,K),L})})}}_outgoingRequestFunction(A,Q){let B=this;return function(J,...C){if(!(0,g0.isValidOptionsType)(J))return Q.apply(this,[J,...C]);let X=typeof C[0]==="object"&&(typeof J==="string"||J instanceof nlB.URL)?C.shift():void 0,{method:G,invalidUrl:F,optionsParsed:W}=(0,g0.getRequestInfo)(B._diag,J,X);if(A==="http"&&vpA.lt(process.version,"9.0.0")&&W.protocol==="https:")return Q.apply(this,[W,...C]);if((0,h5.safeExecuteInTheMiddle)(()=>{var z,M;return(M=(z=B.getConfig()).ignoreOutgoingRequestHook)===null||M===void 0?void 0:M.call(z,W)},(z)=>{if(z!=null)B._diag.error("caught ignoreOutgoingRequestHook error: ",z)},!0))return Q.apply(this,[W,...C]);let{hostname:Z,port:U}=(0,g0.extractHostnameAndPort)(W),$=(0,g0.getOutgoingRequestAttributes)(W,{component:A,port:U,hostname:Z,hookAttributes:B._callStartSpanHook(W,B.getConfig().startOutgoingSpanHook)},B._semconvStability),E=(0,XK.hrTime)(),K=(0,g0.getOutgoingRequestMetricAttributes)($),I={[l0.ATTR_HTTP_REQUEST_METHOD]:$[l0.ATTR_HTTP_REQUEST_METHOD],[l0.ATTR_SERVER_ADDRESS]:$[l0.ATTR_SERVER_ADDRESS],[l0.ATTR_SERVER_PORT]:$[l0.ATTR_SERVER_PORT]};if($[l0.ATTR_HTTP_RESPONSE_STATUS_CODE])I[l0.ATTR_HTTP_RESPONSE_STATUS_CODE]=$[l0.ATTR_HTTP_RESPONSE_STATUS_CODE];if($[l0.ATTR_NETWORK_PROTOCOL_VERSION])I[l0.ATTR_NETWORK_PROTOCOL_VERSION]=$[l0.ATTR_NETWORK_PROTOCOL_VERSION];let V={kind:_Q.SpanKind.CLIENT,attributes:$},H=B._startHttpSpan(G,V),D=_Q.context.active(),L=_Q.trace.setSpan(D,H);if(!W.headers)W.headers={};else W.headers=Object.assign({},W.headers);return _Q.propagation.inject(L,W.headers),_Q.context.with(L,()=>{let z=C[C.length-1];if(typeof z==="function")C[C.length-1]=_Q.context.bind(D,z);let M=(0,h5.safeExecuteInTheMiddle)(()=>{if(F)return Q.apply(this,[J,...C]);else return Q.apply(this,[W,...C])},(N)=>{if(N)throw(0,g0.setSpanWithError)(H,N,B._semconvStability),B._closeHttpSpan(H,_Q.SpanKind.CLIENT,E,K,I),N});return B._diag.debug(`${A} instrumentation outgoingRequest`),_Q.context.bind(D,M),B._traceClientRequest(M,H,E,K,I)})}}_onServerResponseFinish(A,Q,B,Y,J,C){let X=(0,g0.getIncomingRequestAttributesOnResponse)(A,Q,this._semconvStability);Y=Object.assign(Y,(0,g0.getIncomingRequestMetricAttributesOnResponse)(X)),J=Object.assign(J,(0,g0.getIncomingStableRequestMetricAttributesOnResponse)(X)),this._headerCapture.server.captureResponseHeaders(B,(F)=>Q.getHeader(F)),B.setAttributes(X).setStatus({code:(0,g0.parseResponseStatus)(_Q.SpanKind.SERVER,Q.statusCode)});let G=X[l0.SEMATTRS_HTTP_ROUTE];if(G)B.updateName(`${A.method||"GET"} ${G}`);if(this.getConfig().applyCustomAttributesOnSpan)(0,h5.safeExecuteInTheMiddle)(()=>this.getConfig().applyCustomAttributesOnSpan(B,A,Q),()=>{},!0);this._closeHttpSpan(B,_Q.SpanKind.SERVER,C,Y,J)}_onServerResponseError(A,Q,B,Y,J){(0,g0.setSpanWithError)(A,J,this._semconvStability),this._closeHttpSpan(A,_Q.SpanKind.SERVER,Y,Q,B)}_startHttpSpan(A,Q,B=_Q.context.active()){let Y=Q.kind===_Q.SpanKind.CLIENT?this.getConfig().requireParentforOutgoingSpans:this.getConfig().requireParentforIncomingSpans,J,C=_Q.trace.getSpan(B);if(Y===!0&&C===void 0)J=_Q.trace.wrapSpanContext(_Q.INVALID_SPAN_CONTEXT);else if(Y===!0&&(C===null||C===void 0?void 0:C.spanContext().isRemote))J=C;else J=this.tracer.startSpan(A,Q,B);return this._spanNotEnded.add(J),J}_closeHttpSpan(A,Q,B,Y,J){if(!this._spanNotEnded.has(A))return;A.end(),this._spanNotEnded.delete(A);let C=(0,XK.hrTimeToMilliseconds)((0,XK.hrTimeDuration)(B,(0,XK.hrTime)()));if(Q===_Q.SpanKind.SERVER)this._recordServerDuration(C,Y,J);else if(Q===_Q.SpanKind.CLIENT)this._recordClientDuration(C,Y,J)}_callResponseHook(A,Q){(0,h5.safeExecuteInTheMiddle)(()=>this.getConfig().responseHook(A,Q),()=>{},!0)}_callRequestHook(A,Q){(0,h5.safeExecuteInTheMiddle)(()=>this.getConfig().requestHook(A,Q),()=>{},!0)}_callStartSpanHook(A,Q){if(typeof Q==="function")return(0,h5.safeExecuteInTheMiddle)(()=>Q(A),()=>{},!0)}_createHeaderCapture(){var A,Q,B,Y,J,C,X,G,F,W,Z,U;let $=this.getConfig();return{client:{captureRequestHeaders:(0,g0.headerCapture)("request",(B=(Q=(A=$.headersToSpanAttributes)===null||A===void 0?void 0:A.client)===null||Q===void 0?void 0:Q.requestHeaders)!==null&&B!==void 0?B:[]),captureResponseHeaders:(0,g0.headerCapture)("response",(C=(J=(Y=$.headersToSpanAttributes)===null||Y===void 0?void 0:Y.client)===null||J===void 0?void 0:J.responseHeaders)!==null&&C!==void 0?C:[])},server:{captureRequestHeaders:(0,g0.headerCapture)("request",(F=(G=(X=$.headersToSpanAttributes)===null||X===void 0?void 0:X.server)===null||G===void 0?void 0:G.requestHeaders)!==null&&F!==void 0?F:[]),captureResponseHeaders:(0,g0.headerCapture)("response",(U=(Z=(W=$.headersToSpanAttributes)===null||W===void 0?void 0:W.server)===null||Z===void 0?void 0:Z.responseHeaders)!==null&&U!==void 0?U:[])}}}}hpA.HttpInstrumentation=ypA});var fpA=R((_p)=>{Object.defineProperty(_p,"__esModule",{value:!0});_p.HttpInstrumentation=void 0;var rlB=xpA();Object.defineProperty(_p,"HttpInstrumentation",{enumerable:!0,get:function(){return rlB.HttpInstrumentation}})});var yp=R((bpA)=>{Object.defineProperty(bpA,"__esModule",{value:!0});bpA.createConstMap=void 0;function ApB(A){let Q={},B=A.length;for(let Y=0;Y{Object.defineProperty(SaA,"__esModule",{value:!0});SaA.SEMATTRS_NET_HOST_CARRIER_ICC=SaA.SEMATTRS_NET_HOST_CARRIER_MNC=SaA.SEMATTRS_NET_HOST_CARRIER_MCC=SaA.SEMATTRS_NET_HOST_CARRIER_NAME=SaA.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=SaA.SEMATTRS_NET_HOST_CONNECTION_TYPE=SaA.SEMATTRS_NET_HOST_NAME=SaA.SEMATTRS_NET_HOST_PORT=SaA.SEMATTRS_NET_HOST_IP=SaA.SEMATTRS_NET_PEER_NAME=SaA.SEMATTRS_NET_PEER_PORT=SaA.SEMATTRS_NET_PEER_IP=SaA.SEMATTRS_NET_TRANSPORT=SaA.SEMATTRS_FAAS_INVOKED_REGION=SaA.SEMATTRS_FAAS_INVOKED_PROVIDER=SaA.SEMATTRS_FAAS_INVOKED_NAME=SaA.SEMATTRS_FAAS_COLDSTART=SaA.SEMATTRS_FAAS_CRON=SaA.SEMATTRS_FAAS_TIME=SaA.SEMATTRS_FAAS_DOCUMENT_NAME=SaA.SEMATTRS_FAAS_DOCUMENT_TIME=SaA.SEMATTRS_FAAS_DOCUMENT_OPERATION=SaA.SEMATTRS_FAAS_DOCUMENT_COLLECTION=SaA.SEMATTRS_FAAS_EXECUTION=SaA.SEMATTRS_FAAS_TRIGGER=SaA.SEMATTRS_EXCEPTION_ESCAPED=SaA.SEMATTRS_EXCEPTION_STACKTRACE=SaA.SEMATTRS_EXCEPTION_MESSAGE=SaA.SEMATTRS_EXCEPTION_TYPE=SaA.SEMATTRS_DB_SQL_TABLE=SaA.SEMATTRS_DB_MONGODB_COLLECTION=SaA.SEMATTRS_DB_REDIS_DATABASE_INDEX=SaA.SEMATTRS_DB_HBASE_NAMESPACE=SaA.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=SaA.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=SaA.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=SaA.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=SaA.SEMATTRS_DB_CASSANDRA_TABLE=SaA.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=SaA.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=SaA.SEMATTRS_DB_CASSANDRA_KEYSPACE=SaA.SEMATTRS_DB_MSSQL_INSTANCE_NAME=SaA.SEMATTRS_DB_OPERATION=SaA.SEMATTRS_DB_STATEMENT=SaA.SEMATTRS_DB_NAME=SaA.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=SaA.SEMATTRS_DB_USER=SaA.SEMATTRS_DB_CONNECTION_STRING=SaA.SEMATTRS_DB_SYSTEM=SaA.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=void 0;SaA.SEMATTRS_MESSAGING_DESTINATION_KIND=SaA.SEMATTRS_MESSAGING_DESTINATION=SaA.SEMATTRS_MESSAGING_SYSTEM=SaA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=SaA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=SaA.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=SaA.SEMATTRS_AWS_DYNAMODB_COUNT=SaA.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=SaA.SEMATTRS_AWS_DYNAMODB_SEGMENT=SaA.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=SaA.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=SaA.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=SaA.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=SaA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=SaA.SEMATTRS_AWS_DYNAMODB_SELECT=SaA.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=SaA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=SaA.SEMATTRS_AWS_DYNAMODB_LIMIT=SaA.SEMATTRS_AWS_DYNAMODB_PROJECTION=SaA.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=SaA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=SaA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=SaA.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=SaA.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=SaA.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=SaA.SEMATTRS_HTTP_CLIENT_IP=SaA.SEMATTRS_HTTP_ROUTE=SaA.SEMATTRS_HTTP_SERVER_NAME=SaA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=SaA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=SaA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=SaA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=SaA.SEMATTRS_HTTP_USER_AGENT=SaA.SEMATTRS_HTTP_FLAVOR=SaA.SEMATTRS_HTTP_STATUS_CODE=SaA.SEMATTRS_HTTP_SCHEME=SaA.SEMATTRS_HTTP_HOST=SaA.SEMATTRS_HTTP_TARGET=SaA.SEMATTRS_HTTP_URL=SaA.SEMATTRS_HTTP_METHOD=SaA.SEMATTRS_CODE_LINENO=SaA.SEMATTRS_CODE_FILEPATH=SaA.SEMATTRS_CODE_NAMESPACE=SaA.SEMATTRS_CODE_FUNCTION=SaA.SEMATTRS_THREAD_NAME=SaA.SEMATTRS_THREAD_ID=SaA.SEMATTRS_ENDUSER_SCOPE=SaA.SEMATTRS_ENDUSER_ROLE=SaA.SEMATTRS_ENDUSER_ID=SaA.SEMATTRS_PEER_SERVICE=void 0;SaA.DBSYSTEMVALUES_FILEMAKER=SaA.DBSYSTEMVALUES_DERBY=SaA.DBSYSTEMVALUES_FIREBIRD=SaA.DBSYSTEMVALUES_ADABAS=SaA.DBSYSTEMVALUES_CACHE=SaA.DBSYSTEMVALUES_EDB=SaA.DBSYSTEMVALUES_FIRSTSQL=SaA.DBSYSTEMVALUES_INGRES=SaA.DBSYSTEMVALUES_HANADB=SaA.DBSYSTEMVALUES_MAXDB=SaA.DBSYSTEMVALUES_PROGRESS=SaA.DBSYSTEMVALUES_HSQLDB=SaA.DBSYSTEMVALUES_CLOUDSCAPE=SaA.DBSYSTEMVALUES_HIVE=SaA.DBSYSTEMVALUES_REDSHIFT=SaA.DBSYSTEMVALUES_POSTGRESQL=SaA.DBSYSTEMVALUES_DB2=SaA.DBSYSTEMVALUES_ORACLE=SaA.DBSYSTEMVALUES_MYSQL=SaA.DBSYSTEMVALUES_MSSQL=SaA.DBSYSTEMVALUES_OTHER_SQL=SaA.SemanticAttributes=SaA.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=SaA.SEMATTRS_MESSAGE_COMPRESSED_SIZE=SaA.SEMATTRS_MESSAGE_ID=SaA.SEMATTRS_MESSAGE_TYPE=SaA.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=SaA.SEMATTRS_RPC_JSONRPC_ERROR_CODE=SaA.SEMATTRS_RPC_JSONRPC_REQUEST_ID=SaA.SEMATTRS_RPC_JSONRPC_VERSION=SaA.SEMATTRS_RPC_GRPC_STATUS_CODE=SaA.SEMATTRS_RPC_METHOD=SaA.SEMATTRS_RPC_SERVICE=SaA.SEMATTRS_RPC_SYSTEM=SaA.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=SaA.SEMATTRS_MESSAGING_KAFKA_PARTITION=SaA.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=SaA.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=SaA.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=SaA.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=SaA.SEMATTRS_MESSAGING_CONSUMER_ID=SaA.SEMATTRS_MESSAGING_OPERATION=SaA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=SaA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=SaA.SEMATTRS_MESSAGING_CONVERSATION_ID=SaA.SEMATTRS_MESSAGING_MESSAGE_ID=SaA.SEMATTRS_MESSAGING_URL=SaA.SEMATTRS_MESSAGING_PROTOCOL_VERSION=SaA.SEMATTRS_MESSAGING_PROTOCOL=SaA.SEMATTRS_MESSAGING_TEMP_DESTINATION=void 0;SaA.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=SaA.FaasDocumentOperationValues=SaA.FAASDOCUMENTOPERATIONVALUES_DELETE=SaA.FAASDOCUMENTOPERATIONVALUES_EDIT=SaA.FAASDOCUMENTOPERATIONVALUES_INSERT=SaA.FaasTriggerValues=SaA.FAASTRIGGERVALUES_OTHER=SaA.FAASTRIGGERVALUES_TIMER=SaA.FAASTRIGGERVALUES_PUBSUB=SaA.FAASTRIGGERVALUES_HTTP=SaA.FAASTRIGGERVALUES_DATASOURCE=SaA.DbCassandraConsistencyLevelValues=SaA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=SaA.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=SaA.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=SaA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=SaA.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=SaA.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=SaA.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=SaA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=SaA.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=SaA.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=SaA.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=SaA.DbSystemValues=SaA.DBSYSTEMVALUES_COCKROACHDB=SaA.DBSYSTEMVALUES_MEMCACHED=SaA.DBSYSTEMVALUES_ELASTICSEARCH=SaA.DBSYSTEMVALUES_GEODE=SaA.DBSYSTEMVALUES_NEO4J=SaA.DBSYSTEMVALUES_DYNAMODB=SaA.DBSYSTEMVALUES_COSMOSDB=SaA.DBSYSTEMVALUES_COUCHDB=SaA.DBSYSTEMVALUES_COUCHBASE=SaA.DBSYSTEMVALUES_REDIS=SaA.DBSYSTEMVALUES_MONGODB=SaA.DBSYSTEMVALUES_HBASE=SaA.DBSYSTEMVALUES_CASSANDRA=SaA.DBSYSTEMVALUES_COLDFUSION=SaA.DBSYSTEMVALUES_H2=SaA.DBSYSTEMVALUES_VERTICA=SaA.DBSYSTEMVALUES_TERADATA=SaA.DBSYSTEMVALUES_SYBASE=SaA.DBSYSTEMVALUES_SQLITE=SaA.DBSYSTEMVALUES_POINTBASE=SaA.DBSYSTEMVALUES_PERVASIVE=SaA.DBSYSTEMVALUES_NETEZZA=SaA.DBSYSTEMVALUES_MARIADB=SaA.DBSYSTEMVALUES_INTERBASE=SaA.DBSYSTEMVALUES_INSTANTDB=SaA.DBSYSTEMVALUES_INFORMIX=void 0;SaA.MESSAGINGOPERATIONVALUES_RECEIVE=SaA.MessagingDestinationKindValues=SaA.MESSAGINGDESTINATIONKINDVALUES_TOPIC=SaA.MESSAGINGDESTINATIONKINDVALUES_QUEUE=SaA.HttpFlavorValues=SaA.HTTPFLAVORVALUES_QUIC=SaA.HTTPFLAVORVALUES_SPDY=SaA.HTTPFLAVORVALUES_HTTP_2_0=SaA.HTTPFLAVORVALUES_HTTP_1_1=SaA.HTTPFLAVORVALUES_HTTP_1_0=SaA.NetHostConnectionSubtypeValues=SaA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=SaA.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=SaA.NETHOSTCONNECTIONSUBTYPEVALUES_NR=SaA.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=SaA.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=SaA.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=SaA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=SaA.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=SaA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=SaA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=SaA.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=SaA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=SaA.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=SaA.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=SaA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=SaA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=SaA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=SaA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=SaA.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=SaA.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=SaA.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=SaA.NetHostConnectionTypeValues=SaA.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=SaA.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=SaA.NETHOSTCONNECTIONTYPEVALUES_CELL=SaA.NETHOSTCONNECTIONTYPEVALUES_WIRED=SaA.NETHOSTCONNECTIONTYPEVALUES_WIFI=SaA.NetTransportValues=SaA.NETTRANSPORTVALUES_OTHER=SaA.NETTRANSPORTVALUES_INPROC=SaA.NETTRANSPORTVALUES_PIPE=SaA.NETTRANSPORTVALUES_UNIX=SaA.NETTRANSPORTVALUES_IP=SaA.NETTRANSPORTVALUES_IP_UDP=SaA.NETTRANSPORTVALUES_IP_TCP=SaA.FaasInvokedProviderValues=SaA.FAASINVOKEDPROVIDERVALUES_GCP=SaA.FAASINVOKEDPROVIDERVALUES_AZURE=SaA.FAASINVOKEDPROVIDERVALUES_AWS=void 0;SaA.MessageTypeValues=SaA.MESSAGETYPEVALUES_RECEIVED=SaA.MESSAGETYPEVALUES_SENT=SaA.RpcGrpcStatusCodeValues=SaA.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=SaA.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=SaA.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=SaA.RPCGRPCSTATUSCODEVALUES_INTERNAL=SaA.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=SaA.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=SaA.RPCGRPCSTATUSCODEVALUES_ABORTED=SaA.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=SaA.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=SaA.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=SaA.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=SaA.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=SaA.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=SaA.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=SaA.RPCGRPCSTATUSCODEVALUES_UNKNOWN=SaA.RPCGRPCSTATUSCODEVALUES_CANCELLED=SaA.RPCGRPCSTATUSCODEVALUES_OK=SaA.MessagingOperationValues=SaA.MESSAGINGOPERATIONVALUES_PROCESS=void 0;var g5=yp(),upA="aws.lambda.invoked_arn",dpA="db.system",cpA="db.connection_string",lpA="db.user",ppA="db.jdbc.driver_classname",ipA="db.name",npA="db.statement",spA="db.operation",rpA="db.mssql.instance_name",apA="db.cassandra.keyspace",opA="db.cassandra.page_size",tpA="db.cassandra.consistency_level",epA="db.cassandra.table",AiA="db.cassandra.idempotence",QiA="db.cassandra.speculative_execution_count",BiA="db.cassandra.coordinator.id",YiA="db.cassandra.coordinator.dc",JiA="db.hbase.namespace",CiA="db.redis.database_index",XiA="db.mongodb.collection",GiA="db.sql.table",FiA="exception.type",WiA="exception.message",ZiA="exception.stacktrace",$iA="exception.escaped",UiA="faas.trigger",EiA="faas.execution",KiA="faas.document.collection",ViA="faas.document.operation",IiA="faas.document.time",HiA="faas.document.name",DiA="faas.time",NiA="faas.cron",LiA="faas.coldstart",qiA="faas.invoked_name",MiA="faas.invoked_provider",ziA="faas.invoked_region",RiA="net.transport",wiA="net.peer.ip",jiA="net.peer.port",OiA="net.peer.name",PiA="net.host.ip",TiA="net.host.port",SiA="net.host.name",kiA="net.host.connection.type",_iA="net.host.connection.subtype",viA="net.host.carrier.name",yiA="net.host.carrier.mcc",hiA="net.host.carrier.mnc",giA="net.host.carrier.icc",xiA="peer.service",fiA="enduser.id",biA="enduser.role",miA="enduser.scope",uiA="thread.id",diA="thread.name",ciA="code.function",liA="code.namespace",piA="code.filepath",iiA="code.lineno",niA="http.method",siA="http.url",riA="http.target",aiA="http.host",oiA="http.scheme",tiA="http.status_code",eiA="http.flavor",AnA="http.user_agent",QnA="http.request_content_length",BnA="http.request_content_length_uncompressed",YnA="http.response_content_length",JnA="http.response_content_length_uncompressed",CnA="http.server_name",XnA="http.route",GnA="http.client_ip",FnA="aws.dynamodb.table_names",WnA="aws.dynamodb.consumed_capacity",ZnA="aws.dynamodb.item_collection_metrics",$nA="aws.dynamodb.provisioned_read_capacity",UnA="aws.dynamodb.provisioned_write_capacity",EnA="aws.dynamodb.consistent_read",KnA="aws.dynamodb.projection",VnA="aws.dynamodb.limit",InA="aws.dynamodb.attributes_to_get",HnA="aws.dynamodb.index_name",DnA="aws.dynamodb.select",NnA="aws.dynamodb.global_secondary_indexes",LnA="aws.dynamodb.local_secondary_indexes",qnA="aws.dynamodb.exclusive_start_table",MnA="aws.dynamodb.table_count",znA="aws.dynamodb.scan_forward",RnA="aws.dynamodb.segment",wnA="aws.dynamodb.total_segments",jnA="aws.dynamodb.count",OnA="aws.dynamodb.scanned_count",PnA="aws.dynamodb.attribute_definitions",TnA="aws.dynamodb.global_secondary_index_updates",SnA="messaging.system",knA="messaging.destination",_nA="messaging.destination_kind",vnA="messaging.temp_destination",ynA="messaging.protocol",hnA="messaging.protocol_version",gnA="messaging.url",xnA="messaging.message_id",fnA="messaging.conversation_id",bnA="messaging.message_payload_size_bytes",mnA="messaging.message_payload_compressed_size_bytes",unA="messaging.operation",dnA="messaging.consumer_id",cnA="messaging.rabbitmq.routing_key",lnA="messaging.kafka.message_key",pnA="messaging.kafka.consumer_group",inA="messaging.kafka.client_id",nnA="messaging.kafka.partition",snA="messaging.kafka.tombstone",rnA="rpc.system",anA="rpc.service",onA="rpc.method",tnA="rpc.grpc.status_code",enA="rpc.jsonrpc.version",AsA="rpc.jsonrpc.request_id",QsA="rpc.jsonrpc.error_code",BsA="rpc.jsonrpc.error_message",YsA="message.type",JsA="message.id",CsA="message.compressed_size",XsA="message.uncompressed_size";SaA.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=upA;SaA.SEMATTRS_DB_SYSTEM=dpA;SaA.SEMATTRS_DB_CONNECTION_STRING=cpA;SaA.SEMATTRS_DB_USER=lpA;SaA.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=ppA;SaA.SEMATTRS_DB_NAME=ipA;SaA.SEMATTRS_DB_STATEMENT=npA;SaA.SEMATTRS_DB_OPERATION=spA;SaA.SEMATTRS_DB_MSSQL_INSTANCE_NAME=rpA;SaA.SEMATTRS_DB_CASSANDRA_KEYSPACE=apA;SaA.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=opA;SaA.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=tpA;SaA.SEMATTRS_DB_CASSANDRA_TABLE=epA;SaA.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=AiA;SaA.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=QiA;SaA.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=BiA;SaA.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=YiA;SaA.SEMATTRS_DB_HBASE_NAMESPACE=JiA;SaA.SEMATTRS_DB_REDIS_DATABASE_INDEX=CiA;SaA.SEMATTRS_DB_MONGODB_COLLECTION=XiA;SaA.SEMATTRS_DB_SQL_TABLE=GiA;SaA.SEMATTRS_EXCEPTION_TYPE=FiA;SaA.SEMATTRS_EXCEPTION_MESSAGE=WiA;SaA.SEMATTRS_EXCEPTION_STACKTRACE=ZiA;SaA.SEMATTRS_EXCEPTION_ESCAPED=$iA;SaA.SEMATTRS_FAAS_TRIGGER=UiA;SaA.SEMATTRS_FAAS_EXECUTION=EiA;SaA.SEMATTRS_FAAS_DOCUMENT_COLLECTION=KiA;SaA.SEMATTRS_FAAS_DOCUMENT_OPERATION=ViA;SaA.SEMATTRS_FAAS_DOCUMENT_TIME=IiA;SaA.SEMATTRS_FAAS_DOCUMENT_NAME=HiA;SaA.SEMATTRS_FAAS_TIME=DiA;SaA.SEMATTRS_FAAS_CRON=NiA;SaA.SEMATTRS_FAAS_COLDSTART=LiA;SaA.SEMATTRS_FAAS_INVOKED_NAME=qiA;SaA.SEMATTRS_FAAS_INVOKED_PROVIDER=MiA;SaA.SEMATTRS_FAAS_INVOKED_REGION=ziA;SaA.SEMATTRS_NET_TRANSPORT=RiA;SaA.SEMATTRS_NET_PEER_IP=wiA;SaA.SEMATTRS_NET_PEER_PORT=jiA;SaA.SEMATTRS_NET_PEER_NAME=OiA;SaA.SEMATTRS_NET_HOST_IP=PiA;SaA.SEMATTRS_NET_HOST_PORT=TiA;SaA.SEMATTRS_NET_HOST_NAME=SiA;SaA.SEMATTRS_NET_HOST_CONNECTION_TYPE=kiA;SaA.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=_iA;SaA.SEMATTRS_NET_HOST_CARRIER_NAME=viA;SaA.SEMATTRS_NET_HOST_CARRIER_MCC=yiA;SaA.SEMATTRS_NET_HOST_CARRIER_MNC=hiA;SaA.SEMATTRS_NET_HOST_CARRIER_ICC=giA;SaA.SEMATTRS_PEER_SERVICE=xiA;SaA.SEMATTRS_ENDUSER_ID=fiA;SaA.SEMATTRS_ENDUSER_ROLE=biA;SaA.SEMATTRS_ENDUSER_SCOPE=miA;SaA.SEMATTRS_THREAD_ID=uiA;SaA.SEMATTRS_THREAD_NAME=diA;SaA.SEMATTRS_CODE_FUNCTION=ciA;SaA.SEMATTRS_CODE_NAMESPACE=liA;SaA.SEMATTRS_CODE_FILEPATH=piA;SaA.SEMATTRS_CODE_LINENO=iiA;SaA.SEMATTRS_HTTP_METHOD=niA;SaA.SEMATTRS_HTTP_URL=siA;SaA.SEMATTRS_HTTP_TARGET=riA;SaA.SEMATTRS_HTTP_HOST=aiA;SaA.SEMATTRS_HTTP_SCHEME=oiA;SaA.SEMATTRS_HTTP_STATUS_CODE=tiA;SaA.SEMATTRS_HTTP_FLAVOR=eiA;SaA.SEMATTRS_HTTP_USER_AGENT=AnA;SaA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=QnA;SaA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=BnA;SaA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=YnA;SaA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=JnA;SaA.SEMATTRS_HTTP_SERVER_NAME=CnA;SaA.SEMATTRS_HTTP_ROUTE=XnA;SaA.SEMATTRS_HTTP_CLIENT_IP=GnA;SaA.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=FnA;SaA.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=WnA;SaA.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=ZnA;SaA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=$nA;SaA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=UnA;SaA.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=EnA;SaA.SEMATTRS_AWS_DYNAMODB_PROJECTION=KnA;SaA.SEMATTRS_AWS_DYNAMODB_LIMIT=VnA;SaA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=InA;SaA.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=HnA;SaA.SEMATTRS_AWS_DYNAMODB_SELECT=DnA;SaA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=NnA;SaA.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=LnA;SaA.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=qnA;SaA.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=MnA;SaA.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=znA;SaA.SEMATTRS_AWS_DYNAMODB_SEGMENT=RnA;SaA.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=wnA;SaA.SEMATTRS_AWS_DYNAMODB_COUNT=jnA;SaA.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=OnA;SaA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=PnA;SaA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=TnA;SaA.SEMATTRS_MESSAGING_SYSTEM=SnA;SaA.SEMATTRS_MESSAGING_DESTINATION=knA;SaA.SEMATTRS_MESSAGING_DESTINATION_KIND=_nA;SaA.SEMATTRS_MESSAGING_TEMP_DESTINATION=vnA;SaA.SEMATTRS_MESSAGING_PROTOCOL=ynA;SaA.SEMATTRS_MESSAGING_PROTOCOL_VERSION=hnA;SaA.SEMATTRS_MESSAGING_URL=gnA;SaA.SEMATTRS_MESSAGING_MESSAGE_ID=xnA;SaA.SEMATTRS_MESSAGING_CONVERSATION_ID=fnA;SaA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=bnA;SaA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=mnA;SaA.SEMATTRS_MESSAGING_OPERATION=unA;SaA.SEMATTRS_MESSAGING_CONSUMER_ID=dnA;SaA.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=cnA;SaA.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=lnA;SaA.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=pnA;SaA.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=inA;SaA.SEMATTRS_MESSAGING_KAFKA_PARTITION=nnA;SaA.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=snA;SaA.SEMATTRS_RPC_SYSTEM=rnA;SaA.SEMATTRS_RPC_SERVICE=anA;SaA.SEMATTRS_RPC_METHOD=onA;SaA.SEMATTRS_RPC_GRPC_STATUS_CODE=tnA;SaA.SEMATTRS_RPC_JSONRPC_VERSION=enA;SaA.SEMATTRS_RPC_JSONRPC_REQUEST_ID=AsA;SaA.SEMATTRS_RPC_JSONRPC_ERROR_CODE=QsA;SaA.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=BsA;SaA.SEMATTRS_MESSAGE_TYPE=YsA;SaA.SEMATTRS_MESSAGE_ID=JsA;SaA.SEMATTRS_MESSAGE_COMPRESSED_SIZE=CsA;SaA.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=XsA;SaA.SemanticAttributes=(0,g5.createConstMap)([upA,dpA,cpA,lpA,ppA,ipA,npA,spA,rpA,apA,opA,tpA,epA,AiA,QiA,BiA,YiA,JiA,CiA,XiA,GiA,FiA,WiA,ZiA,$iA,UiA,EiA,KiA,ViA,IiA,HiA,DiA,NiA,LiA,qiA,MiA,ziA,RiA,wiA,jiA,OiA,PiA,TiA,SiA,kiA,_iA,viA,yiA,hiA,giA,xiA,fiA,biA,miA,uiA,diA,ciA,liA,piA,iiA,niA,siA,riA,aiA,oiA,tiA,eiA,AnA,QnA,BnA,YnA,JnA,CnA,XnA,GnA,FnA,WnA,ZnA,$nA,UnA,EnA,KnA,VnA,InA,HnA,DnA,NnA,LnA,qnA,MnA,znA,RnA,wnA,jnA,OnA,PnA,TnA,SnA,knA,_nA,vnA,ynA,hnA,gnA,xnA,fnA,bnA,mnA,unA,dnA,cnA,lnA,pnA,inA,nnA,snA,rnA,anA,onA,tnA,enA,AsA,QsA,BsA,YsA,JsA,CsA,XsA]);var GsA="other_sql",FsA="mssql",WsA="mysql",ZsA="oracle",$sA="db2",UsA="postgresql",EsA="redshift",KsA="hive",VsA="cloudscape",IsA="hsqldb",HsA="progress",DsA="maxdb",NsA="hanadb",LsA="ingres",qsA="firstsql",MsA="edb",zsA="cache",RsA="adabas",wsA="firebird",jsA="derby",OsA="filemaker",PsA="informix",TsA="instantdb",SsA="interbase",ksA="mariadb",_sA="netezza",vsA="pervasive",ysA="pointbase",hsA="sqlite",gsA="sybase",xsA="teradata",fsA="vertica",bsA="h2",msA="coldfusion",usA="cassandra",dsA="hbase",csA="mongodb",lsA="redis",psA="couchbase",isA="couchdb",nsA="cosmosdb",ssA="dynamodb",rsA="neo4j",asA="geode",osA="elasticsearch",tsA="memcached",esA="cockroachdb";SaA.DBSYSTEMVALUES_OTHER_SQL=GsA;SaA.DBSYSTEMVALUES_MSSQL=FsA;SaA.DBSYSTEMVALUES_MYSQL=WsA;SaA.DBSYSTEMVALUES_ORACLE=ZsA;SaA.DBSYSTEMVALUES_DB2=$sA;SaA.DBSYSTEMVALUES_POSTGRESQL=UsA;SaA.DBSYSTEMVALUES_REDSHIFT=EsA;SaA.DBSYSTEMVALUES_HIVE=KsA;SaA.DBSYSTEMVALUES_CLOUDSCAPE=VsA;SaA.DBSYSTEMVALUES_HSQLDB=IsA;SaA.DBSYSTEMVALUES_PROGRESS=HsA;SaA.DBSYSTEMVALUES_MAXDB=DsA;SaA.DBSYSTEMVALUES_HANADB=NsA;SaA.DBSYSTEMVALUES_INGRES=LsA;SaA.DBSYSTEMVALUES_FIRSTSQL=qsA;SaA.DBSYSTEMVALUES_EDB=MsA;SaA.DBSYSTEMVALUES_CACHE=zsA;SaA.DBSYSTEMVALUES_ADABAS=RsA;SaA.DBSYSTEMVALUES_FIREBIRD=wsA;SaA.DBSYSTEMVALUES_DERBY=jsA;SaA.DBSYSTEMVALUES_FILEMAKER=OsA;SaA.DBSYSTEMVALUES_INFORMIX=PsA;SaA.DBSYSTEMVALUES_INSTANTDB=TsA;SaA.DBSYSTEMVALUES_INTERBASE=SsA;SaA.DBSYSTEMVALUES_MARIADB=ksA;SaA.DBSYSTEMVALUES_NETEZZA=_sA;SaA.DBSYSTEMVALUES_PERVASIVE=vsA;SaA.DBSYSTEMVALUES_POINTBASE=ysA;SaA.DBSYSTEMVALUES_SQLITE=hsA;SaA.DBSYSTEMVALUES_SYBASE=gsA;SaA.DBSYSTEMVALUES_TERADATA=xsA;SaA.DBSYSTEMVALUES_VERTICA=fsA;SaA.DBSYSTEMVALUES_H2=bsA;SaA.DBSYSTEMVALUES_COLDFUSION=msA;SaA.DBSYSTEMVALUES_CASSANDRA=usA;SaA.DBSYSTEMVALUES_HBASE=dsA;SaA.DBSYSTEMVALUES_MONGODB=csA;SaA.DBSYSTEMVALUES_REDIS=lsA;SaA.DBSYSTEMVALUES_COUCHBASE=psA;SaA.DBSYSTEMVALUES_COUCHDB=isA;SaA.DBSYSTEMVALUES_COSMOSDB=nsA;SaA.DBSYSTEMVALUES_DYNAMODB=ssA;SaA.DBSYSTEMVALUES_NEO4J=rsA;SaA.DBSYSTEMVALUES_GEODE=asA;SaA.DBSYSTEMVALUES_ELASTICSEARCH=osA;SaA.DBSYSTEMVALUES_MEMCACHED=tsA;SaA.DBSYSTEMVALUES_COCKROACHDB=esA;SaA.DbSystemValues=(0,g5.createConstMap)([GsA,FsA,WsA,ZsA,$sA,UsA,EsA,KsA,VsA,IsA,HsA,DsA,NsA,LsA,qsA,MsA,zsA,RsA,wsA,jsA,OsA,PsA,TsA,SsA,ksA,_sA,vsA,ysA,hsA,gsA,xsA,fsA,bsA,msA,usA,dsA,csA,lsA,psA,isA,nsA,ssA,rsA,asA,osA,tsA,esA]);var ArA="all",QrA="each_quorum",BrA="quorum",YrA="local_quorum",JrA="one",CrA="two",XrA="three",GrA="local_one",FrA="any",WrA="serial",ZrA="local_serial";SaA.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=ArA;SaA.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=QrA;SaA.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=BrA;SaA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=YrA;SaA.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=JrA;SaA.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=CrA;SaA.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=XrA;SaA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=GrA;SaA.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=FrA;SaA.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=WrA;SaA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=ZrA;SaA.DbCassandraConsistencyLevelValues=(0,g5.createConstMap)([ArA,QrA,BrA,YrA,JrA,CrA,XrA,GrA,FrA,WrA,ZrA]);var $rA="datasource",UrA="http",ErA="pubsub",KrA="timer",VrA="other";SaA.FAASTRIGGERVALUES_DATASOURCE=$rA;SaA.FAASTRIGGERVALUES_HTTP=UrA;SaA.FAASTRIGGERVALUES_PUBSUB=ErA;SaA.FAASTRIGGERVALUES_TIMER=KrA;SaA.FAASTRIGGERVALUES_OTHER=VrA;SaA.FaasTriggerValues=(0,g5.createConstMap)([$rA,UrA,ErA,KrA,VrA]);var IrA="insert",HrA="edit",DrA="delete";SaA.FAASDOCUMENTOPERATIONVALUES_INSERT=IrA;SaA.FAASDOCUMENTOPERATIONVALUES_EDIT=HrA;SaA.FAASDOCUMENTOPERATIONVALUES_DELETE=DrA;SaA.FaasDocumentOperationValues=(0,g5.createConstMap)([IrA,HrA,DrA]);var NrA="alibaba_cloud",LrA="aws",qrA="azure",MrA="gcp";SaA.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=NrA;SaA.FAASINVOKEDPROVIDERVALUES_AWS=LrA;SaA.FAASINVOKEDPROVIDERVALUES_AZURE=qrA;SaA.FAASINVOKEDPROVIDERVALUES_GCP=MrA;SaA.FaasInvokedProviderValues=(0,g5.createConstMap)([NrA,LrA,qrA,MrA]);var zrA="ip_tcp",RrA="ip_udp",wrA="ip",jrA="unix",OrA="pipe",PrA="inproc",TrA="other";SaA.NETTRANSPORTVALUES_IP_TCP=zrA;SaA.NETTRANSPORTVALUES_IP_UDP=RrA;SaA.NETTRANSPORTVALUES_IP=wrA;SaA.NETTRANSPORTVALUES_UNIX=jrA;SaA.NETTRANSPORTVALUES_PIPE=OrA;SaA.NETTRANSPORTVALUES_INPROC=PrA;SaA.NETTRANSPORTVALUES_OTHER=TrA;SaA.NetTransportValues=(0,g5.createConstMap)([zrA,RrA,wrA,jrA,OrA,PrA,TrA]);var SrA="wifi",krA="wired",_rA="cell",vrA="unavailable",yrA="unknown";SaA.NETHOSTCONNECTIONTYPEVALUES_WIFI=SrA;SaA.NETHOSTCONNECTIONTYPEVALUES_WIRED=krA;SaA.NETHOSTCONNECTIONTYPEVALUES_CELL=_rA;SaA.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=vrA;SaA.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=yrA;SaA.NetHostConnectionTypeValues=(0,g5.createConstMap)([SrA,krA,_rA,vrA,yrA]);var hrA="gprs",grA="edge",xrA="umts",frA="cdma",brA="evdo_0",mrA="evdo_a",urA="cdma2000_1xrtt",drA="hsdpa",crA="hsupa",lrA="hspa",prA="iden",irA="evdo_b",nrA="lte",srA="ehrpd",rrA="hspap",arA="gsm",orA="td_scdma",trA="iwlan",erA="nr",AaA="nrnsa",QaA="lte_ca";SaA.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=hrA;SaA.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=grA;SaA.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=xrA;SaA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=frA;SaA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=brA;SaA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=mrA;SaA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=urA;SaA.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=drA;SaA.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=crA;SaA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=lrA;SaA.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=prA;SaA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=irA;SaA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=nrA;SaA.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=srA;SaA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=rrA;SaA.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=arA;SaA.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=orA;SaA.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=trA;SaA.NETHOSTCONNECTIONSUBTYPEVALUES_NR=erA;SaA.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=AaA;SaA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=QaA;SaA.NetHostConnectionSubtypeValues=(0,g5.createConstMap)([hrA,grA,xrA,frA,brA,mrA,urA,drA,crA,lrA,prA,irA,nrA,srA,rrA,arA,orA,trA,erA,AaA,QaA]);var BaA="1.0",YaA="1.1",JaA="2.0",CaA="SPDY",XaA="QUIC";SaA.HTTPFLAVORVALUES_HTTP_1_0=BaA;SaA.HTTPFLAVORVALUES_HTTP_1_1=YaA;SaA.HTTPFLAVORVALUES_HTTP_2_0=JaA;SaA.HTTPFLAVORVALUES_SPDY=CaA;SaA.HTTPFLAVORVALUES_QUIC=XaA;SaA.HttpFlavorValues={HTTP_1_0:BaA,HTTP_1_1:YaA,HTTP_2_0:JaA,SPDY:CaA,QUIC:XaA};var GaA="queue",FaA="topic";SaA.MESSAGINGDESTINATIONKINDVALUES_QUEUE=GaA;SaA.MESSAGINGDESTINATIONKINDVALUES_TOPIC=FaA;SaA.MessagingDestinationKindValues=(0,g5.createConstMap)([GaA,FaA]);var WaA="receive",ZaA="process";SaA.MESSAGINGOPERATIONVALUES_RECEIVE=WaA;SaA.MESSAGINGOPERATIONVALUES_PROCESS=ZaA;SaA.MessagingOperationValues=(0,g5.createConstMap)([WaA,ZaA]);var $aA=0,UaA=1,EaA=2,KaA=3,VaA=4,IaA=5,HaA=6,DaA=7,NaA=8,LaA=9,qaA=10,MaA=11,zaA=12,RaA=13,waA=14,jaA=15,OaA=16;SaA.RPCGRPCSTATUSCODEVALUES_OK=$aA;SaA.RPCGRPCSTATUSCODEVALUES_CANCELLED=UaA;SaA.RPCGRPCSTATUSCODEVALUES_UNKNOWN=EaA;SaA.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=KaA;SaA.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=VaA;SaA.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=IaA;SaA.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=HaA;SaA.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=DaA;SaA.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=NaA;SaA.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=LaA;SaA.RPCGRPCSTATUSCODEVALUES_ABORTED=qaA;SaA.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=MaA;SaA.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=zaA;SaA.RPCGRPCSTATUSCODEVALUES_INTERNAL=RaA;SaA.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=waA;SaA.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=jaA;SaA.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=OaA;SaA.RpcGrpcStatusCodeValues={OK:$aA,CANCELLED:UaA,UNKNOWN:EaA,INVALID_ARGUMENT:KaA,DEADLINE_EXCEEDED:VaA,NOT_FOUND:IaA,ALREADY_EXISTS:HaA,PERMISSION_DENIED:DaA,RESOURCE_EXHAUSTED:NaA,FAILED_PRECONDITION:LaA,ABORTED:qaA,OUT_OF_RANGE:MaA,UNIMPLEMENTED:zaA,INTERNAL:RaA,UNAVAILABLE:waA,DATA_LOSS:jaA,UNAUTHENTICATED:OaA};var PaA="SENT",TaA="RECEIVED";SaA.MESSAGETYPEVALUES_SENT=PaA;SaA.MESSAGETYPEVALUES_RECEIVED=TaA;SaA.MessageTypeValues=(0,g5.createConstMap)([PaA,TaA])});var faA=R((Q$)=>{var trB=Q$&&Q$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;var J=Object.getOwnPropertyDescriptor(Q,B);if(!J||("get"in J?!Q.__esModule:J.writable||J.configurable))J={enumerable:!0,get:function(){return Q[B]}};Object.defineProperty(A,Y,J)}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),erB=Q$&&Q$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))trB(Q,A,B)};Object.defineProperty(Q$,"__esModule",{value:!0});erB(xaA(),Q$)});var EeA=R((WeA)=>{Object.defineProperty(WeA,"__esModule",{value:!0});WeA.SEMRESATTRS_K8S_STATEFULSET_NAME=WeA.SEMRESATTRS_K8S_STATEFULSET_UID=WeA.SEMRESATTRS_K8S_DEPLOYMENT_NAME=WeA.SEMRESATTRS_K8S_DEPLOYMENT_UID=WeA.SEMRESATTRS_K8S_REPLICASET_NAME=WeA.SEMRESATTRS_K8S_REPLICASET_UID=WeA.SEMRESATTRS_K8S_CONTAINER_NAME=WeA.SEMRESATTRS_K8S_POD_NAME=WeA.SEMRESATTRS_K8S_POD_UID=WeA.SEMRESATTRS_K8S_NAMESPACE_NAME=WeA.SEMRESATTRS_K8S_NODE_UID=WeA.SEMRESATTRS_K8S_NODE_NAME=WeA.SEMRESATTRS_K8S_CLUSTER_NAME=WeA.SEMRESATTRS_HOST_IMAGE_VERSION=WeA.SEMRESATTRS_HOST_IMAGE_ID=WeA.SEMRESATTRS_HOST_IMAGE_NAME=WeA.SEMRESATTRS_HOST_ARCH=WeA.SEMRESATTRS_HOST_TYPE=WeA.SEMRESATTRS_HOST_NAME=WeA.SEMRESATTRS_HOST_ID=WeA.SEMRESATTRS_FAAS_MAX_MEMORY=WeA.SEMRESATTRS_FAAS_INSTANCE=WeA.SEMRESATTRS_FAAS_VERSION=WeA.SEMRESATTRS_FAAS_ID=WeA.SEMRESATTRS_FAAS_NAME=WeA.SEMRESATTRS_DEVICE_MODEL_NAME=WeA.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=WeA.SEMRESATTRS_DEVICE_ID=WeA.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=WeA.SEMRESATTRS_CONTAINER_IMAGE_TAG=WeA.SEMRESATTRS_CONTAINER_IMAGE_NAME=WeA.SEMRESATTRS_CONTAINER_RUNTIME=WeA.SEMRESATTRS_CONTAINER_ID=WeA.SEMRESATTRS_CONTAINER_NAME=WeA.SEMRESATTRS_AWS_LOG_STREAM_ARNS=WeA.SEMRESATTRS_AWS_LOG_STREAM_NAMES=WeA.SEMRESATTRS_AWS_LOG_GROUP_ARNS=WeA.SEMRESATTRS_AWS_LOG_GROUP_NAMES=WeA.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=WeA.SEMRESATTRS_AWS_ECS_TASK_REVISION=WeA.SEMRESATTRS_AWS_ECS_TASK_FAMILY=WeA.SEMRESATTRS_AWS_ECS_TASK_ARN=WeA.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=WeA.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=WeA.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=WeA.SEMRESATTRS_CLOUD_PLATFORM=WeA.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=WeA.SEMRESATTRS_CLOUD_REGION=WeA.SEMRESATTRS_CLOUD_ACCOUNT_ID=WeA.SEMRESATTRS_CLOUD_PROVIDER=void 0;WeA.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=WeA.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=WeA.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=WeA.CLOUDPLATFORMVALUES_AZURE_AKS=WeA.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=WeA.CLOUDPLATFORMVALUES_AZURE_VM=WeA.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=WeA.CLOUDPLATFORMVALUES_AWS_LAMBDA=WeA.CLOUDPLATFORMVALUES_AWS_EKS=WeA.CLOUDPLATFORMVALUES_AWS_ECS=WeA.CLOUDPLATFORMVALUES_AWS_EC2=WeA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=WeA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=WeA.CloudProviderValues=WeA.CLOUDPROVIDERVALUES_GCP=WeA.CLOUDPROVIDERVALUES_AZURE=WeA.CLOUDPROVIDERVALUES_AWS=WeA.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=WeA.SemanticResourceAttributes=WeA.SEMRESATTRS_WEBENGINE_DESCRIPTION=WeA.SEMRESATTRS_WEBENGINE_VERSION=WeA.SEMRESATTRS_WEBENGINE_NAME=WeA.SEMRESATTRS_TELEMETRY_AUTO_VERSION=WeA.SEMRESATTRS_TELEMETRY_SDK_VERSION=WeA.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=WeA.SEMRESATTRS_TELEMETRY_SDK_NAME=WeA.SEMRESATTRS_SERVICE_VERSION=WeA.SEMRESATTRS_SERVICE_INSTANCE_ID=WeA.SEMRESATTRS_SERVICE_NAMESPACE=WeA.SEMRESATTRS_SERVICE_NAME=WeA.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=WeA.SEMRESATTRS_PROCESS_RUNTIME_VERSION=WeA.SEMRESATTRS_PROCESS_RUNTIME_NAME=WeA.SEMRESATTRS_PROCESS_OWNER=WeA.SEMRESATTRS_PROCESS_COMMAND_ARGS=WeA.SEMRESATTRS_PROCESS_COMMAND_LINE=WeA.SEMRESATTRS_PROCESS_COMMAND=WeA.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=WeA.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=WeA.SEMRESATTRS_PROCESS_PID=WeA.SEMRESATTRS_OS_VERSION=WeA.SEMRESATTRS_OS_NAME=WeA.SEMRESATTRS_OS_DESCRIPTION=WeA.SEMRESATTRS_OS_TYPE=WeA.SEMRESATTRS_K8S_CRONJOB_NAME=WeA.SEMRESATTRS_K8S_CRONJOB_UID=WeA.SEMRESATTRS_K8S_JOB_NAME=WeA.SEMRESATTRS_K8S_JOB_UID=WeA.SEMRESATTRS_K8S_DAEMONSET_NAME=WeA.SEMRESATTRS_K8S_DAEMONSET_UID=void 0;WeA.TelemetrySdkLanguageValues=WeA.TELEMETRYSDKLANGUAGEVALUES_WEBJS=WeA.TELEMETRYSDKLANGUAGEVALUES_RUBY=WeA.TELEMETRYSDKLANGUAGEVALUES_PYTHON=WeA.TELEMETRYSDKLANGUAGEVALUES_PHP=WeA.TELEMETRYSDKLANGUAGEVALUES_NODEJS=WeA.TELEMETRYSDKLANGUAGEVALUES_JAVA=WeA.TELEMETRYSDKLANGUAGEVALUES_GO=WeA.TELEMETRYSDKLANGUAGEVALUES_ERLANG=WeA.TELEMETRYSDKLANGUAGEVALUES_DOTNET=WeA.TELEMETRYSDKLANGUAGEVALUES_CPP=WeA.OsTypeValues=WeA.OSTYPEVALUES_Z_OS=WeA.OSTYPEVALUES_SOLARIS=WeA.OSTYPEVALUES_AIX=WeA.OSTYPEVALUES_HPUX=WeA.OSTYPEVALUES_DRAGONFLYBSD=WeA.OSTYPEVALUES_OPENBSD=WeA.OSTYPEVALUES_NETBSD=WeA.OSTYPEVALUES_FREEBSD=WeA.OSTYPEVALUES_DARWIN=WeA.OSTYPEVALUES_LINUX=WeA.OSTYPEVALUES_WINDOWS=WeA.HostArchValues=WeA.HOSTARCHVALUES_X86=WeA.HOSTARCHVALUES_PPC64=WeA.HOSTARCHVALUES_PPC32=WeA.HOSTARCHVALUES_IA64=WeA.HOSTARCHVALUES_ARM64=WeA.HOSTARCHVALUES_ARM32=WeA.HOSTARCHVALUES_AMD64=WeA.AwsEcsLaunchtypeValues=WeA.AWSECSLAUNCHTYPEVALUES_FARGATE=WeA.AWSECSLAUNCHTYPEVALUES_EC2=WeA.CloudPlatformValues=WeA.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=WeA.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=WeA.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=WeA.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=void 0;var B$=yp(),baA="cloud.provider",maA="cloud.account.id",uaA="cloud.region",daA="cloud.availability_zone",caA="cloud.platform",laA="aws.ecs.container.arn",paA="aws.ecs.cluster.arn",iaA="aws.ecs.launchtype",naA="aws.ecs.task.arn",saA="aws.ecs.task.family",raA="aws.ecs.task.revision",aaA="aws.eks.cluster.arn",oaA="aws.log.group.names",taA="aws.log.group.arns",eaA="aws.log.stream.names",AoA="aws.log.stream.arns",QoA="container.name",BoA="container.id",YoA="container.runtime",JoA="container.image.name",CoA="container.image.tag",XoA="deployment.environment",GoA="device.id",FoA="device.model.identifier",WoA="device.model.name",ZoA="faas.name",$oA="faas.id",UoA="faas.version",EoA="faas.instance",KoA="faas.max_memory",VoA="host.id",IoA="host.name",HoA="host.type",DoA="host.arch",NoA="host.image.name",LoA="host.image.id",qoA="host.image.version",MoA="k8s.cluster.name",zoA="k8s.node.name",RoA="k8s.node.uid",woA="k8s.namespace.name",joA="k8s.pod.uid",OoA="k8s.pod.name",PoA="k8s.container.name",ToA="k8s.replicaset.uid",SoA="k8s.replicaset.name",koA="k8s.deployment.uid",_oA="k8s.deployment.name",voA="k8s.statefulset.uid",yoA="k8s.statefulset.name",hoA="k8s.daemonset.uid",goA="k8s.daemonset.name",xoA="k8s.job.uid",foA="k8s.job.name",boA="k8s.cronjob.uid",moA="k8s.cronjob.name",uoA="os.type",doA="os.description",coA="os.name",loA="os.version",poA="process.pid",ioA="process.executable.name",noA="process.executable.path",soA="process.command",roA="process.command_line",aoA="process.command_args",ooA="process.owner",toA="process.runtime.name",eoA="process.runtime.version",AtA="process.runtime.description",QtA="service.name",BtA="service.namespace",YtA="service.instance.id",JtA="service.version",CtA="telemetry.sdk.name",XtA="telemetry.sdk.language",GtA="telemetry.sdk.version",FtA="telemetry.auto.version",WtA="webengine.name",ZtA="webengine.version",$tA="webengine.description";WeA.SEMRESATTRS_CLOUD_PROVIDER=baA;WeA.SEMRESATTRS_CLOUD_ACCOUNT_ID=maA;WeA.SEMRESATTRS_CLOUD_REGION=uaA;WeA.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=daA;WeA.SEMRESATTRS_CLOUD_PLATFORM=caA;WeA.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=laA;WeA.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=paA;WeA.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=iaA;WeA.SEMRESATTRS_AWS_ECS_TASK_ARN=naA;WeA.SEMRESATTRS_AWS_ECS_TASK_FAMILY=saA;WeA.SEMRESATTRS_AWS_ECS_TASK_REVISION=raA;WeA.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=aaA;WeA.SEMRESATTRS_AWS_LOG_GROUP_NAMES=oaA;WeA.SEMRESATTRS_AWS_LOG_GROUP_ARNS=taA;WeA.SEMRESATTRS_AWS_LOG_STREAM_NAMES=eaA;WeA.SEMRESATTRS_AWS_LOG_STREAM_ARNS=AoA;WeA.SEMRESATTRS_CONTAINER_NAME=QoA;WeA.SEMRESATTRS_CONTAINER_ID=BoA;WeA.SEMRESATTRS_CONTAINER_RUNTIME=YoA;WeA.SEMRESATTRS_CONTAINER_IMAGE_NAME=JoA;WeA.SEMRESATTRS_CONTAINER_IMAGE_TAG=CoA;WeA.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=XoA;WeA.SEMRESATTRS_DEVICE_ID=GoA;WeA.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=FoA;WeA.SEMRESATTRS_DEVICE_MODEL_NAME=WoA;WeA.SEMRESATTRS_FAAS_NAME=ZoA;WeA.SEMRESATTRS_FAAS_ID=$oA;WeA.SEMRESATTRS_FAAS_VERSION=UoA;WeA.SEMRESATTRS_FAAS_INSTANCE=EoA;WeA.SEMRESATTRS_FAAS_MAX_MEMORY=KoA;WeA.SEMRESATTRS_HOST_ID=VoA;WeA.SEMRESATTRS_HOST_NAME=IoA;WeA.SEMRESATTRS_HOST_TYPE=HoA;WeA.SEMRESATTRS_HOST_ARCH=DoA;WeA.SEMRESATTRS_HOST_IMAGE_NAME=NoA;WeA.SEMRESATTRS_HOST_IMAGE_ID=LoA;WeA.SEMRESATTRS_HOST_IMAGE_VERSION=qoA;WeA.SEMRESATTRS_K8S_CLUSTER_NAME=MoA;WeA.SEMRESATTRS_K8S_NODE_NAME=zoA;WeA.SEMRESATTRS_K8S_NODE_UID=RoA;WeA.SEMRESATTRS_K8S_NAMESPACE_NAME=woA;WeA.SEMRESATTRS_K8S_POD_UID=joA;WeA.SEMRESATTRS_K8S_POD_NAME=OoA;WeA.SEMRESATTRS_K8S_CONTAINER_NAME=PoA;WeA.SEMRESATTRS_K8S_REPLICASET_UID=ToA;WeA.SEMRESATTRS_K8S_REPLICASET_NAME=SoA;WeA.SEMRESATTRS_K8S_DEPLOYMENT_UID=koA;WeA.SEMRESATTRS_K8S_DEPLOYMENT_NAME=_oA;WeA.SEMRESATTRS_K8S_STATEFULSET_UID=voA;WeA.SEMRESATTRS_K8S_STATEFULSET_NAME=yoA;WeA.SEMRESATTRS_K8S_DAEMONSET_UID=hoA;WeA.SEMRESATTRS_K8S_DAEMONSET_NAME=goA;WeA.SEMRESATTRS_K8S_JOB_UID=xoA;WeA.SEMRESATTRS_K8S_JOB_NAME=foA;WeA.SEMRESATTRS_K8S_CRONJOB_UID=boA;WeA.SEMRESATTRS_K8S_CRONJOB_NAME=moA;WeA.SEMRESATTRS_OS_TYPE=uoA;WeA.SEMRESATTRS_OS_DESCRIPTION=doA;WeA.SEMRESATTRS_OS_NAME=coA;WeA.SEMRESATTRS_OS_VERSION=loA;WeA.SEMRESATTRS_PROCESS_PID=poA;WeA.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=ioA;WeA.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=noA;WeA.SEMRESATTRS_PROCESS_COMMAND=soA;WeA.SEMRESATTRS_PROCESS_COMMAND_LINE=roA;WeA.SEMRESATTRS_PROCESS_COMMAND_ARGS=aoA;WeA.SEMRESATTRS_PROCESS_OWNER=ooA;WeA.SEMRESATTRS_PROCESS_RUNTIME_NAME=toA;WeA.SEMRESATTRS_PROCESS_RUNTIME_VERSION=eoA;WeA.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=AtA;WeA.SEMRESATTRS_SERVICE_NAME=QtA;WeA.SEMRESATTRS_SERVICE_NAMESPACE=BtA;WeA.SEMRESATTRS_SERVICE_INSTANCE_ID=YtA;WeA.SEMRESATTRS_SERVICE_VERSION=JtA;WeA.SEMRESATTRS_TELEMETRY_SDK_NAME=CtA;WeA.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=XtA;WeA.SEMRESATTRS_TELEMETRY_SDK_VERSION=GtA;WeA.SEMRESATTRS_TELEMETRY_AUTO_VERSION=FtA;WeA.SEMRESATTRS_WEBENGINE_NAME=WtA;WeA.SEMRESATTRS_WEBENGINE_VERSION=ZtA;WeA.SEMRESATTRS_WEBENGINE_DESCRIPTION=$tA;WeA.SemanticResourceAttributes=(0,B$.createConstMap)([baA,maA,uaA,daA,caA,laA,paA,iaA,naA,saA,raA,aaA,oaA,taA,eaA,AoA,QoA,BoA,YoA,JoA,CoA,XoA,GoA,FoA,WoA,ZoA,$oA,UoA,EoA,KoA,VoA,IoA,HoA,DoA,NoA,LoA,qoA,MoA,zoA,RoA,woA,joA,OoA,PoA,ToA,SoA,koA,_oA,voA,yoA,hoA,goA,xoA,foA,boA,moA,uoA,doA,coA,loA,poA,ioA,noA,soA,roA,aoA,ooA,toA,eoA,AtA,QtA,BtA,YtA,JtA,CtA,XtA,GtA,FtA,WtA,ZtA,$tA]);var UtA="alibaba_cloud",EtA="aws",KtA="azure",VtA="gcp";WeA.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=UtA;WeA.CLOUDPROVIDERVALUES_AWS=EtA;WeA.CLOUDPROVIDERVALUES_AZURE=KtA;WeA.CLOUDPROVIDERVALUES_GCP=VtA;WeA.CloudProviderValues=(0,B$.createConstMap)([UtA,EtA,KtA,VtA]);var ItA="alibaba_cloud_ecs",HtA="alibaba_cloud_fc",DtA="aws_ec2",NtA="aws_ecs",LtA="aws_eks",qtA="aws_lambda",MtA="aws_elastic_beanstalk",ztA="azure_vm",RtA="azure_container_instances",wtA="azure_aks",jtA="azure_functions",OtA="azure_app_service",PtA="gcp_compute_engine",TtA="gcp_cloud_run",StA="gcp_kubernetes_engine",ktA="gcp_cloud_functions",_tA="gcp_app_engine";WeA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=ItA;WeA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=HtA;WeA.CLOUDPLATFORMVALUES_AWS_EC2=DtA;WeA.CLOUDPLATFORMVALUES_AWS_ECS=NtA;WeA.CLOUDPLATFORMVALUES_AWS_EKS=LtA;WeA.CLOUDPLATFORMVALUES_AWS_LAMBDA=qtA;WeA.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=MtA;WeA.CLOUDPLATFORMVALUES_AZURE_VM=ztA;WeA.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=RtA;WeA.CLOUDPLATFORMVALUES_AZURE_AKS=wtA;WeA.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=jtA;WeA.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=OtA;WeA.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=PtA;WeA.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=TtA;WeA.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=StA;WeA.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=ktA;WeA.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=_tA;WeA.CloudPlatformValues=(0,B$.createConstMap)([ItA,HtA,DtA,NtA,LtA,qtA,MtA,ztA,RtA,wtA,jtA,OtA,PtA,TtA,StA,ktA,_tA]);var vtA="ec2",ytA="fargate";WeA.AWSECSLAUNCHTYPEVALUES_EC2=vtA;WeA.AWSECSLAUNCHTYPEVALUES_FARGATE=ytA;WeA.AwsEcsLaunchtypeValues=(0,B$.createConstMap)([vtA,ytA]);var htA="amd64",gtA="arm32",xtA="arm64",ftA="ia64",btA="ppc32",mtA="ppc64",utA="x86";WeA.HOSTARCHVALUES_AMD64=htA;WeA.HOSTARCHVALUES_ARM32=gtA;WeA.HOSTARCHVALUES_ARM64=xtA;WeA.HOSTARCHVALUES_IA64=ftA;WeA.HOSTARCHVALUES_PPC32=btA;WeA.HOSTARCHVALUES_PPC64=mtA;WeA.HOSTARCHVALUES_X86=utA;WeA.HostArchValues=(0,B$.createConstMap)([htA,gtA,xtA,ftA,btA,mtA,utA]);var dtA="windows",ctA="linux",ltA="darwin",ptA="freebsd",itA="netbsd",ntA="openbsd",stA="dragonflybsd",rtA="hpux",atA="aix",otA="solaris",ttA="z_os";WeA.OSTYPEVALUES_WINDOWS=dtA;WeA.OSTYPEVALUES_LINUX=ctA;WeA.OSTYPEVALUES_DARWIN=ltA;WeA.OSTYPEVALUES_FREEBSD=ptA;WeA.OSTYPEVALUES_NETBSD=itA;WeA.OSTYPEVALUES_OPENBSD=ntA;WeA.OSTYPEVALUES_DRAGONFLYBSD=stA;WeA.OSTYPEVALUES_HPUX=rtA;WeA.OSTYPEVALUES_AIX=atA;WeA.OSTYPEVALUES_SOLARIS=otA;WeA.OSTYPEVALUES_Z_OS=ttA;WeA.OsTypeValues=(0,B$.createConstMap)([dtA,ctA,ltA,ptA,itA,ntA,stA,rtA,atA,otA,ttA]);var etA="cpp",AeA="dotnet",QeA="erlang",BeA="go",YeA="java",JeA="nodejs",CeA="php",XeA="python",GeA="ruby",FeA="webjs";WeA.TELEMETRYSDKLANGUAGEVALUES_CPP=etA;WeA.TELEMETRYSDKLANGUAGEVALUES_DOTNET=AeA;WeA.TELEMETRYSDKLANGUAGEVALUES_ERLANG=QeA;WeA.TELEMETRYSDKLANGUAGEVALUES_GO=BeA;WeA.TELEMETRYSDKLANGUAGEVALUES_JAVA=YeA;WeA.TELEMETRYSDKLANGUAGEVALUES_NODEJS=JeA;WeA.TELEMETRYSDKLANGUAGEVALUES_PHP=CeA;WeA.TELEMETRYSDKLANGUAGEVALUES_PYTHON=XeA;WeA.TELEMETRYSDKLANGUAGEVALUES_RUBY=GeA;WeA.TELEMETRYSDKLANGUAGEVALUES_WEBJS=FeA;WeA.TelemetrySdkLanguageValues=(0,B$.createConstMap)([etA,AeA,QeA,BeA,YeA,JeA,CeA,XeA,GeA,FeA])});var KeA=R((Y$)=>{var PtB=Y$&&Y$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;var J=Object.getOwnPropertyDescriptor(Q,B);if(!J||("get"in J?!Q.__esModule:J.writable||J.configurable))J={enumerable:!0,get:function(){return Q[B]}};Object.defineProperty(A,Y,J)}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),TtB=Y$&&Y$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))PtB(Q,A,B)};Object.defineProperty(Y$,"__esModule",{value:!0});TtB(EeA(),Y$)});var NeA=R((VeA)=>{Object.defineProperty(VeA,"__esModule",{value:!0});VeA.ATTR_HTTP_REQUEST_HEADER=VeA.ATTR_EXCEPTION_TYPE=VeA.ATTR_EXCEPTION_STACKTRACE=VeA.ATTR_EXCEPTION_MESSAGE=VeA.ATTR_EXCEPTION_ESCAPED=VeA.ERROR_TYPE_VALUE_OTHER=VeA.ATTR_ERROR_TYPE=VeA.DOTNET_GC_HEAP_GENERATION_VALUE_POH=VeA.DOTNET_GC_HEAP_GENERATION_VALUE_LOH=VeA.DOTNET_GC_HEAP_GENERATION_VALUE_GEN2=VeA.DOTNET_GC_HEAP_GENERATION_VALUE_GEN1=VeA.DOTNET_GC_HEAP_GENERATION_VALUE_GEN0=VeA.ATTR_DOTNET_GC_HEAP_GENERATION=VeA.DB_SYSTEM_NAME_VALUE_POSTGRESQL=VeA.DB_SYSTEM_NAME_VALUE_MYSQL=VeA.DB_SYSTEM_NAME_VALUE_MICROSOFT_SQL_SERVER=VeA.DB_SYSTEM_NAME_VALUE_MARIADB=VeA.ATTR_DB_SYSTEM_NAME=VeA.ATTR_DB_STORED_PROCEDURE_NAME=VeA.ATTR_DB_RESPONSE_STATUS_CODE=VeA.ATTR_DB_QUERY_TEXT=VeA.ATTR_DB_QUERY_SUMMARY=VeA.ATTR_DB_OPERATION_NAME=VeA.ATTR_DB_OPERATION_BATCH_SIZE=VeA.ATTR_DB_NAMESPACE=VeA.ATTR_DB_COLLECTION_NAME=VeA.ATTR_CODE_STACKTRACE=VeA.ATTR_CODE_LINE_NUMBER=VeA.ATTR_CODE_FUNCTION_NAME=VeA.ATTR_CODE_FILE_PATH=VeA.ATTR_CODE_COLUMN_NUMBER=VeA.ATTR_CLIENT_PORT=VeA.ATTR_CLIENT_ADDRESS=VeA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS=VeA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE=VeA.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS=VeA.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK=VeA.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED=VeA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED=VeA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER=VeA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER=VeA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED=VeA.ATTR_ASPNETCORE_RATE_LIMITING_RESULT=VeA.ATTR_ASPNETCORE_RATE_LIMITING_POLICY=VeA.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE=VeA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED=VeA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED=VeA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED=VeA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED=VeA.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT=void 0;VeA.OTEL_STATUS_CODE_VALUE_OK=VeA.OTEL_STATUS_CODE_VALUE_ERROR=VeA.ATTR_OTEL_STATUS_CODE=VeA.ATTR_OTEL_SCOPE_VERSION=VeA.ATTR_OTEL_SCOPE_NAME=VeA.NETWORK_TYPE_VALUE_IPV6=VeA.NETWORK_TYPE_VALUE_IPV4=VeA.ATTR_NETWORK_TYPE=VeA.NETWORK_TRANSPORT_VALUE_UNIX=VeA.NETWORK_TRANSPORT_VALUE_UDP=VeA.NETWORK_TRANSPORT_VALUE_TCP=VeA.NETWORK_TRANSPORT_VALUE_QUIC=VeA.NETWORK_TRANSPORT_VALUE_PIPE=VeA.ATTR_NETWORK_TRANSPORT=VeA.ATTR_NETWORK_PROTOCOL_VERSION=VeA.ATTR_NETWORK_PROTOCOL_NAME=VeA.ATTR_NETWORK_PEER_PORT=VeA.ATTR_NETWORK_PEER_ADDRESS=VeA.ATTR_NETWORK_LOCAL_PORT=VeA.ATTR_NETWORK_LOCAL_ADDRESS=VeA.JVM_THREAD_STATE_VALUE_WAITING=VeA.JVM_THREAD_STATE_VALUE_TIMED_WAITING=VeA.JVM_THREAD_STATE_VALUE_TERMINATED=VeA.JVM_THREAD_STATE_VALUE_RUNNABLE=VeA.JVM_THREAD_STATE_VALUE_NEW=VeA.JVM_THREAD_STATE_VALUE_BLOCKED=VeA.ATTR_JVM_THREAD_STATE=VeA.ATTR_JVM_THREAD_DAEMON=VeA.JVM_MEMORY_TYPE_VALUE_NON_HEAP=VeA.JVM_MEMORY_TYPE_VALUE_HEAP=VeA.ATTR_JVM_MEMORY_TYPE=VeA.ATTR_JVM_MEMORY_POOL_NAME=VeA.ATTR_JVM_GC_NAME=VeA.ATTR_JVM_GC_ACTION=VeA.ATTR_HTTP_ROUTE=VeA.ATTR_HTTP_RESPONSE_STATUS_CODE=VeA.ATTR_HTTP_RESPONSE_HEADER=VeA.ATTR_HTTP_REQUEST_RESEND_COUNT=VeA.ATTR_HTTP_REQUEST_METHOD_ORIGINAL=VeA.HTTP_REQUEST_METHOD_VALUE_TRACE=VeA.HTTP_REQUEST_METHOD_VALUE_PUT=VeA.HTTP_REQUEST_METHOD_VALUE_POST=VeA.HTTP_REQUEST_METHOD_VALUE_PATCH=VeA.HTTP_REQUEST_METHOD_VALUE_OPTIONS=VeA.HTTP_REQUEST_METHOD_VALUE_HEAD=VeA.HTTP_REQUEST_METHOD_VALUE_GET=VeA.HTTP_REQUEST_METHOD_VALUE_DELETE=VeA.HTTP_REQUEST_METHOD_VALUE_CONNECT=VeA.HTTP_REQUEST_METHOD_VALUE_OTHER=VeA.ATTR_HTTP_REQUEST_METHOD=void 0;VeA.ATTR_USER_AGENT_ORIGINAL=VeA.ATTR_URL_SCHEME=VeA.ATTR_URL_QUERY=VeA.ATTR_URL_PATH=VeA.ATTR_URL_FULL=VeA.ATTR_URL_FRAGMENT=VeA.ATTR_TELEMETRY_SDK_VERSION=VeA.ATTR_TELEMETRY_SDK_NAME=VeA.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS=VeA.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT=VeA.TELEMETRY_SDK_LANGUAGE_VALUE_RUST=VeA.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY=VeA.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON=VeA.TELEMETRY_SDK_LANGUAGE_VALUE_PHP=VeA.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS=VeA.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA=VeA.TELEMETRY_SDK_LANGUAGE_VALUE_GO=VeA.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG=VeA.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET=VeA.TELEMETRY_SDK_LANGUAGE_VALUE_CPP=VeA.ATTR_TELEMETRY_SDK_LANGUAGE=VeA.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS=VeA.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS=VeA.SIGNALR_TRANSPORT_VALUE_LONG_POLLING=VeA.ATTR_SIGNALR_TRANSPORT=VeA.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT=VeA.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE=VeA.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN=VeA.ATTR_SIGNALR_CONNECTION_STATUS=VeA.ATTR_SERVICE_VERSION=VeA.ATTR_SERVICE_NAME=VeA.ATTR_SERVER_PORT=VeA.ATTR_SERVER_ADDRESS=VeA.ATTR_OTEL_STATUS_DESCRIPTION=void 0;VeA.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT="aspnetcore.diagnostics.exception.result";VeA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED="aborted";VeA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED="handled";VeA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED="skipped";VeA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED="unhandled";VeA.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE="aspnetcore.diagnostics.handler.type";VeA.ATTR_ASPNETCORE_RATE_LIMITING_POLICY="aspnetcore.rate_limiting.policy";VeA.ATTR_ASPNETCORE_RATE_LIMITING_RESULT="aspnetcore.rate_limiting.result";VeA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED="acquired";VeA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER="endpoint_limiter";VeA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER="global_limiter";VeA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED="request_canceled";VeA.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED="aspnetcore.request.is_unhandled";VeA.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK="aspnetcore.routing.is_fallback";VeA.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS="aspnetcore.routing.match_status";VeA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE="failure";VeA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS="success";VeA.ATTR_CLIENT_ADDRESS="client.address";VeA.ATTR_CLIENT_PORT="client.port";VeA.ATTR_CODE_COLUMN_NUMBER="code.column.number";VeA.ATTR_CODE_FILE_PATH="code.file.path";VeA.ATTR_CODE_FUNCTION_NAME="code.function.name";VeA.ATTR_CODE_LINE_NUMBER="code.line.number";VeA.ATTR_CODE_STACKTRACE="code.stacktrace";VeA.ATTR_DB_COLLECTION_NAME="db.collection.name";VeA.ATTR_DB_NAMESPACE="db.namespace";VeA.ATTR_DB_OPERATION_BATCH_SIZE="db.operation.batch.size";VeA.ATTR_DB_OPERATION_NAME="db.operation.name";VeA.ATTR_DB_QUERY_SUMMARY="db.query.summary";VeA.ATTR_DB_QUERY_TEXT="db.query.text";VeA.ATTR_DB_RESPONSE_STATUS_CODE="db.response.status_code";VeA.ATTR_DB_STORED_PROCEDURE_NAME="db.stored_procedure.name";VeA.ATTR_DB_SYSTEM_NAME="db.system.name";VeA.DB_SYSTEM_NAME_VALUE_MARIADB="mariadb";VeA.DB_SYSTEM_NAME_VALUE_MICROSOFT_SQL_SERVER="microsoft.sql_server";VeA.DB_SYSTEM_NAME_VALUE_MYSQL="mysql";VeA.DB_SYSTEM_NAME_VALUE_POSTGRESQL="postgresql";VeA.ATTR_DOTNET_GC_HEAP_GENERATION="dotnet.gc.heap.generation";VeA.DOTNET_GC_HEAP_GENERATION_VALUE_GEN0="gen0";VeA.DOTNET_GC_HEAP_GENERATION_VALUE_GEN1="gen1";VeA.DOTNET_GC_HEAP_GENERATION_VALUE_GEN2="gen2";VeA.DOTNET_GC_HEAP_GENERATION_VALUE_LOH="loh";VeA.DOTNET_GC_HEAP_GENERATION_VALUE_POH="poh";VeA.ATTR_ERROR_TYPE="error.type";VeA.ERROR_TYPE_VALUE_OTHER="_OTHER";VeA.ATTR_EXCEPTION_ESCAPED="exception.escaped";VeA.ATTR_EXCEPTION_MESSAGE="exception.message";VeA.ATTR_EXCEPTION_STACKTRACE="exception.stacktrace";VeA.ATTR_EXCEPTION_TYPE="exception.type";var StB=(A)=>`http.request.header.${A}`;VeA.ATTR_HTTP_REQUEST_HEADER=StB;VeA.ATTR_HTTP_REQUEST_METHOD="http.request.method";VeA.HTTP_REQUEST_METHOD_VALUE_OTHER="_OTHER";VeA.HTTP_REQUEST_METHOD_VALUE_CONNECT="CONNECT";VeA.HTTP_REQUEST_METHOD_VALUE_DELETE="DELETE";VeA.HTTP_REQUEST_METHOD_VALUE_GET="GET";VeA.HTTP_REQUEST_METHOD_VALUE_HEAD="HEAD";VeA.HTTP_REQUEST_METHOD_VALUE_OPTIONS="OPTIONS";VeA.HTTP_REQUEST_METHOD_VALUE_PATCH="PATCH";VeA.HTTP_REQUEST_METHOD_VALUE_POST="POST";VeA.HTTP_REQUEST_METHOD_VALUE_PUT="PUT";VeA.HTTP_REQUEST_METHOD_VALUE_TRACE="TRACE";VeA.ATTR_HTTP_REQUEST_METHOD_ORIGINAL="http.request.method_original";VeA.ATTR_HTTP_REQUEST_RESEND_COUNT="http.request.resend_count";var ktB=(A)=>`http.response.header.${A}`;VeA.ATTR_HTTP_RESPONSE_HEADER=ktB;VeA.ATTR_HTTP_RESPONSE_STATUS_CODE="http.response.status_code";VeA.ATTR_HTTP_ROUTE="http.route";VeA.ATTR_JVM_GC_ACTION="jvm.gc.action";VeA.ATTR_JVM_GC_NAME="jvm.gc.name";VeA.ATTR_JVM_MEMORY_POOL_NAME="jvm.memory.pool.name";VeA.ATTR_JVM_MEMORY_TYPE="jvm.memory.type";VeA.JVM_MEMORY_TYPE_VALUE_HEAP="heap";VeA.JVM_MEMORY_TYPE_VALUE_NON_HEAP="non_heap";VeA.ATTR_JVM_THREAD_DAEMON="jvm.thread.daemon";VeA.ATTR_JVM_THREAD_STATE="jvm.thread.state";VeA.JVM_THREAD_STATE_VALUE_BLOCKED="blocked";VeA.JVM_THREAD_STATE_VALUE_NEW="new";VeA.JVM_THREAD_STATE_VALUE_RUNNABLE="runnable";VeA.JVM_THREAD_STATE_VALUE_TERMINATED="terminated";VeA.JVM_THREAD_STATE_VALUE_TIMED_WAITING="timed_waiting";VeA.JVM_THREAD_STATE_VALUE_WAITING="waiting";VeA.ATTR_NETWORK_LOCAL_ADDRESS="network.local.address";VeA.ATTR_NETWORK_LOCAL_PORT="network.local.port";VeA.ATTR_NETWORK_PEER_ADDRESS="network.peer.address";VeA.ATTR_NETWORK_PEER_PORT="network.peer.port";VeA.ATTR_NETWORK_PROTOCOL_NAME="network.protocol.name";VeA.ATTR_NETWORK_PROTOCOL_VERSION="network.protocol.version";VeA.ATTR_NETWORK_TRANSPORT="network.transport";VeA.NETWORK_TRANSPORT_VALUE_PIPE="pipe";VeA.NETWORK_TRANSPORT_VALUE_QUIC="quic";VeA.NETWORK_TRANSPORT_VALUE_TCP="tcp";VeA.NETWORK_TRANSPORT_VALUE_UDP="udp";VeA.NETWORK_TRANSPORT_VALUE_UNIX="unix";VeA.ATTR_NETWORK_TYPE="network.type";VeA.NETWORK_TYPE_VALUE_IPV4="ipv4";VeA.NETWORK_TYPE_VALUE_IPV6="ipv6";VeA.ATTR_OTEL_SCOPE_NAME="otel.scope.name";VeA.ATTR_OTEL_SCOPE_VERSION="otel.scope.version";VeA.ATTR_OTEL_STATUS_CODE="otel.status_code";VeA.OTEL_STATUS_CODE_VALUE_ERROR="ERROR";VeA.OTEL_STATUS_CODE_VALUE_OK="OK";VeA.ATTR_OTEL_STATUS_DESCRIPTION="otel.status_description";VeA.ATTR_SERVER_ADDRESS="server.address";VeA.ATTR_SERVER_PORT="server.port";VeA.ATTR_SERVICE_NAME="service.name";VeA.ATTR_SERVICE_VERSION="service.version";VeA.ATTR_SIGNALR_CONNECTION_STATUS="signalr.connection.status";VeA.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN="app_shutdown";VeA.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE="normal_closure";VeA.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT="timeout";VeA.ATTR_SIGNALR_TRANSPORT="signalr.transport";VeA.SIGNALR_TRANSPORT_VALUE_LONG_POLLING="long_polling";VeA.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS="server_sent_events";VeA.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS="web_sockets";VeA.ATTR_TELEMETRY_SDK_LANGUAGE="telemetry.sdk.language";VeA.TELEMETRY_SDK_LANGUAGE_VALUE_CPP="cpp";VeA.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET="dotnet";VeA.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG="erlang";VeA.TELEMETRY_SDK_LANGUAGE_VALUE_GO="go";VeA.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA="java";VeA.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS="nodejs";VeA.TELEMETRY_SDK_LANGUAGE_VALUE_PHP="php";VeA.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON="python";VeA.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY="ruby";VeA.TELEMETRY_SDK_LANGUAGE_VALUE_RUST="rust";VeA.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT="swift";VeA.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS="webjs";VeA.ATTR_TELEMETRY_SDK_NAME="telemetry.sdk.name";VeA.ATTR_TELEMETRY_SDK_VERSION="telemetry.sdk.version";VeA.ATTR_URL_FRAGMENT="url.fragment";VeA.ATTR_URL_FULL="url.full";VeA.ATTR_URL_PATH="url.path";VeA.ATTR_URL_QUERY="url.query";VeA.ATTR_URL_SCHEME="url.scheme";VeA.ATTR_USER_AGENT_ORIGINAL="user_agent.original"});var zeA=R((LeA)=>{Object.defineProperty(LeA,"__esModule",{value:!0});LeA.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS=LeA.METRIC_KESTREL_UPGRADED_CONNECTIONS=LeA.METRIC_KESTREL_TLS_HANDSHAKE_DURATION=LeA.METRIC_KESTREL_REJECTED_CONNECTIONS=LeA.METRIC_KESTREL_QUEUED_REQUESTS=LeA.METRIC_KESTREL_QUEUED_CONNECTIONS=LeA.METRIC_KESTREL_CONNECTION_DURATION=LeA.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES=LeA.METRIC_KESTREL_ACTIVE_CONNECTIONS=LeA.METRIC_JVM_THREAD_COUNT=LeA.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC=LeA.METRIC_JVM_MEMORY_USED=LeA.METRIC_JVM_MEMORY_LIMIT=LeA.METRIC_JVM_MEMORY_COMMITTED=LeA.METRIC_JVM_GC_DURATION=LeA.METRIC_JVM_CPU_TIME=LeA.METRIC_JVM_CPU_RECENT_UTILIZATION=LeA.METRIC_JVM_CPU_COUNT=LeA.METRIC_JVM_CLASS_UNLOADED=LeA.METRIC_JVM_CLASS_LOADED=LeA.METRIC_JVM_CLASS_COUNT=LeA.METRIC_HTTP_SERVER_REQUEST_DURATION=LeA.METRIC_HTTP_CLIENT_REQUEST_DURATION=LeA.METRIC_DOTNET_TIMER_COUNT=LeA.METRIC_DOTNET_THREAD_POOL_WORK_ITEM_COUNT=LeA.METRIC_DOTNET_THREAD_POOL_THREAD_COUNT=LeA.METRIC_DOTNET_THREAD_POOL_QUEUE_LENGTH=LeA.METRIC_DOTNET_PROCESS_MEMORY_WORKING_SET=LeA.METRIC_DOTNET_PROCESS_CPU_TIME=LeA.METRIC_DOTNET_PROCESS_CPU_COUNT=LeA.METRIC_DOTNET_MONITOR_LOCK_CONTENTIONS=LeA.METRIC_DOTNET_JIT_COMPILED_METHODS=LeA.METRIC_DOTNET_JIT_COMPILED_IL_SIZE=LeA.METRIC_DOTNET_JIT_COMPILATION_TIME=LeA.METRIC_DOTNET_GC_PAUSE_TIME=LeA.METRIC_DOTNET_GC_LAST_COLLECTION_MEMORY_COMMITTED_SIZE=LeA.METRIC_DOTNET_GC_LAST_COLLECTION_HEAP_SIZE=LeA.METRIC_DOTNET_GC_LAST_COLLECTION_HEAP_FRAGMENTATION_SIZE=LeA.METRIC_DOTNET_GC_HEAP_TOTAL_ALLOCATED=LeA.METRIC_DOTNET_GC_COLLECTIONS=LeA.METRIC_DOTNET_EXCEPTIONS=LeA.METRIC_DOTNET_ASSEMBLY_COUNT=LeA.METRIC_DB_CLIENT_OPERATION_DURATION=LeA.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS=LeA.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS=LeA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION=LeA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE=LeA.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS=LeA.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES=LeA.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS=void 0;LeA.METRIC_SIGNALR_SERVER_CONNECTION_DURATION=void 0;LeA.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS="aspnetcore.diagnostics.exceptions";LeA.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES="aspnetcore.rate_limiting.active_request_leases";LeA.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS="aspnetcore.rate_limiting.queued_requests";LeA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE="aspnetcore.rate_limiting.request.time_in_queue";LeA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION="aspnetcore.rate_limiting.request_lease.duration";LeA.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS="aspnetcore.rate_limiting.requests";LeA.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS="aspnetcore.routing.match_attempts";LeA.METRIC_DB_CLIENT_OPERATION_DURATION="db.client.operation.duration";LeA.METRIC_DOTNET_ASSEMBLY_COUNT="dotnet.assembly.count";LeA.METRIC_DOTNET_EXCEPTIONS="dotnet.exceptions";LeA.METRIC_DOTNET_GC_COLLECTIONS="dotnet.gc.collections";LeA.METRIC_DOTNET_GC_HEAP_TOTAL_ALLOCATED="dotnet.gc.heap.total_allocated";LeA.METRIC_DOTNET_GC_LAST_COLLECTION_HEAP_FRAGMENTATION_SIZE="dotnet.gc.last_collection.heap.fragmentation.size";LeA.METRIC_DOTNET_GC_LAST_COLLECTION_HEAP_SIZE="dotnet.gc.last_collection.heap.size";LeA.METRIC_DOTNET_GC_LAST_COLLECTION_MEMORY_COMMITTED_SIZE="dotnet.gc.last_collection.memory.committed_size";LeA.METRIC_DOTNET_GC_PAUSE_TIME="dotnet.gc.pause.time";LeA.METRIC_DOTNET_JIT_COMPILATION_TIME="dotnet.jit.compilation.time";LeA.METRIC_DOTNET_JIT_COMPILED_IL_SIZE="dotnet.jit.compiled_il.size";LeA.METRIC_DOTNET_JIT_COMPILED_METHODS="dotnet.jit.compiled_methods";LeA.METRIC_DOTNET_MONITOR_LOCK_CONTENTIONS="dotnet.monitor.lock_contentions";LeA.METRIC_DOTNET_PROCESS_CPU_COUNT="dotnet.process.cpu.count";LeA.METRIC_DOTNET_PROCESS_CPU_TIME="dotnet.process.cpu.time";LeA.METRIC_DOTNET_PROCESS_MEMORY_WORKING_SET="dotnet.process.memory.working_set";LeA.METRIC_DOTNET_THREAD_POOL_QUEUE_LENGTH="dotnet.thread_pool.queue.length";LeA.METRIC_DOTNET_THREAD_POOL_THREAD_COUNT="dotnet.thread_pool.thread.count";LeA.METRIC_DOTNET_THREAD_POOL_WORK_ITEM_COUNT="dotnet.thread_pool.work_item.count";LeA.METRIC_DOTNET_TIMER_COUNT="dotnet.timer.count";LeA.METRIC_HTTP_CLIENT_REQUEST_DURATION="http.client.request.duration";LeA.METRIC_HTTP_SERVER_REQUEST_DURATION="http.server.request.duration";LeA.METRIC_JVM_CLASS_COUNT="jvm.class.count";LeA.METRIC_JVM_CLASS_LOADED="jvm.class.loaded";LeA.METRIC_JVM_CLASS_UNLOADED="jvm.class.unloaded";LeA.METRIC_JVM_CPU_COUNT="jvm.cpu.count";LeA.METRIC_JVM_CPU_RECENT_UTILIZATION="jvm.cpu.recent_utilization";LeA.METRIC_JVM_CPU_TIME="jvm.cpu.time";LeA.METRIC_JVM_GC_DURATION="jvm.gc.duration";LeA.METRIC_JVM_MEMORY_COMMITTED="jvm.memory.committed";LeA.METRIC_JVM_MEMORY_LIMIT="jvm.memory.limit";LeA.METRIC_JVM_MEMORY_USED="jvm.memory.used";LeA.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC="jvm.memory.used_after_last_gc";LeA.METRIC_JVM_THREAD_COUNT="jvm.thread.count";LeA.METRIC_KESTREL_ACTIVE_CONNECTIONS="kestrel.active_connections";LeA.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES="kestrel.active_tls_handshakes";LeA.METRIC_KESTREL_CONNECTION_DURATION="kestrel.connection.duration";LeA.METRIC_KESTREL_QUEUED_CONNECTIONS="kestrel.queued_connections";LeA.METRIC_KESTREL_QUEUED_REQUESTS="kestrel.queued_requests";LeA.METRIC_KESTREL_REJECTED_CONNECTIONS="kestrel.rejected_connections";LeA.METRIC_KESTREL_TLS_HANDSHAKE_DURATION="kestrel.tls_handshake.duration";LeA.METRIC_KESTREL_UPGRADED_CONNECTIONS="kestrel.upgraded_connections";LeA.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS="signalr.server.active_connections";LeA.METRIC_SIGNALR_SERVER_CONNECTION_DURATION="signalr.server.connection.duration"});var uB=R((C6)=>{var aQ0=C6&&C6.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;var J=Object.getOwnPropertyDescriptor(Q,B);if(!J||("get"in J?!Q.__esModule:J.writable||J.configurable))J={enumerable:!0,get:function(){return Q[B]}};Object.defineProperty(A,Y,J)}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),gO=C6&&C6.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))aQ0(Q,A,B)};Object.defineProperty(C6,"__esModule",{value:!0});gO(faA(),C6);gO(KeA(),C6);gO(NeA(),C6);gO(zeA(),C6)});var hp=R((ReA)=>{Object.defineProperty(ReA,"__esModule",{value:!0});ReA.createConstMap=void 0;function oQ0(A){let Q={},B=A.length;for(let Y=0;Y{Object.defineProperty(VYQ,"__esModule",{value:!0});VYQ.SEMATTRS_NET_HOST_CARRIER_ICC=VYQ.SEMATTRS_NET_HOST_CARRIER_MNC=VYQ.SEMATTRS_NET_HOST_CARRIER_MCC=VYQ.SEMATTRS_NET_HOST_CARRIER_NAME=VYQ.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=VYQ.SEMATTRS_NET_HOST_CONNECTION_TYPE=VYQ.SEMATTRS_NET_HOST_NAME=VYQ.SEMATTRS_NET_HOST_PORT=VYQ.SEMATTRS_NET_HOST_IP=VYQ.SEMATTRS_NET_PEER_NAME=VYQ.SEMATTRS_NET_PEER_PORT=VYQ.SEMATTRS_NET_PEER_IP=VYQ.SEMATTRS_NET_TRANSPORT=VYQ.SEMATTRS_FAAS_INVOKED_REGION=VYQ.SEMATTRS_FAAS_INVOKED_PROVIDER=VYQ.SEMATTRS_FAAS_INVOKED_NAME=VYQ.SEMATTRS_FAAS_COLDSTART=VYQ.SEMATTRS_FAAS_CRON=VYQ.SEMATTRS_FAAS_TIME=VYQ.SEMATTRS_FAAS_DOCUMENT_NAME=VYQ.SEMATTRS_FAAS_DOCUMENT_TIME=VYQ.SEMATTRS_FAAS_DOCUMENT_OPERATION=VYQ.SEMATTRS_FAAS_DOCUMENT_COLLECTION=VYQ.SEMATTRS_FAAS_EXECUTION=VYQ.SEMATTRS_FAAS_TRIGGER=VYQ.SEMATTRS_EXCEPTION_ESCAPED=VYQ.SEMATTRS_EXCEPTION_STACKTRACE=VYQ.SEMATTRS_EXCEPTION_MESSAGE=VYQ.SEMATTRS_EXCEPTION_TYPE=VYQ.SEMATTRS_DB_SQL_TABLE=VYQ.SEMATTRS_DB_MONGODB_COLLECTION=VYQ.SEMATTRS_DB_REDIS_DATABASE_INDEX=VYQ.SEMATTRS_DB_HBASE_NAMESPACE=VYQ.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=VYQ.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=VYQ.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=VYQ.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=VYQ.SEMATTRS_DB_CASSANDRA_TABLE=VYQ.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=VYQ.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=VYQ.SEMATTRS_DB_CASSANDRA_KEYSPACE=VYQ.SEMATTRS_DB_MSSQL_INSTANCE_NAME=VYQ.SEMATTRS_DB_OPERATION=VYQ.SEMATTRS_DB_STATEMENT=VYQ.SEMATTRS_DB_NAME=VYQ.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=VYQ.SEMATTRS_DB_USER=VYQ.SEMATTRS_DB_CONNECTION_STRING=VYQ.SEMATTRS_DB_SYSTEM=VYQ.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=void 0;VYQ.SEMATTRS_MESSAGING_DESTINATION_KIND=VYQ.SEMATTRS_MESSAGING_DESTINATION=VYQ.SEMATTRS_MESSAGING_SYSTEM=VYQ.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=VYQ.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=VYQ.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=VYQ.SEMATTRS_AWS_DYNAMODB_COUNT=VYQ.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=VYQ.SEMATTRS_AWS_DYNAMODB_SEGMENT=VYQ.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=VYQ.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=VYQ.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=VYQ.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=VYQ.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=VYQ.SEMATTRS_AWS_DYNAMODB_SELECT=VYQ.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=VYQ.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=VYQ.SEMATTRS_AWS_DYNAMODB_LIMIT=VYQ.SEMATTRS_AWS_DYNAMODB_PROJECTION=VYQ.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=VYQ.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=VYQ.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=VYQ.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=VYQ.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=VYQ.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=VYQ.SEMATTRS_HTTP_CLIENT_IP=VYQ.SEMATTRS_HTTP_ROUTE=VYQ.SEMATTRS_HTTP_SERVER_NAME=VYQ.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=VYQ.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=VYQ.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=VYQ.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=VYQ.SEMATTRS_HTTP_USER_AGENT=VYQ.SEMATTRS_HTTP_FLAVOR=VYQ.SEMATTRS_HTTP_STATUS_CODE=VYQ.SEMATTRS_HTTP_SCHEME=VYQ.SEMATTRS_HTTP_HOST=VYQ.SEMATTRS_HTTP_TARGET=VYQ.SEMATTRS_HTTP_URL=VYQ.SEMATTRS_HTTP_METHOD=VYQ.SEMATTRS_CODE_LINENO=VYQ.SEMATTRS_CODE_FILEPATH=VYQ.SEMATTRS_CODE_NAMESPACE=VYQ.SEMATTRS_CODE_FUNCTION=VYQ.SEMATTRS_THREAD_NAME=VYQ.SEMATTRS_THREAD_ID=VYQ.SEMATTRS_ENDUSER_SCOPE=VYQ.SEMATTRS_ENDUSER_ROLE=VYQ.SEMATTRS_ENDUSER_ID=VYQ.SEMATTRS_PEER_SERVICE=void 0;VYQ.DBSYSTEMVALUES_FILEMAKER=VYQ.DBSYSTEMVALUES_DERBY=VYQ.DBSYSTEMVALUES_FIREBIRD=VYQ.DBSYSTEMVALUES_ADABAS=VYQ.DBSYSTEMVALUES_CACHE=VYQ.DBSYSTEMVALUES_EDB=VYQ.DBSYSTEMVALUES_FIRSTSQL=VYQ.DBSYSTEMVALUES_INGRES=VYQ.DBSYSTEMVALUES_HANADB=VYQ.DBSYSTEMVALUES_MAXDB=VYQ.DBSYSTEMVALUES_PROGRESS=VYQ.DBSYSTEMVALUES_HSQLDB=VYQ.DBSYSTEMVALUES_CLOUDSCAPE=VYQ.DBSYSTEMVALUES_HIVE=VYQ.DBSYSTEMVALUES_REDSHIFT=VYQ.DBSYSTEMVALUES_POSTGRESQL=VYQ.DBSYSTEMVALUES_DB2=VYQ.DBSYSTEMVALUES_ORACLE=VYQ.DBSYSTEMVALUES_MYSQL=VYQ.DBSYSTEMVALUES_MSSQL=VYQ.DBSYSTEMVALUES_OTHER_SQL=VYQ.SemanticAttributes=VYQ.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=VYQ.SEMATTRS_MESSAGE_COMPRESSED_SIZE=VYQ.SEMATTRS_MESSAGE_ID=VYQ.SEMATTRS_MESSAGE_TYPE=VYQ.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=VYQ.SEMATTRS_RPC_JSONRPC_ERROR_CODE=VYQ.SEMATTRS_RPC_JSONRPC_REQUEST_ID=VYQ.SEMATTRS_RPC_JSONRPC_VERSION=VYQ.SEMATTRS_RPC_GRPC_STATUS_CODE=VYQ.SEMATTRS_RPC_METHOD=VYQ.SEMATTRS_RPC_SERVICE=VYQ.SEMATTRS_RPC_SYSTEM=VYQ.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=VYQ.SEMATTRS_MESSAGING_KAFKA_PARTITION=VYQ.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=VYQ.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=VYQ.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=VYQ.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=VYQ.SEMATTRS_MESSAGING_CONSUMER_ID=VYQ.SEMATTRS_MESSAGING_OPERATION=VYQ.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=VYQ.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=VYQ.SEMATTRS_MESSAGING_CONVERSATION_ID=VYQ.SEMATTRS_MESSAGING_MESSAGE_ID=VYQ.SEMATTRS_MESSAGING_URL=VYQ.SEMATTRS_MESSAGING_PROTOCOL_VERSION=VYQ.SEMATTRS_MESSAGING_PROTOCOL=VYQ.SEMATTRS_MESSAGING_TEMP_DESTINATION=void 0;VYQ.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=VYQ.FaasDocumentOperationValues=VYQ.FAASDOCUMENTOPERATIONVALUES_DELETE=VYQ.FAASDOCUMENTOPERATIONVALUES_EDIT=VYQ.FAASDOCUMENTOPERATIONVALUES_INSERT=VYQ.FaasTriggerValues=VYQ.FAASTRIGGERVALUES_OTHER=VYQ.FAASTRIGGERVALUES_TIMER=VYQ.FAASTRIGGERVALUES_PUBSUB=VYQ.FAASTRIGGERVALUES_HTTP=VYQ.FAASTRIGGERVALUES_DATASOURCE=VYQ.DbCassandraConsistencyLevelValues=VYQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=VYQ.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=VYQ.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=VYQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=VYQ.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=VYQ.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=VYQ.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=VYQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=VYQ.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=VYQ.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=VYQ.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=VYQ.DbSystemValues=VYQ.DBSYSTEMVALUES_COCKROACHDB=VYQ.DBSYSTEMVALUES_MEMCACHED=VYQ.DBSYSTEMVALUES_ELASTICSEARCH=VYQ.DBSYSTEMVALUES_GEODE=VYQ.DBSYSTEMVALUES_NEO4J=VYQ.DBSYSTEMVALUES_DYNAMODB=VYQ.DBSYSTEMVALUES_COSMOSDB=VYQ.DBSYSTEMVALUES_COUCHDB=VYQ.DBSYSTEMVALUES_COUCHBASE=VYQ.DBSYSTEMVALUES_REDIS=VYQ.DBSYSTEMVALUES_MONGODB=VYQ.DBSYSTEMVALUES_HBASE=VYQ.DBSYSTEMVALUES_CASSANDRA=VYQ.DBSYSTEMVALUES_COLDFUSION=VYQ.DBSYSTEMVALUES_H2=VYQ.DBSYSTEMVALUES_VERTICA=VYQ.DBSYSTEMVALUES_TERADATA=VYQ.DBSYSTEMVALUES_SYBASE=VYQ.DBSYSTEMVALUES_SQLITE=VYQ.DBSYSTEMVALUES_POINTBASE=VYQ.DBSYSTEMVALUES_PERVASIVE=VYQ.DBSYSTEMVALUES_NETEZZA=VYQ.DBSYSTEMVALUES_MARIADB=VYQ.DBSYSTEMVALUES_INTERBASE=VYQ.DBSYSTEMVALUES_INSTANTDB=VYQ.DBSYSTEMVALUES_INFORMIX=void 0;VYQ.MESSAGINGOPERATIONVALUES_RECEIVE=VYQ.MessagingDestinationKindValues=VYQ.MESSAGINGDESTINATIONKINDVALUES_TOPIC=VYQ.MESSAGINGDESTINATIONKINDVALUES_QUEUE=VYQ.HttpFlavorValues=VYQ.HTTPFLAVORVALUES_QUIC=VYQ.HTTPFLAVORVALUES_SPDY=VYQ.HTTPFLAVORVALUES_HTTP_2_0=VYQ.HTTPFLAVORVALUES_HTTP_1_1=VYQ.HTTPFLAVORVALUES_HTTP_1_0=VYQ.NetHostConnectionSubtypeValues=VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_NR=VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=VYQ.NetHostConnectionTypeValues=VYQ.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=VYQ.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=VYQ.NETHOSTCONNECTIONTYPEVALUES_CELL=VYQ.NETHOSTCONNECTIONTYPEVALUES_WIRED=VYQ.NETHOSTCONNECTIONTYPEVALUES_WIFI=VYQ.NetTransportValues=VYQ.NETTRANSPORTVALUES_OTHER=VYQ.NETTRANSPORTVALUES_INPROC=VYQ.NETTRANSPORTVALUES_PIPE=VYQ.NETTRANSPORTVALUES_UNIX=VYQ.NETTRANSPORTVALUES_IP=VYQ.NETTRANSPORTVALUES_IP_UDP=VYQ.NETTRANSPORTVALUES_IP_TCP=VYQ.FaasInvokedProviderValues=VYQ.FAASINVOKEDPROVIDERVALUES_GCP=VYQ.FAASINVOKEDPROVIDERVALUES_AZURE=VYQ.FAASINVOKEDPROVIDERVALUES_AWS=void 0;VYQ.MessageTypeValues=VYQ.MESSAGETYPEVALUES_RECEIVED=VYQ.MESSAGETYPEVALUES_SENT=VYQ.RpcGrpcStatusCodeValues=VYQ.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=VYQ.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=VYQ.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=VYQ.RPCGRPCSTATUSCODEVALUES_INTERNAL=VYQ.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=VYQ.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=VYQ.RPCGRPCSTATUSCODEVALUES_ABORTED=VYQ.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=VYQ.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=VYQ.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=VYQ.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=VYQ.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=VYQ.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=VYQ.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=VYQ.RPCGRPCSTATUSCODEVALUES_UNKNOWN=VYQ.RPCGRPCSTATUSCODEVALUES_CANCELLED=VYQ.RPCGRPCSTATUSCODEVALUES_OK=VYQ.MessagingOperationValues=VYQ.MESSAGINGOPERATIONVALUES_PROCESS=void 0;var x5=hp(),jeA="aws.lambda.invoked_arn",OeA="db.system",PeA="db.connection_string",TeA="db.user",SeA="db.jdbc.driver_classname",keA="db.name",_eA="db.statement",veA="db.operation",yeA="db.mssql.instance_name",heA="db.cassandra.keyspace",geA="db.cassandra.page_size",xeA="db.cassandra.consistency_level",feA="db.cassandra.table",beA="db.cassandra.idempotence",meA="db.cassandra.speculative_execution_count",ueA="db.cassandra.coordinator.id",deA="db.cassandra.coordinator.dc",ceA="db.hbase.namespace",leA="db.redis.database_index",peA="db.mongodb.collection",ieA="db.sql.table",neA="exception.type",seA="exception.message",reA="exception.stacktrace",aeA="exception.escaped",oeA="faas.trigger",teA="faas.execution",eeA="faas.document.collection",AAQ="faas.document.operation",QAQ="faas.document.time",BAQ="faas.document.name",YAQ="faas.time",JAQ="faas.cron",CAQ="faas.coldstart",XAQ="faas.invoked_name",GAQ="faas.invoked_provider",FAQ="faas.invoked_region",WAQ="net.transport",ZAQ="net.peer.ip",$AQ="net.peer.port",UAQ="net.peer.name",EAQ="net.host.ip",KAQ="net.host.port",VAQ="net.host.name",IAQ="net.host.connection.type",HAQ="net.host.connection.subtype",DAQ="net.host.carrier.name",NAQ="net.host.carrier.mcc",LAQ="net.host.carrier.mnc",qAQ="net.host.carrier.icc",MAQ="peer.service",zAQ="enduser.id",RAQ="enduser.role",wAQ="enduser.scope",jAQ="thread.id",OAQ="thread.name",PAQ="code.function",TAQ="code.namespace",SAQ="code.filepath",kAQ="code.lineno",_AQ="http.method",vAQ="http.url",yAQ="http.target",hAQ="http.host",gAQ="http.scheme",xAQ="http.status_code",fAQ="http.flavor",bAQ="http.user_agent",mAQ="http.request_content_length",uAQ="http.request_content_length_uncompressed",dAQ="http.response_content_length",cAQ="http.response_content_length_uncompressed",lAQ="http.server_name",pAQ="http.route",iAQ="http.client_ip",nAQ="aws.dynamodb.table_names",sAQ="aws.dynamodb.consumed_capacity",rAQ="aws.dynamodb.item_collection_metrics",aAQ="aws.dynamodb.provisioned_read_capacity",oAQ="aws.dynamodb.provisioned_write_capacity",tAQ="aws.dynamodb.consistent_read",eAQ="aws.dynamodb.projection",AQQ="aws.dynamodb.limit",QQQ="aws.dynamodb.attributes_to_get",BQQ="aws.dynamodb.index_name",YQQ="aws.dynamodb.select",JQQ="aws.dynamodb.global_secondary_indexes",CQQ="aws.dynamodb.local_secondary_indexes",XQQ="aws.dynamodb.exclusive_start_table",GQQ="aws.dynamodb.table_count",FQQ="aws.dynamodb.scan_forward",WQQ="aws.dynamodb.segment",ZQQ="aws.dynamodb.total_segments",$QQ="aws.dynamodb.count",UQQ="aws.dynamodb.scanned_count",EQQ="aws.dynamodb.attribute_definitions",KQQ="aws.dynamodb.global_secondary_index_updates",VQQ="messaging.system",IQQ="messaging.destination",HQQ="messaging.destination_kind",DQQ="messaging.temp_destination",NQQ="messaging.protocol",LQQ="messaging.protocol_version",qQQ="messaging.url",MQQ="messaging.message_id",zQQ="messaging.conversation_id",RQQ="messaging.message_payload_size_bytes",wQQ="messaging.message_payload_compressed_size_bytes",jQQ="messaging.operation",OQQ="messaging.consumer_id",PQQ="messaging.rabbitmq.routing_key",TQQ="messaging.kafka.message_key",SQQ="messaging.kafka.consumer_group",kQQ="messaging.kafka.client_id",_QQ="messaging.kafka.partition",vQQ="messaging.kafka.tombstone",yQQ="rpc.system",hQQ="rpc.service",gQQ="rpc.method",xQQ="rpc.grpc.status_code",fQQ="rpc.jsonrpc.version",bQQ="rpc.jsonrpc.request_id",mQQ="rpc.jsonrpc.error_code",uQQ="rpc.jsonrpc.error_message",dQQ="message.type",cQQ="message.id",lQQ="message.compressed_size",pQQ="message.uncompressed_size";VYQ.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=jeA;VYQ.SEMATTRS_DB_SYSTEM=OeA;VYQ.SEMATTRS_DB_CONNECTION_STRING=PeA;VYQ.SEMATTRS_DB_USER=TeA;VYQ.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=SeA;VYQ.SEMATTRS_DB_NAME=keA;VYQ.SEMATTRS_DB_STATEMENT=_eA;VYQ.SEMATTRS_DB_OPERATION=veA;VYQ.SEMATTRS_DB_MSSQL_INSTANCE_NAME=yeA;VYQ.SEMATTRS_DB_CASSANDRA_KEYSPACE=heA;VYQ.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=geA;VYQ.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=xeA;VYQ.SEMATTRS_DB_CASSANDRA_TABLE=feA;VYQ.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=beA;VYQ.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=meA;VYQ.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=ueA;VYQ.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=deA;VYQ.SEMATTRS_DB_HBASE_NAMESPACE=ceA;VYQ.SEMATTRS_DB_REDIS_DATABASE_INDEX=leA;VYQ.SEMATTRS_DB_MONGODB_COLLECTION=peA;VYQ.SEMATTRS_DB_SQL_TABLE=ieA;VYQ.SEMATTRS_EXCEPTION_TYPE=neA;VYQ.SEMATTRS_EXCEPTION_MESSAGE=seA;VYQ.SEMATTRS_EXCEPTION_STACKTRACE=reA;VYQ.SEMATTRS_EXCEPTION_ESCAPED=aeA;VYQ.SEMATTRS_FAAS_TRIGGER=oeA;VYQ.SEMATTRS_FAAS_EXECUTION=teA;VYQ.SEMATTRS_FAAS_DOCUMENT_COLLECTION=eeA;VYQ.SEMATTRS_FAAS_DOCUMENT_OPERATION=AAQ;VYQ.SEMATTRS_FAAS_DOCUMENT_TIME=QAQ;VYQ.SEMATTRS_FAAS_DOCUMENT_NAME=BAQ;VYQ.SEMATTRS_FAAS_TIME=YAQ;VYQ.SEMATTRS_FAAS_CRON=JAQ;VYQ.SEMATTRS_FAAS_COLDSTART=CAQ;VYQ.SEMATTRS_FAAS_INVOKED_NAME=XAQ;VYQ.SEMATTRS_FAAS_INVOKED_PROVIDER=GAQ;VYQ.SEMATTRS_FAAS_INVOKED_REGION=FAQ;VYQ.SEMATTRS_NET_TRANSPORT=WAQ;VYQ.SEMATTRS_NET_PEER_IP=ZAQ;VYQ.SEMATTRS_NET_PEER_PORT=$AQ;VYQ.SEMATTRS_NET_PEER_NAME=UAQ;VYQ.SEMATTRS_NET_HOST_IP=EAQ;VYQ.SEMATTRS_NET_HOST_PORT=KAQ;VYQ.SEMATTRS_NET_HOST_NAME=VAQ;VYQ.SEMATTRS_NET_HOST_CONNECTION_TYPE=IAQ;VYQ.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=HAQ;VYQ.SEMATTRS_NET_HOST_CARRIER_NAME=DAQ;VYQ.SEMATTRS_NET_HOST_CARRIER_MCC=NAQ;VYQ.SEMATTRS_NET_HOST_CARRIER_MNC=LAQ;VYQ.SEMATTRS_NET_HOST_CARRIER_ICC=qAQ;VYQ.SEMATTRS_PEER_SERVICE=MAQ;VYQ.SEMATTRS_ENDUSER_ID=zAQ;VYQ.SEMATTRS_ENDUSER_ROLE=RAQ;VYQ.SEMATTRS_ENDUSER_SCOPE=wAQ;VYQ.SEMATTRS_THREAD_ID=jAQ;VYQ.SEMATTRS_THREAD_NAME=OAQ;VYQ.SEMATTRS_CODE_FUNCTION=PAQ;VYQ.SEMATTRS_CODE_NAMESPACE=TAQ;VYQ.SEMATTRS_CODE_FILEPATH=SAQ;VYQ.SEMATTRS_CODE_LINENO=kAQ;VYQ.SEMATTRS_HTTP_METHOD=_AQ;VYQ.SEMATTRS_HTTP_URL=vAQ;VYQ.SEMATTRS_HTTP_TARGET=yAQ;VYQ.SEMATTRS_HTTP_HOST=hAQ;VYQ.SEMATTRS_HTTP_SCHEME=gAQ;VYQ.SEMATTRS_HTTP_STATUS_CODE=xAQ;VYQ.SEMATTRS_HTTP_FLAVOR=fAQ;VYQ.SEMATTRS_HTTP_USER_AGENT=bAQ;VYQ.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=mAQ;VYQ.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=uAQ;VYQ.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=dAQ;VYQ.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=cAQ;VYQ.SEMATTRS_HTTP_SERVER_NAME=lAQ;VYQ.SEMATTRS_HTTP_ROUTE=pAQ;VYQ.SEMATTRS_HTTP_CLIENT_IP=iAQ;VYQ.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=nAQ;VYQ.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=sAQ;VYQ.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=rAQ;VYQ.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=aAQ;VYQ.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=oAQ;VYQ.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=tAQ;VYQ.SEMATTRS_AWS_DYNAMODB_PROJECTION=eAQ;VYQ.SEMATTRS_AWS_DYNAMODB_LIMIT=AQQ;VYQ.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=QQQ;VYQ.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=BQQ;VYQ.SEMATTRS_AWS_DYNAMODB_SELECT=YQQ;VYQ.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=JQQ;VYQ.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=CQQ;VYQ.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=XQQ;VYQ.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=GQQ;VYQ.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=FQQ;VYQ.SEMATTRS_AWS_DYNAMODB_SEGMENT=WQQ;VYQ.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=ZQQ;VYQ.SEMATTRS_AWS_DYNAMODB_COUNT=$QQ;VYQ.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=UQQ;VYQ.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=EQQ;VYQ.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=KQQ;VYQ.SEMATTRS_MESSAGING_SYSTEM=VQQ;VYQ.SEMATTRS_MESSAGING_DESTINATION=IQQ;VYQ.SEMATTRS_MESSAGING_DESTINATION_KIND=HQQ;VYQ.SEMATTRS_MESSAGING_TEMP_DESTINATION=DQQ;VYQ.SEMATTRS_MESSAGING_PROTOCOL=NQQ;VYQ.SEMATTRS_MESSAGING_PROTOCOL_VERSION=LQQ;VYQ.SEMATTRS_MESSAGING_URL=qQQ;VYQ.SEMATTRS_MESSAGING_MESSAGE_ID=MQQ;VYQ.SEMATTRS_MESSAGING_CONVERSATION_ID=zQQ;VYQ.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=RQQ;VYQ.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=wQQ;VYQ.SEMATTRS_MESSAGING_OPERATION=jQQ;VYQ.SEMATTRS_MESSAGING_CONSUMER_ID=OQQ;VYQ.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=PQQ;VYQ.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=TQQ;VYQ.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=SQQ;VYQ.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=kQQ;VYQ.SEMATTRS_MESSAGING_KAFKA_PARTITION=_QQ;VYQ.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=vQQ;VYQ.SEMATTRS_RPC_SYSTEM=yQQ;VYQ.SEMATTRS_RPC_SERVICE=hQQ;VYQ.SEMATTRS_RPC_METHOD=gQQ;VYQ.SEMATTRS_RPC_GRPC_STATUS_CODE=xQQ;VYQ.SEMATTRS_RPC_JSONRPC_VERSION=fQQ;VYQ.SEMATTRS_RPC_JSONRPC_REQUEST_ID=bQQ;VYQ.SEMATTRS_RPC_JSONRPC_ERROR_CODE=mQQ;VYQ.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=uQQ;VYQ.SEMATTRS_MESSAGE_TYPE=dQQ;VYQ.SEMATTRS_MESSAGE_ID=cQQ;VYQ.SEMATTRS_MESSAGE_COMPRESSED_SIZE=lQQ;VYQ.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=pQQ;VYQ.SemanticAttributes=(0,x5.createConstMap)([jeA,OeA,PeA,TeA,SeA,keA,_eA,veA,yeA,heA,geA,xeA,feA,beA,meA,ueA,deA,ceA,leA,peA,ieA,neA,seA,reA,aeA,oeA,teA,eeA,AAQ,QAQ,BAQ,YAQ,JAQ,CAQ,XAQ,GAQ,FAQ,WAQ,ZAQ,$AQ,UAQ,EAQ,KAQ,VAQ,IAQ,HAQ,DAQ,NAQ,LAQ,qAQ,MAQ,zAQ,RAQ,wAQ,jAQ,OAQ,PAQ,TAQ,SAQ,kAQ,_AQ,vAQ,yAQ,hAQ,gAQ,xAQ,fAQ,bAQ,mAQ,uAQ,dAQ,cAQ,lAQ,pAQ,iAQ,nAQ,sAQ,rAQ,aAQ,oAQ,tAQ,eAQ,AQQ,QQQ,BQQ,YQQ,JQQ,CQQ,XQQ,GQQ,FQQ,WQQ,ZQQ,$QQ,UQQ,EQQ,KQQ,VQQ,IQQ,HQQ,DQQ,NQQ,LQQ,qQQ,MQQ,zQQ,RQQ,wQQ,jQQ,OQQ,PQQ,TQQ,SQQ,kQQ,_QQ,vQQ,yQQ,hQQ,gQQ,xQQ,fQQ,bQQ,mQQ,uQQ,dQQ,cQQ,lQQ,pQQ]);var iQQ="other_sql",nQQ="mssql",sQQ="mysql",rQQ="oracle",aQQ="db2",oQQ="postgresql",tQQ="redshift",eQQ="hive",ABQ="cloudscape",QBQ="hsqldb",BBQ="progress",YBQ="maxdb",JBQ="hanadb",CBQ="ingres",XBQ="firstsql",GBQ="edb",FBQ="cache",WBQ="adabas",ZBQ="firebird",$BQ="derby",UBQ="filemaker",EBQ="informix",KBQ="instantdb",VBQ="interbase",IBQ="mariadb",HBQ="netezza",DBQ="pervasive",NBQ="pointbase",LBQ="sqlite",qBQ="sybase",MBQ="teradata",zBQ="vertica",RBQ="h2",wBQ="coldfusion",jBQ="cassandra",OBQ="hbase",PBQ="mongodb",TBQ="redis",SBQ="couchbase",kBQ="couchdb",_BQ="cosmosdb",vBQ="dynamodb",yBQ="neo4j",hBQ="geode",gBQ="elasticsearch",xBQ="memcached",fBQ="cockroachdb";VYQ.DBSYSTEMVALUES_OTHER_SQL=iQQ;VYQ.DBSYSTEMVALUES_MSSQL=nQQ;VYQ.DBSYSTEMVALUES_MYSQL=sQQ;VYQ.DBSYSTEMVALUES_ORACLE=rQQ;VYQ.DBSYSTEMVALUES_DB2=aQQ;VYQ.DBSYSTEMVALUES_POSTGRESQL=oQQ;VYQ.DBSYSTEMVALUES_REDSHIFT=tQQ;VYQ.DBSYSTEMVALUES_HIVE=eQQ;VYQ.DBSYSTEMVALUES_CLOUDSCAPE=ABQ;VYQ.DBSYSTEMVALUES_HSQLDB=QBQ;VYQ.DBSYSTEMVALUES_PROGRESS=BBQ;VYQ.DBSYSTEMVALUES_MAXDB=YBQ;VYQ.DBSYSTEMVALUES_HANADB=JBQ;VYQ.DBSYSTEMVALUES_INGRES=CBQ;VYQ.DBSYSTEMVALUES_FIRSTSQL=XBQ;VYQ.DBSYSTEMVALUES_EDB=GBQ;VYQ.DBSYSTEMVALUES_CACHE=FBQ;VYQ.DBSYSTEMVALUES_ADABAS=WBQ;VYQ.DBSYSTEMVALUES_FIREBIRD=ZBQ;VYQ.DBSYSTEMVALUES_DERBY=$BQ;VYQ.DBSYSTEMVALUES_FILEMAKER=UBQ;VYQ.DBSYSTEMVALUES_INFORMIX=EBQ;VYQ.DBSYSTEMVALUES_INSTANTDB=KBQ;VYQ.DBSYSTEMVALUES_INTERBASE=VBQ;VYQ.DBSYSTEMVALUES_MARIADB=IBQ;VYQ.DBSYSTEMVALUES_NETEZZA=HBQ;VYQ.DBSYSTEMVALUES_PERVASIVE=DBQ;VYQ.DBSYSTEMVALUES_POINTBASE=NBQ;VYQ.DBSYSTEMVALUES_SQLITE=LBQ;VYQ.DBSYSTEMVALUES_SYBASE=qBQ;VYQ.DBSYSTEMVALUES_TERADATA=MBQ;VYQ.DBSYSTEMVALUES_VERTICA=zBQ;VYQ.DBSYSTEMVALUES_H2=RBQ;VYQ.DBSYSTEMVALUES_COLDFUSION=wBQ;VYQ.DBSYSTEMVALUES_CASSANDRA=jBQ;VYQ.DBSYSTEMVALUES_HBASE=OBQ;VYQ.DBSYSTEMVALUES_MONGODB=PBQ;VYQ.DBSYSTEMVALUES_REDIS=TBQ;VYQ.DBSYSTEMVALUES_COUCHBASE=SBQ;VYQ.DBSYSTEMVALUES_COUCHDB=kBQ;VYQ.DBSYSTEMVALUES_COSMOSDB=_BQ;VYQ.DBSYSTEMVALUES_DYNAMODB=vBQ;VYQ.DBSYSTEMVALUES_NEO4J=yBQ;VYQ.DBSYSTEMVALUES_GEODE=hBQ;VYQ.DBSYSTEMVALUES_ELASTICSEARCH=gBQ;VYQ.DBSYSTEMVALUES_MEMCACHED=xBQ;VYQ.DBSYSTEMVALUES_COCKROACHDB=fBQ;VYQ.DbSystemValues=(0,x5.createConstMap)([iQQ,nQQ,sQQ,rQQ,aQQ,oQQ,tQQ,eQQ,ABQ,QBQ,BBQ,YBQ,JBQ,CBQ,XBQ,GBQ,FBQ,WBQ,ZBQ,$BQ,UBQ,EBQ,KBQ,VBQ,IBQ,HBQ,DBQ,NBQ,LBQ,qBQ,MBQ,zBQ,RBQ,wBQ,jBQ,OBQ,PBQ,TBQ,SBQ,kBQ,_BQ,vBQ,yBQ,hBQ,gBQ,xBQ,fBQ]);var bBQ="all",mBQ="each_quorum",uBQ="quorum",dBQ="local_quorum",cBQ="one",lBQ="two",pBQ="three",iBQ="local_one",nBQ="any",sBQ="serial",rBQ="local_serial";VYQ.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=bBQ;VYQ.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=mBQ;VYQ.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=uBQ;VYQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=dBQ;VYQ.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=cBQ;VYQ.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=lBQ;VYQ.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=pBQ;VYQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=iBQ;VYQ.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=nBQ;VYQ.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=sBQ;VYQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=rBQ;VYQ.DbCassandraConsistencyLevelValues=(0,x5.createConstMap)([bBQ,mBQ,uBQ,dBQ,cBQ,lBQ,pBQ,iBQ,nBQ,sBQ,rBQ]);var aBQ="datasource",oBQ="http",tBQ="pubsub",eBQ="timer",A0Q="other";VYQ.FAASTRIGGERVALUES_DATASOURCE=aBQ;VYQ.FAASTRIGGERVALUES_HTTP=oBQ;VYQ.FAASTRIGGERVALUES_PUBSUB=tBQ;VYQ.FAASTRIGGERVALUES_TIMER=eBQ;VYQ.FAASTRIGGERVALUES_OTHER=A0Q;VYQ.FaasTriggerValues=(0,x5.createConstMap)([aBQ,oBQ,tBQ,eBQ,A0Q]);var Q0Q="insert",B0Q="edit",Y0Q="delete";VYQ.FAASDOCUMENTOPERATIONVALUES_INSERT=Q0Q;VYQ.FAASDOCUMENTOPERATIONVALUES_EDIT=B0Q;VYQ.FAASDOCUMENTOPERATIONVALUES_DELETE=Y0Q;VYQ.FaasDocumentOperationValues=(0,x5.createConstMap)([Q0Q,B0Q,Y0Q]);var J0Q="alibaba_cloud",C0Q="aws",X0Q="azure",G0Q="gcp";VYQ.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=J0Q;VYQ.FAASINVOKEDPROVIDERVALUES_AWS=C0Q;VYQ.FAASINVOKEDPROVIDERVALUES_AZURE=X0Q;VYQ.FAASINVOKEDPROVIDERVALUES_GCP=G0Q;VYQ.FaasInvokedProviderValues=(0,x5.createConstMap)([J0Q,C0Q,X0Q,G0Q]);var F0Q="ip_tcp",W0Q="ip_udp",Z0Q="ip",$0Q="unix",U0Q="pipe",E0Q="inproc",K0Q="other";VYQ.NETTRANSPORTVALUES_IP_TCP=F0Q;VYQ.NETTRANSPORTVALUES_IP_UDP=W0Q;VYQ.NETTRANSPORTVALUES_IP=Z0Q;VYQ.NETTRANSPORTVALUES_UNIX=$0Q;VYQ.NETTRANSPORTVALUES_PIPE=U0Q;VYQ.NETTRANSPORTVALUES_INPROC=E0Q;VYQ.NETTRANSPORTVALUES_OTHER=K0Q;VYQ.NetTransportValues=(0,x5.createConstMap)([F0Q,W0Q,Z0Q,$0Q,U0Q,E0Q,K0Q]);var V0Q="wifi",I0Q="wired",H0Q="cell",D0Q="unavailable",N0Q="unknown";VYQ.NETHOSTCONNECTIONTYPEVALUES_WIFI=V0Q;VYQ.NETHOSTCONNECTIONTYPEVALUES_WIRED=I0Q;VYQ.NETHOSTCONNECTIONTYPEVALUES_CELL=H0Q;VYQ.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=D0Q;VYQ.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=N0Q;VYQ.NetHostConnectionTypeValues=(0,x5.createConstMap)([V0Q,I0Q,H0Q,D0Q,N0Q]);var L0Q="gprs",q0Q="edge",M0Q="umts",z0Q="cdma",R0Q="evdo_0",w0Q="evdo_a",j0Q="cdma2000_1xrtt",O0Q="hsdpa",P0Q="hsupa",T0Q="hspa",S0Q="iden",k0Q="evdo_b",_0Q="lte",v0Q="ehrpd",y0Q="hspap",h0Q="gsm",g0Q="td_scdma",x0Q="iwlan",f0Q="nr",b0Q="nrnsa",m0Q="lte_ca";VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=L0Q;VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=q0Q;VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=M0Q;VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=z0Q;VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=R0Q;VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=w0Q;VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=j0Q;VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=O0Q;VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=P0Q;VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=T0Q;VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=S0Q;VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=k0Q;VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=_0Q;VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=v0Q;VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=y0Q;VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=h0Q;VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=g0Q;VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=x0Q;VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_NR=f0Q;VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=b0Q;VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=m0Q;VYQ.NetHostConnectionSubtypeValues=(0,x5.createConstMap)([L0Q,q0Q,M0Q,z0Q,R0Q,w0Q,j0Q,O0Q,P0Q,T0Q,S0Q,k0Q,_0Q,v0Q,y0Q,h0Q,g0Q,x0Q,f0Q,b0Q,m0Q]);var u0Q="1.0",d0Q="1.1",c0Q="2.0",l0Q="SPDY",p0Q="QUIC";VYQ.HTTPFLAVORVALUES_HTTP_1_0=u0Q;VYQ.HTTPFLAVORVALUES_HTTP_1_1=d0Q;VYQ.HTTPFLAVORVALUES_HTTP_2_0=c0Q;VYQ.HTTPFLAVORVALUES_SPDY=l0Q;VYQ.HTTPFLAVORVALUES_QUIC=p0Q;VYQ.HttpFlavorValues={HTTP_1_0:u0Q,HTTP_1_1:d0Q,HTTP_2_0:c0Q,SPDY:l0Q,QUIC:p0Q};var i0Q="queue",n0Q="topic";VYQ.MESSAGINGDESTINATIONKINDVALUES_QUEUE=i0Q;VYQ.MESSAGINGDESTINATIONKINDVALUES_TOPIC=n0Q;VYQ.MessagingDestinationKindValues=(0,x5.createConstMap)([i0Q,n0Q]);var s0Q="receive",r0Q="process";VYQ.MESSAGINGOPERATIONVALUES_RECEIVE=s0Q;VYQ.MESSAGINGOPERATIONVALUES_PROCESS=r0Q;VYQ.MessagingOperationValues=(0,x5.createConstMap)([s0Q,r0Q]);var a0Q=0,o0Q=1,t0Q=2,e0Q=3,AYQ=4,QYQ=5,BYQ=6,YYQ=7,JYQ=8,CYQ=9,XYQ=10,GYQ=11,FYQ=12,WYQ=13,ZYQ=14,$YQ=15,UYQ=16;VYQ.RPCGRPCSTATUSCODEVALUES_OK=a0Q;VYQ.RPCGRPCSTATUSCODEVALUES_CANCELLED=o0Q;VYQ.RPCGRPCSTATUSCODEVALUES_UNKNOWN=t0Q;VYQ.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=e0Q;VYQ.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=AYQ;VYQ.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=QYQ;VYQ.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=BYQ;VYQ.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=YYQ;VYQ.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=JYQ;VYQ.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=CYQ;VYQ.RPCGRPCSTATUSCODEVALUES_ABORTED=XYQ;VYQ.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=GYQ;VYQ.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=FYQ;VYQ.RPCGRPCSTATUSCODEVALUES_INTERNAL=WYQ;VYQ.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=ZYQ;VYQ.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=$YQ;VYQ.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=UYQ;VYQ.RpcGrpcStatusCodeValues={OK:a0Q,CANCELLED:o0Q,UNKNOWN:t0Q,INVALID_ARGUMENT:e0Q,DEADLINE_EXCEEDED:AYQ,NOT_FOUND:QYQ,ALREADY_EXISTS:BYQ,PERMISSION_DENIED:YYQ,RESOURCE_EXHAUSTED:JYQ,FAILED_PRECONDITION:CYQ,ABORTED:XYQ,OUT_OF_RANGE:GYQ,UNIMPLEMENTED:FYQ,INTERNAL:WYQ,UNAVAILABLE:ZYQ,DATA_LOSS:$YQ,UNAUTHENTICATED:UYQ};var EYQ="SENT",KYQ="RECEIVED";VYQ.MESSAGETYPEVALUES_SENT=EYQ;VYQ.MESSAGETYPEVALUES_RECEIVED=KYQ;VYQ.MessageTypeValues=(0,x5.createConstMap)([EYQ,KYQ])});var zYQ=R((J$)=>{var r90=J$&&J$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),a90=J$&&J$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))r90(Q,A,B)};Object.defineProperty(J$,"__esModule",{value:!0});a90(MYQ(),J$)});var t9Q=R((s9Q)=>{Object.defineProperty(s9Q,"__esModule",{value:!0});s9Q.SEMRESATTRS_K8S_STATEFULSET_NAME=s9Q.SEMRESATTRS_K8S_STATEFULSET_UID=s9Q.SEMRESATTRS_K8S_DEPLOYMENT_NAME=s9Q.SEMRESATTRS_K8S_DEPLOYMENT_UID=s9Q.SEMRESATTRS_K8S_REPLICASET_NAME=s9Q.SEMRESATTRS_K8S_REPLICASET_UID=s9Q.SEMRESATTRS_K8S_CONTAINER_NAME=s9Q.SEMRESATTRS_K8S_POD_NAME=s9Q.SEMRESATTRS_K8S_POD_UID=s9Q.SEMRESATTRS_K8S_NAMESPACE_NAME=s9Q.SEMRESATTRS_K8S_NODE_UID=s9Q.SEMRESATTRS_K8S_NODE_NAME=s9Q.SEMRESATTRS_K8S_CLUSTER_NAME=s9Q.SEMRESATTRS_HOST_IMAGE_VERSION=s9Q.SEMRESATTRS_HOST_IMAGE_ID=s9Q.SEMRESATTRS_HOST_IMAGE_NAME=s9Q.SEMRESATTRS_HOST_ARCH=s9Q.SEMRESATTRS_HOST_TYPE=s9Q.SEMRESATTRS_HOST_NAME=s9Q.SEMRESATTRS_HOST_ID=s9Q.SEMRESATTRS_FAAS_MAX_MEMORY=s9Q.SEMRESATTRS_FAAS_INSTANCE=s9Q.SEMRESATTRS_FAAS_VERSION=s9Q.SEMRESATTRS_FAAS_ID=s9Q.SEMRESATTRS_FAAS_NAME=s9Q.SEMRESATTRS_DEVICE_MODEL_NAME=s9Q.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=s9Q.SEMRESATTRS_DEVICE_ID=s9Q.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=s9Q.SEMRESATTRS_CONTAINER_IMAGE_TAG=s9Q.SEMRESATTRS_CONTAINER_IMAGE_NAME=s9Q.SEMRESATTRS_CONTAINER_RUNTIME=s9Q.SEMRESATTRS_CONTAINER_ID=s9Q.SEMRESATTRS_CONTAINER_NAME=s9Q.SEMRESATTRS_AWS_LOG_STREAM_ARNS=s9Q.SEMRESATTRS_AWS_LOG_STREAM_NAMES=s9Q.SEMRESATTRS_AWS_LOG_GROUP_ARNS=s9Q.SEMRESATTRS_AWS_LOG_GROUP_NAMES=s9Q.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=s9Q.SEMRESATTRS_AWS_ECS_TASK_REVISION=s9Q.SEMRESATTRS_AWS_ECS_TASK_FAMILY=s9Q.SEMRESATTRS_AWS_ECS_TASK_ARN=s9Q.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=s9Q.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=s9Q.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=s9Q.SEMRESATTRS_CLOUD_PLATFORM=s9Q.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=s9Q.SEMRESATTRS_CLOUD_REGION=s9Q.SEMRESATTRS_CLOUD_ACCOUNT_ID=s9Q.SEMRESATTRS_CLOUD_PROVIDER=void 0;s9Q.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=s9Q.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=s9Q.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=s9Q.CLOUDPLATFORMVALUES_AZURE_AKS=s9Q.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=s9Q.CLOUDPLATFORMVALUES_AZURE_VM=s9Q.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=s9Q.CLOUDPLATFORMVALUES_AWS_LAMBDA=s9Q.CLOUDPLATFORMVALUES_AWS_EKS=s9Q.CLOUDPLATFORMVALUES_AWS_ECS=s9Q.CLOUDPLATFORMVALUES_AWS_EC2=s9Q.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=s9Q.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=s9Q.CloudProviderValues=s9Q.CLOUDPROVIDERVALUES_GCP=s9Q.CLOUDPROVIDERVALUES_AZURE=s9Q.CLOUDPROVIDERVALUES_AWS=s9Q.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=s9Q.SemanticResourceAttributes=s9Q.SEMRESATTRS_WEBENGINE_DESCRIPTION=s9Q.SEMRESATTRS_WEBENGINE_VERSION=s9Q.SEMRESATTRS_WEBENGINE_NAME=s9Q.SEMRESATTRS_TELEMETRY_AUTO_VERSION=s9Q.SEMRESATTRS_TELEMETRY_SDK_VERSION=s9Q.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=s9Q.SEMRESATTRS_TELEMETRY_SDK_NAME=s9Q.SEMRESATTRS_SERVICE_VERSION=s9Q.SEMRESATTRS_SERVICE_INSTANCE_ID=s9Q.SEMRESATTRS_SERVICE_NAMESPACE=s9Q.SEMRESATTRS_SERVICE_NAME=s9Q.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=s9Q.SEMRESATTRS_PROCESS_RUNTIME_VERSION=s9Q.SEMRESATTRS_PROCESS_RUNTIME_NAME=s9Q.SEMRESATTRS_PROCESS_OWNER=s9Q.SEMRESATTRS_PROCESS_COMMAND_ARGS=s9Q.SEMRESATTRS_PROCESS_COMMAND_LINE=s9Q.SEMRESATTRS_PROCESS_COMMAND=s9Q.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=s9Q.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=s9Q.SEMRESATTRS_PROCESS_PID=s9Q.SEMRESATTRS_OS_VERSION=s9Q.SEMRESATTRS_OS_NAME=s9Q.SEMRESATTRS_OS_DESCRIPTION=s9Q.SEMRESATTRS_OS_TYPE=s9Q.SEMRESATTRS_K8S_CRONJOB_NAME=s9Q.SEMRESATTRS_K8S_CRONJOB_UID=s9Q.SEMRESATTRS_K8S_JOB_NAME=s9Q.SEMRESATTRS_K8S_JOB_UID=s9Q.SEMRESATTRS_K8S_DAEMONSET_NAME=s9Q.SEMRESATTRS_K8S_DAEMONSET_UID=void 0;s9Q.TelemetrySdkLanguageValues=s9Q.TELEMETRYSDKLANGUAGEVALUES_WEBJS=s9Q.TELEMETRYSDKLANGUAGEVALUES_RUBY=s9Q.TELEMETRYSDKLANGUAGEVALUES_PYTHON=s9Q.TELEMETRYSDKLANGUAGEVALUES_PHP=s9Q.TELEMETRYSDKLANGUAGEVALUES_NODEJS=s9Q.TELEMETRYSDKLANGUAGEVALUES_JAVA=s9Q.TELEMETRYSDKLANGUAGEVALUES_GO=s9Q.TELEMETRYSDKLANGUAGEVALUES_ERLANG=s9Q.TELEMETRYSDKLANGUAGEVALUES_DOTNET=s9Q.TELEMETRYSDKLANGUAGEVALUES_CPP=s9Q.OsTypeValues=s9Q.OSTYPEVALUES_Z_OS=s9Q.OSTYPEVALUES_SOLARIS=s9Q.OSTYPEVALUES_AIX=s9Q.OSTYPEVALUES_HPUX=s9Q.OSTYPEVALUES_DRAGONFLYBSD=s9Q.OSTYPEVALUES_OPENBSD=s9Q.OSTYPEVALUES_NETBSD=s9Q.OSTYPEVALUES_FREEBSD=s9Q.OSTYPEVALUES_DARWIN=s9Q.OSTYPEVALUES_LINUX=s9Q.OSTYPEVALUES_WINDOWS=s9Q.HostArchValues=s9Q.HOSTARCHVALUES_X86=s9Q.HOSTARCHVALUES_PPC64=s9Q.HOSTARCHVALUES_PPC32=s9Q.HOSTARCHVALUES_IA64=s9Q.HOSTARCHVALUES_ARM64=s9Q.HOSTARCHVALUES_ARM32=s9Q.HOSTARCHVALUES_AMD64=s9Q.AwsEcsLaunchtypeValues=s9Q.AWSECSLAUNCHTYPEVALUES_FARGATE=s9Q.AWSECSLAUNCHTYPEVALUES_EC2=s9Q.CloudPlatformValues=s9Q.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=s9Q.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=s9Q.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=s9Q.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=void 0;var C$=hp(),RYQ="cloud.provider",wYQ="cloud.account.id",jYQ="cloud.region",OYQ="cloud.availability_zone",PYQ="cloud.platform",TYQ="aws.ecs.container.arn",SYQ="aws.ecs.cluster.arn",kYQ="aws.ecs.launchtype",_YQ="aws.ecs.task.arn",vYQ="aws.ecs.task.family",yYQ="aws.ecs.task.revision",hYQ="aws.eks.cluster.arn",gYQ="aws.log.group.names",xYQ="aws.log.group.arns",fYQ="aws.log.stream.names",bYQ="aws.log.stream.arns",mYQ="container.name",uYQ="container.id",dYQ="container.runtime",cYQ="container.image.name",lYQ="container.image.tag",pYQ="deployment.environment",iYQ="device.id",nYQ="device.model.identifier",sYQ="device.model.name",rYQ="faas.name",aYQ="faas.id",oYQ="faas.version",tYQ="faas.instance",eYQ="faas.max_memory",AJQ="host.id",QJQ="host.name",BJQ="host.type",YJQ="host.arch",JJQ="host.image.name",CJQ="host.image.id",XJQ="host.image.version",GJQ="k8s.cluster.name",FJQ="k8s.node.name",WJQ="k8s.node.uid",ZJQ="k8s.namespace.name",$JQ="k8s.pod.uid",UJQ="k8s.pod.name",EJQ="k8s.container.name",KJQ="k8s.replicaset.uid",VJQ="k8s.replicaset.name",IJQ="k8s.deployment.uid",HJQ="k8s.deployment.name",DJQ="k8s.statefulset.uid",NJQ="k8s.statefulset.name",LJQ="k8s.daemonset.uid",qJQ="k8s.daemonset.name",MJQ="k8s.job.uid",zJQ="k8s.job.name",RJQ="k8s.cronjob.uid",wJQ="k8s.cronjob.name",jJQ="os.type",OJQ="os.description",PJQ="os.name",TJQ="os.version",SJQ="process.pid",kJQ="process.executable.name",_JQ="process.executable.path",vJQ="process.command",yJQ="process.command_line",hJQ="process.command_args",gJQ="process.owner",xJQ="process.runtime.name",fJQ="process.runtime.version",bJQ="process.runtime.description",mJQ="service.name",uJQ="service.namespace",dJQ="service.instance.id",cJQ="service.version",lJQ="telemetry.sdk.name",pJQ="telemetry.sdk.language",iJQ="telemetry.sdk.version",nJQ="telemetry.auto.version",sJQ="webengine.name",rJQ="webengine.version",aJQ="webengine.description";s9Q.SEMRESATTRS_CLOUD_PROVIDER=RYQ;s9Q.SEMRESATTRS_CLOUD_ACCOUNT_ID=wYQ;s9Q.SEMRESATTRS_CLOUD_REGION=jYQ;s9Q.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=OYQ;s9Q.SEMRESATTRS_CLOUD_PLATFORM=PYQ;s9Q.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=TYQ;s9Q.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=SYQ;s9Q.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=kYQ;s9Q.SEMRESATTRS_AWS_ECS_TASK_ARN=_YQ;s9Q.SEMRESATTRS_AWS_ECS_TASK_FAMILY=vYQ;s9Q.SEMRESATTRS_AWS_ECS_TASK_REVISION=yYQ;s9Q.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=hYQ;s9Q.SEMRESATTRS_AWS_LOG_GROUP_NAMES=gYQ;s9Q.SEMRESATTRS_AWS_LOG_GROUP_ARNS=xYQ;s9Q.SEMRESATTRS_AWS_LOG_STREAM_NAMES=fYQ;s9Q.SEMRESATTRS_AWS_LOG_STREAM_ARNS=bYQ;s9Q.SEMRESATTRS_CONTAINER_NAME=mYQ;s9Q.SEMRESATTRS_CONTAINER_ID=uYQ;s9Q.SEMRESATTRS_CONTAINER_RUNTIME=dYQ;s9Q.SEMRESATTRS_CONTAINER_IMAGE_NAME=cYQ;s9Q.SEMRESATTRS_CONTAINER_IMAGE_TAG=lYQ;s9Q.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=pYQ;s9Q.SEMRESATTRS_DEVICE_ID=iYQ;s9Q.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=nYQ;s9Q.SEMRESATTRS_DEVICE_MODEL_NAME=sYQ;s9Q.SEMRESATTRS_FAAS_NAME=rYQ;s9Q.SEMRESATTRS_FAAS_ID=aYQ;s9Q.SEMRESATTRS_FAAS_VERSION=oYQ;s9Q.SEMRESATTRS_FAAS_INSTANCE=tYQ;s9Q.SEMRESATTRS_FAAS_MAX_MEMORY=eYQ;s9Q.SEMRESATTRS_HOST_ID=AJQ;s9Q.SEMRESATTRS_HOST_NAME=QJQ;s9Q.SEMRESATTRS_HOST_TYPE=BJQ;s9Q.SEMRESATTRS_HOST_ARCH=YJQ;s9Q.SEMRESATTRS_HOST_IMAGE_NAME=JJQ;s9Q.SEMRESATTRS_HOST_IMAGE_ID=CJQ;s9Q.SEMRESATTRS_HOST_IMAGE_VERSION=XJQ;s9Q.SEMRESATTRS_K8S_CLUSTER_NAME=GJQ;s9Q.SEMRESATTRS_K8S_NODE_NAME=FJQ;s9Q.SEMRESATTRS_K8S_NODE_UID=WJQ;s9Q.SEMRESATTRS_K8S_NAMESPACE_NAME=ZJQ;s9Q.SEMRESATTRS_K8S_POD_UID=$JQ;s9Q.SEMRESATTRS_K8S_POD_NAME=UJQ;s9Q.SEMRESATTRS_K8S_CONTAINER_NAME=EJQ;s9Q.SEMRESATTRS_K8S_REPLICASET_UID=KJQ;s9Q.SEMRESATTRS_K8S_REPLICASET_NAME=VJQ;s9Q.SEMRESATTRS_K8S_DEPLOYMENT_UID=IJQ;s9Q.SEMRESATTRS_K8S_DEPLOYMENT_NAME=HJQ;s9Q.SEMRESATTRS_K8S_STATEFULSET_UID=DJQ;s9Q.SEMRESATTRS_K8S_STATEFULSET_NAME=NJQ;s9Q.SEMRESATTRS_K8S_DAEMONSET_UID=LJQ;s9Q.SEMRESATTRS_K8S_DAEMONSET_NAME=qJQ;s9Q.SEMRESATTRS_K8S_JOB_UID=MJQ;s9Q.SEMRESATTRS_K8S_JOB_NAME=zJQ;s9Q.SEMRESATTRS_K8S_CRONJOB_UID=RJQ;s9Q.SEMRESATTRS_K8S_CRONJOB_NAME=wJQ;s9Q.SEMRESATTRS_OS_TYPE=jJQ;s9Q.SEMRESATTRS_OS_DESCRIPTION=OJQ;s9Q.SEMRESATTRS_OS_NAME=PJQ;s9Q.SEMRESATTRS_OS_VERSION=TJQ;s9Q.SEMRESATTRS_PROCESS_PID=SJQ;s9Q.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=kJQ;s9Q.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=_JQ;s9Q.SEMRESATTRS_PROCESS_COMMAND=vJQ;s9Q.SEMRESATTRS_PROCESS_COMMAND_LINE=yJQ;s9Q.SEMRESATTRS_PROCESS_COMMAND_ARGS=hJQ;s9Q.SEMRESATTRS_PROCESS_OWNER=gJQ;s9Q.SEMRESATTRS_PROCESS_RUNTIME_NAME=xJQ;s9Q.SEMRESATTRS_PROCESS_RUNTIME_VERSION=fJQ;s9Q.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=bJQ;s9Q.SEMRESATTRS_SERVICE_NAME=mJQ;s9Q.SEMRESATTRS_SERVICE_NAMESPACE=uJQ;s9Q.SEMRESATTRS_SERVICE_INSTANCE_ID=dJQ;s9Q.SEMRESATTRS_SERVICE_VERSION=cJQ;s9Q.SEMRESATTRS_TELEMETRY_SDK_NAME=lJQ;s9Q.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=pJQ;s9Q.SEMRESATTRS_TELEMETRY_SDK_VERSION=iJQ;s9Q.SEMRESATTRS_TELEMETRY_AUTO_VERSION=nJQ;s9Q.SEMRESATTRS_WEBENGINE_NAME=sJQ;s9Q.SEMRESATTRS_WEBENGINE_VERSION=rJQ;s9Q.SEMRESATTRS_WEBENGINE_DESCRIPTION=aJQ;s9Q.SemanticResourceAttributes=(0,C$.createConstMap)([RYQ,wYQ,jYQ,OYQ,PYQ,TYQ,SYQ,kYQ,_YQ,vYQ,yYQ,hYQ,gYQ,xYQ,fYQ,bYQ,mYQ,uYQ,dYQ,cYQ,lYQ,pYQ,iYQ,nYQ,sYQ,rYQ,aYQ,oYQ,tYQ,eYQ,AJQ,QJQ,BJQ,YJQ,JJQ,CJQ,XJQ,GJQ,FJQ,WJQ,ZJQ,$JQ,UJQ,EJQ,KJQ,VJQ,IJQ,HJQ,DJQ,NJQ,LJQ,qJQ,MJQ,zJQ,RJQ,wJQ,jJQ,OJQ,PJQ,TJQ,SJQ,kJQ,_JQ,vJQ,yJQ,hJQ,gJQ,xJQ,fJQ,bJQ,mJQ,uJQ,dJQ,cJQ,lJQ,pJQ,iJQ,nJQ,sJQ,rJQ,aJQ]);var oJQ="alibaba_cloud",tJQ="aws",eJQ="azure",A9Q="gcp";s9Q.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=oJQ;s9Q.CLOUDPROVIDERVALUES_AWS=tJQ;s9Q.CLOUDPROVIDERVALUES_AZURE=eJQ;s9Q.CLOUDPROVIDERVALUES_GCP=A9Q;s9Q.CloudProviderValues=(0,C$.createConstMap)([oJQ,tJQ,eJQ,A9Q]);var Q9Q="alibaba_cloud_ecs",B9Q="alibaba_cloud_fc",Y9Q="aws_ec2",J9Q="aws_ecs",C9Q="aws_eks",X9Q="aws_lambda",G9Q="aws_elastic_beanstalk",F9Q="azure_vm",W9Q="azure_container_instances",Z9Q="azure_aks",$9Q="azure_functions",U9Q="azure_app_service",E9Q="gcp_compute_engine",K9Q="gcp_cloud_run",V9Q="gcp_kubernetes_engine",I9Q="gcp_cloud_functions",H9Q="gcp_app_engine";s9Q.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=Q9Q;s9Q.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=B9Q;s9Q.CLOUDPLATFORMVALUES_AWS_EC2=Y9Q;s9Q.CLOUDPLATFORMVALUES_AWS_ECS=J9Q;s9Q.CLOUDPLATFORMVALUES_AWS_EKS=C9Q;s9Q.CLOUDPLATFORMVALUES_AWS_LAMBDA=X9Q;s9Q.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=G9Q;s9Q.CLOUDPLATFORMVALUES_AZURE_VM=F9Q;s9Q.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=W9Q;s9Q.CLOUDPLATFORMVALUES_AZURE_AKS=Z9Q;s9Q.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=$9Q;s9Q.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=U9Q;s9Q.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=E9Q;s9Q.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=K9Q;s9Q.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=V9Q;s9Q.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=I9Q;s9Q.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=H9Q;s9Q.CloudPlatformValues=(0,C$.createConstMap)([Q9Q,B9Q,Y9Q,J9Q,C9Q,X9Q,G9Q,F9Q,W9Q,Z9Q,$9Q,U9Q,E9Q,K9Q,V9Q,I9Q,H9Q]);var D9Q="ec2",N9Q="fargate";s9Q.AWSECSLAUNCHTYPEVALUES_EC2=D9Q;s9Q.AWSECSLAUNCHTYPEVALUES_FARGATE=N9Q;s9Q.AwsEcsLaunchtypeValues=(0,C$.createConstMap)([D9Q,N9Q]);var L9Q="amd64",q9Q="arm32",M9Q="arm64",z9Q="ia64",R9Q="ppc32",w9Q="ppc64",j9Q="x86";s9Q.HOSTARCHVALUES_AMD64=L9Q;s9Q.HOSTARCHVALUES_ARM32=q9Q;s9Q.HOSTARCHVALUES_ARM64=M9Q;s9Q.HOSTARCHVALUES_IA64=z9Q;s9Q.HOSTARCHVALUES_PPC32=R9Q;s9Q.HOSTARCHVALUES_PPC64=w9Q;s9Q.HOSTARCHVALUES_X86=j9Q;s9Q.HostArchValues=(0,C$.createConstMap)([L9Q,q9Q,M9Q,z9Q,R9Q,w9Q,j9Q]);var O9Q="windows",P9Q="linux",T9Q="darwin",S9Q="freebsd",k9Q="netbsd",_9Q="openbsd",v9Q="dragonflybsd",y9Q="hpux",h9Q="aix",g9Q="solaris",x9Q="z_os";s9Q.OSTYPEVALUES_WINDOWS=O9Q;s9Q.OSTYPEVALUES_LINUX=P9Q;s9Q.OSTYPEVALUES_DARWIN=T9Q;s9Q.OSTYPEVALUES_FREEBSD=S9Q;s9Q.OSTYPEVALUES_NETBSD=k9Q;s9Q.OSTYPEVALUES_OPENBSD=_9Q;s9Q.OSTYPEVALUES_DRAGONFLYBSD=v9Q;s9Q.OSTYPEVALUES_HPUX=y9Q;s9Q.OSTYPEVALUES_AIX=h9Q;s9Q.OSTYPEVALUES_SOLARIS=g9Q;s9Q.OSTYPEVALUES_Z_OS=x9Q;s9Q.OsTypeValues=(0,C$.createConstMap)([O9Q,P9Q,T9Q,S9Q,k9Q,_9Q,v9Q,y9Q,h9Q,g9Q,x9Q]);var f9Q="cpp",b9Q="dotnet",m9Q="erlang",u9Q="go",d9Q="java",c9Q="nodejs",l9Q="php",p9Q="python",i9Q="ruby",n9Q="webjs";s9Q.TELEMETRYSDKLANGUAGEVALUES_CPP=f9Q;s9Q.TELEMETRYSDKLANGUAGEVALUES_DOTNET=b9Q;s9Q.TELEMETRYSDKLANGUAGEVALUES_ERLANG=m9Q;s9Q.TELEMETRYSDKLANGUAGEVALUES_GO=u9Q;s9Q.TELEMETRYSDKLANGUAGEVALUES_JAVA=d9Q;s9Q.TELEMETRYSDKLANGUAGEVALUES_NODEJS=c9Q;s9Q.TELEMETRYSDKLANGUAGEVALUES_PHP=l9Q;s9Q.TELEMETRYSDKLANGUAGEVALUES_PYTHON=p9Q;s9Q.TELEMETRYSDKLANGUAGEVALUES_RUBY=i9Q;s9Q.TELEMETRYSDKLANGUAGEVALUES_WEBJS=n9Q;s9Q.TelemetrySdkLanguageValues=(0,C$.createConstMap)([f9Q,b9Q,m9Q,u9Q,d9Q,c9Q,l9Q,p9Q,i9Q,n9Q])});var e9Q=R((X$)=>{var wC0=X$&&X$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),jC0=X$&&X$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))wC0(Q,A,B)};Object.defineProperty(X$,"__esModule",{value:!0});jC0(t9Q(),X$)});var J8Q=R((A8Q)=>{Object.defineProperty(A8Q,"__esModule",{value:!0});A8Q.HTTP_REQUEST_METHOD_VALUE_POST=A8Q.HTTP_REQUEST_METHOD_VALUE_PATCH=A8Q.HTTP_REQUEST_METHOD_VALUE_OPTIONS=A8Q.HTTP_REQUEST_METHOD_VALUE_HEAD=A8Q.HTTP_REQUEST_METHOD_VALUE_GET=A8Q.HTTP_REQUEST_METHOD_VALUE_DELETE=A8Q.HTTP_REQUEST_METHOD_VALUE_CONNECT=A8Q.HTTP_REQUEST_METHOD_VALUE_OTHER=A8Q.ATTR_HTTP_REQUEST_METHOD=A8Q.ATTR_HTTP_REQUEST_HEADER=A8Q.ATTR_EXCEPTION_TYPE=A8Q.ATTR_EXCEPTION_STACKTRACE=A8Q.ATTR_EXCEPTION_MESSAGE=A8Q.ATTR_EXCEPTION_ESCAPED=A8Q.ERROR_TYPE_VALUE_OTHER=A8Q.ATTR_ERROR_TYPE=A8Q.ATTR_CLIENT_PORT=A8Q.ATTR_CLIENT_ADDRESS=A8Q.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS=A8Q.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE=A8Q.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS=A8Q.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK=A8Q.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED=A8Q.ATTR_ASPNETCORE_RATE_LIMITING_POLICY=A8Q.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED=A8Q.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED=A8Q.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED=A8Q.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED=A8Q.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT=A8Q.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE=A8Q.ATTR_TELEMETRY_SDK_VERSION=A8Q.ATTR_TELEMETRY_SDK_NAME=A8Q.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS=A8Q.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT=A8Q.TELEMETRY_SDK_LANGUAGE_VALUE_RUST=A8Q.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY=A8Q.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON=A8Q.TELEMETRY_SDK_LANGUAGE_VALUE_PHP=A8Q.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS=A8Q.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA=A8Q.TELEMETRY_SDK_LANGUAGE_VALUE_GO=A8Q.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG=A8Q.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET=A8Q.TELEMETRY_SDK_LANGUAGE_VALUE_CPP=A8Q.ATTR_TELEMETRY_SDK_LANGUAGE=A8Q.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED=A8Q.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER=A8Q.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER=A8Q.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED=A8Q.ATTR_ASPNETCORE_RATE_LIMITING_RESULT=void 0;A8Q.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT=A8Q.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE=A8Q.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN=A8Q.ATTR_SIGNALR_CONNECTION_STATUS=A8Q.ATTR_SERVICE_VERSION=A8Q.ATTR_SERVICE_NAME=A8Q.ATTR_SERVER_PORT=A8Q.ATTR_SERVER_ADDRESS=A8Q.ATTR_OTEL_STATUS_DESCRIPTION=A8Q.OTEL_STATUS_CODE_VALUE_OK=A8Q.OTEL_STATUS_CODE_VALUE_ERROR=A8Q.ATTR_OTEL_STATUS_CODE=A8Q.ATTR_OTEL_SCOPE_VERSION=A8Q.ATTR_OTEL_SCOPE_NAME=A8Q.NETWORK_TYPE_VALUE_IPV6=A8Q.NETWORK_TYPE_VALUE_IPV4=A8Q.ATTR_NETWORK_TYPE=A8Q.NETWORK_TRANSPORT_VALUE_UNIX=A8Q.NETWORK_TRANSPORT_VALUE_UDP=A8Q.NETWORK_TRANSPORT_VALUE_TCP=A8Q.NETWORK_TRANSPORT_VALUE_QUIC=A8Q.NETWORK_TRANSPORT_VALUE_PIPE=A8Q.ATTR_NETWORK_TRANSPORT=A8Q.ATTR_NETWORK_PROTOCOL_VERSION=A8Q.ATTR_NETWORK_PROTOCOL_NAME=A8Q.ATTR_NETWORK_PEER_PORT=A8Q.ATTR_NETWORK_PEER_ADDRESS=A8Q.ATTR_NETWORK_LOCAL_PORT=A8Q.ATTR_NETWORK_LOCAL_ADDRESS=A8Q.JVM_THREAD_STATE_VALUE_WAITING=A8Q.JVM_THREAD_STATE_VALUE_TIMED_WAITING=A8Q.JVM_THREAD_STATE_VALUE_TERMINATED=A8Q.JVM_THREAD_STATE_VALUE_RUNNABLE=A8Q.JVM_THREAD_STATE_VALUE_NEW=A8Q.JVM_THREAD_STATE_VALUE_BLOCKED=A8Q.ATTR_JVM_THREAD_STATE=A8Q.ATTR_JVM_THREAD_DAEMON=A8Q.JVM_MEMORY_TYPE_VALUE_NON_HEAP=A8Q.JVM_MEMORY_TYPE_VALUE_HEAP=A8Q.ATTR_JVM_MEMORY_TYPE=A8Q.ATTR_JVM_MEMORY_POOL_NAME=A8Q.ATTR_JVM_GC_NAME=A8Q.ATTR_JVM_GC_ACTION=A8Q.ATTR_HTTP_ROUTE=A8Q.ATTR_HTTP_RESPONSE_STATUS_CODE=A8Q.ATTR_HTTP_RESPONSE_HEADER=A8Q.ATTR_HTTP_REQUEST_RESEND_COUNT=A8Q.ATTR_HTTP_REQUEST_METHOD_ORIGINAL=A8Q.HTTP_REQUEST_METHOD_VALUE_TRACE=A8Q.HTTP_REQUEST_METHOD_VALUE_PUT=void 0;A8Q.ATTR_USER_AGENT_ORIGINAL=A8Q.ATTR_URL_SCHEME=A8Q.ATTR_URL_QUERY=A8Q.ATTR_URL_PATH=A8Q.ATTR_URL_FULL=A8Q.ATTR_URL_FRAGMENT=A8Q.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS=A8Q.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS=A8Q.SIGNALR_TRANSPORT_VALUE_LONG_POLLING=A8Q.ATTR_SIGNALR_TRANSPORT=void 0;A8Q.ATTR_ASPNETCORE_RATE_LIMITING_RESULT="aspnetcore.rate_limiting.result";A8Q.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED="acquired";A8Q.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER="endpoint_limiter";A8Q.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER="global_limiter";A8Q.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED="request_canceled";A8Q.ATTR_TELEMETRY_SDK_LANGUAGE="telemetry.sdk.language";A8Q.TELEMETRY_SDK_LANGUAGE_VALUE_CPP="cpp";A8Q.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET="dotnet";A8Q.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG="erlang";A8Q.TELEMETRY_SDK_LANGUAGE_VALUE_GO="go";A8Q.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA="java";A8Q.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS="nodejs";A8Q.TELEMETRY_SDK_LANGUAGE_VALUE_PHP="php";A8Q.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON="python";A8Q.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY="ruby";A8Q.TELEMETRY_SDK_LANGUAGE_VALUE_RUST="rust";A8Q.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT="swift";A8Q.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS="webjs";A8Q.ATTR_TELEMETRY_SDK_NAME="telemetry.sdk.name";A8Q.ATTR_TELEMETRY_SDK_VERSION="telemetry.sdk.version";A8Q.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE="aspnetcore.diagnostics.handler.type";A8Q.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT="aspnetcore.diagnostics.exception.result";A8Q.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED="aborted";A8Q.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED="handled";A8Q.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED="skipped";A8Q.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED="unhandled";A8Q.ATTR_ASPNETCORE_RATE_LIMITING_POLICY="aspnetcore.rate_limiting.policy";A8Q.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED="aspnetcore.request.is_unhandled";A8Q.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK="aspnetcore.routing.is_fallback";A8Q.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS="aspnetcore.routing.match_status";A8Q.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE="failure";A8Q.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS="success";A8Q.ATTR_CLIENT_ADDRESS="client.address";A8Q.ATTR_CLIENT_PORT="client.port";A8Q.ATTR_ERROR_TYPE="error.type";A8Q.ERROR_TYPE_VALUE_OTHER="_OTHER";A8Q.ATTR_EXCEPTION_ESCAPED="exception.escaped";A8Q.ATTR_EXCEPTION_MESSAGE="exception.message";A8Q.ATTR_EXCEPTION_STACKTRACE="exception.stacktrace";A8Q.ATTR_EXCEPTION_TYPE="exception.type";var OC0=(A)=>`http.request.header.${A}`;A8Q.ATTR_HTTP_REQUEST_HEADER=OC0;A8Q.ATTR_HTTP_REQUEST_METHOD="http.request.method";A8Q.HTTP_REQUEST_METHOD_VALUE_OTHER="_OTHER";A8Q.HTTP_REQUEST_METHOD_VALUE_CONNECT="CONNECT";A8Q.HTTP_REQUEST_METHOD_VALUE_DELETE="DELETE";A8Q.HTTP_REQUEST_METHOD_VALUE_GET="GET";A8Q.HTTP_REQUEST_METHOD_VALUE_HEAD="HEAD";A8Q.HTTP_REQUEST_METHOD_VALUE_OPTIONS="OPTIONS";A8Q.HTTP_REQUEST_METHOD_VALUE_PATCH="PATCH";A8Q.HTTP_REQUEST_METHOD_VALUE_POST="POST";A8Q.HTTP_REQUEST_METHOD_VALUE_PUT="PUT";A8Q.HTTP_REQUEST_METHOD_VALUE_TRACE="TRACE";A8Q.ATTR_HTTP_REQUEST_METHOD_ORIGINAL="http.request.method_original";A8Q.ATTR_HTTP_REQUEST_RESEND_COUNT="http.request.resend_count";var PC0=(A)=>`http.response.header.${A}`;A8Q.ATTR_HTTP_RESPONSE_HEADER=PC0;A8Q.ATTR_HTTP_RESPONSE_STATUS_CODE="http.response.status_code";A8Q.ATTR_HTTP_ROUTE="http.route";A8Q.ATTR_JVM_GC_ACTION="jvm.gc.action";A8Q.ATTR_JVM_GC_NAME="jvm.gc.name";A8Q.ATTR_JVM_MEMORY_POOL_NAME="jvm.memory.pool.name";A8Q.ATTR_JVM_MEMORY_TYPE="jvm.memory.type";A8Q.JVM_MEMORY_TYPE_VALUE_HEAP="heap";A8Q.JVM_MEMORY_TYPE_VALUE_NON_HEAP="non_heap";A8Q.ATTR_JVM_THREAD_DAEMON="jvm.thread.daemon";A8Q.ATTR_JVM_THREAD_STATE="jvm.thread.state";A8Q.JVM_THREAD_STATE_VALUE_BLOCKED="blocked";A8Q.JVM_THREAD_STATE_VALUE_NEW="new";A8Q.JVM_THREAD_STATE_VALUE_RUNNABLE="runnable";A8Q.JVM_THREAD_STATE_VALUE_TERMINATED="terminated";A8Q.JVM_THREAD_STATE_VALUE_TIMED_WAITING="timed_waiting";A8Q.JVM_THREAD_STATE_VALUE_WAITING="waiting";A8Q.ATTR_NETWORK_LOCAL_ADDRESS="network.local.address";A8Q.ATTR_NETWORK_LOCAL_PORT="network.local.port";A8Q.ATTR_NETWORK_PEER_ADDRESS="network.peer.address";A8Q.ATTR_NETWORK_PEER_PORT="network.peer.port";A8Q.ATTR_NETWORK_PROTOCOL_NAME="network.protocol.name";A8Q.ATTR_NETWORK_PROTOCOL_VERSION="network.protocol.version";A8Q.ATTR_NETWORK_TRANSPORT="network.transport";A8Q.NETWORK_TRANSPORT_VALUE_PIPE="pipe";A8Q.NETWORK_TRANSPORT_VALUE_QUIC="quic";A8Q.NETWORK_TRANSPORT_VALUE_TCP="tcp";A8Q.NETWORK_TRANSPORT_VALUE_UDP="udp";A8Q.NETWORK_TRANSPORT_VALUE_UNIX="unix";A8Q.ATTR_NETWORK_TYPE="network.type";A8Q.NETWORK_TYPE_VALUE_IPV4="ipv4";A8Q.NETWORK_TYPE_VALUE_IPV6="ipv6";A8Q.ATTR_OTEL_SCOPE_NAME="otel.scope.name";A8Q.ATTR_OTEL_SCOPE_VERSION="otel.scope.version";A8Q.ATTR_OTEL_STATUS_CODE="otel.status_code";A8Q.OTEL_STATUS_CODE_VALUE_ERROR="ERROR";A8Q.OTEL_STATUS_CODE_VALUE_OK="OK";A8Q.ATTR_OTEL_STATUS_DESCRIPTION="otel.status_description";A8Q.ATTR_SERVER_ADDRESS="server.address";A8Q.ATTR_SERVER_PORT="server.port";A8Q.ATTR_SERVICE_NAME="service.name";A8Q.ATTR_SERVICE_VERSION="service.version";A8Q.ATTR_SIGNALR_CONNECTION_STATUS="signalr.connection.status";A8Q.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN="app_shutdown";A8Q.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE="normal_closure";A8Q.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT="timeout";A8Q.ATTR_SIGNALR_TRANSPORT="signalr.transport";A8Q.SIGNALR_TRANSPORT_VALUE_LONG_POLLING="long_polling";A8Q.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS="server_sent_events";A8Q.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS="web_sockets";A8Q.ATTR_URL_FRAGMENT="url.fragment";A8Q.ATTR_URL_FULL="url.full";A8Q.ATTR_URL_PATH="url.path";A8Q.ATTR_URL_QUERY="url.query";A8Q.ATTR_URL_SCHEME="url.scheme";A8Q.ATTR_USER_AGENT_ORIGINAL="user_agent.original"});var G8Q=R((C8Q)=>{Object.defineProperty(C8Q,"__esModule",{value:!0});C8Q.METRIC_SIGNALR_SERVER_CONNECTION_DURATION=C8Q.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS=C8Q.METRIC_KESTREL_UPGRADED_CONNECTIONS=C8Q.METRIC_KESTREL_TLS_HANDSHAKE_DURATION=C8Q.METRIC_KESTREL_REJECTED_CONNECTIONS=C8Q.METRIC_KESTREL_QUEUED_REQUESTS=C8Q.METRIC_KESTREL_QUEUED_CONNECTIONS=C8Q.METRIC_KESTREL_CONNECTION_DURATION=C8Q.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES=C8Q.METRIC_KESTREL_ACTIVE_CONNECTIONS=C8Q.METRIC_JVM_THREAD_COUNT=C8Q.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC=C8Q.METRIC_JVM_MEMORY_USED=C8Q.METRIC_JVM_MEMORY_LIMIT=C8Q.METRIC_JVM_MEMORY_COMMITTED=C8Q.METRIC_JVM_GC_DURATION=C8Q.METRIC_JVM_CPU_TIME=C8Q.METRIC_JVM_CPU_RECENT_UTILIZATION=C8Q.METRIC_JVM_CPU_COUNT=C8Q.METRIC_JVM_CLASS_UNLOADED=C8Q.METRIC_JVM_CLASS_LOADED=C8Q.METRIC_JVM_CLASS_COUNT=C8Q.METRIC_HTTP_SERVER_REQUEST_DURATION=C8Q.METRIC_HTTP_CLIENT_REQUEST_DURATION=C8Q.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS=C8Q.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS=C8Q.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION=C8Q.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE=C8Q.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS=C8Q.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES=C8Q.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS=void 0;C8Q.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS="aspnetcore.diagnostics.exceptions";C8Q.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES="aspnetcore.rate_limiting.active_request_leases";C8Q.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS="aspnetcore.rate_limiting.queued_requests";C8Q.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE="aspnetcore.rate_limiting.request.time_in_queue";C8Q.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION="aspnetcore.rate_limiting.request_lease.duration";C8Q.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS="aspnetcore.rate_limiting.requests";C8Q.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS="aspnetcore.routing.match_attempts";C8Q.METRIC_HTTP_CLIENT_REQUEST_DURATION="http.client.request.duration";C8Q.METRIC_HTTP_SERVER_REQUEST_DURATION="http.server.request.duration";C8Q.METRIC_JVM_CLASS_COUNT="jvm.class.count";C8Q.METRIC_JVM_CLASS_LOADED="jvm.class.loaded";C8Q.METRIC_JVM_CLASS_UNLOADED="jvm.class.unloaded";C8Q.METRIC_JVM_CPU_COUNT="jvm.cpu.count";C8Q.METRIC_JVM_CPU_RECENT_UTILIZATION="jvm.cpu.recent_utilization";C8Q.METRIC_JVM_CPU_TIME="jvm.cpu.time";C8Q.METRIC_JVM_GC_DURATION="jvm.gc.duration";C8Q.METRIC_JVM_MEMORY_COMMITTED="jvm.memory.committed";C8Q.METRIC_JVM_MEMORY_LIMIT="jvm.memory.limit";C8Q.METRIC_JVM_MEMORY_USED="jvm.memory.used";C8Q.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC="jvm.memory.used_after_last_gc";C8Q.METRIC_JVM_THREAD_COUNT="jvm.thread.count";C8Q.METRIC_KESTREL_ACTIVE_CONNECTIONS="kestrel.active_connections";C8Q.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES="kestrel.active_tls_handshakes";C8Q.METRIC_KESTREL_CONNECTION_DURATION="kestrel.connection.duration";C8Q.METRIC_KESTREL_QUEUED_CONNECTIONS="kestrel.queued_connections";C8Q.METRIC_KESTREL_QUEUED_REQUESTS="kestrel.queued_requests";C8Q.METRIC_KESTREL_REJECTED_CONNECTIONS="kestrel.rejected_connections";C8Q.METRIC_KESTREL_TLS_HANDSHAKE_DURATION="kestrel.tls_handshake.duration";C8Q.METRIC_KESTREL_UPGRADED_CONNECTIONS="kestrel.upgraded_connections";C8Q.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS="signalr.server.active_connections";C8Q.METRIC_SIGNALR_SERVER_CONNECTION_DURATION="signalr.server.connection.duration"});var F8Q=R((X6)=>{var JX0=X6&&X6.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),xO=X6&&X6.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))JX0(Q,A,B)};Object.defineProperty(X6,"__esModule",{value:!0});xO(zYQ(),X6);xO(e9Q(),X6);xO(J8Q(),X6);xO(G8Q(),X6)});var $8Q=R((W8Q)=>{Object.defineProperty(W8Q,"__esModule",{value:!0});W8Q.ExceptionEventName=void 0;W8Q.ExceptionEventName="exception"});var gp=R((E8Q)=>{Object.defineProperty(E8Q,"__esModule",{value:!0});E8Q.Span=void 0;var f5=yA(),SJ=MB(),G$=F8Q(),CX0=$8Q();class U8Q{constructor(A,Q,B,Y,J,C,X=[],G,F,W){this.attributes={},this.links=[],this.events=[],this._droppedAttributesCount=0,this._droppedEventsCount=0,this._droppedLinksCount=0,this.status={code:f5.SpanStatusCode.UNSET},this.endTime=[0,0],this._ended=!1,this._duration=[-1,-1],this.name=B,this._spanContext=Y,this.parentSpanId=C,this.kind=J,this.links=X;let Z=Date.now();if(this._performanceStartTime=SJ.otperformance.now(),this._performanceOffset=Z-(this._performanceStartTime+(0,SJ.getTimeOrigin)()),this._startTimeProvided=G!=null,this.startTime=this._getTime(G!==null&&G!==void 0?G:Z),this.resource=A.resource,this.instrumentationLibrary=A.instrumentationLibrary,this._spanLimits=A.getSpanLimits(),this._attributeValueLengthLimit=this._spanLimits.attributeValueLengthLimit||0,W!=null)this.setAttributes(W);this._spanProcessor=A.getActiveSpanProcessor(),this._spanProcessor.onStart(this,Q)}spanContext(){return this._spanContext}setAttribute(A,Q){if(Q==null||this._isSpanEnded())return this;if(A.length===0)return f5.diag.warn(`Invalid attribute key: ${A}`),this;if(!(0,SJ.isAttributeValue)(Q))return f5.diag.warn(`Invalid attribute value set for key: ${A}`),this;if(Object.keys(this.attributes).length>=this._spanLimits.attributeCountLimit&&!Object.prototype.hasOwnProperty.call(this.attributes,A))return this._droppedAttributesCount++,this;return this.attributes[A]=this._truncateToSize(Q),this}setAttributes(A){for(let[Q,B]of Object.entries(A))this.setAttribute(Q,B);return this}addEvent(A,Q,B){if(this._isSpanEnded())return this;if(this._spanLimits.eventCountLimit===0)return f5.diag.warn("No events allowed."),this._droppedEventsCount++,this;if(this.events.length>=this._spanLimits.eventCountLimit){if(this._droppedEventsCount===0)f5.diag.debug("Dropping extra events.");this.events.shift(),this._droppedEventsCount++}if((0,SJ.isTimeInput)(Q)){if(!(0,SJ.isTimeInput)(B))B=Q;Q=void 0}let Y=(0,SJ.sanitizeAttributes)(Q);return this.events.push({name:A,attributes:Y,time:this._getTime(B),droppedAttributesCount:0}),this}addLink(A){return this.links.push(A),this}addLinks(A){return this.links.push(...A),this}setStatus(A){if(this._isSpanEnded())return this;if(this.status=Object.assign({},A),this.status.message!=null&&typeof A.message!=="string")f5.diag.warn(`Dropping invalid status.message of type '${typeof A.message}', expected 'string'`),delete this.status.message;return this}updateName(A){if(this._isSpanEnded())return this;return this.name=A,this}end(A){if(this._isSpanEnded()){f5.diag.error(`${this.name} ${this._spanContext.traceId}-${this._spanContext.spanId} - You can only call end() on a span once.`);return}if(this._ended=!0,this.endTime=this._getTime(A),this._duration=(0,SJ.hrTimeDuration)(this.startTime,this.endTime),this._duration[0]<0)f5.diag.warn("Inconsistent start and end time, startTime > endTime. Setting span duration to 0ms.",this.startTime,this.endTime),this.endTime=this.startTime.slice(),this._duration=[0,0];if(this._droppedEventsCount>0)f5.diag.warn(`Dropped ${this._droppedEventsCount} events because eventCountLimit reached`);this._spanProcessor.onEnd(this)}_getTime(A){if(typeof A==="number"&&A<=SJ.otperformance.now())return(0,SJ.hrTime)(A+this._performanceOffset);if(typeof A==="number")return(0,SJ.millisToHrTime)(A);if(A instanceof Date)return(0,SJ.millisToHrTime)(A.getTime());if((0,SJ.isTimeInputHrTime)(A))return A;if(this._startTimeProvided)return(0,SJ.millisToHrTime)(Date.now());let Q=SJ.otperformance.now()-this._performanceStartTime;return(0,SJ.addHrTimes)(this.startTime,(0,SJ.millisToHrTime)(Q))}isRecording(){return this._ended===!1}recordException(A,Q){let B={};if(typeof A==="string")B[G$.SEMATTRS_EXCEPTION_MESSAGE]=A;else if(A){if(A.code)B[G$.SEMATTRS_EXCEPTION_TYPE]=A.code.toString();else if(A.name)B[G$.SEMATTRS_EXCEPTION_TYPE]=A.name;if(A.message)B[G$.SEMATTRS_EXCEPTION_MESSAGE]=A.message;if(A.stack)B[G$.SEMATTRS_EXCEPTION_STACKTRACE]=A.stack}if(B[G$.SEMATTRS_EXCEPTION_TYPE]||B[G$.SEMATTRS_EXCEPTION_MESSAGE])this.addEvent(CX0.ExceptionEventName,B,Q);else f5.diag.warn(`Failed to record an exception ${A}`)}get duration(){return this._duration}get ended(){return this._ended}get droppedAttributesCount(){return this._droppedAttributesCount}get droppedEventsCount(){return this._droppedEventsCount}get droppedLinksCount(){return this._droppedLinksCount}_isSpanEnded(){if(this._ended)f5.diag.warn(`Can not execute the operation on ended Span {traceId: ${this._spanContext.traceId}, spanId: ${this._spanContext.spanId}}`);return this._ended}_truncateToLimitUtil(A,Q){if(A.length<=Q)return A;return A.substring(0,Q)}_truncateToSize(A){let Q=this._attributeValueLengthLimit;if(Q<=0)return f5.diag.warn(`Attribute value limit must be positive, got ${Q}`),A;if(typeof A==="string")return this._truncateToLimitUtil(A,Q);if(Array.isArray(A))return A.map((B)=>typeof B==="string"?this._truncateToLimitUtil(B,Q):B);return A}}E8Q.Span=U8Q});var UL=R((V8Q)=>{Object.defineProperty(V8Q,"__esModule",{value:!0});V8Q.SamplingDecision=void 0;var XX0;(function(A){A[A.NOT_RECORD=0]="NOT_RECORD",A[A.RECORD=1]="RECORD",A[A.RECORD_AND_SAMPLED=2]="RECORD_AND_SAMPLED"})(XX0=V8Q.SamplingDecision||(V8Q.SamplingDecision={}))});var fO=R((H8Q)=>{Object.defineProperty(H8Q,"__esModule",{value:!0});H8Q.AlwaysOffSampler=void 0;var GX0=UL();class I8Q{shouldSample(){return{decision:GX0.SamplingDecision.NOT_RECORD}}toString(){return"AlwaysOffSampler"}}H8Q.AlwaysOffSampler=I8Q});var bO=R((L8Q)=>{Object.defineProperty(L8Q,"__esModule",{value:!0});L8Q.AlwaysOnSampler=void 0;var FX0=UL();class N8Q{shouldSample(){return{decision:FX0.SamplingDecision.RECORD_AND_SAMPLED}}toString(){return"AlwaysOnSampler"}}L8Q.AlwaysOnSampler=N8Q});var bp=R((R8Q)=>{Object.defineProperty(R8Q,"__esModule",{value:!0});R8Q.ParentBasedSampler=void 0;var mO=yA(),WX0=MB(),M8Q=fO(),fp=bO();class z8Q{constructor(A){var Q,B,Y,J;if(this._root=A.root,!this._root)(0,WX0.globalErrorHandler)(Error("ParentBasedSampler must have a root sampler configured")),this._root=new fp.AlwaysOnSampler;this._remoteParentSampled=(Q=A.remoteParentSampled)!==null&&Q!==void 0?Q:new fp.AlwaysOnSampler,this._remoteParentNotSampled=(B=A.remoteParentNotSampled)!==null&&B!==void 0?B:new M8Q.AlwaysOffSampler,this._localParentSampled=(Y=A.localParentSampled)!==null&&Y!==void 0?Y:new fp.AlwaysOnSampler,this._localParentNotSampled=(J=A.localParentNotSampled)!==null&&J!==void 0?J:new M8Q.AlwaysOffSampler}shouldSample(A,Q,B,Y,J,C){let X=mO.trace.getSpanContext(A);if(!X||!(0,mO.isSpanContextValid)(X))return this._root.shouldSample(A,Q,B,Y,J,C);if(X.isRemote){if(X.traceFlags&mO.TraceFlags.SAMPLED)return this._remoteParentSampled.shouldSample(A,Q,B,Y,J,C);return this._remoteParentNotSampled.shouldSample(A,Q,B,Y,J,C)}if(X.traceFlags&mO.TraceFlags.SAMPLED)return this._localParentSampled.shouldSample(A,Q,B,Y,J,C);return this._localParentNotSampled.shouldSample(A,Q,B,Y,J,C)}toString(){return`ParentBased{root=${this._root.toString()}, remoteParentSampled=${this._remoteParentSampled.toString()}, remoteParentNotSampled=${this._remoteParentNotSampled.toString()}, localParentSampled=${this._localParentSampled.toString()}, localParentNotSampled=${this._localParentNotSampled.toString()}}`}}R8Q.ParentBasedSampler=z8Q});var mp=R((P8Q)=>{Object.defineProperty(P8Q,"__esModule",{value:!0});P8Q.TraceIdRatioBasedSampler=void 0;var ZX0=yA(),j8Q=UL();class O8Q{constructor(A=0){this._ratio=A,this._ratio=this._normalize(A),this._upperBound=Math.floor(this._ratio*4294967295)}shouldSample(A,Q){return{decision:(0,ZX0.isValidTraceId)(Q)&&this._accumulate(Q)=1?1:A<=0?0:A}_accumulate(A){let Q=0;for(let B=0;B>>0}return Q}}P8Q.TraceIdRatioBasedSampler=O8Q});var cp=R((y8Q)=>{Object.defineProperty(y8Q,"__esModule",{value:!0});y8Q.buildSamplerFromEnv=y8Q.loadDefaultConfig=void 0;var uO=yA(),BG=MB(),S8Q=fO(),up=bO(),dp=bp(),k8Q=mp(),$X0=BG.TracesSamplerValues.AlwaysOn,GK=1;function UX0(){let A=(0,BG.getEnv)();return{sampler:v8Q(A),forceFlushTimeoutMillis:30000,generalLimits:{attributeValueLengthLimit:A.OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT,attributeCountLimit:A.OTEL_ATTRIBUTE_COUNT_LIMIT},spanLimits:{attributeValueLengthLimit:A.OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT,attributeCountLimit:A.OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT,linkCountLimit:A.OTEL_SPAN_LINK_COUNT_LIMIT,eventCountLimit:A.OTEL_SPAN_EVENT_COUNT_LIMIT,attributePerEventCountLimit:A.OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT,attributePerLinkCountLimit:A.OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT},mergeResourceWithDefaults:!0}}y8Q.loadDefaultConfig=UX0;function v8Q(A=(0,BG.getEnv)()){switch(A.OTEL_TRACES_SAMPLER){case BG.TracesSamplerValues.AlwaysOn:return new up.AlwaysOnSampler;case BG.TracesSamplerValues.AlwaysOff:return new S8Q.AlwaysOffSampler;case BG.TracesSamplerValues.ParentBasedAlwaysOn:return new dp.ParentBasedSampler({root:new up.AlwaysOnSampler});case BG.TracesSamplerValues.ParentBasedAlwaysOff:return new dp.ParentBasedSampler({root:new S8Q.AlwaysOffSampler});case BG.TracesSamplerValues.TraceIdRatio:return new k8Q.TraceIdRatioBasedSampler(_8Q(A));case BG.TracesSamplerValues.ParentBasedTraceIdRatio:return new dp.ParentBasedSampler({root:new k8Q.TraceIdRatioBasedSampler(_8Q(A))});default:return uO.diag.error(`OTEL_TRACES_SAMPLER value "${A.OTEL_TRACES_SAMPLER} invalid, defaulting to ${$X0}".`),new up.AlwaysOnSampler}}y8Q.buildSamplerFromEnv=v8Q;function _8Q(A){if(A.OTEL_TRACES_SAMPLER_ARG===void 0||A.OTEL_TRACES_SAMPLER_ARG==="")return uO.diag.error(`OTEL_TRACES_SAMPLER_ARG is blank, defaulting to ${GK}.`),GK;let Q=Number(A.OTEL_TRACES_SAMPLER_ARG);if(isNaN(Q))return uO.diag.error(`OTEL_TRACES_SAMPLER_ARG=${A.OTEL_TRACES_SAMPLER_ARG} was given, but it is invalid, defaulting to ${GK}.`),GK;if(Q<0||Q>1)return uO.diag.error(`OTEL_TRACES_SAMPLER_ARG=${A.OTEL_TRACES_SAMPLER_ARG} was given, but it is out of range ([0..1]), defaulting to ${GK}.`),GK;return Q}});var pp=R((x8Q)=>{Object.defineProperty(x8Q,"__esModule",{value:!0});x8Q.reconfigureLimits=x8Q.mergeConfig=void 0;var g8Q=cp(),lp=MB();function KX0(A){let Q={sampler:(0,g8Q.buildSamplerFromEnv)()},B=(0,g8Q.loadDefaultConfig)(),Y=Object.assign({},B,Q,A);return Y.generalLimits=Object.assign({},B.generalLimits,A.generalLimits||{}),Y.spanLimits=Object.assign({},B.spanLimits,A.spanLimits||{}),Y}x8Q.mergeConfig=KX0;function VX0(A){var Q,B,Y,J,C,X,G,F,W,Z,U,$;let E=Object.assign({},A.spanLimits),K=(0,lp.getEnvWithoutDefaults)();return E.attributeCountLimit=(X=(C=(J=(B=(Q=A.spanLimits)===null||Q===void 0?void 0:Q.attributeCountLimit)!==null&&B!==void 0?B:(Y=A.generalLimits)===null||Y===void 0?void 0:Y.attributeCountLimit)!==null&&J!==void 0?J:K.OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT)!==null&&C!==void 0?C:K.OTEL_ATTRIBUTE_COUNT_LIMIT)!==null&&X!==void 0?X:lp.DEFAULT_ATTRIBUTE_COUNT_LIMIT,E.attributeValueLengthLimit=($=(U=(Z=(F=(G=A.spanLimits)===null||G===void 0?void 0:G.attributeValueLengthLimit)!==null&&F!==void 0?F:(W=A.generalLimits)===null||W===void 0?void 0:W.attributeValueLengthLimit)!==null&&Z!==void 0?Z:K.OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT)!==null&&U!==void 0?U:K.OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT)!==null&&$!==void 0?$:lp.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,Object.assign({},A,{spanLimits:E})}x8Q.reconfigureLimits=VX0});var d8Q=R((m8Q)=>{Object.defineProperty(m8Q,"__esModule",{value:!0});m8Q.BatchSpanProcessorBase=void 0;var FK=yA(),F$=MB();class b8Q{constructor(A,Q){this._exporter=A,this._isExporting=!1,this._finishedSpans=[],this._droppedSpansCount=0;let B=(0,F$.getEnv)();if(this._maxExportBatchSize=typeof(Q===null||Q===void 0?void 0:Q.maxExportBatchSize)==="number"?Q.maxExportBatchSize:B.OTEL_BSP_MAX_EXPORT_BATCH_SIZE,this._maxQueueSize=typeof(Q===null||Q===void 0?void 0:Q.maxQueueSize)==="number"?Q.maxQueueSize:B.OTEL_BSP_MAX_QUEUE_SIZE,this._scheduledDelayMillis=typeof(Q===null||Q===void 0?void 0:Q.scheduledDelayMillis)==="number"?Q.scheduledDelayMillis:B.OTEL_BSP_SCHEDULE_DELAY,this._exportTimeoutMillis=typeof(Q===null||Q===void 0?void 0:Q.exportTimeoutMillis)==="number"?Q.exportTimeoutMillis:B.OTEL_BSP_EXPORT_TIMEOUT,this._shutdownOnce=new F$.BindOnceFuture(this._shutdown,this),this._maxExportBatchSize>this._maxQueueSize)FK.diag.warn("BatchSpanProcessor: maxExportBatchSize must be smaller or equal to maxQueueSize, setting maxExportBatchSize to match maxQueueSize"),this._maxExportBatchSize=this._maxQueueSize}forceFlush(){if(this._shutdownOnce.isCalled)return this._shutdownOnce.promise;return this._flushAll()}onStart(A,Q){}onEnd(A){if(this._shutdownOnce.isCalled)return;if((A.spanContext().traceFlags&FK.TraceFlags.SAMPLED)===0)return;this._addToBuffer(A)}shutdown(){return this._shutdownOnce.call()}_shutdown(){return Promise.resolve().then(()=>{return this.onShutdown()}).then(()=>{return this._flushAll()}).then(()=>{return this._exporter.shutdown()})}_addToBuffer(A){if(this._finishedSpans.length>=this._maxQueueSize){if(this._droppedSpansCount===0)FK.diag.debug("maxQueueSize reached, dropping spans");this._droppedSpansCount++;return}if(this._droppedSpansCount>0)FK.diag.warn(`Dropped ${this._droppedSpansCount} spans because maxQueueSize reached`),this._droppedSpansCount=0;this._finishedSpans.push(A),this._maybeStartTimer()}_flushAll(){return new Promise((A,Q)=>{let B=[],Y=Math.ceil(this._finishedSpans.length/this._maxExportBatchSize);for(let J=0,C=Y;J{A()}).catch(Q)})}_flushOneBatch(){if(this._clearTimer(),this._finishedSpans.length===0)return Promise.resolve();return new Promise((A,Q)=>{let B=setTimeout(()=>{Q(Error("Timeout"))},this._exportTimeoutMillis);FK.context.with((0,F$.suppressTracing)(FK.context.active()),()=>{let Y;if(this._finishedSpans.length<=this._maxExportBatchSize)Y=this._finishedSpans,this._finishedSpans=[];else Y=this._finishedSpans.splice(0,this._maxExportBatchSize);let J=()=>this._exporter.export(Y,(X)=>{var G;if(clearTimeout(B),X.code===F$.ExportResultCode.SUCCESS)A();else Q((G=X.error)!==null&&G!==void 0?G:Error("BatchSpanProcessor: span export failed"))}),C=null;for(let X=0,G=Y.length;X{(0,F$.globalErrorHandler)(X),Q(X)})})})}_maybeStartTimer(){if(this._isExporting)return;let A=()=>{this._isExporting=!0,this._flushOneBatch().finally(()=>{if(this._isExporting=!1,this._finishedSpans.length>0)this._clearTimer(),this._maybeStartTimer()}).catch((Q)=>{this._isExporting=!1,(0,F$.globalErrorHandler)(Q)})};if(this._finishedSpans.length>=this._maxExportBatchSize)return A();if(this._timer!==void 0)return;this._timer=setTimeout(()=>A(),this._scheduledDelayMillis),(0,F$.unrefTimer)(this._timer)}_clearTimer(){if(this._timer!==void 0)clearTimeout(this._timer),this._timer=void 0}}m8Q.BatchSpanProcessorBase=b8Q});var i8Q=R((l8Q)=>{Object.defineProperty(l8Q,"__esModule",{value:!0});l8Q.BatchSpanProcessor=void 0;var HX0=d8Q();class c8Q extends HX0.BatchSpanProcessorBase{onShutdown(){}}l8Q.BatchSpanProcessor=c8Q});var t8Q=R((a8Q)=>{Object.defineProperty(a8Q,"__esModule",{value:!0});a8Q.RandomIdGenerator=void 0;var DX0=8,s8Q=16;class r8Q{constructor(){this.generateTraceId=n8Q(s8Q),this.generateSpanId=n8Q(DX0)}}a8Q.RandomIdGenerator=r8Q;var dO=Buffer.allocUnsafe(s8Q);function n8Q(A){return function(){for(let B=0;B>>0,B*4);for(let B=0;B0)break;else if(B===A-1)dO[A-1]=1;return dO.toString("hex",0,A)}}});var e8Q=R((cO)=>{Object.defineProperty(cO,"__esModule",{value:!0});cO.RandomIdGenerator=cO.BatchSpanProcessor=void 0;var NX0=i8Q();Object.defineProperty(cO,"BatchSpanProcessor",{enumerable:!0,get:function(){return NX0.BatchSpanProcessor}});var LX0=t8Q();Object.defineProperty(cO,"RandomIdGenerator",{enumerable:!0,get:function(){return LX0.RandomIdGenerator}})});var pO=R((lO)=>{Object.defineProperty(lO,"__esModule",{value:!0});lO.RandomIdGenerator=lO.BatchSpanProcessor=void 0;var A5Q=e8Q();Object.defineProperty(lO,"BatchSpanProcessor",{enumerable:!0,get:function(){return A5Q.BatchSpanProcessor}});Object.defineProperty(lO,"RandomIdGenerator",{enumerable:!0,get:function(){return A5Q.RandomIdGenerator}})});var ip=R((B5Q)=>{Object.defineProperty(B5Q,"__esModule",{value:!0});B5Q.Tracer=void 0;var FJ=yA(),iO=MB(),zX0=gp(),RX0=pp(),wX0=pO();class Q5Q{constructor(A,Q,B){this._tracerProvider=B;let Y=(0,RX0.mergeConfig)(Q);this._sampler=Y.sampler,this._generalLimits=Y.generalLimits,this._spanLimits=Y.spanLimits,this._idGenerator=Q.idGenerator||new wX0.RandomIdGenerator,this.resource=B.resource,this.instrumentationLibrary=A}startSpan(A,Q={},B=FJ.context.active()){var Y,J,C;if(Q.root)B=FJ.trace.deleteSpan(B);let X=FJ.trace.getSpan(B);if((0,iO.isTracingSuppressed)(B))return FJ.diag.debug("Instrumentation suppressed, returning Noop Span"),FJ.trace.wrapSpanContext(FJ.INVALID_SPAN_CONTEXT);let G=X===null||X===void 0?void 0:X.spanContext(),F=this._idGenerator.generateSpanId(),W,Z,U;if(!G||!FJ.trace.isSpanContextValid(G))W=this._idGenerator.generateTraceId();else W=G.traceId,Z=G.traceState,U=G.spanId;let $=(Y=Q.kind)!==null&&Y!==void 0?Y:FJ.SpanKind.INTERNAL,E=((J=Q.links)!==null&&J!==void 0?J:[]).map((z)=>{return{context:z.context,attributes:(0,iO.sanitizeAttributes)(z.attributes)}}),K=(0,iO.sanitizeAttributes)(Q.attributes),I=this._sampler.shouldSample(B,W,A,$,K,E);Z=(C=I.traceState)!==null&&C!==void 0?C:Z;let V=I.decision===FJ.SamplingDecision.RECORD_AND_SAMPLED?FJ.TraceFlags.SAMPLED:FJ.TraceFlags.NONE,H={traceId:W,spanId:F,traceFlags:V,traceState:Z};if(I.decision===FJ.SamplingDecision.NOT_RECORD)return FJ.diag.debug("Recording is off, propagating context in a non-recording span"),FJ.trace.wrapSpanContext(H);let D=(0,iO.sanitizeAttributes)(Object.assign(K,I.attributes));return new zX0.Span(this,B,A,H,$,U,E,Q.startTime,void 0,D)}startActiveSpan(A,Q,B,Y){let J,C,X;if(arguments.length<2)return;else if(arguments.length===2)X=Q;else if(arguments.length===3)J=Q,X=B;else J=Q,C=B,X=Y;let G=C!==null&&C!==void 0?C:FJ.context.active(),F=this.startSpan(A,J,G),W=FJ.trace.setSpan(G,F);return FJ.context.with(W,X,void 0,F)}getGeneralLimits(){return this._generalLimits}getSpanLimits(){return this._spanLimits}getActiveSpanProcessor(){return this._tracerProvider.getActiveSpanProcessor()}}B5Q.Tracer=Q5Q});var np=R((J5Q)=>{Object.defineProperty(J5Q,"__esModule",{value:!0});J5Q.createConstMap=void 0;function jX0(A){let Q={},B=A.length;for(let Y=0;Y{Object.defineProperty(rXQ,"__esModule",{value:!0});rXQ.SEMATTRS_NET_HOST_CARRIER_ICC=rXQ.SEMATTRS_NET_HOST_CARRIER_MNC=rXQ.SEMATTRS_NET_HOST_CARRIER_MCC=rXQ.SEMATTRS_NET_HOST_CARRIER_NAME=rXQ.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=rXQ.SEMATTRS_NET_HOST_CONNECTION_TYPE=rXQ.SEMATTRS_NET_HOST_NAME=rXQ.SEMATTRS_NET_HOST_PORT=rXQ.SEMATTRS_NET_HOST_IP=rXQ.SEMATTRS_NET_PEER_NAME=rXQ.SEMATTRS_NET_PEER_PORT=rXQ.SEMATTRS_NET_PEER_IP=rXQ.SEMATTRS_NET_TRANSPORT=rXQ.SEMATTRS_FAAS_INVOKED_REGION=rXQ.SEMATTRS_FAAS_INVOKED_PROVIDER=rXQ.SEMATTRS_FAAS_INVOKED_NAME=rXQ.SEMATTRS_FAAS_COLDSTART=rXQ.SEMATTRS_FAAS_CRON=rXQ.SEMATTRS_FAAS_TIME=rXQ.SEMATTRS_FAAS_DOCUMENT_NAME=rXQ.SEMATTRS_FAAS_DOCUMENT_TIME=rXQ.SEMATTRS_FAAS_DOCUMENT_OPERATION=rXQ.SEMATTRS_FAAS_DOCUMENT_COLLECTION=rXQ.SEMATTRS_FAAS_EXECUTION=rXQ.SEMATTRS_FAAS_TRIGGER=rXQ.SEMATTRS_EXCEPTION_ESCAPED=rXQ.SEMATTRS_EXCEPTION_STACKTRACE=rXQ.SEMATTRS_EXCEPTION_MESSAGE=rXQ.SEMATTRS_EXCEPTION_TYPE=rXQ.SEMATTRS_DB_SQL_TABLE=rXQ.SEMATTRS_DB_MONGODB_COLLECTION=rXQ.SEMATTRS_DB_REDIS_DATABASE_INDEX=rXQ.SEMATTRS_DB_HBASE_NAMESPACE=rXQ.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=rXQ.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=rXQ.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=rXQ.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=rXQ.SEMATTRS_DB_CASSANDRA_TABLE=rXQ.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=rXQ.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=rXQ.SEMATTRS_DB_CASSANDRA_KEYSPACE=rXQ.SEMATTRS_DB_MSSQL_INSTANCE_NAME=rXQ.SEMATTRS_DB_OPERATION=rXQ.SEMATTRS_DB_STATEMENT=rXQ.SEMATTRS_DB_NAME=rXQ.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=rXQ.SEMATTRS_DB_USER=rXQ.SEMATTRS_DB_CONNECTION_STRING=rXQ.SEMATTRS_DB_SYSTEM=rXQ.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=void 0;rXQ.SEMATTRS_MESSAGING_DESTINATION_KIND=rXQ.SEMATTRS_MESSAGING_DESTINATION=rXQ.SEMATTRS_MESSAGING_SYSTEM=rXQ.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=rXQ.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=rXQ.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=rXQ.SEMATTRS_AWS_DYNAMODB_COUNT=rXQ.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=rXQ.SEMATTRS_AWS_DYNAMODB_SEGMENT=rXQ.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=rXQ.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=rXQ.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=rXQ.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=rXQ.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=rXQ.SEMATTRS_AWS_DYNAMODB_SELECT=rXQ.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=rXQ.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=rXQ.SEMATTRS_AWS_DYNAMODB_LIMIT=rXQ.SEMATTRS_AWS_DYNAMODB_PROJECTION=rXQ.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=rXQ.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=rXQ.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=rXQ.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=rXQ.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=rXQ.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=rXQ.SEMATTRS_HTTP_CLIENT_IP=rXQ.SEMATTRS_HTTP_ROUTE=rXQ.SEMATTRS_HTTP_SERVER_NAME=rXQ.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=rXQ.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=rXQ.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=rXQ.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=rXQ.SEMATTRS_HTTP_USER_AGENT=rXQ.SEMATTRS_HTTP_FLAVOR=rXQ.SEMATTRS_HTTP_STATUS_CODE=rXQ.SEMATTRS_HTTP_SCHEME=rXQ.SEMATTRS_HTTP_HOST=rXQ.SEMATTRS_HTTP_TARGET=rXQ.SEMATTRS_HTTP_URL=rXQ.SEMATTRS_HTTP_METHOD=rXQ.SEMATTRS_CODE_LINENO=rXQ.SEMATTRS_CODE_FILEPATH=rXQ.SEMATTRS_CODE_NAMESPACE=rXQ.SEMATTRS_CODE_FUNCTION=rXQ.SEMATTRS_THREAD_NAME=rXQ.SEMATTRS_THREAD_ID=rXQ.SEMATTRS_ENDUSER_SCOPE=rXQ.SEMATTRS_ENDUSER_ROLE=rXQ.SEMATTRS_ENDUSER_ID=rXQ.SEMATTRS_PEER_SERVICE=void 0;rXQ.DBSYSTEMVALUES_FILEMAKER=rXQ.DBSYSTEMVALUES_DERBY=rXQ.DBSYSTEMVALUES_FIREBIRD=rXQ.DBSYSTEMVALUES_ADABAS=rXQ.DBSYSTEMVALUES_CACHE=rXQ.DBSYSTEMVALUES_EDB=rXQ.DBSYSTEMVALUES_FIRSTSQL=rXQ.DBSYSTEMVALUES_INGRES=rXQ.DBSYSTEMVALUES_HANADB=rXQ.DBSYSTEMVALUES_MAXDB=rXQ.DBSYSTEMVALUES_PROGRESS=rXQ.DBSYSTEMVALUES_HSQLDB=rXQ.DBSYSTEMVALUES_CLOUDSCAPE=rXQ.DBSYSTEMVALUES_HIVE=rXQ.DBSYSTEMVALUES_REDSHIFT=rXQ.DBSYSTEMVALUES_POSTGRESQL=rXQ.DBSYSTEMVALUES_DB2=rXQ.DBSYSTEMVALUES_ORACLE=rXQ.DBSYSTEMVALUES_MYSQL=rXQ.DBSYSTEMVALUES_MSSQL=rXQ.DBSYSTEMVALUES_OTHER_SQL=rXQ.SemanticAttributes=rXQ.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=rXQ.SEMATTRS_MESSAGE_COMPRESSED_SIZE=rXQ.SEMATTRS_MESSAGE_ID=rXQ.SEMATTRS_MESSAGE_TYPE=rXQ.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=rXQ.SEMATTRS_RPC_JSONRPC_ERROR_CODE=rXQ.SEMATTRS_RPC_JSONRPC_REQUEST_ID=rXQ.SEMATTRS_RPC_JSONRPC_VERSION=rXQ.SEMATTRS_RPC_GRPC_STATUS_CODE=rXQ.SEMATTRS_RPC_METHOD=rXQ.SEMATTRS_RPC_SERVICE=rXQ.SEMATTRS_RPC_SYSTEM=rXQ.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=rXQ.SEMATTRS_MESSAGING_KAFKA_PARTITION=rXQ.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=rXQ.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=rXQ.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=rXQ.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=rXQ.SEMATTRS_MESSAGING_CONSUMER_ID=rXQ.SEMATTRS_MESSAGING_OPERATION=rXQ.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=rXQ.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=rXQ.SEMATTRS_MESSAGING_CONVERSATION_ID=rXQ.SEMATTRS_MESSAGING_MESSAGE_ID=rXQ.SEMATTRS_MESSAGING_URL=rXQ.SEMATTRS_MESSAGING_PROTOCOL_VERSION=rXQ.SEMATTRS_MESSAGING_PROTOCOL=rXQ.SEMATTRS_MESSAGING_TEMP_DESTINATION=void 0;rXQ.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=rXQ.FaasDocumentOperationValues=rXQ.FAASDOCUMENTOPERATIONVALUES_DELETE=rXQ.FAASDOCUMENTOPERATIONVALUES_EDIT=rXQ.FAASDOCUMENTOPERATIONVALUES_INSERT=rXQ.FaasTriggerValues=rXQ.FAASTRIGGERVALUES_OTHER=rXQ.FAASTRIGGERVALUES_TIMER=rXQ.FAASTRIGGERVALUES_PUBSUB=rXQ.FAASTRIGGERVALUES_HTTP=rXQ.FAASTRIGGERVALUES_DATASOURCE=rXQ.DbCassandraConsistencyLevelValues=rXQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=rXQ.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=rXQ.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=rXQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=rXQ.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=rXQ.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=rXQ.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=rXQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=rXQ.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=rXQ.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=rXQ.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=rXQ.DbSystemValues=rXQ.DBSYSTEMVALUES_COCKROACHDB=rXQ.DBSYSTEMVALUES_MEMCACHED=rXQ.DBSYSTEMVALUES_ELASTICSEARCH=rXQ.DBSYSTEMVALUES_GEODE=rXQ.DBSYSTEMVALUES_NEO4J=rXQ.DBSYSTEMVALUES_DYNAMODB=rXQ.DBSYSTEMVALUES_COSMOSDB=rXQ.DBSYSTEMVALUES_COUCHDB=rXQ.DBSYSTEMVALUES_COUCHBASE=rXQ.DBSYSTEMVALUES_REDIS=rXQ.DBSYSTEMVALUES_MONGODB=rXQ.DBSYSTEMVALUES_HBASE=rXQ.DBSYSTEMVALUES_CASSANDRA=rXQ.DBSYSTEMVALUES_COLDFUSION=rXQ.DBSYSTEMVALUES_H2=rXQ.DBSYSTEMVALUES_VERTICA=rXQ.DBSYSTEMVALUES_TERADATA=rXQ.DBSYSTEMVALUES_SYBASE=rXQ.DBSYSTEMVALUES_SQLITE=rXQ.DBSYSTEMVALUES_POINTBASE=rXQ.DBSYSTEMVALUES_PERVASIVE=rXQ.DBSYSTEMVALUES_NETEZZA=rXQ.DBSYSTEMVALUES_MARIADB=rXQ.DBSYSTEMVALUES_INTERBASE=rXQ.DBSYSTEMVALUES_INSTANTDB=rXQ.DBSYSTEMVALUES_INFORMIX=void 0;rXQ.MESSAGINGOPERATIONVALUES_RECEIVE=rXQ.MessagingDestinationKindValues=rXQ.MESSAGINGDESTINATIONKINDVALUES_TOPIC=rXQ.MESSAGINGDESTINATIONKINDVALUES_QUEUE=rXQ.HttpFlavorValues=rXQ.HTTPFLAVORVALUES_QUIC=rXQ.HTTPFLAVORVALUES_SPDY=rXQ.HTTPFLAVORVALUES_HTTP_2_0=rXQ.HTTPFLAVORVALUES_HTTP_1_1=rXQ.HTTPFLAVORVALUES_HTTP_1_0=rXQ.NetHostConnectionSubtypeValues=rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_NR=rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=rXQ.NetHostConnectionTypeValues=rXQ.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=rXQ.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=rXQ.NETHOSTCONNECTIONTYPEVALUES_CELL=rXQ.NETHOSTCONNECTIONTYPEVALUES_WIRED=rXQ.NETHOSTCONNECTIONTYPEVALUES_WIFI=rXQ.NetTransportValues=rXQ.NETTRANSPORTVALUES_OTHER=rXQ.NETTRANSPORTVALUES_INPROC=rXQ.NETTRANSPORTVALUES_PIPE=rXQ.NETTRANSPORTVALUES_UNIX=rXQ.NETTRANSPORTVALUES_IP=rXQ.NETTRANSPORTVALUES_IP_UDP=rXQ.NETTRANSPORTVALUES_IP_TCP=rXQ.FaasInvokedProviderValues=rXQ.FAASINVOKEDPROVIDERVALUES_GCP=rXQ.FAASINVOKEDPROVIDERVALUES_AZURE=rXQ.FAASINVOKEDPROVIDERVALUES_AWS=void 0;rXQ.MessageTypeValues=rXQ.MESSAGETYPEVALUES_RECEIVED=rXQ.MESSAGETYPEVALUES_SENT=rXQ.RpcGrpcStatusCodeValues=rXQ.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=rXQ.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=rXQ.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=rXQ.RPCGRPCSTATUSCODEVALUES_INTERNAL=rXQ.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=rXQ.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=rXQ.RPCGRPCSTATUSCODEVALUES_ABORTED=rXQ.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=rXQ.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=rXQ.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=rXQ.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=rXQ.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=rXQ.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=rXQ.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=rXQ.RPCGRPCSTATUSCODEVALUES_UNKNOWN=rXQ.RPCGRPCSTATUSCODEVALUES_CANCELLED=rXQ.RPCGRPCSTATUSCODEVALUES_OK=rXQ.MessagingOperationValues=rXQ.MESSAGINGOPERATIONVALUES_PROCESS=void 0;var b5=np(),X5Q="aws.lambda.invoked_arn",G5Q="db.system",F5Q="db.connection_string",W5Q="db.user",Z5Q="db.jdbc.driver_classname",$5Q="db.name",U5Q="db.statement",E5Q="db.operation",K5Q="db.mssql.instance_name",V5Q="db.cassandra.keyspace",I5Q="db.cassandra.page_size",H5Q="db.cassandra.consistency_level",D5Q="db.cassandra.table",N5Q="db.cassandra.idempotence",L5Q="db.cassandra.speculative_execution_count",q5Q="db.cassandra.coordinator.id",M5Q="db.cassandra.coordinator.dc",z5Q="db.hbase.namespace",R5Q="db.redis.database_index",w5Q="db.mongodb.collection",j5Q="db.sql.table",O5Q="exception.type",P5Q="exception.message",T5Q="exception.stacktrace",S5Q="exception.escaped",k5Q="faas.trigger",_5Q="faas.execution",v5Q="faas.document.collection",y5Q="faas.document.operation",h5Q="faas.document.time",g5Q="faas.document.name",x5Q="faas.time",f5Q="faas.cron",b5Q="faas.coldstart",m5Q="faas.invoked_name",u5Q="faas.invoked_provider",d5Q="faas.invoked_region",c5Q="net.transport",l5Q="net.peer.ip",p5Q="net.peer.port",i5Q="net.peer.name",n5Q="net.host.ip",s5Q="net.host.port",r5Q="net.host.name",a5Q="net.host.connection.type",o5Q="net.host.connection.subtype",t5Q="net.host.carrier.name",e5Q="net.host.carrier.mcc",ACQ="net.host.carrier.mnc",QCQ="net.host.carrier.icc",BCQ="peer.service",YCQ="enduser.id",JCQ="enduser.role",CCQ="enduser.scope",XCQ="thread.id",GCQ="thread.name",FCQ="code.function",WCQ="code.namespace",ZCQ="code.filepath",$CQ="code.lineno",UCQ="http.method",ECQ="http.url",KCQ="http.target",VCQ="http.host",ICQ="http.scheme",HCQ="http.status_code",DCQ="http.flavor",NCQ="http.user_agent",LCQ="http.request_content_length",qCQ="http.request_content_length_uncompressed",MCQ="http.response_content_length",zCQ="http.response_content_length_uncompressed",RCQ="http.server_name",wCQ="http.route",jCQ="http.client_ip",OCQ="aws.dynamodb.table_names",PCQ="aws.dynamodb.consumed_capacity",TCQ="aws.dynamodb.item_collection_metrics",SCQ="aws.dynamodb.provisioned_read_capacity",kCQ="aws.dynamodb.provisioned_write_capacity",_CQ="aws.dynamodb.consistent_read",vCQ="aws.dynamodb.projection",yCQ="aws.dynamodb.limit",hCQ="aws.dynamodb.attributes_to_get",gCQ="aws.dynamodb.index_name",xCQ="aws.dynamodb.select",fCQ="aws.dynamodb.global_secondary_indexes",bCQ="aws.dynamodb.local_secondary_indexes",mCQ="aws.dynamodb.exclusive_start_table",uCQ="aws.dynamodb.table_count",dCQ="aws.dynamodb.scan_forward",cCQ="aws.dynamodb.segment",lCQ="aws.dynamodb.total_segments",pCQ="aws.dynamodb.count",iCQ="aws.dynamodb.scanned_count",nCQ="aws.dynamodb.attribute_definitions",sCQ="aws.dynamodb.global_secondary_index_updates",rCQ="messaging.system",aCQ="messaging.destination",oCQ="messaging.destination_kind",tCQ="messaging.temp_destination",eCQ="messaging.protocol",A1Q="messaging.protocol_version",Q1Q="messaging.url",B1Q="messaging.message_id",Y1Q="messaging.conversation_id",J1Q="messaging.message_payload_size_bytes",C1Q="messaging.message_payload_compressed_size_bytes",X1Q="messaging.operation",G1Q="messaging.consumer_id",F1Q="messaging.rabbitmq.routing_key",W1Q="messaging.kafka.message_key",Z1Q="messaging.kafka.consumer_group",$1Q="messaging.kafka.client_id",U1Q="messaging.kafka.partition",E1Q="messaging.kafka.tombstone",K1Q="rpc.system",V1Q="rpc.service",I1Q="rpc.method",H1Q="rpc.grpc.status_code",D1Q="rpc.jsonrpc.version",N1Q="rpc.jsonrpc.request_id",L1Q="rpc.jsonrpc.error_code",q1Q="rpc.jsonrpc.error_message",M1Q="message.type",z1Q="message.id",R1Q="message.compressed_size",w1Q="message.uncompressed_size";rXQ.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=X5Q;rXQ.SEMATTRS_DB_SYSTEM=G5Q;rXQ.SEMATTRS_DB_CONNECTION_STRING=F5Q;rXQ.SEMATTRS_DB_USER=W5Q;rXQ.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=Z5Q;rXQ.SEMATTRS_DB_NAME=$5Q;rXQ.SEMATTRS_DB_STATEMENT=U5Q;rXQ.SEMATTRS_DB_OPERATION=E5Q;rXQ.SEMATTRS_DB_MSSQL_INSTANCE_NAME=K5Q;rXQ.SEMATTRS_DB_CASSANDRA_KEYSPACE=V5Q;rXQ.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=I5Q;rXQ.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=H5Q;rXQ.SEMATTRS_DB_CASSANDRA_TABLE=D5Q;rXQ.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=N5Q;rXQ.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=L5Q;rXQ.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=q5Q;rXQ.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=M5Q;rXQ.SEMATTRS_DB_HBASE_NAMESPACE=z5Q;rXQ.SEMATTRS_DB_REDIS_DATABASE_INDEX=R5Q;rXQ.SEMATTRS_DB_MONGODB_COLLECTION=w5Q;rXQ.SEMATTRS_DB_SQL_TABLE=j5Q;rXQ.SEMATTRS_EXCEPTION_TYPE=O5Q;rXQ.SEMATTRS_EXCEPTION_MESSAGE=P5Q;rXQ.SEMATTRS_EXCEPTION_STACKTRACE=T5Q;rXQ.SEMATTRS_EXCEPTION_ESCAPED=S5Q;rXQ.SEMATTRS_FAAS_TRIGGER=k5Q;rXQ.SEMATTRS_FAAS_EXECUTION=_5Q;rXQ.SEMATTRS_FAAS_DOCUMENT_COLLECTION=v5Q;rXQ.SEMATTRS_FAAS_DOCUMENT_OPERATION=y5Q;rXQ.SEMATTRS_FAAS_DOCUMENT_TIME=h5Q;rXQ.SEMATTRS_FAAS_DOCUMENT_NAME=g5Q;rXQ.SEMATTRS_FAAS_TIME=x5Q;rXQ.SEMATTRS_FAAS_CRON=f5Q;rXQ.SEMATTRS_FAAS_COLDSTART=b5Q;rXQ.SEMATTRS_FAAS_INVOKED_NAME=m5Q;rXQ.SEMATTRS_FAAS_INVOKED_PROVIDER=u5Q;rXQ.SEMATTRS_FAAS_INVOKED_REGION=d5Q;rXQ.SEMATTRS_NET_TRANSPORT=c5Q;rXQ.SEMATTRS_NET_PEER_IP=l5Q;rXQ.SEMATTRS_NET_PEER_PORT=p5Q;rXQ.SEMATTRS_NET_PEER_NAME=i5Q;rXQ.SEMATTRS_NET_HOST_IP=n5Q;rXQ.SEMATTRS_NET_HOST_PORT=s5Q;rXQ.SEMATTRS_NET_HOST_NAME=r5Q;rXQ.SEMATTRS_NET_HOST_CONNECTION_TYPE=a5Q;rXQ.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=o5Q;rXQ.SEMATTRS_NET_HOST_CARRIER_NAME=t5Q;rXQ.SEMATTRS_NET_HOST_CARRIER_MCC=e5Q;rXQ.SEMATTRS_NET_HOST_CARRIER_MNC=ACQ;rXQ.SEMATTRS_NET_HOST_CARRIER_ICC=QCQ;rXQ.SEMATTRS_PEER_SERVICE=BCQ;rXQ.SEMATTRS_ENDUSER_ID=YCQ;rXQ.SEMATTRS_ENDUSER_ROLE=JCQ;rXQ.SEMATTRS_ENDUSER_SCOPE=CCQ;rXQ.SEMATTRS_THREAD_ID=XCQ;rXQ.SEMATTRS_THREAD_NAME=GCQ;rXQ.SEMATTRS_CODE_FUNCTION=FCQ;rXQ.SEMATTRS_CODE_NAMESPACE=WCQ;rXQ.SEMATTRS_CODE_FILEPATH=ZCQ;rXQ.SEMATTRS_CODE_LINENO=$CQ;rXQ.SEMATTRS_HTTP_METHOD=UCQ;rXQ.SEMATTRS_HTTP_URL=ECQ;rXQ.SEMATTRS_HTTP_TARGET=KCQ;rXQ.SEMATTRS_HTTP_HOST=VCQ;rXQ.SEMATTRS_HTTP_SCHEME=ICQ;rXQ.SEMATTRS_HTTP_STATUS_CODE=HCQ;rXQ.SEMATTRS_HTTP_FLAVOR=DCQ;rXQ.SEMATTRS_HTTP_USER_AGENT=NCQ;rXQ.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=LCQ;rXQ.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=qCQ;rXQ.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=MCQ;rXQ.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=zCQ;rXQ.SEMATTRS_HTTP_SERVER_NAME=RCQ;rXQ.SEMATTRS_HTTP_ROUTE=wCQ;rXQ.SEMATTRS_HTTP_CLIENT_IP=jCQ;rXQ.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=OCQ;rXQ.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=PCQ;rXQ.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=TCQ;rXQ.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=SCQ;rXQ.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=kCQ;rXQ.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=_CQ;rXQ.SEMATTRS_AWS_DYNAMODB_PROJECTION=vCQ;rXQ.SEMATTRS_AWS_DYNAMODB_LIMIT=yCQ;rXQ.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=hCQ;rXQ.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=gCQ;rXQ.SEMATTRS_AWS_DYNAMODB_SELECT=xCQ;rXQ.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=fCQ;rXQ.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=bCQ;rXQ.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=mCQ;rXQ.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=uCQ;rXQ.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=dCQ;rXQ.SEMATTRS_AWS_DYNAMODB_SEGMENT=cCQ;rXQ.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=lCQ;rXQ.SEMATTRS_AWS_DYNAMODB_COUNT=pCQ;rXQ.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=iCQ;rXQ.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=nCQ;rXQ.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=sCQ;rXQ.SEMATTRS_MESSAGING_SYSTEM=rCQ;rXQ.SEMATTRS_MESSAGING_DESTINATION=aCQ;rXQ.SEMATTRS_MESSAGING_DESTINATION_KIND=oCQ;rXQ.SEMATTRS_MESSAGING_TEMP_DESTINATION=tCQ;rXQ.SEMATTRS_MESSAGING_PROTOCOL=eCQ;rXQ.SEMATTRS_MESSAGING_PROTOCOL_VERSION=A1Q;rXQ.SEMATTRS_MESSAGING_URL=Q1Q;rXQ.SEMATTRS_MESSAGING_MESSAGE_ID=B1Q;rXQ.SEMATTRS_MESSAGING_CONVERSATION_ID=Y1Q;rXQ.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=J1Q;rXQ.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=C1Q;rXQ.SEMATTRS_MESSAGING_OPERATION=X1Q;rXQ.SEMATTRS_MESSAGING_CONSUMER_ID=G1Q;rXQ.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=F1Q;rXQ.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=W1Q;rXQ.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=Z1Q;rXQ.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=$1Q;rXQ.SEMATTRS_MESSAGING_KAFKA_PARTITION=U1Q;rXQ.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=E1Q;rXQ.SEMATTRS_RPC_SYSTEM=K1Q;rXQ.SEMATTRS_RPC_SERVICE=V1Q;rXQ.SEMATTRS_RPC_METHOD=I1Q;rXQ.SEMATTRS_RPC_GRPC_STATUS_CODE=H1Q;rXQ.SEMATTRS_RPC_JSONRPC_VERSION=D1Q;rXQ.SEMATTRS_RPC_JSONRPC_REQUEST_ID=N1Q;rXQ.SEMATTRS_RPC_JSONRPC_ERROR_CODE=L1Q;rXQ.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=q1Q;rXQ.SEMATTRS_MESSAGE_TYPE=M1Q;rXQ.SEMATTRS_MESSAGE_ID=z1Q;rXQ.SEMATTRS_MESSAGE_COMPRESSED_SIZE=R1Q;rXQ.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=w1Q;rXQ.SemanticAttributes=(0,b5.createConstMap)([X5Q,G5Q,F5Q,W5Q,Z5Q,$5Q,U5Q,E5Q,K5Q,V5Q,I5Q,H5Q,D5Q,N5Q,L5Q,q5Q,M5Q,z5Q,R5Q,w5Q,j5Q,O5Q,P5Q,T5Q,S5Q,k5Q,_5Q,v5Q,y5Q,h5Q,g5Q,x5Q,f5Q,b5Q,m5Q,u5Q,d5Q,c5Q,l5Q,p5Q,i5Q,n5Q,s5Q,r5Q,a5Q,o5Q,t5Q,e5Q,ACQ,QCQ,BCQ,YCQ,JCQ,CCQ,XCQ,GCQ,FCQ,WCQ,ZCQ,$CQ,UCQ,ECQ,KCQ,VCQ,ICQ,HCQ,DCQ,NCQ,LCQ,qCQ,MCQ,zCQ,RCQ,wCQ,jCQ,OCQ,PCQ,TCQ,SCQ,kCQ,_CQ,vCQ,yCQ,hCQ,gCQ,xCQ,fCQ,bCQ,mCQ,uCQ,dCQ,cCQ,lCQ,pCQ,iCQ,nCQ,sCQ,rCQ,aCQ,oCQ,tCQ,eCQ,A1Q,Q1Q,B1Q,Y1Q,J1Q,C1Q,X1Q,G1Q,F1Q,W1Q,Z1Q,$1Q,U1Q,E1Q,K1Q,V1Q,I1Q,H1Q,D1Q,N1Q,L1Q,q1Q,M1Q,z1Q,R1Q,w1Q]);var j1Q="other_sql",O1Q="mssql",P1Q="mysql",T1Q="oracle",S1Q="db2",k1Q="postgresql",_1Q="redshift",v1Q="hive",y1Q="cloudscape",h1Q="hsqldb",g1Q="progress",x1Q="maxdb",f1Q="hanadb",b1Q="ingres",m1Q="firstsql",u1Q="edb",d1Q="cache",c1Q="adabas",l1Q="firebird",p1Q="derby",i1Q="filemaker",n1Q="informix",s1Q="instantdb",r1Q="interbase",a1Q="mariadb",o1Q="netezza",t1Q="pervasive",e1Q="pointbase",A6Q="sqlite",Q6Q="sybase",B6Q="teradata",Y6Q="vertica",J6Q="h2",C6Q="coldfusion",X6Q="cassandra",G6Q="hbase",F6Q="mongodb",W6Q="redis",Z6Q="couchbase",$6Q="couchdb",U6Q="cosmosdb",E6Q="dynamodb",K6Q="neo4j",V6Q="geode",I6Q="elasticsearch",H6Q="memcached",D6Q="cockroachdb";rXQ.DBSYSTEMVALUES_OTHER_SQL=j1Q;rXQ.DBSYSTEMVALUES_MSSQL=O1Q;rXQ.DBSYSTEMVALUES_MYSQL=P1Q;rXQ.DBSYSTEMVALUES_ORACLE=T1Q;rXQ.DBSYSTEMVALUES_DB2=S1Q;rXQ.DBSYSTEMVALUES_POSTGRESQL=k1Q;rXQ.DBSYSTEMVALUES_REDSHIFT=_1Q;rXQ.DBSYSTEMVALUES_HIVE=v1Q;rXQ.DBSYSTEMVALUES_CLOUDSCAPE=y1Q;rXQ.DBSYSTEMVALUES_HSQLDB=h1Q;rXQ.DBSYSTEMVALUES_PROGRESS=g1Q;rXQ.DBSYSTEMVALUES_MAXDB=x1Q;rXQ.DBSYSTEMVALUES_HANADB=f1Q;rXQ.DBSYSTEMVALUES_INGRES=b1Q;rXQ.DBSYSTEMVALUES_FIRSTSQL=m1Q;rXQ.DBSYSTEMVALUES_EDB=u1Q;rXQ.DBSYSTEMVALUES_CACHE=d1Q;rXQ.DBSYSTEMVALUES_ADABAS=c1Q;rXQ.DBSYSTEMVALUES_FIREBIRD=l1Q;rXQ.DBSYSTEMVALUES_DERBY=p1Q;rXQ.DBSYSTEMVALUES_FILEMAKER=i1Q;rXQ.DBSYSTEMVALUES_INFORMIX=n1Q;rXQ.DBSYSTEMVALUES_INSTANTDB=s1Q;rXQ.DBSYSTEMVALUES_INTERBASE=r1Q;rXQ.DBSYSTEMVALUES_MARIADB=a1Q;rXQ.DBSYSTEMVALUES_NETEZZA=o1Q;rXQ.DBSYSTEMVALUES_PERVASIVE=t1Q;rXQ.DBSYSTEMVALUES_POINTBASE=e1Q;rXQ.DBSYSTEMVALUES_SQLITE=A6Q;rXQ.DBSYSTEMVALUES_SYBASE=Q6Q;rXQ.DBSYSTEMVALUES_TERADATA=B6Q;rXQ.DBSYSTEMVALUES_VERTICA=Y6Q;rXQ.DBSYSTEMVALUES_H2=J6Q;rXQ.DBSYSTEMVALUES_COLDFUSION=C6Q;rXQ.DBSYSTEMVALUES_CASSANDRA=X6Q;rXQ.DBSYSTEMVALUES_HBASE=G6Q;rXQ.DBSYSTEMVALUES_MONGODB=F6Q;rXQ.DBSYSTEMVALUES_REDIS=W6Q;rXQ.DBSYSTEMVALUES_COUCHBASE=Z6Q;rXQ.DBSYSTEMVALUES_COUCHDB=$6Q;rXQ.DBSYSTEMVALUES_COSMOSDB=U6Q;rXQ.DBSYSTEMVALUES_DYNAMODB=E6Q;rXQ.DBSYSTEMVALUES_NEO4J=K6Q;rXQ.DBSYSTEMVALUES_GEODE=V6Q;rXQ.DBSYSTEMVALUES_ELASTICSEARCH=I6Q;rXQ.DBSYSTEMVALUES_MEMCACHED=H6Q;rXQ.DBSYSTEMVALUES_COCKROACHDB=D6Q;rXQ.DbSystemValues=(0,b5.createConstMap)([j1Q,O1Q,P1Q,T1Q,S1Q,k1Q,_1Q,v1Q,y1Q,h1Q,g1Q,x1Q,f1Q,b1Q,m1Q,u1Q,d1Q,c1Q,l1Q,p1Q,i1Q,n1Q,s1Q,r1Q,a1Q,o1Q,t1Q,e1Q,A6Q,Q6Q,B6Q,Y6Q,J6Q,C6Q,X6Q,G6Q,F6Q,W6Q,Z6Q,$6Q,U6Q,E6Q,K6Q,V6Q,I6Q,H6Q,D6Q]);var N6Q="all",L6Q="each_quorum",q6Q="quorum",M6Q="local_quorum",z6Q="one",R6Q="two",w6Q="three",j6Q="local_one",O6Q="any",P6Q="serial",T6Q="local_serial";rXQ.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=N6Q;rXQ.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=L6Q;rXQ.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=q6Q;rXQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=M6Q;rXQ.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=z6Q;rXQ.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=R6Q;rXQ.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=w6Q;rXQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=j6Q;rXQ.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=O6Q;rXQ.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=P6Q;rXQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=T6Q;rXQ.DbCassandraConsistencyLevelValues=(0,b5.createConstMap)([N6Q,L6Q,q6Q,M6Q,z6Q,R6Q,w6Q,j6Q,O6Q,P6Q,T6Q]);var S6Q="datasource",k6Q="http",_6Q="pubsub",v6Q="timer",y6Q="other";rXQ.FAASTRIGGERVALUES_DATASOURCE=S6Q;rXQ.FAASTRIGGERVALUES_HTTP=k6Q;rXQ.FAASTRIGGERVALUES_PUBSUB=_6Q;rXQ.FAASTRIGGERVALUES_TIMER=v6Q;rXQ.FAASTRIGGERVALUES_OTHER=y6Q;rXQ.FaasTriggerValues=(0,b5.createConstMap)([S6Q,k6Q,_6Q,v6Q,y6Q]);var h6Q="insert",g6Q="edit",x6Q="delete";rXQ.FAASDOCUMENTOPERATIONVALUES_INSERT=h6Q;rXQ.FAASDOCUMENTOPERATIONVALUES_EDIT=g6Q;rXQ.FAASDOCUMENTOPERATIONVALUES_DELETE=x6Q;rXQ.FaasDocumentOperationValues=(0,b5.createConstMap)([h6Q,g6Q,x6Q]);var f6Q="alibaba_cloud",b6Q="aws",m6Q="azure",u6Q="gcp";rXQ.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=f6Q;rXQ.FAASINVOKEDPROVIDERVALUES_AWS=b6Q;rXQ.FAASINVOKEDPROVIDERVALUES_AZURE=m6Q;rXQ.FAASINVOKEDPROVIDERVALUES_GCP=u6Q;rXQ.FaasInvokedProviderValues=(0,b5.createConstMap)([f6Q,b6Q,m6Q,u6Q]);var d6Q="ip_tcp",c6Q="ip_udp",l6Q="ip",p6Q="unix",i6Q="pipe",n6Q="inproc",s6Q="other";rXQ.NETTRANSPORTVALUES_IP_TCP=d6Q;rXQ.NETTRANSPORTVALUES_IP_UDP=c6Q;rXQ.NETTRANSPORTVALUES_IP=l6Q;rXQ.NETTRANSPORTVALUES_UNIX=p6Q;rXQ.NETTRANSPORTVALUES_PIPE=i6Q;rXQ.NETTRANSPORTVALUES_INPROC=n6Q;rXQ.NETTRANSPORTVALUES_OTHER=s6Q;rXQ.NetTransportValues=(0,b5.createConstMap)([d6Q,c6Q,l6Q,p6Q,i6Q,n6Q,s6Q]);var r6Q="wifi",a6Q="wired",o6Q="cell",t6Q="unavailable",e6Q="unknown";rXQ.NETHOSTCONNECTIONTYPEVALUES_WIFI=r6Q;rXQ.NETHOSTCONNECTIONTYPEVALUES_WIRED=a6Q;rXQ.NETHOSTCONNECTIONTYPEVALUES_CELL=o6Q;rXQ.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=t6Q;rXQ.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=e6Q;rXQ.NetHostConnectionTypeValues=(0,b5.createConstMap)([r6Q,a6Q,o6Q,t6Q,e6Q]);var AXQ="gprs",QXQ="edge",BXQ="umts",YXQ="cdma",JXQ="evdo_0",CXQ="evdo_a",XXQ="cdma2000_1xrtt",GXQ="hsdpa",FXQ="hsupa",WXQ="hspa",ZXQ="iden",$XQ="evdo_b",UXQ="lte",EXQ="ehrpd",KXQ="hspap",VXQ="gsm",IXQ="td_scdma",HXQ="iwlan",DXQ="nr",NXQ="nrnsa",LXQ="lte_ca";rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=AXQ;rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=QXQ;rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=BXQ;rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=YXQ;rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=JXQ;rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=CXQ;rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=XXQ;rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=GXQ;rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=FXQ;rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=WXQ;rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=ZXQ;rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=$XQ;rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=UXQ;rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=EXQ;rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=KXQ;rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=VXQ;rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=IXQ;rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=HXQ;rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_NR=DXQ;rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=NXQ;rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=LXQ;rXQ.NetHostConnectionSubtypeValues=(0,b5.createConstMap)([AXQ,QXQ,BXQ,YXQ,JXQ,CXQ,XXQ,GXQ,FXQ,WXQ,ZXQ,$XQ,UXQ,EXQ,KXQ,VXQ,IXQ,HXQ,DXQ,NXQ,LXQ]);var qXQ="1.0",MXQ="1.1",zXQ="2.0",RXQ="SPDY",wXQ="QUIC";rXQ.HTTPFLAVORVALUES_HTTP_1_0=qXQ;rXQ.HTTPFLAVORVALUES_HTTP_1_1=MXQ;rXQ.HTTPFLAVORVALUES_HTTP_2_0=zXQ;rXQ.HTTPFLAVORVALUES_SPDY=RXQ;rXQ.HTTPFLAVORVALUES_QUIC=wXQ;rXQ.HttpFlavorValues={HTTP_1_0:qXQ,HTTP_1_1:MXQ,HTTP_2_0:zXQ,SPDY:RXQ,QUIC:wXQ};var jXQ="queue",OXQ="topic";rXQ.MESSAGINGDESTINATIONKINDVALUES_QUEUE=jXQ;rXQ.MESSAGINGDESTINATIONKINDVALUES_TOPIC=OXQ;rXQ.MessagingDestinationKindValues=(0,b5.createConstMap)([jXQ,OXQ]);var PXQ="receive",TXQ="process";rXQ.MESSAGINGOPERATIONVALUES_RECEIVE=PXQ;rXQ.MESSAGINGOPERATIONVALUES_PROCESS=TXQ;rXQ.MessagingOperationValues=(0,b5.createConstMap)([PXQ,TXQ]);var SXQ=0,kXQ=1,_XQ=2,vXQ=3,yXQ=4,hXQ=5,gXQ=6,xXQ=7,fXQ=8,bXQ=9,mXQ=10,uXQ=11,dXQ=12,cXQ=13,lXQ=14,pXQ=15,iXQ=16;rXQ.RPCGRPCSTATUSCODEVALUES_OK=SXQ;rXQ.RPCGRPCSTATUSCODEVALUES_CANCELLED=kXQ;rXQ.RPCGRPCSTATUSCODEVALUES_UNKNOWN=_XQ;rXQ.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=vXQ;rXQ.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=yXQ;rXQ.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=hXQ;rXQ.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=gXQ;rXQ.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=xXQ;rXQ.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=fXQ;rXQ.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=bXQ;rXQ.RPCGRPCSTATUSCODEVALUES_ABORTED=mXQ;rXQ.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=uXQ;rXQ.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=dXQ;rXQ.RPCGRPCSTATUSCODEVALUES_INTERNAL=cXQ;rXQ.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=lXQ;rXQ.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=pXQ;rXQ.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=iXQ;rXQ.RpcGrpcStatusCodeValues={OK:SXQ,CANCELLED:kXQ,UNKNOWN:_XQ,INVALID_ARGUMENT:vXQ,DEADLINE_EXCEEDED:yXQ,NOT_FOUND:hXQ,ALREADY_EXISTS:gXQ,PERMISSION_DENIED:xXQ,RESOURCE_EXHAUSTED:fXQ,FAILED_PRECONDITION:bXQ,ABORTED:mXQ,OUT_OF_RANGE:uXQ,UNIMPLEMENTED:dXQ,INTERNAL:cXQ,UNAVAILABLE:lXQ,DATA_LOSS:pXQ,UNAUTHENTICATED:iXQ};var nXQ="SENT",sXQ="RECEIVED";rXQ.MESSAGETYPEVALUES_SENT=nXQ;rXQ.MESSAGETYPEVALUES_RECEIVED=sXQ;rXQ.MessageTypeValues=(0,b5.createConstMap)([nXQ,sXQ])});var YGQ=R((W$)=>{var RZ0=W$&&W$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),wZ0=W$&&W$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))RZ0(Q,A,B)};Object.defineProperty(W$,"__esModule",{value:!0});wZ0(BGQ(),W$)});var _FQ=R((PFQ)=>{Object.defineProperty(PFQ,"__esModule",{value:!0});PFQ.SEMRESATTRS_K8S_STATEFULSET_NAME=PFQ.SEMRESATTRS_K8S_STATEFULSET_UID=PFQ.SEMRESATTRS_K8S_DEPLOYMENT_NAME=PFQ.SEMRESATTRS_K8S_DEPLOYMENT_UID=PFQ.SEMRESATTRS_K8S_REPLICASET_NAME=PFQ.SEMRESATTRS_K8S_REPLICASET_UID=PFQ.SEMRESATTRS_K8S_CONTAINER_NAME=PFQ.SEMRESATTRS_K8S_POD_NAME=PFQ.SEMRESATTRS_K8S_POD_UID=PFQ.SEMRESATTRS_K8S_NAMESPACE_NAME=PFQ.SEMRESATTRS_K8S_NODE_UID=PFQ.SEMRESATTRS_K8S_NODE_NAME=PFQ.SEMRESATTRS_K8S_CLUSTER_NAME=PFQ.SEMRESATTRS_HOST_IMAGE_VERSION=PFQ.SEMRESATTRS_HOST_IMAGE_ID=PFQ.SEMRESATTRS_HOST_IMAGE_NAME=PFQ.SEMRESATTRS_HOST_ARCH=PFQ.SEMRESATTRS_HOST_TYPE=PFQ.SEMRESATTRS_HOST_NAME=PFQ.SEMRESATTRS_HOST_ID=PFQ.SEMRESATTRS_FAAS_MAX_MEMORY=PFQ.SEMRESATTRS_FAAS_INSTANCE=PFQ.SEMRESATTRS_FAAS_VERSION=PFQ.SEMRESATTRS_FAAS_ID=PFQ.SEMRESATTRS_FAAS_NAME=PFQ.SEMRESATTRS_DEVICE_MODEL_NAME=PFQ.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=PFQ.SEMRESATTRS_DEVICE_ID=PFQ.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=PFQ.SEMRESATTRS_CONTAINER_IMAGE_TAG=PFQ.SEMRESATTRS_CONTAINER_IMAGE_NAME=PFQ.SEMRESATTRS_CONTAINER_RUNTIME=PFQ.SEMRESATTRS_CONTAINER_ID=PFQ.SEMRESATTRS_CONTAINER_NAME=PFQ.SEMRESATTRS_AWS_LOG_STREAM_ARNS=PFQ.SEMRESATTRS_AWS_LOG_STREAM_NAMES=PFQ.SEMRESATTRS_AWS_LOG_GROUP_ARNS=PFQ.SEMRESATTRS_AWS_LOG_GROUP_NAMES=PFQ.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=PFQ.SEMRESATTRS_AWS_ECS_TASK_REVISION=PFQ.SEMRESATTRS_AWS_ECS_TASK_FAMILY=PFQ.SEMRESATTRS_AWS_ECS_TASK_ARN=PFQ.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=PFQ.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=PFQ.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=PFQ.SEMRESATTRS_CLOUD_PLATFORM=PFQ.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=PFQ.SEMRESATTRS_CLOUD_REGION=PFQ.SEMRESATTRS_CLOUD_ACCOUNT_ID=PFQ.SEMRESATTRS_CLOUD_PROVIDER=void 0;PFQ.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=PFQ.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=PFQ.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=PFQ.CLOUDPLATFORMVALUES_AZURE_AKS=PFQ.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=PFQ.CLOUDPLATFORMVALUES_AZURE_VM=PFQ.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=PFQ.CLOUDPLATFORMVALUES_AWS_LAMBDA=PFQ.CLOUDPLATFORMVALUES_AWS_EKS=PFQ.CLOUDPLATFORMVALUES_AWS_ECS=PFQ.CLOUDPLATFORMVALUES_AWS_EC2=PFQ.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=PFQ.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=PFQ.CloudProviderValues=PFQ.CLOUDPROVIDERVALUES_GCP=PFQ.CLOUDPROVIDERVALUES_AZURE=PFQ.CLOUDPROVIDERVALUES_AWS=PFQ.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=PFQ.SemanticResourceAttributes=PFQ.SEMRESATTRS_WEBENGINE_DESCRIPTION=PFQ.SEMRESATTRS_WEBENGINE_VERSION=PFQ.SEMRESATTRS_WEBENGINE_NAME=PFQ.SEMRESATTRS_TELEMETRY_AUTO_VERSION=PFQ.SEMRESATTRS_TELEMETRY_SDK_VERSION=PFQ.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=PFQ.SEMRESATTRS_TELEMETRY_SDK_NAME=PFQ.SEMRESATTRS_SERVICE_VERSION=PFQ.SEMRESATTRS_SERVICE_INSTANCE_ID=PFQ.SEMRESATTRS_SERVICE_NAMESPACE=PFQ.SEMRESATTRS_SERVICE_NAME=PFQ.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=PFQ.SEMRESATTRS_PROCESS_RUNTIME_VERSION=PFQ.SEMRESATTRS_PROCESS_RUNTIME_NAME=PFQ.SEMRESATTRS_PROCESS_OWNER=PFQ.SEMRESATTRS_PROCESS_COMMAND_ARGS=PFQ.SEMRESATTRS_PROCESS_COMMAND_LINE=PFQ.SEMRESATTRS_PROCESS_COMMAND=PFQ.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=PFQ.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=PFQ.SEMRESATTRS_PROCESS_PID=PFQ.SEMRESATTRS_OS_VERSION=PFQ.SEMRESATTRS_OS_NAME=PFQ.SEMRESATTRS_OS_DESCRIPTION=PFQ.SEMRESATTRS_OS_TYPE=PFQ.SEMRESATTRS_K8S_CRONJOB_NAME=PFQ.SEMRESATTRS_K8S_CRONJOB_UID=PFQ.SEMRESATTRS_K8S_JOB_NAME=PFQ.SEMRESATTRS_K8S_JOB_UID=PFQ.SEMRESATTRS_K8S_DAEMONSET_NAME=PFQ.SEMRESATTRS_K8S_DAEMONSET_UID=void 0;PFQ.TelemetrySdkLanguageValues=PFQ.TELEMETRYSDKLANGUAGEVALUES_WEBJS=PFQ.TELEMETRYSDKLANGUAGEVALUES_RUBY=PFQ.TELEMETRYSDKLANGUAGEVALUES_PYTHON=PFQ.TELEMETRYSDKLANGUAGEVALUES_PHP=PFQ.TELEMETRYSDKLANGUAGEVALUES_NODEJS=PFQ.TELEMETRYSDKLANGUAGEVALUES_JAVA=PFQ.TELEMETRYSDKLANGUAGEVALUES_GO=PFQ.TELEMETRYSDKLANGUAGEVALUES_ERLANG=PFQ.TELEMETRYSDKLANGUAGEVALUES_DOTNET=PFQ.TELEMETRYSDKLANGUAGEVALUES_CPP=PFQ.OsTypeValues=PFQ.OSTYPEVALUES_Z_OS=PFQ.OSTYPEVALUES_SOLARIS=PFQ.OSTYPEVALUES_AIX=PFQ.OSTYPEVALUES_HPUX=PFQ.OSTYPEVALUES_DRAGONFLYBSD=PFQ.OSTYPEVALUES_OPENBSD=PFQ.OSTYPEVALUES_NETBSD=PFQ.OSTYPEVALUES_FREEBSD=PFQ.OSTYPEVALUES_DARWIN=PFQ.OSTYPEVALUES_LINUX=PFQ.OSTYPEVALUES_WINDOWS=PFQ.HostArchValues=PFQ.HOSTARCHVALUES_X86=PFQ.HOSTARCHVALUES_PPC64=PFQ.HOSTARCHVALUES_PPC32=PFQ.HOSTARCHVALUES_IA64=PFQ.HOSTARCHVALUES_ARM64=PFQ.HOSTARCHVALUES_ARM32=PFQ.HOSTARCHVALUES_AMD64=PFQ.AwsEcsLaunchtypeValues=PFQ.AWSECSLAUNCHTYPEVALUES_FARGATE=PFQ.AWSECSLAUNCHTYPEVALUES_EC2=PFQ.CloudPlatformValues=PFQ.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=PFQ.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=PFQ.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=PFQ.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=void 0;var Z$=np(),JGQ="cloud.provider",CGQ="cloud.account.id",XGQ="cloud.region",GGQ="cloud.availability_zone",FGQ="cloud.platform",WGQ="aws.ecs.container.arn",ZGQ="aws.ecs.cluster.arn",$GQ="aws.ecs.launchtype",UGQ="aws.ecs.task.arn",EGQ="aws.ecs.task.family",KGQ="aws.ecs.task.revision",VGQ="aws.eks.cluster.arn",IGQ="aws.log.group.names",HGQ="aws.log.group.arns",DGQ="aws.log.stream.names",NGQ="aws.log.stream.arns",LGQ="container.name",qGQ="container.id",MGQ="container.runtime",zGQ="container.image.name",RGQ="container.image.tag",wGQ="deployment.environment",jGQ="device.id",OGQ="device.model.identifier",PGQ="device.model.name",TGQ="faas.name",SGQ="faas.id",kGQ="faas.version",_GQ="faas.instance",vGQ="faas.max_memory",yGQ="host.id",hGQ="host.name",gGQ="host.type",xGQ="host.arch",fGQ="host.image.name",bGQ="host.image.id",mGQ="host.image.version",uGQ="k8s.cluster.name",dGQ="k8s.node.name",cGQ="k8s.node.uid",lGQ="k8s.namespace.name",pGQ="k8s.pod.uid",iGQ="k8s.pod.name",nGQ="k8s.container.name",sGQ="k8s.replicaset.uid",rGQ="k8s.replicaset.name",aGQ="k8s.deployment.uid",oGQ="k8s.deployment.name",tGQ="k8s.statefulset.uid",eGQ="k8s.statefulset.name",A7Q="k8s.daemonset.uid",Q7Q="k8s.daemonset.name",B7Q="k8s.job.uid",Y7Q="k8s.job.name",J7Q="k8s.cronjob.uid",C7Q="k8s.cronjob.name",X7Q="os.type",G7Q="os.description",F7Q="os.name",W7Q="os.version",Z7Q="process.pid",$7Q="process.executable.name",U7Q="process.executable.path",E7Q="process.command",K7Q="process.command_line",V7Q="process.command_args",I7Q="process.owner",H7Q="process.runtime.name",D7Q="process.runtime.version",N7Q="process.runtime.description",L7Q="service.name",q7Q="service.namespace",M7Q="service.instance.id",z7Q="service.version",R7Q="telemetry.sdk.name",w7Q="telemetry.sdk.language",j7Q="telemetry.sdk.version",O7Q="telemetry.auto.version",P7Q="webengine.name",T7Q="webengine.version",S7Q="webengine.description";PFQ.SEMRESATTRS_CLOUD_PROVIDER=JGQ;PFQ.SEMRESATTRS_CLOUD_ACCOUNT_ID=CGQ;PFQ.SEMRESATTRS_CLOUD_REGION=XGQ;PFQ.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=GGQ;PFQ.SEMRESATTRS_CLOUD_PLATFORM=FGQ;PFQ.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=WGQ;PFQ.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=ZGQ;PFQ.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=$GQ;PFQ.SEMRESATTRS_AWS_ECS_TASK_ARN=UGQ;PFQ.SEMRESATTRS_AWS_ECS_TASK_FAMILY=EGQ;PFQ.SEMRESATTRS_AWS_ECS_TASK_REVISION=KGQ;PFQ.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=VGQ;PFQ.SEMRESATTRS_AWS_LOG_GROUP_NAMES=IGQ;PFQ.SEMRESATTRS_AWS_LOG_GROUP_ARNS=HGQ;PFQ.SEMRESATTRS_AWS_LOG_STREAM_NAMES=DGQ;PFQ.SEMRESATTRS_AWS_LOG_STREAM_ARNS=NGQ;PFQ.SEMRESATTRS_CONTAINER_NAME=LGQ;PFQ.SEMRESATTRS_CONTAINER_ID=qGQ;PFQ.SEMRESATTRS_CONTAINER_RUNTIME=MGQ;PFQ.SEMRESATTRS_CONTAINER_IMAGE_NAME=zGQ;PFQ.SEMRESATTRS_CONTAINER_IMAGE_TAG=RGQ;PFQ.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=wGQ;PFQ.SEMRESATTRS_DEVICE_ID=jGQ;PFQ.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=OGQ;PFQ.SEMRESATTRS_DEVICE_MODEL_NAME=PGQ;PFQ.SEMRESATTRS_FAAS_NAME=TGQ;PFQ.SEMRESATTRS_FAAS_ID=SGQ;PFQ.SEMRESATTRS_FAAS_VERSION=kGQ;PFQ.SEMRESATTRS_FAAS_INSTANCE=_GQ;PFQ.SEMRESATTRS_FAAS_MAX_MEMORY=vGQ;PFQ.SEMRESATTRS_HOST_ID=yGQ;PFQ.SEMRESATTRS_HOST_NAME=hGQ;PFQ.SEMRESATTRS_HOST_TYPE=gGQ;PFQ.SEMRESATTRS_HOST_ARCH=xGQ;PFQ.SEMRESATTRS_HOST_IMAGE_NAME=fGQ;PFQ.SEMRESATTRS_HOST_IMAGE_ID=bGQ;PFQ.SEMRESATTRS_HOST_IMAGE_VERSION=mGQ;PFQ.SEMRESATTRS_K8S_CLUSTER_NAME=uGQ;PFQ.SEMRESATTRS_K8S_NODE_NAME=dGQ;PFQ.SEMRESATTRS_K8S_NODE_UID=cGQ;PFQ.SEMRESATTRS_K8S_NAMESPACE_NAME=lGQ;PFQ.SEMRESATTRS_K8S_POD_UID=pGQ;PFQ.SEMRESATTRS_K8S_POD_NAME=iGQ;PFQ.SEMRESATTRS_K8S_CONTAINER_NAME=nGQ;PFQ.SEMRESATTRS_K8S_REPLICASET_UID=sGQ;PFQ.SEMRESATTRS_K8S_REPLICASET_NAME=rGQ;PFQ.SEMRESATTRS_K8S_DEPLOYMENT_UID=aGQ;PFQ.SEMRESATTRS_K8S_DEPLOYMENT_NAME=oGQ;PFQ.SEMRESATTRS_K8S_STATEFULSET_UID=tGQ;PFQ.SEMRESATTRS_K8S_STATEFULSET_NAME=eGQ;PFQ.SEMRESATTRS_K8S_DAEMONSET_UID=A7Q;PFQ.SEMRESATTRS_K8S_DAEMONSET_NAME=Q7Q;PFQ.SEMRESATTRS_K8S_JOB_UID=B7Q;PFQ.SEMRESATTRS_K8S_JOB_NAME=Y7Q;PFQ.SEMRESATTRS_K8S_CRONJOB_UID=J7Q;PFQ.SEMRESATTRS_K8S_CRONJOB_NAME=C7Q;PFQ.SEMRESATTRS_OS_TYPE=X7Q;PFQ.SEMRESATTRS_OS_DESCRIPTION=G7Q;PFQ.SEMRESATTRS_OS_NAME=F7Q;PFQ.SEMRESATTRS_OS_VERSION=W7Q;PFQ.SEMRESATTRS_PROCESS_PID=Z7Q;PFQ.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=$7Q;PFQ.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=U7Q;PFQ.SEMRESATTRS_PROCESS_COMMAND=E7Q;PFQ.SEMRESATTRS_PROCESS_COMMAND_LINE=K7Q;PFQ.SEMRESATTRS_PROCESS_COMMAND_ARGS=V7Q;PFQ.SEMRESATTRS_PROCESS_OWNER=I7Q;PFQ.SEMRESATTRS_PROCESS_RUNTIME_NAME=H7Q;PFQ.SEMRESATTRS_PROCESS_RUNTIME_VERSION=D7Q;PFQ.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=N7Q;PFQ.SEMRESATTRS_SERVICE_NAME=L7Q;PFQ.SEMRESATTRS_SERVICE_NAMESPACE=q7Q;PFQ.SEMRESATTRS_SERVICE_INSTANCE_ID=M7Q;PFQ.SEMRESATTRS_SERVICE_VERSION=z7Q;PFQ.SEMRESATTRS_TELEMETRY_SDK_NAME=R7Q;PFQ.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=w7Q;PFQ.SEMRESATTRS_TELEMETRY_SDK_VERSION=j7Q;PFQ.SEMRESATTRS_TELEMETRY_AUTO_VERSION=O7Q;PFQ.SEMRESATTRS_WEBENGINE_NAME=P7Q;PFQ.SEMRESATTRS_WEBENGINE_VERSION=T7Q;PFQ.SEMRESATTRS_WEBENGINE_DESCRIPTION=S7Q;PFQ.SemanticResourceAttributes=(0,Z$.createConstMap)([JGQ,CGQ,XGQ,GGQ,FGQ,WGQ,ZGQ,$GQ,UGQ,EGQ,KGQ,VGQ,IGQ,HGQ,DGQ,NGQ,LGQ,qGQ,MGQ,zGQ,RGQ,wGQ,jGQ,OGQ,PGQ,TGQ,SGQ,kGQ,_GQ,vGQ,yGQ,hGQ,gGQ,xGQ,fGQ,bGQ,mGQ,uGQ,dGQ,cGQ,lGQ,pGQ,iGQ,nGQ,sGQ,rGQ,aGQ,oGQ,tGQ,eGQ,A7Q,Q7Q,B7Q,Y7Q,J7Q,C7Q,X7Q,G7Q,F7Q,W7Q,Z7Q,$7Q,U7Q,E7Q,K7Q,V7Q,I7Q,H7Q,D7Q,N7Q,L7Q,q7Q,M7Q,z7Q,R7Q,w7Q,j7Q,O7Q,P7Q,T7Q,S7Q]);var k7Q="alibaba_cloud",_7Q="aws",v7Q="azure",y7Q="gcp";PFQ.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=k7Q;PFQ.CLOUDPROVIDERVALUES_AWS=_7Q;PFQ.CLOUDPROVIDERVALUES_AZURE=v7Q;PFQ.CLOUDPROVIDERVALUES_GCP=y7Q;PFQ.CloudProviderValues=(0,Z$.createConstMap)([k7Q,_7Q,v7Q,y7Q]);var h7Q="alibaba_cloud_ecs",g7Q="alibaba_cloud_fc",x7Q="aws_ec2",f7Q="aws_ecs",b7Q="aws_eks",m7Q="aws_lambda",u7Q="aws_elastic_beanstalk",d7Q="azure_vm",c7Q="azure_container_instances",l7Q="azure_aks",p7Q="azure_functions",i7Q="azure_app_service",n7Q="gcp_compute_engine",s7Q="gcp_cloud_run",r7Q="gcp_kubernetes_engine",a7Q="gcp_cloud_functions",o7Q="gcp_app_engine";PFQ.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=h7Q;PFQ.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=g7Q;PFQ.CLOUDPLATFORMVALUES_AWS_EC2=x7Q;PFQ.CLOUDPLATFORMVALUES_AWS_ECS=f7Q;PFQ.CLOUDPLATFORMVALUES_AWS_EKS=b7Q;PFQ.CLOUDPLATFORMVALUES_AWS_LAMBDA=m7Q;PFQ.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=u7Q;PFQ.CLOUDPLATFORMVALUES_AZURE_VM=d7Q;PFQ.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=c7Q;PFQ.CLOUDPLATFORMVALUES_AZURE_AKS=l7Q;PFQ.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=p7Q;PFQ.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=i7Q;PFQ.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=n7Q;PFQ.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=s7Q;PFQ.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=r7Q;PFQ.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=a7Q;PFQ.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=o7Q;PFQ.CloudPlatformValues=(0,Z$.createConstMap)([h7Q,g7Q,x7Q,f7Q,b7Q,m7Q,u7Q,d7Q,c7Q,l7Q,p7Q,i7Q,n7Q,s7Q,r7Q,a7Q,o7Q]);var t7Q="ec2",e7Q="fargate";PFQ.AWSECSLAUNCHTYPEVALUES_EC2=t7Q;PFQ.AWSECSLAUNCHTYPEVALUES_FARGATE=e7Q;PFQ.AwsEcsLaunchtypeValues=(0,Z$.createConstMap)([t7Q,e7Q]);var AFQ="amd64",QFQ="arm32",BFQ="arm64",YFQ="ia64",JFQ="ppc32",CFQ="ppc64",XFQ="x86";PFQ.HOSTARCHVALUES_AMD64=AFQ;PFQ.HOSTARCHVALUES_ARM32=QFQ;PFQ.HOSTARCHVALUES_ARM64=BFQ;PFQ.HOSTARCHVALUES_IA64=YFQ;PFQ.HOSTARCHVALUES_PPC32=JFQ;PFQ.HOSTARCHVALUES_PPC64=CFQ;PFQ.HOSTARCHVALUES_X86=XFQ;PFQ.HostArchValues=(0,Z$.createConstMap)([AFQ,QFQ,BFQ,YFQ,JFQ,CFQ,XFQ]);var GFQ="windows",FFQ="linux",WFQ="darwin",ZFQ="freebsd",$FQ="netbsd",UFQ="openbsd",EFQ="dragonflybsd",KFQ="hpux",VFQ="aix",IFQ="solaris",HFQ="z_os";PFQ.OSTYPEVALUES_WINDOWS=GFQ;PFQ.OSTYPEVALUES_LINUX=FFQ;PFQ.OSTYPEVALUES_DARWIN=WFQ;PFQ.OSTYPEVALUES_FREEBSD=ZFQ;PFQ.OSTYPEVALUES_NETBSD=$FQ;PFQ.OSTYPEVALUES_OPENBSD=UFQ;PFQ.OSTYPEVALUES_DRAGONFLYBSD=EFQ;PFQ.OSTYPEVALUES_HPUX=KFQ;PFQ.OSTYPEVALUES_AIX=VFQ;PFQ.OSTYPEVALUES_SOLARIS=IFQ;PFQ.OSTYPEVALUES_Z_OS=HFQ;PFQ.OsTypeValues=(0,Z$.createConstMap)([GFQ,FFQ,WFQ,ZFQ,$FQ,UFQ,EFQ,KFQ,VFQ,IFQ,HFQ]);var DFQ="cpp",NFQ="dotnet",LFQ="erlang",qFQ="go",MFQ="java",zFQ="nodejs",RFQ="php",wFQ="python",jFQ="ruby",OFQ="webjs";PFQ.TELEMETRYSDKLANGUAGEVALUES_CPP=DFQ;PFQ.TELEMETRYSDKLANGUAGEVALUES_DOTNET=NFQ;PFQ.TELEMETRYSDKLANGUAGEVALUES_ERLANG=LFQ;PFQ.TELEMETRYSDKLANGUAGEVALUES_GO=qFQ;PFQ.TELEMETRYSDKLANGUAGEVALUES_JAVA=MFQ;PFQ.TELEMETRYSDKLANGUAGEVALUES_NODEJS=zFQ;PFQ.TELEMETRYSDKLANGUAGEVALUES_PHP=RFQ;PFQ.TELEMETRYSDKLANGUAGEVALUES_PYTHON=wFQ;PFQ.TELEMETRYSDKLANGUAGEVALUES_RUBY=jFQ;PFQ.TELEMETRYSDKLANGUAGEVALUES_WEBJS=OFQ;PFQ.TelemetrySdkLanguageValues=(0,Z$.createConstMap)([DFQ,NFQ,LFQ,qFQ,MFQ,zFQ,RFQ,wFQ,jFQ,OFQ])});var vFQ=R(($$)=>{var AU0=$$&&$$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),QU0=$$&&$$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))AU0(Q,A,B)};Object.defineProperty($$,"__esModule",{value:!0});QU0(_FQ(),$$)});var fFQ=R((yFQ)=>{Object.defineProperty(yFQ,"__esModule",{value:!0});yFQ.HTTP_REQUEST_METHOD_VALUE_POST=yFQ.HTTP_REQUEST_METHOD_VALUE_PATCH=yFQ.HTTP_REQUEST_METHOD_VALUE_OPTIONS=yFQ.HTTP_REQUEST_METHOD_VALUE_HEAD=yFQ.HTTP_REQUEST_METHOD_VALUE_GET=yFQ.HTTP_REQUEST_METHOD_VALUE_DELETE=yFQ.HTTP_REQUEST_METHOD_VALUE_CONNECT=yFQ.HTTP_REQUEST_METHOD_VALUE_OTHER=yFQ.ATTR_HTTP_REQUEST_METHOD=yFQ.ATTR_HTTP_REQUEST_HEADER=yFQ.ATTR_EXCEPTION_TYPE=yFQ.ATTR_EXCEPTION_STACKTRACE=yFQ.ATTR_EXCEPTION_MESSAGE=yFQ.ATTR_EXCEPTION_ESCAPED=yFQ.ERROR_TYPE_VALUE_OTHER=yFQ.ATTR_ERROR_TYPE=yFQ.ATTR_CLIENT_PORT=yFQ.ATTR_CLIENT_ADDRESS=yFQ.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS=yFQ.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE=yFQ.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS=yFQ.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK=yFQ.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED=yFQ.ATTR_ASPNETCORE_RATE_LIMITING_POLICY=yFQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED=yFQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED=yFQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED=yFQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED=yFQ.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT=yFQ.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE=yFQ.ATTR_TELEMETRY_SDK_VERSION=yFQ.ATTR_TELEMETRY_SDK_NAME=yFQ.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS=yFQ.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT=yFQ.TELEMETRY_SDK_LANGUAGE_VALUE_RUST=yFQ.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY=yFQ.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON=yFQ.TELEMETRY_SDK_LANGUAGE_VALUE_PHP=yFQ.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS=yFQ.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA=yFQ.TELEMETRY_SDK_LANGUAGE_VALUE_GO=yFQ.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG=yFQ.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET=yFQ.TELEMETRY_SDK_LANGUAGE_VALUE_CPP=yFQ.ATTR_TELEMETRY_SDK_LANGUAGE=yFQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED=yFQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER=yFQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER=yFQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED=yFQ.ATTR_ASPNETCORE_RATE_LIMITING_RESULT=void 0;yFQ.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT=yFQ.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE=yFQ.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN=yFQ.ATTR_SIGNALR_CONNECTION_STATUS=yFQ.ATTR_SERVICE_VERSION=yFQ.ATTR_SERVICE_NAME=yFQ.ATTR_SERVER_PORT=yFQ.ATTR_SERVER_ADDRESS=yFQ.ATTR_OTEL_STATUS_DESCRIPTION=yFQ.OTEL_STATUS_CODE_VALUE_OK=yFQ.OTEL_STATUS_CODE_VALUE_ERROR=yFQ.ATTR_OTEL_STATUS_CODE=yFQ.ATTR_OTEL_SCOPE_VERSION=yFQ.ATTR_OTEL_SCOPE_NAME=yFQ.NETWORK_TYPE_VALUE_IPV6=yFQ.NETWORK_TYPE_VALUE_IPV4=yFQ.ATTR_NETWORK_TYPE=yFQ.NETWORK_TRANSPORT_VALUE_UNIX=yFQ.NETWORK_TRANSPORT_VALUE_UDP=yFQ.NETWORK_TRANSPORT_VALUE_TCP=yFQ.NETWORK_TRANSPORT_VALUE_QUIC=yFQ.NETWORK_TRANSPORT_VALUE_PIPE=yFQ.ATTR_NETWORK_TRANSPORT=yFQ.ATTR_NETWORK_PROTOCOL_VERSION=yFQ.ATTR_NETWORK_PROTOCOL_NAME=yFQ.ATTR_NETWORK_PEER_PORT=yFQ.ATTR_NETWORK_PEER_ADDRESS=yFQ.ATTR_NETWORK_LOCAL_PORT=yFQ.ATTR_NETWORK_LOCAL_ADDRESS=yFQ.JVM_THREAD_STATE_VALUE_WAITING=yFQ.JVM_THREAD_STATE_VALUE_TIMED_WAITING=yFQ.JVM_THREAD_STATE_VALUE_TERMINATED=yFQ.JVM_THREAD_STATE_VALUE_RUNNABLE=yFQ.JVM_THREAD_STATE_VALUE_NEW=yFQ.JVM_THREAD_STATE_VALUE_BLOCKED=yFQ.ATTR_JVM_THREAD_STATE=yFQ.ATTR_JVM_THREAD_DAEMON=yFQ.JVM_MEMORY_TYPE_VALUE_NON_HEAP=yFQ.JVM_MEMORY_TYPE_VALUE_HEAP=yFQ.ATTR_JVM_MEMORY_TYPE=yFQ.ATTR_JVM_MEMORY_POOL_NAME=yFQ.ATTR_JVM_GC_NAME=yFQ.ATTR_JVM_GC_ACTION=yFQ.ATTR_HTTP_ROUTE=yFQ.ATTR_HTTP_RESPONSE_STATUS_CODE=yFQ.ATTR_HTTP_RESPONSE_HEADER=yFQ.ATTR_HTTP_REQUEST_RESEND_COUNT=yFQ.ATTR_HTTP_REQUEST_METHOD_ORIGINAL=yFQ.HTTP_REQUEST_METHOD_VALUE_TRACE=yFQ.HTTP_REQUEST_METHOD_VALUE_PUT=void 0;yFQ.ATTR_USER_AGENT_ORIGINAL=yFQ.ATTR_URL_SCHEME=yFQ.ATTR_URL_QUERY=yFQ.ATTR_URL_PATH=yFQ.ATTR_URL_FULL=yFQ.ATTR_URL_FRAGMENT=yFQ.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS=yFQ.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS=yFQ.SIGNALR_TRANSPORT_VALUE_LONG_POLLING=yFQ.ATTR_SIGNALR_TRANSPORT=void 0;yFQ.ATTR_ASPNETCORE_RATE_LIMITING_RESULT="aspnetcore.rate_limiting.result";yFQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED="acquired";yFQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER="endpoint_limiter";yFQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER="global_limiter";yFQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED="request_canceled";yFQ.ATTR_TELEMETRY_SDK_LANGUAGE="telemetry.sdk.language";yFQ.TELEMETRY_SDK_LANGUAGE_VALUE_CPP="cpp";yFQ.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET="dotnet";yFQ.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG="erlang";yFQ.TELEMETRY_SDK_LANGUAGE_VALUE_GO="go";yFQ.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA="java";yFQ.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS="nodejs";yFQ.TELEMETRY_SDK_LANGUAGE_VALUE_PHP="php";yFQ.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON="python";yFQ.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY="ruby";yFQ.TELEMETRY_SDK_LANGUAGE_VALUE_RUST="rust";yFQ.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT="swift";yFQ.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS="webjs";yFQ.ATTR_TELEMETRY_SDK_NAME="telemetry.sdk.name";yFQ.ATTR_TELEMETRY_SDK_VERSION="telemetry.sdk.version";yFQ.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE="aspnetcore.diagnostics.handler.type";yFQ.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT="aspnetcore.diagnostics.exception.result";yFQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED="aborted";yFQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED="handled";yFQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED="skipped";yFQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED="unhandled";yFQ.ATTR_ASPNETCORE_RATE_LIMITING_POLICY="aspnetcore.rate_limiting.policy";yFQ.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED="aspnetcore.request.is_unhandled";yFQ.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK="aspnetcore.routing.is_fallback";yFQ.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS="aspnetcore.routing.match_status";yFQ.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE="failure";yFQ.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS="success";yFQ.ATTR_CLIENT_ADDRESS="client.address";yFQ.ATTR_CLIENT_PORT="client.port";yFQ.ATTR_ERROR_TYPE="error.type";yFQ.ERROR_TYPE_VALUE_OTHER="_OTHER";yFQ.ATTR_EXCEPTION_ESCAPED="exception.escaped";yFQ.ATTR_EXCEPTION_MESSAGE="exception.message";yFQ.ATTR_EXCEPTION_STACKTRACE="exception.stacktrace";yFQ.ATTR_EXCEPTION_TYPE="exception.type";var BU0=(A)=>`http.request.header.${A}`;yFQ.ATTR_HTTP_REQUEST_HEADER=BU0;yFQ.ATTR_HTTP_REQUEST_METHOD="http.request.method";yFQ.HTTP_REQUEST_METHOD_VALUE_OTHER="_OTHER";yFQ.HTTP_REQUEST_METHOD_VALUE_CONNECT="CONNECT";yFQ.HTTP_REQUEST_METHOD_VALUE_DELETE="DELETE";yFQ.HTTP_REQUEST_METHOD_VALUE_GET="GET";yFQ.HTTP_REQUEST_METHOD_VALUE_HEAD="HEAD";yFQ.HTTP_REQUEST_METHOD_VALUE_OPTIONS="OPTIONS";yFQ.HTTP_REQUEST_METHOD_VALUE_PATCH="PATCH";yFQ.HTTP_REQUEST_METHOD_VALUE_POST="POST";yFQ.HTTP_REQUEST_METHOD_VALUE_PUT="PUT";yFQ.HTTP_REQUEST_METHOD_VALUE_TRACE="TRACE";yFQ.ATTR_HTTP_REQUEST_METHOD_ORIGINAL="http.request.method_original";yFQ.ATTR_HTTP_REQUEST_RESEND_COUNT="http.request.resend_count";var YU0=(A)=>`http.response.header.${A}`;yFQ.ATTR_HTTP_RESPONSE_HEADER=YU0;yFQ.ATTR_HTTP_RESPONSE_STATUS_CODE="http.response.status_code";yFQ.ATTR_HTTP_ROUTE="http.route";yFQ.ATTR_JVM_GC_ACTION="jvm.gc.action";yFQ.ATTR_JVM_GC_NAME="jvm.gc.name";yFQ.ATTR_JVM_MEMORY_POOL_NAME="jvm.memory.pool.name";yFQ.ATTR_JVM_MEMORY_TYPE="jvm.memory.type";yFQ.JVM_MEMORY_TYPE_VALUE_HEAP="heap";yFQ.JVM_MEMORY_TYPE_VALUE_NON_HEAP="non_heap";yFQ.ATTR_JVM_THREAD_DAEMON="jvm.thread.daemon";yFQ.ATTR_JVM_THREAD_STATE="jvm.thread.state";yFQ.JVM_THREAD_STATE_VALUE_BLOCKED="blocked";yFQ.JVM_THREAD_STATE_VALUE_NEW="new";yFQ.JVM_THREAD_STATE_VALUE_RUNNABLE="runnable";yFQ.JVM_THREAD_STATE_VALUE_TERMINATED="terminated";yFQ.JVM_THREAD_STATE_VALUE_TIMED_WAITING="timed_waiting";yFQ.JVM_THREAD_STATE_VALUE_WAITING="waiting";yFQ.ATTR_NETWORK_LOCAL_ADDRESS="network.local.address";yFQ.ATTR_NETWORK_LOCAL_PORT="network.local.port";yFQ.ATTR_NETWORK_PEER_ADDRESS="network.peer.address";yFQ.ATTR_NETWORK_PEER_PORT="network.peer.port";yFQ.ATTR_NETWORK_PROTOCOL_NAME="network.protocol.name";yFQ.ATTR_NETWORK_PROTOCOL_VERSION="network.protocol.version";yFQ.ATTR_NETWORK_TRANSPORT="network.transport";yFQ.NETWORK_TRANSPORT_VALUE_PIPE="pipe";yFQ.NETWORK_TRANSPORT_VALUE_QUIC="quic";yFQ.NETWORK_TRANSPORT_VALUE_TCP="tcp";yFQ.NETWORK_TRANSPORT_VALUE_UDP="udp";yFQ.NETWORK_TRANSPORT_VALUE_UNIX="unix";yFQ.ATTR_NETWORK_TYPE="network.type";yFQ.NETWORK_TYPE_VALUE_IPV4="ipv4";yFQ.NETWORK_TYPE_VALUE_IPV6="ipv6";yFQ.ATTR_OTEL_SCOPE_NAME="otel.scope.name";yFQ.ATTR_OTEL_SCOPE_VERSION="otel.scope.version";yFQ.ATTR_OTEL_STATUS_CODE="otel.status_code";yFQ.OTEL_STATUS_CODE_VALUE_ERROR="ERROR";yFQ.OTEL_STATUS_CODE_VALUE_OK="OK";yFQ.ATTR_OTEL_STATUS_DESCRIPTION="otel.status_description";yFQ.ATTR_SERVER_ADDRESS="server.address";yFQ.ATTR_SERVER_PORT="server.port";yFQ.ATTR_SERVICE_NAME="service.name";yFQ.ATTR_SERVICE_VERSION="service.version";yFQ.ATTR_SIGNALR_CONNECTION_STATUS="signalr.connection.status";yFQ.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN="app_shutdown";yFQ.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE="normal_closure";yFQ.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT="timeout";yFQ.ATTR_SIGNALR_TRANSPORT="signalr.transport";yFQ.SIGNALR_TRANSPORT_VALUE_LONG_POLLING="long_polling";yFQ.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS="server_sent_events";yFQ.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS="web_sockets";yFQ.ATTR_URL_FRAGMENT="url.fragment";yFQ.ATTR_URL_FULL="url.full";yFQ.ATTR_URL_PATH="url.path";yFQ.ATTR_URL_QUERY="url.query";yFQ.ATTR_URL_SCHEME="url.scheme";yFQ.ATTR_USER_AGENT_ORIGINAL="user_agent.original"});var uFQ=R((bFQ)=>{Object.defineProperty(bFQ,"__esModule",{value:!0});bFQ.METRIC_SIGNALR_SERVER_CONNECTION_DURATION=bFQ.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS=bFQ.METRIC_KESTREL_UPGRADED_CONNECTIONS=bFQ.METRIC_KESTREL_TLS_HANDSHAKE_DURATION=bFQ.METRIC_KESTREL_REJECTED_CONNECTIONS=bFQ.METRIC_KESTREL_QUEUED_REQUESTS=bFQ.METRIC_KESTREL_QUEUED_CONNECTIONS=bFQ.METRIC_KESTREL_CONNECTION_DURATION=bFQ.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES=bFQ.METRIC_KESTREL_ACTIVE_CONNECTIONS=bFQ.METRIC_JVM_THREAD_COUNT=bFQ.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC=bFQ.METRIC_JVM_MEMORY_USED=bFQ.METRIC_JVM_MEMORY_LIMIT=bFQ.METRIC_JVM_MEMORY_COMMITTED=bFQ.METRIC_JVM_GC_DURATION=bFQ.METRIC_JVM_CPU_TIME=bFQ.METRIC_JVM_CPU_RECENT_UTILIZATION=bFQ.METRIC_JVM_CPU_COUNT=bFQ.METRIC_JVM_CLASS_UNLOADED=bFQ.METRIC_JVM_CLASS_LOADED=bFQ.METRIC_JVM_CLASS_COUNT=bFQ.METRIC_HTTP_SERVER_REQUEST_DURATION=bFQ.METRIC_HTTP_CLIENT_REQUEST_DURATION=bFQ.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS=bFQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS=bFQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION=bFQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE=bFQ.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS=bFQ.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES=bFQ.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS=void 0;bFQ.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS="aspnetcore.diagnostics.exceptions";bFQ.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES="aspnetcore.rate_limiting.active_request_leases";bFQ.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS="aspnetcore.rate_limiting.queued_requests";bFQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE="aspnetcore.rate_limiting.request.time_in_queue";bFQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION="aspnetcore.rate_limiting.request_lease.duration";bFQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS="aspnetcore.rate_limiting.requests";bFQ.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS="aspnetcore.routing.match_attempts";bFQ.METRIC_HTTP_CLIENT_REQUEST_DURATION="http.client.request.duration";bFQ.METRIC_HTTP_SERVER_REQUEST_DURATION="http.server.request.duration";bFQ.METRIC_JVM_CLASS_COUNT="jvm.class.count";bFQ.METRIC_JVM_CLASS_LOADED="jvm.class.loaded";bFQ.METRIC_JVM_CLASS_UNLOADED="jvm.class.unloaded";bFQ.METRIC_JVM_CPU_COUNT="jvm.cpu.count";bFQ.METRIC_JVM_CPU_RECENT_UTILIZATION="jvm.cpu.recent_utilization";bFQ.METRIC_JVM_CPU_TIME="jvm.cpu.time";bFQ.METRIC_JVM_GC_DURATION="jvm.gc.duration";bFQ.METRIC_JVM_MEMORY_COMMITTED="jvm.memory.committed";bFQ.METRIC_JVM_MEMORY_LIMIT="jvm.memory.limit";bFQ.METRIC_JVM_MEMORY_USED="jvm.memory.used";bFQ.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC="jvm.memory.used_after_last_gc";bFQ.METRIC_JVM_THREAD_COUNT="jvm.thread.count";bFQ.METRIC_KESTREL_ACTIVE_CONNECTIONS="kestrel.active_connections";bFQ.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES="kestrel.active_tls_handshakes";bFQ.METRIC_KESTREL_CONNECTION_DURATION="kestrel.connection.duration";bFQ.METRIC_KESTREL_QUEUED_CONNECTIONS="kestrel.queued_connections";bFQ.METRIC_KESTREL_QUEUED_REQUESTS="kestrel.queued_requests";bFQ.METRIC_KESTREL_REJECTED_CONNECTIONS="kestrel.rejected_connections";bFQ.METRIC_KESTREL_TLS_HANDSHAKE_DURATION="kestrel.tls_handshake.duration";bFQ.METRIC_KESTREL_UPGRADED_CONNECTIONS="kestrel.upgraded_connections";bFQ.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS="signalr.server.active_connections";bFQ.METRIC_SIGNALR_SERVER_CONNECTION_DURATION="signalr.server.connection.duration"});var FF=R((G6)=>{var vK0=G6&&G6.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),nO=G6&&G6.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))vK0(Q,A,B)};Object.defineProperty(G6,"__esModule",{value:!0});nO(YGQ(),G6);nO(vFQ(),G6);nO(fFQ(),G6);nO(uFQ(),G6)});var lFQ=R((dFQ)=>{Object.defineProperty(dFQ,"__esModule",{value:!0});dFQ.defaultServiceName=void 0;function yK0(){return`unknown_service:${process.argv0}`}dFQ.defaultServiceName=yK0});var pFQ=R((sp)=>{Object.defineProperty(sp,"__esModule",{value:!0});sp.defaultServiceName=void 0;var hK0=lFQ();Object.defineProperty(sp,"defaultServiceName",{enumerable:!0,get:function(){return hK0.defaultServiceName}})});var ap=R((rp)=>{Object.defineProperty(rp,"__esModule",{value:!0});rp.defaultServiceName=void 0;var xK0=pFQ();Object.defineProperty(rp,"defaultServiceName",{enumerable:!0,get:function(){return xK0.defaultServiceName}})});var YG=R((nFQ)=>{Object.defineProperty(nFQ,"__esModule",{value:!0});nFQ.Resource=void 0;var iFQ=yA(),U$=FF(),op=MB(),bK0=ap();class WF{constructor(A,Q){var B;this._attributes=A,this.asyncAttributesPending=Q!=null,this._syncAttributes=(B=this._attributes)!==null&&B!==void 0?B:{},this._asyncAttributesPromise=Q===null||Q===void 0?void 0:Q.then((Y)=>{return this._attributes=Object.assign({},this._attributes,Y),this.asyncAttributesPending=!1,Y},(Y)=>{return iFQ.diag.debug("a resource's async attributes promise rejected: %s",Y),this.asyncAttributesPending=!1,{}})}static empty(){return WF.EMPTY}static default(){return new WF({[U$.SEMRESATTRS_SERVICE_NAME]:(0,bK0.defaultServiceName)(),[U$.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE]:op.SDK_INFO[U$.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE],[U$.SEMRESATTRS_TELEMETRY_SDK_NAME]:op.SDK_INFO[U$.SEMRESATTRS_TELEMETRY_SDK_NAME],[U$.SEMRESATTRS_TELEMETRY_SDK_VERSION]:op.SDK_INFO[U$.SEMRESATTRS_TELEMETRY_SDK_VERSION]})}get attributes(){var A;if(this.asyncAttributesPending)iFQ.diag.error("Accessing resource attributes before async attributes settled");return(A=this._attributes)!==null&&A!==void 0?A:{}}async waitForAsyncAttributes(){if(this.asyncAttributesPending)await this._asyncAttributesPromise}merge(A){var Q;if(!A)return this;let B=Object.assign(Object.assign({},this._syncAttributes),(Q=A._syncAttributes)!==null&&Q!==void 0?Q:A.attributes);if(!this._asyncAttributesPromise&&!A._asyncAttributesPromise)return new WF(B);let Y=Promise.all([this._asyncAttributesPromise,A._asyncAttributesPromise]).then(([J,C])=>{var X;return Object.assign(Object.assign(Object.assign(Object.assign({},this._syncAttributes),J),(X=A._syncAttributes)!==null&&X!==void 0?X:A.attributes),C)});return new WF(B,Y)}}nFQ.Resource=WF;WF.EMPTY=new WF({})});var tp=R((rFQ)=>{Object.defineProperty(rFQ,"__esModule",{value:!0});rFQ.normalizeType=rFQ.normalizeArch=void 0;var mK0=(A)=>{switch(A){case"arm":return"arm32";case"ppc":return"ppc32";case"x64":return"amd64";default:return A}};rFQ.normalizeArch=mK0;var uK0=(A)=>{switch(A){case"sunos":return"solaris";case"win32":return"windows";default:return A}};rFQ.normalizeType=uK0});var sO=R((oFQ)=>{Object.defineProperty(oFQ,"__esModule",{value:!0});oFQ.execAsync=void 0;var cK0=u("child_process"),lK0=u("util");oFQ.execAsync=lK0.promisify(cK0.exec)});var QWQ=R((eFQ)=>{Object.defineProperty(eFQ,"__esModule",{value:!0});eFQ.getMachineId=void 0;var pK0=sO(),iK0=yA();async function nK0(){try{let Q=(await(0,pK0.execAsync)('ioreg -rd1 -c "IOPlatformExpertDevice"')).stdout.split(` +`).find((Y)=>Y.includes("IOPlatformUUID"));if(!Q)return"";let B=Q.split('" = "');if(B.length===2)return B[1].slice(0,-1)}catch(A){iK0.diag.debug(`error reading machine id: ${A}`)}return""}eFQ.getMachineId=nK0});var JWQ=R((BWQ)=>{Object.defineProperty(BWQ,"__esModule",{value:!0});BWQ.getMachineId=void 0;var sK0=u("fs"),rK0=yA();async function aK0(){let A=["/etc/machine-id","/var/lib/dbus/machine-id"];for(let Q of A)try{return(await sK0.promises.readFile(Q,{encoding:"utf8"})).trim()}catch(B){rK0.diag.debug(`error reading machine id: ${B}`)}return""}BWQ.getMachineId=aK0});var FWQ=R((XWQ)=>{Object.defineProperty(XWQ,"__esModule",{value:!0});XWQ.getMachineId=void 0;var oK0=u("fs"),tK0=sO(),CWQ=yA();async function eK0(){try{return(await oK0.promises.readFile("/etc/hostid",{encoding:"utf8"})).trim()}catch(A){CWQ.diag.debug(`error reading machine id: ${A}`)}try{return(await(0,tK0.execAsync)("kenv -q smbios.system.uuid")).stdout.trim()}catch(A){CWQ.diag.debug(`error reading machine id: ${A}`)}return""}XWQ.getMachineId=eK0});var UWQ=R((ZWQ)=>{Object.defineProperty(ZWQ,"__esModule",{value:!0});ZWQ.getMachineId=void 0;var WWQ=u("process"),AV0=sO(),QV0=yA();async function BV0(){let Q="%windir%\\System32\\REG.exe";if(WWQ.arch==="ia32"&&"PROCESSOR_ARCHITEW6432"in WWQ.env)Q="%windir%\\sysnative\\cmd.exe /c "+Q;try{let Y=(await(0,AV0.execAsync)(`${Q} QUERY HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Cryptography /v MachineGuid`)).stdout.split("REG_SZ");if(Y.length===2)return Y[1].trim()}catch(B){QV0.diag.debug(`error reading machine id: ${B}`)}return""}ZWQ.getMachineId=BV0});var VWQ=R((EWQ)=>{Object.defineProperty(EWQ,"__esModule",{value:!0});EWQ.getMachineId=void 0;var YV0=yA();async function JV0(){return YV0.diag.debug("could not read machine-id: unsupported platform"),""}EWQ.getMachineId=JV0});var HWQ=R((IWQ)=>{Object.defineProperty(IWQ,"__esModule",{value:!0});IWQ.getMachineId=void 0;var CV0=u("process"),WK;IWQ.getMachineId=WK;switch(CV0.platform){case"darwin":IWQ.getMachineId=WK=QWQ().getMachineId;break;case"linux":IWQ.getMachineId=WK=JWQ().getMachineId;break;case"freebsd":IWQ.getMachineId=WK=FWQ().getMachineId;break;case"win32":IWQ.getMachineId=WK=UWQ().getMachineId;break;default:IWQ.getMachineId=WK=VWQ().getMachineId}});var Ai=R((LWQ)=>{Object.defineProperty(LWQ,"__esModule",{value:!0});LWQ.hostDetectorSync=void 0;var ep=FF(),XV0=YG(),DWQ=u("os"),GV0=tp(),FV0=HWQ();class NWQ{detect(A){let Q={[ep.SEMRESATTRS_HOST_NAME]:(0,DWQ.hostname)(),[ep.SEMRESATTRS_HOST_ARCH]:(0,GV0.normalizeArch)((0,DWQ.arch)())};return new XV0.Resource(Q,this._getAsyncAttributes())}_getAsyncAttributes(){return(0,FV0.getMachineId)().then((A)=>{let Q={};if(A)Q[ep.SEMRESATTRS_HOST_ID]=A;return Q})}}LWQ.hostDetectorSync=new NWQ});var wWQ=R((zWQ)=>{Object.defineProperty(zWQ,"__esModule",{value:!0});zWQ.hostDetector=void 0;var WV0=Ai();class MWQ{detect(A){return Promise.resolve(WV0.hostDetectorSync.detect(A))}}zWQ.hostDetector=new MWQ});var Qi=R((TWQ)=>{Object.defineProperty(TWQ,"__esModule",{value:!0});TWQ.osDetectorSync=void 0;var jWQ=FF(),ZV0=YG(),OWQ=u("os"),$V0=tp();class PWQ{detect(A){let Q={[jWQ.SEMRESATTRS_OS_TYPE]:(0,$V0.normalizeType)((0,OWQ.platform)()),[jWQ.SEMRESATTRS_OS_VERSION]:(0,OWQ.release)()};return new ZV0.Resource(Q)}}TWQ.osDetectorSync=new PWQ});var yWQ=R((_WQ)=>{Object.defineProperty(_WQ,"__esModule",{value:!0});_WQ.osDetector=void 0;var UV0=Qi();class kWQ{detect(A){return Promise.resolve(UV0.osDetectorSync.detect(A))}}_WQ.osDetector=new kWQ});var Bi=R((gWQ)=>{Object.defineProperty(gWQ,"__esModule",{value:!0});gWQ.processDetectorSync=void 0;var EV0=yA(),JG=FF(),KV0=YG(),VV0=u("os");class hWQ{detect(A){let Q={[JG.SEMRESATTRS_PROCESS_PID]:process.pid,[JG.SEMRESATTRS_PROCESS_EXECUTABLE_NAME]:process.title,[JG.SEMRESATTRS_PROCESS_EXECUTABLE_PATH]:process.execPath,[JG.SEMRESATTRS_PROCESS_COMMAND_ARGS]:[process.argv[0],...process.execArgv,...process.argv.slice(1)],[JG.SEMRESATTRS_PROCESS_RUNTIME_VERSION]:process.versions.node,[JG.SEMRESATTRS_PROCESS_RUNTIME_NAME]:"nodejs",[JG.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION]:"Node.js"};if(process.argv.length>1)Q[JG.SEMRESATTRS_PROCESS_COMMAND]=process.argv[1];try{let B=VV0.userInfo();Q[JG.SEMRESATTRS_PROCESS_OWNER]=B.username}catch(B){EV0.diag.debug(`error obtaining process owner: ${B}`)}return new KV0.Resource(Q)}}gWQ.processDetectorSync=new hWQ});var uWQ=R((bWQ)=>{Object.defineProperty(bWQ,"__esModule",{value:!0});bWQ.processDetector=void 0;var IV0=Bi();class fWQ{detect(A){return Promise.resolve(IV0.processDetectorSync.detect(A))}}bWQ.processDetector=new fWQ});var pWQ=R((cWQ)=>{Object.defineProperty(cWQ,"__esModule",{value:!0});cWQ.serviceInstanceIdDetectorSync=void 0;var HV0=FF(),DV0=YG(),NV0=u("crypto");class dWQ{detect(A){let Q={[HV0.SEMRESATTRS_SERVICE_INSTANCE_ID]:(0,NV0.randomUUID)()};return new DV0.Resource(Q)}}cWQ.serviceInstanceIdDetectorSync=new dWQ});var iWQ=R((CG)=>{Object.defineProperty(CG,"__esModule",{value:!0});CG.serviceInstanceIdDetectorSync=CG.processDetectorSync=CG.processDetector=CG.osDetectorSync=CG.osDetector=CG.hostDetectorSync=CG.hostDetector=void 0;var LV0=wWQ();Object.defineProperty(CG,"hostDetector",{enumerable:!0,get:function(){return LV0.hostDetector}});var qV0=Ai();Object.defineProperty(CG,"hostDetectorSync",{enumerable:!0,get:function(){return qV0.hostDetectorSync}});var MV0=yWQ();Object.defineProperty(CG,"osDetector",{enumerable:!0,get:function(){return MV0.osDetector}});var zV0=Qi();Object.defineProperty(CG,"osDetectorSync",{enumerable:!0,get:function(){return zV0.osDetectorSync}});var RV0=uWQ();Object.defineProperty(CG,"processDetector",{enumerable:!0,get:function(){return RV0.processDetector}});var wV0=Bi();Object.defineProperty(CG,"processDetectorSync",{enumerable:!0,get:function(){return wV0.processDetectorSync}});var jV0=pWQ();Object.defineProperty(CG,"serviceInstanceIdDetectorSync",{enumerable:!0,get:function(){return jV0.serviceInstanceIdDetectorSync}})});var nWQ=R((XG)=>{Object.defineProperty(XG,"__esModule",{value:!0});XG.serviceInstanceIdDetectorSync=XG.processDetectorSync=XG.processDetector=XG.osDetectorSync=XG.osDetector=XG.hostDetectorSync=XG.hostDetector=void 0;var K$=iWQ();Object.defineProperty(XG,"hostDetector",{enumerable:!0,get:function(){return K$.hostDetector}});Object.defineProperty(XG,"hostDetectorSync",{enumerable:!0,get:function(){return K$.hostDetectorSync}});Object.defineProperty(XG,"osDetector",{enumerable:!0,get:function(){return K$.osDetector}});Object.defineProperty(XG,"osDetectorSync",{enumerable:!0,get:function(){return K$.osDetectorSync}});Object.defineProperty(XG,"processDetector",{enumerable:!0,get:function(){return K$.processDetector}});Object.defineProperty(XG,"processDetectorSync",{enumerable:!0,get:function(){return K$.processDetectorSync}});Object.defineProperty(XG,"serviceInstanceIdDetectorSync",{enumerable:!0,get:function(){return K$.serviceInstanceIdDetectorSync}})});var Ji=R((rWQ)=>{Object.defineProperty(rWQ,"__esModule",{value:!0});rWQ.browserDetectorSync=void 0;var rO=FF(),TV0=yA(),Yi=YG();class sWQ{detect(A){var Q,B,Y;if(!(typeof navigator<"u"&&((B=(Q=global.process)===null||Q===void 0?void 0:Q.versions)===null||B===void 0?void 0:B.node)===void 0&&((Y=global.Bun)===null||Y===void 0?void 0:Y.version)===void 0))return Yi.Resource.empty();let C={[rO.SEMRESATTRS_PROCESS_RUNTIME_NAME]:"browser",[rO.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION]:"Web Browser",[rO.SEMRESATTRS_PROCESS_RUNTIME_VERSION]:navigator.userAgent};return this._getResourceAttributes(C,A)}_getResourceAttributes(A,Q){if(A[rO.SEMRESATTRS_PROCESS_RUNTIME_VERSION]==="")return TV0.diag.debug("BrowserDetector failed: Unable to find required browser resources. "),Yi.Resource.empty();else return new Yi.Resource(Object.assign({},A))}}rWQ.browserDetectorSync=new sWQ});var AZQ=R((tWQ)=>{Object.defineProperty(tWQ,"__esModule",{value:!0});tWQ.browserDetector=void 0;var SV0=Ji();class oWQ{detect(A){return Promise.resolve(SV0.browserDetectorSync.detect(A))}}tWQ.browserDetector=new oWQ});var Ci=R((BZQ)=>{Object.defineProperty(BZQ,"__esModule",{value:!0});BZQ.envDetectorSync=void 0;var kV0=yA(),_V0=MB(),vV0=FF(),yV0=YG();class QZQ{constructor(){this._MAX_LENGTH=255,this._COMMA_SEPARATOR=",",this._LABEL_KEY_VALUE_SPLITTER="=",this._ERROR_MESSAGE_INVALID_CHARS="should be a ASCII string with a length greater than 0 and not exceed "+this._MAX_LENGTH+" characters.",this._ERROR_MESSAGE_INVALID_VALUE="should be a ASCII string with a length not exceed "+this._MAX_LENGTH+" characters."}detect(A){let Q={},B=(0,_V0.getEnv)(),Y=B.OTEL_RESOURCE_ATTRIBUTES,J=B.OTEL_SERVICE_NAME;if(Y)try{let C=this._parseResourceAttributes(Y);Object.assign(Q,C)}catch(C){kV0.diag.debug(`EnvDetector failed: ${C.message}`)}if(J)Q[vV0.SEMRESATTRS_SERVICE_NAME]=J;return new yV0.Resource(Q)}_parseResourceAttributes(A){if(!A)return{};let Q={},B=A.split(this._COMMA_SEPARATOR,-1);for(let Y of B){let J=Y.split(this._LABEL_KEY_VALUE_SPLITTER,-1);if(J.length!==2)continue;let[C,X]=J;if(C=C.trim(),X=X.trim().split(/^"|"$/).join(""),!this._isValidAndNotEmpty(C))throw Error(`Attribute key ${this._ERROR_MESSAGE_INVALID_CHARS}`);if(!this._isValid(X))throw Error(`Attribute value ${this._ERROR_MESSAGE_INVALID_VALUE}`);Q[C]=decodeURIComponent(X)}return Q}_isValid(A){return A.length<=this._MAX_LENGTH&&this._isBaggageOctetString(A)}_isBaggageOctetString(A){for(let Q=0;Q126)return!1}return!0}_isValidAndNotEmpty(A){return A.length>0&&this._isValid(A)}}BZQ.envDetectorSync=new QZQ});var GZQ=R((CZQ)=>{Object.defineProperty(CZQ,"__esModule",{value:!0});CZQ.envDetector=void 0;var hV0=Ci();class JZQ{detect(A){return Promise.resolve(hV0.envDetectorSync.detect(A))}}CZQ.envDetector=new JZQ});var FZQ=R((v8)=>{Object.defineProperty(v8,"__esModule",{value:!0});v8.envDetectorSync=v8.browserDetectorSync=v8.envDetector=v8.browserDetector=v8.serviceInstanceIdDetectorSync=v8.processDetectorSync=v8.processDetector=v8.osDetectorSync=v8.osDetector=v8.hostDetectorSync=v8.hostDetector=void 0;var V$=nWQ();Object.defineProperty(v8,"hostDetector",{enumerable:!0,get:function(){return V$.hostDetector}});Object.defineProperty(v8,"hostDetectorSync",{enumerable:!0,get:function(){return V$.hostDetectorSync}});Object.defineProperty(v8,"osDetector",{enumerable:!0,get:function(){return V$.osDetector}});Object.defineProperty(v8,"osDetectorSync",{enumerable:!0,get:function(){return V$.osDetectorSync}});Object.defineProperty(v8,"processDetector",{enumerable:!0,get:function(){return V$.processDetector}});Object.defineProperty(v8,"processDetectorSync",{enumerable:!0,get:function(){return V$.processDetectorSync}});Object.defineProperty(v8,"serviceInstanceIdDetectorSync",{enumerable:!0,get:function(){return V$.serviceInstanceIdDetectorSync}});var gV0=AZQ();Object.defineProperty(v8,"browserDetector",{enumerable:!0,get:function(){return gV0.browserDetector}});var xV0=GZQ();Object.defineProperty(v8,"envDetector",{enumerable:!0,get:function(){return xV0.envDetector}});var fV0=Ji();Object.defineProperty(v8,"browserDetectorSync",{enumerable:!0,get:function(){return fV0.browserDetectorSync}});var bV0=Ci();Object.defineProperty(v8,"envDetectorSync",{enumerable:!0,get:function(){return bV0.envDetectorSync}})});var $ZQ=R((WZQ)=>{Object.defineProperty(WZQ,"__esModule",{value:!0});WZQ.isPromiseLike=void 0;var uV0=(A)=>{return A!==null&&typeof A==="object"&&typeof A.then==="function"};WZQ.isPromiseLike=uV0});var VZQ=R((EZQ)=>{Object.defineProperty(EZQ,"__esModule",{value:!0});EZQ.detectResourcesSync=EZQ.detectResources=void 0;var EL=YG(),ZK=yA(),dV0=$ZQ(),cV0=async(A={})=>{let Q=await Promise.all((A.detectors||[]).map(async(B)=>{try{let Y=await B.detect(A);return ZK.diag.debug(`${B.constructor.name} found resource.`,Y),Y}catch(Y){return ZK.diag.debug(`${B.constructor.name} failed: ${Y.message}`),EL.Resource.empty()}}));return UZQ(Q),Q.reduce((B,Y)=>B.merge(Y),EL.Resource.empty())};EZQ.detectResources=cV0;var lV0=(A={})=>{var Q;let B=((Q=A.detectors)!==null&&Q!==void 0?Q:[]).map((J)=>{try{let C=J.detect(A),X;if((0,dV0.isPromiseLike)(C)){let G=async()=>{var F;let W=await C;return await((F=W.waitForAsyncAttributes)===null||F===void 0?void 0:F.call(W)),W.attributes};X=new EL.Resource({},G())}else X=C;if(X.waitForAsyncAttributes)X.waitForAsyncAttributes().then(()=>ZK.diag.debug(`${J.constructor.name} found resource.`,X));else ZK.diag.debug(`${J.constructor.name} found resource.`,X);return X}catch(C){return ZK.diag.error(`${J.constructor.name} failed: ${C.message}`),EL.Resource.empty()}}),Y=B.reduce((J,C)=>J.merge(C),EL.Resource.empty());if(Y.waitForAsyncAttributes)Y.waitForAsyncAttributes().then(()=>{UZQ(B)});return Y};EZQ.detectResourcesSync=lV0;var UZQ=(A)=>{A.forEach((Q)=>{if(Object.keys(Q.attributes).length>0){let B=JSON.stringify(Q.attributes,null,4);ZK.diag.verbose(B)}})}});var Xi=R((WJ)=>{Object.defineProperty(WJ,"__esModule",{value:!0});WJ.detectResources=WJ.detectResourcesSync=WJ.serviceInstanceIdDetectorSync=WJ.processDetectorSync=WJ.processDetector=WJ.osDetectorSync=WJ.osDetector=WJ.hostDetectorSync=WJ.hostDetector=WJ.envDetectorSync=WJ.envDetector=WJ.browserDetectorSync=WJ.browserDetector=WJ.defaultServiceName=WJ.Resource=void 0;var iV0=YG();Object.defineProperty(WJ,"Resource",{enumerable:!0,get:function(){return iV0.Resource}});var nV0=ap();Object.defineProperty(WJ,"defaultServiceName",{enumerable:!0,get:function(){return nV0.defaultServiceName}});var A1=FZQ();Object.defineProperty(WJ,"browserDetector",{enumerable:!0,get:function(){return A1.browserDetector}});Object.defineProperty(WJ,"browserDetectorSync",{enumerable:!0,get:function(){return A1.browserDetectorSync}});Object.defineProperty(WJ,"envDetector",{enumerable:!0,get:function(){return A1.envDetector}});Object.defineProperty(WJ,"envDetectorSync",{enumerable:!0,get:function(){return A1.envDetectorSync}});Object.defineProperty(WJ,"hostDetector",{enumerable:!0,get:function(){return A1.hostDetector}});Object.defineProperty(WJ,"hostDetectorSync",{enumerable:!0,get:function(){return A1.hostDetectorSync}});Object.defineProperty(WJ,"osDetector",{enumerable:!0,get:function(){return A1.osDetector}});Object.defineProperty(WJ,"osDetectorSync",{enumerable:!0,get:function(){return A1.osDetectorSync}});Object.defineProperty(WJ,"processDetector",{enumerable:!0,get:function(){return A1.processDetector}});Object.defineProperty(WJ,"processDetectorSync",{enumerable:!0,get:function(){return A1.processDetectorSync}});Object.defineProperty(WJ,"serviceInstanceIdDetectorSync",{enumerable:!0,get:function(){return A1.serviceInstanceIdDetectorSync}});var IZQ=VZQ();Object.defineProperty(WJ,"detectResourcesSync",{enumerable:!0,get:function(){return IZQ.detectResourcesSync}});Object.defineProperty(WJ,"detectResources",{enumerable:!0,get:function(){return IZQ.detectResources}})});var LZQ=R((DZQ)=>{Object.defineProperty(DZQ,"__esModule",{value:!0});DZQ.MultiSpanProcessor=void 0;var rV0=MB();class HZQ{constructor(A){this._spanProcessors=A}forceFlush(){let A=[];for(let Q of this._spanProcessors)A.push(Q.forceFlush());return new Promise((Q)=>{Promise.all(A).then(()=>{Q()}).catch((B)=>{(0,rV0.globalErrorHandler)(B||Error("MultiSpanProcessor: forceFlush failed")),Q()})})}onStart(A,Q){for(let B of this._spanProcessors)B.onStart(A,Q)}onEnd(A){for(let Q of this._spanProcessors)Q.onEnd(A)}shutdown(){let A=[];for(let Q of this._spanProcessors)A.push(Q.shutdown());return new Promise((Q,B)=>{Promise.all(A).then(()=>{Q()},B)})}}DZQ.MultiSpanProcessor=HZQ});var Gi=R((MZQ)=>{Object.defineProperty(MZQ,"__esModule",{value:!0});MZQ.NoopSpanProcessor=void 0;class qZQ{onStart(A,Q){}onEnd(A){}shutdown(){return Promise.resolve()}forceFlush(){return Promise.resolve()}}MZQ.NoopSpanProcessor=qZQ});var TZQ=R((OZQ)=>{Object.defineProperty(OZQ,"__esModule",{value:!0});OZQ.BasicTracerProvider=OZQ.ForceFlushState=void 0;var $K=yA(),EK=MB(),RZQ=Xi(),aV0=ip(),oV0=cp(),wZQ=LZQ(),tV0=Gi(),eV0=pO(),AI0=pp(),UK;(function(A){A[A.resolved=0]="resolved",A[A.timeout=1]="timeout",A[A.error=2]="error",A[A.unresolved=3]="unresolved"})(UK=OZQ.ForceFlushState||(OZQ.ForceFlushState={}));class aO{constructor(A={}){var Q,B;this._registeredSpanProcessors=[],this._tracers=new Map;let Y=(0,EK.merge)({},(0,oV0.loadDefaultConfig)(),(0,AI0.reconfigureLimits)(A));if(this.resource=(Q=Y.resource)!==null&&Q!==void 0?Q:RZQ.Resource.empty(),Y.mergeResourceWithDefaults)this.resource=RZQ.Resource.default().merge(this.resource);if(this._config=Object.assign({},Y,{resource:this.resource}),(B=A.spanProcessors)===null||B===void 0?void 0:B.length)this._registeredSpanProcessors=[...A.spanProcessors],this.activeSpanProcessor=new wZQ.MultiSpanProcessor(this._registeredSpanProcessors);else{let J=this._buildExporterFromEnv();if(J!==void 0){let C=new eV0.BatchSpanProcessor(J);this.activeSpanProcessor=C}else this.activeSpanProcessor=new tV0.NoopSpanProcessor}}getTracer(A,Q,B){let Y=`${A}@${Q||""}:${(B===null||B===void 0?void 0:B.schemaUrl)||""}`;if(!this._tracers.has(Y))this._tracers.set(Y,new aV0.Tracer({name:A,version:Q,schemaUrl:B===null||B===void 0?void 0:B.schemaUrl},this._config,this));return this._tracers.get(Y)}addSpanProcessor(A){if(this._registeredSpanProcessors.length===0)this.activeSpanProcessor.shutdown().catch((Q)=>$K.diag.error("Error while trying to shutdown current span processor",Q));this._registeredSpanProcessors.push(A),this.activeSpanProcessor=new wZQ.MultiSpanProcessor(this._registeredSpanProcessors)}getActiveSpanProcessor(){return this.activeSpanProcessor}register(A={}){if($K.trace.setGlobalTracerProvider(this),A.propagator===void 0)A.propagator=this._buildPropagatorFromEnv();if(A.contextManager)$K.context.setGlobalContextManager(A.contextManager);if(A.propagator)$K.propagation.setGlobalPropagator(A.propagator)}forceFlush(){let A=this._config.forceFlushTimeoutMillis,Q=this._registeredSpanProcessors.map((B)=>{return new Promise((Y)=>{let J,C=setTimeout(()=>{Y(Error(`Span processor did not completed within timeout period of ${A} ms`)),J=UK.timeout},A);B.forceFlush().then(()=>{if(clearTimeout(C),J!==UK.timeout)J=UK.resolved,Y(J)}).catch((X)=>{clearTimeout(C),J=UK.error,Y(X)})})});return new Promise((B,Y)=>{Promise.all(Q).then((J)=>{let C=J.filter((X)=>X!==UK.resolved);if(C.length>0)Y(C);else B()}).catch((J)=>Y([J]))})}shutdown(){return this.activeSpanProcessor.shutdown()}_getPropagator(A){var Q;return(Q=this.constructor._registeredPropagators.get(A))===null||Q===void 0?void 0:Q()}_getSpanExporter(A){var Q;return(Q=this.constructor._registeredExporters.get(A))===null||Q===void 0?void 0:Q()}_buildPropagatorFromEnv(){let A=Array.from(new Set((0,EK.getEnv)().OTEL_PROPAGATORS)),B=A.map((Y)=>{let J=this._getPropagator(Y);if(!J)$K.diag.warn(`Propagator "${Y}" requested through environment variable is unavailable.`);return J}).reduce((Y,J)=>{if(J)Y.push(J);return Y},[]);if(B.length===0)return;else if(A.length===1)return B[0];else return new EK.CompositePropagator({propagators:B})}_buildExporterFromEnv(){let A=(0,EK.getEnv)().OTEL_TRACES_EXPORTER;if(A==="none"||A==="")return;let Q=this._getSpanExporter(A);if(!Q)$K.diag.error(`Exporter "${A}" requested through environment variable is unavailable.`);return Q}}OZQ.BasicTracerProvider=aO;aO._registeredPropagators=new Map([["tracecontext",()=>new EK.W3CTraceContextPropagator],["baggage",()=>new EK.W3CBaggagePropagator]]);aO._registeredExporters=new Map});var vZQ=R((kZQ)=>{Object.defineProperty(kZQ,"__esModule",{value:!0});kZQ.ConsoleSpanExporter=void 0;var Fi=MB();class SZQ{export(A,Q){return this._sendSpans(A,Q)}shutdown(){return this._sendSpans([]),this.forceFlush()}forceFlush(){return Promise.resolve()}_exportInfo(A){var Q;return{resource:{attributes:A.resource.attributes},instrumentationScope:A.instrumentationLibrary,traceId:A.spanContext().traceId,parentId:A.parentSpanId,traceState:(Q=A.spanContext().traceState)===null||Q===void 0?void 0:Q.serialize(),name:A.name,id:A.spanContext().spanId,kind:A.kind,timestamp:(0,Fi.hrTimeToMicroseconds)(A.startTime),duration:(0,Fi.hrTimeToMicroseconds)(A.duration),attributes:A.attributes,status:A.status,events:A.events,links:A.links}}_sendSpans(A,Q){for(let B of A)console.dir(this._exportInfo(B),{depth:3});if(Q)return Q({code:Fi.ExportResultCode.SUCCESS})}}kZQ.ConsoleSpanExporter=SZQ});var fZQ=R((gZQ)=>{Object.defineProperty(gZQ,"__esModule",{value:!0});gZQ.InMemorySpanExporter=void 0;var yZQ=MB();class hZQ{constructor(){this._finishedSpans=[],this._stopped=!1}export(A,Q){if(this._stopped)return Q({code:yZQ.ExportResultCode.FAILED,error:Error("Exporter has been stopped")});this._finishedSpans.push(...A),setTimeout(()=>Q({code:yZQ.ExportResultCode.SUCCESS}),0)}shutdown(){return this._stopped=!0,this._finishedSpans=[],this.forceFlush()}forceFlush(){return Promise.resolve()}reset(){this._finishedSpans=[]}getFinishedSpans(){return this._finishedSpans}}gZQ.InMemorySpanExporter=hZQ});var dZQ=R((mZQ)=>{Object.defineProperty(mZQ,"__esModule",{value:!0});mZQ.SimpleSpanProcessor=void 0;var QI0=yA(),KK=MB();class bZQ{constructor(A){this._exporter=A,this._shutdownOnce=new KK.BindOnceFuture(this._shutdown,this),this._unresolvedExports=new Set}async forceFlush(){if(await Promise.all(Array.from(this._unresolvedExports)),this._exporter.forceFlush)await this._exporter.forceFlush()}onStart(A,Q){}onEnd(A){var Q,B;if(this._shutdownOnce.isCalled)return;if((A.spanContext().traceFlags&QI0.TraceFlags.SAMPLED)===0)return;let Y=()=>KK.internal._export(this._exporter,[A]).then((J)=>{var C;if(J.code!==KK.ExportResultCode.SUCCESS)(0,KK.globalErrorHandler)((C=J.error)!==null&&C!==void 0?C:Error(`SimpleSpanProcessor: span export failed (status ${J})`))}).catch((J)=>{(0,KK.globalErrorHandler)(J)});if(A.resource.asyncAttributesPending){let J=(B=(Q=A.resource).waitForAsyncAttributes)===null||B===void 0?void 0:B.call(Q).then(()=>{if(J!=null)this._unresolvedExports.delete(J);return Y()},(C)=>(0,KK.globalErrorHandler)(C));if(J!=null)this._unresolvedExports.add(J)}else Y()}shutdown(){return this._shutdownOnce.call()}_shutdown(){return this._exporter.shutdown()}}mZQ.SimpleSpanProcessor=bZQ});var Wi=R((ZJ)=>{Object.defineProperty(ZJ,"__esModule",{value:!0});ZJ.Span=ZJ.SamplingDecision=ZJ.TraceIdRatioBasedSampler=ZJ.ParentBasedSampler=ZJ.AlwaysOnSampler=ZJ.AlwaysOffSampler=ZJ.NoopSpanProcessor=ZJ.SimpleSpanProcessor=ZJ.InMemorySpanExporter=ZJ.ConsoleSpanExporter=ZJ.RandomIdGenerator=ZJ.BatchSpanProcessor=ZJ.ForceFlushState=ZJ.BasicTracerProvider=ZJ.Tracer=void 0;var BI0=ip();Object.defineProperty(ZJ,"Tracer",{enumerable:!0,get:function(){return BI0.Tracer}});var cZQ=TZQ();Object.defineProperty(ZJ,"BasicTracerProvider",{enumerable:!0,get:function(){return cZQ.BasicTracerProvider}});Object.defineProperty(ZJ,"ForceFlushState",{enumerable:!0,get:function(){return cZQ.ForceFlushState}});var lZQ=pO();Object.defineProperty(ZJ,"BatchSpanProcessor",{enumerable:!0,get:function(){return lZQ.BatchSpanProcessor}});Object.defineProperty(ZJ,"RandomIdGenerator",{enumerable:!0,get:function(){return lZQ.RandomIdGenerator}});var YI0=vZQ();Object.defineProperty(ZJ,"ConsoleSpanExporter",{enumerable:!0,get:function(){return YI0.ConsoleSpanExporter}});var JI0=fZQ();Object.defineProperty(ZJ,"InMemorySpanExporter",{enumerable:!0,get:function(){return JI0.InMemorySpanExporter}});var CI0=dZQ();Object.defineProperty(ZJ,"SimpleSpanProcessor",{enumerable:!0,get:function(){return CI0.SimpleSpanProcessor}});var XI0=Gi();Object.defineProperty(ZJ,"NoopSpanProcessor",{enumerable:!0,get:function(){return XI0.NoopSpanProcessor}});var GI0=fO();Object.defineProperty(ZJ,"AlwaysOffSampler",{enumerable:!0,get:function(){return GI0.AlwaysOffSampler}});var FI0=bO();Object.defineProperty(ZJ,"AlwaysOnSampler",{enumerable:!0,get:function(){return FI0.AlwaysOnSampler}});var WI0=bp();Object.defineProperty(ZJ,"ParentBasedSampler",{enumerable:!0,get:function(){return WI0.ParentBasedSampler}});var ZI0=mp();Object.defineProperty(ZJ,"TraceIdRatioBasedSampler",{enumerable:!0,get:function(){return ZI0.TraceIdRatioBasedSampler}});var $I0=UL();Object.defineProperty(ZJ,"SamplingDecision",{enumerable:!0,get:function(){return $I0.SamplingDecision}});var UI0=gp();Object.defineProperty(ZJ,"Span",{enumerable:!0,get:function(){return UI0.Span}})});var R$Q=R((M$Q)=>{Object.defineProperty(M$Q,"__esModule",{value:!0});M$Q.PACKAGE_NAME=M$Q.PACKAGE_VERSION=void 0;M$Q.PACKAGE_VERSION="0.10.1";M$Q.PACKAGE_NAME="@opentelemetry/instrumentation-undici"});var O$Q=R((w$Q)=>{Object.defineProperty(w$Q,"__esModule",{value:!0});w$Q.SemanticAttributes=void 0;w$Q.SemanticAttributes={HTTP_CONNECTION_STATE:"http.connection.state",ERROR_TYPE:"error.type",HTTP_REQUEST_BODY_SIZE:"http.request.body.size",HTTP_REQUEST_METHOD:"http.request.method",HTTP_REQUEST_METHOD_ORIGINAL:"http.request.method_original",HTTP_REQUEST_RESEND_COUNT:"http.request.resend_count",HTTP_RESPONSE_BODY_SIZE:"http.response.body.size",HTTP_RESPONSE_STATUS_CODE:"http.response.status_code",HTTP_ROUTE:"http.route",NETWORK_PEER_ADDRESS:"network.peer.address",NETWORK_PEER_PORT:"network.peer.port",NETWORK_PROTOCOL_NAME:"network.protocol.name",NETWORK_PROTOCOL_VERSION:"network.protocol.version",SERVER_ADDRESS:"server.address",SERVER_PORT:"server.port",URL_FULL:"url.full",URL_PATH:"url.path",URL_QUERY:"url.query",URL_SCHEME:"url.scheme",USER_AGENT_ORIGINAL:"user_agent.original"}});var _$Q=R((S$Q)=>{Object.defineProperty(S$Q,"__esModule",{value:!0});S$Q.UndiciInstrumentation=void 0;var DL=u("diagnostics_channel"),$H0=u("url"),NL=NB(),y8=yA(),P$Q=R$Q(),_Y=O$Q(),YP=MB();class T$Q extends NL.InstrumentationBase{constructor(A={}){super(P$Q.PACKAGE_NAME,P$Q.PACKAGE_VERSION,A);this._recordFromReq=new WeakMap}init(){return}disable(){super.disable(),this._channelSubs.forEach((A)=>A.unsubscribe()),this._channelSubs.length=0}enable(){if(super.enable(),this._channelSubs=this._channelSubs||[],this._channelSubs.length>0)return;this.subscribeToChannel("undici:request:create",this.onRequestCreated.bind(this)),this.subscribeToChannel("undici:client:sendHeaders",this.onRequestHeaders.bind(this)),this.subscribeToChannel("undici:request:headers",this.onResponseHeaders.bind(this)),this.subscribeToChannel("undici:request:trailers",this.onDone.bind(this)),this.subscribeToChannel("undici:request:error",this.onError.bind(this))}_updateMetricInstruments(){this._httpClientDurationHistogram=this.meter.createHistogram("http.client.request.duration",{description:"Measures the duration of outbound HTTP requests.",unit:"s",valueType:y8.ValueType.DOUBLE,advice:{explicitBucketBoundaries:[0.005,0.01,0.025,0.05,0.075,0.1,0.25,0.5,0.75,1,2.5,5,7.5,10]}})}subscribeToChannel(A,Q){var B;let[Y,J]=process.version.replace("v","").split(".").map((G)=>Number(G)),C=Y>18||Y===18&&J>=19,X;if(C)(B=DL.subscribe)===null||B===void 0||B.call(DL,A,Q),X=()=>{var G;return(G=DL.unsubscribe)===null||G===void 0?void 0:G.call(DL,A,Q)};else{let G=DL.channel(A);G.subscribe(Q),X=()=>G.unsubscribe(Q)}this._channelSubs.push({name:A,unsubscribe:X})}onRequestCreated({request:A}){let Q=this.getConfig(),B=Q.enabled!==!1;if((0,NL.safeExecuteInTheMiddle)(()=>{var z;return!B||A.method==="CONNECT"||((z=Q.ignoreRequestHook)===null||z===void 0?void 0:z.call(Q,A))},(z)=>z&&this._diag.error("caught ignoreRequestHook error: ",z),!0))return;let J=(0,YP.hrTime)(),C;try{C=new $H0.URL(A.path,A.origin)}catch(z){this._diag.warn("could not determine url.full:",z);return}let X=C.protocol.replace(":",""),G=this.getRequestMethod(A.method),F={[_Y.SemanticAttributes.HTTP_REQUEST_METHOD]:G,[_Y.SemanticAttributes.HTTP_REQUEST_METHOD_ORIGINAL]:A.method,[_Y.SemanticAttributes.URL_FULL]:C.toString(),[_Y.SemanticAttributes.URL_PATH]:C.pathname,[_Y.SemanticAttributes.URL_QUERY]:C.search,[_Y.SemanticAttributes.URL_SCHEME]:X},W={https:"443",http:"80"},Z=C.hostname,U=C.port||W[X];if(F[_Y.SemanticAttributes.SERVER_ADDRESS]=Z,U&&!isNaN(Number(U)))F[_Y.SemanticAttributes.SERVER_PORT]=Number(U);let $;if(Array.isArray(A.headers)){let z=A.headers.findIndex((M)=>M.toLowerCase()==="user-agent");if(z>=0)$=A.headers[z+1]}else if(typeof A.headers==="string"){let M=A.headers.split(`\r +`).find((N)=>N.toLowerCase().startsWith("user-agent"));$=M&&M.substring(M.indexOf(":")+1).trim()}if($)F[_Y.SemanticAttributes.USER_AGENT_ORIGINAL]=$;let E=(0,NL.safeExecuteInTheMiddle)(()=>{var z;return(z=Q.startSpanHook)===null||z===void 0?void 0:z.call(Q,A)},(z)=>z&&this._diag.error("caught startSpanHook error: ",z),!0);if(E)Object.entries(E).forEach(([z,M])=>{F[z]=M});let K=y8.context.active(),I=y8.trace.getSpan(K),V;if(Q.requireParentforSpans&&(!I||!y8.trace.isSpanContextValid(I.spanContext())))V=y8.trace.wrapSpanContext(y8.INVALID_SPAN_CONTEXT);else V=this.tracer.startSpan(G==="_OTHER"?"HTTP":G,{kind:y8.SpanKind.CLIENT,attributes:F},K);(0,NL.safeExecuteInTheMiddle)(()=>{var z;return(z=Q.requestHook)===null||z===void 0?void 0:z.call(Q,V,A)},(z)=>z&&this._diag.error("caught requestHook error: ",z),!0);let H=y8.trace.setSpan(y8.context.active(),V),D={};y8.propagation.inject(H,D);let L=Object.entries(D);for(let z=0;zU.toLowerCase())),Z=Array.isArray(A.headers)?A.headers:A.headers.split(`\r -`);Z.forEach((U,$)=>{let E=U.indexOf(":"),K=E!==-1,I=(K?U.substring(0,E):U).toLowerCase(),V=K?U.substring(E+1):Z[$+1];if(W.has(I))F[`http.request.header.${I}`]=V.trim()})}C.setAttributes(F)}onResponseHeaders({request:A,response:Q}){var B,Y;let J=this._recordFromReq.get(A);if(!J)return;let{span:C,attributes:X}=J,G={[_Y.SemanticAttributes.HTTP_RESPONSE_STATUS_CODE]:Q.statusCode},F=this.getConfig();(0,VL.safeExecuteInTheMiddle)(()=>{var Z;return(Z=F.responseHook)===null||Z===void 0?void 0:Z.call(F,C,{request:A,response:Q})},(Z)=>Z&&this._diag.error("caught responseHook error: ",Z),!0);let W=new Set;if((B=F.headersToSpanAttributes)===null||B===void 0?void 0:B.responseHeaders)(Y=F.headersToSpanAttributes)===null||Y===void 0||Y.responseHeaders.forEach((Z)=>W.add(Z.toLowerCase()));for(let Z=0;Z=400?_8.SpanStatusCode.ERROR:_8.SpanStatusCode.UNSET}),J.attributes=Object.assign(X,G)}onDone({request:A}){let Q=this._recordFromReq.get(A);if(!Q)return;let{span:B,attributes:Y,startTime:J}=Q;B.end(),this._recordFromReq.delete(A),this.recordRequestDuration(Y,J)}onError({request:A,error:Q}){let B=this._recordFromReq.get(A);if(!B)return;let{span:Y,attributes:J,startTime:C}=B;Y.recordException(Q),Y.setStatus({code:_8.SpanStatusCode.ERROR,message:Q.message}),Y.end(),this._recordFromReq.delete(A),J[_Y.SemanticAttributes.ERROR_TYPE]=Q.message,this.recordRequestDuration(J,C)}recordRequestDuration(A,Q){let B={};[_Y.SemanticAttributes.HTTP_RESPONSE_STATUS_CODE,_Y.SemanticAttributes.HTTP_REQUEST_METHOD,_Y.SemanticAttributes.SERVER_ADDRESS,_Y.SemanticAttributes.SERVER_PORT,_Y.SemanticAttributes.URL_SCHEME,_Y.SemanticAttributes.ERROR_TYPE].forEach((C)=>{if(C in A)B[C]=A[C]});let J=(0,tO.hrTimeToMilliseconds)((0,tO.hrTimeDuration)(Q,(0,tO.hrTime)()))/1000;this._httpClientDurationHistogram.record(J,B)}getRequestMethod(A){let Q={CONNECT:!0,OPTIONS:!0,HEAD:!0,GET:!0,POST:!0,PUT:!0,PATCH:!0,DELETE:!0,TRACE:!0};if(A.toUpperCase()in Q)return A.toUpperCase();return"_OTHER"}}K$Q.UndiciInstrumentation=E$Q});var D$Q=R((H$Q)=>{Object.defineProperty(H$Q,"__esModule",{value:!0})});var L$Q=R((ZF)=>{var aI0=ZF&&ZF.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),N$Q=ZF&&ZF.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))aI0(Q,A,B)};Object.defineProperty(ZF,"__esModule",{value:!0});N$Q(I$Q(),ZF);N$Q(D$Q(),ZF)});var T$Q=R((O$Q)=>{Object.defineProperty(O$Q,"__esModule",{value:!0});O$Q.PACKAGE_NAME=O$Q.PACKAGE_VERSION=void 0;O$Q.PACKAGE_VERSION="0.19.1";O$Q.PACKAGE_NAME="@opentelemetry/instrumentation-fs"});var _$Q=R((S$Q)=>{Object.defineProperty(S$Q,"__esModule",{value:!0});S$Q.SYNC_FUNCTIONS=S$Q.CALLBACK_FUNCTIONS=S$Q.PROMISE_FUNCTIONS=void 0;S$Q.PROMISE_FUNCTIONS=["access","appendFile","chmod","chown","copyFile","cp","lchown","link","lstat","lutimes","mkdir","mkdtemp","open","opendir","readdir","readFile","readlink","realpath","rename","rm","rmdir","stat","symlink","truncate","unlink","utimes","writeFile"];S$Q.CALLBACK_FUNCTIONS=["access","appendFile","chmod","chown","copyFile","cp","exists","lchown","link","lstat","lutimes","mkdir","mkdtemp","open","opendir","readdir","readFile","readlink","realpath","realpath.native","rename","rm","rmdir","stat","symlink","truncate","unlink","utimes","writeFile"];S$Q.SYNC_FUNCTIONS=["accessSync","appendFileSync","chmodSync","chownSync","copyFileSync","cpSync","existsSync","lchownSync","linkSync","lstatSync","lutimesSync","mkdirSync","mkdtempSync","opendirSync","openSync","readdirSync","readFileSync","readlinkSync","realpathSync","realpathSync.native","renameSync","rmdirSync","rmSync","statSync","symlinkSync","truncateSync","unlinkSync","utimesSync","writeFileSync"]});var h$Q=R((y$Q)=>{Object.defineProperty(y$Q,"__esModule",{value:!0});y$Q.indexFs=y$Q.splitTwoLevels=void 0;function v$Q(A){let Q=A.split(".");if(Q.length>1){if(Q.length!==2)throw Error(`Invalid member function name ${A}`);return Q}else return[A]}y$Q.splitTwoLevels=v$Q;function FH0(A,Q){if(!Q)throw Error(JSON.stringify({member:Q}));let B=v$Q(Q),[Y,J]=B;if(J)return{objectToPatch:A[Y],functionNameToPatch:J};else return{objectToPatch:A,functionNameToPatch:Y}}y$Q.indexFs=FH0});var u$Q=R((b$Q)=>{Object.defineProperty(b$Q,"__esModule",{value:!0});b$Q.FsInstrumentation=void 0;var R0=yA(),X6=MB(),Q1=NB(),x$Q=T$Q(),UF=_$Q(),ZH0=u("util"),BP=h$Q();function YP(A,Q){return Object.assign(A,Q)}class f$Q extends Q1.InstrumentationBase{constructor(A={}){super(x$Q.PACKAGE_NAME,x$Q.PACKAGE_VERSION,A)}init(){return[new Q1.InstrumentationNodeModuleDefinition("fs",["*"],(A)=>{for(let Q of UF.SYNC_FUNCTIONS){let{objectToPatch:B,functionNameToPatch:Y}=(0,BP.indexFs)(A,Q);if((0,Q1.isWrapped)(B[Y]))this._unwrap(B,Y);this._wrap(B,Y,this._patchSyncFunction.bind(this,Q))}for(let Q of UF.CALLBACK_FUNCTIONS){let{objectToPatch:B,functionNameToPatch:Y}=(0,BP.indexFs)(A,Q);if((0,Q1.isWrapped)(B[Y]))this._unwrap(B,Y);if(Q==="exists"){this._wrap(B,Y,this._patchExistsCallbackFunction.bind(this,Q));continue}this._wrap(B,Y,this._patchCallbackFunction.bind(this,Q))}for(let Q of UF.PROMISE_FUNCTIONS){if((0,Q1.isWrapped)(A.promises[Q]))this._unwrap(A.promises,Q);this._wrap(A.promises,Q,this._patchPromiseFunction.bind(this,Q))}return A},(A)=>{if(A===void 0)return;for(let Q of UF.SYNC_FUNCTIONS){let{objectToPatch:B,functionNameToPatch:Y}=(0,BP.indexFs)(A,Q);if((0,Q1.isWrapped)(B[Y]))this._unwrap(B,Y)}for(let Q of UF.CALLBACK_FUNCTIONS){let{objectToPatch:B,functionNameToPatch:Y}=(0,BP.indexFs)(A,Q);if((0,Q1.isWrapped)(B[Y]))this._unwrap(B,Y)}for(let Q of UF.PROMISE_FUNCTIONS)if((0,Q1.isWrapped)(A.promises[Q]))this._unwrap(A.promises,Q)}),new Q1.InstrumentationNodeModuleDefinition("fs/promises",["*"],(A)=>{for(let Q of UF.PROMISE_FUNCTIONS){if((0,Q1.isWrapped)(A[Q]))this._unwrap(A,Q);this._wrap(A,Q,this._patchPromiseFunction.bind(this,Q))}return A},(A)=>{if(A===void 0)return;for(let Q of UF.PROMISE_FUNCTIONS)if((0,Q1.isWrapped)(A[Q]))this._unwrap(A,Q)})]}_patchSyncFunction(A,Q){let B=this;return YP(function(...J){let C=R0.context.active();if(!B._shouldTrace(C))return Q.apply(this,J);if(B._runCreateHook(A,{args:J})===!1)return R0.context.with((0,X6.suppressTracing)(C),Q,this,...J);let X=B.tracer.startSpan(`fs ${A}`);try{let G=R0.context.with((0,X6.suppressTracing)(R0.trace.setSpan(C,X)),Q,this,...J);return B._runEndHook(A,{args:J,span:X}),G}catch(G){throw X.recordException(G),X.setStatus({message:G.message,code:R0.SpanStatusCode.ERROR}),B._runEndHook(A,{args:J,span:X,error:G}),G}finally{X.end()}},Q)}_patchCallbackFunction(A,Q){let B=this;return YP(function(...J){let C=R0.context.active();if(!B._shouldTrace(C))return Q.apply(this,J);if(B._runCreateHook(A,{args:J})===!1)return R0.context.with((0,X6.suppressTracing)(C),Q,this,...J);let X=J.length-1,G=J[X];if(typeof G==="function"){let F=B.tracer.startSpan(`fs ${A}`);J[X]=R0.context.bind(C,function(W){if(W)F.recordException(W),F.setStatus({message:W.message,code:R0.SpanStatusCode.ERROR});return B._runEndHook(A,{args:J,span:F,error:W}),F.end(),G.apply(this,arguments)});try{return R0.context.with((0,X6.suppressTracing)(R0.trace.setSpan(C,F)),Q,this,...J)}catch(W){throw F.recordException(W),F.setStatus({message:W.message,code:R0.SpanStatusCode.ERROR}),B._runEndHook(A,{args:J,span:F,error:W}),F.end(),W}}else return Q.apply(this,J)},Q)}_patchExistsCallbackFunction(A,Q){let B=this,J=YP(function(...X){let G=R0.context.active();if(!B._shouldTrace(G))return Q.apply(this,X);if(B._runCreateHook(A,{args:X})===!1)return R0.context.with((0,X6.suppressTracing)(G),Q,this,...X);let F=X.length-1,W=X[F];if(typeof W==="function"){let Z=B.tracer.startSpan(`fs ${A}`);X[F]=R0.context.bind(G,function(){return B._runEndHook(A,{args:X,span:Z}),Z.end(),W.apply(this,arguments)});try{return R0.context.with((0,X6.suppressTracing)(R0.trace.setSpan(G,Z)),Q,this,...X)}catch(U){throw Z.recordException(U),Z.setStatus({message:U.message,code:R0.SpanStatusCode.ERROR}),B._runEndHook(A,{args:X,span:Z,error:U}),Z.end(),U}}else return Q.apply(this,X)},Q),C=function(X){return new Promise((G)=>J(X,G))};return Object.defineProperty(C,"name",{value:A}),Object.defineProperty(J,ZH0.promisify.custom,{value:C}),J}_patchPromiseFunction(A,Q){let B=this;return YP(async function(...J){let C=R0.context.active();if(!B._shouldTrace(C))return Q.apply(this,J);if(B._runCreateHook(A,{args:J})===!1)return R0.context.with((0,X6.suppressTracing)(C),Q,this,...J);let X=B.tracer.startSpan(`fs ${A}`);try{let G=await R0.context.with((0,X6.suppressTracing)(R0.trace.setSpan(C,X)),Q,this,...J);return B._runEndHook(A,{args:J,span:X}),G}catch(G){throw X.recordException(G),X.setStatus({message:G.message,code:R0.SpanStatusCode.ERROR}),B._runEndHook(A,{args:J,span:X,error:G}),G}finally{X.end()}},Q)}_runCreateHook(...A){let{createHook:Q}=this.getConfig();if(typeof Q==="function")try{return Q(...A)}catch(B){this._diag.error("caught createHook error",B)}return!0}_runEndHook(...A){let{endHook:Q}=this.getConfig();if(typeof Q==="function")try{Q(...A)}catch(B){this._diag.error("caught endHook error",B)}}_shouldTrace(A){if((0,X6.isTracingSuppressed)(A))return!1;let{requireParentSpan:Q}=this.getConfig();if(Q){if(R0.trace.getSpan(A)==null)return!1}return!0}}b$Q.FsInstrumentation=f$Q});var c$Q=R((d$Q)=>{Object.defineProperty(d$Q,"__esModule",{value:!0})});var p$Q=R((EF)=>{var $H0=EF&&EF.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),l$Q=EF&&EF.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))$H0(Q,A,B)};Object.defineProperty(EF,"__esModule",{value:!0});l$Q(u$Q(),EF);l$Q(c$Q(),EF)});var UP=R((K4Q)=>{Object.defineProperty(K4Q,"__esModule",{value:!0});K4Q.ExpressLayerType=void 0;var SD0;(function(A){A.ROUTER="router",A.MIDDLEWARE="middleware",A.REQUEST_HANDLER="request_handler"})(SD0=K4Q.ExpressLayerType||(K4Q.ExpressLayerType={}))});var EP=R((V4Q)=>{Object.defineProperty(V4Q,"__esModule",{value:!0});V4Q.AttributeNames=void 0;var kD0;(function(A){A.EXPRESS_TYPE="express.type",A.EXPRESS_NAME="express.name"})(kD0=V4Q.AttributeNames||(V4Q.AttributeNames={}))});var ki=R((I4Q)=>{Object.defineProperty(I4Q,"__esModule",{value:!0});I4Q._LAYERS_STORE_PROPERTY=I4Q.kLayerPatched=void 0;I4Q.kLayerPatched=Symbol("express-layer-patched");I4Q._LAYERS_STORE_PROPERTY="__ot_middlewares"});var q4Q=R((N4Q)=>{Object.defineProperty(N4Q,"__esModule",{value:!0});N4Q.getLayerPath=N4Q.asErrorAndMessage=N4Q.isLayerIgnored=N4Q.getLayerMetadata=N4Q.getRouterPath=N4Q.storeLayerPath=void 0;var _i=UP(),DK=EP(),vi=ki(),vD0=(A,Q)=>{if(Array.isArray(A[vi._LAYERS_STORE_PROPERTY])===!1)Object.defineProperty(A,vi._LAYERS_STORE_PROPERTY,{enumerable:!1,value:[]});if(Q===void 0)return;A[vi._LAYERS_STORE_PROPERTY].push(Q)};N4Q.storeLayerPath=vD0;var yD0=(A,Q)=>{var B,Y,J,C;let X=(Y=(B=Q.handle)===null||B===void 0?void 0:B.stack)===null||Y===void 0?void 0:Y[0];if((J=X===null||X===void 0?void 0:X.route)===null||J===void 0?void 0:J.path)return`${A}${X.route.path}`;if((C=X===null||X===void 0?void 0:X.handle)===null||C===void 0?void 0:C.stack)return N4Q.getRouterPath(A,X);return A};N4Q.getRouterPath=yD0;var gD0=(A,Q,B)=>{var Y;if(Q.name==="router"){let J=N4Q.getRouterPath("",Q),C=J?J:B||A||"/";return{attributes:{[DK.AttributeNames.EXPRESS_NAME]:C,[DK.AttributeNames.EXPRESS_TYPE]:_i.ExpressLayerType.ROUTER},name:`router - ${C}`}}else if(Q.name==="bound dispatch")return{attributes:{[DK.AttributeNames.EXPRESS_NAME]:(Y=A||B)!==null&&Y!==void 0?Y:"request handler",[DK.AttributeNames.EXPRESS_TYPE]:_i.ExpressLayerType.REQUEST_HANDLER},name:`request handler${Q.path?` - ${A||B}`:""}`};else return{attributes:{[DK.AttributeNames.EXPRESS_NAME]:Q.name,[DK.AttributeNames.EXPRESS_TYPE]:_i.ExpressLayerType.MIDDLEWARE},name:`middleware - ${Q.name}`}};N4Q.getLayerMetadata=gD0;var hD0=(A,Q)=>{if(typeof Q==="string")return Q===A;else if(Q instanceof RegExp)return Q.test(A);else if(typeof Q==="function")return Q(A);else throw TypeError("Pattern is in unsupported datatype")},xD0=(A,Q,B)=>{var Y;if(Array.isArray(B===null||B===void 0?void 0:B.ignoreLayersType)&&((Y=B===null||B===void 0?void 0:B.ignoreLayersType)===null||Y===void 0?void 0:Y.includes(Q)))return!0;if(Array.isArray(B===null||B===void 0?void 0:B.ignoreLayers)===!1)return!1;try{for(let J of B.ignoreLayers)if(hD0(A,J))return!0}catch(J){}return!1};N4Q.isLayerIgnored=xD0;var fD0=(A)=>A instanceof Error?[A,A.message]:[String(A),String(A)];N4Q.asErrorAndMessage=fD0;var bD0=(A)=>{let Q=A[0];if(Array.isArray(Q))return Q.map((B)=>D4Q(B)||"").join(",");return D4Q(Q)};N4Q.getLayerPath=bD0;var D4Q=(A)=>{if(typeof A==="string")return A;if(A instanceof RegExp||typeof A==="number")return A.toString();return}});var R4Q=R((M4Q)=>{Object.defineProperty(M4Q,"__esModule",{value:!0});M4Q.PACKAGE_NAME=M4Q.PACKAGE_VERSION=void 0;M4Q.PACKAGE_VERSION="0.47.1";M4Q.PACKAGE_NAME="@opentelemetry/instrumentation-express"});var _4Q=R((S4Q)=>{Object.defineProperty(S4Q,"__esModule",{value:!0});S4Q.ExpressInstrumentation=void 0;var w4Q=MB(),U$=yA(),j4Q=UP(),O4Q=EP(),KF=q4Q(),P4Q=R4Q(),NK=NB(),pD0=uB(),NL=ki();class T4Q extends NK.InstrumentationBase{constructor(A={}){super(P4Q.PACKAGE_NAME,P4Q.PACKAGE_VERSION,A)}init(){return[new NK.InstrumentationNodeModuleDefinition("express",[">=4.0.0 <5"],(A)=>{let Q=A.Router;if((0,NK.isWrapped)(Q.route))this._unwrap(Q,"route");if(this._wrap(Q,"route",this._getRoutePatch()),(0,NK.isWrapped)(Q.use))this._unwrap(Q,"use");if(this._wrap(Q,"use",this._getRouterUsePatch()),(0,NK.isWrapped)(A.application.use))this._unwrap(A.application,"use");return this._wrap(A.application,"use",this._getAppUsePatch()),A},(A)=>{if(A===void 0)return;let Q=A.Router;this._unwrap(Q,"route"),this._unwrap(Q,"use"),this._unwrap(A.application,"use")})]}_getRoutePatch(){let A=this;return function(Q){return function(...Y){let J=Q.apply(this,Y),C=this.stack[this.stack.length-1];return A._applyPatch(C,(0,KF.getLayerPath)(Y)),J}}}_getRouterUsePatch(){let A=this;return function(Q){return function(...Y){let J=Q.apply(this,Y),C=this.stack[this.stack.length-1];return A._applyPatch(C,(0,KF.getLayerPath)(Y)),J}}}_getAppUsePatch(){let A=this;return function(Q){return function(...Y){let J=Q.apply(this,Y),C=this._router.stack[this._router.stack.length-1];return A._applyPatch(C,(0,KF.getLayerPath)(Y)),J}}}_applyPatch(A,Q){let B=this;if(A[NL.kLayerPatched]===!0)return;A[NL.kLayerPatched]=!0,this._wrap(A,"handle",(Y)=>{if(Y.length===4)return Y;let J=function(C,X){(0,KF.storeLayerPath)(C,Q);let G=C[NL._LAYERS_STORE_PROPERTY].filter((L)=>L!=="/"&&L!=="/*").join("").replace(/\/{2,}/g,"/"),F={[pD0.SEMATTRS_HTTP_ROUTE]:G.length>0?G:"/"},W=(0,KF.getLayerMetadata)(G,A,Q),Z=W.attributes[O4Q.AttributeNames.EXPRESS_TYPE],U=(0,w4Q.getRPCMetadata)(U$.context.active());if((U===null||U===void 0?void 0:U.type)===w4Q.RPCType.HTTP)U.route=G||"/";if((0,KF.isLayerIgnored)(W.name,Z,B.getConfig())){if(Z===j4Q.ExpressLayerType.MIDDLEWARE)C[NL._LAYERS_STORE_PROPERTY].pop();return Y.apply(this,arguments)}if(U$.trace.getSpan(U$.context.active())===void 0)return Y.apply(this,arguments);let $=B._getSpanName({request:C,layerType:Z,route:G},W.name),E=B.tracer.startSpan($,{attributes:Object.assign(F,W.attributes)}),{requestHook:K}=B.getConfig();if(K)(0,NK.safeExecuteInTheMiddle)(()=>K(E,{request:C,layerType:Z,route:G}),(L)=>{if(L)U$.diag.error("express instrumentation: request hook failed",L)},!0);let I=!1;if(W.attributes[O4Q.AttributeNames.EXPRESS_TYPE]!==j4Q.ExpressLayerType.MIDDLEWARE)E.end(),I=!0;let V=()=>{if(I===!1)I=!0,E.end()},H=Array.from(arguments),D=H.findIndex((L)=>typeof L==="function");if(D>=0)arguments[D]=function(){var L;let z=arguments[0],M=![void 0,null,"route","router"].includes(z);if(!I&&M){let[q,w]=(0,KF.asErrorAndMessage)(z);E.recordException(q),E.setStatus({code:U$.SpanStatusCode.ERROR,message:w})}if(I===!1)I=!0,(L=C.res)===null||L===void 0||L.removeListener("finish",V),E.end();if(!(C.route&&M))C[NL._LAYERS_STORE_PROPERTY].pop();return H[D].apply(this,arguments)};try{return Y.apply(this,arguments)}catch(L){let[z,M]=(0,KF.asErrorAndMessage)(L);throw E.recordException(z),E.setStatus({code:U$.SpanStatusCode.ERROR,message:M}),L}finally{if(!I)X.once("finish",V)}};for(let C in Y)Object.defineProperty(J,C,{get(){return Y[C]},set(X){Y[C]=X}});return J})}_getSpanName(A,Q){var B;let{spanNameHook:Y}=this.getConfig();if(!(Y instanceof Function))return Q;try{return(B=Y(A,Q))!==null&&B!==void 0?B:Q}catch(J){return U$.diag.error("express instrumentation: error calling span name rewrite hook",J),Q}}}S4Q.ExpressInstrumentation=T4Q});var y4Q=R((v4Q)=>{Object.defineProperty(v4Q,"__esModule",{value:!0})});var g4Q=R((WX)=>{var iD0=WX&&WX.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),KP=WX&&WX.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))iD0(Q,A,B)};Object.defineProperty(WX,"__esModule",{value:!0});KP(_4Q(),WX);KP(UP(),WX);KP(EP(),WX);KP(y4Q(),WX)});var BUQ=R((UbY,QUQ)=>{var r4Q=Fv();QUQ.exports=YN0;var a4Q="\x00SLASH"+Math.random()+"\x00",o4Q="\x00OPEN"+Math.random()+"\x00",di="\x00CLOSE"+Math.random()+"\x00",t4Q="\x00COMMA"+Math.random()+"\x00",e4Q="\x00PERIOD"+Math.random()+"\x00";function ui(A){return parseInt(A,10)==A?parseInt(A,10):A.charCodeAt(0)}function QN0(A){return A.split("\\\\").join(a4Q).split("\\{").join(o4Q).split("\\}").join(di).split("\\,").join(t4Q).split("\\.").join(e4Q)}function BN0(A){return A.split(a4Q).join("\\").split(o4Q).join("{").split(di).join("}").split(t4Q).join(",").split(e4Q).join(".")}function AUQ(A){if(!A)return[""];var Q=[],B=r4Q("{","}",A);if(!B)return A.split(",");var{pre:Y,body:J,post:C}=B,X=Y.split(",");X[X.length-1]+="{"+J+"}";var G=AUQ(C);if(C.length)X[X.length-1]+=G.shift(),X.push.apply(X,G);return Q.push.apply(Q,X),Q}function YN0(A){if(!A)return[];if(A.substr(0,2)==="{}")A="\\{\\}"+A.substr(2);return LL(QN0(A),!0).map(BN0)}function JN0(A){return"{"+A+"}"}function CN0(A){return/^-?0\d/.test(A)}function XN0(A,Q){return A<=Q}function GN0(A,Q){return A>=Q}function LL(A,Q){var B=[],Y=r4Q("{","}",A);if(!Y)return[A];var J=Y.pre,C=Y.post.length?LL(Y.post,!1):[""];if(/\$$/.test(Y.pre))for(var X=0;X=0;if(!Z&&!U){if(Y.post.match(/,.*\}/))return A=Y.pre+"{"+Y.body+di+Y.post,LL(A);return[A]}var $;if(Z)$=Y.body.split(/\.\./);else if($=AUQ(Y.body),$.length===1){if($=LL($[0],!1).map(JN0),$.length===1)return C.map(function(_){return Y.pre+$[0]+_})}var E;if(Z){var K=ui($[0]),I=ui($[1]),V=Math.max($[0].length,$[1].length),H=$.length==3?Math.abs(ui($[2])):1,D=XN0,L=I0){var w=Array(q+1).join("0");if(M<0)N="-"+w+N.slice(1);else N=w+N}}E.push(N)}}else{E=[];for(var P=0;P<$.length;P++)E.push.apply(E,LL($[P],!1))}for(var P=0;P{Object.defineProperty(YUQ,"__esModule",{value:!0});YUQ.assertValidPattern=void 0;var FN0=65536,WN0=(A)=>{if(typeof A!=="string")throw TypeError("invalid pattern");if(A.length>FN0)throw TypeError("pattern is too long")};YUQ.assertValidPattern=WN0});var WUQ=R((GUQ)=>{Object.defineProperty(GUQ,"__esModule",{value:!0});GUQ.parseClass=void 0;var ZN0={"[:alnum:]":["\\p{L}\\p{Nl}\\p{Nd}",!0],"[:alpha:]":["\\p{L}\\p{Nl}",!0],"[:ascii:]":["\\x00-\\x7f",!1],"[:blank:]":["\\p{Zs}\\t",!0],"[:cntrl:]":["\\p{Cc}",!0],"[:digit:]":["\\p{Nd}",!0],"[:graph:]":["\\p{Z}\\p{C}",!0,!0],"[:lower:]":["\\p{Ll}",!0],"[:print:]":["\\p{C}",!0],"[:punct:]":["\\p{P}",!0],"[:space:]":["\\p{Z}\\t\\r\\n\\v\\f",!0],"[:upper:]":["\\p{Lu}",!0],"[:word:]":["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}",!0],"[:xdigit:]":["A-Fa-f0-9",!1]},qL=(A)=>A.replace(/[[\]\\-]/g,"\\$&"),$N0=(A)=>A.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),XUQ=(A)=>A.join(""),UN0=(A,Q)=>{let B=Q;if(A.charAt(B)!=="[")throw Error("not in a brace expression");let Y=[],J=[],C=B+1,X=!1,G=!1,F=!1,W=!1,Z=B,U="";A:while(CU)Y.push(qL(U)+"-"+qL(I));else if(I===U)Y.push(qL(I));U="",C++;continue}if(A.startsWith("-]",C+1)){Y.push(qL(I+"-")),C+=2;continue}if(A.startsWith("-",C+1)){U=I,C+=2;continue}Y.push(qL(I)),C++}if(Z{Object.defineProperty(ZUQ,"__esModule",{value:!0});ZUQ.unescape=void 0;var EN0=(A,{windowsPathsNoEscape:Q=!1}={})=>{return Q?A.replace(/\[([^\/\\])\]/g,"$1"):A.replace(/((?!\\).|^)\[([^\/\\])\]/g,"$1$2").replace(/\\([^\/])/g,"$1")};ZUQ.unescape=EN0});var li=R((VUQ)=>{Object.defineProperty(VUQ,"__esModule",{value:!0});VUQ.AST=void 0;var KN0=WUQ(),NP=DP(),VN0=new Set(["!","?","+","*","@"]),UUQ=(A)=>VN0.has(A),IN0="(?!(?:^|/)\\.\\.?(?:$|/))",LP="(?!\\.)",HN0=new Set(["[","."]),DN0=new Set(["..","."]),NN0=new Set("().*{}+?[]^$\\!"),LN0=(A)=>A.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),ci="[^/]",EUQ=ci+"*?",KUQ=ci+"+?";class p9{type;#A;#Q;#B=!1;#Y=[];#J;#C;#F;#X=!1;#G;#Z;#U=!1;constructor(A,Q,B={}){if(this.type=A,A)this.#Q=!0;if(this.#J=Q,this.#A=this.#J?this.#J.#A:this,this.#G=this.#A===this?B:this.#A.#G,this.#F=this.#A===this?[]:this.#A.#F,A==="!"&&!this.#A.#X)this.#F.push(this);this.#C=this.#J?this.#J.#Y.length:0}get hasMagic(){if(this.#Q!==void 0)return this.#Q;for(let A of this.#Y){if(typeof A==="string")continue;if(A.type||A.hasMagic)return this.#Q=!0}return this.#Q}toString(){if(this.#Z!==void 0)return this.#Z;if(!this.type)return this.#Z=this.#Y.map((A)=>String(A)).join("");else return this.#Z=this.type+"("+this.#Y.map((A)=>String(A)).join("|")+")"}#W(){if(this!==this.#A)throw Error("should only call on root");if(this.#X)return this;this.toString(),this.#X=!0;let A;while(A=this.#F.pop()){if(A.type!=="!")continue;let Q=A,B=Q.#J;while(B){for(let Y=Q.#C+1;!B.type&&Ytypeof Q==="string"?Q:Q.toJSON()):[this.type,...this.#Y.map((Q)=>Q.toJSON())];if(this.isStart()&&!this.type)A.unshift([]);if(this.isEnd()&&(this===this.#A||this.#A.#X&&this.#J?.type==="!"))A.push({});return A}isStart(){if(this.#A===this)return!0;if(!this.#J?.isStart())return!1;if(this.#C===0)return!0;let A=this.#J;for(let Q=0;Q{let[E,K,I,V]=typeof $==="string"?p9.#I($,this.#Q,G):$.toRegExpSource(A);return this.#Q=this.#Q||I,this.#B=this.#B||V,E}).join(""),W="";if(this.isStart()){if(typeof this.#Y[0]==="string"){if(!(this.#Y.length===1&&DN0.has(this.#Y[0]))){let E=HN0,K=Q&&E.has(F.charAt(0))||F.startsWith("\\.")&&E.has(F.charAt(2))||F.startsWith("\\.\\.")&&E.has(F.charAt(4)),I=!Q&&!A&&E.has(F.charAt(0));W=K?IN0:I?LP:""}}}let Z="";if(this.isEnd()&&this.#A.#X&&this.#J?.type==="!")Z="(?:$|\\/)";return[W+F+Z,(0,NP.unescape)(F),this.#Q=!!this.#Q,this.#B]}let B=this.type==="*"||this.type==="+",Y=this.type==="!"?"(?:(?!(?:":"(?:",J=this.#V(Q);if(this.isStart()&&this.isEnd()&&!J&&this.type!=="!"){let G=this.toString();return this.#Y=[G],this.type=null,this.#Q=void 0,[G,(0,NP.unescape)(this.toString()),!1,!1]}let C=!B||A||Q||!LP?"":this.#V(!0);if(C===J)C="";if(C)J=`(?:${J})(?:${C})*?`;let X="";if(this.type==="!"&&this.#U)X=(this.isStart()&&!Q?LP:"")+KUQ;else{let G=this.type==="!"?"))"+(this.isStart()&&!Q&&!A?LP:"")+EUQ+")":this.type==="@"?")":this.type==="?"?")?":this.type==="+"&&C?")":this.type==="*"&&C?")?":`)${this.type}`;X=Y+J+G}return[X,(0,NP.unescape)(J),this.#Q=!!this.#Q,this.#B]}#V(A){return this.#Y.map((Q)=>{if(typeof Q==="string")throw Error("string type in extglob ast??");let[B,Y,J,C]=Q.toRegExpSource(A);return this.#B=this.#B||C,B}).filter((Q)=>!(this.isStart()&&this.isEnd())||!!Q).join("|")}static#I(A,Q,B=!1){let Y=!1,J="",C=!1;for(let X=0;X{Object.defineProperty(HUQ,"__esModule",{value:!0});HUQ.escape=void 0;var qN0=(A,{windowsPathsNoEscape:Q=!1}={})=>{return Q?A.replace(/[?*()[\]]/g,"[$&]"):A.replace(/[?*()[\]\\]/g,"\\$&")};HUQ.escape=qN0});var wUQ=R((rA)=>{var MN0=rA&&rA.__importDefault||function(A){return A&&A.__esModule?A:{default:A}};Object.defineProperty(rA,"__esModule",{value:!0});rA.unescape=rA.escape=rA.AST=rA.Minimatch=rA.match=rA.makeRe=rA.braceExpand=rA.defaults=rA.filter=rA.GLOBSTAR=rA.sep=rA.minimatch=void 0;var zN0=MN0(BUQ()),qP=CUQ(),qUQ=li(),RN0=pi(),wN0=DP(),jN0=(A,Q,B={})=>{if((0,qP.assertValidPattern)(Q),!B.nocomment&&Q.charAt(0)==="#")return!1;return new LK(Q,B).match(A)};rA.minimatch=jN0;var ON0=/^\*+([^+@!?\*\[\(]*)$/,PN0=(A)=>(Q)=>!Q.startsWith(".")&&Q.endsWith(A),TN0=(A)=>(Q)=>Q.endsWith(A),SN0=(A)=>{return A=A.toLowerCase(),(Q)=>!Q.startsWith(".")&&Q.toLowerCase().endsWith(A)},kN0=(A)=>{return A=A.toLowerCase(),(Q)=>Q.toLowerCase().endsWith(A)},_N0=/^\*+\.\*+$/,vN0=(A)=>!A.startsWith(".")&&A.includes("."),yN0=(A)=>A!=="."&&A!==".."&&A.includes("."),gN0=/^\.\*+$/,hN0=(A)=>A!=="."&&A!==".."&&A.startsWith("."),xN0=/^\*+$/,fN0=(A)=>A.length!==0&&!A.startsWith("."),bN0=(A)=>A.length!==0&&A!=="."&&A!=="..",mN0=/^\?+([^+@!?\*\[\(]*)?$/,uN0=([A,Q=""])=>{let B=MUQ([A]);if(!Q)return B;return Q=Q.toLowerCase(),(Y)=>B(Y)&&Y.toLowerCase().endsWith(Q)},dN0=([A,Q=""])=>{let B=zUQ([A]);if(!Q)return B;return Q=Q.toLowerCase(),(Y)=>B(Y)&&Y.toLowerCase().endsWith(Q)},cN0=([A,Q=""])=>{let B=zUQ([A]);return!Q?B:(Y)=>B(Y)&&Y.endsWith(Q)},lN0=([A,Q=""])=>{let B=MUQ([A]);return!Q?B:(Y)=>B(Y)&&Y.endsWith(Q)},MUQ=([A])=>{let Q=A.length;return(B)=>B.length===Q&&!B.startsWith(".")},zUQ=([A])=>{let Q=A.length;return(B)=>B.length===Q&&B!=="."&&B!==".."},RUQ=typeof process==="object"&&process?typeof process.env==="object"&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:"posix",NUQ={win32:{sep:"\\"},posix:{sep:"/"}};rA.sep=RUQ==="win32"?NUQ.win32.sep:NUQ.posix.sep;rA.minimatch.sep=rA.sep;rA.GLOBSTAR=Symbol("globstar **");rA.minimatch.GLOBSTAR=rA.GLOBSTAR;var pN0="[^/]",iN0=pN0+"*?",nN0="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",sN0="(?:(?!(?:\\/|^)\\.).)*?",rN0=(A,Q={})=>(B)=>(0,rA.minimatch)(B,A,Q);rA.filter=rN0;rA.minimatch.filter=rA.filter;var d5=(A,Q={})=>Object.assign({},A,Q),aN0=(A)=>{if(!A||typeof A!=="object"||!Object.keys(A).length)return rA.minimatch;let Q=rA.minimatch;return Object.assign((Y,J,C={})=>Q(Y,J,d5(A,C)),{Minimatch:class extends Q.Minimatch{constructor(J,C={}){super(J,d5(A,C))}static defaults(J){return Q.defaults(d5(A,J)).Minimatch}},AST:class extends Q.AST{constructor(J,C,X={}){super(J,C,d5(A,X))}static fromGlob(J,C={}){return Q.AST.fromGlob(J,d5(A,C))}},unescape:(Y,J={})=>Q.unescape(Y,d5(A,J)),escape:(Y,J={})=>Q.escape(Y,d5(A,J)),filter:(Y,J={})=>Q.filter(Y,d5(A,J)),defaults:(Y)=>Q.defaults(d5(A,Y)),makeRe:(Y,J={})=>Q.makeRe(Y,d5(A,J)),braceExpand:(Y,J={})=>Q.braceExpand(Y,d5(A,J)),match:(Y,J,C={})=>Q.match(Y,J,d5(A,C)),sep:Q.sep,GLOBSTAR:rA.GLOBSTAR})};rA.defaults=aN0;rA.minimatch.defaults=rA.defaults;var oN0=(A,Q={})=>{if((0,qP.assertValidPattern)(A),Q.nobrace||!/\{(?:(?!\{).)*\}/.test(A))return[A];return(0,zN0.default)(A)};rA.braceExpand=oN0;rA.minimatch.braceExpand=rA.braceExpand;var tN0=(A,Q={})=>new LK(A,Q).makeRe();rA.makeRe=tN0;rA.minimatch.makeRe=rA.makeRe;var eN0=(A,Q,B={})=>{let Y=new LK(Q,B);if(A=A.filter((J)=>Y.match(J)),Y.options.nonull&&!A.length)A.push(Q);return A};rA.match=eN0;rA.minimatch.match=rA.match;var LUQ=/[?*]|[+@!]\(.*?\)|\[|\]/,AL0=(A)=>A.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&");class LK{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;regexp;constructor(A,Q={}){if((0,qP.assertValidPattern)(A),Q=Q||{},this.options=Q,this.pattern=A,this.platform=Q.platform||RUQ,this.isWindows=this.platform==="win32",this.windowsPathsNoEscape=!!Q.windowsPathsNoEscape||Q.allowWindowsEscape===!1,this.windowsPathsNoEscape)this.pattern=this.pattern.replace(/\\/g,"/");this.preserveMultipleSlashes=!!Q.preserveMultipleSlashes,this.regexp=null,this.negate=!1,this.nonegate=!!Q.nonegate,this.comment=!1,this.empty=!1,this.partial=!!Q.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=Q.windowsNoMagicRoot!==void 0?Q.windowsNoMagicRoot:!!(this.isWindows&&this.nocase),this.globSet=[],this.globParts=[],this.set=[],this.make()}hasMagic(){if(this.options.magicalBraces&&this.set.length>1)return!0;for(let A of this.set)for(let Q of A)if(typeof Q!=="string")return!0;return!1}debug(...A){}make(){let A=this.pattern,Q=this.options;if(!Q.nocomment&&A.charAt(0)==="#"){this.comment=!0;return}if(!A){this.empty=!0;return}if(this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],Q.debug)this.debug=(...J)=>console.error(...J);this.debug(this.pattern,this.globSet);let B=this.globSet.map((J)=>this.slashSplit(J));this.globParts=this.preprocess(B),this.debug(this.pattern,this.globParts);let Y=this.globParts.map((J,C,X)=>{if(this.isWindows&&this.windowsNoMagicRoot){let G=J[0]===""&&J[1]===""&&(J[2]==="?"||!LUQ.test(J[2]))&&!LUQ.test(J[3]),F=/^[a-z]:/i.test(J[0]);if(G)return[...J.slice(0,4),...J.slice(4).map((W)=>this.parse(W))];else if(F)return[J[0],...J.slice(1).map((W)=>this.parse(W))]}return J.map((G)=>this.parse(G))});if(this.debug(this.pattern,Y),this.set=Y.filter((J)=>J.indexOf(!1)===-1),this.isWindows)for(let J=0;J=2)A=this.firstPhasePreProcess(A),A=this.secondPhasePreProcess(A);else if(Q>=1)A=this.levelOneOptimize(A);else A=this.adjascentGlobstarOptimize(A);return A}adjascentGlobstarOptimize(A){return A.map((Q)=>{let B=-1;while((B=Q.indexOf("**",B+1))!==-1){let Y=B;while(Q[Y+1]==="**")Y++;if(Y!==B)Q.splice(B,Y-B)}return Q})}levelOneOptimize(A){return A.map((Q)=>{return Q=Q.reduce((B,Y)=>{let J=B[B.length-1];if(Y==="**"&&J==="**")return B;if(Y===".."){if(J&&J!==".."&&J!=="."&&J!=="**")return B.pop(),B}return B.push(Y),B},[]),Q.length===0?[""]:Q})}levelTwoFileOptimize(A){if(!Array.isArray(A))A=this.slashSplit(A);let Q=!1;do{if(Q=!1,!this.preserveMultipleSlashes){for(let Y=1;YY)B.splice(Y+1,C-Y);let X=B[Y+1],G=B[Y+2],F=B[Y+3];if(X!=="..")continue;if(!G||G==="."||G===".."||!F||F==="."||F==="..")continue;Q=!0,B.splice(Y,1);let W=B.slice(0);W[Y]="**",A.push(W),Y--}if(!this.preserveMultipleSlashes){for(let C=1;CQ.length)}partsMatch(A,Q,B=!1){let Y=0,J=0,C=[],X="";while(YD)Q=Q.slice(L);else if(D>L)A=A.slice(D)}}}let{optimizationLevel:J=1}=this.options;if(J>=2)A=this.levelTwoFileOptimize(A);this.debug("matchOne",this,{file:A,pattern:Q}),this.debug("matchOne",A.length,Q.length);for(var C=0,X=0,G=A.length,F=Q.length;C{let E=U.indexOf(":"),K=E!==-1,I=(K?U.substring(0,E):U).toLowerCase(),V=K?U.substring(E+1):Z[$+1];if(W.has(I))F[`http.request.header.${I}`]=V.trim()})}C.setAttributes(F)}onResponseHeaders({request:A,response:Q}){var B,Y;let J=this._recordFromReq.get(A);if(!J)return;let{span:C,attributes:X}=J,G={[_Y.SemanticAttributes.HTTP_RESPONSE_STATUS_CODE]:Q.statusCode},F=this.getConfig();(0,NL.safeExecuteInTheMiddle)(()=>{var Z;return(Z=F.responseHook)===null||Z===void 0?void 0:Z.call(F,C,{request:A,response:Q})},(Z)=>Z&&this._diag.error("caught responseHook error: ",Z),!0);let W=new Set;if((B=F.headersToSpanAttributes)===null||B===void 0?void 0:B.responseHeaders)(Y=F.headersToSpanAttributes)===null||Y===void 0||Y.responseHeaders.forEach((Z)=>W.add(Z.toLowerCase()));for(let Z=0;Z=400?y8.SpanStatusCode.ERROR:y8.SpanStatusCode.UNSET}),J.attributes=Object.assign(X,G)}onDone({request:A}){let Q=this._recordFromReq.get(A);if(!Q)return;let{span:B,attributes:Y,startTime:J}=Q;B.end(),this._recordFromReq.delete(A),this.recordRequestDuration(Y,J)}onError({request:A,error:Q}){let B=this._recordFromReq.get(A);if(!B)return;let{span:Y,attributes:J,startTime:C}=B;Y.recordException(Q),Y.setStatus({code:y8.SpanStatusCode.ERROR,message:Q.message}),Y.end(),this._recordFromReq.delete(A),J[_Y.SemanticAttributes.ERROR_TYPE]=Q.message,this.recordRequestDuration(J,C)}recordRequestDuration(A,Q){let B={};[_Y.SemanticAttributes.HTTP_RESPONSE_STATUS_CODE,_Y.SemanticAttributes.HTTP_REQUEST_METHOD,_Y.SemanticAttributes.SERVER_ADDRESS,_Y.SemanticAttributes.SERVER_PORT,_Y.SemanticAttributes.URL_SCHEME,_Y.SemanticAttributes.ERROR_TYPE].forEach((C)=>{if(C in A)B[C]=A[C]});let J=(0,YP.hrTimeToMilliseconds)((0,YP.hrTimeDuration)(Q,(0,YP.hrTime)()))/1000;this._httpClientDurationHistogram.record(J,B)}getRequestMethod(A){let Q={CONNECT:!0,OPTIONS:!0,HEAD:!0,GET:!0,POST:!0,PUT:!0,PATCH:!0,DELETE:!0,TRACE:!0};if(A.toUpperCase()in Q)return A.toUpperCase();return"_OTHER"}}S$Q.UndiciInstrumentation=T$Q});var y$Q=R((v$Q)=>{Object.defineProperty(v$Q,"__esModule",{value:!0})});var g$Q=R(($F)=>{var UH0=$F&&$F.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),h$Q=$F&&$F.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))UH0(Q,A,B)};Object.defineProperty($F,"__esModule",{value:!0});h$Q(_$Q(),$F);h$Q(y$Q(),$F)});var p$Q=R((c$Q)=>{Object.defineProperty(c$Q,"__esModule",{value:!0});c$Q.PACKAGE_NAME=c$Q.PACKAGE_VERSION=void 0;c$Q.PACKAGE_VERSION="0.19.1";c$Q.PACKAGE_NAME="@opentelemetry/instrumentation-fs"});var s$Q=R((i$Q)=>{Object.defineProperty(i$Q,"__esModule",{value:!0});i$Q.SYNC_FUNCTIONS=i$Q.CALLBACK_FUNCTIONS=i$Q.PROMISE_FUNCTIONS=void 0;i$Q.PROMISE_FUNCTIONS=["access","appendFile","chmod","chown","copyFile","cp","lchown","link","lstat","lutimes","mkdir","mkdtemp","open","opendir","readdir","readFile","readlink","realpath","rename","rm","rmdir","stat","symlink","truncate","unlink","utimes","writeFile"];i$Q.CALLBACK_FUNCTIONS=["access","appendFile","chmod","chown","copyFile","cp","exists","lchown","link","lstat","lutimes","mkdir","mkdtemp","open","opendir","readdir","readFile","readlink","realpath","realpath.native","rename","rm","rmdir","stat","symlink","truncate","unlink","utimes","writeFile"];i$Q.SYNC_FUNCTIONS=["accessSync","appendFileSync","chmodSync","chownSync","copyFileSync","cpSync","existsSync","lchownSync","linkSync","lstatSync","lutimesSync","mkdirSync","mkdtempSync","opendirSync","openSync","readdirSync","readFileSync","readlinkSync","realpathSync","realpathSync.native","renameSync","rmdirSync","rmSync","statSync","symlinkSync","truncateSync","unlinkSync","utimesSync","writeFileSync"]});var t$Q=R((a$Q)=>{Object.defineProperty(a$Q,"__esModule",{value:!0});a$Q.indexFs=a$Q.splitTwoLevels=void 0;function r$Q(A){let Q=A.split(".");if(Q.length>1){if(Q.length!==2)throw Error(`Invalid member function name ${A}`);return Q}else return[A]}a$Q.splitTwoLevels=r$Q;function RH0(A,Q){if(!Q)throw Error(JSON.stringify({member:Q}));let B=r$Q(Q),[Y,J]=B;if(J)return{objectToPatch:A[Y],functionNameToPatch:J};else return{objectToPatch:A,functionNameToPatch:Y}}a$Q.indexFs=RH0});var Y4Q=R((Q4Q)=>{Object.defineProperty(Q4Q,"__esModule",{value:!0});Q4Q.FsInstrumentation=void 0;var w0=yA(),GG=MB(),B1=NB(),e$Q=p$Q(),EF=s$Q(),jH0=u("util"),GP=t$Q();function FP(A,Q){return Object.assign(A,Q)}class A4Q extends B1.InstrumentationBase{constructor(A={}){super(e$Q.PACKAGE_NAME,e$Q.PACKAGE_VERSION,A)}init(){return[new B1.InstrumentationNodeModuleDefinition("fs",["*"],(A)=>{for(let Q of EF.SYNC_FUNCTIONS){let{objectToPatch:B,functionNameToPatch:Y}=(0,GP.indexFs)(A,Q);if((0,B1.isWrapped)(B[Y]))this._unwrap(B,Y);this._wrap(B,Y,this._patchSyncFunction.bind(this,Q))}for(let Q of EF.CALLBACK_FUNCTIONS){let{objectToPatch:B,functionNameToPatch:Y}=(0,GP.indexFs)(A,Q);if((0,B1.isWrapped)(B[Y]))this._unwrap(B,Y);if(Q==="exists"){this._wrap(B,Y,this._patchExistsCallbackFunction.bind(this,Q));continue}this._wrap(B,Y,this._patchCallbackFunction.bind(this,Q))}for(let Q of EF.PROMISE_FUNCTIONS){if((0,B1.isWrapped)(A.promises[Q]))this._unwrap(A.promises,Q);this._wrap(A.promises,Q,this._patchPromiseFunction.bind(this,Q))}return A},(A)=>{if(A===void 0)return;for(let Q of EF.SYNC_FUNCTIONS){let{objectToPatch:B,functionNameToPatch:Y}=(0,GP.indexFs)(A,Q);if((0,B1.isWrapped)(B[Y]))this._unwrap(B,Y)}for(let Q of EF.CALLBACK_FUNCTIONS){let{objectToPatch:B,functionNameToPatch:Y}=(0,GP.indexFs)(A,Q);if((0,B1.isWrapped)(B[Y]))this._unwrap(B,Y)}for(let Q of EF.PROMISE_FUNCTIONS)if((0,B1.isWrapped)(A.promises[Q]))this._unwrap(A.promises,Q)}),new B1.InstrumentationNodeModuleDefinition("fs/promises",["*"],(A)=>{for(let Q of EF.PROMISE_FUNCTIONS){if((0,B1.isWrapped)(A[Q]))this._unwrap(A,Q);this._wrap(A,Q,this._patchPromiseFunction.bind(this,Q))}return A},(A)=>{if(A===void 0)return;for(let Q of EF.PROMISE_FUNCTIONS)if((0,B1.isWrapped)(A[Q]))this._unwrap(A,Q)})]}_patchSyncFunction(A,Q){let B=this;return FP(function(...J){let C=w0.context.active();if(!B._shouldTrace(C))return Q.apply(this,J);if(B._runCreateHook(A,{args:J})===!1)return w0.context.with((0,GG.suppressTracing)(C),Q,this,...J);let X=B.tracer.startSpan(`fs ${A}`);try{let G=w0.context.with((0,GG.suppressTracing)(w0.trace.setSpan(C,X)),Q,this,...J);return B._runEndHook(A,{args:J,span:X}),G}catch(G){throw X.recordException(G),X.setStatus({message:G.message,code:w0.SpanStatusCode.ERROR}),B._runEndHook(A,{args:J,span:X,error:G}),G}finally{X.end()}},Q)}_patchCallbackFunction(A,Q){let B=this;return FP(function(...J){let C=w0.context.active();if(!B._shouldTrace(C))return Q.apply(this,J);if(B._runCreateHook(A,{args:J})===!1)return w0.context.with((0,GG.suppressTracing)(C),Q,this,...J);let X=J.length-1,G=J[X];if(typeof G==="function"){let F=B.tracer.startSpan(`fs ${A}`);J[X]=w0.context.bind(C,function(W){if(W)F.recordException(W),F.setStatus({message:W.message,code:w0.SpanStatusCode.ERROR});return B._runEndHook(A,{args:J,span:F,error:W}),F.end(),G.apply(this,arguments)});try{return w0.context.with((0,GG.suppressTracing)(w0.trace.setSpan(C,F)),Q,this,...J)}catch(W){throw F.recordException(W),F.setStatus({message:W.message,code:w0.SpanStatusCode.ERROR}),B._runEndHook(A,{args:J,span:F,error:W}),F.end(),W}}else return Q.apply(this,J)},Q)}_patchExistsCallbackFunction(A,Q){let B=this,J=FP(function(...X){let G=w0.context.active();if(!B._shouldTrace(G))return Q.apply(this,X);if(B._runCreateHook(A,{args:X})===!1)return w0.context.with((0,GG.suppressTracing)(G),Q,this,...X);let F=X.length-1,W=X[F];if(typeof W==="function"){let Z=B.tracer.startSpan(`fs ${A}`);X[F]=w0.context.bind(G,function(){return B._runEndHook(A,{args:X,span:Z}),Z.end(),W.apply(this,arguments)});try{return w0.context.with((0,GG.suppressTracing)(w0.trace.setSpan(G,Z)),Q,this,...X)}catch(U){throw Z.recordException(U),Z.setStatus({message:U.message,code:w0.SpanStatusCode.ERROR}),B._runEndHook(A,{args:X,span:Z,error:U}),Z.end(),U}}else return Q.apply(this,X)},Q),C=function(X){return new Promise((G)=>J(X,G))};return Object.defineProperty(C,"name",{value:A}),Object.defineProperty(J,jH0.promisify.custom,{value:C}),J}_patchPromiseFunction(A,Q){let B=this;return FP(async function(...J){let C=w0.context.active();if(!B._shouldTrace(C))return Q.apply(this,J);if(B._runCreateHook(A,{args:J})===!1)return w0.context.with((0,GG.suppressTracing)(C),Q,this,...J);let X=B.tracer.startSpan(`fs ${A}`);try{let G=await w0.context.with((0,GG.suppressTracing)(w0.trace.setSpan(C,X)),Q,this,...J);return B._runEndHook(A,{args:J,span:X}),G}catch(G){throw X.recordException(G),X.setStatus({message:G.message,code:w0.SpanStatusCode.ERROR}),B._runEndHook(A,{args:J,span:X,error:G}),G}finally{X.end()}},Q)}_runCreateHook(...A){let{createHook:Q}=this.getConfig();if(typeof Q==="function")try{return Q(...A)}catch(B){this._diag.error("caught createHook error",B)}return!0}_runEndHook(...A){let{endHook:Q}=this.getConfig();if(typeof Q==="function")try{Q(...A)}catch(B){this._diag.error("caught endHook error",B)}}_shouldTrace(A){if((0,GG.isTracingSuppressed)(A))return!1;let{requireParentSpan:Q}=this.getConfig();if(Q){if(w0.trace.getSpan(A)==null)return!1}return!0}}Q4Q.FsInstrumentation=A4Q});var C4Q=R((J4Q)=>{Object.defineProperty(J4Q,"__esModule",{value:!0})});var G4Q=R((KF)=>{var OH0=KF&&KF.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),X4Q=KF&&KF.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))OH0(Q,A,B)};Object.defineProperty(KF,"__esModule",{value:!0});X4Q(Y4Q(),KF);X4Q(C4Q(),KF)});var HP=R((S4Q)=>{Object.defineProperty(S4Q,"__esModule",{value:!0});S4Q.ExpressLayerType=void 0;var iD0;(function(A){A.ROUTER="router",A.MIDDLEWARE="middleware",A.REQUEST_HANDLER="request_handler"})(iD0=S4Q.ExpressLayerType||(S4Q.ExpressLayerType={}))});var DP=R((k4Q)=>{Object.defineProperty(k4Q,"__esModule",{value:!0});k4Q.AttributeNames=void 0;var nD0;(function(A){A.EXPRESS_TYPE="express.type",A.EXPRESS_NAME="express.name"})(nD0=k4Q.AttributeNames||(k4Q.AttributeNames={}))});var ci=R((_4Q)=>{Object.defineProperty(_4Q,"__esModule",{value:!0});_4Q._LAYERS_STORE_PROPERTY=_4Q.kLayerPatched=void 0;_4Q.kLayerPatched=Symbol("express-layer-patched");_4Q._LAYERS_STORE_PROPERTY="__ot_middlewares"});var x4Q=R((h4Q)=>{Object.defineProperty(h4Q,"__esModule",{value:!0});h4Q.getLayerPath=h4Q.asErrorAndMessage=h4Q.isLayerIgnored=h4Q.getLayerMetadata=h4Q.getRouterPath=h4Q.storeLayerPath=void 0;var li=HP(),MK=DP(),pi=ci(),rD0=(A,Q)=>{if(Array.isArray(A[pi._LAYERS_STORE_PROPERTY])===!1)Object.defineProperty(A,pi._LAYERS_STORE_PROPERTY,{enumerable:!1,value:[]});if(Q===void 0)return;A[pi._LAYERS_STORE_PROPERTY].push(Q)};h4Q.storeLayerPath=rD0;var aD0=(A,Q)=>{var B,Y,J,C;let X=(Y=(B=Q.handle)===null||B===void 0?void 0:B.stack)===null||Y===void 0?void 0:Y[0];if((J=X===null||X===void 0?void 0:X.route)===null||J===void 0?void 0:J.path)return`${A}${X.route.path}`;if((C=X===null||X===void 0?void 0:X.handle)===null||C===void 0?void 0:C.stack)return h4Q.getRouterPath(A,X);return A};h4Q.getRouterPath=aD0;var oD0=(A,Q,B)=>{var Y;if(Q.name==="router"){let J=h4Q.getRouterPath("",Q),C=J?J:B||A||"/";return{attributes:{[MK.AttributeNames.EXPRESS_NAME]:C,[MK.AttributeNames.EXPRESS_TYPE]:li.ExpressLayerType.ROUTER},name:`router - ${C}`}}else if(Q.name==="bound dispatch")return{attributes:{[MK.AttributeNames.EXPRESS_NAME]:(Y=A||B)!==null&&Y!==void 0?Y:"request handler",[MK.AttributeNames.EXPRESS_TYPE]:li.ExpressLayerType.REQUEST_HANDLER},name:`request handler${Q.path?` - ${A||B}`:""}`};else return{attributes:{[MK.AttributeNames.EXPRESS_NAME]:Q.name,[MK.AttributeNames.EXPRESS_TYPE]:li.ExpressLayerType.MIDDLEWARE},name:`middleware - ${Q.name}`}};h4Q.getLayerMetadata=oD0;var tD0=(A,Q)=>{if(typeof Q==="string")return Q===A;else if(Q instanceof RegExp)return Q.test(A);else if(typeof Q==="function")return Q(A);else throw TypeError("Pattern is in unsupported datatype")},eD0=(A,Q,B)=>{var Y;if(Array.isArray(B===null||B===void 0?void 0:B.ignoreLayersType)&&((Y=B===null||B===void 0?void 0:B.ignoreLayersType)===null||Y===void 0?void 0:Y.includes(Q)))return!0;if(Array.isArray(B===null||B===void 0?void 0:B.ignoreLayers)===!1)return!1;try{for(let J of B.ignoreLayers)if(tD0(A,J))return!0}catch(J){}return!1};h4Q.isLayerIgnored=eD0;var AN0=(A)=>A instanceof Error?[A,A.message]:[String(A),String(A)];h4Q.asErrorAndMessage=AN0;var QN0=(A)=>{let Q=A[0];if(Array.isArray(Q))return Q.map((B)=>y4Q(B)||"").join(",");return y4Q(Q)};h4Q.getLayerPath=QN0;var y4Q=(A)=>{if(typeof A==="string")return A;if(A instanceof RegExp||typeof A==="number")return A.toString();return}});var m4Q=R((f4Q)=>{Object.defineProperty(f4Q,"__esModule",{value:!0});f4Q.PACKAGE_NAME=f4Q.PACKAGE_VERSION=void 0;f4Q.PACKAGE_VERSION="0.47.1";f4Q.PACKAGE_NAME="@opentelemetry/instrumentation-express"});var s4Q=R((i4Q)=>{Object.defineProperty(i4Q,"__esModule",{value:!0});i4Q.ExpressInstrumentation=void 0;var u4Q=MB(),I$=yA(),d4Q=HP(),c4Q=DP(),VF=x4Q(),l4Q=m4Q(),zK=NB(),GN0=uB(),zL=ci();class p4Q extends zK.InstrumentationBase{constructor(A={}){super(l4Q.PACKAGE_NAME,l4Q.PACKAGE_VERSION,A)}init(){return[new zK.InstrumentationNodeModuleDefinition("express",[">=4.0.0 <5"],(A)=>{let Q=A.Router;if((0,zK.isWrapped)(Q.route))this._unwrap(Q,"route");if(this._wrap(Q,"route",this._getRoutePatch()),(0,zK.isWrapped)(Q.use))this._unwrap(Q,"use");if(this._wrap(Q,"use",this._getRouterUsePatch()),(0,zK.isWrapped)(A.application.use))this._unwrap(A.application,"use");return this._wrap(A.application,"use",this._getAppUsePatch()),A},(A)=>{if(A===void 0)return;let Q=A.Router;this._unwrap(Q,"route"),this._unwrap(Q,"use"),this._unwrap(A.application,"use")})]}_getRoutePatch(){let A=this;return function(Q){return function(...Y){let J=Q.apply(this,Y),C=this.stack[this.stack.length-1];return A._applyPatch(C,(0,VF.getLayerPath)(Y)),J}}}_getRouterUsePatch(){let A=this;return function(Q){return function(...Y){let J=Q.apply(this,Y),C=this.stack[this.stack.length-1];return A._applyPatch(C,(0,VF.getLayerPath)(Y)),J}}}_getAppUsePatch(){let A=this;return function(Q){return function(...Y){let J=Q.apply(this,Y),C=this._router.stack[this._router.stack.length-1];return A._applyPatch(C,(0,VF.getLayerPath)(Y)),J}}}_applyPatch(A,Q){let B=this;if(A[zL.kLayerPatched]===!0)return;A[zL.kLayerPatched]=!0,this._wrap(A,"handle",(Y)=>{if(Y.length===4)return Y;let J=function(C,X){(0,VF.storeLayerPath)(C,Q);let G=C[zL._LAYERS_STORE_PROPERTY].filter((L)=>L!=="/"&&L!=="/*").join("").replace(/\/{2,}/g,"/"),F={[GN0.SEMATTRS_HTTP_ROUTE]:G.length>0?G:"/"},W=(0,VF.getLayerMetadata)(G,A,Q),Z=W.attributes[c4Q.AttributeNames.EXPRESS_TYPE],U=(0,u4Q.getRPCMetadata)(I$.context.active());if((U===null||U===void 0?void 0:U.type)===u4Q.RPCType.HTTP)U.route=G||"/";if((0,VF.isLayerIgnored)(W.name,Z,B.getConfig())){if(Z===d4Q.ExpressLayerType.MIDDLEWARE)C[zL._LAYERS_STORE_PROPERTY].pop();return Y.apply(this,arguments)}if(I$.trace.getSpan(I$.context.active())===void 0)return Y.apply(this,arguments);let $=B._getSpanName({request:C,layerType:Z,route:G},W.name),E=B.tracer.startSpan($,{attributes:Object.assign(F,W.attributes)}),{requestHook:K}=B.getConfig();if(K)(0,zK.safeExecuteInTheMiddle)(()=>K(E,{request:C,layerType:Z,route:G}),(L)=>{if(L)I$.diag.error("express instrumentation: request hook failed",L)},!0);let I=!1;if(W.attributes[c4Q.AttributeNames.EXPRESS_TYPE]!==d4Q.ExpressLayerType.MIDDLEWARE)E.end(),I=!0;let V=()=>{if(I===!1)I=!0,E.end()},H=Array.from(arguments),D=H.findIndex((L)=>typeof L==="function");if(D>=0)arguments[D]=function(){var L;let z=arguments[0],M=![void 0,null,"route","router"].includes(z);if(!I&&M){let[q,w]=(0,VF.asErrorAndMessage)(z);E.recordException(q),E.setStatus({code:I$.SpanStatusCode.ERROR,message:w})}if(I===!1)I=!0,(L=C.res)===null||L===void 0||L.removeListener("finish",V),E.end();if(!(C.route&&M))C[zL._LAYERS_STORE_PROPERTY].pop();return H[D].apply(this,arguments)};try{return Y.apply(this,arguments)}catch(L){let[z,M]=(0,VF.asErrorAndMessage)(L);throw E.recordException(z),E.setStatus({code:I$.SpanStatusCode.ERROR,message:M}),L}finally{if(!I)X.once("finish",V)}};for(let C in Y)Object.defineProperty(J,C,{get(){return Y[C]},set(X){Y[C]=X}});return J})}_getSpanName(A,Q){var B;let{spanNameHook:Y}=this.getConfig();if(!(Y instanceof Function))return Q;try{return(B=Y(A,Q))!==null&&B!==void 0?B:Q}catch(J){return I$.diag.error("express instrumentation: error calling span name rewrite hook",J),Q}}}i4Q.ExpressInstrumentation=p4Q});var a4Q=R((r4Q)=>{Object.defineProperty(r4Q,"__esModule",{value:!0})});var o4Q=R((Z6)=>{var FN0=Z6&&Z6.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),NP=Z6&&Z6.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))FN0(Q,A,B)};Object.defineProperty(Z6,"__esModule",{value:!0});NP(s4Q(),Z6);NP(HP(),Z6);NP(DP(),Z6);NP(a4Q(),Z6)});var DUQ=R((obY,HUQ)=>{var $UQ=Iy();HUQ.exports=NN0;var UUQ="\x00SLASH"+Math.random()+"\x00",EUQ="\x00OPEN"+Math.random()+"\x00",An="\x00CLOSE"+Math.random()+"\x00",KUQ="\x00COMMA"+Math.random()+"\x00",VUQ="\x00PERIOD"+Math.random()+"\x00";function ei(A){return parseInt(A,10)==A?parseInt(A,10):A.charCodeAt(0)}function HN0(A){return A.split("\\\\").join(UUQ).split("\\{").join(EUQ).split("\\}").join(An).split("\\,").join(KUQ).split("\\.").join(VUQ)}function DN0(A){return A.split(UUQ).join("\\").split(EUQ).join("{").split(An).join("}").split(KUQ).join(",").split(VUQ).join(".")}function IUQ(A){if(!A)return[""];var Q=[],B=$UQ("{","}",A);if(!B)return A.split(",");var{pre:Y,body:J,post:C}=B,X=Y.split(",");X[X.length-1]+="{"+J+"}";var G=IUQ(C);if(C.length)X[X.length-1]+=G.shift(),X.push.apply(X,G);return Q.push.apply(Q,X),Q}function NN0(A){if(!A)return[];if(A.substr(0,2)==="{}")A="\\{\\}"+A.substr(2);return RL(HN0(A),!0).map(DN0)}function LN0(A){return"{"+A+"}"}function qN0(A){return/^-?0\d/.test(A)}function MN0(A,Q){return A<=Q}function zN0(A,Q){return A>=Q}function RL(A,Q){var B=[],Y=$UQ("{","}",A);if(!Y)return[A];var J=Y.pre,C=Y.post.length?RL(Y.post,!1):[""];if(/\$$/.test(Y.pre))for(var X=0;X=0;if(!Z&&!U){if(Y.post.match(/,.*\}/))return A=Y.pre+"{"+Y.body+An+Y.post,RL(A);return[A]}var $;if(Z)$=Y.body.split(/\.\./);else if($=IUQ(Y.body),$.length===1){if($=RL($[0],!1).map(LN0),$.length===1)return C.map(function(_){return Y.pre+$[0]+_})}var E;if(Z){var K=ei($[0]),I=ei($[1]),V=Math.max($[0].length,$[1].length),H=$.length==3?Math.abs(ei($[2])):1,D=MN0,L=I0){var w=Array(q+1).join("0");if(M<0)N="-"+w+N.slice(1);else N=w+N}}E.push(N)}}else{E=[];for(var P=0;P<$.length;P++)E.push.apply(E,RL($[P],!1))}for(var P=0;P{Object.defineProperty(NUQ,"__esModule",{value:!0});NUQ.assertValidPattern=void 0;var RN0=65536,wN0=(A)=>{if(typeof A!=="string")throw TypeError("invalid pattern");if(A.length>RN0)throw TypeError("pattern is too long")};NUQ.assertValidPattern=wN0});var wUQ=R((zUQ)=>{Object.defineProperty(zUQ,"__esModule",{value:!0});zUQ.parseClass=void 0;var jN0={"[:alnum:]":["\\p{L}\\p{Nl}\\p{Nd}",!0],"[:alpha:]":["\\p{L}\\p{Nl}",!0],"[:ascii:]":["\\x00-\\x7f",!1],"[:blank:]":["\\p{Zs}\\t",!0],"[:cntrl:]":["\\p{Cc}",!0],"[:digit:]":["\\p{Nd}",!0],"[:graph:]":["\\p{Z}\\p{C}",!0,!0],"[:lower:]":["\\p{Ll}",!0],"[:print:]":["\\p{C}",!0],"[:punct:]":["\\p{P}",!0],"[:space:]":["\\p{Z}\\t\\r\\n\\v\\f",!0],"[:upper:]":["\\p{Lu}",!0],"[:word:]":["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}",!0],"[:xdigit:]":["A-Fa-f0-9",!1]},wL=(A)=>A.replace(/[[\]\\-]/g,"\\$&"),ON0=(A)=>A.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),MUQ=(A)=>A.join(""),PN0=(A,Q)=>{let B=Q;if(A.charAt(B)!=="[")throw Error("not in a brace expression");let Y=[],J=[],C=B+1,X=!1,G=!1,F=!1,W=!1,Z=B,U="";A:while(CU)Y.push(wL(U)+"-"+wL(I));else if(I===U)Y.push(wL(I));U="",C++;continue}if(A.startsWith("-]",C+1)){Y.push(wL(I+"-")),C+=2;continue}if(A.startsWith("-",C+1)){U=I,C+=2;continue}Y.push(wL(I)),C++}if(Z{Object.defineProperty(jUQ,"__esModule",{value:!0});jUQ.unescape=void 0;var TN0=(A,{windowsPathsNoEscape:Q=!1}={})=>{return Q?A.replace(/\[([^\/\\])\]/g,"$1"):A.replace(/((?!\\).|^)\[([^\/\\])\]/g,"$1$2").replace(/\\([^\/])/g,"$1")};jUQ.unescape=TN0});var Bn=R((kUQ)=>{Object.defineProperty(kUQ,"__esModule",{value:!0});kUQ.AST=void 0;var SN0=wUQ(),RP=zP(),kN0=new Set(["!","?","+","*","@"]),PUQ=(A)=>kN0.has(A),_N0="(?!(?:^|/)\\.\\.?(?:$|/))",wP="(?!\\.)",vN0=new Set(["[","."]),yN0=new Set(["..","."]),hN0=new Set("().*{}+?[]^$\\!"),gN0=(A)=>A.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),Qn="[^/]",TUQ=Qn+"*?",SUQ=Qn+"+?";class p9{type;#A;#Q;#B=!1;#Y=[];#J;#C;#F;#X=!1;#G;#Z;#U=!1;constructor(A,Q,B={}){if(this.type=A,A)this.#Q=!0;if(this.#J=Q,this.#A=this.#J?this.#J.#A:this,this.#G=this.#A===this?B:this.#A.#G,this.#F=this.#A===this?[]:this.#A.#F,A==="!"&&!this.#A.#X)this.#F.push(this);this.#C=this.#J?this.#J.#Y.length:0}get hasMagic(){if(this.#Q!==void 0)return this.#Q;for(let A of this.#Y){if(typeof A==="string")continue;if(A.type||A.hasMagic)return this.#Q=!0}return this.#Q}toString(){if(this.#Z!==void 0)return this.#Z;if(!this.type)return this.#Z=this.#Y.map((A)=>String(A)).join("");else return this.#Z=this.type+"("+this.#Y.map((A)=>String(A)).join("|")+")"}#W(){if(this!==this.#A)throw Error("should only call on root");if(this.#X)return this;this.toString(),this.#X=!0;let A;while(A=this.#F.pop()){if(A.type!=="!")continue;let Q=A,B=Q.#J;while(B){for(let Y=Q.#C+1;!B.type&&Ytypeof Q==="string"?Q:Q.toJSON()):[this.type,...this.#Y.map((Q)=>Q.toJSON())];if(this.isStart()&&!this.type)A.unshift([]);if(this.isEnd()&&(this===this.#A||this.#A.#X&&this.#J?.type==="!"))A.push({});return A}isStart(){if(this.#A===this)return!0;if(!this.#J?.isStart())return!1;if(this.#C===0)return!0;let A=this.#J;for(let Q=0;Q{let[E,K,I,V]=typeof $==="string"?p9.#I($,this.#Q,G):$.toRegExpSource(A);return this.#Q=this.#Q||I,this.#B=this.#B||V,E}).join(""),W="";if(this.isStart()){if(typeof this.#Y[0]==="string"){if(!(this.#Y.length===1&&yN0.has(this.#Y[0]))){let E=vN0,K=Q&&E.has(F.charAt(0))||F.startsWith("\\.")&&E.has(F.charAt(2))||F.startsWith("\\.\\.")&&E.has(F.charAt(4)),I=!Q&&!A&&E.has(F.charAt(0));W=K?_N0:I?wP:""}}}let Z="";if(this.isEnd()&&this.#A.#X&&this.#J?.type==="!")Z="(?:$|\\/)";return[W+F+Z,(0,RP.unescape)(F),this.#Q=!!this.#Q,this.#B]}let B=this.type==="*"||this.type==="+",Y=this.type==="!"?"(?:(?!(?:":"(?:",J=this.#V(Q);if(this.isStart()&&this.isEnd()&&!J&&this.type!=="!"){let G=this.toString();return this.#Y=[G],this.type=null,this.#Q=void 0,[G,(0,RP.unescape)(this.toString()),!1,!1]}let C=!B||A||Q||!wP?"":this.#V(!0);if(C===J)C="";if(C)J=`(?:${J})(?:${C})*?`;let X="";if(this.type==="!"&&this.#U)X=(this.isStart()&&!Q?wP:"")+SUQ;else{let G=this.type==="!"?"))"+(this.isStart()&&!Q&&!A?wP:"")+TUQ+")":this.type==="@"?")":this.type==="?"?")?":this.type==="+"&&C?")":this.type==="*"&&C?")?":`)${this.type}`;X=Y+J+G}return[X,(0,RP.unescape)(J),this.#Q=!!this.#Q,this.#B]}#V(A){return this.#Y.map((Q)=>{if(typeof Q==="string")throw Error("string type in extglob ast??");let[B,Y,J,C]=Q.toRegExpSource(A);return this.#B=this.#B||C,B}).filter((Q)=>!(this.isStart()&&this.isEnd())||!!Q).join("|")}static#I(A,Q,B=!1){let Y=!1,J="",C=!1;for(let X=0;X{Object.defineProperty(vUQ,"__esModule",{value:!0});vUQ.escape=void 0;var xN0=(A,{windowsPathsNoEscape:Q=!1}={})=>{return Q?A.replace(/[?*()[\]]/g,"[$&]"):A.replace(/[?*()[\]\\]/g,"\\$&")};vUQ.escape=xN0});var uUQ=R((rA)=>{var fN0=rA&&rA.__importDefault||function(A){return A&&A.__esModule?A:{default:A}};Object.defineProperty(rA,"__esModule",{value:!0});rA.unescape=rA.escape=rA.AST=rA.Minimatch=rA.match=rA.makeRe=rA.braceExpand=rA.defaults=rA.filter=rA.GLOBSTAR=rA.sep=rA.minimatch=void 0;var bN0=fN0(DUQ()),jP=qUQ(),xUQ=Bn(),mN0=Yn(),uN0=zP(),dN0=(A,Q,B={})=>{if((0,jP.assertValidPattern)(Q),!B.nocomment&&Q.charAt(0)==="#")return!1;return new RK(Q,B).match(A)};rA.minimatch=dN0;var cN0=/^\*+([^+@!?\*\[\(]*)$/,lN0=(A)=>(Q)=>!Q.startsWith(".")&&Q.endsWith(A),pN0=(A)=>(Q)=>Q.endsWith(A),iN0=(A)=>{return A=A.toLowerCase(),(Q)=>!Q.startsWith(".")&&Q.toLowerCase().endsWith(A)},nN0=(A)=>{return A=A.toLowerCase(),(Q)=>Q.toLowerCase().endsWith(A)},sN0=/^\*+\.\*+$/,rN0=(A)=>!A.startsWith(".")&&A.includes("."),aN0=(A)=>A!=="."&&A!==".."&&A.includes("."),oN0=/^\.\*+$/,tN0=(A)=>A!=="."&&A!==".."&&A.startsWith("."),eN0=/^\*+$/,AL0=(A)=>A.length!==0&&!A.startsWith("."),QL0=(A)=>A.length!==0&&A!=="."&&A!=="..",BL0=/^\?+([^+@!?\*\[\(]*)?$/,YL0=([A,Q=""])=>{let B=fUQ([A]);if(!Q)return B;return Q=Q.toLowerCase(),(Y)=>B(Y)&&Y.toLowerCase().endsWith(Q)},JL0=([A,Q=""])=>{let B=bUQ([A]);if(!Q)return B;return Q=Q.toLowerCase(),(Y)=>B(Y)&&Y.toLowerCase().endsWith(Q)},CL0=([A,Q=""])=>{let B=bUQ([A]);return!Q?B:(Y)=>B(Y)&&Y.endsWith(Q)},XL0=([A,Q=""])=>{let B=fUQ([A]);return!Q?B:(Y)=>B(Y)&&Y.endsWith(Q)},fUQ=([A])=>{let Q=A.length;return(B)=>B.length===Q&&!B.startsWith(".")},bUQ=([A])=>{let Q=A.length;return(B)=>B.length===Q&&B!=="."&&B!==".."},mUQ=typeof process==="object"&&process?typeof process.env==="object"&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:"posix",hUQ={win32:{sep:"\\"},posix:{sep:"/"}};rA.sep=mUQ==="win32"?hUQ.win32.sep:hUQ.posix.sep;rA.minimatch.sep=rA.sep;rA.GLOBSTAR=Symbol("globstar **");rA.minimatch.GLOBSTAR=rA.GLOBSTAR;var GL0="[^/]",FL0=GL0+"*?",WL0="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",ZL0="(?:(?!(?:\\/|^)\\.).)*?",$L0=(A,Q={})=>(B)=>(0,rA.minimatch)(B,A,Q);rA.filter=$L0;rA.minimatch.filter=rA.filter;var c5=(A,Q={})=>Object.assign({},A,Q),UL0=(A)=>{if(!A||typeof A!=="object"||!Object.keys(A).length)return rA.minimatch;let Q=rA.minimatch;return Object.assign((Y,J,C={})=>Q(Y,J,c5(A,C)),{Minimatch:class extends Q.Minimatch{constructor(J,C={}){super(J,c5(A,C))}static defaults(J){return Q.defaults(c5(A,J)).Minimatch}},AST:class extends Q.AST{constructor(J,C,X={}){super(J,C,c5(A,X))}static fromGlob(J,C={}){return Q.AST.fromGlob(J,c5(A,C))}},unescape:(Y,J={})=>Q.unescape(Y,c5(A,J)),escape:(Y,J={})=>Q.escape(Y,c5(A,J)),filter:(Y,J={})=>Q.filter(Y,c5(A,J)),defaults:(Y)=>Q.defaults(c5(A,Y)),makeRe:(Y,J={})=>Q.makeRe(Y,c5(A,J)),braceExpand:(Y,J={})=>Q.braceExpand(Y,c5(A,J)),match:(Y,J,C={})=>Q.match(Y,J,c5(A,C)),sep:Q.sep,GLOBSTAR:rA.GLOBSTAR})};rA.defaults=UL0;rA.minimatch.defaults=rA.defaults;var EL0=(A,Q={})=>{if((0,jP.assertValidPattern)(A),Q.nobrace||!/\{(?:(?!\{).)*\}/.test(A))return[A];return(0,bN0.default)(A)};rA.braceExpand=EL0;rA.minimatch.braceExpand=rA.braceExpand;var KL0=(A,Q={})=>new RK(A,Q).makeRe();rA.makeRe=KL0;rA.minimatch.makeRe=rA.makeRe;var VL0=(A,Q,B={})=>{let Y=new RK(Q,B);if(A=A.filter((J)=>Y.match(J)),Y.options.nonull&&!A.length)A.push(Q);return A};rA.match=VL0;rA.minimatch.match=rA.match;var gUQ=/[?*]|[+@!]\(.*?\)|\[|\]/,IL0=(A)=>A.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&");class RK{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;regexp;constructor(A,Q={}){if((0,jP.assertValidPattern)(A),Q=Q||{},this.options=Q,this.pattern=A,this.platform=Q.platform||mUQ,this.isWindows=this.platform==="win32",this.windowsPathsNoEscape=!!Q.windowsPathsNoEscape||Q.allowWindowsEscape===!1,this.windowsPathsNoEscape)this.pattern=this.pattern.replace(/\\/g,"/");this.preserveMultipleSlashes=!!Q.preserveMultipleSlashes,this.regexp=null,this.negate=!1,this.nonegate=!!Q.nonegate,this.comment=!1,this.empty=!1,this.partial=!!Q.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=Q.windowsNoMagicRoot!==void 0?Q.windowsNoMagicRoot:!!(this.isWindows&&this.nocase),this.globSet=[],this.globParts=[],this.set=[],this.make()}hasMagic(){if(this.options.magicalBraces&&this.set.length>1)return!0;for(let A of this.set)for(let Q of A)if(typeof Q!=="string")return!0;return!1}debug(...A){}make(){let A=this.pattern,Q=this.options;if(!Q.nocomment&&A.charAt(0)==="#"){this.comment=!0;return}if(!A){this.empty=!0;return}if(this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],Q.debug)this.debug=(...J)=>console.error(...J);this.debug(this.pattern,this.globSet);let B=this.globSet.map((J)=>this.slashSplit(J));this.globParts=this.preprocess(B),this.debug(this.pattern,this.globParts);let Y=this.globParts.map((J,C,X)=>{if(this.isWindows&&this.windowsNoMagicRoot){let G=J[0]===""&&J[1]===""&&(J[2]==="?"||!gUQ.test(J[2]))&&!gUQ.test(J[3]),F=/^[a-z]:/i.test(J[0]);if(G)return[...J.slice(0,4),...J.slice(4).map((W)=>this.parse(W))];else if(F)return[J[0],...J.slice(1).map((W)=>this.parse(W))]}return J.map((G)=>this.parse(G))});if(this.debug(this.pattern,Y),this.set=Y.filter((J)=>J.indexOf(!1)===-1),this.isWindows)for(let J=0;J=2)A=this.firstPhasePreProcess(A),A=this.secondPhasePreProcess(A);else if(Q>=1)A=this.levelOneOptimize(A);else A=this.adjascentGlobstarOptimize(A);return A}adjascentGlobstarOptimize(A){return A.map((Q)=>{let B=-1;while((B=Q.indexOf("**",B+1))!==-1){let Y=B;while(Q[Y+1]==="**")Y++;if(Y!==B)Q.splice(B,Y-B)}return Q})}levelOneOptimize(A){return A.map((Q)=>{return Q=Q.reduce((B,Y)=>{let J=B[B.length-1];if(Y==="**"&&J==="**")return B;if(Y===".."){if(J&&J!==".."&&J!=="."&&J!=="**")return B.pop(),B}return B.push(Y),B},[]),Q.length===0?[""]:Q})}levelTwoFileOptimize(A){if(!Array.isArray(A))A=this.slashSplit(A);let Q=!1;do{if(Q=!1,!this.preserveMultipleSlashes){for(let Y=1;YY)B.splice(Y+1,C-Y);let X=B[Y+1],G=B[Y+2],F=B[Y+3];if(X!=="..")continue;if(!G||G==="."||G===".."||!F||F==="."||F==="..")continue;Q=!0,B.splice(Y,1);let W=B.slice(0);W[Y]="**",A.push(W),Y--}if(!this.preserveMultipleSlashes){for(let C=1;CQ.length)}partsMatch(A,Q,B=!1){let Y=0,J=0,C=[],X="";while(YD)Q=Q.slice(L);else if(D>L)A=A.slice(D)}}}let{optimizationLevel:J=1}=this.options;if(J>=2)A=this.levelTwoFileOptimize(A);this.debug("matchOne",this,{file:A,pattern:Q}),this.debug("matchOne",A.length,Q.length);for(var C=0,X=0,G=A.length,F=Q.length;C>> no match, partial?`,A,U,Q,$),U===G)return!0}return!1}let K;if(typeof W==="string")K=Z===W,this.debug("string match",W,Z,K);else K=W.test(Z),this.debug("pattern match",W,Z,K);if(!K)return!1}if(C===G&&X===F)return!0;else if(C===G)return B;else if(X===F)return C===G-1&&A[C]==="";else throw Error("wtf?")}braceExpand(){return(0,rA.braceExpand)(this.pattern,this.options)}parse(A){(0,qP.assertValidPattern)(A);let Q=this.options;if(A==="**")return rA.GLOBSTAR;if(A==="")return"";let B,Y=null;if(B=A.match(xN0))Y=Q.dot?bN0:fN0;else if(B=A.match(ON0))Y=(Q.nocase?Q.dot?kN0:SN0:Q.dot?TN0:PN0)(B[1]);else if(B=A.match(mN0))Y=(Q.nocase?Q.dot?dN0:uN0:Q.dot?cN0:lN0)(B);else if(B=A.match(_N0))Y=Q.dot?yN0:vN0;else if(B=A.match(gN0))Y=hN0;let J=qUQ.AST.fromGlob(A,this.options).toMMPattern();if(Y&&typeof J==="object")Reflect.defineProperty(J,"test",{value:Y});return J}makeRe(){if(this.regexp||this.regexp===!1)return this.regexp;let A=this.set;if(!A.length)return this.regexp=!1,this.regexp;let Q=this.options,B=Q.noglobstar?iN0:Q.dot?nN0:sN0,Y=new Set(Q.nocase?["i"]:[]),J=A.map((G)=>{let F=G.map((W)=>{if(W instanceof RegExp)for(let Z of W.flags.split(""))Y.add(Z);return typeof W==="string"?AL0(W):W===rA.GLOBSTAR?rA.GLOBSTAR:W._src});return F.forEach((W,Z)=>{let U=F[Z+1],$=F[Z-1];if(W!==rA.GLOBSTAR||$===rA.GLOBSTAR)return;if($===void 0)if(U!==void 0&&U!==rA.GLOBSTAR)F[Z+1]="(?:\\/|"+B+"\\/)?"+U;else F[Z]=B;else if(U===void 0)F[Z-1]=$+"(?:\\/|"+B+")?";else if(U!==rA.GLOBSTAR)F[Z-1]=$+"(?:\\/|\\/"+B+"\\/)"+U,F[Z+1]=rA.GLOBSTAR}),F.filter((W)=>W!==rA.GLOBSTAR).join("/")}).join("|"),[C,X]=A.length>1?["(?:",")"]:["",""];if(J="^"+C+J+X+"$",this.negate)J="^(?!"+J+").+$";try{this.regexp=new RegExp(J,[...Y].join(""))}catch(G){this.regexp=!1}return this.regexp}slashSplit(A){if(this.preserveMultipleSlashes)return A.split("/");else if(this.isWindows&&/^\/\/[^\/]+/.test(A))return["",...A.split(/\/+/)];else return A.split(/\/+/)}match(A,Q=this.partial){if(this.debug("match",A,this.pattern),this.comment)return!1;if(this.empty)return A==="";if(A==="/"&&Q)return!0;let B=this.options;if(this.isWindows)A=A.split("\\").join("/");let Y=this.slashSplit(A);this.debug(this.pattern,"split",Y);let J=this.set;this.debug(this.pattern,"set",J);let C=Y[Y.length-1];if(!C)for(let X=Y.length-2;!C&&X>=0;X--)C=Y[X];for(let X=0;X{Object.defineProperty(lUQ,"__esModule",{value:!0});lUQ.SpanNames=lUQ.TokenKind=lUQ.AllowedOperationTypes=void 0;var VL0;(function(A){A.QUERY="query",A.MUTATION="mutation",A.SUBSCRIPTION="subscription"})(VL0=lUQ.AllowedOperationTypes||(lUQ.AllowedOperationTypes={}));var IL0;(function(A){A.SOF="",A.EOF="",A.BANG="!",A.DOLLAR="$",A.AMP="&",A.PAREN_L="(",A.PAREN_R=")",A.SPREAD="...",A.COLON=":",A.EQUALS="=",A.AT="@",A.BRACKET_L="[",A.BRACKET_R="]",A.BRACE_L="{",A.PIPE="|",A.BRACE_R="}",A.NAME="Name",A.INT="Int",A.FLOAT="Float",A.STRING="String",A.BLOCK_STRING="BlockString",A.COMMENT="Comment"})(IL0=lUQ.TokenKind||(lUQ.TokenKind={}));var HL0;(function(A){A.EXECUTE="graphql.execute",A.PARSE="graphql.parse",A.RESOLVE="graphql.resolve",A.VALIDATE="graphql.validate",A.SCHEMA_VALIDATE="graphql.validateSchema",A.SCHEMA_PARSE="graphql.parseSchema"})(HL0=lUQ.SpanNames||(lUQ.SpanNames={}))});var An=R((pUQ)=>{Object.defineProperty(pUQ,"__esModule",{value:!0});pUQ.AttributeNames=void 0;var DL0;(function(A){A.SOURCE="graphql.source",A.FIELD_NAME="graphql.field.name",A.FIELD_PATH="graphql.field.path",A.FIELD_TYPE="graphql.field.type",A.OPERATION_TYPE="graphql.operation.type",A.OPERATION_NAME="graphql.operation.name",A.VARIABLES="graphql.variables.",A.ERROR_VALIDATION_NAME="graphql.validation.error"})(DL0=pUQ.AttributeNames||(pUQ.AttributeNames={}))});var OP=R((iUQ)=>{Object.defineProperty(iUQ,"__esModule",{value:!0});iUQ.OTEL_GRAPHQL_DATA_SYMBOL=iUQ.OTEL_PATCHED_SYMBOL=void 0;iUQ.OTEL_PATCHED_SYMBOL=Symbol.for("opentelemetry.patched");iUQ.OTEL_GRAPHQL_DATA_SYMBOL=Symbol.for("opentelemetry.graphql_data")});var aUQ=R((sUQ)=>{Object.defineProperty(sUQ,"__esModule",{value:!0});sUQ.OPERATION_NOT_SUPPORTED=void 0;var fbY=OP();sUQ.OPERATION_NOT_SUPPORTED="Operation$operationName$not supported"});var $EQ=R((FEQ)=>{Object.defineProperty(FEQ,"__esModule",{value:!0});FEQ.wrapFieldResolver=FEQ.wrapFields=FEQ.getSourceFromLocation=FEQ.getOperation=FEQ.endSpan=FEQ.addSpanSource=FEQ.addInputVariableAttributes=FEQ.isPromise=void 0;var MK=yA(),NF=ti(),qK=An(),Z6=OP(),oUQ=Object.values(NF.AllowedOperationTypes),LL0=(A)=>{return typeof(A===null||A===void 0?void 0:A.then)==="function"};FEQ.isPromise=LL0;var qL0=(A)=>{return typeof A=="object"&&A!==null};function Qn(A,Q,B){if(Array.isArray(B))B.forEach((Y,J)=>{Qn(A,`${Q}.${J}`,Y)});else if(B instanceof Object)Object.entries(B).forEach(([Y,J])=>{Qn(A,`${Q}.${Y}`,J)});else A.setAttribute(`${qK.AttributeNames.VARIABLES}${String(Q)}`,B)}function ML0(A,Q){Object.entries(Q).forEach(([B,Y])=>{Qn(A,B,Y)})}FEQ.addInputVariableAttributes=ML0;function QEQ(A,Q,B,Y,J){let C=CEQ(Q,B,Y,J);A.setAttribute(qK.AttributeNames.SOURCE,C)}FEQ.addSpanSource=QEQ;function zL0(A,Q,B,Y,J){let C=BEQ(B,J),X=!1;if(!C){X=!0;let G=YEQ(B,J);C={parent:G,span:RL0(A,Q,B,Y,J,G.span),error:null},OL0(B,J,C)}return{spanAdded:X,field:C}}function RL0(A,Q,B,Y,J,C){var X,G;let F={[qK.AttributeNames.FIELD_NAME]:Y.fieldName,[qK.AttributeNames.FIELD_PATH]:J.join("."),[qK.AttributeNames.FIELD_TYPE]:Y.returnType.toString()},W=A.startSpan(`${NF.SpanNames.RESOLVE} ${F[qK.AttributeNames.FIELD_PATH]}`,{attributes:F},C?MK.trace.setSpan(MK.context.active(),C):void 0),Z=B[Z6.OTEL_GRAPHQL_DATA_SYMBOL].source,U=Y.fieldNodes.find(($)=>$.kind==="Field");if(U)QEQ(W,Z.loc,Q().allowValues,(X=U.loc)===null||X===void 0?void 0:X.start,(G=U.loc)===null||G===void 0?void 0:G.end);return W}function wL0(A,Q){if(Q)A.recordException(Q);A.end()}FEQ.endSpan=wL0;function jL0(A,Q){if(!A||!Array.isArray(A.definitions))return;if(Q)return A.definitions.filter((B)=>{var Y;return oUQ.indexOf((Y=B)===null||Y===void 0?void 0:Y.operation)!==-1}).find((B)=>{var Y,J;return Q===((J=(Y=B)===null||Y===void 0?void 0:Y.name)===null||J===void 0?void 0:J.value)});else return A.definitions.find((B)=>{var Y;return oUQ.indexOf((Y=B)===null||Y===void 0?void 0:Y.operation)!==-1})}FEQ.getOperation=jL0;function OL0(A,Q,B){return A[Z6.OTEL_GRAPHQL_DATA_SYMBOL].fields[Q.join(".")]=B}function BEQ(A,Q){return A[Z6.OTEL_GRAPHQL_DATA_SYMBOL].fields[Q.join(".")]}function YEQ(A,Q){for(let B=Q.length-1;B>0;B--){let Y=BEQ(A,Q.slice(0,B));if(Y)return Y}return{span:A[Z6.OTEL_GRAPHQL_DATA_SYMBOL].span}}function PL0(A,Q){let B=[],Y=Q;while(Y){let J=Y.key;if(A&&typeof J==="number")J="*";B.push(String(J)),Y=Y.prev}return B.reverse()}function TL0(A){return JEQ(` -`,A)}function tUQ(A){return JEQ(" ",A)}function JEQ(A,Q){let B="";for(let Y=0;YF){W=W.next,Z=W===null||W===void 0?void 0:W.line;continue}let U=W.value||W.kind,$="";if(!Q&&SL0.indexOf(W.kind)>=0)U="*";if(W.kind===NF.TokenKind.STRING)U=`"${U}"`;if(W.kind===NF.TokenKind.EOF)U="";if(W.line>Z)X+=TL0(W.line-Z),Z=W.line,$=tUQ(W.column-1);else if(W.line===((J=W.prev)===null||J===void 0?void 0:J.line))$=tUQ(W.start-(((C=W.prev)===null||C===void 0?void 0:C.end)||0));if(X+=$+U,W)W=W.next}}return X}FEQ.getSourceFromLocation=CEQ;function XEQ(A,Q,B){if(!A||typeof A.getFields!=="function"||A[Z6.OTEL_PATCHED_SYMBOL])return;let Y=A.getFields();A[Z6.OTEL_PATCHED_SYMBOL]=!0,Object.keys(Y).forEach((J)=>{let C=Y[J];if(!C)return;if(C.resolve)C.resolve=GEQ(Q,B,C.resolve);if(C.type){let X=C.type;while(X.ofType)X=X.ofType;XEQ(X,Q,B)}})}FEQ.wrapFields=XEQ;var eUQ=(A,Q,B)=>{if(!B)return;A.recordException(Q),A.setStatus({code:MK.SpanStatusCode.ERROR,message:Q.message}),A.end()},AEQ=(A,Q)=>{if(!Q)return;A.end()};function GEQ(A,Q,B,Y=!1){if(J[Z6.OTEL_PATCHED_SYMBOL]||typeof B!=="function")return B;function J(C,X,G,F){if(!B)return;let W=Q();if(W.ignoreTrivialResolveSpans&&Y&&(qL0(C)||typeof C==="function")){if(typeof C[F.fieldName]!=="function")return B.call(this,C,X,G,F)}if(!G[Z6.OTEL_GRAPHQL_DATA_SYMBOL])return B.call(this,C,X,G,F);let Z=PL0(W.mergeItems,F&&F.path),U=Z.filter((K)=>typeof K==="string").length,$,E=!1;if(W.depth>=0&&W.depth{try{let K=B.call(this,C,X,G,F);if(FEQ.isPromise(K))return K.then((I)=>{return AEQ($.span,E),I},(I)=>{throw eUQ($.span,I,E),I});else return AEQ($.span,E),K}catch(K){throw eUQ($.span,K,E),K}})}return J[Z6.OTEL_PATCHED_SYMBOL]=!0,J}FEQ.wrapFieldResolver=GEQ});var KEQ=R((UEQ)=>{Object.defineProperty(UEQ,"__esModule",{value:!0});UEQ.PACKAGE_NAME=UEQ.PACKAGE_VERSION=void 0;UEQ.PACKAGE_VERSION="0.47.1";UEQ.PACKAGE_NAME="@opentelemetry/instrumentation-graphql"});var LEQ=R((DEQ)=>{Object.defineProperty(DEQ,"__esModule",{value:!0});DEQ.GraphQLInstrumentation=void 0;var $6=yA(),c5=NB(),jL=ti(),PP=An(),Bn=OP(),fL0=aUQ(),SJ=$EQ(),VEQ=KEQ(),IEQ={mergeItems:!1,depth:-1,allowValues:!1,ignoreResolveSpans:!1},TP=[">=14.0.0 <17"];class HEQ extends c5.InstrumentationBase{constructor(A={}){super(VEQ.PACKAGE_NAME,VEQ.PACKAGE_VERSION,Object.assign(Object.assign({},IEQ),A))}setConfig(A={}){super.setConfig(Object.assign(Object.assign({},IEQ),A))}init(){let A=new c5.InstrumentationNodeModuleDefinition("graphql",TP);return A.files.push(this._addPatchingExecute()),A.files.push(this._addPatchingParser()),A.files.push(this._addPatchingValidate()),A}_addPatchingExecute(){return new c5.InstrumentationNodeModuleFile("graphql/execution/execute.js",TP,(A)=>{if((0,c5.isWrapped)(A.execute))this._unwrap(A,"execute");return this._wrap(A,"execute",this._patchExecute(A.defaultFieldResolver)),A},(A)=>{if(A)this._unwrap(A,"execute")})}_addPatchingParser(){return new c5.InstrumentationNodeModuleFile("graphql/language/parser.js",TP,(A)=>{if((0,c5.isWrapped)(A.parse))this._unwrap(A,"parse");return this._wrap(A,"parse",this._patchParse()),A},(A)=>{if(A)this._unwrap(A,"parse")})}_addPatchingValidate(){return new c5.InstrumentationNodeModuleFile("graphql/validation/validate.js",TP,(A)=>{if((0,c5.isWrapped)(A.validate))this._unwrap(A,"validate");return this._wrap(A,"validate",this._patchValidate()),A},(A)=>{if(A)this._unwrap(A,"validate")})}_patchExecute(A){let Q=this;return function(Y){return function(){let C;if(arguments.length>=2){let F=arguments;C=Q._wrapExecuteArgs(F[0],F[1],F[2],F[3],F[4],F[5],F[6],F[7],A)}else{let F=arguments[0];C=Q._wrapExecuteArgs(F.schema,F.document,F.rootValue,F.contextValue,F.variableValues,F.operationName,F.fieldResolver,F.typeResolver,A)}let X=(0,SJ.getOperation)(C.document,C.operationName),G=Q._createExecuteSpan(X,C);return C.contextValue[Bn.OTEL_GRAPHQL_DATA_SYMBOL]={source:C.document?C.document||C.document[Bn.OTEL_GRAPHQL_DATA_SYMBOL]:void 0,span:G,fields:{}},$6.context.with($6.trace.setSpan($6.context.active(),G),()=>{return(0,c5.safeExecuteInTheMiddle)(()=>{return Y.apply(this,[C])},(F,W)=>{Q._handleExecutionResult(G,F,W)})})}}}_handleExecutionResult(A,Q,B){let Y=this.getConfig();if(B===void 0||Q){(0,SJ.endSpan)(A,Q);return}if((0,SJ.isPromise)(B))B.then((J)=>{if(typeof Y.responseHook!=="function"){(0,SJ.endSpan)(A);return}this._executeResponseHook(A,J)},(J)=>{(0,SJ.endSpan)(A,J)});else{if(typeof Y.responseHook!=="function"){(0,SJ.endSpan)(A);return}this._executeResponseHook(A,B)}}_executeResponseHook(A,Q){let{responseHook:B}=this.getConfig();if(!B)return;(0,c5.safeExecuteInTheMiddle)(()=>{B(A,Q)},(Y)=>{if(Y)this._diag.error("Error running response hook",Y);(0,SJ.endSpan)(A,void 0)},!0)}_patchParse(){let A=this;return function(B){return function(J,C){return A._parse(this,B,J,C)}}}_patchValidate(){let A=this;return function(B){return function(J,C,X,G,F){return A._validate(this,B,J,C,X,F,G)}}}_parse(A,Q,B,Y){let J=this.getConfig(),C=this.tracer.startSpan(jL.SpanNames.PARSE);return $6.context.with($6.trace.setSpan($6.context.active(),C),()=>{return(0,c5.safeExecuteInTheMiddle)(()=>{return Q.call(A,B,Y)},(X,G)=>{if(G){if(!(0,SJ.getOperation)(G))C.updateName(jL.SpanNames.SCHEMA_PARSE);else if(G.loc)(0,SJ.addSpanSource)(C,G.loc,J.allowValues)}(0,SJ.endSpan)(C,X)})})}_validate(A,Q,B,Y,J,C,X){let G=this.tracer.startSpan(jL.SpanNames.VALIDATE,{});return $6.context.with($6.trace.setSpan($6.context.active(),G),()=>{return(0,c5.safeExecuteInTheMiddle)(()=>{return Q.call(A,B,Y,J,X,C)},(F,W)=>{if(!Y.loc)G.updateName(jL.SpanNames.SCHEMA_VALIDATE);if(W&&W.length)G.recordException({name:PP.AttributeNames.ERROR_VALIDATION_NAME,message:JSON.stringify(W)});(0,SJ.endSpan)(G,F)})})}_createExecuteSpan(A,Q){var B;let Y=this.getConfig(),J=this.tracer.startSpan(jL.SpanNames.EXECUTE,{});if(A){let{operation:C,name:X}=A;J.setAttribute(PP.AttributeNames.OPERATION_TYPE,C);let G=X===null||X===void 0?void 0:X.value;if(G)J.setAttribute(PP.AttributeNames.OPERATION_NAME,G),J.updateName(`${C} ${G}`);else J.updateName(C)}else{let C=" ";if(Q.operationName)C=` "${Q.operationName}" `;C=fL0.OPERATION_NOT_SUPPORTED.replace("$operationName$",C),J.setAttribute(PP.AttributeNames.OPERATION_NAME,C)}if((B=Q.document)===null||B===void 0?void 0:B.loc)(0,SJ.addSpanSource)(J,Q.document.loc,Y.allowValues);if(Q.variableValues&&Y.allowValues)(0,SJ.addInputVariableAttributes)(J,Q.variableValues);return J}_wrapExecuteArgs(A,Q,B,Y,J,C,X,G,F){if(!Y)Y={};if(Y[Bn.OTEL_GRAPHQL_DATA_SYMBOL]||this.getConfig().ignoreResolveSpans)return{schema:A,document:Q,rootValue:B,contextValue:Y,variableValues:J,operationName:C,fieldResolver:X,typeResolver:G};let W=X==null,Z=X!==null&&X!==void 0?X:F;if(X=(0,SJ.wrapFieldResolver)(this.tracer,()=>this.getConfig(),Z,W),A)(0,SJ.wrapFields)(A.getQueryType(),this.tracer,()=>this.getConfig()),(0,SJ.wrapFields)(A.getMutationType(),this.tracer,()=>this.getConfig());return{schema:A,document:Q,rootValue:B,contextValue:Y,variableValues:J,operationName:C,fieldResolver:X,typeResolver:G}}}DEQ.GraphQLInstrumentation=HEQ});var MEQ=R((qEQ)=>{Object.defineProperty(qEQ,"__esModule",{value:!0})});var REQ=R((LF)=>{var bL0=LF&&LF.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),zEQ=LF&&LF.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))bL0(Q,A,B)};Object.defineProperty(LF,"__esModule",{value:!0});zEQ(LEQ(),LF);zEQ(MEQ(),LF)});var SEQ=R((PEQ)=>{Object.defineProperty(PEQ,"__esModule",{value:!0});PEQ.PACKAGE_NAME=PEQ.PACKAGE_VERSION=void 0;PEQ.PACKAGE_VERSION="0.7.1";PEQ.PACKAGE_NAME="@opentelemetry/instrumentation-kafkajs"});var vEQ=R((kEQ)=>{Object.defineProperty(kEQ,"__esModule",{value:!0});kEQ.bufferTextMapGetter=void 0;kEQ.bufferTextMapGetter={get(A,Q){var B;if(!A)return;let Y=Object.keys(A);for(let J of Y)if(J===Q||J.toLowerCase()===Q)return(B=A[J])===null||B===void 0?void 0:B.toString();return},keys(A){return A?Object.keys(A):[]}}});var bEQ=R((xEQ)=>{Object.defineProperty(xEQ,"__esModule",{value:!0});xEQ.KafkaJsInstrumentation=void 0;var ZJ=yA(),qF=uB(),yEQ=SEQ(),gEQ=vEQ(),J1=NB();class hEQ extends J1.InstrumentationBase{constructor(A={}){super(yEQ.PACKAGE_NAME,yEQ.PACKAGE_VERSION,A)}init(){let A=(B)=>{var Y,J;if((0,J1.isWrapped)((Y=B===null||B===void 0?void 0:B.Kafka)===null||Y===void 0?void 0:Y.prototype.producer))this._unwrap(B.Kafka.prototype,"producer");if((0,J1.isWrapped)((J=B===null||B===void 0?void 0:B.Kafka)===null||J===void 0?void 0:J.prototype.consumer))this._unwrap(B.Kafka.prototype,"consumer")};return new J1.InstrumentationNodeModuleDefinition("kafkajs",[">=0.1.0 <3"],(B)=>{var Y,J;return A(B),this._wrap((Y=B===null||B===void 0?void 0:B.Kafka)===null||Y===void 0?void 0:Y.prototype,"producer",this._getProducerPatch()),this._wrap((J=B===null||B===void 0?void 0:B.Kafka)===null||J===void 0?void 0:J.prototype,"consumer",this._getConsumerPatch()),B},A)}_getConsumerPatch(){let A=this;return(Q)=>{return function(...Y){let J=Q.apply(this,Y);if((0,J1.isWrapped)(J.run))A._unwrap(J,"run");return A._wrap(J,"run",A._getConsumerRunPatch()),J}}}_getProducerPatch(){let A=this;return(Q)=>{return function(...Y){let J=Q.apply(this,Y);if((0,J1.isWrapped)(J.sendBatch))A._unwrap(J,"sendBatch");if(A._wrap(J,"sendBatch",A._getProducerSendBatchPatch()),(0,J1.isWrapped)(J.send))A._unwrap(J,"send");return A._wrap(J,"send",A._getProducerSendPatch()),J}}}_getConsumerRunPatch(){let A=this;return(Q)=>{return function(...Y){let J=Y[0];if(J===null||J===void 0?void 0:J.eachMessage){if((0,J1.isWrapped)(J.eachMessage))A._unwrap(J,"eachMessage");A._wrap(J,"eachMessage",A._getConsumerEachMessagePatch())}if(J===null||J===void 0?void 0:J.eachBatch){if((0,J1.isWrapped)(J.eachBatch))A._unwrap(J,"eachBatch");A._wrap(J,"eachBatch",A._getConsumerEachBatchPatch())}return Q.call(this,J)}}}_getConsumerEachMessagePatch(){let A=this;return(Q)=>{return function(...Y){let J=Y[0],C=ZJ.propagation.extract(ZJ.ROOT_CONTEXT,J.message.headers,gEQ.bufferTextMapGetter),X=A._startConsumerSpan(J.topic,J.message,qF.MESSAGINGOPERATIONVALUES_PROCESS,C),G=ZJ.context.with(ZJ.trace.setSpan(C,X),()=>{return Q.apply(this,Y)});return A._endSpansOnPromise([X],G)}}}_getConsumerEachBatchPatch(){return(A)=>{let Q=this;return function(...Y){let J=Y[0],C=Q._startConsumerSpan(J.batch.topic,void 0,qF.MESSAGINGOPERATIONVALUES_RECEIVE,ZJ.ROOT_CONTEXT);return ZJ.context.with(ZJ.trace.setSpan(ZJ.context.active(),C),()=>{let X=J.batch.messages.map((F)=>{var W;let Z=ZJ.propagation.extract(ZJ.ROOT_CONTEXT,F.headers,gEQ.bufferTextMapGetter),U=(W=ZJ.trace.getSpan(Z))===null||W===void 0?void 0:W.spanContext(),$;if(U)$={context:U};return Q._startConsumerSpan(J.batch.topic,F,qF.MESSAGINGOPERATIONVALUES_PROCESS,void 0,$)}),G=A.apply(this,Y);return X.unshift(C),Q._endSpansOnPromise(X,G)})}}}_getProducerSendBatchPatch(){let A=this;return(Q)=>{return function(...Y){let X=(Y[0].topicMessages||[]).map((F)=>F.messages.map((W)=>A._startProducerSpan(F.topic,W))).reduce((F,W)=>F.concat(W),[]),G=Q.apply(this,Y);return A._endSpansOnPromise(X,G)}}}_getProducerSendPatch(){let A=this;return(Q)=>{return function(...Y){let J=Y[0],C=J.messages.map((G)=>{return A._startProducerSpan(J.topic,G)}),X=Q.apply(this,Y);return A._endSpansOnPromise(C,X)}}}_endSpansOnPromise(A,Q){return Promise.resolve(Q).catch((B)=>{let Y;if(typeof B==="string")Y=B;else if(typeof B==="object"&&Object.prototype.hasOwnProperty.call(B,"message"))Y=B.message;throw A.forEach((J)=>J.setStatus({code:ZJ.SpanStatusCode.ERROR,message:Y})),B}).finally(()=>{A.forEach((B)=>B.end())})}_startConsumerSpan(A,Q,B,Y,J){let C=this.tracer.startSpan(A,{kind:ZJ.SpanKind.CONSUMER,attributes:{[qF.SEMATTRS_MESSAGING_SYSTEM]:"kafka",[qF.SEMATTRS_MESSAGING_DESTINATION]:A,[qF.SEMATTRS_MESSAGING_OPERATION]:B},links:J?[J]:[]},Y),{consumerHook:X}=this.getConfig();if(X&&Q)(0,J1.safeExecuteInTheMiddle)(()=>X(C,{topic:A,message:Q}),(G)=>{if(G)this._diag.error("consumerHook error",G)},!0);return C}_startProducerSpan(A,Q){var B;let Y=this.tracer.startSpan(A,{kind:ZJ.SpanKind.PRODUCER,attributes:{[qF.SEMATTRS_MESSAGING_SYSTEM]:"kafka",[qF.SEMATTRS_MESSAGING_DESTINATION]:A}});Q.headers=(B=Q.headers)!==null&&B!==void 0?B:{},ZJ.propagation.inject(ZJ.trace.setSpan(ZJ.context.active(),Y),Q.headers);let{producerHook:J}=this.getConfig();if(J)(0,J1.safeExecuteInTheMiddle)(()=>J(Y,{topic:A,message:Q}),(C)=>{if(C)this._diag.error("producerHook error",C)},!0);return Y}}xEQ.KafkaJsInstrumentation=hEQ});var uEQ=R((mEQ)=>{Object.defineProperty(mEQ,"__esModule",{value:!0})});var cEQ=R((MF)=>{var cL0=MF&&MF.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),dEQ=MF&&MF.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))cL0(Q,A,B)};Object.defineProperty(MF,"__esModule",{value:!0});dEQ(bEQ(),MF);dEQ(uEQ(),MF)});var sEQ=R((iEQ)=>{Object.defineProperty(iEQ,"__esModule",{value:!0});iEQ.PACKAGE_NAME=iEQ.PACKAGE_VERSION=void 0;iEQ.PACKAGE_VERSION="0.44.1";iEQ.PACKAGE_NAME="@opentelemetry/instrumentation-lru-memoizer"});var QKQ=R((eEQ)=>{Object.defineProperty(eEQ,"__esModule",{value:!0});eEQ.LruMemoizerInstrumentation=void 0;var rEQ=yA(),aEQ=NB(),oEQ=sEQ();class tEQ extends aEQ.InstrumentationBase{constructor(A={}){super(oEQ.PACKAGE_NAME,oEQ.PACKAGE_VERSION,A)}init(){return[new aEQ.InstrumentationNodeModuleDefinition("lru-memoizer",[">=1.3 <3"],(A)=>{let Q=function(){let B=A.apply(this,arguments);return function(){let Y=[...arguments],J=Y.pop(),C=typeof J==="function"?rEQ.context.bind(rEQ.context.active(),J):J;return Y.push(C),B.apply(this,Y)}};return Q.sync=A.sync,Q},void 0)]}}eEQ.LruMemoizerInstrumentation=tEQ});var BKQ=R((K$)=>{var iL0=K$&&K$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),nL0=K$&&K$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))iL0(Q,A,B)};Object.defineProperty(K$,"__esModule",{value:!0});nL0(QKQ(),K$)});var XKQ=R((CKQ)=>{Object.defineProperty(CKQ,"__esModule",{value:!0});CKQ.MongodbCommandType=void 0;var rL0;(function(A){A.CREATE_INDEXES="createIndexes",A.FIND_AND_MODIFY="findAndModify",A.IS_MASTER="isMaster",A.COUNT="count",A.AGGREGATE="aggregate",A.UNKNOWN="unknown"})(rL0=CKQ.MongodbCommandType||(CKQ.MongodbCommandType={}))});var WKQ=R((GKQ)=>{Object.defineProperty(GKQ,"__esModule",{value:!0});GKQ.PACKAGE_NAME=GKQ.PACKAGE_VERSION=void 0;GKQ.PACKAGE_VERSION="0.52.0";GKQ.PACKAGE_NAME="@opentelemetry/instrumentation-mongodb"});var KKQ=R((UKQ)=>{Object.defineProperty(UKQ,"__esModule",{value:!0});UKQ.MongoDBInstrumentation=void 0;var h0=yA(),V0=NB(),U6=uB(),zF=XKQ(),ZKQ=WKQ(),$KQ={requireParentSpan:!0};class Gn extends V0.InstrumentationBase{constructor(A={}){super(ZKQ.PACKAGE_NAME,ZKQ.PACKAGE_VERSION,Object.assign(Object.assign({},$KQ),A))}setConfig(A={}){super.setConfig(Object.assign(Object.assign({},$KQ),A))}_updateMetricInstruments(){this._connectionsUsage=this.meter.createUpDownCounter("db.client.connections.usage",{description:"The number of connections that are currently in state described by the state attribute.",unit:"{connection}"})}init(){let{v3PatchConnection:A,v3UnpatchConnection:Q}=this._getV3ConnectionPatches(),{v4PatchConnect:B,v4UnpatchConnect:Y}=this._getV4ConnectPatches(),{v4PatchConnectionCallback:J,v4PatchConnectionPromise:C,v4UnpatchConnection:X}=this._getV4ConnectionPatches(),{v4PatchConnectionPool:G,v4UnpatchConnectionPool:F}=this._getV4ConnectionPoolPatches(),{v4PatchSessions:W,v4UnpatchSessions:Z}=this._getV4SessionsPatches();return[new V0.InstrumentationNodeModuleDefinition("mongodb",[">=3.3.0 <4"],void 0,void 0,[new V0.InstrumentationNodeModuleFile("mongodb/lib/core/wireprotocol/index.js",[">=3.3.0 <4"],A,Q)]),new V0.InstrumentationNodeModuleDefinition("mongodb",[">=4.0.0 <7"],void 0,void 0,[new V0.InstrumentationNodeModuleFile("mongodb/lib/cmap/connection.js",[">=4.0.0 <6.4"],J,X),new V0.InstrumentationNodeModuleFile("mongodb/lib/cmap/connection.js",[">=6.4.0 <7"],C,X),new V0.InstrumentationNodeModuleFile("mongodb/lib/cmap/connection_pool.js",[">=4.0.0 <6.4"],G,F),new V0.InstrumentationNodeModuleFile("mongodb/lib/cmap/connect.js",[">=4.0.0 <7"],B,Y),new V0.InstrumentationNodeModuleFile("mongodb/lib/sessions.js",[">=4.0.0 <7"],W,Z)])]}_getV3ConnectionPatches(){return{v3PatchConnection:(A)=>{if((0,V0.isWrapped)(A.insert))this._unwrap(A,"insert");if(this._wrap(A,"insert",this._getV3PatchOperation("insert")),(0,V0.isWrapped)(A.remove))this._unwrap(A,"remove");if(this._wrap(A,"remove",this._getV3PatchOperation("remove")),(0,V0.isWrapped)(A.update))this._unwrap(A,"update");if(this._wrap(A,"update",this._getV3PatchOperation("update")),(0,V0.isWrapped)(A.command))this._unwrap(A,"command");if(this._wrap(A,"command",this._getV3PatchCommand()),(0,V0.isWrapped)(A.query))this._unwrap(A,"query");if(this._wrap(A,"query",this._getV3PatchFind()),(0,V0.isWrapped)(A.getMore))this._unwrap(A,"getMore");return this._wrap(A,"getMore",this._getV3PatchCursor()),A},v3UnpatchConnection:(A)=>{if(A===void 0)return;this._unwrap(A,"insert"),this._unwrap(A,"remove"),this._unwrap(A,"update"),this._unwrap(A,"command"),this._unwrap(A,"query"),this._unwrap(A,"getMore")}}}_getV4SessionsPatches(){return{v4PatchSessions:(A)=>{if((0,V0.isWrapped)(A.acquire))this._unwrap(A,"acquire");if(this._wrap(A.ServerSessionPool.prototype,"acquire",this._getV4AcquireCommand()),(0,V0.isWrapped)(A.release))this._unwrap(A,"release");return this._wrap(A.ServerSessionPool.prototype,"release",this._getV4ReleaseCommand()),A},v4UnpatchSessions:(A)=>{if(A===void 0)return;if((0,V0.isWrapped)(A.acquire))this._unwrap(A,"acquire");if((0,V0.isWrapped)(A.release))this._unwrap(A,"release")}}}_getV4AcquireCommand(){let A=this;return(Q)=>{return function(){let Y=this.sessions.length,J=Q.call(this),C=this.sessions.length;if(Y===C)A._connectionsUsage.add(1,{state:"used","pool.name":A._poolName});else if(Y-1===C)A._connectionsUsage.add(-1,{state:"idle","pool.name":A._poolName}),A._connectionsUsage.add(1,{state:"used","pool.name":A._poolName});return J}}}_getV4ReleaseCommand(){let A=this;return(Q)=>{return function(Y){let J=Q.call(this,Y);return A._connectionsUsage.add(-1,{state:"used","pool.name":A._poolName}),A._connectionsUsage.add(1,{state:"idle","pool.name":A._poolName}),J}}}_getV4ConnectionPoolPatches(){return{v4PatchConnectionPool:(A)=>{let Q=A.ConnectionPool.prototype;if((0,V0.isWrapped)(Q.checkOut))this._unwrap(Q,"checkOut");return this._wrap(Q,"checkOut",this._getV4ConnectionPoolCheckOut()),A},v4UnpatchConnectionPool:(A)=>{if(A===void 0)return;this._unwrap(A.ConnectionPool.prototype,"checkOut")}}}_getV4ConnectPatches(){return{v4PatchConnect:(A)=>{if((0,V0.isWrapped)(A.connect))this._unwrap(A,"connect");return this._wrap(A,"connect",this._getV4ConnectCommand()),A},v4UnpatchConnect:(A)=>{if(A===void 0)return;this._unwrap(A,"connect")}}}_getV4ConnectionPoolCheckOut(){return(A)=>{return function(B){let Y=h0.context.bind(h0.context.active(),B);return A.call(this,Y)}}}_getV4ConnectCommand(){let A=this;return(Q)=>{return function(Y,J){if(Q.length===1){let X=Q.call(this,Y);if(X&&typeof X.then==="function")X.then(()=>A.setPoolName(Y),()=>{return});return X}let C=function(X,G){if(X||!G){J(X,G);return}A.setPoolName(Y),J(X,G)};return Q.call(this,Y,C)}}}_getV4ConnectionPatches(){return{v4PatchConnectionCallback:(A)=>{if((0,V0.isWrapped)(A.Connection.prototype.command))this._unwrap(A.Connection.prototype,"command");return this._wrap(A.Connection.prototype,"command",this._getV4PatchCommandCallback()),A},v4PatchConnectionPromise:(A)=>{if((0,V0.isWrapped)(A.Connection.prototype.command))this._unwrap(A.Connection.prototype,"command");return this._wrap(A.Connection.prototype,"command",this._getV4PatchCommandPromise()),A},v4UnpatchConnection:(A)=>{if(A===void 0)return;this._unwrap(A.Connection.prototype,"command")}}}_getV3PatchOperation(A){let Q=this;return(B)=>{return function(J,C,X,G,F){let W=h0.trace.getSpan(h0.context.active()),Z=Q._checkSkipInstrumentation(W),U=typeof G==="function"?G:F;if(Z||typeof U!=="function"||typeof X!=="object")if(typeof G==="function")return B.call(this,J,C,X,G);else return B.call(this,J,C,X,G,F);let $=Q.tracer.startSpan(`mongodb.${A}`,{kind:h0.SpanKind.CLIENT});Q._populateV3Attributes($,C,J,X[0],A);let E=Q._patchEnd($,U);if(typeof G==="function")return B.call(this,J,C,X,E);else return B.call(this,J,C,X,G,E)}}}_getV3PatchCommand(){let A=this;return(Q)=>{return function(Y,J,C,X,G){let F=h0.trace.getSpan(h0.context.active()),W=A._checkSkipInstrumentation(F),Z=typeof X==="function"?X:G;if(W||typeof Z!=="function"||typeof C!=="object")if(typeof X==="function")return Q.call(this,Y,J,C,X);else return Q.call(this,Y,J,C,X,G);let U=Gn._getCommandType(C),$=U===zF.MongodbCommandType.UNKNOWN?"command":U,E=A.tracer.startSpan(`mongodb.${$}`,{kind:h0.SpanKind.CLIENT}),K=U===zF.MongodbCommandType.UNKNOWN?void 0:U;A._populateV3Attributes(E,J,Y,C,K);let I=A._patchEnd(E,Z);if(typeof X==="function")return Q.call(this,Y,J,C,I);else return Q.call(this,Y,J,C,X,I)}}}_getV4PatchCommandCallback(){let A=this;return(Q)=>{return function(Y,J,C,X){let G=h0.trace.getSpan(h0.context.active()),F=A._checkSkipInstrumentation(G),W=X,Z=Object.keys(J)[0];if(typeof J!=="object"||J.ismaster||J.hello)return Q.call(this,Y,J,C,X);let U=void 0;if(!F)U=A.tracer.startSpan(`mongodb.${Z}`,{kind:h0.SpanKind.CLIENT}),A._populateV4Attributes(U,this,Y,J,Z);let $=A._patchEnd(U,W,this.id,Z);return Q.call(this,Y,J,C,$)}}}_getV4PatchCommandPromise(){let A=this;return(Q)=>{return function(...Y){let[J,C]=Y,X=h0.trace.getSpan(h0.context.active()),G=A._checkSkipInstrumentation(X),F=Object.keys(C)[0],W=()=>{return};if(typeof C!=="object"||C.ismaster||C.hello)return Q.apply(this,Y);let Z=void 0;if(!G)Z=A.tracer.startSpan(`mongodb.${F}`,{kind:h0.SpanKind.CLIENT}),A._populateV4Attributes(Z,this,J,C,F);let U=A._patchEnd(Z,W,this.id,F),$=Q.apply(this,Y);return $.then((E)=>U(null,E),(E)=>U(E)),$}}}_getV3PatchFind(){let A=this;return(Q)=>{return function(Y,J,C,X,G,F){let W=h0.trace.getSpan(h0.context.active()),Z=A._checkSkipInstrumentation(W),U=typeof G==="function"?G:F;if(Z||typeof U!=="function"||typeof C!=="object")if(typeof G==="function")return Q.call(this,Y,J,C,X,G);else return Q.call(this,Y,J,C,X,G,F);let $=A.tracer.startSpan("mongodb.find",{kind:h0.SpanKind.CLIENT});A._populateV3Attributes($,J,Y,C,"find");let E=A._patchEnd($,U);if(typeof G==="function")return Q.call(this,Y,J,C,X,E);else return Q.call(this,Y,J,C,X,G,E)}}}_getV3PatchCursor(){let A=this;return(Q)=>{return function(Y,J,C,X,G,F){let W=h0.trace.getSpan(h0.context.active()),Z=A._checkSkipInstrumentation(W),U=typeof G==="function"?G:F;if(Z||typeof U!=="function")if(typeof G==="function")return Q.call(this,Y,J,C,X,G);else return Q.call(this,Y,J,C,X,G,F);let $=A.tracer.startSpan("mongodb.getMore",{kind:h0.SpanKind.CLIENT});A._populateV3Attributes($,J,Y,C.cmd,"getMore");let E=A._patchEnd($,U);if(typeof G==="function")return Q.call(this,Y,J,C,X,E);else return Q.call(this,Y,J,C,X,G,E)}}}static _getCommandType(A){if(A.createIndexes!==void 0)return zF.MongodbCommandType.CREATE_INDEXES;else if(A.findandmodify!==void 0)return zF.MongodbCommandType.FIND_AND_MODIFY;else if(A.ismaster!==void 0)return zF.MongodbCommandType.IS_MASTER;else if(A.count!==void 0)return zF.MongodbCommandType.COUNT;else if(A.aggregate!==void 0)return zF.MongodbCommandType.AGGREGATE;else return zF.MongodbCommandType.UNKNOWN}_populateV4Attributes(A,Q,B,Y,J){let C,X;if(Q){let F=typeof Q.address==="string"?Q.address.split(":"):"";if(F.length===2)C=F[0],X=F[1]}let G;if((Y===null||Y===void 0?void 0:Y.documents)&&Y.documents[0])G=Y.documents[0];else if(Y===null||Y===void 0?void 0:Y.cursors)G=Y.cursors;else G=Y;this._addAllSpanAttributes(A,B.db,B.collection,C,X,G,J)}_populateV3Attributes(A,Q,B,Y,J){var C,X,G,F,W,Z,U,$;let E,K;if(B&&B.s){if(E=(X=(C=B.s.options)===null||C===void 0?void 0:C.host)!==null&&X!==void 0?X:B.s.host,K=(W=(F=(G=B.s.options)===null||G===void 0?void 0:G.port)!==null&&F!==void 0?F:B.s.port)===null||W===void 0?void 0:W.toString(),E==null||K==null){let D=(Z=B.description)===null||Z===void 0?void 0:Z.address;if(D){let L=D.split(":");E=L[0],K=L[1]}}}let[I,V]=Q.toString().split("."),H=($=(U=Y===null||Y===void 0?void 0:Y.query)!==null&&U!==void 0?U:Y===null||Y===void 0?void 0:Y.q)!==null&&$!==void 0?$:Y;this._addAllSpanAttributes(A,I,V,E,K,H,J)}_addAllSpanAttributes(A,Q,B,Y,J,C,X){if(A.setAttributes({[U6.SEMATTRS_DB_SYSTEM]:U6.DBSYSTEMVALUES_MONGODB,[U6.SEMATTRS_DB_NAME]:Q,[U6.SEMATTRS_DB_MONGODB_COLLECTION]:B,[U6.SEMATTRS_DB_OPERATION]:X,[U6.SEMATTRS_DB_CONNECTION_STRING]:`mongodb://${Y}:${J}/${Q}`}),Y&&J){A.setAttribute(U6.SEMATTRS_NET_PEER_NAME,Y);let W=parseInt(J,10);if(!isNaN(W))A.setAttribute(U6.SEMATTRS_NET_PEER_PORT,W)}if(!C)return;let{dbStatementSerializer:G}=this.getConfig(),F=typeof G==="function"?G:this._defaultDbStatementSerializer.bind(this);(0,V0.safeExecuteInTheMiddle)(()=>{let W=F(C);A.setAttribute(U6.SEMATTRS_DB_STATEMENT,W)},(W)=>{if(W)this._diag.error("Error running dbStatementSerializer hook",W)},!0)}_defaultDbStatementSerializer(A){let{enhancedDatabaseReporting:Q}=this.getConfig(),B=Q?A:this._scrubStatement(A);return JSON.stringify(B)}_scrubStatement(A){if(Array.isArray(A))return A.map((Q)=>this._scrubStatement(Q));if(typeof A==="object"&&A!==null)return Object.fromEntries(Object.entries(A).map(([Q,B])=>[Q,this._scrubStatement(B)]));return"?"}_handleExecutionResult(A,Q){let{responseHook:B}=this.getConfig();if(typeof B==="function")(0,V0.safeExecuteInTheMiddle)(()=>{B(A,{data:Q})},(Y)=>{if(Y)this._diag.error("Error running response hook",Y)},!0)}_patchEnd(A,Q,B,Y){let J=h0.context.active(),C=this;return function(...G){let F=G[0];if(A){if(F instanceof Error)A===null||A===void 0||A.setStatus({code:h0.SpanStatusCode.ERROR,message:F.message});else{let W=G[1];C._handleExecutionResult(A,W)}A.end()}return h0.context.with(J,()=>{if(Y==="endSessions")C._connectionsUsage.add(-1,{state:"idle","pool.name":C._poolName});return Q.apply(this,G)})}}setPoolName(A){var Q,B;let Y=(Q=A.hostAddress)===null||Q===void 0?void 0:Q.host,J=(B=A.hostAddress)===null||B===void 0?void 0:B.port,C=A.dbName,X=`mongodb://${Y}:${J}/${C}`;this._poolName=X}_checkSkipInstrumentation(A){return this.getConfig().requireParentSpan===!0&&A===void 0}}UKQ.MongoDBInstrumentation=Gn});var IKQ=R((VKQ)=>{Object.defineProperty(VKQ,"__esModule",{value:!0});VKQ.MongodbCommandType=void 0;var oL0;(function(A){A.CREATE_INDEXES="createIndexes",A.FIND_AND_MODIFY="findAndModify",A.IS_MASTER="isMaster",A.COUNT="count",A.UNKNOWN="unknown"})(oL0=VKQ.MongodbCommandType||(VKQ.MongodbCommandType={}))});var DKQ=R((RF)=>{var tL0=RF&&RF.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),HKQ=RF&&RF.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))tL0(Q,A,B)};Object.defineProperty(RF,"__esModule",{value:!0});HKQ(KKQ(),RF);HKQ(IKQ(),RF)});var wKQ=R((zKQ)=>{Object.defineProperty(zKQ,"__esModule",{value:!0});zKQ.handleCallbackResponse=zKQ.handlePromiseResponse=zKQ.getAttributesFromCollection=void 0;var qKQ=yA(),Jq0=NB(),OL=uB();function Cq0(A){return{[OL.SEMATTRS_DB_MONGODB_COLLECTION]:A.name,[OL.SEMATTRS_DB_NAME]:A.conn.name,[OL.SEMATTRS_DB_USER]:A.conn.user,[OL.SEMATTRS_NET_PEER_NAME]:A.conn.host,[OL.SEMATTRS_NET_PEER_PORT]:A.conn.port}}zKQ.getAttributesFromCollection=Cq0;function MKQ(A,Q={}){A.recordException(Q),A.setStatus({code:qKQ.SpanStatusCode.ERROR,message:`${Q.message} ${Q.code?` -Mongoose Error Code: ${Q.code}`:""}`})}function $n(A,Q,B,Y=void 0){if(!B)return;(0,Jq0.safeExecuteInTheMiddle)(()=>B(A,{moduleVersion:Y,response:Q}),(J)=>{if(J)qKQ.diag.error("mongoose instrumentation: responseHook error",J)},!0)}function Xq0(A,Q,B,Y=void 0){if(!(A instanceof Promise))return $n(Q,A,B,Y),Q.end(),A;return A.then((J)=>{return $n(Q,J,B,Y),J}).catch((J)=>{throw MKQ(Q,J),J}).finally(()=>Q.end())}zKQ.handlePromiseResponse=Xq0;function Gq0(A,Q,B,Y,J,C,X=void 0){let G=0;if(J.length===2)G=1;return J[G]=(F,W)=>{return F?MKQ(Y,F):$n(Y,W,C,X),Y.end(),A(F,W)},Q.apply(B,J)}zKQ.handleCallbackResponse=Gq0});var PKQ=R((jKQ)=>{Object.defineProperty(jKQ,"__esModule",{value:!0});jKQ.PACKAGE_NAME=jKQ.PACKAGE_VERSION=void 0;jKQ.PACKAGE_VERSION="0.46.1";jKQ.PACKAGE_NAME="@opentelemetry/instrumentation-mongoose"});var hKQ=R((yKQ)=>{Object.defineProperty(yKQ,"__esModule",{value:!0});yKQ.MongooseInstrumentation=yKQ._STORED_PARENT_SPAN=void 0;var E9=yA(),$q0=MB(),Un=wKQ(),TKQ=NB(),SKQ=PKQ(),PL=uB(),yP=["deleteOne","deleteMany","find","findOne","estimatedDocumentCount","countDocuments","distinct","where","$where","findOneAndUpdate","findOneAndDelete","findOneAndReplace"],Uq0=["remove","count","findOneAndRemove",...yP],Eq0=["count","findOneAndRemove",...yP],Kq0=[...yP];function kKQ(A){if(!A)return yP;else if(A.startsWith("6.")||A.startsWith("5."))return Uq0;else if(A.startsWith("7."))return Eq0;else return Kq0}function _KQ(A){return A&&(A.startsWith("5.")||A.startsWith("6."))||!1}yKQ._STORED_PARENT_SPAN=Symbol("stored-parent-span");class vKQ extends TKQ.InstrumentationBase{constructor(A={}){super(SKQ.PACKAGE_NAME,SKQ.PACKAGE_VERSION,A)}init(){return new TKQ.InstrumentationNodeModuleDefinition("mongoose",[">=5.9.7 <9"],this.patch.bind(this),this.unpatch.bind(this))}patch(A,Q){if(this._wrap(A.Model.prototype,"save",this.patchOnModelMethods("save",Q)),A.Model.prototype.$save=A.Model.prototype.save,_KQ(Q))this._wrap(A.Model.prototype,"remove",this.patchOnModelMethods("remove",Q));return this._wrap(A.Query.prototype,"exec",this.patchQueryExec(Q)),this._wrap(A.Aggregate.prototype,"exec",this.patchAggregateExec(Q)),kKQ(Q).forEach((Y)=>{this._wrap(A.Query.prototype,Y,this.patchAndCaptureSpanContext(Y))}),this._wrap(A.Model,"aggregate",this.patchModelAggregate()),A}unpatch(A,Q){let B=kKQ(Q);if(this._unwrap(A.Model.prototype,"save"),A.Model.prototype.$save=A.Model.prototype.save,_KQ(Q))this._unwrap(A.Model.prototype,"remove");this._unwrap(A.Query.prototype,"exec"),this._unwrap(A.Aggregate.prototype,"exec"),B.forEach((Y)=>{this._unwrap(A.Query.prototype,Y)}),this._unwrap(A.Model,"aggregate")}patchAggregateExec(A){let Q=this;return(B)=>{return function(J){var C;if(Q.getConfig().requireParentSpan&&E9.trace.getSpan(E9.context.active())===void 0)return B.apply(this,arguments);let X=this[yKQ._STORED_PARENT_SPAN],G={},{dbStatementSerializer:F}=Q.getConfig();if(F)G[PL.SEMATTRS_DB_STATEMENT]=F("aggregate",{options:this.options,aggregatePipeline:this._pipeline});let W=Q._startSpan(this._model.collection,(C=this._model)===null||C===void 0?void 0:C.modelName,"aggregate",G,X);return Q._handleResponse(W,B,this,arguments,J,A)}}}patchQueryExec(A){let Q=this;return(B)=>{return function(J){if(Q.getConfig().requireParentSpan&&E9.trace.getSpan(E9.context.active())===void 0)return B.apply(this,arguments);let C=this[yKQ._STORED_PARENT_SPAN],X={},{dbStatementSerializer:G}=Q.getConfig();if(G)X[PL.SEMATTRS_DB_STATEMENT]=G(this.op,{condition:this._conditions,updates:this._update,options:this.options,fields:this._fields});let F=Q._startSpan(this.mongooseCollection,this.model.modelName,this.op,X,C);return Q._handleResponse(F,B,this,arguments,J,A)}}}patchOnModelMethods(A,Q){let B=this;return(Y)=>{return function(C,X){if(B.getConfig().requireParentSpan&&E9.trace.getSpan(E9.context.active())===void 0)return Y.apply(this,arguments);let G={document:this};if(C&&!(C instanceof Function))G.options=C;let F={},{dbStatementSerializer:W}=B.getConfig();if(W)F[PL.SEMATTRS_DB_STATEMENT]=W(A,G);let Z=B._startSpan(this.constructor.collection,this.constructor.modelName,A,F);if(C instanceof Function)X=C,C=void 0;return B._handleResponse(Z,Y,this,arguments,X,Q)}}}patchModelAggregate(){let A=this;return(Q)=>{return function(){let Y=E9.trace.getSpan(E9.context.active()),J=A._callOriginalFunction(()=>Q.apply(this,arguments));if(J)J[yKQ._STORED_PARENT_SPAN]=Y;return J}}}patchAndCaptureSpanContext(A){let Q=this;return(B)=>{return function(){return this[yKQ._STORED_PARENT_SPAN]=E9.trace.getSpan(E9.context.active()),Q._callOriginalFunction(()=>B.apply(this,arguments))}}}_startSpan(A,Q,B,Y,J){return this.tracer.startSpan(`mongoose.${Q}.${B}`,{kind:E9.SpanKind.CLIENT,attributes:Object.assign(Object.assign(Object.assign({},Y),(0,Un.getAttributesFromCollection)(A)),{[PL.SEMATTRS_DB_OPERATION]:B,[PL.SEMATTRS_DB_SYSTEM]:"mongoose"})},J?E9.trace.setSpan(E9.context.active(),J):void 0)}_handleResponse(A,Q,B,Y,J,C=void 0){let X=this;if(J instanceof Function)return X._callOriginalFunction(()=>(0,Un.handleCallbackResponse)(J,Q,B,A,Y,X.getConfig().responseHook,C));else{let G=X._callOriginalFunction(()=>Q.apply(B,Y));return(0,Un.handlePromiseResponse)(G,A,X.getConfig().responseHook,C)}}_callOriginalFunction(A){if(this.getConfig().suppressInternalInstrumentation)return E9.context.with((0,$q0.suppressTracing)(E9.context.active()),A);else return A()}}yKQ.MongooseInstrumentation=vKQ});var fKQ=R((xKQ)=>{Object.defineProperty(xKQ,"__esModule",{value:!0})});var mKQ=R((wF)=>{var Vq0=wF&&wF.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),bKQ=wF&&wF.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))Vq0(Q,A,B)};Object.defineProperty(wF,"__esModule",{value:!0});bKQ(hKQ(),wF);bKQ(fKQ(),wF)});var lKQ=R((cKQ)=>{Object.defineProperty(cKQ,"__esModule",{value:!0});cKQ.AttributeNames=void 0;var Hq0;(function(A){A.MYSQL_VALUES="db.mysql.values"})(Hq0=cKQ.AttributeNames||(cKQ.AttributeNames={}))});var sKQ=R((iKQ)=>{Object.defineProperty(iKQ,"__esModule",{value:!0});iKQ.getPoolName=iKQ.arrayStringifyHelper=iKQ.getSpanName=iKQ.getDbValues=iKQ.getDbStatement=iKQ.getConnectionAttributes=void 0;var E6=uB();function Dq0(A){let{host:Q,port:B,database:Y,user:J}=Nq0(A),C=parseInt(B,10);if(!isNaN(C))return{[E6.SEMATTRS_NET_PEER_NAME]:Q,[E6.SEMATTRS_NET_PEER_PORT]:C,[E6.SEMATTRS_DB_CONNECTION_STRING]:pKQ(Q,B,Y),[E6.SEMATTRS_DB_NAME]:Y,[E6.SEMATTRS_DB_USER]:J};return{[E6.SEMATTRS_NET_PEER_NAME]:Q,[E6.SEMATTRS_DB_CONNECTION_STRING]:pKQ(Q,B,Y),[E6.SEMATTRS_DB_NAME]:Y,[E6.SEMATTRS_DB_USER]:J}}iKQ.getConnectionAttributes=Dq0;function Nq0(A){let{host:Q,port:B,database:Y,user:J}=A&&A.connectionConfig||A||{};return{host:Q,port:B,database:Y,user:J}}function pKQ(A,Q,B){let Y=`jdbc:mysql://${A||"localhost"}`;if(typeof Q==="number")Y+=`:${Q}`;if(typeof B==="string")Y+=`/${B}`;return Y}function Lq0(A){if(typeof A==="string")return A;else return A.sql}iKQ.getDbStatement=Lq0;function qq0(A,Q){if(typeof A==="string")return Vn(Q);else return Vn(Q||A.values)}iKQ.getDbValues=qq0;function Mq0(A){let Q=typeof A==="object"?A.sql:A,B=Q===null||Q===void 0?void 0:Q.indexOf(" ");if(typeof B==="number"&&B!==-1)return Q===null||Q===void 0?void 0:Q.substring(0,B);return Q}iKQ.getSpanName=Mq0;function Vn(A){if(A)return`[${A.toString()}]`;return""}iKQ.arrayStringifyHelper=Vn;function zq0(A){let Q=A.config.connectionConfig,B="";if(B+=Q.host?`host: '${Q.host}', `:"",B+=Q.port?`port: ${Q.port}, `:"",B+=Q.database?`database: '${Q.database}', `:"",B+=Q.user?`user: '${Q.user}'`:"",!Q.user)B=B.substring(0,B.length-2);return B.trim()}iKQ.getPoolName=zq0});var oKQ=R((rKQ)=>{Object.defineProperty(rKQ,"__esModule",{value:!0});rKQ.PACKAGE_NAME=rKQ.PACKAGE_VERSION=void 0;rKQ.PACKAGE_VERSION="0.45.1";rKQ.PACKAGE_NAME="@opentelemetry/instrumentation-mysql"});var QVQ=R((eKQ)=>{Object.defineProperty(eKQ,"__esModule",{value:!0});eKQ.MySQLInstrumentation=void 0;var i9=yA(),zK=NB(),In=uB(),Sq0=lKQ(),RK=sKQ(),tKQ=oKQ();class hP extends zK.InstrumentationBase{constructor(A={}){super(tKQ.PACKAGE_NAME,tKQ.PACKAGE_VERSION,A);this._setMetricInstruments()}setMeterProvider(A){super.setMeterProvider(A),this._setMetricInstruments()}_setMetricInstruments(){this._connectionsUsage=this.meter.createUpDownCounter("db.client.connections.usage",{description:"The number of connections that are currently in state described by the state attribute.",unit:"{connection}"})}init(){return[new zK.InstrumentationNodeModuleDefinition("mysql",[">=2.0.0 <3"],(A)=>{if((0,zK.isWrapped)(A.createConnection))this._unwrap(A,"createConnection");if(this._wrap(A,"createConnection",this._patchCreateConnection()),(0,zK.isWrapped)(A.createPool))this._unwrap(A,"createPool");if(this._wrap(A,"createPool",this._patchCreatePool()),(0,zK.isWrapped)(A.createPoolCluster))this._unwrap(A,"createPoolCluster");return this._wrap(A,"createPoolCluster",this._patchCreatePoolCluster()),A},(A)=>{if(A===void 0)return;this._unwrap(A,"createConnection"),this._unwrap(A,"createPool"),this._unwrap(A,"createPoolCluster")})]}_patchCreateConnection(){return(A)=>{let Q=this;return function(Y){let J=A(...arguments);return Q._wrap(J,"query",Q._patchQuery(J)),J}}}_patchCreatePool(){return(A)=>{let Q=this;return function(Y){let J=A(...arguments);return Q._wrap(J,"query",Q._patchQuery(J)),Q._wrap(J,"getConnection",Q._patchGetConnection(J)),Q._wrap(J,"end",Q._patchPoolEnd(J)),Q._setPoolcallbacks(J,Q,""),J}}}_patchPoolEnd(A){return(Q)=>{let B=this;return function(J){let C=A._allConnections.length,X=A._freeConnections.length,G=C-X,F=(0,RK.getPoolName)(A);B._connectionsUsage.add(-G,{state:"used",name:F}),B._connectionsUsage.add(-X,{state:"idle",name:F}),Q.apply(A,arguments)}}}_patchCreatePoolCluster(){return(A)=>{let Q=this;return function(Y){let J=A(...arguments);return Q._wrap(J,"getConnection",Q._patchGetConnection(J)),Q._wrap(J,"add",Q._patchAdd(J)),J}}}_patchAdd(A){return(Q)=>{let B=this;return function(J,C){if(!B._enabled)return B._unwrap(A,"add"),Q.apply(A,arguments);Q.apply(A,arguments);let X=A._nodes;if(X){let G=typeof J==="object"?"CLUSTER::"+A._lastId:String(J),F=X[G].pool;B._setPoolcallbacks(F,B,J)}}}}_patchGetConnection(A){return(Q)=>{let B=this;return function(J,C,X){if(!B._enabled)return B._unwrap(A,"getConnection"),Q.apply(A,arguments);if(arguments.length===1&&typeof J==="function"){let G=B._getConnectionCallbackPatchFn(J);return Q.call(A,G)}if(arguments.length===2&&typeof C==="function"){let G=B._getConnectionCallbackPatchFn(C);return Q.call(A,J,G)}if(arguments.length===3&&typeof X==="function"){let G=B._getConnectionCallbackPatchFn(X);return Q.call(A,J,C,G)}return Q.apply(A,arguments)}}}_getConnectionCallbackPatchFn(A){let Q=this,B=i9.context.active();return function(Y,J){if(J){if(!(0,zK.isWrapped)(J.query))Q._wrap(J,"query",Q._patchQuery(J))}if(typeof A==="function")i9.context.with(B,A,this,Y,J)}}_patchQuery(A){return(Q)=>{let B=this;return function(Y,J,C){if(!B._enabled)return B._unwrap(A,"query"),Q.apply(A,arguments);let X=B.tracer.startSpan((0,RK.getSpanName)(Y),{kind:i9.SpanKind.CLIENT,attributes:Object.assign(Object.assign({},hP.COMMON_ATTRIBUTES),(0,RK.getConnectionAttributes)(A.config))});if(X.setAttribute(In.SEMATTRS_DB_STATEMENT,(0,RK.getDbStatement)(Y)),B.getConfig().enhancedDatabaseReporting){let W;if(Array.isArray(J))W=J;else if(arguments[2])W=[J];X.setAttribute(Sq0.AttributeNames.MYSQL_VALUES,(0,RK.getDbValues)(Y,W))}let G=Array.from(arguments).findIndex((W)=>typeof W==="function"),F=i9.context.active();if(G===-1){let W=i9.context.with(i9.trace.setSpan(i9.context.active(),X),()=>{return Q.apply(A,arguments)});return i9.context.bind(F,W),W.on("error",(Z)=>X.setStatus({code:i9.SpanStatusCode.ERROR,message:Z.message})).on("end",()=>{X.end()})}else return B._wrap(arguments,G,B._patchCallbackQuery(X,F)),i9.context.with(i9.trace.setSpan(i9.context.active(),X),()=>{return Q.apply(A,arguments)})}}}_patchCallbackQuery(A,Q){return(B)=>{return function(Y,J,C){if(Y)A.setStatus({code:i9.SpanStatusCode.ERROR,message:Y.message});return A.end(),i9.context.with(Q,()=>B(...arguments))}}}_setPoolcallbacks(A,Q,B){let Y=B||(0,RK.getPoolName)(A);A.on("connection",(J)=>{Q._connectionsUsage.add(1,{state:"idle",name:Y})}),A.on("acquire",(J)=>{Q._connectionsUsage.add(-1,{state:"idle",name:Y}),Q._connectionsUsage.add(1,{state:"used",name:Y})}),A.on("release",(J)=>{Q._connectionsUsage.add(-1,{state:"used",name:Y}),Q._connectionsUsage.add(1,{state:"idle",name:Y})})}}eKQ.MySQLInstrumentation=hP;hP.COMMON_ATTRIBUTES={[In.SEMATTRS_DB_SYSTEM]:In.DBSYSTEMVALUES_MYSQL}});var YVQ=R((BVQ)=>{Object.defineProperty(BVQ,"__esModule",{value:!0})});var CVQ=R((jF)=>{var kq0=jF&&jF.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),JVQ=jF&&jF.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))kq0(Q,A,B)};Object.defineProperty(jF,"__esModule",{value:!0});JVQ(QVQ(),jF);JVQ(YVQ(),jF)});var Nn=R((FVQ)=>{Object.defineProperty(FVQ,"__esModule",{value:!0});FVQ.addSqlCommenterComment=void 0;var Dn=yA(),vq0=MB();function yq0(A){let Q=A.indexOf("--");if(Q>=0)return!0;if(A.indexOf("/*")<0)return!1;let Y=A.indexOf("*/");return Q`%${Q.charCodeAt(0).toString(16).toUpperCase()}`)}function hq0(A,Q){if(typeof Q!=="string"||Q.length===0)return Q;if(yq0(Q))return Q;let B=new vq0.W3CTraceContextPropagator,Y={};B.inject(Dn.trace.setSpan(Dn.ROOT_CONTEXT,A),Y,Dn.defaultTextMapSetter);let J=Object.keys(Y).sort();if(J.length===0)return Q;let C=J.map((X)=>{let G=gq0(Y[X]);return`${X}='${G}'`}).join(",");return`${Q} /*${C}*/`}FVQ.addSqlCommenterComment=hq0});var EVQ=R(($VQ)=>{Object.defineProperty($VQ,"__esModule",{value:!0});$VQ.getConnectionPrototypeToInstrument=$VQ.once=$VQ.getSpanName=$VQ.getDbStatement=$VQ.getConnectionAttributes=void 0;var K6=uB();function xq0(A){let{host:Q,port:B,database:Y,user:J}=fq0(A),C=parseInt(B,10);if(!isNaN(C))return{[K6.SEMATTRS_NET_PEER_NAME]:Q,[K6.SEMATTRS_NET_PEER_PORT]:C,[K6.SEMATTRS_DB_CONNECTION_STRING]:ZVQ(Q,B,Y),[K6.SEMATTRS_DB_NAME]:Y,[K6.SEMATTRS_DB_USER]:J};return{[K6.SEMATTRS_NET_PEER_NAME]:Q,[K6.SEMATTRS_DB_CONNECTION_STRING]:ZVQ(Q,B,Y),[K6.SEMATTRS_DB_NAME]:Y,[K6.SEMATTRS_DB_USER]:J}}$VQ.getConnectionAttributes=xq0;function fq0(A){let{host:Q,port:B,database:Y,user:J}=A&&A.connectionConfig||A||{};return{host:Q,port:B,database:Y,user:J}}function ZVQ(A,Q,B){let Y=`jdbc:mysql://${A||"localhost"}`;if(typeof Q==="number")Y+=`:${Q}`;if(typeof B==="string")Y+=`/${B}`;return Y}function bq0(A,Q,B){if(!Q)return typeof A==="string"?A:A.sql;if(typeof A==="string")return B?Q(A,B):A;else return B||A.values?Q(A.sql,B||A.values):A.sql}$VQ.getDbStatement=bq0;function mq0(A){let Q=typeof A==="object"?A.sql:A,B=Q===null||Q===void 0?void 0:Q.indexOf(" ");if(typeof B==="number"&&B!==-1)return Q===null||Q===void 0?void 0:Q.substring(0,B);return Q}$VQ.getSpanName=mq0;var uq0=(A)=>{let Q=!1;return(...B)=>{if(Q)return;return Q=!0,A(...B)}};$VQ.once=uq0;function dq0(A){let Q=A.prototype,B=Object.getPrototypeOf(Q);if(typeof(B===null||B===void 0?void 0:B.query)==="function"&&typeof(B===null||B===void 0?void 0:B.execute)==="function")return B;return Q}$VQ.getConnectionPrototypeToInstrument=dq0});var IVQ=R((KVQ)=>{Object.defineProperty(KVQ,"__esModule",{value:!0});KVQ.PACKAGE_NAME=KVQ.PACKAGE_VERSION=void 0;KVQ.PACKAGE_VERSION="0.45.2";KVQ.PACKAGE_NAME="@opentelemetry/instrumentation-mysql2"});var MVQ=R((LVQ)=>{Object.defineProperty(LVQ,"__esModule",{value:!0});LVQ.MySQL2Instrumentation=void 0;var HVQ=yA(),V$=NB(),qn=uB(),DVQ=Nn(),wK=EVQ(),NVQ=IVQ(),Ln=[">=1.4.2 <4"];class fP extends V$.InstrumentationBase{constructor(A={}){super(NVQ.PACKAGE_NAME,NVQ.PACKAGE_VERSION,A)}init(){let A;function Q(J){if(!A&&J.format)A=J.format}let B=(J)=>{if((0,V$.isWrapped)(J.query))this._unwrap(J,"query");if(this._wrap(J,"query",this._patchQuery(A,!1)),(0,V$.isWrapped)(J.execute))this._unwrap(J,"execute");this._wrap(J,"execute",this._patchQuery(A,!0))},Y=(J)=>{this._unwrap(J,"query"),this._unwrap(J,"execute")};return[new V$.InstrumentationNodeModuleDefinition("mysql2",Ln,(J)=>{return Q(J),J},()=>{},[new V$.InstrumentationNodeModuleFile("mysql2/promise.js",Ln,(J)=>{return Q(J),J},()=>{}),new V$.InstrumentationNodeModuleFile("mysql2/lib/connection.js",Ln,(J)=>{let C=(0,wK.getConnectionPrototypeToInstrument)(J);return B(C),J},(J)=>{if(J===void 0)return;let C=(0,wK.getConnectionPrototypeToInstrument)(J);Y(C)})])]}_patchQuery(A,Q){return(B)=>{let Y=this;return function(J,C,X){let G;if(Array.isArray(C))G=C;else if(arguments[2])G=[C];let F=Y.tracer.startSpan((0,wK.getSpanName)(J),{kind:HVQ.SpanKind.CLIENT,attributes:Object.assign(Object.assign(Object.assign({},fP.COMMON_ATTRIBUTES),(0,wK.getConnectionAttributes)(this.config)),{[qn.SEMATTRS_DB_STATEMENT]:(0,wK.getDbStatement)(J,A,G)})});if(!Q&&Y.getConfig().addSqlCommenterCommentToQueries)arguments[0]=J=typeof J==="string"?(0,DVQ.addSqlCommenterComment)(F,J):Object.assign(J,{sql:(0,DVQ.addSqlCommenterComment)(F,J.sql)});let W=(0,wK.once)((Z,U)=>{if(Z)F.setStatus({code:HVQ.SpanStatusCode.ERROR,message:Z.message});else{let{responseHook:$}=Y.getConfig();if(typeof $==="function")(0,V$.safeExecuteInTheMiddle)(()=>{$(F,{queryResults:U})},(E)=>{if(E)Y._diag.warn("Failed executing responseHook",E)},!0)}F.end()});if(arguments.length===1){if(typeof J.onResult==="function")Y._wrap(J,"onResult",Y._patchCallbackQuery(W));let Z=B.apply(this,arguments);return Z.once("error",(U)=>{W(U)}).once("result",(U)=>{W(void 0,U)}),Z}if(typeof arguments[1]==="function")Y._wrap(arguments,1,Y._patchCallbackQuery(W));else if(typeof arguments[2]==="function")Y._wrap(arguments,2,Y._patchCallbackQuery(W));return B.apply(this,arguments)}}}_patchCallbackQuery(A){return(Q)=>{return function(B,Y,J){return A(B,Y),Q(...arguments)}}}}LVQ.MySQL2Instrumentation=fP;fP.COMMON_ATTRIBUTES={[qn.SEMATTRS_DB_SYSTEM]:qn.DBSYSTEMVALUES_MYSQL}});var RVQ=R((zVQ)=>{Object.defineProperty(zVQ,"__esModule",{value:!0})});var jVQ=R((OF)=>{var sq0=OF&&OF.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),wVQ=OF&&OF.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))sq0(Q,A,B)};Object.defineProperty(OF,"__esModule",{value:!0});wVQ(MVQ(),OF);wVQ(RVQ(),OF)});var kVQ=R((TVQ)=>{Object.defineProperty(TVQ,"__esModule",{value:!0});TVQ.endSpan=void 0;var aq0=yA(),oq0=(A,Q)=>{if(Q)A.recordException(Q),A.setStatus({code:aq0.SpanStatusCode.ERROR,message:Q.message});A.end()};TVQ.endSpan=oq0});var zn=R((_VQ)=>{Object.defineProperty(_VQ,"__esModule",{value:!0});_VQ.defaultDbStatementSerializer=void 0;var tq0=[{regex:/^ECHO/i,args:0},{regex:/^(LPUSH|MSET|PFA|PUBLISH|RPUSH|SADD|SET|SPUBLISH|XADD|ZADD)/i,args:1},{regex:/^(HSET|HMSET|LSET|LINSERT)/i,args:2},{regex:/^(ACL|BIT|B[LRZ]|CLIENT|CLUSTER|CONFIG|COMMAND|DECR|DEL|EVAL|EX|FUNCTION|GEO|GET|HINCR|HMGET|HSCAN|INCR|L[TRLM]|MEMORY|P[EFISTU]|RPOP|S[CDIMORSU]|XACK|X[CDGILPRT]|Z[CDILMPRS])/i,args:-1}],eq0=(A,Q)=>{var B,Y;if(Array.isArray(Q)&&Q.length){let J=(Y=(B=tq0.find(({regex:X})=>{return X.test(A)}))===null||B===void 0?void 0:B.args)!==null&&Y!==void 0?Y:0,C=J>=0?Q.slice(0,J):Q;if(Q.length>C.length)C.push(`[${Q.length-J} other arguments]`);return`${A} ${C.join(" ")}`}return A};_VQ.defaultDbStatementSerializer=eq0});var hVQ=R((yVQ)=>{Object.defineProperty(yVQ,"__esModule",{value:!0});yVQ.PACKAGE_NAME=yVQ.PACKAGE_VERSION=void 0;yVQ.PACKAGE_VERSION="0.47.1";yVQ.PACKAGE_NAME="@opentelemetry/instrumentation-ioredis"});var cVQ=R((uVQ)=>{Object.defineProperty(uVQ,"__esModule",{value:!0});uVQ.IORedisInstrumentation=void 0;var PF=yA(),mP=NB(),l5=uB(),xVQ=NB(),SL=kVQ(),QM0=zn(),fVQ=hVQ(),bVQ={requireParentSpan:!0};class mVQ extends mP.InstrumentationBase{constructor(A={}){super(fVQ.PACKAGE_NAME,fVQ.PACKAGE_VERSION,Object.assign(Object.assign({},bVQ),A))}setConfig(A={}){super.setConfig(Object.assign(Object.assign({},bVQ),A))}init(){return[new mP.InstrumentationNodeModuleDefinition("ioredis",[">=2.0.0 <6"],(A,Q)=>{let B=A[Symbol.toStringTag]==="Module"?A.default:A;if((0,mP.isWrapped)(B.prototype.sendCommand))this._unwrap(B.prototype,"sendCommand");if(this._wrap(B.prototype,"sendCommand",this._patchSendCommand(Q)),(0,mP.isWrapped)(B.prototype.connect))this._unwrap(B.prototype,"connect");return this._wrap(B.prototype,"connect",this._patchConnection()),A},(A)=>{if(A===void 0)return;let Q=A[Symbol.toStringTag]==="Module"?A.default:A;this._unwrap(Q.prototype,"sendCommand"),this._unwrap(Q.prototype,"connect")})]}_patchSendCommand(A){return(Q)=>{return this._traceSendCommand(Q,A)}}_patchConnection(){return(A)=>{return this._traceConnection(A)}}_traceSendCommand(A,Q){let B=this;return function(Y){if(arguments.length<1||typeof Y!=="object")return A.apply(this,arguments);let J=B.getConfig(),C=J.dbStatementSerializer||QM0.defaultDbStatementSerializer,X=PF.trace.getSpan(PF.context.active())===void 0;if(J.requireParentSpan===!0&&X)return A.apply(this,arguments);let G=B.tracer.startSpan(Y.name,{kind:PF.SpanKind.CLIENT,attributes:{[l5.SEMATTRS_DB_SYSTEM]:l5.DBSYSTEMVALUES_REDIS,[l5.SEMATTRS_DB_STATEMENT]:C(Y.name,Y.args)}}),{requestHook:F}=J;if(F)(0,xVQ.safeExecuteInTheMiddle)(()=>F(G,{moduleVersion:Q,cmdName:Y.name,cmdArgs:Y.args}),(U)=>{if(U)PF.diag.error("ioredis instrumentation: request hook failed",U)},!0);let{host:W,port:Z}=this.options;G.setAttributes({[l5.SEMATTRS_NET_PEER_NAME]:W,[l5.SEMATTRS_NET_PEER_PORT]:Z,[l5.SEMATTRS_DB_CONNECTION_STRING]:`redis://${W}:${Z}`});try{let U=A.apply(this,arguments),$=Y.resolve;Y.resolve=function(K){(0,xVQ.safeExecuteInTheMiddle)(()=>{var I;return(I=J.responseHook)===null||I===void 0?void 0:I.call(J,G,Y.name,Y.args,K)},(I)=>{if(I)PF.diag.error("ioredis instrumentation: response hook failed",I)},!0),(0,SL.endSpan)(G,null),$(K)};let E=Y.reject;return Y.reject=function(K){(0,SL.endSpan)(G,K),E(K)},U}catch(U){throw(0,SL.endSpan)(G,U),U}}}_traceConnection(A){let Q=this;return function(){let B=PF.trace.getSpan(PF.context.active())===void 0;if(Q.getConfig().requireParentSpan===!0&&B)return A.apply(this,arguments);let Y=Q.tracer.startSpan("connect",{kind:PF.SpanKind.CLIENT,attributes:{[l5.SEMATTRS_DB_SYSTEM]:l5.DBSYSTEMVALUES_REDIS,[l5.SEMATTRS_DB_STATEMENT]:"connect"}}),{host:J,port:C}=this.options;Y.setAttributes({[l5.SEMATTRS_NET_PEER_NAME]:J,[l5.SEMATTRS_NET_PEER_PORT]:C,[l5.SEMATTRS_DB_CONNECTION_STRING]:`redis://${J}:${C}`});try{let X=A.apply(this,arguments);return(0,SL.endSpan)(Y,null),X}catch(X){throw(0,SL.endSpan)(Y,X),X}}}}uVQ.IORedisInstrumentation=mVQ});var pVQ=R((lVQ)=>{Object.defineProperty(lVQ,"__esModule",{value:!0})});var nVQ=R((TF)=>{var BM0=TF&&TF.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),iVQ=TF&&TF.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))BM0(Q,A,B)};Object.defineProperty(TF,"__esModule",{value:!0});iVQ(cVQ(),TF);iVQ(pVQ(),TF)});var aVQ=R((sVQ)=>{Object.defineProperty(sVQ,"__esModule",{value:!0});sVQ.getClientAttributes=void 0;var kL=uB();function YM0(A,Q){var B,Y;return{[kL.SEMATTRS_DB_SYSTEM]:kL.DBSYSTEMVALUES_REDIS,[kL.SEMATTRS_NET_PEER_NAME]:(B=Q===null||Q===void 0?void 0:Q.socket)===null||B===void 0?void 0:B.host,[kL.SEMATTRS_NET_PEER_PORT]:(Y=Q===null||Q===void 0?void 0:Q.socket)===null||Y===void 0?void 0:Y.port,[kL.SEMATTRS_DB_CONNECTION_STRING]:JM0(A,Q===null||Q===void 0?void 0:Q.url)}}sVQ.getClientAttributes=YM0;function JM0(A,Q){if(typeof Q!=="string"||!Q)return;try{let B=new URL(Q);return B.searchParams.delete("user_pwd"),B.username="",B.password="",B.href}catch(B){A.error("failed to sanitize redis connection url",B)}return}});var eVQ=R((oVQ)=>{Object.defineProperty(oVQ,"__esModule",{value:!0});oVQ.PACKAGE_NAME=oVQ.PACKAGE_VERSION=void 0;oVQ.PACKAGE_VERSION="0.46.1";oVQ.PACKAGE_NAME="@opentelemetry/instrumentation-redis-4"});var XIQ=R((JIQ)=>{Object.defineProperty(JIQ,"__esModule",{value:!0});JIQ.RedisInstrumentation=void 0;var p5=yA(),pY=NB(),AIQ=aVQ(),XM0=zn(),QIQ=eVQ(),GM0=uB(),_L=Symbol("opentelemetry.instrumentation.redis.open_spans"),BIQ=Symbol("opentelemetry.instrumentation.redis.multi_command_options"),YIQ={requireParentSpan:!1};class vL extends pY.InstrumentationBase{constructor(A={}){super(QIQ.PACKAGE_NAME,QIQ.PACKAGE_VERSION,Object.assign(Object.assign({},YIQ),A))}setConfig(A={}){super.setConfig(Object.assign(Object.assign({},YIQ),A))}init(){return[this._getInstrumentationNodeModuleDefinition("@redis/client"),this._getInstrumentationNodeModuleDefinition("@node-redis/client")]}_getInstrumentationNodeModuleDefinition(A){let Q=new pY.InstrumentationNodeModuleFile(`${A}/dist/lib/commander.js`,["^1.0.0"],(J,C)=>{let X=J.transformCommandArguments;if(!X)return this._diag.error("internal instrumentation error, missing transformCommandArguments function"),J;let G=(C===null||C===void 0?void 0:C.startsWith("1.0."))?"extendWithCommands":"attachCommands";if((0,pY.isWrapped)(J===null||J===void 0?void 0:J[G]))this._unwrap(J,G);return this._wrap(J,G,this._getPatchExtendWithCommands(X)),J},(J)=>{if((0,pY.isWrapped)(J===null||J===void 0?void 0:J.extendWithCommands))this._unwrap(J,"extendWithCommands");if((0,pY.isWrapped)(J===null||J===void 0?void 0:J.attachCommands))this._unwrap(J,"attachCommands")}),B=new pY.InstrumentationNodeModuleFile(`${A}/dist/lib/client/multi-command.js`,["^1.0.0"],(J)=>{var C;let X=(C=J===null||J===void 0?void 0:J.default)===null||C===void 0?void 0:C.prototype;if((0,pY.isWrapped)(X===null||X===void 0?void 0:X.exec))this._unwrap(X,"exec");if(this._wrap(X,"exec",this._getPatchMultiCommandsExec()),(0,pY.isWrapped)(X===null||X===void 0?void 0:X.addCommand))this._unwrap(X,"addCommand");return this._wrap(X,"addCommand",this._getPatchMultiCommandsAddCommand()),J},(J)=>{var C;let X=(C=J===null||J===void 0?void 0:J.default)===null||C===void 0?void 0:C.prototype;if((0,pY.isWrapped)(X===null||X===void 0?void 0:X.exec))this._unwrap(X,"exec");if((0,pY.isWrapped)(X===null||X===void 0?void 0:X.addCommand))this._unwrap(X,"addCommand")}),Y=new pY.InstrumentationNodeModuleFile(`${A}/dist/lib/client/index.js`,["^1.0.0"],(J)=>{var C;let X=(C=J===null||J===void 0?void 0:J.default)===null||C===void 0?void 0:C.prototype;if(X===null||X===void 0?void 0:X.multi){if((0,pY.isWrapped)(X===null||X===void 0?void 0:X.multi))this._unwrap(X,"multi");this._wrap(X,"multi",this._getPatchRedisClientMulti())}if(X===null||X===void 0?void 0:X.MULTI){if((0,pY.isWrapped)(X===null||X===void 0?void 0:X.MULTI))this._unwrap(X,"MULTI");this._wrap(X,"MULTI",this._getPatchRedisClientMulti())}if((0,pY.isWrapped)(X===null||X===void 0?void 0:X.sendCommand))this._unwrap(X,"sendCommand");return this._wrap(X,"sendCommand",this._getPatchRedisClientSendCommand()),this._wrap(X,"connect",this._getPatchedClientConnect()),J},(J)=>{var C;let X=(C=J===null||J===void 0?void 0:J.default)===null||C===void 0?void 0:C.prototype;if((0,pY.isWrapped)(X===null||X===void 0?void 0:X.multi))this._unwrap(X,"multi");if((0,pY.isWrapped)(X===null||X===void 0?void 0:X.MULTI))this._unwrap(X,"MULTI");if((0,pY.isWrapped)(X===null||X===void 0?void 0:X.sendCommand))this._unwrap(X,"sendCommand")});return new pY.InstrumentationNodeModuleDefinition(A,["^1.0.0"],(J)=>{return J},()=>{},[Q,B,Y])}_getPatchExtendWithCommands(A){let Q=this;return function(Y){return function(C){var X;if(((X=C===null||C===void 0?void 0:C.BaseClass)===null||X===void 0?void 0:X.name)!=="RedisClient")return Y.apply(this,arguments);let G=C.executor;return C.executor=function(F,W){let Z=A(F,W).args;return Q._traceClientCommand(G,this,arguments,Z)},Y.apply(this,arguments)}}}_getPatchMultiCommandsExec(){let A=this;return function(B){return function(){let J=B.apply(this,arguments);if(typeof(J===null||J===void 0?void 0:J.then)!=="function")return A._diag.error("got non promise result when patching RedisClientMultiCommand.exec"),J;return J.then((C)=>{let X=this[_L];return A._endSpansWithRedisReplies(X,C),C}).catch((C)=>{let X=this[_L];if(!X)A._diag.error("cannot find open spans to end for redis multi command");else{let G=C.constructor.name==="MultiErrorReply"?C.replies:Array(X.length).fill(C);A._endSpansWithRedisReplies(X,G)}return Promise.reject(C)})}}}_getPatchMultiCommandsAddCommand(){let A=this;return function(B){return function(J){return A._traceClientCommand(B,this,arguments,J)}}}_getPatchRedisClientMulti(){return function(Q){return function(){let Y=Q.apply(this,arguments);return Y[BIQ]=this.options,Y}}}_getPatchRedisClientSendCommand(){let A=this;return function(B){return function(J){return A._traceClientCommand(B,this,arguments,J)}}}_getPatchedClientConnect(){let A=this;return function(B){return function(){let J=this.options,C=(0,AIQ.getClientAttributes)(A._diag,J),X=A.tracer.startSpan(`${vL.COMPONENT}-connect`,{kind:p5.SpanKind.CLIENT,attributes:C});return p5.context.with(p5.trace.setSpan(p5.context.active(),X),()=>{return B.apply(this)}).then((F)=>{return X.end(),F}).catch((F)=>{return X.recordException(F),X.setStatus({code:p5.SpanStatusCode.ERROR,message:F.message}),X.end(),Promise.reject(F)})}}}_traceClientCommand(A,Q,B,Y){if(p5.trace.getSpan(p5.context.active())===void 0&&this.getConfig().requireParentSpan)return A.apply(Q,B);let C=Q.options||Q[BIQ],X=Y[0],G=Y.slice(1),F=this.getConfig().dbStatementSerializer||XM0.defaultDbStatementSerializer,W=(0,AIQ.getClientAttributes)(this._diag,C);try{let $=F(X,G);if($!=null)W[GM0.SEMATTRS_DB_STATEMENT]=$}catch($){this._diag.error("dbStatementSerializer throw an exception",$,{commandName:X})}let Z=this.tracer.startSpan(`${vL.COMPONENT}-${X}`,{kind:p5.SpanKind.CLIENT,attributes:W}),U=p5.context.with(p5.trace.setSpan(p5.context.active(),Z),()=>{return A.apply(Q,B)});if(typeof(U===null||U===void 0?void 0:U.then)==="function")U.then(($)=>{this._endSpanWithResponse(Z,X,G,$,void 0)},($)=>{this._endSpanWithResponse(Z,X,G,null,$)});else{let $=U;$[_L]=$[_L]||[],$[_L].push({span:Z,commandName:X,commandArgs:G})}return U}_endSpansWithRedisReplies(A,Q){if(!A)return this._diag.error("cannot find open spans to end for redis multi command");if(Q.length!==A.length)return this._diag.error("number of multi command spans does not match response from redis");for(let B=0;B{Object.defineProperty(GIQ,"__esModule",{value:!0})});var ZIQ=R((SF)=>{var FM0=SF&&SF.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),WIQ=SF&&SF.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))FM0(Q,A,B)};Object.defineProperty(SF,"__esModule",{value:!0});WIQ(XIQ(),SF);WIQ(FIQ(),SF)});var qIQ=R((NIQ)=>{Object.defineProperty(NIQ,"__esModule",{value:!0});NIQ.EVENT_LISTENERS_SET=void 0;NIQ.EVENT_LISTENERS_SET=Symbol("opentelemetry.instrumentation.pg.eventListenersSet")});var Tn=R((MIQ)=>{Object.defineProperty(MIQ,"__esModule",{value:!0});MIQ.AttributeNames=void 0;var VM0;(function(A){A.PG_VALUES="db.postgresql.values",A.PG_PLAN="db.postgresql.plan",A.IDLE_TIMEOUT_MILLIS="db.postgresql.idle.timeout.millis",A.MAX_CLIENT="db.postgresql.max.client"})(VM0=MIQ.AttributeNames||(MIQ.AttributeNames={}))});var Sn=R((zIQ)=>{Object.defineProperty(zIQ,"__esModule",{value:!0});zIQ.METRIC_DB_CLIENT_OPERATION_DURATION=zIQ.METRIC_DB_CLIENT_CONNECTION_PENDING_REQUESTS=zIQ.METRIC_DB_CLIENT_CONNECTION_COUNT=zIQ.DB_CLIENT_CONNECTION_STATE_VALUE_IDLE=zIQ.DB_CLIENT_CONNECTION_STATE_VALUE_USED=zIQ.ATTR_DB_OPERATION_NAME=zIQ.ATTR_DB_NAMESPACE=zIQ.ATTR_DB_CLIENT_CONNECTION_STATE=zIQ.ATTR_DB_CLIENT_CONNECTION_POOL_NAME=void 0;zIQ.ATTR_DB_CLIENT_CONNECTION_POOL_NAME="db.client.connection.pool.name";zIQ.ATTR_DB_CLIENT_CONNECTION_STATE="db.client.connection.state";zIQ.ATTR_DB_NAMESPACE="db.namespace";zIQ.ATTR_DB_OPERATION_NAME="db.operation.name";zIQ.DB_CLIENT_CONNECTION_STATE_VALUE_USED="used";zIQ.DB_CLIENT_CONNECTION_STATE_VALUE_IDLE="idle";zIQ.METRIC_DB_CLIENT_CONNECTION_COUNT="db.client.connection.count";zIQ.METRIC_DB_CLIENT_CONNECTION_PENDING_REQUESTS="db.client.connection.pending_requests";zIQ.METRIC_DB_CLIENT_OPERATION_DURATION="db.client.operation.duration"});var _n=R((wIQ)=>{Object.defineProperty(wIQ,"__esModule",{value:!0});wIQ.SpanNames=void 0;var RM0;(function(A){A.QUERY_PREFIX="pg.query",A.CONNECT="pg.connect",A.POOL_CONNECT="pg-pool.connect"})(RM0=wIQ.SpanNames||(wIQ.SpanNames={}))});var yIQ=R((_IQ)=>{Object.defineProperty(_IQ,"__esModule",{value:!0});_IQ.isObjectWithTextString=_IQ.getErrorMessage=_IQ.patchClientConnectCallback=_IQ.patchCallbackPGPool=_IQ.updateCounter=_IQ.getPoolName=_IQ.patchCallback=_IQ.handleExecutionResult=_IQ.handleConfigQuery=_IQ.shouldSkipInstrumentation=_IQ.getSemanticAttributesFromPool=_IQ.getSemanticAttributesFromConnection=_IQ.getConnectionString=_IQ.parseNormalizedOperationName=_IQ.getQuerySpanName=void 0;var kF=yA(),dP=Tn(),kJ=uB(),I$=Sn(),wM0=NB(),jIQ=_n();function OIQ(A,Q){if(!Q)return jIQ.SpanNames.QUERY_PREFIX;let B=typeof Q.name==="string"&&Q.name?Q.name:PIQ(Q.text);return`${jIQ.SpanNames.QUERY_PREFIX}:${B}${A?` ${A}`:""}`}_IQ.getQuerySpanName=OIQ;function PIQ(A){let Q=A.indexOf(" "),B=Q===-1?A:A.slice(0,Q);return B=B.toUpperCase(),B.endsWith(";")?B.slice(0,-1):B}_IQ.parseNormalizedOperationName=PIQ;function vn(A){let Q=A.host||"localhost",B=A.port||5432,Y=A.database||"";return`postgresql://${Q}:${B}/${Y}`}_IQ.getConnectionString=vn;function TIQ(A){if(Number.isInteger(A))return A;return}function SIQ(A){return{[kJ.SEMATTRS_DB_SYSTEM]:kJ.DBSYSTEMVALUES_POSTGRESQL,[kJ.SEMATTRS_DB_NAME]:A.database,[kJ.SEMATTRS_DB_CONNECTION_STRING]:vn(A),[kJ.SEMATTRS_NET_PEER_NAME]:A.host,[kJ.SEMATTRS_NET_PEER_PORT]:TIQ(A.port),[kJ.SEMATTRS_DB_USER]:A.user}}_IQ.getSemanticAttributesFromConnection=SIQ;function jM0(A){return{[kJ.SEMATTRS_DB_SYSTEM]:kJ.DBSYSTEMVALUES_POSTGRESQL,[kJ.SEMATTRS_DB_NAME]:A.database,[kJ.SEMATTRS_DB_CONNECTION_STRING]:vn(A),[kJ.SEMATTRS_NET_PEER_NAME]:A.host,[kJ.SEMATTRS_NET_PEER_PORT]:TIQ(A.port),[kJ.SEMATTRS_DB_USER]:A.user,[dP.AttributeNames.IDLE_TIMEOUT_MILLIS]:A.idleTimeoutMillis,[dP.AttributeNames.MAX_CLIENT]:A.maxClient}}_IQ.getSemanticAttributesFromPool=jM0;function OM0(A){return A.requireParentSpan===!0&&kF.trace.getSpan(kF.context.active())===void 0}_IQ.shouldSkipInstrumentation=OM0;function PM0(A,Q,B){let{connectionParameters:Y}=this,J=Y.database,C=OIQ(J,B),X=A.startSpan(C,{kind:kF.SpanKind.CLIENT,attributes:SIQ(Y)});if(!B)return X;if(B.text)X.setAttribute(kJ.SEMATTRS_DB_STATEMENT,B.text);if(Q.enhancedDatabaseReporting&&Array.isArray(B.values))try{let G=B.values.map((F)=>{if(F==null)return"null";else if(F instanceof Buffer)return F.toString();else if(typeof F==="object"){if(typeof F.toPostgres==="function")return F.toPostgres();return JSON.stringify(F)}else return F.toString()});X.setAttribute(dP.AttributeNames.PG_VALUES,G)}catch(G){kF.diag.error("failed to stringify ",B.values,G)}if(typeof B.name==="string")X.setAttribute(dP.AttributeNames.PG_PLAN,B.name);return X}_IQ.handleConfigQuery=PM0;function kIQ(A,Q,B){if(typeof A.responseHook==="function")(0,wM0.safeExecuteInTheMiddle)(()=>{A.responseHook(Q,{data:B})},(Y)=>{if(Y)kF.diag.error("Error running response hook",Y)},!0)}_IQ.handleExecutionResult=kIQ;function TM0(A,Q,B,Y,J){return function(X,G){if(X){if(Object.prototype.hasOwnProperty.call(X,"code"))Y[kJ.ATTR_ERROR_TYPE]=X.code;Q.setStatus({code:kF.SpanStatusCode.ERROR,message:X.message})}else kIQ(A,Q,G);J(),Q.end(),B.call(this,X,G)}}_IQ.patchCallback=TM0;function SM0(A){let Q="";return Q+=((A===null||A===void 0?void 0:A.host)?`${A.host}`:"unknown_host")+":",Q+=((A===null||A===void 0?void 0:A.port)?`${A.port}`:"unknown_port")+"/",Q+=(A===null||A===void 0?void 0:A.database)?`${A.database}`:"unknown_database",Q.trim()}_IQ.getPoolName=SM0;function kM0(A,Q,B,Y,J){let{totalCount:C,waitingCount:X,idleCount:G}=Q,F=C-G;return B.add(F-J.used,{[I$.ATTR_DB_CLIENT_CONNECTION_STATE]:I$.DB_CLIENT_CONNECTION_STATE_VALUE_USED,[I$.ATTR_DB_CLIENT_CONNECTION_POOL_NAME]:A}),B.add(G-J.idle,{[I$.ATTR_DB_CLIENT_CONNECTION_STATE]:I$.DB_CLIENT_CONNECTION_STATE_VALUE_IDLE,[I$.ATTR_DB_CLIENT_CONNECTION_POOL_NAME]:A}),Y.add(X-J.pending,{[I$.ATTR_DB_CLIENT_CONNECTION_POOL_NAME]:A}),{used:F,idle:G,pending:X}}_IQ.updateCounter=kM0;function _M0(A,Q){return function(Y,J,C){if(Y)A.setStatus({code:kF.SpanStatusCode.ERROR,message:Y.message});A.end(),Q.call(this,Y,J,C)}}_IQ.patchCallbackPGPool=_M0;function vM0(A,Q){return function(Y){if(Y)A.setStatus({code:kF.SpanStatusCode.ERROR,message:Y.message});A.end(),Q.apply(this,arguments)}}_IQ.patchClientConnectCallback=vM0;function yM0(A){return typeof A==="object"&&A!==null&&"message"in A?String(A.message):void 0}_IQ.getErrorMessage=yM0;function gM0(A){var Q;return typeof A==="object"&&typeof((Q=A)===null||Q===void 0?void 0:Q.text)==="string"}_IQ.isObjectWithTextString=gM0});var xIQ=R((gIQ)=>{Object.defineProperty(gIQ,"__esModule",{value:!0});gIQ.PACKAGE_NAME=gIQ.PACKAGE_VERSION=void 0;gIQ.PACKAGE_VERSION="0.51.1";gIQ.PACKAGE_NAME="@opentelemetry/instrumentation-pg"});var iIQ=R((lIQ)=>{Object.defineProperty(lIQ,"__esModule",{value:!0});lIQ.PgInstrumentation=void 0;var i5=NB(),sB=yA(),fIQ=qIQ(),LY=yIQ(),bIQ=Nn(),mIQ=xIQ(),uIQ=_n(),cP=MB(),_F=uB(),H$=Sn();function lP(A){return A[Symbol.toStringTag]==="Module"?A.default:A}class cIQ extends i5.InstrumentationBase{constructor(A={}){super(mIQ.PACKAGE_NAME,mIQ.PACKAGE_VERSION,A);this._connectionsCounter={used:0,idle:0,pending:0}}_updateMetricInstruments(){this._operationDuration=this.meter.createHistogram(H$.METRIC_DB_CLIENT_OPERATION_DURATION,{description:"Duration of database client operations.",unit:"s",valueType:sB.ValueType.DOUBLE,advice:{explicitBucketBoundaries:[0.001,0.005,0.01,0.05,0.1,0.5,1,5,10]}}),this._connectionsCounter={idle:0,pending:0,used:0},this._connectionsCount=this.meter.createUpDownCounter(H$.METRIC_DB_CLIENT_CONNECTION_COUNT,{description:"The number of connections that are currently in state described by the state attribute.",unit:"{connection}"}),this._connectionPendingRequests=this.meter.createUpDownCounter(H$.METRIC_DB_CLIENT_CONNECTION_PENDING_REQUESTS,{description:"The number of current pending requests for an open connection.",unit:"{connection}"})}init(){let A=[">=8.0.3 <9"],Q=new i5.InstrumentationNodeModuleFile("pg/lib/native/client.js",A,this._patchPgClient.bind(this),this._unpatchPgClient.bind(this)),B=new i5.InstrumentationNodeModuleFile("pg/lib/client.js",A,this._patchPgClient.bind(this),this._unpatchPgClient.bind(this)),Y=new i5.InstrumentationNodeModuleDefinition("pg",A,(C)=>{let X=lP(C);return this._patchPgClient(X.Client),C},(C)=>{let X=lP(C);return this._unpatchPgClient(X.Client),C},[B,Q]),J=new i5.InstrumentationNodeModuleDefinition("pg-pool",[">=2.0.0 <4"],(C)=>{if((0,i5.isWrapped)(C.prototype.connect))this._unwrap(C.prototype,"connect");return this._wrap(C.prototype,"connect",this._getPoolConnectPatch()),C},(C)=>{if((0,i5.isWrapped)(C.prototype.connect))this._unwrap(C.prototype,"connect")});return[Y,J]}_patchPgClient(A){if(!A)return;let Q=lP(A);if((0,i5.isWrapped)(Q.prototype.query))this._unwrap(Q.prototype,"query");if((0,i5.isWrapped)(Q.prototype.connect))this._unwrap(Q.prototype,"connect");return this._wrap(Q.prototype,"query",this._getClientQueryPatch()),this._wrap(Q.prototype,"connect",this._getClientConnectPatch()),A}_unpatchPgClient(A){let Q=lP(A);if((0,i5.isWrapped)(Q.prototype.query))this._unwrap(Q.prototype,"query");if((0,i5.isWrapped)(Q.prototype.connect))this._unwrap(Q.prototype,"connect");return A}_getClientConnectPatch(){let A=this;return(Q)=>{return function(Y){if(LY.shouldSkipInstrumentation(A.getConfig()))return Q.call(this,Y);let J=A.tracer.startSpan(uIQ.SpanNames.CONNECT,{kind:sB.SpanKind.CLIENT,attributes:LY.getSemanticAttributesFromConnection(this)});if(Y){let X=sB.trace.getSpan(sB.context.active());if(Y=LY.patchClientConnectCallback(J,Y),X)Y=sB.context.bind(sB.context.active(),Y)}let C=sB.context.with(sB.trace.setSpan(sB.context.active(),J),()=>{return Q.call(this,Y)});return dIQ(J,C)}}}recordOperationDuration(A,Q){let B={};[_F.SEMATTRS_DB_SYSTEM,H$.ATTR_DB_NAMESPACE,_F.ATTR_ERROR_TYPE,_F.ATTR_SERVER_PORT,_F.ATTR_SERVER_ADDRESS,H$.ATTR_DB_OPERATION_NAME].forEach((C)=>{if(C in A)B[C]=A[C]});let J=(0,cP.hrTimeToMilliseconds)((0,cP.hrTimeDuration)(Q,(0,cP.hrTime)()))/1000;this._operationDuration.record(J,B)}_getClientQueryPatch(){let A=this;return(Q)=>{return this._diag.debug("Patching pg.Client.prototype.query"),function(...Y){if(LY.shouldSkipInstrumentation(A.getConfig()))return Q.apply(this,Y);let J=(0,cP.hrTime)(),C=Y[0],X=typeof C==="string",G=LY.isObjectWithTextString(C),F=X?{text:C,values:Array.isArray(Y[1])?Y[1]:void 0}:G?C:void 0,W={[_F.SEMATTRS_DB_SYSTEM]:_F.DBSYSTEMVALUES_POSTGRESQL,[H$.ATTR_DB_NAMESPACE]:this.database,[_F.ATTR_SERVER_PORT]:this.connectionParameters.port,[_F.ATTR_SERVER_ADDRESS]:this.connectionParameters.host};if(F===null||F===void 0?void 0:F.text)W[H$.ATTR_DB_OPERATION_NAME]=LY.parseNormalizedOperationName(F===null||F===void 0?void 0:F.text);let Z=()=>{A.recordOperationDuration(W,J)},U=A.getConfig(),$=LY.handleConfigQuery.call(this,A.tracer,U,F);if(U.addSqlCommenterCommentToQueries){if(X)Y[0]=(0,bIQ.addSqlCommenterComment)($,C);else if(G&&!("name"in C))Y[0]=Object.assign(Object.assign({},C),{text:(0,bIQ.addSqlCommenterComment)($,C.text)})}if(Y.length>0){let I=sB.trace.getSpan(sB.context.active());if(typeof Y[Y.length-1]==="function"){if(Y[Y.length-1]=LY.patchCallback(U,$,Y[Y.length-1],W,Z),I)Y[Y.length-1]=sB.context.bind(sB.context.active(),Y[Y.length-1])}else if(typeof(F===null||F===void 0?void 0:F.callback)==="function"){let V=LY.patchCallback(A.getConfig(),$,F.callback,W,Z);if(I)V=sB.context.bind(sB.context.active(),V);Y[0].callback=V}}let{requestHook:E}=U;if(typeof E==="function"&&F)(0,i5.safeExecuteInTheMiddle)(()=>{let{database:I,host:V,port:H,user:D}=this.connectionParameters;E($,{connection:{database:I,host:V,port:H,user:D},query:{text:F.text,values:F.values,name:F.name}})},(I)=>{if(I)A._diag.error("Error running query hook",I)},!0);let K;try{K=Q.apply(this,Y)}catch(I){throw $.setStatus({code:sB.SpanStatusCode.ERROR,message:LY.getErrorMessage(I)}),$.end(),I}if(K instanceof Promise)return K.then((I)=>{return new Promise((V)=>{LY.handleExecutionResult(A.getConfig(),$,I),Z(),$.end(),V(I)})}).catch((I)=>{return new Promise((V,H)=>{$.setStatus({code:sB.SpanStatusCode.ERROR,message:I.message}),Z(),$.end(),H(I)})});return K}}}_setPoolConnectEventListeners(A){if(A[fIQ.EVENT_LISTENERS_SET])return;let Q=LY.getPoolName(A.options);A.on("connect",()=>{this._connectionsCounter=LY.updateCounter(Q,A,this._connectionsCount,this._connectionPendingRequests,this._connectionsCounter)}),A.on("acquire",()=>{this._connectionsCounter=LY.updateCounter(Q,A,this._connectionsCount,this._connectionPendingRequests,this._connectionsCounter)}),A.on("remove",()=>{this._connectionsCounter=LY.updateCounter(Q,A,this._connectionsCount,this._connectionPendingRequests,this._connectionsCounter)}),A.on("release",()=>{this._connectionsCounter=LY.updateCounter(Q,A,this._connectionsCount,this._connectionPendingRequests,this._connectionsCounter)}),A[fIQ.EVENT_LISTENERS_SET]=!0}_getPoolConnectPatch(){let A=this;return(Q)=>{return function(Y){if(LY.shouldSkipInstrumentation(A.getConfig()))return Q.call(this,Y);let J=A.tracer.startSpan(uIQ.SpanNames.POOL_CONNECT,{kind:sB.SpanKind.CLIENT,attributes:LY.getSemanticAttributesFromPool(this.options)});if(A._setPoolConnectEventListeners(this),Y){let X=sB.trace.getSpan(sB.context.active());if(Y=LY.patchCallbackPGPool(J,Y),X)Y=sB.context.bind(sB.context.active(),Y)}let C=sB.context.with(sB.trace.setSpan(sB.context.active(),J),()=>{return Q.call(this,Y)});return dIQ(J,C)}}}}lIQ.PgInstrumentation=cIQ;function dIQ(A,Q){if(!(Q instanceof Promise))return Q;let B=Q;return sB.context.bind(sB.context.active(),B.then((Y)=>{return A.end(),Y}).catch((Y)=>{return A.setStatus({code:sB.SpanStatusCode.ERROR,message:LY.getErrorMessage(Y)}),A.end(),Promise.reject(Y)}))}});var sIQ=R((nIQ)=>{Object.defineProperty(nIQ,"__esModule",{value:!0})});var rIQ=R((V6)=>{var oM0=V6&&V6.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),yn=V6&&V6.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))oM0(Q,A,B)};Object.defineProperty(V6,"__esModule",{value:!0});yn(iIQ(),V6);yn(sIQ(),V6);yn(Tn(),V6)});var ZHQ=R((FHQ)=>{Object.defineProperty(FHQ,"__esModule",{value:!0});FHQ.PACKAGE_NAME=FHQ.PACKAGE_VERSION=void 0;FHQ.PACKAGE_VERSION="0.45.2";FHQ.PACKAGE_NAME="@opentelemetry/instrumentation-hapi"});var fn=R(($HQ)=>{Object.defineProperty($HQ,"__esModule",{value:!0});$HQ.HapiLifecycleMethodNames=$HQ.HapiLayerType=$HQ.handlerPatched=$HQ.HapiComponentName=void 0;$HQ.HapiComponentName="@hapi/hapi";$HQ.handlerPatched=Symbol("hapi-handler-patched");$HQ.HapiLayerType={ROUTER:"router",PLUGIN:"plugin",EXT:"server.ext"};$HQ.HapiLifecycleMethodNames=new Set(["onPreAuth","onCredentials","onPostAuth","onPreHandler","onPostHandler","onPreResponse","onRequest"])});var mn=R((EHQ)=>{Object.defineProperty(EHQ,"__esModule",{value:!0});EHQ.AttributeNames=void 0;var Ez0;(function(A){A.HAPI_TYPE="hapi.type",A.PLUGIN_NAME="hapi.plugin.name",A.EXT_TYPE="server.ext.type"})(Ez0=EHQ.AttributeNames||(EHQ.AttributeNames={}))});var IHQ=R((KHQ)=>{Object.defineProperty(KHQ,"__esModule",{value:!0});KHQ.getPluginFromInput=KHQ.getExtMetadata=KHQ.getRouteMetadata=KHQ.isPatchableExtMethod=KHQ.isDirectExtInput=KHQ.isLifecycleExtEventObj=KHQ.isLifecycleExtType=KHQ.getPluginName=void 0;var sP=uB(),gL=fn(),yF=mn();function Kz0(A){if(A.name)return A.name;else return A.pkg.name}KHQ.getPluginName=Kz0;var Vz0=(A)=>{return typeof A==="string"&&gL.HapiLifecycleMethodNames.has(A)};KHQ.isLifecycleExtType=Vz0;var Iz0=(A)=>{var Q;let B=(Q=A)===null||Q===void 0?void 0:Q.type;return B!==void 0&&KHQ.isLifecycleExtType(B)};KHQ.isLifecycleExtEventObj=Iz0;var Hz0=(A)=>{return Array.isArray(A)&&A.length<=3&&KHQ.isLifecycleExtType(A[0])&&typeof A[1]==="function"};KHQ.isDirectExtInput=Hz0;var Dz0=(A)=>{return!Array.isArray(A)};KHQ.isPatchableExtMethod=Dz0;var Nz0=(A,Q)=>{if(Q)return{attributes:{[sP.SEMATTRS_HTTP_ROUTE]:A.path,[sP.SEMATTRS_HTTP_METHOD]:A.method,[yF.AttributeNames.HAPI_TYPE]:gL.HapiLayerType.PLUGIN,[yF.AttributeNames.PLUGIN_NAME]:Q},name:`${Q}: route - ${A.path}`};return{attributes:{[sP.SEMATTRS_HTTP_ROUTE]:A.path,[sP.SEMATTRS_HTTP_METHOD]:A.method,[yF.AttributeNames.HAPI_TYPE]:gL.HapiLayerType.ROUTER},name:`route - ${A.path}`}};KHQ.getRouteMetadata=Nz0;var Lz0=(A,Q)=>{if(Q)return{attributes:{[yF.AttributeNames.EXT_TYPE]:A,[yF.AttributeNames.HAPI_TYPE]:gL.HapiLayerType.EXT,[yF.AttributeNames.PLUGIN_NAME]:Q},name:`${Q}: ext - ${A}`};return{attributes:{[yF.AttributeNames.EXT_TYPE]:A,[yF.AttributeNames.HAPI_TYPE]:gL.HapiLayerType.EXT},name:`ext - ${A}`}};KHQ.getExtMetadata=Lz0;var qz0=(A)=>{if("plugin"in A){if("plugin"in A.plugin)return A.plugin.plugin;return A.plugin}return A};KHQ.getPluginFromInput=qz0});var MHQ=R((LHQ)=>{Object.defineProperty(LHQ,"__esModule",{value:!0});LHQ.HapiInstrumentation=void 0;var v8=yA(),HHQ=MB(),rP=NB(),DHQ=ZHQ(),hL=fn(),I6=IHQ();class NHQ extends rP.InstrumentationBase{constructor(A={}){super(DHQ.PACKAGE_NAME,DHQ.PACKAGE_VERSION,A)}init(){return new rP.InstrumentationNodeModuleDefinition(hL.HapiComponentName,[">=17.0.0 <22"],(A)=>{let Q=A[Symbol.toStringTag]==="Module"?A.default:A;if(!(0,rP.isWrapped)(Q.server))this._wrap(Q,"server",this._getServerPatch.bind(this));if(!(0,rP.isWrapped)(Q.Server))this._wrap(Q,"Server",this._getServerPatch.bind(this));return Q},(A)=>{let Q=A[Symbol.toStringTag]==="Module"?A.default:A;this._massUnwrap([Q],["server","Server"])})}_getServerPatch(A){let Q=this,B=this;return function(J){let C=A.apply(this,[J]);return B._wrap(C,"route",(X)=>{return Q._getServerRoutePatch.bind(Q)(X)}),B._wrap(C,"ext",(X)=>{return Q._getServerExtPatch.bind(Q)(X)}),B._wrap(C,"register",Q._getServerRegisterPatch.bind(Q)),C}}_getServerRegisterPatch(A){let Q=this;return function(Y,J){if(Array.isArray(Y))for(let C of Y){let X=(0,I6.getPluginFromInput)(C);Q._wrapRegisterHandler(X)}else{let C=(0,I6.getPluginFromInput)(Y);Q._wrapRegisterHandler(C)}return A.apply(this,[Y,J])}}_getServerExtPatch(A,Q){let B=this;return function(...J){if(Array.isArray(J[0])){let C=J[0];for(let X=0;X{return Q._getServerRoutePatch.bind(Q)(F,B)}),J._wrap(X,"ext",(F)=>{return Q._getServerExtPatch.bind(Q)(F,B)}),Y.call(this,X,G)};A.register=C}_wrapExtMethods(A,Q,B){let Y=this;if(A instanceof Array){for(let J=0;J{return async function(...X){if(v8.trace.getSpan(v8.context.active())===void 0)return await C.call(this,...X);let G=(0,HHQ.getRPCMetadata)(v8.context.active());if((G===null||G===void 0?void 0:G.type)===HHQ.RPCType.HTTP)G.route=A.path;let F=(0,I6.getRouteMetadata)(A,Q),W=Y.tracer.startSpan(F.name,{attributes:F.attributes});try{return await v8.context.with(v8.trace.setSpan(v8.context.active(),W),()=>C.call(this,...X))}catch(Z){throw W.recordException(Z),W.setStatus({code:v8.SpanStatusCode.ERROR,message:Z.message}),Z}finally{W.end()}}};if(typeof A.handler==="function")A.handler=J(A.handler);else if(typeof A.options==="function"){let C=A.options;A.options=function(X){let G=C(X);if(typeof G.handler==="function")G.handler=J(G.handler);return G}}else if(typeof((B=A.options)===null||B===void 0?void 0:B.handler)==="function")A.options.handler=J(A.options.handler);return A}}LHQ.HapiInstrumentation=NHQ});var RHQ=R((gF)=>{var Pz0=gF&&gF.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),zHQ=gF&&gF.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))Pz0(Q,A,B)};Object.defineProperty(gF,"__esModule",{value:!0});zHQ(MHQ(),gF);zHQ(mn(),gF)});var tP=R((PHQ)=>{Object.defineProperty(PHQ,"__esModule",{value:!0});PHQ.KoaLayerType=void 0;var yz0;(function(A){A.ROUTER="router",A.MIDDLEWARE="middleware"})(yz0=PHQ.KoaLayerType||(PHQ.KoaLayerType={}))});var kHQ=R((THQ)=>{Object.defineProperty(THQ,"__esModule",{value:!0});THQ.PACKAGE_NAME=THQ.PACKAGE_VERSION=void 0;THQ.PACKAGE_VERSION="0.47.1";THQ.PACKAGE_NAME="@opentelemetry/instrumentation-koa"});var ln=R((_HQ)=>{Object.defineProperty(_HQ,"__esModule",{value:!0});_HQ.AttributeNames=void 0;var hz0;(function(A){A.KOA_TYPE="koa.type",A.KOA_NAME="koa.name"})(hz0=_HQ.AttributeNames||(_HQ.AttributeNames={}))});var hHQ=R((yHQ)=>{Object.defineProperty(yHQ,"__esModule",{value:!0});yHQ.isLayerIgnored=yHQ.getMiddlewareMetadata=void 0;var vHQ=tP(),eP=ln(),xz0=uB(),fz0=(A,Q,B,Y)=>{var J;if(B)return{attributes:{[eP.AttributeNames.KOA_NAME]:Y===null||Y===void 0?void 0:Y.toString(),[eP.AttributeNames.KOA_TYPE]:vHQ.KoaLayerType.ROUTER,[xz0.SEMATTRS_HTTP_ROUTE]:Y===null||Y===void 0?void 0:Y.toString()},name:A._matchedRouteName||`router - ${Y}`};else return{attributes:{[eP.AttributeNames.KOA_NAME]:(J=Q.name)!==null&&J!==void 0?J:"middleware",[eP.AttributeNames.KOA_TYPE]:vHQ.KoaLayerType.MIDDLEWARE},name:`middleware - ${Q.name}`}};yHQ.getMiddlewareMetadata=fz0;var bz0=(A,Q)=>{var B;return!!(Array.isArray(Q===null||Q===void 0?void 0:Q.ignoreLayersType)&&((B=Q===null||Q===void 0?void 0:Q.ignoreLayersType)===null||B===void 0?void 0:B.includes(A)))};yHQ.isLayerIgnored=bz0});var bHQ=R((xHQ)=>{Object.defineProperty(xHQ,"__esModule",{value:!0});xHQ.kLayerPatched=void 0;xHQ.kLayerPatched=Symbol("koa-layer-patched")});var sHQ=R((iHQ)=>{Object.defineProperty(iHQ,"__esModule",{value:!0});iHQ.KoaInstrumentation=void 0;var $X=yA(),xL=NB(),mHQ=tP(),uHQ=kHQ(),dHQ=hHQ(),cHQ=MB(),lHQ=bHQ();class pHQ extends xL.InstrumentationBase{constructor(A={}){super(uHQ.PACKAGE_NAME,uHQ.PACKAGE_VERSION,A)}init(){return new xL.InstrumentationNodeModuleDefinition("koa",[">=2.0.0 <3"],(A)=>{let Q=A[Symbol.toStringTag]==="Module"?A.default:A;if(Q==null)return Q;if((0,xL.isWrapped)(Q.prototype.use))this._unwrap(Q.prototype,"use");return this._wrap(Q.prototype,"use",this._getKoaUsePatch.bind(this)),A},(A)=>{let Q=A[Symbol.toStringTag]==="Module"?A.default:A;if((0,xL.isWrapped)(Q.prototype.use))this._unwrap(Q.prototype,"use")})}_getKoaUsePatch(A){let Q=this;return function(Y){let J;if(Y.router)J=Q._patchRouterDispatch(Y);else J=Q._patchLayer(Y,!1);return A.apply(this,[J])}}_patchRouterDispatch(A){var Q;$X.diag.debug("Patching @koa/router dispatch");let B=A.router,Y=(Q=B===null||B===void 0?void 0:B.stack)!==null&&Q!==void 0?Q:[];for(let J of Y){let{path:C,stack:X}=J;for(let G=0;G{if($X.trace.getSpan($X.context.active())===void 0)return A(J,C);let G=(0,dHQ.getMiddlewareMetadata)(J,A,Q,B),F=this.tracer.startSpan(G.name,{attributes:G.attributes}),W=(0,cHQ.getRPCMetadata)($X.context.active());if((W===null||W===void 0?void 0:W.type)===cHQ.RPCType.HTTP&&J._matchedRoute)W.route=J._matchedRoute.toString();let{requestHook:Z}=this.getConfig();if(Z)(0,xL.safeExecuteInTheMiddle)(()=>Z(F,{context:J,middlewareLayer:A,layerType:Y}),($)=>{if($)$X.diag.error("koa instrumentation: request hook failed",$)},!0);let U=$X.trace.setSpan($X.context.active(),F);return $X.context.with(U,async()=>{try{return await A(J,C)}catch($){throw F.recordException($),$}finally{F.end()}})}}}iHQ.KoaInstrumentation=pHQ});var rHQ=R((H6)=>{var uz0=H6&&H6.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),pn=H6&&H6.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))uz0(Q,A,B)};Object.defineProperty(H6,"__esModule",{value:!0});pn(sHQ(),H6);pn(tP(),H6);pn(ln(),H6)});var rn=R((BDQ)=>{Object.defineProperty(BDQ,"__esModule",{value:!0});BDQ.ConnectNames=BDQ.ConnectTypes=BDQ.AttributeNames=void 0;var lz0;(function(A){A.CONNECT_TYPE="connect.type",A.CONNECT_NAME="connect.name"})(lz0=BDQ.AttributeNames||(BDQ.AttributeNames={}));var pz0;(function(A){A.MIDDLEWARE="middleware",A.REQUEST_HANDLER="request_handler"})(pz0=BDQ.ConnectTypes||(BDQ.ConnectTypes={}));var iz0;(function(A){A.MIDDLEWARE="middleware",A.REQUEST_HANDLER="request handler"})(iz0=BDQ.ConnectNames||(BDQ.ConnectNames={}))});var CDQ=R((YDQ)=>{Object.defineProperty(YDQ,"__esModule",{value:!0});YDQ.PACKAGE_NAME=YDQ.PACKAGE_VERSION=void 0;YDQ.PACKAGE_VERSION="0.43.1";YDQ.PACKAGE_NAME="@opentelemetry/instrumentation-connect"});var FDQ=R((XDQ)=>{Object.defineProperty(XDQ,"__esModule",{value:!0});XDQ._LAYERS_STORE_PROPERTY=void 0;XDQ._LAYERS_STORE_PROPERTY=Symbol("opentelemetry.instrumentation-connect.request-route-stack")});var $DQ=R((WDQ)=>{Object.defineProperty(WDQ,"__esModule",{value:!0});WDQ.generateRoute=WDQ.replaceCurrentStackRoute=WDQ.addNewStackLayer=void 0;var sz0=yA(),hF=FDQ(),rz0=(A)=>{if(Array.isArray(A[hF._LAYERS_STORE_PROPERTY])===!1)Object.defineProperty(A,hF._LAYERS_STORE_PROPERTY,{enumerable:!1,value:[]});A[hF._LAYERS_STORE_PROPERTY].push("/");let Q=A[hF._LAYERS_STORE_PROPERTY].length;return()=>{if(Q===A[hF._LAYERS_STORE_PROPERTY].length)A[hF._LAYERS_STORE_PROPERTY].pop();else sz0.diag.warn("Connect: Trying to pop the stack multiple time")}};WDQ.addNewStackLayer=rz0;var az0=(A,Q)=>{if(Q)A[hF._LAYERS_STORE_PROPERTY].splice(-1,1,Q)};WDQ.replaceCurrentStackRoute=az0;var oz0=(A)=>{return A[hF._LAYERS_STORE_PROPERTY].reduce((Q,B)=>Q.replace(/\/+$/,"")+B)};WDQ.generateRoute=oz0});var HDQ=R((VDQ)=>{Object.defineProperty(VDQ,"__esModule",{value:!0});VDQ.ConnectInstrumentation=VDQ.ANONYMOUS_NAME=void 0;var A20=yA(),UDQ=MB(),jK=rn(),EDQ=CDQ(),QT=NB(),Q20=uB(),an=$DQ();VDQ.ANONYMOUS_NAME="anonymous";class KDQ extends QT.InstrumentationBase{constructor(A={}){super(EDQ.PACKAGE_NAME,EDQ.PACKAGE_VERSION,A)}init(){return[new QT.InstrumentationNodeModuleDefinition("connect",[">=3.0.0 <4"],(A)=>{return this._patchConstructor(A)})]}_patchApp(A){if(!(0,QT.isWrapped)(A.use))this._wrap(A,"use",this._patchUse.bind(this));if(!(0,QT.isWrapped)(A.handle))this._wrap(A,"handle",this._patchHandle.bind(this))}_patchConstructor(A){let Q=this;return function(...B){let Y=A.apply(this,B);return Q._patchApp(Y),Y}}_patchNext(A,Q){return function(Y){let J=A.apply(this,[Y]);return Q(),J}}_startSpan(A,Q){let B,Y,J;if(A)B=jK.ConnectTypes.REQUEST_HANDLER,J=jK.ConnectNames.REQUEST_HANDLER,Y=A;else B=jK.ConnectTypes.MIDDLEWARE,J=jK.ConnectNames.MIDDLEWARE,Y=Q.name||VDQ.ANONYMOUS_NAME;let C=`${J} - ${Y}`,X={attributes:{[Q20.SEMATTRS_HTTP_ROUTE]:A.length>0?A:"/",[jK.AttributeNames.CONNECT_TYPE]:B,[jK.AttributeNames.CONNECT_NAME]:Y}};return this.tracer.startSpan(C,X)}_patchMiddleware(A,Q){let B=this,Y=Q.length===4;function J(){if(!B.isEnabled())return Q.apply(this,arguments);let[C,X,G]=Y?[1,2,3]:[0,1,2],F=arguments[C],W=arguments[X],Z=arguments[G];(0,an.replaceCurrentStackRoute)(F,A);let U=(0,UDQ.getRPCMetadata)(A20.context.active());if(A&&(U===null||U===void 0?void 0:U.type)===UDQ.RPCType.HTTP)U.route=(0,an.generateRoute)(F);let $="";if(A)$=`request handler - ${A}`;else $=`middleware - ${Q.name||VDQ.ANONYMOUS_NAME}`;let E=B._startSpan(A,Q);B._diag.debug("start span",$);let K=!1;function I(){if(!K)K=!0,B._diag.debug(`finishing span ${E.name}`),E.end();else B._diag.debug(`span ${E.name} - already finished`);W.removeListener("close",I)}return W.addListener("close",I),arguments[G]=B._patchNext(Z,I),Q.apply(this,arguments)}return Object.defineProperty(J,"length",{value:Q.length,writable:!1,configurable:!0}),J}_patchUse(A){let Q=this;return function(...B){let Y=B[B.length-1],J=B[B.length-2]||"";return B[B.length-1]=Q._patchMiddleware(J,Y),A.apply(this,B)}}_patchHandle(A){let Q=this;return function(){let[B,Y]=[0,2],J=arguments[B],C=arguments[Y],X=(0,an.addNewStackLayer)(J);if(typeof C==="function")arguments[Y]=Q._patchOut(C,X);return A.apply(this,arguments)}}_patchOut(A,Q){return function(...Y){return Q(),Reflect.apply(A,this,Y)}}}VDQ.ConnectInstrumentation=KDQ});var NDQ=R((xF)=>{var B20=xF&&xF.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),DDQ=xF&&xF.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))B20(Q,A,B)};Object.defineProperty(xF,"__esModule",{value:!0});DDQ(rn(),xF);DDQ(HDQ(),xF)});var wDQ=R((zDQ)=>{Object.defineProperty(zDQ,"__esModule",{value:!0});zDQ.PACKAGE_NAME=zDQ.PACKAGE_VERSION=void 0;zDQ.PACKAGE_VERSION="0.44.1";zDQ.PACKAGE_NAME="@opentelemetry/instrumentation-knex"});var PDQ=R((jDQ)=>{Object.defineProperty(jDQ,"__esModule",{value:!0});jDQ.SUPPORTED_VERSIONS=jDQ.MODULE_NAME=void 0;jDQ.MODULE_NAME="knex";jDQ.SUPPORTED_VERSIONS=[">=0.22.0 <4",">=0.10.0 <0.18.0",">=0.19.0 <0.22.0",">=0.18.0 <0.19.0"]});var kDQ=R((SDQ)=>{Object.defineProperty(SDQ,"__esModule",{value:!0});SDQ.extractTableName=SDQ.limitLength=SDQ.getName=SDQ.mapSystem=SDQ.otelExceptionFromKnexError=SDQ.getFormatter=void 0;var TDQ=uB(),K20=(A)=>{if(A){if(A.client){if(A.client._formatQuery)return A.client._formatQuery.bind(A.client);else if(A.client.SqlString)return A.client.SqlString.format.bind(A.client.SqlString)}if(A.builder)return A.builder.toString.bind(A.builder)}return()=>""};SDQ.getFormatter=K20;function V20(A,Q){if(!(A&&A instanceof Error))return A;return{message:Q,code:A.code,stack:A.stack,name:A.name}}SDQ.otelExceptionFromKnexError=V20;var I20=new Map([["sqlite3",TDQ.DBSYSTEMVALUES_SQLITE],["pg",TDQ.DBSYSTEMVALUES_POSTGRESQL]]),H20=(A)=>{return I20.get(A)||A};SDQ.mapSystem=H20;var D20=(A,Q,B)=>{if(Q){if(B)return`${Q} ${A}.${B}`;return`${Q} ${A}`}return A};SDQ.getName=D20;var N20=(A,Q)=>{if(typeof A==="string"&&typeof Q==="number"&&0{var Q;let B=(Q=A===null||A===void 0?void 0:A._single)===null||Q===void 0?void 0:Q.table;if(typeof B==="object")return SDQ.extractTableName(B);return B};SDQ.extractTableName=L20});var fDQ=R((hDQ)=>{Object.defineProperty(hDQ,"__esModule",{value:!0});hDQ.KnexInstrumentation=void 0;var D6=yA(),_DQ=wDQ(),JT=PDQ(),fL=NB(),N6=uB(),OK=kDQ(),vDQ=Symbol("opentelemetry.instrumentation-knex.context"),yDQ={maxQueryLength:1022,requireParentSpan:!1};class gDQ extends fL.InstrumentationBase{constructor(A={}){super(_DQ.PACKAGE_NAME,_DQ.PACKAGE_VERSION,Object.assign(Object.assign({},yDQ),A))}setConfig(A={}){super.setConfig(Object.assign(Object.assign({},yDQ),A))}init(){let A=new fL.InstrumentationNodeModuleDefinition(JT.MODULE_NAME,JT.SUPPORTED_VERSIONS);return A.files.push(this.getClientNodeModuleFileInstrumentation("src"),this.getClientNodeModuleFileInstrumentation("lib"),this.getRunnerNodeModuleFileInstrumentation("src"),this.getRunnerNodeModuleFileInstrumentation("lib"),this.getRunnerNodeModuleFileInstrumentation("lib/execution")),A}getRunnerNodeModuleFileInstrumentation(A){return new fL.InstrumentationNodeModuleFile(`knex/${A}/runner.js`,JT.SUPPORTED_VERSIONS,(Q,B)=>{return this.ensureWrapped(Q.prototype,"query",this.createQueryWrapper(B)),Q},(Q,B)=>{return this._unwrap(Q.prototype,"query"),Q})}getClientNodeModuleFileInstrumentation(A){return new fL.InstrumentationNodeModuleFile(`knex/${A}/client.js`,JT.SUPPORTED_VERSIONS,(Q)=>{return this.ensureWrapped(Q.prototype,"queryBuilder",this.storeContext.bind(this)),this.ensureWrapped(Q.prototype,"schemaBuilder",this.storeContext.bind(this)),this.ensureWrapped(Q.prototype,"raw",this.storeContext.bind(this)),Q},(Q)=>{return this._unwrap(Q.prototype,"queryBuilder"),this._unwrap(Q.prototype,"schemaBuilder"),this._unwrap(Q.prototype,"raw"),Q})}createQueryWrapper(A){let Q=this;return function(Y){return function(C){var X,G,F,W,Z,U;let $=this.client.config,E=OK.extractTableName(this.builder),K=C===null||C===void 0?void 0:C.method,I=((X=$===null||$===void 0?void 0:$.connection)===null||X===void 0?void 0:X.filename)||((G=$===null||$===void 0?void 0:$.connection)===null||G===void 0?void 0:G.database),{maxQueryLength:V}=Q.getConfig(),H={"knex.version":A,[N6.SEMATTRS_DB_SYSTEM]:OK.mapSystem($.client),[N6.SEMATTRS_DB_SQL_TABLE]:E,[N6.SEMATTRS_DB_OPERATION]:K,[N6.SEMATTRS_DB_USER]:(F=$===null||$===void 0?void 0:$.connection)===null||F===void 0?void 0:F.user,[N6.SEMATTRS_DB_NAME]:I,[N6.SEMATTRS_NET_PEER_NAME]:(W=$===null||$===void 0?void 0:$.connection)===null||W===void 0?void 0:W.host,[N6.SEMATTRS_NET_PEER_PORT]:(Z=$===null||$===void 0?void 0:$.connection)===null||Z===void 0?void 0:Z.port,[N6.SEMATTRS_NET_TRANSPORT]:((U=$===null||$===void 0?void 0:$.connection)===null||U===void 0?void 0:U.filename)===":memory:"?"inproc":void 0};if(V)H[N6.SEMATTRS_DB_STATEMENT]=OK.limitLength(C===null||C===void 0?void 0:C.sql,V);let D=this.builder[vDQ]||D6.context.active(),L=D6.trace.getSpan(D),z=L&&D6.trace.isSpanContextValid(L.spanContext());if(Q._config.requireParentSpan&&!z)return Y.bind(this)(...arguments);let M=Q.tracer.startSpan(OK.getName(I,K,E),{kind:D6.SpanKind.CLIENT,attributes:H},D),N=D6.trace.setSpan(D6.context.active(),M);return D6.context.with(N,Y,this,...arguments).then((q)=>{return M.end(),q}).catch((q)=>{let P=OK.getFormatter(this)(C.sql,C.bindings||[]),_=q.message.replace(P+" - ",""),O=OK.otelExceptionFromKnexError(q,_);throw M.recordException(O),M.setStatus({code:D6.SpanStatusCode.ERROR,message:_}),M.end(),q})}}}storeContext(A){return function(){let B=A.apply(this,arguments);return Object.defineProperty(B,vDQ,{value:D6.context.active()}),B}}ensureWrapped(A,Q,B){if((0,fL.isWrapped)(A[Q]))this._unwrap(A,Q);this._wrap(A,Q,B)}}hDQ.KnexInstrumentation=gDQ});var mDQ=R((bDQ)=>{Object.defineProperty(bDQ,"__esModule",{value:!0})});var dDQ=R((fF)=>{var j20=fF&&fF.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),uDQ=fF&&fF.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))j20(Q,A,B)};Object.defineProperty(fF,"__esModule",{value:!0});uDQ(fDQ(),fF);uDQ(mDQ(),fF)});var sDQ=R((iDQ)=>{Object.defineProperty(iDQ,"__esModule",{value:!0});iDQ.once=iDQ.getSpanName=void 0;function T20(A,Q,B,Y){if(A==="execBulkLoad"&&Y&&Q)return`${A} ${Y} ${Q}`;if(A==="callProcedure"){if(Q)return`${A} ${B} ${Q}`;return`${A} ${B}`}if(Q)return`${A} ${Q}`;return`${A}`}iDQ.getSpanName=T20;var S20=(A)=>{let Q=!1;return(...B)=>{if(Q)return;return Q=!0,A(...B)}};iDQ.once=S20});var oDQ=R((rDQ)=>{Object.defineProperty(rDQ,"__esModule",{value:!0});rDQ.PACKAGE_NAME=rDQ.PACKAGE_VERSION=void 0;rDQ.PACKAGE_VERSION="0.18.1";rDQ.PACKAGE_NAME="@opentelemetry/instrumentation-tedious"});var JNQ=R((BNQ)=>{Object.defineProperty(BNQ,"__esModule",{value:!0});BNQ.TediousInstrumentation=void 0;var bL=yA(),v20=u("events"),CT=NB(),bF=uB(),tDQ=sDQ(),eDQ=oDQ(),QNQ=Symbol("opentelemetry.instrumentation-tedious.current-database"),ANQ=["callProcedure","execSql","execSqlBatch","execBulkLoad","prepare","execute"];function XT(A){Object.defineProperty(this,QNQ,{value:A,writable:!0})}class GT extends CT.InstrumentationBase{constructor(A={}){super(eDQ.PACKAGE_NAME,eDQ.PACKAGE_VERSION,A)}init(){return[new CT.InstrumentationNodeModuleDefinition(GT.COMPONENT,[">=1.11.0 <20"],(A)=>{let Q=A.Connection.prototype;for(let B of ANQ){if((0,CT.isWrapped)(Q[B]))this._unwrap(Q,B);this._wrap(Q,B,this._patchQuery(B))}if((0,CT.isWrapped)(Q.connect))this._unwrap(Q,"connect");return this._wrap(Q,"connect",this._patchConnect),A},(A)=>{if(A===void 0)return;let Q=A.Connection.prototype;for(let B of ANQ)this._unwrap(Q,B);this._unwrap(Q,"connect")})]}_patchConnect(A){return function(){var B,Y;return XT.call(this,(Y=(B=this.config)===null||B===void 0?void 0:B.options)===null||Y===void 0?void 0:Y.database),this.removeListener("databaseChange",XT),this.on("databaseChange",XT),this.once("end",()=>{this.removeListener("databaseChange",XT)}),A.apply(this,arguments)}}_patchQuery(A){return(Q)=>{let B=this;function Y(J){var C,X,G,F,W,Z,U,$;if(!(J instanceof v20.EventEmitter))return B._diag.warn(`Unexpected invocation of patched ${A} method. Span not recorded`),Q.apply(this,arguments);let E=0,K=0,I=()=>K++,V=()=>E++,H=this[QNQ],D=((M)=>{var N,q;if(M.sqlTextOrProcedure==="sp_prepare"&&((q=(N=M.parametersByName)===null||N===void 0?void 0:N.stmt)===null||q===void 0?void 0:q.value))return M.parametersByName.stmt.value;return M.sqlTextOrProcedure})(J),L=B.tracer.startSpan((0,tDQ.getSpanName)(A,H,D,J.table),{kind:bL.SpanKind.CLIENT,attributes:{[bF.SEMATTRS_DB_SYSTEM]:bF.DBSYSTEMVALUES_MSSQL,[bF.SEMATTRS_DB_NAME]:H,[bF.SEMATTRS_NET_PEER_PORT]:(X=(C=this.config)===null||C===void 0?void 0:C.options)===null||X===void 0?void 0:X.port,[bF.SEMATTRS_NET_PEER_NAME]:(G=this.config)===null||G===void 0?void 0:G.server,[bF.SEMATTRS_DB_USER]:(W=(F=this.config)===null||F===void 0?void 0:F.userName)!==null&&W!==void 0?W:($=(U=(Z=this.config)===null||Z===void 0?void 0:Z.authentication)===null||U===void 0?void 0:U.options)===null||$===void 0?void 0:$.userName,[bF.SEMATTRS_DB_STATEMENT]:D,[bF.SEMATTRS_DB_SQL_TABLE]:J.table}}),z=(0,tDQ.once)((M)=>{if(J.removeListener("done",I),J.removeListener("doneInProc",I),J.removeListener("doneProc",V),J.removeListener("error",z),this.removeListener("end",z),L.setAttribute("tedious.procedure_count",E),L.setAttribute("tedious.statement_count",K),M)L.setStatus({code:bL.SpanStatusCode.ERROR,message:M.message});L.end()});if(J.on("done",I),J.on("doneInProc",I),J.on("doneProc",V),J.once("error",z),this.on("end",z),typeof J.callback==="function")B._wrap(J,"callback",B._patchCallbackQuery(z));else B._diag.error("Expected request.callback to be a function");return bL.context.with(bL.trace.setSpan(bL.context.active(),L),Q,this,...arguments)}return Object.defineProperty(Y,"length",{value:Q.length,writable:!1}),Y}}_patchCallbackQuery(A){return(Q)=>{return function(B,Y,J){return A(B),Q.apply(this,arguments)}}}}BNQ.TediousInstrumentation=GT;GT.COMPONENT="tedious"});var XNQ=R((CNQ)=>{Object.defineProperty(CNQ,"__esModule",{value:!0})});var FNQ=R((mF)=>{var y20=mF&&mF.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),GNQ=mF&&mF.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))y20(Q,A,B)};Object.defineProperty(mF,"__esModule",{value:!0});GNQ(JNQ(),mF);GNQ(XNQ(),mF)});var ENQ=R(($NQ)=>{Object.defineProperty($NQ,"__esModule",{value:!0});$NQ.PACKAGE_NAME=$NQ.PACKAGE_VERSION=void 0;$NQ.PACKAGE_VERSION="0.43.1";$NQ.PACKAGE_NAME="@opentelemetry/instrumentation-generic-pool"});var DNQ=R((INQ)=>{Object.defineProperty(INQ,"__esModule",{value:!0});INQ.GenericPoolInstrumentation=void 0;var PK=yA(),D$=NB(),KNQ=ENQ(),Bs="generic-pool";class VNQ extends D$.InstrumentationBase{constructor(A={}){super(KNQ.PACKAGE_NAME,KNQ.PACKAGE_VERSION,A);this._isDisabled=!1}init(){return[new D$.InstrumentationNodeModuleDefinition(Bs,[">=3.0.0 <4"],(A)=>{let Q=A.Pool;if((0,D$.isWrapped)(Q.prototype.acquire))this._unwrap(Q.prototype,"acquire");return this._wrap(Q.prototype,"acquire",this._acquirePatcher.bind(this)),A},(A)=>{let Q=A.Pool;return this._unwrap(Q.prototype,"acquire"),A}),new D$.InstrumentationNodeModuleDefinition(Bs,[">=2.4.0 <3"],(A)=>{let Q=A.Pool;if((0,D$.isWrapped)(Q.prototype.acquire))this._unwrap(Q.prototype,"acquire");return this._wrap(Q.prototype,"acquire",this._acquireWithCallbacksPatcher.bind(this)),A},(A)=>{let Q=A.Pool;return this._unwrap(Q.prototype,"acquire"),A}),new D$.InstrumentationNodeModuleDefinition(Bs,[">=2.0.0 <2.4"],(A)=>{if(this._isDisabled=!1,(0,D$.isWrapped)(A.Pool))this._unwrap(A,"Pool");return this._wrap(A,"Pool",this._poolWrapper.bind(this)),A},(A)=>{return this._isDisabled=!0,A})]}_acquirePatcher(A){let Q=this;return function(...Y){let J=PK.context.active(),C=Q.tracer.startSpan("generic-pool.acquire",{},J);return PK.context.with(PK.trace.setSpan(J,C),()=>{return A.call(this,...Y).then((X)=>{return C.end(),X},(X)=>{throw C.recordException(X),C.end(),X})})}}_poolWrapper(A){let Q=this;return function(){let Y=A.apply(this,arguments);return Q._wrap(Y,"acquire",Q._acquireWithCallbacksPatcher.bind(Q)),Y}}_acquireWithCallbacksPatcher(A){let Q=this;return function(Y,J){if(Q._isDisabled)return A.call(this,Y,J);let C=PK.context.active(),X=Q.tracer.startSpan("generic-pool.acquire",{},C);return PK.context.with(PK.trace.setSpan(C,X),()=>{A.call(this,(G,F)=>{if(X.end(),Y)return Y(G,F)},J)})}}}INQ.GenericPoolInstrumentation=VNQ});var NNQ=R((N$)=>{var f20=N$&&N$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),b20=N$&&N$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))f20(Q,A,B)};Object.defineProperty(N$,"__esModule",{value:!0});b20(DNQ(),N$)});var zNQ=R((MNQ)=>{Object.defineProperty(MNQ,"__esModule",{value:!0})});var jNQ=R((RNQ)=>{Object.defineProperty(RNQ,"__esModule",{value:!0});RNQ.PACKAGE_NAME=RNQ.PACKAGE_VERSION=void 0;RNQ.PACKAGE_VERSION="0.16.1";RNQ.PACKAGE_NAME="@opentelemetry/instrumentation-dataloader"});var kNQ=R((TNQ)=>{Object.defineProperty(TNQ,"__esModule",{value:!0});TNQ.DataloaderInstrumentation=void 0;var L$=NB(),K9=yA(),ONQ=jNQ(),Js="dataloader";class PNQ extends L$.InstrumentationBase{constructor(A={}){super(ONQ.PACKAGE_NAME,ONQ.PACKAGE_VERSION,A)}init(){return[new L$.InstrumentationNodeModuleDefinition(Js,[">=2.0.0 <3"],(A)=>{return this._patchLoad(A.prototype),this._patchLoadMany(A.prototype),this._getPatchedConstructor(A)},(A)=>{if((0,L$.isWrapped)(A.prototype.load))this._unwrap(A.prototype,"load");if((0,L$.isWrapped)(A.prototype.loadMany))this._unwrap(A.prototype,"loadMany")})]}shouldCreateSpans(){let A=this.getConfig();return K9.trace.getSpan(K9.context.active())!==void 0||!A.requireParentSpan}getSpanName(A,Q){let B=A.name;if(B===void 0||B===null)return`${Js}.${Q}`;return`${Js}.${Q} ${B}`}_getPatchedConstructor(A){let Q=A.prototype,B=this;function Y(...J){let C=new A(...J);if(!B.isEnabled())return C;if((0,L$.isWrapped)(C._batchLoadFn))B._unwrap(C,"_batchLoadFn");return B._wrap(C,"_batchLoadFn",(X)=>{return function(...F){var W;if(!B.isEnabled()||!B.shouldCreateSpans())return X.call(this,...F);let Z=K9.context.active(),U=B.tracer.startSpan(B.getSpanName(C,"batch"),{links:(W=this._batch)===null||W===void 0?void 0:W.spanLinks},Z);return K9.context.with(K9.trace.setSpan(Z,U),()=>{return X.apply(this,F).then(($)=>{return U.end(),$}).catch(($)=>{throw U.recordException($),U.setStatus({code:K9.SpanStatusCode.ERROR,message:$.message}),U.end(),$})})}}),C}return Y.prototype=Q,Y}_patchLoad(A){if((0,L$.isWrapped)(A.load))this._unwrap(A,"load");this._wrap(A,"load",this._getPatchedLoad.bind(this))}_getPatchedLoad(A){let Q=this;return function(...Y){if(!Q.shouldCreateSpans())return A.call(this,...Y);let J=K9.context.active(),C=Q.tracer.startSpan(Q.getSpanName(this,"load"),{kind:K9.SpanKind.CLIENT},J);return K9.context.with(K9.trace.setSpan(J,C),()=>{let X=A.call(this,...Y).then((F)=>{return C.end(),F}).catch((F)=>{throw C.recordException(F),C.setStatus({code:K9.SpanStatusCode.ERROR,message:F.message}),C.end(),F}),G=this;if(G._batch){if(!G._batch.spanLinks)G._batch.spanLinks=[];G._batch.spanLinks.push({context:C.spanContext()})}return X})}}_patchLoadMany(A){if((0,L$.isWrapped)(A.loadMany))this._unwrap(A,"loadMany");this._wrap(A,"loadMany",this._getPatchedLoadMany.bind(this))}_getPatchedLoadMany(A){let Q=this;return function(...Y){if(!Q.shouldCreateSpans())return A.call(this,...Y);let J=K9.context.active(),C=Q.tracer.startSpan(Q.getSpanName(this,"loadMany"),{kind:K9.SpanKind.CLIENT},J);return K9.context.with(K9.trace.setSpan(J,C),()=>{return A.call(this,...Y).then((X)=>{return C.end(),X})})}}}TNQ.DataloaderInstrumentation=PNQ});var vNQ=R((uF)=>{var d20=uF&&uF.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),_NQ=uF&&uF.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))d20(Q,A,B)};Object.defineProperty(uF,"__esModule",{value:!0});_NQ(zNQ(),uF);_NQ(kNQ(),uF)});var Cs=R((fNQ)=>{Object.defineProperty(fNQ,"__esModule",{value:!0});fNQ.DEFAULT_CONFIG=fNQ.EndOperation=void 0;var p20;(function(A){A.AutoAck="auto ack",A.Ack="ack",A.AckAll="ackAll",A.Reject="reject",A.Nack="nack",A.NackAll="nackAll",A.ChannelClosed="channel closed",A.ChannelError="channel error",A.InstrumentationTimeout="instrumentation timeout"})(p20=fNQ.EndOperation||(fNQ.EndOperation={}));fNQ.DEFAULT_CONFIG={consumeTimeoutMs:60000,useLinksForConsume:!1}});var pNQ=R((cNQ)=>{Object.defineProperty(cNQ,"__esModule",{value:!0});cNQ.isConfirmChannelTracing=cNQ.unmarkConfirmChannelTracing=cNQ.markConfirmChannelTracing=cNQ.getConnectionAttributesFromUrl=cNQ.getConnectionAttributesFromServer=cNQ.normalizeExchange=cNQ.CONNECTION_ATTRIBUTES=cNQ.CHANNEL_CONSUME_TIMEOUT_TIMER=cNQ.CHANNEL_SPANS_NOT_ENDED=cNQ.MESSAGE_STORED_SPAN=void 0;var Xs=yA(),L6=uB();cNQ.MESSAGE_STORED_SPAN=Symbol("opentelemetry.amqplib.message.stored-span");cNQ.CHANNEL_SPANS_NOT_ENDED=Symbol("opentelemetry.amqplib.channel.spans-not-ended");cNQ.CHANNEL_CONSUME_TIMEOUT_TIMER=Symbol("opentelemetry.amqplib.channel.consumer-timeout-timer");cNQ.CONNECTION_ATTRIBUTES=Symbol("opentelemetry.amqplib.connection.attributes");var Gs=(0,Xs.createContextKey)("opentelemetry.amqplib.channel.is-confirm-channel"),i20=(A)=>A!==""?A:"";cNQ.normalizeExchange=i20;var n20=(A)=>{return A.replace(/:[^:@/]*@/,":***@")},mNQ=(A,Q)=>{return A||(Q==="AMQP"?5672:5671)},uNQ=(A)=>{let Q=A||"amqp";return(Q.endsWith(":")?Q.substring(0,Q.length-1):Q).toUpperCase()},dNQ=(A)=>{return A||"localhost"},TK=(A,Q,B,Y)=>{if(B)return{[Q]:B};else return Xs.diag.error(`amqplib instrumentation: could not extract connection attribute ${Y} from user supplied url`,{url:A}),{}},s20=(A)=>{var Q,B;let Y=(B=(Q=A.serverProperties.product)===null||Q===void 0?void 0:Q.toLowerCase)===null||B===void 0?void 0:B.call(Q);if(Y)return{[L6.SEMATTRS_MESSAGING_SYSTEM]:Y};else return{}};cNQ.getConnectionAttributesFromServer=s20;var r20=(A)=>{let Q={[L6.SEMATTRS_MESSAGING_PROTOCOL_VERSION]:"0.9.1"};if(A=A||"amqp://localhost",typeof A==="object"){let B=A,Y=uNQ(B===null||B===void 0?void 0:B.protocol);Object.assign(Q,Object.assign({},TK(A,L6.SEMATTRS_MESSAGING_PROTOCOL,Y,"protocol")));let J=dNQ(B===null||B===void 0?void 0:B.hostname);Object.assign(Q,Object.assign({},TK(A,L6.SEMATTRS_NET_PEER_NAME,J,"hostname")));let C=mNQ(B.port,Y);Object.assign(Q,Object.assign({},TK(A,L6.SEMATTRS_NET_PEER_PORT,C,"port")))}else{let B=n20(A);Q[L6.SEMATTRS_MESSAGING_URL]=B;try{let Y=new URL(B),J=uNQ(Y.protocol);Object.assign(Q,Object.assign({},TK(B,L6.SEMATTRS_MESSAGING_PROTOCOL,J,"protocol")));let C=dNQ(Y.hostname);Object.assign(Q,Object.assign({},TK(B,L6.SEMATTRS_NET_PEER_NAME,C,"hostname")));let X=mNQ(Y.port?parseInt(Y.port):void 0,J);Object.assign(Q,Object.assign({},TK(B,L6.SEMATTRS_NET_PEER_PORT,X,"port")))}catch(Y){Xs.diag.error("amqplib instrumentation: error while extracting connection details from connection url",{censoredUrl:B,err:Y})}}return Q};cNQ.getConnectionAttributesFromUrl=r20;var a20=(A)=>{return A.setValue(Gs,!0)};cNQ.markConfirmChannelTracing=a20;var o20=(A)=>{return A.deleteValue(Gs)};cNQ.unmarkConfirmChannelTracing=o20;var t20=(A)=>{return A.getValue(Gs)===!0};cNQ.isConfirmChannelTracing=t20});var sNQ=R((iNQ)=>{Object.defineProperty(iNQ,"__esModule",{value:!0});iNQ.PACKAGE_NAME=iNQ.PACKAGE_VERSION=void 0;iNQ.PACKAGE_VERSION="0.46.1";iNQ.PACKAGE_NAME="@opentelemetry/instrumentation-amqplib"});var eNQ=R((oNQ)=>{Object.defineProperty(oNQ,"__esModule",{value:!0});oNQ.AmqplibInstrumentation=void 0;var x0=yA(),ZT=MB(),fB=NB(),n9=uB(),V9=Cs(),i0=pNQ(),rNQ=sNQ(),$T=[">=0.5.5 <1"];class aNQ extends fB.InstrumentationBase{constructor(A={}){super(rNQ.PACKAGE_NAME,rNQ.PACKAGE_VERSION,Object.assign(Object.assign({},V9.DEFAULT_CONFIG),A))}setConfig(A={}){super.setConfig(Object.assign(Object.assign({},V9.DEFAULT_CONFIG),A))}init(){let A=new fB.InstrumentationNodeModuleFile("amqplib/lib/channel_model.js",$T,this.patchChannelModel.bind(this),this.unpatchChannelModel.bind(this)),Q=new fB.InstrumentationNodeModuleFile("amqplib/lib/callback_model.js",$T,this.patchChannelModel.bind(this),this.unpatchChannelModel.bind(this)),B=new fB.InstrumentationNodeModuleFile("amqplib/lib/connect.js",$T,this.patchConnect.bind(this),this.unpatchConnect.bind(this));return new fB.InstrumentationNodeModuleDefinition("amqplib",$T,void 0,void 0,[A,B,Q])}patchConnect(A){if(A=this.unpatchConnect(A),!(0,fB.isWrapped)(A.connect))this._wrap(A,"connect",this.getConnectPatch.bind(this));return A}unpatchConnect(A){if((0,fB.isWrapped)(A.connect))this._unwrap(A,"connect");return A}patchChannelModel(A,Q){if(!(0,fB.isWrapped)(A.Channel.prototype.publish))this._wrap(A.Channel.prototype,"publish",this.getPublishPatch.bind(this,Q));if(!(0,fB.isWrapped)(A.Channel.prototype.consume))this._wrap(A.Channel.prototype,"consume",this.getConsumePatch.bind(this,Q));if(!(0,fB.isWrapped)(A.Channel.prototype.ack))this._wrap(A.Channel.prototype,"ack",this.getAckPatch.bind(this,!1,V9.EndOperation.Ack));if(!(0,fB.isWrapped)(A.Channel.prototype.nack))this._wrap(A.Channel.prototype,"nack",this.getAckPatch.bind(this,!0,V9.EndOperation.Nack));if(!(0,fB.isWrapped)(A.Channel.prototype.reject))this._wrap(A.Channel.prototype,"reject",this.getAckPatch.bind(this,!0,V9.EndOperation.Reject));if(!(0,fB.isWrapped)(A.Channel.prototype.ackAll))this._wrap(A.Channel.prototype,"ackAll",this.getAckAllPatch.bind(this,!1,V9.EndOperation.AckAll));if(!(0,fB.isWrapped)(A.Channel.prototype.nackAll))this._wrap(A.Channel.prototype,"nackAll",this.getAckAllPatch.bind(this,!0,V9.EndOperation.NackAll));if(!(0,fB.isWrapped)(A.Channel.prototype.emit))this._wrap(A.Channel.prototype,"emit",this.getChannelEmitPatch.bind(this));if(!(0,fB.isWrapped)(A.ConfirmChannel.prototype.publish))this._wrap(A.ConfirmChannel.prototype,"publish",this.getConfirmedPublishPatch.bind(this,Q));return A}unpatchChannelModel(A){if((0,fB.isWrapped)(A.Channel.prototype.publish))this._unwrap(A.Channel.prototype,"publish");if((0,fB.isWrapped)(A.Channel.prototype.consume))this._unwrap(A.Channel.prototype,"consume");if((0,fB.isWrapped)(A.Channel.prototype.ack))this._unwrap(A.Channel.prototype,"ack");if((0,fB.isWrapped)(A.Channel.prototype.nack))this._unwrap(A.Channel.prototype,"nack");if((0,fB.isWrapped)(A.Channel.prototype.reject))this._unwrap(A.Channel.prototype,"reject");if((0,fB.isWrapped)(A.Channel.prototype.ackAll))this._unwrap(A.Channel.prototype,"ackAll");if((0,fB.isWrapped)(A.Channel.prototype.nackAll))this._unwrap(A.Channel.prototype,"nackAll");if((0,fB.isWrapped)(A.Channel.prototype.emit))this._unwrap(A.Channel.prototype,"emit");if((0,fB.isWrapped)(A.ConfirmChannel.prototype.publish))this._unwrap(A.ConfirmChannel.prototype,"publish");return A}getConnectPatch(A){return function(B,Y,J){return A.call(this,B,Y,function(C,X){if(C==null){let G=(0,i0.getConnectionAttributesFromUrl)(B),F=(0,i0.getConnectionAttributesFromServer)(X);X[i0.CONNECTION_ATTRIBUTES]=Object.assign(Object.assign({},G),F)}J.apply(this,arguments)})}}getChannelEmitPatch(A){let Q=this;return function(Y){if(Y==="close"){Q.endAllSpansOnChannel(this,!0,V9.EndOperation.ChannelClosed,void 0);let J=this[i0.CHANNEL_CONSUME_TIMEOUT_TIMER];if(J)clearInterval(J);this[i0.CHANNEL_CONSUME_TIMEOUT_TIMER]=void 0}else if(Y==="error")Q.endAllSpansOnChannel(this,!0,V9.EndOperation.ChannelError,void 0);return A.apply(this,arguments)}}getAckAllPatch(A,Q,B){let Y=this;return function(C){return Y.endAllSpansOnChannel(this,A,Q,C),B.apply(this,arguments)}}getAckPatch(A,Q,B){let Y=this;return function(C,X,G){var F;let W=this,Z=Q===V9.EndOperation.Reject?X:G,U=(F=W[i0.CHANNEL_SPANS_NOT_ENDED])!==null&&F!==void 0?F:[],$=U.findIndex((E)=>E.msg===C);if($<0)Y.endConsumerSpan(C,A,Q,Z);else if(Q!==V9.EndOperation.Reject&&X){for(let E=0;E<=$;E++)Y.endConsumerSpan(U[E].msg,A,Q,Z);U.splice(0,$+1)}else Y.endConsumerSpan(C,A,Q,Z),U.splice($,1);return B.apply(this,arguments)}}getConsumePatch(A,Q){let B=this;return function(J,C,X){let G=this;if(!Object.prototype.hasOwnProperty.call(G,i0.CHANNEL_SPANS_NOT_ENDED)){let{consumeTimeoutMs:W}=B.getConfig();if(W){let Z=setInterval(()=>{B.checkConsumeTimeoutOnChannel(G)},W);Z.unref(),G[i0.CHANNEL_CONSUME_TIMEOUT_TIMER]=Z}G[i0.CHANNEL_SPANS_NOT_ENDED]=[]}let F=function(W){var Z,U,$,E,K;if(!W)return C.call(this,W);let I=(Z=W.properties.headers)!==null&&Z!==void 0?Z:{},V=x0.propagation.extract(x0.ROOT_CONTEXT,I),H=(U=W.fields)===null||U===void 0?void 0:U.exchange,D;if(B._config.useLinksForConsume){let N=V?($=x0.trace.getSpan(V))===null||$===void 0?void 0:$.spanContext():void 0;if(V=void 0,N)D=[{context:N}]}let L=B.tracer.startSpan(`${J} process`,{kind:x0.SpanKind.CONSUMER,attributes:Object.assign(Object.assign({},(E=G===null||G===void 0?void 0:G.connection)===null||E===void 0?void 0:E[i0.CONNECTION_ATTRIBUTES]),{[n9.SEMATTRS_MESSAGING_DESTINATION]:H,[n9.SEMATTRS_MESSAGING_DESTINATION_KIND]:n9.MESSAGINGDESTINATIONKINDVALUES_TOPIC,[n9.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY]:(K=W.fields)===null||K===void 0?void 0:K.routingKey,[n9.SEMATTRS_MESSAGING_OPERATION]:n9.MESSAGINGOPERATIONVALUES_PROCESS,[n9.SEMATTRS_MESSAGING_MESSAGE_ID]:W===null||W===void 0?void 0:W.properties.messageId,[n9.SEMATTRS_MESSAGING_CONVERSATION_ID]:W===null||W===void 0?void 0:W.properties.correlationId}),links:D},V),{consumeHook:z}=B.getConfig();if(z)(0,fB.safeExecuteInTheMiddle)(()=>z(L,{moduleVersion:A,msg:W}),(N)=>{if(N)x0.diag.error("amqplib instrumentation: consumerHook error",N)},!0);if(!(X===null||X===void 0?void 0:X.noAck))G[i0.CHANNEL_SPANS_NOT_ENDED].push({msg:W,timeOfConsume:(0,ZT.hrTime)()}),W[i0.MESSAGE_STORED_SPAN]=L;let M=V?V:x0.ROOT_CONTEXT;if(x0.context.with(x0.trace.setSpan(M,L),()=>{C.call(this,W)}),X===null||X===void 0?void 0:X.noAck)B.callConsumeEndHook(L,W,!1,V9.EndOperation.AutoAck),L.end()};return arguments[1]=F,Q.apply(this,arguments)}}getConfirmedPublishPatch(A,Q){let B=this;return function(J,C,X,G,F){let W=this,{span:Z,modifiedOptions:U}=B.createPublishSpan(B,J,C,W,G),{publishHook:$}=B.getConfig();if($)(0,fB.safeExecuteInTheMiddle)(()=>$(Z,{moduleVersion:A,exchange:J,routingKey:C,content:X,options:U,isConfirmChannel:!0}),(V)=>{if(V)x0.diag.error("amqplib instrumentation: publishHook error",V)},!0);let E=function(V,H){try{F===null||F===void 0||F.call(this,V,H)}finally{let{publishConfirmHook:D}=B.getConfig();if(D)(0,fB.safeExecuteInTheMiddle)(()=>D(Z,{moduleVersion:A,exchange:J,routingKey:C,content:X,options:G,isConfirmChannel:!0,confirmError:V}),(L)=>{if(L)x0.diag.error("amqplib instrumentation: publishConfirmHook error",L)},!0);if(V)Z.setStatus({code:x0.SpanStatusCode.ERROR,message:"message confirmation has been nack'ed"});Z.end()}},K=(0,i0.markConfirmChannelTracing)(x0.context.active()),I=[...arguments];return I[3]=U,I[4]=x0.context.bind((0,i0.unmarkConfirmChannelTracing)(x0.trace.setSpan(K,Z)),E),x0.context.with(K,Q.bind(this,...I))}}getPublishPatch(A,Q){let B=this;return function(J,C,X,G){if((0,i0.isConfirmChannelTracing)(x0.context.active()))return Q.apply(this,arguments);else{let F=this,{span:W,modifiedOptions:Z}=B.createPublishSpan(B,J,C,F,G),{publishHook:U}=B.getConfig();if(U)(0,fB.safeExecuteInTheMiddle)(()=>U(W,{moduleVersion:A,exchange:J,routingKey:C,content:X,options:Z,isConfirmChannel:!1}),(K)=>{if(K)x0.diag.error("amqplib instrumentation: publishHook error",K)},!0);let $=[...arguments];$[3]=Z;let E=Q.apply(this,$);return W.end(),E}}}createPublishSpan(A,Q,B,Y,J){var C;let X=(0,i0.normalizeExchange)(Q),G=A.tracer.startSpan(`publish ${X}`,{kind:x0.SpanKind.PRODUCER,attributes:Object.assign(Object.assign({},Y.connection[i0.CONNECTION_ATTRIBUTES]),{[n9.SEMATTRS_MESSAGING_DESTINATION]:Q,[n9.SEMATTRS_MESSAGING_DESTINATION_KIND]:n9.MESSAGINGDESTINATIONKINDVALUES_TOPIC,[n9.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY]:B,[n9.SEMATTRS_MESSAGING_MESSAGE_ID]:J===null||J===void 0?void 0:J.messageId,[n9.SEMATTRS_MESSAGING_CONVERSATION_ID]:J===null||J===void 0?void 0:J.correlationId})}),F=J!==null&&J!==void 0?J:{};return F.headers=(C=F.headers)!==null&&C!==void 0?C:{},x0.propagation.inject(x0.trace.setSpan(x0.context.active(),G),F.headers),{span:G,modifiedOptions:F}}endConsumerSpan(A,Q,B,Y){let J=A[i0.MESSAGE_STORED_SPAN];if(!J)return;if(Q!==!1)J.setStatus({code:x0.SpanStatusCode.ERROR,message:B!==V9.EndOperation.ChannelClosed&&B!==V9.EndOperation.ChannelError?`${B} called on message${Y===!0?" with requeue":Y===!1?" without requeue":""}`:B});this.callConsumeEndHook(J,A,Q,B),J.end(),A[i0.MESSAGE_STORED_SPAN]=void 0}endAllSpansOnChannel(A,Q,B,Y){var J;((J=A[i0.CHANNEL_SPANS_NOT_ENDED])!==null&&J!==void 0?J:[]).forEach((X)=>{this.endConsumerSpan(X.msg,Q,B,Y)}),A[i0.CHANNEL_SPANS_NOT_ENDED]=[]}callConsumeEndHook(A,Q,B,Y){let{consumeEndHook:J}=this.getConfig();if(!J)return;(0,fB.safeExecuteInTheMiddle)(()=>J(A,{msg:Q,rejected:B,endOperation:Y}),(C)=>{if(C)x0.diag.error("amqplib instrumentation: consumerEndHook error",C)},!0)}checkConsumeTimeoutOnChannel(A){var Q;let B=(0,ZT.hrTime)(),Y=(Q=A[i0.CHANNEL_SPANS_NOT_ENDED])!==null&&Q!==void 0?Q:[],J,{consumeTimeoutMs:C}=this.getConfig();for(J=0;J{var W30=dF&&dF.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),ALQ=dF&&dF.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))W30(Q,A,B)};Object.defineProperty(dF,"__esModule",{value:!0});ALQ(eNQ(),dF);ALQ(Cs(),dF)});var $s=R((WLQ)=>{Object.defineProperty(WLQ,"__esModule",{value:!0});WLQ.AbstractAsyncHooksContextManager=void 0;var q30=u("events"),M30=["addListener","on","once","prependListener","prependOnceListener"];class FLQ{constructor(){this._kOtListeners=Symbol("OtListeners"),this._wrapped=!1}bind(A,Q){if(Q instanceof q30.EventEmitter)return this._bindEventEmitter(A,Q);if(typeof Q==="function")return this._bindFunction(A,Q);return Q}_bindFunction(A,Q){let B=this,Y=function(...J){return B.with(A,()=>Q.apply(this,J))};return Object.defineProperty(Y,"length",{enumerable:!1,configurable:!0,writable:!1,value:Q.length}),Y}_bindEventEmitter(A,Q){if(this._getPatchMap(Q)!==void 0)return Q;if(this._createPatchMap(Q),M30.forEach((Y)=>{if(Q[Y]===void 0)return;Q[Y]=this._patchAddListener(Q,Q[Y],A)}),typeof Q.removeListener==="function")Q.removeListener=this._patchRemoveListener(Q,Q.removeListener);if(typeof Q.off==="function")Q.off=this._patchRemoveListener(Q,Q.off);if(typeof Q.removeAllListeners==="function")Q.removeAllListeners=this._patchRemoveAllListeners(Q,Q.removeAllListeners);return Q}_patchRemoveListener(A,Q){let B=this;return function(Y,J){var C;let X=(C=B._getPatchMap(A))===null||C===void 0?void 0:C[Y];if(X===void 0)return Q.call(this,Y,J);let G=X.get(J);return Q.call(this,Y,G||J)}}_patchRemoveAllListeners(A,Q){let B=this;return function(Y){let J=B._getPatchMap(A);if(J!==void 0){if(arguments.length===0)B._createPatchMap(A);else if(J[Y]!==void 0)delete J[Y]}return Q.apply(this,arguments)}}_patchAddListener(A,Q,B){let Y=this;return function(J,C){if(Y._wrapped)return Q.call(this,J,C);let X=Y._getPatchMap(A);if(X===void 0)X=Y._createPatchMap(A);let G=X[J];if(G===void 0)G=new WeakMap,X[J]=G;let F=Y.bind(B,C);G.set(C,F),Y._wrapped=!0;try{return Q.call(this,J,F)}finally{Y._wrapped=!1}}}_createPatchMap(A){let Q=Object.create(null);return A[this._kOtListeners]=Q,Q}_getPatchMap(A){return A[this._kOtListeners]}}WLQ.AbstractAsyncHooksContextManager=FLQ});var KLQ=R((ULQ)=>{Object.defineProperty(ULQ,"__esModule",{value:!0});ULQ.AsyncHooksContextManager=void 0;var z30=yA(),R30=u("async_hooks"),w30=$s();class $LQ extends w30.AbstractAsyncHooksContextManager{constructor(){super();this._contexts=new Map,this._stack=[],this._asyncHook=R30.createHook({init:this._init.bind(this),before:this._before.bind(this),after:this._after.bind(this),destroy:this._destroy.bind(this),promiseResolve:this._destroy.bind(this)})}active(){var A;return(A=this._stack[this._stack.length-1])!==null&&A!==void 0?A:z30.ROOT_CONTEXT}with(A,Q,B,...Y){this._enterContext(A);try{return Q.call(B,...Y)}finally{this._exitContext()}}enable(){return this._asyncHook.enable(),this}disable(){return this._asyncHook.disable(),this._contexts.clear(),this._stack=[],this}_init(A,Q){if(Q==="TIMERWRAP")return;let B=this._stack[this._stack.length-1];if(B!==void 0)this._contexts.set(A,B)}_destroy(A){this._contexts.delete(A)}_before(A){let Q=this._contexts.get(A);if(Q!==void 0)this._enterContext(Q)}_after(){this._exitContext()}_enterContext(A){this._stack.push(A)}_exitContext(){this._stack.pop()}}ULQ.AsyncHooksContextManager=$LQ});var DLQ=R((ILQ)=>{Object.defineProperty(ILQ,"__esModule",{value:!0});ILQ.AsyncLocalStorageContextManager=void 0;var j30=yA(),O30=u("async_hooks"),P30=$s();class VLQ extends P30.AbstractAsyncHooksContextManager{constructor(){super();this._asyncLocalStorage=new O30.AsyncLocalStorage}active(){var A;return(A=this._asyncLocalStorage.getStore())!==null&&A!==void 0?A:j30.ROOT_CONTEXT}with(A,Q,B,...Y){let J=B==null?Q:Q.bind(B);return this._asyncLocalStorage.run(A,J,...Y)}enable(){return this}disable(){return this._asyncLocalStorage.disable(),this}}ILQ.AsyncLocalStorageContextManager=VLQ});var NLQ=R((IT)=>{Object.defineProperty(IT,"__esModule",{value:!0});IT.AsyncLocalStorageContextManager=IT.AsyncHooksContextManager=void 0;var T30=KLQ();Object.defineProperty(IT,"AsyncHooksContextManager",{enumerable:!0,get:function(){return T30.AsyncHooksContextManager}});var S30=DLQ();Object.defineProperty(IT,"AsyncLocalStorageContextManager",{enumerable:!0,get:function(){return S30.AsyncLocalStorageContextManager}})});var Q0=R((cpY,uLQ)=>{uLQ.exports={kClose:Symbol("close"),kDestroy:Symbol("destroy"),kDispatch:Symbol("dispatch"),kUrl:Symbol("url"),kWriting:Symbol("writing"),kResuming:Symbol("resuming"),kQueue:Symbol("queue"),kConnect:Symbol("connect"),kConnecting:Symbol("connecting"),kKeepAliveDefaultTimeout:Symbol("default keep alive timeout"),kKeepAliveMaxTimeout:Symbol("max keep alive timeout"),kKeepAliveTimeoutThreshold:Symbol("keep alive timeout threshold"),kKeepAliveTimeoutValue:Symbol("keep alive timeout"),kKeepAlive:Symbol("keep alive"),kHeadersTimeout:Symbol("headers timeout"),kBodyTimeout:Symbol("body timeout"),kServerName:Symbol("server name"),kLocalAddress:Symbol("local address"),kHost:Symbol("host"),kNoRef:Symbol("no ref"),kBodyUsed:Symbol("used"),kBody:Symbol("abstracted request body"),kRunning:Symbol("running"),kBlocking:Symbol("blocking"),kPending:Symbol("pending"),kSize:Symbol("size"),kBusy:Symbol("busy"),kQueued:Symbol("queued"),kFree:Symbol("free"),kConnected:Symbol("connected"),kClosed:Symbol("closed"),kNeedDrain:Symbol("need drain"),kReset:Symbol("reset"),kDestroyed:Symbol.for("nodejs.stream.destroyed"),kResume:Symbol("resume"),kOnError:Symbol("on error"),kMaxHeadersSize:Symbol("max headers size"),kRunningIdx:Symbol("running index"),kPendingIdx:Symbol("pending index"),kError:Symbol("error"),kClients:Symbol("clients"),kClient:Symbol("client"),kParser:Symbol("parser"),kOnDestroyed:Symbol("destroy callbacks"),kPipelining:Symbol("pipelining"),kSocket:Symbol("socket"),kHostHeader:Symbol("host header"),kConnector:Symbol("connector"),kStrictContentLength:Symbol("strict content length"),kMaxRedirections:Symbol("maxRedirections"),kMaxRequests:Symbol("maxRequestsPerClient"),kProxy:Symbol("proxy agent options"),kCounter:Symbol("socket request counter"),kMaxResponseSize:Symbol("max response size"),kHTTP2Session:Symbol("http2Session"),kHTTP2SessionState:Symbol("http2Session state"),kRetryHandlerDefaultRetry:Symbol("retry agent default retry"),kConstruct:Symbol("constructable"),kListeners:Symbol("listeners"),kHTTPContext:Symbol("http context"),kMaxConcurrentStreams:Symbol("max concurrent streams"),kNoProxyAgent:Symbol("no proxy agent"),kHttpProxyAgent:Symbol("http proxy agent"),kHttpsProxyAgent:Symbol("https proxy agent")}});var Ps=R((lpY,pLQ)=>{var kK=0,qs=1000,Ms=(qs>>1)-1,cF,zs=Symbol("kFastTimer"),M6=[],Rs=-2,ws=-1,cLQ=0,dLQ=1;function js(){kK+=Ms;let A=0,Q=M6.length;while(A=B._idleStart+B._idleTimeout)B._state=ws,B._idleStart=-1,B._onTimeout(B._timerArg);if(B._state===ws){if(B._state=Rs,--Q!==0)M6[A]=M6[Q]}else++A}if(M6.length=Q,M6.length!==0)lLQ()}function lLQ(){if(cF?.refresh)cF.refresh();else clearTimeout(cF),cF=setTimeout(js,Ms),cF?.unref()}class Os{[zs]=!0;_state=Rs;_idleTimeout=-1;_idleStart=-1;_onTimeout;_timerArg;constructor(A,Q,B){this._onTimeout=A,this._idleTimeout=Q,this._timerArg=B,this.refresh()}refresh(){if(this._state===Rs)M6.push(this);if(!cF||M6.length===1)lLQ();this._state=cLQ}clear(){this._state=ws,this._idleStart=-1}}pLQ.exports={setTimeout(A,Q,B){return Q<=qs?setTimeout(A,Q,B):new Os(A,Q,B)},clearTimeout(A){if(A[zs])A.clear();else clearTimeout(A)},setFastTimeout(A,Q,B){return new Os(A,Q,B)},clearFastTimeout(A){A.clear()},now(){return kK},tick(A=0){kK+=A-qs+1,js(),js()},reset(){kK=0,M6.length=0,clearTimeout(cF),cF=null},kFastTimer:zs}});var QB=R((ppY,hqQ)=>{var iLQ=Symbol.for("undici.error.UND_ERR");class n0 extends Error{constructor(A,Q){super(A,Q);this.name="UndiciError",this.code="UND_ERR"}static[Symbol.hasInstance](A){return A&&A[iLQ]===!0}get[iLQ](){return!0}}var nLQ=Symbol.for("undici.error.UND_ERR_CONNECT_TIMEOUT");class VqQ extends n0{constructor(A){super(A);this.name="ConnectTimeoutError",this.message=A||"Connect Timeout Error",this.code="UND_ERR_CONNECT_TIMEOUT"}static[Symbol.hasInstance](A){return A&&A[nLQ]===!0}get[nLQ](){return!0}}var sLQ=Symbol.for("undici.error.UND_ERR_HEADERS_TIMEOUT");class IqQ extends n0{constructor(A){super(A);this.name="HeadersTimeoutError",this.message=A||"Headers Timeout Error",this.code="UND_ERR_HEADERS_TIMEOUT"}static[Symbol.hasInstance](A){return A&&A[sLQ]===!0}get[sLQ](){return!0}}var rLQ=Symbol.for("undici.error.UND_ERR_HEADERS_OVERFLOW");class HqQ extends n0{constructor(A){super(A);this.name="HeadersOverflowError",this.message=A||"Headers Overflow Error",this.code="UND_ERR_HEADERS_OVERFLOW"}static[Symbol.hasInstance](A){return A&&A[rLQ]===!0}get[rLQ](){return!0}}var aLQ=Symbol.for("undici.error.UND_ERR_BODY_TIMEOUT");class DqQ extends n0{constructor(A){super(A);this.name="BodyTimeoutError",this.message=A||"Body Timeout Error",this.code="UND_ERR_BODY_TIMEOUT"}static[Symbol.hasInstance](A){return A&&A[aLQ]===!0}get[aLQ](){return!0}}var oLQ=Symbol.for("undici.error.UND_ERR_INVALID_ARG");class NqQ extends n0{constructor(A){super(A);this.name="InvalidArgumentError",this.message=A||"Invalid Argument Error",this.code="UND_ERR_INVALID_ARG"}static[Symbol.hasInstance](A){return A&&A[oLQ]===!0}get[oLQ](){return!0}}var tLQ=Symbol.for("undici.error.UND_ERR_INVALID_RETURN_VALUE");class LqQ extends n0{constructor(A){super(A);this.name="InvalidReturnValueError",this.message=A||"Invalid Return Value Error",this.code="UND_ERR_INVALID_RETURN_VALUE"}static[Symbol.hasInstance](A){return A&&A[tLQ]===!0}get[tLQ](){return!0}}var eLQ=Symbol.for("undici.error.UND_ERR_ABORT");class Ts extends n0{constructor(A){super(A);this.name="AbortError",this.message=A||"The operation was aborted",this.code="UND_ERR_ABORT"}static[Symbol.hasInstance](A){return A&&A[eLQ]===!0}get[eLQ](){return!0}}var AqQ=Symbol.for("undici.error.UND_ERR_ABORTED");class qqQ extends Ts{constructor(A){super(A);this.name="AbortError",this.message=A||"Request aborted",this.code="UND_ERR_ABORTED"}static[Symbol.hasInstance](A){return A&&A[AqQ]===!0}get[AqQ](){return!0}}var QqQ=Symbol.for("undici.error.UND_ERR_INFO");class MqQ extends n0{constructor(A){super(A);this.name="InformationalError",this.message=A||"Request information",this.code="UND_ERR_INFO"}static[Symbol.hasInstance](A){return A&&A[QqQ]===!0}get[QqQ](){return!0}}var BqQ=Symbol.for("undici.error.UND_ERR_REQ_CONTENT_LENGTH_MISMATCH");class zqQ extends n0{constructor(A){super(A);this.name="RequestContentLengthMismatchError",this.message=A||"Request body length does not match content-length header",this.code="UND_ERR_REQ_CONTENT_LENGTH_MISMATCH"}static[Symbol.hasInstance](A){return A&&A[BqQ]===!0}get[BqQ](){return!0}}var YqQ=Symbol.for("undici.error.UND_ERR_RES_CONTENT_LENGTH_MISMATCH");class RqQ extends n0{constructor(A){super(A);this.name="ResponseContentLengthMismatchError",this.message=A||"Response body length does not match content-length header",this.code="UND_ERR_RES_CONTENT_LENGTH_MISMATCH"}static[Symbol.hasInstance](A){return A&&A[YqQ]===!0}get[YqQ](){return!0}}var JqQ=Symbol.for("undici.error.UND_ERR_DESTROYED");class wqQ extends n0{constructor(A){super(A);this.name="ClientDestroyedError",this.message=A||"The client is destroyed",this.code="UND_ERR_DESTROYED"}static[Symbol.hasInstance](A){return A&&A[JqQ]===!0}get[JqQ](){return!0}}var CqQ=Symbol.for("undici.error.UND_ERR_CLOSED");class jqQ extends n0{constructor(A){super(A);this.name="ClientClosedError",this.message=A||"The client is closed",this.code="UND_ERR_CLOSED"}static[Symbol.hasInstance](A){return A&&A[CqQ]===!0}get[CqQ](){return!0}}var XqQ=Symbol.for("undici.error.UND_ERR_SOCKET");class OqQ extends n0{constructor(A,Q){super(A);this.name="SocketError",this.message=A||"Socket error",this.code="UND_ERR_SOCKET",this.socket=Q}static[Symbol.hasInstance](A){return A&&A[XqQ]===!0}get[XqQ](){return!0}}var GqQ=Symbol.for("undici.error.UND_ERR_NOT_SUPPORTED");class PqQ extends n0{constructor(A){super(A);this.name="NotSupportedError",this.message=A||"Not supported error",this.code="UND_ERR_NOT_SUPPORTED"}static[Symbol.hasInstance](A){return A&&A[GqQ]===!0}get[GqQ](){return!0}}var FqQ=Symbol.for("undici.error.UND_ERR_BPL_MISSING_UPSTREAM");class TqQ extends n0{constructor(A){super(A);this.name="MissingUpstreamError",this.message=A||"No upstream has been added to the BalancedPool",this.code="UND_ERR_BPL_MISSING_UPSTREAM"}static[Symbol.hasInstance](A){return A&&A[FqQ]===!0}get[FqQ](){return!0}}var WqQ=Symbol.for("undici.error.UND_ERR_HTTP_PARSER");class SqQ extends Error{constructor(A,Q,B){super(A);this.name="HTTPParserError",this.code=Q?`HPE_${Q}`:void 0,this.data=B?B.toString():void 0}static[Symbol.hasInstance](A){return A&&A[WqQ]===!0}get[WqQ](){return!0}}var ZqQ=Symbol.for("undici.error.UND_ERR_RES_EXCEEDED_MAX_SIZE");class kqQ extends n0{constructor(A){super(A);this.name="ResponseExceededMaxSizeError",this.message=A||"Response content exceeded max size",this.code="UND_ERR_RES_EXCEEDED_MAX_SIZE"}static[Symbol.hasInstance](A){return A&&A[ZqQ]===!0}get[ZqQ](){return!0}}var $qQ=Symbol.for("undici.error.UND_ERR_REQ_RETRY");class _qQ extends n0{constructor(A,Q,{headers:B,data:Y}){super(A);this.name="RequestRetryError",this.message=A||"Request retry error",this.code="UND_ERR_REQ_RETRY",this.statusCode=Q,this.data=Y,this.headers=B}static[Symbol.hasInstance](A){return A&&A[$qQ]===!0}get[$qQ](){return!0}}var UqQ=Symbol.for("undici.error.UND_ERR_RESPONSE");class vqQ extends n0{constructor(A,Q,{headers:B,body:Y}){super(A);this.name="ResponseError",this.message=A||"Response error",this.code="UND_ERR_RESPONSE",this.statusCode=Q,this.body=Y,this.headers=B}static[Symbol.hasInstance](A){return A&&A[UqQ]===!0}get[UqQ](){return!0}}var EqQ=Symbol.for("undici.error.UND_ERR_PRX_TLS");class yqQ extends n0{constructor(A,Q,B={}){super(Q,{cause:A,...B});this.name="SecureProxyConnectionError",this.message=Q||"Secure Proxy Connection failed",this.code="UND_ERR_PRX_TLS",this.cause=A}static[Symbol.hasInstance](A){return A&&A[EqQ]===!0}get[EqQ](){return!0}}var KqQ=Symbol.for("undici.error.UND_ERR_MAX_ORIGINS_REACHED");class gqQ extends n0{constructor(A){super(A);this.name="MaxOriginsReachedError",this.message=A||"Maximum allowed origins reached",this.code="UND_ERR_MAX_ORIGINS_REACHED"}static[Symbol.hasInstance](A){return A&&A[KqQ]===!0}get[KqQ](){return!0}}hqQ.exports={AbortError:Ts,HTTPParserError:SqQ,UndiciError:n0,HeadersTimeoutError:IqQ,HeadersOverflowError:HqQ,BodyTimeoutError:DqQ,RequestContentLengthMismatchError:zqQ,ConnectTimeoutError:VqQ,InvalidArgumentError:NqQ,InvalidReturnValueError:LqQ,RequestAbortedError:qqQ,ClientDestroyedError:wqQ,ClientClosedError:jqQ,InformationalError:MqQ,SocketError:OqQ,NotSupportedError:PqQ,ResponseContentLengthMismatchError:RqQ,BalancedPoolMissingUpstreamError:TqQ,ResponseExceededMaxSizeError:kqQ,RequestRetryError:_qQ,ResponseError:vqQ,SecureProxyConnectionError:yqQ,MaxOriginsReachedError:gqQ}});var TT=R((ipY,fqQ)=>{var Ss=["Accept","Accept-Encoding","Accept-Language","Accept-Ranges","Access-Control-Allow-Credentials","Access-Control-Allow-Headers","Access-Control-Allow-Methods","Access-Control-Allow-Origin","Access-Control-Expose-Headers","Access-Control-Max-Age","Access-Control-Request-Headers","Access-Control-Request-Method","Age","Allow","Alt-Svc","Alt-Used","Authorization","Cache-Control","Clear-Site-Data","Connection","Content-Disposition","Content-Encoding","Content-Language","Content-Length","Content-Location","Content-Range","Content-Security-Policy","Content-Security-Policy-Report-Only","Content-Type","Cookie","Cross-Origin-Embedder-Policy","Cross-Origin-Opener-Policy","Cross-Origin-Resource-Policy","Date","Device-Memory","Downlink","ECT","ETag","Expect","Expect-CT","Expires","Forwarded","From","Host","If-Match","If-Modified-Since","If-None-Match","If-Range","If-Unmodified-Since","Keep-Alive","Last-Modified","Link","Location","Max-Forwards","Origin","Permissions-Policy","Pragma","Proxy-Authenticate","Proxy-Authorization","RTT","Range","Referer","Referrer-Policy","Refresh","Retry-After","Sec-WebSocket-Accept","Sec-WebSocket-Extensions","Sec-WebSocket-Key","Sec-WebSocket-Protocol","Sec-WebSocket-Version","Server","Server-Timing","Service-Worker-Allowed","Service-Worker-Navigation-Preload","Set-Cookie","SourceMap","Strict-Transport-Security","Supports-Loading-Mode","TE","Timing-Allow-Origin","Trailer","Transfer-Encoding","Upgrade","Upgrade-Insecure-Requests","User-Agent","Vary","Via","WWW-Authenticate","X-Content-Type-Options","X-DNS-Prefetch-Control","X-Frame-Options","X-Permitted-Cross-Domain-Policies","X-Powered-By","X-Requested-With","X-XSS-Protection"],PT={};Object.setPrototypeOf(PT,null);var xqQ={};Object.setPrototypeOf(xqQ,null);function CR0(A){let Q=xqQ[A];if(Q===void 0)Q=Buffer.from(A);return Q}for(let A=0;A{var{wellknownHeaderNames:bqQ,headerNameLowerCasedRecord:XR0}=TT();class _K{value=null;left=null;middle=null;right=null;code;constructor(A,Q,B){if(B===void 0||B>=A.length)throw TypeError("Unreachable");if((this.code=A.charCodeAt(B))>127)throw TypeError("key must be ascii string");if(A.length!==++B)this.middle=new _K(A,Q,B);else this.value=Q}add(A,Q){let B=A.length;if(B===0)throw TypeError("Unreachable");let Y=0,J=this;while(!0){let C=A.charCodeAt(Y);if(C>127)throw TypeError("key must be ascii string");if(J.code===C)if(B===++Y){J.value=Q;break}else if(J.middle!==null)J=J.middle;else{J.middle=new _K(A,Q,Y);break}else if(J.code=65)J|=32;while(Y!==null){if(J===Y.code){if(Q===++B)return Y;Y=Y.middle;break}Y=Y.code{var cL=u("node:assert"),{kDestroyed:iqQ,kBodyUsed:vK,kListeners:kT,kBody:cqQ}=Q0(),{IncomingMessage:GR0}=u("node:http"),nqQ=u("node:stream"),FR0=u("node:net"),{stringify:WR0}=u("node:querystring"),{EventEmitter:ZR0}=u("node:events"),ST=Ps(),{InvalidArgumentError:iY,ConnectTimeoutError:$R0}=QB(),{headerNameLowerCasedRecord:UR0}=TT(),{tree:sqQ}=dqQ(),[ER0,KR0]=process.versions.node.split(".",2).map((A)=>Number(A));class _s{constructor(A){this[cqQ]=A,this[vK]=!1}async*[Symbol.asyncIterator](){cL(!this[vK],"disturbed"),this[vK]=!0,yield*this[cqQ]}}function lqQ(){}function VR0(A){if(vT(A)){if(AMQ(A)===0)A.on("data",function(){cL(!1)});if(typeof A.readableDidRead!=="boolean")A[vK]=!1,ZR0.prototype.on.call(A,"data",function(){this[vK]=!0});return A}else if(A&&typeof A.pipeTo==="function")return new _s(A);else if(A&&typeof A!=="string"&&!ArrayBuffer.isView(A)&&eqQ(A))return new _s(A);else return A}function vT(A){return A&&typeof A==="object"&&typeof A.pipe==="function"&&typeof A.on==="function"}function rqQ(A){if(A===null)return!1;else if(A instanceof Blob)return!0;else if(typeof A!=="object")return!1;else{let Q=A[Symbol.toStringTag];return(Q==="Blob"||Q==="File")&&(("stream"in A)&&typeof A.stream==="function"||("arrayBuffer"in A)&&typeof A.arrayBuffer==="function")}}function aqQ(A){return A.includes("?")||A.includes("#")}function IR0(A,Q){if(aqQ(A))throw Error('Query params cannot be passed when url already contains "?" or "#".');let B=WR0(Q);if(B)A+="?"+B;return A}function oqQ(A){let Q=parseInt(A,10);return Q===Number(A)&&Q>=0&&Q<=65535}function _T(A){return A!=null&&A[0]==="h"&&A[1]==="t"&&A[2]==="t"&&A[3]==="p"&&(A[4]===":"||A[4]==="s"&&A[5]===":")}function tqQ(A){if(typeof A==="string"){if(A=new URL(A),!_T(A.origin||A.protocol))throw new iY("Invalid URL protocol: the URL must start with `http:` or `https:`.");return A}if(!A||typeof A!=="object")throw new iY("Invalid URL: The URL argument must be a non-null object.");if(!(A instanceof URL)){if(A.port!=null&&A.port!==""&&oqQ(A.port)===!1)throw new iY("Invalid URL: port must be a valid integer or a string representation of an integer.");if(A.path!=null&&typeof A.path!=="string")throw new iY("Invalid URL path: the path must be a string or null/undefined.");if(A.pathname!=null&&typeof A.pathname!=="string")throw new iY("Invalid URL pathname: the pathname must be a string or null/undefined.");if(A.hostname!=null&&typeof A.hostname!=="string")throw new iY("Invalid URL hostname: the hostname must be a string or null/undefined.");if(A.origin!=null&&typeof A.origin!=="string")throw new iY("Invalid URL origin: the origin must be a string or null/undefined.");if(!_T(A.origin||A.protocol))throw new iY("Invalid URL protocol: the URL must start with `http:` or `https:`.");let Q=A.port!=null?A.port:A.protocol==="https:"?443:80,B=A.origin!=null?A.origin:`${A.protocol||""}//${A.hostname||""}:${Q}`,Y=A.path!=null?A.path:`${A.pathname||""}${A.search||""}`;if(B[B.length-1]==="/")B=B.slice(0,B.length-1);if(Y&&Y[0]!=="/")Y=`/${Y}`;return new URL(`${B}${Y}`)}if(!_T(A.origin||A.protocol))throw new iY("Invalid URL protocol: the URL must start with `http:` or `https:`.");return A}function HR0(A){if(A=tqQ(A),A.pathname!=="/"||A.search||A.hash)throw new iY("invalid url");return A}function DR0(A){if(A[0]==="["){let B=A.indexOf("]");return cL(B!==-1),A.substring(1,B)}let Q=A.indexOf(":");if(Q===-1)return A;return A.substring(0,Q)}function NR0(A){if(!A)return null;cL(typeof A==="string");let Q=DR0(A);if(FR0.isIP(Q))return"";return Q}function LR0(A){return JSON.parse(JSON.stringify(A))}function qR0(A){return A!=null&&typeof A[Symbol.asyncIterator]==="function"}function eqQ(A){return A!=null&&(typeof A[Symbol.iterator]==="function"||typeof A[Symbol.asyncIterator]==="function")}function AMQ(A){if(A==null)return 0;else if(vT(A)){let Q=A._readableState;return Q&&Q.objectMode===!1&&Q.ended===!0&&Number.isFinite(Q.length)?Q.length:null}else if(rqQ(A))return A.size!=null?A.size:null;else if(JMQ(A))return A.byteLength;return null}function QMQ(A){return A&&!!(A.destroyed||A[iqQ]||nqQ.isDestroyed?.(A))}function BMQ(A,Q){if(A==null||!vT(A)||QMQ(A))return;if(typeof A.destroy==="function"){if(Object.getPrototypeOf(A).constructor===GR0)A.socket=null;A.destroy(Q)}else if(Q)queueMicrotask(()=>{A.emit("error",Q)});if(A.destroyed!==!0)A[iqQ]=!0}var MR0=/timeout=(\d+)/;function zR0(A){let Q=A.match(MR0);return Q?parseInt(Q[1],10)*1000:null}function YMQ(A){return typeof A==="string"?UR0[A]??A.toLowerCase():sqQ.lookup(A)??A.toString("latin1").toLowerCase()}function RR0(A){return sqQ.lookup(A)??A.toString("latin1").toLowerCase()}function wR0(A,Q){if(Q===void 0)Q={};for(let B=0;BX.toString("utf8")):C.toString("utf8")}}if("content-length"in Q&&"content-disposition"in Q)Q["content-disposition"]=Buffer.from(Q["content-disposition"]).toString("latin1");return Q}function jR0(A){let Q=A.length,B=Array(Q),Y=!1,J=-1,C,X,G=0;for(let F=0;FBuffer.from(Q))}function JMQ(A){return A instanceof Uint8Array||Buffer.isBuffer(A)}function PR0(A,Q,B){if(!A||typeof A!=="object")throw new iY("handler must be an object");if(typeof A.onRequestStart==="function")return;if(typeof A.onConnect!=="function")throw new iY("invalid onConnect method");if(typeof A.onError!=="function")throw new iY("invalid onError method");if(typeof A.onBodySent!=="function"&&A.onBodySent!==void 0)throw new iY("invalid onBodySent method");if(B||Q==="CONNECT"){if(typeof A.onUpgrade!=="function")throw new iY("invalid onUpgrade method")}else{if(typeof A.onHeaders!=="function")throw new iY("invalid onHeaders method");if(typeof A.onData!=="function")throw new iY("invalid onData method");if(typeof A.onComplete!=="function")throw new iY("invalid onComplete method")}}function TR0(A){return!!(A&&(nqQ.isDisturbed(A)||A[vK]))}function SR0(A){return{localAddress:A.localAddress,localPort:A.localPort,remoteAddress:A.remoteAddress,remotePort:A.remotePort,remoteFamily:A.remoteFamily,timeout:A.timeout,bytesWritten:A.bytesWritten,bytesRead:A.bytesRead}}function kR0(A){let Q;return new ReadableStream({start(){Q=A[Symbol.asyncIterator]()},pull(B){return Q.next().then(({done:Y,value:J})=>{if(Y)queueMicrotask(()=>{B.close(),B.byobRequest?.respond(0)});else{let C=Buffer.isBuffer(J)?J:Buffer.from(J);if(C.byteLength)B.enqueue(new Uint8Array(C));else return this.pull(B)}})},cancel(){return Q.return()},type:"bytes"})}function _R0(A){return A&&typeof A==="object"&&typeof A.append==="function"&&typeof A.delete==="function"&&typeof A.get==="function"&&typeof A.getAll==="function"&&typeof A.has==="function"&&typeof A.set==="function"&&A[Symbol.toStringTag]==="FormData"}function vR0(A,Q){if("addEventListener"in A)return A.addEventListener("abort",Q,{once:!0}),()=>A.removeEventListener("abort",Q);return A.once("abort",Q),()=>A.removeListener("abort",Q)}function CMQ(A){switch(A){case 34:case 40:case 41:case 44:case 47:case 58:case 59:case 60:case 61:case 62:case 63:case 64:case 91:case 92:case 93:case 123:case 125:return!1;default:return A>=33&&A<=126}}function yR0(A){if(A.length===0)return!1;for(let Q=0;Q{if(!Q.timeout)return lqQ;let B=null,Y=null,J=ST.setFastTimeout(()=>{B=setImmediate(()=>{Y=setImmediate(()=>pqQ(A.deref(),Q))})},Q.timeout);return()=>{ST.clearFastTimeout(J),clearImmediate(B),clearImmediate(Y)}}:(A,Q)=>{if(!Q.timeout)return lqQ;let B=null,Y=ST.setFastTimeout(()=>{B=setImmediate(()=>{pqQ(A.deref(),Q)})},Q.timeout);return()=>{ST.clearFastTimeout(Y),clearImmediate(B)}};function pqQ(A,Q){if(A==null)return;let B="Connect Timeout Error";if(Array.isArray(A.autoSelectFamilyAttemptedAddresses))B+=` (attempted addresses: ${A.autoSelectFamilyAttemptedAddresses.join(", ")},`;else B+=` (attempted address: ${Q.hostname}:${Q.port},`;B+=` timeout: ${Q.timeout}ms)`,BMQ(A,new $R0(B))}function cR0(A){if(A[0]==="h"&&A[1]==="t"&&A[2]==="t"&&A[3]==="p")switch(A[4]){case":":return"http:";case"s":if(A[5]===":")return"https:"}return A.slice(0,A.indexOf(":")+1)}var XMQ=Object.create(null);XMQ.enumerable=!0;var vs={delete:"DELETE",DELETE:"DELETE",get:"GET",GET:"GET",head:"HEAD",HEAD:"HEAD",options:"OPTIONS",OPTIONS:"OPTIONS",post:"POST",POST:"POST",put:"PUT",PUT:"PUT"},GMQ={...vs,patch:"patch",PATCH:"PATCH"};Object.setPrototypeOf(vs,null);Object.setPrototypeOf(GMQ,null);FMQ.exports={kEnumerableProperty:XMQ,isDisturbed:TR0,isBlobLike:rqQ,parseOrigin:HR0,parseURL:tqQ,getServerName:NR0,isStream:vT,isIterable:eqQ,isAsyncIterable:qR0,isDestroyed:QMQ,headerNameToString:YMQ,bufferToLowerCasedHeaderName:RR0,addListener:bR0,removeAllListeners:mR0,errorRequest:uR0,parseRawHeaders:jR0,encodeRawHeaders:OR0,parseHeaders:wR0,parseKeepAliveTimeout:zR0,destroy:BMQ,bodyLength:AMQ,deepClone:LR0,ReadableStreamFrom:kR0,isBuffer:JMQ,assertRequestHandler:PR0,getSocketInfo:SR0,isFormDataLike:_R0,pathHasQueryOrFragment:aqQ,serializePathWithQuery:IR0,addAbortListener:vR0,isValidHTTPToken:yR0,isValidHeaderValue:hR0,isTokenCharCode:CMQ,parseRangeHeader:fR0,normalizedMethodRecordsBase:vs,normalizedMethodRecords:GMQ,isValidPort:oqQ,isHttpOrHttpsPrefixed:_T,nodeMajor:ER0,nodeMinor:KR0,safeHTTPMethods:Object.freeze(["GET","HEAD","OPTIONS","TRACE"]),wrapRequestBody:VR0,setupConnectTimeout:dR0,getProtocolFromUrlString:cR0}});var ys=R((rpY,VMQ)=>{var{kConnected:WMQ,kPending:ZMQ,kRunning:$MQ,kSize:UMQ,kFree:lR0,kQueued:pR0}=Q0();class EMQ{constructor(A){this.connected=A[WMQ],this.pending=A[ZMQ],this.running=A[$MQ],this.size=A[UMQ]}}class KMQ{constructor(A){this.connected=A[WMQ],this.free=A[lR0],this.pending=A[ZMQ],this.queued=A[pR0],this.running=A[$MQ],this.size=A[UMQ]}}VMQ.exports={ClientStats:EMQ,PoolStats:KMQ}});var z$=R((apY,LMQ)=>{var rB=u("node:diagnostics_channel"),gs=u("node:util"),M$=gs.debuglog("undici"),lL=gs.debuglog("fetch"),yT=gs.debuglog("websocket"),iR0={beforeConnect:rB.channel("undici:client:beforeConnect"),connected:rB.channel("undici:client:connected"),connectError:rB.channel("undici:client:connectError"),sendHeaders:rB.channel("undici:client:sendHeaders"),create:rB.channel("undici:request:create"),bodySent:rB.channel("undici:request:bodySent"),bodyChunkSent:rB.channel("undici:request:bodyChunkSent"),bodyChunkReceived:rB.channel("undici:request:bodyChunkReceived"),headers:rB.channel("undici:request:headers"),trailers:rB.channel("undici:request:trailers"),error:rB.channel("undici:request:error"),open:rB.channel("undici:websocket:open"),close:rB.channel("undici:websocket:close"),socketError:rB.channel("undici:websocket:socket_error"),ping:rB.channel("undici:websocket:ping"),pong:rB.channel("undici:websocket:pong")},IMQ=!1;function NMQ(A=M$){if(IMQ)return;IMQ=!0,rB.subscribe("undici:client:beforeConnect",(Q)=>{let{connectParams:{version:B,protocol:Y,port:J,host:C}}=Q;A("connecting to %s%s using %s%s",C,J?`:${J}`:"",Y,B)}),rB.subscribe("undici:client:connected",(Q)=>{let{connectParams:{version:B,protocol:Y,port:J,host:C}}=Q;A("connected to %s%s using %s%s",C,J?`:${J}`:"",Y,B)}),rB.subscribe("undici:client:connectError",(Q)=>{let{connectParams:{version:B,protocol:Y,port:J,host:C},error:X}=Q;A("connection to %s%s using %s%s errored - %s",C,J?`:${J}`:"",Y,B,X.message)}),rB.subscribe("undici:client:sendHeaders",(Q)=>{let{request:{method:B,path:Y,origin:J}}=Q;A("sending request to %s %s%s",B,J,Y)})}var HMQ=!1;function nR0(A=M$){if(HMQ)return;HMQ=!0,rB.subscribe("undici:request:headers",(Q)=>{let{request:{method:B,path:Y,origin:J},response:{statusCode:C}}=Q;A("received response to %s %s%s - HTTP %d",B,J,Y,C)}),rB.subscribe("undici:request:trailers",(Q)=>{let{request:{method:B,path:Y,origin:J}}=Q;A("trailers received from %s %s%s",B,J,Y)}),rB.subscribe("undici:request:error",(Q)=>{let{request:{method:B,path:Y,origin:J},error:C}=Q;A("request to %s %s%s errored - %s",B,J,Y,C.message)})}var DMQ=!1;function sR0(A=yT){if(DMQ)return;DMQ=!0,rB.subscribe("undici:websocket:open",(Q)=>{let{address:{address:B,port:Y}}=Q;A("connection opened %s%s",B,Y?`:${Y}`:"")}),rB.subscribe("undici:websocket:close",(Q)=>{let{websocket:B,code:Y,reason:J}=Q;A("closed connection to %s - %s %s",B.url,Y,J)}),rB.subscribe("undici:websocket:socket_error",(Q)=>{A("connection errored - %s",Q.message)}),rB.subscribe("undici:websocket:ping",(Q)=>{A("ping received")}),rB.subscribe("undici:websocket:pong",(Q)=>{A("pong received")})}if(M$.enabled||lL.enabled)NMQ(lL.enabled?lL:M$),nR0(lL.enabled?lL:M$);if(yT.enabled)NMQ(M$.enabled?M$:yT),sR0(yT);LMQ.exports={channels:iR0}});var jMQ=R((opY,wMQ)=>{var{InvalidArgumentError:I0,NotSupportedError:rR0}=QB(),EX=u("node:assert"),{isValidHTTPToken:zMQ,isValidHeaderValue:qMQ,isStream:aR0,destroy:oR0,isBuffer:tR0,isFormDataLike:eR0,isIterable:Aw0,isBlobLike:Qw0,serializePathWithQuery:Bw0,assertRequestHandler:Yw0,getServerName:Jw0,normalizedMethodRecords:Cw0,getProtocolFromUrlString:Xw0}=lQ(),{channels:s9}=z$(),{headerNameLowerCasedRecord:MMQ}=TT(),Gw0=/[^\u0021-\u00ff]/,n5=Symbol("handler");class RMQ{constructor(A,{path:Q,method:B,body:Y,headers:J,query:C,idempotent:X,blocking:G,upgrade:F,headersTimeout:W,bodyTimeout:Z,reset:U,expectContinue:$,servername:E,throwOnError:K,maxRedirections:I},V){if(typeof Q!=="string")throw new I0("path must be a string");else if(Q[0]!=="/"&&!(Q.startsWith("http://")||Q.startsWith("https://"))&&B!=="CONNECT")throw new I0("path must be an absolute URL or start with a slash");else if(Gw0.test(Q))throw new I0("invalid request path");if(typeof B!=="string")throw new I0("method must be a string");else if(Cw0[B]===void 0&&!zMQ(B))throw new I0("invalid request method");if(F&&typeof F!=="string")throw new I0("upgrade must be a string");if(W!=null&&(!Number.isFinite(W)||W<0))throw new I0("invalid headersTimeout");if(Z!=null&&(!Number.isFinite(Z)||Z<0))throw new I0("invalid bodyTimeout");if(U!=null&&typeof U!=="boolean")throw new I0("invalid reset");if($!=null&&typeof $!=="boolean")throw new I0("invalid expectContinue");if(K!=null)throw new I0("invalid throwOnError");if(I!=null&&I!==0)throw new I0("maxRedirections is not supported, use the redirect interceptor");if(this.headersTimeout=W,this.bodyTimeout=Z,this.method=B,this.abort=null,Y==null)this.body=null;else if(aR0(Y)){this.body=Y;let H=this.body._readableState;if(!H||!H.autoDestroy)this.endHandler=function(){oR0(this)},this.body.on("end",this.endHandler);this.errorHandler=(D)=>{if(this.abort)this.abort(D);else this.error=D},this.body.on("error",this.errorHandler)}else if(tR0(Y))this.body=Y.byteLength?Y:null;else if(ArrayBuffer.isView(Y))this.body=Y.buffer.byteLength?Buffer.from(Y.buffer,Y.byteOffset,Y.byteLength):null;else if(Y instanceof ArrayBuffer)this.body=Y.byteLength?Buffer.from(Y):null;else if(typeof Y==="string")this.body=Y.length?Buffer.from(Y):null;else if(eR0(Y)||Aw0(Y)||Qw0(Y))this.body=Y;else throw new I0("body must be a string, a Buffer, a Readable stream, an iterable, or an async iterable");if(this.completed=!1,this.aborted=!1,this.upgrade=F||null,this.path=C?Bw0(Q,C):Q,this.origin=A,this.protocol=Xw0(A),this.idempotent=X==null?B==="HEAD"||B==="GET":X,this.blocking=G??this.method!=="HEAD",this.reset=U==null?null:U,this.host=null,this.contentLength=null,this.contentType=null,this.headers=[],this.expectContinue=$!=null?$:!1,Array.isArray(J)){if(J.length%2!==0)throw new I0("headers array must be even");for(let H=0;H{var{InvalidArgumentError:Fw0}=QB();OMQ.exports=class A{#A;constructor(Q){this.#A=Q}static wrap(Q){return Q.onRequestStart?Q:new A(Q)}onConnect(Q,B){return this.#A.onConnect?.(Q,B)}onHeaders(Q,B,Y,J){return this.#A.onHeaders?.(Q,B,Y,J)}onUpgrade(Q,B,Y){return this.#A.onUpgrade?.(Q,B,Y)}onData(Q){return this.#A.onData?.(Q)}onComplete(Q){return this.#A.onComplete?.(Q)}onError(Q){if(!this.#A.onError)throw Q;return this.#A.onError?.(Q)}onRequestStart(Q,B){this.#A.onConnect?.((Y)=>Q.abort(Y),B)}onRequestUpgrade(Q,B,Y,J){let C=[];for(let[X,G]of Object.entries(Y))C.push(Buffer.from(X),Array.isArray(G)?G.map((F)=>Buffer.from(F)):Buffer.from(G));this.#A.onUpgrade?.(B,C,J)}onResponseStart(Q,B,Y,J){let C=[];for(let[X,G]of Object.entries(Y))C.push(Buffer.from(X),Array.isArray(G)?G.map((F)=>Buffer.from(F)):Buffer.from(G));if(this.#A.onHeaders?.(B,C,()=>Q.resume(),J)===!1)Q.pause()}onResponseData(Q,B){if(this.#A.onData?.(B)===!1)Q.pause()}onResponseEnd(Q,B){let Y=[];for(let[J,C]of Object.entries(B))Y.push(Buffer.from(J),Array.isArray(C)?C.map((X)=>Buffer.from(X)):Buffer.from(C));this.#A.onComplete?.(Y)}onResponseError(Q,B){if(!this.#A.onError)throw new Fw0("invalid onError method");this.#A.onError?.(B)}}});var iL=R((epY,TMQ)=>{var Ww0=u("node:events"),Zw0=pL(),$w0=(A)=>(Q,B)=>A(Q,Zw0.wrap(B));class PMQ extends Ww0{dispatch(){throw Error("not implemented")}close(){throw Error("not implemented")}destroy(){throw Error("not implemented")}compose(...A){let Q=Array.isArray(A[0])?A[0]:A,B=this.dispatch.bind(this);for(let Y of Q){if(Y==null)continue;if(typeof Y!=="function")throw TypeError(`invalid interceptor, expected function received ${typeof Y}`);if(B=Y(B),B=$w0(B),B==null||typeof B!=="function"||B.length!==2)throw TypeError("invalid interceptor")}return new Proxy(this,{get:(Y,J)=>J==="dispatch"?B:Y[J]})}}TMQ.exports=PMQ});var _MQ=R((AiY,kMQ)=>{var{parseHeaders:hs}=lQ(),{InvalidArgumentError:Uw0}=QB(),xs=Symbol("resume");class SMQ{#A=!1;#Q=null;#B=!1;#Y;[xs]=null;constructor(A){this.#Y=A}pause(){this.#A=!0}resume(){if(this.#A)this.#A=!1,this[xs]?.()}abort(A){if(!this.#B)this.#B=!0,this.#Q=A,this.#Y(A)}get aborted(){return this.#B}get reason(){return this.#Q}get paused(){return this.#A}}kMQ.exports=class A{#A;#Q;constructor(Q){this.#A=Q}static unwrap(Q){return!Q.onRequestStart?Q:new A(Q)}onConnect(Q,B){this.#Q=new SMQ(Q),this.#A.onRequestStart?.(this.#Q,B)}onUpgrade(Q,B,Y){this.#A.onRequestUpgrade?.(this.#Q,Q,hs(B),Y)}onHeaders(Q,B,Y,J){return this.#Q[xs]=Y,this.#A.onResponseStart?.(this.#Q,Q,hs(B),J),!this.#Q.paused}onData(Q){return this.#A.onResponseData?.(this.#Q,Q),!this.#Q.paused}onComplete(Q){this.#A.onResponseEnd?.(this.#Q,hs(Q))}onError(Q){if(!this.#A.onResponseError)throw new Uw0("invalid onError method");this.#A.onResponseError?.(this.#Q,Q)}}});var R$=R((QiY,yMQ)=>{var Ew0=iL(),Kw0=_MQ(),{ClientDestroyedError:fs,ClientClosedError:Vw0,InvalidArgumentError:hT}=QB(),{kDestroy:Iw0,kClose:Hw0,kClosed:nL,kDestroyed:yK,kDispatch:Dw0}=Q0(),z6=Symbol("onDestroyed"),gK=Symbol("onClosed");class vMQ extends Ew0{[yK]=!1;[z6]=null;[nL]=!1;[gK]=[];get destroyed(){return this[yK]}get closed(){return this[nL]}close(A){if(A===void 0)return new Promise((B,Y)=>{this.close((J,C)=>{return J?Y(J):B(C)})});if(typeof A!=="function")throw new hT("invalid callback");if(this[yK]){queueMicrotask(()=>A(new fs,null));return}if(this[nL]){if(this[gK])this[gK].push(A);else queueMicrotask(()=>A(null,null));return}this[nL]=!0,this[gK].push(A);let Q=()=>{let B=this[gK];this[gK]=null;for(let Y=0;Ythis.destroy()).then(()=>{queueMicrotask(Q)})}destroy(A,Q){if(typeof A==="function")Q=A,A=null;if(Q===void 0)return new Promise((Y,J)=>{this.destroy(A,(C,X)=>{return C?J(C):Y(X)})});if(typeof Q!=="function")throw new hT("invalid callback");if(this[yK]){if(this[z6])this[z6].push(Q);else queueMicrotask(()=>Q(null,null));return}if(!A)A=new fs;this[yK]=!0,this[z6]=this[z6]||[],this[z6].push(Q);let B=()=>{let Y=this[z6];this[z6]=null;for(let J=0;J{queueMicrotask(B)})}dispatch(A,Q){if(!Q||typeof Q!=="object")throw new hT("handler must be an object");Q=Kw0.unwrap(Q);try{if(!A||typeof A!=="object")throw new hT("opts must be an object.");if(this[yK]||this[z6])throw new fs;if(this[nL])throw new Vw0;return this[Dw0](A,Q)}catch(B){if(typeof Q.onError!=="function")throw B;return Q.onError(B),!1}}}yMQ.exports=vMQ});var sL=R((BiY,xMQ)=>{var Nw0=u("node:net"),gMQ=u("node:assert"),hMQ=lQ(),{InvalidArgumentError:Lw0}=QB(),bs,qw0=class{constructor(Q){this._maxCachedSessions=Q,this._sessionCache=new Map,this._sessionRegistry=new FinalizationRegistry((B)=>{if(this._sessionCache.size{Object.defineProperty(fMQ,"__esModule",{value:!0});fMQ.enumToMap=zw0;function zw0(A,Q=[],B=[]){let Y=(Q?.length??0)===0,J=(B?.length??0)===0;return Object.fromEntries(Object.entries(A).filter(([,C])=>{return typeof C==="number"&&(Y||Q.includes(C))&&(J||!B.includes(C))}))}});var CzQ=R((mMQ)=>{Object.defineProperty(mMQ,"__esModule",{value:!0});mMQ.SPECIAL_HEADERS=mMQ.MINOR=mMQ.MAJOR=mMQ.HTAB_SP_VCHAR_OBS_TEXT=mMQ.QUOTED_STRING=mMQ.CONNECTION_TOKEN_CHARS=mMQ.HEADER_CHARS=mMQ.TOKEN=mMQ.HEX=mMQ.URL_CHAR=mMQ.USERINFO_CHARS=mMQ.MARK=mMQ.ALPHANUM=mMQ.NUM=mMQ.HEX_MAP=mMQ.NUM_MAP=mMQ.ALPHA=mMQ.STATUSES_HTTP=mMQ.H_METHOD_MAP=mMQ.METHOD_MAP=mMQ.METHODS_RTSP=mMQ.METHODS_ICE=mMQ.METHODS_HTTP=mMQ.HEADER_STATE=mMQ.FINISH=mMQ.STATUSES=mMQ.METHODS=mMQ.LENIENT_FLAGS=mMQ.FLAGS=mMQ.TYPE=mMQ.ERROR=void 0;var ww0=bMQ();mMQ.ERROR={OK:0,INTERNAL:1,STRICT:2,CR_EXPECTED:25,LF_EXPECTED:3,UNEXPECTED_CONTENT_LENGTH:4,UNEXPECTED_SPACE:30,CLOSED_CONNECTION:5,INVALID_METHOD:6,INVALID_URL:7,INVALID_CONSTANT:8,INVALID_VERSION:9,INVALID_HEADER_TOKEN:10,INVALID_CONTENT_LENGTH:11,INVALID_CHUNK_SIZE:12,INVALID_STATUS:13,INVALID_EOF_STATE:14,INVALID_TRANSFER_ENCODING:15,CB_MESSAGE_BEGIN:16,CB_HEADERS_COMPLETE:17,CB_MESSAGE_COMPLETE:18,CB_CHUNK_HEADER:19,CB_CHUNK_COMPLETE:20,PAUSED:21,PAUSED_UPGRADE:22,PAUSED_H2_UPGRADE:23,USER:24,CB_URL_COMPLETE:26,CB_STATUS_COMPLETE:27,CB_METHOD_COMPLETE:32,CB_VERSION_COMPLETE:33,CB_HEADER_FIELD_COMPLETE:28,CB_HEADER_VALUE_COMPLETE:29,CB_CHUNK_EXTENSION_NAME_COMPLETE:34,CB_CHUNK_EXTENSION_VALUE_COMPLETE:35,CB_RESET:31,CB_PROTOCOL_COMPLETE:38};mMQ.TYPE={BOTH:0,REQUEST:1,RESPONSE:2};mMQ.FLAGS={CONNECTION_KEEP_ALIVE:1,CONNECTION_CLOSE:2,CONNECTION_UPGRADE:4,CHUNKED:8,UPGRADE:16,CONTENT_LENGTH:32,SKIPBODY:64,TRAILING:128,TRANSFER_ENCODING:512};mMQ.LENIENT_FLAGS={HEADERS:1,CHUNKED_LENGTH:2,KEEP_ALIVE:4,TRANSFER_ENCODING:8,VERSION:16,DATA_AFTER_CLOSE:32,OPTIONAL_LF_AFTER_CR:64,OPTIONAL_CRLF_AFTER_CHUNK:128,OPTIONAL_CR_BEFORE_LF:256,SPACES_AFTER_CHUNK_SIZE:512};mMQ.METHODS={DELETE:0,GET:1,HEAD:2,POST:3,PUT:4,CONNECT:5,OPTIONS:6,TRACE:7,COPY:8,LOCK:9,MKCOL:10,MOVE:11,PROPFIND:12,PROPPATCH:13,SEARCH:14,UNLOCK:15,BIND:16,REBIND:17,UNBIND:18,ACL:19,REPORT:20,MKACTIVITY:21,CHECKOUT:22,MERGE:23,"M-SEARCH":24,NOTIFY:25,SUBSCRIBE:26,UNSUBSCRIBE:27,PATCH:28,PURGE:29,MKCALENDAR:30,LINK:31,UNLINK:32,SOURCE:33,PRI:34,DESCRIBE:35,ANNOUNCE:36,SETUP:37,PLAY:38,PAUSE:39,TEARDOWN:40,GET_PARAMETER:41,SET_PARAMETER:42,REDIRECT:43,RECORD:44,FLUSH:45,QUERY:46};mMQ.STATUSES={CONTINUE:100,SWITCHING_PROTOCOLS:101,PROCESSING:102,EARLY_HINTS:103,RESPONSE_IS_STALE:110,REVALIDATION_FAILED:111,DISCONNECTED_OPERATION:112,HEURISTIC_EXPIRATION:113,MISCELLANEOUS_WARNING:199,OK:200,CREATED:201,ACCEPTED:202,NON_AUTHORITATIVE_INFORMATION:203,NO_CONTENT:204,RESET_CONTENT:205,PARTIAL_CONTENT:206,MULTI_STATUS:207,ALREADY_REPORTED:208,TRANSFORMATION_APPLIED:214,IM_USED:226,MISCELLANEOUS_PERSISTENT_WARNING:299,MULTIPLE_CHOICES:300,MOVED_PERMANENTLY:301,FOUND:302,SEE_OTHER:303,NOT_MODIFIED:304,USE_PROXY:305,SWITCH_PROXY:306,TEMPORARY_REDIRECT:307,PERMANENT_REDIRECT:308,BAD_REQUEST:400,UNAUTHORIZED:401,PAYMENT_REQUIRED:402,FORBIDDEN:403,NOT_FOUND:404,METHOD_NOT_ALLOWED:405,NOT_ACCEPTABLE:406,PROXY_AUTHENTICATION_REQUIRED:407,REQUEST_TIMEOUT:408,CONFLICT:409,GONE:410,LENGTH_REQUIRED:411,PRECONDITION_FAILED:412,PAYLOAD_TOO_LARGE:413,URI_TOO_LONG:414,UNSUPPORTED_MEDIA_TYPE:415,RANGE_NOT_SATISFIABLE:416,EXPECTATION_FAILED:417,IM_A_TEAPOT:418,PAGE_EXPIRED:419,ENHANCE_YOUR_CALM:420,MISDIRECTED_REQUEST:421,UNPROCESSABLE_ENTITY:422,LOCKED:423,FAILED_DEPENDENCY:424,TOO_EARLY:425,UPGRADE_REQUIRED:426,PRECONDITION_REQUIRED:428,TOO_MANY_REQUESTS:429,REQUEST_HEADER_FIELDS_TOO_LARGE_UNOFFICIAL:430,REQUEST_HEADER_FIELDS_TOO_LARGE:431,LOGIN_TIMEOUT:440,NO_RESPONSE:444,RETRY_WITH:449,BLOCKED_BY_PARENTAL_CONTROL:450,UNAVAILABLE_FOR_LEGAL_REASONS:451,CLIENT_CLOSED_LOAD_BALANCED_REQUEST:460,INVALID_X_FORWARDED_FOR:463,REQUEST_HEADER_TOO_LARGE:494,SSL_CERTIFICATE_ERROR:495,SSL_CERTIFICATE_REQUIRED:496,HTTP_REQUEST_SENT_TO_HTTPS_PORT:497,INVALID_TOKEN:498,CLIENT_CLOSED_REQUEST:499,INTERNAL_SERVER_ERROR:500,NOT_IMPLEMENTED:501,BAD_GATEWAY:502,SERVICE_UNAVAILABLE:503,GATEWAY_TIMEOUT:504,HTTP_VERSION_NOT_SUPPORTED:505,VARIANT_ALSO_NEGOTIATES:506,INSUFFICIENT_STORAGE:507,LOOP_DETECTED:508,BANDWIDTH_LIMIT_EXCEEDED:509,NOT_EXTENDED:510,NETWORK_AUTHENTICATION_REQUIRED:511,WEB_SERVER_UNKNOWN_ERROR:520,WEB_SERVER_IS_DOWN:521,CONNECTION_TIMEOUT:522,ORIGIN_IS_UNREACHABLE:523,TIMEOUT_OCCURED:524,SSL_HANDSHAKE_FAILED:525,INVALID_SSL_CERTIFICATE:526,RAILGUN_ERROR:527,SITE_IS_OVERLOADED:529,SITE_IS_FROZEN:530,IDENTITY_PROVIDER_AUTHENTICATION_ERROR:561,NETWORK_READ_TIMEOUT:598,NETWORK_CONNECT_TIMEOUT:599};mMQ.FINISH={SAFE:0,SAFE_WITH_CB:1,UNSAFE:2};mMQ.HEADER_STATE={GENERAL:0,CONNECTION:1,CONTENT_LENGTH:2,TRANSFER_ENCODING:3,UPGRADE:4,CONNECTION_KEEP_ALIVE:5,CONNECTION_CLOSE:6,CONNECTION_UPGRADE:7,TRANSFER_ENCODING_CHUNKED:8};mMQ.METHODS_HTTP=[mMQ.METHODS.DELETE,mMQ.METHODS.GET,mMQ.METHODS.HEAD,mMQ.METHODS.POST,mMQ.METHODS.PUT,mMQ.METHODS.CONNECT,mMQ.METHODS.OPTIONS,mMQ.METHODS.TRACE,mMQ.METHODS.COPY,mMQ.METHODS.LOCK,mMQ.METHODS.MKCOL,mMQ.METHODS.MOVE,mMQ.METHODS.PROPFIND,mMQ.METHODS.PROPPATCH,mMQ.METHODS.SEARCH,mMQ.METHODS.UNLOCK,mMQ.METHODS.BIND,mMQ.METHODS.REBIND,mMQ.METHODS.UNBIND,mMQ.METHODS.ACL,mMQ.METHODS.REPORT,mMQ.METHODS.MKACTIVITY,mMQ.METHODS.CHECKOUT,mMQ.METHODS.MERGE,mMQ.METHODS["M-SEARCH"],mMQ.METHODS.NOTIFY,mMQ.METHODS.SUBSCRIBE,mMQ.METHODS.UNSUBSCRIBE,mMQ.METHODS.PATCH,mMQ.METHODS.PURGE,mMQ.METHODS.MKCALENDAR,mMQ.METHODS.LINK,mMQ.METHODS.UNLINK,mMQ.METHODS.PRI,mMQ.METHODS.SOURCE,mMQ.METHODS.QUERY];mMQ.METHODS_ICE=[mMQ.METHODS.SOURCE];mMQ.METHODS_RTSP=[mMQ.METHODS.OPTIONS,mMQ.METHODS.DESCRIBE,mMQ.METHODS.ANNOUNCE,mMQ.METHODS.SETUP,mMQ.METHODS.PLAY,mMQ.METHODS.PAUSE,mMQ.METHODS.TEARDOWN,mMQ.METHODS.GET_PARAMETER,mMQ.METHODS.SET_PARAMETER,mMQ.METHODS.REDIRECT,mMQ.METHODS.RECORD,mMQ.METHODS.FLUSH,mMQ.METHODS.GET,mMQ.METHODS.POST];mMQ.METHOD_MAP=(0,ww0.enumToMap)(mMQ.METHODS);mMQ.H_METHOD_MAP=Object.fromEntries(Object.entries(mMQ.METHODS).filter(([A])=>A.startsWith("H")));mMQ.STATUSES_HTTP=[mMQ.STATUSES.CONTINUE,mMQ.STATUSES.SWITCHING_PROTOCOLS,mMQ.STATUSES.PROCESSING,mMQ.STATUSES.EARLY_HINTS,mMQ.STATUSES.RESPONSE_IS_STALE,mMQ.STATUSES.REVALIDATION_FAILED,mMQ.STATUSES.DISCONNECTED_OPERATION,mMQ.STATUSES.HEURISTIC_EXPIRATION,mMQ.STATUSES.MISCELLANEOUS_WARNING,mMQ.STATUSES.OK,mMQ.STATUSES.CREATED,mMQ.STATUSES.ACCEPTED,mMQ.STATUSES.NON_AUTHORITATIVE_INFORMATION,mMQ.STATUSES.NO_CONTENT,mMQ.STATUSES.RESET_CONTENT,mMQ.STATUSES.PARTIAL_CONTENT,mMQ.STATUSES.MULTI_STATUS,mMQ.STATUSES.ALREADY_REPORTED,mMQ.STATUSES.TRANSFORMATION_APPLIED,mMQ.STATUSES.IM_USED,mMQ.STATUSES.MISCELLANEOUS_PERSISTENT_WARNING,mMQ.STATUSES.MULTIPLE_CHOICES,mMQ.STATUSES.MOVED_PERMANENTLY,mMQ.STATUSES.FOUND,mMQ.STATUSES.SEE_OTHER,mMQ.STATUSES.NOT_MODIFIED,mMQ.STATUSES.USE_PROXY,mMQ.STATUSES.SWITCH_PROXY,mMQ.STATUSES.TEMPORARY_REDIRECT,mMQ.STATUSES.PERMANENT_REDIRECT,mMQ.STATUSES.BAD_REQUEST,mMQ.STATUSES.UNAUTHORIZED,mMQ.STATUSES.PAYMENT_REQUIRED,mMQ.STATUSES.FORBIDDEN,mMQ.STATUSES.NOT_FOUND,mMQ.STATUSES.METHOD_NOT_ALLOWED,mMQ.STATUSES.NOT_ACCEPTABLE,mMQ.STATUSES.PROXY_AUTHENTICATION_REQUIRED,mMQ.STATUSES.REQUEST_TIMEOUT,mMQ.STATUSES.CONFLICT,mMQ.STATUSES.GONE,mMQ.STATUSES.LENGTH_REQUIRED,mMQ.STATUSES.PRECONDITION_FAILED,mMQ.STATUSES.PAYLOAD_TOO_LARGE,mMQ.STATUSES.URI_TOO_LONG,mMQ.STATUSES.UNSUPPORTED_MEDIA_TYPE,mMQ.STATUSES.RANGE_NOT_SATISFIABLE,mMQ.STATUSES.EXPECTATION_FAILED,mMQ.STATUSES.IM_A_TEAPOT,mMQ.STATUSES.PAGE_EXPIRED,mMQ.STATUSES.ENHANCE_YOUR_CALM,mMQ.STATUSES.MISDIRECTED_REQUEST,mMQ.STATUSES.UNPROCESSABLE_ENTITY,mMQ.STATUSES.LOCKED,mMQ.STATUSES.FAILED_DEPENDENCY,mMQ.STATUSES.TOO_EARLY,mMQ.STATUSES.UPGRADE_REQUIRED,mMQ.STATUSES.PRECONDITION_REQUIRED,mMQ.STATUSES.TOO_MANY_REQUESTS,mMQ.STATUSES.REQUEST_HEADER_FIELDS_TOO_LARGE_UNOFFICIAL,mMQ.STATUSES.REQUEST_HEADER_FIELDS_TOO_LARGE,mMQ.STATUSES.LOGIN_TIMEOUT,mMQ.STATUSES.NO_RESPONSE,mMQ.STATUSES.RETRY_WITH,mMQ.STATUSES.BLOCKED_BY_PARENTAL_CONTROL,mMQ.STATUSES.UNAVAILABLE_FOR_LEGAL_REASONS,mMQ.STATUSES.CLIENT_CLOSED_LOAD_BALANCED_REQUEST,mMQ.STATUSES.INVALID_X_FORWARDED_FOR,mMQ.STATUSES.REQUEST_HEADER_TOO_LARGE,mMQ.STATUSES.SSL_CERTIFICATE_ERROR,mMQ.STATUSES.SSL_CERTIFICATE_REQUIRED,mMQ.STATUSES.HTTP_REQUEST_SENT_TO_HTTPS_PORT,mMQ.STATUSES.INVALID_TOKEN,mMQ.STATUSES.CLIENT_CLOSED_REQUEST,mMQ.STATUSES.INTERNAL_SERVER_ERROR,mMQ.STATUSES.NOT_IMPLEMENTED,mMQ.STATUSES.BAD_GATEWAY,mMQ.STATUSES.SERVICE_UNAVAILABLE,mMQ.STATUSES.GATEWAY_TIMEOUT,mMQ.STATUSES.HTTP_VERSION_NOT_SUPPORTED,mMQ.STATUSES.VARIANT_ALSO_NEGOTIATES,mMQ.STATUSES.INSUFFICIENT_STORAGE,mMQ.STATUSES.LOOP_DETECTED,mMQ.STATUSES.BANDWIDTH_LIMIT_EXCEEDED,mMQ.STATUSES.NOT_EXTENDED,mMQ.STATUSES.NETWORK_AUTHENTICATION_REQUIRED,mMQ.STATUSES.WEB_SERVER_UNKNOWN_ERROR,mMQ.STATUSES.WEB_SERVER_IS_DOWN,mMQ.STATUSES.CONNECTION_TIMEOUT,mMQ.STATUSES.ORIGIN_IS_UNREACHABLE,mMQ.STATUSES.TIMEOUT_OCCURED,mMQ.STATUSES.SSL_HANDSHAKE_FAILED,mMQ.STATUSES.INVALID_SSL_CERTIFICATE,mMQ.STATUSES.RAILGUN_ERROR,mMQ.STATUSES.SITE_IS_OVERLOADED,mMQ.STATUSES.SITE_IS_FROZEN,mMQ.STATUSES.IDENTITY_PROVIDER_AUTHENTICATION_ERROR,mMQ.STATUSES.NETWORK_READ_TIMEOUT,mMQ.STATUSES.NETWORK_CONNECT_TIMEOUT];mMQ.ALPHA=[];for(let A=65;A<=90;A++)mMQ.ALPHA.push(String.fromCharCode(A)),mMQ.ALPHA.push(String.fromCharCode(A+32));mMQ.NUM_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9};mMQ.HEX_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15};mMQ.NUM=["0","1","2","3","4","5","6","7","8","9"];mMQ.ALPHANUM=mMQ.ALPHA.concat(mMQ.NUM);mMQ.MARK=["-","_",".","!","~","*","'","(",")"];mMQ.USERINFO_CHARS=mMQ.ALPHANUM.concat(mMQ.MARK).concat(["%",";",":","&","=","+","$",","]);mMQ.URL_CHAR=["!",'"',"$","%","&","'","(",")","*","+",",","-",".","/",":",";","<","=",">","@","[","\\","]","^","_","`","{","|","}","~"].concat(mMQ.ALPHANUM);mMQ.HEX=mMQ.NUM.concat(["a","b","c","d","e","f","A","B","C","D","E","F"]);mMQ.TOKEN=["!","#","$","%","&","'","*","+","-",".","^","_","`","|","~"].concat(mMQ.ALPHANUM);mMQ.HEADER_CHARS=["\t"];for(let A=32;A<=255;A++)if(A!==127)mMQ.HEADER_CHARS.push(A);mMQ.CONNECTION_TOKEN_CHARS=mMQ.HEADER_CHARS.filter((A)=>A!==44);mMQ.QUOTED_STRING=["\t"," "];for(let A=33;A<=255;A++)if(A!==34&&A!==92)mMQ.QUOTED_STRING.push(A);mMQ.HTAB_SP_VCHAR_OBS_TEXT=["\t"," "];for(let A=33;A<=126;A++)mMQ.HTAB_SP_VCHAR_OBS_TEXT.push(A);for(let A=128;A<=255;A++)mMQ.HTAB_SP_VCHAR_OBS_TEXT.push(A);mMQ.MAJOR=mMQ.NUM_MAP;mMQ.MINOR=mMQ.MAJOR;mMQ.SPECIAL_HEADERS={connection:mMQ.HEADER_STATE.CONNECTION,"content-length":mMQ.HEADER_STATE.CONTENT_LENGTH,"proxy-connection":mMQ.HEADER_STATE.CONNECTION,"transfer-encoding":mMQ.HEADER_STATE.TRANSFER_ENCODING,upgrade:mMQ.HEADER_STATE.UPGRADE};mMQ.default={ERROR:mMQ.ERROR,TYPE:mMQ.TYPE,FLAGS:mMQ.FLAGS,LENIENT_FLAGS:mMQ.LENIENT_FLAGS,METHODS:mMQ.METHODS,STATUSES:mMQ.STATUSES,FINISH:mMQ.FINISH,HEADER_STATE:mMQ.HEADER_STATE,ALPHA:mMQ.ALPHA,NUM_MAP:mMQ.NUM_MAP,HEX_MAP:mMQ.HEX_MAP,NUM:mMQ.NUM,ALPHANUM:mMQ.ALPHANUM,MARK:mMQ.MARK,USERINFO_CHARS:mMQ.USERINFO_CHARS,URL_CHAR:mMQ.URL_CHAR,HEX:mMQ.HEX,TOKEN:mMQ.TOKEN,HEADER_CHARS:mMQ.HEADER_CHARS,CONNECTION_TOKEN_CHARS:mMQ.CONNECTION_TOKEN_CHARS,QUOTED_STRING:mMQ.QUOTED_STRING,HTAB_SP_VCHAR_OBS_TEXT:mMQ.HTAB_SP_VCHAR_OBS_TEXT,MAJOR:mMQ.MAJOR,MINOR:mMQ.MINOR,SPECIAL_HEADERS:mMQ.SPECIAL_HEADERS,METHODS_HTTP:mMQ.METHODS_HTTP,METHODS_ICE:mMQ.METHODS_ICE,METHODS_RTSP:mMQ.METHODS_RTSP,METHOD_MAP:mMQ.METHOD_MAP,H_METHOD_MAP:mMQ.H_METHOD_MAP,STATUSES_HTTP:mMQ.STATUSES_HTTP}});var is=R((CiY,XzQ)=>{var{Buffer:Ow0}=u("node:buffer"),ps;Object.defineProperty(XzQ,"exports",{get:()=>{return ps?ps:ps=Ow0.from("AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAn9/AGABfwBgBH9/f38Bf2AAAGADf39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQAEA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAAzU0BQYAAAMAAAAAAAADAQMAAwMDAAACAAAAAAICAgICAgICAgIBAQEBAQEBAQEBAwAAAwAAAAQFAXABExMFAwEAAgYIAX8BQcDZBAsHxQcoBm1lbW9yeQIAC19pbml0aWFsaXplAAgZX19pbmRpcmVjdF9mdW5jdGlvbl90YWJsZQEAC2xsaHR0cF9pbml0AAkYbGxodHRwX3Nob3VsZF9rZWVwX2FsaXZlADcMbGxodHRwX2FsbG9jAAsGbWFsbG9jADkLbGxodHRwX2ZyZWUADARmcmVlAAwPbGxodHRwX2dldF90eXBlAA0VbGxodHRwX2dldF9odHRwX21ham9yAA4VbGxodHRwX2dldF9odHRwX21pbm9yAA8RbGxodHRwX2dldF9tZXRob2QAEBZsbGh0dHBfZ2V0X3N0YXR1c19jb2RlABESbGxodHRwX2dldF91cGdyYWRlABIMbGxodHRwX3Jlc2V0ABMObGxodHRwX2V4ZWN1dGUAFBRsbGh0dHBfc2V0dGluZ3NfaW5pdAAVDWxsaHR0cF9maW5pc2gAFgxsbGh0dHBfcGF1c2UAFw1sbGh0dHBfcmVzdW1lABgbbGxodHRwX3Jlc3VtZV9hZnRlcl91cGdyYWRlABkQbGxodHRwX2dldF9lcnJubwAaF2xsaHR0cF9nZXRfZXJyb3JfcmVhc29uABsXbGxodHRwX3NldF9lcnJvcl9yZWFzb24AHBRsbGh0dHBfZ2V0X2Vycm9yX3BvcwAdEWxsaHR0cF9lcnJub19uYW1lAB4SbGxodHRwX21ldGhvZF9uYW1lAB8SbGxodHRwX3N0YXR1c19uYW1lACAabGxodHRw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AXRrQT5qIQILIAEgAjYCHCABQgA3AhAgAkECdEH01wBqIQACQEHI1QAoAgAiA0EBIAJ0IgdxRQRAIAAgATYCAEHI1QAgAyAHcjYCACABIAA2AhggASABNgIIIAEgATYCDAwBCyAEQRkgAkEBdmtBACACQR9HG3QhAiAAKAIAIQACQANAIAAiAygCBEF4cSAERg0BIAJBHXYhACACQQF0IQIgAyAAQQRxakEQaiIHKAIAIgANAAsgByABNgIAIAEgAzYCGCABIAE2AgwgASABNgIIDAELIAMoAggiACABNgIMIAMgATYCCCABQQA2AhggASADNgIMIAEgADYCCAtB5NUAQeTVACgCAEEBayIAQX8gABs2AgALCwcAIAAtACgLBwAgAC0AKgsHACAALQArCwcAIAAtACkLBwAgAC8BNAsHACAALQAwC0ABBH8gACgCGCEBIAAvAS4hAiAALQAoIQMgACgCOCEEIAAQOCAAIAQ2AjggACADOgAoIAAgAjsBLiAAIAE2AhgL5YUCAgd/A34gASACaiEEAkAgACIDKAIMIgANACADKAIEBEAgAyABNgIECyMAQRBrIgkkAAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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C0HjAQwHC0HXAQwGC0HYAQwFC0HZAQwEC0HaAQwDC0HbAQwCC0HdAQwBC0HcAQshAgNAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCADAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQAJ/AkACQAJAAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAMCfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAg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ogKiAqICogKiAqICogKiAqICogKiAqICogIAogILIAQgAUEBaiIBRw0AC0HJACECDOwCCyABQQFqIQEgA0Evai0AAEEBcQ2lAiADQQA2AhwgAyABNgIUIANBlxA2AhAgA0EKNgIMQQAhAgzrAgsgASAERwRAA0AgAS0AAEEgRw0VIAQgAUEBaiIBRw0AC0H4ACECDOsCC0H4ACECDOoCCyADQQI6ACgMOAtBACECIANBADYCHCADQb8LNgIQIANBAjYCDCADIAFBAWo2AhQM6AILQQAhAgzOAgtBDSECDM0CC0ETIQIMzAILQRUhAgzLAgtBFiECDMoCC0EYIQIMyQILQRkhAgzIAgtBGiECDMcCC0EbIQIMxgILQRwhAgzFAgtBHSECDMQCC0EeIQIMwwILQR8hAgzCAgtBICECDMECC0EiIQIMwAILQSMhAgy/AgtBJSECDL4CC0HlACECDL0CCyADQT02AhwgAyABNgIUIAMgADYCDEEAIQIM1QILIANBGzYCHCADIAE2AhQgA0GkHDYCECADQRU2AgxBACECDNQCCyADQSA2AhwgAyABNgIUIANBmBo2AhAgA0EVNgIMQQAhAgzTAgsgA0ETNgIcIAMgATYCFCADQZgaNgIQIANBFTYCDEEAIQIM0gILIANBCzYCHCADIAE2AhQgA0GYGjYCECADQRU2AgxBACECDNECCyADQRA2AhwgAyABNgIUIANBmBo2AhAgA0EVNgIMQQAhAgzQAgsgA0EgNgIcIAMgATYCFCADQaQcNgIQIANBFTYCDEEAIQIMzwILIANBCzYCHCADIAE2AhQgA0GkHDYCECADQRU2AgxBACECDM4CCyADQQw2AhwgAyABNgIUIANBpBw2AhAgA0EVNgIMQQAhAgzNAgtBACECIANBADYCHCADIAE2AhQgA0HdDjYCECADQRI2AgwMzAILAkADQAJAIAEtAABBCmsOBAACAgACCyAEIAFBAWoiAUcNAAtB/QEhAgzMAgsCQAJAIAMtADZBAUcNAEEAIQACQCADKAI4IgJFDQAgAigCYCICRQ0AIAMgAhEAACEACyAARQ0AIABBFUcNASADQfwBNgIcIAMgATYCFCADQdwZNgIQIANBFTYCDEEAIQIMzQILQdwBIQIMswILIANBADYCHCADIAE2AhQgA0H5CzYCECADQR82AgxBACECDMsCCwJAAkAgAy0AKEEBaw4CBAEAC0HbASECDLICC0HUASECDLECCyADQQI6ADFBACEAAkAgAygCOCICRQ0AIAIoAgAiAkUNACADIAIRAAAhAAsgAEUEQEHdASECDLECCyAAQRVHBEAgA0EANgIcIAMgATYCFCADQbQMNgIQIANBEDYCDEEAIQIMygILIANB+wE2AhwgAyABNgIUIANBgRo2AhAgA0EVNgIMQQAhAgzJAgsgASAERgRAQfoBIQIMyQILIAEtAABByABGDQEgA0EBOgAoC0HAASECDK4CC0HaASECDK0CCyABIARHBEAgA0EMNgIIIAMgATYCBEHZASECDK0CC0H5ASECDMUCCyABIARGBEBB+AEhAgzFAgsgAS0AAEHIAEcNBCABQQFqIQFB2AEhAgyrAgsgASAERgRAQfcBIQIMxAILAkACQCABLQAAQcUAaw4QAAUFBQUFBQUFBQUFBQUFAQULIAFBAWohAUHWASECDKsCCyABQQFqIQFB1wEhAgyqAgtB9gEhAiABIARGDcICIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQbrVAGotAABHDQMgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADMMCCyADKAIEIQAgA0IANwMAIAMgACAGQQFqIgEQLiIARQRAQeMBIQIMqgILIANB9QE2AhwgAyABNgIUIAMgADYCDEEAIQIMwgILQfQBIQIgASAERg3BAiADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEG41QBqLQAARw0CIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzCAgsgA0GBBDsBKCADKAIEIQAgA0IANwMAIAMgACAGQQFqIgEQLiIADQMMAgsgA0EANgIAC0EAIQIgA0EANgIcIAMgATYCFCADQeUfNgIQIANBCDYCDAy/AgtB1QEhAgylAgsgA0HzATYCHCADIAE2AhQgAyAANgIMQQAhAgy9AgtBACEAAkAgAygCOCICRQ0AIAIoAkAiAkUNACADIAIRAAAhAAsgAEUNbiAAQRVHBEAgA0EANgIcIAMgATYCFCADQYIPNgIQIANBIDYCDEEAIQIMvQILIANBjwE2AhwgAyABNgIUIANB7Bs2AhAgA0EVNgIMQQAhAgy8AgsgASAERwRAIANBDTYCCCADIAE2AgRB0wEhAgyjAgtB8gEhAgy7AgsgASAERgRAQfEBIQIMuwILAkACQAJAIAEtAABByABrDgsAAQgICAgICAgIAggLIAFBAWohAUHQASECDKMCCyABQQFqIQFB0QEhAgyiAgsgAUEBaiEBQdIBIQIMoQILQfABIQIgASAERg25AiADKAIAIgAgBCABa2ohBiABIABrQQJqIQUDQCABLQAAIABBtdUAai0AAEcNBCAAQQJGDQMgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAY2AgAMuQILQe8BIQIgASAERg24AiADKAIAIgAgBCABa2ohBiABIABrQQFqIQUDQCABLQAAIABBs9UAai0AAEcNAyAAQQFGDQIgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAY2AgAMuAILQe4BIQIgASAERg23AiADKAIAIgAgBCABa2ohBiABIABrQQJqIQUDQCABLQAAIABBsNUAai0AAEcNAiAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAY2AgAMtwILIAMoAgQhACADQgA3AwAgAyAAIAVBAWoiARArIgBFDQIgA0HsATYCHCADIAE2AhQgAyAANgIMQQAhAgy2AgsgA0EANgIACyADKAIEIQAgA0EANgIEIAMgACABECsiAEUNnAIgA0HtATYCHCADIAE2AhQgAyAANgIMQQAhAgy0AgtBzwEhAgyaAgtBACEAAkAgAygCOCICRQ0AIAIoAjQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0HqDTYCECADQSY2AgxBACECDLQCC0HOASECDJoCCyADQesBNgIcIAMgATYCFCADQYAbNgIQIANBFTYCDEEAIQIMsgILIAEgBEYEQEHrASECDLICCyABLQAAQS9GBEAgAUEBaiEBDAELIANBADYCHCADIAE2AhQgA0GyODYCECADQQg2AgxBACECDLECC0HNASECDJcCCyABIARHBEAgA0EONgIIIAMgATYCBEHMASECDJcCC0HqASECDK8CCyABIARGBEBB6QEhAgyvAgsgAS0AAEEwayIAQf8BcUEKSQRAIAMgADoAKiABQQFqIQFBywEhAgyWAgsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDZcCIANB6AE2AhwgAyABNgIUIAMgADYCDEEAIQIMrgILIAEgBEYEQEHnASECDK4CCwJAIAEtAABBLkYEQCABQQFqIQEMAQsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDZgCIANB5gE2AhwgAyABNgIUIAMgADYCDEEAIQIMrgILQcoBIQIMlAILIAEgBEYEQEHlASECDK0CC0EAIQBBASEFQQEhB0EAIQICQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQCABLQAAQTBrDgoKCQABAgMEBQYICwtBAgwGC0EDDAULQQQMBAtBBQwDC0EGDAILQQcMAQtBCAshAkEAIQVBACEHDAILQQkhAkEBIQBBACEFQQAhBwwBC0EAIQVBASECCyADIAI6ACsgAUEBaiEBAkACQCADLQAuQRBxDQACQAJAAkAgAy0AKg4DAQACBAsgB0UNAwwCCyAADQEMAgsgBUUNAQsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDQIgA0HiATYCHCADIAE2AhQgAyAANgIMQQAhAgyvAgsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDZoCIANB4wE2AhwgAyABNgIUIAMgADYCDEEAIQIMrgILIAMoAgQhACADQQA2AgQgAyAAIAEQLyIARQ2YAiADQeQBNgIcIAMgATYCFCADIAA2AgwMrQILQckBIQIMkwILQQAhAAJAIAMoAjgiAkUNACACKAJEIgJFDQAgAyACEQAAIQALAkAgAARAIABBFUYNASADQQA2AhwgAyABNgIUIANBpA02AhAgA0EhNgIMQQAhAgytAgtByAEhAgyTAgsgA0HhATYCHCADIAE2AhQgA0HQGjYCECADQRU2AgxBACECDKsCCyABIARGBEBB4QEhAgyrAgsCQCABLQAAQSBGBEAgA0EAOwE0IAFBAWohAQwBCyADQQA2AhwgAyABNgIUIANBmRE2AhAgA0EJNgIMQQAhAgyrAgtBxwEhAgyRAgsgASAERgRAQeABIQIMqgILAkAgAS0AAEEwa0H/AXEiAkEKSQRAIAFBAWohAQJAIAMvATQiAEGZM0sNACADIABBCmwiADsBNCAAQf7/A3EgAkH//wNzSw0AIAMgACACajsBNAwCC0EAIQIgA0EANgIcIAMgATYCFCADQZUeNgIQIANBDTYCDAyrAgsgA0EANgIcIAMgATYCFCADQZUeNgIQIANBDTYCDEEAIQIMqgILQcYBIQIMkAILIAEgBEYEQEHfASECDKkCCwJAIAEtAABBMGtB/wFxIgJBCkkEQCABQQFqIQECQCADLwE0IgBBmTNLDQAgAyAAQQpsIgA7ATQgAEH+/wNxIAJB//8Dc0sNACADIAAgAmo7ATQMAgtBACECIANBADYCHCADIAE2AhQgA0GVHjYCECADQQ02AgwMqgILIANBADYCHCADIAE2AhQgA0GVHjYCECADQQ02AgxBACECDKkCC0HFASECDI8CCyABIARGBEBB3gEhAgyoAgsCQCABLQAAQTBrQf8BcSICQQpJBEAgAUEBaiEBAkAgAy8BNCIAQZkzSw0AIAMgAEEKbCIAOwE0IABB/v8DcSACQf//A3NLDQAgAyAAIAJqOwE0DAILQQAhAiADQQA2AhwgAyABNgIUIANBlR42AhAgA0ENNgIMDKkCCyADQQA2AhwgAyABNgIUIANBlR42AhAgA0ENNgIMQQAhAgyoAgtBxAEhAgyOAgsgASAERgRAQd0BIQIMpwILAkACQAJAAkAgAS0AAEEKaw4XAgMDAAMDAwMDAwMDAwMDAwMDAwMDAwEDCyABQQFqDAULIAFBAWohAUHDASECDI8CCyABQQFqIQEgA0Evai0AAEEBcQ0IIANBADYCHCADIAE2AhQgA0GNCzYCECADQQ02AgxBACECDKcCCyADQQA2AhwgAyABNgIUIANBjQs2AhAgA0ENNgIMQQAhAgymAgsgASAERwRAIANBDzYCCCADIAE2AgRBASECDI0CC0HcASECDKUCCwJAAkADQAJAIAEtAABBCmsOBAIAAAMACyAEIAFBAWoiAUcNAAtB2wEhAgymAgsgAygCBCEAIANBADYCBCADIAAgARAtIgBFBEAgAUEBaiEBDAQLIANB2gE2AhwgAyAANgIMIAMgAUEBajYCFEEAIQIMpQILIAMoAgQhACADQQA2AgQgAyAAIAEQLSIADQEgAUEBagshAUHBASECDIoCCyADQdkBNgIcIAMgADYCDCADIAFBAWo2AhRBACECDKICC0HCASECDIgCCyADQS9qLQAAQQFxDQEgA0EANgIcIAMgATYCFCADQeQcNgIQIANBGTYCDEEAIQIMoAILIAEgBEYEQEHZASEC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IAFBAWohAUGeASECDOQBCyABQQFqIQFBnwEhAgzjAQtBtwEhAiABIARGDfsBIAMoAgAiACAEIAFraiEFIAEgAGtBA2ohBgJAA0AgAS0AACAAQezUAGotAABHDSggAEEDRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADPwBCyADQQA2AgAgBkEBaiEBQQ0MKAtBtgEhAiABIARGDfoBIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQaHVAGotAABHDScgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADPsBCyADQQA2AgAgBkEBaiEBQQwMJwtBtQEhAiABIARGDfkBIAMoAgAiACAEIAFraiEFIAEgAGtBAWohBgJAA0AgAS0AACAAQerUAGotAABHDSYgAEEBRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADPoBCyADQQA2AgAgBkEBaiEBQQMMJgtBtAEhAiABIARGDfgBIAMoAgAiACAEIAFraiEFIAEgAGtBAWohBgJAA0AgAS0AACAAQejUAGotAABHDSUgAEEBRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADPkBCyADQQA2AgAgBkEBaiEBQSYMJQsgASAERgRAQbMBIQIM+AELAkACQCABLQAAQdQAaw4CAAEnCyABQQFqIQFBmQEhAgzfAQsgAUEBaiEBQZoBIQIM3gELQbIBIQIgASAERg32ASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHm1ABqLQAARw0jIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAz3AQsgA0EANgIAIAZBAWohAUEnDCMLQbEBIQIgASAERg31ASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHk1ABqLQAARw0iIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAz2AQsgA0EANgIAIAZBAWohAUEcDCILQbABIQIgASAERg30ASADKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEHe1ABqLQAARw0hIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAz1AQsgA0EANgIAIAZBAWohAUEGDCELQa8BIQIgASAERg3zASADKAIAIgAgBCABa2ohBSABIABrQQRqIQYCQANAIAEtAAAgAEHZ1ABqLQAARw0gIABBBEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAz0AQsgA0EANgIAIAZBAWohAUEZDCALIAEgBEYEQEGuASECDPMBCwJAAkACQAJAIAEtAABBLWsOIwAkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJAEkJCQkJAIkJCQDJAsgAUEBaiEBQY4BIQIM3AELIAFBAWohAUGPASECDNsBCyABQQFqIQFBlAEhAgzaAQsgAUEBaiEBQZUBIQIM2QELQa0BIQIgASAERg3xASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHX1ABqLQAARw0eIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzyAQsgA0EANgIAIAZBAWohAUELDB4LIAEgBEYEQEGsASECDPEBCwJAAkAgAS0AAEHBAGsOAwAgASALIAFBAWohAUGQASECDNgBCyABQQFqIQFBkwEhAgzXAQsgASAERgRAQasBIQIM8AELAkACQCABLQAAQcEAaw4PAB8fHx8fHx8fHx8fHx8BHwsgAUEBaiEBQZEBIQIM1wELIAFBAWohAUGSASECDNYBCyABIARGBEBBqgEhAgzvAQsgAS0AAEHMAEcNHCABQQFqIQFBCgwbC0GpASECIAEgBEYN7QEgAygCACIAIAQgAWtqIQUgASAAa0EFaiEGAkADQCABLQAAIABB0dQAai0AAEcNGiAAQQVGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM7gELIANBADYCACAGQQFqIQFBHgwaC0GoASECIAEgBEYN7AEgAygCACIAIAQgAWtqIQUgASAAa0EGaiEGAkADQCABLQAAIABBytQAai0AAEcNGSAAQQZGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM7QELIANBADYCACAGQQFqIQFBFQwZC0GnASECIAEgBEYN6wEgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBx9QAai0AAEcNGCAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM7AELIANBADYCACAGQQFqIQFBFwwYC0GmASECIAEgBEYN6gEgAygCACIAIAQgAWtqIQUgASAAa0EFaiEGAkADQCABLQAAIABBwdQAai0AAEcNFyAAQQVGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM6wELIANBADYCACAGQQFqIQFBGAwXCyABIARGBEBBpQEhAgzqAQsCQAJAIAEtAABByQBrDgcAGRkZGRkBGQsgAUEBaiEBQYsBIQIM0QELIAFBAWohAUGMASECDNABC0GkASECIAEgBEYN6AEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGAkADQCABLQAAIABBptUAai0AAEcNFSAAQQFGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM6QELIANBADYCACAGQQFqIQFBCQwVC0GjASECIAEgBEYN5wEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGAkADQCABLQAAIABBpNUAai0AAEcNFCAAQQFGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM6AELIANBADYCACAGQQFqIQFBHwwUC0GiASECIAEgBEYN5gEgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBvtQAai0AAEcNEyAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM5wELIANBADYCACAGQQFqIQFBAgwTC0GhASECIAEgBEYN5QEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGA0AgAS0AACAAQbzUAGotAABHDREgAEEBRg0CIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADOUBCyABIARGBEBBoAEhAgzlAQtBASABLQAAQd8ARw0RGiABQQFqIQFBhwEhAgzLAQsgA0EANgIAIAZBAWohAUGIASECDMoBC0GfASECIAEgBEYN4gEgAygCACIAIAQgAWtqIQUgASAAa0EIaiEGAkADQCABLQAAIABBhNUAai0AAEcNDyAAQQhGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM4wELIANBADYCACAGQQFqIQFBKQwPC0GeASECIAEgBEYN4QEgAygCACIAIAQgAWtqIQUgASAAa0EDaiEGAkADQCABLQAAIABBuNQAai0AAEcNDiAAQQNGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM4gELIANBADYCACAGQQFqIQFBLQwOCyABIARGBEBBnQEhAgzhAQsgAS0AAEHFAEcNDiABQQFqIQFBhAEhAgzHAQsgASAERgRAQZwBIQIM4AELAkACQCABLQAAQcwAaw4IAA8PDw8PDwEPCyABQQFqIQFBggEhAgzHAQsgAUEBaiEBQYMBIQIMxgELQZsBIQIgASAERg3eASADKAIAIgAgBCABa2ohBSABIABrQQRqIQYCQANAIAEtAAAgAEGz1ABqLQAARw0LIABBBEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzfAQsgA0EANgIAIAZBAWohAUEjDAsLQZoBIQIgASAERg3dASADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGw1ABqLQAARw0KIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzeAQsgA0EANgIAIAZBAWohAUEADAoLIAEgBEYEQEGZASECDN0BCwJAAkAgAS0AAEHIAGsOCAAMDAwMDAwBDAsgAUEBaiEBQf0AIQIMxAELIAFBAWohAUGAASECDMMBCyABIARGBEBBmAEhAgzcAQsCQAJAIAEtAABBzgBrDgMACwELCyABQQFqIQFB/gAhAgzDAQsgAUEBaiEBQf8AIQIMwgELIAEgBEYEQEGXASECDNsBCyABLQAAQdkARw0IIAFBAWohAUEIDAcLQZYBIQIgASAERg3ZASADKAIAIgAgBCABa2ohBSABIABrQQNqIQYCQANAIAEtAAAgAEGs1ABqLQAARw0GIABBA0YNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzaAQsgA0EANgIAIAZBAWohAUEFDAYLQZUBIQIgASAERg3YASADKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEGm1ABqLQAARw0FIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzZAQsgA0EANgIAIAZBAWohAUEWDAULQZQBIQIgASAERg3XASADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGh1QBqLQAARw0EIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzYAQsgA0EANgIAIAZBAWohAUEQDAQLIAEgBEYEQEGTASECDNcBCwJAAkAgAS0AAEHDAGsODAAGBgYGBgYGBgYGAQYLIAFBAWohAUH5ACECDL4BCyABQQFqIQFB+gAhAgy9AQtBkgEhAiABIARGDdUBIAMoAgAiACAEIAFraiEFIAEgAGtBBWohBgJAA0AgAS0AACAAQaDUAGotAABHDQIgAEEFRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADNYBCyADQQA2AgAgBkEBaiEBQSQMAgsgA0EANgIADAILIAEgBEYEQEGRASECDNQBCyABLQAAQcwARw0BIAFBAWohAUETCzoAKSADKAIEIQAgA0EANgIEIAMgACABEC4iAA0CDAELQQAhAiADQQA2AhwgAyABNgIUIANB/h82AhAgA0EGNgIMDNEBC0H4ACECDLcBCyADQZABNgIcIAMgATYCFCADIAA2AgxBACECDM8BC0EAIQACQCADKAI4IgJFDQAgAigCQCICRQ0AIAMgAhEAACEACyAARQ0AIABBFUYNASADQQA2AhwgAyABNgIUIANBgg82AhAgA0EgNgIMQQAhAgzOAQtB9wAhAgy0AQsgA0GPATYCHCADIAE2AhQgA0HsGzYCECADQRU2AgxBACECDMwBCyABIARGBEBBjwEhAgzMAQsCQCABLQAAQSBGBEAgAUEBaiEBDAELIANBADYCHCADIAE2AhQgA0GbHzYCECADQQY2AgxBACECDMwBC0ECIQIMsgELA0AgAS0AAEEgRw0CIAQgAUEBaiIBRw0AC0GOASECDMoBCyABIARGBEBBjQEhAgzKAQsCQCABLQAAQQlrDgRKAABKAAtB9QAhAgywAQsgAy0AKUEFRgRAQfYAIQIMsAELQfQAIQIMrwELIAEgBEYEQEGMASECDMgBCyADQRA2AgggAyABNgIEDAoLIAEgBEYEQEGLASECDMcBCwJAIAEtAABBCWsOBEcAAEcAC0HzACECDK0BCyABIARHBEAgA0EQNgIIIAMgATYCBEHxACECDK0BC0GKASECDMUBCwJAIAEgBEcEQANAIAEtAABBoNAAai0AACIAQQNHBEACQCAAQQFrDgJJAAQLQfAAIQIMrwELIAQgAUEBaiIBRw0AC0GIASEC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BCABQQFqIgFHDQALQfsAIQIMpwELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0DIANB2wA2AhwgAyABNgIUIAMgADYCDEEAIQIMpgELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0DIANB3QA2AhwgAyABNgIUIAMgADYCDEEAIQIMpQELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0DIANB+gA2AhwgAyABNgIUIAMgADYCDEEAIQIMpAELIANBADYCHCADIAE2AhQgA0G8CjYCECADQQc2AgxBACECDKMBC0HPACECDIkBC0HRACECDIgBC0HnACECDIcBCyABIARGBEBB+gAhAgygAQsCQCABLQAAQQlrDgQgAAAgAAsgAUEBaiEBQeYAIQIMhgELIAEgBEYEQEH5ACECDJ8BCwJAIAEtAABBCWsOBB8AAB8AC0EAIQACQCADKAI4IgJFDQAgAigCOCICRQ0AIAMgAhEAACEACyAARQRAQeIBIQIMhgELIABBFUcEQCADQQA2AhwgAyABNgIUIANByQ02AhAgA0EaNgIMQQAhAgyfAQsgA0H4ADYCHCADIAE2AhQgA0HqGjYCECADQRU2AgxBACECDJ4BCyABIARHBEAgA0ENNgIIIAMgATYCBEHkACECDIUBC0H3ACECDJ0BCyABIARGBEBB9gAhAgydAQsCQAJAAkAgAS0AAEHIAGsOCwABCwsLCwsLCwsCCwsgAUEBaiEBQd0AIQIMhQELIAFBAWohAUHgACECDIQBCyABQQFqIQFB4wAhAgyDAQtB9QAhAiABIARGDZsBIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQbXVAGotAABHDQggAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADJwBCyADKAIEIQAgA0IANwMAIAMgACAGQQFqIgEQKyIABEAgA0H0ADYCHCADIAE2AhQgAyAANgIMQQAhAgycAQtB4gAhAgyCAQtBACEAAkAgAygCOCICRQ0AIAIoAjQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0HqDTYCECADQSY2AgxBACECDJwBC0HhACECDIIBCyADQfMANgIcIAMgATYCFCADQYAbNgIQIANBFTYCDEEAIQIMmgELIAMtACkiAEEja0ELSQ0JAkAgAEEGSw0AQQEgAHRBygBxRQ0ADAoLQQAhAiADQQA2AhwgAyABNgIUIANB7Qk2AhAgA0EINgIMDJkBC0HyACECIAEgBEYNmAEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGAkADQCABLQAAIABBs9UAai0AAEcNBSAAQQFGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMmQELIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARArIgAEQCADQfEANgIcIAMgATYCFCADIAA2AgxBACECDJkBC0HfACECDH8LQQAhAAJAIAMoAjgiAkUNACACKAI0IgJFDQAgAyACEQAAIQALAkAgAARAIABBFUYNASADQQA2AhwgAyABNgIUIANB6g02AhAgA0EmNgIMQQAhAgyZAQtB3gAhAgx/CyADQfAANgIcIAMgATYCFCADQYAbNgIQIANBFTYCDEEAIQIMlwELIAMtAClBIUYNBiADQQA2AhwgAyABNgIUIANBkQo2AhAgA0EINgIMQQAhAgyWAQtB7wAhAiABIARGDZUBIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQbDVAGotAABHDQIgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADJYBCyADKAIEIQAgA0IANwMAIAMgACAGQQFqIgEQKyIARQ0CIANB7QA2AhwgAyABNgIUIAMgADYCDEEAIQIMlQELIANBADYCAAsgAygCBCEAIANBADYCBCADIAAgARArIgBFDYABIANB7gA2AhwgAyABNgIUIAMgADYCDEEAIQIMkwELQdwAIQIMeQtBACEAAkAgAygCOCICRQ0AIAIoAjQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0HqDTYCECADQSY2AgxBACECDJMBC0HbACECDHkLIANB7AA2AhwgAyABNgIUIANBgBs2AhAgA0EVNgIMQQAhAgyRAQsgAy0AKSIAQSNJDQAgAEEuRg0AIANBADYCHCADIAE2AhQgA0HJCTYCECADQQg2AgxBACECDJABC0HaACECDHYLIAEgBEYEQEHrACECDI8BCwJAIAEtAABBL0YEQCABQQFqIQEMAQsgA0EANgIcIAMgATYCFCADQbI4NgIQIANBCDYCDEEAIQIMjwELQdkAIQIMdQsgASAERwRAIANBDjYCCCADIAE2AgRB2AAhAgx1C0HqACECDI0BCyABIARGBEBB6QAhAgyNAQsgAS0AAEEwayIAQf8BcUEKSQRAIAMgADoAKiABQQFqIQFB1wAhAgx0CyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNeiADQegANgIcIAMgATYCFCADIAA2AgxBACECDIwBCyABIARGBEBB5wAhAgyMAQsCQCABLQAAQS5GBEAgAUEBaiEBDAELIAMoAgQhACADQQA2AgQgAyAAIAEQLyIARQ17IANB5gA2AhwgAyABNgIUIAMgADYCDEEAIQIMjAELQdYAIQIMcgsgASAERgRAQeUAIQIMiwELQQAhAEEBIQVBASEHQQAhAgJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAIAEtAABBMGsOCgoJAAECAwQFBggLC0ECDAYLQQMMBQtBBAwEC0EFDAMLQQYMAgtBBwwBC0EICyECQQAhBUEAIQcMAgtBCSECQQEhAEEAIQVBACEHDAELQQAhBUEBIQILIAMgAjoAKyABQQFqIQECQAJAIAMtAC5BEHENAAJAAkACQCADLQAqDgMBAAIECyAHRQ0DDAILIAANAQwCCyAFRQ0BCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNAiADQeIANgIcIAMgATYCFCADIAA2AgxBACECDI0BCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNfSADQeMANgIcIAMgATYCFCADIAA2AgxBACECDIwBCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNeyADQeQANgIcIAMgATYCFCADIAA2AgwMiwELQdQAIQIMcQsgAy0AKUEiRg2GAUHTACECDHALQQAhAAJAIAMoAjgiAkUNACACKAJEIgJFDQAgAyACEQAAIQALIABFBEBB1QAhAgxwCyAAQRVHBEAgA0EANgIcIAMgATYCFCADQaQNNgIQIANBITYCDEEAIQIMiQELIANB4QA2AhwgAyABNgIUIANB0Bo2AhAgA0EVNgIMQQAhAgyIAQsgASAERgRAQeAAIQIMiAELAkACQAJAAkACQCABLQAAQQprDgQBBAQABAsgAUEBaiEBDAELIAFBAWohASADQS9qLQAAQQFxRQ0BC0HSACECDHALIANBADYCHCADIAE2AhQgA0G2ETYCECADQQk2AgxBACECDIgBCyADQQA2AhwgAyABNgIUIANBthE2AhAgA0EJNgIMQQAhAgyHAQsgASAERgRAQd8AIQIMhwELIAEtAABBCkYEQCABQQFqIQEMCQsgAy0ALkHAAHENCCADQQA2AhwgAyABNgIUIANBthE2AhAgA0ECNgIMQQAhAgyGAQsgASAERgRAQd0AIQIMhgELIAEtAAAiAkENRgRAIAFBAWohAUHQACECDG0LIAEhACACQQlrDgQFAQEFAQsgBCABIgBGBEBB3AAhAgyFAQsgAC0AAEEKRw0AIABBAWoMAgtBACECIANBADYCHCADIAA2AhQgA0HKLTYCECADQQc2AgwMgwELIAEgBEYEQEHbACECDIMBCwJAIAEtAABBCWsOBAMAAAMACyABQQFqCyEBQc4AIQIMaAsgASAERgRAQdoAIQIMgQELIAEtAABBCWsOBAABAQABC0EAIQIgA0EANgIcIANBmhI2AhAgA0EHNgIMIAMgAUEBajYCFAx/CyADQYASOwEqQQAhAAJAIAMoAjgiAkUNACACKAI4IgJFDQAgAyACEQAAIQALIABFDQAgAEEVRw0BIANB2QA2AhwgAyABNgIUIANB6ho2AhAgA0EVNgIMQQAhAgx+C0HNACECDGQLIANBADYCHCADIAE2AhQgA0HJDTYCECADQRo2AgxBACECDHwLIAEgBEYEQEHZACECDHwLIAEtAABBIEcNPSABQQFqIQEgAy0ALkEBcQ09IANBADYCHCADIAE2AhQgA0HCHDYCECADQR42AgxBACECDHsLIAEgBEYEQEHYACECDHsLAkACQAJAAkACQCABLQAAIgBBCmsOBAIDAwABCyABQQFqIQFBLCECDGULIABBOkcNASADQQA2AhwgAyABNgIUIANB5xE2AhAgA0EKNgIMQQAhAgx9CyABQQFqIQEgA0Evai0AAEEBcUUNcyADLQAyQYABcUUEQCADQTJqIQIgAxA1QQAhAAJAIAMoAjgiBkUNACAGKAIoIgZFDQAgAyAGEQAAIQALAkACQCAADhZNTEsBAQEBAQEBAQEBAQEBAQEBAQEAAQsgA0EpNgIcIAMgATYCFCADQawZNgIQIANBFTYCDEEAIQIMfgsg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c3BvbnNlIHN0YXR1cwBFeHBlY3RlZCBMRiBhZnRlciBoZWFkZXJzAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMAVXNlciBjYWxsYmFjayBlcnJvcgBgb25fcmVzZXRgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19oZWFkZXJgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2JlZ2luYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlYCBjYWxsYmFjayBlcnJvcgBgb25fc3RhdHVzX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdmVyc2lvbl9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3VybF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3Byb3RvY29sX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fcHJvdG9jb2wARW1wdHkgQ29udGVudC1MZW5ndGgASW52YWxpZCBjaGFyYWN0ZXIgaW4gQ29udGVudC1MZW5ndGgAVHJhbnNmZXItRW5jb2RpbmcgY2FuJ3QgYmUgcHJlc2VudCB3aXRoIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgc2l6ZQBFeHBlY3RlZCBMRiBhZnRlciBjaHVuayBzaXplAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBVbmV4cGVjdGVkIHdoaXRlc3BhY2UgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgTEYgYWZ0ZXIgaGVhZGVyIHZhbHVlAEludmFsaWQgYFRyYW5zZmVyLUVuY29kaW5nYCBoZWFkZXIgdmFsdWUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciBjaHVuayBleHRlbnNpb24gdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZSB2YWx1ZQBJbnZhbGlkIHF1b3RlZC1wYWlyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAFBhdXNlZCBieSBvbl9oZWFkZXJzX2NvbXBsZXRlAEludmFsaWQgRU9GIHN0YXRlAG9uX3Jlc2V0IHBhdXNlAG9uX2NodW5rX2hlYWRlciBwYXVzZQBvbl9tZXNzYWdlX2JlZ2luIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZSBwYXVzZQBvbl9zdGF0dXNfY29tcGxldGUgcGF1c2UAb25fdmVyc2lvbl9jb21wbGV0ZSBwYXVzZQBvbl91cmxfY29tcGxldGUgcGF1c2UAb25fcHJvdG9jb2xfY29tcGxldGUgcGF1c2UAb25fY2h1bmtfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX3ZhbHVlX2NvbXBsZXRlIHBhdXNlAG9uX21lc3NhZ2VfY29tcGxldGUgcGF1c2UAb25fbWV0aG9kX2NvbXBsZXRlIHBhdXNlAG9uX2hlYWRlcl9maWVsZF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19leHRlbnNpb25fbmFtZSBwYXVzZQBVbmV4cGVjdGVkIHNwYWNlIGFmdGVyIHN0YXJ0IGxpbmUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciByZXNwb25zZSBsaW5lAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fY2h1bmtfZXh0ZW5zaW9uX25hbWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBuYW1lAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgZXh0ZW5zaW9uIG5hbWUASW52YWxpZCBzdGF0dXMgY29kZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABNaXNzaW5nIGV4cGVjdGVkIENSIGFmdGVyIGNodW5rIGRhdGEARXhwZWN0ZWQgTEYgYWZ0ZXIgY2h1bmsgZGF0YQBVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AARGF0YSBhZnRlciBgQ29ubmVjdGlvbjogY2xvc2VgAFNXSVRDSF9QUk9YWQBVU0VfUFJPWFkATUtBQ1RJVklUWQBVTlBST0NFU1NBQkxFX0VOVElUWQBRVUVSWQBDT1BZAE1PVkVEX1BFUk1BTkVOVExZAFRPT19FQVJMWQBOT1RJRlkARkFJTEVEX0RFUEVOREVOQ1kAQkFEX0dBVEVXQVkAUExBWQBQVVQAQ0hFQ0tPVVQAR0FURVdBWV9USU1FT1VUAFJFUVVFU1RfVElNRU9VVABORVRXT1JLX0NPTk5FQ1RfVElNRU9VVABDT05ORUNUSU9OX1RJTUVPVVQATE9HSU5fVElNRU9VVABORVRXT1JLX1JFQURfVElNRU9VVABQT1NUAE1JU0RJUkVDVEVEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9SRVFVRVNUAENMSUVOVF9DTE9TRURfTE9BRF9CQUxBTkNFRF9SRVFVRVNUAEJBRF9SRVFVRVNUAEhUVFBfUkVRVUVTVF9TRU5UX1RPX0hUVFBTX1BPUlQAUkVQT1JUAElNX0FfVEVBUE9UAFJFU0VUX0NPTlRFTlQATk9fQ09OVEVOVABQQVJUSUFMX0NPTlRFTlQASFBFX0lOVkFMSURfQ09OU1RBTlQASFBFX0NCX1JFU0VUAEdFVABIUEVfU1RSSUNUAENPTkZMSUNUAFRFTVBPUkFSWV9SRURJUkVDVABQRVJNQU5FTlRfUkVESVJFQ1QAQ09OTkVDVABNVUxUSV9TVEFUVVMASFBFX0lOVkFMSURfU1RBVFVTAFRPT19NQU5ZX1JFUVVFU1RTAEVBUkxZX0hJTlRTAFVOQVZBSUxBQkxFX0ZPUl9MRUdBTF9SRUFTT05TAE9QVElPTlMAU1dJVENISU5HX1BST1RPQ09MUwBWQVJJQU5UX0FMU09fTkVHT1RJQVRFUwBNVUxUSVBMRV9DSE9JQ0VTAElOVEVSTkFMX1NFUlZFUl9FUlJPUgBXRUJfU0VSVkVSX1VOS05PV05fRVJST1IAUkFJTEdVTl9FUlJPUgBJREVOVElUWV9QUk9WSURFUl9BVVRIRU5USUNBVElPTl9FUlJPUgBTU0xfQ0VSVElGSUNBVEVfRVJST1IASU5WQUxJRF9YX0ZPUldBUkRFRF9GT1IAU0VUX1BBUkFNRVRFUgBHRVRfUEFSQU1FVEVSAEhQRV9VU0VSAFNFRV9PVEhFUgBIUEVfQ0JfQ0hVTktfSEVBREVSAEV4cGVjdGVkIExGIGFmdGVyIENSAE1LQ0FMRU5EQVIAU0VUVVAAV0VCX1NFUlZFUl9JU19ET1dOAFRFQVJET1dOAEhQRV9DTE9TRURfQ09OTkVDVElPTgBIRVVSSVNUSUNfRVhQSVJBVElPTgBESVNDT05ORUNURURfT1BFUkFUSU9OAE5PTl9BVVRIT1JJVEFUSVZFX0lORk9STUFUSU9OAEhQRV9JTlZBTElEX1ZFUlNJT04ASFBFX0NCX01FU1NBR0VfQkVHSU4AU0lURV9JU19GUk9aRU4ASFBFX0lOVkFMSURfSEVBREVSX1RPS0VOAElOVkFMSURfVE9LRU4ARk9SQklEREVOAEVOSEFOQ0VfWU9VUl9DQUxNAEhQRV9JTlZBTElEX1VSTABCTE9DS0VEX0JZX1BBUkVOVEFMX0NPTlRST0wATUtDT0wAQUNMAEhQRV9JTlRFUk5BTABSRVFVRVNUX0hFQURFUl9GSUVMRFNfVE9PX0xBUkdFX1VOT0ZGSUNJQUwASFBFX09LAFVOTElOSwBVTkxPQ0sAUFJJAFJFVFJZX1dJVEgASFBFX0lOVkFMSURfQ09OVEVOVF9MRU5HVEgASFBFX1VORVhQRUNURURfQ09OVEVOVF9MRU5HVEgARkxVU0gAUFJPUFBBVENIAE0tU0VBUkNIAFVSSV9UT09fTE9ORwBQUk9DRVNTSU5HAE1JU0NFTExBTkVPVVNfUEVSU0lTVEVOVF9XQVJOSU5HAE1JU0NFTExBTkVPVVNfV0FSTklORwBIUEVfSU5WQUxJRF9UUkFOU0ZFUl9FTkNPRElORwBFeHBlY3RlZCBDUkxGAEhQRV9JTlZBTElEX0NIVU5LX1NJWkUATU9WRQBDT05USU5VRQBIUEVfQ0JfU1RBVFVTX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJTX0NPTVBMRVRFAEhQRV9DQl9WRVJTSU9OX0NPTVBMRVRFAEhQRV9DQl9VUkxfQ09NUExFVEUASFBFX0NCX1BST1RPQ09MX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19DT01QTEVURQBIUEVfQ0JfSEVBREVSX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fVkFMVUVfQ09NUExFVEUASFBFX0NCX0NIVU5LX0VYVEVOU0lPTl9OQU1FX0NPTVBMRVRFAEhQRV9DQl9NRVNTQUdFX0NPTVBMRVRFAEhQRV9DQl9NRVRIT0RfQ09NUExFVEUASFBFX0NCX0hFQURFUl9GSUVMRF9DT01QTEVURQBERUxFVEUASFBFX0lOVkFMSURfRU9GX1NUQVRFAElOVkFMSURfU1NMX0NFUlRJRklDQVRFAFBBVVNFAE5PX1JFU1BPTlNFAFVOU1VQUE9SVEVEX01FRElBX1RZUEUAR09ORQBOT1RfQUNDRVBUQUJMRQBTRVJWSUNFX1VOQVZBSUxBQkxFAFJBTkdFX05PVF9TQVRJU0ZJQUJMRQBPUklHSU5fSVNfVU5SRUFDSEFCTEUAUkVTUE9OU0VfSVNfU1RBTEUAUFVSR0UATUVSR0UAUkVRVUVTVF9IRUFERVJfRklFTERTX1RPT19MQVJHRQBSRVFVRVNUX0hFQURFUl9UT09fTEFSR0UAUEFZTE9BRF9UT09fTEFSR0UASU5TVUZGSUNJRU5UX1NUT1JBR0UASFBFX1BBVVNFRF9VUEdSQURFAEhQRV9QQVVTRURfSDJfVVBHUkFERQBTT1VSQ0UAQU5OT1VOQ0UAVFJBQ0UASFBFX1VORVhQRUNURURfU1BBQ0UAREVTQ1JJQkUAVU5TVUJTQ1JJQkUAUkVDT1JEAEhQRV9JTlZBTElEX01FVEhPRABOT1RfRk9VTkQAUFJPUEZJTkQAVU5CSU5EAFJFQklORABVTkFVVEhPUklaRUQATUVUSE9EX05PVF9BTExPV0VEAEhUVFBfVkVSU0lPTl9OT1RfU1VQUE9SVEVEAEFMUkVBRFlfUkVQT1JURUQAQUNDRVBURUQATk9UX0lNUExFTUVOVEVEAExPT1BfREVURUNURUQASFBFX0NSX0VYUEVDVEVEAEhQRV9MRl9FWFBFQ1RFRABDUkVBVEVEAElNX1VTRUQASFBFX1BBVVNFRABUSU1FT1VUX09DQ1VSRUQAUEFZTUVOVF9SRVFVSVJFRABQUkVDT05ESVRJT05fUkVRVUlSRUQAUFJPWFlfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATkVUV09SS19BVVRIRU5USUNBVElPTl9SRVFVSVJFRABMRU5HVEhfUkVRVUlSRUQAU1NMX0NFUlRJRklDQVRFX1JFUVVJUkVEAFVQR1JBREVfUkVRVUlSRUQAUEFHRV9FWFBJUkVEAFBSRUNPTkRJVElPTl9GQUlMRUQARVhQRUNUQVRJT05fRkFJTEVEAFJFVkFMSURBVElPTl9GQUlMRUQAU1NMX0hBTkRTSEFLRV9GQUlMRUQATE9DS0VEAFRSQU5TRk9STUFUSU9OX0FQUExJRUQATk9UX01PRElGSUVEAE5PVF9FWFRFTkRFRABCQU5EV0lEVEhfTElNSVRfRVhDRUVERUQAU0lURV9JU19PVkVSTE9BREVEAEhFQUQARXhwZWN0ZWQgSFRUUC8sIFJUU1AvIG9yIElDRS8A5xUAAK8VAACkEgAAkhoAACYWAACeFAAA2xkAAHkVAAB+EgAA/hQAADYVAAALFgAA2BYAAPMSAABCGAAArBYAABIVAAAUFwAA7xcAAEgUAABxFwAAshoAAGsZAAB+GQAANRQAAIIaAABEFwAA/RYAAB4YAACHFwAAqhkAAJMSAAAHGAAALBcAAMoXAACkFwAA5xUAAOcVAABYFwAAOxgAAKASAAAtHAAAwxEAAEgRAADeEgAAQhMAAKQZAAD9EAAA9xUAAKUVAADvFgAA+BkAAEoWAABWFgAA9RUAAAoaAAAIGgAAARoAAKsVAABCEgAA1xAAAEwRAAAFGQAAVBYAAB4RAADKGQAAyBkAAE4WAAD/GAAAcRQAAPAVAADuFQAAlBkAAPwVAAC/GQAAmxkAAHwUAABDEQAAcBgAAJUUAAAnFAAAGRQAANUSAADUGQAARBYAAPcQAEG5OwsBAQBB0DsL4AEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEDAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBuj0LBAEAAAIAQdE9C14DBAMDAwMDAAADAwADAwADAwMDAwMDAwMDAAUAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAwADAEG6PwsEAQAAAgBB0T8LXgMAAwMDAwMAAAMDAAMDAAMDAwMDAwMDAwMABAAFAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwADAAMAQbDBAAsNbG9zZWVlcC1hbGl2ZQBBycEACwEBAEHgwQAL4AEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBycMACwEBAEHgwwAL5wEBAQEBAQEBAQEBAQECAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAWNodW5rZWQAQfHFAAteAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQBB0McACyFlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AQYDIAAsgcmFuc2Zlci1lbmNvZGluZ3BncmFkZQ0KDQpTTQ0KDQoAQanIAAsFAQIAAQMAQcDIAAtfBAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanKAAsFAQIAAQMAQcDKAAtfBAUFBgUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanMAAsEAQAAAQBBwcwAC14CAgACAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAEGpzgALBQECAAEDAEHAzgALXwQFAAAFBQUFBQUFBQUFBQYFBQUFBQUFBQUFBQUABQAHCAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQAFAAUABQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAAAAFAEGp0AALBQEBAAEBAEHA0AALAQEAQdrQAAtBAgAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAQanSAAsFAQEAAQEAQcDSAAsBAQBBytIACwYCAAAAAAIAQeHSAAs6AwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBBoNQAC50BTk9VTkNFRUNLT1VUTkVDVEVURUNSSUJFTFVTSEVURUFEU0VBUkNIUkdFQ1RJVklUWUxFTkRBUlZFT1RJRllQVElPTlNDSFNFQVlTVEFUQ0hHRVVFUllPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFVFRQQ0VUU1BBRFRQLw==","base64")}})});var FzQ=R((XiY,GzQ)=>{var{Buffer:Pw0}=u("node:buffer"),ns;Object.defineProperty(GzQ,"exports",{get:()=>{return ns?ns:ns=Pw0.from("AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAn9/AGABfwBgBH9/f38Bf2AAAGADf39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQAEA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAAzU0BQYAAAMAAAAAAAADAQMAAwMDAAACAAAAAAICAgICAgICAgIBAQEBAQEBAQEBAwAAAwAAAAQFAXABExMFAwEAAgYIAX8BQcDZBAsHxQcoBm1lbW9yeQIAC19pbml0aWFsaXplAAgZX19pbmRpcmVjdF9mdW5jdGlvbl90YWJsZQEAC2xsaHR0cF9pbml0AAkYbGxodHRwX3Nob3VsZF9rZWVwX2FsaXZlADcMbGxodHRwX2FsbG9jAAsGbWFsbG9jADkLbGxodHRwX2ZyZWUADARmcmVlAAwPbGxodHRwX2dldF90eXBlAA0VbGxodHRwX2dldF9odHRwX21ham9yAA4VbGxodHRwX2dldF9odHRwX21pbm9yAA8RbGxodHRwX2dldF9tZXRob2QAEBZsbGh0dHBfZ2V0X3N0YXR1c19jb2RlABESbGxodHRwX2dldF91cGdyYWRlABIMbGxodHRwX3Jlc2V0ABMObGxodHRwX2V4ZWN1dGUAFBRsbGh0dHBfc2V0dGluZ3NfaW5pdAAVDWxsaHR0cF9maW5pc2gAFgxsbGh0dHBfcGF1c2UAFw1sbGh0dHBfcmVzdW1lABgbbGxodHRwX3Jlc3VtZV9hZnRlcl91cGdyYWRlABkQbGxodHRwX2dldF9lcnJubwAaF2xsaHR0cF9nZXRfZXJyb3JfcmVhc29uABsXbGxodHRwX3NldF9lcnJvcl9yZWFzb24AHBRsbGh0dHBfZ2V0X2Vycm9yX3BvcwAdEWxsaHR0cF9lcnJub19uYW1lAB4SbGxodHRwX21ldGhvZF9uYW1lAB8SbGxodHRwX3N0YXR1c19uYW1lACAabGxodHRw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AXRrQT5qIQILIAEgAjYCHCABQgA3AhAgAkECdEH01wBqIQACQEHI1QAoAgAiA0EBIAJ0IgdxRQRAIAAgATYCAEHI1QAgAyAHcjYCACABIAA2AhggASABNgIIIAEgATYCDAwBCyAEQRkgAkEBdmtBACACQR9HG3QhAiAAKAIAIQACQANAIAAiAygCBEF4cSAERg0BIAJBHXYhACACQQF0IQIgAyAAQQRxakEQaiIHKAIAIgANAAsgByABNgIAIAEgAzYCGCABIAE2AgwgASABNgIIDAELIAMoAggiACABNgIMIAMgATYCCCABQQA2AhggASADNgIMIAEgADYCCAtB5NUAQeTVACgCAEEBayIAQX8gABs2AgALCwcAIAAtACgLBwAgAC0AKgsHACAALQArCwcAIAAtACkLBwAgAC8BNAsHACAALQAwC0ABBH8gACgCGCEBIAAvAS4hAiAALQAoIQMgACgCOCEEIAAQOCAAIAQ2AjggACADOgAoIAAgAjsBLiAAIAE2AhgLhocCAwd/A34BeyABIAJqIQQCQCAAIgMoAgwiAA0AIAMoAgQEQCADIAE2AgQLIwBBEGsiCSQAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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DAgLQeMBDAcLQdcBDAYLQdgBDAULQdkBDAQLQdoBDAMLQdsBDAILQd0BDAELQdwBCyECA0ACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAMCfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAn8CQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAwJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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A0EXNgIcIAMgADYCDCADIAFBAWo2AhQM+AILIABBFUYNI0EAIQIgA0EANgIcIAMgATYCFCADQdYMNgIQIANBIzYCDAz3AgsgAygCBCEAQQAhAiADQQA2AgQgAyAAIAEQNCIARQRAIAFBAWohAQwdCyADQRk2AhwgAyAANgIMIAMgAUEBajYCFAz2AgsgAygCBCEAQQAhAiADQQA2AgQgAyAAIAEQNCIARQRAIAFBAWohAQzvAgsgA0EaNgIcIAMgADYCDCADIAFBAWo2AhQM9QILIABBFUYNH0EAIQIgA0EANgIcIAMgATYCFCADQdAPNgIQIANBIjYCDAz0AgsgAygCBCEAIANBADYCBCADIAAgARAzIgBFBEAgAUEBaiEBDBsLIANBHDYCHCADIAA2AgwgAyABQQFqNgIUQQAhAgzzAgsgAygCBCEAIANBADYCBCADIAAgARAzIgBFBEAgAUEBaiEBDOsCCyADQR02AhwgAyAANgIMIAMgAUEBajYCFEEAIQIM8gILIABBO0cNASABQQFqIQELQSYhAgzXAgtBACECIANBADYCHCADIAE2AhQgA0GfFTYCECADQQw2AgwM7wILIAEgBEcEQANAIAEtAABBIEcNhAIgBCABQQFqIgFHDQALQSwhAgzvAgtBLCECDO4CCyABIARGBEBBNCECDO4CCwJAAkADQAJAIAEtAABBCmsOBAIAAAMACyAEIAFBAWoiAUcNAAtBNCECDO8CCyADKAIEIQAgA0EANgIEIAMgACABEDEiAEUNnwIgA0EyNgIcIAMgATYCFCADIAA2AgxBACECDO4CCyADKAIEIQAgA0EANgIEIAMgACABEDEiAEUEQCABQQFqIQEMnwILIANBMjYCHCADIAA2AgwgAyABQQFqNgIUQQAhAgztAgsgASAERwRAAkADQCABLQAAQTBrIgBB/wFxQQpPBEBBOiECDNcCCyADKQMgIgtCmbPmzJmz5swZVg0BIAMgC0IKfiIKNwMgIAogAK1C/wGDIgtCf4VWDQEgAyAKIAt8NwMgIAQgAUEBaiIBRw0AC0HAACECDO4CCyADKAIEIQAgA0EANgIEIAMgACABQQFqIgEQMSIADRcM4gILQcAAIQIM7AILIAEgBEYEQEHJACECDOwCCwJAA0ACQCABLQAAQQlrDhgAAqICogKpAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAgCiAgsgBCABQQFqIgFHDQALQckAIQIM7AILIAFBAWohASADQS9qLQAAQQFxDaUCIANBADYCHCADIAE2AhQgA0GXEDYCECADQQo2AgxBACECDOsCCyABIARHBEADQCABLQAAQSBHDRUgBCABQQFqIgFHDQALQfgAIQIM6wILQfgAIQIM6gILIANBAjoAKAw4C0EAIQIgA0EANgIcIANBvws2AhAgA0ECNgIMIAMgAUEBajYCFAzoAgtBACECDM4CC0ENIQIMzQILQRMhAgzMAgtBFSECDMsCC0EWIQIMygILQRghAgzJAgtBGSECDMgCC0EaIQIMxwILQRshAgzGAgtBHCECDMUCC0EdIQIMxAILQR4hAgzDAgtBHyECDMICC0EgIQIMwQILQSIhAgzAAgtBIyECDL8CC0ElIQIMvgILQeUAIQIMvQILIANBPTYCHCADIAE2AhQgAyAANgIMQQAhAgzVAgsgA0EbNgIcIAMgATYCFCADQaQcNgIQIANBFTYCDEEAIQIM1AILIANBIDYCHCADIAE2AhQgA0GYGjYCECADQRU2AgxBACECDNMCCyADQRM2AhwgAyABNgIUIANBmBo2AhAgA0EVNgIMQQAhAgzSAgsgA0ELNgIcIAMgATYCFCADQZgaNgIQIANBFTYCDEEAIQIM0QILIANBEDYCHCADIAE2AhQgA0GYGjYCECADQRU2AgxBACECDNACCyADQSA2AhwgAyABNgIUIANBpBw2AhAgA0EVNgIMQQAhAgzPAgsgA0ELNgIcIAMgATYCFCADQaQcNgIQIANBFTYCDEEAIQIMzgILIANBDDYCHCADIAE2AhQgA0GkHDYCECADQRU2AgxBACECDM0CC0EAIQIgA0EANgIcIAMgATYCFCADQd0ONgIQIANBEjYCDAzMAgsCQANAAkAgAS0AAEEKaw4EAAICAAILIAQgAUEBaiIBRw0AC0H9ASECDMwCCwJAAkAgAy0ANkEBRw0AQQAhAAJAIAMoAjgiAkUNACACKAJgIgJFDQAgAyACEQAAIQALIABFDQAgAEEVRw0BIANB/AE2AhwgAyABNgIUIANB3Bk2AhAgA0EVNgIMQQAhAgzNAgtB3AEhAgyzAgsgA0EANgIcIAMgATYCFCADQfkLNgIQIANBHzYCDEEAIQIMywILAkACQCADLQAoQQFrDgIEAQALQdsBIQIMsgILQdQBIQIMsQILIANBAjoAMUEAIQACQCADKAI4IgJFDQAgAigCACICRQ0AIAMgAhEAACEACyAARQRAQd0BIQIMsQILIABBFUcEQCADQQA2AhwgAyABNgIUIANBtAw2AhAgA0EQNgIMQQAhAgzKAgsgA0H7ATYCHCADIAE2AhQgA0GBGjYCECADQRU2AgxBACECDMkCCyABIARGBEBB+gEhAgzJAgsgAS0AAEHIAEYNASADQQE6ACgLQcABIQIMrgILQdoBIQIMrQILIAEgBEcEQCADQQw2AgggAyABNgIEQdkBIQIMrQILQfkBIQIMxQILIAEgBEYEQEH4ASECDMUCCyABLQAAQcgARw0EIAFBAWohAUHYASECDKsCCyABIARGBEBB9wEhAgzEAgsCQAJAIAEtAABBxQBrDhAABQUFBQUFBQUFBQUFBQUBBQsgAUEBaiEBQdYBIQIMqwILIAFBAWohAUHXASECDKoCC0H2ASECIAEgBEYNwgIgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABButUAai0AAEcNAyAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMwwILIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARAuIgBFBEBB4wEhAgyqAgsgA0H1ATYCHCADIAE2AhQgAyAANgIMQQAhAgzCAgtB9AEhAiABIARGDcECIAMoAgAiACAEIAFraiEFIAEgAGtBAWohBgJAA0AgAS0AACAAQbjVAGotAABHDQIgAEEBRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADMICCyADQYEEOwEoIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARAuIgANAwwCCyADQQA2AgALQQAhAiADQQA2AhwgAyABNgIUIANB5R82AhAgA0EINgIMDL8CC0HVASECDKUCCyADQfMBNgIcIAMgATYCFCADIAA2AgxBACECDL0CC0EAIQACQCADKAI4IgJFDQAgAigCQCICRQ0AIAMgAhEAACEACyAARQ1uIABBFUcEQCADQQA2AhwgAyABNgIUIANBgg82AhAgA0EgNgIMQQAhAgy9AgsgA0GPATYCHCADIAE2AhQgA0HsGzYCECADQRU2AgxBACECDLwCCyABIARHBEAgA0ENNgIIIAMgATYCBEHTASECDKMCC0HyASECDLsCCyABIARGBEBB8QEhAgy7AgsCQAJAAkAgAS0AAEHIAGsOCwABCAgICAgICAgCCAsgAUEBaiEBQdABIQIMowILIAFBAWohAUHRASECDKICCyABQQFqIQFB0gEhAgyhAgtB8AEhAiABIARGDbkCIAMoAgAiACAEIAFraiEGIAEgAGtBAmohBQNAIAEtAAAgAEG11QBqLQAARw0EIABBAkYNAyAAQQFqIQAgBCABQQFqIgFHDQALIAMgBjYCAAy5AgtB7wEhAiABIARGDbgCIAMoAgAiACAEIAFraiEGIAEgAGtBAWohBQNAIAEtAAAgAEGz1QBqLQAARw0DIABBAUYNAiAAQQFqIQAgBCABQQFqIgFHDQALIAMgBjYCAAy4AgtB7gEhAiABIARGDbcCIAMoAgAiACAEIAFraiEGIAEgAGtBAmohBQNAIAEtAAAgAEGw1QBqLQAARw0CIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBjYCAAy3AgsgAygCBCEAIANCADcDACADIAAgBUEBaiIBECsiAEUNAiADQewBNgIcIAMgATYCFCADIAA2AgxBACECDLYCCyADQQA2AgALIAMoAgQhACADQQA2AgQgAyAAIAEQKyIARQ2cAiADQe0BNgIcIAMgATYCFCADIAA2AgxBACECDLQCC0HPASECDJoCC0EAIQACQCADKAI4IgJFDQAgAigCNCICRQ0AIAMgAhEAACEACwJAIAAEQCAAQRVGDQEgA0EANgIcIAMgATYCFCADQeoNNgIQIANBJjYCDEEAIQIMtAILQc4BIQIMmgILIANB6wE2AhwgAyABNgIUIANBgBs2AhAgA0EVNgIMQQAhAgyyAgsgASAERgRAQesBIQIMsgILIAEtAABBL0YEQCABQQFqIQEMAQsgA0EANgIcIAMgATYCFCADQbI4NgIQIANBCDYCDEEAIQIMsQILQc0BIQIMlwILIAEgBEcEQCADQQ42AgggAyABNgIEQcwBIQIMlwILQeoBIQIMrwILIAEgBEYEQEHpASECDK8CCyABLQAAQTBrIgBB/wFxQQpJBEAgAyAAOgAqIAFBAWohAUHLASECDJYCCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNlwIgA0HoATYCHCADIAE2AhQgAyAANgIMQQAhAgyuAgsgASAERgRAQecBIQIMrgILAkAgAS0AAEEuRgRAIAFBAWohAQwBCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNmAIgA0HmATYCHCADIAE2AhQgAyAANgIMQQAhAgyuAgtBygEhAgyUAgsgASAERgRAQeUBIQIMrQILQQAhAEEBIQVBASEHQQAhAgJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAIAEtAABBMGsOCgoJAAECAwQFBggLC0ECDAYLQQMMBQtBBAwEC0EFDAMLQQYMAgtBBwwBC0EICyECQQAhBUEAIQcMAgtBCSECQQEhAEEAIQVBACEHDAELQQAhBUEBIQILIAMgAjoAKyABQQFqIQECQAJAIAMtAC5BEHENAAJAAkACQCADLQAqDgMBAAIECyAHRQ0DDAILIAANAQwCCyAFRQ0BCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNAiADQeIBNgIcIAMgATYCFCADIAA2AgxBACECDK8CCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNmgIgA0HjATYCHCADIAE2AhQgAyAANgIMQQAhAgyuAgsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDZgCIANB5AE2AhwgAyABNgIUIAMgADYCDAytAgtByQEhAgyTAgtBACEAAkAgAygCOCICRQ0AIAIoAkQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0GkDTYCECADQSE2AgxBACECDK0CC0HIASECDJMCCyADQeEBNgIcIAMgATYCFCADQdAaNgIQIANBFTYCDEEAIQIMqwILIAEgBEYEQEHhASECDKsCCwJAIAEtAABBIEYEQCADQQA7ATQgAUEBaiEBDAELIANBADYCHCADIAE2AhQgA0GZETYCECADQQk2AgxBACECDKsCC0HHASECDJECCyABIARGBEBB4AEhAgyqAgsCQCABLQAAQTBrQf8BcSICQQpJBEAgAUEBaiEBAkAgAy8BNCIAQZkzSw0AIAMgAEEKbCIAOwE0IABB/v8DcSACQf//A3NLDQAgAyAAIAJqOwE0DAILQQAhAiADQQA2AhwgAyABNgIUIANBlR42AhAgA0ENNgIMDKsCCyADQQA2AhwgAyABNgIUIANBlR42AhAgA0ENNgIMQQAhAgyqAgtBxgEhAgyQAgsgASAERgRAQd8BIQIMqQILAkAgAS0AAEEwa0H/AXEiAkEKSQRAIAFBAWohAQJAIAMvATQiAEGZM0sNACADIABBCmwiADsBNCAAQf7/A3EgAkH//wNzSw0AIAMgACACajsBNAwCC0EAIQIgA0EANgIcIAMgATYCFCADQZUeNgIQIANBDTYCDAyqAgsgA0EANgIcIAMgATYCFCADQZUeNgIQIANBDTYCDEEAIQIMqQILQcUBIQIMjwILIAEgBEYEQEHeASECDKgCCwJAIAEtAABBMGtB/wFxIgJBCkkEQCABQQFqIQECQCADLwE0IgBBmTNLDQAgAyAAQQpsIgA7ATQgAEH+/wNxIAJB//8Dc0sNACADIAAgAmo7ATQMAgtBACECIANBADYCHCADIAE2AhQgA0GVHjYCECADQQ02AgwMqQILIANBADYCHCADIAE2AhQgA0GVHjYCECADQQ02AgxBACECDKgCC0HEASECDI4CCyABIARGBEBB3QEhAgynAgsCQAJAAkACQCABLQAAQQprDhcCAwMAAwMDAwMDAwMDAwMDAwMDAwMDAQMLIAFBAWoMBQsgAUEBaiEBQcMBIQIMjwILIAFBAWohASADQS9qLQAAQQFxDQggA0EANgIcIAMgATYCFCADQY0LNgIQIANBDTYCDEEAIQIMpwILIANBADYCHCADIAE2AhQgA0GNCzYCECADQQ02AgxBACECDKYCCyABIARHBEAgA0EPNgIIIAMgATYCBEEBIQIMjQILQdwBIQIMpQILAkACQANAAkAgAS0AAEEKaw4EAgAAAwALIAQgAUEBaiIBRw0AC0HbASECDKYCCyADKAIEIQAgA0EANgIEIAMgACABEC0iAEUEQCABQQFqIQEMBAsgA0HaATYCHCADIAA2AgwgAyABQQFqNgIUQQAhAgylAgsgAygCBCEAIANBADYCBCADIAAgARAtIgANASABQQFqCyEBQcEBIQIMigILIANB2QE2AhwgAyAANgIMIAMgAUEBajYCFEEAIQIMogILQcIBIQIMiAILIANBL2otAABBAXENASADQQA2AhwgAyABNgIUIANB5Bw2AhAgA0EZNgIMQQAhAgygAgsgASAERgRAQdkB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CyADIAU2AgAMkAILIANBADYCACAGQQFqIQFBGgw8C0HKASECIAEgBEYNjgIgAygCACIAIAQgAWtqIQUgASAAa0EDaiEGAkADQCABLQAAIABBjdUAai0AAEcNOyAAQQNGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMjwILIANBADYCACAGQQFqIQFBIQw7CyABIARGBEBByQEhAgyOAgsCQAJAIAEtAABBwQBrDhQAPT09PT09PT09PT09PT09PT09AT0LIAFBAWohAUGtASECDPUBCyABQQFqIQFBsAEhAgz0AQsgASAERgRAQcgBIQIMjQILAkACQCABLQAAQdUAaw4LADw8PDw8PDw8PAE8CyABQQFqIQFBrgEhAgz0AQsgAUEBaiEBQa8BIQIM8wELQccBIQIgASAERg2LAiADKAIAIgAgBCABa2ohBSABIABrQQhqIQYCQANAIAEtAAAgAEGE1QBqLQAARw04IABBCEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyMAgsgA0EANgIAIAZBAWohAUEqDDgLIAEgBEYEQEHGASECDIsCCyABLQAAQdAARw04IAFBAWohAUElDDcLQcUBIQIgASAERg2JAiADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGB1QBqLQAARw02IABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyKAgsgA0EANgIAIAZBAWohAUEODDYLIAEgBEYEQEHEASECDIkCCyABLQAAQcUARw02IAFBAWohAUGrASECDO8BCyABIARGBEBBwwEhAgyIAgsCQAJAAkACQCABLQAAQcIAaw4PAAECOTk5OTk5OTk5OTkDOQsgAUEBaiEBQacBIQIM8QELIAFBAWohAUGoASECDPABCyABQQFqIQFBqQEhAgzvAQsgAUEBaiEBQaoBIQIM7gELQcIBIQIgASAERg2GAiADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEH+1ABqLQAARw0zIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyHAgsgA0EANgIAIAZBAWohAUEUDDMLQcEBIQIgASAERg2FAiADKAIAIgAgBCABa2ohBSABIABrQQRqIQYCQANA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BTYCAAzsAQsgA0EANgIAIAZBAWohAUEXDBgLQaYBIQIgASAERg3qASADKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEHB1ABqLQAARw0XIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzrAQsgA0EANgIAIAZBAWohAUEYDBcLIAEgBEYEQEGlASECDOoBCwJAAkAgAS0AAEHJAGsOBwAZGRkZGQEZCyABQQFqIQFBiwEhAgzRAQsgAUEBaiEBQYwBIQIM0AELQaQBIQIgASAERg3oASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEGm1QBqLQAARw0VIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzpAQsgA0EANgIAIAZBAWohAUEJDBULQaMBIQIgASAERg3nASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEGk1QBqLQAARw0UIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzoAQsgA0EANgIAIAZBAWohAUEfDBQLQaIBIQIgASAERg3mASADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEG+1ABqLQAARw0TIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAznAQsgA0EANgIAIAZBAWohAUECDBMLQaEBIQIgASAERg3lASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYDQCABLQAAIABBvNQAai0AAEcNESAAQQFGDQIgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM5QELIAEgBEYEQEGgASECDOUBC0EBIAEtAABB3wBHDREaIAFBAWohAUGHASECDMsBCyADQQA2AgAgBkEBaiEBQYgBIQIMygELQZ8BIQIgASAERg3iASADKAIAIgAgBCABa2ohBSABIABrQQhqIQYCQANAIAEtAAAgAEGE1QBqLQAARw0PIABBCEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzjAQsgA0EANgIAIAZBAWohAUEpDA8LQZ4BIQIgASAERg3hASADKAIAIgAgBCABa2ohBSABIABrQQNqIQYCQANAIAEtAAAgAEG41ABqLQAARw0OIABBA0YNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAziAQsgA0EANgIAIAZBAWohAUEtDA4LIAEgBEYEQEGdASECDOEBCyABLQAAQcUARw0OIAFBAWohAUGEASECDMcBCyABIARGBEBBnAEhAgzgAQsCQAJAIAEtAABBzABrDggADw8PDw8PAQ8LIAFBAWohAUGCASECDMcBCyABQQFqIQFBgwEhAgzGAQtBmwEhAiABIARGDd4BIAMoAgAiACAEIAFraiEFIAEgAGtBBGohBgJAA0AgAS0AACAAQbPUAGotAABHDQsgAEEERg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADN8BCyADQQA2AgAgBkEBaiEBQSMMCwtBmgEhAiABIARGDd0BIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQbDUAGotAABHDQogAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADN4BCyADQQA2AgAgBkEBaiEBQQAMCgsgASAERgRAQZkBIQIM3QELAkACQCABLQAAQcgAaw4IAAwMDAwMDAEMCyABQQFqIQFB/QAhAgzEAQsgAUEBaiEBQYABIQIMwwELIAEgBEYEQEGYASECDNwBCwJAAkAgAS0AAEHOAGsOAwALAQsLIAFBAWohAUH+ACECDMMBCyABQQFqIQFB/wAhAgzCAQsgASAERgRAQZcBIQIM2wELIAEtAABB2QBHDQggAUEBaiEBQQgMBwtBlgEhAiABIARGDdkBIAMoAgAiACAEIAFraiEFIAEgAGtBA2ohBgJAA0AgAS0AACAAQazUAGotAABHDQYgAEEDRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADNoBCyADQQA2AgAgBkEBaiEBQQUMBgtBlQEhAiABIARGDdgBIAMoAgAiACAEIAFraiEFIAEgAGtBBWohBgJAA0AgAS0AACAAQabUAGotAABHDQUgAEEFRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADNkBCyADQQA2AgAgBkEBaiEBQRYMBQtBlAEhAiABIARGDdcBIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQaHVAGotAABHDQQgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADNgBCyADQQA2AgAgBkEBaiEBQRAMBAsgASAERgRAQZMBIQIM1wELAkACQCABLQAAQcMAaw4MAAYGBgYGBgYGBgYBBgsgAUEBaiEBQfkAIQIMvgELIAFBAWohAUH6ACECDL0BC0GSASECIAEgBEYN1QEgAygCACIAIAQgAWtqIQUgASAAa0EFaiEGAkADQCABLQAAIABBoNQAai0AAEcNAiAAQQVGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM1gELIANBADYCACAGQQFqIQFBJAwCCyADQQA2AgAMAgsgASAERgRAQZEBIQIM1AELIAEtAABBzABHDQEgAUEBaiEBQRMLOgApIAMoAgQhACADQQA2AgQgAyAAIAEQLiIADQIMAQtBACECIANBADYCHCADIAE2AhQgA0H+HzYCECADQQY2AgwM0QELQfgAIQIMtwELIANBkAE2AhwgAyABNgIUIAMgADYCDEEAIQIMzwELQQAhAAJAIAMoAjgiAkUNACACKAJAIgJFDQAgAyACEQAAIQALIABFDQAgAEEVRg0BIANBADYCHCADIAE2AhQgA0GCDzYCECADQSA2AgxBACECDM4BC0H3ACECDLQBCyADQY8BNgIcIAMgATYCFCADQewbNgIQIANBFTYCDEEAIQIMzAELIAEgBEYEQEGPASECDMwBCwJAIAEtAABBIEYEQCABQQFqIQEMAQsgA0EANgIcIAMgATYCFCADQZsfNgIQIANBBjYCDEEAIQIMzAELQQIhAgyyAQsDQCABLQAAQSBHDQIgBCABQQFqIgFHDQALQY4BIQIMygELIAEgBEYEQEGNASECDMoBCwJAIAEtAABBCWsOBEoAAEoAC0H1ACECDLABCyADLQApQQVGBEBB9gAhAgywAQtB9AAhAgyvAQsgASAERgRAQYwBIQIMyAELIANBEDYCCCADIAE2AgQMCgsgASAERgRAQYsBIQIMxwELAkAgAS0AAEEJaw4ERwAARwALQfMAIQIMrQELIAEgBEcEQCADQRA2AgggAyABNgIEQfEAIQIMrQELQYoBIQIMxQELAkAgASAERwRAA0AgAS0AAEGg0ABqLQAAIgBBA0cEQAJAIABBAWsOAkkABAtB8AAhAgyvAQsgBCABQQFqIgFHDQALQYgBIQIMxgELQYgBIQIMxQELIANBADYCHCADIAE2AhQgA0HbIDYCECADQQc2AgxBACECDMQBCyABIARGBEBBiQEhAgzEAQsCQAJAAkAgAS0AAEGg0gBqLQAAQQFrDgNGAgABC0HyACECDKwBCyADQQA2AhwgAyABNgIUIANBtBI2AhAgA0EHNgIMQQAhAgzEAQtB6gAhAgyqAQsgASAERwRAIAFBAWohAUHvACECDKoBC0GHASECDMIBCyAEIAEiAEYEQEGGASECDMIBCyAALQAAIgFBL0YEQCAAQQFqIQFB7gAhAgypAQsgAUEJayICQRdLDQEgACEBQQEgAnRBm4CABHENQQwBCyAEIAEiAEYEQEGFASECDMEBCyAALQAAQS9HDQAgAEEBaiEBDAMLQQAhAiADQQA2AhwgAyAANgIUIANB2yA2AhAgA0EHNgIMDL8BCwJAAkACQAJAAkADQCABLQAAQaDOAGotAAAiAEEFRwRAAkACQCAAQQFrDghHBQYHCAAEAQgLQesAIQIMrQELIAFBAWohAUHtACECDKwBCyAEIAFBAWoiAUcNAAtBhAEhAgzDAQsgAUEBagwUCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNHiADQdsANgIcIAMgATYCFCADIAA2AgxBACECDMEBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNHiADQd0ANgIcIAMgATYCFCADIAA2AgxBACECDMABCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNHiADQfoANgIcIAMgATYCFCADIAA2AgxBACECDL8BCyADQQA2AhwgAyABNgIUIANB+Q82AhAgA0EHNgIMQQAhAgy+AQsgASAERgRAQYMBIQIMvgELAkAgAS0AAEGgzgBqLQAAQQFrDgg+BAUGAAgCAwcLIAFBAWohAQtBAyECDKMBCyABQQFqDA0LQQAhAiADQQA2AhwgA0HREjYCECADQQc2AgwgAyABQQFqNgIUDLoBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNFiADQdsANgIcIAMgATYCFCADIAA2AgxBACECDLkBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNFiADQd0ANgIcIAMgATYCFCADIAA2AgxBACECDLgBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNFiADQfoANgIcIAMgATYCFCADIAA2AgxBACECDLcBCyADQQA2AhwgAyABNgIUIANB+Q82AhAgA0EHNgIMQQAhAgy2AQtB7AAhAgycAQsgASAERgRAQYIBIQIMtQELIAFBAWoMAgsgASAERgRAQYEBIQIMtAELIAFBAWoMAQsgASAERg0BIAFBAWoLIQFBBCECDJgBC0GAASECDLABCwNAIAEtAABBoMwAai0AACIAQQJHBEAgAEEBRwRAQekAIQIMmQELDDELIAQgAUEBaiIBRw0AC0H/ACECDK8BCyABIARGBEBB/gAhAgyvAQsCQCABLQAAQQlrDjcvAwYvBAYGBgYGBgYGBgYGBgYGBgYGBgUGBgIGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYABgsgAUEBagshAUEFIQIMlAELIAFBAWoMBgsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQggA0HbADYCHCADIAE2AhQgAyAANgIMQQAhAgyrAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQggA0HdADYCHCADIAE2AhQgAyAANgIMQQAhAgyqAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQggA0H6ADYCHCADIAE2AhQgAyAANgIMQQAhAgypAQsgA0EANgIcIAMgATYCFCADQY0UNgIQIANBBzYCDEEAIQIMqAELAkACQAJAAkADQCABLQAAQaDKAGotAAAiAEEFRwRAAkAgAEEBaw4GLgMEBQYABgtB6AAhAgyUAQsgBCABQQFqIgFHDQALQf0AIQIMqwELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0HIANB2wA2AhwgAyABNgIUIAMgADYCDEEAIQIMqgELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0HIANB3QA2AhwgAyABNgIUIAMgADYCDEEAIQIMqQELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0HIANB+gA2AhwgAyABNgIUIAMgADYCDEEAIQIMqAELIANBADYCHCADIAE2AhQgA0HkCDYCECADQQc2AgxBACECDKcBCyABIARGDQEgAUEBagshAUEGIQIMjAELQfwAIQIMpAELAkACQAJAAkADQCABLQAAQaDIAGotAAAiAEEFRwRAIABBAWsOBCkCAwQFCyAEIAFBAWoiAUcNAAtB+wAhAgynAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQMgA0HbADYCHCADIAE2AhQgAyAANgIMQQAhAgymAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQMgA0HdADYCHCADIAE2AhQgAyAANgIMQQAhAgylAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQMgA0H6ADYCHCADIAE2AhQgAyAANgIMQQAhAgykAQsgA0EANgIcIAMgATYCFCADQbwKNgIQIANBBzYCDEEAIQIMowELQc8AIQIMiQELQdEAIQIMiAELQecAIQIMhwELIAEgBEYEQEH6ACECDKABCwJAIAEtAABBCWsOBCAAACAACyABQQFqIQFB5gAhAgyGAQsgASAERgRAQfkAIQIMnwELAkAgAS0AAEEJaw4EHwAAHwALQQAhAAJAIAMoAjgiAkUNACACKAI4IgJFDQAgAyACEQAAIQALIABFBEBB4gEhAgyGAQsgAEEVRwRAIANBADYCHCADIAE2AhQgA0HJDTYCECADQRo2AgxBACECDJ8BCyADQfgANgIcIAMgATYCFCADQeoaNgIQIANBFTYCDEEAIQIMngELIAEgBEcEQCADQQ02AgggAyABNgIEQeQAIQIMhQELQfcAIQIMnQELIAEgBEYEQEH2ACECDJ0BCwJAAkACQCABLQAAQcgAaw4LAAELCwsLCwsLCwILCyABQQFqIQFB3QAhAgyFAQsgAUEBaiEBQeAAIQIMhAELIAFBAWohAUHjACECDIMBC0H1ACECIAEgBEYNmwEgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBtdUAai0AAEcNCCAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMnAELIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARArIgAEQCADQfQANgIcIAMgATYCFCADIAA2AgxBACECDJwBC0HiACECDIIBC0EAIQACQCADKAI4IgJFDQAgAigCNCICRQ0AIAMgAhEAACEACwJAIAAEQCAAQRVGDQEgA0EANgIcIAMgATYCFCADQeoNNgIQIANBJjYCDEEAIQIMnAELQeEAIQIMggELIANB8wA2AhwgAyABNgIUIANBgBs2AhAgA0EVNgIMQQAhAgyaAQsgAy0AKSIAQSNrQQtJDQkCQCAAQQZLDQBBASAAdEHKAHFFDQAMCgtBACECIANBADYCHCADIAE2AhQgA0HtCTYCECADQQg2AgwMmQELQfIAIQIgASAERg2YASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEGz1QBqLQAARw0FIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyZAQsgAygCBCEAIANCADcDACADIAAgBkEBaiIBECsiAARAIANB8QA2AhwgAyABNgIUIAMgADYCDEEAIQIMmQELQd8AIQIMfwtBACEAAkAgAygCOCICRQ0AIAIoAjQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0HqDTYCECADQSY2AgxBACECDJkBC0HeACECDH8LIANB8AA2AhwgAyABNgIUIANBgBs2AhAgA0EVNgIMQQAhAgyXAQsgAy0AKUEhRg0GIANBADYCHCADIAE2AhQgA0GRCjYCECADQQg2AgxBACECDJYBC0HvACECIAEgBEYNlQEgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBsNUAai0AAEcNAiAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMlgELIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARArIgBFDQIgA0HtADYCHCADIAE2AhQgAyAANgIMQQAhAgyVAQsgA0EANgIACyADKAIEIQAgA0EANgIEIAMgACABECsiAEUNgAEgA0HuADYCHCADIAE2AhQgAyAANgIMQQAhAgyTAQtB3AAhAgx5C0EAIQACQCADKAI4IgJFDQAgAigCNCICRQ0AIAMgAhEAACEACwJAIAAEQCAAQRVGDQEgA0EANgIcIAMgATYCFCADQeoNNgIQIANBJjYCDEEAIQIMkwELQdsAIQIMeQsgA0HsADYCHCADIAE2AhQgA0GAGzYCECADQRU2AgxBACECDJEBCyADLQApIgBBI0kNACAAQS5GDQAgA0EANgIcIAMgATYCFCADQckJNgIQIANBCDYCDEEAIQIMkAELQdoAIQIMdgsgASAERgRAQesAIQIMjwELAkAgAS0AAEEvRgRAIAFBAWohAQwBCyAD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ciBIVFRQL3gueCByZXF1ZXN0AEludmFsaWQgbWV0aG9kIGZvciBSVFNQL3gueCByZXF1ZXN0AEV4cGVjdGVkIFNPVVJDRSBtZXRob2QgZm9yIElDRS94LnggcmVxdWVzdABJbnZhbGlkIGNoYXIgaW4gdXJsIGZyYWdtZW50IHN0YXJ0AEV4cGVjdGVkIGRvdABTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3N0YXR1cwBJbnZhbGlkIHJlc3BvbnNlIHN0YXR1cwBFeHBlY3RlZCBMRiBhZnRlciBoZWFkZXJzAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMAVXNlciBjYWxsYmFjayBlcnJvcgBgb25fcmVzZXRgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19oZWFkZXJgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2JlZ2luYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlYCBjYWxsYmFjayBlcnJvcgBgb25fc3RhdHVzX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdmVyc2lvbl9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3VybF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3Byb3RvY29sX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fcHJvdG9jb2wARW1wdHkgQ29udGVudC1MZW5ndGgASW52YWxpZCBjaGFyYWN0ZXIgaW4gQ29udGVudC1MZW5ndGgAVHJhbnNmZXItRW5jb2RpbmcgY2FuJ3QgYmUgcHJlc2VudCB3aXRoIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgc2l6ZQBFeHBlY3RlZCBMRiBhZnRlciBjaHVuayBzaXplAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBVbmV4cGVjdGVkIHdoaXRlc3BhY2UgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgTEYgYWZ0ZXIgaGVhZGVyIHZhbHVlAEludmFsaWQgYFRyYW5zZmVyLUVuY29kaW5nYCBoZWFkZXIgdmFsdWUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciBjaHVuayBleHRlbnNpb24gdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZSB2YWx1ZQBJbnZhbGlkIHF1b3RlZC1wYWlyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAFBhdXNlZCBieSBvbl9oZWFkZXJzX2NvbXBsZXRlAEludmFsaWQgRU9GIHN0YXRlAG9uX3Jlc2V0IHBhdXNlAG9uX2NodW5rX2hlYWRlciBwYXVzZQBvbl9tZXNzYWdlX2JlZ2luIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZSBwYXVzZQBvbl9zdGF0dXNfY29tcGxldGUgcGF1c2UAb25fdmVyc2lvbl9jb21wbGV0ZSBwYXVzZQBvbl91cmxfY29tcGxldGUgcGF1c2UAb25fcHJvdG9jb2xfY29tcGxldGUgcGF1c2UAb25fY2h1bmtfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX3ZhbHVlX2NvbXBsZXRlIHBhdXNlAG9uX21lc3NhZ2VfY29tcGxldGUgcGF1c2UAb25fbWV0aG9kX2NvbXBsZXRlIHBhdXNlAG9uX2hlYWRlcl9maWVsZF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19leHRlbnNpb25fbmFtZSBwYXVzZQBVbmV4cGVjdGVkIHNwYWNlIGFmdGVyIHN0YXJ0IGxpbmUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciByZXNwb25zZSBsaW5lAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fY2h1bmtfZXh0ZW5zaW9uX25hbWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBuYW1lAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgZXh0ZW5zaW9uIG5hbWUASW52YWxpZCBzdGF0dXMgY29kZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABNaXNzaW5nIGV4cGVjdGVkIENSIGFmdGVyIGNodW5rIGRhdGEARXhwZWN0ZWQgTEYgYWZ0ZXIgY2h1bmsgZGF0YQBVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AARGF0YSBhZnRlciBgQ29ubmVjdGlvbjogY2xvc2VgAFNXSVRDSF9QUk9YWQBVU0VfUFJPWFkATUtBQ1RJVklUWQBVTlBST0NFU1NBQkxFX0VOVElUWQBRVUVSWQBDT1BZAE1PVkVEX1BFUk1BTkVOVExZAFRPT19FQVJMWQBOT1RJRlkARkFJTEVEX0RFUEVOREVOQ1kAQkFEX0dBVEVXQVkAUExBWQBQVVQAQ0hFQ0tPVVQAR0FURVdBWV9USU1FT1VUAFJFUVVFU1RfVElNRU9VVABORVRXT1JLX0NPTk5FQ1RfVElNRU9VVABDT05ORUNUSU9OX1RJTUVPVVQATE9HSU5fVElNRU9VVABORVRXT1JLX1JFQURfVElNRU9VVABQT1NUAE1JU0RJUkVDVEVEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9SRVFVRVNUAENMSUVOVF9DTE9TRURfTE9BRF9CQUxBTkNFRF9SRVFVRVNUAEJBRF9SRVFVRVNUAEhUVFBfUkVRVUVTVF9TRU5UX1RPX0hUVFBTX1BPUlQAUkVQT1JUAElNX0FfVEVBUE9UAFJFU0VUX0NPTlRFTlQATk9fQ09OVEVOVABQQVJUSUFMX0NPTlRFTlQASFBFX0lOVkFMSURfQ09OU1RBTlQASFBFX0NCX1JFU0VUAEdFVABIUEVfU1RSSUNUAENPTkZMSUNUAFRFTVBPUkFSWV9SRURJUkVDVABQRVJNQU5FTlRfUkVESVJFQ1QAQ09OTkVDVABNVUxUSV9TVEFUVVMASFBFX0lOVkFMSURfU1RBVFVTAFRPT19NQU5ZX1JFUVVFU1RTAEVBUkxZX0hJTlRTAFVOQVZBSUxBQkxFX0ZPUl9MRUdBTF9SRUFTT05TAE9QVElPTlMAU1dJVENISU5HX1BST1RPQ09MUwBWQVJJQU5UX0FMU09fTkVHT1RJQVRFUwBNVUxUSVBMRV9DSE9JQ0VTAElOVEVSTkFMX1NFUlZFUl9FUlJPUgBXRUJfU0VSVkVSX1VOS05PV05fRVJST1IAUkFJTEdVTl9FUlJPUgBJREVOVElUWV9QUk9WSURFUl9BVVRIRU5USUNBVElPTl9FUlJPUgBTU0xfQ0VSVElGSUNBVEVfRVJST1IASU5WQUxJRF9YX0ZPUldBUkRFRF9GT1IAU0VUX1BBUkFNRVRFUgBHRVRfUEFSQU1FVEVSAEhQRV9VU0VSAFNFRV9PVEhFUgBIUEVfQ0JfQ0hVTktfSEVBREVSAEV4cGVjdGVkIExGIGFmdGVyIENSAE1LQ0FMRU5EQVIAU0VUVVAAV0VCX1NFUlZFUl9JU19ET1dOAFRFQVJET1dOAEhQRV9DTE9TRURfQ09OTkVDVElPTgBIRVVSSVNUSUNfRVhQSVJBVElPTgBESVNDT05ORUNURURfT1BFUkFUSU9OAE5PTl9BVVRIT1JJVEFUSVZFX0lORk9STUFUSU9OAEhQRV9JTlZBTElEX1ZFUlNJT04ASFBFX0NCX01FU1NBR0VfQkVHSU4AU0lURV9JU19GUk9aRU4ASFBFX0lOVkFMSURfSEVBREVSX1RPS0VOAElOVkFMSURfVE9LRU4ARk9SQklEREVOAEVOSEFOQ0VfWU9VUl9DQUxNAEhQRV9JTlZBTElEX1VSTABCTE9DS0VEX0JZX1BBUkVOVEFMX0NPTlRST0wATUtDT0wAQUNMAEhQRV9JTlRFUk5BTABSRVFVRVNUX0hFQURFUl9GSUVMRFNfVE9PX0xBUkdFX1VOT0ZGSUNJQUwASFBFX09LAFVOTElOSwBVTkxPQ0sAUFJJAFJFVFJZX1dJVEgASFBFX0lOVkFMSURfQ09OVEVOVF9MRU5HVEgASFBFX1VORVhQRUNURURfQ09OVEVOVF9MRU5HVEgARkxVU0gAUFJPUFBBVENIAE0tU0VBUkNIAFVSSV9UT09fTE9ORwBQUk9DRVNTSU5HAE1JU0NFTExBTkVPVVNfUEVSU0lTVEVOVF9XQVJOSU5HAE1JU0NFTExBTkVPVVNfV0FSTklORwBIUEVfSU5WQUxJRF9UUkFOU0ZFUl9FTkNPRElORwBFeHBlY3RlZCBDUkxGAEhQRV9JTlZBTElEX0NIVU5LX1NJWkUATU9WRQBDT05USU5VRQBIUEVfQ0JfU1RBVFVTX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJTX0NPTVBMRVRFAEhQRV9DQl9WRVJTSU9OX0NPTVBMRVRFAEhQRV9DQl9VUkxfQ09NUExFVEUASFBFX0NCX1BST1RPQ09MX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19DT01QTEVURQBIUEVfQ0JfSEVBREVSX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fVkFMVUVfQ09NUExFVEUASFBFX0NCX0NIVU5LX0VYVEVOU0lPTl9OQU1FX0NPTVBMRVRFAEhQRV9DQl9NRVNTQUdFX0NPTVBMRVRFAEhQRV9DQl9NRVRIT0RfQ09NUExFVEUASFBFX0NCX0hFQURFUl9GSUVMRF9DT01QTEVURQBERUxFVEUASFBFX0lOVkFMSURfRU9GX1NUQVRFAElOVkFMSURfU1NMX0NFUlRJRklDQVRFAFBBVVNFAE5PX1JFU1BPTlNFAFVOU1VQUE9SVEVEX01FRElBX1RZUEUAR09ORQBOT1RfQUNDRVBUQUJMRQBTRVJWSUNFX1VOQVZBSUxBQkxFAFJBTkdFX05PVF9TQVRJU0ZJQUJMRQBPUklHSU5fSVNfVU5SRUFDSEFCTEUAUkVTUE9OU0VfSVNfU1RBTEUAUFVSR0UATUVSR0UAUkVRVUVTVF9IRUFERVJfRklFTERTX1RPT19MQVJHRQBSRVFVRVNUX0hFQURFUl9UT09fTEFSR0UAUEFZTE9BRF9UT09fTEFSR0UASU5TVUZGSUNJRU5UX1NUT1JBR0UASFBFX1BBVVNFRF9VUEdSQURFAEhQRV9QQVVTRURfSDJfVVBHUkFERQBTT1VSQ0UAQU5OT1VOQ0UAVFJBQ0UASFBFX1VORVhQRUNURURfU1BBQ0UAREVTQ1JJQkUAVU5TVUJTQ1JJQkUAUkVDT1JEAEhQRV9JTlZBTElEX01FVEhPRABOT1RfRk9VTkQAUFJPUEZJTkQAVU5CSU5EAFJFQklORABVTkFVVEhPUklaRUQATUVUSE9EX05PVF9BTExPV0VEAEhUVFBfVkVSU0lPTl9OT1RfU1VQUE9SVEVEAEFMUkVBRFlfUkVQT1JURUQAQUNDRVBURUQATk9UX0lNUExFTUVOVEVEAExPT1BfREVURUNURUQASFBFX0NSX0VYUEVDVEVEAEhQRV9MRl9FWFBFQ1RFRABDUkVBVEVEAElNX1VTRUQASFBFX1BBVVNFRABUSU1FT1VUX09DQ1VSRUQAUEFZTUVOVF9SRVFVSVJFRABQUkVDT05ESVRJT05fUkVRVUlSRUQAUFJPWFlfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATkVUV09SS19BVVRIRU5USUNBVElPTl9SRVFVSVJFRABMRU5HVEhfUkVRVUlSRUQAU1NMX0NFUlRJRklDQVRFX1JFUVVJUkVEAFVQR1JBREVfUkVRVUlSRUQAUEFHRV9FWFBJUkVEAFBSRUNPTkRJVElPTl9GQUlMRUQARVhQRUNUQVRJT05fRkFJTEVEAFJFVkFMSURBVElPTl9GQUlMRUQAU1NMX0hBTkRTSEFLRV9GQUlMRUQATE9DS0VEAFRSQU5TRk9STUFUSU9OX0FQUExJRUQATk9UX01PRElGSUVEAE5PVF9FWFRFTkRFRABCQU5EV0lEVEhfTElNSVRfRVhDRUVERUQAU0lURV9JU19PVkVSTE9BREVEAEhFQUQARXhwZWN0ZWQgSFRUUC8sIFJUU1AvIG9yIElDRS8A5xUAAK8VAACkEgAAkhoAACYWAACeFAAA2xkAAHkVAAB+EgAA/hQAADYVAAALFgAA2BYAAPMSAABCGAAArBYAABIVAAAUFwAA7xcAAEgUAABxFwAAshoAAGsZAAB+GQAANRQAAIIaAABEFwAA/RYAAB4YAACHFwAAqhkAAJMSAAAHGAAALBcAAMoXAACkFwAA5xUAAOcVAABYFwAAOxgAAKASAAAtHAAAwxEAAEgRAADeEgAAQhMAAKQZAAD9EAAA9xUAAKUVAADvFgAA+BkAAEoWAABWFgAA9RUAAAoaAAAIGgAAARoAAKsVAABCEgAA1xAAAEwRAAAFGQAAVBYAAB4RAADKGQAAyBkAAE4WAAD/GAAAcRQAAPAVAADuFQAAlBkAAPwVAAC/GQAAmxkAAHwUAABDEQAAcBgAAJUUAAAnFAAAGRQAANUSAADUGQAARBYAAPcQAEG5OwsBAQBB0DsL4AEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEDAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBuj0LBAEAAAIAQdE9C14DBAMDAwMDAAADAwADAwADAwMDAwMDAwMDAAUAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAwADAEG6PwsEAQAAAgBB0T8LXgMAAwMDAwMAAAMDAAMDAAMDAwMDAwMDAwMABAAFAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwADAAMAQbDBAAsNbG9zZWVlcC1hbGl2ZQBBycEACwEBAEHgwQAL4AEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBycMACwEBAEHgwwAL5wEBAQEBAQEBAQEBAQECAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAWNodW5rZWQAQfHFAAteAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQBB0McACyFlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AQYDIAAsgcmFuc2Zlci1lbmNvZGluZ3BncmFkZQ0KDQpTTQ0KDQoAQanIAAsFAQIAAQMAQcDIAAtfBAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanKAAsFAQIAAQMAQcDKAAtfBAUFBgUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanMAAsEAQAAAQBBwcwAC14CAgACAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAEGpzgALBQECAAEDAEHAzgALXwQFAAAFBQUFBQUFBQUFBQYFBQUFBQUFBQUFBQUABQAHCAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQAFAAUABQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAAAAFAEGp0AALBQEBAAEBAEHA0AALAQEAQdrQAAtBAgAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAQanSAAsFAQEAAQEAQcDSAAsBAQBBytIACwYCAAAAAAIAQeHSAAs6AwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBBoNQAC50BTk9VTkNFRUNLT1VUTkVDVEVURUNSSUJFTFVTSEVURUFEU0VBUkNIUkdFQ1RJVklUWUxFTkRBUlZFT1RJRllQVElPTlNDSFNFQVlTVEFUQ0hHRVVFUllPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFVFRQQ0VUU1BBRFRQLw==","base64")}})});var oL=R((GiY,IzQ)=>{var WzQ=["GET","HEAD","POST"],Tw0=new Set(WzQ),Sw0=[101,204,205,304],ZzQ=[301,302,303,307,308],kw0=new Set(ZzQ),$zQ=["1","7","9","11","13","15","17","19","20","21","22","23","25","37","42","43","53","69","77","79","87","95","101","102","103","104","109","110","111","113","115","117","119","123","135","137","139","143","161","179","389","427","465","512","513","514","515","526","530","531","532","540","548","554","556","563","587","601","636","989","990","993","995","1719","1720","1723","2049","3659","4045","4190","5060","5061","6000","6566","6665","6666","6667","6668","6669","6679","6697","10080"],_w0=new Set($zQ),UzQ=["no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"],vw0=["",...UzQ],yw0=new Set(UzQ),gw0=["follow","manual","error"],EzQ=["GET","HEAD","OPTIONS","TRACE"],hw0=new Set(EzQ),xw0=["navigate","same-origin","no-cors","cors"],fw0=["omit","same-origin","include"],bw0=["default","no-store","reload","no-cache","force-cache","only-if-cached"],mw0=["content-encoding","content-language","content-location","content-type","content-length"],uw0=["half"],KzQ=["CONNECT","TRACE","TRACK"],dw0=new Set(KzQ),VzQ=["audio","audioworklet","font","image","manifest","paintworklet","script","style","track","video","xslt",""],cw0=new Set(VzQ);IzQ.exports={subresource:VzQ,forbiddenMethods:KzQ,requestBodyHeader:mw0,referrerPolicy:vw0,requestRedirect:gw0,requestMode:xw0,requestCredentials:fw0,requestCache:bw0,redirectStatus:ZzQ,corsSafeListedMethods:WzQ,nullBodyStatus:Sw0,safeMethods:EzQ,badPorts:$zQ,requestDuplex:uw0,subresourceSet:cw0,badPortsSet:_w0,redirectStatusSet:kw0,corsSafeListedMethodsSet:Tw0,safeMethodsSet:hw0,forbiddenMethodsSet:dw0,referrerPolicyTokens:yw0}});var rs=R((FiY,HzQ)=>{var ss=Symbol.for("undici.globalOrigin.1");function lw0(){return globalThis[ss]}function pw0(A){if(A===void 0){Object.defineProperty(globalThis,ss,{value:void 0,writable:!0,enumerable:!1,configurable:!1});return}let Q=new URL(A);if(Q.protocol!=="http:"&&Q.protocol!=="https:")throw TypeError(`Only http & https urls are allowed, received ${Q.protocol}`);Object.defineProperty(globalThis,ss,{value:Q,writable:!0,enumerable:!1,configurable:!1})}HzQ.exports={getGlobalOrigin:lw0,setGlobalOrigin:pw0}});var y8=R((WiY,RzQ)=>{var uT=u("node:assert"),iw0=new TextEncoder,tL=/^[!#$%&'*+\-.^_|~A-Za-z0-9]+$/,nw0=/[\u000A\u000D\u0009\u0020]/,sw0=/[\u0009\u000A\u000C\u000D\u0020]/g,rw0=/^[\u0009\u0020-\u007E\u0080-\u00FF]+$/;function aw0(A){uT(A.protocol==="data:");let Q=LzQ(A,!0);Q=Q.slice(5);let B={position:0},Y=hK(",",Q,B),J=Y.length;if(Y=Bj0(Y,!0,!0),B.position>=Q.length)return"failure";B.position++;let C=Q.slice(J+1),X=qzQ(C);if(/;(\u0020){0,}base64$/i.test(Y)){let F=zzQ(X);if(X=tw0(F),X==="failure")return"failure";Y=Y.slice(0,-6),Y=Y.replace(/(\u0020)+$/,""),Y=Y.slice(0,-1)}if(Y.startsWith(";"))Y="text/plain"+Y;let G=as(Y);if(G==="failure")G=as("text/plain;charset=US-ASCII");return{mimeType:G,body:X}}function LzQ(A,Q=!1){if(!Q)return A.href;let B=A.href,Y=A.hash.length,J=Y===0?B:B.substring(0,B.length-Y);if(!Y&&B.endsWith("#"))return J.slice(0,-1);return J}function dT(A,Q,B){let Y="";while(B.position=48&&A<=57||A>=65&&A<=70||A>=97&&A<=102}function NzQ(A){return A>=48&&A<=57?A-48:(A&223)-55}function ow0(A){let Q=A.length,B=new Uint8Array(Q),Y=0;for(let J=0;J=A.length)return"failure";Q.position++;let Y=hK(";",A,Q);if(Y=mT(Y,!1,!0),Y.length===0||!tL.test(Y))return"failure";let J=B.toLowerCase(),C=Y.toLowerCase(),X={type:J,subtype:C,parameters:new Map,essence:`${J}/${C}`};while(Q.positionnw0.test(W),A,Q);let G=dT((W)=>W!==";"&&W!=="=",A,Q);if(G=G.toLowerCase(),Q.position=A.length)break;let F=null;if(A[Q.position]==='"')F=MzQ(A,Q,!0),hK(";",A,Q);else if(F=hK(";",A,Q),F=mT(F,!1,!0),F.length===0)continue;if(G.length!==0&&tL.test(G)&&(F.length===0||rw0.test(F))&&!X.parameters.has(G))X.parameters.set(G,F)}return X}function tw0(A){A=A.replace(sw0,"");let Q=A.length;if(Q%4===0){if(A.charCodeAt(Q-1)===61){if(--Q,A.charCodeAt(Q-1)===61)--Q}}if(Q%4===1)return"failure";if(/[^+/0-9A-Za-z]/.test(A.length===Q?A:A.substring(0,Q)))return"failure";let B=Buffer.from(A,"base64");return new Uint8Array(B.buffer,B.byteOffset,B.byteLength)}function MzQ(A,Q,B=!1){let Y=Q.position,J="";uT(A[Q.position]==='"'),Q.position++;while(!0){if(J+=dT((X)=>X!=='"'&&X!=="\\",A,Q),Q.position>=A.length)break;let C=A[Q.position];if(Q.position++,C==="\\"){if(Q.position>=A.length){J+="\\";break}J+=A[Q.position],Q.position++}else{uT(C==='"');break}}if(B)return J;return A.slice(Y,Q.position)}function ew0(A){uT(A!=="failure");let{parameters:Q,essence:B}=A,Y=B;for(let[J,C]of Q.entries()){if(Y+=";",Y+=J,Y+="=",!tL.test(C))C=C.replace(/(\\|")/g,"\\$1"),C='"'+C,C+='"';Y+=C}return Y}function Aj0(A){return A===13||A===10||A===9||A===32}function mT(A,Q=!0,B=!0){return os(A,Q,B,Aj0)}function Qj0(A){return A===13||A===10||A===9||A===12||A===32}function Bj0(A,Q=!0,B=!0){return os(A,Q,B,Qj0)}function os(A,Q,B,Y){let J=0,C=A.length-1;if(Q)while(J0&&Y(A.charCodeAt(C)))C--;return J===0&&C===A.length-1?A:A.slice(J,C+1)}function zzQ(A){let Q=A.length;if(65535>Q)return String.fromCharCode.apply(null,A);let B="",Y=0,J=65535;while(YQ)J=Q-Y;B+=String.fromCharCode.apply(null,A.subarray(Y,Y+=J))}return B}function Yj0(A){switch(A.essence){case"application/ecmascript":case"application/javascript":case"application/x-ecmascript":case"application/x-javascript":case"text/ecmascript":case"text/javascript":case"text/javascript1.0":case"text/javascript1.1":case"text/javascript1.2":case"text/javascript1.3":case"text/javascript1.4":case"text/javascript1.5":case"text/jscript":case"text/livescript":case"text/x-ecmascript":case"text/x-javascript":return"text/javascript";case"application/json":case"text/json":return"application/json";case"image/svg+xml":return"image/svg+xml";case"text/xml":case"application/xml":return"application/xml"}if(A.subtype.endsWith("+json"))return"application/json";if(A.subtype.endsWith("+xml"))return"application/xml";return""}RzQ.exports={dataURLProcessor:aw0,URLSerializer:LzQ,collectASequenceOfCodePoints:dT,collectASequenceOfCodePointsFast:hK,stringPercentDecode:qzQ,parseMIMEType:as,collectAnHTTPQuotedString:MzQ,serializeAMimeType:ew0,removeChars:os,removeHTTPWhitespace:mT,minimizeSupportedMimeType:Yj0,HTTP_TOKEN_CODEPOINTS:tL,isomorphicDecode:zzQ}});var $J=R((ZiY,jzQ)=>{var{types:vY,inspect:Jj0}=u("node:util"),{markAsUncloneable:Cj0}=u("node:worker_threads"),wzQ=Function.call.bind(Function.prototype[Symbol.hasInstance]),JA={converters:{},util:{},errors:{},is:{}};JA.errors.exception=function(A){return TypeError(`${A.header}: ${A.message}`)};JA.errors.conversionFailed=function(A){let Q=A.types.length===1?"":" one of",B=`${A.argument} could not be converted to${Q}: ${A.types.join(", ")}.`;return JA.errors.exception({header:A.prefix,message:B})};JA.errors.invalidArgument=function(A){return JA.errors.exception({header:A.prefix,message:`"${A.value}" is an invalid ${A.type}.`})};JA.brandCheck=function(A,Q){if(!wzQ(Q,A)){let B=TypeError("Illegal invocation");throw B.code="ERR_INVALID_THIS",B}};JA.brandCheckMultiple=function(A){let Q=A.map((B)=>JA.util.MakeTypeAssertion(B));return(B)=>{if(Q.every((Y)=>!Y(B))){let Y=TypeError("Illegal invocation");throw Y.code="ERR_INVALID_THIS",Y}}};JA.argumentLengthCheck=function({length:A},Q,B){if(AwzQ(A,Q)};JA.util.Type=function(A){switch(typeof A){case"undefined":return 1;case"boolean":return 2;case"string":return 3;case"symbol":return 4;case"number":return 5;case"bigint":return 6;case"function":case"object":{if(A===null)return 7;return 8}}};JA.util.Types={UNDEFINED:1,BOOLEAN:2,STRING:3,SYMBOL:4,NUMBER:5,BIGINT:6,NULL:7,OBJECT:8};JA.util.TypeValueToString=function(A){switch(JA.util.Type(A)){case 1:return"Undefined";case 2:return"Boolean";case 3:return"String";case 4:return"Symbol";case 5:return"Number";case 6:return"BigInt";case 7:return"Null";case 8:return"Object"}};JA.util.markAsUncloneable=Cj0||(()=>{});JA.util.ConvertToInt=function(A,Q,B,Y){let J,C;if(Q===64)if(J=Math.pow(2,53)-1,B==="unsigned")C=0;else C=Math.pow(-2,53)+1;else if(B==="unsigned")C=0,J=Math.pow(2,Q)-1;else C=Math.pow(-2,Q)-1,J=Math.pow(2,Q-1)-1;let X=Number(A);if(X===0)X=0;if(JA.util.HasFlag(Y,JA.attributes.EnforceRange)){if(Number.isNaN(X)||X===Number.POSITIVE_INFINITY||X===Number.NEGATIVE_INFINITY)throw JA.errors.exception({header:"Integer conversion",message:`Could not convert ${JA.util.Stringify(A)} to an integer.`});if(X=JA.util.IntegerPart(X),XJ)throw JA.errors.exception({header:"Integer conversion",message:`Value must be between ${C}-${J}, got ${X}.`});return X}if(!Number.isNaN(X)&&JA.util.HasFlag(Y,JA.attributes.Clamp)){if(X=Math.min(Math.max(X,C),J),Math.floor(X)%2===0)X=Math.floor(X);else X=Math.ceil(X);return X}if(Number.isNaN(X)||X===0&&Object.is(0,X)||X===Number.POSITIVE_INFINITY||X===Number.NEGATIVE_INFINITY)return 0;if(X=JA.util.IntegerPart(X),X=X%Math.pow(2,Q),B==="signed"&&X>=Math.pow(2,Q)-1)return X-Math.pow(2,Q);return X};JA.util.IntegerPart=function(A){let Q=Math.floor(Math.abs(A));if(A<0)return-1*Q;return Q};JA.util.Stringify=function(A){switch(JA.util.Type(A)){case 4:return`Symbol(${A.description})`;case 8:return Jj0(A);case 3:return`"${A}"`;case 6:return`${A}n`;default:return`${A}`}};JA.util.IsResizableArrayBuffer=function(A){if(vY.isArrayBuffer(A))return A.resizable;if(vY.isSharedArrayBuffer(A))return A.growable;throw JA.errors.exception({header:"IsResizableArrayBuffer",message:`"${JA.util.Stringify(A)}" is not an array buffer.`})};JA.util.HasFlag=function(A,Q){return typeof A==="number"&&(A&Q)===Q};JA.sequenceConverter=function(A){return(Q,B,Y,J)=>{if(JA.util.Type(Q)!==8)throw JA.errors.exception({header:B,message:`${Y} (${JA.util.Stringify(Q)}) is not iterable.`});let C=typeof J==="function"?J():Q?.[Symbol.iterator]?.(),X=[],G=0;if(C===void 0||typeof C.next!=="function")throw JA.errors.exception({header:B,message:`${Y} is not iterable.`});while(!0){let{done:F,value:W}=C.next();if(F)break;X.push(A(W,B,`${Y}[${G++}]`))}return X}};JA.recordConverter=function(A,Q){return(B,Y,J)=>{if(JA.util.Type(B)!==8)throw JA.errors.exception({header:Y,message:`${J} ("${JA.util.TypeValueToString(B)}") is not an Object.`});let C={};if(!vY.isProxy(B)){let G=[...Object.getOwnPropertyNames(B),...Object.getOwnPropertySymbols(B)];for(let F of G){let W=JA.util.Stringify(F),Z=A(F,Y,`Key ${W} in ${J}`),U=Q(B[F],Y,`${J}[${W}]`);C[Z]=U}return C}let X=Reflect.ownKeys(B);for(let G of X)if(Reflect.getOwnPropertyDescriptor(B,G)?.enumerable){let W=A(G,Y,J),Z=Q(B[G],Y,J);C[W]=Z}return C}};JA.interfaceConverter=function(A,Q){return(B,Y,J)=>{if(!A(B))throw JA.errors.exception({header:Y,message:`Expected ${J} ("${JA.util.Stringify(B)}") to be an instance of ${Q}.`});return B}};JA.dictionaryConverter=function(A){return(Q,B,Y)=>{let J={};if(Q!=null&&JA.util.Type(Q)!==8)throw JA.errors.exception({header:B,message:`Expected ${Q} to be one of: Null, Undefined, Object.`});for(let C of A){let{key:X,defaultValue:G,required:F,converter:W}=C;if(F===!0){if(Q==null||!Object.hasOwn(Q,X))throw JA.errors.exception({header:B,message:`Missing required key "${X}".`})}let Z=Q?.[X],U=G!==void 0;if(U&&Z===void 0)Z=G();if(F||U||Z!==void 0){if(Z=W(Z,B,`${Y}.${X}`),C.allowedValues&&!C.allowedValues.includes(Z))throw JA.errors.exception({header:B,message:`${Z} is not an accepted type. Expected one of ${C.allowedValues.join(", ")}.`});J[X]=Z}}return J}};JA.nullableConverter=function(A){return(Q,B,Y)=>{if(Q===null)return Q;return A(Q,B,Y)}};JA.is.USVString=function(A){return typeof A==="string"&&A.isWellFormed()};JA.is.ReadableStream=JA.util.MakeTypeAssertion(ReadableStream);JA.is.Blob=JA.util.MakeTypeAssertion(Blob);JA.is.URLSearchParams=JA.util.MakeTypeAssertion(URLSearchParams);JA.is.File=JA.util.MakeTypeAssertion(File);JA.is.URL=JA.util.MakeTypeAssertion(URL);JA.is.AbortSignal=JA.util.MakeTypeAssertion(AbortSignal);JA.is.MessagePort=JA.util.MakeTypeAssertion(MessagePort);JA.is.BufferSource=function(A){return vY.isArrayBuffer(A)||ArrayBuffer.isView(A)&&vY.isArrayBuffer(A.buffer)};JA.converters.DOMString=function(A,Q,B,Y){if(A===null&&JA.util.HasFlag(Y,JA.attributes.LegacyNullToEmptyString))return"";if(typeof A==="symbol")throw JA.errors.exception({header:Q,message:`${B} is a symbol, which cannot be converted to a DOMString.`});return String(A)};JA.converters.ByteString=function(A,Q,B){if(typeof A==="symbol")throw JA.errors.exception({header:Q,message:`${B} is a symbol, which cannot be converted to a ByteString.`});let Y=String(A);for(let J=0;J255)throw TypeError(`Cannot convert argument to a ByteString because the character at index ${J} has a value of ${Y.charCodeAt(J)} which is greater than 255.`);return Y};JA.converters.USVString=function(A){if(typeof A==="string")return A.toWellFormed();return`${A}`.toWellFormed()};JA.converters.boolean=function(A){return Boolean(A)};JA.converters.any=function(A){return A};JA.converters["long long"]=function(A,Q,B){return JA.util.ConvertToInt(A,64,"signed",0,Q,B)};JA.converters["unsigned long long"]=function(A,Q,B){return JA.util.ConvertToInt(A,64,"unsigned",0,Q,B)};JA.converters["unsigned long"]=function(A,Q,B){return JA.util.ConvertToInt(A,32,"unsigned",0,Q,B)};JA.converters["unsigned short"]=function(A,Q,B,Y){return JA.util.ConvertToInt(A,16,"unsigned",Y,Q,B)};JA.converters.ArrayBuffer=function(A,Q,B,Y){if(JA.util.Type(A)!==8||!vY.isArrayBuffer(A))throw JA.errors.conversionFailed({prefix:Q,argument:`${B} ("${JA.util.Stringify(A)}")`,types:["ArrayBuffer"]});if(!JA.util.HasFlag(Y,JA.attributes.AllowResizable)&&JA.util.IsResizableArrayBuffer(A))throw JA.errors.exception({header:Q,message:`${B} cannot be a resizable ArrayBuffer.`});return A};JA.converters.SharedArrayBuffer=function(A,Q,B,Y){if(JA.util.Type(A)!==8||!vY.isSharedArrayBuffer(A))throw JA.errors.conversionFailed({prefix:Q,argument:`${B} ("${JA.util.Stringify(A)}")`,types:["SharedArrayBuffer"]});if(!JA.util.HasFlag(Y,JA.attributes.AllowResizable)&&JA.util.IsResizableArrayBuffer(A))throw JA.errors.exception({header:Q,message:`${B} cannot be a resizable SharedArrayBuffer.`});return A};JA.converters.TypedArray=function(A,Q,B,Y,J){if(JA.util.Type(A)!==8||!vY.isTypedArray(A)||A.constructor.name!==Q.name)throw JA.errors.conversionFailed({prefix:B,argument:`${Y} ("${JA.util.Stringify(A)}")`,types:[Q.name]});if(!JA.util.HasFlag(J,JA.attributes.AllowShared)&&vY.isSharedArrayBuffer(A.buffer))throw JA.errors.exception({header:B,message:`${Y} cannot be a view on a shared array buffer.`});if(!JA.util.HasFlag(J,JA.attributes.AllowResizable)&&JA.util.IsResizableArrayBuffer(A.buffer))throw JA.errors.exception({header:B,message:`${Y} cannot be a view on a resizable array buffer.`});return A};JA.converters.DataView=function(A,Q,B,Y){if(JA.util.Type(A)!==8||!vY.isDataView(A))throw JA.errors.conversionFailed({prefix:Q,argument:`${B} ("${JA.util.Stringify(A)}")`,types:["DataView"]});if(!JA.util.HasFlag(Y,JA.attributes.AllowShared)&&vY.isSharedArrayBuffer(A.buffer))throw JA.errors.exception({header:Q,message:`${B} cannot be a view on a shared array buffer.`});if(!JA.util.HasFlag(Y,JA.attributes.AllowResizable)&&JA.util.IsResizableArrayBuffer(A.buffer))throw JA.errors.exception({header:Q,message:`${B} cannot be a view on a resizable array buffer.`});return A};JA.converters.ArrayBufferView=function(A,Q,B,Y){if(JA.util.Type(A)!==8||!vY.isArrayBufferView(A))throw JA.errors.conversionFailed({prefix:Q,argument:`${B} ("${JA.util.Stringify(A)}")`,types:["ArrayBufferView"]});if(!JA.util.HasFlag(Y,JA.attributes.AllowShared)&&vY.isSharedArrayBuffer(A.buffer))throw JA.errors.exception({header:Q,message:`${B} cannot be a view on a shared array buffer.`});if(!JA.util.HasFlag(Y,JA.attributes.AllowResizable)&&JA.util.IsResizableArrayBuffer(A.buffer))throw JA.errors.exception({header:Q,message:`${B} cannot be a view on a resizable array buffer.`});return A};JA.converters.BufferSource=function(A,Q,B,Y){if(vY.isArrayBuffer(A))return JA.converters.ArrayBuffer(A,Q,B,Y);if(vY.isArrayBufferView(A))return Y&=~JA.attributes.AllowShared,JA.converters.ArrayBufferView(A,Q,B,Y);if(vY.isSharedArrayBuffer(A))throw JA.errors.exception({header:Q,message:`${B} cannot be a SharedArrayBuffer.`});throw JA.errors.conversionFailed({prefix:Q,argument:`${B} ("${JA.util.Stringify(A)}")`,types:["ArrayBuffer","ArrayBufferView"]})};JA.converters.AllowSharedBufferSource=function(A,Q,B,Y){if(vY.isArrayBuffer(A))return JA.converters.ArrayBuffer(A,Q,B,Y);if(vY.isSharedArrayBuffer(A))return JA.converters.SharedArrayBuffer(A,Q,B,Y);if(vY.isArrayBufferView(A))return Y|=JA.attributes.AllowShared,JA.converters.ArrayBufferView(A,Q,B,Y);throw JA.errors.conversionFailed({prefix:Q,argument:`${B} ("${JA.util.Stringify(A)}")`,types:["ArrayBuffer","SharedArrayBuffer","ArrayBufferView"]})};JA.converters["sequence"]=JA.sequenceConverter(JA.converters.ByteString);JA.converters["sequence>"]=JA.sequenceConverter(JA.converters["sequence"]);JA.converters["record"]=JA.recordConverter(JA.converters.ByteString,JA.converters.ByteString);JA.converters.Blob=JA.interfaceConverter(JA.is.Blob,"Blob");JA.converters.AbortSignal=JA.interfaceConverter(JA.is.AbortSignal,"AbortSignal");JA.converters.EventHandlerNonNull=function(A){if(JA.util.Type(A)!==8)return null;if(typeof A==="function")return A;return()=>{}};JA.attributes={Clamp:1,EnforceRange:2,AllowShared:4,AllowResizable:8,LegacyNullToEmptyString:16};jzQ.exports={webidl:JA}});var I9=R(($iY,czQ)=>{var{Transform:Xj0}=u("node:stream"),OzQ=u("node:zlib"),{redirectStatusSet:Gj0,referrerPolicyTokens:Fj0,badPortsSet:Wj0}=oL(),{getGlobalOrigin:PzQ}=rs(),{collectASequenceOfCodePoints:j$,collectAnHTTPQuotedString:Zj0,removeChars:$j0,parseMIMEType:Uj0}=y8(),{performance:Ej0}=u("node:perf_hooks"),{ReadableStreamFrom:Kj0,isValidHTTPToken:TzQ,normalizedMethodRecordsBase:Vj0}=lQ(),T$=u("node:assert"),{isUint8Array:Ij0}=u("node:util/types"),{webidl:lF}=$J();function SzQ(A){let Q=A.urlList,B=Q.length;return B===0?null:Q[B-1].toString()}function Hj0(A,Q){if(!Gj0.has(A.status))return null;let B=A.headersList.get("location",!0);if(B!==null&&_zQ(B)){if(!kzQ(B))B=Dj0(B);B=new URL(B,SzQ(A))}if(B&&!B.hash)B.hash=Q;return B}function kzQ(A){for(let Q=0;Q126||B<32)return!1}return!0}function Dj0(A){return Buffer.from(A,"binary").toString("utf8")}function P$(A){return A.urlList[A.urlList.length-1]}function Nj0(A){let Q=P$(A);if(fzQ(Q)&&Wj0.has(Q.port))return"blocked";return"allowed"}function Lj0(A){return A instanceof Error||(A?.constructor?.name==="Error"||A?.constructor?.name==="DOMException")}function qj0(A){for(let Q=0;Q=32&&B<=126||B>=128&&B<=255))return!1}return!0}var Mj0=TzQ;function _zQ(A){return(A[0]==="\t"||A[0]===" "||A[A.length-1]==="\t"||A[A.length-1]===" "||A.includes(` -`)||A.includes("\r")||A.includes("\x00"))===!1}function zj0(A){let Q=(A.headersList.get("referrer-policy",!0)??"").split(","),B="";if(Q.length)for(let Y=Q.length;Y!==0;Y--){let J=Q[Y-1].trim();if(Fj0.has(J)){B=J;break}}return B}function Rj0(A,Q){let B=zj0(Q);if(B!=="")A.referrerPolicy=B}function wj0(){return"allowed"}function jj0(){return"success"}function Oj0(){return"success"}function Pj0(A){let Q=null;Q=A.mode,A.headersList.set("sec-fetch-mode",Q,!0)}function Tj0(A){let Q=A.origin;if(Q==="client"||Q===void 0)return;if(A.responseTainting==="cors"||A.mode==="websocket")A.headersList.append("origin",Q,!0);else if(A.method!=="GET"&&A.method!=="HEAD"){switch(A.referrerPolicy){case"no-referrer":Q=null;break;case"no-referrer-when-downgrade":case"strict-origin":case"strict-origin-when-cross-origin":if(A.origin&&es(A.origin)&&!es(P$(A)))Q=null;break;case"same-origin":if(!eL(A,P$(A)))Q=null;break;default:}A.headersList.append("origin",Q,!0)}}function xK(A,Q){return A}function Sj0(A,Q,B){if(!A?.startTime||A.startTime4096)Y=J;switch(Q){case"no-referrer":return"no-referrer";case"origin":if(J!=null)return J;return ts(B,!0);case"unsafe-url":return Y;case"strict-origin":{let C=P$(A);if(O$(Y)&&!O$(C))return"no-referrer";return J}case"strict-origin-when-cross-origin":{let C=P$(A);if(eL(Y,C))return Y;if(O$(Y)&&!O$(C))return"no-referrer";return J}case"same-origin":if(eL(A,Y))return Y;return"no-referrer";case"origin-when-cross-origin":if(eL(A,Y))return Y;return J;case"no-referrer-when-downgrade":{let C=P$(A);if(O$(Y)&&!O$(C))return"no-referrer";return Y}}}function ts(A,Q=!1){if(T$(lF.is.URL(A)),A=new URL(A),xzQ(A))return"no-referrer";if(A.username="",A.password="",A.hash="",Q===!0)A.pathname="",A.search="";return A}var gj0=RegExp.prototype.test.bind(/^127\.(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)\.){2}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)$/),hj0=RegExp.prototype.test.bind(/^(?:(?:0{1,4}:){7}|(?:0{1,4}:){1,6}:|::)0{0,3}1$/);function yzQ(A){if(A.includes(":")){if(A[0]==="["&&A[A.length-1]==="]")A=A.slice(1,-1);return hj0(A)}return gj0(A)}function xj0(A){if(A==null||A==="null")return!1;if(A=new URL(A),A.protocol==="https:"||A.protocol==="wss:")return!0;if(yzQ(A.hostname))return!0;if(A.hostname==="localhost"||A.hostname==="localhost.")return!0;if(A.hostname.endsWith(".localhost")||A.hostname.endsWith(".localhost."))return!0;if(A.protocol==="file:")return!0;return!1}function O$(A){if(!lF.is.URL(A))return!1;if(A.href==="about:blank"||A.href==="about:srcdoc")return!0;if(A.protocol==="data:")return!0;if(A.protocol==="blob:")return!0;return xj0(A.origin)}function fj0(A){}function eL(A,Q){if(A.origin===Q.origin&&A.origin==="null")return!0;if(A.protocol===Q.protocol&&A.hostname===Q.hostname&&A.port===Q.port)return!0;return!1}function bj0(A){return A.controller.state==="aborted"}function mj0(A){return A.controller.state==="aborted"||A.controller.state==="terminated"}function uj0(A){return Vj0[A.toLowerCase()]??A}function dj0(A){let Q=JSON.stringify(A);if(Q===void 0)throw TypeError("Value is not JSON serializable");return T$(typeof Q==="string"),Q}var cj0=Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]()));function gzQ(A,Q,B=0,Y=1){class J{#A;#Q;#B;constructor(C,X){this.#A=C,this.#Q=X,this.#B=0}next(){if(typeof this!=="object"||this===null||!(#A in this))throw TypeError(`'next' called on an object that does not implement interface ${A} Iterator.`);let C=this.#B,X=Q(this.#A),G=X.length;if(C>=G)return{value:void 0,done:!0};let{[B]:F,[Y]:W}=X[C];this.#B=C+1;let Z;switch(this.#Q){case"key":Z=F;break;case"value":Z=W;break;case"key+value":Z=[F,W];break}return{value:Z,done:!1}}}return delete J.prototype.constructor,Object.setPrototypeOf(J.prototype,cj0),Object.defineProperties(J.prototype,{[Symbol.toStringTag]:{writable:!1,enumerable:!1,configurable:!0,value:`${A} Iterator`},next:{writable:!0,enumerable:!0,configurable:!0}}),function(C,X){return new J(C,X)}}function lj0(A,Q,B,Y=0,J=1){let C=gzQ(A,B,Y,J),X={keys:{writable:!0,enumerable:!0,configurable:!0,value:function(){return lF.brandCheck(this,Q),C(this,"key")}},values:{writable:!0,enumerable:!0,configurable:!0,value:function(){return lF.brandCheck(this,Q),C(this,"value")}},entries:{writable:!0,enumerable:!0,configurable:!0,value:function(){return lF.brandCheck(this,Q),C(this,"key+value")}},forEach:{writable:!0,enumerable:!0,configurable:!0,value:function(F,W=globalThis){if(lF.brandCheck(this,Q),lF.argumentLengthCheck(arguments,1,`${A}.forEach`),typeof F!=="function")throw TypeError(`Failed to execute 'forEach' on '${A}': parameter 1 is not of type 'Function'.`);for(let{0:Z,1:U}of C(this,"key+value"))F.call(W,U,Z,this)}}};return Object.defineProperties(Q.prototype,{...X,[Symbol.iterator]:{writable:!0,enumerable:!1,configurable:!0,value:X.entries.value}})}function pj0(A,Q,B){let Y=Q,J=B;try{let C=A.stream.getReader();hzQ(C,Y,J)}catch(C){J(C)}}function ij0(A){try{A.close(),A.byobRequest?.respond(0)}catch(Q){if(!Q.message.includes("Controller is already closed")&&!Q.message.includes("ReadableStream is already closed"))throw Q}}var nj0=/[^\x00-\xFF]/;function cT(A){return T$(!nj0.test(A)),A}async function hzQ(A,Q,B){try{let Y=[],J=0;do{let{done:C,value:X}=await A.read();if(C){Q(Buffer.concat(Y,J));return}if(!Ij0(X)){B(TypeError("Received non-Uint8Array chunk"));return}Y.push(X),J+=X.length}while(!0)}catch(Y){B(Y)}}function xzQ(A){T$("protocol"in A);let Q=A.protocol;return Q==="about:"||Q==="blob:"||Q==="data:"}function es(A){return typeof A==="string"&&A[5]===":"&&A[0]==="h"&&A[1]==="t"&&A[2]==="t"&&A[3]==="p"&&A[4]==="s"||A.protocol==="https:"}function fzQ(A){T$("protocol"in A);let Q=A.protocol;return Q==="http:"||Q==="https:"}function sj0(A,Q){let B=A;if(!B.startsWith("bytes"))return"failure";let Y={position:5};if(Q)j$((F)=>F==="\t"||F===" ",B,Y);if(B.charCodeAt(Y.position)!==61)return"failure";if(Y.position++,Q)j$((F)=>F==="\t"||F===" ",B,Y);let J=j$((F)=>{let W=F.charCodeAt(0);return W>=48&&W<=57},B,Y),C=J.length?Number(J):null;if(Q)j$((F)=>F==="\t"||F===" ",B,Y);if(B.charCodeAt(Y.position)!==45)return"failure";if(Y.position++,Q)j$((F)=>F==="\t"||F===" ",B,Y);let X=j$((F)=>{let W=F.charCodeAt(0);return W>=48&&W<=57},B,Y),G=X.length?Number(X):null;if(Y.positionG)return"failure";return{rangeStartValue:C,rangeEndValue:G}}function rj0(A,Q,B){let Y="bytes ";return Y+=cT(`${A}`),Y+="-",Y+=cT(`${Q}`),Y+="/",Y+=cT(`${B}`),Y}class bzQ extends Xj0{#A;constructor(A){super();this.#A=A}_transform(A,Q,B){if(!this._inflateStream){if(A.length===0){B();return}this._inflateStream=(A[0]&15)===8?OzQ.createInflate(this.#A):OzQ.createInflateRaw(this.#A),this._inflateStream.on("data",this.push.bind(this)),this._inflateStream.on("end",()=>this.push(null)),this._inflateStream.on("error",(Y)=>this.destroy(Y))}this._inflateStream.write(A,Q,B)}_final(A){if(this._inflateStream)this._inflateStream.end(),this._inflateStream=null;A()}}function aj0(A){return new bzQ(A)}function oj0(A){let Q=null,B=null,Y=null,J=mzQ("content-type",A);if(J===null)return"failure";for(let C of J){let X=Uj0(C);if(X==="failure"||X.essence==="*/*")continue;if(Y=X,Y.essence!==B){if(Q=null,Y.parameters.has("charset"))Q=Y.parameters.get("charset");B=Y.essence}else if(!Y.parameters.has("charset")&&Q!==null)Y.parameters.set("charset",Q)}if(Y==null)return"failure";return Y}function tj0(A){let Q=A,B={position:0},Y=[],J="";while(B.positionC!=='"'&&C!==",",Q,B),B.positionC===9||C===32),Y.push(J),J=""}return Y}function mzQ(A,Q){let B=Q.get(A,!0);if(B===null)return null;return tj0(B)}var ej0=new TextDecoder;function AO0(A){if(A.length===0)return"";if(A[0]===239&&A[1]===187&&A[2]===191)A=A.subarray(3);return ej0.decode(A)}class uzQ{get baseUrl(){return PzQ()}get origin(){return this.baseUrl?.origin}policyContainer=vzQ()}class dzQ{settingsObject=new uzQ}var QO0=new dzQ;czQ.exports={isAborted:bj0,isCancelled:mj0,isValidEncodedURL:kzQ,ReadableStreamFrom:Kj0,tryUpgradeRequestToAPotentiallyTrustworthyURL:fj0,clampAndCoarsenConnectionTimingInfo:Sj0,coarsenedSharedCurrentTime:kj0,determineRequestsReferrer:yj0,makePolicyContainer:vzQ,clonePolicyContainer:vj0,appendFetchMetadata:Pj0,appendRequestOriginHeader:Tj0,TAOCheck:Oj0,corsCheck:jj0,crossOriginResourcePolicyCheck:wj0,createOpaqueTimingInfo:_j0,setRequestReferrerPolicyOnRedirect:Rj0,isValidHTTPToken:TzQ,requestBadPort:Nj0,requestCurrentURL:P$,responseURL:SzQ,responseLocationURL:Hj0,isURLPotentiallyTrustworthy:O$,isValidReasonPhrase:qj0,sameOrigin:eL,normalizeMethod:uj0,serializeJavascriptValueToJSONString:dj0,iteratorMixin:lj0,createIterator:gzQ,isValidHeaderName:Mj0,isValidHeaderValue:_zQ,isErrorLike:Lj0,fullyReadBody:pj0,readableStreamClose:ij0,isomorphicEncode:cT,urlIsLocal:xzQ,urlHasHttpsScheme:es,urlIsHttpHttpsScheme:fzQ,readAllBytes:hzQ,simpleRangeHeaderValue:sj0,buildContentRange:rj0,createInflate:aj0,extractMimeType:oj0,getDecodeSplit:mzQ,utf8DecodeBytes:AO0,environmentSettingsObject:QO0,isOriginIPPotentiallyTrustworthy:yzQ}});var lT=R((UiY,pzQ)=>{var{iteratorMixin:BO0}=I9(),{kEnumerableProperty:fK}=lQ(),{webidl:hB}=$J(),lzQ=u("node:util");class r9{#A=[];constructor(A=void 0){if(hB.util.markAsUncloneable(this),A!==void 0)throw hB.errors.conversionFailed({prefix:"FormData constructor",argument:"Argument 1",types:["undefined"]})}append(A,Q,B=void 0){hB.brandCheck(this,r9);let Y="FormData.append";if(hB.argumentLengthCheck(arguments,2,Y),A=hB.converters.USVString(A),arguments.length===3||hB.is.Blob(Q)){if(Q=hB.converters.Blob(Q,Y,"value"),B!==void 0)B=hB.converters.USVString(B)}else Q=hB.converters.USVString(Q);let J=Ar(A,Q,B);this.#A.push(J)}delete(A){hB.brandCheck(this,r9);let Q="FormData.delete";hB.argumentLengthCheck(arguments,1,Q),A=hB.converters.USVString(A),this.#A=this.#A.filter((B)=>B.name!==A)}get(A){hB.brandCheck(this,r9);let Q="FormData.get";hB.argumentLengthCheck(arguments,1,Q),A=hB.converters.USVString(A);let B=this.#A.findIndex((Y)=>Y.name===A);if(B===-1)return null;return this.#A[B].value}getAll(A){hB.brandCheck(this,r9);let Q="FormData.getAll";return hB.argumentLengthCheck(arguments,1,Q),A=hB.converters.USVString(A),this.#A.filter((B)=>B.name===A).map((B)=>B.value)}has(A){hB.brandCheck(this,r9);let Q="FormData.has";return hB.argumentLengthCheck(arguments,1,Q),A=hB.converters.USVString(A),this.#A.findIndex((B)=>B.name===A)!==-1}set(A,Q,B=void 0){hB.brandCheck(this,r9);let Y="FormData.set";if(hB.argumentLengthCheck(arguments,2,Y),A=hB.converters.USVString(A),arguments.length===3||hB.is.Blob(Q)){if(Q=hB.converters.Blob(Q,Y,"value"),B!==void 0)B=hB.converters.USVString(B)}else Q=hB.converters.USVString(Q);let J=Ar(A,Q,B),C=this.#A.findIndex((X)=>X.name===A);if(C!==-1)this.#A=[...this.#A.slice(0,C),J,...this.#A.slice(C+1).filter((X)=>X.name!==A)];else this.#A.push(J)}[lzQ.inspect.custom](A,Q){let B=this.#A.reduce((J,C)=>{if(J[C.name])if(Array.isArray(J[C.name]))J[C.name].push(C.value);else J[C.name]=[J[C.name],C.value];else J[C.name]=C.value;return J},{__proto__:null});Q.depth??=A,Q.colors??=!0;let Y=lzQ.formatWithOptions(Q,B);return`FormData ${Y.slice(Y.indexOf("]")+2)}`}static getFormDataState(A){return A.#A}static setFormDataState(A,Q){A.#A=Q}}var{getFormDataState:YO0,setFormDataState:JO0}=r9;Reflect.deleteProperty(r9,"getFormDataState");Reflect.deleteProperty(r9,"setFormDataState");BO0("FormData",r9,YO0,"name","value");Object.defineProperties(r9.prototype,{append:fK,delete:fK,get:fK,getAll:fK,has:fK,set:fK,[Symbol.toStringTag]:{value:"FormData",configurable:!0}});function Ar(A,Q,B){if(typeof Q==="string");else{if(!hB.is.File(Q))Q=new File([Q],"blob",{type:Q.type});if(B!==void 0){let Y={type:Q.type,lastModified:Q.lastModified};Q=new File([Q],B,Y)}}return{name:A,value:Q}}hB.is.FormData=hB.util.MakeTypeAssertion(r9);pzQ.exports={FormData:r9,makeEntry:Ar,setFormDataState:JO0}});var rzQ=R((EiY,szQ)=>{var{bufferToLowerCasedHeaderName:CO0}=lQ(),{utf8DecodeBytes:XO0}=I9(),{HTTP_TOKEN_CODEPOINTS:GO0,isomorphicDecode:izQ}=y8(),{makeEntry:FO0}=lT(),{webidl:Qr}=$J(),pT=u("node:assert"),WO0=Buffer.from('form-data; name="'),ZO0=Buffer.from("filename"),$O0=Buffer.from("--"),UO0=Buffer.from(`--\r -`);function EO0(A){for(let Q=0;Q70)return!1;for(let B=0;B=48&&Y<=57||Y>=65&&Y<=90||Y>=97&&Y<=122||Y===39||Y===45||Y===95))return!1}return!0}function VO0(A,Q){pT(Q!=="failure"&&Q.essence==="multipart/form-data");let B=Q.parameters.get("boundary");if(B===void 0)throw s5("missing boundary in content-type header");let Y=Buffer.from(`--${B}`,"utf8"),J=[],C={position:0};while(A[C.position]===13&&A[C.position+1]===10)C.position+=2;let X=A.length;while(A[X-1]===10&&A[X-2]===13)X-=2;if(X!==A.length)A=A.subarray(0,X);while(!0){if(A.subarray(C.position,C.position+Y.length).equals(Y))C.position+=Y.length;else throw s5("expected a value starting with -- and the boundary");if(C.position===A.length-2&&iT(A,$O0,C)||C.position===A.length-4&&iT(A,UO0,C))return J;if(A[C.position]!==13||A[C.position+1]!==10)throw s5("expected CRLF");C.position+=2;let G=IO0(A,C),{name:F,filename:W,contentType:Z,encoding:U}=G;C.position+=2;let $;{let K=A.indexOf(Y.subarray(2),C.position);if(K===-1)throw s5("expected boundary after body");if($=A.subarray(C.position,K-4),C.position+=$.length,U==="base64")$=Buffer.from($.toString(),"base64")}if(A[C.position]!==13||A[C.position+1]!==10)throw s5("expected CRLF");else C.position+=2;let E;if(W!==null){if(Z??="text/plain",!EO0(Z))Z="";E=new File([$],W,{type:Z})}else E=XO0(Buffer.from($));pT(Qr.is.USVString(F)),pT(typeof E==="string"&&Qr.is.USVString(E)||Qr.is.File(E)),J.push(FO0(F,E,W))}}function IO0(A,Q){let B=null,Y=null,J=null,C=null;while(!0){if(A[Q.position]===13&&A[Q.position+1]===10){if(B===null)throw s5("header name is null");return{name:B,filename:Y,contentType:J,encoding:C}}let X=R6((G)=>G!==10&&G!==13&&G!==58,A,Q);if(X=Br(X,!0,!0,(G)=>G===9||G===32),!GO0.test(X.toString()))throw s5("header name does not match the field-name token production");if(A[Q.position]!==58)throw s5("expected :");switch(Q.position++,R6((G)=>G===32||G===9,A,Q),CO0(X)){case"content-disposition":{if(B=Y=null,!iT(A,WO0,Q))throw s5('expected form-data; name=" for content-disposition header');if(Q.position+=17,B=nzQ(A,Q),A[Q.position]===59&&A[Q.position+1]===32){let G={position:Q.position+2};if(iT(A,ZO0,G))if(A[G.position+8]===42){G.position+=10,R6((W)=>W===32||W===9,A,G);let F=R6((W)=>W!==32&&W!==13&&W!==10,A,G);if(F[0]!==117&&F[0]!==85||F[1]!==116&&F[1]!==84||F[2]!==102&&F[2]!==70||F[3]!==45||F[4]!==56)throw s5("unknown encoding, expected utf-8''");Y=decodeURIComponent(new TextDecoder().decode(F.subarray(7))),Q.position=G.position}else Q.position+=11,R6((F)=>F===32||F===9,A,Q),Q.position++,Y=nzQ(A,Q)}break}case"content-type":{let G=R6((F)=>F!==10&&F!==13,A,Q);G=Br(G,!1,!0,(F)=>F===9||F===32),J=izQ(G);break}case"content-transfer-encoding":{let G=R6((F)=>F!==10&&F!==13,A,Q);G=Br(G,!1,!0,(F)=>F===9||F===32),C=izQ(G);break}default:R6((G)=>G!==10&&G!==13,A,Q)}if(A[Q.position]!==13&&A[Q.position+1]!==10)throw s5("expected CRLF");else Q.position+=2}}function nzQ(A,Q){pT(A[Q.position-1]===34);let B=R6((Y)=>Y!==10&&Y!==13&&Y!==34,A,Q);if(A[Q.position]!==34)throw s5('expected "');else Q.position++;return B=new TextDecoder().decode(B).replace(/%0A/ig,` -`).replace(/%0D/ig,"\r").replace(/%22/g,'"'),B}function R6(A,Q,B){let Y=B.position;while(Y0&&Y(A[C]))C--;return J===0&&C===A.length-1?A:A.subarray(J,C+1)}function iT(A,Q,B){if(A.length{function HO0(){let A,Q;return{promise:new Promise((Y,J)=>{A=Y,Q=J}),resolve:A,reject:Q}}azQ.exports={createDeferredPromise:HO0}});var mK=R((ViY,Y2Q)=>{var sT=lQ(),{ReadableStreamFrom:DO0,readableStreamClose:NO0,fullyReadBody:LO0,extractMimeType:qO0,utf8DecodeBytes:ezQ}=I9(),{FormData:ozQ,setFormDataState:MO0}=lT(),{webidl:KX}=$J(),Yr=u("node:assert"),{isErrored:A2Q,isDisturbed:zO0}=u("node:stream"),{isArrayBuffer:RO0}=u("node:util/types"),{serializeAMimeType:wO0}=y8(),{multipartFormDataParser:jO0}=rzQ(),{createDeferredPromise:OO0}=Aq(),Jr;try{let A=u("node:crypto");Jr=(Q)=>A.randomInt(0,Q)}catch{Jr=(A)=>Math.floor(Math.random()*A)}var nT=new TextEncoder;function PO0(){}var TO0=new FinalizationRegistry((A)=>{let Q=A.deref();if(Q&&!Q.locked&&!zO0(Q)&&!A2Q(Q))Q.cancel("Response object has been garbage collected").catch(PO0)});function Q2Q(A,Q=!1){let B=null;if(KX.is.ReadableStream(A))B=A;else if(KX.is.Blob(A))B=A.stream();else B=new ReadableStream({pull(F){let W=typeof J==="string"?nT.encode(J):J;if(W.byteLength)F.enqueue(W);queueMicrotask(()=>NO0(F))},start(){},type:"bytes"});Yr(KX.is.ReadableStream(B));let Y=null,J=null,C=null,X=null;if(typeof A==="string")J=A,X="text/plain;charset=UTF-8";else if(KX.is.URLSearchParams(A))J=A.toString(),X="application/x-www-form-urlencoded;charset=UTF-8";else if(KX.is.BufferSource(A))J=RO0(A)?new Uint8Array(A.slice()):new Uint8Array(A.buffer.slice(A.byteOffset,A.byteOffset+A.byteLength));else if(KX.is.FormData(A)){let F=`----formdata-undici-0${`${Jr(100000000000)}`.padStart(11,"0")}`,W=`--${F}\r +>>> no match, partial?`,A,U,Q,$),U===G)return!0}return!1}let K;if(typeof W==="string")K=Z===W,this.debug("string match",W,Z,K);else K=W.test(Z),this.debug("pattern match",W,Z,K);if(!K)return!1}if(C===G&&X===F)return!0;else if(C===G)return B;else if(X===F)return C===G-1&&A[C]==="";else throw Error("wtf?")}braceExpand(){return(0,rA.braceExpand)(this.pattern,this.options)}parse(A){(0,jP.assertValidPattern)(A);let Q=this.options;if(A==="**")return rA.GLOBSTAR;if(A==="")return"";let B,Y=null;if(B=A.match(eN0))Y=Q.dot?QL0:AL0;else if(B=A.match(cN0))Y=(Q.nocase?Q.dot?nN0:iN0:Q.dot?pN0:lN0)(B[1]);else if(B=A.match(BL0))Y=(Q.nocase?Q.dot?JL0:YL0:Q.dot?CL0:XL0)(B);else if(B=A.match(sN0))Y=Q.dot?aN0:rN0;else if(B=A.match(oN0))Y=tN0;let J=xUQ.AST.fromGlob(A,this.options).toMMPattern();if(Y&&typeof J==="object")Reflect.defineProperty(J,"test",{value:Y});return J}makeRe(){if(this.regexp||this.regexp===!1)return this.regexp;let A=this.set;if(!A.length)return this.regexp=!1,this.regexp;let Q=this.options,B=Q.noglobstar?FL0:Q.dot?WL0:ZL0,Y=new Set(Q.nocase?["i"]:[]),J=A.map((G)=>{let F=G.map((W)=>{if(W instanceof RegExp)for(let Z of W.flags.split(""))Y.add(Z);return typeof W==="string"?IL0(W):W===rA.GLOBSTAR?rA.GLOBSTAR:W._src});return F.forEach((W,Z)=>{let U=F[Z+1],$=F[Z-1];if(W!==rA.GLOBSTAR||$===rA.GLOBSTAR)return;if($===void 0)if(U!==void 0&&U!==rA.GLOBSTAR)F[Z+1]="(?:\\/|"+B+"\\/)?"+U;else F[Z]=B;else if(U===void 0)F[Z-1]=$+"(?:\\/|"+B+")?";else if(U!==rA.GLOBSTAR)F[Z-1]=$+"(?:\\/|\\/"+B+"\\/)"+U,F[Z+1]=rA.GLOBSTAR}),F.filter((W)=>W!==rA.GLOBSTAR).join("/")}).join("|"),[C,X]=A.length>1?["(?:",")"]:["",""];if(J="^"+C+J+X+"$",this.negate)J="^(?!"+J+").+$";try{this.regexp=new RegExp(J,[...Y].join(""))}catch(G){this.regexp=!1}return this.regexp}slashSplit(A){if(this.preserveMultipleSlashes)return A.split("/");else if(this.isWindows&&/^\/\/[^\/]+/.test(A))return["",...A.split(/\/+/)];else return A.split(/\/+/)}match(A,Q=this.partial){if(this.debug("match",A,this.pattern),this.comment)return!1;if(this.empty)return A==="";if(A==="/"&&Q)return!0;let B=this.options;if(this.isWindows)A=A.split("\\").join("/");let Y=this.slashSplit(A);this.debug(this.pattern,"split",Y);let J=this.set;this.debug(this.pattern,"set",J);let C=Y[Y.length-1];if(!C)for(let X=Y.length-2;!C&&X>=0;X--)C=Y[X];for(let X=0;X{Object.defineProperty(XEQ,"__esModule",{value:!0});XEQ.SpanNames=XEQ.TokenKind=XEQ.AllowedOperationTypes=void 0;var kL0;(function(A){A.QUERY="query",A.MUTATION="mutation",A.SUBSCRIPTION="subscription"})(kL0=XEQ.AllowedOperationTypes||(XEQ.AllowedOperationTypes={}));var _L0;(function(A){A.SOF="",A.EOF="",A.BANG="!",A.DOLLAR="$",A.AMP="&",A.PAREN_L="(",A.PAREN_R=")",A.SPREAD="...",A.COLON=":",A.EQUALS="=",A.AT="@",A.BRACKET_L="[",A.BRACKET_R="]",A.BRACE_L="{",A.PIPE="|",A.BRACE_R="}",A.NAME="Name",A.INT="Int",A.FLOAT="Float",A.STRING="String",A.BLOCK_STRING="BlockString",A.COMMENT="Comment"})(_L0=XEQ.TokenKind||(XEQ.TokenKind={}));var vL0;(function(A){A.EXECUTE="graphql.execute",A.PARSE="graphql.parse",A.RESOLVE="graphql.resolve",A.VALIDATE="graphql.validate",A.SCHEMA_VALIDATE="graphql.validateSchema",A.SCHEMA_PARSE="graphql.parseSchema"})(vL0=XEQ.SpanNames||(XEQ.SpanNames={}))});var Un=R((GEQ)=>{Object.defineProperty(GEQ,"__esModule",{value:!0});GEQ.AttributeNames=void 0;var yL0;(function(A){A.SOURCE="graphql.source",A.FIELD_NAME="graphql.field.name",A.FIELD_PATH="graphql.field.path",A.FIELD_TYPE="graphql.field.type",A.OPERATION_TYPE="graphql.operation.type",A.OPERATION_NAME="graphql.operation.name",A.VARIABLES="graphql.variables.",A.ERROR_VALIDATION_NAME="graphql.validation.error"})(yL0=GEQ.AttributeNames||(GEQ.AttributeNames={}))});var _P=R((FEQ)=>{Object.defineProperty(FEQ,"__esModule",{value:!0});FEQ.OTEL_GRAPHQL_DATA_SYMBOL=FEQ.OTEL_PATCHED_SYMBOL=void 0;FEQ.OTEL_PATCHED_SYMBOL=Symbol.for("opentelemetry.patched");FEQ.OTEL_GRAPHQL_DATA_SYMBOL=Symbol.for("opentelemetry.graphql_data")});var UEQ=R((ZEQ)=>{Object.defineProperty(ZEQ,"__esModule",{value:!0});ZEQ.OPERATION_NOT_SUPPORTED=void 0;var zmY=_P();ZEQ.OPERATION_NOT_SUPPORTED="Operation$operationName$not supported"});var OEQ=R((REQ)=>{Object.defineProperty(REQ,"__esModule",{value:!0});REQ.wrapFieldResolver=REQ.wrapFields=REQ.getSourceFromLocation=REQ.getOperation=REQ.endSpan=REQ.addSpanSource=REQ.addInputVariableAttributes=REQ.isPromise=void 0;var jK=yA(),LF=Zn(),wK=Un(),$G=_P(),EEQ=Object.values(LF.AllowedOperationTypes),gL0=(A)=>{return typeof(A===null||A===void 0?void 0:A.then)==="function"};REQ.isPromise=gL0;var xL0=(A)=>{return typeof A=="object"&&A!==null};function En(A,Q,B){if(Array.isArray(B))B.forEach((Y,J)=>{En(A,`${Q}.${J}`,Y)});else if(B instanceof Object)Object.entries(B).forEach(([Y,J])=>{En(A,`${Q}.${Y}`,J)});else A.setAttribute(`${wK.AttributeNames.VARIABLES}${String(Q)}`,B)}function fL0(A,Q){Object.entries(Q).forEach(([B,Y])=>{En(A,B,Y)})}REQ.addInputVariableAttributes=fL0;function HEQ(A,Q,B,Y,J){let C=qEQ(Q,B,Y,J);A.setAttribute(wK.AttributeNames.SOURCE,C)}REQ.addSpanSource=HEQ;function bL0(A,Q,B,Y,J){let C=DEQ(B,J),X=!1;if(!C){X=!0;let G=NEQ(B,J);C={parent:G,span:mL0(A,Q,B,Y,J,G.span),error:null},cL0(B,J,C)}return{spanAdded:X,field:C}}function mL0(A,Q,B,Y,J,C){var X,G;let F={[wK.AttributeNames.FIELD_NAME]:Y.fieldName,[wK.AttributeNames.FIELD_PATH]:J.join("."),[wK.AttributeNames.FIELD_TYPE]:Y.returnType.toString()},W=A.startSpan(`${LF.SpanNames.RESOLVE} ${F[wK.AttributeNames.FIELD_PATH]}`,{attributes:F},C?jK.trace.setSpan(jK.context.active(),C):void 0),Z=B[$G.OTEL_GRAPHQL_DATA_SYMBOL].source,U=Y.fieldNodes.find(($)=>$.kind==="Field");if(U)HEQ(W,Z.loc,Q().allowValues,(X=U.loc)===null||X===void 0?void 0:X.start,(G=U.loc)===null||G===void 0?void 0:G.end);return W}function uL0(A,Q){if(Q)A.recordException(Q);A.end()}REQ.endSpan=uL0;function dL0(A,Q){if(!A||!Array.isArray(A.definitions))return;if(Q)return A.definitions.filter((B)=>{var Y;return EEQ.indexOf((Y=B)===null||Y===void 0?void 0:Y.operation)!==-1}).find((B)=>{var Y,J;return Q===((J=(Y=B)===null||Y===void 0?void 0:Y.name)===null||J===void 0?void 0:J.value)});else return A.definitions.find((B)=>{var Y;return EEQ.indexOf((Y=B)===null||Y===void 0?void 0:Y.operation)!==-1})}REQ.getOperation=dL0;function cL0(A,Q,B){return A[$G.OTEL_GRAPHQL_DATA_SYMBOL].fields[Q.join(".")]=B}function DEQ(A,Q){return A[$G.OTEL_GRAPHQL_DATA_SYMBOL].fields[Q.join(".")]}function NEQ(A,Q){for(let B=Q.length-1;B>0;B--){let Y=DEQ(A,Q.slice(0,B));if(Y)return Y}return{span:A[$G.OTEL_GRAPHQL_DATA_SYMBOL].span}}function lL0(A,Q){let B=[],Y=Q;while(Y){let J=Y.key;if(A&&typeof J==="number")J="*";B.push(String(J)),Y=Y.prev}return B.reverse()}function pL0(A){return LEQ(` +`,A)}function KEQ(A){return LEQ(" ",A)}function LEQ(A,Q){let B="";for(let Y=0;YF){W=W.next,Z=W===null||W===void 0?void 0:W.line;continue}let U=W.value||W.kind,$="";if(!Q&&iL0.indexOf(W.kind)>=0)U="*";if(W.kind===LF.TokenKind.STRING)U=`"${U}"`;if(W.kind===LF.TokenKind.EOF)U="";if(W.line>Z)X+=pL0(W.line-Z),Z=W.line,$=KEQ(W.column-1);else if(W.line===((J=W.prev)===null||J===void 0?void 0:J.line))$=KEQ(W.start-(((C=W.prev)===null||C===void 0?void 0:C.end)||0));if(X+=$+U,W)W=W.next}}return X}REQ.getSourceFromLocation=qEQ;function MEQ(A,Q,B){if(!A||typeof A.getFields!=="function"||A[$G.OTEL_PATCHED_SYMBOL])return;let Y=A.getFields();A[$G.OTEL_PATCHED_SYMBOL]=!0,Object.keys(Y).forEach((J)=>{let C=Y[J];if(!C)return;if(C.resolve)C.resolve=zEQ(Q,B,C.resolve);if(C.type){let X=C.type;while(X.ofType)X=X.ofType;MEQ(X,Q,B)}})}REQ.wrapFields=MEQ;var VEQ=(A,Q,B)=>{if(!B)return;A.recordException(Q),A.setStatus({code:jK.SpanStatusCode.ERROR,message:Q.message}),A.end()},IEQ=(A,Q)=>{if(!Q)return;A.end()};function zEQ(A,Q,B,Y=!1){if(J[$G.OTEL_PATCHED_SYMBOL]||typeof B!=="function")return B;function J(C,X,G,F){if(!B)return;let W=Q();if(W.ignoreTrivialResolveSpans&&Y&&(xL0(C)||typeof C==="function")){if(typeof C[F.fieldName]!=="function")return B.call(this,C,X,G,F)}if(!G[$G.OTEL_GRAPHQL_DATA_SYMBOL])return B.call(this,C,X,G,F);let Z=lL0(W.mergeItems,F&&F.path),U=Z.filter((K)=>typeof K==="string").length,$,E=!1;if(W.depth>=0&&W.depth{try{let K=B.call(this,C,X,G,F);if(REQ.isPromise(K))return K.then((I)=>{return IEQ($.span,E),I},(I)=>{throw VEQ($.span,I,E),I});else return IEQ($.span,E),K}catch(K){throw VEQ($.span,K,E),K}})}return J[$G.OTEL_PATCHED_SYMBOL]=!0,J}REQ.wrapFieldResolver=zEQ});var SEQ=R((PEQ)=>{Object.defineProperty(PEQ,"__esModule",{value:!0});PEQ.PACKAGE_NAME=PEQ.PACKAGE_VERSION=void 0;PEQ.PACKAGE_VERSION="0.47.1";PEQ.PACKAGE_NAME="@opentelemetry/instrumentation-graphql"});var gEQ=R((yEQ)=>{Object.defineProperty(yEQ,"__esModule",{value:!0});yEQ.GraphQLInstrumentation=void 0;var UG=yA(),l5=NB(),SL=Zn(),vP=Un(),Kn=_P(),Aq0=UEQ(),kJ=OEQ(),kEQ=SEQ(),_EQ={mergeItems:!1,depth:-1,allowValues:!1,ignoreResolveSpans:!1},yP=[">=14.0.0 <17"];class vEQ extends l5.InstrumentationBase{constructor(A={}){super(kEQ.PACKAGE_NAME,kEQ.PACKAGE_VERSION,Object.assign(Object.assign({},_EQ),A))}setConfig(A={}){super.setConfig(Object.assign(Object.assign({},_EQ),A))}init(){let A=new l5.InstrumentationNodeModuleDefinition("graphql",yP);return A.files.push(this._addPatchingExecute()),A.files.push(this._addPatchingParser()),A.files.push(this._addPatchingValidate()),A}_addPatchingExecute(){return new l5.InstrumentationNodeModuleFile("graphql/execution/execute.js",yP,(A)=>{if((0,l5.isWrapped)(A.execute))this._unwrap(A,"execute");return this._wrap(A,"execute",this._patchExecute(A.defaultFieldResolver)),A},(A)=>{if(A)this._unwrap(A,"execute")})}_addPatchingParser(){return new l5.InstrumentationNodeModuleFile("graphql/language/parser.js",yP,(A)=>{if((0,l5.isWrapped)(A.parse))this._unwrap(A,"parse");return this._wrap(A,"parse",this._patchParse()),A},(A)=>{if(A)this._unwrap(A,"parse")})}_addPatchingValidate(){return new l5.InstrumentationNodeModuleFile("graphql/validation/validate.js",yP,(A)=>{if((0,l5.isWrapped)(A.validate))this._unwrap(A,"validate");return this._wrap(A,"validate",this._patchValidate()),A},(A)=>{if(A)this._unwrap(A,"validate")})}_patchExecute(A){let Q=this;return function(Y){return function(){let C;if(arguments.length>=2){let F=arguments;C=Q._wrapExecuteArgs(F[0],F[1],F[2],F[3],F[4],F[5],F[6],F[7],A)}else{let F=arguments[0];C=Q._wrapExecuteArgs(F.schema,F.document,F.rootValue,F.contextValue,F.variableValues,F.operationName,F.fieldResolver,F.typeResolver,A)}let X=(0,kJ.getOperation)(C.document,C.operationName),G=Q._createExecuteSpan(X,C);return C.contextValue[Kn.OTEL_GRAPHQL_DATA_SYMBOL]={source:C.document?C.document||C.document[Kn.OTEL_GRAPHQL_DATA_SYMBOL]:void 0,span:G,fields:{}},UG.context.with(UG.trace.setSpan(UG.context.active(),G),()=>{return(0,l5.safeExecuteInTheMiddle)(()=>{return Y.apply(this,[C])},(F,W)=>{Q._handleExecutionResult(G,F,W)})})}}}_handleExecutionResult(A,Q,B){let Y=this.getConfig();if(B===void 0||Q){(0,kJ.endSpan)(A,Q);return}if((0,kJ.isPromise)(B))B.then((J)=>{if(typeof Y.responseHook!=="function"){(0,kJ.endSpan)(A);return}this._executeResponseHook(A,J)},(J)=>{(0,kJ.endSpan)(A,J)});else{if(typeof Y.responseHook!=="function"){(0,kJ.endSpan)(A);return}this._executeResponseHook(A,B)}}_executeResponseHook(A,Q){let{responseHook:B}=this.getConfig();if(!B)return;(0,l5.safeExecuteInTheMiddle)(()=>{B(A,Q)},(Y)=>{if(Y)this._diag.error("Error running response hook",Y);(0,kJ.endSpan)(A,void 0)},!0)}_patchParse(){let A=this;return function(B){return function(J,C){return A._parse(this,B,J,C)}}}_patchValidate(){let A=this;return function(B){return function(J,C,X,G,F){return A._validate(this,B,J,C,X,F,G)}}}_parse(A,Q,B,Y){let J=this.getConfig(),C=this.tracer.startSpan(SL.SpanNames.PARSE);return UG.context.with(UG.trace.setSpan(UG.context.active(),C),()=>{return(0,l5.safeExecuteInTheMiddle)(()=>{return Q.call(A,B,Y)},(X,G)=>{if(G){if(!(0,kJ.getOperation)(G))C.updateName(SL.SpanNames.SCHEMA_PARSE);else if(G.loc)(0,kJ.addSpanSource)(C,G.loc,J.allowValues)}(0,kJ.endSpan)(C,X)})})}_validate(A,Q,B,Y,J,C,X){let G=this.tracer.startSpan(SL.SpanNames.VALIDATE,{});return UG.context.with(UG.trace.setSpan(UG.context.active(),G),()=>{return(0,l5.safeExecuteInTheMiddle)(()=>{return Q.call(A,B,Y,J,X,C)},(F,W)=>{if(!Y.loc)G.updateName(SL.SpanNames.SCHEMA_VALIDATE);if(W&&W.length)G.recordException({name:vP.AttributeNames.ERROR_VALIDATION_NAME,message:JSON.stringify(W)});(0,kJ.endSpan)(G,F)})})}_createExecuteSpan(A,Q){var B;let Y=this.getConfig(),J=this.tracer.startSpan(SL.SpanNames.EXECUTE,{});if(A){let{operation:C,name:X}=A;J.setAttribute(vP.AttributeNames.OPERATION_TYPE,C);let G=X===null||X===void 0?void 0:X.value;if(G)J.setAttribute(vP.AttributeNames.OPERATION_NAME,G),J.updateName(`${C} ${G}`);else J.updateName(C)}else{let C=" ";if(Q.operationName)C=` "${Q.operationName}" `;C=Aq0.OPERATION_NOT_SUPPORTED.replace("$operationName$",C),J.setAttribute(vP.AttributeNames.OPERATION_NAME,C)}if((B=Q.document)===null||B===void 0?void 0:B.loc)(0,kJ.addSpanSource)(J,Q.document.loc,Y.allowValues);if(Q.variableValues&&Y.allowValues)(0,kJ.addInputVariableAttributes)(J,Q.variableValues);return J}_wrapExecuteArgs(A,Q,B,Y,J,C,X,G,F){if(!Y)Y={};if(Y[Kn.OTEL_GRAPHQL_DATA_SYMBOL]||this.getConfig().ignoreResolveSpans)return{schema:A,document:Q,rootValue:B,contextValue:Y,variableValues:J,operationName:C,fieldResolver:X,typeResolver:G};let W=X==null,Z=X!==null&&X!==void 0?X:F;if(X=(0,kJ.wrapFieldResolver)(this.tracer,()=>this.getConfig(),Z,W),A)(0,kJ.wrapFields)(A.getQueryType(),this.tracer,()=>this.getConfig()),(0,kJ.wrapFields)(A.getMutationType(),this.tracer,()=>this.getConfig());return{schema:A,document:Q,rootValue:B,contextValue:Y,variableValues:J,operationName:C,fieldResolver:X,typeResolver:G}}}yEQ.GraphQLInstrumentation=vEQ});var fEQ=R((xEQ)=>{Object.defineProperty(xEQ,"__esModule",{value:!0})});var mEQ=R((qF)=>{var Qq0=qF&&qF.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),bEQ=qF&&qF.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))Qq0(Q,A,B)};Object.defineProperty(qF,"__esModule",{value:!0});bEQ(gEQ(),qF);bEQ(fEQ(),qF)});var iEQ=R((lEQ)=>{Object.defineProperty(lEQ,"__esModule",{value:!0});lEQ.PACKAGE_NAME=lEQ.PACKAGE_VERSION=void 0;lEQ.PACKAGE_VERSION="0.7.1";lEQ.PACKAGE_NAME="@opentelemetry/instrumentation-kafkajs"});var rEQ=R((nEQ)=>{Object.defineProperty(nEQ,"__esModule",{value:!0});nEQ.bufferTextMapGetter=void 0;nEQ.bufferTextMapGetter={get(A,Q){var B;if(!A)return;let Y=Object.keys(A);for(let J of Y)if(J===Q||J.toLowerCase()===Q)return(B=A[J])===null||B===void 0?void 0:B.toString();return},keys(A){return A?Object.keys(A):[]}}});var QKQ=R((eEQ)=>{Object.defineProperty(eEQ,"__esModule",{value:!0});eEQ.KafkaJsInstrumentation=void 0;var $J=yA(),MF=uB(),aEQ=iEQ(),oEQ=rEQ(),C1=NB();class tEQ extends C1.InstrumentationBase{constructor(A={}){super(aEQ.PACKAGE_NAME,aEQ.PACKAGE_VERSION,A)}init(){let A=(B)=>{var Y,J;if((0,C1.isWrapped)((Y=B===null||B===void 0?void 0:B.Kafka)===null||Y===void 0?void 0:Y.prototype.producer))this._unwrap(B.Kafka.prototype,"producer");if((0,C1.isWrapped)((J=B===null||B===void 0?void 0:B.Kafka)===null||J===void 0?void 0:J.prototype.consumer))this._unwrap(B.Kafka.prototype,"consumer")};return new C1.InstrumentationNodeModuleDefinition("kafkajs",[">=0.1.0 <3"],(B)=>{var Y,J;return A(B),this._wrap((Y=B===null||B===void 0?void 0:B.Kafka)===null||Y===void 0?void 0:Y.prototype,"producer",this._getProducerPatch()),this._wrap((J=B===null||B===void 0?void 0:B.Kafka)===null||J===void 0?void 0:J.prototype,"consumer",this._getConsumerPatch()),B},A)}_getConsumerPatch(){let A=this;return(Q)=>{return function(...Y){let J=Q.apply(this,Y);if((0,C1.isWrapped)(J.run))A._unwrap(J,"run");return A._wrap(J,"run",A._getConsumerRunPatch()),J}}}_getProducerPatch(){let A=this;return(Q)=>{return function(...Y){let J=Q.apply(this,Y);if((0,C1.isWrapped)(J.sendBatch))A._unwrap(J,"sendBatch");if(A._wrap(J,"sendBatch",A._getProducerSendBatchPatch()),(0,C1.isWrapped)(J.send))A._unwrap(J,"send");return A._wrap(J,"send",A._getProducerSendPatch()),J}}}_getConsumerRunPatch(){let A=this;return(Q)=>{return function(...Y){let J=Y[0];if(J===null||J===void 0?void 0:J.eachMessage){if((0,C1.isWrapped)(J.eachMessage))A._unwrap(J,"eachMessage");A._wrap(J,"eachMessage",A._getConsumerEachMessagePatch())}if(J===null||J===void 0?void 0:J.eachBatch){if((0,C1.isWrapped)(J.eachBatch))A._unwrap(J,"eachBatch");A._wrap(J,"eachBatch",A._getConsumerEachBatchPatch())}return Q.call(this,J)}}}_getConsumerEachMessagePatch(){let A=this;return(Q)=>{return function(...Y){let J=Y[0],C=$J.propagation.extract($J.ROOT_CONTEXT,J.message.headers,oEQ.bufferTextMapGetter),X=A._startConsumerSpan(J.topic,J.message,MF.MESSAGINGOPERATIONVALUES_PROCESS,C),G=$J.context.with($J.trace.setSpan(C,X),()=>{return Q.apply(this,Y)});return A._endSpansOnPromise([X],G)}}}_getConsumerEachBatchPatch(){return(A)=>{let Q=this;return function(...Y){let J=Y[0],C=Q._startConsumerSpan(J.batch.topic,void 0,MF.MESSAGINGOPERATIONVALUES_RECEIVE,$J.ROOT_CONTEXT);return $J.context.with($J.trace.setSpan($J.context.active(),C),()=>{let X=J.batch.messages.map((F)=>{var W;let Z=$J.propagation.extract($J.ROOT_CONTEXT,F.headers,oEQ.bufferTextMapGetter),U=(W=$J.trace.getSpan(Z))===null||W===void 0?void 0:W.spanContext(),$;if(U)$={context:U};return Q._startConsumerSpan(J.batch.topic,F,MF.MESSAGINGOPERATIONVALUES_PROCESS,void 0,$)}),G=A.apply(this,Y);return X.unshift(C),Q._endSpansOnPromise(X,G)})}}}_getProducerSendBatchPatch(){let A=this;return(Q)=>{return function(...Y){let X=(Y[0].topicMessages||[]).map((F)=>F.messages.map((W)=>A._startProducerSpan(F.topic,W))).reduce((F,W)=>F.concat(W),[]),G=Q.apply(this,Y);return A._endSpansOnPromise(X,G)}}}_getProducerSendPatch(){let A=this;return(Q)=>{return function(...Y){let J=Y[0],C=J.messages.map((G)=>{return A._startProducerSpan(J.topic,G)}),X=Q.apply(this,Y);return A._endSpansOnPromise(C,X)}}}_endSpansOnPromise(A,Q){return Promise.resolve(Q).catch((B)=>{let Y;if(typeof B==="string")Y=B;else if(typeof B==="object"&&Object.prototype.hasOwnProperty.call(B,"message"))Y=B.message;throw A.forEach((J)=>J.setStatus({code:$J.SpanStatusCode.ERROR,message:Y})),B}).finally(()=>{A.forEach((B)=>B.end())})}_startConsumerSpan(A,Q,B,Y,J){let C=this.tracer.startSpan(A,{kind:$J.SpanKind.CONSUMER,attributes:{[MF.SEMATTRS_MESSAGING_SYSTEM]:"kafka",[MF.SEMATTRS_MESSAGING_DESTINATION]:A,[MF.SEMATTRS_MESSAGING_OPERATION]:B},links:J?[J]:[]},Y),{consumerHook:X}=this.getConfig();if(X&&Q)(0,C1.safeExecuteInTheMiddle)(()=>X(C,{topic:A,message:Q}),(G)=>{if(G)this._diag.error("consumerHook error",G)},!0);return C}_startProducerSpan(A,Q){var B;let Y=this.tracer.startSpan(A,{kind:$J.SpanKind.PRODUCER,attributes:{[MF.SEMATTRS_MESSAGING_SYSTEM]:"kafka",[MF.SEMATTRS_MESSAGING_DESTINATION]:A}});Q.headers=(B=Q.headers)!==null&&B!==void 0?B:{},$J.propagation.inject($J.trace.setSpan($J.context.active(),Y),Q.headers);let{producerHook:J}=this.getConfig();if(J)(0,C1.safeExecuteInTheMiddle)(()=>J(Y,{topic:A,message:Q}),(C)=>{if(C)this._diag.error("producerHook error",C)},!0);return Y}}eEQ.KafkaJsInstrumentation=tEQ});var YKQ=R((BKQ)=>{Object.defineProperty(BKQ,"__esModule",{value:!0})});var CKQ=R((zF)=>{var Cq0=zF&&zF.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),JKQ=zF&&zF.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))Cq0(Q,A,B)};Object.defineProperty(zF,"__esModule",{value:!0});JKQ(QKQ(),zF);JKQ(YKQ(),zF)});var ZKQ=R((FKQ)=>{Object.defineProperty(FKQ,"__esModule",{value:!0});FKQ.PACKAGE_NAME=FKQ.PACKAGE_VERSION=void 0;FKQ.PACKAGE_VERSION="0.44.1";FKQ.PACKAGE_NAME="@opentelemetry/instrumentation-lru-memoizer"});var HKQ=R((VKQ)=>{Object.defineProperty(VKQ,"__esModule",{value:!0});VKQ.LruMemoizerInstrumentation=void 0;var $KQ=yA(),UKQ=NB(),EKQ=ZKQ();class KKQ extends UKQ.InstrumentationBase{constructor(A={}){super(EKQ.PACKAGE_NAME,EKQ.PACKAGE_VERSION,A)}init(){return[new UKQ.InstrumentationNodeModuleDefinition("lru-memoizer",[">=1.3 <3"],(A)=>{let Q=function(){let B=A.apply(this,arguments);return function(){let Y=[...arguments],J=Y.pop(),C=typeof J==="function"?$KQ.context.bind($KQ.context.active(),J):J;return Y.push(C),B.apply(this,Y)}};return Q.sync=A.sync,Q},void 0)]}}VKQ.LruMemoizerInstrumentation=KKQ});var DKQ=R((D$)=>{var Fq0=D$&&D$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),Wq0=D$&&D$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))Fq0(Q,A,B)};Object.defineProperty(D$,"__esModule",{value:!0});Wq0(HKQ(),D$)});var MKQ=R((qKQ)=>{Object.defineProperty(qKQ,"__esModule",{value:!0});qKQ.MongodbCommandType=void 0;var $q0;(function(A){A.CREATE_INDEXES="createIndexes",A.FIND_AND_MODIFY="findAndModify",A.IS_MASTER="isMaster",A.COUNT="count",A.AGGREGATE="aggregate",A.UNKNOWN="unknown"})($q0=qKQ.MongodbCommandType||(qKQ.MongodbCommandType={}))});var wKQ=R((zKQ)=>{Object.defineProperty(zKQ,"__esModule",{value:!0});zKQ.PACKAGE_NAME=zKQ.PACKAGE_VERSION=void 0;zKQ.PACKAGE_VERSION="0.52.0";zKQ.PACKAGE_NAME="@opentelemetry/instrumentation-mongodb"});var SKQ=R((PKQ)=>{Object.defineProperty(PKQ,"__esModule",{value:!0});PKQ.MongoDBInstrumentation=void 0;var x0=yA(),V0=NB(),EG=uB(),RF=MKQ(),jKQ=wKQ(),OKQ={requireParentSpan:!0};class Nn extends V0.InstrumentationBase{constructor(A={}){super(jKQ.PACKAGE_NAME,jKQ.PACKAGE_VERSION,Object.assign(Object.assign({},OKQ),A))}setConfig(A={}){super.setConfig(Object.assign(Object.assign({},OKQ),A))}_updateMetricInstruments(){this._connectionsUsage=this.meter.createUpDownCounter("db.client.connections.usage",{description:"The number of connections that are currently in state described by the state attribute.",unit:"{connection}"})}init(){let{v3PatchConnection:A,v3UnpatchConnection:Q}=this._getV3ConnectionPatches(),{v4PatchConnect:B,v4UnpatchConnect:Y}=this._getV4ConnectPatches(),{v4PatchConnectionCallback:J,v4PatchConnectionPromise:C,v4UnpatchConnection:X}=this._getV4ConnectionPatches(),{v4PatchConnectionPool:G,v4UnpatchConnectionPool:F}=this._getV4ConnectionPoolPatches(),{v4PatchSessions:W,v4UnpatchSessions:Z}=this._getV4SessionsPatches();return[new V0.InstrumentationNodeModuleDefinition("mongodb",[">=3.3.0 <4"],void 0,void 0,[new V0.InstrumentationNodeModuleFile("mongodb/lib/core/wireprotocol/index.js",[">=3.3.0 <4"],A,Q)]),new V0.InstrumentationNodeModuleDefinition("mongodb",[">=4.0.0 <7"],void 0,void 0,[new V0.InstrumentationNodeModuleFile("mongodb/lib/cmap/connection.js",[">=4.0.0 <6.4"],J,X),new V0.InstrumentationNodeModuleFile("mongodb/lib/cmap/connection.js",[">=6.4.0 <7"],C,X),new V0.InstrumentationNodeModuleFile("mongodb/lib/cmap/connection_pool.js",[">=4.0.0 <6.4"],G,F),new V0.InstrumentationNodeModuleFile("mongodb/lib/cmap/connect.js",[">=4.0.0 <7"],B,Y),new V0.InstrumentationNodeModuleFile("mongodb/lib/sessions.js",[">=4.0.0 <7"],W,Z)])]}_getV3ConnectionPatches(){return{v3PatchConnection:(A)=>{if((0,V0.isWrapped)(A.insert))this._unwrap(A,"insert");if(this._wrap(A,"insert",this._getV3PatchOperation("insert")),(0,V0.isWrapped)(A.remove))this._unwrap(A,"remove");if(this._wrap(A,"remove",this._getV3PatchOperation("remove")),(0,V0.isWrapped)(A.update))this._unwrap(A,"update");if(this._wrap(A,"update",this._getV3PatchOperation("update")),(0,V0.isWrapped)(A.command))this._unwrap(A,"command");if(this._wrap(A,"command",this._getV3PatchCommand()),(0,V0.isWrapped)(A.query))this._unwrap(A,"query");if(this._wrap(A,"query",this._getV3PatchFind()),(0,V0.isWrapped)(A.getMore))this._unwrap(A,"getMore");return this._wrap(A,"getMore",this._getV3PatchCursor()),A},v3UnpatchConnection:(A)=>{if(A===void 0)return;this._unwrap(A,"insert"),this._unwrap(A,"remove"),this._unwrap(A,"update"),this._unwrap(A,"command"),this._unwrap(A,"query"),this._unwrap(A,"getMore")}}}_getV4SessionsPatches(){return{v4PatchSessions:(A)=>{if((0,V0.isWrapped)(A.acquire))this._unwrap(A,"acquire");if(this._wrap(A.ServerSessionPool.prototype,"acquire",this._getV4AcquireCommand()),(0,V0.isWrapped)(A.release))this._unwrap(A,"release");return this._wrap(A.ServerSessionPool.prototype,"release",this._getV4ReleaseCommand()),A},v4UnpatchSessions:(A)=>{if(A===void 0)return;if((0,V0.isWrapped)(A.acquire))this._unwrap(A,"acquire");if((0,V0.isWrapped)(A.release))this._unwrap(A,"release")}}}_getV4AcquireCommand(){let A=this;return(Q)=>{return function(){let Y=this.sessions.length,J=Q.call(this),C=this.sessions.length;if(Y===C)A._connectionsUsage.add(1,{state:"used","pool.name":A._poolName});else if(Y-1===C)A._connectionsUsage.add(-1,{state:"idle","pool.name":A._poolName}),A._connectionsUsage.add(1,{state:"used","pool.name":A._poolName});return J}}}_getV4ReleaseCommand(){let A=this;return(Q)=>{return function(Y){let J=Q.call(this,Y);return A._connectionsUsage.add(-1,{state:"used","pool.name":A._poolName}),A._connectionsUsage.add(1,{state:"idle","pool.name":A._poolName}),J}}}_getV4ConnectionPoolPatches(){return{v4PatchConnectionPool:(A)=>{let Q=A.ConnectionPool.prototype;if((0,V0.isWrapped)(Q.checkOut))this._unwrap(Q,"checkOut");return this._wrap(Q,"checkOut",this._getV4ConnectionPoolCheckOut()),A},v4UnpatchConnectionPool:(A)=>{if(A===void 0)return;this._unwrap(A.ConnectionPool.prototype,"checkOut")}}}_getV4ConnectPatches(){return{v4PatchConnect:(A)=>{if((0,V0.isWrapped)(A.connect))this._unwrap(A,"connect");return this._wrap(A,"connect",this._getV4ConnectCommand()),A},v4UnpatchConnect:(A)=>{if(A===void 0)return;this._unwrap(A,"connect")}}}_getV4ConnectionPoolCheckOut(){return(A)=>{return function(B){let Y=x0.context.bind(x0.context.active(),B);return A.call(this,Y)}}}_getV4ConnectCommand(){let A=this;return(Q)=>{return function(Y,J){if(Q.length===1){let X=Q.call(this,Y);if(X&&typeof X.then==="function")X.then(()=>A.setPoolName(Y),()=>{return});return X}let C=function(X,G){if(X||!G){J(X,G);return}A.setPoolName(Y),J(X,G)};return Q.call(this,Y,C)}}}_getV4ConnectionPatches(){return{v4PatchConnectionCallback:(A)=>{if((0,V0.isWrapped)(A.Connection.prototype.command))this._unwrap(A.Connection.prototype,"command");return this._wrap(A.Connection.prototype,"command",this._getV4PatchCommandCallback()),A},v4PatchConnectionPromise:(A)=>{if((0,V0.isWrapped)(A.Connection.prototype.command))this._unwrap(A.Connection.prototype,"command");return this._wrap(A.Connection.prototype,"command",this._getV4PatchCommandPromise()),A},v4UnpatchConnection:(A)=>{if(A===void 0)return;this._unwrap(A.Connection.prototype,"command")}}}_getV3PatchOperation(A){let Q=this;return(B)=>{return function(J,C,X,G,F){let W=x0.trace.getSpan(x0.context.active()),Z=Q._checkSkipInstrumentation(W),U=typeof G==="function"?G:F;if(Z||typeof U!=="function"||typeof X!=="object")if(typeof G==="function")return B.call(this,J,C,X,G);else return B.call(this,J,C,X,G,F);let $=Q.tracer.startSpan(`mongodb.${A}`,{kind:x0.SpanKind.CLIENT});Q._populateV3Attributes($,C,J,X[0],A);let E=Q._patchEnd($,U);if(typeof G==="function")return B.call(this,J,C,X,E);else return B.call(this,J,C,X,G,E)}}}_getV3PatchCommand(){let A=this;return(Q)=>{return function(Y,J,C,X,G){let F=x0.trace.getSpan(x0.context.active()),W=A._checkSkipInstrumentation(F),Z=typeof X==="function"?X:G;if(W||typeof Z!=="function"||typeof C!=="object")if(typeof X==="function")return Q.call(this,Y,J,C,X);else return Q.call(this,Y,J,C,X,G);let U=Nn._getCommandType(C),$=U===RF.MongodbCommandType.UNKNOWN?"command":U,E=A.tracer.startSpan(`mongodb.${$}`,{kind:x0.SpanKind.CLIENT}),K=U===RF.MongodbCommandType.UNKNOWN?void 0:U;A._populateV3Attributes(E,J,Y,C,K);let I=A._patchEnd(E,Z);if(typeof X==="function")return Q.call(this,Y,J,C,I);else return Q.call(this,Y,J,C,X,I)}}}_getV4PatchCommandCallback(){let A=this;return(Q)=>{return function(Y,J,C,X){let G=x0.trace.getSpan(x0.context.active()),F=A._checkSkipInstrumentation(G),W=X,Z=Object.keys(J)[0];if(typeof J!=="object"||J.ismaster||J.hello)return Q.call(this,Y,J,C,X);let U=void 0;if(!F)U=A.tracer.startSpan(`mongodb.${Z}`,{kind:x0.SpanKind.CLIENT}),A._populateV4Attributes(U,this,Y,J,Z);let $=A._patchEnd(U,W,this.id,Z);return Q.call(this,Y,J,C,$)}}}_getV4PatchCommandPromise(){let A=this;return(Q)=>{return function(...Y){let[J,C]=Y,X=x0.trace.getSpan(x0.context.active()),G=A._checkSkipInstrumentation(X),F=Object.keys(C)[0],W=()=>{return};if(typeof C!=="object"||C.ismaster||C.hello)return Q.apply(this,Y);let Z=void 0;if(!G)Z=A.tracer.startSpan(`mongodb.${F}`,{kind:x0.SpanKind.CLIENT}),A._populateV4Attributes(Z,this,J,C,F);let U=A._patchEnd(Z,W,this.id,F),$=Q.apply(this,Y);return $.then((E)=>U(null,E),(E)=>U(E)),$}}}_getV3PatchFind(){let A=this;return(Q)=>{return function(Y,J,C,X,G,F){let W=x0.trace.getSpan(x0.context.active()),Z=A._checkSkipInstrumentation(W),U=typeof G==="function"?G:F;if(Z||typeof U!=="function"||typeof C!=="object")if(typeof G==="function")return Q.call(this,Y,J,C,X,G);else return Q.call(this,Y,J,C,X,G,F);let $=A.tracer.startSpan("mongodb.find",{kind:x0.SpanKind.CLIENT});A._populateV3Attributes($,J,Y,C,"find");let E=A._patchEnd($,U);if(typeof G==="function")return Q.call(this,Y,J,C,X,E);else return Q.call(this,Y,J,C,X,G,E)}}}_getV3PatchCursor(){let A=this;return(Q)=>{return function(Y,J,C,X,G,F){let W=x0.trace.getSpan(x0.context.active()),Z=A._checkSkipInstrumentation(W),U=typeof G==="function"?G:F;if(Z||typeof U!=="function")if(typeof G==="function")return Q.call(this,Y,J,C,X,G);else return Q.call(this,Y,J,C,X,G,F);let $=A.tracer.startSpan("mongodb.getMore",{kind:x0.SpanKind.CLIENT});A._populateV3Attributes($,J,Y,C.cmd,"getMore");let E=A._patchEnd($,U);if(typeof G==="function")return Q.call(this,Y,J,C,X,E);else return Q.call(this,Y,J,C,X,G,E)}}}static _getCommandType(A){if(A.createIndexes!==void 0)return RF.MongodbCommandType.CREATE_INDEXES;else if(A.findandmodify!==void 0)return RF.MongodbCommandType.FIND_AND_MODIFY;else if(A.ismaster!==void 0)return RF.MongodbCommandType.IS_MASTER;else if(A.count!==void 0)return RF.MongodbCommandType.COUNT;else if(A.aggregate!==void 0)return RF.MongodbCommandType.AGGREGATE;else return RF.MongodbCommandType.UNKNOWN}_populateV4Attributes(A,Q,B,Y,J){let C,X;if(Q){let F=typeof Q.address==="string"?Q.address.split(":"):"";if(F.length===2)C=F[0],X=F[1]}let G;if((Y===null||Y===void 0?void 0:Y.documents)&&Y.documents[0])G=Y.documents[0];else if(Y===null||Y===void 0?void 0:Y.cursors)G=Y.cursors;else G=Y;this._addAllSpanAttributes(A,B.db,B.collection,C,X,G,J)}_populateV3Attributes(A,Q,B,Y,J){var C,X,G,F,W,Z,U,$;let E,K;if(B&&B.s){if(E=(X=(C=B.s.options)===null||C===void 0?void 0:C.host)!==null&&X!==void 0?X:B.s.host,K=(W=(F=(G=B.s.options)===null||G===void 0?void 0:G.port)!==null&&F!==void 0?F:B.s.port)===null||W===void 0?void 0:W.toString(),E==null||K==null){let D=(Z=B.description)===null||Z===void 0?void 0:Z.address;if(D){let L=D.split(":");E=L[0],K=L[1]}}}let[I,V]=Q.toString().split("."),H=($=(U=Y===null||Y===void 0?void 0:Y.query)!==null&&U!==void 0?U:Y===null||Y===void 0?void 0:Y.q)!==null&&$!==void 0?$:Y;this._addAllSpanAttributes(A,I,V,E,K,H,J)}_addAllSpanAttributes(A,Q,B,Y,J,C,X){if(A.setAttributes({[EG.SEMATTRS_DB_SYSTEM]:EG.DBSYSTEMVALUES_MONGODB,[EG.SEMATTRS_DB_NAME]:Q,[EG.SEMATTRS_DB_MONGODB_COLLECTION]:B,[EG.SEMATTRS_DB_OPERATION]:X,[EG.SEMATTRS_DB_CONNECTION_STRING]:`mongodb://${Y}:${J}/${Q}`}),Y&&J){A.setAttribute(EG.SEMATTRS_NET_PEER_NAME,Y);let W=parseInt(J,10);if(!isNaN(W))A.setAttribute(EG.SEMATTRS_NET_PEER_PORT,W)}if(!C)return;let{dbStatementSerializer:G}=this.getConfig(),F=typeof G==="function"?G:this._defaultDbStatementSerializer.bind(this);(0,V0.safeExecuteInTheMiddle)(()=>{let W=F(C);A.setAttribute(EG.SEMATTRS_DB_STATEMENT,W)},(W)=>{if(W)this._diag.error("Error running dbStatementSerializer hook",W)},!0)}_defaultDbStatementSerializer(A){let{enhancedDatabaseReporting:Q}=this.getConfig(),B=Q?A:this._scrubStatement(A);return JSON.stringify(B)}_scrubStatement(A){if(Array.isArray(A))return A.map((Q)=>this._scrubStatement(Q));if(typeof A==="object"&&A!==null)return Object.fromEntries(Object.entries(A).map(([Q,B])=>[Q,this._scrubStatement(B)]));return"?"}_handleExecutionResult(A,Q){let{responseHook:B}=this.getConfig();if(typeof B==="function")(0,V0.safeExecuteInTheMiddle)(()=>{B(A,{data:Q})},(Y)=>{if(Y)this._diag.error("Error running response hook",Y)},!0)}_patchEnd(A,Q,B,Y){let J=x0.context.active(),C=this;return function(...G){let F=G[0];if(A){if(F instanceof Error)A===null||A===void 0||A.setStatus({code:x0.SpanStatusCode.ERROR,message:F.message});else{let W=G[1];C._handleExecutionResult(A,W)}A.end()}return x0.context.with(J,()=>{if(Y==="endSessions")C._connectionsUsage.add(-1,{state:"idle","pool.name":C._poolName});return Q.apply(this,G)})}}setPoolName(A){var Q,B;let Y=(Q=A.hostAddress)===null||Q===void 0?void 0:Q.host,J=(B=A.hostAddress)===null||B===void 0?void 0:B.port,C=A.dbName,X=`mongodb://${Y}:${J}/${C}`;this._poolName=X}_checkSkipInstrumentation(A){return this.getConfig().requireParentSpan===!0&&A===void 0}}PKQ.MongoDBInstrumentation=Nn});var _KQ=R((kKQ)=>{Object.defineProperty(kKQ,"__esModule",{value:!0});kKQ.MongodbCommandType=void 0;var Eq0;(function(A){A.CREATE_INDEXES="createIndexes",A.FIND_AND_MODIFY="findAndModify",A.IS_MASTER="isMaster",A.COUNT="count",A.UNKNOWN="unknown"})(Eq0=kKQ.MongodbCommandType||(kKQ.MongodbCommandType={}))});var yKQ=R((wF)=>{var Kq0=wF&&wF.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),vKQ=wF&&wF.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))Kq0(Q,A,B)};Object.defineProperty(wF,"__esModule",{value:!0});vKQ(SKQ(),wF);vKQ(_KQ(),wF)});var uKQ=R((bKQ)=>{Object.defineProperty(bKQ,"__esModule",{value:!0});bKQ.handleCallbackResponse=bKQ.handlePromiseResponse=bKQ.getAttributesFromCollection=void 0;var xKQ=yA(),Lq0=NB(),kL=uB();function qq0(A){return{[kL.SEMATTRS_DB_MONGODB_COLLECTION]:A.name,[kL.SEMATTRS_DB_NAME]:A.conn.name,[kL.SEMATTRS_DB_USER]:A.conn.user,[kL.SEMATTRS_NET_PEER_NAME]:A.conn.host,[kL.SEMATTRS_NET_PEER_PORT]:A.conn.port}}bKQ.getAttributesFromCollection=qq0;function fKQ(A,Q={}){A.recordException(Q),A.setStatus({code:xKQ.SpanStatusCode.ERROR,message:`${Q.message} ${Q.code?` +Mongoose Error Code: ${Q.code}`:""}`})}function zn(A,Q,B,Y=void 0){if(!B)return;(0,Lq0.safeExecuteInTheMiddle)(()=>B(A,{moduleVersion:Y,response:Q}),(J)=>{if(J)xKQ.diag.error("mongoose instrumentation: responseHook error",J)},!0)}function Mq0(A,Q,B,Y=void 0){if(!(A instanceof Promise))return zn(Q,A,B,Y),Q.end(),A;return A.then((J)=>{return zn(Q,J,B,Y),J}).catch((J)=>{throw fKQ(Q,J),J}).finally(()=>Q.end())}bKQ.handlePromiseResponse=Mq0;function zq0(A,Q,B,Y,J,C,X=void 0){let G=0;if(J.length===2)G=1;return J[G]=(F,W)=>{return F?fKQ(Y,F):zn(Y,W,C,X),Y.end(),A(F,W)},Q.apply(B,J)}bKQ.handleCallbackResponse=zq0});var lKQ=R((dKQ)=>{Object.defineProperty(dKQ,"__esModule",{value:!0});dKQ.PACKAGE_NAME=dKQ.PACKAGE_VERSION=void 0;dKQ.PACKAGE_VERSION="0.46.1";dKQ.PACKAGE_NAME="@opentelemetry/instrumentation-mongoose"});var tKQ=R((aKQ)=>{Object.defineProperty(aKQ,"__esModule",{value:!0});aKQ.MongooseInstrumentation=aKQ._STORED_PARENT_SPAN=void 0;var K9=yA(),Oq0=MB(),Rn=uKQ(),pKQ=NB(),iKQ=lKQ(),_L=uB(),bP=["deleteOne","deleteMany","find","findOne","estimatedDocumentCount","countDocuments","distinct","where","$where","findOneAndUpdate","findOneAndDelete","findOneAndReplace"],Pq0=["remove","count","findOneAndRemove",...bP],Tq0=["count","findOneAndRemove",...bP],Sq0=[...bP];function nKQ(A){if(!A)return bP;else if(A.startsWith("6.")||A.startsWith("5."))return Pq0;else if(A.startsWith("7."))return Tq0;else return Sq0}function sKQ(A){return A&&(A.startsWith("5.")||A.startsWith("6."))||!1}aKQ._STORED_PARENT_SPAN=Symbol("stored-parent-span");class rKQ extends pKQ.InstrumentationBase{constructor(A={}){super(iKQ.PACKAGE_NAME,iKQ.PACKAGE_VERSION,A)}init(){return new pKQ.InstrumentationNodeModuleDefinition("mongoose",[">=5.9.7 <9"],this.patch.bind(this),this.unpatch.bind(this))}patch(A,Q){if(this._wrap(A.Model.prototype,"save",this.patchOnModelMethods("save",Q)),A.Model.prototype.$save=A.Model.prototype.save,sKQ(Q))this._wrap(A.Model.prototype,"remove",this.patchOnModelMethods("remove",Q));return this._wrap(A.Query.prototype,"exec",this.patchQueryExec(Q)),this._wrap(A.Aggregate.prototype,"exec",this.patchAggregateExec(Q)),nKQ(Q).forEach((Y)=>{this._wrap(A.Query.prototype,Y,this.patchAndCaptureSpanContext(Y))}),this._wrap(A.Model,"aggregate",this.patchModelAggregate()),A}unpatch(A,Q){let B=nKQ(Q);if(this._unwrap(A.Model.prototype,"save"),A.Model.prototype.$save=A.Model.prototype.save,sKQ(Q))this._unwrap(A.Model.prototype,"remove");this._unwrap(A.Query.prototype,"exec"),this._unwrap(A.Aggregate.prototype,"exec"),B.forEach((Y)=>{this._unwrap(A.Query.prototype,Y)}),this._unwrap(A.Model,"aggregate")}patchAggregateExec(A){let Q=this;return(B)=>{return function(J){var C;if(Q.getConfig().requireParentSpan&&K9.trace.getSpan(K9.context.active())===void 0)return B.apply(this,arguments);let X=this[aKQ._STORED_PARENT_SPAN],G={},{dbStatementSerializer:F}=Q.getConfig();if(F)G[_L.SEMATTRS_DB_STATEMENT]=F("aggregate",{options:this.options,aggregatePipeline:this._pipeline});let W=Q._startSpan(this._model.collection,(C=this._model)===null||C===void 0?void 0:C.modelName,"aggregate",G,X);return Q._handleResponse(W,B,this,arguments,J,A)}}}patchQueryExec(A){let Q=this;return(B)=>{return function(J){if(Q.getConfig().requireParentSpan&&K9.trace.getSpan(K9.context.active())===void 0)return B.apply(this,arguments);let C=this[aKQ._STORED_PARENT_SPAN],X={},{dbStatementSerializer:G}=Q.getConfig();if(G)X[_L.SEMATTRS_DB_STATEMENT]=G(this.op,{condition:this._conditions,updates:this._update,options:this.options,fields:this._fields});let F=Q._startSpan(this.mongooseCollection,this.model.modelName,this.op,X,C);return Q._handleResponse(F,B,this,arguments,J,A)}}}patchOnModelMethods(A,Q){let B=this;return(Y)=>{return function(C,X){if(B.getConfig().requireParentSpan&&K9.trace.getSpan(K9.context.active())===void 0)return Y.apply(this,arguments);let G={document:this};if(C&&!(C instanceof Function))G.options=C;let F={},{dbStatementSerializer:W}=B.getConfig();if(W)F[_L.SEMATTRS_DB_STATEMENT]=W(A,G);let Z=B._startSpan(this.constructor.collection,this.constructor.modelName,A,F);if(C instanceof Function)X=C,C=void 0;return B._handleResponse(Z,Y,this,arguments,X,Q)}}}patchModelAggregate(){let A=this;return(Q)=>{return function(){let Y=K9.trace.getSpan(K9.context.active()),J=A._callOriginalFunction(()=>Q.apply(this,arguments));if(J)J[aKQ._STORED_PARENT_SPAN]=Y;return J}}}patchAndCaptureSpanContext(A){let Q=this;return(B)=>{return function(){return this[aKQ._STORED_PARENT_SPAN]=K9.trace.getSpan(K9.context.active()),Q._callOriginalFunction(()=>B.apply(this,arguments))}}}_startSpan(A,Q,B,Y,J){return this.tracer.startSpan(`mongoose.${Q}.${B}`,{kind:K9.SpanKind.CLIENT,attributes:Object.assign(Object.assign(Object.assign({},Y),(0,Rn.getAttributesFromCollection)(A)),{[_L.SEMATTRS_DB_OPERATION]:B,[_L.SEMATTRS_DB_SYSTEM]:"mongoose"})},J?K9.trace.setSpan(K9.context.active(),J):void 0)}_handleResponse(A,Q,B,Y,J,C=void 0){let X=this;if(J instanceof Function)return X._callOriginalFunction(()=>(0,Rn.handleCallbackResponse)(J,Q,B,A,Y,X.getConfig().responseHook,C));else{let G=X._callOriginalFunction(()=>Q.apply(B,Y));return(0,Rn.handlePromiseResponse)(G,A,X.getConfig().responseHook,C)}}_callOriginalFunction(A){if(this.getConfig().suppressInternalInstrumentation)return K9.context.with((0,Oq0.suppressTracing)(K9.context.active()),A);else return A()}}aKQ.MongooseInstrumentation=rKQ});var AVQ=R((eKQ)=>{Object.defineProperty(eKQ,"__esModule",{value:!0})});var BVQ=R((jF)=>{var kq0=jF&&jF.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),QVQ=jF&&jF.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))kq0(Q,A,B)};Object.defineProperty(jF,"__esModule",{value:!0});QVQ(tKQ(),jF);QVQ(AVQ(),jF)});var XVQ=R((CVQ)=>{Object.defineProperty(CVQ,"__esModule",{value:!0});CVQ.AttributeNames=void 0;var vq0;(function(A){A.MYSQL_VALUES="db.mysql.values"})(vq0=CVQ.AttributeNames||(CVQ.AttributeNames={}))});var ZVQ=R((FVQ)=>{Object.defineProperty(FVQ,"__esModule",{value:!0});FVQ.getPoolName=FVQ.arrayStringifyHelper=FVQ.getSpanName=FVQ.getDbValues=FVQ.getDbStatement=FVQ.getConnectionAttributes=void 0;var KG=uB();function yq0(A){let{host:Q,port:B,database:Y,user:J}=hq0(A),C=parseInt(B,10);if(!isNaN(C))return{[KG.SEMATTRS_NET_PEER_NAME]:Q,[KG.SEMATTRS_NET_PEER_PORT]:C,[KG.SEMATTRS_DB_CONNECTION_STRING]:GVQ(Q,B,Y),[KG.SEMATTRS_DB_NAME]:Y,[KG.SEMATTRS_DB_USER]:J};return{[KG.SEMATTRS_NET_PEER_NAME]:Q,[KG.SEMATTRS_DB_CONNECTION_STRING]:GVQ(Q,B,Y),[KG.SEMATTRS_DB_NAME]:Y,[KG.SEMATTRS_DB_USER]:J}}FVQ.getConnectionAttributes=yq0;function hq0(A){let{host:Q,port:B,database:Y,user:J}=A&&A.connectionConfig||A||{};return{host:Q,port:B,database:Y,user:J}}function GVQ(A,Q,B){let Y=`jdbc:mysql://${A||"localhost"}`;if(typeof Q==="number")Y+=`:${Q}`;if(typeof B==="string")Y+=`/${B}`;return Y}function gq0(A){if(typeof A==="string")return A;else return A.sql}FVQ.getDbStatement=gq0;function xq0(A,Q){if(typeof A==="string")return On(Q);else return On(Q||A.values)}FVQ.getDbValues=xq0;function fq0(A){let Q=typeof A==="object"?A.sql:A,B=Q===null||Q===void 0?void 0:Q.indexOf(" ");if(typeof B==="number"&&B!==-1)return Q===null||Q===void 0?void 0:Q.substring(0,B);return Q}FVQ.getSpanName=fq0;function On(A){if(A)return`[${A.toString()}]`;return""}FVQ.arrayStringifyHelper=On;function bq0(A){let Q=A.config.connectionConfig,B="";if(B+=Q.host?`host: '${Q.host}', `:"",B+=Q.port?`port: ${Q.port}, `:"",B+=Q.database?`database: '${Q.database}', `:"",B+=Q.user?`user: '${Q.user}'`:"",!Q.user)B=B.substring(0,B.length-2);return B.trim()}FVQ.getPoolName=bq0});var EVQ=R(($VQ)=>{Object.defineProperty($VQ,"__esModule",{value:!0});$VQ.PACKAGE_NAME=$VQ.PACKAGE_VERSION=void 0;$VQ.PACKAGE_VERSION="0.45.1";$VQ.PACKAGE_NAME="@opentelemetry/instrumentation-mysql"});var HVQ=R((VVQ)=>{Object.defineProperty(VVQ,"__esModule",{value:!0});VVQ.MySQLInstrumentation=void 0;var i9=yA(),OK=NB(),Pn=uB(),iq0=XVQ(),PK=ZVQ(),KVQ=EVQ();class uP extends OK.InstrumentationBase{constructor(A={}){super(KVQ.PACKAGE_NAME,KVQ.PACKAGE_VERSION,A);this._setMetricInstruments()}setMeterProvider(A){super.setMeterProvider(A),this._setMetricInstruments()}_setMetricInstruments(){this._connectionsUsage=this.meter.createUpDownCounter("db.client.connections.usage",{description:"The number of connections that are currently in state described by the state attribute.",unit:"{connection}"})}init(){return[new OK.InstrumentationNodeModuleDefinition("mysql",[">=2.0.0 <3"],(A)=>{if((0,OK.isWrapped)(A.createConnection))this._unwrap(A,"createConnection");if(this._wrap(A,"createConnection",this._patchCreateConnection()),(0,OK.isWrapped)(A.createPool))this._unwrap(A,"createPool");if(this._wrap(A,"createPool",this._patchCreatePool()),(0,OK.isWrapped)(A.createPoolCluster))this._unwrap(A,"createPoolCluster");return this._wrap(A,"createPoolCluster",this._patchCreatePoolCluster()),A},(A)=>{if(A===void 0)return;this._unwrap(A,"createConnection"),this._unwrap(A,"createPool"),this._unwrap(A,"createPoolCluster")})]}_patchCreateConnection(){return(A)=>{let Q=this;return function(Y){let J=A(...arguments);return Q._wrap(J,"query",Q._patchQuery(J)),J}}}_patchCreatePool(){return(A)=>{let Q=this;return function(Y){let J=A(...arguments);return Q._wrap(J,"query",Q._patchQuery(J)),Q._wrap(J,"getConnection",Q._patchGetConnection(J)),Q._wrap(J,"end",Q._patchPoolEnd(J)),Q._setPoolcallbacks(J,Q,""),J}}}_patchPoolEnd(A){return(Q)=>{let B=this;return function(J){let C=A._allConnections.length,X=A._freeConnections.length,G=C-X,F=(0,PK.getPoolName)(A);B._connectionsUsage.add(-G,{state:"used",name:F}),B._connectionsUsage.add(-X,{state:"idle",name:F}),Q.apply(A,arguments)}}}_patchCreatePoolCluster(){return(A)=>{let Q=this;return function(Y){let J=A(...arguments);return Q._wrap(J,"getConnection",Q._patchGetConnection(J)),Q._wrap(J,"add",Q._patchAdd(J)),J}}}_patchAdd(A){return(Q)=>{let B=this;return function(J,C){if(!B._enabled)return B._unwrap(A,"add"),Q.apply(A,arguments);Q.apply(A,arguments);let X=A._nodes;if(X){let G=typeof J==="object"?"CLUSTER::"+A._lastId:String(J),F=X[G].pool;B._setPoolcallbacks(F,B,J)}}}}_patchGetConnection(A){return(Q)=>{let B=this;return function(J,C,X){if(!B._enabled)return B._unwrap(A,"getConnection"),Q.apply(A,arguments);if(arguments.length===1&&typeof J==="function"){let G=B._getConnectionCallbackPatchFn(J);return Q.call(A,G)}if(arguments.length===2&&typeof C==="function"){let G=B._getConnectionCallbackPatchFn(C);return Q.call(A,J,G)}if(arguments.length===3&&typeof X==="function"){let G=B._getConnectionCallbackPatchFn(X);return Q.call(A,J,C,G)}return Q.apply(A,arguments)}}}_getConnectionCallbackPatchFn(A){let Q=this,B=i9.context.active();return function(Y,J){if(J){if(!(0,OK.isWrapped)(J.query))Q._wrap(J,"query",Q._patchQuery(J))}if(typeof A==="function")i9.context.with(B,A,this,Y,J)}}_patchQuery(A){return(Q)=>{let B=this;return function(Y,J,C){if(!B._enabled)return B._unwrap(A,"query"),Q.apply(A,arguments);let X=B.tracer.startSpan((0,PK.getSpanName)(Y),{kind:i9.SpanKind.CLIENT,attributes:Object.assign(Object.assign({},uP.COMMON_ATTRIBUTES),(0,PK.getConnectionAttributes)(A.config))});if(X.setAttribute(Pn.SEMATTRS_DB_STATEMENT,(0,PK.getDbStatement)(Y)),B.getConfig().enhancedDatabaseReporting){let W;if(Array.isArray(J))W=J;else if(arguments[2])W=[J];X.setAttribute(iq0.AttributeNames.MYSQL_VALUES,(0,PK.getDbValues)(Y,W))}let G=Array.from(arguments).findIndex((W)=>typeof W==="function"),F=i9.context.active();if(G===-1){let W=i9.context.with(i9.trace.setSpan(i9.context.active(),X),()=>{return Q.apply(A,arguments)});return i9.context.bind(F,W),W.on("error",(Z)=>X.setStatus({code:i9.SpanStatusCode.ERROR,message:Z.message})).on("end",()=>{X.end()})}else return B._wrap(arguments,G,B._patchCallbackQuery(X,F)),i9.context.with(i9.trace.setSpan(i9.context.active(),X),()=>{return Q.apply(A,arguments)})}}}_patchCallbackQuery(A,Q){return(B)=>{return function(Y,J,C){if(Y)A.setStatus({code:i9.SpanStatusCode.ERROR,message:Y.message});return A.end(),i9.context.with(Q,()=>B(...arguments))}}}_setPoolcallbacks(A,Q,B){let Y=B||(0,PK.getPoolName)(A);A.on("connection",(J)=>{Q._connectionsUsage.add(1,{state:"idle",name:Y})}),A.on("acquire",(J)=>{Q._connectionsUsage.add(-1,{state:"idle",name:Y}),Q._connectionsUsage.add(1,{state:"used",name:Y})}),A.on("release",(J)=>{Q._connectionsUsage.add(-1,{state:"used",name:Y}),Q._connectionsUsage.add(1,{state:"idle",name:Y})})}}VVQ.MySQLInstrumentation=uP;uP.COMMON_ATTRIBUTES={[Pn.SEMATTRS_DB_SYSTEM]:Pn.DBSYSTEMVALUES_MYSQL}});var NVQ=R((DVQ)=>{Object.defineProperty(DVQ,"__esModule",{value:!0})});var qVQ=R((OF)=>{var nq0=OF&&OF.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),LVQ=OF&&OF.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))nq0(Q,A,B)};Object.defineProperty(OF,"__esModule",{value:!0});LVQ(HVQ(),OF);LVQ(NVQ(),OF)});var kn=R((RVQ)=>{Object.defineProperty(RVQ,"__esModule",{value:!0});RVQ.addSqlCommenterComment=void 0;var Sn=yA(),rq0=MB();function aq0(A){let Q=A.indexOf("--");if(Q>=0)return!0;if(A.indexOf("/*")<0)return!1;let Y=A.indexOf("*/");return Q`%${Q.charCodeAt(0).toString(16).toUpperCase()}`)}function tq0(A,Q){if(typeof Q!=="string"||Q.length===0)return Q;if(aq0(Q))return Q;let B=new rq0.W3CTraceContextPropagator,Y={};B.inject(Sn.trace.setSpan(Sn.ROOT_CONTEXT,A),Y,Sn.defaultTextMapSetter);let J=Object.keys(Y).sort();if(J.length===0)return Q;let C=J.map((X)=>{let G=oq0(Y[X]);return`${X}='${G}'`}).join(",");return`${Q} /*${C}*/`}RVQ.addSqlCommenterComment=tq0});var TVQ=R((OVQ)=>{Object.defineProperty(OVQ,"__esModule",{value:!0});OVQ.getConnectionPrototypeToInstrument=OVQ.once=OVQ.getSpanName=OVQ.getDbStatement=OVQ.getConnectionAttributes=void 0;var VG=uB();function eq0(A){let{host:Q,port:B,database:Y,user:J}=AM0(A),C=parseInt(B,10);if(!isNaN(C))return{[VG.SEMATTRS_NET_PEER_NAME]:Q,[VG.SEMATTRS_NET_PEER_PORT]:C,[VG.SEMATTRS_DB_CONNECTION_STRING]:jVQ(Q,B,Y),[VG.SEMATTRS_DB_NAME]:Y,[VG.SEMATTRS_DB_USER]:J};return{[VG.SEMATTRS_NET_PEER_NAME]:Q,[VG.SEMATTRS_DB_CONNECTION_STRING]:jVQ(Q,B,Y),[VG.SEMATTRS_DB_NAME]:Y,[VG.SEMATTRS_DB_USER]:J}}OVQ.getConnectionAttributes=eq0;function AM0(A){let{host:Q,port:B,database:Y,user:J}=A&&A.connectionConfig||A||{};return{host:Q,port:B,database:Y,user:J}}function jVQ(A,Q,B){let Y=`jdbc:mysql://${A||"localhost"}`;if(typeof Q==="number")Y+=`:${Q}`;if(typeof B==="string")Y+=`/${B}`;return Y}function QM0(A,Q,B){if(!Q)return typeof A==="string"?A:A.sql;if(typeof A==="string")return B?Q(A,B):A;else return B||A.values?Q(A.sql,B||A.values):A.sql}OVQ.getDbStatement=QM0;function BM0(A){let Q=typeof A==="object"?A.sql:A,B=Q===null||Q===void 0?void 0:Q.indexOf(" ");if(typeof B==="number"&&B!==-1)return Q===null||Q===void 0?void 0:Q.substring(0,B);return Q}OVQ.getSpanName=BM0;var YM0=(A)=>{let Q=!1;return(...B)=>{if(Q)return;return Q=!0,A(...B)}};OVQ.once=YM0;function JM0(A){let Q=A.prototype,B=Object.getPrototypeOf(Q);if(typeof(B===null||B===void 0?void 0:B.query)==="function"&&typeof(B===null||B===void 0?void 0:B.execute)==="function")return B;return Q}OVQ.getConnectionPrototypeToInstrument=JM0});var _VQ=R((SVQ)=>{Object.defineProperty(SVQ,"__esModule",{value:!0});SVQ.PACKAGE_NAME=SVQ.PACKAGE_VERSION=void 0;SVQ.PACKAGE_VERSION="0.45.2";SVQ.PACKAGE_NAME="@opentelemetry/instrumentation-mysql2"});var fVQ=R((gVQ)=>{Object.defineProperty(gVQ,"__esModule",{value:!0});gVQ.MySQL2Instrumentation=void 0;var vVQ=yA(),N$=NB(),vn=uB(),yVQ=kn(),TK=TVQ(),hVQ=_VQ(),_n=[">=1.4.2 <4"];class cP extends N$.InstrumentationBase{constructor(A={}){super(hVQ.PACKAGE_NAME,hVQ.PACKAGE_VERSION,A)}init(){let A;function Q(J){if(!A&&J.format)A=J.format}let B=(J)=>{if((0,N$.isWrapped)(J.query))this._unwrap(J,"query");if(this._wrap(J,"query",this._patchQuery(A,!1)),(0,N$.isWrapped)(J.execute))this._unwrap(J,"execute");this._wrap(J,"execute",this._patchQuery(A,!0))},Y=(J)=>{this._unwrap(J,"query"),this._unwrap(J,"execute")};return[new N$.InstrumentationNodeModuleDefinition("mysql2",_n,(J)=>{return Q(J),J},()=>{},[new N$.InstrumentationNodeModuleFile("mysql2/promise.js",_n,(J)=>{return Q(J),J},()=>{}),new N$.InstrumentationNodeModuleFile("mysql2/lib/connection.js",_n,(J)=>{let C=(0,TK.getConnectionPrototypeToInstrument)(J);return B(C),J},(J)=>{if(J===void 0)return;let C=(0,TK.getConnectionPrototypeToInstrument)(J);Y(C)})])]}_patchQuery(A,Q){return(B)=>{let Y=this;return function(J,C,X){let G;if(Array.isArray(C))G=C;else if(arguments[2])G=[C];let F=Y.tracer.startSpan((0,TK.getSpanName)(J),{kind:vVQ.SpanKind.CLIENT,attributes:Object.assign(Object.assign(Object.assign({},cP.COMMON_ATTRIBUTES),(0,TK.getConnectionAttributes)(this.config)),{[vn.SEMATTRS_DB_STATEMENT]:(0,TK.getDbStatement)(J,A,G)})});if(!Q&&Y.getConfig().addSqlCommenterCommentToQueries)arguments[0]=J=typeof J==="string"?(0,yVQ.addSqlCommenterComment)(F,J):Object.assign(J,{sql:(0,yVQ.addSqlCommenterComment)(F,J.sql)});let W=(0,TK.once)((Z,U)=>{if(Z)F.setStatus({code:vVQ.SpanStatusCode.ERROR,message:Z.message});else{let{responseHook:$}=Y.getConfig();if(typeof $==="function")(0,N$.safeExecuteInTheMiddle)(()=>{$(F,{queryResults:U})},(E)=>{if(E)Y._diag.warn("Failed executing responseHook",E)},!0)}F.end()});if(arguments.length===1){if(typeof J.onResult==="function")Y._wrap(J,"onResult",Y._patchCallbackQuery(W));let Z=B.apply(this,arguments);return Z.once("error",(U)=>{W(U)}).once("result",(U)=>{W(void 0,U)}),Z}if(typeof arguments[1]==="function")Y._wrap(arguments,1,Y._patchCallbackQuery(W));else if(typeof arguments[2]==="function")Y._wrap(arguments,2,Y._patchCallbackQuery(W));return B.apply(this,arguments)}}}_patchCallbackQuery(A){return(Q)=>{return function(B,Y,J){return A(B,Y),Q(...arguments)}}}}gVQ.MySQL2Instrumentation=cP;cP.COMMON_ATTRIBUTES={[vn.SEMATTRS_DB_SYSTEM]:vn.DBSYSTEMVALUES_MYSQL}});var mVQ=R((bVQ)=>{Object.defineProperty(bVQ,"__esModule",{value:!0})});var dVQ=R((PF)=>{var ZM0=PF&&PF.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),uVQ=PF&&PF.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))ZM0(Q,A,B)};Object.defineProperty(PF,"__esModule",{value:!0});uVQ(fVQ(),PF);uVQ(mVQ(),PF)});var nVQ=R((pVQ)=>{Object.defineProperty(pVQ,"__esModule",{value:!0});pVQ.endSpan=void 0;var UM0=yA(),EM0=(A,Q)=>{if(Q)A.recordException(Q),A.setStatus({code:UM0.SpanStatusCode.ERROR,message:Q.message});A.end()};pVQ.endSpan=EM0});var hn=R((sVQ)=>{Object.defineProperty(sVQ,"__esModule",{value:!0});sVQ.defaultDbStatementSerializer=void 0;var KM0=[{regex:/^ECHO/i,args:0},{regex:/^(LPUSH|MSET|PFA|PUBLISH|RPUSH|SADD|SET|SPUBLISH|XADD|ZADD)/i,args:1},{regex:/^(HSET|HMSET|LSET|LINSERT)/i,args:2},{regex:/^(ACL|BIT|B[LRZ]|CLIENT|CLUSTER|CONFIG|COMMAND|DECR|DEL|EVAL|EX|FUNCTION|GEO|GET|HINCR|HMGET|HSCAN|INCR|L[TRLM]|MEMORY|P[EFISTU]|RPOP|S[CDIMORSU]|XACK|X[CDGILPRT]|Z[CDILMPRS])/i,args:-1}],VM0=(A,Q)=>{var B,Y;if(Array.isArray(Q)&&Q.length){let J=(Y=(B=KM0.find(({regex:X})=>{return X.test(A)}))===null||B===void 0?void 0:B.args)!==null&&Y!==void 0?Y:0,C=J>=0?Q.slice(0,J):Q;if(Q.length>C.length)C.push(`[${Q.length-J} other arguments]`);return`${A} ${C.join(" ")}`}return A};sVQ.defaultDbStatementSerializer=VM0});var tVQ=R((aVQ)=>{Object.defineProperty(aVQ,"__esModule",{value:!0});aVQ.PACKAGE_NAME=aVQ.PACKAGE_VERSION=void 0;aVQ.PACKAGE_VERSION="0.47.1";aVQ.PACKAGE_NAME="@opentelemetry/instrumentation-ioredis"});var CIQ=R((YIQ)=>{Object.defineProperty(YIQ,"__esModule",{value:!0});YIQ.IORedisInstrumentation=void 0;var TF=yA(),pP=NB(),p5=uB(),eVQ=NB(),yL=nVQ(),HM0=hn(),AIQ=tVQ(),QIQ={requireParentSpan:!0};class BIQ extends pP.InstrumentationBase{constructor(A={}){super(AIQ.PACKAGE_NAME,AIQ.PACKAGE_VERSION,Object.assign(Object.assign({},QIQ),A))}setConfig(A={}){super.setConfig(Object.assign(Object.assign({},QIQ),A))}init(){return[new pP.InstrumentationNodeModuleDefinition("ioredis",[">=2.0.0 <6"],(A,Q)=>{let B=A[Symbol.toStringTag]==="Module"?A.default:A;if((0,pP.isWrapped)(B.prototype.sendCommand))this._unwrap(B.prototype,"sendCommand");if(this._wrap(B.prototype,"sendCommand",this._patchSendCommand(Q)),(0,pP.isWrapped)(B.prototype.connect))this._unwrap(B.prototype,"connect");return this._wrap(B.prototype,"connect",this._patchConnection()),A},(A)=>{if(A===void 0)return;let Q=A[Symbol.toStringTag]==="Module"?A.default:A;this._unwrap(Q.prototype,"sendCommand"),this._unwrap(Q.prototype,"connect")})]}_patchSendCommand(A){return(Q)=>{return this._traceSendCommand(Q,A)}}_patchConnection(){return(A)=>{return this._traceConnection(A)}}_traceSendCommand(A,Q){let B=this;return function(Y){if(arguments.length<1||typeof Y!=="object")return A.apply(this,arguments);let J=B.getConfig(),C=J.dbStatementSerializer||HM0.defaultDbStatementSerializer,X=TF.trace.getSpan(TF.context.active())===void 0;if(J.requireParentSpan===!0&&X)return A.apply(this,arguments);let G=B.tracer.startSpan(Y.name,{kind:TF.SpanKind.CLIENT,attributes:{[p5.SEMATTRS_DB_SYSTEM]:p5.DBSYSTEMVALUES_REDIS,[p5.SEMATTRS_DB_STATEMENT]:C(Y.name,Y.args)}}),{requestHook:F}=J;if(F)(0,eVQ.safeExecuteInTheMiddle)(()=>F(G,{moduleVersion:Q,cmdName:Y.name,cmdArgs:Y.args}),(U)=>{if(U)TF.diag.error("ioredis instrumentation: request hook failed",U)},!0);let{host:W,port:Z}=this.options;G.setAttributes({[p5.SEMATTRS_NET_PEER_NAME]:W,[p5.SEMATTRS_NET_PEER_PORT]:Z,[p5.SEMATTRS_DB_CONNECTION_STRING]:`redis://${W}:${Z}`});try{let U=A.apply(this,arguments),$=Y.resolve;Y.resolve=function(K){(0,eVQ.safeExecuteInTheMiddle)(()=>{var I;return(I=J.responseHook)===null||I===void 0?void 0:I.call(J,G,Y.name,Y.args,K)},(I)=>{if(I)TF.diag.error("ioredis instrumentation: response hook failed",I)},!0),(0,yL.endSpan)(G,null),$(K)};let E=Y.reject;return Y.reject=function(K){(0,yL.endSpan)(G,K),E(K)},U}catch(U){throw(0,yL.endSpan)(G,U),U}}}_traceConnection(A){let Q=this;return function(){let B=TF.trace.getSpan(TF.context.active())===void 0;if(Q.getConfig().requireParentSpan===!0&&B)return A.apply(this,arguments);let Y=Q.tracer.startSpan("connect",{kind:TF.SpanKind.CLIENT,attributes:{[p5.SEMATTRS_DB_SYSTEM]:p5.DBSYSTEMVALUES_REDIS,[p5.SEMATTRS_DB_STATEMENT]:"connect"}}),{host:J,port:C}=this.options;Y.setAttributes({[p5.SEMATTRS_NET_PEER_NAME]:J,[p5.SEMATTRS_NET_PEER_PORT]:C,[p5.SEMATTRS_DB_CONNECTION_STRING]:`redis://${J}:${C}`});try{let X=A.apply(this,arguments);return(0,yL.endSpan)(Y,null),X}catch(X){throw(0,yL.endSpan)(Y,X),X}}}}YIQ.IORedisInstrumentation=BIQ});var GIQ=R((XIQ)=>{Object.defineProperty(XIQ,"__esModule",{value:!0})});var WIQ=R((SF)=>{var DM0=SF&&SF.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),FIQ=SF&&SF.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))DM0(Q,A,B)};Object.defineProperty(SF,"__esModule",{value:!0});FIQ(CIQ(),SF);FIQ(GIQ(),SF)});var UIQ=R((ZIQ)=>{Object.defineProperty(ZIQ,"__esModule",{value:!0});ZIQ.getClientAttributes=void 0;var hL=uB();function NM0(A,Q){var B,Y;return{[hL.SEMATTRS_DB_SYSTEM]:hL.DBSYSTEMVALUES_REDIS,[hL.SEMATTRS_NET_PEER_NAME]:(B=Q===null||Q===void 0?void 0:Q.socket)===null||B===void 0?void 0:B.host,[hL.SEMATTRS_NET_PEER_PORT]:(Y=Q===null||Q===void 0?void 0:Q.socket)===null||Y===void 0?void 0:Y.port,[hL.SEMATTRS_DB_CONNECTION_STRING]:LM0(A,Q===null||Q===void 0?void 0:Q.url)}}ZIQ.getClientAttributes=NM0;function LM0(A,Q){if(typeof Q!=="string"||!Q)return;try{let B=new URL(Q);return B.searchParams.delete("user_pwd"),B.username="",B.password="",B.href}catch(B){A.error("failed to sanitize redis connection url",B)}return}});var VIQ=R((EIQ)=>{Object.defineProperty(EIQ,"__esModule",{value:!0});EIQ.PACKAGE_NAME=EIQ.PACKAGE_VERSION=void 0;EIQ.PACKAGE_VERSION="0.46.1";EIQ.PACKAGE_NAME="@opentelemetry/instrumentation-redis-4"});var MIQ=R((LIQ)=>{Object.defineProperty(LIQ,"__esModule",{value:!0});LIQ.RedisInstrumentation=void 0;var i5=yA(),iY=NB(),IIQ=UIQ(),MM0=hn(),HIQ=VIQ(),zM0=uB(),gL=Symbol("opentelemetry.instrumentation.redis.open_spans"),DIQ=Symbol("opentelemetry.instrumentation.redis.multi_command_options"),NIQ={requireParentSpan:!1};class xL extends iY.InstrumentationBase{constructor(A={}){super(HIQ.PACKAGE_NAME,HIQ.PACKAGE_VERSION,Object.assign(Object.assign({},NIQ),A))}setConfig(A={}){super.setConfig(Object.assign(Object.assign({},NIQ),A))}init(){return[this._getInstrumentationNodeModuleDefinition("@redis/client"),this._getInstrumentationNodeModuleDefinition("@node-redis/client")]}_getInstrumentationNodeModuleDefinition(A){let Q=new iY.InstrumentationNodeModuleFile(`${A}/dist/lib/commander.js`,["^1.0.0"],(J,C)=>{let X=J.transformCommandArguments;if(!X)return this._diag.error("internal instrumentation error, missing transformCommandArguments function"),J;let G=(C===null||C===void 0?void 0:C.startsWith("1.0."))?"extendWithCommands":"attachCommands";if((0,iY.isWrapped)(J===null||J===void 0?void 0:J[G]))this._unwrap(J,G);return this._wrap(J,G,this._getPatchExtendWithCommands(X)),J},(J)=>{if((0,iY.isWrapped)(J===null||J===void 0?void 0:J.extendWithCommands))this._unwrap(J,"extendWithCommands");if((0,iY.isWrapped)(J===null||J===void 0?void 0:J.attachCommands))this._unwrap(J,"attachCommands")}),B=new iY.InstrumentationNodeModuleFile(`${A}/dist/lib/client/multi-command.js`,["^1.0.0"],(J)=>{var C;let X=(C=J===null||J===void 0?void 0:J.default)===null||C===void 0?void 0:C.prototype;if((0,iY.isWrapped)(X===null||X===void 0?void 0:X.exec))this._unwrap(X,"exec");if(this._wrap(X,"exec",this._getPatchMultiCommandsExec()),(0,iY.isWrapped)(X===null||X===void 0?void 0:X.addCommand))this._unwrap(X,"addCommand");return this._wrap(X,"addCommand",this._getPatchMultiCommandsAddCommand()),J},(J)=>{var C;let X=(C=J===null||J===void 0?void 0:J.default)===null||C===void 0?void 0:C.prototype;if((0,iY.isWrapped)(X===null||X===void 0?void 0:X.exec))this._unwrap(X,"exec");if((0,iY.isWrapped)(X===null||X===void 0?void 0:X.addCommand))this._unwrap(X,"addCommand")}),Y=new iY.InstrumentationNodeModuleFile(`${A}/dist/lib/client/index.js`,["^1.0.0"],(J)=>{var C;let X=(C=J===null||J===void 0?void 0:J.default)===null||C===void 0?void 0:C.prototype;if(X===null||X===void 0?void 0:X.multi){if((0,iY.isWrapped)(X===null||X===void 0?void 0:X.multi))this._unwrap(X,"multi");this._wrap(X,"multi",this._getPatchRedisClientMulti())}if(X===null||X===void 0?void 0:X.MULTI){if((0,iY.isWrapped)(X===null||X===void 0?void 0:X.MULTI))this._unwrap(X,"MULTI");this._wrap(X,"MULTI",this._getPatchRedisClientMulti())}if((0,iY.isWrapped)(X===null||X===void 0?void 0:X.sendCommand))this._unwrap(X,"sendCommand");return this._wrap(X,"sendCommand",this._getPatchRedisClientSendCommand()),this._wrap(X,"connect",this._getPatchedClientConnect()),J},(J)=>{var C;let X=(C=J===null||J===void 0?void 0:J.default)===null||C===void 0?void 0:C.prototype;if((0,iY.isWrapped)(X===null||X===void 0?void 0:X.multi))this._unwrap(X,"multi");if((0,iY.isWrapped)(X===null||X===void 0?void 0:X.MULTI))this._unwrap(X,"MULTI");if((0,iY.isWrapped)(X===null||X===void 0?void 0:X.sendCommand))this._unwrap(X,"sendCommand")});return new iY.InstrumentationNodeModuleDefinition(A,["^1.0.0"],(J)=>{return J},()=>{},[Q,B,Y])}_getPatchExtendWithCommands(A){let Q=this;return function(Y){return function(C){var X;if(((X=C===null||C===void 0?void 0:C.BaseClass)===null||X===void 0?void 0:X.name)!=="RedisClient")return Y.apply(this,arguments);let G=C.executor;return C.executor=function(F,W){let Z=A(F,W).args;return Q._traceClientCommand(G,this,arguments,Z)},Y.apply(this,arguments)}}}_getPatchMultiCommandsExec(){let A=this;return function(B){return function(){let J=B.apply(this,arguments);if(typeof(J===null||J===void 0?void 0:J.then)!=="function")return A._diag.error("got non promise result when patching RedisClientMultiCommand.exec"),J;return J.then((C)=>{let X=this[gL];return A._endSpansWithRedisReplies(X,C),C}).catch((C)=>{let X=this[gL];if(!X)A._diag.error("cannot find open spans to end for redis multi command");else{let G=C.constructor.name==="MultiErrorReply"?C.replies:Array(X.length).fill(C);A._endSpansWithRedisReplies(X,G)}return Promise.reject(C)})}}}_getPatchMultiCommandsAddCommand(){let A=this;return function(B){return function(J){return A._traceClientCommand(B,this,arguments,J)}}}_getPatchRedisClientMulti(){return function(Q){return function(){let Y=Q.apply(this,arguments);return Y[DIQ]=this.options,Y}}}_getPatchRedisClientSendCommand(){let A=this;return function(B){return function(J){return A._traceClientCommand(B,this,arguments,J)}}}_getPatchedClientConnect(){let A=this;return function(B){return function(){let J=this.options,C=(0,IIQ.getClientAttributes)(A._diag,J),X=A.tracer.startSpan(`${xL.COMPONENT}-connect`,{kind:i5.SpanKind.CLIENT,attributes:C});return i5.context.with(i5.trace.setSpan(i5.context.active(),X),()=>{return B.apply(this)}).then((F)=>{return X.end(),F}).catch((F)=>{return X.recordException(F),X.setStatus({code:i5.SpanStatusCode.ERROR,message:F.message}),X.end(),Promise.reject(F)})}}}_traceClientCommand(A,Q,B,Y){if(i5.trace.getSpan(i5.context.active())===void 0&&this.getConfig().requireParentSpan)return A.apply(Q,B);let C=Q.options||Q[DIQ],X=Y[0],G=Y.slice(1),F=this.getConfig().dbStatementSerializer||MM0.defaultDbStatementSerializer,W=(0,IIQ.getClientAttributes)(this._diag,C);try{let $=F(X,G);if($!=null)W[zM0.SEMATTRS_DB_STATEMENT]=$}catch($){this._diag.error("dbStatementSerializer throw an exception",$,{commandName:X})}let Z=this.tracer.startSpan(`${xL.COMPONENT}-${X}`,{kind:i5.SpanKind.CLIENT,attributes:W}),U=i5.context.with(i5.trace.setSpan(i5.context.active(),Z),()=>{return A.apply(Q,B)});if(typeof(U===null||U===void 0?void 0:U.then)==="function")U.then(($)=>{this._endSpanWithResponse(Z,X,G,$,void 0)},($)=>{this._endSpanWithResponse(Z,X,G,null,$)});else{let $=U;$[gL]=$[gL]||[],$[gL].push({span:Z,commandName:X,commandArgs:G})}return U}_endSpansWithRedisReplies(A,Q){if(!A)return this._diag.error("cannot find open spans to end for redis multi command");if(Q.length!==A.length)return this._diag.error("number of multi command spans does not match response from redis");for(let B=0;B{Object.defineProperty(zIQ,"__esModule",{value:!0})});var jIQ=R((kF)=>{var RM0=kF&&kF.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),wIQ=kF&&kF.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))RM0(Q,A,B)};Object.defineProperty(kF,"__esModule",{value:!0});wIQ(MIQ(),kF);wIQ(RIQ(),kF)});var xIQ=R((hIQ)=>{Object.defineProperty(hIQ,"__esModule",{value:!0});hIQ.EVENT_LISTENERS_SET=void 0;hIQ.EVENT_LISTENERS_SET=Symbol("opentelemetry.instrumentation.pg.eventListenersSet")});var un=R((fIQ)=>{Object.defineProperty(fIQ,"__esModule",{value:!0});fIQ.AttributeNames=void 0;var kM0;(function(A){A.PG_VALUES="db.postgresql.values",A.PG_PLAN="db.postgresql.plan",A.IDLE_TIMEOUT_MILLIS="db.postgresql.idle.timeout.millis",A.MAX_CLIENT="db.postgresql.max.client"})(kM0=fIQ.AttributeNames||(fIQ.AttributeNames={}))});var dn=R((bIQ)=>{Object.defineProperty(bIQ,"__esModule",{value:!0});bIQ.METRIC_DB_CLIENT_OPERATION_DURATION=bIQ.METRIC_DB_CLIENT_CONNECTION_PENDING_REQUESTS=bIQ.METRIC_DB_CLIENT_CONNECTION_COUNT=bIQ.DB_CLIENT_CONNECTION_STATE_VALUE_IDLE=bIQ.DB_CLIENT_CONNECTION_STATE_VALUE_USED=bIQ.ATTR_DB_OPERATION_NAME=bIQ.ATTR_DB_NAMESPACE=bIQ.ATTR_DB_CLIENT_CONNECTION_STATE=bIQ.ATTR_DB_CLIENT_CONNECTION_POOL_NAME=void 0;bIQ.ATTR_DB_CLIENT_CONNECTION_POOL_NAME="db.client.connection.pool.name";bIQ.ATTR_DB_CLIENT_CONNECTION_STATE="db.client.connection.state";bIQ.ATTR_DB_NAMESPACE="db.namespace";bIQ.ATTR_DB_OPERATION_NAME="db.operation.name";bIQ.DB_CLIENT_CONNECTION_STATE_VALUE_USED="used";bIQ.DB_CLIENT_CONNECTION_STATE_VALUE_IDLE="idle";bIQ.METRIC_DB_CLIENT_CONNECTION_COUNT="db.client.connection.count";bIQ.METRIC_DB_CLIENT_CONNECTION_PENDING_REQUESTS="db.client.connection.pending_requests";bIQ.METRIC_DB_CLIENT_OPERATION_DURATION="db.client.operation.duration"});var ln=R((uIQ)=>{Object.defineProperty(uIQ,"__esModule",{value:!0});uIQ.SpanNames=void 0;var mM0;(function(A){A.QUERY_PREFIX="pg.query",A.CONNECT="pg.connect",A.POOL_CONNECT="pg-pool.connect"})(mM0=uIQ.SpanNames||(uIQ.SpanNames={}))});var aIQ=R((sIQ)=>{Object.defineProperty(sIQ,"__esModule",{value:!0});sIQ.isObjectWithTextString=sIQ.getErrorMessage=sIQ.patchClientConnectCallback=sIQ.patchCallbackPGPool=sIQ.updateCounter=sIQ.getPoolName=sIQ.patchCallback=sIQ.handleExecutionResult=sIQ.handleConfigQuery=sIQ.shouldSkipInstrumentation=sIQ.getSemanticAttributesFromPool=sIQ.getSemanticAttributesFromConnection=sIQ.getConnectionString=sIQ.parseNormalizedOperationName=sIQ.getQuerySpanName=void 0;var _F=yA(),nP=un(),_J=uB(),L$=dn(),uM0=NB(),dIQ=ln();function cIQ(A,Q){if(!Q)return dIQ.SpanNames.QUERY_PREFIX;let B=typeof Q.name==="string"&&Q.name?Q.name:lIQ(Q.text);return`${dIQ.SpanNames.QUERY_PREFIX}:${B}${A?` ${A}`:""}`}sIQ.getQuerySpanName=cIQ;function lIQ(A){let Q=A.indexOf(" "),B=Q===-1?A:A.slice(0,Q);return B=B.toUpperCase(),B.endsWith(";")?B.slice(0,-1):B}sIQ.parseNormalizedOperationName=lIQ;function pn(A){let Q=A.host||"localhost",B=A.port||5432,Y=A.database||"";return`postgresql://${Q}:${B}/${Y}`}sIQ.getConnectionString=pn;function pIQ(A){if(Number.isInteger(A))return A;return}function iIQ(A){return{[_J.SEMATTRS_DB_SYSTEM]:_J.DBSYSTEMVALUES_POSTGRESQL,[_J.SEMATTRS_DB_NAME]:A.database,[_J.SEMATTRS_DB_CONNECTION_STRING]:pn(A),[_J.SEMATTRS_NET_PEER_NAME]:A.host,[_J.SEMATTRS_NET_PEER_PORT]:pIQ(A.port),[_J.SEMATTRS_DB_USER]:A.user}}sIQ.getSemanticAttributesFromConnection=iIQ;function dM0(A){return{[_J.SEMATTRS_DB_SYSTEM]:_J.DBSYSTEMVALUES_POSTGRESQL,[_J.SEMATTRS_DB_NAME]:A.database,[_J.SEMATTRS_DB_CONNECTION_STRING]:pn(A),[_J.SEMATTRS_NET_PEER_NAME]:A.host,[_J.SEMATTRS_NET_PEER_PORT]:pIQ(A.port),[_J.SEMATTRS_DB_USER]:A.user,[nP.AttributeNames.IDLE_TIMEOUT_MILLIS]:A.idleTimeoutMillis,[nP.AttributeNames.MAX_CLIENT]:A.maxClient}}sIQ.getSemanticAttributesFromPool=dM0;function cM0(A){return A.requireParentSpan===!0&&_F.trace.getSpan(_F.context.active())===void 0}sIQ.shouldSkipInstrumentation=cM0;function lM0(A,Q,B){let{connectionParameters:Y}=this,J=Y.database,C=cIQ(J,B),X=A.startSpan(C,{kind:_F.SpanKind.CLIENT,attributes:iIQ(Y)});if(!B)return X;if(B.text)X.setAttribute(_J.SEMATTRS_DB_STATEMENT,B.text);if(Q.enhancedDatabaseReporting&&Array.isArray(B.values))try{let G=B.values.map((F)=>{if(F==null)return"null";else if(F instanceof Buffer)return F.toString();else if(typeof F==="object"){if(typeof F.toPostgres==="function")return F.toPostgres();return JSON.stringify(F)}else return F.toString()});X.setAttribute(nP.AttributeNames.PG_VALUES,G)}catch(G){_F.diag.error("failed to stringify ",B.values,G)}if(typeof B.name==="string")X.setAttribute(nP.AttributeNames.PG_PLAN,B.name);return X}sIQ.handleConfigQuery=lM0;function nIQ(A,Q,B){if(typeof A.responseHook==="function")(0,uM0.safeExecuteInTheMiddle)(()=>{A.responseHook(Q,{data:B})},(Y)=>{if(Y)_F.diag.error("Error running response hook",Y)},!0)}sIQ.handleExecutionResult=nIQ;function pM0(A,Q,B,Y,J){return function(X,G){if(X){if(Object.prototype.hasOwnProperty.call(X,"code"))Y[_J.ATTR_ERROR_TYPE]=X.code;Q.setStatus({code:_F.SpanStatusCode.ERROR,message:X.message})}else nIQ(A,Q,G);J(),Q.end(),B.call(this,X,G)}}sIQ.patchCallback=pM0;function iM0(A){let Q="";return Q+=((A===null||A===void 0?void 0:A.host)?`${A.host}`:"unknown_host")+":",Q+=((A===null||A===void 0?void 0:A.port)?`${A.port}`:"unknown_port")+"/",Q+=(A===null||A===void 0?void 0:A.database)?`${A.database}`:"unknown_database",Q.trim()}sIQ.getPoolName=iM0;function nM0(A,Q,B,Y,J){let{totalCount:C,waitingCount:X,idleCount:G}=Q,F=C-G;return B.add(F-J.used,{[L$.ATTR_DB_CLIENT_CONNECTION_STATE]:L$.DB_CLIENT_CONNECTION_STATE_VALUE_USED,[L$.ATTR_DB_CLIENT_CONNECTION_POOL_NAME]:A}),B.add(G-J.idle,{[L$.ATTR_DB_CLIENT_CONNECTION_STATE]:L$.DB_CLIENT_CONNECTION_STATE_VALUE_IDLE,[L$.ATTR_DB_CLIENT_CONNECTION_POOL_NAME]:A}),Y.add(X-J.pending,{[L$.ATTR_DB_CLIENT_CONNECTION_POOL_NAME]:A}),{used:F,idle:G,pending:X}}sIQ.updateCounter=nM0;function sM0(A,Q){return function(Y,J,C){if(Y)A.setStatus({code:_F.SpanStatusCode.ERROR,message:Y.message});A.end(),Q.call(this,Y,J,C)}}sIQ.patchCallbackPGPool=sM0;function rM0(A,Q){return function(Y){if(Y)A.setStatus({code:_F.SpanStatusCode.ERROR,message:Y.message});A.end(),Q.apply(this,arguments)}}sIQ.patchClientConnectCallback=rM0;function aM0(A){return typeof A==="object"&&A!==null&&"message"in A?String(A.message):void 0}sIQ.getErrorMessage=aM0;function oM0(A){var Q;return typeof A==="object"&&typeof((Q=A)===null||Q===void 0?void 0:Q.text)==="string"}sIQ.isObjectWithTextString=oM0});var eIQ=R((oIQ)=>{Object.defineProperty(oIQ,"__esModule",{value:!0});oIQ.PACKAGE_NAME=oIQ.PACKAGE_VERSION=void 0;oIQ.PACKAGE_VERSION="0.51.1";oIQ.PACKAGE_NAME="@opentelemetry/instrumentation-pg"});var FHQ=R((XHQ)=>{Object.defineProperty(XHQ,"__esModule",{value:!0});XHQ.PgInstrumentation=void 0;var n5=NB(),sB=yA(),AHQ=xIQ(),LY=aIQ(),QHQ=kn(),BHQ=eIQ(),YHQ=ln(),sP=MB(),vF=uB(),q$=dn();function rP(A){return A[Symbol.toStringTag]==="Module"?A.default:A}class CHQ extends n5.InstrumentationBase{constructor(A={}){super(BHQ.PACKAGE_NAME,BHQ.PACKAGE_VERSION,A);this._connectionsCounter={used:0,idle:0,pending:0}}_updateMetricInstruments(){this._operationDuration=this.meter.createHistogram(q$.METRIC_DB_CLIENT_OPERATION_DURATION,{description:"Duration of database client operations.",unit:"s",valueType:sB.ValueType.DOUBLE,advice:{explicitBucketBoundaries:[0.001,0.005,0.01,0.05,0.1,0.5,1,5,10]}}),this._connectionsCounter={idle:0,pending:0,used:0},this._connectionsCount=this.meter.createUpDownCounter(q$.METRIC_DB_CLIENT_CONNECTION_COUNT,{description:"The number of connections that are currently in state described by the state attribute.",unit:"{connection}"}),this._connectionPendingRequests=this.meter.createUpDownCounter(q$.METRIC_DB_CLIENT_CONNECTION_PENDING_REQUESTS,{description:"The number of current pending requests for an open connection.",unit:"{connection}"})}init(){let A=[">=8.0.3 <9"],Q=new n5.InstrumentationNodeModuleFile("pg/lib/native/client.js",A,this._patchPgClient.bind(this),this._unpatchPgClient.bind(this)),B=new n5.InstrumentationNodeModuleFile("pg/lib/client.js",A,this._patchPgClient.bind(this),this._unpatchPgClient.bind(this)),Y=new n5.InstrumentationNodeModuleDefinition("pg",A,(C)=>{let X=rP(C);return this._patchPgClient(X.Client),C},(C)=>{let X=rP(C);return this._unpatchPgClient(X.Client),C},[B,Q]),J=new n5.InstrumentationNodeModuleDefinition("pg-pool",[">=2.0.0 <4"],(C)=>{if((0,n5.isWrapped)(C.prototype.connect))this._unwrap(C.prototype,"connect");return this._wrap(C.prototype,"connect",this._getPoolConnectPatch()),C},(C)=>{if((0,n5.isWrapped)(C.prototype.connect))this._unwrap(C.prototype,"connect")});return[Y,J]}_patchPgClient(A){if(!A)return;let Q=rP(A);if((0,n5.isWrapped)(Q.prototype.query))this._unwrap(Q.prototype,"query");if((0,n5.isWrapped)(Q.prototype.connect))this._unwrap(Q.prototype,"connect");return this._wrap(Q.prototype,"query",this._getClientQueryPatch()),this._wrap(Q.prototype,"connect",this._getClientConnectPatch()),A}_unpatchPgClient(A){let Q=rP(A);if((0,n5.isWrapped)(Q.prototype.query))this._unwrap(Q.prototype,"query");if((0,n5.isWrapped)(Q.prototype.connect))this._unwrap(Q.prototype,"connect");return A}_getClientConnectPatch(){let A=this;return(Q)=>{return function(Y){if(LY.shouldSkipInstrumentation(A.getConfig()))return Q.call(this,Y);let J=A.tracer.startSpan(YHQ.SpanNames.CONNECT,{kind:sB.SpanKind.CLIENT,attributes:LY.getSemanticAttributesFromConnection(this)});if(Y){let X=sB.trace.getSpan(sB.context.active());if(Y=LY.patchClientConnectCallback(J,Y),X)Y=sB.context.bind(sB.context.active(),Y)}let C=sB.context.with(sB.trace.setSpan(sB.context.active(),J),()=>{return Q.call(this,Y)});return JHQ(J,C)}}}recordOperationDuration(A,Q){let B={};[vF.SEMATTRS_DB_SYSTEM,q$.ATTR_DB_NAMESPACE,vF.ATTR_ERROR_TYPE,vF.ATTR_SERVER_PORT,vF.ATTR_SERVER_ADDRESS,q$.ATTR_DB_OPERATION_NAME].forEach((C)=>{if(C in A)B[C]=A[C]});let J=(0,sP.hrTimeToMilliseconds)((0,sP.hrTimeDuration)(Q,(0,sP.hrTime)()))/1000;this._operationDuration.record(J,B)}_getClientQueryPatch(){let A=this;return(Q)=>{return this._diag.debug("Patching pg.Client.prototype.query"),function(...Y){if(LY.shouldSkipInstrumentation(A.getConfig()))return Q.apply(this,Y);let J=(0,sP.hrTime)(),C=Y[0],X=typeof C==="string",G=LY.isObjectWithTextString(C),F=X?{text:C,values:Array.isArray(Y[1])?Y[1]:void 0}:G?C:void 0,W={[vF.SEMATTRS_DB_SYSTEM]:vF.DBSYSTEMVALUES_POSTGRESQL,[q$.ATTR_DB_NAMESPACE]:this.database,[vF.ATTR_SERVER_PORT]:this.connectionParameters.port,[vF.ATTR_SERVER_ADDRESS]:this.connectionParameters.host};if(F===null||F===void 0?void 0:F.text)W[q$.ATTR_DB_OPERATION_NAME]=LY.parseNormalizedOperationName(F===null||F===void 0?void 0:F.text);let Z=()=>{A.recordOperationDuration(W,J)},U=A.getConfig(),$=LY.handleConfigQuery.call(this,A.tracer,U,F);if(U.addSqlCommenterCommentToQueries){if(X)Y[0]=(0,QHQ.addSqlCommenterComment)($,C);else if(G&&!("name"in C))Y[0]=Object.assign(Object.assign({},C),{text:(0,QHQ.addSqlCommenterComment)($,C.text)})}if(Y.length>0){let I=sB.trace.getSpan(sB.context.active());if(typeof Y[Y.length-1]==="function"){if(Y[Y.length-1]=LY.patchCallback(U,$,Y[Y.length-1],W,Z),I)Y[Y.length-1]=sB.context.bind(sB.context.active(),Y[Y.length-1])}else if(typeof(F===null||F===void 0?void 0:F.callback)==="function"){let V=LY.patchCallback(A.getConfig(),$,F.callback,W,Z);if(I)V=sB.context.bind(sB.context.active(),V);Y[0].callback=V}}let{requestHook:E}=U;if(typeof E==="function"&&F)(0,n5.safeExecuteInTheMiddle)(()=>{let{database:I,host:V,port:H,user:D}=this.connectionParameters;E($,{connection:{database:I,host:V,port:H,user:D},query:{text:F.text,values:F.values,name:F.name}})},(I)=>{if(I)A._diag.error("Error running query hook",I)},!0);let K;try{K=Q.apply(this,Y)}catch(I){throw $.setStatus({code:sB.SpanStatusCode.ERROR,message:LY.getErrorMessage(I)}),$.end(),I}if(K instanceof Promise)return K.then((I)=>{return new Promise((V)=>{LY.handleExecutionResult(A.getConfig(),$,I),Z(),$.end(),V(I)})}).catch((I)=>{return new Promise((V,H)=>{$.setStatus({code:sB.SpanStatusCode.ERROR,message:I.message}),Z(),$.end(),H(I)})});return K}}}_setPoolConnectEventListeners(A){if(A[AHQ.EVENT_LISTENERS_SET])return;let Q=LY.getPoolName(A.options);A.on("connect",()=>{this._connectionsCounter=LY.updateCounter(Q,A,this._connectionsCount,this._connectionPendingRequests,this._connectionsCounter)}),A.on("acquire",()=>{this._connectionsCounter=LY.updateCounter(Q,A,this._connectionsCount,this._connectionPendingRequests,this._connectionsCounter)}),A.on("remove",()=>{this._connectionsCounter=LY.updateCounter(Q,A,this._connectionsCount,this._connectionPendingRequests,this._connectionsCounter)}),A.on("release",()=>{this._connectionsCounter=LY.updateCounter(Q,A,this._connectionsCount,this._connectionPendingRequests,this._connectionsCounter)}),A[AHQ.EVENT_LISTENERS_SET]=!0}_getPoolConnectPatch(){let A=this;return(Q)=>{return function(Y){if(LY.shouldSkipInstrumentation(A.getConfig()))return Q.call(this,Y);let J=A.tracer.startSpan(YHQ.SpanNames.POOL_CONNECT,{kind:sB.SpanKind.CLIENT,attributes:LY.getSemanticAttributesFromPool(this.options)});if(A._setPoolConnectEventListeners(this),Y){let X=sB.trace.getSpan(sB.context.active());if(Y=LY.patchCallbackPGPool(J,Y),X)Y=sB.context.bind(sB.context.active(),Y)}let C=sB.context.with(sB.trace.setSpan(sB.context.active(),J),()=>{return Q.call(this,Y)});return JHQ(J,C)}}}}XHQ.PgInstrumentation=CHQ;function JHQ(A,Q){if(!(Q instanceof Promise))return Q;let B=Q;return sB.context.bind(sB.context.active(),B.then((Y)=>{return A.end(),Y}).catch((Y)=>{return A.setStatus({code:sB.SpanStatusCode.ERROR,message:LY.getErrorMessage(Y)}),A.end(),Promise.reject(Y)}))}});var ZHQ=R((WHQ)=>{Object.defineProperty(WHQ,"__esModule",{value:!0})});var $HQ=R((IG)=>{var Ez0=IG&&IG.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),nn=IG&&IG.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))Ez0(Q,A,B)};Object.defineProperty(IG,"__esModule",{value:!0});nn(FHQ(),IG);nn(ZHQ(),IG);nn(un(),IG)});var jHQ=R((RHQ)=>{Object.defineProperty(RHQ,"__esModule",{value:!0});RHQ.PACKAGE_NAME=RHQ.PACKAGE_VERSION=void 0;RHQ.PACKAGE_VERSION="0.45.2";RHQ.PACKAGE_NAME="@opentelemetry/instrumentation-hapi"});var on=R((OHQ)=>{Object.defineProperty(OHQ,"__esModule",{value:!0});OHQ.HapiLifecycleMethodNames=OHQ.HapiLayerType=OHQ.handlerPatched=OHQ.HapiComponentName=void 0;OHQ.HapiComponentName="@hapi/hapi";OHQ.handlerPatched=Symbol("hapi-handler-patched");OHQ.HapiLayerType={ROUTER:"router",PLUGIN:"plugin",EXT:"server.ext"};OHQ.HapiLifecycleMethodNames=new Set(["onPreAuth","onCredentials","onPostAuth","onPreHandler","onPostHandler","onPreResponse","onRequest"])});var en=R((THQ)=>{Object.defineProperty(THQ,"__esModule",{value:!0});THQ.AttributeNames=void 0;var Tz0;(function(A){A.HAPI_TYPE="hapi.type",A.PLUGIN_NAME="hapi.plugin.name",A.EXT_TYPE="server.ext.type"})(Tz0=THQ.AttributeNames||(THQ.AttributeNames={}))});var _HQ=R((SHQ)=>{Object.defineProperty(SHQ,"__esModule",{value:!0});SHQ.getPluginFromInput=SHQ.getExtMetadata=SHQ.getRouteMetadata=SHQ.isPatchableExtMethod=SHQ.isDirectExtInput=SHQ.isLifecycleExtEventObj=SHQ.isLifecycleExtType=SHQ.getPluginName=void 0;var eP=uB(),bL=on(),hF=en();function Sz0(A){if(A.name)return A.name;else return A.pkg.name}SHQ.getPluginName=Sz0;var kz0=(A)=>{return typeof A==="string"&&bL.HapiLifecycleMethodNames.has(A)};SHQ.isLifecycleExtType=kz0;var _z0=(A)=>{var Q;let B=(Q=A)===null||Q===void 0?void 0:Q.type;return B!==void 0&&SHQ.isLifecycleExtType(B)};SHQ.isLifecycleExtEventObj=_z0;var vz0=(A)=>{return Array.isArray(A)&&A.length<=3&&SHQ.isLifecycleExtType(A[0])&&typeof A[1]==="function"};SHQ.isDirectExtInput=vz0;var yz0=(A)=>{return!Array.isArray(A)};SHQ.isPatchableExtMethod=yz0;var hz0=(A,Q)=>{if(Q)return{attributes:{[eP.SEMATTRS_HTTP_ROUTE]:A.path,[eP.SEMATTRS_HTTP_METHOD]:A.method,[hF.AttributeNames.HAPI_TYPE]:bL.HapiLayerType.PLUGIN,[hF.AttributeNames.PLUGIN_NAME]:Q},name:`${Q}: route - ${A.path}`};return{attributes:{[eP.SEMATTRS_HTTP_ROUTE]:A.path,[eP.SEMATTRS_HTTP_METHOD]:A.method,[hF.AttributeNames.HAPI_TYPE]:bL.HapiLayerType.ROUTER},name:`route - ${A.path}`}};SHQ.getRouteMetadata=hz0;var gz0=(A,Q)=>{if(Q)return{attributes:{[hF.AttributeNames.EXT_TYPE]:A,[hF.AttributeNames.HAPI_TYPE]:bL.HapiLayerType.EXT,[hF.AttributeNames.PLUGIN_NAME]:Q},name:`${Q}: ext - ${A}`};return{attributes:{[hF.AttributeNames.EXT_TYPE]:A,[hF.AttributeNames.HAPI_TYPE]:bL.HapiLayerType.EXT},name:`ext - ${A}`}};SHQ.getExtMetadata=gz0;var xz0=(A)=>{if("plugin"in A){if("plugin"in A.plugin)return A.plugin.plugin;return A.plugin}return A};SHQ.getPluginFromInput=xz0});var fHQ=R((gHQ)=>{Object.defineProperty(gHQ,"__esModule",{value:!0});gHQ.HapiInstrumentation=void 0;var h8=yA(),vHQ=MB(),AT=NB(),yHQ=jHQ(),mL=on(),HG=_HQ();class hHQ extends AT.InstrumentationBase{constructor(A={}){super(yHQ.PACKAGE_NAME,yHQ.PACKAGE_VERSION,A)}init(){return new AT.InstrumentationNodeModuleDefinition(mL.HapiComponentName,[">=17.0.0 <22"],(A)=>{let Q=A[Symbol.toStringTag]==="Module"?A.default:A;if(!(0,AT.isWrapped)(Q.server))this._wrap(Q,"server",this._getServerPatch.bind(this));if(!(0,AT.isWrapped)(Q.Server))this._wrap(Q,"Server",this._getServerPatch.bind(this));return Q},(A)=>{let Q=A[Symbol.toStringTag]==="Module"?A.default:A;this._massUnwrap([Q],["server","Server"])})}_getServerPatch(A){let Q=this,B=this;return function(J){let C=A.apply(this,[J]);return B._wrap(C,"route",(X)=>{return Q._getServerRoutePatch.bind(Q)(X)}),B._wrap(C,"ext",(X)=>{return Q._getServerExtPatch.bind(Q)(X)}),B._wrap(C,"register",Q._getServerRegisterPatch.bind(Q)),C}}_getServerRegisterPatch(A){let Q=this;return function(Y,J){if(Array.isArray(Y))for(let C of Y){let X=(0,HG.getPluginFromInput)(C);Q._wrapRegisterHandler(X)}else{let C=(0,HG.getPluginFromInput)(Y);Q._wrapRegisterHandler(C)}return A.apply(this,[Y,J])}}_getServerExtPatch(A,Q){let B=this;return function(...J){if(Array.isArray(J[0])){let C=J[0];for(let X=0;X{return Q._getServerRoutePatch.bind(Q)(F,B)}),J._wrap(X,"ext",(F)=>{return Q._getServerExtPatch.bind(Q)(F,B)}),Y.call(this,X,G)};A.register=C}_wrapExtMethods(A,Q,B){let Y=this;if(A instanceof Array){for(let J=0;J{return async function(...X){if(h8.trace.getSpan(h8.context.active())===void 0)return await C.call(this,...X);let G=(0,vHQ.getRPCMetadata)(h8.context.active());if((G===null||G===void 0?void 0:G.type)===vHQ.RPCType.HTTP)G.route=A.path;let F=(0,HG.getRouteMetadata)(A,Q),W=Y.tracer.startSpan(F.name,{attributes:F.attributes});try{return await h8.context.with(h8.trace.setSpan(h8.context.active(),W),()=>C.call(this,...X))}catch(Z){throw W.recordException(Z),W.setStatus({code:h8.SpanStatusCode.ERROR,message:Z.message}),Z}finally{W.end()}}};if(typeof A.handler==="function")A.handler=J(A.handler);else if(typeof A.options==="function"){let C=A.options;A.options=function(X){let G=C(X);if(typeof G.handler==="function")G.handler=J(G.handler);return G}}else if(typeof((B=A.options)===null||B===void 0?void 0:B.handler)==="function")A.options.handler=J(A.options.handler);return A}}gHQ.HapiInstrumentation=hHQ});var mHQ=R((gF)=>{var lz0=gF&&gF.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),bHQ=gF&&gF.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))lz0(Q,A,B)};Object.defineProperty(gF,"__esModule",{value:!0});bHQ(fHQ(),gF);bHQ(en(),gF)});var YT=R((lHQ)=>{Object.defineProperty(lHQ,"__esModule",{value:!0});lHQ.KoaLayerType=void 0;var az0;(function(A){A.ROUTER="router",A.MIDDLEWARE="middleware"})(az0=lHQ.KoaLayerType||(lHQ.KoaLayerType={}))});var nHQ=R((pHQ)=>{Object.defineProperty(pHQ,"__esModule",{value:!0});pHQ.PACKAGE_NAME=pHQ.PACKAGE_VERSION=void 0;pHQ.PACKAGE_VERSION="0.47.1";pHQ.PACKAGE_NAME="@opentelemetry/instrumentation-koa"});var Ys=R((sHQ)=>{Object.defineProperty(sHQ,"__esModule",{value:!0});sHQ.AttributeNames=void 0;var tz0;(function(A){A.KOA_TYPE="koa.type",A.KOA_NAME="koa.name"})(tz0=sHQ.AttributeNames||(sHQ.AttributeNames={}))});var tHQ=R((aHQ)=>{Object.defineProperty(aHQ,"__esModule",{value:!0});aHQ.isLayerIgnored=aHQ.getMiddlewareMetadata=void 0;var rHQ=YT(),JT=Ys(),ez0=uB(),A20=(A,Q,B,Y)=>{var J;if(B)return{attributes:{[JT.AttributeNames.KOA_NAME]:Y===null||Y===void 0?void 0:Y.toString(),[JT.AttributeNames.KOA_TYPE]:rHQ.KoaLayerType.ROUTER,[ez0.SEMATTRS_HTTP_ROUTE]:Y===null||Y===void 0?void 0:Y.toString()},name:A._matchedRouteName||`router - ${Y}`};else return{attributes:{[JT.AttributeNames.KOA_NAME]:(J=Q.name)!==null&&J!==void 0?J:"middleware",[JT.AttributeNames.KOA_TYPE]:rHQ.KoaLayerType.MIDDLEWARE},name:`middleware - ${Q.name}`}};aHQ.getMiddlewareMetadata=A20;var Q20=(A,Q)=>{var B;return!!(Array.isArray(Q===null||Q===void 0?void 0:Q.ignoreLayersType)&&((B=Q===null||Q===void 0?void 0:Q.ignoreLayersType)===null||B===void 0?void 0:B.includes(A)))};aHQ.isLayerIgnored=Q20});var QDQ=R((eHQ)=>{Object.defineProperty(eHQ,"__esModule",{value:!0});eHQ.kLayerPatched=void 0;eHQ.kLayerPatched=Symbol("koa-layer-patched")});var ZDQ=R((FDQ)=>{Object.defineProperty(FDQ,"__esModule",{value:!0});FDQ.KoaInstrumentation=void 0;var U6=yA(),uL=NB(),BDQ=YT(),YDQ=nHQ(),JDQ=tHQ(),CDQ=MB(),XDQ=QDQ();class GDQ extends uL.InstrumentationBase{constructor(A={}){super(YDQ.PACKAGE_NAME,YDQ.PACKAGE_VERSION,A)}init(){return new uL.InstrumentationNodeModuleDefinition("koa",[">=2.0.0 <3"],(A)=>{let Q=A[Symbol.toStringTag]==="Module"?A.default:A;if(Q==null)return Q;if((0,uL.isWrapped)(Q.prototype.use))this._unwrap(Q.prototype,"use");return this._wrap(Q.prototype,"use",this._getKoaUsePatch.bind(this)),A},(A)=>{let Q=A[Symbol.toStringTag]==="Module"?A.default:A;if((0,uL.isWrapped)(Q.prototype.use))this._unwrap(Q.prototype,"use")})}_getKoaUsePatch(A){let Q=this;return function(Y){let J;if(Y.router)J=Q._patchRouterDispatch(Y);else J=Q._patchLayer(Y,!1);return A.apply(this,[J])}}_patchRouterDispatch(A){var Q;U6.diag.debug("Patching @koa/router dispatch");let B=A.router,Y=(Q=B===null||B===void 0?void 0:B.stack)!==null&&Q!==void 0?Q:[];for(let J of Y){let{path:C,stack:X}=J;for(let G=0;G{if(U6.trace.getSpan(U6.context.active())===void 0)return A(J,C);let G=(0,JDQ.getMiddlewareMetadata)(J,A,Q,B),F=this.tracer.startSpan(G.name,{attributes:G.attributes}),W=(0,CDQ.getRPCMetadata)(U6.context.active());if((W===null||W===void 0?void 0:W.type)===CDQ.RPCType.HTTP&&J._matchedRoute)W.route=J._matchedRoute.toString();let{requestHook:Z}=this.getConfig();if(Z)(0,uL.safeExecuteInTheMiddle)(()=>Z(F,{context:J,middlewareLayer:A,layerType:Y}),($)=>{if($)U6.diag.error("koa instrumentation: request hook failed",$)},!0);let U=U6.trace.setSpan(U6.context.active(),F);return U6.context.with(U,async()=>{try{return await A(J,C)}catch($){throw F.recordException($),$}finally{F.end()}})}}}FDQ.KoaInstrumentation=GDQ});var $DQ=R((DG)=>{var Y20=DG&&DG.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),Js=DG&&DG.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))Y20(Q,A,B)};Object.defineProperty(DG,"__esModule",{value:!0});Js(ZDQ(),DG);Js(YT(),DG);Js(Ys(),DG)});var Gs=R((DDQ)=>{Object.defineProperty(DDQ,"__esModule",{value:!0});DDQ.ConnectNames=DDQ.ConnectTypes=DDQ.AttributeNames=void 0;var X20;(function(A){A.CONNECT_TYPE="connect.type",A.CONNECT_NAME="connect.name"})(X20=DDQ.AttributeNames||(DDQ.AttributeNames={}));var G20;(function(A){A.MIDDLEWARE="middleware",A.REQUEST_HANDLER="request_handler"})(G20=DDQ.ConnectTypes||(DDQ.ConnectTypes={}));var F20;(function(A){A.MIDDLEWARE="middleware",A.REQUEST_HANDLER="request handler"})(F20=DDQ.ConnectNames||(DDQ.ConnectNames={}))});var qDQ=R((NDQ)=>{Object.defineProperty(NDQ,"__esModule",{value:!0});NDQ.PACKAGE_NAME=NDQ.PACKAGE_VERSION=void 0;NDQ.PACKAGE_VERSION="0.43.1";NDQ.PACKAGE_NAME="@opentelemetry/instrumentation-connect"});var RDQ=R((MDQ)=>{Object.defineProperty(MDQ,"__esModule",{value:!0});MDQ._LAYERS_STORE_PROPERTY=void 0;MDQ._LAYERS_STORE_PROPERTY=Symbol("opentelemetry.instrumentation-connect.request-route-stack")});var ODQ=R((wDQ)=>{Object.defineProperty(wDQ,"__esModule",{value:!0});wDQ.generateRoute=wDQ.replaceCurrentStackRoute=wDQ.addNewStackLayer=void 0;var Z20=yA(),xF=RDQ(),$20=(A)=>{if(Array.isArray(A[xF._LAYERS_STORE_PROPERTY])===!1)Object.defineProperty(A,xF._LAYERS_STORE_PROPERTY,{enumerable:!1,value:[]});A[xF._LAYERS_STORE_PROPERTY].push("/");let Q=A[xF._LAYERS_STORE_PROPERTY].length;return()=>{if(Q===A[xF._LAYERS_STORE_PROPERTY].length)A[xF._LAYERS_STORE_PROPERTY].pop();else Z20.diag.warn("Connect: Trying to pop the stack multiple time")}};wDQ.addNewStackLayer=$20;var U20=(A,Q)=>{if(Q)A[xF._LAYERS_STORE_PROPERTY].splice(-1,1,Q)};wDQ.replaceCurrentStackRoute=U20;var E20=(A)=>{return A[xF._LAYERS_STORE_PROPERTY].reduce((Q,B)=>Q.replace(/\/+$/,"")+B)};wDQ.generateRoute=E20});var vDQ=R((kDQ)=>{Object.defineProperty(kDQ,"__esModule",{value:!0});kDQ.ConnectInstrumentation=kDQ.ANONYMOUS_NAME=void 0;var I20=yA(),PDQ=MB(),SK=Gs(),TDQ=qDQ(),XT=NB(),H20=uB(),Fs=ODQ();kDQ.ANONYMOUS_NAME="anonymous";class SDQ extends XT.InstrumentationBase{constructor(A={}){super(TDQ.PACKAGE_NAME,TDQ.PACKAGE_VERSION,A)}init(){return[new XT.InstrumentationNodeModuleDefinition("connect",[">=3.0.0 <4"],(A)=>{return this._patchConstructor(A)})]}_patchApp(A){if(!(0,XT.isWrapped)(A.use))this._wrap(A,"use",this._patchUse.bind(this));if(!(0,XT.isWrapped)(A.handle))this._wrap(A,"handle",this._patchHandle.bind(this))}_patchConstructor(A){let Q=this;return function(...B){let Y=A.apply(this,B);return Q._patchApp(Y),Y}}_patchNext(A,Q){return function(Y){let J=A.apply(this,[Y]);return Q(),J}}_startSpan(A,Q){let B,Y,J;if(A)B=SK.ConnectTypes.REQUEST_HANDLER,J=SK.ConnectNames.REQUEST_HANDLER,Y=A;else B=SK.ConnectTypes.MIDDLEWARE,J=SK.ConnectNames.MIDDLEWARE,Y=Q.name||kDQ.ANONYMOUS_NAME;let C=`${J} - ${Y}`,X={attributes:{[H20.SEMATTRS_HTTP_ROUTE]:A.length>0?A:"/",[SK.AttributeNames.CONNECT_TYPE]:B,[SK.AttributeNames.CONNECT_NAME]:Y}};return this.tracer.startSpan(C,X)}_patchMiddleware(A,Q){let B=this,Y=Q.length===4;function J(){if(!B.isEnabled())return Q.apply(this,arguments);let[C,X,G]=Y?[1,2,3]:[0,1,2],F=arguments[C],W=arguments[X],Z=arguments[G];(0,Fs.replaceCurrentStackRoute)(F,A);let U=(0,PDQ.getRPCMetadata)(I20.context.active());if(A&&(U===null||U===void 0?void 0:U.type)===PDQ.RPCType.HTTP)U.route=(0,Fs.generateRoute)(F);let $="";if(A)$=`request handler - ${A}`;else $=`middleware - ${Q.name||kDQ.ANONYMOUS_NAME}`;let E=B._startSpan(A,Q);B._diag.debug("start span",$);let K=!1;function I(){if(!K)K=!0,B._diag.debug(`finishing span ${E.name}`),E.end();else B._diag.debug(`span ${E.name} - already finished`);W.removeListener("close",I)}return W.addListener("close",I),arguments[G]=B._patchNext(Z,I),Q.apply(this,arguments)}return Object.defineProperty(J,"length",{value:Q.length,writable:!1,configurable:!0}),J}_patchUse(A){let Q=this;return function(...B){let Y=B[B.length-1],J=B[B.length-2]||"";return B[B.length-1]=Q._patchMiddleware(J,Y),A.apply(this,B)}}_patchHandle(A){let Q=this;return function(){let[B,Y]=[0,2],J=arguments[B],C=arguments[Y],X=(0,Fs.addNewStackLayer)(J);if(typeof C==="function")arguments[Y]=Q._patchOut(C,X);return A.apply(this,arguments)}}_patchOut(A,Q){return function(...Y){return Q(),Reflect.apply(A,this,Y)}}}kDQ.ConnectInstrumentation=SDQ});var hDQ=R((fF)=>{var D20=fF&&fF.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),yDQ=fF&&fF.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))D20(Q,A,B)};Object.defineProperty(fF,"__esModule",{value:!0});yDQ(Gs(),fF);yDQ(vDQ(),fF)});var uDQ=R((bDQ)=>{Object.defineProperty(bDQ,"__esModule",{value:!0});bDQ.PACKAGE_NAME=bDQ.PACKAGE_VERSION=void 0;bDQ.PACKAGE_VERSION="0.44.1";bDQ.PACKAGE_NAME="@opentelemetry/instrumentation-knex"});var lDQ=R((dDQ)=>{Object.defineProperty(dDQ,"__esModule",{value:!0});dDQ.SUPPORTED_VERSIONS=dDQ.MODULE_NAME=void 0;dDQ.MODULE_NAME="knex";dDQ.SUPPORTED_VERSIONS=[">=0.22.0 <4",">=0.10.0 <0.18.0",">=0.19.0 <0.22.0",">=0.18.0 <0.19.0"]});var nDQ=R((iDQ)=>{Object.defineProperty(iDQ,"__esModule",{value:!0});iDQ.extractTableName=iDQ.limitLength=iDQ.getName=iDQ.mapSystem=iDQ.otelExceptionFromKnexError=iDQ.getFormatter=void 0;var pDQ=uB(),S20=(A)=>{if(A){if(A.client){if(A.client._formatQuery)return A.client._formatQuery.bind(A.client);else if(A.client.SqlString)return A.client.SqlString.format.bind(A.client.SqlString)}if(A.builder)return A.builder.toString.bind(A.builder)}return()=>""};iDQ.getFormatter=S20;function k20(A,Q){if(!(A&&A instanceof Error))return A;return{message:Q,code:A.code,stack:A.stack,name:A.name}}iDQ.otelExceptionFromKnexError=k20;var _20=new Map([["sqlite3",pDQ.DBSYSTEMVALUES_SQLITE],["pg",pDQ.DBSYSTEMVALUES_POSTGRESQL]]),v20=(A)=>{return _20.get(A)||A};iDQ.mapSystem=v20;var y20=(A,Q,B)=>{if(Q){if(B)return`${Q} ${A}.${B}`;return`${Q} ${A}`}return A};iDQ.getName=y20;var h20=(A,Q)=>{if(typeof A==="string"&&typeof Q==="number"&&0{var Q;let B=(Q=A===null||A===void 0?void 0:A._single)===null||Q===void 0?void 0:Q.table;if(typeof B==="object")return iDQ.extractTableName(B);return B};iDQ.extractTableName=g20});var ANQ=R((tDQ)=>{Object.defineProperty(tDQ,"__esModule",{value:!0});tDQ.KnexInstrumentation=void 0;var NG=yA(),sDQ=uDQ(),WT=lDQ(),dL=NB(),LG=uB(),kK=nDQ(),rDQ=Symbol("opentelemetry.instrumentation-knex.context"),aDQ={maxQueryLength:1022,requireParentSpan:!1};class oDQ extends dL.InstrumentationBase{constructor(A={}){super(sDQ.PACKAGE_NAME,sDQ.PACKAGE_VERSION,Object.assign(Object.assign({},aDQ),A))}setConfig(A={}){super.setConfig(Object.assign(Object.assign({},aDQ),A))}init(){let A=new dL.InstrumentationNodeModuleDefinition(WT.MODULE_NAME,WT.SUPPORTED_VERSIONS);return A.files.push(this.getClientNodeModuleFileInstrumentation("src"),this.getClientNodeModuleFileInstrumentation("lib"),this.getRunnerNodeModuleFileInstrumentation("src"),this.getRunnerNodeModuleFileInstrumentation("lib"),this.getRunnerNodeModuleFileInstrumentation("lib/execution")),A}getRunnerNodeModuleFileInstrumentation(A){return new dL.InstrumentationNodeModuleFile(`knex/${A}/runner.js`,WT.SUPPORTED_VERSIONS,(Q,B)=>{return this.ensureWrapped(Q.prototype,"query",this.createQueryWrapper(B)),Q},(Q,B)=>{return this._unwrap(Q.prototype,"query"),Q})}getClientNodeModuleFileInstrumentation(A){return new dL.InstrumentationNodeModuleFile(`knex/${A}/client.js`,WT.SUPPORTED_VERSIONS,(Q)=>{return this.ensureWrapped(Q.prototype,"queryBuilder",this.storeContext.bind(this)),this.ensureWrapped(Q.prototype,"schemaBuilder",this.storeContext.bind(this)),this.ensureWrapped(Q.prototype,"raw",this.storeContext.bind(this)),Q},(Q)=>{return this._unwrap(Q.prototype,"queryBuilder"),this._unwrap(Q.prototype,"schemaBuilder"),this._unwrap(Q.prototype,"raw"),Q})}createQueryWrapper(A){let Q=this;return function(Y){return function(C){var X,G,F,W,Z,U;let $=this.client.config,E=kK.extractTableName(this.builder),K=C===null||C===void 0?void 0:C.method,I=((X=$===null||$===void 0?void 0:$.connection)===null||X===void 0?void 0:X.filename)||((G=$===null||$===void 0?void 0:$.connection)===null||G===void 0?void 0:G.database),{maxQueryLength:V}=Q.getConfig(),H={"knex.version":A,[LG.SEMATTRS_DB_SYSTEM]:kK.mapSystem($.client),[LG.SEMATTRS_DB_SQL_TABLE]:E,[LG.SEMATTRS_DB_OPERATION]:K,[LG.SEMATTRS_DB_USER]:(F=$===null||$===void 0?void 0:$.connection)===null||F===void 0?void 0:F.user,[LG.SEMATTRS_DB_NAME]:I,[LG.SEMATTRS_NET_PEER_NAME]:(W=$===null||$===void 0?void 0:$.connection)===null||W===void 0?void 0:W.host,[LG.SEMATTRS_NET_PEER_PORT]:(Z=$===null||$===void 0?void 0:$.connection)===null||Z===void 0?void 0:Z.port,[LG.SEMATTRS_NET_TRANSPORT]:((U=$===null||$===void 0?void 0:$.connection)===null||U===void 0?void 0:U.filename)===":memory:"?"inproc":void 0};if(V)H[LG.SEMATTRS_DB_STATEMENT]=kK.limitLength(C===null||C===void 0?void 0:C.sql,V);let D=this.builder[rDQ]||NG.context.active(),L=NG.trace.getSpan(D),z=L&&NG.trace.isSpanContextValid(L.spanContext());if(Q._config.requireParentSpan&&!z)return Y.bind(this)(...arguments);let M=Q.tracer.startSpan(kK.getName(I,K,E),{kind:NG.SpanKind.CLIENT,attributes:H},D),N=NG.trace.setSpan(NG.context.active(),M);return NG.context.with(N,Y,this,...arguments).then((q)=>{return M.end(),q}).catch((q)=>{let P=kK.getFormatter(this)(C.sql,C.bindings||[]),_=q.message.replace(P+" - ",""),O=kK.otelExceptionFromKnexError(q,_);throw M.recordException(O),M.setStatus({code:NG.SpanStatusCode.ERROR,message:_}),M.end(),q})}}}storeContext(A){return function(){let B=A.apply(this,arguments);return Object.defineProperty(B,rDQ,{value:NG.context.active()}),B}}ensureWrapped(A,Q,B){if((0,dL.isWrapped)(A[Q]))this._unwrap(A,Q);this._wrap(A,Q,B)}}tDQ.KnexInstrumentation=oDQ});var BNQ=R((QNQ)=>{Object.defineProperty(QNQ,"__esModule",{value:!0})});var JNQ=R((bF)=>{var d20=bF&&bF.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),YNQ=bF&&bF.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))d20(Q,A,B)};Object.defineProperty(bF,"__esModule",{value:!0});YNQ(ANQ(),bF);YNQ(BNQ(),bF)});var ZNQ=R((FNQ)=>{Object.defineProperty(FNQ,"__esModule",{value:!0});FNQ.once=FNQ.getSpanName=void 0;function p20(A,Q,B,Y){if(A==="execBulkLoad"&&Y&&Q)return`${A} ${Y} ${Q}`;if(A==="callProcedure"){if(Q)return`${A} ${B} ${Q}`;return`${A} ${B}`}if(Q)return`${A} ${Q}`;return`${A}`}FNQ.getSpanName=p20;var i20=(A)=>{let Q=!1;return(...B)=>{if(Q)return;return Q=!0,A(...B)}};FNQ.once=i20});var ENQ=R(($NQ)=>{Object.defineProperty($NQ,"__esModule",{value:!0});$NQ.PACKAGE_NAME=$NQ.PACKAGE_VERSION=void 0;$NQ.PACKAGE_VERSION="0.18.1";$NQ.PACKAGE_NAME="@opentelemetry/instrumentation-tedious"});var LNQ=R((DNQ)=>{Object.defineProperty(DNQ,"__esModule",{value:!0});DNQ.TediousInstrumentation=void 0;var cL=yA(),r20=u("events"),ZT=NB(),mF=uB(),KNQ=ZNQ(),VNQ=ENQ(),HNQ=Symbol("opentelemetry.instrumentation-tedious.current-database"),INQ=["callProcedure","execSql","execSqlBatch","execBulkLoad","prepare","execute"];function $T(A){Object.defineProperty(this,HNQ,{value:A,writable:!0})}class UT extends ZT.InstrumentationBase{constructor(A={}){super(VNQ.PACKAGE_NAME,VNQ.PACKAGE_VERSION,A)}init(){return[new ZT.InstrumentationNodeModuleDefinition(UT.COMPONENT,[">=1.11.0 <20"],(A)=>{let Q=A.Connection.prototype;for(let B of INQ){if((0,ZT.isWrapped)(Q[B]))this._unwrap(Q,B);this._wrap(Q,B,this._patchQuery(B))}if((0,ZT.isWrapped)(Q.connect))this._unwrap(Q,"connect");return this._wrap(Q,"connect",this._patchConnect),A},(A)=>{if(A===void 0)return;let Q=A.Connection.prototype;for(let B of INQ)this._unwrap(Q,B);this._unwrap(Q,"connect")})]}_patchConnect(A){return function(){var B,Y;return $T.call(this,(Y=(B=this.config)===null||B===void 0?void 0:B.options)===null||Y===void 0?void 0:Y.database),this.removeListener("databaseChange",$T),this.on("databaseChange",$T),this.once("end",()=>{this.removeListener("databaseChange",$T)}),A.apply(this,arguments)}}_patchQuery(A){return(Q)=>{let B=this;function Y(J){var C,X,G,F,W,Z,U,$;if(!(J instanceof r20.EventEmitter))return B._diag.warn(`Unexpected invocation of patched ${A} method. Span not recorded`),Q.apply(this,arguments);let E=0,K=0,I=()=>K++,V=()=>E++,H=this[HNQ],D=((M)=>{var N,q;if(M.sqlTextOrProcedure==="sp_prepare"&&((q=(N=M.parametersByName)===null||N===void 0?void 0:N.stmt)===null||q===void 0?void 0:q.value))return M.parametersByName.stmt.value;return M.sqlTextOrProcedure})(J),L=B.tracer.startSpan((0,KNQ.getSpanName)(A,H,D,J.table),{kind:cL.SpanKind.CLIENT,attributes:{[mF.SEMATTRS_DB_SYSTEM]:mF.DBSYSTEMVALUES_MSSQL,[mF.SEMATTRS_DB_NAME]:H,[mF.SEMATTRS_NET_PEER_PORT]:(X=(C=this.config)===null||C===void 0?void 0:C.options)===null||X===void 0?void 0:X.port,[mF.SEMATTRS_NET_PEER_NAME]:(G=this.config)===null||G===void 0?void 0:G.server,[mF.SEMATTRS_DB_USER]:(W=(F=this.config)===null||F===void 0?void 0:F.userName)!==null&&W!==void 0?W:($=(U=(Z=this.config)===null||Z===void 0?void 0:Z.authentication)===null||U===void 0?void 0:U.options)===null||$===void 0?void 0:$.userName,[mF.SEMATTRS_DB_STATEMENT]:D,[mF.SEMATTRS_DB_SQL_TABLE]:J.table}}),z=(0,KNQ.once)((M)=>{if(J.removeListener("done",I),J.removeListener("doneInProc",I),J.removeListener("doneProc",V),J.removeListener("error",z),this.removeListener("end",z),L.setAttribute("tedious.procedure_count",E),L.setAttribute("tedious.statement_count",K),M)L.setStatus({code:cL.SpanStatusCode.ERROR,message:M.message});L.end()});if(J.on("done",I),J.on("doneInProc",I),J.on("doneProc",V),J.once("error",z),this.on("end",z),typeof J.callback==="function")B._wrap(J,"callback",B._patchCallbackQuery(z));else B._diag.error("Expected request.callback to be a function");return cL.context.with(cL.trace.setSpan(cL.context.active(),L),Q,this,...arguments)}return Object.defineProperty(Y,"length",{value:Q.length,writable:!1}),Y}}_patchCallbackQuery(A){return(Q)=>{return function(B,Y,J){return A(B),Q.apply(this,arguments)}}}}DNQ.TediousInstrumentation=UT;UT.COMPONENT="tedious"});var MNQ=R((qNQ)=>{Object.defineProperty(qNQ,"__esModule",{value:!0})});var RNQ=R((uF)=>{var a20=uF&&uF.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),zNQ=uF&&uF.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))a20(Q,A,B)};Object.defineProperty(uF,"__esModule",{value:!0});zNQ(LNQ(),uF);zNQ(MNQ(),uF)});var TNQ=R((ONQ)=>{Object.defineProperty(ONQ,"__esModule",{value:!0});ONQ.PACKAGE_NAME=ONQ.PACKAGE_VERSION=void 0;ONQ.PACKAGE_VERSION="0.43.1";ONQ.PACKAGE_NAME="@opentelemetry/instrumentation-generic-pool"});var yNQ=R((_NQ)=>{Object.defineProperty(_NQ,"__esModule",{value:!0});_NQ.GenericPoolInstrumentation=void 0;var _K=yA(),M$=NB(),SNQ=TNQ(),Ks="generic-pool";class kNQ extends M$.InstrumentationBase{constructor(A={}){super(SNQ.PACKAGE_NAME,SNQ.PACKAGE_VERSION,A);this._isDisabled=!1}init(){return[new M$.InstrumentationNodeModuleDefinition(Ks,[">=3.0.0 <4"],(A)=>{let Q=A.Pool;if((0,M$.isWrapped)(Q.prototype.acquire))this._unwrap(Q.prototype,"acquire");return this._wrap(Q.prototype,"acquire",this._acquirePatcher.bind(this)),A},(A)=>{let Q=A.Pool;return this._unwrap(Q.prototype,"acquire"),A}),new M$.InstrumentationNodeModuleDefinition(Ks,[">=2.4.0 <3"],(A)=>{let Q=A.Pool;if((0,M$.isWrapped)(Q.prototype.acquire))this._unwrap(Q.prototype,"acquire");return this._wrap(Q.prototype,"acquire",this._acquireWithCallbacksPatcher.bind(this)),A},(A)=>{let Q=A.Pool;return this._unwrap(Q.prototype,"acquire"),A}),new M$.InstrumentationNodeModuleDefinition(Ks,[">=2.0.0 <2.4"],(A)=>{if(this._isDisabled=!1,(0,M$.isWrapped)(A.Pool))this._unwrap(A,"Pool");return this._wrap(A,"Pool",this._poolWrapper.bind(this)),A},(A)=>{return this._isDisabled=!0,A})]}_acquirePatcher(A){let Q=this;return function(...Y){let J=_K.context.active(),C=Q.tracer.startSpan("generic-pool.acquire",{},J);return _K.context.with(_K.trace.setSpan(J,C),()=>{return A.call(this,...Y).then((X)=>{return C.end(),X},(X)=>{throw C.recordException(X),C.end(),X})})}}_poolWrapper(A){let Q=this;return function(){let Y=A.apply(this,arguments);return Q._wrap(Y,"acquire",Q._acquireWithCallbacksPatcher.bind(Q)),Y}}_acquireWithCallbacksPatcher(A){let Q=this;return function(Y,J){if(Q._isDisabled)return A.call(this,Y,J);let C=_K.context.active(),X=Q.tracer.startSpan("generic-pool.acquire",{},C);return _K.context.with(_K.trace.setSpan(C,X),()=>{A.call(this,(G,F)=>{if(X.end(),Y)return Y(G,F)},J)})}}}_NQ.GenericPoolInstrumentation=kNQ});var hNQ=R((z$)=>{var A30=z$&&z$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),Q30=z$&&z$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))A30(Q,A,B)};Object.defineProperty(z$,"__esModule",{value:!0});Q30(yNQ(),z$)});var bNQ=R((fNQ)=>{Object.defineProperty(fNQ,"__esModule",{value:!0})});var dNQ=R((mNQ)=>{Object.defineProperty(mNQ,"__esModule",{value:!0});mNQ.PACKAGE_NAME=mNQ.PACKAGE_VERSION=void 0;mNQ.PACKAGE_VERSION="0.16.1";mNQ.PACKAGE_NAME="@opentelemetry/instrumentation-dataloader"});var nNQ=R((pNQ)=>{Object.defineProperty(pNQ,"__esModule",{value:!0});pNQ.DataloaderInstrumentation=void 0;var R$=NB(),V9=yA(),cNQ=dNQ(),Is="dataloader";class lNQ extends R$.InstrumentationBase{constructor(A={}){super(cNQ.PACKAGE_NAME,cNQ.PACKAGE_VERSION,A)}init(){return[new R$.InstrumentationNodeModuleDefinition(Is,[">=2.0.0 <3"],(A)=>{return this._patchLoad(A.prototype),this._patchLoadMany(A.prototype),this._getPatchedConstructor(A)},(A)=>{if((0,R$.isWrapped)(A.prototype.load))this._unwrap(A.prototype,"load");if((0,R$.isWrapped)(A.prototype.loadMany))this._unwrap(A.prototype,"loadMany")})]}shouldCreateSpans(){let A=this.getConfig();return V9.trace.getSpan(V9.context.active())!==void 0||!A.requireParentSpan}getSpanName(A,Q){let B=A.name;if(B===void 0||B===null)return`${Is}.${Q}`;return`${Is}.${Q} ${B}`}_getPatchedConstructor(A){let Q=A.prototype,B=this;function Y(...J){let C=new A(...J);if(!B.isEnabled())return C;if((0,R$.isWrapped)(C._batchLoadFn))B._unwrap(C,"_batchLoadFn");return B._wrap(C,"_batchLoadFn",(X)=>{return function(...F){var W;if(!B.isEnabled()||!B.shouldCreateSpans())return X.call(this,...F);let Z=V9.context.active(),U=B.tracer.startSpan(B.getSpanName(C,"batch"),{links:(W=this._batch)===null||W===void 0?void 0:W.spanLinks},Z);return V9.context.with(V9.trace.setSpan(Z,U),()=>{return X.apply(this,F).then(($)=>{return U.end(),$}).catch(($)=>{throw U.recordException($),U.setStatus({code:V9.SpanStatusCode.ERROR,message:$.message}),U.end(),$})})}}),C}return Y.prototype=Q,Y}_patchLoad(A){if((0,R$.isWrapped)(A.load))this._unwrap(A,"load");this._wrap(A,"load",this._getPatchedLoad.bind(this))}_getPatchedLoad(A){let Q=this;return function(...Y){if(!Q.shouldCreateSpans())return A.call(this,...Y);let J=V9.context.active(),C=Q.tracer.startSpan(Q.getSpanName(this,"load"),{kind:V9.SpanKind.CLIENT},J);return V9.context.with(V9.trace.setSpan(J,C),()=>{let X=A.call(this,...Y).then((F)=>{return C.end(),F}).catch((F)=>{throw C.recordException(F),C.setStatus({code:V9.SpanStatusCode.ERROR,message:F.message}),C.end(),F}),G=this;if(G._batch){if(!G._batch.spanLinks)G._batch.spanLinks=[];G._batch.spanLinks.push({context:C.spanContext()})}return X})}}_patchLoadMany(A){if((0,R$.isWrapped)(A.loadMany))this._unwrap(A,"loadMany");this._wrap(A,"loadMany",this._getPatchedLoadMany.bind(this))}_getPatchedLoadMany(A){let Q=this;return function(...Y){if(!Q.shouldCreateSpans())return A.call(this,...Y);let J=V9.context.active(),C=Q.tracer.startSpan(Q.getSpanName(this,"loadMany"),{kind:V9.SpanKind.CLIENT},J);return V9.context.with(V9.trace.setSpan(J,C),()=>{return A.call(this,...Y).then((X)=>{return C.end(),X})})}}}pNQ.DataloaderInstrumentation=lNQ});var rNQ=R((dF)=>{var J30=dF&&dF.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),sNQ=dF&&dF.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))J30(Q,A,B)};Object.defineProperty(dF,"__esModule",{value:!0});sNQ(bNQ(),dF);sNQ(nNQ(),dF)});var Hs=R((ALQ)=>{Object.defineProperty(ALQ,"__esModule",{value:!0});ALQ.DEFAULT_CONFIG=ALQ.EndOperation=void 0;var G30;(function(A){A.AutoAck="auto ack",A.Ack="ack",A.AckAll="ackAll",A.Reject="reject",A.Nack="nack",A.NackAll="nackAll",A.ChannelClosed="channel closed",A.ChannelError="channel error",A.InstrumentationTimeout="instrumentation timeout"})(G30=ALQ.EndOperation||(ALQ.EndOperation={}));ALQ.DEFAULT_CONFIG={consumeTimeoutMs:60000,useLinksForConsume:!1}});var GLQ=R((CLQ)=>{Object.defineProperty(CLQ,"__esModule",{value:!0});CLQ.isConfirmChannelTracing=CLQ.unmarkConfirmChannelTracing=CLQ.markConfirmChannelTracing=CLQ.getConnectionAttributesFromUrl=CLQ.getConnectionAttributesFromServer=CLQ.normalizeExchange=CLQ.CONNECTION_ATTRIBUTES=CLQ.CHANNEL_CONSUME_TIMEOUT_TIMER=CLQ.CHANNEL_SPANS_NOT_ENDED=CLQ.MESSAGE_STORED_SPAN=void 0;var Ds=yA(),qG=uB();CLQ.MESSAGE_STORED_SPAN=Symbol("opentelemetry.amqplib.message.stored-span");CLQ.CHANNEL_SPANS_NOT_ENDED=Symbol("opentelemetry.amqplib.channel.spans-not-ended");CLQ.CHANNEL_CONSUME_TIMEOUT_TIMER=Symbol("opentelemetry.amqplib.channel.consumer-timeout-timer");CLQ.CONNECTION_ATTRIBUTES=Symbol("opentelemetry.amqplib.connection.attributes");var Ns=(0,Ds.createContextKey)("opentelemetry.amqplib.channel.is-confirm-channel"),F30=(A)=>A!==""?A:"";CLQ.normalizeExchange=F30;var W30=(A)=>{return A.replace(/:[^:@/]*@/,":***@")},BLQ=(A,Q)=>{return A||(Q==="AMQP"?5672:5671)},YLQ=(A)=>{let Q=A||"amqp";return(Q.endsWith(":")?Q.substring(0,Q.length-1):Q).toUpperCase()},JLQ=(A)=>{return A||"localhost"},vK=(A,Q,B,Y)=>{if(B)return{[Q]:B};else return Ds.diag.error(`amqplib instrumentation: could not extract connection attribute ${Y} from user supplied url`,{url:A}),{}},Z30=(A)=>{var Q,B;let Y=(B=(Q=A.serverProperties.product)===null||Q===void 0?void 0:Q.toLowerCase)===null||B===void 0?void 0:B.call(Q);if(Y)return{[qG.SEMATTRS_MESSAGING_SYSTEM]:Y};else return{}};CLQ.getConnectionAttributesFromServer=Z30;var $30=(A)=>{let Q={[qG.SEMATTRS_MESSAGING_PROTOCOL_VERSION]:"0.9.1"};if(A=A||"amqp://localhost",typeof A==="object"){let B=A,Y=YLQ(B===null||B===void 0?void 0:B.protocol);Object.assign(Q,Object.assign({},vK(A,qG.SEMATTRS_MESSAGING_PROTOCOL,Y,"protocol")));let J=JLQ(B===null||B===void 0?void 0:B.hostname);Object.assign(Q,Object.assign({},vK(A,qG.SEMATTRS_NET_PEER_NAME,J,"hostname")));let C=BLQ(B.port,Y);Object.assign(Q,Object.assign({},vK(A,qG.SEMATTRS_NET_PEER_PORT,C,"port")))}else{let B=W30(A);Q[qG.SEMATTRS_MESSAGING_URL]=B;try{let Y=new URL(B),J=YLQ(Y.protocol);Object.assign(Q,Object.assign({},vK(B,qG.SEMATTRS_MESSAGING_PROTOCOL,J,"protocol")));let C=JLQ(Y.hostname);Object.assign(Q,Object.assign({},vK(B,qG.SEMATTRS_NET_PEER_NAME,C,"hostname")));let X=BLQ(Y.port?parseInt(Y.port):void 0,J);Object.assign(Q,Object.assign({},vK(B,qG.SEMATTRS_NET_PEER_PORT,X,"port")))}catch(Y){Ds.diag.error("amqplib instrumentation: error while extracting connection details from connection url",{censoredUrl:B,err:Y})}}return Q};CLQ.getConnectionAttributesFromUrl=$30;var U30=(A)=>{return A.setValue(Ns,!0)};CLQ.markConfirmChannelTracing=U30;var E30=(A)=>{return A.deleteValue(Ns)};CLQ.unmarkConfirmChannelTracing=E30;var K30=(A)=>{return A.getValue(Ns)===!0};CLQ.isConfirmChannelTracing=K30});var ZLQ=R((FLQ)=>{Object.defineProperty(FLQ,"__esModule",{value:!0});FLQ.PACKAGE_NAME=FLQ.PACKAGE_VERSION=void 0;FLQ.PACKAGE_VERSION="0.46.1";FLQ.PACKAGE_NAME="@opentelemetry/instrumentation-amqplib"});var VLQ=R((ELQ)=>{Object.defineProperty(ELQ,"__esModule",{value:!0});ELQ.AmqplibInstrumentation=void 0;var f0=yA(),VT=MB(),fB=NB(),n9=uB(),I9=Hs(),i0=GLQ(),$LQ=ZLQ(),IT=[">=0.5.5 <1"];class ULQ extends fB.InstrumentationBase{constructor(A={}){super($LQ.PACKAGE_NAME,$LQ.PACKAGE_VERSION,Object.assign(Object.assign({},I9.DEFAULT_CONFIG),A))}setConfig(A={}){super.setConfig(Object.assign(Object.assign({},I9.DEFAULT_CONFIG),A))}init(){let A=new fB.InstrumentationNodeModuleFile("amqplib/lib/channel_model.js",IT,this.patchChannelModel.bind(this),this.unpatchChannelModel.bind(this)),Q=new fB.InstrumentationNodeModuleFile("amqplib/lib/callback_model.js",IT,this.patchChannelModel.bind(this),this.unpatchChannelModel.bind(this)),B=new fB.InstrumentationNodeModuleFile("amqplib/lib/connect.js",IT,this.patchConnect.bind(this),this.unpatchConnect.bind(this));return new fB.InstrumentationNodeModuleDefinition("amqplib",IT,void 0,void 0,[A,B,Q])}patchConnect(A){if(A=this.unpatchConnect(A),!(0,fB.isWrapped)(A.connect))this._wrap(A,"connect",this.getConnectPatch.bind(this));return A}unpatchConnect(A){if((0,fB.isWrapped)(A.connect))this._unwrap(A,"connect");return A}patchChannelModel(A,Q){if(!(0,fB.isWrapped)(A.Channel.prototype.publish))this._wrap(A.Channel.prototype,"publish",this.getPublishPatch.bind(this,Q));if(!(0,fB.isWrapped)(A.Channel.prototype.consume))this._wrap(A.Channel.prototype,"consume",this.getConsumePatch.bind(this,Q));if(!(0,fB.isWrapped)(A.Channel.prototype.ack))this._wrap(A.Channel.prototype,"ack",this.getAckPatch.bind(this,!1,I9.EndOperation.Ack));if(!(0,fB.isWrapped)(A.Channel.prototype.nack))this._wrap(A.Channel.prototype,"nack",this.getAckPatch.bind(this,!0,I9.EndOperation.Nack));if(!(0,fB.isWrapped)(A.Channel.prototype.reject))this._wrap(A.Channel.prototype,"reject",this.getAckPatch.bind(this,!0,I9.EndOperation.Reject));if(!(0,fB.isWrapped)(A.Channel.prototype.ackAll))this._wrap(A.Channel.prototype,"ackAll",this.getAckAllPatch.bind(this,!1,I9.EndOperation.AckAll));if(!(0,fB.isWrapped)(A.Channel.prototype.nackAll))this._wrap(A.Channel.prototype,"nackAll",this.getAckAllPatch.bind(this,!0,I9.EndOperation.NackAll));if(!(0,fB.isWrapped)(A.Channel.prototype.emit))this._wrap(A.Channel.prototype,"emit",this.getChannelEmitPatch.bind(this));if(!(0,fB.isWrapped)(A.ConfirmChannel.prototype.publish))this._wrap(A.ConfirmChannel.prototype,"publish",this.getConfirmedPublishPatch.bind(this,Q));return A}unpatchChannelModel(A){if((0,fB.isWrapped)(A.Channel.prototype.publish))this._unwrap(A.Channel.prototype,"publish");if((0,fB.isWrapped)(A.Channel.prototype.consume))this._unwrap(A.Channel.prototype,"consume");if((0,fB.isWrapped)(A.Channel.prototype.ack))this._unwrap(A.Channel.prototype,"ack");if((0,fB.isWrapped)(A.Channel.prototype.nack))this._unwrap(A.Channel.prototype,"nack");if((0,fB.isWrapped)(A.Channel.prototype.reject))this._unwrap(A.Channel.prototype,"reject");if((0,fB.isWrapped)(A.Channel.prototype.ackAll))this._unwrap(A.Channel.prototype,"ackAll");if((0,fB.isWrapped)(A.Channel.prototype.nackAll))this._unwrap(A.Channel.prototype,"nackAll");if((0,fB.isWrapped)(A.Channel.prototype.emit))this._unwrap(A.Channel.prototype,"emit");if((0,fB.isWrapped)(A.ConfirmChannel.prototype.publish))this._unwrap(A.ConfirmChannel.prototype,"publish");return A}getConnectPatch(A){return function(B,Y,J){return A.call(this,B,Y,function(C,X){if(C==null){let G=(0,i0.getConnectionAttributesFromUrl)(B),F=(0,i0.getConnectionAttributesFromServer)(X);X[i0.CONNECTION_ATTRIBUTES]=Object.assign(Object.assign({},G),F)}J.apply(this,arguments)})}}getChannelEmitPatch(A){let Q=this;return function(Y){if(Y==="close"){Q.endAllSpansOnChannel(this,!0,I9.EndOperation.ChannelClosed,void 0);let J=this[i0.CHANNEL_CONSUME_TIMEOUT_TIMER];if(J)clearInterval(J);this[i0.CHANNEL_CONSUME_TIMEOUT_TIMER]=void 0}else if(Y==="error")Q.endAllSpansOnChannel(this,!0,I9.EndOperation.ChannelError,void 0);return A.apply(this,arguments)}}getAckAllPatch(A,Q,B){let Y=this;return function(C){return Y.endAllSpansOnChannel(this,A,Q,C),B.apply(this,arguments)}}getAckPatch(A,Q,B){let Y=this;return function(C,X,G){var F;let W=this,Z=Q===I9.EndOperation.Reject?X:G,U=(F=W[i0.CHANNEL_SPANS_NOT_ENDED])!==null&&F!==void 0?F:[],$=U.findIndex((E)=>E.msg===C);if($<0)Y.endConsumerSpan(C,A,Q,Z);else if(Q!==I9.EndOperation.Reject&&X){for(let E=0;E<=$;E++)Y.endConsumerSpan(U[E].msg,A,Q,Z);U.splice(0,$+1)}else Y.endConsumerSpan(C,A,Q,Z),U.splice($,1);return B.apply(this,arguments)}}getConsumePatch(A,Q){let B=this;return function(J,C,X){let G=this;if(!Object.prototype.hasOwnProperty.call(G,i0.CHANNEL_SPANS_NOT_ENDED)){let{consumeTimeoutMs:W}=B.getConfig();if(W){let Z=setInterval(()=>{B.checkConsumeTimeoutOnChannel(G)},W);Z.unref(),G[i0.CHANNEL_CONSUME_TIMEOUT_TIMER]=Z}G[i0.CHANNEL_SPANS_NOT_ENDED]=[]}let F=function(W){var Z,U,$,E,K;if(!W)return C.call(this,W);let I=(Z=W.properties.headers)!==null&&Z!==void 0?Z:{},V=f0.propagation.extract(f0.ROOT_CONTEXT,I),H=(U=W.fields)===null||U===void 0?void 0:U.exchange,D;if(B._config.useLinksForConsume){let N=V?($=f0.trace.getSpan(V))===null||$===void 0?void 0:$.spanContext():void 0;if(V=void 0,N)D=[{context:N}]}let L=B.tracer.startSpan(`${J} process`,{kind:f0.SpanKind.CONSUMER,attributes:Object.assign(Object.assign({},(E=G===null||G===void 0?void 0:G.connection)===null||E===void 0?void 0:E[i0.CONNECTION_ATTRIBUTES]),{[n9.SEMATTRS_MESSAGING_DESTINATION]:H,[n9.SEMATTRS_MESSAGING_DESTINATION_KIND]:n9.MESSAGINGDESTINATIONKINDVALUES_TOPIC,[n9.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY]:(K=W.fields)===null||K===void 0?void 0:K.routingKey,[n9.SEMATTRS_MESSAGING_OPERATION]:n9.MESSAGINGOPERATIONVALUES_PROCESS,[n9.SEMATTRS_MESSAGING_MESSAGE_ID]:W===null||W===void 0?void 0:W.properties.messageId,[n9.SEMATTRS_MESSAGING_CONVERSATION_ID]:W===null||W===void 0?void 0:W.properties.correlationId}),links:D},V),{consumeHook:z}=B.getConfig();if(z)(0,fB.safeExecuteInTheMiddle)(()=>z(L,{moduleVersion:A,msg:W}),(N)=>{if(N)f0.diag.error("amqplib instrumentation: consumerHook error",N)},!0);if(!(X===null||X===void 0?void 0:X.noAck))G[i0.CHANNEL_SPANS_NOT_ENDED].push({msg:W,timeOfConsume:(0,VT.hrTime)()}),W[i0.MESSAGE_STORED_SPAN]=L;let M=V?V:f0.ROOT_CONTEXT;if(f0.context.with(f0.trace.setSpan(M,L),()=>{C.call(this,W)}),X===null||X===void 0?void 0:X.noAck)B.callConsumeEndHook(L,W,!1,I9.EndOperation.AutoAck),L.end()};return arguments[1]=F,Q.apply(this,arguments)}}getConfirmedPublishPatch(A,Q){let B=this;return function(J,C,X,G,F){let W=this,{span:Z,modifiedOptions:U}=B.createPublishSpan(B,J,C,W,G),{publishHook:$}=B.getConfig();if($)(0,fB.safeExecuteInTheMiddle)(()=>$(Z,{moduleVersion:A,exchange:J,routingKey:C,content:X,options:U,isConfirmChannel:!0}),(V)=>{if(V)f0.diag.error("amqplib instrumentation: publishHook error",V)},!0);let E=function(V,H){try{F===null||F===void 0||F.call(this,V,H)}finally{let{publishConfirmHook:D}=B.getConfig();if(D)(0,fB.safeExecuteInTheMiddle)(()=>D(Z,{moduleVersion:A,exchange:J,routingKey:C,content:X,options:G,isConfirmChannel:!0,confirmError:V}),(L)=>{if(L)f0.diag.error("amqplib instrumentation: publishConfirmHook error",L)},!0);if(V)Z.setStatus({code:f0.SpanStatusCode.ERROR,message:"message confirmation has been nack'ed"});Z.end()}},K=(0,i0.markConfirmChannelTracing)(f0.context.active()),I=[...arguments];return I[3]=U,I[4]=f0.context.bind((0,i0.unmarkConfirmChannelTracing)(f0.trace.setSpan(K,Z)),E),f0.context.with(K,Q.bind(this,...I))}}getPublishPatch(A,Q){let B=this;return function(J,C,X,G){if((0,i0.isConfirmChannelTracing)(f0.context.active()))return Q.apply(this,arguments);else{let F=this,{span:W,modifiedOptions:Z}=B.createPublishSpan(B,J,C,F,G),{publishHook:U}=B.getConfig();if(U)(0,fB.safeExecuteInTheMiddle)(()=>U(W,{moduleVersion:A,exchange:J,routingKey:C,content:X,options:Z,isConfirmChannel:!1}),(K)=>{if(K)f0.diag.error("amqplib instrumentation: publishHook error",K)},!0);let $=[...arguments];$[3]=Z;let E=Q.apply(this,$);return W.end(),E}}}createPublishSpan(A,Q,B,Y,J){var C;let X=(0,i0.normalizeExchange)(Q),G=A.tracer.startSpan(`publish ${X}`,{kind:f0.SpanKind.PRODUCER,attributes:Object.assign(Object.assign({},Y.connection[i0.CONNECTION_ATTRIBUTES]),{[n9.SEMATTRS_MESSAGING_DESTINATION]:Q,[n9.SEMATTRS_MESSAGING_DESTINATION_KIND]:n9.MESSAGINGDESTINATIONKINDVALUES_TOPIC,[n9.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY]:B,[n9.SEMATTRS_MESSAGING_MESSAGE_ID]:J===null||J===void 0?void 0:J.messageId,[n9.SEMATTRS_MESSAGING_CONVERSATION_ID]:J===null||J===void 0?void 0:J.correlationId})}),F=J!==null&&J!==void 0?J:{};return F.headers=(C=F.headers)!==null&&C!==void 0?C:{},f0.propagation.inject(f0.trace.setSpan(f0.context.active(),G),F.headers),{span:G,modifiedOptions:F}}endConsumerSpan(A,Q,B,Y){let J=A[i0.MESSAGE_STORED_SPAN];if(!J)return;if(Q!==!1)J.setStatus({code:f0.SpanStatusCode.ERROR,message:B!==I9.EndOperation.ChannelClosed&&B!==I9.EndOperation.ChannelError?`${B} called on message${Y===!0?" with requeue":Y===!1?" without requeue":""}`:B});this.callConsumeEndHook(J,A,Q,B),J.end(),A[i0.MESSAGE_STORED_SPAN]=void 0}endAllSpansOnChannel(A,Q,B,Y){var J;((J=A[i0.CHANNEL_SPANS_NOT_ENDED])!==null&&J!==void 0?J:[]).forEach((X)=>{this.endConsumerSpan(X.msg,Q,B,Y)}),A[i0.CHANNEL_SPANS_NOT_ENDED]=[]}callConsumeEndHook(A,Q,B,Y){let{consumeEndHook:J}=this.getConfig();if(!J)return;(0,fB.safeExecuteInTheMiddle)(()=>J(A,{msg:Q,rejected:B,endOperation:Y}),(C)=>{if(C)f0.diag.error("amqplib instrumentation: consumerEndHook error",C)},!0)}checkConsumeTimeoutOnChannel(A){var Q;let B=(0,VT.hrTime)(),Y=(Q=A[i0.CHANNEL_SPANS_NOT_ENDED])!==null&&Q!==void 0?Q:[],J,{consumeTimeoutMs:C}=this.getConfig();for(J=0;J{var w30=cF&&cF.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),ILQ=cF&&cF.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))w30(Q,A,B)};Object.defineProperty(cF,"__esModule",{value:!0});ILQ(VLQ(),cF);ILQ(Hs(),cF)});var zs=R((wLQ)=>{Object.defineProperty(wLQ,"__esModule",{value:!0});wLQ.AbstractAsyncHooksContextManager=void 0;var x30=u("events"),f30=["addListener","on","once","prependListener","prependOnceListener"];class RLQ{constructor(){this._kOtListeners=Symbol("OtListeners"),this._wrapped=!1}bind(A,Q){if(Q instanceof x30.EventEmitter)return this._bindEventEmitter(A,Q);if(typeof Q==="function")return this._bindFunction(A,Q);return Q}_bindFunction(A,Q){let B=this,Y=function(...J){return B.with(A,()=>Q.apply(this,J))};return Object.defineProperty(Y,"length",{enumerable:!1,configurable:!0,writable:!1,value:Q.length}),Y}_bindEventEmitter(A,Q){if(this._getPatchMap(Q)!==void 0)return Q;if(this._createPatchMap(Q),f30.forEach((Y)=>{if(Q[Y]===void 0)return;Q[Y]=this._patchAddListener(Q,Q[Y],A)}),typeof Q.removeListener==="function")Q.removeListener=this._patchRemoveListener(Q,Q.removeListener);if(typeof Q.off==="function")Q.off=this._patchRemoveListener(Q,Q.off);if(typeof Q.removeAllListeners==="function")Q.removeAllListeners=this._patchRemoveAllListeners(Q,Q.removeAllListeners);return Q}_patchRemoveListener(A,Q){let B=this;return function(Y,J){var C;let X=(C=B._getPatchMap(A))===null||C===void 0?void 0:C[Y];if(X===void 0)return Q.call(this,Y,J);let G=X.get(J);return Q.call(this,Y,G||J)}}_patchRemoveAllListeners(A,Q){let B=this;return function(Y){let J=B._getPatchMap(A);if(J!==void 0){if(arguments.length===0)B._createPatchMap(A);else if(J[Y]!==void 0)delete J[Y]}return Q.apply(this,arguments)}}_patchAddListener(A,Q,B){let Y=this;return function(J,C){if(Y._wrapped)return Q.call(this,J,C);let X=Y._getPatchMap(A);if(X===void 0)X=Y._createPatchMap(A);let G=X[J];if(G===void 0)G=new WeakMap,X[J]=G;let F=Y.bind(B,C);G.set(C,F),Y._wrapped=!0;try{return Q.call(this,J,F)}finally{Y._wrapped=!1}}}_createPatchMap(A){let Q=Object.create(null);return A[this._kOtListeners]=Q,Q}_getPatchMap(A){return A[this._kOtListeners]}}wLQ.AbstractAsyncHooksContextManager=RLQ});var SLQ=R((PLQ)=>{Object.defineProperty(PLQ,"__esModule",{value:!0});PLQ.AsyncHooksContextManager=void 0;var b30=yA(),m30=u("async_hooks"),u30=zs();class OLQ extends u30.AbstractAsyncHooksContextManager{constructor(){super();this._contexts=new Map,this._stack=[],this._asyncHook=m30.createHook({init:this._init.bind(this),before:this._before.bind(this),after:this._after.bind(this),destroy:this._destroy.bind(this),promiseResolve:this._destroy.bind(this)})}active(){var A;return(A=this._stack[this._stack.length-1])!==null&&A!==void 0?A:b30.ROOT_CONTEXT}with(A,Q,B,...Y){this._enterContext(A);try{return Q.call(B,...Y)}finally{this._exitContext()}}enable(){return this._asyncHook.enable(),this}disable(){return this._asyncHook.disable(),this._contexts.clear(),this._stack=[],this}_init(A,Q){if(Q==="TIMERWRAP")return;let B=this._stack[this._stack.length-1];if(B!==void 0)this._contexts.set(A,B)}_destroy(A){this._contexts.delete(A)}_before(A){let Q=this._contexts.get(A);if(Q!==void 0)this._enterContext(Q)}_after(){this._exitContext()}_enterContext(A){this._stack.push(A)}_exitContext(){this._stack.pop()}}PLQ.AsyncHooksContextManager=OLQ});var yLQ=R((_LQ)=>{Object.defineProperty(_LQ,"__esModule",{value:!0});_LQ.AsyncLocalStorageContextManager=void 0;var d30=yA(),c30=u("async_hooks"),l30=zs();class kLQ extends l30.AbstractAsyncHooksContextManager{constructor(){super();this._asyncLocalStorage=new c30.AsyncLocalStorage}active(){var A;return(A=this._asyncLocalStorage.getStore())!==null&&A!==void 0?A:d30.ROOT_CONTEXT}with(A,Q,B,...Y){let J=B==null?Q:Q.bind(B);return this._asyncLocalStorage.run(A,J,...Y)}enable(){return this}disable(){return this._asyncLocalStorage.disable(),this}}_LQ.AsyncLocalStorageContextManager=kLQ});var hLQ=R((qT)=>{Object.defineProperty(qT,"__esModule",{value:!0});qT.AsyncLocalStorageContextManager=qT.AsyncHooksContextManager=void 0;var p30=SLQ();Object.defineProperty(qT,"AsyncHooksContextManager",{enumerable:!0,get:function(){return p30.AsyncHooksContextManager}});var i30=yLQ();Object.defineProperty(qT,"AsyncLocalStorageContextManager",{enumerable:!0,get:function(){return i30.AsyncLocalStorageContextManager}})});var Q0=R((PiY,YqQ)=>{YqQ.exports={kClose:Symbol("close"),kDestroy:Symbol("destroy"),kDispatch:Symbol("dispatch"),kUrl:Symbol("url"),kWriting:Symbol("writing"),kResuming:Symbol("resuming"),kQueue:Symbol("queue"),kConnect:Symbol("connect"),kConnecting:Symbol("connecting"),kKeepAliveDefaultTimeout:Symbol("default keep alive timeout"),kKeepAliveMaxTimeout:Symbol("max keep alive timeout"),kKeepAliveTimeoutThreshold:Symbol("keep alive timeout threshold"),kKeepAliveTimeoutValue:Symbol("keep alive timeout"),kKeepAlive:Symbol("keep alive"),kHeadersTimeout:Symbol("headers timeout"),kBodyTimeout:Symbol("body timeout"),kServerName:Symbol("server name"),kLocalAddress:Symbol("local address"),kHost:Symbol("host"),kNoRef:Symbol("no ref"),kBodyUsed:Symbol("used"),kBody:Symbol("abstracted request body"),kRunning:Symbol("running"),kBlocking:Symbol("blocking"),kPending:Symbol("pending"),kSize:Symbol("size"),kBusy:Symbol("busy"),kQueued:Symbol("queued"),kFree:Symbol("free"),kConnected:Symbol("connected"),kClosed:Symbol("closed"),kNeedDrain:Symbol("need drain"),kReset:Symbol("reset"),kDestroyed:Symbol.for("nodejs.stream.destroyed"),kResume:Symbol("resume"),kOnError:Symbol("on error"),kMaxHeadersSize:Symbol("max headers size"),kRunningIdx:Symbol("running index"),kPendingIdx:Symbol("pending index"),kError:Symbol("error"),kClients:Symbol("clients"),kClient:Symbol("client"),kParser:Symbol("parser"),kOnDestroyed:Symbol("destroy callbacks"),kPipelining:Symbol("pipelining"),kSocket:Symbol("socket"),kHostHeader:Symbol("host header"),kConnector:Symbol("connector"),kStrictContentLength:Symbol("strict content length"),kMaxRedirections:Symbol("maxRedirections"),kMaxRequests:Symbol("maxRequestsPerClient"),kProxy:Symbol("proxy agent options"),kCounter:Symbol("socket request counter"),kMaxResponseSize:Symbol("max response size"),kHTTP2Session:Symbol("http2Session"),kHTTP2SessionState:Symbol("http2Session state"),kRetryHandlerDefaultRetry:Symbol("retry agent default retry"),kConstruct:Symbol("constructable"),kListeners:Symbol("listeners"),kHTTPContext:Symbol("http context"),kMaxConcurrentStreams:Symbol("max concurrent streams"),kNoProxyAgent:Symbol("no proxy agent"),kHttpProxyAgent:Symbol("http proxy agent"),kHttpsProxyAgent:Symbol("https proxy agent")}});var ms=R((TiY,GqQ)=>{var hK=0,vs=1000,ys=(vs>>1)-1,lF,hs=Symbol("kFastTimer"),zG=[],gs=-2,xs=-1,CqQ=0,JqQ=1;function fs(){hK+=ys;let A=0,Q=zG.length;while(A=B._idleStart+B._idleTimeout)B._state=xs,B._idleStart=-1,B._onTimeout(B._timerArg);if(B._state===xs){if(B._state=gs,--Q!==0)zG[A]=zG[Q]}else++A}if(zG.length=Q,zG.length!==0)XqQ()}function XqQ(){if(lF?.refresh)lF.refresh();else clearTimeout(lF),lF=setTimeout(fs,ys),lF?.unref()}class bs{[hs]=!0;_state=gs;_idleTimeout=-1;_idleStart=-1;_onTimeout;_timerArg;constructor(A,Q,B){this._onTimeout=A,this._idleTimeout=Q,this._timerArg=B,this.refresh()}refresh(){if(this._state===gs)zG.push(this);if(!lF||zG.length===1)XqQ();this._state=CqQ}clear(){this._state=xs,this._idleStart=-1}}GqQ.exports={setTimeout(A,Q,B){return Q<=vs?setTimeout(A,Q,B):new bs(A,Q,B)},clearTimeout(A){if(A[hs])A.clear();else clearTimeout(A)},setFastTimeout(A,Q,B){return new bs(A,Q,B)},clearFastTimeout(A){A.clear()},now(){return hK},tick(A=0){hK+=A-vs+1,fs(),fs()},reset(){hK=0,zG.length=0,clearTimeout(lF),lF=null},kFastTimer:hs}});var QB=R((SiY,tqQ)=>{var FqQ=Symbol.for("undici.error.UND_ERR");class n0 extends Error{constructor(A,Q){super(A,Q);this.name="UndiciError",this.code="UND_ERR"}static[Symbol.hasInstance](A){return A&&A[FqQ]===!0}get[FqQ](){return!0}}var WqQ=Symbol.for("undici.error.UND_ERR_CONNECT_TIMEOUT");class kqQ extends n0{constructor(A){super(A);this.name="ConnectTimeoutError",this.message=A||"Connect Timeout Error",this.code="UND_ERR_CONNECT_TIMEOUT"}static[Symbol.hasInstance](A){return A&&A[WqQ]===!0}get[WqQ](){return!0}}var ZqQ=Symbol.for("undici.error.UND_ERR_HEADERS_TIMEOUT");class _qQ extends n0{constructor(A){super(A);this.name="HeadersTimeoutError",this.message=A||"Headers Timeout Error",this.code="UND_ERR_HEADERS_TIMEOUT"}static[Symbol.hasInstance](A){return A&&A[ZqQ]===!0}get[ZqQ](){return!0}}var $qQ=Symbol.for("undici.error.UND_ERR_HEADERS_OVERFLOW");class vqQ extends n0{constructor(A){super(A);this.name="HeadersOverflowError",this.message=A||"Headers Overflow Error",this.code="UND_ERR_HEADERS_OVERFLOW"}static[Symbol.hasInstance](A){return A&&A[$qQ]===!0}get[$qQ](){return!0}}var UqQ=Symbol.for("undici.error.UND_ERR_BODY_TIMEOUT");class yqQ extends n0{constructor(A){super(A);this.name="BodyTimeoutError",this.message=A||"Body Timeout Error",this.code="UND_ERR_BODY_TIMEOUT"}static[Symbol.hasInstance](A){return A&&A[UqQ]===!0}get[UqQ](){return!0}}var EqQ=Symbol.for("undici.error.UND_ERR_INVALID_ARG");class hqQ extends n0{constructor(A){super(A);this.name="InvalidArgumentError",this.message=A||"Invalid Argument Error",this.code="UND_ERR_INVALID_ARG"}static[Symbol.hasInstance](A){return A&&A[EqQ]===!0}get[EqQ](){return!0}}var KqQ=Symbol.for("undici.error.UND_ERR_INVALID_RETURN_VALUE");class gqQ extends n0{constructor(A){super(A);this.name="InvalidReturnValueError",this.message=A||"Invalid Return Value Error",this.code="UND_ERR_INVALID_RETURN_VALUE"}static[Symbol.hasInstance](A){return A&&A[KqQ]===!0}get[KqQ](){return!0}}var VqQ=Symbol.for("undici.error.UND_ERR_ABORT");class us extends n0{constructor(A){super(A);this.name="AbortError",this.message=A||"The operation was aborted",this.code="UND_ERR_ABORT"}static[Symbol.hasInstance](A){return A&&A[VqQ]===!0}get[VqQ](){return!0}}var IqQ=Symbol.for("undici.error.UND_ERR_ABORTED");class xqQ extends us{constructor(A){super(A);this.name="AbortError",this.message=A||"Request aborted",this.code="UND_ERR_ABORTED"}static[Symbol.hasInstance](A){return A&&A[IqQ]===!0}get[IqQ](){return!0}}var HqQ=Symbol.for("undici.error.UND_ERR_INFO");class fqQ extends n0{constructor(A){super(A);this.name="InformationalError",this.message=A||"Request information",this.code="UND_ERR_INFO"}static[Symbol.hasInstance](A){return A&&A[HqQ]===!0}get[HqQ](){return!0}}var DqQ=Symbol.for("undici.error.UND_ERR_REQ_CONTENT_LENGTH_MISMATCH");class bqQ extends n0{constructor(A){super(A);this.name="RequestContentLengthMismatchError",this.message=A||"Request body length does not match content-length header",this.code="UND_ERR_REQ_CONTENT_LENGTH_MISMATCH"}static[Symbol.hasInstance](A){return A&&A[DqQ]===!0}get[DqQ](){return!0}}var NqQ=Symbol.for("undici.error.UND_ERR_RES_CONTENT_LENGTH_MISMATCH");class mqQ extends n0{constructor(A){super(A);this.name="ResponseContentLengthMismatchError",this.message=A||"Response body length does not match content-length header",this.code="UND_ERR_RES_CONTENT_LENGTH_MISMATCH"}static[Symbol.hasInstance](A){return A&&A[NqQ]===!0}get[NqQ](){return!0}}var LqQ=Symbol.for("undici.error.UND_ERR_DESTROYED");class uqQ extends n0{constructor(A){super(A);this.name="ClientDestroyedError",this.message=A||"The client is destroyed",this.code="UND_ERR_DESTROYED"}static[Symbol.hasInstance](A){return A&&A[LqQ]===!0}get[LqQ](){return!0}}var qqQ=Symbol.for("undici.error.UND_ERR_CLOSED");class dqQ extends n0{constructor(A){super(A);this.name="ClientClosedError",this.message=A||"The client is closed",this.code="UND_ERR_CLOSED"}static[Symbol.hasInstance](A){return A&&A[qqQ]===!0}get[qqQ](){return!0}}var MqQ=Symbol.for("undici.error.UND_ERR_SOCKET");class cqQ extends n0{constructor(A,Q){super(A);this.name="SocketError",this.message=A||"Socket error",this.code="UND_ERR_SOCKET",this.socket=Q}static[Symbol.hasInstance](A){return A&&A[MqQ]===!0}get[MqQ](){return!0}}var zqQ=Symbol.for("undici.error.UND_ERR_NOT_SUPPORTED");class lqQ extends n0{constructor(A){super(A);this.name="NotSupportedError",this.message=A||"Not supported error",this.code="UND_ERR_NOT_SUPPORTED"}static[Symbol.hasInstance](A){return A&&A[zqQ]===!0}get[zqQ](){return!0}}var RqQ=Symbol.for("undici.error.UND_ERR_BPL_MISSING_UPSTREAM");class pqQ extends n0{constructor(A){super(A);this.name="MissingUpstreamError",this.message=A||"No upstream has been added to the BalancedPool",this.code="UND_ERR_BPL_MISSING_UPSTREAM"}static[Symbol.hasInstance](A){return A&&A[RqQ]===!0}get[RqQ](){return!0}}var wqQ=Symbol.for("undici.error.UND_ERR_HTTP_PARSER");class iqQ extends Error{constructor(A,Q,B){super(A);this.name="HTTPParserError",this.code=Q?`HPE_${Q}`:void 0,this.data=B?B.toString():void 0}static[Symbol.hasInstance](A){return A&&A[wqQ]===!0}get[wqQ](){return!0}}var jqQ=Symbol.for("undici.error.UND_ERR_RES_EXCEEDED_MAX_SIZE");class nqQ extends n0{constructor(A){super(A);this.name="ResponseExceededMaxSizeError",this.message=A||"Response content exceeded max size",this.code="UND_ERR_RES_EXCEEDED_MAX_SIZE"}static[Symbol.hasInstance](A){return A&&A[jqQ]===!0}get[jqQ](){return!0}}var OqQ=Symbol.for("undici.error.UND_ERR_REQ_RETRY");class sqQ extends n0{constructor(A,Q,{headers:B,data:Y}){super(A);this.name="RequestRetryError",this.message=A||"Request retry error",this.code="UND_ERR_REQ_RETRY",this.statusCode=Q,this.data=Y,this.headers=B}static[Symbol.hasInstance](A){return A&&A[OqQ]===!0}get[OqQ](){return!0}}var PqQ=Symbol.for("undici.error.UND_ERR_RESPONSE");class rqQ extends n0{constructor(A,Q,{headers:B,body:Y}){super(A);this.name="ResponseError",this.message=A||"Response error",this.code="UND_ERR_RESPONSE",this.statusCode=Q,this.body=Y,this.headers=B}static[Symbol.hasInstance](A){return A&&A[PqQ]===!0}get[PqQ](){return!0}}var TqQ=Symbol.for("undici.error.UND_ERR_PRX_TLS");class aqQ extends n0{constructor(A,Q,B={}){super(Q,{cause:A,...B});this.name="SecureProxyConnectionError",this.message=Q||"Secure Proxy Connection failed",this.code="UND_ERR_PRX_TLS",this.cause=A}static[Symbol.hasInstance](A){return A&&A[TqQ]===!0}get[TqQ](){return!0}}var SqQ=Symbol.for("undici.error.UND_ERR_MAX_ORIGINS_REACHED");class oqQ extends n0{constructor(A){super(A);this.name="MaxOriginsReachedError",this.message=A||"Maximum allowed origins reached",this.code="UND_ERR_MAX_ORIGINS_REACHED"}static[Symbol.hasInstance](A){return A&&A[SqQ]===!0}get[SqQ](){return!0}}tqQ.exports={AbortError:us,HTTPParserError:iqQ,UndiciError:n0,HeadersTimeoutError:_qQ,HeadersOverflowError:vqQ,BodyTimeoutError:yqQ,RequestContentLengthMismatchError:bqQ,ConnectTimeoutError:kqQ,InvalidArgumentError:hqQ,InvalidReturnValueError:gqQ,RequestAbortedError:xqQ,ClientDestroyedError:uqQ,ClientClosedError:dqQ,InformationalError:fqQ,SocketError:cqQ,NotSupportedError:lqQ,ResponseContentLengthMismatchError:mqQ,BalancedPoolMissingUpstreamError:pqQ,ResponseExceededMaxSizeError:nqQ,RequestRetryError:sqQ,ResponseError:rqQ,SecureProxyConnectionError:aqQ,MaxOriginsReachedError:oqQ}});var yT=R((kiY,AMQ)=>{var ds=["Accept","Accept-Encoding","Accept-Language","Accept-Ranges","Access-Control-Allow-Credentials","Access-Control-Allow-Headers","Access-Control-Allow-Methods","Access-Control-Allow-Origin","Access-Control-Expose-Headers","Access-Control-Max-Age","Access-Control-Request-Headers","Access-Control-Request-Method","Age","Allow","Alt-Svc","Alt-Used","Authorization","Cache-Control","Clear-Site-Data","Connection","Content-Disposition","Content-Encoding","Content-Language","Content-Length","Content-Location","Content-Range","Content-Security-Policy","Content-Security-Policy-Report-Only","Content-Type","Cookie","Cross-Origin-Embedder-Policy","Cross-Origin-Opener-Policy","Cross-Origin-Resource-Policy","Date","Device-Memory","Downlink","ECT","ETag","Expect","Expect-CT","Expires","Forwarded","From","Host","If-Match","If-Modified-Since","If-None-Match","If-Range","If-Unmodified-Since","Keep-Alive","Last-Modified","Link","Location","Max-Forwards","Origin","Permissions-Policy","Pragma","Proxy-Authenticate","Proxy-Authorization","RTT","Range","Referer","Referrer-Policy","Refresh","Retry-After","Sec-WebSocket-Accept","Sec-WebSocket-Extensions","Sec-WebSocket-Key","Sec-WebSocket-Protocol","Sec-WebSocket-Version","Server","Server-Timing","Service-Worker-Allowed","Service-Worker-Navigation-Preload","Set-Cookie","SourceMap","Strict-Transport-Security","Supports-Loading-Mode","TE","Timing-Allow-Origin","Trailer","Transfer-Encoding","Upgrade","Upgrade-Insecure-Requests","User-Agent","Vary","Via","WWW-Authenticate","X-Content-Type-Options","X-DNS-Prefetch-Control","X-Frame-Options","X-Permitted-Cross-Domain-Policies","X-Powered-By","X-Requested-With","X-XSS-Protection"],vT={};Object.setPrototypeOf(vT,null);var eqQ={};Object.setPrototypeOf(eqQ,null);function qR0(A){let Q=eqQ[A];if(Q===void 0)Q=Buffer.from(A);return Q}for(let A=0;A{var{wellknownHeaderNames:QMQ,headerNameLowerCasedRecord:MR0}=yT();class gK{value=null;left=null;middle=null;right=null;code;constructor(A,Q,B){if(B===void 0||B>=A.length)throw TypeError("Unreachable");if((this.code=A.charCodeAt(B))>127)throw TypeError("key must be ascii string");if(A.length!==++B)this.middle=new gK(A,Q,B);else this.value=Q}add(A,Q){let B=A.length;if(B===0)throw TypeError("Unreachable");let Y=0,J=this;while(!0){let C=A.charCodeAt(Y);if(C>127)throw TypeError("key must be ascii string");if(J.code===C)if(B===++Y){J.value=Q;break}else if(J.middle!==null)J=J.middle;else{J.middle=new gK(A,Q,Y);break}else if(J.code=65)J|=32;while(Y!==null){if(J===Y.code){if(Q===++B)return Y;Y=Y.middle;break}Y=Y.code{var nL=u("node:assert"),{kDestroyed:FMQ,kBodyUsed:xK,kListeners:gT,kBody:CMQ}=Q0(),{IncomingMessage:zR0}=u("node:http"),WMQ=u("node:stream"),RR0=u("node:net"),{stringify:wR0}=u("node:querystring"),{EventEmitter:jR0}=u("node:events"),hT=ms(),{InvalidArgumentError:nY,ConnectTimeoutError:OR0}=QB(),{headerNameLowerCasedRecord:PR0}=yT(),{tree:ZMQ}=JMQ(),[TR0,SR0]=process.versions.node.split(".",2).map((A)=>Number(A));class ls{constructor(A){this[CMQ]=A,this[xK]=!1}async*[Symbol.asyncIterator](){nL(!this[xK],"disturbed"),this[xK]=!0,yield*this[CMQ]}}function XMQ(){}function kR0(A){if(fT(A)){if(IMQ(A)===0)A.on("data",function(){nL(!1)});if(typeof A.readableDidRead!=="boolean")A[xK]=!1,jR0.prototype.on.call(A,"data",function(){this[xK]=!0});return A}else if(A&&typeof A.pipeTo==="function")return new ls(A);else if(A&&typeof A!=="string"&&!ArrayBuffer.isView(A)&&VMQ(A))return new ls(A);else return A}function fT(A){return A&&typeof A==="object"&&typeof A.pipe==="function"&&typeof A.on==="function"}function $MQ(A){if(A===null)return!1;else if(A instanceof Blob)return!0;else if(typeof A!=="object")return!1;else{let Q=A[Symbol.toStringTag];return(Q==="Blob"||Q==="File")&&(("stream"in A)&&typeof A.stream==="function"||("arrayBuffer"in A)&&typeof A.arrayBuffer==="function")}}function UMQ(A){return A.includes("?")||A.includes("#")}function _R0(A,Q){if(UMQ(A))throw Error('Query params cannot be passed when url already contains "?" or "#".');let B=wR0(Q);if(B)A+="?"+B;return A}function EMQ(A){let Q=parseInt(A,10);return Q===Number(A)&&Q>=0&&Q<=65535}function xT(A){return A!=null&&A[0]==="h"&&A[1]==="t"&&A[2]==="t"&&A[3]==="p"&&(A[4]===":"||A[4]==="s"&&A[5]===":")}function KMQ(A){if(typeof A==="string"){if(A=new URL(A),!xT(A.origin||A.protocol))throw new nY("Invalid URL protocol: the URL must start with `http:` or `https:`.");return A}if(!A||typeof A!=="object")throw new nY("Invalid URL: The URL argument must be a non-null object.");if(!(A instanceof URL)){if(A.port!=null&&A.port!==""&&EMQ(A.port)===!1)throw new nY("Invalid URL: port must be a valid integer or a string representation of an integer.");if(A.path!=null&&typeof A.path!=="string")throw new nY("Invalid URL path: the path must be a string or null/undefined.");if(A.pathname!=null&&typeof A.pathname!=="string")throw new nY("Invalid URL pathname: the pathname must be a string or null/undefined.");if(A.hostname!=null&&typeof A.hostname!=="string")throw new nY("Invalid URL hostname: the hostname must be a string or null/undefined.");if(A.origin!=null&&typeof A.origin!=="string")throw new nY("Invalid URL origin: the origin must be a string or null/undefined.");if(!xT(A.origin||A.protocol))throw new nY("Invalid URL protocol: the URL must start with `http:` or `https:`.");let Q=A.port!=null?A.port:A.protocol==="https:"?443:80,B=A.origin!=null?A.origin:`${A.protocol||""}//${A.hostname||""}:${Q}`,Y=A.path!=null?A.path:`${A.pathname||""}${A.search||""}`;if(B[B.length-1]==="/")B=B.slice(0,B.length-1);if(Y&&Y[0]!=="/")Y=`/${Y}`;return new URL(`${B}${Y}`)}if(!xT(A.origin||A.protocol))throw new nY("Invalid URL protocol: the URL must start with `http:` or `https:`.");return A}function vR0(A){if(A=KMQ(A),A.pathname!=="/"||A.search||A.hash)throw new nY("invalid url");return A}function yR0(A){if(A[0]==="["){let B=A.indexOf("]");return nL(B!==-1),A.substring(1,B)}let Q=A.indexOf(":");if(Q===-1)return A;return A.substring(0,Q)}function hR0(A){if(!A)return null;nL(typeof A==="string");let Q=yR0(A);if(RR0.isIP(Q))return"";return Q}function gR0(A){return JSON.parse(JSON.stringify(A))}function xR0(A){return A!=null&&typeof A[Symbol.asyncIterator]==="function"}function VMQ(A){return A!=null&&(typeof A[Symbol.iterator]==="function"||typeof A[Symbol.asyncIterator]==="function")}function IMQ(A){if(A==null)return 0;else if(fT(A)){let Q=A._readableState;return Q&&Q.objectMode===!1&&Q.ended===!0&&Number.isFinite(Q.length)?Q.length:null}else if($MQ(A))return A.size!=null?A.size:null;else if(LMQ(A))return A.byteLength;return null}function HMQ(A){return A&&!!(A.destroyed||A[FMQ]||WMQ.isDestroyed?.(A))}function DMQ(A,Q){if(A==null||!fT(A)||HMQ(A))return;if(typeof A.destroy==="function"){if(Object.getPrototypeOf(A).constructor===zR0)A.socket=null;A.destroy(Q)}else if(Q)queueMicrotask(()=>{A.emit("error",Q)});if(A.destroyed!==!0)A[FMQ]=!0}var fR0=/timeout=(\d+)/;function bR0(A){let Q=A.match(fR0);return Q?parseInt(Q[1],10)*1000:null}function NMQ(A){return typeof A==="string"?PR0[A]??A.toLowerCase():ZMQ.lookup(A)??A.toString("latin1").toLowerCase()}function mR0(A){return ZMQ.lookup(A)??A.toString("latin1").toLowerCase()}function uR0(A,Q){if(Q===void 0)Q={};for(let B=0;BX.toString("utf8")):C.toString("utf8")}}if("content-length"in Q&&"content-disposition"in Q)Q["content-disposition"]=Buffer.from(Q["content-disposition"]).toString("latin1");return Q}function dR0(A){let Q=A.length,B=Array(Q),Y=!1,J=-1,C,X,G=0;for(let F=0;FBuffer.from(Q))}function LMQ(A){return A instanceof Uint8Array||Buffer.isBuffer(A)}function lR0(A,Q,B){if(!A||typeof A!=="object")throw new nY("handler must be an object");if(typeof A.onRequestStart==="function")return;if(typeof A.onConnect!=="function")throw new nY("invalid onConnect method");if(typeof A.onError!=="function")throw new nY("invalid onError method");if(typeof A.onBodySent!=="function"&&A.onBodySent!==void 0)throw new nY("invalid onBodySent method");if(B||Q==="CONNECT"){if(typeof A.onUpgrade!=="function")throw new nY("invalid onUpgrade method")}else{if(typeof A.onHeaders!=="function")throw new nY("invalid onHeaders method");if(typeof A.onData!=="function")throw new nY("invalid onData method");if(typeof A.onComplete!=="function")throw new nY("invalid onComplete method")}}function pR0(A){return!!(A&&(WMQ.isDisturbed(A)||A[xK]))}function iR0(A){return{localAddress:A.localAddress,localPort:A.localPort,remoteAddress:A.remoteAddress,remotePort:A.remotePort,remoteFamily:A.remoteFamily,timeout:A.timeout,bytesWritten:A.bytesWritten,bytesRead:A.bytesRead}}function nR0(A){let Q;return new ReadableStream({start(){Q=A[Symbol.asyncIterator]()},pull(B){return Q.next().then(({done:Y,value:J})=>{if(Y)queueMicrotask(()=>{B.close(),B.byobRequest?.respond(0)});else{let C=Buffer.isBuffer(J)?J:Buffer.from(J);if(C.byteLength)B.enqueue(new Uint8Array(C));else return this.pull(B)}})},cancel(){return Q.return()},type:"bytes"})}function sR0(A){return A&&typeof A==="object"&&typeof A.append==="function"&&typeof A.delete==="function"&&typeof A.get==="function"&&typeof A.getAll==="function"&&typeof A.has==="function"&&typeof A.set==="function"&&A[Symbol.toStringTag]==="FormData"}function rR0(A,Q){if("addEventListener"in A)return A.addEventListener("abort",Q,{once:!0}),()=>A.removeEventListener("abort",Q);return A.once("abort",Q),()=>A.removeListener("abort",Q)}function qMQ(A){switch(A){case 34:case 40:case 41:case 44:case 47:case 58:case 59:case 60:case 61:case 62:case 63:case 64:case 91:case 92:case 93:case 123:case 125:return!1;default:return A>=33&&A<=126}}function aR0(A){if(A.length===0)return!1;for(let Q=0;Q{if(!Q.timeout)return XMQ;let B=null,Y=null,J=hT.setFastTimeout(()=>{B=setImmediate(()=>{Y=setImmediate(()=>GMQ(A.deref(),Q))})},Q.timeout);return()=>{hT.clearFastTimeout(J),clearImmediate(B),clearImmediate(Y)}}:(A,Q)=>{if(!Q.timeout)return XMQ;let B=null,Y=hT.setFastTimeout(()=>{B=setImmediate(()=>{GMQ(A.deref(),Q)})},Q.timeout);return()=>{hT.clearFastTimeout(Y),clearImmediate(B)}};function GMQ(A,Q){if(A==null)return;let B="Connect Timeout Error";if(Array.isArray(A.autoSelectFamilyAttemptedAddresses))B+=` (attempted addresses: ${A.autoSelectFamilyAttemptedAddresses.join(", ")},`;else B+=` (attempted address: ${Q.hostname}:${Q.port},`;B+=` timeout: ${Q.timeout}ms)`,DMQ(A,new OR0(B))}function Cw0(A){if(A[0]==="h"&&A[1]==="t"&&A[2]==="t"&&A[3]==="p")switch(A[4]){case":":return"http:";case"s":if(A[5]===":")return"https:"}return A.slice(0,A.indexOf(":")+1)}var MMQ=Object.create(null);MMQ.enumerable=!0;var ps={delete:"DELETE",DELETE:"DELETE",get:"GET",GET:"GET",head:"HEAD",HEAD:"HEAD",options:"OPTIONS",OPTIONS:"OPTIONS",post:"POST",POST:"POST",put:"PUT",PUT:"PUT"},zMQ={...ps,patch:"patch",PATCH:"PATCH"};Object.setPrototypeOf(ps,null);Object.setPrototypeOf(zMQ,null);RMQ.exports={kEnumerableProperty:MMQ,isDisturbed:pR0,isBlobLike:$MQ,parseOrigin:vR0,parseURL:KMQ,getServerName:hR0,isStream:fT,isIterable:VMQ,isAsyncIterable:xR0,isDestroyed:HMQ,headerNameToString:NMQ,bufferToLowerCasedHeaderName:mR0,addListener:Qw0,removeAllListeners:Bw0,errorRequest:Yw0,parseRawHeaders:dR0,encodeRawHeaders:cR0,parseHeaders:uR0,parseKeepAliveTimeout:bR0,destroy:DMQ,bodyLength:IMQ,deepClone:gR0,ReadableStreamFrom:nR0,isBuffer:LMQ,assertRequestHandler:lR0,getSocketInfo:iR0,isFormDataLike:sR0,pathHasQueryOrFragment:UMQ,serializePathWithQuery:_R0,addAbortListener:rR0,isValidHTTPToken:aR0,isValidHeaderValue:tR0,isTokenCharCode:qMQ,parseRangeHeader:Aw0,normalizedMethodRecordsBase:ps,normalizedMethodRecords:zMQ,isValidPort:EMQ,isHttpOrHttpsPrefixed:xT,nodeMajor:TR0,nodeMinor:SR0,safeHTTPMethods:Object.freeze(["GET","HEAD","OPTIONS","TRACE"]),wrapRequestBody:kR0,setupConnectTimeout:Jw0,getProtocolFromUrlString:Cw0}});var is=R((yiY,kMQ)=>{var{kConnected:wMQ,kPending:jMQ,kRunning:OMQ,kSize:PMQ,kFree:Xw0,kQueued:Gw0}=Q0();class TMQ{constructor(A){this.connected=A[wMQ],this.pending=A[jMQ],this.running=A[OMQ],this.size=A[PMQ]}}class SMQ{constructor(A){this.connected=A[wMQ],this.free=A[Xw0],this.pending=A[jMQ],this.queued=A[Gw0],this.running=A[OMQ],this.size=A[PMQ]}}kMQ.exports={ClientStats:TMQ,PoolStats:SMQ}});var O$=R((hiY,gMQ)=>{var rB=u("node:diagnostics_channel"),ns=u("node:util"),j$=ns.debuglog("undici"),sL=ns.debuglog("fetch"),bT=ns.debuglog("websocket"),Fw0={beforeConnect:rB.channel("undici:client:beforeConnect"),connected:rB.channel("undici:client:connected"),connectError:rB.channel("undici:client:connectError"),sendHeaders:rB.channel("undici:client:sendHeaders"),create:rB.channel("undici:request:create"),bodySent:rB.channel("undici:request:bodySent"),bodyChunkSent:rB.channel("undici:request:bodyChunkSent"),bodyChunkReceived:rB.channel("undici:request:bodyChunkReceived"),headers:rB.channel("undici:request:headers"),trailers:rB.channel("undici:request:trailers"),error:rB.channel("undici:request:error"),open:rB.channel("undici:websocket:open"),close:rB.channel("undici:websocket:close"),socketError:rB.channel("undici:websocket:socket_error"),ping:rB.channel("undici:websocket:ping"),pong:rB.channel("undici:websocket:pong")},_MQ=!1;function hMQ(A=j$){if(_MQ)return;_MQ=!0,rB.subscribe("undici:client:beforeConnect",(Q)=>{let{connectParams:{version:B,protocol:Y,port:J,host:C}}=Q;A("connecting to %s%s using %s%s",C,J?`:${J}`:"",Y,B)}),rB.subscribe("undici:client:connected",(Q)=>{let{connectParams:{version:B,protocol:Y,port:J,host:C}}=Q;A("connected to %s%s using %s%s",C,J?`:${J}`:"",Y,B)}),rB.subscribe("undici:client:connectError",(Q)=>{let{connectParams:{version:B,protocol:Y,port:J,host:C},error:X}=Q;A("connection to %s%s using %s%s errored - %s",C,J?`:${J}`:"",Y,B,X.message)}),rB.subscribe("undici:client:sendHeaders",(Q)=>{let{request:{method:B,path:Y,origin:J}}=Q;A("sending request to %s %s%s",B,J,Y)})}var vMQ=!1;function Ww0(A=j$){if(vMQ)return;vMQ=!0,rB.subscribe("undici:request:headers",(Q)=>{let{request:{method:B,path:Y,origin:J},response:{statusCode:C}}=Q;A("received response to %s %s%s - HTTP %d",B,J,Y,C)}),rB.subscribe("undici:request:trailers",(Q)=>{let{request:{method:B,path:Y,origin:J}}=Q;A("trailers received from %s %s%s",B,J,Y)}),rB.subscribe("undici:request:error",(Q)=>{let{request:{method:B,path:Y,origin:J},error:C}=Q;A("request to %s %s%s errored - %s",B,J,Y,C.message)})}var yMQ=!1;function Zw0(A=bT){if(yMQ)return;yMQ=!0,rB.subscribe("undici:websocket:open",(Q)=>{let{address:{address:B,port:Y}}=Q;A("connection opened %s%s",B,Y?`:${Y}`:"")}),rB.subscribe("undici:websocket:close",(Q)=>{let{websocket:B,code:Y,reason:J}=Q;A("closed connection to %s - %s %s",B.url,Y,J)}),rB.subscribe("undici:websocket:socket_error",(Q)=>{A("connection errored - %s",Q.message)}),rB.subscribe("undici:websocket:ping",(Q)=>{A("ping received")}),rB.subscribe("undici:websocket:pong",(Q)=>{A("pong received")})}if(j$.enabled||sL.enabled)hMQ(sL.enabled?sL:j$),Ww0(sL.enabled?sL:j$);if(bT.enabled)hMQ(j$.enabled?j$:bT),Zw0(bT);gMQ.exports={channels:Fw0}});var dMQ=R((giY,uMQ)=>{var{InvalidArgumentError:I0,NotSupportedError:$w0}=QB(),K6=u("node:assert"),{isValidHTTPToken:bMQ,isValidHeaderValue:xMQ,isStream:Uw0,destroy:Ew0,isBuffer:Kw0,isFormDataLike:Vw0,isIterable:Iw0,isBlobLike:Hw0,serializePathWithQuery:Dw0,assertRequestHandler:Nw0,getServerName:Lw0,normalizedMethodRecords:qw0,getProtocolFromUrlString:Mw0}=lQ(),{channels:s9}=O$(),{headerNameLowerCasedRecord:fMQ}=yT(),zw0=/[^\u0021-\u00ff]/,s5=Symbol("handler");class mMQ{constructor(A,{path:Q,method:B,body:Y,headers:J,query:C,idempotent:X,blocking:G,upgrade:F,headersTimeout:W,bodyTimeout:Z,reset:U,expectContinue:$,servername:E,throwOnError:K,maxRedirections:I},V){if(typeof Q!=="string")throw new I0("path must be a string");else if(Q[0]!=="/"&&!(Q.startsWith("http://")||Q.startsWith("https://"))&&B!=="CONNECT")throw new I0("path must be an absolute URL or start with a slash");else if(zw0.test(Q))throw new I0("invalid request path");if(typeof B!=="string")throw new I0("method must be a string");else if(qw0[B]===void 0&&!bMQ(B))throw new I0("invalid request method");if(F&&typeof F!=="string")throw new I0("upgrade must be a string");if(W!=null&&(!Number.isFinite(W)||W<0))throw new I0("invalid headersTimeout");if(Z!=null&&(!Number.isFinite(Z)||Z<0))throw new I0("invalid bodyTimeout");if(U!=null&&typeof U!=="boolean")throw new I0("invalid reset");if($!=null&&typeof $!=="boolean")throw new I0("invalid expectContinue");if(K!=null)throw new I0("invalid throwOnError");if(I!=null&&I!==0)throw new I0("maxRedirections is not supported, use the redirect interceptor");if(this.headersTimeout=W,this.bodyTimeout=Z,this.method=B,this.abort=null,Y==null)this.body=null;else if(Uw0(Y)){this.body=Y;let H=this.body._readableState;if(!H||!H.autoDestroy)this.endHandler=function(){Ew0(this)},this.body.on("end",this.endHandler);this.errorHandler=(D)=>{if(this.abort)this.abort(D);else this.error=D},this.body.on("error",this.errorHandler)}else if(Kw0(Y))this.body=Y.byteLength?Y:null;else if(ArrayBuffer.isView(Y))this.body=Y.buffer.byteLength?Buffer.from(Y.buffer,Y.byteOffset,Y.byteLength):null;else if(Y instanceof ArrayBuffer)this.body=Y.byteLength?Buffer.from(Y):null;else if(typeof Y==="string")this.body=Y.length?Buffer.from(Y):null;else if(Vw0(Y)||Iw0(Y)||Hw0(Y))this.body=Y;else throw new I0("body must be a string, a Buffer, a Readable stream, an iterable, or an async iterable");if(this.completed=!1,this.aborted=!1,this.upgrade=F||null,this.path=C?Dw0(Q,C):Q,this.origin=A,this.protocol=Mw0(A),this.idempotent=X==null?B==="HEAD"||B==="GET":X,this.blocking=G??this.method!=="HEAD",this.reset=U==null?null:U,this.host=null,this.contentLength=null,this.contentType=null,this.headers=[],this.expectContinue=$!=null?$:!1,Array.isArray(J)){if(J.length%2!==0)throw new I0("headers array must be even");for(let H=0;H{var{InvalidArgumentError:Rw0}=QB();cMQ.exports=class A{#A;constructor(Q){this.#A=Q}static wrap(Q){return Q.onRequestStart?Q:new A(Q)}onConnect(Q,B){return this.#A.onConnect?.(Q,B)}onHeaders(Q,B,Y,J){return this.#A.onHeaders?.(Q,B,Y,J)}onUpgrade(Q,B,Y){return this.#A.onUpgrade?.(Q,B,Y)}onData(Q){return this.#A.onData?.(Q)}onComplete(Q){return this.#A.onComplete?.(Q)}onError(Q){if(!this.#A.onError)throw Q;return this.#A.onError?.(Q)}onRequestStart(Q,B){this.#A.onConnect?.((Y)=>Q.abort(Y),B)}onRequestUpgrade(Q,B,Y,J){let C=[];for(let[X,G]of Object.entries(Y))C.push(Buffer.from(X),Array.isArray(G)?G.map((F)=>Buffer.from(F)):Buffer.from(G));this.#A.onUpgrade?.(B,C,J)}onResponseStart(Q,B,Y,J){let C=[];for(let[X,G]of Object.entries(Y))C.push(Buffer.from(X),Array.isArray(G)?G.map((F)=>Buffer.from(F)):Buffer.from(G));if(this.#A.onHeaders?.(B,C,()=>Q.resume(),J)===!1)Q.pause()}onResponseData(Q,B){if(this.#A.onData?.(B)===!1)Q.pause()}onResponseEnd(Q,B){let Y=[];for(let[J,C]of Object.entries(B))Y.push(Buffer.from(J),Array.isArray(C)?C.map((X)=>Buffer.from(X)):Buffer.from(C));this.#A.onComplete?.(Y)}onResponseError(Q,B){if(!this.#A.onError)throw new Rw0("invalid onError method");this.#A.onError?.(B)}}});var aL=R((fiY,pMQ)=>{var ww0=u("node:events"),jw0=rL(),Ow0=(A)=>(Q,B)=>A(Q,jw0.wrap(B));class lMQ extends ww0{dispatch(){throw Error("not implemented")}close(){throw Error("not implemented")}destroy(){throw Error("not implemented")}compose(...A){let Q=Array.isArray(A[0])?A[0]:A,B=this.dispatch.bind(this);for(let Y of Q){if(Y==null)continue;if(typeof Y!=="function")throw TypeError(`invalid interceptor, expected function received ${typeof Y}`);if(B=Y(B),B=Ow0(B),B==null||typeof B!=="function"||B.length!==2)throw TypeError("invalid interceptor")}return new Proxy(this,{get:(Y,J)=>J==="dispatch"?B:Y[J]})}}pMQ.exports=lMQ});var sMQ=R((biY,nMQ)=>{var{parseHeaders:ss}=lQ(),{InvalidArgumentError:Pw0}=QB(),rs=Symbol("resume");class iMQ{#A=!1;#Q=null;#B=!1;#Y;[rs]=null;constructor(A){this.#Y=A}pause(){this.#A=!0}resume(){if(this.#A)this.#A=!1,this[rs]?.()}abort(A){if(!this.#B)this.#B=!0,this.#Q=A,this.#Y(A)}get aborted(){return this.#B}get reason(){return this.#Q}get paused(){return this.#A}}nMQ.exports=class A{#A;#Q;constructor(Q){this.#A=Q}static unwrap(Q){return!Q.onRequestStart?Q:new A(Q)}onConnect(Q,B){this.#Q=new iMQ(Q),this.#A.onRequestStart?.(this.#Q,B)}onUpgrade(Q,B,Y){this.#A.onRequestUpgrade?.(this.#Q,Q,ss(B),Y)}onHeaders(Q,B,Y,J){return this.#Q[rs]=Y,this.#A.onResponseStart?.(this.#Q,Q,ss(B),J),!this.#Q.paused}onData(Q){return this.#A.onResponseData?.(this.#Q,Q),!this.#Q.paused}onComplete(Q){this.#A.onResponseEnd?.(this.#Q,ss(Q))}onError(Q){if(!this.#A.onResponseError)throw new Pw0("invalid onError method");this.#A.onResponseError?.(this.#Q,Q)}}});var P$=R((miY,aMQ)=>{var Tw0=aL(),Sw0=sMQ(),{ClientDestroyedError:as,ClientClosedError:kw0,InvalidArgumentError:uT}=QB(),{kDestroy:_w0,kClose:vw0,kClosed:oL,kDestroyed:fK,kDispatch:yw0}=Q0(),RG=Symbol("onDestroyed"),bK=Symbol("onClosed");class rMQ extends Tw0{[fK]=!1;[RG]=null;[oL]=!1;[bK]=[];get destroyed(){return this[fK]}get closed(){return this[oL]}close(A){if(A===void 0)return new Promise((B,Y)=>{this.close((J,C)=>{return J?Y(J):B(C)})});if(typeof A!=="function")throw new uT("invalid callback");if(this[fK]){queueMicrotask(()=>A(new as,null));return}if(this[oL]){if(this[bK])this[bK].push(A);else queueMicrotask(()=>A(null,null));return}this[oL]=!0,this[bK].push(A);let Q=()=>{let B=this[bK];this[bK]=null;for(let Y=0;Ythis.destroy()).then(()=>{queueMicrotask(Q)})}destroy(A,Q){if(typeof A==="function")Q=A,A=null;if(Q===void 0)return new Promise((Y,J)=>{this.destroy(A,(C,X)=>{return C?J(C):Y(X)})});if(typeof Q!=="function")throw new uT("invalid callback");if(this[fK]){if(this[RG])this[RG].push(Q);else queueMicrotask(()=>Q(null,null));return}if(!A)A=new as;this[fK]=!0,this[RG]=this[RG]||[],this[RG].push(Q);let B=()=>{let Y=this[RG];this[RG]=null;for(let J=0;J{queueMicrotask(B)})}dispatch(A,Q){if(!Q||typeof Q!=="object")throw new uT("handler must be an object");Q=Sw0.unwrap(Q);try{if(!A||typeof A!=="object")throw new uT("opts must be an object.");if(this[fK]||this[RG])throw new as;if(this[oL])throw new kw0;return this[yw0](A,Q)}catch(B){if(typeof Q.onError!=="function")throw B;return Q.onError(B),!1}}}aMQ.exports=rMQ});var tL=R((uiY,eMQ)=>{var hw0=u("node:net"),oMQ=u("node:assert"),tMQ=lQ(),{InvalidArgumentError:gw0}=QB(),os,xw0=class{constructor(Q){this._maxCachedSessions=Q,this._sessionCache=new Map,this._sessionRegistry=new FinalizationRegistry((B)=>{if(this._sessionCache.size{Object.defineProperty(AzQ,"__esModule",{value:!0});AzQ.enumToMap=bw0;function bw0(A,Q=[],B=[]){let Y=(Q?.length??0)===0,J=(B?.length??0)===0;return Object.fromEntries(Object.entries(A).filter(([,C])=>{return typeof C==="number"&&(Y||Q.includes(C))&&(J||!B.includes(C))}))}});var qzQ=R((BzQ)=>{Object.defineProperty(BzQ,"__esModule",{value:!0});BzQ.SPECIAL_HEADERS=BzQ.MINOR=BzQ.MAJOR=BzQ.HTAB_SP_VCHAR_OBS_TEXT=BzQ.QUOTED_STRING=BzQ.CONNECTION_TOKEN_CHARS=BzQ.HEADER_CHARS=BzQ.TOKEN=BzQ.HEX=BzQ.URL_CHAR=BzQ.USERINFO_CHARS=BzQ.MARK=BzQ.ALPHANUM=BzQ.NUM=BzQ.HEX_MAP=BzQ.NUM_MAP=BzQ.ALPHA=BzQ.STATUSES_HTTP=BzQ.H_METHOD_MAP=BzQ.METHOD_MAP=BzQ.METHODS_RTSP=BzQ.METHODS_ICE=BzQ.METHODS_HTTP=BzQ.HEADER_STATE=BzQ.FINISH=BzQ.STATUSES=BzQ.METHODS=BzQ.LENIENT_FLAGS=BzQ.FLAGS=BzQ.TYPE=BzQ.ERROR=void 0;var uw0=QzQ();BzQ.ERROR={OK:0,INTERNAL:1,STRICT:2,CR_EXPECTED:25,LF_EXPECTED:3,UNEXPECTED_CONTENT_LENGTH:4,UNEXPECTED_SPACE:30,CLOSED_CONNECTION:5,INVALID_METHOD:6,INVALID_URL:7,INVALID_CONSTANT:8,INVALID_VERSION:9,INVALID_HEADER_TOKEN:10,INVALID_CONTENT_LENGTH:11,INVALID_CHUNK_SIZE:12,INVALID_STATUS:13,INVALID_EOF_STATE:14,INVALID_TRANSFER_ENCODING:15,CB_MESSAGE_BEGIN:16,CB_HEADERS_COMPLETE:17,CB_MESSAGE_COMPLETE:18,CB_CHUNK_HEADER:19,CB_CHUNK_COMPLETE:20,PAUSED:21,PAUSED_UPGRADE:22,PAUSED_H2_UPGRADE:23,USER:24,CB_URL_COMPLETE:26,CB_STATUS_COMPLETE:27,CB_METHOD_COMPLETE:32,CB_VERSION_COMPLETE:33,CB_HEADER_FIELD_COMPLETE:28,CB_HEADER_VALUE_COMPLETE:29,CB_CHUNK_EXTENSION_NAME_COMPLETE:34,CB_CHUNK_EXTENSION_VALUE_COMPLETE:35,CB_RESET:31,CB_PROTOCOL_COMPLETE:38};BzQ.TYPE={BOTH:0,REQUEST:1,RESPONSE:2};BzQ.FLAGS={CONNECTION_KEEP_ALIVE:1,CONNECTION_CLOSE:2,CONNECTION_UPGRADE:4,CHUNKED:8,UPGRADE:16,CONTENT_LENGTH:32,SKIPBODY:64,TRAILING:128,TRANSFER_ENCODING:512};BzQ.LENIENT_FLAGS={HEADERS:1,CHUNKED_LENGTH:2,KEEP_ALIVE:4,TRANSFER_ENCODING:8,VERSION:16,DATA_AFTER_CLOSE:32,OPTIONAL_LF_AFTER_CR:64,OPTIONAL_CRLF_AFTER_CHUNK:128,OPTIONAL_CR_BEFORE_LF:256,SPACES_AFTER_CHUNK_SIZE:512};BzQ.METHODS={DELETE:0,GET:1,HEAD:2,POST:3,PUT:4,CONNECT:5,OPTIONS:6,TRACE:7,COPY:8,LOCK:9,MKCOL:10,MOVE:11,PROPFIND:12,PROPPATCH:13,SEARCH:14,UNLOCK:15,BIND:16,REBIND:17,UNBIND:18,ACL:19,REPORT:20,MKACTIVITY:21,CHECKOUT:22,MERGE:23,"M-SEARCH":24,NOTIFY:25,SUBSCRIBE:26,UNSUBSCRIBE:27,PATCH:28,PURGE:29,MKCALENDAR:30,LINK:31,UNLINK:32,SOURCE:33,PRI:34,DESCRIBE:35,ANNOUNCE:36,SETUP:37,PLAY:38,PAUSE:39,TEARDOWN:40,GET_PARAMETER:41,SET_PARAMETER:42,REDIRECT:43,RECORD:44,FLUSH:45,QUERY:46};BzQ.STATUSES={CONTINUE:100,SWITCHING_PROTOCOLS:101,PROCESSING:102,EARLY_HINTS:103,RESPONSE_IS_STALE:110,REVALIDATION_FAILED:111,DISCONNECTED_OPERATION:112,HEURISTIC_EXPIRATION:113,MISCELLANEOUS_WARNING:199,OK:200,CREATED:201,ACCEPTED:202,NON_AUTHORITATIVE_INFORMATION:203,NO_CONTENT:204,RESET_CONTENT:205,PARTIAL_CONTENT:206,MULTI_STATUS:207,ALREADY_REPORTED:208,TRANSFORMATION_APPLIED:214,IM_USED:226,MISCELLANEOUS_PERSISTENT_WARNING:299,MULTIPLE_CHOICES:300,MOVED_PERMANENTLY:301,FOUND:302,SEE_OTHER:303,NOT_MODIFIED:304,USE_PROXY:305,SWITCH_PROXY:306,TEMPORARY_REDIRECT:307,PERMANENT_REDIRECT:308,BAD_REQUEST:400,UNAUTHORIZED:401,PAYMENT_REQUIRED:402,FORBIDDEN:403,NOT_FOUND:404,METHOD_NOT_ALLOWED:405,NOT_ACCEPTABLE:406,PROXY_AUTHENTICATION_REQUIRED:407,REQUEST_TIMEOUT:408,CONFLICT:409,GONE:410,LENGTH_REQUIRED:411,PRECONDITION_FAILED:412,PAYLOAD_TOO_LARGE:413,URI_TOO_LONG:414,UNSUPPORTED_MEDIA_TYPE:415,RANGE_NOT_SATISFIABLE:416,EXPECTATION_FAILED:417,IM_A_TEAPOT:418,PAGE_EXPIRED:419,ENHANCE_YOUR_CALM:420,MISDIRECTED_REQUEST:421,UNPROCESSABLE_ENTITY:422,LOCKED:423,FAILED_DEPENDENCY:424,TOO_EARLY:425,UPGRADE_REQUIRED:426,PRECONDITION_REQUIRED:428,TOO_MANY_REQUESTS:429,REQUEST_HEADER_FIELDS_TOO_LARGE_UNOFFICIAL:430,REQUEST_HEADER_FIELDS_TOO_LARGE:431,LOGIN_TIMEOUT:440,NO_RESPONSE:444,RETRY_WITH:449,BLOCKED_BY_PARENTAL_CONTROL:450,UNAVAILABLE_FOR_LEGAL_REASONS:451,CLIENT_CLOSED_LOAD_BALANCED_REQUEST:460,INVALID_X_FORWARDED_FOR:463,REQUEST_HEADER_TOO_LARGE:494,SSL_CERTIFICATE_ERROR:495,SSL_CERTIFICATE_REQUIRED:496,HTTP_REQUEST_SENT_TO_HTTPS_PORT:497,INVALID_TOKEN:498,CLIENT_CLOSED_REQUEST:499,INTERNAL_SERVER_ERROR:500,NOT_IMPLEMENTED:501,BAD_GATEWAY:502,SERVICE_UNAVAILABLE:503,GATEWAY_TIMEOUT:504,HTTP_VERSION_NOT_SUPPORTED:505,VARIANT_ALSO_NEGOTIATES:506,INSUFFICIENT_STORAGE:507,LOOP_DETECTED:508,BANDWIDTH_LIMIT_EXCEEDED:509,NOT_EXTENDED:510,NETWORK_AUTHENTICATION_REQUIRED:511,WEB_SERVER_UNKNOWN_ERROR:520,WEB_SERVER_IS_DOWN:521,CONNECTION_TIMEOUT:522,ORIGIN_IS_UNREACHABLE:523,TIMEOUT_OCCURED:524,SSL_HANDSHAKE_FAILED:525,INVALID_SSL_CERTIFICATE:526,RAILGUN_ERROR:527,SITE_IS_OVERLOADED:529,SITE_IS_FROZEN:530,IDENTITY_PROVIDER_AUTHENTICATION_ERROR:561,NETWORK_READ_TIMEOUT:598,NETWORK_CONNECT_TIMEOUT:599};BzQ.FINISH={SAFE:0,SAFE_WITH_CB:1,UNSAFE:2};BzQ.HEADER_STATE={GENERAL:0,CONNECTION:1,CONTENT_LENGTH:2,TRANSFER_ENCODING:3,UPGRADE:4,CONNECTION_KEEP_ALIVE:5,CONNECTION_CLOSE:6,CONNECTION_UPGRADE:7,TRANSFER_ENCODING_CHUNKED:8};BzQ.METHODS_HTTP=[BzQ.METHODS.DELETE,BzQ.METHODS.GET,BzQ.METHODS.HEAD,BzQ.METHODS.POST,BzQ.METHODS.PUT,BzQ.METHODS.CONNECT,BzQ.METHODS.OPTIONS,BzQ.METHODS.TRACE,BzQ.METHODS.COPY,BzQ.METHODS.LOCK,BzQ.METHODS.MKCOL,BzQ.METHODS.MOVE,BzQ.METHODS.PROPFIND,BzQ.METHODS.PROPPATCH,BzQ.METHODS.SEARCH,BzQ.METHODS.UNLOCK,BzQ.METHODS.BIND,BzQ.METHODS.REBIND,BzQ.METHODS.UNBIND,BzQ.METHODS.ACL,BzQ.METHODS.REPORT,BzQ.METHODS.MKACTIVITY,BzQ.METHODS.CHECKOUT,BzQ.METHODS.MERGE,BzQ.METHODS["M-SEARCH"],BzQ.METHODS.NOTIFY,BzQ.METHODS.SUBSCRIBE,BzQ.METHODS.UNSUBSCRIBE,BzQ.METHODS.PATCH,BzQ.METHODS.PURGE,BzQ.METHODS.MKCALENDAR,BzQ.METHODS.LINK,BzQ.METHODS.UNLINK,BzQ.METHODS.PRI,BzQ.METHODS.SOURCE,BzQ.METHODS.QUERY];BzQ.METHODS_ICE=[BzQ.METHODS.SOURCE];BzQ.METHODS_RTSP=[BzQ.METHODS.OPTIONS,BzQ.METHODS.DESCRIBE,BzQ.METHODS.ANNOUNCE,BzQ.METHODS.SETUP,BzQ.METHODS.PLAY,BzQ.METHODS.PAUSE,BzQ.METHODS.TEARDOWN,BzQ.METHODS.GET_PARAMETER,BzQ.METHODS.SET_PARAMETER,BzQ.METHODS.REDIRECT,BzQ.METHODS.RECORD,BzQ.METHODS.FLUSH,BzQ.METHODS.GET,BzQ.METHODS.POST];BzQ.METHOD_MAP=(0,uw0.enumToMap)(BzQ.METHODS);BzQ.H_METHOD_MAP=Object.fromEntries(Object.entries(BzQ.METHODS).filter(([A])=>A.startsWith("H")));BzQ.STATUSES_HTTP=[BzQ.STATUSES.CONTINUE,BzQ.STATUSES.SWITCHING_PROTOCOLS,BzQ.STATUSES.PROCESSING,BzQ.STATUSES.EARLY_HINTS,BzQ.STATUSES.RESPONSE_IS_STALE,BzQ.STATUSES.REVALIDATION_FAILED,BzQ.STATUSES.DISCONNECTED_OPERATION,BzQ.STATUSES.HEURISTIC_EXPIRATION,BzQ.STATUSES.MISCELLANEOUS_WARNING,BzQ.STATUSES.OK,BzQ.STATUSES.CREATED,BzQ.STATUSES.ACCEPTED,BzQ.STATUSES.NON_AUTHORITATIVE_INFORMATION,BzQ.STATUSES.NO_CONTENT,BzQ.STATUSES.RESET_CONTENT,BzQ.STATUSES.PARTIAL_CONTENT,BzQ.STATUSES.MULTI_STATUS,BzQ.STATUSES.ALREADY_REPORTED,BzQ.STATUSES.TRANSFORMATION_APPLIED,BzQ.STATUSES.IM_USED,BzQ.STATUSES.MISCELLANEOUS_PERSISTENT_WARNING,BzQ.STATUSES.MULTIPLE_CHOICES,BzQ.STATUSES.MOVED_PERMANENTLY,BzQ.STATUSES.FOUND,BzQ.STATUSES.SEE_OTHER,BzQ.STATUSES.NOT_MODIFIED,BzQ.STATUSES.USE_PROXY,BzQ.STATUSES.SWITCH_PROXY,BzQ.STATUSES.TEMPORARY_REDIRECT,BzQ.STATUSES.PERMANENT_REDIRECT,BzQ.STATUSES.BAD_REQUEST,BzQ.STATUSES.UNAUTHORIZED,BzQ.STATUSES.PAYMENT_REQUIRED,BzQ.STATUSES.FORBIDDEN,BzQ.STATUSES.NOT_FOUND,BzQ.STATUSES.METHOD_NOT_ALLOWED,BzQ.STATUSES.NOT_ACCEPTABLE,BzQ.STATUSES.PROXY_AUTHENTICATION_REQUIRED,BzQ.STATUSES.REQUEST_TIMEOUT,BzQ.STATUSES.CONFLICT,BzQ.STATUSES.GONE,BzQ.STATUSES.LENGTH_REQUIRED,BzQ.STATUSES.PRECONDITION_FAILED,BzQ.STATUSES.PAYLOAD_TOO_LARGE,BzQ.STATUSES.URI_TOO_LONG,BzQ.STATUSES.UNSUPPORTED_MEDIA_TYPE,BzQ.STATUSES.RANGE_NOT_SATISFIABLE,BzQ.STATUSES.EXPECTATION_FAILED,BzQ.STATUSES.IM_A_TEAPOT,BzQ.STATUSES.PAGE_EXPIRED,BzQ.STATUSES.ENHANCE_YOUR_CALM,BzQ.STATUSES.MISDIRECTED_REQUEST,BzQ.STATUSES.UNPROCESSABLE_ENTITY,BzQ.STATUSES.LOCKED,BzQ.STATUSES.FAILED_DEPENDENCY,BzQ.STATUSES.TOO_EARLY,BzQ.STATUSES.UPGRADE_REQUIRED,BzQ.STATUSES.PRECONDITION_REQUIRED,BzQ.STATUSES.TOO_MANY_REQUESTS,BzQ.STATUSES.REQUEST_HEADER_FIELDS_TOO_LARGE_UNOFFICIAL,BzQ.STATUSES.REQUEST_HEADER_FIELDS_TOO_LARGE,BzQ.STATUSES.LOGIN_TIMEOUT,BzQ.STATUSES.NO_RESPONSE,BzQ.STATUSES.RETRY_WITH,BzQ.STATUSES.BLOCKED_BY_PARENTAL_CONTROL,BzQ.STATUSES.UNAVAILABLE_FOR_LEGAL_REASONS,BzQ.STATUSES.CLIENT_CLOSED_LOAD_BALANCED_REQUEST,BzQ.STATUSES.INVALID_X_FORWARDED_FOR,BzQ.STATUSES.REQUEST_HEADER_TOO_LARGE,BzQ.STATUSES.SSL_CERTIFICATE_ERROR,BzQ.STATUSES.SSL_CERTIFICATE_REQUIRED,BzQ.STATUSES.HTTP_REQUEST_SENT_TO_HTTPS_PORT,BzQ.STATUSES.INVALID_TOKEN,BzQ.STATUSES.CLIENT_CLOSED_REQUEST,BzQ.STATUSES.INTERNAL_SERVER_ERROR,BzQ.STATUSES.NOT_IMPLEMENTED,BzQ.STATUSES.BAD_GATEWAY,BzQ.STATUSES.SERVICE_UNAVAILABLE,BzQ.STATUSES.GATEWAY_TIMEOUT,BzQ.STATUSES.HTTP_VERSION_NOT_SUPPORTED,BzQ.STATUSES.VARIANT_ALSO_NEGOTIATES,BzQ.STATUSES.INSUFFICIENT_STORAGE,BzQ.STATUSES.LOOP_DETECTED,BzQ.STATUSES.BANDWIDTH_LIMIT_EXCEEDED,BzQ.STATUSES.NOT_EXTENDED,BzQ.STATUSES.NETWORK_AUTHENTICATION_REQUIRED,BzQ.STATUSES.WEB_SERVER_UNKNOWN_ERROR,BzQ.STATUSES.WEB_SERVER_IS_DOWN,BzQ.STATUSES.CONNECTION_TIMEOUT,BzQ.STATUSES.ORIGIN_IS_UNREACHABLE,BzQ.STATUSES.TIMEOUT_OCCURED,BzQ.STATUSES.SSL_HANDSHAKE_FAILED,BzQ.STATUSES.INVALID_SSL_CERTIFICATE,BzQ.STATUSES.RAILGUN_ERROR,BzQ.STATUSES.SITE_IS_OVERLOADED,BzQ.STATUSES.SITE_IS_FROZEN,BzQ.STATUSES.IDENTITY_PROVIDER_AUTHENTICATION_ERROR,BzQ.STATUSES.NETWORK_READ_TIMEOUT,BzQ.STATUSES.NETWORK_CONNECT_TIMEOUT];BzQ.ALPHA=[];for(let A=65;A<=90;A++)BzQ.ALPHA.push(String.fromCharCode(A)),BzQ.ALPHA.push(String.fromCharCode(A+32));BzQ.NUM_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9};BzQ.HEX_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15};BzQ.NUM=["0","1","2","3","4","5","6","7","8","9"];BzQ.ALPHANUM=BzQ.ALPHA.concat(BzQ.NUM);BzQ.MARK=["-","_",".","!","~","*","'","(",")"];BzQ.USERINFO_CHARS=BzQ.ALPHANUM.concat(BzQ.MARK).concat(["%",";",":","&","=","+","$",","]);BzQ.URL_CHAR=["!",'"',"$","%","&","'","(",")","*","+",",","-",".","/",":",";","<","=",">","@","[","\\","]","^","_","`","{","|","}","~"].concat(BzQ.ALPHANUM);BzQ.HEX=BzQ.NUM.concat(["a","b","c","d","e","f","A","B","C","D","E","F"]);BzQ.TOKEN=["!","#","$","%","&","'","*","+","-",".","^","_","`","|","~"].concat(BzQ.ALPHANUM);BzQ.HEADER_CHARS=["\t"];for(let A=32;A<=255;A++)if(A!==127)BzQ.HEADER_CHARS.push(A);BzQ.CONNECTION_TOKEN_CHARS=BzQ.HEADER_CHARS.filter((A)=>A!==44);BzQ.QUOTED_STRING=["\t"," "];for(let A=33;A<=255;A++)if(A!==34&&A!==92)BzQ.QUOTED_STRING.push(A);BzQ.HTAB_SP_VCHAR_OBS_TEXT=["\t"," "];for(let A=33;A<=126;A++)BzQ.HTAB_SP_VCHAR_OBS_TEXT.push(A);for(let A=128;A<=255;A++)BzQ.HTAB_SP_VCHAR_OBS_TEXT.push(A);BzQ.MAJOR=BzQ.NUM_MAP;BzQ.MINOR=BzQ.MAJOR;BzQ.SPECIAL_HEADERS={connection:BzQ.HEADER_STATE.CONNECTION,"content-length":BzQ.HEADER_STATE.CONTENT_LENGTH,"proxy-connection":BzQ.HEADER_STATE.CONNECTION,"transfer-encoding":BzQ.HEADER_STATE.TRANSFER_ENCODING,upgrade:BzQ.HEADER_STATE.UPGRADE};BzQ.default={ERROR:BzQ.ERROR,TYPE:BzQ.TYPE,FLAGS:BzQ.FLAGS,LENIENT_FLAGS:BzQ.LENIENT_FLAGS,METHODS:BzQ.METHODS,STATUSES:BzQ.STATUSES,FINISH:BzQ.FINISH,HEADER_STATE:BzQ.HEADER_STATE,ALPHA:BzQ.ALPHA,NUM_MAP:BzQ.NUM_MAP,HEX_MAP:BzQ.HEX_MAP,NUM:BzQ.NUM,ALPHANUM:BzQ.ALPHANUM,MARK:BzQ.MARK,USERINFO_CHARS:BzQ.USERINFO_CHARS,URL_CHAR:BzQ.URL_CHAR,HEX:BzQ.HEX,TOKEN:BzQ.TOKEN,HEADER_CHARS:BzQ.HEADER_CHARS,CONNECTION_TOKEN_CHARS:BzQ.CONNECTION_TOKEN_CHARS,QUOTED_STRING:BzQ.QUOTED_STRING,HTAB_SP_VCHAR_OBS_TEXT:BzQ.HTAB_SP_VCHAR_OBS_TEXT,MAJOR:BzQ.MAJOR,MINOR:BzQ.MINOR,SPECIAL_HEADERS:BzQ.SPECIAL_HEADERS,METHODS_HTTP:BzQ.METHODS_HTTP,METHODS_ICE:BzQ.METHODS_ICE,METHODS_RTSP:BzQ.METHODS_RTSP,METHOD_MAP:BzQ.METHOD_MAP,H_METHOD_MAP:BzQ.H_METHOD_MAP,STATUSES_HTTP:BzQ.STATUSES_HTTP}});var Jr=R((liY,MzQ)=>{var{Buffer:cw0}=u("node:buffer"),Yr;Object.defineProperty(MzQ,"exports",{get:()=>{return Yr?Yr:Yr=cw0.from("AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAn9/AGABfwBgBH9/f38Bf2AAAGADf39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQAEA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAAzU0BQYAAAMAAAAAAAADAQMAAwMDAAACAAAAAAICAgICAgICAgIBAQEBAQEBAQEBAwAAAwAAAAQFAXABExMFAwEAAgYIAX8BQcDZBAsHxQcoBm1lbW9yeQIAC19pbml0aWFsaXplAAgZX19pbmRpcmVjdF9mdW5jdGlvbl90YWJsZQEAC2xsaHR0cF9pbml0AAkYbGxodHRwX3Nob3VsZF9rZWVwX2FsaXZlADcMbGxodHRwX2FsbG9jAAsGbWFsbG9jADkLbGxodHRwX2ZyZWUADARmcmVlAAwPbGxodHRwX2dldF90eXBlAA0VbGxodHRwX2dldF9odHRwX21ham9yAA4VbGxodHRwX2dldF9odHRwX21pbm9yAA8RbGxodHRwX2dldF9tZXRob2QAEBZsbGh0dHBfZ2V0X3N0YXR1c19jb2RlABESbGxodHRwX2dldF91cGdyYWRlABIMbGxodHRwX3Jlc2V0ABMObGxodHRwX2V4ZWN1dGUAFBRsbGh0dHBfc2V0dGluZ3NfaW5pdAAVDWxsaHR0cF9maW5pc2gAFgxsbGh0dHBfcGF1c2UAFw1sbGh0dHBfcmVzdW1lABgbbGxodHRwX3Jlc3VtZV9hZnRlcl91cGdyYWRlABkQbGxodHRwX2dldF9lcnJubwAaF2xsaHR0cF9nZXRfZXJyb3JfcmVhc29uABsXbGxodHRwX3NldF9lcnJvcl9yZWFzb24AHBRsbGh0dHBfZ2V0X2Vycm9yX3BvcwAdEWxsaHR0cF9lcnJub19uYW1lAB4SbGxodHRwX21ldGhvZF9uYW1lAB8SbGxodHRwX3N0YXR1c19uYW1lACAabGxodHRw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AXRrQT5qIQILIAEgAjYCHCABQgA3AhAgAkECdEH01wBqIQACQEHI1QAoAgAiA0EBIAJ0IgdxRQRAIAAgATYCAEHI1QAgAyAHcjYCACABIAA2AhggASABNgIIIAEgATYCDAwBCyAEQRkgAkEBdmtBACACQR9HG3QhAiAAKAIAIQACQANAIAAiAygCBEF4cSAERg0BIAJBHXYhACACQQF0IQIgAyAAQQRxakEQaiIHKAIAIgANAAsgByABNgIAIAEgAzYCGCABIAE2AgwgASABNgIIDAELIAMoAggiACABNgIMIAMgATYCCCABQQA2AhggASADNgIMIAEgADYCCAtB5NUAQeTVACgCAEEBayIAQX8gABs2AgALCwcAIAAtACgLBwAgAC0AKgsHACAALQArCwcAIAAtACkLBwAgAC8BNAsHACAALQAwC0ABBH8gACgCGCEBIAAvAS4hAiAALQAoIQMgACgCOCEEIAAQOCAAIAQ2AjggACADOgAoIAAgAjsBLiAAIAE2AhgL5YUCAgd/A34gASACaiEEAkAgACIDKAIMIgANACADKAIEBEAgAyABNgIECyMAQRBrIgkkAAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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C0HjAQwHC0HXAQwGC0HYAQwFC0HZAQwEC0HaAQwDC0HbAQwCC0HdAQwBC0HcAQshAgNAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCADAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQAJ/AkACQAJAAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAMCfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAg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ogKiAqICogKiAqICogKiAqICogKiAqICogIAogILIAQgAUEBaiIBRw0AC0HJACECDOwCCyABQQFqIQEgA0Evai0AAEEBcQ2lAiADQQA2AhwgAyABNgIUIANBlxA2AhAgA0EKNgIMQQAhAgzrAgsgASAERwRAA0AgAS0AAEEgRw0VIAQgAUEBaiIBRw0AC0H4ACECDOsCC0H4ACECDOoCCyADQQI6ACgMOAtBACECIANBADYCHCADQb8LNgIQIANBAjYCDCADIAFBAWo2AhQM6AILQQAhAgzOAgtBDSECDM0CC0ETIQIMzAILQRUhAgzLAgtBFiECDMoCC0EYIQIMyQILQRkhAgzIAgtBGiECDMcCC0EbIQIMxgILQRwhAgzFAgtBHSECDMQCC0EeIQIMwwILQR8hAgzCAgtBICECDMECC0EiIQIMwAILQSMhAgy/AgtBJSECDL4CC0HlACECDL0CCyADQT02AhwgAyABNgIUIAMgADYCDEEAIQIM1QILIANBGzYCHCADIAE2AhQgA0GkHDYCECADQRU2AgxBACECDNQCCyADQSA2AhwgAyABNgIUIANBmBo2AhAgA0EVNgIMQQAhAgzTAgsgA0ETNgIcIAMgATYCFCADQZgaNgIQIANBFTYCDEEAIQIM0gILIANBCzYCHCADIAE2AhQgA0GYGjYCECADQRU2AgxBACECDNECCyADQRA2AhwgAyABNgIUIANBmBo2AhAgA0EVNgIMQQAhAgzQAgsgA0EgNgIcIAMgATYCFCADQaQcNgIQIANBFTYCDEEAIQIMzwILIANBCzYCHCADIAE2AhQgA0GkHDYCECADQRU2AgxBACECDM4CCyADQQw2AhwgAyABNgIUIANBpBw2AhAgA0EVNgIMQQAhAgzNAgtBACECIANBADYCHCADIAE2AhQgA0HdDjYCECADQRI2AgwMzAILAkADQAJAIAEtAABBCmsOBAACAgACCyAEIAFBAWoiAUcNAAtB/QEhAgzMAgsCQAJAIAMtADZBAUcNAEEAIQACQCADKAI4IgJFDQAgAigCYCICRQ0AIAMgAhEAACEACyAARQ0AIABBFUcNASADQfwBNgIcIAMgATYCFCADQdwZNgIQIANBFTYCDEEAIQIMzQILQdwBIQIMswILIANBADYCHCADIAE2AhQgA0H5CzYCECADQR82AgxBACECDMsCCwJAAkAgAy0AKEEBaw4CBAEAC0HbASECDLICC0HUASECDLECCyADQQI6ADFBACEAAkAgAygCOCICRQ0AIAIoAgAiAkUNACADIAIRAAAhAAsgAEUEQEHdASECDLECCyAAQRVHBEAgA0EANgIcIAMgATYCFCADQbQMNgIQIANBEDYCDEEAIQIMygILIANB+wE2AhwgAyABNgIUIANBgRo2AhAgA0EVNgIMQQAhAgzJAgsgASAERgRAQfoBIQIMyQILIAEtAABByABGDQEgA0EBOgAoC0HAASECDK4CC0HaASECDK0CCyABIARHBEAgA0EMNgIIIAMgATYCBEHZASECDK0CC0H5ASECDMUCCyABIARGBEBB+AEhAgzFAgsgAS0AAEHIAEcNBCABQQFqIQFB2AEhAgyrAgsgASAERgRAQfcBIQIMxAILAkACQCABLQAAQcUAaw4QAAUFBQUFBQUFBQUFBQUFAQULIAFBAWohAUHWASECDKsCCyABQQFqIQFB1wEhAgyqAgtB9gEhAiABIARGDcICIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQbrVAGotAABHDQMgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADMMCCyADKAIEIQAgA0IANwMAIAMgACAGQQFqIgEQLiIARQRAQeMBIQIMqgILIANB9QE2AhwgAyABNgIUIAMgADYCDEEAIQIMwgILQfQBIQIgASAERg3BAiADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEG41QBqLQAARw0CIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzCAgsgA0GBBDsBKCADKAIEIQAgA0IANwMAIAMgACAGQQFqIgEQLiIADQMMAgsgA0EANgIAC0EAIQIgA0EANgIcIAMgATYCFCADQeUfNgIQIANBCDYCDAy/AgtB1QEhAgylAgsgA0HzATYCHCADIAE2AhQgAyAANgIMQQAhAgy9AgtBACEAAkAgAygCOCICRQ0AIAIoAkAiAkUNACADIAIRAAAhAAsgAEUNbiAAQRVHBEAgA0EANgIcIAMgATYCFCADQYIPNgIQIANBIDYCDEEAIQIMvQILIANBjwE2AhwgAyABNgIUIANB7Bs2AhAgA0EVNgIMQQAhAgy8AgsgASAERwRAIANBDTYCCCADIAE2AgRB0wEhAgyjAgtB8gEhAgy7AgsgASAERgRAQfEBIQIMuwILAkACQAJAIAEtAABByABrDgsAAQgICAgICAgIAggLIAFBAWohAUHQASECDKMCCyABQQFqIQFB0QEhAgyiAgsgAUEBaiEBQdIBIQIMoQILQfABIQIgASAERg25AiADKAIAIgAgBCABa2ohBiABIABrQQJqIQUDQCABLQAAIABBtdUAai0AAEcNBCAAQQJGDQMgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAY2AgAMuQILQe8BIQIgASAERg24AiADKAIAIgAgBCABa2ohBiABIABrQQFqIQUDQCABLQAAIABBs9UAai0AAEcNAyAAQQFGDQIgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAY2AgAMuAILQe4BIQIgASAERg23AiADKAIAIgAgBCABa2ohBiABIABrQQJqIQUDQCABLQAAIABBsNUAai0AAEcNAiAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAY2AgAMtwILIAMoAgQhACADQgA3AwAgAyAAIAVBAWoiARArIgBFDQIgA0HsATYCHCADIAE2AhQgAyAANgIMQQAhAgy2AgsgA0EANgIACyADKAIEIQAgA0EANgIEIAMgACABECsiAEUNnAIgA0HtATYCHCADIAE2AhQgAyAANgIMQQAhAgy0AgtBzwEhAgyaAgtBACEAAkAgAygCOCICRQ0AIAIoAjQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0HqDTYCECADQSY2AgxBACECDLQCC0HOASECDJoCCyADQesBNgIcIAMgATYCFCADQYAbNgIQIANBFTYCDEEAIQIMsgILIAEgBEYEQEHrASECDLICCyABLQAAQS9GBEAgAUEBaiEBDAELIANBADYCHCADIAE2AhQgA0GyODYCECADQQg2AgxBACECDLECC0HNASECDJcCCyABIARHBEAgA0EONgIIIAMgATYCBEHMASECDJcCC0HqASECDK8CCyABIARGBEBB6QEhAgyvAgsgAS0AAEEwayIAQf8BcUEKSQRAIAMgADoAKiABQQFqIQFBywEhAgyWAgsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDZcCIANB6AE2AhwgAyABNgIUIAMgADYCDEEAIQIMrgILIAEgBEYEQEHnASECDK4CCwJAIAEtAABBLkYEQCABQQFqIQEMAQsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDZgCIANB5gE2AhwgAyABNgIUIAMgADYCDEEAIQIMrgILQcoBIQIMlAILIAEgBEYEQEHlASECDK0CC0EAIQBBASEFQQEhB0EAIQICQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQCABLQAAQTBrDgoKCQABAgMEBQYICwtBAgwGC0EDDAULQQQMBAtBBQwDC0EGDAILQQcMAQtBCAshAkEAIQVBACEHDAILQQkhAkEBIQBBACEFQQAhBwwBC0EAIQVBASECCyADIAI6ACsgAUEBaiEBAkACQCADLQAuQRBxDQACQAJAAkAgAy0AKg4DAQACBAsgB0UNAwwCCyAADQEMAgsgBUUNAQsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDQIgA0HiATYCHCADIAE2AhQgAyAANgIMQQAhAgyvAgsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDZoCIANB4wE2AhwgAyABNgIUIAMgADYCDEEAIQIMrgILIAMoAgQhACADQQA2AgQgAyAAIAEQLyIARQ2YAiADQeQBNgIcIAMgATYCFCADIAA2AgwMrQILQckBIQIMkwILQQAhAAJAIAMoAjgiAkUNACACKAJEIgJFDQAgAyACEQAAIQALAkAgAARAIABBFUYNASADQQA2AhwgAyABNgIUIANBpA02AhAgA0EhNgIMQQAhAgytAgtByAEhAgyTAgsgA0HhATYCHCADIAE2AhQgA0HQGjYCECADQRU2AgxBACECDKsCCyABIARGBEBB4QEhAgyrAgsCQCABLQAAQSBGBEAgA0EAOwE0IAFBAWohAQwBCyADQQA2AhwgAyABNgIUIANBmRE2AhAgA0EJNgIMQQAhAgyrAgtBxwEhAgyRAgsgASAERgRAQeABIQIMqgILAkAgAS0AAEEwa0H/AXEiAkEKSQRAIAFBAWohAQJAIAMvATQiAEGZM0sNACADIABBCmwiADsBNCAAQf7/A3EgAkH//wNzSw0AIAMgACACajsBNAwCC0EAIQIgA0EANgIcIAMgATYCFCADQZUeNgIQIANBDTYCDAyrAgsgA0EANgIcIAMgATYCFCADQZUeNgIQIANBDTYCDEEAIQIMqgILQcYBIQIMkAILIAEgBEYEQEHfASECDKkCCwJAIAEtAABBMGtB/wFxIgJBCkkEQCABQQFqIQECQCADLwE0IgBBmTNLDQAgAyAAQQpsIgA7ATQgAEH+/wNxIAJB//8Dc0sNACADIAAgAmo7ATQMAgtBACECIANBADYCHCADIAE2AhQgA0GVHjYCECADQQ02AgwMqgILIANBADYCHCADIAE2AhQgA0GVHjYCECADQQ02AgxBACECDKkCC0HFASECDI8CCyABIARGBEBB3gEhAgyoAgsCQCABLQAAQTBrQf8BcSICQQpJBEAgAUEBaiEBAkAgAy8BNCIAQZkzSw0AIAMgAEEKbCIAOwE0IABB/v8DcSACQf//A3NLDQAgAyAAIAJqOwE0DAILQQAhAiADQQA2AhwgAyABNgIUIANBlR42AhAgA0ENNgIMDKkCCyADQQA2AhwgAyABNgIUIANBlR42AhAgA0ENNgIMQQAhAgyoAgtBxAEhAgyOAgsgASAERgRAQd0BIQIMpwILAkACQAJAAkAgAS0AAEEKaw4XAgMDAAMDAwMDAwMDAwMDAwMDAwMDAwEDCyABQQFqDAULIAFBAWohAUHDASECDI8CCyABQQFqIQEgA0Evai0AAEEBcQ0IIANBADYCHCADIAE2AhQgA0GNCzYCECADQQ02AgxBACECDKcCCyADQQA2AhwgAyABNgIUIANBjQs2AhAgA0ENNgIMQQAhAgymAgsgASAERwRAIANBDzYCCCADIAE2AgRBASECDI0CC0HcASECDKUCCwJAAkADQAJAIAEtAABBCmsOBAIAAAMACyAEIAFBAWoiAUcNAAtB2wEhAgymAgsgAygCBCEAIANBADYCBCADIAAgARAtIgBFBEAgAUEBaiEBDAQLIANB2gE2AhwgAyAANgIMIAMgAUEBajYCFEEAIQIMpQILIAMoAgQhACADQQA2AgQgAyAAIAEQLSIADQEgAUEBagshAUHBASECDIoCCyADQdkBNgIcIAMgADYCDCADIAFBAWo2AhRBACECDKICC0HCASECDIgCCyADQS9qLQAAQQFxDQEgA0EANgIcIAMgATYCFCADQeQcNgIQIANBGTYCDEEAIQIMoAILIAEgBEYEQEHZASEC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IAFBAWohAUGeASECDOQBCyABQQFqIQFBnwEhAgzjAQtBtwEhAiABIARGDfsBIAMoAgAiACAEIAFraiEFIAEgAGtBA2ohBgJAA0AgAS0AACAAQezUAGotAABHDSggAEEDRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADPwBCyADQQA2AgAgBkEBaiEBQQ0MKAtBtgEhAiABIARGDfoBIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQaHVAGotAABHDScgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADPsBCyADQQA2AgAgBkEBaiEBQQwMJwtBtQEhAiABIARGDfkBIAMoAgAiACAEIAFraiEFIAEgAGtBAWohBgJAA0AgAS0AACAAQerUAGotAABHDSYgAEEBRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADPoBCyADQQA2AgAgBkEBaiEBQQMMJgtBtAEhAiABIARGDfgBIAMoAgAiACAEIAFraiEFIAEgAGtBAWohBgJAA0AgAS0AACAAQejUAGotAABHDSUgAEEBRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADPkBCyADQQA2AgAgBkEBaiEBQSYMJQsgASAERgRAQbMBIQIM+AELAkACQCABLQAAQdQAaw4CAAEnCyABQQFqIQFBmQEhAgzfAQsgAUEBaiEBQZoBIQIM3gELQbIBIQIgASAERg32ASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHm1ABqLQAARw0jIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAz3AQsgA0EANgIAIAZBAWohAUEnDCMLQbEBIQIgASAERg31ASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHk1ABqLQAARw0iIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAz2AQsgA0EANgIAIAZBAWohAUEcDCILQbABIQIgASAERg30ASADKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEHe1ABqLQAARw0hIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAz1AQsgA0EANgIAIAZBAWohAUEGDCELQa8BIQIgASAERg3zASADKAIAIgAgBCABa2ohBSABIABrQQRqIQYCQANAIAEtAAAgAEHZ1ABqLQAARw0gIABBBEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAz0AQsgA0EANgIAIAZBAWohAUEZDCALIAEgBEYEQEGuASECDPMBCwJAAkACQAJAIAEtAABBLWsOIwAkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJAEkJCQkJAIkJCQDJAsgAUEBaiEBQY4BIQIM3AELIAFBAWohAUGPASECDNsBCyABQQFqIQFBlAEhAgzaAQsgAUEBaiEBQZUBIQIM2QELQa0BIQIgASAERg3xASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHX1ABqLQAARw0eIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzyAQsgA0EANgIAIAZBAWohAUELDB4LIAEgBEYEQEGsASECDPEBCwJAAkAgAS0AAEHBAGsOAwAgASALIAFBAWohAUGQASECDNgBCyABQQFqIQFBkwEhAgzXAQsgASAERgRAQasBIQIM8AELAkACQCABLQAAQcEAaw4PAB8fHx8fHx8fHx8fHx8BHwsgAUEBaiEBQZEBIQIM1wELIAFBAWohAUGSASECDNYBCyABIARGBEBBqgEhAgzvAQsgAS0AAEHMAEcNHCABQQFqIQFBCgwbC0GpASECIAEgBEYN7QEgAygCACIAIAQgAWtqIQUgASAAa0EFaiEGAkADQCABLQAAIABB0dQAai0AAEcNGiAAQQVGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM7gELIANBADYCACAGQQFqIQFBHgwaC0GoASECIAEgBEYN7AEgAygCACIAIAQgAWtqIQUgASAAa0EGaiEGAkADQCABLQAAIABBytQAai0AAEcNGSAAQQZGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM7QELIANBADYCACAGQQFqIQFBFQwZC0GnASECIAEgBEYN6wEgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBx9QAai0AAEcNGCAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM7AELIANBADYCACAGQQFqIQFBFwwYC0GmASECIAEgBEYN6gEgAygCACIAIAQgAWtqIQUgASAAa0EFaiEGAkADQCABLQAAIABBwdQAai0AAEcNFyAAQQVGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM6wELIANBADYCACAGQQFqIQFBGAwXCyABIARGBEBBpQEhAgzqAQsCQAJAIAEtAABByQBrDgcAGRkZGRkBGQsgAUEBaiEBQYsBIQIM0QELIAFBAWohAUGMASECDNABC0GkASECIAEgBEYN6AEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGAkADQCABLQAAIABBptUAai0AAEcNFSAAQQFGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM6QELIANBADYCACAGQQFqIQFBCQwVC0GjASECIAEgBEYN5wEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGAkADQCABLQAAIABBpNUAai0AAEcNFCAAQQFGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM6AELIANBADYCACAGQQFqIQFBHwwUC0GiASECIAEgBEYN5gEgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBvtQAai0AAEcNEyAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM5wELIANBADYCACAGQQFqIQFBAgwTC0GhASECIAEgBEYN5QEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGA0AgAS0AACAAQbzUAGotAABHDREgAEEBRg0CIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADOUBCyABIARGBEBBoAEhAgzlAQtBASABLQAAQd8ARw0RGiABQQFqIQFBhwEhAgzLAQsgA0EANgIAIAZBAWohAUGIASECDMoBC0GfASECIAEgBEYN4gEgAygCACIAIAQgAWtqIQUgASAAa0EIaiEGAkADQCABLQAAIABBhNUAai0AAEcNDyAAQQhGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM4wELIANBADYCACAGQQFqIQFBKQwPC0GeASECIAEgBEYN4QEgAygCACIAIAQgAWtqIQUgASAAa0EDaiEGAkADQCABLQAAIABBuNQAai0AAEcNDiAAQQNGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM4gELIANBADYCACAGQQFqIQFBLQwOCyABIARGBEBBnQEhAgzhAQsgAS0AAEHFAEcNDiABQQFqIQFBhAEhAgzHAQsgASAERgRAQZwBIQIM4AELAkACQCABLQAAQcwAaw4IAA8PDw8PDwEPCyABQQFqIQFBggEhAgzHAQsgAUEBaiEBQYMBIQIMxgELQZsBIQIgASAERg3eASADKAIAIgAgBCABa2ohBSABIABrQQRqIQYCQANAIAEtAAAgAEGz1ABqLQAARw0LIABBBEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzfAQsgA0EANgIAIAZBAWohAUEjDAsLQZoBIQIgASAERg3dASADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGw1ABqLQAARw0KIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzeAQsgA0EANgIAIAZBAWohAUEADAoLIAEgBEYEQEGZASECDN0BCwJAAkAgAS0AAEHIAGsOCAAMDAwMDAwBDAsgAUEBaiEBQf0AIQIMxAELIAFBAWohAUGAASECDMMBCyABIARGBEBBmAEhAgzcAQsCQAJAIAEtAABBzgBrDgMACwELCyABQQFqIQFB/gAhAgzDAQsgAUEBaiEBQf8AIQIMwgELIAEgBEYEQEGXASECDNsBCyABLQAAQdkARw0IIAFBAWohAUEIDAcLQZYBIQIgASAERg3ZASADKAIAIgAgBCABa2ohBSABIABrQQNqIQYCQANAIAEtAAAgAEGs1ABqLQAARw0GIABBA0YNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzaAQsgA0EANgIAIAZBAWohAUEFDAYLQZUBIQIgASAERg3YASADKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEGm1ABqLQAARw0FIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzZAQsgA0EANgIAIAZBAWohAUEWDAULQZQBIQIgASAERg3XASADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGh1QBqLQAARw0EIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzYAQsgA0EANgIAIAZBAWohAUEQDAQLIAEgBEYEQEGTASECDNcBCwJAAkAgAS0AAEHDAGsODAAGBgYGBgYGBgYGAQYLIAFBAWohAUH5ACECDL4BCyABQQFqIQFB+gAhAgy9AQtBkgEhAiABIARGDdUBIAMoAgAiACAEIAFraiEFIAEgAGtBBWohBgJAA0AgAS0AACAAQaDUAGotAABHDQIgAEEFRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADNYBCyADQQA2AgAgBkEBaiEBQSQMAgsgA0EANgIADAILIAEgBEYEQEGRASECDNQBCyABLQAAQcwARw0BIAFBAWohAUETCzoAKSADKAIEIQAgA0EANgIEIAMgACABEC4iAA0CDAELQQAhAiADQQA2AhwgAyABNgIUIANB/h82AhAgA0EGNgIMDNEBC0H4ACECDLcBCyADQZABNgIcIAMgATYCFCADIAA2AgxBACECDM8BC0EAIQACQCADKAI4IgJFDQAgAigCQCICRQ0AIAMgAhEAACEACyAARQ0AIABBFUYNASADQQA2AhwgAyABNgIUIANBgg82AhAgA0EgNgIMQQAhAgzOAQtB9wAhAgy0AQsgA0GPATYCHCADIAE2AhQgA0HsGzYCECADQRU2AgxBACECDMwBCyABIARGBEBBjwEhAgzMAQsCQCABLQAAQSBGBEAgAUEBaiEBDAELIANBADYCHCADIAE2AhQgA0GbHzYCECADQQY2AgxBACECDMwBC0ECIQIMsgELA0AgAS0AAEEgRw0CIAQgAUEBaiIBRw0AC0GOASECDMoBCyABIARGBEBBjQEhAgzKAQsCQCABLQAAQQlrDgRKAABKAAtB9QAhAgywAQsgAy0AKUEFRgRAQfYAIQIMsAELQfQAIQIMrwELIAEgBEYEQEGMASECDMgBCyADQRA2AgggAyABNgIEDAoLIAEgBEYEQEGLASECDMcBCwJAIAEtAABBCWsOBEcAAEcAC0HzACECDK0BCyABIARHBEAgA0EQNgIIIAMgATYCBEHxACECDK0BC0GKASECDMUBCwJAIAEgBEcEQANAIAEtAABBoNAAai0AACIAQQNHBEACQCAAQQFrDgJJAAQLQfAAIQIMrwELIAQgAUEBaiIBRw0AC0GIASECDMYBC0GIASECDMUBCyADQQA2AhwgAyABNgIUIANB2yA2AhAgA0EHNgIMQQAhAgzEAQsgASAERgRAQYkBIQIMxAELAkACQAJAIAEtAABBoNIAai0AAEEBaw4DRgIAAQtB8gAhAgysAQsgA0EANgIcIAMgATYCFCADQbQSNgIQIANBBzYCDEEAIQIMxAELQeoAIQIMqgELIAEgBEcEQCABQQFqIQFB7wAhAgyqAQtBhwEhAgzCAQsgBCABIgBGBEBBhgEhAgzCAQsgAC0AACIBQS9GBEAgAEEBaiEBQe4AIQIMqQELIAFBCWsiAkEXSw0BIAAhAUEBIAJ0QZuAgARxDUEMAQsgBCABIgBGBEBBhQEhAgzBAQsgAC0AAEEvRw0AIABBAWohAQwDC0EAIQIgA0EANgIcIAMgADYCFCADQdsgNgIQIANBBzYCDAy/AQsCQAJAAkACQAJAA0AgAS0AAEGgzgBqLQAAIgBBBUcEQAJAAkAgAEEBaw4IRwUGBwgABAEIC0HrACECDK0BCyABQQFqIQFB7QAhAgysAQsgBCABQQFqIgFHDQALQYQBIQIMwwELIAFBAWoMFAsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDR4gA0HbADYCHCADIAE2AhQgAyAANgIMQQAhAgzBAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDR4gA0HdADYCHCADIAE2AhQgAyAANgIMQQAhAgzAAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDR4gA0H6ADYCHCADIAE2AhQgAyAANgIMQQAhAgy/AQsgA0EANgIcIAMgATYCFCADQfkPNgIQIANBBzYCDEEAIQIMvgELIAEgBEYEQEGDASECDL4BCwJAIAEtAABBoM4Aai0AAEEBaw4IPgQFBgAIAgMHCyABQQFqIQELQQMhAgyjAQsgAUEBagwNC0EAIQIgA0EANgIcIANB0RI2AhAgA0EHNgIMIAMgAUEBajYCFAy6AQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDRYgA0HbADYCHCADIAE2AhQgAyAANgIMQQAhAgy5AQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDRYgA0HdADYCHCADIAE2AhQgAyAANgIMQQAhAgy4AQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDRYgA0H6ADYCHCADIAE2AhQgAyAANgIMQQAhAgy3AQsgA0EANgIcIAMgATYCFCADQfkPNgIQIANBBzYCDEEAIQIMtgELQewAIQIMnAELIAEgBEYEQEGCASECDLUBCyABQQFqDAILIAEgBEYEQEGBASECDLQBCyABQQFqDAELIAEgBEYNASABQQFqCyEBQQQhAgyYAQtBgAEhAgywAQsDQCABLQAAQaDMAGotAAAiAEECRwRAIABBAUcEQEHpACECDJkBCwwxCyAEIAFBAWoiAUcNAAtB/wAhAgyvAQsgASAERgRAQf4AIQIMrwELAkAgAS0AAEEJaw43LwMGLwQGBgYGBgYGBgYGBgYGBgYGBgYFBgYCBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGAAYLIAFBAWoLIQFBBSECDJQBCyABQQFqDAYLIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0IIANB2wA2AhwgAyABNgIUIAMgADYCDEEAIQIMqwELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0IIANB3QA2AhwgAyABNgIUIAMgADYCDEEAIQIMqgELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0IIANB+gA2AhwgAyABNgIUIAMgADYCDEEAIQIMqQELIANBADYCHCADIAE2AhQgA0GNFDYCECADQQc2AgxBACECDKgBCwJAAkACQAJAA0AgAS0AAEGgygBqLQAAIgBBBUcEQAJAIABBAWsOBi4DBAUGAAYLQegAIQIMlAELIAQgAUEBaiIBRw0AC0H9ACECDKsBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNByADQdsANgIcIAMgATYCFCADIAA2AgxBACECDKoBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNByADQd0ANgIcIAMgATYCFCADIAA2AgxBACECDKkBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNByADQfoANgIcIAMgATYCFCADIAA2AgxBACECDKgBCyADQQA2AhwgAyABNgIUIANB5Ag2AhAgA0EHNgIMQQAhAgynAQsgASAERg0BIAFBAWoLIQFBBiECDIwBC0H8ACECDKQBCwJAAkACQAJAA0AgAS0AAEGgyABqLQAAIgBBBUcEQCAAQQFrDgQpAgMEBQsgBCABQQFqIgFHDQALQfsAIQIMpwELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0DIANB2wA2AhwgAyABNgIUIAMgADYCDEEAIQIMpgELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0DIANB3QA2AhwgAyABNgIUIAMgADYCDEEAIQIMpQELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0DIANB+gA2AhwgAyABNgIUIAMgADYCDEEAIQIMpAELIANBADYCHCADIAE2AhQgA0G8CjYCECADQQc2AgxBACECDKMBC0HPACECDIkBC0HRACECDIgBC0HnACECDIcBCyABIARGBEBB+gAhAgygAQsCQCABLQAAQQlrDgQgAAAgAAsgAUEBaiEBQeYAIQIMhgELIAEgBEYEQEH5ACECDJ8BCwJAIAEtAABBCWsOBB8AAB8AC0EAIQACQCADKAI4IgJFDQAgAigCOCICRQ0AIAMgAhEAACEACyAARQRAQeIBIQIMhgELIABBFUcEQCADQQA2AhwgAyABNgIUIANByQ02AhAgA0EaNgIMQQAhAgyfAQsgA0H4ADYCHCADIAE2AhQgA0HqGjYCECADQRU2AgxBACECDJ4BCyABIARHBEAgA0ENNgIIIAMgATYCBEHkACECDIUBC0H3ACECDJ0BCyABIARGBEBB9gAhAgydAQsCQAJAAkAgAS0AAEHIAGsOCwABCwsLCwsLCwsCCwsgAUEBaiEBQd0AIQIMhQELIAFBAWohAUHgACECDIQBCyABQQFqIQFB4wAhAgyDAQtB9QAhAiABIARGDZsBIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQbXVAGotAABHDQggAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADJwBCyADKAIEIQAgA0IANwMAIAMgACAGQQFqIgEQKyIABEAgA0H0ADYCHCADIAE2AhQgAyAANgIMQQAhAgycAQtB4gAhAgyCAQtBACEAAkAgAygCOCICRQ0AIAIoAjQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0HqDTYCECADQSY2AgxBACECDJwBC0HhACECDIIBCyADQfMANgIcIAMgATYCFCADQYAbNgIQIANBFTYCDEEAIQIMmgELIAMtACkiAEEja0ELSQ0JAkAgAEEGSw0AQQEgAHRBygBxRQ0ADAoLQQAhAiADQQA2AhwgAyABNgIUIANB7Qk2AhAgA0EINgIMDJkBC0HyACECIAEgBEYNmAEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGAkADQCABLQAAIABBs9UAai0AAEcNBSAAQQFGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMmQELIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARArIgAEQCADQfEANgIcIAMgATYCFCADIAA2AgxBACECDJkBC0HfACECDH8LQQAhAAJAIAMoAjgiAkUNACACKAI0IgJFDQAgAyACEQAAIQALAkAgAARAIABBFUYNASADQQA2AhwgAyABNgIUIANB6g02AhAgA0EmNgIMQQAhAgyZAQtB3gAhAgx/CyADQfAANgIcIAMgATYCFCADQYAbNgIQIANBFTYCDEEAIQIMlwELIAMtAClBIUYNBiADQQA2AhwgAyABNgIUIANBkQo2AhAgA0EINgIMQQAhAgyWAQtB7wAhAiABIARGDZUBIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQbDVAGotAABHDQIgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADJYBCyADKAIEIQAgA0IANwMAIAMgACAGQQFqIgEQKyIARQ0CIANB7QA2AhwgAyABNgIUIAMgADYCDEEAIQIMlQELIANBADYCAAsgAygCBCEAIANBADYCBCADIAAgARArIgBFDYABIANB7gA2AhwgAyABNgIUIAMgADYCDEEAIQIMkwELQdwAIQIMeQtBACEAAkAgAygCOCICRQ0AIAIoAjQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0HqDTYCECADQSY2AgxBACECDJMBC0HbACECDHkLIANB7AA2AhwgAyABNgIUIANBgBs2AhAgA0EVNgIMQQAhAgyRAQsgAy0AKSIAQSNJDQAgAEEuRg0AIANBADYCHCADIAE2AhQgA0HJCTYCECADQQg2AgxBACECDJABC0HaACECDHYLIAEgBEYEQEHrACECDI8BCwJAIAEtAABBL0YEQCABQQFqIQEMAQsgA0EANgIcIAMgATYCFCADQbI4NgIQIANBCDYCDEEAIQIMjwELQdkAIQIMdQsgASAERwRAIANBDjYCCCADIAE2AgRB2AAhAgx1C0HqACECDI0BCyABIARGBEBB6QAhAgyNAQsgAS0AAEEwayIAQf8BcUEKSQRAIAMgADoAKiABQQFqIQFB1wAhAgx0CyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNeiADQegANgIcIAMgATYCFCADIAA2AgxBACECDIwBCyABIARGBEBB5wAhAgyMAQsCQCABLQAAQS5GBEAgAUEBaiEBDAELIAMoAgQhACADQQA2AgQgAyAAIAEQLyIARQ17IANB5gA2AhwgAyABNgIUIAMgADYCDEEAIQIMjAELQdYAIQIMcgsgASAERgRAQeUAIQIMiwELQQAhAEEBIQVBASEHQQAhAgJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAIAEtAABBMGsOCgoJAAECAwQFBggLC0ECDAYLQQMMBQtBBAwEC0EFDAMLQQYMAgtBBwwBC0EICyECQQAhBUEAIQcMAgtBCSECQQEhAEEAIQVBACEHDAELQQAhBUEBIQILIAMgAjoAKyABQQFqIQECQAJAIAMtAC5BEHENAAJAAkACQCADLQAqDgMBAAIECyAHRQ0DDAILIAANAQwCCyAFRQ0BCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNAiADQeIANgIcIAMgATYCFCADIAA2AgxBACECDI0BCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNfSADQeMANgIcIAMgATYCFCADIAA2AgxBACECDIwBCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNeyADQeQANgIcIAMgATYCFCADIAA2AgwMiwELQdQAIQIMcQsgAy0AKUEiRg2GAUHTACECDHALQQAhAAJAIAMoAjgiAkUNACACKAJEIgJFDQAgAyACEQAAIQALIABFBEBB1QAhAgxwCyAAQRVHBEAgA0EANgIcIAMgATYCFCADQaQNNgIQIANBITYCDEEAIQIMiQELIANB4QA2AhwgAyABNgIUIANB0Bo2AhAgA0EVNgIMQQAhAgyIAQsgASAERgRAQeAAIQIMiAELAkACQAJAAkACQCABLQAAQQprDgQBBAQABAsgAUEBaiEBDAELIAFBAWohASADQS9qLQAAQQFxRQ0BC0HSACECDHALIANBADYCHCADIAE2AhQgA0G2ETYCECADQQk2AgxBACECDIgBCyADQQA2AhwgAyABNgIUIANBthE2AhAgA0EJNgIMQQAhAgyHAQsgASAERgRAQd8AIQIMhwELIAEtAABBCkYEQCABQQFqIQEMCQsgAy0ALkHAAHENCCADQQA2AhwgAyABNgIUIANBthE2AhAgA0ECNgIMQQAhAgyGAQsgASAERgRAQd0AIQIMhgELIAEtAAAiAkENRgRAIAFBAWohAUHQACECDG0LIAEhACACQQlrDgQFAQEFAQsgBCABIgBGBEBB3AAhAgyFAQsgAC0AAEEKRw0AIABBAWoMAgtBACECIANBADYCHCADIAA2AhQgA0HKLTYCECADQQc2AgwMgwELIAEgBEYEQEHbACECDIMBCwJAIAEtAABBCWsOBAMAAAMACyABQQFqCyEBQc4AIQIMaAsgASAERgRAQdoAIQIMgQELIAEtAABBCWsOBAABAQABC0EAIQIgA0EANgIcIANBmhI2AhAgA0EHNgIMIAMgAUEBajYCFAx/CyADQYASOwEqQQAhAAJAIAMoAjgiAkUNACACKAI4IgJFDQAgAyACEQAAIQALIABFDQAgAEEVRw0BIANB2QA2AhwgAyABNgIUIANB6ho2AhAgA0EVNgIMQQAhAgx+C0HNACECDGQLIANBADYCHCADIAE2AhQgA0HJDTYCECADQRo2AgxBACECDHwLIAEgBEYEQEHZACECDHwLIAEtAABBIEcNPSABQQFqIQEgAy0ALkEBcQ09IANBADYCHCADIAE2AhQgA0HCHDYCECADQR42AgxBACECDHsLIAEgBEYEQEHYACECDHsLAkACQAJAAkACQCABLQAAIgBBCmsOBAIDAwABCyABQQFqIQFBLCECDGULIABBOkcNASADQQA2AhwgAyABNgIUIANB5xE2AhAgA0EKNgIMQQAhAgx9CyABQQFqIQEgA0Evai0AAEEBcUUNcyADLQAyQYABcUUEQCADQTJqIQIgAxA1QQAhAAJAIAMoAjgiBkUNACAGKAIoIgZFDQAgAyAGEQAAIQALAkACQCAADhZNTEsBAQEBAQEBAQEBAQEBAQEBAQEAAQsgA0EpNgIcIAMgATYCFCADQawZNgIQIANBFTYCDEEAIQIMfgsg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c3BvbnNlIHN0YXR1cwBFeHBlY3RlZCBMRiBhZnRlciBoZWFkZXJzAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMAVXNlciBjYWxsYmFjayBlcnJvcgBgb25fcmVzZXRgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19oZWFkZXJgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2JlZ2luYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlYCBjYWxsYmFjayBlcnJvcgBgb25fc3RhdHVzX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdmVyc2lvbl9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3VybF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3Byb3RvY29sX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fcHJvdG9jb2wARW1wdHkgQ29udGVudC1MZW5ndGgASW52YWxpZCBjaGFyYWN0ZXIgaW4gQ29udGVudC1MZW5ndGgAVHJhbnNmZXItRW5jb2RpbmcgY2FuJ3QgYmUgcHJlc2VudCB3aXRoIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgc2l6ZQBFeHBlY3RlZCBMRiBhZnRlciBjaHVuayBzaXplAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBVbmV4cGVjdGVkIHdoaXRlc3BhY2UgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgTEYgYWZ0ZXIgaGVhZGVyIHZhbHVlAEludmFsaWQgYFRyYW5zZmVyLUVuY29kaW5nYCBoZWFkZXIgdmFsdWUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciBjaHVuayBleHRlbnNpb24gdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZSB2YWx1ZQBJbnZhbGlkIHF1b3RlZC1wYWlyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAFBhdXNlZCBieSBvbl9oZWFkZXJzX2NvbXBsZXRlAEludmFsaWQgRU9GIHN0YXRlAG9uX3Jlc2V0IHBhdXNlAG9uX2NodW5rX2hlYWRlciBwYXVzZQBvbl9tZXNzYWdlX2JlZ2luIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZSBwYXVzZQBvbl9zdGF0dXNfY29tcGxldGUgcGF1c2UAb25fdmVyc2lvbl9jb21wbGV0ZSBwYXVzZQBvbl91cmxfY29tcGxldGUgcGF1c2UAb25fcHJvdG9jb2xfY29tcGxldGUgcGF1c2UAb25fY2h1bmtfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX3ZhbHVlX2NvbXBsZXRlIHBhdXNlAG9uX21lc3NhZ2VfY29tcGxldGUgcGF1c2UAb25fbWV0aG9kX2NvbXBsZXRlIHBhdXNlAG9uX2hlYWRlcl9maWVsZF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19leHRlbnNpb25fbmFtZSBwYXVzZQBVbmV4cGVjdGVkIHNwYWNlIGFmdGVyIHN0YXJ0IGxpbmUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciByZXNwb25zZSBsaW5lAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fY2h1bmtfZXh0ZW5zaW9uX25hbWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBuYW1lAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgZXh0ZW5zaW9uIG5hbWUASW52YWxpZCBzdGF0dXMgY29kZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABNaXNzaW5nIGV4cGVjdGVkIENSIGFmdGVyIGNodW5rIGRhdGEARXhwZWN0ZWQgTEYgYWZ0ZXIgY2h1bmsgZGF0YQBVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AARGF0YSBhZnRlciBgQ29ubmVjdGlvbjogY2xvc2VgAFNXSVRDSF9QUk9YWQBVU0VfUFJPWFkATUtBQ1RJVklUWQBVTlBST0NFU1NBQkxFX0VOVElUWQBRVUVSWQBDT1BZAE1PVkVEX1BFUk1BTkVOVExZAFRPT19FQVJMWQBOT1RJRlkARkFJTEVEX0RFUEVOREVOQ1kAQkFEX0dBVEVXQVkAUExBWQBQVVQAQ0hFQ0tPVVQAR0FURVdBWV9USU1FT1VUAFJFUVVFU1RfVElNRU9VVABORVRXT1JLX0NPTk5FQ1RfVElNRU9VVABDT05ORUNUSU9OX1RJTUVPVVQATE9HSU5fVElNRU9VVABORVRXT1JLX1JFQURfVElNRU9VVABQT1NUAE1JU0RJUkVDVEVEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9SRVFVRVNUAENMSUVOVF9DTE9TRURfTE9BRF9CQUxBTkNFRF9SRVFVRVNUAEJBRF9SRVFVRVNUAEhUVFBfUkVRVUVTVF9TRU5UX1RPX0hUVFBTX1BPUlQAUkVQT1JUAElNX0FfVEVBUE9UAFJFU0VUX0NPTlRFTlQATk9fQ09OVEVOVABQQVJUSUFMX0NPTlRFTlQASFBFX0lOVkFMSURfQ09OU1RBTlQASFBFX0NCX1JFU0VUAEdFVABIUEVfU1RSSUNUAENPTkZMSUNUAFRFTVBPUkFSWV9SRURJUkVDVABQRVJNQU5FTlRfUkVESVJFQ1QAQ09OTkVDVABNVUxUSV9TVEFUVVMASFBFX0lOVkFMSURfU1RBVFVTAFRPT19NQU5ZX1JFUVVFU1RTAEVBUkxZX0hJTlRTAFVOQVZBSUxBQkxFX0ZPUl9MRUdBTF9SRUFTT05TAE9QVElPTlMAU1dJVENISU5HX1BST1RPQ09MUwBWQVJJQU5UX0FMU09fTkVHT1RJQVRFUwBNVUxUSVBMRV9DSE9JQ0VTAElOVEVSTkFMX1NFUlZFUl9FUlJPUgBXRUJfU0VSVkVSX1VOS05PV05fRVJST1IAUkFJTEdVTl9FUlJPUgBJREVOVElUWV9QUk9WSURFUl9BVVRIRU5USUNBVElPTl9FUlJPUgBTU0xfQ0VSVElGSUNBVEVfRVJST1IASU5WQUxJRF9YX0ZPUldBUkRFRF9GT1IAU0VUX1BBUkFNRVRFUgBHRVRfUEFSQU1FVEVSAEhQRV9VU0VSAFNFRV9PVEhFUgBIUEVfQ0JfQ0hVTktfSEVBREVSAEV4cGVjdGVkIExGIGFmdGVyIENSAE1LQ0FMRU5EQVIAU0VUVVAAV0VCX1NFUlZFUl9JU19ET1dOAFRFQVJET1dOAEhQRV9DTE9TRURfQ09OTkVDVElPTgBIRVVSSVNUSUNfRVhQSVJBVElPTgBESVNDT05ORUNURURfT1BFUkFUSU9OAE5PTl9BVVRIT1JJVEFUSVZFX0lORk9STUFUSU9OAEhQRV9JTlZBTElEX1ZFUlNJT04ASFBFX0NCX01FU1NBR0VfQkVHSU4AU0lURV9JU19GUk9aRU4ASFBFX0lOVkFMSURfSEVBREVSX1RPS0VOAElOVkFMSURfVE9LRU4ARk9SQklEREVOAEVOSEFOQ0VfWU9VUl9DQUxNAEhQRV9JTlZBTElEX1VSTABCTE9DS0VEX0JZX1BBUkVOVEFMX0NPTlRST0wATUtDT0wAQUNMAEhQRV9JTlRFUk5BTABSRVFVRVNUX0hFQURFUl9GSUVMRFNfVE9PX0xBUkdFX1VOT0ZGSUNJQUwASFBFX09LAFVOTElOSwBVTkxPQ0sAUFJJAFJFVFJZX1dJVEgASFBFX0lOVkFMSURfQ09OVEVOVF9MRU5HVEgASFBFX1VORVhQRUNURURfQ09OVEVOVF9MRU5HVEgARkxVU0gAUFJPUFBBVENIAE0tU0VBUkNIAFVSSV9UT09fTE9ORwBQUk9DRVNTSU5HAE1JU0NFTExBTkVPVVNfUEVSU0lTVEVOVF9XQVJOSU5HAE1JU0NFTExBTkVPVVNfV0FSTklORwBIUEVfSU5WQUxJRF9UUkFOU0ZFUl9FTkNPRElORwBFeHBlY3RlZCBDUkxGAEhQRV9JTlZBTElEX0NIVU5LX1NJWkUATU9WRQBDT05USU5VRQBIUEVfQ0JfU1RBVFVTX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJTX0NPTVBMRVRFAEhQRV9DQl9WRVJTSU9OX0NPTVBMRVRFAEhQRV9DQl9VUkxfQ09NUExFVEUASFBFX0NCX1BST1RPQ09MX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19DT01QTEVURQBIUEVfQ0JfSEVBREVSX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fVkFMVUVfQ09NUExFVEUASFBFX0NCX0NIVU5LX0VYVEVOU0lPTl9OQU1FX0NPTVBMRVRFAEhQRV9DQl9NRVNTQUdFX0NPTVBMRVRFAEhQRV9DQl9NRVRIT0RfQ09NUExFVEUASFBFX0NCX0hFQURFUl9GSUVMRF9DT01QTEVURQBERUxFVEUASFBFX0lOVkFMSURfRU9GX1NUQVRFAElOVkFMSURfU1NMX0NFUlRJRklDQVRFAFBBVVNFAE5PX1JFU1BPTlNFAFVOU1VQUE9SVEVEX01FRElBX1RZUEUAR09ORQBOT1RfQUNDRVBUQUJMRQBTRVJWSUNFX1VOQVZBSUxBQkxFAFJBTkdFX05PVF9TQVRJU0ZJQUJMRQBPUklHSU5fSVNfVU5SRUFDSEFCTEUAUkVTUE9OU0VfSVNfU1RBTEUAUFVSR0UATUVSR0UAUkVRVUVTVF9IRUFERVJfRklFTERTX1RPT19MQVJHRQBSRVFVRVNUX0hFQURFUl9UT09fTEFSR0UAUEFZTE9BRF9UT09fTEFSR0UASU5TVUZGSUNJRU5UX1NUT1JBR0UASFBFX1BBVVNFRF9VUEdSQURFAEhQRV9QQVVTRURfSDJfVVBHUkFERQBTT1VSQ0UAQU5OT1VOQ0UAVFJBQ0UASFBFX1VORVhQRUNURURfU1BBQ0UAREVTQ1JJQkUAVU5TVUJTQ1JJQkUAUkVDT1JEAEhQRV9JTlZBTElEX01FVEhPRABOT1RfRk9VTkQAUFJPUEZJTkQAVU5CSU5EAFJFQklORABVTkFVVEhPUklaRUQATUVUSE9EX05PVF9BTExPV0VEAEhUVFBfVkVSU0lPTl9OT1RfU1VQUE9SVEVEAEFMUkVBRFlfUkVQT1JURUQAQUNDRVBURUQATk9UX0lNUExFTUVOVEVEAExPT1BfREVURUNURUQASFBFX0NSX0VYUEVDVEVEAEhQRV9MRl9FWFBFQ1RFRABDUkVBVEVEAElNX1VTRUQASFBFX1BBVVNFRABUSU1FT1VUX09DQ1VSRUQAUEFZTUVOVF9SRVFVSVJFRABQUkVDT05ESVRJT05fUkVRVUlSRUQAUFJPWFlfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATkVUV09SS19BVVRIRU5USUNBVElPTl9SRVFVSVJFRABMRU5HVEhfUkVRVUlSRUQAU1NMX0NFUlRJRklDQVRFX1JFUVVJUkVEAFVQR1JBREVfUkVRVUlSRUQAUEFHRV9FWFBJUkVEAFBSRUNPTkRJVElPTl9GQUlMRUQARVhQRUNUQVRJT05fRkFJTEVEAFJFVkFMSURBVElPTl9GQUlMRUQAU1NMX0hBTkRTSEFLRV9GQUlMRUQATE9DS0VEAFRSQU5TRk9STUFUSU9OX0FQUExJRUQATk9UX01PRElGSUVEAE5PVF9FWFRFTkRFRABCQU5EV0lEVEhfTElNSVRfRVhDRUVERUQAU0lURV9JU19PVkVSTE9BREVEAEhFQUQARXhwZWN0ZWQgSFRUUC8sIFJUU1AvIG9yIElDRS8A5xUAAK8VAACkEgAAkhoAACYWAACeFAAA2xkAAHkVAAB+EgAA/hQAADYVAAALFgAA2BYAAPMSAABCGAAArBYAABIVAAAUFwAA7xcAAEgUAABxFwAAshoAAGsZAAB+GQAANRQAAIIaAABEFwAA/RYAAB4YAACHFwAAqhkAAJMSAAAHGAAALBcAAMoXAACkFwAA5xUAAOcVAABYFwAAOxgAAKASAAAtHAAAwxEAAEgRAADeEgAAQhMAAKQZAAD9EAAA9xUAAKUVAADvFgAA+BkAAEoWAABWFgAA9RUAAAoaAAAIGgAAARoAAKsVAABCEgAA1xAAAEwRAAAFGQAAVBYAAB4RAADKGQAAyBkAAE4WAAD/GAAAcRQAAPAVAADuFQAAlBkAAPwVAAC/GQAAmxkAAHwUAABDEQAAcBgAAJUUAAAnFAAAGRQAANUSAADUGQAARBYAAPcQAEG5OwsBAQBB0DsL4AEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEDAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBuj0LBAEAAAIAQdE9C14DBAMDAwMDAAADAwADAwADAwMDAwMDAwMDAAUAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAwADAEG6PwsEAQAAAgBB0T8LXgMAAwMDAwMAAAMDAAMDAAMDAwMDAwMDAwMABAAFAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwADAAMAQbDBAAsNbG9zZWVlcC1hbGl2ZQBBycEACwEBAEHgwQAL4AEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBycMACwEBAEHgwwAL5wEBAQEBAQEBAQEBAQECAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAWNodW5rZWQAQfHFAAteAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQBB0McACyFlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AQYDIAAsgcmFuc2Zlci1lbmNvZGluZ3BncmFkZQ0KDQpTTQ0KDQoAQanIAAsFAQIAAQMAQcDIAAtfBAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanKAAsFAQIAAQMAQcDKAAtfBAUFBgUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanMAAsEAQAAAQBBwcwAC14CAgACAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAEGpzgALBQECAAEDAEHAzgALXwQFAAAFBQUFBQUFBQUFBQYFBQUFBQUFBQUFBQUABQAHCAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQAFAAUABQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAAAAFAEGp0AALBQEBAAEBAEHA0AALAQEAQdrQAAtBAgAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAQanSAAsFAQEAAQEAQcDSAAsBAQBBytIACwYCAAAAAAIAQeHSAAs6AwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBBoNQAC50BTk9VTkNFRUNLT1VUTkVDVEVURUNSSUJFTFVTSEVURUFEU0VBUkNIUkdFQ1RJVklUWUxFTkRBUlZFT1RJRllQVElPTlNDSFNFQVlTVEFUQ0hHRVVFUllPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFVFRQQ0VUU1BBRFRQLw==","base64")}})});var RzQ=R((piY,zzQ)=>{var{Buffer:lw0}=u("node:buffer"),Cr;Object.defineProperty(zzQ,"exports",{get:()=>{return Cr?Cr:Cr=lw0.from("AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAn9/AGABfwBgBH9/f38Bf2AAAGADf39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQAEA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAAzU0BQYAAAMAAAAAAAADAQMAAwMDAAACAAAAAAICAgICAgICAgIBAQEBAQEBAQEBAwAAAwAAAAQFAXABExMFAwEAAgYIAX8BQcDZBAsHxQcoBm1lbW9yeQIAC19pbml0aWFsaXplAAgZX19pbmRpcmVjdF9mdW5jdGlvbl90YWJsZQEAC2xsaHR0cF9pbml0AAkYbGxodHRwX3Nob3VsZF9rZWVwX2FsaXZlADcMbGxodHRwX2FsbG9jAAsGbWFsbG9jADkLbGxodHRwX2ZyZWUADARmcmVlAAwPbGxodHRwX2dldF90eXBlAA0VbGxodHRwX2dldF9odHRwX21ham9yAA4VbGxodHRwX2dldF9odHRwX21pbm9yAA8RbGxodHRwX2dldF9tZXRob2QAEBZsbGh0dHBfZ2V0X3N0YXR1c19jb2RlABESbGxodHRwX2dldF91cGdyYWRlABIMbGxodHRwX3Jlc2V0ABMObGxodHRwX2V4ZWN1dGUAFBRsbGh0dHBfc2V0dGluZ3NfaW5pdAAVDWxsaHR0cF9maW5pc2gAFgxsbGh0dHBfcGF1c2UAFw1sbGh0dHBfcmVzdW1lABgbbGxodHRwX3Jlc3VtZV9hZnRlcl91cGdyYWRlABkQbGxodHRwX2dldF9lcnJubwAaF2xsaHR0cF9nZXRfZXJyb3JfcmVhc29uABsXbGxodHRwX3NldF9lcnJvcl9yZWFzb24AHBRsbGh0dHBfZ2V0X2Vycm9yX3BvcwAdEWxsaHR0cF9lcnJub19uYW1lAB4SbGxodHRwX21ldGhvZF9uYW1lAB8SbGxodHRwX3N0YXR1c19uYW1lACAabGxodHRw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AXRrQT5qIQILIAEgAjYCHCABQgA3AhAgAkECdEH01wBqIQACQEHI1QAoAgAiA0EBIAJ0IgdxRQRAIAAgATYCAEHI1QAgAyAHcjYCACABIAA2AhggASABNgIIIAEgATYCDAwBCyAEQRkgAkEBdmtBACACQR9HG3QhAiAAKAIAIQACQANAIAAiAygCBEF4cSAERg0BIAJBHXYhACACQQF0IQIgAyAAQQRxakEQaiIHKAIAIgANAAsgByABNgIAIAEgAzYCGCABIAE2AgwgASABNgIIDAELIAMoAggiACABNgIMIAMgATYCCCABQQA2AhggASADNgIMIAEgADYCCAtB5NUAQeTVACgCAEEBayIAQX8gABs2AgALCwcAIAAtACgLBwAgAC0AKgsHACAALQArCwcAIAAtACkLBwAgAC8BNAsHACAALQAwC0ABBH8gACgCGCEBIAAvAS4hAiAALQAoIQMgACgCOCEEIAAQOCAAIAQ2AjggACADOgAoIAAgAjsBLiAAIAE2AhgLhocCAwd/A34BeyABIAJqIQQCQCAAIgMoAgwiAA0AIAMoAgQEQCADIAE2AgQLIwBBEGsiCSQAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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DAgLQeMBDAcLQdcBDAYLQdgBDAULQdkBDAQLQdoBDAMLQdsBDAILQd0BDAELQdwBCyECA0ACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAMCfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAn8CQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAwJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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A0EXNgIcIAMgADYCDCADIAFBAWo2AhQM+AILIABBFUYNI0EAIQIgA0EANgIcIAMgATYCFCADQdYMNgIQIANBIzYCDAz3AgsgAygCBCEAQQAhAiADQQA2AgQgAyAAIAEQNCIARQRAIAFBAWohAQwdCyADQRk2AhwgAyAANgIMIAMgAUEBajYCFAz2AgsgAygCBCEAQQAhAiADQQA2AgQgAyAAIAEQNCIARQRAIAFBAWohAQzvAgsgA0EaNgIcIAMgADYCDCADIAFBAWo2AhQM9QILIABBFUYNH0EAIQIgA0EANgIcIAMgATYCFCADQdAPNgIQIANBIjYCDAz0AgsgAygCBCEAIANBADYCBCADIAAgARAzIgBFBEAgAUEBaiEBDBsLIANBHDYCHCADIAA2AgwgAyABQQFqNgIUQQAhAgzzAgsgAygCBCEAIANBADYCBCADIAAgARAzIgBFBEAgAUEBaiEBDOsCCyADQR02AhwgAyAANgIMIAMgAUEBajYCFEEAIQIM8gILIABBO0cNASABQQFqIQELQSYhAgzXAgtBACECIANBADYCHCADIAE2AhQgA0GfFTYCECADQQw2AgwM7wILIAEgBEcEQANAIAEtAABBIEcNhAIgBCABQQFqIgFHDQALQSwhAgzvAgtBLCECDO4CCyABIARGBEBBNCECDO4CCwJAAkADQAJAIAEtAABBCmsOBAIAAAMACyAEIAFBAWoiAUcNAAtBNCECDO8CCyADKAIEIQAgA0EANgIEIAMgACABEDEiAEUNnwIgA0EyNgIcIAMgATYCFCADIAA2AgxBACECDO4CCyADKAIEIQAgA0EANgIEIAMgACABEDEiAEUEQCABQQFqIQEMnwILIANBMjYCHCADIAA2AgwgAyABQQFqNgIUQQAhAgztAgsgASAERwRAAkADQCABLQAAQTBrIgBB/wFxQQpPBEBBOiECDNcCCyADKQMgIgtCmbPmzJmz5swZVg0BIAMgC0IKfiIKNwMgIAogAK1C/wGDIgtCf4VWDQEgAyAKIAt8NwMgIAQgAUEBaiIBRw0AC0HAACECDO4CCyADKAIEIQAgA0EANgIEIAMgACABQQFqIgEQMSIADRcM4gILQcAAIQIM7AILIAEgBEYEQEHJACECDOwCCwJAA0ACQCABLQAAQQlrDhgAAqICogKpAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAgCiAgsgBCABQQFqIgFHDQALQckAIQIM7AILIAFBAWohASADQS9qLQAAQQFxDaUCIANBADYCHCADIAE2AhQgA0GXEDYCECADQQo2AgxBACECDOsCCyABIARHBEADQCABLQAAQSBHDRUgBCABQQFqIgFHDQALQfgAIQIM6wILQfgAIQIM6gILIANBAjoAKAw4C0EAIQIgA0EANgIcIANBvws2AhAgA0ECNgIMIAMgAUEBajYCFAzoAgtBACECDM4CC0ENIQIMzQILQRMhAgzMAgtBFSECDMsCC0EWIQIMygILQRghAgzJAgtBGSECDMgCC0EaIQIMxwILQRshAgzGAgtBHCECDMUCC0EdIQIMxAILQR4hAgzDAgtBHyECDMICC0EgIQIMwQILQSIhAgzAAgtBIyECDL8CC0ElIQIMvgILQeUAIQIMvQILIANBPTYCHCADIAE2AhQgAyAANgIMQQAhAgzVAgsgA0EbNgIcIAMgATYCFCADQaQcNgIQIANBFTYCDEEAIQIM1AILIANBIDYCHCADIAE2AhQgA0GYGjYCECADQRU2AgxBACECDNMCCyADQRM2AhwgAyABNgIUIANBmBo2AhAgA0EVNgIMQQAhAgzSAgsgA0ELNgIcIAMgATYCFCADQZgaNgIQIANBFTYCDEEAIQIM0QILIANBEDYCHCADIAE2AhQgA0GYGjYCECADQRU2AgxBACECDNACCyADQSA2AhwgAyABNgIUIANBpBw2AhAgA0EVNgIMQQAhAgzPAgsgA0ELNgIcIAMgATYCFCADQaQcNgIQIANBFTYCDEEAIQIMzgILIANBDDYCHCADIAE2AhQgA0GkHDYCECADQRU2AgxBACECDM0CC0EAIQIgA0EANgIcIAMgATYCFCADQd0ONgIQIANBEjYCDAzMAgsCQANAAkAgAS0AAEEKaw4EAAICAAILIAQgAUEBaiIBRw0AC0H9ASECDMwCCwJAAkAgAy0ANkEBRw0AQQAhAAJAIAMoAjgiAkUNACACKAJgIgJFDQAgAyACEQAAIQALIABFDQAgAEEVRw0BIANB/AE2AhwgAyABNgIUIANB3Bk2AhAgA0EVNgIMQQAhAgzNAgtB3AEhAgyzAgsgA0EANgIcIAMgATYCFCADQfkLNgIQIANBHzYCDEEAIQIMywILAkACQCADLQAoQQFrDgIEAQALQdsBIQIMsgILQdQBIQIMsQILIANBAjoAMUEAIQACQCADKAI4IgJFDQAgAigCACICRQ0AIAMgAhEAACEACyAARQRAQd0BIQIMsQILIABBFUcEQCADQQA2AhwgAyABNgIUIANBtAw2AhAgA0EQNgIMQQAhAgzKAgsgA0H7ATYCHCADIAE2AhQgA0GBGjYCECADQRU2AgxBACECDMkCCyABIARGBEBB+gEhAgzJAgsgAS0AAEHIAEYNASADQQE6ACgLQcABIQIMrgILQdoBIQIMrQILIAEgBEcEQCADQQw2AgggAyABNgIEQdkBIQIMrQILQfkBIQIMxQILIAEgBEYEQEH4ASECDMUCCyABLQAAQcgARw0EIAFBAWohAUHYASECDKsCCyABIARGBEBB9wEhAgzEAgsCQAJAIAEtAABBxQBrDhAABQUFBQUFBQUFBQUFBQUBBQsgAUEBaiEBQdYBIQIMqwILIAFBAWohAUHXASECDKoCC0H2ASECIAEgBEYNwgIgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABButUAai0AAEcNAyAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMwwILIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARAuIgBFBEBB4wEhAgyqAgsgA0H1ATYCHCADIAE2AhQgAyAANgIMQQAhAgzCAgtB9AEhAiABIARGDcECIAMoAgAiACAEIAFraiEFIAEgAGtBAWohBgJAA0AgAS0AACAAQbjVAGotAABHDQIgAEEBRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADMICCyADQYEEOwEoIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARAuIgANAwwCCyADQQA2AgALQQAhAiADQQA2AhwgAyABNgIUIANB5R82AhAgA0EINgIMDL8CC0HVASECDKUCCyADQfMBNgIcIAMgATYCFCADIAA2AgxBACECDL0CC0EAIQACQCADKAI4IgJFDQAgAigCQCICRQ0AIAMgAhEAACEACyAARQ1uIABBFUcEQCADQQA2AhwgAyABNgIUIANBgg82AhAgA0EgNgIMQQAhAgy9AgsgA0GPATYCHCADIAE2AhQgA0HsGzYCECADQRU2AgxBACECDLwCCyABIARHBEAgA0ENNgIIIAMgATYCBEHTASECDKMCC0HyASECDLsCCyABIARGBEBB8QEhAgy7AgsCQAJAAkAgAS0AAEHIAGsOCwABCAgICAgICAgCCAsgAUEBaiEBQdABIQIMowILIAFBAWohAUHRASECDKICCyABQQFqIQFB0gEhAgyhAgtB8AEhAiABIARGDbkCIAMoAgAiACAEIAFraiEGIAEgAGtBAmohBQNAIAEtAAAgAEG11QBqLQAARw0EIABBAkYNAyAAQQFqIQAgBCABQQFqIgFHDQALIAMgBjYCAAy5AgtB7wEhAiABIARGDbgCIAMoAgAiACAEIAFraiEGIAEgAGtBAWohBQNAIAEtAAAgAEGz1QBqLQAARw0DIABBAUYNAiAAQQFqIQAgBCABQQFqIgFHDQALIAMgBjYCAAy4AgtB7gEhAiABIARGDbcCIAMoAgAiACAEIAFraiEGIAEgAGtBAmohBQNAIAEtAAAgAEGw1QBqLQAARw0CIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBjYCAAy3AgsgAygCBCEAIANCADcDACADIAAgBUEBaiIBECsiAEUNAiADQewBNgIcIAMgATYCFCADIAA2AgxBACECDLYCCyADQQA2AgALIAMoAgQhACADQQA2AgQgAyAAIAEQKyIARQ2cAiADQe0BNgIcIAMgATYCFCADIAA2AgxBACECDLQCC0HPASECDJoCC0EAIQACQCADKAI4IgJFDQAgAigCNCICRQ0AIAMgAhEAACEACwJAIAAEQCAAQRVGDQEgA0EANgIcIAMgATYCFCADQeoNNgIQIANBJjYCDEEAIQIMtAILQc4BIQIMmgILIANB6wE2AhwgAyABNgIUIANBgBs2AhAgA0EVNgIMQQAhAgyyAgsgASAERgRAQesBIQIMsgILIAEtAABBL0YEQCABQQFqIQEMAQsgA0EANgIcIAMgATYCFCADQbI4NgIQIANBCDYCDEEAIQIMsQILQc0BIQIMlwILIAEgBEcEQCADQQ42AgggAyABNgIEQcwBIQIMlwILQeoBIQIMrwILIAEgBEYEQEHpASECDK8CCyABLQAAQTBrIgBB/wFxQQpJBEAgAyAAOgAqIAFBAWohAUHLASECDJYCCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNlwIgA0HoATYCHCADIAE2AhQgAyAANgIMQQAhAgyuAgsgASAERgRAQecBIQIMrgILAkAgAS0AAEEuRgRAIAFBAWohAQwBCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNmAIgA0HmATYCHCADIAE2AhQgAyAANgIMQQAhAgyuAgtBygEhAgyUAgsgASAERgRAQeUBIQIMrQILQQAhAEEBIQVBASEHQQAhAgJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAIAEtAABBMGsOCgoJAAECAwQFBggLC0ECDAYLQQMMBQtBBAwEC0EFDAMLQQYMAgtBBwwBC0EICyECQQAhBUEAIQcMAgtBCSECQQEhAEEAIQVBACEHDAELQQAhBUEBIQILIAMgAjoAKyABQQFqIQECQAJAIAMtAC5BEHENAAJAAkACQCADLQAqDgMBAAIECyAHRQ0DDAILIAANAQwCCyAFRQ0BCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNAiADQeIBNgIcIAMgATYCFCADIAA2AgxBACECDK8CCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNmgIgA0HjATYCHCADIAE2AhQgAyAANgIMQQAhAgyuAgsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDZgCIANB5AE2AhwgAyABNgIUIAMgADYCDAytAgtByQEhAgyTAgtBACEAAkAgAygCOCICRQ0AIAIoAkQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0GkDTYCECADQSE2AgxBACECDK0CC0HIASECDJMCCyADQeEBNgIcIAMgATYCFCADQdAaNgIQIANBFTYCDEEAIQIMqwILIAEgBEYEQEHhASECDKsCCwJAIAEtAABBIEYEQCADQQA7ATQgAUEBaiEBDAELIANBADYCHCADIAE2AhQgA0GZETYCECADQQk2AgxBACECDKsCC0HHASECDJECCyABIARGBEBB4AEhAgyqAgsCQCABLQAAQTBrQf8BcSICQQpJBEAgAUEBaiEBAkAgAy8BNCIAQZkzSw0AIAMgAEEKbCIAOwE0IABB/v8DcSACQf//A3NLDQAgAyAAIAJqOwE0DAILQQAhAiADQQA2AhwgAyABNgIUIANBlR42AhAgA0ENNgIMDKsCCyADQQA2AhwgAyABNgIUIANBlR42AhAgA0ENNgIMQQAhAgyqAgtBxgEhAgyQAgsgASAERgRAQd8BIQIMqQILAkAgAS0AAEEwa0H/AXEiAkEKSQRAIAFBAWohAQJAIAMvATQiAEGZM0sNACADIABBCmwiADsBNCAAQf7/A3EgAkH//wNzSw0AIAMgACACajsBNAwCC0EAIQIgA0EANgIcIAMgATYCFCADQZUeNgIQIANBDTYCDAyqAgsgA0EANgIcIAMgATYCFCADQZUeNgIQIANBDTYCDEEAIQIMqQILQcUBIQIMjwILIAEgBEYEQEHeASECDKgCCwJAIAEtAABBMGtB/wFxIgJBCkkEQCABQQFqIQECQCADLwE0IgBBmTNLDQAgAyAAQQpsIgA7ATQgAEH+/wNxIAJB//8Dc0sNACADIAAgAmo7ATQMAgtBACECIANBADYCHCADIAE2AhQgA0GVHjYCECADQQ02AgwMqQILIANBADYCHCADIAE2AhQgA0GVHjYCECADQQ02AgxBACECDKgCC0HEASECDI4CCyABIARGBEBB3QEhAgynAgsCQAJAAkACQCABLQAAQQprDhcCAwMAAwMDAwMDAwMDAwMDAwMDAwMDAQMLIAFBAWoMBQsgAUEBaiEBQcMBIQIMjwILIAFBAWohASADQS9qLQAAQQFxDQggA0EANgIcIAMgATYCFCADQY0LNgIQIANBDTYCDEEAIQIMpwILIANBADYCHCADIAE2AhQgA0GNCzYCECADQQ02AgxBACECDKYCCyABIARHBEAgA0EPNgIIIAMgATYCBEEBIQIMjQILQdwBIQIMpQILAkACQANAAkAgAS0AAEEKaw4EAgAAAwALIAQgAUEBaiIBRw0AC0HbASECDKYCCyADKAIEIQAgA0EANgIEIAMgACABEC0iAEUEQCABQQFqIQEMBAsgA0HaATYCHCADIAA2AgwgAyABQQFqNgIUQQAhAgylAgsgAygCBCEAIANBADYCBCADIAAgARAtIgANASABQQFqCyEBQcEBIQIMigILIANB2QE2AhwgAyAANgIMIAMgAUEBajYCFEEAIQIMogILQcIBIQIMiAILIANBL2otAABBAXENASADQQA2AhwgAyABNgIUIANB5Bw2AhAgA0EZNgIMQQAhAgygAgsgASAERgRAQdkB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CyADIAU2AgAMkAILIANBADYCACAGQQFqIQFBGgw8C0HKASECIAEgBEYNjgIgAygCACIAIAQgAWtqIQUgASAAa0EDaiEGAkADQCABLQAAIABBjdUAai0AAEcNOyAAQQNGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMjwILIANBADYCACAGQQFqIQFBIQw7CyABIARGBEBByQEhAgyOAgsCQAJAIAEtAABBwQBrDhQAPT09PT09PT09PT09PT09PT09AT0LIAFBAWohAUGtASECDPUBCyABQQFqIQFBsAEhAgz0AQsgASAERgRAQcgBIQIMjQILAkACQCABLQAAQdUAaw4LADw8PDw8PDw8PAE8CyABQQFqIQFBrgEhAgz0AQsgAUEBaiEBQa8BIQIM8wELQccBIQIgASAERg2LAiADKAIAIgAgBCABa2ohBSABIABrQQhqIQYCQANAIAEtAAAgAEGE1QBqLQAARw04IABBCEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyMAgsgA0EANgIAIAZBAWohAUEqDDgLIAEgBEYEQEHGASECDIsCCyABLQAAQdAARw04IAFBAWohAUElDDcLQcUBIQIgASAERg2JAiADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGB1QBqLQAARw02IABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyKAgsgA0EANgIAIAZBAWohAUEODDYLIAEgBEYEQEHEASECDIkCCyABLQAAQcUARw02IAFBAWohAUGrASECDO8BCyABIARGBEBBwwEhAgyIAgsCQAJAAkACQCABLQAAQcIAaw4PAAECOTk5OTk5OTk5OTkDOQsgAUEBaiEBQacBIQIM8QELIAFBAWohAUGoASECDPABCyABQQFqIQFBqQEhAgzvAQsgAUEBaiEBQaoBIQIM7gELQcIBIQIgASAERg2GAiADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEH+1ABqLQAARw0zIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyHAgsgA0EANgIAIAZBAWohAUEUDDMLQcEBIQIgASAERg2FAiADKAIAIgAgBCABa2ohBSABIABrQQRqIQYCQANA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BTYCAAzsAQsgA0EANgIAIAZBAWohAUEXDBgLQaYBIQIgASAERg3qASADKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEHB1ABqLQAARw0XIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzrAQsgA0EANgIAIAZBAWohAUEYDBcLIAEgBEYEQEGlASECDOoBCwJAAkAgAS0AAEHJAGsOBwAZGRkZGQEZCyABQQFqIQFBiwEhAgzRAQsgAUEBaiEBQYwBIQIM0AELQaQBIQIgASAERg3oASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEGm1QBqLQAARw0VIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzpAQsgA0EANgIAIAZBAWohAUEJDBULQaMBIQIgASAERg3nASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEGk1QBqLQAARw0UIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzoAQsgA0EANgIAIAZBAWohAUEfDBQLQaIBIQIgASAERg3mASADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEG+1ABqLQAARw0TIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAznAQsgA0EANgIAIAZBAWohAUECDBMLQaEBIQIgASAERg3lASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYDQCABLQAAIABBvNQAai0AAEcNESAAQQFGDQIgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM5QELIAEgBEYEQEGgASECDOUBC0EBIAEtAABB3wBHDREaIAFBAWohAUGHASECDMsBCyADQQA2AgAgBkEBaiEBQYgBIQIMygELQZ8BIQIgASAERg3iASADKAIAIgAgBCABa2ohBSABIABrQQhqIQYCQANAIAEtAAAgAEGE1QBqLQAARw0PIABBCEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzjAQsgA0EANgIAIAZBAWohAUEpDA8LQZ4BIQIgASAERg3hASADKAIAIgAgBCABa2ohBSABIABrQQNqIQYCQANAIAEtAAAgAEG41ABqLQAARw0OIABBA0YNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAziAQsgA0EANgIAIAZBAWohAUEtDA4LIAEgBEYEQEGdASECDOEBCyABLQAAQcUARw0OIAFBAWohAUGEASECDMcBCyABIARGBEBBnAEhAgzgAQsCQAJAIAEtAABBzABrDggADw8PDw8PAQ8LIAFBAWohAUGCASECDMcBCyABQQFqIQFBgwEhAgzGAQtBmwEhAiABIARGDd4BIAMoAgAiACAEIAFraiEFIAEgAGtBBGohBgJAA0AgAS0AACAAQbPUAGotAABHDQsgAEEERg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADN8BCyADQQA2AgAgBkEBaiEBQSMMCwtBmgEhAiABIARGDd0BIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQbDUAGotAABHDQogAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADN4BCyADQQA2AgAgBkEBaiEBQQAMCgsgASAERgRAQZkBIQIM3QELAkACQCABLQAAQcgAaw4IAAwMDAwMDAEMCyABQQFqIQFB/QAhAgzEAQsgAUEBaiEBQYABIQIMwwELIAEgBEYEQEGYASECDNwBCwJAAkAgAS0AAEHOAGsOAwALAQsLIAFBAWohAUH+ACECDMMBCyABQQFqIQFB/wAhAgzCAQsgASAERgRAQZcBIQIM2wELIAEtAABB2QBHDQggAUEBaiEBQQgMBwtBlgEhAiABIARGDdkBIAMoAgAiACAEIAFraiEFIAEgAGtBA2ohBgJAA0AgAS0AACAAQazUAGotAABHDQYgAEEDRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADNoBCyADQQA2AgAgBkEBaiEBQQUMBgtBlQEhAiABIARGDdgBIAMoAgAiACAEIAFraiEFIAEgAGtBBWohBgJAA0AgAS0AACAAQabUAGotAABHDQUgAEEFRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADNkBCyADQQA2AgAgBkEBaiEBQRYMBQtBlAEhAiABIARGDdcBIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQaHVAGotAABHDQQgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADNgBCyADQQA2AgAgBkEBaiEBQRAMBAsgASAERgRAQZMBIQIM1wELAkACQCABLQAAQcMAaw4MAAYGBgYGBgYGBgYBBgsgAUEBaiEBQfkAIQIMvgELIAFBAWohAUH6ACECDL0BC0GSASECIAEgBEYN1QEgAygCACIAIAQgAWtqIQUgASAAa0EFaiEGAkADQCABLQAAIABBoNQAai0AAEcNAiAAQQVGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM1gELIANBADYCACAGQQFqIQFBJAwCCyADQQA2AgAMAgsgASAERgRAQZEBIQIM1AELIAEtAABBzABHDQEgAUEBaiEBQRMLOgApIAMoAgQhACADQQA2AgQgAyAAIAEQLiIADQIMAQtBACECIANBADYCHCADIAE2AhQgA0H+HzYCECADQQY2AgwM0QELQfgAIQIMtwELIANBkAE2AhwgAyABNgIUIAMgADYCDEEAIQIMzwELQQAhAAJAIAMoAjgiAkUNACACKAJAIgJFDQAgAyACEQAAIQALIABFDQAgAEEVRg0BIANBADYCHCADIAE2AhQgA0GCDzYCECADQSA2AgxBACECDM4BC0H3ACECDLQBCyADQY8BNgIcIAMgATYCFCADQewbNgIQIANBFTYCDEEAIQIMzAELIAEgBEYEQEGPASECDMwBCwJAIAEtAABBIEYEQCABQQFqIQEMAQsgA0EANgIcIAMgATYCFCADQZsfNgIQIANBBjYCDEEAIQIMzAELQQIhAgyyAQsDQCABLQAAQSBHDQIgBCABQQFqIgFHDQALQY4BIQIMygELIAEgBEYEQEGNASECDMoBCwJAIAEtAABBCWsOBEoAAEoAC0H1ACECDLABCyADLQApQQVGBEBB9gAhAgywAQtB9AAhAgyvAQsgASAERgRAQYwBIQIMyAELIANBEDYCCCADIAE2AgQMCgsgASAERgRAQYsBIQIMxwELAkAgAS0AAEEJaw4ERwAARwALQfMAIQIMrQELIAEgBEcEQCADQRA2AgggAyABNgIEQfEAIQIMrQELQYoBIQIMxQELAkAgASAERwRAA0AgAS0AAEGg0ABqLQAAIgBBA0cEQAJAIABBAWsOAkkABAtB8AAhAgyvAQsgBCABQQFqIgFHDQALQYgBIQIMxgELQYgBIQIMxQELIANBADYCHCADIAE2AhQgA0HbIDYCECADQQc2AgxBACECDMQBCyABIARGBEBBiQEhAgzEAQsCQAJAAkAgAS0AAEGg0gBqLQAAQQFrDgNGAgABC0HyACECDKwBCyADQQA2AhwgAyABNgIUIANBtBI2AhAgA0EHNgIMQQAhAgzEAQtB6gAhAgyqAQsgASAERwRAIAFBAWohAUHvACECDKoBC0GHASECDMIBCyAEIAEiAEYEQEGGASECDMIBCyAALQAAIgFBL0YEQCAAQQFqIQFB7gAhAgypAQsgAUEJayICQRdLDQEgACEBQQEgAnRBm4CABHENQQwBCyAEIAEiAEYEQEGFASECDMEBCyAALQAAQS9HDQAgAEEBaiEBDAMLQQAhAiADQQA2AhwgAyAANgIUIANB2yA2AhAgA0EHNgIMDL8BCwJAAkACQAJAAkADQCABLQAAQaDOAGotAAAiAEEFRwRAAkACQCAAQQFrDghHBQYHCAAEAQgLQesAIQIMrQELIAFBAWohAUHtACECDKwBCyAEIAFBAWoiAUcNAAtBhAEhAgzDAQsgAUEBagwUCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNHiADQdsANgIcIAMgATYCFCADIAA2AgxBACECDMEBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNHiADQd0ANgIcIAMgATYCFCADIAA2AgxBACECDMABCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNHiADQfoANgIcIAMgATYCFCADIAA2AgxBACECDL8BCyADQQA2AhwgAyABNgIUIANB+Q82AhAgA0EHNgIMQQAhAgy+AQsgASAERgRAQYMBIQIMvgELAkAgAS0AAEGgzgBqLQAAQQFrDgg+BAUGAAgCAwcLIAFBAWohAQtBAyECDKMBCyABQQFqDA0LQQAhAiADQQA2AhwgA0HREjYCECADQQc2AgwgAyABQQFqNgIUDLoBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNFiADQdsANgIcIAMgATYCFCADIAA2AgxBACECDLkBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNFiADQd0ANgIcIAMgATYCFCADIAA2AgxBACECDLgBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNFiADQfoANgIcIAMgATYCFCADIAA2AgxBACECDLcBCyADQQA2AhwgAyABNgIUIANB+Q82AhAgA0EHNgIMQQAhAgy2AQtB7AAhAgycAQsgASAERgRAQYIBIQIMtQELIAFBAWoMAgsgASAERgRAQYEBIQIMtAELIAFBAWoMAQsgASAERg0BIAFBAWoLIQFBBCECDJgBC0GAASECDLABCwNAIAEtAABBoMwAai0AACIAQQJHBEAgAEEBRwRAQekAIQIMmQELDDELIAQgAUEBaiIBRw0AC0H/ACECDK8BCyABIARGBEBB/gAhAgyvAQsCQCABLQAAQQlrDjcvAwYvBAYGBgYGBgYGBgYGBgYGBgYGBgUGBgIGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYABgsgAUEBagshAUEFIQIMlAELIAFBAWoMBgsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQggA0HbADYCHCADIAE2AhQgAyAANgIMQQAhAgyrAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQggA0HdADYCHCADIAE2AhQgAyAANgIMQQAhAgyqAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQggA0H6ADYCHCADIAE2AhQgAyAANgIMQQAhAgypAQsgA0EANgIcIAMgATYCFCADQY0UNgIQIANBBzYCDEEAIQIMqAELAkACQAJAAkADQCABLQAAQaDKAGotAAAiAEEFRwRAAkAgAEEBaw4GLgMEBQYABgtB6AAhAgyUAQsgBCABQQFqIgFHDQALQf0AIQIMqwELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0HIANB2wA2AhwgAyABNgIUIAMgADYCDEEAIQIMqgELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0HIANB3QA2AhwgAyABNgIUIAMgADYCDEEAIQIMqQELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0HIANB+gA2AhwgAyABNgIUIAMgADYCDEEAIQIMqAELIANBADYCHCADIAE2AhQgA0HkCDYCECADQQc2AgxBACECDKcBCyABIARGDQEgAUEBagshAUEGIQIMjAELQfwAIQIMpAELAkACQAJAAkADQCABLQAAQaDIAGotAAAiAEEFRwRAIABBAWsOBCkCAwQFCyAEIAFBAWoiAUcNAAtB+wAhAgynAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQMgA0HbADYCHCADIAE2AhQgAyAANgIMQQAhAgymAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQMgA0HdADYCHCADIAE2AhQgAyAANgIMQQAhAgylAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQMgA0H6ADYCHCADIAE2AhQgAyAANgIMQQAhAgykAQsgA0EANgIcIAMgATYCFCADQbwKNgIQIANBBzYCDEEAIQIMowELQc8AIQIMiQELQdEAIQIMiAELQecAIQIMhwELIAEgBEYEQEH6ACECDKABCwJAIAEtAABBCWsOBCAAACAACyABQQFqIQFB5gAhAgyGAQsgASAERgRAQfkAIQIMnwELAkAgAS0AAEEJaw4EHwAAHwALQQAhAAJAIAMoAjgiAkUNACACKAI4IgJFDQAgAyACEQAAIQALIABFBEBB4gEhAgyGAQsgAEEVRwRAIANBADYCHCADIAE2AhQgA0HJDTYCECADQRo2AgxBACECDJ8BCyADQfgANgIcIAMgATYCFCADQeoaNgIQIANBFTYCDEEAIQIMngELIAEgBEcEQCADQQ02AgggAyABNgIEQeQAIQIMhQELQfcAIQIMnQELIAEgBEYEQEH2ACECDJ0BCwJAAkACQCABLQAAQcgAaw4LAAELCwsLCwsLCwILCyABQQFqIQFB3QAhAgyFAQsgAUEBaiEBQeAAIQIMhAELIAFBAWohAUHjACECDIMBC0H1ACECIAEgBEYNmwEgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBtdUAai0AAEcNCCAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMnAELIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARArIgAEQCADQfQANgIcIAMgATYCFCADIAA2AgxBACECDJwBC0HiACECDIIBC0EAIQACQCADKAI4IgJFDQAgAigCNCICRQ0AIAMgAhEAACEACwJAIAAEQCAAQRVGDQEgA0EANgIcIAMgATYCFCADQeoNNgIQIANBJjYCDEEAIQIMnAELQeEAIQIMggELIANB8wA2AhwgAyABNgIUIANBgBs2AhAgA0EVNgIMQQAhAgyaAQsgAy0AKSIAQSNrQQtJDQkCQCAAQQZLDQBBASAAdEHKAHFFDQAMCgtBACECIANBADYCHCADIAE2AhQgA0HtCTYCECADQQg2AgwMmQELQfIAIQIgASAERg2YASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEGz1QBqLQAARw0FIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyZAQsgAygCBCEAIANCADcDACADIAAgBkEBaiIBECsiAARAIANB8QA2AhwgAyABNgIUIAMgADYCDEEAIQIMmQELQd8AIQIMfwtBACEAAkAgAygCOCICRQ0AIAIoAjQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0HqDTYCECADQSY2AgxBACECDJkBC0HeACECDH8LIANB8AA2AhwgAyABNgIUIANBgBs2AhAgA0EVNgIMQQAhAgyXAQsgAy0AKUEhRg0GIANBADYCHCADIAE2AhQgA0GRCjYCECADQQg2AgxBACECDJYBC0HvACECIAEgBEYNlQEgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBsNUAai0AAEcNAiAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMlgELIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARArIgBFDQIgA0HtADYCHCADIAE2AhQgAyAANgIMQQAhAgyVAQsgA0EANgIACyADKAIEIQAgA0EANgIEIAMgACABECsiAEUNgAEgA0HuADYCHCADIAE2AhQgAyAANgIMQQAhAgyTAQtB3AAhAgx5C0EAIQACQCADKAI4IgJFDQAgAigCNCICRQ0AIAMgAhEAACEACwJAIAAEQCAAQRVGDQEgA0EANgIcIAMgATYCFCADQeoNNgIQIANBJjYCDEEAIQIMkwELQdsAIQIMeQsgA0HsADYCHCADIAE2AhQgA0GAGzYCECADQRU2AgxBACECDJEBCyADLQApIgBBI0kNACAAQS5GDQAgA0EANgIcIAMgATYCFCADQckJNgIQIANBCDYCDEEAIQIMkAELQdoAIQIMdgsgASAERgRAQesAIQIMjwELAkAgAS0AAEEvRgRAIAFBAWohAQwBCyAD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ciBIVFRQL3gueCByZXF1ZXN0AEludmFsaWQgbWV0aG9kIGZvciBSVFNQL3gueCByZXF1ZXN0AEV4cGVjdGVkIFNPVVJDRSBtZXRob2QgZm9yIElDRS94LnggcmVxdWVzdABJbnZhbGlkIGNoYXIgaW4gdXJsIGZyYWdtZW50IHN0YXJ0AEV4cGVjdGVkIGRvdABTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3N0YXR1cwBJbnZhbGlkIHJlc3BvbnNlIHN0YXR1cwBFeHBlY3RlZCBMRiBhZnRlciBoZWFkZXJzAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMAVXNlciBjYWxsYmFjayBlcnJvcgBgb25fcmVzZXRgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19oZWFkZXJgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2JlZ2luYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlYCBjYWxsYmFjayBlcnJvcgBgb25fc3RhdHVzX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdmVyc2lvbl9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3VybF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3Byb3RvY29sX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fcHJvdG9jb2wARW1wdHkgQ29udGVudC1MZW5ndGgASW52YWxpZCBjaGFyYWN0ZXIgaW4gQ29udGVudC1MZW5ndGgAVHJhbnNmZXItRW5jb2RpbmcgY2FuJ3QgYmUgcHJlc2VudCB3aXRoIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgc2l6ZQBFeHBlY3RlZCBMRiBhZnRlciBjaHVuayBzaXplAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBVbmV4cGVjdGVkIHdoaXRlc3BhY2UgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgTEYgYWZ0ZXIgaGVhZGVyIHZhbHVlAEludmFsaWQgYFRyYW5zZmVyLUVuY29kaW5nYCBoZWFkZXIgdmFsdWUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciBjaHVuayBleHRlbnNpb24gdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZSB2YWx1ZQBJbnZhbGlkIHF1b3RlZC1wYWlyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAFBhdXNlZCBieSBvbl9oZWFkZXJzX2NvbXBsZXRlAEludmFsaWQgRU9GIHN0YXRlAG9uX3Jlc2V0IHBhdXNlAG9uX2NodW5rX2hlYWRlciBwYXVzZQBvbl9tZXNzYWdlX2JlZ2luIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZSBwYXVzZQBvbl9zdGF0dXNfY29tcGxldGUgcGF1c2UAb25fdmVyc2lvbl9jb21wbGV0ZSBwYXVzZQBvbl91cmxfY29tcGxldGUgcGF1c2UAb25fcHJvdG9jb2xfY29tcGxldGUgcGF1c2UAb25fY2h1bmtfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX3ZhbHVlX2NvbXBsZXRlIHBhdXNlAG9uX21lc3NhZ2VfY29tcGxldGUgcGF1c2UAb25fbWV0aG9kX2NvbXBsZXRlIHBhdXNlAG9uX2hlYWRlcl9maWVsZF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19leHRlbnNpb25fbmFtZSBwYXVzZQBVbmV4cGVjdGVkIHNwYWNlIGFmdGVyIHN0YXJ0IGxpbmUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciByZXNwb25zZSBsaW5lAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fY2h1bmtfZXh0ZW5zaW9uX25hbWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBuYW1lAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgZXh0ZW5zaW9uIG5hbWUASW52YWxpZCBzdGF0dXMgY29kZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABNaXNzaW5nIGV4cGVjdGVkIENSIGFmdGVyIGNodW5rIGRhdGEARXhwZWN0ZWQgTEYgYWZ0ZXIgY2h1bmsgZGF0YQBVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AARGF0YSBhZnRlciBgQ29ubmVjdGlvbjogY2xvc2VgAFNXSVRDSF9QUk9YWQBVU0VfUFJPWFkATUtBQ1RJVklUWQBVTlBST0NFU1NBQkxFX0VOVElUWQBRVUVSWQBDT1BZAE1PVkVEX1BFUk1BTkVOVExZAFRPT19FQVJMWQBOT1RJRlkARkFJTEVEX0RFUEVOREVOQ1kAQkFEX0dBVEVXQVkAUExBWQBQVVQAQ0hFQ0tPVVQAR0FURVdBWV9USU1FT1VUAFJFUVVFU1RfVElNRU9VVABORVRXT1JLX0NPTk5FQ1RfVElNRU9VVABDT05ORUNUSU9OX1RJTUVPVVQATE9HSU5fVElNRU9VVABORVRXT1JLX1JFQURfVElNRU9VVABQT1NUAE1JU0RJUkVDVEVEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9SRVFVRVNUAENMSUVOVF9DTE9TRURfTE9BRF9CQUxBTkNFRF9SRVFVRVNUAEJBRF9SRVFVRVNUAEhUVFBfUkVRVUVTVF9TRU5UX1RPX0hUVFBTX1BPUlQAUkVQT1JUAElNX0FfVEVBUE9UAFJFU0VUX0NPTlRFTlQATk9fQ09OVEVOVABQQVJUSUFMX0NPTlRFTlQASFBFX0lOVkFMSURfQ09OU1RBTlQASFBFX0NCX1JFU0VUAEdFVABIUEVfU1RSSUNUAENPTkZMSUNUAFRFTVBPUkFSWV9SRURJUkVDVABQRVJNQU5FTlRfUkVESVJFQ1QAQ09OTkVDVABNVUxUSV9TVEFUVVMASFBFX0lOVkFMSURfU1RBVFVTAFRPT19NQU5ZX1JFUVVFU1RTAEVBUkxZX0hJTlRTAFVOQVZBSUxBQkxFX0ZPUl9MRUdBTF9SRUFTT05TAE9QVElPTlMAU1dJVENISU5HX1BST1RPQ09MUwBWQVJJQU5UX0FMU09fTkVHT1RJQVRFUwBNVUxUSVBMRV9DSE9JQ0VTAElOVEVSTkFMX1NFUlZFUl9FUlJPUgBXRUJfU0VSVkVSX1VOS05PV05fRVJST1IAUkFJTEdVTl9FUlJPUgBJREVOVElUWV9QUk9WSURFUl9BVVRIRU5USUNBVElPTl9FUlJPUgBTU0xfQ0VSVElGSUNBVEVfRVJST1IASU5WQUxJRF9YX0ZPUldBUkRFRF9GT1IAU0VUX1BBUkFNRVRFUgBHRVRfUEFSQU1FVEVSAEhQRV9VU0VSAFNFRV9PVEhFUgBIUEVfQ0JfQ0hVTktfSEVBREVSAEV4cGVjdGVkIExGIGFmdGVyIENSAE1LQ0FMRU5EQVIAU0VUVVAAV0VCX1NFUlZFUl9JU19ET1dOAFRFQVJET1dOAEhQRV9DTE9TRURfQ09OTkVDVElPTgBIRVVSSVNUSUNfRVhQSVJBVElPTgBESVNDT05ORUNURURfT1BFUkFUSU9OAE5PTl9BVVRIT1JJVEFUSVZFX0lORk9STUFUSU9OAEhQRV9JTlZBTElEX1ZFUlNJT04ASFBFX0NCX01FU1NBR0VfQkVHSU4AU0lURV9JU19GUk9aRU4ASFBFX0lOVkFMSURfSEVBREVSX1RPS0VOAElOVkFMSURfVE9LRU4ARk9SQklEREVOAEVOSEFOQ0VfWU9VUl9DQUxNAEhQRV9JTlZBTElEX1VSTABCTE9DS0VEX0JZX1BBUkVOVEFMX0NPTlRST0wATUtDT0wAQUNMAEhQRV9JTlRFUk5BTABSRVFVRVNUX0hFQURFUl9GSUVMRFNfVE9PX0xBUkdFX1VOT0ZGSUNJQUwASFBFX09LAFVOTElOSwBVTkxPQ0sAUFJJAFJFVFJZX1dJVEgASFBFX0lOVkFMSURfQ09OVEVOVF9MRU5HVEgASFBFX1VORVhQRUNURURfQ09OVEVOVF9MRU5HVEgARkxVU0gAUFJPUFBBVENIAE0tU0VBUkNIAFVSSV9UT09fTE9ORwBQUk9DRVNTSU5HAE1JU0NFTExBTkVPVVNfUEVSU0lTVEVOVF9XQVJOSU5HAE1JU0NFTExBTkVPVVNfV0FSTklORwBIUEVfSU5WQUxJRF9UUkFOU0ZFUl9FTkNPRElORwBFeHBlY3RlZCBDUkxGAEhQRV9JTlZBTElEX0NIVU5LX1NJWkUATU9WRQBDT05USU5VRQBIUEVfQ0JfU1RBVFVTX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJTX0NPTVBMRVRFAEhQRV9DQl9WRVJTSU9OX0NPTVBMRVRFAEhQRV9DQl9VUkxfQ09NUExFVEUASFBFX0NCX1BST1RPQ09MX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19DT01QTEVURQBIUEVfQ0JfSEVBREVSX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fVkFMVUVfQ09NUExFVEUASFBFX0NCX0NIVU5LX0VYVEVOU0lPTl9OQU1FX0NPTVBMRVRFAEhQRV9DQl9NRVNTQUdFX0NPTVBMRVRFAEhQRV9DQl9NRVRIT0RfQ09NUExFVEUASFBFX0NCX0hFQURFUl9GSUVMRF9DT01QTEVURQBERUxFVEUASFBFX0lOVkFMSURfRU9GX1NUQVRFAElOVkFMSURfU1NMX0NFUlRJRklDQVRFAFBBVVNFAE5PX1JFU1BPTlNFAFVOU1VQUE9SVEVEX01FRElBX1RZUEUAR09ORQBOT1RfQUNDRVBUQUJMRQBTRVJWSUNFX1VOQVZBSUxBQkxFAFJBTkdFX05PVF9TQVRJU0ZJQUJMRQBPUklHSU5fSVNfVU5SRUFDSEFCTEUAUkVTUE9OU0VfSVNfU1RBTEUAUFVSR0UATUVSR0UAUkVRVUVTVF9IRUFERVJfRklFTERTX1RPT19MQVJHRQBSRVFVRVNUX0hFQURFUl9UT09fTEFSR0UAUEFZTE9BRF9UT09fTEFSR0UASU5TVUZGSUNJRU5UX1NUT1JBR0UASFBFX1BBVVNFRF9VUEdSQURFAEhQRV9QQVVTRURfSDJfVVBHUkFERQBTT1VSQ0UAQU5OT1VOQ0UAVFJBQ0UASFBFX1VORVhQRUNURURfU1BBQ0UAREVTQ1JJQkUAVU5TVUJTQ1JJQkUAUkVDT1JEAEhQRV9JTlZBTElEX01FVEhPRABOT1RfRk9VTkQAUFJPUEZJTkQAVU5CSU5EAFJFQklORABVTkFVVEhPUklaRUQATUVUSE9EX05PVF9BTExPV0VEAEhUVFBfVkVSU0lPTl9OT1RfU1VQUE9SVEVEAEFMUkVBRFlfUkVQT1JURUQAQUNDRVBURUQATk9UX0lNUExFTUVOVEVEAExPT1BfREVURUNURUQASFBFX0NSX0VYUEVDVEVEAEhQRV9MRl9FWFBFQ1RFRABDUkVBVEVEAElNX1VTRUQASFBFX1BBVVNFRABUSU1FT1VUX09DQ1VSRUQAUEFZTUVOVF9SRVFVSVJFRABQUkVDT05ESVRJT05fUkVRVUlSRUQAUFJPWFlfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATkVUV09SS19BVVRIRU5USUNBVElPTl9SRVFVSVJFRABMRU5HVEhfUkVRVUlSRUQAU1NMX0NFUlRJRklDQVRFX1JFUVVJUkVEAFVQR1JBREVfUkVRVUlSRUQAUEFHRV9FWFBJUkVEAFBSRUNPTkRJVElPTl9GQUlMRUQARVhQRUNUQVRJT05fRkFJTEVEAFJFVkFMSURBVElPTl9GQUlMRUQAU1NMX0hBTkRTSEFLRV9GQUlMRUQATE9DS0VEAFRSQU5TRk9STUFUSU9OX0FQUExJRUQATk9UX01PRElGSUVEAE5PVF9FWFRFTkRFRABCQU5EV0lEVEhfTElNSVRfRVhDRUVERUQAU0lURV9JU19PVkVSTE9BREVEAEhFQUQARXhwZWN0ZWQgSFRUUC8sIFJUU1AvIG9yIElDRS8A5xUAAK8VAACkEgAAkhoAACYWAACeFAAA2xkAAHkVAAB+EgAA/hQAADYVAAALFgAA2BYAAPMSAABCGAAArBYAABIVAAAUFwAA7xcAAEgUAABxFwAAshoAAGsZAAB+GQAANRQAAIIaAABEFwAA/RYAAB4YAACHFwAAqhkAAJMSAAAHGAAALBcAAMoXAACkFwAA5xUAAOcVAABYFwAAOxgAAKASAAAtHAAAwxEAAEgRAADeEgAAQhMAAKQZAAD9EAAA9xUAAKUVAADvFgAA+BkAAEoWAABWFgAA9RUAAAoaAAAIGgAAARoAAKsVAABCEgAA1xAAAEwRAAAFGQAAVBYAAB4RAADKGQAAyBkAAE4WAAD/GAAAcRQAAPAVAADuFQAAlBkAAPwVAAC/GQAAmxkAAHwUAABDEQAAcBgAAJUUAAAnFAAAGRQAANUSAADUGQAARBYAAPcQAEG5OwsBAQBB0DsL4AEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEDAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBuj0LBAEAAAIAQdE9C14DBAMDAwMDAAADAwADAwADAwMDAwMDAwMDAAUAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAwADAEG6PwsEAQAAAgBB0T8LXgMAAwMDAwMAAAMDAAMDAAMDAwMDAwMDAwMABAAFAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwADAAMAQbDBAAsNbG9zZWVlcC1hbGl2ZQBBycEACwEBAEHgwQAL4AEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBycMACwEBAEHgwwAL5wEBAQEBAQEBAQEBAQECAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAWNodW5rZWQAQfHFAAteAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQBB0McACyFlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AQYDIAAsgcmFuc2Zlci1lbmNvZGluZ3BncmFkZQ0KDQpTTQ0KDQoAQanIAAsFAQIAAQMAQcDIAAtfBAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanKAAsFAQIAAQMAQcDKAAtfBAUFBgUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanMAAsEAQAAAQBBwcwAC14CAgACAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAEGpzgALBQECAAEDAEHAzgALXwQFAAAFBQUFBQUFBQUFBQYFBQUFBQUFBQUFBQUABQAHCAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQAFAAUABQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAAAAFAEGp0AALBQEBAAEBAEHA0AALAQEAQdrQAAtBAgAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAQanSAAsFAQEAAQEAQcDSAAsBAQBBytIACwYCAAAAAAIAQeHSAAs6AwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBBoNQAC50BTk9VTkNFRUNLT1VUTkVDVEVURUNSSUJFTFVTSEVURUFEU0VBUkNIUkdFQ1RJVklUWUxFTkRBUlZFT1RJRllQVElPTlNDSFNFQVlTVEFUQ0hHRVVFUllPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFVFRQQ0VUU1BBRFRQLw==","base64")}})});var Qq=R((iiY,_zQ)=>{var wzQ=["GET","HEAD","POST"],pw0=new Set(wzQ),iw0=[101,204,205,304],jzQ=[301,302,303,307,308],nw0=new Set(jzQ),OzQ=["1","7","9","11","13","15","17","19","20","21","22","23","25","37","42","43","53","69","77","79","87","95","101","102","103","104","109","110","111","113","115","117","119","123","135","137","139","143","161","179","389","427","465","512","513","514","515","526","530","531","532","540","548","554","556","563","587","601","636","989","990","993","995","1719","1720","1723","2049","3659","4045","4190","5060","5061","6000","6566","6665","6666","6667","6668","6669","6679","6697","10080"],sw0=new Set(OzQ),PzQ=["no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"],rw0=["",...PzQ],aw0=new Set(PzQ),ow0=["follow","manual","error"],TzQ=["GET","HEAD","OPTIONS","TRACE"],tw0=new Set(TzQ),ew0=["navigate","same-origin","no-cors","cors"],Aj0=["omit","same-origin","include"],Qj0=["default","no-store","reload","no-cache","force-cache","only-if-cached"],Bj0=["content-encoding","content-language","content-location","content-type","content-length"],Yj0=["half"],SzQ=["CONNECT","TRACE","TRACK"],Jj0=new Set(SzQ),kzQ=["audio","audioworklet","font","image","manifest","paintworklet","script","style","track","video","xslt",""],Cj0=new Set(kzQ);_zQ.exports={subresource:kzQ,forbiddenMethods:SzQ,requestBodyHeader:Bj0,referrerPolicy:rw0,requestRedirect:ow0,requestMode:ew0,requestCredentials:Aj0,requestCache:Qj0,redirectStatus:jzQ,corsSafeListedMethods:wzQ,nullBodyStatus:iw0,safeMethods:TzQ,badPorts:OzQ,requestDuplex:Yj0,subresourceSet:Cj0,badPortsSet:sw0,redirectStatusSet:nw0,corsSafeListedMethodsSet:pw0,safeMethodsSet:tw0,forbiddenMethodsSet:Jj0,referrerPolicyTokens:aw0}});var Gr=R((niY,vzQ)=>{var Xr=Symbol.for("undici.globalOrigin.1");function Xj0(){return globalThis[Xr]}function Gj0(A){if(A===void 0){Object.defineProperty(globalThis,Xr,{value:void 0,writable:!0,enumerable:!1,configurable:!1});return}let Q=new URL(A);if(Q.protocol!=="http:"&&Q.protocol!=="https:")throw TypeError(`Only http & https urls are allowed, received ${Q.protocol}`);Object.defineProperty(globalThis,Xr,{value:Q,writable:!0,enumerable:!1,configurable:!1})}vzQ.exports={getGlobalOrigin:Xj0,setGlobalOrigin:Gj0}});var g8=R((siY,mzQ)=>{var iT=u("node:assert"),Fj0=new TextEncoder,Bq=/^[!#$%&'*+\-.^_|~A-Za-z0-9]+$/,Wj0=/[\u000A\u000D\u0009\u0020]/,Zj0=/[\u0009\u000A\u000C\u000D\u0020]/g,$j0=/^[\u0009\u0020-\u007E\u0080-\u00FF]+$/;function Uj0(A){iT(A.protocol==="data:");let Q=gzQ(A,!0);Q=Q.slice(5);let B={position:0},Y=mK(",",Q,B),J=Y.length;if(Y=Dj0(Y,!0,!0),B.position>=Q.length)return"failure";B.position++;let C=Q.slice(J+1),X=xzQ(C);if(/;(\u0020){0,}base64$/i.test(Y)){let F=bzQ(X);if(X=Kj0(F),X==="failure")return"failure";Y=Y.slice(0,-6),Y=Y.replace(/(\u0020)+$/,""),Y=Y.slice(0,-1)}if(Y.startsWith(";"))Y="text/plain"+Y;let G=Fr(Y);if(G==="failure")G=Fr("text/plain;charset=US-ASCII");return{mimeType:G,body:X}}function gzQ(A,Q=!1){if(!Q)return A.href;let B=A.href,Y=A.hash.length,J=Y===0?B:B.substring(0,B.length-Y);if(!Y&&B.endsWith("#"))return J.slice(0,-1);return J}function nT(A,Q,B){let Y="";while(B.position=48&&A<=57||A>=65&&A<=70||A>=97&&A<=102}function hzQ(A){return A>=48&&A<=57?A-48:(A&223)-55}function Ej0(A){let Q=A.length,B=new Uint8Array(Q),Y=0;for(let J=0;J=A.length)return"failure";Q.position++;let Y=mK(";",A,Q);if(Y=pT(Y,!1,!0),Y.length===0||!Bq.test(Y))return"failure";let J=B.toLowerCase(),C=Y.toLowerCase(),X={type:J,subtype:C,parameters:new Map,essence:`${J}/${C}`};while(Q.positionWj0.test(W),A,Q);let G=nT((W)=>W!==";"&&W!=="=",A,Q);if(G=G.toLowerCase(),Q.position=A.length)break;let F=null;if(A[Q.position]==='"')F=fzQ(A,Q,!0),mK(";",A,Q);else if(F=mK(";",A,Q),F=pT(F,!1,!0),F.length===0)continue;if(G.length!==0&&Bq.test(G)&&(F.length===0||$j0.test(F))&&!X.parameters.has(G))X.parameters.set(G,F)}return X}function Kj0(A){A=A.replace(Zj0,"");let Q=A.length;if(Q%4===0){if(A.charCodeAt(Q-1)===61){if(--Q,A.charCodeAt(Q-1)===61)--Q}}if(Q%4===1)return"failure";if(/[^+/0-9A-Za-z]/.test(A.length===Q?A:A.substring(0,Q)))return"failure";let B=Buffer.from(A,"base64");return new Uint8Array(B.buffer,B.byteOffset,B.byteLength)}function fzQ(A,Q,B=!1){let Y=Q.position,J="";iT(A[Q.position]==='"'),Q.position++;while(!0){if(J+=nT((X)=>X!=='"'&&X!=="\\",A,Q),Q.position>=A.length)break;let C=A[Q.position];if(Q.position++,C==="\\"){if(Q.position>=A.length){J+="\\";break}J+=A[Q.position],Q.position++}else{iT(C==='"');break}}if(B)return J;return A.slice(Y,Q.position)}function Vj0(A){iT(A!=="failure");let{parameters:Q,essence:B}=A,Y=B;for(let[J,C]of Q.entries()){if(Y+=";",Y+=J,Y+="=",!Bq.test(C))C=C.replace(/(\\|")/g,"\\$1"),C='"'+C,C+='"';Y+=C}return Y}function Ij0(A){return A===13||A===10||A===9||A===32}function pT(A,Q=!0,B=!0){return Wr(A,Q,B,Ij0)}function Hj0(A){return A===13||A===10||A===9||A===12||A===32}function Dj0(A,Q=!0,B=!0){return Wr(A,Q,B,Hj0)}function Wr(A,Q,B,Y){let J=0,C=A.length-1;if(Q)while(J0&&Y(A.charCodeAt(C)))C--;return J===0&&C===A.length-1?A:A.slice(J,C+1)}function bzQ(A){let Q=A.length;if(65535>Q)return String.fromCharCode.apply(null,A);let B="",Y=0,J=65535;while(YQ)J=Q-Y;B+=String.fromCharCode.apply(null,A.subarray(Y,Y+=J))}return B}function Nj0(A){switch(A.essence){case"application/ecmascript":case"application/javascript":case"application/x-ecmascript":case"application/x-javascript":case"text/ecmascript":case"text/javascript":case"text/javascript1.0":case"text/javascript1.1":case"text/javascript1.2":case"text/javascript1.3":case"text/javascript1.4":case"text/javascript1.5":case"text/jscript":case"text/livescript":case"text/x-ecmascript":case"text/x-javascript":return"text/javascript";case"application/json":case"text/json":return"application/json";case"image/svg+xml":return"image/svg+xml";case"text/xml":case"application/xml":return"application/xml"}if(A.subtype.endsWith("+json"))return"application/json";if(A.subtype.endsWith("+xml"))return"application/xml";return""}mzQ.exports={dataURLProcessor:Uj0,URLSerializer:gzQ,collectASequenceOfCodePoints:nT,collectASequenceOfCodePointsFast:mK,stringPercentDecode:xzQ,parseMIMEType:Fr,collectAnHTTPQuotedString:fzQ,serializeAMimeType:Vj0,removeChars:Wr,removeHTTPWhitespace:pT,minimizeSupportedMimeType:Nj0,HTTP_TOKEN_CODEPOINTS:Bq,isomorphicDecode:bzQ}});var UJ=R((riY,dzQ)=>{var{types:vY,inspect:Lj0}=u("node:util"),{markAsUncloneable:qj0}=u("node:worker_threads"),uzQ=Function.call.bind(Function.prototype[Symbol.hasInstance]),JA={converters:{},util:{},errors:{},is:{}};JA.errors.exception=function(A){return TypeError(`${A.header}: ${A.message}`)};JA.errors.conversionFailed=function(A){let Q=A.types.length===1?"":" one of",B=`${A.argument} could not be converted to${Q}: ${A.types.join(", ")}.`;return JA.errors.exception({header:A.prefix,message:B})};JA.errors.invalidArgument=function(A){return JA.errors.exception({header:A.prefix,message:`"${A.value}" is an invalid ${A.type}.`})};JA.brandCheck=function(A,Q){if(!uzQ(Q,A)){let B=TypeError("Illegal invocation");throw B.code="ERR_INVALID_THIS",B}};JA.brandCheckMultiple=function(A){let Q=A.map((B)=>JA.util.MakeTypeAssertion(B));return(B)=>{if(Q.every((Y)=>!Y(B))){let Y=TypeError("Illegal invocation");throw Y.code="ERR_INVALID_THIS",Y}}};JA.argumentLengthCheck=function({length:A},Q,B){if(AuzQ(A,Q)};JA.util.Type=function(A){switch(typeof A){case"undefined":return 1;case"boolean":return 2;case"string":return 3;case"symbol":return 4;case"number":return 5;case"bigint":return 6;case"function":case"object":{if(A===null)return 7;return 8}}};JA.util.Types={UNDEFINED:1,BOOLEAN:2,STRING:3,SYMBOL:4,NUMBER:5,BIGINT:6,NULL:7,OBJECT:8};JA.util.TypeValueToString=function(A){switch(JA.util.Type(A)){case 1:return"Undefined";case 2:return"Boolean";case 3:return"String";case 4:return"Symbol";case 5:return"Number";case 6:return"BigInt";case 7:return"Null";case 8:return"Object"}};JA.util.markAsUncloneable=qj0||(()=>{});JA.util.ConvertToInt=function(A,Q,B,Y){let J,C;if(Q===64)if(J=Math.pow(2,53)-1,B==="unsigned")C=0;else C=Math.pow(-2,53)+1;else if(B==="unsigned")C=0,J=Math.pow(2,Q)-1;else C=Math.pow(-2,Q)-1,J=Math.pow(2,Q-1)-1;let X=Number(A);if(X===0)X=0;if(JA.util.HasFlag(Y,JA.attributes.EnforceRange)){if(Number.isNaN(X)||X===Number.POSITIVE_INFINITY||X===Number.NEGATIVE_INFINITY)throw JA.errors.exception({header:"Integer conversion",message:`Could not convert ${JA.util.Stringify(A)} to an integer.`});if(X=JA.util.IntegerPart(X),XJ)throw JA.errors.exception({header:"Integer conversion",message:`Value must be between ${C}-${J}, got ${X}.`});return X}if(!Number.isNaN(X)&&JA.util.HasFlag(Y,JA.attributes.Clamp)){if(X=Math.min(Math.max(X,C),J),Math.floor(X)%2===0)X=Math.floor(X);else X=Math.ceil(X);return X}if(Number.isNaN(X)||X===0&&Object.is(0,X)||X===Number.POSITIVE_INFINITY||X===Number.NEGATIVE_INFINITY)return 0;if(X=JA.util.IntegerPart(X),X=X%Math.pow(2,Q),B==="signed"&&X>=Math.pow(2,Q)-1)return X-Math.pow(2,Q);return X};JA.util.IntegerPart=function(A){let Q=Math.floor(Math.abs(A));if(A<0)return-1*Q;return Q};JA.util.Stringify=function(A){switch(JA.util.Type(A)){case 4:return`Symbol(${A.description})`;case 8:return Lj0(A);case 3:return`"${A}"`;case 6:return`${A}n`;default:return`${A}`}};JA.util.IsResizableArrayBuffer=function(A){if(vY.isArrayBuffer(A))return A.resizable;if(vY.isSharedArrayBuffer(A))return A.growable;throw JA.errors.exception({header:"IsResizableArrayBuffer",message:`"${JA.util.Stringify(A)}" is not an array buffer.`})};JA.util.HasFlag=function(A,Q){return typeof A==="number"&&(A&Q)===Q};JA.sequenceConverter=function(A){return(Q,B,Y,J)=>{if(JA.util.Type(Q)!==8)throw JA.errors.exception({header:B,message:`${Y} (${JA.util.Stringify(Q)}) is not iterable.`});let C=typeof J==="function"?J():Q?.[Symbol.iterator]?.(),X=[],G=0;if(C===void 0||typeof C.next!=="function")throw JA.errors.exception({header:B,message:`${Y} is not iterable.`});while(!0){let{done:F,value:W}=C.next();if(F)break;X.push(A(W,B,`${Y}[${G++}]`))}return X}};JA.recordConverter=function(A,Q){return(B,Y,J)=>{if(JA.util.Type(B)!==8)throw JA.errors.exception({header:Y,message:`${J} ("${JA.util.TypeValueToString(B)}") is not an Object.`});let C={};if(!vY.isProxy(B)){let G=[...Object.getOwnPropertyNames(B),...Object.getOwnPropertySymbols(B)];for(let F of G){let W=JA.util.Stringify(F),Z=A(F,Y,`Key ${W} in ${J}`),U=Q(B[F],Y,`${J}[${W}]`);C[Z]=U}return C}let X=Reflect.ownKeys(B);for(let G of X)if(Reflect.getOwnPropertyDescriptor(B,G)?.enumerable){let W=A(G,Y,J),Z=Q(B[G],Y,J);C[W]=Z}return C}};JA.interfaceConverter=function(A,Q){return(B,Y,J)=>{if(!A(B))throw JA.errors.exception({header:Y,message:`Expected ${J} ("${JA.util.Stringify(B)}") to be an instance of ${Q}.`});return B}};JA.dictionaryConverter=function(A){return(Q,B,Y)=>{let J={};if(Q!=null&&JA.util.Type(Q)!==8)throw JA.errors.exception({header:B,message:`Expected ${Q} to be one of: Null, Undefined, Object.`});for(let C of A){let{key:X,defaultValue:G,required:F,converter:W}=C;if(F===!0){if(Q==null||!Object.hasOwn(Q,X))throw JA.errors.exception({header:B,message:`Missing required key "${X}".`})}let Z=Q?.[X],U=G!==void 0;if(U&&Z===void 0)Z=G();if(F||U||Z!==void 0){if(Z=W(Z,B,`${Y}.${X}`),C.allowedValues&&!C.allowedValues.includes(Z))throw JA.errors.exception({header:B,message:`${Z} is not an accepted type. Expected one of ${C.allowedValues.join(", ")}.`});J[X]=Z}}return J}};JA.nullableConverter=function(A){return(Q,B,Y)=>{if(Q===null)return Q;return A(Q,B,Y)}};JA.is.USVString=function(A){return typeof A==="string"&&A.isWellFormed()};JA.is.ReadableStream=JA.util.MakeTypeAssertion(ReadableStream);JA.is.Blob=JA.util.MakeTypeAssertion(Blob);JA.is.URLSearchParams=JA.util.MakeTypeAssertion(URLSearchParams);JA.is.File=JA.util.MakeTypeAssertion(File);JA.is.URL=JA.util.MakeTypeAssertion(URL);JA.is.AbortSignal=JA.util.MakeTypeAssertion(AbortSignal);JA.is.MessagePort=JA.util.MakeTypeAssertion(MessagePort);JA.is.BufferSource=function(A){return vY.isArrayBuffer(A)||ArrayBuffer.isView(A)&&vY.isArrayBuffer(A.buffer)};JA.converters.DOMString=function(A,Q,B,Y){if(A===null&&JA.util.HasFlag(Y,JA.attributes.LegacyNullToEmptyString))return"";if(typeof A==="symbol")throw JA.errors.exception({header:Q,message:`${B} is a symbol, which cannot be converted to a DOMString.`});return String(A)};JA.converters.ByteString=function(A,Q,B){if(typeof A==="symbol")throw JA.errors.exception({header:Q,message:`${B} is a symbol, which cannot be converted to a ByteString.`});let Y=String(A);for(let J=0;J255)throw TypeError(`Cannot convert argument to a ByteString because the character at index ${J} has a value of ${Y.charCodeAt(J)} which is greater than 255.`);return Y};JA.converters.USVString=function(A){if(typeof A==="string")return A.toWellFormed();return`${A}`.toWellFormed()};JA.converters.boolean=function(A){return Boolean(A)};JA.converters.any=function(A){return A};JA.converters["long long"]=function(A,Q,B){return JA.util.ConvertToInt(A,64,"signed",0,Q,B)};JA.converters["unsigned long long"]=function(A,Q,B){return JA.util.ConvertToInt(A,64,"unsigned",0,Q,B)};JA.converters["unsigned long"]=function(A,Q,B){return JA.util.ConvertToInt(A,32,"unsigned",0,Q,B)};JA.converters["unsigned short"]=function(A,Q,B,Y){return JA.util.ConvertToInt(A,16,"unsigned",Y,Q,B)};JA.converters.ArrayBuffer=function(A,Q,B,Y){if(JA.util.Type(A)!==8||!vY.isArrayBuffer(A))throw JA.errors.conversionFailed({prefix:Q,argument:`${B} ("${JA.util.Stringify(A)}")`,types:["ArrayBuffer"]});if(!JA.util.HasFlag(Y,JA.attributes.AllowResizable)&&JA.util.IsResizableArrayBuffer(A))throw JA.errors.exception({header:Q,message:`${B} cannot be a resizable ArrayBuffer.`});return A};JA.converters.SharedArrayBuffer=function(A,Q,B,Y){if(JA.util.Type(A)!==8||!vY.isSharedArrayBuffer(A))throw JA.errors.conversionFailed({prefix:Q,argument:`${B} ("${JA.util.Stringify(A)}")`,types:["SharedArrayBuffer"]});if(!JA.util.HasFlag(Y,JA.attributes.AllowResizable)&&JA.util.IsResizableArrayBuffer(A))throw JA.errors.exception({header:Q,message:`${B} cannot be a resizable SharedArrayBuffer.`});return A};JA.converters.TypedArray=function(A,Q,B,Y,J){if(JA.util.Type(A)!==8||!vY.isTypedArray(A)||A.constructor.name!==Q.name)throw JA.errors.conversionFailed({prefix:B,argument:`${Y} ("${JA.util.Stringify(A)}")`,types:[Q.name]});if(!JA.util.HasFlag(J,JA.attributes.AllowShared)&&vY.isSharedArrayBuffer(A.buffer))throw JA.errors.exception({header:B,message:`${Y} cannot be a view on a shared array buffer.`});if(!JA.util.HasFlag(J,JA.attributes.AllowResizable)&&JA.util.IsResizableArrayBuffer(A.buffer))throw JA.errors.exception({header:B,message:`${Y} cannot be a view on a resizable array buffer.`});return A};JA.converters.DataView=function(A,Q,B,Y){if(JA.util.Type(A)!==8||!vY.isDataView(A))throw JA.errors.conversionFailed({prefix:Q,argument:`${B} ("${JA.util.Stringify(A)}")`,types:["DataView"]});if(!JA.util.HasFlag(Y,JA.attributes.AllowShared)&&vY.isSharedArrayBuffer(A.buffer))throw JA.errors.exception({header:Q,message:`${B} cannot be a view on a shared array buffer.`});if(!JA.util.HasFlag(Y,JA.attributes.AllowResizable)&&JA.util.IsResizableArrayBuffer(A.buffer))throw JA.errors.exception({header:Q,message:`${B} cannot be a view on a resizable array buffer.`});return A};JA.converters.ArrayBufferView=function(A,Q,B,Y){if(JA.util.Type(A)!==8||!vY.isArrayBufferView(A))throw JA.errors.conversionFailed({prefix:Q,argument:`${B} ("${JA.util.Stringify(A)}")`,types:["ArrayBufferView"]});if(!JA.util.HasFlag(Y,JA.attributes.AllowShared)&&vY.isSharedArrayBuffer(A.buffer))throw JA.errors.exception({header:Q,message:`${B} cannot be a view on a shared array buffer.`});if(!JA.util.HasFlag(Y,JA.attributes.AllowResizable)&&JA.util.IsResizableArrayBuffer(A.buffer))throw JA.errors.exception({header:Q,message:`${B} cannot be a view on a resizable array buffer.`});return A};JA.converters.BufferSource=function(A,Q,B,Y){if(vY.isArrayBuffer(A))return JA.converters.ArrayBuffer(A,Q,B,Y);if(vY.isArrayBufferView(A))return Y&=~JA.attributes.AllowShared,JA.converters.ArrayBufferView(A,Q,B,Y);if(vY.isSharedArrayBuffer(A))throw JA.errors.exception({header:Q,message:`${B} cannot be a SharedArrayBuffer.`});throw JA.errors.conversionFailed({prefix:Q,argument:`${B} ("${JA.util.Stringify(A)}")`,types:["ArrayBuffer","ArrayBufferView"]})};JA.converters.AllowSharedBufferSource=function(A,Q,B,Y){if(vY.isArrayBuffer(A))return JA.converters.ArrayBuffer(A,Q,B,Y);if(vY.isSharedArrayBuffer(A))return JA.converters.SharedArrayBuffer(A,Q,B,Y);if(vY.isArrayBufferView(A))return Y|=JA.attributes.AllowShared,JA.converters.ArrayBufferView(A,Q,B,Y);throw JA.errors.conversionFailed({prefix:Q,argument:`${B} ("${JA.util.Stringify(A)}")`,types:["ArrayBuffer","SharedArrayBuffer","ArrayBufferView"]})};JA.converters["sequence"]=JA.sequenceConverter(JA.converters.ByteString);JA.converters["sequence>"]=JA.sequenceConverter(JA.converters["sequence"]);JA.converters["record"]=JA.recordConverter(JA.converters.ByteString,JA.converters.ByteString);JA.converters.Blob=JA.interfaceConverter(JA.is.Blob,"Blob");JA.converters.AbortSignal=JA.interfaceConverter(JA.is.AbortSignal,"AbortSignal");JA.converters.EventHandlerNonNull=function(A){if(JA.util.Type(A)!==8)return null;if(typeof A==="function")return A;return()=>{}};JA.attributes={Clamp:1,EnforceRange:2,AllowShared:4,AllowResizable:8,LegacyNullToEmptyString:16};dzQ.exports={webidl:JA}});var H9=R((aiY,C2Q)=>{var{Transform:Mj0}=u("node:stream"),czQ=u("node:zlib"),{redirectStatusSet:zj0,referrerPolicyTokens:Rj0,badPortsSet:wj0}=Qq(),{getGlobalOrigin:lzQ}=Gr(),{collectASequenceOfCodePoints:S$,collectAnHTTPQuotedString:jj0,removeChars:Oj0,parseMIMEType:Pj0}=g8(),{performance:Tj0}=u("node:perf_hooks"),{ReadableStreamFrom:Sj0,isValidHTTPToken:pzQ,normalizedMethodRecordsBase:kj0}=lQ(),v$=u("node:assert"),{isUint8Array:_j0}=u("node:util/types"),{webidl:pF}=UJ();function izQ(A){let Q=A.urlList,B=Q.length;return B===0?null:Q[B-1].toString()}function vj0(A,Q){if(!zj0.has(A.status))return null;let B=A.headersList.get("location",!0);if(B!==null&&szQ(B)){if(!nzQ(B))B=yj0(B);B=new URL(B,izQ(A))}if(B&&!B.hash)B.hash=Q;return B}function nzQ(A){for(let Q=0;Q126||B<32)return!1}return!0}function yj0(A){return Buffer.from(A,"binary").toString("utf8")}function _$(A){return A.urlList[A.urlList.length-1]}function hj0(A){let Q=_$(A);if(A2Q(Q)&&wj0.has(Q.port))return"blocked";return"allowed"}function gj0(A){return A instanceof Error||(A?.constructor?.name==="Error"||A?.constructor?.name==="DOMException")}function xj0(A){for(let Q=0;Q=32&&B<=126||B>=128&&B<=255))return!1}return!0}var fj0=pzQ;function szQ(A){return(A[0]==="\t"||A[0]===" "||A[A.length-1]==="\t"||A[A.length-1]===" "||A.includes(` +`)||A.includes("\r")||A.includes("\x00"))===!1}function bj0(A){let Q=(A.headersList.get("referrer-policy",!0)??"").split(","),B="";if(Q.length)for(let Y=Q.length;Y!==0;Y--){let J=Q[Y-1].trim();if(Rj0.has(J)){B=J;break}}return B}function mj0(A,Q){let B=bj0(Q);if(B!=="")A.referrerPolicy=B}function uj0(){return"allowed"}function dj0(){return"success"}function cj0(){return"success"}function lj0(A){let Q=null;Q=A.mode,A.headersList.set("sec-fetch-mode",Q,!0)}function pj0(A){let Q=A.origin;if(Q==="client"||Q===void 0)return;if(A.responseTainting==="cors"||A.mode==="websocket")A.headersList.append("origin",Q,!0);else if(A.method!=="GET"&&A.method!=="HEAD"){switch(A.referrerPolicy){case"no-referrer":Q=null;break;case"no-referrer-when-downgrade":case"strict-origin":case"strict-origin-when-cross-origin":if(A.origin&&$r(A.origin)&&!$r(_$(A)))Q=null;break;case"same-origin":if(!Yq(A,_$(A)))Q=null;break;default:}A.headersList.append("origin",Q,!0)}}function uK(A,Q){return A}function ij0(A,Q,B){if(!A?.startTime||A.startTime4096)Y=J;switch(Q){case"no-referrer":return"no-referrer";case"origin":if(J!=null)return J;return Zr(B,!0);case"unsafe-url":return Y;case"strict-origin":{let C=_$(A);if(k$(Y)&&!k$(C))return"no-referrer";return J}case"strict-origin-when-cross-origin":{let C=_$(A);if(Yq(Y,C))return Y;if(k$(Y)&&!k$(C))return"no-referrer";return J}case"same-origin":if(Yq(A,Y))return Y;return"no-referrer";case"origin-when-cross-origin":if(Yq(A,Y))return Y;return J;case"no-referrer-when-downgrade":{let C=_$(A);if(k$(Y)&&!k$(C))return"no-referrer";return Y}}}function Zr(A,Q=!1){if(v$(pF.is.URL(A)),A=new URL(A),ezQ(A))return"no-referrer";if(A.username="",A.password="",A.hash="",Q===!0)A.pathname="",A.search="";return A}var oj0=RegExp.prototype.test.bind(/^127\.(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)\.){2}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)$/),tj0=RegExp.prototype.test.bind(/^(?:(?:0{1,4}:){7}|(?:0{1,4}:){1,6}:|::)0{0,3}1$/);function azQ(A){if(A.includes(":")){if(A[0]==="["&&A[A.length-1]==="]")A=A.slice(1,-1);return tj0(A)}return oj0(A)}function ej0(A){if(A==null||A==="null")return!1;if(A=new URL(A),A.protocol==="https:"||A.protocol==="wss:")return!0;if(azQ(A.hostname))return!0;if(A.hostname==="localhost"||A.hostname==="localhost.")return!0;if(A.hostname.endsWith(".localhost")||A.hostname.endsWith(".localhost."))return!0;if(A.protocol==="file:")return!0;return!1}function k$(A){if(!pF.is.URL(A))return!1;if(A.href==="about:blank"||A.href==="about:srcdoc")return!0;if(A.protocol==="data:")return!0;if(A.protocol==="blob:")return!0;return ej0(A.origin)}function AO0(A){}function Yq(A,Q){if(A.origin===Q.origin&&A.origin==="null")return!0;if(A.protocol===Q.protocol&&A.hostname===Q.hostname&&A.port===Q.port)return!0;return!1}function QO0(A){return A.controller.state==="aborted"}function BO0(A){return A.controller.state==="aborted"||A.controller.state==="terminated"}function YO0(A){return kj0[A.toLowerCase()]??A}function JO0(A){let Q=JSON.stringify(A);if(Q===void 0)throw TypeError("Value is not JSON serializable");return v$(typeof Q==="string"),Q}var CO0=Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]()));function ozQ(A,Q,B=0,Y=1){class J{#A;#Q;#B;constructor(C,X){this.#A=C,this.#Q=X,this.#B=0}next(){if(typeof this!=="object"||this===null||!(#A in this))throw TypeError(`'next' called on an object that does not implement interface ${A} Iterator.`);let C=this.#B,X=Q(this.#A),G=X.length;if(C>=G)return{value:void 0,done:!0};let{[B]:F,[Y]:W}=X[C];this.#B=C+1;let Z;switch(this.#Q){case"key":Z=F;break;case"value":Z=W;break;case"key+value":Z=[F,W];break}return{value:Z,done:!1}}}return delete J.prototype.constructor,Object.setPrototypeOf(J.prototype,CO0),Object.defineProperties(J.prototype,{[Symbol.toStringTag]:{writable:!1,enumerable:!1,configurable:!0,value:`${A} Iterator`},next:{writable:!0,enumerable:!0,configurable:!0}}),function(C,X){return new J(C,X)}}function XO0(A,Q,B,Y=0,J=1){let C=ozQ(A,B,Y,J),X={keys:{writable:!0,enumerable:!0,configurable:!0,value:function(){return pF.brandCheck(this,Q),C(this,"key")}},values:{writable:!0,enumerable:!0,configurable:!0,value:function(){return pF.brandCheck(this,Q),C(this,"value")}},entries:{writable:!0,enumerable:!0,configurable:!0,value:function(){return pF.brandCheck(this,Q),C(this,"key+value")}},forEach:{writable:!0,enumerable:!0,configurable:!0,value:function(F,W=globalThis){if(pF.brandCheck(this,Q),pF.argumentLengthCheck(arguments,1,`${A}.forEach`),typeof F!=="function")throw TypeError(`Failed to execute 'forEach' on '${A}': parameter 1 is not of type 'Function'.`);for(let{0:Z,1:U}of C(this,"key+value"))F.call(W,U,Z,this)}}};return Object.defineProperties(Q.prototype,{...X,[Symbol.iterator]:{writable:!0,enumerable:!1,configurable:!0,value:X.entries.value}})}function GO0(A,Q,B){let Y=Q,J=B;try{let C=A.stream.getReader();tzQ(C,Y,J)}catch(C){J(C)}}function FO0(A){try{A.close(),A.byobRequest?.respond(0)}catch(Q){if(!Q.message.includes("Controller is already closed")&&!Q.message.includes("ReadableStream is already closed"))throw Q}}var WO0=/[^\x00-\xFF]/;function sT(A){return v$(!WO0.test(A)),A}async function tzQ(A,Q,B){try{let Y=[],J=0;do{let{done:C,value:X}=await A.read();if(C){Q(Buffer.concat(Y,J));return}if(!_j0(X)){B(TypeError("Received non-Uint8Array chunk"));return}Y.push(X),J+=X.length}while(!0)}catch(Y){B(Y)}}function ezQ(A){v$("protocol"in A);let Q=A.protocol;return Q==="about:"||Q==="blob:"||Q==="data:"}function $r(A){return typeof A==="string"&&A[5]===":"&&A[0]==="h"&&A[1]==="t"&&A[2]==="t"&&A[3]==="p"&&A[4]==="s"||A.protocol==="https:"}function A2Q(A){v$("protocol"in A);let Q=A.protocol;return Q==="http:"||Q==="https:"}function ZO0(A,Q){let B=A;if(!B.startsWith("bytes"))return"failure";let Y={position:5};if(Q)S$((F)=>F==="\t"||F===" ",B,Y);if(B.charCodeAt(Y.position)!==61)return"failure";if(Y.position++,Q)S$((F)=>F==="\t"||F===" ",B,Y);let J=S$((F)=>{let W=F.charCodeAt(0);return W>=48&&W<=57},B,Y),C=J.length?Number(J):null;if(Q)S$((F)=>F==="\t"||F===" ",B,Y);if(B.charCodeAt(Y.position)!==45)return"failure";if(Y.position++,Q)S$((F)=>F==="\t"||F===" ",B,Y);let X=S$((F)=>{let W=F.charCodeAt(0);return W>=48&&W<=57},B,Y),G=X.length?Number(X):null;if(Y.positionG)return"failure";return{rangeStartValue:C,rangeEndValue:G}}function $O0(A,Q,B){let Y="bytes ";return Y+=sT(`${A}`),Y+="-",Y+=sT(`${Q}`),Y+="/",Y+=sT(`${B}`),Y}class Q2Q extends Mj0{#A;constructor(A){super();this.#A=A}_transform(A,Q,B){if(!this._inflateStream){if(A.length===0){B();return}this._inflateStream=(A[0]&15)===8?czQ.createInflate(this.#A):czQ.createInflateRaw(this.#A),this._inflateStream.on("data",this.push.bind(this)),this._inflateStream.on("end",()=>this.push(null)),this._inflateStream.on("error",(Y)=>this.destroy(Y))}this._inflateStream.write(A,Q,B)}_final(A){if(this._inflateStream)this._inflateStream.end(),this._inflateStream=null;A()}}function UO0(A){return new Q2Q(A)}function EO0(A){let Q=null,B=null,Y=null,J=B2Q("content-type",A);if(J===null)return"failure";for(let C of J){let X=Pj0(C);if(X==="failure"||X.essence==="*/*")continue;if(Y=X,Y.essence!==B){if(Q=null,Y.parameters.has("charset"))Q=Y.parameters.get("charset");B=Y.essence}else if(!Y.parameters.has("charset")&&Q!==null)Y.parameters.set("charset",Q)}if(Y==null)return"failure";return Y}function KO0(A){let Q=A,B={position:0},Y=[],J="";while(B.positionC!=='"'&&C!==",",Q,B),B.positionC===9||C===32),Y.push(J),J=""}return Y}function B2Q(A,Q){let B=Q.get(A,!0);if(B===null)return null;return KO0(B)}var VO0=new TextDecoder;function IO0(A){if(A.length===0)return"";if(A[0]===239&&A[1]===187&&A[2]===191)A=A.subarray(3);return VO0.decode(A)}class Y2Q{get baseUrl(){return lzQ()}get origin(){return this.baseUrl?.origin}policyContainer=rzQ()}class J2Q{settingsObject=new Y2Q}var HO0=new J2Q;C2Q.exports={isAborted:QO0,isCancelled:BO0,isValidEncodedURL:nzQ,ReadableStreamFrom:Sj0,tryUpgradeRequestToAPotentiallyTrustworthyURL:AO0,clampAndCoarsenConnectionTimingInfo:ij0,coarsenedSharedCurrentTime:nj0,determineRequestsReferrer:aj0,makePolicyContainer:rzQ,clonePolicyContainer:rj0,appendFetchMetadata:lj0,appendRequestOriginHeader:pj0,TAOCheck:cj0,corsCheck:dj0,crossOriginResourcePolicyCheck:uj0,createOpaqueTimingInfo:sj0,setRequestReferrerPolicyOnRedirect:mj0,isValidHTTPToken:pzQ,requestBadPort:hj0,requestCurrentURL:_$,responseURL:izQ,responseLocationURL:vj0,isURLPotentiallyTrustworthy:k$,isValidReasonPhrase:xj0,sameOrigin:Yq,normalizeMethod:YO0,serializeJavascriptValueToJSONString:JO0,iteratorMixin:XO0,createIterator:ozQ,isValidHeaderName:fj0,isValidHeaderValue:szQ,isErrorLike:gj0,fullyReadBody:GO0,readableStreamClose:FO0,isomorphicEncode:sT,urlIsLocal:ezQ,urlHasHttpsScheme:$r,urlIsHttpHttpsScheme:A2Q,readAllBytes:tzQ,simpleRangeHeaderValue:ZO0,buildContentRange:$O0,createInflate:UO0,extractMimeType:EO0,getDecodeSplit:B2Q,utf8DecodeBytes:IO0,environmentSettingsObject:HO0,isOriginIPPotentiallyTrustworthy:azQ}});var rT=R((oiY,G2Q)=>{var{iteratorMixin:DO0}=H9(),{kEnumerableProperty:dK}=lQ(),{webidl:gB}=UJ(),X2Q=u("node:util");class r9{#A=[];constructor(A=void 0){if(gB.util.markAsUncloneable(this),A!==void 0)throw gB.errors.conversionFailed({prefix:"FormData constructor",argument:"Argument 1",types:["undefined"]})}append(A,Q,B=void 0){gB.brandCheck(this,r9);let Y="FormData.append";if(gB.argumentLengthCheck(arguments,2,Y),A=gB.converters.USVString(A),arguments.length===3||gB.is.Blob(Q)){if(Q=gB.converters.Blob(Q,Y,"value"),B!==void 0)B=gB.converters.USVString(B)}else Q=gB.converters.USVString(Q);let J=Ur(A,Q,B);this.#A.push(J)}delete(A){gB.brandCheck(this,r9);let Q="FormData.delete";gB.argumentLengthCheck(arguments,1,Q),A=gB.converters.USVString(A),this.#A=this.#A.filter((B)=>B.name!==A)}get(A){gB.brandCheck(this,r9);let Q="FormData.get";gB.argumentLengthCheck(arguments,1,Q),A=gB.converters.USVString(A);let B=this.#A.findIndex((Y)=>Y.name===A);if(B===-1)return null;return this.#A[B].value}getAll(A){gB.brandCheck(this,r9);let Q="FormData.getAll";return gB.argumentLengthCheck(arguments,1,Q),A=gB.converters.USVString(A),this.#A.filter((B)=>B.name===A).map((B)=>B.value)}has(A){gB.brandCheck(this,r9);let Q="FormData.has";return gB.argumentLengthCheck(arguments,1,Q),A=gB.converters.USVString(A),this.#A.findIndex((B)=>B.name===A)!==-1}set(A,Q,B=void 0){gB.brandCheck(this,r9);let Y="FormData.set";if(gB.argumentLengthCheck(arguments,2,Y),A=gB.converters.USVString(A),arguments.length===3||gB.is.Blob(Q)){if(Q=gB.converters.Blob(Q,Y,"value"),B!==void 0)B=gB.converters.USVString(B)}else Q=gB.converters.USVString(Q);let J=Ur(A,Q,B),C=this.#A.findIndex((X)=>X.name===A);if(C!==-1)this.#A=[...this.#A.slice(0,C),J,...this.#A.slice(C+1).filter((X)=>X.name!==A)];else this.#A.push(J)}[X2Q.inspect.custom](A,Q){let B=this.#A.reduce((J,C)=>{if(J[C.name])if(Array.isArray(J[C.name]))J[C.name].push(C.value);else J[C.name]=[J[C.name],C.value];else J[C.name]=C.value;return J},{__proto__:null});Q.depth??=A,Q.colors??=!0;let Y=X2Q.formatWithOptions(Q,B);return`FormData ${Y.slice(Y.indexOf("]")+2)}`}static getFormDataState(A){return A.#A}static setFormDataState(A,Q){A.#A=Q}}var{getFormDataState:NO0,setFormDataState:LO0}=r9;Reflect.deleteProperty(r9,"getFormDataState");Reflect.deleteProperty(r9,"setFormDataState");DO0("FormData",r9,NO0,"name","value");Object.defineProperties(r9.prototype,{append:dK,delete:dK,get:dK,getAll:dK,has:dK,set:dK,[Symbol.toStringTag]:{value:"FormData",configurable:!0}});function Ur(A,Q,B){if(typeof Q==="string");else{if(!gB.is.File(Q))Q=new File([Q],"blob",{type:Q.type});if(B!==void 0){let Y={type:Q.type,lastModified:Q.lastModified};Q=new File([Q],B,Y)}}return{name:A,value:Q}}gB.is.FormData=gB.util.MakeTypeAssertion(r9);G2Q.exports={FormData:r9,makeEntry:Ur,setFormDataState:LO0}});var $2Q=R((tiY,Z2Q)=>{var{bufferToLowerCasedHeaderName:qO0}=lQ(),{utf8DecodeBytes:MO0}=H9(),{HTTP_TOKEN_CODEPOINTS:zO0,isomorphicDecode:F2Q}=g8(),{makeEntry:RO0}=rT(),{webidl:Er}=UJ(),aT=u("node:assert"),wO0=Buffer.from('form-data; name="'),jO0=Buffer.from("filename"),OO0=Buffer.from("--"),PO0=Buffer.from(`--\r +`);function TO0(A){for(let Q=0;Q70)return!1;for(let B=0;B=48&&Y<=57||Y>=65&&Y<=90||Y>=97&&Y<=122||Y===39||Y===45||Y===95))return!1}return!0}function kO0(A,Q){aT(Q!=="failure"&&Q.essence==="multipart/form-data");let B=Q.parameters.get("boundary");if(B===void 0)throw r5("missing boundary in content-type header");let Y=Buffer.from(`--${B}`,"utf8"),J=[],C={position:0};while(A[C.position]===13&&A[C.position+1]===10)C.position+=2;let X=A.length;while(A[X-1]===10&&A[X-2]===13)X-=2;if(X!==A.length)A=A.subarray(0,X);while(!0){if(A.subarray(C.position,C.position+Y.length).equals(Y))C.position+=Y.length;else throw r5("expected a value starting with -- and the boundary");if(C.position===A.length-2&&oT(A,OO0,C)||C.position===A.length-4&&oT(A,PO0,C))return J;if(A[C.position]!==13||A[C.position+1]!==10)throw r5("expected CRLF");C.position+=2;let G=_O0(A,C),{name:F,filename:W,contentType:Z,encoding:U}=G;C.position+=2;let $;{let K=A.indexOf(Y.subarray(2),C.position);if(K===-1)throw r5("expected boundary after body");if($=A.subarray(C.position,K-4),C.position+=$.length,U==="base64")$=Buffer.from($.toString(),"base64")}if(A[C.position]!==13||A[C.position+1]!==10)throw r5("expected CRLF");else C.position+=2;let E;if(W!==null){if(Z??="text/plain",!TO0(Z))Z="";E=new File([$],W,{type:Z})}else E=MO0(Buffer.from($));aT(Er.is.USVString(F)),aT(typeof E==="string"&&Er.is.USVString(E)||Er.is.File(E)),J.push(RO0(F,E,W))}}function _O0(A,Q){let B=null,Y=null,J=null,C=null;while(!0){if(A[Q.position]===13&&A[Q.position+1]===10){if(B===null)throw r5("header name is null");return{name:B,filename:Y,contentType:J,encoding:C}}let X=wG((G)=>G!==10&&G!==13&&G!==58,A,Q);if(X=Kr(X,!0,!0,(G)=>G===9||G===32),!zO0.test(X.toString()))throw r5("header name does not match the field-name token production");if(A[Q.position]!==58)throw r5("expected :");switch(Q.position++,wG((G)=>G===32||G===9,A,Q),qO0(X)){case"content-disposition":{if(B=Y=null,!oT(A,wO0,Q))throw r5('expected form-data; name=" for content-disposition header');if(Q.position+=17,B=W2Q(A,Q),A[Q.position]===59&&A[Q.position+1]===32){let G={position:Q.position+2};if(oT(A,jO0,G))if(A[G.position+8]===42){G.position+=10,wG((W)=>W===32||W===9,A,G);let F=wG((W)=>W!==32&&W!==13&&W!==10,A,G);if(F[0]!==117&&F[0]!==85||F[1]!==116&&F[1]!==84||F[2]!==102&&F[2]!==70||F[3]!==45||F[4]!==56)throw r5("unknown encoding, expected utf-8''");Y=decodeURIComponent(new TextDecoder().decode(F.subarray(7))),Q.position=G.position}else Q.position+=11,wG((F)=>F===32||F===9,A,Q),Q.position++,Y=W2Q(A,Q)}break}case"content-type":{let G=wG((F)=>F!==10&&F!==13,A,Q);G=Kr(G,!1,!0,(F)=>F===9||F===32),J=F2Q(G);break}case"content-transfer-encoding":{let G=wG((F)=>F!==10&&F!==13,A,Q);G=Kr(G,!1,!0,(F)=>F===9||F===32),C=F2Q(G);break}default:wG((G)=>G!==10&&G!==13,A,Q)}if(A[Q.position]!==13&&A[Q.position+1]!==10)throw r5("expected CRLF");else Q.position+=2}}function W2Q(A,Q){aT(A[Q.position-1]===34);let B=wG((Y)=>Y!==10&&Y!==13&&Y!==34,A,Q);if(A[Q.position]!==34)throw r5('expected "');else Q.position++;return B=new TextDecoder().decode(B).replace(/%0A/ig,` +`).replace(/%0D/ig,"\r").replace(/%22/g,'"'),B}function wG(A,Q,B){let Y=B.position;while(Y0&&Y(A[C]))C--;return J===0&&C===A.length-1?A:A.subarray(J,C+1)}function oT(A,Q,B){if(A.length{function vO0(){let A,Q;return{promise:new Promise((Y,J)=>{A=Y,Q=J}),resolve:A,reject:Q}}U2Q.exports={createDeferredPromise:vO0}});var lK=R((AnY,N2Q)=>{var eT=lQ(),{ReadableStreamFrom:yO0,readableStreamClose:hO0,fullyReadBody:gO0,extractMimeType:xO0,utf8DecodeBytes:V2Q}=H9(),{FormData:E2Q,setFormDataState:fO0}=rT(),{webidl:V6}=UJ(),Vr=u("node:assert"),{isErrored:I2Q,isDisturbed:bO0}=u("node:stream"),{isArrayBuffer:mO0}=u("node:util/types"),{serializeAMimeType:uO0}=g8(),{multipartFormDataParser:dO0}=$2Q(),{createDeferredPromise:cO0}=Jq(),Ir;try{let A=u("node:crypto");Ir=(Q)=>A.randomInt(0,Q)}catch{Ir=(A)=>Math.floor(Math.random()*A)}var tT=new TextEncoder;function lO0(){}var pO0=new FinalizationRegistry((A)=>{let Q=A.deref();if(Q&&!Q.locked&&!bO0(Q)&&!I2Q(Q))Q.cancel("Response object has been garbage collected").catch(lO0)});function H2Q(A,Q=!1){let B=null;if(V6.is.ReadableStream(A))B=A;else if(V6.is.Blob(A))B=A.stream();else B=new ReadableStream({pull(F){let W=typeof J==="string"?tT.encode(J):J;if(W.byteLength)F.enqueue(W);queueMicrotask(()=>hO0(F))},start(){},type:"bytes"});Vr(V6.is.ReadableStream(B));let Y=null,J=null,C=null,X=null;if(typeof A==="string")J=A,X="text/plain;charset=UTF-8";else if(V6.is.URLSearchParams(A))J=A.toString(),X="application/x-www-form-urlencoded;charset=UTF-8";else if(V6.is.BufferSource(A))J=mO0(A)?new Uint8Array(A.slice()):new Uint8Array(A.buffer.slice(A.byteOffset,A.byteOffset+A.byteLength));else if(V6.is.FormData(A)){let F=`----formdata-undici-0${`${Ir(100000000000)}`.padStart(11,"0")}`,W=`--${F}\r Content-Disposition: form-data`;/*! formdata-polyfill. MIT License. Jimmy Wärting */let Z=(V)=>V.replace(/\n/g,"%0A").replace(/\r/g,"%0D").replace(/"/g,"%22"),U=(V)=>V.replace(/\r?\n|\r/g,`\r -`),$=[],E=new Uint8Array([13,10]);C=0;let K=!1;for(let[V,H]of A)if(typeof H==="string"){let D=nT.encode(W+`; name="${Z(U(V))}"\r +`),$=[],E=new Uint8Array([13,10]);C=0;let K=!1;for(let[V,H]of A)if(typeof H==="string"){let D=tT.encode(W+`; name="${Z(U(V))}"\r \r ${U(H)}\r -`);$.push(D),C+=D.byteLength}else{let D=nT.encode(`${W}; name="${Z(U(V))}"`+(H.name?`; filename="${Z(H.name)}"`:"")+`\r +`);$.push(D),C+=D.byteLength}else{let D=tT.encode(`${W}; name="${Z(U(V))}"`+(H.name?`; filename="${Z(H.name)}"`:"")+`\r Content-Type: ${H.type||"application/octet-stream"}\r \r -`);if($.push(D,H,E),typeof H.size==="number")C+=D.byteLength+H.size+E.byteLength;else K=!0}let I=nT.encode(`--${F}--\r -`);if($.push(I),C+=I.byteLength,K)C=null;J=A,Y=async function*(){for(let V of $)if(V.stream)yield*V.stream();else yield V},X=`multipart/form-data; boundary=${F}`}else if(KX.is.Blob(A)){if(J=A,C=A.size,A.type)X=A.type}else if(typeof A[Symbol.asyncIterator]==="function"){if(Q)throw TypeError("keepalive");if(sT.isDisturbed(A)||A.locked)throw TypeError("Response body object should not be disturbed or locked");B=KX.is.ReadableStream(A)?A:DO0(A)}if(typeof J==="string"||sT.isBuffer(J))C=Buffer.byteLength(J);if(Y!=null){let F;B=new ReadableStream({async start(){F=Y(A)[Symbol.asyncIterator]()},async pull(W){let{value:Z,done:U}=await F.next();if(U)queueMicrotask(()=>{W.close(),W.byobRequest?.respond(0)});else if(!A2Q(B)){let $=new Uint8Array(Z);if($.byteLength)W.enqueue($)}return W.desiredSize>0},async cancel(W){await F.return()},type:"bytes"})}return[{stream:B,source:J,length:C},X]}function SO0(A,Q=!1){if(KX.is.ReadableStream(A))Yr(!sT.isDisturbed(A),"The body has already been consumed."),Yr(!A.locked,"The stream is locked.");return Q2Q(A,Q)}function kO0(A){let{0:Q,1:B}=A.stream.tee();return A.stream=Q,{stream:B,length:A.length,source:A.source}}function _O0(A,Q){return{blob(){return bK(this,(Y)=>{let J=tzQ(Q(this));if(J===null)J="";else if(J)J=wO0(J);return new Blob([Y],{type:J})},A,Q)},arrayBuffer(){return bK(this,(Y)=>{return new Uint8Array(Y).buffer},A,Q)},text(){return bK(this,ezQ,A,Q)},json(){return bK(this,yO0,A,Q)},formData(){return bK(this,(Y)=>{let J=tzQ(Q(this));if(J!==null)switch(J.essence){case"multipart/form-data":{let C=jO0(Y,J),X=new ozQ;return MO0(X,C),X}case"application/x-www-form-urlencoded":{let C=new URLSearchParams(Y.toString()),X=new ozQ;for(let[G,F]of C)X.append(G,F);return X}}throw TypeError('Content-Type was not one of "multipart/form-data" or "application/x-www-form-urlencoded".')},A,Q)},bytes(){return bK(this,(Y)=>{return new Uint8Array(Y)},A,Q)}}}function vO0(A,Q){Object.assign(A.prototype,_O0(A,Q))}function bK(A,Q,B,Y){try{KX.brandCheck(A,B)}catch(F){return Promise.reject(F)}let J=Y(A);if(B2Q(J))return Promise.reject(TypeError("Body is unusable: Body has already been read"));if(J.aborted)return Promise.reject(new DOMException("The operation was aborted.","AbortError"));let C=OO0(),X=C.reject,G=(F)=>{try{C.resolve(Q(F))}catch(W){X(W)}};if(J.body==null)return G(Buffer.allocUnsafe(0)),C.promise;return LO0(J.body,G,X),C.promise}function B2Q(A){let Q=A.body;return Q!=null&&(Q.stream.locked||sT.isDisturbed(Q.stream))}function yO0(A){return JSON.parse(ezQ(A))}function tzQ(A){let Q=A.headersList,B=qO0(Q);if(B==="failure")return null;return B}Y2Q.exports={extractBody:Q2Q,safelyExtractBody:SO0,cloneBody:kO0,mixinBody:vO0,streamRegistry:TO0,bodyUnusable:B2Q}});var V2Q=R((IiY,K2Q)=>{var wQ=u("node:assert"),TQ=lQ(),{channels:J2Q}=z$(),Cr=Ps(),{RequestContentLengthMismatchError:S$,ResponseContentLengthMismatchError:gO0,RequestAbortedError:Z2Q,HeadersTimeoutError:hO0,HeadersOverflowError:xO0,SocketError:Yq,InformationalError:uK,BodyTimeoutError:fO0,HTTPParserError:bO0,ResponseExceededMaxSizeError:mO0}=QB(),{kUrl:$2Q,kReset:a9,kClient:$r,kParser:s0,kBlocking:Jq,kRunning:_J,kPending:uO0,kSize:C2Q,kWriting:iF,kQueue:X1,kNoRef:Qq,kKeepAliveDefaultTimeout:dO0,kHostHeader:cO0,kPendingIdx:lO0,kRunningIdx:r5,kError:a5,kPipelining:oT,kSocket:dK,kKeepAliveTimeoutValue:eT,kMaxHeadersSize:pO0,kKeepAliveMaxTimeout:iO0,kKeepAliveTimeoutThreshold:nO0,kHeadersTimeout:sO0,kBodyTimeout:rO0,kStrictContentLength:Fr,kMaxRequests:X2Q,kCounter:aO0,kMaxResponseSize:oO0,kOnError:tO0,kResume:pF,kHTTPContext:U2Q,kClosed:Wr}=Q0(),VX=CzQ(),eO0=Buffer.alloc(0),rT=Buffer[Symbol.species],AP0=TQ.removeAllListeners,Xr;function QP0(){let A=process.env.JEST_WORKER_ID?is():void 0,Q,B=process.arch!=="ppc64";if(process.env.UNDICI_NO_WASM_SIMD==="1")B=!0;else if(process.env.UNDICI_NO_WASM_SIMD==="0")B=!1;if(B)try{Q=new WebAssembly.Module(FzQ())}catch{}if(!Q)Q=new WebAssembly.Module(A||is());return new WebAssembly.Instance(Q,{env:{wasm_on_url:(Y,J,C)=>{return 0},wasm_on_status:(Y,J,C)=>{wQ(yY.ptr===Y);let X=J-HX+IX.byteOffset;return yY.onStatus(new rT(IX.buffer,X,C))},wasm_on_message_begin:(Y)=>{return wQ(yY.ptr===Y),yY.onMessageBegin()},wasm_on_header_field:(Y,J,C)=>{wQ(yY.ptr===Y);let X=J-HX+IX.byteOffset;return yY.onHeaderField(new rT(IX.buffer,X,C))},wasm_on_header_value:(Y,J,C)=>{wQ(yY.ptr===Y);let X=J-HX+IX.byteOffset;return yY.onHeaderValue(new rT(IX.buffer,X,C))},wasm_on_headers_complete:(Y,J,C,X)=>{return wQ(yY.ptr===Y),yY.onHeadersComplete(J,C===1,X===1)},wasm_on_body:(Y,J,C)=>{wQ(yY.ptr===Y);let X=J-HX+IX.byteOffset;return yY.onBody(new rT(IX.buffer,X,C))},wasm_on_message_complete:(Y)=>{return wQ(yY.ptr===Y),yY.onMessageComplete()}}})}var Gr=null,yY=null,IX=null,aT=0,HX=null,BP0=0,Bq=1,cK=2|Bq,tT=4|Bq,Zr=8|BP0;class E2Q{constructor(A,Q,{exports:B}){this.llhttp=B,this.ptr=this.llhttp.llhttp_alloc(VX.TYPE.RESPONSE),this.client=A,this.socket=Q,this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.statusCode=0,this.statusText="",this.upgrade=!1,this.headers=[],this.headersSize=0,this.headersMaxSize=A[pO0],this.shouldKeepAlive=!1,this.paused=!1,this.resume=this.resume.bind(this),this.bytesRead=0,this.keepAlive="",this.contentLength="",this.connection="",this.maxResponseSize=A[oO0]}setTimeout(A,Q){if(A!==this.timeoutValue||Q&Bq^this.timeoutType&Bq){if(this.timeout)Cr.clearTimeout(this.timeout),this.timeout=null;if(A)if(Q&Bq)this.timeout=Cr.setFastTimeout(G2Q,A,new WeakRef(this));else this.timeout=setTimeout(G2Q,A,new WeakRef(this)),this.timeout?.unref();this.timeoutValue=A}else if(this.timeout){if(this.timeout.refresh)this.timeout.refresh()}this.timeoutType=Q}resume(){if(this.socket.destroyed||!this.paused)return;if(wQ(this.ptr!=null),wQ(yY===null),this.llhttp.llhttp_resume(this.ptr),wQ(this.timeoutType===tT),this.timeout){if(this.timeout.refresh)this.timeout.refresh()}this.paused=!1,this.execute(this.socket.read()||eO0),this.readMore()}readMore(){while(!this.paused&&this.ptr){let A=this.socket.read();if(A===null)break;this.execute(A)}}execute(A){wQ(yY===null),wQ(this.ptr!=null),wQ(!this.paused);let{socket:Q,llhttp:B}=this;if(A.length>aT){if(HX)B.free(HX);aT=Math.ceil(A.length/4096)*4096,HX=B.malloc(aT)}new Uint8Array(B.memory.buffer,HX,aT).set(A);try{let Y;try{IX=A,yY=this,Y=B.llhttp_execute(this.ptr,HX,A.length)}finally{yY=null,IX=null}if(Y!==VX.ERROR.OK){let J=A.subarray(B.llhttp_get_error_pos(this.ptr)-HX);if(Y===VX.ERROR.PAUSED_UPGRADE)this.onUpgrade(J);else if(Y===VX.ERROR.PAUSED)this.paused=!0,Q.unshift(J);else{let C=B.llhttp_get_error_reason(this.ptr),X="";if(C){let G=new Uint8Array(B.memory.buffer,C).indexOf(0);X="Response does not match the HTTP/1.1 protocol ("+Buffer.from(B.memory.buffer,C,G).toString()+")"}throw new bO0(X,VX.ERROR[Y],J)}}}catch(Y){TQ.destroy(Q,Y)}}destroy(){wQ(yY===null),wQ(this.ptr!=null),this.llhttp.llhttp_free(this.ptr),this.ptr=null,this.timeout&&Cr.clearTimeout(this.timeout),this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.paused=!1}onStatus(A){return this.statusText=A.toString(),0}onMessageBegin(){let{socket:A,client:Q}=this;if(A.destroyed)return-1;let B=Q[X1][Q[r5]];if(!B)return-1;return B.onResponseStarted(),0}onHeaderField(A){let Q=this.headers.length;if((Q&1)===0)this.headers.push(A);else this.headers[Q-1]=Buffer.concat([this.headers[Q-1],A]);return this.trackHeader(A.length),0}onHeaderValue(A){let Q=this.headers.length;if((Q&1)===1)this.headers.push(A),Q+=1;else this.headers[Q-1]=Buffer.concat([this.headers[Q-1],A]);let B=this.headers[Q-2];if(B.length===10){let Y=TQ.bufferToLowerCasedHeaderName(B);if(Y==="keep-alive")this.keepAlive+=A.toString();else if(Y==="connection")this.connection+=A.toString()}else if(B.length===14&&TQ.bufferToLowerCasedHeaderName(B)==="content-length")this.contentLength+=A.toString();return this.trackHeader(A.length),0}trackHeader(A){if(this.headersSize+=A,this.headersSize>=this.headersMaxSize)TQ.destroy(this.socket,new xO0)}onUpgrade(A){let{upgrade:Q,client:B,socket:Y,headers:J,statusCode:C}=this;wQ(Q),wQ(B[dK]===Y),wQ(!Y.destroyed),wQ(!this.paused),wQ((J.length&1)===0);let X=B[X1][B[r5]];wQ(X),wQ(X.upgrade||X.method==="CONNECT"),this.statusCode=0,this.statusText="",this.shouldKeepAlive=!1,this.headers=[],this.headersSize=0,Y.unshift(A),Y[s0].destroy(),Y[s0]=null,Y[$r]=null,Y[a5]=null,AP0(Y),B[dK]=null,B[U2Q]=null,B[X1][B[r5]++]=null,B.emit("disconnect",B[$2Q],[B],new uK("upgrade"));try{X.onUpgrade(C,J,Y)}catch(G){TQ.destroy(Y,G)}B[pF]()}onHeadersComplete(A,Q,B){let{client:Y,socket:J,headers:C,statusText:X}=this;if(J.destroyed)return-1;let G=Y[X1][Y[r5]];if(!G)return-1;if(wQ(!this.upgrade),wQ(this.statusCode<200),A===100)return TQ.destroy(J,new Yq("bad response",TQ.getSocketInfo(J))),-1;if(Q&&!G.upgrade)return TQ.destroy(J,new Yq("bad upgrade",TQ.getSocketInfo(J))),-1;if(wQ(this.timeoutType===cK),this.statusCode=A,this.shouldKeepAlive=B||G.method==="HEAD"&&!J[a9]&&this.connection.toLowerCase()==="keep-alive",this.statusCode>=200){let W=G.bodyTimeout!=null?G.bodyTimeout:Y[rO0];this.setTimeout(W,tT)}else if(this.timeout){if(this.timeout.refresh)this.timeout.refresh()}if(G.method==="CONNECT")return wQ(Y[_J]===1),this.upgrade=!0,2;if(Q)return wQ(Y[_J]===1),this.upgrade=!0,2;if(wQ((this.headers.length&1)===0),this.headers=[],this.headersSize=0,this.shouldKeepAlive&&Y[oT]){let W=this.keepAlive?TQ.parseKeepAliveTimeout(this.keepAlive):null;if(W!=null){let Z=Math.min(W-Y[nO0],Y[iO0]);if(Z<=0)J[a9]=!0;else Y[eT]=Z}else Y[eT]=Y[dO0]}else J[a9]=!0;let F=G.onHeaders(A,C,this.resume,X)===!1;if(G.aborted)return-1;if(G.method==="HEAD")return 1;if(A<200)return 1;if(J[Jq])J[Jq]=!1,Y[pF]();return F?VX.ERROR.PAUSED:0}onBody(A){let{client:Q,socket:B,statusCode:Y,maxResponseSize:J}=this;if(B.destroyed)return-1;let C=Q[X1][Q[r5]];if(wQ(C),wQ(this.timeoutType===tT),this.timeout){if(this.timeout.refresh)this.timeout.refresh()}if(wQ(Y>=200),J>-1&&this.bytesRead+A.length>J)return TQ.destroy(B,new mO0),-1;if(this.bytesRead+=A.length,C.onData(A)===!1)return VX.ERROR.PAUSED;return 0}onMessageComplete(){let{client:A,socket:Q,statusCode:B,upgrade:Y,headers:J,contentLength:C,bytesRead:X,shouldKeepAlive:G}=this;if(Q.destroyed&&(!B||G))return-1;if(Y)return 0;wQ(B>=100),wQ((this.headers.length&1)===0);let F=A[X1][A[r5]];if(wQ(F),this.statusCode=0,this.statusText="",this.bytesRead=0,this.contentLength="",this.keepAlive="",this.connection="",this.headers=[],this.headersSize=0,B<200)return 0;if(F.method!=="HEAD"&&C&&X!==parseInt(C,10))return TQ.destroy(Q,new gO0),-1;if(F.onComplete(J),A[X1][A[r5]++]=null,Q[iF])return wQ(A[_J]===0),TQ.destroy(Q,new uK("reset")),VX.ERROR.PAUSED;else if(!G)return TQ.destroy(Q,new uK("reset")),VX.ERROR.PAUSED;else if(Q[a9]&&A[_J]===0)return TQ.destroy(Q,new uK("reset")),VX.ERROR.PAUSED;else if(A[oT]==null||A[oT]===1)setImmediate(A[pF]);else A[pF]();return 0}}function G2Q(A){let{socket:Q,timeoutType:B,client:Y,paused:J}=A.deref();if(B===cK){if(!Q[iF]||Q.writableNeedDrain||Y[_J]>1)wQ(!J,"cannot be paused while waiting for headers"),TQ.destroy(Q,new hO0)}else if(B===tT){if(!J)TQ.destroy(Q,new fO0)}else if(B===Zr)wQ(Y[_J]===0&&Y[eT]),TQ.destroy(Q,new uK("socket idle timeout"))}function YP0(A,Q){if(A[dK]=Q,!Gr)Gr=QP0();if(Q.errored)throw Q.errored;if(Q.destroyed)throw new Yq("destroyed");return Q[Qq]=!1,Q[iF]=!1,Q[a9]=!1,Q[Jq]=!1,Q[s0]=new E2Q(A,Q,Gr),TQ.addListener(Q,"error",JP0),TQ.addListener(Q,"readable",CP0),TQ.addListener(Q,"end",XP0),TQ.addListener(Q,"close",GP0),Q[Wr]=!1,Q.on("close",FP0),{version:"h1",defaultPipelining:1,write(B){return $P0(A,B)},resume(){WP0(A)},destroy(B,Y){if(Q[Wr])queueMicrotask(Y);else Q.on("close",Y),Q.destroy(B)},get destroyed(){return Q.destroyed},busy(B){if(Q[iF]||Q[a9]||Q[Jq])return!0;if(B){if(A[_J]>0&&!B.idempotent)return!0;if(A[_J]>0&&(B.upgrade||B.method==="CONNECT"))return!0;if(A[_J]>0&&TQ.bodyLength(B.body)!==0&&(TQ.isStream(B.body)||TQ.isAsyncIterable(B.body)||TQ.isFormDataLike(B.body)))return!0}return!1}}}function JP0(A){wQ(A.code!=="ERR_TLS_CERT_ALTNAME_INVALID");let Q=this[s0];if(A.code==="ECONNRESET"&&Q.statusCode&&!Q.shouldKeepAlive){Q.onMessageComplete();return}this[a5]=A,this[$r][tO0](A)}function CP0(){this[s0]?.readMore()}function XP0(){let A=this[s0];if(A.statusCode&&!A.shouldKeepAlive){A.onMessageComplete();return}TQ.destroy(this,new Yq("other side closed",TQ.getSocketInfo(this)))}function GP0(){let A=this[s0];if(A){if(!this[a5]&&A.statusCode&&!A.shouldKeepAlive)A.onMessageComplete();this[s0].destroy(),this[s0]=null}let Q=this[a5]||new Yq("closed",TQ.getSocketInfo(this)),B=this[$r];if(B[dK]=null,B[U2Q]=null,B.destroyed){wQ(B[uO0]===0);let Y=B[X1].splice(B[r5]);for(let J=0;J0&&Q.code!=="UND_ERR_INFO"){let Y=B[X1][B[r5]];B[X1][B[r5]++]=null,TQ.errorRequest(B,Y,Q)}B[lO0]=B[r5],wQ(B[_J]===0),B.emit("disconnect",B[$2Q],[B],Q),B[pF]()}function FP0(){this[Wr]=!0}function WP0(A){let Q=A[dK];if(Q&&!Q.destroyed){if(A[C2Q]===0){if(!Q[Qq]&&Q.unref)Q.unref(),Q[Qq]=!0}else if(Q[Qq]&&Q.ref)Q.ref(),Q[Qq]=!1;if(A[C2Q]===0){if(Q[s0].timeoutType!==Zr)Q[s0].setTimeout(A[eT],Zr)}else if(A[_J]>0&&Q[s0].statusCode<200){if(Q[s0].timeoutType!==cK){let B=A[X1][A[r5]],Y=B.headersTimeout!=null?B.headersTimeout:A[sO0];Q[s0].setTimeout(Y,cK)}}}}function ZP0(A){return A!=="GET"&&A!=="HEAD"&&A!=="OPTIONS"&&A!=="TRACE"&&A!=="CONNECT"}function $P0(A,Q){let{method:B,path:Y,host:J,upgrade:C,blocking:X,reset:G}=Q,{body:F,headers:W,contentLength:Z}=Q,U=B==="PUT"||B==="POST"||B==="PATCH"||B==="QUERY"||B==="PROPFIND"||B==="PROPPATCH";if(TQ.isFormDataLike(F)){if(!Xr)Xr=mK().extractBody;let[V,H]=Xr(F);if(Q.contentType==null)W.push("content-type",H);F=V.stream,Z=V.length}else if(TQ.isBlobLike(F)&&Q.contentType==null&&F.type)W.push("content-type",F.type);if(F&&typeof F.read==="function")F.read(0);let $=TQ.bodyLength(F);if(Z=$??Z,Z===null)Z=Q.contentLength;if(Z===0&&!U)Z=null;if(ZP0(B)&&Z>0&&Q.contentLength!==null&&Q.contentLength!==Z){if(A[Fr])return TQ.errorRequest(A,Q,new S$),!1;process.emitWarning(new S$)}let E=A[dK],K=(V)=>{if(Q.aborted||Q.completed)return;TQ.errorRequest(A,Q,V||new Z2Q),TQ.destroy(F),TQ.destroy(E,new uK("aborted"))};try{Q.onConnect(K)}catch(V){TQ.errorRequest(A,Q,V)}if(Q.aborted)return!1;if(B==="HEAD")E[a9]=!0;if(C||B==="CONNECT")E[a9]=!0;if(G!=null)E[a9]=G;if(A[X2Q]&&E[aO0]++>=A[X2Q])E[a9]=!0;if(X)E[Jq]=!0;let I=`${B} ${Y} HTTP/1.1\r +`);if($.push(D,H,E),typeof H.size==="number")C+=D.byteLength+H.size+E.byteLength;else K=!0}let I=tT.encode(`--${F}--\r +`);if($.push(I),C+=I.byteLength,K)C=null;J=A,Y=async function*(){for(let V of $)if(V.stream)yield*V.stream();else yield V},X=`multipart/form-data; boundary=${F}`}else if(V6.is.Blob(A)){if(J=A,C=A.size,A.type)X=A.type}else if(typeof A[Symbol.asyncIterator]==="function"){if(Q)throw TypeError("keepalive");if(eT.isDisturbed(A)||A.locked)throw TypeError("Response body object should not be disturbed or locked");B=V6.is.ReadableStream(A)?A:yO0(A)}if(typeof J==="string"||eT.isBuffer(J))C=Buffer.byteLength(J);if(Y!=null){let F;B=new ReadableStream({async start(){F=Y(A)[Symbol.asyncIterator]()},async pull(W){let{value:Z,done:U}=await F.next();if(U)queueMicrotask(()=>{W.close(),W.byobRequest?.respond(0)});else if(!I2Q(B)){let $=new Uint8Array(Z);if($.byteLength)W.enqueue($)}return W.desiredSize>0},async cancel(W){await F.return()},type:"bytes"})}return[{stream:B,source:J,length:C},X]}function iO0(A,Q=!1){if(V6.is.ReadableStream(A))Vr(!eT.isDisturbed(A),"The body has already been consumed."),Vr(!A.locked,"The stream is locked.");return H2Q(A,Q)}function nO0(A){let{0:Q,1:B}=A.stream.tee();return A.stream=Q,{stream:B,length:A.length,source:A.source}}function sO0(A,Q){return{blob(){return cK(this,(Y)=>{let J=K2Q(Q(this));if(J===null)J="";else if(J)J=uO0(J);return new Blob([Y],{type:J})},A,Q)},arrayBuffer(){return cK(this,(Y)=>{return new Uint8Array(Y).buffer},A,Q)},text(){return cK(this,V2Q,A,Q)},json(){return cK(this,aO0,A,Q)},formData(){return cK(this,(Y)=>{let J=K2Q(Q(this));if(J!==null)switch(J.essence){case"multipart/form-data":{let C=dO0(Y,J),X=new E2Q;return fO0(X,C),X}case"application/x-www-form-urlencoded":{let C=new URLSearchParams(Y.toString()),X=new E2Q;for(let[G,F]of C)X.append(G,F);return X}}throw TypeError('Content-Type was not one of "multipart/form-data" or "application/x-www-form-urlencoded".')},A,Q)},bytes(){return cK(this,(Y)=>{return new Uint8Array(Y)},A,Q)}}}function rO0(A,Q){Object.assign(A.prototype,sO0(A,Q))}function cK(A,Q,B,Y){try{V6.brandCheck(A,B)}catch(F){return Promise.reject(F)}let J=Y(A);if(D2Q(J))return Promise.reject(TypeError("Body is unusable: Body has already been read"));if(J.aborted)return Promise.reject(new DOMException("The operation was aborted.","AbortError"));let C=cO0(),X=C.reject,G=(F)=>{try{C.resolve(Q(F))}catch(W){X(W)}};if(J.body==null)return G(Buffer.allocUnsafe(0)),C.promise;return gO0(J.body,G,X),C.promise}function D2Q(A){let Q=A.body;return Q!=null&&(Q.stream.locked||eT.isDisturbed(Q.stream))}function aO0(A){return JSON.parse(V2Q(A))}function K2Q(A){let Q=A.headersList,B=xO0(Q);if(B==="failure")return null;return B}N2Q.exports={extractBody:H2Q,safelyExtractBody:iO0,cloneBody:nO0,mixinBody:rO0,streamRegistry:pO0,bodyUnusable:D2Q}});var k2Q=R((QnY,S2Q)=>{var wQ=u("node:assert"),TQ=lQ(),{channels:L2Q}=O$(),Hr=ms(),{RequestContentLengthMismatchError:y$,ResponseContentLengthMismatchError:oO0,RequestAbortedError:j2Q,HeadersTimeoutError:tO0,HeadersOverflowError:eO0,SocketError:Gq,InformationalError:pK,BodyTimeoutError:AP0,HTTPParserError:QP0,ResponseExceededMaxSizeError:BP0}=QB(),{kUrl:O2Q,kReset:a9,kClient:zr,kParser:s0,kBlocking:Fq,kRunning:vJ,kPending:YP0,kSize:q2Q,kWriting:nF,kQueue:G1,kNoRef:Cq,kKeepAliveDefaultTimeout:JP0,kHostHeader:CP0,kPendingIdx:XP0,kRunningIdx:a5,kError:o5,kPipelining:BS,kSocket:iK,kKeepAliveTimeoutValue:JS,kMaxHeadersSize:GP0,kKeepAliveMaxTimeout:FP0,kKeepAliveTimeoutThreshold:WP0,kHeadersTimeout:ZP0,kBodyTimeout:$P0,kStrictContentLength:Lr,kMaxRequests:M2Q,kCounter:UP0,kMaxResponseSize:EP0,kOnError:KP0,kResume:iF,kHTTPContext:P2Q,kClosed:qr}=Q0(),I6=qzQ(),VP0=Buffer.alloc(0),AS=Buffer[Symbol.species],IP0=TQ.removeAllListeners,Dr;function HP0(){let A=process.env.JEST_WORKER_ID?Jr():void 0,Q,B=process.arch!=="ppc64";if(process.env.UNDICI_NO_WASM_SIMD==="1")B=!0;else if(process.env.UNDICI_NO_WASM_SIMD==="0")B=!1;if(B)try{Q=new WebAssembly.Module(RzQ())}catch{}if(!Q)Q=new WebAssembly.Module(A||Jr());return new WebAssembly.Instance(Q,{env:{wasm_on_url:(Y,J,C)=>{return 0},wasm_on_status:(Y,J,C)=>{wQ(yY.ptr===Y);let X=J-D6+H6.byteOffset;return yY.onStatus(new AS(H6.buffer,X,C))},wasm_on_message_begin:(Y)=>{return wQ(yY.ptr===Y),yY.onMessageBegin()},wasm_on_header_field:(Y,J,C)=>{wQ(yY.ptr===Y);let X=J-D6+H6.byteOffset;return yY.onHeaderField(new AS(H6.buffer,X,C))},wasm_on_header_value:(Y,J,C)=>{wQ(yY.ptr===Y);let X=J-D6+H6.byteOffset;return yY.onHeaderValue(new AS(H6.buffer,X,C))},wasm_on_headers_complete:(Y,J,C,X)=>{return wQ(yY.ptr===Y),yY.onHeadersComplete(J,C===1,X===1)},wasm_on_body:(Y,J,C)=>{wQ(yY.ptr===Y);let X=J-D6+H6.byteOffset;return yY.onBody(new AS(H6.buffer,X,C))},wasm_on_message_complete:(Y)=>{return wQ(yY.ptr===Y),yY.onMessageComplete()}}})}var Nr=null,yY=null,H6=null,QS=0,D6=null,DP0=0,Xq=1,nK=2|Xq,YS=4|Xq,Mr=8|DP0;class T2Q{constructor(A,Q,{exports:B}){this.llhttp=B,this.ptr=this.llhttp.llhttp_alloc(I6.TYPE.RESPONSE),this.client=A,this.socket=Q,this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.statusCode=0,this.statusText="",this.upgrade=!1,this.headers=[],this.headersSize=0,this.headersMaxSize=A[GP0],this.shouldKeepAlive=!1,this.paused=!1,this.resume=this.resume.bind(this),this.bytesRead=0,this.keepAlive="",this.contentLength="",this.connection="",this.maxResponseSize=A[EP0]}setTimeout(A,Q){if(A!==this.timeoutValue||Q&Xq^this.timeoutType&Xq){if(this.timeout)Hr.clearTimeout(this.timeout),this.timeout=null;if(A)if(Q&Xq)this.timeout=Hr.setFastTimeout(z2Q,A,new WeakRef(this));else this.timeout=setTimeout(z2Q,A,new WeakRef(this)),this.timeout?.unref();this.timeoutValue=A}else if(this.timeout){if(this.timeout.refresh)this.timeout.refresh()}this.timeoutType=Q}resume(){if(this.socket.destroyed||!this.paused)return;if(wQ(this.ptr!=null),wQ(yY===null),this.llhttp.llhttp_resume(this.ptr),wQ(this.timeoutType===YS),this.timeout){if(this.timeout.refresh)this.timeout.refresh()}this.paused=!1,this.execute(this.socket.read()||VP0),this.readMore()}readMore(){while(!this.paused&&this.ptr){let A=this.socket.read();if(A===null)break;this.execute(A)}}execute(A){wQ(yY===null),wQ(this.ptr!=null),wQ(!this.paused);let{socket:Q,llhttp:B}=this;if(A.length>QS){if(D6)B.free(D6);QS=Math.ceil(A.length/4096)*4096,D6=B.malloc(QS)}new Uint8Array(B.memory.buffer,D6,QS).set(A);try{let Y;try{H6=A,yY=this,Y=B.llhttp_execute(this.ptr,D6,A.length)}finally{yY=null,H6=null}if(Y!==I6.ERROR.OK){let J=A.subarray(B.llhttp_get_error_pos(this.ptr)-D6);if(Y===I6.ERROR.PAUSED_UPGRADE)this.onUpgrade(J);else if(Y===I6.ERROR.PAUSED)this.paused=!0,Q.unshift(J);else{let C=B.llhttp_get_error_reason(this.ptr),X="";if(C){let G=new Uint8Array(B.memory.buffer,C).indexOf(0);X="Response does not match the HTTP/1.1 protocol ("+Buffer.from(B.memory.buffer,C,G).toString()+")"}throw new QP0(X,I6.ERROR[Y],J)}}}catch(Y){TQ.destroy(Q,Y)}}destroy(){wQ(yY===null),wQ(this.ptr!=null),this.llhttp.llhttp_free(this.ptr),this.ptr=null,this.timeout&&Hr.clearTimeout(this.timeout),this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.paused=!1}onStatus(A){return this.statusText=A.toString(),0}onMessageBegin(){let{socket:A,client:Q}=this;if(A.destroyed)return-1;let B=Q[G1][Q[a5]];if(!B)return-1;return B.onResponseStarted(),0}onHeaderField(A){let Q=this.headers.length;if((Q&1)===0)this.headers.push(A);else this.headers[Q-1]=Buffer.concat([this.headers[Q-1],A]);return this.trackHeader(A.length),0}onHeaderValue(A){let Q=this.headers.length;if((Q&1)===1)this.headers.push(A),Q+=1;else this.headers[Q-1]=Buffer.concat([this.headers[Q-1],A]);let B=this.headers[Q-2];if(B.length===10){let Y=TQ.bufferToLowerCasedHeaderName(B);if(Y==="keep-alive")this.keepAlive+=A.toString();else if(Y==="connection")this.connection+=A.toString()}else if(B.length===14&&TQ.bufferToLowerCasedHeaderName(B)==="content-length")this.contentLength+=A.toString();return this.trackHeader(A.length),0}trackHeader(A){if(this.headersSize+=A,this.headersSize>=this.headersMaxSize)TQ.destroy(this.socket,new eO0)}onUpgrade(A){let{upgrade:Q,client:B,socket:Y,headers:J,statusCode:C}=this;wQ(Q),wQ(B[iK]===Y),wQ(!Y.destroyed),wQ(!this.paused),wQ((J.length&1)===0);let X=B[G1][B[a5]];wQ(X),wQ(X.upgrade||X.method==="CONNECT"),this.statusCode=0,this.statusText="",this.shouldKeepAlive=!1,this.headers=[],this.headersSize=0,Y.unshift(A),Y[s0].destroy(),Y[s0]=null,Y[zr]=null,Y[o5]=null,IP0(Y),B[iK]=null,B[P2Q]=null,B[G1][B[a5]++]=null,B.emit("disconnect",B[O2Q],[B],new pK("upgrade"));try{X.onUpgrade(C,J,Y)}catch(G){TQ.destroy(Y,G)}B[iF]()}onHeadersComplete(A,Q,B){let{client:Y,socket:J,headers:C,statusText:X}=this;if(J.destroyed)return-1;let G=Y[G1][Y[a5]];if(!G)return-1;if(wQ(!this.upgrade),wQ(this.statusCode<200),A===100)return TQ.destroy(J,new Gq("bad response",TQ.getSocketInfo(J))),-1;if(Q&&!G.upgrade)return TQ.destroy(J,new Gq("bad upgrade",TQ.getSocketInfo(J))),-1;if(wQ(this.timeoutType===nK),this.statusCode=A,this.shouldKeepAlive=B||G.method==="HEAD"&&!J[a9]&&this.connection.toLowerCase()==="keep-alive",this.statusCode>=200){let W=G.bodyTimeout!=null?G.bodyTimeout:Y[$P0];this.setTimeout(W,YS)}else if(this.timeout){if(this.timeout.refresh)this.timeout.refresh()}if(G.method==="CONNECT")return wQ(Y[vJ]===1),this.upgrade=!0,2;if(Q)return wQ(Y[vJ]===1),this.upgrade=!0,2;if(wQ((this.headers.length&1)===0),this.headers=[],this.headersSize=0,this.shouldKeepAlive&&Y[BS]){let W=this.keepAlive?TQ.parseKeepAliveTimeout(this.keepAlive):null;if(W!=null){let Z=Math.min(W-Y[WP0],Y[FP0]);if(Z<=0)J[a9]=!0;else Y[JS]=Z}else Y[JS]=Y[JP0]}else J[a9]=!0;let F=G.onHeaders(A,C,this.resume,X)===!1;if(G.aborted)return-1;if(G.method==="HEAD")return 1;if(A<200)return 1;if(J[Fq])J[Fq]=!1,Y[iF]();return F?I6.ERROR.PAUSED:0}onBody(A){let{client:Q,socket:B,statusCode:Y,maxResponseSize:J}=this;if(B.destroyed)return-1;let C=Q[G1][Q[a5]];if(wQ(C),wQ(this.timeoutType===YS),this.timeout){if(this.timeout.refresh)this.timeout.refresh()}if(wQ(Y>=200),J>-1&&this.bytesRead+A.length>J)return TQ.destroy(B,new BP0),-1;if(this.bytesRead+=A.length,C.onData(A)===!1)return I6.ERROR.PAUSED;return 0}onMessageComplete(){let{client:A,socket:Q,statusCode:B,upgrade:Y,headers:J,contentLength:C,bytesRead:X,shouldKeepAlive:G}=this;if(Q.destroyed&&(!B||G))return-1;if(Y)return 0;wQ(B>=100),wQ((this.headers.length&1)===0);let F=A[G1][A[a5]];if(wQ(F),this.statusCode=0,this.statusText="",this.bytesRead=0,this.contentLength="",this.keepAlive="",this.connection="",this.headers=[],this.headersSize=0,B<200)return 0;if(F.method!=="HEAD"&&C&&X!==parseInt(C,10))return TQ.destroy(Q,new oO0),-1;if(F.onComplete(J),A[G1][A[a5]++]=null,Q[nF])return wQ(A[vJ]===0),TQ.destroy(Q,new pK("reset")),I6.ERROR.PAUSED;else if(!G)return TQ.destroy(Q,new pK("reset")),I6.ERROR.PAUSED;else if(Q[a9]&&A[vJ]===0)return TQ.destroy(Q,new pK("reset")),I6.ERROR.PAUSED;else if(A[BS]==null||A[BS]===1)setImmediate(A[iF]);else A[iF]();return 0}}function z2Q(A){let{socket:Q,timeoutType:B,client:Y,paused:J}=A.deref();if(B===nK){if(!Q[nF]||Q.writableNeedDrain||Y[vJ]>1)wQ(!J,"cannot be paused while waiting for headers"),TQ.destroy(Q,new tO0)}else if(B===YS){if(!J)TQ.destroy(Q,new AP0)}else if(B===Mr)wQ(Y[vJ]===0&&Y[JS]),TQ.destroy(Q,new pK("socket idle timeout"))}function NP0(A,Q){if(A[iK]=Q,!Nr)Nr=HP0();if(Q.errored)throw Q.errored;if(Q.destroyed)throw new Gq("destroyed");return Q[Cq]=!1,Q[nF]=!1,Q[a9]=!1,Q[Fq]=!1,Q[s0]=new T2Q(A,Q,Nr),TQ.addListener(Q,"error",LP0),TQ.addListener(Q,"readable",qP0),TQ.addListener(Q,"end",MP0),TQ.addListener(Q,"close",zP0),Q[qr]=!1,Q.on("close",RP0),{version:"h1",defaultPipelining:1,write(B){return OP0(A,B)},resume(){wP0(A)},destroy(B,Y){if(Q[qr])queueMicrotask(Y);else Q.on("close",Y),Q.destroy(B)},get destroyed(){return Q.destroyed},busy(B){if(Q[nF]||Q[a9]||Q[Fq])return!0;if(B){if(A[vJ]>0&&!B.idempotent)return!0;if(A[vJ]>0&&(B.upgrade||B.method==="CONNECT"))return!0;if(A[vJ]>0&&TQ.bodyLength(B.body)!==0&&(TQ.isStream(B.body)||TQ.isAsyncIterable(B.body)||TQ.isFormDataLike(B.body)))return!0}return!1}}}function LP0(A){wQ(A.code!=="ERR_TLS_CERT_ALTNAME_INVALID");let Q=this[s0];if(A.code==="ECONNRESET"&&Q.statusCode&&!Q.shouldKeepAlive){Q.onMessageComplete();return}this[o5]=A,this[zr][KP0](A)}function qP0(){this[s0]?.readMore()}function MP0(){let A=this[s0];if(A.statusCode&&!A.shouldKeepAlive){A.onMessageComplete();return}TQ.destroy(this,new Gq("other side closed",TQ.getSocketInfo(this)))}function zP0(){let A=this[s0];if(A){if(!this[o5]&&A.statusCode&&!A.shouldKeepAlive)A.onMessageComplete();this[s0].destroy(),this[s0]=null}let Q=this[o5]||new Gq("closed",TQ.getSocketInfo(this)),B=this[zr];if(B[iK]=null,B[P2Q]=null,B.destroyed){wQ(B[YP0]===0);let Y=B[G1].splice(B[a5]);for(let J=0;J0&&Q.code!=="UND_ERR_INFO"){let Y=B[G1][B[a5]];B[G1][B[a5]++]=null,TQ.errorRequest(B,Y,Q)}B[XP0]=B[a5],wQ(B[vJ]===0),B.emit("disconnect",B[O2Q],[B],Q),B[iF]()}function RP0(){this[qr]=!0}function wP0(A){let Q=A[iK];if(Q&&!Q.destroyed){if(A[q2Q]===0){if(!Q[Cq]&&Q.unref)Q.unref(),Q[Cq]=!0}else if(Q[Cq]&&Q.ref)Q.ref(),Q[Cq]=!1;if(A[q2Q]===0){if(Q[s0].timeoutType!==Mr)Q[s0].setTimeout(A[JS],Mr)}else if(A[vJ]>0&&Q[s0].statusCode<200){if(Q[s0].timeoutType!==nK){let B=A[G1][A[a5]],Y=B.headersTimeout!=null?B.headersTimeout:A[ZP0];Q[s0].setTimeout(Y,nK)}}}}function jP0(A){return A!=="GET"&&A!=="HEAD"&&A!=="OPTIONS"&&A!=="TRACE"&&A!=="CONNECT"}function OP0(A,Q){let{method:B,path:Y,host:J,upgrade:C,blocking:X,reset:G}=Q,{body:F,headers:W,contentLength:Z}=Q,U=B==="PUT"||B==="POST"||B==="PATCH"||B==="QUERY"||B==="PROPFIND"||B==="PROPPATCH";if(TQ.isFormDataLike(F)){if(!Dr)Dr=lK().extractBody;let[V,H]=Dr(F);if(Q.contentType==null)W.push("content-type",H);F=V.stream,Z=V.length}else if(TQ.isBlobLike(F)&&Q.contentType==null&&F.type)W.push("content-type",F.type);if(F&&typeof F.read==="function")F.read(0);let $=TQ.bodyLength(F);if(Z=$??Z,Z===null)Z=Q.contentLength;if(Z===0&&!U)Z=null;if(jP0(B)&&Z>0&&Q.contentLength!==null&&Q.contentLength!==Z){if(A[Lr])return TQ.errorRequest(A,Q,new y$),!1;process.emitWarning(new y$)}let E=A[iK],K=(V)=>{if(Q.aborted||Q.completed)return;TQ.errorRequest(A,Q,V||new j2Q),TQ.destroy(F),TQ.destroy(E,new pK("aborted"))};try{Q.onConnect(K)}catch(V){TQ.errorRequest(A,Q,V)}if(Q.aborted)return!1;if(B==="HEAD")E[a9]=!0;if(C||B==="CONNECT")E[a9]=!0;if(G!=null)E[a9]=G;if(A[M2Q]&&E[UP0]++>=A[M2Q])E[a9]=!0;if(X)E[Fq]=!0;let I=`${B} ${Y} HTTP/1.1\r `;if(typeof J==="string")I+=`host: ${J}\r -`;else I+=A[cO0];if(C)I+=`connection: upgrade\r +`;else I+=A[CP0];if(C)I+=`connection: upgrade\r upgrade: ${C}\r -`;else if(A[oT]&&!E[a9])I+=`connection: keep-alive\r +`;else if(A[BS]&&!E[a9])I+=`connection: keep-alive\r `;else I+=`connection: close\r `;if(Array.isArray(W))for(let V=0;V{Q.removeListener("error",E)}),!F){let K=new Z2Q;queueMicrotask(()=>E(K))}},E=function(K){if(F)return;if(F=!0,wQ(J.destroyed||J[iF]&&B[_J]<=1),J.off("drain",U).off("error",E),Q.removeListener("data",Z).removeListener("end",E).removeListener("close",$),!K)try{W.end()}catch(I){K=I}if(W.destroy(K),K&&(K.code!=="UND_ERR_INFO"||K.message!=="reset"))TQ.destroy(Q,K);else TQ.destroy(Q)};if(Q.on("data",Z).on("end",E).on("error",E).on("close",$),Q.resume)Q.resume();if(J.on("drain",U).on("error",E),Q.errorEmitted??Q.errored)setImmediate(E,Q.errored);else if(Q.endEmitted??Q.readableEnded)setImmediate(E,null);if(Q.closeEmitted??Q.closed)setImmediate($)}function F2Q(A,Q,B,Y,J,C,X,G){try{if(!Q)if(C===0)J.write(`${X}content-length: 0\r +`}if(L2Q.sendHeaders.hasSubscribers)L2Q.sendHeaders.publish({request:Q,headers:I,socket:E});if(!F||$===0)R2Q(K,null,A,Q,E,Z,I,U);else if(TQ.isBuffer(F))R2Q(K,F,A,Q,E,Z,I,U);else if(TQ.isBlobLike(F))if(typeof F.stream==="function")w2Q(K,F.stream(),A,Q,E,Z,I,U);else TP0(K,F,A,Q,E,Z,I,U);else if(TQ.isStream(F))PP0(K,F,A,Q,E,Z,I,U);else if(TQ.isIterable(F))w2Q(K,F,A,Q,E,Z,I,U);else wQ(!1);return!0}function PP0(A,Q,B,Y,J,C,X,G){wQ(C!==0||B[vJ]===0,"stream body cannot be pipelined");let F=!1,W=new Rr({abort:A,socket:J,request:Y,contentLength:C,client:B,expectsPayload:G,header:X}),Z=function(K){if(F)return;try{if(!W.write(K)&&this.pause)this.pause()}catch(I){TQ.destroy(this,I)}},U=function(){if(F)return;if(Q.resume)Q.resume()},$=function(){if(queueMicrotask(()=>{Q.removeListener("error",E)}),!F){let K=new j2Q;queueMicrotask(()=>E(K))}},E=function(K){if(F)return;if(F=!0,wQ(J.destroyed||J[nF]&&B[vJ]<=1),J.off("drain",U).off("error",E),Q.removeListener("data",Z).removeListener("end",E).removeListener("close",$),!K)try{W.end()}catch(I){K=I}if(W.destroy(K),K&&(K.code!=="UND_ERR_INFO"||K.message!=="reset"))TQ.destroy(Q,K);else TQ.destroy(Q)};if(Q.on("data",Z).on("end",E).on("error",E).on("close",$),Q.resume)Q.resume();if(J.on("drain",U).on("error",E),Q.errorEmitted??Q.errored)setImmediate(E,Q.errored);else if(Q.endEmitted??Q.readableEnded)setImmediate(E,null);if(Q.closeEmitted??Q.closed)setImmediate($)}function R2Q(A,Q,B,Y,J,C,X,G){try{if(!Q)if(C===0)J.write(`${X}content-length: 0\r \r `,"latin1");else wQ(C===null,"no body must not have content length"),J.write(`${X}\r `,"latin1");else if(TQ.isBuffer(Q)){if(wQ(C===Q.byteLength,"buffer body must have content length"),J.cork(),J.write(`${X}content-length: ${C}\r \r -`,"latin1"),J.write(Q),J.uncork(),Y.onBodySent(Q),!G&&Y.reset!==!1)J[a9]=!0}Y.onRequestSent(),B[pF]()}catch(F){A(F)}}async function EP0(A,Q,B,Y,J,C,X,G){wQ(C===Q.size,"blob body must have content length");try{if(C!=null&&C!==Q.size)throw new S$;let F=Buffer.from(await Q.arrayBuffer());if(J.cork(),J.write(`${X}content-length: ${C}\r +`,"latin1"),J.write(Q),J.uncork(),Y.onBodySent(Q),!G&&Y.reset!==!1)J[a9]=!0}Y.onRequestSent(),B[iF]()}catch(F){A(F)}}async function TP0(A,Q,B,Y,J,C,X,G){wQ(C===Q.size,"blob body must have content length");try{if(C!=null&&C!==Q.size)throw new y$;let F=Buffer.from(await Q.arrayBuffer());if(J.cork(),J.write(`${X}content-length: ${C}\r \r -`,"latin1"),J.write(F),J.uncork(),Y.onBodySent(F),Y.onRequestSent(),!G&&Y.reset!==!1)J[a9]=!0;B[pF]()}catch(F){A(F)}}async function W2Q(A,Q,B,Y,J,C,X,G){wQ(C!==0||B[_J]===0,"iterator body cannot be pipelined");let F=null;function W(){if(F){let $=F;F=null,$()}}let Z=()=>new Promise(($,E)=>{if(wQ(F===null),J[a5])E(J[a5]);else F=$});J.on("close",W).on("drain",W);let U=new Ur({abort:A,socket:J,request:Y,contentLength:C,client:B,expectsPayload:G,header:X});try{for await(let $ of Q){if(J[a5])throw J[a5];if(!U.write($))await Z()}U.end()}catch($){U.destroy($)}finally{J.off("close",W).off("drain",W)}}class Ur{constructor({abort:A,socket:Q,request:B,contentLength:Y,client:J,expectsPayload:C,header:X}){this.socket=Q,this.request=B,this.contentLength=Y,this.client=J,this.bytesWritten=0,this.expectsPayload=C,this.header=X,this.abort=A,Q[iF]=!0}write(A){let{socket:Q,request:B,contentLength:Y,client:J,bytesWritten:C,expectsPayload:X,header:G}=this;if(Q[a5])throw Q[a5];if(Q.destroyed)return!1;let F=Buffer.byteLength(A);if(!F)return!0;if(Y!==null&&C+F>Y){if(J[Fr])throw new S$;process.emitWarning(new S$)}if(Q.cork(),C===0){if(!X&&B.reset!==!1)Q[a9]=!0;if(Y===null)Q.write(`${G}transfer-encoding: chunked\r +`,"latin1"),J.write(F),J.uncork(),Y.onBodySent(F),Y.onRequestSent(),!G&&Y.reset!==!1)J[a9]=!0;B[iF]()}catch(F){A(F)}}async function w2Q(A,Q,B,Y,J,C,X,G){wQ(C!==0||B[vJ]===0,"iterator body cannot be pipelined");let F=null;function W(){if(F){let $=F;F=null,$()}}let Z=()=>new Promise(($,E)=>{if(wQ(F===null),J[o5])E(J[o5]);else F=$});J.on("close",W).on("drain",W);let U=new Rr({abort:A,socket:J,request:Y,contentLength:C,client:B,expectsPayload:G,header:X});try{for await(let $ of Q){if(J[o5])throw J[o5];if(!U.write($))await Z()}U.end()}catch($){U.destroy($)}finally{J.off("close",W).off("drain",W)}}class Rr{constructor({abort:A,socket:Q,request:B,contentLength:Y,client:J,expectsPayload:C,header:X}){this.socket=Q,this.request=B,this.contentLength=Y,this.client=J,this.bytesWritten=0,this.expectsPayload=C,this.header=X,this.abort=A,Q[nF]=!0}write(A){let{socket:Q,request:B,contentLength:Y,client:J,bytesWritten:C,expectsPayload:X,header:G}=this;if(Q[o5])throw Q[o5];if(Q.destroyed)return!1;let F=Buffer.byteLength(A);if(!F)return!0;if(Y!==null&&C+F>Y){if(J[Lr])throw new y$;process.emitWarning(new y$)}if(Q.cork(),C===0){if(!X&&B.reset!==!1)Q[a9]=!0;if(Y===null)Q.write(`${G}transfer-encoding: chunked\r `,"latin1");else Q.write(`${G}content-length: ${Y}\r \r `,"latin1")}if(Y===null)Q.write(`\r ${F.toString(16)}\r -`,"latin1");this.bytesWritten+=F;let W=Q.write(A);if(Q.uncork(),B.onBodySent(A),!W){if(Q[s0].timeout&&Q[s0].timeoutType===cK){if(Q[s0].timeout.refresh)Q[s0].timeout.refresh()}}return W}end(){let{socket:A,contentLength:Q,client:B,bytesWritten:Y,expectsPayload:J,header:C,request:X}=this;if(X.onRequestSent(),A[iF]=!1,A[a5])throw A[a5];if(A.destroyed)return;if(Y===0)if(J)A.write(`${C}content-length: 0\r +`,"latin1");this.bytesWritten+=F;let W=Q.write(A);if(Q.uncork(),B.onBodySent(A),!W){if(Q[s0].timeout&&Q[s0].timeoutType===nK){if(Q[s0].timeout.refresh)Q[s0].timeout.refresh()}}return W}end(){let{socket:A,contentLength:Q,client:B,bytesWritten:Y,expectsPayload:J,header:C,request:X}=this;if(X.onRequestSent(),A[nF]=!1,A[o5])throw A[o5];if(A.destroyed)return;if(Y===0)if(J)A.write(`${C}content-length: 0\r \r `,"latin1");else A.write(`${C}\r `,"latin1");else if(Q===null)A.write(`\r 0\r \r -`,"latin1");if(Q!==null&&Y!==Q)if(B[Fr])throw new S$;else process.emitWarning(new S$);if(A[s0].timeout&&A[s0].timeoutType===cK){if(A[s0].timeout.refresh)A[s0].timeout.refresh()}B[pF]()}destroy(A){let{socket:Q,client:B,abort:Y}=this;if(Q[iF]=!1,A)wQ(B[_J]<=1,"pipeline should only contain this request"),Y(A)}}K2Q.exports=YP0});var M2Q=R((HiY,q2Q)=>{var t5=u("node:assert"),{pipeline:KP0}=u("node:stream"),OB=lQ(),{RequestContentLengthMismatchError:Er,RequestAbortedError:VP0,SocketError:Xq,InformationalError:AS}=QB(),{kUrl:Cq,kReset:BS,kClient:k$,kRunning:YS,kPending:IP0,kQueue:nF,kPendingIdx:Vr,kRunningIdx:G1,kError:F1,kSocket:$Y,kStrictContentLength:HP0,kOnError:JS,kMaxConcurrentStreams:L2Q,kHTTP2Session:DX,kResume:w6,kSize:DP0,kHTTPContext:Ir,kClosed:Kr,kBodyTimeout:NP0}=Q0(),{channels:I2Q}=z$(),o5=Symbol("open streams"),H2Q,QS;try{QS=u("node:http2")}catch{QS={constants:{}}}var{constants:{HTTP2_HEADER_AUTHORITY:LP0,HTTP2_HEADER_METHOD:qP0,HTTP2_HEADER_PATH:MP0,HTTP2_HEADER_SCHEME:zP0,HTTP2_HEADER_CONTENT_LENGTH:RP0,HTTP2_HEADER_EXPECT:wP0,HTTP2_HEADER_STATUS:jP0}}=QS;function OP0(A){let Q=[];for(let[B,Y]of Object.entries(A))if(Array.isArray(Y))for(let J of Y)Q.push(Buffer.from(B),Buffer.from(J));else Q.push(Buffer.from(B),Buffer.from(Y));return Q}function PP0(A,Q){A[$Y]=Q;let B=QS.connect(A[Cq],{createConnection:()=>Q,peerMaxConcurrentStreams:A[L2Q],settings:{enablePush:!1}});return B[o5]=0,B[k$]=A,B[$Y]=Q,B[DX]=null,OB.addListener(B,"error",SP0),OB.addListener(B,"frameError",kP0),OB.addListener(B,"end",_P0),OB.addListener(B,"goaway",vP0),OB.addListener(B,"close",yP0),B.unref(),A[DX]=B,Q[DX]=B,OB.addListener(Q,"error",hP0),OB.addListener(Q,"end",xP0),OB.addListener(Q,"close",gP0),Q[Kr]=!1,Q.on("close",fP0),{version:"h2",defaultPipelining:1/0,write(Y){return mP0(A,Y)},resume(){TP0(A)},destroy(Y,J){if(Q[Kr])queueMicrotask(J);else Q.destroy(Y).on("close",J)},get destroyed(){return Q.destroyed},busy(){return!1}}}function TP0(A){let Q=A[$Y];if(Q?.destroyed===!1)if(A[DP0]===0||A[L2Q]===0)Q.unref(),A[DX].unref();else Q.ref(),A[DX].ref()}function SP0(A){t5(A.code!=="ERR_TLS_CERT_ALTNAME_INVALID"),this[$Y][F1]=A,this[k$][JS](A)}function kP0(A,Q,B){if(B===0){let Y=new AS(`HTTP/2: "frameError" received - type ${A}, code ${Q}`);this[$Y][F1]=Y,this[k$][JS](Y)}}function _P0(){let A=new Xq("other side closed",OB.getSocketInfo(this[$Y]));this.destroy(A),OB.destroy(this[$Y],A)}function vP0(A){let Q=this[F1]||new Xq(`HTTP/2: "GOAWAY" frame received with code ${A}`,OB.getSocketInfo(this[$Y])),B=this[k$];if(B[$Y]=null,B[Ir]=null,this.close(),this[DX]=null,OB.destroy(this[$Y],Q),B[G1]{if(Q.aborted||Q.completed)return;if(N=N||new VP0,OB.errorRequest(A,Q,N),K!=null)K.removeAllListeners("data"),K.close(),A[JS](N),A[w6]();OB.destroy($,N)};try{Q.onConnect(H)}catch(N){OB.errorRequest(A,Q,N)}if(Q.aborted)return!1;if(J==="CONNECT"){if(Y.ref(),K=Y.request(E,{endStream:!1,signal:W}),!K.pending)Q.onUpgrade(null,null,K),++Y[o5],A[nF][A[G1]++]=null;else K.once("ready",()=>{Q.onUpgrade(null,null,K),++Y[o5],A[nF][A[G1]++]=null});return K.once("close",()=>{if(Y[o5]-=1,Y[o5]===0)Y.unref()}),K.setTimeout(B),!0}E[MP0]=C,E[zP0]=Z==="http:"?"http":"https";let D=J==="PUT"||J==="POST"||J==="PATCH";if($&&typeof $.read==="function")$.read(0);let L=OB.bodyLength($);if(OB.isFormDataLike($)){H2Q??=mK().extractBody;let[N,q]=H2Q($);E["content-type"]=q,$=N.stream,L=N.length}if(L==null)L=Q.contentLength;if(L===0||!D)L=null;if(bP0(J)&&L>0&&Q.contentLength!=null&&Q.contentLength!==L){if(A[HP0])return OB.errorRequest(A,Q,new Er),!1;process.emitWarning(new Er)}if(L!=null)t5($,"no body must not have content length"),E[RP0]=`${L}`;if(Y.ref(),I2Q.sendHeaders.hasSubscribers){let N="";for(let q in E)N+=`${q}: ${E[q]}\r -`;I2Q.sendHeaders.publish({request:Q,headers:N,socket:Y[$Y]})}let z=J==="GET"||J==="HEAD"||$===null;if(F)E[wP0]="100-continue",K=Y.request(E,{endStream:z,signal:W}),K.once("continue",M);else K=Y.request(E,{endStream:z,signal:W}),M();return++Y[o5],K.setTimeout(B),K.once("response",(N)=>{let{[jP0]:q,...w}=N;if(Q.onResponseStarted(),Q.aborted){K.removeAllListeners("data");return}if(Q.onHeaders(Number(q),OP0(w),K.resume.bind(K),"")===!1)K.pause()}),K.on("data",(N)=>{if(Q.onData(N)===!1)K.pause()}),K.once("end",(N)=>{if(K.removeAllListeners("data"),K.state?.state==null||K.state.state<6){if(!Q.aborted&&!Q.completed)Q.onComplete({});A[nF][A[G1]++]=null,A[w6]()}else{if(--Y[o5],Y[o5]===0)Y.unref();H(N??new AS("HTTP/2: stream half-closed (remote)")),A[nF][A[G1]++]=null,A[Vr]=A[G1],A[w6]()}}),K.once("close",()=>{if(K.removeAllListeners("data"),Y[o5]-=1,Y[o5]===0)Y.unref()}),K.once("error",function(N){K.removeAllListeners("data"),H(N)}),K.once("frameError",(N,q)=>{K.removeAllListeners("data"),H(new AS(`HTTP/2: "frameError" received - type ${N}, code ${q}`))}),K.on("aborted",()=>{K.removeAllListeners("data")}),K.on("timeout",()=>{let N=new AS(`HTTP/2: "stream timeout after ${B}"`);if(K.removeAllListeners("data"),Y[o5]-=1,Y[o5]===0)Y.unref();H(N)}),K.once("trailers",(N)=>{if(Q.aborted||Q.completed)return;Q.onComplete(N)}),!0;function M(){if(!$||L===0)D2Q(H,K,null,A,Q,A[$Y],L,D);else if(OB.isBuffer($))D2Q(H,K,$,A,Q,A[$Y],L,D);else if(OB.isBlobLike($))if(typeof $.stream==="function")N2Q(H,K,$.stream(),A,Q,A[$Y],L,D);else dP0(H,K,$,A,Q,A[$Y],L,D);else if(OB.isStream($))uP0(H,A[$Y],D,K,$,A,Q,L);else if(OB.isIterable($))N2Q(H,K,$,A,Q,A[$Y],L,D);else t5(!1)}}function D2Q(A,Q,B,Y,J,C,X,G){try{if(B!=null&&OB.isBuffer(B))t5(X===B.byteLength,"buffer body must have content length"),Q.cork(),Q.write(B),Q.uncork(),Q.end(),J.onBodySent(B);if(!G)C[BS]=!0;J.onRequestSent(),Y[w6]()}catch(F){A(F)}}function uP0(A,Q,B,Y,J,C,X,G){t5(G!==0||C[YS]===0,"stream body cannot be pipelined");let F=KP0(J,Y,(Z)=>{if(Z)OB.destroy(F,Z),A(Z);else{if(OB.removeAllListeners(F),X.onRequestSent(),!B)Q[BS]=!0;C[w6]()}});OB.addListener(F,"data",W);function W(Z){X.onBodySent(Z)}}async function dP0(A,Q,B,Y,J,C,X,G){t5(X===B.size,"blob body must have content length");try{if(X!=null&&X!==B.size)throw new Er;let F=Buffer.from(await B.arrayBuffer());if(Q.cork(),Q.write(F),Q.uncork(),Q.end(),J.onBodySent(F),J.onRequestSent(),!G)C[BS]=!0;Y[w6]()}catch(F){A(F)}}async function N2Q(A,Q,B,Y,J,C,X,G){t5(X!==0||Y[YS]===0,"iterator body cannot be pipelined");let F=null;function W(){if(F){let U=F;F=null,U()}}let Z=()=>new Promise((U,$)=>{if(t5(F===null),C[F1])$(C[F1]);else F=U});Q.on("close",W).on("drain",W);try{for await(let U of B){if(C[F1])throw C[F1];let $=Q.write(U);if(J.onBodySent(U),!$)await Z()}if(Q.end(),J.onRequestSent(),!G)C[BS]=!0;Y[w6]()}catch(U){A(U)}finally{Q.off("close",W).off("drain",W)}}q2Q.exports=PP0});var y$=R((DiY,_2Q)=>{var j6=u("node:assert"),O2Q=u("node:net"),Gq=u("node:http"),_$=lQ(),{ClientStats:cP0}=ys(),{channels:lK}=z$(),lP0=jMQ(),pP0=R$(),{InvalidArgumentError:UY,InformationalError:iP0,ClientDestroyedError:nP0}=QB(),sP0=sL(),{kUrl:NX,kServerName:oF,kClient:rP0,kBusy:Hr,kConnect:aP0,kResuming:v$,kRunning:$q,kPending:Uq,kSize:Fq,kQueue:W1,kConnected:oP0,kConnecting:pK,kNeedDrain:rF,kKeepAliveDefaultTimeout:z2Q,kHostHeader:tP0,kPendingIdx:Z1,kRunningIdx:O6,kError:eP0,kPipelining:CS,kKeepAliveTimeoutValue:AT0,kMaxHeadersSize:QT0,kKeepAliveMaxTimeout:BT0,kKeepAliveTimeoutThreshold:YT0,kHeadersTimeout:JT0,kBodyTimeout:CT0,kStrictContentLength:XT0,kConnector:Wq,kMaxRequests:Dr,kCounter:GT0,kClose:FT0,kDestroy:WT0,kDispatch:ZT0,kLocalAddress:Zq,kMaxResponseSize:$T0,kOnError:UT0,kHTTPContext:EY,kMaxConcurrentStreams:ET0,kResume:aF}=Q0(),KT0=V2Q(),VT0=M2Q(),sF=Symbol("kClosedResolve"),IT0=Gq&&Gq.maxHeaderSize&&Number.isInteger(Gq.maxHeaderSize)&&Gq.maxHeaderSize>0?()=>Gq.maxHeaderSize:()=>{throw new UY("http module not available or http.maxHeaderSize invalid")},R2Q=()=>{};function P2Q(A){return A[CS]??A[EY]?.defaultPipelining??1}class T2Q extends pP0{constructor(A,{maxHeaderSize:Q,headersTimeout:B,socketTimeout:Y,requestTimeout:J,connectTimeout:C,bodyTimeout:X,idleTimeout:G,keepAlive:F,keepAliveTimeout:W,maxKeepAliveTimeout:Z,keepAliveMaxTimeout:U,keepAliveTimeoutThreshold:$,socketPath:E,pipelining:K,tls:I,strictContentLength:V,maxCachedSessions:H,connect:D,maxRequestsPerClient:L,localAddress:z,maxResponseSize:M,autoSelectFamily:N,autoSelectFamilyAttemptTimeout:q,maxConcurrentStreams:w,allowH2:P}={}){if(F!==void 0)throw new UY("unsupported keepAlive, use pipelining=0 instead");if(Y!==void 0)throw new UY("unsupported socketTimeout, use headersTimeout & bodyTimeout instead");if(J!==void 0)throw new UY("unsupported requestTimeout, use headersTimeout & bodyTimeout instead");if(G!==void 0)throw new UY("unsupported idleTimeout, use keepAliveTimeout instead");if(Z!==void 0)throw new UY("unsupported maxKeepAliveTimeout, use keepAliveMaxTimeout instead");if(Q!=null){if(!Number.isInteger(Q)||Q<1)throw new UY("invalid maxHeaderSize")}else Q=IT0();if(E!=null&&typeof E!=="string")throw new UY("invalid socketPath");if(C!=null&&(!Number.isFinite(C)||C<0))throw new UY("invalid connectTimeout");if(W!=null&&(!Number.isFinite(W)||W<=0))throw new UY("invalid keepAliveTimeout");if(U!=null&&(!Number.isFinite(U)||U<=0))throw new UY("invalid keepAliveMaxTimeout");if($!=null&&!Number.isFinite($))throw new UY("invalid keepAliveTimeoutThreshold");if(B!=null&&(!Number.isInteger(B)||B<0))throw new UY("headersTimeout must be a positive integer or zero");if(X!=null&&(!Number.isInteger(X)||X<0))throw new UY("bodyTimeout must be a positive integer or zero");if(D!=null&&typeof D!=="function"&&typeof D!=="object")throw new UY("connect must be a function or an object");if(L!=null&&(!Number.isInteger(L)||L<0))throw new UY("maxRequestsPerClient must be a positive number");if(z!=null&&(typeof z!=="string"||O2Q.isIP(z)===0))throw new UY("localAddress must be valid string IP address");if(M!=null&&(!Number.isInteger(M)||M<-1))throw new UY("maxResponseSize must be a positive number");if(q!=null&&(!Number.isInteger(q)||q<-1))throw new UY("autoSelectFamilyAttemptTimeout must be a positive number");if(P!=null&&typeof P!=="boolean")throw new UY("allowH2 must be a valid boolean value");if(w!=null&&(typeof w!=="number"||w<1))throw new UY("maxConcurrentStreams must be a positive integer, greater than 0");super();if(typeof D!=="function")D=sP0({...I,maxCachedSessions:H,allowH2:P,socketPath:E,timeout:C,...typeof N==="boolean"?{autoSelectFamily:N,autoSelectFamilyAttemptTimeout:q}:void 0,...D});this[NX]=_$.parseOrigin(A),this[Wq]=D,this[CS]=K!=null?K:1,this[QT0]=Q,this[z2Q]=W==null?4000:W,this[BT0]=U==null?600000:U,this[YT0]=$==null?2000:$,this[AT0]=this[z2Q],this[oF]=null,this[Zq]=z!=null?z:null,this[v$]=0,this[rF]=0,this[tP0]=`host: ${this[NX].hostname}${this[NX].port?`:${this[NX].port}`:""}\r -`,this[CT0]=X!=null?X:300000,this[JT0]=B!=null?B:300000,this[XT0]=V==null?!0:V,this[Dr]=L,this[sF]=null,this[$T0]=M>-1?M:-1,this[ET0]=w!=null?w:100,this[EY]=null,this[W1]=[],this[O6]=0,this[Z1]=0,this[aF]=(_)=>Nr(this,_),this[UT0]=(_)=>S2Q(this,_)}get pipelining(){return this[CS]}set pipelining(A){this[CS]=A,this[aF](!0)}get stats(){return new cP0(this)}get[Uq](){return this[W1].length-this[Z1]}get[$q](){return this[Z1]-this[O6]}get[Fq](){return this[W1].length-this[O6]}get[oP0](){return!!this[EY]&&!this[pK]&&!this[EY].destroyed}get[Hr](){return Boolean(this[EY]?.busy(null)||this[Fq]>=(P2Q(this)||1)||this[Uq]>0)}[aP0](A){k2Q(this),this.once("connect",A)}[ZT0](A,Q){let B=new lP0(this[NX].origin,A,Q);if(this[W1].push(B),this[v$]);else if(_$.bodyLength(B.body)==null&&_$.isIterable(B.body))this[v$]=1,queueMicrotask(()=>Nr(this));else this[aF](!0);if(this[v$]&&this[rF]!==2&&this[Hr])this[rF]=2;return this[rF]<2}[FT0](){return new Promise((A)=>{if(this[Fq])this[sF]=A;else A(null)})}[WT0](A){return new Promise((Q)=>{let B=this[W1].splice(this[Z1]);for(let J=0;J{if(this[sF])this[sF](),this[sF]=null;Q(null)};if(this[EY])this[EY].destroy(A,Y),this[EY]=null;else queueMicrotask(Y);this[aF]()})}}function S2Q(A,Q){if(A[$q]===0&&Q.code!=="UND_ERR_INFO"&&Q.code!=="UND_ERR_SOCKET"){j6(A[Z1]===A[O6]);let B=A[W1].splice(A[O6]);for(let Y=0;Y{if(C){w2Q(A,C,{host:Q,hostname:B,protocol:Y,port:J}),A[aF]();return}if(A.destroyed){_$.destroy(X.on("error",R2Q),new nP0),A[aF]();return}j6(X);try{A[EY]=X.alpnProtocol==="h2"?VT0(A,X):KT0(A,X)}catch(G){X.destroy().on("error",R2Q),w2Q(A,G,{host:Q,hostname:B,protocol:Y,port:J}),A[aF]();return}if(A[pK]=!1,X[GT0]=0,X[Dr]=A[Dr],X[rP0]=A,X[eP0]=null,lK.connected.hasSubscribers)lK.connected.publish({connectParams:{host:Q,hostname:B,protocol:Y,port:J,version:A[EY]?.version,servername:A[oF],localAddress:A[Zq]},connector:A[Wq],socket:X});A.emit("connect",A[NX],[A]),A[aF]()})}function w2Q(A,Q,{host:B,hostname:Y,protocol:J,port:C}){if(A.destroyed)return;if(A[pK]=!1,lK.connectError.hasSubscribers)lK.connectError.publish({connectParams:{host:B,hostname:Y,protocol:J,port:C,version:A[EY]?.version,servername:A[oF],localAddress:A[Zq]},connector:A[Wq],error:Q});if(Q.code==="ERR_TLS_CERT_ALTNAME_INVALID"){j6(A[$q]===0);while(A[Uq]>0&&A[W1][A[Z1]].servername===A[oF]){let X=A[W1][A[Z1]++];_$.errorRequest(A,X,Q)}}else S2Q(A,Q);A.emit("connectionError",A[NX],[A],Q)}function j2Q(A){A[rF]=0,A.emit("drain",A[NX],[A])}function Nr(A,Q){if(A[v$]===2)return;if(A[v$]=2,HT0(A,Q),A[v$]=0,A[O6]>256)A[W1].splice(0,A[O6]),A[Z1]-=A[O6],A[O6]=0}function HT0(A,Q){while(!0){if(A.destroyed){j6(A[Uq]===0);return}if(A[sF]&&!A[Fq]){A[sF](),A[sF]=null;return}if(A[EY])A[EY].resume();if(A[Hr])A[rF]=2;else if(A[rF]===2){if(Q)A[rF]=1,queueMicrotask(()=>j2Q(A));else j2Q(A);continue}if(A[Uq]===0)return;if(A[$q]>=(P2Q(A)||1))return;let B=A[W1][A[Z1]];if(A[NX].protocol==="https:"&&A[oF]!==B.servername){if(A[$q]>0)return;A[oF]=B.servername,A[EY]?.destroy(new iP0("servername changed"),()=>{A[EY]=null,Nr(A)})}if(A[pK])return;if(!A[EY]){k2Q(A);return}if(A[EY].destroyed)return;if(A[EY].busy(B))return;if(!B.aborted&&A[EY].write(B))A[Z1]++;else A[W1].splice(A[Z1],1)}}_2Q.exports=T2Q});var qr=R((NiY,v2Q)=>{class Lr{bottom=0;top=0;list=Array(2048).fill(void 0);next=null;isEmpty(){return this.top===this.bottom}isFull(){return(this.top+1&2047)===this.bottom}push(A){this.list[this.top]=A,this.top=this.top+1&2047}shift(){let A=this.list[this.bottom];if(A===void 0)return null;return this.list[this.bottom]=void 0,this.bottom=this.bottom+1&2047,A}}v2Q.exports=class{constructor(){this.head=this.tail=new Lr}isEmpty(){return this.head.isEmpty()}push(Q){if(this.head.isFull())this.head=this.head.next=new Lr;this.head.push(Q)}shift(){let Q=this.tail,B=Q.shift();if(Q.isEmpty()&&Q.next!==null)this.tail=Q.next,Q.next=null;return B}}});var jr=R((LiY,c2Q)=>{var{PoolStats:DT0}=ys(),NT0=R$(),LT0=qr(),{kConnected:Mr,kSize:y2Q,kRunning:g2Q,kPending:h2Q,kQueued:Eq,kBusy:qT0,kFree:MT0,kUrl:zT0,kClose:RT0,kDestroy:wT0,kDispatch:jT0}=Q0(),qY=Symbol("clients"),H9=Symbol("needDrain"),Kq=Symbol("queue"),zr=Symbol("closed resolve"),Rr=Symbol("onDrain"),x2Q=Symbol("onConnect"),f2Q=Symbol("onDisconnect"),b2Q=Symbol("onConnectionError"),wr=Symbol("get dispatcher"),m2Q=Symbol("add client"),u2Q=Symbol("remove client");class d2Q extends NT0{[Kq]=new LT0;[Eq]=0;[qY]=[];[H9]=!1;[Rr](A,Q,B){let Y=this[Kq],J=!1;while(!J){let C=Y.shift();if(!C)break;this[Eq]--,J=!A.dispatch(C.opts,C.handler)}if(A[H9]=J,!J&&this[H9])this[H9]=!1,this.emit("drain",Q,[this,...B]);if(this[zr]&&Y.isEmpty()){let C=Array(this[qY].length);for(let X=0;X{this.emit("connect",A,[this,...Q])};[f2Q]=(A,Q,B)=>{this.emit("disconnect",A,[this,...Q],B)};[b2Q]=(A,Q,B)=>{this.emit("connectionError",A,[this,...Q],B)};get[qT0](){return this[H9]}get[Mr](){let A=0;for(let{[Mr]:Q}of this[qY])A+=Q;return A}get[MT0](){let A=0;for(let{[Mr]:Q,[H9]:B}of this[qY])A+=Q&&!B;return A}get[h2Q](){let A=this[Eq];for(let{[h2Q]:Q}of this[qY])A+=Q;return A}get[g2Q](){let A=0;for(let{[g2Q]:Q}of this[qY])A+=Q;return A}get[y2Q](){let A=this[Eq];for(let{[y2Q]:Q}of this[qY])A+=Q;return A}get stats(){return new DT0(this)}[RT0](){if(this[Kq].isEmpty()){let A=Array(this[qY].length);for(let Q=0;Q{this[zr]=A})}[wT0](A){while(!0){let B=this[Kq].shift();if(!B)break;B.handler.onError(A)}let Q=Array(this[qY].length);for(let B=0;B{if(this[H9])this[Rr](A,A[zT0],[A,this])});return this}[u2Q](A){A.close(()=>{let Q=this[qY].indexOf(A);if(Q!==-1)this[qY].splice(Q,1)}),this[H9]=this[qY].some((Q)=>!Q[H9]&&Q.closed!==!0&&Q.destroyed!==!0)}}c2Q.exports={PoolBase:d2Q,kClients:qY,kNeedDrain:H9,kAddClient:m2Q,kRemoveClient:u2Q,kGetDispatcher:wr}});var iK=R((qiY,s2Q)=>{var{PoolBase:OT0,kClients:XS,kNeedDrain:PT0,kAddClient:TT0,kGetDispatcher:ST0,kRemoveClient:kT0}=jr(),_T0=y$(),{InvalidArgumentError:Or}=QB(),l2Q=lQ(),{kUrl:p2Q}=Q0(),vT0=sL(),GS=Symbol("options"),Pr=Symbol("connections"),i2Q=Symbol("factory");function yT0(A,Q){return new _T0(A,Q)}class n2Q extends OT0{constructor(A,{connections:Q,factory:B=yT0,connect:Y,connectTimeout:J,tls:C,maxCachedSessions:X,socketPath:G,autoSelectFamily:F,autoSelectFamilyAttemptTimeout:W,allowH2:Z,clientTtl:U,...$}={}){if(Q!=null&&(!Number.isFinite(Q)||Q<0))throw new Or("invalid connections");if(typeof B!=="function")throw new Or("factory must be a function.");if(Y!=null&&typeof Y!=="function"&&typeof Y!=="object")throw new Or("connect must be a function or an object");if(typeof Y!=="function")Y=vT0({...C,maxCachedSessions:X,allowH2:Z,socketPath:G,timeout:J,...typeof F==="boolean"?{autoSelectFamily:F,autoSelectFamilyAttemptTimeout:W}:void 0,...Y});super();this[Pr]=Q||null,this[p2Q]=l2Q.parseOrigin(A),this[GS]={...l2Q.deepClone($),connect:Y,allowH2:Z,clientTtl:U},this[GS].interceptors=$.interceptors?{...$.interceptors}:void 0,this[i2Q]=B,this.on("connect",(E,K)=>{if(U!=null&&U>0)for(let I of K)Object.assign(I,{ttl:Date.now()})}),this.on("connectionError",(E,K,I)=>{for(let V of K){let H=this[XS].indexOf(V);if(H!==-1)this[XS].splice(H,1)}})}[ST0](){let A=this[GS].clientTtl;for(let Q of this[XS])if(A!=null&&A>0&&Q.ttl&&Date.now()-Q.ttl>A)this[kT0](Q);else if(!Q[PT0])return Q;if(!this[Pr]||this[XS].length{var{BalancedPoolMissingUpstreamError:gT0,InvalidArgumentError:hT0}=QB(),{PoolBase:xT0,kClients:vJ,kNeedDrain:Vq,kAddClient:fT0,kRemoveClient:bT0,kGetDispatcher:mT0}=jr(),uT0=iK(),{kUrl:Tr}=Q0(),{parseOrigin:r2Q}=lQ(),a2Q=Symbol("factory"),FS=Symbol("options"),o2Q=Symbol("kGreatestCommonDivisor"),g$=Symbol("kCurrentWeight"),h$=Symbol("kIndex"),e5=Symbol("kWeight"),WS=Symbol("kMaxWeightPerServer"),ZS=Symbol("kErrorPenalty");function dT0(A,Q){if(A===0)return Q;while(Q!==0){let B=Q;Q=A%Q,A=B}return A}function cT0(A,Q){return new uT0(A,Q)}class t2Q extends xT0{constructor(A=[],{factory:Q=cT0,...B}={}){if(typeof Q!=="function")throw new hT0("factory must be a function.");super();if(this[FS]=B,this[h$]=-1,this[g$]=0,this[WS]=this[FS].maxWeightPerServer||100,this[ZS]=this[FS].errorPenalty||15,!Array.isArray(A))A=[A];this[a2Q]=Q;for(let Y of A)this.addUpstream(Y);this._updateBalancedPoolStats()}addUpstream(A){let Q=r2Q(A).origin;if(this[vJ].find((Y)=>Y[Tr].origin===Q&&Y.closed!==!0&&Y.destroyed!==!0))return this;let B=this[a2Q](Q,Object.assign({},this[FS]));this[fT0](B),B.on("connect",()=>{B[e5]=Math.min(this[WS],B[e5]+this[ZS])}),B.on("connectionError",()=>{B[e5]=Math.max(1,B[e5]-this[ZS]),this._updateBalancedPoolStats()}),B.on("disconnect",(...Y)=>{let J=Y[2];if(J&&J.code==="UND_ERR_SOCKET")B[e5]=Math.max(1,B[e5]-this[ZS]),this._updateBalancedPoolStats()});for(let Y of this[vJ])Y[e5]=this[WS];return this._updateBalancedPoolStats(),this}_updateBalancedPoolStats(){let A=0;for(let Q=0;QY[Tr].origin===Q&&Y.closed!==!0&&Y.destroyed!==!0);if(B)this[bT0](B);return this}get upstreams(){return this[vJ].filter((A)=>A.closed!==!0&&A.destroyed!==!0).map((A)=>A[Tr].origin)}[mT0](){if(this[vJ].length===0)throw new gT0;if(!this[vJ].find((J)=>!J[Vq]&&J.closed!==!0&&J.destroyed!==!0))return;if(this[vJ].map((J)=>J[Vq]).reduce((J,C)=>J&&C,!0))return;let B=0,Y=this[vJ].findIndex((J)=>!J[Vq]);while(B++this[vJ][Y][e5]&&!J[Vq])Y=this[h$];if(this[h$]===0){if(this[g$]=this[g$]-this[o2Q],this[g$]<=0)this[g$]=this[WS]}if(J[e5]>=this[g$]&&!J[Vq])return J}return this[g$]=this[vJ][Y][e5],this[h$]=Y,this[vJ][Y]}}e2Q.exports=t2Q});var x$=R((ziY,F3Q)=>{var{InvalidArgumentError:$S,MaxOriginsReachedError:lT0}=QB(),{kClients:AC,kRunning:Q3Q,kClose:pT0,kDestroy:iT0,kDispatch:nT0,kUrl:sT0}=Q0(),rT0=R$(),aT0=iK(),oT0=y$(),tT0=lQ(),B3Q=Symbol("onConnect"),Y3Q=Symbol("onDisconnect"),J3Q=Symbol("onConnectionError"),C3Q=Symbol("onDrain"),X3Q=Symbol("factory"),Sr=Symbol("options"),Iq=Symbol("origins");function eT0(A,Q){return Q&&Q.connections===1?new oT0(A,Q):new aT0(A,Q)}class G3Q extends rT0{constructor({factory:A=eT0,maxOrigins:Q=1/0,connect:B,...Y}={}){if(typeof A!=="function")throw new $S("factory must be a function.");if(B!=null&&typeof B!=="function"&&typeof B!=="object")throw new $S("connect must be a function or an object");if(typeof Q!=="number"||Number.isNaN(Q)||Q<=0)throw new $S("maxOrigins must be a number greater than 0");super();if(B&&typeof B!=="function")B={...B};this[Sr]={...tT0.deepClone(Y),maxOrigins:Q,connect:B},this[X3Q]=A,this[AC]=new Map,this[Iq]=new Set,this[C3Q]=(J,C)=>{this.emit("drain",J,[this,...C])},this[B3Q]=(J,C)=>{this.emit("connect",J,[this,...C])},this[Y3Q]=(J,C,X)=>{this.emit("disconnect",J,[this,...C],X)},this[J3Q]=(J,C,X)=>{this.emit("connectionError",J,[this,...C],X)}}get[Q3Q](){let A=0;for(let{dispatcher:Q}of this[AC].values())A+=Q[Q3Q];return A}[nT0](A,Q){let B;if(A.origin&&(typeof A.origin==="string"||A.origin instanceof URL))B=String(A.origin);else throw new $S("opts.origin must be a non-empty string or URL.");if(this[Iq].size>=this[Sr].maxOrigins&&!this[Iq].has(B))throw new lT0;let Y=this[AC].get(B),J=Y&&Y.dispatcher;if(!J){let C=(X)=>{let G=this[AC].get(B);if(G){if(X)G.count-=1;if(G.count<=0)this[AC].delete(B),G.dispatcher.close();this[Iq].delete(B)}};J=this[X3Q](A.origin,this[Sr]).on("drain",this[C3Q]).on("connect",(X,G)=>{let F=this[AC].get(B);if(F)F.count+=1;this[B3Q](X,G)}).on("disconnect",(X,G,F)=>{C(!0),this[Y3Q](X,G,F)}).on("connectionError",(X,G,F)=>{C(!1),this[J3Q](X,G,F)}),this[AC].set(B,{count:0,dispatcher:J}),this[Iq].add(B)}return J.dispatch(A,Q)}[pT0](){let A=[];for(let{dispatcher:Q}of this[AC].values())A.push(Q.close());return this[AC].clear(),Promise.all(A)}[iT0](A){let Q=[];for(let{dispatcher:B}of this[AC].values())Q.push(B.destroy(A));return this[AC].clear(),Promise.all(Q)}get stats(){let A={};for(let{dispatcher:Q}of this[AC].values())if(Q.stats)A[Q[sT0].origin]=Q.stats;return A}}F3Q.exports=G3Q});var vr=R((RiY,q3Q)=>{var{kProxy:kr,kClose:K3Q,kDestroy:V3Q,kDispatch:W3Q}=Q0(),AS0=x$(),I3Q=iK(),H3Q=R$(),{InvalidArgumentError:nK,RequestAbortedError:QS0,SecureProxyConnectionError:BS0}=QB(),Z3Q=sL(),D3Q=y$(),US=Symbol("proxy agent"),ES=Symbol("proxy client"),tF=Symbol("proxy headers"),_r=Symbol("request tls settings"),$3Q=Symbol("proxy tls settings"),U3Q=Symbol("connect endpoint function"),E3Q=Symbol("tunnel proxy");function YS0(A){return A==="https:"?443:80}function JS0(A,Q){return new I3Q(A,Q)}var CS0=()=>{};function XS0(A,Q){if(Q.connections===1)return new D3Q(A,Q);return new I3Q(A,Q)}class N3Q extends H3Q{#A;constructor(A,{headers:Q={},connect:B,factory:Y}){if(!A)throw new nK("Proxy URL is mandatory");super();if(this[tF]=Q,Y)this.#A=Y(A,{connect:B});else this.#A=new D3Q(A,{connect:B})}[W3Q](A,Q){let B=Q.onHeaders;Q.onHeaders=function(X,G,F){if(X===407){if(typeof Q.onError==="function")Q.onError(new nK("Proxy Authentication Required (407)"));return}if(B)B.call(this,X,G,F)};let{origin:Y,path:J="/",headers:C={}}=A;if(A.path=Y+J,!("host"in C)&&!("Host"in C)){let{host:X}=new URL(Y);C.host=X}return A.headers={...this[tF],...C},this.#A[W3Q](A,Q)}[K3Q](){return this.#A.close()}[V3Q](A){return this.#A.destroy(A)}}class L3Q extends H3Q{constructor(A){if(!A||typeof A==="object"&&!(A instanceof URL)&&!A.uri)throw new nK("Proxy uri is mandatory");let{clientFactory:Q=JS0}=A;if(typeof Q!=="function")throw new nK("Proxy opts.clientFactory must be a function.");let{proxyTunnel:B=!0}=A;super();let Y=this.#A(A),{href:J,origin:C,port:X,protocol:G,username:F,password:W,hostname:Z}=Y;if(this[kr]={uri:J,protocol:G},this[_r]=A.requestTls,this[$3Q]=A.proxyTls,this[tF]=A.headers||{},this[E3Q]=B,A.auth&&A.token)throw new nK("opts.auth cannot be used in combination with opts.token");else if(A.auth)this[tF]["proxy-authorization"]=`Basic ${A.auth}`;else if(A.token)this[tF]["proxy-authorization"]=A.token;else if(F&&W)this[tF]["proxy-authorization"]=`Basic ${Buffer.from(`${decodeURIComponent(F)}:${decodeURIComponent(W)}`).toString("base64")}`;let U=Z3Q({...A.proxyTls});this[U3Q]=Z3Q({...A.requestTls});let $=A.factory||XS0,E=(K,I)=>{let{protocol:V}=new URL(K);if(!this[E3Q]&&V==="http:"&&this[kr].protocol==="http:")return new N3Q(this[kr].uri,{headers:this[tF],connect:U,factory:$});return $(K,I)};this[ES]=Q(Y,{connect:U}),this[US]=new AS0({...A,factory:E,connect:async(K,I)=>{let V=K.host;if(!K.port)V+=`:${YS0(K.protocol)}`;try{let{socket:H,statusCode:D}=await this[ES].connect({origin:C,port:X,path:V,signal:K.signal,headers:{...this[tF],host:K.host,...K.connections==null||K.connections>0?{"proxy-connection":"keep-alive"}:{}},servername:this[$3Q]?.servername||Z});if(D!==200)H.on("error",CS0).destroy(),I(new QS0(`Proxy response (${D}) !== 200 when HTTP Tunneling`));if(K.protocol!=="https:"){I(null,H);return}let L;if(this[_r])L=this[_r].servername;else L=K.servername;this[U3Q]({...K,servername:L,httpSocket:H},I)}catch(H){if(H.code==="ERR_TLS_CERT_ALTNAME_INVALID")I(new BS0(H));else I(H)}}})}dispatch(A,Q){let B=GS0(A.headers);if(FS0(B),B&&!("host"in B)&&!("Host"in B)){let{host:Y}=new URL(A.origin);B.host=Y}return this[US].dispatch({...A,headers:B},Q)}#A(A){if(typeof A==="string")return new URL(A);else if(A instanceof URL)return A;else return new URL(A.uri)}[K3Q](){return Promise.all([this[US].close(),this[ES].close()])}[V3Q](){return Promise.all([this[US].destroy(),this[ES].destroy()])}}function GS0(A){if(Array.isArray(A)){let Q={};for(let B=0;BB.toLowerCase()==="proxy-authorization"))throw new nK("Proxy-Authorization should be sent in ProxyAgent constructor")}q3Q.exports=L3Q});var O3Q=R((wiY,j3Q)=>{var WS0=R$(),{kClose:ZS0,kDestroy:$S0,kClosed:M3Q,kDestroyed:z3Q,kDispatch:US0,kNoProxyAgent:Hq,kHttpProxyAgent:eF,kHttpsProxyAgent:f$}=Q0(),R3Q=vr(),ES0=x$(),KS0={"http:":80,"https:":443};class w3Q extends WS0{#A=null;#Q=null;#B=null;constructor(A={}){super();this.#B=A;let{httpProxy:Q,httpsProxy:B,noProxy:Y,...J}=A;this[Hq]=new ES0(J);let C=Q??process.env.http_proxy??process.env.HTTP_PROXY;if(C)this[eF]=new R3Q({...J,uri:C});else this[eF]=this[Hq];let X=B??process.env.https_proxy??process.env.HTTPS_PROXY;if(X)this[f$]=new R3Q({...J,uri:X});else this[f$]=this[eF];this.#C()}[US0](A,Q){let B=new URL(A.origin);return this.#Y(B).dispatch(A,Q)}[ZS0](){return Promise.all([this[Hq].close(),!this[eF][M3Q]&&this[eF].close(),!this[f$][M3Q]&&this[f$].close()])}[$S0](A){return Promise.all([this[Hq].destroy(A),!this[eF][z3Q]&&this[eF].destroy(A),!this[f$][z3Q]&&this[f$].destroy(A)])}#Y(A){let{protocol:Q,host:B,port:Y}=A;if(B=B.replace(/:\d*$/,"").toLowerCase(),Y=Number.parseInt(Y,10)||KS0[Q]||0,!this.#J(B,Y))return this[Hq];if(Q==="https:")return this[f$];return this[eF]}#J(A,Q){if(this.#F)this.#C();if(this.#Q.length===0)return!0;if(this.#A==="*")return!1;for(let B=0;B{var sK=u("node:assert"),{kRetryHandlerDefaultRetry:P3Q}=Q0(),{RequestRetryError:Dq}=QB(),VS0=pL(),{isDisturbed:T3Q,parseRangeHeader:S3Q,wrapRequestBody:IS0}=lQ();function HS0(A){let Q=new Date(A).getTime();return isNaN(Q)?0:Q-Date.now()}class yr{constructor(A,{dispatch:Q,handler:B}){let{retryOptions:Y,...J}=A,{retry:C,maxRetries:X,maxTimeout:G,minTimeout:F,timeoutFactor:W,methods:Z,errorCodes:U,retryAfter:$,statusCodes:E,throwOnError:K}=Y??{};this.error=null,this.dispatch=Q,this.handler=VS0.wrap(B),this.opts={...J,body:IS0(A.body)},this.retryOpts={throwOnError:K??!0,retry:C??yr[P3Q],retryAfter:$??!0,maxTimeout:G??30000,minTimeout:F??500,timeoutFactor:W??2,maxRetries:X??5,methods:Z??["GET","HEAD","OPTIONS","PUT","DELETE","TRACE"],statusCodes:E??[500,502,503,504,429],errorCodes:U??["ECONNRESET","ECONNREFUSED","ENOTFOUND","ENETDOWN","ENETUNREACH","EHOSTDOWN","EHOSTUNREACH","EPIPE","UND_ERR_SOCKET"]},this.retryCount=0,this.retryCountCheckpoint=0,this.headersSent=!1,this.start=0,this.end=null,this.etag=null}onResponseStartWithRetry(A,Q,B,Y,J){if(this.retryOpts.throwOnError){if(this.retryOpts.statusCodes.includes(Q)===!1)this.headersSent=!0,this.handler.onResponseStart?.(A,Q,B,Y);else this.error=J;return}if(T3Q(this.opts.body)){this.headersSent=!0,this.handler.onResponseStart?.(A,Q,B,Y);return}function C(X){if(X){this.headersSent=!0,this.headersSent=!0,this.handler.onResponseStart?.(A,Q,B,Y),A.resume();return}this.error=J,A.resume()}A.pause(),this.retryOpts.retry(J,{state:{counter:this.retryCount},opts:{retryOptions:this.retryOpts,...this.opts}},C.bind(this))}onRequestStart(A,Q){if(!this.headersSent)this.handler.onRequestStart?.(A,Q)}onRequestUpgrade(A,Q,B,Y){this.handler.onRequestUpgrade?.(A,Q,B,Y)}static[P3Q](A,{state:Q,opts:B},Y){let{statusCode:J,code:C,headers:X}=A,{method:G,retryOptions:F}=B,{maxRetries:W,minTimeout:Z,maxTimeout:U,timeoutFactor:$,statusCodes:E,errorCodes:K,methods:I}=F,{counter:V}=Q;if(C&&C!=="UND_ERR_REQ_RETRY"&&!K.includes(C)){Y(A);return}if(Array.isArray(I)&&!I.includes(G)){Y(A);return}if(J!=null&&Array.isArray(E)&&!E.includes(J)){Y(A);return}if(V>W){Y(A);return}let H=X?.["retry-after"];if(H)H=Number(H),H=Number.isNaN(H)?HS0(X["retry-after"]):H*1000;let D=H>0?Math.min(H,U):Math.min(Z*$**(V-1),U);setTimeout(()=>Y(null),D)}onResponseStart(A,Q,B,Y){if(this.error=null,this.retryCount+=1,Q>=300){let J=new Dq("Request failed",Q,{headers:B,data:{count:this.retryCount}});this.onResponseStartWithRetry(A,Q,B,Y,J);return}if(this.headersSent){if(Q!==206&&(this.start>0||Q!==200))throw new Dq("server does not support the range header and the payload was partially consumed",Q,{headers:B,data:{count:this.retryCount}});let J=S3Q(B["content-range"]);if(!J)throw new Dq("Content-Range mismatch",Q,{headers:B,data:{count:this.retryCount}});if(this.etag!=null&&this.etag!==B.etag)throw new Dq("ETag mismatch",Q,{headers:B,data:{count:this.retryCount}});let{start:C,size:X,end:G=X?X-1:null}=J;sK(this.start===C,"content-range mismatch"),sK(this.end==null||this.end===G,"content-range mismatch");return}if(this.end==null){if(Q===206){let J=S3Q(B["content-range"]);if(J==null){this.headersSent=!0,this.handler.onResponseStart?.(A,Q,B,Y);return}let{start:C,size:X,end:G=X?X-1:null}=J;sK(C!=null&&Number.isFinite(C),"content-range mismatch"),sK(G!=null&&Number.isFinite(G),"invalid content-length"),this.start=C,this.end=G}if(this.end==null){let J=B["content-length"];this.end=J!=null?Number(J)-1:null}if(sK(Number.isFinite(this.start)),sK(this.end==null||Number.isFinite(this.end),"invalid content-length"),this.resume=!0,this.etag=B.etag!=null?B.etag:null,this.etag!=null&&this.etag[0]==="W"&&this.etag[1]==="/")this.etag=null;this.headersSent=!0,this.handler.onResponseStart?.(A,Q,B,Y)}else throw new Dq("Request failed",Q,{headers:B,data:{count:this.retryCount}})}onResponseData(A,Q){if(this.error)return;this.start+=Q.length,this.handler.onResponseData?.(A,Q)}onResponseEnd(A,Q){if(this.error&&this.retryOpts.throwOnError)throw this.error;if(!this.error)return this.retryCount=0,this.handler.onResponseEnd?.(A,Q);this.retry(A)}retry(A){if(this.start!==0){let Q={range:`bytes=${this.start}-${this.end??""}`};if(this.etag!=null)Q["if-match"]=this.etag;this.opts={...this.opts,headers:{...this.opts.headers,...Q}}}try{this.retryCountCheckpoint=this.retryCount,this.dispatch(this.opts,this)}catch(Q){this.handler.onResponseError?.(A,Q)}}onResponseError(A,Q){if(A?.aborted||T3Q(this.opts.body)){this.handler.onResponseError?.(A,Q);return}function B(Y){if(!Y){this.retry(A);return}this.handler?.onResponseError?.(A,Y)}if(this.retryCount-this.retryCountCheckpoint>0)this.retryCount=this.retryCountCheckpoint+(this.retryCount-this.retryCountCheckpoint);else this.retryCount+=1;this.retryOpts.retry(Q,{state:{counter:this.retryCount},opts:{retryOptions:this.retryOpts,...this.opts}},B.bind(this))}}k3Q.exports=yr});var y3Q=R((OiY,v3Q)=>{var DS0=iL(),NS0=KS();class _3Q extends DS0{#A=null;#Q=null;constructor(A,Q={}){super(Q);this.#A=A,this.#Q=Q}dispatch(A,Q){let B=new NS0({...A,retryOptions:this.#Q},{dispatch:this.#A.dispatch.bind(this.#A),handler:Q});return this.#A.dispatch(A,B)}close(){return this.#A.close()}destroy(){return this.#A.destroy()}}v3Q.exports=_3Q});var f3Q=R((PiY,x3Q)=>{var{connect:LS0}=u("node:net"),{kClose:qS0,kDestroy:MS0}=Q0(),{InvalidArgumentError:g3Q}=QB(),zS0=lQ(),RS0=y$(),wS0=R$();class h3Q extends wS0{#A=null;constructor(A,Q){if(typeof A==="string")A=new URL(A);if(A.protocol!=="http:")throw new g3Q("h2c-client: Only h2c protocol is supported");let{connect:B,maxConcurrentStreams:Y,pipelining:J,...C}=Q??{},X=100,G=100;if(Y!=null&&Number.isInteger(Y)&&Y>0)X=Y;if(J!=null&&Number.isInteger(J)&&J>0)G=J;if(G>X)throw new g3Q("h2c-client: pipelining cannot be greater than maxConcurrentStreams");super();this.#A=new RS0(A,{...C,connect:this.#Q(B),maxConcurrentStreams:X,pipelining:G,allowH2:!0})}#Q(A){return(Q,B)=>{let Y=A?.connectOpts??1e4,{hostname:J,port:C,pathname:X}=Q,G=LS0({...Q,host:J,port:C,pathname:X});if(Q.keepAlive==null||Q.keepAlive){let W=Q.keepAliveInitialDelay==null?60000:Q.keepAliveInitialDelay;G.setKeepAlive(!0,W)}G.alpnProtocol="h2";let F=zS0.setupConnectTimeout(new WeakRef(G),{timeout:Y,hostname:J,port:C});return G.setNoDelay(!0).once("connect",function(){if(queueMicrotask(F),B){let W=B;B=null,W(null,this)}}).on("error",function(W){if(queueMicrotask(F),B){let Z=B;B=null,Z(W)}}),G}}dispatch(A,Q){return this.#A.dispatch(A,Q)}[qS0](){return this.#A.close()}[MS0](){return this.#A.destroy()}}x3Q.exports=h3Q});var s3Q=R((TiY,n3Q)=>{var d3Q=u("node:assert"),{Readable:jS0}=u("node:stream"),{RequestAbortedError:c3Q,NotSupportedError:OS0,InvalidArgumentError:PS0,AbortError:VS}=QB(),l3Q=lQ(),{ReadableStreamFrom:TS0}=lQ(),g8=Symbol("kConsume"),IS=Symbol("kReading"),b$=Symbol("kBody"),b3Q=Symbol("kAbort"),p3Q=Symbol("kContentType"),gr=Symbol("kContentLength"),hr=Symbol("kUsed"),HS=Symbol("kBytesRead"),SS0=()=>{};class i3Q extends jS0{constructor({resume:A,abort:Q,contentType:B="",contentLength:Y,highWaterMark:J=65536}){super({autoDestroy:!0,read:A,highWaterMark:J});this._readableState.dataEmitted=!1,this[b3Q]=Q,this[g8]=null,this[HS]=0,this[b$]=null,this[hr]=!1,this[p3Q]=B,this[gr]=Number.isFinite(Y)?Y:null,this[IS]=!1}_destroy(A,Q){if(!A&&!this._readableState.endEmitted)A=new c3Q;if(A)this[b3Q]();if(!this[hr])setImmediate(Q,A);else Q(A)}on(A,Q){if(A==="data"||A==="readable")this[IS]=!0,this[hr]=!0;return super.on(A,Q)}addListener(A,Q){return this.on(A,Q)}off(A,Q){let B=super.off(A,Q);if(A==="data"||A==="readable")this[IS]=this.listenerCount("data")>0||this.listenerCount("readable")>0;return B}removeListener(A,Q){return this.off(A,Q)}push(A){if(A){if(this[HS]+=A.length,this[g8])return fr(this[g8],A),this[IS]?super.push(A):!0}return super.push(A)}text(){return Nq(this,"text")}json(){return Nq(this,"json")}blob(){return Nq(this,"blob")}bytes(){return Nq(this,"bytes")}arrayBuffer(){return Nq(this,"arrayBuffer")}async formData(){throw new OS0}get bodyUsed(){return l3Q.isDisturbed(this)}get body(){if(!this[b$]){if(this[b$]=TS0(this),this[g8])this[b$].getReader(),d3Q(this[b$].locked)}return this[b$]}dump(A){let Q=A?.signal;if(Q!=null&&(typeof Q!=="object"||!("aborted"in Q)))return Promise.reject(new PS0("signal must be an AbortSignal"));let B=A?.limit&&Number.isFinite(A.limit)?A.limit:131072;if(Q?.aborted)return Promise.reject(Q.reason??new VS);if(this._readableState.closeEmitted)return Promise.resolve(null);return new Promise((Y,J)=>{if(this[gr]&&this[gr]>B||this[HS]>B)this.destroy(new VS);if(Q){let C=()=>{this.destroy(Q.reason??new VS)};Q.addEventListener("abort",C),this.on("close",function(){if(Q.removeEventListener("abort",C),Q.aborted)J(Q.reason??new VS);else Y(null)})}else this.on("close",Y);this.on("error",SS0).on("data",()=>{if(this[HS]>B)this.destroy()}).resume()})}setEncoding(A){if(Buffer.isEncoding(A))this._readableState.encoding=A;return this}}function kS0(A){return A[b$]?.locked===!0||A[g8]!==null}function _S0(A){return l3Q.isDisturbed(A)||kS0(A)}function Nq(A,Q){return d3Q(!A[g8]),new Promise((B,Y)=>{if(_S0(A)){let J=A._readableState;if(J.destroyed&&J.closeEmitted===!1)A.on("error",Y).on("close",()=>{Y(TypeError("unusable"))});else Y(J.errored??TypeError("unusable"))}else queueMicrotask(()=>{A[g8]={type:Q,stream:A,resolve:B,reject:Y,length:0,body:[]},A.on("error",function(J){br(this[g8],J)}).on("close",function(){if(this[g8].body!==null)br(this[g8],new c3Q)}),vS0(A[g8])})})}function vS0(A){if(A.body===null)return;let{_readableState:Q}=A.stream;if(Q.bufferIndex){let B=Q.bufferIndex,Y=Q.buffer.length;for(let J=B;J2&&Y[0]===239&&Y[1]===187&&Y[2]===191?3:0;if(!B||B==="utf8"||B==="utf-8")return Y.utf8Slice(C,J);else return Y.subarray(C,J).toString(B)}function m3Q(A,Q){if(A.length===0||Q===0)return new Uint8Array(0);if(A.length===1)return new Uint8Array(A[0]);let B=new Uint8Array(Buffer.allocUnsafeSlow(Q).buffer),Y=0;for(let J=0;J{var yS0=u("node:assert"),{AsyncResource:gS0}=u("node:async_hooks"),{Readable:hS0}=s3Q(),{InvalidArgumentError:rK,RequestAbortedError:r3Q}=QB(),QC=lQ();function Lq(){}class mr extends gS0{constructor(A,Q){if(!A||typeof A!=="object")throw new rK("invalid opts");let{signal:B,method:Y,opaque:J,body:C,onInfo:X,responseHeaders:G,highWaterMark:F}=A;try{if(typeof Q!=="function")throw new rK("invalid callback");if(F&&(typeof F!=="number"||F<0))throw new rK("invalid highWaterMark");if(B&&typeof B.on!=="function"&&typeof B.addEventListener!=="function")throw new rK("signal must be an EventEmitter or EventTarget");if(Y==="CONNECT")throw new rK("invalid method");if(X&&typeof X!=="function")throw new rK("invalid onInfo callback");super("UNDICI_REQUEST")}catch(W){if(QC.isStream(C))QC.destroy(C.on("error",Lq),W);throw W}if(this.method=Y,this.responseHeaders=G||null,this.opaque=J||null,this.callback=Q,this.res=null,this.abort=null,this.body=C,this.trailers={},this.context=null,this.onInfo=X||null,this.highWaterMark=F,this.reason=null,this.removeAbortListener=null,B?.aborted)this.reason=B.reason??new r3Q;else if(B)this.removeAbortListener=QC.addAbortListener(B,()=>{if(this.reason=B.reason??new r3Q,this.res)QC.destroy(this.res.on("error",Lq),this.reason);else if(this.abort)this.abort(this.reason)})}onConnect(A,Q){if(this.reason){A(this.reason);return}yS0(this.callback),this.abort=A,this.context=Q}onHeaders(A,Q,B,Y){let{callback:J,opaque:C,abort:X,context:G,responseHeaders:F,highWaterMark:W}=this,Z=F==="raw"?QC.parseRawHeaders(Q):QC.parseHeaders(Q);if(A<200){if(this.onInfo)this.onInfo({statusCode:A,headers:Z});return}let U=F==="raw"?QC.parseHeaders(Q):Z,$=U["content-type"],E=U["content-length"],K=new hS0({resume:B,abort:X,contentType:$,contentLength:this.method!=="HEAD"&&E?Number(E):null,highWaterMark:W});if(this.removeAbortListener)K.on("close",this.removeAbortListener),this.removeAbortListener=null;if(this.callback=null,this.res=K,J!==null)try{this.runInAsyncScope(J,null,null,{statusCode:A,headers:Z,trailers:this.trailers,opaque:C,body:K,context:G})}catch(I){this.res=null,QC.destroy(K.on("error",Lq),I),queueMicrotask(()=>{throw I})}}onData(A){return this.res.push(A)}onComplete(A){QC.parseHeaders(A,this.trailers),this.res.push(null)}onError(A){let{res:Q,callback:B,body:Y,opaque:J}=this;if(B)this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(B,null,A,{opaque:J})});if(Q)this.res=null,queueMicrotask(()=>{QC.destroy(Q.on("error",Lq),A)});if(Y){if(this.body=null,QC.isStream(Y))Y.on("error",Lq),QC.destroy(Y,A)}if(this.removeAbortListener)this.removeAbortListener(),this.removeAbortListener=null}}function a3Q(A,Q){if(Q===void 0)return new Promise((B,Y)=>{a3Q.call(this,A,(J,C)=>{return J?Y(J):B(C)})});try{let B=new mr(A,Q);this.dispatch(A,B)}catch(B){if(typeof Q!=="function")throw B;let Y=A?.opaque;queueMicrotask(()=>Q(B,{opaque:Y}))}}ur.exports=a3Q;ur.exports.RequestHandler=mr});var qq=R((kiY,ARQ)=>{var{addAbortListener:xS0}=lQ(),{RequestAbortedError:fS0}=QB(),aK=Symbol("kListener"),LX=Symbol("kSignal");function t3Q(A){if(A.abort)A.abort(A[LX]?.reason);else A.reason=A[LX]?.reason??new fS0;e3Q(A)}function bS0(A,Q){if(A.reason=null,A[LX]=null,A[aK]=null,!Q)return;if(Q.aborted){t3Q(A);return}A[LX]=Q,A[aK]=()=>{t3Q(A)},xS0(A[LX],A[aK])}function e3Q(A){if(!A[LX])return;if("removeEventListener"in A[LX])A[LX].removeEventListener("abort",A[aK]);else A[LX].removeListener("abort",A[aK]);A[LX]=null,A[aK]=null}ARQ.exports={addSignal:bS0,removeSignal:e3Q}});var CRQ=R((_iY,JRQ)=>{var mS0=u("node:assert"),{finished:uS0}=u("node:stream"),{AsyncResource:dS0}=u("node:async_hooks"),{InvalidArgumentError:oK,InvalidReturnValueError:cS0}=QB(),P6=lQ(),{addSignal:lS0,removeSignal:QRQ}=qq();function pS0(){}class BRQ extends dS0{constructor(A,Q,B){if(!A||typeof A!=="object")throw new oK("invalid opts");let{signal:Y,method:J,opaque:C,body:X,onInfo:G,responseHeaders:F}=A;try{if(typeof B!=="function")throw new oK("invalid callback");if(typeof Q!=="function")throw new oK("invalid factory");if(Y&&typeof Y.on!=="function"&&typeof Y.addEventListener!=="function")throw new oK("signal must be an EventEmitter or EventTarget");if(J==="CONNECT")throw new oK("invalid method");if(G&&typeof G!=="function")throw new oK("invalid onInfo callback");super("UNDICI_STREAM")}catch(W){if(P6.isStream(X))P6.destroy(X.on("error",pS0),W);throw W}if(this.responseHeaders=F||null,this.opaque=C||null,this.factory=Q,this.callback=B,this.res=null,this.abort=null,this.context=null,this.trailers=null,this.body=X,this.onInfo=G||null,P6.isStream(X))X.on("error",(W)=>{this.onError(W)});lS0(this,Y)}onConnect(A,Q){if(this.reason){A(this.reason);return}mS0(this.callback),this.abort=A,this.context=Q}onHeaders(A,Q,B,Y){let{factory:J,opaque:C,context:X,responseHeaders:G}=this,F=G==="raw"?P6.parseRawHeaders(Q):P6.parseHeaders(Q);if(A<200){if(this.onInfo)this.onInfo({statusCode:A,headers:F});return}if(this.factory=null,J===null)return;let W=this.runInAsyncScope(J,null,{statusCode:A,headers:F,opaque:C,context:X});if(!W||typeof W.write!=="function"||typeof W.end!=="function"||typeof W.on!=="function")throw new cS0("expected Writable");return uS0(W,{readable:!1},(U)=>{let{callback:$,res:E,opaque:K,trailers:I,abort:V}=this;if(this.res=null,U||!E?.readable)P6.destroy(E,U);if(this.callback=null,this.runInAsyncScope($,null,U||null,{opaque:K,trailers:I}),U)V()}),W.on("drain",B),this.res=W,(W.writableNeedDrain!==void 0?W.writableNeedDrain:W._writableState?.needDrain)!==!0}onData(A){let{res:Q}=this;return Q?Q.write(A):!0}onComplete(A){let{res:Q}=this;if(QRQ(this),!Q)return;this.trailers=P6.parseHeaders(A),Q.end()}onError(A){let{res:Q,callback:B,opaque:Y,body:J}=this;if(QRQ(this),this.factory=null,Q)this.res=null,P6.destroy(Q,A);else if(B)this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(B,null,A,{opaque:Y})});if(J)this.body=null,P6.destroy(J,A)}}function YRQ(A,Q,B){if(B===void 0)return new Promise((Y,J)=>{YRQ.call(this,A,Q,(C,X)=>{return C?J(C):Y(X)})});try{let Y=new BRQ(A,Q,B);this.dispatch(A,Y)}catch(Y){if(typeof B!=="function")throw Y;let J=A?.opaque;queueMicrotask(()=>B(Y,{opaque:J}))}}JRQ.exports=YRQ});var URQ=R((viY,$RQ)=>{var{Readable:GRQ,Duplex:iS0,PassThrough:nS0}=u("node:stream"),sS0=u("node:assert"),{AsyncResource:rS0}=u("node:async_hooks"),{InvalidArgumentError:Mq,InvalidReturnValueError:aS0,RequestAbortedError:dr}=QB(),qX=lQ(),{addSignal:oS0,removeSignal:tS0}=qq();function XRQ(){}var tK=Symbol("resume");class FRQ extends GRQ{constructor(){super({autoDestroy:!0});this[tK]=null}_read(){let{[tK]:A}=this;if(A)this[tK]=null,A()}_destroy(A,Q){this._read(),Q(A)}}class WRQ extends GRQ{constructor(A){super({autoDestroy:!0});this[tK]=A}_read(){this[tK]()}_destroy(A,Q){if(!A&&!this._readableState.endEmitted)A=new dr;Q(A)}}class ZRQ extends rS0{constructor(A,Q){if(!A||typeof A!=="object")throw new Mq("invalid opts");if(typeof Q!=="function")throw new Mq("invalid handler");let{signal:B,method:Y,opaque:J,onInfo:C,responseHeaders:X}=A;if(B&&typeof B.on!=="function"&&typeof B.addEventListener!=="function")throw new Mq("signal must be an EventEmitter or EventTarget");if(Y==="CONNECT")throw new Mq("invalid method");if(C&&typeof C!=="function")throw new Mq("invalid onInfo callback");super("UNDICI_PIPELINE");this.opaque=J||null,this.responseHeaders=X||null,this.handler=Q,this.abort=null,this.context=null,this.onInfo=C||null,this.req=new FRQ().on("error",XRQ),this.ret=new iS0({readableObjectMode:A.objectMode,autoDestroy:!0,read:()=>{let{body:G}=this;if(G?.resume)G.resume()},write:(G,F,W)=>{let{req:Z}=this;if(Z.push(G,F)||Z._readableState.destroyed)W();else Z[tK]=W},destroy:(G,F)=>{let{body:W,req:Z,res:U,ret:$,abort:E}=this;if(!G&&!$._readableState.endEmitted)G=new dr;if(E&&G)E();qX.destroy(W,G),qX.destroy(Z,G),qX.destroy(U,G),tS0(this),F(G)}}).on("prefinish",()=>{let{req:G}=this;G.push(null)}),this.res=null,oS0(this,B)}onConnect(A,Q){let{res:B}=this;if(this.reason){A(this.reason);return}sS0(!B,"pipeline cannot be retried"),this.abort=A,this.context=Q}onHeaders(A,Q,B){let{opaque:Y,handler:J,context:C}=this;if(A<200){if(this.onInfo){let G=this.responseHeaders==="raw"?qX.parseRawHeaders(Q):qX.parseHeaders(Q);this.onInfo({statusCode:A,headers:G})}return}this.res=new WRQ(B);let X;try{this.handler=null;let G=this.responseHeaders==="raw"?qX.parseRawHeaders(Q):qX.parseHeaders(Q);X=this.runInAsyncScope(J,null,{statusCode:A,headers:G,opaque:Y,body:this.res,context:C})}catch(G){throw this.res.on("error",XRQ),G}if(!X||typeof X.on!=="function")throw new aS0("expected Readable");X.on("data",(G)=>{let{ret:F,body:W}=this;if(!F.push(G)&&W.pause)W.pause()}).on("error",(G)=>{let{ret:F}=this;qX.destroy(F,G)}).on("end",()=>{let{ret:G}=this;G.push(null)}).on("close",()=>{let{ret:G}=this;if(!G._readableState.ended)qX.destroy(G,new dr)}),this.body=X}onData(A){let{res:Q}=this;return Q.push(A)}onComplete(A){let{res:Q}=this;Q.push(null)}onError(A){let{ret:Q}=this;this.handler=null,qX.destroy(Q,A)}}function eS0(A,Q){try{let B=new ZRQ(A,Q);return this.dispatch({...A,body:B.req},B),B.ret}catch(B){return new nS0().destroy(B)}}$RQ.exports=eS0});var NRQ=R((yiY,DRQ)=>{var{InvalidArgumentError:cr,SocketError:Ak0}=QB(),{AsyncResource:Qk0}=u("node:async_hooks"),ERQ=u("node:assert"),KRQ=lQ(),{addSignal:Bk0,removeSignal:VRQ}=qq();class IRQ extends Qk0{constructor(A,Q){if(!A||typeof A!=="object")throw new cr("invalid opts");if(typeof Q!=="function")throw new cr("invalid callback");let{signal:B,opaque:Y,responseHeaders:J}=A;if(B&&typeof B.on!=="function"&&typeof B.addEventListener!=="function")throw new cr("signal must be an EventEmitter or EventTarget");super("UNDICI_UPGRADE");this.responseHeaders=J||null,this.opaque=Y||null,this.callback=Q,this.abort=null,this.context=null,Bk0(this,B)}onConnect(A,Q){if(this.reason){A(this.reason);return}ERQ(this.callback),this.abort=A,this.context=null}onHeaders(){throw new Ak0("bad upgrade",null)}onUpgrade(A,Q,B){ERQ(A===101);let{callback:Y,opaque:J,context:C}=this;VRQ(this),this.callback=null;let X=this.responseHeaders==="raw"?KRQ.parseRawHeaders(Q):KRQ.parseHeaders(Q);this.runInAsyncScope(Y,null,null,{headers:X,socket:B,opaque:J,context:C})}onError(A){let{callback:Q,opaque:B}=this;if(VRQ(this),Q)this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(Q,null,A,{opaque:B})})}}function HRQ(A,Q){if(Q===void 0)return new Promise((B,Y)=>{HRQ.call(this,A,(J,C)=>{return J?Y(J):B(C)})});try{let B=new IRQ(A,Q),Y={...A,method:A.method||"GET",upgrade:A.protocol||"Websocket"};this.dispatch(Y,B)}catch(B){if(typeof Q!=="function")throw B;let Y=A?.opaque;queueMicrotask(()=>Q(B,{opaque:Y}))}}DRQ.exports=HRQ});var wRQ=R((giY,RRQ)=>{var Yk0=u("node:assert"),{AsyncResource:Jk0}=u("node:async_hooks"),{InvalidArgumentError:lr,SocketError:Ck0}=QB(),LRQ=lQ(),{addSignal:Xk0,removeSignal:qRQ}=qq();class MRQ extends Jk0{constructor(A,Q){if(!A||typeof A!=="object")throw new lr("invalid opts");if(typeof Q!=="function")throw new lr("invalid callback");let{signal:B,opaque:Y,responseHeaders:J}=A;if(B&&typeof B.on!=="function"&&typeof B.addEventListener!=="function")throw new lr("signal must be an EventEmitter or EventTarget");super("UNDICI_CONNECT");this.opaque=Y||null,this.responseHeaders=J||null,this.callback=Q,this.abort=null,Xk0(this,B)}onConnect(A,Q){if(this.reason){A(this.reason);return}Yk0(this.callback),this.abort=A,this.context=Q}onHeaders(){throw new Ck0("bad connect",null)}onUpgrade(A,Q,B){let{callback:Y,opaque:J,context:C}=this;qRQ(this),this.callback=null;let X=Q;if(X!=null)X=this.responseHeaders==="raw"?LRQ.parseRawHeaders(Q):LRQ.parseHeaders(Q);this.runInAsyncScope(Y,null,null,{statusCode:A,headers:X,socket:B,opaque:J,context:C})}onError(A){let{callback:Q,opaque:B}=this;if(qRQ(this),Q)this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(Q,null,A,{opaque:B})})}}function zRQ(A,Q){if(Q===void 0)return new Promise((B,Y)=>{zRQ.call(this,A,(J,C)=>{return J?Y(J):B(C)})});try{let B=new MRQ(A,Q),Y={...A,method:"CONNECT"};this.dispatch(Y,B)}catch(B){if(typeof Q!=="function")throw B;let Y=A?.opaque;queueMicrotask(()=>Q(B,{opaque:Y}))}}RRQ.exports=zRQ});var jRQ=R((Gk0,eK)=>{Gk0.request=o3Q();Gk0.stream=CRQ();Gk0.pipeline=URQ();Gk0.upgrade=NRQ();Gk0.connect=wRQ()});var pr=R((hiY,TRQ)=>{var{UndiciError:Ek0}=QB(),ORQ=Symbol.for("undici.error.UND_MOCK_ERR_MOCK_NOT_MATCHED");class PRQ extends Ek0{constructor(A){super(A);this.name="MockNotMatchedError",this.message=A||"The request does not match any registered mock dispatches",this.code="UND_MOCK_ERR_MOCK_NOT_MATCHED"}static[Symbol.hasInstance](A){return A&&A[ORQ]===!0}get[ORQ](){return!0}}TRQ.exports={MockNotMatchedError:PRQ}});var m$=R((xiY,SRQ)=>{SRQ.exports={kAgent:Symbol("agent"),kOptions:Symbol("options"),kFactory:Symbol("factory"),kDispatches:Symbol("dispatches"),kDispatchKey:Symbol("dispatch key"),kDefaultHeaders:Symbol("default headers"),kDefaultTrailers:Symbol("default trailers"),kContentLength:Symbol("content length"),kMockAgent:Symbol("mock agent"),kMockAgentSet:Symbol("mock agent set"),kMockAgentGet:Symbol("mock agent get"),kMockDispatch:Symbol("mock dispatch"),kClose:Symbol("close"),kOriginalClose:Symbol("original agent close"),kOriginalDispatch:Symbol("original dispatch"),kOrigin:Symbol("origin"),kIsMockActive:Symbol("is mock active"),kNetConnect:Symbol("net connect"),kGetNetConnect:Symbol("get net connect"),kConnected:Symbol("connected"),kIgnoreTrailingSlash:Symbol("ignore trailing slash"),kMockAgentMockCallHistoryInstance:Symbol("mock agent mock call history name"),kMockAgentRegisterCallHistory:Symbol("mock agent register mock call history"),kMockAgentAddCallHistoryLog:Symbol("mock agent add call history log"),kMockAgentIsCallHistoryEnabled:Symbol("mock agent is call history enabled"),kMockAgentAcceptsNonStandardSearchParameters:Symbol("mock agent accepts non standard search parameters"),kMockCallHistoryAddLog:Symbol("mock call history add log")}});var zq=R((fiY,uRQ)=>{var{MockNotMatchedError:AV}=pr(),{kDispatches:DS,kMockAgent:Kk0,kOriginalDispatch:Vk0,kOrigin:Ik0,kGetNetConnect:Hk0}=m$(),{serializePathWithQuery:Dk0}=lQ(),{STATUS_CODES:Nk0}=u("node:http"),{types:{isPromise:Lk0}}=u("node:util"),{InvalidArgumentError:ir}=QB();function MX(A,Q){if(typeof A==="string")return A===Q;if(A instanceof RegExp)return A.test(Q);if(typeof A==="function")return A(Q)===!0;return!1}function _RQ(A){return Object.fromEntries(Object.entries(A).map(([Q,B])=>{return[Q.toLocaleLowerCase(),B]}))}function vRQ(A,Q){if(Array.isArray(A)){for(let B=0;B"u")return!0;if(typeof Q!=="object"||typeof A.headers!=="object")return!1;for(let[B,Y]of Object.entries(A.headers)){let J=vRQ(Q,B);if(!MX(Y,J))return!1}return!0}function qk0(A){if(typeof A!=="string")return A;let Q=new URLSearchParams(A),B=new URLSearchParams;for(let[Y,J]of Q.entries()){if(Y=Y.replace("[]",""),/^(['"]).*\1$/.test(J)){B.append(Y,J);continue}if(J.includes(",")){let X=J.split(",");for(let G of X)B.append(Y,G);continue}B.append(Y,J)}return B}function nr(A){if(typeof A!=="string")return A;let Q=A.split("?",3);if(Q.length!==2)return A;let B=new URLSearchParams(Q.pop());return B.sort(),[...Q,B.toString()].join("?")}function Mk0(A,{path:Q,method:B,body:Y,headers:J}){let C=MX(A.path,Q),X=MX(A.method,B),G=typeof A.body<"u"?MX(A.body,Y):!0,F=yRQ(A,J);return C&&X&&G&&F}function gRQ(A){if(Buffer.isBuffer(A))return A;else if(A instanceof Uint8Array)return A;else if(A instanceof ArrayBuffer)return A;else if(typeof A==="object")return JSON.stringify(A);else if(A)return A.toString();else return""}function hRQ(A,Q){let B=Q.query?Dk0(Q.path,Q.query):Q.path,Y=typeof B==="string"?nr(B):B,J=kRQ(Y),C=A.filter(({consumed:X})=>!X).filter(({path:X,ignoreTrailingSlash:G})=>{return G?MX(kRQ(nr(X)),J):MX(nr(X),Y)});if(C.length===0)throw new AV(`Mock dispatch not matched for path '${Y}'`);if(C=C.filter(({method:X})=>MX(X,Q.method)),C.length===0)throw new AV(`Mock dispatch not matched for method '${Q.method}' on path '${Y}'`);if(C=C.filter(({body:X})=>typeof X<"u"?MX(X,Q.body):!0),C.length===0)throw new AV(`Mock dispatch not matched for body '${Q.body}' on path '${Y}'`);if(C=C.filter((X)=>yRQ(X,Q.headers)),C.length===0){let X=typeof Q.headers==="object"?JSON.stringify(Q.headers):Q.headers;throw new AV(`Mock dispatch not matched for headers '${X}' on path '${Y}'`)}return C[0]}function zk0(A,Q,B,Y){let J={timesInvoked:0,times:1,persist:!1,consumed:!1,...Y},C=typeof B==="function"?{callback:B}:{...B},X={...J,...Q,pending:!0,data:{error:null,...C}};return A.push(X),X}function sr(A,Q){let B=A.findIndex((Y)=>{if(!Y.consumed)return!1;return Mk0(Y,Q)});if(B!==-1)A.splice(B,1)}function kRQ(A){while(A.endsWith("/"))A=A.slice(0,-1);if(A.length===0)A="/";return A}function xRQ(A){let{path:Q,method:B,body:Y,headers:J,query:C}=A;return{path:Q,method:B,body:Y,headers:J,query:C}}function rr(A){let Q=Object.keys(A),B=[];for(let Y=0;Y=$,Y.pending=U<$,F!==null)return sr(this[DS],B),Q.onError(F),!0;if(typeof W==="number"&&W>0)setTimeout(()=>{E(this[DS])},W);else E(this[DS]);function E(I,V=C){let H=Array.isArray(A.headers)?ar(A.headers):A.headers,D=typeof V==="function"?V({...A,headers:H}):V;if(Lk0(D)){D.then((N)=>E(I,N));return}let L=gRQ(D),z=rr(X),M=rr(G);Q.onConnect?.((N)=>Q.onError(N),null),Q.onHeaders?.(J,z,K,fRQ(J)),Q.onData?.(Buffer.from(L)),Q.onComplete?.(M),sr(I,B)}function K(){}return!0}function wk0(){let A=this[Kk0],Q=this[Ik0],B=this[Vk0];return function(J,C){if(A.isMockActive)try{bRQ.call(this,J,C)}catch(X){if(X.code==="UND_MOCK_ERR_MOCK_NOT_MATCHED"){let G=A[Hk0]();if(G===!1)throw new AV(`${X.message}: subsequent request to origin ${Q} was not allowed (net.connect disabled)`);if(mRQ(G,Q))B.call(this,J,C);else throw new AV(`${X.message}: subsequent request to origin ${Q} was not allowed (net.connect is not enabled for this origin)`)}else throw X}else B.call(this,J,C)}}function mRQ(A,Q){let B=new URL(Q);if(A===!0)return!0;else if(Array.isArray(A)&&A.some((Y)=>MX(Y,B.host)))return!0;return!1}function jk0(A){let{agent:Q,...B}=A;if("enableCallHistory"in B&&typeof B.enableCallHistory!=="boolean")throw new ir("options.enableCallHistory must to be a boolean");if("acceptNonStandardSearchParameters"in B&&typeof B.acceptNonStandardSearchParameters!=="boolean")throw new ir("options.acceptNonStandardSearchParameters must to be a boolean");if("ignoreTrailingSlash"in B&&typeof B.ignoreTrailingSlash!=="boolean")throw new ir("options.ignoreTrailingSlash must to be a boolean");return B}uRQ.exports={getResponseData:gRQ,getMockDispatch:hRQ,addMockDispatch:zk0,deleteMockDispatch:sr,buildKey:xRQ,generateKeyValues:rr,matchValue:MX,getResponse:Rk0,getStatusText:fRQ,mockDispatch:bRQ,buildMockDispatch:wk0,checkNetConnect:mRQ,buildAndValidateMockOptions:jk0,getHeaderByName:vRQ,buildHeadersFromArray:ar,normalizeSearchParams:qk0}});var Ba=R((Sk0,Qa)=>{var{getResponseData:Ok0,buildKey:Pk0,addMockDispatch:or}=zq(),{kDispatches:NS,kDispatchKey:LS,kDefaultHeaders:tr,kDefaultTrailers:er,kContentLength:Aa,kMockDispatch:qS,kIgnoreTrailingSlash:MS}=m$(),{InvalidArgumentError:zX}=QB(),{serializePathWithQuery:Tk0}=lQ();class Rq{constructor(A){this[qS]=A}delay(A){if(typeof A!=="number"||!Number.isInteger(A)||A<=0)throw new zX("waitInMs must be a valid integer > 0");return this[qS].delay=A,this}persist(){return this[qS].persist=!0,this}times(A){if(typeof A!=="number"||!Number.isInteger(A)||A<=0)throw new zX("repeatTimes must be a valid integer > 0");return this[qS].times=A,this}}class dRQ{constructor(A,Q){if(typeof A!=="object")throw new zX("opts must be an object");if(typeof A.path>"u")throw new zX("opts.path must be defined");if(typeof A.method>"u")A.method="GET";if(typeof A.path==="string")if(A.query)A.path=Tk0(A.path,A.query);else{let B=new URL(A.path,"data://");A.path=B.pathname+B.search}if(typeof A.method==="string")A.method=A.method.toUpperCase();this[LS]=Pk0(A),this[NS]=Q,this[MS]=A.ignoreTrailingSlash??!1,this[tr]={},this[er]={},this[Aa]=!1}createMockScopeDispatchData({statusCode:A,data:Q,responseOptions:B}){let Y=Ok0(Q),J=this[Aa]?{"content-length":Y.length}:{},C={...this[tr],...J,...B.headers},X={...this[er],...B.trailers};return{statusCode:A,data:Q,headers:C,trailers:X}}validateReplyParameters(A){if(typeof A.statusCode>"u")throw new zX("statusCode must be defined");if(typeof A.responseOptions!=="object"||A.responseOptions===null)throw new zX("responseOptions must be an object")}reply(A){if(typeof A==="function"){let J=(X)=>{let G=A(X);if(typeof G!=="object"||G===null)throw new zX("reply options callback must return an object");let F={data:"",responseOptions:{},...G};return this.validateReplyParameters(F),{...this.createMockScopeDispatchData(F)}},C=or(this[NS],this[LS],J,{ignoreTrailingSlash:this[MS]});return new Rq(C)}let Q={statusCode:A,data:arguments[1]===void 0?"":arguments[1],responseOptions:arguments[2]===void 0?{}:arguments[2]};this.validateReplyParameters(Q);let B=this.createMockScopeDispatchData(Q),Y=or(this[NS],this[LS],B,{ignoreTrailingSlash:this[MS]});return new Rq(Y)}replyWithError(A){if(typeof A>"u")throw new zX("error must be defined");let Q=or(this[NS],this[LS],{error:A},{ignoreTrailingSlash:this[MS]});return new Rq(Q)}defaultReplyHeaders(A){if(typeof A>"u")throw new zX("headers must be defined");return this[tr]=A,this}defaultReplyTrailers(A){if(typeof A>"u")throw new zX("trailers must be defined");return this[er]=A,this}replyContentLength(){return this[Aa]=!0,this}}Sk0.MockInterceptor=dRQ;Sk0.MockScope=Rq});var Ca=R((biY,aRQ)=>{var{promisify:vk0}=u("node:util"),yk0=y$(),{buildMockDispatch:gk0}=zq(),{kDispatches:Ya,kMockAgent:cRQ,kClose:lRQ,kOriginalClose:pRQ,kOrigin:iRQ,kOriginalDispatch:hk0,kConnected:Ja,kIgnoreTrailingSlash:nRQ}=m$(),{MockInterceptor:xk0}=Ba(),sRQ=Q0(),{InvalidArgumentError:fk0}=QB();class rRQ extends yk0{constructor(A,Q){if(!Q||!Q.agent||typeof Q.agent.dispatch!=="function")throw new fk0("Argument opts.agent must implement Agent");super(A,Q);this[cRQ]=Q.agent,this[iRQ]=A,this[nRQ]=Q.ignoreTrailingSlash??!1,this[Ya]=[],this[Ja]=1,this[hk0]=this.dispatch,this[pRQ]=this.close.bind(this),this.dispatch=gk0.call(this),this.close=this[lRQ]}get[sRQ.kConnected](){return this[Ja]}intercept(A){return new xk0(A&&{ignoreTrailingSlash:this[nRQ],...A},this[Ya])}cleanMocks(){this[Ya]=[]}async[lRQ](){await vk0(this[pRQ])(),this[Ja]=0,this[cRQ][sRQ.kClients].delete(this[iRQ])}}aRQ.exports=rRQ});var Fa=R((dk0,Ga)=>{var{kMockCallHistoryAddLog:bk0}=m$(),{InvalidArgumentError:BW}=QB();function AW(A,Q,B,Y){switch(Q.operator){case"OR":return Y.push(...B(A)),Y;case"AND":return B.call({logs:Y},A);default:throw new BW("options.operator must to be a case insensitive string equal to 'OR' or 'AND'")}}function mk0(A={}){let Q={};if("operator"in A){if(typeof A.operator!=="string"||A.operator.toUpperCase()!=="OR"&&A.operator.toUpperCase()!=="AND")throw new BW("options.operator must to be a case insensitive string equal to 'OR' or 'AND'");return{...Q,operator:A.operator.toUpperCase()}}return Q}function QW(A){return(Q)=>{if(typeof Q==="string"||Q==null)return this.logs.filter((B)=>{return B[A]===Q});if(Q instanceof RegExp)return this.logs.filter((B)=>{return Q.test(B[A])});throw new BW(`${A} parameter should be one of string, regexp, undefined or null`)}}function uk0(A){try{let Q=new URL(A.path,A.origin);if(Q.search.length!==0)return Q;return Q.search=new URLSearchParams(A.query).toString(),Q}catch(Q){throw new BW("An error occurred when computing MockCallHistoryLog.url",{cause:Q})}}class Xa{constructor(A={}){this.body=A.body,this.headers=A.headers,this.method=A.method;let Q=uk0(A);this.fullUrl=Q.toString(),this.origin=Q.origin,this.path=Q.pathname,this.searchParams=Object.fromEntries(Q.searchParams),this.protocol=Q.protocol,this.host=Q.host,this.port=Q.port,this.hash=Q.hash}toMap(){return new Map([["protocol",this.protocol],["host",this.host],["port",this.port],["origin",this.origin],["path",this.path],["hash",this.hash],["searchParams",this.searchParams],["fullUrl",this.fullUrl],["method",this.method],["body",this.body],["headers",this.headers]])}toString(){let A={betweenKeyValueSeparator:"->",betweenPairSeparator:"|"},Q="";return this.toMap().forEach((B,Y)=>{if(typeof B==="string"||B===void 0||B===null)Q=`${Q}${Y}${A.betweenKeyValueSeparator}${B}${A.betweenPairSeparator}`;if(typeof B==="object"&&B!==null||Array.isArray(B))Q=`${Q}${Y}${A.betweenKeyValueSeparator}${JSON.stringify(B)}${A.betweenPairSeparator}`}),Q.slice(0,-1)}}class oRQ{logs=[];calls(){return this.logs}firstCall(){return this.logs.at(0)}lastCall(){return this.logs.at(-1)}nthCall(A){if(typeof A!=="number")throw new BW("nthCall must be called with a number");if(!Number.isInteger(A))throw new BW("nthCall must be called with an integer");if(Math.sign(A)!==1)throw new BW("nthCall must be called with a positive value. use firstCall or lastCall instead");return this.logs.at(A-1)}filterCalls(A,Q){if(this.logs.length===0)return this.logs;if(typeof A==="function")return this.logs.filter(A);if(A instanceof RegExp)return this.logs.filter((B)=>{return A.test(B.toString())});if(typeof A==="object"&&A!==null){if(Object.keys(A).length===0)return this.logs;let B={operator:"OR",...mk0(Q)},Y=[];if("protocol"in A)Y=AW(A.protocol,B,this.filterCallsByProtocol,Y);if("host"in A)Y=AW(A.host,B,this.filterCallsByHost,Y);if("port"in A)Y=AW(A.port,B,this.filterCallsByPort,Y);if("origin"in A)Y=AW(A.origin,B,this.filterCallsByOrigin,Y);if("path"in A)Y=AW(A.path,B,this.filterCallsByPath,Y);if("hash"in A)Y=AW(A.hash,B,this.filterCallsByHash,Y);if("fullUrl"in A)Y=AW(A.fullUrl,B,this.filterCallsByFullUrl,Y);if("method"in A)Y=AW(A.method,B,this.filterCallsByMethod,Y);return[...new Set(Y)]}throw new BW("criteria parameter should be one of function, regexp, or object")}filterCallsByProtocol=QW.call(this,"protocol");filterCallsByHost=QW.call(this,"host");filterCallsByPort=QW.call(this,"port");filterCallsByOrigin=QW.call(this,"origin");filterCallsByPath=QW.call(this,"path");filterCallsByHash=QW.call(this,"hash");filterCallsByFullUrl=QW.call(this,"fullUrl");filterCallsByMethod=QW.call(this,"method");clear(){this.logs=[]}[bk0](A){let Q=new Xa(A);return this.logs.push(Q),Q}*[Symbol.iterator](){for(let A of this.calls())yield A}}dk0.MockCallHistory=oRQ;dk0.MockCallHistoryLog=Xa});var $a=R((miY,CwQ)=>{var{promisify:pk0}=u("node:util"),ik0=iK(),{buildMockDispatch:nk0}=zq(),{kDispatches:Wa,kMockAgent:tRQ,kClose:eRQ,kOriginalClose:AwQ,kOrigin:QwQ,kOriginalDispatch:sk0,kConnected:Za,kIgnoreTrailingSlash:BwQ}=m$(),{MockInterceptor:rk0}=Ba(),YwQ=Q0(),{InvalidArgumentError:ak0}=QB();class JwQ extends ik0{constructor(A,Q){if(!Q||!Q.agent||typeof Q.agent.dispatch!=="function")throw new ak0("Argument opts.agent must implement Agent");super(A,Q);this[tRQ]=Q.agent,this[QwQ]=A,this[BwQ]=Q.ignoreTrailingSlash??!1,this[Wa]=[],this[Za]=1,this[sk0]=this.dispatch,this[AwQ]=this.close.bind(this),this.dispatch=nk0.call(this),this.close=this[eRQ]}get[YwQ.kConnected](){return this[Za]}intercept(A){return new rk0(A&&{ignoreTrailingSlash:this[BwQ],...A},this[Wa])}cleanMocks(){this[Wa]=[]}async[eRQ](){await pk0(this[AwQ])(),this[Za]=0,this[tRQ][YwQ.kClients].delete(this[QwQ])}}CwQ.exports=JwQ});var GwQ=R((uiY,XwQ)=>{var{Transform:ok0}=u("node:stream"),{Console:tk0}=u("node:console"),ek0=process.versions.icu?"✅":"Y ",A_0=process.versions.icu?"❌":"N ";XwQ.exports=class{constructor({disableColors:Q}={}){this.transform=new ok0({transform(B,Y,J){J(null,B)}}),this.logger=new tk0({stdout:this.transform,inspectOptions:{colors:!Q&&!process.env.CI}})}format(Q){let B=Q.map(({method:Y,path:J,data:{statusCode:C},persist:X,times:G,timesInvoked:F,origin:W})=>({Method:Y,Origin:W,Path:J,"Status code":C,Persistent:X?ek0:A_0,Invocations:F,Remaining:X?1/0:G-F}));return this.logger.table(B),this.transform.read().toString()}}});var Va=R((diY,KwQ)=>{var{kClients:u$}=Q0(),Q_0=x$(),{kAgent:Ua,kMockAgentSet:zS,kMockAgentGet:FwQ,kDispatches:Ea,kIsMockActive:RS,kNetConnect:d$,kGetNetConnect:B_0,kOptions:wS,kFactory:jS,kMockAgentRegisterCallHistory:Ka,kMockAgentIsCallHistoryEnabled:wq,kMockAgentAddCallHistoryLog:WwQ,kMockAgentMockCallHistoryInstance:QV,kMockAgentAcceptsNonStandardSearchParameters:ZwQ,kMockCallHistoryAddLog:Y_0,kIgnoreTrailingSlash:$wQ}=m$(),J_0=Ca(),C_0=$a(),{matchValue:X_0,normalizeSearchParams:G_0,buildAndValidateMockOptions:F_0}=zq(),{InvalidArgumentError:UwQ,UndiciError:W_0}=QB(),Z_0=iL(),$_0=GwQ(),{MockCallHistory:U_0}=Fa();class EwQ extends Z_0{constructor(A={}){super(A);let Q=F_0(A);if(this[d$]=!0,this[RS]=!0,this[wq]=Q.enableCallHistory??!1,this[ZwQ]=Q.acceptNonStandardSearchParameters??!1,this[$wQ]=Q.ignoreTrailingSlash??!1,A?.agent&&typeof A.agent.dispatch!=="function")throw new UwQ("Argument opts.agent must implement Agent");let B=A?.agent?A.agent:new Q_0(A);if(this[Ua]=B,this[u$]=B[u$],this[wS]=Q,this[wq])this[Ka]()}get(A){let Q=this[$wQ]?A.replace(/\/$/,""):A,B=this[FwQ](Q);if(!B)B=this[jS](Q),this[zS](Q,B);return B}dispatch(A,Q){this.get(A.origin),this[WwQ](A);let B=this[ZwQ],Y={...A};if(B&&Y.path){let[J,C]=Y.path.split("?"),X=G_0(C,B);Y.path=`${J}?${X}`}return this[Ua].dispatch(Y,Q)}async close(){this.clearCallHistory(),await this[Ua].close(),this[u$].clear()}deactivate(){this[RS]=!1}activate(){this[RS]=!0}enableNetConnect(A){if(typeof A==="string"||typeof A==="function"||A instanceof RegExp)if(Array.isArray(this[d$]))this[d$].push(A);else this[d$]=[A];else if(typeof A>"u")this[d$]=!0;else throw new UwQ("Unsupported matcher. Must be one of String|Function|RegExp.")}disableNetConnect(){this[d$]=!1}enableCallHistory(){return this[wq]=!0,this}disableCallHistory(){return this[wq]=!1,this}getCallHistory(){return this[QV]}clearCallHistory(){if(this[QV]!==void 0)this[QV].clear()}get isMockActive(){return this[RS]}[Ka](){if(this[QV]===void 0)this[QV]=new U_0}[WwQ](A){if(this[wq])this[Ka](),this[QV][Y_0](A)}[zS](A,Q){this[u$].set(A,{count:0,dispatcher:Q})}[jS](A){let Q=Object.assign({agent:this},this[wS]);return this[wS]&&this[wS].connections===1?new J_0(A,Q):new C_0(A,Q)}[FwQ](A){let Q=this[u$].get(A);if(Q?.dispatcher)return Q.dispatcher;if(typeof A!=="string"){let B=this[jS]("http://localhost:9999");return this[zS](A,B),B}for(let[B,Y]of Array.from(this[u$]))if(Y&&typeof B!=="string"&&X_0(B,A)){let J=this[jS](A);return this[zS](A,J),J[Ea]=Y.dispatcher[Ea],J}}[B_0](){return this[d$]}pendingInterceptors(){let A=this[u$];return Array.from(A.entries()).flatMap(([Q,B])=>B.dispatcher[Ea].map((Y)=>({...Y,origin:Q}))).filter(({pending:Q})=>Q)}assertNoPendingInterceptors({pendingInterceptorsFormatter:A=new $_0}={}){let Q=this.pendingInterceptors();if(Q.length===0)return;throw new W_0(Q.length===1?`1 interceptor is pending: +`,"latin1");if(Q!==null&&Y!==Q)if(B[Lr])throw new y$;else process.emitWarning(new y$);if(A[s0].timeout&&A[s0].timeoutType===nK){if(A[s0].timeout.refresh)A[s0].timeout.refresh()}B[iF]()}destroy(A){let{socket:Q,client:B,abort:Y}=this;if(Q[nF]=!1,A)wQ(B[vJ]<=1,"pipeline should only contain this request"),Y(A)}}S2Q.exports=NP0});var f2Q=R((BnY,x2Q)=>{var e5=u("node:assert"),{pipeline:SP0}=u("node:stream"),OB=lQ(),{RequestContentLengthMismatchError:wr,RequestAbortedError:kP0,SocketError:Zq,InformationalError:CS}=QB(),{kUrl:Wq,kReset:GS,kClient:h$,kRunning:FS,kPending:_P0,kQueue:sF,kPendingIdx:Or,kRunningIdx:F1,kError:W1,kSocket:$Y,kStrictContentLength:vP0,kOnError:WS,kMaxConcurrentStreams:g2Q,kHTTP2Session:N6,kResume:jG,kSize:yP0,kHTTPContext:Pr,kClosed:jr,kBodyTimeout:hP0}=Q0(),{channels:_2Q}=O$(),t5=Symbol("open streams"),v2Q,XS;try{XS=u("node:http2")}catch{XS={constants:{}}}var{constants:{HTTP2_HEADER_AUTHORITY:gP0,HTTP2_HEADER_METHOD:xP0,HTTP2_HEADER_PATH:fP0,HTTP2_HEADER_SCHEME:bP0,HTTP2_HEADER_CONTENT_LENGTH:mP0,HTTP2_HEADER_EXPECT:uP0,HTTP2_HEADER_STATUS:dP0}}=XS;function cP0(A){let Q=[];for(let[B,Y]of Object.entries(A))if(Array.isArray(Y))for(let J of Y)Q.push(Buffer.from(B),Buffer.from(J));else Q.push(Buffer.from(B),Buffer.from(Y));return Q}function lP0(A,Q){A[$Y]=Q;let B=XS.connect(A[Wq],{createConnection:()=>Q,peerMaxConcurrentStreams:A[g2Q],settings:{enablePush:!1}});return B[t5]=0,B[h$]=A,B[$Y]=Q,B[N6]=null,OB.addListener(B,"error",iP0),OB.addListener(B,"frameError",nP0),OB.addListener(B,"end",sP0),OB.addListener(B,"goaway",rP0),OB.addListener(B,"close",aP0),B.unref(),A[N6]=B,Q[N6]=B,OB.addListener(Q,"error",tP0),OB.addListener(Q,"end",eP0),OB.addListener(Q,"close",oP0),Q[jr]=!1,Q.on("close",AT0),{version:"h2",defaultPipelining:1/0,write(Y){return BT0(A,Y)},resume(){pP0(A)},destroy(Y,J){if(Q[jr])queueMicrotask(J);else Q.destroy(Y).on("close",J)},get destroyed(){return Q.destroyed},busy(){return!1}}}function pP0(A){let Q=A[$Y];if(Q?.destroyed===!1)if(A[yP0]===0||A[g2Q]===0)Q.unref(),A[N6].unref();else Q.ref(),A[N6].ref()}function iP0(A){e5(A.code!=="ERR_TLS_CERT_ALTNAME_INVALID"),this[$Y][W1]=A,this[h$][WS](A)}function nP0(A,Q,B){if(B===0){let Y=new CS(`HTTP/2: "frameError" received - type ${A}, code ${Q}`);this[$Y][W1]=Y,this[h$][WS](Y)}}function sP0(){let A=new Zq("other side closed",OB.getSocketInfo(this[$Y]));this.destroy(A),OB.destroy(this[$Y],A)}function rP0(A){let Q=this[W1]||new Zq(`HTTP/2: "GOAWAY" frame received with code ${A}`,OB.getSocketInfo(this[$Y])),B=this[h$];if(B[$Y]=null,B[Pr]=null,this.close(),this[N6]=null,OB.destroy(this[$Y],Q),B[F1]{if(Q.aborted||Q.completed)return;if(N=N||new kP0,OB.errorRequest(A,Q,N),K!=null)K.removeAllListeners("data"),K.close(),A[WS](N),A[jG]();OB.destroy($,N)};try{Q.onConnect(H)}catch(N){OB.errorRequest(A,Q,N)}if(Q.aborted)return!1;if(J==="CONNECT"){if(Y.ref(),K=Y.request(E,{endStream:!1,signal:W}),!K.pending)Q.onUpgrade(null,null,K),++Y[t5],A[sF][A[F1]++]=null;else K.once("ready",()=>{Q.onUpgrade(null,null,K),++Y[t5],A[sF][A[F1]++]=null});return K.once("close",()=>{if(Y[t5]-=1,Y[t5]===0)Y.unref()}),K.setTimeout(B),!0}E[fP0]=C,E[bP0]=Z==="http:"?"http":"https";let D=J==="PUT"||J==="POST"||J==="PATCH";if($&&typeof $.read==="function")$.read(0);let L=OB.bodyLength($);if(OB.isFormDataLike($)){v2Q??=lK().extractBody;let[N,q]=v2Q($);E["content-type"]=q,$=N.stream,L=N.length}if(L==null)L=Q.contentLength;if(L===0||!D)L=null;if(QT0(J)&&L>0&&Q.contentLength!=null&&Q.contentLength!==L){if(A[vP0])return OB.errorRequest(A,Q,new wr),!1;process.emitWarning(new wr)}if(L!=null)e5($,"no body must not have content length"),E[mP0]=`${L}`;if(Y.ref(),_2Q.sendHeaders.hasSubscribers){let N="";for(let q in E)N+=`${q}: ${E[q]}\r +`;_2Q.sendHeaders.publish({request:Q,headers:N,socket:Y[$Y]})}let z=J==="GET"||J==="HEAD"||$===null;if(F)E[uP0]="100-continue",K=Y.request(E,{endStream:z,signal:W}),K.once("continue",M);else K=Y.request(E,{endStream:z,signal:W}),M();return++Y[t5],K.setTimeout(B),K.once("response",(N)=>{let{[dP0]:q,...w}=N;if(Q.onResponseStarted(),Q.aborted){K.removeAllListeners("data");return}if(Q.onHeaders(Number(q),cP0(w),K.resume.bind(K),"")===!1)K.pause()}),K.on("data",(N)=>{if(Q.onData(N)===!1)K.pause()}),K.once("end",(N)=>{if(K.removeAllListeners("data"),K.state?.state==null||K.state.state<6){if(!Q.aborted&&!Q.completed)Q.onComplete({});A[sF][A[F1]++]=null,A[jG]()}else{if(--Y[t5],Y[t5]===0)Y.unref();H(N??new CS("HTTP/2: stream half-closed (remote)")),A[sF][A[F1]++]=null,A[Or]=A[F1],A[jG]()}}),K.once("close",()=>{if(K.removeAllListeners("data"),Y[t5]-=1,Y[t5]===0)Y.unref()}),K.once("error",function(N){K.removeAllListeners("data"),H(N)}),K.once("frameError",(N,q)=>{K.removeAllListeners("data"),H(new CS(`HTTP/2: "frameError" received - type ${N}, code ${q}`))}),K.on("aborted",()=>{K.removeAllListeners("data")}),K.on("timeout",()=>{let N=new CS(`HTTP/2: "stream timeout after ${B}"`);if(K.removeAllListeners("data"),Y[t5]-=1,Y[t5]===0)Y.unref();H(N)}),K.once("trailers",(N)=>{if(Q.aborted||Q.completed)return;Q.onComplete(N)}),!0;function M(){if(!$||L===0)y2Q(H,K,null,A,Q,A[$Y],L,D);else if(OB.isBuffer($))y2Q(H,K,$,A,Q,A[$Y],L,D);else if(OB.isBlobLike($))if(typeof $.stream==="function")h2Q(H,K,$.stream(),A,Q,A[$Y],L,D);else JT0(H,K,$,A,Q,A[$Y],L,D);else if(OB.isStream($))YT0(H,A[$Y],D,K,$,A,Q,L);else if(OB.isIterable($))h2Q(H,K,$,A,Q,A[$Y],L,D);else e5(!1)}}function y2Q(A,Q,B,Y,J,C,X,G){try{if(B!=null&&OB.isBuffer(B))e5(X===B.byteLength,"buffer body must have content length"),Q.cork(),Q.write(B),Q.uncork(),Q.end(),J.onBodySent(B);if(!G)C[GS]=!0;J.onRequestSent(),Y[jG]()}catch(F){A(F)}}function YT0(A,Q,B,Y,J,C,X,G){e5(G!==0||C[FS]===0,"stream body cannot be pipelined");let F=SP0(J,Y,(Z)=>{if(Z)OB.destroy(F,Z),A(Z);else{if(OB.removeAllListeners(F),X.onRequestSent(),!B)Q[GS]=!0;C[jG]()}});OB.addListener(F,"data",W);function W(Z){X.onBodySent(Z)}}async function JT0(A,Q,B,Y,J,C,X,G){e5(X===B.size,"blob body must have content length");try{if(X!=null&&X!==B.size)throw new wr;let F=Buffer.from(await B.arrayBuffer());if(Q.cork(),Q.write(F),Q.uncork(),Q.end(),J.onBodySent(F),J.onRequestSent(),!G)C[GS]=!0;Y[jG]()}catch(F){A(F)}}async function h2Q(A,Q,B,Y,J,C,X,G){e5(X!==0||Y[FS]===0,"iterator body cannot be pipelined");let F=null;function W(){if(F){let U=F;F=null,U()}}let Z=()=>new Promise((U,$)=>{if(e5(F===null),C[W1])$(C[W1]);else F=U});Q.on("close",W).on("drain",W);try{for await(let U of B){if(C[W1])throw C[W1];let $=Q.write(U);if(J.onBodySent(U),!$)await Z()}if(Q.end(),J.onRequestSent(),!G)C[GS]=!0;Y[jG]()}catch(U){A(U)}finally{Q.off("close",W).off("drain",W)}}x2Q.exports=lP0});var f$=R((YnY,s2Q)=>{var OG=u("node:assert"),c2Q=u("node:net"),$q=u("node:http"),g$=lQ(),{ClientStats:CT0}=is(),{channels:sK}=O$(),XT0=dMQ(),GT0=P$(),{InvalidArgumentError:UY,InformationalError:FT0,ClientDestroyedError:WT0}=QB(),ZT0=tL(),{kUrl:L6,kServerName:tF,kClient:$T0,kBusy:Tr,kConnect:UT0,kResuming:x$,kRunning:Vq,kPending:Iq,kSize:Uq,kQueue:Z1,kConnected:ET0,kConnecting:rK,kNeedDrain:aF,kKeepAliveDefaultTimeout:b2Q,kHostHeader:KT0,kPendingIdx:$1,kRunningIdx:PG,kError:VT0,kPipelining:ZS,kKeepAliveTimeoutValue:IT0,kMaxHeadersSize:HT0,kKeepAliveMaxTimeout:DT0,kKeepAliveTimeoutThreshold:NT0,kHeadersTimeout:LT0,kBodyTimeout:qT0,kStrictContentLength:MT0,kConnector:Eq,kMaxRequests:Sr,kCounter:zT0,kClose:RT0,kDestroy:wT0,kDispatch:jT0,kLocalAddress:Kq,kMaxResponseSize:OT0,kOnError:PT0,kHTTPContext:EY,kMaxConcurrentStreams:TT0,kResume:oF}=Q0(),ST0=k2Q(),kT0=f2Q(),rF=Symbol("kClosedResolve"),_T0=$q&&$q.maxHeaderSize&&Number.isInteger($q.maxHeaderSize)&&$q.maxHeaderSize>0?()=>$q.maxHeaderSize:()=>{throw new UY("http module not available or http.maxHeaderSize invalid")},m2Q=()=>{};function l2Q(A){return A[ZS]??A[EY]?.defaultPipelining??1}class p2Q extends GT0{constructor(A,{maxHeaderSize:Q,headersTimeout:B,socketTimeout:Y,requestTimeout:J,connectTimeout:C,bodyTimeout:X,idleTimeout:G,keepAlive:F,keepAliveTimeout:W,maxKeepAliveTimeout:Z,keepAliveMaxTimeout:U,keepAliveTimeoutThreshold:$,socketPath:E,pipelining:K,tls:I,strictContentLength:V,maxCachedSessions:H,connect:D,maxRequestsPerClient:L,localAddress:z,maxResponseSize:M,autoSelectFamily:N,autoSelectFamilyAttemptTimeout:q,maxConcurrentStreams:w,allowH2:P}={}){if(F!==void 0)throw new UY("unsupported keepAlive, use pipelining=0 instead");if(Y!==void 0)throw new UY("unsupported socketTimeout, use headersTimeout & bodyTimeout instead");if(J!==void 0)throw new UY("unsupported requestTimeout, use headersTimeout & bodyTimeout instead");if(G!==void 0)throw new UY("unsupported idleTimeout, use keepAliveTimeout instead");if(Z!==void 0)throw new UY("unsupported maxKeepAliveTimeout, use keepAliveMaxTimeout instead");if(Q!=null){if(!Number.isInteger(Q)||Q<1)throw new UY("invalid maxHeaderSize")}else Q=_T0();if(E!=null&&typeof E!=="string")throw new UY("invalid socketPath");if(C!=null&&(!Number.isFinite(C)||C<0))throw new UY("invalid connectTimeout");if(W!=null&&(!Number.isFinite(W)||W<=0))throw new UY("invalid keepAliveTimeout");if(U!=null&&(!Number.isFinite(U)||U<=0))throw new UY("invalid keepAliveMaxTimeout");if($!=null&&!Number.isFinite($))throw new UY("invalid keepAliveTimeoutThreshold");if(B!=null&&(!Number.isInteger(B)||B<0))throw new UY("headersTimeout must be a positive integer or zero");if(X!=null&&(!Number.isInteger(X)||X<0))throw new UY("bodyTimeout must be a positive integer or zero");if(D!=null&&typeof D!=="function"&&typeof D!=="object")throw new UY("connect must be a function or an object");if(L!=null&&(!Number.isInteger(L)||L<0))throw new UY("maxRequestsPerClient must be a positive number");if(z!=null&&(typeof z!=="string"||c2Q.isIP(z)===0))throw new UY("localAddress must be valid string IP address");if(M!=null&&(!Number.isInteger(M)||M<-1))throw new UY("maxResponseSize must be a positive number");if(q!=null&&(!Number.isInteger(q)||q<-1))throw new UY("autoSelectFamilyAttemptTimeout must be a positive number");if(P!=null&&typeof P!=="boolean")throw new UY("allowH2 must be a valid boolean value");if(w!=null&&(typeof w!=="number"||w<1))throw new UY("maxConcurrentStreams must be a positive integer, greater than 0");super();if(typeof D!=="function")D=ZT0({...I,maxCachedSessions:H,allowH2:P,socketPath:E,timeout:C,...typeof N==="boolean"?{autoSelectFamily:N,autoSelectFamilyAttemptTimeout:q}:void 0,...D});this[L6]=g$.parseOrigin(A),this[Eq]=D,this[ZS]=K!=null?K:1,this[HT0]=Q,this[b2Q]=W==null?4000:W,this[DT0]=U==null?600000:U,this[NT0]=$==null?2000:$,this[IT0]=this[b2Q],this[tF]=null,this[Kq]=z!=null?z:null,this[x$]=0,this[aF]=0,this[KT0]=`host: ${this[L6].hostname}${this[L6].port?`:${this[L6].port}`:""}\r +`,this[qT0]=X!=null?X:300000,this[LT0]=B!=null?B:300000,this[MT0]=V==null?!0:V,this[Sr]=L,this[rF]=null,this[OT0]=M>-1?M:-1,this[TT0]=w!=null?w:100,this[EY]=null,this[Z1]=[],this[PG]=0,this[$1]=0,this[oF]=(_)=>kr(this,_),this[PT0]=(_)=>i2Q(this,_)}get pipelining(){return this[ZS]}set pipelining(A){this[ZS]=A,this[oF](!0)}get stats(){return new CT0(this)}get[Iq](){return this[Z1].length-this[$1]}get[Vq](){return this[$1]-this[PG]}get[Uq](){return this[Z1].length-this[PG]}get[ET0](){return!!this[EY]&&!this[rK]&&!this[EY].destroyed}get[Tr](){return Boolean(this[EY]?.busy(null)||this[Uq]>=(l2Q(this)||1)||this[Iq]>0)}[UT0](A){n2Q(this),this.once("connect",A)}[jT0](A,Q){let B=new XT0(this[L6].origin,A,Q);if(this[Z1].push(B),this[x$]);else if(g$.bodyLength(B.body)==null&&g$.isIterable(B.body))this[x$]=1,queueMicrotask(()=>kr(this));else this[oF](!0);if(this[x$]&&this[aF]!==2&&this[Tr])this[aF]=2;return this[aF]<2}[RT0](){return new Promise((A)=>{if(this[Uq])this[rF]=A;else A(null)})}[wT0](A){return new Promise((Q)=>{let B=this[Z1].splice(this[$1]);for(let J=0;J{if(this[rF])this[rF](),this[rF]=null;Q(null)};if(this[EY])this[EY].destroy(A,Y),this[EY]=null;else queueMicrotask(Y);this[oF]()})}}function i2Q(A,Q){if(A[Vq]===0&&Q.code!=="UND_ERR_INFO"&&Q.code!=="UND_ERR_SOCKET"){OG(A[$1]===A[PG]);let B=A[Z1].splice(A[PG]);for(let Y=0;Y{if(C){u2Q(A,C,{host:Q,hostname:B,protocol:Y,port:J}),A[oF]();return}if(A.destroyed){g$.destroy(X.on("error",m2Q),new WT0),A[oF]();return}OG(X);try{A[EY]=X.alpnProtocol==="h2"?kT0(A,X):ST0(A,X)}catch(G){X.destroy().on("error",m2Q),u2Q(A,G,{host:Q,hostname:B,protocol:Y,port:J}),A[oF]();return}if(A[rK]=!1,X[zT0]=0,X[Sr]=A[Sr],X[$T0]=A,X[VT0]=null,sK.connected.hasSubscribers)sK.connected.publish({connectParams:{host:Q,hostname:B,protocol:Y,port:J,version:A[EY]?.version,servername:A[tF],localAddress:A[Kq]},connector:A[Eq],socket:X});A.emit("connect",A[L6],[A]),A[oF]()})}function u2Q(A,Q,{host:B,hostname:Y,protocol:J,port:C}){if(A.destroyed)return;if(A[rK]=!1,sK.connectError.hasSubscribers)sK.connectError.publish({connectParams:{host:B,hostname:Y,protocol:J,port:C,version:A[EY]?.version,servername:A[tF],localAddress:A[Kq]},connector:A[Eq],error:Q});if(Q.code==="ERR_TLS_CERT_ALTNAME_INVALID"){OG(A[Vq]===0);while(A[Iq]>0&&A[Z1][A[$1]].servername===A[tF]){let X=A[Z1][A[$1]++];g$.errorRequest(A,X,Q)}}else i2Q(A,Q);A.emit("connectionError",A[L6],[A],Q)}function d2Q(A){A[aF]=0,A.emit("drain",A[L6],[A])}function kr(A,Q){if(A[x$]===2)return;if(A[x$]=2,vT0(A,Q),A[x$]=0,A[PG]>256)A[Z1].splice(0,A[PG]),A[$1]-=A[PG],A[PG]=0}function vT0(A,Q){while(!0){if(A.destroyed){OG(A[Iq]===0);return}if(A[rF]&&!A[Uq]){A[rF](),A[rF]=null;return}if(A[EY])A[EY].resume();if(A[Tr])A[aF]=2;else if(A[aF]===2){if(Q)A[aF]=1,queueMicrotask(()=>d2Q(A));else d2Q(A);continue}if(A[Iq]===0)return;if(A[Vq]>=(l2Q(A)||1))return;let B=A[Z1][A[$1]];if(A[L6].protocol==="https:"&&A[tF]!==B.servername){if(A[Vq]>0)return;A[tF]=B.servername,A[EY]?.destroy(new FT0("servername changed"),()=>{A[EY]=null,kr(A)})}if(A[rK])return;if(!A[EY]){n2Q(A);return}if(A[EY].destroyed)return;if(A[EY].busy(B))return;if(!B.aborted&&A[EY].write(B))A[$1]++;else A[Z1].splice(A[$1],1)}}s2Q.exports=p2Q});var vr=R((JnY,r2Q)=>{class _r{bottom=0;top=0;list=Array(2048).fill(void 0);next=null;isEmpty(){return this.top===this.bottom}isFull(){return(this.top+1&2047)===this.bottom}push(A){this.list[this.top]=A,this.top=this.top+1&2047}shift(){let A=this.list[this.bottom];if(A===void 0)return null;return this.list[this.bottom]=void 0,this.bottom=this.bottom+1&2047,A}}r2Q.exports=class{constructor(){this.head=this.tail=new _r}isEmpty(){return this.head.isEmpty()}push(Q){if(this.head.isFull())this.head=this.head.next=new _r;this.head.push(Q)}shift(){let Q=this.tail,B=Q.shift();if(Q.isEmpty()&&Q.next!==null)this.tail=Q.next,Q.next=null;return B}}});var fr=R((CnY,C3Q)=>{var{PoolStats:yT0}=is(),hT0=P$(),gT0=vr(),{kConnected:yr,kSize:a2Q,kRunning:o2Q,kPending:t2Q,kQueued:Hq,kBusy:xT0,kFree:fT0,kUrl:bT0,kClose:mT0,kDestroy:uT0,kDispatch:dT0}=Q0(),qY=Symbol("clients"),D9=Symbol("needDrain"),Dq=Symbol("queue"),hr=Symbol("closed resolve"),gr=Symbol("onDrain"),e2Q=Symbol("onConnect"),A3Q=Symbol("onDisconnect"),Q3Q=Symbol("onConnectionError"),xr=Symbol("get dispatcher"),B3Q=Symbol("add client"),Y3Q=Symbol("remove client");class J3Q extends hT0{[Dq]=new gT0;[Hq]=0;[qY]=[];[D9]=!1;[gr](A,Q,B){let Y=this[Dq],J=!1;while(!J){let C=Y.shift();if(!C)break;this[Hq]--,J=!A.dispatch(C.opts,C.handler)}if(A[D9]=J,!J&&this[D9])this[D9]=!1,this.emit("drain",Q,[this,...B]);if(this[hr]&&Y.isEmpty()){let C=Array(this[qY].length);for(let X=0;X{this.emit("connect",A,[this,...Q])};[A3Q]=(A,Q,B)=>{this.emit("disconnect",A,[this,...Q],B)};[Q3Q]=(A,Q,B)=>{this.emit("connectionError",A,[this,...Q],B)};get[xT0](){return this[D9]}get[yr](){let A=0;for(let{[yr]:Q}of this[qY])A+=Q;return A}get[fT0](){let A=0;for(let{[yr]:Q,[D9]:B}of this[qY])A+=Q&&!B;return A}get[t2Q](){let A=this[Hq];for(let{[t2Q]:Q}of this[qY])A+=Q;return A}get[o2Q](){let A=0;for(let{[o2Q]:Q}of this[qY])A+=Q;return A}get[a2Q](){let A=this[Hq];for(let{[a2Q]:Q}of this[qY])A+=Q;return A}get stats(){return new yT0(this)}[mT0](){if(this[Dq].isEmpty()){let A=Array(this[qY].length);for(let Q=0;Q{this[hr]=A})}[uT0](A){while(!0){let B=this[Dq].shift();if(!B)break;B.handler.onError(A)}let Q=Array(this[qY].length);for(let B=0;B{if(this[D9])this[gr](A,A[bT0],[A,this])});return this}[Y3Q](A){A.close(()=>{let Q=this[qY].indexOf(A);if(Q!==-1)this[qY].splice(Q,1)}),this[D9]=this[qY].some((Q)=>!Q[D9]&&Q.closed!==!0&&Q.destroyed!==!0)}}C3Q.exports={PoolBase:J3Q,kClients:qY,kNeedDrain:D9,kAddClient:B3Q,kRemoveClient:Y3Q,kGetDispatcher:xr}});var aK=R((XnY,Z3Q)=>{var{PoolBase:cT0,kClients:$S,kNeedDrain:lT0,kAddClient:pT0,kGetDispatcher:iT0,kRemoveClient:nT0}=fr(),sT0=f$(),{InvalidArgumentError:br}=QB(),X3Q=lQ(),{kUrl:G3Q}=Q0(),rT0=tL(),US=Symbol("options"),mr=Symbol("connections"),F3Q=Symbol("factory");function aT0(A,Q){return new sT0(A,Q)}class W3Q extends cT0{constructor(A,{connections:Q,factory:B=aT0,connect:Y,connectTimeout:J,tls:C,maxCachedSessions:X,socketPath:G,autoSelectFamily:F,autoSelectFamilyAttemptTimeout:W,allowH2:Z,clientTtl:U,...$}={}){if(Q!=null&&(!Number.isFinite(Q)||Q<0))throw new br("invalid connections");if(typeof B!=="function")throw new br("factory must be a function.");if(Y!=null&&typeof Y!=="function"&&typeof Y!=="object")throw new br("connect must be a function or an object");if(typeof Y!=="function")Y=rT0({...C,maxCachedSessions:X,allowH2:Z,socketPath:G,timeout:J,...typeof F==="boolean"?{autoSelectFamily:F,autoSelectFamilyAttemptTimeout:W}:void 0,...Y});super();this[mr]=Q||null,this[G3Q]=X3Q.parseOrigin(A),this[US]={...X3Q.deepClone($),connect:Y,allowH2:Z,clientTtl:U},this[US].interceptors=$.interceptors?{...$.interceptors}:void 0,this[F3Q]=B,this.on("connect",(E,K)=>{if(U!=null&&U>0)for(let I of K)Object.assign(I,{ttl:Date.now()})}),this.on("connectionError",(E,K,I)=>{for(let V of K){let H=this[$S].indexOf(V);if(H!==-1)this[$S].splice(H,1)}})}[iT0](){let A=this[US].clientTtl;for(let Q of this[$S])if(A!=null&&A>0&&Q.ttl&&Date.now()-Q.ttl>A)this[nT0](Q);else if(!Q[lT0])return Q;if(!this[mr]||this[$S].length{var{BalancedPoolMissingUpstreamError:oT0,InvalidArgumentError:tT0}=QB(),{PoolBase:eT0,kClients:yJ,kNeedDrain:Nq,kAddClient:AS0,kRemoveClient:QS0,kGetDispatcher:BS0}=fr(),YS0=aK(),{kUrl:ur}=Q0(),{parseOrigin:$3Q}=lQ(),U3Q=Symbol("factory"),ES=Symbol("options"),E3Q=Symbol("kGreatestCommonDivisor"),b$=Symbol("kCurrentWeight"),m$=Symbol("kIndex"),AC=Symbol("kWeight"),KS=Symbol("kMaxWeightPerServer"),VS=Symbol("kErrorPenalty");function JS0(A,Q){if(A===0)return Q;while(Q!==0){let B=Q;Q=A%Q,A=B}return A}function CS0(A,Q){return new YS0(A,Q)}class K3Q extends eT0{constructor(A=[],{factory:Q=CS0,...B}={}){if(typeof Q!=="function")throw new tT0("factory must be a function.");super();if(this[ES]=B,this[m$]=-1,this[b$]=0,this[KS]=this[ES].maxWeightPerServer||100,this[VS]=this[ES].errorPenalty||15,!Array.isArray(A))A=[A];this[U3Q]=Q;for(let Y of A)this.addUpstream(Y);this._updateBalancedPoolStats()}addUpstream(A){let Q=$3Q(A).origin;if(this[yJ].find((Y)=>Y[ur].origin===Q&&Y.closed!==!0&&Y.destroyed!==!0))return this;let B=this[U3Q](Q,Object.assign({},this[ES]));this[AS0](B),B.on("connect",()=>{B[AC]=Math.min(this[KS],B[AC]+this[VS])}),B.on("connectionError",()=>{B[AC]=Math.max(1,B[AC]-this[VS]),this._updateBalancedPoolStats()}),B.on("disconnect",(...Y)=>{let J=Y[2];if(J&&J.code==="UND_ERR_SOCKET")B[AC]=Math.max(1,B[AC]-this[VS]),this._updateBalancedPoolStats()});for(let Y of this[yJ])Y[AC]=this[KS];return this._updateBalancedPoolStats(),this}_updateBalancedPoolStats(){let A=0;for(let Q=0;QY[ur].origin===Q&&Y.closed!==!0&&Y.destroyed!==!0);if(B)this[QS0](B);return this}get upstreams(){return this[yJ].filter((A)=>A.closed!==!0&&A.destroyed!==!0).map((A)=>A[ur].origin)}[BS0](){if(this[yJ].length===0)throw new oT0;if(!this[yJ].find((J)=>!J[Nq]&&J.closed!==!0&&J.destroyed!==!0))return;if(this[yJ].map((J)=>J[Nq]).reduce((J,C)=>J&&C,!0))return;let B=0,Y=this[yJ].findIndex((J)=>!J[Nq]);while(B++this[yJ][Y][AC]&&!J[Nq])Y=this[m$];if(this[m$]===0){if(this[b$]=this[b$]-this[E3Q],this[b$]<=0)this[b$]=this[KS]}if(J[AC]>=this[b$]&&!J[Nq])return J}return this[b$]=this[yJ][Y][AC],this[m$]=Y,this[yJ][Y]}}V3Q.exports=K3Q});var u$=R((FnY,R3Q)=>{var{InvalidArgumentError:IS,MaxOriginsReachedError:XS0}=QB(),{kClients:QC,kRunning:H3Q,kClose:GS0,kDestroy:FS0,kDispatch:WS0,kUrl:ZS0}=Q0(),$S0=P$(),US0=aK(),ES0=f$(),KS0=lQ(),D3Q=Symbol("onConnect"),N3Q=Symbol("onDisconnect"),L3Q=Symbol("onConnectionError"),q3Q=Symbol("onDrain"),M3Q=Symbol("factory"),dr=Symbol("options"),Lq=Symbol("origins");function VS0(A,Q){return Q&&Q.connections===1?new ES0(A,Q):new US0(A,Q)}class z3Q extends $S0{constructor({factory:A=VS0,maxOrigins:Q=1/0,connect:B,...Y}={}){if(typeof A!=="function")throw new IS("factory must be a function.");if(B!=null&&typeof B!=="function"&&typeof B!=="object")throw new IS("connect must be a function or an object");if(typeof Q!=="number"||Number.isNaN(Q)||Q<=0)throw new IS("maxOrigins must be a number greater than 0");super();if(B&&typeof B!=="function")B={...B};this[dr]={...KS0.deepClone(Y),maxOrigins:Q,connect:B},this[M3Q]=A,this[QC]=new Map,this[Lq]=new Set,this[q3Q]=(J,C)=>{this.emit("drain",J,[this,...C])},this[D3Q]=(J,C)=>{this.emit("connect",J,[this,...C])},this[N3Q]=(J,C,X)=>{this.emit("disconnect",J,[this,...C],X)},this[L3Q]=(J,C,X)=>{this.emit("connectionError",J,[this,...C],X)}}get[H3Q](){let A=0;for(let{dispatcher:Q}of this[QC].values())A+=Q[H3Q];return A}[WS0](A,Q){let B;if(A.origin&&(typeof A.origin==="string"||A.origin instanceof URL))B=String(A.origin);else throw new IS("opts.origin must be a non-empty string or URL.");if(this[Lq].size>=this[dr].maxOrigins&&!this[Lq].has(B))throw new XS0;let Y=this[QC].get(B),J=Y&&Y.dispatcher;if(!J){let C=(X)=>{let G=this[QC].get(B);if(G){if(X)G.count-=1;if(G.count<=0)this[QC].delete(B),G.dispatcher.close();this[Lq].delete(B)}};J=this[M3Q](A.origin,this[dr]).on("drain",this[q3Q]).on("connect",(X,G)=>{let F=this[QC].get(B);if(F)F.count+=1;this[D3Q](X,G)}).on("disconnect",(X,G,F)=>{C(!0),this[N3Q](X,G,F)}).on("connectionError",(X,G,F)=>{C(!1),this[L3Q](X,G,F)}),this[QC].set(B,{count:0,dispatcher:J}),this[Lq].add(B)}return J.dispatch(A,Q)}[GS0](){let A=[];for(let{dispatcher:Q}of this[QC].values())A.push(Q.close());return this[QC].clear(),Promise.all(A)}[FS0](A){let Q=[];for(let{dispatcher:B}of this[QC].values())Q.push(B.destroy(A));return this[QC].clear(),Promise.all(Q)}get stats(){let A={};for(let{dispatcher:Q}of this[QC].values())if(Q.stats)A[Q[ZS0].origin]=Q.stats;return A}}R3Q.exports=z3Q});var pr=R((WnY,x3Q)=>{var{kProxy:cr,kClose:S3Q,kDestroy:k3Q,kDispatch:w3Q}=Q0(),IS0=u$(),_3Q=aK(),v3Q=P$(),{InvalidArgumentError:oK,RequestAbortedError:HS0,SecureProxyConnectionError:DS0}=QB(),j3Q=tL(),y3Q=f$(),HS=Symbol("proxy agent"),DS=Symbol("proxy client"),eF=Symbol("proxy headers"),lr=Symbol("request tls settings"),O3Q=Symbol("proxy tls settings"),P3Q=Symbol("connect endpoint function"),T3Q=Symbol("tunnel proxy");function NS0(A){return A==="https:"?443:80}function LS0(A,Q){return new _3Q(A,Q)}var qS0=()=>{};function MS0(A,Q){if(Q.connections===1)return new y3Q(A,Q);return new _3Q(A,Q)}class h3Q extends v3Q{#A;constructor(A,{headers:Q={},connect:B,factory:Y}){if(!A)throw new oK("Proxy URL is mandatory");super();if(this[eF]=Q,Y)this.#A=Y(A,{connect:B});else this.#A=new y3Q(A,{connect:B})}[w3Q](A,Q){let B=Q.onHeaders;Q.onHeaders=function(X,G,F){if(X===407){if(typeof Q.onError==="function")Q.onError(new oK("Proxy Authentication Required (407)"));return}if(B)B.call(this,X,G,F)};let{origin:Y,path:J="/",headers:C={}}=A;if(A.path=Y+J,!("host"in C)&&!("Host"in C)){let{host:X}=new URL(Y);C.host=X}return A.headers={...this[eF],...C},this.#A[w3Q](A,Q)}[S3Q](){return this.#A.close()}[k3Q](A){return this.#A.destroy(A)}}class g3Q extends v3Q{constructor(A){if(!A||typeof A==="object"&&!(A instanceof URL)&&!A.uri)throw new oK("Proxy uri is mandatory");let{clientFactory:Q=LS0}=A;if(typeof Q!=="function")throw new oK("Proxy opts.clientFactory must be a function.");let{proxyTunnel:B=!0}=A;super();let Y=this.#A(A),{href:J,origin:C,port:X,protocol:G,username:F,password:W,hostname:Z}=Y;if(this[cr]={uri:J,protocol:G},this[lr]=A.requestTls,this[O3Q]=A.proxyTls,this[eF]=A.headers||{},this[T3Q]=B,A.auth&&A.token)throw new oK("opts.auth cannot be used in combination with opts.token");else if(A.auth)this[eF]["proxy-authorization"]=`Basic ${A.auth}`;else if(A.token)this[eF]["proxy-authorization"]=A.token;else if(F&&W)this[eF]["proxy-authorization"]=`Basic ${Buffer.from(`${decodeURIComponent(F)}:${decodeURIComponent(W)}`).toString("base64")}`;let U=j3Q({...A.proxyTls});this[P3Q]=j3Q({...A.requestTls});let $=A.factory||MS0,E=(K,I)=>{let{protocol:V}=new URL(K);if(!this[T3Q]&&V==="http:"&&this[cr].protocol==="http:")return new h3Q(this[cr].uri,{headers:this[eF],connect:U,factory:$});return $(K,I)};this[DS]=Q(Y,{connect:U}),this[HS]=new IS0({...A,factory:E,connect:async(K,I)=>{let V=K.host;if(!K.port)V+=`:${NS0(K.protocol)}`;try{let{socket:H,statusCode:D}=await this[DS].connect({origin:C,port:X,path:V,signal:K.signal,headers:{...this[eF],host:K.host,...K.connections==null||K.connections>0?{"proxy-connection":"keep-alive"}:{}},servername:this[O3Q]?.servername||Z});if(D!==200)H.on("error",qS0).destroy(),I(new HS0(`Proxy response (${D}) !== 200 when HTTP Tunneling`));if(K.protocol!=="https:"){I(null,H);return}let L;if(this[lr])L=this[lr].servername;else L=K.servername;this[P3Q]({...K,servername:L,httpSocket:H},I)}catch(H){if(H.code==="ERR_TLS_CERT_ALTNAME_INVALID")I(new DS0(H));else I(H)}}})}dispatch(A,Q){let B=zS0(A.headers);if(RS0(B),B&&!("host"in B)&&!("Host"in B)){let{host:Y}=new URL(A.origin);B.host=Y}return this[HS].dispatch({...A,headers:B},Q)}#A(A){if(typeof A==="string")return new URL(A);else if(A instanceof URL)return A;else return new URL(A.uri)}[S3Q](){return Promise.all([this[HS].close(),this[DS].close()])}[k3Q](){return Promise.all([this[HS].destroy(),this[DS].destroy()])}}function zS0(A){if(Array.isArray(A)){let Q={};for(let B=0;BB.toLowerCase()==="proxy-authorization"))throw new oK("Proxy-Authorization should be sent in ProxyAgent constructor")}x3Q.exports=g3Q});var c3Q=R((ZnY,d3Q)=>{var wS0=P$(),{kClose:jS0,kDestroy:OS0,kClosed:f3Q,kDestroyed:b3Q,kDispatch:PS0,kNoProxyAgent:qq,kHttpProxyAgent:AW,kHttpsProxyAgent:d$}=Q0(),m3Q=pr(),TS0=u$(),SS0={"http:":80,"https:":443};class u3Q extends wS0{#A=null;#Q=null;#B=null;constructor(A={}){super();this.#B=A;let{httpProxy:Q,httpsProxy:B,noProxy:Y,...J}=A;this[qq]=new TS0(J);let C=Q??process.env.http_proxy??process.env.HTTP_PROXY;if(C)this[AW]=new m3Q({...J,uri:C});else this[AW]=this[qq];let X=B??process.env.https_proxy??process.env.HTTPS_PROXY;if(X)this[d$]=new m3Q({...J,uri:X});else this[d$]=this[AW];this.#C()}[PS0](A,Q){let B=new URL(A.origin);return this.#Y(B).dispatch(A,Q)}[jS0](){return Promise.all([this[qq].close(),!this[AW][f3Q]&&this[AW].close(),!this[d$][f3Q]&&this[d$].close()])}[OS0](A){return Promise.all([this[qq].destroy(A),!this[AW][b3Q]&&this[AW].destroy(A),!this[d$][b3Q]&&this[d$].destroy(A)])}#Y(A){let{protocol:Q,host:B,port:Y}=A;if(B=B.replace(/:\d*$/,"").toLowerCase(),Y=Number.parseInt(Y,10)||SS0[Q]||0,!this.#J(B,Y))return this[qq];if(Q==="https:")return this[d$];return this[AW]}#J(A,Q){if(this.#F)this.#C();if(this.#Q.length===0)return!0;if(this.#A==="*")return!1;for(let B=0;B{var tK=u("node:assert"),{kRetryHandlerDefaultRetry:l3Q}=Q0(),{RequestRetryError:Mq}=QB(),kS0=rL(),{isDisturbed:p3Q,parseRangeHeader:i3Q,wrapRequestBody:_S0}=lQ();function vS0(A){let Q=new Date(A).getTime();return isNaN(Q)?0:Q-Date.now()}class ir{constructor(A,{dispatch:Q,handler:B}){let{retryOptions:Y,...J}=A,{retry:C,maxRetries:X,maxTimeout:G,minTimeout:F,timeoutFactor:W,methods:Z,errorCodes:U,retryAfter:$,statusCodes:E,throwOnError:K}=Y??{};this.error=null,this.dispatch=Q,this.handler=kS0.wrap(B),this.opts={...J,body:_S0(A.body)},this.retryOpts={throwOnError:K??!0,retry:C??ir[l3Q],retryAfter:$??!0,maxTimeout:G??30000,minTimeout:F??500,timeoutFactor:W??2,maxRetries:X??5,methods:Z??["GET","HEAD","OPTIONS","PUT","DELETE","TRACE"],statusCodes:E??[500,502,503,504,429],errorCodes:U??["ECONNRESET","ECONNREFUSED","ENOTFOUND","ENETDOWN","ENETUNREACH","EHOSTDOWN","EHOSTUNREACH","EPIPE","UND_ERR_SOCKET"]},this.retryCount=0,this.retryCountCheckpoint=0,this.headersSent=!1,this.start=0,this.end=null,this.etag=null}onResponseStartWithRetry(A,Q,B,Y,J){if(this.retryOpts.throwOnError){if(this.retryOpts.statusCodes.includes(Q)===!1)this.headersSent=!0,this.handler.onResponseStart?.(A,Q,B,Y);else this.error=J;return}if(p3Q(this.opts.body)){this.headersSent=!0,this.handler.onResponseStart?.(A,Q,B,Y);return}function C(X){if(X){this.headersSent=!0,this.headersSent=!0,this.handler.onResponseStart?.(A,Q,B,Y),A.resume();return}this.error=J,A.resume()}A.pause(),this.retryOpts.retry(J,{state:{counter:this.retryCount},opts:{retryOptions:this.retryOpts,...this.opts}},C.bind(this))}onRequestStart(A,Q){if(!this.headersSent)this.handler.onRequestStart?.(A,Q)}onRequestUpgrade(A,Q,B,Y){this.handler.onRequestUpgrade?.(A,Q,B,Y)}static[l3Q](A,{state:Q,opts:B},Y){let{statusCode:J,code:C,headers:X}=A,{method:G,retryOptions:F}=B,{maxRetries:W,minTimeout:Z,maxTimeout:U,timeoutFactor:$,statusCodes:E,errorCodes:K,methods:I}=F,{counter:V}=Q;if(C&&C!=="UND_ERR_REQ_RETRY"&&!K.includes(C)){Y(A);return}if(Array.isArray(I)&&!I.includes(G)){Y(A);return}if(J!=null&&Array.isArray(E)&&!E.includes(J)){Y(A);return}if(V>W){Y(A);return}let H=X?.["retry-after"];if(H)H=Number(H),H=Number.isNaN(H)?vS0(X["retry-after"]):H*1000;let D=H>0?Math.min(H,U):Math.min(Z*$**(V-1),U);setTimeout(()=>Y(null),D)}onResponseStart(A,Q,B,Y){if(this.error=null,this.retryCount+=1,Q>=300){let J=new Mq("Request failed",Q,{headers:B,data:{count:this.retryCount}});this.onResponseStartWithRetry(A,Q,B,Y,J);return}if(this.headersSent){if(Q!==206&&(this.start>0||Q!==200))throw new Mq("server does not support the range header and the payload was partially consumed",Q,{headers:B,data:{count:this.retryCount}});let J=i3Q(B["content-range"]);if(!J)throw new Mq("Content-Range mismatch",Q,{headers:B,data:{count:this.retryCount}});if(this.etag!=null&&this.etag!==B.etag)throw new Mq("ETag mismatch",Q,{headers:B,data:{count:this.retryCount}});let{start:C,size:X,end:G=X?X-1:null}=J;tK(this.start===C,"content-range mismatch"),tK(this.end==null||this.end===G,"content-range mismatch");return}if(this.end==null){if(Q===206){let J=i3Q(B["content-range"]);if(J==null){this.headersSent=!0,this.handler.onResponseStart?.(A,Q,B,Y);return}let{start:C,size:X,end:G=X?X-1:null}=J;tK(C!=null&&Number.isFinite(C),"content-range mismatch"),tK(G!=null&&Number.isFinite(G),"invalid content-length"),this.start=C,this.end=G}if(this.end==null){let J=B["content-length"];this.end=J!=null?Number(J)-1:null}if(tK(Number.isFinite(this.start)),tK(this.end==null||Number.isFinite(this.end),"invalid content-length"),this.resume=!0,this.etag=B.etag!=null?B.etag:null,this.etag!=null&&this.etag[0]==="W"&&this.etag[1]==="/")this.etag=null;this.headersSent=!0,this.handler.onResponseStart?.(A,Q,B,Y)}else throw new Mq("Request failed",Q,{headers:B,data:{count:this.retryCount}})}onResponseData(A,Q){if(this.error)return;this.start+=Q.length,this.handler.onResponseData?.(A,Q)}onResponseEnd(A,Q){if(this.error&&this.retryOpts.throwOnError)throw this.error;if(!this.error)return this.retryCount=0,this.handler.onResponseEnd?.(A,Q);this.retry(A)}retry(A){if(this.start!==0){let Q={range:`bytes=${this.start}-${this.end??""}`};if(this.etag!=null)Q["if-match"]=this.etag;this.opts={...this.opts,headers:{...this.opts.headers,...Q}}}try{this.retryCountCheckpoint=this.retryCount,this.dispatch(this.opts,this)}catch(Q){this.handler.onResponseError?.(A,Q)}}onResponseError(A,Q){if(A?.aborted||p3Q(this.opts.body)){this.handler.onResponseError?.(A,Q);return}function B(Y){if(!Y){this.retry(A);return}this.handler?.onResponseError?.(A,Y)}if(this.retryCount-this.retryCountCheckpoint>0)this.retryCount=this.retryCountCheckpoint+(this.retryCount-this.retryCountCheckpoint);else this.retryCount+=1;this.retryOpts.retry(Q,{state:{counter:this.retryCount},opts:{retryOptions:this.retryOpts,...this.opts}},B.bind(this))}}n3Q.exports=ir});var a3Q=R((UnY,r3Q)=>{var yS0=aL(),hS0=NS();class s3Q extends yS0{#A=null;#Q=null;constructor(A,Q={}){super(Q);this.#A=A,this.#Q=Q}dispatch(A,Q){let B=new hS0({...A,retryOptions:this.#Q},{dispatch:this.#A.dispatch.bind(this.#A),handler:Q});return this.#A.dispatch(A,B)}close(){return this.#A.close()}destroy(){return this.#A.destroy()}}r3Q.exports=s3Q});var ARQ=R((EnY,e3Q)=>{var{connect:gS0}=u("node:net"),{kClose:xS0,kDestroy:fS0}=Q0(),{InvalidArgumentError:o3Q}=QB(),bS0=lQ(),mS0=f$(),uS0=P$();class t3Q extends uS0{#A=null;constructor(A,Q){if(typeof A==="string")A=new URL(A);if(A.protocol!=="http:")throw new o3Q("h2c-client: Only h2c protocol is supported");let{connect:B,maxConcurrentStreams:Y,pipelining:J,...C}=Q??{},X=100,G=100;if(Y!=null&&Number.isInteger(Y)&&Y>0)X=Y;if(J!=null&&Number.isInteger(J)&&J>0)G=J;if(G>X)throw new o3Q("h2c-client: pipelining cannot be greater than maxConcurrentStreams");super();this.#A=new mS0(A,{...C,connect:this.#Q(B),maxConcurrentStreams:X,pipelining:G,allowH2:!0})}#Q(A){return(Q,B)=>{let Y=A?.connectOpts??1e4,{hostname:J,port:C,pathname:X}=Q,G=gS0({...Q,host:J,port:C,pathname:X});if(Q.keepAlive==null||Q.keepAlive){let W=Q.keepAliveInitialDelay==null?60000:Q.keepAliveInitialDelay;G.setKeepAlive(!0,W)}G.alpnProtocol="h2";let F=bS0.setupConnectTimeout(new WeakRef(G),{timeout:Y,hostname:J,port:C});return G.setNoDelay(!0).once("connect",function(){if(queueMicrotask(F),B){let W=B;B=null,W(null,this)}}).on("error",function(W){if(queueMicrotask(F),B){let Z=B;B=null,Z(W)}}),G}}dispatch(A,Q){return this.#A.dispatch(A,Q)}[xS0](){return this.#A.close()}[fS0](){return this.#A.destroy()}}e3Q.exports=t3Q});var ZRQ=R((KnY,WRQ)=>{var JRQ=u("node:assert"),{Readable:dS0}=u("node:stream"),{RequestAbortedError:CRQ,NotSupportedError:cS0,InvalidArgumentError:lS0,AbortError:LS}=QB(),XRQ=lQ(),{ReadableStreamFrom:pS0}=lQ(),x8=Symbol("kConsume"),qS=Symbol("kReading"),c$=Symbol("kBody"),QRQ=Symbol("kAbort"),GRQ=Symbol("kContentType"),nr=Symbol("kContentLength"),sr=Symbol("kUsed"),MS=Symbol("kBytesRead"),iS0=()=>{};class FRQ extends dS0{constructor({resume:A,abort:Q,contentType:B="",contentLength:Y,highWaterMark:J=65536}){super({autoDestroy:!0,read:A,highWaterMark:J});this._readableState.dataEmitted=!1,this[QRQ]=Q,this[x8]=null,this[MS]=0,this[c$]=null,this[sr]=!1,this[GRQ]=B,this[nr]=Number.isFinite(Y)?Y:null,this[qS]=!1}_destroy(A,Q){if(!A&&!this._readableState.endEmitted)A=new CRQ;if(A)this[QRQ]();if(!this[sr])setImmediate(Q,A);else Q(A)}on(A,Q){if(A==="data"||A==="readable")this[qS]=!0,this[sr]=!0;return super.on(A,Q)}addListener(A,Q){return this.on(A,Q)}off(A,Q){let B=super.off(A,Q);if(A==="data"||A==="readable")this[qS]=this.listenerCount("data")>0||this.listenerCount("readable")>0;return B}removeListener(A,Q){return this.off(A,Q)}push(A){if(A){if(this[MS]+=A.length,this[x8])return ar(this[x8],A),this[qS]?super.push(A):!0}return super.push(A)}text(){return zq(this,"text")}json(){return zq(this,"json")}blob(){return zq(this,"blob")}bytes(){return zq(this,"bytes")}arrayBuffer(){return zq(this,"arrayBuffer")}async formData(){throw new cS0}get bodyUsed(){return XRQ.isDisturbed(this)}get body(){if(!this[c$]){if(this[c$]=pS0(this),this[x8])this[c$].getReader(),JRQ(this[c$].locked)}return this[c$]}dump(A){let Q=A?.signal;if(Q!=null&&(typeof Q!=="object"||!("aborted"in Q)))return Promise.reject(new lS0("signal must be an AbortSignal"));let B=A?.limit&&Number.isFinite(A.limit)?A.limit:131072;if(Q?.aborted)return Promise.reject(Q.reason??new LS);if(this._readableState.closeEmitted)return Promise.resolve(null);return new Promise((Y,J)=>{if(this[nr]&&this[nr]>B||this[MS]>B)this.destroy(new LS);if(Q){let C=()=>{this.destroy(Q.reason??new LS)};Q.addEventListener("abort",C),this.on("close",function(){if(Q.removeEventListener("abort",C),Q.aborted)J(Q.reason??new LS);else Y(null)})}else this.on("close",Y);this.on("error",iS0).on("data",()=>{if(this[MS]>B)this.destroy()}).resume()})}setEncoding(A){if(Buffer.isEncoding(A))this._readableState.encoding=A;return this}}function nS0(A){return A[c$]?.locked===!0||A[x8]!==null}function sS0(A){return XRQ.isDisturbed(A)||nS0(A)}function zq(A,Q){return JRQ(!A[x8]),new Promise((B,Y)=>{if(sS0(A)){let J=A._readableState;if(J.destroyed&&J.closeEmitted===!1)A.on("error",Y).on("close",()=>{Y(TypeError("unusable"))});else Y(J.errored??TypeError("unusable"))}else queueMicrotask(()=>{A[x8]={type:Q,stream:A,resolve:B,reject:Y,length:0,body:[]},A.on("error",function(J){or(this[x8],J)}).on("close",function(){if(this[x8].body!==null)or(this[x8],new CRQ)}),rS0(A[x8])})})}function rS0(A){if(A.body===null)return;let{_readableState:Q}=A.stream;if(Q.bufferIndex){let B=Q.bufferIndex,Y=Q.buffer.length;for(let J=B;J2&&Y[0]===239&&Y[1]===187&&Y[2]===191?3:0;if(!B||B==="utf8"||B==="utf-8")return Y.utf8Slice(C,J);else return Y.subarray(C,J).toString(B)}function BRQ(A,Q){if(A.length===0||Q===0)return new Uint8Array(0);if(A.length===1)return new Uint8Array(A[0]);let B=new Uint8Array(Buffer.allocUnsafeSlow(Q).buffer),Y=0;for(let J=0;J{var aS0=u("node:assert"),{AsyncResource:oS0}=u("node:async_hooks"),{Readable:tS0}=ZRQ(),{InvalidArgumentError:eK,RequestAbortedError:$RQ}=QB(),BC=lQ();function Rq(){}class tr extends oS0{constructor(A,Q){if(!A||typeof A!=="object")throw new eK("invalid opts");let{signal:B,method:Y,opaque:J,body:C,onInfo:X,responseHeaders:G,highWaterMark:F}=A;try{if(typeof Q!=="function")throw new eK("invalid callback");if(F&&(typeof F!=="number"||F<0))throw new eK("invalid highWaterMark");if(B&&typeof B.on!=="function"&&typeof B.addEventListener!=="function")throw new eK("signal must be an EventEmitter or EventTarget");if(Y==="CONNECT")throw new eK("invalid method");if(X&&typeof X!=="function")throw new eK("invalid onInfo callback");super("UNDICI_REQUEST")}catch(W){if(BC.isStream(C))BC.destroy(C.on("error",Rq),W);throw W}if(this.method=Y,this.responseHeaders=G||null,this.opaque=J||null,this.callback=Q,this.res=null,this.abort=null,this.body=C,this.trailers={},this.context=null,this.onInfo=X||null,this.highWaterMark=F,this.reason=null,this.removeAbortListener=null,B?.aborted)this.reason=B.reason??new $RQ;else if(B)this.removeAbortListener=BC.addAbortListener(B,()=>{if(this.reason=B.reason??new $RQ,this.res)BC.destroy(this.res.on("error",Rq),this.reason);else if(this.abort)this.abort(this.reason)})}onConnect(A,Q){if(this.reason){A(this.reason);return}aS0(this.callback),this.abort=A,this.context=Q}onHeaders(A,Q,B,Y){let{callback:J,opaque:C,abort:X,context:G,responseHeaders:F,highWaterMark:W}=this,Z=F==="raw"?BC.parseRawHeaders(Q):BC.parseHeaders(Q);if(A<200){if(this.onInfo)this.onInfo({statusCode:A,headers:Z});return}let U=F==="raw"?BC.parseHeaders(Q):Z,$=U["content-type"],E=U["content-length"],K=new tS0({resume:B,abort:X,contentType:$,contentLength:this.method!=="HEAD"&&E?Number(E):null,highWaterMark:W});if(this.removeAbortListener)K.on("close",this.removeAbortListener),this.removeAbortListener=null;if(this.callback=null,this.res=K,J!==null)try{this.runInAsyncScope(J,null,null,{statusCode:A,headers:Z,trailers:this.trailers,opaque:C,body:K,context:G})}catch(I){this.res=null,BC.destroy(K.on("error",Rq),I),queueMicrotask(()=>{throw I})}}onData(A){return this.res.push(A)}onComplete(A){BC.parseHeaders(A,this.trailers),this.res.push(null)}onError(A){let{res:Q,callback:B,body:Y,opaque:J}=this;if(B)this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(B,null,A,{opaque:J})});if(Q)this.res=null,queueMicrotask(()=>{BC.destroy(Q.on("error",Rq),A)});if(Y){if(this.body=null,BC.isStream(Y))Y.on("error",Rq),BC.destroy(Y,A)}if(this.removeAbortListener)this.removeAbortListener(),this.removeAbortListener=null}}function URQ(A,Q){if(Q===void 0)return new Promise((B,Y)=>{URQ.call(this,A,(J,C)=>{return J?Y(J):B(C)})});try{let B=new tr(A,Q);this.dispatch(A,B)}catch(B){if(typeof Q!=="function")throw B;let Y=A?.opaque;queueMicrotask(()=>Q(B,{opaque:Y}))}}er.exports=URQ;er.exports.RequestHandler=tr});var wq=R((InY,IRQ)=>{var{addAbortListener:eS0}=lQ(),{RequestAbortedError:Ak0}=QB(),AV=Symbol("kListener"),q6=Symbol("kSignal");function KRQ(A){if(A.abort)A.abort(A[q6]?.reason);else A.reason=A[q6]?.reason??new Ak0;VRQ(A)}function Qk0(A,Q){if(A.reason=null,A[q6]=null,A[AV]=null,!Q)return;if(Q.aborted){KRQ(A);return}A[q6]=Q,A[AV]=()=>{KRQ(A)},eS0(A[q6],A[AV])}function VRQ(A){if(!A[q6])return;if("removeEventListener"in A[q6])A[q6].removeEventListener("abort",A[AV]);else A[q6].removeListener("abort",A[AV]);A[q6]=null,A[AV]=null}IRQ.exports={addSignal:Qk0,removeSignal:VRQ}});var qRQ=R((HnY,LRQ)=>{var Bk0=u("node:assert"),{finished:Yk0}=u("node:stream"),{AsyncResource:Jk0}=u("node:async_hooks"),{InvalidArgumentError:QV,InvalidReturnValueError:Ck0}=QB(),TG=lQ(),{addSignal:Xk0,removeSignal:HRQ}=wq();function Gk0(){}class DRQ extends Jk0{constructor(A,Q,B){if(!A||typeof A!=="object")throw new QV("invalid opts");let{signal:Y,method:J,opaque:C,body:X,onInfo:G,responseHeaders:F}=A;try{if(typeof B!=="function")throw new QV("invalid callback");if(typeof Q!=="function")throw new QV("invalid factory");if(Y&&typeof Y.on!=="function"&&typeof Y.addEventListener!=="function")throw new QV("signal must be an EventEmitter or EventTarget");if(J==="CONNECT")throw new QV("invalid method");if(G&&typeof G!=="function")throw new QV("invalid onInfo callback");super("UNDICI_STREAM")}catch(W){if(TG.isStream(X))TG.destroy(X.on("error",Gk0),W);throw W}if(this.responseHeaders=F||null,this.opaque=C||null,this.factory=Q,this.callback=B,this.res=null,this.abort=null,this.context=null,this.trailers=null,this.body=X,this.onInfo=G||null,TG.isStream(X))X.on("error",(W)=>{this.onError(W)});Xk0(this,Y)}onConnect(A,Q){if(this.reason){A(this.reason);return}Bk0(this.callback),this.abort=A,this.context=Q}onHeaders(A,Q,B,Y){let{factory:J,opaque:C,context:X,responseHeaders:G}=this,F=G==="raw"?TG.parseRawHeaders(Q):TG.parseHeaders(Q);if(A<200){if(this.onInfo)this.onInfo({statusCode:A,headers:F});return}if(this.factory=null,J===null)return;let W=this.runInAsyncScope(J,null,{statusCode:A,headers:F,opaque:C,context:X});if(!W||typeof W.write!=="function"||typeof W.end!=="function"||typeof W.on!=="function")throw new Ck0("expected Writable");return Yk0(W,{readable:!1},(U)=>{let{callback:$,res:E,opaque:K,trailers:I,abort:V}=this;if(this.res=null,U||!E?.readable)TG.destroy(E,U);if(this.callback=null,this.runInAsyncScope($,null,U||null,{opaque:K,trailers:I}),U)V()}),W.on("drain",B),this.res=W,(W.writableNeedDrain!==void 0?W.writableNeedDrain:W._writableState?.needDrain)!==!0}onData(A){let{res:Q}=this;return Q?Q.write(A):!0}onComplete(A){let{res:Q}=this;if(HRQ(this),!Q)return;this.trailers=TG.parseHeaders(A),Q.end()}onError(A){let{res:Q,callback:B,opaque:Y,body:J}=this;if(HRQ(this),this.factory=null,Q)this.res=null,TG.destroy(Q,A);else if(B)this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(B,null,A,{opaque:Y})});if(J)this.body=null,TG.destroy(J,A)}}function NRQ(A,Q,B){if(B===void 0)return new Promise((Y,J)=>{NRQ.call(this,A,Q,(C,X)=>{return C?J(C):Y(X)})});try{let Y=new DRQ(A,Q,B);this.dispatch(A,Y)}catch(Y){if(typeof B!=="function")throw Y;let J=A?.opaque;queueMicrotask(()=>B(Y,{opaque:J}))}}LRQ.exports=NRQ});var PRQ=R((DnY,ORQ)=>{var{Readable:zRQ,Duplex:Fk0,PassThrough:Wk0}=u("node:stream"),Zk0=u("node:assert"),{AsyncResource:$k0}=u("node:async_hooks"),{InvalidArgumentError:jq,InvalidReturnValueError:Uk0,RequestAbortedError:Aa}=QB(),M6=lQ(),{addSignal:Ek0,removeSignal:Kk0}=wq();function MRQ(){}var BV=Symbol("resume");class RRQ extends zRQ{constructor(){super({autoDestroy:!0});this[BV]=null}_read(){let{[BV]:A}=this;if(A)this[BV]=null,A()}_destroy(A,Q){this._read(),Q(A)}}class wRQ extends zRQ{constructor(A){super({autoDestroy:!0});this[BV]=A}_read(){this[BV]()}_destroy(A,Q){if(!A&&!this._readableState.endEmitted)A=new Aa;Q(A)}}class jRQ extends $k0{constructor(A,Q){if(!A||typeof A!=="object")throw new jq("invalid opts");if(typeof Q!=="function")throw new jq("invalid handler");let{signal:B,method:Y,opaque:J,onInfo:C,responseHeaders:X}=A;if(B&&typeof B.on!=="function"&&typeof B.addEventListener!=="function")throw new jq("signal must be an EventEmitter or EventTarget");if(Y==="CONNECT")throw new jq("invalid method");if(C&&typeof C!=="function")throw new jq("invalid onInfo callback");super("UNDICI_PIPELINE");this.opaque=J||null,this.responseHeaders=X||null,this.handler=Q,this.abort=null,this.context=null,this.onInfo=C||null,this.req=new RRQ().on("error",MRQ),this.ret=new Fk0({readableObjectMode:A.objectMode,autoDestroy:!0,read:()=>{let{body:G}=this;if(G?.resume)G.resume()},write:(G,F,W)=>{let{req:Z}=this;if(Z.push(G,F)||Z._readableState.destroyed)W();else Z[BV]=W},destroy:(G,F)=>{let{body:W,req:Z,res:U,ret:$,abort:E}=this;if(!G&&!$._readableState.endEmitted)G=new Aa;if(E&&G)E();M6.destroy(W,G),M6.destroy(Z,G),M6.destroy(U,G),Kk0(this),F(G)}}).on("prefinish",()=>{let{req:G}=this;G.push(null)}),this.res=null,Ek0(this,B)}onConnect(A,Q){let{res:B}=this;if(this.reason){A(this.reason);return}Zk0(!B,"pipeline cannot be retried"),this.abort=A,this.context=Q}onHeaders(A,Q,B){let{opaque:Y,handler:J,context:C}=this;if(A<200){if(this.onInfo){let G=this.responseHeaders==="raw"?M6.parseRawHeaders(Q):M6.parseHeaders(Q);this.onInfo({statusCode:A,headers:G})}return}this.res=new wRQ(B);let X;try{this.handler=null;let G=this.responseHeaders==="raw"?M6.parseRawHeaders(Q):M6.parseHeaders(Q);X=this.runInAsyncScope(J,null,{statusCode:A,headers:G,opaque:Y,body:this.res,context:C})}catch(G){throw this.res.on("error",MRQ),G}if(!X||typeof X.on!=="function")throw new Uk0("expected Readable");X.on("data",(G)=>{let{ret:F,body:W}=this;if(!F.push(G)&&W.pause)W.pause()}).on("error",(G)=>{let{ret:F}=this;M6.destroy(F,G)}).on("end",()=>{let{ret:G}=this;G.push(null)}).on("close",()=>{let{ret:G}=this;if(!G._readableState.ended)M6.destroy(G,new Aa)}),this.body=X}onData(A){let{res:Q}=this;return Q.push(A)}onComplete(A){let{res:Q}=this;Q.push(null)}onError(A){let{ret:Q}=this;this.handler=null,M6.destroy(Q,A)}}function Vk0(A,Q){try{let B=new jRQ(A,Q);return this.dispatch({...A,body:B.req},B),B.ret}catch(B){return new Wk0().destroy(B)}}ORQ.exports=Vk0});var hRQ=R((NnY,yRQ)=>{var{InvalidArgumentError:Qa,SocketError:Ik0}=QB(),{AsyncResource:Hk0}=u("node:async_hooks"),TRQ=u("node:assert"),SRQ=lQ(),{addSignal:Dk0,removeSignal:kRQ}=wq();class _RQ extends Hk0{constructor(A,Q){if(!A||typeof A!=="object")throw new Qa("invalid opts");if(typeof Q!=="function")throw new Qa("invalid callback");let{signal:B,opaque:Y,responseHeaders:J}=A;if(B&&typeof B.on!=="function"&&typeof B.addEventListener!=="function")throw new Qa("signal must be an EventEmitter or EventTarget");super("UNDICI_UPGRADE");this.responseHeaders=J||null,this.opaque=Y||null,this.callback=Q,this.abort=null,this.context=null,Dk0(this,B)}onConnect(A,Q){if(this.reason){A(this.reason);return}TRQ(this.callback),this.abort=A,this.context=null}onHeaders(){throw new Ik0("bad upgrade",null)}onUpgrade(A,Q,B){TRQ(A===101);let{callback:Y,opaque:J,context:C}=this;kRQ(this),this.callback=null;let X=this.responseHeaders==="raw"?SRQ.parseRawHeaders(Q):SRQ.parseHeaders(Q);this.runInAsyncScope(Y,null,null,{headers:X,socket:B,opaque:J,context:C})}onError(A){let{callback:Q,opaque:B}=this;if(kRQ(this),Q)this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(Q,null,A,{opaque:B})})}}function vRQ(A,Q){if(Q===void 0)return new Promise((B,Y)=>{vRQ.call(this,A,(J,C)=>{return J?Y(J):B(C)})});try{let B=new _RQ(A,Q),Y={...A,method:A.method||"GET",upgrade:A.protocol||"Websocket"};this.dispatch(Y,B)}catch(B){if(typeof Q!=="function")throw B;let Y=A?.opaque;queueMicrotask(()=>Q(B,{opaque:Y}))}}yRQ.exports=vRQ});var uRQ=R((LnY,mRQ)=>{var Nk0=u("node:assert"),{AsyncResource:Lk0}=u("node:async_hooks"),{InvalidArgumentError:Ba,SocketError:qk0}=QB(),gRQ=lQ(),{addSignal:Mk0,removeSignal:xRQ}=wq();class fRQ extends Lk0{constructor(A,Q){if(!A||typeof A!=="object")throw new Ba("invalid opts");if(typeof Q!=="function")throw new Ba("invalid callback");let{signal:B,opaque:Y,responseHeaders:J}=A;if(B&&typeof B.on!=="function"&&typeof B.addEventListener!=="function")throw new Ba("signal must be an EventEmitter or EventTarget");super("UNDICI_CONNECT");this.opaque=Y||null,this.responseHeaders=J||null,this.callback=Q,this.abort=null,Mk0(this,B)}onConnect(A,Q){if(this.reason){A(this.reason);return}Nk0(this.callback),this.abort=A,this.context=Q}onHeaders(){throw new qk0("bad connect",null)}onUpgrade(A,Q,B){let{callback:Y,opaque:J,context:C}=this;xRQ(this),this.callback=null;let X=Q;if(X!=null)X=this.responseHeaders==="raw"?gRQ.parseRawHeaders(Q):gRQ.parseHeaders(Q);this.runInAsyncScope(Y,null,null,{statusCode:A,headers:X,socket:B,opaque:J,context:C})}onError(A){let{callback:Q,opaque:B}=this;if(xRQ(this),Q)this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(Q,null,A,{opaque:B})})}}function bRQ(A,Q){if(Q===void 0)return new Promise((B,Y)=>{bRQ.call(this,A,(J,C)=>{return J?Y(J):B(C)})});try{let B=new fRQ(A,Q),Y={...A,method:"CONNECT"};this.dispatch(Y,B)}catch(B){if(typeof Q!=="function")throw B;let Y=A?.opaque;queueMicrotask(()=>Q(B,{opaque:Y}))}}mRQ.exports=bRQ});var dRQ=R((zk0,YV)=>{zk0.request=ERQ();zk0.stream=qRQ();zk0.pipeline=PRQ();zk0.upgrade=hRQ();zk0.connect=uRQ()});var Ya=R((qnY,pRQ)=>{var{UndiciError:Tk0}=QB(),cRQ=Symbol.for("undici.error.UND_MOCK_ERR_MOCK_NOT_MATCHED");class lRQ extends Tk0{constructor(A){super(A);this.name="MockNotMatchedError",this.message=A||"The request does not match any registered mock dispatches",this.code="UND_MOCK_ERR_MOCK_NOT_MATCHED"}static[Symbol.hasInstance](A){return A&&A[cRQ]===!0}get[cRQ](){return!0}}pRQ.exports={MockNotMatchedError:lRQ}});var l$=R((MnY,iRQ)=>{iRQ.exports={kAgent:Symbol("agent"),kOptions:Symbol("options"),kFactory:Symbol("factory"),kDispatches:Symbol("dispatches"),kDispatchKey:Symbol("dispatch key"),kDefaultHeaders:Symbol("default headers"),kDefaultTrailers:Symbol("default trailers"),kContentLength:Symbol("content length"),kMockAgent:Symbol("mock agent"),kMockAgentSet:Symbol("mock agent set"),kMockAgentGet:Symbol("mock agent get"),kMockDispatch:Symbol("mock dispatch"),kClose:Symbol("close"),kOriginalClose:Symbol("original agent close"),kOriginalDispatch:Symbol("original dispatch"),kOrigin:Symbol("origin"),kIsMockActive:Symbol("is mock active"),kNetConnect:Symbol("net connect"),kGetNetConnect:Symbol("get net connect"),kConnected:Symbol("connected"),kIgnoreTrailingSlash:Symbol("ignore trailing slash"),kMockAgentMockCallHistoryInstance:Symbol("mock agent mock call history name"),kMockAgentRegisterCallHistory:Symbol("mock agent register mock call history"),kMockAgentAddCallHistoryLog:Symbol("mock agent add call history log"),kMockAgentIsCallHistoryEnabled:Symbol("mock agent is call history enabled"),kMockAgentAcceptsNonStandardSearchParameters:Symbol("mock agent accepts non standard search parameters"),kMockCallHistoryAddLog:Symbol("mock call history add log")}});var Oq=R((znY,YwQ)=>{var{MockNotMatchedError:JV}=Ya(),{kDispatches:zS,kMockAgent:Sk0,kOriginalDispatch:kk0,kOrigin:_k0,kGetNetConnect:vk0}=l$(),{serializePathWithQuery:yk0}=lQ(),{STATUS_CODES:hk0}=u("node:http"),{types:{isPromise:gk0}}=u("node:util"),{InvalidArgumentError:Ja}=QB();function z6(A,Q){if(typeof A==="string")return A===Q;if(A instanceof RegExp)return A.test(Q);if(typeof A==="function")return A(Q)===!0;return!1}function sRQ(A){return Object.fromEntries(Object.entries(A).map(([Q,B])=>{return[Q.toLocaleLowerCase(),B]}))}function rRQ(A,Q){if(Array.isArray(A)){for(let B=0;B"u")return!0;if(typeof Q!=="object"||typeof A.headers!=="object")return!1;for(let[B,Y]of Object.entries(A.headers)){let J=rRQ(Q,B);if(!z6(Y,J))return!1}return!0}function xk0(A){if(typeof A!=="string")return A;let Q=new URLSearchParams(A),B=new URLSearchParams;for(let[Y,J]of Q.entries()){if(Y=Y.replace("[]",""),/^(['"]).*\1$/.test(J)){B.append(Y,J);continue}if(J.includes(",")){let X=J.split(",");for(let G of X)B.append(Y,G);continue}B.append(Y,J)}return B}function Ca(A){if(typeof A!=="string")return A;let Q=A.split("?",3);if(Q.length!==2)return A;let B=new URLSearchParams(Q.pop());return B.sort(),[...Q,B.toString()].join("?")}function fk0(A,{path:Q,method:B,body:Y,headers:J}){let C=z6(A.path,Q),X=z6(A.method,B),G=typeof A.body<"u"?z6(A.body,Y):!0,F=aRQ(A,J);return C&&X&&G&&F}function oRQ(A){if(Buffer.isBuffer(A))return A;else if(A instanceof Uint8Array)return A;else if(A instanceof ArrayBuffer)return A;else if(typeof A==="object")return JSON.stringify(A);else if(A)return A.toString();else return""}function tRQ(A,Q){let B=Q.query?yk0(Q.path,Q.query):Q.path,Y=typeof B==="string"?Ca(B):B,J=nRQ(Y),C=A.filter(({consumed:X})=>!X).filter(({path:X,ignoreTrailingSlash:G})=>{return G?z6(nRQ(Ca(X)),J):z6(Ca(X),Y)});if(C.length===0)throw new JV(`Mock dispatch not matched for path '${Y}'`);if(C=C.filter(({method:X})=>z6(X,Q.method)),C.length===0)throw new JV(`Mock dispatch not matched for method '${Q.method}' on path '${Y}'`);if(C=C.filter(({body:X})=>typeof X<"u"?z6(X,Q.body):!0),C.length===0)throw new JV(`Mock dispatch not matched for body '${Q.body}' on path '${Y}'`);if(C=C.filter((X)=>aRQ(X,Q.headers)),C.length===0){let X=typeof Q.headers==="object"?JSON.stringify(Q.headers):Q.headers;throw new JV(`Mock dispatch not matched for headers '${X}' on path '${Y}'`)}return C[0]}function bk0(A,Q,B,Y){let J={timesInvoked:0,times:1,persist:!1,consumed:!1,...Y},C=typeof B==="function"?{callback:B}:{...B},X={...J,...Q,pending:!0,data:{error:null,...C}};return A.push(X),X}function Xa(A,Q){let B=A.findIndex((Y)=>{if(!Y.consumed)return!1;return fk0(Y,Q)});if(B!==-1)A.splice(B,1)}function nRQ(A){while(A.endsWith("/"))A=A.slice(0,-1);if(A.length===0)A="/";return A}function eRQ(A){let{path:Q,method:B,body:Y,headers:J,query:C}=A;return{path:Q,method:B,body:Y,headers:J,query:C}}function Ga(A){let Q=Object.keys(A),B=[];for(let Y=0;Y=$,Y.pending=U<$,F!==null)return Xa(this[zS],B),Q.onError(F),!0;if(typeof W==="number"&&W>0)setTimeout(()=>{E(this[zS])},W);else E(this[zS]);function E(I,V=C){let H=Array.isArray(A.headers)?Fa(A.headers):A.headers,D=typeof V==="function"?V({...A,headers:H}):V;if(gk0(D)){D.then((N)=>E(I,N));return}let L=oRQ(D),z=Ga(X),M=Ga(G);Q.onConnect?.((N)=>Q.onError(N),null),Q.onHeaders?.(J,z,K,AwQ(J)),Q.onData?.(Buffer.from(L)),Q.onComplete?.(M),Xa(I,B)}function K(){}return!0}function uk0(){let A=this[Sk0],Q=this[_k0],B=this[kk0];return function(J,C){if(A.isMockActive)try{QwQ.call(this,J,C)}catch(X){if(X.code==="UND_MOCK_ERR_MOCK_NOT_MATCHED"){let G=A[vk0]();if(G===!1)throw new JV(`${X.message}: subsequent request to origin ${Q} was not allowed (net.connect disabled)`);if(BwQ(G,Q))B.call(this,J,C);else throw new JV(`${X.message}: subsequent request to origin ${Q} was not allowed (net.connect is not enabled for this origin)`)}else throw X}else B.call(this,J,C)}}function BwQ(A,Q){let B=new URL(Q);if(A===!0)return!0;else if(Array.isArray(A)&&A.some((Y)=>z6(Y,B.host)))return!0;return!1}function dk0(A){let{agent:Q,...B}=A;if("enableCallHistory"in B&&typeof B.enableCallHistory!=="boolean")throw new Ja("options.enableCallHistory must to be a boolean");if("acceptNonStandardSearchParameters"in B&&typeof B.acceptNonStandardSearchParameters!=="boolean")throw new Ja("options.acceptNonStandardSearchParameters must to be a boolean");if("ignoreTrailingSlash"in B&&typeof B.ignoreTrailingSlash!=="boolean")throw new Ja("options.ignoreTrailingSlash must to be a boolean");return B}YwQ.exports={getResponseData:oRQ,getMockDispatch:tRQ,addMockDispatch:bk0,deleteMockDispatch:Xa,buildKey:eRQ,generateKeyValues:Ga,matchValue:z6,getResponse:mk0,getStatusText:AwQ,mockDispatch:QwQ,buildMockDispatch:uk0,checkNetConnect:BwQ,buildAndValidateMockOptions:dk0,getHeaderByName:rRQ,buildHeadersFromArray:Fa,normalizeSearchParams:xk0}});var Ka=R((ik0,Ea)=>{var{getResponseData:ck0,buildKey:lk0,addMockDispatch:Wa}=Oq(),{kDispatches:RS,kDispatchKey:wS,kDefaultHeaders:Za,kDefaultTrailers:$a,kContentLength:Ua,kMockDispatch:jS,kIgnoreTrailingSlash:OS}=l$(),{InvalidArgumentError:R6}=QB(),{serializePathWithQuery:pk0}=lQ();class Pq{constructor(A){this[jS]=A}delay(A){if(typeof A!=="number"||!Number.isInteger(A)||A<=0)throw new R6("waitInMs must be a valid integer > 0");return this[jS].delay=A,this}persist(){return this[jS].persist=!0,this}times(A){if(typeof A!=="number"||!Number.isInteger(A)||A<=0)throw new R6("repeatTimes must be a valid integer > 0");return this[jS].times=A,this}}class JwQ{constructor(A,Q){if(typeof A!=="object")throw new R6("opts must be an object");if(typeof A.path>"u")throw new R6("opts.path must be defined");if(typeof A.method>"u")A.method="GET";if(typeof A.path==="string")if(A.query)A.path=pk0(A.path,A.query);else{let B=new URL(A.path,"data://");A.path=B.pathname+B.search}if(typeof A.method==="string")A.method=A.method.toUpperCase();this[wS]=lk0(A),this[RS]=Q,this[OS]=A.ignoreTrailingSlash??!1,this[Za]={},this[$a]={},this[Ua]=!1}createMockScopeDispatchData({statusCode:A,data:Q,responseOptions:B}){let Y=ck0(Q),J=this[Ua]?{"content-length":Y.length}:{},C={...this[Za],...J,...B.headers},X={...this[$a],...B.trailers};return{statusCode:A,data:Q,headers:C,trailers:X}}validateReplyParameters(A){if(typeof A.statusCode>"u")throw new R6("statusCode must be defined");if(typeof A.responseOptions!=="object"||A.responseOptions===null)throw new R6("responseOptions must be an object")}reply(A){if(typeof A==="function"){let J=(X)=>{let G=A(X);if(typeof G!=="object"||G===null)throw new R6("reply options callback must return an object");let F={data:"",responseOptions:{},...G};return this.validateReplyParameters(F),{...this.createMockScopeDispatchData(F)}},C=Wa(this[RS],this[wS],J,{ignoreTrailingSlash:this[OS]});return new Pq(C)}let Q={statusCode:A,data:arguments[1]===void 0?"":arguments[1],responseOptions:arguments[2]===void 0?{}:arguments[2]};this.validateReplyParameters(Q);let B=this.createMockScopeDispatchData(Q),Y=Wa(this[RS],this[wS],B,{ignoreTrailingSlash:this[OS]});return new Pq(Y)}replyWithError(A){if(typeof A>"u")throw new R6("error must be defined");let Q=Wa(this[RS],this[wS],{error:A},{ignoreTrailingSlash:this[OS]});return new Pq(Q)}defaultReplyHeaders(A){if(typeof A>"u")throw new R6("headers must be defined");return this[Za]=A,this}defaultReplyTrailers(A){if(typeof A>"u")throw new R6("trailers must be defined");return this[$a]=A,this}replyContentLength(){return this[Ua]=!0,this}}ik0.MockInterceptor=JwQ;ik0.MockScope=Pq});var Ha=R((RnY,UwQ)=>{var{promisify:rk0}=u("node:util"),ak0=f$(),{buildMockDispatch:ok0}=Oq(),{kDispatches:Va,kMockAgent:CwQ,kClose:XwQ,kOriginalClose:GwQ,kOrigin:FwQ,kOriginalDispatch:tk0,kConnected:Ia,kIgnoreTrailingSlash:WwQ}=l$(),{MockInterceptor:ek0}=Ka(),ZwQ=Q0(),{InvalidArgumentError:A_0}=QB();class $wQ extends ak0{constructor(A,Q){if(!Q||!Q.agent||typeof Q.agent.dispatch!=="function")throw new A_0("Argument opts.agent must implement Agent");super(A,Q);this[CwQ]=Q.agent,this[FwQ]=A,this[WwQ]=Q.ignoreTrailingSlash??!1,this[Va]=[],this[Ia]=1,this[tk0]=this.dispatch,this[GwQ]=this.close.bind(this),this.dispatch=ok0.call(this),this.close=this[XwQ]}get[ZwQ.kConnected](){return this[Ia]}intercept(A){return new ek0(A&&{ignoreTrailingSlash:this[WwQ],...A},this[Va])}cleanMocks(){this[Va]=[]}async[XwQ](){await rk0(this[GwQ])(),this[Ia]=0,this[CwQ][ZwQ.kClients].delete(this[FwQ])}}UwQ.exports=$wQ});var La=R((J_0,Na)=>{var{kMockCallHistoryAddLog:Q_0}=l$(),{InvalidArgumentError:YW}=QB();function QW(A,Q,B,Y){switch(Q.operator){case"OR":return Y.push(...B(A)),Y;case"AND":return B.call({logs:Y},A);default:throw new YW("options.operator must to be a case insensitive string equal to 'OR' or 'AND'")}}function B_0(A={}){let Q={};if("operator"in A){if(typeof A.operator!=="string"||A.operator.toUpperCase()!=="OR"&&A.operator.toUpperCase()!=="AND")throw new YW("options.operator must to be a case insensitive string equal to 'OR' or 'AND'");return{...Q,operator:A.operator.toUpperCase()}}return Q}function BW(A){return(Q)=>{if(typeof Q==="string"||Q==null)return this.logs.filter((B)=>{return B[A]===Q});if(Q instanceof RegExp)return this.logs.filter((B)=>{return Q.test(B[A])});throw new YW(`${A} parameter should be one of string, regexp, undefined or null`)}}function Y_0(A){try{let Q=new URL(A.path,A.origin);if(Q.search.length!==0)return Q;return Q.search=new URLSearchParams(A.query).toString(),Q}catch(Q){throw new YW("An error occurred when computing MockCallHistoryLog.url",{cause:Q})}}class Da{constructor(A={}){this.body=A.body,this.headers=A.headers,this.method=A.method;let Q=Y_0(A);this.fullUrl=Q.toString(),this.origin=Q.origin,this.path=Q.pathname,this.searchParams=Object.fromEntries(Q.searchParams),this.protocol=Q.protocol,this.host=Q.host,this.port=Q.port,this.hash=Q.hash}toMap(){return new Map([["protocol",this.protocol],["host",this.host],["port",this.port],["origin",this.origin],["path",this.path],["hash",this.hash],["searchParams",this.searchParams],["fullUrl",this.fullUrl],["method",this.method],["body",this.body],["headers",this.headers]])}toString(){let A={betweenKeyValueSeparator:"->",betweenPairSeparator:"|"},Q="";return this.toMap().forEach((B,Y)=>{if(typeof B==="string"||B===void 0||B===null)Q=`${Q}${Y}${A.betweenKeyValueSeparator}${B}${A.betweenPairSeparator}`;if(typeof B==="object"&&B!==null||Array.isArray(B))Q=`${Q}${Y}${A.betweenKeyValueSeparator}${JSON.stringify(B)}${A.betweenPairSeparator}`}),Q.slice(0,-1)}}class EwQ{logs=[];calls(){return this.logs}firstCall(){return this.logs.at(0)}lastCall(){return this.logs.at(-1)}nthCall(A){if(typeof A!=="number")throw new YW("nthCall must be called with a number");if(!Number.isInteger(A))throw new YW("nthCall must be called with an integer");if(Math.sign(A)!==1)throw new YW("nthCall must be called with a positive value. use firstCall or lastCall instead");return this.logs.at(A-1)}filterCalls(A,Q){if(this.logs.length===0)return this.logs;if(typeof A==="function")return this.logs.filter(A);if(A instanceof RegExp)return this.logs.filter((B)=>{return A.test(B.toString())});if(typeof A==="object"&&A!==null){if(Object.keys(A).length===0)return this.logs;let B={operator:"OR",...B_0(Q)},Y=[];if("protocol"in A)Y=QW(A.protocol,B,this.filterCallsByProtocol,Y);if("host"in A)Y=QW(A.host,B,this.filterCallsByHost,Y);if("port"in A)Y=QW(A.port,B,this.filterCallsByPort,Y);if("origin"in A)Y=QW(A.origin,B,this.filterCallsByOrigin,Y);if("path"in A)Y=QW(A.path,B,this.filterCallsByPath,Y);if("hash"in A)Y=QW(A.hash,B,this.filterCallsByHash,Y);if("fullUrl"in A)Y=QW(A.fullUrl,B,this.filterCallsByFullUrl,Y);if("method"in A)Y=QW(A.method,B,this.filterCallsByMethod,Y);return[...new Set(Y)]}throw new YW("criteria parameter should be one of function, regexp, or object")}filterCallsByProtocol=BW.call(this,"protocol");filterCallsByHost=BW.call(this,"host");filterCallsByPort=BW.call(this,"port");filterCallsByOrigin=BW.call(this,"origin");filterCallsByPath=BW.call(this,"path");filterCallsByHash=BW.call(this,"hash");filterCallsByFullUrl=BW.call(this,"fullUrl");filterCallsByMethod=BW.call(this,"method");clear(){this.logs=[]}[Q_0](A){let Q=new Da(A);return this.logs.push(Q),Q}*[Symbol.iterator](){for(let A of this.calls())yield A}}J_0.MockCallHistory=EwQ;J_0.MockCallHistoryLog=Da});var za=R((wnY,qwQ)=>{var{promisify:G_0}=u("node:util"),F_0=aK(),{buildMockDispatch:W_0}=Oq(),{kDispatches:qa,kMockAgent:KwQ,kClose:VwQ,kOriginalClose:IwQ,kOrigin:HwQ,kOriginalDispatch:Z_0,kConnected:Ma,kIgnoreTrailingSlash:DwQ}=l$(),{MockInterceptor:$_0}=Ka(),NwQ=Q0(),{InvalidArgumentError:U_0}=QB();class LwQ extends F_0{constructor(A,Q){if(!Q||!Q.agent||typeof Q.agent.dispatch!=="function")throw new U_0("Argument opts.agent must implement Agent");super(A,Q);this[KwQ]=Q.agent,this[HwQ]=A,this[DwQ]=Q.ignoreTrailingSlash??!1,this[qa]=[],this[Ma]=1,this[Z_0]=this.dispatch,this[IwQ]=this.close.bind(this),this.dispatch=W_0.call(this),this.close=this[VwQ]}get[NwQ.kConnected](){return this[Ma]}intercept(A){return new $_0(A&&{ignoreTrailingSlash:this[DwQ],...A},this[qa])}cleanMocks(){this[qa]=[]}async[VwQ](){await G_0(this[IwQ])(),this[Ma]=0,this[KwQ][NwQ.kClients].delete(this[HwQ])}}qwQ.exports=LwQ});var zwQ=R((jnY,MwQ)=>{var{Transform:E_0}=u("node:stream"),{Console:K_0}=u("node:console"),V_0=process.versions.icu?"✅":"Y ",I_0=process.versions.icu?"❌":"N ";MwQ.exports=class{constructor({disableColors:Q}={}){this.transform=new E_0({transform(B,Y,J){J(null,B)}}),this.logger=new K_0({stdout:this.transform,inspectOptions:{colors:!Q&&!process.env.CI}})}format(Q){let B=Q.map(({method:Y,path:J,data:{statusCode:C},persist:X,times:G,timesInvoked:F,origin:W})=>({Method:Y,Origin:W,Path:J,"Status code":C,Persistent:X?V_0:I_0,Invocations:F,Remaining:X?1/0:G-F}));return this.logger.table(B),this.transform.read().toString()}}});var Oa=R((OnY,SwQ)=>{var{kClients:p$}=Q0(),H_0=u$(),{kAgent:Ra,kMockAgentSet:PS,kMockAgentGet:RwQ,kDispatches:wa,kIsMockActive:TS,kNetConnect:i$,kGetNetConnect:D_0,kOptions:SS,kFactory:kS,kMockAgentRegisterCallHistory:ja,kMockAgentIsCallHistoryEnabled:Tq,kMockAgentAddCallHistoryLog:wwQ,kMockAgentMockCallHistoryInstance:CV,kMockAgentAcceptsNonStandardSearchParameters:jwQ,kMockCallHistoryAddLog:N_0,kIgnoreTrailingSlash:OwQ}=l$(),L_0=Ha(),q_0=za(),{matchValue:M_0,normalizeSearchParams:z_0,buildAndValidateMockOptions:R_0}=Oq(),{InvalidArgumentError:PwQ,UndiciError:w_0}=QB(),j_0=aL(),O_0=zwQ(),{MockCallHistory:P_0}=La();class TwQ extends j_0{constructor(A={}){super(A);let Q=R_0(A);if(this[i$]=!0,this[TS]=!0,this[Tq]=Q.enableCallHistory??!1,this[jwQ]=Q.acceptNonStandardSearchParameters??!1,this[OwQ]=Q.ignoreTrailingSlash??!1,A?.agent&&typeof A.agent.dispatch!=="function")throw new PwQ("Argument opts.agent must implement Agent");let B=A?.agent?A.agent:new H_0(A);if(this[Ra]=B,this[p$]=B[p$],this[SS]=Q,this[Tq])this[ja]()}get(A){let Q=this[OwQ]?A.replace(/\/$/,""):A,B=this[RwQ](Q);if(!B)B=this[kS](Q),this[PS](Q,B);return B}dispatch(A,Q){this.get(A.origin),this[wwQ](A);let B=this[jwQ],Y={...A};if(B&&Y.path){let[J,C]=Y.path.split("?"),X=z_0(C,B);Y.path=`${J}?${X}`}return this[Ra].dispatch(Y,Q)}async close(){this.clearCallHistory(),await this[Ra].close(),this[p$].clear()}deactivate(){this[TS]=!1}activate(){this[TS]=!0}enableNetConnect(A){if(typeof A==="string"||typeof A==="function"||A instanceof RegExp)if(Array.isArray(this[i$]))this[i$].push(A);else this[i$]=[A];else if(typeof A>"u")this[i$]=!0;else throw new PwQ("Unsupported matcher. Must be one of String|Function|RegExp.")}disableNetConnect(){this[i$]=!1}enableCallHistory(){return this[Tq]=!0,this}disableCallHistory(){return this[Tq]=!1,this}getCallHistory(){return this[CV]}clearCallHistory(){if(this[CV]!==void 0)this[CV].clear()}get isMockActive(){return this[TS]}[ja](){if(this[CV]===void 0)this[CV]=new P_0}[wwQ](A){if(this[Tq])this[ja](),this[CV][N_0](A)}[PS](A,Q){this[p$].set(A,{count:0,dispatcher:Q})}[kS](A){let Q=Object.assign({agent:this},this[SS]);return this[SS]&&this[SS].connections===1?new L_0(A,Q):new q_0(A,Q)}[RwQ](A){let Q=this[p$].get(A);if(Q?.dispatcher)return Q.dispatcher;if(typeof A!=="string"){let B=this[kS]("http://localhost:9999");return this[PS](A,B),B}for(let[B,Y]of Array.from(this[p$]))if(Y&&typeof B!=="string"&&M_0(B,A)){let J=this[kS](A);return this[PS](A,J),J[wa]=Y.dispatcher[wa],J}}[D_0](){return this[i$]}pendingInterceptors(){let A=this[p$];return Array.from(A.entries()).flatMap(([Q,B])=>B.dispatcher[wa].map((Y)=>({...Y,origin:Q}))).filter(({pending:Q})=>Q)}assertNoPendingInterceptors({pendingInterceptorsFormatter:A=new O_0}={}){let Q=this.pendingInterceptors();if(Q.length===0)return;throw new w_0(Q.length===1?`1 interceptor is pending: ${A.format(Q)}`.trim():`${Q.length} interceptors are pending: -${A.format(Q)}`.trim())}}KwQ.exports=EwQ});var Ha=R((ciY,HwQ)=>{var{InvalidArgumentError:E_0}=QB();function K_0(A={}){let{ignoreHeaders:Q=[],excludeHeaders:B=[],matchHeaders:Y=[],caseSensitive:J=!1}=A;return{ignore:new Set(Q.map((C)=>J?C:C.toLowerCase())),exclude:new Set(B.map((C)=>J?C:C.toLowerCase())),match:new Set(Y.map((C)=>J?C:C.toLowerCase()))}}var Ia;try{Ia=u("node:crypto")}catch{}var V_0=Ia?.hash?(A)=>Ia.hash("sha256",A,"base64url"):(A)=>Buffer.from(A).toString("base64url");function IwQ(A){return Array.isArray(A)&&(A.length&1)===0}function I_0(A=[]){if(A.length===0)return()=>!1;return function(B){let Y;for(let J of A)if(typeof J==="string"){if(!Y)Y=B.toLowerCase();if(Y.includes(J.toLowerCase()))return!0}else if(J instanceof RegExp){if(J.test(B))return!0}return!1}}function H_0(A){let Q={};if(!A)return Q;if(IwQ(A)){for(let B=0;B{var{writeFile:N_0,readFile:L_0,mkdir:q_0}=u("node:fs/promises"),{dirname:M_0,resolve:DwQ}=u("node:path"),{setTimeout:z_0,clearTimeout:NwQ}=u("node:timers"),{InvalidArgumentError:LwQ,UndiciError:R_0}=QB(),{hashId:w_0,isUrlExcludedFactory:j_0,normalizeHeaders:qwQ,createHeaderFilters:MwQ}=Ha();function jq(A,Q,B={}){let Y=new URL(A.path,A.origin),J=A._normalizedHeaders||qwQ(A.headers);if(!A._normalizedHeaders)A._normalizedHeaders=J;return{method:A.method||"GET",url:B.matchQuery!==!1?Y.toString():`${Y.origin}${Y.pathname}`,headers:zwQ(J,Q,B),body:B.matchBody!==!1&&A.body?String(A.body):""}}function zwQ(A,Q,B={}){if(!A||typeof A!=="object")return{};let{caseSensitive:Y=!1}=B,J={},{ignore:C,exclude:X,match:G}=Q;for(let[F,W]of Object.entries(A)){let Z=Y?F:F.toLowerCase();if(X.has(Z))continue;if(C.has(Z))continue;if(G.size!==0){if(!G.has(Z))continue}J[Z]=W}return J}function RwQ(A,Q,B={}){if(!A||typeof A!=="object")return{};let{caseSensitive:Y=!1}=B,J={},{exclude:C}=Q;for(let[X,G]of Object.entries(A)){let F=Y?X:X.toLowerCase();if(C.has(F))continue;J[F]=G}return J}function Oq(A){let Q=[A.method,A.url];if(A.headers&&typeof A.headers==="object"){let Y=Object.keys(A.headers).sort();for(let J of Y){let C=Array.isArray(A.headers[J])?A.headers[J]:[A.headers[J]];Q.push(J);for(let X of C.sort())Q.push(String(X))}}Q.push(A.body);let B=Q.join("|");return w_0(B)}class wwQ{#A;#Q;#B=new Map;#Y;#J=1/0;#C=!1;#F;constructor(A={}){if(this.#Y=A.snapshotPath,this.#J=A.maxSnapshots||1/0,this.#C=A.autoFlush||!1,this.flushInterval=A.flushInterval||30000,this._flushTimer=null,this.matchOptions={matchHeaders:A.matchHeaders||[],ignoreHeaders:A.ignoreHeaders||[],excludeHeaders:A.excludeHeaders||[],matchBody:A.matchBody!==!1,matchQuery:A.matchQuery!==!1,caseSensitive:A.caseSensitive||!1},this.#F=MwQ(this.matchOptions),this.shouldRecord=A.shouldRecord||(()=>!0),this.shouldPlayback=A.shouldPlayback||(()=>!0),this.#Q=j_0(A.excludeUrls),this.#C&&this.#Y)this.#X()}async record(A,Q){if(!this.shouldRecord(A))return;let B=new URL(A.path,A.origin).toString();if(this.#Q(B))return;let Y=jq(A,this.#F,this.matchOptions),J=Oq(Y),C=qwQ(Q.headers),X={statusCode:Q.statusCode,headers:RwQ(C,this.#F,this.matchOptions),body:Buffer.isBuffer(Q.body)?Q.body.toString("base64"):Buffer.from(String(Q.body||"")).toString("base64"),trailers:Q.trailers};if(this.#B.size>=this.#J&&!this.#B.has(J)){let F=this.#B.keys().next().value;this.#B.delete(F)}let G=this.#B.get(J);if(G&&G.responses)G.responses.push(X),G.timestamp=new Date().toISOString();else this.#B.set(J,{request:Y,responses:[X],callCount:0,timestamp:new Date().toISOString()});if(this.#C&&this.#Y)this.#Z()}findSnapshot(A){if(!this.shouldPlayback(A))return;let Q=new URL(A.path,A.origin).toString();if(this.#Q(Q))return;let B=jq(A,this.#F,this.matchOptions),Y=Oq(B),J=this.#B.get(Y);if(!J)return;let C=J.callCount||0,X=Math.min(C,J.responses.length-1);return J.callCount=C+1,{...J,response:J.responses[X]}}async loadSnapshots(A){let Q=A||this.#Y;if(!Q)throw new LwQ("Snapshot path is required");try{let B=await L_0(DwQ(Q),"utf8"),Y=JSON.parse(B);if(Array.isArray(Y)){this.#B.clear();for(let{hash:J,snapshot:C}of Y)this.#B.set(J,C)}else this.#B=new Map(Object.entries(Y))}catch(B){if(B.code==="ENOENT")this.#B.clear();else throw new R_0(`Failed to load snapshots from ${Q}`,{cause:B})}}async saveSnapshots(A){let Q=A||this.#Y;if(!Q)throw new LwQ("Snapshot path is required");let B=DwQ(Q);await q_0(M_0(B),{recursive:!0});let Y=Array.from(this.#B.entries()).map(([J,C])=>({hash:J,snapshot:C}));await N_0(B,JSON.stringify(Y,null,2),{flush:!0})}clear(){this.#B.clear()}getSnapshots(){return Array.from(this.#B.values())}size(){return this.#B.size}resetCallCounts(){for(let A of this.#B.values())A.callCount=0}deleteSnapshot(A){let Q=jq(A,this.#F,this.matchOptions),B=Oq(Q);return this.#B.delete(B)}getSnapshotInfo(A){let Q=jq(A,this.#F,this.matchOptions),B=Oq(Q),Y=this.#B.get(B);if(!Y)return null;return{hash:B,request:Y.request,responseCount:Y.responses?Y.responses.length:Y.response?1:0,callCount:Y.callCount||0,timestamp:Y.timestamp}}replaceSnapshots(A){if(this.#B.clear(),Array.isArray(A))for(let{hash:Q,snapshot:B}of A)this.#B.set(Q,B);else if(A&&typeof A==="object")this.#B=new Map(Object.entries(A))}#X(){return this.#Z()}#G(){if(this.#A)NwQ(this.#A),this.saveSnapshots().catch(()=>{}),this.#A=null}#Z(){this.#A=z_0(()=>{if(this.saveSnapshots().catch(()=>{}),this.#C)this.#A?.refresh();else this.#A=null},1000)}destroy(){if(this.#G(),this.#A)NwQ(this.#A),this.#A=null}async close(){if(this.#Y&&this.#B.size!==0)await this.saveSnapshots();this.destroy()}}jwQ.exports={SnapshotRecorder:wwQ,formatRequestKey:jq,createRequestHash:Oq,filterHeadersForMatching:zwQ,filterHeadersForStorage:RwQ,createHeaderFilters:MwQ}});var kwQ=R((piY,SwQ)=>{var O_0=x$(),P_0=Va(),{SnapshotRecorder:T_0}=OwQ(),S_0=pL(),{InvalidArgumentError:k_0,UndiciError:__0}=QB(),{validateSnapshotMode:v_0}=Ha(),h8=Symbol("kSnapshotRecorder"),T6=Symbol("kSnapshotMode"),Pq=Symbol("kSnapshotPath"),Da=Symbol("kSnapshotLoaded"),Na=Symbol("kRealAgent"),PwQ=!1;class TwQ extends P_0{constructor(A={}){if(!PwQ)process.emitWarning("SnapshotAgent is experimental and subject to change","ExperimentalWarning"),PwQ=!0;let{mode:Q="record",snapshotPath:B=null,...Y}=A;super(Y);if(v_0(Q),(Q==="playback"||Q==="update")&&!B)throw new k_0(`snapshotPath is required when mode is '${Q}'`);if(this[T6]=Q,this[Pq]=B,this[h8]=new T_0({snapshotPath:this[Pq],mode:this[T6],maxSnapshots:A.maxSnapshots,autoFlush:A.autoFlush,flushInterval:A.flushInterval,matchHeaders:A.matchHeaders,ignoreHeaders:A.ignoreHeaders,excludeHeaders:A.excludeHeaders,matchBody:A.matchBody,matchQuery:A.matchQuery,caseSensitive:A.caseSensitive,shouldRecord:A.shouldRecord,shouldPlayback:A.shouldPlayback,excludeUrls:A.excludeUrls}),this[Da]=!1,this[T6]==="record"||this[T6]==="update")this[Na]=new O_0(A);if((this[T6]==="playback"||this[T6]==="update")&&this[Pq])this.loadSnapshots().catch(()=>{})}dispatch(A,Q){Q=S_0.wrap(Q);let B=this[T6];if(B==="playback"||B==="update"){if(!this[Da])return this.#A(A,Q);let Y=this[h8].findSnapshot(A);if(Y)return this.#B(Y,Q);else if(B==="update")return this.#Q(A,Q);else{let J=new __0(`No snapshot found for ${A.method||"GET"} ${A.path}`);if(Q.onError){Q.onError(J);return}throw J}}else if(B==="record")return this.#Q(A,Q)}async#A(A,Q){return await this.loadSnapshots(),this.dispatch(A,Q)}#Q(A,Q){let B={statusCode:null,headers:{},trailers:{},body:[]},Y=this,J={onRequestStart(X,G){return Q.onRequestStart(X,{...G,history:this.history})},onRequestUpgrade(X,G,F,W){return Q.onRequestUpgrade(X,G,F,W)},onResponseStart(X,G,F,W){return B.statusCode=G,B.headers=F,Q.onResponseStart(X,G,F,W)},onResponseData(X,G){return B.body.push(G),Q.onResponseData(X,G)},onResponseEnd(X,G){B.trailers=G;let F=Buffer.concat(B.body);Y[h8].record(A,{statusCode:B.statusCode,headers:B.headers,body:F,trailers:B.trailers}).then(()=>{Q.onResponseEnd(X,G)}).catch((W)=>{Q.onResponseError(X,W)})}};return this[Na].dispatch(A,J)}#B(A,Q){try{let{response:B}=A,Y={pause(){},resume(){},abort(C){this.aborted=!0,this.reason=C},aborted:!1,paused:!1};Q.onRequestStart(Y),Q.onResponseStart(Y,B.statusCode,B.headers);let J=Buffer.from(B.body,"base64");Q.onResponseData(Y,J),Q.onResponseEnd(Y,B.trailers)}catch(B){Q.onError?.(B)}}async loadSnapshots(A){if(await this[h8].loadSnapshots(A||this[Pq]),this[Da]=!0,this[T6]==="playback")this.#Y()}async saveSnapshots(A){return this[h8].saveSnapshots(A||this[Pq])}#Y(){for(let A of this[h8].getSnapshots()){let{request:Q,responses:B,response:Y}=A,J=new URL(Q.url),C=this.get(J.origin),X=B?B[0]:Y;if(!X)continue;C.intercept({path:J.pathname+J.search,method:Q.method,headers:Q.headers,body:Q.body}).reply(X.statusCode,X.body,{headers:X.headers,trailers:X.trailers}).persist()}}getRecorder(){return this[h8]}getMode(){return this[T6]}clearSnapshots(){this[h8].clear()}resetCallCounts(){this[h8].resetCallCounts()}deleteSnapshot(A){return this[h8].deleteSnapshot(A)}getSnapshotInfo(A){return this[h8].getSnapshotInfo(A)}replaceSnapshots(A){this[h8].replaceSnapshots(A)}async close(){await this[h8].close(),await this[Na]?.close(),await super.close()}}SwQ.exports=TwQ});var OS=R((iiY,gwQ)=>{var _wQ=Symbol.for("undici.globalDispatcher.1"),{InvalidArgumentError:y_0}=QB(),g_0=x$();if(ywQ()===void 0)vwQ(new g_0);function vwQ(A){if(!A||typeof A.dispatch!=="function")throw new y_0("Argument agent must implement Agent");Object.defineProperty(globalThis,_wQ,{value:A,writable:!0,enumerable:!1,configurable:!1})}function ywQ(){return globalThis[_wQ]}var h_0=["fetch","Headers","Response","Request","FormData","WebSocket","CloseEvent","ErrorEvent","MessageEvent","EventSource"];gwQ.exports={setGlobalDispatcher:vwQ,getGlobalDispatcher:ywQ,installedExports:h_0}});var BV=R((niY,hwQ)=>{var S6=u("node:assert"),x_0=pL();hwQ.exports=class{#A;#Q=!1;#B=!1;#Y=!1;constructor(Q){if(typeof Q!=="object"||Q===null)throw TypeError("handler must be an object");this.#A=x_0.wrap(Q)}onRequestStart(...Q){this.#A.onRequestStart?.(...Q)}onRequestUpgrade(...Q){return S6(!this.#Q),S6(!this.#B),this.#A.onRequestUpgrade?.(...Q)}onResponseStart(...Q){return S6(!this.#Q),S6(!this.#B),S6(!this.#Y),this.#Y=!0,this.#A.onResponseStart?.(...Q)}onResponseData(...Q){return S6(!this.#Q),S6(!this.#B),this.#A.onResponseData?.(...Q)}onResponseEnd(...Q){return S6(!this.#Q),S6(!this.#B),this.#Q=!0,this.#A.onResponseEnd?.(...Q)}onResponseError(...Q){return this.#B=!0,this.#A.onResponseError?.(...Q)}onBodySent(){}}});var Ra=R((siY,mwQ)=>{var x8=lQ(),{kBodyUsed:Tq}=Q0(),Ma=u("node:assert"),{InvalidArgumentError:La}=QB(),f_0=u("node:events"),b_0=[300,301,302,303,307,308],xwQ=Symbol("body"),fwQ=()=>{};class qa{constructor(A){this[xwQ]=A,this[Tq]=!1}async*[Symbol.asyncIterator](){Ma(!this[Tq],"disturbed"),this[Tq]=!0,yield*this[xwQ]}}class za{static buildDispatch(A,Q){if(Q!=null&&(!Number.isInteger(Q)||Q<0))throw new La("maxRedirections must be a positive number");let B=A.dispatch.bind(A);return(Y,J)=>B(Y,new za(B,Q,Y,J))}constructor(A,Q,B,Y){if(Q!=null&&(!Number.isInteger(Q)||Q<0))throw new La("maxRedirections must be a positive number");this.dispatch=A,this.location=null;let{maxRedirections:J,...C}=B;if(this.opts=C,this.maxRedirections=Q,this.handler=Y,this.history=[],x8.isStream(this.opts.body)){if(x8.bodyLength(this.opts.body)===0)this.opts.body.on("data",function(){Ma(!1)});if(typeof this.opts.body.readableDidRead!=="boolean")this.opts.body[Tq]=!1,f_0.prototype.on.call(this.opts.body,"data",function(){this[Tq]=!0})}else if(this.opts.body&&typeof this.opts.body.pipeTo==="function")this.opts.body=new qa(this.opts.body);else if(this.opts.body&&typeof this.opts.body!=="string"&&!ArrayBuffer.isView(this.opts.body)&&x8.isIterable(this.opts.body)&&!x8.isFormDataLike(this.opts.body))this.opts.body=new qa(this.opts.body)}onRequestStart(A,Q){this.handler.onRequestStart?.(A,{...Q,history:this.history})}onRequestUpgrade(A,Q,B,Y){this.handler.onRequestUpgrade?.(A,Q,B,Y)}onResponseStart(A,Q,B,Y){if(this.opts.throwOnMaxRedirect&&this.history.length>=this.maxRedirections)throw Error("max redirects");if((Q===301||Q===302)&&this.opts.method==="POST"){if(this.opts.method="GET",x8.isStream(this.opts.body))x8.destroy(this.opts.body.on("error",fwQ));this.opts.body=null}if(Q===303&&this.opts.method!=="HEAD"){if(this.opts.method="GET",x8.isStream(this.opts.body))x8.destroy(this.opts.body.on("error",fwQ));this.opts.body=null}if(this.location=this.history.length>=this.maxRedirections||x8.isDisturbed(this.opts.body)||b_0.indexOf(Q)===-1?null:B.location,this.opts.origin)this.history.push(new URL(this.opts.path,this.opts.origin));if(!this.location){this.handler.onResponseStart?.(A,Q,B,Y);return}let{origin:J,pathname:C,search:X}=x8.parseURL(new URL(this.location,this.opts.origin&&new URL(this.opts.path,this.opts.origin))),G=X?`${C}${X}`:C,F=`${J}${G}`;for(let W of this.history)if(W.toString()===F)throw new La(`Redirect loop detected. Cannot redirect to ${J}. This typically happens when using a Client or Pool with cross-origin redirects. Use an Agent for cross-origin redirects.`);this.opts.headers=m_0(this.opts.headers,Q===303,this.opts.origin!==J),this.opts.path=G,this.opts.origin=J,this.opts.query=null}onResponseData(A,Q){if(this.location);else this.handler.onResponseData?.(A,Q)}onResponseEnd(A,Q){if(this.location)this.dispatch(this.opts,this);else this.handler.onResponseEnd(A,Q)}onResponseError(A,Q){this.handler.onResponseError?.(A,Q)}}function bwQ(A,Q,B){if(A.length===4)return x8.headerNameToString(A)==="host";if(Q&&x8.headerNameToString(A).startsWith("content-"))return!0;if(B&&(A.length===13||A.length===6||A.length===19)){let Y=x8.headerNameToString(A);return Y==="authorization"||Y==="cookie"||Y==="proxy-authorization"}return!1}function m_0(A,Q,B){let Y=[];if(Array.isArray(A)){for(let J=0;J{var u_0=Ra();function d_0({maxRedirections:A}={}){return(Q)=>{return function(Y,J){let{maxRedirections:C=A,...X}=Y;if(C==null||C===0)return Q(Y,J);let G={...X},F=new u_0(Q,C,G,J);return Q(G,F)}}}uwQ.exports=d_0});var pwQ=R((aiY,lwQ)=>{var c_0=BV(),{ResponseError:l_0}=QB();class cwQ extends c_0{#A;#Q;#B;#Y;#J;constructor(A,{handler:Q}){super(Q)}#C(A){return(this.#Q??"").indexOf(A)===0}onRequestStart(A,Q){return this.#A=0,this.#Q=null,this.#B=null,this.#Y=null,this.#J="",super.onRequestStart(A,Q)}onResponseStart(A,Q,B,Y){if(this.#A=Q,this.#Y=B,this.#Q=B["content-type"],this.#A<400)return super.onResponseStart(A,Q,B,Y);if(this.#C("application/json")||this.#C("text/plain"))this.#B=new TextDecoder("utf-8")}onResponseData(A,Q){if(this.#A<400)return super.onResponseData(A,Q);this.#J+=this.#B?.decode(Q,{stream:!0})??""}onResponseEnd(A,Q){if(this.#A>=400){if(this.#J+=this.#B?.decode(void 0,{stream:!1})??"",this.#C("application/json"))try{this.#J=JSON.parse(this.#J)}catch{}let B,Y=Error.stackTraceLimit;Error.stackTraceLimit=0;try{B=new l_0("Response Error",this.#A,{body:this.#J,headers:this.#Y})}finally{Error.stackTraceLimit=Y}super.onResponseError(A,B)}else super.onResponseEnd(A,Q)}onResponseError(A,Q){super.onResponseError(A,Q)}}lwQ.exports=()=>{return(A)=>{return function(B,Y){return A(B,new cwQ(B,{handler:Y}))}}}});var nwQ=R((oiY,iwQ)=>{var p_0=KS();iwQ.exports=(A)=>{return(Q)=>{return function(Y,J){return Q(Y,new p_0({...Y,retryOptions:{...A,...Y.retryOptions}},{handler:J,dispatch:Q}))}}}});var awQ=R((tiY,rwQ)=>{var{InvalidArgumentError:i_0,RequestAbortedError:n_0}=QB(),s_0=BV();class swQ extends s_0{#A=1048576;#Q=!1;#B=0;#Y=null;aborted=!1;reason=!1;constructor({maxSize:A,signal:Q},B){if(A!=null&&(!Number.isFinite(A)||A<1))throw new i_0("maxSize must be a number greater than 0");super(B);this.#A=A??this.#A}#J(A){this.aborted=!0,this.reason=A}onRequestStart(A,Q){return A.abort=this.#J.bind(this),this.#Y=A,super.onRequestStart(A,Q)}onResponseStart(A,Q,B,Y){let J=B["content-length"];if(J!=null&&J>this.#A)throw new n_0(`Response size (${J}) larger than maxSize (${this.#A})`);if(this.aborted===!0)return!0;return super.onResponseStart(A,Q,B,Y)}onResponseError(A,Q){if(this.#Q)return;Q=this.#Y?.reason??Q,super.onResponseError(A,Q)}onResponseData(A,Q){if(this.#B=this.#B+Q.length,this.#B>=this.#A)if(this.#Q=!0,this.aborted===!0)super.onResponseError(A,this.reason);else super.onResponseEnd(A,{});return!0}onResponseEnd(A,Q){if(this.#Q)return;if(this.#Y.aborted===!0){super.onResponseError(A,this.reason);return}super.onResponseEnd(A,Q)}}function r_0({maxSize:A}={maxSize:1048576}){return(Q)=>{return function(Y,J){let{dumpMaxSize:C=A}=Y,X=new swQ({maxSize:C,signal:Y.signal},J);return Q(Y,X)}}}rwQ.exports=r_0});var AjQ=R((eiY,ewQ)=>{var{isIP:a_0}=u("node:net"),{lookup:o_0}=u("node:dns"),t_0=BV(),{InvalidArgumentError:YV,InformationalError:e_0}=QB(),wa=Math.pow(2,31)-1;class owQ{#A=0;#Q=0;#B=new Map;dualStack=!0;affinity=null;lookup=null;pick=null;constructor(A){this.#A=A.maxTTL,this.#Q=A.maxItems,this.dualStack=A.dualStack,this.affinity=A.affinity,this.lookup=A.lookup??this.#Y,this.pick=A.pick??this.#J}get full(){return this.#B.size===this.#Q}runLookup(A,Q,B){let Y=this.#B.get(A.hostname);if(Y==null&&this.full){B(null,A);return}let J={affinity:this.affinity,dualStack:this.dualStack,lookup:this.lookup,pick:this.pick,...Q.dns,maxTTL:this.#A,maxItems:this.#Q};if(Y==null)this.lookup(A,J,(C,X)=>{if(C||X==null||X.length===0){B(C??new e_0("No DNS entries found"));return}this.setRecords(A,X);let G=this.#B.get(A.hostname),F=this.pick(A,G,J.affinity),W;if(typeof F.port==="number")W=`:${F.port}`;else if(A.port!=="")W=`:${A.port}`;else W="";B(null,new URL(`${A.protocol}//${F.family===6?`[${F.address}]`:F.address}${W}`))});else{let C=this.pick(A,Y,J.affinity);if(C==null){this.#B.delete(A.hostname),this.runLookup(A,Q,B);return}let X;if(typeof C.port==="number")X=`:${C.port}`;else if(A.port!=="")X=`:${A.port}`;else X="";B(null,new URL(`${A.protocol}//${C.family===6?`[${C.address}]`:C.address}${X}`))}}#Y(A,Q,B){o_0(A.hostname,{all:!0,family:this.dualStack===!1?this.affinity:0,order:"ipv4first"},(Y,J)=>{if(Y)return B(Y);let C=new Map;for(let X of J)C.set(`${X.address}:${X.family}`,X);B(null,C.values())})}#J(A,Q,B){let Y=null,{records:J,offset:C}=Q,X;if(this.dualStack){if(B==null)if(C==null||C===wa)Q.offset=0,B=4;else Q.offset++,B=(Q.offset&1)===1?6:4;if(J[B]!=null&&J[B].ips.length>0)X=J[B];else X=J[B===4?6:4]}else X=J[B];if(X==null||X.ips.length===0)return Y;if(X.offset==null||X.offset===wa)X.offset=0;else X.offset++;let G=X.offset%X.ips.length;if(Y=X.ips[G]??null,Y==null)return Y;if(Date.now()-Y.timestamp>Y.ttl)return X.ips.splice(G,1),this.pick(A,Q,B);return Y}pickFamily(A,Q){let B=this.#B.get(A.hostname)?.records;if(!B)return null;let Y=B[Q];if(!Y)return null;if(Y.offset==null||Y.offset===wa)Y.offset=0;else Y.offset++;let J=Y.offset%Y.ips.length,C=Y.ips[J]??null;if(C==null)return C;if(Date.now()-C.timestamp>C.ttl)Y.ips.splice(J,1);return C}setRecords(A,Q){let B=Date.now(),Y={records:{4:null,6:null}};for(let J of Q){if(J.timestamp=B,typeof J.ttl==="number")J.ttl=Math.min(J.ttl,this.#A);else J.ttl=this.#A;let C=Y.records[J.family]??{ips:[]};C.ips.push(J),Y.records[J.family]=C}this.#B.set(A.hostname,Y)}deleteRecords(A){this.#B.delete(A.hostname)}getHandler(A,Q){return new twQ(this,A,Q)}}class twQ extends t_0{#A=null;#Q=null;#B=null;#Y=null;#J=null;#C=null;#F=!0;constructor(A,{origin:Q,handler:B,dispatch:Y,newOrigin:J},C){super(B);this.#Y=Q,this.#C=J,this.#Q={...C},this.#A=A,this.#B=Y}onResponseError(A,Q){switch(Q.code){case"ETIMEDOUT":case"ECONNREFUSED":{if(this.#A.dualStack){if(!this.#F){super.onResponseError(A,Q);return}this.#F=!1;let B=this.#C.hostname[0]==="["?4:6,Y=this.#A.pickFamily(this.#Y,B);if(Y==null){super.onResponseError(A,Q);return}let J;if(typeof Y.port==="number")J=`:${Y.port}`;else if(this.#Y.port!=="")J=`:${this.#Y.port}`;else J="";let C={...this.#Q,origin:`${this.#Y.protocol}//${Y.family===6?`[${Y.address}]`:Y.address}${J}`};this.#B(C,this);return}super.onResponseError(A,Q);break}case"ENOTFOUND":this.#A.deleteRecords(this.#Y),super.onResponseError(A,Q);break;default:super.onResponseError(A,Q);break}}}ewQ.exports=(A)=>{if(A?.maxTTL!=null&&(typeof A?.maxTTL!=="number"||A?.maxTTL<0))throw new YV("Invalid maxTTL. Must be a positive number");if(A?.maxItems!=null&&(typeof A?.maxItems!=="number"||A?.maxItems<1))throw new YV("Invalid maxItems. Must be a positive number and greater than zero");if(A?.affinity!=null&&A?.affinity!==4&&A?.affinity!==6)throw new YV("Invalid affinity. Must be either 4 or 6");if(A?.dualStack!=null&&typeof A?.dualStack!=="boolean")throw new YV("Invalid dualStack. Must be a boolean");if(A?.lookup!=null&&typeof A?.lookup!=="function")throw new YV("Invalid lookup. Must be a function");if(A?.pick!=null&&typeof A?.pick!=="function")throw new YV("Invalid pick. Must be a function");let Q=A?.dualStack??!0,B;if(Q)B=A?.affinity??null;else B=A?.affinity??4;let Y={maxTTL:A?.maxTTL??1e4,lookup:A?.lookup??null,pick:A?.pick??null,dualStack:Q,affinity:B,maxItems:A?.maxItems??1/0},J=new owQ(Y);return(C)=>{return function(G,F){let W=G.origin.constructor===URL?G.origin:new URL(G.origin);if(a_0(W.hostname)!==0)return C(G,F);return J.runLookup(W,G,(Z,U)=>{if(Z)return F.onResponseError(null,Z);let $={...G,servername:W.hostname,origin:U.origin,headers:{host:W.host,...G.headers}};C($,J.getHandler({origin:W,dispatch:C,handler:F,newOrigin:U},G))}),!0}}}});var Sq=R((AnY,BjQ)=>{var{safeHTTPMethods:QjQ,pathHasQueryOrFragment:Av0}=lQ(),{serializePathWithQuery:Qv0}=lQ();function Bv0(A){if(!A.origin)throw Error("opts.origin is undefined");let Q=A.path||"/";if(A.query&&!Av0(A.path))Q=Qv0(Q,A.query);return{origin:A.origin.toString(),method:A.method,path:Q,headers:A.headers}}function Yv0(A){let Q;if(A.headers==null)Q={};else if(typeof A.headers[Symbol.iterator]==="function"){Q={};for(let B of A.headers){if(!Array.isArray(B))throw Error("opts.headers is not a valid header map");let[Y,J]=B;if(typeof Y!=="string"||typeof J!=="string")throw Error("opts.headers is not a valid header map");Q[Y.toLowerCase()]=J}}else if(typeof A.headers==="object"){Q={};for(let B of Object.keys(A.headers))Q[B.toLowerCase()]=A.headers[B]}else throw Error("opts.headers is not an object");return Q}function Jv0(A){if(typeof A!=="object")throw TypeError(`expected key to be object, got ${typeof A}`);for(let Q of["origin","method","path"])if(typeof A[Q]!=="string")throw TypeError(`expected key.${Q} to be string, got ${typeof A[Q]}`);if(A.headers!==void 0&&typeof A.headers!=="object")throw TypeError(`expected headers to be object, got ${typeof A}`)}function Cv0(A){if(typeof A!=="object")throw TypeError(`expected value to be object, got ${typeof A}`);for(let Q of["statusCode","cachedAt","staleAt","deleteAt"])if(typeof A[Q]!=="number")throw TypeError(`expected value.${Q} to be number, got ${typeof A[Q]}`);if(typeof A.statusMessage!=="string")throw TypeError(`expected value.statusMessage to be string, got ${typeof A.statusMessage}`);if(A.headers!=null&&typeof A.headers!=="object")throw TypeError(`expected value.rawHeaders to be object, got ${typeof A.headers}`);if(A.vary!==void 0&&typeof A.vary!=="object")throw TypeError(`expected value.vary to be object, got ${typeof A.vary}`);if(A.etag!==void 0&&typeof A.etag!=="string")throw TypeError(`expected value.etag to be string, got ${typeof A.etag}`)}function Xv0(A){let Q={},B;if(Array.isArray(A)){B=[];for(let Y of A)B.push(...Y.split(","))}else B=A.split(",");for(let Y=0;Y=2&&G[0]==='"'&&G[G.length-1]==='"')G=G.substring(1,G.length-1);let F=parseInt(G,10);if(F!==F)continue;if(X==="max-age"&&X in Q&&Q[X]>=F)continue;Q[X]=F;break}case"private":case"no-cache":if(G){if(G[0]==='"'){let F=[G.substring(1)],W=G[G.length-1]==='"';if(!W)for(let Z=Y+1;Z{function $v0(A){switch(A[3]){case",":return Uv0(A);case" ":return Ev0(A);default:return Kv0(A)}}function Uv0(A){if(A.length!==29||A[4]!==" "||A[7]!==" "||A[11]!==" "||A[16]!==" "||A[19]!==":"||A[22]!==":"||A[25]!==" "||A[26]!=="G"||A[27]!=="M"||A[28]!=="T")return;let Q=-1;if(A[0]==="S"&&A[1]==="u"&&A[2]==="n")Q=0;else if(A[0]==="M"&&A[1]==="o"&&A[2]==="n")Q=1;else if(A[0]==="T"&&A[1]==="u"&&A[2]==="e")Q=2;else if(A[0]==="W"&&A[1]==="e"&&A[2]==="d")Q=3;else if(A[0]==="T"&&A[1]==="h"&&A[2]==="u")Q=4;else if(A[0]==="F"&&A[1]==="r"&&A[2]==="i")Q=5;else if(A[0]==="S"&&A[1]==="a"&&A[2]==="t")Q=6;else return;let B=0;if(A[5]==="0"){let E=A.charCodeAt(6);if(E<49||E>57)return;B=E-48}else{let E=A.charCodeAt(5);if(E<49||E>51)return;let K=A.charCodeAt(6);if(K<48||K>57)return;B=(E-48)*10+(K-48)}let Y=-1;if(A[8]==="J"&&A[9]==="a"&&A[10]==="n")Y=0;else if(A[8]==="F"&&A[9]==="e"&&A[10]==="b")Y=1;else if(A[8]==="M"&&A[9]==="a")if(A[10]==="r")Y=2;else if(A[10]==="y")Y=4;else return;else if(A[8]==="J")if(A[9]==="a"&&A[10]==="n")Y=0;else if(A[9]==="u")if(A[10]==="n")Y=5;else if(A[10]==="l")Y=6;else return;else return;else if(A[8]==="A")if(A[9]==="p"&&A[10]==="r")Y=3;else if(A[9]==="u"&&A[10]==="g")Y=7;else return;else if(A[8]==="S"&&A[9]==="e"&&A[10]==="p")Y=8;else if(A[8]==="O"&&A[9]==="c"&&A[10]==="t")Y=9;else if(A[8]==="N"&&A[9]==="o"&&A[10]==="v")Y=10;else if(A[8]==="D"&&A[9]==="e"&&A[10]==="c")Y=11;else return;let J=A.charCodeAt(12);if(J<48||J>57)return;let C=A.charCodeAt(13);if(C<48||C>57)return;let X=A.charCodeAt(14);if(X<48||X>57)return;let G=A.charCodeAt(15);if(G<48||G>57)return;let F=(J-48)*1000+(C-48)*100+(X-48)*10+(G-48),W=0;if(A[17]==="0"){let E=A.charCodeAt(18);if(E<48||E>57)return;W=E-48}else{let E=A.charCodeAt(17);if(E<48||E>50)return;let K=A.charCodeAt(18);if(K<48||K>57)return;if(E===50&&K>51)return;W=(E-48)*10+(K-48)}let Z=0;if(A[20]==="0"){let E=A.charCodeAt(21);if(E<48||E>57)return;Z=E-48}else{let E=A.charCodeAt(20);if(E<48||E>53)return;let K=A.charCodeAt(21);if(K<48||K>57)return;Z=(E-48)*10+(K-48)}let U=0;if(A[23]==="0"){let E=A.charCodeAt(24);if(E<48||E>57)return;U=E-48}else{let E=A.charCodeAt(23);if(E<48||E>53)return;let K=A.charCodeAt(24);if(K<48||K>57)return;U=(E-48)*10+(K-48)}let $=new Date(Date.UTC(F,Y,B,W,Z,U));return $.getUTCDay()===Q?$:void 0}function Ev0(A){if(A.length!==24||A[7]!==" "||A[10]!==" "||A[19]!==" ")return;let Q=-1;if(A[0]==="S"&&A[1]==="u"&&A[2]==="n")Q=0;else if(A[0]==="M"&&A[1]==="o"&&A[2]==="n")Q=1;else if(A[0]==="T"&&A[1]==="u"&&A[2]==="e")Q=2;else if(A[0]==="W"&&A[1]==="e"&&A[2]==="d")Q=3;else if(A[0]==="T"&&A[1]==="h"&&A[2]==="u")Q=4;else if(A[0]==="F"&&A[1]==="r"&&A[2]==="i")Q=5;else if(A[0]==="S"&&A[1]==="a"&&A[2]==="t")Q=6;else return;let B=-1;if(A[4]==="J"&&A[5]==="a"&&A[6]==="n")B=0;else if(A[4]==="F"&&A[5]==="e"&&A[6]==="b")B=1;else if(A[4]==="M"&&A[5]==="a")if(A[6]==="r")B=2;else if(A[6]==="y")B=4;else return;else if(A[4]==="J")if(A[5]==="a"&&A[6]==="n")B=0;else if(A[5]==="u")if(A[6]==="n")B=5;else if(A[6]==="l")B=6;else return;else return;else if(A[4]==="A")if(A[5]==="p"&&A[6]==="r")B=3;else if(A[5]==="u"&&A[6]==="g")B=7;else return;else if(A[4]==="S"&&A[5]==="e"&&A[6]==="p")B=8;else if(A[4]==="O"&&A[5]==="c"&&A[6]==="t")B=9;else if(A[4]==="N"&&A[5]==="o"&&A[6]==="v")B=10;else if(A[4]==="D"&&A[5]==="e"&&A[6]==="c")B=11;else return;let Y=0;if(A[8]===" "){let E=A.charCodeAt(9);if(E<49||E>57)return;Y=E-48}else{let E=A.charCodeAt(8);if(E<49||E>51)return;let K=A.charCodeAt(9);if(K<48||K>57)return;Y=(E-48)*10+(K-48)}let J=0;if(A[11]==="0"){let E=A.charCodeAt(12);if(E<48||E>57)return;J=E-48}else{let E=A.charCodeAt(11);if(E<48||E>50)return;let K=A.charCodeAt(12);if(K<48||K>57)return;if(E===50&&K>51)return;J=(E-48)*10+(K-48)}let C=0;if(A[14]==="0"){let E=A.charCodeAt(15);if(E<48||E>57)return;C=E-48}else{let E=A.charCodeAt(14);if(E<48||E>53)return;let K=A.charCodeAt(15);if(K<48||K>57)return;C=(E-48)*10+(K-48)}let X=0;if(A[17]==="0"){let E=A.charCodeAt(18);if(E<48||E>57)return;X=E-48}else{let E=A.charCodeAt(17);if(E<48||E>53)return;let K=A.charCodeAt(18);if(K<48||K>57)return;X=(E-48)*10+(K-48)}let G=A.charCodeAt(20);if(G<48||G>57)return;let F=A.charCodeAt(21);if(F<48||F>57)return;let W=A.charCodeAt(22);if(W<48||W>57)return;let Z=A.charCodeAt(23);if(Z<48||Z>57)return;let U=(G-48)*1000+(F-48)*100+(W-48)*10+(Z-48),$=new Date(Date.UTC(U,B,Y,J,C,X));return $.getUTCDay()===Q?$:void 0}function Kv0(A){let Q=-1,B=-1;if(A[0]==="S"){if(A[1]==="u"&&A[2]==="n"&&A[3]==="d"&&A[4]==="a"&&A[5]==="y")B=0,Q=6;else if(A[1]==="a"&&A[2]==="t"&&A[3]==="u"&&A[4]==="r"&&A[5]==="d"&&A[6]==="a"&&A[7]==="y")B=6,Q=8}else if(A[0]==="M"&&A[1]==="o"&&A[2]==="n"&&A[3]==="d"&&A[4]==="a"&&A[5]==="y")B=1,Q=6;else if(A[0]==="T"){if(A[1]==="u"&&A[2]==="e"&&A[3]==="s"&&A[4]==="d"&&A[5]==="a"&&A[6]==="y")B=2,Q=7;else if(A[1]==="h"&&A[2]==="u"&&A[3]==="r"&&A[4]==="s"&&A[5]==="d"&&A[6]==="a"&&A[7]==="y")B=4,Q=8}else if(A[0]==="W"&&A[1]==="e"&&A[2]==="d"&&A[3]==="n"&&A[4]==="e"&&A[5]==="s"&&A[6]==="d"&&A[7]==="a"&&A[8]==="y")B=3,Q=9;else if(A[0]==="F"&&A[1]==="r"&&A[2]==="i"&&A[3]==="d"&&A[4]==="a"&&A[5]==="y")B=5,Q=6;else return;if(A[Q]!==","||A.length-Q-1!==23||A[Q+1]!==" "||A[Q+4]!=="-"||A[Q+8]!=="-"||A[Q+11]!==" "||A[Q+14]!==":"||A[Q+17]!==":"||A[Q+20]!==" "||A[Q+21]!=="G"||A[Q+22]!=="M"||A[Q+23]!=="T")return;let Y=0;if(A[Q+2]==="0"){let $=A.charCodeAt(Q+3);if($<49||$>57)return;Y=$-48}else{let $=A.charCodeAt(Q+2);if($<49||$>51)return;let E=A.charCodeAt(Q+3);if(E<48||E>57)return;Y=($-48)*10+(E-48)}let J=-1;if(A[Q+5]==="J"&&A[Q+6]==="a"&&A[Q+7]==="n")J=0;else if(A[Q+5]==="F"&&A[Q+6]==="e"&&A[Q+7]==="b")J=1;else if(A[Q+5]==="M"&&A[Q+6]==="a"&&A[Q+7]==="r")J=2;else if(A[Q+5]==="A"&&A[Q+6]==="p"&&A[Q+7]==="r")J=3;else if(A[Q+5]==="M"&&A[Q+6]==="a"&&A[Q+7]==="y")J=4;else if(A[Q+5]==="J"&&A[Q+6]==="u"&&A[Q+7]==="n")J=5;else if(A[Q+5]==="J"&&A[Q+6]==="u"&&A[Q+7]==="l")J=6;else if(A[Q+5]==="A"&&A[Q+6]==="u"&&A[Q+7]==="g")J=7;else if(A[Q+5]==="S"&&A[Q+6]==="e"&&A[Q+7]==="p")J=8;else if(A[Q+5]==="O"&&A[Q+6]==="c"&&A[Q+7]==="t")J=9;else if(A[Q+5]==="N"&&A[Q+6]==="o"&&A[Q+7]==="v")J=10;else if(A[Q+5]==="D"&&A[Q+6]==="e"&&A[Q+7]==="c")J=11;else return;let C=A.charCodeAt(Q+9);if(C<48||C>57)return;let X=A.charCodeAt(Q+10);if(X<48||X>57)return;let G=(C-48)*10+(X-48);G+=G<70?2000:1900;let F=0;if(A[Q+12]==="0"){let $=A.charCodeAt(Q+13);if($<48||$>57)return;F=$-48}else{let $=A.charCodeAt(Q+12);if($<48||$>50)return;let E=A.charCodeAt(Q+13);if(E<48||E>57)return;if($===50&&E>51)return;F=($-48)*10+(E-48)}let W=0;if(A[Q+15]==="0"){let $=A.charCodeAt(Q+16);if($<48||$>57)return;W=$-48}else{let $=A.charCodeAt(Q+15);if($<48||$>53)return;let E=A.charCodeAt(Q+16);if(E<48||E>57)return;W=($-48)*10+(E-48)}let Z=0;if(A[Q+18]==="0"){let $=A.charCodeAt(Q+19);if($<48||$>57)return;Z=$-48}else{let $=A.charCodeAt(Q+18);if($<48||$>53)return;let E=A.charCodeAt(Q+19);if(E<48||E>57)return;Z=($-48)*10+(E-48)}let U=new Date(Date.UTC(G,J,Y,F,W,Z));return U.getUTCDay()===B?U:void 0}YjQ.exports={parseHttpDate:$v0}});var WjQ=R((BnY,FjQ)=>{var Vv0=lQ(),{parseCacheControlHeader:Iv0,parseVaryHeader:Hv0,isEtagUsable:Dv0}=Sq(),{parseHttpDate:CjQ}=JjQ();function Nv0(){}var XjQ=[200,203,204,206,300,301,308,404,405,410,414,501],Lv0=[206,304],qv0=2147483647000;class GjQ{#A;#Q;#B;#Y;#J;#C;constructor({store:A,type:Q,cacheByDefault:B},Y,J){this.#Y=A,this.#Q=Q,this.#B=B,this.#A=Y,this.#J=J}onRequestStart(A,Q){this.#C?.destroy(),this.#C=void 0,this.#J.onRequestStart?.(A,Q)}onRequestUpgrade(A,Q,B,Y){this.#J.onRequestUpgrade?.(A,Q,B,Y)}onResponseStart(A,Q,B,Y){let J=()=>this.#J.onResponseStart?.(A,Q,B,Y);if(!Vv0.safeHTTPMethods.includes(this.#A.method)&&Q>=200&&Q<=399){try{this.#Y.delete(this.#A)?.catch?.(Nv0)}catch{}return J()}let C=B["cache-control"],X=B["last-modified"]&&XjQ.includes(Q);if(!C&&!B.expires&&!X&&!this.#B)return J();let G=C?Iv0(C):{};if(!Mv0(this.#Q,Q,B,G))return J();let F=Date.now(),W=B.age?zv0(B.age):void 0;if(W&&W>=qv0)return J();let Z=typeof B.date==="string"?CjQ(B.date):void 0,U=Rv0(this.#Q,F,W,B,Z,G)??this.#B;if(U===void 0||W&&W>U)return J();let $=Z?Z.getTime():F,E=U+$;if(F>=E)return J();let K;if(this.#A.headers&&B.vary){if(K=Hv0(B.vary,this.#A.headers),!K)return J()}let I=wv0($,G,E),V=jv0(B,G),H={statusCode:Q,statusMessage:Y,headers:V,vary:K,cacheControlDirectives:G,cachedAt:W?F-W:F,staleAt:E,deleteAt:I};if(typeof B.etag==="string"&&Dv0(B.etag))H.etag=B.etag;if(this.#C=this.#Y.createWriteStream(this.#A,H),!this.#C)return J();let D=this;return this.#C.on("drain",()=>A.resume()).on("error",function(){D.#C=void 0,D.#Y.delete(D.#A)}).on("close",function(){if(D.#C===this)D.#C=void 0;A.resume()}),J()}onResponseData(A,Q){if(this.#C?.write(Q)===!1)A.pause();this.#J.onResponseData?.(A,Q)}onResponseEnd(A,Q){this.#C?.end(),this.#J.onResponseEnd?.(A,Q)}onResponseError(A,Q){this.#C?.destroy(Q),this.#C=void 0,this.#J.onResponseError?.(A,Q)}}function Mv0(A,Q,B,Y){if(Q<200||Lv0.includes(Q))return!1;if(!XjQ.includes(Q)&&!B.expires&&!Y.public&&Y["max-age"]===void 0&&!(Y.private&&A==="private")&&!(Y["s-maxage"]!==void 0&&A==="shared"))return!1;if(Y["no-store"])return!1;if(A==="shared"&&Y.private===!0)return!1;if(B.vary?.includes("*"))return!1;if(B.authorization){if(!Y.public||typeof B.authorization!=="string")return!1;if(Array.isArray(Y["no-cache"])&&Y["no-cache"].includes("authorization"))return!1;if(Array.isArray(Y.private)&&Y.private.includes("authorization"))return!1}return!0}function zv0(A){let Q=parseInt(Array.isArray(A)?A[0]:A);return isNaN(Q)?void 0:Q*1000}function Rv0(A,Q,B,Y,J,C){if(A==="shared"){let G=C["s-maxage"];if(G!==void 0)return G>0?G*1000:void 0}let X=C["max-age"];if(X!==void 0)return X>0?X*1000:void 0;if(typeof Y.expires==="string"){let G=CjQ(Y.expires);if(G){if(Q>=G.getTime())return;if(J){if(J>=G)return;if(B!==void 0&&B>G-J)return}return G.getTime()-Q}}if(typeof Y["last-modified"]==="string"){let G=new Date(Y["last-modified"]);if(Ov0(G)){if(G.getTime()>=Q)return;return(Q-G.getTime())*0.1}}if(C.immutable)return 31536000;return}function wv0(A,Q,B){let Y=-1/0,J=-1/0,C=-1/0;if(Q["stale-while-revalidate"])Y=B+Q["stale-while-revalidate"]*1000;if(Q["stale-if-error"])J=B+Q["stale-if-error"]*1000;if(Y===-1/0&&J===-1/0)C=A+31536000000;return Math.max(B,Y,J,C)}function jv0(A,Q){let B=["connection","proxy-authenticate","proxy-authentication-info","proxy-authorization","proxy-connection","te","transfer-encoding","upgrade","age"];if(A.connection)if(Array.isArray(A.connection))B.push(...A.connection.map((J)=>J.trim()));else B.push(...A.connection.split(",").map((J)=>J.trim()));if(Array.isArray(Q["no-cache"]))B.push(...Q["no-cache"]);if(Array.isArray(Q.private))B.push(...Q.private);let Y;for(let J of B)if(A[J])Y??={...A},delete Y[J];return Y??A}function Ov0(A){return A instanceof Date&&Number.isFinite(A.valueOf())}FjQ.exports=GjQ});var ja=R((YnY,EjQ)=>{var{Writable:Pv0}=u("node:stream"),{EventEmitter:Tv0}=u("node:events"),{assertCacheKey:ZjQ,assertCacheValue:Sv0}=Sq();class UjQ extends Tv0{#A=1024;#Q=104857600;#B=5242880;#Y=0;#J=0;#C=new Map;#F=!1;constructor(A){super();if(A){if(typeof A!=="object")throw TypeError("MemoryCacheStore options must be an object");if(A.maxCount!==void 0){if(typeof A.maxCount!=="number"||!Number.isInteger(A.maxCount)||A.maxCount<0)throw TypeError("MemoryCacheStore options.maxCount must be a non-negative integer");this.#A=A.maxCount}if(A.maxSize!==void 0){if(typeof A.maxSize!=="number"||!Number.isInteger(A.maxSize)||A.maxSize<0)throw TypeError("MemoryCacheStore options.maxSize must be a non-negative integer");this.#Q=A.maxSize}if(A.maxEntrySize!==void 0){if(typeof A.maxEntrySize!=="number"||!Number.isInteger(A.maxEntrySize)||A.maxEntrySize<0)throw TypeError("MemoryCacheStore options.maxEntrySize must be a non-negative integer");this.#B=A.maxEntrySize}}}get size(){return this.#Y}isFull(){return this.#Y>=this.#Q||this.#J>=this.#A}get(A){ZjQ(A);let Q=`${A.origin}:${A.path}`,B=Date.now(),Y=this.#C.get(Q),J=Y?$jQ(A,Y,B):null;return J==null?void 0:{statusMessage:J.statusMessage,statusCode:J.statusCode,headers:J.headers,body:J.body,vary:J.vary?J.vary:void 0,etag:J.etag,cacheControlDirectives:J.cacheControlDirectives,cachedAt:J.cachedAt,staleAt:J.staleAt,deleteAt:J.deleteAt}}createWriteStream(A,Q){ZjQ(A),Sv0(Q);let B=`${A.origin}:${A.path}`,Y=this,J={...A,...Q,body:[],size:0};return new Pv0({write(C,X,G){if(typeof C==="string")C=Buffer.from(C,X);if(J.size+=C.byteLength,J.size>=Y.#B)this.destroy();else J.body.push(C);G(null)},final(C){let X=Y.#C.get(B);if(!X)X=[],Y.#C.set(B,X);let G=$jQ(A,X,Date.now());if(G){let F=X.indexOf(G);X.splice(F,1,J),Y.#Y-=G.size}else X.push(J),Y.#J+=1;if(Y.#Y+=J.size,Y.#Y>Y.#Q||Y.#J>Y.#A){if(!Y.#F)Y.emit("maxSizeExceeded",{size:Y.#Y,maxSize:Y.#Q,count:Y.#J,maxCount:Y.#A}),Y.#F=!0;for(let[F,W]of Y.#C){for(let Z of W.splice(0,W.length/2))Y.#Y-=Z.size,Y.#J-=1;if(W.length===0)Y.#C.delete(F)}if(Y.#YY.deleteAt>B&&Y.method===A.method&&(Y.vary==null||Object.keys(Y.vary).every((J)=>{if(Y.vary[J]===null)return A.headers[J]===void 0;return Y.vary[J]===A.headers[J]})))}EjQ.exports=UjQ});var IjQ=R((JnY,VjQ)=>{var kv0=u("node:assert");class KjQ{#A=!1;#Q;#B;#Y;#J;constructor(A,Q,B){if(typeof A!=="function")throw TypeError("callback must be a function");this.#Q=A,this.#B=Q,this.#J=B}onRequestStart(A,Q){this.#A=!1,this.#Y=Q}onRequestUpgrade(A,Q,B,Y){this.#B.onRequestUpgrade?.(A,Q,B,Y)}onResponseStart(A,Q,B,Y){if(kv0(this.#Q!=null),this.#A=Q===304||this.#J&&Q>=500&&Q<=504,this.#Q(this.#A,this.#Y),this.#Q=null,this.#A)return!0;this.#B.onRequestStart?.(A,this.#Y),this.#B.onResponseStart?.(A,Q,B,Y)}onResponseData(A,Q){if(this.#A)return;return this.#B.onResponseData?.(A,Q)}onResponseEnd(A,Q){if(this.#A)return;this.#B.onResponseEnd?.(A,Q)}onResponseError(A,Q){if(this.#A)return;if(this.#Q)this.#Q(!1),this.#Q=null;if(typeof this.#B.onResponseError==="function")this.#B.onResponseError(A,Q);else throw Q}}VjQ.exports=KjQ});var LjQ=R((CnY,NjQ)=>{var HjQ=u("node:assert"),{Readable:_v0}=u("node:stream"),JV=lQ(),kq=WjQ(),vv0=ja(),yv0=IjQ(),{assertCacheStore:gv0,assertCacheMethods:hv0,makeCacheKey:xv0,normalizeHeaders:fv0,parseCacheControlHeader:bv0}=Sq(),{AbortError:mv0}=QB();function uv0(A,Q){if(Q?.["no-cache"])return!0;if(A.cacheControlDirectives?.["no-cache"]&&!Array.isArray(A.cacheControlDirectives["no-cache"]))return!0;let B=Date.now();if(B>A.staleAt){if(Q?.["max-stale"]){let Y=A.staleAt+Q["max-stale"]*1000;return B>Y}return!0}if(Q?.["min-fresh"]){let Y=A.staleAt-B,J=Q["min-fresh"]*1000;return Y<=J}return!1}function dv0(A){let Q=A.cacheControlDirectives?.["stale-while-revalidate"];if(!Q)return!1;let B=Date.now(),Y=A.staleAt+Q*1000;return B<=Y}function cv0(A,Q,B,Y,J,C){if(C?.["only-if-cached"]){let X=!1;try{if(typeof Y.onConnect==="function"){if(Y.onConnect(()=>{X=!0}),X)return}if(typeof Y.onHeaders==="function"){if(Y.onHeaders(504,[],()=>{},"Gateway Timeout"),X)return}if(typeof Y.onComplete==="function")Y.onComplete([])}catch(G){if(typeof Y.onError==="function")Y.onError(G)}return!0}return A(J,new kq(Q,B,Y))}function Oa(A,Q,B,Y,J,C){let X=JV.isStream(B.body)?B.body:_v0.from(B.body??[]);HjQ(!X.destroyed,"stream should not be destroyed"),HjQ(!X.readableDidRead,"stream should not be readableDidRead");let G={resume(){X.resume()},pause(){X.pause()},get paused(){return X.isPaused()},get aborted(){return X.destroyed},get reason(){return X.errored},abort(W){X.destroy(W??new mv0)}};if(X.on("error",function(W){if(!this.readableEnded)if(typeof A.onResponseError==="function")A.onResponseError(G,W);else throw W}).on("close",function(){if(!this.errored)A.onResponseEnd?.(G,{})}),A.onRequestStart?.(G,J),X.destroyed)return;let F={...B.headers,age:String(Y)};if(C)F.warning='110 - "response is stale"';if(A.onResponseStart?.(G,B.statusCode,F,B.statusMessage),Q.method==="HEAD")X.destroy();else X.on("data",function(W){A.onResponseData?.(G,W)})}function DjQ(A,Q,B,Y,J,C,X){if(!X)return cv0(A,Q,B,Y,J,C);let G=Date.now();if(G>X.deleteAt)return A(J,new kq(Q,B,Y));let F=Math.round((G-X.cachedAt)/1000);if(C?.["max-age"]&&F>=C["max-age"])return A(J,Y);if(uv0(X,C)){if(JV.isStream(J.body)&&JV.bodyLength(J.body)!==0)return A(J,new kq(Q,B,Y));if(dv0(X))return Oa(Y,J,X,F,null,!0),queueMicrotask(()=>{let $={...J.headers,"if-modified-since":new Date(X.cachedAt).toUTCString()};if(X.etag)$["if-none-match"]=X.etag;if(X.vary)$={...$,...X.vary};A({...J,headers:$},new kq(Q,B,{onRequestStart(){},onRequestUpgrade(){},onResponseStart(){},onResponseData(){},onResponseEnd(){},onResponseError(){}}))}),!0;let W=!1,Z=X.cacheControlDirectives["stale-if-error"]??C?.["stale-if-error"];if(Z)W=G{if($)Oa(Y,J,X,F,E,!0);else if(JV.isStream(X.body))X.body.on("error",()=>{}).destroy()},new kq(Q,B,Y),W))}if(JV.isStream(J.body))J.body.on("error",()=>{}).destroy();Oa(Y,J,X,F,null,!1)}NjQ.exports=(A={})=>{let{store:Q=new vv0,methods:B=["GET"],cacheByDefault:Y=void 0,type:J="shared"}=A;if(typeof A!=="object"||A===null)throw TypeError(`expected type of opts to be an Object, got ${A===null?"null":typeof A}`);if(gv0(Q,"opts.store"),hv0(B,"opts.methods"),typeof Y<"u"&&typeof Y!=="number")throw TypeError(`expected opts.cacheByDefault to be number or undefined, got ${typeof Y}`);if(typeof J<"u"&&J!=="shared"&&J!=="private")throw TypeError(`expected opts.type to be shared, private, or undefined, got ${typeof J}`);let C={store:Q,methods:B,cacheByDefault:Y,type:J},X=JV.safeHTTPMethods.filter((G)=>B.includes(G)===!1);return(G)=>{return(F,W)=>{if(!F.origin||X.includes(F.method))return G(F,W);F={...F,headers:fv0(F)};let Z=F.headers?.["cache-control"]?bv0(F.headers["cache-control"]):void 0;if(Z?.["no-store"])return G(F,W);let U=xv0(F),$=Q.get(U);if($&&typeof $.then==="function")$.then((E)=>{DjQ(G,C,U,W,F,Z,E)});else DjQ(G,C,U,W,F,Z,$);return!0}}}});var OjQ=R((XnY,jjQ)=>{var{createInflate:Pa,createGunzip:qjQ,createBrotliDecompress:lv0,createZstdDecompress:MjQ}=u("node:zlib"),{pipeline:pv0}=u("node:stream"),iv0=BV(),zjQ={gzip:qjQ,"x-gzip":qjQ,br:lv0,deflate:Pa,compress:Pa,"x-compress":Pa,...MjQ?{zstd:MjQ}:{}},nv0=[204,304],RjQ=!1;class wjQ extends iv0{#A=[];#Q;#B;#Y;constructor(A,{skipStatusCodes:Q=nv0,skipErrorResponses:B=!0}={}){super(A);this.#B=Q,this.#Y=B}#J(A,Q){if(!A||Q<200)return!0;if(this.#B.includes(Q))return!0;if(this.#Y&&Q>=400)return!0;return!1}#C(A){let Q=A.split(","),B=[];for(let Y=Q.length-1;Y>=0;Y--){let J=Q[Y].trim();if(!J)continue;if(!zjQ[J])return B.length=0,B;B.push(zjQ[J]())}return B}#F(A,Q){A.on("readable",()=>{let B;while((B=A.read())!==null)if(super.onResponseData(Q,B)===!1)break}),A.on("error",(B)=>{super.onResponseError(Q,B)})}#X(A){let Q=this.#A[0];this.#F(Q,A),Q.on("end",()=>{super.onResponseEnd(A,{})})}#G(A){let Q=this.#A[this.#A.length-1];this.#F(Q,A),this.#Q=pv0(this.#A,(B)=>{if(B){super.onResponseError(A,B);return}super.onResponseEnd(A,{})})}#Z(){this.#A.length=0,this.#Q=null}onResponseStart(A,Q,B,Y){let J=B["content-encoding"];if(this.#J(J,Q))return super.onResponseStart(A,Q,B,Y);let C=this.#C(J.toLowerCase());if(C.length===0)return this.#Z(),super.onResponseStart(A,Q,B,Y);this.#A=C;let{"content-encoding":X,"content-length":G,...F}=B;if(this.#A.length===1)this.#X(A);else this.#G(A);super.onResponseStart(A,Q,F,Y)}onResponseData(A,Q){if(this.#A.length>0){this.#A[0].write(Q);return}super.onResponseData(A,Q)}onResponseEnd(A,Q){if(this.#A.length>0){this.#A[0].end(),this.#Z();return}super.onResponseEnd(A,Q)}onResponseError(A,Q){if(this.#A.length>0){for(let B of this.#A)B.destroy(Q);this.#Z()}super.onResponseError(A,Q)}}function sv0(A={}){if(!RjQ)process.emitWarning("DecompressInterceptor is experimental and subject to change","ExperimentalWarning"),RjQ=!0;return(Q)=>{return(B,Y)=>{let J=new wjQ(Y,A);return Q(B,J)}}}jjQ.exports=sv0});var TjQ=R((GnY,PjQ)=>{var{Writable:rv0}=u("node:stream"),{assertCacheKey:Ta,assertCacheValue:av0}=Sq(),Sa;PjQ.exports=class{#A=2000000000;#Q=1/0;#B;#Y;#J;#C;#F;#X;#G;#Z;constructor(Q){if(Q){if(typeof Q!=="object")throw TypeError("SqliteCacheStore options must be an object");if(Q.maxEntrySize!==void 0){if(typeof Q.maxEntrySize!=="number"||!Number.isInteger(Q.maxEntrySize)||Q.maxEntrySize<0)throw TypeError("SqliteCacheStore options.maxEntrySize must be a non-negative integer");if(Q.maxEntrySize>2000000000)throw TypeError("SqliteCacheStore options.maxEntrySize must be less than 2gb");this.#A=Q.maxEntrySize}if(Q.maxCount!==void 0){if(typeof Q.maxCount!=="number"||!Number.isInteger(Q.maxCount)||Q.maxCount<0)throw TypeError("SqliteCacheStore options.maxCount must be a non-negative integer");this.#Q=Q.maxCount}}if(!Sa)Sa=u("node:sqlite").DatabaseSync;this.#B=new Sa(Q?.location??":memory:"),this.#B.exec(` +${A.format(Q)}`.trim())}}SwQ.exports=TwQ});var Ta=R((PnY,vwQ)=>{var{InvalidArgumentError:T_0}=QB();function S_0(A={}){let{ignoreHeaders:Q=[],excludeHeaders:B=[],matchHeaders:Y=[],caseSensitive:J=!1}=A;return{ignore:new Set(Q.map((C)=>J?C:C.toLowerCase())),exclude:new Set(B.map((C)=>J?C:C.toLowerCase())),match:new Set(Y.map((C)=>J?C:C.toLowerCase()))}}var Pa;try{Pa=u("node:crypto")}catch{}var k_0=Pa?.hash?(A)=>Pa.hash("sha256",A,"base64url"):(A)=>Buffer.from(A).toString("base64url");function _wQ(A){return Array.isArray(A)&&(A.length&1)===0}function __0(A=[]){if(A.length===0)return()=>!1;return function(B){let Y;for(let J of A)if(typeof J==="string"){if(!Y)Y=B.toLowerCase();if(Y.includes(J.toLowerCase()))return!0}else if(J instanceof RegExp){if(J.test(B))return!0}return!1}}function v_0(A){let Q={};if(!A)return Q;if(_wQ(A)){for(let B=0;B{var{writeFile:h_0,readFile:g_0,mkdir:x_0}=u("node:fs/promises"),{dirname:f_0,resolve:ywQ}=u("node:path"),{setTimeout:b_0,clearTimeout:hwQ}=u("node:timers"),{InvalidArgumentError:gwQ,UndiciError:m_0}=QB(),{hashId:u_0,isUrlExcludedFactory:d_0,normalizeHeaders:xwQ,createHeaderFilters:fwQ}=Ta();function Sq(A,Q,B={}){let Y=new URL(A.path,A.origin),J=A._normalizedHeaders||xwQ(A.headers);if(!A._normalizedHeaders)A._normalizedHeaders=J;return{method:A.method||"GET",url:B.matchQuery!==!1?Y.toString():`${Y.origin}${Y.pathname}`,headers:bwQ(J,Q,B),body:B.matchBody!==!1&&A.body?String(A.body):""}}function bwQ(A,Q,B={}){if(!A||typeof A!=="object")return{};let{caseSensitive:Y=!1}=B,J={},{ignore:C,exclude:X,match:G}=Q;for(let[F,W]of Object.entries(A)){let Z=Y?F:F.toLowerCase();if(X.has(Z))continue;if(C.has(Z))continue;if(G.size!==0){if(!G.has(Z))continue}J[Z]=W}return J}function mwQ(A,Q,B={}){if(!A||typeof A!=="object")return{};let{caseSensitive:Y=!1}=B,J={},{exclude:C}=Q;for(let[X,G]of Object.entries(A)){let F=Y?X:X.toLowerCase();if(C.has(F))continue;J[F]=G}return J}function kq(A){let Q=[A.method,A.url];if(A.headers&&typeof A.headers==="object"){let Y=Object.keys(A.headers).sort();for(let J of Y){let C=Array.isArray(A.headers[J])?A.headers[J]:[A.headers[J]];Q.push(J);for(let X of C.sort())Q.push(String(X))}}Q.push(A.body);let B=Q.join("|");return u_0(B)}class uwQ{#A;#Q;#B=new Map;#Y;#J=1/0;#C=!1;#F;constructor(A={}){if(this.#Y=A.snapshotPath,this.#J=A.maxSnapshots||1/0,this.#C=A.autoFlush||!1,this.flushInterval=A.flushInterval||30000,this._flushTimer=null,this.matchOptions={matchHeaders:A.matchHeaders||[],ignoreHeaders:A.ignoreHeaders||[],excludeHeaders:A.excludeHeaders||[],matchBody:A.matchBody!==!1,matchQuery:A.matchQuery!==!1,caseSensitive:A.caseSensitive||!1},this.#F=fwQ(this.matchOptions),this.shouldRecord=A.shouldRecord||(()=>!0),this.shouldPlayback=A.shouldPlayback||(()=>!0),this.#Q=d_0(A.excludeUrls),this.#C&&this.#Y)this.#X()}async record(A,Q){if(!this.shouldRecord(A))return;let B=new URL(A.path,A.origin).toString();if(this.#Q(B))return;let Y=Sq(A,this.#F,this.matchOptions),J=kq(Y),C=xwQ(Q.headers),X={statusCode:Q.statusCode,headers:mwQ(C,this.#F,this.matchOptions),body:Buffer.isBuffer(Q.body)?Q.body.toString("base64"):Buffer.from(String(Q.body||"")).toString("base64"),trailers:Q.trailers};if(this.#B.size>=this.#J&&!this.#B.has(J)){let F=this.#B.keys().next().value;this.#B.delete(F)}let G=this.#B.get(J);if(G&&G.responses)G.responses.push(X),G.timestamp=new Date().toISOString();else this.#B.set(J,{request:Y,responses:[X],callCount:0,timestamp:new Date().toISOString()});if(this.#C&&this.#Y)this.#Z()}findSnapshot(A){if(!this.shouldPlayback(A))return;let Q=new URL(A.path,A.origin).toString();if(this.#Q(Q))return;let B=Sq(A,this.#F,this.matchOptions),Y=kq(B),J=this.#B.get(Y);if(!J)return;let C=J.callCount||0,X=Math.min(C,J.responses.length-1);return J.callCount=C+1,{...J,response:J.responses[X]}}async loadSnapshots(A){let Q=A||this.#Y;if(!Q)throw new gwQ("Snapshot path is required");try{let B=await g_0(ywQ(Q),"utf8"),Y=JSON.parse(B);if(Array.isArray(Y)){this.#B.clear();for(let{hash:J,snapshot:C}of Y)this.#B.set(J,C)}else this.#B=new Map(Object.entries(Y))}catch(B){if(B.code==="ENOENT")this.#B.clear();else throw new m_0(`Failed to load snapshots from ${Q}`,{cause:B})}}async saveSnapshots(A){let Q=A||this.#Y;if(!Q)throw new gwQ("Snapshot path is required");let B=ywQ(Q);await x_0(f_0(B),{recursive:!0});let Y=Array.from(this.#B.entries()).map(([J,C])=>({hash:J,snapshot:C}));await h_0(B,JSON.stringify(Y,null,2),{flush:!0})}clear(){this.#B.clear()}getSnapshots(){return Array.from(this.#B.values())}size(){return this.#B.size}resetCallCounts(){for(let A of this.#B.values())A.callCount=0}deleteSnapshot(A){let Q=Sq(A,this.#F,this.matchOptions),B=kq(Q);return this.#B.delete(B)}getSnapshotInfo(A){let Q=Sq(A,this.#F,this.matchOptions),B=kq(Q),Y=this.#B.get(B);if(!Y)return null;return{hash:B,request:Y.request,responseCount:Y.responses?Y.responses.length:Y.response?1:0,callCount:Y.callCount||0,timestamp:Y.timestamp}}replaceSnapshots(A){if(this.#B.clear(),Array.isArray(A))for(let{hash:Q,snapshot:B}of A)this.#B.set(Q,B);else if(A&&typeof A==="object")this.#B=new Map(Object.entries(A))}#X(){return this.#Z()}#G(){if(this.#A)hwQ(this.#A),this.saveSnapshots().catch(()=>{}),this.#A=null}#Z(){this.#A=b_0(()=>{if(this.saveSnapshots().catch(()=>{}),this.#C)this.#A?.refresh();else this.#A=null},1000)}destroy(){if(this.#G(),this.#A)hwQ(this.#A),this.#A=null}async close(){if(this.#Y&&this.#B.size!==0)await this.saveSnapshots();this.destroy()}}dwQ.exports={SnapshotRecorder:uwQ,formatRequestKey:Sq,createRequestHash:kq,filterHeadersForMatching:bwQ,filterHeadersForStorage:mwQ,createHeaderFilters:fwQ}});var nwQ=R((SnY,iwQ)=>{var c_0=u$(),l_0=Oa(),{SnapshotRecorder:p_0}=cwQ(),i_0=rL(),{InvalidArgumentError:n_0,UndiciError:s_0}=QB(),{validateSnapshotMode:r_0}=Ta(),f8=Symbol("kSnapshotRecorder"),SG=Symbol("kSnapshotMode"),_q=Symbol("kSnapshotPath"),Sa=Symbol("kSnapshotLoaded"),ka=Symbol("kRealAgent"),lwQ=!1;class pwQ extends l_0{constructor(A={}){if(!lwQ)process.emitWarning("SnapshotAgent is experimental and subject to change","ExperimentalWarning"),lwQ=!0;let{mode:Q="record",snapshotPath:B=null,...Y}=A;super(Y);if(r_0(Q),(Q==="playback"||Q==="update")&&!B)throw new n_0(`snapshotPath is required when mode is '${Q}'`);if(this[SG]=Q,this[_q]=B,this[f8]=new p_0({snapshotPath:this[_q],mode:this[SG],maxSnapshots:A.maxSnapshots,autoFlush:A.autoFlush,flushInterval:A.flushInterval,matchHeaders:A.matchHeaders,ignoreHeaders:A.ignoreHeaders,excludeHeaders:A.excludeHeaders,matchBody:A.matchBody,matchQuery:A.matchQuery,caseSensitive:A.caseSensitive,shouldRecord:A.shouldRecord,shouldPlayback:A.shouldPlayback,excludeUrls:A.excludeUrls}),this[Sa]=!1,this[SG]==="record"||this[SG]==="update")this[ka]=new c_0(A);if((this[SG]==="playback"||this[SG]==="update")&&this[_q])this.loadSnapshots().catch(()=>{})}dispatch(A,Q){Q=i_0.wrap(Q);let B=this[SG];if(B==="playback"||B==="update"){if(!this[Sa])return this.#A(A,Q);let Y=this[f8].findSnapshot(A);if(Y)return this.#B(Y,Q);else if(B==="update")return this.#Q(A,Q);else{let J=new s_0(`No snapshot found for ${A.method||"GET"} ${A.path}`);if(Q.onError){Q.onError(J);return}throw J}}else if(B==="record")return this.#Q(A,Q)}async#A(A,Q){return await this.loadSnapshots(),this.dispatch(A,Q)}#Q(A,Q){let B={statusCode:null,headers:{},trailers:{},body:[]},Y=this,J={onRequestStart(X,G){return Q.onRequestStart(X,{...G,history:this.history})},onRequestUpgrade(X,G,F,W){return Q.onRequestUpgrade(X,G,F,W)},onResponseStart(X,G,F,W){return B.statusCode=G,B.headers=F,Q.onResponseStart(X,G,F,W)},onResponseData(X,G){return B.body.push(G),Q.onResponseData(X,G)},onResponseEnd(X,G){B.trailers=G;let F=Buffer.concat(B.body);Y[f8].record(A,{statusCode:B.statusCode,headers:B.headers,body:F,trailers:B.trailers}).then(()=>{Q.onResponseEnd(X,G)}).catch((W)=>{Q.onResponseError(X,W)})}};return this[ka].dispatch(A,J)}#B(A,Q){try{let{response:B}=A,Y={pause(){},resume(){},abort(C){this.aborted=!0,this.reason=C},aborted:!1,paused:!1};Q.onRequestStart(Y),Q.onResponseStart(Y,B.statusCode,B.headers);let J=Buffer.from(B.body,"base64");Q.onResponseData(Y,J),Q.onResponseEnd(Y,B.trailers)}catch(B){Q.onError?.(B)}}async loadSnapshots(A){if(await this[f8].loadSnapshots(A||this[_q]),this[Sa]=!0,this[SG]==="playback")this.#Y()}async saveSnapshots(A){return this[f8].saveSnapshots(A||this[_q])}#Y(){for(let A of this[f8].getSnapshots()){let{request:Q,responses:B,response:Y}=A,J=new URL(Q.url),C=this.get(J.origin),X=B?B[0]:Y;if(!X)continue;C.intercept({path:J.pathname+J.search,method:Q.method,headers:Q.headers,body:Q.body}).reply(X.statusCode,X.body,{headers:X.headers,trailers:X.trailers}).persist()}}getRecorder(){return this[f8]}getMode(){return this[SG]}clearSnapshots(){this[f8].clear()}resetCallCounts(){this[f8].resetCallCounts()}deleteSnapshot(A){return this[f8].deleteSnapshot(A)}getSnapshotInfo(A){return this[f8].getSnapshotInfo(A)}replaceSnapshots(A){this[f8].replaceSnapshots(A)}async close(){await this[f8].close(),await this[ka]?.close(),await super.close()}}iwQ.exports=pwQ});var _S=R((knY,owQ)=>{var swQ=Symbol.for("undici.globalDispatcher.1"),{InvalidArgumentError:a_0}=QB(),o_0=u$();if(awQ()===void 0)rwQ(new o_0);function rwQ(A){if(!A||typeof A.dispatch!=="function")throw new a_0("Argument agent must implement Agent");Object.defineProperty(globalThis,swQ,{value:A,writable:!0,enumerable:!1,configurable:!1})}function awQ(){return globalThis[swQ]}var t_0=["fetch","Headers","Response","Request","FormData","WebSocket","CloseEvent","ErrorEvent","MessageEvent","EventSource"];owQ.exports={setGlobalDispatcher:rwQ,getGlobalDispatcher:awQ,installedExports:t_0}});var XV=R((_nY,twQ)=>{var kG=u("node:assert"),e_0=rL();twQ.exports=class{#A;#Q=!1;#B=!1;#Y=!1;constructor(Q){if(typeof Q!=="object"||Q===null)throw TypeError("handler must be an object");this.#A=e_0.wrap(Q)}onRequestStart(...Q){this.#A.onRequestStart?.(...Q)}onRequestUpgrade(...Q){return kG(!this.#Q),kG(!this.#B),this.#A.onRequestUpgrade?.(...Q)}onResponseStart(...Q){return kG(!this.#Q),kG(!this.#B),kG(!this.#Y),this.#Y=!0,this.#A.onResponseStart?.(...Q)}onResponseData(...Q){return kG(!this.#Q),kG(!this.#B),this.#A.onResponseData?.(...Q)}onResponseEnd(...Q){return kG(!this.#Q),kG(!this.#B),this.#Q=!0,this.#A.onResponseEnd?.(...Q)}onResponseError(...Q){return this.#B=!0,this.#A.onResponseError?.(...Q)}onBodySent(){}}});var ga=R((vnY,BjQ)=>{var b8=lQ(),{kBodyUsed:vq}=Q0(),ya=u("node:assert"),{InvalidArgumentError:_a}=QB(),Av0=u("node:events"),Qv0=[300,301,302,303,307,308],ewQ=Symbol("body"),AjQ=()=>{};class va{constructor(A){this[ewQ]=A,this[vq]=!1}async*[Symbol.asyncIterator](){ya(!this[vq],"disturbed"),this[vq]=!0,yield*this[ewQ]}}class ha{static buildDispatch(A,Q){if(Q!=null&&(!Number.isInteger(Q)||Q<0))throw new _a("maxRedirections must be a positive number");let B=A.dispatch.bind(A);return(Y,J)=>B(Y,new ha(B,Q,Y,J))}constructor(A,Q,B,Y){if(Q!=null&&(!Number.isInteger(Q)||Q<0))throw new _a("maxRedirections must be a positive number");this.dispatch=A,this.location=null;let{maxRedirections:J,...C}=B;if(this.opts=C,this.maxRedirections=Q,this.handler=Y,this.history=[],b8.isStream(this.opts.body)){if(b8.bodyLength(this.opts.body)===0)this.opts.body.on("data",function(){ya(!1)});if(typeof this.opts.body.readableDidRead!=="boolean")this.opts.body[vq]=!1,Av0.prototype.on.call(this.opts.body,"data",function(){this[vq]=!0})}else if(this.opts.body&&typeof this.opts.body.pipeTo==="function")this.opts.body=new va(this.opts.body);else if(this.opts.body&&typeof this.opts.body!=="string"&&!ArrayBuffer.isView(this.opts.body)&&b8.isIterable(this.opts.body)&&!b8.isFormDataLike(this.opts.body))this.opts.body=new va(this.opts.body)}onRequestStart(A,Q){this.handler.onRequestStart?.(A,{...Q,history:this.history})}onRequestUpgrade(A,Q,B,Y){this.handler.onRequestUpgrade?.(A,Q,B,Y)}onResponseStart(A,Q,B,Y){if(this.opts.throwOnMaxRedirect&&this.history.length>=this.maxRedirections)throw Error("max redirects");if((Q===301||Q===302)&&this.opts.method==="POST"){if(this.opts.method="GET",b8.isStream(this.opts.body))b8.destroy(this.opts.body.on("error",AjQ));this.opts.body=null}if(Q===303&&this.opts.method!=="HEAD"){if(this.opts.method="GET",b8.isStream(this.opts.body))b8.destroy(this.opts.body.on("error",AjQ));this.opts.body=null}if(this.location=this.history.length>=this.maxRedirections||b8.isDisturbed(this.opts.body)||Qv0.indexOf(Q)===-1?null:B.location,this.opts.origin)this.history.push(new URL(this.opts.path,this.opts.origin));if(!this.location){this.handler.onResponseStart?.(A,Q,B,Y);return}let{origin:J,pathname:C,search:X}=b8.parseURL(new URL(this.location,this.opts.origin&&new URL(this.opts.path,this.opts.origin))),G=X?`${C}${X}`:C,F=`${J}${G}`;for(let W of this.history)if(W.toString()===F)throw new _a(`Redirect loop detected. Cannot redirect to ${J}. This typically happens when using a Client or Pool with cross-origin redirects. Use an Agent for cross-origin redirects.`);this.opts.headers=Bv0(this.opts.headers,Q===303,this.opts.origin!==J),this.opts.path=G,this.opts.origin=J,this.opts.query=null}onResponseData(A,Q){if(this.location);else this.handler.onResponseData?.(A,Q)}onResponseEnd(A,Q){if(this.location)this.dispatch(this.opts,this);else this.handler.onResponseEnd(A,Q)}onResponseError(A,Q){this.handler.onResponseError?.(A,Q)}}function QjQ(A,Q,B){if(A.length===4)return b8.headerNameToString(A)==="host";if(Q&&b8.headerNameToString(A).startsWith("content-"))return!0;if(B&&(A.length===13||A.length===6||A.length===19)){let Y=b8.headerNameToString(A);return Y==="authorization"||Y==="cookie"||Y==="proxy-authorization"}return!1}function Bv0(A,Q,B){let Y=[];if(Array.isArray(A)){for(let J=0;J{var Yv0=ga();function Jv0({maxRedirections:A}={}){return(Q)=>{return function(Y,J){let{maxRedirections:C=A,...X}=Y;if(C==null||C===0)return Q(Y,J);let G={...X},F=new Yv0(Q,C,G,J);return Q(G,F)}}}YjQ.exports=Jv0});var GjQ=R((hnY,XjQ)=>{var Cv0=XV(),{ResponseError:Xv0}=QB();class CjQ extends Cv0{#A;#Q;#B;#Y;#J;constructor(A,{handler:Q}){super(Q)}#C(A){return(this.#Q??"").indexOf(A)===0}onRequestStart(A,Q){return this.#A=0,this.#Q=null,this.#B=null,this.#Y=null,this.#J="",super.onRequestStart(A,Q)}onResponseStart(A,Q,B,Y){if(this.#A=Q,this.#Y=B,this.#Q=B["content-type"],this.#A<400)return super.onResponseStart(A,Q,B,Y);if(this.#C("application/json")||this.#C("text/plain"))this.#B=new TextDecoder("utf-8")}onResponseData(A,Q){if(this.#A<400)return super.onResponseData(A,Q);this.#J+=this.#B?.decode(Q,{stream:!0})??""}onResponseEnd(A,Q){if(this.#A>=400){if(this.#J+=this.#B?.decode(void 0,{stream:!1})??"",this.#C("application/json"))try{this.#J=JSON.parse(this.#J)}catch{}let B,Y=Error.stackTraceLimit;Error.stackTraceLimit=0;try{B=new Xv0("Response Error",this.#A,{body:this.#J,headers:this.#Y})}finally{Error.stackTraceLimit=Y}super.onResponseError(A,B)}else super.onResponseEnd(A,Q)}onResponseError(A,Q){super.onResponseError(A,Q)}}XjQ.exports=()=>{return(A)=>{return function(B,Y){return A(B,new CjQ(B,{handler:Y}))}}}});var WjQ=R((gnY,FjQ)=>{var Gv0=NS();FjQ.exports=(A)=>{return(Q)=>{return function(Y,J){return Q(Y,new Gv0({...Y,retryOptions:{...A,...Y.retryOptions}},{handler:J,dispatch:Q}))}}}});var UjQ=R((xnY,$jQ)=>{var{InvalidArgumentError:Fv0,RequestAbortedError:Wv0}=QB(),Zv0=XV();class ZjQ extends Zv0{#A=1048576;#Q=!1;#B=0;#Y=null;aborted=!1;reason=!1;constructor({maxSize:A,signal:Q},B){if(A!=null&&(!Number.isFinite(A)||A<1))throw new Fv0("maxSize must be a number greater than 0");super(B);this.#A=A??this.#A}#J(A){this.aborted=!0,this.reason=A}onRequestStart(A,Q){return A.abort=this.#J.bind(this),this.#Y=A,super.onRequestStart(A,Q)}onResponseStart(A,Q,B,Y){let J=B["content-length"];if(J!=null&&J>this.#A)throw new Wv0(`Response size (${J}) larger than maxSize (${this.#A})`);if(this.aborted===!0)return!0;return super.onResponseStart(A,Q,B,Y)}onResponseError(A,Q){if(this.#Q)return;Q=this.#Y?.reason??Q,super.onResponseError(A,Q)}onResponseData(A,Q){if(this.#B=this.#B+Q.length,this.#B>=this.#A)if(this.#Q=!0,this.aborted===!0)super.onResponseError(A,this.reason);else super.onResponseEnd(A,{});return!0}onResponseEnd(A,Q){if(this.#Q)return;if(this.#Y.aborted===!0){super.onResponseError(A,this.reason);return}super.onResponseEnd(A,Q)}}function $v0({maxSize:A}={maxSize:1048576}){return(Q)=>{return function(Y,J){let{dumpMaxSize:C=A}=Y,X=new ZjQ({maxSize:C,signal:Y.signal},J);return Q(Y,X)}}}$jQ.exports=$v0});var IjQ=R((fnY,VjQ)=>{var{isIP:Uv0}=u("node:net"),{lookup:Ev0}=u("node:dns"),Kv0=XV(),{InvalidArgumentError:GV,InformationalError:Vv0}=QB(),xa=Math.pow(2,31)-1;class EjQ{#A=0;#Q=0;#B=new Map;dualStack=!0;affinity=null;lookup=null;pick=null;constructor(A){this.#A=A.maxTTL,this.#Q=A.maxItems,this.dualStack=A.dualStack,this.affinity=A.affinity,this.lookup=A.lookup??this.#Y,this.pick=A.pick??this.#J}get full(){return this.#B.size===this.#Q}runLookup(A,Q,B){let Y=this.#B.get(A.hostname);if(Y==null&&this.full){B(null,A);return}let J={affinity:this.affinity,dualStack:this.dualStack,lookup:this.lookup,pick:this.pick,...Q.dns,maxTTL:this.#A,maxItems:this.#Q};if(Y==null)this.lookup(A,J,(C,X)=>{if(C||X==null||X.length===0){B(C??new Vv0("No DNS entries found"));return}this.setRecords(A,X);let G=this.#B.get(A.hostname),F=this.pick(A,G,J.affinity),W;if(typeof F.port==="number")W=`:${F.port}`;else if(A.port!=="")W=`:${A.port}`;else W="";B(null,new URL(`${A.protocol}//${F.family===6?`[${F.address}]`:F.address}${W}`))});else{let C=this.pick(A,Y,J.affinity);if(C==null){this.#B.delete(A.hostname),this.runLookup(A,Q,B);return}let X;if(typeof C.port==="number")X=`:${C.port}`;else if(A.port!=="")X=`:${A.port}`;else X="";B(null,new URL(`${A.protocol}//${C.family===6?`[${C.address}]`:C.address}${X}`))}}#Y(A,Q,B){Ev0(A.hostname,{all:!0,family:this.dualStack===!1?this.affinity:0,order:"ipv4first"},(Y,J)=>{if(Y)return B(Y);let C=new Map;for(let X of J)C.set(`${X.address}:${X.family}`,X);B(null,C.values())})}#J(A,Q,B){let Y=null,{records:J,offset:C}=Q,X;if(this.dualStack){if(B==null)if(C==null||C===xa)Q.offset=0,B=4;else Q.offset++,B=(Q.offset&1)===1?6:4;if(J[B]!=null&&J[B].ips.length>0)X=J[B];else X=J[B===4?6:4]}else X=J[B];if(X==null||X.ips.length===0)return Y;if(X.offset==null||X.offset===xa)X.offset=0;else X.offset++;let G=X.offset%X.ips.length;if(Y=X.ips[G]??null,Y==null)return Y;if(Date.now()-Y.timestamp>Y.ttl)return X.ips.splice(G,1),this.pick(A,Q,B);return Y}pickFamily(A,Q){let B=this.#B.get(A.hostname)?.records;if(!B)return null;let Y=B[Q];if(!Y)return null;if(Y.offset==null||Y.offset===xa)Y.offset=0;else Y.offset++;let J=Y.offset%Y.ips.length,C=Y.ips[J]??null;if(C==null)return C;if(Date.now()-C.timestamp>C.ttl)Y.ips.splice(J,1);return C}setRecords(A,Q){let B=Date.now(),Y={records:{4:null,6:null}};for(let J of Q){if(J.timestamp=B,typeof J.ttl==="number")J.ttl=Math.min(J.ttl,this.#A);else J.ttl=this.#A;let C=Y.records[J.family]??{ips:[]};C.ips.push(J),Y.records[J.family]=C}this.#B.set(A.hostname,Y)}deleteRecords(A){this.#B.delete(A.hostname)}getHandler(A,Q){return new KjQ(this,A,Q)}}class KjQ extends Kv0{#A=null;#Q=null;#B=null;#Y=null;#J=null;#C=null;#F=!0;constructor(A,{origin:Q,handler:B,dispatch:Y,newOrigin:J},C){super(B);this.#Y=Q,this.#C=J,this.#Q={...C},this.#A=A,this.#B=Y}onResponseError(A,Q){switch(Q.code){case"ETIMEDOUT":case"ECONNREFUSED":{if(this.#A.dualStack){if(!this.#F){super.onResponseError(A,Q);return}this.#F=!1;let B=this.#C.hostname[0]==="["?4:6,Y=this.#A.pickFamily(this.#Y,B);if(Y==null){super.onResponseError(A,Q);return}let J;if(typeof Y.port==="number")J=`:${Y.port}`;else if(this.#Y.port!=="")J=`:${this.#Y.port}`;else J="";let C={...this.#Q,origin:`${this.#Y.protocol}//${Y.family===6?`[${Y.address}]`:Y.address}${J}`};this.#B(C,this);return}super.onResponseError(A,Q);break}case"ENOTFOUND":this.#A.deleteRecords(this.#Y),super.onResponseError(A,Q);break;default:super.onResponseError(A,Q);break}}}VjQ.exports=(A)=>{if(A?.maxTTL!=null&&(typeof A?.maxTTL!=="number"||A?.maxTTL<0))throw new GV("Invalid maxTTL. Must be a positive number");if(A?.maxItems!=null&&(typeof A?.maxItems!=="number"||A?.maxItems<1))throw new GV("Invalid maxItems. Must be a positive number and greater than zero");if(A?.affinity!=null&&A?.affinity!==4&&A?.affinity!==6)throw new GV("Invalid affinity. Must be either 4 or 6");if(A?.dualStack!=null&&typeof A?.dualStack!=="boolean")throw new GV("Invalid dualStack. Must be a boolean");if(A?.lookup!=null&&typeof A?.lookup!=="function")throw new GV("Invalid lookup. Must be a function");if(A?.pick!=null&&typeof A?.pick!=="function")throw new GV("Invalid pick. Must be a function");let Q=A?.dualStack??!0,B;if(Q)B=A?.affinity??null;else B=A?.affinity??4;let Y={maxTTL:A?.maxTTL??1e4,lookup:A?.lookup??null,pick:A?.pick??null,dualStack:Q,affinity:B,maxItems:A?.maxItems??1/0},J=new EjQ(Y);return(C)=>{return function(G,F){let W=G.origin.constructor===URL?G.origin:new URL(G.origin);if(Uv0(W.hostname)!==0)return C(G,F);return J.runLookup(W,G,(Z,U)=>{if(Z)return F.onResponseError(null,Z);let $={...G,servername:W.hostname,origin:U.origin,headers:{host:W.host,...G.headers}};C($,J.getHandler({origin:W,dispatch:C,handler:F,newOrigin:U},G))}),!0}}}});var yq=R((bnY,DjQ)=>{var{safeHTTPMethods:HjQ,pathHasQueryOrFragment:Iv0}=lQ(),{serializePathWithQuery:Hv0}=lQ();function Dv0(A){if(!A.origin)throw Error("opts.origin is undefined");let Q=A.path||"/";if(A.query&&!Iv0(A.path))Q=Hv0(Q,A.query);return{origin:A.origin.toString(),method:A.method,path:Q,headers:A.headers}}function Nv0(A){let Q;if(A.headers==null)Q={};else if(typeof A.headers[Symbol.iterator]==="function"){Q={};for(let B of A.headers){if(!Array.isArray(B))throw Error("opts.headers is not a valid header map");let[Y,J]=B;if(typeof Y!=="string"||typeof J!=="string")throw Error("opts.headers is not a valid header map");Q[Y.toLowerCase()]=J}}else if(typeof A.headers==="object"){Q={};for(let B of Object.keys(A.headers))Q[B.toLowerCase()]=A.headers[B]}else throw Error("opts.headers is not an object");return Q}function Lv0(A){if(typeof A!=="object")throw TypeError(`expected key to be object, got ${typeof A}`);for(let Q of["origin","method","path"])if(typeof A[Q]!=="string")throw TypeError(`expected key.${Q} to be string, got ${typeof A[Q]}`);if(A.headers!==void 0&&typeof A.headers!=="object")throw TypeError(`expected headers to be object, got ${typeof A}`)}function qv0(A){if(typeof A!=="object")throw TypeError(`expected value to be object, got ${typeof A}`);for(let Q of["statusCode","cachedAt","staleAt","deleteAt"])if(typeof A[Q]!=="number")throw TypeError(`expected value.${Q} to be number, got ${typeof A[Q]}`);if(typeof A.statusMessage!=="string")throw TypeError(`expected value.statusMessage to be string, got ${typeof A.statusMessage}`);if(A.headers!=null&&typeof A.headers!=="object")throw TypeError(`expected value.rawHeaders to be object, got ${typeof A.headers}`);if(A.vary!==void 0&&typeof A.vary!=="object")throw TypeError(`expected value.vary to be object, got ${typeof A.vary}`);if(A.etag!==void 0&&typeof A.etag!=="string")throw TypeError(`expected value.etag to be string, got ${typeof A.etag}`)}function Mv0(A){let Q={},B;if(Array.isArray(A)){B=[];for(let Y of A)B.push(...Y.split(","))}else B=A.split(",");for(let Y=0;Y=2&&G[0]==='"'&&G[G.length-1]==='"')G=G.substring(1,G.length-1);let F=parseInt(G,10);if(F!==F)continue;if(X==="max-age"&&X in Q&&Q[X]>=F)continue;Q[X]=F;break}case"private":case"no-cache":if(G){if(G[0]==='"'){let F=[G.substring(1)],W=G[G.length-1]==='"';if(!W)for(let Z=Y+1;Z{function Ov0(A){switch(A[3]){case",":return Pv0(A);case" ":return Tv0(A);default:return Sv0(A)}}function Pv0(A){if(A.length!==29||A[4]!==" "||A[7]!==" "||A[11]!==" "||A[16]!==" "||A[19]!==":"||A[22]!==":"||A[25]!==" "||A[26]!=="G"||A[27]!=="M"||A[28]!=="T")return;let Q=-1;if(A[0]==="S"&&A[1]==="u"&&A[2]==="n")Q=0;else if(A[0]==="M"&&A[1]==="o"&&A[2]==="n")Q=1;else if(A[0]==="T"&&A[1]==="u"&&A[2]==="e")Q=2;else if(A[0]==="W"&&A[1]==="e"&&A[2]==="d")Q=3;else if(A[0]==="T"&&A[1]==="h"&&A[2]==="u")Q=4;else if(A[0]==="F"&&A[1]==="r"&&A[2]==="i")Q=5;else if(A[0]==="S"&&A[1]==="a"&&A[2]==="t")Q=6;else return;let B=0;if(A[5]==="0"){let E=A.charCodeAt(6);if(E<49||E>57)return;B=E-48}else{let E=A.charCodeAt(5);if(E<49||E>51)return;let K=A.charCodeAt(6);if(K<48||K>57)return;B=(E-48)*10+(K-48)}let Y=-1;if(A[8]==="J"&&A[9]==="a"&&A[10]==="n")Y=0;else if(A[8]==="F"&&A[9]==="e"&&A[10]==="b")Y=1;else if(A[8]==="M"&&A[9]==="a")if(A[10]==="r")Y=2;else if(A[10]==="y")Y=4;else return;else if(A[8]==="J")if(A[9]==="a"&&A[10]==="n")Y=0;else if(A[9]==="u")if(A[10]==="n")Y=5;else if(A[10]==="l")Y=6;else return;else return;else if(A[8]==="A")if(A[9]==="p"&&A[10]==="r")Y=3;else if(A[9]==="u"&&A[10]==="g")Y=7;else return;else if(A[8]==="S"&&A[9]==="e"&&A[10]==="p")Y=8;else if(A[8]==="O"&&A[9]==="c"&&A[10]==="t")Y=9;else if(A[8]==="N"&&A[9]==="o"&&A[10]==="v")Y=10;else if(A[8]==="D"&&A[9]==="e"&&A[10]==="c")Y=11;else return;let J=A.charCodeAt(12);if(J<48||J>57)return;let C=A.charCodeAt(13);if(C<48||C>57)return;let X=A.charCodeAt(14);if(X<48||X>57)return;let G=A.charCodeAt(15);if(G<48||G>57)return;let F=(J-48)*1000+(C-48)*100+(X-48)*10+(G-48),W=0;if(A[17]==="0"){let E=A.charCodeAt(18);if(E<48||E>57)return;W=E-48}else{let E=A.charCodeAt(17);if(E<48||E>50)return;let K=A.charCodeAt(18);if(K<48||K>57)return;if(E===50&&K>51)return;W=(E-48)*10+(K-48)}let Z=0;if(A[20]==="0"){let E=A.charCodeAt(21);if(E<48||E>57)return;Z=E-48}else{let E=A.charCodeAt(20);if(E<48||E>53)return;let K=A.charCodeAt(21);if(K<48||K>57)return;Z=(E-48)*10+(K-48)}let U=0;if(A[23]==="0"){let E=A.charCodeAt(24);if(E<48||E>57)return;U=E-48}else{let E=A.charCodeAt(23);if(E<48||E>53)return;let K=A.charCodeAt(24);if(K<48||K>57)return;U=(E-48)*10+(K-48)}let $=new Date(Date.UTC(F,Y,B,W,Z,U));return $.getUTCDay()===Q?$:void 0}function Tv0(A){if(A.length!==24||A[7]!==" "||A[10]!==" "||A[19]!==" ")return;let Q=-1;if(A[0]==="S"&&A[1]==="u"&&A[2]==="n")Q=0;else if(A[0]==="M"&&A[1]==="o"&&A[2]==="n")Q=1;else if(A[0]==="T"&&A[1]==="u"&&A[2]==="e")Q=2;else if(A[0]==="W"&&A[1]==="e"&&A[2]==="d")Q=3;else if(A[0]==="T"&&A[1]==="h"&&A[2]==="u")Q=4;else if(A[0]==="F"&&A[1]==="r"&&A[2]==="i")Q=5;else if(A[0]==="S"&&A[1]==="a"&&A[2]==="t")Q=6;else return;let B=-1;if(A[4]==="J"&&A[5]==="a"&&A[6]==="n")B=0;else if(A[4]==="F"&&A[5]==="e"&&A[6]==="b")B=1;else if(A[4]==="M"&&A[5]==="a")if(A[6]==="r")B=2;else if(A[6]==="y")B=4;else return;else if(A[4]==="J")if(A[5]==="a"&&A[6]==="n")B=0;else if(A[5]==="u")if(A[6]==="n")B=5;else if(A[6]==="l")B=6;else return;else return;else if(A[4]==="A")if(A[5]==="p"&&A[6]==="r")B=3;else if(A[5]==="u"&&A[6]==="g")B=7;else return;else if(A[4]==="S"&&A[5]==="e"&&A[6]==="p")B=8;else if(A[4]==="O"&&A[5]==="c"&&A[6]==="t")B=9;else if(A[4]==="N"&&A[5]==="o"&&A[6]==="v")B=10;else if(A[4]==="D"&&A[5]==="e"&&A[6]==="c")B=11;else return;let Y=0;if(A[8]===" "){let E=A.charCodeAt(9);if(E<49||E>57)return;Y=E-48}else{let E=A.charCodeAt(8);if(E<49||E>51)return;let K=A.charCodeAt(9);if(K<48||K>57)return;Y=(E-48)*10+(K-48)}let J=0;if(A[11]==="0"){let E=A.charCodeAt(12);if(E<48||E>57)return;J=E-48}else{let E=A.charCodeAt(11);if(E<48||E>50)return;let K=A.charCodeAt(12);if(K<48||K>57)return;if(E===50&&K>51)return;J=(E-48)*10+(K-48)}let C=0;if(A[14]==="0"){let E=A.charCodeAt(15);if(E<48||E>57)return;C=E-48}else{let E=A.charCodeAt(14);if(E<48||E>53)return;let K=A.charCodeAt(15);if(K<48||K>57)return;C=(E-48)*10+(K-48)}let X=0;if(A[17]==="0"){let E=A.charCodeAt(18);if(E<48||E>57)return;X=E-48}else{let E=A.charCodeAt(17);if(E<48||E>53)return;let K=A.charCodeAt(18);if(K<48||K>57)return;X=(E-48)*10+(K-48)}let G=A.charCodeAt(20);if(G<48||G>57)return;let F=A.charCodeAt(21);if(F<48||F>57)return;let W=A.charCodeAt(22);if(W<48||W>57)return;let Z=A.charCodeAt(23);if(Z<48||Z>57)return;let U=(G-48)*1000+(F-48)*100+(W-48)*10+(Z-48),$=new Date(Date.UTC(U,B,Y,J,C,X));return $.getUTCDay()===Q?$:void 0}function Sv0(A){let Q=-1,B=-1;if(A[0]==="S"){if(A[1]==="u"&&A[2]==="n"&&A[3]==="d"&&A[4]==="a"&&A[5]==="y")B=0,Q=6;else if(A[1]==="a"&&A[2]==="t"&&A[3]==="u"&&A[4]==="r"&&A[5]==="d"&&A[6]==="a"&&A[7]==="y")B=6,Q=8}else if(A[0]==="M"&&A[1]==="o"&&A[2]==="n"&&A[3]==="d"&&A[4]==="a"&&A[5]==="y")B=1,Q=6;else if(A[0]==="T"){if(A[1]==="u"&&A[2]==="e"&&A[3]==="s"&&A[4]==="d"&&A[5]==="a"&&A[6]==="y")B=2,Q=7;else if(A[1]==="h"&&A[2]==="u"&&A[3]==="r"&&A[4]==="s"&&A[5]==="d"&&A[6]==="a"&&A[7]==="y")B=4,Q=8}else if(A[0]==="W"&&A[1]==="e"&&A[2]==="d"&&A[3]==="n"&&A[4]==="e"&&A[5]==="s"&&A[6]==="d"&&A[7]==="a"&&A[8]==="y")B=3,Q=9;else if(A[0]==="F"&&A[1]==="r"&&A[2]==="i"&&A[3]==="d"&&A[4]==="a"&&A[5]==="y")B=5,Q=6;else return;if(A[Q]!==","||A.length-Q-1!==23||A[Q+1]!==" "||A[Q+4]!=="-"||A[Q+8]!=="-"||A[Q+11]!==" "||A[Q+14]!==":"||A[Q+17]!==":"||A[Q+20]!==" "||A[Q+21]!=="G"||A[Q+22]!=="M"||A[Q+23]!=="T")return;let Y=0;if(A[Q+2]==="0"){let $=A.charCodeAt(Q+3);if($<49||$>57)return;Y=$-48}else{let $=A.charCodeAt(Q+2);if($<49||$>51)return;let E=A.charCodeAt(Q+3);if(E<48||E>57)return;Y=($-48)*10+(E-48)}let J=-1;if(A[Q+5]==="J"&&A[Q+6]==="a"&&A[Q+7]==="n")J=0;else if(A[Q+5]==="F"&&A[Q+6]==="e"&&A[Q+7]==="b")J=1;else if(A[Q+5]==="M"&&A[Q+6]==="a"&&A[Q+7]==="r")J=2;else if(A[Q+5]==="A"&&A[Q+6]==="p"&&A[Q+7]==="r")J=3;else if(A[Q+5]==="M"&&A[Q+6]==="a"&&A[Q+7]==="y")J=4;else if(A[Q+5]==="J"&&A[Q+6]==="u"&&A[Q+7]==="n")J=5;else if(A[Q+5]==="J"&&A[Q+6]==="u"&&A[Q+7]==="l")J=6;else if(A[Q+5]==="A"&&A[Q+6]==="u"&&A[Q+7]==="g")J=7;else if(A[Q+5]==="S"&&A[Q+6]==="e"&&A[Q+7]==="p")J=8;else if(A[Q+5]==="O"&&A[Q+6]==="c"&&A[Q+7]==="t")J=9;else if(A[Q+5]==="N"&&A[Q+6]==="o"&&A[Q+7]==="v")J=10;else if(A[Q+5]==="D"&&A[Q+6]==="e"&&A[Q+7]==="c")J=11;else return;let C=A.charCodeAt(Q+9);if(C<48||C>57)return;let X=A.charCodeAt(Q+10);if(X<48||X>57)return;let G=(C-48)*10+(X-48);G+=G<70?2000:1900;let F=0;if(A[Q+12]==="0"){let $=A.charCodeAt(Q+13);if($<48||$>57)return;F=$-48}else{let $=A.charCodeAt(Q+12);if($<48||$>50)return;let E=A.charCodeAt(Q+13);if(E<48||E>57)return;if($===50&&E>51)return;F=($-48)*10+(E-48)}let W=0;if(A[Q+15]==="0"){let $=A.charCodeAt(Q+16);if($<48||$>57)return;W=$-48}else{let $=A.charCodeAt(Q+15);if($<48||$>53)return;let E=A.charCodeAt(Q+16);if(E<48||E>57)return;W=($-48)*10+(E-48)}let Z=0;if(A[Q+18]==="0"){let $=A.charCodeAt(Q+19);if($<48||$>57)return;Z=$-48}else{let $=A.charCodeAt(Q+18);if($<48||$>53)return;let E=A.charCodeAt(Q+19);if(E<48||E>57)return;Z=($-48)*10+(E-48)}let U=new Date(Date.UTC(G,J,Y,F,W,Z));return U.getUTCDay()===B?U:void 0}NjQ.exports={parseHttpDate:Ov0}});var wjQ=R((unY,RjQ)=>{var kv0=lQ(),{parseCacheControlHeader:_v0,parseVaryHeader:vv0,isEtagUsable:yv0}=yq(),{parseHttpDate:qjQ}=LjQ();function hv0(){}var MjQ=[200,203,204,206,300,301,308,404,405,410,414,501],gv0=[206,304],xv0=2147483647000;class zjQ{#A;#Q;#B;#Y;#J;#C;constructor({store:A,type:Q,cacheByDefault:B},Y,J){this.#Y=A,this.#Q=Q,this.#B=B,this.#A=Y,this.#J=J}onRequestStart(A,Q){this.#C?.destroy(),this.#C=void 0,this.#J.onRequestStart?.(A,Q)}onRequestUpgrade(A,Q,B,Y){this.#J.onRequestUpgrade?.(A,Q,B,Y)}onResponseStart(A,Q,B,Y){let J=()=>this.#J.onResponseStart?.(A,Q,B,Y);if(!kv0.safeHTTPMethods.includes(this.#A.method)&&Q>=200&&Q<=399){try{this.#Y.delete(this.#A)?.catch?.(hv0)}catch{}return J()}let C=B["cache-control"],X=B["last-modified"]&&MjQ.includes(Q);if(!C&&!B.expires&&!X&&!this.#B)return J();let G=C?_v0(C):{};if(!fv0(this.#Q,Q,B,G))return J();let F=Date.now(),W=B.age?bv0(B.age):void 0;if(W&&W>=xv0)return J();let Z=typeof B.date==="string"?qjQ(B.date):void 0,U=mv0(this.#Q,F,W,B,Z,G)??this.#B;if(U===void 0||W&&W>U)return J();let $=Z?Z.getTime():F,E=U+$;if(F>=E)return J();let K;if(this.#A.headers&&B.vary){if(K=vv0(B.vary,this.#A.headers),!K)return J()}let I=uv0($,G,E),V=dv0(B,G),H={statusCode:Q,statusMessage:Y,headers:V,vary:K,cacheControlDirectives:G,cachedAt:W?F-W:F,staleAt:E,deleteAt:I};if(typeof B.etag==="string"&&yv0(B.etag))H.etag=B.etag;if(this.#C=this.#Y.createWriteStream(this.#A,H),!this.#C)return J();let D=this;return this.#C.on("drain",()=>A.resume()).on("error",function(){D.#C=void 0,D.#Y.delete(D.#A)}).on("close",function(){if(D.#C===this)D.#C=void 0;A.resume()}),J()}onResponseData(A,Q){if(this.#C?.write(Q)===!1)A.pause();this.#J.onResponseData?.(A,Q)}onResponseEnd(A,Q){this.#C?.end(),this.#J.onResponseEnd?.(A,Q)}onResponseError(A,Q){this.#C?.destroy(Q),this.#C=void 0,this.#J.onResponseError?.(A,Q)}}function fv0(A,Q,B,Y){if(Q<200||gv0.includes(Q))return!1;if(!MjQ.includes(Q)&&!B.expires&&!Y.public&&Y["max-age"]===void 0&&!(Y.private&&A==="private")&&!(Y["s-maxage"]!==void 0&&A==="shared"))return!1;if(Y["no-store"])return!1;if(A==="shared"&&Y.private===!0)return!1;if(B.vary?.includes("*"))return!1;if(B.authorization){if(!Y.public||typeof B.authorization!=="string")return!1;if(Array.isArray(Y["no-cache"])&&Y["no-cache"].includes("authorization"))return!1;if(Array.isArray(Y.private)&&Y.private.includes("authorization"))return!1}return!0}function bv0(A){let Q=parseInt(Array.isArray(A)?A[0]:A);return isNaN(Q)?void 0:Q*1000}function mv0(A,Q,B,Y,J,C){if(A==="shared"){let G=C["s-maxage"];if(G!==void 0)return G>0?G*1000:void 0}let X=C["max-age"];if(X!==void 0)return X>0?X*1000:void 0;if(typeof Y.expires==="string"){let G=qjQ(Y.expires);if(G){if(Q>=G.getTime())return;if(J){if(J>=G)return;if(B!==void 0&&B>G-J)return}return G.getTime()-Q}}if(typeof Y["last-modified"]==="string"){let G=new Date(Y["last-modified"]);if(cv0(G)){if(G.getTime()>=Q)return;return(Q-G.getTime())*0.1}}if(C.immutable)return 31536000;return}function uv0(A,Q,B){let Y=-1/0,J=-1/0,C=-1/0;if(Q["stale-while-revalidate"])Y=B+Q["stale-while-revalidate"]*1000;if(Q["stale-if-error"])J=B+Q["stale-if-error"]*1000;if(Y===-1/0&&J===-1/0)C=A+31536000000;return Math.max(B,Y,J,C)}function dv0(A,Q){let B=["connection","proxy-authenticate","proxy-authentication-info","proxy-authorization","proxy-connection","te","transfer-encoding","upgrade","age"];if(A.connection)if(Array.isArray(A.connection))B.push(...A.connection.map((J)=>J.trim()));else B.push(...A.connection.split(",").map((J)=>J.trim()));if(Array.isArray(Q["no-cache"]))B.push(...Q["no-cache"]);if(Array.isArray(Q.private))B.push(...Q.private);let Y;for(let J of B)if(A[J])Y??={...A},delete Y[J];return Y??A}function cv0(A){return A instanceof Date&&Number.isFinite(A.valueOf())}RjQ.exports=zjQ});var fa=R((dnY,TjQ)=>{var{Writable:lv0}=u("node:stream"),{EventEmitter:pv0}=u("node:events"),{assertCacheKey:jjQ,assertCacheValue:iv0}=yq();class PjQ extends pv0{#A=1024;#Q=104857600;#B=5242880;#Y=0;#J=0;#C=new Map;#F=!1;constructor(A){super();if(A){if(typeof A!=="object")throw TypeError("MemoryCacheStore options must be an object");if(A.maxCount!==void 0){if(typeof A.maxCount!=="number"||!Number.isInteger(A.maxCount)||A.maxCount<0)throw TypeError("MemoryCacheStore options.maxCount must be a non-negative integer");this.#A=A.maxCount}if(A.maxSize!==void 0){if(typeof A.maxSize!=="number"||!Number.isInteger(A.maxSize)||A.maxSize<0)throw TypeError("MemoryCacheStore options.maxSize must be a non-negative integer");this.#Q=A.maxSize}if(A.maxEntrySize!==void 0){if(typeof A.maxEntrySize!=="number"||!Number.isInteger(A.maxEntrySize)||A.maxEntrySize<0)throw TypeError("MemoryCacheStore options.maxEntrySize must be a non-negative integer");this.#B=A.maxEntrySize}}}get size(){return this.#Y}isFull(){return this.#Y>=this.#Q||this.#J>=this.#A}get(A){jjQ(A);let Q=`${A.origin}:${A.path}`,B=Date.now(),Y=this.#C.get(Q),J=Y?OjQ(A,Y,B):null;return J==null?void 0:{statusMessage:J.statusMessage,statusCode:J.statusCode,headers:J.headers,body:J.body,vary:J.vary?J.vary:void 0,etag:J.etag,cacheControlDirectives:J.cacheControlDirectives,cachedAt:J.cachedAt,staleAt:J.staleAt,deleteAt:J.deleteAt}}createWriteStream(A,Q){jjQ(A),iv0(Q);let B=`${A.origin}:${A.path}`,Y=this,J={...A,...Q,body:[],size:0};return new lv0({write(C,X,G){if(typeof C==="string")C=Buffer.from(C,X);if(J.size+=C.byteLength,J.size>=Y.#B)this.destroy();else J.body.push(C);G(null)},final(C){let X=Y.#C.get(B);if(!X)X=[],Y.#C.set(B,X);let G=OjQ(A,X,Date.now());if(G){let F=X.indexOf(G);X.splice(F,1,J),Y.#Y-=G.size}else X.push(J),Y.#J+=1;if(Y.#Y+=J.size,Y.#Y>Y.#Q||Y.#J>Y.#A){if(!Y.#F)Y.emit("maxSizeExceeded",{size:Y.#Y,maxSize:Y.#Q,count:Y.#J,maxCount:Y.#A}),Y.#F=!0;for(let[F,W]of Y.#C){for(let Z of W.splice(0,W.length/2))Y.#Y-=Z.size,Y.#J-=1;if(W.length===0)Y.#C.delete(F)}if(Y.#YY.deleteAt>B&&Y.method===A.method&&(Y.vary==null||Object.keys(Y.vary).every((J)=>{if(Y.vary[J]===null)return A.headers[J]===void 0;return Y.vary[J]===A.headers[J]})))}TjQ.exports=PjQ});var _jQ=R((cnY,kjQ)=>{var nv0=u("node:assert");class SjQ{#A=!1;#Q;#B;#Y;#J;constructor(A,Q,B){if(typeof A!=="function")throw TypeError("callback must be a function");this.#Q=A,this.#B=Q,this.#J=B}onRequestStart(A,Q){this.#A=!1,this.#Y=Q}onRequestUpgrade(A,Q,B,Y){this.#B.onRequestUpgrade?.(A,Q,B,Y)}onResponseStart(A,Q,B,Y){if(nv0(this.#Q!=null),this.#A=Q===304||this.#J&&Q>=500&&Q<=504,this.#Q(this.#A,this.#Y),this.#Q=null,this.#A)return!0;this.#B.onRequestStart?.(A,this.#Y),this.#B.onResponseStart?.(A,Q,B,Y)}onResponseData(A,Q){if(this.#A)return;return this.#B.onResponseData?.(A,Q)}onResponseEnd(A,Q){if(this.#A)return;this.#B.onResponseEnd?.(A,Q)}onResponseError(A,Q){if(this.#A)return;if(this.#Q)this.#Q(!1),this.#Q=null;if(typeof this.#B.onResponseError==="function")this.#B.onResponseError(A,Q);else throw Q}}kjQ.exports=SjQ});var gjQ=R((lnY,hjQ)=>{var vjQ=u("node:assert"),{Readable:sv0}=u("node:stream"),FV=lQ(),hq=wjQ(),rv0=fa(),av0=_jQ(),{assertCacheStore:ov0,assertCacheMethods:tv0,makeCacheKey:ev0,normalizeHeaders:Ay0,parseCacheControlHeader:Qy0}=yq(),{AbortError:By0}=QB();function Yy0(A,Q){if(Q?.["no-cache"])return!0;if(A.cacheControlDirectives?.["no-cache"]&&!Array.isArray(A.cacheControlDirectives["no-cache"]))return!0;let B=Date.now();if(B>A.staleAt){if(Q?.["max-stale"]){let Y=A.staleAt+Q["max-stale"]*1000;return B>Y}return!0}if(Q?.["min-fresh"]){let Y=A.staleAt-B,J=Q["min-fresh"]*1000;return Y<=J}return!1}function Jy0(A){let Q=A.cacheControlDirectives?.["stale-while-revalidate"];if(!Q)return!1;let B=Date.now(),Y=A.staleAt+Q*1000;return B<=Y}function Cy0(A,Q,B,Y,J,C){if(C?.["only-if-cached"]){let X=!1;try{if(typeof Y.onConnect==="function"){if(Y.onConnect(()=>{X=!0}),X)return}if(typeof Y.onHeaders==="function"){if(Y.onHeaders(504,[],()=>{},"Gateway Timeout"),X)return}if(typeof Y.onComplete==="function")Y.onComplete([])}catch(G){if(typeof Y.onError==="function")Y.onError(G)}return!0}return A(J,new hq(Q,B,Y))}function ba(A,Q,B,Y,J,C){let X=FV.isStream(B.body)?B.body:sv0.from(B.body??[]);vjQ(!X.destroyed,"stream should not be destroyed"),vjQ(!X.readableDidRead,"stream should not be readableDidRead");let G={resume(){X.resume()},pause(){X.pause()},get paused(){return X.isPaused()},get aborted(){return X.destroyed},get reason(){return X.errored},abort(W){X.destroy(W??new By0)}};if(X.on("error",function(W){if(!this.readableEnded)if(typeof A.onResponseError==="function")A.onResponseError(G,W);else throw W}).on("close",function(){if(!this.errored)A.onResponseEnd?.(G,{})}),A.onRequestStart?.(G,J),X.destroyed)return;let F={...B.headers,age:String(Y)};if(C)F.warning='110 - "response is stale"';if(A.onResponseStart?.(G,B.statusCode,F,B.statusMessage),Q.method==="HEAD")X.destroy();else X.on("data",function(W){A.onResponseData?.(G,W)})}function yjQ(A,Q,B,Y,J,C,X){if(!X)return Cy0(A,Q,B,Y,J,C);let G=Date.now();if(G>X.deleteAt)return A(J,new hq(Q,B,Y));let F=Math.round((G-X.cachedAt)/1000);if(C?.["max-age"]&&F>=C["max-age"])return A(J,Y);if(Yy0(X,C)){if(FV.isStream(J.body)&&FV.bodyLength(J.body)!==0)return A(J,new hq(Q,B,Y));if(Jy0(X))return ba(Y,J,X,F,null,!0),queueMicrotask(()=>{let $={...J.headers,"if-modified-since":new Date(X.cachedAt).toUTCString()};if(X.etag)$["if-none-match"]=X.etag;if(X.vary)$={...$,...X.vary};A({...J,headers:$},new hq(Q,B,{onRequestStart(){},onRequestUpgrade(){},onResponseStart(){},onResponseData(){},onResponseEnd(){},onResponseError(){}}))}),!0;let W=!1,Z=X.cacheControlDirectives["stale-if-error"]??C?.["stale-if-error"];if(Z)W=G{if($)ba(Y,J,X,F,E,!0);else if(FV.isStream(X.body))X.body.on("error",()=>{}).destroy()},new hq(Q,B,Y),W))}if(FV.isStream(J.body))J.body.on("error",()=>{}).destroy();ba(Y,J,X,F,null,!1)}hjQ.exports=(A={})=>{let{store:Q=new rv0,methods:B=["GET"],cacheByDefault:Y=void 0,type:J="shared"}=A;if(typeof A!=="object"||A===null)throw TypeError(`expected type of opts to be an Object, got ${A===null?"null":typeof A}`);if(ov0(Q,"opts.store"),tv0(B,"opts.methods"),typeof Y<"u"&&typeof Y!=="number")throw TypeError(`expected opts.cacheByDefault to be number or undefined, got ${typeof Y}`);if(typeof J<"u"&&J!=="shared"&&J!=="private")throw TypeError(`expected opts.type to be shared, private, or undefined, got ${typeof J}`);let C={store:Q,methods:B,cacheByDefault:Y,type:J},X=FV.safeHTTPMethods.filter((G)=>B.includes(G)===!1);return(G)=>{return(F,W)=>{if(!F.origin||X.includes(F.method))return G(F,W);F={...F,headers:Ay0(F)};let Z=F.headers?.["cache-control"]?Qy0(F.headers["cache-control"]):void 0;if(Z?.["no-store"])return G(F,W);let U=ev0(F),$=Q.get(U);if($&&typeof $.then==="function")$.then((E)=>{yjQ(G,C,U,W,F,Z,E)});else yjQ(G,C,U,W,F,Z,$);return!0}}}});var cjQ=R((pnY,djQ)=>{var{createInflate:ma,createGunzip:xjQ,createBrotliDecompress:Xy0,createZstdDecompress:fjQ}=u("node:zlib"),{pipeline:Gy0}=u("node:stream"),Fy0=XV(),bjQ={gzip:xjQ,"x-gzip":xjQ,br:Xy0,deflate:ma,compress:ma,"x-compress":ma,...fjQ?{zstd:fjQ}:{}},Wy0=[204,304],mjQ=!1;class ujQ extends Fy0{#A=[];#Q;#B;#Y;constructor(A,{skipStatusCodes:Q=Wy0,skipErrorResponses:B=!0}={}){super(A);this.#B=Q,this.#Y=B}#J(A,Q){if(!A||Q<200)return!0;if(this.#B.includes(Q))return!0;if(this.#Y&&Q>=400)return!0;return!1}#C(A){let Q=A.split(","),B=[];for(let Y=Q.length-1;Y>=0;Y--){let J=Q[Y].trim();if(!J)continue;if(!bjQ[J])return B.length=0,B;B.push(bjQ[J]())}return B}#F(A,Q){A.on("readable",()=>{let B;while((B=A.read())!==null)if(super.onResponseData(Q,B)===!1)break}),A.on("error",(B)=>{super.onResponseError(Q,B)})}#X(A){let Q=this.#A[0];this.#F(Q,A),Q.on("end",()=>{super.onResponseEnd(A,{})})}#G(A){let Q=this.#A[this.#A.length-1];this.#F(Q,A),this.#Q=Gy0(this.#A,(B)=>{if(B){super.onResponseError(A,B);return}super.onResponseEnd(A,{})})}#Z(){this.#A.length=0,this.#Q=null}onResponseStart(A,Q,B,Y){let J=B["content-encoding"];if(this.#J(J,Q))return super.onResponseStart(A,Q,B,Y);let C=this.#C(J.toLowerCase());if(C.length===0)return this.#Z(),super.onResponseStart(A,Q,B,Y);this.#A=C;let{"content-encoding":X,"content-length":G,...F}=B;if(this.#A.length===1)this.#X(A);else this.#G(A);super.onResponseStart(A,Q,F,Y)}onResponseData(A,Q){if(this.#A.length>0){this.#A[0].write(Q);return}super.onResponseData(A,Q)}onResponseEnd(A,Q){if(this.#A.length>0){this.#A[0].end(),this.#Z();return}super.onResponseEnd(A,Q)}onResponseError(A,Q){if(this.#A.length>0){for(let B of this.#A)B.destroy(Q);this.#Z()}super.onResponseError(A,Q)}}function Zy0(A={}){if(!mjQ)process.emitWarning("DecompressInterceptor is experimental and subject to change","ExperimentalWarning"),mjQ=!0;return(Q)=>{return(B,Y)=>{let J=new ujQ(Y,A);return Q(B,J)}}}djQ.exports=Zy0});var pjQ=R((inY,ljQ)=>{var{Writable:$y0}=u("node:stream"),{assertCacheKey:ua,assertCacheValue:Uy0}=yq(),da;ljQ.exports=class{#A=2000000000;#Q=1/0;#B;#Y;#J;#C;#F;#X;#G;#Z;constructor(Q){if(Q){if(typeof Q!=="object")throw TypeError("SqliteCacheStore options must be an object");if(Q.maxEntrySize!==void 0){if(typeof Q.maxEntrySize!=="number"||!Number.isInteger(Q.maxEntrySize)||Q.maxEntrySize<0)throw TypeError("SqliteCacheStore options.maxEntrySize must be a non-negative integer");if(Q.maxEntrySize>2000000000)throw TypeError("SqliteCacheStore options.maxEntrySize must be less than 2gb");this.#A=Q.maxEntrySize}if(Q.maxCount!==void 0){if(typeof Q.maxCount!=="number"||!Number.isInteger(Q.maxCount)||Q.maxCount<0)throw TypeError("SqliteCacheStore options.maxCount must be a non-negative integer");this.#Q=Q.maxCount}}if(!da)da=u("node:sqlite").DatabaseSync;this.#B=new da(Q?.location??":memory:"),this.#B.exec(` PRAGMA journal_mode = WAL; PRAGMA synchronous = NORMAL; PRAGMA temp_store = memory; @@ -174,63 +174,63 @@ ${A.format(Q)}`.trim())}}KwQ.exports=EwQ});var Ha=R((ciY,HwQ)=>{var{InvalidArgum ORDER BY cachedAt DESC LIMIT ? ) - `)}close(){this.#B.close()}get(Q){Ta(Q);let B=this.#E(Q);return B?{body:B.body?Buffer.from(B.body.buffer,B.body.byteOffset,B.body.byteLength):void 0,statusCode:B.statusCode,statusMessage:B.statusMessage,headers:B.headers?JSON.parse(B.headers):void 0,etag:B.etag?B.etag:void 0,vary:B.vary?JSON.parse(B.vary):void 0,cacheControlDirectives:B.cacheControlDirectives?JSON.parse(B.cacheControlDirectives):void 0,cachedAt:B.cachedAt,staleAt:B.staleAt,deleteAt:B.deleteAt}:void 0}set(Q,B){Ta(Q);let Y=this.#W(Q),J=Array.isArray(B.body)?Buffer.concat(B.body):B.body,C=J?.byteLength;if(C&&C>this.#A)return;let X=this.#E(Q,!0);if(X)this.#J.run(J,B.deleteAt,B.statusCode,B.statusMessage,B.headers?JSON.stringify(B.headers):null,B.etag?B.etag:null,B.cacheControlDirectives?JSON.stringify(B.cacheControlDirectives):null,B.cachedAt,B.staleAt,X.id);else this.#U(),this.#C.run(Y,Q.method,J,B.deleteAt,B.statusCode,B.statusMessage,B.headers?JSON.stringify(B.headers):null,B.etag?B.etag:null,B.cacheControlDirectives?JSON.stringify(B.cacheControlDirectives):null,B.vary?JSON.stringify(B.vary):null,B.cachedAt,B.staleAt)}createWriteStream(Q,B){Ta(Q),av0(B);let Y=0,J=[],C=this;return new rv0({decodeStrings:!0,write(X,G,F){if(Y+=X.byteLength,Y=F.deleteAt&&!B)return;let W=!0;if(F.vary){let Z=JSON.parse(F.vary);for(let U in Z)if(!ov0(J[U],Z[U])){W=!1;break}}if(W)return F}return}};function ov0(A,Q){if(A==null&&Q==null)return!0;if(A==null&&Q!=null||A!=null&&Q==null)return!1;if(Array.isArray(A)&&Array.isArray(Q)){if(A.length!==Q.length)return!1;return A.every((B,Y)=>B===Q[Y])}return A===Q}});var c$=R((FnY,hjQ)=>{var{kConstruct:tv0}=Q0(),{kEnumerableProperty:CV}=lQ(),{iteratorMixin:ev0,isValidHeaderName:_q,isValidHeaderValue:kjQ}=I9(),{webidl:LB}=$J(),ka=u("node:assert"),PS=u("node:util");function SjQ(A){return A===10||A===13||A===9||A===32}function _jQ(A){let Q=0,B=A.length;while(B>Q&&SjQ(A.charCodeAt(B-1)))--B;while(B>Q&&SjQ(A.charCodeAt(Q)))++Q;return Q===0&&B===A.length?A:A.substring(Q,B)}function vjQ(A,Q){if(Array.isArray(Q))for(let B=0;B>","record"]})}function _a(A,Q,B){if(B=_jQ(B),!_q(Q))throw LB.errors.invalidArgument({prefix:"Headers.append",value:Q,type:"header name"});else if(!kjQ(B))throw LB.errors.invalidArgument({prefix:"Headers.append",value:B,type:"header value"});if(gjQ(A)==="immutable")throw TypeError("immutable");return SS(A).append(Q,B,!1)}function Ay0(A){let Q=SS(A);if(!Q)return[];if(Q.sortedMap)return Q.sortedMap;let B=[],Y=Q.toSortedArray(),J=Q.cookies;if(J===null||J.length===1)return Q.sortedMap=Y;for(let C=0;C>1),Q[F][0]<=W[0])G=F+1;else X=F;if(J!==F){C=J;while(C>G)Q[C]=Q[--C];Q[G]=W}}if(!B.next().done)throw TypeError("Unreachable");return Q}else{let B=0;for(let{0:Y,1:{value:J}}of this.headersMap)Q[B++]=[Y,J],ka(J!==null);return Q.sort(yjQ)}}}class yJ{#A;#Q;constructor(A=void 0){if(LB.util.markAsUncloneable(this),A===tv0)return;if(this.#Q=new TS,this.#A="none",A!==void 0)A=LB.converters.HeadersInit(A,"Headers constructor","init"),vjQ(this,A)}append(A,Q){LB.brandCheck(this,yJ),LB.argumentLengthCheck(arguments,2,"Headers.append");let B="Headers.append";return A=LB.converters.ByteString(A,B,"name"),Q=LB.converters.ByteString(Q,B,"value"),_a(this,A,Q)}delete(A){LB.brandCheck(this,yJ),LB.argumentLengthCheck(arguments,1,"Headers.delete");let Q="Headers.delete";if(A=LB.converters.ByteString(A,Q,"name"),!_q(A))throw LB.errors.invalidArgument({prefix:"Headers.delete",value:A,type:"header name"});if(this.#A==="immutable")throw TypeError("immutable");if(!this.#Q.contains(A,!1))return;this.#Q.delete(A,!1)}get(A){LB.brandCheck(this,yJ),LB.argumentLengthCheck(arguments,1,"Headers.get");let Q="Headers.get";if(A=LB.converters.ByteString(A,Q,"name"),!_q(A))throw LB.errors.invalidArgument({prefix:Q,value:A,type:"header name"});return this.#Q.get(A,!1)}has(A){LB.brandCheck(this,yJ),LB.argumentLengthCheck(arguments,1,"Headers.has");let Q="Headers.has";if(A=LB.converters.ByteString(A,Q,"name"),!_q(A))throw LB.errors.invalidArgument({prefix:Q,value:A,type:"header name"});return this.#Q.contains(A,!1)}set(A,Q){LB.brandCheck(this,yJ),LB.argumentLengthCheck(arguments,2,"Headers.set");let B="Headers.set";if(A=LB.converters.ByteString(A,B,"name"),Q=LB.converters.ByteString(Q,B,"value"),Q=_jQ(Q),!_q(A))throw LB.errors.invalidArgument({prefix:B,value:A,type:"header name"});else if(!kjQ(Q))throw LB.errors.invalidArgument({prefix:B,value:Q,type:"header value"});if(this.#A==="immutable")throw TypeError("immutable");this.#Q.set(A,Q,!1)}getSetCookie(){LB.brandCheck(this,yJ);let A=this.#Q.cookies;if(A)return[...A];return[]}[PS.inspect.custom](A,Q){return Q.depth??=A,`Headers ${PS.formatWithOptions(Q,this.#Q.entries)}`}static getHeadersGuard(A){return A.#A}static setHeadersGuard(A,Q){A.#A=Q}static getHeadersList(A){return A.#Q}static setHeadersList(A,Q){A.#Q=Q}}var{getHeadersGuard:gjQ,setHeadersGuard:Qy0,getHeadersList:SS,setHeadersList:By0}=yJ;Reflect.deleteProperty(yJ,"getHeadersGuard");Reflect.deleteProperty(yJ,"setHeadersGuard");Reflect.deleteProperty(yJ,"getHeadersList");Reflect.deleteProperty(yJ,"setHeadersList");ev0("Headers",yJ,Ay0,0,1);Object.defineProperties(yJ.prototype,{append:CV,delete:CV,get:CV,has:CV,set:CV,getSetCookie:CV,[Symbol.toStringTag]:{value:"Headers",configurable:!0},[PS.inspect.custom]:{enumerable:!1}});LB.converters.HeadersInit=function(A,Q,B){if(LB.util.Type(A)===LB.util.Types.OBJECT){let Y=Reflect.get(A,Symbol.iterator);if(!PS.types.isProxy(A)&&Y===yJ.prototype.entries)try{return SS(A).entriesList}catch{}if(typeof Y==="function")return LB.converters["sequence>"](A,Q,B,Y.bind(A));return LB.converters["record"](A,Q,B)}throw LB.errors.conversionFailed({prefix:"Headers constructor",argument:"Argument 1",types:["sequence>","record"]})};hjQ.exports={fill:vjQ,compareHeaderName:yjQ,Headers:yJ,HeadersList:TS,getHeadersGuard:gjQ,setHeadersGuard:Qy0,setHeadersList:By0,getHeadersList:SS}});var yq=R((WnY,sjQ)=>{var{Headers:djQ,HeadersList:xjQ,fill:Yy0,getHeadersGuard:Jy0,setHeadersGuard:cjQ,setHeadersList:ljQ}=c$(),{extractBody:fjQ,cloneBody:Cy0,mixinBody:Xy0,streamRegistry:pjQ,bodyUnusable:Gy0}=mK(),ijQ=lQ(),bjQ=u("node:util"),{kEnumerableProperty:f8}=ijQ,{isValidReasonPhrase:Fy0,isCancelled:Wy0,isAborted:Zy0,serializeJavascriptValueToJSONString:$y0,isErrorLike:Uy0,isomorphicEncode:Ey0,environmentSettingsObject:Ky0}=I9(),{redirectStatusSet:Vy0,nullBodyStatus:Iy0}=oL(),{webidl:ZB}=$J(),{URLSerializer:mjQ}=y8(),{kConstruct:_S}=Q0(),va=u("node:assert"),Hy0=new TextEncoder("utf-8");class r0{#A;#Q;static error(){return vq(vS(),"immutable")}static json(A,Q=void 0){if(ZB.argumentLengthCheck(arguments,1,"Response.json"),Q!==null)Q=ZB.converters.ResponseInit(Q);let B=Hy0.encode($y0(A)),Y=fjQ(B),J=vq(XV({}),"response");return ujQ(J,Q,{body:Y[0],type:"application/json"}),J}static redirect(A,Q=302){ZB.argumentLengthCheck(arguments,1,"Response.redirect"),A=ZB.converters.USVString(A),Q=ZB.converters["unsigned short"](Q);let B;try{B=new URL(A,Ky0.settingsObject.baseUrl)}catch(C){throw TypeError(`Failed to parse URL from ${A}`,{cause:C})}if(!Vy0.has(Q))throw RangeError(`Invalid status code ${Q}`);let Y=vq(XV({}),"immutable");Y.#Q.status=Q;let J=Ey0(mjQ(B));return Y.#Q.headersList.append("location",J,!0),Y}constructor(A=null,Q=void 0){if(ZB.util.markAsUncloneable(this),A===_S)return;if(A!==null)A=ZB.converters.BodyInit(A,"Response","body");Q=ZB.converters.ResponseInit(Q),this.#Q=XV({}),this.#A=new djQ(_S),cjQ(this.#A,"response"),ljQ(this.#A,this.#Q.headersList);let B=null;if(A!=null){let[Y,J]=fjQ(A);B={body:Y,type:J}}ujQ(this,Q,B)}get type(){return ZB.brandCheck(this,r0),this.#Q.type}get url(){ZB.brandCheck(this,r0);let A=this.#Q.urlList,Q=A[A.length-1]??null;if(Q===null)return"";return mjQ(Q,!0)}get redirected(){return ZB.brandCheck(this,r0),this.#Q.urlList.length>1}get status(){return ZB.brandCheck(this,r0),this.#Q.status}get ok(){return ZB.brandCheck(this,r0),this.#Q.status>=200&&this.#Q.status<=299}get statusText(){return ZB.brandCheck(this,r0),this.#Q.statusText}get headers(){return ZB.brandCheck(this,r0),this.#A}get body(){return ZB.brandCheck(this,r0),this.#Q.body?this.#Q.body.stream:null}get bodyUsed(){return ZB.brandCheck(this,r0),!!this.#Q.body&&ijQ.isDisturbed(this.#Q.body.stream)}clone(){if(ZB.brandCheck(this,r0),Gy0(this.#Q))throw ZB.errors.exception({header:"Response.clone",message:"Body has already been consumed."});let A=ya(this.#Q);if(this.#Q.body?.stream)pjQ.register(this,new WeakRef(this.#Q.body.stream));return vq(A,Jy0(this.#A))}[bjQ.inspect.custom](A,Q){if(Q.depth===null)Q.depth=2;Q.colors??=!0;let B={status:this.status,statusText:this.statusText,headers:this.headers,body:this.body,bodyUsed:this.bodyUsed,ok:this.ok,redirected:this.redirected,type:this.type,url:this.url};return`Response ${bjQ.formatWithOptions(Q,B)}`}static getResponseHeaders(A){return A.#A}static setResponseHeaders(A,Q){A.#A=Q}static getResponseState(A){return A.#Q}static setResponseState(A,Q){A.#Q=Q}}var{getResponseHeaders:Dy0,setResponseHeaders:Ny0,getResponseState:l$,setResponseState:Ly0}=r0;Reflect.deleteProperty(r0,"getResponseHeaders");Reflect.deleteProperty(r0,"setResponseHeaders");Reflect.deleteProperty(r0,"getResponseState");Reflect.deleteProperty(r0,"setResponseState");Xy0(r0,l$);Object.defineProperties(r0.prototype,{type:f8,url:f8,status:f8,ok:f8,redirected:f8,statusText:f8,headers:f8,clone:f8,body:f8,bodyUsed:f8,[Symbol.toStringTag]:{value:"Response",configurable:!0}});Object.defineProperties(r0,{json:f8,redirect:f8,error:f8});function ya(A){if(A.internalResponse)return njQ(ya(A.internalResponse),A.type);let Q=XV({...A,body:null});if(A.body!=null)Q.body=Cy0(A.body);return Q}function XV(A){return{aborted:!1,rangeRequested:!1,timingAllowPassed:!1,requestIncludesCredentials:!1,type:"default",status:200,timingInfo:null,cacheState:"",statusText:"",...A,headersList:A?.headersList?new xjQ(A?.headersList):new xjQ,urlList:A?.urlList?[...A.urlList]:[]}}function vS(A){let Q=Uy0(A);return XV({type:"error",status:0,error:Q?A:Error(A?String(A):A),aborted:A&&A.name==="AbortError"})}function qy0(A){return A.type==="error"&&A.status===0}function kS(A,Q){return Q={internalResponse:A,...Q},new Proxy(A,{get(B,Y){return Y in Q?Q[Y]:B[Y]},set(B,Y,J){return va(!(Y in Q)),B[Y]=J,!0}})}function njQ(A,Q){if(Q==="basic")return kS(A,{type:"basic",headersList:A.headersList});else if(Q==="cors")return kS(A,{type:"cors",headersList:A.headersList});else if(Q==="opaque")return kS(A,{type:"opaque",urlList:Object.freeze([]),status:0,statusText:"",body:null});else if(Q==="opaqueredirect")return kS(A,{type:"opaqueredirect",status:0,statusText:"",headersList:[],body:null});else va(!1)}function My0(A,Q=null){return va(Wy0(A)),Zy0(A)?vS(Object.assign(new DOMException("The operation was aborted.","AbortError"),{cause:Q})):vS(Object.assign(new DOMException("Request was cancelled."),{cause:Q}))}function ujQ(A,Q,B){if(Q.status!==null&&(Q.status<200||Q.status>599))throw RangeError('init["status"] must be in the range of 200 to 599, inclusive.');if("statusText"in Q&&Q.statusText!=null){if(!Fy0(String(Q.statusText)))throw TypeError("Invalid statusText")}if("status"in Q&&Q.status!=null)l$(A).status=Q.status;if("statusText"in Q&&Q.statusText!=null)l$(A).statusText=Q.statusText;if("headers"in Q&&Q.headers!=null)Yy0(Dy0(A),Q.headers);if(B){if(Iy0.includes(A.status))throw ZB.errors.exception({header:"Response constructor",message:`Invalid response status code ${A.status}`});if(l$(A).body=B.body,B.type!=null&&!l$(A).headersList.contains("content-type",!0))l$(A).headersList.append("content-type",B.type,!0)}}function vq(A,Q){let B=new r0(_S);Ly0(B,A);let Y=new djQ(_S);if(Ny0(B,Y),ljQ(Y,A.headersList),cjQ(Y,Q),A.body?.stream)pjQ.register(B,new WeakRef(A.body.stream));return B}ZB.converters.XMLHttpRequestBodyInit=function(A,Q,B){if(typeof A==="string")return ZB.converters.USVString(A,Q,B);if(ZB.is.Blob(A))return A;if(ZB.is.BufferSource(A))return A;if(ZB.is.FormData(A))return A;if(ZB.is.URLSearchParams(A))return A;return ZB.converters.DOMString(A,Q,B)};ZB.converters.BodyInit=function(A,Q,B){if(ZB.is.ReadableStream(A))return A;if(A?.[Symbol.asyncIterator])return A;return ZB.converters.XMLHttpRequestBodyInit(A,Q,B)};ZB.converters.ResponseInit=ZB.dictionaryConverter([{key:"status",converter:ZB.converters["unsigned short"],defaultValue:()=>200},{key:"statusText",converter:ZB.converters.ByteString,defaultValue:()=>""},{key:"headers",converter:ZB.converters.HeadersInit}]);ZB.is.Response=ZB.util.MakeTypeAssertion(r0);sjQ.exports={isNetworkError:qy0,makeNetworkError:vS,makeResponse:XV,makeAppropriateNetworkError:My0,filterResponse:njQ,Response:r0,cloneResponse:ya,fromInnerResponse:vq,getResponseState:l$}});var GV=R((ZnY,FOQ)=>{var{extractBody:zy0,mixinBody:Ry0,cloneBody:wy0,bodyUnusable:rjQ}=mK(),{Headers:QOQ,fill:jy0,HeadersList:hS,setHeadersGuard:ga,getHeadersGuard:Oy0,setHeadersList:BOQ,getHeadersList:ajQ}=c$(),gS=lQ(),ojQ=u("node:util"),{isValidHTTPToken:Py0,sameOrigin:tjQ,environmentSettingsObject:yS}=I9(),{forbiddenMethodsSet:Ty0,corsSafeListedMethodsSet:Sy0,referrerPolicy:ky0,requestRedirect:_y0,requestMode:vy0,requestCredentials:yy0,requestCache:gy0,requestDuplex:hy0}=oL(),{kEnumerableProperty:MY,normalizedMethodRecordsBase:xy0,normalizedMethodRecords:fy0}=gS,{webidl:qQ}=$J(),{URLSerializer:by0}=y8(),{kConstruct:xS}=Q0(),my0=u("node:assert"),{getMaxListeners:YOQ,setMaxListeners:uy0,defaultMaxListeners:dy0}=u("node:events"),cy0=Symbol("abortController"),JOQ=new FinalizationRegistry(({signal:A,abort:Q})=>{A.removeEventListener("abort",Q)}),fS=new WeakMap,ha;try{ha=YOQ(new AbortController().signal)>0}catch{ha=!1}function ejQ(A){return Q;function Q(){let B=A.deref();if(B!==void 0){JOQ.unregister(Q),this.removeEventListener("abort",Q),B.abort(this.reason);let Y=fS.get(B.signal);if(Y!==void 0){if(Y.size!==0){for(let J of Y){let C=J.deref();if(C!==void 0)C.abort(this.reason)}Y.clear()}fS.delete(B.signal)}}}}var AOQ=!1;class kB{#A;#Q;#B;#Y;constructor(A,Q=void 0){if(qQ.util.markAsUncloneable(this),A===xS)return;let B="Request constructor";qQ.argumentLengthCheck(arguments,1,B),A=qQ.converters.RequestInfo(A),Q=qQ.converters.RequestInit(Q);let Y=null,J=null,C=yS.settingsObject.baseUrl,X=null;if(typeof A==="string"){this.#Q=Q.dispatcher;let V;try{V=new URL(A,C)}catch(H){throw TypeError("Failed to parse URL from "+A,{cause:H})}if(V.username||V.password)throw TypeError("Request cannot be constructed from a URL that includes credentials: "+A);Y=bS({urlList:[V]}),J="cors"}else my0(qQ.is.Request(A)),Y=A.#Y,X=A.#A,this.#Q=Q.dispatcher||A.#Q;let G=yS.settingsObject.origin,F="client";if(Y.window?.constructor?.name==="EnvironmentSettingsObject"&&tjQ(Y.window,G))F=Y.window;if(Q.window!=null)throw TypeError(`'window' option '${F}' must be null`);if("window"in Q)F="no-window";Y=bS({method:Y.method,headersList:Y.headersList,unsafeRequest:Y.unsafeRequest,client:yS.settingsObject,window:F,priority:Y.priority,origin:Y.origin,referrer:Y.referrer,referrerPolicy:Y.referrerPolicy,mode:Y.mode,credentials:Y.credentials,cache:Y.cache,redirect:Y.redirect,integrity:Y.integrity,keepalive:Y.keepalive,reloadNavigation:Y.reloadNavigation,historyNavigation:Y.historyNavigation,urlList:[...Y.urlList]});let W=Object.keys(Q).length!==0;if(W){if(Y.mode==="navigate")Y.mode="same-origin";Y.reloadNavigation=!1,Y.historyNavigation=!1,Y.origin="client",Y.referrer="client",Y.referrerPolicy="",Y.url=Y.urlList[Y.urlList.length-1],Y.urlList=[Y.url]}if(Q.referrer!==void 0){let V=Q.referrer;if(V==="")Y.referrer="no-referrer";else{let H;try{H=new URL(V,C)}catch(D){throw TypeError(`Referrer "${V}" is not a valid URL.`,{cause:D})}if(H.protocol==="about:"&&H.hostname==="client"||G&&!tjQ(H,yS.settingsObject.baseUrl))Y.referrer="client";else Y.referrer=H}}if(Q.referrerPolicy!==void 0)Y.referrerPolicy=Q.referrerPolicy;let Z;if(Q.mode!==void 0)Z=Q.mode;else Z=J;if(Z==="navigate")throw qQ.errors.exception({header:"Request constructor",message:"invalid request mode navigate."});if(Z!=null)Y.mode=Z;if(Q.credentials!==void 0)Y.credentials=Q.credentials;if(Q.cache!==void 0)Y.cache=Q.cache;if(Y.cache==="only-if-cached"&&Y.mode!=="same-origin")throw TypeError("'only-if-cached' can be set only with 'same-origin' mode");if(Q.redirect!==void 0)Y.redirect=Q.redirect;if(Q.integrity!=null)Y.integrity=String(Q.integrity);if(Q.keepalive!==void 0)Y.keepalive=Boolean(Q.keepalive);if(Q.method!==void 0){let V=Q.method,H=fy0[V];if(H!==void 0)Y.method=H;else{if(!Py0(V))throw TypeError(`'${V}' is not a valid HTTP method.`);let D=V.toUpperCase();if(Ty0.has(D))throw TypeError(`'${V}' HTTP method is unsupported.`);V=xy0[D]??V,Y.method=V}if(!AOQ&&Y.method==="patch")process.emitWarning("Using `patch` is highly likely to result in a `405 Method Not Allowed`. `PATCH` is much more likely to succeed.",{code:"UNDICI-FETCH-patch"}),AOQ=!0}if(Q.signal!==void 0)X=Q.signal;this.#Y=Y;let U=new AbortController;if(this.#A=U.signal,X!=null)if(X.aborted)U.abort(X.reason);else{this[cy0]=U;let V=new WeakRef(U),H=ejQ(V);if(ha&&YOQ(X)===dy0)uy0(1500,X);gS.addAbortListener(X,H),JOQ.register(U,{signal:X,abort:H},H)}if(this.#B=new QOQ(xS),BOQ(this.#B,Y.headersList),ga(this.#B,"request"),Z==="no-cors"){if(!Sy0.has(Y.method))throw TypeError(`'${Y.method} is unsupported in no-cors mode.`);ga(this.#B,"request-no-cors")}if(W){let V=ajQ(this.#B),H=Q.headers!==void 0?Q.headers:new hS(V);if(V.clear(),H instanceof hS){for(let{name:D,value:L}of H.rawValues())V.append(D,L,!1);V.cookies=H.cookies}else jy0(this.#B,H)}let $=qQ.is.Request(A)?A.#Y.body:null;if((Q.body!=null||$!=null)&&(Y.method==="GET"||Y.method==="HEAD"))throw TypeError("Request with GET/HEAD method cannot have body.");let E=null;if(Q.body!=null){let[V,H]=zy0(Q.body,Y.keepalive);if(E=V,H&&!ajQ(this.#B).contains("content-type",!0))this.#B.append("content-type",H,!0)}let K=E??$;if(K!=null&&K.source==null){if(E!=null&&Q.duplex==null)throw TypeError("RequestInit: duplex option is required when sending a body.");if(Y.mode!=="same-origin"&&Y.mode!=="cors")throw TypeError('If request is made from ReadableStream, mode should be "same-origin" or "cors"');Y.useCORSPreflightFlag=!0}let I=K;if(E==null&&$!=null){if(rjQ(A.#Y))throw TypeError("Cannot construct a Request with a Request object that has already been used.");let V=new TransformStream;$.stream.pipeThrough(V),I={source:$.source,length:$.length,stream:V.readable}}this.#Y.body=I}get method(){return qQ.brandCheck(this,kB),this.#Y.method}get url(){return qQ.brandCheck(this,kB),by0(this.#Y.url)}get headers(){return qQ.brandCheck(this,kB),this.#B}get destination(){return qQ.brandCheck(this,kB),this.#Y.destination}get referrer(){if(qQ.brandCheck(this,kB),this.#Y.referrer==="no-referrer")return"";if(this.#Y.referrer==="client")return"about:client";return this.#Y.referrer.toString()}get referrerPolicy(){return qQ.brandCheck(this,kB),this.#Y.referrerPolicy}get mode(){return qQ.brandCheck(this,kB),this.#Y.mode}get credentials(){return qQ.brandCheck(this,kB),this.#Y.credentials}get cache(){return qQ.brandCheck(this,kB),this.#Y.cache}get redirect(){return qQ.brandCheck(this,kB),this.#Y.redirect}get integrity(){return qQ.brandCheck(this,kB),this.#Y.integrity}get keepalive(){return qQ.brandCheck(this,kB),this.#Y.keepalive}get isReloadNavigation(){return qQ.brandCheck(this,kB),this.#Y.reloadNavigation}get isHistoryNavigation(){return qQ.brandCheck(this,kB),this.#Y.historyNavigation}get signal(){return qQ.brandCheck(this,kB),this.#A}get body(){return qQ.brandCheck(this,kB),this.#Y.body?this.#Y.body.stream:null}get bodyUsed(){return qQ.brandCheck(this,kB),!!this.#Y.body&&gS.isDisturbed(this.#Y.body.stream)}get duplex(){return qQ.brandCheck(this,kB),"half"}clone(){if(qQ.brandCheck(this,kB),rjQ(this.#Y))throw TypeError("unusable");let A=XOQ(this.#Y),Q=new AbortController;if(this.signal.aborted)Q.abort(this.signal.reason);else{let B=fS.get(this.signal);if(B===void 0)B=new Set,fS.set(this.signal,B);let Y=new WeakRef(Q);B.add(Y),gS.addAbortListener(Q.signal,ejQ(Y))}return GOQ(A,this.#Q,Q.signal,Oy0(this.#B))}[ojQ.inspect.custom](A,Q){if(Q.depth===null)Q.depth=2;Q.colors??=!0;let B={method:this.method,url:this.url,headers:this.headers,destination:this.destination,referrer:this.referrer,referrerPolicy:this.referrerPolicy,mode:this.mode,credentials:this.credentials,cache:this.cache,redirect:this.redirect,integrity:this.integrity,keepalive:this.keepalive,isReloadNavigation:this.isReloadNavigation,isHistoryNavigation:this.isHistoryNavigation,signal:this.signal};return`Request ${ojQ.formatWithOptions(Q,B)}`}static setRequestSignal(A,Q){return A.#A=Q,A}static getRequestDispatcher(A){return A.#Q}static setRequestDispatcher(A,Q){A.#Q=Q}static setRequestHeaders(A,Q){A.#B=Q}static getRequestState(A){return A.#Y}static setRequestState(A,Q){A.#Y=Q}}var{setRequestSignal:ly0,getRequestDispatcher:py0,setRequestDispatcher:iy0,setRequestHeaders:ny0,getRequestState:COQ,setRequestState:sy0}=kB;Reflect.deleteProperty(kB,"setRequestSignal");Reflect.deleteProperty(kB,"getRequestDispatcher");Reflect.deleteProperty(kB,"setRequestDispatcher");Reflect.deleteProperty(kB,"setRequestHeaders");Reflect.deleteProperty(kB,"getRequestState");Reflect.deleteProperty(kB,"setRequestState");Ry0(kB,COQ);function bS(A){return{method:A.method??"GET",localURLsOnly:A.localURLsOnly??!1,unsafeRequest:A.unsafeRequest??!1,body:A.body??null,client:A.client??null,reservedClient:A.reservedClient??null,replacesClientId:A.replacesClientId??"",window:A.window??"client",keepalive:A.keepalive??!1,serviceWorkers:A.serviceWorkers??"all",initiator:A.initiator??"",destination:A.destination??"",priority:A.priority??null,origin:A.origin??"client",policyContainer:A.policyContainer??"client",referrer:A.referrer??"client",referrerPolicy:A.referrerPolicy??"",mode:A.mode??"no-cors",useCORSPreflightFlag:A.useCORSPreflightFlag??!1,credentials:A.credentials??"same-origin",useCredentials:A.useCredentials??!1,cache:A.cache??"default",redirect:A.redirect??"follow",integrity:A.integrity??"",cryptoGraphicsNonceMetadata:A.cryptoGraphicsNonceMetadata??"",parserMetadata:A.parserMetadata??"",reloadNavigation:A.reloadNavigation??!1,historyNavigation:A.historyNavigation??!1,userActivation:A.userActivation??!1,taintedOrigin:A.taintedOrigin??!1,redirectCount:A.redirectCount??0,responseTainting:A.responseTainting??"basic",preventNoCacheCacheControlHeaderModification:A.preventNoCacheCacheControlHeaderModification??!1,done:A.done??!1,timingAllowFailed:A.timingAllowFailed??!1,urlList:A.urlList,url:A.urlList[0],headersList:A.headersList?new hS(A.headersList):new hS}}function XOQ(A){let Q=bS({...A,body:null});if(A.body!=null)Q.body=wy0(A.body);return Q}function GOQ(A,Q,B,Y){let J=new kB(xS);sy0(J,A),iy0(J,Q),ly0(J,B);let C=new QOQ(xS);return ny0(J,C),BOQ(C,A.headersList),ga(C,Y),J}Object.defineProperties(kB.prototype,{method:MY,url:MY,headers:MY,redirect:MY,clone:MY,signal:MY,duplex:MY,destination:MY,body:MY,bodyUsed:MY,isHistoryNavigation:MY,isReloadNavigation:MY,keepalive:MY,integrity:MY,cache:MY,credentials:MY,attribute:MY,referrerPolicy:MY,referrer:MY,mode:MY,[Symbol.toStringTag]:{value:"Request",configurable:!0}});qQ.is.Request=qQ.util.MakeTypeAssertion(kB);qQ.converters.RequestInfo=function(A){if(typeof A==="string")return qQ.converters.USVString(A);if(qQ.is.Request(A))return A;return qQ.converters.USVString(A)};qQ.converters.RequestInit=qQ.dictionaryConverter([{key:"method",converter:qQ.converters.ByteString},{key:"headers",converter:qQ.converters.HeadersInit},{key:"body",converter:qQ.nullableConverter(qQ.converters.BodyInit)},{key:"referrer",converter:qQ.converters.USVString},{key:"referrerPolicy",converter:qQ.converters.DOMString,allowedValues:ky0},{key:"mode",converter:qQ.converters.DOMString,allowedValues:vy0},{key:"credentials",converter:qQ.converters.DOMString,allowedValues:yy0},{key:"cache",converter:qQ.converters.DOMString,allowedValues:gy0},{key:"redirect",converter:qQ.converters.DOMString,allowedValues:_y0},{key:"integrity",converter:qQ.converters.DOMString},{key:"keepalive",converter:qQ.converters.boolean},{key:"signal",converter:qQ.nullableConverter((A)=>qQ.converters.AbortSignal(A,"RequestInit","signal"))},{key:"window",converter:qQ.converters.any},{key:"duplex",converter:qQ.converters.DOMString,allowedValues:hy0},{key:"dispatcher",converter:qQ.converters.any}]);FOQ.exports={Request:kB,makeRequest:bS,fromInnerRequest:GOQ,cloneRequest:XOQ,getRequestDispatcher:py0,getRequestState:COQ}});var VOQ=R(($nY,KOQ)=>{var ry0=u("node:assert"),p$=new Map([["sha256",0],["sha384",1],["sha512",2]]),mS;try{mS=u("node:crypto");let A=mS.getHashes();if(A.length===0)p$.clear();for(let Q of p$.keys())if(A.includes(Q)===!1)p$.delete(Q)}catch{p$.clear()}var WOQ=Map.prototype.get.bind(p$),xa=Map.prototype.has.bind(p$),ay0=mS===void 0||p$.size===0?()=>!0:(A,Q)=>{let B=$OQ(Q);if(B.length===0)return!0;let Y=ZOQ(B);for(let J of Y){let{alg:C,val:X}=J,G=UOQ(C,A);if(EOQ(G,X))return!0}return!1};function ZOQ(A){let Q=[],B=null;for(let Y of A){if(ry0(xa(Y.alg),"Invalid SRI hash algorithm token"),Q.length===0){Q.push(Y),B=Y;continue}let J=B.alg,C=WOQ(J),X=Y.alg,G=WOQ(X);if(GC)B=Y,Q[0]=Y,Q.length=1;else Q.push(Y)}return Q}function $OQ(A){let Q=[];for(let B of A.split(" ")){let J=B.split("?",1)[0],C="",X=[J.slice(0,6),J.slice(7)],G=X[0];if(!xa(G))continue;if(X[1])C=X[1];let F={alg:G,val:C};Q.push(F)}return Q}var UOQ=(A,Q)=>{return mS.hash(A,Q,"base64")};function EOQ(A,Q){let B=A.length;if(B!==0&&A[B-1]==="=")B-=1;if(B!==0&&A[B-1]==="=")B-=1;let Y=Q.length;if(Y!==0&&Q[Y-1]==="=")Y-=1;if(Y!==0&&Q[Y-1]==="=")Y-=1;if(B!==Y)return!1;for(let J=0;J{var{makeNetworkError:dB,makeAppropriateNetworkError:uS,filterResponse:fa,makeResponse:dS,fromInnerResponse:oy0,getResponseState:ty0}=yq(),{HeadersList:IOQ}=c$(),{Request:ey0,cloneRequest:Ag0,getRequestDispatcher:Qg0,getRequestState:Bg0}=GV(),BC=u("node:zlib"),{makePolicyContainer:Yg0,clonePolicyContainer:Jg0,requestBadPort:Cg0,TAOCheck:Xg0,appendRequestOriginHeader:Gg0,responseLocationURL:Fg0,requestCurrentURL:RX,setRequestReferrerPolicyOnRedirect:Wg0,tryUpgradeRequestToAPotentiallyTrustworthyURL:Zg0,createOpaqueTimingInfo:ca,appendFetchMetadata:$g0,corsCheck:Ug0,crossOriginResourcePolicyCheck:Eg0,determineRequestsReferrer:Kg0,coarsenedSharedCurrentTime:gq,sameOrigin:da,isCancelled:i$,isAborted:HOQ,isErrorLike:Vg0,fullyReadBody:Ig0,readableStreamClose:Hg0,isomorphicEncode:cS,urlIsLocal:Dg0,urlIsHttpHttpsScheme:pS,urlHasHttpsScheme:Ng0,clampAndCoarsenConnectionTimingInfo:Lg0,simpleRangeHeaderValue:qg0,buildContentRange:Mg0,createInflate:zg0,extractMimeType:Rg0}=I9(),n$=u("node:assert"),{safelyExtractBody:la,extractBody:DOQ}=mK(),{redirectStatusSet:qOQ,nullBodyStatus:MOQ,safeMethodsSet:wg0,requestBodyHeader:jg0,subresourceSet:Og0}=oL(),Pg0=u("node:events"),{Readable:Tg0,pipeline:Sg0,finished:kg0,isErrored:_g0,isReadable:lS}=u("node:stream"),{addAbortListener:vg0,bufferToLowerCasedHeaderName:NOQ}=lQ(),{dataURLProcessor:yg0,serializeAMimeType:gg0,minimizeSupportedMimeType:hg0}=y8(),{getGlobalDispatcher:xg0}=OS(),{webidl:pa}=$J(),{STATUS_CODES:fg0}=u("node:http"),{bytesMatch:bg0}=VOQ(),{createDeferredPromise:mg0}=Aq(),ug0=typeof BC.createZstdDecompress==="function",dg0=["GET","HEAD"],cg0=typeof __UNDICI_IS_NODE__<"u"||typeof esbuildDetection<"u"?"node":"undici",ba;class ia extends Pg0{constructor(A){super();this.dispatcher=A,this.connection=null,this.dump=!1,this.state="ongoing"}terminate(A){if(this.state!=="ongoing")return;this.state="terminated",this.connection?.destroy(A),this.emit("terminated",A)}abort(A){if(this.state!=="ongoing")return;if(this.state="aborted",!A)A=new DOMException("The operation was aborted.","AbortError");this.serializedAbortReason=A,this.connection?.destroy(A),this.emit("terminated",A)}}function lg0(A){zOQ(A,"fetch")}function pg0(A,Q=void 0){pa.argumentLengthCheck(arguments,1,"globalThis.fetch");let B=mg0(),Y;try{Y=new ey0(A,Q)}catch(Z){return B.reject(Z),B.promise}let J=Bg0(Y);if(Y.signal.aborted)return ma(B,J,null,Y.signal.reason),B.promise;if(J.client.globalObject?.constructor?.name==="ServiceWorkerGlobalScope")J.serviceWorkers="none";let X=null,G=!1,F=null;return vg0(Y.signal,()=>{G=!0,n$(F!=null),F.abort(Y.signal.reason);let Z=X?.deref();ma(B,J,Z,Y.signal.reason)}),F=wOQ({request:J,processResponseEndOfBody:lg0,processResponse:(Z)=>{if(G)return;if(Z.aborted){ma(B,J,X,F.serializedAbortReason);return}if(Z.type==="error"){B.reject(TypeError("fetch failed",{cause:Z.error}));return}X=new WeakRef(oy0(Z,"immutable")),B.resolve(X.deref()),B=null},dispatcher:Qg0(Y)}),B.promise}function zOQ(A,Q="other"){if(A.type==="error"&&A.aborted)return;if(!A.urlList?.length)return;let B=A.urlList[0],Y=A.timingInfo,J=A.cacheState;if(!pS(B))return;if(Y===null)return;if(!A.timingAllowPassed)Y=ca({startTime:Y.startTime}),J="";Y.endTime=gq(),A.timingInfo=Y,ROQ(Y,B.href,Q,globalThis,J,"",A.status)}var ROQ=performance.markResourceTiming;function ma(A,Q,B,Y){if(A)A.reject(Y);if(Q.body?.stream!=null&&lS(Q.body.stream))Q.body.stream.cancel(Y).catch((C)=>{if(C.code==="ERR_INVALID_STATE")return;throw C});if(B==null)return;let J=ty0(B);if(J.body?.stream!=null&&lS(J.body.stream))J.body.stream.cancel(Y).catch((C)=>{if(C.code==="ERR_INVALID_STATE")return;throw C})}function wOQ({request:A,processRequestBodyChunkLength:Q,processRequestEndOfBody:B,processResponse:Y,processResponseEndOfBody:J,processResponseConsumeBody:C,useParallelQueue:X=!1,dispatcher:G=xg0()}){n$(G);let F=null,W=!1;if(A.client!=null)F=A.client.globalObject,W=A.client.crossOriginIsolatedCapability;let Z=gq(W),U=ca({startTime:Z}),$={controller:new ia(G),request:A,timingInfo:U,processRequestBodyChunkLength:Q,processRequestEndOfBody:B,processResponse:Y,processResponseConsumeBody:C,processResponseEndOfBody:J,taskDestination:F,crossOriginIsolatedCapability:W};if(n$(!A.body||A.body.stream),A.window==="client")A.window=A.client?.globalObject?.constructor?.name==="Window"?A.client:"no-window";if(A.origin==="client")A.origin=A.client.origin;if(A.policyContainer==="client")if(A.client!=null)A.policyContainer=Jg0(A.client.policyContainer);else A.policyContainer=Yg0();if(!A.headersList.contains("accept",!0))A.headersList.append("accept","*/*",!0);if(!A.headersList.contains("accept-language",!0))A.headersList.append("accept-language","*",!0);if(A.priority===null);if(Og0.has(A.destination));return jOQ($,!1),$.controller}async function jOQ(A,Q){try{let B=A.request,Y=null;if(B.localURLsOnly&&!Dg0(RX(B)))Y=dB("local URLs only");if(Zg0(B),Cg0(B)==="blocked")Y=dB("bad port");if(B.referrerPolicy==="")B.referrerPolicy=B.policyContainer.referrerPolicy;if(B.referrer!=="no-referrer")B.referrer=Kg0(B);if(Y===null){let C=RX(B);if(da(C,B.url)&&B.responseTainting==="basic"||C.protocol==="data:"||(B.mode==="navigate"||B.mode==="websocket"))B.responseTainting="basic",Y=await LOQ(A);else if(B.mode==="same-origin")Y=dB('request mode cannot be "same-origin"');else if(B.mode==="no-cors")if(B.redirect!=="follow")Y=dB('redirect mode cannot be "follow" for "no-cors" request');else B.responseTainting="opaque",Y=await LOQ(A);else if(!pS(RX(B)))Y=dB("URL scheme must be a HTTP(S) scheme");else B.responseTainting="cors",Y=await OOQ(A)}if(Q)return Y;if(Y.status!==0&&!Y.internalResponse){if(B.responseTainting==="cors");if(B.responseTainting==="basic")Y=fa(Y,"basic");else if(B.responseTainting==="cors")Y=fa(Y,"cors");else if(B.responseTainting==="opaque")Y=fa(Y,"opaque");else n$(!1)}let J=Y.status===0?Y:Y.internalResponse;if(J.urlList.length===0)J.urlList.push(...B.urlList);if(!B.timingAllowFailed)Y.timingAllowPassed=!0;if(Y.type==="opaque"&&J.status===206&&J.rangeRequested&&!B.headers.contains("range",!0))Y=J=dB();if(Y.status!==0&&(B.method==="HEAD"||B.method==="CONNECT"||MOQ.includes(J.status)))J.body=null,A.controller.dump=!0;if(B.integrity){let C=(G)=>ua(A,dB(G));if(B.responseTainting==="opaque"||Y.body==null){C(Y.error);return}let X=(G)=>{if(!bg0(G,B.integrity)){C("integrity mismatch");return}Y.body=la(G)[0],ua(A,Y)};Ig0(Y.body,X,C)}else ua(A,Y)}catch(B){A.controller.terminate(B)}}function LOQ(A){if(i$(A)&&A.request.redirectCount===0)return Promise.resolve(uS(A));let{request:Q}=A,{protocol:B}=RX(Q);switch(B){case"about:":return Promise.resolve(dB("about scheme is not supported"));case"blob:":{if(!ba)ba=u("node:buffer").resolveObjectURL;let Y=RX(Q);if(Y.search.length!==0)return Promise.resolve(dB("NetworkError when attempting to fetch resource."));let J=ba(Y.toString());if(Q.method!=="GET"||!pa.is.Blob(J))return Promise.resolve(dB("invalid method"));let C=dS(),X=J.size,G=cS(`${X}`),F=J.type;if(!Q.headersList.contains("range",!0)){let W=DOQ(J);C.statusText="OK",C.body=W[0],C.headersList.set("content-length",G,!0),C.headersList.set("content-type",F,!0)}else{C.rangeRequested=!0;let W=Q.headersList.get("range",!0),Z=qg0(W,!0);if(Z==="failure")return Promise.resolve(dB("failed to fetch the data URL"));let{rangeStartValue:U,rangeEndValue:$}=Z;if(U===null)U=X-$,$=U+$-1;else{if(U>=X)return Promise.resolve(dB("Range start is greater than the blob's size."));if($===null||$>=X)$=X-1}let E=J.slice(U,$,F),K=DOQ(E);C.body=K[0];let I=cS(`${E.size}`),V=Mg0(U,$,X);C.status=206,C.statusText="Partial Content",C.headersList.set("content-length",I,!0),C.headersList.set("content-type",F,!0),C.headersList.set("content-range",V,!0)}return Promise.resolve(C)}case"data:":{let Y=RX(Q),J=yg0(Y);if(J==="failure")return Promise.resolve(dB("failed to fetch the data URL"));let C=gg0(J.mimeType);return Promise.resolve(dS({statusText:"OK",headersList:[["content-type",{name:"Content-Type",value:C}]],body:la(J.body)[0]}))}case"file:":return Promise.resolve(dB("not implemented... yet..."));case"http:":case"https:":return OOQ(A).catch((Y)=>dB(Y));default:return Promise.resolve(dB("unknown scheme"))}}function ig0(A,Q){if(A.request.done=!0,A.processResponseDone!=null)queueMicrotask(()=>A.processResponseDone(Q))}function ua(A,Q){let B=A.timingInfo,Y=()=>{let C=Date.now();if(A.request.destination==="document")A.controller.fullTimingInfo=B;A.controller.reportTimingSteps=()=>{if(!pS(A.request.url))return;B.endTime=C;let{cacheState:G,bodyInfo:F}=Q;if(!Q.timingAllowPassed)B=ca(B),G="";let W=0;if(A.request.mode!=="navigator"||!Q.hasCrossOriginRedirects){W=Q.status;let Z=Rg0(Q.headersList);if(Z!=="failure")F.contentType=hg0(Z)}if(A.request.initiatorType!=null)ROQ(B,A.request.url.href,A.request.initiatorType,globalThis,G,F,W)};let X=()=>{if(A.request.done=!0,A.processResponseEndOfBody!=null)queueMicrotask(()=>A.processResponseEndOfBody(Q));if(A.request.initiatorType!=null)A.controller.reportTimingSteps()};queueMicrotask(()=>X())};if(A.processResponse!=null)queueMicrotask(()=>{A.processResponse(Q),A.processResponse=null});let J=Q.type==="error"?Q:Q.internalResponse??Q;if(J.body==null)Y();else kg0(J.body.stream,()=>{Y()})}async function OOQ(A){let Q=A.request,B=null,Y=null,J=A.timingInfo;if(Q.serviceWorkers==="all");if(B===null){if(Q.redirect==="follow")Q.serviceWorkers="none";if(Y=B=await POQ(A),Q.responseTainting==="cors"&&Ug0(Q,B)==="failure")return dB("cors failure");if(Xg0(Q,B)==="failure")Q.timingAllowFailed=!0}if((Q.responseTainting==="opaque"||B.type==="opaque")&&Eg0(Q.origin,Q.client,Q.destination,Y)==="blocked")return dB("blocked");if(qOQ.has(Y.status)){if(Q.redirect!=="manual")A.controller.connection.destroy(void 0,!1);if(Q.redirect==="error")B=dB("unexpected redirect");else if(Q.redirect==="manual")B=Y;else if(Q.redirect==="follow")B=await ng0(A,B);else n$(!1)}return B.timingInfo=J,B}function ng0(A,Q){let B=A.request,Y=Q.internalResponse?Q.internalResponse:Q,J;try{if(J=Fg0(Y,RX(B).hash),J==null)return Q}catch(X){return Promise.resolve(dB(X))}if(!pS(J))return Promise.resolve(dB("URL scheme must be a HTTP(S) scheme"));if(B.redirectCount===20)return Promise.resolve(dB("redirect count exceeded"));if(B.redirectCount+=1,B.mode==="cors"&&(J.username||J.password)&&!da(B,J))return Promise.resolve(dB('cross origin not allowed for request mode "cors"'));if(B.responseTainting==="cors"&&(J.username||J.password))return Promise.resolve(dB('URL cannot contain credentials for request mode "cors"'));if(Y.status!==303&&B.body!=null&&B.body.source==null)return Promise.resolve(dB());if([301,302].includes(Y.status)&&B.method==="POST"||Y.status===303&&!dg0.includes(B.method)){B.method="GET",B.body=null;for(let X of jg0)B.headersList.delete(X)}if(!da(RX(B),J))B.headersList.delete("authorization",!0),B.headersList.delete("proxy-authorization",!0),B.headersList.delete("cookie",!0),B.headersList.delete("host",!0);if(B.body!=null)n$(B.body.source!=null),B.body=la(B.body.source)[0];let C=A.timingInfo;if(C.redirectEndTime=C.postRedirectStartTime=gq(A.crossOriginIsolatedCapability),C.redirectStartTime===0)C.redirectStartTime=C.startTime;return B.urlList.push(J),Wg0(B,Y),jOQ(A,!0)}async function POQ(A,Q=!1,B=!1){let Y=A.request,J=null,C=null,X=null,G=null,F=!1;if(Y.window==="no-window"&&Y.redirect==="error")J=A,C=Y;else C=Ag0(Y),J={...A},J.request=C;let W=Y.credentials==="include"||Y.credentials==="same-origin"&&Y.responseTainting==="basic",Z=C.body?C.body.length:null,U=null;if(C.body==null&&["POST","PUT"].includes(C.method))U="0";if(Z!=null)U=cS(`${Z}`);if(U!=null)C.headersList.append("content-length",U,!0);if(Z!=null&&C.keepalive);if(pa.is.URL(C.referrer))C.headersList.append("referer",cS(C.referrer.href),!0);if(Gg0(C),$g0(C),!C.headersList.contains("user-agent",!0))C.headersList.append("user-agent",cg0,!0);if(C.cache==="default"&&(C.headersList.contains("if-modified-since",!0)||C.headersList.contains("if-none-match",!0)||C.headersList.contains("if-unmodified-since",!0)||C.headersList.contains("if-match",!0)||C.headersList.contains("if-range",!0)))C.cache="no-store";if(C.cache==="no-cache"&&!C.preventNoCacheCacheControlHeaderModification&&!C.headersList.contains("cache-control",!0))C.headersList.append("cache-control","max-age=0",!0);if(C.cache==="no-store"||C.cache==="reload"){if(!C.headersList.contains("pragma",!0))C.headersList.append("pragma","no-cache",!0);if(!C.headersList.contains("cache-control",!0))C.headersList.append("cache-control","no-cache",!0)}if(C.headersList.contains("range",!0))C.headersList.append("accept-encoding","identity",!0);if(!C.headersList.contains("accept-encoding",!0))if(Ng0(RX(C)))C.headersList.append("accept-encoding","br, gzip, deflate",!0);else C.headersList.append("accept-encoding","gzip, deflate",!0);if(C.headersList.delete("host",!0),G==null)C.cache="no-store";if(C.cache!=="no-store"&&C.cache!=="reload");if(X==null){if(C.cache==="only-if-cached")return dB("only if cached");let $=await sg0(J,W,B);if(!wg0.has(C.method)&&$.status>=200&&$.status<=399);if(F&&$.status===304);if(X==null)X=$}if(X.urlList=[...C.urlList],C.headersList.contains("range",!0))X.rangeRequested=!0;if(X.requestIncludesCredentials=W,X.status===407){if(Y.window==="no-window")return dB();if(i$(A))return uS(A);return dB("proxy authentication required")}if(X.status===421&&!B&&(Y.body==null||Y.body.source!=null)){if(i$(A))return uS(A);A.controller.connection.destroy(),X=await POQ(A,Q,!0)}return X}async function sg0(A,Q=!1,B=!1){n$(!A.controller.connection||A.controller.connection.destroyed),A.controller.connection={abort:null,destroyed:!1,destroy(K,I=!0){if(!this.destroyed){if(this.destroyed=!0,I)this.abort?.(K??new DOMException("The operation was aborted.","AbortError"))}}};let Y=A.request,J=null,C=A.timingInfo;if(!0)Y.cache="no-store";let G=B?"yes":"no";if(Y.mode==="websocket");let F=null;if(Y.body==null&&A.processRequestEndOfBody)queueMicrotask(()=>A.processRequestEndOfBody());else if(Y.body!=null){let K=async function*(H){if(i$(A))return;yield H,A.processRequestBodyChunkLength?.(H.byteLength)},I=()=>{if(i$(A))return;if(A.processRequestEndOfBody)A.processRequestEndOfBody()},V=(H)=>{if(i$(A))return;if(H.name==="AbortError")A.controller.abort();else A.controller.terminate(H)};F=async function*(){try{for await(let H of Y.body.stream)yield*K(H);I()}catch(H){V(H)}}()}try{let{body:K,status:I,statusText:V,headersList:H,socket:D}=await E({body:F});if(D)J=dS({status:I,statusText:V,headersList:H,socket:D});else{let L=K[Symbol.asyncIterator]();A.controller.next=()=>L.next(),J=dS({status:I,statusText:V,headersList:H})}}catch(K){if(K.name==="AbortError")return A.controller.connection.destroy(),uS(A,K);return dB(K)}let U=new ReadableStream({start(K){A.controller.controller=K},pull:()=>{return A.controller.resume()},cancel:(K)=>{if(!i$(A))A.controller.abort(K)},type:"bytes"});if(J.body={stream:U,source:null,length:null},!A.controller.resume)A.controller.on("terminated",$);A.controller.resume=async()=>{while(!0){let K,I;try{let{done:H,value:D}=await A.controller.next();if(HOQ(A))break;K=H?void 0:D}catch(H){if(A.controller.ended&&!C.encodedBodySize)K=void 0;else K=H,I=!0}if(K===void 0){Hg0(A.controller.controller),ig0(A,J);return}if(C.decodedBodySize+=K?.byteLength??0,I){A.controller.terminate(K);return}let V=new Uint8Array(K);if(V.byteLength)A.controller.controller.enqueue(V);if(_g0(U)){A.controller.terminate();return}if(A.controller.controller.desiredSize<=0)return}};function $(K){if(HOQ(A)){if(J.aborted=!0,lS(U))A.controller.controller.error(A.controller.serializedAbortReason)}else if(lS(U))A.controller.controller.error(TypeError("terminated",{cause:Vg0(K)?K:void 0}));A.controller.connection.destroy()}return J;function E({body:K}){let I=RX(Y),V=A.controller.dispatcher;return new Promise((H,D)=>V.dispatch({path:I.pathname+I.search,origin:I.origin,method:Y.method,body:V.isMockActive?Y.body&&(Y.body.source||Y.body.stream):K,headers:Y.headersList.entries,maxRedirections:0,upgrade:Y.mode==="websocket"?"websocket":void 0},{body:null,abort:null,onConnect(L){let{connection:z}=A.controller;if(C.finalConnectionTimingInfo=Lg0(void 0,C.postRedirectStartTime,A.crossOriginIsolatedCapability),z.destroyed)L(new DOMException("The operation was aborted.","AbortError"));else A.controller.on("terminated",L),this.abort=z.abort=L;C.finalNetworkRequestStartTime=gq(A.crossOriginIsolatedCapability)},onResponseStarted(){C.finalNetworkResponseStartTime=gq(A.crossOriginIsolatedCapability)},onHeaders(L,z,M,N){if(L<200)return!1;let q=new IOQ;for(let k=0;k=0;--S){let v=T[S].trim();if(v==="x-gzip"||v==="gzip")_.push(BC.createGunzip({flush:BC.constants.Z_SYNC_FLUSH,finishFlush:BC.constants.Z_SYNC_FLUSH}));else if(v==="deflate")_.push(zg0({flush:BC.constants.Z_SYNC_FLUSH,finishFlush:BC.constants.Z_SYNC_FLUSH}));else if(v==="br")_.push(BC.createBrotliDecompress({flush:BC.constants.BROTLI_OPERATION_FLUSH,finishFlush:BC.constants.BROTLI_OPERATION_FLUSH}));else if(v==="zstd"&&ug0)_.push(BC.createZstdDecompress({flush:BC.constants.ZSTD_e_continue,finishFlush:BC.constants.ZSTD_e_end}));else{_.length=0;break}}}let O=this.onError.bind(this);return H({status:L,statusText:N,headersList:q,body:_.length?Sg0(this.body,..._,(k)=>{if(k)this.onError(k)}).on("error",O):this.body.on("error",O)}),!0},onData(L){if(A.controller.dump)return;let z=L;return C.encodedBodySize+=z.byteLength,this.body.push(z)},onComplete(){if(this.abort)A.controller.off("terminated",this.abort);A.controller.ended=!0,this.body.push(null)},onError(L){if(this.abort)A.controller.off("terminated",this.abort);this.body?.destroy(L),A.controller.terminate(L),D(L)},onUpgrade(L,z,M){if(L!==101)return;let N=new IOQ;for(let q=0;q{var rg0=u("node:assert"),{URLSerializer:SOQ}=y8(),{isValidHeaderName:ag0}=I9();function og0(A,Q,B=!1){let Y=SOQ(A,B),J=SOQ(Q,B);return Y===J}function tg0(A){rg0(A!==null);let Q=[];for(let B of A.split(","))if(B=B.trim(),ag0(B))Q.push(B);return Q}kOQ.exports={urlEquals:og0,getFieldValues:tg0}});var gOQ=R((KnY,yOQ)=>{var na=u("node:assert"),{kConstruct:eg0}=Q0(),{urlEquals:Ah0,getFieldValues:sa}=_OQ(),{kEnumerableProperty:s$,isDisturbed:Qh0}=lQ(),{webidl:YQ}=$J(),{cloneResponse:Bh0,fromInnerResponse:Yh0,getResponseState:Jh0}=yq(),{Request:xq,fromInnerRequest:Ch0,getRequestState:wX}=GV(),{fetching:Xh0}=hq(),{urlIsHttpHttpsScheme:iS,readAllBytes:Gh0}=I9(),{createDeferredPromise:FV}=Aq();class jX{#A;constructor(){if(arguments[0]!==eg0)YQ.illegalConstructor();YQ.util.markAsUncloneable(this),this.#A=arguments[1]}async match(A,Q={}){YQ.brandCheck(this,jX);let B="Cache.match";YQ.argumentLengthCheck(arguments,1,B),A=YQ.converters.RequestInfo(A),Q=YQ.converters.CacheQueryOptions(Q,B,"options");let Y=this.#J(A,Q,1);if(Y.length===0)return;return Y[0]}async matchAll(A=void 0,Q={}){YQ.brandCheck(this,jX);let B="Cache.matchAll";if(A!==void 0)A=YQ.converters.RequestInfo(A);return Q=YQ.converters.CacheQueryOptions(Q,B,"options"),this.#J(A,Q)}async add(A){YQ.brandCheck(this,jX);let Q="Cache.add";YQ.argumentLengthCheck(arguments,1,Q),A=YQ.converters.RequestInfo(A);let B=[A];return await this.addAll(B)}async addAll(A){YQ.brandCheck(this,jX);let Q="Cache.addAll";YQ.argumentLengthCheck(arguments,1,Q);let B=[],Y=[];for(let U of A){if(U===void 0)throw YQ.errors.conversionFailed({prefix:Q,argument:"Argument 1",types:["undefined is not allowed"]});if(U=YQ.converters.RequestInfo(U),typeof U==="string")continue;let $=wX(U);if(!iS($.url)||$.method!=="GET")throw YQ.errors.exception({header:Q,message:"Expected http/s scheme when method is not GET."})}let J=[];for(let U of A){let $=wX(new xq(U));if(!iS($.url))throw YQ.errors.exception({header:Q,message:"Expected http/s scheme."});$.initiator="fetch",$.destination="subresource",Y.push($);let E=FV();J.push(Xh0({request:$,processResponse(K){if(K.type==="error"||K.status===206||K.status<200||K.status>299)E.reject(YQ.errors.exception({header:"Cache.addAll",message:"Received an invalid status code or the request failed."}));else if(K.headersList.contains("vary")){let I=sa(K.headersList.get("vary"));for(let V of I)if(V==="*"){E.reject(YQ.errors.exception({header:"Cache.addAll",message:"invalid vary field value"}));for(let H of J)H.abort();return}}},processResponseEndOfBody(K){if(K.aborted){E.reject(new DOMException("aborted","AbortError"));return}E.resolve(K)}})),B.push(E.promise)}let X=await Promise.all(B),G=[],F=0;for(let U of X){let $={type:"put",request:Y[F],response:U};G.push($),F++}let W=FV(),Z=null;try{this.#Q(G)}catch(U){Z=U}return queueMicrotask(()=>{if(Z===null)W.resolve(void 0);else W.reject(Z)}),W.promise}async put(A,Q){YQ.brandCheck(this,jX);let B="Cache.put";YQ.argumentLengthCheck(arguments,2,B),A=YQ.converters.RequestInfo(A),Q=YQ.converters.Response(Q,B,"response");let Y=null;if(YQ.is.Request(A))Y=wX(A);else Y=wX(new xq(A));if(!iS(Y.url)||Y.method!=="GET")throw YQ.errors.exception({header:B,message:"Expected an http/s scheme when method is not GET"});let J=Jh0(Q);if(J.status===206)throw YQ.errors.exception({header:B,message:"Got 206 status"});if(J.headersList.contains("vary")){let $=sa(J.headersList.get("vary"));for(let E of $)if(E==="*")throw YQ.errors.exception({header:B,message:"Got * vary field value"})}if(J.body&&(Qh0(J.body.stream)||J.body.stream.locked))throw YQ.errors.exception({header:B,message:"Response body is locked or disturbed"});let C=Bh0(J),X=FV();if(J.body!=null){let E=J.body.stream.getReader();Gh0(E,X.resolve,X.reject)}else X.resolve(void 0);let G=[],F={type:"put",request:Y,response:C};G.push(F);let W=await X.promise;if(C.body!=null)C.body.source=W;let Z=FV(),U=null;try{this.#Q(G)}catch($){U=$}return queueMicrotask(()=>{if(U===null)Z.resolve();else Z.reject(U)}),Z.promise}async delete(A,Q={}){YQ.brandCheck(this,jX);let B="Cache.delete";YQ.argumentLengthCheck(arguments,1,B),A=YQ.converters.RequestInfo(A),Q=YQ.converters.CacheQueryOptions(Q,B,"options");let Y=null;if(YQ.is.Request(A)){if(Y=wX(A),Y.method!=="GET"&&!Q.ignoreMethod)return!1}else na(typeof A==="string"),Y=wX(new xq(A));let J=[],C={type:"delete",request:Y,options:Q};J.push(C);let X=FV(),G=null,F;try{F=this.#Q(J)}catch(W){G=W}return queueMicrotask(()=>{if(G===null)X.resolve(!!F?.length);else X.reject(G)}),X.promise}async keys(A=void 0,Q={}){YQ.brandCheck(this,jX);let B="Cache.keys";if(A!==void 0)A=YQ.converters.RequestInfo(A);Q=YQ.converters.CacheQueryOptions(Q,B,"options");let Y=null;if(A!==void 0){if(YQ.is.Request(A)){if(Y=wX(A),Y.method!=="GET"&&!Q.ignoreMethod)return[]}else if(typeof A==="string")Y=wX(new xq(A))}let J=FV(),C=[];if(A===void 0)for(let X of this.#A)C.push(X[0]);else{let X=this.#B(Y,Q);for(let G of X)C.push(G[0])}return queueMicrotask(()=>{let X=[];for(let G of C){let F=Ch0(G,void 0,new AbortController().signal,"immutable");X.push(F)}J.resolve(Object.freeze(X))}),J.promise}#Q(A){let Q=this.#A,B=[...Q],Y=[],J=[];try{for(let C of A){if(C.type!=="delete"&&C.type!=="put")throw YQ.errors.exception({header:"Cache.#batchCacheOperations",message:'operation type does not match "delete" or "put"'});if(C.type==="delete"&&C.response!=null)throw YQ.errors.exception({header:"Cache.#batchCacheOperations",message:"delete operation should not have an associated response"});if(this.#B(C.request,C.options,Y).length)throw new DOMException("???","InvalidStateError");let X;if(C.type==="delete"){if(X=this.#B(C.request,C.options),X.length===0)return[];for(let G of X){let F=Q.indexOf(G);na(F!==-1),Q.splice(F,1)}}else if(C.type==="put"){if(C.response==null)throw YQ.errors.exception({header:"Cache.#batchCacheOperations",message:"put operation should have an associated response"});let G=C.request;if(!iS(G.url))throw YQ.errors.exception({header:"Cache.#batchCacheOperations",message:"expected http or https scheme"});if(G.method!=="GET")throw YQ.errors.exception({header:"Cache.#batchCacheOperations",message:"not get method"});if(C.options!=null)throw YQ.errors.exception({header:"Cache.#batchCacheOperations",message:"options must not be defined"});X=this.#B(C.request);for(let F of X){let W=Q.indexOf(F);na(W!==-1),Q.splice(W,1)}Q.push([C.request,C.response]),Y.push([C.request,C.response])}J.push([C.request,C.response])}return J}catch(C){throw this.#A.length=0,this.#A=B,C}}#B(A,Q,B){let Y=[],J=B??this.#A;for(let C of J){let[X,G]=C;if(this.#Y(A,X,G,Q))Y.push(C)}return Y}#Y(A,Q,B=null,Y){let J=new URL(A.url),C=new URL(Q.url);if(Y?.ignoreSearch)C.search="",J.search="";if(!Ah0(J,C,!0))return!1;if(B==null||Y?.ignoreVary||!B.headersList.contains("vary"))return!0;let X=sa(B.headersList.get("vary"));for(let G of X){if(G==="*")return!1;let F=Q.headersList.get(G),W=A.headersList.get(G);if(F!==W)return!1}return!0}#J(A,Q,B=1/0){let Y=null;if(A!==void 0){if(YQ.is.Request(A)){if(Y=wX(A),Y.method!=="GET"&&!Q.ignoreMethod)return[]}else if(typeof A==="string")Y=wX(new xq(A))}let J=[];if(A===void 0)for(let X of this.#A)J.push(X[1]);else{let X=this.#B(Y,Q);for(let G of X)J.push(G[1])}let C=[];for(let X of J){let G=Yh0(X,"immutable");if(C.push(G.clone()),C.length>=B)break}return Object.freeze(C)}}Object.defineProperties(jX.prototype,{[Symbol.toStringTag]:{value:"Cache",configurable:!0},match:s$,matchAll:s$,add:s$,addAll:s$,put:s$,delete:s$,keys:s$});var vOQ=[{key:"ignoreSearch",converter:YQ.converters.boolean,defaultValue:()=>!1},{key:"ignoreMethod",converter:YQ.converters.boolean,defaultValue:()=>!1},{key:"ignoreVary",converter:YQ.converters.boolean,defaultValue:()=>!1}];YQ.converters.CacheQueryOptions=YQ.dictionaryConverter(vOQ);YQ.converters.MultiCacheQueryOptions=YQ.dictionaryConverter([...vOQ,{key:"cacheName",converter:YQ.converters.DOMString}]);YQ.converters.Response=YQ.interfaceConverter(YQ.is.Response,"Response");YQ.converters["sequence"]=YQ.sequenceConverter(YQ.converters.RequestInfo);yOQ.exports={Cache:jX}});var xOQ=R((VnY,hOQ)=>{var{Cache:nS}=gOQ(),{webidl:gJ}=$J(),{kEnumerableProperty:fq}=lQ(),{kConstruct:bq}=Q0();class YW{#A=new Map;constructor(){if(arguments[0]!==bq)gJ.illegalConstructor();gJ.util.markAsUncloneable(this)}async match(A,Q={}){if(gJ.brandCheck(this,YW),gJ.argumentLengthCheck(arguments,1,"CacheStorage.match"),A=gJ.converters.RequestInfo(A),Q=gJ.converters.MultiCacheQueryOptions(Q),Q.cacheName!=null){if(this.#A.has(Q.cacheName)){let B=this.#A.get(Q.cacheName);return await new nS(bq,B).match(A,Q)}}else for(let B of this.#A.values()){let J=await new nS(bq,B).match(A,Q);if(J!==void 0)return J}}async has(A){gJ.brandCheck(this,YW);let Q="CacheStorage.has";return gJ.argumentLengthCheck(arguments,1,Q),A=gJ.converters.DOMString(A,Q,"cacheName"),this.#A.has(A)}async open(A){gJ.brandCheck(this,YW);let Q="CacheStorage.open";if(gJ.argumentLengthCheck(arguments,1,Q),A=gJ.converters.DOMString(A,Q,"cacheName"),this.#A.has(A)){let Y=this.#A.get(A);return new nS(bq,Y)}let B=[];return this.#A.set(A,B),new nS(bq,B)}async delete(A){gJ.brandCheck(this,YW);let Q="CacheStorage.delete";return gJ.argumentLengthCheck(arguments,1,Q),A=gJ.converters.DOMString(A,Q,"cacheName"),this.#A.delete(A)}async keys(){return gJ.brandCheck(this,YW),[...this.#A.keys()]}}Object.defineProperties(YW.prototype,{[Symbol.toStringTag]:{value:"CacheStorage",configurable:!0},match:fq,has:fq,open:fq,delete:fq,keys:fq});hOQ.exports={CacheStorage:YW}});var bOQ=R((InY,fOQ)=>{fOQ.exports={maxAttributeValueSize:1024,maxNameValuePairSize:4096}});var ra=R((HnY,lOQ)=>{function Fh0(A){for(let Q=0;Q=0&&B<=8||B>=10&&B<=31||B===127)return!0}return!1}function mOQ(A){for(let Q=0;Q126||B===34||B===40||B===41||B===60||B===62||B===64||B===44||B===59||B===58||B===92||B===47||B===91||B===93||B===63||B===61||B===123||B===125)throw Error("Invalid cookie name")}}function uOQ(A){let Q=A.length,B=0;if(A[0]==='"'){if(Q===1||A[Q-1]!=='"')throw Error("Invalid cookie value");--Q,++B}while(B126||Y===34||Y===44||Y===59||Y===92)throw Error("Invalid cookie value")}}function dOQ(A){for(let Q=0;QQ.toString().padStart(2,"0"));function cOQ(A){if(typeof A==="number")A=new Date(A);return`${Zh0[A.getUTCDay()]}, ${sS[A.getUTCDate()]} ${$h0[A.getUTCMonth()]} ${A.getUTCFullYear()} ${sS[A.getUTCHours()]}:${sS[A.getUTCMinutes()]}:${sS[A.getUTCSeconds()]} GMT`}function Uh0(A){if(A<0)throw Error("Invalid cookie max-age")}function Eh0(A){if(A.name.length===0)return null;mOQ(A.name),uOQ(A.value);let Q=[`${A.name}=${A.value}`];if(A.name.startsWith("__Secure-"))A.secure=!0;if(A.name.startsWith("__Host-"))A.secure=!0,A.domain=null,A.path="/";if(A.secure)Q.push("Secure");if(A.httpOnly)Q.push("HttpOnly");if(typeof A.maxAge==="number")Uh0(A.maxAge),Q.push(`Max-Age=${A.maxAge}`);if(A.domain)Wh0(A.domain),Q.push(`Domain=${A.domain}`);if(A.path)dOQ(A.path),Q.push(`Path=${A.path}`);if(A.expires&&A.expires.toString()!=="Invalid Date")Q.push(`Expires=${cOQ(A.expires)}`);if(A.sameSite)Q.push(`SameSite=${A.sameSite}`);for(let B of A.unparsed){if(!B.includes("="))throw Error("Invalid unparsed");let[Y,...J]=B.split("=");Q.push(`${Y.trim()}=${J.join("=")}`)}return Q.join("; ")}lOQ.exports={isCTLExcludingHtab:Fh0,validateCookieName:mOQ,validateCookiePath:dOQ,validateCookieValue:uOQ,toIMFDate:cOQ,stringify:Eh0}});var iOQ=R((DnY,pOQ)=>{var{maxNameValuePairSize:Kh0,maxAttributeValueSize:Vh0}=bOQ(),{isCTLExcludingHtab:Ih0}=ra(),{collectASequenceOfCodePointsFast:rS}=y8(),Hh0=u("node:assert"),{unescape:Dh0}=u("node:querystring");function Nh0(A){if(Ih0(A))return null;let Q="",B="",Y="",J="";if(A.includes(";")){let C={position:0};Q=rS(";",A,C),B=A.slice(C.position)}else Q=A;if(!Q.includes("="))J=Q;else{let C={position:0};Y=rS("=",Q,C),J=Q.slice(C.position+1)}if(Y=Y.trim(),J=J.trim(),Y.length+J.length>Kh0)return null;return{name:Y,value:Dh0(J),...WV(B)}}function WV(A,Q={}){if(A.length===0)return Q;Hh0(A[0]===";"),A=A.slice(1);let B="";if(A.includes(";"))B=rS(";",A,{position:0}),A=A.slice(B.length);else B=A,A="";let Y="",J="";if(B.includes("=")){let X={position:0};Y=rS("=",B,X),J=B.slice(X.position+1)}else Y=B;if(Y=Y.trim(),J=J.trim(),J.length>Vh0)return WV(A,Q);let C=Y.toLowerCase();if(C==="expires"){let X=new Date(J);Q.expires=X}else if(C==="max-age"){let X=J.charCodeAt(0);if((X<48||X>57)&&J[0]!=="-")return WV(A,Q);if(!/^\d+$/.test(J))return WV(A,Q);let G=Number(J);Q.maxAge=G}else if(C==="domain"){let X=J;if(X[0]===".")X=X.slice(1);X=X.toLowerCase(),Q.domain=X}else if(C==="path"){let X="";if(J.length===0||J[0]!=="/")X="/";else X=J;Q.path=X}else if(C==="secure")Q.secure=!0;else if(C==="httponly")Q.httpOnly=!0;else if(C==="samesite"){let X="Default",G=J.toLowerCase();if(G.includes("none"))X="None";if(G.includes("strict"))X="Strict";if(G.includes("lax"))X="Lax";Q.sameSite=X}else Q.unparsed??=[],Q.unparsed.push(`${Y}=${J}`);return WV(A,Q)}pOQ.exports={parseSetCookie:Nh0,parseUnparsedAttributes:WV}});var aOQ=R((NnY,rOQ)=>{var{parseSetCookie:nOQ}=iOQ(),{stringify:Lh0}=ra(),{webidl:zB}=$J(),{Headers:qh0}=c$(),aS=zB.brandCheckMultiple([qh0,globalThis.Headers].filter(Boolean));function Mh0(A){zB.argumentLengthCheck(arguments,1,"getCookies"),aS(A);let Q=A.get("cookie"),B={};if(!Q)return B;for(let Y of Q.split(";")){let[J,...C]=Y.split("=");B[J.trim()]=C.join("=")}return B}function zh0(A,Q,B){aS(A);let Y="deleteCookie";zB.argumentLengthCheck(arguments,2,Y),Q=zB.converters.DOMString(Q,Y,"name"),B=zB.converters.DeleteCookieAttributes(B),sOQ(A,{name:Q,value:"",expires:new Date(0),...B})}function Rh0(A){zB.argumentLengthCheck(arguments,1,"getSetCookies"),aS(A);let Q=A.getSetCookie();if(!Q)return[];return Q.map((B)=>nOQ(B))}function wh0(A){return A=zB.converters.DOMString(A),nOQ(A)}function sOQ(A,Q){zB.argumentLengthCheck(arguments,2,"setCookie"),aS(A),Q=zB.converters.Cookie(Q);let B=Lh0(Q);if(B)A.append("set-cookie",B,!0)}zB.converters.DeleteCookieAttributes=zB.dictionaryConverter([{converter:zB.nullableConverter(zB.converters.DOMString),key:"path",defaultValue:()=>null},{converter:zB.nullableConverter(zB.converters.DOMString),key:"domain",defaultValue:()=>null}]);zB.converters.Cookie=zB.dictionaryConverter([{converter:zB.converters.DOMString,key:"name"},{converter:zB.converters.DOMString,key:"value"},{converter:zB.nullableConverter((A)=>{if(typeof A==="number")return zB.converters["unsigned long long"](A);return new Date(A)}),key:"expires",defaultValue:()=>null},{converter:zB.nullableConverter(zB.converters["long long"]),key:"maxAge",defaultValue:()=>null},{converter:zB.nullableConverter(zB.converters.DOMString),key:"domain",defaultValue:()=>null},{converter:zB.nullableConverter(zB.converters.DOMString),key:"path",defaultValue:()=>null},{converter:zB.nullableConverter(zB.converters.boolean),key:"secure",defaultValue:()=>null},{converter:zB.nullableConverter(zB.converters.boolean),key:"httpOnly",defaultValue:()=>null},{converter:zB.converters.USVString,key:"sameSite",allowedValues:["Strict","Lax","None"]},{converter:zB.sequenceConverter(zB.converters.DOMString),key:"unparsed",defaultValue:()=>[]}]);rOQ.exports={getCookies:Mh0,deleteCookie:zh0,getSetCookies:Rh0,setCookie:sOQ,parseCookie:wh0}});var oS=R((LnY,tOQ)=>{var{webidl:WQ}=$J(),{kEnumerableProperty:o9}=lQ(),{kConstruct:oOQ}=Q0();class b8 extends Event{#A;constructor(A,Q={}){if(A===oOQ){super(arguments[1],arguments[2]);WQ.util.markAsUncloneable(this);return}let B="MessageEvent constructor";WQ.argumentLengthCheck(arguments,1,B),A=WQ.converters.DOMString(A,B,"type"),Q=WQ.converters.MessageEventInit(Q,B,"eventInitDict");super(A,Q);this.#A=Q,WQ.util.markAsUncloneable(this)}get data(){return WQ.brandCheck(this,b8),this.#A.data}get origin(){return WQ.brandCheck(this,b8),this.#A.origin}get lastEventId(){return WQ.brandCheck(this,b8),this.#A.lastEventId}get source(){return WQ.brandCheck(this,b8),this.#A.source}get ports(){if(WQ.brandCheck(this,b8),!Object.isFrozen(this.#A.ports))Object.freeze(this.#A.ports);return this.#A.ports}initMessageEvent(A,Q=!1,B=!1,Y=null,J="",C="",X=null,G=[]){return WQ.brandCheck(this,b8),WQ.argumentLengthCheck(arguments,1,"MessageEvent.initMessageEvent"),new b8(A,{bubbles:Q,cancelable:B,data:Y,origin:J,lastEventId:C,source:X,ports:G})}static createFastMessageEvent(A,Q){let B=new b8(oOQ,A,Q);return B.#A=Q,B.#A.data??=null,B.#A.origin??="",B.#A.lastEventId??="",B.#A.source??=null,B.#A.ports??=[],B}}var{createFastMessageEvent:jh0}=b8;delete b8.createFastMessageEvent;class ZV extends Event{#A;constructor(A,Q={}){WQ.argumentLengthCheck(arguments,1,"CloseEvent constructor"),A=WQ.converters.DOMString(A,"CloseEvent constructor","type"),Q=WQ.converters.CloseEventInit(Q);super(A,Q);this.#A=Q,WQ.util.markAsUncloneable(this)}get wasClean(){return WQ.brandCheck(this,ZV),this.#A.wasClean}get code(){return WQ.brandCheck(this,ZV),this.#A.code}get reason(){return WQ.brandCheck(this,ZV),this.#A.reason}}class JW extends Event{#A;constructor(A,Q){WQ.argumentLengthCheck(arguments,1,"ErrorEvent constructor");super(A,Q);WQ.util.markAsUncloneable(this),A=WQ.converters.DOMString(A,"ErrorEvent constructor","type"),Q=WQ.converters.ErrorEventInit(Q??{}),this.#A=Q}get message(){return WQ.brandCheck(this,JW),this.#A.message}get filename(){return WQ.brandCheck(this,JW),this.#A.filename}get lineno(){return WQ.brandCheck(this,JW),this.#A.lineno}get colno(){return WQ.brandCheck(this,JW),this.#A.colno}get error(){return WQ.brandCheck(this,JW),this.#A.error}}Object.defineProperties(b8.prototype,{[Symbol.toStringTag]:{value:"MessageEvent",configurable:!0},data:o9,origin:o9,lastEventId:o9,source:o9,ports:o9,initMessageEvent:o9});Object.defineProperties(ZV.prototype,{[Symbol.toStringTag]:{value:"CloseEvent",configurable:!0},reason:o9,code:o9,wasClean:o9});Object.defineProperties(JW.prototype,{[Symbol.toStringTag]:{value:"ErrorEvent",configurable:!0},message:o9,filename:o9,lineno:o9,colno:o9,error:o9});WQ.converters.MessagePort=WQ.interfaceConverter(WQ.is.MessagePort,"MessagePort");WQ.converters["sequence"]=WQ.sequenceConverter(WQ.converters.MessagePort);var aa=[{key:"bubbles",converter:WQ.converters.boolean,defaultValue:()=>!1},{key:"cancelable",converter:WQ.converters.boolean,defaultValue:()=>!1},{key:"composed",converter:WQ.converters.boolean,defaultValue:()=>!1}];WQ.converters.MessageEventInit=WQ.dictionaryConverter([...aa,{key:"data",converter:WQ.converters.any,defaultValue:()=>null},{key:"origin",converter:WQ.converters.USVString,defaultValue:()=>""},{key:"lastEventId",converter:WQ.converters.DOMString,defaultValue:()=>""},{key:"source",converter:WQ.nullableConverter(WQ.converters.MessagePort),defaultValue:()=>null},{key:"ports",converter:WQ.converters["sequence"],defaultValue:()=>[]}]);WQ.converters.CloseEventInit=WQ.dictionaryConverter([...aa,{key:"wasClean",converter:WQ.converters.boolean,defaultValue:()=>!1},{key:"code",converter:WQ.converters["unsigned short"],defaultValue:()=>0},{key:"reason",converter:WQ.converters.USVString,defaultValue:()=>""}]);WQ.converters.ErrorEventInit=WQ.dictionaryConverter([...aa,{key:"message",converter:WQ.converters.DOMString,defaultValue:()=>""},{key:"filename",converter:WQ.converters.USVString,defaultValue:()=>""},{key:"lineno",converter:WQ.converters["unsigned long"],defaultValue:()=>0},{key:"colno",converter:WQ.converters["unsigned long"],defaultValue:()=>0},{key:"error",converter:WQ.converters.any}]);tOQ.exports={MessageEvent:b8,CloseEvent:ZV,ErrorEvent:JW,createFastMessageEvent:jh0}});var CW=R((qnY,eOQ)=>{var Oh0={enumerable:!0,writable:!1,configurable:!1},Ph0={CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3},Th0={SENT:1,RECEIVED:2},Sh0={CONTINUATION:0,TEXT:1,BINARY:2,CLOSE:8,PING:9,PONG:10},kh0={INFO:0,PAYLOADLENGTH_16:2,PAYLOADLENGTH_64:3,READ_DATA:4},_h0=Buffer.allocUnsafe(0),vh0={text:1,typedArray:2,arrayBuffer:3,blob:4};eOQ.exports={uid:"258EAFA5-E914-47DA-95CA-C5AB0DC85B11",sentCloseFrameState:Th0,staticPropertyDescriptors:Oh0,states:Ph0,opcodes:Sh0,maxUnsigned16Bit:65535,parserStates:kh0,emptyBuffer:_h0,sendHints:vh0}});var r$=R((MnY,JPQ)=>{var{states:tS,opcodes:$V}=CW(),{isUtf8:yh0}=u("node:buffer"),{collectASequenceOfCodePointsFast:gh0,removeHTTPWhitespace:APQ}=y8();function hh0(A){return A===tS.CONNECTING}function xh0(A){return A===tS.OPEN}function fh0(A){return A===tS.CLOSING}function bh0(A){return A===tS.CLOSED}function mh0(A,Q,B=(J,C)=>new Event(J,C),Y={}){let J=B(A,Y);Q.dispatchEvent(J)}function uh0(A,Q,B){A.onMessage(Q,B)}function dh0(A){if(A.byteLength===A.buffer.byteLength)return A.buffer;return new Uint8Array(A).buffer}function ch0(A){if(A.length===0)return!1;for(let Q=0;Q126||B===34||B===40||B===41||B===44||B===47||B===58||B===59||B===60||B===61||B===62||B===63||B===64||B===91||B===92||B===93||B===123||B===125)return!1}return!0}function lh0(A){if(A>=1000&&A<1015)return A!==1004&&A!==1005&&A!==1006;return A>=3000&&A<=4999}function QPQ(A){return A===$V.CLOSE||A===$V.PING||A===$V.PONG}function BPQ(A){return A===$V.CONTINUATION}function YPQ(A){return A===$V.TEXT||A===$V.BINARY}function ph0(A){return YPQ(A)||BPQ(A)||QPQ(A)}function ih0(A){let Q={position:0},B=new Map;while(Q.position57)return!1}return!0}function sh0(A,Q){let B;try{B=new URL(A,Q)}catch(Y){throw new DOMException(Y,"SyntaxError")}if(B.protocol==="http:")B.protocol="ws:";else if(B.protocol==="https:")B.protocol="wss:";if(B.protocol!=="ws:"&&B.protocol!=="wss:")throw new DOMException("expected a ws: or wss: url","SyntaxError");if(B.hash.length||B.href.endsWith("#"))throw new DOMException("hash","SyntaxError");return B}function rh0(A,Q){if(A!==null){if(A!==1000&&(A<3000||A>4999))throw new DOMException("invalid code","InvalidAccessError")}if(Q!==null){let B=Buffer.byteLength(Q);if(B>123)throw new DOMException(`Reason must be less than 123 bytes; received ${B}`,"SyntaxError")}}var ah0=(()=>{if(typeof process.versions.icu==="string"){let A=new TextDecoder("utf-8",{fatal:!0});return A.decode.bind(A)}return function(A){if(yh0(A))return A.toString("utf-8");throw TypeError("Invalid utf-8 received.")}})();JPQ.exports={isConnecting:hh0,isEstablished:xh0,isClosing:fh0,isClosed:bh0,fireEvent:mh0,isValidSubprotocol:ch0,isValidStatusCode:lh0,websocketMessageReceived:uh0,utf8Decode:ah0,isControlFrame:QPQ,isContinuationFrame:BPQ,isTextBinaryFrame:YPQ,isValidOpcode:ph0,parseExtensions:ih0,isValidClientWindowBits:nh0,toArrayBuffer:dh0,getURLRecord:sh0,validateCloseCodeAndReason:rh0}});var EV=R((znY,GPQ)=>{var{maxUnsigned16Bit:CPQ,opcodes:oh0}=CW(),oa,mq=null,UV=8192;try{oa=u("node:crypto")}catch{oa={randomFillSync:function(Q,B,Y){for(let J=0;JCPQ)C+=8,J=127;else if(Y>125)C+=2,J=126;let X=Buffer.allocUnsafe(Y+C);X[0]=X[1]=0,X[0]|=128,X[0]=(X[0]&240)+A;/*! ws. MIT License. Einar Otto Stangvik */if(X[C-4]=B[0],X[C-3]=B[1],X[C-2]=B[2],X[C-1]=B[3],X[1]=J,J===126)X.writeUInt16BE(Y,2);else if(J===127)X[2]=X[3]=0,X.writeUIntBE(Y,4,6);X[1]|=128;for(let G=0;GCPQ)J+=8,Y=127;else if(B>125)J+=2,Y=126;let C=Buffer.allocUnsafeSlow(J);if(C[0]=128|oh0.TEXT,C[1]=Y|128,C[J-4]=Q[0],C[J-3]=Q[1],C[J-2]=Q[2],C[J-1]=Q[3],Y===126)C.writeUInt16BE(B,2);else if(Y===127)C[2]=C[3]=0,C.writeUIntBE(B,4,6);return[C,A]}}GPQ.exports={WebsocketFrameSend:XPQ,generateMask:ta}});var Ak=R((RnY,$PQ)=>{var{uid:th0,states:eS,sentCloseFrameState:ea,emptyBuffer:FPQ,opcodes:eh0}=CW(),{parseExtensions:Ax0,isClosed:Qx0,isClosing:Bx0,isEstablished:WPQ,validateCloseCodeAndReason:Yx0}=r$(),{makeRequest:Jx0}=GV(),{fetching:Cx0}=hq(),{Headers:Xx0,getHeadersList:Gx0}=c$(),{getDecodeSplit:Fx0}=I9(),{WebsocketFrameSend:Wx0}=EV(),Zx0=u("node:assert"),Ao;try{Ao=u("node:crypto")}catch{}function $x0(A,Q,B,Y,J){let C=A;C.protocol=A.protocol==="ws:"?"http:":"https:";let X=Jx0({urlList:[C],client:B,serviceWorkers:"none",referrer:"no-referrer",mode:"websocket",credentials:"include",cache:"no-store",redirect:"error"});if(J.headers){let Z=Gx0(new Xx0(J.headers));X.headersList=Z}let G=Ao.randomBytes(16).toString("base64");X.headersList.append("sec-websocket-key",G,!0),X.headersList.append("sec-websocket-version","13",!0);for(let Z of Q)X.headersList.append("sec-websocket-protocol",Z,!0);let F="permessage-deflate; client_max_window_bits";return X.headersList.append("sec-websocket-extensions",F,!0),Cx0({request:X,useParallelQueue:!0,dispatcher:J.dispatcher,processResponse(Z){if(Z.type==="error")Y.readyState=eS.CLOSED;if(Z.type==="error"||Z.status!==101){k6(Y,1002,"Received network error or non-101 status code.",Z.error);return}if(Q.length!==0&&!Z.headersList.get("Sec-WebSocket-Protocol")){k6(Y,1002,"Server did not respond with sent protocols.");return}if(Z.headersList.get("Upgrade")?.toLowerCase()!=="websocket"){k6(Y,1002,'Server did not set Upgrade header to "websocket".');return}if(Z.headersList.get("Connection")?.toLowerCase()!=="upgrade"){k6(Y,1002,'Server did not set Connection header to "upgrade".');return}let U=Z.headersList.get("Sec-WebSocket-Accept"),$=Ao.createHash("sha1").update(G+th0).digest("base64");if(U!==$){k6(Y,1002,"Incorrect hash received in Sec-WebSocket-Accept header.");return}let E=Z.headersList.get("Sec-WebSocket-Extensions"),K;if(E!==null){if(K=Ax0(E),!K.has("permessage-deflate")){k6(Y,1002,"Sec-WebSocket-Extensions header does not match.");return}}let I=Z.headersList.get("Sec-WebSocket-Protocol");if(I!==null){if(!Fx0("sec-websocket-protocol",X.headersList).includes(I)){k6(Y,1002,"Protocol was not set in the opening handshake.");return}}Z.socket.on("data",Y.onSocketData),Z.socket.on("close",Y.onSocketClose),Z.socket.on("error",Y.onSocketError),Y.wasEverConnected=!0,Y.onConnectionEstablished(Z,K)}})}function ZPQ(A,Q,B,Y=!1){if(Q??=null,B??="",Y)Yx0(Q,B);if(Qx0(A.readyState)||Bx0(A.readyState));else if(!WPQ(A.readyState))k6(A),A.readyState=eS.CLOSING;else if(!A.closeState.has(ea.SENT)&&!A.closeState.has(ea.RECEIVED)){let J=new Wx0;if(B.length!==0&&Q===null)Q=1000;if(Zx0(Q===null||Number.isInteger(Q)),Q===null&&B.length===0)J.frameData=FPQ;else if(Q!==null&&B===null)J.frameData=Buffer.allocUnsafe(2),J.frameData.writeUInt16BE(Q,0);else if(Q!==null&&B!==null)J.frameData=Buffer.allocUnsafe(2+Buffer.byteLength(B)),J.frameData.writeUInt16BE(Q,0),J.frameData.write(B,2,"utf-8");else J.frameData=FPQ;A.socket.write(J.createFrame(eh0.CLOSE)),A.closeState.add(ea.SENT),A.readyState=eS.CLOSING}else A.readyState=eS.CLOSING}function k6(A,Q,B,Y){if(WPQ(A.readyState))ZPQ(A,Q,B,!1);if(A.controller.abort(),!A.socket)A.onSocketClose();else if(A.socket.destroyed===!1)A.socket.destroy()}$PQ.exports={establishWebSocketConnection:$x0,failWebsocketConnection:k6,closeWebSocketConnection:ZPQ}});var KPQ=R((wnY,EPQ)=>{var{createInflateRaw:Ux0,Z_DEFAULT_WINDOWBITS:Ex0}=u("node:zlib"),{isValidClientWindowBits:Kx0}=r$(),Vx0=Buffer.from([0,0,255,255]),Qk=Symbol("kBuffer"),Bk=Symbol("kLength");class UPQ{#A;#Q={};constructor(A){this.#Q.serverNoContextTakeover=A.has("server_no_context_takeover"),this.#Q.serverMaxWindowBits=A.get("server_max_window_bits")}decompress(A,Q,B){if(!this.#A){let Y=Ex0;if(this.#Q.serverMaxWindowBits){if(!Kx0(this.#Q.serverMaxWindowBits)){B(Error("Invalid server_max_window_bits"));return}Y=Number.parseInt(this.#Q.serverMaxWindowBits)}this.#A=Ux0({windowBits:Y}),this.#A[Qk]=[],this.#A[Bk]=0,this.#A.on("data",(J)=>{this.#A[Qk].push(J),this.#A[Bk]+=J.length}),this.#A.on("error",(J)=>{this.#A=null,B(J)})}if(this.#A.write(A),Q)this.#A.write(Vx0);this.#A.flush(()=>{let Y=Buffer.concat(this.#A[Qk],this.#A[Bk]);this.#A[Qk].length=0,this.#A[Bk]=0,B(null,Y)})}}EPQ.exports={PerMessageDeflate:UPQ}});var Bo=R((jnY,LPQ)=>{var{Writable:Ix0}=u("node:stream"),Hx0=u("node:assert"),{parserStates:t9,opcodes:KV,states:Dx0,emptyBuffer:VPQ,sentCloseFrameState:uq}=CW(),{isValidStatusCode:Nx0,isValidOpcode:Lx0,websocketMessageReceived:IPQ,utf8Decode:qx0,isControlFrame:HPQ,isTextBinaryFrame:Qo,isContinuationFrame:Mx0}=r$(),{failWebsocketConnection:m8}=Ak(),{WebsocketFrameSend:DPQ}=EV(),{PerMessageDeflate:zx0}=KPQ();class NPQ extends Ix0{#A=[];#Q=0;#B=0;#Y=!1;#J=t9.INFO;#C={};#F=[];#X;#G;constructor(A,Q){super();if(this.#G=A,this.#X=Q==null?new Map:Q,this.#X.has("permessage-deflate"))this.#X.set("permessage-deflate",new zx0(Q))}_write(A,Q,B){this.#A.push(A),this.#B+=A.length,this.#Y=!0,this.run(B)}run(A){while(this.#Y)if(this.#J===t9.INFO){if(this.#B<2)return A();let Q=this.consume(2),B=(Q[0]&128)!==0,Y=Q[0]&15,J=(Q[1]&128)===128,C=!B&&Y!==KV.CONTINUATION,X=Q[1]&127,G=Q[0]&64,F=Q[0]&32,W=Q[0]&16;if(!Lx0(Y))return m8(this.#G,1002,"Invalid opcode received"),A();if(J)return m8(this.#G,1002,"Frame cannot be masked"),A();if(G!==0&&!this.#X.has("permessage-deflate")){m8(this.#G,1002,"Expected RSV1 to be clear.");return}if(F!==0||W!==0){m8(this.#G,1002,"RSV1, RSV2, RSV3 must be clear");return}if(C&&!Qo(Y)){m8(this.#G,1002,"Invalid frame type was fragmented.");return}if(Qo(Y)&&this.#F.length>0){m8(this.#G,1002,"Expected continuation frame");return}if(this.#C.fragmented&&C){m8(this.#G,1002,"Fragmented frame exceeded 125 bytes.");return}if((X>125||C)&&HPQ(Y)){m8(this.#G,1002,"Control frame either too large or fragmented");return}if(Mx0(Y)&&this.#F.length===0&&!this.#C.compressed){m8(this.#G,1002,"Unexpected continuation frame");return}if(X<=125)this.#C.payloadLength=X,this.#J=t9.READ_DATA;else if(X===126)this.#J=t9.PAYLOADLENGTH_16;else if(X===127)this.#J=t9.PAYLOADLENGTH_64;if(Qo(Y))this.#C.binaryType=Y,this.#C.compressed=G!==0;this.#C.opcode=Y,this.#C.masked=J,this.#C.fin=B,this.#C.fragmented=C}else if(this.#J===t9.PAYLOADLENGTH_16){if(this.#B<2)return A();let Q=this.consume(2);this.#C.payloadLength=Q.readUInt16BE(0),this.#J=t9.READ_DATA}else if(this.#J===t9.PAYLOADLENGTH_64){if(this.#B<8)return A();let Q=this.consume(8),B=Q.readUInt32BE(0);if(B>2147483647){m8(this.#G,1009,"Received payload length > 2^31 bytes.");return}let Y=Q.readUInt32BE(4);this.#C.payloadLength=(B<<8)+Y,this.#J=t9.READ_DATA}else if(this.#J===t9.READ_DATA){if(this.#B{if(B){m8(this.#G,1007,B.message);return}if(this.writeFragments(Y),!this.#C.fin){this.#J=t9.INFO,this.#Y=!0,this.run(A);return}IPQ(this.#G,this.#C.binaryType,this.consumeFragments()),this.#Y=!0,this.#J=t9.INFO,this.run(A)}),this.#Y=!1;break}}}consume(A){if(A>this.#B)throw Error("Called consume() before buffers satiated.");else if(A===0)return VPQ;this.#B-=A;let Q=this.#A[0];if(Q.length>A)return this.#A[0]=Q.subarray(A,Q.length),Q.subarray(0,A);else if(Q.length===A)return this.#A.shift();else{let B=0,Y=Buffer.allocUnsafeSlow(A);while(B!==A){let J=this.#A[0],C=J.length;if(C+B===A){Y.set(this.#A.shift(),B);break}else if(C+B>A){Y.set(J.subarray(0,A-B),B),this.#A[0]=J.subarray(A-B);break}else Y.set(this.#A.shift(),B),B+=C}return Y}}writeFragments(A){this.#Q+=A.length,this.#F.push(A)}consumeFragments(){let A=this.#F;if(A.length===1)return this.#Q=0,A.shift();let Q=0,B=Buffer.allocUnsafeSlow(this.#Q);for(let Y=0;Y=2)Q=A.readUInt16BE(0);if(Q!==void 0&&!Nx0(Q))return{code:1002,reason:"Invalid status code",error:!0};let B=A.subarray(2);if(B[0]===239&&B[1]===187&&B[2]===191)B=B.subarray(3);try{B=qx0(B)}catch{return{code:1007,reason:"Invalid UTF-8",error:!0}}return{code:Q,reason:B,error:!1}}parseControlFrame(A){let{opcode:Q,payloadLength:B}=this.#C;if(Q===KV.CLOSE){if(B===1)return m8(this.#G,1002,"Received close frame with a 1-byte body."),!1;if(this.#C.closeInfo=this.parseCloseBody(A),this.#C.closeInfo.error){let{code:Y,reason:J}=this.#C.closeInfo;return m8(this.#G,Y,J),!1}if(!this.#G.closeState.has(uq.SENT)&&!this.#G.closeState.has(uq.RECEIVED)){let Y=VPQ;if(this.#C.closeInfo.code)Y=Buffer.allocUnsafe(2),Y.writeUInt16BE(this.#C.closeInfo.code,0);let J=new DPQ(Y);this.#G.socket.write(J.createFrame(KV.CLOSE)),this.#G.closeState.add(uq.SENT)}return this.#G.readyState=Dx0.CLOSING,this.#G.closeState.add(uq.RECEIVED),!1}else if(Q===KV.PING){if(!this.#G.closeState.has(uq.RECEIVED)){let Y=new DPQ(A);this.#G.socket.write(Y.createFrame(KV.PONG)),this.#G.onPing(A)}}else if(Q===KV.PONG)this.#G.onPong(A);return!0}get closingInfo(){return this.#C.closeInfo}}LPQ.exports={ByteParser:NPQ}});var wPQ=R((OnY,RPQ)=>{var{WebsocketFrameSend:MPQ}=EV(),{opcodes:qPQ,sendHints:a$}=CW(),Rx0=qr();class zPQ{#A=new Rx0;#Q=!1;#B;constructor(A){this.#B=A}add(A,Q,B){if(B!==a$.blob){if(!this.#Q)if(B===a$.text){let{0:J,1:C}=MPQ.createFastTextFrame(A);this.#B.cork(),this.#B.write(J),this.#B.write(C,Q),this.#B.uncork()}else this.#B.write(Yo(A,B),Q);else{let J={promise:null,callback:Q,frame:Yo(A,B)};this.#A.push(J)}return}let Y={promise:A.arrayBuffer().then((J)=>{Y.promise=null,Y.frame=Yo(J,B)}),callback:Q,frame:null};if(this.#A.push(Y),!this.#Q)this.#Y()}async#Y(){this.#Q=!0;let A=this.#A;while(!A.isEmpty()){let Q=A.shift();if(Q.promise!==null)await Q.promise;this.#B.write(Q.frame,Q.callback),Q.callback=Q.frame=null}this.#Q=!1}}function Yo(A,Q){return new MPQ(wx0(A,Q)).createFrame(Q===a$.text?qPQ.TEXT:qPQ.BINARY)}function wx0(A,Q){switch(Q){case a$.text:case a$.typedArray:return new Uint8Array(A.buffer,A.byteOffset,A.byteLength);case a$.arrayBuffer:case a$.blob:return new Uint8Array(A)}}RPQ.exports={SendQueue:zPQ}});var kPQ=R((PnY,SPQ)=>{var{isArrayBuffer:jx0}=u("node:util/types"),{webidl:$Q}=$J(),{URLSerializer:Ox0}=y8(),{environmentSettingsObject:jPQ}=I9(),{staticPropertyDescriptors:XW,states:_6,sentCloseFrameState:Jo,sendHints:Yk,opcodes:Co}=CW(),{isConnecting:Px0,isEstablished:OPQ,isClosing:PPQ,isClosed:Tx0,isValidSubprotocol:Sx0,fireEvent:Jk,utf8Decode:kx0,toArrayBuffer:_x0,getURLRecord:vx0}=r$(),{establishWebSocketConnection:yx0,closeWebSocketConnection:gx0,failWebsocketConnection:TPQ}=Ak(),{ByteParser:hx0}=Bo(),{kEnumerableProperty:YC}=lQ(),{getGlobalDispatcher:xx0}=OS(),{ErrorEvent:fx0,CloseEvent:bx0,createFastMessageEvent:mx0}=oS(),{SendQueue:ux0}=wPQ(),{WebsocketFrameSend:dx0}=EV(),{channels:OX}=z$();class _B extends EventTarget{#A={open:null,error:null,close:null,message:null};#Q=0;#B="";#Y="";#J;#C={onConnectionEstablished:(A,Q)=>this.#Z(A,Q),onMessage:(A,Q)=>this.#U(A,Q),onParserError:(A)=>TPQ(this.#C,null,A.message),onParserDrain:()=>this.#W(),onSocketData:(A)=>{if(!this.#G.write(A))this.#C.socket.pause()},onSocketError:(A)=>{if(this.#C.readyState=_6.CLOSING,OX.socketError.hasSubscribers)OX.socketError.publish(A);this.#C.socket.destroy()},onSocketClose:()=>this.#E(),onPing:(A)=>{if(OX.ping.hasSubscribers)OX.ping.publish({payload:A,websocket:this})},onPong:(A)=>{if(OX.pong.hasSubscribers)OX.pong.publish({payload:A,websocket:this})},readyState:_6.CONNECTING,socket:null,closeState:new Set,controller:null,wasEverConnected:!1};#F;#X;#G;constructor(A,Q=[]){super();$Q.util.markAsUncloneable(this);let B="WebSocket constructor";$Q.argumentLengthCheck(arguments,1,B);let Y=$Q.converters["DOMString or sequence or WebSocketInit"](Q,B,"options");A=$Q.converters.USVString(A),Q=Y.protocols;let J=jPQ.settingsObject.baseUrl,C=vx0(A,J);if(typeof Q==="string")Q=[Q];if(Q.length!==new Set(Q.map((G)=>G.toLowerCase())).size)throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");if(Q.length>0&&!Q.every((G)=>Sx0(G)))throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");this.#F=new URL(C.href);let X=jPQ.settingsObject;this.#C.controller=yx0(C,Q,X,this.#C,Y),this.#C.readyState=_B.CONNECTING,this.#X="blob"}close(A=void 0,Q=void 0){$Q.brandCheck(this,_B);let B="WebSocket.close";if(A!==void 0)A=$Q.converters["unsigned short"](A,B,"code",$Q.attributes.Clamp);if(Q!==void 0)Q=$Q.converters.USVString(Q);A??=null,Q??="",gx0(this.#C,A,Q,!0)}send(A){$Q.brandCheck(this,_B);let Q="WebSocket.send";if($Q.argumentLengthCheck(arguments,1,Q),A=$Q.converters.WebSocketSendData(A,Q,"data"),Px0(this.#C.readyState))throw new DOMException("Sent before connected.","InvalidStateError");if(!OPQ(this.#C.readyState)||PPQ(this.#C.readyState))return;if(typeof A==="string"){let B=Buffer.from(A);this.#Q+=B.byteLength,this.#J.add(B,()=>{this.#Q-=B.byteLength},Yk.text)}else if(jx0(A))this.#Q+=A.byteLength,this.#J.add(A,()=>{this.#Q-=A.byteLength},Yk.arrayBuffer);else if(ArrayBuffer.isView(A))this.#Q+=A.byteLength,this.#J.add(A,()=>{this.#Q-=A.byteLength},Yk.typedArray);else if($Q.is.Blob(A))this.#Q+=A.size,this.#J.add(A,()=>{this.#Q-=A.size},Yk.blob)}get readyState(){return $Q.brandCheck(this,_B),this.#C.readyState}get bufferedAmount(){return $Q.brandCheck(this,_B),this.#Q}get url(){return $Q.brandCheck(this,_B),Ox0(this.#F)}get extensions(){return $Q.brandCheck(this,_B),this.#Y}get protocol(){return $Q.brandCheck(this,_B),this.#B}get onopen(){return $Q.brandCheck(this,_B),this.#A.open}set onopen(A){if($Q.brandCheck(this,_B),this.#A.open)this.removeEventListener("open",this.#A.open);let Q=$Q.converters.EventHandlerNonNull(A);if(Q!==null)this.addEventListener("open",Q),this.#A.open=A;else this.#A.open=null}get onerror(){return $Q.brandCheck(this,_B),this.#A.error}set onerror(A){if($Q.brandCheck(this,_B),this.#A.error)this.removeEventListener("error",this.#A.error);let Q=$Q.converters.EventHandlerNonNull(A);if(Q!==null)this.addEventListener("error",Q),this.#A.error=A;else this.#A.error=null}get onclose(){return $Q.brandCheck(this,_B),this.#A.close}set onclose(A){if($Q.brandCheck(this,_B),this.#A.close)this.removeEventListener("close",this.#A.close);let Q=$Q.converters.EventHandlerNonNull(A);if(Q!==null)this.addEventListener("close",Q),this.#A.close=A;else this.#A.close=null}get onmessage(){return $Q.brandCheck(this,_B),this.#A.message}set onmessage(A){if($Q.brandCheck(this,_B),this.#A.message)this.removeEventListener("message",this.#A.message);let Q=$Q.converters.EventHandlerNonNull(A);if(Q!==null)this.addEventListener("message",Q),this.#A.message=A;else this.#A.message=null}get binaryType(){return $Q.brandCheck(this,_B),this.#X}set binaryType(A){if($Q.brandCheck(this,_B),A!=="blob"&&A!=="arraybuffer")this.#X="blob";else this.#X=A}#Z(A,Q){this.#C.socket=A.socket;let B=new hx0(this.#C,Q);B.on("drain",()=>this.#C.onParserDrain()),B.on("error",(C)=>this.#C.onParserError(C)),this.#G=B,this.#J=new ux0(A.socket),this.#C.readyState=_6.OPEN;let Y=A.headersList.get("sec-websocket-extensions");if(Y!==null)this.#Y=Y;let J=A.headersList.get("sec-websocket-protocol");if(J!==null)this.#B=J;if(Jk("open",this),OX.open.hasSubscribers){let C=A.headersList.entries;OX.open.publish({address:A.socket.address(),protocol:this.#B,extensions:this.#Y,websocket:this,handshakeResponse:{status:A.status,statusText:A.statusText,headers:C}})}}#U(A,Q){if(this.#C.readyState!==_6.OPEN)return;let B;if(A===Co.TEXT)try{B=kx0(Q)}catch{TPQ(this.#C,1007,"Received invalid UTF-8 in text frame.");return}else if(A===Co.BINARY)if(this.#X==="blob")B=new Blob([Q]);else B=_x0(Q);Jk("message",this,mx0,{origin:this.#F.origin,data:B})}#W(){this.#C.socket.resume()}#E(){let A=this.#C.closeState.has(Jo.SENT)&&this.#C.closeState.has(Jo.RECEIVED),Q=1005,B="",Y=this.#G?.closingInfo;if(Y&&!Y.error)Q=Y.code??1005,B=Y.reason;if(this.#C.readyState=_6.CLOSED,!this.#C.closeState.has(Jo.RECEIVED))Q=1006,Jk("error",this,(J,C)=>new fx0(J,C),{error:TypeError(B)});if(Jk("close",this,(J,C)=>new bx0(J,C),{wasClean:A,code:Q,reason:B}),OX.close.hasSubscribers)OX.close.publish({websocket:this,code:Q,reason:B})}static ping(A,Q){if(Buffer.isBuffer(Q)){if(Q.length>125)throw TypeError("A PING frame cannot have a body larger than 125 bytes.")}else if(Q!==void 0)throw TypeError("Expected buffer payload");let B=A.#C.readyState;if(OPQ(B)&&!PPQ(B)&&!Tx0(B)){let Y=new dx0(Q);A.#C.socket.write(Y.createFrame(Co.PING))}}}var{ping:cx0}=_B;Reflect.deleteProperty(_B,"ping");_B.CONNECTING=_B.prototype.CONNECTING=_6.CONNECTING;_B.OPEN=_B.prototype.OPEN=_6.OPEN;_B.CLOSING=_B.prototype.CLOSING=_6.CLOSING;_B.CLOSED=_B.prototype.CLOSED=_6.CLOSED;Object.defineProperties(_B.prototype,{CONNECTING:XW,OPEN:XW,CLOSING:XW,CLOSED:XW,url:YC,readyState:YC,bufferedAmount:YC,onopen:YC,onerror:YC,onclose:YC,close:YC,onmessage:YC,binaryType:YC,send:YC,extensions:YC,protocol:YC,[Symbol.toStringTag]:{value:"WebSocket",writable:!1,enumerable:!1,configurable:!0}});Object.defineProperties(_B,{CONNECTING:XW,OPEN:XW,CLOSING:XW,CLOSED:XW});$Q.converters["sequence"]=$Q.sequenceConverter($Q.converters.DOMString);$Q.converters["DOMString or sequence"]=function(A,Q,B){if($Q.util.Type(A)===$Q.util.Types.OBJECT&&Symbol.iterator in A)return $Q.converters["sequence"](A);return $Q.converters.DOMString(A,Q,B)};$Q.converters.WebSocketInit=$Q.dictionaryConverter([{key:"protocols",converter:$Q.converters["DOMString or sequence"],defaultValue:()=>[]},{key:"dispatcher",converter:$Q.converters.any,defaultValue:()=>xx0()},{key:"headers",converter:$Q.nullableConverter($Q.converters.HeadersInit)}]);$Q.converters["DOMString or sequence or WebSocketInit"]=function(A){if($Q.util.Type(A)===$Q.util.Types.OBJECT&&!(Symbol.iterator in A))return $Q.converters.WebSocketInit(A);return{protocols:$Q.converters["DOMString or sequence"](A)}};$Q.converters.WebSocketSendData=function(A){if($Q.util.Type(A)===$Q.util.Types.OBJECT){if($Q.is.Blob(A))return A;if($Q.is.BufferSource(A))return A}return $Q.converters.USVString(A)};SPQ.exports={WebSocket:_B,ping:cx0}});var Xo=R((TnY,yPQ)=>{var{webidl:Ck}=$J(),{validateCloseCodeAndReason:lx0}=r$(),{kConstruct:_PQ}=Q0(),{kEnumerableProperty:vPQ}=lQ();function px0(){class A extends DOMException{get reason(){return""}}if(new A().reason!==void 0)return DOMException;return new Proxy(DOMException,{construct(Q,B,Y){let J=Reflect.construct(Q,B,Q);return Object.setPrototypeOf(J,Y.prototype),J}})}class o$ extends px0(){#A;#Q;constructor(A="",Q=void 0){A=Ck.converters.DOMString(A,"WebSocketError","message");super(A,"WebSocketError");if(Q===_PQ)return;else if(Q!==null)Q=Ck.converters.WebSocketCloseInfo(Q);let B=Q.closeCode??null,Y=Q.reason??"";if(lx0(B,Y),Y.length!==0&&B===null)B=1000;this.#A=B,this.#Q=Y}get closeCode(){return this.#A}get reason(){return this.#Q}static createUnvalidatedWebSocketError(A,Q,B){let Y=new o$(A,_PQ);return Y.#A=Q,Y.#Q=B,Y}}var{createUnvalidatedWebSocketError:ix0}=o$;delete o$.createUnvalidatedWebSocketError;Object.defineProperties(o$.prototype,{closeCode:vPQ,reason:vPQ,[Symbol.toStringTag]:{value:"WebSocketError",writable:!1,enumerable:!1,configurable:!0}});Ck.is.WebSocketError=Ck.util.MakeTypeAssertion(o$);yPQ.exports={WebSocketError:o$,createUnvalidatedWebSocketError:ix0}});var bPQ=R((SnY,fPQ)=>{var{createDeferredPromise:Go}=Aq(),{environmentSettingsObject:gPQ}=I9(),{states:VV,opcodes:Xk,sentCloseFrameState:IV}=CW(),{webidl:a0}=$J(),{getURLRecord:nx0,isValidSubprotocol:sx0,isEstablished:rx0,utf8Decode:ax0}=r$(),{establishWebSocketConnection:ox0,failWebsocketConnection:Fo,closeWebSocketConnection:Wo}=Ak(),{channels:hPQ}=z$(),{WebsocketFrameSend:tx0}=EV(),{ByteParser:ex0}=Bo(),{WebSocketError:Af0,createUnvalidatedWebSocketError:Qf0}=Xo(),{utf8DecodeBytes:Bf0}=I9(),{kEnumerableProperty:Gk}=lQ(),xPQ=!1;class Zo{#A;#Q;#B;#Y;#J;#C;#F=!1;#X={onConnectionEstablished:(A,Q)=>this.#U(A,Q),onMessage:(A,Q)=>this.#W(A,Q),onParserError:(A)=>Fo(this.#X,null,A.message),onParserDrain:()=>this.#X.socket.resume(),onSocketData:(A)=>{if(!this.#G.write(A))this.#X.socket.pause()},onSocketError:(A)=>{if(this.#X.readyState=VV.CLOSING,hPQ.socketError.hasSubscribers)hPQ.socketError.publish(A);this.#X.socket.destroy()},onSocketClose:()=>this.#E(),onPing:()=>{},onPong:()=>{},readyState:VV.CONNECTING,socket:null,closeState:new Set,controller:null,wasEverConnected:!1};#G;constructor(A,Q=void 0){if(!xPQ)process.emitWarning("WebSocketStream is experimental! Expect it to change at any time.",{code:"UNDICI-WSS"}),xPQ=!0;if(a0.argumentLengthCheck(arguments,1,"WebSocket"),A=a0.converters.USVString(A),Q!==null)Q=a0.converters.WebSocketStreamOptions(Q);let B=gPQ.settingsObject.baseUrl,Y=nx0(A,B),J=Q.protocols;if(J.length!==new Set(J.map((X)=>X.toLowerCase())).size)throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");if(J.length>0&&!J.every((X)=>sx0(X)))throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");if(this.#A=Y.toString(),this.#Q=Go(),this.#B=Go(),Q.signal!=null){let X=Q.signal;if(X.aborted){this.#Q.reject(X.reason),this.#B.reject(X.reason);return}X.addEventListener("abort",()=>{if(!rx0(this.#X.readyState))Fo(this.#X),this.#X.readyState=VV.CLOSING,this.#Q.reject(X.reason),this.#B.reject(X.reason),this.#F=!0},{once:!0})}let C=gPQ.settingsObject;this.#X.controller=ox0(Y,J,C,this.#X,Q)}get url(){return this.#A.toString()}get opened(){return this.#Q.promise}get closed(){return this.#B.promise}close(A=void 0){if(A!==null)A=a0.converters.WebSocketCloseInfo(A);let Q=A.closeCode??null,B=A.reason;Wo(this.#X,Q,B,!0)}#Z(A){A=a0.converters.WebSocketStreamWrite(A);let Q=Go(),B=null,Y=null;if(a0.is.BufferSource(A))B=new Uint8Array(ArrayBuffer.isView(A)?new Uint8Array(A.buffer,A.byteOffset,A.byteLength):A.slice()),Y=Xk.BINARY;else{let J;try{J=a0.converters.DOMString(A)}catch(C){return Q.reject(C),Q.promise}B=new TextEncoder().encode(J),Y=Xk.TEXT}if(!this.#X.closeState.has(IV.SENT)&&!this.#X.closeState.has(IV.RECEIVED)){let J=new tx0(B);this.#X.socket.write(J.createFrame(Y),()=>{Q.resolve(void 0)})}return Q.promise}#U(A,Q){this.#X.socket=A.socket;let B=new ex0(this.#X,Q);B.on("drain",()=>this.#X.onParserDrain()),B.on("error",(G)=>this.#X.onParserError(G)),this.#G=B,this.#X.readyState=VV.OPEN;let Y=Q??"",J=A.headersList.get("sec-websocket-protocol")??"",C=new ReadableStream({start:(G)=>{this.#J=G},pull(G){let F;while(G.desiredSize>0&&(F=A.socket.read())!==null)G.enqueue(F)},cancel:(G)=>this.#I(G)}),X=new WritableStream({write:(G)=>this.#Z(G),close:()=>Wo(this.#X,null,null),abort:(G)=>this.#V(G)});this.#Y=C,this.#C=X,this.#Q.resolve({extensions:Y,protocol:J,readable:C,writable:X})}#W(A,Q){if(this.#X.readyState!==VV.OPEN)return;let B;if(A===Xk.TEXT)try{B=ax0(Q)}catch{Fo(this.#X,"Received invalid UTF-8 in text frame.");return}else if(A===Xk.BINARY)B=new Uint8Array(Q.buffer,Q.byteOffset,Q.byteLength);this.#J.enqueue(B)}#E(){let A=this.#X.closeState.has(IV.SENT)&&this.#X.closeState.has(IV.RECEIVED);if(this.#X.readyState=VV.CLOSED,this.#F)return;if(!this.#X.wasEverConnected)this.#Q.reject(new Af0("Socket never opened"));let Q=this.#G.closingInfo,B=Q?.code??1005;if(!this.#X.closeState.has(IV.SENT)&&!this.#X.closeState.has(IV.RECEIVED))B=1006;let Y=Q?.reason==null?"":Bf0(Buffer.from(Q.reason));if(A){if(this.#J.close(),!this.#C.locked)this.#C.abort(new DOMException("A closed WebSocketStream cannot be written to","InvalidStateError"));this.#B.resolve({closeCode:B,reason:Y})}else{let J=Qf0("unclean close",B,Y);this.#J.error(J),this.#C.abort(J),this.#B.reject(J)}}#V(A){let Q=null,B="";if(a0.is.WebSocketError(A))Q=A.closeCode,B=A.reason;Wo(this.#X,Q,B)}#I(A){this.#V(A)}}Object.defineProperties(Zo.prototype,{url:Gk,opened:Gk,closed:Gk,close:Gk,[Symbol.toStringTag]:{value:"WebSocketStream",writable:!1,enumerable:!1,configurable:!0}});a0.converters.WebSocketStreamOptions=a0.dictionaryConverter([{key:"protocols",converter:a0.sequenceConverter(a0.converters.USVString),defaultValue:()=>[]},{key:"signal",converter:a0.nullableConverter(a0.converters.AbortSignal),defaultValue:()=>null}]);a0.converters.WebSocketCloseInfo=a0.dictionaryConverter([{key:"closeCode",converter:(A)=>a0.converters["unsigned short"](A,a0.attributes.EnforceRange)},{key:"reason",converter:a0.converters.USVString,defaultValue:()=>""}]);a0.converters.WebSocketStreamWrite=function(A){if(typeof A==="string")return a0.converters.USVString(A);return a0.converters.BufferSource(A)};fPQ.exports={WebSocketStream:Zo}});var uPQ=R((knY,mPQ)=>{function Yf0(A){return A.indexOf("\x00")===-1}function Jf0(A){if(A.length===0)return!1;for(let Q=0;Q57)return!1;return!0}mPQ.exports={isValidLastEventId:Yf0,isASCIINumber:Jf0}});var iPQ=R((_nY,pPQ)=>{var{Transform:Cf0}=u("node:stream"),{isASCIINumber:dPQ,isValidLastEventId:cPQ}=uPQ(),v6=[239,187,191];class lPQ extends Cf0{state;checkBOM=!0;crlfCheck=!1;eventEndCheck=!1;buffer=null;pos=0;event={data:void 0,event:void 0,id:void 0,retry:void 0};constructor(A={}){A.readableObjectMode=!0;super(A);if(this.state=A.eventSourceSettings||{},A.push)this.push=A.push}_transform(A,Q,B){if(A.length===0){B();return}if(this.buffer)this.buffer=Buffer.concat([this.buffer,A]);else this.buffer=A;if(this.checkBOM)switch(this.buffer.length){case 1:if(this.buffer[0]===v6[0]){B();return}this.checkBOM=!1,B();return;case 2:if(this.buffer[0]===v6[0]&&this.buffer[1]===v6[1]){B();return}this.checkBOM=!1;break;case 3:if(this.buffer[0]===v6[0]&&this.buffer[1]===v6[1]&&this.buffer[2]===v6[2]){this.buffer=Buffer.alloc(0),this.checkBOM=!1,B();return}this.checkBOM=!1;break;default:if(this.buffer[0]===v6[0]&&this.buffer[1]===v6[1]&&this.buffer[2]===v6[2])this.buffer=this.buffer.subarray(3);this.checkBOM=!1;break}while(this.pos0)Q[Y]=J;break}}processEvent(A){if(A.retry&&dPQ(A.retry))this.state.reconnectionTime=parseInt(A.retry,10);if(A.id!==void 0&&cPQ(A.id))this.state.lastEventId=A.id;if(A.data!==void 0)this.push({type:A.event||"message",options:{data:A.data,lastEventId:this.state.lastEventId,origin:this.state.origin}})}clearEvent(){this.event={data:void 0,event:void 0,id:void 0,retry:void 0}}}pPQ.exports={EventSourceStream:lPQ}});var ATQ=R((vnY,ePQ)=>{var{pipeline:Xf0}=u("node:stream"),{fetching:Gf0}=hq(),{makeRequest:Ff0}=GV(),{webidl:D9}=$J(),{EventSourceStream:Wf0}=iPQ(),{parseMIMEType:Zf0}=y8(),{createFastMessageEvent:$f0}=oS(),{isNetworkError:nPQ}=yq(),{kEnumerableProperty:t$}=lQ(),{environmentSettingsObject:sPQ}=I9(),rPQ=!1,aPQ=3000,dq=0,oPQ=1,cq=2,Uf0="anonymous",Ef0="use-credentials";class HV extends EventTarget{#A={open:null,error:null,message:null};#Q;#B=!1;#Y=dq;#J=null;#C=null;#F;#X;constructor(A,Q={}){super();D9.util.markAsUncloneable(this);let B="EventSource constructor";if(D9.argumentLengthCheck(arguments,1,B),!rPQ)rPQ=!0,process.emitWarning("EventSource is experimental, expect them to change at any time.",{code:"UNDICI-ES"});A=D9.converters.USVString(A),Q=D9.converters.EventSourceInitDict(Q,B,"eventSourceInitDict"),this.#F=Q.node.dispatcher||Q.dispatcher,this.#X={lastEventId:"",reconnectionTime:Q.node.reconnectionTime};let Y=sPQ,J;try{J=new URL(A,Y.settingsObject.baseUrl),this.#X.origin=J.origin}catch(G){throw new DOMException(G,"SyntaxError")}this.#Q=J.href;let C=Uf0;if(Q.withCredentials===!0)C=Ef0,this.#B=!0;let X={redirect:"follow",keepalive:!0,mode:"cors",credentials:C==="anonymous"?"same-origin":"omit",referrer:"no-referrer"};X.client=sPQ.settingsObject,X.headersList=[["accept",{name:"accept",value:"text/event-stream"}]],X.cache="no-store",X.initiator="other",X.urlList=[new URL(this.#Q)],this.#J=Ff0(X),this.#G()}get readyState(){return this.#Y}get url(){return this.#Q}get withCredentials(){return this.#B}#G(){if(this.#Y===cq)return;this.#Y=dq;let A={request:this.#J,dispatcher:this.#F},Q=(B)=>{if(!nPQ(B))return this.#Z()};A.processResponseEndOfBody=Q,A.processResponse=(B)=>{if(nPQ(B))if(B.aborted){this.close(),this.dispatchEvent(new Event("error"));return}else{this.#Z();return}let Y=B.headersList.get("content-type",!0),J=Y!==null?Zf0(Y):"failure",C=J!=="failure"&&J.essence==="text/event-stream";if(B.status!==200||C===!1){this.close(),this.dispatchEvent(new Event("error"));return}this.#Y=oPQ,this.dispatchEvent(new Event("open")),this.#X.origin=B.urlList[B.urlList.length-1].origin;let X=new Wf0({eventSourceSettings:this.#X,push:(G)=>{this.dispatchEvent($f0(G.type,G.options))}});Xf0(B.body.stream,X,(G)=>{if(G?.aborted===!1)this.close(),this.dispatchEvent(new Event("error"))})},this.#C=Gf0(A)}#Z(){if(this.#Y===cq)return;this.#Y=dq,this.dispatchEvent(new Event("error")),setTimeout(()=>{if(this.#Y!==dq)return;if(this.#X.lastEventId.length)this.#J.headersList.set("last-event-id",this.#X.lastEventId,!0);this.#G()},this.#X.reconnectionTime)?.unref()}close(){if(D9.brandCheck(this,HV),this.#Y===cq)return;this.#Y=cq,this.#C.abort(),this.#J=null}get onopen(){return this.#A.open}set onopen(A){if(this.#A.open)this.removeEventListener("open",this.#A.open);let Q=D9.converters.EventHandlerNonNull(A);if(Q!==null)this.addEventListener("open",Q),this.#A.open=A;else this.#A.open=null}get onmessage(){return this.#A.message}set onmessage(A){if(this.#A.message)this.removeEventListener("message",this.#A.message);let Q=D9.converters.EventHandlerNonNull(A);if(Q!==null)this.addEventListener("message",Q),this.#A.message=A;else this.#A.message=null}get onerror(){return this.#A.error}set onerror(A){if(this.#A.error)this.removeEventListener("error",this.#A.error);let Q=D9.converters.EventHandlerNonNull(A);if(Q!==null)this.addEventListener("error",Q),this.#A.error=A;else this.#A.error=null}}var tPQ={CONNECTING:{__proto__:null,configurable:!1,enumerable:!0,value:dq,writable:!1},OPEN:{__proto__:null,configurable:!1,enumerable:!0,value:oPQ,writable:!1},CLOSED:{__proto__:null,configurable:!1,enumerable:!0,value:cq,writable:!1}};Object.defineProperties(HV,tPQ);Object.defineProperties(HV.prototype,tPQ);Object.defineProperties(HV.prototype,{close:t$,onerror:t$,onmessage:t$,onopen:t$,readyState:t$,url:t$,withCredentials:t$});D9.converters.EventSourceInitDict=D9.dictionaryConverter([{key:"withCredentials",converter:D9.converters.boolean,defaultValue:()=>!1},{key:"dispatcher",converter:D9.converters.any},{key:"node",converter:D9.dictionaryConverter([{key:"reconnectionTime",converter:D9.converters["unsigned long"],defaultValue:()=>aPQ},{key:"dispatcher",converter:D9.converters.any}]),defaultValue:()=>({})}]);ePQ.exports={EventSource:HV,defaultReconnectionTime:aPQ}});var U1=R((ZTQ)=>{Object.defineProperty(ZTQ,"__esModule",{value:!0});ZTQ.setMatrixArrayType=of0;ZTQ.toRadian=ef0;ZTQ.equals=Ab0;ZTQ.RANDOM=ZTQ.ARRAY_TYPE=ZTQ.EPSILON=void 0;var FTQ=0.000001;ZTQ.EPSILON=FTQ;var WTQ=typeof Float32Array<"u"?Float32Array:Array;ZTQ.ARRAY_TYPE=WTQ;var af0=Math.random;ZTQ.RANDOM=af0;function of0(A){ZTQ.ARRAY_TYPE=WTQ=A}var tf0=Math.PI/180;function ef0(A){return A*tf0}function Ab0(A,Q){return Math.abs(A-Q)<=FTQ*Math.max(1,Math.abs(A),Math.abs(Q))}if(!Math.hypot)Math.hypot=function(){var A=0,Q=arguments.length;while(Q--)A+=arguments[Q]*arguments[Q];return Math.sqrt(A)}});var DTQ=R((ITQ)=>{function Kk(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")Kk=function(B){return typeof B};else Kk=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return Kk(A)}Object.defineProperty(ITQ,"__esModule",{value:!0});ITQ.create=Xb0;ITQ.clone=Gb0;ITQ.copy=Fb0;ITQ.identity=Wb0;ITQ.fromValues=Zb0;ITQ.set=$b0;ITQ.transpose=Ub0;ITQ.invert=Eb0;ITQ.adjoint=Kb0;ITQ.determinant=Vb0;ITQ.multiply=KTQ;ITQ.rotate=Ib0;ITQ.scale=Hb0;ITQ.fromRotation=Db0;ITQ.fromScaling=Nb0;ITQ.str=Lb0;ITQ.frob=qb0;ITQ.LDU=Mb0;ITQ.add=zb0;ITQ.subtract=VTQ;ITQ.exactEquals=Rb0;ITQ.equals=wb0;ITQ.multiplyScalar=jb0;ITQ.multiplyScalarAndAdd=Ob0;ITQ.sub=ITQ.mul=void 0;var WW=Cb0(U1());function ETQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(ETQ=function(J){return J?B:Q})(A)}function Cb0(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||Kk(A)!=="object"&&typeof A!=="function")return{default:A};var B=ETQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function Xb0(){var A=new WW.ARRAY_TYPE(4);if(WW.ARRAY_TYPE!=Float32Array)A[1]=0,A[2]=0;return A[0]=1,A[3]=1,A}function Gb0(A){var Q=new WW.ARRAY_TYPE(4);return Q[0]=A[0],Q[1]=A[1],Q[2]=A[2],Q[3]=A[3],Q}function Fb0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A[3]=Q[3],A}function Wb0(A){return A[0]=1,A[1]=0,A[2]=0,A[3]=1,A}function Zb0(A,Q,B,Y){var J=new WW.ARRAY_TYPE(4);return J[0]=A,J[1]=Q,J[2]=B,J[3]=Y,J}function $b0(A,Q,B,Y,J){return A[0]=Q,A[1]=B,A[2]=Y,A[3]=J,A}function Ub0(A,Q){if(A===Q){var B=Q[1];A[1]=Q[2],A[2]=B}else A[0]=Q[0],A[1]=Q[2],A[2]=Q[1],A[3]=Q[3];return A}function Eb0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=B*C-J*Y;if(!X)return null;return X=1/X,A[0]=C*X,A[1]=-Y*X,A[2]=-J*X,A[3]=B*X,A}function Kb0(A,Q){var B=Q[0];return A[0]=Q[3],A[1]=-Q[1],A[2]=-Q[2],A[3]=B,A}function Vb0(A){return A[0]*A[3]-A[2]*A[1]}function KTQ(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=B[0],F=B[1],W=B[2],Z=B[3];return A[0]=Y*G+C*F,A[1]=J*G+X*F,A[2]=Y*W+C*Z,A[3]=J*W+X*Z,A}function Ib0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Math.sin(B),F=Math.cos(B);return A[0]=Y*F+C*G,A[1]=J*F+X*G,A[2]=Y*-G+C*F,A[3]=J*-G+X*F,A}function Hb0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=B[0],F=B[1];return A[0]=Y*G,A[1]=J*G,A[2]=C*F,A[3]=X*F,A}function Db0(A,Q){var B=Math.sin(Q),Y=Math.cos(Q);return A[0]=Y,A[1]=B,A[2]=-B,A[3]=Y,A}function Nb0(A,Q){return A[0]=Q[0],A[1]=0,A[2]=0,A[3]=Q[1],A}function Lb0(A){return"mat2("+A[0]+", "+A[1]+", "+A[2]+", "+A[3]+")"}function qb0(A){return Math.hypot(A[0],A[1],A[2],A[3])}function Mb0(A,Q,B,Y){return A[2]=Y[2]/Y[0],B[0]=Y[0],B[1]=Y[1],B[3]=Y[3]-A[2]*B[1],[A,Q,B]}function zb0(A,Q,B){return A[0]=Q[0]+B[0],A[1]=Q[1]+B[1],A[2]=Q[2]+B[2],A[3]=Q[3]+B[3],A}function VTQ(A,Q,B){return A[0]=Q[0]-B[0],A[1]=Q[1]-B[1],A[2]=Q[2]-B[2],A[3]=Q[3]-B[3],A}function Rb0(A,Q){return A[0]===Q[0]&&A[1]===Q[1]&&A[2]===Q[2]&&A[3]===Q[3]}function wb0(A,Q){var B=A[0],Y=A[1],J=A[2],C=A[3],X=Q[0],G=Q[1],F=Q[2],W=Q[3];return Math.abs(B-X)<=WW.EPSILON*Math.max(1,Math.abs(B),Math.abs(X))&&Math.abs(Y-G)<=WW.EPSILON*Math.max(1,Math.abs(Y),Math.abs(G))&&Math.abs(J-F)<=WW.EPSILON*Math.max(1,Math.abs(J),Math.abs(F))&&Math.abs(C-W)<=WW.EPSILON*Math.max(1,Math.abs(C),Math.abs(W))}function jb0(A,Q,B){return A[0]=Q[0]*B,A[1]=Q[1]*B,A[2]=Q[2]*B,A[3]=Q[3]*B,A}function Ob0(A,Q,B,Y){return A[0]=Q[0]+B[0]*Y,A[1]=Q[1]+B[1]*Y,A[2]=Q[2]+B[2]*Y,A[3]=Q[3]+B[3]*Y,A}var Pb0=KTQ;ITQ.mul=Pb0;var Tb0=VTQ;ITQ.sub=Tb0});var RTQ=R((MTQ)=>{function Vk(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")Vk=function(B){return typeof B};else Vk=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return Vk(A)}Object.defineProperty(MTQ,"__esModule",{value:!0});MTQ.create=Bm0;MTQ.clone=Ym0;MTQ.copy=Jm0;MTQ.identity=Cm0;MTQ.fromValues=Xm0;MTQ.set=Gm0;MTQ.invert=Fm0;MTQ.determinant=Wm0;MTQ.multiply=LTQ;MTQ.rotate=Zm0;MTQ.scale=$m0;MTQ.translate=Um0;MTQ.fromRotation=Em0;MTQ.fromScaling=Km0;MTQ.fromTranslation=Vm0;MTQ.str=Im0;MTQ.frob=Hm0;MTQ.add=Dm0;MTQ.subtract=qTQ;MTQ.multiplyScalar=Nm0;MTQ.multiplyScalarAndAdd=Lm0;MTQ.exactEquals=qm0;MTQ.equals=Mm0;MTQ.sub=MTQ.mul=void 0;var PX=Qm0(U1());function NTQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(NTQ=function(J){return J?B:Q})(A)}function Qm0(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||Vk(A)!=="object"&&typeof A!=="function")return{default:A};var B=NTQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function Bm0(){var A=new PX.ARRAY_TYPE(6);if(PX.ARRAY_TYPE!=Float32Array)A[1]=0,A[2]=0,A[4]=0,A[5]=0;return A[0]=1,A[3]=1,A}function Ym0(A){var Q=new PX.ARRAY_TYPE(6);return Q[0]=A[0],Q[1]=A[1],Q[2]=A[2],Q[3]=A[3],Q[4]=A[4],Q[5]=A[5],Q}function Jm0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A[3]=Q[3],A[4]=Q[4],A[5]=Q[5],A}function Cm0(A){return A[0]=1,A[1]=0,A[2]=0,A[3]=1,A[4]=0,A[5]=0,A}function Xm0(A,Q,B,Y,J,C){var X=new PX.ARRAY_TYPE(6);return X[0]=A,X[1]=Q,X[2]=B,X[3]=Y,X[4]=J,X[5]=C,X}function Gm0(A,Q,B,Y,J,C,X){return A[0]=Q,A[1]=B,A[2]=Y,A[3]=J,A[4]=C,A[5]=X,A}function Fm0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Q[4],G=Q[5],F=B*C-Y*J;if(!F)return null;return F=1/F,A[0]=C*F,A[1]=-Y*F,A[2]=-J*F,A[3]=B*F,A[4]=(J*G-C*X)*F,A[5]=(Y*X-B*G)*F,A}function Wm0(A){return A[0]*A[3]-A[1]*A[2]}function LTQ(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],F=Q[5],W=B[0],Z=B[1],U=B[2],$=B[3],E=B[4],K=B[5];return A[0]=Y*W+C*Z,A[1]=J*W+X*Z,A[2]=Y*U+C*$,A[3]=J*U+X*$,A[4]=Y*E+C*K+G,A[5]=J*E+X*K+F,A}function Zm0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],F=Q[5],W=Math.sin(B),Z=Math.cos(B);return A[0]=Y*Z+C*W,A[1]=J*Z+X*W,A[2]=Y*-W+C*Z,A[3]=J*-W+X*Z,A[4]=G,A[5]=F,A}function $m0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],F=Q[5],W=B[0],Z=B[1];return A[0]=Y*W,A[1]=J*W,A[2]=C*Z,A[3]=X*Z,A[4]=G,A[5]=F,A}function Um0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],F=Q[5],W=B[0],Z=B[1];return A[0]=Y,A[1]=J,A[2]=C,A[3]=X,A[4]=Y*W+C*Z+G,A[5]=J*W+X*Z+F,A}function Em0(A,Q){var B=Math.sin(Q),Y=Math.cos(Q);return A[0]=Y,A[1]=B,A[2]=-B,A[3]=Y,A[4]=0,A[5]=0,A}function Km0(A,Q){return A[0]=Q[0],A[1]=0,A[2]=0,A[3]=Q[1],A[4]=0,A[5]=0,A}function Vm0(A,Q){return A[0]=1,A[1]=0,A[2]=0,A[3]=1,A[4]=Q[0],A[5]=Q[1],A}function Im0(A){return"mat2d("+A[0]+", "+A[1]+", "+A[2]+", "+A[3]+", "+A[4]+", "+A[5]+")"}function Hm0(A){return Math.hypot(A[0],A[1],A[2],A[3],A[4],A[5],1)}function Dm0(A,Q,B){return A[0]=Q[0]+B[0],A[1]=Q[1]+B[1],A[2]=Q[2]+B[2],A[3]=Q[3]+B[3],A[4]=Q[4]+B[4],A[5]=Q[5]+B[5],A}function qTQ(A,Q,B){return A[0]=Q[0]-B[0],A[1]=Q[1]-B[1],A[2]=Q[2]-B[2],A[3]=Q[3]-B[3],A[4]=Q[4]-B[4],A[5]=Q[5]-B[5],A}function Nm0(A,Q,B){return A[0]=Q[0]*B,A[1]=Q[1]*B,A[2]=Q[2]*B,A[3]=Q[3]*B,A[4]=Q[4]*B,A[5]=Q[5]*B,A}function Lm0(A,Q,B,Y){return A[0]=Q[0]+B[0]*Y,A[1]=Q[1]+B[1]*Y,A[2]=Q[2]+B[2]*Y,A[3]=Q[3]+B[3]*Y,A[4]=Q[4]+B[4]*Y,A[5]=Q[5]+B[5]*Y,A}function qm0(A,Q){return A[0]===Q[0]&&A[1]===Q[1]&&A[2]===Q[2]&&A[3]===Q[3]&&A[4]===Q[4]&&A[5]===Q[5]}function Mm0(A,Q){var B=A[0],Y=A[1],J=A[2],C=A[3],X=A[4],G=A[5],F=Q[0],W=Q[1],Z=Q[2],U=Q[3],$=Q[4],E=Q[5];return Math.abs(B-F)<=PX.EPSILON*Math.max(1,Math.abs(B),Math.abs(F))&&Math.abs(Y-W)<=PX.EPSILON*Math.max(1,Math.abs(Y),Math.abs(W))&&Math.abs(J-Z)<=PX.EPSILON*Math.max(1,Math.abs(J),Math.abs(Z))&&Math.abs(C-U)<=PX.EPSILON*Math.max(1,Math.abs(C),Math.abs(U))&&Math.abs(X-$)<=PX.EPSILON*Math.max(1,Math.abs(X),Math.abs($))&&Math.abs(G-E)<=PX.EPSILON*Math.max(1,Math.abs(G),Math.abs(E))}var zm0=LTQ;MTQ.mul=zm0;var Rm0=qTQ;MTQ.sub=Rm0});var Lo=R((PTQ)=>{function Ik(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")Ik=function(B){return typeof B};else Ik=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return Ik(A)}Object.defineProperty(PTQ,"__esModule",{value:!0});PTQ.create=am0;PTQ.fromMat4=om0;PTQ.clone=tm0;PTQ.copy=em0;PTQ.fromValues=Au0;PTQ.set=Qu0;PTQ.identity=Bu0;PTQ.transpose=Yu0;PTQ.invert=Ju0;PTQ.adjoint=Cu0;PTQ.determinant=Xu0;PTQ.multiply=jTQ;PTQ.translate=Gu0;PTQ.rotate=Fu0;PTQ.scale=Wu0;PTQ.fromTranslation=Zu0;PTQ.fromRotation=$u0;PTQ.fromScaling=Uu0;PTQ.fromMat2d=Eu0;PTQ.fromQuat=Ku0;PTQ.normalFromMat4=Vu0;PTQ.projection=Iu0;PTQ.str=Hu0;PTQ.frob=Du0;PTQ.add=Nu0;PTQ.subtract=OTQ;PTQ.multiplyScalar=Lu0;PTQ.multiplyScalarAndAdd=qu0;PTQ.exactEquals=Mu0;PTQ.equals=zu0;PTQ.sub=PTQ.mul=void 0;var d8=rm0(U1());function wTQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(wTQ=function(J){return J?B:Q})(A)}function rm0(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||Ik(A)!=="object"&&typeof A!=="function")return{default:A};var B=wTQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function am0(){var A=new d8.ARRAY_TYPE(9);if(d8.ARRAY_TYPE!=Float32Array)A[1]=0,A[2]=0,A[3]=0,A[5]=0,A[6]=0,A[7]=0;return A[0]=1,A[4]=1,A[8]=1,A}function om0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A[3]=Q[4],A[4]=Q[5],A[5]=Q[6],A[6]=Q[8],A[7]=Q[9],A[8]=Q[10],A}function tm0(A){var Q=new d8.ARRAY_TYPE(9);return Q[0]=A[0],Q[1]=A[1],Q[2]=A[2],Q[3]=A[3],Q[4]=A[4],Q[5]=A[5],Q[6]=A[6],Q[7]=A[7],Q[8]=A[8],Q}function em0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A[3]=Q[3],A[4]=Q[4],A[5]=Q[5],A[6]=Q[6],A[7]=Q[7],A[8]=Q[8],A}function Au0(A,Q,B,Y,J,C,X,G,F){var W=new d8.ARRAY_TYPE(9);return W[0]=A,W[1]=Q,W[2]=B,W[3]=Y,W[4]=J,W[5]=C,W[6]=X,W[7]=G,W[8]=F,W}function Qu0(A,Q,B,Y,J,C,X,G,F,W){return A[0]=Q,A[1]=B,A[2]=Y,A[3]=J,A[4]=C,A[5]=X,A[6]=G,A[7]=F,A[8]=W,A}function Bu0(A){return A[0]=1,A[1]=0,A[2]=0,A[3]=0,A[4]=1,A[5]=0,A[6]=0,A[7]=0,A[8]=1,A}function Yu0(A,Q){if(A===Q){var B=Q[1],Y=Q[2],J=Q[5];A[1]=Q[3],A[2]=Q[6],A[3]=B,A[5]=Q[7],A[6]=Y,A[7]=J}else A[0]=Q[0],A[1]=Q[3],A[2]=Q[6],A[3]=Q[1],A[4]=Q[4],A[5]=Q[7],A[6]=Q[2],A[7]=Q[5],A[8]=Q[8];return A}function Ju0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Q[4],G=Q[5],F=Q[6],W=Q[7],Z=Q[8],U=Z*X-G*W,$=-Z*C+G*F,E=W*C-X*F,K=B*U+Y*$+J*E;if(!K)return null;return K=1/K,A[0]=U*K,A[1]=(-Z*Y+J*W)*K,A[2]=(G*Y-J*X)*K,A[3]=$*K,A[4]=(Z*B-J*F)*K,A[5]=(-G*B+J*C)*K,A[6]=E*K,A[7]=(-W*B+Y*F)*K,A[8]=(X*B-Y*C)*K,A}function Cu0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Q[4],G=Q[5],F=Q[6],W=Q[7],Z=Q[8];return A[0]=X*Z-G*W,A[1]=J*W-Y*Z,A[2]=Y*G-J*X,A[3]=G*F-C*Z,A[4]=B*Z-J*F,A[5]=J*C-B*G,A[6]=C*W-X*F,A[7]=Y*F-B*W,A[8]=B*X-Y*C,A}function Xu0(A){var Q=A[0],B=A[1],Y=A[2],J=A[3],C=A[4],X=A[5],G=A[6],F=A[7],W=A[8];return Q*(W*C-X*F)+B*(-W*J+X*G)+Y*(F*J-C*G)}function jTQ(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],F=Q[5],W=Q[6],Z=Q[7],U=Q[8],$=B[0],E=B[1],K=B[2],I=B[3],V=B[4],H=B[5],D=B[6],L=B[7],z=B[8];return A[0]=$*Y+E*X+K*W,A[1]=$*J+E*G+K*Z,A[2]=$*C+E*F+K*U,A[3]=I*Y+V*X+H*W,A[4]=I*J+V*G+H*Z,A[5]=I*C+V*F+H*U,A[6]=D*Y+L*X+z*W,A[7]=D*J+L*G+z*Z,A[8]=D*C+L*F+z*U,A}function Gu0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],F=Q[5],W=Q[6],Z=Q[7],U=Q[8],$=B[0],E=B[1];return A[0]=Y,A[1]=J,A[2]=C,A[3]=X,A[4]=G,A[5]=F,A[6]=$*Y+E*X+W,A[7]=$*J+E*G+Z,A[8]=$*C+E*F+U,A}function Fu0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],F=Q[5],W=Q[6],Z=Q[7],U=Q[8],$=Math.sin(B),E=Math.cos(B);return A[0]=E*Y+$*X,A[1]=E*J+$*G,A[2]=E*C+$*F,A[3]=E*X-$*Y,A[4]=E*G-$*J,A[5]=E*F-$*C,A[6]=W,A[7]=Z,A[8]=U,A}function Wu0(A,Q,B){var Y=B[0],J=B[1];return A[0]=Y*Q[0],A[1]=Y*Q[1],A[2]=Y*Q[2],A[3]=J*Q[3],A[4]=J*Q[4],A[5]=J*Q[5],A[6]=Q[6],A[7]=Q[7],A[8]=Q[8],A}function Zu0(A,Q){return A[0]=1,A[1]=0,A[2]=0,A[3]=0,A[4]=1,A[5]=0,A[6]=Q[0],A[7]=Q[1],A[8]=1,A}function $u0(A,Q){var B=Math.sin(Q),Y=Math.cos(Q);return A[0]=Y,A[1]=B,A[2]=0,A[3]=-B,A[4]=Y,A[5]=0,A[6]=0,A[7]=0,A[8]=1,A}function Uu0(A,Q){return A[0]=Q[0],A[1]=0,A[2]=0,A[3]=0,A[4]=Q[1],A[5]=0,A[6]=0,A[7]=0,A[8]=1,A}function Eu0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=0,A[3]=Q[2],A[4]=Q[3],A[5]=0,A[6]=Q[4],A[7]=Q[5],A[8]=1,A}function Ku0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=B+B,G=Y+Y,F=J+J,W=B*X,Z=Y*X,U=Y*G,$=J*X,E=J*G,K=J*F,I=C*X,V=C*G,H=C*F;return A[0]=1-U-K,A[3]=Z-H,A[6]=$+V,A[1]=Z+H,A[4]=1-W-K,A[7]=E-I,A[2]=$-V,A[5]=E+I,A[8]=1-W-U,A}function Vu0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Q[4],G=Q[5],F=Q[6],W=Q[7],Z=Q[8],U=Q[9],$=Q[10],E=Q[11],K=Q[12],I=Q[13],V=Q[14],H=Q[15],D=B*G-Y*X,L=B*F-J*X,z=B*W-C*X,M=Y*F-J*G,N=Y*W-C*G,q=J*W-C*F,w=Z*I-U*K,P=Z*V-$*K,_=Z*H-E*K,O=U*V-$*I,k=U*H-E*I,T=$*H-E*V,S=D*T-L*k+z*O+M*_-N*P+q*w;if(!S)return null;return S=1/S,A[0]=(G*T-F*k+W*O)*S,A[1]=(F*_-X*T-W*P)*S,A[2]=(X*k-G*_+W*w)*S,A[3]=(J*k-Y*T-C*O)*S,A[4]=(B*T-J*_+C*P)*S,A[5]=(Y*_-B*k-C*w)*S,A[6]=(I*q-V*N+H*M)*S,A[7]=(V*z-K*q-H*L)*S,A[8]=(K*N-I*z+H*D)*S,A}function Iu0(A,Q,B){return A[0]=2/Q,A[1]=0,A[2]=0,A[3]=0,A[4]=-2/B,A[5]=0,A[6]=-1,A[7]=1,A[8]=1,A}function Hu0(A){return"mat3("+A[0]+", "+A[1]+", "+A[2]+", "+A[3]+", "+A[4]+", "+A[5]+", "+A[6]+", "+A[7]+", "+A[8]+")"}function Du0(A){return Math.hypot(A[0],A[1],A[2],A[3],A[4],A[5],A[6],A[7],A[8])}function Nu0(A,Q,B){return A[0]=Q[0]+B[0],A[1]=Q[1]+B[1],A[2]=Q[2]+B[2],A[3]=Q[3]+B[3],A[4]=Q[4]+B[4],A[5]=Q[5]+B[5],A[6]=Q[6]+B[6],A[7]=Q[7]+B[7],A[8]=Q[8]+B[8],A}function OTQ(A,Q,B){return A[0]=Q[0]-B[0],A[1]=Q[1]-B[1],A[2]=Q[2]-B[2],A[3]=Q[3]-B[3],A[4]=Q[4]-B[4],A[5]=Q[5]-B[5],A[6]=Q[6]-B[6],A[7]=Q[7]-B[7],A[8]=Q[8]-B[8],A}function Lu0(A,Q,B){return A[0]=Q[0]*B,A[1]=Q[1]*B,A[2]=Q[2]*B,A[3]=Q[3]*B,A[4]=Q[4]*B,A[5]=Q[5]*B,A[6]=Q[6]*B,A[7]=Q[7]*B,A[8]=Q[8]*B,A}function qu0(A,Q,B,Y){return A[0]=Q[0]+B[0]*Y,A[1]=Q[1]+B[1]*Y,A[2]=Q[2]+B[2]*Y,A[3]=Q[3]+B[3]*Y,A[4]=Q[4]+B[4]*Y,A[5]=Q[5]+B[5]*Y,A[6]=Q[6]+B[6]*Y,A[7]=Q[7]+B[7]*Y,A[8]=Q[8]+B[8]*Y,A}function Mu0(A,Q){return A[0]===Q[0]&&A[1]===Q[1]&&A[2]===Q[2]&&A[3]===Q[3]&&A[4]===Q[4]&&A[5]===Q[5]&&A[6]===Q[6]&&A[7]===Q[7]&&A[8]===Q[8]}function zu0(A,Q){var B=A[0],Y=A[1],J=A[2],C=A[3],X=A[4],G=A[5],F=A[6],W=A[7],Z=A[8],U=Q[0],$=Q[1],E=Q[2],K=Q[3],I=Q[4],V=Q[5],H=Q[6],D=Q[7],L=Q[8];return Math.abs(B-U)<=d8.EPSILON*Math.max(1,Math.abs(B),Math.abs(U))&&Math.abs(Y-$)<=d8.EPSILON*Math.max(1,Math.abs(Y),Math.abs($))&&Math.abs(J-E)<=d8.EPSILON*Math.max(1,Math.abs(J),Math.abs(E))&&Math.abs(C-K)<=d8.EPSILON*Math.max(1,Math.abs(C),Math.abs(K))&&Math.abs(X-I)<=d8.EPSILON*Math.max(1,Math.abs(X),Math.abs(I))&&Math.abs(G-V)<=d8.EPSILON*Math.max(1,Math.abs(G),Math.abs(V))&&Math.abs(F-H)<=d8.EPSILON*Math.max(1,Math.abs(F),Math.abs(H))&&Math.abs(W-D)<=d8.EPSILON*Math.max(1,Math.abs(W),Math.abs(D))&&Math.abs(Z-L)<=d8.EPSILON*Math.max(1,Math.abs(Z),Math.abs(L))}var Ru0=jTQ;PTQ.mul=Ru0;var wu0=OTQ;PTQ.sub=wu0});var qo=R((fTQ)=>{function Hk(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")Hk=function(B){return typeof B};else Hk=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return Hk(A)}Object.defineProperty(fTQ,"__esModule",{value:!0});fTQ.create=Jd0;fTQ.clone=Cd0;fTQ.copy=Xd0;fTQ.fromValues=Gd0;fTQ.set=Fd0;fTQ.identity=kTQ;fTQ.transpose=Wd0;fTQ.invert=Zd0;fTQ.adjoint=$d0;fTQ.determinant=Ud0;fTQ.multiply=_TQ;fTQ.translate=Ed0;fTQ.scale=Kd0;fTQ.rotate=Vd0;fTQ.rotateX=Id0;fTQ.rotateY=Hd0;fTQ.rotateZ=Dd0;fTQ.fromTranslation=Nd0;fTQ.fromScaling=Ld0;fTQ.fromRotation=qd0;fTQ.fromXRotation=Md0;fTQ.fromYRotation=zd0;fTQ.fromZRotation=Rd0;fTQ.fromRotationTranslation=vTQ;fTQ.fromQuat2=wd0;fTQ.getTranslation=jd0;fTQ.getScaling=yTQ;fTQ.getRotation=Od0;fTQ.fromRotationTranslationScale=Pd0;fTQ.fromRotationTranslationScaleOrigin=Td0;fTQ.fromQuat=Sd0;fTQ.frustum=kd0;fTQ.perspectiveNO=gTQ;fTQ.perspectiveZO=vd0;fTQ.perspectiveFromFieldOfView=yd0;fTQ.orthoNO=hTQ;fTQ.orthoZO=hd0;fTQ.lookAt=xd0;fTQ.targetTo=fd0;fTQ.str=bd0;fTQ.frob=md0;fTQ.add=ud0;fTQ.subtract=xTQ;fTQ.multiplyScalar=dd0;fTQ.multiplyScalarAndAdd=cd0;fTQ.exactEquals=ld0;fTQ.equals=pd0;fTQ.sub=fTQ.mul=fTQ.ortho=fTQ.perspective=void 0;var B0=Yd0(U1());function STQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(STQ=function(J){return J?B:Q})(A)}function Yd0(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||Hk(A)!=="object"&&typeof A!=="function")return{default:A};var B=STQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function Jd0(){var A=new B0.ARRAY_TYPE(16);if(B0.ARRAY_TYPE!=Float32Array)A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[6]=0,A[7]=0,A[8]=0,A[9]=0,A[11]=0,A[12]=0,A[13]=0,A[14]=0;return A[0]=1,A[5]=1,A[10]=1,A[15]=1,A}function Cd0(A){var Q=new B0.ARRAY_TYPE(16);return Q[0]=A[0],Q[1]=A[1],Q[2]=A[2],Q[3]=A[3],Q[4]=A[4],Q[5]=A[5],Q[6]=A[6],Q[7]=A[7],Q[8]=A[8],Q[9]=A[9],Q[10]=A[10],Q[11]=A[11],Q[12]=A[12],Q[13]=A[13],Q[14]=A[14],Q[15]=A[15],Q}function Xd0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A[3]=Q[3],A[4]=Q[4],A[5]=Q[5],A[6]=Q[6],A[7]=Q[7],A[8]=Q[8],A[9]=Q[9],A[10]=Q[10],A[11]=Q[11],A[12]=Q[12],A[13]=Q[13],A[14]=Q[14],A[15]=Q[15],A}function Gd0(A,Q,B,Y,J,C,X,G,F,W,Z,U,$,E,K,I){var V=new B0.ARRAY_TYPE(16);return V[0]=A,V[1]=Q,V[2]=B,V[3]=Y,V[4]=J,V[5]=C,V[6]=X,V[7]=G,V[8]=F,V[9]=W,V[10]=Z,V[11]=U,V[12]=$,V[13]=E,V[14]=K,V[15]=I,V}function Fd0(A,Q,B,Y,J,C,X,G,F,W,Z,U,$,E,K,I,V){return A[0]=Q,A[1]=B,A[2]=Y,A[3]=J,A[4]=C,A[5]=X,A[6]=G,A[7]=F,A[8]=W,A[9]=Z,A[10]=U,A[11]=$,A[12]=E,A[13]=K,A[14]=I,A[15]=V,A}function kTQ(A){return A[0]=1,A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[5]=1,A[6]=0,A[7]=0,A[8]=0,A[9]=0,A[10]=1,A[11]=0,A[12]=0,A[13]=0,A[14]=0,A[15]=1,A}function Wd0(A,Q){if(A===Q){var B=Q[1],Y=Q[2],J=Q[3],C=Q[6],X=Q[7],G=Q[11];A[1]=Q[4],A[2]=Q[8],A[3]=Q[12],A[4]=B,A[6]=Q[9],A[7]=Q[13],A[8]=Y,A[9]=C,A[11]=Q[14],A[12]=J,A[13]=X,A[14]=G}else A[0]=Q[0],A[1]=Q[4],A[2]=Q[8],A[3]=Q[12],A[4]=Q[1],A[5]=Q[5],A[6]=Q[9],A[7]=Q[13],A[8]=Q[2],A[9]=Q[6],A[10]=Q[10],A[11]=Q[14],A[12]=Q[3],A[13]=Q[7],A[14]=Q[11],A[15]=Q[15];return A}function Zd0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Q[4],G=Q[5],F=Q[6],W=Q[7],Z=Q[8],U=Q[9],$=Q[10],E=Q[11],K=Q[12],I=Q[13],V=Q[14],H=Q[15],D=B*G-Y*X,L=B*F-J*X,z=B*W-C*X,M=Y*F-J*G,N=Y*W-C*G,q=J*W-C*F,w=Z*I-U*K,P=Z*V-$*K,_=Z*H-E*K,O=U*V-$*I,k=U*H-E*I,T=$*H-E*V,S=D*T-L*k+z*O+M*_-N*P+q*w;if(!S)return null;return S=1/S,A[0]=(G*T-F*k+W*O)*S,A[1]=(J*k-Y*T-C*O)*S,A[2]=(I*q-V*N+H*M)*S,A[3]=($*N-U*q-E*M)*S,A[4]=(F*_-X*T-W*P)*S,A[5]=(B*T-J*_+C*P)*S,A[6]=(V*z-K*q-H*L)*S,A[7]=(Z*q-$*z+E*L)*S,A[8]=(X*k-G*_+W*w)*S,A[9]=(Y*_-B*k-C*w)*S,A[10]=(K*N-I*z+H*D)*S,A[11]=(U*z-Z*N-E*D)*S,A[12]=(G*P-X*O-F*w)*S,A[13]=(B*O-Y*P+J*w)*S,A[14]=(I*L-K*M-V*D)*S,A[15]=(Z*M-U*L+$*D)*S,A}function $d0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Q[4],G=Q[5],F=Q[6],W=Q[7],Z=Q[8],U=Q[9],$=Q[10],E=Q[11],K=Q[12],I=Q[13],V=Q[14],H=Q[15];return A[0]=G*($*H-E*V)-U*(F*H-W*V)+I*(F*E-W*$),A[1]=-(Y*($*H-E*V)-U*(J*H-C*V)+I*(J*E-C*$)),A[2]=Y*(F*H-W*V)-G*(J*H-C*V)+I*(J*W-C*F),A[3]=-(Y*(F*E-W*$)-G*(J*E-C*$)+U*(J*W-C*F)),A[4]=-(X*($*H-E*V)-Z*(F*H-W*V)+K*(F*E-W*$)),A[5]=B*($*H-E*V)-Z*(J*H-C*V)+K*(J*E-C*$),A[6]=-(B*(F*H-W*V)-X*(J*H-C*V)+K*(J*W-C*F)),A[7]=B*(F*E-W*$)-X*(J*E-C*$)+Z*(J*W-C*F),A[8]=X*(U*H-E*I)-Z*(G*H-W*I)+K*(G*E-W*U),A[9]=-(B*(U*H-E*I)-Z*(Y*H-C*I)+K*(Y*E-C*U)),A[10]=B*(G*H-W*I)-X*(Y*H-C*I)+K*(Y*W-C*G),A[11]=-(B*(G*E-W*U)-X*(Y*E-C*U)+Z*(Y*W-C*G)),A[12]=-(X*(U*V-$*I)-Z*(G*V-F*I)+K*(G*$-F*U)),A[13]=B*(U*V-$*I)-Z*(Y*V-J*I)+K*(Y*$-J*U),A[14]=-(B*(G*V-F*I)-X*(Y*V-J*I)+K*(Y*F-J*G)),A[15]=B*(G*$-F*U)-X*(Y*$-J*U)+Z*(Y*F-J*G),A}function Ud0(A){var Q=A[0],B=A[1],Y=A[2],J=A[3],C=A[4],X=A[5],G=A[6],F=A[7],W=A[8],Z=A[9],U=A[10],$=A[11],E=A[12],K=A[13],I=A[14],V=A[15],H=Q*X-B*C,D=Q*G-Y*C,L=Q*F-J*C,z=B*G-Y*X,M=B*F-J*X,N=Y*F-J*G,q=W*K-Z*E,w=W*I-U*E,P=W*V-$*E,_=Z*I-U*K,O=Z*V-$*K,k=U*V-$*I;return H*k-D*O+L*_+z*P-M*w+N*q}function _TQ(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],F=Q[5],W=Q[6],Z=Q[7],U=Q[8],$=Q[9],E=Q[10],K=Q[11],I=Q[12],V=Q[13],H=Q[14],D=Q[15],L=B[0],z=B[1],M=B[2],N=B[3];return A[0]=L*Y+z*G+M*U+N*I,A[1]=L*J+z*F+M*$+N*V,A[2]=L*C+z*W+M*E+N*H,A[3]=L*X+z*Z+M*K+N*D,L=B[4],z=B[5],M=B[6],N=B[7],A[4]=L*Y+z*G+M*U+N*I,A[5]=L*J+z*F+M*$+N*V,A[6]=L*C+z*W+M*E+N*H,A[7]=L*X+z*Z+M*K+N*D,L=B[8],z=B[9],M=B[10],N=B[11],A[8]=L*Y+z*G+M*U+N*I,A[9]=L*J+z*F+M*$+N*V,A[10]=L*C+z*W+M*E+N*H,A[11]=L*X+z*Z+M*K+N*D,L=B[12],z=B[13],M=B[14],N=B[15],A[12]=L*Y+z*G+M*U+N*I,A[13]=L*J+z*F+M*$+N*V,A[14]=L*C+z*W+M*E+N*H,A[15]=L*X+z*Z+M*K+N*D,A}function Ed0(A,Q,B){var Y=B[0],J=B[1],C=B[2],X,G,F,W,Z,U,$,E,K,I,V,H;if(Q===A)A[12]=Q[0]*Y+Q[4]*J+Q[8]*C+Q[12],A[13]=Q[1]*Y+Q[5]*J+Q[9]*C+Q[13],A[14]=Q[2]*Y+Q[6]*J+Q[10]*C+Q[14],A[15]=Q[3]*Y+Q[7]*J+Q[11]*C+Q[15];else X=Q[0],G=Q[1],F=Q[2],W=Q[3],Z=Q[4],U=Q[5],$=Q[6],E=Q[7],K=Q[8],I=Q[9],V=Q[10],H=Q[11],A[0]=X,A[1]=G,A[2]=F,A[3]=W,A[4]=Z,A[5]=U,A[6]=$,A[7]=E,A[8]=K,A[9]=I,A[10]=V,A[11]=H,A[12]=X*Y+Z*J+K*C+Q[12],A[13]=G*Y+U*J+I*C+Q[13],A[14]=F*Y+$*J+V*C+Q[14],A[15]=W*Y+E*J+H*C+Q[15];return A}function Kd0(A,Q,B){var Y=B[0],J=B[1],C=B[2];return A[0]=Q[0]*Y,A[1]=Q[1]*Y,A[2]=Q[2]*Y,A[3]=Q[3]*Y,A[4]=Q[4]*J,A[5]=Q[5]*J,A[6]=Q[6]*J,A[7]=Q[7]*J,A[8]=Q[8]*C,A[9]=Q[9]*C,A[10]=Q[10]*C,A[11]=Q[11]*C,A[12]=Q[12],A[13]=Q[13],A[14]=Q[14],A[15]=Q[15],A}function Vd0(A,Q,B,Y){var J=Y[0],C=Y[1],X=Y[2],G=Math.hypot(J,C,X),F,W,Z,U,$,E,K,I,V,H,D,L,z,M,N,q,w,P,_,O,k,T,S,v;if(G0)B[0]=(G*X+Z*Y+F*C-W*J)*2/U,B[1]=(F*X+Z*J+W*Y-G*C)*2/U,B[2]=(W*X+Z*C+G*J-F*Y)*2/U;else B[0]=(G*X+Z*Y+F*C-W*J)*2,B[1]=(F*X+Z*J+W*Y-G*C)*2,B[2]=(W*X+Z*C+G*J-F*Y)*2;return vTQ(A,Q,B),A}function jd0(A,Q){return A[0]=Q[12],A[1]=Q[13],A[2]=Q[14],A}function yTQ(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[4],X=Q[5],G=Q[6],F=Q[8],W=Q[9],Z=Q[10];return A[0]=Math.hypot(B,Y,J),A[1]=Math.hypot(C,X,G),A[2]=Math.hypot(F,W,Z),A}function Od0(A,Q){var B=new B0.ARRAY_TYPE(3);yTQ(B,Q);var Y=1/B[0],J=1/B[1],C=1/B[2],X=Q[0]*Y,G=Q[1]*J,F=Q[2]*C,W=Q[4]*Y,Z=Q[5]*J,U=Q[6]*C,$=Q[8]*Y,E=Q[9]*J,K=Q[10]*C,I=X+Z+K,V=0;if(I>0)V=Math.sqrt(I+1)*2,A[3]=0.25*V,A[0]=(U-E)/V,A[1]=($-F)/V,A[2]=(G-W)/V;else if(X>Z&&X>K)V=Math.sqrt(1+X-Z-K)*2,A[3]=(U-E)/V,A[0]=0.25*V,A[1]=(G+W)/V,A[2]=($+F)/V;else if(Z>K)V=Math.sqrt(1+Z-X-K)*2,A[3]=($-F)/V,A[0]=(G+W)/V,A[1]=0.25*V,A[2]=(U+E)/V;else V=Math.sqrt(1+K-X-Z)*2,A[3]=(G-W)/V,A[0]=($+F)/V,A[1]=(U+E)/V,A[2]=0.25*V;return A}function Pd0(A,Q,B,Y){var J=Q[0],C=Q[1],X=Q[2],G=Q[3],F=J+J,W=C+C,Z=X+X,U=J*F,$=J*W,E=J*Z,K=C*W,I=C*Z,V=X*Z,H=G*F,D=G*W,L=G*Z,z=Y[0],M=Y[1],N=Y[2];return A[0]=(1-(K+V))*z,A[1]=($+L)*z,A[2]=(E-D)*z,A[3]=0,A[4]=($-L)*M,A[5]=(1-(U+V))*M,A[6]=(I+H)*M,A[7]=0,A[8]=(E+D)*N,A[9]=(I-H)*N,A[10]=(1-(U+K))*N,A[11]=0,A[12]=B[0],A[13]=B[1],A[14]=B[2],A[15]=1,A}function Td0(A,Q,B,Y,J){var C=Q[0],X=Q[1],G=Q[2],F=Q[3],W=C+C,Z=X+X,U=G+G,$=C*W,E=C*Z,K=C*U,I=X*Z,V=X*U,H=G*U,D=F*W,L=F*Z,z=F*U,M=Y[0],N=Y[1],q=Y[2],w=J[0],P=J[1],_=J[2],O=(1-(I+H))*M,k=(E+z)*M,T=(K-L)*M,S=(E-z)*N,v=(1-($+H))*N,y=(V+D)*N,h=(K+L)*q,g=(V-D)*q,m=(1-($+I))*q;return A[0]=O,A[1]=k,A[2]=T,A[3]=0,A[4]=S,A[5]=v,A[6]=y,A[7]=0,A[8]=h,A[9]=g,A[10]=m,A[11]=0,A[12]=B[0]+w-(O*w+S*P+h*_),A[13]=B[1]+P-(k*w+v*P+g*_),A[14]=B[2]+_-(T*w+y*P+m*_),A[15]=1,A}function Sd0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=B+B,G=Y+Y,F=J+J,W=B*X,Z=Y*X,U=Y*G,$=J*X,E=J*G,K=J*F,I=C*X,V=C*G,H=C*F;return A[0]=1-U-K,A[1]=Z+H,A[2]=$-V,A[3]=0,A[4]=Z-H,A[5]=1-W-K,A[6]=E+I,A[7]=0,A[8]=$+V,A[9]=E-I,A[10]=1-W-U,A[11]=0,A[12]=0,A[13]=0,A[14]=0,A[15]=1,A}function kd0(A,Q,B,Y,J,C,X){var G=1/(B-Q),F=1/(J-Y),W=1/(C-X);return A[0]=C*2*G,A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[5]=C*2*F,A[6]=0,A[7]=0,A[8]=(B+Q)*G,A[9]=(J+Y)*F,A[10]=(X+C)*W,A[11]=-1,A[12]=0,A[13]=0,A[14]=X*C*2*W,A[15]=0,A}function gTQ(A,Q,B,Y,J){var C=1/Math.tan(Q/2),X;if(A[0]=C/B,A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[5]=C,A[6]=0,A[7]=0,A[8]=0,A[9]=0,A[11]=-1,A[12]=0,A[13]=0,A[15]=0,J!=null&&J!==1/0)X=1/(Y-J),A[10]=(J+Y)*X,A[14]=2*J*Y*X;else A[10]=-1,A[14]=-2*Y;return A}var _d0=gTQ;fTQ.perspective=_d0;function vd0(A,Q,B,Y,J){var C=1/Math.tan(Q/2),X;if(A[0]=C/B,A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[5]=C,A[6]=0,A[7]=0,A[8]=0,A[9]=0,A[11]=-1,A[12]=0,A[13]=0,A[15]=0,J!=null&&J!==1/0)X=1/(Y-J),A[10]=J*X,A[14]=J*Y*X;else A[10]=-1,A[14]=-Y;return A}function yd0(A,Q,B,Y){var J=Math.tan(Q.upDegrees*Math.PI/180),C=Math.tan(Q.downDegrees*Math.PI/180),X=Math.tan(Q.leftDegrees*Math.PI/180),G=Math.tan(Q.rightDegrees*Math.PI/180),F=2/(X+G),W=2/(J+C);return A[0]=F,A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[5]=W,A[6]=0,A[7]=0,A[8]=-((X-G)*F*0.5),A[9]=(J-C)*W*0.5,A[10]=Y/(B-Y),A[11]=-1,A[12]=0,A[13]=0,A[14]=Y*B/(B-Y),A[15]=0,A}function hTQ(A,Q,B,Y,J,C,X){var G=1/(Q-B),F=1/(Y-J),W=1/(C-X);return A[0]=-2*G,A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[5]=-2*F,A[6]=0,A[7]=0,A[8]=0,A[9]=0,A[10]=2*W,A[11]=0,A[12]=(Q+B)*G,A[13]=(J+Y)*F,A[14]=(X+C)*W,A[15]=1,A}var gd0=hTQ;fTQ.ortho=gd0;function hd0(A,Q,B,Y,J,C,X){var G=1/(Q-B),F=1/(Y-J),W=1/(C-X);return A[0]=-2*G,A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[5]=-2*F,A[6]=0,A[7]=0,A[8]=0,A[9]=0,A[10]=W,A[11]=0,A[12]=(Q+B)*G,A[13]=(J+Y)*F,A[14]=C*W,A[15]=1,A}function xd0(A,Q,B,Y){var J,C,X,G,F,W,Z,U,$,E,K=Q[0],I=Q[1],V=Q[2],H=Y[0],D=Y[1],L=Y[2],z=B[0],M=B[1],N=B[2];if(Math.abs(K-z)0)E=1/Math.sqrt(E),Z*=E,U*=E,$*=E;var K=F*$-W*U,I=W*Z-G*$,V=G*U-F*Z;if(E=K*K+I*I+V*V,E>0)E=1/Math.sqrt(E),K*=E,I*=E,V*=E;return A[0]=K,A[1]=I,A[2]=V,A[3]=0,A[4]=U*V-$*I,A[5]=$*K-Z*V,A[6]=Z*I-U*K,A[7]=0,A[8]=Z,A[9]=U,A[10]=$,A[11]=0,A[12]=J,A[13]=C,A[14]=X,A[15]=1,A}function bd0(A){return"mat4("+A[0]+", "+A[1]+", "+A[2]+", "+A[3]+", "+A[4]+", "+A[5]+", "+A[6]+", "+A[7]+", "+A[8]+", "+A[9]+", "+A[10]+", "+A[11]+", "+A[12]+", "+A[13]+", "+A[14]+", "+A[15]+")"}function md0(A){return Math.hypot(A[0],A[1],A[2],A[3],A[4],A[5],A[6],A[7],A[8],A[9],A[10],A[11],A[12],A[13],A[14],A[15])}function ud0(A,Q,B){return A[0]=Q[0]+B[0],A[1]=Q[1]+B[1],A[2]=Q[2]+B[2],A[3]=Q[3]+B[3],A[4]=Q[4]+B[4],A[5]=Q[5]+B[5],A[6]=Q[6]+B[6],A[7]=Q[7]+B[7],A[8]=Q[8]+B[8],A[9]=Q[9]+B[9],A[10]=Q[10]+B[10],A[11]=Q[11]+B[11],A[12]=Q[12]+B[12],A[13]=Q[13]+B[13],A[14]=Q[14]+B[14],A[15]=Q[15]+B[15],A}function xTQ(A,Q,B){return A[0]=Q[0]-B[0],A[1]=Q[1]-B[1],A[2]=Q[2]-B[2],A[3]=Q[3]-B[3],A[4]=Q[4]-B[4],A[5]=Q[5]-B[5],A[6]=Q[6]-B[6],A[7]=Q[7]-B[7],A[8]=Q[8]-B[8],A[9]=Q[9]-B[9],A[10]=Q[10]-B[10],A[11]=Q[11]-B[11],A[12]=Q[12]-B[12],A[13]=Q[13]-B[13],A[14]=Q[14]-B[14],A[15]=Q[15]-B[15],A}function dd0(A,Q,B){return A[0]=Q[0]*B,A[1]=Q[1]*B,A[2]=Q[2]*B,A[3]=Q[3]*B,A[4]=Q[4]*B,A[5]=Q[5]*B,A[6]=Q[6]*B,A[7]=Q[7]*B,A[8]=Q[8]*B,A[9]=Q[9]*B,A[10]=Q[10]*B,A[11]=Q[11]*B,A[12]=Q[12]*B,A[13]=Q[13]*B,A[14]=Q[14]*B,A[15]=Q[15]*B,A}function cd0(A,Q,B,Y){return A[0]=Q[0]+B[0]*Y,A[1]=Q[1]+B[1]*Y,A[2]=Q[2]+B[2]*Y,A[3]=Q[3]+B[3]*Y,A[4]=Q[4]+B[4]*Y,A[5]=Q[5]+B[5]*Y,A[6]=Q[6]+B[6]*Y,A[7]=Q[7]+B[7]*Y,A[8]=Q[8]+B[8]*Y,A[9]=Q[9]+B[9]*Y,A[10]=Q[10]+B[10]*Y,A[11]=Q[11]+B[11]*Y,A[12]=Q[12]+B[12]*Y,A[13]=Q[13]+B[13]*Y,A[14]=Q[14]+B[14]*Y,A[15]=Q[15]+B[15]*Y,A}function ld0(A,Q){return A[0]===Q[0]&&A[1]===Q[1]&&A[2]===Q[2]&&A[3]===Q[3]&&A[4]===Q[4]&&A[5]===Q[5]&&A[6]===Q[6]&&A[7]===Q[7]&&A[8]===Q[8]&&A[9]===Q[9]&&A[10]===Q[10]&&A[11]===Q[11]&&A[12]===Q[12]&&A[13]===Q[13]&&A[14]===Q[14]&&A[15]===Q[15]}function pd0(A,Q){var B=A[0],Y=A[1],J=A[2],C=A[3],X=A[4],G=A[5],F=A[6],W=A[7],Z=A[8],U=A[9],$=A[10],E=A[11],K=A[12],I=A[13],V=A[14],H=A[15],D=Q[0],L=Q[1],z=Q[2],M=Q[3],N=Q[4],q=Q[5],w=Q[6],P=Q[7],_=Q[8],O=Q[9],k=Q[10],T=Q[11],S=Q[12],v=Q[13],y=Q[14],h=Q[15];return Math.abs(B-D)<=B0.EPSILON*Math.max(1,Math.abs(B),Math.abs(D))&&Math.abs(Y-L)<=B0.EPSILON*Math.max(1,Math.abs(Y),Math.abs(L))&&Math.abs(J-z)<=B0.EPSILON*Math.max(1,Math.abs(J),Math.abs(z))&&Math.abs(C-M)<=B0.EPSILON*Math.max(1,Math.abs(C),Math.abs(M))&&Math.abs(X-N)<=B0.EPSILON*Math.max(1,Math.abs(X),Math.abs(N))&&Math.abs(G-q)<=B0.EPSILON*Math.max(1,Math.abs(G),Math.abs(q))&&Math.abs(F-w)<=B0.EPSILON*Math.max(1,Math.abs(F),Math.abs(w))&&Math.abs(W-P)<=B0.EPSILON*Math.max(1,Math.abs(W),Math.abs(P))&&Math.abs(Z-_)<=B0.EPSILON*Math.max(1,Math.abs(Z),Math.abs(_))&&Math.abs(U-O)<=B0.EPSILON*Math.max(1,Math.abs(U),Math.abs(O))&&Math.abs($-k)<=B0.EPSILON*Math.max(1,Math.abs($),Math.abs(k))&&Math.abs(E-T)<=B0.EPSILON*Math.max(1,Math.abs(E),Math.abs(T))&&Math.abs(K-S)<=B0.EPSILON*Math.max(1,Math.abs(K),Math.abs(S))&&Math.abs(I-v)<=B0.EPSILON*Math.max(1,Math.abs(I),Math.abs(v))&&Math.abs(V-y)<=B0.EPSILON*Math.max(1,Math.abs(V),Math.abs(y))&&Math.abs(H-h)<=B0.EPSILON*Math.max(1,Math.abs(H),Math.abs(h))}var id0=_TQ;fTQ.mul=id0;var nd0=xTQ;fTQ.sub=nd0});var Mo=R((aTQ)=>{function Dk(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")Dk=function(B){return typeof B};else Dk=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return Dk(A)}Object.defineProperty(aTQ,"__esModule",{value:!0});aTQ.create=uTQ;aTQ.clone=pc0;aTQ.length=dTQ;aTQ.fromValues=ic0;aTQ.copy=nc0;aTQ.set=sc0;aTQ.add=rc0;aTQ.subtract=cTQ;aTQ.multiply=lTQ;aTQ.divide=pTQ;aTQ.ceil=ac0;aTQ.floor=oc0;aTQ.min=tc0;aTQ.max=ec0;aTQ.round=Al0;aTQ.scale=Ql0;aTQ.scaleAndAdd=Bl0;aTQ.distance=iTQ;aTQ.squaredDistance=nTQ;aTQ.squaredLength=sTQ;aTQ.negate=Yl0;aTQ.inverse=Jl0;aTQ.normalize=Cl0;aTQ.dot=rTQ;aTQ.cross=Xl0;aTQ.lerp=Gl0;aTQ.hermite=Fl0;aTQ.bezier=Wl0;aTQ.random=Zl0;aTQ.transformMat4=$l0;aTQ.transformMat3=Ul0;aTQ.transformQuat=El0;aTQ.rotateX=Kl0;aTQ.rotateY=Vl0;aTQ.rotateZ=Il0;aTQ.angle=Hl0;aTQ.zero=Dl0;aTQ.str=Nl0;aTQ.exactEquals=Ll0;aTQ.equals=ql0;aTQ.forEach=aTQ.sqrLen=aTQ.len=aTQ.sqrDist=aTQ.dist=aTQ.div=aTQ.mul=aTQ.sub=void 0;var y6=lc0(U1());function mTQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(mTQ=function(J){return J?B:Q})(A)}function lc0(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||Dk(A)!=="object"&&typeof A!=="function")return{default:A};var B=mTQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function uTQ(){var A=new y6.ARRAY_TYPE(3);if(y6.ARRAY_TYPE!=Float32Array)A[0]=0,A[1]=0,A[2]=0;return A}function pc0(A){var Q=new y6.ARRAY_TYPE(3);return Q[0]=A[0],Q[1]=A[1],Q[2]=A[2],Q}function dTQ(A){var Q=A[0],B=A[1],Y=A[2];return Math.hypot(Q,B,Y)}function ic0(A,Q,B){var Y=new y6.ARRAY_TYPE(3);return Y[0]=A,Y[1]=Q,Y[2]=B,Y}function nc0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A}function sc0(A,Q,B,Y){return A[0]=Q,A[1]=B,A[2]=Y,A}function rc0(A,Q,B){return A[0]=Q[0]+B[0],A[1]=Q[1]+B[1],A[2]=Q[2]+B[2],A}function cTQ(A,Q,B){return A[0]=Q[0]-B[0],A[1]=Q[1]-B[1],A[2]=Q[2]-B[2],A}function lTQ(A,Q,B){return A[0]=Q[0]*B[0],A[1]=Q[1]*B[1],A[2]=Q[2]*B[2],A}function pTQ(A,Q,B){return A[0]=Q[0]/B[0],A[1]=Q[1]/B[1],A[2]=Q[2]/B[2],A}function ac0(A,Q){return A[0]=Math.ceil(Q[0]),A[1]=Math.ceil(Q[1]),A[2]=Math.ceil(Q[2]),A}function oc0(A,Q){return A[0]=Math.floor(Q[0]),A[1]=Math.floor(Q[1]),A[2]=Math.floor(Q[2]),A}function tc0(A,Q,B){return A[0]=Math.min(Q[0],B[0]),A[1]=Math.min(Q[1],B[1]),A[2]=Math.min(Q[2],B[2]),A}function ec0(A,Q,B){return A[0]=Math.max(Q[0],B[0]),A[1]=Math.max(Q[1],B[1]),A[2]=Math.max(Q[2],B[2]),A}function Al0(A,Q){return A[0]=Math.round(Q[0]),A[1]=Math.round(Q[1]),A[2]=Math.round(Q[2]),A}function Ql0(A,Q,B){return A[0]=Q[0]*B,A[1]=Q[1]*B,A[2]=Q[2]*B,A}function Bl0(A,Q,B,Y){return A[0]=Q[0]+B[0]*Y,A[1]=Q[1]+B[1]*Y,A[2]=Q[2]+B[2]*Y,A}function iTQ(A,Q){var B=Q[0]-A[0],Y=Q[1]-A[1],J=Q[2]-A[2];return Math.hypot(B,Y,J)}function nTQ(A,Q){var B=Q[0]-A[0],Y=Q[1]-A[1],J=Q[2]-A[2];return B*B+Y*Y+J*J}function sTQ(A){var Q=A[0],B=A[1],Y=A[2];return Q*Q+B*B+Y*Y}function Yl0(A,Q){return A[0]=-Q[0],A[1]=-Q[1],A[2]=-Q[2],A}function Jl0(A,Q){return A[0]=1/Q[0],A[1]=1/Q[1],A[2]=1/Q[2],A}function Cl0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=B*B+Y*Y+J*J;if(C>0)C=1/Math.sqrt(C);return A[0]=Q[0]*C,A[1]=Q[1]*C,A[2]=Q[2]*C,A}function rTQ(A,Q){return A[0]*Q[0]+A[1]*Q[1]+A[2]*Q[2]}function Xl0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=B[0],G=B[1],F=B[2];return A[0]=J*F-C*G,A[1]=C*X-Y*F,A[2]=Y*G-J*X,A}function Gl0(A,Q,B,Y){var J=Q[0],C=Q[1],X=Q[2];return A[0]=J+Y*(B[0]-J),A[1]=C+Y*(B[1]-C),A[2]=X+Y*(B[2]-X),A}function Fl0(A,Q,B,Y,J,C){var X=C*C,G=X*(2*C-3)+1,F=X*(C-2)+C,W=X*(C-1),Z=X*(3-2*C);return A[0]=Q[0]*G+B[0]*F+Y[0]*W+J[0]*Z,A[1]=Q[1]*G+B[1]*F+Y[1]*W+J[1]*Z,A[2]=Q[2]*G+B[2]*F+Y[2]*W+J[2]*Z,A}function Wl0(A,Q,B,Y,J,C){var X=1-C,G=X*X,F=C*C,W=G*X,Z=3*C*G,U=3*F*X,$=F*C;return A[0]=Q[0]*W+B[0]*Z+Y[0]*U+J[0]*$,A[1]=Q[1]*W+B[1]*Z+Y[1]*U+J[1]*$,A[2]=Q[2]*W+B[2]*Z+Y[2]*U+J[2]*$,A}function Zl0(A,Q){Q=Q||1;var B=y6.RANDOM()*2*Math.PI,Y=y6.RANDOM()*2-1,J=Math.sqrt(1-Y*Y)*Q;return A[0]=Math.cos(B)*J,A[1]=Math.sin(B)*J,A[2]=Y*Q,A}function $l0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=B[3]*Y+B[7]*J+B[11]*C+B[15];return X=X||1,A[0]=(B[0]*Y+B[4]*J+B[8]*C+B[12])/X,A[1]=(B[1]*Y+B[5]*J+B[9]*C+B[13])/X,A[2]=(B[2]*Y+B[6]*J+B[10]*C+B[14])/X,A}function Ul0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2];return A[0]=Y*B[0]+J*B[3]+C*B[6],A[1]=Y*B[1]+J*B[4]+C*B[7],A[2]=Y*B[2]+J*B[5]+C*B[8],A}function El0(A,Q,B){var Y=B[0],J=B[1],C=B[2],X=B[3],G=Q[0],F=Q[1],W=Q[2],Z=J*W-C*F,U=C*G-Y*W,$=Y*F-J*G,E=J*$-C*U,K=C*Z-Y*$,I=Y*U-J*Z,V=X*2;return Z*=V,U*=V,$*=V,E*=2,K*=2,I*=2,A[0]=G+Z+E,A[1]=F+U+K,A[2]=W+$+I,A}function Kl0(A,Q,B,Y){var J=[],C=[];return J[0]=Q[0]-B[0],J[1]=Q[1]-B[1],J[2]=Q[2]-B[2],C[0]=J[0],C[1]=J[1]*Math.cos(Y)-J[2]*Math.sin(Y),C[2]=J[1]*Math.sin(Y)+J[2]*Math.cos(Y),A[0]=C[0]+B[0],A[1]=C[1]+B[1],A[2]=C[2]+B[2],A}function Vl0(A,Q,B,Y){var J=[],C=[];return J[0]=Q[0]-B[0],J[1]=Q[1]-B[1],J[2]=Q[2]-B[2],C[0]=J[2]*Math.sin(Y)+J[0]*Math.cos(Y),C[1]=J[1],C[2]=J[2]*Math.cos(Y)-J[0]*Math.sin(Y),A[0]=C[0]+B[0],A[1]=C[1]+B[1],A[2]=C[2]+B[2],A}function Il0(A,Q,B,Y){var J=[],C=[];return J[0]=Q[0]-B[0],J[1]=Q[1]-B[1],J[2]=Q[2]-B[2],C[0]=J[0]*Math.cos(Y)-J[1]*Math.sin(Y),C[1]=J[0]*Math.sin(Y)+J[1]*Math.cos(Y),C[2]=J[2],A[0]=C[0]+B[0],A[1]=C[1]+B[1],A[2]=C[2]+B[2],A}function Hl0(A,Q){var B=A[0],Y=A[1],J=A[2],C=Q[0],X=Q[1],G=Q[2],F=Math.sqrt(B*B+Y*Y+J*J),W=Math.sqrt(C*C+X*X+G*G),Z=F*W,U=Z&&rTQ(A,Q)/Z;return Math.acos(Math.min(Math.max(U,-1),1))}function Dl0(A){return A[0]=0,A[1]=0,A[2]=0,A}function Nl0(A){return"vec3("+A[0]+", "+A[1]+", "+A[2]+")"}function Ll0(A,Q){return A[0]===Q[0]&&A[1]===Q[1]&&A[2]===Q[2]}function ql0(A,Q){var B=A[0],Y=A[1],J=A[2],C=Q[0],X=Q[1],G=Q[2];return Math.abs(B-C)<=y6.EPSILON*Math.max(1,Math.abs(B),Math.abs(C))&&Math.abs(Y-X)<=y6.EPSILON*Math.max(1,Math.abs(Y),Math.abs(X))&&Math.abs(J-G)<=y6.EPSILON*Math.max(1,Math.abs(J),Math.abs(G))}var Ml0=cTQ;aTQ.sub=Ml0;var zl0=lTQ;aTQ.mul=zl0;var Rl0=pTQ;aTQ.div=Rl0;var wl0=iTQ;aTQ.dist=wl0;var jl0=nTQ;aTQ.sqrDist=jl0;var Ol0=dTQ;aTQ.len=Ol0;var Pl0=sTQ;aTQ.sqrLen=Pl0;var Tl0=function(){var A=uTQ();return function(Q,B,Y,J,C,X){var G,F;if(!B)B=3;if(!Y)Y=0;if(J)F=Math.min(J*B+Y,Q.length);else F=Q.length;for(G=Y;G{function Nk(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")Nk=function(B){return typeof B};else Nk=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return Nk(A)}Object.defineProperty(GSQ,"__esModule",{value:!0});GSQ.create=eTQ;GSQ.clone=Rp0;GSQ.fromValues=wp0;GSQ.copy=jp0;GSQ.set=Op0;GSQ.add=Pp0;GSQ.subtract=ASQ;GSQ.multiply=QSQ;GSQ.divide=BSQ;GSQ.ceil=Tp0;GSQ.floor=Sp0;GSQ.min=kp0;GSQ.max=_p0;GSQ.round=vp0;GSQ.scale=yp0;GSQ.scaleAndAdd=gp0;GSQ.distance=YSQ;GSQ.squaredDistance=JSQ;GSQ.length=CSQ;GSQ.squaredLength=XSQ;GSQ.negate=hp0;GSQ.inverse=xp0;GSQ.normalize=fp0;GSQ.dot=bp0;GSQ.cross=mp0;GSQ.lerp=up0;GSQ.random=dp0;GSQ.transformMat4=cp0;GSQ.transformQuat=lp0;GSQ.zero=pp0;GSQ.str=ip0;GSQ.exactEquals=np0;GSQ.equals=sp0;GSQ.forEach=GSQ.sqrLen=GSQ.len=GSQ.sqrDist=GSQ.dist=GSQ.div=GSQ.mul=GSQ.sub=void 0;var JC=zp0(U1());function tTQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(tTQ=function(J){return J?B:Q})(A)}function zp0(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||Nk(A)!=="object"&&typeof A!=="function")return{default:A};var B=tTQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function eTQ(){var A=new JC.ARRAY_TYPE(4);if(JC.ARRAY_TYPE!=Float32Array)A[0]=0,A[1]=0,A[2]=0,A[3]=0;return A}function Rp0(A){var Q=new JC.ARRAY_TYPE(4);return Q[0]=A[0],Q[1]=A[1],Q[2]=A[2],Q[3]=A[3],Q}function wp0(A,Q,B,Y){var J=new JC.ARRAY_TYPE(4);return J[0]=A,J[1]=Q,J[2]=B,J[3]=Y,J}function jp0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A[3]=Q[3],A}function Op0(A,Q,B,Y,J){return A[0]=Q,A[1]=B,A[2]=Y,A[3]=J,A}function Pp0(A,Q,B){return A[0]=Q[0]+B[0],A[1]=Q[1]+B[1],A[2]=Q[2]+B[2],A[3]=Q[3]+B[3],A}function ASQ(A,Q,B){return A[0]=Q[0]-B[0],A[1]=Q[1]-B[1],A[2]=Q[2]-B[2],A[3]=Q[3]-B[3],A}function QSQ(A,Q,B){return A[0]=Q[0]*B[0],A[1]=Q[1]*B[1],A[2]=Q[2]*B[2],A[3]=Q[3]*B[3],A}function BSQ(A,Q,B){return A[0]=Q[0]/B[0],A[1]=Q[1]/B[1],A[2]=Q[2]/B[2],A[3]=Q[3]/B[3],A}function Tp0(A,Q){return A[0]=Math.ceil(Q[0]),A[1]=Math.ceil(Q[1]),A[2]=Math.ceil(Q[2]),A[3]=Math.ceil(Q[3]),A}function Sp0(A,Q){return A[0]=Math.floor(Q[0]),A[1]=Math.floor(Q[1]),A[2]=Math.floor(Q[2]),A[3]=Math.floor(Q[3]),A}function kp0(A,Q,B){return A[0]=Math.min(Q[0],B[0]),A[1]=Math.min(Q[1],B[1]),A[2]=Math.min(Q[2],B[2]),A[3]=Math.min(Q[3],B[3]),A}function _p0(A,Q,B){return A[0]=Math.max(Q[0],B[0]),A[1]=Math.max(Q[1],B[1]),A[2]=Math.max(Q[2],B[2]),A[3]=Math.max(Q[3],B[3]),A}function vp0(A,Q){return A[0]=Math.round(Q[0]),A[1]=Math.round(Q[1]),A[2]=Math.round(Q[2]),A[3]=Math.round(Q[3]),A}function yp0(A,Q,B){return A[0]=Q[0]*B,A[1]=Q[1]*B,A[2]=Q[2]*B,A[3]=Q[3]*B,A}function gp0(A,Q,B,Y){return A[0]=Q[0]+B[0]*Y,A[1]=Q[1]+B[1]*Y,A[2]=Q[2]+B[2]*Y,A[3]=Q[3]+B[3]*Y,A}function YSQ(A,Q){var B=Q[0]-A[0],Y=Q[1]-A[1],J=Q[2]-A[2],C=Q[3]-A[3];return Math.hypot(B,Y,J,C)}function JSQ(A,Q){var B=Q[0]-A[0],Y=Q[1]-A[1],J=Q[2]-A[2],C=Q[3]-A[3];return B*B+Y*Y+J*J+C*C}function CSQ(A){var Q=A[0],B=A[1],Y=A[2],J=A[3];return Math.hypot(Q,B,Y,J)}function XSQ(A){var Q=A[0],B=A[1],Y=A[2],J=A[3];return Q*Q+B*B+Y*Y+J*J}function hp0(A,Q){return A[0]=-Q[0],A[1]=-Q[1],A[2]=-Q[2],A[3]=-Q[3],A}function xp0(A,Q){return A[0]=1/Q[0],A[1]=1/Q[1],A[2]=1/Q[2],A[3]=1/Q[3],A}function fp0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=B*B+Y*Y+J*J+C*C;if(X>0)X=1/Math.sqrt(X);return A[0]=B*X,A[1]=Y*X,A[2]=J*X,A[3]=C*X,A}function bp0(A,Q){return A[0]*Q[0]+A[1]*Q[1]+A[2]*Q[2]+A[3]*Q[3]}function mp0(A,Q,B,Y){var J=B[0]*Y[1]-B[1]*Y[0],C=B[0]*Y[2]-B[2]*Y[0],X=B[0]*Y[3]-B[3]*Y[0],G=B[1]*Y[2]-B[2]*Y[1],F=B[1]*Y[3]-B[3]*Y[1],W=B[2]*Y[3]-B[3]*Y[2],Z=Q[0],U=Q[1],$=Q[2],E=Q[3];return A[0]=U*W-$*F+E*G,A[1]=-(Z*W)+$*X-E*C,A[2]=Z*F-U*X+E*J,A[3]=-(Z*G)+U*C-$*J,A}function up0(A,Q,B,Y){var J=Q[0],C=Q[1],X=Q[2],G=Q[3];return A[0]=J+Y*(B[0]-J),A[1]=C+Y*(B[1]-C),A[2]=X+Y*(B[2]-X),A[3]=G+Y*(B[3]-G),A}function dp0(A,Q){Q=Q||1;var B,Y,J,C,X,G;do B=JC.RANDOM()*2-1,Y=JC.RANDOM()*2-1,X=B*B+Y*Y;while(X>=1);do J=JC.RANDOM()*2-1,C=JC.RANDOM()*2-1,G=J*J+C*C;while(G>=1);var F=Math.sqrt((1-X)/G);return A[0]=Q*B,A[1]=Q*Y,A[2]=Q*J*F,A[3]=Q*C*F,A}function cp0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3];return A[0]=B[0]*Y+B[4]*J+B[8]*C+B[12]*X,A[1]=B[1]*Y+B[5]*J+B[9]*C+B[13]*X,A[2]=B[2]*Y+B[6]*J+B[10]*C+B[14]*X,A[3]=B[3]*Y+B[7]*J+B[11]*C+B[15]*X,A}function lp0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=B[0],G=B[1],F=B[2],W=B[3],Z=W*Y+G*C-F*J,U=W*J+F*Y-X*C,$=W*C+X*J-G*Y,E=-X*Y-G*J-F*C;return A[0]=Z*W+E*-X+U*-F-$*-G,A[1]=U*W+E*-G+$*-X-Z*-F,A[2]=$*W+E*-F+Z*-G-U*-X,A[3]=Q[3],A}function pp0(A){return A[0]=0,A[1]=0,A[2]=0,A[3]=0,A}function ip0(A){return"vec4("+A[0]+", "+A[1]+", "+A[2]+", "+A[3]+")"}function np0(A,Q){return A[0]===Q[0]&&A[1]===Q[1]&&A[2]===Q[2]&&A[3]===Q[3]}function sp0(A,Q){var B=A[0],Y=A[1],J=A[2],C=A[3],X=Q[0],G=Q[1],F=Q[2],W=Q[3];return Math.abs(B-X)<=JC.EPSILON*Math.max(1,Math.abs(B),Math.abs(X))&&Math.abs(Y-G)<=JC.EPSILON*Math.max(1,Math.abs(Y),Math.abs(G))&&Math.abs(J-F)<=JC.EPSILON*Math.max(1,Math.abs(J),Math.abs(F))&&Math.abs(C-W)<=JC.EPSILON*Math.max(1,Math.abs(C),Math.abs(W))}var rp0=ASQ;GSQ.sub=rp0;var ap0=QSQ;GSQ.mul=ap0;var op0=BSQ;GSQ.div=op0;var tp0=YSQ;GSQ.dist=tp0;var ep0=JSQ;GSQ.sqrDist=ep0;var Ai0=CSQ;GSQ.len=Ai0;var Qi0=XSQ;GSQ.sqrLen=Qi0;var Bi0=function(){var A=eTQ();return function(Q,B,Y,J,C,X){var G,F;if(!B)B=4;if(!Y)Y=0;if(J)F=Math.min(J*B+Y,Q.length);else F=Q.length;for(G=Y;G{function Lk(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")Lk=function(B){return typeof B};else Lk=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return Lk(A)}Object.defineProperty(NSQ,"__esModule",{value:!0});NSQ.create=Ro;NSQ.identity=li0;NSQ.setAxisAngle=ZSQ;NSQ.getAxisAngle=pi0;NSQ.getAngle=ii0;NSQ.multiply=$SQ;NSQ.rotateX=ni0;NSQ.rotateY=si0;NSQ.rotateZ=ri0;NSQ.calculateW=ai0;NSQ.exp=USQ;NSQ.ln=ESQ;NSQ.pow=oi0;NSQ.slerp=qk;NSQ.random=ti0;NSQ.invert=ei0;NSQ.conjugate=An0;NSQ.fromMat3=KSQ;NSQ.fromEuler=Qn0;NSQ.str=Bn0;NSQ.setAxes=NSQ.sqlerp=NSQ.rotationTo=NSQ.equals=NSQ.exactEquals=NSQ.normalize=NSQ.sqrLen=NSQ.squaredLength=NSQ.len=NSQ.length=NSQ.lerp=NSQ.dot=NSQ.scale=NSQ.mul=NSQ.add=NSQ.set=NSQ.copy=NSQ.fromValues=NSQ.clone=void 0;var A4=Mk(U1()),ci0=Mk(Lo()),g6=Mk(Mo()),c8=Mk(zo());function WSQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(WSQ=function(J){return J?B:Q})(A)}function Mk(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||Lk(A)!=="object"&&typeof A!=="function")return{default:A};var B=WSQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function Ro(){var A=new A4.ARRAY_TYPE(4);if(A4.ARRAY_TYPE!=Float32Array)A[0]=0,A[1]=0,A[2]=0;return A[3]=1,A}function li0(A){return A[0]=0,A[1]=0,A[2]=0,A[3]=1,A}function ZSQ(A,Q,B){B=B*0.5;var Y=Math.sin(B);return A[0]=Y*Q[0],A[1]=Y*Q[1],A[2]=Y*Q[2],A[3]=Math.cos(B),A}function pi0(A,Q){var B=Math.acos(Q[3])*2,Y=Math.sin(B/2);if(Y>A4.EPSILON)A[0]=Q[0]/Y,A[1]=Q[1]/Y,A[2]=Q[2]/Y;else A[0]=1,A[1]=0,A[2]=0;return B}function ii0(A,Q){var B=ISQ(A,Q);return Math.acos(2*B*B-1)}function $SQ(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=B[0],F=B[1],W=B[2],Z=B[3];return A[0]=Y*Z+X*G+J*W-C*F,A[1]=J*Z+X*F+C*G-Y*W,A[2]=C*Z+X*W+Y*F-J*G,A[3]=X*Z-Y*G-J*F-C*W,A}function ni0(A,Q,B){B*=0.5;var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Math.sin(B),F=Math.cos(B);return A[0]=Y*F+X*G,A[1]=J*F+C*G,A[2]=C*F-J*G,A[3]=X*F-Y*G,A}function si0(A,Q,B){B*=0.5;var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Math.sin(B),F=Math.cos(B);return A[0]=Y*F-C*G,A[1]=J*F+X*G,A[2]=C*F+Y*G,A[3]=X*F-J*G,A}function ri0(A,Q,B){B*=0.5;var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Math.sin(B),F=Math.cos(B);return A[0]=Y*F+J*G,A[1]=J*F-Y*G,A[2]=C*F+X*G,A[3]=X*F-C*G,A}function ai0(A,Q){var B=Q[0],Y=Q[1],J=Q[2];return A[0]=B,A[1]=Y,A[2]=J,A[3]=Math.sqrt(Math.abs(1-B*B-Y*Y-J*J)),A}function USQ(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Math.sqrt(B*B+Y*Y+J*J),G=Math.exp(C),F=X>0?G*Math.sin(X)/X:0;return A[0]=B*F,A[1]=Y*F,A[2]=J*F,A[3]=G*Math.cos(X),A}function ESQ(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Math.sqrt(B*B+Y*Y+J*J),G=X>0?Math.atan2(X,C)/X:0;return A[0]=B*G,A[1]=Y*G,A[2]=J*G,A[3]=0.5*Math.log(B*B+Y*Y+J*J+C*C),A}function oi0(A,Q,B){return ESQ(A,Q),VSQ(A,A,B),USQ(A,A),A}function qk(A,Q,B,Y){var J=Q[0],C=Q[1],X=Q[2],G=Q[3],F=B[0],W=B[1],Z=B[2],U=B[3],$,E,K,I,V;if(E=J*F+C*W+X*Z+G*U,E<0)E=-E,F=-F,W=-W,Z=-Z,U=-U;if(1-E>A4.EPSILON)$=Math.acos(E),K=Math.sin($),I=Math.sin((1-Y)*$)/K,V=Math.sin(Y*$)/K;else I=1-Y,V=Y;return A[0]=I*J+V*F,A[1]=I*C+V*W,A[2]=I*X+V*Z,A[3]=I*G+V*U,A}function ti0(A){var Q=A4.RANDOM(),B=A4.RANDOM(),Y=A4.RANDOM(),J=Math.sqrt(1-Q),C=Math.sqrt(Q);return A[0]=J*Math.sin(2*Math.PI*B),A[1]=J*Math.cos(2*Math.PI*B),A[2]=C*Math.sin(2*Math.PI*Y),A[3]=C*Math.cos(2*Math.PI*Y),A}function ei0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=B*B+Y*Y+J*J+C*C,G=X?1/X:0;return A[0]=-B*G,A[1]=-Y*G,A[2]=-J*G,A[3]=C*G,A}function An0(A,Q){return A[0]=-Q[0],A[1]=-Q[1],A[2]=-Q[2],A[3]=Q[3],A}function KSQ(A,Q){var B=Q[0]+Q[4]+Q[8],Y;if(B>0)Y=Math.sqrt(B+1),A[3]=0.5*Y,Y=0.5/Y,A[0]=(Q[5]-Q[7])*Y,A[1]=(Q[6]-Q[2])*Y,A[2]=(Q[1]-Q[3])*Y;else{var J=0;if(Q[4]>Q[0])J=1;if(Q[8]>Q[J*3+J])J=2;var C=(J+1)%3,X=(J+2)%3;Y=Math.sqrt(Q[J*3+J]-Q[C*3+C]-Q[X*3+X]+1),A[J]=0.5*Y,Y=0.5/Y,A[3]=(Q[C*3+X]-Q[X*3+C])*Y,A[C]=(Q[C*3+J]+Q[J*3+C])*Y,A[X]=(Q[X*3+J]+Q[J*3+X])*Y}return A}function Qn0(A,Q,B,Y){var J=0.5*Math.PI/180;Q*=J,B*=J,Y*=J;var C=Math.sin(Q),X=Math.cos(Q),G=Math.sin(B),F=Math.cos(B),W=Math.sin(Y),Z=Math.cos(Y);return A[0]=C*F*Z-X*G*W,A[1]=X*G*Z+C*F*W,A[2]=X*F*W-C*G*Z,A[3]=X*F*Z+C*G*W,A}function Bn0(A){return"quat("+A[0]+", "+A[1]+", "+A[2]+", "+A[3]+")"}var Yn0=c8.clone;NSQ.clone=Yn0;var Jn0=c8.fromValues;NSQ.fromValues=Jn0;var Cn0=c8.copy;NSQ.copy=Cn0;var Xn0=c8.set;NSQ.set=Xn0;var Gn0=c8.add;NSQ.add=Gn0;var Fn0=$SQ;NSQ.mul=Fn0;var VSQ=c8.scale;NSQ.scale=VSQ;var ISQ=c8.dot;NSQ.dot=ISQ;var Wn0=c8.lerp;NSQ.lerp=Wn0;var HSQ=c8.length;NSQ.length=HSQ;var Zn0=HSQ;NSQ.len=Zn0;var DSQ=c8.squaredLength;NSQ.squaredLength=DSQ;var $n0=DSQ;NSQ.sqrLen=$n0;var wo=c8.normalize;NSQ.normalize=wo;var Un0=c8.exactEquals;NSQ.exactEquals=Un0;var En0=c8.equals;NSQ.equals=En0;var Kn0=function(){var A=g6.create(),Q=g6.fromValues(1,0,0),B=g6.fromValues(0,1,0);return function(Y,J,C){var X=g6.dot(J,C);if(X<-0.999999){if(g6.cross(A,Q,J),g6.len(A)<0.000001)g6.cross(A,B,J);return g6.normalize(A,A),ZSQ(Y,A,Math.PI),Y}else if(X>0.999999)return Y[0]=0,Y[1]=0,Y[2]=0,Y[3]=1,Y;else return g6.cross(A,J,C),Y[0]=A[0],Y[1]=A[1],Y[2]=A[2],Y[3]=1+X,wo(Y,Y)}}();NSQ.rotationTo=Kn0;var Vn0=function(){var A=Ro(),Q=Ro();return function(B,Y,J,C,X,G){return qk(A,Y,X,G),qk(Q,J,C,G),qk(B,A,Q,2*G*(1-G)),B}}();NSQ.sqlerp=Vn0;var In0=function(){var A=ci0.create();return function(Q,B,Y,J){return A[0]=Y[0],A[3]=Y[1],A[6]=Y[2],A[1]=J[0],A[4]=J[1],A[7]=J[2],A[2]=-B[0],A[5]=-B[1],A[8]=-B[2],wo(Q,KSQ(Q,A))}}();NSQ.setAxes=In0});var SSQ=R((PSQ)=>{function zk(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")zk=function(B){return typeof B};else zk=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return zk(A)}Object.defineProperty(PSQ,"__esModule",{value:!0});PSQ.create=Qs0;PSQ.clone=Bs0;PSQ.fromValues=Ys0;PSQ.fromRotationTranslationValues=Js0;PSQ.fromRotationTranslation=zSQ;PSQ.fromTranslation=Cs0;PSQ.fromRotation=Xs0;PSQ.fromMat4=Gs0;PSQ.copy=RSQ;PSQ.identity=Fs0;PSQ.set=Ws0;PSQ.getDual=$s0;PSQ.setDual=Es0;PSQ.getTranslation=Ks0;PSQ.translate=Vs0;PSQ.rotateX=Is0;PSQ.rotateY=Hs0;PSQ.rotateZ=Ds0;PSQ.rotateByQuatAppend=Ns0;PSQ.rotateByQuatPrepend=Ls0;PSQ.rotateAroundAxis=qs0;PSQ.add=Ms0;PSQ.multiply=wSQ;PSQ.scale=Rs0;PSQ.lerp=ws0;PSQ.invert=js0;PSQ.conjugate=Os0;PSQ.normalize=Ss0;PSQ.str=ks0;PSQ.exactEquals=_s0;PSQ.equals=vs0;PSQ.sqrLen=PSQ.squaredLength=PSQ.len=PSQ.length=PSQ.dot=PSQ.mul=PSQ.setReal=PSQ.getReal=void 0;var N9=Oo(U1()),h6=Oo(jo()),qSQ=Oo(qo());function MSQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(MSQ=function(J){return J?B:Q})(A)}function Oo(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||zk(A)!=="object"&&typeof A!=="function")return{default:A};var B=MSQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function Qs0(){var A=new N9.ARRAY_TYPE(8);if(N9.ARRAY_TYPE!=Float32Array)A[0]=0,A[1]=0,A[2]=0,A[4]=0,A[5]=0,A[6]=0,A[7]=0;return A[3]=1,A}function Bs0(A){var Q=new N9.ARRAY_TYPE(8);return Q[0]=A[0],Q[1]=A[1],Q[2]=A[2],Q[3]=A[3],Q[4]=A[4],Q[5]=A[5],Q[6]=A[6],Q[7]=A[7],Q}function Ys0(A,Q,B,Y,J,C,X,G){var F=new N9.ARRAY_TYPE(8);return F[0]=A,F[1]=Q,F[2]=B,F[3]=Y,F[4]=J,F[5]=C,F[6]=X,F[7]=G,F}function Js0(A,Q,B,Y,J,C,X){var G=new N9.ARRAY_TYPE(8);G[0]=A,G[1]=Q,G[2]=B,G[3]=Y;var F=J*0.5,W=C*0.5,Z=X*0.5;return G[4]=F*Y+W*B-Z*Q,G[5]=W*Y+Z*A-F*B,G[6]=Z*Y+F*Q-W*A,G[7]=-F*A-W*Q-Z*B,G}function zSQ(A,Q,B){var Y=B[0]*0.5,J=B[1]*0.5,C=B[2]*0.5,X=Q[0],G=Q[1],F=Q[2],W=Q[3];return A[0]=X,A[1]=G,A[2]=F,A[3]=W,A[4]=Y*W+J*F-C*G,A[5]=J*W+C*X-Y*F,A[6]=C*W+Y*G-J*X,A[7]=-Y*X-J*G-C*F,A}function Cs0(A,Q){return A[0]=0,A[1]=0,A[2]=0,A[3]=1,A[4]=Q[0]*0.5,A[5]=Q[1]*0.5,A[6]=Q[2]*0.5,A[7]=0,A}function Xs0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A[3]=Q[3],A[4]=0,A[5]=0,A[6]=0,A[7]=0,A}function Gs0(A,Q){var B=h6.create();qSQ.getRotation(B,Q);var Y=new N9.ARRAY_TYPE(3);return qSQ.getTranslation(Y,Q),zSQ(A,B,Y),A}function RSQ(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A[3]=Q[3],A[4]=Q[4],A[5]=Q[5],A[6]=Q[6],A[7]=Q[7],A}function Fs0(A){return A[0]=0,A[1]=0,A[2]=0,A[3]=1,A[4]=0,A[5]=0,A[6]=0,A[7]=0,A}function Ws0(A,Q,B,Y,J,C,X,G,F){return A[0]=Q,A[1]=B,A[2]=Y,A[3]=J,A[4]=C,A[5]=X,A[6]=G,A[7]=F,A}var Zs0=h6.copy;PSQ.getReal=Zs0;function $s0(A,Q){return A[0]=Q[4],A[1]=Q[5],A[2]=Q[6],A[3]=Q[7],A}var Us0=h6.copy;PSQ.setReal=Us0;function Es0(A,Q){return A[4]=Q[0],A[5]=Q[1],A[6]=Q[2],A[7]=Q[3],A}function Ks0(A,Q){var B=Q[4],Y=Q[5],J=Q[6],C=Q[7],X=-Q[0],G=-Q[1],F=-Q[2],W=Q[3];return A[0]=(B*W+C*X+Y*F-J*G)*2,A[1]=(Y*W+C*G+J*X-B*F)*2,A[2]=(J*W+C*F+B*G-Y*X)*2,A}function Vs0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=B[0]*0.5,F=B[1]*0.5,W=B[2]*0.5,Z=Q[4],U=Q[5],$=Q[6],E=Q[7];return A[0]=Y,A[1]=J,A[2]=C,A[3]=X,A[4]=X*G+J*W-C*F+Z,A[5]=X*F+C*G-Y*W+U,A[6]=X*W+Y*F-J*G+$,A[7]=-Y*G-J*F-C*W+E,A}function Is0(A,Q,B){var Y=-Q[0],J=-Q[1],C=-Q[2],X=Q[3],G=Q[4],F=Q[5],W=Q[6],Z=Q[7],U=G*X+Z*Y+F*C-W*J,$=F*X+Z*J+W*Y-G*C,E=W*X+Z*C+G*J-F*Y,K=Z*X-G*Y-F*J-W*C;return h6.rotateX(A,Q,B),Y=A[0],J=A[1],C=A[2],X=A[3],A[4]=U*X+K*Y+$*C-E*J,A[5]=$*X+K*J+E*Y-U*C,A[6]=E*X+K*C+U*J-$*Y,A[7]=K*X-U*Y-$*J-E*C,A}function Hs0(A,Q,B){var Y=-Q[0],J=-Q[1],C=-Q[2],X=Q[3],G=Q[4],F=Q[5],W=Q[6],Z=Q[7],U=G*X+Z*Y+F*C-W*J,$=F*X+Z*J+W*Y-G*C,E=W*X+Z*C+G*J-F*Y,K=Z*X-G*Y-F*J-W*C;return h6.rotateY(A,Q,B),Y=A[0],J=A[1],C=A[2],X=A[3],A[4]=U*X+K*Y+$*C-E*J,A[5]=$*X+K*J+E*Y-U*C,A[6]=E*X+K*C+U*J-$*Y,A[7]=K*X-U*Y-$*J-E*C,A}function Ds0(A,Q,B){var Y=-Q[0],J=-Q[1],C=-Q[2],X=Q[3],G=Q[4],F=Q[5],W=Q[6],Z=Q[7],U=G*X+Z*Y+F*C-W*J,$=F*X+Z*J+W*Y-G*C,E=W*X+Z*C+G*J-F*Y,K=Z*X-G*Y-F*J-W*C;return h6.rotateZ(A,Q,B),Y=A[0],J=A[1],C=A[2],X=A[3],A[4]=U*X+K*Y+$*C-E*J,A[5]=$*X+K*J+E*Y-U*C,A[6]=E*X+K*C+U*J-$*Y,A[7]=K*X-U*Y-$*J-E*C,A}function Ns0(A,Q,B){var Y=B[0],J=B[1],C=B[2],X=B[3],G=Q[0],F=Q[1],W=Q[2],Z=Q[3];return A[0]=G*X+Z*Y+F*C-W*J,A[1]=F*X+Z*J+W*Y-G*C,A[2]=W*X+Z*C+G*J-F*Y,A[3]=Z*X-G*Y-F*J-W*C,G=Q[4],F=Q[5],W=Q[6],Z=Q[7],A[4]=G*X+Z*Y+F*C-W*J,A[5]=F*X+Z*J+W*Y-G*C,A[6]=W*X+Z*C+G*J-F*Y,A[7]=Z*X-G*Y-F*J-W*C,A}function Ls0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=B[0],F=B[1],W=B[2],Z=B[3];return A[0]=Y*Z+X*G+J*W-C*F,A[1]=J*Z+X*F+C*G-Y*W,A[2]=C*Z+X*W+Y*F-J*G,A[3]=X*Z-Y*G-J*F-C*W,G=B[4],F=B[5],W=B[6],Z=B[7],A[4]=Y*Z+X*G+J*W-C*F,A[5]=J*Z+X*F+C*G-Y*W,A[6]=C*Z+X*W+Y*F-J*G,A[7]=X*Z-Y*G-J*F-C*W,A}function qs0(A,Q,B,Y){if(Math.abs(Y)0){B=Math.sqrt(B);var Y=Q[0]/B,J=Q[1]/B,C=Q[2]/B,X=Q[3]/B,G=Q[4],F=Q[5],W=Q[6],Z=Q[7],U=Y*G+J*F+C*W+X*Z;A[0]=Y,A[1]=J,A[2]=C,A[3]=X,A[4]=(G-Y*U)/B,A[5]=(F-J*U)/B,A[6]=(W-C*U)/B,A[7]=(Z-X*U)/B}return A}function ks0(A){return"quat2("+A[0]+", "+A[1]+", "+A[2]+", "+A[3]+", "+A[4]+", "+A[5]+", "+A[6]+", "+A[7]+")"}function _s0(A,Q){return A[0]===Q[0]&&A[1]===Q[1]&&A[2]===Q[2]&&A[3]===Q[3]&&A[4]===Q[4]&&A[5]===Q[5]&&A[6]===Q[6]&&A[7]===Q[7]}function vs0(A,Q){var B=A[0],Y=A[1],J=A[2],C=A[3],X=A[4],G=A[5],F=A[6],W=A[7],Z=Q[0],U=Q[1],$=Q[2],E=Q[3],K=Q[4],I=Q[5],V=Q[6],H=Q[7];return Math.abs(B-Z)<=N9.EPSILON*Math.max(1,Math.abs(B),Math.abs(Z))&&Math.abs(Y-U)<=N9.EPSILON*Math.max(1,Math.abs(Y),Math.abs(U))&&Math.abs(J-$)<=N9.EPSILON*Math.max(1,Math.abs(J),Math.abs($))&&Math.abs(C-E)<=N9.EPSILON*Math.max(1,Math.abs(C),Math.abs(E))&&Math.abs(X-K)<=N9.EPSILON*Math.max(1,Math.abs(X),Math.abs(K))&&Math.abs(G-I)<=N9.EPSILON*Math.max(1,Math.abs(G),Math.abs(I))&&Math.abs(F-V)<=N9.EPSILON*Math.max(1,Math.abs(F),Math.abs(V))&&Math.abs(W-H)<=N9.EPSILON*Math.max(1,Math.abs(W),Math.abs(H))}});var dSQ=R((mSQ)=>{function wk(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")wk=function(B){return typeof B};else wk=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return wk(A)}Object.defineProperty(mSQ,"__esModule",{value:!0});mSQ.create=_SQ;mSQ.clone=Nr0;mSQ.fromValues=Lr0;mSQ.copy=qr0;mSQ.set=Mr0;mSQ.add=zr0;mSQ.subtract=vSQ;mSQ.multiply=ySQ;mSQ.divide=gSQ;mSQ.ceil=Rr0;mSQ.floor=wr0;mSQ.min=jr0;mSQ.max=Or0;mSQ.round=Pr0;mSQ.scale=Tr0;mSQ.scaleAndAdd=Sr0;mSQ.distance=hSQ;mSQ.squaredDistance=xSQ;mSQ.length=fSQ;mSQ.squaredLength=bSQ;mSQ.negate=kr0;mSQ.inverse=_r0;mSQ.normalize=vr0;mSQ.dot=yr0;mSQ.cross=gr0;mSQ.lerp=hr0;mSQ.random=xr0;mSQ.transformMat2=fr0;mSQ.transformMat2d=br0;mSQ.transformMat3=mr0;mSQ.transformMat4=ur0;mSQ.rotate=dr0;mSQ.angle=cr0;mSQ.zero=lr0;mSQ.str=pr0;mSQ.exactEquals=ir0;mSQ.equals=nr0;mSQ.forEach=mSQ.sqrLen=mSQ.sqrDist=mSQ.dist=mSQ.div=mSQ.mul=mSQ.sub=mSQ.len=void 0;var Q4=Dr0(U1());function kSQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(kSQ=function(J){return J?B:Q})(A)}function Dr0(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||wk(A)!=="object"&&typeof A!=="function")return{default:A};var B=kSQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function _SQ(){var A=new Q4.ARRAY_TYPE(2);if(Q4.ARRAY_TYPE!=Float32Array)A[0]=0,A[1]=0;return A}function Nr0(A){var Q=new Q4.ARRAY_TYPE(2);return Q[0]=A[0],Q[1]=A[1],Q}function Lr0(A,Q){var B=new Q4.ARRAY_TYPE(2);return B[0]=A,B[1]=Q,B}function qr0(A,Q){return A[0]=Q[0],A[1]=Q[1],A}function Mr0(A,Q,B){return A[0]=Q,A[1]=B,A}function zr0(A,Q,B){return A[0]=Q[0]+B[0],A[1]=Q[1]+B[1],A}function vSQ(A,Q,B){return A[0]=Q[0]-B[0],A[1]=Q[1]-B[1],A}function ySQ(A,Q,B){return A[0]=Q[0]*B[0],A[1]=Q[1]*B[1],A}function gSQ(A,Q,B){return A[0]=Q[0]/B[0],A[1]=Q[1]/B[1],A}function Rr0(A,Q){return A[0]=Math.ceil(Q[0]),A[1]=Math.ceil(Q[1]),A}function wr0(A,Q){return A[0]=Math.floor(Q[0]),A[1]=Math.floor(Q[1]),A}function jr0(A,Q,B){return A[0]=Math.min(Q[0],B[0]),A[1]=Math.min(Q[1],B[1]),A}function Or0(A,Q,B){return A[0]=Math.max(Q[0],B[0]),A[1]=Math.max(Q[1],B[1]),A}function Pr0(A,Q){return A[0]=Math.round(Q[0]),A[1]=Math.round(Q[1]),A}function Tr0(A,Q,B){return A[0]=Q[0]*B,A[1]=Q[1]*B,A}function Sr0(A,Q,B,Y){return A[0]=Q[0]+B[0]*Y,A[1]=Q[1]+B[1]*Y,A}function hSQ(A,Q){var B=Q[0]-A[0],Y=Q[1]-A[1];return Math.hypot(B,Y)}function xSQ(A,Q){var B=Q[0]-A[0],Y=Q[1]-A[1];return B*B+Y*Y}function fSQ(A){var Q=A[0],B=A[1];return Math.hypot(Q,B)}function bSQ(A){var Q=A[0],B=A[1];return Q*Q+B*B}function kr0(A,Q){return A[0]=-Q[0],A[1]=-Q[1],A}function _r0(A,Q){return A[0]=1/Q[0],A[1]=1/Q[1],A}function vr0(A,Q){var B=Q[0],Y=Q[1],J=B*B+Y*Y;if(J>0)J=1/Math.sqrt(J);return A[0]=Q[0]*J,A[1]=Q[1]*J,A}function yr0(A,Q){return A[0]*Q[0]+A[1]*Q[1]}function gr0(A,Q,B){var Y=Q[0]*B[1]-Q[1]*B[0];return A[0]=A[1]=0,A[2]=Y,A}function hr0(A,Q,B,Y){var J=Q[0],C=Q[1];return A[0]=J+Y*(B[0]-J),A[1]=C+Y*(B[1]-C),A}function xr0(A,Q){Q=Q||1;var B=Q4.RANDOM()*2*Math.PI;return A[0]=Math.cos(B)*Q,A[1]=Math.sin(B)*Q,A}function fr0(A,Q,B){var Y=Q[0],J=Q[1];return A[0]=B[0]*Y+B[2]*J,A[1]=B[1]*Y+B[3]*J,A}function br0(A,Q,B){var Y=Q[0],J=Q[1];return A[0]=B[0]*Y+B[2]*J+B[4],A[1]=B[1]*Y+B[3]*J+B[5],A}function mr0(A,Q,B){var Y=Q[0],J=Q[1];return A[0]=B[0]*Y+B[3]*J+B[6],A[1]=B[1]*Y+B[4]*J+B[7],A}function ur0(A,Q,B){var Y=Q[0],J=Q[1];return A[0]=B[0]*Y+B[4]*J+B[12],A[1]=B[1]*Y+B[5]*J+B[13],A}function dr0(A,Q,B,Y){var J=Q[0]-B[0],C=Q[1]-B[1],X=Math.sin(Y),G=Math.cos(Y);return A[0]=J*G-C*X+B[0],A[1]=J*X+C*G+B[1],A}function cr0(A,Q){var B=A[0],Y=A[1],J=Q[0],C=Q[1],X=Math.sqrt(B*B+Y*Y)*Math.sqrt(J*J+C*C),G=X&&(B*J+Y*C)/X;return Math.acos(Math.min(Math.max(G,-1),1))}function lr0(A){return A[0]=0,A[1]=0,A}function pr0(A){return"vec2("+A[0]+", "+A[1]+")"}function ir0(A,Q){return A[0]===Q[0]&&A[1]===Q[1]}function nr0(A,Q){var B=A[0],Y=A[1],J=Q[0],C=Q[1];return Math.abs(B-J)<=Q4.EPSILON*Math.max(1,Math.abs(B),Math.abs(J))&&Math.abs(Y-C)<=Q4.EPSILON*Math.max(1,Math.abs(Y),Math.abs(C))}var sr0=fSQ;mSQ.len=sr0;var rr0=vSQ;mSQ.sub=rr0;var ar0=ySQ;mSQ.mul=ar0;var or0=gSQ;mSQ.div=or0;var tr0=hSQ;mSQ.dist=tr0;var er0=xSQ;mSQ.sqrDist=er0;var Aa0=bSQ;mSQ.sqrLen=Aa0;var Qa0=function(){var A=_SQ();return function(Q,B,Y,J,C,X){var G,F;if(!B)B=2;if(!Y)Y=0;if(J)F=Math.min(J*B+Y,Q.length);else F=Q.length;for(G=Y;G{function jk(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")jk=function(B){return typeof B};else jk=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return jk(A)}Object.defineProperty(lSQ,"__esModule",{value:!0});lSQ.vec4=lSQ.vec3=lSQ.vec2=lSQ.quat2=lSQ.quat=lSQ.mat4=lSQ.mat3=lSQ.mat2d=lSQ.mat2=lSQ.glMatrix=void 0;var ia0=TX(U1());lSQ.glMatrix=ia0;var na0=TX(DTQ());lSQ.mat2=na0;var sa0=TX(RTQ());lSQ.mat2d=sa0;var ra0=TX(Lo());lSQ.mat3=ra0;var aa0=TX(qo());lSQ.mat4=aa0;var oa0=TX(jo());lSQ.quat=oa0;var ta0=TX(SSQ());lSQ.quat2=ta0;var ea0=TX(dSQ());lSQ.vec2=ea0;var Ao0=TX(Mo());lSQ.vec3=Ao0;var Qo0=TX(zo());lSQ.vec4=Qo0;function cSQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(cSQ=function(J){return J?B:Q})(A)}function TX(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||jk(A)!=="object"&&typeof A!=="function")return{default:A};var B=cSQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}});var nSQ=R((Ok,iSQ)=>{(function(A,Q){typeof Ok==="object"&&typeof iSQ<"u"?Q(Ok):typeof define==="function"&&define.amd?define(["exports"],Q):(A=typeof globalThis<"u"?globalThis:A||self,Q(A.heap={}))})(Ok,function(A){var Q=function($,E,K,I){function V(H){return H instanceof K?H:new K(function(D){D(H)})}return new(K||(K=Promise))(function(H,D){function L(N){try{M(I.next(N))}catch(q){D(q)}}function z(N){try{M(I.throw(N))}catch(q){D(q)}}function M(N){N.done?H(N.value):V(N.value).then(L,z)}M((I=I.apply($,E||[])).next())})},B=function($,E){var K={label:0,sent:function(){if(H[0]&1)throw H[1];return H[1]},trys:[],ops:[]},I,V,H,D=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return D.next=L(0),D.throw=L(1),D.return=L(2),typeof Symbol==="function"&&(D[Symbol.iterator]=function(){return this}),D;function L(M){return function(N){return z([M,N])}}function z(M){if(I)throw TypeError("Generator is already executing.");while(D&&(D=0,M[0]&&(K=0)),K)try{if(I=1,V&&(H=M[0]&2?V.return:M[0]?V.throw||((H=V.return)&&H.call(V),0):V.next)&&!(H=H.call(V,M[1])).done)return H;if(V=0,H)M=[M[0]&2,H.value];switch(M[0]){case 0:case 1:H=M;break;case 4:return K.label++,{value:M[1],done:!1};case 5:K.label++,V=M[1],M=[0];continue;case 7:M=K.ops.pop(),K.trys.pop();continue;default:if((H=K.trys,!(H=H.length>0&&H[H.length-1]))&&(M[0]===6||M[0]===2)){K=0;continue}if(M[0]===3&&(!H||M[1]>H[0]&&M[1]0)&&!(V=I.next()).done)H.push(V.value)}catch(L){D={error:L}}finally{try{if(V&&!V.done&&(K=I.return))K.call(I)}finally{if(D)throw D.error}}return H},J=function($,E,K){if(K||arguments.length===2){for(var I=0,V=E.length,H;I=$.length)$=void 0;return{value:$&&$[I++],done:!$}}};throw TypeError(E?"Object is not iterable.":"Symbol.iterator is not defined.")},X=function(){function $(E){if(E===void 0)E=$.minComparator;var K=this;this.compare=E,this.heapArray=[],this._limit=0,this.offer=this.add,this.element=this.peek,this.poll=this.pop,this._invertedCompare=function(I,V){return K.compare(I,V).then(function(H){return-1*H})}}return $.getChildrenIndexOf=function(E){return[E*2+1,E*2+2]},$.getParentIndexOf=function(E){if(E<=0)return-1;var K=E%2?1:2;return Math.floor((E-K)/2)},$.getSiblingIndexOf=function(E){if(E<=0)return-1;var K=E%2?1:-1;return E+K},$.minComparator=function(E,K){return Q(this,void 0,void 0,function(){return B(this,function(I){if(E>K)return[2,1];else if(EE)return[2,1];else if(K0;--q)w+=N;return w}var V=0,H=[],D=K(E.length-1)+2,L=0;while(VL)L=M.length;H[z]=H[z]||[],H[z].push(M),V+=1}return H.map(function(N,q){var w=Math.pow(2,D-q)-1;return I(" ",Math.floor(w/2)*L)+N.map(function(P){var _=(L-P.length)/2;return I(" ",Math.ceil(_))+P+I(" ",Math.floor(_))}).join(I(" ",w*L))}).join(` + `)}close(){this.#B.close()}get(Q){ua(Q);let B=this.#E(Q);return B?{body:B.body?Buffer.from(B.body.buffer,B.body.byteOffset,B.body.byteLength):void 0,statusCode:B.statusCode,statusMessage:B.statusMessage,headers:B.headers?JSON.parse(B.headers):void 0,etag:B.etag?B.etag:void 0,vary:B.vary?JSON.parse(B.vary):void 0,cacheControlDirectives:B.cacheControlDirectives?JSON.parse(B.cacheControlDirectives):void 0,cachedAt:B.cachedAt,staleAt:B.staleAt,deleteAt:B.deleteAt}:void 0}set(Q,B){ua(Q);let Y=this.#W(Q),J=Array.isArray(B.body)?Buffer.concat(B.body):B.body,C=J?.byteLength;if(C&&C>this.#A)return;let X=this.#E(Q,!0);if(X)this.#J.run(J,B.deleteAt,B.statusCode,B.statusMessage,B.headers?JSON.stringify(B.headers):null,B.etag?B.etag:null,B.cacheControlDirectives?JSON.stringify(B.cacheControlDirectives):null,B.cachedAt,B.staleAt,X.id);else this.#U(),this.#C.run(Y,Q.method,J,B.deleteAt,B.statusCode,B.statusMessage,B.headers?JSON.stringify(B.headers):null,B.etag?B.etag:null,B.cacheControlDirectives?JSON.stringify(B.cacheControlDirectives):null,B.vary?JSON.stringify(B.vary):null,B.cachedAt,B.staleAt)}createWriteStream(Q,B){ua(Q),Uy0(B);let Y=0,J=[],C=this;return new $y0({decodeStrings:!0,write(X,G,F){if(Y+=X.byteLength,Y=F.deleteAt&&!B)return;let W=!0;if(F.vary){let Z=JSON.parse(F.vary);for(let U in Z)if(!Ey0(J[U],Z[U])){W=!1;break}}if(W)return F}return}};function Ey0(A,Q){if(A==null&&Q==null)return!0;if(A==null&&Q!=null||A!=null&&Q==null)return!1;if(Array.isArray(A)&&Array.isArray(Q)){if(A.length!==Q.length)return!1;return A.every((B,Y)=>B===Q[Y])}return A===Q}});var n$=R((nnY,tjQ)=>{var{kConstruct:Ky0}=Q0(),{kEnumerableProperty:WV}=lQ(),{iteratorMixin:Vy0,isValidHeaderName:gq,isValidHeaderValue:njQ}=H9(),{webidl:LB}=UJ(),ca=u("node:assert"),vS=u("node:util");function ijQ(A){return A===10||A===13||A===9||A===32}function sjQ(A){let Q=0,B=A.length;while(B>Q&&ijQ(A.charCodeAt(B-1)))--B;while(B>Q&&ijQ(A.charCodeAt(Q)))++Q;return Q===0&&B===A.length?A:A.substring(Q,B)}function rjQ(A,Q){if(Array.isArray(Q))for(let B=0;B>","record"]})}function la(A,Q,B){if(B=sjQ(B),!gq(Q))throw LB.errors.invalidArgument({prefix:"Headers.append",value:Q,type:"header name"});else if(!njQ(B))throw LB.errors.invalidArgument({prefix:"Headers.append",value:B,type:"header value"});if(ojQ(A)==="immutable")throw TypeError("immutable");return hS(A).append(Q,B,!1)}function Iy0(A){let Q=hS(A);if(!Q)return[];if(Q.sortedMap)return Q.sortedMap;let B=[],Y=Q.toSortedArray(),J=Q.cookies;if(J===null||J.length===1)return Q.sortedMap=Y;for(let C=0;C>1),Q[F][0]<=W[0])G=F+1;else X=F;if(J!==F){C=J;while(C>G)Q[C]=Q[--C];Q[G]=W}}if(!B.next().done)throw TypeError("Unreachable");return Q}else{let B=0;for(let{0:Y,1:{value:J}}of this.headersMap)Q[B++]=[Y,J],ca(J!==null);return Q.sort(ajQ)}}}class hJ{#A;#Q;constructor(A=void 0){if(LB.util.markAsUncloneable(this),A===Ky0)return;if(this.#Q=new yS,this.#A="none",A!==void 0)A=LB.converters.HeadersInit(A,"Headers constructor","init"),rjQ(this,A)}append(A,Q){LB.brandCheck(this,hJ),LB.argumentLengthCheck(arguments,2,"Headers.append");let B="Headers.append";return A=LB.converters.ByteString(A,B,"name"),Q=LB.converters.ByteString(Q,B,"value"),la(this,A,Q)}delete(A){LB.brandCheck(this,hJ),LB.argumentLengthCheck(arguments,1,"Headers.delete");let Q="Headers.delete";if(A=LB.converters.ByteString(A,Q,"name"),!gq(A))throw LB.errors.invalidArgument({prefix:"Headers.delete",value:A,type:"header name"});if(this.#A==="immutable")throw TypeError("immutable");if(!this.#Q.contains(A,!1))return;this.#Q.delete(A,!1)}get(A){LB.brandCheck(this,hJ),LB.argumentLengthCheck(arguments,1,"Headers.get");let Q="Headers.get";if(A=LB.converters.ByteString(A,Q,"name"),!gq(A))throw LB.errors.invalidArgument({prefix:Q,value:A,type:"header name"});return this.#Q.get(A,!1)}has(A){LB.brandCheck(this,hJ),LB.argumentLengthCheck(arguments,1,"Headers.has");let Q="Headers.has";if(A=LB.converters.ByteString(A,Q,"name"),!gq(A))throw LB.errors.invalidArgument({prefix:Q,value:A,type:"header name"});return this.#Q.contains(A,!1)}set(A,Q){LB.brandCheck(this,hJ),LB.argumentLengthCheck(arguments,2,"Headers.set");let B="Headers.set";if(A=LB.converters.ByteString(A,B,"name"),Q=LB.converters.ByteString(Q,B,"value"),Q=sjQ(Q),!gq(A))throw LB.errors.invalidArgument({prefix:B,value:A,type:"header name"});else if(!njQ(Q))throw LB.errors.invalidArgument({prefix:B,value:Q,type:"header value"});if(this.#A==="immutable")throw TypeError("immutable");this.#Q.set(A,Q,!1)}getSetCookie(){LB.brandCheck(this,hJ);let A=this.#Q.cookies;if(A)return[...A];return[]}[vS.inspect.custom](A,Q){return Q.depth??=A,`Headers ${vS.formatWithOptions(Q,this.#Q.entries)}`}static getHeadersGuard(A){return A.#A}static setHeadersGuard(A,Q){A.#A=Q}static getHeadersList(A){return A.#Q}static setHeadersList(A,Q){A.#Q=Q}}var{getHeadersGuard:ojQ,setHeadersGuard:Hy0,getHeadersList:hS,setHeadersList:Dy0}=hJ;Reflect.deleteProperty(hJ,"getHeadersGuard");Reflect.deleteProperty(hJ,"setHeadersGuard");Reflect.deleteProperty(hJ,"getHeadersList");Reflect.deleteProperty(hJ,"setHeadersList");Vy0("Headers",hJ,Iy0,0,1);Object.defineProperties(hJ.prototype,{append:WV,delete:WV,get:WV,has:WV,set:WV,getSetCookie:WV,[Symbol.toStringTag]:{value:"Headers",configurable:!0},[vS.inspect.custom]:{enumerable:!1}});LB.converters.HeadersInit=function(A,Q,B){if(LB.util.Type(A)===LB.util.Types.OBJECT){let Y=Reflect.get(A,Symbol.iterator);if(!vS.types.isProxy(A)&&Y===hJ.prototype.entries)try{return hS(A).entriesList}catch{}if(typeof Y==="function")return LB.converters["sequence>"](A,Q,B,Y.bind(A));return LB.converters["record"](A,Q,B)}throw LB.errors.conversionFailed({prefix:"Headers constructor",argument:"Argument 1",types:["sequence>","record"]})};tjQ.exports={fill:rjQ,compareHeaderName:ajQ,Headers:hJ,HeadersList:yS,getHeadersGuard:ojQ,setHeadersGuard:Hy0,setHeadersList:Dy0,getHeadersList:hS}});var fq=R((snY,ZOQ)=>{var{Headers:JOQ,HeadersList:ejQ,fill:Ny0,getHeadersGuard:Ly0,setHeadersGuard:COQ,setHeadersList:XOQ}=n$(),{extractBody:AOQ,cloneBody:qy0,mixinBody:My0,streamRegistry:GOQ,bodyUnusable:zy0}=lK(),FOQ=lQ(),QOQ=u("node:util"),{kEnumerableProperty:m8}=FOQ,{isValidReasonPhrase:Ry0,isCancelled:wy0,isAborted:jy0,serializeJavascriptValueToJSONString:Oy0,isErrorLike:Py0,isomorphicEncode:Ty0,environmentSettingsObject:Sy0}=H9(),{redirectStatusSet:ky0,nullBodyStatus:_y0}=Qq(),{webidl:ZB}=UJ(),{URLSerializer:BOQ}=g8(),{kConstruct:xS}=Q0(),pa=u("node:assert"),vy0=new TextEncoder("utf-8");class r0{#A;#Q;static error(){return xq(fS(),"immutable")}static json(A,Q=void 0){if(ZB.argumentLengthCheck(arguments,1,"Response.json"),Q!==null)Q=ZB.converters.ResponseInit(Q);let B=vy0.encode(Oy0(A)),Y=AOQ(B),J=xq(ZV({}),"response");return YOQ(J,Q,{body:Y[0],type:"application/json"}),J}static redirect(A,Q=302){ZB.argumentLengthCheck(arguments,1,"Response.redirect"),A=ZB.converters.USVString(A),Q=ZB.converters["unsigned short"](Q);let B;try{B=new URL(A,Sy0.settingsObject.baseUrl)}catch(C){throw TypeError(`Failed to parse URL from ${A}`,{cause:C})}if(!ky0.has(Q))throw RangeError(`Invalid status code ${Q}`);let Y=xq(ZV({}),"immutable");Y.#Q.status=Q;let J=Ty0(BOQ(B));return Y.#Q.headersList.append("location",J,!0),Y}constructor(A=null,Q=void 0){if(ZB.util.markAsUncloneable(this),A===xS)return;if(A!==null)A=ZB.converters.BodyInit(A,"Response","body");Q=ZB.converters.ResponseInit(Q),this.#Q=ZV({}),this.#A=new JOQ(xS),COQ(this.#A,"response"),XOQ(this.#A,this.#Q.headersList);let B=null;if(A!=null){let[Y,J]=AOQ(A);B={body:Y,type:J}}YOQ(this,Q,B)}get type(){return ZB.brandCheck(this,r0),this.#Q.type}get url(){ZB.brandCheck(this,r0);let A=this.#Q.urlList,Q=A[A.length-1]??null;if(Q===null)return"";return BOQ(Q,!0)}get redirected(){return ZB.brandCheck(this,r0),this.#Q.urlList.length>1}get status(){return ZB.brandCheck(this,r0),this.#Q.status}get ok(){return ZB.brandCheck(this,r0),this.#Q.status>=200&&this.#Q.status<=299}get statusText(){return ZB.brandCheck(this,r0),this.#Q.statusText}get headers(){return ZB.brandCheck(this,r0),this.#A}get body(){return ZB.brandCheck(this,r0),this.#Q.body?this.#Q.body.stream:null}get bodyUsed(){return ZB.brandCheck(this,r0),!!this.#Q.body&&FOQ.isDisturbed(this.#Q.body.stream)}clone(){if(ZB.brandCheck(this,r0),zy0(this.#Q))throw ZB.errors.exception({header:"Response.clone",message:"Body has already been consumed."});let A=ia(this.#Q);if(this.#Q.body?.stream)GOQ.register(this,new WeakRef(this.#Q.body.stream));return xq(A,Ly0(this.#A))}[QOQ.inspect.custom](A,Q){if(Q.depth===null)Q.depth=2;Q.colors??=!0;let B={status:this.status,statusText:this.statusText,headers:this.headers,body:this.body,bodyUsed:this.bodyUsed,ok:this.ok,redirected:this.redirected,type:this.type,url:this.url};return`Response ${QOQ.formatWithOptions(Q,B)}`}static getResponseHeaders(A){return A.#A}static setResponseHeaders(A,Q){A.#A=Q}static getResponseState(A){return A.#Q}static setResponseState(A,Q){A.#Q=Q}}var{getResponseHeaders:yy0,setResponseHeaders:hy0,getResponseState:s$,setResponseState:gy0}=r0;Reflect.deleteProperty(r0,"getResponseHeaders");Reflect.deleteProperty(r0,"setResponseHeaders");Reflect.deleteProperty(r0,"getResponseState");Reflect.deleteProperty(r0,"setResponseState");My0(r0,s$);Object.defineProperties(r0.prototype,{type:m8,url:m8,status:m8,ok:m8,redirected:m8,statusText:m8,headers:m8,clone:m8,body:m8,bodyUsed:m8,[Symbol.toStringTag]:{value:"Response",configurable:!0}});Object.defineProperties(r0,{json:m8,redirect:m8,error:m8});function ia(A){if(A.internalResponse)return WOQ(ia(A.internalResponse),A.type);let Q=ZV({...A,body:null});if(A.body!=null)Q.body=qy0(A.body);return Q}function ZV(A){return{aborted:!1,rangeRequested:!1,timingAllowPassed:!1,requestIncludesCredentials:!1,type:"default",status:200,timingInfo:null,cacheState:"",statusText:"",...A,headersList:A?.headersList?new ejQ(A?.headersList):new ejQ,urlList:A?.urlList?[...A.urlList]:[]}}function fS(A){let Q=Py0(A);return ZV({type:"error",status:0,error:Q?A:Error(A?String(A):A),aborted:A&&A.name==="AbortError"})}function xy0(A){return A.type==="error"&&A.status===0}function gS(A,Q){return Q={internalResponse:A,...Q},new Proxy(A,{get(B,Y){return Y in Q?Q[Y]:B[Y]},set(B,Y,J){return pa(!(Y in Q)),B[Y]=J,!0}})}function WOQ(A,Q){if(Q==="basic")return gS(A,{type:"basic",headersList:A.headersList});else if(Q==="cors")return gS(A,{type:"cors",headersList:A.headersList});else if(Q==="opaque")return gS(A,{type:"opaque",urlList:Object.freeze([]),status:0,statusText:"",body:null});else if(Q==="opaqueredirect")return gS(A,{type:"opaqueredirect",status:0,statusText:"",headersList:[],body:null});else pa(!1)}function fy0(A,Q=null){return pa(wy0(A)),jy0(A)?fS(Object.assign(new DOMException("The operation was aborted.","AbortError"),{cause:Q})):fS(Object.assign(new DOMException("Request was cancelled."),{cause:Q}))}function YOQ(A,Q,B){if(Q.status!==null&&(Q.status<200||Q.status>599))throw RangeError('init["status"] must be in the range of 200 to 599, inclusive.');if("statusText"in Q&&Q.statusText!=null){if(!Ry0(String(Q.statusText)))throw TypeError("Invalid statusText")}if("status"in Q&&Q.status!=null)s$(A).status=Q.status;if("statusText"in Q&&Q.statusText!=null)s$(A).statusText=Q.statusText;if("headers"in Q&&Q.headers!=null)Ny0(yy0(A),Q.headers);if(B){if(_y0.includes(A.status))throw ZB.errors.exception({header:"Response constructor",message:`Invalid response status code ${A.status}`});if(s$(A).body=B.body,B.type!=null&&!s$(A).headersList.contains("content-type",!0))s$(A).headersList.append("content-type",B.type,!0)}}function xq(A,Q){let B=new r0(xS);gy0(B,A);let Y=new JOQ(xS);if(hy0(B,Y),XOQ(Y,A.headersList),COQ(Y,Q),A.body?.stream)GOQ.register(B,new WeakRef(A.body.stream));return B}ZB.converters.XMLHttpRequestBodyInit=function(A,Q,B){if(typeof A==="string")return ZB.converters.USVString(A,Q,B);if(ZB.is.Blob(A))return A;if(ZB.is.BufferSource(A))return A;if(ZB.is.FormData(A))return A;if(ZB.is.URLSearchParams(A))return A;return ZB.converters.DOMString(A,Q,B)};ZB.converters.BodyInit=function(A,Q,B){if(ZB.is.ReadableStream(A))return A;if(A?.[Symbol.asyncIterator])return A;return ZB.converters.XMLHttpRequestBodyInit(A,Q,B)};ZB.converters.ResponseInit=ZB.dictionaryConverter([{key:"status",converter:ZB.converters["unsigned short"],defaultValue:()=>200},{key:"statusText",converter:ZB.converters.ByteString,defaultValue:()=>""},{key:"headers",converter:ZB.converters.HeadersInit}]);ZB.is.Response=ZB.util.MakeTypeAssertion(r0);ZOQ.exports={isNetworkError:xy0,makeNetworkError:fS,makeResponse:ZV,makeAppropriateNetworkError:fy0,filterResponse:WOQ,Response:r0,cloneResponse:ia,fromInnerResponse:xq,getResponseState:s$}});var $V=R((rnY,ROQ)=>{var{extractBody:by0,mixinBody:my0,cloneBody:uy0,bodyUnusable:$OQ}=lK(),{Headers:HOQ,fill:dy0,HeadersList:uS,setHeadersGuard:na,getHeadersGuard:cy0,setHeadersList:DOQ,getHeadersList:UOQ}=n$(),mS=lQ(),EOQ=u("node:util"),{isValidHTTPToken:ly0,sameOrigin:KOQ,environmentSettingsObject:bS}=H9(),{forbiddenMethodsSet:py0,corsSafeListedMethodsSet:iy0,referrerPolicy:ny0,requestRedirect:sy0,requestMode:ry0,requestCredentials:ay0,requestCache:oy0,requestDuplex:ty0}=Qq(),{kEnumerableProperty:MY,normalizedMethodRecordsBase:ey0,normalizedMethodRecords:Ah0}=mS,{webidl:qQ}=UJ(),{URLSerializer:Qh0}=g8(),{kConstruct:dS}=Q0(),Bh0=u("node:assert"),{getMaxListeners:NOQ,setMaxListeners:Yh0,defaultMaxListeners:Jh0}=u("node:events"),Ch0=Symbol("abortController"),LOQ=new FinalizationRegistry(({signal:A,abort:Q})=>{A.removeEventListener("abort",Q)}),cS=new WeakMap,sa;try{sa=NOQ(new AbortController().signal)>0}catch{sa=!1}function VOQ(A){return Q;function Q(){let B=A.deref();if(B!==void 0){LOQ.unregister(Q),this.removeEventListener("abort",Q),B.abort(this.reason);let Y=cS.get(B.signal);if(Y!==void 0){if(Y.size!==0){for(let J of Y){let C=J.deref();if(C!==void 0)C.abort(this.reason)}Y.clear()}cS.delete(B.signal)}}}}var IOQ=!1;class kB{#A;#Q;#B;#Y;constructor(A,Q=void 0){if(qQ.util.markAsUncloneable(this),A===dS)return;let B="Request constructor";qQ.argumentLengthCheck(arguments,1,B),A=qQ.converters.RequestInfo(A),Q=qQ.converters.RequestInit(Q);let Y=null,J=null,C=bS.settingsObject.baseUrl,X=null;if(typeof A==="string"){this.#Q=Q.dispatcher;let V;try{V=new URL(A,C)}catch(H){throw TypeError("Failed to parse URL from "+A,{cause:H})}if(V.username||V.password)throw TypeError("Request cannot be constructed from a URL that includes credentials: "+A);Y=lS({urlList:[V]}),J="cors"}else Bh0(qQ.is.Request(A)),Y=A.#Y,X=A.#A,this.#Q=Q.dispatcher||A.#Q;let G=bS.settingsObject.origin,F="client";if(Y.window?.constructor?.name==="EnvironmentSettingsObject"&&KOQ(Y.window,G))F=Y.window;if(Q.window!=null)throw TypeError(`'window' option '${F}' must be null`);if("window"in Q)F="no-window";Y=lS({method:Y.method,headersList:Y.headersList,unsafeRequest:Y.unsafeRequest,client:bS.settingsObject,window:F,priority:Y.priority,origin:Y.origin,referrer:Y.referrer,referrerPolicy:Y.referrerPolicy,mode:Y.mode,credentials:Y.credentials,cache:Y.cache,redirect:Y.redirect,integrity:Y.integrity,keepalive:Y.keepalive,reloadNavigation:Y.reloadNavigation,historyNavigation:Y.historyNavigation,urlList:[...Y.urlList]});let W=Object.keys(Q).length!==0;if(W){if(Y.mode==="navigate")Y.mode="same-origin";Y.reloadNavigation=!1,Y.historyNavigation=!1,Y.origin="client",Y.referrer="client",Y.referrerPolicy="",Y.url=Y.urlList[Y.urlList.length-1],Y.urlList=[Y.url]}if(Q.referrer!==void 0){let V=Q.referrer;if(V==="")Y.referrer="no-referrer";else{let H;try{H=new URL(V,C)}catch(D){throw TypeError(`Referrer "${V}" is not a valid URL.`,{cause:D})}if(H.protocol==="about:"&&H.hostname==="client"||G&&!KOQ(H,bS.settingsObject.baseUrl))Y.referrer="client";else Y.referrer=H}}if(Q.referrerPolicy!==void 0)Y.referrerPolicy=Q.referrerPolicy;let Z;if(Q.mode!==void 0)Z=Q.mode;else Z=J;if(Z==="navigate")throw qQ.errors.exception({header:"Request constructor",message:"invalid request mode navigate."});if(Z!=null)Y.mode=Z;if(Q.credentials!==void 0)Y.credentials=Q.credentials;if(Q.cache!==void 0)Y.cache=Q.cache;if(Y.cache==="only-if-cached"&&Y.mode!=="same-origin")throw TypeError("'only-if-cached' can be set only with 'same-origin' mode");if(Q.redirect!==void 0)Y.redirect=Q.redirect;if(Q.integrity!=null)Y.integrity=String(Q.integrity);if(Q.keepalive!==void 0)Y.keepalive=Boolean(Q.keepalive);if(Q.method!==void 0){let V=Q.method,H=Ah0[V];if(H!==void 0)Y.method=H;else{if(!ly0(V))throw TypeError(`'${V}' is not a valid HTTP method.`);let D=V.toUpperCase();if(py0.has(D))throw TypeError(`'${V}' HTTP method is unsupported.`);V=ey0[D]??V,Y.method=V}if(!IOQ&&Y.method==="patch")process.emitWarning("Using `patch` is highly likely to result in a `405 Method Not Allowed`. `PATCH` is much more likely to succeed.",{code:"UNDICI-FETCH-patch"}),IOQ=!0}if(Q.signal!==void 0)X=Q.signal;this.#Y=Y;let U=new AbortController;if(this.#A=U.signal,X!=null)if(X.aborted)U.abort(X.reason);else{this[Ch0]=U;let V=new WeakRef(U),H=VOQ(V);if(sa&&NOQ(X)===Jh0)Yh0(1500,X);mS.addAbortListener(X,H),LOQ.register(U,{signal:X,abort:H},H)}if(this.#B=new HOQ(dS),DOQ(this.#B,Y.headersList),na(this.#B,"request"),Z==="no-cors"){if(!iy0.has(Y.method))throw TypeError(`'${Y.method} is unsupported in no-cors mode.`);na(this.#B,"request-no-cors")}if(W){let V=UOQ(this.#B),H=Q.headers!==void 0?Q.headers:new uS(V);if(V.clear(),H instanceof uS){for(let{name:D,value:L}of H.rawValues())V.append(D,L,!1);V.cookies=H.cookies}else dy0(this.#B,H)}let $=qQ.is.Request(A)?A.#Y.body:null;if((Q.body!=null||$!=null)&&(Y.method==="GET"||Y.method==="HEAD"))throw TypeError("Request with GET/HEAD method cannot have body.");let E=null;if(Q.body!=null){let[V,H]=by0(Q.body,Y.keepalive);if(E=V,H&&!UOQ(this.#B).contains("content-type",!0))this.#B.append("content-type",H,!0)}let K=E??$;if(K!=null&&K.source==null){if(E!=null&&Q.duplex==null)throw TypeError("RequestInit: duplex option is required when sending a body.");if(Y.mode!=="same-origin"&&Y.mode!=="cors")throw TypeError('If request is made from ReadableStream, mode should be "same-origin" or "cors"');Y.useCORSPreflightFlag=!0}let I=K;if(E==null&&$!=null){if($OQ(A.#Y))throw TypeError("Cannot construct a Request with a Request object that has already been used.");let V=new TransformStream;$.stream.pipeThrough(V),I={source:$.source,length:$.length,stream:V.readable}}this.#Y.body=I}get method(){return qQ.brandCheck(this,kB),this.#Y.method}get url(){return qQ.brandCheck(this,kB),Qh0(this.#Y.url)}get headers(){return qQ.brandCheck(this,kB),this.#B}get destination(){return qQ.brandCheck(this,kB),this.#Y.destination}get referrer(){if(qQ.brandCheck(this,kB),this.#Y.referrer==="no-referrer")return"";if(this.#Y.referrer==="client")return"about:client";return this.#Y.referrer.toString()}get referrerPolicy(){return qQ.brandCheck(this,kB),this.#Y.referrerPolicy}get mode(){return qQ.brandCheck(this,kB),this.#Y.mode}get credentials(){return qQ.brandCheck(this,kB),this.#Y.credentials}get cache(){return qQ.brandCheck(this,kB),this.#Y.cache}get redirect(){return qQ.brandCheck(this,kB),this.#Y.redirect}get integrity(){return qQ.brandCheck(this,kB),this.#Y.integrity}get keepalive(){return qQ.brandCheck(this,kB),this.#Y.keepalive}get isReloadNavigation(){return qQ.brandCheck(this,kB),this.#Y.reloadNavigation}get isHistoryNavigation(){return qQ.brandCheck(this,kB),this.#Y.historyNavigation}get signal(){return qQ.brandCheck(this,kB),this.#A}get body(){return qQ.brandCheck(this,kB),this.#Y.body?this.#Y.body.stream:null}get bodyUsed(){return qQ.brandCheck(this,kB),!!this.#Y.body&&mS.isDisturbed(this.#Y.body.stream)}get duplex(){return qQ.brandCheck(this,kB),"half"}clone(){if(qQ.brandCheck(this,kB),$OQ(this.#Y))throw TypeError("unusable");let A=MOQ(this.#Y),Q=new AbortController;if(this.signal.aborted)Q.abort(this.signal.reason);else{let B=cS.get(this.signal);if(B===void 0)B=new Set,cS.set(this.signal,B);let Y=new WeakRef(Q);B.add(Y),mS.addAbortListener(Q.signal,VOQ(Y))}return zOQ(A,this.#Q,Q.signal,cy0(this.#B))}[EOQ.inspect.custom](A,Q){if(Q.depth===null)Q.depth=2;Q.colors??=!0;let B={method:this.method,url:this.url,headers:this.headers,destination:this.destination,referrer:this.referrer,referrerPolicy:this.referrerPolicy,mode:this.mode,credentials:this.credentials,cache:this.cache,redirect:this.redirect,integrity:this.integrity,keepalive:this.keepalive,isReloadNavigation:this.isReloadNavigation,isHistoryNavigation:this.isHistoryNavigation,signal:this.signal};return`Request ${EOQ.formatWithOptions(Q,B)}`}static setRequestSignal(A,Q){return A.#A=Q,A}static getRequestDispatcher(A){return A.#Q}static setRequestDispatcher(A,Q){A.#Q=Q}static setRequestHeaders(A,Q){A.#B=Q}static getRequestState(A){return A.#Y}static setRequestState(A,Q){A.#Y=Q}}var{setRequestSignal:Xh0,getRequestDispatcher:Gh0,setRequestDispatcher:Fh0,setRequestHeaders:Wh0,getRequestState:qOQ,setRequestState:Zh0}=kB;Reflect.deleteProperty(kB,"setRequestSignal");Reflect.deleteProperty(kB,"getRequestDispatcher");Reflect.deleteProperty(kB,"setRequestDispatcher");Reflect.deleteProperty(kB,"setRequestHeaders");Reflect.deleteProperty(kB,"getRequestState");Reflect.deleteProperty(kB,"setRequestState");my0(kB,qOQ);function lS(A){return{method:A.method??"GET",localURLsOnly:A.localURLsOnly??!1,unsafeRequest:A.unsafeRequest??!1,body:A.body??null,client:A.client??null,reservedClient:A.reservedClient??null,replacesClientId:A.replacesClientId??"",window:A.window??"client",keepalive:A.keepalive??!1,serviceWorkers:A.serviceWorkers??"all",initiator:A.initiator??"",destination:A.destination??"",priority:A.priority??null,origin:A.origin??"client",policyContainer:A.policyContainer??"client",referrer:A.referrer??"client",referrerPolicy:A.referrerPolicy??"",mode:A.mode??"no-cors",useCORSPreflightFlag:A.useCORSPreflightFlag??!1,credentials:A.credentials??"same-origin",useCredentials:A.useCredentials??!1,cache:A.cache??"default",redirect:A.redirect??"follow",integrity:A.integrity??"",cryptoGraphicsNonceMetadata:A.cryptoGraphicsNonceMetadata??"",parserMetadata:A.parserMetadata??"",reloadNavigation:A.reloadNavigation??!1,historyNavigation:A.historyNavigation??!1,userActivation:A.userActivation??!1,taintedOrigin:A.taintedOrigin??!1,redirectCount:A.redirectCount??0,responseTainting:A.responseTainting??"basic",preventNoCacheCacheControlHeaderModification:A.preventNoCacheCacheControlHeaderModification??!1,done:A.done??!1,timingAllowFailed:A.timingAllowFailed??!1,urlList:A.urlList,url:A.urlList[0],headersList:A.headersList?new uS(A.headersList):new uS}}function MOQ(A){let Q=lS({...A,body:null});if(A.body!=null)Q.body=uy0(A.body);return Q}function zOQ(A,Q,B,Y){let J=new kB(dS);Zh0(J,A),Fh0(J,Q),Xh0(J,B);let C=new HOQ(dS);return Wh0(J,C),DOQ(C,A.headersList),na(C,Y),J}Object.defineProperties(kB.prototype,{method:MY,url:MY,headers:MY,redirect:MY,clone:MY,signal:MY,duplex:MY,destination:MY,body:MY,bodyUsed:MY,isHistoryNavigation:MY,isReloadNavigation:MY,keepalive:MY,integrity:MY,cache:MY,credentials:MY,attribute:MY,referrerPolicy:MY,referrer:MY,mode:MY,[Symbol.toStringTag]:{value:"Request",configurable:!0}});qQ.is.Request=qQ.util.MakeTypeAssertion(kB);qQ.converters.RequestInfo=function(A){if(typeof A==="string")return qQ.converters.USVString(A);if(qQ.is.Request(A))return A;return qQ.converters.USVString(A)};qQ.converters.RequestInit=qQ.dictionaryConverter([{key:"method",converter:qQ.converters.ByteString},{key:"headers",converter:qQ.converters.HeadersInit},{key:"body",converter:qQ.nullableConverter(qQ.converters.BodyInit)},{key:"referrer",converter:qQ.converters.USVString},{key:"referrerPolicy",converter:qQ.converters.DOMString,allowedValues:ny0},{key:"mode",converter:qQ.converters.DOMString,allowedValues:ry0},{key:"credentials",converter:qQ.converters.DOMString,allowedValues:ay0},{key:"cache",converter:qQ.converters.DOMString,allowedValues:oy0},{key:"redirect",converter:qQ.converters.DOMString,allowedValues:sy0},{key:"integrity",converter:qQ.converters.DOMString},{key:"keepalive",converter:qQ.converters.boolean},{key:"signal",converter:qQ.nullableConverter((A)=>qQ.converters.AbortSignal(A,"RequestInit","signal"))},{key:"window",converter:qQ.converters.any},{key:"duplex",converter:qQ.converters.DOMString,allowedValues:ty0},{key:"dispatcher",converter:qQ.converters.any}]);ROQ.exports={Request:kB,makeRequest:lS,fromInnerRequest:zOQ,cloneRequest:MOQ,getRequestDispatcher:Gh0,getRequestState:qOQ}});var kOQ=R((anY,SOQ)=>{var $h0=u("node:assert"),r$=new Map([["sha256",0],["sha384",1],["sha512",2]]),pS;try{pS=u("node:crypto");let A=pS.getHashes();if(A.length===0)r$.clear();for(let Q of r$.keys())if(A.includes(Q)===!1)r$.delete(Q)}catch{r$.clear()}var wOQ=Map.prototype.get.bind(r$),ra=Map.prototype.has.bind(r$),Uh0=pS===void 0||r$.size===0?()=>!0:(A,Q)=>{let B=OOQ(Q);if(B.length===0)return!0;let Y=jOQ(B);for(let J of Y){let{alg:C,val:X}=J,G=POQ(C,A);if(TOQ(G,X))return!0}return!1};function jOQ(A){let Q=[],B=null;for(let Y of A){if($h0(ra(Y.alg),"Invalid SRI hash algorithm token"),Q.length===0){Q.push(Y),B=Y;continue}let J=B.alg,C=wOQ(J),X=Y.alg,G=wOQ(X);if(GC)B=Y,Q[0]=Y,Q.length=1;else Q.push(Y)}return Q}function OOQ(A){let Q=[];for(let B of A.split(" ")){let J=B.split("?",1)[0],C="",X=[J.slice(0,6),J.slice(7)],G=X[0];if(!ra(G))continue;if(X[1])C=X[1];let F={alg:G,val:C};Q.push(F)}return Q}var POQ=(A,Q)=>{return pS.hash(A,Q,"base64")};function TOQ(A,Q){let B=A.length;if(B!==0&&A[B-1]==="=")B-=1;if(B!==0&&A[B-1]==="=")B-=1;let Y=Q.length;if(Y!==0&&Q[Y-1]==="=")Y-=1;if(Y!==0&&Q[Y-1]==="=")Y-=1;if(B!==Y)return!1;for(let J=0;J{var{makeNetworkError:dB,makeAppropriateNetworkError:iS,filterResponse:aa,makeResponse:nS,fromInnerResponse:Eh0,getResponseState:Kh0}=fq(),{HeadersList:_OQ}=n$(),{Request:Vh0,cloneRequest:Ih0,getRequestDispatcher:Hh0,getRequestState:Dh0}=$V(),YC=u("node:zlib"),{makePolicyContainer:Nh0,clonePolicyContainer:Lh0,requestBadPort:qh0,TAOCheck:Mh0,appendRequestOriginHeader:zh0,responseLocationURL:Rh0,requestCurrentURL:w6,setRequestReferrerPolicyOnRedirect:wh0,tryUpgradeRequestToAPotentiallyTrustworthyURL:jh0,createOpaqueTimingInfo:Qo,appendFetchMetadata:Oh0,corsCheck:Ph0,crossOriginResourcePolicyCheck:Th0,determineRequestsReferrer:Sh0,coarsenedSharedCurrentTime:bq,sameOrigin:Ao,isCancelled:a$,isAborted:vOQ,isErrorLike:kh0,fullyReadBody:_h0,readableStreamClose:vh0,isomorphicEncode:sS,urlIsLocal:yh0,urlIsHttpHttpsScheme:aS,urlHasHttpsScheme:hh0,clampAndCoarsenConnectionTimingInfo:gh0,simpleRangeHeaderValue:xh0,buildContentRange:fh0,createInflate:bh0,extractMimeType:mh0}=H9(),o$=u("node:assert"),{safelyExtractBody:Bo,extractBody:yOQ}=lK(),{redirectStatusSet:xOQ,nullBodyStatus:fOQ,safeMethodsSet:uh0,requestBodyHeader:dh0,subresourceSet:ch0}=Qq(),lh0=u("node:events"),{Readable:ph0,pipeline:ih0,finished:nh0,isErrored:sh0,isReadable:rS}=u("node:stream"),{addAbortListener:rh0,bufferToLowerCasedHeaderName:hOQ}=lQ(),{dataURLProcessor:ah0,serializeAMimeType:oh0,minimizeSupportedMimeType:th0}=g8(),{getGlobalDispatcher:eh0}=_S(),{webidl:Yo}=UJ(),{STATUS_CODES:Ag0}=u("node:http"),{bytesMatch:Qg0}=kOQ(),{createDeferredPromise:Bg0}=Jq(),Yg0=typeof YC.createZstdDecompress==="function",Jg0=["GET","HEAD"],Cg0=typeof __UNDICI_IS_NODE__<"u"||typeof esbuildDetection<"u"?"node":"undici",oa;class Jo extends lh0{constructor(A){super();this.dispatcher=A,this.connection=null,this.dump=!1,this.state="ongoing"}terminate(A){if(this.state!=="ongoing")return;this.state="terminated",this.connection?.destroy(A),this.emit("terminated",A)}abort(A){if(this.state!=="ongoing")return;if(this.state="aborted",!A)A=new DOMException("The operation was aborted.","AbortError");this.serializedAbortReason=A,this.connection?.destroy(A),this.emit("terminated",A)}}function Xg0(A){bOQ(A,"fetch")}function Gg0(A,Q=void 0){Yo.argumentLengthCheck(arguments,1,"globalThis.fetch");let B=Bg0(),Y;try{Y=new Vh0(A,Q)}catch(Z){return B.reject(Z),B.promise}let J=Dh0(Y);if(Y.signal.aborted)return ta(B,J,null,Y.signal.reason),B.promise;if(J.client.globalObject?.constructor?.name==="ServiceWorkerGlobalScope")J.serviceWorkers="none";let X=null,G=!1,F=null;return rh0(Y.signal,()=>{G=!0,o$(F!=null),F.abort(Y.signal.reason);let Z=X?.deref();ta(B,J,Z,Y.signal.reason)}),F=uOQ({request:J,processResponseEndOfBody:Xg0,processResponse:(Z)=>{if(G)return;if(Z.aborted){ta(B,J,X,F.serializedAbortReason);return}if(Z.type==="error"){B.reject(TypeError("fetch failed",{cause:Z.error}));return}X=new WeakRef(Eh0(Z,"immutable")),B.resolve(X.deref()),B=null},dispatcher:Hh0(Y)}),B.promise}function bOQ(A,Q="other"){if(A.type==="error"&&A.aborted)return;if(!A.urlList?.length)return;let B=A.urlList[0],Y=A.timingInfo,J=A.cacheState;if(!aS(B))return;if(Y===null)return;if(!A.timingAllowPassed)Y=Qo({startTime:Y.startTime}),J="";Y.endTime=bq(),A.timingInfo=Y,mOQ(Y,B.href,Q,globalThis,J,"",A.status)}var mOQ=performance.markResourceTiming;function ta(A,Q,B,Y){if(A)A.reject(Y);if(Q.body?.stream!=null&&rS(Q.body.stream))Q.body.stream.cancel(Y).catch((C)=>{if(C.code==="ERR_INVALID_STATE")return;throw C});if(B==null)return;let J=Kh0(B);if(J.body?.stream!=null&&rS(J.body.stream))J.body.stream.cancel(Y).catch((C)=>{if(C.code==="ERR_INVALID_STATE")return;throw C})}function uOQ({request:A,processRequestBodyChunkLength:Q,processRequestEndOfBody:B,processResponse:Y,processResponseEndOfBody:J,processResponseConsumeBody:C,useParallelQueue:X=!1,dispatcher:G=eh0()}){o$(G);let F=null,W=!1;if(A.client!=null)F=A.client.globalObject,W=A.client.crossOriginIsolatedCapability;let Z=bq(W),U=Qo({startTime:Z}),$={controller:new Jo(G),request:A,timingInfo:U,processRequestBodyChunkLength:Q,processRequestEndOfBody:B,processResponse:Y,processResponseConsumeBody:C,processResponseEndOfBody:J,taskDestination:F,crossOriginIsolatedCapability:W};if(o$(!A.body||A.body.stream),A.window==="client")A.window=A.client?.globalObject?.constructor?.name==="Window"?A.client:"no-window";if(A.origin==="client")A.origin=A.client.origin;if(A.policyContainer==="client")if(A.client!=null)A.policyContainer=Lh0(A.client.policyContainer);else A.policyContainer=Nh0();if(!A.headersList.contains("accept",!0))A.headersList.append("accept","*/*",!0);if(!A.headersList.contains("accept-language",!0))A.headersList.append("accept-language","*",!0);if(A.priority===null);if(ch0.has(A.destination));return dOQ($,!1),$.controller}async function dOQ(A,Q){try{let B=A.request,Y=null;if(B.localURLsOnly&&!yh0(w6(B)))Y=dB("local URLs only");if(jh0(B),qh0(B)==="blocked")Y=dB("bad port");if(B.referrerPolicy==="")B.referrerPolicy=B.policyContainer.referrerPolicy;if(B.referrer!=="no-referrer")B.referrer=Sh0(B);if(Y===null){let C=w6(B);if(Ao(C,B.url)&&B.responseTainting==="basic"||C.protocol==="data:"||(B.mode==="navigate"||B.mode==="websocket"))B.responseTainting="basic",Y=await gOQ(A);else if(B.mode==="same-origin")Y=dB('request mode cannot be "same-origin"');else if(B.mode==="no-cors")if(B.redirect!=="follow")Y=dB('redirect mode cannot be "follow" for "no-cors" request');else B.responseTainting="opaque",Y=await gOQ(A);else if(!aS(w6(B)))Y=dB("URL scheme must be a HTTP(S) scheme");else B.responseTainting="cors",Y=await cOQ(A)}if(Q)return Y;if(Y.status!==0&&!Y.internalResponse){if(B.responseTainting==="cors");if(B.responseTainting==="basic")Y=aa(Y,"basic");else if(B.responseTainting==="cors")Y=aa(Y,"cors");else if(B.responseTainting==="opaque")Y=aa(Y,"opaque");else o$(!1)}let J=Y.status===0?Y:Y.internalResponse;if(J.urlList.length===0)J.urlList.push(...B.urlList);if(!B.timingAllowFailed)Y.timingAllowPassed=!0;if(Y.type==="opaque"&&J.status===206&&J.rangeRequested&&!B.headers.contains("range",!0))Y=J=dB();if(Y.status!==0&&(B.method==="HEAD"||B.method==="CONNECT"||fOQ.includes(J.status)))J.body=null,A.controller.dump=!0;if(B.integrity){let C=(G)=>ea(A,dB(G));if(B.responseTainting==="opaque"||Y.body==null){C(Y.error);return}let X=(G)=>{if(!Qg0(G,B.integrity)){C("integrity mismatch");return}Y.body=Bo(G)[0],ea(A,Y)};_h0(Y.body,X,C)}else ea(A,Y)}catch(B){A.controller.terminate(B)}}function gOQ(A){if(a$(A)&&A.request.redirectCount===0)return Promise.resolve(iS(A));let{request:Q}=A,{protocol:B}=w6(Q);switch(B){case"about:":return Promise.resolve(dB("about scheme is not supported"));case"blob:":{if(!oa)oa=u("node:buffer").resolveObjectURL;let Y=w6(Q);if(Y.search.length!==0)return Promise.resolve(dB("NetworkError when attempting to fetch resource."));let J=oa(Y.toString());if(Q.method!=="GET"||!Yo.is.Blob(J))return Promise.resolve(dB("invalid method"));let C=nS(),X=J.size,G=sS(`${X}`),F=J.type;if(!Q.headersList.contains("range",!0)){let W=yOQ(J);C.statusText="OK",C.body=W[0],C.headersList.set("content-length",G,!0),C.headersList.set("content-type",F,!0)}else{C.rangeRequested=!0;let W=Q.headersList.get("range",!0),Z=xh0(W,!0);if(Z==="failure")return Promise.resolve(dB("failed to fetch the data URL"));let{rangeStartValue:U,rangeEndValue:$}=Z;if(U===null)U=X-$,$=U+$-1;else{if(U>=X)return Promise.resolve(dB("Range start is greater than the blob's size."));if($===null||$>=X)$=X-1}let E=J.slice(U,$,F),K=yOQ(E);C.body=K[0];let I=sS(`${E.size}`),V=fh0(U,$,X);C.status=206,C.statusText="Partial Content",C.headersList.set("content-length",I,!0),C.headersList.set("content-type",F,!0),C.headersList.set("content-range",V,!0)}return Promise.resolve(C)}case"data:":{let Y=w6(Q),J=ah0(Y);if(J==="failure")return Promise.resolve(dB("failed to fetch the data URL"));let C=oh0(J.mimeType);return Promise.resolve(nS({statusText:"OK",headersList:[["content-type",{name:"Content-Type",value:C}]],body:Bo(J.body)[0]}))}case"file:":return Promise.resolve(dB("not implemented... yet..."));case"http:":case"https:":return cOQ(A).catch((Y)=>dB(Y));default:return Promise.resolve(dB("unknown scheme"))}}function Fg0(A,Q){if(A.request.done=!0,A.processResponseDone!=null)queueMicrotask(()=>A.processResponseDone(Q))}function ea(A,Q){let B=A.timingInfo,Y=()=>{let C=Date.now();if(A.request.destination==="document")A.controller.fullTimingInfo=B;A.controller.reportTimingSteps=()=>{if(!aS(A.request.url))return;B.endTime=C;let{cacheState:G,bodyInfo:F}=Q;if(!Q.timingAllowPassed)B=Qo(B),G="";let W=0;if(A.request.mode!=="navigator"||!Q.hasCrossOriginRedirects){W=Q.status;let Z=mh0(Q.headersList);if(Z!=="failure")F.contentType=th0(Z)}if(A.request.initiatorType!=null)mOQ(B,A.request.url.href,A.request.initiatorType,globalThis,G,F,W)};let X=()=>{if(A.request.done=!0,A.processResponseEndOfBody!=null)queueMicrotask(()=>A.processResponseEndOfBody(Q));if(A.request.initiatorType!=null)A.controller.reportTimingSteps()};queueMicrotask(()=>X())};if(A.processResponse!=null)queueMicrotask(()=>{A.processResponse(Q),A.processResponse=null});let J=Q.type==="error"?Q:Q.internalResponse??Q;if(J.body==null)Y();else nh0(J.body.stream,()=>{Y()})}async function cOQ(A){let Q=A.request,B=null,Y=null,J=A.timingInfo;if(Q.serviceWorkers==="all");if(B===null){if(Q.redirect==="follow")Q.serviceWorkers="none";if(Y=B=await lOQ(A),Q.responseTainting==="cors"&&Ph0(Q,B)==="failure")return dB("cors failure");if(Mh0(Q,B)==="failure")Q.timingAllowFailed=!0}if((Q.responseTainting==="opaque"||B.type==="opaque")&&Th0(Q.origin,Q.client,Q.destination,Y)==="blocked")return dB("blocked");if(xOQ.has(Y.status)){if(Q.redirect!=="manual")A.controller.connection.destroy(void 0,!1);if(Q.redirect==="error")B=dB("unexpected redirect");else if(Q.redirect==="manual")B=Y;else if(Q.redirect==="follow")B=await Wg0(A,B);else o$(!1)}return B.timingInfo=J,B}function Wg0(A,Q){let B=A.request,Y=Q.internalResponse?Q.internalResponse:Q,J;try{if(J=Rh0(Y,w6(B).hash),J==null)return Q}catch(X){return Promise.resolve(dB(X))}if(!aS(J))return Promise.resolve(dB("URL scheme must be a HTTP(S) scheme"));if(B.redirectCount===20)return Promise.resolve(dB("redirect count exceeded"));if(B.redirectCount+=1,B.mode==="cors"&&(J.username||J.password)&&!Ao(B,J))return Promise.resolve(dB('cross origin not allowed for request mode "cors"'));if(B.responseTainting==="cors"&&(J.username||J.password))return Promise.resolve(dB('URL cannot contain credentials for request mode "cors"'));if(Y.status!==303&&B.body!=null&&B.body.source==null)return Promise.resolve(dB());if([301,302].includes(Y.status)&&B.method==="POST"||Y.status===303&&!Jg0.includes(B.method)){B.method="GET",B.body=null;for(let X of dh0)B.headersList.delete(X)}if(!Ao(w6(B),J))B.headersList.delete("authorization",!0),B.headersList.delete("proxy-authorization",!0),B.headersList.delete("cookie",!0),B.headersList.delete("host",!0);if(B.body!=null)o$(B.body.source!=null),B.body=Bo(B.body.source)[0];let C=A.timingInfo;if(C.redirectEndTime=C.postRedirectStartTime=bq(A.crossOriginIsolatedCapability),C.redirectStartTime===0)C.redirectStartTime=C.startTime;return B.urlList.push(J),wh0(B,Y),dOQ(A,!0)}async function lOQ(A,Q=!1,B=!1){let Y=A.request,J=null,C=null,X=null,G=null,F=!1;if(Y.window==="no-window"&&Y.redirect==="error")J=A,C=Y;else C=Ih0(Y),J={...A},J.request=C;let W=Y.credentials==="include"||Y.credentials==="same-origin"&&Y.responseTainting==="basic",Z=C.body?C.body.length:null,U=null;if(C.body==null&&["POST","PUT"].includes(C.method))U="0";if(Z!=null)U=sS(`${Z}`);if(U!=null)C.headersList.append("content-length",U,!0);if(Z!=null&&C.keepalive);if(Yo.is.URL(C.referrer))C.headersList.append("referer",sS(C.referrer.href),!0);if(zh0(C),Oh0(C),!C.headersList.contains("user-agent",!0))C.headersList.append("user-agent",Cg0,!0);if(C.cache==="default"&&(C.headersList.contains("if-modified-since",!0)||C.headersList.contains("if-none-match",!0)||C.headersList.contains("if-unmodified-since",!0)||C.headersList.contains("if-match",!0)||C.headersList.contains("if-range",!0)))C.cache="no-store";if(C.cache==="no-cache"&&!C.preventNoCacheCacheControlHeaderModification&&!C.headersList.contains("cache-control",!0))C.headersList.append("cache-control","max-age=0",!0);if(C.cache==="no-store"||C.cache==="reload"){if(!C.headersList.contains("pragma",!0))C.headersList.append("pragma","no-cache",!0);if(!C.headersList.contains("cache-control",!0))C.headersList.append("cache-control","no-cache",!0)}if(C.headersList.contains("range",!0))C.headersList.append("accept-encoding","identity",!0);if(!C.headersList.contains("accept-encoding",!0))if(hh0(w6(C)))C.headersList.append("accept-encoding","br, gzip, deflate",!0);else C.headersList.append("accept-encoding","gzip, deflate",!0);if(C.headersList.delete("host",!0),G==null)C.cache="no-store";if(C.cache!=="no-store"&&C.cache!=="reload");if(X==null){if(C.cache==="only-if-cached")return dB("only if cached");let $=await Zg0(J,W,B);if(!uh0.has(C.method)&&$.status>=200&&$.status<=399);if(F&&$.status===304);if(X==null)X=$}if(X.urlList=[...C.urlList],C.headersList.contains("range",!0))X.rangeRequested=!0;if(X.requestIncludesCredentials=W,X.status===407){if(Y.window==="no-window")return dB();if(a$(A))return iS(A);return dB("proxy authentication required")}if(X.status===421&&!B&&(Y.body==null||Y.body.source!=null)){if(a$(A))return iS(A);A.controller.connection.destroy(),X=await lOQ(A,Q,!0)}return X}async function Zg0(A,Q=!1,B=!1){o$(!A.controller.connection||A.controller.connection.destroyed),A.controller.connection={abort:null,destroyed:!1,destroy(K,I=!0){if(!this.destroyed){if(this.destroyed=!0,I)this.abort?.(K??new DOMException("The operation was aborted.","AbortError"))}}};let Y=A.request,J=null,C=A.timingInfo;if(!0)Y.cache="no-store";let G=B?"yes":"no";if(Y.mode==="websocket");let F=null;if(Y.body==null&&A.processRequestEndOfBody)queueMicrotask(()=>A.processRequestEndOfBody());else if(Y.body!=null){let K=async function*(H){if(a$(A))return;yield H,A.processRequestBodyChunkLength?.(H.byteLength)},I=()=>{if(a$(A))return;if(A.processRequestEndOfBody)A.processRequestEndOfBody()},V=(H)=>{if(a$(A))return;if(H.name==="AbortError")A.controller.abort();else A.controller.terminate(H)};F=async function*(){try{for await(let H of Y.body.stream)yield*K(H);I()}catch(H){V(H)}}()}try{let{body:K,status:I,statusText:V,headersList:H,socket:D}=await E({body:F});if(D)J=nS({status:I,statusText:V,headersList:H,socket:D});else{let L=K[Symbol.asyncIterator]();A.controller.next=()=>L.next(),J=nS({status:I,statusText:V,headersList:H})}}catch(K){if(K.name==="AbortError")return A.controller.connection.destroy(),iS(A,K);return dB(K)}let U=new ReadableStream({start(K){A.controller.controller=K},pull:()=>{return A.controller.resume()},cancel:(K)=>{if(!a$(A))A.controller.abort(K)},type:"bytes"});if(J.body={stream:U,source:null,length:null},!A.controller.resume)A.controller.on("terminated",$);A.controller.resume=async()=>{while(!0){let K,I;try{let{done:H,value:D}=await A.controller.next();if(vOQ(A))break;K=H?void 0:D}catch(H){if(A.controller.ended&&!C.encodedBodySize)K=void 0;else K=H,I=!0}if(K===void 0){vh0(A.controller.controller),Fg0(A,J);return}if(C.decodedBodySize+=K?.byteLength??0,I){A.controller.terminate(K);return}let V=new Uint8Array(K);if(V.byteLength)A.controller.controller.enqueue(V);if(sh0(U)){A.controller.terminate();return}if(A.controller.controller.desiredSize<=0)return}};function $(K){if(vOQ(A)){if(J.aborted=!0,rS(U))A.controller.controller.error(A.controller.serializedAbortReason)}else if(rS(U))A.controller.controller.error(TypeError("terminated",{cause:kh0(K)?K:void 0}));A.controller.connection.destroy()}return J;function E({body:K}){let I=w6(Y),V=A.controller.dispatcher;return new Promise((H,D)=>V.dispatch({path:I.pathname+I.search,origin:I.origin,method:Y.method,body:V.isMockActive?Y.body&&(Y.body.source||Y.body.stream):K,headers:Y.headersList.entries,maxRedirections:0,upgrade:Y.mode==="websocket"?"websocket":void 0},{body:null,abort:null,onConnect(L){let{connection:z}=A.controller;if(C.finalConnectionTimingInfo=gh0(void 0,C.postRedirectStartTime,A.crossOriginIsolatedCapability),z.destroyed)L(new DOMException("The operation was aborted.","AbortError"));else A.controller.on("terminated",L),this.abort=z.abort=L;C.finalNetworkRequestStartTime=bq(A.crossOriginIsolatedCapability)},onResponseStarted(){C.finalNetworkResponseStartTime=bq(A.crossOriginIsolatedCapability)},onHeaders(L,z,M,N){if(L<200)return!1;let q=new _OQ;for(let k=0;k=0;--S){let v=T[S].trim();if(v==="x-gzip"||v==="gzip")_.push(YC.createGunzip({flush:YC.constants.Z_SYNC_FLUSH,finishFlush:YC.constants.Z_SYNC_FLUSH}));else if(v==="deflate")_.push(bh0({flush:YC.constants.Z_SYNC_FLUSH,finishFlush:YC.constants.Z_SYNC_FLUSH}));else if(v==="br")_.push(YC.createBrotliDecompress({flush:YC.constants.BROTLI_OPERATION_FLUSH,finishFlush:YC.constants.BROTLI_OPERATION_FLUSH}));else if(v==="zstd"&&Yg0)_.push(YC.createZstdDecompress({flush:YC.constants.ZSTD_e_continue,finishFlush:YC.constants.ZSTD_e_end}));else{_.length=0;break}}}let O=this.onError.bind(this);return H({status:L,statusText:N,headersList:q,body:_.length?ih0(this.body,..._,(k)=>{if(k)this.onError(k)}).on("error",O):this.body.on("error",O)}),!0},onData(L){if(A.controller.dump)return;let z=L;return C.encodedBodySize+=z.byteLength,this.body.push(z)},onComplete(){if(this.abort)A.controller.off("terminated",this.abort);A.controller.ended=!0,this.body.push(null)},onError(L){if(this.abort)A.controller.off("terminated",this.abort);this.body?.destroy(L),A.controller.terminate(L),D(L)},onUpgrade(L,z,M){if(L!==101)return;let N=new _OQ;for(let q=0;q{var $g0=u("node:assert"),{URLSerializer:iOQ}=g8(),{isValidHeaderName:Ug0}=H9();function Eg0(A,Q,B=!1){let Y=iOQ(A,B),J=iOQ(Q,B);return Y===J}function Kg0(A){$g0(A!==null);let Q=[];for(let B of A.split(","))if(B=B.trim(),Ug0(B))Q.push(B);return Q}nOQ.exports={urlEquals:Eg0,getFieldValues:Kg0}});var oOQ=R((enY,aOQ)=>{var Co=u("node:assert"),{kConstruct:Vg0}=Q0(),{urlEquals:Ig0,getFieldValues:Xo}=sOQ(),{kEnumerableProperty:t$,isDisturbed:Hg0}=lQ(),{webidl:JQ}=UJ(),{cloneResponse:Dg0,fromInnerResponse:Ng0,getResponseState:Lg0}=fq(),{Request:uq,fromInnerRequest:qg0,getRequestState:j6}=$V(),{fetching:Mg0}=mq(),{urlIsHttpHttpsScheme:oS,readAllBytes:zg0}=H9(),{createDeferredPromise:UV}=Jq();class O6{#A;constructor(){if(arguments[0]!==Vg0)JQ.illegalConstructor();JQ.util.markAsUncloneable(this),this.#A=arguments[1]}async match(A,Q={}){JQ.brandCheck(this,O6);let B="Cache.match";JQ.argumentLengthCheck(arguments,1,B),A=JQ.converters.RequestInfo(A),Q=JQ.converters.CacheQueryOptions(Q,B,"options");let Y=this.#J(A,Q,1);if(Y.length===0)return;return Y[0]}async matchAll(A=void 0,Q={}){JQ.brandCheck(this,O6);let B="Cache.matchAll";if(A!==void 0)A=JQ.converters.RequestInfo(A);return Q=JQ.converters.CacheQueryOptions(Q,B,"options"),this.#J(A,Q)}async add(A){JQ.brandCheck(this,O6);let Q="Cache.add";JQ.argumentLengthCheck(arguments,1,Q),A=JQ.converters.RequestInfo(A);let B=[A];return await this.addAll(B)}async addAll(A){JQ.brandCheck(this,O6);let Q="Cache.addAll";JQ.argumentLengthCheck(arguments,1,Q);let B=[],Y=[];for(let U of A){if(U===void 0)throw JQ.errors.conversionFailed({prefix:Q,argument:"Argument 1",types:["undefined is not allowed"]});if(U=JQ.converters.RequestInfo(U),typeof U==="string")continue;let $=j6(U);if(!oS($.url)||$.method!=="GET")throw JQ.errors.exception({header:Q,message:"Expected http/s scheme when method is not GET."})}let J=[];for(let U of A){let $=j6(new uq(U));if(!oS($.url))throw JQ.errors.exception({header:Q,message:"Expected http/s scheme."});$.initiator="fetch",$.destination="subresource",Y.push($);let E=UV();J.push(Mg0({request:$,processResponse(K){if(K.type==="error"||K.status===206||K.status<200||K.status>299)E.reject(JQ.errors.exception({header:"Cache.addAll",message:"Received an invalid status code or the request failed."}));else if(K.headersList.contains("vary")){let I=Xo(K.headersList.get("vary"));for(let V of I)if(V==="*"){E.reject(JQ.errors.exception({header:"Cache.addAll",message:"invalid vary field value"}));for(let H of J)H.abort();return}}},processResponseEndOfBody(K){if(K.aborted){E.reject(new DOMException("aborted","AbortError"));return}E.resolve(K)}})),B.push(E.promise)}let X=await Promise.all(B),G=[],F=0;for(let U of X){let $={type:"put",request:Y[F],response:U};G.push($),F++}let W=UV(),Z=null;try{this.#Q(G)}catch(U){Z=U}return queueMicrotask(()=>{if(Z===null)W.resolve(void 0);else W.reject(Z)}),W.promise}async put(A,Q){JQ.brandCheck(this,O6);let B="Cache.put";JQ.argumentLengthCheck(arguments,2,B),A=JQ.converters.RequestInfo(A),Q=JQ.converters.Response(Q,B,"response");let Y=null;if(JQ.is.Request(A))Y=j6(A);else Y=j6(new uq(A));if(!oS(Y.url)||Y.method!=="GET")throw JQ.errors.exception({header:B,message:"Expected an http/s scheme when method is not GET"});let J=Lg0(Q);if(J.status===206)throw JQ.errors.exception({header:B,message:"Got 206 status"});if(J.headersList.contains("vary")){let $=Xo(J.headersList.get("vary"));for(let E of $)if(E==="*")throw JQ.errors.exception({header:B,message:"Got * vary field value"})}if(J.body&&(Hg0(J.body.stream)||J.body.stream.locked))throw JQ.errors.exception({header:B,message:"Response body is locked or disturbed"});let C=Dg0(J),X=UV();if(J.body!=null){let E=J.body.stream.getReader();zg0(E,X.resolve,X.reject)}else X.resolve(void 0);let G=[],F={type:"put",request:Y,response:C};G.push(F);let W=await X.promise;if(C.body!=null)C.body.source=W;let Z=UV(),U=null;try{this.#Q(G)}catch($){U=$}return queueMicrotask(()=>{if(U===null)Z.resolve();else Z.reject(U)}),Z.promise}async delete(A,Q={}){JQ.brandCheck(this,O6);let B="Cache.delete";JQ.argumentLengthCheck(arguments,1,B),A=JQ.converters.RequestInfo(A),Q=JQ.converters.CacheQueryOptions(Q,B,"options");let Y=null;if(JQ.is.Request(A)){if(Y=j6(A),Y.method!=="GET"&&!Q.ignoreMethod)return!1}else Co(typeof A==="string"),Y=j6(new uq(A));let J=[],C={type:"delete",request:Y,options:Q};J.push(C);let X=UV(),G=null,F;try{F=this.#Q(J)}catch(W){G=W}return queueMicrotask(()=>{if(G===null)X.resolve(!!F?.length);else X.reject(G)}),X.promise}async keys(A=void 0,Q={}){JQ.brandCheck(this,O6);let B="Cache.keys";if(A!==void 0)A=JQ.converters.RequestInfo(A);Q=JQ.converters.CacheQueryOptions(Q,B,"options");let Y=null;if(A!==void 0){if(JQ.is.Request(A)){if(Y=j6(A),Y.method!=="GET"&&!Q.ignoreMethod)return[]}else if(typeof A==="string")Y=j6(new uq(A))}let J=UV(),C=[];if(A===void 0)for(let X of this.#A)C.push(X[0]);else{let X=this.#B(Y,Q);for(let G of X)C.push(G[0])}return queueMicrotask(()=>{let X=[];for(let G of C){let F=qg0(G,void 0,new AbortController().signal,"immutable");X.push(F)}J.resolve(Object.freeze(X))}),J.promise}#Q(A){let Q=this.#A,B=[...Q],Y=[],J=[];try{for(let C of A){if(C.type!=="delete"&&C.type!=="put")throw JQ.errors.exception({header:"Cache.#batchCacheOperations",message:'operation type does not match "delete" or "put"'});if(C.type==="delete"&&C.response!=null)throw JQ.errors.exception({header:"Cache.#batchCacheOperations",message:"delete operation should not have an associated response"});if(this.#B(C.request,C.options,Y).length)throw new DOMException("???","InvalidStateError");let X;if(C.type==="delete"){if(X=this.#B(C.request,C.options),X.length===0)return[];for(let G of X){let F=Q.indexOf(G);Co(F!==-1),Q.splice(F,1)}}else if(C.type==="put"){if(C.response==null)throw JQ.errors.exception({header:"Cache.#batchCacheOperations",message:"put operation should have an associated response"});let G=C.request;if(!oS(G.url))throw JQ.errors.exception({header:"Cache.#batchCacheOperations",message:"expected http or https scheme"});if(G.method!=="GET")throw JQ.errors.exception({header:"Cache.#batchCacheOperations",message:"not get method"});if(C.options!=null)throw JQ.errors.exception({header:"Cache.#batchCacheOperations",message:"options must not be defined"});X=this.#B(C.request);for(let F of X){let W=Q.indexOf(F);Co(W!==-1),Q.splice(W,1)}Q.push([C.request,C.response]),Y.push([C.request,C.response])}J.push([C.request,C.response])}return J}catch(C){throw this.#A.length=0,this.#A=B,C}}#B(A,Q,B){let Y=[],J=B??this.#A;for(let C of J){let[X,G]=C;if(this.#Y(A,X,G,Q))Y.push(C)}return Y}#Y(A,Q,B=null,Y){let J=new URL(A.url),C=new URL(Q.url);if(Y?.ignoreSearch)C.search="",J.search="";if(!Ig0(J,C,!0))return!1;if(B==null||Y?.ignoreVary||!B.headersList.contains("vary"))return!0;let X=Xo(B.headersList.get("vary"));for(let G of X){if(G==="*")return!1;let F=Q.headersList.get(G),W=A.headersList.get(G);if(F!==W)return!1}return!0}#J(A,Q,B=1/0){let Y=null;if(A!==void 0){if(JQ.is.Request(A)){if(Y=j6(A),Y.method!=="GET"&&!Q.ignoreMethod)return[]}else if(typeof A==="string")Y=j6(new uq(A))}let J=[];if(A===void 0)for(let X of this.#A)J.push(X[1]);else{let X=this.#B(Y,Q);for(let G of X)J.push(G[1])}let C=[];for(let X of J){let G=Ng0(X,"immutable");if(C.push(G.clone()),C.length>=B)break}return Object.freeze(C)}}Object.defineProperties(O6.prototype,{[Symbol.toStringTag]:{value:"Cache",configurable:!0},match:t$,matchAll:t$,add:t$,addAll:t$,put:t$,delete:t$,keys:t$});var rOQ=[{key:"ignoreSearch",converter:JQ.converters.boolean,defaultValue:()=>!1},{key:"ignoreMethod",converter:JQ.converters.boolean,defaultValue:()=>!1},{key:"ignoreVary",converter:JQ.converters.boolean,defaultValue:()=>!1}];JQ.converters.CacheQueryOptions=JQ.dictionaryConverter(rOQ);JQ.converters.MultiCacheQueryOptions=JQ.dictionaryConverter([...rOQ,{key:"cacheName",converter:JQ.converters.DOMString}]);JQ.converters.Response=JQ.interfaceConverter(JQ.is.Response,"Response");JQ.converters["sequence"]=JQ.sequenceConverter(JQ.converters.RequestInfo);aOQ.exports={Cache:O6}});var eOQ=R((AsY,tOQ)=>{var{Cache:tS}=oOQ(),{webidl:gJ}=UJ(),{kEnumerableProperty:dq}=lQ(),{kConstruct:cq}=Q0();class JW{#A=new Map;constructor(){if(arguments[0]!==cq)gJ.illegalConstructor();gJ.util.markAsUncloneable(this)}async match(A,Q={}){if(gJ.brandCheck(this,JW),gJ.argumentLengthCheck(arguments,1,"CacheStorage.match"),A=gJ.converters.RequestInfo(A),Q=gJ.converters.MultiCacheQueryOptions(Q),Q.cacheName!=null){if(this.#A.has(Q.cacheName)){let B=this.#A.get(Q.cacheName);return await new tS(cq,B).match(A,Q)}}else for(let B of this.#A.values()){let J=await new tS(cq,B).match(A,Q);if(J!==void 0)return J}}async has(A){gJ.brandCheck(this,JW);let Q="CacheStorage.has";return gJ.argumentLengthCheck(arguments,1,Q),A=gJ.converters.DOMString(A,Q,"cacheName"),this.#A.has(A)}async open(A){gJ.brandCheck(this,JW);let Q="CacheStorage.open";if(gJ.argumentLengthCheck(arguments,1,Q),A=gJ.converters.DOMString(A,Q,"cacheName"),this.#A.has(A)){let Y=this.#A.get(A);return new tS(cq,Y)}let B=[];return this.#A.set(A,B),new tS(cq,B)}async delete(A){gJ.brandCheck(this,JW);let Q="CacheStorage.delete";return gJ.argumentLengthCheck(arguments,1,Q),A=gJ.converters.DOMString(A,Q,"cacheName"),this.#A.delete(A)}async keys(){return gJ.brandCheck(this,JW),[...this.#A.keys()]}}Object.defineProperties(JW.prototype,{[Symbol.toStringTag]:{value:"CacheStorage",configurable:!0},match:dq,has:dq,open:dq,delete:dq,keys:dq});tOQ.exports={CacheStorage:JW}});var QPQ=R((QsY,APQ)=>{APQ.exports={maxAttributeValueSize:1024,maxNameValuePairSize:4096}});var Go=R((BsY,XPQ)=>{function Rg0(A){for(let Q=0;Q=0&&B<=8||B>=10&&B<=31||B===127)return!0}return!1}function BPQ(A){for(let Q=0;Q126||B===34||B===40||B===41||B===60||B===62||B===64||B===44||B===59||B===58||B===92||B===47||B===91||B===93||B===63||B===61||B===123||B===125)throw Error("Invalid cookie name")}}function YPQ(A){let Q=A.length,B=0;if(A[0]==='"'){if(Q===1||A[Q-1]!=='"')throw Error("Invalid cookie value");--Q,++B}while(B126||Y===34||Y===44||Y===59||Y===92)throw Error("Invalid cookie value")}}function JPQ(A){for(let Q=0;QQ.toString().padStart(2,"0"));function CPQ(A){if(typeof A==="number")A=new Date(A);return`${jg0[A.getUTCDay()]}, ${eS[A.getUTCDate()]} ${Og0[A.getUTCMonth()]} ${A.getUTCFullYear()} ${eS[A.getUTCHours()]}:${eS[A.getUTCMinutes()]}:${eS[A.getUTCSeconds()]} GMT`}function Pg0(A){if(A<0)throw Error("Invalid cookie max-age")}function Tg0(A){if(A.name.length===0)return null;BPQ(A.name),YPQ(A.value);let Q=[`${A.name}=${A.value}`];if(A.name.startsWith("__Secure-"))A.secure=!0;if(A.name.startsWith("__Host-"))A.secure=!0,A.domain=null,A.path="/";if(A.secure)Q.push("Secure");if(A.httpOnly)Q.push("HttpOnly");if(typeof A.maxAge==="number")Pg0(A.maxAge),Q.push(`Max-Age=${A.maxAge}`);if(A.domain)wg0(A.domain),Q.push(`Domain=${A.domain}`);if(A.path)JPQ(A.path),Q.push(`Path=${A.path}`);if(A.expires&&A.expires.toString()!=="Invalid Date")Q.push(`Expires=${CPQ(A.expires)}`);if(A.sameSite)Q.push(`SameSite=${A.sameSite}`);for(let B of A.unparsed){if(!B.includes("="))throw Error("Invalid unparsed");let[Y,...J]=B.split("=");Q.push(`${Y.trim()}=${J.join("=")}`)}return Q.join("; ")}XPQ.exports={isCTLExcludingHtab:Rg0,validateCookieName:BPQ,validateCookiePath:JPQ,validateCookieValue:YPQ,toIMFDate:CPQ,stringify:Tg0}});var FPQ=R((YsY,GPQ)=>{var{maxNameValuePairSize:Sg0,maxAttributeValueSize:kg0}=QPQ(),{isCTLExcludingHtab:_g0}=Go(),{collectASequenceOfCodePointsFast:Ak}=g8(),vg0=u("node:assert"),{unescape:yg0}=u("node:querystring");function hg0(A){if(_g0(A))return null;let Q="",B="",Y="",J="";if(A.includes(";")){let C={position:0};Q=Ak(";",A,C),B=A.slice(C.position)}else Q=A;if(!Q.includes("="))J=Q;else{let C={position:0};Y=Ak("=",Q,C),J=Q.slice(C.position+1)}if(Y=Y.trim(),J=J.trim(),Y.length+J.length>Sg0)return null;return{name:Y,value:yg0(J),...EV(B)}}function EV(A,Q={}){if(A.length===0)return Q;vg0(A[0]===";"),A=A.slice(1);let B="";if(A.includes(";"))B=Ak(";",A,{position:0}),A=A.slice(B.length);else B=A,A="";let Y="",J="";if(B.includes("=")){let X={position:0};Y=Ak("=",B,X),J=B.slice(X.position+1)}else Y=B;if(Y=Y.trim(),J=J.trim(),J.length>kg0)return EV(A,Q);let C=Y.toLowerCase();if(C==="expires"){let X=new Date(J);Q.expires=X}else if(C==="max-age"){let X=J.charCodeAt(0);if((X<48||X>57)&&J[0]!=="-")return EV(A,Q);if(!/^\d+$/.test(J))return EV(A,Q);let G=Number(J);Q.maxAge=G}else if(C==="domain"){let X=J;if(X[0]===".")X=X.slice(1);X=X.toLowerCase(),Q.domain=X}else if(C==="path"){let X="";if(J.length===0||J[0]!=="/")X="/";else X=J;Q.path=X}else if(C==="secure")Q.secure=!0;else if(C==="httponly")Q.httpOnly=!0;else if(C==="samesite"){let X="Default",G=J.toLowerCase();if(G.includes("none"))X="None";if(G.includes("strict"))X="Strict";if(G.includes("lax"))X="Lax";Q.sameSite=X}else Q.unparsed??=[],Q.unparsed.push(`${Y}=${J}`);return EV(A,Q)}GPQ.exports={parseSetCookie:hg0,parseUnparsedAttributes:EV}});var UPQ=R((JsY,$PQ)=>{var{parseSetCookie:WPQ}=FPQ(),{stringify:gg0}=Go(),{webidl:zB}=UJ(),{Headers:xg0}=n$(),Qk=zB.brandCheckMultiple([xg0,globalThis.Headers].filter(Boolean));function fg0(A){zB.argumentLengthCheck(arguments,1,"getCookies"),Qk(A);let Q=A.get("cookie"),B={};if(!Q)return B;for(let Y of Q.split(";")){let[J,...C]=Y.split("=");B[J.trim()]=C.join("=")}return B}function bg0(A,Q,B){Qk(A);let Y="deleteCookie";zB.argumentLengthCheck(arguments,2,Y),Q=zB.converters.DOMString(Q,Y,"name"),B=zB.converters.DeleteCookieAttributes(B),ZPQ(A,{name:Q,value:"",expires:new Date(0),...B})}function mg0(A){zB.argumentLengthCheck(arguments,1,"getSetCookies"),Qk(A);let Q=A.getSetCookie();if(!Q)return[];return Q.map((B)=>WPQ(B))}function ug0(A){return A=zB.converters.DOMString(A),WPQ(A)}function ZPQ(A,Q){zB.argumentLengthCheck(arguments,2,"setCookie"),Qk(A),Q=zB.converters.Cookie(Q);let B=gg0(Q);if(B)A.append("set-cookie",B,!0)}zB.converters.DeleteCookieAttributes=zB.dictionaryConverter([{converter:zB.nullableConverter(zB.converters.DOMString),key:"path",defaultValue:()=>null},{converter:zB.nullableConverter(zB.converters.DOMString),key:"domain",defaultValue:()=>null}]);zB.converters.Cookie=zB.dictionaryConverter([{converter:zB.converters.DOMString,key:"name"},{converter:zB.converters.DOMString,key:"value"},{converter:zB.nullableConverter((A)=>{if(typeof A==="number")return zB.converters["unsigned long long"](A);return new Date(A)}),key:"expires",defaultValue:()=>null},{converter:zB.nullableConverter(zB.converters["long long"]),key:"maxAge",defaultValue:()=>null},{converter:zB.nullableConverter(zB.converters.DOMString),key:"domain",defaultValue:()=>null},{converter:zB.nullableConverter(zB.converters.DOMString),key:"path",defaultValue:()=>null},{converter:zB.nullableConverter(zB.converters.boolean),key:"secure",defaultValue:()=>null},{converter:zB.nullableConverter(zB.converters.boolean),key:"httpOnly",defaultValue:()=>null},{converter:zB.converters.USVString,key:"sameSite",allowedValues:["Strict","Lax","None"]},{converter:zB.sequenceConverter(zB.converters.DOMString),key:"unparsed",defaultValue:()=>[]}]);$PQ.exports={getCookies:fg0,deleteCookie:bg0,getSetCookies:mg0,setCookie:ZPQ,parseCookie:ug0}});var Bk=R((CsY,KPQ)=>{var{webidl:WQ}=UJ(),{kEnumerableProperty:o9}=lQ(),{kConstruct:EPQ}=Q0();class u8 extends Event{#A;constructor(A,Q={}){if(A===EPQ){super(arguments[1],arguments[2]);WQ.util.markAsUncloneable(this);return}let B="MessageEvent constructor";WQ.argumentLengthCheck(arguments,1,B),A=WQ.converters.DOMString(A,B,"type"),Q=WQ.converters.MessageEventInit(Q,B,"eventInitDict");super(A,Q);this.#A=Q,WQ.util.markAsUncloneable(this)}get data(){return WQ.brandCheck(this,u8),this.#A.data}get origin(){return WQ.brandCheck(this,u8),this.#A.origin}get lastEventId(){return WQ.brandCheck(this,u8),this.#A.lastEventId}get source(){return WQ.brandCheck(this,u8),this.#A.source}get ports(){if(WQ.brandCheck(this,u8),!Object.isFrozen(this.#A.ports))Object.freeze(this.#A.ports);return this.#A.ports}initMessageEvent(A,Q=!1,B=!1,Y=null,J="",C="",X=null,G=[]){return WQ.brandCheck(this,u8),WQ.argumentLengthCheck(arguments,1,"MessageEvent.initMessageEvent"),new u8(A,{bubbles:Q,cancelable:B,data:Y,origin:J,lastEventId:C,source:X,ports:G})}static createFastMessageEvent(A,Q){let B=new u8(EPQ,A,Q);return B.#A=Q,B.#A.data??=null,B.#A.origin??="",B.#A.lastEventId??="",B.#A.source??=null,B.#A.ports??=[],B}}var{createFastMessageEvent:dg0}=u8;delete u8.createFastMessageEvent;class KV extends Event{#A;constructor(A,Q={}){WQ.argumentLengthCheck(arguments,1,"CloseEvent constructor"),A=WQ.converters.DOMString(A,"CloseEvent constructor","type"),Q=WQ.converters.CloseEventInit(Q);super(A,Q);this.#A=Q,WQ.util.markAsUncloneable(this)}get wasClean(){return WQ.brandCheck(this,KV),this.#A.wasClean}get code(){return WQ.brandCheck(this,KV),this.#A.code}get reason(){return WQ.brandCheck(this,KV),this.#A.reason}}class CW extends Event{#A;constructor(A,Q){WQ.argumentLengthCheck(arguments,1,"ErrorEvent constructor");super(A,Q);WQ.util.markAsUncloneable(this),A=WQ.converters.DOMString(A,"ErrorEvent constructor","type"),Q=WQ.converters.ErrorEventInit(Q??{}),this.#A=Q}get message(){return WQ.brandCheck(this,CW),this.#A.message}get filename(){return WQ.brandCheck(this,CW),this.#A.filename}get lineno(){return WQ.brandCheck(this,CW),this.#A.lineno}get colno(){return WQ.brandCheck(this,CW),this.#A.colno}get error(){return WQ.brandCheck(this,CW),this.#A.error}}Object.defineProperties(u8.prototype,{[Symbol.toStringTag]:{value:"MessageEvent",configurable:!0},data:o9,origin:o9,lastEventId:o9,source:o9,ports:o9,initMessageEvent:o9});Object.defineProperties(KV.prototype,{[Symbol.toStringTag]:{value:"CloseEvent",configurable:!0},reason:o9,code:o9,wasClean:o9});Object.defineProperties(CW.prototype,{[Symbol.toStringTag]:{value:"ErrorEvent",configurable:!0},message:o9,filename:o9,lineno:o9,colno:o9,error:o9});WQ.converters.MessagePort=WQ.interfaceConverter(WQ.is.MessagePort,"MessagePort");WQ.converters["sequence"]=WQ.sequenceConverter(WQ.converters.MessagePort);var Fo=[{key:"bubbles",converter:WQ.converters.boolean,defaultValue:()=>!1},{key:"cancelable",converter:WQ.converters.boolean,defaultValue:()=>!1},{key:"composed",converter:WQ.converters.boolean,defaultValue:()=>!1}];WQ.converters.MessageEventInit=WQ.dictionaryConverter([...Fo,{key:"data",converter:WQ.converters.any,defaultValue:()=>null},{key:"origin",converter:WQ.converters.USVString,defaultValue:()=>""},{key:"lastEventId",converter:WQ.converters.DOMString,defaultValue:()=>""},{key:"source",converter:WQ.nullableConverter(WQ.converters.MessagePort),defaultValue:()=>null},{key:"ports",converter:WQ.converters["sequence"],defaultValue:()=>[]}]);WQ.converters.CloseEventInit=WQ.dictionaryConverter([...Fo,{key:"wasClean",converter:WQ.converters.boolean,defaultValue:()=>!1},{key:"code",converter:WQ.converters["unsigned short"],defaultValue:()=>0},{key:"reason",converter:WQ.converters.USVString,defaultValue:()=>""}]);WQ.converters.ErrorEventInit=WQ.dictionaryConverter([...Fo,{key:"message",converter:WQ.converters.DOMString,defaultValue:()=>""},{key:"filename",converter:WQ.converters.USVString,defaultValue:()=>""},{key:"lineno",converter:WQ.converters["unsigned long"],defaultValue:()=>0},{key:"colno",converter:WQ.converters["unsigned long"],defaultValue:()=>0},{key:"error",converter:WQ.converters.any}]);KPQ.exports={MessageEvent:u8,CloseEvent:KV,ErrorEvent:CW,createFastMessageEvent:dg0}});var XW=R((XsY,VPQ)=>{var cg0={enumerable:!0,writable:!1,configurable:!1},lg0={CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3},pg0={SENT:1,RECEIVED:2},ig0={CONTINUATION:0,TEXT:1,BINARY:2,CLOSE:8,PING:9,PONG:10},ng0={INFO:0,PAYLOADLENGTH_16:2,PAYLOADLENGTH_64:3,READ_DATA:4},sg0=Buffer.allocUnsafe(0),rg0={text:1,typedArray:2,arrayBuffer:3,blob:4};VPQ.exports={uid:"258EAFA5-E914-47DA-95CA-C5AB0DC85B11",sentCloseFrameState:pg0,staticPropertyDescriptors:cg0,states:lg0,opcodes:ig0,maxUnsigned16Bit:65535,parserStates:ng0,emptyBuffer:sg0,sendHints:rg0}});var e$=R((GsY,LPQ)=>{var{states:Yk,opcodes:VV}=XW(),{isUtf8:ag0}=u("node:buffer"),{collectASequenceOfCodePointsFast:og0,removeHTTPWhitespace:IPQ}=g8();function tg0(A){return A===Yk.CONNECTING}function eg0(A){return A===Yk.OPEN}function Ax0(A){return A===Yk.CLOSING}function Qx0(A){return A===Yk.CLOSED}function Bx0(A,Q,B=(J,C)=>new Event(J,C),Y={}){let J=B(A,Y);Q.dispatchEvent(J)}function Yx0(A,Q,B){A.onMessage(Q,B)}function Jx0(A){if(A.byteLength===A.buffer.byteLength)return A.buffer;return new Uint8Array(A).buffer}function Cx0(A){if(A.length===0)return!1;for(let Q=0;Q126||B===34||B===40||B===41||B===44||B===47||B===58||B===59||B===60||B===61||B===62||B===63||B===64||B===91||B===92||B===93||B===123||B===125)return!1}return!0}function Xx0(A){if(A>=1000&&A<1015)return A!==1004&&A!==1005&&A!==1006;return A>=3000&&A<=4999}function HPQ(A){return A===VV.CLOSE||A===VV.PING||A===VV.PONG}function DPQ(A){return A===VV.CONTINUATION}function NPQ(A){return A===VV.TEXT||A===VV.BINARY}function Gx0(A){return NPQ(A)||DPQ(A)||HPQ(A)}function Fx0(A){let Q={position:0},B=new Map;while(Q.position57)return!1}return!0}function Zx0(A,Q){let B;try{B=new URL(A,Q)}catch(Y){throw new DOMException(Y,"SyntaxError")}if(B.protocol==="http:")B.protocol="ws:";else if(B.protocol==="https:")B.protocol="wss:";if(B.protocol!=="ws:"&&B.protocol!=="wss:")throw new DOMException("expected a ws: or wss: url","SyntaxError");if(B.hash.length||B.href.endsWith("#"))throw new DOMException("hash","SyntaxError");return B}function $x0(A,Q){if(A!==null){if(A!==1000&&(A<3000||A>4999))throw new DOMException("invalid code","InvalidAccessError")}if(Q!==null){let B=Buffer.byteLength(Q);if(B>123)throw new DOMException(`Reason must be less than 123 bytes; received ${B}`,"SyntaxError")}}var Ux0=(()=>{if(typeof process.versions.icu==="string"){let A=new TextDecoder("utf-8",{fatal:!0});return A.decode.bind(A)}return function(A){if(ag0(A))return A.toString("utf-8");throw TypeError("Invalid utf-8 received.")}})();LPQ.exports={isConnecting:tg0,isEstablished:eg0,isClosing:Ax0,isClosed:Qx0,fireEvent:Bx0,isValidSubprotocol:Cx0,isValidStatusCode:Xx0,websocketMessageReceived:Yx0,utf8Decode:Ux0,isControlFrame:HPQ,isContinuationFrame:DPQ,isTextBinaryFrame:NPQ,isValidOpcode:Gx0,parseExtensions:Fx0,isValidClientWindowBits:Wx0,toArrayBuffer:Jx0,getURLRecord:Zx0,validateCloseCodeAndReason:$x0}});var HV=R((FsY,zPQ)=>{var{maxUnsigned16Bit:qPQ,opcodes:Ex0}=XW(),Wo,lq=null,IV=8192;try{Wo=u("node:crypto")}catch{Wo={randomFillSync:function(Q,B,Y){for(let J=0;JqPQ)C+=8,J=127;else if(Y>125)C+=2,J=126;let X=Buffer.allocUnsafe(Y+C);X[0]=X[1]=0,X[0]|=128,X[0]=(X[0]&240)+A;/*! ws. MIT License. Einar Otto Stangvik */if(X[C-4]=B[0],X[C-3]=B[1],X[C-2]=B[2],X[C-1]=B[3],X[1]=J,J===126)X.writeUInt16BE(Y,2);else if(J===127)X[2]=X[3]=0,X.writeUIntBE(Y,4,6);X[1]|=128;for(let G=0;GqPQ)J+=8,Y=127;else if(B>125)J+=2,Y=126;let C=Buffer.allocUnsafeSlow(J);if(C[0]=128|Ex0.TEXT,C[1]=Y|128,C[J-4]=Q[0],C[J-3]=Q[1],C[J-2]=Q[2],C[J-1]=Q[3],Y===126)C.writeUInt16BE(B,2);else if(Y===127)C[2]=C[3]=0,C.writeUIntBE(B,4,6);return[C,A]}}zPQ.exports={WebsocketFrameSend:MPQ,generateMask:Zo}});var Ck=R((WsY,OPQ)=>{var{uid:Kx0,states:Jk,sentCloseFrameState:$o,emptyBuffer:RPQ,opcodes:Vx0}=XW(),{parseExtensions:Ix0,isClosed:Hx0,isClosing:Dx0,isEstablished:wPQ,validateCloseCodeAndReason:Nx0}=e$(),{makeRequest:Lx0}=$V(),{fetching:qx0}=mq(),{Headers:Mx0,getHeadersList:zx0}=n$(),{getDecodeSplit:Rx0}=H9(),{WebsocketFrameSend:wx0}=HV(),jx0=u("node:assert"),Uo;try{Uo=u("node:crypto")}catch{}function Ox0(A,Q,B,Y,J){let C=A;C.protocol=A.protocol==="ws:"?"http:":"https:";let X=Lx0({urlList:[C],client:B,serviceWorkers:"none",referrer:"no-referrer",mode:"websocket",credentials:"include",cache:"no-store",redirect:"error"});if(J.headers){let Z=zx0(new Mx0(J.headers));X.headersList=Z}let G=Uo.randomBytes(16).toString("base64");X.headersList.append("sec-websocket-key",G,!0),X.headersList.append("sec-websocket-version","13",!0);for(let Z of Q)X.headersList.append("sec-websocket-protocol",Z,!0);let F="permessage-deflate; client_max_window_bits";return X.headersList.append("sec-websocket-extensions",F,!0),qx0({request:X,useParallelQueue:!0,dispatcher:J.dispatcher,processResponse(Z){if(Z.type==="error")Y.readyState=Jk.CLOSED;if(Z.type==="error"||Z.status!==101){_G(Y,1002,"Received network error or non-101 status code.",Z.error);return}if(Q.length!==0&&!Z.headersList.get("Sec-WebSocket-Protocol")){_G(Y,1002,"Server did not respond with sent protocols.");return}if(Z.headersList.get("Upgrade")?.toLowerCase()!=="websocket"){_G(Y,1002,'Server did not set Upgrade header to "websocket".');return}if(Z.headersList.get("Connection")?.toLowerCase()!=="upgrade"){_G(Y,1002,'Server did not set Connection header to "upgrade".');return}let U=Z.headersList.get("Sec-WebSocket-Accept"),$=Uo.createHash("sha1").update(G+Kx0).digest("base64");if(U!==$){_G(Y,1002,"Incorrect hash received in Sec-WebSocket-Accept header.");return}let E=Z.headersList.get("Sec-WebSocket-Extensions"),K;if(E!==null){if(K=Ix0(E),!K.has("permessage-deflate")){_G(Y,1002,"Sec-WebSocket-Extensions header does not match.");return}}let I=Z.headersList.get("Sec-WebSocket-Protocol");if(I!==null){if(!Rx0("sec-websocket-protocol",X.headersList).includes(I)){_G(Y,1002,"Protocol was not set in the opening handshake.");return}}Z.socket.on("data",Y.onSocketData),Z.socket.on("close",Y.onSocketClose),Z.socket.on("error",Y.onSocketError),Y.wasEverConnected=!0,Y.onConnectionEstablished(Z,K)}})}function jPQ(A,Q,B,Y=!1){if(Q??=null,B??="",Y)Nx0(Q,B);if(Hx0(A.readyState)||Dx0(A.readyState));else if(!wPQ(A.readyState))_G(A),A.readyState=Jk.CLOSING;else if(!A.closeState.has($o.SENT)&&!A.closeState.has($o.RECEIVED)){let J=new wx0;if(B.length!==0&&Q===null)Q=1000;if(jx0(Q===null||Number.isInteger(Q)),Q===null&&B.length===0)J.frameData=RPQ;else if(Q!==null&&B===null)J.frameData=Buffer.allocUnsafe(2),J.frameData.writeUInt16BE(Q,0);else if(Q!==null&&B!==null)J.frameData=Buffer.allocUnsafe(2+Buffer.byteLength(B)),J.frameData.writeUInt16BE(Q,0),J.frameData.write(B,2,"utf-8");else J.frameData=RPQ;A.socket.write(J.createFrame(Vx0.CLOSE)),A.closeState.add($o.SENT),A.readyState=Jk.CLOSING}else A.readyState=Jk.CLOSING}function _G(A,Q,B,Y){if(wPQ(A.readyState))jPQ(A,Q,B,!1);if(A.controller.abort(),!A.socket)A.onSocketClose();else if(A.socket.destroyed===!1)A.socket.destroy()}OPQ.exports={establishWebSocketConnection:Ox0,failWebsocketConnection:_G,closeWebSocketConnection:jPQ}});var SPQ=R((ZsY,TPQ)=>{var{createInflateRaw:Px0,Z_DEFAULT_WINDOWBITS:Tx0}=u("node:zlib"),{isValidClientWindowBits:Sx0}=e$(),kx0=Buffer.from([0,0,255,255]),Xk=Symbol("kBuffer"),Gk=Symbol("kLength");class PPQ{#A;#Q={};constructor(A){this.#Q.serverNoContextTakeover=A.has("server_no_context_takeover"),this.#Q.serverMaxWindowBits=A.get("server_max_window_bits")}decompress(A,Q,B){if(!this.#A){let Y=Tx0;if(this.#Q.serverMaxWindowBits){if(!Sx0(this.#Q.serverMaxWindowBits)){B(Error("Invalid server_max_window_bits"));return}Y=Number.parseInt(this.#Q.serverMaxWindowBits)}this.#A=Px0({windowBits:Y}),this.#A[Xk]=[],this.#A[Gk]=0,this.#A.on("data",(J)=>{this.#A[Xk].push(J),this.#A[Gk]+=J.length}),this.#A.on("error",(J)=>{this.#A=null,B(J)})}if(this.#A.write(A),Q)this.#A.write(kx0);this.#A.flush(()=>{let Y=Buffer.concat(this.#A[Xk],this.#A[Gk]);this.#A[Xk].length=0,this.#A[Gk]=0,B(null,Y)})}}TPQ.exports={PerMessageDeflate:PPQ}});var Ko=R(($sY,gPQ)=>{var{Writable:_x0}=u("node:stream"),vx0=u("node:assert"),{parserStates:t9,opcodes:DV,states:yx0,emptyBuffer:kPQ,sentCloseFrameState:pq}=XW(),{isValidStatusCode:hx0,isValidOpcode:gx0,websocketMessageReceived:_PQ,utf8Decode:xx0,isControlFrame:vPQ,isTextBinaryFrame:Eo,isContinuationFrame:fx0}=e$(),{failWebsocketConnection:d8}=Ck(),{WebsocketFrameSend:yPQ}=HV(),{PerMessageDeflate:bx0}=SPQ();class hPQ extends _x0{#A=[];#Q=0;#B=0;#Y=!1;#J=t9.INFO;#C={};#F=[];#X;#G;constructor(A,Q){super();if(this.#G=A,this.#X=Q==null?new Map:Q,this.#X.has("permessage-deflate"))this.#X.set("permessage-deflate",new bx0(Q))}_write(A,Q,B){this.#A.push(A),this.#B+=A.length,this.#Y=!0,this.run(B)}run(A){while(this.#Y)if(this.#J===t9.INFO){if(this.#B<2)return A();let Q=this.consume(2),B=(Q[0]&128)!==0,Y=Q[0]&15,J=(Q[1]&128)===128,C=!B&&Y!==DV.CONTINUATION,X=Q[1]&127,G=Q[0]&64,F=Q[0]&32,W=Q[0]&16;if(!gx0(Y))return d8(this.#G,1002,"Invalid opcode received"),A();if(J)return d8(this.#G,1002,"Frame cannot be masked"),A();if(G!==0&&!this.#X.has("permessage-deflate")){d8(this.#G,1002,"Expected RSV1 to be clear.");return}if(F!==0||W!==0){d8(this.#G,1002,"RSV1, RSV2, RSV3 must be clear");return}if(C&&!Eo(Y)){d8(this.#G,1002,"Invalid frame type was fragmented.");return}if(Eo(Y)&&this.#F.length>0){d8(this.#G,1002,"Expected continuation frame");return}if(this.#C.fragmented&&C){d8(this.#G,1002,"Fragmented frame exceeded 125 bytes.");return}if((X>125||C)&&vPQ(Y)){d8(this.#G,1002,"Control frame either too large or fragmented");return}if(fx0(Y)&&this.#F.length===0&&!this.#C.compressed){d8(this.#G,1002,"Unexpected continuation frame");return}if(X<=125)this.#C.payloadLength=X,this.#J=t9.READ_DATA;else if(X===126)this.#J=t9.PAYLOADLENGTH_16;else if(X===127)this.#J=t9.PAYLOADLENGTH_64;if(Eo(Y))this.#C.binaryType=Y,this.#C.compressed=G!==0;this.#C.opcode=Y,this.#C.masked=J,this.#C.fin=B,this.#C.fragmented=C}else if(this.#J===t9.PAYLOADLENGTH_16){if(this.#B<2)return A();let Q=this.consume(2);this.#C.payloadLength=Q.readUInt16BE(0),this.#J=t9.READ_DATA}else if(this.#J===t9.PAYLOADLENGTH_64){if(this.#B<8)return A();let Q=this.consume(8),B=Q.readUInt32BE(0);if(B>2147483647){d8(this.#G,1009,"Received payload length > 2^31 bytes.");return}let Y=Q.readUInt32BE(4);this.#C.payloadLength=(B<<8)+Y,this.#J=t9.READ_DATA}else if(this.#J===t9.READ_DATA){if(this.#B{if(B){d8(this.#G,1007,B.message);return}if(this.writeFragments(Y),!this.#C.fin){this.#J=t9.INFO,this.#Y=!0,this.run(A);return}_PQ(this.#G,this.#C.binaryType,this.consumeFragments()),this.#Y=!0,this.#J=t9.INFO,this.run(A)}),this.#Y=!1;break}}}consume(A){if(A>this.#B)throw Error("Called consume() before buffers satiated.");else if(A===0)return kPQ;this.#B-=A;let Q=this.#A[0];if(Q.length>A)return this.#A[0]=Q.subarray(A,Q.length),Q.subarray(0,A);else if(Q.length===A)return this.#A.shift();else{let B=0,Y=Buffer.allocUnsafeSlow(A);while(B!==A){let J=this.#A[0],C=J.length;if(C+B===A){Y.set(this.#A.shift(),B);break}else if(C+B>A){Y.set(J.subarray(0,A-B),B),this.#A[0]=J.subarray(A-B);break}else Y.set(this.#A.shift(),B),B+=C}return Y}}writeFragments(A){this.#Q+=A.length,this.#F.push(A)}consumeFragments(){let A=this.#F;if(A.length===1)return this.#Q=0,A.shift();let Q=0,B=Buffer.allocUnsafeSlow(this.#Q);for(let Y=0;Y=2)Q=A.readUInt16BE(0);if(Q!==void 0&&!hx0(Q))return{code:1002,reason:"Invalid status code",error:!0};let B=A.subarray(2);if(B[0]===239&&B[1]===187&&B[2]===191)B=B.subarray(3);try{B=xx0(B)}catch{return{code:1007,reason:"Invalid UTF-8",error:!0}}return{code:Q,reason:B,error:!1}}parseControlFrame(A){let{opcode:Q,payloadLength:B}=this.#C;if(Q===DV.CLOSE){if(B===1)return d8(this.#G,1002,"Received close frame with a 1-byte body."),!1;if(this.#C.closeInfo=this.parseCloseBody(A),this.#C.closeInfo.error){let{code:Y,reason:J}=this.#C.closeInfo;return d8(this.#G,Y,J),!1}if(!this.#G.closeState.has(pq.SENT)&&!this.#G.closeState.has(pq.RECEIVED)){let Y=kPQ;if(this.#C.closeInfo.code)Y=Buffer.allocUnsafe(2),Y.writeUInt16BE(this.#C.closeInfo.code,0);let J=new yPQ(Y);this.#G.socket.write(J.createFrame(DV.CLOSE)),this.#G.closeState.add(pq.SENT)}return this.#G.readyState=yx0.CLOSING,this.#G.closeState.add(pq.RECEIVED),!1}else if(Q===DV.PING){if(!this.#G.closeState.has(pq.RECEIVED)){let Y=new yPQ(A);this.#G.socket.write(Y.createFrame(DV.PONG)),this.#G.onPing(A)}}else if(Q===DV.PONG)this.#G.onPong(A);return!0}get closingInfo(){return this.#C.closeInfo}}gPQ.exports={ByteParser:hPQ}});var uPQ=R((UsY,mPQ)=>{var{WebsocketFrameSend:fPQ}=HV(),{opcodes:xPQ,sendHints:A4}=XW(),mx0=vr();class bPQ{#A=new mx0;#Q=!1;#B;constructor(A){this.#B=A}add(A,Q,B){if(B!==A4.blob){if(!this.#Q)if(B===A4.text){let{0:J,1:C}=fPQ.createFastTextFrame(A);this.#B.cork(),this.#B.write(J),this.#B.write(C,Q),this.#B.uncork()}else this.#B.write(Vo(A,B),Q);else{let J={promise:null,callback:Q,frame:Vo(A,B)};this.#A.push(J)}return}let Y={promise:A.arrayBuffer().then((J)=>{Y.promise=null,Y.frame=Vo(J,B)}),callback:Q,frame:null};if(this.#A.push(Y),!this.#Q)this.#Y()}async#Y(){this.#Q=!0;let A=this.#A;while(!A.isEmpty()){let Q=A.shift();if(Q.promise!==null)await Q.promise;this.#B.write(Q.frame,Q.callback),Q.callback=Q.frame=null}this.#Q=!1}}function Vo(A,Q){return new fPQ(ux0(A,Q)).createFrame(Q===A4.text?xPQ.TEXT:xPQ.BINARY)}function ux0(A,Q){switch(Q){case A4.text:case A4.typedArray:return new Uint8Array(A.buffer,A.byteOffset,A.byteLength);case A4.arrayBuffer:case A4.blob:return new Uint8Array(A)}}mPQ.exports={SendQueue:bPQ}});var nPQ=R((EsY,iPQ)=>{var{isArrayBuffer:dx0}=u("node:util/types"),{webidl:$Q}=UJ(),{URLSerializer:cx0}=g8(),{environmentSettingsObject:dPQ}=H9(),{staticPropertyDescriptors:GW,states:vG,sentCloseFrameState:Io,sendHints:Fk,opcodes:Ho}=XW(),{isConnecting:lx0,isEstablished:cPQ,isClosing:lPQ,isClosed:px0,isValidSubprotocol:ix0,fireEvent:Wk,utf8Decode:nx0,toArrayBuffer:sx0,getURLRecord:rx0}=e$(),{establishWebSocketConnection:ax0,closeWebSocketConnection:ox0,failWebsocketConnection:pPQ}=Ck(),{ByteParser:tx0}=Ko(),{kEnumerableProperty:JC}=lQ(),{getGlobalDispatcher:ex0}=_S(),{ErrorEvent:Af0,CloseEvent:Qf0,createFastMessageEvent:Bf0}=Bk(),{SendQueue:Yf0}=uPQ(),{WebsocketFrameSend:Jf0}=HV(),{channels:P6}=O$();class _B extends EventTarget{#A={open:null,error:null,close:null,message:null};#Q=0;#B="";#Y="";#J;#C={onConnectionEstablished:(A,Q)=>this.#Z(A,Q),onMessage:(A,Q)=>this.#U(A,Q),onParserError:(A)=>pPQ(this.#C,null,A.message),onParserDrain:()=>this.#W(),onSocketData:(A)=>{if(!this.#G.write(A))this.#C.socket.pause()},onSocketError:(A)=>{if(this.#C.readyState=vG.CLOSING,P6.socketError.hasSubscribers)P6.socketError.publish(A);this.#C.socket.destroy()},onSocketClose:()=>this.#E(),onPing:(A)=>{if(P6.ping.hasSubscribers)P6.ping.publish({payload:A,websocket:this})},onPong:(A)=>{if(P6.pong.hasSubscribers)P6.pong.publish({payload:A,websocket:this})},readyState:vG.CONNECTING,socket:null,closeState:new Set,controller:null,wasEverConnected:!1};#F;#X;#G;constructor(A,Q=[]){super();$Q.util.markAsUncloneable(this);let B="WebSocket constructor";$Q.argumentLengthCheck(arguments,1,B);let Y=$Q.converters["DOMString or sequence or WebSocketInit"](Q,B,"options");A=$Q.converters.USVString(A),Q=Y.protocols;let J=dPQ.settingsObject.baseUrl,C=rx0(A,J);if(typeof Q==="string")Q=[Q];if(Q.length!==new Set(Q.map((G)=>G.toLowerCase())).size)throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");if(Q.length>0&&!Q.every((G)=>ix0(G)))throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");this.#F=new URL(C.href);let X=dPQ.settingsObject;this.#C.controller=ax0(C,Q,X,this.#C,Y),this.#C.readyState=_B.CONNECTING,this.#X="blob"}close(A=void 0,Q=void 0){$Q.brandCheck(this,_B);let B="WebSocket.close";if(A!==void 0)A=$Q.converters["unsigned short"](A,B,"code",$Q.attributes.Clamp);if(Q!==void 0)Q=$Q.converters.USVString(Q);A??=null,Q??="",ox0(this.#C,A,Q,!0)}send(A){$Q.brandCheck(this,_B);let Q="WebSocket.send";if($Q.argumentLengthCheck(arguments,1,Q),A=$Q.converters.WebSocketSendData(A,Q,"data"),lx0(this.#C.readyState))throw new DOMException("Sent before connected.","InvalidStateError");if(!cPQ(this.#C.readyState)||lPQ(this.#C.readyState))return;if(typeof A==="string"){let B=Buffer.from(A);this.#Q+=B.byteLength,this.#J.add(B,()=>{this.#Q-=B.byteLength},Fk.text)}else if(dx0(A))this.#Q+=A.byteLength,this.#J.add(A,()=>{this.#Q-=A.byteLength},Fk.arrayBuffer);else if(ArrayBuffer.isView(A))this.#Q+=A.byteLength,this.#J.add(A,()=>{this.#Q-=A.byteLength},Fk.typedArray);else if($Q.is.Blob(A))this.#Q+=A.size,this.#J.add(A,()=>{this.#Q-=A.size},Fk.blob)}get readyState(){return $Q.brandCheck(this,_B),this.#C.readyState}get bufferedAmount(){return $Q.brandCheck(this,_B),this.#Q}get url(){return $Q.brandCheck(this,_B),cx0(this.#F)}get extensions(){return $Q.brandCheck(this,_B),this.#Y}get protocol(){return $Q.brandCheck(this,_B),this.#B}get onopen(){return $Q.brandCheck(this,_B),this.#A.open}set onopen(A){if($Q.brandCheck(this,_B),this.#A.open)this.removeEventListener("open",this.#A.open);let Q=$Q.converters.EventHandlerNonNull(A);if(Q!==null)this.addEventListener("open",Q),this.#A.open=A;else this.#A.open=null}get onerror(){return $Q.brandCheck(this,_B),this.#A.error}set onerror(A){if($Q.brandCheck(this,_B),this.#A.error)this.removeEventListener("error",this.#A.error);let Q=$Q.converters.EventHandlerNonNull(A);if(Q!==null)this.addEventListener("error",Q),this.#A.error=A;else this.#A.error=null}get onclose(){return $Q.brandCheck(this,_B),this.#A.close}set onclose(A){if($Q.brandCheck(this,_B),this.#A.close)this.removeEventListener("close",this.#A.close);let Q=$Q.converters.EventHandlerNonNull(A);if(Q!==null)this.addEventListener("close",Q),this.#A.close=A;else this.#A.close=null}get onmessage(){return $Q.brandCheck(this,_B),this.#A.message}set onmessage(A){if($Q.brandCheck(this,_B),this.#A.message)this.removeEventListener("message",this.#A.message);let Q=$Q.converters.EventHandlerNonNull(A);if(Q!==null)this.addEventListener("message",Q),this.#A.message=A;else this.#A.message=null}get binaryType(){return $Q.brandCheck(this,_B),this.#X}set binaryType(A){if($Q.brandCheck(this,_B),A!=="blob"&&A!=="arraybuffer")this.#X="blob";else this.#X=A}#Z(A,Q){this.#C.socket=A.socket;let B=new tx0(this.#C,Q);B.on("drain",()=>this.#C.onParserDrain()),B.on("error",(C)=>this.#C.onParserError(C)),this.#G=B,this.#J=new Yf0(A.socket),this.#C.readyState=vG.OPEN;let Y=A.headersList.get("sec-websocket-extensions");if(Y!==null)this.#Y=Y;let J=A.headersList.get("sec-websocket-protocol");if(J!==null)this.#B=J;if(Wk("open",this),P6.open.hasSubscribers){let C=A.headersList.entries;P6.open.publish({address:A.socket.address(),protocol:this.#B,extensions:this.#Y,websocket:this,handshakeResponse:{status:A.status,statusText:A.statusText,headers:C}})}}#U(A,Q){if(this.#C.readyState!==vG.OPEN)return;let B;if(A===Ho.TEXT)try{B=nx0(Q)}catch{pPQ(this.#C,1007,"Received invalid UTF-8 in text frame.");return}else if(A===Ho.BINARY)if(this.#X==="blob")B=new Blob([Q]);else B=sx0(Q);Wk("message",this,Bf0,{origin:this.#F.origin,data:B})}#W(){this.#C.socket.resume()}#E(){let A=this.#C.closeState.has(Io.SENT)&&this.#C.closeState.has(Io.RECEIVED),Q=1005,B="",Y=this.#G?.closingInfo;if(Y&&!Y.error)Q=Y.code??1005,B=Y.reason;if(this.#C.readyState=vG.CLOSED,!this.#C.closeState.has(Io.RECEIVED))Q=1006,Wk("error",this,(J,C)=>new Af0(J,C),{error:TypeError(B)});if(Wk("close",this,(J,C)=>new Qf0(J,C),{wasClean:A,code:Q,reason:B}),P6.close.hasSubscribers)P6.close.publish({websocket:this,code:Q,reason:B})}static ping(A,Q){if(Buffer.isBuffer(Q)){if(Q.length>125)throw TypeError("A PING frame cannot have a body larger than 125 bytes.")}else if(Q!==void 0)throw TypeError("Expected buffer payload");let B=A.#C.readyState;if(cPQ(B)&&!lPQ(B)&&!px0(B)){let Y=new Jf0(Q);A.#C.socket.write(Y.createFrame(Ho.PING))}}}var{ping:Cf0}=_B;Reflect.deleteProperty(_B,"ping");_B.CONNECTING=_B.prototype.CONNECTING=vG.CONNECTING;_B.OPEN=_B.prototype.OPEN=vG.OPEN;_B.CLOSING=_B.prototype.CLOSING=vG.CLOSING;_B.CLOSED=_B.prototype.CLOSED=vG.CLOSED;Object.defineProperties(_B.prototype,{CONNECTING:GW,OPEN:GW,CLOSING:GW,CLOSED:GW,url:JC,readyState:JC,bufferedAmount:JC,onopen:JC,onerror:JC,onclose:JC,close:JC,onmessage:JC,binaryType:JC,send:JC,extensions:JC,protocol:JC,[Symbol.toStringTag]:{value:"WebSocket",writable:!1,enumerable:!1,configurable:!0}});Object.defineProperties(_B,{CONNECTING:GW,OPEN:GW,CLOSING:GW,CLOSED:GW});$Q.converters["sequence"]=$Q.sequenceConverter($Q.converters.DOMString);$Q.converters["DOMString or sequence"]=function(A,Q,B){if($Q.util.Type(A)===$Q.util.Types.OBJECT&&Symbol.iterator in A)return $Q.converters["sequence"](A);return $Q.converters.DOMString(A,Q,B)};$Q.converters.WebSocketInit=$Q.dictionaryConverter([{key:"protocols",converter:$Q.converters["DOMString or sequence"],defaultValue:()=>[]},{key:"dispatcher",converter:$Q.converters.any,defaultValue:()=>ex0()},{key:"headers",converter:$Q.nullableConverter($Q.converters.HeadersInit)}]);$Q.converters["DOMString or sequence or WebSocketInit"]=function(A){if($Q.util.Type(A)===$Q.util.Types.OBJECT&&!(Symbol.iterator in A))return $Q.converters.WebSocketInit(A);return{protocols:$Q.converters["DOMString or sequence"](A)}};$Q.converters.WebSocketSendData=function(A){if($Q.util.Type(A)===$Q.util.Types.OBJECT){if($Q.is.Blob(A))return A;if($Q.is.BufferSource(A))return A}return $Q.converters.USVString(A)};iPQ.exports={WebSocket:_B,ping:Cf0}});var Do=R((KsY,aPQ)=>{var{webidl:Zk}=UJ(),{validateCloseCodeAndReason:Xf0}=e$(),{kConstruct:sPQ}=Q0(),{kEnumerableProperty:rPQ}=lQ();function Gf0(){class A extends DOMException{get reason(){return""}}if(new A().reason!==void 0)return DOMException;return new Proxy(DOMException,{construct(Q,B,Y){let J=Reflect.construct(Q,B,Q);return Object.setPrototypeOf(J,Y.prototype),J}})}class Q4 extends Gf0(){#A;#Q;constructor(A="",Q=void 0){A=Zk.converters.DOMString(A,"WebSocketError","message");super(A,"WebSocketError");if(Q===sPQ)return;else if(Q!==null)Q=Zk.converters.WebSocketCloseInfo(Q);let B=Q.closeCode??null,Y=Q.reason??"";if(Xf0(B,Y),Y.length!==0&&B===null)B=1000;this.#A=B,this.#Q=Y}get closeCode(){return this.#A}get reason(){return this.#Q}static createUnvalidatedWebSocketError(A,Q,B){let Y=new Q4(A,sPQ);return Y.#A=Q,Y.#Q=B,Y}}var{createUnvalidatedWebSocketError:Ff0}=Q4;delete Q4.createUnvalidatedWebSocketError;Object.defineProperties(Q4.prototype,{closeCode:rPQ,reason:rPQ,[Symbol.toStringTag]:{value:"WebSocketError",writable:!1,enumerable:!1,configurable:!0}});Zk.is.WebSocketError=Zk.util.MakeTypeAssertion(Q4);aPQ.exports={WebSocketError:Q4,createUnvalidatedWebSocketError:Ff0}});var QTQ=R((VsY,ATQ)=>{var{createDeferredPromise:No}=Jq(),{environmentSettingsObject:oPQ}=H9(),{states:NV,opcodes:$k,sentCloseFrameState:LV}=XW(),{webidl:a0}=UJ(),{getURLRecord:Wf0,isValidSubprotocol:Zf0,isEstablished:$f0,utf8Decode:Uf0}=e$(),{establishWebSocketConnection:Ef0,failWebsocketConnection:Lo,closeWebSocketConnection:qo}=Ck(),{channels:tPQ}=O$(),{WebsocketFrameSend:Kf0}=HV(),{ByteParser:Vf0}=Ko(),{WebSocketError:If0,createUnvalidatedWebSocketError:Hf0}=Do(),{utf8DecodeBytes:Df0}=H9(),{kEnumerableProperty:Uk}=lQ(),ePQ=!1;class Mo{#A;#Q;#B;#Y;#J;#C;#F=!1;#X={onConnectionEstablished:(A,Q)=>this.#U(A,Q),onMessage:(A,Q)=>this.#W(A,Q),onParserError:(A)=>Lo(this.#X,null,A.message),onParserDrain:()=>this.#X.socket.resume(),onSocketData:(A)=>{if(!this.#G.write(A))this.#X.socket.pause()},onSocketError:(A)=>{if(this.#X.readyState=NV.CLOSING,tPQ.socketError.hasSubscribers)tPQ.socketError.publish(A);this.#X.socket.destroy()},onSocketClose:()=>this.#E(),onPing:()=>{},onPong:()=>{},readyState:NV.CONNECTING,socket:null,closeState:new Set,controller:null,wasEverConnected:!1};#G;constructor(A,Q=void 0){if(!ePQ)process.emitWarning("WebSocketStream is experimental! Expect it to change at any time.",{code:"UNDICI-WSS"}),ePQ=!0;if(a0.argumentLengthCheck(arguments,1,"WebSocket"),A=a0.converters.USVString(A),Q!==null)Q=a0.converters.WebSocketStreamOptions(Q);let B=oPQ.settingsObject.baseUrl,Y=Wf0(A,B),J=Q.protocols;if(J.length!==new Set(J.map((X)=>X.toLowerCase())).size)throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");if(J.length>0&&!J.every((X)=>Zf0(X)))throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");if(this.#A=Y.toString(),this.#Q=No(),this.#B=No(),Q.signal!=null){let X=Q.signal;if(X.aborted){this.#Q.reject(X.reason),this.#B.reject(X.reason);return}X.addEventListener("abort",()=>{if(!$f0(this.#X.readyState))Lo(this.#X),this.#X.readyState=NV.CLOSING,this.#Q.reject(X.reason),this.#B.reject(X.reason),this.#F=!0},{once:!0})}let C=oPQ.settingsObject;this.#X.controller=Ef0(Y,J,C,this.#X,Q)}get url(){return this.#A.toString()}get opened(){return this.#Q.promise}get closed(){return this.#B.promise}close(A=void 0){if(A!==null)A=a0.converters.WebSocketCloseInfo(A);let Q=A.closeCode??null,B=A.reason;qo(this.#X,Q,B,!0)}#Z(A){A=a0.converters.WebSocketStreamWrite(A);let Q=No(),B=null,Y=null;if(a0.is.BufferSource(A))B=new Uint8Array(ArrayBuffer.isView(A)?new Uint8Array(A.buffer,A.byteOffset,A.byteLength):A.slice()),Y=$k.BINARY;else{let J;try{J=a0.converters.DOMString(A)}catch(C){return Q.reject(C),Q.promise}B=new TextEncoder().encode(J),Y=$k.TEXT}if(!this.#X.closeState.has(LV.SENT)&&!this.#X.closeState.has(LV.RECEIVED)){let J=new Kf0(B);this.#X.socket.write(J.createFrame(Y),()=>{Q.resolve(void 0)})}return Q.promise}#U(A,Q){this.#X.socket=A.socket;let B=new Vf0(this.#X,Q);B.on("drain",()=>this.#X.onParserDrain()),B.on("error",(G)=>this.#X.onParserError(G)),this.#G=B,this.#X.readyState=NV.OPEN;let Y=Q??"",J=A.headersList.get("sec-websocket-protocol")??"",C=new ReadableStream({start:(G)=>{this.#J=G},pull(G){let F;while(G.desiredSize>0&&(F=A.socket.read())!==null)G.enqueue(F)},cancel:(G)=>this.#I(G)}),X=new WritableStream({write:(G)=>this.#Z(G),close:()=>qo(this.#X,null,null),abort:(G)=>this.#V(G)});this.#Y=C,this.#C=X,this.#Q.resolve({extensions:Y,protocol:J,readable:C,writable:X})}#W(A,Q){if(this.#X.readyState!==NV.OPEN)return;let B;if(A===$k.TEXT)try{B=Uf0(Q)}catch{Lo(this.#X,"Received invalid UTF-8 in text frame.");return}else if(A===$k.BINARY)B=new Uint8Array(Q.buffer,Q.byteOffset,Q.byteLength);this.#J.enqueue(B)}#E(){let A=this.#X.closeState.has(LV.SENT)&&this.#X.closeState.has(LV.RECEIVED);if(this.#X.readyState=NV.CLOSED,this.#F)return;if(!this.#X.wasEverConnected)this.#Q.reject(new If0("Socket never opened"));let Q=this.#G.closingInfo,B=Q?.code??1005;if(!this.#X.closeState.has(LV.SENT)&&!this.#X.closeState.has(LV.RECEIVED))B=1006;let Y=Q?.reason==null?"":Df0(Buffer.from(Q.reason));if(A){if(this.#J.close(),!this.#C.locked)this.#C.abort(new DOMException("A closed WebSocketStream cannot be written to","InvalidStateError"));this.#B.resolve({closeCode:B,reason:Y})}else{let J=Hf0("unclean close",B,Y);this.#J.error(J),this.#C.abort(J),this.#B.reject(J)}}#V(A){let Q=null,B="";if(a0.is.WebSocketError(A))Q=A.closeCode,B=A.reason;qo(this.#X,Q,B)}#I(A){this.#V(A)}}Object.defineProperties(Mo.prototype,{url:Uk,opened:Uk,closed:Uk,close:Uk,[Symbol.toStringTag]:{value:"WebSocketStream",writable:!1,enumerable:!1,configurable:!0}});a0.converters.WebSocketStreamOptions=a0.dictionaryConverter([{key:"protocols",converter:a0.sequenceConverter(a0.converters.USVString),defaultValue:()=>[]},{key:"signal",converter:a0.nullableConverter(a0.converters.AbortSignal),defaultValue:()=>null}]);a0.converters.WebSocketCloseInfo=a0.dictionaryConverter([{key:"closeCode",converter:(A)=>a0.converters["unsigned short"](A,a0.attributes.EnforceRange)},{key:"reason",converter:a0.converters.USVString,defaultValue:()=>""}]);a0.converters.WebSocketStreamWrite=function(A){if(typeof A==="string")return a0.converters.USVString(A);return a0.converters.BufferSource(A)};ATQ.exports={WebSocketStream:Mo}});var YTQ=R((IsY,BTQ)=>{function Nf0(A){return A.indexOf("\x00")===-1}function Lf0(A){if(A.length===0)return!1;for(let Q=0;Q57)return!1;return!0}BTQ.exports={isValidLastEventId:Nf0,isASCIINumber:Lf0}});var FTQ=R((HsY,GTQ)=>{var{Transform:qf0}=u("node:stream"),{isASCIINumber:JTQ,isValidLastEventId:CTQ}=YTQ(),yG=[239,187,191];class XTQ extends qf0{state;checkBOM=!0;crlfCheck=!1;eventEndCheck=!1;buffer=null;pos=0;event={data:void 0,event:void 0,id:void 0,retry:void 0};constructor(A={}){A.readableObjectMode=!0;super(A);if(this.state=A.eventSourceSettings||{},A.push)this.push=A.push}_transform(A,Q,B){if(A.length===0){B();return}if(this.buffer)this.buffer=Buffer.concat([this.buffer,A]);else this.buffer=A;if(this.checkBOM)switch(this.buffer.length){case 1:if(this.buffer[0]===yG[0]){B();return}this.checkBOM=!1,B();return;case 2:if(this.buffer[0]===yG[0]&&this.buffer[1]===yG[1]){B();return}this.checkBOM=!1;break;case 3:if(this.buffer[0]===yG[0]&&this.buffer[1]===yG[1]&&this.buffer[2]===yG[2]){this.buffer=Buffer.alloc(0),this.checkBOM=!1,B();return}this.checkBOM=!1;break;default:if(this.buffer[0]===yG[0]&&this.buffer[1]===yG[1]&&this.buffer[2]===yG[2])this.buffer=this.buffer.subarray(3);this.checkBOM=!1;break}while(this.pos0)Q[Y]=J;break}}processEvent(A){if(A.retry&&JTQ(A.retry))this.state.reconnectionTime=parseInt(A.retry,10);if(A.id!==void 0&&CTQ(A.id))this.state.lastEventId=A.id;if(A.data!==void 0)this.push({type:A.event||"message",options:{data:A.data,lastEventId:this.state.lastEventId,origin:this.state.origin}})}clearEvent(){this.event={data:void 0,event:void 0,id:void 0,retry:void 0}}}GTQ.exports={EventSourceStream:XTQ}});var ITQ=R((DsY,VTQ)=>{var{pipeline:Mf0}=u("node:stream"),{fetching:zf0}=mq(),{makeRequest:Rf0}=$V(),{webidl:N9}=UJ(),{EventSourceStream:wf0}=FTQ(),{parseMIMEType:jf0}=g8(),{createFastMessageEvent:Of0}=Bk(),{isNetworkError:WTQ}=fq(),{kEnumerableProperty:B4}=lQ(),{environmentSettingsObject:ZTQ}=H9(),$TQ=!1,UTQ=3000,iq=0,ETQ=1,nq=2,Pf0="anonymous",Tf0="use-credentials";class qV extends EventTarget{#A={open:null,error:null,message:null};#Q;#B=!1;#Y=iq;#J=null;#C=null;#F;#X;constructor(A,Q={}){super();N9.util.markAsUncloneable(this);let B="EventSource constructor";if(N9.argumentLengthCheck(arguments,1,B),!$TQ)$TQ=!0,process.emitWarning("EventSource is experimental, expect them to change at any time.",{code:"UNDICI-ES"});A=N9.converters.USVString(A),Q=N9.converters.EventSourceInitDict(Q,B,"eventSourceInitDict"),this.#F=Q.node.dispatcher||Q.dispatcher,this.#X={lastEventId:"",reconnectionTime:Q.node.reconnectionTime};let Y=ZTQ,J;try{J=new URL(A,Y.settingsObject.baseUrl),this.#X.origin=J.origin}catch(G){throw new DOMException(G,"SyntaxError")}this.#Q=J.href;let C=Pf0;if(Q.withCredentials===!0)C=Tf0,this.#B=!0;let X={redirect:"follow",keepalive:!0,mode:"cors",credentials:C==="anonymous"?"same-origin":"omit",referrer:"no-referrer"};X.client=ZTQ.settingsObject,X.headersList=[["accept",{name:"accept",value:"text/event-stream"}]],X.cache="no-store",X.initiator="other",X.urlList=[new URL(this.#Q)],this.#J=Rf0(X),this.#G()}get readyState(){return this.#Y}get url(){return this.#Q}get withCredentials(){return this.#B}#G(){if(this.#Y===nq)return;this.#Y=iq;let A={request:this.#J,dispatcher:this.#F},Q=(B)=>{if(!WTQ(B))return this.#Z()};A.processResponseEndOfBody=Q,A.processResponse=(B)=>{if(WTQ(B))if(B.aborted){this.close(),this.dispatchEvent(new Event("error"));return}else{this.#Z();return}let Y=B.headersList.get("content-type",!0),J=Y!==null?jf0(Y):"failure",C=J!=="failure"&&J.essence==="text/event-stream";if(B.status!==200||C===!1){this.close(),this.dispatchEvent(new Event("error"));return}this.#Y=ETQ,this.dispatchEvent(new Event("open")),this.#X.origin=B.urlList[B.urlList.length-1].origin;let X=new wf0({eventSourceSettings:this.#X,push:(G)=>{this.dispatchEvent(Of0(G.type,G.options))}});Mf0(B.body.stream,X,(G)=>{if(G?.aborted===!1)this.close(),this.dispatchEvent(new Event("error"))})},this.#C=zf0(A)}#Z(){if(this.#Y===nq)return;this.#Y=iq,this.dispatchEvent(new Event("error")),setTimeout(()=>{if(this.#Y!==iq)return;if(this.#X.lastEventId.length)this.#J.headersList.set("last-event-id",this.#X.lastEventId,!0);this.#G()},this.#X.reconnectionTime)?.unref()}close(){if(N9.brandCheck(this,qV),this.#Y===nq)return;this.#Y=nq,this.#C.abort(),this.#J=null}get onopen(){return this.#A.open}set onopen(A){if(this.#A.open)this.removeEventListener("open",this.#A.open);let Q=N9.converters.EventHandlerNonNull(A);if(Q!==null)this.addEventListener("open",Q),this.#A.open=A;else this.#A.open=null}get onmessage(){return this.#A.message}set onmessage(A){if(this.#A.message)this.removeEventListener("message",this.#A.message);let Q=N9.converters.EventHandlerNonNull(A);if(Q!==null)this.addEventListener("message",Q),this.#A.message=A;else this.#A.message=null}get onerror(){return this.#A.error}set onerror(A){if(this.#A.error)this.removeEventListener("error",this.#A.error);let Q=N9.converters.EventHandlerNonNull(A);if(Q!==null)this.addEventListener("error",Q),this.#A.error=A;else this.#A.error=null}}var KTQ={CONNECTING:{__proto__:null,configurable:!1,enumerable:!0,value:iq,writable:!1},OPEN:{__proto__:null,configurable:!1,enumerable:!0,value:ETQ,writable:!1},CLOSED:{__proto__:null,configurable:!1,enumerable:!0,value:nq,writable:!1}};Object.defineProperties(qV,KTQ);Object.defineProperties(qV.prototype,KTQ);Object.defineProperties(qV.prototype,{close:B4,onerror:B4,onmessage:B4,onopen:B4,readyState:B4,url:B4,withCredentials:B4});N9.converters.EventSourceInitDict=N9.dictionaryConverter([{key:"withCredentials",converter:N9.converters.boolean,defaultValue:()=>!1},{key:"dispatcher",converter:N9.converters.any},{key:"node",converter:N9.dictionaryConverter([{key:"reconnectionTime",converter:N9.converters["unsigned long"],defaultValue:()=>UTQ},{key:"dispatcher",converter:N9.converters.any}]),defaultValue:()=>({})}]);VTQ.exports={EventSource:qV,defaultReconnectionTime:UTQ}});var E1=R((wTQ)=>{Object.defineProperty(wTQ,"__esModule",{value:!0});wTQ.setMatrixArrayType=Eb0;wTQ.toRadian=Vb0;wTQ.equals=Ib0;wTQ.RANDOM=wTQ.ARRAY_TYPE=wTQ.EPSILON=void 0;var zTQ=0.000001;wTQ.EPSILON=zTQ;var RTQ=typeof Float32Array<"u"?Float32Array:Array;wTQ.ARRAY_TYPE=RTQ;var Ub0=Math.random;wTQ.RANDOM=Ub0;function Eb0(A){wTQ.ARRAY_TYPE=RTQ=A}var Kb0=Math.PI/180;function Vb0(A){return A*Kb0}function Ib0(A,Q){return Math.abs(A-Q)<=zTQ*Math.max(1,Math.abs(A),Math.abs(Q))}if(!Math.hypot)Math.hypot=function(){var A=0,Q=arguments.length;while(Q--)A+=arguments[Q]*arguments[Q];return Math.sqrt(A)}});var vTQ=R((kTQ)=>{function Nk(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")Nk=function(B){return typeof B};else Nk=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return Nk(A)}Object.defineProperty(kTQ,"__esModule",{value:!0});kTQ.create=Mb0;kTQ.clone=zb0;kTQ.copy=Rb0;kTQ.identity=wb0;kTQ.fromValues=jb0;kTQ.set=Ob0;kTQ.transpose=Pb0;kTQ.invert=Tb0;kTQ.adjoint=Sb0;kTQ.determinant=kb0;kTQ.multiply=TTQ;kTQ.rotate=_b0;kTQ.scale=vb0;kTQ.fromRotation=yb0;kTQ.fromScaling=hb0;kTQ.str=gb0;kTQ.frob=xb0;kTQ.LDU=fb0;kTQ.add=bb0;kTQ.subtract=STQ;kTQ.exactEquals=mb0;kTQ.equals=ub0;kTQ.multiplyScalar=db0;kTQ.multiplyScalarAndAdd=cb0;kTQ.sub=kTQ.mul=void 0;var ZW=qb0(E1());function PTQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(PTQ=function(J){return J?B:Q})(A)}function qb0(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||Nk(A)!=="object"&&typeof A!=="function")return{default:A};var B=PTQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function Mb0(){var A=new ZW.ARRAY_TYPE(4);if(ZW.ARRAY_TYPE!=Float32Array)A[1]=0,A[2]=0;return A[0]=1,A[3]=1,A}function zb0(A){var Q=new ZW.ARRAY_TYPE(4);return Q[0]=A[0],Q[1]=A[1],Q[2]=A[2],Q[3]=A[3],Q}function Rb0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A[3]=Q[3],A}function wb0(A){return A[0]=1,A[1]=0,A[2]=0,A[3]=1,A}function jb0(A,Q,B,Y){var J=new ZW.ARRAY_TYPE(4);return J[0]=A,J[1]=Q,J[2]=B,J[3]=Y,J}function Ob0(A,Q,B,Y,J){return A[0]=Q,A[1]=B,A[2]=Y,A[3]=J,A}function Pb0(A,Q){if(A===Q){var B=Q[1];A[1]=Q[2],A[2]=B}else A[0]=Q[0],A[1]=Q[2],A[2]=Q[1],A[3]=Q[3];return A}function Tb0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=B*C-J*Y;if(!X)return null;return X=1/X,A[0]=C*X,A[1]=-Y*X,A[2]=-J*X,A[3]=B*X,A}function Sb0(A,Q){var B=Q[0];return A[0]=Q[3],A[1]=-Q[1],A[2]=-Q[2],A[3]=B,A}function kb0(A){return A[0]*A[3]-A[2]*A[1]}function TTQ(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=B[0],F=B[1],W=B[2],Z=B[3];return A[0]=Y*G+C*F,A[1]=J*G+X*F,A[2]=Y*W+C*Z,A[3]=J*W+X*Z,A}function _b0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Math.sin(B),F=Math.cos(B);return A[0]=Y*F+C*G,A[1]=J*F+X*G,A[2]=Y*-G+C*F,A[3]=J*-G+X*F,A}function vb0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=B[0],F=B[1];return A[0]=Y*G,A[1]=J*G,A[2]=C*F,A[3]=X*F,A}function yb0(A,Q){var B=Math.sin(Q),Y=Math.cos(Q);return A[0]=Y,A[1]=B,A[2]=-B,A[3]=Y,A}function hb0(A,Q){return A[0]=Q[0],A[1]=0,A[2]=0,A[3]=Q[1],A}function gb0(A){return"mat2("+A[0]+", "+A[1]+", "+A[2]+", "+A[3]+")"}function xb0(A){return Math.hypot(A[0],A[1],A[2],A[3])}function fb0(A,Q,B,Y){return A[2]=Y[2]/Y[0],B[0]=Y[0],B[1]=Y[1],B[3]=Y[3]-A[2]*B[1],[A,Q,B]}function bb0(A,Q,B){return A[0]=Q[0]+B[0],A[1]=Q[1]+B[1],A[2]=Q[2]+B[2],A[3]=Q[3]+B[3],A}function STQ(A,Q,B){return A[0]=Q[0]-B[0],A[1]=Q[1]-B[1],A[2]=Q[2]-B[2],A[3]=Q[3]-B[3],A}function mb0(A,Q){return A[0]===Q[0]&&A[1]===Q[1]&&A[2]===Q[2]&&A[3]===Q[3]}function ub0(A,Q){var B=A[0],Y=A[1],J=A[2],C=A[3],X=Q[0],G=Q[1],F=Q[2],W=Q[3];return Math.abs(B-X)<=ZW.EPSILON*Math.max(1,Math.abs(B),Math.abs(X))&&Math.abs(Y-G)<=ZW.EPSILON*Math.max(1,Math.abs(Y),Math.abs(G))&&Math.abs(J-F)<=ZW.EPSILON*Math.max(1,Math.abs(J),Math.abs(F))&&Math.abs(C-W)<=ZW.EPSILON*Math.max(1,Math.abs(C),Math.abs(W))}function db0(A,Q,B){return A[0]=Q[0]*B,A[1]=Q[1]*B,A[2]=Q[2]*B,A[3]=Q[3]*B,A}function cb0(A,Q,B,Y){return A[0]=Q[0]+B[0]*Y,A[1]=Q[1]+B[1]*Y,A[2]=Q[2]+B[2]*Y,A[3]=Q[3]+B[3]*Y,A}var lb0=TTQ;kTQ.mul=lb0;var pb0=STQ;kTQ.sub=pb0});var bTQ=R((xTQ)=>{function Lk(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")Lk=function(B){return typeof B};else Lk=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return Lk(A)}Object.defineProperty(xTQ,"__esModule",{value:!0});xTQ.create=Dm0;xTQ.clone=Nm0;xTQ.copy=Lm0;xTQ.identity=qm0;xTQ.fromValues=Mm0;xTQ.set=zm0;xTQ.invert=Rm0;xTQ.determinant=wm0;xTQ.multiply=hTQ;xTQ.rotate=jm0;xTQ.scale=Om0;xTQ.translate=Pm0;xTQ.fromRotation=Tm0;xTQ.fromScaling=Sm0;xTQ.fromTranslation=km0;xTQ.str=_m0;xTQ.frob=vm0;xTQ.add=ym0;xTQ.subtract=gTQ;xTQ.multiplyScalar=hm0;xTQ.multiplyScalarAndAdd=gm0;xTQ.exactEquals=xm0;xTQ.equals=fm0;xTQ.sub=xTQ.mul=void 0;var T6=Hm0(E1());function yTQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(yTQ=function(J){return J?B:Q})(A)}function Hm0(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||Lk(A)!=="object"&&typeof A!=="function")return{default:A};var B=yTQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function Dm0(){var A=new T6.ARRAY_TYPE(6);if(T6.ARRAY_TYPE!=Float32Array)A[1]=0,A[2]=0,A[4]=0,A[5]=0;return A[0]=1,A[3]=1,A}function Nm0(A){var Q=new T6.ARRAY_TYPE(6);return Q[0]=A[0],Q[1]=A[1],Q[2]=A[2],Q[3]=A[3],Q[4]=A[4],Q[5]=A[5],Q}function Lm0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A[3]=Q[3],A[4]=Q[4],A[5]=Q[5],A}function qm0(A){return A[0]=1,A[1]=0,A[2]=0,A[3]=1,A[4]=0,A[5]=0,A}function Mm0(A,Q,B,Y,J,C){var X=new T6.ARRAY_TYPE(6);return X[0]=A,X[1]=Q,X[2]=B,X[3]=Y,X[4]=J,X[5]=C,X}function zm0(A,Q,B,Y,J,C,X){return A[0]=Q,A[1]=B,A[2]=Y,A[3]=J,A[4]=C,A[5]=X,A}function Rm0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Q[4],G=Q[5],F=B*C-Y*J;if(!F)return null;return F=1/F,A[0]=C*F,A[1]=-Y*F,A[2]=-J*F,A[3]=B*F,A[4]=(J*G-C*X)*F,A[5]=(Y*X-B*G)*F,A}function wm0(A){return A[0]*A[3]-A[1]*A[2]}function hTQ(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],F=Q[5],W=B[0],Z=B[1],U=B[2],$=B[3],E=B[4],K=B[5];return A[0]=Y*W+C*Z,A[1]=J*W+X*Z,A[2]=Y*U+C*$,A[3]=J*U+X*$,A[4]=Y*E+C*K+G,A[5]=J*E+X*K+F,A}function jm0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],F=Q[5],W=Math.sin(B),Z=Math.cos(B);return A[0]=Y*Z+C*W,A[1]=J*Z+X*W,A[2]=Y*-W+C*Z,A[3]=J*-W+X*Z,A[4]=G,A[5]=F,A}function Om0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],F=Q[5],W=B[0],Z=B[1];return A[0]=Y*W,A[1]=J*W,A[2]=C*Z,A[3]=X*Z,A[4]=G,A[5]=F,A}function Pm0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],F=Q[5],W=B[0],Z=B[1];return A[0]=Y,A[1]=J,A[2]=C,A[3]=X,A[4]=Y*W+C*Z+G,A[5]=J*W+X*Z+F,A}function Tm0(A,Q){var B=Math.sin(Q),Y=Math.cos(Q);return A[0]=Y,A[1]=B,A[2]=-B,A[3]=Y,A[4]=0,A[5]=0,A}function Sm0(A,Q){return A[0]=Q[0],A[1]=0,A[2]=0,A[3]=Q[1],A[4]=0,A[5]=0,A}function km0(A,Q){return A[0]=1,A[1]=0,A[2]=0,A[3]=1,A[4]=Q[0],A[5]=Q[1],A}function _m0(A){return"mat2d("+A[0]+", "+A[1]+", "+A[2]+", "+A[3]+", "+A[4]+", "+A[5]+")"}function vm0(A){return Math.hypot(A[0],A[1],A[2],A[3],A[4],A[5],1)}function ym0(A,Q,B){return A[0]=Q[0]+B[0],A[1]=Q[1]+B[1],A[2]=Q[2]+B[2],A[3]=Q[3]+B[3],A[4]=Q[4]+B[4],A[5]=Q[5]+B[5],A}function gTQ(A,Q,B){return A[0]=Q[0]-B[0],A[1]=Q[1]-B[1],A[2]=Q[2]-B[2],A[3]=Q[3]-B[3],A[4]=Q[4]-B[4],A[5]=Q[5]-B[5],A}function hm0(A,Q,B){return A[0]=Q[0]*B,A[1]=Q[1]*B,A[2]=Q[2]*B,A[3]=Q[3]*B,A[4]=Q[4]*B,A[5]=Q[5]*B,A}function gm0(A,Q,B,Y){return A[0]=Q[0]+B[0]*Y,A[1]=Q[1]+B[1]*Y,A[2]=Q[2]+B[2]*Y,A[3]=Q[3]+B[3]*Y,A[4]=Q[4]+B[4]*Y,A[5]=Q[5]+B[5]*Y,A}function xm0(A,Q){return A[0]===Q[0]&&A[1]===Q[1]&&A[2]===Q[2]&&A[3]===Q[3]&&A[4]===Q[4]&&A[5]===Q[5]}function fm0(A,Q){var B=A[0],Y=A[1],J=A[2],C=A[3],X=A[4],G=A[5],F=Q[0],W=Q[1],Z=Q[2],U=Q[3],$=Q[4],E=Q[5];return Math.abs(B-F)<=T6.EPSILON*Math.max(1,Math.abs(B),Math.abs(F))&&Math.abs(Y-W)<=T6.EPSILON*Math.max(1,Math.abs(Y),Math.abs(W))&&Math.abs(J-Z)<=T6.EPSILON*Math.max(1,Math.abs(J),Math.abs(Z))&&Math.abs(C-U)<=T6.EPSILON*Math.max(1,Math.abs(C),Math.abs(U))&&Math.abs(X-$)<=T6.EPSILON*Math.max(1,Math.abs(X),Math.abs($))&&Math.abs(G-E)<=T6.EPSILON*Math.max(1,Math.abs(G),Math.abs(E))}var bm0=hTQ;xTQ.mul=bm0;var mm0=gTQ;xTQ.sub=mm0});var _o=R((cTQ)=>{function qk(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")qk=function(B){return typeof B};else qk=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return qk(A)}Object.defineProperty(cTQ,"__esModule",{value:!0});cTQ.create=Uu0;cTQ.fromMat4=Eu0;cTQ.clone=Ku0;cTQ.copy=Vu0;cTQ.fromValues=Iu0;cTQ.set=Hu0;cTQ.identity=Du0;cTQ.transpose=Nu0;cTQ.invert=Lu0;cTQ.adjoint=qu0;cTQ.determinant=Mu0;cTQ.multiply=uTQ;cTQ.translate=zu0;cTQ.rotate=Ru0;cTQ.scale=wu0;cTQ.fromTranslation=ju0;cTQ.fromRotation=Ou0;cTQ.fromScaling=Pu0;cTQ.fromMat2d=Tu0;cTQ.fromQuat=Su0;cTQ.normalFromMat4=ku0;cTQ.projection=_u0;cTQ.str=vu0;cTQ.frob=yu0;cTQ.add=hu0;cTQ.subtract=dTQ;cTQ.multiplyScalar=gu0;cTQ.multiplyScalarAndAdd=xu0;cTQ.exactEquals=fu0;cTQ.equals=bu0;cTQ.sub=cTQ.mul=void 0;var c8=$u0(E1());function mTQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(mTQ=function(J){return J?B:Q})(A)}function $u0(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||qk(A)!=="object"&&typeof A!=="function")return{default:A};var B=mTQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function Uu0(){var A=new c8.ARRAY_TYPE(9);if(c8.ARRAY_TYPE!=Float32Array)A[1]=0,A[2]=0,A[3]=0,A[5]=0,A[6]=0,A[7]=0;return A[0]=1,A[4]=1,A[8]=1,A}function Eu0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A[3]=Q[4],A[4]=Q[5],A[5]=Q[6],A[6]=Q[8],A[7]=Q[9],A[8]=Q[10],A}function Ku0(A){var Q=new c8.ARRAY_TYPE(9);return Q[0]=A[0],Q[1]=A[1],Q[2]=A[2],Q[3]=A[3],Q[4]=A[4],Q[5]=A[5],Q[6]=A[6],Q[7]=A[7],Q[8]=A[8],Q}function Vu0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A[3]=Q[3],A[4]=Q[4],A[5]=Q[5],A[6]=Q[6],A[7]=Q[7],A[8]=Q[8],A}function Iu0(A,Q,B,Y,J,C,X,G,F){var W=new c8.ARRAY_TYPE(9);return W[0]=A,W[1]=Q,W[2]=B,W[3]=Y,W[4]=J,W[5]=C,W[6]=X,W[7]=G,W[8]=F,W}function Hu0(A,Q,B,Y,J,C,X,G,F,W){return A[0]=Q,A[1]=B,A[2]=Y,A[3]=J,A[4]=C,A[5]=X,A[6]=G,A[7]=F,A[8]=W,A}function Du0(A){return A[0]=1,A[1]=0,A[2]=0,A[3]=0,A[4]=1,A[5]=0,A[6]=0,A[7]=0,A[8]=1,A}function Nu0(A,Q){if(A===Q){var B=Q[1],Y=Q[2],J=Q[5];A[1]=Q[3],A[2]=Q[6],A[3]=B,A[5]=Q[7],A[6]=Y,A[7]=J}else A[0]=Q[0],A[1]=Q[3],A[2]=Q[6],A[3]=Q[1],A[4]=Q[4],A[5]=Q[7],A[6]=Q[2],A[7]=Q[5],A[8]=Q[8];return A}function Lu0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Q[4],G=Q[5],F=Q[6],W=Q[7],Z=Q[8],U=Z*X-G*W,$=-Z*C+G*F,E=W*C-X*F,K=B*U+Y*$+J*E;if(!K)return null;return K=1/K,A[0]=U*K,A[1]=(-Z*Y+J*W)*K,A[2]=(G*Y-J*X)*K,A[3]=$*K,A[4]=(Z*B-J*F)*K,A[5]=(-G*B+J*C)*K,A[6]=E*K,A[7]=(-W*B+Y*F)*K,A[8]=(X*B-Y*C)*K,A}function qu0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Q[4],G=Q[5],F=Q[6],W=Q[7],Z=Q[8];return A[0]=X*Z-G*W,A[1]=J*W-Y*Z,A[2]=Y*G-J*X,A[3]=G*F-C*Z,A[4]=B*Z-J*F,A[5]=J*C-B*G,A[6]=C*W-X*F,A[7]=Y*F-B*W,A[8]=B*X-Y*C,A}function Mu0(A){var Q=A[0],B=A[1],Y=A[2],J=A[3],C=A[4],X=A[5],G=A[6],F=A[7],W=A[8];return Q*(W*C-X*F)+B*(-W*J+X*G)+Y*(F*J-C*G)}function uTQ(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],F=Q[5],W=Q[6],Z=Q[7],U=Q[8],$=B[0],E=B[1],K=B[2],I=B[3],V=B[4],H=B[5],D=B[6],L=B[7],z=B[8];return A[0]=$*Y+E*X+K*W,A[1]=$*J+E*G+K*Z,A[2]=$*C+E*F+K*U,A[3]=I*Y+V*X+H*W,A[4]=I*J+V*G+H*Z,A[5]=I*C+V*F+H*U,A[6]=D*Y+L*X+z*W,A[7]=D*J+L*G+z*Z,A[8]=D*C+L*F+z*U,A}function zu0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],F=Q[5],W=Q[6],Z=Q[7],U=Q[8],$=B[0],E=B[1];return A[0]=Y,A[1]=J,A[2]=C,A[3]=X,A[4]=G,A[5]=F,A[6]=$*Y+E*X+W,A[7]=$*J+E*G+Z,A[8]=$*C+E*F+U,A}function Ru0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],F=Q[5],W=Q[6],Z=Q[7],U=Q[8],$=Math.sin(B),E=Math.cos(B);return A[0]=E*Y+$*X,A[1]=E*J+$*G,A[2]=E*C+$*F,A[3]=E*X-$*Y,A[4]=E*G-$*J,A[5]=E*F-$*C,A[6]=W,A[7]=Z,A[8]=U,A}function wu0(A,Q,B){var Y=B[0],J=B[1];return A[0]=Y*Q[0],A[1]=Y*Q[1],A[2]=Y*Q[2],A[3]=J*Q[3],A[4]=J*Q[4],A[5]=J*Q[5],A[6]=Q[6],A[7]=Q[7],A[8]=Q[8],A}function ju0(A,Q){return A[0]=1,A[1]=0,A[2]=0,A[3]=0,A[4]=1,A[5]=0,A[6]=Q[0],A[7]=Q[1],A[8]=1,A}function Ou0(A,Q){var B=Math.sin(Q),Y=Math.cos(Q);return A[0]=Y,A[1]=B,A[2]=0,A[3]=-B,A[4]=Y,A[5]=0,A[6]=0,A[7]=0,A[8]=1,A}function Pu0(A,Q){return A[0]=Q[0],A[1]=0,A[2]=0,A[3]=0,A[4]=Q[1],A[5]=0,A[6]=0,A[7]=0,A[8]=1,A}function Tu0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=0,A[3]=Q[2],A[4]=Q[3],A[5]=0,A[6]=Q[4],A[7]=Q[5],A[8]=1,A}function Su0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=B+B,G=Y+Y,F=J+J,W=B*X,Z=Y*X,U=Y*G,$=J*X,E=J*G,K=J*F,I=C*X,V=C*G,H=C*F;return A[0]=1-U-K,A[3]=Z-H,A[6]=$+V,A[1]=Z+H,A[4]=1-W-K,A[7]=E-I,A[2]=$-V,A[5]=E+I,A[8]=1-W-U,A}function ku0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Q[4],G=Q[5],F=Q[6],W=Q[7],Z=Q[8],U=Q[9],$=Q[10],E=Q[11],K=Q[12],I=Q[13],V=Q[14],H=Q[15],D=B*G-Y*X,L=B*F-J*X,z=B*W-C*X,M=Y*F-J*G,N=Y*W-C*G,q=J*W-C*F,w=Z*I-U*K,P=Z*V-$*K,_=Z*H-E*K,O=U*V-$*I,k=U*H-E*I,T=$*H-E*V,S=D*T-L*k+z*O+M*_-N*P+q*w;if(!S)return null;return S=1/S,A[0]=(G*T-F*k+W*O)*S,A[1]=(F*_-X*T-W*P)*S,A[2]=(X*k-G*_+W*w)*S,A[3]=(J*k-Y*T-C*O)*S,A[4]=(B*T-J*_+C*P)*S,A[5]=(Y*_-B*k-C*w)*S,A[6]=(I*q-V*N+H*M)*S,A[7]=(V*z-K*q-H*L)*S,A[8]=(K*N-I*z+H*D)*S,A}function _u0(A,Q,B){return A[0]=2/Q,A[1]=0,A[2]=0,A[3]=0,A[4]=-2/B,A[5]=0,A[6]=-1,A[7]=1,A[8]=1,A}function vu0(A){return"mat3("+A[0]+", "+A[1]+", "+A[2]+", "+A[3]+", "+A[4]+", "+A[5]+", "+A[6]+", "+A[7]+", "+A[8]+")"}function yu0(A){return Math.hypot(A[0],A[1],A[2],A[3],A[4],A[5],A[6],A[7],A[8])}function hu0(A,Q,B){return A[0]=Q[0]+B[0],A[1]=Q[1]+B[1],A[2]=Q[2]+B[2],A[3]=Q[3]+B[3],A[4]=Q[4]+B[4],A[5]=Q[5]+B[5],A[6]=Q[6]+B[6],A[7]=Q[7]+B[7],A[8]=Q[8]+B[8],A}function dTQ(A,Q,B){return A[0]=Q[0]-B[0],A[1]=Q[1]-B[1],A[2]=Q[2]-B[2],A[3]=Q[3]-B[3],A[4]=Q[4]-B[4],A[5]=Q[5]-B[5],A[6]=Q[6]-B[6],A[7]=Q[7]-B[7],A[8]=Q[8]-B[8],A}function gu0(A,Q,B){return A[0]=Q[0]*B,A[1]=Q[1]*B,A[2]=Q[2]*B,A[3]=Q[3]*B,A[4]=Q[4]*B,A[5]=Q[5]*B,A[6]=Q[6]*B,A[7]=Q[7]*B,A[8]=Q[8]*B,A}function xu0(A,Q,B,Y){return A[0]=Q[0]+B[0]*Y,A[1]=Q[1]+B[1]*Y,A[2]=Q[2]+B[2]*Y,A[3]=Q[3]+B[3]*Y,A[4]=Q[4]+B[4]*Y,A[5]=Q[5]+B[5]*Y,A[6]=Q[6]+B[6]*Y,A[7]=Q[7]+B[7]*Y,A[8]=Q[8]+B[8]*Y,A}function fu0(A,Q){return A[0]===Q[0]&&A[1]===Q[1]&&A[2]===Q[2]&&A[3]===Q[3]&&A[4]===Q[4]&&A[5]===Q[5]&&A[6]===Q[6]&&A[7]===Q[7]&&A[8]===Q[8]}function bu0(A,Q){var B=A[0],Y=A[1],J=A[2],C=A[3],X=A[4],G=A[5],F=A[6],W=A[7],Z=A[8],U=Q[0],$=Q[1],E=Q[2],K=Q[3],I=Q[4],V=Q[5],H=Q[6],D=Q[7],L=Q[8];return Math.abs(B-U)<=c8.EPSILON*Math.max(1,Math.abs(B),Math.abs(U))&&Math.abs(Y-$)<=c8.EPSILON*Math.max(1,Math.abs(Y),Math.abs($))&&Math.abs(J-E)<=c8.EPSILON*Math.max(1,Math.abs(J),Math.abs(E))&&Math.abs(C-K)<=c8.EPSILON*Math.max(1,Math.abs(C),Math.abs(K))&&Math.abs(X-I)<=c8.EPSILON*Math.max(1,Math.abs(X),Math.abs(I))&&Math.abs(G-V)<=c8.EPSILON*Math.max(1,Math.abs(G),Math.abs(V))&&Math.abs(F-H)<=c8.EPSILON*Math.max(1,Math.abs(F),Math.abs(H))&&Math.abs(W-D)<=c8.EPSILON*Math.max(1,Math.abs(W),Math.abs(D))&&Math.abs(Z-L)<=c8.EPSILON*Math.max(1,Math.abs(Z),Math.abs(L))}var mu0=uTQ;cTQ.mul=mu0;var uu0=dTQ;cTQ.sub=uu0});var vo=R((eTQ)=>{function Mk(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")Mk=function(B){return typeof B};else Mk=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return Mk(A)}Object.defineProperty(eTQ,"__esModule",{value:!0});eTQ.create=Ld0;eTQ.clone=qd0;eTQ.copy=Md0;eTQ.fromValues=zd0;eTQ.set=Rd0;eTQ.identity=iTQ;eTQ.transpose=wd0;eTQ.invert=jd0;eTQ.adjoint=Od0;eTQ.determinant=Pd0;eTQ.multiply=nTQ;eTQ.translate=Td0;eTQ.scale=Sd0;eTQ.rotate=kd0;eTQ.rotateX=_d0;eTQ.rotateY=vd0;eTQ.rotateZ=yd0;eTQ.fromTranslation=hd0;eTQ.fromScaling=gd0;eTQ.fromRotation=xd0;eTQ.fromXRotation=fd0;eTQ.fromYRotation=bd0;eTQ.fromZRotation=md0;eTQ.fromRotationTranslation=sTQ;eTQ.fromQuat2=ud0;eTQ.getTranslation=dd0;eTQ.getScaling=rTQ;eTQ.getRotation=cd0;eTQ.fromRotationTranslationScale=ld0;eTQ.fromRotationTranslationScaleOrigin=pd0;eTQ.fromQuat=id0;eTQ.frustum=nd0;eTQ.perspectiveNO=aTQ;eTQ.perspectiveZO=rd0;eTQ.perspectiveFromFieldOfView=ad0;eTQ.orthoNO=oTQ;eTQ.orthoZO=td0;eTQ.lookAt=ed0;eTQ.targetTo=Ac0;eTQ.str=Qc0;eTQ.frob=Bc0;eTQ.add=Yc0;eTQ.subtract=tTQ;eTQ.multiplyScalar=Jc0;eTQ.multiplyScalarAndAdd=Cc0;eTQ.exactEquals=Xc0;eTQ.equals=Gc0;eTQ.sub=eTQ.mul=eTQ.ortho=eTQ.perspective=void 0;var B0=Nd0(E1());function pTQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(pTQ=function(J){return J?B:Q})(A)}function Nd0(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||Mk(A)!=="object"&&typeof A!=="function")return{default:A};var B=pTQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function Ld0(){var A=new B0.ARRAY_TYPE(16);if(B0.ARRAY_TYPE!=Float32Array)A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[6]=0,A[7]=0,A[8]=0,A[9]=0,A[11]=0,A[12]=0,A[13]=0,A[14]=0;return A[0]=1,A[5]=1,A[10]=1,A[15]=1,A}function qd0(A){var Q=new B0.ARRAY_TYPE(16);return Q[0]=A[0],Q[1]=A[1],Q[2]=A[2],Q[3]=A[3],Q[4]=A[4],Q[5]=A[5],Q[6]=A[6],Q[7]=A[7],Q[8]=A[8],Q[9]=A[9],Q[10]=A[10],Q[11]=A[11],Q[12]=A[12],Q[13]=A[13],Q[14]=A[14],Q[15]=A[15],Q}function Md0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A[3]=Q[3],A[4]=Q[4],A[5]=Q[5],A[6]=Q[6],A[7]=Q[7],A[8]=Q[8],A[9]=Q[9],A[10]=Q[10],A[11]=Q[11],A[12]=Q[12],A[13]=Q[13],A[14]=Q[14],A[15]=Q[15],A}function zd0(A,Q,B,Y,J,C,X,G,F,W,Z,U,$,E,K,I){var V=new B0.ARRAY_TYPE(16);return V[0]=A,V[1]=Q,V[2]=B,V[3]=Y,V[4]=J,V[5]=C,V[6]=X,V[7]=G,V[8]=F,V[9]=W,V[10]=Z,V[11]=U,V[12]=$,V[13]=E,V[14]=K,V[15]=I,V}function Rd0(A,Q,B,Y,J,C,X,G,F,W,Z,U,$,E,K,I,V){return A[0]=Q,A[1]=B,A[2]=Y,A[3]=J,A[4]=C,A[5]=X,A[6]=G,A[7]=F,A[8]=W,A[9]=Z,A[10]=U,A[11]=$,A[12]=E,A[13]=K,A[14]=I,A[15]=V,A}function iTQ(A){return A[0]=1,A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[5]=1,A[6]=0,A[7]=0,A[8]=0,A[9]=0,A[10]=1,A[11]=0,A[12]=0,A[13]=0,A[14]=0,A[15]=1,A}function wd0(A,Q){if(A===Q){var B=Q[1],Y=Q[2],J=Q[3],C=Q[6],X=Q[7],G=Q[11];A[1]=Q[4],A[2]=Q[8],A[3]=Q[12],A[4]=B,A[6]=Q[9],A[7]=Q[13],A[8]=Y,A[9]=C,A[11]=Q[14],A[12]=J,A[13]=X,A[14]=G}else A[0]=Q[0],A[1]=Q[4],A[2]=Q[8],A[3]=Q[12],A[4]=Q[1],A[5]=Q[5],A[6]=Q[9],A[7]=Q[13],A[8]=Q[2],A[9]=Q[6],A[10]=Q[10],A[11]=Q[14],A[12]=Q[3],A[13]=Q[7],A[14]=Q[11],A[15]=Q[15];return A}function jd0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Q[4],G=Q[5],F=Q[6],W=Q[7],Z=Q[8],U=Q[9],$=Q[10],E=Q[11],K=Q[12],I=Q[13],V=Q[14],H=Q[15],D=B*G-Y*X,L=B*F-J*X,z=B*W-C*X,M=Y*F-J*G,N=Y*W-C*G,q=J*W-C*F,w=Z*I-U*K,P=Z*V-$*K,_=Z*H-E*K,O=U*V-$*I,k=U*H-E*I,T=$*H-E*V,S=D*T-L*k+z*O+M*_-N*P+q*w;if(!S)return null;return S=1/S,A[0]=(G*T-F*k+W*O)*S,A[1]=(J*k-Y*T-C*O)*S,A[2]=(I*q-V*N+H*M)*S,A[3]=($*N-U*q-E*M)*S,A[4]=(F*_-X*T-W*P)*S,A[5]=(B*T-J*_+C*P)*S,A[6]=(V*z-K*q-H*L)*S,A[7]=(Z*q-$*z+E*L)*S,A[8]=(X*k-G*_+W*w)*S,A[9]=(Y*_-B*k-C*w)*S,A[10]=(K*N-I*z+H*D)*S,A[11]=(U*z-Z*N-E*D)*S,A[12]=(G*P-X*O-F*w)*S,A[13]=(B*O-Y*P+J*w)*S,A[14]=(I*L-K*M-V*D)*S,A[15]=(Z*M-U*L+$*D)*S,A}function Od0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Q[4],G=Q[5],F=Q[6],W=Q[7],Z=Q[8],U=Q[9],$=Q[10],E=Q[11],K=Q[12],I=Q[13],V=Q[14],H=Q[15];return A[0]=G*($*H-E*V)-U*(F*H-W*V)+I*(F*E-W*$),A[1]=-(Y*($*H-E*V)-U*(J*H-C*V)+I*(J*E-C*$)),A[2]=Y*(F*H-W*V)-G*(J*H-C*V)+I*(J*W-C*F),A[3]=-(Y*(F*E-W*$)-G*(J*E-C*$)+U*(J*W-C*F)),A[4]=-(X*($*H-E*V)-Z*(F*H-W*V)+K*(F*E-W*$)),A[5]=B*($*H-E*V)-Z*(J*H-C*V)+K*(J*E-C*$),A[6]=-(B*(F*H-W*V)-X*(J*H-C*V)+K*(J*W-C*F)),A[7]=B*(F*E-W*$)-X*(J*E-C*$)+Z*(J*W-C*F),A[8]=X*(U*H-E*I)-Z*(G*H-W*I)+K*(G*E-W*U),A[9]=-(B*(U*H-E*I)-Z*(Y*H-C*I)+K*(Y*E-C*U)),A[10]=B*(G*H-W*I)-X*(Y*H-C*I)+K*(Y*W-C*G),A[11]=-(B*(G*E-W*U)-X*(Y*E-C*U)+Z*(Y*W-C*G)),A[12]=-(X*(U*V-$*I)-Z*(G*V-F*I)+K*(G*$-F*U)),A[13]=B*(U*V-$*I)-Z*(Y*V-J*I)+K*(Y*$-J*U),A[14]=-(B*(G*V-F*I)-X*(Y*V-J*I)+K*(Y*F-J*G)),A[15]=B*(G*$-F*U)-X*(Y*$-J*U)+Z*(Y*F-J*G),A}function Pd0(A){var Q=A[0],B=A[1],Y=A[2],J=A[3],C=A[4],X=A[5],G=A[6],F=A[7],W=A[8],Z=A[9],U=A[10],$=A[11],E=A[12],K=A[13],I=A[14],V=A[15],H=Q*X-B*C,D=Q*G-Y*C,L=Q*F-J*C,z=B*G-Y*X,M=B*F-J*X,N=Y*F-J*G,q=W*K-Z*E,w=W*I-U*E,P=W*V-$*E,_=Z*I-U*K,O=Z*V-$*K,k=U*V-$*I;return H*k-D*O+L*_+z*P-M*w+N*q}function nTQ(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],F=Q[5],W=Q[6],Z=Q[7],U=Q[8],$=Q[9],E=Q[10],K=Q[11],I=Q[12],V=Q[13],H=Q[14],D=Q[15],L=B[0],z=B[1],M=B[2],N=B[3];return A[0]=L*Y+z*G+M*U+N*I,A[1]=L*J+z*F+M*$+N*V,A[2]=L*C+z*W+M*E+N*H,A[3]=L*X+z*Z+M*K+N*D,L=B[4],z=B[5],M=B[6],N=B[7],A[4]=L*Y+z*G+M*U+N*I,A[5]=L*J+z*F+M*$+N*V,A[6]=L*C+z*W+M*E+N*H,A[7]=L*X+z*Z+M*K+N*D,L=B[8],z=B[9],M=B[10],N=B[11],A[8]=L*Y+z*G+M*U+N*I,A[9]=L*J+z*F+M*$+N*V,A[10]=L*C+z*W+M*E+N*H,A[11]=L*X+z*Z+M*K+N*D,L=B[12],z=B[13],M=B[14],N=B[15],A[12]=L*Y+z*G+M*U+N*I,A[13]=L*J+z*F+M*$+N*V,A[14]=L*C+z*W+M*E+N*H,A[15]=L*X+z*Z+M*K+N*D,A}function Td0(A,Q,B){var Y=B[0],J=B[1],C=B[2],X,G,F,W,Z,U,$,E,K,I,V,H;if(Q===A)A[12]=Q[0]*Y+Q[4]*J+Q[8]*C+Q[12],A[13]=Q[1]*Y+Q[5]*J+Q[9]*C+Q[13],A[14]=Q[2]*Y+Q[6]*J+Q[10]*C+Q[14],A[15]=Q[3]*Y+Q[7]*J+Q[11]*C+Q[15];else X=Q[0],G=Q[1],F=Q[2],W=Q[3],Z=Q[4],U=Q[5],$=Q[6],E=Q[7],K=Q[8],I=Q[9],V=Q[10],H=Q[11],A[0]=X,A[1]=G,A[2]=F,A[3]=W,A[4]=Z,A[5]=U,A[6]=$,A[7]=E,A[8]=K,A[9]=I,A[10]=V,A[11]=H,A[12]=X*Y+Z*J+K*C+Q[12],A[13]=G*Y+U*J+I*C+Q[13],A[14]=F*Y+$*J+V*C+Q[14],A[15]=W*Y+E*J+H*C+Q[15];return A}function Sd0(A,Q,B){var Y=B[0],J=B[1],C=B[2];return A[0]=Q[0]*Y,A[1]=Q[1]*Y,A[2]=Q[2]*Y,A[3]=Q[3]*Y,A[4]=Q[4]*J,A[5]=Q[5]*J,A[6]=Q[6]*J,A[7]=Q[7]*J,A[8]=Q[8]*C,A[9]=Q[9]*C,A[10]=Q[10]*C,A[11]=Q[11]*C,A[12]=Q[12],A[13]=Q[13],A[14]=Q[14],A[15]=Q[15],A}function kd0(A,Q,B,Y){var J=Y[0],C=Y[1],X=Y[2],G=Math.hypot(J,C,X),F,W,Z,U,$,E,K,I,V,H,D,L,z,M,N,q,w,P,_,O,k,T,S,v;if(G0)B[0]=(G*X+Z*Y+F*C-W*J)*2/U,B[1]=(F*X+Z*J+W*Y-G*C)*2/U,B[2]=(W*X+Z*C+G*J-F*Y)*2/U;else B[0]=(G*X+Z*Y+F*C-W*J)*2,B[1]=(F*X+Z*J+W*Y-G*C)*2,B[2]=(W*X+Z*C+G*J-F*Y)*2;return sTQ(A,Q,B),A}function dd0(A,Q){return A[0]=Q[12],A[1]=Q[13],A[2]=Q[14],A}function rTQ(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[4],X=Q[5],G=Q[6],F=Q[8],W=Q[9],Z=Q[10];return A[0]=Math.hypot(B,Y,J),A[1]=Math.hypot(C,X,G),A[2]=Math.hypot(F,W,Z),A}function cd0(A,Q){var B=new B0.ARRAY_TYPE(3);rTQ(B,Q);var Y=1/B[0],J=1/B[1],C=1/B[2],X=Q[0]*Y,G=Q[1]*J,F=Q[2]*C,W=Q[4]*Y,Z=Q[5]*J,U=Q[6]*C,$=Q[8]*Y,E=Q[9]*J,K=Q[10]*C,I=X+Z+K,V=0;if(I>0)V=Math.sqrt(I+1)*2,A[3]=0.25*V,A[0]=(U-E)/V,A[1]=($-F)/V,A[2]=(G-W)/V;else if(X>Z&&X>K)V=Math.sqrt(1+X-Z-K)*2,A[3]=(U-E)/V,A[0]=0.25*V,A[1]=(G+W)/V,A[2]=($+F)/V;else if(Z>K)V=Math.sqrt(1+Z-X-K)*2,A[3]=($-F)/V,A[0]=(G+W)/V,A[1]=0.25*V,A[2]=(U+E)/V;else V=Math.sqrt(1+K-X-Z)*2,A[3]=(G-W)/V,A[0]=($+F)/V,A[1]=(U+E)/V,A[2]=0.25*V;return A}function ld0(A,Q,B,Y){var J=Q[0],C=Q[1],X=Q[2],G=Q[3],F=J+J,W=C+C,Z=X+X,U=J*F,$=J*W,E=J*Z,K=C*W,I=C*Z,V=X*Z,H=G*F,D=G*W,L=G*Z,z=Y[0],M=Y[1],N=Y[2];return A[0]=(1-(K+V))*z,A[1]=($+L)*z,A[2]=(E-D)*z,A[3]=0,A[4]=($-L)*M,A[5]=(1-(U+V))*M,A[6]=(I+H)*M,A[7]=0,A[8]=(E+D)*N,A[9]=(I-H)*N,A[10]=(1-(U+K))*N,A[11]=0,A[12]=B[0],A[13]=B[1],A[14]=B[2],A[15]=1,A}function pd0(A,Q,B,Y,J){var C=Q[0],X=Q[1],G=Q[2],F=Q[3],W=C+C,Z=X+X,U=G+G,$=C*W,E=C*Z,K=C*U,I=X*Z,V=X*U,H=G*U,D=F*W,L=F*Z,z=F*U,M=Y[0],N=Y[1],q=Y[2],w=J[0],P=J[1],_=J[2],O=(1-(I+H))*M,k=(E+z)*M,T=(K-L)*M,S=(E-z)*N,v=(1-($+H))*N,y=(V+D)*N,g=(K+L)*q,h=(V-D)*q,m=(1-($+I))*q;return A[0]=O,A[1]=k,A[2]=T,A[3]=0,A[4]=S,A[5]=v,A[6]=y,A[7]=0,A[8]=g,A[9]=h,A[10]=m,A[11]=0,A[12]=B[0]+w-(O*w+S*P+g*_),A[13]=B[1]+P-(k*w+v*P+h*_),A[14]=B[2]+_-(T*w+y*P+m*_),A[15]=1,A}function id0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=B+B,G=Y+Y,F=J+J,W=B*X,Z=Y*X,U=Y*G,$=J*X,E=J*G,K=J*F,I=C*X,V=C*G,H=C*F;return A[0]=1-U-K,A[1]=Z+H,A[2]=$-V,A[3]=0,A[4]=Z-H,A[5]=1-W-K,A[6]=E+I,A[7]=0,A[8]=$+V,A[9]=E-I,A[10]=1-W-U,A[11]=0,A[12]=0,A[13]=0,A[14]=0,A[15]=1,A}function nd0(A,Q,B,Y,J,C,X){var G=1/(B-Q),F=1/(J-Y),W=1/(C-X);return A[0]=C*2*G,A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[5]=C*2*F,A[6]=0,A[7]=0,A[8]=(B+Q)*G,A[9]=(J+Y)*F,A[10]=(X+C)*W,A[11]=-1,A[12]=0,A[13]=0,A[14]=X*C*2*W,A[15]=0,A}function aTQ(A,Q,B,Y,J){var C=1/Math.tan(Q/2),X;if(A[0]=C/B,A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[5]=C,A[6]=0,A[7]=0,A[8]=0,A[9]=0,A[11]=-1,A[12]=0,A[13]=0,A[15]=0,J!=null&&J!==1/0)X=1/(Y-J),A[10]=(J+Y)*X,A[14]=2*J*Y*X;else A[10]=-1,A[14]=-2*Y;return A}var sd0=aTQ;eTQ.perspective=sd0;function rd0(A,Q,B,Y,J){var C=1/Math.tan(Q/2),X;if(A[0]=C/B,A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[5]=C,A[6]=0,A[7]=0,A[8]=0,A[9]=0,A[11]=-1,A[12]=0,A[13]=0,A[15]=0,J!=null&&J!==1/0)X=1/(Y-J),A[10]=J*X,A[14]=J*Y*X;else A[10]=-1,A[14]=-Y;return A}function ad0(A,Q,B,Y){var J=Math.tan(Q.upDegrees*Math.PI/180),C=Math.tan(Q.downDegrees*Math.PI/180),X=Math.tan(Q.leftDegrees*Math.PI/180),G=Math.tan(Q.rightDegrees*Math.PI/180),F=2/(X+G),W=2/(J+C);return A[0]=F,A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[5]=W,A[6]=0,A[7]=0,A[8]=-((X-G)*F*0.5),A[9]=(J-C)*W*0.5,A[10]=Y/(B-Y),A[11]=-1,A[12]=0,A[13]=0,A[14]=Y*B/(B-Y),A[15]=0,A}function oTQ(A,Q,B,Y,J,C,X){var G=1/(Q-B),F=1/(Y-J),W=1/(C-X);return A[0]=-2*G,A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[5]=-2*F,A[6]=0,A[7]=0,A[8]=0,A[9]=0,A[10]=2*W,A[11]=0,A[12]=(Q+B)*G,A[13]=(J+Y)*F,A[14]=(X+C)*W,A[15]=1,A}var od0=oTQ;eTQ.ortho=od0;function td0(A,Q,B,Y,J,C,X){var G=1/(Q-B),F=1/(Y-J),W=1/(C-X);return A[0]=-2*G,A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[5]=-2*F,A[6]=0,A[7]=0,A[8]=0,A[9]=0,A[10]=W,A[11]=0,A[12]=(Q+B)*G,A[13]=(J+Y)*F,A[14]=C*W,A[15]=1,A}function ed0(A,Q,B,Y){var J,C,X,G,F,W,Z,U,$,E,K=Q[0],I=Q[1],V=Q[2],H=Y[0],D=Y[1],L=Y[2],z=B[0],M=B[1],N=B[2];if(Math.abs(K-z)0)E=1/Math.sqrt(E),Z*=E,U*=E,$*=E;var K=F*$-W*U,I=W*Z-G*$,V=G*U-F*Z;if(E=K*K+I*I+V*V,E>0)E=1/Math.sqrt(E),K*=E,I*=E,V*=E;return A[0]=K,A[1]=I,A[2]=V,A[3]=0,A[4]=U*V-$*I,A[5]=$*K-Z*V,A[6]=Z*I-U*K,A[7]=0,A[8]=Z,A[9]=U,A[10]=$,A[11]=0,A[12]=J,A[13]=C,A[14]=X,A[15]=1,A}function Qc0(A){return"mat4("+A[0]+", "+A[1]+", "+A[2]+", "+A[3]+", "+A[4]+", "+A[5]+", "+A[6]+", "+A[7]+", "+A[8]+", "+A[9]+", "+A[10]+", "+A[11]+", "+A[12]+", "+A[13]+", "+A[14]+", "+A[15]+")"}function Bc0(A){return Math.hypot(A[0],A[1],A[2],A[3],A[4],A[5],A[6],A[7],A[8],A[9],A[10],A[11],A[12],A[13],A[14],A[15])}function Yc0(A,Q,B){return A[0]=Q[0]+B[0],A[1]=Q[1]+B[1],A[2]=Q[2]+B[2],A[3]=Q[3]+B[3],A[4]=Q[4]+B[4],A[5]=Q[5]+B[5],A[6]=Q[6]+B[6],A[7]=Q[7]+B[7],A[8]=Q[8]+B[8],A[9]=Q[9]+B[9],A[10]=Q[10]+B[10],A[11]=Q[11]+B[11],A[12]=Q[12]+B[12],A[13]=Q[13]+B[13],A[14]=Q[14]+B[14],A[15]=Q[15]+B[15],A}function tTQ(A,Q,B){return A[0]=Q[0]-B[0],A[1]=Q[1]-B[1],A[2]=Q[2]-B[2],A[3]=Q[3]-B[3],A[4]=Q[4]-B[4],A[5]=Q[5]-B[5],A[6]=Q[6]-B[6],A[7]=Q[7]-B[7],A[8]=Q[8]-B[8],A[9]=Q[9]-B[9],A[10]=Q[10]-B[10],A[11]=Q[11]-B[11],A[12]=Q[12]-B[12],A[13]=Q[13]-B[13],A[14]=Q[14]-B[14],A[15]=Q[15]-B[15],A}function Jc0(A,Q,B){return A[0]=Q[0]*B,A[1]=Q[1]*B,A[2]=Q[2]*B,A[3]=Q[3]*B,A[4]=Q[4]*B,A[5]=Q[5]*B,A[6]=Q[6]*B,A[7]=Q[7]*B,A[8]=Q[8]*B,A[9]=Q[9]*B,A[10]=Q[10]*B,A[11]=Q[11]*B,A[12]=Q[12]*B,A[13]=Q[13]*B,A[14]=Q[14]*B,A[15]=Q[15]*B,A}function Cc0(A,Q,B,Y){return A[0]=Q[0]+B[0]*Y,A[1]=Q[1]+B[1]*Y,A[2]=Q[2]+B[2]*Y,A[3]=Q[3]+B[3]*Y,A[4]=Q[4]+B[4]*Y,A[5]=Q[5]+B[5]*Y,A[6]=Q[6]+B[6]*Y,A[7]=Q[7]+B[7]*Y,A[8]=Q[8]+B[8]*Y,A[9]=Q[9]+B[9]*Y,A[10]=Q[10]+B[10]*Y,A[11]=Q[11]+B[11]*Y,A[12]=Q[12]+B[12]*Y,A[13]=Q[13]+B[13]*Y,A[14]=Q[14]+B[14]*Y,A[15]=Q[15]+B[15]*Y,A}function Xc0(A,Q){return A[0]===Q[0]&&A[1]===Q[1]&&A[2]===Q[2]&&A[3]===Q[3]&&A[4]===Q[4]&&A[5]===Q[5]&&A[6]===Q[6]&&A[7]===Q[7]&&A[8]===Q[8]&&A[9]===Q[9]&&A[10]===Q[10]&&A[11]===Q[11]&&A[12]===Q[12]&&A[13]===Q[13]&&A[14]===Q[14]&&A[15]===Q[15]}function Gc0(A,Q){var B=A[0],Y=A[1],J=A[2],C=A[3],X=A[4],G=A[5],F=A[6],W=A[7],Z=A[8],U=A[9],$=A[10],E=A[11],K=A[12],I=A[13],V=A[14],H=A[15],D=Q[0],L=Q[1],z=Q[2],M=Q[3],N=Q[4],q=Q[5],w=Q[6],P=Q[7],_=Q[8],O=Q[9],k=Q[10],T=Q[11],S=Q[12],v=Q[13],y=Q[14],g=Q[15];return Math.abs(B-D)<=B0.EPSILON*Math.max(1,Math.abs(B),Math.abs(D))&&Math.abs(Y-L)<=B0.EPSILON*Math.max(1,Math.abs(Y),Math.abs(L))&&Math.abs(J-z)<=B0.EPSILON*Math.max(1,Math.abs(J),Math.abs(z))&&Math.abs(C-M)<=B0.EPSILON*Math.max(1,Math.abs(C),Math.abs(M))&&Math.abs(X-N)<=B0.EPSILON*Math.max(1,Math.abs(X),Math.abs(N))&&Math.abs(G-q)<=B0.EPSILON*Math.max(1,Math.abs(G),Math.abs(q))&&Math.abs(F-w)<=B0.EPSILON*Math.max(1,Math.abs(F),Math.abs(w))&&Math.abs(W-P)<=B0.EPSILON*Math.max(1,Math.abs(W),Math.abs(P))&&Math.abs(Z-_)<=B0.EPSILON*Math.max(1,Math.abs(Z),Math.abs(_))&&Math.abs(U-O)<=B0.EPSILON*Math.max(1,Math.abs(U),Math.abs(O))&&Math.abs($-k)<=B0.EPSILON*Math.max(1,Math.abs($),Math.abs(k))&&Math.abs(E-T)<=B0.EPSILON*Math.max(1,Math.abs(E),Math.abs(T))&&Math.abs(K-S)<=B0.EPSILON*Math.max(1,Math.abs(K),Math.abs(S))&&Math.abs(I-v)<=B0.EPSILON*Math.max(1,Math.abs(I),Math.abs(v))&&Math.abs(V-y)<=B0.EPSILON*Math.max(1,Math.abs(V),Math.abs(y))&&Math.abs(H-g)<=B0.EPSILON*Math.max(1,Math.abs(H),Math.abs(g))}var Fc0=nTQ;eTQ.mul=Fc0;var Wc0=tTQ;eTQ.sub=Wc0});var yo=R(($SQ)=>{function zk(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")zk=function(B){return typeof B};else zk=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return zk(A)}Object.defineProperty($SQ,"__esModule",{value:!0});$SQ.create=BSQ;$SQ.clone=Gl0;$SQ.length=YSQ;$SQ.fromValues=Fl0;$SQ.copy=Wl0;$SQ.set=Zl0;$SQ.add=$l0;$SQ.subtract=JSQ;$SQ.multiply=CSQ;$SQ.divide=XSQ;$SQ.ceil=Ul0;$SQ.floor=El0;$SQ.min=Kl0;$SQ.max=Vl0;$SQ.round=Il0;$SQ.scale=Hl0;$SQ.scaleAndAdd=Dl0;$SQ.distance=GSQ;$SQ.squaredDistance=FSQ;$SQ.squaredLength=WSQ;$SQ.negate=Nl0;$SQ.inverse=Ll0;$SQ.normalize=ql0;$SQ.dot=ZSQ;$SQ.cross=Ml0;$SQ.lerp=zl0;$SQ.hermite=Rl0;$SQ.bezier=wl0;$SQ.random=jl0;$SQ.transformMat4=Ol0;$SQ.transformMat3=Pl0;$SQ.transformQuat=Tl0;$SQ.rotateX=Sl0;$SQ.rotateY=kl0;$SQ.rotateZ=_l0;$SQ.angle=vl0;$SQ.zero=yl0;$SQ.str=hl0;$SQ.exactEquals=gl0;$SQ.equals=xl0;$SQ.forEach=$SQ.sqrLen=$SQ.len=$SQ.sqrDist=$SQ.dist=$SQ.div=$SQ.mul=$SQ.sub=void 0;var hG=Xl0(E1());function QSQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(QSQ=function(J){return J?B:Q})(A)}function Xl0(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||zk(A)!=="object"&&typeof A!=="function")return{default:A};var B=QSQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function BSQ(){var A=new hG.ARRAY_TYPE(3);if(hG.ARRAY_TYPE!=Float32Array)A[0]=0,A[1]=0,A[2]=0;return A}function Gl0(A){var Q=new hG.ARRAY_TYPE(3);return Q[0]=A[0],Q[1]=A[1],Q[2]=A[2],Q}function YSQ(A){var Q=A[0],B=A[1],Y=A[2];return Math.hypot(Q,B,Y)}function Fl0(A,Q,B){var Y=new hG.ARRAY_TYPE(3);return Y[0]=A,Y[1]=Q,Y[2]=B,Y}function Wl0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A}function Zl0(A,Q,B,Y){return A[0]=Q,A[1]=B,A[2]=Y,A}function $l0(A,Q,B){return A[0]=Q[0]+B[0],A[1]=Q[1]+B[1],A[2]=Q[2]+B[2],A}function JSQ(A,Q,B){return A[0]=Q[0]-B[0],A[1]=Q[1]-B[1],A[2]=Q[2]-B[2],A}function CSQ(A,Q,B){return A[0]=Q[0]*B[0],A[1]=Q[1]*B[1],A[2]=Q[2]*B[2],A}function XSQ(A,Q,B){return A[0]=Q[0]/B[0],A[1]=Q[1]/B[1],A[2]=Q[2]/B[2],A}function Ul0(A,Q){return A[0]=Math.ceil(Q[0]),A[1]=Math.ceil(Q[1]),A[2]=Math.ceil(Q[2]),A}function El0(A,Q){return A[0]=Math.floor(Q[0]),A[1]=Math.floor(Q[1]),A[2]=Math.floor(Q[2]),A}function Kl0(A,Q,B){return A[0]=Math.min(Q[0],B[0]),A[1]=Math.min(Q[1],B[1]),A[2]=Math.min(Q[2],B[2]),A}function Vl0(A,Q,B){return A[0]=Math.max(Q[0],B[0]),A[1]=Math.max(Q[1],B[1]),A[2]=Math.max(Q[2],B[2]),A}function Il0(A,Q){return A[0]=Math.round(Q[0]),A[1]=Math.round(Q[1]),A[2]=Math.round(Q[2]),A}function Hl0(A,Q,B){return A[0]=Q[0]*B,A[1]=Q[1]*B,A[2]=Q[2]*B,A}function Dl0(A,Q,B,Y){return A[0]=Q[0]+B[0]*Y,A[1]=Q[1]+B[1]*Y,A[2]=Q[2]+B[2]*Y,A}function GSQ(A,Q){var B=Q[0]-A[0],Y=Q[1]-A[1],J=Q[2]-A[2];return Math.hypot(B,Y,J)}function FSQ(A,Q){var B=Q[0]-A[0],Y=Q[1]-A[1],J=Q[2]-A[2];return B*B+Y*Y+J*J}function WSQ(A){var Q=A[0],B=A[1],Y=A[2];return Q*Q+B*B+Y*Y}function Nl0(A,Q){return A[0]=-Q[0],A[1]=-Q[1],A[2]=-Q[2],A}function Ll0(A,Q){return A[0]=1/Q[0],A[1]=1/Q[1],A[2]=1/Q[2],A}function ql0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=B*B+Y*Y+J*J;if(C>0)C=1/Math.sqrt(C);return A[0]=Q[0]*C,A[1]=Q[1]*C,A[2]=Q[2]*C,A}function ZSQ(A,Q){return A[0]*Q[0]+A[1]*Q[1]+A[2]*Q[2]}function Ml0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=B[0],G=B[1],F=B[2];return A[0]=J*F-C*G,A[1]=C*X-Y*F,A[2]=Y*G-J*X,A}function zl0(A,Q,B,Y){var J=Q[0],C=Q[1],X=Q[2];return A[0]=J+Y*(B[0]-J),A[1]=C+Y*(B[1]-C),A[2]=X+Y*(B[2]-X),A}function Rl0(A,Q,B,Y,J,C){var X=C*C,G=X*(2*C-3)+1,F=X*(C-2)+C,W=X*(C-1),Z=X*(3-2*C);return A[0]=Q[0]*G+B[0]*F+Y[0]*W+J[0]*Z,A[1]=Q[1]*G+B[1]*F+Y[1]*W+J[1]*Z,A[2]=Q[2]*G+B[2]*F+Y[2]*W+J[2]*Z,A}function wl0(A,Q,B,Y,J,C){var X=1-C,G=X*X,F=C*C,W=G*X,Z=3*C*G,U=3*F*X,$=F*C;return A[0]=Q[0]*W+B[0]*Z+Y[0]*U+J[0]*$,A[1]=Q[1]*W+B[1]*Z+Y[1]*U+J[1]*$,A[2]=Q[2]*W+B[2]*Z+Y[2]*U+J[2]*$,A}function jl0(A,Q){Q=Q||1;var B=hG.RANDOM()*2*Math.PI,Y=hG.RANDOM()*2-1,J=Math.sqrt(1-Y*Y)*Q;return A[0]=Math.cos(B)*J,A[1]=Math.sin(B)*J,A[2]=Y*Q,A}function Ol0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=B[3]*Y+B[7]*J+B[11]*C+B[15];return X=X||1,A[0]=(B[0]*Y+B[4]*J+B[8]*C+B[12])/X,A[1]=(B[1]*Y+B[5]*J+B[9]*C+B[13])/X,A[2]=(B[2]*Y+B[6]*J+B[10]*C+B[14])/X,A}function Pl0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2];return A[0]=Y*B[0]+J*B[3]+C*B[6],A[1]=Y*B[1]+J*B[4]+C*B[7],A[2]=Y*B[2]+J*B[5]+C*B[8],A}function Tl0(A,Q,B){var Y=B[0],J=B[1],C=B[2],X=B[3],G=Q[0],F=Q[1],W=Q[2],Z=J*W-C*F,U=C*G-Y*W,$=Y*F-J*G,E=J*$-C*U,K=C*Z-Y*$,I=Y*U-J*Z,V=X*2;return Z*=V,U*=V,$*=V,E*=2,K*=2,I*=2,A[0]=G+Z+E,A[1]=F+U+K,A[2]=W+$+I,A}function Sl0(A,Q,B,Y){var J=[],C=[];return J[0]=Q[0]-B[0],J[1]=Q[1]-B[1],J[2]=Q[2]-B[2],C[0]=J[0],C[1]=J[1]*Math.cos(Y)-J[2]*Math.sin(Y),C[2]=J[1]*Math.sin(Y)+J[2]*Math.cos(Y),A[0]=C[0]+B[0],A[1]=C[1]+B[1],A[2]=C[2]+B[2],A}function kl0(A,Q,B,Y){var J=[],C=[];return J[0]=Q[0]-B[0],J[1]=Q[1]-B[1],J[2]=Q[2]-B[2],C[0]=J[2]*Math.sin(Y)+J[0]*Math.cos(Y),C[1]=J[1],C[2]=J[2]*Math.cos(Y)-J[0]*Math.sin(Y),A[0]=C[0]+B[0],A[1]=C[1]+B[1],A[2]=C[2]+B[2],A}function _l0(A,Q,B,Y){var J=[],C=[];return J[0]=Q[0]-B[0],J[1]=Q[1]-B[1],J[2]=Q[2]-B[2],C[0]=J[0]*Math.cos(Y)-J[1]*Math.sin(Y),C[1]=J[0]*Math.sin(Y)+J[1]*Math.cos(Y),C[2]=J[2],A[0]=C[0]+B[0],A[1]=C[1]+B[1],A[2]=C[2]+B[2],A}function vl0(A,Q){var B=A[0],Y=A[1],J=A[2],C=Q[0],X=Q[1],G=Q[2],F=Math.sqrt(B*B+Y*Y+J*J),W=Math.sqrt(C*C+X*X+G*G),Z=F*W,U=Z&&ZSQ(A,Q)/Z;return Math.acos(Math.min(Math.max(U,-1),1))}function yl0(A){return A[0]=0,A[1]=0,A[2]=0,A}function hl0(A){return"vec3("+A[0]+", "+A[1]+", "+A[2]+")"}function gl0(A,Q){return A[0]===Q[0]&&A[1]===Q[1]&&A[2]===Q[2]}function xl0(A,Q){var B=A[0],Y=A[1],J=A[2],C=Q[0],X=Q[1],G=Q[2];return Math.abs(B-C)<=hG.EPSILON*Math.max(1,Math.abs(B),Math.abs(C))&&Math.abs(Y-X)<=hG.EPSILON*Math.max(1,Math.abs(Y),Math.abs(X))&&Math.abs(J-G)<=hG.EPSILON*Math.max(1,Math.abs(J),Math.abs(G))}var fl0=JSQ;$SQ.sub=fl0;var bl0=CSQ;$SQ.mul=bl0;var ml0=XSQ;$SQ.div=ml0;var ul0=GSQ;$SQ.dist=ul0;var dl0=FSQ;$SQ.sqrDist=dl0;var cl0=YSQ;$SQ.len=cl0;var ll0=WSQ;$SQ.sqrLen=ll0;var pl0=function(){var A=BSQ();return function(Q,B,Y,J,C,X){var G,F;if(!B)B=3;if(!Y)Y=0;if(J)F=Math.min(J*B+Y,Q.length);else F=Q.length;for(G=Y;G{function Rk(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")Rk=function(B){return typeof B};else Rk=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return Rk(A)}Object.defineProperty(MSQ,"__esModule",{value:!0});MSQ.create=KSQ;MSQ.clone=mp0;MSQ.fromValues=up0;MSQ.copy=dp0;MSQ.set=cp0;MSQ.add=lp0;MSQ.subtract=VSQ;MSQ.multiply=ISQ;MSQ.divide=HSQ;MSQ.ceil=pp0;MSQ.floor=ip0;MSQ.min=np0;MSQ.max=sp0;MSQ.round=rp0;MSQ.scale=ap0;MSQ.scaleAndAdd=op0;MSQ.distance=DSQ;MSQ.squaredDistance=NSQ;MSQ.length=LSQ;MSQ.squaredLength=qSQ;MSQ.negate=tp0;MSQ.inverse=ep0;MSQ.normalize=Ai0;MSQ.dot=Qi0;MSQ.cross=Bi0;MSQ.lerp=Yi0;MSQ.random=Ji0;MSQ.transformMat4=Ci0;MSQ.transformQuat=Xi0;MSQ.zero=Gi0;MSQ.str=Fi0;MSQ.exactEquals=Wi0;MSQ.equals=Zi0;MSQ.forEach=MSQ.sqrLen=MSQ.len=MSQ.sqrDist=MSQ.dist=MSQ.div=MSQ.mul=MSQ.sub=void 0;var CC=bp0(E1());function ESQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(ESQ=function(J){return J?B:Q})(A)}function bp0(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||Rk(A)!=="object"&&typeof A!=="function")return{default:A};var B=ESQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function KSQ(){var A=new CC.ARRAY_TYPE(4);if(CC.ARRAY_TYPE!=Float32Array)A[0]=0,A[1]=0,A[2]=0,A[3]=0;return A}function mp0(A){var Q=new CC.ARRAY_TYPE(4);return Q[0]=A[0],Q[1]=A[1],Q[2]=A[2],Q[3]=A[3],Q}function up0(A,Q,B,Y){var J=new CC.ARRAY_TYPE(4);return J[0]=A,J[1]=Q,J[2]=B,J[3]=Y,J}function dp0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A[3]=Q[3],A}function cp0(A,Q,B,Y,J){return A[0]=Q,A[1]=B,A[2]=Y,A[3]=J,A}function lp0(A,Q,B){return A[0]=Q[0]+B[0],A[1]=Q[1]+B[1],A[2]=Q[2]+B[2],A[3]=Q[3]+B[3],A}function VSQ(A,Q,B){return A[0]=Q[0]-B[0],A[1]=Q[1]-B[1],A[2]=Q[2]-B[2],A[3]=Q[3]-B[3],A}function ISQ(A,Q,B){return A[0]=Q[0]*B[0],A[1]=Q[1]*B[1],A[2]=Q[2]*B[2],A[3]=Q[3]*B[3],A}function HSQ(A,Q,B){return A[0]=Q[0]/B[0],A[1]=Q[1]/B[1],A[2]=Q[2]/B[2],A[3]=Q[3]/B[3],A}function pp0(A,Q){return A[0]=Math.ceil(Q[0]),A[1]=Math.ceil(Q[1]),A[2]=Math.ceil(Q[2]),A[3]=Math.ceil(Q[3]),A}function ip0(A,Q){return A[0]=Math.floor(Q[0]),A[1]=Math.floor(Q[1]),A[2]=Math.floor(Q[2]),A[3]=Math.floor(Q[3]),A}function np0(A,Q,B){return A[0]=Math.min(Q[0],B[0]),A[1]=Math.min(Q[1],B[1]),A[2]=Math.min(Q[2],B[2]),A[3]=Math.min(Q[3],B[3]),A}function sp0(A,Q,B){return A[0]=Math.max(Q[0],B[0]),A[1]=Math.max(Q[1],B[1]),A[2]=Math.max(Q[2],B[2]),A[3]=Math.max(Q[3],B[3]),A}function rp0(A,Q){return A[0]=Math.round(Q[0]),A[1]=Math.round(Q[1]),A[2]=Math.round(Q[2]),A[3]=Math.round(Q[3]),A}function ap0(A,Q,B){return A[0]=Q[0]*B,A[1]=Q[1]*B,A[2]=Q[2]*B,A[3]=Q[3]*B,A}function op0(A,Q,B,Y){return A[0]=Q[0]+B[0]*Y,A[1]=Q[1]+B[1]*Y,A[2]=Q[2]+B[2]*Y,A[3]=Q[3]+B[3]*Y,A}function DSQ(A,Q){var B=Q[0]-A[0],Y=Q[1]-A[1],J=Q[2]-A[2],C=Q[3]-A[3];return Math.hypot(B,Y,J,C)}function NSQ(A,Q){var B=Q[0]-A[0],Y=Q[1]-A[1],J=Q[2]-A[2],C=Q[3]-A[3];return B*B+Y*Y+J*J+C*C}function LSQ(A){var Q=A[0],B=A[1],Y=A[2],J=A[3];return Math.hypot(Q,B,Y,J)}function qSQ(A){var Q=A[0],B=A[1],Y=A[2],J=A[3];return Q*Q+B*B+Y*Y+J*J}function tp0(A,Q){return A[0]=-Q[0],A[1]=-Q[1],A[2]=-Q[2],A[3]=-Q[3],A}function ep0(A,Q){return A[0]=1/Q[0],A[1]=1/Q[1],A[2]=1/Q[2],A[3]=1/Q[3],A}function Ai0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=B*B+Y*Y+J*J+C*C;if(X>0)X=1/Math.sqrt(X);return A[0]=B*X,A[1]=Y*X,A[2]=J*X,A[3]=C*X,A}function Qi0(A,Q){return A[0]*Q[0]+A[1]*Q[1]+A[2]*Q[2]+A[3]*Q[3]}function Bi0(A,Q,B,Y){var J=B[0]*Y[1]-B[1]*Y[0],C=B[0]*Y[2]-B[2]*Y[0],X=B[0]*Y[3]-B[3]*Y[0],G=B[1]*Y[2]-B[2]*Y[1],F=B[1]*Y[3]-B[3]*Y[1],W=B[2]*Y[3]-B[3]*Y[2],Z=Q[0],U=Q[1],$=Q[2],E=Q[3];return A[0]=U*W-$*F+E*G,A[1]=-(Z*W)+$*X-E*C,A[2]=Z*F-U*X+E*J,A[3]=-(Z*G)+U*C-$*J,A}function Yi0(A,Q,B,Y){var J=Q[0],C=Q[1],X=Q[2],G=Q[3];return A[0]=J+Y*(B[0]-J),A[1]=C+Y*(B[1]-C),A[2]=X+Y*(B[2]-X),A[3]=G+Y*(B[3]-G),A}function Ji0(A,Q){Q=Q||1;var B,Y,J,C,X,G;do B=CC.RANDOM()*2-1,Y=CC.RANDOM()*2-1,X=B*B+Y*Y;while(X>=1);do J=CC.RANDOM()*2-1,C=CC.RANDOM()*2-1,G=J*J+C*C;while(G>=1);var F=Math.sqrt((1-X)/G);return A[0]=Q*B,A[1]=Q*Y,A[2]=Q*J*F,A[3]=Q*C*F,A}function Ci0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3];return A[0]=B[0]*Y+B[4]*J+B[8]*C+B[12]*X,A[1]=B[1]*Y+B[5]*J+B[9]*C+B[13]*X,A[2]=B[2]*Y+B[6]*J+B[10]*C+B[14]*X,A[3]=B[3]*Y+B[7]*J+B[11]*C+B[15]*X,A}function Xi0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=B[0],G=B[1],F=B[2],W=B[3],Z=W*Y+G*C-F*J,U=W*J+F*Y-X*C,$=W*C+X*J-G*Y,E=-X*Y-G*J-F*C;return A[0]=Z*W+E*-X+U*-F-$*-G,A[1]=U*W+E*-G+$*-X-Z*-F,A[2]=$*W+E*-F+Z*-G-U*-X,A[3]=Q[3],A}function Gi0(A){return A[0]=0,A[1]=0,A[2]=0,A[3]=0,A}function Fi0(A){return"vec4("+A[0]+", "+A[1]+", "+A[2]+", "+A[3]+")"}function Wi0(A,Q){return A[0]===Q[0]&&A[1]===Q[1]&&A[2]===Q[2]&&A[3]===Q[3]}function Zi0(A,Q){var B=A[0],Y=A[1],J=A[2],C=A[3],X=Q[0],G=Q[1],F=Q[2],W=Q[3];return Math.abs(B-X)<=CC.EPSILON*Math.max(1,Math.abs(B),Math.abs(X))&&Math.abs(Y-G)<=CC.EPSILON*Math.max(1,Math.abs(Y),Math.abs(G))&&Math.abs(J-F)<=CC.EPSILON*Math.max(1,Math.abs(J),Math.abs(F))&&Math.abs(C-W)<=CC.EPSILON*Math.max(1,Math.abs(C),Math.abs(W))}var $i0=VSQ;MSQ.sub=$i0;var Ui0=ISQ;MSQ.mul=Ui0;var Ei0=HSQ;MSQ.div=Ei0;var Ki0=DSQ;MSQ.dist=Ki0;var Vi0=NSQ;MSQ.sqrDist=Vi0;var Ii0=LSQ;MSQ.len=Ii0;var Hi0=qSQ;MSQ.sqrLen=Hi0;var Di0=function(){var A=KSQ();return function(Q,B,Y,J,C,X){var G,F;if(!B)B=4;if(!Y)Y=0;if(J)F=Math.min(J*B+Y,Q.length);else F=Q.length;for(G=Y;G{function wk(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")wk=function(B){return typeof B};else wk=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return wk(A)}Object.defineProperty(ySQ,"__esModule",{value:!0});ySQ.create=go;ySQ.identity=Xn0;ySQ.setAxisAngle=wSQ;ySQ.getAxisAngle=Gn0;ySQ.getAngle=Fn0;ySQ.multiply=jSQ;ySQ.rotateX=Wn0;ySQ.rotateY=Zn0;ySQ.rotateZ=$n0;ySQ.calculateW=Un0;ySQ.exp=OSQ;ySQ.ln=PSQ;ySQ.pow=En0;ySQ.slerp=jk;ySQ.random=Kn0;ySQ.invert=Vn0;ySQ.conjugate=In0;ySQ.fromMat3=TSQ;ySQ.fromEuler=Hn0;ySQ.str=Dn0;ySQ.setAxes=ySQ.sqlerp=ySQ.rotationTo=ySQ.equals=ySQ.exactEquals=ySQ.normalize=ySQ.sqrLen=ySQ.squaredLength=ySQ.len=ySQ.length=ySQ.lerp=ySQ.dot=ySQ.scale=ySQ.mul=ySQ.add=ySQ.set=ySQ.copy=ySQ.fromValues=ySQ.clone=void 0;var J4=Ok(E1()),Cn0=Ok(_o()),gG=Ok(yo()),l8=Ok(ho());function RSQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(RSQ=function(J){return J?B:Q})(A)}function Ok(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||wk(A)!=="object"&&typeof A!=="function")return{default:A};var B=RSQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function go(){var A=new J4.ARRAY_TYPE(4);if(J4.ARRAY_TYPE!=Float32Array)A[0]=0,A[1]=0,A[2]=0;return A[3]=1,A}function Xn0(A){return A[0]=0,A[1]=0,A[2]=0,A[3]=1,A}function wSQ(A,Q,B){B=B*0.5;var Y=Math.sin(B);return A[0]=Y*Q[0],A[1]=Y*Q[1],A[2]=Y*Q[2],A[3]=Math.cos(B),A}function Gn0(A,Q){var B=Math.acos(Q[3])*2,Y=Math.sin(B/2);if(Y>J4.EPSILON)A[0]=Q[0]/Y,A[1]=Q[1]/Y,A[2]=Q[2]/Y;else A[0]=1,A[1]=0,A[2]=0;return B}function Fn0(A,Q){var B=kSQ(A,Q);return Math.acos(2*B*B-1)}function jSQ(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=B[0],F=B[1],W=B[2],Z=B[3];return A[0]=Y*Z+X*G+J*W-C*F,A[1]=J*Z+X*F+C*G-Y*W,A[2]=C*Z+X*W+Y*F-J*G,A[3]=X*Z-Y*G-J*F-C*W,A}function Wn0(A,Q,B){B*=0.5;var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Math.sin(B),F=Math.cos(B);return A[0]=Y*F+X*G,A[1]=J*F+C*G,A[2]=C*F-J*G,A[3]=X*F-Y*G,A}function Zn0(A,Q,B){B*=0.5;var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Math.sin(B),F=Math.cos(B);return A[0]=Y*F-C*G,A[1]=J*F+X*G,A[2]=C*F+Y*G,A[3]=X*F-J*G,A}function $n0(A,Q,B){B*=0.5;var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Math.sin(B),F=Math.cos(B);return A[0]=Y*F+J*G,A[1]=J*F-Y*G,A[2]=C*F+X*G,A[3]=X*F-C*G,A}function Un0(A,Q){var B=Q[0],Y=Q[1],J=Q[2];return A[0]=B,A[1]=Y,A[2]=J,A[3]=Math.sqrt(Math.abs(1-B*B-Y*Y-J*J)),A}function OSQ(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Math.sqrt(B*B+Y*Y+J*J),G=Math.exp(C),F=X>0?G*Math.sin(X)/X:0;return A[0]=B*F,A[1]=Y*F,A[2]=J*F,A[3]=G*Math.cos(X),A}function PSQ(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Math.sqrt(B*B+Y*Y+J*J),G=X>0?Math.atan2(X,C)/X:0;return A[0]=B*G,A[1]=Y*G,A[2]=J*G,A[3]=0.5*Math.log(B*B+Y*Y+J*J+C*C),A}function En0(A,Q,B){return PSQ(A,Q),SSQ(A,A,B),OSQ(A,A),A}function jk(A,Q,B,Y){var J=Q[0],C=Q[1],X=Q[2],G=Q[3],F=B[0],W=B[1],Z=B[2],U=B[3],$,E,K,I,V;if(E=J*F+C*W+X*Z+G*U,E<0)E=-E,F=-F,W=-W,Z=-Z,U=-U;if(1-E>J4.EPSILON)$=Math.acos(E),K=Math.sin($),I=Math.sin((1-Y)*$)/K,V=Math.sin(Y*$)/K;else I=1-Y,V=Y;return A[0]=I*J+V*F,A[1]=I*C+V*W,A[2]=I*X+V*Z,A[3]=I*G+V*U,A}function Kn0(A){var Q=J4.RANDOM(),B=J4.RANDOM(),Y=J4.RANDOM(),J=Math.sqrt(1-Q),C=Math.sqrt(Q);return A[0]=J*Math.sin(2*Math.PI*B),A[1]=J*Math.cos(2*Math.PI*B),A[2]=C*Math.sin(2*Math.PI*Y),A[3]=C*Math.cos(2*Math.PI*Y),A}function Vn0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=B*B+Y*Y+J*J+C*C,G=X?1/X:0;return A[0]=-B*G,A[1]=-Y*G,A[2]=-J*G,A[3]=C*G,A}function In0(A,Q){return A[0]=-Q[0],A[1]=-Q[1],A[2]=-Q[2],A[3]=Q[3],A}function TSQ(A,Q){var B=Q[0]+Q[4]+Q[8],Y;if(B>0)Y=Math.sqrt(B+1),A[3]=0.5*Y,Y=0.5/Y,A[0]=(Q[5]-Q[7])*Y,A[1]=(Q[6]-Q[2])*Y,A[2]=(Q[1]-Q[3])*Y;else{var J=0;if(Q[4]>Q[0])J=1;if(Q[8]>Q[J*3+J])J=2;var C=(J+1)%3,X=(J+2)%3;Y=Math.sqrt(Q[J*3+J]-Q[C*3+C]-Q[X*3+X]+1),A[J]=0.5*Y,Y=0.5/Y,A[3]=(Q[C*3+X]-Q[X*3+C])*Y,A[C]=(Q[C*3+J]+Q[J*3+C])*Y,A[X]=(Q[X*3+J]+Q[J*3+X])*Y}return A}function Hn0(A,Q,B,Y){var J=0.5*Math.PI/180;Q*=J,B*=J,Y*=J;var C=Math.sin(Q),X=Math.cos(Q),G=Math.sin(B),F=Math.cos(B),W=Math.sin(Y),Z=Math.cos(Y);return A[0]=C*F*Z-X*G*W,A[1]=X*G*Z+C*F*W,A[2]=X*F*W-C*G*Z,A[3]=X*F*Z+C*G*W,A}function Dn0(A){return"quat("+A[0]+", "+A[1]+", "+A[2]+", "+A[3]+")"}var Nn0=l8.clone;ySQ.clone=Nn0;var Ln0=l8.fromValues;ySQ.fromValues=Ln0;var qn0=l8.copy;ySQ.copy=qn0;var Mn0=l8.set;ySQ.set=Mn0;var zn0=l8.add;ySQ.add=zn0;var Rn0=jSQ;ySQ.mul=Rn0;var SSQ=l8.scale;ySQ.scale=SSQ;var kSQ=l8.dot;ySQ.dot=kSQ;var wn0=l8.lerp;ySQ.lerp=wn0;var _SQ=l8.length;ySQ.length=_SQ;var jn0=_SQ;ySQ.len=jn0;var vSQ=l8.squaredLength;ySQ.squaredLength=vSQ;var On0=vSQ;ySQ.sqrLen=On0;var xo=l8.normalize;ySQ.normalize=xo;var Pn0=l8.exactEquals;ySQ.exactEquals=Pn0;var Tn0=l8.equals;ySQ.equals=Tn0;var Sn0=function(){var A=gG.create(),Q=gG.fromValues(1,0,0),B=gG.fromValues(0,1,0);return function(Y,J,C){var X=gG.dot(J,C);if(X<-0.999999){if(gG.cross(A,Q,J),gG.len(A)<0.000001)gG.cross(A,B,J);return gG.normalize(A,A),wSQ(Y,A,Math.PI),Y}else if(X>0.999999)return Y[0]=0,Y[1]=0,Y[2]=0,Y[3]=1,Y;else return gG.cross(A,J,C),Y[0]=A[0],Y[1]=A[1],Y[2]=A[2],Y[3]=1+X,xo(Y,Y)}}();ySQ.rotationTo=Sn0;var kn0=function(){var A=go(),Q=go();return function(B,Y,J,C,X,G){return jk(A,Y,X,G),jk(Q,J,C,G),jk(B,A,Q,2*G*(1-G)),B}}();ySQ.sqlerp=kn0;var _n0=function(){var A=Cn0.create();return function(Q,B,Y,J){return A[0]=Y[0],A[3]=Y[1],A[6]=Y[2],A[1]=J[0],A[4]=J[1],A[7]=J[2],A[2]=-B[0],A[5]=-B[1],A[8]=-B[2],xo(Q,TSQ(Q,A))}}();ySQ.setAxes=_n0});var pSQ=R((cSQ)=>{function Pk(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")Pk=function(B){return typeof B};else Pk=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return Pk(A)}Object.defineProperty(cSQ,"__esModule",{value:!0});cSQ.create=Hs0;cSQ.clone=Ds0;cSQ.fromValues=Ns0;cSQ.fromRotationTranslationValues=Ls0;cSQ.fromRotationTranslation=fSQ;cSQ.fromTranslation=qs0;cSQ.fromRotation=Ms0;cSQ.fromMat4=zs0;cSQ.copy=bSQ;cSQ.identity=Rs0;cSQ.set=ws0;cSQ.getDual=Os0;cSQ.setDual=Ts0;cSQ.getTranslation=Ss0;cSQ.translate=ks0;cSQ.rotateX=_s0;cSQ.rotateY=vs0;cSQ.rotateZ=ys0;cSQ.rotateByQuatAppend=hs0;cSQ.rotateByQuatPrepend=gs0;cSQ.rotateAroundAxis=xs0;cSQ.add=fs0;cSQ.multiply=mSQ;cSQ.scale=ms0;cSQ.lerp=us0;cSQ.invert=ds0;cSQ.conjugate=cs0;cSQ.normalize=is0;cSQ.str=ns0;cSQ.exactEquals=ss0;cSQ.equals=rs0;cSQ.sqrLen=cSQ.squaredLength=cSQ.len=cSQ.length=cSQ.dot=cSQ.mul=cSQ.setReal=cSQ.getReal=void 0;var L9=bo(E1()),xG=bo(fo()),gSQ=bo(vo());function xSQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(xSQ=function(J){return J?B:Q})(A)}function bo(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||Pk(A)!=="object"&&typeof A!=="function")return{default:A};var B=xSQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function Hs0(){var A=new L9.ARRAY_TYPE(8);if(L9.ARRAY_TYPE!=Float32Array)A[0]=0,A[1]=0,A[2]=0,A[4]=0,A[5]=0,A[6]=0,A[7]=0;return A[3]=1,A}function Ds0(A){var Q=new L9.ARRAY_TYPE(8);return Q[0]=A[0],Q[1]=A[1],Q[2]=A[2],Q[3]=A[3],Q[4]=A[4],Q[5]=A[5],Q[6]=A[6],Q[7]=A[7],Q}function Ns0(A,Q,B,Y,J,C,X,G){var F=new L9.ARRAY_TYPE(8);return F[0]=A,F[1]=Q,F[2]=B,F[3]=Y,F[4]=J,F[5]=C,F[6]=X,F[7]=G,F}function Ls0(A,Q,B,Y,J,C,X){var G=new L9.ARRAY_TYPE(8);G[0]=A,G[1]=Q,G[2]=B,G[3]=Y;var F=J*0.5,W=C*0.5,Z=X*0.5;return G[4]=F*Y+W*B-Z*Q,G[5]=W*Y+Z*A-F*B,G[6]=Z*Y+F*Q-W*A,G[7]=-F*A-W*Q-Z*B,G}function fSQ(A,Q,B){var Y=B[0]*0.5,J=B[1]*0.5,C=B[2]*0.5,X=Q[0],G=Q[1],F=Q[2],W=Q[3];return A[0]=X,A[1]=G,A[2]=F,A[3]=W,A[4]=Y*W+J*F-C*G,A[5]=J*W+C*X-Y*F,A[6]=C*W+Y*G-J*X,A[7]=-Y*X-J*G-C*F,A}function qs0(A,Q){return A[0]=0,A[1]=0,A[2]=0,A[3]=1,A[4]=Q[0]*0.5,A[5]=Q[1]*0.5,A[6]=Q[2]*0.5,A[7]=0,A}function Ms0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A[3]=Q[3],A[4]=0,A[5]=0,A[6]=0,A[7]=0,A}function zs0(A,Q){var B=xG.create();gSQ.getRotation(B,Q);var Y=new L9.ARRAY_TYPE(3);return gSQ.getTranslation(Y,Q),fSQ(A,B,Y),A}function bSQ(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A[3]=Q[3],A[4]=Q[4],A[5]=Q[5],A[6]=Q[6],A[7]=Q[7],A}function Rs0(A){return A[0]=0,A[1]=0,A[2]=0,A[3]=1,A[4]=0,A[5]=0,A[6]=0,A[7]=0,A}function ws0(A,Q,B,Y,J,C,X,G,F){return A[0]=Q,A[1]=B,A[2]=Y,A[3]=J,A[4]=C,A[5]=X,A[6]=G,A[7]=F,A}var js0=xG.copy;cSQ.getReal=js0;function Os0(A,Q){return A[0]=Q[4],A[1]=Q[5],A[2]=Q[6],A[3]=Q[7],A}var Ps0=xG.copy;cSQ.setReal=Ps0;function Ts0(A,Q){return A[4]=Q[0],A[5]=Q[1],A[6]=Q[2],A[7]=Q[3],A}function Ss0(A,Q){var B=Q[4],Y=Q[5],J=Q[6],C=Q[7],X=-Q[0],G=-Q[1],F=-Q[2],W=Q[3];return A[0]=(B*W+C*X+Y*F-J*G)*2,A[1]=(Y*W+C*G+J*X-B*F)*2,A[2]=(J*W+C*F+B*G-Y*X)*2,A}function ks0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=B[0]*0.5,F=B[1]*0.5,W=B[2]*0.5,Z=Q[4],U=Q[5],$=Q[6],E=Q[7];return A[0]=Y,A[1]=J,A[2]=C,A[3]=X,A[4]=X*G+J*W-C*F+Z,A[5]=X*F+C*G-Y*W+U,A[6]=X*W+Y*F-J*G+$,A[7]=-Y*G-J*F-C*W+E,A}function _s0(A,Q,B){var Y=-Q[0],J=-Q[1],C=-Q[2],X=Q[3],G=Q[4],F=Q[5],W=Q[6],Z=Q[7],U=G*X+Z*Y+F*C-W*J,$=F*X+Z*J+W*Y-G*C,E=W*X+Z*C+G*J-F*Y,K=Z*X-G*Y-F*J-W*C;return xG.rotateX(A,Q,B),Y=A[0],J=A[1],C=A[2],X=A[3],A[4]=U*X+K*Y+$*C-E*J,A[5]=$*X+K*J+E*Y-U*C,A[6]=E*X+K*C+U*J-$*Y,A[7]=K*X-U*Y-$*J-E*C,A}function vs0(A,Q,B){var Y=-Q[0],J=-Q[1],C=-Q[2],X=Q[3],G=Q[4],F=Q[5],W=Q[6],Z=Q[7],U=G*X+Z*Y+F*C-W*J,$=F*X+Z*J+W*Y-G*C,E=W*X+Z*C+G*J-F*Y,K=Z*X-G*Y-F*J-W*C;return xG.rotateY(A,Q,B),Y=A[0],J=A[1],C=A[2],X=A[3],A[4]=U*X+K*Y+$*C-E*J,A[5]=$*X+K*J+E*Y-U*C,A[6]=E*X+K*C+U*J-$*Y,A[7]=K*X-U*Y-$*J-E*C,A}function ys0(A,Q,B){var Y=-Q[0],J=-Q[1],C=-Q[2],X=Q[3],G=Q[4],F=Q[5],W=Q[6],Z=Q[7],U=G*X+Z*Y+F*C-W*J,$=F*X+Z*J+W*Y-G*C,E=W*X+Z*C+G*J-F*Y,K=Z*X-G*Y-F*J-W*C;return xG.rotateZ(A,Q,B),Y=A[0],J=A[1],C=A[2],X=A[3],A[4]=U*X+K*Y+$*C-E*J,A[5]=$*X+K*J+E*Y-U*C,A[6]=E*X+K*C+U*J-$*Y,A[7]=K*X-U*Y-$*J-E*C,A}function hs0(A,Q,B){var Y=B[0],J=B[1],C=B[2],X=B[3],G=Q[0],F=Q[1],W=Q[2],Z=Q[3];return A[0]=G*X+Z*Y+F*C-W*J,A[1]=F*X+Z*J+W*Y-G*C,A[2]=W*X+Z*C+G*J-F*Y,A[3]=Z*X-G*Y-F*J-W*C,G=Q[4],F=Q[5],W=Q[6],Z=Q[7],A[4]=G*X+Z*Y+F*C-W*J,A[5]=F*X+Z*J+W*Y-G*C,A[6]=W*X+Z*C+G*J-F*Y,A[7]=Z*X-G*Y-F*J-W*C,A}function gs0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=B[0],F=B[1],W=B[2],Z=B[3];return A[0]=Y*Z+X*G+J*W-C*F,A[1]=J*Z+X*F+C*G-Y*W,A[2]=C*Z+X*W+Y*F-J*G,A[3]=X*Z-Y*G-J*F-C*W,G=B[4],F=B[5],W=B[6],Z=B[7],A[4]=Y*Z+X*G+J*W-C*F,A[5]=J*Z+X*F+C*G-Y*W,A[6]=C*Z+X*W+Y*F-J*G,A[7]=X*Z-Y*G-J*F-C*W,A}function xs0(A,Q,B,Y){if(Math.abs(Y)0){B=Math.sqrt(B);var Y=Q[0]/B,J=Q[1]/B,C=Q[2]/B,X=Q[3]/B,G=Q[4],F=Q[5],W=Q[6],Z=Q[7],U=Y*G+J*F+C*W+X*Z;A[0]=Y,A[1]=J,A[2]=C,A[3]=X,A[4]=(G-Y*U)/B,A[5]=(F-J*U)/B,A[6]=(W-C*U)/B,A[7]=(Z-X*U)/B}return A}function ns0(A){return"quat2("+A[0]+", "+A[1]+", "+A[2]+", "+A[3]+", "+A[4]+", "+A[5]+", "+A[6]+", "+A[7]+")"}function ss0(A,Q){return A[0]===Q[0]&&A[1]===Q[1]&&A[2]===Q[2]&&A[3]===Q[3]&&A[4]===Q[4]&&A[5]===Q[5]&&A[6]===Q[6]&&A[7]===Q[7]}function rs0(A,Q){var B=A[0],Y=A[1],J=A[2],C=A[3],X=A[4],G=A[5],F=A[6],W=A[7],Z=Q[0],U=Q[1],$=Q[2],E=Q[3],K=Q[4],I=Q[5],V=Q[6],H=Q[7];return Math.abs(B-Z)<=L9.EPSILON*Math.max(1,Math.abs(B),Math.abs(Z))&&Math.abs(Y-U)<=L9.EPSILON*Math.max(1,Math.abs(Y),Math.abs(U))&&Math.abs(J-$)<=L9.EPSILON*Math.max(1,Math.abs(J),Math.abs($))&&Math.abs(C-E)<=L9.EPSILON*Math.max(1,Math.abs(C),Math.abs(E))&&Math.abs(X-K)<=L9.EPSILON*Math.max(1,Math.abs(X),Math.abs(K))&&Math.abs(G-I)<=L9.EPSILON*Math.max(1,Math.abs(G),Math.abs(I))&&Math.abs(F-V)<=L9.EPSILON*Math.max(1,Math.abs(F),Math.abs(V))&&Math.abs(W-H)<=L9.EPSILON*Math.max(1,Math.abs(W),Math.abs(H))}});var YkQ=R((QkQ)=>{function Sk(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")Sk=function(B){return typeof B};else Sk=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return Sk(A)}Object.defineProperty(QkQ,"__esModule",{value:!0});QkQ.create=nSQ;QkQ.clone=hr0;QkQ.fromValues=gr0;QkQ.copy=xr0;QkQ.set=fr0;QkQ.add=br0;QkQ.subtract=sSQ;QkQ.multiply=rSQ;QkQ.divide=aSQ;QkQ.ceil=mr0;QkQ.floor=ur0;QkQ.min=dr0;QkQ.max=cr0;QkQ.round=lr0;QkQ.scale=pr0;QkQ.scaleAndAdd=ir0;QkQ.distance=oSQ;QkQ.squaredDistance=tSQ;QkQ.length=eSQ;QkQ.squaredLength=AkQ;QkQ.negate=nr0;QkQ.inverse=sr0;QkQ.normalize=rr0;QkQ.dot=ar0;QkQ.cross=or0;QkQ.lerp=tr0;QkQ.random=er0;QkQ.transformMat2=Aa0;QkQ.transformMat2d=Qa0;QkQ.transformMat3=Ba0;QkQ.transformMat4=Ya0;QkQ.rotate=Ja0;QkQ.angle=Ca0;QkQ.zero=Xa0;QkQ.str=Ga0;QkQ.exactEquals=Fa0;QkQ.equals=Wa0;QkQ.forEach=QkQ.sqrLen=QkQ.sqrDist=QkQ.dist=QkQ.div=QkQ.mul=QkQ.sub=QkQ.len=void 0;var C4=yr0(E1());function iSQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(iSQ=function(J){return J?B:Q})(A)}function yr0(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||Sk(A)!=="object"&&typeof A!=="function")return{default:A};var B=iSQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function nSQ(){var A=new C4.ARRAY_TYPE(2);if(C4.ARRAY_TYPE!=Float32Array)A[0]=0,A[1]=0;return A}function hr0(A){var Q=new C4.ARRAY_TYPE(2);return Q[0]=A[0],Q[1]=A[1],Q}function gr0(A,Q){var B=new C4.ARRAY_TYPE(2);return B[0]=A,B[1]=Q,B}function xr0(A,Q){return A[0]=Q[0],A[1]=Q[1],A}function fr0(A,Q,B){return A[0]=Q,A[1]=B,A}function br0(A,Q,B){return A[0]=Q[0]+B[0],A[1]=Q[1]+B[1],A}function sSQ(A,Q,B){return A[0]=Q[0]-B[0],A[1]=Q[1]-B[1],A}function rSQ(A,Q,B){return A[0]=Q[0]*B[0],A[1]=Q[1]*B[1],A}function aSQ(A,Q,B){return A[0]=Q[0]/B[0],A[1]=Q[1]/B[1],A}function mr0(A,Q){return A[0]=Math.ceil(Q[0]),A[1]=Math.ceil(Q[1]),A}function ur0(A,Q){return A[0]=Math.floor(Q[0]),A[1]=Math.floor(Q[1]),A}function dr0(A,Q,B){return A[0]=Math.min(Q[0],B[0]),A[1]=Math.min(Q[1],B[1]),A}function cr0(A,Q,B){return A[0]=Math.max(Q[0],B[0]),A[1]=Math.max(Q[1],B[1]),A}function lr0(A,Q){return A[0]=Math.round(Q[0]),A[1]=Math.round(Q[1]),A}function pr0(A,Q,B){return A[0]=Q[0]*B,A[1]=Q[1]*B,A}function ir0(A,Q,B,Y){return A[0]=Q[0]+B[0]*Y,A[1]=Q[1]+B[1]*Y,A}function oSQ(A,Q){var B=Q[0]-A[0],Y=Q[1]-A[1];return Math.hypot(B,Y)}function tSQ(A,Q){var B=Q[0]-A[0],Y=Q[1]-A[1];return B*B+Y*Y}function eSQ(A){var Q=A[0],B=A[1];return Math.hypot(Q,B)}function AkQ(A){var Q=A[0],B=A[1];return Q*Q+B*B}function nr0(A,Q){return A[0]=-Q[0],A[1]=-Q[1],A}function sr0(A,Q){return A[0]=1/Q[0],A[1]=1/Q[1],A}function rr0(A,Q){var B=Q[0],Y=Q[1],J=B*B+Y*Y;if(J>0)J=1/Math.sqrt(J);return A[0]=Q[0]*J,A[1]=Q[1]*J,A}function ar0(A,Q){return A[0]*Q[0]+A[1]*Q[1]}function or0(A,Q,B){var Y=Q[0]*B[1]-Q[1]*B[0];return A[0]=A[1]=0,A[2]=Y,A}function tr0(A,Q,B,Y){var J=Q[0],C=Q[1];return A[0]=J+Y*(B[0]-J),A[1]=C+Y*(B[1]-C),A}function er0(A,Q){Q=Q||1;var B=C4.RANDOM()*2*Math.PI;return A[0]=Math.cos(B)*Q,A[1]=Math.sin(B)*Q,A}function Aa0(A,Q,B){var Y=Q[0],J=Q[1];return A[0]=B[0]*Y+B[2]*J,A[1]=B[1]*Y+B[3]*J,A}function Qa0(A,Q,B){var Y=Q[0],J=Q[1];return A[0]=B[0]*Y+B[2]*J+B[4],A[1]=B[1]*Y+B[3]*J+B[5],A}function Ba0(A,Q,B){var Y=Q[0],J=Q[1];return A[0]=B[0]*Y+B[3]*J+B[6],A[1]=B[1]*Y+B[4]*J+B[7],A}function Ya0(A,Q,B){var Y=Q[0],J=Q[1];return A[0]=B[0]*Y+B[4]*J+B[12],A[1]=B[1]*Y+B[5]*J+B[13],A}function Ja0(A,Q,B,Y){var J=Q[0]-B[0],C=Q[1]-B[1],X=Math.sin(Y),G=Math.cos(Y);return A[0]=J*G-C*X+B[0],A[1]=J*X+C*G+B[1],A}function Ca0(A,Q){var B=A[0],Y=A[1],J=Q[0],C=Q[1],X=Math.sqrt(B*B+Y*Y)*Math.sqrt(J*J+C*C),G=X&&(B*J+Y*C)/X;return Math.acos(Math.min(Math.max(G,-1),1))}function Xa0(A){return A[0]=0,A[1]=0,A}function Ga0(A){return"vec2("+A[0]+", "+A[1]+")"}function Fa0(A,Q){return A[0]===Q[0]&&A[1]===Q[1]}function Wa0(A,Q){var B=A[0],Y=A[1],J=Q[0],C=Q[1];return Math.abs(B-J)<=C4.EPSILON*Math.max(1,Math.abs(B),Math.abs(J))&&Math.abs(Y-C)<=C4.EPSILON*Math.max(1,Math.abs(Y),Math.abs(C))}var Za0=eSQ;QkQ.len=Za0;var $a0=sSQ;QkQ.sub=$a0;var Ua0=rSQ;QkQ.mul=Ua0;var Ea0=aSQ;QkQ.div=Ea0;var Ka0=oSQ;QkQ.dist=Ka0;var Va0=tSQ;QkQ.sqrDist=Va0;var Ia0=AkQ;QkQ.sqrLen=Ia0;var Ha0=function(){var A=nSQ();return function(Q,B,Y,J,C,X){var G,F;if(!B)B=2;if(!Y)Y=0;if(J)F=Math.min(J*B+Y,Q.length);else F=Q.length;for(G=Y;G{function kk(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")kk=function(B){return typeof B};else kk=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return kk(A)}Object.defineProperty(CkQ,"__esModule",{value:!0});CkQ.vec4=CkQ.vec3=CkQ.vec2=CkQ.quat2=CkQ.quat=CkQ.mat4=CkQ.mat3=CkQ.mat2d=CkQ.mat2=CkQ.glMatrix=void 0;var Fo0=S6(E1());CkQ.glMatrix=Fo0;var Wo0=S6(vTQ());CkQ.mat2=Wo0;var Zo0=S6(bTQ());CkQ.mat2d=Zo0;var $o0=S6(_o());CkQ.mat3=$o0;var Uo0=S6(vo());CkQ.mat4=Uo0;var Eo0=S6(fo());CkQ.quat=Eo0;var Ko0=S6(pSQ());CkQ.quat2=Ko0;var Vo0=S6(YkQ());CkQ.vec2=Vo0;var Io0=S6(yo());CkQ.vec3=Io0;var Ho0=S6(ho());CkQ.vec4=Ho0;function JkQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(JkQ=function(J){return J?B:Q})(A)}function S6(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||kk(A)!=="object"&&typeof A!=="function")return{default:A};var B=JkQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}});var WkQ=R((_k,FkQ)=>{(function(A,Q){typeof _k==="object"&&typeof FkQ<"u"?Q(_k):typeof define==="function"&&define.amd?define(["exports"],Q):(A=typeof globalThis<"u"?globalThis:A||self,Q(A.heap={}))})(_k,function(A){var Q=function($,E,K,I){function V(H){return H instanceof K?H:new K(function(D){D(H)})}return new(K||(K=Promise))(function(H,D){function L(N){try{M(I.next(N))}catch(q){D(q)}}function z(N){try{M(I.throw(N))}catch(q){D(q)}}function M(N){N.done?H(N.value):V(N.value).then(L,z)}M((I=I.apply($,E||[])).next())})},B=function($,E){var K={label:0,sent:function(){if(H[0]&1)throw H[1];return H[1]},trys:[],ops:[]},I,V,H,D=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return D.next=L(0),D.throw=L(1),D.return=L(2),typeof Symbol==="function"&&(D[Symbol.iterator]=function(){return this}),D;function L(M){return function(N){return z([M,N])}}function z(M){if(I)throw TypeError("Generator is already executing.");while(D&&(D=0,M[0]&&(K=0)),K)try{if(I=1,V&&(H=M[0]&2?V.return:M[0]?V.throw||((H=V.return)&&H.call(V),0):V.next)&&!(H=H.call(V,M[1])).done)return H;if(V=0,H)M=[M[0]&2,H.value];switch(M[0]){case 0:case 1:H=M;break;case 4:return K.label++,{value:M[1],done:!1};case 5:K.label++,V=M[1],M=[0];continue;case 7:M=K.ops.pop(),K.trys.pop();continue;default:if((H=K.trys,!(H=H.length>0&&H[H.length-1]))&&(M[0]===6||M[0]===2)){K=0;continue}if(M[0]===3&&(!H||M[1]>H[0]&&M[1]0)&&!(V=I.next()).done)H.push(V.value)}catch(L){D={error:L}}finally{try{if(V&&!V.done&&(K=I.return))K.call(I)}finally{if(D)throw D.error}}return H},J=function($,E,K){if(K||arguments.length===2){for(var I=0,V=E.length,H;I=$.length)$=void 0;return{value:$&&$[I++],done:!$}}};throw TypeError(E?"Object is not iterable.":"Symbol.iterator is not defined.")},X=function(){function $(E){if(E===void 0)E=$.minComparator;var K=this;this.compare=E,this.heapArray=[],this._limit=0,this.offer=this.add,this.element=this.peek,this.poll=this.pop,this._invertedCompare=function(I,V){return K.compare(I,V).then(function(H){return-1*H})}}return $.getChildrenIndexOf=function(E){return[E*2+1,E*2+2]},$.getParentIndexOf=function(E){if(E<=0)return-1;var K=E%2?1:2;return Math.floor((E-K)/2)},$.getSiblingIndexOf=function(E){if(E<=0)return-1;var K=E%2?1:-1;return E+K},$.minComparator=function(E,K){return Q(this,void 0,void 0,function(){return B(this,function(I){if(E>K)return[2,1];else if(EE)return[2,1];else if(K0;--q)w+=N;return w}var V=0,H=[],D=K(E.length-1)+2,L=0;while(VL)L=M.length;H[z]=H[z]||[],H[z].push(M),V+=1}return H.map(function(N,q){var w=Math.pow(2,D-q)-1;return I(" ",Math.floor(w/2)*L)+N.map(function(P){var _=(L-P.length)/2;return I(" ",Math.ceil(_))+P+I(" ",Math.floor(_))}).join(I(" ",w*L))}).join(` `)},$.heapify=function(E,K){return Q(this,void 0,void 0,function(){var I;return B(this,function(V){switch(V.label){case 0:return I=new $(K),I.heapArray=E,[4,I.init()];case 1:return V.sent(),[2,I]}})})},$.heappop=function(E,K){var I=new $(K);return I.heapArray=E,I.pop()},$.heappush=function(E,K,I){return Q(this,void 0,void 0,function(){var V;return B(this,function(H){switch(H.label){case 0:return V=new $(I),V.heapArray=E,[4,V.push(K)];case 1:return H.sent(),[2]}})})},$.heappushpop=function(E,K,I){var V=new $(I);return V.heapArray=E,V.pushpop(K)},$.heapreplace=function(E,K,I){var V=new $(I);return V.heapArray=E,V.replace(K)},$.heaptop=function(E,K,I){if(K===void 0)K=1;var V=new $(I);return V.heapArray=E,V.top(K)},$.heapbottom=function(E,K,I){if(K===void 0)K=1;var V=new $(I);return V.heapArray=E,V.bottom(K)},$.nlargest=function(E,K,I){return Q(this,void 0,void 0,function(){var V;return B(this,function(H){switch(H.label){case 0:return V=new $(I),V.heapArray=J([],Y(K),!1),[4,V.init()];case 1:return H.sent(),[2,V.top(E)]}})})},$.nsmallest=function(E,K,I){return Q(this,void 0,void 0,function(){var V;return B(this,function(H){switch(H.label){case 0:return V=new $(I),V.heapArray=J([],Y(K),!1),[4,V.init()];case 1:return H.sent(),[2,V.bottom(E)]}})})},$.prototype.add=function(E){return Q(this,void 0,void 0,function(){return B(this,function(K){switch(K.label){case 0:return[4,this._sortNodeUp(this.heapArray.push(E)-1)];case 1:return K.sent(),this._applyLimit(),[2,!0]}})})},$.prototype.addAll=function(E){return Q(this,void 0,void 0,function(){var K,I,V;return B(this,function(H){switch(H.label){case 0:K=this.length,(V=this.heapArray).push.apply(V,J([],Y(E),!1)),I=this.length,H.label=1;case 1:if(!(K=this.heapArray.length)return[2,J([],Y(this.heapArray),!1)];else return[2,this._bottomN_push(~~E)]})})},$.prototype.check=function(){return Q(this,void 0,void 0,function(){var E,K,I,V,H,D,L,z,M;return B(this,function(N){switch(N.label){case 0:E=0,N.label=1;case 1:if(!(E0)return[2,K];N.label=5;case 5:return H=V.next(),[3,3];case 6:return[3,9];case 7:return L=N.sent(),z={error:L},[3,9];case 8:try{if(H&&!H.done&&(M=V.return))M.call(V)}finally{if(z)throw z.error}return[7];case 9:return++E,[3,1];case 10:return[2]}})})},$.prototype.clear=function(){this.heapArray=[]},$.prototype.clone=function(){var E=new $(this.comparator());return E.heapArray=this.toArray(),E._limit=this._limit,E},$.prototype.comparator=function(){return this.compare},$.prototype.contains=function(E){return Q(this,arguments,void 0,function(K,I){var V,H,D,L,z,M;if(I===void 0)I=$.defaultIsEqual;return B(this,function(N){switch(N.label){case 0:N.trys.push([0,5,6,7]),V=C(this.heapArray),H=V.next(),N.label=1;case 1:if(H.done)return[3,4];return D=H.value,[4,I(D,K)];case 2:if(N.sent())return[2,!0];N.label=3;case 3:return H=V.next(),[3,1];case 4:return[3,7];case 5:return L=N.sent(),z={error:L},[3,7];case 6:try{if(H&&!H.done&&(M=V.return))M.call(V)}finally{if(z)throw z.error}return[7];case 7:return[2,!1]}})})},$.prototype.init=function(E){return Q(this,void 0,void 0,function(){var K;return B(this,function(I){switch(I.label){case 0:if(E)this.heapArray=J([],Y(E),!1);K=Math.floor(this.heapArray.length),I.label=1;case 1:if(!(K>=0))return[3,4];return[4,this._sortNodeDown(K)];case 2:I.sent(),I.label=3;case 3:return--K,[3,1];case 4:return this._applyLimit(),[2]}})})},$.prototype.isEmpty=function(){return this.length===0},$.prototype.leafs=function(){if(this.heapArray.length===0)return[];var E=$.getParentIndexOf(this.heapArray.length-1);return this.heapArray.slice(E+1)},Object.defineProperty($.prototype,"length",{get:function(){return this.heapArray.length},enumerable:!1,configurable:!0}),Object.defineProperty($.prototype,"limit",{get:function(){return this._limit},set:function(E){this._limit=~~E,this._applyLimit()},enumerable:!1,configurable:!0}),$.prototype.peek=function(){return this.heapArray[0]},$.prototype.pop=function(){return Q(this,void 0,void 0,function(){var E;return B(this,function(K){if(E=this.heapArray.pop(),this.length>0&&E!==void 0)return[2,this.replace(E)];return[2,E]})})},$.prototype.push=function(){var E=[];for(var K=0;K=this.heapArray.length)return[2,J([],Y(this.heapArray),!1)];else return[2,this._topN_push(~~E)]})})},$.prototype.toArray=function(){return J([],Y(this.heapArray),!1)},$.prototype.toString=function(){return this.heapArray.toString()},$.prototype.get=function(E){return this.heapArray[E]},$.prototype.getChildrenOf=function(E){var K=this;return $.getChildrenIndexOf(E).map(function(I){return K.heapArray[I]}).filter(function(I){return I!==void 0})},$.prototype.getParentOf=function(E){var K=$.getParentIndexOf(E);return this.heapArray[K]},$.prototype[Symbol.iterator]=function(){return B(this,function(E){switch(E.label){case 0:if(!this.length)return[3,2];return[4,this.pop()];case 1:return E.sent(),[3,0];case 2:return[2]}})},$.prototype.iterator=function(){return this},$.prototype._applyLimit=function(){if(this._limit&&this._limitV;--L)H.push(L);D=this.heapArray,z.label=2;case 2:if(!H.length)return[3,6];return L=H.shift(),[4,this.compare(D[L],K.peek())];case 3:if(!(z.sent()>0))return[3,5];return[4,K.replace(D[L])];case 4:if(z.sent(),L%2)H.push($.getParentIndexOf(L));z.label=5;case 5:return[3,2];case 6:return[2,K.toArray()]}})})},$.prototype._moveNode=function(E,K){var I;I=Y([this.heapArray[K],this.heapArray[E]],2),this.heapArray[E]=I[0],this.heapArray[K]=I[1]},$.prototype._sortNodeDown=function(E){return Q(this,void 0,void 0,function(){var K,I,V,H,D,L;return B(this,function(z){switch(z.label){case 0:K=this.heapArray.length,z.label=1;case 1:if(I=2*E+1,V=I+1,H=E,D=I0))return[3,2];return K=$.getParentIndexOf(E),[4,this.compare(this.heapArray[E],this.heapArray[K])];case 1:if(I.sent()<0)this._moveNode(E,K),E=K;else return[3,2];return[3,0];case 2:return[2]}})})},$.prototype._topN_push=function(E){return Q(this,void 0,void 0,function(){var K,I,V,H;return B(this,function(D){switch(D.label){case 0:K=new $(this._invertedCompare),K.limit=E,I=[0],V=this.heapArray,D.label=1;case 1:if(!I.length)return[3,7];if(H=I.shift(),!(H0&&H[H.length-1]))&&(M[0]===6||M[0]===2)){K=0;continue}if(M[0]===3&&(!H||M[1]>H[0]&&M[1]0)&&!(V=I.next()).done)H.push(V.value)}catch(L){D={error:L}}finally{try{if(V&&!V.done&&(K=I.return))K.call(I)}finally{if(D)throw D.error}}return H},W=function($,E,K){if(K||arguments.length===2){for(var I=0,V=E.length,H;IK)return 1;else if(EE)return 1;else if(K0;--q)w+=N;return w}var V=0,H=[],D=K(E.length-1)+2,L=0;while(VL)L=M.length;H[z]=H[z]||[],H[z].push(M),V+=1}return H.map(function(N,q){var w=Math.pow(2,D-q)-1;return I(" ",Math.floor(w/2)*L)+N.map(function(P){var _=(L-P.length)/2;return I(" ",Math.ceil(_))+P+I(" ",Math.floor(_))}).join(I(" ",w*L))}).join(` -`)},$.heapify=function(E,K){var I=new $(K);return I.heapArray=E,I.init(),I},$.heappop=function(E,K){var I=new $(K);return I.heapArray=E,I.pop()},$.heappush=function(E,K,I){var V=new $(I);V.heapArray=E,V.push(K)},$.heappushpop=function(E,K,I){var V=new $(I);return V.heapArray=E,V.pushpop(K)},$.heapreplace=function(E,K,I){var V=new $(I);return V.heapArray=E,V.replace(K)},$.heaptop=function(E,K,I){if(K===void 0)K=1;var V=new $(I);return V.heapArray=E,V.top(K)},$.heapbottom=function(E,K,I){if(K===void 0)K=1;var V=new $(I);return V.heapArray=E,V.bottom(K)},$.nlargest=function(E,K,I){var V=new $(I);return V.heapArray=W([],F(K),!1),V.init(),V.top(E)},$.nsmallest=function(E,K,I){var V=new $(I);return V.heapArray=W([],F(K),!1),V.init(),V.bottom(E)},$.prototype.add=function(E){return this._sortNodeUp(this.heapArray.push(E)-1),this._applyLimit(),!0},$.prototype.addAll=function(E){var K,I=this.length;(K=this.heapArray).push.apply(K,W([],F(E),!1));for(var V=this.length;I=this.heapArray.length)return W([],F(this.heapArray),!1);else return this._bottomN_push(~~E)},$.prototype.check=function(){var E=this;return this.heapArray.find(function(K,I){return!!E.getChildrenOf(I).find(function(V){return E.compare(K,V)>0})})},$.prototype.clear=function(){this.heapArray=[]},$.prototype.clone=function(){var E=new $(this.comparator());return E.heapArray=this.toArray(),E._limit=this._limit,E},$.prototype.comparator=function(){return this.compare},$.prototype.contains=function(E,K){if(K===void 0)K=$.defaultIsEqual;return this.indexOf(E,K)!==-1},$.prototype.init=function(E){if(E)this.heapArray=W([],F(E),!1);for(var K=Math.floor(this.heapArray.length);K>=0;--K)this._sortNodeDown(K);this._applyLimit()},$.prototype.isEmpty=function(){return this.length===0},$.prototype.indexOf=function(E,K){if(K===void 0)K=$.defaultIsEqual;if(this.heapArray.length===0)return-1;var I=[],V=0;while(V0&&E!==void 0)return this.replace(E);return E},$.prototype.push=function(){var E=[];for(var K=0;K=this.heapArray.length)return W([],F(this.heapArray),!1);else return this._topN_push(~~E)},$.prototype.toArray=function(){return W([],F(this.heapArray),!1)},$.prototype.toString=function(){return this.heapArray.toString()},$.prototype.get=function(E){return this.heapArray[E]},$.prototype.getChildrenOf=function(E){var K=this;return $.getChildrenIndexOf(E).map(function(I){return K.heapArray[I]}).filter(function(I){return I!==void 0})},$.prototype.getParentOf=function(E){var K=$.getParentIndexOf(E);return this.heapArray[K]},$.prototype[Symbol.iterator]=function(){return G(this,function(E){switch(E.label){case 0:if(!this.length)return[3,2];return[4,this.pop()];case 1:return E.sent(),[3,0];case 2:return[2]}})},$.prototype.iterator=function(){return this.toArray()},$.prototype._applyLimit=function(){if(this._limit>0&&this._limitV;--D)H.push(D);var L=this.heapArray;while(H.length){var D=H.shift();if(this.compare(L[D],K.peek())>0){if(K.replace(L[D]),D%2)H.push($.getParentIndexOf(D))}}return K.toArray()},$.prototype._moveNode=function(E,K){var I;I=F([this.heapArray[K],this.heapArray[E]],2),this.heapArray[E]=I[0],this.heapArray[K]=I[1]},$.prototype._sortNodeDown=function(E){var K=this.heapArray.length;while(!0){var I=2*E+1,V=I+1,H=E;if(I0){var K=$.getParentIndexOf(E);if(this.compare(this.heapArray[E],this.heapArray[K])<0)this._moveNode(E,K),E=K;else break}},$.prototype._topN_push=function(E){var K=new $(this._invertedCompare);K.limit=E;var I=[0],V=this.heapArray;while(I.length){var H=I.shift();if(H{};class n{static errorCount=0;static warningCount=0;static warning(A,Q){let B=Error(A);this._logMessage({message:A,error:B,context:Q,type:"warning",isFatal:!1})}static error(A,Q){let B=Error(A);this._logMessage({message:A,error:B,context:Q,type:"error",isFatal:!1})}static fatalError(A,Q){let B=Error(A);throw this._logMessage({message:A,error:B,context:Q,type:"error",isFatal:!0}),B}static enableCrashProtection(){if(process.env.NODE_ENV!=="production")return;process.on("unhandledRejection",(A)=>{let Q=A instanceof Error?A.message:String(A);this.error(`[CRASH PREVENTED] - Unhandled Promise Rejection: ${Q}`)}),process.on("uncaughtException",(A)=>{this.error(`[FATAL] Uncaught Exception: ${A.message} +`)},$.heapify=function(E,K){var I=new $(K);return I.heapArray=E,I.init(),I},$.heappop=function(E,K){var I=new $(K);return I.heapArray=E,I.pop()},$.heappush=function(E,K,I){var V=new $(I);V.heapArray=E,V.push(K)},$.heappushpop=function(E,K,I){var V=new $(I);return V.heapArray=E,V.pushpop(K)},$.heapreplace=function(E,K,I){var V=new $(I);return V.heapArray=E,V.replace(K)},$.heaptop=function(E,K,I){if(K===void 0)K=1;var V=new $(I);return V.heapArray=E,V.top(K)},$.heapbottom=function(E,K,I){if(K===void 0)K=1;var V=new $(I);return V.heapArray=E,V.bottom(K)},$.nlargest=function(E,K,I){var V=new $(I);return V.heapArray=W([],F(K),!1),V.init(),V.top(E)},$.nsmallest=function(E,K,I){var V=new $(I);return V.heapArray=W([],F(K),!1),V.init(),V.bottom(E)},$.prototype.add=function(E){return this._sortNodeUp(this.heapArray.push(E)-1),this._applyLimit(),!0},$.prototype.addAll=function(E){var K,I=this.length;(K=this.heapArray).push.apply(K,W([],F(E),!1));for(var V=this.length;I=this.heapArray.length)return W([],F(this.heapArray),!1);else return this._bottomN_push(~~E)},$.prototype.check=function(){var E=this;return this.heapArray.find(function(K,I){return!!E.getChildrenOf(I).find(function(V){return E.compare(K,V)>0})})},$.prototype.clear=function(){this.heapArray=[]},$.prototype.clone=function(){var E=new $(this.comparator());return E.heapArray=this.toArray(),E._limit=this._limit,E},$.prototype.comparator=function(){return this.compare},$.prototype.contains=function(E,K){if(K===void 0)K=$.defaultIsEqual;return this.indexOf(E,K)!==-1},$.prototype.init=function(E){if(E)this.heapArray=W([],F(E),!1);for(var K=Math.floor(this.heapArray.length);K>=0;--K)this._sortNodeDown(K);this._applyLimit()},$.prototype.isEmpty=function(){return this.length===0},$.prototype.indexOf=function(E,K){if(K===void 0)K=$.defaultIsEqual;if(this.heapArray.length===0)return-1;var I=[],V=0;while(V0&&E!==void 0)return this.replace(E);return E},$.prototype.push=function(){var E=[];for(var K=0;K=this.heapArray.length)return W([],F(this.heapArray),!1);else return this._topN_push(~~E)},$.prototype.toArray=function(){return W([],F(this.heapArray),!1)},$.prototype.toString=function(){return this.heapArray.toString()},$.prototype.get=function(E){return this.heapArray[E]},$.prototype.getChildrenOf=function(E){var K=this;return $.getChildrenIndexOf(E).map(function(I){return K.heapArray[I]}).filter(function(I){return I!==void 0})},$.prototype.getParentOf=function(E){var K=$.getParentIndexOf(E);return this.heapArray[K]},$.prototype[Symbol.iterator]=function(){return G(this,function(E){switch(E.label){case 0:if(!this.length)return[3,2];return[4,this.pop()];case 1:return E.sent(),[3,0];case 2:return[2]}})},$.prototype.iterator=function(){return this.toArray()},$.prototype._applyLimit=function(){if(this._limit>0&&this._limitV;--D)H.push(D);var L=this.heapArray;while(H.length){var D=H.shift();if(this.compare(L[D],K.peek())>0){if(K.replace(L[D]),D%2)H.push($.getParentIndexOf(D))}}return K.toArray()},$.prototype._moveNode=function(E,K){var I;I=F([this.heapArray[K],this.heapArray[E]],2),this.heapArray[E]=I[0],this.heapArray[K]=I[1]},$.prototype._sortNodeDown=function(E){var K=this.heapArray.length;while(!0){var I=2*E+1,V=I+1,H=E;if(I0){var K=$.getParentIndexOf(E);if(this.compare(this.heapArray[E],this.heapArray[K])<0)this._moveNode(E,K),E=K;else break}},$.prototype._topN_push=function(E){var K=new $(this._invertedCompare);K.limit=E;var I=[0],V=this.heapArray;while(I.length){var H=I.shift();if(H{};class n{static errorCount=0;static warningCount=0;static warning(A,Q){let B=Error(A);this._logMessage({message:A,error:B,context:Q,type:"warning",isFatal:!1})}static error(A,Q){let B=Error(A);this._logMessage({message:A,error:B,context:Q,type:"error",isFatal:!1})}static fatalError(A,Q){let B=Error(A);throw this._logMessage({message:A,error:B,context:Q,type:"error",isFatal:!0}),B}static enableCrashProtection(){if(process.env.NODE_ENV!=="production")return;process.on("unhandledRejection",(A)=>{let Q=A instanceof Error?A.message:String(A);this.error(`[CRASH PREVENTED] - Unhandled Promise Rejection: ${Q}`)}),process.on("uncaughtException",(A)=>{this.error(`[FATAL] Uncaught Exception: ${A.message} ${A.stack}`),setTimeout(()=>process.exit(1),1000)}),console.info("Crash protection enabled! Unhandled Promise Rejections and Uncaught Exceptions will be logged instead of crashing the server.")}static _logMessage(A){let{message:Q,error:B,context:Y,type:J,isFatal:C}=A,X=new Date().toISOString(),G=J==="warning";if(G)this.warningCount++;else this.errorCount++;let F=G?KY.yellow:KY.red,W=G?this.warningCount:this.errorCount,Z=G?console.warn:console.error;if(Z(` ${F}${KY.bold}==========[ RUNTIME ${G?"WARNING":"ERROR"} #${W} | ${X} ]==========${KY.reset}`),!G)if(C)Z(`The server encountered an unrecoverable error and has crashed! `);else Z("The server encountered a recoverable error and did not crash."),Z(`You should fix this to prevent undefined-like return values and unexpected behavior. `);let U=C?"FATAL ERROR":G?"WARNING":"ERROR";if(Z(`${F}${KY.bold}⚠️ ${U}:${KY.reset} ${KY.bold}${Q}${KY.reset}`),Y)Z(`${KY.cyan}ℹ️ CONTEXT:${KY.reset} ${Y}`);let $=B.stack?.split(` `)??[];if($.length>1)Z(`${KY.cyan}\uD83D\uDD0D STACK TRACE:${KY.reset}`),$.slice(1).forEach((E)=>{let I=E.trim().replace(/at\s+([^\s]+)/,`at ${KY.green}$1${KY.reset}`).replace(/\(([^:]+):(\d+):(\d+)\)/,`(${KY.cyan}$1${KY.reset}:${KY.yellow}$2:$3${KY.reset})`);Z(` ${I}`)});Z(`${F}${KY.bold}=================================================${KY.reset} -`)}}class zY{static instance=new zY;static assetsLibraryPath=(()=>{if(process.env.NODE_ENV==="production")return null;let A="@hytopia.com/assets";try{return vX.dirname(u.resolve(A))}catch{return null}})();syncAsset(A){if(!zY.assetsLibraryPath)return n.warning("AssetsLibrary.syncAsset(): Assets library is not available.");try{let Q=vX.relative(zY.assetsLibraryPath,A),B=vX.join("assets",Q);if(!_X.existsSync(A))return;if(_X.existsSync(B))return;let Y=Q.match(/^(.+?)\/\.optimized\/([^/]+)\//);if(Y){let[,J,C]=Y,X=vX.join(zY.assetsLibraryPath,J,".optimized",C),G=vX.join("assets",J,".optimized",C);_X.cpSync(X,G,{recursive:!0,force:!1}),[".gltf",".glb"].forEach((F)=>{let W=vX.join(zY.assetsLibraryPath,J,`${C}${F}`),Z=vX.join("assets",J,`${C}${F}`);if(_X.existsSync(W)&&!_X.existsSync(Z))_X.mkdirSync(vX.dirname(Z),{recursive:!0}),_X.copyFileSync(W,Z)}),console.log(`AssetsLibrary.syncAsset(): Copied model from asset library to local assets: ${J}/${C}`)}else _X.mkdirSync(vX.dirname(B),{recursive:!0}),_X.copyFileSync(A,B),console.log(`AssetsLibrary.syncAsset(): Copied asset from asset library to local assets: ${Q}`)}catch(Q){n.warning(`AssetsLibrary.syncAsset(): Failed to copy asset "${A}" to local assets: ${Q}`)}}}var ho=qA(go(),1);var xo=ho.default;class FQ{static globalInstance=new FQ;_emitter=new xo;_finalListeners={};emit(A,Q){if(this.listenerCount(A)===0)return!1;try{this._emitter.emit(A,Q),this._finalListeners[A]?.(Q)}catch(B){console.error(`EventRouter.emit(): Error emitting event "${A}":`,B)}return!0}emitWithGlobal(A,Q){this.emit(A,Q),FQ.globalInstance.emit(A,Q)}emitWithWorld(A,Q,B){this.emit(Q,B),A.emit(Q,B)}final(A,Q){if(this._finalListeners[A]&&Q!==this._finalListeners[A])return n.error(`EventRouter.final(): Listener for event type "${A}" already exists. It must be removed explicitly with .off() before a different final listener can be set.`);this._finalListeners[A]=Q}hasListeners(A){return this._emitter.listenerCount(A)>0||A in this._finalListeners}listeners(A){return[...this._emitter.listeners(A),...this._finalListeners[A]?[this._finalListeners[A]]:[]]}listenerCount(A){return this._emitter.listenerCount(A)+(this._finalListeners[A]?1:0)}off(A,Q){if(this._emitter.removeListener(A,Q),this._finalListeners[A]===Q)delete this._finalListeners[A]}offAll(A){if(this._emitter.removeAllListeners(A),A)delete this._finalListeners[A];else this._finalListeners={}}on(A,Q){this._emitter.addListener(A,Q)}once(A,Q){this._emitter.once(A,Q)}}var fo;((Y)=>{Y[Y.PLAYING=0]="PLAYING";Y[Y.PAUSED=1]="PAUSED";Y[Y.STOPPED=2]="STOPPED"})(fo||={});var kk;((B)=>{B[B.ADDITIVE=0]="ADDITIVE";B[B.NORMAL=1]="NORMAL"})(kk||={});var C4;((Y)=>{Y[Y.ONCE=0]="ONCE";Y[Y.LOOP=1]="LOOP";Y[Y.PING_PONG=2]="PING_PONG"})(C4||={});var _k;((U)=>{U.PAUSE="ENTITY_MODEL_ANIMATION.PAUSE";U.PLAY="ENTITY_MODEL_ANIMATION.PLAY";U.RESTART="ENTITY_MODEL_ANIMATION.RESTART";U.SET_BLEND_MODE="ENTITY_MODEL_ANIMATION.SET_BLEND_MODE";U.SET_CLAMP_WHEN_FINISHED="ENTITY_MODEL_ANIMATION.SET_CLAMP_WHEN_FINISHED";U.SET_FADES_IN="ENTITY_MODEL_ANIMATION.SET_FADES_IN";U.SET_FADES_OUT="ENTITY_MODEL_ANIMATION.SET_FADES_OUT";U.SET_LOOP_MODE="ENTITY_MODEL_ANIMATION.SET_LOOP_MODE";U.SET_PLAYBACK_RATE="ENTITY_MODEL_ANIMATION.SET_PLAYBACK_RATE";U.SET_WEIGHT="ENTITY_MODEL_ANIMATION.SET_WEIGHT";U.STOP="ENTITY_MODEL_ANIMATION.STOP"})(_k||={});class X4{_name;_blendMode=1;_clampWhenFinished=!1;_entity;_fadesIn=!0;_fadesOut=!0;_loopMode=0;_state=2;_playbackRate=1;_weight=1;constructor(A){this._name=A.name,this._entity=A.entity,this._blendMode=A.blendMode??this._blendMode,this._clampWhenFinished=A.clampWhenFinished??this._clampWhenFinished,this._fadesIn=A.fadesIn??this._fadesIn,this._fadesOut=A.fadesOut??this._fadesOut,this._loopMode=A.loopMode??this._loopMode,this._state=A.play?0:this._state,this._playbackRate=A.playbackRate??this._playbackRate,this._weight=A.weight??this._weight}get name(){return this._name}get blendMode(){return this._blendMode}get clampWhenFinished(){return this._clampWhenFinished}get entity(){return this._entity}get fadesIn(){return this._fadesIn}get fadesOut(){return this._fadesOut}get isPlaying(){return this._state===0}get isPaused(){return this._state===1}get isStopped(){return this._state===2}get loopMode(){return this._loopMode}get playbackRate(){return this._playbackRate}get weight(){return this._weight}pause(){if(this._state===1)return;if(this._state=1,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.PAUSE",{entityModelAnimation:this})}play(){if(this._state===0)return;if(this._state=0,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.PLAY",{entityModelAnimation:this})}restart(){if(this._state=0,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.RESTART",{entityModelAnimation:this})}setBlendMode(A){if(this._blendMode===A)return;if(this._blendMode=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_BLEND_MODE",{entityModelAnimation:this,blendMode:A})}setClampWhenFinished(A){if(this._clampWhenFinished===A)return;if(this._clampWhenFinished=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_CLAMP_WHEN_FINISHED",{entityModelAnimation:this,clampWhenFinished:A})}setFadesIn(A){if(this._fadesIn===A)return;if(this._fadesIn=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_FADES_IN",{entityModelAnimation:this,fadesIn:A})}setFadesOut(A){if(this._fadesOut===A)return;if(this._fadesOut=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_FADES_OUT",{entityModelAnimation:this,fadesOut:A})}setLoopMode(A){if(this._loopMode===A)return;if(this._loopMode=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_LOOP_MODE",{entityModelAnimation:this,loopMode:A})}setPlaybackRate(A){if(this._playbackRate===A)return;if(this._playbackRate=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_PLAYBACK_RATE",{entityModelAnimation:this,playbackRate:A})}setWeight(A){if(this._weight===A)return;if(this._weight=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_WEIGHT",{entityModelAnimation:this,weight:A})}stop(){if(this._state===2)return;if(this._state=2,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.STOP",{entityModelAnimation:this})}serialize(){return CQ.serializeEntityModelAnimation(this)}}class CQ{static serializeAudio(A){if(A.id===void 0)n.fatalError(`Serializer.serializeAudio(): Audio ${A.uri} is not playing!`);if(A.attachedToEntity&&!A.attachedToEntity.isSpawned)n.warning(`Serializer.serializeAudio(): Audio ${A.uri} is attached to an entity that is not spawned or was recently despawned, reverting to unattached!`);return{i:A.id,a:A.uri,cd:A.cutoffDistance,d:A.duration,de:A.detune,di:A.distortion,e:A.attachedToEntity?.isSpawned?A.attachedToEntity.id:void 0,l:A.loop,o:A.offset,p:A.position?this.serializeVector(A.position):void 0,pa:!A.isPlaying,pl:A.isPlaying,pr:A.playbackRate,rd:A.referenceDistance,s:A.startTick,v:A.volume}}static serializeBlockType(A){return{i:A.id,l:A.isLiquid,ll:A.lightLevel,n:A.name,t:A.textureUri,ti:A.isTrimesh?Array.from(A.colliderOptions.indices):void 0,tv:A.isTrimesh?Array.from(A.colliderOptions.vertices):void 0}}static serializeBlockTypeRegistry(A){return A.getAllBlockTypes().map((Q)=>this.serializeBlockType(Q))}static serializeChunk(A){return{c:this.serializeVector(A.originCoordinate),b:Array.from(A.blocks),r:Array.from(A.blockRotations).flatMap(([Q,B])=>[Q,B.enumIndex])}}static serializeEntity(A){if(!A.world||A.id===void 0)n.fatalError("Serializer.serializeEntity(): Entity is not in a world");return{i:A.id,bt:A.blockTextureUri,bh:A.blockHalfExtents?this.serializeVector(A.blockHalfExtents):void 0,e:A.isEnvironmental,ec:A.emissiveColor?this.serializeRgbColor(A.emissiveColor):void 0,ei:A.emissiveIntensity,m:A.modelUri,ma:A.modelAnimations.map((Q)=>this.serializeEntityModelAnimation(Q)),mo:A.modelNodeOverrides.map((Q)=>this.serializeEntityModelNodeOverride(Q)),mt:A.modelTextureUri,n:A.name,o:A.opacity,ol:A.outline?this.serializeOutline(A.outline):void 0,p:this.serializeVector(A.position),pi:A.positionInterpolationMs,pe:A.parent?A.parent.id:void 0,pn:A.parentNodeName,r:this.serializeQuaternion(A.rotation),ri:A.rotationInterpolationMs,si:A.modelScaleInterpolationMs,sv:A.modelScale?this.serializeVector(A.modelScale):void 0,t:A.tintColor?this.serializeRgbColor(A.tintColor):void 0}}static serializeEntityModelAnimation(A){return{n:A.name,b:A.blendMode,c:A.clampWhenFinished,fi:A.fadesIn,fo:A.fadesOut,l:A.loopMode,p:A.isPlaying&&A.loopMode!==0,pr:A.playbackRate,w:A.weight}}static serializeEntityModelNodeOverride(A){return{n:A.nameMatch,ec:A.emissiveColor?this.serializeRgbColor(A.emissiveColor):void 0,ei:A.emissiveIntensity,h:A.isHidden,p:A.localPosition?this.serializeVector(A.localPosition):void 0,pi:A.localPositionInterpolationMs,r:A.localRotation?this.serializeQuaternion(A.localRotation):void 0,ri:A.localRotationInterpolationMs,s:A.localScale?this.serializeVector(A.localScale):void 0,si:A.localScaleInterpolationMs}}static serializeOutline(A){return{c:A.color?this.serializeRgbColor(A.color):void 0,ci:A.colorIntensity,th:A.thickness,o:A.opacity,oc:A.occluded}}static serializeParticleEmitter(A){if(!A.world||A.id===void 0)n.fatalError("Serializer.serializeParticleEmitter(): ParticleEmitter is not in a world");return{i:A.id,at:A.alphaTest,ce:A.colorEnd?this.serializeRgbColor(A.colorEnd):void 0,cev:A.colorEndVariance?this.serializeRgbColor(A.colorEndVariance):void 0,cs:A.colorStart?this.serializeRgbColor(A.colorStart):void 0,csv:A.colorStartVariance?this.serializeRgbColor(A.colorStartVariance):void 0,cie:A.colorIntensityEnd,ciev:A.colorIntensityEndVariance,cis:A.colorIntensityStart,cisv:A.colorIntensityStartVariance,e:A.attachedToEntity?.isSpawned?A.attachedToEntity.id:void 0,en:A.attachedToEntityNodeName,g:A.gravity?this.serializeVector(A.gravity):void 0,l:A.lifetime,le:A.lockToEmitter,lv:A.lifetimeVariance,mp:A.maxParticles,o:A.offset?this.serializeVector(A.offset):void 0,or:A.orientation?this.serializeParticleEmitterOrientation(A.orientation):void 0,ofr:A.orientationFixedRotation?this.serializeVector(A.orientationFixedRotation):void 0,oe:A.opacityEnd,oev:A.opacityEndVariance,os:A.opacityStart,osv:A.opacityStartVariance,p:A.position?this.serializeVector(A.position):void 0,pa:A.paused,pv:A.positionVariance?this.serializeVector(A.positionVariance):void 0,r:A.rate,rv:A.rateVariance,se:A.sizeEnd,sev:A.sizeEndVariance,ss:A.sizeStart,ssv:A.sizeStartVariance,t:A.transparent,tu:A.textureUri,v:A.velocity?this.serializeVector(A.velocity):void 0,vv:A.velocityVariance?this.serializeVector(A.velocityVariance):void 0}}static serializeParticleEmitterOrientation(A){switch(A){case"billboard":return 0;case"billboardY":return 1;case"fixed":return 2;case"velocity":return 3;default:return 0}}static serializePhysicsDebugRaycast(A){return{o:this.serializeVector(A.origin),d:this.serializeVector(A.direction),l:A.length,h:A.hit}}static serializePlayer(A){return{i:A.id,u:A.username,p:A.profilePictureUrl}}static serializePlayerCamera(A){return{cb:A.collidesWithBlocks,m:A.mode,e:A.attachedToEntity?.isSpawned?A.attachedToEntity.id:void 0,et:A.targetEntity?.isSpawned?A.targetEntity.id:void 0,fo:A.filmOffset,ffo:A.forwardOffset,fv:A.fov,h:Array.from(A.viewModelHiddenNodes),mp:A.viewModelPitchesWithCamera,my:A.viewModelYawsWithCamera,o:A.offset?this.serializeVector(A.offset):void 0,p:A.attachedToPosition?this.serializeVector(A.attachedToPosition):void 0,pt:A.targetPosition?this.serializeVector(A.targetPosition):void 0,s:Array.from(A.viewModelShownNodes),sa:A.shoulderAngle,z:A.zoom}}static serializeQuaternion(A){return[A.x,A.y,A.z,A.w]}static serializeRgbColor(A){return[A.r,A.g,A.b]}static serializeSceneUI(A){if(A.id===void 0)n.fatalError("Serializer.serializeSceneUI(): SceneUI is not loaded!");return{i:A.id,e:A.attachedToEntity?.isSpawned?A.attachedToEntity.id:void 0,o:A.offset?this.serializeVector(A.offset):void 0,p:A.position?this.serializeVector(A.position):void 0,s:A.state,t:A.templateId,v:A.viewDistance}}static serializeVector(A){return[A.x,A.y,A.z]}static serializeVectorBoolean(A){return[A.x,A.y,A.z]}static serializeWorld(A){return{i:A.id,ac:this.serializeRgbColor(A.ambientLightColor),ai:A.ambientLightIntensity,dc:this.serializeRgbColor(A.directionalLightColor),di:A.directionalLightIntensity,dp:this.serializeVector(A.directionalLightPosition),fc:A.fogColor?this.serializeRgbColor(A.fogColor):void 0,ff:A.fogFar,fn:A.fogNear,n:A.name,s:A.skyboxUri,si:A.skyboxIntensity,t:A.loop.timestepS}}}var bo=5,vk;((U)=>{U.PAUSE="AUDIO.PAUSE";U.PLAY="AUDIO.PLAY";U.PLAY_RESTART="AUDIO.PLAY_RESTART";U.SET_ATTACHED_TO_ENTITY="AUDIO.SET_ATTACHED_TO_ENTITY";U.SET_CUTOFF_DISTANCE="AUDIO.SET_CUTOFF_DISTANCE";U.SET_DETUNE="AUDIO.SET_DETUNE";U.SET_DISTORTION="AUDIO.SET_DISTORTION";U.SET_POSITION="AUDIO.SET_POSITION";U.SET_PLAYBACK_RATE="AUDIO.SET_PLAYBACK_RATE";U.SET_REFERENCE_DISTANCE="AUDIO.SET_REFERENCE_DISTANCE";U.SET_VOLUME="AUDIO.SET_VOLUME"})(vk||={});class OV extends FQ{_id;_attachedToEntity;_cutoffDistance;_duration;_detune;_distortion;_loop;_offset;_position;_playbackRate;_playing;_referenceDistance;_startTick;_uri;_volume;_world;constructor(A){super();this._attachedToEntity=A.attachedToEntity,this._cutoffDistance=A.cutoffDistance??(this.isPositional?(A.referenceDistance??bo)+10:0),this._duration=A.duration,this._detune=A.detune??0,this._distortion=A.distortion??0,this._loop=A.loop??!1,this._offset=A.offset??0,this._position=A.position,this._playing=!1,this._playbackRate=A.playbackRate??1,this._referenceDistance=A.referenceDistance??(this.isPositional?bo:0),this._uri=A.uri,this._volume=A.volume??0.5}get id(){return this._id}get attachedToEntity(){return this._attachedToEntity}get cutoffDistance(){return this._cutoffDistance}get duration(){return this._duration}get detune(){return this._detune}get distortion(){return this._distortion}get loop(){return this._loop}get offset(){return this._offset}get isLoaded(){return this._id!==void 0}get isPlaying(){return this._playing}get isPositional(){return this._attachedToEntity!==void 0||this._position!==void 0}get position(){return this._position}get playbackRate(){return this._playbackRate}get referenceDistance(){return this._referenceDistance}get startTick(){return this._startTick}get uri(){return this._uri}get volume(){return this._volume}get world(){return this._world}play(A,Q=!1){if(this.isPlaying&&!Q)return;if(this._attachedToEntity&&!this._attachedToEntity.isSpawned)return n.error(`Audio.play(): Attached entity ${this._attachedToEntity.id} is not spawned!`);let B=Q&&this._id!==void 0?"AUDIO.PLAY_RESTART":"AUDIO.PLAY";this._id??=A.audioManager.registerAudio(this),this._playing=!0,this._startTick=A.loop.currentTick,this._world=this._world??A,this.emitWithWorld(A,B,{audio:this})}pause(){if(!this.isPlaying||!this._world)return;this._playing=!1,this.emitWithWorld(this._world,"AUDIO.PAUSE",{audio:this})}setAttachedToEntity(A){if(!this._requirePositional())return;if(!A.isSpawned)return n.error(`Audio.setAttachedToEntity(): Entity ${A.id} is not spawned!`);if(this._attachedToEntity===A)return;if(this._attachedToEntity=A,this._position=void 0,this.isLoaded&&this._world)this.emitWithWorld(this._world,"AUDIO.SET_ATTACHED_TO_ENTITY",{audio:this,entity:A})}setCutoffDistance(A){if(!this._requirePositional())return;if(A<=0||A1)return n.error("Volume must be between 0 and 1");if(this._volume===A)return;if(this._volume=A,this.isLoaded&&this._world)this.emitWithWorld(this._world,"AUDIO.SET_VOLUME",{audio:this,volume:A})}serialize(){return CQ.serializeAudio(this)}_requirePositional(){if(!this.isPositional)n.error("Audio._requirePositional(): Audio is not positional. and therefor does not support the invoked method.");return this.isPositional}}class PV{_audios=new Map;_nextAudioId=1;_world;constructor(A){this._world=A}get world(){return this._world}getAllAudios(){return Array.from(this._audios.values())}getAllEntityAttachedAudios(A){return this.getAllAudios().filter((Q)=>Q.attachedToEntity===A)}getAllLoopedAudios(){return this.getAllAudios().filter((A)=>A.loop)}getAllOneshotAudios(){return this.getAllAudios().filter((A)=>!A.loop)}registerAudio(A){if(A.id!==void 0)n.fatalError(`AudioManager.registerAudio(): Provided audio instance with uri ${A.uri} is already assigned the id ${A.id}!`);let Q=this._nextAudioId;return this._audios.set(Q,A),this._nextAudioId++,Q}unregisterAudio(A){if(A.id===void 0)return n.error(`AudioManager.unregisterAudio(): Provided audio instance with uri ${A.uri} is not assigned an id!`);A.pause(),this._audios.delete(A.id)}unregisterEntityAttachedAudios(A){this.getAllEntityAttachedAudios(A).forEach((Q)=>{this.unregisterAudio(Q)})}}var mo;((X)=>{X.ATTACH="BASE_ENTITY_CONTROLLER.ATTACH";X.DESPAWN="BASE_ENTITY_CONTROLLER.DESPAWN";X.DETACH="BASE_ENTITY_CONTROLLER.DETACH";X.SPAWN="BASE_ENTITY_CONTROLLER.SPAWN";X.TICK="BASE_ENTITY_CONTROLLER.TICK";X.TICK_WITH_PLAYER_INPUT="BASE_ENTITY_CONTROLLER.TICK_WITH_PLAYER_INPUT"})(mo||={});class KW extends FQ{attach(A){this.emit("BASE_ENTITY_CONTROLLER.ATTACH",{entity:A})}despawn(A){this.emit("BASE_ENTITY_CONTROLLER.DESPAWN",{entity:A})}detach(A){this.emit("BASE_ENTITY_CONTROLLER.DETACH",{entity:A})}spawn(A){this.emit("BASE_ENTITY_CONTROLLER.SPAWN",{entity:A})}tickWithPlayerInput(A,Q,B,Y){this.emit("BASE_ENTITY_CONTROLLER.TICK_WITH_PLAYER_INPUT",{entity:A,input:Q,cameraOrientation:B,deltaTimeMs:Y})}tick(A,Q){this.emit("BASE_ENTITY_CONTROLLER.TICK",{entity:A,deltaTimeMs:Q})}}var yX={Y_0:{enumIndex:0,matrix:[1,0,0,0,1,0,0,0,1]},Y_90:{enumIndex:1,matrix:[0,0,-1,0,1,0,1,0,0]},Y_180:{enumIndex:2,matrix:[-1,0,0,0,1,0,0,0,-1]},Y_270:{enumIndex:3,matrix:[0,0,1,0,1,0,-1,0,0]},NY_0:{enumIndex:4,matrix:[-1,0,0,0,-1,0,0,0,1]},NY_90:{enumIndex:5,matrix:[0,0,-1,0,-1,0,-1,0,0]},NY_180:{enumIndex:6,matrix:[1,0,0,0,-1,0,0,0,-1]},NY_270:{enumIndex:7,matrix:[0,0,1,0,-1,0,1,0,0]},X_0:{enumIndex:8,matrix:[0,-1,0,1,0,0,0,0,1]},X_90:{enumIndex:9,matrix:[0,0,-1,1,0,0,0,-1,0]},X_180:{enumIndex:10,matrix:[0,1,0,1,0,0,0,0,-1]},X_270:{enumIndex:11,matrix:[0,0,1,1,0,0,0,1,0]},NX_0:{enumIndex:12,matrix:[0,1,0,-1,0,0,0,0,1]},NX_90:{enumIndex:13,matrix:[0,0,-1,-1,0,0,0,1,0]},NX_180:{enumIndex:14,matrix:[0,-1,0,-1,0,0,0,0,-1]},NX_270:{enumIndex:15,matrix:[0,0,1,-1,0,0,0,-1,0]},Z_0:{enumIndex:16,matrix:[1,0,0,0,0,1,0,-1,0]},Z_90:{enumIndex:17,matrix:[0,1,0,0,0,1,1,0,0]},Z_180:{enumIndex:18,matrix:[-1,0,0,0,0,1,0,1,0]},Z_270:{enumIndex:19,matrix:[0,-1,0,0,0,1,-1,0,0]},NZ_0:{enumIndex:20,matrix:[1,0,0,0,0,-1,0,1,0]},NZ_90:{enumIndex:21,matrix:[0,-1,0,0,0,-1,1,0,0]},NZ_180:{enumIndex:22,matrix:[-1,0,0,0,0,-1,0,-1,0]},NZ_270:{enumIndex:23,matrix:[0,1,0,0,0,-1,-1,0,0]}};class G4{globalCoordinate;blockType;constructor(A,Q){this.globalCoordinate=A,this.blockType=Q}static fromGlobalCoordinate(A,Q){return new G4(A,Q)}getNeighborGlobalCoordinateFromHitPoint(A){let Q={x:A.x-(this.globalCoordinate.x+0.5),y:A.y-(this.globalCoordinate.y+0.5),z:A.z-(this.globalCoordinate.z+0.5)},B="x",Y=Math.abs(Q.x);for(let[J,C]of Object.entries(Q))if(Math.abs(C)>Y)B=J,Y=Math.abs(C);return{x:this.globalCoordinate.x+(B==="x"?Math.sign(Q.x):0),y:this.globalCoordinate.y+(B==="y"?Math.sign(Q.y):0),z:this.globalCoordinate.z+(B==="z"?Math.sign(Q.z):0)}}}import UaQ from"crypto";import $7 from"fs";import $8 from"path";function e0(A){if(typeof A!=="object"||A===null)return!1;let Q=Object.getPrototypeOf(A);return(Q===null||Q===Object.prototype||Object.getPrototypeOf(Q)===null)&&!(Symbol.toStringTag in A)&&!(Symbol.iterator in A)}import{fileURLToPath as YkQ}from"node:url";var F4=(A,Q)=>{let B=gk(JkQ(A));if(typeof B!=="string")throw TypeError(`${Q} must be a string or a file URL: ${B}.`);return B},JkQ=(A)=>yk(A)?A.toString():A,yk=(A)=>typeof A!=="string"&&A&&Object.getPrototypeOf(A)===String.prototype,gk=(A)=>A instanceof URL?YkQ(A):A;var XM=(A,Q=[],B={})=>{let Y=F4(A,"First argument"),[J,C]=e0(Q)?[[],Q]:[Q,B];if(!Array.isArray(J))throw TypeError(`Second argument must be either an array of arguments or an options object: ${J}`);if(J.some((F)=>typeof F==="object"&&F!==null))throw TypeError(`Second argument must be an array of strings: ${J}`);let X=J.map(String),G=X.find((F)=>F.includes("\x00"));if(G!==void 0)throw TypeError(`Arguments cannot contain null bytes ("\\0"): ${G}`);if(!e0(C))throw TypeError(`Last argument must be an options object: ${C}`);return[Y,X,C]};import{ChildProcess as $kQ}from"node:child_process";import{StringDecoder as CkQ}from"node:string_decoder";var{toString:uo}=Object.prototype,co=(A)=>uo.call(A)==="[object ArrayBuffer]",RY=(A)=>uo.call(A)==="[object Uint8Array]",gX=(A)=>new Uint8Array(A.buffer,A.byteOffset,A.byteLength),XkQ=new TextEncoder,lo=(A)=>XkQ.encode(A),GkQ=new TextDecoder,GM=(A)=>GkQ.decode(A),po=(A,Q)=>{return FkQ(A,Q).join("")},FkQ=(A,Q)=>{if(Q==="utf8"&&A.every((C)=>typeof C==="string"))return A;let B=new CkQ(Q),Y=A.map((C)=>typeof C==="string"?lo(C):C).map((C)=>B.write(C)),J=B.end();return J===""?Y:[...Y,J]},TV=(A)=>{if(A.length===1&&RY(A[0]))return A[0];return hk(WkQ(A))},WkQ=(A)=>A.map((Q)=>typeof Q==="string"?lo(Q):Q),hk=(A)=>{let Q=new Uint8Array(ZkQ(A)),B=0;for(let Y of A)Q.set(Y,B),B+=Y.length;return Q},ZkQ=(A)=>{let Q=0;for(let B of A)Q+=B.length;return Q};var ro=(A)=>Array.isArray(A)&&Array.isArray(A.raw),ao=(A,Q)=>{let B=[];for(let[C,X]of A.entries())B=UkQ({templates:A,expressions:Q,tokens:B,index:C,template:X});if(B.length===0)throw TypeError("Template script must not be empty");let[Y,...J]=B;return[Y,J,{}]},UkQ=({templates:A,expressions:Q,tokens:B,index:Y,template:J})=>{if(J===void 0)throw TypeError(`Invalid backslash sequence: ${A.raw[Y]}`);let{nextTokens:C,leadingWhitespaces:X,trailingWhitespaces:G}=EkQ(J,A.raw[Y]),F=no(B,C,X);if(Y===Q.length)return F;let W=Q[Y],Z=Array.isArray(W)?W.map((U)=>so(U)):[so(W)];return no(F,Z,G)},EkQ=(A,Q)=>{if(Q.length===0)return{nextTokens:[],leadingWhitespaces:!1,trailingWhitespaces:!1};let B=[],Y=0,J=io.has(Q[0]);for(let X=0,G=0;XB||A.length===0||Q.length===0?[...A,...Q]:[...A.slice(0,-1),`${A.at(-1)}${Q[0]}`,...Q.slice(1)],so=(A)=>{let Q=typeof A;if(Q==="string")return A;if(Q==="number")return String(A);if(e0(A)&&(("stdout"in A)||("isMaxBuffer"in A)))return VkQ(A);if(A instanceof $kQ||Object.prototype.toString.call(A)==="[object Promise]")throw TypeError("Unexpected subprocess in template expression. Please use ${await subprocess} instead of ${subprocess}.");throw TypeError(`Unexpected "${Q}" in template expression`)},VkQ=({stdout:A})=>{if(typeof A==="string")return A;if(RY(A))return GM(A);if(A===void 0)throw TypeError(`Missing result.stdout in template expression. This is probably due to the previous subprocess' "stdout" option.`);throw TypeError(`Unexpected "${typeof A}" stdout in template expression`)};import{spawnSync as MhQ}from"node:child_process";import{debuglog as IkQ}from"node:util";import xk from"node:process";var GC=(A)=>FM.includes(A),FM=[xk.stdin,xk.stdout,xk.stderr],l8=["stdin","stdout","stderr"],WM=(A)=>l8[A]??`stdio[${A}]`;var to=(A)=>{let Q={...A};for(let B of mk)Q[B]=fk(A,B);return Q},fk=(A,Q)=>{let B=Array.from({length:HkQ(A)+1}),Y=DkQ(A[Q],B,Q);return zkQ(Y,Q)},HkQ=({stdio:A})=>Array.isArray(A)?Math.max(A.length,l8.length):l8.length,DkQ=(A,Q,B)=>e0(A)?NkQ(A,Q,B):Q.fill(A),NkQ=(A,Q,B)=>{for(let Y of Object.keys(A).sort(LkQ))for(let J of qkQ(Y,B,Q))Q[J]=A[Y];return Q},LkQ=(A,Q)=>oo(A){if(A==="stdout"||A==="stderr")return 0;return A==="all"?2:1},qkQ=(A,Q,B)=>{if(A==="ipc")return[B.length-1];let Y=bk(A);if(Y===void 0||Y===0)throw TypeError(`"${Q}.${A}" is invalid. +`)}}class zY{static instance=new zY;static assetsLibraryPath=(()=>{if(process.env.NODE_ENV==="production")return null;let A="@hytopia.com/assets";try{return y6.dirname(u.resolve(A))}catch{return null}})();syncAsset(A){if(!zY.assetsLibraryPath)return n.warning("AssetsLibrary.syncAsset(): Assets library is not available.");try{let Q=y6.relative(zY.assetsLibraryPath,A),B=y6.join("assets",Q);if(!v6.existsSync(A))return;if(v6.existsSync(B))return;let Y=Q.match(/^(.+?)\/\.optimized\/([^/]+)\//);if(Y){let[,J,C]=Y,X=y6.join(zY.assetsLibraryPath,J,".optimized",C),G=y6.join("assets",J,".optimized",C);v6.cpSync(X,G,{recursive:!0,force:!1}),[".gltf",".glb"].forEach((F)=>{let W=y6.join(zY.assetsLibraryPath,J,`${C}${F}`),Z=y6.join("assets",J,`${C}${F}`);if(v6.existsSync(W)&&!v6.existsSync(Z))v6.mkdirSync(y6.dirname(Z),{recursive:!0}),v6.copyFileSync(W,Z)}),console.log(`AssetsLibrary.syncAsset(): Copied model from asset library to local assets: ${J}/${C}`)}else v6.mkdirSync(y6.dirname(B),{recursive:!0}),v6.copyFileSync(A,B),console.log(`AssetsLibrary.syncAsset(): Copied asset from asset library to local assets: ${Q}`)}catch(Q){n.warning(`AssetsLibrary.syncAsset(): Failed to copy asset "${A}" to local assets: ${Q}`)}}}var j,VB=Array(128).fill(void 0);function $B(A){return VB[A]}VB.push(void 0,null,!0,!1);var gV=VB.length;function lB(A){gV===VB.length&&VB.push(VB.length+1);let Q=gV;return gV=VB[Q],VB[Q]=A,Q}function FM(A,Q){try{return A.apply(this,Q)}catch(B){j.__wbindgen_export_0(lB(B))}}var Nt=typeof TextDecoder<"u"?new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0}):{decode:()=>{throw Error("TextDecoder not available")}};typeof TextDecoder<"u"&&Nt.decode();var kV=null;function pk(A,Q){return A>>>=0,Nt.decode((kV!==null&&kV.byteLength!==0||(kV=new Uint8Array(j.memory.buffer)),kV).subarray(A,A+Q))}function VQ(A){return A==null}var VW=null;function VY(){return(VW===null||VW.buffer.detached===!0||VW.buffer.detached===void 0&&VW.buffer!==j.memory.buffer)&&(VW=new DataView(j.memory.buffer)),VW}function xV(A){let Q=$B(A);return function(B){B<132||(VB[B]=gV,gV=B)}(A),Q}function c(A,Q){if(!(A instanceof Q))throw Error(`expected instance of ${Q.name}`)}var pB=128;function G0(A){if(pB==1)throw Error("out of js stack");return VB[--pB]=A,pB}var _V=null;function IkQ(A,Q){return A>>>=0,(_V!==null&&_V.byteLength!==0||(_V=new Int32Array(j.memory.buffer)),_V).subarray(A/4,A/4+Q)}var vV=null;function Lt(){return vV!==null&&vV.byteLength!==0||(vV=new Float32Array(j.memory.buffer)),vV}function no(A,Q){return A>>>=0,Lt().subarray(A/4,A/4+Q)}var yV=null;function qt(){return yV!==null&&yV.byteLength!==0||(yV=new Uint32Array(j.memory.buffer)),yV}var fJ=0;function SV(A,Q){let B=Q(4*A.length,4)>>>0;return qt().set(A,B/4),fJ=A.length,B}function bG(A,Q){let B=Q(4*A.length,4)>>>0;return Lt().set(A,B/4),fJ=A.length,B}Object.freeze({Vertex:0,0:"Vertex",Edge:1,1:"Edge",Face:2,2:"Face",Unknown:3,3:"Unknown"});var LM=Object.freeze({LinX:0,0:"LinX",LinY:1,1:"LinY",LinZ:2,2:"LinZ",AngX:3,3:"AngX",AngY:4,4:"AngY",AngZ:5,5:"AngZ"}),WC=Object.freeze({Revolute:0,0:"Revolute",Fixed:1,1:"Fixed",Prismatic:2,2:"Prismatic",Rope:3,3:"Rope",Spring:4,4:"Spring",Spherical:5,5:"Spherical",Generic:6,6:"Generic"});Object.freeze({AccelerationBased:0,0:"AccelerationBased",ForceBased:1,1:"ForceBased"}),Object.freeze({Dynamic:0,0:"Dynamic",Fixed:1,1:"Fixed",KinematicPositionBased:2,2:"KinematicPositionBased",KinematicVelocityBased:3,3:"KinematicVelocityBased"});var hY=Object.freeze({Ball:0,0:"Ball",Cuboid:1,1:"Cuboid",Capsule:2,2:"Capsule",Segment:3,3:"Segment",Polyline:4,4:"Polyline",Triangle:5,5:"Triangle",TriMesh:6,6:"TriMesh",HeightField:7,7:"HeightField",Compound:8,8:"Compound",ConvexPolyhedron:9,9:"ConvexPolyhedron",Cylinder:10,10:"Cylinder",Cone:11,11:"Cone",RoundCuboid:12,12:"RoundCuboid",RoundTriangle:13,13:"RoundTriangle",RoundCylinder:14,14:"RoundCylinder",RoundCone:15,15:"RoundCone",RoundConvexPolyhedron:16,16:"RoundConvexPolyhedron",HalfSpace:17,17:"HalfSpace",Voxels:18,18:"Voxels"}),hk=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawbroadphase_free(A>>>0,1));class g6{static __wrap(A){A>>>=0;let Q=Object.create(g6.prototype);return Q.__wbg_ptr=A,hk.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,hk.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawbroadphase_free(A,0)}constructor(){let A=j.rawbroadphase_new();return this.__wbg_ptr=A>>>0,hk.register(this,this.__wbg_ptr,this),this}castRay(A,Q,B,Y,J,C,X,G,F,W,Z,U){try{c(A,IY),c(Q,J0),c(B,j0),c(Y,r),c(J,r);let $=j.rawbroadphase_castRay(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C,X,G,VQ(F)?4294967297:F>>>0,!VQ(W),VQ(W)?0:W,!VQ(Z),VQ(Z)?0:Z,G0(U));return $===0?void 0:G_.__wrap($)}finally{VB[pB++]=void 0}}castRayAndGetNormal(A,Q,B,Y,J,C,X,G,F,W,Z,U){try{c(A,IY),c(Q,J0),c(B,j0),c(Y,r),c(J,r);let $=j.rawbroadphase_castRayAndGetNormal(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C,X,G,VQ(F)?4294967297:F>>>0,!VQ(W),VQ(W)?0:W,!VQ(Z),VQ(Z)?0:Z,G0(U));return $===0?void 0:zM.__wrap($)}finally{VB[pB++]=void 0}}intersectionsWithRay(A,Q,B,Y,J,C,X,G,F,W,Z,U,$){try{c(A,IY),c(Q,J0),c(B,j0),c(Y,r),c(J,r),j.rawbroadphase_intersectionsWithRay(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C,X,G0(G),F,VQ(W)?4294967297:W>>>0,!VQ(Z),VQ(Z)?0:Z,!VQ(U),VQ(U)?0:U,G0($))}finally{VB[pB++]=void 0,VB[pB++]=void 0}}intersectionWithShape(A,Q,B,Y,J,C,X,G,F,W,Z){try{let E=j.__wbindgen_add_to_stack_pointer(-16);c(A,IY),c(Q,J0),c(B,j0),c(Y,r),c(J,AB),c(C,UQ),j.rawbroadphase_intersectionWithShape(E,this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C.__wbg_ptr,X,VQ(G)?4294967297:G>>>0,!VQ(F),VQ(F)?0:F,!VQ(W),VQ(W)?0:W,G0(Z));var U=VY().getInt32(E+0,!0),$=VY().getFloat64(E+8,!0);return U===0?void 0:$}finally{j.__wbindgen_add_to_stack_pointer(16),VB[pB++]=void 0}}projectPoint(A,Q,B,Y,J,C,X,G,F,W){try{c(A,IY),c(Q,J0),c(B,j0),c(Y,r);let Z=j.rawbroadphase_projectPoint(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J,C,VQ(X)?4294967297:X>>>0,!VQ(G),VQ(G)?0:G,!VQ(F),VQ(F)?0:F,G0(W));return Z===0?void 0:ZM.__wrap(Z)}finally{VB[pB++]=void 0}}projectPointAndGetFeature(A,Q,B,Y,J,C,X,G,F){try{c(A,IY),c(Q,J0),c(B,j0),c(Y,r);let W=j.rawbroadphase_projectPointAndGetFeature(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J,VQ(C)?4294967297:C>>>0,!VQ(X),VQ(X)?0:X,!VQ(G),VQ(G)?0:G,G0(F));return W===0?void 0:ZM.__wrap(W)}finally{VB[pB++]=void 0}}intersectionsWithPoint(A,Q,B,Y,J,C,X,G,F,W){try{c(A,IY),c(Q,J0),c(B,j0),c(Y,r),j.rawbroadphase_intersectionsWithPoint(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,G0(J),C,VQ(X)?4294967297:X>>>0,!VQ(G),VQ(G)?0:G,!VQ(F),VQ(F)?0:F,G0(W))}finally{VB[pB++]=void 0,VB[pB++]=void 0}}castShape(A,Q,B,Y,J,C,X,G,F,W,Z,U,$,E,K){try{c(A,IY),c(Q,J0),c(B,j0),c(Y,r),c(J,AB),c(C,r),c(X,UQ);let I=j.rawbroadphase_castShape(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C.__wbg_ptr,X.__wbg_ptr,G,F,W,Z,VQ(U)?4294967297:U>>>0,!VQ($),VQ($)?0:$,!VQ(E),VQ(E)?0:E,G0(K));return I===0?void 0:qM.__wrap(I)}finally{VB[pB++]=void 0}}intersectionsWithShape(A,Q,B,Y,J,C,X,G,F,W,Z,U){try{c(A,IY),c(Q,J0),c(B,j0),c(Y,r),c(J,AB),c(C,UQ),j.rawbroadphase_intersectionsWithShape(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C.__wbg_ptr,G0(X),G,VQ(F)?4294967297:F>>>0,!VQ(W),VQ(W)?0:W,!VQ(Z),VQ(Z)?0:Z,G0(U))}finally{VB[pB++]=void 0,VB[pB++]=void 0}}collidersWithAabbIntersectingAabb(A,Q,B,Y,J,C){try{c(A,IY),c(Q,J0),c(B,j0),c(Y,r),c(J,r),j.rawbroadphase_collidersWithAabbIntersectingAabb(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,G0(C))}finally{VB[pB++]=void 0}}}var so=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawccdsolver_free(A>>>0,1));class WM{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,so.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawccdsolver_free(A,0)}constructor(){let A=j.rawccdsolver_new();return this.__wbg_ptr=A>>>0,so.register(this,this.__wbg_ptr,this),this}}var ro=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawcharactercollision_free(A>>>0,1));class Q_{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,ro.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawcharactercollision_free(A,0)}constructor(){let A=j.rawcharactercollision_new();return this.__wbg_ptr=A>>>0,ro.register(this,this.__wbg_ptr,this),this}handle(){return j.rawcharactercollision_handle(this.__wbg_ptr)}translationDeltaApplied(){let A=j.rawcharactercollision_translationDeltaApplied(this.__wbg_ptr);return r.__wrap(A)}translationDeltaRemaining(){let A=j.rawcharactercollision_translationDeltaRemaining(this.__wbg_ptr);return r.__wrap(A)}toi(){return j.rawcharactercollision_toi(this.__wbg_ptr)}worldWitness1(){let A=j.rawcharactercollision_worldWitness1(this.__wbg_ptr);return r.__wrap(A)}worldWitness2(){let A=j.rawcharactercollision_worldWitness2(this.__wbg_ptr);return r.__wrap(A)}worldNormal1(){let A=j.rawcharactercollision_worldNormal1(this.__wbg_ptr);return r.__wrap(A)}worldNormal2(){let A=j.rawcharactercollision_worldNormal2(this.__wbg_ptr);return r.__wrap(A)}}var gk=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawcolliderset_free(A>>>0,1));class j0{static __wrap(A){A>>>=0;let Q=Object.create(j0.prototype);return Q.__wbg_ptr=A,gk.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,gk.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawcolliderset_free(A,0)}coTranslation(A){let Q=j.rawcolliderset_coTranslation(this.__wbg_ptr,A);return r.__wrap(Q)}coRotation(A){let Q=j.rawcolliderset_coRotation(this.__wbg_ptr,A);return AB.__wrap(Q)}coTranslationWrtParent(A){let Q=j.rawcolliderset_coTranslationWrtParent(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}coRotationWrtParent(A){let Q=j.rawcolliderset_coRotationWrtParent(this.__wbg_ptr,A);return Q===0?void 0:AB.__wrap(Q)}coSetTranslation(A,Q,B,Y){j.rawcolliderset_coSetTranslation(this.__wbg_ptr,A,Q,B,Y)}coSetTranslationWrtParent(A,Q,B,Y){j.rawcolliderset_coSetTranslationWrtParent(this.__wbg_ptr,A,Q,B,Y)}coSetRotation(A,Q,B,Y,J){j.rawcolliderset_coSetRotation(this.__wbg_ptr,A,Q,B,Y,J)}coSetRotationWrtParent(A,Q,B,Y,J){j.rawcolliderset_coSetRotationWrtParent(this.__wbg_ptr,A,Q,B,Y,J)}coIsSensor(A){return j.rawcolliderset_coIsSensor(this.__wbg_ptr,A)!==0}coShapeType(A){return j.rawcolliderset_coShapeType(this.__wbg_ptr,A)}coHalfspaceNormal(A){let Q=j.rawcolliderset_coHalfspaceNormal(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}coHalfExtents(A){let Q=j.rawcolliderset_coHalfExtents(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}coSetHalfExtents(A,Q){c(Q,r),j.rawcolliderset_coSetHalfExtents(this.__wbg_ptr,A,Q.__wbg_ptr)}coRadius(A){let Q=j.rawcolliderset_coRadius(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}coSetRadius(A,Q){j.rawcolliderset_coSetRadius(this.__wbg_ptr,A,Q)}coHalfHeight(A){let Q=j.rawcolliderset_coHalfHeight(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}coSetHalfHeight(A,Q){j.rawcolliderset_coSetHalfHeight(this.__wbg_ptr,A,Q)}coRoundRadius(A){let Q=j.rawcolliderset_coRoundRadius(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}coSetRoundRadius(A,Q){j.rawcolliderset_coSetRoundRadius(this.__wbg_ptr,A,Q)}coVoxelData(A){try{let Y=j.__wbindgen_add_to_stack_pointer(-16);j.rawcolliderset_coVoxelData(Y,this.__wbg_ptr,A);var Q=VY().getInt32(Y+0,!0),B=VY().getInt32(Y+4,!0);let J;return Q!==0&&(J=IkQ(Q,B).slice(),j.__wbindgen_export_1(Q,4*B,4)),J}finally{j.__wbindgen_add_to_stack_pointer(16)}}coVoxelSize(A){let Q=j.rawcolliderset_coVoxelSize(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}coSetVoxel(A,Q,B,Y,J){j.rawcolliderset_coSetVoxel(this.__wbg_ptr,A,Q,B,Y,J)}coPropagateVoxelChange(A,Q,B,Y,J,C,X,G){j.rawcolliderset_coPropagateVoxelChange(this.__wbg_ptr,A,Q,B,Y,J,C,X,G)}coCombineVoxelStates(A,Q,B,Y,J){j.rawcolliderset_coCombineVoxelStates(this.__wbg_ptr,A,Q,B,Y,J)}coVertices(A){try{let Y=j.__wbindgen_add_to_stack_pointer(-16);j.rawcolliderset_coVertices(Y,this.__wbg_ptr,A);var Q=VY().getInt32(Y+0,!0),B=VY().getInt32(Y+4,!0);let J;return Q!==0&&(J=no(Q,B).slice(),j.__wbindgen_export_1(Q,4*B,4)),J}finally{j.__wbindgen_add_to_stack_pointer(16)}}coIndices(A){try{let Y=j.__wbindgen_add_to_stack_pointer(-16);j.rawcolliderset_coIndices(Y,this.__wbg_ptr,A);var Q=VY().getInt32(Y+0,!0),B=VY().getInt32(Y+4,!0);let J;return Q!==0&&(J=function(C,X){return C>>>=0,qt().subarray(C/4,C/4+X)}(Q,B).slice(),j.__wbindgen_export_1(Q,4*B,4)),J}finally{j.__wbindgen_add_to_stack_pointer(16)}}coTriMeshFlags(A){let Q=j.rawcolliderset_coTriMeshFlags(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}coHeightFieldFlags(A){let Q=j.rawcolliderset_coHeightFieldFlags(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}coHeightfieldHeights(A){try{let Y=j.__wbindgen_add_to_stack_pointer(-16);j.rawcolliderset_coHeightfieldHeights(Y,this.__wbg_ptr,A);var Q=VY().getInt32(Y+0,!0),B=VY().getInt32(Y+4,!0);let J;return Q!==0&&(J=no(Q,B).slice(),j.__wbindgen_export_1(Q,4*B,4)),J}finally{j.__wbindgen_add_to_stack_pointer(16)}}coHeightfieldScale(A){let Q=j.rawcolliderset_coHeightfieldScale(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}coHeightfieldNRows(A){let Q=j.rawcolliderset_coHeightfieldNRows(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}coHeightfieldNCols(A){let Q=j.rawcolliderset_coHeightfieldNCols(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}coParent(A){try{let Y=j.__wbindgen_add_to_stack_pointer(-16);j.rawcolliderset_coParent(Y,this.__wbg_ptr,A);var Q=VY().getInt32(Y+0,!0),B=VY().getFloat64(Y+8,!0);return Q===0?void 0:B}finally{j.__wbindgen_add_to_stack_pointer(16)}}coSetEnabled(A,Q){j.rawcolliderset_coSetEnabled(this.__wbg_ptr,A,Q)}coIsEnabled(A){return j.rawcolliderset_coIsEnabled(this.__wbg_ptr,A)!==0}coSetContactSkin(A,Q){j.rawcolliderset_coSetContactSkin(this.__wbg_ptr,A,Q)}coContactSkin(A){return j.rawcolliderset_coContactSkin(this.__wbg_ptr,A)}coFriction(A){return j.rawcolliderset_coFriction(this.__wbg_ptr,A)}coRestitution(A){return j.rawcolliderset_coRestitution(this.__wbg_ptr,A)}coDensity(A){return j.rawcolliderset_coDensity(this.__wbg_ptr,A)}coMass(A){return j.rawcolliderset_coMass(this.__wbg_ptr,A)}coVolume(A){return j.rawcolliderset_coVolume(this.__wbg_ptr,A)}coCollisionGroups(A){return j.rawcolliderset_coCollisionGroups(this.__wbg_ptr,A)>>>0}coSolverGroups(A){return j.rawcolliderset_coSolverGroups(this.__wbg_ptr,A)>>>0}coActiveHooks(A){return j.rawcolliderset_coActiveHooks(this.__wbg_ptr,A)>>>0}coActiveCollisionTypes(A){return j.rawcolliderset_coActiveCollisionTypes(this.__wbg_ptr,A)}coActiveEvents(A){return j.rawcolliderset_coActiveEvents(this.__wbg_ptr,A)>>>0}coContactForceEventThreshold(A){return j.rawcolliderset_coContactForceEventThreshold(this.__wbg_ptr,A)}coContainsPoint(A,Q){return c(Q,r),j.rawcolliderset_coContainsPoint(this.__wbg_ptr,A,Q.__wbg_ptr)!==0}coCastShape(A,Q,B,Y,J,C,X,G,F){c(Q,r),c(B,UQ),c(Y,r),c(J,AB),c(C,r);let W=j.rawcolliderset_coCastShape(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C.__wbg_ptr,X,G,F);return W===0?void 0:wM.__wrap(W)}coCastCollider(A,Q,B,Y,J,C,X){c(Q,r),c(Y,r);let G=j.rawcolliderset_coCastCollider(this.__wbg_ptr,A,Q.__wbg_ptr,B,Y.__wbg_ptr,J,C,X);return G===0?void 0:qM.__wrap(G)}coIntersectsShape(A,Q,B,Y){return c(Q,UQ),c(B,r),c(Y,AB),j.rawcolliderset_coIntersectsShape(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr)!==0}coContactShape(A,Q,B,Y,J){c(Q,UQ),c(B,r),c(Y,AB);let C=j.rawcolliderset_coContactShape(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J);return C===0?void 0:fV.__wrap(C)}coContactCollider(A,Q,B){let Y=j.rawcolliderset_coContactCollider(this.__wbg_ptr,A,Q,B);return Y===0?void 0:fV.__wrap(Y)}coProjectPoint(A,Q,B){c(Q,r);let Y=j.rawcolliderset_coProjectPoint(this.__wbg_ptr,A,Q.__wbg_ptr,B);return MM.__wrap(Y)}coIntersectsRay(A,Q,B,Y){return c(Q,r),c(B,r),j.rawcolliderset_coIntersectsRay(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y)!==0}coCastRay(A,Q,B,Y,J){return c(Q,r),c(B,r),j.rawcolliderset_coCastRay(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y,J)}coCastRayAndGetNormal(A,Q,B,Y,J){c(Q,r),c(B,r);let C=j.rawcolliderset_coCastRayAndGetNormal(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y,J);return C===0?void 0:RM.__wrap(C)}coSetSensor(A,Q){j.rawcolliderset_coSetSensor(this.__wbg_ptr,A,Q)}coSetRestitution(A,Q){j.rawcolliderset_coSetRestitution(this.__wbg_ptr,A,Q)}coSetFriction(A,Q){j.rawcolliderset_coSetFriction(this.__wbg_ptr,A,Q)}coFrictionCombineRule(A){return j.rawcolliderset_coFrictionCombineRule(this.__wbg_ptr,A)>>>0}coSetFrictionCombineRule(A,Q){j.rawcolliderset_coSetFrictionCombineRule(this.__wbg_ptr,A,Q)}coRestitutionCombineRule(A){return j.rawcolliderset_coRestitutionCombineRule(this.__wbg_ptr,A)>>>0}coSetRestitutionCombineRule(A,Q){j.rawcolliderset_coSetRestitutionCombineRule(this.__wbg_ptr,A,Q)}coSetCollisionGroups(A,Q){j.rawcolliderset_coSetCollisionGroups(this.__wbg_ptr,A,Q)}coSetSolverGroups(A,Q){j.rawcolliderset_coSetSolverGroups(this.__wbg_ptr,A,Q)}coSetActiveHooks(A,Q){j.rawcolliderset_coSetActiveHooks(this.__wbg_ptr,A,Q)}coSetActiveEvents(A,Q){j.rawcolliderset_coSetActiveEvents(this.__wbg_ptr,A,Q)}coSetActiveCollisionTypes(A,Q){j.rawcolliderset_coSetActiveCollisionTypes(this.__wbg_ptr,A,Q)}coSetShape(A,Q){c(Q,UQ),j.rawcolliderset_coSetShape(this.__wbg_ptr,A,Q.__wbg_ptr)}coSetContactForceEventThreshold(A,Q){j.rawcolliderset_coSetContactForceEventThreshold(this.__wbg_ptr,A,Q)}coSetDensity(A,Q){j.rawcolliderset_coSetDensity(this.__wbg_ptr,A,Q)}coSetMass(A,Q){j.rawcolliderset_coSetMass(this.__wbg_ptr,A,Q)}coSetMassProperties(A,Q,B,Y,J){c(B,r),c(Y,r),c(J,AB),j.rawcolliderset_coSetMassProperties(this.__wbg_ptr,A,Q,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr)}constructor(){let A=j.rawcolliderset_new();return this.__wbg_ptr=A>>>0,gk.register(this,this.__wbg_ptr,this),this}len(){return j.rawcolliderset_len(this.__wbg_ptr)>>>0}contains(A){return j.rawcolliderset_contains(this.__wbg_ptr,A)!==0}createCollider(A,Q,B,Y,J,C,X,G,F,W,Z,U,$,E,K,I,V,H,D,L,z,M,N,q,w){try{let O=j.__wbindgen_add_to_stack_pointer(-16);c(Q,UQ),c(B,r),c(Y,AB),c(X,r),c(G,r),c(F,AB),c(w,J0),j.rawcolliderset_createCollider(O,this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J,C,X.__wbg_ptr,G.__wbg_ptr,F.__wbg_ptr,W,Z,U,$,E,K,I,V,H,D,L,z,M,N,q,w.__wbg_ptr);var P=VY().getInt32(O+0,!0),_=VY().getFloat64(O+8,!0);return P===0?void 0:_}finally{j.__wbindgen_add_to_stack_pointer(16)}}remove(A,Q,B,Y){c(Q,f6),c(B,J0),j.rawcolliderset_remove(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y)}isHandleValid(A){return j.rawcolliderset_contains(this.__wbg_ptr,A)!==0}forEachColliderHandle(A){try{j.rawcolliderset_forEachColliderHandle(this.__wbg_ptr,G0(A))}finally{VB[pB++]=void 0}}}var ao=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawcollidershapecasthit_free(A>>>0,1));class qM{static __wrap(A){A>>>=0;let Q=Object.create(qM.prototype);return Q.__wbg_ptr=A,ao.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,ao.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawcollidershapecasthit_free(A,0)}colliderHandle(){return j.rawcharactercollision_handle(this.__wbg_ptr)}time_of_impact(){return j.rawcollidershapecasthit_time_of_impact(this.__wbg_ptr)}witness1(){let A=j.rawcollidershapecasthit_witness1(this.__wbg_ptr);return r.__wrap(A)}witness2(){let A=j.rawcollidershapecasthit_witness2(this.__wbg_ptr);return r.__wrap(A)}normal1(){let A=j.rawcharactercollision_translationDeltaApplied(this.__wbg_ptr);return r.__wrap(A)}normal2(){let A=j.rawcharactercollision_translationDeltaRemaining(this.__wbg_ptr);return r.__wrap(A)}}var oo=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawcontactforceevent_free(A>>>0,1));class B_{static __wrap(A){A>>>=0;let Q=Object.create(B_.prototype);return Q.__wbg_ptr=A,oo.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,oo.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawcontactforceevent_free(A,0)}collider1(){return j.rawcharactercollision_handle(this.__wbg_ptr)}collider2(){return j.rawcontactforceevent_collider2(this.__wbg_ptr)}total_force(){let A=j.rawcontactforceevent_total_force(this.__wbg_ptr);return r.__wrap(A)}total_force_magnitude(){return j.rawcontactforceevent_total_force_magnitude(this.__wbg_ptr)}max_force_direction(){let A=j.rawcontactforceevent_max_force_direction(this.__wbg_ptr);return r.__wrap(A)}max_force_magnitude(){return j.rawcontactforceevent_max_force_magnitude(this.__wbg_ptr)}}var to=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawcontactmanifold_free(A>>>0,1));class Y_{static __wrap(A){A>>>=0;let Q=Object.create(Y_.prototype);return Q.__wbg_ptr=A,to.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,to.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawcontactmanifold_free(A,0)}normal(){let A=j.rawcontactmanifold_normal(this.__wbg_ptr);return r.__wrap(A)}local_n1(){let A=j.rawcontactmanifold_local_n1(this.__wbg_ptr);return r.__wrap(A)}local_n2(){let A=j.rawcontactmanifold_local_n2(this.__wbg_ptr);return r.__wrap(A)}subshape1(){return j.rawcontactmanifold_subshape1(this.__wbg_ptr)>>>0}subshape2(){return j.rawcontactmanifold_subshape2(this.__wbg_ptr)>>>0}num_contacts(){return j.rawcontactmanifold_num_contacts(this.__wbg_ptr)>>>0}contact_local_p1(A){let Q=j.rawcontactmanifold_contact_local_p1(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}contact_local_p2(A){let Q=j.rawcontactmanifold_contact_local_p2(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}contact_dist(A){return j.rawcontactmanifold_contact_dist(this.__wbg_ptr,A)}contact_fid1(A){return j.rawcontactmanifold_contact_fid1(this.__wbg_ptr,A)>>>0}contact_fid2(A){return j.rawcontactmanifold_contact_fid2(this.__wbg_ptr,A)>>>0}contact_impulse(A){return j.rawcontactmanifold_contact_impulse(this.__wbg_ptr,A)}contact_tangent_impulse_x(A){return j.rawcontactmanifold_contact_tangent_impulse_x(this.__wbg_ptr,A)}contact_tangent_impulse_y(A){return j.rawcontactmanifold_contact_tangent_impulse_y(this.__wbg_ptr,A)}num_solver_contacts(){return j.rawcontactmanifold_num_solver_contacts(this.__wbg_ptr)>>>0}solver_contact_point(A){let Q=j.rawcontactmanifold_solver_contact_point(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}solver_contact_dist(A){return j.rawcontactmanifold_solver_contact_dist(this.__wbg_ptr,A)}solver_contact_friction(A){return j.rawcontactmanifold_solver_contact_friction(this.__wbg_ptr,A)}solver_contact_restitution(A){return j.rawcontactmanifold_solver_contact_restitution(this.__wbg_ptr,A)}solver_contact_tangent_velocity(A){let Q=j.rawcontactmanifold_solver_contact_tangent_velocity(this.__wbg_ptr,A);return r.__wrap(Q)}}var eo=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawcontactpair_free(A>>>0,1));class J_{static __wrap(A){A>>>=0;let Q=Object.create(J_.prototype);return Q.__wbg_ptr=A,eo.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,eo.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawcontactpair_free(A,0)}collider1(){return j.rawcontactpair_collider1(this.__wbg_ptr)}collider2(){return j.rawcontactpair_collider2(this.__wbg_ptr)}numContactManifolds(){return j.rawcontactpair_numContactManifolds(this.__wbg_ptr)>>>0}contactManifold(A){let Q=j.rawcontactpair_contactManifold(this.__wbg_ptr,A);return Q===0?void 0:Y_.__wrap(Q)}}var At=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawdebugrenderpipeline_free(A>>>0,1));class Mt{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,At.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawdebugrenderpipeline_free(A,0)}constructor(){let A=j.rawdebugrenderpipeline_new();return this.__wbg_ptr=A>>>0,At.register(this,this.__wbg_ptr,this),this}vertices(){return xV(j.rawdebugrenderpipeline_vertices(this.__wbg_ptr))}colors(){return xV(j.rawdebugrenderpipeline_colors(this.__wbg_ptr))}render(A,Q,B,Y,J,C,X){try{c(A,J0),c(Q,j0),c(B,x6),c(Y,b6),c(J,IY),j.rawdebugrenderpipeline_render(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C,G0(X))}finally{VB[pB++]=void 0}}}var Qt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawdeserializedworld_free(A>>>0,1));class C_{static __wrap(A){A>>>=0;let Q=Object.create(C_.prototype);return Q.__wbg_ptr=A,Qt.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Qt.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawdeserializedworld_free(A,0)}takeGravity(){let A=j.rawdeserializedworld_takeGravity(this.__wbg_ptr);return A===0?void 0:r.__wrap(A)}takeIntegrationParameters(){let A=j.rawdeserializedworld_takeIntegrationParameters(this.__wbg_ptr);return A===0?void 0:HW.__wrap(A)}takeIslandManager(){let A=j.rawdeserializedworld_takeIslandManager(this.__wbg_ptr);return A===0?void 0:f6.__wrap(A)}takeBroadPhase(){let A=j.rawdeserializedworld_takeBroadPhase(this.__wbg_ptr);return A===0?void 0:g6.__wrap(A)}takeNarrowPhase(){let A=j.rawdeserializedworld_takeNarrowPhase(this.__wbg_ptr);return A===0?void 0:IY.__wrap(A)}takeBodies(){let A=j.rawdeserializedworld_takeBodies(this.__wbg_ptr);return A===0?void 0:J0.__wrap(A)}takeColliders(){let A=j.rawdeserializedworld_takeColliders(this.__wbg_ptr);return A===0?void 0:j0.__wrap(A)}takeImpulseJoints(){let A=j.rawdeserializedworld_takeImpulseJoints(this.__wbg_ptr);return A===0?void 0:x6.__wrap(A)}takeMultibodyJoints(){let A=j.rawdeserializedworld_takeMultibodyJoints(this.__wbg_ptr);return A===0?void 0:b6.__wrap(A)}}var Bt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawdynamicraycastvehiclecontroller_free(A>>>0,1));class zt{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Bt.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawdynamicraycastvehiclecontroller_free(A,0)}constructor(A){let Q=j.rawdynamicraycastvehiclecontroller_new(A);return this.__wbg_ptr=Q>>>0,Bt.register(this,this.__wbg_ptr,this),this}current_vehicle_speed(){return j.rawdynamicraycastvehiclecontroller_current_vehicle_speed(this.__wbg_ptr)}chassis(){return j.rawdynamicraycastvehiclecontroller_chassis(this.__wbg_ptr)}index_up_axis(){return j.rawdynamicraycastvehiclecontroller_index_up_axis(this.__wbg_ptr)>>>0}set_index_up_axis(A){j.rawdynamicraycastvehiclecontroller_set_index_up_axis(this.__wbg_ptr,A)}index_forward_axis(){return j.rawdynamicraycastvehiclecontroller_index_forward_axis(this.__wbg_ptr)>>>0}set_index_forward_axis(A){j.rawdynamicraycastvehiclecontroller_set_index_forward_axis(this.__wbg_ptr,A)}add_wheel(A,Q,B,Y,J){c(A,r),c(Q,r),c(B,r),j.rawdynamicraycastvehiclecontroller_add_wheel(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y,J)}num_wheels(){return j.rawdynamicraycastvehiclecontroller_num_wheels(this.__wbg_ptr)>>>0}update_vehicle(A,Q,B,Y,J,C,X,G){try{c(Q,g6),c(B,IY),c(Y,J0),c(J,j0),j.rawdynamicraycastvehiclecontroller_update_vehicle(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C,VQ(X)?4294967297:X>>>0,G0(G))}finally{VB[pB++]=void 0}}wheel_chassis_connection_point_cs(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_chassis_connection_point_cs(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}set_wheel_chassis_connection_point_cs(A,Q){c(Q,r),j.rawdynamicraycastvehiclecontroller_set_wheel_chassis_connection_point_cs(this.__wbg_ptr,A,Q.__wbg_ptr)}wheel_suspension_rest_length(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_suspension_rest_length(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_suspension_rest_length(A,Q){j.rawdynamicraycastvehiclecontroller_set_wheel_suspension_rest_length(this.__wbg_ptr,A,Q)}wheel_max_suspension_travel(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_max_suspension_travel(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_max_suspension_travel(A,Q){j.rawdynamicraycastvehiclecontroller_set_wheel_max_suspension_travel(this.__wbg_ptr,A,Q)}wheel_radius(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_radius(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_radius(A,Q){j.rawdynamicraycastvehiclecontroller_set_wheel_radius(this.__wbg_ptr,A,Q)}wheel_suspension_stiffness(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_suspension_stiffness(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_suspension_stiffness(A,Q){j.rawdynamicraycastvehiclecontroller_set_wheel_suspension_stiffness(this.__wbg_ptr,A,Q)}wheel_suspension_compression(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_suspension_compression(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_suspension_compression(A,Q){j.rawdynamicraycastvehiclecontroller_set_wheel_suspension_compression(this.__wbg_ptr,A,Q)}wheel_suspension_relaxation(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_suspension_relaxation(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_suspension_relaxation(A,Q){j.rawdynamicraycastvehiclecontroller_set_wheel_suspension_relaxation(this.__wbg_ptr,A,Q)}wheel_max_suspension_force(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_max_suspension_force(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_max_suspension_force(A,Q){j.rawdynamicraycastvehiclecontroller_set_wheel_max_suspension_force(this.__wbg_ptr,A,Q)}wheel_brake(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_brake(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_brake(A,Q){j.rawdynamicraycastvehiclecontroller_set_wheel_brake(this.__wbg_ptr,A,Q)}wheel_steering(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_steering(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_steering(A,Q){j.rawdynamicraycastvehiclecontroller_set_wheel_steering(this.__wbg_ptr,A,Q)}wheel_engine_force(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_engine_force(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_engine_force(A,Q){j.rawdynamicraycastvehiclecontroller_set_wheel_engine_force(this.__wbg_ptr,A,Q)}wheel_direction_cs(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_direction_cs(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}set_wheel_direction_cs(A,Q){c(Q,r),j.rawdynamicraycastvehiclecontroller_set_wheel_direction_cs(this.__wbg_ptr,A,Q.__wbg_ptr)}wheel_axle_cs(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_axle_cs(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}set_wheel_axle_cs(A,Q){c(Q,r),j.rawdynamicraycastvehiclecontroller_set_wheel_axle_cs(this.__wbg_ptr,A,Q.__wbg_ptr)}wheel_friction_slip(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_friction_slip(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_friction_slip(A,Q){j.rawdynamicraycastvehiclecontroller_set_wheel_friction_slip(this.__wbg_ptr,A,Q)}wheel_side_friction_stiffness(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_side_friction_stiffness(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_side_friction_stiffness(A,Q){j.rawdynamicraycastvehiclecontroller_set_wheel_side_friction_stiffness(this.__wbg_ptr,A,Q)}wheel_rotation(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_rotation(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}wheel_forward_impulse(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_forward_impulse(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}wheel_side_impulse(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_side_impulse(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}wheel_suspension_force(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_suspension_force(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}wheel_contact_normal_ws(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_contact_normal_ws(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}wheel_contact_point_ws(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_contact_point_ws(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}wheel_suspension_length(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_suspension_length(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}wheel_hard_point_ws(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_hard_point_ws(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}wheel_is_in_contact(A){return j.rawdynamicraycastvehiclecontroller_wheel_is_in_contact(this.__wbg_ptr,A)!==0}wheel_ground_object(A){try{let Y=j.__wbindgen_add_to_stack_pointer(-16);j.rawdynamicraycastvehiclecontroller_wheel_ground_object(Y,this.__wbg_ptr,A);var Q=VY().getInt32(Y+0,!0),B=VY().getFloat64(Y+8,!0);return Q===0?void 0:B}finally{j.__wbindgen_add_to_stack_pointer(16)}}}var Yt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_raweventqueue_free(A>>>0,1));class X_{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Yt.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_raweventqueue_free(A,0)}constructor(A){let Q=j.raweventqueue_new(A);return this.__wbg_ptr=Q>>>0,Yt.register(this,this.__wbg_ptr,this),this}drainCollisionEvents(A){try{j.raweventqueue_drainCollisionEvents(this.__wbg_ptr,G0(A))}finally{VB[pB++]=void 0}}drainContactForceEvents(A){try{j.raweventqueue_drainContactForceEvents(this.__wbg_ptr,G0(A))}finally{VB[pB++]=void 0}}clear(){j.raweventqueue_clear(this.__wbg_ptr)}}var Jt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawgenericjoint_free(A>>>0,1));class gY{static __wrap(A){A>>>=0;let Q=Object.create(gY.prototype);return Q.__wbg_ptr=A,Jt.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Jt.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawgenericjoint_free(A,0)}static generic(A,Q,B,Y){c(A,r),c(Q,r),c(B,r);let J=j.rawgenericjoint_generic(A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y);return J===0?void 0:gY.__wrap(J)}static spring(A,Q,B,Y,J){c(Y,r),c(J,r);let C=j.rawgenericjoint_spring(A,Q,B,Y.__wbg_ptr,J.__wbg_ptr);return gY.__wrap(C)}static rope(A,Q,B){c(Q,r),c(B,r);let Y=j.rawgenericjoint_rope(A,Q.__wbg_ptr,B.__wbg_ptr);return gY.__wrap(Y)}static spherical(A,Q){c(A,r),c(Q,r);let B=j.rawgenericjoint_spherical(A.__wbg_ptr,Q.__wbg_ptr);return gY.__wrap(B)}static prismatic(A,Q,B,Y,J,C){c(A,r),c(Q,r),c(B,r);let X=j.rawgenericjoint_prismatic(A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y,J,C);return X===0?void 0:gY.__wrap(X)}static fixed(A,Q,B,Y){c(A,r),c(Q,AB),c(B,r),c(Y,AB);let J=j.rawgenericjoint_fixed(A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr);return gY.__wrap(J)}static revolute(A,Q,B){c(A,r),c(Q,r),c(B,r);let Y=j.rawgenericjoint_revolute(A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr);return Y===0?void 0:gY.__wrap(Y)}}var xk=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawimpulsejointset_free(A>>>0,1));class x6{static __wrap(A){A>>>=0;let Q=Object.create(x6.prototype);return Q.__wbg_ptr=A,xk.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,xk.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawimpulsejointset_free(A,0)}jointType(A){return j.rawimpulsejointset_jointType(this.__wbg_ptr,A)}jointBodyHandle1(A){return j.rawimpulsejointset_jointBodyHandle1(this.__wbg_ptr,A)}jointBodyHandle2(A){return j.rawimpulsejointset_jointBodyHandle2(this.__wbg_ptr,A)}jointFrameX1(A){let Q=j.rawimpulsejointset_jointFrameX1(this.__wbg_ptr,A);return AB.__wrap(Q)}jointFrameX2(A){let Q=j.rawimpulsejointset_jointFrameX2(this.__wbg_ptr,A);return AB.__wrap(Q)}jointAnchor1(A){let Q=j.rawimpulsejointset_jointAnchor1(this.__wbg_ptr,A);return r.__wrap(Q)}jointAnchor2(A){let Q=j.rawimpulsejointset_jointAnchor2(this.__wbg_ptr,A);return r.__wrap(Q)}jointSetAnchor1(A,Q){c(Q,r),j.rawimpulsejointset_jointSetAnchor1(this.__wbg_ptr,A,Q.__wbg_ptr)}jointSetAnchor2(A,Q){c(Q,r),j.rawimpulsejointset_jointSetAnchor2(this.__wbg_ptr,A,Q.__wbg_ptr)}jointContactsEnabled(A){return j.rawimpulsejointset_jointContactsEnabled(this.__wbg_ptr,A)!==0}jointSetContactsEnabled(A,Q){j.rawimpulsejointset_jointSetContactsEnabled(this.__wbg_ptr,A,Q)}jointLimitsEnabled(A,Q){return j.rawimpulsejointset_jointLimitsEnabled(this.__wbg_ptr,A,Q)!==0}jointLimitsMin(A,Q){return j.rawimpulsejointset_jointLimitsMin(this.__wbg_ptr,A,Q)}jointLimitsMax(A,Q){return j.rawimpulsejointset_jointLimitsMax(this.__wbg_ptr,A,Q)}jointSetLimits(A,Q,B,Y){j.rawimpulsejointset_jointSetLimits(this.__wbg_ptr,A,Q,B,Y)}jointConfigureMotorModel(A,Q,B){j.rawimpulsejointset_jointConfigureMotorModel(this.__wbg_ptr,A,Q,B)}jointConfigureMotorVelocity(A,Q,B,Y){j.rawimpulsejointset_jointConfigureMotorVelocity(this.__wbg_ptr,A,Q,B,Y)}jointConfigureMotorPosition(A,Q,B,Y,J){j.rawimpulsejointset_jointConfigureMotorPosition(this.__wbg_ptr,A,Q,B,Y,J)}jointConfigureMotor(A,Q,B,Y,J,C){j.rawimpulsejointset_jointConfigureMotor(this.__wbg_ptr,A,Q,B,Y,J,C)}constructor(){let A=j.rawimpulsejointset_new();return this.__wbg_ptr=A>>>0,xk.register(this,this.__wbg_ptr,this),this}createJoint(A,Q,B,Y){return c(A,gY),j.rawimpulsejointset_createJoint(this.__wbg_ptr,A.__wbg_ptr,Q,B,Y)}remove(A,Q){j.rawimpulsejointset_remove(this.__wbg_ptr,A,Q)}len(){return j.rawimpulsejointset_len(this.__wbg_ptr)>>>0}contains(A){return j.rawimpulsejointset_contains(this.__wbg_ptr,A)!==0}forEachJointHandle(A){try{j.rawimpulsejointset_forEachJointHandle(this.__wbg_ptr,G0(A))}finally{VB[pB++]=void 0}}forEachJointAttachedToRigidBody(A,Q){try{j.rawimpulsejointset_forEachJointAttachedToRigidBody(this.__wbg_ptr,A,G0(Q))}finally{VB[pB++]=void 0}}}var fk=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawintegrationparameters_free(A>>>0,1));class HW{static __wrap(A){A>>>=0;let Q=Object.create(HW.prototype);return Q.__wbg_ptr=A,fk.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,fk.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawintegrationparameters_free(A,0)}constructor(){let A=j.rawintegrationparameters_new();return this.__wbg_ptr=A>>>0,fk.register(this,this.__wbg_ptr,this),this}get dt(){return j.rawintegrationparameters_dt(this.__wbg_ptr)}get contact_erp(){return j.rawintegrationparameters_contact_erp(this.__wbg_ptr)}get normalizedAllowedLinearError(){return j.rawintegrationparameters_normalizedAllowedLinearError(this.__wbg_ptr)}get normalizedPredictionDistance(){return j.rawintegrationparameters_normalizedPredictionDistance(this.__wbg_ptr)}get numSolverIterations(){return j.rawintegrationparameters_numSolverIterations(this.__wbg_ptr)>>>0}get numInternalPgsIterations(){return j.rawdynamicraycastvehiclecontroller_index_up_axis(this.__wbg_ptr)>>>0}get minIslandSize(){return j.rawintegrationparameters_minIslandSize(this.__wbg_ptr)>>>0}get maxCcdSubsteps(){return j.rawintegrationparameters_maxCcdSubsteps(this.__wbg_ptr)>>>0}get lengthUnit(){return j.rawcontactforceevent_total_force_magnitude(this.__wbg_ptr)}set dt(A){j.rawintegrationparameters_set_dt(this.__wbg_ptr,A)}set contact_natural_frequency(A){j.rawintegrationparameters_set_contact_natural_frequency(this.__wbg_ptr,A)}set normalizedAllowedLinearError(A){j.rawintegrationparameters_set_normalizedAllowedLinearError(this.__wbg_ptr,A)}set normalizedPredictionDistance(A){j.rawintegrationparameters_set_normalizedPredictionDistance(this.__wbg_ptr,A)}set numSolverIterations(A){j.rawintegrationparameters_set_numSolverIterations(this.__wbg_ptr,A)}set numInternalPgsIterations(A){j.rawdynamicraycastvehiclecontroller_set_index_up_axis(this.__wbg_ptr,A)}set minIslandSize(A){j.rawintegrationparameters_set_minIslandSize(this.__wbg_ptr,A)}set maxCcdSubsteps(A){j.rawintegrationparameters_set_maxCcdSubsteps(this.__wbg_ptr,A)}set lengthUnit(A){j.rawintegrationparameters_set_lengthUnit(this.__wbg_ptr,A)}}var bk=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawislandmanager_free(A>>>0,1));class f6{static __wrap(A){A>>>=0;let Q=Object.create(f6.prototype);return Q.__wbg_ptr=A,bk.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,bk.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawislandmanager_free(A,0)}constructor(){let A=j.rawislandmanager_new();return this.__wbg_ptr=A>>>0,bk.register(this,this.__wbg_ptr,this),this}forEachActiveRigidBodyHandle(A){try{j.rawislandmanager_forEachActiveRigidBodyHandle(this.__wbg_ptr,G0(A))}finally{VB[pB++]=void 0}}}var Ct=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawkinematiccharactercontroller_free(A>>>0,1));class Rt{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Ct.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawkinematiccharactercontroller_free(A,0)}constructor(A){let Q=j.rawkinematiccharactercontroller_new(A);return this.__wbg_ptr=Q>>>0,Ct.register(this,this.__wbg_ptr,this),this}up(){let A=j.rawcharactercollision_translationDeltaApplied(this.__wbg_ptr);return r.__wrap(A)}setUp(A){c(A,r),j.rawkinematiccharactercontroller_setUp(this.__wbg_ptr,A.__wbg_ptr)}normalNudgeFactor(){return j.rawkinematiccharactercontroller_normalNudgeFactor(this.__wbg_ptr)}setNormalNudgeFactor(A){j.rawkinematiccharactercontroller_setNormalNudgeFactor(this.__wbg_ptr,A)}offset(){return j.rawkinematiccharactercontroller_offset(this.__wbg_ptr)}setOffset(A){j.rawkinematiccharactercontroller_setOffset(this.__wbg_ptr,A)}slideEnabled(){return j.rawkinematiccharactercontroller_slideEnabled(this.__wbg_ptr)!==0}setSlideEnabled(A){j.rawkinematiccharactercontroller_setSlideEnabled(this.__wbg_ptr,A)}autostepMaxHeight(){let A=j.rawkinematiccharactercontroller_autostepMaxHeight(this.__wbg_ptr);return A===4294967297?void 0:A}autostepMinWidth(){let A=j.rawkinematiccharactercontroller_autostepMinWidth(this.__wbg_ptr);return A===4294967297?void 0:A}autostepIncludesDynamicBodies(){let A=j.rawkinematiccharactercontroller_autostepIncludesDynamicBodies(this.__wbg_ptr);return A===16777215?void 0:A!==0}autostepEnabled(){return j.rawkinematiccharactercontroller_autostepEnabled(this.__wbg_ptr)!==0}enableAutostep(A,Q,B){j.rawkinematiccharactercontroller_enableAutostep(this.__wbg_ptr,A,Q,B)}disableAutostep(){j.rawkinematiccharactercontroller_disableAutostep(this.__wbg_ptr)}maxSlopeClimbAngle(){return j.rawkinematiccharactercontroller_maxSlopeClimbAngle(this.__wbg_ptr)}setMaxSlopeClimbAngle(A){j.rawkinematiccharactercontroller_setMaxSlopeClimbAngle(this.__wbg_ptr,A)}minSlopeSlideAngle(){return j.rawkinematiccharactercontroller_minSlopeSlideAngle(this.__wbg_ptr)}setMinSlopeSlideAngle(A){j.rawkinematiccharactercontroller_setMinSlopeSlideAngle(this.__wbg_ptr,A)}snapToGroundDistance(){let A=j.rawkinematiccharactercontroller_snapToGroundDistance(this.__wbg_ptr);return A===4294967297?void 0:A}enableSnapToGround(A){j.rawkinematiccharactercontroller_enableSnapToGround(this.__wbg_ptr,A)}disableSnapToGround(){j.rawkinematiccharactercontroller_disableSnapToGround(this.__wbg_ptr)}snapToGroundEnabled(){return j.rawkinematiccharactercontroller_snapToGroundEnabled(this.__wbg_ptr)!==0}computeColliderMovement(A,Q,B,Y,J,C,X,G,F,W,Z,U){try{c(Q,g6),c(B,IY),c(Y,J0),c(J,j0),c(X,r),j.rawkinematiccharactercontroller_computeColliderMovement(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C,X.__wbg_ptr,G,VQ(F)?4294967297:Math.fround(F),W,VQ(Z)?4294967297:Z>>>0,G0(U))}finally{VB[pB++]=void 0}}computedMovement(){let A=j.rawkinematiccharactercontroller_computedMovement(this.__wbg_ptr);return r.__wrap(A)}computedGrounded(){return j.rawkinematiccharactercontroller_computedGrounded(this.__wbg_ptr)!==0}numComputedCollisions(){return j.rawkinematiccharactercontroller_numComputedCollisions(this.__wbg_ptr)>>>0}computedCollision(A,Q){return c(Q,Q_),j.rawkinematiccharactercontroller_computedCollision(this.__wbg_ptr,A,Q.__wbg_ptr)!==0}}var mk=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawmultibodyjointset_free(A>>>0,1));class b6{static __wrap(A){A>>>=0;let Q=Object.create(b6.prototype);return Q.__wbg_ptr=A,mk.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,mk.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawmultibodyjointset_free(A,0)}jointType(A){return j.rawmultibodyjointset_jointType(this.__wbg_ptr,A)}jointFrameX1(A){let Q=j.rawmultibodyjointset_jointFrameX1(this.__wbg_ptr,A);return AB.__wrap(Q)}jointFrameX2(A){let Q=j.rawmultibodyjointset_jointFrameX2(this.__wbg_ptr,A);return AB.__wrap(Q)}jointAnchor1(A){let Q=j.rawmultibodyjointset_jointAnchor1(this.__wbg_ptr,A);return r.__wrap(Q)}jointAnchor2(A){let Q=j.rawmultibodyjointset_jointAnchor2(this.__wbg_ptr,A);return r.__wrap(Q)}jointContactsEnabled(A){return j.rawmultibodyjointset_jointContactsEnabled(this.__wbg_ptr,A)!==0}jointSetContactsEnabled(A,Q){j.rawmultibodyjointset_jointSetContactsEnabled(this.__wbg_ptr,A,Q)}jointLimitsEnabled(A,Q){return j.rawmultibodyjointset_jointLimitsEnabled(this.__wbg_ptr,A,Q)!==0}jointLimitsMin(A,Q){return j.rawmultibodyjointset_jointLimitsMin(this.__wbg_ptr,A,Q)}jointLimitsMax(A,Q){return j.rawmultibodyjointset_jointLimitsMax(this.__wbg_ptr,A,Q)}constructor(){let A=j.rawmultibodyjointset_new();return this.__wbg_ptr=A>>>0,mk.register(this,this.__wbg_ptr,this),this}createJoint(A,Q,B,Y){return c(A,gY),j.rawmultibodyjointset_createJoint(this.__wbg_ptr,A.__wbg_ptr,Q,B,Y)}remove(A,Q){j.rawmultibodyjointset_remove(this.__wbg_ptr,A,Q)}contains(A){return j.rawmultibodyjointset_contains(this.__wbg_ptr,A)!==0}forEachJointHandle(A){try{j.rawmultibodyjointset_forEachJointHandle(this.__wbg_ptr,G0(A))}finally{VB[pB++]=void 0}}forEachJointAttachedToRigidBody(A,Q){try{j.rawmultibodyjointset_forEachJointAttachedToRigidBody(this.__wbg_ptr,A,G0(Q))}finally{VB[pB++]=void 0}}}var uk=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawnarrowphase_free(A>>>0,1));class IY{static __wrap(A){A>>>=0;let Q=Object.create(IY.prototype);return Q.__wbg_ptr=A,uk.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,uk.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawnarrowphase_free(A,0)}constructor(){let A=j.rawnarrowphase_new();return this.__wbg_ptr=A>>>0,uk.register(this,this.__wbg_ptr,this),this}contact_pairs_with(A,Q){j.rawnarrowphase_contact_pairs_with(this.__wbg_ptr,A,lB(Q))}contact_pair(A,Q){let B=j.rawnarrowphase_contact_pair(this.__wbg_ptr,A,Q);return B===0?void 0:J_.__wrap(B)}intersection_pairs_with(A,Q){j.rawnarrowphase_intersection_pairs_with(this.__wbg_ptr,A,lB(Q))}intersection_pair(A,Q){return j.rawnarrowphase_intersection_pair(this.__wbg_ptr,A,Q)!==0}}var Xt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawphysicspipeline_free(A>>>0,1));class wt{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Xt.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawphysicspipeline_free(A,0)}constructor(){let A=j.rawphysicspipeline_new();return this.__wbg_ptr=A>>>0,Xt.register(this,this.__wbg_ptr,this),this}set_profiler_enabled(A){j.rawphysicspipeline_set_profiler_enabled(this.__wbg_ptr,A)}is_profiler_enabled(){return j.rawphysicspipeline_is_profiler_enabled(this.__wbg_ptr)!==0}timing_step(){return j.rawphysicspipeline_timing_step(this.__wbg_ptr)}timing_collision_detection(){return j.rawphysicspipeline_timing_collision_detection(this.__wbg_ptr)}timing_broad_phase(){return j.rawphysicspipeline_timing_broad_phase(this.__wbg_ptr)}timing_narrow_phase(){return j.rawphysicspipeline_timing_narrow_phase(this.__wbg_ptr)}timing_solver(){return j.rawphysicspipeline_timing_solver(this.__wbg_ptr)}timing_velocity_assembly(){return j.rawphysicspipeline_timing_velocity_assembly(this.__wbg_ptr)}timing_velocity_resolution(){return j.rawphysicspipeline_timing_velocity_resolution(this.__wbg_ptr)}timing_velocity_update(){return j.rawphysicspipeline_timing_velocity_update(this.__wbg_ptr)}timing_velocity_writeback(){return j.rawphysicspipeline_timing_velocity_writeback(this.__wbg_ptr)}timing_ccd(){return j.rawphysicspipeline_timing_ccd(this.__wbg_ptr)}timing_ccd_toi_computation(){return j.rawphysicspipeline_timing_ccd_toi_computation(this.__wbg_ptr)}timing_ccd_broad_phase(){return j.rawphysicspipeline_timing_ccd_broad_phase(this.__wbg_ptr)}timing_ccd_narrow_phase(){return j.rawphysicspipeline_timing_ccd_narrow_phase(this.__wbg_ptr)}timing_ccd_solver(){return j.rawphysicspipeline_timing_ccd_solver(this.__wbg_ptr)}timing_island_construction(){return j.rawphysicspipeline_timing_island_construction(this.__wbg_ptr)}timing_user_changes(){return j.rawphysicspipeline_timing_user_changes(this.__wbg_ptr)}step(A,Q,B,Y,J,C,X,G,F,W){c(A,r),c(Q,HW),c(B,f6),c(Y,g6),c(J,IY),c(C,J0),c(X,j0),c(G,x6),c(F,b6),c(W,WM),j.rawphysicspipeline_step(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C.__wbg_ptr,X.__wbg_ptr,G.__wbg_ptr,F.__wbg_ptr,W.__wbg_ptr)}stepWithEvents(A,Q,B,Y,J,C,X,G,F,W,Z,U,$,E){c(A,r),c(Q,HW),c(B,f6),c(Y,g6),c(J,IY),c(C,J0),c(X,j0),c(G,x6),c(F,b6),c(W,WM),c(Z,X_),j.rawphysicspipeline_stepWithEvents(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C.__wbg_ptr,X.__wbg_ptr,G.__wbg_ptr,F.__wbg_ptr,W.__wbg_ptr,Z.__wbg_ptr,lB(U),lB($),lB(E))}}var Gt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawpidcontroller_free(A>>>0,1));class jt{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Gt.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawpidcontroller_free(A,0)}constructor(A,Q,B,Y){let J=j.rawpidcontroller_new(A,Q,B,Y);return this.__wbg_ptr=J>>>0,Gt.register(this,this.__wbg_ptr,this),this}set_kp(A,Q){j.rawpidcontroller_set_kp(this.__wbg_ptr,A,Q)}set_ki(A,Q){j.rawpidcontroller_set_ki(this.__wbg_ptr,A,Q)}set_kd(A,Q){j.rawpidcontroller_set_kd(this.__wbg_ptr,A,Q)}set_axes_mask(A){j.rawpidcontroller_set_axes_mask(this.__wbg_ptr,A)}reset_integrals(){j.rawpidcontroller_reset_integrals(this.__wbg_ptr)}apply_linear_correction(A,Q,B,Y,J){c(Q,J0),c(Y,r),c(J,r),j.rawpidcontroller_apply_linear_correction(this.__wbg_ptr,A,Q.__wbg_ptr,B,Y.__wbg_ptr,J.__wbg_ptr)}apply_angular_correction(A,Q,B,Y,J){c(Q,J0),c(Y,AB),c(J,r),j.rawpidcontroller_apply_angular_correction(this.__wbg_ptr,A,Q.__wbg_ptr,B,Y.__wbg_ptr,J.__wbg_ptr)}linear_correction(A,Q,B,Y,J){c(Q,J0),c(Y,r),c(J,r);let C=j.rawpidcontroller_linear_correction(this.__wbg_ptr,A,Q.__wbg_ptr,B,Y.__wbg_ptr,J.__wbg_ptr);return r.__wrap(C)}angular_correction(A,Q,B,Y,J){c(Q,J0),c(Y,AB),c(J,r);let C=j.rawpidcontroller_angular_correction(this.__wbg_ptr,A,Q.__wbg_ptr,B,Y.__wbg_ptr,J.__wbg_ptr);return r.__wrap(C)}}var Ft=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawpointcolliderprojection_free(A>>>0,1));class ZM{static __wrap(A){A>>>=0;let Q=Object.create(ZM.prototype);return Q.__wbg_ptr=A,Ft.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Ft.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawpointcolliderprojection_free(A,0)}colliderHandle(){return j.rawpointcolliderprojection_colliderHandle(this.__wbg_ptr)}point(){let A=j.rawpointcolliderprojection_point(this.__wbg_ptr);return r.__wrap(A)}isInside(){return j.rawpointcolliderprojection_isInside(this.__wbg_ptr)!==0}featureType(){return j.rawpointcolliderprojection_featureType(this.__wbg_ptr)}featureId(){let A=j.rawpointcolliderprojection_featureId(this.__wbg_ptr);return A===4294967297?void 0:A}}var Wt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawpointprojection_free(A>>>0,1));class MM{static __wrap(A){A>>>=0;let Q=Object.create(MM.prototype);return Q.__wbg_ptr=A,Wt.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Wt.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawpointprojection_free(A,0)}point(){let A=j.rawpointprojection_point(this.__wbg_ptr);return r.__wrap(A)}isInside(){return j.rawpointprojection_isInside(this.__wbg_ptr)!==0}}var Zt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawraycolliderhit_free(A>>>0,1));class G_{static __wrap(A){A>>>=0;let Q=Object.create(G_.prototype);return Q.__wbg_ptr=A,Zt.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Zt.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawraycolliderhit_free(A,0)}colliderHandle(){return j.rawcharactercollision_handle(this.__wbg_ptr)}timeOfImpact(){return j.rawcollidershapecasthit_time_of_impact(this.__wbg_ptr)}}var $t=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawraycolliderintersection_free(A>>>0,1));class zM{static __wrap(A){A>>>=0;let Q=Object.create(zM.prototype);return Q.__wbg_ptr=A,$t.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,$t.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawraycolliderintersection_free(A,0)}colliderHandle(){return j.rawpointcolliderprojection_colliderHandle(this.__wbg_ptr)}normal(){let A=j.rawcollidershapecasthit_witness1(this.__wbg_ptr);return r.__wrap(A)}time_of_impact(){return j.rawcollidershapecasthit_time_of_impact(this.__wbg_ptr)}featureType(){return j.rawpointcolliderprojection_featureType(this.__wbg_ptr)}featureId(){let A=j.rawpointcolliderprojection_featureId(this.__wbg_ptr);return A===4294967297?void 0:A}}var Ut=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawrayintersection_free(A>>>0,1));class RM{static __wrap(A){A>>>=0;let Q=Object.create(RM.prototype);return Q.__wbg_ptr=A,Ut.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Ut.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawrayintersection_free(A,0)}normal(){let A=j.rawcollidershapecasthit_witness1(this.__wbg_ptr);return r.__wrap(A)}time_of_impact(){return j.rawcollidershapecasthit_time_of_impact(this.__wbg_ptr)}featureType(){return j.rawpointcolliderprojection_featureType(this.__wbg_ptr)}featureId(){let A=j.rawpointcolliderprojection_featureId(this.__wbg_ptr);return A===4294967297?void 0:A}}var dk=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawrigidbodyset_free(A>>>0,1));class J0{static __wrap(A){A>>>=0;let Q=Object.create(J0.prototype);return Q.__wbg_ptr=A,dk.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,dk.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawrigidbodyset_free(A,0)}rbTranslation(A){let Q=j.rawrigidbodyset_rbTranslation(this.__wbg_ptr,A);return r.__wrap(Q)}rbRotation(A){let Q=j.rawrigidbodyset_rbRotation(this.__wbg_ptr,A);return AB.__wrap(Q)}rbSleep(A){j.rawrigidbodyset_rbSleep(this.__wbg_ptr,A)}rbIsSleeping(A){return j.rawrigidbodyset_rbIsSleeping(this.__wbg_ptr,A)!==0}rbIsMoving(A){return j.rawrigidbodyset_rbIsMoving(this.__wbg_ptr,A)!==0}rbNextTranslation(A){let Q=j.rawrigidbodyset_rbNextTranslation(this.__wbg_ptr,A);return r.__wrap(Q)}rbNextRotation(A){let Q=j.rawrigidbodyset_rbNextRotation(this.__wbg_ptr,A);return AB.__wrap(Q)}rbSetTranslation(A,Q,B,Y,J){j.rawrigidbodyset_rbSetTranslation(this.__wbg_ptr,A,Q,B,Y,J)}rbSetRotation(A,Q,B,Y,J,C){j.rawrigidbodyset_rbSetRotation(this.__wbg_ptr,A,Q,B,Y,J,C)}rbSetLinvel(A,Q,B){c(Q,r),j.rawrigidbodyset_rbSetLinvel(this.__wbg_ptr,A,Q.__wbg_ptr,B)}rbSetAngvel(A,Q,B){c(Q,r),j.rawrigidbodyset_rbSetAngvel(this.__wbg_ptr,A,Q.__wbg_ptr,B)}rbSetNextKinematicTranslation(A,Q,B,Y){j.rawrigidbodyset_rbSetNextKinematicTranslation(this.__wbg_ptr,A,Q,B,Y)}rbSetNextKinematicRotation(A,Q,B,Y,J){j.rawrigidbodyset_rbSetNextKinematicRotation(this.__wbg_ptr,A,Q,B,Y,J)}rbRecomputeMassPropertiesFromColliders(A,Q){c(Q,j0),j.rawrigidbodyset_rbRecomputeMassPropertiesFromColliders(this.__wbg_ptr,A,Q.__wbg_ptr)}rbSetAdditionalMass(A,Q,B){j.rawrigidbodyset_rbSetAdditionalMass(this.__wbg_ptr,A,Q,B)}rbSetAdditionalMassProperties(A,Q,B,Y,J,C){c(B,r),c(Y,r),c(J,AB),j.rawrigidbodyset_rbSetAdditionalMassProperties(this.__wbg_ptr,A,Q,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C)}rbLinvel(A){let Q=j.rawrigidbodyset_rbLinvel(this.__wbg_ptr,A);return r.__wrap(Q)}rbAngvel(A){let Q=j.rawrigidbodyset_rbAngvel(this.__wbg_ptr,A);return r.__wrap(Q)}rbVelocityAtPoint(A,Q){c(Q,r);let B=j.rawrigidbodyset_rbVelocityAtPoint(this.__wbg_ptr,A,Q.__wbg_ptr);return r.__wrap(B)}rbLockTranslations(A,Q,B){j.rawrigidbodyset_rbLockTranslations(this.__wbg_ptr,A,Q,B)}rbSetEnabledTranslations(A,Q,B,Y,J){j.rawrigidbodyset_rbSetEnabledTranslations(this.__wbg_ptr,A,Q,B,Y,J)}rbLockRotations(A,Q,B){j.rawrigidbodyset_rbLockRotations(this.__wbg_ptr,A,Q,B)}rbSetEnabledRotations(A,Q,B,Y,J){j.rawrigidbodyset_rbSetEnabledRotations(this.__wbg_ptr,A,Q,B,Y,J)}rbDominanceGroup(A){return j.rawrigidbodyset_rbDominanceGroup(this.__wbg_ptr,A)}rbSetDominanceGroup(A,Q){j.rawrigidbodyset_rbSetDominanceGroup(this.__wbg_ptr,A,Q)}rbEnableCcd(A,Q){j.rawrigidbodyset_rbEnableCcd(this.__wbg_ptr,A,Q)}rbSetSoftCcdPrediction(A,Q){j.rawrigidbodyset_rbSetSoftCcdPrediction(this.__wbg_ptr,A,Q)}rbMass(A){return j.rawrigidbodyset_rbMass(this.__wbg_ptr,A)}rbInvMass(A){return j.rawrigidbodyset_rbInvMass(this.__wbg_ptr,A)}rbEffectiveInvMass(A){let Q=j.rawrigidbodyset_rbEffectiveInvMass(this.__wbg_ptr,A);return r.__wrap(Q)}rbLocalCom(A){let Q=j.rawrigidbodyset_rbLocalCom(this.__wbg_ptr,A);return r.__wrap(Q)}rbWorldCom(A){let Q=j.rawrigidbodyset_rbWorldCom(this.__wbg_ptr,A);return r.__wrap(Q)}rbInvPrincipalInertia(A){let Q=j.rawrigidbodyset_rbInvPrincipalInertia(this.__wbg_ptr,A);return r.__wrap(Q)}rbPrincipalInertiaLocalFrame(A){let Q=j.rawrigidbodyset_rbPrincipalInertiaLocalFrame(this.__wbg_ptr,A);return AB.__wrap(Q)}rbPrincipalInertia(A){let Q=j.rawrigidbodyset_rbPrincipalInertia(this.__wbg_ptr,A);return r.__wrap(Q)}rbEffectiveWorldInvInertia(A){let Q=j.rawrigidbodyset_rbEffectiveWorldInvInertia(this.__wbg_ptr,A);return $M.__wrap(Q)}rbEffectiveAngularInertia(A){let Q=j.rawrigidbodyset_rbEffectiveAngularInertia(this.__wbg_ptr,A);return $M.__wrap(Q)}rbWakeUp(A){j.rawrigidbodyset_rbWakeUp(this.__wbg_ptr,A)}rbIsCcdEnabled(A){return j.rawrigidbodyset_rbIsCcdEnabled(this.__wbg_ptr,A)!==0}rbSoftCcdPrediction(A){return j.rawrigidbodyset_rbSoftCcdPrediction(this.__wbg_ptr,A)}rbNumColliders(A){return j.rawrigidbodyset_rbNumColliders(this.__wbg_ptr,A)>>>0}rbCollider(A,Q){return j.rawrigidbodyset_rbCollider(this.__wbg_ptr,A,Q)}rbBodyType(A){return j.rawrigidbodyset_rbBodyType(this.__wbg_ptr,A)}rbSetBodyType(A,Q,B){j.rawrigidbodyset_rbSetBodyType(this.__wbg_ptr,A,Q,B)}rbIsFixed(A){return j.rawrigidbodyset_rbIsFixed(this.__wbg_ptr,A)!==0}rbIsKinematic(A){return j.rawrigidbodyset_rbIsKinematic(this.__wbg_ptr,A)!==0}rbIsDynamic(A){return j.rawrigidbodyset_rbIsDynamic(this.__wbg_ptr,A)!==0}rbLinearDamping(A){return j.rawrigidbodyset_rbLinearDamping(this.__wbg_ptr,A)}rbAngularDamping(A){return j.rawrigidbodyset_rbAngularDamping(this.__wbg_ptr,A)}rbSetLinearDamping(A,Q){j.rawrigidbodyset_rbSetLinearDamping(this.__wbg_ptr,A,Q)}rbSetAngularDamping(A,Q){j.rawrigidbodyset_rbSetAngularDamping(this.__wbg_ptr,A,Q)}rbSetEnabled(A,Q){j.rawrigidbodyset_rbSetEnabled(this.__wbg_ptr,A,Q)}rbIsEnabled(A){return j.rawrigidbodyset_rbIsEnabled(this.__wbg_ptr,A)!==0}rbGravityScale(A){return j.rawrigidbodyset_rbGravityScale(this.__wbg_ptr,A)}rbSetGravityScale(A,Q,B){j.rawrigidbodyset_rbSetGravityScale(this.__wbg_ptr,A,Q,B)}rbResetForces(A,Q){j.rawrigidbodyset_rbResetForces(this.__wbg_ptr,A,Q)}rbResetTorques(A,Q){j.rawrigidbodyset_rbResetTorques(this.__wbg_ptr,A,Q)}rbAddForce(A,Q,B){c(Q,r),j.rawrigidbodyset_rbAddForce(this.__wbg_ptr,A,Q.__wbg_ptr,B)}rbApplyImpulse(A,Q,B){c(Q,r),j.rawrigidbodyset_rbApplyImpulse(this.__wbg_ptr,A,Q.__wbg_ptr,B)}rbAddTorque(A,Q,B){c(Q,r),j.rawrigidbodyset_rbAddTorque(this.__wbg_ptr,A,Q.__wbg_ptr,B)}rbApplyTorqueImpulse(A,Q,B){c(Q,r),j.rawrigidbodyset_rbApplyTorqueImpulse(this.__wbg_ptr,A,Q.__wbg_ptr,B)}rbAddForceAtPoint(A,Q,B,Y){c(Q,r),c(B,r),j.rawrigidbodyset_rbAddForceAtPoint(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y)}rbApplyImpulseAtPoint(A,Q,B,Y){c(Q,r),c(B,r),j.rawrigidbodyset_rbApplyImpulseAtPoint(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y)}rbAdditionalSolverIterations(A){return j.rawrigidbodyset_rbAdditionalSolverIterations(this.__wbg_ptr,A)>>>0}rbSetAdditionalSolverIterations(A,Q){j.rawrigidbodyset_rbSetAdditionalSolverIterations(this.__wbg_ptr,A,Q)}rbUserData(A){return j.rawrigidbodyset_rbUserData(this.__wbg_ptr,A)>>>0}rbSetUserData(A,Q){j.rawrigidbodyset_rbSetUserData(this.__wbg_ptr,A,Q)}rbUserForce(A){let Q=j.rawrigidbodyset_rbUserForce(this.__wbg_ptr,A);return r.__wrap(Q)}rbUserTorque(A){let Q=j.rawrigidbodyset_rbUserTorque(this.__wbg_ptr,A);return r.__wrap(Q)}constructor(){let A=j.rawrigidbodyset_new();return this.__wbg_ptr=A>>>0,dk.register(this,this.__wbg_ptr,this),this}createRigidBody(A,Q,B,Y,J,C,X,G,F,W,Z,U,$,E,K,I,V,H,D,L,z,M,N,q,w,P){return c(Q,r),c(B,AB),c(X,r),c(G,r),c(F,r),c(W,r),c(Z,AB),j.rawrigidbodyset_createRigidBody(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y,J,C,X.__wbg_ptr,G.__wbg_ptr,F.__wbg_ptr,W.__wbg_ptr,Z.__wbg_ptr,U,$,E,K,I,V,H,D,L,z,M,N,q,w,P)}remove(A,Q,B,Y,J){c(Q,f6),c(B,j0),c(Y,x6),c(J,b6),j.rawrigidbodyset_remove(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr)}len(){return j.rawrigidbodyset_len(this.__wbg_ptr)>>>0}contains(A){return j.rawrigidbodyset_contains(this.__wbg_ptr,A)!==0}forEachRigidBodyHandle(A){try{j.rawrigidbodyset_forEachRigidBodyHandle(this.__wbg_ptr,G0(A))}finally{VB[pB++]=void 0}}propagateModifiedBodyPositionsToColliders(A){c(A,j0),j.rawrigidbodyset_propagateModifiedBodyPositionsToColliders(this.__wbg_ptr,A.__wbg_ptr)}}var ck=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawrotation_free(A>>>0,1));class AB{static __wrap(A){A>>>=0;let Q=Object.create(AB.prototype);return Q.__wbg_ptr=A,ck.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,ck.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawrotation_free(A,0)}constructor(A,Q,B,Y){let J=j.rawrotation_new(A,Q,B,Y);return this.__wbg_ptr=J>>>0,ck.register(this,this.__wbg_ptr,this),this}static identity(){let A=j.rawrotation_identity();return AB.__wrap(A)}get x(){return j.rawintegrationparameters_dt(this.__wbg_ptr)}get y(){return j.rawkinematiccharactercontroller_offset(this.__wbg_ptr)}get z(){return j.rawcollidershapecasthit_time_of_impact(this.__wbg_ptr)}get w(){return j.rawrotation_w(this.__wbg_ptr)}}var Et=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawsdpmatrix3_free(A>>>0,1));class $M{static __wrap(A){A>>>=0;let Q=Object.create($M.prototype);return Q.__wbg_ptr=A,Et.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Et.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawsdpmatrix3_free(A,0)}elements(){return xV(j.rawsdpmatrix3_elements(this.__wbg_ptr))}}var Kt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawserializationpipeline_free(A>>>0,1));class Ot{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Kt.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawserializationpipeline_free(A,0)}constructor(){let A=j.rawccdsolver_new();return this.__wbg_ptr=A>>>0,Kt.register(this,this.__wbg_ptr,this),this}serializeAll(A,Q,B,Y,J,C,X,G,F){return c(A,r),c(Q,HW),c(B,f6),c(Y,g6),c(J,IY),c(C,J0),c(X,j0),c(G,x6),c(F,b6),xV(j.rawserializationpipeline_serializeAll(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C.__wbg_ptr,X.__wbg_ptr,G.__wbg_ptr,F.__wbg_ptr))}deserializeAll(A){let Q=j.rawserializationpipeline_deserializeAll(this.__wbg_ptr,lB(A));return Q===0?void 0:C_.__wrap(Q)}}var Vt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawshape_free(A>>>0,1));class UQ{static __wrap(A){A>>>=0;let Q=Object.create(UQ.prototype);return Q.__wbg_ptr=A,Vt.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Vt.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawshape_free(A,0)}static cuboid(A,Q,B){let Y=j.rawshape_cuboid(A,Q,B);return UQ.__wrap(Y)}static roundCuboid(A,Q,B,Y){let J=j.rawshape_roundCuboid(A,Q,B,Y);return UQ.__wrap(J)}static ball(A){let Q=j.rawshape_ball(A);return UQ.__wrap(Q)}static halfspace(A){c(A,r);let Q=j.rawshape_halfspace(A.__wbg_ptr);return UQ.__wrap(Q)}static capsule(A,Q){let B=j.rawshape_capsule(A,Q);return UQ.__wrap(B)}static cylinder(A,Q){let B=j.rawshape_cylinder(A,Q);return UQ.__wrap(B)}static roundCylinder(A,Q,B){let Y=j.rawshape_roundCylinder(A,Q,B);return UQ.__wrap(Y)}static cone(A,Q){let B=j.rawshape_cone(A,Q);return UQ.__wrap(B)}static roundCone(A,Q,B){let Y=j.rawshape_roundCone(A,Q,B);return UQ.__wrap(Y)}static voxels(A,Q){c(A,r);let B=SV(Q,j.__wbindgen_export_2),Y=fJ,J=j.rawshape_voxels(A.__wbg_ptr,B,Y);return UQ.__wrap(J)}static voxelsFromPoints(A,Q){c(A,r);let B=bG(Q,j.__wbindgen_export_2),Y=fJ,J=j.rawshape_voxelsFromPoints(A.__wbg_ptr,B,Y);return UQ.__wrap(J)}static polyline(A,Q){let B=bG(A,j.__wbindgen_export_2),Y=fJ,J=SV(Q,j.__wbindgen_export_2),C=fJ,X=j.rawshape_polyline(B,Y,J,C);return UQ.__wrap(X)}static trimesh(A,Q,B){let Y=bG(A,j.__wbindgen_export_2),J=fJ,C=SV(Q,j.__wbindgen_export_2),X=fJ,G=j.rawshape_trimesh(Y,J,C,X,B);return G===0?void 0:UQ.__wrap(G)}static heightfield(A,Q,B,Y,J){let C=bG(B,j.__wbindgen_export_2),X=fJ;c(Y,r);let G=j.rawshape_heightfield(A,Q,C,X,Y.__wbg_ptr,J);return UQ.__wrap(G)}static segment(A,Q){c(A,r),c(Q,r);let B=j.rawshape_segment(A.__wbg_ptr,Q.__wbg_ptr);return UQ.__wrap(B)}static triangle(A,Q,B){c(A,r),c(Q,r),c(B,r);let Y=j.rawshape_triangle(A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr);return UQ.__wrap(Y)}static roundTriangle(A,Q,B,Y){c(A,r),c(Q,r),c(B,r);let J=j.rawshape_roundTriangle(A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y);return UQ.__wrap(J)}static convexHull(A){let Q=bG(A,j.__wbindgen_export_2),B=fJ,Y=j.rawshape_convexHull(Q,B);return Y===0?void 0:UQ.__wrap(Y)}static roundConvexHull(A,Q){let B=bG(A,j.__wbindgen_export_2),Y=fJ,J=j.rawshape_roundConvexHull(B,Y,Q);return J===0?void 0:UQ.__wrap(J)}static convexMesh(A,Q){let B=bG(A,j.__wbindgen_export_2),Y=fJ,J=SV(Q,j.__wbindgen_export_2),C=fJ,X=j.rawshape_convexMesh(B,Y,J,C);return X===0?void 0:UQ.__wrap(X)}static roundConvexMesh(A,Q,B){let Y=bG(A,j.__wbindgen_export_2),J=fJ,C=SV(Q,j.__wbindgen_export_2),X=fJ,G=j.rawshape_roundConvexMesh(Y,J,C,X,B);return G===0?void 0:UQ.__wrap(G)}castShape(A,Q,B,Y,J,C,X,G,F,W){c(A,r),c(Q,AB),c(B,r),c(Y,UQ),c(J,r),c(C,AB),c(X,r);let Z=j.rawshape_castShape(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C.__wbg_ptr,X.__wbg_ptr,G,F,W);return Z===0?void 0:wM.__wrap(Z)}intersectsShape(A,Q,B,Y,J){return c(A,r),c(Q,AB),c(B,UQ),c(Y,r),c(J,AB),j.rawshape_intersectsShape(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr)!==0}contactShape(A,Q,B,Y,J,C){c(A,r),c(Q,AB),c(B,UQ),c(Y,r),c(J,AB);let X=j.rawshape_contactShape(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C);return X===0?void 0:fV.__wrap(X)}containsPoint(A,Q,B){return c(A,r),c(Q,AB),c(B,r),j.rawshape_containsPoint(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr)!==0}projectPoint(A,Q,B,Y){c(A,r),c(Q,AB),c(B,r);let J=j.rawshape_projectPoint(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y);return MM.__wrap(J)}intersectsRay(A,Q,B,Y,J){return c(A,r),c(Q,AB),c(B,r),c(Y,r),j.rawshape_intersectsRay(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J)!==0}castRay(A,Q,B,Y,J,C){return c(A,r),c(Q,AB),c(B,r),c(Y,r),j.rawshape_castRay(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J,C)}castRayAndGetNormal(A,Q,B,Y,J,C){c(A,r),c(Q,AB),c(B,r),c(Y,r);let X=j.rawshape_castRayAndGetNormal(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J,C);return X===0?void 0:RM.__wrap(X)}}var It=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawshapecasthit_free(A>>>0,1));class wM{static __wrap(A){A>>>=0;let Q=Object.create(wM.prototype);return Q.__wbg_ptr=A,It.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,It.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawshapecasthit_free(A,0)}time_of_impact(){return j.rawintegrationparameters_dt(this.__wbg_ptr)}witness1(){let A=j.rawshapecasthit_witness1(this.__wbg_ptr);return r.__wrap(A)}witness2(){let A=j.rawcontactforceevent_total_force(this.__wbg_ptr);return r.__wrap(A)}normal1(){let A=j.rawshapecasthit_normal1(this.__wbg_ptr);return r.__wrap(A)}normal2(){let A=j.rawshapecasthit_normal2(this.__wbg_ptr);return r.__wrap(A)}}var Ht=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawshapecontact_free(A>>>0,1));class fV{static __wrap(A){A>>>=0;let Q=Object.create(fV.prototype);return Q.__wbg_ptr=A,Ht.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Ht.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawshapecontact_free(A,0)}distance(){return j.rawkinematiccharactercontroller_maxSlopeClimbAngle(this.__wbg_ptr)}point1(){let A=j.rawpointprojection_point(this.__wbg_ptr);return r.__wrap(A)}point2(){let A=j.rawcollidershapecasthit_witness1(this.__wbg_ptr);return r.__wrap(A)}normal1(){let A=j.rawcollidershapecasthit_witness2(this.__wbg_ptr);return r.__wrap(A)}normal2(){let A=j.rawcharactercollision_translationDeltaApplied(this.__wbg_ptr);return r.__wrap(A)}}var lk=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawvector_free(A>>>0,1));class r{static __wrap(A){A>>>=0;let Q=Object.create(r.prototype);return Q.__wbg_ptr=A,lk.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,lk.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawvector_free(A,0)}static zero(){let A=j.rawvector_zero();return r.__wrap(A)}constructor(A,Q,B){let Y=j.rawvector_new(A,Q,B);return this.__wbg_ptr=Y>>>0,lk.register(this,this.__wbg_ptr,this),this}get x(){return j.rawintegrationparameters_dt(this.__wbg_ptr)}set x(A){j.rawintegrationparameters_set_dt(this.__wbg_ptr,A)}get y(){return j.rawkinematiccharactercontroller_offset(this.__wbg_ptr)}set y(A){j.rawvector_set_y(this.__wbg_ptr,A)}get z(){return j.rawcollidershapecasthit_time_of_impact(this.__wbg_ptr)}set z(A){j.rawvector_set_z(this.__wbg_ptr,A)}xyz(){let A=j.rawvector_xyz(this.__wbg_ptr);return r.__wrap(A)}yxz(){let A=j.rawvector_yxz(this.__wbg_ptr);return r.__wrap(A)}zxy(){let A=j.rawvector_zxy(this.__wbg_ptr);return r.__wrap(A)}xzy(){let A=j.rawvector_xzy(this.__wbg_ptr);return r.__wrap(A)}yzx(){let A=j.rawvector_yzx(this.__wbg_ptr);return r.__wrap(A)}zyx(){let A=j.rawvector_zyx(this.__wbg_ptr);return r.__wrap(A)}}async function Pt(A){if(j!==void 0)return j;A!==void 0&&(Object.getPrototypeOf(A)===Object.prototype?{module_or_path:A}=A:console.warn("using deprecated parameters for the initialization function; pass a single object instead")),A===void 0&&(A=new URL("rapier_wasm3d_bg.wasm",""));let Q=function(){let J={wbg:{}};return J.wbg.__wbg_bind_c8359b1cba058168=function(C,X,G,F){return lB($B(C).bind($B(X),$B(G),$B(F)))},J.wbg.__wbg_buffer_609cc3eee51ed158=function(C){return lB($B(C).buffer)},J.wbg.__wbg_call_672a4d21634d4a24=function(){return FM(function(C,X){return lB($B(C).call($B(X)))},arguments)},J.wbg.__wbg_call_7cccdd69e0791ae2=function(){return FM(function(C,X,G){return lB($B(C).call($B(X),$B(G)))},arguments)},J.wbg.__wbg_call_833bed5770ea2041=function(){return FM(function(C,X,G,F){return lB($B(C).call($B(X),$B(G),$B(F)))},arguments)},J.wbg.__wbg_call_b8adc8b1d0a0d8eb=function(){return FM(function(C,X,G,F,W){return lB($B(C).call($B(X),$B(G),$B(F),$B(W)))},arguments)},J.wbg.__wbg_length_3b4f022188ae8db6=function(C){return $B(C).length},J.wbg.__wbg_length_a446193dc22c12f8=function(C){return $B(C).length},J.wbg.__wbg_new_a12002a7f91c75be=function(C){return lB(new Uint8Array($B(C)))},J.wbg.__wbg_newnoargs_105ed471475aaf50=function(C,X){return lB(Function(pk(C,X)))},J.wbg.__wbg_newwithbyteoffsetandlength_d97e637ebe145a9a=function(C,X,G){return lB(new Uint8Array($B(C),X>>>0,G>>>0))},J.wbg.__wbg_newwithbyteoffsetandlength_e6b7e69acd4c7354=function(C,X,G){return lB(new Float32Array($B(C),X>>>0,G>>>0))},J.wbg.__wbg_newwithlength_5a5efe313cfd59f1=function(C){return lB(new Float32Array(C>>>0))},J.wbg.__wbg_now_2c95c9de01293173=function(C){return $B(C).now()},J.wbg.__wbg_performance_7a3ffd0b17f663ad=function(C){return lB($B(C).performance)},J.wbg.__wbg_rawcontactforceevent_new=function(C){return lB(B_.__wrap(C))},J.wbg.__wbg_rawraycolliderintersection_new=function(C){return lB(zM.__wrap(C))},J.wbg.__wbg_set_10bad9bee0e9c58b=function(C,X,G){$B(C).set($B(X),G>>>0)},J.wbg.__wbg_set_65595bdd868b3009=function(C,X,G){$B(C).set($B(X),G>>>0)},J.wbg.__wbg_static_accessor_GLOBAL_88a902d13a557d07=function(){let C=typeof global>"u"?null:global;return VQ(C)?0:lB(C)},J.wbg.__wbg_static_accessor_GLOBAL_THIS_56578be7e9f832b0=function(){let C=typeof globalThis>"u"?null:globalThis;return VQ(C)?0:lB(C)},J.wbg.__wbg_static_accessor_SELF_37c5d418e4bf5819=function(){let C=typeof self>"u"?null:self;return VQ(C)?0:lB(C)},J.wbg.__wbg_static_accessor_WINDOW_5de37043a91a9c40=function(){let C=typeof window>"u"?null:window;return VQ(C)?0:lB(C)},J.wbg.__wbindgen_boolean_get=function(C){let X=$B(C);return typeof X=="boolean"?X?1:0:2},J.wbg.__wbindgen_is_function=function(C){return typeof $B(C)=="function"},J.wbg.__wbindgen_is_undefined=function(C){return $B(C)===void 0},J.wbg.__wbindgen_memory=function(){return lB(j.memory)},J.wbg.__wbindgen_number_get=function(C,X){let G=$B(X),F=typeof G=="number"?G:void 0;VY().setFloat64(C+8,VQ(F)?0:F,!0),VY().setInt32(C+0,!VQ(F),!0)},J.wbg.__wbindgen_number_new=function(C){return lB(C)},J.wbg.__wbindgen_object_clone_ref=function(C){return lB($B(C))},J.wbg.__wbindgen_object_drop_ref=function(C){xV(C)},J.wbg.__wbindgen_throw=function(C,X){throw Error(pk(C,X))},J}();(typeof A=="string"||typeof Request=="function"&&A instanceof Request||typeof URL=="function"&&A instanceof URL)&&(A=fetch(A));let{instance:B,module:Y}=await async function(J,C){if(typeof Response=="function"&&J instanceof Response){if(typeof WebAssembly.instantiateStreaming=="function")try{return await WebAssembly.instantiateStreaming(J,C)}catch(G){if(J.headers.get("Content-Type")=="application/wasm")throw G;console.warn("`WebAssembly.instantiateStreaming` failed because your server does not serve Wasm with `application/wasm` MIME type. Falling back to `WebAssembly.instantiate` which is slower. Original error:\n",G)}let X=await J.arrayBuffer();return await WebAssembly.instantiate(X,C)}{let X=await WebAssembly.instantiate(J,C);return X instanceof WebAssembly.Instance?{instance:X,module:J}:X}}(await A,Q);return function(J,C){return j=J.exports,Pt.__wbindgen_wasm_module=C,VW=null,vV=null,_V=null,yV=null,kV=null,j}(B,Y)}class F_{constructor(A,Q,B){this.x=A,this.y=Q,this.z=B}}class a{static new(A,Q,B){return new F_(A,Q,B)}static intoRaw(A){return new r(A.x,A.y,A.z)}static zeros(){return a.new(0,0,0)}static fromRaw(A){if(!A)return null;let Q=a.new(A.x,A.y,A.z);return A.free(),Q}static copy(A,Q){A.x=Q.x,A.y=Q.y,A.z=Q.z}}class UM{constructor(A,Q,B,Y){this.x=A,this.y=Q,this.z=B,this.w=Y}}class gQ{static identity(){return new UM(0,0,0,1)}static fromRaw(A){if(!A)return null;let Q=new UM(A.x,A.y,A.z,A.w);return A.free(),Q}static intoRaw(A){return new AB(A.x,A.y,A.z,A.w)}static copy(A,Q){A.x=Q.x,A.y=Q.y,A.z=Q.z,A.w=Q.w}}class W_{constructor(A){this.elements=A}get m11(){return this.elements[0]}get m12(){return this.elements[1]}get m21(){return this.m12}get m13(){return this.elements[2]}get m31(){return this.m13}get m22(){return this.elements[3]}get m23(){return this.elements[4]}get m32(){return this.m23}get m33(){return this.elements[5]}}class EM{static fromRaw(A){let Q=new W_(A.elements());return A.free(),Q}}var FC,oY,ik,nk,bV,Z4,AY,sk,rk,ak,KM,VM,ok,tk,IM,IW;(function(A){A[A.Dynamic=0]="Dynamic",A[A.Fixed=1]="Fixed",A[A.KinematicPositionBased=2]="KinematicPositionBased",A[A.KinematicVelocityBased=3]="KinematicVelocityBased"})(FC||(FC={}));class HM{constructor(A,Q,B){this.rawSet=A,this.colliderSet=Q,this.handle=B}finalizeDeserialization(A){this.colliderSet=A}isValid(){return this.rawSet.contains(this.handle)}lockTranslations(A,Q){return this.rawSet.rbLockTranslations(this.handle,A,Q)}lockRotations(A,Q){return this.rawSet.rbLockRotations(this.handle,A,Q)}setEnabledTranslations(A,Q,B,Y){return this.rawSet.rbSetEnabledTranslations(this.handle,A,Q,B,Y)}restrictTranslations(A,Q,B,Y){this.setEnabledTranslations(A,Q,B,Y)}setEnabledRotations(A,Q,B,Y){return this.rawSet.rbSetEnabledRotations(this.handle,A,Q,B,Y)}restrictRotations(A,Q,B,Y){this.setEnabledRotations(A,Q,B,Y)}dominanceGroup(){return this.rawSet.rbDominanceGroup(this.handle)}setDominanceGroup(A){this.rawSet.rbSetDominanceGroup(this.handle,A)}additionalSolverIterations(){return this.rawSet.rbAdditionalSolverIterations(this.handle)}setAdditionalSolverIterations(A){this.rawSet.rbSetAdditionalSolverIterations(this.handle,A)}enableCcd(A){this.rawSet.rbEnableCcd(this.handle,A)}setSoftCcdPrediction(A){this.rawSet.rbSetSoftCcdPrediction(this.handle,A)}softCcdPrediction(){return this.rawSet.rbSoftCcdPrediction(this.handle)}translation(){let A=this.rawSet.rbTranslation(this.handle);return a.fromRaw(A)}rotation(){let A=this.rawSet.rbRotation(this.handle);return gQ.fromRaw(A)}nextTranslation(){let A=this.rawSet.rbNextTranslation(this.handle);return a.fromRaw(A)}nextRotation(){let A=this.rawSet.rbNextRotation(this.handle);return gQ.fromRaw(A)}setTranslation(A,Q){this.rawSet.rbSetTranslation(this.handle,A.x,A.y,A.z,Q)}setLinvel(A,Q){let B=a.intoRaw(A);this.rawSet.rbSetLinvel(this.handle,B,Q),B.free()}gravityScale(){return this.rawSet.rbGravityScale(this.handle)}setGravityScale(A,Q){this.rawSet.rbSetGravityScale(this.handle,A,Q)}setRotation(A,Q){this.rawSet.rbSetRotation(this.handle,A.x,A.y,A.z,A.w,Q)}setAngvel(A,Q){let B=a.intoRaw(A);this.rawSet.rbSetAngvel(this.handle,B,Q),B.free()}setNextKinematicTranslation(A){this.rawSet.rbSetNextKinematicTranslation(this.handle,A.x,A.y,A.z)}setNextKinematicRotation(A){this.rawSet.rbSetNextKinematicRotation(this.handle,A.x,A.y,A.z,A.w)}linvel(){return a.fromRaw(this.rawSet.rbLinvel(this.handle))}velocityAtPoint(A){let Q=a.intoRaw(A),B=a.fromRaw(this.rawSet.rbVelocityAtPoint(this.handle,Q));return Q.free(),B}angvel(){return a.fromRaw(this.rawSet.rbAngvel(this.handle))}mass(){return this.rawSet.rbMass(this.handle)}effectiveInvMass(){return a.fromRaw(this.rawSet.rbEffectiveInvMass(this.handle))}invMass(){return this.rawSet.rbInvMass(this.handle)}localCom(){return a.fromRaw(this.rawSet.rbLocalCom(this.handle))}worldCom(){return a.fromRaw(this.rawSet.rbWorldCom(this.handle))}invPrincipalInertia(){return a.fromRaw(this.rawSet.rbInvPrincipalInertia(this.handle))}principalInertia(){return a.fromRaw(this.rawSet.rbPrincipalInertia(this.handle))}principalInertiaLocalFrame(){return gQ.fromRaw(this.rawSet.rbPrincipalInertiaLocalFrame(this.handle))}effectiveWorldInvInertia(){return EM.fromRaw(this.rawSet.rbEffectiveWorldInvInertia(this.handle))}effectiveAngularInertia(){return EM.fromRaw(this.rawSet.rbEffectiveAngularInertia(this.handle))}sleep(){this.rawSet.rbSleep(this.handle)}wakeUp(){this.rawSet.rbWakeUp(this.handle)}isCcdEnabled(){return this.rawSet.rbIsCcdEnabled(this.handle)}numColliders(){return this.rawSet.rbNumColliders(this.handle)}collider(A){return this.colliderSet.get(this.rawSet.rbCollider(this.handle,A))}setEnabled(A){this.rawSet.rbSetEnabled(this.handle,A)}isEnabled(){return this.rawSet.rbIsEnabled(this.handle)}bodyType(){return this.rawSet.rbBodyType(this.handle)}setBodyType(A,Q){return this.rawSet.rbSetBodyType(this.handle,A,Q)}isSleeping(){return this.rawSet.rbIsSleeping(this.handle)}isMoving(){return this.rawSet.rbIsMoving(this.handle)}isFixed(){return this.rawSet.rbIsFixed(this.handle)}isKinematic(){return this.rawSet.rbIsKinematic(this.handle)}isDynamic(){return this.rawSet.rbIsDynamic(this.handle)}linearDamping(){return this.rawSet.rbLinearDamping(this.handle)}angularDamping(){return this.rawSet.rbAngularDamping(this.handle)}setLinearDamping(A){this.rawSet.rbSetLinearDamping(this.handle,A)}recomputeMassPropertiesFromColliders(){this.rawSet.rbRecomputeMassPropertiesFromColliders(this.handle,this.colliderSet.raw)}setAdditionalMass(A,Q){this.rawSet.rbSetAdditionalMass(this.handle,A,Q)}setAdditionalMassProperties(A,Q,B,Y,J){let C=a.intoRaw(Q),X=a.intoRaw(B),G=gQ.intoRaw(Y);this.rawSet.rbSetAdditionalMassProperties(this.handle,A,C,X,G,J),C.free(),X.free(),G.free()}setAngularDamping(A){this.rawSet.rbSetAngularDamping(this.handle,A)}resetForces(A){this.rawSet.rbResetForces(this.handle,A)}resetTorques(A){this.rawSet.rbResetTorques(this.handle,A)}addForce(A,Q){let B=a.intoRaw(A);this.rawSet.rbAddForce(this.handle,B,Q),B.free()}applyImpulse(A,Q){let B=a.intoRaw(A);this.rawSet.rbApplyImpulse(this.handle,B,Q),B.free()}addTorque(A,Q){let B=a.intoRaw(A);this.rawSet.rbAddTorque(this.handle,B,Q),B.free()}applyTorqueImpulse(A,Q){let B=a.intoRaw(A);this.rawSet.rbApplyTorqueImpulse(this.handle,B,Q),B.free()}addForceAtPoint(A,Q,B){let Y=a.intoRaw(A),J=a.intoRaw(Q);this.rawSet.rbAddForceAtPoint(this.handle,Y,J,B),Y.free(),J.free()}applyImpulseAtPoint(A,Q,B){let Y=a.intoRaw(A),J=a.intoRaw(Q);this.rawSet.rbApplyImpulseAtPoint(this.handle,Y,J,B),Y.free(),J.free()}userForce(){return a.fromRaw(this.rawSet.rbUserForce(this.handle))}userTorque(){return a.fromRaw(this.rawSet.rbUserTorque(this.handle))}}class I1{constructor(A){this.enabled=!0,this.status=A,this.translation=a.zeros(),this.rotation=gQ.identity(),this.gravityScale=1,this.linvel=a.zeros(),this.mass=0,this.massOnly=!1,this.centerOfMass=a.zeros(),this.translationsEnabledX=!0,this.translationsEnabledY=!0,this.angvel=a.zeros(),this.principalAngularInertia=a.zeros(),this.angularInertiaLocalFrame=gQ.identity(),this.translationsEnabledZ=!0,this.rotationsEnabledX=!0,this.rotationsEnabledY=!0,this.rotationsEnabledZ=!0,this.linearDamping=0,this.angularDamping=0,this.canSleep=!0,this.sleeping=!1,this.ccdEnabled=!1,this.softCcdPrediction=0,this.dominanceGroup=0,this.additionalSolverIterations=0}static dynamic(){return new I1(FC.Dynamic)}static kinematicPositionBased(){return new I1(FC.KinematicPositionBased)}static kinematicVelocityBased(){return new I1(FC.KinematicVelocityBased)}static fixed(){return new I1(FC.Fixed)}static newDynamic(){return new I1(FC.Dynamic)}static newKinematicPositionBased(){return new I1(FC.KinematicPositionBased)}static newKinematicVelocityBased(){return new I1(FC.KinematicVelocityBased)}static newStatic(){return new I1(FC.Fixed)}setDominanceGroup(A){return this.dominanceGroup=A,this}setAdditionalSolverIterations(A){return this.additionalSolverIterations=A,this}setEnabled(A){return this.enabled=A,this}setTranslation(A,Q,B){if(typeof A!="number"||typeof Q!="number"||typeof B!="number")throw TypeError("The translation components must be numbers.");return this.translation={x:A,y:Q,z:B},this}setRotation(A){return gQ.copy(this.rotation,A),this}setGravityScale(A){return this.gravityScale=A,this}setAdditionalMass(A){return this.mass=A,this.massOnly=!0,this}setLinvel(A,Q,B){if(typeof A!="number"||typeof Q!="number"||typeof B!="number")throw TypeError("The linvel components must be numbers.");return this.linvel={x:A,y:Q,z:B},this}setAngvel(A){return a.copy(this.angvel,A),this}setAdditionalMassProperties(A,Q,B,Y){return this.mass=A,a.copy(this.centerOfMass,Q),a.copy(this.principalAngularInertia,B),gQ.copy(this.angularInertiaLocalFrame,Y),this.massOnly=!1,this}enabledTranslations(A,Q,B){return this.translationsEnabledX=A,this.translationsEnabledY=Q,this.translationsEnabledZ=B,this}restrictTranslations(A,Q,B){return this.enabledTranslations(A,Q,B)}lockTranslations(){return this.enabledTranslations(!1,!1,!1)}enabledRotations(A,Q,B){return this.rotationsEnabledX=A,this.rotationsEnabledY=Q,this.rotationsEnabledZ=B,this}restrictRotations(A,Q,B){return this.enabledRotations(A,Q,B)}lockRotations(){return this.restrictRotations(!1,!1,!1)}setLinearDamping(A){return this.linearDamping=A,this}setAngularDamping(A){return this.angularDamping=A,this}setCanSleep(A){return this.canSleep=A,this}setSleeping(A){return this.sleeping=A,this}setCcdEnabled(A){return this.ccdEnabled=A,this}setSoftCcdPrediction(A){return this.softCcdPrediction=A,this}setUserData(A){return this.userData=A,this}}class lV{constructor(){this.fconv=new Float64Array(1),this.uconv=new Uint32Array(this.fconv.buffer),this.data=[],this.size=0}set(A,Q){let B=this.index(A);for(;this.data.length<=B;)this.data.push(null);this.data[B]==null&&(this.size+=1),this.data[B]=Q}len(){return this.size}delete(A){let Q=this.index(A);QA!=null)}index(A){return this.fconv[0]=A,this.uconv[0]}}class Z_{constructor(A){this.raw=A||new J0,this.map=new lV,A&&A.forEachRigidBodyHandle((Q)=>{this.map.set(Q,new HM(A,null,Q))})}free(){this.raw&&this.raw.free(),this.raw=void 0,this.map&&this.map.clear(),this.map=void 0}finalizeDeserialization(A){this.map.forEach((Q)=>Q.finalizeDeserialization(A))}createRigidBody(A,Q){let B=a.intoRaw(Q.translation),Y=gQ.intoRaw(Q.rotation),J=a.intoRaw(Q.linvel),C=a.intoRaw(Q.centerOfMass),X=a.intoRaw(Q.angvel),G=a.intoRaw(Q.principalAngularInertia),F=gQ.intoRaw(Q.angularInertiaLocalFrame),W=this.raw.createRigidBody(Q.enabled,B,Y,Q.gravityScale,Q.mass,Q.massOnly,C,J,X,G,F,Q.translationsEnabledX,Q.translationsEnabledY,Q.translationsEnabledZ,Q.rotationsEnabledX,Q.rotationsEnabledY,Q.rotationsEnabledZ,Q.linearDamping,Q.angularDamping,Q.status,Q.canSleep,Q.sleeping,Q.softCcdPrediction,Q.ccdEnabled,Q.dominanceGroup,Q.additionalSolverIterations);B.free(),Y.free(),J.free(),C.free(),X.free(),G.free(),F.free();let Z=new HM(this.raw,A,W);return Z.userData=Q.userData,this.map.set(W,Z),Z}remove(A,Q,B,Y,J){for(let C=0;CY.unmap(C)),J.forEachJointHandleAttachedToRigidBody(A,(C)=>J.unmap(C)),this.raw.remove(A,Q.raw,B.raw,Y.raw,J.raw),this.map.delete(A)}len(){return this.map.len()}contains(A){return this.get(A)!=null}get(A){return this.map.get(A)}forEach(A){this.map.forEach(A)}forEachActiveRigidBody(A,Q){A.forEachActiveRigidBodyHandle((B)=>{Q(this.get(B))})}getAll(){return this.map.getAll()}}class $_{constructor(A){this.raw=A||new HW}free(){this.raw&&this.raw.free(),this.raw=void 0}get dt(){return this.raw.dt}get contact_erp(){return this.raw.contact_erp}get lengthUnit(){return this.raw.lengthUnit}get normalizedAllowedLinearError(){return this.raw.normalizedAllowedLinearError}get normalizedPredictionDistance(){return this.raw.normalizedPredictionDistance}get numSolverIterations(){return this.raw.numSolverIterations}get numInternalPgsIterations(){return this.raw.numInternalPgsIterations}get minIslandSize(){return this.raw.minIslandSize}get maxCcdSubsteps(){return this.raw.maxCcdSubsteps}set dt(A){this.raw.dt=A}set contact_natural_frequency(A){this.raw.contact_natural_frequency=A}set lengthUnit(A){this.raw.lengthUnit=A}set normalizedAllowedLinearError(A){this.raw.normalizedAllowedLinearError=A}set normalizedPredictionDistance(A){this.raw.normalizedPredictionDistance=A}set numSolverIterations(A){this.raw.numSolverIterations=A}set numInternalPgsIterations(A){this.raw.numInternalPgsIterations=A}set minIslandSize(A){this.raw.minIslandSize=A}set maxCcdSubsteps(A){this.raw.maxCcdSubsteps=A}}(function(A){A[A.Revolute=0]="Revolute",A[A.Fixed=1]="Fixed",A[A.Prismatic=2]="Prismatic",A[A.Rope=3]="Rope",A[A.Spring=4]="Spring",A[A.Spherical=5]="Spherical",A[A.Generic=6]="Generic"})(oY||(oY={})),function(A){A[A.AccelerationBased=0]="AccelerationBased",A[A.ForceBased=1]="ForceBased"}(ik||(ik={})),function(A){A[A.LinX=1]="LinX",A[A.LinY=2]="LinY",A[A.LinZ=4]="LinZ",A[A.AngX=8]="AngX",A[A.AngY=16]="AngY",A[A.AngZ=32]="AngZ"}(nk||(nk={}));class ZC{constructor(A,Q,B){this.rawSet=A,this.bodySet=Q,this.handle=B}static newTyped(A,Q,B){switch(A.jointType(B)){case WC.Revolute:return new I_(A,Q,B);case WC.Prismatic:return new V_(A,Q,B);case WC.Fixed:return new U_(A,Q,B);case WC.Spring:return new K_(A,Q,B);case WC.Rope:return new E_(A,Q,B);case WC.Spherical:return new D_(A,Q,B);case WC.Generic:return new H_(A,Q,B);default:return new ZC(A,Q,B)}}finalizeDeserialization(A){this.bodySet=A}isValid(){return this.rawSet.contains(this.handle)}body1(){return this.bodySet.get(this.rawSet.jointBodyHandle1(this.handle))}body2(){return this.bodySet.get(this.rawSet.jointBodyHandle2(this.handle))}type(){return this.rawSet.jointType(this.handle)}frameX1(){return gQ.fromRaw(this.rawSet.jointFrameX1(this.handle))}frameX2(){return gQ.fromRaw(this.rawSet.jointFrameX2(this.handle))}anchor1(){return a.fromRaw(this.rawSet.jointAnchor1(this.handle))}anchor2(){return a.fromRaw(this.rawSet.jointAnchor2(this.handle))}setAnchor1(A){let Q=a.intoRaw(A);this.rawSet.jointSetAnchor1(this.handle,Q),Q.free()}setAnchor2(A){let Q=a.intoRaw(A);this.rawSet.jointSetAnchor2(this.handle,Q),Q.free()}setContactsEnabled(A){this.rawSet.jointSetContactsEnabled(this.handle,A)}contactsEnabled(){return this.rawSet.jointContactsEnabled(this.handle)}}class jM extends ZC{limitsEnabled(){return this.rawSet.jointLimitsEnabled(this.handle,this.rawAxis())}limitsMin(){return this.rawSet.jointLimitsMin(this.handle,this.rawAxis())}limitsMax(){return this.rawSet.jointLimitsMax(this.handle,this.rawAxis())}setLimits(A,Q){this.rawSet.jointSetLimits(this.handle,this.rawAxis(),A,Q)}configureMotorModel(A){this.rawSet.jointConfigureMotorModel(this.handle,this.rawAxis(),A)}configureMotorVelocity(A,Q){this.rawSet.jointConfigureMotorVelocity(this.handle,this.rawAxis(),A,Q)}configureMotorPosition(A,Q,B){this.rawSet.jointConfigureMotorPosition(this.handle,this.rawAxis(),A,Q,B)}configureMotor(A,Q,B,Y){this.rawSet.jointConfigureMotor(this.handle,this.rawAxis(),A,Q,B,Y)}}class U_ extends ZC{}class E_ extends ZC{}class K_ extends ZC{}class V_ extends jM{rawAxis(){return LM.LinX}}class I_ extends jM{rawAxis(){return LM.AngX}}class H_ extends ZC{}class D_ extends ZC{}class h6{constructor(){}static fixed(A,Q,B,Y){let J=new h6;return J.anchor1=A,J.anchor2=B,J.frame1=Q,J.frame2=Y,J.jointType=oY.Fixed,J}static spring(A,Q,B,Y,J){let C=new h6;return C.anchor1=Y,C.anchor2=J,C.length=A,C.stiffness=Q,C.damping=B,C.jointType=oY.Spring,C}static rope(A,Q,B){let Y=new h6;return Y.anchor1=Q,Y.anchor2=B,Y.length=A,Y.jointType=oY.Rope,Y}static generic(A,Q,B,Y){let J=new h6;return J.anchor1=A,J.anchor2=Q,J.axis=B,J.axesMask=Y,J.jointType=oY.Generic,J}static spherical(A,Q){let B=new h6;return B.anchor1=A,B.anchor2=Q,B.jointType=oY.Spherical,B}static prismatic(A,Q,B){let Y=new h6;return Y.anchor1=A,Y.anchor2=Q,Y.axis=B,Y.jointType=oY.Prismatic,Y}static revolute(A,Q,B){let Y=new h6;return Y.anchor1=A,Y.anchor2=Q,Y.axis=B,Y.jointType=oY.Revolute,Y}intoRaw(){let A,Q,B=a.intoRaw(this.anchor1),Y=a.intoRaw(this.anchor2),J=!1,C=0,X=0;switch(this.jointType){case oY.Fixed:let G=gQ.intoRaw(this.frame1),F=gQ.intoRaw(this.frame2);Q=gY.fixed(B,G,Y,F),G.free(),F.free();break;case oY.Spring:Q=gY.spring(this.length,this.stiffness,this.damping,B,Y);break;case oY.Rope:Q=gY.rope(this.length,B,Y);break;case oY.Prismatic:A=a.intoRaw(this.axis),this.limitsEnabled&&(J=!0,C=this.limits[0],X=this.limits[1]),Q=gY.prismatic(B,Y,A,J,C,X),A.free();break;case oY.Generic:A=a.intoRaw(this.axis);let W=this.axesMask;Q=gY.generic(B,Y,A,W);break;case oY.Spherical:Q=gY.spherical(B,Y);break;case oY.Revolute:A=a.intoRaw(this.axis),Q=gY.revolute(B,Y,A),A.free()}return B.free(),Y.free(),Q}}class N_{constructor(A){this.raw=A||new x6,this.map=new lV,A&&A.forEachJointHandle((Q)=>{this.map.set(Q,ZC.newTyped(A,null,Q))})}free(){this.raw&&this.raw.free(),this.raw=void 0,this.map&&this.map.clear(),this.map=void 0}finalizeDeserialization(A){this.map.forEach((Q)=>Q.finalizeDeserialization(A))}createJoint(A,Q,B,Y,J){let C=Q.intoRaw(),X=this.raw.createJoint(C,B,Y,J);C.free();let G=ZC.newTyped(this.raw,A,X);return this.map.set(X,G),G}remove(A,Q){this.raw.remove(A,Q),this.unmap(A)}forEachJointHandleAttachedToRigidBody(A,Q){this.raw.forEachJointAttachedToRigidBody(A,Q)}unmap(A){this.map.delete(A)}len(){return this.map.len()}contains(A){return this.get(A)!=null}get(A){return this.map.get(A)}forEach(A){this.map.forEach(A)}getAll(){return this.map.getAll()}}class uG{constructor(A,Q){this.rawSet=A,this.handle=Q}static newTyped(A,Q){switch(A.jointType(Q)){case WC.Revolute:return new M_(A,Q);case WC.Prismatic:return new q_(A,Q);case WC.Fixed:return new L_(A,Q);case WC.Spherical:return new z_(A,Q);default:return new uG(A,Q)}}isValid(){return this.rawSet.contains(this.handle)}setContactsEnabled(A){this.rawSet.jointSetContactsEnabled(this.handle,A)}contactsEnabled(){return this.rawSet.jointContactsEnabled(this.handle)}}class OM extends uG{}class L_ extends uG{}class q_ extends OM{rawAxis(){return LM.LinX}}class M_ extends OM{rawAxis(){return LM.AngX}}class z_ extends uG{}class R_{constructor(A){this.raw=A||new b6,this.map=new lV,A&&A.forEachJointHandle((Q)=>{this.map.set(Q,uG.newTyped(this.raw,Q))})}free(){this.raw&&this.raw.free(),this.raw=void 0,this.map&&this.map.clear(),this.map=void 0}createJoint(A,Q,B,Y){let J=A.intoRaw(),C=this.raw.createJoint(J,Q,B,Y);J.free();let X=uG.newTyped(this.raw,C);return this.map.set(C,X),X}remove(A,Q){this.raw.remove(A,Q),this.map.delete(A)}unmap(A){this.map.delete(A)}len(){return this.map.len()}contains(A){return this.get(A)!=null}get(A){return this.map.get(A)}forEach(A){this.map.forEach(A)}forEachJointHandleAttachedToRigidBody(A,Q){this.raw.forEachJointAttachedToRigidBody(A,Q)}getAll(){return this.map.getAll()}}(function(A){A[A.Average=0]="Average",A[A.Min=1]="Min",A[A.Multiply=2]="Multiply",A[A.Max=3]="Max"})(bV||(bV={}));class w_{constructor(A){this.raw=A||new WM}free(){this.raw&&this.raw.free(),this.raw=void 0}}class j_{constructor(A){this.raw=A||new f6}free(){this.raw&&this.raw.free(),this.raw=void 0}forEachActiveRigidBodyHandle(A){this.raw.forEachActiveRigidBodyHandle(A)}}(function(A){A[A.Vertex=0]="Vertex",A[A.Edge=1]="Edge",A[A.Face=2]="Face",A[A.Unknown=3]="Unknown"})(Z4||(Z4={}));class Tt{constructor(A,Q){this.origin=A,this.dir=Q}pointAt(A){return{x:this.origin.x+this.dir.x*A,y:this.origin.y+this.dir.y*A,z:this.origin.z+this.dir.z*A}}}class pV{constructor(A,Q,B,Y){this.featureType=Z4.Unknown,this.featureId=void 0,this.timeOfImpact=A,this.normal=Q,Y!==void 0&&(this.featureId=Y),B!==void 0&&(this.featureType=B)}static fromRaw(A){if(!A)return null;let Q=new pV(A.time_of_impact(),a.fromRaw(A.normal()),A.featureType(),A.featureId());return A.free(),Q}}class mV{constructor(A,Q,B,Y,J){this.featureType=Z4.Unknown,this.featureId=void 0,this.collider=A,this.timeOfImpact=Q,this.normal=B,J!==void 0&&(this.featureId=J),Y!==void 0&&(this.featureType=Y)}static fromRaw(A,Q){if(!Q)return null;let B=new mV(A.get(Q.colliderHandle()),Q.time_of_impact(),a.fromRaw(Q.normal()),Q.featureType(),Q.featureId());return Q.free(),B}}class PM{constructor(A,Q){this.collider=A,this.timeOfImpact=Q}static fromRaw(A,Q){if(!Q)return null;let B=new PM(A.get(Q.colliderHandle()),Q.timeOfImpact());return Q.free(),B}}class iV{constructor(A,Q){this.point=A,this.isInside=Q}static fromRaw(A){if(!A)return null;let Q=new iV(a.fromRaw(A.point()),A.isInside());return A.free(),Q}}class uV{constructor(A,Q,B,Y,J){this.featureType=Z4.Unknown,this.featureId=void 0,this.collider=A,this.point=Q,this.isInside=B,J!==void 0&&(this.featureId=J),Y!==void 0&&(this.featureType=Y)}static fromRaw(A,Q){if(!Q)return null;let B=new uV(A.get(Q.colliderHandle()),a.fromRaw(Q.point()),Q.isInside(),Q.featureType(),Q.featureId());return Q.free(),B}}class U4{constructor(A,Q,B,Y,J){this.time_of_impact=A,this.witness1=Q,this.witness2=B,this.normal1=Y,this.normal2=J}static fromRaw(A,Q){if(!Q)return null;let B=new U4(Q.time_of_impact(),a.fromRaw(Q.witness1()),a.fromRaw(Q.witness2()),a.fromRaw(Q.normal1()),a.fromRaw(Q.normal2()));return Q.free(),B}}class nV extends U4{constructor(A,Q,B,Y,J,C){super(Q,B,Y,J,C),this.collider=A}static fromRaw(A,Q){if(!Q)return null;let B=new nV(A.get(Q.colliderHandle()),Q.time_of_impact(),a.fromRaw(Q.witness1()),a.fromRaw(Q.witness2()),a.fromRaw(Q.normal1()),a.fromRaw(Q.normal2()));return Q.free(),B}}class O_{constructor(A){this.raw=A||new g6}free(){this.raw&&this.raw.free(),this.raw=void 0}castRay(A,Q,B,Y,J,C,X,G,F,W,Z){let U=a.intoRaw(Y.origin),$=a.intoRaw(Y.dir),E=PM.fromRaw(B,this.raw.castRay(A.raw,Q.raw,B.raw,U,$,J,C,X,G,F,W,Z));return U.free(),$.free(),E}castRayAndGetNormal(A,Q,B,Y,J,C,X,G,F,W,Z){let U=a.intoRaw(Y.origin),$=a.intoRaw(Y.dir),E=mV.fromRaw(B,this.raw.castRayAndGetNormal(A.raw,Q.raw,B.raw,U,$,J,C,X,G,F,W,Z));return U.free(),$.free(),E}intersectionsWithRay(A,Q,B,Y,J,C,X,G,F,W,Z,U){let $=a.intoRaw(Y.origin),E=a.intoRaw(Y.dir);this.raw.intersectionsWithRay(A.raw,Q.raw,B.raw,$,E,J,C,(K)=>X(mV.fromRaw(B,K)),G,F,W,Z,U),$.free(),E.free()}intersectionWithShape(A,Q,B,Y,J,C,X,G,F,W,Z){let U=a.intoRaw(Y),$=gQ.intoRaw(J),E=C.intoRaw(),K=this.raw.intersectionWithShape(A.raw,Q.raw,B.raw,U,$,E,X,G,F,W,Z);return U.free(),$.free(),E.free(),K}projectPoint(A,Q,B,Y,J,C,X,G,F,W){let Z=a.intoRaw(Y),U=uV.fromRaw(B,this.raw.projectPoint(A.raw,Q.raw,B.raw,Z,J,C,X,G,F,W));return Z.free(),U}projectPointAndGetFeature(A,Q,B,Y,J,C,X,G,F){let W=a.intoRaw(Y),Z=uV.fromRaw(B,this.raw.projectPointAndGetFeature(A.raw,Q.raw,B.raw,W,J,C,X,G,F));return W.free(),Z}intersectionsWithPoint(A,Q,B,Y,J,C,X,G,F,W){let Z=a.intoRaw(Y);this.raw.intersectionsWithPoint(A.raw,Q.raw,B.raw,Z,J,C,X,G,F,W),Z.free()}castShape(A,Q,B,Y,J,C,X,G,F,W,Z,U,$,E,K){let I=a.intoRaw(Y),V=gQ.intoRaw(J),H=a.intoRaw(C),D=X.intoRaw(),L=nV.fromRaw(B,this.raw.castShape(A.raw,Q.raw,B.raw,I,V,H,D,G,F,W,Z,U,$,E,K));return I.free(),V.free(),H.free(),D.free(),L}intersectionsWithShape(A,Q,B,Y,J,C,X,G,F,W,Z,U){let $=a.intoRaw(Y),E=gQ.intoRaw(J),K=C.intoRaw();this.raw.intersectionsWithShape(A.raw,Q.raw,B.raw,$,E,K,X,G,F,W,Z,U),$.free(),E.free(),K.free()}collidersWithAabbIntersectingAabb(A,Q,B,Y,J,C){let X=a.intoRaw(Y),G=a.intoRaw(J);this.raw.collidersWithAabbIntersectingAabb(A.raw,Q.raw,B.raw,X,G,C),X.free(),G.free()}}class P_{constructor(A){this.raw=A||new IY,this.tempManifold=new T_(null)}free(){this.raw&&this.raw.free(),this.raw=void 0}contactPairsWith(A,Q){this.raw.contact_pairs_with(A,Q)}intersectionPairsWith(A,Q){this.raw.intersection_pairs_with(A,Q)}contactPair(A,Q,B){let Y=this.raw.contact_pair(A,Q);if(Y){let J=Y.collider1()!=A,C;for(C=0;CA.free()),this.pidControllers.forEach((A)=>A.free()),this.vehicleControllers.forEach((A)=>A.free()),this.integrationParameters=void 0,this.islands=void 0,this.broadPhase=void 0,this.narrowPhase=void 0,this.bodies=void 0,this.colliders=void 0,this.ccdSolver=void 0,this.impulseJoints=void 0,this.multibodyJoints=void 0,this.physicsPipeline=void 0,this.serializationPipeline=void 0,this.debugRenderPipeline=void 0,this.characterControllers=void 0,this.pidControllers=void 0,this.vehicleControllers=void 0}static fromRaw(A){return A?new lM(a.fromRaw(A.takeGravity()),A.takeIntegrationParameters(),A.takeIslandManager(),A.takeBroadPhase(),A.takeNarrowPhase(),A.takeBodies(),A.takeColliders(),A.takeImpulseJoints(),A.takeMultibodyJoints()):null}takeSnapshot(){return this.serializationPipeline.serializeAll(this.gravity,this.integrationParameters,this.islands,this.broadPhase,this.narrowPhase,this.bodies,this.colliders,this.impulseJoints,this.multibodyJoints)}static restoreSnapshot(A){return new DM().deserializeAll(A)}debugRender(A,Q){return this.debugRenderPipeline.render(this.bodies,this.colliders,this.impulseJoints,this.multibodyJoints,this.narrowPhase,A,Q),new __(this.debugRenderPipeline.vertices,this.debugRenderPipeline.colors)}step(A,Q){this.physicsPipeline.step(this.gravity,this.integrationParameters,this.islands,this.broadPhase,this.narrowPhase,this.bodies,this.colliders,this.impulseJoints,this.multibodyJoints,this.ccdSolver,A,Q)}propagateModifiedBodyPositionsToColliders(){this.bodies.raw.propagateModifiedBodyPositionsToColliders(this.colliders.raw)}get timestep(){return this.integrationParameters.dt}set timestep(A){this.integrationParameters.dt=A}get lengthUnit(){return this.integrationParameters.lengthUnit}set lengthUnit(A){this.integrationParameters.lengthUnit=A}get numSolverIterations(){return this.integrationParameters.numSolverIterations}set numSolverIterations(A){this.integrationParameters.numSolverIterations=A}get numInternalPgsIterations(){return this.integrationParameters.numInternalPgsIterations}set numInternalPgsIterations(A){this.integrationParameters.numInternalPgsIterations=A}get maxCcdSubsteps(){return this.integrationParameters.maxCcdSubsteps}set maxCcdSubsteps(A){this.integrationParameters.maxCcdSubsteps=A}createRigidBody(A){return this.bodies.createRigidBody(this.colliders,A)}createCharacterController(A){let Q=new h_(A,this.integrationParameters,this.broadPhase,this.narrowPhase,this.bodies,this.colliders);return this.characterControllers.add(Q),Q}removeCharacterController(A){this.characterControllers.delete(A),A.free()}createPidController(A,Q,B,Y){let J=new g_(this.integrationParameters,this.bodies,A,Q,B,Y);return this.pidControllers.add(J),J}removePidController(A){this.pidControllers.delete(A),A.free()}createVehicleController(A){let Q=new x_(A,this.broadPhase,this.narrowPhase,this.bodies,this.colliders);return this.vehicleControllers.add(Q),Q}removeVehicleController(A){this.vehicleControllers.delete(A),A.free()}createCollider(A,Q){let B=Q?Q.handle:void 0;return this.colliders.createCollider(this.bodies,A,B)}createImpulseJoint(A,Q,B,Y){return this.impulseJoints.createJoint(this.bodies,A,Q.handle,B.handle,Y)}createMultibodyJoint(A,Q,B,Y){return this.multibodyJoints.createJoint(A,Q.handle,B.handle,Y)}getRigidBody(A){return this.bodies.get(A)}getCollider(A){return this.colliders.get(A)}getImpulseJoint(A){return this.impulseJoints.get(A)}getMultibodyJoint(A){return this.multibodyJoints.get(A)}removeRigidBody(A){this.bodies&&this.bodies.remove(A.handle,this.islands,this.colliders,this.impulseJoints,this.multibodyJoints)}removeCollider(A,Q){this.colliders&&this.colliders.remove(A.handle,this.islands,this.bodies,Q)}removeImpulseJoint(A,Q){this.impulseJoints&&this.impulseJoints.remove(A.handle,Q)}removeMultibodyJoint(A,Q){this.impulseJoints&&this.multibodyJoints.remove(A.handle,Q)}forEachCollider(A){this.colliders.forEach(A)}forEachRigidBody(A){this.bodies.forEach(A)}forEachActiveRigidBody(A){this.bodies.forEachActiveRigidBody(this.islands,A)}castRay(A,Q,B,Y,J,C,X,G){return this.broadPhase.castRay(this.narrowPhase,this.bodies,this.colliders,A,Q,B,Y,J,C?C.handle:null,X?X.handle:null,this.colliders.castClosure(G))}castRayAndGetNormal(A,Q,B,Y,J,C,X,G){return this.broadPhase.castRayAndGetNormal(this.narrowPhase,this.bodies,this.colliders,A,Q,B,Y,J,C?C.handle:null,X?X.handle:null,this.colliders.castClosure(G))}intersectionsWithRay(A,Q,B,Y,J,C,X,G,F){this.broadPhase.intersectionsWithRay(this.narrowPhase,this.bodies,this.colliders,A,Q,B,Y,J,C,X?X.handle:null,G?G.handle:null,this.colliders.castClosure(F))}intersectionWithShape(A,Q,B,Y,J,C,X,G){let F=this.broadPhase.intersectionWithShape(this.narrowPhase,this.bodies,this.colliders,A,Q,B,Y,J,C?C.handle:null,X?X.handle:null,this.colliders.castClosure(G));return F!=null?this.colliders.get(F):null}projectPoint(A,Q,B,Y,J,C,X){return this.broadPhase.projectPoint(this.narrowPhase,this.bodies,this.colliders,A,Q,B,Y,J?J.handle:null,C?C.handle:null,this.colliders.castClosure(X))}projectPointAndGetFeature(A,Q,B,Y,J,C){return this.broadPhase.projectPointAndGetFeature(this.narrowPhase,this.bodies,this.colliders,A,Q,B,Y?Y.handle:null,J?J.handle:null,this.colliders.castClosure(C))}intersectionsWithPoint(A,Q,B,Y,J,C,X){this.broadPhase.intersectionsWithPoint(this.narrowPhase,this.bodies,this.colliders,A,this.colliders.castClosure(Q),B,Y,J?J.handle:null,C?C.handle:null,this.colliders.castClosure(X))}castShape(A,Q,B,Y,J,C,X,G,F,W,Z,U){return this.broadPhase.castShape(this.narrowPhase,this.bodies,this.colliders,A,Q,B,Y,J,C,X,G,F,W?W.handle:null,Z?Z.handle:null,this.colliders.castClosure(U))}intersectionsWithShape(A,Q,B,Y,J,C,X,G,F){this.broadPhase.intersectionsWithShape(this.narrowPhase,this.bodies,this.colliders,A,Q,B,this.colliders.castClosure(Y),J,C,X?X.handle:null,G?G.handle:null,this.colliders.castClosure(F))}collidersWithAabbIntersectingAabb(A,Q,B){this.broadPhase.collidersWithAabbIntersectingAabb(this.narrowPhase,this.bodies,this.colliders,A,Q,this.colliders.castClosure(B))}contactPairsWith(A,Q){this.narrowPhase.contactPairsWith(A.handle,this.colliders.castClosure(Q))}intersectionPairsWith(A,Q){this.narrowPhase.intersectionPairsWith(A.handle,this.colliders.castClosure(Q))}contactPair(A,Q,B){this.narrowPhase.contactPair(A.handle,Q.handle,B)}intersectionPair(A,Q){return this.narrowPhase.intersectionPair(A.handle,Q.handle)}set profilerEnabled(A){this.physicsPipeline.raw.set_profiler_enabled(A)}get profilerEnabled(){return this.physicsPipeline.raw.is_profiler_enabled()}timingStep(){return this.physicsPipeline.raw.timing_step()}timingCollisionDetection(){return this.physicsPipeline.raw.timing_collision_detection()}timingBroadPhase(){return this.physicsPipeline.raw.timing_broad_phase()}timingNarrowPhase(){return this.physicsPipeline.raw.timing_narrow_phase()}timingSolver(){return this.physicsPipeline.raw.timing_solver()}timingVelocityAssembly(){return this.physicsPipeline.raw.timing_velocity_assembly()}timingVelocityResolution(){return this.physicsPipeline.raw.timing_velocity_resolution()}timingVelocityUpdate(){return this.physicsPipeline.raw.timing_velocity_update()}timingVelocityWriteback(){return this.physicsPipeline.raw.timing_velocity_writeback()}timingCcd(){return this.physicsPipeline.raw.timing_ccd()}timingCcdToiComputation(){return this.physicsPipeline.raw.timing_ccd_toi_computation()}timingCcdBroadPhase(){return this.physicsPipeline.raw.timing_ccd_broad_phase()}timingCcdNarrowPhase(){return this.physicsPipeline.raw.timing_ccd_narrow_phase()}timingCcdSolver(){return this.physicsPipeline.raw.timing_ccd_solver()}timingIslandConstruction(){return this.physicsPipeline.raw.timing_island_construction()}timingUserChanges(){return this.physicsPipeline.raw.timing_user_changes()}}(function(A){A[A.NONE=0]="NONE",A[A.COLLISION_EVENTS=1]="COLLISION_EVENTS",A[A.CONTACT_FORCE_EVENTS=2]="CONTACT_FORCE_EVENTS"})(KM||(KM={}));class f_{free(){this.raw&&this.raw.free(),this.raw=void 0}collider1(){return this.raw.collider1()}collider2(){return this.raw.collider2()}totalForce(){return a.fromRaw(this.raw.total_force())}totalForceMagnitude(){return this.raw.total_force_magnitude()}maxForceDirection(){return a.fromRaw(this.raw.max_force_direction())}maxForceMagnitude(){return this.raw.max_force_magnitude()}}class St{constructor(A,Q){this.raw=Q||new X_(A)}free(){this.raw&&this.raw.free(),this.raw=void 0}drainCollisionEvents(A){this.raw.drainCollisionEvents(A)}drainContactForceEvents(A){let Q=new f_;this.raw.drainContactForceEvents((B)=>{Q.raw=B,A(Q),Q.free()})}clear(){this.raw.clear()}}(function(A){A[A.NONE=0]="NONE",A[A.FILTER_CONTACT_PAIRS=1]="FILTER_CONTACT_PAIRS",A[A.FILTER_INTERSECTION_PAIRS=2]="FILTER_INTERSECTION_PAIRS"})(VM||(VM={})),function(A){A[A.EMPTY=0]="EMPTY",A[A.COMPUTE_IMPULSE=1]="COMPUTE_IMPULSE"}(ok||(ok={})),function(A){A[A.EXCLUDE_FIXED=1]="EXCLUDE_FIXED",A[A.EXCLUDE_KINEMATIC=2]="EXCLUDE_KINEMATIC",A[A.EXCLUDE_DYNAMIC=4]="EXCLUDE_DYNAMIC",A[A.EXCLUDE_SENSORS=8]="EXCLUDE_SENSORS",A[A.EXCLUDE_SOLIDS=16]="EXCLUDE_SOLIDS",A[A.ONLY_DYNAMIC=3]="ONLY_DYNAMIC",A[A.ONLY_KINEMATIC=5]="ONLY_KINEMATIC",A[A.ONLY_FIXED=6]="ONLY_FIXED"}(tk||(tk={})),function(A){A[A.DYNAMIC_DYNAMIC=1]="DYNAMIC_DYNAMIC",A[A.DYNAMIC_KINEMATIC=12]="DYNAMIC_KINEMATIC",A[A.DYNAMIC_FIXED=2]="DYNAMIC_FIXED",A[A.KINEMATIC_KINEMATIC=52224]="KINEMATIC_KINEMATIC",A[A.KINEMATIC_FIXED=8704]="KINEMATIC_FIXED",A[A.FIXED_FIXED=32]="FIXED_FIXED",A[A.DEFAULT=15]="DEFAULT",A[A.ALL=60943]="ALL"}(IM||(IM={}));class NM{constructor(A,Q,B,Y){this.colliderSet=A,this.handle=Q,this._parent=B,this._shape=Y}finalizeDeserialization(A){this.handle!=null&&(this._parent=A.get(this.colliderSet.raw.coParent(this.handle)))}ensureShapeIsCached(){this._shape||(this._shape=QY.fromRaw(this.colliderSet.raw,this.handle))}get shape(){return this.ensureShapeIsCached(),this._shape}clearShapeCache(){this._shape=null}isValid(){return this.colliderSet.raw.contains(this.handle)}translation(){return a.fromRaw(this.colliderSet.raw.coTranslation(this.handle))}translationWrtParent(){return a.fromRaw(this.colliderSet.raw.coTranslationWrtParent(this.handle))}rotation(){return gQ.fromRaw(this.colliderSet.raw.coRotation(this.handle))}rotationWrtParent(){return gQ.fromRaw(this.colliderSet.raw.coRotationWrtParent(this.handle))}isSensor(){return this.colliderSet.raw.coIsSensor(this.handle)}setSensor(A){this.colliderSet.raw.coSetSensor(this.handle,A)}setShape(A){let Q=A.intoRaw();this.colliderSet.raw.coSetShape(this.handle,Q),Q.free(),this._shape=A}setEnabled(A){this.colliderSet.raw.coSetEnabled(this.handle,A)}isEnabled(){return this.colliderSet.raw.coIsEnabled(this.handle)}setRestitution(A){this.colliderSet.raw.coSetRestitution(this.handle,A)}setFriction(A){this.colliderSet.raw.coSetFriction(this.handle,A)}frictionCombineRule(){return this.colliderSet.raw.coFrictionCombineRule(this.handle)}setFrictionCombineRule(A){this.colliderSet.raw.coSetFrictionCombineRule(this.handle,A)}restitutionCombineRule(){return this.colliderSet.raw.coRestitutionCombineRule(this.handle)}setRestitutionCombineRule(A){this.colliderSet.raw.coSetRestitutionCombineRule(this.handle,A)}setCollisionGroups(A){this.colliderSet.raw.coSetCollisionGroups(this.handle,A)}setSolverGroups(A){this.colliderSet.raw.coSetSolverGroups(this.handle,A)}contactSkin(){return this.colliderSet.raw.coContactSkin(this.handle)}setContactSkin(A){return this.colliderSet.raw.coSetContactSkin(this.handle,A)}activeHooks(){return this.colliderSet.raw.coActiveHooks(this.handle)}setActiveHooks(A){this.colliderSet.raw.coSetActiveHooks(this.handle,A)}activeEvents(){return this.colliderSet.raw.coActiveEvents(this.handle)}setActiveEvents(A){this.colliderSet.raw.coSetActiveEvents(this.handle,A)}activeCollisionTypes(){return this.colliderSet.raw.coActiveCollisionTypes(this.handle)}setContactForceEventThreshold(A){return this.colliderSet.raw.coSetContactForceEventThreshold(this.handle,A)}contactForceEventThreshold(){return this.colliderSet.raw.coContactForceEventThreshold(this.handle)}setActiveCollisionTypes(A){this.colliderSet.raw.coSetActiveCollisionTypes(this.handle,A)}setDensity(A){this.colliderSet.raw.coSetDensity(this.handle,A)}setMass(A){this.colliderSet.raw.coSetMass(this.handle,A)}setMassProperties(A,Q,B,Y){let J=a.intoRaw(Q),C=a.intoRaw(B),X=gQ.intoRaw(Y);this.colliderSet.raw.coSetMassProperties(this.handle,A,J,C,X),J.free(),C.free(),X.free()}setTranslation(A){this.colliderSet.raw.coSetTranslation(this.handle,A.x,A.y,A.z)}setTranslationWrtParent(A){this.colliderSet.raw.coSetTranslationWrtParent(this.handle,A.x,A.y,A.z)}setRotation(A){this.colliderSet.raw.coSetRotation(this.handle,A.x,A.y,A.z,A.w)}setRotationWrtParent(A){this.colliderSet.raw.coSetRotationWrtParent(this.handle,A.x,A.y,A.z,A.w)}shapeType(){return this.colliderSet.raw.coShapeType(this.handle)}halfExtents(){return a.fromRaw(this.colliderSet.raw.coHalfExtents(this.handle))}setHalfExtents(A){let Q=a.intoRaw(A);this.colliderSet.raw.coSetHalfExtents(this.handle,Q)}radius(){return this.colliderSet.raw.coRadius(this.handle)}setRadius(A){this.colliderSet.raw.coSetRadius(this.handle,A)}roundRadius(){return this.colliderSet.raw.coRoundRadius(this.handle)}setRoundRadius(A){this.colliderSet.raw.coSetRoundRadius(this.handle,A)}halfHeight(){return this.colliderSet.raw.coHalfHeight(this.handle)}setHalfHeight(A){this.colliderSet.raw.coSetHalfHeight(this.handle,A)}setVoxel(A,Q,B,Y){this.colliderSet.raw.coSetVoxel(this.handle,A,Q,B,Y),this._shape=null}propagateVoxelChange(A,Q,B,Y,J,C,X){this.colliderSet.raw.coPropagateVoxelChange(this.handle,A.handle,Q,B,Y,J,C,X),this._shape=null}combineVoxelStates(A,Q,B,Y){this.colliderSet.raw.coCombineVoxelStates(this.handle,A.handle,Q,B,Y),this._shape=null}vertices(){return this.colliderSet.raw.coVertices(this.handle)}indices(){return this.colliderSet.raw.coIndices(this.handle)}heightfieldHeights(){return this.colliderSet.raw.coHeightfieldHeights(this.handle)}heightfieldScale(){let A=this.colliderSet.raw.coHeightfieldScale(this.handle);return a.fromRaw(A)}heightfieldNRows(){return this.colliderSet.raw.coHeightfieldNRows(this.handle)}heightfieldNCols(){return this.colliderSet.raw.coHeightfieldNCols(this.handle)}parent(){return this._parent}friction(){return this.colliderSet.raw.coFriction(this.handle)}restitution(){return this.colliderSet.raw.coRestitution(this.handle)}density(){return this.colliderSet.raw.coDensity(this.handle)}mass(){return this.colliderSet.raw.coMass(this.handle)}volume(){return this.colliderSet.raw.coVolume(this.handle)}collisionGroups(){return this.colliderSet.raw.coCollisionGroups(this.handle)}solverGroups(){return this.colliderSet.raw.coSolverGroups(this.handle)}containsPoint(A){let Q=a.intoRaw(A),B=this.colliderSet.raw.coContainsPoint(this.handle,Q);return Q.free(),B}projectPoint(A,Q){let B=a.intoRaw(A),Y=iV.fromRaw(this.colliderSet.raw.coProjectPoint(this.handle,B,Q));return B.free(),Y}intersectsRay(A,Q){let B=a.intoRaw(A.origin),Y=a.intoRaw(A.dir),J=this.colliderSet.raw.coIntersectsRay(this.handle,B,Y,Q);return B.free(),Y.free(),J}castShape(A,Q,B,Y,J,C,X,G){let F=a.intoRaw(A),W=a.intoRaw(B),Z=gQ.intoRaw(Y),U=a.intoRaw(J),$=Q.intoRaw(),E=U4.fromRaw(this.colliderSet,this.colliderSet.raw.coCastShape(this.handle,F,$,W,Z,U,C,X,G));return F.free(),W.free(),Z.free(),U.free(),$.free(),E}castCollider(A,Q,B,Y,J,C){let X=a.intoRaw(A),G=a.intoRaw(B),F=nV.fromRaw(this.colliderSet,this.colliderSet.raw.coCastCollider(this.handle,X,Q.handle,G,Y,J,C));return X.free(),G.free(),F}intersectsShape(A,Q,B){let Y=a.intoRaw(Q),J=gQ.intoRaw(B),C=A.intoRaw(),X=this.colliderSet.raw.coIntersectsShape(this.handle,C,Y,J);return Y.free(),J.free(),C.free(),X}contactShape(A,Q,B,Y){let J=a.intoRaw(Q),C=gQ.intoRaw(B),X=A.intoRaw(),G=$4.fromRaw(this.colliderSet.raw.coContactShape(this.handle,X,J,C,Y));return J.free(),C.free(),X.free(),G}contactCollider(A,Q){return $4.fromRaw(this.colliderSet.raw.coContactCollider(this.handle,A.handle,Q))}castRay(A,Q,B){let Y=a.intoRaw(A.origin),J=a.intoRaw(A.dir),C=this.colliderSet.raw.coCastRay(this.handle,Y,J,Q,B);return Y.free(),J.free(),C}castRayAndGetNormal(A,Q,B){let Y=a.intoRaw(A.origin),J=a.intoRaw(A.dir),C=pV.fromRaw(this.colliderSet.raw.coCastRayAndGetNormal(this.handle,Y,J,Q,B));return Y.free(),J.free(),C}}(function(A){A[A.Density=0]="Density",A[A.Mass=1]="Mass",A[A.MassProps=2]="MassProps"})(IW||(IW={}));class e0{constructor(A){this.enabled=!0,this.shape=A,this.massPropsMode=IW.Density,this.density=1,this.friction=0.5,this.restitution=0,this.rotation=gQ.identity(),this.translation=a.zeros(),this.isSensor=!1,this.collisionGroups=4294967295,this.solverGroups=4294967295,this.frictionCombineRule=bV.Average,this.restitutionCombineRule=bV.Average,this.activeCollisionTypes=IM.DEFAULT,this.activeEvents=KM.NONE,this.activeHooks=VM.NONE,this.mass=0,this.centerOfMass=a.zeros(),this.contactForceEventThreshold=0,this.contactSkin=0,this.principalAngularInertia=a.zeros(),this.angularInertiaLocalFrame=gQ.identity()}static ball(A){let Q=new TM(A);return new e0(Q)}static capsule(A,Q){let B=new _M(A,Q);return new e0(B)}static segment(A,Q){let B=new vM(A,Q);return new e0(B)}static triangle(A,Q,B){let Y=new yM(A,Q,B);return new e0(Y)}static roundTriangle(A,Q,B,Y){let J=new hM(A,Q,B,Y);return new e0(J)}static polyline(A,Q){let B=new gM(A,Q);return new e0(B)}static voxels(A,Q){let B=new xM(A,Q);return new e0(B)}static trimesh(A,Q,B){let Y=new fM(A,Q,B);return new e0(Y)}static cuboid(A,Q,B){let Y=new SM(A,Q,B);return new e0(Y)}static roundCuboid(A,Q,B,Y){let J=new kM(A,Q,B,Y);return new e0(J)}static heightfield(A,Q,B,Y,J){let C=new bM(A,Q,B,Y,J);return new e0(C)}static cylinder(A,Q){let B=new mM(A,Q);return new e0(B)}static roundCylinder(A,Q,B){let Y=new uM(A,Q,B);return new e0(Y)}static cone(A,Q){let B=new dM(A,Q);return new e0(B)}static roundCone(A,Q,B){let Y=new cM(A,Q,B);return new e0(Y)}static convexHull(A){let Q=new dV(A,null);return new e0(Q)}static convexMesh(A,Q){let B=new dV(A,Q);return new e0(B)}static roundConvexHull(A,Q){let B=new cV(A,null,Q);return new e0(B)}static roundConvexMesh(A,Q,B){let Y=new cV(A,Q,B);return new e0(Y)}setTranslation(A,Q,B){if(typeof A!="number"||typeof Q!="number"||typeof B!="number")throw TypeError("The translation components must be numbers.");return this.translation={x:A,y:Q,z:B},this}setRotation(A){return gQ.copy(this.rotation,A),this}setSensor(A){return this.isSensor=A,this}setEnabled(A){return this.enabled=A,this}setContactSkin(A){return this.contactSkin=A,this}setDensity(A){return this.massPropsMode=IW.Density,this.density=A,this}setMass(A){return this.massPropsMode=IW.Mass,this.mass=A,this}setMassProperties(A,Q,B,Y){return this.massPropsMode=IW.MassProps,this.mass=A,a.copy(this.centerOfMass,Q),a.copy(this.principalAngularInertia,B),gQ.copy(this.angularInertiaLocalFrame,Y),this}setRestitution(A){return this.restitution=A,this}setFriction(A){return this.friction=A,this}setFrictionCombineRule(A){return this.frictionCombineRule=A,this}setRestitutionCombineRule(A){return this.restitutionCombineRule=A,this}setCollisionGroups(A){return this.collisionGroups=A,this}setSolverGroups(A){return this.solverGroups=A,this}setActiveHooks(A){return this.activeHooks=A,this}setActiveEvents(A){return this.activeEvents=A,this}setActiveCollisionTypes(A){return this.activeCollisionTypes=A,this}setContactForceEventThreshold(A){return this.contactForceEventThreshold=A,this}}class b_{constructor(A){this.raw=A||new j0,this.map=new lV,A&&A.forEachColliderHandle((Q)=>{this.map.set(Q,new NM(this,Q,null))})}free(){this.raw&&this.raw.free(),this.raw=void 0,this.map&&this.map.clear(),this.map=void 0}castClosure(A){return(Q)=>A?A(this.get(Q)):void 0}finalizeDeserialization(A){this.map.forEach((Q)=>Q.finalizeDeserialization(A))}createCollider(A,Q,B){let Y=B!=null&&B!=null;if(Y&&isNaN(B))throw Error("Cannot create a collider with a parent rigid-body handle that is not a number.");let J=Q.shape.intoRaw(),C=a.intoRaw(Q.translation),X=gQ.intoRaw(Q.rotation),G=a.intoRaw(Q.centerOfMass),F=a.intoRaw(Q.principalAngularInertia),W=gQ.intoRaw(Q.angularInertiaLocalFrame),Z=this.raw.createCollider(Q.enabled,J,C,X,Q.massPropsMode,Q.mass,G,F,W,Q.density,Q.friction,Q.restitution,Q.frictionCombineRule,Q.restitutionCombineRule,Q.isSensor,Q.collisionGroups,Q.solverGroups,Q.activeCollisionTypes,Q.activeHooks,Q.activeEvents,Q.contactForceEventThreshold,Q.contactSkin,Y,Y?B:0,A.raw);J.free(),C.free(),X.free(),G.free(),F.free(),W.free();let U=Y?A.get(B):null,$=new NM(this,Z,U,Q.shape);return this.map.set(Z,$),$}remove(A,Q,B,Y){this.raw.remove(A,Q.raw,B.raw,Y),this.unmap(A)}unmap(A){this.map.delete(A)}get(A){return this.map.get(A)}len(){return this.map.len()}contains(A){return this.get(A)!=null}forEach(A){this.map.forEach(A)}getAll(){return this.map.getAll()}}function HkQ(A,Q,B,Y){return new(B||(B=Promise))(function(J,C){function X(W){try{F(Y.next(W))}catch(Z){C(Z)}}function G(W){try{F(Y.throw(W))}catch(Z){C(Z)}}function F(W){var Z;W.done?J(W.value):(Z=W.value,Z instanceof B?Z:new B(function(U){U(Z)})).then(X,G)}F((Y=Y.apply(A,Q||[])).next())})}for(m_={byteLength:function(A){var Q=Dt(A),B=Q[0],Y=Q[1];return 3*(B+Y)/4-Y},toByteArray:function(A){var Q,B,Y=Dt(A),J=Y[0],C=Y[1],X=new ek(function(W,Z,U){return 3*(Z+U)/4-U}(0,J,C)),G=0,F=C>0?J-4:J;for(B=0;B>16&255,X[G++]=Q>>8&255,X[G++]=255&Q;return C===2&&(Q=z9[A.charCodeAt(B)]<<2|z9[A.charCodeAt(B+1)]>>4,X[G++]=255&Q),C===1&&(Q=z9[A.charCodeAt(B)]<<10|z9[A.charCodeAt(B+1)]<<4|z9[A.charCodeAt(B+2)]>>2,X[G++]=Q>>8&255,X[G++]=255&Q),X},fromByteArray:function(A){for(var Q,B=A.length,Y=B%3,J=[],C=16383,X=0,G=B-Y;XG?G:X+C));return Y===1?(Q=A[B-1],J.push(p8[Q>>2]+p8[Q<<4&63]+"==")):Y===2&&(Q=(A[B-2]<<8)+A[B-1],J.push(p8[Q>>10]+p8[Q>>4&63]+p8[Q<<2&63]+"=")),J.join("")}},p8=[],z9=[],ek=typeof Uint8Array<"u"?Uint8Array:Array,hV="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",mG=0,A_=hV.length;mG0)throw Error("Invalid string. Length must be a multiple of 4");var B=A.indexOf("=");return B===-1&&(B=Q),[B,B===Q?0:4-B%4]}function DkQ(A,Q,B){for(var Y,J,C=[],X=Q;X>18&63]+p8[J>>12&63]+p8[J>>6&63]+p8[63&J]);return C.join("")}function NkQ(){return HkQ(this,void 0,void 0,function*(){yield Pt(m_.toByteArray("AGFzbQEAAAAB6QykAWACf38AYAN/f38AYAR/f39/AGACf38Bf2ABfwF/YAN/f38Bf2ABfwBgBX9/f39/AGACf3wBf2AGf39/f31/AGAGf39/f39/AGABfwF9YAV/f399fwBgA39/fQBgBX9/f399AGADf3x/AGABfwF8YAR/f39/AX9gDH9/f39/f39/f399fwF/YAZ/f39/f30AYAR/f399AX9gAAF/YAR/f39/AX1gA39/fwF9YAN/f30Bf2ACf38BfGADf39/AX5gAn99AGAGf39/f39/AX9gAn98AX1gA398fQBgBH98f38AYAV/f39/fwF/YAd/f39/f39/AGACf38BfWACf3wBfGAIf39/f39/f38AYAF9AX1gAABgCX9/f39/f39/fwBgBH9+f38Bf2AIf39/f39/f30AYAR/f399AGADf398AGALf39/f39/f399fX8AYAh/f39/fX9/fwBgCX9/f39/fX9/fwBgBX9/fX9/AGAGf3x/f39/AGADf3x/AX9gA398fwF9YAN9fX0Bf2AGf31/f399AGAJf39/f39/fX9/AX9gBX98f39/AGAGf3x9fX19AGAFf3x9fX0AYAN/fX8AYAJ9fQF/YAF8AX9gBH99f38AYAt/f39/f39/f31/fwBgCn9/f39/f31/f38AYAZ/f319f38AYAt/f39/f39/fX9/fwBgCH9/f399fX9/AGAGf319f399AGAMf39/f31/f39/fX9/AGAPf39/f39/f39/fH98f3x/AGAPf39/f39/fX9/fH98f3x/AX9gBn9/f399fQBgBn99f3x/fwF/YAZ/fX98f38AYAV/fX1/fwBgAn5/AX9gBX9/fHx/AXxgBn9/fX9/fwBgA398fAF/YAR/fH1/AGAFf3x/fX0AYAJ/fABgAX0Bf2AEfX19fQF/YA5/f39/f39/f39/f39/fwBgB39/f39/f30AYA9/f39/f39/f39/f399fX8AYAt/f399f399f319fwBgCX99f39/f39/fwF/YAd/f39/f39/AX1gCn9/f39/f399fX8AYAt/f39/f39/f319fwF/YBJ/f39/f39/f39/f399f319fX0AYA9/f39/f39/f39/f39/f38AYAp/f39/f39/f39/AX9gC39/f39/f39/f39/AGAJf39/f39/fX9/AGASf39/f39/f399fX9/fH98f3x/AX9gB39/f39/f30Bf2Abf39/f319f39/f39/f39/f39/fX1/f399f39/AXxgEH9/f39/f31/f398f3x/fH8AYAh/fX9/f39/fwBgCH9/f39/e39/AGAbf39/f39/f31/f399fX1/f39/f39/f319f3x/AGAKf31/f39/f39/fwBgDH9/f399f39/f39/fwBgBn98f39/fQF/YAd/f39/f31/AX9gCn98f39/f399fX8Bf2AMf39/f39/f39/f39/AGANf39/f39/f3x/fH98fwBgC39/f399f39/f39/AGAHf39/f399fwF9YAh/fX99f31/fwBgBn9/f399fQF/YA1/f39/f39/fH98f3x/AX9gDH9/f39/f3x/fH98fwF/YAZ/f39/f30Bf2ANf31/f39/fH9/fH98fwBgBH9/fX8AYAl/f39/f39/f38BfWASf39/f39/f39/f39/f39/f39/AGAGf3x/f31/AX9gBX98f39/AX9gCX99f39/f398fwBgBn99f39/fwBgCn9/f39/f39/f38AYAd/fH1/f39/AGAGf3x/f31/AX1gAn9+AX9gBn98fX9/fwBgCH98f3x/fX1/AX9gBX98f399AX9gDX9/f39/f399fX19fX0AYAR/fH9/AX9gBX19fX9/AX9gA31/fwF/YAl/f39/f39+fn4AYAd/f39/f39/AX9gDX9/f39/f39/f39/f38AYAR/fHx9AX9gA398fwF8YAZ/fH99fX0AYAd/fH99fX19AGACf34AYAh/f39/f39/fwF/YAd/fH19fX1/AGAJf3x8f39/f39/AGAFf39/f30Bf2AGf3x9fX1/AGAGf3x8f39/AGAEf39+fwBgA39/fgF/YAV/fn9+fwBgA39+fgBgBH19fX8Bf2ADf399AX1gAn19AGAEf319fwBgBn9/fX19fQBgA319fwF/YAV/f3x/fwBgBX9/fn9/AGAEf35/fwBgAn19AX0CqwkgA3diZxVfX3diaW5kZ2VuX251bWJlcl9uZXcAOwN3YmcWX193YmluZGdlbl9ib29sZWFuX2dldAAEA3diZxpfX3diaW5kZ2VuX29iamVjdF9kcm9wX3JlZgAGA3diZxVfX3diaW5kZ2VuX251bWJlcl9nZXQAAAN3YmcWX193YmluZGdlbl9pc19mdW5jdGlvbgAEA3diZyRfX3diZ19yYXdyYXljb2xsaWRlcmludGVyc2VjdGlvbl9uZXcABAN3YmceX193YmdfcmF3Y29udGFjdGZvcmNlZXZlbnRfbmV3AAQDd2JnIl9fd2JnX3BlcmZvcm1hbmNlXzdhM2ZmZDBiMTdmNjYzYWQABAN3YmcXX193YmluZGdlbl9pc191bmRlZmluZWQABAN3YmcaX193Ymdfbm93XzJjOTVjOWRlMDEyOTMxNzMAEAN3YmcbX193YmluZGdlbl9vYmplY3RfY2xvbmVfcmVmAAQDd2JnIF9fd2JnX25ld25vYXJnc18xMDVlZDQ3MTQ3NWFhZjUwAAMDd2JnG19fd2JnX2NhbGxfNjcyYTRkMjE2MzRkNGEyNAADA3diZxtfX3diZ19jYWxsXzdjY2NkZDY5ZTA3OTFhZTIABQN3YmcbX193YmdfY2FsbF84MzNiZWQ1NzcwZWEyMDQxABEDd2JnG19fd2JnX2NhbGxfYjhhZGM4YjFkMGEwZDhlYgAgA3diZxtfX3diZ19iaW5kX2M4MzU5YjFjYmEwNTgxNjgAEQN3YmcdX193YmdfYnVmZmVyXzYwOWNjM2VlZTUxZWQxNTgABAN3YmcyX193Ymdfc3RhdGljX2FjY2Vzc29yX0dMT0JBTF9USElTXzU2NTc4YmU3ZTlmODMyYjAAFQN3YmcrX193Ymdfc3RhdGljX2FjY2Vzc29yX1NFTEZfMzdjNWQ0MThlNGJmNTgxOQAVA3diZy1fX3diZ19zdGF0aWNfYWNjZXNzb3JfV0lORE9XXzVkZTM3MDQzYTkxYTljNDAAFQN3YmctX193Ymdfc3RhdGljX2FjY2Vzc29yX0dMT0JBTF84OGE5MDJkMTNhNTU3ZDA3ABUDd2JnMV9fd2JnX25ld3dpdGhieXRlb2Zmc2V0YW5kbGVuZ3RoX2Q5N2U2MzdlYmUxNDVhOWEABQN3YmcaX193YmdfbmV3X2ExMjAwMmE3ZjkxYzc1YmUABAN3YmcaX193Ymdfc2V0XzY1NTk1YmRkODY4YjMwMDkAAQN3YmcdX193YmdfbGVuZ3RoX2E0NDYxOTNkYzIyYzEyZjgABAN3YmcxX193YmdfbmV3d2l0aGJ5dGVvZmZzZXRhbmRsZW5ndGhfZTZiN2U2OWFjZDRjNzM1NAAFA3diZxpfX3di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d2tpbmVtYXRpY2NoYXJhY3RlcmNvbnRyb2xsZXJfYXV0b3N0ZXBNaW5XaWR0aACnCz1yYXdraW5lbWF0aWNjaGFyYWN0ZXJjb250cm9sbGVyX2F1dG9zdGVwSW5jbHVkZXNEeW5hbWljQm9kaWVzAJgLL3Jhd2tpbmVtYXRpY2NoYXJhY3RlcmNvbnRyb2xsZXJfYXV0b3N0ZXBFbmFibGVkANgLLnJhd2tpbmVtYXRpY2NoYXJhY3RlcmNvbnRyb2xsZXJfZW5hYmxlQXV0b3N0ZXAAiAsvcmF3a2luZW1hdGljY2hhcmFjdGVyY29udHJvbGxlcl9kaXNhYmxlQXV0b3N0ZXAAlAwycmF3a2luZW1hdGljY2hhcmFjdGVyY29udHJvbGxlcl9tYXhTbG9wZUNsaW1iQW5nbGUA6Qs1cmF3a2luZW1hdGljY2hhcmFjdGVyY29udHJvbGxlcl9zZXRNYXhTbG9wZUNsaW1iQW5nbGUAlQwycmF3a2luZW1hdGljY2hhcmFjdGVyY29udHJvbGxlcl9taW5TbG9wZVNsaWRlQW5nbGUA6gs1cmF3a2luZW1hdGljY2hhcmFjdGVyY29udHJvbGxlcl9zZXRNaW5TbG9wZVNsaWRlQW5nbGUAlgw0cmF3a2luZW1hdGljY2hhcmFjdGVyY29udHJvbGxlcl9zbmFwVG9Hcm91bmREaXN0YW5jZQCoCzJyYXdraW5lbWF0aWNjaGFyYWN0ZXJjb250cm9sbGVyX2VuYWJsZVNuYXBUb0dyb3VuZADrCzNyYXdraW5lbWF0aWNjaGFyYWN0ZXJjb250cm9sbGVyX2Rpc2FibGVTbmFwVG9Hcm91bmQAlwwzcmF3a2luZW1hdGljY2hhcmFjdGVyY29udHJvbGxlcl9zbmFwVG9Hcm91bmRFbmFibGVkANkLN3Jhd2tpbmVtYXRpY2NoYXJhY3RlcmNvbnRyb2xsZXJfY29tcHV0ZUNvbGxpZGVyTW92ZW1lbnQAwgIwcmF3a2luZW1hdGljY2hhcmFjdGVyY29udHJvbGxlcl9jb21wdXRlZE1vdmVtZW50AM0IMHJhd2tpbmVtYXRpY2NoYXJhY3RlcmNvbnRyb2xsZXJfY29tcHV0ZWRHcm91bmRlZADsCzVyYXdraW5lbWF0aWNjaGFyYWN0ZXJjb250cm9sbGVyX251bUNvbXB1dGVkQ29sbGlzaW9ucwDtCzFyYXdraW5lbWF0aWNjaGFyYWN0ZXJjb250cm9sbGVyX2NvbXB1dGVkQ29sbGlzaW9uAMkGIF9fd2JnX3Jhd2NoYXJhY3RlcmNvbGxpc2lvbl9mcmVlAJ0JGXJhd2NoYXJhY3RlcmNvbGxpc2lvbl9uZXcAtQsccmF3Y2hhcmFjdGVyY29sbGlzaW9uX2hhbmRsZQDuCy1yYXdjaGFyYWN0ZXJjb2xsaXNpb25fdHJhbnNsYXRpb25EZWx0YUFwcGxpZWQAzggvcmF3Y2hhcmFjdGVyY29sbGlzaW9uX3RyYW5zbGF0aW9uRGVsdGFSZW1haW5pbmcAzwgZcmF3Y2hhcmFjdGVyY29sbGlzaW9uX3RvaQDvCyNyYXdjaGFyYWN0ZXJjb2xsaXNpb25fd29ybGRXaXRuZXNzMQDQCCNyYXdjaGFyYWN0ZXJjb2xsaXNpb25fd29ybGRXaXRuZXNzMgDLBSJyYXdjaGFyYWN0ZXJjb2xsaXNpb25fd29ybGROb3JtYWwxANEIInJhd2NoYXJhY3RlcmNvbGxpc2lvbl93b3JsZE5vcm1hbDIAhAYbX193YmdfcmF3cGlkY29udHJvbGxlcl9mcmVlAJ4JFHJhd3BpZGNvbnRyb2xsZXJfbmV3AMEKF3Jhd3BpZGNvbnRyb2xsZXJfc2V0X2twAKUIF3Jhd3BpZGNvbnRyb2xsZXJfc2V0X2tpAKYIF3Jhd3BpZGNvbnRyb2xsZXJfc2V0X2tkAKcIHnJhd3BpZGNvbnRyb2xsZXJfc2V0X2F4ZXNfbWFzawC2CyByYXdwaWRjb250cm9sbGVyX3Jlc2V0X2ludGVncmFscwDdCShyYXdwaWRjb250cm9sbGVyX2FwcGx5X2xpbmVhcl9jb3JyZWN0aW9uAKwDKXJhd3BpZGNvbnRyb2xsZXJfYXBwbHlfYW5ndWxhcl9jb3JyZWN0aW9uAK0DInJhd3BpZGNvbnRyb2xsZXJfbGluZWFyX2NvcnJlY3Rpb24AhAMjcmF3cGlkY29udHJvbGxlcl9hbmd1bGFyX2NvcnJlY3Rpb24AhQMtX193YmdfcmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9mcmVlAOMGJnJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfbmV3ALELOHJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfY3VycmVudF92ZWhpY2xlX3NwZWVkAPALKnJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfY2hhc3NpcwDxCzByYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX2luZGV4X3VwX2F4aXMA8gs0cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9zZXRfaW5kZXhfdXBfYXhpcwCYDDVyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX2luZGV4X2ZvcndhcmRfYXhpcwDzCzlyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3NldF9pbmRleF9mb3J3YXJkX2F4aXMAmQwscmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9hZGRfd2hlZWwA1AMtcmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9udW1fd2hlZWxzAPQLMXJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfdXBkYXRlX3ZlaGljbGUAiANEcmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9jaGFzc2lzX2Nvbm5lY3Rpb25fcG9pbnRfY3MA9AZIcmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9zZXRfd2hlZWxfY2hhc3Npc19jb25uZWN0aW9uX3BvaW50X2NzAM0FP3Jhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfd2hlZWxfc3VzcGVuc2lvbl9yZXN0X2xlbmd0aACpCkNyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3NldF93aGVlbF9zdXNwZW5zaW9uX3Jlc3RfbGVuZ3RoAPwIPnJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfd2hlZWxfbWF4X3N1c3BlbnNpb25fdHJhdmVsAKoKQnJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfc2V0X3doZWVsX21heF9zdXNwZW5zaW9uX3RyYXZlbAD9CC9yYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3doZWVsX3JhZGl1cwCrCjNyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3NldF93aGVlbF9yYWRpdXMA/gg9cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9zdXNwZW5zaW9uX3N0aWZmbmVzcwCsCkFyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3NldF93aGVlbF9zdXNwZW5zaW9uX3N0aWZmbmVzcwD/CD9yYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3doZWVsX3N1c3BlbnNpb25fY29tcHJlc3Npb24ArQpDcmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9zZXRfd2hlZWxfc3VzcGVuc2lvbl9jb21wcmVzc2lvbgCACT5yYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3doZWVsX3N1c3BlbnNpb25fcmVsYXhhdGlvbgCuCkJyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3NldF93aGVlbF9zdXNwZW5zaW9uX3JlbGF4YXRpb24AgQk9cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9tYXhfc3VzcGVuc2lvbl9mb3JjZQCvCkFyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3NldF93aGVlbF9tYXhfc3VzcGVuc2lvbl9mb3JjZQCCCS5yYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3doZWVsX2JyYWtlALAKMnJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfc2V0X3doZWVsX2JyYWtlAIMJMXJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfd2hlZWxfc3RlZXJpbmcAsQo1cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9zZXRfd2hlZWxfc3RlZXJpbmcAhAk1cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9lbmdpbmVfZm9yY2UAsgo5cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9zZXRfd2hlZWxfZW5naW5lX2ZvcmNlAIUJNXJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfd2hlZWxfZGlyZWN0aW9uX2NzAPUGOXJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfc2V0X3doZWVsX2RpcmVjdGlvbl9jcwDOBTByYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3doZWVsX2F4bGVfY3MA9gY0cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9zZXRfd2hlZWxfYXhsZV9jcwDPBTZyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3doZWVsX2ZyaWN0aW9uX3NsaXAAswo6cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9zZXRfd2hlZWxfZnJpY3Rpb25fc2xpcACGCUByYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3doZWVsX3NpZGVfZnJpY3Rpb25fc3RpZmZuZXNzALQKRHJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfc2V0X3doZWVsX3NpZGVfZnJpY3Rpb25fc3RpZmZuZXNzAIcJMXJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfd2hlZWxfcm90YXRpb24AtQo4cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9mb3J3YXJkX2ltcHVsc2UAtgo1cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9zaWRlX2ltcHVsc2UAtwo5cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9zdXNwZW5zaW9uX2ZvcmNlALgKOnJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfd2hlZWxfY29udGFjdF9ub3JtYWxfd3MA9wY5cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9jb250YWN0X3BvaW50X3dzAPgGOnJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfd2hlZWxfc3VzcGVuc2lvbl9sZW5ndGgAuQo2cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9oYXJkX3BvaW50X3dzAPkGNnJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfd2hlZWxfaXNfaW5fY29udGFjdADCCjZyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3doZWVsX2dyb3VuZF9vYmplY3QAmQkXX193YmdfcmF3Y2Nkc29sdmVyX2ZyZWUAnwkccmF3aW1wdWxzZWpvaW50c2V0X2pvaW50VHlwZQCEByNyYXdpbXB1bHNlam9pbnRzZXRfam9pbnRCb2R5SGFuZGxlMQDhByNyYXdpbXB1bHNlam9pbnRzZXRfam9pbnRCb2R5SGFuZGxlMgDiBx9yYXdpbXB1bHNlam9pbnRzZXRfam9pbnRGcmFtZVgxANsGH3Jhd2ltcHVsc2Vqb2ludHNldF9qb2ludEZyYW1lWDIA3AYfcmF3aW1wdWxzZWpvaW50c2V0X2pvaW50QW5jaG9yMQCFBh9yYXdpbXB1bHNlam9pbnRzZXRfam9pbnRBbmNob3IyAIYGInJhd2ltcHVsc2Vqb2ludHNldF9qb2ludFNldEFuY2hvcjEA0gUicmF3aW1wdWxzZWpvaW50c2V0X2pvaW50U2V0QW5jaG9yMgDTBSdyYXdpbXB1bHNlam9pbnRzZXRfam9pbnRDb250YWN0c0VuYWJsZWQA4wcqcmF3aW1wdWxzZWpvaW50c2V0X2pvaW50U2V0Q29udGFjdHNFbmFibGVkALgIJXJhd2ltcHVsc2Vqb2ludHNldF9qb2ludExpbWl0c0VuYWJsZWQA/AYhcmF3aW1wdWxzZWpvaW50c2V0X2pvaW50TGltaXRzTWluAKIHIXJhd2ltcHVsc2Vqb2ludHNldF9qb2ludExpbWl0c01heACjByFyYXdpbXB1bHNlam9pbnRzZXRfam9pbnRTZXRMaW1pdHMAtQcrcmF3aW1wdWxzZWpvaW50c2V0X2pvaW50Q29uZmlndXJlTW90b3JNb2RlbACBBy5yYXdpbXB1bHNlam9pbnRzZXRfam9pbnRDb25maWd1cmVNb3RvclZlbG9jaXR5AMMHLnJhd2ltcHVsc2Vqb2ludHNldF9qb2ludENvbmZpZ3VyZU1vdG9yUG9zaXRpb24AxAcmcmF3aW1wdWxzZWpvaW50c2V0X2pvaW50Q29uZmlndXJlTW90b3IAxQcdX193YmdfcmF3aW1wdWxzZWpvaW50c2V0X2ZyZWUAyAcWcmF3aW1wdWxzZWpvaW50c2V0X25ldwDDCh5yYXdpbXB1bHNlam9pbnRzZXRfY3JlYXRlSm9pbnQAtgYZcmF3aW1wdWxzZWpvaW50c2V0X3JlbW92ZQCLCRZyYXdpbXB1bHNlam9pbnRzZXRfbGVuAPILG3Jhd2ltcHVsc2Vqb2ludHNldF9jb250YWlucwDSCCVyYXdpbXB1bHNlam9pbnRzZXRfZm9yRWFjaEpvaW50SGFuZGxlAIcGMnJhd2ltcHVsc2Vqb2ludHNldF9mb3JFYWNoSm9pbnRBdHRhY2hlZFRvUmlnaWRCb2R5AIwJI19fd2JnX3Jhd2ludGVncmF0aW9ucGFyYW1ldGVyc19mcmVlAKAJHHJhd2ludGVncmF0aW9ucGFyYW1ldGVyc19uZXcA0gsbcmF3aW50ZWdyYXRpb25wYXJhbWV0ZXJzX2R0APULJHJhd2ludGVncmF0aW9ucGFyYW1ldGVyc19jb250YWN0X2VycADSCjVyYXdpbnRlZ3JhdGlvbnBhcmFtZXRlcnNfbm9ybWFsaXplZEFsbG93ZWRMaW5lYXJFcnJvcgD2CzVyYXdpbnRlZ3JhdGlvbnBhcmFtZXRlcnNfbm9ybWFsaXplZFByZWRpY3Rpb25EaXN0YW5jZQD3CyxyYXdpbnRlZ3JhdGlvbnBhcmFtZXRlcnNfbnVtU29sdmVySXRlcmF0aW9ucwD4CyZyYXdpbnRlZ3JhdGlvbnBhcmFtZXRlcnNfbWluSXNsYW5kU2l6ZQD5CydyYXdpbnRlZ3JhdGlvbnBhcmFtZXRlcnNfbWF4Q2NkU3Vic3RlcHMA+gsfcmF3aW50ZWdyYXRpb25wYXJhbWV0ZXJzX3NldF9kdACaDDZyYXdpbnRlZ3JhdGlvbnBhcmFtZXRlcnNfc2V0X2NvbnRhY3RfbmF0dXJhbF9mcmVxdWVuY3kAmww5cmF3aW50ZWdyYXRpb25wYXJhbWV0ZXJzX3NldF9ub3JtYWxpemVkQWxsb3dlZExpbmVhckVycm9yAJwMOXJhd2ludGVncmF0aW9ucGFyYW1ldGVyc19zZXRfbm9ybWFsaXplZFByZWRpY3Rpb25EaXN0YW5jZQCdDDByYXdpbnRlZ3JhdGlvbnBhcmFtZXRlcnNfc2V0X251bVNvbHZlckl0ZXJhdGlvbnMAngwqcmF3aW50ZWdyYXRpb25wYXJhbWV0ZXJzX3NldF9taW5Jc2xhbmRTaXplAJ8MK3Jhd2ludGVncmF0aW9ucGFyYW1ldGVyc19zZXRfbWF4Q2NkU3Vic3RlcHMAoAwncmF3aW50ZWdyYXRpb25wYXJhbWV0ZXJzX3NldF9sZW5ndGhVbml0AKEMG19fd2JnX3Jhd2lzbGFuZG1hbmFnZXJfZnJlZQCkBxRyYXdpc2xhbmRtYW5hZ2VyX25ldwDTCy1yYXdpc2xhbmRtYW5hZ2VyX2ZvckVhY2hBY3RpdmVSaWdpZEJvZHlIYW5kbGUAlwYaX193YmdfcmF3Z2VuZXJpY2pvaW50X2ZyZWUAoQkXcmF3Z2VuZXJpY2pvaW50X2dlbmVyaWMAyAIWcmF3Z2VuZXJpY2pvaW50X3NwcmluZwCtBBRyYXdnZW5lcmljam9pbnRfcm9wZQC4BBlyYXdnZW5lcmljam9pbnRfc3BoZXJpY2FsALwEGXJhd2dlbmVyaWNqb2ludF9wcmlzbWF0aWMAtgIVcmF3Z2VuZXJpY2pvaW50X2ZpeGVkALoCGHJhd2dlbmVyaWNqb2ludF9yZXZvbHV0ZQDYAh5yYXdtdWx0aWJvZHlqb2ludHNldF9qb2ludFR5cGUAswYhcmF3bXVsdGlib2R5am9pbnRzZXRfam9pbnRGcmFtZVgxAJMGIXJhd211bHRpYm9keWpvaW50c2V0X2pvaW50RnJhbWVYMgCUBiFyYXdtdWx0aWJvZHlqb2ludHNldF9qb2ludEFuY2hvcjEAwAUhcmF3bXVsdGlib2R5am9pbnRzZXRfam9pbnRBbmNob3IyAMEFKXJhd211bHRpYm9keWpvaW50c2V0X2pvaW50Q29udGFjdHNFbmFibGVkAO8GLHJhd211bHRpYm9keWpvaW50c2V0X2pvaW50U2V0Q29udGFjdHNFbmFibGVkAJwHJ3Jhd211bHRpYm9keWpvaW50c2V0X2pvaW50TGltaXRzRW5hYmxlZACnBiNyYXdtdWx0aWJvZHlqb2ludHNldF9qb2ludExpbWl0c01pbgDDBiNyYXdtdWx0aWJvZHlqb2ludHNldF9qb2ludExpbWl0c01heADEBh9fX3diZ19yYXdtdWx0aWJvZHlqb2ludHNldF9mcmVlAMkHGHJhd211bHRpYm9keWpvaW50c2V0X25ldwDECiByYXdtdWx0aWJvZHlqb2ludHNldF9jcmVhdGVKb2ludAC3BhtyYXdtdWx0aWJvZHlqb2ludHNldF9yZW1vdmUAlAkdcmF3bXVsdGlib2R5am9pbnRzZXRfY29udGFpbnMArAgncmF3bXVsdGlib2R5am9pbnRzZXRfZm9yRWFjaEpvaW50SGFuZGxlAJAJNHJhd211bHRpYm9keWpvaW50c2V0X2ZvckVhY2hKb2ludEF0dGFjaGVkVG9SaWdpZEJvZHkAjQkdcmF3cmlnaWRib2R5c2V0X3JiVHJhbnNsYXRpb24AiAYacmF3cmlnaWRib2R5c2V0X3JiUm90YXRpb24A5QYXcmF3cmlnaWRib2R5c2V0X3JiU2xlZXAA+AgccmF3cmlnaWRib2R5c2V0X3JiSXNTbGVlcGluZwD1BxpyYXdyaWdpZGJvZHlzZXRfcmJJc01vdmluZwCeCCFyYXdyaWdpZGJvZHlzZXRfcmJOZXh0VHJhbnNsYXRpb24AiQYecmF3cmlnaWRib2R5c2V0X3JiTmV4dFJvdGF0aW9uAOYGIHJhd3JpZ2lkYm9keXNldF9yYlNldFRyYW5zbGF0aW9uALMJHXJhd3JpZ2lkYm9keXNldF9yYlNldFJvdGF0aW9uAK0JG3Jhd3JpZ2lkYm9keXNldF9yYlNldExpbnZlbAD8BRtyYXdyaWdpZGJvZHlzZXRfcmJTZXRBbmd2ZWwA/QUtcmF3cmlnaWRib2R5c2V0X3JiU2V0TmV4dEtpbmVtYXRpY1RyYW5zbGF0aW9uAPYHKnJhd3JpZ2lkYm9keXNldF9yYlNldE5leHRLaW5lbWF0aWNSb3RhdGlvbgCjBjZyYXdyaWdpZGJvZHlzZXRfcmJSZWNvbXB1dGVNYXNzUHJvcGVydGllc0Zyb21Db2xsaWRlcnMAlQYjcmF3cmlnaWRib2R5c2V0X3JiU2V0QWRkaXRpb25hbE1hc3MA9wctcmF3cmlnaWRib2R5c2V0X3JiU2V0QWRkaXRpb25hbE1hc3NQcm9wZXJ0aWVzALEDGHJhd3JpZ2lkYm9keXNldF9yYkxpbnZlbACKBhhyYXdyaWdpZGJvZHlzZXRfcmJBbmd2ZWwAiwYhcmF3cmlnaWRib2R5c2V0X3JiVmVsb2NpdHlBdFBvaW50AMIEInJhd3JpZ2lkYm9keXNldF9yYkxvY2tUcmFuc2xhdGlvbnMAtAYocmF3cmlnaWRib2R5c2V0X3JiU2V0RW5hYmxlZFRyYW5zbGF0aW9ucwDCBR9yYXdyaWdpZGJvZHlzZXRfcmJMb2NrUm90YXRpb25zALUGJXJhd3JpZ2lkYm9keXNldF9yYlNldEVuYWJsZWRSb3RhdGlvbnMAwwUgcmF3cmlnaWRib2R5c2V0X3JiRG9taW5hbmNlR3JvdXAA+AcjcmF3cmlnaWRib2R5c2V0X3JiU2V0RG9taW5hbmNlR3JvdXAA1AcbcmF3cmlnaWRib2R5c2V0X3JiRW5hYmxlQ2NkANMIJnJhd3JpZ2lkYm9keXNldF9yYlNldFNvZnRDY2RQcmVkaWN0aW9uAOYIFnJhd3JpZ2lkYm9keXNldF9yYk1hc3MAwAcZcmF3cmlnaWRib2R5c2V0X3JiSW52TWFzcwD5ByJyYXdyaWdpZGJvZHlzZXRfcmJFZmZlY3RpdmVJbnZNYXNzAIwGGnJhd3JpZ2lkYm9keXNldF9yYkxvY2FsQ29tAI0GGnJhd3JpZ2lkYm9keXNldF9yYldvcmxkQ29tAI4GJXJhd3JpZ2lkYm9keXNldF9yYkludlByaW5jaXBhbEluZXJ0aWEAjwYscmF3cmlnaWRib2R5c2V0X3JiUHJpbmNpcGFsSW5lcnRpYUxvY2FsRnJhbWUA5wYicmF3cmlnaWRib2R5c2V0X3JiUHJpbmNpcGFsSW5lcnRpYQC8BipyYXdyaWdpZGJvZHlzZXRfcmJFZmZlY3RpdmVXb3JsZEludkluZXJ0aWEAmAYpcmF3cmlnaWRib2R5c2V0X3JiRWZmZWN0aXZlQW5ndWxhckluZXJ0aWEAvQYYcmF3cmlnaWRib2R5c2V0X3JiV2FrZVVwAM8HHnJhd3JpZ2lkYm9keXNldF9yYklzQ2NkRW5hYmxlZAD6ByNyYXdyaWdpZGJvZHlzZXRfcmJTb2Z0Q2NkUHJlZGljdGlvbgD7Bx5yYXdyaWdpZGJvZHlzZXRfcmJOdW1Db2xsaWRlcnMA/AcacmF3cmlnaWRib2R5c2V0X3JiQ29sbGlkZXIAhQcacmF3cmlnaWRib2R5c2V0X3JiQm9keVR5cGUA/QcdcmF3cmlnaWRib2R5c2V0X3JiU2V0Qm9keVR5cGUA7AcZcmF3cmlnaWRib2R5c2V0X3JiSXNGaXhlZADQBx1yYXdyaWdpZGJvZHlzZXRfcmJJc0tpbmVtYXRpYwDRBxtyYXdyaWdpZGJvZHlzZXRfcmJJc0R5bmFtaWMA1QcfcmF3cmlnaWRib2R5c2V0X3JiTGluZWFyRGFtcGluZwD+ByByYXdyaWdpZGJvZHlzZXRfcmJBbmd1bGFyRGFtcGluZwD/ByJyYXdyaWdpZGJvZHlzZXRfcmJTZXRMaW5lYXJEYW1waW5nAOcII3Jhd3JpZ2lkYm9keXNldF9yYlNldEFuZ3VsYXJEYW1waW5nAOgIHHJhd3JpZ2lkYm9keXNldF9yYlNldEVuYWJsZWQA1AgbcmF3cmlnaWRib2R5c2V0X3JiSXNFbmFibGVkAIAIHnJhd3JpZ2lkYm9keXNldF9yYkdyYXZpdHlTY2FsZQCBCCFyYXdyaWdpZGJvZHlzZXRfcmJTZXRHcmF2aXR5U2NhbGUApQcdcmF3cmlnaWRib2R5c2V0X3JiUmVzZXRGb3JjZXMA1QgecmF3cmlnaWRib2R5c2V0X3JiUmVzZXRUb3JxdWVzANYIGnJhd3JpZ2lkYm9keXNldF9yYkFkZEZvcmNlAP4FHnJhd3JpZ2lkYm9keXNldF9yYkFwcGx5SW1wdWxzZQD/BRtyYXdyaWdpZGJvZHlzZXRfcmJBZGRUb3JxdWUAgAYkcmF3cmlnaWRib2R5c2V0X3JiQXBwbHlUb3JxdWVJbXB1bHNlAIEGIXJhd3JpZ2lkYm9keXNldF9yYkFkZEZvcmNlQXRQb2ludADLBCVyYXdyaWdpZGJvZHlzZXRfcmJBcHBseUltcHVsc2VBdFBvaW50AJQELHJhd3JpZ2lkYm9keXNldF9yYkFkZGl0aW9uYWxTb2x2ZXJJdGVyYXRpb25zAIIIL3Jhd3JpZ2lkYm9keXNldF9yYlNldEFkZGl0aW9uYWxTb2x2ZXJJdGVyYXRpb25zAOkIGnJhd3JpZ2lkYm9keXNldF9yYlVzZXJEYXRhAO0HHXJhd3JpZ2lkYm9keXNldF9yYlNldFVzZXJEYXRhAMoIG3Jhd3JpZ2lkYm9keXNldF9yYlVzZXJGb3JjZQDFBhxyYXdyaWdpZGJvZHlzZXRfcmJVc2VyVG9ycXVlAMYGGl9fd2JnX3Jhd3JpZ2lkYm9keXNldF9mcmVlAO4HE3Jhd3JpZ2lkYm9keXNldF9uZXcA1gofcmF3cmlnaWRib2R5c2V0X2NyZWF0ZVJpZ2lkQm9keQDeARZyYXdyaWdpZGJvZHlzZXRfcmVtb3ZlAPUCE3Jhd3JpZ2lkYm9keXNldF9sZW4A+wsYcmF3cmlnaWRib2R5c2V0X2NvbnRhaW5zAOoIJnJhd3JpZ2lkYm9keXNldF9mb3JFYWNoUmlnaWRCb2R5SGFuZGxlAJEJOXJhd3JpZ2lkYm9keXNldF9wcm9wYWdhdGVNb2RpZmllZEJvZHlQb3NpdGlvbnNUb0NvbGxpZGVycwD9BhhfX3diZ19yYXdicm9hZHBoYXNlX2ZyZWUAygcRcmF3YnJvYWRwaGFzZV9uZXcAlQkVcmF3YnJvYWRwaGFzZV9jYXN0UmF5AJICIXJhd2Jyb2FkcGhhc2VfY2FzdFJheUFuZEdldE5vcm1hbACTAiJyYXdicm9hZHBoYXNlX2ludGVyc2VjdGlvbnNXaXRoUmF5AOABI3Jhd2Jyb2FkcGhhc2VfaW50ZXJzZWN0aW9uV2l0aFNoYXBlANUBGnJhd2Jyb2FkcGhhc2VfcHJvamVjdFBvaW50ALcCJ3Jhd2Jyb2FkcGhhc2VfcHJvamVjdFBvaW50QW5kR2V0RmVhdHVyZQC7AiRyYXdicm9hZHBoYXNlX2ludGVyc2VjdGlvbnNXaXRoUG9pbnQAmAIXcmF3YnJvYWRwaGFzZV9jYXN0U2hhcGUA0wEkcmF3YnJvYWRwaGFzZV9pbnRlcnNlY3Rpb25zV2l0aFNoYXBlANkBL3Jhd2Jyb2FkcGhhc2VfY29sbGlkZXJzV2l0aEFhYmJJbnRlcnNlY3RpbmdBYWJiALwCHHJhd2NvbGxpZGVyc2V0X2NvVHJhbnNsYXRpb24AkAYZcmF3Y29sbGlkZXJzZXRfY29Sb3RhdGlvbgDoBiVyYXdjb2xsaWRlcnNldF9jb1RyYW5zbGF0aW9uV3J0UGFyZW50AOwFInJhd2NvbGxpZGVyc2V0X2NvUm90YXRpb25XcnRQYXJlbnQAuAYfcmF3Y29sbGlkZXJzZXRfY29TZXRUcmFuc2xhdGlvbgDWByhyYXdjb2xsaWRlcnNldF9jb1NldFRyYW5zbGF0aW9uV3J0UGFyZW50AMEHHHJhd2NvbGxpZGVyc2V0X2NvU2V0Um90YXRpb24AoAYlcmF3Y29sbGlkZXJzZXRfY29TZXRSb3RhdGlvbldydFBhcmVudADACRlyYXdjb2xsaWRlcnNldF9jb0lzU2Vuc29yAIMIGnJhd2NvbGxpZGVyc2V0X2NvU2hhcGVUeXBlAI4JIHJhd2NvbGxpZGVyc2V0X2NvSGFsZnNwYWNlTm9ybWFsAK4FHHJhd2NvbGxpZGVyc2V0X2NvSGFsZkV4dGVudHMAnQUfcmF3Y29sbGlkZXJzZXRfY29TZXRIYWxmRXh0ZW50cwDUBhdyYXdjb2xsaWRlcnNldF9jb1JhZGl1cwC5CBpyYXdjb2xsaWRlcnNldF9jb1NldFJhZGl1cwDOCRtyYXdjb2xsaWRlcnNldF9jb0hhbGZIZWlnaHQAuggecmF3Y29sbGlkZXJzZXRfY29TZXRIYWxmSGVpZ2h0AM8JHHJhd2NvbGxpZGVyc2V0X2NvUm91bmRSYWRpdXMAuwgfcmF3Y29sbGlkZXJzZXRfY29TZXRSb3VuZFJhZGl1cwDQCRpyYXdjb2xsaWRlcnNldF9jb1ZveGVsRGF0YQCoBhpyYXdjb2xsaWRlcnNldF9jb1ZveGVsU2l6ZQCxBRlyYXdjb2xsaWRlcnNldF9jb1NldFZveGVsAJYHJXJhd2NvbGxpZGVyc2V0X2NvUHJvcGFnYXRlVm94ZWxDaGFuZ2UArgkjcmF3Y29sbGlkZXJzZXRfY29Db21iaW5lVm94ZWxTdGF0ZXMAwQkZcmF3Y29sbGlkZXJzZXRfY29WZXJ0aWNlcwCpBhhyYXdjb2xsaWRlcnNldF9jb0luZGljZXMAqgYdcmF3Y29sbGlkZXJzZXRfY29UcmlNZXNoRmxhZ3MA3QYhcmF3Y29sbGlkZXJzZXRfY29IZWlnaHRGaWVsZEZsYWdzAN4GI3Jhd2NvbGxpZGVyc2V0X2NvSGVpZ2h0ZmllbGRIZWlnaHRzAKsGIXJhd2NvbGxpZGVyc2V0X2NvSGVpZ2h0ZmllbGRTY2FsZQCcBSFyYXdjb2xsaWRlcnNldF9jb0hlaWdodGZpZWxkTlJvd3MAvgYhcmF3Y29sbGlkZXJzZXRfY29IZWlnaHRmaWVsZE5Db2xzAL8GF3Jhd2NvbGxpZGVyc2V0X2NvUGFyZW50AJgHG3Jhd2NvbGxpZGVyc2V0X2NvU2V0RW5hYmxlZACmBxpyYXdjb2xsaWRlcnNldF9jb0lzRW5hYmxlZADXBx9yYXdjb2xsaWRlcnNldF9jb1NldENvbnRhY3RTa2luAOsIHHJhd2NvbGxpZGVyc2V0X2NvQ29udGFjdFNraW4AhAgZcmF3Y29sbGlkZXJzZXRfY29GcmljdGlvbgCFCBxyYXdjb2xsaWRlcnNldF9jb1Jlc3RpdHV0aW9uAIYIGHJhd2NvbGxpZGVyc2V0X2NvRGVuc2l0eQCfCBVyYXdjb2xsaWRlcnNldF9jb01hc3MAoAgXcmF3Y29sbGlkZXJzZXRfY29Wb2x1bWUAoQggcmF3Y29sbGlkZXJzZXRfY29Db2xsaXNpb25Hcm91cHMAuQcdcmF3Y29sbGlkZXJzZXRfY29Tb2x2ZXJHcm91cHMAugcccmF3Y29sbGlkZXJzZXRfY29BY3RpdmVIb29rcwCHCCVyYXdjb2xsaWRlcnNldF9jb0FjdGl2ZUNvbGxpc2lvblR5cGVzAIgIHXJhd2NvbGxpZGVyc2V0X2NvQWN0aXZlRXZlbnRzAIkIK3Jhd2NvbGxpZGVyc2V0X2NvQ29udGFjdEZvcmNlRXZlbnRUaHJlc2hvbGQAiggecmF3Y29sbGlkZXJzZXRfY29Db250YWluc1BvaW50AJIFGnJhd2NvbGxpZGVyc2V0X2NvQ2FzdFNoYXBlAJYCHXJhd2NvbGxpZGVyc2V0X2NvQ2FzdENvbGxpZGVyAM8DIHJhd2NvbGxpZGVyc2V0X2NvSW50ZXJzZWN0c1NoYXBlAO4CHXJhd2NvbGxpZGVyc2V0X2NvQ29udGFjdFNoYXBlAIQCIHJhd2NvbGxpZGVyc2V0X2NvQ29udGFjdENvbGxpZGVyAKwGHXJhd2NvbGxpZGVyc2V0X2NvUHJvamVjdFBvaW50AKQEHnJhd2NvbGxpZGVyc2V0X2NvSW50ZXJzZWN0c1JheQDSAxhyYXdjb2xsaWRlcnNldF9jb0Nhc3RSYXkAswMkcmF3Y29sbGlkZXJzZXRfY29DYXN0UmF5QW5kR2V0Tm9ybWFsAOgCGnJhd2NvbGxpZGVyc2V0X2NvU2V0U2Vuc29yANIHH3Jhd2NvbGxpZGVyc2V0X2NvU2V0UmVzdGl0dXRpb24A7AgccmF3Y29sbGlkZXJzZXRfY29TZXRGcmljdGlvbgDtCCRyYXdjb2xsaWRlcnNldF9jb0ZyaWN0aW9uQ29tYmluZVJ1bGUAiwgncmF3Y29sbGlkZXJzZXRfY29TZXRGcmljdGlvbkNvbWJpbmVSdWxlALwIJ3Jhd2NvbGxpZGVyc2V0X2NvUmVzdGl0dXRpb25Db21iaW5lUnVsZQCMCCpyYXdjb2xsaWRlcnNldF9jb1NldFJlc3RpdHV0aW9uQ29tYmluZVJ1bGUAvQgjcmF3Y29sbGlkZXJzZXRfY29TZXRDb2xsaXNpb25Hcm91cHMAkQcgcmF3Y29sbGlkZXJzZXRfY29TZXRTb2x2ZXJHcm91cHMAkgcfcmF3Y29sbGlkZXJzZXRfY29TZXRBY3RpdmVIb29rcwCtCCByYXdjb2xsaWRlcnNldF9jb1NldEFjdGl2ZUV2ZW50cwC+CChyYXdjb2xsaWRlcnNldF9jb1NldEFjdGl2ZUNvbGxpc2lvblR5cGVzAL8IGXJhd2NvbGxpZGVyc2V0X2NvU2V0U2hhcGUA0AUucmF3Y29sbGlkZXJzZXRfY29TZXRDb250YWN0Rm9yY2VFdmVudFRocmVzaG9sZADuCBtyYXdjb2xsaWRlcnNldF9jb1NldERlbnNpdHkA7wgYcmF3Y29sbGlkZXJzZXRfY29TZXRNYXNzAPAIInJhd2NvbGxpZGVyc2V0X2NvU2V0TWFzc1Byb3BlcnRpZXMAugMZX193YmdfcmF3Y29sbGlkZXJzZXRfZnJlZQCnBxJyYXdjb2xsaWRlcnNldF9uZXcAmwoScmF3Y29sbGlkZXJzZXRfbGVuAPwLF3Jhd2NvbGxpZGVyc2V0X2NvbnRhaW5zAPEIHXJhd2NvbGxpZGVyc2V0X2NyZWF0ZUNvbGxpZGVyAOYBFXJhd2NvbGxpZGVyc2V0X3JlbW92ZQCPBCRyYXdjb2xsaWRlcnNldF9mb3JFYWNoQ29sbGlkZXJIYW5kbGUAkgkaX193YmdfcmF3c2hhcGVjb250YWN0X2ZyZWUAogkZX193YmdfcmF3bmFycm93cGhhc2VfZnJlZQCyCBJyYXduYXJyb3dwaGFzZV9uZXcAmQshcmF3bmFycm93cGhhc2VfY29udGFjdF9wYWlyc193aXRoAJoJG3Jhd25hcnJvd3BoYXNlX2NvbnRhY3RfcGFpcgDfBiZyYXduYXJyb3dwaGFzZV9pbnRlcnNlY3Rpb25fcGFpcnNfd2l0aACbCSByYXduYXJyb3dwaGFzZV9pbnRlcnNlY3Rpb25fcGFpcgDvBx1fX3diZ19yYXdjb250YWN0bWFuaWZvbGRfZnJlZQCjCRhyYXdjb250YWN0cGFpcl9jb2xsaWRlcjEAmgsYcmF3Y29udGFjdHBhaXJfY29sbGlkZXIyAJsLInJhd2NvbnRhY3RwYWlyX251bUNvbnRhY3RNYW5pZm9sZHMAnAsecmF3Y29udGFjdHBhaXJfY29udGFjdE1hbmlmb2xkAPkIGXJhd2NvbnRhY3RtYW5pZm9sZF9ub3JtYWwAjQgbcmF3Y29udGFjdG1hbmlmb2xkX2xvY2FsX24xAI4IG3Jhd2NvbnRhY3RtYW5pZm9sZF9sb2NhbF9uMgCPCBxyYXdjb250YWN0bWFuaWZvbGRfc3Vic2hhcGUxAJ0LHHJhd2NvbnRhY3RtYW5pZm9sZF9zdWJzaGFwZTIAngsfcmF3Y29udGFjdG1hbmlmb2xkX251bV9jb250YWN0cwCfCyNyYXdjb250YWN0bWFuaWZvbGRfY29udGFjdF9sb2NhbF9wMQDrBiNyYXdjb250YWN0bWFuaWZvbGRfY29udGFjdF9sb2NhbF9wMgDsBh9yYXdjb250YWN0bWFuaWZvbGRfY29udGFjdF9kaXN0AJwKH3Jhd2NvbnRhY3RtYW5pZm9sZF9jb250YWN0X2ZpZDEAnQofcmF3Y29udGFjdG1hbmlmb2xkX2NvbnRhY3RfZmlkMgCeCiJyYXdjb250YWN0bWFuaWZvbGRfY29udGFjdF9pbXB1bHNlAJ8KLHJhd2NvbnRhY3RtYW5pZm9sZF9jb250YWN0X3RhbmdlbnRfaW1wdWxzZV94AKAKLHJhd2NvbnRhY3RtYW5pZm9sZF9jb250YWN0X3RhbmdlbnRfaW1wdWxzZV95AKEKJnJhd2NvbnRhY3RtYW5pZm9sZF9udW1fc29sdmVyX2NvbnRhY3RzAKALJ3Jhd2NvbnRhY3RtYW5pZm9sZF9zb2x2ZXJfY29udGFjdF9wb2ludADtBiZyYXdjb250YWN0bWFuaWZvbGRfc29sdmVyX2NvbnRhY3RfZGlzdACiCipyYXdjb250YWN0bWFuaWZvbGRfc29sdmVyX2NvbnRhY3RfZnJpY3Rpb24AgwotcmF3Y29udGFjdG1hbmlmb2xkX3NvbHZlcl9jb250YWN0X3Jlc3RpdHV0aW9uAIQKMnJhd2NvbnRhY3RtYW5pZm9sZF9zb2x2ZXJfY29udGFjdF90YW5nZW50X3ZlbG9jaXR5AI0HHV9fd2JnX3Jhd3BvaW50cHJvamVjdGlvbl9mcmVlAKQJGHJhd3BvaW50cHJvamVjdGlvbl9wb2ludADXCBtyYXdwb2ludHByb2plY3Rpb25faXNJbnNpZGUA/QslX193YmdfcmF3cG9pbnRjb2xsaWRlcnByb2plY3Rpb25fZnJlZQClCSlyYXdwb2ludGNvbGxpZGVycHJvamVjdGlvbl9jb2xsaWRlckhhbmRsZQD+CyByYXdwb2ludGNvbGxpZGVycHJvamVjdGlvbl9wb2ludADYCCNyYXdwb2ludGNvbGxpZGVycHJvamVjdGlvbl9pc0luc2lkZQD/CyZyYXdwb2ludGNvbGxpZGVycHJvamVjdGlvbl9mZWF0dXJlVHlwZQCADCRyYXdwb2ludGNvbGxpZGVycHJvamVjdGlvbl9mZWF0dXJlSWQAqQsdX193YmdfcmF3cmF5aW50ZXJzZWN0aW9uX2ZyZWUApgkcX193YmdfcmF3cmF5Y29sbGlkZXJoaXRfZnJlZQCnCRNfX3diZ19yYXdzaGFwZV9mcmVlAMYHD3Jhd3NoYXBlX2N1Ym9pZACJCxRyYXdzaGFwZV9yb3VuZEN1Ym9pZAD/Cg1yYXdzaGFwZV9iYWxsAKoLEnJhd3NoYXBlX2hhbGZzcGFjZQCdBhByYXdzaGFwZV9jYXBzdWxlAMUJEXJhd3NoYXBlX2N5bGluZGVyAKELFnJhd3NoYXBlX3JvdW5kQ3lsaW5kZXIAigsNcmF3c2hhcGVfY29uZQCiCxJyYXdzaGFwZV9yb3VuZENvbmUAiwsPcmF3c2hhcGVfdm94ZWxzAPAGGXJhd3NoYXBlX3ZveGVsc0Zyb21Qb2ludHMA8QYRcmF3c2hhcGVfcG9seWxpbmUA7gkQcmF3c2hhcGVfdHJpbWVzaACvCRRyYXdzaGFwZV9oZWlnaHRmaWVsZACfBRByYXdzaGFwZV9zZWdtZW50ALsFEXJhd3NoYXBlX3RyaWFuZ2xlAIwEFnJhd3NoYXBlX3JvdW5kVHJpYW5nbGUAigQTcmF3c2hhcGVfY29udmV4SHVsbADvCRhyYXdzaGFwZV9yb3VuZENvbnZleEh1bGwA6AkTcmF3c2hhcGVfY29udmV4TWVzaAC0CRhyYXdzaGFwZV9yb3VuZENvbnZleE1lc2gAsAkScmF3c2hhcGVfY2FzdFNoYXBlAJkBGHJhd3NoYXBlX2ludGVyc2VjdHNTaGFwZQCVAhVyYXdzaGFwZV9jb250YWN0U2hhcGUA1AEWcmF3c2hhcGVfY29udGFpbnNQb2ludACMAxVyYXdzaGFwZV9wcm9qZWN0UG9pbnQA5wIWcmF3c2hhcGVfaW50ZXJzZWN0c1JheQC9AhByYXdzaGFwZV9jYXN0UmF5ALACHHJhd3NoYXBlX2Nhc3RSYXlBbmRHZXROb3JtYWwAlAIaX193YmdfcmF3c2hhcGVjYXN0aGl0X2ZyZWUAqAkYcmF3c2hhcGVjYXN0aGl0X3dpdG5lc3MxANkIF3Jhd3NoYXBlY2FzdGhpdF9ub3JtYWwxANoIF3Jhd3NoYXBlY2FzdGhpdF9ub3JtYWwyANsIIl9fd2JnX3Jhd2NvbGxpZGVyc2hhcGVjYXN0aGl0X2ZyZWUAqQkmcmF3Y29sbGlkZXJzaGFwZWNhc3RoaXRfdGltZV9vZl9pbXBhY3QAgQwgcmF3Y29sbGlkZXJzaGFwZWNhc3RoaXRfd2l0bmVzczEA3AggcmF3Y29sbGlkZXJzaGFwZWNhc3RoaXRfd2l0bmVzczIA3QgPcmF3cm90YXRpb25fbmV3ALAMFHJhd3JvdGF0aW9uX2lkZW50aXR5AP4MDXJhd3JvdGF0aW9uX3cAggwOcmF3dmVjdG9yX3plcm8Arw0NcmF3dmVjdG9yX25ldwC+DA9yYXd2ZWN0b3Jfc2V0X3kAogwPcmF3dmVjdG9yX3NldF96AKMMDXJhd3ZlY3Rvcl94eXoA0QkNcmF3dmVjdG9yX3l4egDSCQ1yYXd2ZWN0b3Jfenh5ANMJDXJhd3ZlY3Rvcl94enkA1AkNcmF3dmVjdG9yX3l6eADVCQ1yYXd2ZWN0b3Jfenl4ANYJFnJhd3NkcG1hdHJpeDNfZWxlbWVudHMAogghX193YmdfcmF3ZGVidWdyZW5kZXJwaXBlbGluZV9mcmVlAMsHGnJhd2RlYnVncmVuZGVycGlwZWxpbmVfbmV3AOkJH3Jhd2RlYnVncmVuZGVycGlwZWxpbmVfdmVydGljZXMA8ggdcmF3ZGVidWdyZW5kZXJwaXBlbGluZV9jb2xvcnMA8wgdcmF3ZGVidWdyZW5kZXJwaXBlbGluZV9yZW5kZXIAjgIYX193YmdfcmF3ZXZlbnRxdWV1ZV9mcmVlAMwHH19fd2JnX3Jhd2NvbnRhY3Rmb3JjZWV2ZW50X2ZyZWUAqgkecmF3Y29udGFjdGZvcmNlZXZlbnRfY29sbGlkZXIyAIMMIHJhd2NvbnRhY3Rmb3JjZWV2ZW50X3RvdGFsX2ZvcmNlAN4IKnJhd2NvbnRhY3Rmb3JjZWV2ZW50X3RvdGFsX2ZvcmNlX21hZ25pdHVkZQCEDChyYXdjb250YWN0Zm9yY2VldmVudF9tYXhfZm9yY2VfZGlyZWN0aW9uAN8IKHJhd2NvbnRhY3Rmb3JjZWV2ZW50X21heF9mb3JjZV9tYWduaXR1ZGUAhQwRcmF3ZXZlbnRxdWV1ZV9uZXcA0woicmF3ZXZlbnRxdWV1ZV9kcmFpbkNvbGxpc2lvbkV2ZW50cwC7CSVyYXdldmVudHF1ZXVlX2RyYWluQ29udGFjdEZvcmNlRXZlbnRzALwJE3Jhd2V2ZW50cXVldWVfY2xlYXIA5AcdX193YmdfcmF3cGh5c2ljc3BpcGVsaW5lX2ZyZWUAzQcWcmF3cGh5c2ljc3BpcGVsaW5lX25ldwCoBCdyYXdwaHlzaWNzcGlwZWxpbmVfc2V0X3Byb2ZpbGVyX2VuYWJsZWQAjgwmcmF3cGh5c2ljc3BpcGVsaW5lX2lzX3Byb2ZpbGVyX2VuYWJsZWQAhgwecmF3cGh5c2ljc3BpcGVsaW5lX3RpbWluZ19zdGVwAIwLLXJhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfY29sbGlzaW9uX2RldGVjdGlvbgDaCiVyYXdwaHlzaWNzcGlwZWxpbmVfdGltaW5nX2Jyb2FkX3BoYXNlANsKJnJhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfbmFycm93X3BoYXNlANwKIHJhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfc29sdmVyAN0KK3Jhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfdmVsb2NpdHlfYXNzZW1ibHkAjQstcmF3cGh5c2ljc3BpcGVsaW5lX3RpbWluZ192ZWxvY2l0eV9yZXNvbHV0aW9uAN4KKXJhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfdmVsb2NpdHlfdXBkYXRlAN8KLHJhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfdmVsb2NpdHlfd3JpdGViYWNrAI4LHXJhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfY2NkAOAKLXJhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfY2NkX3RvaV9jb21wdXRhdGlvbgCPCylyYXdwaHlzaWNzcGlwZWxpbmVfdGltaW5nX2NjZF9icm9hZF9waGFzZQCQCypyYXdwaHlzaWNzcGlwZWxpbmVfdGltaW5nX2NjZF9uYXJyb3dfcGhhc2UAkQskcmF3cGh5c2ljc3BpcGVsaW5lX3RpbWluZ19jY2Rfc29sdmVyAJILLXJhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfaXNsYW5kX2NvbnN0cnVjdGlvbgDhCiZyYXdwaHlzaWNzcGlwZWxpbmVfdGltaW5nX3VzZXJfY2hhbmdlcwCTCxdyYXdwaHlzaWNzcGlwZWxpbmVfc3RlcADGASFyYXdwaHlzaWNzcGlwZWxpbmVfc3RlcFdpdGhFdmVudHMAuAEfX193YmdfcmF3ZGVzZXJpYWxpemVkd29ybGRfZnJlZQDwByByYXdkZXNlcmlhbGl6ZWR3b3JsZF90YWtlR3Jhdml0eQCWCC5yYXdkZXNlcmlhbGl6ZWR3b3JsZF90YWtlSW50ZWdyYXRpb25QYXJhbWV0ZXJzAOkFJnJhd2Rlc2VyaWFsaXplZHdvcmxkX3Rha2VJc2xhbmRNYW5hZ2VyAJ4GI3Jhd2Rlc2VyaWFsaXplZHdvcmxkX3Rha2VCcm9hZFBoYXNlAOUHJHJhd2Rlc2VyaWFsaXplZHdvcmxkX3Rha2VOYXJyb3dQaGFzZQDgBh9yYXdkZXNlcmlhbGl6ZWR3b3JsZF90YWtlQm9kaWVzAOQGInJhd2Rlc2VyaWFsaXplZHdvcmxkX3Rha2VDb2xsaWRlcnMAsgcmcmF3ZGVzZXJpYWxpemVkd29ybGRfdGFrZUltcHVsc2VKb2ludHMAvAUocmF3ZGVzZXJpYWxpemVkd29ybGRfdGFrZU11bHRpYm9keUpvaW50cwC9BSVyYXdzZXJpYWxpemF0aW9ucGlwZWxpbmVfc2VyaWFsaXplQWxsAMABJ3Jhd3NlcmlhbGl6YXRpb25waXBlbGluZV9kZXNlcmlhbGl6ZUFsbADQBhxyYXdjb2xsaWRlcnNldF9pc0hhbmRsZVZhbGlkAPEIHHJhd3JheWludGVyc2VjdGlvbl9mZWF0dXJlSWQAqQskcmF3cmF5Y29sbGlkZXJpbnRlcnNlY3Rpb25fZmVhdHVyZUlkAKkLNXJhd2ludGVncmF0aW9ucGFyYW1ldGVyc19zZXRfbnVtSW50ZXJuYWxQZ3NJdGVyYXRpb25zAJgMD3Jhd3ZlY3Rvcl9zZXRfeACaDA5yZXNlcnZlX21lbW9yeQC4CyJyYXdraW5lbWF0aWNjaGFyYWN0ZXJjb250cm9sbGVyX3VwAM4IF3Jhd3NoYXBlY29udGFjdF9ub3JtYWwyAM4IFnJhd3NoYXBlY29udGFjdF9wb2ludDEA1wgWcmF3c2hhcGVjb250YWN0X3BvaW50MgDcCBlyYXdyYXlpbnRlcnNlY3Rpb25fbm9ybWFsANwIIXJhd3JheWNvbGxpZGVyaW50ZXJzZWN0aW9uX25vcm1hbADcCBdyYXdzaGFwZWNvbnRhY3Rfbm9ybWFsMQDdCB9yYXdjb2xsaWRlcnNoYXBlY2FzdGhpdF9ub3JtYWwxAM4IH3Jhd2NvbGxpZGVyc2hhcGVjYXN0aGl0X25vcm1hbDIAzwgYcmF3c2hhcGVjYXN0aGl0X3dpdG5lc3MyAN4IMXJhd2ludGVncmF0aW9ucGFyYW1ldGVyc19udW1JbnRlcm5hbFBnc0l0ZXJhdGlvbnMA8gsYcmF3c2hhcGVjb250YWN0X2Rpc3RhbmNlAOkLHnJhd3JheWludGVyc2VjdGlvbl9mZWF0dXJlVHlwZQCADClyYXdyYXljb2xsaWRlcmludGVyc2VjdGlvbl9jb2xsaWRlckhhbmRsZQD+CyFyYXdyYXlpbnRlcnNlY3Rpb25fdGltZV9vZl9pbXBhY3QAgQwmcmF3cmF5Y29sbGlkZXJpbnRlcnNlY3Rpb25fZmVhdHVyZVR5cGUAgAwgcmF3cmF5Y29sbGlkZXJoaXRfY29sbGlkZXJIYW5kbGUA7gspcmF3cmF5Y29sbGlkZXJpbnRlcnNlY3Rpb25fdGltZV9vZl9pbXBhY3QAgQwecmF3c2hhcGVjYXN0aGl0X3RpbWVfb2ZfaW1wYWN0APULJnJhd2NvbGxpZGVyc2hhcGVjYXN0aGl0X2NvbGxpZGVySGFuZGxlAO4LHnJhd3JheWNvbGxpZGVyaGl0X3RpbWVPZkltcGFjdACBDA1yYXdyb3RhdGlvbl94APULDXJhd3JvdGF0aW9uX3kA5gsNcmF3cm90YXRpb25fegCBDAtyYXd2ZWN0b3JfeAD1CwtyYXd2ZWN0b3JfeQDmCwtyYXd2ZWN0b3JfegCBDB5yYXdjb250YWN0Zm9yY2VldmVudF9jb2xsaWRlcjEA7gsjcmF3aW50ZWdyYXRpb25wYXJhbWV0ZXJzX2xlbmd0aFVuaXQAhAwZX193YmdfcmF3Y29udGFjdHBhaXJfZnJlZQCjCSVfX3diZ19yYXdyYXljb2xsaWRlcmludGVyc2VjdGlvbl9mcmVlAKUJFl9fd2JnX3Jhd3JvdGF0aW9uX2ZyZWUApAkUX193YmdfcmF3dmVjdG9yX2ZyZWUApwkYX193YmdfcmF3c2RwbWF0cml4M19mcmVlAKYJI19fd2JnX3Jhd3NlcmlhbGl6YXRpb25waXBlbGluZV9mcmVlAJ8JEHJhd2NjZHNvbHZlcl9uZXcArg0ccmF3c2VyaWFsaXphdGlvbnBpcGVsaW5lX25ldwCuDRNfX3diaW5kZ2VuX2V4cG9ydF8wAJwOH19fd2JpbmRnZW5fYWRkX3RvX3N0YWNrX3BvaW50ZXIA9A4TX193YmluZGdlbl9leHBvcnRfMQDzDRNfX3diaW5kZ2VuX2V4cG9ydF8yAKENCdwRAQBBAQv3CIkO4wK8DLAP5Q75DvcO9Q72Dv0M+g6vDLQLng2eDbAFsAXlDMEP+wj7COQD5QOUB/sO5wmr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IAEgCUEYayILNgIEIAEgAkEYajYCACALQQNNBEAgA0EAOgCTDCADQSU7AJEMIANBADYClAwgA0EBOgCQDCADQZAMahCfDQwBCyACKAAUIUQgASAJQRxrIgs2AgQgASACQRxqNgIAIAtBA00EQCADQQA6AJMMIANBJTsAkQwgA0EANgKUDCADQQE6AJAMIANBkAxqEJ8NDAELIAIoABghRSABIAlBIGsiCzYCBCABIAJBIGo2AgAgA0ELNgL0AiALQQNNBEAgA0EAOgCTDCADQSU7AJEMIANBADYClAwgA0EBOgCQDCADQZAMahCfDQwBCyACKAAcIUYgASAJQSRrNgIEIAEgAkEkajYCACACKAAgIUcgA0GQDGoiCSADQfACaiILELoJIAMoApQMIkggAygCkAwiCEECRg0AGiAIQQFxBEAgCSALELoJIAMoApQMIkkgAygCkAwiCEECRg0BGgJAIAhBAXEEQCAJIAsQugkgAygClAwhOSADKAKQDCICQQJHDQEgOQwDC0EHQaS1wQBBkK3BABCoCgwCCwJAIAJBAXEEQCADQZAMaiADQfACahC6CSADKAKUDCE6IAMoApAMIgJBAkcNASA6DAMLQQhBpLXBAEGQrcEAEKgKDAILAkAgAkEBcQRAIANBkAxqIANB8AJqELoJIAMoApQMITsgAygCkAwiAkECRw0BIDsMAwtBCUGktcEAQZCtwQAQqAoMAgsCQCACQQFxBEAgA0GQDGogA0HwAmoQ5AggAygClAwhPCADKAKQDCICQQJHDQEgPAwDC0EKQaS1wQBBkK3BABCoCgwCCwJAIAJBAXEEQCADQZAMaiADQfACahDkCCADKAKUDCE9IAMoApAMIgJBAkcNASA9DAMLQQtBpLXBAEGQrcEAEKgKDAILAkAgAkEBcQRAIANBkAxqIANB8AJqEOQIIAMoApQMIT4gAygCkAwiAkECRw0BID4MAwtBDEGktcEAQZCtwQAQqAoMAgsCQCACQQFxBEAgA0GQDGogA0HwAmoQ5AggAygClAwhPyADKAKQDCICQQJHDQEgPwwDC0ENQaS1wQBBkK3BABCoCgwCCwJAIAJBAXEEQCADQZAMaiADQfACahDkCCADKAKUDCFAIAMoApAMIgJBAkcNASBADAMLQQ5BpLXBAEGQrcEAEKgKDAILAkAgAkEBcQRAIANB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DQALIANCgcoANwOYCiADQZgKahCfDSECDA0LIANBADoAmwogA0ElOwCZCiADQQA2ApwKIANBAToAmAogA0GYCmoQnw0hAgwMCyADQQA6AJsKIANBJTsAmQogA0EANgKcCiADQQE6AJgKIANBmApqEJ8NIQIMCwsgA0EAOgCbCiADQSU7AJkKIANBADYCnAogA0EBOgCYCiADQZgKahCfDSECDAoLIANBADoAmwogA0ElOwCZCiADQQA2ApwKIANBAToAmAogA0GYCmoQnw0hAgwJCyADQQA6AJsKIANBJTsAmQogA0EANgKcCiADQQE6AJgKIANBmApqEJ8NIQIMCAsgA0EAOgCbCiADQSU7AJkKIANBADYCnAogA0EBOgCYCiADQZgKahCfDSECDAcLIANBADoAmwogA0ElOwCZCiADQQA2ApwKIANBAToAmAogA0GYCmoQnw0hAgwGCyADQQA6AJsKIANBJTsAmQogA0EANgKcCiADQQE6AJgKIANBmApqEJ8NIQIMBQsgGyECDAQLIANBADoAmwogA0ElOwCZCiADQQA2ApwKIANBAToAmAogA0GYCmoQnw0hFAwBC0EEQfTXwQBBkK3BABCoCiEBIABBAjYCxAcgACABNgIADA4LIBoEQCAaQTBBBBDoDgsgFCECDAELIANBADoAmwogA0ElOwCZCiADQQA2ApwKIANBAToAmAogA0GYCmoQnw0hAgsgAygC7BEhCSAQBEAgCSEBA0ACQCABKAIARQ0AIAFBxAJqKAIAIgsEQCALQTBBBBDoDgsgAUHoAmooAgAiC0UNACABQewCaigCACALQQN0QQQQ6A4LIAFBgANqIQEgEEEBayIQDQALCyADKALoESIBRQ0EIAkgAUGAA2xBEBDoDgwECwJAAkACQAJAIAwoAgQiAkEETwRAIAwgAkEEayIJNgIEIAwgDCgCACIBQQRqNgIAIAlFBEAgA0KBygA3A5gKIANBmApqEJ8NIQIMBAsgATUAACFmIAwgAkEFayITNgIEIAwgAUEFaiIaNgIAAkACQCABLQAEIg4OAgQAAQsgCUEESw0CIANCgcoANwOYCiADQZgKahCfDSECDAQLQQxBBBCRDiICRQ0bIAIgDjYCBCACQYSAgIB4NgIADAMLIANCgcoANwOYCiADQZgKahCfDSECDAILIAwgAkEJayIT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AgJAIANB////H0sNACAJQfz///8HSw0AIAsoAoABIQUCQCAJRQRAQQQhAEEAIQQMAQtBBCECIAMhBCAJQQQQkQ4iAEUNAQsgCQRAIAAgBSAJ/AoAAAsgC0EANgKEASAMQaQGaiIGKgIAISIgDCoC3AYhJiAMKgLQBiEoIAwqApwGISogDCoCoAYhISAMKgLYBiEjIAwqAtQGISUgDEEgaiAGKAIANgIAIAwgDCkCnAY3AxggDEHYAWoiAiAIIAxBGGoiBRChDyAMICYgKiAllCAhICiUkyIKIAqSIimUICggIiAolCAqICOUkyIKIAqSIiSUICUgISAjlCAiICWUkyIKIAqSIgqUk5IgIpMiIjgCkAQgDCAmICSUICMgCpQgKCAplJOSICGTIiE4AowEIAwgJiAKlCAlICmUICMgJJSTkiAqkyIKOAKIBCAFIAcgDEGIBGoQoQ8gASAMQZgGakEEciACIAUgC0EAECsgCyAiOAKcASALICE4ApgBIAsgCjgClAEgC0GQAWogBigCADYCACALIAwpApwGNwKIAQJAIAsoAoQBIgFFDQAgA0UNACALKAKAASICIAFBBnRqIQggACADQQZ0aiEHIABBJGohCyAAQUBrIQEgCUFAaiIGQcAAcSEDA0AgAkEkaiEOIAIoAhwhCSAAIQUCQCADDQAgASEFIAkgACgCHEcNACACKAIgIAAoAiBHDQAgDiAL/QACAP0LAgAgDkEYaiALQRhqKAIANgIAIA5BEGogC0EQaikCADcCAAsgBgRAA0ACQCAJIAVBHGooAgBHDQAgAigCICAFQSBqKAIARw0AIA5BGGogBUE8aigCADYCACAOQRBqIAVBNGopAgA3AgAgDiAFQSRq/QACAP0LAgALAkAgCSAFQdwAaigCAEcNACACKAIgIAVB4ABqKAIARw0AIA5BGGogBUH8AGooAgA2AgAgDkEQaiAFQfQAaikCADcCACAOIAVB5ABq/QACAP0LAgALIAcgBUGAAWoiBUcNAAsLIAggAkFAayICRw0ACwsgBEUNAyAAIARBBnRBBBDoDgwDCyACIAlBgPzBABDXDQALIAsgKTgCnAEgCyAkOAKYASALICE4ApQBIAsgIzgCkAEgCyAiOAKMASALIAo4AogBDAELIAtBADYChAELIAxBkAhqJAAgDQvThAEEH38RfQN+AXsj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JEHcAGogAiASQQRByAAQ1wYgJCgCZCEPCyApKAJgIA9ByABsaiEBIBJBAk8EQCAmIAJBf3NqIg5BAXEhECACICZBAmtHBEAgDkF+cSEOA0AgAUIANwIAIAFBCGpCfzcCACABQRBqQn83AgAgAUEYakJ/NwIAIAFBIGpBfzYCACABQdAAakJ/NwIAIAFByABqQgA3AgAgAUHEAGpBADsBACABQTRq/Qz//39///9/f///f3///39//QsCACABQSRq/QwAAAAA//9/////f3///39//QsCACABQdgAakJ/NwIAIAFB4ABqQn83AgAgAUHoAGpBfzYCACABQYwBakEAOwEAIAFB/ABq/Qz//39///9/f///f3///39//QsCACABQewAav0MAAAAAP//f////39///9/f/0LAgAgAUGQAWohASAOQQJrIg4NAAsLIA8gEmpBAWshDyAQBEAgAUJ/NwIIIAFCADcCACABQQA7AUQgAf0M//9/f///f3///39///9/f/0LAjQgAf0MAAAAAP//f////39///9/f/0LAiQgAUEQakJ/NwIAIAFBGGpCfzcCACABQSBqQX82AgAgAUHIAGohAQsLIAFCfzcCCCABQgA3AgAgAUEAOwFEIAH9DP//f3///39///9/f///f3/9CwI0IAH9DAAAAAD//3////9/f///f3/9CwIkIAFBEGpCfzcCACABQRhqQn83AgAgAUEgakF/NgIAIA9BAWohJgsgKSAmNgJkIBVBoApqJAAMAwsgGiBnQciOwgAQ8A4AC0HQi8IAQRNB2MfCABDRCwALQdCLwgBBE0Hox8IAENELAAsgF0HgAmoiARC6CiAXQbAEaiABIKkCIIMBEOQJIAApA3gingIgFykDsAR8Ip0CIJ4CVA0aIAAoAoABIBcoArgEaiIBQYCU69wDTwRAIJ0CQn9RDRsgnQJCAXwhnQIgAUGAlOvcA2shAQsgACABNgKAASAAIJ0CNwN4IABBgJTr3AM2AnAgF0GwBGoQugogFykDsAQhnQIgACAXKAK4BCICNgJQIAAgnQI3A0gghAENAQwYC0GwssIAEPIOAAsgLigC6AIiASAuKALQAiIQIAEgEEkbISYgLigC5AIhRCAuKALMAiFHIC4oAvgCIoYBIC4oAogDIgFHDRUgLkHsAmohYkMAAAAAQwAAgD9DAACA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IAH9HAEh0gFCACGdAkIAIaACIDtFBEAgGSkDOCGgAiAZKQMwIZ0CCyDiASDpAf0NAAECAwQFBgccHR4fAAECAyHiASDgASDpAf0NAAECAwQFBgcYGRobAAECAyHgASDoASDpAf0NAAECAwQFBgcUFRYXAAECAyHoASDhASDpAf0NAAECAwQFBgcQERITAAECAyHhASDeASDwAf0NAAECAwQFBgcQERITAAECAyHeASDcASDXAf0NAAECAwQFBgcQERITAAECAyHcASDdASDmAf0NAAECAwQFBgcQERITAAECAyHdASDaASDwAf0NAAECAwQFBgcYGRobAAECAyHaASDfASDwAf0NAAECAwQFBgcUFRYXAAECAyHfASDZASDXAf0NAAECAwQFBgcYGRobAAECAyHZASDbASDXAf0NAAECAwQFBgcUFRYXAAECAyHbASDYASDmAf0NAAECAwQFBgcUFRYXAAECAyHYASDWASDwAf0NAAECAwQFBgccHR4fAAECAyHWASDVASDXAf0NAAECAwQFBgccHR4fAAECAyHVASDTASDmAf0NAAECAwQFBgcYGRobAAECAyHTASDSASDmAf0NAAECAwQFBgccHR4fAAECAyHSAf0MAAAAAAAAAAAAAAAAAAAAACHXAf0MAAAAAAAAAAAAAAAAAAAAACGBAiAzRQRAICv9AAQwIYECCyDiASDjAf0NAAECAwQFBgcICQoLHB0eHyH2ASDgASDjAf0NAAECAwQFBgcICQoLGBkaGyGGAiDoASDjAf0NAAECAwQFBgcICQoLFBUWFyH+ASDhASDjAf0NAAECAwQFBgcICQoLEBESEyH/ASDeASDyAf0NAAECAwQFBgcICQoLEBESEyH9ASDcASCSAv0NAAECAwQFBgcICQoLEBESEyH7ASDdASD0Af0NAAECAwQFBgcICQoLEBESEyHkASDaASDyAf0NAAECAwQFBgcICQoLGBkaGyHxASDfASDyAf0NAAECAwQFBgcICQoLFBUWFyH3ASDZASCSAv0NAAECAwQFBgcICQoLGBkaGyGEAiDbASCSAv0NAAECAwQFBgcICQoLFBUWFyHrASDYASD0Af0NAAECAwQFBgcICQoLFBUWFyHqASDWASDyAf0NAAECAwQFBgcICQoLHB0eHyHlASDVASCSAv0NAAECAwQFBgcICQoL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ACHUASACQRBq/QAEACHVASACQeAAav0ABAAh4AEgAkHQAGr9AAQAIYQCIAJBQGv9AAQAIesBIAJBkAFq/QAEACHmASACQYABav0ABAAh4wEgAkHwAGr9AAQAIekBIBdBsARq/QwAAAAAAAAAAAAAAAAAAAAA/QsEACAX/QAEsAQh0wEgDyAeaiIgQeADaiIC/QAEACHXASACIJMCINcB/eYB/QsEACAgQfADaiICINcBIAL9AAQA/eQB/QsEACAgQdADaiDYASCUAv0MAAAAAAAAAAAAAAAAAAAAACDWASD3ASDzASDSAf3mASDgASCEAiD2Af3mASDrASD/Af3mAf3lASLSASDSAf3kASLlASDuAf3mASDrASD+Af3mASDgASD2Af3mAf3lASLSASDSAf3kASLiASD2Af3mASDgASD/Af3mASCEAiD+Af3mAf3lASLSASDSAf3kASLgASD/Af3mAf3lAf3kAf3kASDhAf3kAf3kASDmASDjASDvAf3mASDpASD6Af3mAf3lASLSASDSAf3kASLXASD7Af3mASDpASD4Af3mASDmASDvAf3mAf3lASLSASDSAf3kASLYASDvAf3mASDmASD6Af3mASDjASD4Af3mAf3lASLSASDSAf3kASLSASD6Af3mAf3lAf3kAf3kASDdAf3kAf3lASLWAf3mASD9ASDzASDUAf3mASDrASDgASDuAf3mASDlASD/Af3mASDiASD+Af3mAf3lAf3kAf3kASDoAf3kAf3kASDpASDSASD7Af3mASDXASD6Af3mASDYASD4Af3mAf3lAf3kAf3kASDcAf3kAf3lASLUAf3mASDxASDzASDVAf3mASCEAiDiASDuAf3mASDgASD+Af3mASDlASD2Af3mAf3lAf3kAf3kASDeAf3kAf3kASDjASDYASD7Af3mASDSASD4Af3mASDXASDvAf3mAf3lAf3kAf3kASDaAf3kAf3lASLVAf3mAf3kAf3kAf3kASLYAf0MAAAAAAAAAAAAAAAAAAAAAP3rASDYASDYAf1C/VL95gH95AEi0gH9CwQAICBBwANqINIBINMBIJkC/eUBItIB/QwAAAAAAAAAAAAAAAAAAAAAIJgCIJsCINgB/eQB/eYBItMB/QwAAAAAAAAAAAAAAAAAAAAA/eoBINMBINMB/UL9UiLTASDSAf3rASDT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IBD9AASQECHxASAQ/QAE0A0h9wEgEP0ABIAOIeoBIBD9AASgECHlASAQ/QAE4A0h3wEgEP0ABJAOIdkBIBD9AARgIeIBIBD9AARwIeABIBD9AASAASHoASAQ/QAE0A8h2AEgEP0ABOAPIdMBIBD9AATAECGHAiAQ/QAE8A8h0gEgJSCFAiDWASCRAiCAAv3mASD8ASDbASCQAv3mASCPAiCSAv3mAf3lASLWAf3mAf3kAf3mAf3kASKNAv0LBEAgJSDcASDVASCQAiCAAv3mASD8ASCGAiCPAv3mASDbASCRAv3mAf3lASLVAf3mAf3kAf3mAf3kASLbAf0LBDAgJf0AAjQh4QEgJf0AAzgh3gEgJf0AAjwh3AEgJSDUASCAAiCEAv3mASD8ASDdAf3mAf3kAf3kASDSASCHAv3mAf3kASKJAv1aAigCICUgiQL9WwMgACAlINcBIIACIO4B/eYBIPwBIPsB/eYB/eQB/eQBINMBIIcC/eYB/eQBItMB/QsEECCDAiDzASCPAiCAAv3mASD8ASCRAiCSAv3mASCGAiCQAv3mAf3lASLSAf3mAf3kAf3mAf3kASHuASCOAiCAAiD6Af3mASD8ASDvAf3mAf3kAf3kASDYASCHAv3mAf3kASH7ASDWASDaASD8Af3lASKEAv3mASHdASDjASDrASCAAv3lASLjAf3mASHYASDVASCEAv3mASHXASDjASDmAf3mASHWASD8ASDZAf3mASHaASCAAiDfAf3mASHUASD8ASDqAf3mASHfASCAAiD3Af3mASHVASABIChJDQEMAgsgAUEEQZinwgAQ8A4ACyAdIAFBBXRqIgEg0wEgiQL9DQABAgMQERITAAECAwABAgMg/gH9DQABAgMEBQYHEBESEwABAgMg/wH9DQABAgMEBQYHCAkKCxAREhP9CwQQIAEg2wEgjQL9DQABAgMQERITAAECAwABAgMg7gH9DQABAgMEBQYHEBESEwABAgMg+wH9DQABAgMEBQYHCAkKCxAREhP9CwQACyDSASCEAv3mASHZASDjASDpAf3mASHTASD8ASDkAf3mASHbASCAAiD9Af3mASHSASDYASDdAf3kASHYASDWASDXAf3kASHWASDUASDaAf3kASHUASDVASDfAf3kASHVASACIChJBEAgHSACQQV0aiIBICX9AAIUIIkC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H0EBaw4CAQACCyACIBJqQaQBaiDSAf0fADgCAAwCCyACICZqQRhqINIB/R8AOAIADAELIAIgIUECdGpB0AJqINIB/R8AOAIACyBAIBgoAiQiAk0NASA3IAJBgANsaiECAkACQAJAAkAgH0EBaw4CAQACCyACIBJqQaQBaiDSAf0fATgCAAwCCyACICZqQRhqINIB/R8BOAIADAELIAIgIUECdGpB0AJqINIB/R8BOAIACyBAIBgoAigiAk0NASA3IAJBgANsaiECAkACQAJAAkAgH0EBaw4CAQACCyACIBJqQaQBaiDSAf0fAjgCAAwCCyACICZqQRhqINIB/R8COAIADAELIAIgIUECdGpB0AJqINIB/R8COAIACyBAIBgoAiwiAk0NASA3IAJBgANsaiECAkACQAJAAkAgH0EBaw4CAQACCyACIBJqQaQBaiDSAf0fAzgCAAwCCyACICZqQRhqINIB/R8DOAIADAELIAIgIUECdGpB0AJqINIB/R8DOAIACyAeQSBqJAAMBQsgAiBATw0AIB9BAWsOAgIDAQsgAiBAQdCxwgAQhQsACyAeQQA2AhggHkEBNgIMIB5B7IDCADYCCCAeQgQ3AhAgHkEIakHgscIAELkNAAsgIUEGQfCxwgAQhQsACyAhQQZBgLLCABCFCwALIBhBkARqIRhBACECDAELCyMAQSBrIgIkAAJAAkACQAJAAkACQAJAIBooAhAiASBASQRAIDcgAUGAA2xqIQEgGigCBCESIBooAgBBAWsOAgIDAQsgASBAQeCwwgAQhQsACyASQQZPDQIgASASQQJ0akHQAmogGioCFDgCAAwFCyASQQZJDQMgEkEGQYCxwgAQhQsACyASQQZJDQEgEkEGQZCxwgAQhQsACyACQQA2AhggAkEBNgIMIAJB7IDCADYCCCACQgQ3AhAgAkEIakHwsMIAELkNAAsgASASQRxsakGkAWogGioCFDgCAAwBCyABIBJBDGxqQRhqIBoqAhQ4AgALIAJBIGokACAaQYgBaiEaDAELCyAuKAJ4IhggLigCfEGAEmxqITYgLigCbCIaIC4oAnBBsB1saiFBIC4oAmAiECAuKAJkQbgHbGohQgNAIBogQUchEkEBIQICQANAAkAgAkEBcQRAAkAgEEUNACAQIEJGDQAgECA8ICwQywMgEEG4B2ohAgNAIAIg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IAYoAogDIRQgBigCjAMhAkEAIREDQCAcKAIAIgEgAk8NECAUIAFBgANsaiIBKAIAQQFHDRAgASgCBCAcQQRqKAIARw0QIAEtAD0EQCABILEBIAEqApgBIqABIKABlCABKgKcASKgASCgAZSSIAEqAqABIqABIKABlJKRIAEqAjQgASoCpAEioAEgoAGUIAEqAqgBIqABIKABlJIgASoCrAEioAEgoAGUkpGUkpQgASoCMEMAACBBlV4iAToAPCABIBFyIRELIA8gHEEIaiIcRw0ACyARQQFxRQ0HICJBkAFqIi4QugogIigCmAEhPSAAICIpA5ABIqECNwPQAUEAIQJBACEUQQAhDiMAQdAEayIWJAAgIkEwaiIBKgIAIaABIBZCidm54o7TvpcINwMoIBZByOfBAP0AAwAi0gH9CwMYIBZBADYCPCAWQoCAgIDAADcCNCAWQonZueKO076XCDcDUCAWINIB/QsDQCAHKAIQIjpBsAFsIRAgASoCHEMK1yM8lCGaASAGKAKIAyEcIAYoAowDIRIgBygCDCEzQQAhAQNAAkACQAJAAkAgAiAQRwRAIAIgM2oiEygCAEUNAyATQfIAai0AAA0DIBNBIGooAgBFDQMCQCATQSRqKAIAIhEgEk8NACAcIBFBgANsaiIRKAIAQQFHDQAgESgCBCATQShqKAIARg0CC0HQi8IAQRNB+MDCABDRCwALIBYgBzYCtAEgFiAGNgKwASAWIAQ2AqwBIBZCADcCmAEgFkEANgKMASAWQQA2AoABIBZBADYCdCAWIAUoAkAiTzYCqAEgFiAFKAI8IE8oAghBAWtBeHFqQQhqIkc2AqQBIKABIZkBIAMoAggiAkUNASADKAIEIgEgAkEDdGohNiABQQhqIQIgFkGwAmohQCAFKAIUITIgBSgCECE+IAUoAgQhICAFKAIIIUUgBSgCOCFBIAUoAjQhLSAWQZgEaiEkIAYoAogDISwgBigCjAMhPCBPQSBqISEDQAJAIAEoAgAiESA8Tw0AICwgEUGAA2xqIhEoAgBBAUcNACARKAIEIAEoAgRHDQAgAiETAkAgES0APEUNACARKgKkASGkASARKgLoASGjASARKgKoASGlASARKgLsASGrASARKgL0ASGtASARKgKsASGhASARKgLEASGqASARKgL8ASGiASARKgK8ASGuASAR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BEAgACACQQRBAUEBENYGIAAoAgghAgsgACgCBCACakEMNgAAIAAgAkEEaiICNgIIIANBBGoqAgAhDiADKgIAIQ8gACgCACACa0EDTQRAIAAgAkEEQQFBARDWBiAAKAIIIQILIAAoAgQgAmogDzgAACAAIAJBBGoiAjYCCCAAKAIAIAJrQQNNBEAgACACQQRBAUEBENYGIAAoAgghAgsgACACQQRqNgIIIAAoAgQgAmogDjgAAEEAIQAMBgsgCCgCCCEDIAEoAgAiACgCCCECIAAoAgAgAmtBA00EQCAAIAJBBEEBQQEQ1gYgACgCCCECCyAAIAJBBGo2AgggACgCBCACakELNgAAIAMgARDWASEADAULIAEoAgAiACgCCCECIAAoAgAgAmtBA00EQCAAIAJBBEEBQQEQ1gYgACgCCCECCyAAIAJBBGo2AgggACgCBCACakEKNgAAIAgoAggiBEEEaigCACECIARBCGooAgAiBa0hCiABKAIAIgAoAgghAyAAKAIAIANrQQdNBEAgACADQQhBAUEBENYGIAAoAgghAwsgACADQQhqNgIIIAAoAgQgA2ogCjcAACAFQSRsIQMDQCADBEAgASACEM4GIgANBiACQRBqIAEQkAgiAA0GIANBJGshAyACQRxqIQAgAkEkaiECIAAgARAtIgBFDQEMBgsLIAEgBEEMahDxASIADQQgBEE4aigCACECIARBPGooAgAiBa0hCiABKAIAIgAoAgghAyAAKAIAIANrQQdNBEAgACADQQhBAUEBENYGIAAoAgghAwsgACADQQhqNgIIIAAoAgQgA2ogCjcAACAFQRhsIQMDQCADBEAgAiABEJAIIgANBiADQRhrIQMgAkEMaiEAIAJBGGohAiAAIAEQkAgiAEUNAQwGCwsgBEFAayABEJAIIgANBCAEQcwAaiABEJAIIQAMBAsgCCgCCCEGIAEoAgAiAigCCCEAIAIoAgAgAGtBA00EQCACIABBBEEBQQEQ1gYgAigCCCEACyACIABBBGo2AgggAigCBCAAakEJNgAAIAEgBhDkBSIADQMgBigCGCEDIAYoAhwiBa0hCiACKAIAIAIoAggiBGtBB00EQCACIARBCEEBQQEQ1gYgAigCCCEECyACIARBCGoiADYCCCACKAIEIARqIAo3AAAgBQRAA0AgAy0AACEHIANBAWohAyACIAAgAigCAEcEfyAABSACIABBAUEBQQEQ1gYgAigCCAsiBEEBaiIANgIIIAIoAgQgBGogBzoAACAFQQFrIgUNAAsLIAY1AiAhCiACKAIAIABrQQdNBEAgAiAAQQhBAUEBENYGIAIoAgghAAsgAigCBCAAaiAKNwAAIAIgAEEIaiIANgIIIAY1AiQhCiACKAIAIABrQQdNBEAgAiAAQQhBAUEBENYGIAIoAgghAAsgAiAAQQhqNgIIIAIoAgQgAGogCjcAACAGQShqIAEQkAgiAA0DIAZBNGogARCQCCIADQMgBkFAayABEJAIIgANAyAGKAJMIQIgASgCACIAKAIIIQMgACgCACADa0EHTQRAIAAgA0EIQQFBARDWBiAAKAIIIQMLIAAgA0EIajYCCCAAKAIEIANqIAKtNwAAIAEgBi0AUBC2DCEADAMLIAgoAgghAyABKAIAIgAoAgghAiAAKAIAIAJrQQNNBEAgACACQQRBAUEBENYGIAAoAgghAgsgACACQQRqNgIIIAAoAgQgAmpBCDYAACADIAEQkAghAAwCCyAIKAIIIQQgASgCACICKAIIIQAgAigCACAAa0EDTQRAIAIgAEEEQQFBARDWBiACKAIIIQALIAIgAEEEajYCCCACKAIEIABqQQc2AAAgASAEEPEBIgANASAEKAIsIQMgBCgCMCIFrSEKIAIoAgAgAigCCCIAa0EHTQRAIAIgAEEIQQFBARDWBiACKAIIIQALIAIgAEEIajYCCCACKAIEIABqIAo3AAAgBUEMbCECA0AgAgRAIAJBDGshAiADIAEQkAghACADQQxqIQMgAEUNAQwDCwsgBCgCOCEDIAQoAjwiAq0hCiABKAIAIgEoAgghACABKAIAIABrQQdNBEAgASAAQQhBAUEBENYGIAEoAgghAAsgASAAQQhqIgQ2AgggASgCBCAAaiAKNwAAQQAhACACRQ0BIAMgAkEDdGohAgNAIANBBGooAgAhBiADKAIAIQUgASgCACAEa0EDTQRAIAEgBEEEQQFBARDWBiABKAIIIQQLIAEoAgQgBGogBTYAACABIARBBGoiBTYCCCABKAIAIAVrQQNNBEAgASAFQQRBAUEBENYGIAEoAgghBQsgASAFQQRqIgQ2AgggASgCBCAFaiAGNgAAIAIgA0EIaiIDRw0ACwwBCyAIKAIIIQYgASgCACIAKAIIIQIgACgCACACa0EDTQRAIAAgAkEEQQFBARDWBiAAKAIIIQILIAAgAkEEajYCCCAAKAIEIAJqQQY2AAAgASAGEPEBIgANACAGKAIsIQMgBigCMCIErSEKIAEoAgAiACgCCCECIAAoAgAgAmtBB00EQCAAIAJBCEEBQQEQ1gYgACgCCCECCyAAIAJBCGo2AgggACgCBCACaiAKNwAAIARBDGwhAgNAIAIEQCACQQxrIQIgAyABEJAIIQAgA0EMaiEDIABFDQEMAgsLIAYoAjghAiAGKAI8IgWtIQogASgCACIAKAIIIQQgACgCACAEa0EHTQRAIAAgBEEIQQFBARDWBiAAKAIIIQQLIAAgBEEIaiIDNgIIIAAoAgQgBGogCjcAACAFBEAgAiAFQQxsaiEFA0AgAigCACEEIAAoAgAgA2tBA00EQCAAIANBBEEBQQEQ1gYgACgCCCEDCyAAKAIEIANqIAQ2AAAgACADQQRqIgM2AgggAkEEaigCACEEIAAoAgAgA2tBA00EQCAAIANBBEEBQQEQ1gYgACgCCCEDCyAAKAIEIANqIAQ2AAAgACADQQRqIgQ2AgggAkEIaigCACEHIAAoAgAgBGtBA00EQCAAIARBBEEBQQEQ1gYgACgCCCEECyAAIARBBGoiAzYCCCAAKAIEIARqIAc2AAAgBSACQQxqIgJHDQALCwJAIAYoAkBBgICAgHhHBEAgASgCACIEKAIIIQAgACAEKAIARgRAIAQgAEEBQQFBARDWBiAEKAIIIQALIAQoAgQgAGpBAToAACAEIABBAWoiADYCCCAGKAJEIQMgBigCSCICrSEKIAQoAgAgAGtBB00EQCAEIABBCEEBQQEQ1gYgBCgCCCEACyAEIABBCGo2AgggBCgCBCAAaiAKNwAAIAJBDGwhAgNAIAIEQCACQQxrIQIgAyABEJAIIQAgA0EMaiEDIABFDQEMBAsLIAYoAlAhAiAGKAJUIgOtIQogBCgCACAEKAIIIgBrQQdNBEAgBCAAQQhBAUEBENYGIAQoAgghAAsgBCAAQQhqNgIIIAQoAgQgAGogCjcAACADQSRsIQMDQCADRQ0CIAIgARCQCCIADQMgAkEMaiABEJAIIgANAyADQSRrIQMgAkEYaiEAIAJBJGohAiAAIAEQkAgiAEUNAAsMAgsgASgCACIAKAIIIQIgAiAAKAIARgRAIAAgAkEBQQFBARDWBiAAKAIIIQILIAAgAkEBajYCCCAAKAIEIAJqQQA6AAALIAEoAgAhAAJAIAYoAlhBgICAgHhHBEAgACgCCCICIAAoAgBGBEAgACACQQFBAUEBENYGIAAoAgghAgsgACgCBCACakEBOgAAIAAgAkEBaiIENgIIIAYoAlwhAyAGKAJgIgWtIQogACgCACAEa0EHTQRAIAAgBEEIQQFBARDWBiAAKAIIIQQLIAAgBEEIaiICNgIIIAAoAgQgBGogCjcAACAFBEAgBUECdCEFA0AgAygCACEHIANBBGohAyAAIAAoAgAgAmtBA0sEfyACBSAAIAJBBEEBQQEQ1gYgACgCCAsiBEEEaiICNgIIIAAoAgQgBGogBzYAACAFQQRrIgUNAAsLIAYoAmghAyAGKAJsIgWtIQogACgCACACa0EHTQRAIAAgAkEIQQFBARDWBiAAKAIIIQILIAAgAkEIaiIENgIIIAAoAgQgAmogCjcAACAFBEAgBUECdCEFA0AgAygCACEHIANBBGohAyAAIAAoAgAgBGtBA0sEfyAEBSAAIARBBEEBQQEQ1gYgACgCCAsiAkEEaiIENgIIIAAoAgQgAmogBzYAACAFQQRrIgUNAAsLIAYoAnQhAiAGKAJ4IgWtIQogACgCACAEa0EHTQRAIAAgBEEIQQFBARDWBiAAKAIIIQQLIAAgBEEIaiIDNgIIIAAoAgQgBGogCjcAACAFRQ0BIAIgBUEEdGohBQNAIAIoAgAhBCAAKAIAIANrQQNNBEAgACADQQRBAUEBENYGIAAoAgghAwsgACgCBCADaiAENgAAIAAgA0EEaiIDNgIIIAJBBGooAgAhBCAAKAIAIANrQQNNBEAgACADQQRBAUEBENYGIAAoAgghAwsgACgCBCADaiAENgAAIAAgA0EEaiIDNgIIIAJBCGooAgAhBCAAKAIAIANrQQNNBEAgACADQQRBAUEBENYGIAAoAgghAwsgACgCBCADaiAENgAAIAAgA0EEaiIENgIIIAJBDGooAgAhByAAKAIAIARrQQNNBEAgACAEQQRBAUEBENYGIAAoAgghBAsgACAEQQRqIgM2AgggACgCBCAEaiAHNgAAIAUgAkEQaiICRw0ACwwBCyAAKAIIIgIgACgCAEYEQCAAIAJBAUEBQQEQ1gYgACgCCCECCyAAIAJBAWo2AgggACgCBCACakEAOgAACyABKAIAIQACQCAGKAJ8QYCAgIB4RwRAIAAoAggiAiAAKAIARgRAIAAgAkEBQQFBARDWBiAAKAIIIQILIAAoAgQgAmpBAToAACAAIAJBAWoiBDYCCCAGKAKAASEDIAYoAoQBIgWtIQogACgCACAEa0EHTQRAIAAgBEEIQQFBARDWBiAAKAIIIQQLIAAgBEEIaiICNgIIIAAoAgQgBGogCjcAACAFBEAgBUECdCEFA0AgAygCACEHIANBBGohAyAAIAAoAgAgAmtBA0sEfyACBSAAIAJBBEEBQQEQ1gYgACgCCAsiBEEEaiICNgIIIAAoAgQgBGogBzYAACAFQQRrIgUNAAsLIAYoAowBIQQgBigCkAEiBa0hCiAAKAIAIAJrQQdNBEAgACACQQhBAUEBENYGIAAoAgghAgsgACACQQhqIgM2AgggACgCBCACaiAKNwAAIAUEQCAFQQJ0IQUDQCAEKAIAIQcgBEEEaiEEIAAgACgCACADa0EDSwR/IAMFIAAgA0EEQQFBARDWBiAAKAIICyICQQRqIgM2AgggACgCBCACaiAHNgAAIAVBBGsiBQ0ACwsgBigCmAEhAiAGKAKcASIFrSEKIAAoAgAgA2tBB00EQCAAIANBCEEBQQEQ1gYgACgCCCEDCyAAIANBCGoiBDYCCCAAKAIEIANqIAo3AAAgBUUNASAFQQJ0IQUDQCACNQIAIQogAkEEaiECIAAgACgCACAEa0EHSwR/IAQFIAAgBEEIQQFBARDWBiAAKAIICyIDQQhqIgQ2AgggACgCBCADaiAKNwAAIAVBBGsiBQ0ACwwBCyAAKAIIIgIgACgCAEYEQCAAIAJBAUEBQQEQ1gYgACgCCCECCyAAIAJBAWo2AgggACgCBCACakEAOgAACyAGLwGgASEDIAEoAgAiACgCCCECIAAoAgAgAmtBAU0EQCAAIAJBAkEBQQEQ1gYgACgCCCECCyAAIAJBAmo2AgggACgCBCACaiADOwAAQQAhAAsgCEEQaiQAIAALv0ADEn8QfQF7IwBBwAdrIgQkACAE/QwAAAAAAAAAAAAAAAAAAAAA/QsEsAEgBP0MAAAAAAEAAAACAAAAAwAAAP0LBAAgBEEQaiIHQQBBoAH8CwBDAACAPyEZIAIqAgAiHiAelCACKgIEIhogGpSSIAIqAggiHCAclJIiF0MAAIAoXgRAIBwgF5EiF5UhFiAaIBeVISAgHiAXlSEZCyAEIBkgGSAZlCAgICCUkiAWIBaUkpEiGZUiGDgC4AUgBCAgIBmVIhc4AuQFIAQgFiAZlSIWOALoBSAEQbAGaiABIARB4AVqEIIEIARBADYCvAEgBEEANgKsASAEIBYgASoCYCIflCAEKgK4BpIiFjgCJCAEIBw4AjAgBCAWIByTOAIYIAQgFyAflCAEKgK0BpIiFjgCICAEIBo4AiwgBCAWIBqTOAIUIAQgBCoCsAYgGCAflJIiFjgCHCAEIB44AiggBCAWIB6TOAIQIBwgHkMAAAAAlCIdIBpDAAAAAJQiF5MiFiAWkiIbIBcgHEMAAAAAlCIXkyIWIBaSIhlDAAAAAJQiGCAXIB2TIhYgFpIiFkMAAAAAlCIXk5KSISEgGiAWIBtDAAAAAJQiFiAYk5KSISIgHiAZIBcgFpOSkiEjIARBoAVqIAQQawJAAn0CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAQqAqAFIhYgFpQgBCoCpAUiFiAWlJIgBCoCqAUiFyAXlJJDAAAAAF5FDQBD//9/fyEWQeQAIQUCQAJAAkACQANAIAQqAqAFIhsgG5QgBCoCpAUiGSAZlJIgBCoCqAUiGCAYlJIiF0MAAMgrXkUNBSAXkSIXIBZgDQQgGIwgF5UiHiAelCAbjCAXlSIbIBuUIBmMIBeVIhkgGZSSkpEhFiAEIB4gFpUiGjgC6AUgBCAbIBaVIhg4AuAFIAQgGSAWlSIWOALkBSAEQbAGaiIGIAEgBEHgBWoQggQgGyAfIBiUIAQqArAGkiIcICOTIh2UIBkgHyAWlCAEKgK0BpIiGyAikyIZlJIgHiAfIBqUIAQqArgGkiIYICGTIhaUkiIavEH/////B3FBgICA/AdPDQYgGkP//3//XUUEQCAXIBqSIBdDvRuPOpRfDQQgBCAhOALQBiAEICI4AswGIAQgIzgCyAYgBCAYOALEBiAEIBs4AsAGIAQgHDgCvAYgBCAWOAK4BiAEIBk4ArQGIAQgHTgCsAYgBCAGEOEDRQ0CIARBoAVqIAQQayAEKAK8AUEDRg0DIBchFiAFQQFrIgUNAQsLQejawgBBKEGEksMAENYMAAtDAAAAACEZQwAAAAAhGEMAAAAAIAQoArwBIgFBAWoiAkUNERogBCoCsAEiFiAEKgIklEMAAAAAkiEYIBYgBCoCIJRDAAAAAJIhGSAWIAQqAhyUQwAAAACSIhcgAUUNERogGCAEKgK0ASIWIAQqAkiUkiEYIBkgFiAEKgJElJIhGSAXIBYgBCoCQJSSIhcgAkECRg0RGiACQQNHDQUgGCAEKgK4ASIWIAQqAmyUkiEYIBkgFiAEKgJolJIhGSAXIBYgBCoCZJSSDBELIBpDAACgtV9FDQIMDwtDAAAAACEZQwAAAAAhGEMAAAAAIAQoArwBIgFBAWoiAkUNDxogBCoCsAEiFiAEKgIklEMAAAAAkiEYIBYgBCoCIJRDAAAAAJIhGSAWIAQqAhyUQwAAAACSIhcgAUUNDxogGCAEKgK0ASIWIAQqAkiUkiEYIBkgFiAEKgJElJIhGSAXIBYgBCoCQJSSIhcgAkECRg0PGiACQQNHDQQgGCAEKgK4ASIWIAQqAmyUkiEYIBkgFiAEKgJolJIhGSAXIBYgBCoCZJSSDA8LDA0LAkAgA0UEQCAEQoCAgIDAADcC7AEgBEKAgICAwAA3AuABIARCgICAgMAANwLUASAEQoCAgIDAADcCyAEgBEEANgL0ASAEQQA2AtwBIARBADYC0AEgBEEANgLoASAEQewBaiENIARB1AFqIRAgBCgCvAEiBkF/RgRAQQQhBUEAIQMMBwsgBEHIAWoiA0GEkcMAEJUIIAQoAswBIgUgB/0AAgD9CwIAIAVBIGogB0EgaigCADYCACAFQRBqIAdBEGr9AAIA/QsCACAEQQE2AtABIAZFDQEgBkECaiEHIARBNGohBiAEKALIAUEBRgRAIANBhJHDABCVCCAEKALMASEFCyAFIAb9AAIA/QsCJCAFQcQAaiAGQSBqKAIANgIAIAVBNGogBkEQav0AAgD9CwIAIARBAjYC0AEgB0EDRg0FIARB2ABqIQMgBCgCyAFBAkYEQCAEQcgBakGEkcMAEJUIIAQoAswBIQULIAUgA/0AAgD9CwJIIAVB6ABqIANBIGooAgA2AgAgBUHYAGogA0EQav0AAgD9CwIAQQMhAyAEQQM2AtABIAdBBEYNBiAEQfwAaiEDIAQoAsgBQQNGBEAgBEHIAWpBhJHDABCVCCAEKALMASEFCyAFIAP9AAIA/QsCbCAFQYwBaiADQSBqKAIANgIAIAVB/ABqIANBEGr9AAIA/QsCACAEQQQ2AtABIAdBBUYNB0EEQQRBqJPDABCFCwALIABBAToADCAAIAIpAgA3AgAgAEEIaiACQQhqKAIANgIADA8LIARBkAdqQgA3AwAgBP0MAAAAAAAAAAAAAAAAAAAAAP0LA4AHDAcLQZSSwwBBJ0G8ksMAENYMAAtBA0EDQYiTwwAQhQsAC0EDQQNBiJPDABCFCwALIAUqAiwgBSoCCJMiGkMAAAAAIAUqAiQgBSoCAJMiHIsgBSoCKCAFKgIEkyIdi14iAxsiFyAcjCAdIAMbIhsgG5RDAAAAACAajCADGyIWIBaUIBcgF5SSkpEiGJUhGSAEIB0gGZQgHCAWIBiVIhaUkyIXIBcgF5QgGiAWlCAdIBsgGJUiFpSTIhggGJQgHCAWlCAaIBmUkyIXIBeUkpKRIhaVIh04AugFIAQgFyAWlSIbOALkBSAEIBggFpUiGTgC4AUgBEGwBmogASAEQeAFahCCBCAEKgK4BiEYIAQqArQGIRYgBCoCsAYhFyAEKALQASIDIAQoAsgBRgRAIARByAFqQZSRwwAQlQgLIAQoAswBIANBJGxqIgUgITgCICAFICI4AhwgBSAjOAIYIAUgGCAfIB2UkiIYOAIUIAUgFiAfIBuUkiIWOAIQIAUgFyAfIBmUkiIXOAIMIAUgGCAhkzgCCCAFIBYgIpM4AgQgBSAXICOTOAIAIAQgA0EBaiIDNgLQASAEKALMASEFCyAEQQI2AsAEIARCgICAgBA3ArgEIARBATYCzAQgBEKAgICAIDcCxAQgBEEBNgLYBCAEQoGAgIAQNwLQBCAEQQA2AuQEIARCADcC3AQgBEGwBmoiCSAFIAMgBEG4BGogBEHQBGoQ3gIgBEHoBGoiA0EwaiILIAlBMGoiCCgCADYCACADQSBqIgcgCUEgaiIF/QACAP0LAwAgA0EQaiIGIAlBEGoiA/0AAgD9CwMAIAQgBP0AArAG/QsD6AQgCSAEKALMASAEKALQASAEQcQEaiAEQdwEahDeAiAEQaAFaiIJQTBqIAgoAgA2AgAgCUEgaiAF/QACAP0LAwAgCUEQaiAD/QACAP0LAwAgBCAE/QACsAb9CwOgBSAEKALUASIDIAQoAtwBIglGBEAgEEGEj8MAEJsIIAQoAtQBIQMLIAQoAtgBIgUgCUE0bGoiCCAE/QAD6AT9CwIAIAhBIGogB/0AAwD9CwIAIAhBEGogBv0AAwD9CwIAIAhBMGogCygCADYCACAEIAlBAWoiBjYC3AEgAyAGRgRAIBBBlI/DABCbCCAEKALYASEFCyAFIAZBNGxqIgUgBP0AA6AF/QsCACAFQSBqIARBoAVqIgNBIGr9AAMA/QsCACAFQRBqIANBEGr9AAMA/QsCACAFQTBqIANBMGooAgA2AgAgBCAJQQJqNgLcASAEKAL0ASIFIAQoAuwBRgRAIA1BqNrCABC0CAsgBCgC8AEiCCAFQQN0akIANwIAIAQgBUEBajYC9AECQCAFRQRAQQAhAwwBCwNAIAggBUEBayIHQQF2IgNBA3RqIgZBBGoqAgBDAAAAAF1FBEAgBSEDDAILIAggBUEDdGogBikCADcCACADIQUgB0EBSw0ACwsgCCADQQN0akIANwIAIAQoAvQBIgUgBCgC7AFGBEAgDUGo2sIAELQICyAEKALwASIIIAVBA3RqQgE3AgAgBCAFQQFqNgL0AQJAIAVFBEBBACEDDAELA0AgCCAFQQFrIgdBAXYiA0EDdGoiBkEEaioCAEMAAAAAXUUEQCAFIQMMAgsgCCAFQQN0aiAGKQIANwIAIAMhBSAHQQFLDQALCyAIIANBA3RqQgE3AgAMAQsgBSoCSCAFKgIAIhqTIRwgBSoCKCAFKgIEIheTIhsgBSoCUCAFKgIIIh2TIhmUIAUqAiwgHZMiFiAFKgJMIBeTIhiUkyAFKgJsIBqTlCAWIByUIAUqAiQgGpMiFiAZlJMgBSoCcCAXk5SSIBYgGJQgGyAclJMgBSoCdCAdk5SSQwAAAABeBEAgBUEkaiIG/QACACEmIAYgBUHIAGoiCP0AAgD9CwIAIAggJv0LAgAgBkEQaiID/QACACEmIAMgCEEQaiIH/QACAP0LAgAgBkEgaiIDKAIAIQYgAyAIQSBqIgMoAgA2AgAgByAm/QsCACADIAY2AgALIARBAjYCgAIgBEKAgICAEDcC+AEgBEECNgKMAiAEQoGAgIAwNwKEAiAEQQM2ApgCIARCgICAgCA3ApACIARBATYCpAIgBEKAgICAMDcCnAIgBEECNgKwAiAEQoOAgIAQNwKoAiAEQQA2ArwCIARCg4CAgCA3ArQCIARBAzYCyAIgBEKAgICAEDcCwAIgBEEANgLUAiAEQoKAgIAQNwLMAiAEQbAGaiIKIAVBBCAEQfgBaiAEQagCahDeAiAEQdgCaiIDQTBqIgggCkEwaiIMKAIANgIAIANBIGoiByAKQSBqIgv9AAIA/QsDACADQRBqIgYgCkEQaiIF/QACAP0LAwAgBCAE/QACsAb9CwPYAiAELQDkBiESIAogBCgCzAEgBCgC0AEgBEGEAmogBEG0AmoQ3gIgBEGQA2oiA0EwaiAMKAIANgIAIANBIGogC/0AAgD9CwMAIANBEGogBf0AAgD9CwMAIAQgBP0AArAG/QsDkAMgBC0A5AYhEyAKIAQoAswBIAQoAtABIARBkAJqIARBwAJqEN4CIARByANqIgNBMGogDCgCADYCACADQSBqIAv9AAIA/QsDACADQRBqIAX9AAIA/QsDACAEIAT9AAKwBv0LA8gDIAQtAOQGIQkgCiAEKALMASAEKALQASAEQZwCaiAEQcwCahDeAiAEQYAEaiIDQTBqIAwoAgA2AgAgA0EgaiAL/QACAP0LAwAgA0EQaiAF/QACAP0LAwAgBCAE/QACsAb9CwOABCAELQDkBiELIAQoAtQBIgMgBCgC3AEiCkYEQCAQQdiMwwAQmwggBCgC1AEhAwsgBCgC2AEiBSAKQTRsaiIMIAT9AAPYAv0LAgAgDEEgaiAH/QADAP0LAgAgDEEQaiAG/QADAP0LAgAgDEEwaiAIKAIANgIAIAQgCkEBaiIGNgLcASADIAZGBEAgEEHojMMAEJsIIAQoAtgBIQUgBCgC1AEhAwsgBSAGQTRsaiIHIAT9AAOQA/0LAgAgB0EgaiAEQZADaiIGQSBq/QADAP0LAgAgB0EQaiAGQRBq/QADAP0LAgAgB0EwaiAGQTBqKAIANgIAIAQgCkECaiIGNgLcASADIAZGBEAgEEH4jMMAEJsIIAQoAtgBIQUgBCgC1AEhAwsgBSAGQTRsaiIHIAT9AAPIA/0LAgAgB0EgaiAEQcgDaiIGQSBq/QADAP0LAgAgB0EQaiAGQRBq/QADAP0LAgAgB0EwaiAGQTBqKAIANgIAIAQgCkEDaiIGNgLcASADIAZGBEAgEEGIjcMAEJsIIAQoAtgBIQULIAUgBkE0bGoiBiAE/QADgAT9CwIAIAZBIGogBEGABGoiA0Egav0AAwD9CwIAIAZBEGogA0EQav0AAwD9CwIAIAZBMGogA0EwaigCADYCACAEIApBBGoiAzYC3AECQCASQQFxRQ0AAkAgAwRAIAQoAtABRQ0BIAUqAhggBCgCzAEiAyoCAJQgBUEcaioCACADQQRqKgIAlJIgBUEgaioCACADQQhqKgIAlJIiFkMAAKC1XQ0HIBaMIRcgBCgC9AEiBSAEKALsAUYEQCANQajawgAQtAgLIAQoAvABIgggBUEDdGoiAyAXOAIEIANBADYCACAEIAVBAWo2AvQBQQAhAwJAIAVFDQADQCAIIAVBAWsiB0EBdiIDQQN0aiIGQQRqKgIAIBddRQRAIAUhAwwCCyAIIAVBA3RqIAYpAgA3AgAgAyEFIAdBAUsNAAsLIAggA0EDdGoiAyAXOAIEIANBADYCAAwCC0EAQQBBmI3DABCFCwALQQBBAEGojcMAEIULAAsCQCATQQFxRQ0AAkAgBCgC3AEiA0ECTwRAIAQoAtABIgNBAU0NASAEKALYASIFKgJMIAQoAswBIgMqAiSUIAVB0ABqKgIAIANBKGoqAgCUkiAFQdQAaioCACADQSxqKgIAlJIiFkMAAKC1XQ0HIBaMIRcgBCgC9AEiBSAEKALsAUYEQCANQajawgAQtAgLIAQoAvABIgggBUEDdGoiAyAXOAIEIANBATYCACAEIAVBAWo2AvQBAkAgBUUEQEEAIQMMAQsDQCAIIAVBAWsiB0EBdiIDQQN0aiIGQQRqKgIAIBddRQRAIAUhAwwCCyAIIAVBA3RqIAYpAgA3AgAgAyEFIAdBAUsNAAsLIAggA0EDdGoiAyAXOAIEIANBATYCAAwCC0EBIANBuI3DABCFCwALQQEgA0HIjcMAEIULAAsCQCAJQQFxRQ0AAkAgBCgC3AEiA0EDTwRAIAQoAtABIgNBAk0NASAEKALYASIFKgKAASAEKALMASIDKgJIlCAFQYQBaioCACADQcwAaioCAJSSIAVBiAFqKgIAIANB0ABqKgIAlJIiFkMAAKC1XQ0HIBaMIRcgBCgC9AEiBSAEKALsAUYEQCANQajawgAQtAgLIAQoAvABIgggBUEDdGoiAyAXOAIEIANBAjYCACAEIAVBAWo2AvQBAkAgBUUEQEEAIQMMAQsDQCAIIAVBAWsiB0EBdiIDQQN0aiIGQQRqKgIAIBddRQRAIAUhAwwCCyAIIAVBA3RqIAYpAgA3AgAgAyEFIAdBAUsNAAsLIAggA0EDdGoiAyAXOAIEIANBAjYCAAwCC0ECIANB2I3DABCFCwALQQIgA0HojcMAEIULAAsCQCALQQFxRQ0AAkAgBCgC3AEiA0EETwRAIAQoAtABIgNBA00NASAEKALYASIFKgK0ASAEKALMASIDKgJslCAFQbgBaioCACADQfAAaioCAJSSIAVBvAFqKgIAIANB9ABqKgIAlJIiFkMAAKC1XQ0HIBaMIRcgBCgC9AEiBSAEKALsAUYEQCANQajawgAQtAgLIAQoAvABIgggBUEDdGoiAyAXOAIEIANBAzYCACAEIAVBAWo2AvQBAkAgBUUEQEEAIQMMAQsDQCAIIAVBAWsiB0EBdiIDQQN0aiIGQQRqKgIAIBddRQRAIAUhAwwCCyAIIAVBA3RqIAYpAgA3AgAgAyEFIAdBAUsNAAsLIAggA0EDdGoiAyAXOAIEIANBAzYCAAwCC0EDIANB+I3DABCFCwALQQMgA0GIjsMAEIULAAsgEkEBcQ0AIBNBAXENACAJQQFxDQAgC0EBcQ0AQfTKxAAoAgBBBEkNBCAEQQA2AsAGIARBATYCtAYgBEHsjsMANgKwBiAEQgQ3ArgGIARB9I7DADYC8AUgBEEZNgLsBSAEQeyLwwA2AugFIARBGTYC5AUgBEHsi8MANgLgBSAEQbAGaiAEQeAFahCQCgwECyAEKAL0AUUNAyAEKALwASgCACEPIARB1AVqIA0QqQQCQCAEKALUBUEBRw0AIARBhAZqIRIgBEH4BWohEyAEQewFaiEJQ///f38hIEEAIQoDQAJAAkACQAJAAkACQAJAAkACQCAEKALYBSIIIAQoAtwBIgNJBEAgBCoC3AUhGiAJIAhBNGwiBiAEKALYAWoiAykCDDcCACATIAMpAhg3AgAgEiADKQIkNwIAIARB6AVqIANBCGooAgA2AgAgCUEIaiADQRRqKAIANgIAIBNBCGogA0EgaigCADYCACASQQhqIANBLGooAgA2AgAgBCADKQIANwPgBSAEIAMtADAiAzoAkAYgAw0IIAQqAvgFIiQgJJQgBCoC/AUiJSAllJIgBCoCgAYiHiAelJKRIRYgBCAkIBaVIhs4AugGIAQgJSAWlSIYOALsBiAEIB4gFpUiFjgC8AYgBEGwBmogASAEQegGahCCBCAfIBaUIAQqArgGkiIZICGTIRwgHyAYlCAEKgK0BpIiGCAikyEdIB8gG5QgBCoCsAaSIhYgI5MhGyAEKALQASIRIAQoAsgBRgRAIARByAFqQbSPwwAQlQgLIAQoAswBIBFBJGxqIgMgITgCICADICI4AhwgAyAjOAIYIAMgGTgCFCADIBg4AhAgAyAWOAIMIAMgHDgCCCADIB04AgQgAyAbOAIAIAQgEUEBaiIFNgLQASAIIA8gJCAblCAlIB2UkiAeIByUkiIWICBdIgMbIQ8gBCgC3AEhByAaIBYgICADGyIgkkMAAEg3XUUEQCAHIAhNDQIgBCgC2AEgBmpBAToAMCAEKALsBSIMIAQoAtwBIgdPDQMgBCgC2AEiAyAMQTRsaiAEKALgBRD+BiEGIAQoAvAFIgsgB08NBCADIAtBNGxqIAQoAuQFEP4GIQUgBCgC9AUiCCAHTw0FIAMgCEE0bGogBCgC6AUQ/gYhAyAEQcgBaiIHIBEgDCAGEMACIAcgESALIAUQwAIgByARIAggAxDAAiAEKALoASIGRQ0QIBqMIRYgBCgC3AEhFCAEKALkASIFQQhqIQMgBSAGQQN0aiELA0AgAyEGAkACQAJAIAQoAtwBIg4gBSgCACIDSwRAIAQoAtgBIANBNGxqIgctADANAyAEIAM2AqQGIAUoAgQhAyAEIBE2AqAGIAQgDkEBazYCrAYgBCAOQQFqNgKoBiAEIAcgA0EBakEDcEECdGooAgA2ApwGIAQgByADQQJqQQNwQQJ0aigCADYCmAYgBEGwBmogBCgCzAEgBCgC0AEgBEGYBmogBEGkBmoQ3gIgByAFKAIEQQFqQQNwQQJ0aiAONgIMIAQoAtwBIgcgBCgC1AFGBEAgEEG0kMMAEJsICyAEKALYASIDIAdBNGxqIgggBP0AArAG/QsCACAIQSBqIARBsAZqIgVBIGr9AAIA/QsCACAIQRBqIAVBEGr9AAIA/QsCACAIQTBqIAVBMGooAgA2AgAgBCAHQQFqIgU2AtwBIAQtAOQGRQ0DIAUgDk0NCyADIA5BNGxqIggoAgAiBSAEKALQASIHTw0MIAQoAswBIgMgBUEkbGoiBSoCACAIKgIYlCAFKgIEIAhBHGoqAgCUkiAFKgIIIAhBIGoqAgCUkiIYIBZdDQ0gGEMAAKC1XSIDDRUgGIwhGCAEKAL0ASIFIAQoAuwBRgRAIA1BqNrCABC0CAsgFyAYIAMbIRcgFSAOIAMbIRUgBCgC8AEiDCAFQQN0aiIDIBg4AgQgAyAONgIAIAQgBUEBajYC9AEgBQ0BQQAhAwwCCyADIA5BpJDDABCFCwALA0AgFyAMIAVBAWsiCEEBdiIDQQN0aiIHQQRqKgIAXkUEQCAFIQMMAgsgDCAFQQN0aiAHKQIANwIAIAMhBSAIQQFLDQALCyAMIANBA3RqIgMgFzgCBCADIBU2AgALIAYgBiALR0EDdGohAyALIAYiBUcNAAsMCgsgByAPSwRAIARBsAZqIgEgBCgC2AEgD0E0bGogBCgCzAEgBRC8ByAEQYgHaiABQQhqKAIANgIAIAQgBCkCsAY3A4AHDA0LIA8gB0HkkMMAEIULAAsgCCADQaSPwwAQhQsACyAIIAdBxI/DABCFCwALIAwgB0HUj8MAEIULAAsgCyAHQeSPwwAQhQsACyAIIAdB9I/DABCFCwALIA4gBUHEkMMAEIULAAsgBSAHQdSQwwAQhQsACyAEQegGaiIBIARB4AVqIAMgBxC8ByAEQYgHaiABQQhqKAIANgIAIAQgBCkC6AY3A4AHDAQLIARB1AVqIA0QqQQgBCgC1AUNAQwCCyAEKALcASIDIBRGDQUgAyAUTQ0DIAQoAtgBIBRBNGxqIANBAWs2AhQgBCgC3AEiA0UNBCAEKALYASADQTRsaiIDQTRGDQQgA0EkayAUNgIAIARBADYC6AEgCkHkAEYNASAEQdQFaiANEKkEIApBAWohCiAEKALUBQ0ACwsgBCgC3AEiASAPSwRAIARBsAZqIgEgBCgC2AEgD0E0bGogBCgCzAEgBCgC0AEQvAcgBEGIB2ogAUEIaigCADYCACAEIAQpArAGNwOABwwBCyAPIAFB9JDDABCFCwALIABBCGogBEGIB2ooAgA2AgAgACAEKQOABzcCACAAQQE6AAwMAwsgFCADQYSQwwAQhQsAC0GUkMMAEPIOAAsgAEEBOgAMIAAgAikCADcCACAAQQhqIAJBCGooAgA2AgALIAQoAsgBIgAEQCAEKALMASAAQSRsQQQQ6A4LIAQoAtQBIgAEQCAEKALYASAAQTRsQQQQ6A4LIAQoAuABIgAEQCAEKALkASAAQQN0QQQQ6A4LIAQoAuwBIgBFDQIgBCgC8AEgAEEDdEEEEOgODAILIARBsAZqIARBARDcAyAEKgK4BiEYIAQqArQGIRkgBCoCsAYLIRcgACAYOAIIIAAgGTgCBCAAIBc4AgAgAEEAOgAMCyAEQcAHaiQAC/8+AxF/E30BeyMAQcAHayIEJAAgBEG4AWpBADYCACAEQgA3A7ABIAT9DAAAAAABAAAAAgAAAAMAAAD9CwQAIARBNGpBAEH4APwLAEMAAIA/IR4gAioCACIZIBmUIAIqAgQiGyAblJIgAioCCCIaIBqUkiIWQwAAgCheBEAgGiAWkSIVlSEXIBkgFZUhHiAbIBWVIRULIARBADYCvAEgBEEANgKsASAEIAEqAggiIiAXIB4gHpQgFSAVlJIgFyAXlJKRIhiVIhaYIBYgASoCDCIdlJIiFjgCJCAEIBo4AjAgBCAWIBqTOAIYIAQgASoCBCIjIBUgGJUiFZggFSAdlJIiFTgCICAEIBs4AiwgBCAVIBuTOAIUIAQgASoCACIkIB4gGJUiFZggFSAdlJIiFTgCHCAEIBk4AiggBCAVIBmTOAIQIBogGUMAAAAAlCIcIBtDAAAAAJQiFpMiFSAVkiIXIBYgGkMAAAAAlCIWkyIVIBWSIhpDAAAAAJQiGCAWIByTIhUgFZIiFUMAAAAAlCIWk5KSIR8gGyAVIBdDAAAAAJQiFSAYk5KSISAgGSAaIBYgFZOSkiEhIARB4AVqIAQQawJAAn0CQAJAAkACQAJAAkACQAJAAn8CQAJAAkACQAJAIAQqAuAFIhUgFZQgBCoC5AUiFSAVlJIgBCoC6AUiFiAWlJJDAAAAAF5FDQBD//9/fyEVQeQAIQECQAJAAkACQANAIAQqAuAFIhcgF5QgBCoC5AUiGiAalJIgBCoC6AUiGCAYlJIiFkMAAMgrXkUNBSAWkSIWIBVgDQQgGIwgFpUiFSAVlCAXjCAWlSIXIBeUIBqMIBaVIhkgGZSSkpEhGCAVICIgFSAYlSIVmCAdIBWUkiIbIB+TIhyUIBcgJCAXIBiVIhWYIB0gFZSSIhcgIZMiGpQgGSAjIBkgGJUiFZggHSAVlJIiGCAgkyIVlJKSIhm8Qf////8HcUGAgID8B08NBiAZQ///f/9dRQRAIBYgGZIgFkO9G486lF8NBCAEIB84AtAGIAQgIDgCzAYgBCAhOALIBiAEIBs4AsQGIAQgGDgCwAYgBCAXOAK8BiAEIBw4ArgGIAQgFTgCtAYgBCAaOAKwBiAEIARBsAZqEOEDRQ0CIARB4AVqIAQQayAEKAK8AUEDRg0DIBYhFSABQQFrIgENAQsLQejawgBBKEGEksMAENYMAAtDAAAAACEXQwAAAAAhGEMAAAAAIAQoArwBIgFBAWoiAkUNERogBCoCsAEiFSAEKgIklEMAAAAAkiEYIBUgBCoCIJRDAAAAAJIhFyAVIAQqAhyUQwAAAACSIhYgAUUNERogGCAEKgK0ASIVIAQqAkiUkiEYIBcgFSAEKgJElJIhFyAWIBUgBCoCQJSSIhYgAkECRg0RGiACQQNHDQUgGCAEKgK4ASIVIAQqAmyUkiEYIBcgFSAEKgJolJIhFyAWIBUgBCoCZJSSDBELIBlDAACgtV9FDQIMDwtDAAAAACEXQwAAAAAhGEMAAAAAIAQoArwBIgFBAWoiAkUNDxogBCoCsAEiFSAEKgIklEMAAAAAkiEYIBUgBCoCIJRDAAAAAJIhFyAVIAQqAhyUQwAAAACSIhYgAUUNDxogGCAEKgK0ASIVIAQqAkiUkiEYIBcgFSAEKgJElJIhFyAWIBUgBCoCQJSSIhYgAkECRg0PGiACQQNHDQQgGCAEKgK4ASIVIAQqAmyUkiEYIBcgFSAEKgJolJIhFyAWIBUgBCoCZJSSDA8LDA0LAkAgA0UEQCAEQoCAgIDAADcC7AEgBEKAgICAwAA3AuABIARCgICAgMAANwLUASAEQoCAgIDAADcCyAEgBEEANgL0ASAEQQA2AtwBIARBADYC0AEgBEEANgLoASAEQewBaiEMIARB1AFqIQ8gBCgCvAEiBkF/RgRAQQQhAUEADAcLIARByAFqIgNBhJHDABCVCCAEKALMASIBIARBEGoiBf0AAgD9CwIAIAFBIGogBUEgaigCADYCACABQRBqIAVBEGr9AAIA/QsCACAEQQE2AtABIAZFDQEgBkECaiEGIARBNGohBSAEKALIAUEBRgRAIANBhJHDABCVCCAEKALMASEBCyABIAX9AAIA/QsCJCABQcQAaiAFQSBqKAIANgIAIAFBNGogBUEQav0AAgD9CwIAIARBAjYC0AEgBkEDRg0FIARB2ABqIQMgBCgCyAFBAkYEQCAEQcgBakGEkcMAEJUIIAQoAswBIQELIAEgA/0AAgD9CwJIIAFB6ABqIANBIGooAgA2AgAgAUHYAGogA0EQav0AAgD9CwIAIARBAzYC0AFBAyAGQQRGDQYaIARB/ABqIQMgBCgCyAFBA0YEQCAEQcgBakGEkcMAEJUIIAQoAswBIQELIAEgA/0AAgD9CwJsIAFBjAFqIANBIGooAgA2AgAgAUH8AGogA0EQav0AAgD9CwIAIARBBDYC0AEgBkEFRg0HQQRBBEGok8MAEIULAAsgAEEBOgAMIAAgAikCADcCACAAQQhqIAJBCGooAgA2AgAMDwsgBEGQB2pCADcDACAE/QwAAAAAAAAAAAAAAAAAAAAA/QsDgAcMBwtBlJLDAEEnQbySwwAQ1gwAC0EDQQNBiJPDABCFCwALQQNBA0GIk8MAEIULAAsgASoCLCABKgIIkyIZQwAAAAAgASoCJCABKgIAkyIbiyABKgIoIAEqAgSTIhyLXiIDGyEWQwAAAAAgGYwgAxshFSAbjCAcIAMbIRcgBCgCyAFBAkYEQCAEQcgBakGUkcMAEJUIIAQoAswBIQELIAEgHzgCaCABICA4AmQgASAhOAJgIAEgIiAcIBYgFyAXlCAVIBWUIBYgFpSSkpEiGpUiFpQgGyAVIBqVIhWUkyIYIBggGJQgGSAVlCAcIBcgGpUiFZSTIhcgF5QgGyAVlCAZIBaUkyIWIBaUkpKRIhqVIhWYIB0gFZSSIhg4AlwgASAjIBYgGpUiFZggHSAVlJIiFjgCWCABICQgFyAalSIVmCAdIBWUkiIVOAJUIAEgGCAfkzgCUCABIBYgIJM4AkwgASAVICGTOAJIIARBAzYC0AFBAwshAyAEQQI2AsAEIARCgICAgBA3ArgEIARBATYCzAQgBEKAgICAIDcCxAQgBEEBNgLYBCAEQoGAgIAQNwLQBCAEQQA2AuQEIARCADcC3AQgBEGwBmoiCCABIAMgBEG4BGogBEHQBGoQ3gIgBEHoBGoiAUEwaiIKIAhBMGoiBygCADYCACABQSBqIgYgCEEgaiID/QACAP0LAwAgAUEQaiIFIAhBEGoiAf0AAgD9CwMAIAQgBP0AArAG/QsD6AQgCCAEKALMASAEKALQASAEQcQEaiAEQdwEahDeAiAEQaAFaiIIQTBqIAcoAgA2AgAgCEEgaiAD/QACAP0LAwAgCEEQaiAB/QACAP0LAwAgBCAE/QACsAb9CwOgBSAEKALUASIDIAQoAtwBIghGBEAgD0GEj8MAEJsIIAQoAtQBIQMLIAQoAtgBIgEgCEE0bGoiByAE/QAD6AT9CwIAIAdBIGogBv0AAwD9CwIAIAdBEGogBf0AAwD9CwIAIAdBMGogCigCADYCACAEIAhBAWoiBTYC3AEgAyAFRgRAIA9BlI/DABCbCCAEKALYASEBCyABIAVBNGxqIgMgBP0AA6AF/QsCACADQSBqIARBoAVqIgFBIGr9AAMA/QsCACADQRBqIAFBEGr9AAMA/QsCACADQTBqIAFBMGooAgA2AgAgBCAIQQJqNgLcASAEKAL0ASIBIAQoAuwBRgRAIAxBqNrCABC0CAsgBCgC8AEiByABQQN0akIANwIAIAQgAUEBajYC9AECQCABRQRAQQAhAwwBCwNAIAcgAUEBayIGQQF2IgNBA3RqIgVBBGoqAgBDAAAAAF1FBEAgASEDDAILIAcgAUEDdGogBSkCADcCACADIQEgBkEBSw0ACwsgByADQQN0akIANwIAIAQoAvQBIgEgBCgC7AFGBEAgDEGo2sIAELQICyAEKALwASIHIAFBA3RqQgE3AgAgBCABQQFqNgL0AQJAIAFFBEBBACEDDAELA0AgByABQQFrIgZBAXYiA0EDdGoiBUEEaioCAEMAAAAAXUUEQCABIQMMAgsgByABQQN0aiAFKQIANwIAIAMhASAGQQFLDQALCyAHIANBA3RqQgE3AgAMAQsgASoCSCABKgIAIhmTIRsgASoCKCABKgIEIhaTIhcgASoCUCABKgIIIhyTIhqUIAEqAiwgHJMiFSABKgJMIBaTIhiUkyABKgJsIBmTlCAVIBuUIAEqAiQgGZMiFSAalJMgASoCcCAWk5SSIBUgGJQgFyAblJMgASoCdCAck5SSQwAAAABeBEAgAUEkaiIF/QACACEoIAUgAUHIAGoiB/0AAgD9CwIAIAcgKP0LAgAgBUEQaiID/QACACEoIAMgB0EQaiIG/QACAP0LAgAgBUEgaiIDKAIAIQUgAyAHQSBqIgMoAgA2AgAgBiAo/QsCACADIAU2AgALIARBAjYCgAIgBEKAgICAEDcC+AEgBEECNgKMAiAEQoGAgIAwNwKEAiAEQQM2ApgCIARCgICAgCA3ApACIARBATYCpAIgBEKAgICAMDcCnAIgBEECNgKwAiAEQoOAgIAQNwKoAiAEQQA2ArwCIARCg4CAgCA3ArQCIARBAzYCyAIgBEKAgICAEDcCwAIgBEEANgLUAiAEQoKAgIAQNwLMAiAEQbAGaiIJIAFBBCAEQfgBaiAEQagCahDeAiAEQdgCaiIBQTBqIgcgCUEwaiILKAIANgIAIAFBIGoiBiAJQSBqIgr9AAIA/QsDACABQRBqIgUgCUEQaiID/QACAP0LAwAgBCAE/QACsAb9CwPYAiAELQDkBiERIAkgBCgCzAEgBCgC0AEgBEGEAmogBEG0AmoQ3gIgBEGQA2oiAUEwaiALKAIANgIAIAFBIGogCv0AAgD9CwMAIAFBEGogA/0AAgD9CwMAIAQgBP0AArAG/QsDkAMgBC0A5AYhEiAJIAQoAswBIAQoAtABIARBkAJqIARBwAJqEN4CIARByANqIgFBMGogCygCADYCACABQSBqIAr9AAIA/QsDACABQRBqIAP9AAIA/QsDACAEIAT9AAKwBv0LA8gDIAQtAOQGIQggCSAEKALMASAEKALQASAEQZwCaiAEQcwCahDeAiAEQYAEaiIBQTBqIAsoAgA2AgAgAUEgaiAK/QACAP0LAwAgAUEQaiAD/QACAP0LAwAgBCAE/QACsAb9CwOABCAELQDkBiEKIAQoAtQBIgMgBCgC3AEiCUYEQCAPQdiMwwAQmwggBCgC1AEhAwsgBCgC2AEiASAJQTRsaiILIAT9AAPYAv0LAgAgC0EgaiAG/QADAP0LAgAgC0EQaiAF/QADAP0LAgAgC0EwaiAHKAIANgIAIAQgCUEBaiIFNgLcASADIAVGBEAgD0HojMMAEJsIIAQoAtQBIQMgBCgC2AEhAQsgASAFQTRsaiIGIAT9AAOQA/0LAgAgBkEgaiAEQZADaiIFQSBq/QADAP0LAgAgBkEQaiAFQRBq/QADAP0LAgAgBkEwaiAFQTBqKAIANgIAIAQgCUECaiIFNgLcASADIAVGBEAgD0H4jMMAEJsIIAQoAtQBIQMgBCgC2AEhAQsgASAFQTRsaiIGIAT9AAPIA/0LAgAgBkEgaiAEQcgDaiIFQSBq/QADAP0LAgAgBkEQaiAFQRBq/QADAP0LAgAgBkEwaiAFQTBqKAIANgIAIAQgCUEDaiIFNgLcASADIAVGBEAgD0GIjcMAEJsIIAQoAtgBIQELIAEgBUE0bGoiBSAE/QADgAT9CwIAIAVBIGogBEGABGoiA0Egav0AAwD9CwIAIAVBEGogA0EQav0AAwD9CwIAIAVBMGogA0EwaigCADYCACAEIAlBBGoiAzYC3AECQCARQQFxRQ0AAkAgAwRAIAQoAtABRQ0BIAEqAhggBCgCzAEiAyoCAJQgAUEcaioCACADQQRqKgIAlJIgAUEgaioCACADQQhqKgIAlJIiFUMAAKC1XQ0HIBWMIRYgBCgC9AEiASAEKALsAUYEQCAMQajawgAQtAgLIAQoAvABIgcgAUEDdGoiAyAWOAIEIANBADYCACAEIAFBAWo2AvQBQQAhAwJAIAFFDQADQCAHIAFBAWsiBkEBdiIDQQN0aiIFQQRqKgIAIBZdRQRAIAEhAwwCCyAHIAFBA3RqIAUpAgA3AgAgAyEBIAZBAUsNAAsLIAcgA0EDdGoiASAWOAIEIAFBADYCAAwCC0EAQQBBmI3DABCFCwALQQBBAEGojcMAEIULAAsCQCASQQFxRQ0AAkAgBCgC3AEiAUECTwRAIAQoAtABIgFBAU0NASAEKALYASIDKgJMIAQoAswBIgEqAiSUIANB0ABqKgIAIAFBKGoqAgCUkiADQdQAaioCACABQSxqKgIAlJIiFUMAAKC1XQ0HIBWMIRYgBCgC9AEiASAEKALsAUYEQCAMQajawgAQtAgLIAQoAvABIgcgAUEDdGoiAyAWOAIEIANBATYCACAEIAFBAWo2AvQBAkAgAUUEQEEAIQMMAQsDQCAHIAFBAWsiBkEBdiIDQQN0aiIFQQRqKgIAIBZdRQRAIAEhAwwCCyAHIAFBA3RqIAUpAgA3AgAgAyEBIAZBAUsNAAsLIAcgA0EDdGoiASAWOAIEIAFBATYCAAwCC0EBIAFBuI3DABCFCwALQQEgAUHIjcMAEIULAAsCQCAIQQFxRQ0AAkAgBCgC3AEiAUEDTwRAIAQoAtABIgFBAk0NASAEKALYASIDKgKAASAEKALMASIBKgJIlCADQYQBaioCACABQcwAaioCAJSSIANBiAFqKgIAIAFB0ABqKgIAlJIiFUMAAKC1XQ0HIBWMIRYgBCgC9AEiASAEKALsAUYEQCAMQajawgAQtAgLIAQoAvABIgcgAUEDdGoiAyAWOAIEIANBAjYCACAEIAFBAWo2AvQBAkAgAUUEQEEAIQMMAQsDQCAHIAFBAWsiBkEBdiIDQQN0aiIFQQRqKgIAIBZdRQRAIAEhAwwCCyAHIAFBA3RqIAUpAgA3AgAgAyEBIAZBAUsNAAsLIAcgA0EDdGoiASAWOAIEIAFBAjYCAAwCC0ECIAFB2I3DABCFCwALQQIgAUHojcMAEIULAAsCQCAKQQFxRQ0AAkAgBCgC3AEiAUEETwRAIAQoAtABIgFBA00NASAEKALYASIDKgK0ASAEKALMASIBKgJslCADQbgBaioCACABQfAAaioCAJSSIANBvAFqKgIAIAFB9ABqKgIAlJIiFUMAAKC1XQ0HIBWMIRYgBCgC9AEiASAEKALsAUYEQCAMQajawgAQtAgLIAQoAvABIgcgAUEDdGoiAyAWOAIEIANBAzYCACAEIAFBAWo2AvQBAkAgAUUEQEEAIQMMAQsDQCAHIAFBAWsiBkEBdiIDQQN0aiIFQQRqKgIAIBZdRQRAIAEhAwwCCyAHIAFBA3RqIAUpAgA3AgAgAyEBIAZBAUsNAAsLIAcgA0EDdGoiASAWOAIEIAFBAzYCAAwCC0EDIAFB+I3DABCFCwALQQMgAUGIjsMAEIULAAsgEUEBcQ0AIBJBAXENACAIQQFxDQAgCkEBcQ0AQfTKxAAoAgBBBEkNBCAEQQA2AsAGIARBATYCtAYgBEHsjsMANgKwBiAEQgQ3ArgGIARB9I7DADYC8AUgBEEZNgLsBSAEQeyLwwA2AugFIARBGTYC5AUgBEHsi8MANgLgBSAEQbAGaiAEQeAFahCQCgwECyAEKAL0AUUNAyAEKALwASgCACEOIARB1AVqIAwQqQQCQCAEKALUBUEBRw0AIARBhAZqIREgBEH4BWohEiAEQewFaiEIQ///f38hHkEAIQkDQAJAAkACQAJAAkACQAJAAkACQCAEKALYBSIHIAQoAtwBIgFJBEAgBCoC3AUhGSAIIAdBNGwiBSAEKALYAWoiASkCDDcCACASIAEpAhg3AgAgESABKQIkNwIAIARB6AVqIAFBCGooAgA2AgAgCEEIaiABQRRqKAIANgIAIBJBCGogAUEgaigCADYCACARQQhqIAFBLGooAgA2AgAgBCABKQIANwPgBSAEIAEtADAiAToAkAYgAQ0IIAQqAvgFIiUgJZQgBCoC/AUiJiAmlJIgBCoCgAYiJyAnlJKRIRcgIiAnIBeVIhWYIB0gFZSSIhogH5MhGyAjICYgF5UiFZggHSAVlJIiGCAgkyEcICQgJSAXlSIVmCAdIBWUkiIVICGTIRcgBCgC0AEiECAEKALIAUYEQCAEQcgBakG0j8MAEJUICyAEKALMASAQQSRsaiIBIB84AiAgASAgOAIcIAEgITgCGCABIBo4AhQgASAYOAIQIAEgFTgCDCABIBs4AgggASAcOAIEIAEgFzgCACAEIBBBAWoiAzYC0AEgByAOICcgG5QgJSAXlCAmIByUkpIiFSAeXSIBGyEOIAQoAtwBIQYgGSAVIB4gARsiHpJDAABIN11FBEAgBiAHTQ0CIAQoAtgBIAVqQQE6ADAgBCgC7AUiCyAEKALcASIGTw0DIAQoAtgBIgEgC0E0bGogBCgC4AUQ/gYhBSAEKALwBSIKIAZPDQQgASAKQTRsaiAEKALkBRD+BiEDIAQoAvQFIgcgBk8NBSABIAdBNGxqIAQoAugFEP4GIQEgBEHIAWoiBiAQIAsgBRDAAiAGIBAgCiADEMACIAYgECAHIAEQwAIgBCgC6AEiBUUNECAZjCEVIAQoAtwBIRMgBCgC5AEiAUEIaiEDIAEgBUEDdGohCgNAIAMhBQJAAkACQCAEKALcASINIAEoAgAiA0sEQCAEKALYASADQTRsaiIGLQAwDQMgBCADNgKkBiABKAIEIQMgBCAQNgKgBiAEIA1BAWs2AqwGIAQgDUEBajYCqAYgBCAGIANBAWpBA3BBAnRqKAIANgKcBiAEIAYgA0ECakEDcEECdGooAgA2ApgGIARBsAZqIAQoAswBIAQoAtABIARBmAZqIARBpAZqEN4CIAYgASgCBEEBakEDcEECdGogDTYCDCAEKALcASIGIAQoAtQBRgRAIA9BtJDDABCbCAsgBCgC2AEiASAGQTRsaiIHIAT9AAKwBv0LAgAgB0EgaiAEQbAGaiIDQSBq/QACAP0LAgAgB0EQaiADQRBq/QACAP0LAgAgB0EwaiADQTBqKAIANgIAIAQgBkEBaiIDNgLcASAELQDkBkUNAyADIA1NDQsgASANQTRsaiIHKAIAIgEgBCgC0AEiBk8NDCAEKALMASIDIAFBJGxqIgEqAgAgByoCGJQgASoCBCAHQRxqKgIAlJIgASoCCCAHQSBqKgIAlJIiGCAVXQ0NIBhDAACgtV0iAw0VIBiMIRggBCgC9AEiASAEKALsAUYEQCAMQajawgAQtAgLIBYgGCADGyEWIBQgDSADGyEUIAQoAvABIgsgAUEDdGoiAyAYOAIEIAMgDTYCACAEIAFBAWo2AvQBIAENAUEAIQMMAgsgAyANQaSQwwAQhQsACwNAIBYgCyABQQFrIgdBAXYiA0EDdGoiBkEEaioCAF5FBEAgASEDDAILIAsgAUEDdGogBikCADcCACADIQEgB0EBSw0ACwsgCyADQQN0aiIBIBY4AgQgASAUNgIACyAFIAUgCkdBA3RqIQMgCiAFIgFHDQALDAoLIAYgDksEQCAEQbAGaiIBIAQoAtgBIA5BNGxqIAQoAswBIAMQvAcgBEGIB2ogAUEIaigCADYCACAEIAQpArAGNwOABwwNCyAOIAZB5JDDABCFCwALIAcgAUGkj8MAEIULAAsgByAGQcSPwwAQhQsACyALIAZB1I/DABCFCwALIAogBkHkj8MAEIULAAsgByAGQfSPwwAQhQsACyANIANBxJDDABCFCwALIAEgBkHUkMMAEIULAAsgBEHoBmoiASAEQeAFaiADIAYQvAcgBEGIB2ogAUEIaigCADYCACAEIAQpAugGNwOABwwECyAEQdQFaiAMEKkEIAQoAtQFDQEMAgsgBCgC3AEiASATRg0FIAEgE00NAyAEKALYASATQTRsaiABQQFrNgIUIAQoAtwBIgFFDQQgBCgC2AEgAUE0bGoiAUE0Rg0EIAFBJGsgEzYCACAEQQA2AugBIAlB5ABGDQEgBEHUBWogDBCpBCAJQQFqIQkgBCgC1AUNAAsLIAQoAtwBIgEgDksEQCAEQbAGaiIBIAQoAtgBIA5BNGxqIAQoAswBIAQoAtABELwHIARBiAdqIAFBCGooAgA2AgAgBCAEKQKwBjcDgAcMAQsgDiABQfSQwwAQhQsACyAAQQhqIARBiAdqKAIANgIAIAAgBCkDgAc3AgAgAEEBOgAMDAMLIBMgAUGEkMMAEIULAAtBlJDDABDyDgALIABBAToADCAAIAIpAgA3AgAgAEEIaiACQQhqKAIANgIACyAEKALIASIABEAgBCgCzAEgAEEkbEEEEOgOCyAEKALUASIABEAgBCgC2AEgAEE0bEEEEOgOCyAEKALgASIABEAgBCgC5AEgAEEDdEEEEOgOCyAEKALsASIARQ0CIAQoAvABIABBA3RBBBDoDgwCCyAEQbAGaiAEQQEQ3AMgBCoCuAYhGCAEKgK0BiEXIAQqArAGCyEWIAAgGDgCCCAAIBc4AgQgACAWOAIAIABBADoADAsgBEHAB2okAAuePgQTfw99AXsCfiMAQZAIayIHJAAgB/0MAAAAAAAAAAAAAAAAAAAAAP0LBLABIAf9DAAAAAABAAAAAgAAAAMAAAD9CwQAIAdBEGoiCUEAQaAB/AsAAn0gASoCECIlICWUIAEqAhQiJiAmlJIgASoCGCInICeUkiIbQwAAgCheRQRAQwAAgD8hHUMAAAAAIRtDAAAAAAwBCyAnIBuRIhqVIRsgJSAalSEdICYgGpULIRogByAbOALUASAHIBo4AtABIAcgHTgCzAEgB0HYBWoiCCACIAdBzAFqIAMRAQAgByAHKgLUAYw4ApAHIAcgByoC0AGMOAKMByAHIAcqAswBjDgCiAcgB0GYBmoiCiAEIAEgB0GIB2ogBRECACAHQSRqIAhBCGoiECgCADYCACAHQTBqIApBCGoiCigCADYCACAHIAcpAtgFNwIcIAcgBykCmAY3AyhBACEIIAdBADYCvAEgB0EANgKsASAHKgLYBSEbIAcqApgGIRogByoC3AUhHCAHKgKcBiEdIAcgECoCACAKKgIAkzgCGCAHIBwgHZM4AhQgByAbIBqTOAIQIAdB2AFqIAEgAiADIAQgBSAGQQEgBxDLAQJAAkACQAJAAkACQAJAAkACQAJAIAcoAtgBIgpFBEAgB0KAgICAwAA3AqQCIAdCgICAgMAANwKYAiAHQoCAgIDAADcCjAIgB0KAgICAwAA3AoACIAdBADYCrAIgB0EANgKUAiAHQQA2AogCIAdBADYCoAIgB0GkAmohECAHQYwCaiETIAcoArwBIghBf0YEQEEEIQhBACEJDAMLIAdBgAJqQYSRwwAQlQggBygChAIiCiAJ/QACAP0LAgAgCkEgaiAJQSBqKAIANgIAIApBEGogCUEQav0AAgD9CwIAIAdBATYCiAIgCEUEQEMAAIA/IRpDAAAAACEGQwAAAAAhHUMAAAAAIRtDAAAAACEcDAYLIAhBAmohCiAHQTRqIQkgBygCgAJBAUYEQCAHQYACakGEkcMAEJUICyAHKAKEAiIIIAn9AAIA/QsCJCAIQTRqIAlBEGr9AAIA/QsCACAIQcQAaiAJQSBqKAIANgIAIAdBAjYCiAIgCkEDRg0BIAdB2ABqIQkgBygCgAJBAkYEQCAHQYACakGEkcMAEJUIIAcoAoQCIQgLIAggCf0AAgD9CwJIIAhB6ABqIAlBIGooAgA2AgAgCEHYAGogCUEQav0AAgD9CwIAQQMhCSAHQQM2AogCIApBBEYNAiAHQfwAaiEJIAcoAoACQQNGBEAgB0GAAmpBhJHDABCVCCAHKAKEAiEICyAIIAn9AAIA/QsCbCAIQYwBaiAJQSBqKAIANgIAIAhB/ABqIAlBEGr9AAIA/QsCACAHQQQ2AogCIApBBUYNA0EEQQRBqJPDABCFCwALIAcqAvwBIRsgByoC+AEhGiAHKgL0ASEcIAcqAvABIR8gByoC7AEhISAHKgLoASEiIAcqAuQBIQYgByoC4AEhHiAHKgLcASEdAkAgCkECaw4CAAoGC0Ho2sIAQShB7PbCABDWDAALQwAAAAAgCCoCLCAIKgIIkyIGjCAIKgIkIAgqAgCTIhuLIAgqAiggCCoCBJMiGoteIggbIhwgG4wgGiAIGyIdIB2UIBwgHJQgBkMAAAAAIAgbIhwgHJSSkpEiHpUhICAHIAYgIJQgGiAdIB6VIh2UkyIfOAKACCAHIBsgHZQgBiAcIB6VIgaUkyIcOAKECCAHIBogBpQgGyAglJMiBjgCiAggB0HAB2ogAiAHQYAIaiADEQEAIAcgBow4ApAHIAcgHIw4AowHIAcgH4w4AogHIAdBmAZqIAQgASAHQYgHaiAFEQIAIAcqAqAGIQYgByoCnAYhGyAHKgKYBiEaIAcqAsgHIRwgByoCxAchHSAHKgLAByEeIAcoAogCIgkgBygCgAJGBEAgB0GAAmpBlJHDABCVCAsgBygChAIgCUEkbGoiCCAcIAaTOAIIIAggHSAbkzgCBCAIIB4gGpM4AgAgCCAHKQLABzcCDCAIIAcpApgGNwIYIAhBFGogB0HIB2ooAgA2AgAgCEEgaiAHQaAGaigCADYCACAHIAlBAWoiCTYCiAIgBygChAIhCAsgB0ECNgL4BCAHQoCAgIAQNwLwBCAHQQE2AoQFIAdCgICAgCA3AvwEIAdBATYCkAUgB0KBgICAEDcCiAUgB0EANgKcBSAHQgA3ApQFIAdBiAdqIgogCCAJIAdB8ARqIAdBiAVqEN4CIAdBoAVqIghBMGoiDiAKQTBqIgkoAgA2AgAgCEEgaiINIApBIGoiC/0AAgD9CwMAIAhBEGoiESAKQRBqIhL9AAIA/QsDACAHIAf9AAKIB/0LA6AFIAogBygChAIgBygCiAIgB0H8BGogB0GUBWoQ3gIgB0HYBWoiCEEwaiAJKAIANgIAIAhBIGogC/0AAgD9CwMAIAhBEGogEv0AAgD9CwMAIAcgB/0AAogH/QsD2AUgBygCjAIiCSAHKAKUAiIKRgRAIBNBhI/DABCbCCAHKAKMAiEJCyAHKAKQAiIIIApBNGxqIgsgB/0AA6AF/QsCACALQSBqIA39AAMA/QsCACALQRBqIBH9AAMA/QsCACALQTBqIA4oAgA2AgAgByAKQQFqIgs2ApQCIAkgC0YEQCATQZSPwwAQmwggBygCkAIhCAsgCCALQTRsaiIIIAf9AAPYBf0LAgAgCEEgaiAHQdgFaiIJQSBq/QADAP0LAgAgCEEQaiAJQRBq/QADAP0LAgAgCEEwaiAJQTBqKAIANgIAIAcgCkECajYClAIgBygCrAIiCCAHKAKkAkYEQCAQQajawgAQtAgLIAcoAqgCIgogCEEDdGpCADcCACAHIAhBAWo2AqwCAkAgCEUEQEEAIQkMAQsDQCAKIAhBAWsiC0EBdiIJQQN0aiIOQQRqKgIAQwAAAABdRQRAIAghCQwCCyAKIAhBA3RqIA4pAgA3AgAgCSEIIAtBAUsNAAsLIAogCUEDdGpCADcCACAHKAKsAiIIIAcoAqQCRgRAIBBBqNrCABC0CAsgBygCqAIiCiAIQQN0akIBNwIAIAcgCEEBajYCrAICQCAIRQRAQQAhCQwBCwNAIAogCEEBayILQQF2IglBA3RqIg5BBGoqAgBDAAAAAF1FBEAgCCEJDAILIAogCEEDdGogDikCADcCACAJIQggC0EBSw0ACwsgCiAJQQN0akIBNwIADAELIAgqAkggCCoCACIbkyEaIAgqAiggCCoCBCIGkyIdIAgqAlAgCCoCCCIckyIelCAIKgIsIByTIiAgCCoCTCAGkyIflJMgCCoCbCAbk5QgICAalCAIKgIkIBuTIhsgHpSTIAgqAnAgBpOUkiAbIB+UIB0gGpSTIAgqAnQgHJOUkkMAAAAAXgRAIAhBJGoiCf0AAgAhKSAJIAhByABqIgr9AAIA/QsCACAKICn9CwIAIAlBEGoiC/0AAgAhKSALIApBEGoiC/0AAgD9CwIAIAlBIGoiCSgCACEOIAkgCkEgaiIJKAIANgIAIAsgKf0LAgAgCSAONgIACyAHQQI2ArgCIAdCgICAgBA3ArACIAdBAjYCxAIgB0KBgICAMDcCvAIgB0EDNgLQAiAHQoCAgIAgNwLIAiAHQQE2AtwCIAdCgICAgDA3AtQCIAdBAjYC6AIgB0KDgICAEDcC4AIgB0EANgL0AiAHQoOAgIAgNwLsAiAHQQM2AoADIAdCgICAgBA3AvgCIAdBADYCjAMgB0KCgICAEDcChAMgB0GIB2oiCSAIQQQgB0GwAmogB0HgAmoQ3gIgB0GQA2oiC0EwaiIMIAlBMGoiCCgCADYCACALQSBqIg8gCUEgaiIK/QACAP0LAwAgC0EQaiIVIAlBEGoiC/0AAgD9CwMAIAcgB/0AAogH/QsDkAMgBy0AvAchDiAJIAcoAoQCIAcoAogCIAdBvAJqIAdB7AJqEN4CIAdByANqIg1BMGogCCgCADYCACANQSBqIAr9AAIA/QsDACANQRBqIAv9AAIA/QsDACAHIAf9AAKIB/0LA8gDIActALwHIQ0gCSAHKAKEAiAHKAKIAiAHQcgCaiAHQfgCahDeAiAHQYAEaiIRQTBqIAgoAgA2AgAgEUEgaiAK/QACAP0LAwAgEUEQaiAL/QACAP0LAwAgByAH/QACiAf9CwOABCAHLQC8ByERIAkgBygChAIgBygCiAIgB0HUAmogB0GEA2oQ3gIgB0G4BGoiCUEwaiAIKAIANgIAIAlBIGogCv0AAgD9CwMAIAlBEGogC/0AAgD9CwMAIAcgB/0AAogH/QsDuAQgBy0AvAchEiAHKAKMAiIJIAcoApQCIgpGBEAgE0HYjMMAEJsIIAcoAowCIQkLIAcoApACIgggCkE0bGoiCyAH/QADkAP9CwIAIAtBIGogD/0AAwD9CwIAIAtBEGogFf0AAwD9CwIAIAtBMGogDCgCADYCACAHIApBAWoiCzYClAIgCSALRgRAIBNB6IzDABCbCCAHKAKMAiEJIAcoApACIQgLIAggC0E0bGoiCyAH/QADyAP9CwIAIAtBIGogB0HIA2oiDEEgav0AAwD9CwIAIAtBEGogDEEQav0AAwD9CwIAIAtBMGogDEEwaigCADYCACAHIApBAmoiCzYClAIgCSALRgRAIBNB+IzDABCbCCAHKAKMAiEJIAcoApACIQgLIAggC0E0bGoiCyAH/QADgAT9CwIAIAtBIGogB0GABGoiDEEgav0AAwD9CwIAIAtBEGogDEEQav0AAwD9CwIAIAtBMGogDEEwaigCADYCACAHIApBA2oiCzYClAIgCSALRgRAIBNBiI3DABCbCCAHKAKQAiEICyAIIAtBNGxqIgkgB/0AA7gE/QsCACAJQSBqIAdBuARqIgtBIGr9AAMA/QsCACAJQRBqIAtBEGr9AAMA/QsCACAJQTBqIAtBMGooAgA2AgAgByAKQQRqIgk2ApQCAkAgDkEBcUUNAAJAIAkEQCAHKAKIAkUNASAIKgIYIAcoAoQCIgkqAgCUIAhBHGoqAgAgCUEEaioCAJSSIAhBIGoqAgAgCUEIaioCAJSSIgZDAACgtV0NCCAGjCEGIAcoAqwCIgggBygCpAJGBEAgEEGo2sIAELQICyAHKAKoAiIKIAhBA3RqIgkgBjgCBCAJQQA2AgAgByAIQQFqNgKsAkEAIQkCQCAIRQ0AA0AgCiAIQQFrIgtBAXYiCUEDdGoiDEEEaioCACAGXUUEQCAIIQkMAgsgCiAIQQN0aiAMKQIANwIAIAkhCCALQQFLDQALCyAKIAlBA3RqIgggBjgCBCAIQQA2AgAMAgtBAEEAQZiNwwAQhQsAC0EAQQBBqI3DABCFCwALAkAgDUEBcUUNAAJAIAcoApQCIghBAk8EQCAHKAKIAiIIQQFNDQEgBygCkAIiCCoCTCAHKAKEAiIJKgIklCAIQdAAaioCACAJQShqKgIAlJIgCEHUAGoqAgAgCUEsaioCAJSSIgZDAACgtV0NCCAGjCEGIAcoAqwCIgggBygCpAJGBEAgEEGo2sIAELQICyAHKAKoAiIKIAhBA3RqIgkgBjgCBCAJQQE2AgAgByAIQQFqNgKsAgJAIAhFBEBBACEJDAELA0AgCiAIQQFrIgtBAXYiCUEDdGoiDEEEaioCACAGXUUEQCAIIQkMAgsgCiAIQQN0aiAMKQIANwIAIAkhCCALQQFLDQALCyAKIAlBA3RqIgggBjgCBCAIQQE2AgAMAgtBASAIQbiNwwAQhQsAC0EBIAhByI3DABCFCwALAkAgEUEBcUUNAAJAIAcoApQCIghBA08EQCAHKAKIAiIIQQJNDQEgBygCkAIiCCoCgAEgBygChAIiCSoCSJQgCEGEAWoqAgAgCUHMAGoqAgCUkiAIQYgBaioCACAJQdAAaioCAJSSIgZDAACgtV0NCCAGjCEGIAcoAqwCIgggBygCpAJGBEAgEEGo2sIAELQICyAHKAKoAiIKIAhBA3RqIgkgBjgCBCAJQQI2AgAgByAIQQFqNgKsAgJAIAhFBEBBACEJDAELA0AgCiAIQQFrIgtBAXYiCUEDdGoiDEEEaioCACAGXUUEQCAIIQkMAgsgCiAIQQN0aiAMKQIANwIAIAkhCCALQQFLDQALCyAKIAlBA3RqIgggBjgCBCAIQQI2AgAMAgtBAiAIQdiNwwAQhQsAC0ECIAhB6I3DABCFCwALAkAgEkEBcUUNAAJAIAcoApQCIghBBE8EQCAHKAKIAiIIQQNNDQEgBygCkAIiCCoCtAEgBygChAIiCSoCbJQgCEG4AWoqAgAgCUHwAGoqAgCUkiAIQbwBaioCACAJQfQAaioCAJSSIgZDAACgtV0NCCAGjCEGIAcoAqwCIgggBygCpAJGBEAgEEGo2sIAELQICyAHKAKoAiIKIAhBA3RqIgkgBjgCBCAJQQM2AgAgByAIQQFqNgKsAgJAIAhFBEBBACEJDAELA0AgCiAIQQFrIgtBAXYiCUEDdGoiDEEEaioCACAGXUUEQCAIIQkMAgsgCiAIQQN0aiAMKQIANwIAIAkhCCALQQFLDQALCyAKIAlBA3RqIgggBjgCBCAIQQM2AgAMAgtBAyAIQfiNwwAQhQsAC0EDIAhBiI7DABCFCwALIA5BAXENACANQQFxDQAgEUEBcQ0AIBJBAXENAEH0ysQAKAIAQQRJDQUgB0EANgKYByAHQQE2AowHIAdB7I7DADYCiAcgB0IENwKQByAHQfSOwwA2AqgGIAdBGTYCpAYgB0Hsi8MANgKgBiAHQRk2ApwGIAdB7IvDADYCmAYgB0GIB2ogB0GYBmoQkAoMBQsgBygCrAJFDQQgBygCqAIoAgAhCyAHQYwGaiAQEKkEAkACfQJAIAcoAowGQQFHDQAgB0G8BmohFSAHQbAGaiERIAdBpAZqIRdD//9/fyEbQQAhEgNAAkACQAJAAkACQAJAAkACQCAHKAKQBiIJIAcoApQCIghJBEAgByoClAYhGiAHQYAIaiIMQQhqIgogCUE0bCIPIAcoApACaiIIQRRqKAIANgIAIAcgCCkCDDcDgAggB0HAB2oiFkEIaiIOIAhBIGooAgA2AgAgByAIKQIYNwPAByAHQYgHaiIUQQhqIhkgCEEsaigCADYCACAILQAwIQ0gCCkCACEqIAgpAiQhKyAHQaAGaiAIQQhqKAIANgIAIAcgKzcDiAcgByAqNwOYBiAXQQhqIAooAgA2AgAgFyAHKQOACDcCACARQQhqIA4oAgA2AgAgESAHKQPABzcCACAVQQhqIBkoAgA2AgAgFSAHKQOIBzcCACAHIA06AMgGIA0NByAMIAIgESADEQEAIAcgByoCuAaMOAKQByAHIAcqArQGjDgCjAcgByAHKgKwBow4AogHIBYgBCABIBQgBRECACAHQegGaiINIAooAgA2AgAgB0HYBmoiDCAOKAIANgIAIAcgBykCgAg3A+AGIAcgBykCwAc3A9AGIAoqAgAgDioCAJMhHCAHKgKECCAHKgLEB5MhHSAHKgKACCAHKgLAB5MhHiAHKAKIAiIOIAcoAoACRgRAIAdBgAJqQbSPwwAQlQgLIAcoAoQCIA5BJGxqIgggHDgCCCAIIB04AgQgCCAeOAIAIAggBykD4AY3AgwgCCAHKQPQBjcCGCAIQRRqIA0oAgA2AgAgCEEgaiAMKAIANgIAIAcgDkEBaiIKNgKIAiAJIAsgHiAHKgKwBpQgHSAHKgK0BpSSIBwgByoCuAaUkiIcIBtdIg0bIQsgBygClAIhCAJAIBogHCAbIA0bIhuSQwAASDddRQRAIAggCU0NAyAHKAKQAiAPakEBOgAwIAcoAqQGIgggBygClAIiCU8NBCAHKAKQAiAIQTRsaiAHKAKYBhD+BiEJIAcoAqgGIgggBygClAIiCk8NBSAHKAKQAiAIQTRsaiAHKAKcBhD+BiEKIAcoAqwGIgggBygClAIiDU8NBiAHKAKQAiAIQTRsaiAHKAKgBhD+BiENIAdBgAJqIgggDiAHKAKkBiAJEMACIAggDiAHKAKoBiAKEMACIAggDiAHKAKsBiANEMACIAcoAqACIgpFDRMgGowhHCAHKAKUAiENIAcoApwCIghBCGohCSAIIApBA3RqIRYDQCAJIQoCQAJAAkAgCCgCACIMIAcoApQCIglJBEAgBygCkAIgDEE0bGoiDy0AMA0DIAcgDDYC/AYgCCgCBCEMIAcgDjYC+AYgByAJQQFrNgKEByAHIAlBAWo2AoAHIAcgDyAMQQFqQQNwQQJ0aigCADYC9AYgByAPIAxBAmpBA3BBAnRqKAIANgLwBiAHQYgHaiAHKAKEAiAHKAKIAiAHQfAGaiAHQfwGahDeAiAPIAgoAgRBAWpBA3BBAnRqIAk2AgwgBygClAIiDCAHKAKMAkYEQCATQbSQwwAQmwgLIAcoApACIhQgDEE0bGoiCCAH/QACiAf9CwIAIAhBIGogB0GIB2oiD0Egav0AAgD9CwIAIAhBEGogD0EQav0AAgD9CwIAIAhBMGogD0EwaigCADYCACAHIAxBAWoiCDYClAIgBy0AvAdFDQMgCCAJTQ0MIBQgCUE0bGoiCCgCACIMIAcoAogCIg9PDQ0gBygChAIiFCAMQSRsaiIMKgIAIAgqAhiUIAwqAgQgCEEcaioCAJSSIAwqAgggCEEgaioCAJSSIhogHF0NBiAaQwAAoLVdIgwNGCAajCEaIAcoAqwCIgggBygCpAJGBEAgEEGo2sIAELQICyAGIBogDBshBiAYIAkgDBshGCAHKAKoAiIMIAhBA3RqIg8gGjgCBCAPIAk2AgAgByAIQQFqNgKsAiAIDQFBACEJDAILIAwgCUGkkMMAEIULAAsDQCAGIAwgCEEBayIPQQF2IglBA3RqIhRBBGoqAgBeRQRAIAghCQwCCyAMIAhBA3RqIBQpAgA3AgAgCSEIIA9BAUsNAAsLIAwgCUEDdGoiCCAGOAIEIAggGDYCAAsgCiAKIBZHQQN0aiEJIBYgCiIIRw0ACwwKCyAIIAtLBEAgB0GIB2ogBygCkAIgC0E0bGoiAiAHKAKEAiAKELwHIAIqAhwhGiACKgIYIRwgAioCIAwNCyALIAhB5JDDABCFCwALIAdBwAdqIAdBmAZqIBQgDxC8ByAHKgK4BiEbIAcqArQGIRogByoCsAYhHCAHKgLUByEfIAcqAtAHISEgByoCzAchIiAHKgLIByEGIAcqAsQHIR4gByoCwAchHQwNCyAJIAhBpI/DABCFCwALIAkgCEHEj8MAEIULAAsgCCAJQdSPwwAQhQsACyAIIApB5I/DABCFCwALIAggDUH0j8MAEIULAAsgCSAIQcSQwwAQhQsACyAMIA9B1JDDABCFCwALIAdBjAZqIBAQqQQgBygCjAYNAQwCCyAHKAKUAiIIIA1GDQggCCANTQ0GIAcoApACIA1BNGxqIAhBAWs2AhQgBygClAIiCEUNByAHKAKQAiAIQTRsaiIIQTRGDQcgCEEkayANNgIAIAdBADYCoAIgEkHkAEYNASAHQYwGaiAQEKkEIBJBAWohEiAHKAKMBg0ACwsgBygClAIiAiALTQ0BIAdBiAdqIAcoApACIAtBNGxqIgIgBygChAIgBygCiAIQvAcgAioCHCEaIAIqAhghHCACKgIgCyEbIAcqApwHIR8gByoCmAchISAHKgKUByEiIAcqApAHIQYgByoCjAchHiAHKgKIByEdDAELIAsgAkH0kMMAEIULAAsgBygCgAIiAgRAIAcoAoQCIAJBJGxBBBDoDgsgBygCjAIiAgRAIAcoApACIAJBNGxBBBDoDgsgBygCmAIiAgRAIAcoApwCIAJBA3RBBBDoDgsgBygCpAIiAkUNACAHKAKoAiACQQN0QQQQ6A4LIAAgGzgCJCAAIBo4AiAgACAcOAIcIAAgBjgCDCAAIB44AgggACAdOAIEIAAgGyAfIAaTlCAcICIgHZOUIBogISAek5SSkjgCNCAAIAEqAgwiICAaIAEqAgAiBpQgHCABKgIEIh2UkyIeIB6SIiiUIB0gGyAdlCAaIAEqAggiHpSTIiMgI5IiI5QgBiAcIB6UIBsgBpSTIiQgJJIiJJSTkiAbkzgCMCAAICAgJJQgBiAolCAeICOUk5IgGpM4AiwgACAgICOUIB4gJJQgHSAolJOSIByTOAIoIB0gIiAlkyIclCAGICEgJpMiIZSTIhsgG5IhGyAhIB6UIB8gJ5MiHyAdlJMiGiAakiEaIAAgHyAgIBuUIB0gGpQgBiAfIAaUIBwgHpSTIh8gH5IiH5STkpI4AhggACAhICAgH5QgBiAblCAeIBqUk5KSOAIUIAAgHCAgIBqUIB4gH5QgHSAblJOSkjgCEEEBIQgMAwsgDSAIQYSQwwAQhQsAC0GUkMMAEPIOAAsgBygCgAIiAQRAIAcoAoQCIAFBJGxBBBDoDgsgBygCjAIiAQRAIAcoApACIAFBNGxBBBDoDgsgBygCmAIiAQRAIAcoApwCIAFBA3RBBBDoDgsgBygCpAIiAQRAIAcoAqgCIAFBA3RBBBDoDgtBACEICyAAIAg2AgAgB0GQCGokAAv9RQRhfwN+D30GeyMAQaAMayIFJAACQAJAIAEgACgCOE8NACACIAAoAjQgAUEUbGoiBCgCAEcNAAJAAkACQAJAAkACQAJAIAQoAgQiFSAAKAJMTw0AIAAoAkggFUGkAmxqIggoAgAiJkGAgICAeEYNACAEKAIIIAgoAqACRw0AIAQoAhAhJyAEKAIMIQ0gACkCPCFlIAVB6AZqIgQgCEEEakGgAvwKAAAgCCBlNwIEIAhBgICAgHg2AgAgACAVNgJAIABBATYCPCAAIAAoAlBBAWo2AlAgACAAKAJUQQFrNgJUIAVBFGogBEGcAvwKAAAgBSAmNgIQICcgBSgCGCISTw0BIAUoAhQiFSAnQfADbGoiBCgCkAMEQCAEKAKYAyIEIBJPDQMgFSAEQfADbGoiCCgC8AIiHCAAKAI4Tw0EIAgoAvQCIgYgACgCNCAcQRRsaiIEKAIARw0EIAQoAgwiBCAAKAIgIg9PDQcgACgCLCEOIAAoAighDCAAKAIcIhYgBEEEdGpBCGoiCCEHA0ACQCAOIAcoAgAiBE0EQANAIA4gCCgCBCIETQ0LIAwgBEEEdGoiCCgCCCANRw0ADAILAAsgDCAEQQR0aiIHKAIMIA1HDQELCyAMIARBBHRqIhcpAggiZqciCCAPTw0GIBcpAgAiZachDSBmQiCIpyETIBYgCEEEdGoiCCgCCCIHIARHBEADQCAHIA5PDQcgDCAHQQR0aiIIKAIAIgcgBEcNAAsgCCANNgIADAYLIAhBCGogDTYCAAwFCyAFQRBqEPICDAcLQdDCwgAQ8g4AC0HgwsIAEPIOAAtB8MLCABDyDgALQYDDwgAQ8g4ACyAPIBNNDQAgZUIgiKchDSAWIBNBBHRqIggoAgwiByAERwRAA0AgByAOTw0CIAwgB0EEdGoiCCgCBCIHIARHDQALIAhBBGogDTYCAAwBCyAIQQxqIA02AgALIAAgDkEBayINNgIsIBcgDCANQQR0av0AAgD9CwIAIAQgDU8NACAMIARBBHRqKQIIImWnIgggD08NACBlQiCIpyEHAkAgDSAWIAhBBHRqIggoAggiEUcEQANAIA0gEU0NAiANIAwgEUEEdGoiCCgCACIRRw0ACyAIIAQ2AgAMAQsgCEEIaiAENgIACyAHIA9PDQAgDSAWIAdBBHRqIggoAgwiEUcEQANAIA0gEU0NAiANIAwgEUEEdGoiCCgCBCIRRw0ACyAIQQRqIAQ2AgAMAQsgCEEMaiAENgIACyADBEAgACABIAIQ2wMgACAcIAYQ2wMLIAUtAK0CIRkgBSgCmAIhWCAFKAKUAiEzIAUoApACISggBSgCjAIhHCAFKAKIAiE0IAUoAoQCISkgBSgCgAIhFyAFKAL8ASE1IAUoAvABIVkgBSgC7AEhNiAFKALkASFaIAUoAuABITcgBSgC0AEhWyAFKALMASE4IAUoArwBIVwgBSgCuAEhOSAFKAKoASFdIAUoAqQBITogBSgCmAEhXiAFKAKUASE7IAUoAoQBIV8gBSgCgAEhPCAFKAJwIWAgBSgCbCE9IAUoAlwhYSAFKAJYIT4gBSgCVCEqIAUoAlAhEyAFKAJMIT8gBSgCSCFiIAUoAkAhISAFKAI8IUAgBSgCOCFjIAUoAjAhIiAFKAIsIUEgBSgCKCFkIAUoAiAhIyAFKAIcIUIgBUEANgKUCSAFQoCAgIDAADcCjAkCQAJAAkACQCASQQJ0Ih9BBBCRDiIJBEAgCSEBIBJBAUcEQCAfQQRrIgEEQCAJQf8BIAH8CwALIAEgCWohAQsgAUF/NgIAIB9BBBCRDiIMRQ0BIAwhASAAQTxqIUMgAEEYaiENIBJBAUcEQCAfQQRrIgEEQCAMQf8BIAH8CwALIAEgDGohAQsgAUF/NgIAIBUgEkHwA2xqIRogBUG4C2ohRCAFQdwEaiFFIAVB6gtqISAgBUH9C2ohHSAFQZAMaiEYIAVB0wtqISQgBUGPC2ohHiAFQdcCaiFGQQAhESAVIQRBACEHA0AgBEHoAmotAAAiR0ECRg0FIARBywJqLQAAISsgBEHJAmovAAAhLCAEQRhqKQMAIWcgBEEQaikDACFmIARBqANqKgAAIWggBEGYA2ooAAAhJSAEQc0Cai0AACEOIARBzAJqLQAAIQ8gBEHIAmotAAAhAiAEQcQCai0AACEbIARBwAJqKgIAIWkgBEG8AmoqAgAhaiAEQagCai0AACEQIARBpAJqKgIAIWsgBEGgAmoqAgAhbCAEQYwCai0AACFIIARBiAJqKgIAIW0gBEGEAmoqAgAhbiAEQfABai0AACFJIARB7AFqKgIAIW8gBEHoAWoqAgAhcCAEQdQBai0AACFKIARB0AFqKgIAIXEgBEHMAWoqAgAhciAEQbgBai0AACFLIARBtAFqKgIAIXMgBEGwAWoqAgAhdCAEQZABav0ABAAhdyAEQfQAaioCACF1IARB5ABqKAIAIUwgBEHgAGoqAgAhdiAEQdAAav0ABAAheCAEQUBr/QAEACF5IARBMGr9AAQAIXogBEEgav0ABAAheyAE/QAEACF8IAVBiAtqIk0gBEHwAGooAgA2AgAgBUHwCmoiLSAEQYABav0AAwD9CwMAIAVBxwpqIk4gBEHIAWooAAA2AAAgBUGvCmoiTyAEQeQBaigAADYAACAFIARB6ABqKQIANwOACyAFIARB+ABqKQMANwPoCiAFIARBoAFq/QAEAP0LBNAKIAUgBEG5AWr9AAAA/QsDuAogBSAEQdUBav0AAAD9CwOgCiAFQZcKaiJQIARBgAJqKAAANgAAIAVB/wlqIlEgBEGcAmooAAA2AAAgBUHnCWoiUiAEQbgCaigAADYAACAFQdYJaiIuIARBxwJqLQAAOgAAIAVBuAlqIgFBGGoiUyAEQeYCai8BADsBACABQRBqIlQgBEHeAmopAQA3AwAgBSAEQfEBav0AAAD9CwOICiAFIARBjQJq/QAAAP0LA/AJIAUgBEGpAmr9AAAA/QsD2AkgBSAEQcUCai8AADsB1AkgBSAEQc4Cav0AAQD9CwO4CSBGIARBkANqKQAANwAAIAVBsAJqIgFBIGoiLyAEQYkDaikAADcDACABQRBqIjAgBEH5Amr9AAAA/QsDACAFQbAJaiJVIARBpANqKAAANgIAIAVBoAlqIlYgBEG0A2ooAAA2AgAgBUHoBmoiAUEgaiIKIARB2ANq/QAAAP0LAwAgAUEQaiILIARByANq/QAAAP0LAwAgAUEwaiIWIARB6ANqKQAANwMAIAUgBEHpAmr9AAAA/QsDsAIgBSAEQZwDaikAADcDqAkgBSAEQawDaikAADcDmAkgBSAEQbgDav0AAAD9CwPoBgJ/AkACQAJAAkACQCAHRSAHICdGciIGBEAgByASTw0CIAkgEWogBSgClAkiMTYCACAFQQA2ApwLIAVCADcClAsgBUKAgICAwAA3AowLIAVB0ARqIAVBjAtqIgEQgwEgBUEANgLgCyAFQgA3AtgLIAVCgICAgMAANwLQCyABIAVB0AtqEIMBIAUoAowJIDFGBEAjAEEgayIBJABBBCAFQYwJaiIyKAIAIhRBAXQiAyADQQRNGyIIrUKgAn4iZUIgiEIAUgRAQQBBAEG8ksIAENcNAAsCQCBlpyIDQfz///8HTQR/IAEgFAR/IAEgFEGgAmw2AhwgASAyKAIENgIUQQQFQQALNgIYIAFBCGpBBCADIAFBFGoQ4gkgASgCCEEBRw0BIAEoAhAhVyABKAIMBUEACyBXQbySwgAQ1w0ACyABKAIMIQMgMiAINgIAIDIgAzYCBCABQSBqJAALIAUoApAJIDFBoAJsaiIDQQA2AlggA0IANwJQIANCgICAgMAANwJIIANCBDcCQCADQgA3AjggA0IENwIwIANCADcCKCADQgQ3AiAgA0IANwIYIANCBDcCECADQgA3AgggA0KAgICAgAI3AgAgAyAF/QAC0AT9CwJcIANB/ABqIAVB0ARqIgFBIGopAgA3AgAgA0HsAGogAUEQav0AAgD9CwIAIANBADYCpAEgA0IANwKcASADQoCAgIDAADcClAEgA0KAgICAcDcCjAEgA0KAgICAwAA3AoQBIANBBDYCiAIgA0KAgICAwAA3AtABIANCADcC2AEgA0IENwLgASADQgA3AugBIANCBDcC8AEgA0KAgICAwAA3AvgBIANCADcCgAIgA0HIAWogBUGMC2oiAUEgaikCADcCACADIAX9AAKMC/0LAqgBIANBuAFqIAFBEGr9AAIA/QsCACADQZwCakEAOgAAIAP9DAAAAAAAAAAAAAAAAAAAAAD9CwKMAiADIBk6AJ0CIAUgMUEBajYClAkMAQsgEiAlTQ0JIAcgEk8NCiAJIBFqIAkgJUECdGooAgA2AgALIAcgEkYNASAJIBFqKAIAIgMgBSgClAkiAU8NAiAMIBFqIAUoApAJIANBoAJsaiIIKAIIIgM2AgAgBg0DICwgK0EQdHIMBAsgByASQaySwgAQhQsACyASIBJBzJLCABCFCwALIAMgAUHcksIAEIULAAsgTSBVKAIANgIAIAUgBSkDqAk3A4ALIAVB0ARqIgFBCGogVigCADYCACAFIAUpA5gJNwPQBEIAIWYgRUIANwIAQQAhDyBFQQhqQQA2AgAgHv0MAAAAAAAAAAAAAAAAAAAAAP0LAAAgJP0MAAAAAAAAAAAAAAAAAAAAAP0LAAAgGP0MAAAAAAAAAAAAAAAAAAAAAP0LAAAgHf0MAAAAAAAAAAAAAAAAAAAAAP0LAAAgIP0MAAAAAAAAAAAAAAAAAAAAAP0LAAAgRP0MAAAAAAAAAAAAAAAAAAAAAP0LAQAgREEQakIANwEAIAX9DAAAAAAAAAAAAAAAAAAAAAD9CwTQCiAFQfgKaiABQRBqKQMANwMAIAUgBf0AA9AE/QsD6AogTiAFQZsLaigAADYAACAFIAX9AACMC/0LA7gKIE8gBUHfC2ooAAA2AAAgBSAF/QAA0Av9CwOgCiBQIAVBnAxqKAAANgAAIAUgBf0AAI0M/QsDiAogUSAFQYkMaigAADYAACAFIAX9AAD6C/0LA/AJIFIgBUH2C2ooAAA2AAAgBSAF/QAA5wv9CwPYCSBTIAVBtgtqIgFBGGovAQA7AQAgVCABQRBqKQEANwMAIAUgBf0AAbYL/QsDuAn9DAAAgD8AAAAAAAAAAAAAAAAhd/0MAAAAAP//f////39/AAAAACF5/Qz//39/AAAAAP//f////39/IXr9DAAAAAAAAAAAAAAAAAAAgD8hfEE/IQJDAAAAACFzQQEhDkP//39/IXYgaCF1QgAhZ0P//39/IXRBACFLQ///f38hckMAAAAAIXFBACFKQ///f38hcEMAAAAAIW9BACFJQ///f38hbkMAAAAAIW1BACFIQ///f38hbEMAAAAAIWtBACEQQ///f38hakMAAAAAIWlBACEbQQAhR0EAIUz9DP//f////39/AAAAAP//f/8he/0M//9/////f38AAAAA//9//yF4QQALIQEgCCAIKAKUAiACQf8BcWlrQQZqNgKUAiAIKAIAIANGBEAgCEHsksIAEJkICyAIKAIEIANB8ANsaiIGIGc3AxggBiBmNwMQIAYgTDYCZCAGIHY4AmAgBiB4/QsEUCAGIHn9CwRAIAYgev0LBDAgBiB7/QsEICAGIHz9CwQAIAYgBSkDgAs3AmggBiB1OAJ0IAYgBSkD6Ao3A3ggBiB3/QsEkAEgBkHwAGogTSgCADYCACAGQYABaiAt/QADAP0LAwAgBiB0OAKwASAGIHM4ArQBIAYgSzoAuAEgBiByOALMASAGIHE4AtABIAYgSjoA1AEgBiBwOALoASAGIG84AuwBIAYgSToA8AEgBiAF/QAE0Ar9CwSgASAGQcgBaiBOKAAANgAAIAYgBf0AA7gK/QsAuQEgBkHkAWogTygAADYAACAGIAX9AAOgCv0LANUBIAYgbjgChAIgBiBtOAKIAiAGIEg6AIwCIAYgbDgCoAIgBiBrOAKkAiAGIBA6AKgCIAZBgAJqIFAoAAA2AAAgBiAF/QADiAr9CwDxASAGQZwCaiBRKAAANgAAIAYgBf0AA/AJ/QsAjQIgBkG4AmogUigAADYAACAGIAX9AAPYCf0LAKkCIAYgGzoAxAIgBiBpOALAAiAGIGo4ArwCIAZBxwJqIC4tAAA6AAAgBiAFLwHUCTsAxQIgBkHLAmogAUEQdjoAACAGIAE7AMkCIAYgDjoAzQIgBiAPOgDMAiAGIAI6AMgCIAZB5gJqIFMvAQA7AQAgBkHeAmogVCkDADcBACAGIAX9AAO4Cf0LAc4CIAYgRzoA6AIgBkGQA2ogRikAADcAACAGQYkDaiAvKQMANwAAIAZB+QJqIDD9AAMA/QsAACAGIAX9AAOwAv0LAOkCIAYgJTYCmAMgBkGkA2ogVSgCADYCACAGIAUpA6gJNwKcAyAGIGg4AqgDIAZBtANqIFYoAgA2AgAgBiAFKQOYCTcCrAMgBkHoA2ogFikDADcDACAGQdgDaiAK/QADAP0LAwAgBkHIA2ogC/0AAwD9CwMAIAYgBf0AA+gG/QsDuAMgCCADQQFqNgIIIAdBAWohByARQQRqIREgGiAEQfADaiIERw0ACwwEC0EEIB9B3JHCABDXDQALQQQgH0HskcIAENcNAAsgJSASQYySwgAQhQsACyAHIBJBnJLCABCFCwALICYEQCAVICZB8ANsQRAQ6A4LIAUoApAJIgYgBSgClAkiJEGgAmxqISAgJARAIAZBoAJqIQMgBiEVA0AgFSEBIAMhFSABIAEoApQCIAEoAggQ6gUgAUHQAWogASgCCCABKAKUAhD9AiABKAIIIgIEQCABKAIEIgcgAkHwA2xqISsgB0HwA2ohA0EBIQ9BACEOIAFBGGohLCABQRBqIS0gAUEoaiEuIAFBIGohLyABQThqITAgAUEwaiEKQQAhAgNAIAMhCCAHAn8CQEEGIActAMgCaSIZayIUIAJqIhYgLCgCAE0EQCAHKAKUAyIBIBRqIGRLDQggAkECdCEaAkAgGUEGRiIeDQAgLSgCACEdIAFBAnQhGEEAIRACQCAUQQhJDQAgGiAdaiIEIBggI2oiA2tBEEkNACAUQXxxIhAhAQNAIAQgA/0AAgD9CwIAIARBEGohBCADQRBqIQMgAUEEayIBDQALIBAgFEYNAQsgECAZaiELQQIgGWtBA3EiAQRAICMgEEECdCIDIBhqaiEEIB0gAyAaamohAyABIBBqIRADQCADIAQqAgA4AgAgBEEEaiEEIANBBGohAyABQQFrIgENAAsLIAtBA2tBA0kNACAdIBBBAnQiASAaamohBCAjIAEgGGpqIQNBBiAQIBlqayEBA0AgBCADKgIAOAIAIARBBGogA0EEaioCADgCACAEQQhqIANBCGoqAgA4AgAgBEEMaiADQQxqKgIAOAIAIARBEGohBCADQRBqIQMgAUEEayIBDQALCyAWIC4oAgBLDQggBygClAMiASAUaiBjSw0IAkAgHg0AIC8oAgAhHSABQQJ0IRhBACEQAkAgFEEISQ0AIBogHWoiBCAYICJqIgNrQRBJDQAgFEF8cSIQIQEDQCAEIAP9AAIA/QsCACAEQRBqIQQgA0EQaiEDIAFBBGsiAQ0ACyAQIBRGDQELIBAgGWohC0ECIBlrQQNxIgEEQCAiIBBBAnQiAyAYamohBCAdIAMgGmpqIQMgASAQaiEQA0AgAyAEKgIAOAIAIARBBGohBCADQQRqIQMgAUEBayIBDQALCyALQQNrQQNJDQAgHSAQQQJ0IgEgGmpqIQQgIiABIBhqaiEDQQYgECAZamshAQNAIAQgAyoCADgCACAEQQRqIANBBGoqAgA4AgAgBEEIaiADQQhqKgIAOAIAIARBDGogA0EMaioCADgCACAEQRBqIQQgA0EQaiEDIAFBBGsiAQ0ACwsgFiAwKAIASw0IIAcoApQDIgEgFGogYksNCAJAIB4NACAKKAIAIRggAUECdCEeQQAhGwJAIBRBCEkNACAYIBpqIgQgHiAhaiIDa0EQSQ0AIBRBfHEiGyEBA0AgBCAD/QACAP0LAgAgBEEQaiEEIANBEGohAyABQQRrIgENAAsgFCAbRg0BCyAZIBtqIQtBAiAZa0EDcSIBBEAgISAbQQJ0IgMgHmpqIQQgGCADIBpqaiEDIAEgG2ohGwNAIAMgBCoCADgCACAEQQRqIQQgA0EEaiEDIAFBAWsiAQ0ACwsgC0EDa0EDSQ0AIBggG0ECdCIBIBpqaiEEICEgASAeamohA0EGIBkgG2prIQEDQCAEIAMqAgA4AgAgBEEEaiADQQRqKgIAOAIAIARBCGogA0EIaioCADgCACAEQQxqIANBDGoqAgA4AgAgBEEQaiEEIANBEGohAyABQQRrIgENAAsLIAcgAjYClAMgByAONgKQA0EAIA5FDQIaIAcoApgDIgEgEkkNASABIBJB/JHCABCFCwALDAcLIAwgAUECdGooAgALNgKYAyAIQfADQQAgCCArRyIBG2ohAyABIA8iDmohDyAIIQcgFiECIAENAAsLIBVBAEGgAiAVICBGIgEbaiEDIAFFDQALCyAFKAKMCSEWIAwgH0EEEOgOIAkgH0EEEOgOIEIEQCAjIEJBAnRBBBDoDgsgQQRAICIgQUECdEEEEOgOCyBABEAgISBAQQJ0QQQQ6A4LICoEQCATIQQDQCAEKAIAIgEEQCAEQQRqKAIAIAFBAnRBBBDoDgsgBEEQaiEEICpBAWsiKg0ACwsgPwRAIBMgP0EEdEEEEOgOCyA+BEAgYSA+QQJ0QQQQ6A4LID0EQCBgID1BAnRBBBDoDgsgPARAIF8gPEEDdEEEEOgOCyA7BEAgXiA7QQJ0QQQQ6A4LIDoEQCBdIDpBAnRBBBDoDgsgOQRAIFwgOUECdEEEEOgOCyA4BEAgWyA4QQN0QQQQ6A4LIDcEQCBaIDdBGGxBBBDoDgsgNgRAIFkgNkECdEEEEOgOCyApBEAgFyEEA0AgBCgCACIBBEAgBEEEaigCACABQQJ0QQQQ6A4LIARBEGohBCApQQFrIikNAAsLIDUEQCAXIDVBBHRBBBDoDgsgKARAIBwhBANAIAQoAgAiAQRAIARBBGooAgAgAUECdEEEEOgOCyAEQRBqIQQgKEEBayIoDQALCyA0BEAgHCA0QQR0QQQQ6A4LIDMEQCBYIDNBAnRBBBDoDgsgBiECAkACQCAkRQ0AIAVB9AZqIQggBUG0AmohFQJAAkADQCACIgFBoAJqIQIgASgCACITQYCAgIB4Rg0DIAUgEzYCsAIgFSABQQRqQZwC/AoAAAJAAkACQAJAAkACQAJAIAUoArgCIgRBAUYEQCAFKAK0AiIDKALwAiIBIAAoAjhPDQEgAygC9AIgACgCNCABQRRsaiIDKAIARw0BIAVB6AZqIQECQCADKAIMIgQgDSgCCCIOTw0AIA0oAgQiDyAEQQR0aiIDQQhqIRwgDSgCFCELIA0oAhAhDCADKAIIIglBf0cEQANAAkAgCSALTw0AAkAgDCAJQQR0aiIXKQIIImanIgMgDk8NACAXKQIAImWnIQcgZkIgiKchEwJAIAkgDyADQQR0aiIDKAIIIgpHBEADQCAKIAtPDQIgCSAMIApBBHRqIgMoAgAiCkcNAAsgAyAHNgIADAELIANBCGogBzYCAAsgDiATTQ0AIGVCIIinIQcgCSAPIBNBBHRqIgMoAgwiCkcEQANAIAogC08NAiAJIAwgCkEEdGoiAygCBCIKRw0ACyADQQRqIAc2AgAMAQsgA0EMaiAHNgIACyANIAtBAWsiCzYCFCAXIAwgC0EEdGr9AAIA/QsCACAJIAtPDQAgFykCCCJlpyIDIA5PDQAgZUIgiKchBwJAIAsgDyADQQR0aiIDKAIIIgpHBEADQCAKIAtPDQIgCyAMIApBBHRqIgMoAgAiCkcNAAsgAyAJNgIADAELIANBCGogCTYCAAsgByAOTw0AIAsgDyAHQQR0aiIDKAIMIgpHBEADQCAKIAtPDQIgCyAMIApBBHRqIgMoAgQiCkcNAAsgA0EEaiAJNgIADAELIANBDGogCTYCAAsgHCgCACIJQX9HDQALCyAcKAIEIglBf0cEQANAAkAgCSALTw0AAkAgDCAJQQR0aiIXKQIIImanIgMgDk8NACAXKQIAImWnIQcgZkIgiKchEwJAIAkgDyADQQR0aiIDKAIIIgpHBEADQCAKIAtPDQIgCSAMIApBBHRqIgMoAgAiCkcNAAsgAyAHNgIADAELIANBCGogBzYCAAsgDiATTQ0AIGVCIIinIQcgCSAPIBNBBHRqIgMoAgwiCkcEQANAIAogC08NAiAJIAwgCkEEdGoiAygCBCIKRw0ACyADQQRqIAc2AgAMAQsgA0EMaiAHNgIACyANIAtBAWsiCzYCFCAXIAwgC0EEdGr9AAIA/QsCACAJIAtPDQAgFykCCCJlpyIDIA5PDQAgZUIgiKchBwJAIAsgDyADQQR0aiIDKAIIIgpHBEADQCAKIAtPDQIgCyAMIApBBHRqIgMoAgAiCkcNAAsgAyAJNgIADAELIANBCGogCTYCAAsgByAOTw0AIAsgDyAHQQR0aiIDKAIMIgpHBEADQCAKIAtPDQIgCyAMIApBBHRqIgMoAgQiCkcNAAsgA0EEaiAJNgIADAELIANBDGogCTYCAAsgHCgCBCIJQX9HDQALCyANIA5BAWsiDjYCCCAPIARBBHRqIgMgDyAOQQR0av0AAgD9CwIAIAQgDk8NACADKQIIImVCIIinIQkgCyBlpyIKSwRAA0AgDCAKQQR0aiIDIAQ2AgggCyADKAIAIgpLDQALCyAJIAtPDQADQCAMIAlBBHRqIgMgBDYCDCADKAIEIgkgC0kNAAsLIAEgBCAOSQR/IAEgDSgCBCAEQQR0aikCADcCBEEBBUEACzYCACAFKALoBgRAIAUoAuwGIgEgACgCOE8NAyAFKALwBiAAKAI0IAFBFGxqIgEoAgBHDQMgASAENgIMCyAFQbACahDyAgwGCyAFKAK0AiEDIAVB0ARqIAFBDGoiAUGUAvwKAAAgQygCAEEBRw0CIAAoAkAiByAAKAJMIgFPDQggACgCSCAHQaQCbGoiASgCAEGAgICAeEYNAyAFQQA2ApwLIAVBATYCkAsgBUH4icIANgKMCyAFQgQ3ApQLIAVBjAtqQYCKwgAQuQ0AC0GQw8IAEPIOAAtBoMPCABDyDgALIAggAUGUAvwKAAAgBSAENgLwBiAFIAM2AuwGIAUgEzYC6AYgBUEIaiBDIAVB6AZqEK0GIAUoAgwhESAFKAIIIQcMAQsgASATNgIAIAAgASkCBDcCPCABIAQ2AgggASADNgIEIAAgACgCVEEBajYCVCAAKAJQIREgAUEMaiAFQdAEakGUAvwKAAAgASARNgKgAgsgByAAKAJMTw0EIAAoAkggB0GkAmxqIgMoAgBBgICAgHhGDQQgAygCoAIgEUcNBCADKAIIIgFFDQAgAUHwA2whASADKAIEQZADaiEEA0AgBEEgaygCACIDIAAoAjhPDQIgBEEcaygCACAAKAI0IANBFGxqIgMoAgBHDQIgAyARNgIIIAMgBzYCBCADIAQoAgA2AhAgBEHwA2ohBCABQfADayIBDQALCyACICBHDQEMBQsLQcDDwgAQ8g4ACyAHIAFB1InCABCFCwALQdCLwgBBE0Gww8IAENELAAsgICACa0GgAm4hBCACICBGDQADQCACEPICIAJBoAJqIQIgBEEBayIEDQALCyAWRQ0AIAYgFkGgAmxBBBDoDgsgBUGgDGokAA8LIAVBADYC4AQgBUEBNgLUBCAFQbD9wQA2AtAEIAVCBDcC2AQgBUHQBGpBuP3BABC5DQALzTkDEX8JfQF7IwBBkAdrIgYkACAEQQhqIgcqAgAhGyAEKgIAIR0gBCoCBCEcIAZBGGogBygCADYCACAG/QwAAAAAAAAAAAAAAAAAAIA//QsEACAGIAQpAgA3AxBDAACAPyEXIB0gHZQgHCAclJIgGyAblJIiGUMAAIAoXgRAIBsgGZEiF5UhGiAcIBeVIRggHSAXlSEXCyAGIBo4AiggBiAYOAIkIAYgFzgCICAGQSxqIgcgBiABIAIgBkEgahDNAyADQQA2AqwBIANBADYCvAEgAyAG/QACLP0LAhAgA0EgaiAHQRBq/QACAP0LAgAgA0EwaiAHQSBqKAIANgIAIAb9DAAAAIAAAACAAAAAgAAAgD/9CwSQBSAGIBsgHEMAAACAlCAdQwAAAACUkiIXIBeSIh4gG0MAAACAlCAcQwAAAACUkiIXIBeSIhlDAAAAAJQiGiAdQwAAAICUIBtDAAAAAJSSIhcgF5IiF0MAAAAAlCIYk5KSIh84AqgFIAYgHCAXIB5DAAAAAJQiFyAak5KSIhs4AqQFIAYgHSAZIBggF5OSkiIcOAKgBSAGQbADaiADEGsCQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAGKgKwAyIXIBeUIAYqArQDIhcgF5SSIAYqArgDIhggGJSSQwAAAABeRQ0AQ///f38hF0HkACEHAkACQAJAAkADQCAGKgKwAyIdIB2UIAYqArQDIhkgGZSSIAYqArgDIhggGJSSIhpDAADIK15FDQUgBiAYjCAakSIYlSIeOAKgBCAGIBmMIBiVIhk4ApwEIAYgHYwgGJUiGjgCmAQgFyAYXw0EIAZBgAZqIgkgBkGQBWogASACIAZBmARqEM0DIBogBioCgAaUIBkgBioChAaUkiAeIAYqAogGlJIiF7xB/////wdxQYCAgPwHTw0GIBdD//9//11FBEAgGCAXkiAYQ70bjzqUXw0EIAMgCRDhA0UNAiAGQbADaiADEGsgAygCvAFBA0YNAyAYIRcgB0EBayIHDQELC0Ho2sIAQShBhJLDABDWDAALIAZB0ARqIANBABDcAwwOCyAXQwAAoLVfRQ0CIAZB0ARqIANBARDcAwwNCyAGQdAEaiADQQAQ3AMMDAsgBkHQBGogA0EBENwDDAsLAkAgBUUEQCAGQoCAgIDAADcCdCAGQoCAgIDAADcCaCAGQoCAgIDAADcCXCAGQoCAgIDAADcCUCAGIB84ApgBIAYgGzgClAEgBiAcOAKQASAG/QwAAACAAAAAgAAAAIAAAIA//QsEgAEgBkEANgJ8IAZBADYCZCAGQQA2AlggBkEANgJwIAZB9ABqIQ4gBkHcAGohEiADKAK8ASIIQX9GBEBBBCEHQQAhBQwFCyAGQdAAaiIFQYSRwwAQlQggBigCVCIHIANBEGoiCf0AAgD9CwIAIAdBIGogCUEgaigCADYCACAHQRBqIAlBEGr9AAIA/QsCACAGQQE2AlggCEUNASAIQQJqIQggA0E0aiEJIAYoAlBBAUYEQCAFQYSRwwAQlQggBigCVCEHCyAHIAn9AAIA/QsCJCAHQcQAaiAJQSBqKAIANgIAIAdBNGogCUEQav0AAgD9CwIAIAZBAjYCWCAIQQNGDQMgA0HYAGohBSAGKAJQQQJGBEAgBkHQAGpBhJHDABCVCCAGKAJUIQcLIAcgBf0AAgD9CwJIIAdB6ABqIAVBIGooAgA2AgAgB0HYAGogBUEQav0AAgD9CwIAQQMhBSAGQQM2AlggCEEERg0EIANB/ABqIQMgBigCUEEDRgRAIAZB0ABqQYSRwwAQlQggBigCVCEHCyAHIAP9AAIA/QsCbCAHQYwBaiADQSBqKAIANgIAIAdB/ABqIANBEGr9AAIA/QsCACAGQQQ2AlggCEEFRg0FQQRBBEGok8MAEIULAAsgAEEBOgAMIAAgBCkCADcCACAAQQhqIARBCGooAgA2AgAMDAsgBkHgBmpCADcDACAG/QwAAAAAAAAAAAAAAAAAAAAA/QsD0AYMBQtBlJLDAEEnQbySwwAQ1gwACyAHKgIsIAcqAgiTIhtDAAAAACAHKgIkIAcqAgCTIhyLIAcqAiggByoCBJMiGIteIgMbIhcgHIwgGCADGyIeIB6UQwAAAAAgG4wgAxsiGiAalCAXIBeUkpKRIheVIRkgBiAYIBmUIBwgGiAXlSIalJM4ApgFIAYgHCAeIBeVIheUIBsgGZSTOAKUBSAGIBsgGpQgGCAXlJM4ApAFIAZBgAZqIAZBgAFqIAEgAiAGQZAFahDNAyAGKAJYIgcgBigCUEYEQCAGQdAAakGUkcMAEJUICyAGKAJUIAdBJGxqIgUgBv0AAoAG/QsCACAFQSBqIAZBgAZqIgNBIGooAgA2AgAgBUEQaiADQRBq/QACAP0LAgAgBiAHQQFqIgU2AlggBigCVCEHCyAGQQI2AvADIAZCgICAgBA3AugDIAZBATYC/AMgBkKAgICAIDcC9AMgBkEBNgKIBCAGQoGAgIAQNwKABCAGQQA2ApQEIAZCADcCjAQgBkGABmoiCiAHIAUgBkHoA2ogBkGABGoQ3gIgBkGYBGoiA0EwaiIMIApBMGoiCCgCADYCACADQSBqIgkgCkEgaiIF/QACAP0LAwAgA0EQaiIHIApBEGoiA/0AAgD9CwMAIAYgBv0AAoAG/QsDmAQgCiAGKAJUIAYoAlggBkH0A2ogBkGMBGoQ3gIgBkHQBGoiCkEwaiAIKAIANgIAIApBIGogBf0AAgD9CwMAIApBEGogA/0AAgD9CwMAIAYgBv0AAoAG/QsD0AQgBigCXCIFIAYoAmQiCkYEQCASQYSPwwAQmwggBigCXCEFCyAGKAJgIgMgCkE0bGoiCCAG/QADmAT9CwIAIAhBIGogCf0AAwD9CwIAIAhBEGogB/0AAwD9CwIAIAhBMGogDCgCADYCACAGIApBAWoiBzYCZCAFIAdGBEAgEkGUj8MAEJsIIAYoAmAhAwsgAyAHQTRsaiIFIAb9AAPQBP0LAgAgBUEgaiAGQdAEaiIDQSBq/QADAP0LAgAgBUEQaiADQRBq/QADAP0LAgAgBUEwaiADQTBqKAIANgIAIAYgCkECajYCZCAGKAJ8IgMgBigCdEYEQCAOQajawgAQtAgLIAYoAngiCCADQQN0akIANwIAIAYgA0EBajYCfAJAIANFBEBBACEFDAELA0AgCCADQQFrIglBAXYiBUEDdGoiB0EEaioCAEMAAAAAXUUEQCADIQUMAgsgCCADQQN0aiAHKQIANwIAIAUhAyAJQQFLDQALCyAIIAVBA3RqQgA3AgAgBigCfCIDIAYoAnRGBEAgDkGo2sIAELQICyAGKAJ4IgggA0EDdGpCATcCACAGIANBAWo2AnwCQCADRQRAQQAhBQwBCwNAIAggA0EBayIJQQF2IgVBA3RqIgdBBGoqAgBDAAAAAF1FBEAgAyEFDAILIAggA0EDdGogBykCADcCACAFIQMgCUEBSw0ACwsgCCAFQQN0akIBNwIADAELIAcqAkggByoCACIfkyEbIAcqAiggByoCBCIYkyIeIAcqAlAgByoCCCIckyIZlCAHKgIsIByTIhcgByoCTCAYkyIalJMgByoCbCAfk5QgFyAblCAHKgIkIB+TIhcgGZSTIAcqAnAgGJOUkiAXIBqUIB4gG5STIAcqAnQgHJOUkkMAAAAAXgRAIAdBJGoiBf0AAgAhICAFIAdByABqIgj9AAIA/QsCACAIICD9CwIAIAVBEGoiA/0AAgAhICADIAhBEGoiCf0AAgD9CwIAIAVBIGoiAygCACEFIAMgCEEgaiIDKAIANgIAIAkgIP0LAgAgAyAFNgIACyAGQQI2ArABIAZCgICAgBA3AqgBIAZBAjYCvAEgBkKBgICAMDcCtAEgBkEDNgLIASAGQoCAgIAgNwLAASAGQQE2AtQBIAZCgICAgDA3AswBIAZBAjYC4AEgBkKDgICAEDcC2AEgBkEANgLsASAGQoOAgIAgNwLkASAGQQM2AvgBIAZCgICAgBA3AvABIAZBADYChAIgBkKCgICAEDcC/AEgBkGABmoiCyAHQQQgBkGoAWogBkHYAWoQ3gIgBkGIAmoiA0EwaiIIIAtBMGoiDSgCADYCACADQSBqIgkgC0EgaiIM/QACAP0LAwAgA0EQaiIHIAtBEGoiBf0AAgD9CwMAIAYgBv0AAoAG/QsDiAIgBi0AtAYhDyALIAYoAlQgBigCWCAGQbQBaiAGQeQBahDeAiAGQcACaiIDQTBqIA0oAgA2AgAgA0EgaiAM/QACAP0LAwAgA0EQaiAF/QACAP0LAwAgBiAG/QACgAb9CwPAAiAGLQC0BiEUIAsgBigCVCAGKAJYIAZBwAFqIAZB8AFqEN4CIAZB+AJqIgNBMGogDSgCADYCACADQSBqIAz9AAIA/QsDACADQRBqIAX9AAIA/QsDACAGIAb9AAKABv0LA/gCIAYtALQGIQogCyAGKAJUIAYoAlggBkHMAWogBkH8AWoQ3gIgBkGwA2oiA0EwaiANKAIANgIAIANBIGogDP0AAgD9CwMAIANBEGogBf0AAgD9CwMAIAYgBv0AAoAG/QsDsAMgBi0AtAYhDCAGKAJcIgUgBigCZCILRgRAIBJB2IzDABCbCCAGKAJcIQULIAYoAmAiAyALQTRsaiINIAb9AAOIAv0LAgAgDUEgaiAJ/QADAP0LAgAgDUEQaiAH/QADAP0LAgAgDUEwaiAIKAIANgIAIAYgC0EBaiIHNgJkIAUgB0YEQCASQeiMwwAQmwggBigCXCEFIAYoAmAhAwsgAyAHQTRsaiIJIAb9AAPAAv0LAgAgCUEgaiAGQcACaiIHQSBq/QADAP0LAgAgCUEQaiAHQRBq/QADAP0LAgAgCUEwaiAHQTBqKAIANgIAIAYgC0ECaiIHNgJkIAUgB0YEQCASQfiMwwAQmwggBigCXCEFIAYoAmAhAwsgAyAHQTRsaiIJIAb9AAP4Av0LAgAgCUEgaiAGQfgCaiIHQSBq/QADAP0LAgAgCUEQaiAHQRBq/QADAP0LAgAgCUEwaiAHQTBqKAIANgIAIAYgC0EDaiIHNgJkIAUgB0YEQCASQYiNwwAQmwggBigCYCEDCyADIAdBNGxqIgcgBv0AA7AD/QsCACAHQSBqIAZBsANqIgVBIGr9AAMA/QsCACAHQRBqIAVBEGr9AAMA/QsCACAHQTBqIAVBMGooAgA2AgAgBiALQQRqIgU2AmQCQCAPQQFxRQ0AAkAgBQRAIAYoAlhFDQEgAyoCGCAGKAJUIgUqAgCUIANBHGoqAgAgBUEEaioCAJSSIANBIGoqAgAgBUEIaioCAJSSIhdDAACgtV0NByAXjCEYIAYoAnwiAyAGKAJ0RgRAIA5BqNrCABC0CAsgBigCeCIIIANBA3RqIgUgGDgCBCAFQQA2AgAgBiADQQFqNgJ8QQAhBwJAIANFDQADQCAIIANBAWsiCUEBdiIHQQN0aiIFQQRqKgIAIBhdRQRAIAMhBwwCCyAIIANBA3RqIAUpAgA3AgAgByEDIAlBAUsNAAsLIAggB0EDdGoiAyAYOAIEIANBADYCAAwCC0EAQQBBmI3DABCFCwALQQBBAEGojcMAEIULAAsCQCAUQQFxRQ0AAkAgBigCZCIDQQJPBEAgBigCWCIDQQFNDQEgBigCYCIFKgJMIAYoAlQiAyoCJJQgBUHQAGoqAgAgA0EoaioCAJSSIAVB1ABqKgIAIANBLGoqAgCUkiIXQwAAoLVdDQcgF4whGCAGKAJ8IgMgBigCdEYEQCAOQajawgAQtAgLIAYoAngiCCADQQN0aiIFIBg4AgQgBUEBNgIAIAYgA0EBajYCfAJAIANFBEBBACEFDAELA0AgCCADQQFrIglBAXYiBUEDdGoiB0EEaioCACAYXUUEQCADIQUMAgsgCCADQQN0aiAHKQIANwIAIAUhAyAJQQFLDQALCyAIIAVBA3RqIgMgGDgCBCADQQE2AgAMAgtBASADQbiNwwAQhQsAC0EBIANByI3DABCFCwALAkAgCkEBcUUNAAJAIAYoAmQiA0EDTwRAIAYoAlgiA0ECTQ0BIAYoAmAiBSoCgAEgBigCVCIDKgJIlCAFQYQBaioCACADQcwAaioCAJSSIAVBiAFqKgIAIANB0ABqKgIAlJIiF0MAAKC1XQ0HIBeMIRggBigCfCIDIAYoAnRGBEAgDkGo2sIAELQICyAGKAJ4IgggA0EDdGoiBSAYOAIEIAVBAjYCACAGIANBAWo2AnwCQCADRQRAQQAhBQwBCwNAIAggA0EBayIJQQF2IgVBA3RqIgdBBGoqAgAgGF1FBEAgAyEFDAILIAggA0EDdGogBykCADcCACAFIQMgCUEBSw0ACwsgCCAFQQN0aiIDIBg4AgQgA0ECNgIADAILQQIgA0HYjcMAEIULAAtBAiADQeiNwwAQhQsACwJAIAxBAXFFDQACQCAGKAJkIgNBBE8EQCAGKAJYIgNBA00NASAGKAJgIgUqArQBIAYoAlQiAyoCbJQgBUG4AWoqAgAgA0HwAGoqAgCUkiAFQbwBaioCACADQfQAaioCAJSSIhdDAACgtV0NByAXjCEYIAYoAnwiAyAGKAJ0RgRAIA5BqNrCABC0CAsgBigCeCIIIANBA3RqIgUgGDgCBCAFQQM2AgAgBiADQQFqNgJ8AkAgA0UEQEEAIQUMAQsDQCAIIANBAWsiCUEBdiIFQQN0aiIHQQRqKgIAIBhdRQRAIAMhBQwCCyAIIANBA3RqIAcpAgA3AgAgBSEDIAlBAUsNAAsLIAggBUEDdGoiAyAYOAIEIANBAzYCAAwCC0EDIANB+I3DABCFCwALQQMgA0GIjsMAEIULAAsgD0EBcQ0AIBRBAXENACAKQQFxDQAgDEEBcQ0AQfTKxAAoAgBBBEkNBCAGQQA2ApAGIAZBATYChAYgBkHsjsMANgKABiAGQgQ3AogGIAZB9I7DADYCoAUgBkEZNgKcBSAGQeyLwwA2ApgFIAZBGTYClAUgBkHsi8MANgKQBSAGQYAGaiAGQZAFahCQCgwECyAGKAJ8RQ0DIAYoAngoAgAhESAGQYQFaiAOEKkEAkAgBigChAVBAUcNACAGQbQFaiEUIAZBqAVqIQsgBkGcBWohCkP//39/IRdBACENA0ACQAJAAkACQAJAAkACQAJAAkAgBigCiAUiCCAGKAJkIgNJBEAgBioCjAUhGSAKIAhBNGwiByAGKAJgaiIDKQIMNwIAIAsgAykCGDcCACAUIAMpAiQ3AgAgBkGYBWogA0EIaigCADYCACAKQQhqIANBFGooAgA2AgAgC0EIaiADQSBqKAIANgIAIBRBCGogA0EsaigCADYCACAGIAMpAgA3A5AFIAYgAy0AMCIDOgDABSADDQggBkHEBWogBkGAAWogASACIAsQzQMgBigCWCITIAYoAlBGBEAgBkHQAGpBtI/DABCVCAsgBigCVCATQSRsaiIFIAb9AALEBf0LAgAgBUEgaiAGQcQFaiIDQSBqKAIANgIAIAVBEGogA0EQav0AAgD9CwIAIAYgE0EBaiIFNgJYIAggESAGKgLEBSAGKgKoBZQgBioCyAUgBioCrAWUkiADQQhqKgIAIAYqArAFlJIiGiAXXSIDGyERIAYoAmQhCSAZIBogFyADGyIXkkMAAEg3XUUEQCAIIAlPDQIgBigCYCAHakEBOgAwIAYoApwFIg8gBigCZCIJTw0DIAYoAmAiAyAPQTRsaiAGKAKQBRD+BiEHIAYoAqAFIgwgCU8NBCADIAxBNGxqIAYoApQFEP4GIQUgBigCpAUiCCAJTw0FIAMgCEE0bGogBigCmAUQ/gYhAyAGQdAAaiIJIBMgDyAHEMACIAkgEyAMIAUQwAIgCSATIAggAxDAAiAGKAJwIgVFDRAgGYwhGiAGKAJkIRUgBigCbCIDQQhqIQcgAyAFQQN0aiEMA0AgByEJAkACQAJAIAYoAmQiECADKAIAIgVLBEAgBigCYCAFQTRsaiIHLQAwDQMgBiAFNgL0BSADKAIEIQUgBiATNgLwBSAGIBBBAWs2AvwFIAYgEEEBajYC+AUgBiAHIAVBAWpBA3BBAnRqKAIANgLsBSAGIAcgBUECakEDcEECdGooAgA2AugFIAZBgAZqIAYoAlQgBigCWCAGQegFaiAGQfQFahDeAiAHIAMoAgRBAWpBA3BBAnRqIBA2AgwgBigCZCIHIAYoAlxGBEAgEkG0kMMAEJsICyAGKAJgIgMgB0E0bGoiCCAG/QACgAb9CwIAIAhBIGogBkGABmoiBUEgav0AAgD9CwIAIAhBEGogBUEQav0AAgD9CwIAIAhBMGogBUEwaigCADYCACAGIAdBAWoiBTYCZCAGLQC0BkUNAyAFIBBNDQsgAyAQQTRsaiIIKAIAIgUgBigCWCIHTw0MIAYoAlQiAyAFQSRsaiIFKgIAIAgqAhiUIAUqAgQgCEEcaioCAJSSIAUqAgggCEEgaioCAJSSIhkgGl0NDSAZQwAAoLVdIgUNFSAZjCEZIAYoAnwiAyAGKAJ0RgRAIA5BqNrCABC0CAsgGCAZIAUbIRggFiAQIAUbIRYgBigCeCIPIANBA3RqIgUgGTgCBCAFIBA2AgAgBiADQQFqNgJ8IAMNAUEAIQUMAgsgBSAQQaSQwwAQhQsACwNAIBggDyADQQFrIghBAXYiBUEDdGoiB0EEaioCAF5FBEAgAyEFDAILIA8gA0EDdGogBykCADcCACAFIQMgCEEBSw0ACwsgDyAFQQN0aiIDIBg4AgQgAyAWNgIACyAJIAkgDEdBA3RqIQcgDCAJIgNHDQALDAoLIAkgEUsEQCAGQYAGaiIBIAYoAmAgEUE0bGogBigCVCAFELwHIAZB2AZqIAFBCGooAgA2AgAgBiAGKQKABjcD0AYMDQsgESAJQeSQwwAQhQsACyAIIANBpI/DABCFCwALIAggCUHEj8MAEIULAAsgDyAJQdSPwwAQhQsACyAMIAlB5I/DABCFCwALIAggCUH0j8MAEIULAAsgECAFQcSQwwAQhQsACyAFIAdB1JDDABCFCwALIAZBuAZqIgEgBkGQBWogAyAHELwHIAZB2AZqIAFBCGooAgA2AgAgBiAGKQK4BjcD0AYMBAsgBkGEBWogDhCpBCAGKAKEBQ0BDAILIAYoAmQiAyAVRg0FIAMgFU0NAyAGKAJgIBVBNGxqIANBAWs2AhQgBigCZCIDRQ0EIAYoAmAgA0E0bGoiA0E0Rg0EIANBJGsgFTYCACAGQQA2AnAgDUHkAEYNASAGQYQFaiAOEKkEIA1BAWohDSAGKAKEBQ0ACwsgBigCZCIBIBFLBEAgBkGABmoiASAGKAJgIBFBNGxqIAYoAlQgBigCWBC8ByAGQdgGaiABQQhqKAIANgIAIAYgBikCgAY3A9AGDAELIBEgAUH0kMMAEIULAAsgAEEIaiAGQdgGaigCADYCACAAIAYpA9AGNwIAIABBAToADAwDCyAVIANBhJDDABCFCwALQZSQwwAQ8g4ACyAAQQE6AAwgACAEKQIANwIAIABBCGogBEEIaigCADYCAAsgBigCUCIABEAgBigCVCAAQSRsQQQQ6A4LIAYoAlwiAARAIAYoAmAgAEE0bEEEEOgOCyAGKAJoIgAEQCAGKAJsIABBA3RBBBDoDgsgBigCdCIARQ0BIAYoAnggAEEDdEEEEOgODAELIAYqAtQEIRggBioC0AQhFyAAIAYqAtgEOAIIIAAgGDgCBCAAIBc4AgAgAEEAOgAMCyAGQZAHaiQAC64rAh9/BH4jAEGgCmsiBSQAAkACQAJAAkACQAJAAkAgASkDACIiQgBSBEAgASkDCCIjQgBSBEAgASkDECIkQgBSBEAgIiAkfCIlICJaBEAgIiAjWgRAIAEsABohFCABLgEYIQEgBSAiPgIAIAVBAUECICJCgICAgBBUIgMbNgKgASAFQQAgIkIgiKcgAxs2AgQgBUEIakEAQZgB/AsAIAUgIz4CpAEgBUEBQQIgI0KAgICAEFQiAxs2AsQCIAVBACAjQiCIpyADGzYCqAEgBUGsAWpBAEGYAfwLACAFICQ+AsgCIAVBAUECICRCgICAgBBUIgMbNgLoAyAFQQAgJEIgiKcgAxs2AswCIAVB0AJqQQBBmAH8CwAgBUHwA2pBAEGcAfwLACAFQQE2AuwDIAVBATYCjAUgAawgJUIBfXl9QsKawegEfkKAoc2gtAJ8QiCIpyIDwSEQAkAgAUEATgRAIAUgARDaARogBUGkAWogARDaARogBUHIAmogARDaARoMAQsgBUHsA2pBACABa8EQ2gEaCwJAIBBBAEgEQCAFQQAgEGtB//8DcSIBEMcBIAVBpAFqIAEQxwEgBUHIAmogARDHAQwBCyAFQewDaiADQf//AXEQxwELIAVB/AhqIAVBpAH8CgAAAkACQAJAAkAgBSgC6AMiByAFKAKcCiIBIAEgB0kbIgNBKE0EQCADRQRAQQAhAwwECyADQQFxIQogA0EBRw0BDAILDAwLIANBPnEhDSAFQfwIaiEBIAVByAJqIQgDQCABIAQgASgCACIMIAgoAgBqIgRqIgs2AgAgAUEEaiISKAIAIhMgCEEEaigCAGoiCSAEIAxJIAQgC0tyaiEEIBIgBDYCACAJIBNJIAQgCUlyIQQgCEEIaiEIIAFBCGohASANIAZBAmoiBkcNAAsLIAoEQCAGQQJ0IgYgBUH8CGpqIgkoAgAhASAJIAQgASAFQcgCaiAGaigCAGoiBGoiBjYCACABIARLIAQgBktyIQQLIARFDQAgA0EoRg0BIAVB/AhqIANBAnRqQQE2AgAgA0EBaiEDCyAFIAM2ApwKIAMgBSgCjAUiASABIANJGyIBQSlJBEAgAUECdCEBAkACQAJ/AkADQCABRQ0BIAFBBGsiASAFQewDamooAgAiAyABIAVB/AhqaigCACIERg0ACyADIARLIAMgBElrDAELQX9BACABGwsgFE4EQCAFKAKgASIGQSlPDQICQCAGRQRAQQAhBgwBCyAGQQFrQf////8DcSIBQQFqIgNBA3EhCAJAIAFBA0kEQCAFIQFCACEjDAELIANB/P///wdxIQQgBSEBQgAhIwNAIAEgATUCAEIKfiAjfCIiPgIAIAFBBGoiAzUCAEIKfiAiQiCIfCEiIAMgIj4CACABQQhqIgM1AgBCCn4gIkIgiHwhIiADICI+AgAgAUEMaiIDNQIAQgp+ICJCIIh8ISIgAyAiPgIAICJCIIghIyABQRBqIQEgBEEEayIEDQALCyAIBEADQCABIAE1AgBCCn4gI3wiIj4CACABQQRqIQEgIkIgiCEjIAhBAWsiCA0ACwsgIkKAgICAEFQNACAGQShGDREgBSAGQQJ0aiAjPgIAIAZBAWohBgsgBSAGNgKgASAFKALEAiIDQSlPDQ0gBQJ/QQAgA0UNABogA0EBa0H/////A3EiAUEBaiIEQQNxIQgCQCABQQNJBEAgBUGkAWohAUIAISIMAQsgBEH8////B3EhBCAFQaQBaiEBQgAhIgNAIAEgATUCAEIKfiAifCIiPgIAIAFBBGoiBjUCAEIKfiAiQiCIfCEiIAYgIj4CACABQQhqIgY1AgBCCn4gIkIgiHwhIiAGICI+AgAgAUEMaiIGNQIAQgp+ICJCIIh8ISMgBiAjPgIAICNCIIghIiABQRBqIQEgBEEEayIEDQALCyAIBEADQCABIAE1AgBCCn4gInwiIz4CACABQQRqIQEgI0IgiCEiIAhBAWsiCA0ACwsgAyIBICNCgICAgBBUDQAaIAFBKEYNESAFQaQBaiABQQJ0aiAiPgIAIAFBAWoLNgLEAiAFIAcEfyAHQQFrQf////8DcSIBQQFqIgNBA3EhCAJAIAFBA0kEQCAFQcgCaiEBQgAhIgwBCyADQfz///8HcSEEIAVByAJqIQFCACEiA0AgASABNQIAQgp+ICJ8IiI+AgAgAUEEaiIDNQIAQgp+ICJCIIh8ISIgAyAiPgIAIAFBCGoiAzUCAEIKfiAiQiCIfCEiIAMgIj4CACABQQxqIgM1AgBCCn4gIkIgiHwhIyADICM+AgAgI0IgiCEiIAFBEGohASAEQQRrIgQNAAsLIAgEQANAIAEgATUCAEIKfiAifCIjPgIAIAFBBGohASAjQiCIISIgCEEBayIIDQALCyAjQoCAgIAQVARAIAUgBzYC6AMMAwsgB0EoRg0RIAVByAJqIAdBAnRqICI+AgAgB0EBagVBAAs2AugDDAELIBBBAWohEAsgBUGQBWoiAyAFQewDaiIBQaQB/AoAACADQQEQ2gEhFSAFQbQGaiIDIAFBpAH8CgAAIANBAhDaASEWIAVB2AdqIgMgAUGkAfwKAAACQAJAAkACQAJAIANBAxDaASIZKAKgASITIAUoAqABIgYgBiATSRsiB0EoTQRAIAVBjAVqIRogBUGwBmohGyADQQRrIRwgFSgCoAEhFyAWKAKgASEYIAUoAowFIRJBACEKA0AgCiENIAdBAnQhAQJ/AkACQAJAA0AgAUUNASABIBxqIQMgBSABQQRrIgFqKAIAIgQgAygCACIDRg0ACyADIARLDQEMAgsgAUUNAQsgBiEHQQAMAQsgBwRAQQEhBCAHQQFxIQlBACEGIAdBAUcEQCAHQT5xIQogBSIBQdgHaiEIA0AgASABKAIAIgwgCCgCAEF/c2oiAyAEaiILNgIAIAFBBGoiDigCACIPIAhBBGooAgBBf3NqIgQgAyAMSSADIAtLcmohAyAOIAM2AgAgBCAPSSADIARJciEEIAhBCGohCCABQQhqIQEgCiAGQQJqIgZHDQALCyAJBEAgBkECdCIDIAVqIgYoAgAhASAGIAEgAyAZaigCAEF/c2oiAyAEaiIENgIAIAEgA0sgAyAES3IhBAsgBEUNFQsgBSAHNgKgAUEICyEJIBggByAHIBhJGyIDQSlPDRIgA0ECdCEBAkACQAJAA0AgAUUNASABIBtqIQQgBSABQQRrIgFqKAIAIgYgBCgCACIERg0ACyAEIAZNDQEgByEDDAILIAFFDQAgByEDDAELIAMEQEEBIQQgA0EBcSEKQQAhBiADQQFHBEAgA0E+cSEMIAUiAUG0BmohCANAIAEgASgCACILIAgoAgBBf3NqIgcgBGoiDjYCACABQQRqIg8oAgAiESAIQQRqKAIAQX9zaiIEIAcgC0kgByAOS3JqIQcgDyAHNgIAIAQgEUkgBCAHS3IhBCAIQQhqIQggAUEIaiEBIAwgBkECaiIGRw0ACwsgCgRAIAZBAnQiByAFaiIGKAIAIQEgBiABIAcgFmooAgBBf3NqIgcgBGoiBDYCACAEIAdJIAEgB0tyIQQLIARFDRULIAUgAzYCoAEgCUEEciEJCyAXIAMgAyAXSRsiB0EpTw0DIAdBAnQhAQJAAkACQANAIAFFDQEgASAaaiEEIAUgAUEEayIBaigCACIGIAQoAgAiBEYNAAsgBCAGTQ0BIAMhBwwCCyABRQ0AIAMhBwwBCyAHBEBBASEEIAdBAXEhCkEAIQYgB0EBRwRAIAdBPnEhDCAFIgFBkAVqIQgDQCABIAEoAgAiCyAIKAIAQX9zaiIDIARqIg42AgAgAUEEaiIPKAIAIhEgCEEEaigCAEF/c2oiBCADIAtJIAMgDktyaiEDIA8gAzYCACAEIBFJIAMgBElyIQQgCEEIaiEIIAFBCGohASAMIAZBAmoiBkcNAAsLIAoEQCAGQQJ0IgMgBWoiBigCACEBIAYgASADIBVqKAIAQX9zaiIDIARqIgQ2AgAgASADSyADIARLciEECyAERQ0VCyAFIAc2AqABIAlBAmohCQsgEiAHIAcgEkkbIgNBKU8NEiADQQJ0IQECQAJAAkADQCABRQ0BIAUgAUEEayIBaigCACIEIAEgBUHsA2pqKAIAIgZGDQALIAQgBk8NASAHIQMMAgsgAUUNACAHIQMMAQsgAwRAQQEhBCADQQFxIQpBACEGIANBAUcEQCADQT5xIQwgBSIBQewDaiEIA0AgASABKAIAIgsgCCgCAEF/c2oiByAEaiIONgIAIAFBBGoiDygCACIRIAhBBGooAgBBf3NqIgQgByALSSAHIA5LcmohByAPIAc2AgAgBCARSSAEIAdLciEEIAhBCGohCCABQQhqIQEgDCAGQQJqIgZHDQALCyAKBEAgBkECdCIHIAVqIgYoAgAhASAGIAEgBUHsA2ogB2ooAgBBf3NqIgcgBGoiBDYCACAEIAdJIAEgB0tyIQQLIARFDRULIAUgAzYCoAEgCUEBaiEJCyANQRFGDQUgAiANaiIOIAlBMGo6AAAgBSgCxAIiByADIAMgB0kbIgFBKU8NFCANQQFqIQogAUECdCEBAn8CQANAIAFFDQEgBSABQQRrIgFqKAIAIgQgASAFQaQBamooAgAiBkYNAAsgBCAGSyAEIAZJawwBC0F/QQAgARsLIQEgBUH8CGogBUGkAfwKAAAgBSgC6AMiCyAFKAKcCiIEIAQgC0kbIglBKEsNBCABIQwCQCAJRQRAQQAhCQwBCyAJQQFxIRFBACEEQQAhBiAJQQFHBEAgCUE+cSEdIAVB/AhqIQEgBUHIAmohCANAIAEgBCABKAIAIh4gCCgCAGoiBGoiHzYCACABQQRqIiAoAgAiISAIQQRqKAIAaiIPIAQgHkkgBCAfS3JqIQQgICAENgIAIA8gIUkgBCAPSXIhBCAIQQhqIQggAUEIaiEBIB0gBkECaiIGRw0ACwsgEQRAIAZBAnQiBiAFQfwIamoiCCgCACEBIAggBCABIAVByAJqIAZqKAIAaiIEaiIGNgIAIAEgBEsgBCAGS3IhBAsgBEUNACAJQShGDRYgBUH8CGogCUECdGpBATYCACAJQQFqIQkLIAUgCTYCnAogCSASIAkgEksbIgFBKU8NFCABQQJ0IQECfwJAA0AgAUUNASABQQRrIgEgBUHsA2pqKAIAIgQgASAFQfwIamooAgAiBkYNAAsgBCAGSyAEIAZJawwBC0F/QQAgARsLIBROIgEgDCAUSCIERXFFBEAgAQ0SIAQNAwwRC0EAIQkgBQJ/QQAgA0UNABogA0EBa0H/////A3EiAUEBaiIEQQNxIQgCQCABQQNJBEAgBSEBQgAhIgwBCyAEQfz///8HcSEEIAUhAUIAISIDQCABIAE1AgBCCn4gInwiIj4CACABQQRqIgY1AgBCCn4gIkIgiHwhIiAGICI+AgAgAUEIaiIGNQIAQgp+ICJCIIh8ISIgBiAiPgIAIAFBDGoiBjUCAEIKfiAiQiCIfCEjIAYgIz4CACAjQiCIISIgAUEQaiEBIARBBGsiBA0ACwsgCARAA0AgASABNQIAQgp+ICJ8IiM+AgAgAUEEaiEBICNCIIghIiAIQQFrIggNAAsLIAMgI0KAgICAEFQNABogA0EoRg0WIAUgA0ECdGogIj4CACADQQFqCyIGNgKgAQJAIAdFDQAgB0EBa0H/////A3EiAUEBaiIDQQNxIQgCQCABQQNJBEAgBUGkAWohAUIAISMMAQsgA0H8////B3EhBCAFQaQBaiEBQgAhIwNAIAEgATUCAEIKfiAjfCIiPgIAIAFBBGoiAzUCAEIKfiAiQiCIfCEiIAMgIj4CACABQQhqIgM1AgBCCn4gIkIgiHwhIiADICI+AgAgAUEMaiIDNQIAQgp+ICJCIIh8ISIgAyAiPgIAICJCIIghIyABQRBqIQEgBEEEayIEDQALCyAIBEADQCABIAE1AgBCCn4gI3wiIj4CACABQQRqIQEgIkIgiCEjIAhBAWsiCA0ACwsgIkKAgICAEFQEQCAHIQkMAQsgB0EoRg0WIAVBpAFqIAdBAnRqICM+AgAgB0EBaiEJCyAFIAk2AsQCAkAgC0UEQEEAIQsMAQsgC0EBa0H/////A3EiAUEBaiIDQQNxIQgCQCABQQNJBEAgBUHIAmohAUIAISIMAQsgA0H8////B3EhBCAFQcgCaiEBQgAhIgNAIAEgATUCAEIKfiAifCIiPgIAIAFBBGoiAzUCAEIKfiAiQiCIfCEiIAMgIj4CACABQQhqIgM1AgBCCn4gIkIgiHwhIiADICI+AgAgAUEMaiIDNQIAQgp+ICJCIIh8ISMgAyAjPgIAICNCIIghIiABQRBqIQEgBEEEayIEDQALCyAIBEADQCABIAE1AgBCCn4gInwiIz4CACABQQRqIQEgI0IgiCEiIAhBAWsiCA0ACwsgI0KAgICAEFQNACALQShGDRYgBUHIAmogC0ECdGogIj4CACALQQFqIQsLIAUgCzYC6AMgEyAGIAYgE0kbIgdBKE0NAAsLIAdBKEHowsQAEPAOAAsgBUEBENoBGiAFKAKMBSIBIAUoAqABIgMgASADSxsiAUEpTw0DIAFBAnQhASAFQQRrIQMgBUHoA2ohBwNAIAFFDQ0gASAHaiEEIAEgA2ohBiABQQRrIQEgBigCACIGIAQoAgAiBEYNAAsgBCAGTQ0NDA4LIAdBKEHowsQAEPAOAAsgCUEoQejCxAAQ8A4AC0ERQRFB2JvEABCFCwALDA0LIAZBKEHowsQAEPAOAAsMCwsMCwtBiJzEAEE3QcCcxAAQ1gwAC0HQnMQAQTZBiJ3EABDWDAALQeyaxABBHEGIm8QAENYMAAtBvJrEAEEdQdyaxAAQ1gwAC0GQmsQAQRxBrJrEABDWDAALIAENAQsgAiAKaiEHQQAhCEF/IQECQAJAAkADQCABIA1GDQEgAUEBaiEBIAggDmohBCAIQQFrIgMhCCAELQAAQTlGDQALIAggDWoiASACakEBaiIHIActAABBAWo6AAAgAUECaiIBIApNDQEgASAKQaisxAAQ7w4ACyACQTE6AAACQCANRSIBDQAgAQ0AIAJBAWpBMCAN/AsACyAKQRFPDQEgB0EwOgAAIBBBAWohECANQQJqIQoMAgsgA0F/Rg0BIANBf3MiAUUNASADIA5qQQJqQTAgAfwLAAwBCyAKQRFB6JvEABCFCwALIApBEU0EQCAAIBA7AQggACAKNgIEIAAgAjYCACAFQaAKaiQADwsgCkERQfibxAAQ8A4ACyADQShB6MLEABDwDgALQfjCxABBGkHowsQAENYMAAsgAUEoQejCxAAQ8A4AC0EoQShB6MLEABCFCwALlkMDI39UewJ+IwBBgAVrIggkACAAKAIAIRZBfyEXAkACQAJAAkACQAJ7An9BfyABKAIAIhEuAXgiEEEASg0AGkF/IBZBf0YNABogESgCQEEBcUUNAyARKAJEIg4gAigCjANPDQIgAigCiAMgDkGAA2xqIg4oAgBBAUcNAiAOKAIEIBEoAkhHDQIgDigCGAshHSAAKAIEIQoCQCABKAIEIhUuAXgiCUEASg0AIApBf0YNACAVKAJAQQFxRQ0DIBUoAkQiDiACKAKMA08NAiACKAKIAyAOQYADbGoiDigCAEEBRw0CIA4oAgQgFSgCSEcNAiAOKAIYIRcLIAAoAgghD0F/IRgCf0F/IAEoAggiEi4BeCILQQBKDQAaQX8gD0F/Rg0AGiASKAJAQQFxRQ0DIBIoAkQiDiACKAKMA08NAiACKAKIAyAOQYADbGoiDigCAEEBRw0CIA4oAgQgEigCSEcNAiAOKAIYCyEOIAAoAgwhDAJAIAEoAgwiEy4BeCINQQBKDQAgDEF/Rg0AIBMoAkBBAXFFDQMgEygCRCIBIAIoAowDTw0CIAIoAogDIAFBgANsaiIBKAIAQQFHDQIgASgCBCATKAJIRw0CIAEoAhghGAtBfyEZAn9BfyAQQQBIDQAaQX8gFkF/Rg0AGiARKAJMQQFxRQ0FIBEoAlAiASACKAKMA08NBCACKAKIAyABQYADbGoiASgCAEEBRw0EIAEoAgQgESgCVEcNBCABKAIYCyEeAkAgCUEASA0AIApBf0YNACAVKAJMQQFxRQ0FIBUoAlAiASACKAKMA08NBCACKAKIAyABQYADbGoiASgCAEEBRw0EIAEoAgQgFSgCVEcNBCABKAIYIRkLQX8hGgJ/QX8gC0EASA0AGkF/IA9Bf0YNABogEigCTEEBcUUNBSASKAJQIgEgAigCjANPDQQgAigCiAMgAUGAA2xqIgEoAgBBAUcNBCABKAIEIBIoAlRHDQQgASgCGAshFgJAIA1BAEgNACAMQX9GDQAgEygCTEEBcUUNBSATKAJQIgEgAigCjANPDQQgAigCiAMgAUGAA2xqIgEoAgBBAUcNBCABKAIEIBMoAlRHDQQgASgCGCEaCyADKAIEIQEgAygCCCECIAj9DAAAAAAAAAAAAAAAAAAAAAD9CwTgBCAIIAEgF0EFdGogCEHgBGoiCiACIBdLIg8b/QAEACI5/QsEECAIIAEgHUEFdGoiDCAKIAIgHUsiChv9AAQAIjT9CwQAIApFBED9DAAAAAAAAAAAAAAAAAAAAAAMAQsgDP0ABBALIT0gDkEFdCEMIBhBBXQhECACIA5LIQogDwRAIAEgF0EFdGopAxAhfwsgASAMaiEMIAIgGEshDyABIBBqIRAgCgRAIAEgDkEFdGr9AAQQIT8LIAwgCEHgBGoiDCAKGyEKIBAgDCAPGyEMIA8EQCABIBhBBXRq/QAEECFACyAI/QACDCFEIAj9AAMIIUUgCP0AAgQhQyAK/QAEACE7IAz9AAQAIT4gCCA9/QsEgAIgCCB/NwOQAiAI/QAChAIhOiADKAIUIQogAygCECEDIAggGDYCjAIgCCAONgKIAiAIIBc2AoQCIAggHTYCgAIgCCADIAogCEGAAmoQhQIgCP0MAAAAAAAAAAAAAAAAAAAAAP0LBMAEIAggASAZQQV0aiAIQcAEaiIPIAIgGUsiDBv9AAQAIiz9CwTwBCAIIAEgHkEFdGoiECAPIAIgHksiDxv9AAQAIi39CwTgBCAPBEAgEP0ABBAhOAsgGkEFdCEQIBZBBXQhCSACIBZLIQ8gDARAIAEgGUEFdGopAxAhgAELIAIgGkshAiABIBBqIQwgASAJaiEQIA8EQCABIBZBBXRq/QAEECE8CyAMIAhBwARqIgwgAhshCSAQIAwgDxshDyACBEAgASAaQQV0av0ABBAhNgsgCf0ABAAhNSAP/QAEACEwIAj9AAPoBCExIAj9AALkBCEyIAj9AALsBCEuIAgggAE3A5ACIAggOP0LBIACIAj9AAKEAiE3IAggGjYC7AQgCCAWNgLoBCAIIBk2AuQEIAggHjYC4AQgCEGAAmogAyAKIAhB4ARqIgEQhQIgCP0ABEAhaCAI/QAEUCFpIAj9AARgIWogCP0ABMACIWsgCP0ABNACIWwgCP0ABOACIW0gCEH0BGogFUHwAGooAgA2AgAgCCAVKQJoNwLsBCAIIBFB8ABqKAIANgLoBCAIIBEpAmg3A+AEIBNB8ABqIBJB8ABqIAj9AAPoBCIvIC/9GwP9HAH9VgIAAv1WAgADIS8gE0HsAGogEkHsAGogCP0AAuQEIisgK/0bA/0cAf1WAgAC/VYCAAMhKyATQegAaiASQegAaiAI/QAE4AQiSSBJ/RsD/RwB/VYCAAL9VgIAAyFJIAH9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIAj9AATgBCFLIAH9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIAj9AATgBCFMIAH9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIAj9AATgBCFNIBEoAmAhFCAB/QwAAAAAAAAAAAAAAAAAAAAA/QsEACAI/QAE4AQhTiAB/QwAAAAAAAAAAAAAAAAAAAAA/QsEAEEAIQMgFEECdiAUQQNxQQBHaiIlBEAgRCA5/Q0AAQIDHB0eHwABAgMAAQIDIDv9DQABAgMEBQYHHB0eHwABAgMgPv0NAAECAwQFBgcICQoLHB0eHyFfID0gf6f9HAEgP/0NAAECAwQFBgcQERITAAECAyBA/Q0AAQIDBAUGBwgJCgsQERITIWAgOiB/QiCIp/0cASA//Q0AAQIDBAUGBxQVFhcAAQIDIED9DQABAgMEBQYHCAkKCxQVFhchYSBNIC/95QEiP/0MAAAAgAAAAIAAAACAAAAAgP1O/QwAAIA/AACAPwAAgD8AAIA//VAhRCBLIEn95QEiQCA0IDn9DQABAgMQERITAAECAwABAgMgO/0NAAECAwQFBgcQERITAAECAyA+/Q0AAQIDBAUGBwgJCgsQERITIm4gLSAs/Q0AAQIDEBESEwABAgMAAQIDIDD9DQABAgMEBQYHEBESEwABAgMgNf0NAAECAwQFBgcICQoLEBESEyJv/eUBIjT95gEgQyA5/Q0AAQIDFBUWFwABAgMAAQIDIDv9DQABAgMEBQYHFBUWFwABAgMgPv0NAAECAwQFBgcICQoLFBUWFyJwIDIgLP0NAAECAxQVFhcAAQIDAAECAyAw/Q0AAQIDBAUGBxQVFhcAAQIDIDX9DQABAgMEBQYHCAkKCxQVFhcicf3lASJDIEwgK/3lASI9/eYB/eQBIEUgOf0NAAECAxgZGhsAAQIDAAECAyA7/Q0AAQIDBAUGBxgZGhsAAQIDID79DQABAgMEBQYHCAkKCxgZGhsiciAxICz9DQABAgMYGRobAAECAwABAgMgMP0NAAECAwQFBgcYGRobAAECAyA1/Q0AAQIDBAUGBwgJCgsYGRobInP95QEiOyA//eYB/eQBITkgOyA/IDn95gH95QEiRSBF/eYBIDQgQCA5/eYB/eUBIjsgO/3mASBDID0gOf3mAf3lASI5IDn95gH95AH95AH94wEiPv0MF7fROBe30TgXt9E4F7fROP1DITQgQCA9ID395gEgTv0MAACAvwAAgL8AAIC/AACAv/3kASA/IET95AH95wEiQ/3mASBE/eQBIDkgPv3nASA0/VIiOf3mASA9IEAgPf3mASBD/eYBIDsgPv3nASA0/VIiO/3mAf3lASFEID8gO/3mASBAIAj9AATgBCA9/eUBIEUgPv3nASA0/VIiPv3mAf3lASFFID0gPv3mASA/IDn95gH95QEhQyAuICz9DQABAgMcHR4fAAECAwABAgMgMP0NAAECAwQFBgccHR4fAAECAyA1/Q0AAQIDBAUGBwgJCgscHR4fIWIgOCCAAaf9HAEgPP0NAAECAwQFBgcQERITAAECAyA2/Q0AAQIDBAUGBwgJCgsQERITIWMgNyCAAUIgiKf9HAEgPP0NAAECAwQFBgcUFRYXAAECAyA2/Q0AAQIDBAUGBwgJCgsUFRYXIWRBkR0hD0EAIQxBBCEBQQAhAgNAIAIhCiABIQICQAJAAkAgCiAUTQRAIBQgESgCYCIBSw0KIBQgFSgCYCIBSw0KIBQgEigCYCIBSw0KIBQgEygCYCIBSw0KIApBAnYiASAHTw0BIAEgBU8NAiARKAJcIR8gFSgCXCEgIBIoAlwhISATKAJcISIgBiABQbAdbGoiCyA//QsEICALID39CwQQIAsgQP0LBAAgCyAI/QAE8AEiMP0LBFAgCyAI/QAE4AEiNf0LBEAgCyAI/QAE0AEiLP0LBDAgCyAaNgL8HCALIBY2AvgcIAsgGTYC9BwgCyAeNgLwHCALIBg2AuwcIAsgDjYC6BwgCyAXNgLkHCALIB02AuAcIAsgCP0ABPADIjT9CwSAASALIAj9AATgAyI4/QsEcCALIAj9AATQAyI8/QsEYCALQQQgFCAKayIBIAFBBE8bIiY6AJAdIAsgO/0LBLABIAsgOf0LBMABIAsgPv0LBNABIAsgAP0AAgD9CwKAHSAKIBRGDQMgLCA8/eQBIiwgQ/3mASBD/eYBIDUgOP3kASI1IEX95gEgRf3mAf3kASAwIDT95AEiMCBE/eYBIET95gH95AEhdCAsIDv95gEgO/3mASA1IDn95gEgOf3mAf3kASAwID795gEgPv3mAf3kASF1IEAgQCAs/eYB/eYBID0gPSA1/eYB/eYB/eQBID8gPyAw/eYB/eYB/eQBIXZBASEjIAQhASAMIgohJCAPIRADQCAIIAMgIGoiCf0ABAAiSf0LBJAEIAggAyAfaiIN/QAEACIw/QsEgAQgCCAJQRBq/QAEACJL/QsEsAQgCCANQRBq/QAEACIs/QsEoAQgCCAJQSBq/QAEACI3/QsE0AQgCCANQSBq/QAEACJK/QsEwAQgAyAiaiIb/QAEACFMIAMgIWoiHP0ABAAhTSAbQSBq/QAEACEvIBxBIGr9AAQAISsgG0EQav0ABAAhTiAcQRBq/QAEACFUIAggDUEwav0ABAD9CwTgBCAIIAlBMGr9AAQAImX9CwTwBCAcQTBq/QAEACFmIBtBMGr9AAQAIWcgCP0AAuQEIXcgCP0AAqQEIXggCP0AAowEIXkgCP0AA6gEIVUgCP0AAqwEIVYgCP0AA8gEIVcgCP0AAswEIU8gCP0AAoQEITUgCP0AA4gEITQgCP0AAsQEITggCC0A6AQhCSALICwgS/0NAAECAxAREhMAAQIDAAECAyBU/Q0AAQIDBAUGBxAREhMAAQIDIE79DQABAgMEBQYHCAkKCxAREhP9CwSgASAGIBBqIAkgZf0bAkEIdEGA/gNxIGb9GwJBEHRBgID8B3EgZ/0bAkEYdHJycjYAACAIQeAEaiIN/QwAAAAAAAAAAAAAAAAAAAAA/QsEACAI/QAE4AQhPCAN/QwAAAAAAAAAAAAAAAAAAAAA/QsEACAI/QAE4AQhRiAN/QwAAAAAAAAAAAAAAAAAAAAA/QsEACAI/QAE4AQhRyAI/QAE8AIhWCAI/QAEgAMhNiAI/QAEoAMhWSAI/QAEwAMhWiAI/QAEkAMhOiAI/QAEsAMhLSAI/QAEcCFQIAj9AASAASExIAj9AASgASFRIAj9AATAASFSIAj9AASQASEyIAj9AASwASEuIA39DAAAAAAAAAAAAAAAAAAAAAD9CwQAIAj9AATgBCFbIAYgJGoiCUHgA2ogOCA3/Q0AAQIDFBUWFwABAgMAAQIDICv9DQABAgMEBQYHFBUWFwABAgMgL/0NAAECAwQFBgcICQoLFBUWF/0LBAAgCUGAA2ogMiA/IDUgSf0NAAECAxQVFhcAAQIDAAECAyBN/Q0AAQIDBAUGBxQVFhcAAQIDIEz9DQABAgMEBQYHCAkKCxQVFhciXCBp/eUBIiz95gEgPSA0IEn9DQABAgMYGRobAAECAwABAgMgTf0NAAECAwQFBgcYGRobAAECAyBM/Q0AAQIDBAUGBwgJCgsYGRobIl0gav3lASI1/eYB/eUBIjP95gEgLiBAIDX95gEgPyAwIEn9DQABAgMQERITAAECAwABAgMgTf0NAAECAwQFBgcQERITAAECAyBM/Q0AAQIDBAUGBwgJCgsQERITIl4gaP3lASIw/eYB/eUBIkH95gH95AEgUiA9IDD95gEgQCAs/eYB/eUBIkL95gH95AEiev0LBAAgCUHwAmogMyAx/eYBIEEgUf3mAf3kASBCIC795gH95AEie/0LBAAgCUHgAmogMyBQ/eYBIEEgMf3mAf3kASBCIDL95gH95AEifP0LBAAgCUHQAmogXiBr/eUBIjQgRiA9/eUBIkj95gEgXCBs/eUBIjggPCBA/eUBIlP95gH95QEiRv0LBAAgCUHAAmogXSBt/eUBIjwgU/3mASA0IEcgP/3lASJT/eYB/eUBIkf9CwQAIAlBsAJqIDggU/3mASA8IEj95gH95QEiSP0LBAAgCUGgAmogQv0LBAAgCUGQAmogQf0LBAAgCUGAAmogM/0LBAAgCUGwA2ogSCA6/eYBIEcgLf3mAf3kASBGIFr95gH95AEiU/0LBAAgCUGgA2ogSCA2/eYBIEcgWf3mAf3kASBGIC395gH95AEiff0LBAAgCUGQA2ogSCBY/eYBIEcgNv3mAf3kASBGIDr95gH95AEifv0LBAAgCUGABGr9DAAAAAAAAAAAAAAAAAAAAAD9DAAAgD8AAIA/AACAPwAAgD8gdiAzIHz95gEgQSB7/eYB/eQBIEIgev3mAf3kAf3kASBIIH795gEgRyB9/eYB/eQBIEYgU/3mAf3kAf3kASIz/ecBIDP9DAjlPB4I5TweCOU8HgjlPB79QyBb/QwI5TyeCOU8ngjlPJ4I5Tye/eQBIDP9Q/1O/VL9CwQAIAYgCmoiCUHwDmogTyA3/Q0AAQIDHB0eHwABAgMAAQIDICv9DQABAgMEBQYHHB0eHwABAgMgL/0NAAECAwQFBgcICQoLHB0eH/0LBAAgCUHgDmogVyA3/Q0AAQIDGBkaGwABAgMAAQIDICv9DQABAgMEBQYHGBkaGwABAgMgL/0NAAECAwQFBgcICQoLGBkaG/0LBAAgDf0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgCP0ABOAEITMgDf0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgCP0ABOAEIUEgDf0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgCP0ABOAEIUIgCUHADmogOyBVIEv9DQABAgMYGRobAAECAwABAgMgVP0NAAECAwQFBgcYGRobAAECAyBO/Q0AAQIDBAUGBwgJCgsYGRobIkb95gEgOSBWIEv9DQABAgMcHR4fAAECAwABAgMgVP0NAAECAwQFBgccHR4fAAECAyBO/Q0AAQIDBAUGBwgJCgscHR4fIkf95gH95AEgPiBKIDf9DQABAgMQERITAAECAwABAgMgK/0NAAECAwQFBgcQERITAAECAyAv/Q0AAQIDBAUGBwgJCgsQERITIkj95gH95AEiSv0LBAAgCUGADWoiGyBSIDAgOf3mASAsIDv95gH95QEiN/3mASAyICwgPv3mASA1IDn95gH95QEiL/3mASAuIDUgO/3mASAwID795gH95QEiK/3mAf3kAf3kASJV/QsEACAJQfAMaiIcIC4gN/3mASAxIC/95gEgUSAr/eYB/eQB/eQBIlb9CwQAIAlB4AxqIicgMiA3/eYBIFAgL/3mASAxICv95gH95AH95AEiV/0LBAAgCUGgDGogNCBBIDn95QEiT/3mASA4IDMgO/3lASJB/eYB/eUBIjP9CwQAIAlBwAtqIDf9CwQAIAlBsAtqICv9CwQAIAlBoAtqIC/9CwQAIAlBoA5qIEr9CwQAIAlBkAxqIDwgQf3mASA0IEIgPv3lASJC/eYB/eUBIkH9CwQAIAlBgAxqIDggQv3mASA8IE/95gH95QEiQv0LBAAgCUHgDWoiKCBaIDP95gEgOiBC/eYBIC0gQf3mAf3kAf3kASJK/QsEACAJQdANaiIpIC0gM/3mASA2IEL95gEgWSBB/eYB/eQB/eQBIk/9CwQAIAlBwA1qIiogOiAz/eYBIFggQv3mASA2IEH95gH95AH95AEiW/0LBAAgCUGgD2ogNyBV/eYBIC8gV/3mASArIFb95gH95AH95AEgdf3kASAzIEr95gEgQiBb/eYBIEEgT/3mAf3kAf3kAf3kAf0LBAAgDf0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgCP0ABOAEITMgDf0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgCP0ABOAEIUEgDf0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgCP0ABOAEIUIgCUHQDmogQyBG/eYBIEUgR/3mAf3kASBEIEj95gH95AEiSv0LBAAgCUGwDWogUiAwIEX95gEgLCBD/eYB/eUBIjf95gEgMiAsIET95gEgNSBF/eYB/eUBIi/95gEgLiA1IEP95gEgMCBE/eYB/eUBIiv95gH95AH95AEiUv0LBAAgCUGgDWogLiA3/eYBIDEgL/3mASBRICv95gH95AH95AEiUf0LBAAgCUGQDWogMiA3/eYBIFAgL/3mASAxICv95gH95AH95AEiUP0LBAAgCUHQDGogNCBBIEX95QEiLv3mASA4IDMgQ/3lASIy/eYB/eUBIjH9CwQAIAlB8AtqIDf9CwQAIAlB4AtqICv9CwQAIAlB0AtqIC/9CwQAIAlBsA5qIEr9CwQAIAlBwAxqIDwgMv3mASA0IEIgRP3lASIz/eYB/eUBIjL9CwQAIAlBsAxqIDggM/3mASA8IC795gH95QEiLv0LBAAgCUGQDmogWiAx/eYBIDogLv3mASAtIDL95gH95AH95AEiM/0LBAAgCUGADmogLSAx/eYBIDYgLv3mASBZIDL95gH95AH95AEiLf0LBAAgCUHwDWogOiAx/eYBIFggLv3mASA2IDL95gH95AH95AEiNv0LBAAgCUGwD2ogNyBS/eYBIC8gUP3mASArIFH95gH95AH95AEgdP3kASAxIDP95gEgLiA2/eYBIDIgLf3mAf3kAf3kAf3kAf0LBAAgCUHAD2ogLyAn/QAEAP3mASArIBz9AAQA/eYB/eQBIDcgG/0ABAD95gH95AEgLiAq/QAEAP3mASAyICn9AAQA/eYB/eQBIDEgKP0ABAD95gH95AH95AEiNiA2/eQB/QsEACAI/QAEYCEuIAj9AAQwITYgCP0ABEAhLSAI/QAEACE6IAj9AAQgITIgCP0ABFAhMSAI/QAEECErIA39DAAAAAAAAAAAAAAAAAAAAAD9CwQAIAj9AATgBCEvIA39DAAAAAAAAAAAAAAAAAAAAAD9CwQAIAj9AATgBCEzIA39DAAAAAAAAAAAAAAAAAAAAAD9CwQAIFwgMf3lASI3IC8gOv3lASI6/eYBIF4gLf3lASIvIDMgK/3lASIt/eYB/eUBIjEgMf3kASExIC8gCP0ABOAEIDL95QEiMv3mASBdIC795QEiKyA6/eYB/eUBIi4gLv3kASEuIAFB4ABqICsgNiAx/eYBIDogLv3mASAtICsgLf3mASA3IDL95gH95QEiKyAr/eQBIiv95gH95QH95AH95AH9CwQAIAFB0ABqIDcgNiAu/eYBIDIgK/3mASA6IDH95gH95QH95AH95AH9CwQAIAFBQGsgLyA2ICv95gEgLSAx/eYBIDIgLv3mAf3lAf3kAf3kAf0LBAAgCP0ABLACITYgCP0ABMACITogCP0ABIACIS0gCP0ABKACITEgCP0ABNACITIgCP0ABJACIS4gCP0ABOACITcgDf0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgCP0ABOAEIS8gDf0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgCP0ABOAEISsgDf0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgCP0ABOAEITMgAUGgAWogeSBJ/Q0AAQIDHB0eHwABAgMAAQIDIE39DQABAgMEBQYHHB0eHwABAgMgTP0NAAECAwQFBgcICQoLHB0eH/0LBAAgAUEgaiBI/QsEACABQRBqIEf9CwQAIAEgRv0LBAAgAUEwaiA/ICwgX/3mASAwIGD95gH95QEgcv3kASA4IGL95gEgNCBj/eYB/eUBIHP95AH95QH95gEgQCA1IGD95gEgLCBh/eYB/eUBIG795AEgPCBj/eYBIDggZP3mAf3lASBv/eQB/eUB/eYBID0gMCBh/eYBIDUgX/3mAf3lASBw/eQBIDQgZP3mASA8IGL95gH95QEgcf3kAf3lAf3mAf3kAf3kASB4IEv9DQABAgMUFRYXAAECAwABAgMgVP0NAAECAwQFBgcUFRYXAAECAyBO/Q0AAQIDBAUGBwgJCgsUFRYXIiz9DAAAgD8AAIA/AACAPwAAgD/9DAAAAAAAAAAAAAAAAAAAAAAgLP0MAAAAAAAAAAAAAAAAAAAAAP1E/VL9DAAAgD8AAIA/AACAPwAAgD/9DAAAAAAAAAAAAAAAAAAAAAAgLP0MAACAPwAAgD8AAIA/AACAP/1G/VIgdyBl/Q0AAQIDFBUWFwABAgMAAQIDIGb9DQABAgMEBQYHFBUWFwABAgMgZ/0NAAECAwQFBgcICQoLFBUWF/0M////f////3////9/////f/1O/QwAAAAAAAAAAAAAAAAAAAAA/Tj9Uv3mAf3mAf0LBAAgXCAy/eUBIjwgLyAt/eUBIiz95gEgXiA6/eUBIjogKyAu/eUBIjX95gH95QEiMCAw/eQBITAgOiAzIDH95QEiNP3mASBdIDf95QEiLSAs/eYB/eUBIjggOP3kASE4IAFBkAFqIC0gNiAw/eYBICwgOP3mASA1IC0gNf3mASA8IDT95gH95QEiLSAt/eQBIi395gH95QH95AH95AH9CwQAIAFBgAFqIDwgNiA4/eYBIDQgLf3mASAsIDD95gH95QH95AH95AH9CwQAIAFB8ABqIDogNiAt/eYBIDUgMP3mASA0IDj95gH95QH95AH95AH9CwQAICJBQGshIiAhQUBrISEgIEFAayEgIB9BQGshHyABQbABaiEBIApBsARqIQogJEGwAmohJCAQQQRqIRAgIyAmSSEJICNBAWohIyAJDQALDAMLIAogFEHYxcIAEPEOAAsgASAHQYijwgAQhQsACyABIAVBmKPCABCFCwALIANBgAJqIQMgBEHABWohBCAMQbAdaiEMIA9BsB1qIQ8gAkEEaiEBICVBAWsiJQ0ACwsgCEGABWokAA8LQdCLwgBBE0GoxcIAENELAAtBmMXCABDyDgALQdCLwgBBE0HIxcIAENELAAtBuMXCABDyDgALIBQgAUHYxcIAEPAOAAv0LgMefyJ9BX4jAEGAEGsiCSQAAkACQAJAAkACfwJAAkAgBigCACIIRQ0AIAlBGGogCCAGKAIEKAIYEQAAIAlBsAdqIAkoAhgiCCAJKAIcKAIMEQAAIAhFDQAgCSkDsAdCnbbKlpjZ64NQhSAJKQO4B0KRkMyF2qDzmEqFhFANAQtBIEEIEJEOIghFDQMgCEEAOgAYIAhCidm54o7TvpcINwMQIAhBoNzCAP0AAwD9CwMAAkAgBigCACILRQ0AIAYoAgQiCigCACINBEAgCyANEQYACyAKKAIEIg1FDQAgCyANIAooAggQ6A4LIAZBzIbDADYCBCAGIAg2AgBBzIbDAAwBCyAGKAIAIghFDQEgBigCBAshBiAJQRBqIAggBigCHBEAACAJQbAHaiAJKAIQIg0gCSgCFCgCDBEAAAJAIA1FDQAgCSkDsAdCnbbKlpjZ64NQhSAJKQO4B0KRkMyF2qDzmEqFhEIAUg0AIA0gDS0AGEF/c0EBcSITOgAYIAUoAgghFCAFKAIEIRogBUIENwIEIAUoAgAhHCAFQQA2AgBD//9/fyEuQ///f/8hLwJAIAEoAghFBEBD//9//yEmQ///f/8hKEP//39/ISdD//9/fyErDAELQ///f/8hJkP//3//IShD//9/fyEnQ///f38hKwJAAkAgASgCBCIGKAI8Qf////8DcSAGKAIcQf////8DcWoOAgIAAQsgBioCGCEvIAYqAhQhJiAGKgIQISggBioCCCEuIAYqAgQhJyAGKgIAISsMAQsgBioCGCImIAYqAjgiJyAmICdgGyEvIAYqAhQiJiAGKgI0IicgJiAnYBshJiAGKgIQIicgBioCMCIoICcgKGAbISggBioCCCInIAYqAigiKyAnICtfGyEuIAYqAgQiJyAGKgIkIisgJyArXxshJyAGKgIAIisgBioCICIzICsgM18bISsLIAEqAmwhMyABKgJoITQgASoCZCE1IAlBJGogAiAAIAMoApQBEQEAQQQhECArIAkqAiQiLCArICxgGyIpICggCSoCMCIqICggKl8bIjZeDQQgJyAJKgIoIiggJyAoYBsiNyAmIAkqAjQiJyAmICdfGyI4Xg0EIC4gCSoCLCImICYgLl8bIi4gLyAJKgI4IisgKyAvYBsiL14NBCAJIC4gM5WO/AA2ArgOIAkgNyA0lY78ADYCtA4gCSApIDWVjvwANgKwDiAJIC8gM5WN/AA2ArgHIAkgOCA0lY38ADYCtAcgCSA2IDWVjfwANgKwByAJQTxqIgggASAJQbAOaiILIAlBsAdqIgYQngQgBiAIQfQG/AoAACALIAYQgAEgCSgCsA5BAUcNAyAzQwAAAD+UIjZDAAAgQZQiKSArkiErIDRDAAAAP5QiN0MAACBBlCI5ICeSIS4gNUMAAAA/lCI4QwAAIEGUIicgKpIhLyAmICmTITogKCA5kyE5ICwgJ5MhO0HYAEHMACAHGyEiIDdDCtcjPJIiP4whQCA2QwrXIzySIkGMIUIgOEMK1yM8kiJDjCFEIAAqAhghRSAAKgIUIUYgACoCECFHIAlB2A5qIgZBIGohHSAGQdgAaiEeIAZBzABqIR8gCUGYD2ohIANAAkACQAJAAkACQAJAIAktANQOIgZBwQBJBEACQCAGQZirwQBqLQAADgUHAAAABwALIAkqAtAOITwgCSoCzA4hPSAJKgLIDiE+IAkoAsQOIQogCSgCwA4hDiAJKAK8DiEQIAkoArgOISMgCSgCtA4hJCAJQeQPaiIMIAEQhgUgCSgC5A8hCCAJKALsDyEVIAkoAugPIQsgDCABEIYFQQAhDCANKAIEIg8gDSkDEEKCgICAEIUiSEIgiCJKIBAgCSgC8A8iEiAGQX9zQT9xQQAgBkE/a0H/AXFBAk8bIgZBAXEbIhZBASAIayIXaiASIAhBAWsiGGsiESAOIAkoAvQPIgggBkEEcRsiEkEBIAtrIhlqIAggC0EBayIbayIlIAogCSgC+A8gBkEQcRsiISAVQQFrIghrbGpsaiILQbfTsIV8c60iSX4gSEL/////D4MiSCAQIBggBkECcRsiFSAXaiARIA4gGyAGQQhxGyIXIBlqICUgCCAKIAZBIEkbIhggCGtsamxqIhFB3aHxy3xzrSJLfoUgSCBJfiBKIEt+hUIgiYUiSqciG3EhBiBKQhmIIktC/wCDQoGChIiQoMCAAX4hTCANKAIAIRkCQANAAkAgBiAZaikAACJJIEyFIkhCgYKEiJCgwIABfSBIQn+Fg0KAgYKEiJCgwIB/gyJIQgBSBEADQCAZIEh6p0EDdiAGaiAPcUFsbGoiCEEUaygCACARRgRAIAsgCEEQaygCAEYNAwsgSEIBfSBIgyJIQgBSDQALCyBJIElCAYaDQoCBgoSIkKDAgH+DQgBSDQIgDEEIaiIMIAZqIA9xIQYMAQsLIAhBDGsiDygCACEGIBMgCEEEayILLQAARwRAIAYgFE8NAyAgIBogBkHsAGxqIgYpAkA3AgAgBkKAgICAwAA3AkAgHyAGKQJMNwIAIB4gBikCWDcCACAgQQhqIAZByABqIgwoAgA2AgAgDEEANgIAIB9BCGogBkHUAGooAgA2AgAgHkEIaiAGQeAAaigCADYCACAJQegOaiAGQRBq/QACAP0LAwAgCSAG/QACAP0LA9gOIAYoAmQhDCAGKAJoIREgHUEQaiAGQTBq/QACAP0LAgAgHSAG/QACIP0LAgAgCEEIa0EANgIAIA8gBSgCCCIGNgIAIAsgEzoAACAFKAIAIAZGBEAgBUGwh8MAEJ0ICyAFKAIEIAZB7ABsaiIIIAlB2A5qQeQA/AoAACAIIBE2AmggCCAMNgJkIAUgBkEBaiIMNgIIDAQLIAUoAggiDCAGTQ0EIAUoAgQgBkHsAGxqIQYMBgsgJEEJdCAjaiIGQQAgBxshDEEAIAYgBxshDyAFKAIIIgggBSgCAEYEQCAFQcCHwwAQnQgLIAUgCEEBajYCCCAFKAIEIAhB7ABsaiIGQgA3AkggBkKAgICAwAA3AkAgBkEANgIgIAZBADYCACAGIAw2AmggBiAPNgJkIAZB0ABq/QwAAAAAAAAAAAAAAAAAAAAA/QsCACAGQeAAakEANgIAIAkgEzoA9A8gCUEANgLwDyAJIAg2AuwPIAkgCzYC6A8gCSARNgLkDyANKAIEIg8gG3EiDCANKAIAIghqKQAAQoCBgoSIkKDAgH+DIkhQBEBBCCELA0AgCyAMaiEGIAtBCGohCyAIIAYgD3EiDGopAABCgIGChIiQoMCAf4MiSFANAAsLIAggSHqnQQN2IAxqIA9xIgxqLAAAIgZBAE4EQCAIIAgpAwBCgIGChIiQoMCAf4N6p0EDdiIMai0AACEGCwJAIAZBAXEiBiANKAIIIgtFcUUEQCAIIAxqIEunQf8AcSIROgAAIAggDEEIayAPcWpBCGogEToAACANIAsgBms2AgggDSANKAIMQQFqNgIMIAggDEFsbGoiBkEUayIIQRBqIAlB9A9qKAIANgIAIAggCf0AAuQP/QsCAAwBCyAJQQhqIA0gDUEQahD4ASANIEogDSgCACANKAIEIEoQhQogCUHkD2oQiwohBgsgBkEMayEPIAUoAgghDAwCCyAGQcEAQdDiwwAQhQsACyAGIBRBoIfDABCFCwALIAwgDygCACIGSw0BCyAGIAxB0IfDABCFCwALIAUoAgQhCCAJIDYgMyAhskMAAAA/kpQiJiAmICYgKyAmICtdGyArICtcGyAKICFGGyInIDMgGLJDAAAAP5KUIiYgOiA6ICYgJiA6XRsgJiAmXBsgCiAYRhsiKJNDAAAAP5SSOALEDyAJIDcgNCASskMAAAA/kpQiJiAmICYgLiAmIC5dGyAuIC5cGyAOIBJGGyIqIDQgF7JDAAAAP5KUIiYgOSA5ICYgJiA5XRsgJiAmXBsgDiAXRhsiKZNDAAAAP5SSOALADyAJIDggNSAWskMAAAA/kpQiJiAmICYgLyAmIC9dGyAvIC9cGyAQIBZGGyItIDUgFbJDAAAAP5KUIiYgOyA7ICYgJiA7XRsgJiAmXBsgECAVRhsiJpNDAAAAP5SSOAK8DyAJIEUgKCAnkkMAAAA/lCIskzgC4A8gCSBGICkgKpJDAAAAP5QiKpM4AtwPIAkgRyAmIC2SQwAAAD+UIimTOALYDyAJIAD9AAIA/QsDyA8gCCAGQewAbGohBgJAAkACQCAHRQRAQwAAAAAhJ0MAAAAAISZDAAAAACEoIAYoAgAEQCAGKgIUIScgBioCHCEoIAYqAhghJgsgBigCSCILRQ0CICwgKJMhKCAqICaTISYgKSAnkyEnIAYoAkQiCiEIIAtBJGwiC0EkayIMQSRuQQFxRQRAIAggCCoCACAnkzgCACAIIAgqAgQgJpM4AgQgCCAIKgIIICiTOAIIIAhBJGohCAsgDEEkSQ0BIAogC2ohCwNAIAggCCoCACAnkzgCACAIQQRqIgogCioCACAmkzgCACAIQQhqIgogCioCACAokzgCACAIQSRqIgogCioCACAnkzgCACAIQShqIgogCioCACAmkzgCACAIQSxqIgogCioCACAokzgCACALIAhByABqIghHDQALDAELQwAAAAAhJ0MAAAAAISZDAAAAACEoIAYoAiAEQCAGKgI0IScgBioCPCEoIAYqAjghJgsgBigCSCILRQ0CICwgKJMhKCAqICaTISYgKSAnkyEnIAYoAkQiCiEIIAtBJGwiC0EkayIMQSRuQQFxRQRAIAggCCoCDCAnkzgCDCAIIAgqAhAgJpM4AhAgCCAIKgIUICiTOAIUIAhBJGohCAsgDEEkSQ0AIAogC2ohCwNAIAhBDGoiCiAKKgIAICeTOAIAIAhBEGoiCiAKKgIAICaTOAIAIAhBFGoiCiAKKgIAICiTOAIAIAhBMGoiCiAKKgIAICeTOAIAIAhBNGoiCiAKKgIAICaTOAIAIAhBOGoiCiAKKgIAICiTOAIAIAsgCEHIAGoiCEcNAAsLIAcNAQsgBiAsOAIcIAYgKjgCGCAGICk4AhQgBv0MAAAAAAAAAAAAAAAAAACAP/0LAgQgBkEBNgIAIAYgCUHID2ogCUG8D2pBpITDACACIANBACAGQQAgBiAEIAYQIxoMAQsgBiAsOAI8IAYgKjgCOCAGICk4AjQgBv0MAAAAAAAAAAAAAAAAAACAP/0LAiQgBkEBNgIgIAkgCSoC1A8iLDgC8A8gCSAJKgLQDyImjDgC7A8gCSAJKgLMDyInjDgC6A8gCSAJKgLIDyIojDgC5A8gCSAsICggCSoC3A8iKpQgJyAJKgLYDyIplJMiLSAtkiItlCAnICcgCSoC4A8iMpQgJiAqlJMiMCAwkiIwlCAoICYgKZQgKCAylJMiMSAxkiIxlJOSIDKTOAL8DyAJICwgMZQgKCAtlCAmIDCUk5IgKpM4AvgPIAkgLCAwlCAmIDGUICcgLZSTkiApkzgC9A8gBiAJQeQPaiACIAMgCUG8D2pBpITDAEEAIAZBACAGIAQgBhAjGgsgCUHQD2ogBiAiaiIIQQhqKAIANgIAIAkgCCkCADcDyA8gBigCSCIIRQ0AIAYoAkQhCyAIQSRsIRBBASEKQQAhDkEAIQwDQAJAAn0CQAJAAkAgCyAOaiIIQRhqIhYqAgBDAAAAAF0EQCAJKgLQDyEmIAkqAswPIScgCSoCyA8hKCAJIAIgAygCtAERAAAgCSgCACISRQ0BIAlB5A9qIBIgACAJQcgPaiAJKAIEKAIUEQIAIBYqAgAgCSoC6A8gPSA3ICeMmJKTIAkqAswPjJQgCSoC5A8gPiA4ICiMmJKTIAkqAsgPlJMgCSoC7A8gPCA2ICaMmJKTIAkqAtAPlJNeRQ0FCyAHDQIgBigCAEEBcUUNASAGKgIEIiYgCEEEaioCACItlCAGKgIIIiggCCoCACIylJMiJyAnkiEsIAYqAgwiKiAylCAmIAhBCGoqAgAiJ5STIikgKZIhKSAGKgIcICcgBioCECIwICyUICYgKZQgKCAoICeUICogLZSTIicgJ5IiMZSTkpKSIScgBioCFCAyIDAgMZQgKCAslCAqICmUk5KSkiEoIAYqAhggLSAwICmUICogMZQgJiAslJOSkpIMAwtB7IXDAEEbQeCHwwAQ0QsACyAIQQhqKgIAIScgCCoCACEoIAhBBGoqAgAMAQsgBigCIEEBcUUEQCAIQRRqKgIAIScgCEEMaioCACEoIAhBEGoqAgAMAQsgBioCJCImIAhBEGoqAgAiLZQgBioCKCIoIAhBDGoqAgAiMpSTIicgJ5IhLCAGKgIsIiogMpQgJiAIQRRqKgIAIieUkyIpICmSISkgBioCPCAnIAYqAjAiMCAslCAmICmUICggKCAnlCAqIC2UkyInICeSIjGUk5KSkiEnIAYqAjQgMiAwIDGUICggLJQgKiAplJOSkpIhKCAGKgI4IC0gMCAplCAqIDGUICYgLJSTkpKSCyEmQQAhCAJAICggPpMiKCBEXQ0AICggQ14NACAmID2TIiYgQF0NACAmID9eDQAgJyA8kyImIEFeRSAmIEJdQX9zcSEICyAPIA8oAgQgCCAMdHI2AgQLIApBH3EhDCAKQQFqIQogECAOQSRqIg5HDQALCyAJQbAOaiAJQbAHahCAASAJKAKwDg0ACwwDC0GQh8MAEPIOAAtBgIfDABDyDgALQQhBIEH4ysQAKAIAIgBBzAggABsRAAAACwJAIAkoArAHQQJGDQAgCSgCtAgiAEEhSQ0AIAkoArgHIABBAnRBBBDoDgsgBSgCBCEQIAUoAgghDAsCQCANKAIMIgFFDQAgDSgCACIIQQhqIQYgCCkDAEJ/hUKAgYKEiJCgwIB/gyFIA0ACQCBIUARAA0AgCEGgAWshCCAGKQMAIUggBkEIaiEGIEhCgIGChIiQoMCAf4MiSEKAgYKEiJCgwIB/UQ0ACyBIQoCBgoSIkKDAgH+FIUgLAkAgCCBIeqdBA3ZBbGxqIgJBBGstAAAgE0cNACACQQxrKAIAIgAgDE8NASAQIABB7ABsaiIDKAJIIgBFDQAgA0FAayEDIABBAWshBSACQQhrIgcoAgAhAkEAIQ5BJCEKAkACQANAIAIgDnZBAXFFDQEgCkEkaiEKIAAgDkEBaiIORw0AC0EAIQsMAQtBASELIAUgDkYNACAOQQFqIQ8gAygCBCAKaiEOA0ACQCAHKAIAIA92QQFxRQRAIAtBAWohCwwBCyAOIAtBXGxqIgIgDv0AAgD9CwIAIAJBIGogDkEgaigCADYCACACQRBqIA5BEGr9AAIA/QsCAAsgDkEkaiEOIAAgD0EBaiIPRw0ACwsgAyAAIAtrNgIICyBIQgF9IEiDIUggAUEBayIBDQEMAgsLIAAgDEHwh8MAEIULAAsgDSgCDCIKBEAgDSgCBCECIA0oAgAiAEEIaiEGIAApAwBCf4VCgIGChIiQoMCAf4MhSCANKAIIIQEgACEIIAohCwNAIEhQBEADQCAIQaABayEIIAYpAwAhSCAGQQhqIQYgSEKAgYKEiJCgwIB/gyJIQoCBgoSIkKDAgH9RDQALIEhCgIGChIiQoMCAf4UhSAsgSEIBfSFKIBMgCCBIeqdBA3ZBbGxqIgNBBGstAABHBEBBgAEhDiAAIANrQRRtIgMgAGoiBSkAACJJIElCAYaDQoCBgoSIkKDAgH+DeqdBA3YgACADQQhrIAJxaiIDKQAAIkkgSUIBhoNCgIGChIiQoMCAf4N5p0EDdmpBB00EQCANIAFBAWoiATYCCEH/ASEOCyAFIA46AAAgDSALQQFrIgs2AgwgA0EIaiAOOgAACyBIIEqDIUggCkEBayIKDQALCyAUBEAgGkHEAGohBgNAIAZBBGsoAgAiAARAIAYoAgAgAEEkbEEEEOgOCyAGQewAaiEGIBRBAWsiFA0ACwsgHARAIBogHEHsAGxBBBDoDgsgCUGAEGokAAuuLQIWfyF9IwAiFUHAAmtBQHEiByQAIAIgACgCICIDTwRAAkACQCACIANrIgVBAWoiBCAAKAIYIANrSwRAIABBGGogAyAEQQRBCBDYBiAAKAIgIQMMAQsgBEUNAQsgBEEDcSEKIAAoAhwhCCAFQQNPBEAgBEF8cSEEIAggA0EDdGohBQNAIAVBADYCACAFQRhqQQA2AgAgBUEQakEANgIAIAVBCGpBADYCACAFQSBqIQUgA0EEaiEDIARBBGsiBA0ACwsgCkUNACADIApqIQQgCCADQQN0aiEFA0AgBUEANgIAIAVBCGohBSAKQQFrIgoNAAsgBCEDCyAAIAM2AiALAkACQCACIANJBEAgACgCHCACQQN0aiIDKAIAIQQgA0IBNwIAIARFBEAgACAAKAIkQQFqNgIkCyACIAAoAiBPDQEgACgCHCACQQN0aiIFKAIAQQFHDQEgACgCCCIEDQIgAUEMaiEEIAAoAgBFBEAgAEHw5sIAEMMICyAAKAIEIgMgASkCADcCACADIAI2AgwgAyAEKQIANwIQIANBgYCAgHw2AhwgA/0MAAAAAAAAAAAAAAAAAAAAAP0LBCAgA0EIaiABQQhqKAIANgIAIANBGGogBEEIaigCADYCACADQTBq/QwAAAAAAAAAAAAAAAAAAAAA/QsEACAAQQE2AgggACgCFCIBIAAoAgxGBEAgAEEMakGA58IAELYICyAAKAIQIAFBAnRqQQA2AgAgACABQQFqNgIUIAVBADYCBCAVJAAPCyACIANBkITEABCFCwALQZDkwgBBD0Hg5sIAENELAAsgACgCBCIDKAI8Qf////8DcQRAIAFBDGohFiABKgIUIScgASoCECEoIAEqAgwhKSABKgIIISogASoCBCErIAEqAgAhLEEAIQoDQCAKQQZ0IhggACgCBCIJaiIDKgIQIhkgAyoCACIdkyADKgIUIhogAyoCBCIek5QgAyoCGCIbIAMqAggiH5OUIAMoAhwiDkH/////A3EiDbOUIAMqAjAiHCADKgIgIiCTIAMqAjQiISADKgIkIiKTlCADKgI4IiMgAyoCKCIkk5QgAygCPCIPQf////8DcSIMs5SSITggAygCLCEFIAMoAgwhCEP//39/ISVD//9/fyEmQQAhEQJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCANQQFGIhNFBEAgBCAITQ0BIAkgCEEGdGoiBioCECImIAYqAgAiLZMgBioCFCIuIAYqAgQiL5OUIAYqAhgiMCAGKgIIIjGTlCAGKAIcQf////8DcSILs5QgBioCMCIyIBwgHCAyXxsgBioCICIzICAgICAzYBuTIAYqAjQiNCAhICEgNF8bIAYqAiQiNSAiICIgNWAbk5QgBioCOCI2ICMgIyA2XxsgBioCKCI3ICQgJCA3YBuTlCAGKAI8Qf////8DcSIGIAxqs5SSIjkgJiAcIBwgJl8bIC0gICAgIC1gG5MgLiAhICEgLl8bIC8gIiAiIC9gG5OUIDAgIyAjIDBfGyAxICQgJCAxYBuTlCALIAxqs5QgMiAzkyA0IDWTlCA2IDeTlCAGs5SSIiZdIREgOSAmIBEbIDiTISYLQQAhEiAMQQFGIhRFBEAgBCAFTQ0CIAkgBUEGdGoiBioCECIlIAYqAgAiLZMgBioCFCIuIAYqAgQiL5OUIAYqAhgiMCAGKgIIIjGTlCAGKAIcQf////8DcSILs5QgBioCMCIyIBkgGSAyXxsgBioCICIzIB0gHSAzYBuTIAYqAjQiNCAaIBogNF8bIAYqAiQiNSAeIB4gNWAbk5QgBioCOCI2IBsgGyA2XxsgBioCKCI3IB8gHyA3YBuTlCAGKAI8Qf////8DcSIGIA1qs5SSIjkgJSAZIBkgJV8bIC0gHSAdIC1gG5MgLiAaIBogLl8bIC8gHiAeIC9gG5OUIDAgGyAbIDBfGyAxIB8gHyAxYBuTlCALIA1qs5QgMiAzkyA0IDWTlCA2IDeTlCAGs5SSIiVdIRIgOSAlIBIbIDiTISULICZDAAAAAF0gJUMAAAAAXXJFDQogJSAmXkUEQCAEIAVNDQMgByAJIAVBBnRqIgQpAwA3A4ACIAcgBCkDEDcD8AEgByAEKQMgNwPgASAHIAQpAzA3A9ABIAcgBEEIaigCADYCiAIgByAEQRhqKAIANgL4ASAHIARBKGooAgA2AugBIAcgBEE4aigCADYC2AEgACgCFCIGIAVNDQQgBCgCHCEUIAQoAgwhCyAEKAIsIQwgBCgCPCEXIAAoAhAiDyAFQQJ0aiAKQQF0IhA2AgAgA0EwaiERIANBIGohCSASRQRAIAkgDDYCDCARIAcpA9ABNwMAIBFBCGogBygC2AE2AgAgCSAXNgIcIAlBCGogBygC6AE2AgAgCSAHKQPgATcDACAEIAg2AiwgBCAaOAI0IAQgGTgCMCAEIBs4AjggBCAONgI8IAQgHzgCKCAEIB44AiQgBCAdOAIgIAQoAhwhCSAEKgIAIRwgBCoCBCEgIAQqAgghISAEKgIQISIgBCoCFCEjIAQqAhghJCADIAU2AgwgAyAkIBsgGyAkXxs4AhggAyAjIBogGiAjXxs4AhQgAyAiIBkgGSAiXxs4AhAgAyAhIB8gHyAhYBs4AgggAyAgIB4gHiAgYBs4AgQgAyAcIB0gHCAdXxs4AgAgAyAJQf////8DcSANaiAJIA5yQYCAgIB8cXI2AhwCQAJAIBdB/////wNxQQFHBEAgBiAMTQ0BIA8gDEECdGogEEEBcjYCAAwOCyAMIAAoAiBPDQEgACgCHCAMQQN0aiIDKAIARQ0BIAMgEEEBcjYCBAwNCyAMIAZBkOnCABCFCwALQZDkwgBBD0Gg6cIAENELAAsgCSAHKQOAAjcDACAJIAs2AgwgESAHKQPwATcDACAJIBQ2AhwgBCAdOAIAIAQgHjgCBCAEIB84AgggBCAINgIMIAQgGTgCECAEIBo4AhQgBCAbOAIYIAlBCGogBygCiAI2AgAgEUEIaiAHKAL4ATYCACAEIA42AhwgAyAFNgIMIAMgGyAEKgI4IhwgGyAcYBs4AhggAyAaIAQqAjQiGyAaIBtgGzgCFCADIBkgBCoCMCIaIBkgGmAbOAIQIAMgHyAEKgIoIhkgGSAfYBs4AgggAyAeIAQqAiQiGSAZIB5gGzgCBCADIB0gBCoCICIZIBkgHWAbOAIAIAMgBCgCPCIDQf////8DcSANaiADIA5yQYCAgIB8cXI2AhwCQAJAIBRB/////wNxQQFHBEAgBiALTQ0BIA8gC0ECdGogEEEBcjYCAAwMCyALIAAoAiBPDQEgACgCHCALQQN0aiIDKAIARQ0BIAMgEEEBcjYCBAwLCyALIAZB0OnCABCFCwALQZDkwgBBD0Hg6cIAENELAAsgBCAITQ0FIAcgCSAIQQZ0aiIEKQMANwPAASAHIAQpAxA3A7ABIAcgBCkDIDcDoAEgByAEKQMwNwOQASAHIARBCGooAgA2AsgBIAcgBEEYaigCADYCuAEgByAEQShqKAIANgKoASAHIARBOGooAgA2ApgBIAAoAhQiBiAITQ0EIANBEGohDSAEKAIcIRIgBCgCDCEJIAQoAiwhCyAEKAI8IRMgACgCECIOIAhBAnRqIApBAXQiEEEBcjYCACARRQRAIAMgBykDoAE3AwAgAyALNgIMIA0gBykDkAE3AwAgAyATNgIcIANBCGogBygCqAE2AgAgDUEIaiAHKAKYATYCACAEICA4AiAgBCAiOAIkIAQgJDgCKCAEIAU2AiwgBCAcOAIwIAQgITgCNCAEICM4AjggBCAPNgI8IAMgCDYCLCADIAQqAgQiGSAiIBkgIl8bOAIkIAMgBCoCACIZICAgGSAgXxs4AiAgAyAEKAIcIglB/////wNxIAxqIAkgD3JBgICAgHxxcjYCPCADIAQqAhgiGSAjIBkgI2AbOAI4IAMgBCoCFCIZICEgGSAhYBs4AjQgAyAEKgIQIhkgHCAZIBxgGzgCMCADIAQqAggiGSAkIBkgJF8bOAIoAkACQCATQf////8DcUEBRwRAIAYgC00NASAOIAtBAnRqIBA2AgAMCwsgCyAAKAIgTw0BIAAoAhwgC0EDdGoiAygCAEUNASADIBA2AgQMCgsgCyAGQbDqwgAQhQsAC0GQ5MIAQQ9BwOrCABDRCwALIAMgCTYCDCANIAcpA7ABNwMAIAMgEjYCHCADIAcpA8ABNwMAIA1BCGogBygCuAE2AgAgA0EIaiAHKALIATYCACAEIAU2AgwgBCAcOAIQIAQgDzYCHCAEICA4AgAgBCAhOAIUIAQgIzgCGCAEICQ4AgggBCAiOAIEIAQoAjwhCyAEKgIgIRkgBCoCJCEdIAQqAighGiAEKgIwIR4gBCoCNCEbIAQqAjghHyADIAg2AiwgAyAjIB8gHyAjXxs4AjggAyAhIBsgGyAhXxs4AjQgAyAcIB4gHCAeYBs4AjAgAyAkIBogGiAkYBs4AiggAyAiIB0gHSAiYBs4AiQgAyAgIBkgGSAgYBs4AiAgAyALQf////8DcSAMaiALIA9yQYCAgIB8cXI2AjwCQAJAIBJB/////wNxQQFHBEAgBiAJTQ0BIA4gCUECdGogEDYCAAwJCyAJIAAoAiBPDQEgACgCHCAJQQN0aiIDKAIARQ0BIAMgEDYCBAwICyAJIAZB8OrCABCFCwALQZDkwgBBD0GA68IAENELAAsgCCAEQdDowgAQhQsACyAFIARB4OjCABCFCwALIAUgBEHw6MIAEIULAAsgBSAGQYDpwgAQhQsACyAIIAZBoOrCABCFCwALIAggBEGQ6sIAEIULAAsCQAJAIBRFBEAgBSAGTw0BIA4gBUECdGogCEEBdDYCAAwGCyAFIAAoAiBPDQEgACgCHCAFQQN0aiIDKAIARQ0BIAMgCEEBdDYCBAwFCyAFIAZBkOvCABCFCwALQZDkwgBBD0Gg68IAENELAAsCQCAURQRAIAUgBk8NASAOIAVBAnRqIAhBAXRBAXI2AgAMBAsCQCAFIAAoAiBPDQAgACgCHCAFQQN0aiIDKAIARQ0AIAMgCEEBdEEBcjYCBAwEC0GQ5MIAQQ9B4OrCABDRCwALIAUgBkHQ6sIAEIULAAsCQCATRQRAIAYgCE0NASAPIAhBAnRqIAVBAXQ2AgAMAwsCQCAIIAAoAiBPDQAgACgCHCAIQQN0aiIDKAIARQ0AIAMgBUEBdDYCBAwDC0GQ5MIAQQ9BgOrCABDRCwALIAggBkHw6cIAEIULAAsgE0UEQCAGIAhNDQIgDyAIQQJ0aiAFQQF0QQFyNgIADAELAkAgCCAAKAIgTw0AIAAoAhwgCEEDdGoiAygCAEUNACADIAVBAXRBAXI2AgQMAQtBkOTCAEEPQcDpwgAQ0QsACyAAKAIIIgUgCk0NAQJAAkACQCAYIAAoAgQiBGoiAyoCECIZICkgGSApYBsiJSADKgIAIh0gLCAdICxfGyImkyADKgIUIhogKCAaIChgGyI4IAMqAgQiHiArIB4gK18bIi2TlCADKgIYIhsgJyAbICdgGyIuIAMqAggiHyAqIB8gKl8bIi+TlCADKAIcIglB/////wNxIghBAWqzlCADKgIwIhwgAyoCICIgkyADKgI0IiEgAyoCJCIik5QgAyoCOCIjIAMqAigiJJOUIAMoAjwiC0H/////A3EiBrOUkiIwIBkgHZMgGiAek5QgGyAfk5QgCLOUIBwgKSAcIClgGyIZICAgLCAgICxfGyIdkyAhICggISAoYBsiGiAiICsgIiArXxsiHpOUICMgJyAjICdgGyIbICQgKiAkICpfGyIfk5QgBkEBarOUkiIcXUUEQCAGIAhNDQEgHCAwXA0BCyAIQQFHDQIgByAD/QAEAP0LBAAgByABKQIANwMgIAcgA0EQav0ABAD9CwQQIAcgAUEIaigCADYCKCAAKAIAIAVGBH8gAEHw58IAEMMIIAAoAgQFIAQLIAVBBnRqIgEgB/0ABAD9CwQAIAEgAjYCLCABIBYpAgA3AjAgAUGBgICAfDYCPCABQShqIAcoAig2AgAgAUEgaiAHKQMgNwMAIAFBEGogB/0ABBD9CwQAIAFBOGogFkEIaigCADYCACAAIAVBAWo2AgggCkEBdCEDIAAoAhQiASAAKAIMRgRAIABBDGpBgOjCABC2CAsgACgCECABQQJ0aiADNgIAIAAgAUEBajYCFCAAKAIIIgEgCk0NByAAKAIEIApBBnRqIgEoAgwiAyAAKAIgTw0IIAAoAhwgA0EDdGoiAygCAEUNCCADIAVBAXQiAzYCBCACIAAoAiBPDQEgACgCHCACQQN0aiIAKAIARQ0BIAAgA0EBcjYCBCABIAU2AgwgASABKAIcQQFqNgIcIAEgASoCACIZICwgGSAsXxs4AgAgASABKgIEIhkgKyAZICtfGzgCBCABIAEqAggiGSAqIBkgKl8bOAIIIAEgASoCECIZICkgGSApYBs4AhAgASABKgIUIhkgKCAZIChgGzgCFCABIAEqAhgiGSAnIBkgJ2AbOAIYIBUkAA8LIAZBAUYEQCAHIAP9AAQg/QsEYCAHIANBMGr9AAQA/QsEcCAAKAIAIAVGBH8gAEGg58IAEMMIIAAoAgQFIAQLIAVBBnRqIgMgASkCADcCACADIAI2AgwgAyAWKQIANwIQIANBgYCAgHw2AhwgAyAH/QAEYP0LBCAgA0EIaiABQQhqKAIANgIAIANBGGogFkEIaigCADYCACADQTBqIAf9AARw/QsEACAAIAVBAWo2AgggCkEBdEEBciEDIAAoAhQiASAAKAIMRgRAIABBDGpBsOfCABC2CAsgACgCECABQQJ0aiADNgIAIAAgAUEBajYCFCAAKAIIIgEgCk0NBSACIAAoAiBPDQYgACgCHCACQQN0aiIBKAIARQ0GIAAoAgQhAiABIAVBAXQiATYCBAJAIAIgCkEGdGoiAigCLCIDIAAoAiBPDQAgACgCHCADQQN0aiIAKAIARQ0AIAAgAUEBcjYCBCACQSBqIgAgBTYCDCAAIAAoAhxBAWo2AhwgACAAKgIAIhkgLCAZICxfGzgCACAAIAAqAgQiGSArIBkgK18bOAIEIAAgACoCCCIZICogGSAqXxs4AgggACAAKgIQIhkgKSAZIClgGzgCECAAIAAqAhQiGSAoIBkgKGAbOAIUIAAgACoCGCIZICcgGSAnYBs4AhggFSQADwtBkOTCAEEPQeDnwgAQ0QsACyADIAtBAWo2AjwgAyAbOAI4IAMgGjgCNCADIBk4AjAgAyAfOAIoIAMgHjgCJCADIB04AiAgAygCLCEKDAgLQZDkwgBBD0Gw6MIAENELAAsgAyAuOAIYIAMgODgCFCADICU4AhAgAyAvOAIIIAMgLTgCBCADICY4AgAgAyAJQQFqNgIcIAMoAgwhCgwGCyAIIAZBsOnCABCFCwALIAogBUGQ58IAEIULAAsgCiABQcDnwgAQhQsAC0GQ5MIAQQ9B0OfCABDRCwALIAogAUGQ6MIAEIULAAtBkOTCAEEPQaDowgAQ0QsACyAAKAIIIgQgCksNAAsgCiAEQcDowgAQhQsACyADIAI2AiwgA0GBgICAfDYCPCADIAEpAgA3AiAgAyABKQIMNwIwIANBKGogAUEIaigCADYCACADQThqIAFBFGooAgA2AgAgBUEBNgIEIBUkAAvMLQQdfxh9Bn4DeyMAQcARayIIJAACfwJAAkACQAJ/AkACQCAGKAIAIglFDQAgCEEYaiAJIAYoAgQoAhgRAAAgCEGACGogCCgCGCIJIAgoAhwoAgwRAAAgCUUNACAIKQOACEKdtsqWmNnrg1CFIAgpA4gIQpGQzIXaoPOYSoWEUA0BC0EgQQgQkQ4iCUUNAyAJQQA6ABggCUKJ2bnijtO+lwg3AxAgCUHI58EA/QADAP0LAwACQCAGKAIAIgpFDQAgBigCBCILKAIAIg0EQCAKIA0RBgALIAsoAgQiDUUNACAKIA0gCygCCBDoDgsgBkHY58EANgIEIAYgCTYCAEHY58EADAELIAYoAgAiCUUNASAGKAIECyEGIAhBEGogCSAGKAIcEQAAIAhBgAhqIgkgCCgCECINIAgoAhQoAgwRAAACQCANRQ0AIAgpA4AIQp22ypaY2euDUIUgCCkDiAhCkZDMhdqg85hKhYRCAFINACANIA0tABhBf3NBAXEiEToAGCAFKAIIIRIgBSgCBCEUIAVCBDcCBCAFKAIAIRkgBUEANgIAIAH9CQJkIUMgAf1dA2ghRCAIQSRqIgYgARD7BiAIQTxqIgogAiAAIAMoApQBEQEAIAj9AAJAIUUgCCoCUCElIAgqAjwhJyAIQdQAaiAGIAoQ8AlBBCEQQQAgCCgCVEUNBBogCEGAAWogCEHoAGopAgA3AwAgCCAI/QACWP0LA3AgCEGMAWoiBiABIAhB8ABqENkJIAkgBkH0BvwKAAAgCEGAD2oiBiAJEJEBIAgoAoAPQQFHDQMgRSBEIEP9DQABAgMEBQYHGBkaGwABAgP9DAAAAD8AAAA/AAAAPwAAAD/95gEiQ/0MAAAgQQAAIEEAACBBAAAgQf3mASJE/eUBIEUgRP3kAf0NAAECAwQFBgcYGRobHB0eHyFFIET9HwEgJZIhLyAnIET9HwKTITBBlAFBiAEgBxshHCBD/R8AIjFDCtcjPJIiMowhMyBD/R8BIjRDCtcjPJIiNYwhNiBD/R8CIjdDCtcjPJIiOIwhOSAAKgIYITogACoCFCE7IAAqAhAhPCAIQYwRaiEaIAhB0BBqIRUgCEGUEGohGyAGQQRqIRYDQCAIQagPaiIGQRBqIBZBEGr9AAIA/QsDACAGQSBqIBZBIGooAgAiBjYCACAIIBb9AAIA/QsDqA8CQAJAIAYQww1B/wFxDgUBAAAAAQALIAhB0A9qIAEgCEGoD2oQvgUgDSgCBCIJIA0pAxBCgoCAgBCFIj5CIIgiPyAIKQLoDyI9QiCIIkJCt9OwhQyFIkB+ID1C/////w+DQt2h8csMhSJBID5C/////w+DIj5+hSA+IEB+ID8gQX6FQiCJhSI+pyIPcSEGID5CGYgiQEL/AINCgYKEiJCgwIABfiFBIEKnIQogDSgCACELID2nIQxBACEOAkACQAJAAkACQAJAAkADQAJAIAYgC2opAAAiPyBBhSI9QoGChIiQoMCAAX0gPUJ/hYNCgIGChIiQoMCAf4MiPUIAUgRAA0AgDCALID16p0EDdiAGaiAJcUFsbGoiEEEUaygCAEYEQCAQQRBrKAIAIApGDQMLID1CAX0gPYMiPUIAUg0ACwsgPyA/QgGGg0KAgYKEiJCgwIB/g0IAUg0CIA5BCGoiDiAGaiAJcSEGDAELCyAQQQxrIg4oAgAhBiARIBBBBGsiFy0AAEcEQCAGIBJPDQMgFCAGQagBbGoiCikCfCE9IApCgICAgMAANwJ8IAhBqBFqIhMgCkGEAWoiBigCADYCAEEAIQsgBkEANgIAIAggPTcDoBEgCigCYCIJQQZ0IQwgCUH///8fSw0CIAxB8P///wdLDQIgCigCXCEYIAooAmQhHSAKKQJQIT0gCigCTCEeIAopAkQhPiAKKAJAIR8gCigCpAEhICAKKAKgASEhAkAgDEUEQEEQIQ9BACEGDAELQRAhCyAJIQYgDEEQEJEOIg9FDQMLIAwEQCAPIBggDPwKAAALIAhBqBBqIgwgCkHwAGooAgA2AgAgGyAIKQOgETcBACAbQQhqIBMoAgA2AQAgCEGIEGoiEyAKQZABaigCADYCACAIQfgPaiIYIApBnAFqKAIANgIAIAggCikCaDcDoBAgCCAKKQKIATcDgBAgCCAKKQKUATcD8A8gCigCdCEiIAovAXghIyAIQcAQaiIkIApBEGr9AAIA/QsDACAVIAr9AAIg/QsCACAVQRBqIApBMGr9AAIA/QsCACAIIAr9AAIA/QsDsBAgEEEIa0EANgIAIBcgEToAACAOIAUoAggiCzYCACAFKAIAIAtGBEAgBUHk48EAEJcICyAFKAIEIAtBqAFsaiIKIAj9AAOwEP0LAgAgCiAdNgJkIAogCTYCYCAKIA82AlwgCiAGNgJYIAogPTcCUCAKIB42AkwgCiA+NwJEIAogHzYCQCAKQRBqICT9AAMA/QsCACAKQSBqIBX9AAMA/QsCACAKQTBqIAhB4BBq/QADAP0LAgAgCiAjOwF4IAogIjYCdCAKQfAAaiAMKAIANgIAIAogCCkDoBA3AmggCiAIKQGSEDcBeiAKQYABaiAIQZgQaikBADcBACAKQZABaiATKAIANgIAIAogCCkDgBA3AogBIApBnAFqIBgoAgA2AgAgCiAIKQPwDzcClAEgCiAgNgKkASAKICE2AqABIAUgC0EBaiIJNgIIDAQLIAUoAggiCSAGTQ0EIAUoAgQgBkGoAWxqIQYMBgsgCCgCrA8gCCgCqA9BCXRqIgZBACAHGyELQQAgBiAHGyEOIAUoAggiCSAFKAIARgRAIAVB9OPBABCXCAsgBSAJQQFqNgIIIAUoAgQgCUGoAWxqIgZCgICAgIACNwJYIAZBADYCTCAGQQA2AkAgBkEANgIgIAZBADYCACAGQgA3AmAgBkIANwKEASAGQoCAgIDAADcCfCAGIA42AqABIAYgCzYCpAEgBkHoAGr9DAAAAAAAAAAAAAAAAAAAAAD9CwIAIAZB+ABqQQA7AQAgBkGMAWr9DAAAAAAAAAAAAAAAAAAAAAD9CwIAIAZBnAFqQQA2AgAgCCAROgCwESAIQQA2AqwRIAggCTYCqBEgCCAKNgKkESAIIAw2AqARIA0oAgQiDCAPcSIJIA0oAgAiC2opAABCgIGChIiQoMCAf4MiPVAEQEEIIQoDQCAJIApqIQYgCkEIaiEKIAsgBiAMcSIJaikAAEKAgYKEiJCgwIB/gyI9UA0ACwsgCyA9eqdBA3YgCWogDHEiCWosAAAiBkEATgRAIAsgCykDAEKAgYKEiJCgwIB/g3qnQQN2IglqLQAAIQYLAkAgBkEBcSIGIA0oAggiCkVxRQRAIAkgC2ogQKdB/wBxIg46AAAgCyAJQQhrIAxxakEIaiAOOgAAIA0gCiAGazYCCCANIA0oAgxBAWo2AgwgCyAJQWxsaiIGQRRrIglBEGogCEGwEWooAgA2AgAgCSAI/QACoBH9CwIADAELIAhBCGogDSANQRBqEPgBIA0gPiANKAIAIA0oAgQgPhCFCiAIQaARahCLCiEGCyAGQQxrIQ4gBSgCCCEJDAILIAsgDEGA/MEAENcNAAsgBiASQdTjwQAQhQsACyAJIA4oAgAiBksNAQsgBiAJQYTkwQAQhQsACyAFKAIEIQkgCCAvOAK0ESAIIEX9CwKkESAIIDA4AqARIAhBgBFqIAhB0A9qIAEgCEGoD2ogCEGgEWoQ8wQgCCoCgBEhJyAIKgKEESEpIAgqAogRISogCEH4EGogGkEIaigCADYCACAIIBopAgA3A/AQIAggOiAqkzgCmBEgCCA7ICmTOAKUESAIIDwgJ5M4ApARIAggAP0AAgD9CwOAESAJIAZBqAFsaiEGAkACQAJAIAdFBEBDAAAAACElQwAAAAAhKEMAAAAAISYgBigCAARAIAYqAhwhJiAGKgIYISggBioCFCElCyAGKAKEASIKRQ0CICogJpMhJiApICiTISggJyAlkyElIAYoAoABIgshCSAKQQFxBEAgCSAJKgIAICWTOAIAIAkgCSoCBCAokzgCBCAJIAkqAgggJpM4AgggCUFAayEJCyAKQf///x9xQQFGDQEgCyAKQQZ0aiEKA0AgCSAJKgIAICWTOAIAIAlBBGoiCyALKgIAICiTOAIAIAlBCGoiCyALKgIAICaTOAIAIAlBQGsiCyALKgIAICWTOAIAIAlBxABqIgsgCyoCACAokzgCACAJQcgAaiILIAsqAgAgJpM4AgAgCiAJQYABaiIJRw0ACwwBC0MAAAAAISVDAAAAACEoQwAAAAAhJiAGKAIgBEAgBioCPCEmIAYqAjghKCAGKgI0ISULIAYoAoQBIgpFDQIgKiAmkyEmICkgKJMhKCAnICWTISUgBigCgAEiCyEJIApBAXEEQCAJIAkqAgwgJZM4AgwgCSAJKgIQICiTOAIQIAkgCSoCFCAmkzgCFCAJQUBrIQkLIApB////H3FBAUYNACALIApBBnRqIQoDQCAJQQxqIgsgCyoCACAlkzgCACAJQRBqIgsgCyoCACAokzgCACAJQRRqIgsgCyoCACAmkzgCACAJQcwAaiILIAsqAgAgJZM4AgAgCUHQAGoiCyALKgIAICiTOAIAIAlB1ABqIgsgCyoCACAmkzgCACAKIAlBgAFqIglHDQALCyAHDQELIAYgKjgCHCAGICk4AhggBiAnOAIUIAb9DAAAAAAAAAAAAAAAAAAAgD/9CwIEIAZBATYCACAGIAhBgBFqIAhB8BBqQbjlwQAgAiADQQAgBkEAIAYgBCAGECEaDAELIAYgKjgCPCAGICk4AjggBiAnOAI0IAb9DAAAAAAAAAAAAAAAAAAAgD/9CwIkIAZBATYCICAIIAgqAowRIio4AqwRIAggCCoCiBEiJYw4AqgRIAggCCoChBEiJ4w4AqQRIAggCCoCgBEiKYw4AqARIAggKiApIAgqApQRIiiUICcgCCoCkBEiJpSTIisgK5IiK5QgJyAnIAgqApgRIi6UICUgKJSTIiwgLJIiLJQgKSAlICaUICkgLpSTIi0gLZIiLZSTkiAukzgCuBEgCCAqIC2UICkgK5QgJSAslJOSICiTOAK0ESAIICogLJQgJSAtlCAnICuUk5IgJpM4ArARIAYgCEGgEWogAiADIAhB8BBqQbjlwQBBACAGQQAgBiAEIAYQIRoLIAhBiBFqIAYgHGoiCUEIaigCADYCACAIIAkpAgA3A4ARIAYoAoQBIglFDQAgBigCgAEhDyAJQQZ0IRBBASEKQQAhDEEAIQsDQAJAAn0CQAJAAkAgDCAPaiIJQRhqIhcqAgBDAAAAAF0EQCAIKgLEDyElIAgqAsAPIScgCCoCvA8hKSAIKgKIESEqIAgqAoQRISggCCoCgBEhJiAIIAIgAygCtAERAAAgCCgCACITRQ0BIAhBoBFqIBMgACAIQYARaiAIKAIEKAIUEQIAIBcqAgAgCCoCpBEgMSAojJggJ5KTIAgqAoQRjJQgCCoCoBEgNyAmjJggKZKTIAgqAoARlJMgCCoCqBEgNCAqjJggJZKTIAgqAogRlJNeRQ0FCyAHDQIgBigCAEEBcUUNASAGKgIEIikgCUEEaioCACIrlCAGKgIIIicgCSoCACIulJMiJSAlkiEqIAYqAgwiKCAulCApIAlBCGoqAgAiJZSTIiYgJpIhJiAGKgIcICUgBioCECIsICqUICkgJpQgJyAnICWUICggK5STIiUgJZIiLZSTkpKSISUgBioCGCArICwgJpQgKCAtlCApICqUk5KSkiEpIAYqAhQgLiAsIC2UICcgKpQgKCAmlJOSkpIMAwtBgOfBAEEbQZznwQAQ0QsACyAJQQhqKgIAISUgCUEEaioCACEpIAkqAgAMAQsgBigCIEEBcUUEQCAJQRRqKgIAISUgCUEQaioCACEpIAlBDGoqAgAMAQsgBioCJCIpIAlBEGoqAgAiK5QgBioCKCInIAlBDGoqAgAiLpSTIiUgJZIhKiAGKgIsIiggLpQgKSAJQRRqKgIAIiWUkyImICaSISYgBioCPCAlIAYqAjAiLCAqlCApICaUICcgJyAllCAoICuUkyIlICWSIi2Uk5KSkiElIAYqAjggKyAsICaUICggLZQgKSAqlJOSkpIhKSAGKgI0IC4gLCAtlCAnICqUICggJpSTkpKSCyEnQQAhCQJAICcgCCoCvA+TIicgOV0NACAnIDheDQAgKSAIKgLAD5MiJyAzXQ0AICcgMl4NACAlIAgqAsQPkyIlIDVeRSAlIDZdQX9zcSEJCyAOIA4oAgQgCSALdHI2AgQLIApBH3EhCyAKQQFqIQogECAMQUBrIgxHDQALCyAIQYAPaiAIQYAIahCRASAIKAKADw0ACwwDC0HE48EAEPIOAAtBtOPBABDyDgALQQhBIEH4ysQAKAIAIgBBzAggABsRAAAACwJAIAgoAoAIQQJGDQAgCCgChAkiAEEhSQ0AIAgoAogIIABBAnRBBBDoDgsgBSgCBCEQIAUoAggLIQACQCANKAIMIg9FDQAgDSgCACIJQQhqIQYgCSkDAEJ/hUKAgYKEiJCgwIB/gyE9A0ACQCA9UARAA0AgCUGgAWshCSAGKQMAIT0gBkEIaiEGID1CgIGChIiQoMCAf4MiPUKAgYKEiJCgwIB/UQ0ACyA9QoCBgoSIkKDAgH+FIT0LAkAgCSA9eqdBA3ZBbGxqIgJBBGstAAAgEUcNACACQQxrKAIAIgEgAE8NASAQIAFBqAFsaiIDKAKEASIBRQ0AIANB/ABqIQMgAUEBayEFIAJBCGsiBygCACECQQAhDEHAACEKAkACQANAIAIgDHZBAXFFDQEgCkFAayEKIAEgDEEBaiIMRw0AC0EAIQsMAQtBASELIAUgDEYNACAMQQFqIQ4gAygCBCAKaiEMA0ACQCAHKAIAIA52QQFxRQRAIAtBAWohCwwBCyAMIAtBBnRrIgIgDP0AAgD9CwIAIAJBMGogDEEwav0AAgD9CwIAIAJBIGogDEEgav0AAgD9CwIAIAJBEGogDEEQav0AAgD9CwIACyAMQUBrIQwgASAOQQFqIg5HDQALCyADIAEgC2s2AggLID1CAX0gPYMhPSAPQQFrIg8NAQwCCwsgASAAQaznwQAQhQsACyANKAIMIgoEQCANKAIEIQIgDSgCACIAQQhqIQYgACkDAEJ/hUKAgYKEiJCgwIB/gyE9IA0oAgghASAAIQkgCiELA0AgPVAEQANAIAlBoAFrIQkgBikDACE9IAZBCGohBiA9QoCBgoSIkKDAgH+DIj1CgIGChIiQoMCAf1ENAAsgPUKAgYKEiJCgwIB/hSE9CyA9QgF9IT4gESAJID16p0EDdkFsbGoiA0EEay0AAEcEQEGAASEMIAAgA2tBFG0iAyAAaiIFKQAAIj8gP0IBhoNCgIGChIiQoMCAf4N6p0EDdiAAIANBCGsgAnFqIgMpAAAiPyA/QgGGg0KAgYKEiJCgwIB/g3mnQQN2akEHTQRAIA0gAUEBaiIBNgIIQf8BIQwLIAUgDDoAACANIAtBAWsiCzYCDCADQQhqIAw6AAALID0gPoMhPSAKQQFrIgoNAAsLIBIEQCAUQYABaiEGA0AgBkEEaygCACIABEAgBigCACAAQQZ0QQQQ6A4LIAZBKGsoAgAiAARAIAZBJGsoAgAgAEEGdEEQEOgOCyAGQagBaiEGIBJBAWsiEg0ACwsgGQRAIBQgGUGoAWxBBBDoDgsgCEHAEWokAAv9KgMcfwd+Jn0jAEGgEmsiCSQAIAkgCDoANyAJIAU4AjACQAJAAkACQAJ/AkACQCAHKAIAIghFDQAgCUEoaiAIIAcoAgQoAhgRAAAgCUHQB2ogCSgCKCIIIAkoAiwoAgwRAAAgCEUNACAJKQPQB0LD+Mv2gJHd8QeFIAkpA9gHQsel/8+HuoSznH+FhFANAQtBIEEIEJEOIghFDQMgCEEAOgAYIAhCidm54o7TvpcINwMQIAhBoNzCAP0AAwD9CwMAAkAgBygCACIMRQ0AIAcoAgQiCigCACILBEAgDCALEQYACyAKKAIEIgtFDQAgDCALIAooAggQ6A4LIAdByIHDADYCBCAHIAg2AgBByIHDAAwBCyAHKAIAIghFDQEgBygCBAshByAJQSBqIAggBygCHBEAACAJQdAHaiAJKAIgIgwgCSgCJCgCDBEAAAJAIAxFDQAgCSkD0AdCw/jL9oCR3fEHhSAJKQPYB0LHpf/Ph7qEs5x/hYRCAFINACAMIAwtABhBf3NBAXEiEDoAGCAGKAIIIREgBigCBCEXIAZCBDcCBCAGKAIAIRggBkEANgIAIAMgBCgCECIIEQQAIRIgCSACKgJsIj5DAAAAP5QiRDgCQCAJIAIqAmgiP0MAAAA/lCJFOAI8IAkgAioCZCJAQwAAAD+UIkY4AjhD//9/fyExQ///f/8hNAJAIAIoAghFBEBD//9//yEtQ///f/8hBUP//39/ISxD//9/fyEuDAELQ///f/8hLUP//3//IQVD//9/fyEsQ///f38hLgJAAkAgAigCBCIHKAI8Qf////8DcSAHKAIcQf////8DcWoOAgIAAQsgByoCGCE0IAcqAhQhLSAHKgIQIQUgByoCCCExIAcqAgQhLCAHKgIAIS4MAQsgByoCGCIFIAcqAjgiLSAFIC1gGyE0IAcqAhQiBSAHKgI0Ii0gBSAtYBshLSAHKgIQIgUgByoCMCIsIAUgLGAbIQUgByoCCCIsIAcqAigiLiAsIC5fGyExIAcqAgQiLCAHKgIkIi4gLCAuXxshLCAHKgIAIi4gByoCICIvIC4gL18bIS4LAkACQAJAAkAgAyAIEQQAIgcoAghFDQAgBygCBCIHKAI8Qf////8DcSAHKAIcQf////8DcWoOAgABAgsgCUL////7////v383A+AHIAn9DP//f3///39///9/f///f//9CwTQBwwCCyAJQeQHaiAHQRhqKAIANgIAIAkgBykDADcD0AcgCSAHKQIQNwLcByAJIAdBCGooAgA2AtgHDAELIAkgByoCGCIvIAcqAjgiMCAvIDBgGzgC5AcgCSAHKgIUIi8gByoCNCIwIC8gMGAbOALgByAJIAcqAhAiLyAHKgIwIjAgLyAwYBs4AtwHIAkgByoCCCIvIAcqAigiMCAvIDBfGzgC2AcgCSAHKgIEIi8gByoCJCIwIC8gMF8bOALUByAJIAcqAgAiLyAHKgIgIjAgLyAwXxs4AtAHCyAJQcQAaiAJQdAHaiIHIAEQuwNBBCELIC4gCSoCRCI5IC4gOWAbIi8gBSAJKgJQIi4gBSAuXxsiMF4NBCAsIAkqAkgiBSAFICxfGyI2IC0gCSoCVCIsICwgLWAbIjJeDQQgMSAJKgJMIi0gLSAxXxsiNyA0IAkqAlgiMSAxIDRgGyI0Xg0EIAkgNyA+lY78ADYC+A8gCSA2ID+VjvwANgL0DyAJIC8gQJWO/AA2AvAPIAkgNCA+lY38ADYC2AcgCSAyID+VjfwANgLUByAJIDAgQJWN/AA2AtAHIAlB3ABqIgggAiAJQfAPaiAHEJ4EIAcgCEH0BvwKAAAgCUHQDmoiCCAHEIABIAkoAtAOQQFHDQMgREMAACBBlCIwIDGSITEgRUMAACBBlCI2ICySITQgRkMAACBBlCIsIC6SIS8gLSAwkyEwIAUgNpMhNiA5ICyTITkgBCgCDCEgIAlBqBFqIRkgCUHgEWohGiAJQdQRaiEbIAlByBFqIRwgCUGMD2ohISABKgIYIUkgASoCFCFKIAEqAhAhSyAIQQRqIQ8DQAJAIAlB+A5qIgRBIGogD0EgaigCACIHNgIAIARBEGogD0EQav0AAgD9CwMAIAkgD/0AAgD9CwP4DiAHQf8BcSIEQcEATw0AAkACQCAEQZirwQBqLQAADgUBAAAAAQALIAkoAogPIQQgCSgCgA8hCCAJKAKEDyELIAlB8A9qIgogAhCGBSAJKAL4DyEVIAkoAvAPIQ0gCSgC9A8hEyAKIAIQhgVBACEKIAkoAoQQIRYgCSgC/A8hFCAJID8gCyATQQFrIiIgB0E/c0EAIAdBP2tB/wFxQQJPGyIHQQhxGyIOskMAAAA/kpQiBSA2IDYgBSAFIDZdGyAFIAVcGyALIA5GGyItID8gCyAJKAKAECIjIAdBBHEbIh2yQwAAAD+SlCIFIAUgBSA0IAUgNF0bIDQgNFwbIAsgHUYbIiySQwAAAD+UIi44AqQPIAkgQCAIIA1BAWsiJCAHQQJxGyILskMAAAA/kpQiBSA5IDkgBSAFIDldGyAFIAVcGyAIIAtGGyI6IEAgCCAUIAdBAXEbIh6yQwAAAD+SlCIFIAUgBSAvIAUgL10bIC8gL1wbIAggHkYbIjWSQwAAAD+UIjs4AqAPIAkgPiAVQQFrIhUgBCAHQf8BcUEgSRsiH7JDAAAAP5KUIgUgMCAwIAUgBSAwXRsgBSAFXBsgBCAfRhsiMiA+IAQgFiAHQRBxGyIWskMAAAA/kpQiBSAFIAUgMSAFIDFdGyAxIDFcGyAEIBZGGyIFkkMAAAA/lCI4OAKoDyAJIEQgBSAyk0MAAAA/lJIiMjgCtA8gCSBFICwgLZNDAAAAP5SSIjc4ArAPIAkgRiA1IDqTQwAAAD+UkiI6OAKsDyAJIAH9AAIA/QsDuA8gCSBJIDiTIjU4AtAPIAkqArgPIQUgCSBLIDuTIjs4AsgPIAlBwA9qKgIAIS0gCSBKIC6TIjg4AswPIAkgMiAtIC2UIkcgCSoCxA8iLiAulCJMIAUgBZQiTZMiQyAJKgK8DyIsICyUIkiTkouUIDcgLCAtlCIzIDOSIjwgLiAFjJQiMyAzkiI9kouUIDogBSAtlCIzIDOSIk4gLiAsjJQiMyAzkiJPk4uUkpIiUCAuIAUgOJQgOyAslJMiMyAzkiIzlCAsICwgNZQgLSA4lJMiQSBBkiJBlCAFIDsgLZQgBSA1lJMiQiBCkiJClJOSIDWTIlGSIjU4AuwPIAkgMiA8ID2Ti5QgOiAFICyUIjwgPJIiPCAuIC2MlCI9ID2SIj2Si5QgNyBIIEOSIEeTi5SSkiJDIC4gQpQgBSAzlCAtIEGUk5IgOJMiOJIiBTgC6A8gCSAyIE4gT5KLlCA3IDwgPZOLlCA6IE0gTJIgSJMgR5OLlJKSIjIgLiBBlCAtIEKUICwgM5STkiA7kyI3kiItOALkDyAJIFEgUJMiLDgC4A8gCSA4IEOTIi44AtwPIAkgNyAykyIyOALYDwJAIBIoAghFBEBBACEIDAELIBIoAgQiB0EAIAcqAhggLGAbQQAgByoCFCAuYBtBACAHKgIQIDJgG0EAIAcqAgggNV8bQQAgByoCBCAFXxtBACAHKgIAIC1fGyEIIAcoAjxB/////wNxRQ0AIAcqAiAgLV8gByoCJCAFX3EgByoCKCA1X3EgByoCMCAyYHEgByoCNCAuYHEgByoCOCAsYHEhCiAHQSBqIQcLIAkgCDYCgBEgCSASNgL4ECAJIAo2AvQQIAkgBzYC9A8gCUEANgLwDyAJIAlB2A9qNgL8ECAJQRhqIAlB8A9qENkDIAkoAhhBAXEEQCAJKAIcIQdBASANayIEIAtqIBQgJGsiC0EBIBNrIgggDmogIyAiayIKIB8gFWtsamxqIhNB3aHxy3xzrSEnIAQgHmogCCAdaiAWIBVrIApsaiALbGoiFEG307CFfHOtISgDQCAMKAIEIgQgByAMKQMQQoOAgIAQhSIlQiCIIiYgKH4gJUL/////D4MiJSAnfoUgJSAofiAmICd+hUIgiYUiJadzrSImQt2h8csMfiAlQiCIIiVCt9OwhQx+hSAmQrfTsIUMfiAlQt2h8csMfoVCIImFIianIg5xIQggJkIZiCIqQv8Ag0KBgoSIkKDAgAF+ISsgDCgCACENQQAhCyAJAn8CQAJAAkADQAJAICsgCCANaikAACIphSIlQoGChIiQoMCAAX0gJUJ/hYNCgIGChIiQoMCAf4MiJUIAUgRAA0ACQCATIA0gJXqnQQN2IAhqIARxQWhsaiIKQRhrKAIARw0AIBQgCkEUaygCAEcNACAHIApBEGsoAgBGDQMLICVCAX0gJYMiJUIAUg0ACwsgKSApQgGGg0KAgYKEiJCgwIB/g0IAUg0CIAtBCGoiCyAIaiAEcSEIDAELCyAKQQxrIQRBASAKQQRrIgstAAAgEEYNAxogBCgCACIIIBFPDQEgHCAXIAhB7ABsaiIIKQJANwIAIAhCgICAgMAANwJAIBsgCCkCTDcCACAaIAgpAlg3AgAgHEEIaiAIQcgAaiINKAIANgIAIA1BADYCACAbQQhqIAhB1ABqKAIANgIAIBpBCGogCEHgAGooAgA2AgAgCUGYEWogCEEQav0AAgD9CwMAIAkgCP0AAgD9CwOIESAIKAJkIQ0gCCgCaCEOIBlBEGogCEEwav0AAgD9CwIAIBkgCP0AAiD9CwIAIApBCGtBADYCACAEIAYoAggiCDYCACALIBA6AAAgBigCACAIRgRAIAZBvILDABCdCAsgBigCBCAIQewAbGoiCiAJQYgRakHkAPwKAAAgCiAONgJoIAogDTYCZCAGIAhBAWo2AggMAgsgCSgC/A4gCSgC+A5BCXRqIgQgByAJLQA3IggbIQogByAEIAgbIQsgBigCCCIIIAYoAgBGBEAgBkHMgsMAEJ0ICyAGIAhBAWo2AgggBigCBCAIQewAbGoiBEIANwJIIARCgICAgMAANwJAIARBADYCICAEQQA2AgAgBCAKNgJoIAQgCzYCZCAEQdAAav0MAAAAAAAAAAAAAAAAAAAAAP0LAgAgBEHgAGpBADYCACAJIBA6AIQSIAlBADYCgBIgCSAINgL8ESAJIAc2AvgRIAkgFDYC9BEgCSATNgLwESAMKAIEIg0gDnEiBCAMKAIAIgtqKQAAQoCBgoSIkKDAgH+DIiVQBEBBCCEKA0AgBCAKaiEEIApBCGohCiALIAQgDXEiBGopAABCgIGChIiQoMCAf4MiJVANAAsLIAsgJXqnQQN2IARqIA1xIgRqLAAAIghBAE4EfyALIAspAwBCgIGChIiQoMCAf4N6p0EDdiIEai0AAAUgCAtBAXEiCCAMKAIIIgpFcUUEQCAEIAtqICqnQf8AcSIOOgAAIAsgBEEIayANcWpBCGogDjoAACAMIAogCGs2AgggDCAMKAIMQQFqNgIMIAsgBEFobGoiBEEYayIIIAkpAvARNwIAIAhBCGogCUH4EWr9AAIA/QsCACAEQQxrIQQMAgsgCUEQaiAMIAxBEGoQ7QEgDCAmIAwoAgAgDCgCBCAmEIUKIAlB8BFqEI0KQQxrIQQMAQsgCCARQayCwwAQhQsAC0EACzoAhxEgBCgCACIIIAYoAggiCk8EQCAIIApB3ILDABCFCwALIAYoAgQhCiAJIARBBGo2ApwSIAkgITYCmBIgCUHwiMMANgKIEiAJIAA2AoQSIAkgCiAIQewAbGo2AvwRIAkgCUE4ajYClBIgCSAJQTBqNgKQEiAJIAlBrA9qNgKMEiAJIAlBoA9qNgKAEiAJIAlBN2o2AvgRIAkgCUGHEWo2AvQRIAkgCUG4D2o2AvARIAMgByAJQfARakHsgsMAICARAgAgCUEIaiAJQfAPahDZAyAJKAIMIQcgCSgCCEEBcQ0ACwsgCSgC9BAiBEEhSQ0AIAkoAvgPIARBAnRBBBDoDgsgCUHQDmogCUHQB2oQgAEgCSgC0A4NAQwFCwsgBEHBAEHQ4sMAEIULAAtBjILDABDyDgALQfyBwwAQ8g4AC0EIQSBB+MrEACgCACIAQcwIIAAbEQAAAAsCQCAJKALQB0ECRg0AIAkoAtQIIgBBIUkNACAJKALYByAAQQJ0QQQQ6A4LIAYoAgQhCyAGKAIIIQ8LAkAgDCgCDCIARQ0AIAwoAgAiB0EIaiEGIAcpAwBCf4VCgIGChIiQoMCAf4MhJQNAAkAgJVAEQANAIAdBwAFrIQcgBikDACElIAZBCGohBiAlQoCBgoSIkKDAgH+DIiVCgIGChIiQoMCAf1ENAAsgJUKAgYKEiJCgwIB/hSElCwJAIAcgJXqnQQN2QWhsaiICQQRrLQAAIBBHDQAgAkEMaygCACIBIA9PDQEgCyABQewAbGoiAygCSCIBRQ0AIANBQGshAyABQQFrIQogAkEIayISKAIAIQJBACEIQSQhBAJAAkADQCACIAh2QQFxRQ0BIARBJGohBCABIAhBAWoiCEcNAAtBACECDAELQQEhAiAIIApGDQAgCEEBaiEKIAMoAgQgBGohCANAAkAgEigCACAKdkEBcUUEQCACQQFqIQIMAQsgCCACQVxsaiIEIAj9AAIA/QsCACAEQSBqIAhBIGooAgA2AgAgBEEQaiAIQRBq/QACAP0LAgALIAhBJGohCCABIApBAWoiCkcNAAsLIAMgASACazYCCAsgJUIBfSAlgyElIABBAWsiAA0BDAILCyABIA9BnILDABCFCwALIAwoAgwiBARAIAwoAgQhAyAMKAIAIgBBCGohBiAAKQMAQn+FQoCBgoSIkKDAgH+DISUgDCgCCCEBIAAhByAEIQIDQCAlUARAA0AgB0HAAWshByAGKQMAISUgBkEIaiEGICVCgIGChIiQoMCAf4MiJUKAgYKEiJCgwIB/UQ0ACyAlQoCBgoSIkKDAgH+FISULICVCAX0hJiAQIAcgJXqnQQN2QWhsaiIKQQRrLQAARwRAQYABIQggACAKa0EYbSIKIABqIgspAAAiJ0IBhiAng0KAgYKEiJCgwIB/g3qnQQN2IAAgCkEIayADcWoiCikAACInQgGGICeDQoCBgoSIkKDAgH+DeadBA3ZqQQdNBEAgDCABQQFqIgE2AghB/wEhCAsgCyAIOgAAIAwgAkEBayICNgIMIApBCGogCDoAAAsgJSAmgyElIARBAWsiBA0ACwsgEQRAIBdBxABqIQYDQCAGQQRrKAIAIgAEQCAGKAIAIABBJGxBBBDoDgsgBkHsAGohBiARQQFrIhENAAsLIBgEQCAXIBhB7ABsQQQQ6A4LIAlBoBJqJAALvSUCGn8DfiMAQcAGayIIJAACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgASkDACIfQgBSBEAgASkDCCIgUA0BIAEpAxAiIVANAiAfICF8IB9UDQMgHyAgVA0EIAEuARghASAIIB8+AgwgCEEBQQIgH0KAgICAEFQiBhs2AqwBIAhBACAfQiCIpyAGGzYCECAIQRRqQQBBmAH8CwAgCEG0AWpBAEGcAfwLACAIQQE2ArABIAhBATYC0AIgAawgH0IBfXl9QsKawegEfkKAoc2gtAJ8QiCIpyIGwSEOAkAgAUEATgRAIAhBDGogARDaARoMAQsgCEGwAWpBACABa8EQ2gEaCwJAIA5BAEgEQCAIQQxqQQAgDmtB//8DcRDHAQwBCyAIQbABaiAGQf//AXEQxwELIAhBnAVqIAhBsAFqQaQB/AoAACADIgdBCk8EQCAIQZQFaiELA0AgCCgCvAYiAUEpTw0UAkAgAUUNACABQf////8DaiEGIAFBAnQhBQJ/IAFBAUYEQEIAIR8gCEGcBWogBWoMAQsgBSALaiEBIAZB/////wNxQQFqQf7///8HcSEJQgAhHwNAIAFBBGoiBTUCACAfQiCGhCIgQoCU69wDgCEfIAUgHz4CACABIAE1AgAgICAfQoCU69wDfn1CIIaEIh9CgJTr3AOAIiA+AgAgHyAgQoCU69wDfn0hHyABQQhrIQEgCUECayIJDQALIB9CIIYhHyABQQhqCyEBIAZBAXENACABQQRrIgEgHyABNQIAhEKAlOvcA4A+AgALIAdBCWsiB0EJSw0ACwsgB0ECdEGgq8QAaigCAEEBdCIHRQ0FIAgoArwGIgFBKU8NEiABBH8gAUH/////A2ohBiABQQJ0IQUgB60hHwJ/IAFBAUYEQEIAISAgCEGcBWogBWoMAQsgBSAIakGUBWohASAGQf////8DcUEBakH+////B3EhCUIAISADQCABQQRqIgU1AgAgIEIghoQiISAfgCEgIAUgID4CACABIAE1AgAgISAfICB+fUIghoQiICAfgCIhPgIAICAgHyAhfn0hICABQQhrIQEgCUECayIJDQALICBCIIYhICABQQhqCyEBIAZBAXFFBEAgAUEEayIBICAgATUCAIQgH4A+AgALIAgoArwGBUEACyEBAkACQAJAIAgoAqwBIgYgASABIAZJGyIFQShNBEAgBUUEQEEAIQUMBAsgBUEBcSEMIAVBAUcNAUEAIQcMAgsgBUEoQejCxAAQ8A4ACyAFQT5xIQ9BACEHIAhBnAVqIQEgCEEMaiEJA0AgASAHQQFxIAEoAgAiCyAJKAIAaiIHaiIRNgIAIAcgC0kgByARS3IgAUEEaiIRKAIAIhQgCUEEaigCAGoiB2ohCyARIAs2AgAgByAUSSAHIAtLciEHIAlBCGohCSABQQhqIQEgDyAKQQJqIgpHDQALCyAMBH8gCkECdCILIAhBnAVqaiIJKAIAIQEgCSAHIAEgCEEMaiALaigCAGoiB2oiCzYCACABIAdLIAcgC0tyBSAHC0EBcUUNACAFQShGDRQgCEGcBWogBUECdGpBATYCACAFQQFqIQULIAggBTYCvAYgCCgC0AIiCiAFIAUgCkkbIgFBKU8NEiABQQJ0IQECQAJAA0AgAUUNASABQQRrIgEgCEGcBWpqKAIAIgUgASAIQbABamooAgAiB0YNAAsgBSAHTw0BDAkLIAENCAsgDkEBaiEODAgLQZCaxABBHEGYncQAENYMAAtBvJrEAEEdQaidxAAQ1gwAC0HsmsQAQRxBuJ3EABDWDAALQdCcxABBNkGonsQAENYMAAtBiJzEAEE3QZiexAAQ1gwAC0Gvw8QAQRtB6MLEABDWDAALAAsgBkUEQEEAIQYgCEEANgKsAQwBCyAGQQFrQf////8DcSIBQQFqIgVBA3EhCQJAIAFBA0kEQCAIQQxqIQFCACEfDAELIAVB/P///wdxIQcgCEEMaiEBQgAhHwNAIAEgATUCAEIKfiAffCIfPgIAIAFBBGoiBTUCAEIKfiAfQiCIfCEfIAUgHz4CACABQQhqIgU1AgBCCn4gH0IgiHwhHyAFIB8+AgAgAUEMaiIFNQIAQgp+IB9CIIh8ISAgBSAgPgIAICBCIIghHyABQRBqIQEgB0EEayIHDQALCyAJBEADQCABIAE1AgBCCn4gH3wiID4CACABQQRqIQEgIEIgiCEfIAlBAWsiCQ0ACwsgIEKAgICAEFoEQCAGQShGDQwgCEEMaiAGQQJ0aiAfPgIAIAZBAWohBgsgCCAGNgKsAQtBACEFQQEhDCAOwSIBIATBIgdIIhoNBiAOIARrwSADIAEgB2sgA0kbIgtFDQYgCEHUAmoiASAIQbABaiIEQaQB/AoAAEEBIREgAUEBENoBIRQgCEH4A2oiASAEQaQB/AoAACABQQIQ2gEhFSAIQZwFaiIBIARBpAH8CgAAIAhBrAFqIRsgCEHQAmohHCAIQfQDaiEdIAFBBGshHiABQQMQ2gEhFiAUKAKgASEXIBUoAqABIRggFigCoAEhGUEAIQ8gCCgCrAEhBiAIKALQAiEKAkADQCAGQSlPDQ0gBkECdCEEQQAhAQJ/AkACQANAIAEgBEYNASAIQQxqIAFqIQUgAUEEaiEBIAUoAgBFDQALIBkgBiAGIBlJGyIEQSlPDQYgBEECdCEBAkADQCABRQ0BIAEgHmohBSABQQRrIgEgCEEMamooAgAiByAFKAIAIgVGDQALIAUgB00NAkEADAMLIAFFDQFBAAwCCyADIAtJDQYCQCALIA9GDQAgCyAPayIBRQ0AIAIgD2pBMCAB/AsACyAAIA47AQggACALNgIEDAsLQQEhByAEQQFxIQxBACEGIARBAUcEQCAEQT5xIRIgCEEMaiEBIAhBnAVqIQkDQCABIAdBAXEgASgCACIHIAkoAgBBf3NqIgVqIhA2AgAgBSAHSSAFIBBLciABQQRqIhAoAgAiDSAJQQRqKAIAQX9zaiIFaiEHIBAgBzYCACAFIA1JIAUgB0tyIQcgCUEIaiEJIAFBCGohASASIAZBAmoiBkcNAAsLIAwEfyAGQQJ0IgYgCEEMamoiBSgCACEBIAUgASAGIBZqKAIAQX9zaiIGIAdqIgU2AgAgBSAGSSABIAZLcgUgBwtBAXFFDQ8gCCAENgKsASAEIQZBCAshDCAYIAYgBiAYSRsiBEEpTw0FIARBAnQhAQJAAkACQANAIAFFDQEgASAdaiEFIAFBBGsiASAIQQxqaigCACIHIAUoAgAiBUYNAAsgBSAHTQ0BIAYhBAwCCyABRQ0AIAYhBAwBCyAEBEBBASEHIARBAXEhEkEAIQYgBEEBRwRAIARBPnEhECAIQQxqIQEgCEH4A2ohCQNAIAEgB0EBcSABKAIAIgcgCSgCAEF/c2oiBWoiDTYCACAFIAdJIAUgDUtyIAFBBGoiDSgCACITIAlBBGooAgBBf3NqIgVqIQcgDSAHNgIAIAUgE0kgBSAHS3IhByAJQQhqIQkgAUEIaiEBIBAgBkECaiIGRw0ACwsgEgR/IAZBAnQiBiAIQQxqaiIFKAIAIQEgBSABIAYgFWooAgBBf3NqIgYgB2oiBTYCACAFIAZJIAEgBktyBSAHC0EBcUUNEAsgCCAENgKsASAMQQRyIQwLIBcgBCAEIBdJGyIFQSlPDQYgBUECdCEBAkACQAJAA0AgAUUNASABIBxqIQYgAUEEayIBIAhBDGpqKAIAIgcgBigCACIGRg0ACyAGIAdNDQEgBCEFDAILIAFFDQAgBCEFDAELIAUEQEEBIQcgBUEBcSESQQAhBiAFQQFHBEAgBUE+cSEQIAhBDGohASAIQdQCaiEJA0AgASAHQQFxIAEoAgAiByAJKAIAQX9zaiIEaiINNgIAIAQgB0kgBCANS3IgAUEEaiINKAIAIhMgCUEEaigCAEF/c2oiBGohByANIAc2AgAgBCATSSAEIAdLciEHIAlBCGohCSABQQhqIQEgECAGQQJqIgZHDQALCyASBH8gBkECdCIEIAhBDGpqIgYoAgAhASAGIAEgBCAUaigCAEF/c2oiBCAHaiIGNgIAIAEgBEsgBCAGS3IFIAcLQQFxRQ0QCyAIIAU2AqwBIAxBAmohDAsgCiAFIAUgCkkbIgZBKU8NDSAGQQJ0IQECQAJAAkADQCABRQ0BIAEgG2ohBCABQQRrIgEgCEEMamooAgAiByAEKAIAIgRGDQALIAQgB00NASAFIQYMAgsgAUUNACAFIQYMAQsgBgRAQQEhByAGQQFxIRJBACEFIAZBAUcEQCAGQT5xIRAgCEEMaiEBIAhBsAFqIQkDQCABIAdBAXEgASgCACIHIAkoAgBBf3NqIgRqIg02AgAgBCAHSSAEIA1LciABQQRqIg0oAgAiEyAJQQRqKAIAQX9zaiIEaiEHIA0gBzYCACAEIBNJIAQgB0tyIQcgCUEIaiEJIAFBCGohASAQIAVBAmoiBUcNAAsLIBIEfyAFQQJ0IgQgCEEMamoiBSgCACEBIAUgASAIQbABaiAEaigCAEF/c2oiBCAHaiIFNgIAIAEgBEsgBCAFS3IFIAcLQQFxRQ0QCyAIIAY2AqwBIAxBAWohDAsgAyAPTQ0BIAIgD2ogDEEwajoAACAGQSlPDQ0CQCAGRQRAQQAhBgwBCyAGQQFrQf////8DcSIBQQFqIgRBA3EhCQJAIAFBA0kEQCAIQQxqIQFCACEgDAELIARB/P///wdxIQcgCEEMaiEBQgAhIANAIAEgATUCAEIKfiAgfCIfPgIAIAFBBGoiBDUCAEIKfiAfQiCIfCEfIAQgHz4CACABQQhqIgQ1AgBCCn4gH0IgiHwhHyAEIB8+AgAgAUEMaiIENQIAQgp+IB9CIIh8IR8gBCAfPgIAIB9CIIghICABQRBqIQEgB0EEayIHDQALCyAJBEADQCABIAE1AgBCCn4gIHwiHz4CACABQQRqIQEgH0IgiCEgIAlBAWsiCQ0ACwsgH0KAgICAEFQNACAGQShGDQ0gCEEMaiAGQQJ0aiAgPgIAIAZBAWohBgsgCCAGNgKsASAPQQFqIQ8gCyARSyIBIBFqIREgAQ0AC0EAIQwgCyEFDAcLIA8gA0H4ncQAEIULAAsACyAEQShB6MLEABDwDgALIAsgA0GInsQAEPAOAAsgBEEoQejCxAAQ8A4ACyAFQShB6MLEABDwDgALAAsCQAJ/AkACQAJAIApBKUkEQAJAIApFBEBBACEKDAELIApBAWtB/////wNxIgFBAWoiBEEDcSEJAkAgAUEDSQRAIAhBsAFqIQFCACEfDAELIARB/P///wdxIQcgCEGwAWohAUIAIR8DQCABIAE1AgBCBX4gH3wiHz4CACABQQRqIgQ1AgBCBX4gH0IgiHwhHyAEIB8+AgAgAUEIaiIENQIAQgV+IB9CIIh8IR8gBCAfPgIAIAFBDGoiBDUCAEIFfiAfQiCIfCEgIAQgID4CACAgQiCIIR8gAUEQaiEBIAdBBGsiBw0ACwsgCQRAA0AgASABNQIAQgV+IB98IiA+AgAgAUEEaiEBICBCIIghHyAJQQFrIgkNAAsLICBCgICAgBBUDQAgCkEoRg0KIAhBsAFqIApBAnRqIB8+AgAgCkEBaiEKCyAIIAo2AtACIAogBiAGIApJGyIBQSlPDQggAUECdCEBIAhBCGohByAIQawBaiELAkACfwJAA0AgAUUNASABIAtqIQYgASAHaiEEIAFBBGshASAEKAIAIgQgBigCACIGRg0ACyAEIAZLIAQgBklrDAELQX9BACABGwtB/wFxDgIAAwQLQQAgDA0EGiADIAVBAWsiAUsEQCABIAJqLQAAQQFxDQMMBAsgASADQcidxAAQhQsACyAKQShB6MLEABDwDgALAAsgAyAFSQ0EIAIgBWohBEEAIQECQAJAA0AgASAFakUNASAEIAFBAWsiAWoiBi0AACIHQTlGDQALIAYgB0EBajoAACABIAVqQQFqIgQgBU0NASAEIAVBqKzEABDvDgALAkAgDARAQTEhAQwBCyACQTE6AABBMCEBIAVBAWsiBkUiBw0AIAcNACACQQFqQTAgBvwLAAsgDkEBaiEOIBoNASADIAVNDQEgBCABOgAAIAVBAWohBQwBCyABQX9GDQAgAUF/cyIBRQ0AIAZBAWpBMCAB/AsACyADIAVJDQEgBQshASAAIA47AQggACABNgIEDAELIAUgA0HoncQAEPAOAAsgACACNgIAIAhBwAZqJAAPCyAFIANB2J3EABDwDgALIAFBKEHowsQAEPAOAAtBKEEoQejCxAAQhQsACyAGQShB6MLEABDwDgALQfjCxABBGkHowsQAENYMAAuYKAQffxZ9A3sBfiMAQfABayICJAAgACgCACgCACEDIAAoAgwoAgAhBiAAKAIEKAIAIRIgAiAAKAIIKAIAIg42AjggAiASNgI0IAJB6NLBADYCMCACIAE2AiwgAkEANgIcIAJBADYCECACQQA2AgQgAiAGQZQCajYCQCACIAZBiAJqNgI8IAIgA0EAIANBIEkbNgIoIAZBoAFqIRggBkGwAWohGSAAKAIYKAIAIgFBFGooAgAhFiABQRBqKAIAIQkgACgCECgCACIBQSxqKAIAIR0gAUEoaigCACEDIBIoAowDIQEgACgCFCgCACEXAkAgBioC+AEiJ0MAAAAAWwRAIAFBgANsIQADQCAARQ0CIABBgANrIQAMAAsACyAGKAKAAkECcUUEQCABQYADbCEAA0AgAEUNAiAAQYADayEADAALAAsgEigCiAMhCCABQYADbCEKIBj9AAMAITggGf0AAwAhOUEAIQEDQCABIApGDQECQCABIAhqIgAoAgBFDQAgAEEEaigCACEFIAIgAEEQajYCrAEgAiAFNgKoASACIAw2AqQBIAJBADYCoAEgAkEEaiACQaABahCLA0UNACAAQcQAaioCACIkIABByABqKgIAIiiUIiYgJpIiISAAQUBrKgIAIiYgAEHMAGoqAgAiKZQiIyAjkiIjkiEuICYgKJQiJSAlkiIlICQgKZQiIiAikiIikyEsICEgI5MhLyAmICSUIiEgIZIiISAoICmUIiMgI5IiI5IhMCAlICKSITEgISAjkyEtICggKJQiISApICmUIiUgJiAmlCIikyIrICQgJJQiI5OSISogIyArkiAhkyEyICIgJZIgI5MgIZMhMyA5ITcgAEH2AmotAABBAUYEQCA4/QwAAIA/AACAPwAAgD8AAIA/IABB5AJqLQAAGyE3CyAAQdAAaioCACE0IABB1ABqKgIAITUgJiAAQawCaioCACIilCAkIABBqAJqKgIAIiuUkyIhICGSISMgKCArlCAmIABBsAJqKgIAIiGUkyIlICWSISUgAiAnICyUIABB2ABqKgIAICEgKSAjlCAmICWUICQgJCAhlCAoICKUkyIhICGSIiyUk5KSkiIhkjgChAEgAiAnIDCUIDUgIiApICWUICggLJQgJiAjlJOSkpIiJpI4AoABIAIgJyAzlCA0ICsgKSAslCAkICOUICggJZSTkpKSIiSSOAJ8IAIgN/0fAyIoOAKsASACIDf9HwIiKUMAAIA+lDgCqAEgAiA3/R8BIiM4AqQBIAIgN/0fACIlQwAAAACUOAKgASACICE4AmAgAiAmOAJcIAIgJDgCWCACQQRqIgAgAkHYAGoiBSACQfwAaiIEIAJBoAFqIgcQxAMgAiAnIC6UICGSOAKEASACICcgMpQgJpI4AoABIAIgJyAtlCAkkjgCfCAC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IBuUk5IgF5MiBjgCgAFB////+wchA0P//39/IQlD//9//yELQ///f/8hD0P//3//IRBD//9//yEVQ///f38hE0P//39/IRRB////+wchBQJAIAIoAghFDQACQAJAIAIoAgQiASgCPEH/////A3EgASgCHEH/////A3FqDgICAAELIAEqAhghDyABKgIUIRAgASoCECEVIAEqAgghEyABKgIEIRQgASgCACEFDAELIAEqAhgiCiABKgI4Ig8gCiAPYBshDyABKgIUIgogASoCNCIQIAogEGAbIRAgASoCECIKIAEqAjAiFSAKIBVgGyEVIAEqAggiCiABKgIoIhMgCiATXxshEyABKgIEIgogASoCJCIUIAogFF8bIRQgASoCACIKIAEqAiAiHCAKIBxfG7whBQsCQCAEKAIIRQRAQ///f/8hCkP//3//IRxD//9/fyEgDAELQ///f/8hCkP//3//IRxD//9/fyEgAkACQCAEKAIEIgEoAjxB/////wNxIAEoAhxB/////wNxag4CAgABCyABKgIYIQsgASoCFCEKIAEqAhAhHCABKgIIIQkgASoCBCEgIAEoAgAhAwwBCyABKgIYIgogASoCOCIJIAkgCl8bIQsgASoCFCIKIAEqAjQiCSAJIApfGyEKIAEqAhAiCSABKgIwIhwgCSAcYBshHCABKgIIIgkgASoCKCIgIAkgIF8bIQkgASoCBCIgIAEqAiQiHiAeICBgGyEgIAEqAgAiHiABKgIgIiIgHiAiXxu8IQMLIEIgD/0TIAv9IAEgE/0TIAn9IAH95QH9DAAAAD8AAAA/AAAAPwAAAD/95gEiXyBf/eYBIBD9EyAK/SABIBT9EyAg/SAB/eUB/QwAAAA/AAAAPwAAAD8AAAA//eYBIl8gX/3mASAV/RMgHP0gASAF/REgA/0cAf3lAf0MAAAAPwAAAD8AAAA/AAAAP/3mASJfIF/95gH95AH95AEiX/0fACBf/R8BXSIBOgCXASABDQQgCyEPIAohECAcIRUgCSETICAhFCADIQUgGCENIBYhESAXIQYgGSEMIBshDiAaIRIgRSEDIEMhBCBGIUUgRyFDDA8LIEIgBCAFKAJgEQAAIEJBwAFqIgQgQigCACIAIEIoAgQoAgwRAABBACFEIABFDRAgQikDwAFC3oWKxraak/zQAIUgQikDyAFChcGX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BEL////7////v383ApwBIAT9DP//f3///39///9/f///f//9CwKMASAEQQA2AogBIARC////+////79/NwOAASAE/Qz//39///9/f///f3///3///QsEcCAEQQA2AmwgBEL////7////v383AmQgBP0M//9/f///f3///39///9///0LAlQgBEEANgJQIARC////+////79/NwNIIAT9DP//f3///39///9/f///f//9CwM4IARBADYCNCAEQv////v///+/fzcCLCAE/Qz//39///9/f///f3///3///QsCHCAEQQA2AhggBEL////7////v383AxAgBP0M//9/f///f3///39///9///0LBAACQAJAAkACQCADQQFLBEAgA0EFdCIHQSBrIQggAioCCCACKgIYkkMAAAA/lCIXIRggAv0ABAAgAv0ABBD95AH9DAAAAD8AAAA/AAAAPwAAAD/95gEiciFzA0AgFyACIAVqIgZBKGoqAgAgBkE4aioCAJJDAAAAP5QiFiAWIBdfGyEXIBggFiAWIBhgGyEYIAZBIGr9XQIAIAZBMGr9XQIA/eQB/QwAAAA/AAAAPwAAAD8AAAA//eYBInQgcv3rASFyIHQgc/3qASFzIAggBUEgaiIFRw0ACyAEIHL9HwA4AuwBIAQgc/0fATgC5AEgBCBz/R8AOALgASAEIHL9HwE4AvABIAQgGDgC6AEgBCAXOAL0AUECIHIgc/3lASJy/R8BIhYgcv0fACIZXiIFIBcgGJMgFiAZIAUbXhsiEEECdCIFIARB4AFqaioCACEXQ1j//0AgBEHsAWogBWoqAgAgF5OVIRggBEH4AWogBWohCEEAIQUDQCACIAVqIgZBGGoqAgAhFiAEIAZBCGoqAgAgFpJDAAAAP5Q4AoACIAQgBkEEaiIJKgIAIAZBFGoqAgAiGZJDAAAAP5Q4AvwBIAQgBioCACIbIAZBEGoqAgAiGpJDAAAAP5Q4AvgBIBggCCoCACAXk5T8ASIGQQhPDQIgBCAGQRxsaiIGIAYoAhhBAWo2AhggBiAGKgIUIhwgFiAWIBxfGzgCFCAGIAYqAhAiFiAZIBYgGWAbOAIQIBv9EyAJ/V0CAP0NAAECAxAREhMUFRYXAAECAyAG/QACACJy/Q0AAQIDBAUGBwgJCgscHR4fIXMgBiByIHMgGv0gAyByIBr9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ACADQQRqKAIAIAVqIQUgA0EIaiEDIAZBAWsiBg0ACwsgBEHIAGogBRDRBiAEQdQAaiAFENEGIAghAyAKQQdxIgUEQANAIANBBGpBADYCACADQQhqIQMgBUEBayIFDQALCyACQQdJDQEgCCALQQN0aiECA0AgA0E8akEANgIAIANBNGpBADYCACADQSxqQQA2AgAgA0EkakEANgIAIANBHGpBADYCACADQRRqQQA2AgAgA0EMakEANgIAIANBBGpBADYCACACIANBQGsiA0cNAAsMAQsgBEHIAGpBABDRBiAEQdQAakEAENEGCyAMBEAgDkEUaiEDIAQoAmQhFCAEKAJYIRUgBCgCXCESIAQoAmghDyAEKAJMIRcgBCgCUCETIAQoAnAhGCAEKAJ0IQlBASEGQQAhDANAIA4hAiADIQ4gDCEDIAYhDAJAIAIoAgAiByAHIAIoAgQiDWpPDQAgB0ECdCICIBhqIQYgAiAUaiECIAcgCSAHIAlLGyIWIAdrIQUgByAPIAcgD0sbIhkgB2shBwJAAkACQAJAA0AgBUUNASAGKAIAIgogC08NAiAIIApBA3RqIgooAgQgCigCAGoiECATTw0DIBcgEEECdGogAzYCACAHRQ0EIAooAgQgCigCAGoiECASSQRAIBUgEEECdGogAigCADYCACAKIAooAgRBAWo2AgQgBkEEaiEGIAJBBGohAiAFQQFrIQUgB0EBayEHIA1BAWsiDUUNBgwBCwsgECASQcjCwwAQhQsACyAWIAlBiMLDABCFCwALIAogC0GYwsMAEIULAAsgECATQajCwwAQhQsACyAZIA9BuMLDABCFCwALIA4gEUciAiAMaiEGIA5BFEEAIAIbaiEDIAINAAsLIARBhAJqIARBCGooAgA2AgAgBEGQAmogBEEgaigCADYCACAEQZwCaiAEQRRqKAIANgIAIARBqAJqIARB0ABqKAIANgIAIARBtAJqIARB3ABqKAIANgIAIAQgBCkCADcC/AEgBCAEKQIYNwOIAiAEIAQpAgw3ApQCIAQgBCkCSDcDoAIgBCAEKQJUNwKsAiAEQcACaiAEQegAaigCADYCACAEQcwCaiAEQfQAaigCADYCACAEQfABaiICQQhqIAFBCGooAgA2AgAgBCAEKQJgNwO4AiAEIAQpAmw3AsQCIAQgASkCADcD8AEgACAC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QQxqIgAQjgEgA0EIaiAJKAIANgIAIAMgASkCADcCACADIAEpAgw3AgwgA0EUaiAAQQhqKAIANgIAIAFB4ABqJAAgBygCJCEAIAcoAhghASAHKAIsIQogBygCKCEEIAcoAiAhCyAHKAIcIQkgB0GAgID8AzYCICAHQoCAgPyDgIDAPzcCGCACIAkgCyAEIAogBSADIAYQqQMgAARAIAQgAEEDdEEEEOgOCyABRQ0KIAkgAUEMbEEEEOgODAoLIAdBGGohAyAHKAIQIQkgACgC8AEhDCAAKAL0ASEEIwBB4ABrIgEkACABQTBqIgBBCGoiCkEANgIAIAFBADYCCCABQoCAgIDAADcCACABQQA2AhQgAUKAgICAwAA3AgwgAUEANgIgIAFBADYCLCABQQA2AiQgASAJKgIAIh04AiggASAJKgIEIh+MIh44AhggASAeOAIwIAkqAgghHiABIB2MIiA4AhwgASAgIB6TOAI0IB8gH5QgHUMAAADAlCIjICOUkpEhICABIB4gIyAglZQiI0MAAAAAkjgCPCABIB0gHiAfICCVlCIhkjgCQCABIB5DAAAAACAglZRDAAAAAJIiIDgCRCABQdj5wwAQkQggASgCBCIJIAEpAjA3AgAgCUEIaiAKKAIANgIAIAFBATYCCCABICA4AlAgASAhIB2TIiE4AkwgASAjIB+TIh84AkggAUEYaiAAIAFByABqIAQgARDDAiABKAIAIgsgASgCCCIJRgRAIAFB6PnDABCRCCABKAIAIQsLIB4gHZIhHSABKAIEIgAgCUEMbGoiCiAgOAIIIAogITgCBCAKIB84AgAgASAJQQFqIgo2AgggCiALRgRAIAFB+PnDABCRCCABKAIEIQALIAAgCkEMbGoiACABKQI8NwIAIABBCGogAUE8aiIAQQhqKAIANgIAIAEgCUECajYCCCABQQA2AlAgASAdOAJMIAFBADYCSCABQSRqIAAgAUHIAGogBCABEMMCIAEoAggiACABKAIARgRAIAFBiPrDABCRCAsgAUEIaiIJIABBAWo2AgAgASgCBCAAQQxsaiIAQQA2AgggACAdOAIEIABBADYCACABQoCAgIAQNwJIIAEgBDYCUCABIARBAmo2AlQgASAEQQF0IgBBAmo2AlwgASAAQQFyNgJYQQEgAUHIAGpBAyAMIAEgAUEMaiIAEI4B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KAIEIAVqNgIEIAMgASABQQhqIgBBB2pBeHEgAGtqIgBqIgEhAiAAIANBA3I2AgQgBiAGQQhqIgVBB2pBeHEgBWtqIgQgAWshAwJAQczOxAAoAgAgBEcEQCAEQcjOxAAoAgBGDQEgBCgCBCIBQQNxQQFGBEAgBCABQXhxIgEQpwUgASADaiEDIAEgBGohBAsgBCAEKAIEQX5xNgIEIAIgA0EBcjYCBCACIANqIAM2AgAgA0GAAk8EQCACIAMQ8AUMBAsCf0G4zsQAKAIAIgFBASADQQN2dCIFcUUEQEG4zsQAIAEgBXI2AgAgA0H4AXFBsMzEAGoiAwwBCyADQfgBcSIBQbDMxABqIQMgAUG4zMQAaigCAAshASADIAI2AgggASACNgIMIAIgAzYCDCACIAE2AggMAwtBzM7EACACNgIAQcTOxABBxM7EACgCACADaiIBNgIAIAIgAUEBcjYCBAwCC0HIzsQAIAI2AgBBwM7EAEHAzsQAKAIAIANqIgE2AgAgAiABQQFyNgIEIAEgAmogATYCAAwBC0EAIQBBxM7EACgCACIBIANNDQFBxM7EACABIANrIgE2AgBBzM7EACADQczOxAAoAgAiAGoiAjYCACACIAFBAXI2AgQgACADQQNyNgIECyAAQQhqIQALIAlBEGokACAAC/kXAhx/AnwjAEGwBGsiAyQAIANCADcDmAEgA0IANwOQASADQgA3A4gBIANCADcDgAEgA0IANwN4IANCADcDcCADQgA3A2ggA0IANwNgIANCADcDWCADQgA3A1AgA0IANwNIIANCADcDQCADQgA3AzggA0IANwMwIANCADcDKCADQgA3AyAgA0IANwMYIANCADcDECADQgA3AwggA0IANwMAIANCADcDuAIgA0IANwOwAiADQgA3A6gCIANCADcDoAIgA0IANwOYAiADQgA3A5ACIANCADcDiAIgA0IANwOAAiADQgA3A/gBIANCADcD8AEgA0IANwPoASADQgA3A+ABIANCADcD2AEgA0IANwPQASADQgA3A8gBIANCADcDwAEgA0IANwO4ASADQgA3A7ABIANCADcDqAEgA0IANwOgASADQgA3A9gDIANCADcD0AMgA0IANwPIAyADQgA3A8ADIANCADcDuAMgA0IANwOwAyADQgA3A6gDIANCADcDoAMgA0IANwOYAyAD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AAsgA0GQAWokAAu2OgMefwZ+DH0jACIFISEgBUHAAmtBQHEiBCQAIARBQGtBqNzCACkDADcDACAEQfwAaiABQQhqKAIANgIAIARCADcDMCAEQoCAgIDAADcDKCAEQgQ3AyAgBEIANwMYIARCgICAgIAINwMQIARBADYCcCAEQoCAgIDAADcDaCAEQsAANwNgIARCADcDWCAEQoCAgIDAADcDUCAEQonZueKO076XCDcDSCAEQaDcwgApAwA3AzggBCABKQIANwJ0AkACQAJAAkACQAJAAkACfyADRQRAQZjcwgAhAkEADAELIAIgA0EMbGohDCAEQdwAaiEIIARB0ABqIQUgBEE4aiEDIARBsAFqIQoDQCACQQRqKAIAIRIgAkEIaigCACEWIAIoAgAiC0EfdiEBIAQgASALakEIbSABayIGNgKAAiAEIBZBH3YiASAWakEIbSABayIHNgKIAiAEIBJBH3YiASASakEIbSABayINNgKEAiAEQagBaiADIARBgAJqEOwEAn8gBCgCvAEiDgRAIAQpA6gBISIgBCgCZCIXIAQoAlxGBEAgCEGY5sMAEMQICyAEKAJgIBdBCXRqQcAAQYAE/AsAIAQgF0EBajYCZCAEKAJYIgkgBCgCUEYEQCAFQajmwwAQkQgLIAQoAlQgCUEMbGoiASAHNgIIIAEgDTYCBCABIAY2AgAgBCAJQQFqNgJYIARBgAJqIgFBCGogCkEIaigCADYCACAEQQA2ApACIAQgFzYCjAIgBCAKKQIANwOAAiAOICIgASAOQRBqEMcFDAELIAQoArABCyIJQQRrIgEgASgCAEEBajYCACAJQQhrKAIAIgkgBCgCZCIBTw0CIBIgBmtBA3QgC2ogB0EJdGsgFiANa0EGdGoiAUGABE8NAyAEKAJgIAlBCXRqIAFqQT86AAAgDCACQQxqIgJHDQALIAQoAjghAiAEKAJECyEBIAIpAwAhIiAEQgA3AqABIARCgICAgMAANwKYASAEQgQ3ApABIARCADcCiAEgBEKAgICAgAg3AoABIARBADYC+AEgBEIQNwK4ASAEQgA3ArABIARCgICAgIAINwKoASAEQgA3AvABIARCgICAgMAANwLoASAEQgA3AuABIARCgICAgMAANwLYASAEQgQ3AtABIARCADcCyAEgBEKAgICAwAA3AsABIAFFDQYg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NwIAIBBBCGogE0EIaigCADYCACADQfgCaiAMEIgCIAMoAvgCDQQgDiAEIgJHDQALCyABQQA2AvQBAkAgASgChANBAUcNACADQfgCaiAfEIgCIAMoAvgCQQFHDQAgA0HwAmogCEEIaigCADYCACADIAgpAgA3A+gCDAoLIAFBADYChAMgASgCMCECCyAYQQI2AgAgAkECRwRAIAFBMGohIwJAA0ACQCABKAK8ASICRQRAAkAgCygCACICQSFPBEAgASgCOCEFIAEoAjQiB0UNAyAGIQQgByECDAELIAshBCAGIQUgAkUNBAsgBCACQQFrIgQ2AgAgBSAEQQJ0aigCACECCyABQQA2ArwBIAIoAhxB/////wNxQQFHBEAgAigCDCIFIAEoArgBIgIoAggiBE8NCiABKgLUASEkIAEqAtABISVBASEEAkAgASoCzAEiJiACKAIEIAVBBnRqIgIqAgBgRQ0AIAIqAgQgJV9FDQAgAioCCCAkX0UNACACKgIQIAEqAsABYEUNACACKgIUIAEqAsQBYEUNACACKgIYIAEqAsgBYEUNACABIAI2ArwBQQAhBAsgAioCICAmX0UNAiACKgIkICVfRQ0CIAIqAiggJF9FDQIgAioCMCABKgLAAWBFDQIgAioCNCABKgLEAWBFDQIgAioCOCABKgLIAWBFDQIgAkEgaiEJIARFBEACfyALKAIAIgdBIUkEQCAHIQUgBiECQSAhByALDAELIAEoAjQhBSABKAI4IQIgBgshBCAFIAdGBEAgIxCgBCABKAI0IQUgASgCOCECIAYhBAsgAiAFQQJ0aiAJNgIAIAQgBCgCAEEBajYCAAwDCyABIAk2ArwBDAILIANB0AVqIgciBSABKALYASACKAIMEK0LIANB+AJqIgQgBSAiICEQsAcgGCAEQdgC/AoAAAJAIAEoAvQBQQFxRQ0AIAcgDBCIAiADKALQBUUNACADQfACaiAKQQhqKAIANgIAIAMgCikCADcD6AIMDQsCQCABKAKUBCINRQ0AIAEoAsQEIgIgASgCyAQiDk4NACABKAKYBCEPIAEoAsAEIQkgASgCrAQhByABKAKgBCEFA0AgASACQQFqIgQ2AsQEIAEgDzYCzAIgASANNgLIAiABQQA2AqACIAFCATcC9AEgASACNgLoAiABIAk2AvgCIAEgBTYC/AIgASAH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QdABayIDJABBGCEEAkAgAkEIaiIFKAIEIgdFBEBBAiEFDAELIAUgB0EBazYCBCAFKAIAIQUgA0EGNgIgIAMgBTYCHCADQSRqIANBHGoQggMgAQJ/IAMtADwiB0EDRgRAIAMoAiQMAQsCQAJAAkAgB0ECRwRAIANBQGsgA0EcahCCAyADLQBYIglBA0YEQCADKAJADAULIAlBAkYNASADQdwAaiADQRxqEIIDIAMtAHQiCkEDRgRAIAMoAlwMBQsgCkECRg0CIANB+ABqIANBHGoQggMgAy0AkAEiBkEDRgRAIAMoAngMBQsgBkECRg0DIANBlAFqIANBHGoQggMgAy0ArAEiDEEDRgRAIAMoApQBDAULAkACQAJAIAxBAkcEQCADQbABaiADQRxqEIIDIAMtAMgBIgVBAmsOAgIBAwtBBCADQc8BakHEzcEAEKgKDAcLIAMoArABDAYLQQUgA0HPAWpBxM3BABCoCgwFCyABIAP9AAKwAf0LAowBIAEgAy8AyQE7AKUBIAEgA/0AAij9CwIEIAFBnAFqIANBwAFqKQIANwIAIAFBpwFqIANBywFqLQAAOgAAIAFBFGogA0E4aigCADYCACADQQJqIANBPWoiBEECai0AADoAACADIAQvAAA7AQAgAygCJCEEIANBE2ogA0HQAGopAgA3AAAgASADQdkAaiIILwAAOwA1IAFBN2ogCEECai0AADoAACABIAP9AAJc/QsCOCABQcgAaiADQewAaikCADcCACABIANB9QBqIggvAAA7AFEgAUHTAGogCEECai0AADoAACABIAP9AAJ4/QsCVCABQeQAaiADQYgBaikCADcCACADIAP9AAJA/QsAAyABQe8AaiADQZEBaiIIQQJqLQAAOgAAIAEgCC8AADsAbSABQYABaiADQaQBaikCADcCACABIAP9AAKUAf0LAnAgAUGLAWogA0GtAWoiCEECai0AADoAACABIAgvAAA7AIkBIAEgBzoAGCABIAQ2AgAgASAMOgCIASABIAY6AGwgASAKOgBQIAEgCToANCABIAMpAQA3ABkgAUEhaiADQQhq/QABAP0LAAAgAUEwaiADQRdqKAAANgAAQaQBIQQMBQtBACADQc8BakHEzcEAEKgKDAMLQQEgA0HPAWpBxM3BABCoCgwCC0ECIANBzwFqQcTNwQAQqAoMAQtB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AAAAAAAAAAD95AEiGv0fAzgCACATIBr9HwI4AgAgFCAa/R8BOAIAIBUgGv0fADgCACALIBsgHCAe/QzzBDW/8wQ1v/MENb/zBDW//eYBIBn9DAAAAAAAAAAAAAAAAAAAAAD95gH95AH95AH95AH9DAAAAAAAAAAAAAAAAAAAAAD95AEiGf0fAzgCACAPIBn9HwI4AgAgECAZ/R8BOAIAIBEgGf0fADgCACABQTBqIQEgBEEEayIEDQALIAcgCkYNAQsgBSAOQQxsaiEBA0AgA0EEaiIEKgIAIiFD8wQ1v5QgAyoCACIiQwAAAACUkiIgICCSIiVD8wQ1P5QhJCAiQwAAAICUIANBCGoiBSoCACIjQ/MENT+UkiIgICCSISAgBSAjICQgIEPzBDW/lCAjQwAAAICUICFDAAAAAJSSIiMgI5IiI0MAAAAAlJKSkkMAAAAAkjgCACAEICEgIEPzBDU/lCAjQwAAAICUICSSkpJDAAAAAJI4AgAgAyAiICND8wQ1P5QgJUMAAACAlCAgQwAAAACUkpKSQwAAAACSOAIAIAEgA0EMaiIDRw0ACwsgCCAOQQF0aiILIAZJDQEgCyAMSw0CIAkgBkEMbGoiDCEDAkAgDUEkTwRAIAkgACAIakEMbGohASADIApB/P///wNxIgRBDGxqIQMgBCEFA0AgAUE4aiIJIAFBLGoiDSABQSBqIg8gAUEUaiIQ/VwCAP1WAgAB/VYCAAL9VgIAAyId/Qz///8+////Pv///z7///8+/eYBIhsgAUE0aiIRIAFBKGoiEiABQRxqIhMgAUEQaiIU/VwCAP1WAgAB/VYCAAL9VgIAAyIc/Qz///8+////Pv///z7///8+/eYB/eUBIhkgGf3kAf0M////Pv///z7///8+////Pv3mASEZIBz9DP///77///++////vv///7795gEgAUEwaiIHIAFBJGoiFSABQRhqIhYgAUEMaiIB/VwCAP1WAgAB/VYCAAL9VgIAAyIe/Qz///8+////Pv///z7///8+/eYBIh/95QEiGiAa/eQB/Qz///8+////Pv///z7///8+/eYBIRogByAeIBkgGiAfIBv95AEiGyAb/eQBIh79DP///z7///8+////Pv///z795gEiH/3lAf3kAf3kAf0MAAAAAAAAAAAAAAAAAAAAAP3kASIb/R8DOAIAIBUgG/0fAjgCACAWIBv9HwE4AgAgASAb/R8AOAIAIBEgHCAfIBkgGv3kAf3kAf3kAf0MAAAAAAAAAAAAAAAAAAAAAP3kASIb/R8DOAIAIBIgG/0fAjgCACATIBv9HwE4AgAgFCAb/R8AOAIAIAkgHSAaIB79DP///77///++////vv///7795gEgGf3lAf3kAf3kAf0MAAAAAAAAAAAAAAAAAAAAAP3kASIZ/R8DOAIAIA0gGf0fAjgCACAPIBn9HwE4AgAgECAZ/R8AOAIAIAchASAFQQRrIgUNAAsgBCAKRg0BCyAMIA5BDGxqIQEDQCADQQRqIgQqAgAiJEP///++lCIiIAMqAgAiI0P///8+lCIhkyIgICCSQ////z6UISAgISADQQhqIgUqAgAiJUP///8+lCImkiIhICGSISEgBSAlICAgIUP///++lCAmICKSIiIgIpJD////PpQiIpOSkkMAAAAAkjgCACAEICQgIUP///8+lCIhICIgIJKSkkMAAAAAkjgCACADICMgIiAgICGTkpJDAAAAAJI4AgAgASADQQxqIgNHDQALCyAAQQAgACAIaiIBIABPGyIEIAIoAgAgAigCCCIDa0sEQCACIAMgBEEEQQgQ2AYgAigCCCEDCyACKAIEIQQCQCAARQ0AIAGtIisgCK0iKX0iKkICWgRAIAQgA0EDdGohASAp/RL9DAAAAAAAAAAAAQAAAAAAAAD9zgEhGSAqQn6DIicgKXwhKSADICenaiEDICchKANAIAEgGUEg/csBIBn9zgH9DAAAAAABAAAAAAAAAAEAAAD9zgH9CwIAIAFBEGohASAZ/QwCAAAAAAAAAAIAAAAAAAAA/c4BIRkgKEICfSIoQgBSDQALICcgKlENAQsgKyApfSEnIAQgA0EDdGohASApQoGAgIAQfkKAgICAEHwhKCADIAhqIABqICmnayEDA0AgASAoNwIAIAFBCGohASAoQoGAgIAQfCEoICdCAX0iJ0IAUg0ACwsgAiADNgIIIAtBAWsiACAGayIBQQAgACABTxsiASACKAIAIANrSwRAIAIgAyABQQRBCBDYBiACKAIIIQMgAigCBCEECwJAIAAgBk0NACAArSIrIAatIil9IipCAloEQCAEIANBA3RqIQEgKf0S/QwAAAAAAAAAAAEAAAAAAAAA/c4BIRkgKkJ+gyIn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CSgCACEFIApBuANqIA5BA3RqLQAERQRAIAkgBUEBayIJNgIAIAQgBCgCAEEBayIENgIAIAkgCkGAA2ogAWooAgAiCUgEQCAEIAlKDQMMAgsgAiADQQhqKAIANgIAIAogAykCADcDgAQgCkGABGogAWogBTYCACAKQegDaiIBQQhqIApB8AJqKAIANgIAIAsgCikDgAQ3AgAgC0EIaiACKAIANgIAIAogCikC6AI3A+gDIApBvAJqIAEQkwMMAgsgCSAFQQFqIgU2AgAgBCAEKAIAIgRBAWoiCTYCACAJIApBkANqIAFqKAIAIglMBEAgAiAKQfACaigCADYCACAKIAopAugCNwOABCAKQYAEaiABaiAENgIAIAYgAykCADcCACAGQQhqIANBCGooAgA2AgAgCkHQA2oiAUEIaiACKAIANgIAIAogCikDgAQ3A9ADIApBvAJqIAEQkwMMAgsgBSAJSA0BCyAAIAr9AAKwAf0LAgAgAEEwaiAKQbABaiIBQTBqKQIANwIAIABBIGogAUEgav0AAgD9CwIAIABBEGogAUEQav0AAgD9CwIAIApBoARqJAAPCyAKKAL8AiEEIAr9AALsAiEdIAooAugCIQUMAAsAC9QRAwt/L30IeyMAQSBrIgQkACADBEAgACgCECINBEACQCADIAAoAgxGBEAgAioCACIPIAEqAhQiGpQgAkEEaioCACIQIAEqAiwiG5SSIAJBCGoqAgAiESABKgJEIhyUkiACQQxqKgIAIhIgASoCXCIdlJIgAkEQaioCACITIAEqAnQiHpSSIAJBFGoqAgAiFCABKgKMASIflJIhFSAPIAEqAhAiIJQgECABKgIoIiGUkiARIAEqAkAiIpSSIBIgASoCWCIjlJIgEyABKgJwIiSUkiAUIAEqAogBIiWUkiEWIA8gASoCDCImlCAQIAEqAiQiJ5SSIBEgASoCPCIolJIgEiABKgJUIimUkiATIAEqAmwiKpSSIBQgASoChAEiK5SSIRcgDyABKgIIIiyUIBAgASoCICItlJIgESABKgI4Ii6UkiASIAEqAlAiL5SSIBMgASoCaCIwlJIgFCABKgKAASIxlJIhGCAPIAEqAgQiMpQgECABKgIcIjOUkiARIAEqAjQiNJSSIBIgASoCTCI1lJIgEyABKgJkIjaUkiAUIAEqAnwiN5SSIRkgDyAB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BgcUFRYXAAECAwABAgMgIf3lAf3rAf3rASIeIB795gH95AH9DAAAAAAAAAAAAAAAAAAAAAAgICAFQRhqIAX9XAI4/VYCAAH95QEgBUEIaiAF/VwCKP1WAgABICD95QH96wH96wEiHiAe/eYB/eQB/eMBIh79HwEgHv0fAF4iARshCAJAAkACQAJAAkAgHiAeIB79DQQFBgcAAQIDAAECAwABAgMgARsiHv0fACITIBRdRQRAIB79HwEiEyAUXUUNBCATQ///f39bDQQgCCgCHEH/////A3FBAUcNAQwCCwJAIBND//9/f1sEQAwBCyAGIAUgARsiBigCDCEBIAYoAhxB/////wNxQQFHBEAgHv0fASITIBRdRQRAIAEhBAwHCyATQ///f39bBEAgASEEDAcLQQEhBiAIKAIcQf////8DcUEBRgRAIAEhBAwFCwJ/IAMoApQBIg5BIUkEQCAOIQQgByEFQSAhDiARDAELIAMoAhQhBCADKAIYIQUgBwshBiAIKAIMIQggBCAORgR/IANBEGoQowQgAygCGCEFIAchBiADKAIUBSAEC0ECdCAFaiAINgIAIAYgBigCAEEBajYCACABIQQMBgsCQCABIAxJBEAgEiABQSRsaiIGKAIgIQEgA0GYAWogBigCHCABKAIIQQFrQXhxakEIaiAGIAIgAUHEAGooAgARAgAgAygCqAEiAUEERg0BIB0gAyoCmAEiF5MiEyATlCAcIAMqApwBIhiTIhMgE5SSIBsgAyoCoAEiFpMiEyATlJKRIhMgFF1FDQEgAygCrAEhCiADKAKkASEPIBchGSAYIRogFiEVIBMhFCABIQsMAQsgASAMQcicwwAQhQsACwsgHv0fASAUXUUNAyAe/R8BQ///f39bDQMgCCgCHEH/////A3FBAUYNAQsgCCgCDCEEDAMLQQAhBgsgDCAIKAIMIgFLBEAgEiABQSRsaiIFKAIgIQEgA0GYAWogBSgCHCABKAIIQQFrQXhxakEIaiAFIAIgAUHEAGooAgARAgACQCADKAKoASIBQQRGDQAgHSADKgKYASIXkyITIBOUIBwgAyoCnAEiGJMiEyATlJIgGyADKgKgASIWkyITIBOUkpEiEyAUXUUNACADKAKsASEKIAMoAqQBIQ8gFyEZIBghGiAWIRUgEyEUIAEhCwsgBkUNAQwCCyABIAxB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JAAPCyAEQQA2AhwgBEEBNgIQIARBpNnBADYCDCAEQgQ3AhQgBEEMakGs2cEAELkNAAvTDAIHfwN9IwBB4AFrIgskACALQTBqIAMgBCgCtAERAAAgCygCNCENIAsoAjAhDCALQShqIAYgBygCtAERAAACQAJAAkACQAJAIAwEQCALKAIoIhANAQsgC0EgaiADIAQoArgBEQAAIAsoAiAiDEUNASALQaABaiAMIAsoAiQgASACIAUgBiAHIAggCSAKEHcgCy0A2AEiAUEERwRAIAtB6ABqIAtB1AFqKAIANgIAIAtB2ABqIAtBxAFq/QACAP0LAwAgC0HIAGogC0G0AWr9AAIA/QsDACALQZIBaiALQdsBai0AADoAACALIAv9AAKkAf0LAzggCyALLwDZATsBkAELIAAgC/0AAzj9CwIAIAAgAToANCAAIAsvAZABOwA1IABBMGogC0E4aiIBQTBqKAIANgIAIABBIGogAUEgav0AAwD9CwIAIABBEGogAUEQav0AAwD9CwIAIABBN2ogC0GSAWotAAA6AAAMBAsgCygCLCEOIAoEf0EABSAHKAKsASEKIAQoAqwBIQ8gBygCqAEhESADIAQoAqgBEQsAIAYgERELAJIhFCADIA8RCwAhEiAGIAoRCwAiEyATIBIgEiATXRsgEiASXBshEkEBCyEKIAsgEjgCeCALIBQ4AnQgCyAKNgJwIA5BGGooAgAhCiAOQRBqKAIAIQ4gDUEYaigCACEPIA1BEGooAgAhDSALQYABaiADIAQoAoQBEQAAIAtBkAFqIAYgBygChAERAAAgCyoCjAEgCyoCnAFgDQEgC0GgAWoiCiABIAUgECAOIAYgByACIAwgDyADIAQgCCAJIAtB8ABqEEUgCy0A1AEiAkEERwRAIAtBOGoiAUEYaiAKQQxqKAIANgIAIAFBDGogCkEYaigCADYCACABQTBqIApBJGooAgA2AgAgAUEkaiAKQTBqKAIANgIAIAsgCykCpAE3AkggCyALKQKwATcCPCALIAspArwBNwJgIAsgCykCyAE3AlQgCyALKgKgATgCOAsgCyACOgBsDAILIAtBGGogBiAHKAK4AREAACALKAIYIgwEQCALQaABaiAMIAsoAhwgASAFIAIgAyAEIAggCSAKEHcgCy0A2AEiAUEERwRAIAtBmAFqIAtBsAFqKAIANgIAIAtBQGsgC0G8AWooAgA2AgAgC0H4AGogC0HIAWooAgA2AgAgC0GIAWogC0HUAWooAgA2AgAgCyALKQKoATcDkAEgCyALKQK0ATcDOCALIAspAsABNwNwIAsgCykCzAE3A4ABIAsqAqQBIQkLIAAgCTgCACAAIAspAzg3AgQgACALKQOQATcCECAAIAspA4ABNwIcIAAgCykDcDcCKCAAIAE6ADQgAEEMaiALQUBrKAIANgIAIABBGGogC0GYAWooAgA2AgAgAEEkaiALQYgBaigCADYCACAAQTBqIAtB+ABqKAIANgIAIABBN2ogC0GiAWotAAA6AAAgACALLwCgATsANQwDCyALQRBqIAMgBCgCYBEAACALQaABaiALKAIQIgwgCygCFCgCDBEAAAJAIAxFDQAgCykDoAFC5p216IDjz4cxhSALKQOoAULw4py6utTs2yaFhEIAUg0AIAAgASACIAwgBSAGIAcgCCAJIAoQcgwDCyALQQhqIAYgBygCYBEAACALQaABaiALKAIIIgwgCygCDCgCDBEAAAJAIAxFDQAgCykDoAFC5p216IDjz4cxhSALKQOoAULw4py6utTs2yaFhEIAUg0AIwBBQGoiBiQAIAZBCGoiByABIAUgDCACIAMgBCAIIAkgChByIAYtADwiAUEERwRAIAAgBikCDDcCECAAIAYpAhg3AgQgACAGKQIkNwIoIAAgBikCMDcCHCAAIAYqAgg4AgAgAEEYaiAHQQxqKAIANgIAIABBDGogB0EYaigCADYCACAAQTBqIAdBJGooAgA2AgAgAEEkaiAHQTBqKAIANgIACyAAIAE6ADQgBkFAayQADAMLIABBBToANAwCCyALQThqIAEgAiAMIA0gAyAEIAUgECAKIAYgByAIIAkgC0HwAGoQRQsgAEEwaiALQThqIgFBMGopAgA3AgAgAEEgaiABQSBq/QACAP0LAgAgAEEQaiABQRBq/QACAP0LAgAgACAL/QACOP0LAgALIAtB4AFqJAALowwBG38jAEGQAWsiDyQAAkACQAJAIABFDQAgAEEIayITKAIAQQFqIRAgEyAQNgIAIBBFDQEgACgCAA0CIABBfzYCACAPIBM2AgggDyAANgIEIA8gAEEIaiIfNgIAIAFFDQAgAUEIayIUKAIAQQFqIRAgFCAQNgIAIBBFDQEgASgC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AhAgCioCBCEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCCCEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCDCEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCECEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCFCEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCGCEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCHCEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCICEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCJCEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCKCEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCjUCLCErIBAoAgggC2tBB00EQCAQQQhqIAtBCEEBQQEQ1gYgECgCECELCyAQKAIMIAtqICs3AAAgECALQQhqIgs2AhAgCjUCMCErIBAoAgggC2tBB00EQCAQQQhqIAtBCEEBQQEQ1gYgECgCECELCyAQKAIMIAtqICs3AAAgECALQQhqIgs2AhAgCjUCNCErIBAoAgggC2tBB00EQCAQQQhqIAtBCEEBQQEQ1gYgECgCECELCyAQKAIMIAtqICs3AAAgECALQQhqIgs2AhAgCjUCOCErIBAoAgggC2tBB00EQCAQQQhqIAtBCEEBQQEQ1gYgECgCECELCyAQKAIMIAtqICs3AAAgECALQQhqIgs2AhAgCjUCPCErIBAoAgggC2tBB00EQCAQQQhqIAtBCEEBQQEQ1gYgECgCECELCyAQKAIMIAtqICs3AAAgECALQQhqIgs2AhAgCi0AQCEKIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIAo2AAAgECALQQRqIgo2AhAgFigCBCELIBYoAggiDK0hKyAQKAIIIAprQQdNBEAgEEEIaiAKQQhBAUEBENYGIBAoAhAhCgsgECgCDCAKaiArNwAAIBAgCkEIaiIKNgIQIAwEQCALIAxBA3RqIRIDQCALQQRqKAIAIQ0gCygCACEMIBAoAgggCmtBA00EQCAQQQhqIApBBEEBQQEQ1gYgECgCECEKCyAQKAIMIApqIAw2AAAgECAKQQRqIgo2AhAgECgCCCAKa0EDTQRAIBBBCGogCkEEQQFBARDWBiAQKAIQIQoLIBAoAgwgCmogDTYAACAQIApBBGoiCjYCECASIAtBCGoiC0cNAAsLIBYoAhAhCyAWKAIUIgytISsgECgCCCAKa0EHTQRAIBBBCGogCkEIQQFBARDWBiAQKAIQIQoLIBAoAgwgCmogKzcAACAQIApBCGoiCjYCECAMBEAgDEECdCENA0AgCzUCACErIAtBBGohCyAQKAIIIAprQQdNBEAgEEEIaiAKQQhBAUEBENYGIBAoAhAhCgsgECgCDCAKaiArNwAAIBAgCkEIaiIKNgIQIA1BBGsiDQ0ACwsgFigCHCELIBYoAiAiDK0hKyAQKAIIIAprQQdNBEAgEEEIaiAKQQhBAUEBENYGIBAoAhAhCgsgECgCDCAKaiArNwAAIBAgCkEIaiIKNgIQIAwEQCAMQQJ0IQ0DQCALNQIAISsgC0EEaiELIBAoAgggCmtBB00EQCAQQQhqIApBCEEBQQEQ1gYgECgCECEKCyAQKAIMIApqICs3AAAgECAKQQhqIgo2AhAgDUEEayINDQALCyAWKAI8IQsgECgCCCAKa0EDTQRAIBBBCGogCkEEQQFBARDWBiAQKAIQIQoLIBAoAgwgCmogCzYAACAQIApBBGo2AhAgEEEYaiAcEPEBIgoNACAcKAIoIgspAwAhLCAcKAI0IhGtISsgECgCCCAQKAIQIgprQQdNBEAgEEEIaiAKQQhBAUEBENYGIBAoAhAhCgsgECgCDCAKaiArNwAAIBAgCkEIaiIMNgIQIBEEQCALQQhqIQogLEJ/hUKAgYKEiJCgwIB/gyErA0AgK1AEQANAIAtBoAFrIQsgCikDACErIApBCGohCiArQoCBgoSIkKDAgH+DIitCgIGChIiQoMCAf1ENAAsgK0KAgYKEiJCgwIB/hSErCyALICt6p0EDdkFsbGoiFUEQaygCACESIBVBFGsoAgAhDSAVQQRrKAIAIQ4gECgCCCAMa0EDTQRAIBBBCGogDEEEQQFBARDWBiAQKAIQIQwLIBAoAgwgDGogDTYAACAQIAxBBGoiDDYCECAQKAIIIAxrQQNNBEAgEEEIaiAMQQRBAUEBENYGIBAoAhAhDAsgECgCDCAMaiASNgAAIBAgDEEEaiIMNgIQIBVBCGsoAgAhEiAVQQxrKAIAIQ0gECgCCCAMa0EDTQRAIBBBCGogDEEEQQFBARDWBiAQKAIQIQwLIBAoAgwgDGogDTYAACAQIAxBBGoiDTYCECArQgF9ISwgECgCCCANa0EDTQRAIBBBCGogDUEEQQFBARDWBiAQKAIQIQ0LIBAoAgwgDWogEjYAACAQIA1BBGoiDTYCECArICyDISsgECgCCCANa0EDTQRAIBBBCGogDUEEQQFBARDWBiAQKAIQIQ0LIBAoAgwgDWogDjYAACAQIA1BBGoiDDYCECARQQFrIhENAAsLIBwoApQBIQogECgCGCIMKAIIIQsgDCgCACALa0EDTQRAIAwgC0EEQQFBARDWBiAMKAIIIQsLIAwoAgQgC2ogCjYAACAMIAtBBGo2AgggHC0AmAEhCiAQKAIYIgwoAgghCyAMKAIAIAtrQQNNBEAgDCALQQRBAUEBENYGIAwoAgghCwsgDCgCBCALaiAKNgAAIAwgC0EEajYCCCMAQRBrIhwkAAJAIBBBGGoiGSATKAIEIBMoAggQmwUiDA0AIBMoAhAhGyATKAIUIgqtISsgGSgCACILKAIIIQwgCygCACAMa0EHTQRAIAsgDEEIQQFBARDWBiALKAIIIQwLIAsgDEEIajYCCCALKAIEIAxqICs3AAAgCgRAIBsgCkE4bGohFQNAIBsoAhAhCyAbKAIMIQogGSgCACINKAIIIQwgDSgCACAMa0EDTQRAIA0gDEEEQQFBARDWBiANKAIIIQwLIA0oAgQgDGogCjYAACANIAxBBGoiDDYCCCANKAIAIAxrQQNNBEAgDSAMQQRBAUEBENYGIA0oAgghDAsgDSAMQQRqNgIIIA0oAgQgDGogCzYAACAbKAIYIQsgGygCFCEKIBkoAgAiDSgCCCEMIA0oAgAgDGtBA00EQCANIAxBBEEBQQEQ1gYgDSgCCCEMCyANKAIEIAxqIAo2AAAgDSAMQQRqIgw2AgggDSgCACAMa0EDTQRAIA0gDEEEQQFBARDWBiANKAIIIQwLIA0gDEEEajYCCCANKAIEIAxqIAs2AAAgGygCBCEXIBsoAggiCq0hKyAZKAIAIgsoAgghDCALKAIAIAxrQQdNBEAgCyAMQQhBAUEBENYGIAsoAgghDAsgCyAMQQhqNgIIIAsoAgQgDGogKzcAACAKBEAgFyAKQagBbGohEgNAIBcoAoABIQwgFygChAEiCq0hKyAZKAIAIg4oAgghCyAOKAIAIAtrQQdNBEAgDiALQQhBAUEBENYGIA4oAgghCwsgDiALQQhqNgIIIA4oAgQgC2ogKzcAACAKBEAgDCAKQQZ0aiENA0AgDCoCACEuIBkoAgAiCigCCCEPIAooAgAgD2tBA00EQCAKIA9BBEEBQQEQ1gYgCigCCCEPCyAKKAIEIA9qIC44AAAgCiAPQQRqIg82AgggDEEEaioCACEuIAooAgAgD2tBA00EQCAKIA9BBEEBQQEQ1gYgCigCCCEPCyAKKAIEIA9qIC44AAAgCiAPQQRqIg82AgggDEEIaioCACEuIAooAgAgD2tBA00EQCAKIA9BBEEBQQEQ1gYgCigCCCEPCyAKIA9BBGo2AgggCigCBCAPaiAuOAAAIAxBDGoqAgAhLiAZKAIAIgooAgghDyAKKAIAIA9rQQNNBEAgCiAPQQRBAUEBENYGIAooAgghDwsgCigCBCAPaiAuOAAAIAogD0EEaiIPNgIIIAxBEGoqAgAhLiAKKAIAIA9rQQNNBEAgCiAPQQRBAUEBENYGIAooAgghDwsgCigCBCAPaiAuOAAAIAogD0EEaiIPNgIIIAxBFGoqAgAhLiAKKAIAIA9rQQNNBEAgCiAPQQRBAUEBENYGIAooAgghDwsgCiAPQQRqNgIIIAooAgQgD2ogLjgAACAMQRhqKgIAIS4gDigCACAOKAIIIgtrQQNNBEAgDiALQQRBAUEBENYGIA4oAgghCwsgDigCBCALaiAuOAAAIA4gC0EEaiILNgIIIAxBHGooAgAhCiAOKAIAIAtrQQNNBEAgDiALQQRBAUEBENYGIA4oAgghCwsgDigCBCALaiAKNgAAIA4gC0EEaiILNgIIIAxBIGooAgAhCiAOKAIAIAtrQQNNBEAgDiALQQRBAUEBENYGIA4oAgghCwsgDigCBCALaiAKNgAAIA4gC0EEaiILNgIIIAxBNGoqAgAhLiAOKAIAIAtrQQNNBEAgDiALQQRBAUEBENYGIA4oAgghCwsgDigCBCALaiAuOAAAIA4gC0EEaiILNgIIIAxBKGoqAgAhLyAMQSRqKgIAIS4gDigCACALa0EDTQRAIA4gC0EEQQFBARDWBiAOKAIIIQsLIA4oAgQgC2ogLjgAACAOIAtBBGoiCzYCCCAOKAIAIAtrQQNNBEAgDiALQQRBAUEBENYGIA4oAgghCwsgDigCBCALaiAvOAAAIA4gC0EEaiILNgIIIAxBOGoqAgAhLiAOKAIAIAtrQQNNBEAgDiALQQRBAUEBENYGIA4oAgghCwsgDigCBCALaiAuOAAAIA4gC0EEaiILNgIIIAxBMGoqAgAhLyAMQSxqKgIAIS4gDigCACALa0EDTQRAIA4gC0EEQQFBARDWBiAOKAIIIQsLIA4oAgQgC2ogLjgAACAOIAtBBGoiCzYCCCAOKAIAIAtrQQNNBEAgDiALQQRBAUEBENYGIA4oAgghCwsgDigCBCALaiAvOAAAIA4gC0EEaiILNgIIIAxBPGoqAgAhLiAOKAIAIAtrQQNNBEAgDiALQQRBAUEBENYGIA4oAgghCwsgDiALQQRqNgIIIA4oAgQgC2ogLjgAACANIAxBQGsiDEcNAAsLIBdBiAFqIBkQkAgiDA0EIBdBlAFqIBkQkAgiDA0EIBcoAqABIQogDigCACAOKAIIIgxrQQNNBEAgDiAMQQRBAUEBENYGIA4oAgghDAsgDigCBCAMaiAKNgAAIA4gDEEEaiIMNgIIIBcoAqQBIQogDigCACAMa0EDTQRAIA4gDEEEQQFBARDWBiAOKAIIIQwLIA4gDEEEaiILNgIIIA4oAgQgDGogCjYAAAJAIBcoAgBBAUYEQCALIA4oAgBGBEAgDiALQQFBAUEBENYGIA4oAgghCwsgDiALQQFqNgIIIA4oAgQgC2pBAToAACAZIBdBBGoQzgYiDA0GIBdBFGogGRCQCCIMRQ0BDAYLIAsgDigCAEYEQCAOIAtBAUEBQQEQ1gYgDigCCCELCyAOIAtBAWo2AgggDigCBCALakEAOgAACwJAIBcoAiBBAUYEQCAZKAIAIgooAgghDCAMIAooAgBGBEAgCiAMQQFBAUEBENYGIAooAgghDAsgCiAMQQFqNgIIIAooAgQgDGpBAToAACAZIBdBJGoQzgYiDA0GIBdBNGogGRCQCCIMRQ0BDAYLIBkoAgAiCigCCCEMIAwgCigCAEYEQCAKIAxBAUEBQQEQ1gYgCigCCCEMCyAKIAxBAWo2AgggCigCBCAMakEAOgAACyAZIBdBQGsQzwYiDA0EIBkgF0HMAGoQzwYiDA0EIBcoAmQhCiAZKAIAIgsoAgghDCALKAIAIAxrQQNNBEAgCyAMQQRBAUEBENYGIAsoAgghDAsgCyAMQQRqNgIIIAsoAgQgDGogCjYAACAXQegAaiAZEJAIIgwNBCAXKAJcIQwgFygCYCIKrSErIBkoAgAiDigCCCELIA4oAgAgC2tBB00EQCAOIAtBCEEBQQEQ1gYgDigCCCELCyAOIAtBCGo2AgggDigCBCALaiArNwAAIAoEQCAMIApBBnRqIQ0DQCAMKgIAIS4gGSgCACIKKAIIIQ8gCigCACAPa0EDTQRAIAogD0EEQQFBARDWBiAKKAIIIQ8LIAooAgQgD2ogLjgAACAKIA9BBGoiDzYCCCAMQQRqKgIAIS4gCigCACAPa0EDTQRAIAogD0EEQQFBARDWBiAKKAIIIQ8LIAooAgQgD2ogLjgAACAKIA9BBGoiDzYCCCAMQQhqKgIAIS4gCigCACAPa0EDTQRAIAogD0EEQQFBARDWBiAKKAIIIQ8LIAogD0EEajYCCCAKKAIEIA9qIC44AAAgDEEMaioCACEuIA4oAgAgDigCCCILa0EDTQRAIA4gC0EEQQFBARDWBiAOKAIIIQsLIA4oAgQgC2ogLjgAACAOIAtBBGoiCzYCCCAMQRBqKgIAIS4gDigCACALa0EDTQRAIA4gC0EEQQFBARDWBiAOKAIIIQsLIA4oAgQgC2ogLjgAACAOIAtBBGoiCzYCCCAMQRRqKgIAIS4gDigCACALa0EDTQRAIA4gC0EEQQFBARDWBiAOKAIIIQsLIA4gC0EEajYCCCAOKAIEIAtqIC44AAAgDEEYaioCACEuIBkoAgAiCigCCCEPIAooAgAgD2tBA00EQCAKIA9BBEEBQQEQ1gYgCigCCCEPCyAKKAIEIA9qIC44AAAgCiAPQQRqIg82AgggDEEcaioCACEuIAooAgAgD2tBA00EQCAKIA9BBEEBQQEQ1gYgCigCCCEPCyAKKAIEIA9qIC44AAAgCiAPQQRqIg82AgggDEEgaioCACEuIAooAgAgD2tBA00EQCAKIA9BBEEBQQEQ1gYgCigCCCEPCyAKIA9BBGo2AgggCigCBCAPaiAuOAAAIAxBJGoqAgAhLiAOKAIAIA4oAggiC2tBA00EQCAOIAtBBEEBQQEQ1gYgDigCCCELCyAOKAIEIAtqIC44AAAgDiALQQRqIgs2AgggDEEsaioCACEvIAxBKGoqAgAhLiAOKAIAIAtrQQNNBEAgDiALQQRBAUEBENYGIA4oAgghCwsgDigCBCALaiAuOAAAIA4gC0EEaiILNgIIIA4oAgAgC2tBA00EQCAOIAtBBEEBQQEQ1gYgDigCCCELCyAOKAIEIAtqIC84AAAgDiALQQRqIgs2AgggDEEwaioCACEuIA4oAgAgC2tBA00EQCAOIAtBBEEBQQEQ1gYgDigCCCELCyAOKAIEIAtqIC44AAAgDiALQQRqIgs2AgggDEE0aioCACEuIA4oAgAgC2tBA00EQCAOIAtBBEEBQQEQ1gYgDigCCCELCyAOKAIEIAtqIC44AAAgDiALQQRqIgs2AgggDEE4aigCACEKIA4oAgAgC2tBA00EQCAOIAtBBEEBQQEQ1gYgDigCCCELCyAOKAIEIAtqIAo2AAAgDiALQQRqIgs2AgggDEE8aioCACEuIA4oAgAgC2tBA00EQCAOIAtBBEEBQQEQ1gYgDigCCCELCyAOIAtBBGo2AgggDigCBCALaiAuOAAAIA0gDEFAayIMRw0ACwsgFy8BeCEKIBkoAgAiCygCCCEMIAsoAgAgDGtBAU0EQCALIAxBAkEBQQEQ1gYgCygCCCEMCyALIAxBAmo2AgggCygCBCAMaiAKOwAAIBcoAnQhCiAZKAIAIgsoAgghDCALKAIAIAxrQQNNBEAgCyAMQQRBAUEBENYGIAsoAgghDAsgCyAMQQRqNgIIIAsoAgQgDGogCjYAACASIBdBqAFqIhdHDQALCyAbLQAkIQogGSgCACILKAIIIQwgDCALKAIARgRAIAsgDEEBQQFBARDWBiALKAIIIQwLIAsgDEEBajYCCCALKAIEIAxqIAo6AAAgGy0AJSEKIBkoAgAiCygCCCEMIAwgCygCAEYEQCALIAxBAUEBQQEQ1gYgCygCCCEMCyALIAxBAWo2AgggCygCBCAMaiAKOgAAAkAgGygCHCINBEAgGygCICELIBkoAgAiCigCCCEMIAwgCigCAEYEQCAKIAxBAUEBQQEQ1gYgCigCCCEMCyAKIAxBAWo2AgggCigCBCAMakEBOgAAIBxBCGogDSALKAIsEQAAIBwoAgwhDgJAAkACQAJAAkACQAJAAkACQCAcKAIIQQFrDggBAgMEBQYHCAALIAooAgAgCigCCCIMa0EDTQRAIAogDEEEQQFBARDWBiAKKAIIIQwLIAooAgQgDGpBADYAACAKIAxBBGoiDzYCCCAOKAIEIQwgDigCCCINrSErIAooAgAgD2tBB00EQCAKIA9BCEEBQQEQ1gYgCigCCCEPCyAKIA9BCGoiCzYCCCAKKAIEIA9qICs3AAAgDQRAIA1BAnQhEQNAIAwoAgAhEiAMQQRqIQwgCiAKKAIAIAtrQQNLBH8gCwUgCiALQQRBAUEBENYGIAooAggLIg1BBGoiCzYCCCAKKAIEIA1qIBI2AAAgEUEEayIRDQALCyAOQRhqIBkQkAgiDA0MIA5BJGogGRCQCCIMDQwgDigCECEMIA4oAhQiDa0hKyAKKAIAIAooAggiD2tBB00EQCAKIA9BCEEBQQEQ1gYgCigCCCEPCyAKIA9BCGoiCzYCCCAKKAIEIA9qICs3AAAgDUUNCSANQQJ0IREDQCAMKAIAIRIgDEEEaiEMIAogCigCACALa0EDSwR/IAsFIAogC0EEQQFBARDWBiAKKAIICyINQQRqIgs2AgggCigCBCANaiASNgAAIBFBBGsiEQ0ACwwJCyAKKAIAIAooAggiDGtBA00EQCAKIAxBBEEBQQEQ1gYgCigCCCEMCyAKKAIEIAxqQQE2AAAgCiAMQQRqIgw2AgggDi0AGCELIAwgCigCAEYEQCAKIAxBAUEBQQEQ1gYgCigCCCEMCyAKIAxBAWoiDzYCCCAKKAIEIAxqIAs6AAAgDigCACILKQMAISwgDigCDCIXrSErIAooAgAgD2tBB00EQCAKIA9BCEEBQQEQ1gYgCigCCCEPCyAKIA9BCGoiETYCCCAKKAIEIA9qICs3AAAgF0UNCCALQQhqIQwgLEJ/hUKAgYKEiJCgwIB/gyErA0AgK1AEQANAIAtB4ABrIQsgDCkDACErIAxBCGohDCArQoCBgoSIkKDAgH+DIitCgIGChIiQoMCAf1ENAAsgK0KAgYKEiJCgwIB/hSErCyALICt6p0EDdkF0bGoiDUEEay0AACESIA1BCGs1AgAhLSANQQxrKAIAIQ0gCigCACARa0EDTQRAIAogEUEEQQFBARDWBiAKKAIIIRELIAooAgQgEWogDTYAACAKIBFBBGoiDzYCCCArQgF9ISwgCigCACAPa0EHTQRAIAogD0EIQQFBARDWBiAKKAIIIQ8LIAooAgQgD2ogLTcAACAKIA9BCGoiDzYCCCArICyDISsgDyAKKAIARgRAIAogD0EBQQFBARDWBiAKKAIIIQ8LIAogD0EBaiIRNgIIIAooAgQgD2ogEkEBcToAACAXQQFrIhcNAAsMCAsgCigCACAKKAIIIgxrQQNNBEAgCiAMQQRBAUEBENYGIAooAgghDAsgCigCBCAMakECNgAAIAogDEEEaiIMNgIIIA4tABghCyAMIAooAgBGBEAgCiAMQQFBAUEBENYGIAooAgghDAsgCiAMQQFqIg82AgggCigCBCAMaiALOgAAIA4oAgAiCykDACEsIA4oAgwiF60hKyAKKAIAIA9rQQdNBEAgCiAPQQhBAUEBENYGIAooAgghDwsgCiAPQQhqIhE2AgggCigCBCAPaiArNwAAIBdFDQcgC0EIaiEMICxCf4VCgIGChIiQoMCAf4MhKwNAICtQBEADQCALQYABayELIAwpAwAhKyAMQQhqIQwgK0KAgYKEiJCgwIB/gyIrQoCBgoSIkKDAgH9RDQALICtCgIGChIiQoMCAf4UhKwsgCyAreqdBAXRB8AFxayINQQRrLQAAIQ4gDUEIazUCACEtIA1BDGsoAgAhEiANQRBrKAIAIQ0gCigCACARa0EDTQRAIAogEUEEQQFBARDWBiAKKAIIIRELIAooAgQgEWogDTYAACAKIBFBBGoiDzYCCCAKKAIAIA9rQQNNBEAgCiAPQQRBAUEBENYGIAooAgghDwsgCigCBCAPaiASNgAAIAogD0EEaiIPNgIIICtCAX0hLCAKKAIAIA9rQQdNBEAgCiAPQQhBAUEBENYGIAooAgghDwsgCigCBCAPaiAtNwAAIAogD0EIaiIPNgIIICsgLIMhKyAPIAooAgBGBEAgCiAPQQFBAUEBENYGIAooAgghDwsgCiAPQQFqIhE2AgggCigCBCAPaiAOQQFxOgAAIBdBAWsiFw0ACwwHCyAKKAIAIAooAggiDGtBA00EQCAKIAxBBEEBQQEQ1gYgCigCCCEMCyAKKAIEIAxqQQM2AAAgCiAMQQRqIgw2AgggDi0AGCELIAwgCigCAEYEQCAKIAxBAUEBQQEQ1gYgCigCCCEMCyAKIAxBAWoiDzYCCCAKKAIEIAxqIAs6AAAgDigCACILKQMAISwgDigCDCIXrSErIAooAgAgD2tBB00EQCAKIA9BCEEBQQEQ1gYgCigCCCEPCyAKIA9BCGoiETYCCCAKKAIEIA9qICs3AAAgF0UNBiALQQhqIQwgLEJ/hUKAgYKEiJCgwIB/gyErA0AgK1AEQANAIAtBgAFrIQsgDCkDACErIAxBCGohDCArQoCBgoSIkKDAgH+DIitCgIGChIiQoMCAf1ENAAsgK0KAgYKEiJCgwIB/hSErCyALICt6p0EBdEHwAXFrIg1BBGstAAAhDiANQQhrNQIAIS0gDUEMaygCACESIA1BEGsoAgAhDSAKKAIAIBFrQQNNBEAgCiARQQRBAUEBENYGIAooAgghEQsgCigCBCARaiANNgAAIAogEUEEaiIPNgIIIAooAgAgD2tBA00EQCAKIA9BBEEBQQEQ1gYgCigCCCEPCyAKKAIEIA9qIBI2AAAgCiAPQQRqIg82AgggK0IBfSEsIAooAgAgD2tBB00EQCAKIA9BCEEBQQEQ1gYgCigCCCEPCyAKKAIEIA9qIC03AAAgCiAPQQhqIg82AgggKyAsgyErIA8gCigCAEYEQCAKIA9BAUEBQQEQ1gYgCigCCCEPCyAKIA9BAWoiETYCCCAKKAIEIA9qIA5BAXE6AAAgF0EBayIXDQALDAYLIAooAgAgCigCCCIMa0EDTQRAIAogDEEEQQFBARDWBiAKKAIIIQwLIAooAgQgDGpBBDYAACAKIAxBBGoiDDYCCCAOLQAYIQsgDCAKKAIARgRAIAogDEEBQQFBARDWBiAKKAIIIQwLIAogDEEBaiIPNgIIIAooAgQgDGogCzoAACAOKAIAIgspAwAhLCAOKAIMIhetISsgCigCACAPa0EHTQRAIAogD0EIQQFBARDWBiAKKAIIIQ8LIAogD0EIaiIRNgIIIAooAgQgD2ogKzcAACAXRQ0FIAtBCGohDCAsQn+FQoCBgoSIkKDAgH+DISsDQCArUARAA0AgC0HgAGshCyAMKQMAISsgDEEIaiEMICtCgIGChIiQoMCAf4MiK0KAgYKEiJCgwIB/UQ0ACyArQoCBgoSIkKDAgH+FISsLIAsgK3qnQQN2QXRsaiINQQRrLQAAIRIgDUEIazUCACEtIA1BDGsoAgAhDSAKKAIAIBFrQQNNBEAgCiARQQRBAUEBENYGIAooAgghEQsgCigCBCARaiANNgAAIAogEUEEaiIPNgIIICtCAX0hLCAKKAIAIA9rQQdNBEAgCiAPQQhBAUEBENYGIAooAgghDwsgCigCBCAPaiAtNwAAIAogD0EIaiIPNgIIICsgLIMhKyAPIAooAgBGBEAgCiAPQQFBAUEBENYGIAooAgghDwsgCiAPQQFqIhE2AgggCigCBCAPaiASQQFxOgAAIBdBAWsiFw0ACwwFCyAKKAIAIAooAggiDGtBA00EQCAKIAxBBEEBQQEQ1gYgCigCCCEMCyAKKAIEIAxqQQU2AAAgCiAMQQRqIgw2AgggDi0AGCELIAwgCigCAEYEQCAKIAxBAUEBQQEQ1gYgCigCCCEMCyAKIAxBAWoiDzYCCCAKKAIEIAxqIAs6AAAgDigCACILKQMAISwgDigCDCIerSErIAooAgAgD2tBB00EQCAKIA9BCEEBQQEQ1gYgCigCCCEPCyAKIA9BCGoiETYCCCAKKAIEIA9qICs3AAAgHkUNBCALQQhqIQwgLEJ/hUKAgYKEiJCgwIB/gyErA0AgK1AEQANAIAtBoAFrIQsgDCkDACErIAxBCGohDCArQoCBgoSIkKDAgH+DIitCgIGChIiQoMCAf1ENAAsgK0KAgYKEiJCgwIB/hSErCyALICt6p0EDdkFsbGoiFkEQaygCACEOIBZBFGsoAgAhEiAWQQxrIQ0gCigCACARa0EDTQRAIAogEUEEQQFBARDWBiAKKAIIIRELIAooAgQgEWogEjYAACAKIBFBBGoiETYCCCAKKAIAIBFrQQNNBEAgCiARQQRBAUEBENYGIAooAgghEQsgCigCBCARaiAONgAAIAogEUEEaiIRNgIIIA01AgAhLCAKKAIAIBFrQQdNBEAgCiARQQhBAUEBENYGIAooAgghEQsgCigCBCARaiAsNwAAIAogEUEIaiIRNgIIIBZBCGsoAgAhDSArQgF9ISwgCigCACARa0EDTQRAIAogEUEEQQFBARDWBiAKKAIIIRELIAooAgQgEWogDTYAACAKIBFBBGoiFzYCCCAWQQRrLQAAIQ0gKyAsgyErIBcgCigCAEYEQCAKIBdBAUEBQQEQ1gYgCigCCCEXCyAKIBdBAWoiETYCCCAKKAIEIBdqIA06AAAgHkEBayIeDQALDAQLIAooAgAgCigCCCIMa0EDTQRAIAogDEEEQQFBARDWBiAKKAIIIQwLIAooAgQgDGpBBjYAACAKIAxBBGoiDDYCCCAOLQAYIQsgDCAKKAIARgRAIAogDEEBQQFBARDWBiAKKAIIIQwLIAogDEEBaiIPNgIIIAooAgQgDGogCzoAACAOKAIAIgspAwAhLCAOKAIMIh6tISsgCigCACAPa0EHTQRAIAogD0EIQQFBARDWBiAKKAIIIQ8LIAogD0EIaiIRNgIIIAooAgQgD2ogKzcAACAeRQ0DIAtBCGohDCAsQn+FQoCBgoSIkKDAgH+DISsDQCArUARAA0AgC0HAAWshCyAMKQMAISsgDEEIaiEMICtCgIGChIiQoMCAf4MiK0KAgYKEiJCgwIB/UQ0ACyArQoCBgoSIkKDAgH+FISsLIAsgK3qnQQN2QWhsaiIOQRhrKAIAIQ0gCigCACARa0EDTQRAIAogEUEEQQFBARDWBiAKKAIIIRELIAooAgQgEWogDTYAACAKIBFBBGoiETYCCCAOQRRrKAIAIQ0gDkEMayESIAooAgAgEWtBA00EQCAKIBFBBEEBQQEQ1gYgCigCCCERCyAKKAIEIBFqIA02AAAgCiARQQRqIhE2AgggDkEQaygCACENIAooAgAgEWtBA00EQCAKIBFBBEEBQQEQ1gYgCigCCCERCyAKKAIEIBFqIA02AAAgCiARQQRqIhE2AgggEjUCACEsIAooAgAgEWtBB00EQCAKIBFBCEEBQQEQ1gYgCigCCCERCyAKKAIEIBFqICw3AAAgCiARQQhqIhE2AgggDkEIaygCACENICtCAX0hLCAKKAIAIBFrQQNNBEAgCiARQQRBAUEBENYGIAooAgghEQsgCigCBCARaiANNgAAIAogEUEEaiIXNgIIIA5BBGstAAAhDSArICyDISsgFyAKKAIARgRAIAogF0EBQQFBARDWBiAKKAIIIRcLIAogF0EBaiIRNgIIIAooAgQgF2ogDToAACAeQQFrIh4NAAsMAwsgCigCACAKKAIIIgxrQQNNBEAgCiAMQQRBAUEBENYGIAooAgghDAsgCigCBCAMakEHNgAAIAogDEEEaiIMNgIIIA4tABghCyAMIAooAgBGBEAgCiAMQQFBAUEBENYGIAooAgghDAsgCiAMQQFqIg82AgggCigCBCAMaiALOgAAIA4oAgAiCykDACEsIA4oAgwiHq0hKyAKKAIAIA9rQQdNBEAgCiAPQQhBAUEBENYGIAooAgghDwsgCiAPQQhqIhE2AgggCigCBCAPaiArNwAAIB5FDQIgC0EIaiEMICxCf4VCgIGChIiQoMCAf4MhKwNAICtQBEADQCALQeABayELIAwpAwAhKyAMQQhqIQwgK0KAgYKEiJCgwIB/gyIrQoCBgoSIkKDAgH9RDQALICtCgIGChIiQoMCAf4UhKwsgCyAreqdBA3ZBZGxqIg5BHGsoAgAhDSAKKAIAIBFrQQNNBEAgCiARQQRBAUEBENYGIAooAgghEQsgCigCBCARaiANNgAAIAogEUEEaiIRNgIIIA5BGGsoAgAhDSAKKAIAIBFrQQNNBEAgCiARQQRBAUEBENYGIAooAgghEQsgCigCBCARaiANNgAAIAogEUEEaiIRNgIIIA5BFGsoAgAhDSAOQQxrIRIgCigCACARa0EDTQRAIAogEUEEQQFBARDWBiAKKAIIIRELIAooAgQgEWogDTYAACAKIBFBBGoiETYCCCAOQRBrKAIAIQ0gCigCACARa0EDTQRAIAogEUEEQQFBARDWBiAKKAIIIRELIAooAgQgEWogDTYAACAKIBFBBGoiETYCCCASNQIAISwgCigCACARa0EHTQRAIAogEUEIQQFBARDWBiAKKAIIIRELIAooAgQgEWogLDcAACAKIBFBCGoiETYCCCAOQQhrKAIAIQ0gK0IBfSEsIAooAgAgEWtBA00EQCAKIBFBBEEBQQEQ1gYgCigCCCERCyAKKAIEIBFqIA02AAAgCiARQQRqIhc2AgggDkEEay0AACENICsgLIMhKyAXIAooAgBGBEAgCiAXQQFBAUEBENYGIAooAgghFwsgCiAXQQFqIhE2AgggCigCBCAXaiANOgAAIB5BAWsiHg0ACwwCCyAKKAIAIAooAggiDGtBA00EQCAKIAxBBEEBQQEQ1gYgCigCCCEMCyAKIAxBBGo2AgggCigCBCAMakEINgAADAELIBkoAgAiCigCCCEMIAwgCigCAEYEQCAKIAxBAUEBQQEQ1gYgCigCCCEMCyAKIAxBAWo2AgggCigCBCAMakEAOgAACyAbKAIsIQsgGygCKCEKIBkoAgAiDSgCCCEMIA0oAgAgDGtBA00EQCANIAxBBEEBQQEQ1gYgDSgCCCEMCyANKAIEIAxqIAo2AAAgDSAMQQRqIgw2AgggDSgCACAMa0EDTQRAIA0gDEEEQQFBARDWBiANKAIIIQwLIA0gDEEEajYCCCANKAIEIAxqIAs2AAAgGygCNCELIBsoAjAhCiAZKAIAIg0oAgghDCANKAIAIAxrQQNNBEAgDSAMQQRBAUEBENYGIA0oAgghDAsgDSgCBCAMaiAKNgAAIA0gDEEEaiIMNgIIIA0oAgAgDGtBA00EQCANIAxBBEEBQQEQ1gYgDSgCCCEMCyANIAxBBGo2AgggDSgCBCAMaiALNgAAIBUgG0E4aiIbRw0ACwsgGSATKAIcIBMoAiAQmwUiDA0AIBMoAighDiATKAIsIgqtISsgGSgCACIWKAIIIQwgFigCACAMa0EHTQRAIBYgDEEIQQFBARDWBiAWKAIIIQwLIBYgDEEIaiILNgIIIBYoAgQgDGogKzcAACAKBEAgCkEUbCESQQAhDwNAIA4gD2oiFUERai0AACEMIBVBEGotAAAhCiALIBYoAgBGBEAgFiALQQFBAUEBENYGIBYoAgghCwsgFigCBCALaiAKOgAAIBYgC0EBaiILNgIIIAsgFigCAEYEQCAWIAtBAUEBQQEQ1gYgFigCCCELCyAWKAIEIAtqIAxBAXE6AAAgFiALQQFqIgs2AgggFUEEaigCACEMIBUoAgAhCiAWKAIAIAtrQQNNBEAgFiALQQRBAUEBENYGIBYoAgghCwsgFigCBCALaiAKNgAAIBYgC0EEaiILNgIIIBYoAgAgC2tBA00EQCAWIAtBBEEBQQEQ1gYgFigCCCELCyAWKAIEIAtqIAw2AAAgFiALQQRqIgs2AgggFUEMaigCACENIBVBCGooAgAhCiAWKAIAIAtrQQNNBEAgFiALQQRBAUEBENYGIBYoAgghCwsgFigCBCALaiAKNgAAIBYgC0EEaiIMNgIIIBYoAgAgDGtBA00EQCAWIAxBBEEBQQEQ1gYgFigCCCEMCyAWIAxBBGoiCzYCCCAWKAIEIAxqIA02AAAgEiAPQRRqIg9HDQALCyATKAI0IQsgEygCOCIKrSErIBkoAgAiDigCCCEMIA4oAgAgDGtBB00EQCAOIAxBCEEBQQEQ1gYgDigCCCEMCyAOIAxBCGoiDTYCCCAOKAIEIAxqICs3AABBACEMIApFDQAgCyAKQQxsaiESA0AgCygCACEKIA4oAgAgDWtBA00EQCAOIA1BBEEBQQEQ1gYgDigCCCENCyAOKAIEIA1qIAo2AAAgDiANQQRqIg02AgggC0EIaigCACETIAtBBGooAgAhCiAOKAIAIA1rQQNNBEAgDiANQQRBAUEBENYGIA4oAgghDQsgDigCBCANaiAKNgAAIA4gDUEEaiIPNgIIIA4oAgAgD2tBA00EQCAOIA9BBEEBQQEQ1gYgDigCCCEPCyAOIA9BBGoiDTYCCCAOKAIEIA9qIBM2AAAgEiALQQxqIgtHDQALCyAcQRBqJAAgDCIKDQAgHSgCiAMhDSAdKAKMAyIKrSErIBAoAhgiDCgCCCELIAwoAgAgC2tBB00EQCAMIAtBCEEBQQEQ1gYgDCgCCCELCyAMIAtBCGo2AgggDCgCBCALaiArNwAAIAoEQCANIApBgANsaiEOA0ACQAJAAkACQCANKAIAQQFGBEAgECgCGCIMKAIIIQsgDCgCACALa0EDTQRAIAwgC0EEQQFBARDWBiAMKAIIIQsLIAwoAgQgC2pBATYAACAMIAtBBGoiCzYCCCANKAIEIQogDCgCACALa0EESQRAIAwgC0EEQQFBARDWBiAMKAIIIQsLIAwoAgQgC2ogCjYAACAMIAtBBGoiCzYCCCANNQIQISsgDCgCACALa0EHTQRAIAwgC0EIQQFBARDWBiAMKAIIIQsLIAwoAgQgC2ogKzcAACAMIAtBCGoiCzYCCCANNQIUISsgDCgCACALa0EHTQRAIAwgC0EIQQFBARDWBiAMKAIIIQsLIAwoAgQgC2ogKzcAACAMIAtBCGoiCzYCCCANKAIYIQogDCgCACALa0EDTQRAIAwgC0EEQQFBARDWBiAMKAIIIQsLIAwoAgQgC2ogCjYAACAMIAtBBGoiCzYCCCANKAIcIQogDCgCACALa0EDTQRAIAwgC0EEQQFBARDWBiAMKAIIIQsLIAwgC0EEajYCCCAMKAIEIAtqIAo2AAAgEEEYaiILIA1BQGsQzgYiCg0HIA1B0ABqIAsQkAgiCg0HIAsgDUHcAGoQzgYiCg0HIA1B7ABqIAsQkAgiCg0HIA0qAnwhLyANKgJ4IS4gECgCGCIKKAIIIQsgCigCACALa0EDTQRAIAogC0EEQQFBARDWBiAKKAIIIQsLIAooAgQgC2ogLjgAACAKIAtBBGoiCzYCCCAKKAIAIAtrQQNNBEAgCiALQQRBAUEBENYGIAooAgghCwsgCiALQQRqNgIIIAooAgQgC2ogLzgAACANQYABaiAQQRhqIgsQkAgiCg0HIA1BjAFqIAsQkAgiCg0HIA1BsAFqIAsQkAgiCg0HIA1BvAFqIAsQkAgiCg0HIA0qAsgBIS4gECgCGCIKKAIIIQsgCigCACALa0EDTQRAIAogC0EEQQFBARDWBiAKKAIIIQsLIAogC0EEajYCCCAKKAIEIAtqIC44AAAgDUHMAWogEEEYaiILEJAIIgoNByANQdgBaiALEJAIIgoNByANLQDkASEKIBAoAhgiDCgCCCELIAsgDCgCAEYEQCAMIAtBAUEBQQEQ1gYgDCgCCCELCyAMIAtBAWo2AgggDCgCBCALaiAKOgAAIA1BgAJqIBBBGGoiCxCQCCIKDQcgDUGMAmogCxCQCCIKDQcgDSoC6AEhLiAQKAIYIgsoAgghCiALKAIAIAprQQNNBEAgCyAKQQRBAUEBENYGIAsoAgghCgsgCygCBCAKaiAuOAAAIAsgCkEEaiIKNgIIIA0qAuwBIS4gCygCACAKa0EDTQRAIAsgCkEEQQFBARDWBiALKAIIIQoLIAsoAgQgCmogLjgAACALIApBBGoiCjYCCCANKgLwASEuIAsoAgAgCmtBA00EQCALIApBBEEBQQEQ1gYgCygCCCEKCyALKAIEIApqIC44AAAgCyAKQQRqIgo2AgggDSoC9AEhLiALKAIAIAprQQNNBEAgCyAKQQRBAUEBENYGIAsoAgghCgsgCygCBCAKaiAuOAAAIAsgCkEEaiIKNgIIIA0qAvgBIS4gCygCACAKa0EDTQRAIAsgCkEEQQFBARDWBiALKAIIIQoLIAsoAgQgCmogLjgAACALIApBBGoiCjYCCCANKgL8ASEuIAsoAgAgCmtBA00EQCALIApBBEEBQQEQ1gYgCygCCCEKCyALIApBBGo2AgggCygCBCAKaiAuOAAAIA1BqAJqIBBBGGoQkAgiCg0HIA0qArQCIS4gCygCACALKAIIIgprQQNNBEAgCyAKQQRBAUEBENYGIAsoAgghCgsgCyAKQQRqNgIIIAsoAgQgCmogLjgAACANQbgCaiAQQRhqIgsQkAgiCg0HIAsgDUGYAmoQzgYiCg0HIA0tAMgCIQogECgCGCIMKAIIIQsgCyAMKAIARgRAIAwgC0EBQQFBARDWBiAMKAIIIQsLIAwgC0EBajYCCCAMKAIEIAtqIAo6AAAgDSgCxAIiC0UNAiAQKAIYIhMoAgghESARIBMoAgBGBEAgEyARQQFBAUEBENYGIBMoAgghEQsgEyARQQFqIgo2AgggEygCBCARakEBOgAAIAtBBGohDCALKAIAQQFHDQEgDCoCACEuIBMoAgAgCmtBA00EQCATIApBBEEBQQEQ1gYgEygCCCEKCyATKAIEIApqQQE2AAAgEyAKQQRqIgo2AgggEygCACAKa0EDTQRAIBMgCkEEQQFBARDWBiATKAIIIQoLIBMgCkEEajYCCCATKAIEIApqIC44AAAMAwsgECgCGCITKAIIIQwgEygCACAMa0EDTQRAIBMgDEEEQQFBARDWBiATKAIIIQwLIBMgDEEEaiILNgIIIBMoAgQgDGpBADYAACANKAIEQQFGBEAgDSgCCCEKIAsgEygCAEYEQCATIAtBAUEBQQEQ1gYgEygCCCELCyATKAIEIAtqQQE6AAAgEyALQQFqIgs2AgggEygCACALa0EDTQRAIBMgC0EEQQFBARDWBiATKAIIIQsLIBMoAgQgC2ogCjYAACATIAtBBGo2AggMBAsgCyATKAIARgRAIBMgC0EBQQFBARDWBiATKAIIIQsLIBMoAgQgC2pBADoAACATIAtBAWo2AggMAwsgEygCACAKa0EDTQRAIBMgCkEEQQFBARDWBiATKAIIIQoLIBMgCkEEajYCCCATKAIEIApqQQA2AAAgC0EUaiAQQRhqEJAIIgoNBSALKgIgIS4gEygCACATKAIIIgprQQNNBEAgEyAKQQRBAUEBENYGIBMoAgghCgsgEyAKQQRqNgIIIBMoAgQgCmogLjgAACALQSRqIBBBGGoiCxCQCCIKDQUgCyAMEM4GIgpFDQEMBQsgECgCGCIKKAIIIQsgCyAKKAIARgRAIAogC0EBQQFBARDWBiAKKAIIIQsLIAogC0EBajYCCCAKKAIEIAtqQQA6AAALIA1BmAFqIBBBGGoiCxCQCCIKDQMgDUGkAWogCxCQCCIKDQMgDSoCMCEuIBAoAhgiDCgCCCELIAwoAgAgC2tBA00EQCAMIAtBBEEBQQEQ1gYgDCgCCCELCyAMKAIEIAtqIC44AAAgDCALQQRqIgs2AgggDSoCNCEuIAwoAgAgC2tBA00EQCAMIAtBBEEBQQEQ1gYgDCgCCCELCyAMKAIEIAtqIC44AAAgDCALQQRqIgs2AgggDS0APCEKIAsgDCgCAEYEQCAMIAtBAUEBQQEQ1gYgDCgCCCELCyAMKAIEIAtqIAo6AAAgDCALQQFqIgs2AgggDS0APSEKIAsgDCgCAEYEQCAMIAtBAUEBQQEQ1gYgDCgCCCELCyAMKAIEIAtqIAo6AAAgDCALQQFqNgIIIA0qAjghLiAQKAIYIgooAgghCyAKKAIAIAtrQQNNBEAgCiALQQRBAUEBENYGIAooAgghCwsgCiALQQRqNgIIIAooAgQgC2ogLjgAACANKALsAiELIA0oAvACIgqtISsgECgCGCIVKAIIIREgFSgCACARa0EHTQRAIBUgEUEIQQFBARDWBiAVKAIIIRELIBUgEUEIaiIMNgIIIBUoAgQgEWogKzcAACAKBEAgCyAKQQN0aiESA0AgC0EEaigCACETIAsoAgAhCiAVKAIAIAxrQQNNBEAgFSAMQQRBAUEBENYGIBUoAgghDAsgFSgCBCAMaiAKNgAAIBUgDEEEaiIRNgIIIBUoAgAgEWtBA00EQCAVIBFBBEEBQQEQ1gYgFSgCCCERCyAVIBFBBGoiDDYCCCAVKAIEIBFqIBM2AAAgEiALQQhqIgtHDQALCyANKgLUAiEuIBAoAhgiCigCCCELIAooAgAgC2tBA00EQCAKIAtBBEEBQQEQ1gYgCigCCCELCyAKKAIEIAtqIC44AAAgCiALQQRqIgs2AgggDSoC2AIhLiAKKAIAIAtrQQNNBEAgCiALQQRBAUEBENYGIAooAgghCwsgCigCBCALaiAuOAAAIAogC0EEaiILNgIIIA0qAtwCIS4gCigCACALa0EDTQRAIAogC0EEQQFBARDWBiAKKAIIIQsLIAooAgQgC2ogLjgAACAKIAtBBGoiCzYCCCANKgLgAiEuIAooAgAgC2tBA00EQCAKIAtBBEEBQQEQ1gYgCigCCCELCyAKKAIEIAtqIC44AAAgCiALQQRqNgIIIA0tAOQCIQogECgCGCIMKAIIIQsgCyAMKAIARgRAIAwgC0EBQQFBARDWBiAMKAIIIQsLIAwoAgQgC2ogCjoAACAMIAtBAWo2AgggDSgCzAIhCiAQKAIYIgwoAgghCyAMKAIAIAtrQQNNBEAgDCALQQRBAUEBENYGIAwoAgghCwsgDCgCBCALaiAKNgAAIAwgC0EEajYCCCAQKAIYIgwoAgghCyAMKAIAIAtrIQoCQAJAAkACQAJAAkAgDS0A9QJBAWsOAwECAwALQQAhESAKQQRJDQMMBAtBASERIApBBEkNAgwDC0ECIREgCkEESQ0BDAILQQMhESAKQQNLDQELIAwgC0EEQQFBARDWBiAMKAIIIQsLIAwoAgQgC2ogETYAACAMIAtBBGo2AgggDS0A9AIhCiAQKAIYIgwoAgghCyALIAwoAgBGBEAgDCALQQFBAUEBENYGIAwoAgghCwsgDCgCBCALaiAKOgAAIAwgC0EBajYCCCANLQD2AiEKIBAoAhgiDCgCCCELIAsgDCgCAEYEQCAMIAtBAUEBQQEQ1gYgDCgCCCELCyAMKAIEIAtqIAo6AAAgDCALQQFqNgIIIA01AtACISsCfyAQKAIYIgsoAgghDCALIgogCigCACAMa0EHSw0AGiAKIAxBCEEBQQEQ1gYgCigCCCEMIBAoAhgLIQogCyAMQQhqNgIIIAsoAgQgDGogKzcAACANKQMoISwgDSkDICErIAooAgAgCigCCCILa0EPTQRAIAogC0EQQQFBARDWBiAKKAIIIQsLIAogC0EQajYCCCAKKAIEIAtqIgogLDcACCAKICs3AAALIA4gDUGAA2oiDUcNAAsLIB0oApADIQogECgCGCIMKAIIIQsgDCgCACALa0EDTQRAIAwgC0EEQQFBARDWBiAMKAIIIQsLIAwoAgQgC2ogCjYAACAMIAtBBGo2AgggECgCGCIMAn8gHSgC/AJBAUYEQCAdKAKAAyEKIAwoAggiCyAMKAIARgRAIAwgC0EBQQFBARDWBiAMKAIIIQsLIAwoAgQgC2pBAToAACAMIAtBAWoiCzYCCCAMKAIAIAtrQQNNBEAgDCALQQRBAUEBENYGIAwoAgghCwsgDCgCBCALaiAKNgAAIAtBBGoMAQsgDCgCCCILIAwoAgBGBEAgDCALQQFBAUEBENYGIAwoAgghCwsgDCgCBCALakEAOgAAIAtBAWoLNgIIIB01ApQDISsCfyAQKAIYIgsoAgghDSALIgogCigCACANa0EHSw0AGiAKIA1BCEEBQQEQ1gYgCigCCCENIBAoAhgLIQogCyANQQhqNgIIIAsoAgQgDWogKzcAACAdKAL0AiELIB0oAvgCIhOtISsgCigCACAKKAIIIgxrQQdNBEAgCiAMQQhBAUEBENYGIAooAgghDAsgCiAMQQhqIg02AgggCigCBCAMaiArNwAAIBMEQCALIBNBA3RqIRIDQCALQQRqKAIAIRMgCygCACEMIAooAgAgDWtBA00EQCAKIA1BBEEBQQEQ1gYgCigCCCENCyAKKAIEIA1qIAw2AAAgCiANQQRqIgw2AgggCigCACAMa0EDTQRAIAogDEEEQQFBARDWBiAKKAIIIQwLIAogDEEEaiINNgIIIAooAgQgDGogEzYAACASIAtBCGoiC0cNAAsLQQAhESAUKAIMIRIgFCgCECIKrSErIBBBGGoiCygCACIMKAIIIQ8gDCgCACAPa0EHTQRAIAwgD0EIQQFBARDWBiAMKAIIIQ8LIAwgD0EIajYCCCAMKAIEIA9qICs3AAACQCAKBEAgCkGwAWwhEwNAAkACQAJAAkACQCARIBJqIhUoAgBBAUYEQCALKAIAIgooAgghDSAKKAIAIA1rQQNNBEAgCiANQQRBAUEBENYGIAooAgghDQsgCiANQQRqNgIIIAooAgQgDWpBATYAACAVQQRqKAIAIQogCygCACIMKAIIIQ0gDCgCACANa0EESQRAIAwgDUEEQQFBARDWBiAMKAIIIQ0LIAwgDUEEajYCCCAMKAIEIA1qIAo2AAAgFUGoAWotAAAhCiALKAIAIgwoAgghDSAMKAIAIA1rQQNNBEAgDCANQQRBAUEBENYGIAwoAgghDQsgDCgCBCANaiAKNgAAIAwgDUEEajYCCCAVQdAAaiALEC0iCg0IIBVByABqKAIAQQFrDgICAwELIAsoAgAiCigCCCENIAooAgAgDWtBA00EQCAKIA1BBEEBQQEQ1gYgCigCCCENCyAKIA1BBGo2AgggCigCBCANakEANgAAIAsoAgAhDCAVQQRqKAIAQQFGBEAgFUEIaigCACEKIAwoAggiDyAMKAIARgRAIAwgD0EBQQFBARDWBiAMKAIIIQ8LIAwoAgQgD2pBAToAACAMIA9BAWoiDzYCCCAMKAIAIA9rQQNNBEAgDCAPQQRBAUEBENYGIAwoAgghDwsgDCgCBCAPaiAKNgAAIAwgD0EEajYCCAwFCyAMKAIIIg8gDCgCAEYEQCAMIA9BAUEBQQEQ1gYgDCgCCCEPCyAMKAIEIA9qQQA6AAAgDCAPQQFqNgIIDAQLIBVBzABqKgIAIS4gCygCACIKKAIIIQ0gCigCACANa0EDTQRAIAogDUEEQQFBARDWBiAKKAIIIQ0LIAooAgQgDWpBADYAACAKIA1BBGoiDTYCCCAKKAIAIA1rQQNNBEAgCiANQQRBAUEBENYGIAooAgghDQsgCiANQQRqNgIIIAooAgQgDWogLjgAAAwCCyAVQcwAaioCACEuIAsoAgAiCigCCCENIAooAgAgDWtBA00EQCAKIA1BBEEBQQEQ1gYgCigCCCENCyAKKAIEIA1qQQE2AAAgCiANQQRqIg02AgggCigCACANa0EDTQRAIAogDUEEQQFBARDWBiAKKAIIIQ0LIAogDUEEajYCCCAKKAIEIA1qIC44AAAMAQsgFUHMAGooAgAhDCALKAIAIg0oAgghCiANKAIAIAprQQNNBEAgDSAKQQRBAUEBENYGIA0oAgghCgsgDSAKQQRqNgIIIA0oAgQgCmpBAjYAACAMQRBqIAsQkAgiCg0EIAwqAhwhLiANKAIAIA0oAggiCmtBA00EQCANIApBBEEBQQEQ1gYgDSgCCCEKCyANIApBBGo2AgggDSgCBCAKaiAuOAAAIAxBIGogCxCQCCIKDQQgCyAMEM4GIgoNBAsgFUGAAWooAgAhCiALKAIAIgwoAgghDSAMKAIAIA1rQQNNBEAgDCANQQRBAUEBENYGIAwoAgghDQsgDCANQQRqNgIIIAwoAgQgDWogCjYAAAJAIBVBIGooAgBBAUYEQCALKAIAIg4oAgghDSANIA4oAgBGBEAgDiANQQFBAUEBENYGIA4oAgghDQsgDigCBCANakEBOgAAIA4gDUEBaiINNgIIIBVBJGooAgAhDCAVQShqKAIAIQogDigCACANa0EDTQRAIA4gDUEEQQFBARDWBiAOKAIIIQ0LIA4oAgQgDWogDDYAACAOIA1BBGoiDTYCCCAOKAIAIA1rQQNNBEAgDiANQQRBAUEBENYGIA4oAgghDQsgDiANQQRqNgIIIA4oAgQgDWogCjYAACALIBVBLGoQzgYiCg0FIBVBPGogCxCQCCIKRQ0BDAULIAsoAgAiCigCCCENIA0gCigCAEYEQCAKIA1BAUEBQQEQ1gYgCigCCCENCyAKIA1BAWo2AgggCigCBCANakEAOgAACyALIBVBhAFqEM4GIgoNAyAVQZQBaiALEJAIIgoNAyAVQfQAaioCACEuIAsoAgAiDigCCCENIA4oAgAgDWtBA00EQCAOIA1BBEEBQQEQ1gYgDigCCCENCyAOKAIEIA1qIC44AAAgDiANQQRqIg02AgggFUH4AGoqAgAhLiAOKAIAIA1rQQNNBEAgDiANQQRBAUEBENYGIA4oAgghDQsgDigCBCANaiAuOAAAIA4gDUEEaiINNgIIIA4oAgAgDWshCgJAAkACQAJAAkACQCAVQfwAai0AAEEBaw4DAQIDAAtBACEMIApBBEkNAwwEC0EBIQwgCkEESQ0CDAMLQQIhDCAKQQRJDQEMAgtBAyEMIApBA0sNAQsgDiANQQRBAUEBENYGIA4oAgghDQsgDigCBCANaiAMNgAAIA4gDUEEaiINNgIIIA4oAgAgDWshCgJAAkACQAJAAkACQCAVQf0Aai0AAEEBaw4DAQIDAAtBACEMIApBBEkNAwwEC0EBIQwgCkEESQ0CDAMLQQIhDCAKQQRJDQEMAgtBAyEMIApBA0sNAQsgDiANQQRBAUEBENYGIA4oAgghDQsgDigCBCANaiAMNgAAIA4gDUEEajYCCCAVQfAAai8BACEKIAsoAgAiDigCCCENIA4oAgAgDWtBAU0EQCAOIA1BAkEBQQEQ1gYgDigCCCENCyAOKAIEIA1qIAo7AAAgDiANQQJqIg02AgggFUHYAGooAgAhDCAVQdwAaigCACEKIA4oAgAgDWtBA00EQCAOIA1BBEEBQQEQ1gYgDigCCCENCyAOKAIEIA1qIAw2AAAgDiANQQRqIg02AgggDigCACANa0EDTQRAIA4gDUEEQQFBARDWBiAOKAIIIQ0LIA4oAgQgDWogCjYAACAOIA1BBGoiDTYCCCAVQeQAaigCACEMIBVB4ABqKAIAIQogDigCACANa0EDTQRAIA4gDUEEQQFBARDWBiAOKAIIIQ0LIA4oAgQgDWogCjYAACAOIA1BBGoiDTYCCCAOKAIAIA1rQQNNBEAgDiANQQRBAUEBENYGIA4oAgghDQsgDigCBCANaiAMNgAAIA4gDUEEaiINNgIIIBVB6ABqKAIAIQogDigCACANa0EDTQRAIA4gDUEEQQFBARDWBiAOKAIIIQ0LIA4gDUEEajYCCCAOKAIEIA1qIAo2AAAgFUHsAGooAgAhCiALKAIAIgwoAgghDSAMKAIAIA1rQQNNBEAgDCANQQRBAUEBENYGIAwoAgghDQsgDCANQQRqNgIIIAwoAgQgDWogCjYAACALKAIAIg4oAgghDSAOKAIAIA1rIQwCQAJAAkACQAJAIBVB8gBqLQAAQQFrDgIBAgALQQAhCiAMQQRJDQIMAwtBASEKIAxBBEkNAQwCC0ECIQogDEEDSw0BCyAOIA1BBEEBQQEQ1gYgDigCCCENCyAOKAIEIA1qIAo2AAAgDiANQQRqNgIIIBVBoAFqKgIAIS4gCygCACIKKAIIIQ0gCigCACANa0EDTQRAIAogDUEEQQFBARDWBiAKKAIIIQ0LIAogDUEEajYCCCAKKAIEIA1qIC44AAAgFUGkAWoqAgAhLiALKAIAIgooAgghDSAKKAIAIA1rQQNNBEAgCiANQQRBAUEBENYGIAooAgghDQsgCiANQQRqNgIIIAooAgQgDWogLjgAACAVQRhqKQMAISwgFUEQaikDACErIAsoAgAiCigCCCEPIAooAgAgD2tBD00EQCAKIA9BEEEBQQEQ1gYgCigCCCEPCyAKIA9BEGo2AgggCigCBCAPaiIKICw3AAggCiArNwAACyATIBFBsAFqIhFHDQALCyAUKAIUIQogCygCACIMKAIIIQ8gDCgCACAPa0EDTQRAIAwgD0EEQQFBARDWBiAMKAIIIQ8LIAwgD0EEajYCCCAMKAIEIA9qIAo2AAAgCygCACIMAn8gFCgCAEEBRgRAIBQoAgQhCiAMKAIIIg8gDCgCAEYEQCAMIA9BAUEBQQEQ1gYgDCgCCCEPCyAMKAIEIA9qQQE6AAAgDCAPQQFqIg82AgggDCgCACAPa0EDTQRAIAwgD0EEQQFBARDWBiAMKAIIIQ8LIAwoAgQgD2ogCjYAACAPQQRqDAELIAwoAggiDyAMKAIARgRAIAwgD0EBQQFBARDWBiAMKAIIIQ8LIAwoAgQgD2pBADoAACAPQQFqCzYCCCAUNQIYISsgCygCACIKKAIIIQ8gCigCACAPa0EHTQRAIAogD0EIQQFBARDWBiAKKAIIIQ8LIAogD0EIajYCCCAKKAIEIA9qICs3AAAgFCgCICEPIBQoAiQiCq0hKyALKAIAIhIoAgghDSASKAIAIA1rQQdNBEAgEiANQQhBAUEBENYGIBIoAgghDQsgEiANQQhqIhE2AgggEigCBCANaiArNwAAIAoEQCAPIApBA3RqIRMDQCAPQQRqKAIAIQwgDygCACEKIBIoAgAgEWtBA00EQCASIBFBBEEBQQEQ1gYgEigCCCERCyASKAIEIBFqIAo2AAAgEiARQQRqIg02AgggEigCACANa0EDTQRAIBIgDUEEQQFBARDWBiASKAIIIQ0LIBIgDUEEaiIRNgIIIBIoAgQgDWogDDYAACATIA9BCGoiD0cNAAsLIBQoAiwhDyAUKAIwIgytISsgCygCACISKAIIIREgEigCACARa0EHTQRAIBIgEUEIQQFBARDWBiASKAIIIRELIBIgEUEIaiINNgIIIBIoAgQgEWogKzcAAEEAIQogDEUNACAPIAxBA3RqIRMDQCAPQQRqKAIAIRQgDygCACEMIBIoAgAgDWtBA00EQCASIA1BBEEBQQEQ1gYgEigCCCENCyASKAIEIA1qIAw2AAAgEiANQQRqIhE2AgggEigCACARa0EDTQRAIBIgEUEEQQFBARDWBiASKAIIIRELIBIgEUEEaiINNgIIIBIoAgQgEWogFDYAACATIA9BCGoiD0cNAAsLIAoNACAaKAIcIhUoAjQhCiAVKAI4IgytISsgCyITKAIAIgsoAgghDSALKAIAIA1rQQdNBEAgCyANQQhBAUEBENYGIAsoAgghDQsgCyANQQhqIg82AgggCygCBCANaiArNwAAIAwEQCAKIAxBA3RqIRIDQCAKQQRqKAIAIRQgCigCACEMIAsoAgAgD2tBA00EQCALIA9BBEEBQQEQ1gYgCygCCCEPCyALKAIEIA9qIAw2AAAgCyAPQQRqIg02AgggCygCACANa0EDTQRAIAsgDUEEQQFBARDWBiALKAIIIQ0LIAsgDUEEaiIPNgIIIAsoAgQgDWogFDYAACASIApBCGoiCkcNAAsLIBUoAkghDSAVKAJMIgytISsgCygCACAPa0EHTQRAIAsgD0EIQQFBARDWBiALKAIIIQ8LIAsgD0EIaiIKNgIIIAsoAgQgD2ogKzcAACAMBEAgDEEMbCEPA0ACfyANKAIAQQFGBEAgCygCACAKa0EDTQRAIAsgCkEEQQFBARDWBiALKAIIIQoLIAsoAgQgCmpBATYAACALIApBBGoiCjYCCCANQQRqKAIAIQwgCygCACAKa0EESQRAIAsgCkEEQQFBARDWBiALKAIIIQoLIAsoAgQgCmogDDYAACALIApBBGoiCjYCCCANQQhqKAIAIQwgCygCACAKa0EDTQRAIAsgCkEEQQFBARDWBiALKAIIIQoLIAsoAgQgCmogDDYAACAKQQRqDAELIAsoAgAgCmtBA00EQCALIApBBEEBQQEQ1gYgCygCCCEKCyALIApBBGoiETYCCCALKAIEIApqQQA2AAAgDUEEaigCAEEBRgRAIA1BCGooAgAhDCARIAsoAgBGBEAgCyARQQFBAUEBENYGIAsoAgghEQsgCygCBCARakEBOgAAIAsgEUEBaiIKNgIIIAsoAgAgCmtBA00EQCALIApBBEEBQQEQ1gYgCygCCCEKCyALKAIEIApqIAw2AAAgCkEEagwBCyARIAsoAgBGBEAgCyARQQFBAUEBENYGIAsoAgghEQsgCygCBCARakEAOgAAIBFBAWoLIQogDUEMaiENIAsgCjYCCCAPQQxrIg8NAAsLIBUoAlAhDCALKAIAIAprQQNNBEAgCyAKQQRBAUEBENYGIAsoAgghCgsgCyAKQQRqIg02AgggCygCBCAKaiAMNgAAIAsCfyAVKAI8QQFGBEAgFSgCQCEMIA0gCygCAEYEQCALIA1BAUEBQQEQ1gYgCygCCCENCyALKAIEIA1qQQE6AAAgCyANQQFqIgo2AgggCygCACAKa0EDTQRAIAsgCkEEQQFBARDWBiALKAIIIQoLIAsoAgQgCmogDDYAACAKQQRqDAELIA0gCygCAEYEQCALIA1BAUEBQQEQ1gYgCygCCCENCyALKAIEIA1qQQA6AAAgDUEBagsiCjYCCCAVNQJUISsgCygCACAKa0EHTQRAIAsgCkEIQQFBARDWBiALKAIIIQoLIAsgCkEIajYCCCALKAIEIApqICs3AAACQCATIBUoAhwgFSgCIBCbBSINDQAgFSgCKCESIBUoAiwiDK0hKyALKAIAIAsoAggiCmtBB00EQCALIApBCEEBQQEQ1gYgCygCCCEKCyALIApBCGo2AgggCygCBCAKaiArNwAAIAwEQCAMQYADbCEUQQAhDwNAIA8gEmoiDkHEAmooAgAhCyAOQcACaigCACEKIBMoAgAiDCgCCCENIAwoAgAgDWtBA00EQCAMIA1BBEEBQQEQ1gYgDCgCCCENCyAMKAIEIA1qIAo2AAAgDCANQQRqIg02AgggDCgCACANa0EDTQRAIAwgDUEEQQFBARDWBiAMKAIIIQ0LIAwoAgQgDWogCzYAACAMIA1BBGoiDTYCCCAOQcwCaigCACELIA5ByAJqKAIAIQogDCgCACANa0EDTQRAIAwgDUEEQQFBARDWBiAMKAIIIQ0LIAwoAgQgDWogCjYAACAMIA1BBGoiDTYCCCAMKAIAIA1rQQNNBEAgDCANQQRBAUEBENYGIAwoAgghDQsgDCANQQRqNgIIIAwoAgQgDWogCzYAACATIA4QsgYiDQ0CIBMgDkHQAmoQjQUiDQ0CIA5B7AJqKAIAIQsgDkHoAmooAgAhCiATKAIAIgwoAgghDSAMKAIAIA1rQQNNBEAgDCANQQRBAUEBENYGIAwoAgghDQsgDCgCBCANaiAKNgAAIAwgDUEEaiINNgIIIAwoAgAgDWtBA00EQCAMIA1BBEEBQQEQ1gYgDCgCCCENCyAMIA1BBGo2AgggDCgCBCANaiALNgAAIA5B9AJqKAIAIQsgDkHwAmooAgAhCiATKAIAIgwoAgghDSAMKAIAIA1rQQNNBEAgDCANQQRBAUEBENYGIAwoAgghDQsgDCgCBCANaiAKNgAAIAwgDUEEaiINNgIIIAwoAgAgDWtBA00EQCAMIA1BBEEBQQEQ1gYgDCgCCCENCyAMIA1BBGo2AgggDCgCBCANaiALNgAAIA5B/AJqKAIAIQwgDkH4AmooAgAhCyATKAIAIg0oAgghCiANKAIAIAprQQNNBEAgDSAKQQRBAUEBENYGIA0oAgghCgsgDSgCBCAKaiALNgAAIA0gCkEEaiIKNgIIIA0oAgAgCmtBA00EQCANIApBBEEBQQEQ1gYgDSgCCCEKCyANIApBBGo2AgggDSgCBCAKaiAMNgAAIBQgD0GAA2oiD0cNAAsLIBMgFSgCACAVKAIMELcFIQ0LIA0iCg0AIBooAiAiFSgCTCILrSErIBMoAgAiDSgCCCEKIBUoAkgiDCALQaQCbGohDiANKAIAIAprQQdNBEAgDSAKQQhBAUEBENYGIA0oAgghCgsgDSAKQQhqNgIIIA0oAgQgCmogKzcAAANAAkACQCAMIA5HBEAgDEGkAmohCwJAIAwoAgBBgICAgHhHBEAgEygCACINKAIIIQogDSgCACAKa0EDTQRAIA0gCkEEQQFBARDWBiANKAIIIQoLIA0gCkEEajYCCCANKAIEIApqQQE2AAAgDCgCoAIhDSATKAIAIhQoAgghCiAUKAIAIAprQQRJBEAgFCAKQQRBAUEBENYGIBQoAgghCgsgFCAKQQRqNgIIIBQoAgQgCmogDTYAACAMKAIEIQ0gDCgCCCIKrSErIBMoAgAiFCgCCCESIBQoAgAgEmtBB00EQCAUIBJBCEEBQQEQ1gYgFCgCCCESCyAUIBJBCGo2AgggFCgCBCASaiArNwAAIApB8ANsIQ8DQCAPRQ0CIA01ApADISsgEygCACIWKAIIIRIgFigCACASa0EHTQRAIBYgEkEIQQFBARDWBiAWKAIIIRILIBYoAgQgEmogKzcAACAWIBJBCGoiEjYCCCANNQKUAyErIBYoAgAgEmtBB00EQCAWIBJBCEEBQQEQ1gYgFigCCCESCyAWKAIEIBJqICs3AAAgFiASQQhqIhI2AgggDTUCmAMhKyAWKAIAIBJrQQdNBEAgFiASQQhBAUEBENYGIBYoAgghEgsgFigCBCASaiArNwAAIBYgEkEIaiISNgIIIA0oAvQCIRQgDSgC8AIhCiAWKAIAIBJrQQNNBEAgFiASQQRBAUEBENYGIBYoAgghEgsgFigCBCASaiAKNgAAIBYgEkEEaiISNgIIIBYoAgAgEmtBA00EQCAWIBJBBEEBQQEQ1gYgFigCCCESCyAWIBJBBGo2AgggFigCBCASaiAUNgAAIBMgDUEQahCyBiIKDQUgDS0A6AIhCiATKAIAIhQoAgghEiASIBQoAgBGBEAgFCASQQFBAUEBENYGIBQoAgghEgsgFCASQQFqNgIIIBQoAgQgEmogCjoAACATIA1B0AJqEI0FIgoNBSATIA0QzgYiCg0FIBMgDUGcA2oQzgYiCg0FIA1BrANqIBMQkAgiCg0FIBMgDUG4A2oQzgYiCg0FIA1ByANqIBMQkAgiCg0FIA1B1ANqIBMQkAgiCg0FIA1B4ANqIBMQkAgiCg0FIA1B+AJqIBMQkAgiCg0FIA9B8ANrIQ8gDUGEA2ohCiANQfADaiENIAogExCQCCIKRQ0ACwwECyATKAIAIg0oAgghCiANKAIAIAprQQNNBEAgDSAKQQRBAUEBENYGIA0oAgghCgsgDSAKQQRqNgIIIA0oAgQgCmpBADYAACATKAIAIg0CfyAMKAIEQQFGBEAgDCgCCCEMIA0oAggiCiANKAIARgRAIA0gCkEBQQFBARDWBiANKAIIIQoLIA0oAgQgCmpBAToAACANIApBAWoiCjYCCCANKAIAIAprQQNNBEAgDSAKQQRBAUEBENYGIA0oAgghCgsgDSgCBCAKaiAMNgAAIApBBGoMAQsgDSgCCCIKIA0oAgBGBEAgDSAKQQFBAUEBENYGIA0oAgghCgsgDSgCBCAKakEAOgAAIApBAWoLNgIIQQAhCgwCCyATIAxBDGoQ4gYiCg0CIBMgDEEcahDiBiIKDQIgEyAMQSxqEOIGIgoNAiAMKAJAIRIgDCgCRCIKrSErIBMoAgAiFCgCCCENIBQoAgAgDWtBB00EQCAUIA1BCEEBQQEQ1gYgFCgCCCENCyAUIA1BCGo2AgggFCgCBCANaiArNwAAIApBBHQhDQNAIA0EQCANQRBrIQ0gEiAUEOoGIQogEkEQaiESIApFDQEMBAsLIBMgDEHIAGoQ5AUiCg0CIBMgDEHcAGoQjAUiCg0CIAw1ApABISsgEygCACIUKAIIIQogFCgCACAKa0EHTQRAIBQgCkEIQQFBARDWBiAUKAIIIQoLIBQoAgQgCmogKzcAACAUIApBCGoiDzYCCCAMKAKIASEKIAwoAowBIg2tISsgFCgCACAPa0EHTQRAIBQgD0EIQQFBARDWBiAUKAIIIQ8LIBQgD0EIaiISNgIIIBQoAgQgD2ogKzcAACANBEAgDUECdCEXA0AgCjUCACErIApBBGohCiAUIBQoAgAgEmtBB0sEfyASBSAUIBJBCEEBQQEQ1gYgFCgCCAsiDUEIaiISNgIIIBQoAgQgDWogKzcAACAXQQRrIhcNAAsLIBMgDEGUAWoQ5AUiCg0CIBMgDEGoAWoQjAUiCg0CIAw1ApQCISsgEygCACINKAIIIQogDSgCACAKa0EHTQRAIA0gCkEIQQFBARDWBiANKAIIIQoLIA0gCkEIajYCCCANKAIEIApqICs3AAAgDC0AnAIhDSATKAIAIhQoAgghCiAKIBQoAgBGBEAgFCAKQQFBAUEBENYGIBQoAgghCgsgFCAKQQFqNgIIIBQoAgQgCmogDToAACAMKAKYAiENIBMoAgAiFCgCCCEKIBQoAgAgCmtBA00EQCAUIApBBEEBQQEQ1gYgFCgCCCEKCyAUIApBBGo2AgggFCgCBCAKaiANNgAAIAwtAJ0CIQ0gEygCACIUKAIIIQogCiAUKAIARgRAIBQgCkEBQQFBARDWBiAUKAIIIQoLIBQgCkEBajYCCCAUKAIEIApqIA06AAAgDCgC1AEhDSAMKALYASIKrSErIBMoAgAiFCgCCCESIBQoAgAgEmtBB00EQCAUIBJBCEEBQQEQ1gYgFCgCCCESCyAUIBJBCGo2AgggFCgCBCASaiArNwAAIApBGGwhEgNAIBIEQCANIBMQkAgiCg0EIBJBGGshEiANQQxqIQogDUEYaiENIAogExCQCCIKRQ0BDAQLCyATIAxB3AFqEOIGIgoNAiATIAwoAvABIAwoAvQBEK0FIgoNAiATIAwoAvwBIAwoAoACEK0FIgoNAiAMQYQCaiATKAIAEOoGIQoMAQsgFSgCUCELIBMoAgAiDCgCCCEKIAwoAgAgCmtBA00EQCAMIApBBEEBQQEQ1gYgDCgCCCEKCyAMIApBBGo2AgggDCgCBCAKaiALNgAAIBMoAgAiDAJ/IBUoAjxBAUYEQCAVKAJAIQsgDCgCCCIKIAwoAgBGBEAgDCAKQQFBAUEBENYGIAwoAgghCgsgDCgCBCAKakEBOgAAIAwgCkEBaiIKNgIIIAwoAgAgCmtBA00EQCAMIApBBEEBQQEQ1gYgDCgCCCEKCyAMKAIEIApqIAs2AAAgCkEEagwBCyAMKAIIIgogDCgCAEYEQCAMIApBAUEBQQEQ1gYgDCgCCCEKCyAMKAIEIApqQQA6AAAgCkEBags2AgggFTUCVCErIBMoAgAiCygCCCEKIAsoAgAgCmtBB00EQCALIApBCEEBQQEQ1gYgCygCCCEKCyALIApBCGo2AgggCygCBCAKaiArNwAAIBUoAjQhCiAVKAI4IgutISsgEygCACIOKAIIIRIgDigCACASa0EHTQRAIA4gEkEIQQFBARDWBiAOKAIIIRILIA4gEkEIaiIMNgIIIA4oAgQgEmogKzcAACALBEAgCiALQRRsaiEUA0AgCigCACELIA4oAgAgDGtBA00EQCAOIAxBBEEBQQEQ1gYgDigCCCEMCyAOKAIEIAxqIAs2AAAgDiAMQQRqIgw2AgggCkEMaigCACELIA4oAgAgDGtBA00EQCAOIAxBBEEBQQEQ1gYgDigCCCEMCyAOKAIEIAxqIAs2AAAgDiAMQQRqIgw2AgggCkEIaigCACENIApBBGooAgAhCyAOKAIAIAxrQQNNBEAgDiAMQQRBAUEBENYGIA4oAgghDAsgDigCBCAMaiALNgAAIA4gDEEEaiIMNgIIIA4oAgAgDGtBA00EQCAOIAxBBEEBQQEQ1gYgDigCCCEMCyAOKAIEIAxqIA02AAAgDiAMQQRqIhI2AgggCkEQajUCACErIA4oAgAgEmtBB00EQCAOIBJBCEEBQQEQ1gYgDigCCCESCyAOIBJBCGoiDDYCCCAOKAIEIBJqICs3AAAgFCAKQRRqIgpHDQALCyATIBUoAhwgFSgCIBCbBSIKDQEgFSgCKCEKIBUoAiwiC60hKyATKAIAIg4oAgghEiAOKAIAIBJrQQdNBEAgDiASQQhBAUEBENYGIA4oAgghEgsgDiASQQhqIgw2AgggDigCBCASaiArNwAAIAsEQCAKIAtBBHRqIRQDQCAKQQRqKAIAIQ0gCigCACELIA4oAgAgDGtBA00EQCAOIAxBBEEBQQEQ1gYgDigCCCEMCyAOKAIEIAxqIAs2AAAgDiAMQQRqIgw2AgggDigCACAMa0EDTQRAIA4gDEEEQQFBARDWBiAOKAIIIQwLIA4oAgQgDGogDTYAACAOIAxBBGoiDDYCCCAKQQxqKAIAIQ0gCkEIaigCACELIA4oAgAgDGtBA00EQCAOIAxBBEEBQQEQ1gYgDigCCCEMCyAOKAIEIAxqIAs2AAAgDiAMQQRqIhI2AgggDigCACASa0EDTQRAIA4gEkEEQQFBARDWBiAOKAIIIRILIA4gEkEEaiIMNgIIIA4oAgQgEmogDTYAACAUIApBEGoiCkcNAAsLIBMgFSgCACAVKAIMELcFIQoMAQsgCyEMIApFDQELCyAKRQ0BCyAfQYCAgIB4NgIAIB8gCjYCBCAQKAIIIgpFDQEgECgCDCAKQQEQ6A4MAQsgHyAQKQIINwIAIB9BCGogEEEQaigCADYCAAsgEEEgaiQADAELIAsgCkG0vcEAENcNAAsCQCAaKAIkIhRBgICAgHhHBEAgGigCKCENIBooAiwhChAfIgwQESILIA0gChAWIQogDEGEAU8EQCAMEAILIAtBhAFPBEAgCxACCyAaIAo2AiQgHygCABAXISogCkGEAU8EQCAKEAILQQEhCiAURQ0BIA0gFEEBEOgODAELIBooAigQzQlBACEKCyAYICo2AgQgGCAKNgIAIBpBMGokACAYKAIEIQsgGCgCACEKIAkgCSgCAEEBazYCACApICkoAgBBAWsiCTYCACAJRQRAIBhB/ABqEOoMCyAIIAgoAgBBAWs2AgAgKCAoKAIAQQFrIgg2AgAgCEUEQCAYQfAAahDvDAsgByAHKAIAQQFrNgIAICcgJygCAEEBayIHNgIAIAdFBEAgGEHkAGoQ7gwLIAYgBigCAEEBazYCACAmICYoAgBBAWsiBjYCACAGRQRAIBhB2ABqEOsMCyAFIAUoAgBBAWs2AgAgJSAlKAIAQQFrIgU2AgAgBUUEQCAYQcwAahDpDAsgBCAEKAIAQQFrNgIAICQgJCgCAEEBayIENgIAIARFBEAgGEFAaxDoDAsgAyADKAIAQQFrNgIAICMgIygCAEEBayIDNgIAIANFBEAgGEE0ahDnDAsgAiACKAIAQQFrNgIAICIgIigCAEEBayICNgIAIAJFBEAgGEEoahCoDQsgASABKAIAQQFrNgIAICEgISgCAEEBayIBNgIAIAFFBEAgGEEcahCpDQsgACAAKAIAQQFrNgIAICAgICgCAEEBayIANgIAIABFBEAgGEEQahCmDQsgGEGAAWokACALQQAgCkEBcRsPCxCDDwsACxCEDwAL3woCDX8DfiMAQeAAayICJAACQAJAAkAgASgCBCIDRQRAIABBgICAgHg2AgAMAQsgASADQQFrNgIEIAEoAgAhASACQQI2AhQgAiABNgIQIAJBMGoiAyACQRBqEOACIAIoAjQiDCEBAkACQCACKAIwIgpBgYCAgHhGDQAgAkEgaiACQUBrKAIANgIAIAIgAikCODcDGAJAAkAgCkGAgICAeEcEQCACKAIUIgFFDQEgAiABQQFrNgIUIAIoAhAiBSgCBCIEQQdNBEAgAkKBygA3AzAgAxCfDSEBDAMLIAUgBEEIayIDNgIEIAUgBSgCACIBQQhqIgg2AgAgASkAACIQQoCAgIAQWgRAIAJBAToAMCACIBA3AzggAkEwaiACQcwAakGMrMEAEO8KIQEMAwsCfyADQQdNBEAgAkKBygA3AzBBASEGIAJBMGoQnw0MAQsgBSAEQRBrIgM2AgQgBSABQRBqIgg2AgAgAkEIaiABKQAIEKgIIAIoAgghBiACKAIMCyEBIAZBAXENAgJAIAFFBEBBBCEEQQAhBgwBC0EEIQdBgIAIIAEgAUGAgAhPGyIEQQN0IglBBBCRDiILRQ0HQQAhBiACQQA2AlggAiALNgJUIAIgBDYCUANAIAghCQJAAn8gAyILQQdNBEAgAkKBygA3AzAgAkEwahCfDQwBCyAFIAtBCGsiAzYCBCAFIAlBCGoiBDYCACAJKQAAIg9CgICAgBBaBEAgAkEBOgAwIAIgDzcDOCACQTBqIAJBzABqQYyswQAQ7woMAQsgA0EHTQRAIAJCgcoANwMwIAJBMGoQnw0MAQsgBSADQQhrIgM2AgQgBSAEQQhqIgg2AgAgBCkAACIRQoCAgIAQVA0BIAJBAToAMCACIBE3AzggAkEwaiACQcwAakGMrMEAEO8KCyEBIAIoAlAiA0UNBSACKAJUIANBA3RBBBDoDgwFCyAPpyEEIBGnIQ0gAigCUCAGRgRAIAJB0ABqQdStwQAQtAgLIAIoAlQgB2oiDiANNgIAIA5BBGsgBDYCACACIAZBAWoiBjYCWCAHQQhqIQcgASAGRw0ACyACKAJUIQQgAigCUCIHQYKAgIB4SARAIAQhAQwECyALQRBrIQMgCUEQaiEICwJAAn8gA0EHTQRAIAJCgcoANwMwIAJBMGoQnw0MAQsgBSADQQhrNgIEIAUgCEEIajYCACAIKQAAIg9CgICAgBBUDQEgAkEBOgAwIAIgDzcDOCACQTBqIAJBzABqQYyswQAQ7woLIQEgB0UNAyAEIAdBA3RBBBDoDgwDCyAPpyIBIAZGDQQgAiABNgJIIAIgBjYCTCACQQI2AjQgAkGgzcEANgIwIAJCAjcCPCACIAJBzABqrUKAgICAMIQ3A1ggAiACQcgAaq1CgICAgDCENwNQIAIgAkHQAGo2AjggAkEkaiIBIAJBMGoiAxCHBSADIAEQ+gpBDEEEEJEOIgFFDQcgASACKQIwNwIAIAFBCGogA0EIaigCADYCACACKAIkIgMEQCACKAIoIANBARDoDgsgB0UNAiAEIAdBA3RBBBDoDgwCC0EAQeyxwQBBkK3BABCoCiEBDAILQQFB7LHBAEGQrcEAEKgKIQELIAoEQCAMIApBAnRBBBDoDgsLIABBgYCAgHg2AgAgACABNgIEDAELIAAgAikDGDcCCCAAQRBqIAJBIGooAgA2AgAgACAQPgIkIAAgBq1CgYCAgBB+NwIcIAAgBDYCGCAAIAc2AhQgACAMNgIEIAAgCjYCAAsgAkHgAGokAA8LQQQgCUHErcEAENcNAAtBBEEMQfjKxAAoAgAiAEHMCCAAGxEAAAAL4QkCGH0CfyMAQTBrIh0kAAJAAkAgAyoCDCIHIAeUIAMqAhAiCCAIlJIgAyoCFCIJIAmUkiIFQwAAAABbDQAgBZEiEIsiBUMAAIB/XARAIAVDAAAANF8NASAFIAVDAAAANJRfDQELIAJBADYCvAEgAkEANgKsASACQQA2AjAgAkIANwIoIAIgASoCCCIaIAkgEJUiFYwiCSAVIBWUIAcgEJUiFiAWlCAIIBCVIhcgF5SSkpEiBZUiB5ggByABKgIMIhGUkiIHOAIkIAIgASoCBCIbIBeMIgwgBZUiCJggCCARlJIiCDgCICACIAEqAgAiHCAWjCINIAWVIgWYIAUgEZSSIgU4AhwgAiAHIAMqAggiEpM4AhggAiAIIAMqAgQiE5M4AhQgAiAFIAMqAgAiFJM4AhAgHSACEGtD//9/fyEGQeQAIQECQAJAA0AgHSoCACIOIA6UIB0qAgQiCiAKlJIgHSoCCCILIAuUkiIFQwAAyCteRQ0BIAuMIAWRIg+VIQUgCowgD5UhByAOjCAPlSEIAn0gBiAPXyIeRQRAIBogBSAFIAWUIAggCJQgByAHlJKSkSIGlSILmCARIAuUkiELIBsgByAGlSIKmCARIAqUkiEKIBwgCCAGlSIGmCARIAaUkgwBCyAYQwAAAABeDQIgEiALkiELIBMgCpIhCiAUIA6SCyEOAkACQAJAIBUgBZQgFiAIlCAXIAeUkpIiGUMAAAAAWw0AIBmLIgZDAACAf1wEQCAGQwAAADRfDQEgBiAGQwAAADSUXw0BCyAIIA4gFJOUIAcgCiATk5SSIAUgCyASk5SSIBmVIgZDAAAAAGBFDQAgGUMAAAAAXSAGQwAAAABecQ0BIB5FDQJBACEDDAULQQAhAyAeDQQgGUMAAKA1Xg0EDAELIAQgGCAGkiIYIBCVXQRAQQAhAwwECyASIBUgBpQiCZIhEiATIBcgBpQiDJIhEyAUIBYgBpQiDZIhFEP//39/IQ8CQCACKAK8ASIeQQFqIgNFDQAgAiACKgIQIA2TOAIQIAIgAioCFCAMkzgCFCACIAIqAhggCZM4AhggHkUNACACIAIqAjQgDZM4AjQgAiACKgI4IAyTOAI4IAIgAioCPCAJkzgCPCADQQJGDQAgAiACKgJYIA2TOAJYIAIgAioCXCAMkzgCXCACIAIqAmAgCZM4AmAgA0EDRg0AIAIgAioCfCANkzgCfCACIAIqAoABIAyTOAKAASACIAIqAoQBIAmTOAKEASAFIQkgByEMIAghDSADQQRGDQFBBEEEQbiUwwAQhQsACyAFIQkgByEMIAghDQsgBSALIBKTIgaUIAcgCiATkyIHlCAIIA4gFJMiCJSSkiIFvEH/////B3FB////+wdLBEBBlJLDAEEnQdCSwwAQ1gwAC0EAIQMgDyAFkiAPQ70bjzqUXw0CIB1BADYCLCAdQgA3AiQgHSALOAIgIB0gCjgCHCAdIA44AhggHSAGOAIUIB0gBzgCECAdIAg4AgwgAiAdQQxqEOEDGiAdIAIQayACKAK8AUEDRwRAIA8hBiABQQFrIgENAQwDCwsgBUMAAKC1Xw0BCyAAIAk4AhAgACAMOAIMIAAgDTgCCCAAIBggEJU4AgRBASEDCyAAIAM2AgAMAQsgAEEANgIACyAdQTBqJAAL3gkCA38QfSMAQYABayIMJAAgDCAAKgIYIhU4AhAgDCAAKgIUIhY4AgwgDCAAKgIQIhc4AgggDEHQAGogASAMQQhqIAMRAQAgDC0AXCEDAkAgFyAMKgJQIhqTIg8gD5QgFiAMKgJUIhuTIhEgEZSSIBUgDCoCWCIckyIQIBCUkiITQwAAAABeBEAgECATkSISlSEQIBEgEpUhESAPIBKVIQ8MAQtDAACAPyEPIBcgF5QgFiAWlJIgFSAVlJIiEEMAAAAAXkUEQEMAAAAAIRFDAAAAACEQDAELIBUgEJEiD5UhECAWIA+VIREgFyAPlSEPCyAMKAJkIQ0gDCgCYCEOIAwgEDgCHCAMIBE4AhggDCAPOAIUIANBAXEEQCAMIBCMIhA4AhwgDCARjCIROAIYIAwgD4wiDzgCFCASjCESCwJAIBIgBCAJkl9FBEAgCkEANgJIDAELIAwgACoCDCIdIBEgACoCACIJlCAPIAAqAgQiE5STIhQgFJIiHpQgEyAQIBOUIBEgACoCCCIUlJMiGCAYkiIYlCAJIA8gFJQgECAJlJMiGSAZkiIZlJOSIBCTIhA4AiggDCAdIBmUIAkgHpQgFCAYlJOSIBGTIgk4AiQgDCAdIBiUIBQgGZQgEyAelJOSIA+TIhE4AiACQAJAIAUEQCAFIAAgDEEUaiAMQSBqIAYoAhQREQBFDQELIAdFDQEgByAAIAxBFGogDEEgaiAIKAIYEREADQELIApBADYCSAwBCyAMIAQgDCoCKCIPlDgCNCAMIAQgDCoCJCITlDgCMCAMIAQgDCoCICIUlDgCLAJAAkACQCARIBRcDQAgCSATXA0AIA8gEFsNAQsgDCAVOAJAIAwgFjgCPCAMIBc4AjggDCAMKgIcIgkgCYwgA0EBcSIAGyIQOAJMIAwgDCoCGCIJIAmMIAAbIhE4AkggDCAMKgIUIgkgCYwgABsiDzgCRCAMQdAAaiABIAxBOGpD//9/f0EAIAIRDAAgDCgCUCIOQQRGDQEgDCoCWCIJjCAJIAAbIRIgFSAJIBCUkiEcIBYgCSARlJIhGyAXIAkgD5SSIRogDCgCVCENCyAMIBw4AlggDCAbOAJUIAwgGjgCUCAOIA0Q8gchACAMQegAaiIBQQhqIgMgDEEsaiICIAxB0ABqIgUgCxsiBkEIaigCADYCACABQRRqIAUgAiALGyIBQQhqKAIANgIAIAwgBikCADcDaCAMIAEpAgA3AnQgAEGAgICAfCALGyEBQYCAgIB8IAAgCxshAiASIASTIQQCQCAKKAJIQQFHBEAgCkEANgJIIAooAkBFBEAgCkFAa0Gc98IAEJUICyAKQQE2AkggCigCRCIAIAwpA2g3AgAgACABNgIgIAAgAjYCHCAAIAQ4AhggAEEIaiAMQfAAav0AAwD9CwIADAELIAooAkQiACAMKQNoNwIAIAAgDEH0AGoiBSkCADcCDCAAIAE2AiAgACACNgIcIAAgBDgCGCAAQQhqIAMoAgA2AgAgAEEUaiAFQQhqKAIANgIACyAKIAxBIGoiACAMQRRqIgEgCxsiAikCADcCTCAKIAEgACALGyIAKQIANwJYIApB1ABqIAJBCGooAgA2AgAgCkHgAGogAEEIaigCADYCAAwBCyAKQQA2AkgLIAxBgAFqJAAL8AkCGn0EfyMAQTBrIh8kAAJAAkAgAyoCDCIGIAaUIAMqAhAiCCAIlJIgAyoCFCIJIAmUkiIFQwAAAABbDQAgBZEiEIsiBUMAAIB/XARAIAVDAAAANF8NASAFIAVDAAAANJRfDQELIAJBADYCvAEgAkEANgKsASABKgIEIhsgCCAQlSIajCIKlCABKgIAIhggBiAQlSIUlJMgCSAQlSIVIAEqAggiHJSTIAEqAhAiHSAKlCAUIAEqAgwiGZSTIBUgASoCFCIelJNeISAgAiAYIBkgIBsiBTgCHCACIAEgAUEMaiIiICAbIiAqAgQiBjgCICACIAUgAyoCACIRkzgCECAC/QwAAAAAAAAAAAAAAAAAAAAAICAqAggiBf0gAP0LAiQgAiAFIAMqAggiEpM4AhggAiAGIAMqAgQiE5M4AhQgHyACEGsgFYwhCSAUjCELQ///f38hB0HkACEgAkACQANAIB8qAgAiDCAMlCAfKgIEIg4gDpSSIB8qAggiDSANlJIiBUMAAMgrXkUNASANjCAFkSIPlSEFIA6MIA+VIQYgDIwgD5UhCAJ9IAcgD18iIUUEQCAYIBkgHCAFlCAYIAiUIBsgBpSSkiAeIAWUIBkgCJQgHSAGlJKSXiIDGyEMIAEgIiADGyIDKgIIIQ0gAyoCBAwBCyAWQwAAAABeDQIgEiANkiENIBEgDJIhDCATIA6SCyEOAkACQAJAIBUgBZQgFCAIlCAaIAaUkpIiF0MAAAAAWw0AIBeLIgdDAACAf1wEQCAHQwAAADRfDQEgByAHQwAAADSUXw0BCyAIIAwgEZOUIAYgDiATk5SSIAUgDSASk5SSIBeVIgdDAAAAAGBFDQAgF0MAAAAAXSAHQwAAAABecQ0BICFFDQJBACEDDAULQQAhAyAhDQQgF0MAAKA1Xg0EDAELIAQgFiAHkiIWIBCVXQRAQQAhAwwECyASIBUgB5QiCpIhEiATIBogB5QiCZIhEyARIBQgB5QiC5IhEUP//39/IQ8CQCACKAK8ASIhQQFqIgNFDQAgAiACKgIQIAuTOAIQIAIgAioCFCAJkzgCFCACIAIqAhggCpM4AhggIUUNACACIAIqAjQgC5M4AjQgAiACKgI4IAmTOAI4IAIgAioCPCAKkzgCPCADQQJGDQAgAiACKgJYIAuTOAJYIAIgAioCXCAJkzgCXCACIAIqAmAgCpM4AmAgA0EDRg0AIAIgAioCfCALkzgCfCACIAIqAoABIAmTOAKAASACIAIqAoQBIAqTOAKEASAFIQkgBiEKIAghCyADQQRGDQFBBEEEQbiUwwAQhQsACyAFIQkgBiEKIAghCwsgBSANIBKTIgeUIAYgDiATkyIGlCAIIAwgEZMiCJSSkiIFvEH/////B3FB////+wdLBEBBlJLDAEEnQdCSwwAQ1gwAC0EAIQMgDyAFkiAPQ70bjzqUXw0CIB9BADYCLCAfQgA3AiQgHyANOAIgIB8gDjgCHCAfIAw4AhggHyAHOAIUIB8gBjgCECAfIAg4AgwgAiAfQQxqEOEDGiAfIAIQayACKAK8AUEDRwRAIA8hByAgQQFrIiANAQwDCwsgBUMAAKC1Xw0BCyAAIAk4AhAgACAKOAIMIAAgCzgCCCAAIBYgEJU4AgRBASEDCyAAIAM2AgAMAQsgAEEANgIACyAfQTBqJAALlQ4DBn8BewF+IwBBoAZrIgMkACADQQA2AhAgA0IANwIIIANCgICAgMAANwIAIANBkAVqIgQgAxCDASADQQA2AvQFIANCADcC7AUgA0KAgICAwAA3AuQFIANBuAVqIgYgA0HkBWoiBRCDASADQfwAaiAEQSBqKQIANwIAIANB7ABqIARBEGr9AAIA/QsCACADQQA2AlggA0IANwJQIANCgICAgMAANwJIIANCBDcCQCADQgA3AjggA0IENwIwIANCADcCKCADQgQ3AiAgA0IANwIYIANCBDcCECADQgA3AgggA0KAgICAgAI3AgAgAyAD/QACkAX9CwJcIANByAFqIAZBIGopAgA3AgAgA0G4AWogBkEQav0AAgD9CwIAIANBADYCpAEgA0IANwKcASADQoCAgIDAADcClAEgA0KAgICAcDcCjAEgA0KAgICAwAA3AoQBIANCADcClAIgA0EBOgCdAiADQQA2ApACIANCgICAgMAANwLQASADQgA3AtgBIANCBDcC4AEgA0IANwLoASADQgQ3AvABIANCgICAgMAANwL4ASADQgA3AoACIANCBDcCiAIgAyAD/QACuAX9CwKoASADQagDakIANwMAIANBhAVqQQA2AgAgA0EBOgCcAiAD/QwAAAAAAAAAAAAAAAAAAAAA/QsDmAMgA/0MAAAAAAAAAAAAAAAAAAAAAP0LBMADIANCADcC/AQgA/0MAAAAAAAAAAAAAAAAAACAP/0LBKACIAP9DP//f////39/AAAAAP//f//9CwTAAiAD/Qz//39/AAAAAP//f////39//QsE0AIgA/0MAAAAAP//f////39/AAAAAP0LBOACIAP9DP//f////39/AAAAAP//f//9CwTwAiAD/QwAAAAAAAAAAAAAAAAAAAAA/QsChAMgA0H////7BzYCgAMgA/0MAAAAAAAAAAAAAAAAAAAAAP0LBLACIAP9DAAAAAAAAAAAAAAAAAAAAAD9CwC7BSAD/QwAAAAAAAAAAAAAAAAAAAAA/QsAkwUgA/0MAAAAAAAAAAAAAAAAAAAAAP0LAOcFIAP9DAAAAAAAAAAAAAAAAAAAAAD9CwCQBiAD/QwAAAAAAAAAAAAAAAAAAAAA/QsA/QUgA0EAOgDYAyADQv////sHNwPQAyAD/QwAAIA/AAAAAAAAAAAAAAAA/QsEsAMgA0GAgID8AzYClAMgA0GgAmoiCEHIAWogBkEPaigAADYAACADIAP9AAC4Bf0LANkDIANBADoA9AMgA0L////7BzcC7AMgA0GEBGogBEEPaigAADYAACADIAP9AACQBf0LAPUDIANBADoAkAQgA0L////7BzcDiAQgCEGAAmogBUEPaigAADYAACADIAP9AADkBf0LAJEEIANBADoArAQgA0L////7BzcCpAQgA0G8BGogA0GcBmooAAA2AAAgAyAD/QAAjQb9CwCtBCADQQA6AMgEIANC////+wc3A8AEIANB2ARqIANBiQZqKAAANgAAIAMgA/0AAPoF/QsAyQQgA0EAOgCIBSADQQA2AvgEIANCADcD8AQgA0GAAjsB7AQgA0EANgLoBCADQQA6AOQEIANC////+wc3AtwEIAMoAgghBiADQQxqIAMoAhgiCEEGaiIFEMcCIANBHGogBRDHAiADQSxqIAUQxwIgAygCRCIEIAMoAjxGBEAgA0E8aiAEQQFBBEEQENcGIAMoAkQh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IAFBDEEAIAUbciEOIApBDGogCiADKgIAIhdDAAAAAF4iBhsqAgAhGSAIQfwBaiEKIAhBpAJqIQsgCUEMaiEBA0AgCCAaIBv9+gH95gH9CwTAAUP//39/IRAgBiAXQwAAAABdcgRAQ///f38gCCoCyAEgFCAHspQgBhsgGZMgF5UiECAQQwAAAABdGyEQC0P//39/IRJD//9/fyERIAUgFkMAAAAAXXIEQEP//39/IA4qAgAgDSoCAJMgFpUiESARQwAAAABdGyERCyAEIBVDAAAAAF1yBEBD//9/fyAYIAKylCAIKgLEASAEGyAMKgIAkyAVlSISIBJDAAAAAF0bIRILIAggBDoA7AEgCCAFOgDkASAIIAY6ANwBAkACQAJAIBAgE15FDQAgESATXkUNACASIBNeDQELQQIgECARXiICIBIgESAQIAIbXRsiD0ECdCICIAFqIQMgCEGIAWogAmoiCSgCACEHIAhB2AFqIA9BA3RqLQAERQRAIAkgB0EBayIJNgIAIAMgAygCAEEBayIDNgIAIAkgCEGgAWogAmooAgAiCUgEQCADIAlKDQMMAgsgCEGIAmoiA0EIaiIJIAFBCGooAgA2AgAgCCABKQIANwOIAiACIANqIAc2AgAgCEGYAmoiAkEIaiAIQZABaigCADYCACALIAgpA4gCNwIAIAtBCGogCSgCADYCACAIIAgpAogBNwOYAiAIQeQAaiACEI4DDAILIAkgB0EBaiIHNgIAIAMgAygCACIDQQFqIgk2AgAgCSAIQbABaiACaigCACIJTARAIAhBiAJqIgdBCGoiCSAIQZABaigCADYCACAIIAgpAogBNwOIAiACIAdqIAM2AgAgCiABKQIANwIAIApBCGogAUEIaigCADYCACAIQfABaiICQQhqIAkoAgA2AgAgCCAIKQOIAjcD8AEgCEHkAGogAhCOAwwCCyAHIAlIDQELIAAgCP0AAhD9CwIAIABBMGogCEEQaiIBQTBqKQIANwIAIABBIGogAUEgav0AAgD9CwIAIABBEGogAUEQav0AAgD9CwIAIAhBsAJqJAAPCyAIKAKcASECIAj9AAKMASEbIAgoAogBIQcMAAsAC70JAg5/An0jAEGgAmsiAiQAAkACQAJAIAAoAkBBgICAgHhHBEAgAkEMaiAAIAFBAUP//39/EHQgAigCIEEERg0BIAItABghBQwDCwJAIAAoAghFBEAMAQsCf0EAIAEqAgAiESAAKAIEIgYqAgBdDQAaQQAgESAGKgIQXg0AGkEAIAEqAgQiECAGKgIEXQ0AGkEAIBAgBioCFF4NABpBAEEAIAYgASoCCCIQIAYqAhheGyAQIAYqAghdGwshAyAGKAI8Qf////8DcUUNACAGKgIgIBFeDQAgBioCMCARXQ0AIAEqAgQiECAGKgIkXQ0AIAYqAjQgEF0NACAGQSBqIQQgASoCCCIQIAYqAjheRSAQIAYqAihdQX9zcSEICyACIAM2ApwBIAIgATYCmAEgAiAINgKQASACIAQ2AhAgAkEANgIMIAJBrAFqIQwgAkG4AWohDSACQZABaiEGIAJBEGohCCACIAA2ApQBIAAoAiwhCyAAKAIwIQkgACgCOCEPIAAoAjwhDgJAAkACQAJAAkACQANAIAIoApwBIgVFBEAgAigCkAEiByEFIAghBCAGIQMgB0EhTwRAIAIoAhAhBSACKAIUIQQgCCEDCyAFRQ0HIAMgBUEBayIDNgIAIAQgA0ECdGooAgAhBQsgAkEANgKcASAFKAIcQf////8DcUEBRwRAIAUoAgwiBSACKAKUASIEKAIIIgNPDQJBASEHAkAgAigCmAEiAyoCACIRIAQoAgQgBUEGdGoiBCoCAF0NACARIAQqAhBeDQAgAyoCBCIQIAQqAgRdDQAgECAEKgIUXg0AIAMqAggiECAEKgIIXQ0AIBAgBCoCGF4NACACIAQ2ApwBIAMqAgAhEUEAIQcLIBEgBCoCIF0NASARIAQqAjBeDQEgAyoCBCIQIAQqAiRdDQEgECAEKgI0Xg0BIAMqAggiECAEKgIoXQ0BIBAgBCoCOF4NASAEQSBqIQogB0UEQAJ/IAIoApABIgdBIUkEQCAHIQQgCCEFQSAhByAGDAELIAIoAhAhBCACKAIUIQUgCAshAyAEIAdGBEAgAkEMahCjBCACKAIQIQQgAigCFCEFIAghAwsgBSAEQQJ0aiAKNgIAIAMgAygCAEEBajYCAAwCCyACIAo2ApwBDAELIAUoAgwiCiAOTw0CIA8gCkEMbGoiAygCACIHIAlPDQMgAygCBCIEIAlPDQQgAygCCCIDIAlPDQUgDSALIANBDGxqIgMpAgA3AgAgDCALIARBDGxqIgUpAgA3AgAgDUEIaiADQQhqKAIANgIAIAJBoAFqIgRBCGogCyAHQQxsaiIDQQhqKAIANgIAIAxBCGogBUEIaigCADYCACACIAMpAgA3A6ABIAJByAFqIAAgChD+AiACQfwBaiAEIAFBARBRIAItAIgCQQFxRQ0AC0EBIQUgAigCkAEhBwwHCyAFIANBoPLCABCFCwALIAogDkGk08MAEIULAAsgByAJQbTTwwAQhQsACyAEIAlBxNPDABCFCwALIAMgCUHU08MAEIULAAtBACEFIAJBADYCnAEMAQtBmJnDABDyDgALIAdBIUkNACACKAIUIAdBAnRBBBDoDgsgAkGgAmokACAFQQFxC6cMARJ/IwBBsAFrIhIkAAJAAkACQAJAIABFDQAgAEEIayIbKAIAQQFqIRMgGyATNgIAIBNFDQEgACgCACITQX9GDQIgACATQQFqNgIAIBIgGzYCFCASIAA2AhAgEiAAQQhqIhw2AgwgAUUNACABQQhrIhMoAgBBAWohFCATIBQ2AgAgFEUNASABKAIAIhRBf0YNAiABIBRBAWo2AgAgEiATNgIgIBIgATYCHCASIAFBBGoiHTYCGCACRQ0AIAJBEGsiFCgCAEEBaiEVIBQgFTYCACAVRQ0BIAIoAgAiFUF/Rg0CIAIgFUEBajYCACASIBQ2AiwgEiACNgIoIBIgAkEQaiIeNgIkIANFDQAgA0EIayIVKAIAQQFqIRYgFSAWNgIAIBZFDQEgAygCACIWQX9GDQIgAyAWQQFqNgIAIBIgFTYCOCASIAM2AjQgEiADQQRqIh82AjAgBEUNACAEQQhrIhYoAgBBAWohFyAWIBc2AgAgF0UNASAEKAIAIhdBf0YNAiAEIBdBAWo2AgAgEiAWNgJEIBIgBDYCQCASIARBBGoiIDYCPCAFRQ0AIAVBCGsiFygCAEEBaiEYIBcgGDYCACAYRQ0BIAUoAgAiGEF/Rg0CIAUgGEEBajYCACASIBc2AlAgEiAFNgJMIBIgBUEEaiIhNgJIIAZFDQAgBkEIayIYKAIAQQFqIRkgGCAZNgIAIBlFDQEgBigCACIZQX9GDQIgBiAZQQFqNgIAIBIgGDYCXCASIAY2AlggEiAGQQRqIiI2AlQgB0UNACAHQQhrIhkoAgBBAWohGiAZIBo2AgAgGkUNASAHKAIAIhpBf0YNAiAHIBpBAWo2AgAgEiAZNgJoIBIgBzYCZCASIAdBBGoiIzYCYCASIBE2AmwgEkHwAGohGiMAQaABayIRJAAgESAdNgIMIBEgHDYCCCARIB42AhAgESAfNgIUIBEgIDYCGCARICE2AhwgESAiNgIgIBEgIzYCJCARIAg4AiggESAJOAIsIBEgCkEARzoAMyARIAs2AjQgESAM/AM2AjwgESAMRAAAEAAAAPBBYjYCOCARIA45A0ggESANQQBHrTcDQCARIBA5A1ggESAPQQBHrTcDUCARIBFBKGo2ApgBIBEgEUEzajYClAEgESARQSxqNgKQASARIBFBJGo2AowBIBEgEUEgajYCiAEgESARQRxqNgKEASARIBFBGGo2AoABIBEgEUEUajYCfCARIBFBEGo2AnggESARQQxqNgJ0IBEgEUEIajYCcCARIBFB0ABqNgJsIBEgEUFAazYCaCARIBFBOGo2AmQgESARQTRqNgJgAkAgEkHsAGoiCigCABAEQQFGBEAgESAKNgKcASAaIBFB4ABqIBFBnAFqEKYDDAELIBogEUHgAGpBABCmAwsgEUGgAWokACAHIAcoAgBBAWs2AgAgGSAZKAIAQQFrIgc2AgAgB0UEQCASQegAahDgCwsgBiAGKAIAQQFrNgIAIBggGCgCAEEBayIGNgIAIAZFBEAgEkHcAGoQqQ0LIAUgBSgCAEEBazYCACAXIBcoAgBBAWsiBTYCACAFRQRAIBJB0ABqEKUNCyAEIAQoAgBBAWs2AgAgFiAWKAIAQQFrIgQ2AgAgBEUEQCASQcQAahCpDQsgAyADKAIAQQFrNgIAIBUgFSgCAEEBayIDNgIAIANFBEAgEkE4ahDuDAsgAiACKAIAQQFrNgIAIBQgFCgCAEEBayICNgIAIAJFBEAgEkEsahDrDAsgASABKAIAQQFrNgIAIBMgEygCAEEBayIBNgIAIAFFBEAgEkEgahDpDAsgACAAKAIAQQFrNgIAIBsgGygCAEEBayIANgIAIABFBEAgEkEUahDoDAtBACEAIBItAKwBQQRHBEBBzABBBBCRDiIARQ0EIABBADYCCCAAQoGAgIAQNwIAIAAgEv0AAnD9CwIMIABBHGogEkGAAWr9AAIA/QsCACAAQSxqIBJBkAFq/QACAP0LAgAgAEE8aiASQaABav0AAgD9CwIAIABBCGohAAsgEkGwAWokACAADwsQgw8LAAsQhA8AC0EEQcwAQfjKxAAoAgAiAEHMCCAAGxEAAAAL5QkBDH8jAEGwAmsiByQAAn8CQAJAAkACQCAARQ0AIABBCGsiDigCAEEBaiEIIA4gCDYCACAIRQ0BIAAoAgAiCEF/Rg0CIAAgCEEBajYCACAHIA42AgggByAANgIEIAcgAEEEajYCACABRQ0AIAFBCGsiDygCAEEBaiEIIA8gCDYCACAIRQ0BIAEoAgAiCEF/Rg0CIAEgCEEBajYCACAHIA82AhQgByABNgIQIAcgAUEEaiIINgIMIAJFDQAgAkEIayIQKAIAQQFqIQkgECAJNgIAIAlFDQEgAigCACIJQX9GDQIgAiAJQQFqNgIAIAcgEDYCICAHIAI2AhwgByACQQRqIhE2AhggA0UNACADQQhrIgkoAgBBAWohCiAJIAo2AgAgCkUNASADKAIAIgpBf0YNAiADIApBAWo2AgAgByAJNgIsIAcgAzYCKCAHIANBBGo2AiQgBEUNACAEQQhrIgooAgBBAWohCyAKIAs2AgAgC0UNASAEKAIAIgtBf0YNAiAEIAtBAWo2AgAgByAKNgI4IAcgBDYCNCAHIARBBGoiDTYCMCAFRQ0AIAVBCGsiCygCAEEBaiEMIAsgDDYCACAMRQ0BIAUoAgAiDEF/Rg0CIAUgDEEBajYCACAHIAs2AkQgByAFNgJAIAcgBUEEajYCPCAHIBH9AAIA/QsDgAEgB0GAAWoiDEEYaiAIQQhqKAIANgIAIAcgCCkCADcDkAEgByAF/QACBP0LA6ABIAdBoAFqIghBGGogDUEIaigCADYCACAHIA0pAgA3A7ABIAdB+AFqIAwgACgCBCAAKAIIIg0oAghBAWtBeHFqQQhqIA0gCCADKAIEIAMoAggiCCgCCEEBa0F4cWpBCGogCCAGEPkBIAcoAvgBIg1BAkYNAyAHQcABaiIIQTBqIgwgB0GsAmooAgA2AgAgCEEgaiIRIAdBnAJq/QACAP0LAwAgCEEQaiISIAdBjAJq/QACAP0LAwAgByAH/QAC/AH9CwPAAUEAIA1BAXFFDQQaIAdByABqIghBMGogDCgCADYCACAIQSBqIBH9AAMA/QsDACAIQRBqIBL9AAMA/QsDACAHIAf9AAPAAf0LA0hBAQwECxCDDwsACxCEDwALQQALIQggBSAFKAIAQQFrNgIAIAsgCygCAEEBayIFNgIAIAVFBEAgB0HEAGoQpQ0LIAQgBCgCAEEBazYCACAKIAooAgBBAWsiBDYCACAERQRAIAdBOGoQqQ0LIAMgAygCAEEBazYCACAJIAkoAgBBAWsiAzYCACADRQRAIAdBLGoQ4AsLIAIgAigCAEEBazYCACAQIBAoAgBBAWsiAjYCACACRQRAIAdBIGoQpQ0LIAEgASgCAEEBazYCACAPIA8oAgBBAWsiATYCACABRQRAIAdBFGoQqQ0LIAAgACgCAEEBazYCACAOIA4oAgBBAWsiADYCACAARQRAIAdBCGoQ4AsLQQAhAAJAIAgEQEHAAEEEEJEOIgBFDQEgAEEANgIIIABCgYCAgBA3AgAgACAH/QADSP0LAgwgAEEcaiAHQdgAav0AAwD9CwIAIABBLGogB0HoAGr9AAMA/QsCACAAQTxqIAdB+ABqKAIANgIAIABBCGohAAsgB0GwAmokACAADwtBBEHAAEH4ysQAKAIAIgBBzAggABsRAAAAC/UJAg9/AX4jAEHgAWsiDyQAAkACQAJAIAFFDQAgAUEIayIXKAIAQQFqIRAgFyAQNgIAIBBFDQEgASgCACIQQX9GDQIgASAQQQFqNgIAIA8gFzYCCCAPIAE2AgQgDyABQQhqIhg2AgAgAkUNACACQQhrIhAoAgBBAWohESAQIBE2AgAgEUUNASACKAIAIhFBf0YNAiACIBFBAWo2AgAgDyAQNgIUIA8gAjYCECAPIAJBBGoiGTYCDCADRQ0AIANBEGsiESgCAEEBaiESIBEgEjYCACASRQ0BIAMoAgAiEkF/Rg0CIAMgEkEBajYCACAPIBE2AiAgDyADNgIcIA8gA0EQaiIaNgIYIARFDQAgBEEIayISKAIAQQFqIRMgEiATNgIAIBNFDQEgBCgCACITQX9GDQIgBCATQQFqNgIAIA8gEjYCLCAPIAQ2AiggDyAEQQRqIhs2AiQgBUUNACAFQQhrIhMoAgBBAWohFCATIBQ2AgAgFEUNASAFKAIAIhRBf0YNAiAFIBRBAWo2AgAgDyATNgI4IA8gBTYCNCAPIAVBBGoiHDYCMCAGRQ0AIAZBCGsiFCgCAEEBaiEVIBQgFTYCACAVRQ0BIAYoAgAiFUF/Rg0CIAYgFUEBajYCACAPIBQ2AkQgDyAGNgJAIA8gBkEEaiIdNgI8IAdFDQAgB0EIayIVKAIAQQFqIRYgFSAWNgIAIBZFDQEgBygCACIWQX9GDQIgByAWQQFqNgIAIA8gFTYCUCAPIAc2AkwgDyAHQQRqIhY2AkggDyAONgJUIA8gCfwDNgKMASAPIAlEAAAQAAAA8EFiNgKIASAPIAg2AoQBIA8gFjYCgAEgDyAdNgJ8IA8gHDYCeCAPIBs2AnQgDyAaNgJwIA8gGTYCbCAPIBg2AmggDyALOQOYASAPIApBAEetNwOQASAPIA05A6gBIA8gDEEAR603A6ABIA8gD0GAAWo2AtgBIA8gD0H8AGo2AtQBIA8gD0H4AGo2AtABIA8gD0H0AGo2AswBIA8gD0HwAGo2AsgBIA8gD0HsAGo2AsQBIA8gD0HoAGo2AsABIA8gD0GgAWo2ArwBIA8gD0GQAWo2ArgBIA8gD0GIAWo2ArQBIA8gD0GEAWo2ArABAkAgDhAEQQFGBEAgDyAPQdQAajYC3AEgD0HYAGogD0GwAWogD0HcAWoQxQMMAQsgD0HYAGogD0GwAWpBABDFAwsgDykDWCEeIA8rA2AhCSAHIAcoAgBBAWs2AgAgFSAVKAIAQQFrIgc2AgAgB0UEQCAPQdAAahDgCwsgBiAGKAIAQQFrNgIAIBQgFCgCAEEBayIGNgIAIAZFBEAgD0HEAGoQpQ0LIAUgBSgCAEEBazYCACATIBMoAgBBAWsiBTYCACAFRQRAIA9BOGoQqQ0LIAQgBCgCAEEBazYCACASIBIoAgBBAWsiBDYCACAERQRAIA9BLGoQ7gwLIAMgAygCAEEBazYCACARIBEoAgBBAWsiAzYCACADRQRAIA9BIGoQ6wwLIAIgAigCAEEBazYCACAQIBAoAgBBAWsiAjYCACACRQRAIA9BFGoQ6QwLIAEgASgCAEEBazYCACAXIBcoAgBBAWsiATYCACABRQRAIA9BCGoQ6AwLIAAgHj4CACAAIAlEAAAAAAAAAAAgHqcbOQMIIA9B4AFqJAAPCxCDDwsACxCEDwALpgkCBn8BfiAAKAIEIQUgACgCCCIErSEIIAEoAgAiAigCCCEDIAIoAgAgA2tBB00EQCACIANBCEEBQQEQ1gYgAigCCCEDCyACIANBCGo2AgggAigCBCADaiAINwAAIARBDGwhAwJAA0AgAwRAIANBDGshAyAFIAEQkAghBCAFQQxqIQUgBEUNAQwCCwsgACgCECEFIAAoAhQiBq0hCCACKAIAIAIoAggiBGtBB00EQCACIARBCEEBQQEQ1gYgAigCCCEECyACIARBCGoiAzYCCCACKAIEIARqIAg3AAAgBgRAIAUgBkEDdGohBgNAIAVBBGooAgAhByAFKAIAIQQgAigCACADa0EDTQRAIAIgA0EEQQFBARDWBiACKAIIIQMLIAIoAgQgA2ogBDYAACACIANBBGoiBDYCCCACKAIAIARrQQNNBEAgAiAEQQRBAUEBENYGIAIoAgghBAsgAiAEQQRqIgM2AgggAigCBCAEaiAHNgAAIAYgBUEIaiIFRw0ACwsgACgCHCEFIAAoAiAiBK0hCCACKAIAIANrQQdNBEAgAiADQQhBAUEBENYGIAIoAgghAwsgAiADQQhqNgIIIAIoAgQgA2ogCDcAACAEQRRsIQYDQCAGBEAgBSgCACEEIAIoAgAgAigCCCIDa0EDTQRAIAIgA0EEQQFBARDWBiACKAIIIQMLIAIoAgQgA2ogBDYAACACIANBBGoiAzYCCCAFKAIEIQQgAigCACADa0EDTQRAIAIgA0EEQQFBARDWBiACKAIIIQMLIAIgA0EEajYCCCACKAIEIANqIAQ2AAAgBkEUayEGIAVBCGohAyAFQRRqIQUgAyABEJAIIgRFDQEMAgsLIAAoAighAyAAKAIsIgatIQggAigCACACKAIIIgRrQQdNBEAgAiAEQQhBAUEBENYGIAIoAgghBAsgAiAEQQhqIgU2AgggAigCBCAEaiAINwAAIAYEQCADIAZBBXRqIQYDQCADQQRqKAIAIQQgAygCACEHIAIoAgAgBWtBA00EQCACIAVBBEEBQQEQ1gYgAigCCCEFCyACKAIEIAVqIAc2AAAgAiAFQQRqIgU2AgggAigCACAFa0EDTQRAIAIgBUEEQQFBARDWBiACKAIIIQULIAIoAgQgBWogBDYAACACIAVBBGoiBTYCCCADQQxqKAIAIQQgA0EIaigCACEHIAIoAgAgBWtBA00EQCACIAVBBEEBQQEQ1gYgAigCCCEFCyACKAIEIAVqIAc2AAAgAiAFQQRqIgU2AgggAigCACAFa0EDTQRAIAIgBUEEQQFBARDWBiACKAIIIQULIAIgBUEEajYCCCACKAIEIAVqIAQ2AAAgA0EQaiIDIAEQkAgiBA0CIANBDGotAAAhByACKAIIIgQgAigCAEYEQCACIARBAUEBQQEQ1gYgAigCCCEECyACIARBAWoiBTYCCCACKAIEIARqIAc6AAAgBiADQRBqIgNHDQALCyABIAAoAjQgACgCOBDjCCIEDQAgASAAKAJAIAAoAkQQ4wgiBA0AIAEgACgCTCAAKAJQEOMIIgQNACABIAAoAlggACgCXBDjCCEECyAEC4YLAw5/CHsCfSMAQcABayIDJAAgASgCCCEOIAEoAgQhCyADQQA2AgggA0EANgKMAQJAIA5FBEBBBCEHDAELAkAgCygCPEH/////A3EEQCADQQxqIQwgA0GMAWohDyAC/QkCCCESIAL9CQIEIRMgAv0JAgAhFCADQaQBaiEQQQQhB0P//39/IRlBfyENAkADQCALIAlBBnRqIgVBIGohBiAFIAb9DAAAAAAAAAAAAAAAAAAAAAAgFCAF/QAEMCIVIAX9AAQQIhb9DQABAgMQERITAAECAwABAgP95QEgBf0ABCAiFyAF/QAEACIY/Q0AAQIDEBESEwABAgMAAQIDIBT95QH96wH96wEiESAR/eYB/QwAAAAAAAAAAAAAAAAAAAAAIBMgFSAW/Q0EBQYHFBUWFwABAgMAAQID/eUBIBcgGP0NBAUGBxQVFhcAAQIDAAECAyAT/eUB/esB/esBIhEgEf3mAf3kAf0MAAAAAAAAAAAAAAAAAAAAACASIAVBGGogBf1cAjj9VgIAAf3lASAFQQhqIAX9XAIo/VYCAAEgEv3lAf3rAf3rASIRIBH95gH95AH94wEiEf0fASAR/R8AXiIEGyEKAkACQAJ/AkACQCARIBEgEf0NBAUGBwABAgMAAQIDAAECAyAEGyIR/R8AIhogGV1FBEAgEf0fASIaIBldRQ0EIBpD//9/f1sNBCAKKAIcQf////8DcUEBRw0BDAILAkAgGkP//39/WwRADAELIAYgBSAEGyIGKAIcQf////8DcUEBRwRAIAYoAgwhCSAR/R8BIhogGV1FDQYgGkP//39/Ww0GQQEgCigCHEH/////A3FBAUYNBBoCfyADKAKMASIFQSFJBEAgBSEIIAwhBkEgIQUgDwwBCyADKAIMIQggAygCECEGIAwLIQQgCigCDCEKIAUgCEYEQCADQQhqEKMEIAMoAgwhCCADKAIQIQYgDCEECyAGIAhBAnRqIAo2AgAgBCAEKAIAQQFqNgIADAYLIANBoAFqIAEgAiAGKAIMENEFAkAgAygCtAEiBEEERg0AIAMqAqABIhogGV1FDQAgAyAQ/QACAP0LA5ABIAYoAgwhDSAaIRkgBCEHCwsgEf0fASAZXUUNAyAR/R8BQ///f39bDQMgCigCHEH/////A3FBAUYNAQsgCigCDCEJDAMLQQALIQggA0GgAWogASACIAooAgwQ0QUCQCADKAK0ASIEQQRGDQAgAyoCoAEiGiAZXUUNACADIBD9AAIA/QsDkAEgCigCDCENIBohGSAEIQcLIAgNAQsgDCEJIA8hBCADKAKMASIGIghBIU8EQCADKAIMIQggAygCECEJIAwhBAsgCEUNAiAEIAhBAWsiBDYCACAJIARBAnRqKAIAIQkLIAkgDkkNAAsgCSAOQbDywgAQhQsACyAHQQRGBEBBBCEHDAILIAMgA/0AA5AB/QsDoAEMAQtBBCEH/QwAAAAAAAAAAAAAAAAAAAAAIAL9XQIAIhEgC/0ABBD95QEgC/0ABAAgEf3lAf3rAf3rASIRIBH95gEiEf0fACAR/R8BkiALKgIIIAIqAggiGZMiGiAZIAsqAhiTIhkgGSAaXxsiGUMAAAAAIBlDAAAAAGAbIhkgGZSSkUP//39/XUUNASADQaABaiABIAIgCygCDBDRBQJAIAMoArQBIgFBBEYEQAwBCyADKgKgASEZIAMgA/0AAqQB/QsDkAEgGUP//39/XUUNACADIAP9AAOQAf0LA6ABIAsoAgwhDSABIQcLIAMoAowBIQYLIAZBIUkNACADKAIQIAZBAnRBBBDoDgsgB0EERgRAQYiZwwAQ8g4ACyAAIAP9AAOgAf0LAgAgACANNgIUIABBATYCECADQcABaiQAC8gJAgp/Bn0jAEEgayIDJAACQAJAAkACQAJAAkACQCAAKAIgIgcEQCAAKAIcIQYCQCAHQRRsIgRBFEYNACAGKgIIIAEqAgAiDpQgBkEMaioCACABKgIEIg+UkiAGQRBqKgIAIAEqAggiEJSSIQ0gBEEoayIBQRRuIQkCfyABQRRJBEBBASEEIAZBFGoMAQsgCUEBakH+////AXEhCiAGIQFBACEEA0AgDiABQRxqKgIAlCAPIAFBIGoqAgCUkiAQIAFBJGoqAgCUkiIRIA1eIQsgDiABQTBqKgIAlCAPIAFBNGoqAgCUkiAQIAFBOGoqAgCUkiISIBEgDSALGyINXiEFIBIgDSAFGyENIARBAWohDCAEQQJqIgQgDCAIIAsbIAUbIQggAUEoaiEBIAQgCkcNAAsgBEEBaiEEIAFBFGoLIQEgCUEBcQ0AIAQgCCAOIAEqAgiUIA8gAUEMaioCAJSSIBAgAUEQaioCAJSSIA1eGyEICwJAIAcgCEsEQEEEIAYgCEEUbGoiASgCBCIGIAZBBE8bIgsgASgCACIEIAtqIgFLDQMgACgCXCIHIAFJDQQgACgCUCIHIAFJDQUgBkUNCCAEQQJ0IgkgACgCWGoiBygCACIBIAAoAggiBE8NByAAKAJMIQUgAiAAKAIEIgAgAUEMbGoiCikCADcCACACQQhqIApBCGooAgA2AgAgAyABQYCAgIB8cSIKNgIEIApFDQEMCQsgCCAHQcjHwwAQhQsACyACIAFBgICAgARyNgIwIAMgBSAJaiIJKAIAIgFBgICAgHxxIgU2AgQgBQ0EIAIgAUGAgICAeHI2AkAgBkEBRg0GIAQgBygCBCIBTQ0FIAIgACABQQxsaiIFKQIANwIMIAJBFGogBUEIaigCADYCACADIAFBgICAgHxxIgU2AgQgBQ0HIAIgAUGAgICABHI2AjQgAyAJKAIEIgFBgICAgHxxIgU2AgQgBQ0EIAIgAUGAgICAeHI2AkQgBkECRg0GIAQgBygCCCIBTQ0FIAIgACABQQxsaiIFKQIANwIYIAJBIGogBUEIaigCADYCACADIAFBgICAgHxxIgU2AgQgBQ0HIAIgAUGAgICABHI2AjggAyAJKAIIIgFBgICAgHxxIgU2AgQgBQ0EIAIgAUGAgICAeHI2AkggBkEDRg0GIAQgBygCDCIBTQ0FIAIgACABQQxsaiIAKQIANwIkIAJBLGogAEEIaigCADYCACADIAFBgICAgHxxIgA2AgQgAA0HIAIgAUGAgICABHI2AjwgAyAJKAIMIgBBgICAgHxxIgE2AgQgAQ0EIAIgAEGAgICAeHI2AkwMBgtBAEEAQbjHwwAQhQsACyAEIAFB2MfDABDxDgALIAEgB0HYx8MAEPAOAAsgASAHQejHwwAQ8A4ACyADQQA2AghBACADQQRqQcySwwAgA0EIakGE1MMAEPcMAAsgASAEQfjHwwAQhQsACyADIAhBgICAgHxxIgA2AgQgAEUEQCACIAs2AlQgAiAIQYCAgIB8cjYCUCADQSBqJAAPCyADQQA2AghBACADQQRqQcySwwAgA0EIakGU1MMAEPcMAAsgA0EANgIIQQAgA0EEakHMksMAIANBCGpB9NPDABD3DAAL2gkBD38jAEHgAWsiDyQAAkACQAJAIABFDQAgAEEIayIXKAIAQQFqIRAgFyAQNgIAIBBFDQEgACgCACIQQX9GDQIgACAQQQFqNgIAIA8gFzYCCCAPIAA2AgQgDyAAQQhqIhg2AgAgAUUNACABQQhrIhAoAgBBAWohESAQIBE2AgAgEUUNASABKAIAIhFBf0YNAiABIBFBAWo2AgAgDyAQNgIUIA8gATYCECAPIAFBBGoiGTYCDCACRQ0AIAJBEGsiESgCAEEBaiESIBEgEjYCACASRQ0BIAIoAgAiEkF/Rg0CIAIgEkEBajYCACAPIBE2AiAgDyACNgIcIA8gAkEQaiIaNgIYIANFDQAgA0EIayISKAIAQQFqIRMgEiATNgIAIBNFDQEgAygCACITQX9GDQIgAyATQQFqNgIAIA8gEjYCLCAPIAM2AiggDyADQQRqIhs2AiQgBEUNACAEQQhrIhMoAgBBAWohFCATIBQ2AgAgFEUNASAEKAIAIhRBf0YNAiAEIBRBAWo2AgAgDyATNgI4IA8gBDYCNCAPIARBBGoiHDYCMCAFRQ0AIAVBCGsiFCgCAEEBaiEVIBQgFTYCACAVRQ0BIAUoAgAiFUF/Rg0CIAUgFUEBajYCACAPIBQ2AkQgDyAFNgJAIA8gBUEEaiIdNgI8IAZFDQAgBkEIayIVKAIAQQFqIRYgFSAWNgIAIBZFDQEgBigCACIWQX9GDQIgBiAWQQFqNgIAIA8gFTYCUCAPIAY2AkwgDyAGQQRqIhY2AkggDyAHNgJUIA8gDjYCWCAPIAn8AzYChAEgDyAJRAAAEAAAAPBBYjYCgAEgDyAINgJ8IA8gFjYCdCAPIB02AnAgDyAcNgJsIA8gGzYCaCAPIBo2AmQgDyAZNgJgIA8gGDYCXCAPIA9B1ABqNgJ4IA8gCzkDkAEgDyAKQQBHrTcDiAEgDyANOQOgASAPIAxBAEetNwOYASAPIA9B9ABqNgLYASAPIA9B8ABqNgLUASAPIA9B7ABqNgLQASAPIA9B+ABqNgLMASAPIA9B6ABqNgLIASAPIA9B5ABqNgLEASAPIA9B4ABqNgLAASAPIA9B3ABqNgK8ASAPIA9BmAFqNgK4ASAPIA9BiAFqNgK0ASAPIA9BgAFqNgKwASAPIA9B/ABqNgKsAQJAIA4QBEEBRgRAIA8gD0HYAGo2AtwBIA9BrAFqIA9B3AFqEPMCDAELIA9BrAFqQQAQ8wILIAYgBigCAEEBazYCACAVIBUoAgBBAWsiBjYCACAGRQRAIA9B0ABqEOALCyAFIAUoAgBBAWs2AgAgFCAUKAIAQQFrIgU2AgAgBUUEQCAPQcQAahClDQsgBCAEKAIAQQFrNgIAIBMgEygCAEEBayIENgIAIARFBEAgD0E4ahCpDQsgAyADKAIAQQFrNgIAIBIgEigCAEEBayIDNgIAIANFBEAgD0EsahDuDAsgAiACKAIAQQFrNgIAIBEgESgCAEEBayICNgIAIAJFBEAgD0EgahDrDAsgASABKAIAQQFrNgIAIBAgECgCAEEBayIBNgIAIAFFBEAgD0EUahDpDAsgACAAKAIAQQFrNgIAIBcgFygCAEEBayIANgIAIABFBEAgD0EIahDoDAsgD0HgAWokAA8LEIMPCwALEIQPAAvQCAEIfwJAIAFBgApJBEAgAUEFdiEHAkACQCAAKAKgASIFBEAgBUEBayEDIAVBAnQgAGpBBGshAiAFIAdqQQJ0IABqQQRrIQYgBUEpSSEFA0AgBUUNAiADIAdqIgRBKE8NAyAGIAIoAgA2AgAgBkEEayEGIAJBBGshAiADQQFrIgNBf0cNAAsLIAFBIEkNAyAAQQA2AgAgB0EBaiICQQJGDQMgAEEANgIEIAJBA0YNAyAAQQA2AgggAkEERg0DIABBADYCDCACQQVGDQMgAEEANgIQIAJBBkYNAyAAQQA2AhQgAkEHRg0DIABBADYCGCACQQhGDQMgAEEANgIcIAJBCUYNAyAAQQA2AiAgAkEKRg0DIABBADYCJCACQQtGDQMgAEEANgIoIAJBDEYNAyAAQQA2AiwgAkENRg0DIABBADYCMCACQQ5GDQMgAEEANgI0IAJBD0YNAyAAQQA2AjggAkEQRg0DIABBADYCPCACQRFGDQMgAEEANgJAIAJBEkYNAyAAQQA2AkQgAkETRg0DIABBADYCSCACQRRGDQMgAEEANgJMIAJBFUYNAyAAQQA2AlAgAkEWRg0DIABBADYCVCACQRdGDQMgAEEANgJYIAJBGEYNAyAAQQA2AlwgAkEZRg0DIABBADYCYCACQRpGDQMgAEEANgJkIAJBG0YNAyAAQQA2AmggAkEcRg0DIABBADYCbCACQR1GDQMgAEEANgJwIAJBHkYNAyAAQQA2AnQgAkEfRg0DIABBADYCeCACQSBGDQMgAEEANgJ8IAJBIUYNAyAAQQA2AoABIAJBIkYNAyAAQQA2AoQBIAJBI0YNAyAAQQA2AogBIAJBJEYNAyAAQQA2AowBIAJBJUYNAyAAQQA2ApABIAJBJkYNAyAAQQA2ApQBIAJBJ0YNAyAAQQA2ApgBIAJBKEYNAyAAQQA2ApwBIAJBKUYNA0EoQShB6MLEABCFCwALIANBKEHowsQAEIULAAsgBEEoQejCxAAQhQsAC0GSw8QAQR1B6MLEABDWDAALIAAoAqABIgMgB2ohAiABQR9xIgZFBEAgACACNgKgASAADwsCQCACQQFrIgRBJ00EQCACIQUgACAEQQJ0aigCAEEAIAFrIgF2IgRFDQEgAkEnTQRAIAAgAkECdGogBDYCACACQQFqIQUMAgsgAkEoQejCxAAQhQsACyAEQShB6MLEABCFCwALAkAgB0EBaiIIIAJPDQAgAUEfcSEBIANBAXFFBEAgACACQQFrIgJBAnRqIgQgBCgCACAGdCAEQQRrKAIAIAF2cjYCAAsgA0ECRg0AIAJBAnQgAGpBDGshAwNAIANBCGoiBCAEKAIAIAZ0IANBBGoiBCgCACIJIAF2cjYCACAEIAkgBnQgAygCACABdnI2AgAgA0EIayEDIAggAkECayICSQ0ACwsgACAHQQJ0aiIBIAEoAgAgBnQ2AgAgACAFNgKgASAAC+MIAgV/GX0jAEGAAmsiBSQAIAVBuAFqQQA2AgAgBUIANwOwASAF/QwAAAAAAQAAAAIAAAADAAAA/QsEACAFQTRqQQBB+AD8CwAgAioCDCIOjCIcIA4gDpQgAioCECIPIA+UkiACKgIUIhAgEJSSkSIWlSIRIAEqAhgiC5QgD4wiHSAWlSITIAEqAhwiHpSSIBCMIh8gFpUiFCABKgIgIheUkiEMIAFBGGohBiABQQxqIQgCfSABKgIAIg0gEZQgEyABKgIEIiCUkiAUIAEqAggiIZSSIhIgESABKgIMIhqUIBMgASoCECIilJIgFCABKgIUIhWUkiIKXkUEQCAIIAYgCiAMXiIJGyEHIBogCyAJGwwBCyAGIQcgCyAMIBJdRQ0AGiABIQcgDQshCiAFQQA2ArwBIAVBADYCrAEgBUEANgIwIAVCADcDKCAFIAcqAgggFCABKgIkIhiUkiACKgIIIhuTIgw4AiQgBSAHKgIEIBMgGJSSIAIqAgQiE5MiEjgCICAFIAogESAYlJIgAioCACIUkyIKOAIcIAUgDDgCGCAFIBI4AhQgBSAKOAIQIAVBwAFqIAEgBSACIAMQlwEgBSgCwAEhAgJAAkACQCAERQRAIAIEQCAFKgLEASIKQwAAAABcBEAgACAFKQLIATcCDCAAIAo4AgggAEEDNgIAIABBFGogBUHQAWooAgA2AgAMBQsgECAWlSIZIBmUIA4gFpUiDiAOlCAPIBaVIg8gD5SSkpEhCiAZIAqVIhAgF5QgCyAOIAqVIhGUIA8gCpUiFyAelJKSIQwCQCAhIBCUIA0gEZQgICAXlJKSIhIgFSAQlCAaIBGUICIgF5SSkiIKXkUEQCAIIAYgCiAMXiICGyEGIBogCyACGyELDAELIAwgEl1FDQAgDSELIAEhBgsgBUEANgK8ASAFQQA2AqwBIAVBADYCMCAFQgA3AyggBioCCCENIAYqAgQhCiAFIB84AugBIAUgHTgC5AEgBSAcOALgASAFIBsgGSAOIBEgGJQgC5IiDCAUk5QgDyAKIBcgGJSSIhIgE5OUkiAZIA0gECAYlJIiDSAbk5SSQ28SgzqSIhWUkiIKOALcASAFIA0gCpMiCzgCJCAFIBMgDyAVlJIiCjgC2AEgBSASIAqTIg04AiAgBSAUIA4gFZSSIgo4AtQBIAUgDCAKkyIKOAIcIAUgCzgCGCAFIA04AhQgBSAKOAIQIAVB7AFqIAEgBSAFQdQBaiAVQ28SgzqSEJcBIAUoAuwBQQFHDQIgAyAVIAUqAvABkyIDYEUEQCAAQQQ2AgAMBQsgACADOAIIIABBAzYCACAAIAUqAvwBjDgCFCAAIAUqAvgBjDgCECAAIAUqAvQBjDgCDAwECyAAQQQ2AgAMAwsgAg0BIABBBDYCAAwCCyAAQQQ2AgAMAQsgACAFKQLIATcCDCAAIAUqAsQBOAIIIABBAzYCACAAQRRqIAVB0AFqKAIANgIACyAFQYACaiQAC70IAw1/AX0BeyMAQSBrIgQkACAEIAI2AgQgBCAAKAIMIgM2AgACQAJAAkACQAJAAkACQAJAIAIgA0YEQCACIAAoAhBHDQEgACgCJCIFIAAoAiAiDEsNCCAFBEAgACgCGCIHIAVBA3RqIQYgByEDA0AgDEEDdCINIAdqIg4gAyADIAZGIgobIgsoAgAiCCACTw0EIAsoAgQiCSACTw0EIAMgDWohAyAFQQFHQQN0IQ0gCCAJRwRAIAEgCEECdGoiCCgCACEPIAggASAJQQJ0aiIIKAIANgIAIAggDzYCAAsgAyAGIAobIQYgDiAHIAobIQcgCyANaiEDIAVBAWsiBQ0ACwsgACgCBCEMIAJBAWsiBkUNBCAMQQRqIQAgAUEEaiEKIAJBAnRBBGohDkEAIQggBiELA0AgCCIDIAJGDQQCQCADQQFqIgggAkYNACABIANBAnRqKgIAIRBBACEFIAYgA2siDUEETwRAIAtBfHEhCSANQXxxIQUgEP0TIREgACEHIAohAwNAIAMgA/0AAgAgESAH/QACAP3mAf3lAf0LAgAgB0EQaiEHIANBEGohAyAJQQRrIgkNAAsgBSANRg0BCyAFQQJ0IQMDQCADIApqIgcgByoCACAQIAAgA2oqAgCUkzgCACADQQRqIQMgCyAFQQFqIgVHDQALCyALQQFrIQsgACAOaiEAIApBBGohCiAGIAhHDQALIAwgAiAGbEECdGoiACAGQQJ0aioCACIQQwAAAABbDQcgAkUNBQwGCyAEQgA3AhQgBEKBgICAwAA3AgwgBEH8hsIANgIIIAQgBEEEaiAEQQhqQYSHwgAQ/AwACyAEQQA2AhggBEEBNgIMIARBxIfCADYCCCAEQgQ3AhAgBEEIakHMh8IAELkNAAtBjIXCAEE+QcyFwgAQ1gwACyAEQQA2AhggBEEBNgIMIARBsP3BADYCCCAEQgQ3AhAgBEEIakHI/cEAELkNAAsgDCACIAZsQQJ0aiIAIAZBAnRqKgIAIhBDAAAAAFwNAQwCCyABIAZBAnRqIgAgACoCACAQlTgCAAwCCwNAIAEgBkECdGoiAyoCACAQlSEQIAMgEDgCACAGRQ0BQQAhBwJAIAZBBE8EQCAGQXxxIgchCSAQ/RMhESAAIQUgASEDA0AgAyAD/QACACARIAX9AAIA/eYB/eUB/QsCACAFQRBqIQUgA0EQaiEDIAlBBGsiCQ0ACyAGIAdGDQELIAdBAnQiBSABaiEDIAAgBWohBQNAIAMgAyoCACAQIAUqAgCUkzgCACADQQRqIQMgBUEEaiEFIAYgB0EBaiIHRw0ACwsgDCAGQQFrIgYgAmxBAnRqIQAgACAGQQJ0aioCACIQQwAAAABcDQALCyAEQSBqJAAPCyAEQQA2AhggBEEBNgIMIARBsP3BADYCCCAEQgQ3AhAgBEEIakG4/cEAELkNAAvvCAMIfwl9AXsjAEGwAmsiBiQAIAYgBTYCJCAGIAQ2AiAgBiABNgIcIAAoAgAhBAJAIAEEQCAGIAQqAgwiEyABKgIMIg+UIAQqAgAiDiABKgIAIhCUkyAEKgIEIhEgASoCBCIVlJMgBCoCCCISIAEqAggiFpSTOAI0IAYgEiAPlCAOIBWUIBMgFpSSIBEgEJSTkjgCMCAGIBIgEJQgESAPlCATIBWUIA4gFpSTkpI4AiwgBiARIBaUIBMgEJQgDiAPlJKSIBIgFZSTOAIoIA4gASoCFCIVlCARIAEqAhAiFpSTIg8gD5IhDyASIBaUIAEqAhgiFCAOlJMiECAQkiEQIAYgBCoCGCAUIBMgD5QgDiAQlCARIBEgFJQgEiAVlJMiFCAUkiIUlJOSkpI4AkAgBiAEKgIUIBUgEyAQlCASIBSUIA4gD5STkpKSOAI8IAYgBCoCECAWIBMgFJQgESAPlCASIBCUk5KSkjgCOAwBCyAGQShqIgFBGGogBEEYaigCADYCACABQRBqIARBEGopAgA3AwAgBiAE/QACAP0LAygLIAZB9AFqIAIgBkEoaiADKAKUAREBACAAKAIEIgcqAgAiDkMAAAAAYARAIAYgDiAGKgKIApIiETgCWCAGIA4gBioChAKSIhI4AlQgBiAOIAYqAoACkiITOAJQIAYgBioC/AEgDpMiDzgCTCAGIAYqAvgBIA6TIhA4AkggBiAGKgL0ASAOkyIOOAJEIAAoAiwhCCAAKAIoIQkgACgCJCEKIAD9AAIUIRcgACgCECELAkAgACgCCCIMIAAoAgwiDSgCEBEEACIEKAIIRQRAQQAhAUEAIQUMAQtBACEBIAQoAgQiAEEAIAAqAhggD2AbQQAgACoCFCAQYBtBACAAKgIQIA5gG0EAIAAqAgggEV8bQQAgACoCBCASXxtBACAAKgIAIBNfGyEFIAAoAjxB/////wNxRQ0AIAAqAiAgE18gACoCJCASX3EgACoCKCARX3EgACoCMCAOYHEgACoCNCAQYHEgACoCOCAPYHEhASAAQSBqIQALIAYgBTYC7AEgBiAENgLkASAGIAE2AuABIAYgADYCYCAGQQA2AlwgBiAGQcQAajYC6AEgBkEQaiAGQdwAahDZAyAGKAIQQQFxBEAgBigCFCEAIA0oAgwhAQNAIAYgADYC8AEgBiAHNgKsAiAGIAM2AqQCIAYgAjYCoAIgBiAINgKcAiAGIAk2ApgCIAYgCjYCkAIgBiAX/QsCgAIgBiALNgL4ASAGIAZBIGo2AqgCIAYgBkEcajYClAIgBiAGQfABajYC/AEgBiAGQShqNgL0ASAMIAAgBkH0AWpBlPjCACABEQIAIAZBCGogBkHcAGoQ2QMgBigCDCEAIAYoAghBAXENAAsLIAYoAuABIgBBIU8EQCAGKAJkIABBAnRBBBDoDgsgBkGwAmokAA8LIAZBADYCbCAGQQE2AmAgBkHo4MIANgJcIAZCBDcCZCAGQdwAakHw4MIAELkNAAuIGQQUfwZ7AX4BfCMAQeAAayIcJAACQAJAAkAgAEUNACAAQRBrIh8oAgBBAWohGyAfIBs2AgAgG0UNASAAKAIADQIgAEF/NgIAIBwgHzYCCCAcIAA2AgQgHCAAQRBqIh42AgAgAkUNACACQQhrIiAoAgBBAWohGyAgIBs2AgAgG0UNASACKAIAIhtBf0YNAiACIBtBAWo2AgAgHCAgNgIUIBwgAjYCECAcIAJBBGoiHTYCDCADRQ0AIANBCGsiISgCAEEBaiEbICEgGzYCACAbRQ0BIAMoAgAiG0F/Rg0CIAMgG0EBajYCACAcICE2AiAgHCADNgIcIBwgA0EEaiIpNgIYIAdFDQAgB0EIayIiKAIAQQFqIRsgIiAbNgIAIBtFDQEgBygCACIbQX9GDQIgByAbQQFqNgIAIBwgIjYCLCAcIAc2AiggHCAHQQRqIio2AiQgCEUNACAIQQhrIiMoAgBBAWohGyAjIBs2AgAgG0UNASAIKAIAIhtBf0YNAiAIIBtBAWo2AgAgHCAjNgI4IBwgCDYCNCAcIAhBBGoiJzYCMCAJRQ0AIAlBCGsiJCgCAEEBaiEbICQgGzYCACAbRQ0BIAkoAgAiG0F/Rg0CIAkgG0EBajYCACAcICQ2AkQgHCAJNgJAIBwgCUEEaiIoNgI8IApFDQAgCkEIayIlKAIAQQFqIRsgJSAbNgIAIBtFDQEgCigCACIbQX9GDQIgCiAbQQFqNgIAIBwgJTYCUCAcIAo2AkwgHCAKQQRqIis2AkggC0UNACALQQhrIiYoAgBBAWohGyAmIBs2AgAgG0UNASALKAIAIhtBf0YNAiALIBtBAWo2AgAgHCAmNgJcIBwgCzYCWCAcIAtBBGoiLDYCVCAUQQNNBEAjAEGwC2siGyQAIBtBIGoiLSAdKQIANwMAIBtBKGoiLiAdQQhqKAIANgIAIBsgKf0AAgD9CwMQIBtBwAhqIh39DAAAAAAAAAAAAAAAAAAAAAD9CwIUIB39DAAAAAAAAAAAAAAAAAAAgD/9CwRAIB39DAAAAAAAAAAAAAAAAAAAAAD9CwRQIB0gFDoAjQEgHf0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgHUGAgID8AzYCECAdQQA7AY4BIB39DAAAgD8AAAAAAAAAAAAAAAD9CwJ0IB1CgICAgJCAgIABNwKEASAdQQA6AIwBIB39DAAAAAAAAAAAAAAAAAAAAAD9CwQwIB1BLGpBADYCACAdQSRqQgA3AgAgHUHgAGr9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIB1B8ABqQQA2AgAgG0HAAWoiFEEQaiAdQRBq/QAEAP0LBAAgFEEgaiAdQSBq/QAEAP0LBAAgFEEwaiAdQTBq/QAEAP0LBAAgG0GYAmogLigCADYCACAbQZACaiAtKQMANwMAIBsgAUEARzoAywkgGyAb/QAEwAj9CwTAASAbKQPICSE1IBtBpAJqICdBCGooAgA2AgAgGyAb/QADEP0LBIACIBsgJykCADcCnAIgG0GwAmogKEEIaigCADYCACAbICgpAgA3A6gCIBtBMGogFEH0APwKAAAgGyA1QoCAgPj//z+DIBVBAEetQoACQgAgFhuEQoCABEIAIBgbhCAZrUI4hoSEIDVCgICAgICAgOAAgyAMRa1CAEICIA0bhEIAQgQgDhuEQgBCCCAPG4RCAEIQIBAbhEIAQiAgERuEQjCGQoCAgICAgMD/AIOEhDcDuAEgGyAaNgK0ASAbIBc4ArABIBsgEzgCrAEgGyASOAKoASAbIAQ4AqQBAn8gBkUEQCAbQbQCaiAqIAUgKyAsEKQMIB0gG0HgAGpB4AD8CgAAIBtB2AVqIBtBwAJq/QACAP0LAwAgG0HoBWogG0HQAmr9AAIA/QsDACAbIBspArgCNwPQBSAbKgK0AiEFQQAMAQsgG0HwBWogG0HoAWopAwA3AwAgG0HgBWogG0HYAWr9AAMA/QsDACAbIBv9AAPIAf0LA9AFIBtBwAhqIBtB4ABqQeAA/AoAAEEBCyEBIBtBQGsgG0HYBWr9AAMA/QsDACAbQdAAaiAbQegFav0AAwD9CwMAIBsgBTgCNCAbIAE2AjAgGyAbKQPQBTcDOCAbQeAAaiAbQcAIaiIGQeAA/AoAACAbQeACaiIBIBtBMGoQpwIgASgC2AIiDARAIAEoAtwCIAxBA3RBBBDoDgsgAUEANgLgAiABQoCAgIDAADcD2AIgAf0M////////////////AAAAAP0LBAAgGyAbKAKcBUH/AXI2ApwFIBtB0AVqIgwgAUHwAvwKAAAgBiAeQfwCaiINIAwQmgYCfyAbKAKYC0GAgICAeEcEQCAbQQhqIRogBiEUIwBBkANrIgwkACANKAIQIgFBAXQhFSANKAIEIRYgDSgCACEYIAEgDSgCCCIOIAFrIgZLBEACQCABQarVqgFLBH9BAAUgAUGABmwhDyAMIA4EfyAMIA5BgANsNgKIAyAMIA0oAgw2AoADQRAFQQALNgKEAyAMQfQCakEQIA8gDEGAA2oQ4gkgDCgC9AJBAUcNASAMKAL8AiEOIAwoAvgCCyAOQZzBwQAQ1w0ACyAMKAL4AiEGIA0gFTYCCCANIAY2AgwgASEGCyABIQ8gBiAVIAFrIgZBACAGIBVNGyIGSQRAIA1BCGogASAGQRBBgAMQ1gYgDSgCECEPCwJAIAFFDQAgDSgCDCEZAkAgAUEESQRAIAEhEAwBCyAZIA9BgANsaiEGIAH9Ef0MAAAAAAEAAAACAAAAAwAAAP2uASEwIAFB/P//A3EiESABaiEQIA8gEWohDyAW/REhMSAY/REhMiAVQQFr/REhMyARIQ4DQCAGQQA2AgAgBkGACWpBADYCACAGQYAGakEANgIAIAZBgANqQQA2AgAgBkGECWogMv0MAQAAAAEAAAABAAAAAQAAACAwIDP9NyI0/VIiL/1aAgADIAZBhAZqIC/9WgIAAiAGQYQDaiAv/VoCAAEgBkEEaiAv/VoCAAAgBkGICWogMSAw/QwBAAAAAQAAAAEAAAABAAAA/a4BIDT9UiIv/VoCAAMgBkGIBmogL/1aAgACIAZBiANqIC/9WgIAASAGQQhqIC/9WgIAACAGQYAMaiEGIDD9DAQAAAAEAAAABAAAAAQAAAD9rgEhMCAOQQRrIg4NAAsgASARRg0BCyAVIBBrIhFBAWshFSAZIA9BgANsaiEGQQAhDgNAIAZBADYCACAGQQRqIBhBASAOIBVGIhkbNgIAIAZBCGogFiAQIA5BAWoiDmogGRs2AgAgBkGAA2ohBiAOIBFHDQALIA4gD2ohDwsgDSABNgIEIA1BATYCACANIA82AhAgDCANIBQQmgYgDCgC2AJBgICAgHhHBEAgDCgCtAIiAARAIABBMEEEEOgOCyAMKALYAiIABEAgDCgC3AIgAEEDdEEEEOgOC0GQwMEAQT4gDEGPA2pBgMDBAEHQwMEAEM0KAAsgGiAMKQMANwMAIAxBkANqJAAgGygCDCEGIBsoAggMAQsgGygCxAghBiAbKALACAshAQJAAkAgASAeKAKMA08NACAeKAKIAyABQYADbGoiDCgCAEEBRw0AIAwoAgQgBkcNACAMIAwoAswCQQFyNgLMAiAeKAL4AiIMIB4oAvACRgRAIB5B8AJqQfC/wQAQtAgLIB4oAvQCIAxBA3RqIg0gBjYCBCANIAE2AgAgHiAMQQFqNgL4AiAbQbALaiQAIAGtIAatQiCGhL8hNgwBC0GRgMAAQRNBsMLBABDRCwALIAsgCygCAEEBazYCACAmICYoAgBBAWsiATYCACABRQRAIBxB3ABqEKUNCyAKIAooAgBBAWs2AgAgJSAlKAIAQQFrIgE2AgAgAUUEQCAcQdAAahCpDQsgCSAJKAIAQQFrNgIAICQgJCgCAEEBayIBNgIAIAFFBEAgHEHEAGoQqQ0LIAggCCgCAEEBazYCACAjICMoAgBBAWsiATYCACABRQRAIBxBOGoQqQ0LIAcgBygCAEEBazYCACAiICIoAgBBAWsiATYCACABRQRAIBxBLGoQqQ0LIAMgAygCAEEBazYCACAhICEoAgBBAWsiATYCACABRQRAIBxBIGoQpQ0LIAIgAigCAEEBazYCACAgICAoAgBBAWsiATYCACABRQRAIBxBFGoQqQ0LIABBADYCACAfIB8oAgBBAWsiADYCACAARQRAIBxBCGoQ6wwLIBxB4ABqJAAgNg8LQeDUwQBBGRCCDwALEIMPCwALEIQPAAv4BwQNfxh9AX4BeyMAQZABayIIJAAgACoCDCEcIAEqAgQhHiAAKgIEIRggASoCCCEfIAAqAgAhGSABKgIAISAgACoCCCEaIAhBCGoiC0EAQdgA/AsAIAggHyAcIBggIJQgGSAelJMiFiAWkiIWlCAYIBogHpQgGCAflJMiGyAbkiIblCAZIBkgH5QgGiAglJMiFSAVkiIVlJOSkiIhjCIiOAJoIAggHiAcIBWUIBkgFpQgGiAblJOSkiIXjCIjOAJkIAggICAcIBuUIBogFZQgGCAWlJOSkiIWjCIkOAJgIAIgCEHgAGoiCSALIgIgAxEBACAGKAJEIREgBkIENwJEIAYoAkAhDCAGQQA2AkAgCCgCXCISBEAgBkFAayENIAhBOGohAyAEICGUISUgBCAXlCEmIAQgFpQhJyAJQQxqIQ4gCEH4AGoiCSAIQYQBaiIKIAcbIQ8gCiAJIAcbIRAgACoCGCEoIAAqAhQhKSAAKgIQISpBACEJIAIhAEEEIQtBACECA0ACQAJAIAJBBEcEQCAZIABBBGoqAgAiFpQgGCAAKgIAIhuUkyIVIBWSIRUgGiAblCAZIABBCGoqAgAiIZSTIhcgF5IhFyAfICggISAcIBWUIBkgF5QgGCAYICGUIBogFpSTIh0gHZIiHZSTkpKSIiuUICAgKiAbIBwgHZQgGCAVlCAaIBeUk5KSkiIslCAeICkgFiAcIBeUIBogHZQgGSAVlJOSkpIiF5SSkiIVIASTIh0gBV8NAQwCC0EEQQRBkPrCABCFCwALIAggKyAfIBWUkzgCgAEgCCAXIB4gFZSTOAJ8IAggLCAgIBWUkzgCeCAIICEgJZM4AowBIAggFiAmkzgCiAEgCCAbICeTOAKEASAIQegAaiAQQQhqKAIANgIAIA4gDykCADcCACAOQQhqIA9BCGooAgA2AgAgCCAQKQIANwNgQYCAgIB8IAMoAgAiCiAHGyETIApBgICAgHwgBxshFCANKAIAIAlGBEAgDUGg+sIAEJUIIAYoAkQhCwsgCEHwAGopAwAhLSAI/QADYCEuIAsgCUEkbGoiCiATNgIgIAogFDYCHCAKIB04AhggCiAu/QsCACAKQRBqIC03AgAgBiAJQQFqIgk2AkgLIABBDGohACADQQRqIQMgEiACQQFqIgJHDQALCwJAIAcEQCAGICI4AlQgBiAjOAJQIAYgJDgCTCAGIAEpAgA3AlggBkHgAGogAUEIaigCADYCAAwBCyAGICI4AmAgBiAjOAJcIAYgJDgCWCAGQcwAaiIAIAEpAgA3AgAgAEEIaiABQQhqKAIANgIACyAMBEAgESAMQSRsQQQQ6A4LIAhBkAFqJAAL9QgBDX8jAEHgAWsiECQAAkACQAJAIABFDQAgAEEIayIXKAIAQQFqIREgFyARNgIAIBFFDQEgACgCACIRQX9GDQIgACARQQFqNgIAIBAgFzYCECAQIAA2AgwgECAAQQhqIhg2AgggAUUNACABQQhrIhEoAgBBAWohEiARIBI2AgAgEkUNASABKAIAIhJBf0YNAiABIBJBAWo2AgAgECARNgIcIBAgATYCGCAQIAFBBGoiGTYCFCACRQ0AIAJBEGsiEigCAEEBaiETIBIgEzYCACATRQ0BIAIoAgAiE0F/Rg0CIAIgE0EBajYCACAQIBI2AiggECACNgIkIBAgAkEQaiIaNgIgIANFDQAgA0EIayITKAIAQQFqIRQgEyAUNgIAIBRFDQEgAygCACIUQX9GDQIgAyAUQQFqNgIAIBAgEzYCNCAQIAM2AjAgECADQQRqIhs2AiwgBEUNACAEQQhrIhQoAgBBAWohFSAUIBU2AgAgFUUNASAEKAIAIhVBf0YNAiAEIBVBAWo2AgAgECAUNgJAIBAgBDYCPCAQIARBBGoiHDYCOCAFRQ0AIAVBCGsiFSgCAEEBaiEWIBUgFjYCACAWRQ0BIAUoAgAiFkF/Rg0CIAUgFkEBajYCACAQIBU2AkwgECAFNgJIIBAgBUEEaiIWNgJEIBAgCDYCUCAQIA82AlQgECAJNgJ8IBAgB0EARzoAdyAQIAY4AnAgECAWNgJsIBAgHDYCaCAQIBs2AmQgECAaNgJgIBAgGTYCXCAQIBg2AlggECAQQdAAajYCeCAQIAr8AzYChAEgECAKRAAAEAAAAPBBYjYCgAEgECAMOQOQASAQIAtBAEetNwOIASAQIA45A6ABIBAgDUEAR603A5gBIBAgEEH3AGo2AtgBIBAgEEHwAGo2AtQBIBAgEEHkAGo2AtABIBAgEEHgAGo2AswBIBAgEEHcAGo2AsgBIBAgEEHYAGo2AsQBIBAgEEH4AGo2AsABIBAgEEHsAGo2ArwBIBAgEEHoAGo2ArgBIBAgEEGYAWo2ArQBIBAgEEGIAWo2ArABIBAgEEGAAWo2AqwBIBAgEEH8AGo2AqgBAkAgDxAEQQFGBEAgECAQQdQAajYC3AEgEEGoAWogEEHcAWoQrwEMAQsgEEGoAWpBABCvAQsgBSAFKAIAQQFrNgIAIBUgFSgCAEEBayIFNgIAIAVFBEAgEEHMAGoQqQ0LIAQgBCgCAEEBazYCACAUIBQoAgBBAWsiBDYCACAERQRAIBBBQGsQqQ0LIAMgAygCAEEBazYCACATIBMoAgBBAWsiAzYCACADRQRAIBBBNGoQ7gwLIAIgAigCAEEBazYCACASIBIoAgBBAWsiAjYCACACRQRAIBBBKGoQ6wwLIAEgASgCAEEBazYCACARIBEoAgBBAWsiATYCACABRQRAIBBBHGoQ6QwLIAAgACgCAEEBazYCACAXIBcoAgBBAWsiADYCACAARQRAIBBBEGoQ6AwLIBBB4AFqJAAPCxCDDwsACxCEDwALmAgCD38FfiMAQTBrIgUkACAFIAI2AiggASgCDCEKIAUgBUEoajYCLAJAIAogCkEBaiICTQRAIAEoAgQiCyALQQFqQQN2QQdsIAtBCEkbIgNBAXYgAkkEQAJAAkACQAJ/IANBAWoiAyACIAIgA0kbIgJBD08EQCACQf////8BSw0CQX8gAkEDdEEHbkEBa2d2QQFqDAELQQRBCEEQIAJBCEkbIAJBBEkbCyICrUIcfiISQiCIpw0BIBKnIgNBeEsNASADQQdqQXhxIgcgAkEIaiIMaiEDIAMgB0kNASADQfj///8HSw0BIANBCBCRDiIGDQJBCCADQfjKxAAoAgAiAEHMCCAAGxEAAAALEKcMIAUoAiQhAiAFKAIgIQMMBAsQpwwgBSgCFCECIAUoAhAhAwwDCyAGIAdqIQYgDARAIAZB/wEgDPwLAAsgAkEBayIJIAJBA3ZBB2wgCUEISRshDQJAIApFBEAgASgCACEHDAELIAZBCGohDiABKAIAIgcpAwBCf4VCgIGChIiQoMCAf4MhEiAFKAIoIQ9BACECIAohDCAHIQMDQCASUARAA0AgAkEIaiECIANBCGoiAykDAEKAgYKEiJCgwIB/gyISQoCBgoSIkKDAgH9RDQALIBJCgIGChIiQoMCAf4UhEgsgDykDAEKEgICAEIUiFUL/////D4MhEyAHIBJ6p0EDdiACaiIQQWRsaiIEQRxrNQIAQt2h8csMhSEUIARBGGs1AgBCt9OwhQyFIhYgFUIgiCIVfiAEQRRrKQIAIBMgFH6FhSATIBZ+IBQgFX6FQiCJhSITQiCIIhRCt9OwhQx+IBNC/////w+DIhNC3aHxywx+hSAUQt2h8csMfiATQrfTsIUMfoVCIIiFpyIRIAlxIgQgBmopAABCgIGChIiQoMCAf4MiE1AEQEEIIQgDQCAEIAhqIQQgCEEIaiEIIAQgCXEiBCAGaikAAEKAgYKEiJCgwIB/gyITUA0ACwsgEkIBfSASgyESIBN6p0EDdiAEaiAJcSIEIAZqLAAAQQBOBEAgBikDAEKAgYKEiJCgwIB/g3qnQQN2IQQLIAQgBmogEUEZdiIIOgAAIA4gBEEIayAJcWogCDoAACAGIARBf3NBHGxqIgRBGGogByAQQX9zQRxsaiIIQRhqKAAANgAAIARBEGogCEEQaikAADcAACAEIAj9AAAA/QsAACAMQQFrIgwNAAsLIAEgCTYCBCABIAY2AgAgASANIAprNgIIQYGAgIB4IQMgC0UNAiAHIAtBHGxBI2pBeHEiAmsgAiALakEJakEIEOgODAILIAEgBUEsakGNAkEcEMYCQYGAgIB4IQMMAQsQpwwgBSgCDCECIAUoAgghAwsgACACNgIEIAAgAzYCACAFQTBqJAALtAcCAX8gfSMAQeAAayIIJAAgCEEMaiACIAcqAgQiDhDcAiAIKgIMIg8gBioCBCIUlCAIKgIQIhMgBioCACIVlJMiCSAJkiEJIAgqAhQiCiAVlCAPIAYqAggiEJSTIgsgC5IhCyAQIAgqAhgiFiAJlCAPIAuUIBMgEyAQlCAKIBSUkyIQIBCSIheUk5KSIRAgFCAWIAuUIAogF5QgDyAJlJOSkiEUIBUgFiAXlCATIAmUIAogC5STkpIhFSAHKgIIIQ8gBSoCCCEWIAUqAgQhFyAFKgIAIRsgAyoCCCEmIAMqAgQhJyADKgIAISggByoCACETQQAhBgJAA0AgByAOAn0gAUMAAAAAXUUEQCABQwAAoDVeRQ0DIAcgDjgCACAOIRMgDwwBCyAHIA44AgggDiEPIBMLkkMAAAA/lCIOOAIEIA8gE5NDAACgNV1FBEAgCEEoaiACIA4Q3AIgCEHEAGogBCAOENwCIBAgCCoCNCILIBUgCCoCLCIBlCAUIAgqAigiCZSTIgogCpIiHpQgASAUIAgqAjAiCpQgECABlJMiDSANkiIflCAJIBAgCZQgFSAKlJMiDSANkiIglJOSkiEhIAEgCCoCVCAIKgI4kyIilCAJIAgqAlggCCoCPJMiI5STIg0gDZIhDSAKICOUIAEgCCoCXCAIKgJAkyIMlJMiGCAYkiEYICEgDCALIA2UIAEgGJQgCSAJIAyUIAogIpSTIgwgDJIiJJSTkpIgFiAKIAgqAkwiDJQgASAIKgJIIhGUIAkgCCoCRCISlCALIAgqAlAiGZSSkpIiJSAKIBGUIAsgEpQgCSAZlJMgASAMlJOSIhwgF5QgCyARlCAJIAyUkiABIBmUkyAKIBKUkyIdIBuUkyIaIBqSIhqUIBwgASASlCALIAyUIAkgEZSTkiAKIBmUkyIMIBuUIBwgFpSTIhEgEZIiEZQgHSAdIBaUIAwgF5STIhIgEpIiEpSTkpKSlCAVIAsgH5QgCiAglCABIB6Uk5KSIhkgIiALIBiUIAogJJQgASANlJOSkiAbICUgEpQgHSAalCAMIBGUk5KSkpQgFCALICCUIAkgHpQgCiAflJOSkiIBICMgCyAklCAJIA2UIAogGJSTkpIgFyAlIBGUIAwgEpQgHCAalJOSkpKUkpIgGSAolCABICeUkiAhICaUkpMhASAGQQFqIQYMAQsLIAcgDzgCBAsgACAGNgIMIAAgBykCADcCACAAQQhqIAdBCGooAgA2AgAgCEHgAGokAAv7BwMMfQF7A38jAEFAaiIEJAAgACgCBCITKAIAIRQgEygCBCIVKAIAIQUCQAJAAkACQAJAIAEEQCAEIAEqAggiCSAFKgIIIg2UIAEqAgQiCyAFKgIEIgaUIAEqAgAiCiAFKgIAIgeUIAEqAgwiDCAFKgIMIgiUkpKSOAIsIAQgCyAHlCAMIA2UIAogBpSTkiAJIAiUkzgCKCAEIAwgBpQgCiANlJIgCyAIlJMgCSAHlJM4AiQgBCAJIAaUIAwgB5QgCiAIlJMgCyANlJOSOAIgIAsgBSoCECABKgIQIg+TIg2UIAogBSoCFCABKgIUIhCTIg6UkyIGIAaSIQcgCSAOlCALIAUqAhggASoCGCIRkyIGlJMiCCAIkiEIIAQgBiAMIAeUIAsgCJQgCiAKIAaUIAkgDZSTIgYgBpIiBpSTkpI4AjggBCAOIAwgBpQgCiAHlCAJIAiUk5KSOAI0IAQgDSAMIAiUIAkgBpQgCyAHlJOSkjgCMCAEQQRqIBQgBEEgaiACIAMgEygCCCATKAIMIBMoAhAqAgAQZiAEKAIEIgFBA0cNAQwECyAEQSBqIgFBGGogBUEYaigCADYCACABQRBqIAVBEGopAgA3AwAgBCAF/QACAP0LAyAgBEEEaiAUIAEgAiADIBMoAgggEygCDCATKAIQKgIAEGYgBCgCBCIBQQNGDQND//9//yEHIAT9AAIQIRIgBCoCDCEGIAQqAgghDSABQQFrDgIBAgQLQ///f/8hByAE/QACECESIAQqAgwhBiAEKgIIIQ0CQCABQQFrDgIAAgQLIBAgBiAMIAkgDZQgCiAEKgIQIgeUkyIIIAiSIgiUIAkgCyAHlCAJIAaUkyIOIA6SIg6UIAogCiAGlCALIA2UkyIGIAaSIhCUk5KSkiEGIA8gDSAMIA6UIAsgEJQgCSAIlJOSkpIhDSASIBEgByAMIBCUIAogCJQgCyAOlJOSkpL9IAAhEgsgFSgCACIBKgIMIQkgEv0fAiIOIAEqAgAiC5QgEv0fASIQIAEqAgQiCpSTIgwgDJIhDCAQIAEqAggiB5QgEv0fAyIPIAuUkyIIIAiSIQggASoCGCAPIAkgDJQgCyAIlCAKIA8gCpQgDiAHlJMiDyAPkiIPlJOSkpIgEv0fAJMiESARlCABKgIQIBAgCSAPlCAKIAyUIAcgCJSTkpKSIA2TIgogCpQgASoCFCAOIAkgCJQgByAPlCALIAyUk5KSkiAGkyIJIAmUkpKRIQdBASEBDAILQ///f38hB0ECIQEMAQtD//9/fyEHQQIhAQsgACgCACIAIBL9CwIQIAAgBjgCDCAAIA04AgggACABNgIEIAAgBzgCACAEQUBrJAALnwgCCn8NfSMAQSBrIgYkACABQQRqIQcgAUGEAWohCSACKAIIIQsgAigCBCEMIAIqAiQhFyACKgIgIRggAioCHCEZIAIqAhQhECACKgIQIREgAioCDCESIAIqAhghEyACKAIAIQgCQAJAAkADQCABKAKMASICRQRAIAchBCAJIgMoAgAiAkEhTwRAIAEoAgghBCAHIQMgASgCBCECCyACRQ0DIAMgAkEBayICNgIAIAQgAkECdGooAgAhAgsgAUEANgKMASACKAIcQf////8DcUEBRwRAIAIoAgwiBSABKAKIASIEKAIIIgJPDQIgASoCpAEhDiABKgKgASEPQQEhAwJAIAEqApwBIg0gBCgCBCAFQQZ0aiICKgIAYEUNACACKgIEIA9fRQ0AIAIqAgggDl9FDQAgAioCECABKgKQAWBFDQAgAioCFCABKgKUAWBFDQAgAioCGCABKgKYAWBFDQAgASACNgKMAUEAIQMLIAIqAiAgDV9FDQEgAioCJCAPX0UNASACKgIoIA5fRQ0BIAIqAjAgASoCkAFgRQ0BIAIqAjQgASoClAFgRQ0BIAIqAjggASoCmAFgRQ0BIAJBIGohCiADRQRAAn8gCSgCACIFQSFJBEAgBSEEIAkhA0EgIQUgBwwBCyABKAIEIQQgByEDIAEoAggLIQIgBCAFRgRAIAEQoAQgASgCBCEEIAchAyABKAIIIQILIAIgBEECdGogCjYCACADIAMoAgBBAWo2AgAMAgsgASAKNgKMAQwBCyACKAIMIgUgCCgCQCIDKAIQTw0AIAMoAgwgBUGwAWxqIgIoAgBBAUcNACAIIAgoAjwgBSACKAIEIgQgAkEQaiIDEMkFRQ0AIAYgECACKgKMASIUlCARIAIqAogBIg6UIBIgAioChAEiD5QgEyACKgKQASINlJKSkjgCECAGIBEgD5QgEyAUlCASIA6Uk5IgECANlJM4AgwgBiATIA6UIBIgFJSSIBEgDZSTIBAgD5STOAIIIAYgECAOlCATIA+UIBIgDZSTIBEgFJSTkjgCBCARIAIqApQBIBmTIhSUIBIgAioCmAEgGJMiDpSTIg0gDZIhFSAQIA6UIBEgAioCnAEgF5MiD5STIg0gDZIhFiAGIA8gEyAVlCARIBaUIBIgEiAPlCAQIBSUkyINIA2SIg2Uk5KSOAIcIAYgDiATIA2UIBIgFZQgECAWlJOSkjgCGCAGIBQgEyAWlCAQIA2UIBEgFZSTkpI4AhQgCCgCMCAGQQRqIAwgCyACKAJQIAIoAlQiAigCCEEBa0F4cWpBCGogAiAIKAI0KAIMERwAQQFxRQ0ACyAAIAWtIAStQiCGhDcCAAwCCyAFIAJB3KvBABCFCwALQQAhAyABQQA2AowBCyAAIAM2AgggBkEgaiQAC+gLAiN7BX8jAEEQayIrJAAgAP0ABEAhGiAG/QAEQCENIAD9AAQwIRsgBv0ABDAhDiAA/QAEUCEcIAb9AARQIQ8gAv0ABAAhCCAG/QAEACEJIAJBEGoiLP0ABAAhCiAG/QAEECELIAJBIGoiLf0ABAAhDCAG/QAEICEQIAf9AAQAIRQgB/0ABBAhFSAH/QAEICEWIAD9AASgASEdIAf9AARAIREgAP0ABJABIR4gB/0ABDAhEiAA/QAEsAEhHyAH/QAEUCETIAD9AASQAyEgIAD9AAQQISEgAP0ABAAhIiAA/QAEICEjIAH9AAQAIRcgAUEQaiIu/QAEACEYIAFBIGoiL/0ABAAhGSAA/QAEcCEkIAD9AARgISUgAP0ABIABISYgAP0ABIADIScgAP0ABKAEISggAP0ABJAEISkgAP0ABIAEISogK/0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgICAJIAj95gEgCyAK/eYB/eQBIBAgDP3mAf3kASAOIBv95gEgDSAa/eYB/eQBIA8gHP3mAf3kAf3kASAUIAj95gEgFSAK/eYB/eQBIBYgDP3mAf3kAf3lASASIB795gEgESAd/eYB/eQBIBMgH/3mAf3kAf3kAf3kASIIIAj95gEhCiAAIAD9AATQAyIMIAggJyAXIAn95gEgGCAL/eYB/eQBIBkgEP3mAf3kASAOICL95gEgDSAh/eYB/eQBIA8gI/3mAf3kAf3kASAXIBT95gEgGCAV/eYB/eQBIBkgFv3mAf3kAf3lASASICX95gEgESAk/eYB/eQBIBMgJv3mAf3kAf3kAf3kASIJIAn95gEiCyAK/eQB/QwAAAAAAAAAAAAAAAAAAAAA/QwAAIA/AACAPwAAgD8AAIA/ICggCSAI/eYB/eYBIAsgKv3mASApIAr95gH95AH95AEiCP3nASAI/QwI5TweCOU8HgjlPB4I5Twe/UMgK/0ABAD9DAjlPJ4I5TyeCOU8ngjlPJ795AEgCP1D/U79Uv3mASIK/eYB/eUBIgggBSAA/QAEwAMiCyAJIAr95gH95QEiCSAJ/eYBIAggCP3mAf3kAf3jASIK/ecBIhD95gEgCCAKIAX9RCIF/VIiCP0LBNADIAAgCSAQ/eYBIAkgBf1SIgn9CwTAAyAGIAb9AAQAIAP9AAQAIAggDP3lASIFIAL9AAQA/eYBIAH9AAQAIAkgC/3lASII/eYB/eQB/eYB/eQB/QsEACAGIAb9AAQQIAP9AAQQIAUgLP0ABAD95gEgLv0ABAAgCP3mAf3kAf3mAf3kAf0LBBAgBiAD/QAEICAFIC39AAQA/eYBIC/9AAQAIAj95gH95AH95gEgBv0ABCD95AH9CwQgIAD9AATAASEJIAD9AATwASEKIAD9AATQASELIAD9AASAAiEMIAYgDyAIIAD9AATgAf3mASAFIAD9AASQAv3mAf3kAf3kAf0LBFAgBiANIAggC/3mASAFIAz95gH95AH95AH9CwRAIAYgDiAIIAn95gEgBSAK/eYB/eQB/eQB/QsEMCAr/QwAAAAAAAAAAAAAAAAAAAAA/QsEACAr/QAEACENIC/9AAQAIQ4gLv0ABAAhDyAB/QAEACEJICv9DAAAAAAAAAAAAAAAAAAAAAD9CwQAICv9AAQAIQogByASIAggAP0ABKAC/eYBIAUgAP0ABNAC/eYB/eQB/eQB/QsEMCAHIBEgCCAA/QAEsAL95gEgBSAA/QAE4AL95gH95AH95AH9CwRAIAcgEyAIIAD9AATAAv3mASAFIAD9AATwAv3mAf3kAf3kAf0LBFAgByAJIA0gCP3lASII/eYBIAogBf3lASIFIAL9AAQA/eYB/eQBIAT9AAQA/eYBIAf9AAQA/eQB/QsEACAHIAggD/3mASAFICz9AAQA/eYB/eQBIAT9AAQQ/eYBIAf9AAQQ/eQB/QsEECAHIAggDv3mASAFIC39AAQA/eYB/eQBIAT9AAQg/eYBIAf9AAQg/eQB/QsEICArQRBqJAAL4RoDF38BfgJ7IwBB8ABrIhskAAJAAkACQCABRQ0AIAFBCGsiICgCAEEBaiEdICAgHTYCACAdRQ0BIAEoAgANAiABQX82AgAgGyAgNgIIIBsgATYCBCAbIAFBBGoiHTYCACADRQ0AIANBCGsiISgCAEEBaiEcICEgHDYCACAcRQ0BIAMoAgAiHEF/Rg0CIAMgHEEBajYCACAbICE2AhQgGyADNgIQIBsgA0EEaiIiNgIMIARFDQAgBEEIayIjKAIAQQFqIRwgIyAcNgIAIBxFDQEgBCgCACIcQX9GDQIgBCAcQQFqNgIAIBsgIzYCICAbIAQ2AhwgGyAEQQRqIio2AhggBUUNACAFQQhrIiQoAgBBAWohHCAkIBw2AgAgHEUNASAFKAIAIhxBf0YNAiAFIBxBAWo2AgAgGyAkNgIsIBsgBTYCKCAbIAVBBGoiLDYCJCAIRQ0AIAhBCGsiJSgCAEEBaiEcICUgHDYCACAcRQ0BIAgoAgAiHEF/Rg0CIAggHEEBajYCACAbICU2AjggGyAINgI0IBsgCEEEaiIcNgIwIAlFDQAgCUEIayImKAIAQQFqIR4gJiAeNgIAIB5FDQEgCSgCACIeQX9GDQIgCSAeQQFqNgIAIBsgJjYCRCAbIAk2AkAgGyAJQQRqIh42AjwgCkUNACAKQQhrIicoAgBBAWohHyAnIB82AgAgH0UNASAKKAIAIh9Bf0YNAiAKIB9BAWo2AgAgGyAnNgJQIBsgCjYCTCAbIApBBGoiHzYCSCAaRQ0AIBpBEGsiKCgCAEEBaiEpICggKTYCACApRQ0BIBooAgANAiAaQX82AgAgGyAoNgJcIBsgGjYCWCAbIBpBEGoiKTYCVCAbQeAAaiErIAJBAEchLSAQQQBHIS4gGEEARyEvIwBB8AZrIhAkACAQQSBqIjBBGGoiMSAqQQhqKAIANgIAIBAgBjYCHCAQICz9AAIA/QsDICAQICopAgA3AzAgIigCACIYKAIAIQIgGCACQQFqNgIAAkACQAJAAkACQAJAAkAgAkEATgRAIBBB0AVqIgIgIigCBDYCHCACIBg2AhggAkEAOwFoIAJBgICA+AM2AjAgAkKAgICAgICAwD83AxAgAv0MAAAAAAAAAAAAAAAAAAAAAP0LAjQgAv0MAACAPwAAAAAAAAAAAAAAAP0LAkQgAkJ/NwMgIAL9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIAJBj4CACDYCZCAC/QwAAAAAAAAAAAAAAAAAAAAA/QsCVCACQShqQn83AwAgEEGgA2ogAkEQav0ABAAiM/0LBAAgEEG4AWoiGCACQe4Aai8BADsBACAQQUBrIgJBEGogM/0LBAAgECAQKQPQBSIyNwOQAyAQIBApA9gFNwOYAyAQIDI3A7AEIBAgECgBugY2ArQBIBAgEP0ABJAD/QsEQCAQQZABaiAxKAIANgIAIBBBiAFqIDBBEGopAwA3AwAgECAQ/QADIP0LA3ggAkHuAGogGC8BADsBACAQIBAoArQBNgGqASAQQQMgDyAPQQNPGzoAqQEgEEEDIA4gDkEDTxs6AKgBIBBBACATIBNB0CNxG0H//wNxQYCABEEAIC4bciAtQRh0cjYCpAEgECAXOAKgASAQIBY4ApwBIBAgFUEAIBVBBEkbNgKYASAQIBRBACAUQQhJGzYClAEgECANOAJ0IBAgDDgCcCAQIBJB//8DcTYCbCAQIBJBEHY2AmggECARQf//A3E2AmQgECARQRB2NgJgIAYOAwIDAQQLAAsgEEHEAWoiDiAcIAcgHiAfEKQMIBBB0AVqIgIgEEFAayIRQfAA/AoAACAQQbAEaiEPAkBBLEEEEJEOIgYEQCAGIA79AAIA/QsCACAGQShqIA5BKGooAgA2AgAgBkEgaiAOQSBqKQIANwIAIAZBEGogDkEQav0AAgD9CwIAIAIoAhBBAk8EQCACKAIUQSxBBBDoDgsgAiAGNgIUIAJBAjYCECAPIAJB8AD8CgAADAELDAULIBEgD0HwAPwKAAAMAwsgEEHQBWoiAiAQQUBrIg5B8AD8CgAAIBBBsARqIQYgAigCEEECTwRAIAIoAhRBLEEEEOgOCyACIAs4AhQgAkEANgIQIAYgAkHwAPwKAAAgDiAGQfAA/AoAAAwCCyAQQdAFaiICIBBBQGsiDkHwAPwKAAAgEEGwBGohBiACKAIQQQJPBEAgAigCFEEsQQQQ6A4LIAIgBzgCFCACQQE2AhAgBiACQfAA/AoAACAOIAZB8AD8CgAADAELIBBBADYC0AVBACAQQRxqQYDNwQAgEEHQBWpByNHBABD3DAALIBBB8AFqIQ4gEEFAayIPKAIYIhEoAgAhAiARIAJBAWo2AgACQAJAIAJBAE4EQCAPKAIUIQYgDy0AZiESIA8tAGchEyAPKAJYIRQgDygCVCEVIA8vAWQhGCAP/QAEICEzIA8tAGkhHCAPLQBoIR4gDyoCNCEHIA8qAjAhCyAPKAIcIR8gDygCECIiQQJPDQEgBiECDAILAAtBLEEEEJEOIgJFDQEgAiAG/QACAP0LAgAgAkEoaiAGQShqKAIANgIAIAJBIGogBkEgaikCADcCACACQRBqIAZBEGr9AAIA/QsCAAsgDiASOgCYASAOIB82AkQgDiARNgJAIA5B/wM2AnAgDiACNgI8IA4gIjYCOCAOQQA2AhAgDiAeOgBsIA4gHDoAbSAOIAc4AmggDiALOAJkIA4gDykCODcCdCAOQfwAaiAPQUBr/QACAP0LAgAgDkGMAWogD0HQAGooAgA2AgAgD/0ABAAhNCAOIA8pAlxCIIk3A5ABIA5BAEECIBNBAXEbOgBiIA4gGDsBYCAOIBQ2AlwgDiAVNgJYIA4gM/0LA0ggDiA0/QsEAAJAAkACQAJAAkAgL0UEQCAQQZADaiICIA5BoAH8CgAAIAJB/wM2AnAgEEEANgKgAyAQQbAEaiIGIAJBoAH8CgAAIBBB0AVqIgIgHSAGEPkFAn8gECgC4AVBAkcEQCAQQRBqIB0gAhDQAiAQKAIUIQYgECgCEAwBCyAQKALUBSEGIBAoAtAFCyECIAIgHSgCEE8NAiAdKAIMIAJBsAFsaiIOKAIAQQFHDQIgDigCBCAGRw0CIA4gDigCgAFBAXI2AoABIB0oAiQiDiAdKAIcRgRAIB1BHGpB8L/BABC0CAsgHSgCICAOQQN0aiIPIAY2AgQgDyACNgIAIB0gDkEBajYCJAwBCyAQQZADaiIOIBBB8AFqQaAB/AoAACAZvSIyQiCIpyECIDKnIQYgDkH/AzYCcCAQKAKgA0UEQCAQQcQDaiAQQZwEaigCADYCACAQQbwDaiAQQZQEaikCADcCACAQIBD9AAKEBP0LAqwDIBBBATYCoAMLIBAgAjYCqAMgECAGNgKkAyApIAYgAhDeCSIPRQ0CIBBBsARqIgIgEEGQA2pBoAH8CgAAIBBB0AVqIgYgHSACEPkFAn8gECgC4AVBAkcEQCAQQQhqIB0gBhDQAiAQKAIMIQYgECgCCAwBCyAQKALUBSEGIBAoAtAFCyECIAIgHSgCEE8NAyAdKAIMIAJBsAFsaiIOKAIAQQFHDQMgDigCBCAGRw0DIA4gDigCgAFBAXI2AoABIB0oAiQiESAdKAIcRgRAIB1BHGpB8L/BABC0CAsgHSgCICARQQN0aiISIAY2AgQgEiACNgIAIB0gEUEBajYCJCAOKAIgRQ0EIA9B2AJqIA8tAOUCIA9BvAJqIA9BIGogD0HYAWogD0EwaiACIAYgDkGEAWogDkEkaiAOQdAAaiAOQcgAahCXAgsgK0IBNwMAIBAoAlgiDygCACEOIA8gDkEBazYCACArIAKtIAatQiCGhDcDCCAOQQFGBEAgEEHYAGoQigoLIBAoAlBBAk8EQCAQKAJUQSxBBBDoDgsgEEHwBmokAAwFC0GRgMAAQRNB7MPBABDRCwALQaDDwQBBHEG8w8EAENELAAtBzMPBABDyDgALQdzDwQAQ8g4AC0EEQSxB+MrEACgCACIAQcwIIAAbEQAAAAsgGysDaCEZIBspA2AhMiAaQQA2AgAgKCAoKAIAQQFrIgI2AgAgAkUEQCAbQdwAahDrDAsgCiAKKAIAQQFrNgIAICcgJygCAEEBayICNgIAIAJFBEAgG0HQAGoQpQ0LIAkgCSgCAEEBazYCACAmICYoAgBBAWsiAjYCACACRQRAIBtBxABqEKkNCyAIIAgoAgBBAWs2AgAgJSAlKAIAQQFrIgI2AgAgAkUEQCAbQThqEKkNCyAFIAUoAgBBAWs2AgAgJCAkKAIAQQFrIgI2AgAgAkUEQCAbQSxqEKUNCyAEIAQoAgBBAWs2AgAgIyAjKAIAQQFrIgI2AgAgAkUEQCAbQSBqEKkNCyADIAMoAgBBAWs2AgAgISAhKAIAQQFrIgI2AgAgAkUEQCAbQRRqEOALCyABQQA2AgAgICAgKAIAQQFrIgE2AgAgAUUEQCAbQQhqEO4MCyAAIDI+AgAgACAZRAAAAAAAAAAAIDKnGzkDCCAbQfAAaiQADwsQgw8LAAsQhA8AC8wIAgh/AX4jAEEgayIFJAAgAC0AACEDIABBAToAACAFIAM6AAcgA0EBRwRAAkAgAC0ANA0AIABBAToANAJAIAAoAgwiAUUNACAAKAIIIgIhAyABQQxsIgZBDGsiB0EMbiIBQQdxQQdHBEBBACABQQFqQQdxayEBA0AgAygCACIIKAIMIQQgCCAEQQIgBBs2AgwgA0EMaiEDIAFBAWoiAQ0ACwsgB0HUAEkNACACIAZqIQQDQCADKAIAIgIoAgwhASACIAFBAiABGzYCDCADQQxqKAIAIgIoAgwhASACIAFBAiABGzYCDCADQRhqKAIAIgIoAgwhASACIAFBAiABGzYCDCADQSRqKAIAIgIoAgwhASACIAFBAiABGzYCDCADQTBqKAIAIgIoAgwhASACIAFBAiABGzYCDCADQTxqKAIAIgIoAgwhASACIAFBAiABGzYCDCADQcgAaigCACICKAIMIQEgAiABQQIgARs2AgwgA0HUAGooAgAiAigCDCEBIAIgAUECIAEbNgIMIAQgA0HgAGoiA0cNAAsLIAAoAhghASAAQQA2AhggAQRAIAAoAhQhAyABQQxsIQEDQCAFQQhqIgZBCGogA0EIaigCADYCACAFIAMpAgAiCTcDCCAJpyIEKAIMIQIgBCACIAUoAgwgAhs2AgwgBCAEKAIAIgRBAWs2AgAgBEEBRgRAIAYQ1wsLIANBDGohAyABQQxrIgENAAsLAkAgACgCJCIBRQ0AIAAoAiAiAiEDIAFBDGwiBkEMayIHQQxuIgFBB3FBB0cEQEEAIAFBAWpBB3FrIQEDQCADKAIAIggoAgwhBCAIIARBAiAEGzYCDCADQQxqIQMgAUEBaiIBDQALCyAHQdQASQ0AIAIgBmohBANAIAMoAgAiAigCDCEBIAIgAUECIAEbNgIMIANBDGooAgAiAigCDCEBIAIgAUECIAEbNgIMIANBGGooAgAiAigCDCEBIAIgAUECIAEbNgIMIANBJGooAgAiAigCDCEBIAIgAUECIAEbNgIMIANBMGooAgAiAigCDCEBIAIgAUECIAEbNgIMIANBPGooAgAiAigCDCEBIAIgAUECIAEbNgIMIANByABqKAIAIgIoAgwhASACIAFBAiABGzYCDCADQdQAaigCACICKAIMIQEgAiABQQIgARs2AgwgBCADQeAAaiIDRw0ACwsgACgCMCEBIABBADYCMCABRQ0AIAAoAiwhAyABQQxsIQEDQCAFQQhqIgZBCGogA0EIaigCADYCACAFIAMpAgAiCTcDCCAJpyIEKAIMIQIgBCACIAUoAgwgAhs2AgwgBCAEKAIAIgRBAWs2AgAgBEEBRgRAIAYQ1wsLIANBDGohAyABQQxrIgENAAsLIABBADoAACAFQSBqJAAPCyAFQgA3AhQgBUKBgICAwAA3AgwgBUGsusEANgIIIAVBB2ogBUEIakG0usEAEPsMAAuCCAIQfwV+IwBBMGsiBCQAIAQgAjYCKCABKAIMIQogBCAEQShqNgIsAkAgCiAKQQFqIgJNBEAgASgCBCILIAtBAWpBA3ZBB2wgC0EISRsiA0EBdiACSQRAAkACQAJAAn8gA0EBaiIDIAIgAiADSRsiAkEPTwRAIAJB/////wFLDQJBfyACQQN0QQduQQFrZ3ZBAWoMAQtBBEEIQRAgAkEISRsgAkEESRsLIgKtQgx+IhRCIIinDQEgFKciA0F4Sw0BIANBB2pBeHEiByACQQhqIgxqIQMgAyAHSQ0BIANB+P///wdLDQEgA0EIEJEOIgYNAkEIIANB+MrEACgCACIAQcwIIAAbEQAAAAsQpwwgBCgCJCECIAQoAiAhAwwECxCnDCAEKAIUIQIgBCgCECEDDAMLIAYgB2ohBiAMBEAgBkH/ASAM/AsACyACQQFrIgkgAkEDdkEHbCAJQQhJGyENAkAgCkUEQCABKAIAIQcMAQsgBkEIaiEOIAEoAgAiB0EMayEPIAcpAwBCf4VCgIGChIiQoMCAf4MhFCAEKAIoIRBBACECIAohDCAHIQMDQCAUUARAA0AgAkEIaiECIANBCGoiAykDAEKAgYKEiJCgwIB/gyIUQoCBgoSIkKDAgH9RDQALIBRCgIGChIiQoMCAf4UhFAsgDyAUeqdBA3YgAmoiEUF0bGopAAAiEyAQKQMAQjiJhSIVQiCIIhYgE0KXkpyq27a1wj+FIhNCIIgiF34gFUL/////D4MiFSATQv////8PgyITfoUgEyAWfiAVIBd+hUIgiYUiE0L/////D4NCAoUiFULdofHLDH4gE0IgiCITQrfTsIUMfoUgFUK307CFDH4gE0LdofHLDH6FQiCIhaciEiAJcSIFIAZqKQAAQoCBgoSIkKDAgH+DIhNQBEBBCCEIA0AgBSAIaiEFIAhBCGohCCAFIAlxIgUgBmopAABCgIGChIiQoMCAf4MiE1ANAAsLIBRCAX0gFIMhFCATeqdBA3YgBWogCXEiBSAGaiwAAEEATgRAIAYpAwBCgIGChIiQoMCAf4N6p0EDdiEFCyAFIAZqIBJBGXYiCDoAACAOIAVBCGsgCXFqIAg6AAAgBiAFQX9zQQxsaiIFQQhqIAcgEUF/c0EMbGoiCEEIaigAADYAACAFIAgpAAA3AAAgDEEBayIMDQALCyABIAk2AgQgASAGNgIAIAEgDSAKazYCCEGBgICAeCEDIAtFDQIgByALQQxsQRNqQXhxIgJrIAIgC2pBCWpBCBDoDgwCCyABIARBLGpBiwJBDBDGAkGBgICAeCEDDAELEKcMIAQoAgwhAiAEKAIIIQMLIAAgAjYCBCAAIAM2AgAgBEEwaiQAC4EIAg9/BX4jAEEwayIFJAAgBSACNgIoIAEoAgwhCiAFIAVBKGo2AiwCQCAKIApBAWoiAk0EQCABKAIEIgsgC0EBakEDdkEHbCALQQhJGyIDQQF2IAJJBEACQAJAAkACfyADQQFqIgMgAiACIANJGyICQQ9PBEAgAkH/////AUsNAkF/IAJBA3RBB25BAWtndkEBagwBC0EEQQhBECACQQhJGyACQQRJGwsiAq1CFH4iEkIgiKcNASASpyIDQXhLDQEgA0EHakF4cSIHIAJBCGoiDGohAyADIAdJDQEgA0H4////B0sNASADQQgQkQ4iBg0CQQggA0H4ysQAKAIAIgBBzAggABsRAAAACxCnDCAFKAIkIQIgBSgCICEDDAQLEKcMIAUoAhQhAiAFKAIQIQMMAwsgBiAHaiEGIAwEQCAGQf8BIAz8CwALIAJBAWsiCSACQQN2QQdsIAlBCEkbIQ0CQCAKRQRAIAEoAgAhBwwBCyAGQQhqIQ4gASgCACIHKQMAQn+FQoCBgoSIkKDAgH+DIRIgBSgCKCEPQQAhAiAKIQwgByEDA0AgElAEQANAIAJBCGohAiADQQhqIgMpAwBCgIGChIiQoMCAf4MiEkKAgYKEiJCgwIB/UQ0ACyASQoCBgoSIkKDAgH+FIRILIAcgEnqnQQN2IAJqIhBBbGxqIgRBEGs1AgBCt9OwhQyFIRMgBEEMaygCACAPKQMAQoOAgIAQhSIUQiCIIhUgE34gBEEUazUCAELdofHLDIUiFiAUQv////8PgyIUfoUgEyAUfiAVIBZ+hUIgiYUiE6dzrSIUQt2h8csMfiATQiCIIhNCt9OwhQx+hSAUQrfTsIUMfiATQt2h8csMfoVCIIiFpyIRIAlxIgQgBmopAABCgIGChIiQoMCAf4MiE1AEQEEIIQgDQCAEIAhqIQQgCEEIaiEIIAQgCXEiBCAGaikAAEKAgYKEiJCgwIB/gyITUA0ACwsgEkIBfSASgyESIBN6p0EDdiAEaiAJcSIEIAZqLAAAQQBOBEAgBikDAEKAgYKEiJCgwIB/g3qnQQN2IQQLIAQgBmogEUEZdiIIOgAAIA4gBEEIayAJcWogCDoAACAGIARBf3NBFGxqIgRBEGogByAQQX9zQRRsaiIIQRBqKAAANgAAIAQgCP0AAAD9CwAAIAxBAWsiDA0ACwsgASAJNgIEIAEgBjYCACABIA0gCms2AghBgYCAgHghAyALRQ0CIAcgC0EUbEEbakF4cSICayACIAtqQQlqQQgQ6A4MAgsgASAFQSxqQY8CQRQQxgJBgYCAgHghAwwBCxCnDCAFKAIMIQIgBSgCCCEDCyAAIAI2AgQgACADNgIAIAVBMGokAAueCAIMfwJ9IwBB0AFrIgIkAAJAIAAoAghFBEAMAQsCf0EAIAEqAgAiDyAAKAIEIgQqAgBdDQAaQQAgDyAEKgIQXg0AGkEAIAEqAgQiDiAEKgIEXQ0AGkEAIA4gBCoCFF4NABpBAEEAIAQgASoCCCIOIAQqAhheGyAOIAQqAghdGwshByAEKAI8Qf////8DcUUNACAEKgIgIA9eDQAgBCoCMCAPXQ0AIAEqAgQiDiAEKgIkXQ0AIAQqAjQgDl0NACAEQSBqIQYgASoCCCIOIAQqAjheRSAOIAQqAihdQX9zcSEDCyACIAc2ApQBIAIgATYCkAEgAiADNgKIASACIAY2AgggAkEANgIEIAJBpAFqIQkgAkGIAWohByACQQhqIQYgAiAANgKMASAAKAIsIQogACgCMCEIIAAoAjghDSAAKAI8IQsCfwJAAkACQAJAAkADQCACKAKUASIARQRAIAYhBCAHIQMgAigCiAEiBSIAQSFPBEAgAigCDCEEIAYhAyACKAIIIQALIABFDQYgAyAAQQFrIgA2AgAgBCAAQQJ0aigCACEACyACQQA2ApQBIAAoAhxB/////wNxQQFHBEAgACgCDCIEIAIoAowBIgMoAggiAE8NAkEBIQUCQCACKAKQASIAKgIAIg8gAygCBCAEQQZ0aiIDKgIAXQ0AIA8gAyoCEF4NACAAKgIEIg4gAyoCBF0NACAOIAMqAhReDQAgACoCCCIOIAMqAghdDQAgDiADKgIYXg0AIAIgAzYClAEgACoCACEPQQAhBQsgDyADKgIgXQ0BIA8gAyoCMF4NASAAKgIEIg4gAyoCJF0NASAOIAMqAjReDQEgACoCCCIOIAMqAihdDQEgDiADKgI4Xg0BIANBIGohDCAFRQRAAn8gAigCiAEiBUEhSQRAIAUhBCAHIQNBICEFIAYMAQsgAigCCCEEIAYhAyACKAIMCyEAIAQgBUYEQCACQQRqEKMEIAIoAgghBCAGIQMgAigCDCEACyAAIARBAnRqIAw2AgAgAyADKAIAQQFqNgIADAILIAIgDDYClAEMAQsgACgCDCIAIAtPDQIgDSAAQQN0aiIAKAIAIgQgCE8NAyAAKAIEIgAgCE8NBCAJIAogAEEMbGoiACkCADcCACAJQQhqIABBCGooAgA2AgAgAkGYAWoiA0EIaiAKIARBDGxqIgBBCGooAgA2AgAgAiAAKQIANwOYASACQbQBaiADIAEQ2gMgAi0AwAFBAXFFDQALIAIoAogBIQVBAQwFCyAEIABBoPLCABCFCwALIAAgC0G4ncMAEIULAAsgBCAIQcidwwAQhQsACyAAIAhB2J3DABCFCwALIAJBADYClAFBAAshACAFQSFPBEAgAigCDCAFQQJ0QQQQ6A4LIAJB0AFqJAAgAAvCCgIDfAN/IwBBEGsiBSQAIAC7IQECQCAAvCIGQf////8HcSIEQdufpPoDTwRAIARB0qftgwRPBEAgBEHW44iHBE8EQAJAAkACQAJAIARB////+wdNBEAgBUIANwMIAkAgBEHan6TuBE0EQCABIAFEg8jJbTBf5D+iRAAAAAAAADhDoEQAAAAAAAA4w6AiAkQAAABQ+yH5v6KgIAJEY2IaYbQQUb6ioCEBIAL8AiEEDAELIAUgBCAEQRd2QZYBayIEQRd0a767OQMAIAUgBUEIaiAEEEQhBCAGQQBOBEAgBSsDCCEBDAELQQAgBGshBCAFKwMImiEBCyAEQQNxQQFrDgMDBAECCyAAIACTIQAMBwsgASABoiIBIAGiIQIgAUSBXgz9///fv6JEAAAAAAAA8D+gIAJEQjoF4VNVpT+ioCABIAKiIAFEaVDu4EKT+T6iRCceD+iHwFa/oKKgtowhAAwGCyABIAEgAaIiAqIiAyACIAKioiACRKdGO4yHzcY+okR058ri+QAqv6CiIAEgAyACRLL7bokQEYE/okR3rMtUVVXFv6CioKC2IQAMBQsgASABoiIBIAGiIQIgAUSBXgz9///fv6JEAAAAAAAA8D+gIAJEQjoF4VNVpT+ioCABIAKiIAFEaVDu4EKT+T6iRCceD+iHwFa/oKKgtiEADAQLIAEgAaIiAiABmqIiAyACIAKioiACRKdGO4yHzcY+okR058ri+QAqv6CiIAMgAkSy+26JEBGBP6JEd6zLVFVVxb+goiABoaC2IQAMAwsgBEHg27+FBE8EQEQYLURU+yEZwEQYLURU+yEZQCAGQQBOGyABoCICIAKiIQEgAiABoiIDIAEgAaKiIAFEp0Y7jIfNxj6iRHTnyuL5ACq/oKIgAiADIAFEsvtuiRARgT+iRHesy1RVVcW/oKKgoLYhAAwDCyAGQQBOBEAgAUTSITN/fNkSwKAiASABoiIBIAGiIQIgAUSBXgz9///fv6JEAAAAAAAA8D+gIAJEQjoF4VNVpT+ioCABIAKiIAFEaVDu4EKT+T6iRCceD+iHwFa/oKKgtowhAAwDCyABRNIhM3982RJAoCIBIAGiIgEgAaIhAiABRIFeDP3//9+/okQAAAAAAADwP6AgAkRCOgXhU1WlP6KgIAEgAqIgAURpUO7gQpP5PqJEJx4P6IfAVr+goqC2IQAMAgsgBEHkl9uABE8EQEQYLURU+yEJwEQYLURU+yEJQCAGQQBOGyABoCICIAKiIgEgApqiIgMgASABoqIgAUSnRjuMh83GPqJEdOfK4vkAKr+goiADIAFEsvtuiRARgT+iRHesy1RVVcW/oKIgAqGgtiEADAILIAZBAE4EQCABRBgtRFT7Ifm/oCIBIAGiIgEgAaIhAiABRIFeDP3//9+/okQAAAAAAADwP6AgAkRCOgXhU1WlP6KgIAEgAqIgAURpUO7gQpP5PqJEJx4P6IfAVr+goqC2IQAMAgsgAUQYLURU+yH5P6AiASABoiIBIAGiIQIgAUSBXgz9///fv6JEAAAAAAAA8D+gIAJEQjoF4VNVpT+ioCABIAKiIAFEaVDu4EKT+T6iRCceD+iHwFa/oKKgtowhAAwBCyAEQYCAgMwDTwRAIAEgAaIiAiABoiIDIAIgAqKiIAJEp0Y7jIfNxj6iRHTnyuL5ACq/oKIgAyACRLL7bokQEYE/okR3rMtUVVXFv6CiIAGgoLYhAAwBCyAFIABDAACAA5QgAEMAAIB7kiAEQYCAgARJGzgCCCAFKgIIGgsgBUEQaiQAIAALuwcCDn0CfyMAQeAAayIEJAAgACgCACEUIAAoAgQhBQJAIAEEQCAEIAEqAggiByAFKgIIIgiUIAEqAgQiCSAFKgIEIgqUIAEqAgAiBiAFKgIAIguUIAEqAgwiDCAFKgIMIg2UkpKSOAJMIAQgCSALlCAMIAiUIAYgCpSTkiAHIA2UkzgCSCAEIAwgCpQgBiAIlJIgCSANlJMgByALlJM4AkQgBCAHIAqUIAwgC5QgBiANlJMgCSAIlJOSOAJAIAkgBSoCECABKgIQkyILlCAGIAUqAhQgASoCFJMiDZSTIgggCJIhCCAHIA2UIAkgBSoCGCABKgIYkyIOlJMiCiAKkiEKIAQgDiAMIAiUIAkgCpQgBiAGIA6UIAcgC5STIg4gDpIiDpSTkpI4AlggBCANIAwgDpQgBiAIlCAHIAqUk5KSOAJUIAQgCyAMIAqUIAcgDpQgCSAIlJOSkjgCUAwBCyAEQUBrIhVBGGogBUEYaigCADYCACAVQRBqIAVBEGopAgA3AwAgBCAF/QACAP0LA0ALIARBCGogFCAEQUBrIAIgAyAAKAIIIAAoAgwgACgCECoCABCBAQJAIAQoAggiAkECRg0AIAJBAXFFDQAgBCoCPCETIAQqAiwhDCAEKgIoIQggBCoCJCEKIAQqAhQhCyAEKgIQIQ0gBCoCDCEOIAAoAhQiAigCAEEBcQRAIBMgAioCOF1FDQELIARBMGohAyAEQRhqIQUgAQRAIAwgASoCDCIRIAggASoCACIHlCAKIAEqAgQiCZSTIgYgBpIiEJQgByAKIAEqAggiBpQgDCAHlJMiDyAPkiIPlCAJIAwgCZQgCCAGlJMiDCAMkiISlJOSkiEMIAggESAPlCAGIBKUIAcgEJSTkpIhCCAKIBEgEpQgCSAQlCAGIA+Uk5KSIQogASoCGCALIBEgDSAHlCAOIAmUkyIQIBCSIhCUIAcgDiAGlCALIAeUkyIPIA+SIg+UIAkgCyAJlCANIAaUkyILIAuSIhKUk5KSkiELIAEqAhAgDiARIBKUIAkgEJQgBiAPlJOSkpIhDiABKgIUIA0gESAPlCAGIBKUIAcgEJSTkpKSIQ0LIAAoAhgoAgAhACACIAs4AhAgAiANOAIMIAIgDjgCCCACIAA2AgQgAkEBNgIAIAIgBSkCADcCFCACQRxqIAVBCGooAgA2AgAgAiAMOAIoIAIgCDgCJCACIAo4AiAgAiADKQIANwIsIAJBNGogA0EIaigCADYCACACIBM4AjgLIARB4ABqJAAL8gcCD38FfiMAQTBrIgUkACAFIAI2AiggASgCDCEKIAUgBUEoajYCLAJAIAogCkEBaiICTQRAIAEoAgQiCyALQQFqQQN2QQdsIAtBCEkbIgNBAXYgAkkEQAJAAkACQAJ/IANBAWoiAyACIAIgA0kbIgJBD08EQCACQf////8BSw0CQX8gAkEDdEEHbkEBa2d2QQFqDAELQQRBCEEQIAJBCEkbIAJBBEkbCyICrUIYfiISQiCIpw0BIBKnIgcgAkEIaiIMaiEDIAMgB0kNASADQfj///8HSw0BIANBCBCRDiIGDQJBCCADQfjKxAAoAgAiAEHMCCAAGxEAAAALEKcMIAUoAiQhAiAFKAIgIQMMBAsQpwwgBSgCFCECIAUoAhAhAwwDCyAGIAdqIQYgDARAIAZB/wEgDPwLAAsgAkEBayIJIAJBA3ZBB2wgCUEISRshDQJAIApFBEAgASgCACEHDAELIAZBCGohDiABKAIAIgcpAwBCf4VCgIGChIiQoMCAf4MhEiAFKAIoIQ9BACECIAohDCAHIQMDQCASUARAA0AgAkEIaiECIANBCGoiAykDAEKAgYKEiJCgwIB/gyISQoCBgoSIkKDAgH9RDQALIBJCgIGChIiQoMCAf4UhEgsgByASeqdBA3YgAmoiEEFobGoiBEEUazUCAEK307CFDIUhEyAEQRBrKAIAIA8pAwBCg4CAgBCFIhRCIIgiFSATfiAEQRhrNQIAQt2h8csMhSIWIBRC/////w+DIhR+hSATIBR+IBUgFn6FQiCJhSITp3OtIhRC3aHxywx+IBNCIIgiE0K307CFDH6FIBRCt9OwhQx+IBNC3aHxywx+hUIgiIWnIhEgCXEiBCAGaikAAEKAgYKEiJCgwIB/gyITUARAQQghCANAIAQgCGohBCAIQQhqIQggBCAJcSIEIAZqKQAAQoCBgoSIkKDAgH+DIhNQDQALCyASQgF9IBKDIRIgE3qnQQN2IARqIAlxIgQgBmosAABBAE4EQCAGKQMAQoCBgoSIkKDAgH+DeqdBA3YhBAsgBCAGaiARQRl2Igg6AAAgDiAEQQhrIAlxaiAIOgAAIAYgBEF/c0EYbGoiBEEQaiAHIBBBf3NBGGxqIghBEGopAAA3AAAgBCAI/QAAAP0LAAAgDEEBayIMDQALCyABIAk2AgQgASAGNgIAIAEgDSAKazYCCEGBgICAeCEDIAtFDQIgByALQRhsQR9qQXhxIgJrIAIgC2pBCWpBCBDoDgwCCyABIAVBLGpBkQJBGBDGAkGBgICAeCEDDAELEKcMIAUoAgwhAiAFKAIIIQMLIAAgAjYCBCAAIAM2AgAgBUEwaiQAC6AIAgF/En0jAEGAAmsiBSQAIAVBuAFqQQA2AgAgBUIANwOwASAF/QwAAAAAAQAAAAIAAAADAAAA/QsEACAFQTRqQQBB+AD8CwAgAioCECIHjCITIAIqAgwiDiAOlCAHIAeUkiACKgIUIg0gDZSSkSIIlSEQAkACfQJAIA6MIhQgCJUiCyALlCANjCIVIAiVIgkgCZSSIgZDAAAAAFwEQCAQIAEqAgAiCpQiESAJIAkgBpEiBpUgASoCBCIPlCIMlCALIAsgBpUgD5QiD5QgEZOSXg0BIAqMIQYMAwsgASoCACIKIBCYDAELQwAAAAAhDCAKCyEGQwAAAAAhDwsgBUEANgK8ASAFQQA2AqwBIAVBADYCMCAFQgA3AyggBSAMIAkgASoCCCIJlJIgAioCCCIRkyIMOAIkIAUgBiAQIAmUkiACKgIEIhCTIgY4AiAgBSAPIAsgCZSSIAIqAgAiD5MiCzgCHCAFIAw4AhggBSAGOAIUIAUgCzgCECAFQcABaiABIAUgAiADEJ8BIAUoAsABIQICQAJAAkAgBEUEQCACBEAgBSoCxAEiBkMAAAAAXARAIAAgBSkCyAE3AgwgACAGOAIIIABBAzYCACAAQRRqIAVB0AFqKAIANgIADAULIA0gCJUiBiAGlCAOIAiVIgsgC5QgByAIlSIIIAiUkpKRIQcgCCAHlSEOAkACQCALIAeVIgwgDJQgBiAHlSIHIAeUkiINQwAAAABcBEAgDiAKlCIWIAcgByANkSISlSABKgIEIheUIg2UIAwgDCASlSAXlCISlCAWk5JeDQEgCowhCgwCCyAKIA6YIQoLQwAAAAAhDUMAAAAAIRILIAUgFTgC6AEgBSATOALkASAFIBQ4AuABIAVBADYCvAEgBUEANgKsASAFQQA2AjAgBUIANwMoIAUgESAGIAYgByAJlCANkiIGIBGTlCAIIA4gCZQgCpIiByAQk5QgCyAMIAmUIBKSIgkgD5OUkpJDbxKDOpIiCpSSIgw4AtwBIAUgBiAMkyIGOAIkIAUgECAIIAqUkiIIOALYASAFIAcgCJMiCDgCICAFIA8gCyAKlJIiCzgC1AEgBSAJIAuTIgk4AhwgBSAGOAIYIAUgCDgCFCAFIAk4AhAgBUHsAWogASAFIAVB1AFqIApDbxKDOpIQnwEgBSgC7AFBAUcNAiADIAogBSoC8AGTIgNgRQRAIABBBDYCAAwFCyAAIAM4AgggAEEDNgIAIAAgBSoC/AGMOAIUIAAgBSoC+AGMOAIQIAAgBSoC9AGMOAIMDAQLIABBBDYCAAwDCyACDQEgAEEENgIADAILIABBBDYCAAwBCyAAIAUpAsgBNwIMIAAgBSoCxAE4AgggAEEDNgIAIABBFGogBUHQAWooAgA2AgALIAVBgAJqJAALogoCA3wDfyMAQRBrIgUkACAAuyEBAn0CQAJAIAC8IgZB/////wdxIgRB25+k+gNPBEAgBEHSp+2DBE8EQCAEQdbjiIcETwRAAkACQAJAAkAgBEH////7B00EQCAFQgA3AwgCQCAEQdqfpO4ETQRAIAEgAUSDyMltMF/kP6JEAAAAAAAAOEOgRAAAAAAAADjDoCICRAAAAFD7Ifm/oqAgAkRjYhphtBBRvqKgIQEgAvwCIQQMAQsgBSAEIARBF3ZBlgFrIgRBF3Rrvrs5AwAgBSAFQQhqIAQQRCEEIAZBAE4EQCAFKwMIIQEMAQtBACAEayEEIAUrAwiaIQELIARBA3FBAWsOAwMEAQILIAAgAJMMCQsgASABIAGiIgKiIgMgAiACoqIgAkSnRjuMh83GPqJEdOfK4vkAKr+goiABIAMgAkSy+26JEBGBP6JEd6zLVFVVxb+goqCgtgwICyABIAGiIgEgAaIhAiABRIFeDP3//9+/okQAAAAAAADwP6AgAkRCOgXhU1WlP6KgIAEgAqIgAURpUO7gQpP5PqJEJx4P6IfAVr+goqC2DAcLIAEgAaIiAiABmqIiAyACIAKioiACRKdGO4yHzcY+okR058ri+QAqv6CiIAMgAkSy+26JEBGBP6JEd6zLVFVVxb+goiABoaC2DAYLIAEgAaIiASABoiECIAFEgV4M/f//37+iRAAAAAAAAPA/oCACREI6BeFTVaU/oqAgASACoiABRGlQ7uBCk/k+okQnHg/oh8BWv6CioLaMDAULIARB39u/hQRLDQIgBkEATgRAIAFE0iEzf3zZEsCgIgIgAqIhASACIAGiIgMgASABoqIgAUSnRjuMh83GPqJEdOfK4vkAKr+goiACIAMgAUSy+26JEBGBP6JEd6zLVFVVxb+goqCgtgwFC0TSITN/fNkSwCABoSICIAKiIQEgAiABoiIDIAEgAaKiIAFEp0Y7jIfNxj6iRHTnyuL5ACq/oKIgAiADIAFEsvtuiRARgT+iRHesy1RVVcW/oKKgoLYMBAsgBEHjl9uABEsNAiAGQQBOBEBEGC1EVPsh+T8gAaEiAiACoiEBIAIgAaIiAyABIAGioiABRKdGO4yHzcY+okR058ri+QAqv6CiIAIgAyABRLL7bokQEYE/okR3rMtUVVXFv6CioKC2DAQLIAFEGC1EVPsh+T+gIgIgAqIhASACIAGiIgMgASABoqIgAUSnRjuMh83GPqJEdOfK4vkAKr+goiACIAMgAUSy+26JEBGBP6JEd6zLVFVVxb+goqCgtgwDCyAEQYCAgMwDTwRAIAEgAaIiASABoiECIAFEgV4M/f//37+iRAAAAAAAAPA/oCACREI6BeFTVaU/oqAgASACoiABRGlQ7uBCk/k+okQnHg/oh8BWv6CioLYMAwsgBSAAQwAAgHuSOAIIIAUqAggaQwAAgD8MAgtEGC1EVPshGcBEGC1EVPshGUAgBkEAThsgAaAiASABoiIBIAGiIQIgAUSBXgz9///fv6JEAAAAAAAA8D+gIAJEQjoF4VNVpT+ioCABIAKiIAFEaVDu4EKT+T6iRCceD+iHwFa/oKKgtgwBC0QYLURU+yEJwEQYLURU+yEJQCAGQQBOGyABoCIBIAGiIgEgAaIhAiABRIFeDP3//9+/okQAAAAAAADwP6AgAkRCOgXhU1WlP6KgIAEgAqIgAURpUO7gQpP5PqJEJx4P6IfAVr+goqC2jAshACAFQRBqJAAgAAvDBwIBfw59IwBBoAFrIgokACAKIAIgCSoCBCIRENwCIAoqAgAiEiAIKgIEIhaUIAoqAgQiFCAIKgIAIheUkyILIAuSIQsgCioCCCIMIBeUIBIgCCoCCCITlJMiDyAPkiEPIBMgCioCDCINIAuUIBIgD5QgFCAUIBOUIAwgFpSTIhMgE5IiDpSTkpIhEyAWIA0gD5QgDCAOlCASIAuUk5KSIRYgFyANIA6UIBQgC5QgDCAPlJOSkiEXIAkqAgghEiAJKgIAIRRBACEIAkADQCAJIBECfSABQwAAAABdRQRAIAFDAACgNV5FDQMgCSAROAIAIBEhFCASDAELIAkgETgCCCARIRIgFAuSQwAAAD+UIhE4AgQgEiAUk0MAAKA1XUUEQCAKQRxqIAIgERDcAiAKQThqIAUgERDcAiAKIAoqAiQiASAKKgJAIg2UIAoqAiAiCyAKKgI8Ig6UIAoqAhwiDCAKKgI4IhCUIAoqAigiDyAKKgJEIhiUkpKSOAJgIAogCyAQlCAPIA2UIAwgDpSTkiABIBiUkzgCXCAKIA8gDpQgDCANlJIgCyAYlJMgASAQlJM4AlggCiABIA6UIA8gEJQgDCAYlJMgCyANlJOSOAJUIAsgCioCSCAKKgIskyIQlCAMIAoqAkwgCioCMJMiGJSTIg0gDZIhDSABIBiUIAsgCioCUCAKKgI0kyIVlJMiDiAOkiEOIAogFSAPIA2UIAsgDpQgDCAMIBWUIAEgEJSTIhUgFZIiFZSTkpI4AmwgCiAYIA8gFZQgDCANlCABIA6Uk5KSOAJoIAogECAPIA6UIAEgFZQgCyANlJOSkjgCZCAKIBMgDyAXIAuUIBYgDJSTIg0gDZIiDZQgCyAWIAGUIBMgC5STIg4gDpIiDpQgDCATIAyUIBcgAZSTIhAgEJIiEJSTkpI4AnggCiAWIA8gEJQgDCANlCABIA6Uk5KSOAJ0IAogFyAPIA6UIAEgEJQgCyANlJOSkjgCcCAKQfwAaiADIApB8ABqIAQRAQAgCiAKKgJ4jDgCnAEgCiAKKgJ0jDgCmAEgCiAKKgJwjDgClAEgCkGIAWogBiAKQdQAaiAKQZQBaiAHEQIAIAoqAogBIAoqAnAiAZQgCioCjAEgCioCdCILlJIgCioCkAEgCioCeCIMlJIgASAKKgJ8lCALIAoqAoABlJIgDCAKKgKEAZSSkyEBIAhBAWohCAwBCwsgCSASOAIECyAAIAg2AgwgACAJKQIANwIAIABBCGogCUEIaigCADYCACAKQaABaiQAC/oHAgZ/AX4gASgCBCEEIAEoAggiBq0hCCAAKAIAIgIoAgghAyACKAIAIANrQQdNBEAgAiADQQhBAUEBENYGIAIoAgghAwsgAiADQQhqIgU2AgggAigCBCADaiAINwAAAkAgBgRAIAQgBkEGdGohBgNAIAQgABCQCCIDDQIgBEEMaigCACEFIAIoAgAgAigCCCIDa0EDTQRAIAIgA0EEQQFBARDWBiACKAIIIQMLIAIgA0EEajYCCCACKAIEIANqIAU2AAAgBEEQaiIEIAAQkAgiAw0CIARBDGooAgAhBSACKAIAIAIoAggiA2tBA00EQCACIANBBEEBQQEQ1gYgAigCCCEDCyACIANBBGo2AgggAigCBCADaiAFNgAAIARBEGoiBCAAEJAIIgMNAiAEQQxqKAIAIQUgAigCACACKAIIIgNrQQNNBEAgAiADQQRBAUEBENYGIAIoAgghAwsgAiADQQRqNgIIIAIoAgQgA2ogBTYAACAEQRBqIgQgABCQCCIDDQIgBEEMaigCACEHIAIoAgAgAigCCCIDa0EDTQRAIAIgA0EEQQFBARDWBiACKAIIIQMLIAIgA0EEaiIFNgIIIAIoAgQgA2ogBzYAACAGIARBEGoiBEcNAAsLIAEoAhAhBCABKAIUIgOtIQggAigCACAFa0EHTQRAIAIgBUEIQQFBARDWBiACKAIIIQULIAIgBUEIaiIANgIIIAIoAgQgBWogCDcAACADBEAgA0ECdCEFA0AgBDUCACEIIARBBGohBCACIAIoAgAgAGtBB0sEfyAABSACIABBCEEBQQEQ1gYgAigCCAsiA0EIaiIANgIIIAIoAgQgA2ogCDcAACAFQQRrIgUNAAsLIAE1AiQhCCACKAIAIABrQQdNBEAgAiAAQQhBAUEBENYGIAIoAgghAAsgAigCBCAAaiAINwAAIAIgAEEIaiIDNgIIIAEoAhwhBCABKAIgIgGtIQggAigCACADa0EHTQRAIAIgA0EIQQFBARDWBiACKAIIIQMLIAIgA0EIaiIANgIIIAIoAgQgA2ogCDcAACABBEAgBCABQQN0aiEBA0AgAgJ/IAQoAgBBAUYEQCAEQQRqNQIAIQggACACKAIARgRAIAIgAEEBQQFBARDWBiACKAIIIQALIAIoAgQgAGpBAToAACACIABBAWoiADYCCCACKAIAIABrQQdNBEAgAiAAQQhBAUEBENYGIAIoAgghAAsgAigCBCAAaiAINwAAIABBCGoMAQsgACACKAIARgRAIAIgAEEBQQFBARDWBiACKAIIIQALIAIoAgQgAGpBADoAACAAQQFqCyIANgIIIAEgBEEIaiIERw0ACwtBACEDCyADC6QIAhp/AX4gASgCCCISrUIMfiIcpyEHAkACQAJAAkACQAJAAkACQCAcQiCIpw0AIAdB/P///wdLDQAgASgCBCECAkAgB0UEQEEEIQsMAQtBBCEDIBIhFCAHQQQQkQ4iC0UNAQsgBwRAIAsgAiAH/AoAAAsgASgCFCIHQQN0IQJBACEDIAdB/////wFLDQEgAkH8////B0sNASABKAIQIQQCQCACRQRAQQQhDAwBC0EEIQMgByEVIAJBBBCRDiIMRQ0CCyACBEAgDCAEIAL8CgAACyABKAIgIhOtQhR+IhynIQJBACEDIBxCIIinDQIgAkH8////B0sNAiABKAIcIQQCQCACRQRAQQQhDQwBC0EEIQMgEyEWIAJBBBCRDiINRQ0DCyACBEAgDSAEIAL8CgAACyABKAIsIgJBBXQhA0EAIQQgAkH///8/Sw0DIANB/P///wdLDQMgASgCKCEFAkAgA0UEQEEEIQ4MAQtBBCEEIAIhFyADQQQQkQ4iDkUNBAsgAwRAIA4gBSAD/AoAAAsgASgCOCIDQQJ0IQRBACEFIANB/////wNLDQQgBEH8////B0sNBCABKAI0IQYCQCAERQRAQQQhDwwBC0EEIQUgAyEYIARBBBCRDiIPRQ0FCyAEBEAgDyAGIAT8CgAACyABKAJEIgRBAnQhBUEAIQYgBEH/////A0sNBSAFQfz///8HSw0FIAEoAkAhCQJAIAVFBEBBBCEQDAELQQQhBiAEIRkgBUEEEJEOIhBFDQYLIAUEQCAQIAkgBfwKAAALIAEoAlAiBUECdCEGIAVB/////wNLDQYgBkH8////B0sNBiABKAJMIQgCQCAGRQRAQQQhEUEAIQkMAQtBBCEKIAUhCSAGQQQQkQ4iEUUNBwsgBgRAIBEgCCAG/AoAAAsgASgCXCIGQQJ0IQggBkH/////A0sNByAIQfz///8HSw0HIAEoAlghGgJAIAhFBEBBBCEBQQAhCgwBC0EEIRsgBiEKIAhBBBCRDiIBRQ0ICyAIBEAgASAaIAj8CgAACyAAIAY2AlwgACABNgJYIAAgCjYCVCAAIAU2AlAgACARNgJMIAAgCTYCSCAAIAQ2AkQgACAQNgJAIAAgGTYCPCAAIAM2AjggACAPNgI0IAAgGDYCMCAAIAI2AiwgACAONgIoIAAgFzYCJCAAIBM2AiAgACANNgIcIAAgFjYCGCAAIAc2AhQgACAMNgIQIAAgFTYCDCAAIBI2AgggACALNgIEIAAgFDYCAA8LIAMgB0HA3MIAENcNAAsgAyACQcDcwgAQ1w0ACyADIAJBwNzCABDXDQALIAQgA0HA3MIAENcNAAsgBSAEQcDcwgAQ1w0ACyAGIAVBwNzCABDXDQALIAogBkHA3MIAENcNAAsgGyAIQcDcwgAQ1w0AC5EHARV/IwBBIGsiByQAAkACQAJAIAAoAgwiCkF/Rg0AIAEoAhAhEiABKAIMIQQCQCAAKAIIIhNFDQAgACgCBCELAkAgBARAIAsgE0ECdGohFiAEQQJ0IQ4gBEEDcSEFIARBfHEhBiAEIApsQQJ0IhUgASgCBCIQaiEMA0AgCygCACIIQQFqIQIgCiARaiIAQQFqIAhLIAAgAklxDQIgAiASSw0FIBAgBCAIbCIPQQJ0aiEJQQAhAgJAAkAgBEEESQ0AIBUgDiARbGogCCAObGtBEEkNACAGIQIgDCEAIAkhAwNAIAAgA/0AAgD9CwIAIABBEGohACADQRBqIQMgAkEEayICDQALIAYiAiAERg0BCyACIQ0gBQRAIAIgBWohDSACQQJ0IQAgBSEDA0AgACAMaiAAIAlqKgIAOAIAIABBBGohACADQQFrIgMNAAsLIAIgBGtBfEsNACANQQJ0IgkgCCAObGohAyAQIBRqIQAgBCANayENIAkgFWohCCACIAVqIA9qQQJ0IQIDQCAAIAhqIg8gAyAQaioCADgCACAPQQRqIAIgEGoiCUEEaioCADgCACAPQQhqIAlBCGoqAgA4AgAgD0EMaiAJQQxqKgIAOAIAIAhBEGohCCADQRBqIQMgAkEQaiECIA1BBGsiDQ0ACwsgEUEBaiERIA4gFGohFCAMIA5qIQwgFiALQQRqIgtHDQALDAILIBNBAnQhCCAKIQADQCALKAIAIgJBAWohBiACIABBAWoiAkkgACAGSXENASAGIBJLDQQgC0EEaiELIAIhACAIQQRrIggNAAtBACEEDAELIAdBADYCGCAHQQE2AgwgB0GY/sEANgIIDAMLIBIgCiATaiIAayAEbCIGRQ0AIAEoAgQgACAEbEECdGoiAiEDIAYiAEEBcQRAIAJBADYCACACIABBAWsiAEEAR0ECdGohAwsgBkEBRg0AIAIgBEECdGohBQNAIARBAnQiCiACaiIGIAMgAyAFRiIMGyIBQQA2AgAgASAAQQFHQQJ0aiIJIAMgCmogBSAMGyIDRiEFIAYgAiAMGyIGIApqIgIgCSAFGyIBQQA2AgAgAiAGIAUbIQIgCSAKaiADIAUbIQUgASAAQQJHQQJ0aiEDIABBAmsiAA0ACwsgB0EgaiQADwsgB0EANgIYIAdBATYCDCAHQcj+wQA2AggLIAdCBDcCECAHQQhqQdj9wQAQuQ0AC4IIAgJ/FH0jAEGAAmsiBSQAIAVBuAFqQQA2AgAgBUIANwOwASAF/QwAAAAAAQAAAAIAAAADAAAA/QsEACAFQTRqQQBB+AD8CwAgAioCDCIMjCEWQwAAgD8hCCAMIAyUIAIqAhAiCiAKlJIgAioCFCIPIA+UkiINQwAAAABeBEAgD4wgDZEiB5UhCSAKjCAHlSEIIBYgB5UhBwsgBUEANgK8ASAFQQA2AqwBIAVBADYCMCAFQgA3AyggByABKgIAIhCUIAggASoCBCIRlJIgCSABKgIIIhKUkiAHIAEqAgwiE5QgCCABKgIQIhSUkiAJIAEqAhQiFZSSXiEGIAUgCSABKgIYIguUIBIgFSAGG5IgAioCCCIXkyIJOAIkIAUgCCALlCARIBQgBhuSIAIqAgQiGJMiCDgCICAFIAcgC5QgECATIAYbkiACKgIAIhmTIgc4AhwgBSAJOAIYIAUgCDgCFCAFIAc4AhAgBUHAAWogASAFIAIgAxCmASAFKALAASECAkACQAJAIARFBEAgAgRAQwAAAAAhCSAFKgLEASIIQwAAAABcBEAgACAFKQLIATcCDCAAIAg4AgggAEEDNgIAIABBFGogBUHQAWooAgA2AgAMBQtDAACAPyEIQwAAAAAhByAPIA2RIg6VIg0gDZQgDCAOlSIMIAyUIAogDpUiDiAOlJKSIhpDAAAAAF4EQCANIBqRIgeVIQkgDiAHlSEIIAwgB5UhBwsgBSAWOALgASAFQQA2ArwBIAVBADYCrAEgBUEANgIwIAVCADcDKCAFIA+MOALoASAFIAqMOALkASAFIBcgDSANIAsgCZQgEiAVIBIgCZQgESAIlCAQIAeUkpIgFSAJlCAUIAiUIBMgB5SSkl4iAhuSIgogF5OUIAwgCyAHlCAQIBMgAhuSIgcgGZOUIA4gCyAIlCARIBQgAhuSIgggGJOUkpJDbxKDOpIiCZSSIgs4AtwBIAUgCiALkyILOAIkIAUgGCAOIAmUkiIKOALYASAFIAggCpMiCDgCICAFIBkgDCAJlJIiCjgC1AEgBSAHIAqTIgc4AhwgBSALOAIYIAUgCDgCFCAFIAc4AhAgBUHsAWogASAFIAVB1AFqIAlDbxKDOpIQpgEgBSgC7AFBAUcNAiADIAkgBSoC8AGTIgNgRQRAIABBBDYCAAwFCyAAIAM4AgggAEEDNgIAIAAgBSoC/AGMOAIUIAAgBSoC+AGMOAIQIAAgBSoC9AGMOAIMDAQLIABBBDYCAAwDCyACDQEgAEEENgIADAILIABBBDYCAAwBCyAAIAUpAsgBNwIMIAAgBSoCxAE4AgggAEEDNgIAIABBFGogBUHQAWooAgA2AgALIAVBgAJqJAAL/AcCEH8EfiMAQUBqIgkkACAJQRhqIAEQlgUgASkDOCETAn8gASgCLCIKRQRAQZjcwgAhDEEAIQpBAAwBCwJ/AkAgCkEBaq1CFH4iEkIgiKcNACASpyICQXhLDQAgCkEJaiIDIAJBB2pBeHEiBmohAiACIAZJDQAgAkH4////B0sNACACQQgQkQ4iBEUEQEEIIAJB+MrEACgCACIAQcwIIAAbEQAAAAsgBCAGagwBCxCnDCAJKAIIIgpBCWohA0EACyEMIAEoAighBCADBEAgDCAEIAP8CgAACyABKAI0Ig8EQCAEQQhqIQMgBCkDAEJ/hUKAgYKEiJCgwIB/gyESIA8hBiAEIQIDQCASUARAA0AgAkGgAWshAiADKQMAIRIgA0EIaiEDIBJCgIGChIiQoMCAf4MiEkKAgYKEiJCgwIB/UQ0ACyASQoCBgoSIkKDAgH+FIRILIAIgEnqnQQN2QWxsaiIFQRRrIghBCGopAgAhFCAIKQIAIRUgDCAEIAVrQWxtQRRsaiIIQQRrIAVBBGsoAgA2AgAgCEEUayIFIBU3AgAgBUEIaiAUNwIAIBJCAX0gEoMhEiAGQQFrIgYNAAsLIAEoAjALIRAgASgCSCIIrUIMfiISpyECAkACQAJAIBJCIIinDQAgAkH8////B0sNACABKAJEIQQCQCACRQRAQQQhDUEAIQYMAQtBBCELIAghBiACQQQQkQ4iDUUNAQsgAgRAIA0gBCAC/AoAAAsgASgCVCIEQQl0IQVBACEDIARB////A0sNASAFQcD///8HSw0BAkAgBUUEQEHAACEODAELIAEoAlAhB0HAACEDIAVBwAAQkQ4iDkUNAiAERQ0AQQAhAyAEIQIDQCADIAVGDQEgAyAOaiADIAdqQYAE/AoAACADQYAEaiEDIAJBAWsiAg0ACwsgASgCYCIFQQJ0IQdBACEDIAVB/////wNLDQIgB0H8////B0sNAiABKAJcIRECQCAHRQRAQQQhC0EAIQIMAQtBBCEDIAUhAiAHQQQQkQ4iC0UNAwsgBwRAIAsgESAH/AoAAAsgACAFNgJgIAAgCzYCXCAAIAI2AlggACAENgJUIAAgDjYCUCAAIAQ2AkwgACAINgJIIAAgDTYCRCAAIAY2AkAgACATNwM4IAAgDzYCNCAAIBA2AjAgACAKNgIsIAAgDDYCKCAAQewAaiABQewAaigCADYCACAAIAEpAmQ3AmQgACAJKQIYNwIAIABBCGogCUEYaiIBQQhq/QACAP0LAgAgAEEYaiABQRhq/QACAP0LAgAgCUFAayQADwsgCyACQcDcwgAQ1w0ACyADIAVB0NzCABDXDQALIAMgB0HA3MIAENcNAAvFBwIPfwV+IwBBMGsiBSQAIAUgAjYCKCABKAIMIQogBSAFQShqNgIsAkAgCiAKQQFqIgJNBEAgASgCBCILIAtBAWpBA3ZBB2wgC0EISRsiA0EBdiACSQRAAkACQAJAAn8gA0EBaiIDIAIgAiADSRsiAkEPTwRAIAJB/////wFLDQJBfyACQQN0QQduQQFrZ3ZBAWoMAQtBBEEIQRAgAkEISRsgAkEESRsLIgKtQhR+IhJCIIinDQEgEqciA0F4Sw0BIANBB2pBeHEiByACQQhqIgxqIQMgAyAHSQ0BIANB+P///wdLDQEgA0EIEJEOIgYNAkEIIANB+MrEACgCACIAQcwIIAAbEQAAAAsQpwwgBSgCJCECIAUoAiAhAwwECxCnDCAFKAIUIQIgBSgCECEDDAMLIAYgB2ohBiAMBEAgBkH/ASAM/AsACyACQQFrIgkgAkEDdkEHbCAJQQhJGyENAkAgCkUEQCABKAIAIQcMAQsgBkEIaiEOIAEoAgAiBykDAEJ/hUKAgYKEiJCgwIB/gyESIAUoAighD0EAIQIgCiEMIAchAwNAIBJQBEADQCACQQhqIQIgA0EIaiIDKQMAQoCBgoSIkKDAgH+DIhJCgIGChIiQoMCAf1ENAAsgEkKAgYKEiJCgwIB/hSESCyAHIBJ6p0EDdiACaiIQQWxsaiIEQRRrKQIAIA8pAwCFIhNCIIgiFCAEQQhrNQIAQrfTsIUMhSIVfiAEQQxrNQIAQt2h8csMhSIWIBNC/////w+DIhN+hSATIBV+IBQgFn6FQiCIhaciESAJcSIEIAZqKQAAQoCBgoSIkKDAgH+DIhNQBEBBCCEIA0AgBCAIaiEEIAhBCGohCCAEIAlxIgQgBmopAABCgIGChIiQoMCAf4MiE1ANAAsLIBJCAX0gEoMhEiATeqdBA3YgBGogCXEiBCAGaiwAAEEATgRAIAYpAwBCgIGChIiQoMCAf4N6p0EDdiEECyAEIAZqIBFBGXYiCDoAACAOIARBCGsgCXFqIAg6AAAgBiAEQX9zQRRsaiIEQRBqIAcgEEF/c0EUbGoiCEEQaigAADYAACAEIAj9AAAA/QsAACAMQQFrIgwNAAsLIAEgCTYCBCABIAY2AgAgASANIAprNgIIQYGAgIB4IQMgC0UNAiAHIAtBFGxBG2pBeHEiAmsgAiALakEJakEIEOgODAILIAEgBUEsakH4AEEUEMYCQYGAgIB4IQMMAQsQpwwgBSgCDCECIAUoAgghAwsgACACNgIEIAAgAzYCACAFQTBqJAALtAYBHH0gASoCNCEbIAEqAjAhHCABKgIsIR0gAioCACENIAIqAgQhDiACKgIIIQUgASoCGCEKIAEqAhQhFyABKgIQIRggASoCDCIHIAEqAiQiD5QgASoCACIIIAEqAiAiEJQgASoCKCIWIAEqAggiCYyUIAEqAgQiBCABKgIcIhGUk5KSIhIgEowgCSAPlCAEIBCUIAggEZQgByAWlJKSkiIZQwAAAABgIgEbIgwgDJQgBCAPlCAHIBGUIAggFpSTIAkgEJSTkiITIBOMIAEbIhQgFJQgByAQlCAJIBGUIAQgFpSTkiAIIA+UkyIVIBWMIAEbIhogGpSSkiIeQwAAAABeBEAgDCAekSIDlSASIBKUIBMgE5QgFSAVlJKSkSAZixC2DyIGIAaSIgyUIQsgGiADlSAMlCEGIBQgA5UgDJQhAwsgACALOAIUIAAgBjgCECAAIAM4AgwgACAKIAUgByAIIA6UIAQgDZSTIgMgA5IiA5QgCCAJIA2UIAggBZSTIgYgBpIiBpQgBCAEIAWUIAkgDpSTIgUgBZIiC5STkpKSIgUgGSAXIA4gByAGlCAJIAuUIAggA5STkpKSIg4gE5QgFSAYIA0gByALlCAEIAOUIAkgBpSTkpKSIg2UkyIDIAOSIgOUIBMgEiANlCAFIBOUkyIGIAaSIgaUIBUgFSAFlCASIA6UkyILIAuSIguUk5KSIBsgBZMgByAIIBeUIAQgGJSTIgUgBZIiBZQgBCAEIAqUIAkgF5STIgwgDJIiDJQgCCAJIBiUIAggCpSTIhQgFJIiFJSTkiAKkyIKIBYgESAHIBSUIAggBZQgCSAMlJOSIBeTIgiUIBAgByAMlCAJIBSUIAQgBZSTkiAYkyIJlJMiBCAEkiIElCARIA8gCZQgESAKlJMiByAHkiIHlCAQIBAgCpQgDyAIlJMiCiAKkiIKlJOSkpKSOAIIIAAgDiAZIAaUIBIgC5QgEyADlJOSkiAcIA6TIAggFiAHlCAPIAqUIBEgBJSTkpKSkjgCBCAAIA0gGSALlCAVIAOUIBIgBpSTkpIgHSANkyAJIBYgCpQgECAElCAPIAeUk5KSkpI4AgALwwcCD38FfiMAQTBrIgUkACAFIAI2AiggASgCDCEKIAUgBUEoajYCLAJAIAogCkEBaiICTQRAIAEoAgQiCyALQQFqQQN2QQdsIAtBCEkbIgNBAXYgAkkEQAJAAkACQAJ/IANBAWoiAyACIAIgA0kbIgJBD08EQCACQf////8BSw0CQX8gAkEDdEEHbkEBa2d2QQFqDAELQQRBCEEQIAJBCEkbIAJBBEkbCyICrUIUfiISQiCIpw0BIBKnIgNBeEsNASADQQdqQXhxIgcgAkEIaiIMaiEDIAMgB0kNASADQfj///8HSw0BIANBCBCRDiIGDQJBCCADQfjKxAAoAgAiAEHMCCAAGxEAAAALEKcMIAUoAiQhAiAFKAIgIQMMBAsQpwwgBSgCFCECIAUoAhAhAwwDCyAGIAdqIQYgDARAIAZB/wEgDPwLAAsgAkEBayIJIAJBA3ZBB2wgCUEISRshDQJAIApFBEAgASgCACEHDAELIAZBCGohDiABKAIAIgcpAwBCf4VCgIGChIiQoMCAf4MhEiAFKAIoIQ9BACECIAohDCAHIQMDQCASUARAA0AgAkEIaiECIANBCGoiAykDAEKAgYKEiJCgwIB/gyISQoCBgoSIkKDAgH9RDQALIBJCgIGChIiQoMCAf4UhEgsgDykDAEKCgICAEIUiE0IgiCIUIAcgEnqnQQN2IAJqIhBBbGxqIgRBEGs1AgBCt9OwhQyFIhV+IARBFGs1AgBC3aHxywyFIhYgE0L/////D4MiE36FIBMgFX4gFCAWfoVCIIiFpyIRIAlxIgQgBmopAABCgIGChIiQoMCAf4MiE1AEQEEIIQgDQCAEIAhqIQQgCEEIaiEIIAQgCXEiBCAGaikAAEKAgYKEiJCgwIB/gyITUA0ACwsgEkIBfSASgyESIBN6p0EDdiAEaiAJcSIEIAZqLAAAQQBOBEAgBikDAEKAgYKEiJCgwIB/g3qnQQN2IQQLIAQgBmogEUEZdiIIOgAAIA4gBEEIayAJcWogCDoAACAGIARBf3NBFGxqIgRBEGogByAQQX9zQRRsaiIIQRBqKAAANgAAIAQgCP0AAAD9CwAAIAxBAWsiDA0ACwsgASAJNgIEIAEgBjYCACABIA0gCms2AghBgYCAgHghAyALRQ0CIAcgC0EUbEEbakF4cSICayACIAtqQQlqQQgQ6A4MAgsgASAFQSxqQZACQRQQxgJBgYCAgHghAwwBCxCnDCAFKAIMIQIgBSgCCCEDCyAAIAI2AgQgACADNgIAIAVBMGokAAvhCQMBfxB9CHsjAEHgAGsiCCQAIAH9XQIUISAgBP0AAgQhGSAB/QACACEcIAEqAhQhDSAEKgIUIRUgASoCGCERIAQqAhghFiAEKgIQIRQgASoCECEXIAggASoCCCIKIAQqAggiEpQgASoCBCILIAQqAgQiDpQgASoCACIJIAQqAgAiDJQgASoCDCIPIAQqAgwiEJSSkpI4AhggCCALIAyUIA8gEpQgCSAOlJOSIAogEJSTOAIUIAggDyAOlCAJIBKUkiALIBCUkyAKIAyUkzgCECAIIAogDpQgDyAMlCAJIBCUkyALIBKUk5I4AgwgCyAUIBeTIhSUIAkgFSANkyIYlJMiDSANkiENIAogGJQgCyAWIBGTIhOUkyIRIBGSIREgCCATIA8gDZQgCyARlCAJIAkgE5QgCiAUlJMiEyATkiITlJOSkjgCJCAIIBggDyATlCAJIA2UIAogEZSTkpI4AiAgCCAUIA8gEZQgCiATlCALIA2Uk5KSOAIcIAhBKGpBASAIQQxqIAIgAyAFIAYgBxCBAQJAIAgoAigiAUECRg0AIAFBAXFFDQAgEiAIKgJQIgqUIAwgCCoCWCILlJMiByAHkiEHIAwgCCoCVCIJlCAOIAqUkyIKIAqSIQogCCAJIBAgB5QgEiAcIBn9DQABAgMEBQYHCAkKCxAREhMiGiAI/QACRCIdIAj9XQJUIhv9DQQFBgcICQoLAAECAxQVFhf95gEgHCAZ/Q0EBQYHCAkKCwABAgMUFRYXIh4gHSAb/Q0AAQIDBAUGBwgJCgsQERIT/eYB/eUBIhsgG/3kASIb/R8DIgmUIAwgCpSTkpI4AlQgCCALIBAgCpQgDCAHlCAOIAmUk5KSOAJYIAwgCCoCPCIPlCAOIAgqAjgiCZSTIgsgC5IhCyASIAmUIAwgCCoCQCINlJMiCSAJkiEJIAggFiANIBAgC5QgDCAJlCAOIBogCP0AAiwiHyAI/QACPCIa/Q0EBQYHCAkKCwABAgMUFRYX/eYBIB4gHyAa/Q0AAQIDBAUGBwgJCgsQERIT/eYB/eUBIhogGv3kASIa/R8DIg6Uk5KSkjgCQCAIIBUgDyAQIAmUIBIgDpQgDCALlJOSkpI4AjwgCCAdIBwgGf0NDA0ODwABAgMAAQIDAAECAyAQ/SABIBn9DQABAgMAAQIDAAECAwQFBgcgGyAZ/Q0EBQYHCAkKCwABAgMMDQ4P/eYBIBwgGf0NBAUGBwgJCgsAAQIDEBESEyIdIBsgCv0gA/3mASAcIBn9DQgJCgsAAQIDBAUGBxQVFhciHiAbIBn9DQgJCgsAAQIDBAUGBwABAgMgB/0gA/3mAf3lAf3kAf3kAf0LAkQgCCAX/RMgIP0NAAECAxAREhMUFRYXAAECAyAZ/Q0AAQIDBAUGBwgJCgscHR4fIB8gHCAZ/Q0MDQ4PDA0ODwwNDg8YGRobIBogGf0NBAUGBwgJCgsAAQIDDA0OD/3mASAdIBogC/0gA/3mASAeIBogGf0NCAkKCwABAgMEBQYHAAECAyAJ/SAD/eYB/eUB/eQB/eQB/eQB/QsCLAsgACAI/QACKP0LAgAgAEEwaiAIQShqIgFBMGopAgA3AgAgAEEgaiABQSBq/QACAP0LAgAgAEEQaiABQRBq/QACAP0LAgAgCEHgAGokAAvhBwILfwl9IwBBIGsiDCQAAkACQAJAAkACQCAIKAIMIg4gASgClAIiD0EBdCIQIAcoAgAiDWpPBEAgACoCACEYIAIoApQDIAYgDWpqIRMgCCgCBCEIIAMqAhAhHiADKgIAIRkgAyoCBCEfIAMqAgwhHCADKgIIIRsgAy0AGCEWIBAEQCAIIA1BAnRqIgMgEEECdGohDSAQIQAgAyECA0AgDkECdCIUIAJqIhUgAyADIA1GIhEbIhJBADYCACASQQRqIhIgAyAUaiANIBEbIg1GIQMgFSACIBEbIgIgFGoiESASIAMbIhVBADYCACARIAIgAxshAiASIBRqIA0gAxshDSAVIABBAkdBAnRqIQMgAEECayIADQALCyAOQQFGIgAgE0EAR3ENASATQQAgDkEBRyICGyIDIA5PDQEgCCADQQJ0akGAgID8AzYCACAAIA8gE2oiA0EAR3ENAiADQQAgAhsiACAOTw0CIAggAEECdGoiAEGAgID8AzYCACAHKAIAIgMgD2oiAiAPaiAOSw0FIAFB3ABqIAggAkECdGogDxDcASAAKgIAIR0gBSgCAEEBRgRAQwAAAABDAACAPyAYlSAYQwAAAABbGyIaIAUqAgQgBJOUIhcgGiAFKgIIIASTlCIaX0UNBCAaIBcgGSAXIBleGyIZIBkgGl4bIRkLIAsoAgAiAiAKSQ0EIAIgCkGIn8IAEIULAAsMBAsgDEEANgIYIAxBATYCDCAMQeyAwgA2AgggDEIENwIQIAxBCGpB6J7CABC5DQALIAxBADYCGCAMQQE2AgwgDEHsgMIANgIIIAxCBDcCECAMQQhqQfiewgAQuQ0ACyAXIBoQhgsACyAJIAJByABsaiIAQQA7AUQgACAYIB6UIhc4AiwgACAXjDgCKCAAQv////8PNwIgIAAgAzYCHCAAIA82AhggAEIANwIQIAAgASgCmAI2AgwgAEF/NgIIIAAgBjYCBCAAQQE2AgAgAEMAAAAAQwAAgD8gHZUgHYtDCOU8Hl8bOAIwIABDAAAAAEMAAIA/IBggGJQgG5QgGCAclJIiF5UgF4tDCOU8Hl8bIhdDAAAAACAWQQFxIgEbOAJAIABDAAAAACAXIAEbOAI8IAAgBCAfkyAbQwAAAABDAACAPyAYIBuUIBySIgSVIASLQwjlPB5fG5QiBJRDAAAAAJJDAAAAACAEQwAAAABcGyAZkyIEOAI4IAAgBDgCNCAHIAMgEGo2AgAgCyACQQFqNgIAIAxBIGokAA8LIAxBADYCGCAMQQE2AgwgDEGw/cEANgIIIAxCBDcCECAMQQhqQbj9wQAQuQ0AC5MIAgp/AX4jAEHQAGsiAiQAAkAgASgCBCIDRQRAIABBgICAgHg2AgAMAQsgASADQQFrNgIEAn8gASgCACIHKAIEIgFBB00EQCACQoHKADcDIEEBIQQgAkEgahCfDQwBCyAHIAFBCGs2AgQgByAHKAIAIgFBCGo2AgAgAiABKQAAEKgIIAIoAgAhBCACKAIECyEBAkACQAJAAkAgBEEBcQRAIAEhAwwBC0EEIQMgAUUEQEEAIQRBACEBDAQLQYCABCABIAFBgIAETxsiBkEEdCIEQQQQkQ4iA0UNAUEAIQQgAkEANgIQIAIgAzYCDCACIAY2AghBCCEIA0AgAkEDNgJEIAIgBzYCQCACQSBqIAJBQGsQiQQCQAJAAkACQAJAIAIoAiAiBkGAgICAeGsOAgEAAgsgAigCJCEDDAILQQAgAkE8akHArsEAEKgKIQMMAQsgAigCJCEJAkACfwJAIAIoAkQiBQRAIAVBAUYNASACKAJAIgUoAgQiC0EHTQRAIAJCgcoANwMgIAJBIGoQnw0MAwsgAigCKCEKIAUgC0EIazYCBCAFIAUoAgAiBUEIajYCACAFKQAAIgxCgICAgBBUDQMgAkEBOgAgIAIgDDcDKCACQSBqIAJBPGpBjKzBABDvCgwCC0EBIAJBPGpBwK7BABCoCgwBC0ECIAJBPGpBwK7BABCoCgshAyAGRQ0BIAkgBkECdEEEEOgODAELIAynQQNsIgUgCkYNASACIAU2AjggAiAKNgI8IAJBAjYCJCACQaDNwQA2AiAgAkICNwIsIAIgAkE8aq1CgICAgDCENwNIIAIgAkE4aq1CgICAgDCENwNAIAIgAkFAazYCKCACQRRqIgMgAkEgaiIBEIcFIAEgAxD6CkEMQQQQkQ4iA0UNBSADIAIpAiA3AgAgA0EIaiABQQhqKAIANgIAIAIoAhQiAQRAIAIoAhggAUEBEOgOCyAGRQ0AIAkgBkECdEEEEOgOCyACKAIMIQYgBARAIAYhAQNAIAEoAgAiBwRAIAFBBGooAgAgB0ECdEEEEOgOCyABQRBqIQEgBEEBayIEDQALCyACKAIIIgFFDQIgBiABQQR0QQQQ6A4MAgsgCq0gDEIghoQhDCACKAIIIARGBEAgAkEIakHUrcEAELUIIAIoAgwhAwsgAyAIaiIFIAw3AgAgBUEEayAJNgIAIAVBCGsgBjYCACACIARBAWoiBDYCECAIQRBqIQggASAERw0ACyACKAIMIQMgAigCCCIBQYCAgIB4Rw0DCyAAQYGAgIB4NgIAIAAgAzYCBAwDC0EEIARBxK3BABDXDQALQQRBDEH4ysQAKAIAIgBBzAggABsRAAAACyAAIAQ2AgggACADNgIEIAAgATYCAAsgAkHQAGokAAu/CAIKfwZ+IwBBMGsiBSQAIAUgAjYCFCAFIAE2AhACQAJAIAEgAkcEQCAAKAIAIgcoAhAiCCABTQ0CIAcoAgwiByABQbABbGoiCSgCAEEBRw0CIAIgCE8NAiAHIAJBsAFsaiIHKAIAQQFHDQIgCSgCBCEDIAcoAgQhByABIAJNBEAgAiEIIAchCSADIQcgASECDAILIAEhCCADIQkMAQsgBUEANgIYQQEgBUEQaiAFQRRqIAVBGGpB8LXCABD3DAALIAAoAgQiAykDECACrSAHrUIghoSFIg1CIIgiDiAJQbfTsIV8c60iD34gDUL/////D4MiDSAIQd2h8ct8c60iEH6FIA0gD34gDiAQfoVCIImFIg5CGYgiEEL/AINCgYKEiJCgwIABfiERIAitIAmtQiCGhCESIAMoAgAhBiADKAIEIgogDqdxIgEhBAJAA0AgBCAGaikAACIPIBGFIg1CgYKEiJCgwIABfSANQn+Fg0KAgYKEiJCgwIB/gyINQgBSBEADQAJAIAYgDXqnQQN2IARqIApxQWxsaiILQRRrKAIAIAJHDQAgC0EQaygCACAHRw0AIAggC0EMaygCAEcNACAJIAtBCGsoAgBGDQQLIA1CAX0gDYMiDUIAUg0ACwsgDyAPQgGGg0KAgYKEiJCgwIB/g1AEQCAMQQhqIgwgBGogCnEhBAwBCwsgBSAAKAIIKAIANgIoIAUgEjcCICAFIAc2AhwgBSACNgIYIAEgBmopAABCgIGChIiQoMCAf4MiDVAEQEEIIQQDQCABIARqIQEgBEEIaiEEIAYgASAKcSIBaikAAEKAgYKEiJCgwIB/gyINUA0ACwsgAygCCCELIAYgDXqnQQN2IAFqIApxIgRqLAAAIgFBAE4EQCAGIAYpAwBCgIGChIiQoMCAf4N6p0EDdiIEai0AACEBCwJAIAFBAXEiASALRXFFBEAgBCAGaiAQp0H/AHEiDDoAACAGIARBCGsgCnFqQQhqIAw6AAAgAyALIAFrNgIIIAMgAygCDEEBajYCDCAGIARBbGxqQRRrIgFBEGogBUEoaigCADYCACABIAX9AAIY/QsCAAwBCyAFQQhqIAMgA0EQahD2ASADKAIAIAMoAgQgDhCFCiIBIAMoAgAiBGoiBi0AACEKIAYgDqdBGXYiBjoAACAEIAMoAgQgAUEIa3FqQQhqIAY6AAAgAyADKAIMQQFqNgIMIAMgAygCCCAKQQFxazYCCCAEIAFBbGxqQRRrIgEgBUEYaiID/QACAP0LAgAgAUEQaiADQRBqKAIANgIACyAAKAIMIgAoAggiAyAAKAIARgRAIABB4LXCABCUCAsgACgCBCADQRRsaiIBIAk2AhAgASAINgIMIAEgBzYCCCABIAI2AgQgAUEANgIAIAAgA0EBajYCCAwBCyALQQRrIAAoAggoAgA2AgALIAVBMGokAAuyBwIQfwN+IwBBMGsiBCQAIAQgAjYCKCABKAIMIQogBCAEQShqNgIsAkAgCiAKQQFqIgJNBEAgASgCBCILIAtBAWpBA3ZBB2wgC0EISRsiA0EBdiACSQRAAkACQAJAAn8gA0EBaiIDIAIgAiADSRsiAkEPTwRAIAJB/////wFLDQJBfyACQQN0QQduQQFrZ3ZBAWoMAQtBBEEIQRAgAkEISRsgAkEESRsLIgKtQgx+IhNCIIinDQEgE6ciA0F4Sw0BIANBB2pBeHEiByACQQhqIgxqIQMgAyAHSQ0BIANB+P///wdLDQEgA0EIEJEOIgYNAkEIIANB+MrEACgCACIAQcwIIAAbEQAAAAsQpwwgBCgCJCECIAQoAiAhAwwECxCnDCAEKAIUIQIgBCgCECEDDAMLIAYgB2ohBiAMBEAgBkH/ASAM/AsACyACQQFrIgkgAkEDdkEHbCAJQQhJGyENAkAgCkUEQCABKAIAIQcMAQsgBkEIaiEOIAEoAgAiB0EMayEPIAcpAwBCf4VCgIGChIiQoMCAf4MhEyAEKAIoIRBBACECIAohDCAHIQMDQCATUARAA0AgAkEIaiECIANBCGoiAykDAEKAgYKEiJCgwIB/gyITQoCBgoSIkKDAgH9RDQALIBNCgIGChIiQoMCAf4UhEwsgDyATeqdBA3YgAmoiEUF0bGooAgAgECkDACIUp3OtIhVC3aHxywx+IBRCIIgiFEK307CFDH6FIBVCt9OwhQx+IBRC3aHxywx+hUIgiIWnIhIgCXEiBSAGaikAAEKAgYKEiJCgwIB/gyIUUARAQQghCANAIAUgCGohBSAIQQhqIQggBSAJcSIFIAZqKQAAQoCBgoSIkKDAgH+DIhRQDQALCyATQgF9IBODIRMgFHqnQQN2IAVqIAlxIgUgBmosAABBAE4EQCAGKQMAQoCBgoSIkKDAgH+DeqdBA3YhBQsgBSAGaiASQRl2Igg6AAAgDiAFQQhrIAlxaiAIOgAAIAYgBUF/c0EMbGoiBUEIaiAHIBFBf3NBDGxqIghBCGooAAA2AAAgBSAIKQAANwAAIAxBAWsiDA0ACwsgASAJNgIEIAEgBjYCACABIA0gCms2AghBgYCAgHghAyALRQ0CIAcgC0EMbEETakF4cSICayACIAtqQQlqQQgQ6A4MAgsgASAEQSxqQY4CQQwQxgJBgYCAgHghAwwBCxCnDCAEKAIMIQIgBCgCCCEDCyAAIAI2AgQgACADNgIAIARBMGokAAuAHAMNfhh/AXsjAEEwayIlJAAgASkDGCIFIAIpAggiCoVC88rRy6eM2bL0AIUiBCABKQMQIgdC4eSV89bs2bzsAIV8IQwgDCAEQhCJhSIEIAVC7d6R85bM3LfkAIUiBiAHQvXKzYPXrNu38wCFfCIFQiCJfCEJIAkgBEIViYVCgICAgICAgIAIhSIEIAUgBkINiYUiBiAMfCIFQiCJfCEMIAwgBEIQiYUiByAFIAZCEYmFIgUgCSAKhXwiBEIgiXwhCSAEIAVCDYmFIgYgDHwiBUIgiUL/AYUgCSAHQhWJhSIEfCEKIAogBEIQiYUiBCAFIAZCEYmFIgYgCUKAgICAgICAgAiFfCIFQiCJfCEHIAcgBEIViYUiBCAFIAZCDYmFIgYgCnwiBUIgiXwhCSAJIARCEImFIgQgBSAGQhGJhSIGIAd8IgVCIIl8IQogCiAEQhWJhSIHIAZCDYkgBYUiBiAJfCIEQiCJfCIFIAZCEYkgBIUiBCAKfCAEQg2JhSIEfCEGIAYgB0IQiSAFhUIViSAEQhGJhSAGQiCIhYUhECABKAIIRQRAIAFBEGohHSMAQSBrIh8kAAJAIAEoAgwiGUEBaiISIBlPBEAgASgCBCIbQQFqIh5BA3YhFQJAIBsgFUEHbCAbQQhJGyIhQQF2IBJJBEACQAJAAkACfyAhQQFqIhUgEiASIBVJGyISQQ9PBEAgEkH/////AUsNAkF/IBJBA3RBB25BAWtndkEBagwBC0EEQQhBECASQQhJGyASQQRJGwsiEq1CKH4iBEIgiKcNASAEpyIXIBJBCGoiEWohFiAWIBdJDQEgFkH4////B0sNASAWQQgQkQ4iFQ0CQQggFkH4ysQAKAIAIgBBzAggABsRAAAACxCoDCAfKAIcIRIgHygCGCEVDAULEKgMIB8oAgwhEiAfKAIIIRUMBAsgFSAXaiEcIBEEQCAcQf8BIBH8CwALIBJBAWsiFCASQQN2QQdsIBRBCEkbISEgASgCACEXIBkEQCAcQShrISIgHEEIaiEjIBdBKGshJCAXQSBrISYgHSkDCCIGQu3ekfOWzNy35ACFIgUgHSkDACIHQvXKzYPXrNu38wCFfCIEQiCJIQ4gBCAFQg2JhSIEQhGJIQ8gB0Lh5JXz1uzZvOwAhSIMIAR8IQkgBkLzytHLp4zZsvQAhSEKIBcpAwBCf4VCgIGChIiQoMCAf4MhCyAXIRVBACESIBkhEwNAIAtQBEADQCASQQhqIRIgFUEIaiIVKQMAQoCBgoSIkKDAgH+DIgRCgIGChIiQoMCAf1ENAAsgBEKAgYKEiJCgwIB/hSELCyAmIAt6p0EDdiASaiIYQVhsaikAACIHIAqFIgQgDHwgBEIQiYUiBSAOfCEIIAggBUIViYVCgICAgICAgIAIhSIFIAQgCXwiBEIgiXwhDSANIAVCEImFIgUgBCAPhSIGIAcgCIV8IgRCIIl8IQggCCAFQhWJhSIFIAQgBkINiYUiBiANfCIEQiCJQv8BhXwhByAHIAVCEImFIgUgBCAGQhGJhSIGIAhCgICAgICAgIAIhXwiBEIgiXwhCCAIIAVCFYmFIgUgBCAGQg2JhSIGIAd8IgRCIIl8IQcgByAFQhCJhSIFIAQgBkIRiYUiBiAIfCIEQiCJfCEIIAcgBkINiSAEhSIHfCIEQiCJIAggBUIViYUiBnwiBSAHQhGJIASFIgQgCHwgBEINiYUiBHwhByAcIAcgBkIQiSAFhUIViSAEQhGJhSAHQiCIhYWnIhYgFHEiEWopAABCgIGChIiQoMCAf4MiBFAEQEEIIRoDQCARIBpqIREgGkEIaiEaIBwgESAUcSIRaikAAEKAgYKEiJCgwIB/gyIEUA0ACwsgC0IBfSALgyELIBwgBHqnQQN2IBFqIBRxIhFqLAAAQQBOBEAgHCkDAEKAgYKEiJCgwIB/g3qnQQN2IRELIBEgHGogFkEZdiIWOgAAICMgEUEIayAUcWogFjoAACAiIBFBWGxqIhZBIGogJCAYQVhsaiIRQSBqKQAANwAAIBZBEGogEUEQav0AAAD9CwAAIBYgEf0AAAD9CwAAIBNBAWsiEw0ACwsgASAUNgIEIAEgHDYCACABICEgGWs2AghBgYCAgHghFSAbRQ0BIBsgHkEobCISakEJaiIRRQ0BIBcgEmsgEUEIEOgODAELIAEoAgAhGAJAIBUgHkEHcUEAR2oiFkUNAAJAIBZBAUYEQCAWIRUMAQsgFkEBcSEVIBZB/v///wNxIhdBA3QhEyAXIREgGCESA0AgEiAS/QADACIp/U1BB/3NAf0MAQEBAQEBAQEBAQEBAQEBAf1OICn9DH9/f39/f39/f39/f39/f3/9UP3OAf0LAwAgEkEQaiESIBFBAmsiEQ0ACyAWIBdGDQELIBMgGGohEgNAIBIgEikDACIEQn+FQgeIQoGChIiQoMCAAYMgBEL//v379+/fv/8AhHw3AwAgEkEIaiESIBVBAWsiFQ0ACwsCQAJAIB5BCE8EQCAYIB5qIBgpAAA3AAAMAQsgHgRAIBhBCGogGCAe/AoAAAsgHkUNAQsgHSkDCCIGQu3ekfOWzNy35ACFIgUgHSkDACIHQvXKzYPXrNu38wCFfCIEQiCJIQ4gBCAFQg2JhSIEQhGJIQ8gB0Lh5JXz1uzZvOwAhSIMIAR8IQkgGEEIaiEdIBhBIGshJiAYQShrISIgBkLzytHLp4zZsvQAhSEKQQEhEUEAIRIDQCASIRUgESESAkAgFSAYaiIjLQAAQYABRw0AIBVBWGwiESAiaiEUIBEgJmohFgNAIBYpAAAiByAKhSIEIAx8IARCEImFIgUgDnwhCCAIIAVCFYmFQoCAgICAgICACIUiBSAEIAl8IgRCIIl8IQ0gDSAFQhCJhSIFIAQgD4UiBiAHIAiFfCIEQiCJfCEIIAggBUIViYUiBSAEIAZCDYmFIgYgDXwiBEIgiUL/AYV8IQcgByAFQhCJhSIFIAQgBkIRiYUiBiAIQoCAgICAgICACIV8IgRCIIl8IQggCCAFQhWJhSIFIAQgBkINiYUiBiAHfCIEQiCJfCEHIAcgBUIQiYUiBSAEIAZCEYmFIgYgCHwiBEIgiXwhCCAHIAZCDYkgBIUiB3wiBEIgiSAIIAVCFYmFIgZ8IgUgB0IRiSAEhSIEIAh8IARCDYmFIgR8IQcgGCAHIAZCEIkgBYVCFYkgBEIRiYUgB0IgiIWFpyIkIBtxIhciGmopAABCgIGChIiQoMCAf4MiC1AEQEEIIRMDQCATIBpqIREgE0EIaiETIBggESAbcSIaaikAAEKAgYKEiJCgwIB/gyILUA0ACwsgGCALeqdBA3YgGmogG3EiGmosAABBAE4EQCAYKQMAQoCBgoSIkKDAgH+DeqdBA3YhGgsgGiAXayAVIBdrcyAbcUEITwRAIBggGmoiES0AACEXIBEgJEEZdiIROgAAIB0gGkEIayAbcWogEToAACAiIBpBWGxqIRMgF0H/AUYEQCAjQf8BOgAAIB0gFUEIayAbcWpB/wE6AAAgE0EgaiAUQSBqKQAANwAAIBNBEGogFEEQav0AAAD9CwAAIBMgFP0AAAD9CwAADAMLIBMoAAAhESATIBQoAAA2AAAgFCARNgAAIBQoAAQhESAUIBMoAAQ2AAQgEyARNgAEIBMoAAghESATIBQoAAg2AAggFCARNgAIIBQoAAwhESAUIBMoAAw2AAwgEyARNgAMIBMoABAhESATIBQoABA2ABAgFCARNgAQIBQoABQhESAUIBMoABQ2ABQgEyARNgAUIBMoABghESATIBQoABg2ABggFCARNgAYIBQoABwhESAUIBMoABw2ABwgEyARNgAcIBMoACAhESATIBQoACA2ACAgFCARNgAgIBQoACQhESAUIBMoACQ2ACQgEyARNgAkDAELCyAjICRBGXYiEToAACAdIBVBCGsgG3FqIBE6AAALIBIgHkkiFSASaiERIBUNAAsLIAEgISAZazYCCEGBgICAeCEVCwwBCxCoDCAfKAIEIRIgHygCACEVCyAlIBU2AgAgJSASNgIEIB9BIGokAAsgASgCACIZQShrIREgASgCBCIXIBCncSEWIBBCGYgiCkL/AINCgYKEiJCgwIABfiEHIAIpAgghBiACKQIAIQUDQAJ/AkACQAJAIBYgGWopAAAiCSAHhSIEQoGChIiQoMCAAX0gBEJ/hYNCgIGChIiQoMCAf4MiBEIAUgRAA0AgBSARQQAgBHqnQQN2IBZqIBdxayIVQShsaiISKQIAhSAGIBIpAgiFhFANAiAEQgF9IASDIgRCAFINAAsLIAlCgIGChIiQoMCAf4MhBCAnRQRAIARQDQMgBHqnQQN2IBZqIBdxISALQQEgBCAJQgGGg1ANAxogGSAgaiwAACIWQQBOBEAgGSAZKQMAQoCBgoSIkKDAgH+DeqdBA3YiIGotAAAhFgsgGSAgaiAKp0H/AHEiEjoAACAZICBBCGsgF3FqQQhqIBI6AAAgASABKAIIIBZBAXFrNgIIIAEgASgCDEEBajYCDCAZICBBWGxqQShrIgEgAv0AAgD9CwIAIAFBEGogA/0AAgD9CwIAIAFBIGogA0EQaikCADcCACAAQYCAgIB4NgIADAELIAAgGSAVQShsakEYayIB/QACAP0LAgAgASADKQIANwIAIABBEGogAUEQaikCADcCACABQQhqIANBCGr9AAIA/QsCAAsgJUEwaiQADwtBAAshJyAoQQhqIiggFmogF3EhFgwACwAL+wgDCn8BewF+IwAiAiEJIAJBQGpBQHEiBSQAAkAgACgCCCIDRQRAIABBADYCFEEAIQMMAQsgACgCBCIGKAIcIQcCQAJAAkACQAJAIAYoAjxB/////wNxIAdB/////wNxakECTQRAIABBADYCFCABQQA2AgggBSAGQTBq/QAEAP0LBDAgBSAGQSBq/QAEAP0LBCAgBSAGQRBq/QAEAP0LBBAgBSAG/QAEAP0LBAAgASgCAEUEQCABQeDwwgAQwwgLIABBDGohBCABKAIEIgIgBf0ABAD9CwQAIAJBEGogBf0ABBD9CwQAIAJBIGogBf0ABCD9CwQAIAJBMGogBf0ABDD9CwQAIAIgAigCHCIIQf////8HQf////8DIAhB/////3tLG3E2AhwgAigCPCIFQf////8DcSIIDQEMBQsgAyABKAIIIgRLBEAgASgCACAEIgJrIAMgAmsiCEkEQCABIAIgCEHAAEHAABDYBiABKAIIIQILIAEoAgQiCiACQQZ0aiEHIAhBAkkEfyACBSADIARBf3NqQQZ0IgsEQCAHQQAgC/wLAAsgCiACIANqIARrQQZ0akFAaiEHIAIgCGpBAWsLIQggB/0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgB0Ewav0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgB0Egav0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgB0EQav0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgBigCHCEHIAhBAWohAwsgAEEYaiEEIAEgAzYCCCAFQQE2AgAgBigCLCEDAkAgB0H/////A3FBAUYEQCABKAIEIgJBEGogBkEQav0ABAD9CwQAIAIgBikDADcDACACQQhqIAZBCGopAwA3AwAgAkH/////B0H/////AyACKAIcIgJB/////3tLGyACcTYCHAwBCyAAIAEgBCAAKAIQIAAoAhQgBigCDCAFQQAQggIgACgCCEUNAgsCQCAAKAIEIgIoAjxB/////wNxQQFHBEAgACABIAQgACgCECAAKAIUIAMgBUEBEIICDAELIAEoAghFDQMgAkEwav0ABAAhDCABKAIEIgMgAikDIDcDICADQShqIAJBKGopAwA3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IRMgBiASOAJkIAZC////+wc3A1AgBv0M//9/////f38AAAAA//9///0LBEAgBv0MAAAAAP//f////39/AAAAAP0LBDAgBv0M//9/fwAAAAD//3////9/f/0LBCAgBv0M//9/////f38AAAAA//9///0LBBAgBv0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgBiAIKQMINwNoIAZB8ABqIAhBEGopAwA3AwAgBkH4AGogCEEYaikDADcDACAGQQA6AKgBIAZC////+wc3A6ABIAZBADYCjAEgBkIANwKEASAGIBM4AoABIAZC////+wc3ArwBIAZBADoAxAEgBkL////7BzcD2AEgBkEAOgDgASAGQv////sHNwL0ASAGQQA6APwBIAZBuAFqIAhB/ABqKAAANgAAIAYgCP0AAG39CwCpASAGQdQBaiAIQekAaigAADYAACAGIAj9AABa/QsAxQEgBkHwAWogCEHWAGooAAA2AAAgBiAI/QAAR/0LAOEBIAZBADoAmAIgBkL////7BzcDkAIgBkEAOgC0AiAGQT42ArgCIAZBgAI7AbwCIAZC////+wc3AqwCIAZBjAJqIAhBwwBqKAAANgAAIAYgCP0AADT9CwD9ASAGIAj9AAAh/QsAmQIgBkGoAmogCEEwaigAADYAACAIQZABaiQAIAdB8ANqIAtBCGooAgA2AgAgB0GMBGogDUEIaigCADYCACAHIAspAgA3A+gDIAcgDSkCADcChAQgAwRAIAdB0AVqIgMgBkHAAvwKAAAgByAFOALMBSAHIAQ4AsgFIAMgB0HIBWopAgA3AxAgAyADLQC5AkEBcjoAuQIgBiADQcAC/AoAAAsgB0EwaiAHQYADakG9AvwKAAAgCSgCACEGIAcvAb4FIQsgBy0AvQUhAyACIAIoAgBBAWs2AgAgCSAGQQFrIgI2AgAgAg0AIAdBLGoQqQ0LIAEgASgCAEEBazYCACAMIAwoAgBBAWsiATYCACABRQRAIAdBIGoQqQ0LIAAgACgCAEEBazYCACAKIAooAgBBAWsiADYCACAARQRAIAdBFGoQqQ0LQQAhAiADQQJHBEAgB0HcBWogB0EwakG9AvwKAABB4AJBEBCRDiIARQ0EIABBADYCECAAQoGAgIAQNwMAIABBFGogB0HQBWpByQL8CgAAIAAgCzsB3gIgACADOgDdAiAA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AAAAAAAA/QsAXSAE/QwAAAAAAAAAAAAAAAAAAAAA/QsASiAE/QwAAAAAAAAAAAAAAAAAAAAA/QsANyAE/QwAAAAAAAAAAAAAAAAAAAAA/QsAJCAEQYABaiILIAVB9AJqIgwQrgQgA0HgAGogC0EIaiINKAIANgIAIAMgBCkCgAE3AlggBCoCjAEhDyALIAwQrgQgBEEcaiANKAIANgIAIAQgBCkCgAE3AhQgBCoCjAEhECADIA84AmQgA0L////7BzcDUCAD/Qz//3////9/fwAAAAD//3///QsEQCAD/QwAAAAA//9/////f38AAAAA/QsEMCAD/Qz//39/AAAAAP//f////39//QsEICAD/Qz//3////9/fwAAAAD//3///QsEECAD/QwAAAAAAAAAAAAAAAAAAAAA/QsEACADIAQpAwg3A2ggA0HwAGogBEEQaikDADcDACADQfgAaiAEQRhqKQMANwMAIANBADoAqAEgA0L////7BzcDoAEgA0EANgKMASADQgA3AoQBIAMgEDgCgAEgA0L////7BzcCvAEgA0EAOgDEASADQv////sHNwPYASADQQA6AOABIANC////+wc3AvQBIANBADoA/AEgA0G4AWogBEH8AGooAAA2AAAgAyAE/QAAbf0LAKkBIANB1AFqIARB6QBqKAAANgAAIAMgBP0AAFr9CwDFASADQfABaiAEQdYAaigAADYAACADIAT9AABH/QsA4QEgA0EAOgCYAiADQv////sHNwOQAiADQQA6ALQCIANBNzYCuAIgA0GAAjsBvAIgA0L////7BzcCrAIgA0GMAmogBEHDAGooAAA2AAAgAyAE/QAANP0LAP0BIAMgBP0AACH9CwCZAiADQagCaiAEQTBqKAAANgAAIARBkAFqJAAgBUHwA2ogCEEIaigCADYCACAFQYwEaiAKQQhqKAIANgIAIAUgCCkCADcD6AMgBSAKKQIANwKEBCAFQTBqIANBvQL8CgAAIAYoAgAhBCAFLwG+BSEIIAUtAL0FIQMgAiACKAIAQQFrNgIAIAYgBEEBayICNgIAIAINACAFQSxqEKkNCyABIAEoAgBBAWs2AgAgCSAJKAIAQQFrIgE2AgAgAUUEQCAFQSBqEKkNCyAAIAAoAgBBAWs2AgAgByAHKAIAQQFrIgA2AgAgAEUEQCAFQRRqEKkNC0EA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kAlqIQIgDv0MBAAAAAQAAAAEAAAABAAAAP2uASEOIANBBGsiAw0ACyABIARGDQELIAkgBkGkAmxqIQIgCCAKayIJQQFrIQRBACEDA0AgAkGAgICAeDYCACACQQRqIAxBASADIARGIgEbNgIAIAJBCGogCyAKIANBAWoiA2ogARs2AgAgAkGkAmohAiADIAlHDQALIAMgBmohBgsgACAHNgIEIABBATYCACAAIAY2AhAgBUEgaiQAC6MFAQp/AkACQCAAKAIIIgQgAU8EQCAAIAE2AgggASAERwRAIAQgAWshBCAAKAIEIAFBBHRqIQMDQCADKAIAIgAEQCADQQRqKAIAIABBAnRBBBDoDgsgA0EQaiEDIARBAWsiBA0ACwsgAigCACIARQ0BIAIoAgQgAEECdEEEEOgODwsgAigCDCEGIAIoAgghCCACKAIEIQogAigCACELIAQhBSABIARrIgkgACgCACAEa0sEQCAAIAQgCUEEQRAQ1wYgACgCCCEFCyAAKAIEIAVBBHRqIQMCQCAJQQJJDQAgCEECdCEHIAhB/////wNLDQIgB0H8////B0sNAiAHBEAgBEF/cyABaiECIAUgCWpBAWshBUEEIQwDQCAHQQQQkQ4iAUUNBCAHBEAgASAKIAf8CgAACyADQQxqIAY2AgAgA0EIaiAINgIAIANBBGogATYCACADIAg2AgAgA0EQaiEDIAJBAWsiAg0ACwwBCyABIARBf3NqIgFBA3EhAiAJQQJrQQNPBEAgAUF8cSEBA0AgA0KAgICAwAA3AgAgA0E8aiAGNgIAIANBOGpBADYCACADQTBqQoCAgIDAADcCACADQSxqIAY2AgAgA0EoakEANgIAIANBIGpCgICAgMAANwIAIANBHGogBjYCACADQRhqQQA2AgAgA0EQakKAgICAwAA3AgAgA0EMaiAGNgIAIANBCGpBADYCACADQUBrIQMgAUEEayIBDQALCyACBEADQCADQoCAgIDAADcCACADQQxqIAY2AgAgA0EIakEANgIAIANBEGohAyACQQFrIgINAAsLIAUgCWpBAWshBQsgAyAGNgIMIAMgCDYCCCADIAo2AgQgAyALNgIAIAAgBUEBajYCCAsPCyAMIAdBgPzBABDXDQALvQUBC38jAEEgayICJAACQCABKAIEIgNFBEAgAEGAgICAeDYCAAwB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A0AgAyAGTw0CIAcgA0GAA2xqIgwoAvACIgMgAkcNAAsgDEHwAmogCTYCAAwBCyAMQQhqIAk2AgALIAggC08NACAOQiCIpyEJIAIgBCAIQQR0aiIIKAIMIgNHBEADQCADIAZPDQIgByADQYADbGoiCCgC9AIiAyACRw0ACyAIQfQCaiAJNgIADAELIAhBDGogCTYCAAsgCiAFQYAD/AoAACAFIAcgBkEBayIDQYADbGpBgAP8CgAAIAEgAzYCFAJAIAIgA08NACAHIAJBgANsaikD+AIiDaciASALTw0AIA1CIIinIQYCQCAEIAFBBHRqIgUoAggiASADRwRAA0AgASADTw0CIAMgByABQYADbGoiBSgC8AIiAUcNAAsgBUHwAmogAjYCAAwBCyAFQQhqIAI2AgALIAYgC08NACAEIAZBBHRqIgQoAgwiASADRwRAA0AgASADTw0CIAMgByABQYADbGoiBCgC9AIiAUcNAAsgBEH0AmogAjYCAAwBCyAEQQxqIAI2AgALIAAgCkHwAvwKAAALIApBgANqJAALvgQBCH8jAEEQayIDJAAgAyABNgIEIAMgADYCACADQqCAgIAONwIIAn8CQAJAAkAgAigCECIJBEAgAigCFCIADQEMAgsgAigCDCIARQ0BIAIoAggiASAAQQN0aiEEIABBAWtB/////wFxQQFqIQYgAigCACEAA0ACQCAAQQRqKAIAIgVFDQAgAygCACAAKAIAIAUgAygCBCgCDBEFAEUNAEEBDAULQQEgASgCACADIAFBBGooAgARAwANBBogAEEIaiEAIAFBCGoiASAERw0ACwwCCyAAQRhsIQogAEEBa0H/////AXFBAWohBiACKAIIIQQgAigCACEAA0ACQCAAQQRqKAIAIgFFDQAgAygCACAAKAIAIAEgAygCBCgCDBEFAEUNAEEBDAQLQQAhB0EAIQgCQAJAAkAgBSAJaiIBQQhqLwEAQQFrDgIBAgALIAFBCmovAQAhCAwBCyAEIAFBDGooAgBBA3RqLwEEIQgLAkACQAJAIAEvAQBBAWsOAgECAAsgAUECai8BACEHDAELIAQgAUEEaigCAEEDdGovAQQhBwsgAyAHOwEOIAMgCDsBDCADIAFBFGooAgA2AghBASAEIAFBEGooAgBBA3RqIgEoAgAgAyABKAIEEQMADQMaIABBCGoh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CANAIAEoAighAiABQQA2AiggAkEBcQRAIAAgAjYCACAAIAf9AAIA/QsCBCAAQRRqIAdBEGr9AAIA/QsCACAAQSRqIAdBIGooAgA2AgAMBAsgASADQQFqIgM2AlQgCCgCDEEBayADTQRAIAUgCCgCEEECa08NAyABQQA2AlQgASAFQQFqIgU2AlhBACEDCyAEQTBqIgIgCCADIAUQnQIgASACQdAA/AoAACAJIAZBEGr9AAIA/QsDACAKIAZBIGooAgA2AgAgASgCACECIAFBADYCACAEIAb9AAIA/QsDCCACQQFxRQ0ACwsgACACNgIAIAAgBP0AAwj9CwIEIABBFGogCf0AAwD9CwIAIABBJGogCigCADYCAAwBCyAAQQA2AgALIARBgAFqJAALwwMCAX8JfUP//39/IQdD//9//yEIAkAgASgCCEUEQEP//3//IQZD//9//yEFQ///f38hA0P//39/IQQMAQtD//9//yEGQ///f/8hBUP//39/IQND//9/fyEEAkACQCABKAIEIgIoAjxB/////wNxIAIoAhxB/////wNxag4CAgABCyACKgIYIQggAioCFCEGIAIqAhAhBSACKgIIIQcgAioCBCEDIAIqAgAhBAwBCyACKgIYIgYgAioCOCIFIAUgBl8bIQggAioCFCIGIAIqAjQiBSAFIAZfGyEGIAIqAhAiBSACKgIwIgMgAyAFXxshBSACKgIIIgMgAioCKCIEIAMgBF8bIQcgAioCBCIDIAIqAiQiBCADIARfGyEDIAIqAgAiBCACKgIgIgkgBCAJXxshBAsgACAHIAEqAmwiB0MAAAA/lCIJkiAHlY78ADYCCCAAIAMgASoCaCIDQwAAAD+UIgqSIAOVjvwANgIEIAAgBCABKgJkIgRDAAAAP5QiC5IgBJWO/AA2AgAgACAIIAmTIAeVjvwAQQFqNgIUIAAgBiAKkyADlY78AEEBajYCECAAIAUgC5MgBJWO/ABBAWo2AgwLiAMBB38jAEEQayIEJAACQAJAAkACQCABKAIEIgIEQCABKAIAIQYgAkEDcSEFAkAgAkEESQRAQQAhAgwBCyAGQRxqIQMgAkF8cSEIQQAhAgNAIAMoAgAgA0EIaygCACADQRBrKAIAIANBGGsoAgAgAmpqamohAiADQSBqIQMgCCAHQQRqIgdHDQALCyAFBEAgB0ED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IAMoAvgFIAMoAvwFTg0AQQAhBSADQdQHagwBCyADIAUgB2oiBSAHTzYC1AcgA0H8DmoLIAU2AgAgAygC/A4hCCADKALUByEFCyADKAKABkEBRgRAQQAhBEEAIQcgAygChAYEQCADKAKoBiIGIAMoAqQGIgdrQQAgBiAHShshBwsgAygCrAYEQCADKALQBiIEIAMoAswGIgZrQQAgBCAGShshBAsCfwJAIAMoAtQGRQ0AIAMoAogHIAMoAowHTg0AQQAhBCADQdQHagwBCyADIAQgB2oiBCAHTzYC1AcgA0H8DmoLIAQ2AgAgAygC/A4hBiADKALUByEECwJ/AkAgAygCkAcEQCADKALAByADKALEB04gBXEgBHENAUEAIQUgA0HUB2oMAgsgBCAFcUEBcQ0AQQAhBSADQdQHagwBCyAGIAhqIQUgA0H8DmoLIAU2AgALQQRBfyAJIAtqIgQgBCAJSRsgCyAQG0EBaiIEQX8gBBsiBCAEQQRNGyIGQQJ0IQUgBEH/////A0sNAyAFQfz///8HSw0DQQQhDCAFQQQQkQ4iBEUNAyAEIA82AgBBASEHIANBATYC0AcgAyAENgLMByADIAY2AsgHIANB1AdqIgUgA0EkakGkB/wKAAAgA0EQaiAFEGogAygCEEEBcUUNBCADKAIUIQxBBCELA0AgAygCyAcgB0YEQCADKAL0ByADKALwB2tBACADKALsBxshDyADKALcByADKALYB2shECADKALUByERAkAgAygChAhBA0YNACADKALICSIEQQJHBEBBASEFQQAhCEEAIQlBASEGIARBAXEEQEEAIQZBACEEIAMoAswJBEAgAygC8AkiBCADKALsCSIJa0EAIAQgCUobIQQLIAMoAvQJBEAgAygCmAoiBiADKAKUCiIJa0EAIAYgCUobIQYLAn8CQCADKAKcCkUNACADKALQCiADKALUCk4NAEEAIQYgA0H8DmoMAQsgAyAEIAZqIgYgBE82AvwOIANB+A5qCyAGNgIAIAMoAvgOIQkgAygC/A4hBgsgAygC2ApBAUYEQEEAIQVBACEEIAMoAtwKBEAgAygCgAsiBCADKAL8CiIIa0EAIAQgCEobIQQLIAMoAoQLBEAgAygCqAsiBSADKAKkCyIIa0EAIAUgCEobIQULAn8CQCADKAKsC0UNACADKALgCyADKALk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AhxB/////wNxag4CAAECCyADQv////v///+/fzcDECAD/Qz//39///9/f///f3///3///QsEAAwCCyADQRRqIAFBGGooAgA2AgAgAyABKQMANwMAIAMgASkCEDcCDCADIAFBCGooAgA2AggMAQsgAyABKgIYIgQgASoCOCIFIAQgBWAbOAIUIAMgASoCFCIEIAEqAjQiBSAEIAVgGzgCECADIAEqAhAiBCABKgIwIgUgBCAFYBs4AgwgAyABKgIIIgQgASoCKCIFIAQgBV8bOAIIIAMgASoCBCIEIAEqAiQiBSAEIAVfGzgCBCADIAEqAgAiBCABKgIgIgUgBCAFXxs4AgALIAAgAyACELsDIANBIGokAAu2AgIFfwF+IwBBQGoiAiQAIAEoAgBBgICAgHhGBEAgASgCDCEEIAJBHGoiBUEIaiIGQQA2AgAgAkKAgICAEDcCHCACQShqIgNBCGogBCgCACIEQQhqKQIANwMAIANBEGogBEEQaikCADcDACACIAQpAgA3AyggBUHYicQAIAMQuAMaIAJBGGogBigCACIDNgIAIAIgAikCHCIHNwMQIAFBCGogAzYCACABIAc3AgALIAEpAgAhByABQoCAgIAQNwIAIAJBCGoiAyABQQhqIgEoAgA2AgAgAUEANgIAIAIgBzcDAEEMQQQQkQ4iAUUEQEEEQQxB+MrEACgCACIAQcwIIAAbEQAAAAsgASACKQMANwIAIAFBCGogAygCADYCACAAQcyNxAA2AgQgACABNgIAIAJBQGskAAuRAgEFfyMAQRBrIgUkAAJAAkACQCAARQ0AIABBCGsiBigCAEEBaiEDIAYgAzYCACADRQ0BIAAoAgAiA0F/Rg0CIAAgA0EBajYCACAFIAY2AgwgBSAANgIIIAUgAEEEajYCBCACRQ0AIAJBCGsiAygCACIHQQFqIQQgAyAENgIAIARFDQEgAigCAA0CIAJBfzYCACABIAAoAkwiBEkEQCACQQRqIAAoAkggAUH0AGxqQfQA/AoAACAAKAJMIQQLIAJBADYCACADIAc2AgAgBigCACECIAAgACgCAEEBazYCACAGIAJBAWsiADYCACAARQRAIAVBDGoQ5AsLIAVBEGokACABIARJDwsQgw8LAAsQhA8AC94CAgV9A3sgACABKgIEIgVDq6qqPpQgASoCECIDQ6uqqj6U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ayIANgIAIABFBEAgA0GMCGoQpg0LQQAhACADKAIAQQJHBEAgA0GQCGogA0GACPwKAABBoAhBEBCRDiIARQ0EIABBADYCECAAQoGAgIAQNwMAIABBFGogA0GECGpBjAj8CgAAIABBEGohAAsgA0GQEGokACAADwsQgw8LAAsQhA8AC0EQQaAIQfjKxAAoAgAiAEHMCCAAGxEAAAALiwIBCX8gACIHKAIIIgIgAUkEQCACIQMgASACayIFIAAoAgAgAmtLBEAgACACIAVBBEEEENgGIAAoAgghAwsgBygCBCADQQJ0aiEAAkAgBUECSQRAIAAhBAwBCwJAAkAgASACQX9zaiIIQQRJBEAgACEEQQEhCQwBCyAIQXxxIgZBAXIhCSAAIAZBAnRqIQQgBiEKA0AgAP0MAAAAAAAAAAAAAAAAAAAAAP0LAgAgAEEQaiEAIApBBGsiCg0ACyAGIAhGDQELIAIgCWogAWshAANAIARBADYCACAEQQRqIQQgAEEBaiIADQALCyADIAVqQQFrIQMLIARBADYCACADQQFqIQELIAcgATYCCAu2AgICfQZ/IAAoAggiA0UEQEP//39/DwsgACgCBCEFIANBAXEhBgJAIANBAUYEQEEAIQND//9/fyEBDAELIAVBxABqIQAgA0F+cSEHQQAhA0P//39/IQEDQCAAQShrKAIAIABBJGsoAgAiBCgCCEEBa0F4cWpBCGogBCgCqAERCwAhAiAAKAIAIQQgAEEEaygCACEIIABByABqIQAgASABIAIgASACXRsgAiACXBsiAiACIAggBCgCCEEBa0F4cWpBCGogBCgCqAERCwAiASABIAJeGyABIAFcGyEBIAcgA0ECaiIDRw0ACwsgBgRAIAUgA0EkbGoiA0EgaigCACEAIAEgASADQRxqKAIAIAAoAghBAWtBeHFqQQhqIAAoAqgBEQsAIgIgASACXRsgAiACXBshAQsgAQu2AgIDfQZ/IAAoAggiBEUEQEP//39/DwsgACgCBCEGIARBAXEhBwJAIARBAUYEQEEAIQRD//9/fyEBDAELIAZBxABqIQAgBEF+cSEIQQAhBEP//39/IQEDQCAAQShrKAIAIABBJGsoAgAiBSgCCEEBa0F4cWpBCGogBSgCrAERCwAhAiAAKAIAIQUgAEEEaygCACEJIABByABqIQAgCSAFKAII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AkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgACfyAAKAIMIAFNBEAgACACNgIAIAQgBTYCAEEADAELIAAoAgggAUHUAWxqIgEpAighBiABQTBqKAIAIQEgACACNgIAIANBCGoiAiABNgIAIAQgBTYCACADIAY3AwBBGEEEEJEOIgBFDQQgAEEANgIIIABCgYCAgBA3AgAgACADKQMANwIMIABBFGogAigCADYCACAAQQhqCyEAIANBEGokACAADwsQgw8LAAsQhA8AC0EEQRhB+MrEACgCACIAQcwIIAAbEQAAAAv4AQIDfwZ9AkAgASgCCEUEQAwBCyABKAIEIgNBACACKgIIIgYgAyoCGF8bQQAgAioCBCIHIAMqAhRfG0EAIAIqAgAiCCADKgIQXxtBACACKgIUIgkgAyoCCGAbQQAgAioCECIKIAMqAgRgG0EAIAIqAgwiCyADKgIAYBshBSADKAI8Qf////8DcUUNACADKgIgIAtfIAMqAiQgCl9xIAMqAiggCV9xIAMqAjAgCGBxIAMqAjQgB2BxIAMqAjggBmBxIQQgA0EgaiEDCyAAIAU2ApABIAAgATYCiAEgACACNgKMASAAIAQ2AoQBIAAgAzYCBCAAQQA2AgALqwIBAn0CQAJAAkAgASgCCEUNACABKAIEIgEoAjxB/////wNxIAEoAhxB/////wNxag4CAAECCyAAQv////v///+/fzcCECAA/Qz//39///9/f///f3///3///QsCAA8LIAAgASkCADcCACAAIAEpAhA3AgwgAEEIaiABQQhqKAIANgIAIABBFGogAUEYaigCADYCAA8LIAAgASoCGCICIAEqAjgiAyACIANgGzgCFCAAIAEqAhQiAiABKgI0IgMgAiADYBs4AhAgACABKgIQIgIgASoCMCIDIAIgA2AbOAIMIAAgASoCCCICIAEqAigiAyACIANfGzgCCCAAIAEqAgQiAiABKgIkIgMgAiADXxs4AgQgACABKgIAIgIgASoCICIDIAIgA18bOAIAC/wBAgN/AX4jAEEQayIEJAACQAJAAkAgAARAIABBCGsiBSgCAEEBaiEDIAUgAzYCACADRQ0BIAAoAgAiA0F/Rg0CIAAgA0EBajYCACAEIAU2AgwgBCAANgIIIAQgAEEIaiIDNgIEIAJBBU0EQCADIAG9IganIAZCIIin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AWohASADIAE2AgAgAUUNASAAKAIAIgFBf0YNAiAAIAFBAWo2AgAgACgCBCIFQZABaigCACEGIAUpAogBIQcgACABNgIAIAJBCGoiASAGNgIAIAMgBDYCACACIAc3AwBBGEEEEJEOIgBFDQMgAEEANgIIIABCgYCAgBA3AgAgACACKQMANwIMIABBFGogASgCADYCACACQRBqJAAgAEEIag8LEIMPCwALEIQPAAtBBEEYQfjKxAAoAgAiAEHMCCAAGxEAAAAL6wECBn8BfiMAQRBrIgIkAAJAAkACQCAABEAgAEEIayIDKAIAIgRBAWohASADIAE2AgAgAUUNASAAKAIAIgFBf0YNAiAAIAFBAWo2AgAgACgCBCIFQZwBaigCACEGIAUpApQBIQcgACABNgIAIAJBCGoiASAGNgIAIAMgBDYCACACIAc3AwBBGEEEEJEOIgBFDQMgAEEANgIIIABCgYCAgBA3AgAgACACKQMANwIMIABBFGogASgCADYCACACQRBqJAAgAEEIag8LEIMPCwALEIQPAAtBBEEYQfjKxAAoAgAiAEHMCCAAGxEAAAAL2AECAX8BfSAAKgIAIQMgASgCACICKAIIIQEgAigCACABa0EDTQRAIAIgAUEEQQFBARDWBiACKAIIIQELIAIoAgQgAWogAzgAACACIAFBBGoiATYCCCAAKgIEIQMgAigCACABa0EDTQRAIAIgAUEEQQFBARDWBiACKAIIIQELIAIoAgQgAWogAzgAACACIAFBBGoiATYCCCAAKgIIIQMgAigCACABa0EDTQRAIAIgAUEEQQFBARDWBiACKAIIIQELIAIgAUEEajYCCCACKAIEIAFqIAM4AABBAAvBAQIFfwF+IwBBIGsiAiQAQQQgACgCACIFQQF0IgQgBEEETRsiBK1CDH4iB0IgiEIAUgRAQQBBACABENcNAAsCQCAHpyIGQfz///8HTQR/IAIgBQR/IAIgBUEMbDYCHCACIAAoAgQ2AhRBBAVBAAs2AhggAkEIakEEIAYgAkEUahDiCSACKAIIQQFHDQEgAigCECEDIAIoAgwFQQALIAMgARDXDQALIAIoAgwhASAAIAQ2AgAgACABNgIEIAJBIGokAAvBAQIFfwF+IwBBIGsiAiQAQQQgACgCACIFQQF0IgQgBEEETRsiBK1CGH4iB0IgiEIAUgRA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ACADQQxqIQIgAEEARyEEAkACQEGAAkHAABCRDiIABEAgAEEAOgDIASAAQoGAgIAQNwPAASAAQQE6AJwBIABCBDcClAEgAEIANwKMASAAQoCAgIDAADcChAEgAEEAOgCAASAAQgA3A0AgAEIANwMAQYACQcAAEJEOIgFFDQIgAUEAOgDIASABQoGAgIAQNwPAASABQQE6AJwBIAFCBDcClAEgAUIANwKMASABQoCAgIDAADcChAEgAUEAOgCAASABQgA3A0AgAUIANwMAIAIgBDoAICACIAE2AhwgAkEBNgIYIAIgADYCFCACQQE2AhAgAiABNgIMIAJBATYCCCACIAA2AgQgAkEBNgIADAELDAELQTBBBBCRDiIARQRAQQRBMEH4ysQAKAIAIgBBzAggABsRAAAACyAAQQA2AgggAEKBgICAEDcCACAAIAP9AAIM/QsCDCAAQRxqIANBHGr9AAIA/QsCACAAQSxqIANBLGooAgA2AgAgA0EwaiQAIABBCGoPC0HAAEGAAkH4ysQAKAIAIgBBzAggABsRAAAAC5ABAQd9IAIqAgghBCACKgIEIQUgAioCACEGIAEqAgghByABKgIEIQggASoCACEJIAEqAgwhCkEQQQQQkQ4iAUUEQEEEQRBB+MrEACgCACIAQcwIIAAbEQAAAAsgASAKOAIMIAEgByAElDgCCCABIAggBZQ4AgQgASAJIAaUOAIAIABBtNjDADYCBCAAIAE2AgALgAECAX8BfSMAQSBrIgIkACABKgIIIgNDAAAAAGBFBEAgAkEANgIYIAJBATYCDCACQejgwgA2AgggAkIENwIQIAJBCGpBoITEABC5DQALIABBADYCCCAAQgA3AgAgACADIAEqAgAiAyADlCABKgIEIgMgA5SSkZI4AgwgAkEgaiQAC8oGAgd/A3sjAEHQBmsiAiQAIwBBkAFrIgAkACACQfwCaiEEIwBBIGsiAyQAIANBADYCGCADQQhqQRBBgAwgA0EUahDiCSADKAIIQQFGBEAgAygCDCADKAIQQcCLwgAQ1w0AC/0MAAAAAAEAAAACAAAAAwAAACEIQQQhBSADKAIMIgYhAQNAIAFBADYCACABQYAJakEANgIAIAFBgAZqQQA2AgAgAUGAA2pBADYCACABQYQJaiAI/QwDAAAAAwAAAAMAAAADAAAA/TgiCf0MAQAA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QQEhBEHWrcQAQdetxAAgCUEASCIAG0HWrcQAQQEgABsgChshCCAJQR92IApyIQcgBkEERwRAIAJBAzYCmAggAkHbrcQANgKUCCACQQI7AZAIIAJBkAhqDAMLQQIhBCACQQI7AZAIIAVFBEBBASEEIAJBATYCmAggAkHercQANgKUCCACQZAIagwDCyACIAU2AqAIIAJBADsBnAggAkECNgKYCCACQa2txAA2ApQIIAJBkAhqDAILQdatxABBASAJQQBIIgAbIQNB1q3EAEHXrcQAIAAbIQggCUEfdiEEIAJBkAhqIgcgAkHQCGogAkEQaiAGQQR2QRVqIgZBgIB+QQAgBWsgBcFBAEgbIgAQnwIgAMEhAAJAIAIoApAIBEAgAkHICGogB0EIaigCADYCACACIAIpApAINwPACAwBCyACQcAIaiACQdAIaiACQRBqIAYgABA5CyAIIAMgChshCCAEIApyIQcgACACLgHICCIASARAIAJBCGogAigCwAggAigCxAggACAFIAJBkAhqELUFIAIoAgwhBCACKAIIDAILQQIhBCACQQI7AZAIIAVFBEBBASEEIAJBATYCmAggAkHercQANgKUCCACQZAIagwCCyACIAU2AqAIIAJBADsBnAggAkECNgKYCCACQa2txAA2ApQIIAJBkAhqDAELIAJBAzYCmAggAkHYrcQANgKUCCACQQI7AZAIQQEhCEEAIQdBASEEIAJBkAhqCyEAIAIgBDYCzAggAiAANgLICCACIAc2AsQIIAIgCDYCwAggASACQcAIahCvAyEAIAJB8AhqJAAgAAtpAQR+IAEoAgAgAkFsbGoiAUEUaykCACAAKAIAKAIAKQMAhSIDQiCIIgQgAUEIazUCAEK307CFDIUiBX4gAUEMazUCAELdofHLDIUiBiADQv////8PgyIDfoUgAyAFfiAEIAZ+hUIgiYULbwEEfiABKAIAIAJBBHRrIgFBDGspAABCl5Kcqtu2tcI/hSIDQiCIIgUgAUEQaykAACAAKAIAKAIAKQMAQjSJhSIEQiCIIgZ+IANC/////w+DIgMgBEL/////D4MiBH6FIAMgBn4gBCAFfoVCIImFC24BB30gAEICNwIQIAAgASoCACIEIAIqAgAiBZQgASoCBCIGIAIqAgQiB5SSIAEqAggiCCACKgIIIgmUkiIDQwAAAABf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fwJ+IwBBIGsiAiQAIAJBCGogACABKAJgEQAAIAJBEGogAigCCCIAIAIoAgwoAgwRAAAgAikDGCEDIAIpAxAhBCACQSBqJAAgAEEAIARCj9iZz4j1zJ4HhSADQo34tqK32v+FyACFhFAbC2sCAX8CfiMAQSBrIgIkACACQQhqIAAgASgCYBEAACACQRBqIAIoAggiACACKAIMKAIMEQAAIAIpAxghAyACKQMQIQQgAkEgaiQAIABBACAEQuadteiA48+HMYUgA0Lw4py6utTs2yaFhFAbC2sCAX8CfiMAQSBrIgIkACACQQhqIAAgASgCZBEAACACQRBqIAIoAggiACACKAIMKAIMEQAAIAIpAxghAyACKQMQIQQgAkEgaiQAIABBACAEQuadteiA48+HMYUgA0Lw4py6utTs2yaFhFAbC20CAX8CfiMAQSBrIgIkACACQQhqIAAgASgCYBEAACACQRBqIAIoAggiACACKAIMKAIMEQAAIAIpAxghAyACKQMQIQQgAkEgaiQAIABBACAEQt6Fisa2mpP80ACFIANChcGXiNPx7PrkAIWEUBsLbQIBfwJ+IwBBIGsiAiQAIAJBCGogACABKAJgEQAAIAJBEGogAigCCCIAIAIoAgwoAgwRAAAgAikDGCEDIAIpAxAhBCACQSBqJAAgAEEAIARCr6ns6fSs26rgAIUgA0LLr+Dt64uH8Kt/hYRQGwtsAgF/An4jAEEgayICJAAgAkEIaiAAIAEoAmARAAAgAkEQaiACKAIIIgAgAigCDCgCDBEAACACKQMYIQMgAikDECEEIAJBIGokACAAQQAgBELO24DRiLeklRyFIANC5vTWnZL/juehf4WEUBsLbAIBfwJ+IwBBIGsiAiQAIAJBCGogACABKAJkEQAAIAJBEGogAigCCCIAIAIoAgwoAgwRAAAgAikDGCEDIAIpAxAhBCACQSBqJAAgAEEAIARCztuA0Yi3pJUchSADQub01p2S/47noX+FhFAbC2sCAX8CfiMAQSBrIgIkACACQQhqIAAgASgCYBEAACACQRBqIAIoAggiACACKAIMKAIMEQAAIAIpAxghAyACKQMQIQQgAkEgaiQAIABBACAEQpTFqNTN/JyWQ4UgA0L2+IbMtIfkyQKFhFAbC2wCAX8CfiMAQSBrIgIkACACQQhqIAAgASgCYBEAACAC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ATgCNCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATgCOCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiASgCACIDQQFqIQIgASACNgIAIAJFDQEgACgCAA0CIABBAjYCICABIAM2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATYCNCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATYCOCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATgCBCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATgCECACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATgCJCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATgCLCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATYCMCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATYCPCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATYCQCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATgCICACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATgCCCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATgCDCACIAQ2AgAPCxCDDwsACxCEDwALlAEBAXsgACABKQIANwIQIAAgBP0AAgD9CwIAIABBGGogAUEIaigCADYCACAA/QwAAAAAAAAAAAAAAAAAAAAA/QwAAIA/AACAPwAAgD8AAIA/IAMgAv0T/VYCAAEgA/1dAgT9DQABAgMEBQYHEBESExQVFhciBf3nASAF/QwAAAAAAAAAAAAAAAAAAAAA/UH9Uv0LAhwLawAgAP0MAAAAAAAAAAAAAAAAAAAAAP0LAhwgACAB/QACAP0LAgAgAEEsav0MAAAAAAAAAAAAAAAAAAAAAP0LAgAgAEE8akEANgIAIABBGGogAUEYaigCADYCACAAQRBqIAFBEGopAgA3AgALaAEBfyMAQcABayIEJAAgBP0MAAAAAAAAAAAAAAAAAAAAAP0LBLABIAT9DAAAAAABAAAAAgAAAAMAAAD9CwQAIARBEGpBAEGgAfwLACAAIAEoAgQgASgCCCAEIAIgAxAyIARBwAFqJAALOgEBfyMAQSBrIgAkACAAQQA2AhggAEEBNgIMIABB5IXEADYCCCAAQgQ3AhAgAEEIakHshcQAELkNAAs6AQF/IwBBIGsiACQAIABBADYCGCAAQQE2AgwgAEGgj8QANgIIIABCBDcCECAAQQhqQaiPxAAQuQ0AC0gBAX8gACgCACAAKAIIIgNrIAJJBEAgACADIAIQsQggACgCCCEDCyACBEAgACgCBCADaiABIAL8CgAACyAAIAIgA2o2AghBAAtVACABKAIAIAIoAgAgAygCACAEKAIAIAUoAgAQDyEBQezKxAAoAgAhAkHoysQAKAIAIQNB6MrEAEIANwIAIAAgAiABIANBAUYiARs2AgQgACABNgIAC0oBAX8jAEEgayIDJAAgA0EEaiABIAIQ2gMgACAD/QACBP0LAgAgAEEAIAMoAhggAygCFEEBcSIBGzYCFCAAIAE2AhAgA0EgaiQAC0UAIAAoAgggAUsEQCAAKAIEIAFBJGxqIgEoAiAhACACIAEgASgCHCAAKAIIQQFrQXhxakEIaiAAQQAgACADKAIQEQoACwsuAQF/AkAgABBDIgFFDQAgAUEIay0ABEEDcUUNACAARQ0AIAFBACAA/AsACyABC08BAn8gACgCBCECIAAoAgAhAwJAIAAoAggiAC0AAEUNACADQbyxxABBBCACKAIMEQUARQ0AQQEPCyAAIAFBCkY6AAAgAyABIAIoAhARAwALTAEBfyMAQRBrIgIkACACIAAoAgAiADYCDCABQfS7wQBB+rvBACAAQQRqQdS7wQBB/rvBACACQQxqQeS7wQAQiQkhACACQRBqJAAgAAtcAQF/QRxBBBCRDiIERQRAQQRBHEH4ysQAKAIAIgRBzAggBBsRAAAACyAEIAM4AhggBCACOAIUIAQgATgCECAEIAA4AgwgBEEANgIIIARCgYCAgBA3AgAgBEEIagtMAQF/IwBBEGsiAiQAIAIgACgCACIANgIMIAFBhOHBAEGK4cEAIABBBGpB5ODBAEGO4cEAIAJBDGpB9ODBABCJCSEAIAJBEGokACAAC+kCAQd/IwBBEGsiBSQAIAEgASgCcEEgcjYCcCAFQQhqIQYjAEEQayIEJAAgAUFAayIBKAIAIgIoAgQhAyACQX8gAyADQQFGGzYCBAJAAkAgA0EBRw0AIAJBATYCBCACKAIAQQFHDQAgASgCACECDAELIARBCGogASgCACABKAIEIgIoAghBAWtBeHFqQQhqIAIoAowBEQAAIAQgBCgCCCAEKAIMEIoJIAQoAgQhByAEKAIAIQIgASgCACIIKAIAIQMgCCADQQFrNgIAIANBAUYEQCABEIoKCyABIAc2AgQgASACNgIACyACQX8gAigCBCIDIANBAUYiAxs2AgQCQCADBEAgAkEBNgIEIAIoAgBBAUYNAQtBwOLDABDyDgALIAYgASgCBCICNgIEIAYgASgCACACKAIIQQFrQXhxakEIajYCACAEQRBqJAAgBSgCDCEBIAAgBSgCCDYCACAAIAE2AgQgBUEQaiQAC0wBAX8jAEEQayICJAAgAiAAKAIAIgA2AgwgAUGg28IAQabbwgAgAEEEakHU2cIAQarbwgAgAkEMakGQ28IAEIkJIQAgAkEQaiQAIAALSgEBfwJAIAAoAgAiBEUNACAEIAEgAiADIAAoAgQoAhQREQANAEEADwsgACgCCCIERQRAQQEPCyAEIAEgAiADIAAoAgwoAhgREQALRgEBfyMAQTBrIgUkACAFQQhqIAEgAiADIAQQdAJAIAUoAhxBBEcEQCAAIAX9AAII/QsCAAwBCyAAQQI6AAwLIAVBMGokAAtGAQF/IAAoAgAiACgCCCICIAAoAgBGBEAgACACQQFBAUEBENYGIAAoAgghAgsgACACQQFqNgIIIAAoAgQgAmogAToAAEEAC1AAIAEoAgAgAigCACADKAIAIAQoAgAQDiEBQezKxAAoAgAhAkHoysQAKAIAIQNB6MrEAEIANwIAIAAgAiABIANBAUYiARs2AgQgACABNgIACzwBAX8jAEEgayICJAAgAUEBQQFBACAAKQMAIAJBDGoiABDxBSIBIABqQRQgAWsQ2QIhACACQSBqJAAgAAs9AQF/AkAgASAAKAKMA08NACAAKAKIAyABQYADbGoiACgCAEEBRw0AIABBEGpBACAAKAIEIAJGGyEDCyADCzsBAX8CQCABIAAoAhBPDQAgACgCDCABQbABbGoiACgCAEEBRw0AIABBEGpBACAAKAIEIAJGGyEDCyADC0ABAX1DAAAAACABKgIAIgMgA5QgASoCBCIDIAOUkiABKgIIIgMgA5SSkSAAKgIAkyIDIANDAAAAAF0bIAMgAhsLPwEBfyMAQSBrIgIkACACQQhqIAAoAgAgAkEWahDMBSABQQFBAUEAIAIoAgggAigCDBDZAiEAIAJBIGokACAAC5ENAwh/BX4BfCABKAIIIgdBgICAAXEhBSAAKwMAIQ8gB0GAgICAAXFFBEAgBUEARyEEIwBBgAFrIgMkACAPvSEKAn9BAyAPmUQAAAAAAADwf2ENABpBAiAKQoCAgICAgID4/wCDIgtCgICAgICAgPj/AFENABogCkL/////////B4MiDkKAgICAgICACIQgCkIBhkL+////////D4MgCkI0iKdB/w9xIgYbIgxCAYMhDSALUARAQQQgDlANARogBkGzCGshBkIBIQsgDVAMAQtCgICAgICAgCAgDEIBhiAMQoCAgICAgIAIUSIAGyEMQgJCASAAGyELQct3Qcx3IAAbIAZqIQYgDVALIQAgAyAGOwF4IAMgCzcDcCADQgE3A2ggAyAMNwNgIAMgADoAegJ/AkACQAJAAkACQCAAQQFNBEAgA0EgaiIGIANB4ABqIANBD2oQjQFB1q3EAEEBIApCAFMiABshBUHWrcQAQdetxAAgABshByAKQj+IpyEAIAMoAiBFDQEgA0HYAGogBkEIaigCADYCACADIAMpAiA3A1AMAgsgAEECRg0DQQEhBkHWrcQAQdetxAAgCkIAUyIHG0HWrcQAQQEgBxsgBBshBSAKQj+IpyAEciEHIABB/wFxQQRGDQIgA0EDNgIoIANB263EADYCJCADQQI7ASAgA0EgagwFCyADQdAAaiADQeAAaiADQQ9qEDMLIAcgBSAEGyEFIAAgBHIhByADIAMoAlAgAygCVCADLwFYQQAgA0EgahC1BSADKAIEIQYgAygCAAwDCyADQQI7ASAMAQsgA0EDNgIoIANB2K3EADYCJCADQQI7ASBBASEFQQAhB0EBIQYgA0EgagwBCyADQQE2AiggA0HercQANgIkIANBIGoLIQAgAyAGNgJcIAMgADYCWCADIAc2AlQgAyAFNgJQIAEgA0HQAGoQrwMhACADQYABaiQAIAAPCyAFQQBHIQggAS8BDiEHIwBB8AhrIgIkACAPvSEKAn9BAyAPmUQAAAAAAADwf2ENABpBAiAKQoCAgICAgID4/wCDIgtCgICAgICAgPj/AFENABogCkL/////////B4MiDkKAgICAgICACIQgCkIBhkL+////////D4MgCkI0iKdB/w9xIgQbIgxCAYMhDSALUARAQQQgDlANARogBEGzCGshBEIBIQsgDVAMAQtCgICAgICAgCAgDEIBhiAMQoCAgICAgIAIUSIAGyEMQgJCASAAGyELQct3Qcx3IAAbIARqIQQgDVALIQAgAiAEOwHoCCACIAs3A+AIIAJCATcD2AggAiAMNwPQCCACIAA6AOoIAn8CQAJAIABBAU0EQEF0QQUgBMEiAEEASBsgAGwiBUHA/QBJDQFB5a3EAEElQYyuxAAQ1gwACyAAQQJGDQFBASEEQdatxABB163EACAKQgBTIgUbQdatxABBASAFGyAIGyEGIApCP4inIAhyIQUgAEH/AXFBBEcEQCACQQM2ApgIIAJB263EADYClAggAkECOwGQCCACQZAIagwDC0ECIQQgAkECOwGQCCAHRQRAQQEhBCACQQE2ApgIIAJB3q3EADYClAggAkGQCGoMAwsgAiAHNgKgCCAC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IAFBAnRBBBDoDgsgACgCFCIBBEAgACgCGCABQQN0QQQQ6A4LCz8BAX8gACgCACEAIAEoAggiAkGAgIAQcUUEQCACQYCAgCBxRQRAIAAgARC8DA8LIAAgARCUCg8LIAAgARCTCgs2AQF/IAAoAgAiAQRAIAAoAgQgAUECdEEEEOgOCyAAKAIMIgEEQCAAKAIQIAFBAnRBBBDoDgsLPAEBfUMAAAAAIAAqAgAgASoCAJQgACoCBCABKgIElJIgACoCCCABKgIIlJIiAyADQwAAAABdGyADIAIbCzgBAX0gAEEANgIIIABCADcCACAAIAEqAgAiAiAClCABKgIEIgIgApSSIAEqAggiAiAClJKROAIMCz0BAn0gACABKgIEIgI4AhQgACACOAIMIAAgASoCAIsiAzgCECAAIAKMIgI4AgggACACOAIAIAAgA4w4AgQLxQMBA38gACgCACECIAEoAggiAEGAgIAQcUUEQCAAQYCAgCBxRQRAIwBBEGsiACQAQQMhAyACLQAAIgIhBCACQQpPBEAgACACIAJB5ABuIgRB5ABsa0H/AXFBAXQiA0HWscQAai0AADoADyAAIANB1bHEAGotAAA6AA5BASEDCyAERSACQQBHcUUEQCADQQFrIgMgAEENamogBEEBdEH+AXFB1rHEAGotAAA6AAALIAFBAUEBQQAgAEENaiADakEDIANrENkCIQEgAEEQaiQAIAEPCyMAQYABayIEJAAgAi0AACEAQQAhAgNAIAIgBGpB/wBqIABBD3EiA0EwciADQTdqIANBCkkbOgAAIAJBAWshAiAAIgNBBHYhACADQQ9LDQALIAFBAUHTscQAQQIgAiAEakGAAWpBACACaxDZAiEAIARBgAFqJAAgAA8LIwBBgAFrIgQkACACLQAAIQBBACECA0AgAiAEakH/AGogAEEPcSIDQTByIANB1wBqIANBCkkbOgAAIAJBAWshAiAAIgNBBHYhACADQQ9LDQALIAFBAUHTscQAQQIgAiAEakGAAWpBACACaxDZAiEAIARBgAFqJAAgAAvRAwEGfyMAQRBrIgMkACADIAA2AgwgAEEMaiEEIANBDGohBSMAQSBrIgAkAAJAIAEoAgAiBkHQicQAQQggASgCBCgCDCIHEQUABEBBASECDAELAkAgAS0ACkGAAXFFBEBBASECIAZBzbHEAEEB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RQRAQQRBHEH4ysQAKAIAIgBBzAggABsRAAAACyAAQoGAgIAQNwIAIAD9DAAAAAAAAAAAAAAAAAAAAAD9CwIIIABBgICA/AM2AhggAEEIagsvAQF9IAEqAgAiAiAClCABKgIEIgIgApSSIAEqAggiAiAClJIgACoCACICIAKUXwswAQF/IwBBIGsiAyQAIANBCGogACABIAJBABCaASADKAIIIQAgA0EgaiQAIABBBEcLMAEBfyMAQSBrIgMkACADQQhqIAAgASACQQEQ9AEgAygCCCEAIANBIGokACAAQQRHCzABAX8jAEEgayIDJAAgA0EIaiAAIAEgAkEBEKoCIAMoAgghACADQSBqJAAgAEEERwswAQF/IwBBEGsiAyQAIANBCGogACABIAJBARC1ASADKAIIIQAgA0EQaiQAIABBAUYLMAEBfyMAQSBrIgMkACADQQhqIAAgASACQQEQiwIgAygCCCEAIANBIGokACAAQQRHCzABAX8jAEEgayIDJAAgA0EIaiAAIAEgAkEBEKsCIAMoAgghACADQSBqJAAgAEEERwswAQF/IwBBIGsiAyQAIANBCGogACABIAJBARDbASADKAIIIQAgA0EgaiQAIABBBEcLMAEBfyMAQSBrIgMkACADQQhqIAAgASACQQEQvAEgAygCCCEAIANBIGokACAAQQRHCzABAX8jAEEgayIDJAAgA0EIaiAAIAEgAkEBEO4BIAMoAgghACADQSBqJAAgAEEERwswAQF/IwBBIGsiAyQAIANBCGogACABIAJBARCMAiADKAIIIQAgA0EgaiQAIABBBEcLMAEBfyMAQSBrIgMkACADQQhqIAAgASACQQEQpgIgAygCCCEAIANBIGokACAAQQRHCzABAX8jAEEgayIDJAAgA0EIaiAAIAEgAkEBEJsCIAMoAgghACADQSBqJAAgAEEERwswAQF/IwBBEGsiAyQAIANBCGogACABIAJBARCKASADKAIIIQAgA0EQaiQAIABBAUYLMAEBfyMAQSBrIgMkACADQQhqIAAgASACQQEQmAEgAygCCCEAIANBIGokACAAQQRHCzABAX8jAEEQayIDJAAgA0EIaiAAIAEgAkEBEJ4BIAMoAgghACADQRBqJAAgAEEBRgtIAQF/IAEoAgAhAkEEQQQQkQ4iAUUEQEEEQQRB+MrEACgCACIA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IQAgAkEQaiQAIAALJwEBfyMAQRBrIgIkACACIAAgAUEBECwgAi0ADCEAIAJBEGokACAACycBAX8jAEEQayICJAAgAiAAIAFBARApIAItAAwhACACQRBqJAAgAAsoAQF/IwBBEGsiAiQAIAIgACABQQEQ/wIgAi0ADCEAIAJBEGokACAACygBAX8jAEEQayICJAAgAiAAIAFBARCJASACLQAMIQAgAkEQaiQAIAALJwEBfyMAQRBrIgIkACACIAAgAUEBECggAi0ADCEAIAJBEGokACAACycBAn0gACoCACIBIAAqAgQiAiABIAJfGyIBIAAqAggiAiABIAJfGwsnAQJ9IAAqAmQiASAAKgJoIgIgASACXxsiASAAKgJsIgIgASACXxsLKwAgAEH/AXEiAEHAAE0EQCAAQZirwQBqLQAADwsgAEHBAEHQ4sMAEIULAAtGACAA/QwAAAAAAAAAAAAAAAAAAAAA/QsCECAA/QwAAAAAAAAAAAAAAAAAAIA//QsCACAAQShqQQA2AgAgAEEgakIANwIACzMAIAEoAgAgACgCAC0AAEECdCIAQdDLwgBqKAIAIABBwMvCAGooAgAgASgCBCgCDBEFAAslACAARQRAQeDMwgBBMhCCDwALIAAgAiADIAQgBSABKAIQESAACyMAIABFBEBB4MzCAEEyEIIPAAsgACACIAMgBCABKAIQEQIACyMAIABFBEBB4MzCAEEyEIIPAAsgACACIAMgBCABKAIQEREACyMAIABFBEBB4MzCAEEyEIIPAAsgACACIAMgBCABKAIQER8ACyQAIABFBEBB4MzCAEEyEIIPAAsgACACIAMgBCABKAIQEaIBAAsjACAARQRAQeDMwgBBMhCCDwALIAAgAiADIAQgASgCEBE8AAsoAQF/IAAoAgAiAUGAgICAeHJBgICAgHhHBEAgACgCBCABQQEQ6A4LCyEAIABFBEBB4MzCAEEyEIIPAAsgACACIAMgASgCEBEBAAsdACABKAIABEAgAEHcjcQANgIEIAAgATYCAA8LAAsnAQF/IAAoAgAiAgRAIAEoAgAgAiAAKAIEIAEoAgQoAgwRBQAPCwALJAAgAC0AAEUEQCABQfCzxABBBRD7Ag8LIAFB9bPEAEEEEPsCCx8AIABFBEBB4MzCAEEyEIIPAAsgACACIAEoAhARAwALHwAgACAB/QACQP0LAgAgAEEQaiABQdAAaikCADcCAAsfACAAIAH9AAI0/QsCACAAQRBqIAFBxABqKQIANwIACykAIAAgAC0ABCABQS5GcjoABCAAKAIAIgAoAgAgASAAKAIEKAIQEQMACx0AIAAgAiABKAIsIAEoAjAgASgCOCABKAI8EIkDCxoBAX8gACgCACIBBEAgACgCBCABQQEQ6A4LC1IAIAAEQCAAIAFB+MrEACgCACIAQcwIIAAbEQAAAAsjAEEgayIAJAAgAEEANgIYIABBATYCDCAAQfSPxAA2AgggAEIENwIQIABBCGogAhC5DQALHQAgAEHEp8MANgIEIAAgATYCACAAIAEqAhg4AggLHQAgAEGYpMMANgIEIAAgATYCACAAIAEqAgw4AggLHQAgAEGEqMMANgIEIAAgATYCACAAIAEqAiQ4AggLHQAgAEH4t8MANgIEIAAgATYCACAAIAEqAgg4AggLHQAgAEHcu8MANgIEIAAgATYCACAAIAEqAgg4AggLHQAgAEHMtMMANgIEIAAgATYCACAAIAEqAmA4AggLHwAgAEEIakG8iMQAKQIANwIAIABBtIjEACkCADcCAAsfACAAQQhqQcyIxAApAgA3AgAgAEHEiMQAKQIANwIACxoAIABBADYCCCAAQZC9wQA2AgQgACABNgIACxoAIABBADYCCCAAQdi+wQA2AgQgACABNgIACxoAIABBADYCCCAAQeDhwQA2AgQgACABNgIACxoAIABBADYCCCAAQdz7wQA2AgQgACABNgIACxYAIABB2AFqIAAtAOUCIABBMGoQsAYLGAAgACgCACABKAIAIAIoAgAgAygCABAQCxcBAX8gABASIgE2AgQgACABQQBHNgIACxcBAX8gABATIgE2AgQgACABQQBHNgIACxcBAX8gABAUIgE2AgQgACABQQBHNgIACxcBAX8gABAVIgE2AgQgACABQQBHNgIACxwAIABBADYCECAAQgA3AgggAEKAgICAwAA3AgALGgAgAEEANgIIIABBmKTDADYCBCAAIAE2AgALrQUCFH0CfyABKgIYIQYgAAJ9QwAAgD8gAUEMaiIXKgIIIg8gASoCCCIQkyIKjCAKIBcqAgQiESABKgIEIhKTIgdDAAAAAF0iGBsiCyALlCAXKgIAIhMgASoCACIUkyIMjCAMIBgbIgggCJQg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IABBDGqtQoCAgIAwhDcDUCAAIABBCGqtQoCAgIAwhDcDSAsgACAAQcgAajYCOCAAQTBqIAQQuQ0ACxMAIABBxLrBADYCBCAAIAE2AgALEwAgAEHUusEANgIEIAAgATYCAAsTACAAQfS8wQA2AgQgACABNgIACxAAIABBATYCACAAIAE2AgQLEwAgAEG8vsEANgIEIAAgATYCAAsQACAAQQQ2AgAgACABNgIECxoAAn8gAUEJTwRAIAEgABCuBgwBCyAAEEMLCxAAIAAgATYCBCAAQQU2AgALEwAgAEGs38EANgIEIAAgATYCAAsTACAAQbzfwQA2AgQgACABNgIACxMAIABBzN/BADYCBCAAIAE2AgALEwAgAEHc38EANgIEIAAgATYCAAsTACAAQezfwQA2AgQgACABNgIACxMAIABBxOHBADYCBCAAIAE2AgALEAAgACABNgIEIABBBzYCAAsQACAAIAE2AgQgAEEGNgIACxMAIABBwPvBADYCBCAAIAE2AgALFgBB7MrEACAANgIAQejKxABBATYCAAsTACAAQfTVwgA2AgQgACABNgIACxMAIABBhNbCADYCBCAAIAE2AgALEwAgAEGU1sIANgIEIAAgATYCAAsTACAAQaTWwgA2AgQgACABNgIACxMAIABBtNbCADYCBCAAIAE2AgALEwAgAEHE1sIANgIEIAAgATYCAAsTACAAQdTWwgA2AgQgACABNgIACxMAIABB5NbCADYCBCAAIAE2AgALEwAgAEH01sIANgIEIAAgATYCAAsTACAAQYTXwgA2AgQgACABNgIACxMAIABBlNfCADYCBCAAIAE2AgALEwAgAEGk18IANgIEIAAgATYCAAsTACAAQbTXwgA2AgQgACABNgIACxMAIABBxNfCADYCBCAAIAE2AgALEwAgAEHU18IANgIEIAAgATYCAAsTACAAQeTXwgA2AgQgACABNgIACxMAIABB9NfCADYCBCAAIAE2AgALEwAgAEGE2MIANgIEIAAgATYCAAsTACAAQZTYwgA2AgQgACABNgIACxMAIABBpNjCADYCBCAAIAE2AgALEwAgAEG02MIANgIEIAAgATYCAAsTACAAQcTYwgA2AgQgACABNgIACxMAIABB1NjCADYCBCAAIAE2AgALEwAgAEHk2MIANgIEIAAgATYCAAsTACAAQfTYwgA2AgQgACABNgIACxMAIABBhNnCADYCBCAAIAE2AgALEwAgAEGU2cIANgIEIAAgATYCAAsRACABIAAoAgAgACgCBBD7AgsQACAAIAE2AgQgAEEDNgIACxAAIAAgATYCBCAAQQQ2AgALEAAgACABNgIEIABBAjYCAAsQACAAIAE2AgQgAEEBNgIACxAAIAAgATYCBCAAQQA2AgALKgAgAEL////39/////4ANwIQIAD9DP////7////+/////v///379CwIACxAAIABBADYCACAAIAE2AgQLEwAgAEHgo8MANgIEIAAgATYCAAsTACAAQfyjwwA2AgQgACABNgIACxAAIABBAjYCACAAIAE2AgQLEwAgAEGop8MANgIEIAAgATYCAAsTACAAQeinwwA2AgQgACABNgIACxAAIABBAzYCACAAIAE2AgQLEwAgAEGoqMMANgIEIAAgATYCAAsOACAAIAFBQGsgAhC7AwsQACAAQQo2AgAgACABNgIECxMAIABBsKvDADYCBCAAIAE2AgALEAAgAEEHNgIAIAAgATYCBAsTACAAQbCuwwA2AgQgACABNgIACxAAIABBBjYCACAAIAE2AgQLEwAgAEGwscMANgIEIAAgATYCAAsOACAAIAFBNGogAhC7AwsQACAAQQk2AgAgACABNgIECxAAIABBCzYCACAAIAE2AgQLEwAgAEGwtMMANgIEIAAgATYCAAsQACAAQQw2AgAgACABNgIECxMAIABB3LfDADYCBCAAIAE2AgALEAAgAEENNgIAIAAgATYCBAsTACAAQcC7wwA2AgQgACABNgIACyoAIABC////9/f////+ADcCECAA/Qz////+/////v////7///9+/QsCAAsqACAAQv////f3/////gA3AhAgAP0M/////v////7////+////fv0LAgALEAAgAEEINgIAIAAgATYCBAsQACAAQQU2AgAgACABNgIECxAAIABBDjYCACAAIAE2AgQLEwAgAEGwhMQANgIEIAAgATYCAAsQACAAQQ82AgAgACABNgIECxMAIABBzITEADYCBCAAIAE2AgALEAAgAEEQNgIAIAAgATYCBAsTACAAQeiExAA2AgQgACABNgIACxAAIABBETYCACAAIAE2AgQLEwAgAEGEhcQANgIEIAAgATYCAAsQACAAQRI2AgAgACAB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bnQgYXQgaW5kZXgvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9jY2QvdG9pX2VudHJ5LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2R5bmFtaWNzL2pvaW50L211bHRpYm9keV9qb2ludC9tdWx0aWJvZHkucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvZHluYW1pY3Mvc29sdmVyL3NvbHZlcl9ib2R5LnJzAGJ1aWxkcy9yYXBpZXIzZC1zaW1kLy4uLy4uL3NyYy9keW5hbWljcy9yaWdpZF9ib2R5LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLnJ1c3R1cC90b29sY2hhaW5zL3N0YWJsZS1hYXJjaDY0LWFwcGxlLWRhcndpbi9saWIvcnVzdGxpYi9zcmMvcnVzdC9saWJyYXJ5L3N0ZC9zcmMvc3luYy9tcG1jL2FycmF5LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9uYWxnZWJyYS0wLjM0LjEvc3JjL2Jhc2UvbWF0cml4LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9uYWxnZWJyYS0wLjM0LjEvc3JjL2Jhc2UvbWluX21heC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUtYWFyY2g2NC1hcHBsZS1kYXJ3aW4vbGliL3J1c3RsaWIvc3JjL3J1c3QvbGlicmFyeS9hbGxvYy9zcmMvYm9ycm93LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9uYWxnZWJyYS0wLjM0LjEvc3JjL2Jhc2UvbWF0cml4X3ZpZXcucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL25hbGdlYnJhLTAuMzQuMS9zcmMvYmFzZS9jb25zdHJ1Y3Rpb25fdmlldy5ycwBsaWJyYXJ5L2NvcmUvc3JjL251bS9mbHQyZGVjL3N0cmF0ZWd5L2dyaXN1LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9uYWxnZWJyYS0wLjM0LjEvc3JjL2xpbmFsZy9sdS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUtYWFyY2g2NC1hcHBsZS1kYXJ3aW4vbGliL3J1c3RsaWIvc3JjL3J1c3QvbGlicmFyeS9zdGQvc3JjL3N5bmMvbXBtYy9jb250ZXh0LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcGFydGl0aW9uaW5nL2J2aC9idmhfdHJhdmVyc2VfYnZ0dC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUtYWFyY2g2NC1hcHBsZS1kYXJ3aW4vbGliL3J1c3RsaWIvc3JjL3J1c3QvbGlicmFyeS9zdGQvc3JjL3N5bmMvbXBtYy9saXN0LnJzAGxpYnJhcnkvY29yZS9zcmMvc2xpY2Uvc29ydC9zaGFyZWQvc21hbGxzb3J0LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcGFydGl0aW9uaW5nL2J2aC9idmhfaW5zZXJ0LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdXRpbHMvcG9pbnRfY2xvdWRfc3VwcG9ydF9wb2ludC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9qb2ludC9tdWx0aWJvZHlfam9pbnQvdW5pdF9tdWx0aWJvZHlfam9pbnQucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvZHluYW1pY3Mvam9pbnQvbXVsdGlib2R5X2pvaW50L211bHRpYm9keV9qb2ludC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9zb2x2ZXIvam9pbnRfY29uc3RyYWludC9qb2ludF92ZWxvY2l0eV9jb25zdHJhaW50LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2R5bmFtaWNzL3NvbHZlci9qb2ludF9jb25zdHJhaW50L2dlbmVyaWNfam9pbnRfY29uc3RyYWludC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9zb2x2ZXIvY29udGFjdF9jb25zdHJhaW50L2dlbmVyaWNfY29udGFjdF9jb25zdHJhaW50LnJzAGxpYnJhcnkvc3RkL3NyYy90aHJlYWQvY3VycmVudC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L3BvaW50L3BvaW50X3NlZ21lbnQucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9zaGFwZS9zZWdtZW50LnJzAGxpYnJhcnkvYWxsb2Mvc3JjL2ZtdC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3BhcnRpdGlvbmluZy9idmgvYnZoX3JlZml0LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2R5bmFtaWNzL3JpZ2lkX2JvZHlfc2V0LnJzAGJ1aWxkcy9yYXBpZXIzZC1zaW1kLy4uLy4uL3NyYy9keW5hbWljcy9yaWdpZF9ib2R5X3NldC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9qb2ludC9tdWx0aWJvZHlfam9pbnQvbXVsdGlib2R5X2pvaW50X3NldC5ycwBidWlsZHMvcmFwaWVyM2Qtc2ltZC8uLi8uLi9zcmMvZHluYW1pY3MvbXVsdGlib2R5X2pvaW50X3NldC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9qb2ludC9pbXB1bHNlX2pvaW50L2ltcHVsc2Vfam9pbnRfc2V0LnJzAGJ1aWxkcy9yYXBpZXIzZC1zaW1kLy4uLy4uL3NyYy9keW5hbWljcy9pbXB1bHNlX2pvaW50X3NldC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9zb2x2ZXIvam9pbnRfY29uc3RyYWludC9qb2ludF9jb25zdHJhaW50c19zZXQucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvZHluYW1pY3Mvc29sdmVyL2NvbnRhY3RfY29uc3RyYWludC9jb250YWN0X2NvbnN0cmFpbnRzX3NldC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9nZW9tZXRyeS9jb2xsaWRlcl9zZXQucnMAYnVpbGRzL3JhcGllcjNkLXNpbWQvLi4vLi4vc3JjL2dlb21ldHJ5L2NvbGxpZGVyX3NldC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3RyYW5zZm9ybWF0aW9uL2NvbnZleF9odWxsMy90cmlhbmdsZV9mYWNldC5ycwBsaWJyYXJ5L2NvcmUvc3JjL251bS9kaXlfZmxvYXQucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvZHluYW1pY3MvcmlnaWRfYm9keV9jb21wb25lbnRzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2RhdGEvbW9kaWZpZWRfb2JqZWN0cy5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9zb2x2ZXIvaW50ZXJhY3Rpb25fZ3JvdXBzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9uYWxnZWJyYS0wLjM0LjEvc3JjL2Jhc2Uvb3BzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9zZXJkZS0xLjAuMjE5L3NyYy9kZS9pbXBscy5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3RyYW5zZm9ybWF0aW9uL2NvbnZleF9odWxsX3V0aWxzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvYm91bmRpbmdfdm9sdW1lL2FhYmJfdXRpbHMucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy90cmFuc2Zvcm1hdGlvbi91dGlscy5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy91dGlscy5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2NvbnRhY3RfbWFuaWZvbGRzL2NvbnRhY3RfbWFuaWZvbGRzX3ZveGVsc192b3hlbHMucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9zaGFwZS92b3hlbHMvdm94ZWxzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi93ZWItdGltZS0xLjEuMC9zcmMvdGltZS9qcy5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL21hc3NfcHJvcGVydGllcy9tYXNzX3Byb3BlcnRpZXMucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvcGlwZWxpbmUvdXNlcl9jaGFuZ2VzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi93YXNtLWJpbmRnZW4tMC4yLjEwMC9zcmMvY29udmVydC9zbGljZXMucnMAL1VzZXJzL3NlYmNyb3pldC8ucnVzdHVwL3Rvb2xjaGFpbnMvc3RhYmxlLWFhcmNoNjQtYXBwbGUtZGFyd2luL2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvc3RkL3NyYy9zeXMvc3luYy9tdXRleC9ub190aHJlYWRzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9uYWxnZWJyYS0wLjM0LjEvc3JjL2Jhc2UvYmxhcy5ycwBsaWJyYXJ5L2FsbG9jL3NyYy9mZmkvY19zdHIucnMAL1VzZXJzL3NlYmNyb3pldC8ucnVzdHVwL3Rvb2xjaGFpbnMvc3RhYmxlLWFhcmNoNjQtYXBwbGUtZGFyd2luL2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvY29yZS9zcmMvaXRlci90cmFpdHMvaXRlcmF0b3IucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL25hbGdlYnJhLTAuMzQuMS9zcmMvYmFzZS9kZWZhdWx0X2FsbG9jYXRvci5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9zb2x2ZXIvdmVsb2NpdHlfc29sdmVyLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2R5bmFtaWNzL2NjZC9jY2Rfc29sdmVyLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdXRpbHMvY2VudGVyLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2NvbnRyb2wvY2hhcmFjdGVyX2NvbnRyb2xsZXIucnMAYnVpbGRzL3JhcGllcjNkLXNpbWQvLi4vLi4vc3JjL2NvbnRyb2wvY2hhcmFjdGVyX2NvbnRyb2xsZXIucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvY29udHJvbC9yYXlfY2FzdF92ZWhpY2xlX2NvbnRyb2xsZXIucnMAL1VzZXJzL3NlYmNyb3pldC8ucnVzdHVwL3Rvb2xjaGFpbnMvc3RhYmxlLWFhcmNoNjQtYXBwbGUtZGFyd2luL2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvc3RkL3NyYy9zeW5jL21wbWMvd2FrZXIucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9kZWZhdWx0X3F1ZXJ5X2Rpc3BhdGNoZXIucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvZHluYW1pY3MvaXNsYW5kX21hbmFnZXIucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9zaGFwZS9jeWxpbmRlci5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9zb2x2ZXIvam9pbnRfY29uc3RyYWludC9nZW5lcmljX2pvaW50X2NvbnN0cmFpbnRfYnVpbGRlci5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9zb2x2ZXIvam9pbnRfY29uc3RyYWludC9qb2ludF9jb25zdHJhaW50X2J1aWxkZXIucnMAYnVpbGRzL3JhcGllcjNkLXNpbWQvLi4vLi4vc3JjL2dlb21ldHJ5L2NvbGxpZGVyLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdXRpbHMvY2xlYW51cC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUtYWFyY2g2NC1hcHBsZS1kYXJ3aW4vbGliL3J1c3RsaWIvc3JjL3J1c3QvbGlicmFyeS9jb3JlL3NyYy9jbXAucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9pbnRlcnNlY3Rpb25fdGVzdC9pbnRlcnNlY3Rpb25fdGVzdF9zdXBwb3J0X21hcF9zdXBwb3J0X21hcC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L25vbmxpbmVhcl9zaGFwZV9jYXN0L25vbmxpbmVhcl9zaGFwZV9jYXN0X3N1cHBvcnRfbWFwX3N1cHBvcnRfbWFwLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvY29udGFjdC9jb250YWN0X3N1cHBvcnRfbWFwX3N1cHBvcnRfbWFwLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvY2xvc2VzdF9wb2ludHMvY2xvc2VzdF9wb2ludHNfc3VwcG9ydF9tYXBfc3VwcG9ydF9tYXAucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9kaXN0YW5jZS9kaXN0YW5jZV9zdXBwb3J0X21hcF9zdXBwb3J0X21hcC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2Nsb3Nlc3RfcG9pbnRzL2Nsb3Nlc3RfcG9pbnRzX2hhbGZzcGFjZV9zdXBwb3J0X21hcC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3V0aWxzL3ZlY19tYXAucnMAL1VzZXJzL3NlYmNyb3pldC8ucnVzdHVwL3Rvb2xjaGFpbnMvc3RhYmxlLWFhcmNoNjQtYXBwbGUtZGFyd2luL2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvc3RkL3NyYy9zeW5jL21wbWMvemVyby5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3NoYXBlL2NvbnZleF9wb2x5aGVkcm9uLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvcG9pbnQvcG9pbnRfdGV0cmFoZWRyb24ucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9zaGFwZS92b3hlbHMvdm94ZWxzX2VkaXRpb24ucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL25hbGdlYnJhLTAuMzQuMS9zcmMvYmFzZS9lZGl0aW9uLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9uYWxnZWJyYS0wLjM0LjEvc3JjL2Jhc2UvY29uc3RydWN0aW9uLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2R5bmFtaWNzL3NvbHZlci9jb250YWN0X2NvbnN0cmFpbnQvY29udGFjdF93aXRoX3R3aXN0X2ZyaWN0aW9uLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2R5bmFtaWNzL3NvbHZlci9jb250YWN0X2NvbnN0cmFpbnQvY29udGFjdF93aXRoX2NvdWxvbWJfZnJpY3Rpb24ucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvZHluYW1pY3Mvc29sdmVyL2NhdGVnb3JpemF0aW9uLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdHJhbnNmb3JtYXRpb24vY29udmV4X2h1bGwzL3ZhbGlkYXRpb24ucnMAbGlicmFyeS9jb3JlL3NyYy9udW0vZmx0MmRlYy9zdHJhdGVneS9kcmFnb24ucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL25hbGdlYnJhLTAuMzQuMS9zcmMvbGluYWxnL3N5bW1ldHJpY19laWdlbi5ycwBsaWJyYXJ5L2NvcmUvc3JjL251bS9iaWdudW0ucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9jb250YWN0X21hbmlmb2xkcy9jb250YWN0X21hbmlmb2xkc19wZm1fcGZtLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvY29udGFjdF9tYW5pZm9sZHMvY29udGFjdF9tYW5pZm9sZHNfaGFsZnNwYWNlX3BmbS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3RyYW5zZm9ybWF0aW9uL2NvbnZleF9odWxsMy9jb252ZXhfaHVsbC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2NvbnRhY3RfbWFuaWZvbGRzL2NvbnRhY3RfbWFuaWZvbGRzX2NvbnZleF9iYWxsLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvY29udGFjdF9tYW5pZm9sZHMvY29udGFjdF9tYW5pZm9sZHNfdm94ZWxzX2JhbGwucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9jbG9zZXN0X3BvaW50cy9jbG9zZXN0X3BvaW50c19iYWxsX2JhbGwucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9jb250YWN0X21hbmlmb2xkcy9jb250YWN0X21hbmlmb2xkc19iYWxsX2JhbGwucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL2JpbmNvZGUtMS4zLjMvc3JjL2ludGVybmFsLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvdm94ZWxzL3ZveGVsc19jaHVuay5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9qb2ludC9tdWx0aWJvZHlfam9pbnQvbXVsdGlib2R5X2xpbmsucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9namsvZ2prLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2dlb21ldHJ5L2Jyb2FkX3BoYXNlX2J2aC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3RyYW5zZm9ybWF0aW9uL3RvX3RyaW1lc2gvY3lsaW5kZXJfdG9fdHJpbWVzaC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3RyYW5zZm9ybWF0aW9uL3RvX3RyaW1lc2gvY29udmV4X3BvbHloZWRyb25fdG9fdHJpbWVzaC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3RyYW5zZm9ybWF0aW9uL3RvX3RyaW1lc2gvYmFsbF90b190cmltZXNoLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdHJhbnNmb3JtYXRpb24vdG9fdHJpbWVzaC9jb25lX3RvX3RyaW1lc2gucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9zaGFwZS90cmltZXNoLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdHJhbnNmb3JtYXRpb24vY29udmV4X2h1bGwzL2luaXRpYWxfbWVzaC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9nZW9tZXRyeS9pbnRlcmFjdGlvbl9ncmFwaC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9kYXRhL2dyYXBoLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9lbmEtMC4xNC4zL3NyYy91bmRvX2xvZy5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvbmFsZ2VicmEtMC4zNC4xL3NyYy9iYXNlL2luZGV4aW5nLnJzAGxpYnJhcnkvYWxsb2Mvc3JjL3N0cmluZy5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3BhcnRpdGlvbmluZy9idmgvYnZoX29wdGltaXplLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcGFydGl0aW9uaW5nL2J2aC9idmhfdHJhdmVyc2UucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL25hbGdlYnJhLTAuMzQuMS9zcmMvYmFzZS9jb21wb25lbnR3aXNlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2dlb21ldHJ5L25hcnJvd19waGFzZS5ycwBidWlsZHMvcmFwaWVyM2Qtc2ltZC8uLi8uLi9zcmMvZ2VvbWV0cnkvbmFycm93X3BoYXNlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvYm91bmRpbmdfdm9sdW1lL2JvdW5kaW5nX3NwaGVyZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2NvbnRhY3RfbWFuaWZvbGRzL2NvbnRhY3RfbWFuaWZvbGRzX3ZveGVsc19zaGFwZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2NvbnRhY3RfbWFuaWZvbGRzL2NvbnRhY3RfbWFuaWZvbGRzX3RyaW1lc2hfc2hhcGUucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9wb2ludC9wb2ludF9jb21wb3NpdGVfc2hhcGUucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9jb250YWN0X21hbmlmb2xkcy9jb250YWN0X21hbmlmb2xkc192b3hlbHNfY29tcG9zaXRlX3NoYXBlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvY29udGFjdF9tYW5pZm9sZHMvY29udGFjdF9tYW5pZm9sZHNfY29tcG9zaXRlX3NoYXBlX2NvbXBvc2l0ZV9zaGFwZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2NvbnRhY3RfbWFuaWZvbGRzL2NvbnRhY3RfbWFuaWZvbGRzX2hlaWdodGZpZWxkX2NvbXBvc2l0ZV9zaGFwZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2NvbnRhY3RfbWFuaWZvbGRzL2NvbnRhY3RfbWFuaWZvbGRzX2NvbXBvc2l0ZV9zaGFwZV9zaGFwZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2NvbnRhY3RfbWFuaWZvbGRzL2NvbnRhY3RfbWFuaWZvbGRzX2hlaWdodGZpZWxkX3NoYXBlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvc2hhcmVkX3NoYXBlLnJzAGJ1aWxkcy9yYXBpZXIzZC1zaW1kLy4uLy4uL3NyYy9nZW9tZXRyeS9zaGFwZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3NoYXBlL3NoYXBlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvcG9seWxpbmUucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy90cmFuc2Zvcm1hdGlvbi90b19vdXRsaW5lL3ZveGVsc190b19vdXRsaW5lLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdHJhbnNmb3JtYXRpb24vdG9fb3V0bGluZS9yb3VuZF9jeWxpbmRlcl90b19vdXRsaW5lLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdHJhbnNmb3JtYXRpb24vdG9fb3V0bGluZS9yb3VuZF9jb252ZXhfcG9seWhlZHJvbl90b19vdXRsaW5lLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdHJhbnNmb3JtYXRpb24vdG9fb3V0bGluZS9iYWxsX3RvX291dGxpbmUucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy90cmFuc2Zvcm1hdGlvbi90b19vdXRsaW5lL3JvdW5kX2NvbmVfdG9fb3V0bGluZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3RyYW5zZm9ybWF0aW9uL3RvX291dGxpbmUvY2Fwc3VsZV90b19vdXRsaW5lLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdHJhbnNmb3JtYXRpb24vdG9fb3V0bGluZS9yb3VuZF9jdWJvaWRfdG9fb3V0bGluZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9waXBlbGluZS9waHlzaWNzX3BpcGVsaW5lLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL3BpcGVsaW5lL2RlYnVnX3JlbmRlcl9waXBlbGluZS9kZWJ1Z19yZW5kZXJfcGlwZWxpbmUucnMAbGlicmFyeS9zdGQvc3JjL3N5cy9wYWwvd2FzbS8uLi91bnN1cHBvcnRlZC90aW1lLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLnJ1c3R1cC90b29sY2hhaW5zL3N0YWJsZS1hYXJjaDY0LWFwcGxlLWRhcndpbi9saWIvcnVzdGxpYi9zcmMvcnVzdC9saWJyYXJ5L2NvcmUvc3JjL3RpbWUucnMAL3J1c3RjLzExNTllNzhjNDc0N2IwMmVmOTk2ZTU1MDgyYjcwNGMwOWI5NzA1ODgvbGlicmFyeS9jb3JlL3NyYy90aW1lLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvY29udGFjdF9tYW5pZm9sZHMvY29udGFjdF9tYW5pZm9sZHNfY2Fwc3VsZV9jYXBzdWxlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvY2xvc2VzdF9wb2ludHMvY2xvc2VzdF9wb2ludHNfY3Vib2lkX3RyaWFuZ2xlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvdHJpYW5nbGUucnMAbGlicmFyeS9jb3JlL3NyYy91bmljb2RlL3ByaW50YWJsZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvbmFsZ2VicmEtMC4zNC4xL3NyYy9iYXNlL3ZlY19zdG9yYWdlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcGFydGl0aW9uaW5nL2J2aC9idmhfdHJlZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvbmFsZ2VicmEtMC4zNC4xL3NyYy9saW5hbGcvcGVybXV0YXRpb25fc2VxdWVuY2UucnMAL1VzZXJzL3NlYmNyb3pldC8ucnVzdHVwL3Rvb2xjaGFpbnMvc3RhYmxlLWFhcmNoNjQtYXBwbGUtZGFyd2luL2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvYWxsb2Mvc3JjL3NsaWNlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvdm94ZWxzL3ZveGVsc19uZWlnaGJvcmhvb2QucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL2VuYS0wLjE0LjMvc3JjL3VuaWZ5L21vZC5ycwAvcnVzdC9kZXBzL2hhc2hicm93bi0wLjE1LjQvc3JjL3Jhdy9tb2QucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL2hhc2hicm93bi0wLjE2LjAvc3JjL3Jhdy9tb2QucnMAbGlicmFyeS9jb3JlL3NyYy9mbXQvbW9kLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLnJ1c3R1cC90b29sY2hhaW5zL3N0YWJsZS1hYXJjaDY0LWFwcGxlLWRhcndpbi9saWIvcnVzdGxpYi9zcmMvcnVzdC9saWJyYXJ5L2FsbG9jL3NyYy9jb2xsZWN0aW9ucy9iaW5hcnlfaGVhcC9tb2QucnMAbGlicmFyeS9zdGQvc3JjL3RocmVhZC9tb2QucnMAL1VzZXJzL3NlYmNyb3pldC8ucnVzdHVwL3Rvb2xjaGFpbnMvc3RhYmxlLWFhcmNoNjQtYXBwbGUtZGFyd2luL2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvc3RkL3NyYy9zeW5jL21wbWMvbW9kLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLnJ1c3R1cC90b29sY2hhaW5zL3N0YWJsZS1hYXJjaDY0LWFwcGxlLWRhcndpbi9saWIvcnVzdGxpYi9zcmMvcnVzdC9saWJyYXJ5L2FsbG9jL3NyYy9yYXdfdmVjL21vZC5ycwAvcnVzdGMvMTE1OWU3OGM0NzQ3YjAyZWY5OTZlNTUwODJiNzA0YzA5Yjk3MDU4OC9saWJyYXJ5L2FsbG9jL3NyYy9yYXdfdmVjL21vZC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUtYWFyY2g2NC1hcHBsZS1kYXJ3aW4vbGliL3J1c3RsaWIvc3JjL3J1c3QvbGlicmFyeS9hbGxvYy9zcmMvdmVjL21vZC5ycwBsaWJyYXJ5L2NvcmUvc3JjL251bS9mbHQyZGVjL21vZC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3NoYXBlL2NvbXBvdW5kLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL3BpcGVsaW5lL2RlYnVnX3JlbmRlcl9waXBlbGluZS9kZWJ1Z19yZW5kZXJfYmFja2VuZC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3BhcnRpdGlvbmluZy9idmgvYnZoX2Jpbm5lZF9idWlsZC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3BhcnRpdGlvbmluZy9idmgvYnZoX3Bsb2NfYnVpbGQucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9jbG9zZXN0X3BvaW50cy9jbG9zZXN0X3BvaW50c19jdWJvaWRfY3Vib2lkLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvY3Vib2lkLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvZmVhdHVyZV9pZC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUtYWFyY2g2NC1hcHBsZS1kYXJ3aW4vbGliL3J1c3RsaWIvc3JjL3J1c3QvbGlicmFyeS9hbGxvYy9zcmMvdmVjL3NwZWNfZnJvbV9pdGVyX25lc3RlZC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL21hc3NfcHJvcGVydGllcy9tYXNzX3Byb3BlcnRpZXNfdHJpbWVzaDNkLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvcG9seWdvbmFsX2ZlYXR1cmUzZC5ycwAvcnVzdC9kZXBzL2RsbWFsbG9jLTAuMi4xMC9zcmMvZGxtYWxsb2MucnMAbGlicmFyeS9zdGQvc3JjL2FsbG9jLnJzAGxpYnJhcnkvYWxsb2Mvc3JjL3N5bmMucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL2VuYS0wLjE0LjMvc3JjL3NuYXBzaG90X3ZlYy5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvanMtc3lzLTAuMy43Ny9zcmMvbGliLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9vbmNlX2NlbGwtMS4yMS4zL3NyYy9saWIucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3ZlY19tYXAtMC44LjIvc3JjL2xpYi5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2Yvc21hbGx2ZWMtMS4xNS4xL3NyYy9saWIucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9ib3VuZGluZ192b2x1bWUvYWFiYi5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9kYXRhL2NvYXJlbmEucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvZGF0YS9hcmVuYS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2dqay92b3Jvbm9pX3NpbXBsZXgzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvaGVpZ2h0ZmllbGQzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvZXBhL2VwYTMucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy90cmFuc2Zvcm1hdGlvbi9jb252ZXhfaHVsbDIucnMAL1VzZXJzL3NlYmNyb3pldC8ucnVzdHVwL3Rvb2xjaGFpbnMvc3RhYmxlLWFhcmNoNjQtYXBwbGUtZGFyd2luL2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvY29yZS9zcmMvbnVtL2YzMi5ycwABAQECAQEBAgEBAQICAgIDAQEBAgEBAQIBAQECAgICAwEBAQIBAQECAQEBAgICAgMCAgIDAgICAwICAgMDAwMEAAAAAGY1EAB5AAAANQAAACwAAABDYW5ub3QgZGVzZXJpYWxpemUgY3VzdG9tIHNoYXBlLgAAAAAAAAAAAQAAAAQAAABBbGxvY2F0aW9uIGZyb20gaXRlcmF0b3IgZXJyb3I6IHRoZSBpdGVyYXRvciBkaWQgbm90IHlpZWxkIHRoZSBjb3JyZWN0IG51bWJlciBvZiBlbGVtZW50cy4AABxWEABaAAAAJBkQAHMAAACEAAAACQAAAAAAAAAIAAAABAAAAAUAAABhIHR1cGxlIG9mIHNpemUgMgBBvK3BAAthAQAAAAYAAACqEhAAYwAAAJUEAAAiAAAAqhIQAGMAAACYBAAAHAAAAHN0cnVjdCBUcmlNZXNoIHdpdGggNyBlbGVtZW50cwAA5FYQAB4AAABhIHR1cGxlIG9mIHNpemUgMwBBqK7BAAsFAQAAAAcAQbiuwQALBQEAAAAHAEHIrsEACwUBAAAABwBB2K7BAAuJDgEAAAAHAAAAc3RydWN0IENvbXBvdW5kIHdpdGggNCBlbGVtZW50cwBgVxAAHwAAAHN0cnVjdCBQb2x5bGluZSB3aXRoIDMgZWxlbWVudHMAiFcQAB8AAAB2YXJpYW50IGluZGV4IDAgPD0gaSA8IDKwVxAAGAAAAHN0cnVjdCBDb2xsaWRlciB3aXRoIDExIGVsZW1lbnRz0FcQACAAAABzdHJ1Y3QgVm94ZWxzIHdpdGggNiBlbGVtZW50cwAAAPhXEAAdAAAAc3RydWN0IEhlaWdodEZpZWxkIHdpdGggNiBlbGVtZW50cwAAIFgQACIAAAB2YXJpYW50IGluZGV4IDAgPD0gaSA8IDIwAAAATFgQABkAAABzdHJ1Y3QgVHJpTWVzaENvbm5lY3RlZENvbXBvbmVudHMgd2l0aCAzIGVsZW1lbnRzAAAAcFgQADEAAABzdHJ1Y3QgR3JhcGggd2l0aCAyIGVsZW1lbnRzrFgQABwAAABzdHJ1Y3QgTFUgd2l0aCAyIGVsZW1lbnRzAAAA0FgQABkAAABzdHJ1Y3QgSXNsYW5kTWFuYWdlciB3aXRoIDQgZWxlbWVudHP0WBAAJAAAAHN0cnVjdCBDb252ZXhQb2x5aGVkcm9uIHdpdGggOCBlbGVtZW50cwAgWRAAJwAAAHN0cnVjdCBCdmhOb2RlV2lkZSB3aXRoIDIgZWxlbWVudHMAAFBZEAAiAAAAc3RydWN0IEJyb2FkUGhhc2VCdmggd2l0aCA0IGVsZW1lbnRzfFkQACQAAABzdHJ1Y3QgQ29udGFjdE1hbmlmb2xkRGF0YSB3aXRoIDcgZWxlbWVudHMAAKhZEAAqAAAAc3RydWN0IEpvaW50TW90b3Igd2l0aCA3IGVsZW1lbnRzAAAA3FkQACEAAABzdHJ1Y3QgR2VuZXJpY0pvaW50IHdpdGggMTEgZWxlbWVudHMIWhAAJAAAAHZhcmlhbnQgaW5kZXggMCA8PSBpIDwgMzRaEAAYAAAAdmFyaWFudCBpbmRleCAwIDw9IGkgPCA0VFoQABgAAABzdHJ1Y3QgSW50ZWdyYXRpb25QYXJhbWV0ZXJzIHdpdGggMTcgZWxlbWVudHMAAAB0WhAALQAAAHN0cnVjdCBNdWx0aWJvZHkgd2l0aCAxOCBlbGVtZW50cwAAAKxaEAAhAAAAc3RydWN0IEludGVyYWN0aW9uR3JhcGggd2l0aCAxIGVsZW1lbnQAANhaEAAmAAAAc3RydWN0IEluZGV4U2VxdWVuY2Ugd2l0aCAyIGVsZW1lbnRzCFsQACQAAABzdHJ1Y3QgSW1wdWxzZUpvaW50IHdpdGggNSBlbGVtZW50cwA0WxAAIwAAAHR1cGxlIHN0cnVjdCBNb2RpZmllZE9iamVjdHMgd2l0aCAyIGVsZW1lbnRzYFsQACwAAABzdHJ1Y3QgTXVsdGlib2R5Sm9pbnQgd2l0aCA0IGVsZW1lbnRzAAAAlFsQACUAAABzdHJ1Y3QgSW1wdWxzZUpvaW50U2V0IHdpdGggNCBlbGVtZW50cwAAxFsQACYAAABzdHJ1Y3QgTXVsdGlib2R5Sm9pbnRTZXQgd2l0aCA0IGVsZW1lbnRz9FsQACgAAABzdHJ1Y3QgTXVsdGlib2R5V29ya3NwYWNlIHdpdGggMiBlbGVtZW50cwAAACRcEAApAAAAdmFyaWFudCBpbmRleCAwIDw9IGkgPCA5WFwQABgAAABzdHJ1Y3QgVHJpTWVzaFNoYXBlQ29udGFjdE1hbmlmb2xkc1dvcmtzcGFjZSB3aXRoIDMgZWxlbWVudHN4XBAAPAAAAGA+Bf1sFmojnLZoRfP0mUYPbOaJqDM9Bw28TXTT/gtIMSQQAHYAAACGAAAAOgAAADEkEAB2AAAAfgAAAEEAAAAtHBAAdwAAAFwAAAArAAAAY2Fubm90IHJlY3Vyc2l2ZWx5IGFjcXVpcmUgbXV0ZXgMXRAAIAAAAJ4XEACBAAAAEwAAAAkAAAAAAAAADAAAAAQAAAAIAAAAAAAAACQAAAAEAAAACQAAACgpAACmGBAAfQAAAOsHAAAJAAAAoEkQAHUAAAAuAgAAEQAAAGludmFsaWQgdmFsdWU6ICwgZXhwZWN0ZWQgAACIXRAADwAAAJddEAALAAAAaW52YWxpZCBsZW5ndGggALRdEAAPAAAAl10QAAsAAAAAAAAABAAAAAQAAAAKAAAAAAAAAAQAAAAEAAAACwAAAExheW91dHNpemVhbGlnbkNhcGFjaXR5T3ZlcmZsb3cAAAAAAAQAAAAEAAAADAAAAEFsbG9jRXJybGF5b3V0AAAYAxAAcAAAAFgAAAAOAAAAAAIAAGFuIGFycmF5IG9mIHNpemUgAAAASF4QABEAQey8wQALkQMBAAAADQAAAAAAAAAMAAAABAAAAA4AAAAPAAAAEAAAABEAAAAAAAAADAAAAAQAAAAOAAAADwAAABAAAAARAAAAEgAAABMAAADHLRAAYwAAACAAAAAJAAAAdGhlIGVudW0gdmFyaWFudCBUeXBlZFNoYXBlOjpDdXN0b20gY2Fubm90IGJlIHNlcmlhbGl6ZWQrLhAAdQAAACsBAAAhAAAANTIQAGkAAACTBgAAHgAAADUyEABpAAAAlAYAAB4AAAA1MhAAaQAAAJUGAAAeAAAAAAAAACQAAAAEAAAAFAAAABUAAAAWAAAAFwAAAAAAAAAkAAAABAAAABQAAAAVAAAAFgAAABcAAAAYAAAAEwAAAIpGEABvAAAAvQEAAB0AAABNYXRyaXggaW5pdC4gZXJyb3I6IHRoZSBzbGljZSBkaWQgbm90IGNvbnRhaW4gdGhlIHJpZ2h0IG51bWJlciBvZiBlbGVtZW50cy4AjF8QAEsAAAB4JhAAbgAAAGoAAAAJAAAAUREQAHIAAAA/AAAAEABBiMDBAAvbDQEAAAAZAAAAaW5zZXJ0aW5nIHdpbGwgYWx3YXlzIHN1Y2NlZWQgYWZ0ZXIgcmVzZXJ2aW5nIGFkZGl0aW9uYWwgc3BhY2UAAPZSEABnAAAAOQEAAA4AAAD2UhAAZwAAAPkAAAAoAAAAY29ycnVwdCBmcmVlIGxpc3QAAABwYBAAEQAAAPZSEABnAAAA+gAAACsAAAD2UhAAZwAAAH0CAAAUAAAAnDMQAGcAAADxAAAAFAAAAEdyYXBoOjphZGRfZWRnZTogbm9kZSBpbmRpY2VzIG91dCBvZiBib3VuZHMAvGAQACsAAACcMxAAZwAAAOQAAAAbAAAAnDMQAGcAAAC1AAAAFAAAAIxSEABpAAAAbAAAACIAAACMUhAAaQAAAF0AAAASAAAADgwQAHQAAAChAAAANQAAAIwNEACLAAAAagEAABcAAAC9DBAAjwAAAH4AAAArAAAAvQwQAI8AAAB/AAAARgAAAL0MEACPAAAAwAAAAD4AAAC9DBAAjwAAAMEAAAAvAAAAvQwQAI8AAADEAAAAQgAAAFBhcmVudCByaWdpZCBib2R5IG5vdCBmb3VuZC6BDxAAcgAAAM0AAAAOAAAAgQ8QAHIAAADPAAAANQAAAIEPEAByAAAA1wAAACIAAACBDxAAcgAAAJ8AAAA4AAAAJDMQAHcAAAB8AAAAPwAAACQzEAB3AAAAfQAAABgAAAAkMxAAdwAAAH0AAAAxAAAAaEsQAJAAAAA9AAAAOAAAAGhLEACQAAAAPgAAADgAAABthid1OAjxNiVOiDGmsEvebm8gZW50cnkgZm91bmQgZm9yIGtleQAA+UEQAJEAAADiAQAAMQAAAPlBEACRAAAA7QEAADEAAAAAAAAAAQAAAAAAAAAkAAAABAAAABoAAAAbAAAAHAAAAB0AAAAeAAAAHwAAACAAAAAhAAAAIgAAACMAAAAAAAAAJAAAAAQAAAAJAAAAJAAAACUAAAAmAAAAJwAAAAAAAAAkAAAABAAAAAkAAAAkAAAAJQAAACYAAAAnAAAAJAAAAAAAAAAkAAAABAAAAAkAAAAkAAAAJQAAACYAAAAnAAAAJAAAACQAAAAlAAAAAAAAACQAAAAEAAAAKAAAACkAAAAqAAAAKwAAACwAAAAtAAAAGgAAABsAAAAcAAAAHQAAAB4AAAAfAAAAIAAAACEAAAAiAAAAIwAAAJxiEAAJAAAAVF0QACQAAAAlAAAAJgAAACcAAADQYhAAJAAAAPBiEAAkAAAAJQAAABRjEAAuAAAALwAAADAAAAAxAAAAMgAAADMAAAA0AAAANQAAADYAAAA3AAAAOAAAADkAAAA6AAAAOwAAADwAAAA9AAAAPgAAAD8AAAAAAAAAAQAAAAIAAAADAAAAJVFUq4UuPItzTUyuVA9+6flBEACRAAAAOgIAADEAAAAZegzzrKWwG1WJHXptAcCG+UEQAJEAAABFAgAAMQAAAPlBEACRAAAA8AAAAD4AAAD5QRAAkQAAAPAAAABIAAAAAAAAAAwAAAAEAAAAQAAAAEEAAABCAAAAQwAAAEQAAABFAAAARgAAAEcAAABIAAAASQAAAAAAAAAMAAAABAAAAAgAAABKAAAASwAAAEwAAABNAAAAAAAAAAwAAAAEAAAACAAAAEoAAABLAAAATAAAAE0AAABKAAAAAAAAAAwAAAAEAAAACAAAAEoAAABLAAAATAAAAE0AAABKAAAASgAAAEsAAAAAAAAADAAAAAQAAABOAAAATwAAAFAAAABRAAAAUgAAAFMAAABAAAAAQQAAAEIAAABDAAAARAAAAEUAAABGAAAARwAAAEgAAABJAAAAeGQQAAgAAABEXRAASgAAAEsAAABMAAAATQAAAKxkEABKAAAAzGQQAEoAAABLAAAA8GQQAFQAAABVAAAAVgAAAFcAAABYAAAAWQAAAFoAAABbAAAAXAAAAF0AAABeAAAAOQAAADoAAABfAAAAPAAAAGAAAABhAAAAYgAAAAAAAAAIAAAABAAAAGMAAABjYWxsZWQgYFJlc3VsdDo6dW53cmFwKClgIG9uIGFuIGBFcnJgIHZhbHVlALpREABgAAAAVgEAAC4AAAC6URAAYAAAAEUBAAA2AAAAulEQAGAAAADSBAAADgAAAGFzc2VydGlvbiBmYWlsZWQ6IG5ld19jYXAgPj0gbGVuulEQAGAAAACdBAAADQAAAAEAAABFeHBlY3RlZCAgY29tcG9uZW50cywgZm91bmQghGYQAAkAAACNZhAAEwAAAGFuIGFycmF5IG9mIGxlbmd0aCA2AAAAAAAAAAABAAAAZAAAAAAAAAD//////////9hmEABB8M3BAAv9CEludmFsaWQgSW1wdWxzZUpvaW50IHJlZmVyZW5jZS4gSXQgbWF5IGhhdmUgYmVlbiByZW1vdmVkIGZyb20gdGhlIHBoeXNpY3MgV29ybGQuGA4QADwAAAALAAAARAAAABgOEAA8AAAAGQAAAA4AAABJbnZhbGlkIEpvaW50IHJlZmVyZW5jZS4gSXQgbWF5IGhhdmUgYmVlbiByZW1vdmVkIGZyb20gdGhlIHBoeXNpY3MgV29ybGQuAAAATQ0QAD4AAAAOAAAADgAAAE0NEAA+AAAADwAAAB4AAABNDRAAPgAAABoAAAAOAAAATQ0QAD4AAAAbAAAAJwAAAEludmFsaWQgUmlnaWRCb2R5IHJlZmVyZW5jZS4gSXQgbWF5IGhhdmUgYmVlbiByZW1vdmVkIGZyb20gdGhlIHBoeXNpY3MgV29ybGQuAAAAgwwQADkAAAArAAAAOwAAAIMMEAA5AAAANgAAAD8AAABJbnZhbGlkIENvbGxpZGVyIHJlZmVyZW5jZS4gSXQgbWF5IGhhdmUgYmVlbiByZW1vdmVkIGZyb20gdGhlIHBoeXNpY3MgV29ybGQu9A8QADcAAAAXAAAADgAAAPQPEAA3AAAAIwAAAA4AAAD0DxAANwAAAHcAAAANAAAAAAAAAAQAAAAEAAAAZQAAAGYAAABmAAAAAAAAAAQAAAAEAAAAZQAAAGYAAABmAAAAAAAAAAQAAAAEAAAAZQAAAGYAAABmAAAAAAAAAAQAAAAEAAAAZQAAAGYAAABmAAAAAAAAAAQAAAAEAAAAZQAAAGYAAABmAAAAAAAAAAQAAAAEAAAAZQAAAGYAAABmAAAAAAAAAAQAAAAEAAAAZQAAAGYAAABmAAAAAAAAAAQAAAAEAAAAZQAAAGYAAABmAAAAAAAAAAQAAAAEAAAAZQAAAGYAAABmAAAAAAAAAAQAAAAEAAAAZQAAAGYAAABmAAAAAAAAAAQAAAAEAAAAZQAAAGYAAABmAAAAAAAAAAQAAAAEAAAAZQAAAGYAAABmAAAAMC4xOS4zAAAtFxAAcAAAACQBAAAOAAAAYXR0ZW1wdGVkIHRvIHRha2Ugb3duZXJzaGlwIG9mIFJ1c3QgdmFsdWUgd2hpbGUgaXQgd2FzIGJvcnJvd2VkAG0bEAA+AAAAxQAAACQAAABpbnZhbGlkIGVudW0gdmFsdWUgcGFzc2VkAAAAlwEQADUAAAAKAgAAMgAAAE5vdCB5ZXQgaW1wbGVtZW50ZWQuNh8QADMAAACoAAAAIgAAADYfEAAzAAAA4gIAAA4AAAA2HxAAMwAAACUDAAAOAAAAwzYQADcAAADPAAAAMwAAAMM2EAA3AAAA0wAAADMAAADDNhAANwAAANcAAAAzAAAApDwQADAAAAAxAQAAQAAAAKQ8EAAwAAAAPAEAADgAAACkPBAAMAAAADwBAAA+AAAApDwQADAAAACFAQAAQAAAAKQ8EAAwAAAAhQEAAEYAAACkPBAAMAAAAJABAABAAAAApDwQADAAAACQAQAARgBB+NbBAAsNAQAAAGcAAABoAAAAaQBBkNfBAAutAwEAAABqAAAAawAAAGwAAAAMAAAABAAAAG0AAABuAAAAbwAAAHAAAAAQAAAABAAAAHEAAAByAAAAc3RydWN0IERlc2VyaWFsaXphYmxlV29ybGQgd2l0aCA5IGVsZW1lbnRzAADIaxAAKgAAAAAAAAAFAAAABgAAAAYAAAAGAAAABgAAAAYAAAACAAAAAQAAAP////9JbnZhbGlkIHNpemUgOiBzaXplcyBtdXN0IGZpdCBpbiBhIHVzaXplICgwIHRvICkkbBAADQAAADFsEAAiAAAAU2wQAAEAAABjYXBhY2l0eSBvdmVyZmxvd1RoZSBsb29zZW5pbmcgbWFyZ2luIG11c3QgYmUgcG9zaXRpdmUuAH1sEAAmAAAAG1IQAHAAAADXAwAACQAAAGY1EAB5AAAANQAAACwAAABBbGxvY2F0aW9uIGZyb20gaXRlcmF0b3IgZXJyb3I6IHRoZSBpdGVyYXRvciBkaWQgbm90IHlpZWxkIHRoZSBjb3JyZWN0IG51bWJlciBvZiBlbGVtZW50cy4AAMxsEABaAAAAJBkQAHMAAACEAAAACQBByNrBAAuDDQEAAAB6AAAAewAAAHwAAAB9AAAAfgAAAH8AAACAAAAAgQAAAKUcEAB6AAAAlwIAADEAAAClHBAAegAAAKoCAAAxAAAApRwQAHoAAADaAgAAIwAAAKUcEAB6AAAAFgMAAC8AAAClHBAAegAAACUDAAAvAAAATWF0cml4IGluaXQuIGZyb20gaXRlcmF0b3I6IGl0ZXJhdG9yIG5vdCBsb25nIGVub3VnaC4AAAC8bRAANQAAACQZEABzAAAATgAAAAkAAAAwciB1dSYcu2LQl0mtouwPD2zmiagzPQcNvE100/4LSEP80g6IdOMHx9L/edARZpxthid1OAjxNiVOiDGmsEveYD4F/WwWaiOctmhF8/SZRh2b0oLJrgfQEQizoAXNMcppbnRlcm5hbCBlcnJvcjogZW50ZXJlZCB1bnJlYWNoYWJsZSBjb2RlKkkQAHUAAACQAQAALQAAAPoFEAB2AAAA8wAAAEMAAAAxJBAAdgAAAK8AAAAtAAAAMSQQAHYAAADFAAAAJgAAADEkEAB2AAAAxwAAAEkAAAAxJBAAdgAAAMgAAABHAAAAMSQQAHYAAADMAAAASQAAADEkEAB2AAAAzQAAAEcAAADNARAAdwAAAGEBAAAqAAAAzQEQAHcAAABjAQAANwAAAC0cEAB3AAAAXAAAACsAAAAtHBAAdwAAADoAAAAoAAAALRwQAHcAAAAxAAAAGAAAAAEFEAB5AAAAMAAAAB4AAABjYW5ub3QgcmVjdXJzaXZlbHkgYWNxdWlyZSBtdXRleHRvEAAgAAAAnhcQAIEAAAATAAAACQAAAIIAAAAgAAAACAAAAIMAAACEAAAAIAAAAAgAAACFAAAAAAAAACQAAAAEAAAAhgAAAAAAAAAMAAAABAAAAIcAAACIAAAAIAAAAAgAAACJAAAAKCkAAKYYEAB9AAAA6wcAAAkAAABtaWQgPiBsZW4AAAAQcBAACQAAAAAAAAAEAAAABAAAAIoAAAAAAAAABAAAAAQAAACLAAAAhkgQAIUAAACuAgAAEwAAAKBJEAB1AAAALgIAABEAAAAAAAAABAAAAAQAAACMAAAAAAAAAAQAAAAEAAAAjQAAAExheW91dHNpemVhbGlnbkNhcGFjaXR5T3ZlcmZsb3cAAAAAAAQAAAAEAAAAjgAAAEFsbG9jRXJybGF5b3V0AAAAAAAADAAAAAQAAACPAAAAkAAAAJEAAACSAAAAAAAAAAwAAAAEAAAAjwAAAJAAAACRAAAAkgAAABIAAACTAAAAZjUQAHkAAABqAQAAIwAAAHsFEAB+AAAALAAAAB8AAAB7BRAAfgAAAGAAAAAgAAAAewUQAH4AAABhAAAAIAAAAHsFEAB+AAAAoQAAACMAAAB7BRAAfgAAAL4AAAAvAAAA4ykQAI0AAAB7AAAAIQAAADctEACPAAAAMQAAAB0AAACJKxAAkQAAAIEAAAAdAAAAGywQAJEAAABzAAAAHQAAABssEACRAAAAfQAAABcAAAB3NxAAkgAAAHcAAAAcAAAAdzcQAJIAAAB3AAAANgAAAHc3EACSAAAAmgAAADkAAAB3NxAAkgAAAKEAAAAnAAAAdzcQAJIAAACwAAAAIwAAAHc3EACSAAAAvQAAACoAAAAAAAAADAAAAAQAAACUAAAAlQAAAJYAAACXAAAAmAAAAJkAAACaAAAAmwAAAJwAAACdAAAAAAAAAAwAAAAEAAAAhwAAAJ4AAACfAAAAoAAAAKEAAAAAAAAADAAAAAQAAACHAAAAngAAAJ8AAACgAAAAoQAAAJ4AAAAAAAAADAAAAAQAAACHAAAAngAAAJ8AAACgAAAAoQAAAJ4AAACeAAAAnwAAAAAAAAAMAAAABAAAAKIAAACjAAAApAAAAKUAAACmAAAApwAAAJQAAACVAAAAlgAAAJcAAACYAAAAmQAAAJoAAACbAAAAnAAAAJ0AAAAUchAAhwAAANxvEACeAAAAnwAAAKAAAAChAAAASHIQAJ4AAABochAAngAAAJ8AAACMchAAVAAAAFUAAACoAAAAVwAAAFgAAABZAAAAqQAAAFsAAACqAAAAqwAAAF4AAACsAAAArQAAAK4AAACvAAAAsAAAAGEAAACxAAAAVW5zdXBwb3J0ZWQgY29sbGlzaW9uIHBhaXIuAHc3EACSAAAAEgEAABoAAAB3NxAAkgAAACwBAAAqAAAAAAAAAP//////////wHMQAEHY58EAC7UiggAAACAAAAAIAAAAgwAAALIAAACzAAAAtAAAALUAAACyAAAAsgAAALMAAAC2AAAAtwAAAIQAAAAgAAAACAAAAIUAAAC4AAAAuQAAALoAAAC7AAAAuAAAALgAAAC5AAAAvAAAAL0AAACIAAAAIAAAAAgAAACJAAAAvgAAAL8AAADAAAAAwQAAAL4AAAC+AAAAvwAAAMIAAADDAAAAcSoQAJMAAABAAAAAFAAAAHEqEACTAAAARgAAAB0AAAAKOBAAkwAAAGgAAAAcAAAACjgQAJMAAABoAAAANgAAAAo4EACTAAAAtwAAACkAAAAKOBAAkwAAALoAAAAXAAAACjgQAJMAAAC9AAAAJgAAAAAAAAAwAAAABAAAAMQAAADFAAAAxgAAAMcAAAAAAAAAJAAAAAQAAADIAAAAyQAAAMoAAADLAAAAzAAAAM0AAADOAAAAzwAAANAAAADRAAAAAAAAACQAAAAEAAAAhgAAANIAAADTAAAA1AAAANUAAAAAAAAAJAAAAAQAAACGAAAA0gAAANMAAADUAAAA1QAAANIAAAAAAAAAJAAAAAQAAACGAAAA0gAAANMAAADUAAAA1QAAANIAAADSAAAA0wAAAAAAAAAkAAAABAAAANYAAADXAAAA2AAAANkAAADaAAAA2wAAAMgAAADJAAAAygAAAMsAAADMAAAAzQAAAM4AAADPAAAA0AAAANEAAAAAdRAAhgAAAMxvEADSAAAA0wAAANQAAADVAAAANHUQANIAAABUdRAA0gAAANMAAAB4dRAALgAAAC8AAADcAAAAMQAAADIAAAAzAAAA3QAAADUAAADeAAAA3wAAAOAAAACsAAAArQAAAOEAAACvAAAA4gAAAD4AAADjAAAA1hQQAJMAAAA8AAAAHAAAANYUEACTAAAAPAAAADYAAADWFBAAkwAAAEABAAAuAAAA1hQQAJMAAAByAAAAOQAAANYUEACTAAAAeQAAACcAAADWFBAAkwAAAIYAAAAjAAAA1hQQAJMAAACTAAAAKgAAAHZDEACVAAAArgAAAB0AAACdOxAAlwAAAG8AAAAcAAAAnTsQAJcAAABvAAAANgAAAJ07EACXAAAAgwAAAC0AAACdOxAAlwAAAIYAAAAbAAAAnTsQAJcAAACQAAAAGwAAAJ07EACXAAAAmgAAACYAAAABOxAAmwAAAEgAAAAcAAAAATsQAJsAAABIAAAANgAAAAAAAAA0AAAABAAAAOQAAADlAAAAATsQAJsAAABcAAAAMQAAAAE7EACbAAAAXwAAAB8AAAABOxAAmwAAAHQAAAAfAAAAATsQAJsAAAB5AAAAKgAAABw5EACcAAAASgAAABwAAAAcORAAnAAAAEoAAAA2AAAAHDkQAJwAAAAXAQAAKgAAABw5EACcAAAAdgAAADkAAAAcORAAnAAAAH0AAAAnAAAAHDkQAJwAAACQAAAAIwAAABw5EACcAAAAnQAAAC4AAAAAAAAAMAAAAAQAAADmAAAA5wAAABw5EACcAAAA8gAAACIAAABfOhAAoQAAAEsAAAAcAAAAXzoQAKEAAABLAAAANgAAAAAAAAA4AAAABAAAAOgAAADpAAAAXzoQAKEAAABiAAAANQAAAF86EAChAAAAZQAAACMAAABfOhAAoQAAAHoAAAAjAAAAXzoQAKEAAAB/AAAALgAAALk5EAClAAAASAAAABwAAAC5ORAApQAAAEgAAAA2AAAAAAAAADAAAAAEAAAA6gAAAOsAAAAAAAAAPAAAAAQAAADsAAAA7QAAALk5EAClAAAAdwAAAD0AAAC5ORAApQAAAHoAAAArAAAAuTkQAKUAAACRAAAAKwAAALk5EAClAAAAlgAAADYAAABEVBAAagAAAMgBAAAkAAAARFQQAGoAAADJAQAAJAAAAERUEABqAAAAygEAACQAAABEVBAAagAAAN8BAAAYAAAARFQQAGoAAADgAQAAGAAAAERUEABqAAAA4QEAABgAAABEVBAAagAAAOIBAAAYAAAARFQQAGoAAADlAQAAJwAAAERUEABqAAAA5QEAAEQAAABEVBAAagAAAOoBAAAnAAAARFQQAGoAAADqAQAARAAAAERUEABqAAAA7wEAACcAAABEVBAAagAAAO8BAABEAAAARFQQAGoAAAD0AQAAJwAAAERUEABqAAAA9AEAAEQAAABIaXQgdW5leHBlY3RlZCBzdGF0ZSBpbiBFUEE6IGZhaWxlZCB0byBwcm9qZWN0IHRoZSBvcmlnaW4gb24gdGhlIGluaXRpYWwgc2ltcGxleC4AAABAehAAUQAAAERUEABqAAAA/AEAABEAAABwYXJyeTNkOjpxdWVyeTo6ZXBhOjplcGEzAAAARFQQAGoAAAABAgAAKAAAAERUEABqAAAAFAIAABgAAABEVBAAagAAABUCAAAYAAAARFQQAGoAAAAlAgAAIgAAAERUEABqAAAALQIAABsAAABEVBAAagAAAEQCAAAXAAAARFQQAGoAAABGAgAALAAAAERUEABqAAAARwIAACwA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TAAAAA4AAABEVBAAagAAAGIAAAANAAAARFQQAGoAAABjAAAADQAAAERUEABqAAAAZAAAAA0AAABEVBAAagAAAHoAAAANAAAARFQQAGoAAAB7AAAAEwAAAERUEABqAAAAfAAAABMAAABIaXQgdW5leHBlY3RlZCBzdGF0ZSBpbiBFUEE6IGZvdW5kIGluZGV4ICwgZXhwZWN0ZWQ6IAAAAIzFEAApAAAAtcUQAAwAAAA4rxAAAQAAAERUEABqAAAAjgAAABEAAABwYXJyeTNkOjpxdWVyeTo6ZXBhOjplcGEzAAAARFQQAGoAAACaAAAAHAAAAERUEABqAAAAmgAAABMAAABEVBAAagAAAJsAAAATAAAARFQQAGoAAACcAAAAEwAAAERUEABqAAAAnQAAABMAAABEVBAAagAAAN8BAAAYAAAARFQQAGoAAADgAQAAGAAAAERUEABqAAAA4QEAABgAAABEVBAAagAAAOIBAAAYAAAARFQQAGoAAADlAQAAJwAAAERUEABqAAAA5QEAAEQAAABEVBAAagAAAOoBAAAnAAAARFQQAGoAAADqAQAARAAAAERUEABqAAAA7wEAACcAAABEVBAAagAAAO8BAABEAAAARFQQAGoAAAD0AQAAJwAAAERUEABqAAAA9AEAAEQAAABIaXQgdW5leHBlY3RlZCBzdGF0ZSBpbiBFUEE6IGZhaWxlZCB0byBwcm9qZWN0IHRoZSBvcmlnaW4gb24gdGhlIGluaXRpYWwgc2ltcGxleC4AAAAYxxAAUQAAAERUEABqAAAA/AEAABEAAABEVBAAagAAABQCAAAYAAAARFQQAGoAAAAVAgAAGAAAAERUEABqAAAAJQIAACIAAABEVBAAagAAAC0CAAAbAAAARFQQAGoAAABEAgAAFwAAAERUEABqAAAARgIAACwAAABEVBAAagAAAEcCAAAsAAAARFQQAGoAAABIAgAALAAAAERUEABqAAAAegIAABcAAABEVBAAagAAAHsCAAAjAAAARFQQAGoAAABWAgAAHwAAAERUEABqAAAAYwIAACAAAABEVBAAagAAAGYCAAA6AAAARFQQAGoAAABmAgAALwAAAERUEABqAAAAPQIAACwAAABEVBAAagAAAIgCAAAkAAAARFQQAGoAAADAAQAAGwAAAERUEABqAAAABwIAABoAAABEVBAA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").buffer)})}function LkQ(){return function(){let A,Q;try{let J=j.__wbindgen_add_to_stack_pointer(-16);j.version(J);var B=VY().getInt32(J+0,!0),Y=VY().getInt32(J+4,!0);return A=B,Q=Y,pk(B,Y)}finally{j.__wbindgen_add_to_stack_pointer(16),j.__wbindgen_export_1(A,Q,1)}}()}function qkQ(A){var Q;Q=A,j.reserve_memory(Q)}z9[45]=62,z9[95]=63;var FB=Object.freeze({__proto__:null,version:LkQ,reserveMemory:qkQ,Vector3:F_,VectorOps:a,Quaternion:UM,RotationOps:gQ,SdpMatrix3:W_,SdpMatrix3Ops:EM,get RigidBodyType(){return FC},RigidBody:HM,RigidBodyDesc:I1,RigidBodySet:Z_,IntegrationParameters:$_,get JointType(){return oY},get MotorModel(){return ik},get JointAxesMask(){return nk},ImpulseJoint:ZC,UnitImpulseJoint:jM,FixedImpulseJoint:U_,RopeImpulseJoint:E_,SpringImpulseJoint:K_,PrismaticImpulseJoint:V_,RevoluteImpulseJoint:I_,GenericImpulseJoint:H_,SphericalImpulseJoint:D_,JointData:h6,ImpulseJointSet:N_,MultibodyJoint:uG,UnitMultibodyJoint:OM,FixedMultibodyJoint:L_,PrismaticMultibodyJoint:q_,RevoluteMultibodyJoint:M_,SphericalMultibodyJoint:z_,MultibodyJointSet:R_,get CoefficientCombineRule(){return bV},CCDSolver:w_,IslandManager:j_,BroadPhase:O_,NarrowPhase:P_,TempContactManifold:T_,Shape:QY,get ShapeType(){return AY},get HeightFieldFlags(){return sk},get TriMeshFlags(){return rk},Ball:TM,HalfSpace:S_,Cuboid:SM,RoundCuboid:kM,Capsule:_M,Segment:vM,Triangle:yM,RoundTriangle:hM,Polyline:gM,Voxels:xM,TriMesh:fM,ConvexPolyhedron:dV,RoundConvexPolyhedron:cV,Heightfield:bM,Cylinder:mM,RoundCylinder:uM,Cone:dM,RoundCone:cM,get ActiveCollisionTypes(){return IM},Collider:NM,get MassPropsMode(){return IW},ColliderDesc:e0,ColliderSet:b_,get FeatureType(){return Z4},Ray:Tt,RayIntersection:pV,RayColliderIntersection:mV,RayColliderHit:PM,PointProjection:iV,PointColliderProjection:uV,ShapeCastHit:U4,ColliderShapeCastHit:nV,ShapeContact:$4,World:lM,PhysicsPipeline:k_,SerializationPipeline:DM,get ActiveEvents(){return KM},TempContactForceEvent:f_,EventQueue:St,get ActiveHooks(){return VM},get SolverFlags(){return ok},DebugRenderBuffers:__,DebugRenderPipeline:v_,get QueryFilterFlags(){return tk},init:NkQ,CharacterCollision:y_,KinematicCharacterController:h_,get PidAxesMask(){return ak},PidController:g_,DynamicRayCastVehicleController:x_});var DW;((H)=>{H[H.BLOCK=1]="BLOCK";H[H.ENTITY=2]="ENTITY";H[H.ENTITY_SENSOR=4]="ENTITY_SENSOR";H[H.ENVIRONMENT_ENTITY=8]="ENVIRONMENT_ENTITY";H[H.PLAYER=16]="PLAYER";H[H.GROUP_1=32]="GROUP_1";H[H.GROUP_2=64]="GROUP_2";H[H.GROUP_3=128]="GROUP_3";H[H.GROUP_4=256]="GROUP_4";H[H.GROUP_5=512]="GROUP_5";H[H.GROUP_6=1024]="GROUP_6";H[H.GROUP_7=2048]="GROUP_7";H[H.GROUP_8=4096]="GROUP_8";H[H.GROUP_9=8192]="GROUP_9";H[H.GROUP_10=16384]="GROUP_10";H[H.GROUP_11=32768]="GROUP_11";H[H.ALL=65535]="ALL"})(DW||={});class $C{static BELONGS_TO_SHIFT=16;static COLLIDES_WITH_MASK=65535;static buildRawCollisionGroups(A){return this.combineGroups(A.belongsTo)<>>this.BELONGS_TO_SHIFT),collidesWith:this.bitsToGroups(A&this.COLLIDES_WITH_MASK)}}static decodeCollisionGroups(A){return{belongsTo:A.belongsTo.map((Q)=>this.groupToName(Q)),collidesWith:A.collidesWith.map((Q)=>this.groupToName(Q))}}static isDefaultCollisionGroups(A){return A.belongsTo.includes(65535)&&A.collidesWith.includes(65535)}static combineGroups(A){return A.reduce((Q,B)=>Q|B,0)}static bitsToGroups(A){if(A===65535)return[65535];return Object.values(DW).filter((Q)=>typeof Q==="number"&&Q!==65535&&(A&Q)!==0)}static groupToName(A){let Q=Object.entries(DW).find(([B,Y])=>Y===A);if(!Q)n.fatalError(`CollisionGroupsBuilder.groupToName(): Unknown collision group: ${A}`);return Q[0]}}var vt=qA(_t(),1);var yt=vt.default;class BQ{static globalInstance=new BQ;_emitter=new yt;_finalListeners={};emit(A,Q){if(this.listenerCount(A)===0)return!1;try{this._emitter.emit(A,Q),this._finalListeners[A]?.(Q)}catch(B){console.error(`EventRouter.emit(): Error emitting event "${A}":`,B)}return!0}emitWithGlobal(A,Q){this.emit(A,Q),BQ.globalInstance.emit(A,Q)}emitWithWorld(A,Q,B){this.emit(Q,B),A.emit(Q,B)}final(A,Q){if(this._finalListeners[A]&&Q!==this._finalListeners[A])return n.error(`EventRouter.final(): Listener for event type "${A}" already exists. It must be removed explicitly with .off() before a different final listener can be set.`);this._finalListeners[A]=Q}hasListeners(A){return this._emitter.listenerCount(A)>0||A in this._finalListeners}listeners(A){return[...this._emitter.listeners(A),...this._finalListeners[A]?[this._finalListeners[A]]:[]]}listenerCount(A){return this._emitter.listenerCount(A)+(this._finalListeners[A]?1:0)}off(A,Q){if(this._emitter.removeListener(A,Q),this._finalListeners[A]===Q)delete this._finalListeners[A]}offAll(A){if(this._emitter.removeAllListeners(A),A)delete this._finalListeners[A];else this._finalListeners={}}on(A,Q){this._emitter.addListener(A,Q)}once(A,Q){this._emitter.once(A,Q)}}import PYB from"crypto";import I8 from"fs";import TYB from"os";import qJ from"path";function BY(A){if(typeof A!=="object"||A===null)return!1;let Q=Object.getPrototypeOf(A);return(Q===null||Q===Object.prototype||Object.getPrototypeOf(Q)===null)&&!(Symbol.toStringTag in A)&&!(Symbol.iterator in A)}import{fileURLToPath as RkQ}from"node:url";var E4=(A,Q)=>{let B=c_(wkQ(A));if(typeof B!=="string")throw TypeError(`${Q} must be a string or a file URL: ${B}.`);return B},wkQ=(A)=>d_(A)?A.toString():A,d_=(A)=>typeof A!=="string"&&A&&Object.getPrototypeOf(A)===String.prototype,c_=(A)=>A instanceof URL?RkQ(A):A;var iM=(A,Q=[],B={})=>{let Y=E4(A,"First argument"),[J,C]=BY(Q)?[[],Q]:[Q,B];if(!Array.isArray(J))throw TypeError(`Second argument must be either an array of arguments or an options object: ${J}`);if(J.some((F)=>typeof F==="object"&&F!==null))throw TypeError(`Second argument must be an array of strings: ${J}`);let X=J.map(String),G=X.find((F)=>F.includes("\x00"));if(G!==void 0)throw TypeError(`Arguments cannot contain null bytes ("\\0"): ${G}`);if(!BY(C))throw TypeError(`Last argument must be an options object: ${C}`);return[Y,X,C]};import{ChildProcess as _kQ}from"node:child_process";import{StringDecoder as jkQ}from"node:string_decoder";var{toString:ht}=Object.prototype,gt=(A)=>ht.call(A)==="[object ArrayBuffer]",RY=(A)=>ht.call(A)==="[object Uint8Array]",m6=(A)=>new Uint8Array(A.buffer,A.byteOffset,A.byteLength),OkQ=new TextEncoder,xt=(A)=>OkQ.encode(A),PkQ=new TextDecoder,nM=(A)=>PkQ.decode(A),ft=(A,Q)=>{return TkQ(A,Q).join("")},TkQ=(A,Q)=>{if(Q==="utf8"&&A.every((C)=>typeof C==="string"))return A;let B=new jkQ(Q),Y=A.map((C)=>typeof C==="string"?xt(C):C).map((C)=>B.write(C)),J=B.end();return J===""?Y:[...Y,J]},rV=(A)=>{if(A.length===1&&RY(A[0]))return A[0];return l_(SkQ(A))},SkQ=(A)=>A.map((Q)=>typeof Q==="string"?xt(Q):Q),l_=(A)=>{let Q=new Uint8Array(kkQ(A)),B=0;for(let Y of A)Q.set(Y,B),B+=Y.length;return Q},kkQ=(A)=>{let Q=0;for(let B of A)Q+=B.length;return Q};var dt=(A)=>Array.isArray(A)&&Array.isArray(A.raw),ct=(A,Q)=>{let B=[];for(let[C,X]of A.entries())B=vkQ({templates:A,expressions:Q,tokens:B,index:C,template:X});if(B.length===0)throw TypeError("Template script must not be empty");let[Y,...J]=B;return[Y,J,{}]},vkQ=({templates:A,expressions:Q,tokens:B,index:Y,template:J})=>{if(J===void 0)throw TypeError(`Invalid backslash sequence: ${A.raw[Y]}`);let{nextTokens:C,leadingWhitespaces:X,trailingWhitespaces:G}=ykQ(J,A.raw[Y]),F=mt(B,C,X);if(Y===Q.length)return F;let W=Q[Y],Z=Array.isArray(W)?W.map((U)=>ut(U)):[ut(W)];return mt(F,Z,G)},ykQ=(A,Q)=>{if(Q.length===0)return{nextTokens:[],leadingWhitespaces:!1,trailingWhitespaces:!1};let B=[],Y=0,J=bt.has(Q[0]);for(let X=0,G=0;XB||A.length===0||Q.length===0?[...A,...Q]:[...A.slice(0,-1),`${A.at(-1)}${Q[0]}`,...Q.slice(1)],ut=(A)=>{let Q=typeof A;if(Q==="string")return A;if(Q==="number")return String(A);if(BY(A)&&(("stdout"in A)||("isMaxBuffer"in A)))return gkQ(A);if(A instanceof _kQ||Object.prototype.toString.call(A)==="[object Promise]")throw TypeError("Unexpected subprocess in template expression. Please use ${await subprocess} instead of ${subprocess}.");throw TypeError(`Unexpected "${Q}" in template expression`)},gkQ=({stdout:A})=>{if(typeof A==="string")return A;if(RY(A))return nM(A);if(A===void 0)throw TypeError(`Missing result.stdout in template expression. This is probably due to the previous subprocess' "stdout" option.`);throw TypeError(`Unexpected "${typeof A}" stdout in template expression`)};import{spawnSync as cgQ}from"node:child_process";import{debuglog as xkQ}from"node:util";import p_ from"node:process";var UC=(A)=>sM.includes(A),sM=[p_.stdin,p_.stdout,p_.stderr],i8=["stdin","stdout","stderr"],rM=(A)=>i8[A]??`stdio[${A}]`;var pt=(A)=>{let Q={...A};for(let B of s_)Q[B]=i_(A,B);return Q},i_=(A,Q)=>{let B=Array.from({length:fkQ(A)+1}),Y=bkQ(A[Q],B,Q);return lkQ(Y,Q)},fkQ=({stdio:A})=>Array.isArray(A)?Math.max(A.length,i8.length):i8.length,bkQ=(A,Q,B)=>BY(A)?mkQ(A,Q,B):Q.fill(A),mkQ=(A,Q,B)=>{for(let Y of Object.keys(A).sort(ukQ))for(let J of dkQ(Y,B,Q))Q[J]=A[Y];return Q},ukQ=(A,Q)=>lt(A){if(A==="stdout"||A==="stderr")return 0;return A==="all"?2:1},dkQ=(A,Q,B)=>{if(A==="ipc")return[B.length-1];let Y=n_(A);if(Y===void 0||Y===0)throw TypeError(`"${Q}.${A}" is invalid. It must be "${Q}.stdout", "${Q}.stderr", "${Q}.all", "${Q}.ipc", or "${Q}.fd3", "${Q}.fd4" (and so on).`);if(Y>=B.length)throw TypeError(`"${Q}.${A}" is invalid: that file descriptor does not exist. -Please set the "stdio" option to ensure that file descriptor exists.`);return Y==="all"?[1,2]:[Y]},bk=(A)=>{if(A==="all")return A;if(l8.includes(A))return l8.indexOf(A);let Q=MkQ.exec(A);if(Q!==null)return Number(Q[1])},MkQ=/^fd(\d+)$/,zkQ=(A,Q)=>A.map((B)=>B===void 0?wkQ[Q]:B),RkQ=IkQ("execa").enabled?"full":"none",wkQ={lines:!1,buffer:!0,maxBuffer:1e8,verbose:RkQ,stripFinalNewline:!0},mk=["lines","buffer","maxBuffer","verbose","stripFinalNewline"],hX=(A,Q)=>Q==="ipc"?A.at(-1):A[Q];var W4=({verbose:A},Q)=>uk(A,Q)!=="none",Z4=({verbose:A},Q)=>!["none","short"].includes(uk(A,Q)),eo=({verbose:A},Q)=>{let B=uk(A,Q);return ZM(B)?B:void 0},uk=(A,Q)=>Q===void 0?jkQ(A):hX(A,Q),jkQ=(A)=>A.find((Q)=>ZM(Q))??$M.findLast((Q)=>A.includes(Q)),ZM=(A)=>typeof A==="function",$M=["none","short","full"];import{inspect as skQ}from"node:util";import{platform as OkQ}from"node:process";import{stripVTControlCharacters as PkQ}from"node:util";var At=(A,Q)=>{let B=[A,...Q],Y=B.join(" "),J=B.map((C)=>ykQ(Qt(C))).join(" ");return{command:Y,escapedCommand:J}},SV=(A)=>PkQ(A).split(` -`).map((Q)=>Qt(Q)).join(` -`),Qt=(A)=>A.replaceAll(kkQ,(Q)=>TkQ(Q)),TkQ=(A)=>{let Q=_kQ[A];if(Q!==void 0)return Q;let B=A.codePointAt(0),Y=B.toString(16);return B<=vkQ?`\\u${Y.padStart(4,"0")}`:`\\U${Y}`},SkQ=()=>{try{return new RegExp("\\p{Separator}|\\p{Other}","gu")}catch{return/[\s\u0000-\u001F\u007F-\u009F\u00AD]/g}},kkQ=SkQ(),_kQ={" ":" ","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r","\t":"\\t"},vkQ=65535,ykQ=(A)=>{if(gkQ.test(A))return A;return OkQ==="win32"?`"${A.replaceAll('"','""')}"`:`'${A.replaceAll("'","'\\''")}'`},gkQ=/^[\w./-]+$/;import Bt from"node:process";function dk(){let{env:A}=Bt,{TERM:Q,TERM_PROGRAM:B}=A;if(Bt.platform!=="win32")return Q!=="linux";return Boolean(A.WT_SESSION)||Boolean(A.TERMINUS_SUBLIME)||A.ConEmuTask==="{cmd::Cmder}"||B==="Terminus-Sublime"||B==="vscode"||Q==="xterm-256color"||Q==="alacritty"||Q==="rxvt-unicode"||Q==="rxvt-unicode-256color"||A.TERMINAL_EMULATOR==="JetBrains-JediTerm"}var Yt={circleQuestionMark:"(?)",questionMarkPrefix:"(?)",square:"█",squareDarkShade:"▓",squareMediumShade:"▒",squareLightShade:"░",squareTop:"▀",squareBottom:"▄",squareLeft:"▌",squareRight:"▐",squareCenter:"■",bullet:"●",dot:"․",ellipsis:"…",pointerSmall:"›",triangleUp:"▲",triangleUpSmall:"▴",triangleDown:"▼",triangleDownSmall:"▾",triangleLeftSmall:"◂",triangleRightSmall:"▸",home:"⌂",heart:"♥",musicNote:"♪",musicNoteBeamed:"♫",arrowUp:"↑",arrowDown:"↓",arrowLeft:"←",arrowRight:"→",arrowLeftRight:"↔",arrowUpDown:"↕",almostEqual:"≈",notEqual:"≠",lessOrEqual:"≤",greaterOrEqual:"≥",identical:"≡",infinity:"∞",subscriptZero:"₀",subscriptOne:"₁",subscriptTwo:"₂",subscriptThree:"₃",subscriptFour:"₄",subscriptFive:"₅",subscriptSix:"₆",subscriptSeven:"₇",subscriptEight:"₈",subscriptNine:"₉",oneHalf:"½",oneThird:"⅓",oneQuarter:"¼",oneFifth:"⅕",oneSixth:"⅙",oneEighth:"⅛",twoThirds:"⅔",twoFifths:"⅖",threeQuarters:"¾",threeFifths:"⅗",threeEighths:"⅜",fourFifths:"⅘",fiveSixths:"⅚",fiveEighths:"⅝",sevenEighths:"⅞",line:"─",lineBold:"━",lineDouble:"═",lineDashed0:"┄",lineDashed1:"┅",lineDashed2:"┈",lineDashed3:"┉",lineDashed4:"╌",lineDashed5:"╍",lineDashed6:"╴",lineDashed7:"╶",lineDashed8:"╸",lineDashed9:"╺",lineDashed10:"╼",lineDashed11:"╾",lineDashed12:"−",lineDashed13:"–",lineDashed14:"‐",lineDashed15:"⁃",lineVertical:"│",lineVerticalBold:"┃",lineVerticalDouble:"║",lineVerticalDashed0:"┆",lineVerticalDashed1:"┇",lineVerticalDashed2:"┊",lineVerticalDashed3:"┋",lineVerticalDashed4:"╎",lineVerticalDashed5:"╏",lineVerticalDashed6:"╵",lineVerticalDashed7:"╷",lineVerticalDashed8:"╹",lineVerticalDashed9:"╻",lineVerticalDashed10:"╽",lineVerticalDashed11:"╿",lineDownLeft:"┐",lineDownLeftArc:"╮",lineDownBoldLeftBold:"┓",lineDownBoldLeft:"┒",lineDownLeftBold:"┑",lineDownDoubleLeftDouble:"╗",lineDownDoubleLeft:"╖",lineDownLeftDouble:"╕",lineDownRight:"┌",lineDownRightArc:"╭",lineDownBoldRightBold:"┏",lineDownBoldRight:"┎",lineDownRightBold:"┍",lineDownDoubleRightDouble:"╔",lineDownDoubleRight:"╓",lineDownRightDouble:"╒",lineUpLeft:"┘",lineUpLeftArc:"╯",lineUpBoldLeftBold:"┛",lineUpBoldLeft:"┚",lineUpLeftBold:"┙",lineUpDoubleLeftDouble:"╝",lineUpDoubleLeft:"╜",lineUpLeftDouble:"╛",lineUpRight:"└",lineUpRightArc:"╰",lineUpBoldRightBold:"┗",lineUpBoldRight:"┖",lineUpRightBold:"┕",lineUpDoubleRightDouble:"╚",lineUpDoubleRight:"╙",lineUpRightDouble:"╘",lineUpDownLeft:"┤",lineUpBoldDownBoldLeftBold:"┫",lineUpBoldDownBoldLeft:"┨",lineUpDownLeftBold:"┥",lineUpBoldDownLeftBold:"┩",lineUpDownBoldLeftBold:"┪",lineUpDownBoldLeft:"┧",lineUpBoldDownLeft:"┦",lineUpDoubleDownDoubleLeftDouble:"╣",lineUpDoubleDownDoubleLeft:"╢",lineUpDownLeftDouble:"╡",lineUpDownRight:"├",lineUpBoldDownBoldRightBold:"┣",lineUpBoldDownBoldRight:"┠",lineUpDownRightBold:"┝",lineUpBoldDownRightBold:"┡",lineUpDownBoldRightBold:"┢",lineUpDownBoldRight:"┟",lineUpBoldDownRight:"┞",lineUpDoubleDownDoubleRightDouble:"╠",lineUpDoubleDownDoubleRight:"╟",lineUpDownRightDouble:"╞",lineDownLeftRight:"┬",lineDownBoldLeftBoldRightBold:"┳",lineDownLeftBoldRightBold:"┯",lineDownBoldLeftRight:"┰",lineDownBoldLeftBoldRight:"┱",lineDownBoldLeftRightBold:"┲",lineDownLeftRightBold:"┮",lineDownLeftBoldRight:"┭",lineDownDoubleLeftDoubleRightDouble:"╦",lineDownDoubleLeftRight:"╥",lineDownLeftDoubleRightDouble:"╤",lineUpLeftRight:"┴",lineUpBoldLeftBoldRightBold:"┻",lineUpLeftBoldRightBold:"┷",lineUpBoldLeftRight:"┸",lineUpBoldLeftBoldRight:"┹",lineUpBoldLeftRightBold:"┺",lineUpLeftRightBold:"┶",lineUpLeftBoldRight:"┵",lineUpDoubleLeftDoubleRightDouble:"╩",lineUpDoubleLeftRight:"╨",lineUpLeftDoubleRightDouble:"╧",lineUpDownLeftRight:"┼",lineUpBoldDownBoldLeftBoldRightBold:"╋",lineUpDownBoldLeftBoldRightBold:"╈",lineUpBoldDownLeftBoldRightBold:"╇",lineUpBoldDownBoldLeftRightBold:"╊",lineUpBoldDownBoldLeftBoldRight:"╉",lineUpBoldDownLeftRight:"╀",lineUpDownBoldLeftRight:"╁",lineUpDownLeftBoldRight:"┽",lineUpDownLeftRightBold:"┾",lineUpBoldDownBoldLeftRight:"╂",lineUpDownLeftBoldRightBold:"┿",lineUpBoldDownLeftBoldRight:"╃",lineUpBoldDownLeftRightBold:"╄",lineUpDownBoldLeftBoldRight:"╅",lineUpDownBoldLeftRightBold:"╆",lineUpDoubleDownDoubleLeftDoubleRightDouble:"╬",lineUpDoubleDownDoubleLeftRight:"╫",lineUpDownLeftDoubleRightDouble:"╪",lineCross:"╳",lineBackslash:"╲",lineSlash:"╱"},Jt={tick:"✔",info:"ℹ",warning:"⚠",cross:"✘",squareSmall:"◻",squareSmallFilled:"◼",circle:"◯",circleFilled:"◉",circleDotted:"◌",circleDouble:"◎",circleCircle:"ⓞ",circleCross:"ⓧ",circlePipe:"Ⓘ",radioOn:"◉",radioOff:"◯",checkboxOn:"☒",checkboxOff:"☐",checkboxCircleOn:"ⓧ",checkboxCircleOff:"Ⓘ",pointer:"❯",triangleUpOutline:"△",triangleLeft:"◀",triangleRight:"▶",lozenge:"◆",lozengeOutline:"◇",hamburger:"☰",smiley:"㋡",mustache:"෴",star:"★",play:"▶",nodejs:"⬢",oneSeventh:"⅐",oneNinth:"⅑",oneTenth:"⅒"},hkQ={tick:"√",info:"i",warning:"‼",cross:"×",squareSmall:"□",squareSmallFilled:"■",circle:"( )",circleFilled:"(*)",circleDotted:"( )",circleDouble:"( )",circleCircle:"(○)",circleCross:"(×)",circlePipe:"(│)",radioOn:"(*)",radioOff:"( )",checkboxOn:"[×]",checkboxOff:"[ ]",checkboxCircleOn:"(×)",checkboxCircleOff:"( )",pointer:">",triangleUpOutline:"∆",triangleLeft:"◄",triangleRight:"►",lozenge:"♦",lozengeOutline:"◊",hamburger:"≡",smiley:"☺",mustache:"┌─┐",star:"✶",play:"►",nodejs:"♦",oneSeventh:"1/7",oneNinth:"1/9",oneTenth:"1/10"},xkQ={...Yt,...Jt},fkQ={...Yt,...hkQ},bkQ=dk(),mkQ=bkQ?xkQ:fkQ,UM=mkQ,Zt0=Object.entries(Jt);import ukQ from"node:tty";var dkQ=ukQ?.WriteStream?.prototype?.hasColors?.()??!1,rQ=(A,Q)=>{if(!dkQ)return(J)=>J;let B=`\x1B[${A}m`,Y=`\x1B[${Q}m`;return(J)=>{let C=J+"",X=C.indexOf(Y);if(X===-1)return B+C+Y;let G=B,F=0;while(X!==-1)G+=C.slice(F,X)+B,F=X+Y.length,X=C.indexOf(Y,F);return G+=C.slice(F)+Y,G}},Et0=rQ(0,0),Ct=rQ(1,22),Kt0=rQ(2,22),Vt0=rQ(3,23),It0=rQ(4,24),Ht0=rQ(53,55),Dt0=rQ(7,27),Nt0=rQ(8,28),Lt0=rQ(9,29),qt0=rQ(30,39),Mt0=rQ(31,39),zt0=rQ(32,39),Rt0=rQ(33,39),wt0=rQ(34,39),jt0=rQ(35,39),Ot0=rQ(36,39),Pt0=rQ(37,39),EM=rQ(90,39),Tt0=rQ(40,49),St0=rQ(41,49),kt0=rQ(42,49),_t0=rQ(43,49),vt0=rQ(44,49),yt0=rQ(45,49),gt0=rQ(46,49),ht0=rQ(47,49),xt0=rQ(100,49),Xt=rQ(91,39),ft0=rQ(92,39),Gt=rQ(93,39),bt0=rQ(94,39),mt0=rQ(95,39),ut0=rQ(96,39),dt0=rQ(97,39),ct0=rQ(101,49),lt0=rQ(102,49),pt0=rQ(103,49),it0=rQ(104,49),nt0=rQ(105,49),st0=rQ(106,49),rt0=rQ(107,49);var Zt=({type:A,message:Q,timestamp:B,piped:Y,commandId:J,result:{failed:C=!1}={},options:{reject:X=!0}})=>{let G=ckQ(B),F=lkQ[A]({failed:C,reject:X,piped:Y}),W=pkQ[A]({reject:X});return`${EM(`[${G}]`)} ${EM(`[${J}]`)} ${W(F)} ${W(Q)}`},ckQ=(A)=>`${KM(A.getHours(),2)}:${KM(A.getMinutes(),2)}:${KM(A.getSeconds(),2)}.${KM(A.getMilliseconds(),3)}`,KM=(A,Q)=>String(A).padStart(Q,"0"),Ft=({failed:A,reject:Q})=>{if(!A)return UM.tick;return Q?UM.cross:UM.warning},lkQ={command:({piped:A})=>A?"|":"$",output:()=>" ",ipc:()=>"*",error:Ft,duration:Ft},Wt=(A)=>A,pkQ={command:()=>Ct,output:()=>Wt,ipc:()=>Wt,error:({reject:A})=>A?Xt:Gt,duration:()=>EM};var $t=(A,Q,B)=>{let Y=eo(Q,B);return A.map(({verboseLine:J,verboseObject:C})=>ikQ(J,C,Y)).filter((J)=>J!==void 0).map((J)=>nkQ(J)).join("")},ikQ=(A,Q,B)=>{if(B===void 0)return A;let Y=B(A,Q);if(typeof Y==="string")return Y},nkQ=(A)=>A.endsWith(` +Please set the "stdio" option to ensure that file descriptor exists.`);return Y==="all"?[1,2]:[Y]},n_=(A)=>{if(A==="all")return A;if(i8.includes(A))return i8.indexOf(A);let Q=ckQ.exec(A);if(Q!==null)return Number(Q[1])},ckQ=/^fd(\d+)$/,lkQ=(A,Q)=>A.map((B)=>B===void 0?ikQ[Q]:B),pkQ=xkQ("execa").enabled?"full":"none",ikQ={lines:!1,buffer:!0,maxBuffer:1e8,verbose:pkQ,stripFinalNewline:!0},s_=["lines","buffer","maxBuffer","verbose","stripFinalNewline"],u6=(A,Q)=>Q==="ipc"?A.at(-1):A[Q];var K4=({verbose:A},Q)=>r_(A,Q)!=="none",V4=({verbose:A},Q)=>!["none","short"].includes(r_(A,Q)),it=({verbose:A},Q)=>{let B=r_(A,Q);return aM(B)?B:void 0},r_=(A,Q)=>Q===void 0?nkQ(A):u6(A,Q),nkQ=(A)=>A.find((Q)=>aM(Q))??oM.findLast((Q)=>A.includes(Q)),aM=(A)=>typeof A==="function",oM=["none","short","full"];import{inspect as V_Q}from"node:util";import{platform as skQ}from"node:process";import{stripVTControlCharacters as rkQ}from"node:util";var nt=(A,Q)=>{let B=[A,...Q],Y=B.join(" "),J=B.map((C)=>Q_Q(st(C))).join(" ");return{command:Y,escapedCommand:J}},aV=(A)=>rkQ(A).split(` +`).map((Q)=>st(Q)).join(` +`),st=(A)=>A.replaceAll(tkQ,(Q)=>akQ(Q)),akQ=(A)=>{let Q=ekQ[A];if(Q!==void 0)return Q;let B=A.codePointAt(0),Y=B.toString(16);return B<=A_Q?`\\u${Y.padStart(4,"0")}`:`\\U${Y}`},okQ=()=>{try{return new RegExp("\\p{Separator}|\\p{Other}","gu")}catch{return/[\s\u0000-\u001F\u007F-\u009F\u00AD]/g}},tkQ=okQ(),ekQ={" ":" ","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r","\t":"\\t"},A_Q=65535,Q_Q=(A)=>{if(B_Q.test(A))return A;return skQ==="win32"?`"${A.replaceAll('"','""')}"`:`'${A.replaceAll("'","'\\''")}'`},B_Q=/^[\w./-]+$/;import rt from"node:process";function a_(){let{env:A}=rt,{TERM:Q,TERM_PROGRAM:B}=A;if(rt.platform!=="win32")return Q!=="linux";return Boolean(A.WT_SESSION)||Boolean(A.TERMINUS_SUBLIME)||A.ConEmuTask==="{cmd::Cmder}"||B==="Terminus-Sublime"||B==="vscode"||Q==="xterm-256color"||Q==="alacritty"||Q==="rxvt-unicode"||Q==="rxvt-unicode-256color"||A.TERMINAL_EMULATOR==="JetBrains-JediTerm"}var at={circleQuestionMark:"(?)",questionMarkPrefix:"(?)",square:"█",squareDarkShade:"▓",squareMediumShade:"▒",squareLightShade:"░",squareTop:"▀",squareBottom:"▄",squareLeft:"▌",squareRight:"▐",squareCenter:"■",bullet:"●",dot:"․",ellipsis:"…",pointerSmall:"›",triangleUp:"▲",triangleUpSmall:"▴",triangleDown:"▼",triangleDownSmall:"▾",triangleLeftSmall:"◂",triangleRightSmall:"▸",home:"⌂",heart:"♥",musicNote:"♪",musicNoteBeamed:"♫",arrowUp:"↑",arrowDown:"↓",arrowLeft:"←",arrowRight:"→",arrowLeftRight:"↔",arrowUpDown:"↕",almostEqual:"≈",notEqual:"≠",lessOrEqual:"≤",greaterOrEqual:"≥",identical:"≡",infinity:"∞",subscriptZero:"₀",subscriptOne:"₁",subscriptTwo:"₂",subscriptThree:"₃",subscriptFour:"₄",subscriptFive:"₅",subscriptSix:"₆",subscriptSeven:"₇",subscriptEight:"₈",subscriptNine:"₉",oneHalf:"½",oneThird:"⅓",oneQuarter:"¼",oneFifth:"⅕",oneSixth:"⅙",oneEighth:"⅛",twoThirds:"⅔",twoFifths:"⅖",threeQuarters:"¾",threeFifths:"⅗",threeEighths:"⅜",fourFifths:"⅘",fiveSixths:"⅚",fiveEighths:"⅝",sevenEighths:"⅞",line:"─",lineBold:"━",lineDouble:"═",lineDashed0:"┄",lineDashed1:"┅",lineDashed2:"┈",lineDashed3:"┉",lineDashed4:"╌",lineDashed5:"╍",lineDashed6:"╴",lineDashed7:"╶",lineDashed8:"╸",lineDashed9:"╺",lineDashed10:"╼",lineDashed11:"╾",lineDashed12:"−",lineDashed13:"–",lineDashed14:"‐",lineDashed15:"⁃",lineVertical:"│",lineVerticalBold:"┃",lineVerticalDouble:"║",lineVerticalDashed0:"┆",lineVerticalDashed1:"┇",lineVerticalDashed2:"┊",lineVerticalDashed3:"┋",lineVerticalDashed4:"╎",lineVerticalDashed5:"╏",lineVerticalDashed6:"╵",lineVerticalDashed7:"╷",lineVerticalDashed8:"╹",lineVerticalDashed9:"╻",lineVerticalDashed10:"╽",lineVerticalDashed11:"╿",lineDownLeft:"┐",lineDownLeftArc:"╮",lineDownBoldLeftBold:"┓",lineDownBoldLeft:"┒",lineDownLeftBold:"┑",lineDownDoubleLeftDouble:"╗",lineDownDoubleLeft:"╖",lineDownLeftDouble:"╕",lineDownRight:"┌",lineDownRightArc:"╭",lineDownBoldRightBold:"┏",lineDownBoldRight:"┎",lineDownRightBold:"┍",lineDownDoubleRightDouble:"╔",lineDownDoubleRight:"╓",lineDownRightDouble:"╒",lineUpLeft:"┘",lineUpLeftArc:"╯",lineUpBoldLeftBold:"┛",lineUpBoldLeft:"┚",lineUpLeftBold:"┙",lineUpDoubleLeftDouble:"╝",lineUpDoubleLeft:"╜",lineUpLeftDouble:"╛",lineUpRight:"└",lineUpRightArc:"╰",lineUpBoldRightBold:"┗",lineUpBoldRight:"┖",lineUpRightBold:"┕",lineUpDoubleRightDouble:"╚",lineUpDoubleRight:"╙",lineUpRightDouble:"╘",lineUpDownLeft:"┤",lineUpBoldDownBoldLeftBold:"┫",lineUpBoldDownBoldLeft:"┨",lineUpDownLeftBold:"┥",lineUpBoldDownLeftBold:"┩",lineUpDownBoldLeftBold:"┪",lineUpDownBoldLeft:"┧",lineUpBoldDownLeft:"┦",lineUpDoubleDownDoubleLeftDouble:"╣",lineUpDoubleDownDoubleLeft:"╢",lineUpDownLeftDouble:"╡",lineUpDownRight:"├",lineUpBoldDownBoldRightBold:"┣",lineUpBoldDownBoldRight:"┠",lineUpDownRightBold:"┝",lineUpBoldDownRightBold:"┡",lineUpDownBoldRightBold:"┢",lineUpDownBoldRight:"┟",lineUpBoldDownRight:"┞",lineUpDoubleDownDoubleRightDouble:"╠",lineUpDoubleDownDoubleRight:"╟",lineUpDownRightDouble:"╞",lineDownLeftRight:"┬",lineDownBoldLeftBoldRightBold:"┳",lineDownLeftBoldRightBold:"┯",lineDownBoldLeftRight:"┰",lineDownBoldLeftBoldRight:"┱",lineDownBoldLeftRightBold:"┲",lineDownLeftRightBold:"┮",lineDownLeftBoldRight:"┭",lineDownDoubleLeftDoubleRightDouble:"╦",lineDownDoubleLeftRight:"╥",lineDownLeftDoubleRightDouble:"╤",lineUpLeftRight:"┴",lineUpBoldLeftBoldRightBold:"┻",lineUpLeftBoldRightBold:"┷",lineUpBoldLeftRight:"┸",lineUpBoldLeftBoldRight:"┹",lineUpBoldLeftRightBold:"┺",lineUpLeftRightBold:"┶",lineUpLeftBoldRight:"┵",lineUpDoubleLeftDoubleRightDouble:"╩",lineUpDoubleLeftRight:"╨",lineUpLeftDoubleRightDouble:"╧",lineUpDownLeftRight:"┼",lineUpBoldDownBoldLeftBoldRightBold:"╋",lineUpDownBoldLeftBoldRightBold:"╈",lineUpBoldDownLeftBoldRightBold:"╇",lineUpBoldDownBoldLeftRightBold:"╊",lineUpBoldDownBoldLeftBoldRight:"╉",lineUpBoldDownLeftRight:"╀",lineUpDownBoldLeftRight:"╁",lineUpDownLeftBoldRight:"┽",lineUpDownLeftRightBold:"┾",lineUpBoldDownBoldLeftRight:"╂",lineUpDownLeftBoldRightBold:"┿",lineUpBoldDownLeftBoldRight:"╃",lineUpBoldDownLeftRightBold:"╄",lineUpDownBoldLeftBoldRight:"╅",lineUpDownBoldLeftRightBold:"╆",lineUpDoubleDownDoubleLeftDoubleRightDouble:"╬",lineUpDoubleDownDoubleLeftRight:"╫",lineUpDownLeftDoubleRightDouble:"╪",lineCross:"╳",lineBackslash:"╲",lineSlash:"╱"},ot={tick:"✔",info:"ℹ",warning:"⚠",cross:"✘",squareSmall:"◻",squareSmallFilled:"◼",circle:"◯",circleFilled:"◉",circleDotted:"◌",circleDouble:"◎",circleCircle:"ⓞ",circleCross:"ⓧ",circlePipe:"Ⓘ",radioOn:"◉",radioOff:"◯",checkboxOn:"☒",checkboxOff:"☐",checkboxCircleOn:"ⓧ",checkboxCircleOff:"Ⓘ",pointer:"❯",triangleUpOutline:"△",triangleLeft:"◀",triangleRight:"▶",lozenge:"◆",lozengeOutline:"◇",hamburger:"☰",smiley:"㋡",mustache:"෴",star:"★",play:"▶",nodejs:"⬢",oneSeventh:"⅐",oneNinth:"⅑",oneTenth:"⅒"},Y_Q={tick:"√",info:"i",warning:"‼",cross:"×",squareSmall:"□",squareSmallFilled:"■",circle:"( )",circleFilled:"(*)",circleDotted:"( )",circleDouble:"( )",circleCircle:"(○)",circleCross:"(×)",circlePipe:"(│)",radioOn:"(*)",radioOff:"( )",checkboxOn:"[×]",checkboxOff:"[ ]",checkboxCircleOn:"(×)",checkboxCircleOff:"( )",pointer:">",triangleUpOutline:"∆",triangleLeft:"◄",triangleRight:"►",lozenge:"♦",lozengeOutline:"◊",hamburger:"≡",smiley:"☺",mustache:"┌─┐",star:"✶",play:"►",nodejs:"♦",oneSeventh:"1/7",oneNinth:"1/9",oneTenth:"1/10"},J_Q={...at,...ot},C_Q={...at,...Y_Q},X_Q=a_(),G_Q=X_Q?J_Q:C_Q,tM=G_Q,Dt0=Object.entries(ot);import F_Q from"node:tty";var W_Q=F_Q?.WriteStream?.prototype?.hasColors?.()??!1,rQ=(A,Q)=>{if(!W_Q)return(J)=>J;let B=`\x1B[${A}m`,Y=`\x1B[${Q}m`;return(J)=>{let C=J+"",X=C.indexOf(Y);if(X===-1)return B+C+Y;let G=B,F=0;while(X!==-1)G+=C.slice(F,X)+B,F=X+Y.length,X=C.indexOf(Y,F);return G+=C.slice(F)+Y,G}},qt0=rQ(0,0),tt=rQ(1,22),Mt0=rQ(2,22),zt0=rQ(3,23),Rt0=rQ(4,24),wt0=rQ(53,55),jt0=rQ(7,27),Ot0=rQ(8,28),Pt0=rQ(9,29),Tt0=rQ(30,39),St0=rQ(31,39),kt0=rQ(32,39),_t0=rQ(33,39),vt0=rQ(34,39),yt0=rQ(35,39),ht0=rQ(36,39),gt0=rQ(37,39),eM=rQ(90,39),xt0=rQ(40,49),ft0=rQ(41,49),bt0=rQ(42,49),mt0=rQ(43,49),ut0=rQ(44,49),dt0=rQ(45,49),ct0=rQ(46,49),lt0=rQ(47,49),pt0=rQ(100,49),et=rQ(91,39),it0=rQ(92,39),Ae=rQ(93,39),nt0=rQ(94,39),st0=rQ(95,39),rt0=rQ(96,39),at0=rQ(97,39),ot0=rQ(101,49),tt0=rQ(102,49),et0=rQ(103,49),Ae0=rQ(104,49),Qe0=rQ(105,49),Be0=rQ(106,49),Ye0=rQ(107,49);var Ye=({type:A,message:Q,timestamp:B,piped:Y,commandId:J,result:{failed:C=!1}={},options:{reject:X=!0}})=>{let G=Z_Q(B),F=$_Q[A]({failed:C,reject:X,piped:Y}),W=U_Q[A]({reject:X});return`${eM(`[${G}]`)} ${eM(`[${J}]`)} ${W(F)} ${W(Q)}`},Z_Q=(A)=>`${Az(A.getHours(),2)}:${Az(A.getMinutes(),2)}:${Az(A.getSeconds(),2)}.${Az(A.getMilliseconds(),3)}`,Az=(A,Q)=>String(A).padStart(Q,"0"),Qe=({failed:A,reject:Q})=>{if(!A)return tM.tick;return Q?tM.cross:tM.warning},$_Q={command:({piped:A})=>A?"|":"$",output:()=>" ",ipc:()=>"*",error:Qe,duration:Qe},Be=(A)=>A,U_Q={command:()=>tt,output:()=>Be,ipc:()=>Be,error:({reject:A})=>A?et:Ae,duration:()=>eM};var Je=(A,Q,B)=>{let Y=it(Q,B);return A.map(({verboseLine:J,verboseObject:C})=>E_Q(J,C,Y)).filter((J)=>J!==void 0).map((J)=>K_Q(J)).join("")},E_Q=(A,Q,B)=>{if(B===void 0)return A;let Y=B(A,Q);if(typeof Y==="string")return Y},K_Q=(A)=>A.endsWith(` `)?A:`${A} -`;var V1=({type:A,verboseMessage:Q,fdNumber:B,verboseInfo:Y,result:J})=>{let C=rkQ({type:A,result:J,verboseInfo:Y}),X=akQ(Q,C),G=$t(X,Y,B);if(G!=="")console.warn(G.slice(0,-1))},rkQ=({type:A,result:Q,verboseInfo:{escapedCommand:B,commandId:Y,rawOptions:{piped:J=!1,...C}}})=>({type:A,escapedCommand:B,commandId:`${Y}`,timestamp:new Date,piped:J,result:Q,options:C}),akQ=(A,Q)=>A.split(` -`).map((B)=>okQ({...Q,message:B})),okQ=(A)=>{return{verboseLine:Zt(A),verboseObject:A}},VM=(A)=>{let Q=typeof A==="string"?A:skQ(A);return SV(Q).replaceAll("\t"," ".repeat(tkQ))},tkQ=2;var Ut=(A,Q)=>{if(!W4(Q))return;V1({type:"command",verboseMessage:A,verboseInfo:Q})};var Et=(A,Q,B)=>{Q_Q(A);let Y=ekQ(A);return{verbose:A,escapedCommand:Q,commandId:Y,rawOptions:B}},ekQ=(A)=>W4({verbose:A})?A_Q++:void 0,A_Q=0n,Q_Q=(A)=>{for(let Q of A){if(Q===!1)throw TypeError(`The "verbose: false" option was renamed to "verbose: 'none'".`);if(Q===!0)throw TypeError(`The "verbose: true" option was renamed to "verbose: 'short'".`);if(!$M.includes(Q)&&!ZM(Q)){let B=$M.map((Y)=>`'${Y}'`).join(", ");throw TypeError(`The "verbose" option must not be ${Q}. Allowed values are: ${B} or a function.`)}}};import{hrtime as Kt}from"node:process";var IM=()=>Kt.bigint(),ck=(A)=>Number(Kt.bigint()-A)/1e6;var HM=(A,Q,B)=>{let Y=IM(),{command:J,escapedCommand:C}=At(A,Q),X=fk(B,"verbose"),G=Et(X,C,{...B});return Ut(C,G),{command:J,escapedCommand:C,startTime:Y,verboseInfo:G}};var UAA=qA(Be(),1);import uvQ from"node:path";import $AA from"node:process";import qM from"node:process";import VW from"node:path";function NM(A={}){let{env:Q=process.env,platform:B=process.platform}=A;if(B!=="win32")return"PATH";return Object.keys(Q).reverse().find((Y)=>Y.toUpperCase()==="PATH")||"Path"}import{promisify as k_Q}from"node:util";import{execFile as __Q,execFileSync as he0}from"node:child_process";import Ye from"node:path";import{fileURLToPath as v_Q}from"node:url";var be0=k_Q(__Q);function LM(A){return A instanceof URL?v_Q(A):A}function Je(A){return{*[Symbol.iterator](){let Q=Ye.resolve(LM(A)),B;while(B!==Q)yield Q,B=Q,Q=Ye.resolve(Q,"..")}}}var y_Q=({cwd:A=qM.cwd(),path:Q=qM.env[NM()],preferLocal:B=!0,execPath:Y=qM.execPath,addExecPath:J=!0}={})=>{let C=VW.resolve(LM(A)),X=[],G=Q.split(VW.delimiter);if(B)g_Q(X,G,C);if(J)h_Q(X,G,Y,C);return Q===""||Q===VW.delimiter?`${X.join(VW.delimiter)}${Q}`:[...X,Q].join(VW.delimiter)},g_Q=(A,Q,B)=>{for(let Y of Je(B)){let J=VW.join(Y,"node_modules/.bin");if(!Q.includes(J))A.push(J)}},h_Q=(A,Q,B,Y)=>{let J=VW.resolve(Y,LM(B),"..");if(!Q.includes(J))A.push(J)},Ce=({env:A=qM.env,...Q}={})=>{A={...A};let B=NM({env:A});return Q.path=A[B],A[B]=y_Q(Q),A};import{setTimeout as o_Q}from"node:timers/promises";var Xe=(A,Q,B)=>{let Y=B?zM:MM,J=A instanceof I1?{}:{cause:A};return new Y(Q,J)};class I1 extends Error{}var Ge=(A,Q)=>{Object.defineProperty(A.prototype,"name",{value:Q,writable:!0,enumerable:!1,configurable:!0}),Object.defineProperty(A.prototype,We,{value:!0,writable:!1,enumerable:!1,configurable:!1})},Fe=(A)=>RM(A)&&(We in A),We=Symbol("isExecaError"),RM=(A)=>Object.prototype.toString.call(A)==="[object Error]";class MM extends Error{}Ge(MM,MM.name);class zM extends Error{}Ge(zM,zM.name);import{constants as kV}from"node:os";import{constants as m_Q}from"node:os";var Ze=()=>{let A=ek-$e+1;return Array.from({length:A},x_Q)},x_Q=(A,Q)=>({name:`SIGRT${Q+1}`,number:$e+Q,action:"terminate",description:"Application-specific signal (realtime)",standard:"posix"}),$e=34,ek=64;import{constants as f_Q}from"node:os";var Ue=[{name:"SIGHUP",number:1,action:"terminate",description:"Terminal closed",standard:"posix"},{name:"SIGINT",number:2,action:"terminate",description:"User interruption with CTRL-C",standard:"ansi"},{name:"SIGQUIT",number:3,action:"core",description:"User interruption with CTRL-\\",standard:"posix"},{name:"SIGILL",number:4,action:"core",description:"Invalid machine instruction",standard:"ansi"},{name:"SIGTRAP",number:5,action:"core",description:"Debugger breakpoint",standard:"posix"},{name:"SIGABRT",number:6,action:"core",description:"Aborted",standard:"ansi"},{name:"SIGIOT",number:6,action:"core",description:"Aborted",standard:"bsd"},{name:"SIGBUS",number:7,action:"core",description:"Bus error due to misaligned, non-existing address or paging error",standard:"bsd"},{name:"SIGEMT",number:7,action:"terminate",description:"Command should be emulated but is not implemented",standard:"other"},{name:"SIGFPE",number:8,action:"core",description:"Floating point arithmetic error",standard:"ansi"},{name:"SIGKILL",number:9,action:"terminate",description:"Forced termination",standard:"posix",forced:!0},{name:"SIGUSR1",number:10,action:"terminate",description:"Application-specific signal",standard:"posix"},{name:"SIGSEGV",number:11,action:"core",description:"Segmentation fault",standard:"ansi"},{name:"SIGUSR2",number:12,action:"terminate",description:"Application-specific signal",standard:"posix"},{name:"SIGPIPE",number:13,action:"terminate",description:"Broken pipe or socket",standard:"posix"},{name:"SIGALRM",number:14,action:"terminate",description:"Timeout or timer",standard:"posix"},{name:"SIGTERM",number:15,action:"terminate",description:"Termination",standard:"ansi"},{name:"SIGSTKFLT",number:16,action:"terminate",description:"Stack is empty or overflowed",standard:"other"},{name:"SIGCHLD",number:17,action:"ignore",description:"Child process terminated, paused or unpaused",standard:"posix"},{name:"SIGCLD",number:17,action:"ignore",description:"Child process terminated, paused or unpaused",standard:"other"},{name:"SIGCONT",number:18,action:"unpause",description:"Unpaused",standard:"posix",forced:!0},{name:"SIGSTOP",number:19,action:"pause",description:"Paused",standard:"posix",forced:!0},{name:"SIGTSTP",number:20,action:"pause",description:'Paused using CTRL-Z or "suspend"',standard:"posix"},{name:"SIGTTIN",number:21,action:"pause",description:"Background process cannot read terminal input",standard:"posix"},{name:"SIGBREAK",number:21,action:"terminate",description:"User interruption with CTRL-BREAK",standard:"other"},{name:"SIGTTOU",number:22,action:"pause",description:"Background process cannot write to terminal output",standard:"posix"},{name:"SIGURG",number:23,action:"ignore",description:"Socket received out-of-band data",standard:"bsd"},{name:"SIGXCPU",number:24,action:"core",description:"Process timed out",standard:"bsd"},{name:"SIGXFSZ",number:25,action:"core",description:"File too big",standard:"bsd"},{name:"SIGVTALRM",number:26,action:"terminate",description:"Timeout or timer",standard:"bsd"},{name:"SIGPROF",number:27,action:"terminate",description:"Timeout or timer",standard:"bsd"},{name:"SIGWINCH",number:28,action:"ignore",description:"Terminal window size changed",standard:"bsd"},{name:"SIGIO",number:29,action:"terminate",description:"I/O is available",standard:"other"},{name:"SIGPOLL",number:29,action:"terminate",description:"Watched event",standard:"other"},{name:"SIGINFO",number:29,action:"ignore",description:"Request for process information",standard:"other"},{name:"SIGPWR",number:30,action:"terminate",description:"Device running out of power",standard:"systemv"},{name:"SIGSYS",number:31,action:"core",description:"Invalid system call",standard:"other"},{name:"SIGUNUSED",number:31,action:"terminate",description:"Invalid system call",standard:"other"}];var A_=()=>{let A=Ze();return[...Ue,...A].map(b_Q)},b_Q=({name:A,number:Q,description:B,action:Y,forced:J=!1,standard:C})=>{let{signals:{[A]:X}}=f_Q,G=X!==void 0;return{name:A,number:G?X:Q,description:B,supported:G,action:Y,forced:J,standard:C}};var u_Q=()=>{let A=A_();return Object.fromEntries(A.map(d_Q))},d_Q=({name:A,number:Q,description:B,supported:Y,action:J,forced:C,standard:X})=>[A,{name:A,number:Q,description:B,supported:Y,action:J,forced:C,standard:X}],Ee=u_Q(),c_Q=()=>{let A=A_(),Q=ek+1,B=Array.from({length:Q},(Y,J)=>l_Q(J,A));return Object.assign({},...B)},l_Q=(A,Q)=>{let B=p_Q(A,Q);if(B===void 0)return{};let{name:Y,description:J,supported:C,action:X,forced:G,standard:F}=B;return{[A]:{name:Y,number:A,description:J,supported:C,action:X,forced:G,standard:F}}},p_Q=(A,Q)=>{let B=Q.find(({name:Y})=>m_Q.signals[Y]===A);if(B!==void 0)return B;return Q.find((Y)=>Y.number===A)},YAY=c_Q();var Ve=(A)=>{if(A===0)throw TypeError("Invalid option `killSignal`: 0 cannot be used.");return He(A,"option `killSignal`")},Ie=(A)=>A===0?A:He(A,"`subprocess.kill()`'s argument"),He=(A,Q)=>{if(Number.isInteger(A))return i_Q(A,Q);if(typeof A==="string")return s_Q(A,Q);throw TypeError(`Invalid ${Q} ${String(A)}: it must be a string or an integer. -${Q_()}`)},i_Q=(A,Q)=>{if(Ke.has(A))return Ke.get(A);throw TypeError(`Invalid ${Q} ${A}: this signal integer does not exist. -${Q_()}`)},n_Q=()=>new Map(Object.entries(kV.signals).reverse().map(([A,Q])=>[Q,A])),Ke=n_Q(),s_Q=(A,Q)=>{if(A in kV.signals)return A;if(A.toUpperCase()in kV.signals)throw TypeError(`Invalid ${Q} '${A}': please rename it to '${A.toUpperCase()}'.`);throw TypeError(`Invalid ${Q} '${A}': this signal name does not exist. -${Q_()}`)},Q_=()=>`Available signal names: ${r_Q()}. -Available signal numbers: ${a_Q()}.`,r_Q=()=>Object.keys(kV.signals).sort().map((A)=>`'${A}'`).join(", "),a_Q=()=>[...new Set(Object.values(kV.signals).sort((A,Q)=>A-Q))].join(", "),wM=(A)=>Ee[A].description;var De=(A)=>{if(A===!1)return A;if(A===!0)return t_Q;if(!Number.isFinite(A)||A<0)throw TypeError(`Expected the \`forceKillAfterDelay\` option to be a non-negative integer, got \`${A}\` (${typeof A})`);return A},t_Q=5000,Ne=({kill:A,options:{forceKillAfterDelay:Q,killSignal:B},onInternalError:Y,context:J,controller:C},X,G)=>{let{signal:F,error:W}=e_Q(X,G,B);AvQ(W,Y);let Z=A(F);return QvQ({kill:A,signal:F,forceKillAfterDelay:Q,killSignal:B,killResult:Z,context:J,controller:C}),Z},e_Q=(A,Q,B)=>{let[Y=B,J]=RM(A)?[void 0,A]:[A,Q];if(typeof Y!=="string"&&!Number.isInteger(Y))throw TypeError(`The first argument must be an error instance or a signal name string/integer: ${String(Y)}`);if(J!==void 0&&!RM(J))throw TypeError(`The second argument is optional. If specified, it must be an error instance: ${J}`);return{signal:Ie(Y),error:J}},AvQ=(A,Q)=>{if(A!==void 0)Q.reject(A)},QvQ=async({kill:A,signal:Q,forceKillAfterDelay:B,killSignal:Y,killResult:J,context:C,controller:X})=>{if(Q===Y&&J)B_({kill:A,forceKillAfterDelay:B,context:C,controllerSignal:X.signal})},B_=async({kill:A,forceKillAfterDelay:Q,context:B,controllerSignal:Y})=>{if(Q===!1)return;try{if(await o_Q(Q,void 0,{signal:Y}),A("SIGKILL"))B.isForcefullyTerminated??=!0}catch{}};import{once as BvQ}from"node:events";var jM=async(A,Q)=>{if(!A.aborted)await BvQ(A,"abort",{signal:Q})};var Le=({cancelSignal:A})=>{if(A!==void 0&&Object.prototype.toString.call(A)!=="[object AbortSignal]")throw Error(`The \`cancelSignal\` option must be an AbortSignal: ${String(A)}`)},qe=({subprocess:A,cancelSignal:Q,gracefulCancel:B,context:Y,controller:J})=>Q===void 0||B?[]:[YvQ(A,Q,Y,J)],YvQ=async(A,Q,B,{signal:Y})=>{throw await jM(Q,Y),B.terminationReason??="cancel",A.kill(),Q.reason};import{scheduler as RvQ}from"node:timers/promises";import{promisify as qvQ}from"node:util";var E4=({methodName:A,isSubprocess:Q,ipc:B,isConnected:Y})=>{JvQ(A,Q,B),Y_(A,Q,Y)},JvQ=(A,Q,B)=>{if(!B)throw Error(`${FC(A,Q)} can only be used if the \`ipc\` option is \`true\`.`)},Y_=(A,Q,B)=>{if(!B)throw Error(`${FC(A,Q)} cannot be used: the ${f6(Q)} has already exited or disconnected.`)},Me=(A)=>{throw Error(`${FC("getOneMessage",A)} could not complete: the ${f6(A)} exited or disconnected.`)},ze=(A)=>{throw Error(`${FC("sendMessage",A)} failed: the ${f6(A)} is sending a message too, instead of listening to incoming messages. +`;var H1=({type:A,verboseMessage:Q,fdNumber:B,verboseInfo:Y,result:J})=>{let C=I_Q({type:A,result:J,verboseInfo:Y}),X=H_Q(Q,C),G=Je(X,Y,B);if(G!=="")console.warn(G.slice(0,-1))},I_Q=({type:A,result:Q,verboseInfo:{escapedCommand:B,commandId:Y,rawOptions:{piped:J=!1,...C}}})=>({type:A,escapedCommand:B,commandId:`${Y}`,timestamp:new Date,piped:J,result:Q,options:C}),H_Q=(A,Q)=>A.split(` +`).map((B)=>D_Q({...Q,message:B})),D_Q=(A)=>{return{verboseLine:Ye(A),verboseObject:A}},Qz=(A)=>{let Q=typeof A==="string"?A:V_Q(A);return aV(Q).replaceAll("\t"," ".repeat(N_Q))},N_Q=2;var Ce=(A,Q)=>{if(!K4(Q))return;H1({type:"command",verboseMessage:A,verboseInfo:Q})};var Xe=(A,Q,B)=>{M_Q(A);let Y=L_Q(A);return{verbose:A,escapedCommand:Q,commandId:Y,rawOptions:B}},L_Q=(A)=>K4({verbose:A})?q_Q++:void 0,q_Q=0n,M_Q=(A)=>{for(let Q of A){if(Q===!1)throw TypeError(`The "verbose: false" option was renamed to "verbose: 'none'".`);if(Q===!0)throw TypeError(`The "verbose: true" option was renamed to "verbose: 'short'".`);if(!oM.includes(Q)&&!aM(Q)){let B=oM.map((Y)=>`'${Y}'`).join(", ");throw TypeError(`The "verbose" option must not be ${Q}. Allowed values are: ${B} or a function.`)}}};import{hrtime as Ge}from"node:process";var Bz=()=>Ge.bigint(),o_=(A)=>Number(Ge.bigint()-A)/1e6;var Yz=(A,Q,B)=>{let Y=Bz(),{command:J,escapedCommand:C}=nt(A,Q),X=i_(B,"verbose"),G=Xe(X,C,{...B});return Ce(C,G),{command:J,escapedCommand:C,startTime:Y,verboseInfo:G}};var CQA=qA(re(),1);import FyQ from"node:path";import JQA from"node:process";import Gz from"node:process";import NW from"node:path";function Cz(A={}){let{env:Q=process.env,platform:B=process.platform}=A;if(B!=="win32")return"PATH";return Object.keys(Q).reverse().find((Y)=>Y.toUpperCase()==="PATH")||"Path"}import{promisify as t_Q}from"node:util";import{execFile as e_Q,execFileSync as le0}from"node:child_process";import ae from"node:path";import{fileURLToPath as AvQ}from"node:url";var ne0=t_Q(e_Q);function Xz(A){return A instanceof URL?AvQ(A):A}function oe(A){return{*[Symbol.iterator](){let Q=ae.resolve(Xz(A)),B;while(B!==Q)yield Q,B=Q,Q=ae.resolve(Q,"..")}}}var QvQ=({cwd:A=Gz.cwd(),path:Q=Gz.env[Cz()],preferLocal:B=!0,execPath:Y=Gz.execPath,addExecPath:J=!0}={})=>{let C=NW.resolve(Xz(A)),X=[],G=Q.split(NW.delimiter);if(B)BvQ(X,G,C);if(J)YvQ(X,G,Y,C);return Q===""||Q===NW.delimiter?`${X.join(NW.delimiter)}${Q}`:[...X,Q].join(NW.delimiter)},BvQ=(A,Q,B)=>{for(let Y of oe(B)){let J=NW.join(Y,"node_modules/.bin");if(!Q.includes(J))A.push(J)}},YvQ=(A,Q,B,Y)=>{let J=NW.resolve(Y,Xz(B),"..");if(!Q.includes(J))A.push(J)},te=({env:A=Gz.env,...Q}={})=>{A={...A};let B=Cz({env:A});return Q.path=A[B],A[B]=QvQ(Q),A};import{setTimeout as DvQ}from"node:timers/promises";var ee=(A,Q,B)=>{let Y=B?Wz:Fz,J=A instanceof D1?{}:{cause:A};return new Y(Q,J)};class D1 extends Error{}var AAA=(A,Q)=>{Object.defineProperty(A.prototype,"name",{value:Q,writable:!0,enumerable:!1,configurable:!0}),Object.defineProperty(A.prototype,BAA,{value:!0,writable:!1,enumerable:!1,configurable:!1})},QAA=(A)=>Zz(A)&&(BAA in A),BAA=Symbol("isExecaError"),Zz=(A)=>Object.prototype.toString.call(A)==="[object Error]";class Fz extends Error{}AAA(Fz,Fz.name);class Wz extends Error{}AAA(Wz,Wz.name);import{constants as oV}from"node:os";import{constants as GvQ}from"node:os";var YAA=()=>{let A=Gv-JAA+1;return Array.from({length:A},JvQ)},JvQ=(A,Q)=>({name:`SIGRT${Q+1}`,number:JAA+Q,action:"terminate",description:"Application-specific signal (realtime)",standard:"posix"}),JAA=34,Gv=64;import{constants as CvQ}from"node:os";var CAA=[{name:"SIGHUP",number:1,action:"terminate",description:"Terminal closed",standard:"posix"},{name:"SIGINT",number:2,action:"terminate",description:"User interruption with CTRL-C",standard:"ansi"},{name:"SIGQUIT",number:3,action:"core",description:"User interruption with CTRL-\\",standard:"posix"},{name:"SIGILL",number:4,action:"core",description:"Invalid machine instruction",standard:"ansi"},{name:"SIGTRAP",number:5,action:"core",description:"Debugger breakpoint",standard:"posix"},{name:"SIGABRT",number:6,action:"core",description:"Aborted",standard:"ansi"},{name:"SIGIOT",number:6,action:"core",description:"Aborted",standard:"bsd"},{name:"SIGBUS",number:7,action:"core",description:"Bus error due to misaligned, non-existing address or paging error",standard:"bsd"},{name:"SIGEMT",number:7,action:"terminate",description:"Command should be emulated but is not implemented",standard:"other"},{name:"SIGFPE",number:8,action:"core",description:"Floating point arithmetic error",standard:"ansi"},{name:"SIGKILL",number:9,action:"terminate",description:"Forced termination",standard:"posix",forced:!0},{name:"SIGUSR1",number:10,action:"terminate",description:"Application-specific signal",standard:"posix"},{name:"SIGSEGV",number:11,action:"core",description:"Segmentation fault",standard:"ansi"},{name:"SIGUSR2",number:12,action:"terminate",description:"Application-specific signal",standard:"posix"},{name:"SIGPIPE",number:13,action:"terminate",description:"Broken pipe or socket",standard:"posix"},{name:"SIGALRM",number:14,action:"terminate",description:"Timeout or timer",standard:"posix"},{name:"SIGTERM",number:15,action:"terminate",description:"Termination",standard:"ansi"},{name:"SIGSTKFLT",number:16,action:"terminate",description:"Stack is empty or overflowed",standard:"other"},{name:"SIGCHLD",number:17,action:"ignore",description:"Child process terminated, paused or unpaused",standard:"posix"},{name:"SIGCLD",number:17,action:"ignore",description:"Child process terminated, paused or unpaused",standard:"other"},{name:"SIGCONT",number:18,action:"unpause",description:"Unpaused",standard:"posix",forced:!0},{name:"SIGSTOP",number:19,action:"pause",description:"Paused",standard:"posix",forced:!0},{name:"SIGTSTP",number:20,action:"pause",description:'Paused using CTRL-Z or "suspend"',standard:"posix"},{name:"SIGTTIN",number:21,action:"pause",description:"Background process cannot read terminal input",standard:"posix"},{name:"SIGBREAK",number:21,action:"terminate",description:"User interruption with CTRL-BREAK",standard:"other"},{name:"SIGTTOU",number:22,action:"pause",description:"Background process cannot write to terminal output",standard:"posix"},{name:"SIGURG",number:23,action:"ignore",description:"Socket received out-of-band data",standard:"bsd"},{name:"SIGXCPU",number:24,action:"core",description:"Process timed out",standard:"bsd"},{name:"SIGXFSZ",number:25,action:"core",description:"File too big",standard:"bsd"},{name:"SIGVTALRM",number:26,action:"terminate",description:"Timeout or timer",standard:"bsd"},{name:"SIGPROF",number:27,action:"terminate",description:"Timeout or timer",standard:"bsd"},{name:"SIGWINCH",number:28,action:"ignore",description:"Terminal window size changed",standard:"bsd"},{name:"SIGIO",number:29,action:"terminate",description:"I/O is available",standard:"other"},{name:"SIGPOLL",number:29,action:"terminate",description:"Watched event",standard:"other"},{name:"SIGINFO",number:29,action:"ignore",description:"Request for process information",standard:"other"},{name:"SIGPWR",number:30,action:"terminate",description:"Device running out of power",standard:"systemv"},{name:"SIGSYS",number:31,action:"core",description:"Invalid system call",standard:"other"},{name:"SIGUNUSED",number:31,action:"terminate",description:"Invalid system call",standard:"other"}];var Fv=()=>{let A=YAA();return[...CAA,...A].map(XvQ)},XvQ=({name:A,number:Q,description:B,action:Y,forced:J=!1,standard:C})=>{let{signals:{[A]:X}}=CvQ,G=X!==void 0;return{name:A,number:G?X:Q,description:B,supported:G,action:Y,forced:J,standard:C}};var FvQ=()=>{let A=Fv();return Object.fromEntries(A.map(WvQ))},WvQ=({name:A,number:Q,description:B,supported:Y,action:J,forced:C,standard:X})=>[A,{name:A,number:Q,description:B,supported:Y,action:J,forced:C,standard:X}],XAA=FvQ(),ZvQ=()=>{let A=Fv(),Q=Gv+1,B=Array.from({length:Q},(Y,J)=>$vQ(J,A));return Object.assign({},...B)},$vQ=(A,Q)=>{let B=UvQ(A,Q);if(B===void 0)return{};let{name:Y,description:J,supported:C,action:X,forced:G,standard:F}=B;return{[A]:{name:Y,number:A,description:J,supported:C,action:X,forced:G,standard:F}}},UvQ=(A,Q)=>{let B=Q.find(({name:Y})=>GvQ.signals[Y]===A);if(B!==void 0)return B;return Q.find((Y)=>Y.number===A)},$AY=ZvQ();var FAA=(A)=>{if(A===0)throw TypeError("Invalid option `killSignal`: 0 cannot be used.");return ZAA(A,"option `killSignal`")},WAA=(A)=>A===0?A:ZAA(A,"`subprocess.kill()`'s argument"),ZAA=(A,Q)=>{if(Number.isInteger(A))return EvQ(A,Q);if(typeof A==="string")return VvQ(A,Q);throw TypeError(`Invalid ${Q} ${String(A)}: it must be a string or an integer. +${Wv()}`)},EvQ=(A,Q)=>{if(GAA.has(A))return GAA.get(A);throw TypeError(`Invalid ${Q} ${A}: this signal integer does not exist. +${Wv()}`)},KvQ=()=>new Map(Object.entries(oV.signals).reverse().map(([A,Q])=>[Q,A])),GAA=KvQ(),VvQ=(A,Q)=>{if(A in oV.signals)return A;if(A.toUpperCase()in oV.signals)throw TypeError(`Invalid ${Q} '${A}': please rename it to '${A.toUpperCase()}'.`);throw TypeError(`Invalid ${Q} '${A}': this signal name does not exist. +${Wv()}`)},Wv=()=>`Available signal names: ${IvQ()}. +Available signal numbers: ${HvQ()}.`,IvQ=()=>Object.keys(oV.signals).sort().map((A)=>`'${A}'`).join(", "),HvQ=()=>[...new Set(Object.values(oV.signals).sort((A,Q)=>A-Q))].join(", "),$z=(A)=>XAA[A].description;var $AA=(A)=>{if(A===!1)return A;if(A===!0)return NvQ;if(!Number.isFinite(A)||A<0)throw TypeError(`Expected the \`forceKillAfterDelay\` option to be a non-negative integer, got \`${A}\` (${typeof A})`);return A},NvQ=5000,UAA=({kill:A,options:{forceKillAfterDelay:Q,killSignal:B},onInternalError:Y,context:J,controller:C},X,G)=>{let{signal:F,error:W}=LvQ(X,G,B);qvQ(W,Y);let Z=A(F);return MvQ({kill:A,signal:F,forceKillAfterDelay:Q,killSignal:B,killResult:Z,context:J,controller:C}),Z},LvQ=(A,Q,B)=>{let[Y=B,J]=Zz(A)?[void 0,A]:[A,Q];if(typeof Y!=="string"&&!Number.isInteger(Y))throw TypeError(`The first argument must be an error instance or a signal name string/integer: ${String(Y)}`);if(J!==void 0&&!Zz(J))throw TypeError(`The second argument is optional. If specified, it must be an error instance: ${J}`);return{signal:WAA(Y),error:J}},qvQ=(A,Q)=>{if(A!==void 0)Q.reject(A)},MvQ=async({kill:A,signal:Q,forceKillAfterDelay:B,killSignal:Y,killResult:J,context:C,controller:X})=>{if(Q===Y&&J)Zv({kill:A,forceKillAfterDelay:B,context:C,controllerSignal:X.signal})},Zv=async({kill:A,forceKillAfterDelay:Q,context:B,controllerSignal:Y})=>{if(Q===!1)return;try{if(await DvQ(Q,void 0,{signal:Y}),A("SIGKILL"))B.isForcefullyTerminated??=!0}catch{}};import{once as zvQ}from"node:events";var Uz=async(A,Q)=>{if(!A.aborted)await zvQ(A,"abort",{signal:Q})};var EAA=({cancelSignal:A})=>{if(A!==void 0&&Object.prototype.toString.call(A)!=="[object AbortSignal]")throw Error(`The \`cancelSignal\` option must be an AbortSignal: ${String(A)}`)},KAA=({subprocess:A,cancelSignal:Q,gracefulCancel:B,context:Y,controller:J})=>Q===void 0||B?[]:[RvQ(A,Q,Y,J)],RvQ=async(A,Q,B,{signal:Y})=>{throw await Uz(Q,Y),B.terminationReason??="cancel",A.kill(),Q.reason};import{scheduler as pvQ}from"node:timers/promises";import{promisify as dvQ}from"node:util";var D4=({methodName:A,isSubprocess:Q,ipc:B,isConnected:Y})=>{wvQ(A,Q,B),$v(A,Q,Y)},wvQ=(A,Q,B)=>{if(!B)throw Error(`${EC(A,Q)} can only be used if the \`ipc\` option is \`true\`.`)},$v=(A,Q,B)=>{if(!B)throw Error(`${EC(A,Q)} cannot be used: the ${dG(Q)} has already exited or disconnected.`)},VAA=(A)=>{throw Error(`${EC("getOneMessage",A)} could not complete: the ${dG(A)} exited or disconnected.`)},IAA=(A)=>{throw Error(`${EC("sendMessage",A)} failed: the ${dG(A)} is sending a message too, instead of listening to incoming messages. This can be fixed by both sending a message and listening to incoming messages at the same time: const [receivedMessage] = await Promise.all([ - ${FC("getOneMessage",A)}, - ${FC("sendMessage",A,"message, {strict: true}")}, -]);`)},OM=(A,Q)=>Error(`${FC("sendMessage",Q)} failed when sending an acknowledgment response to the ${f6(Q)}.`,{cause:A}),Re=(A)=>{throw Error(`${FC("sendMessage",A)} failed: the ${f6(A)} is not listening to incoming messages.`)},we=(A)=>{throw Error(`${FC("sendMessage",A)} failed: the ${f6(A)} exited without listening to incoming messages.`)},je=()=>Error(`\`cancelSignal\` aborted: the ${f6(!0)} disconnected.`),Oe=()=>{throw Error("`getCancelSignal()` cannot be used without setting the `cancelSignal` subprocess option.")},Pe=({error:A,methodName:Q,isSubprocess:B})=>{if(A.code==="EPIPE")throw Error(`${FC(Q,B)} cannot be used: the ${f6(B)} is disconnecting.`,{cause:A})},Te=({error:A,methodName:Q,isSubprocess:B,message:Y})=>{if(CvQ(A))throw Error(`${FC(Q,B)}'s argument type is invalid: the message cannot be serialized: ${String(Y)}.`,{cause:A})},CvQ=({code:A,message:Q})=>XvQ.has(A)||GvQ.some((B)=>Q.includes(B)),XvQ=new Set(["ERR_MISSING_ARGS","ERR_INVALID_ARG_TYPE"]),GvQ=["could not be cloned","circular structure","call stack size exceeded"],FC=(A,Q,B="")=>A==="cancelSignal"?"`cancelSignal`'s `controller.abort()`":`${FvQ(Q)}${A}(${B})`,FvQ=(A)=>A?"":"subprocess.",f6=(A)=>A?"parent process":"subprocess",K4=(A)=>{if(A.connected)A.disconnect()};var H1=()=>{let A={},Q=new Promise((B,Y)=>{Object.assign(A,{resolve:B,reject:Y})});return Object.assign(Q,A)};var TM=(A,Q="stdin")=>{let{options:Y,fileDescriptors:J}=D1.get(A),C=Se(J,Q,!0),X=A.stdio[C];if(X===null)throw TypeError(ke(C,Q,Y,!0));return X},V4=(A,Q="stdout")=>{let{options:Y,fileDescriptors:J}=D1.get(A),C=Se(J,Q,!1),X=C==="all"?A.all:A.stdio[C];if(X===null||X===void 0)throw TypeError(ke(C,Q,Y,!1));return X},D1=new WeakMap,Se=(A,Q,B)=>{let Y=WvQ(Q,B);return ZvQ(Y,Q,B,A),Y},WvQ=(A,Q)=>{let B=bk(A);if(B!==void 0)return B;let{validOptions:Y,defaultValue:J}=Q?{validOptions:'"stdin"',defaultValue:"stdin"}:{validOptions:'"stdout", "stderr", "all"',defaultValue:"stdout"};throw TypeError(`"${_V(Q)}" must not be "${A}". + ${EC("getOneMessage",A)}, + ${EC("sendMessage",A,"message, {strict: true}")}, +]);`)},Ez=(A,Q)=>Error(`${EC("sendMessage",Q)} failed when sending an acknowledgment response to the ${dG(Q)}.`,{cause:A}),HAA=(A)=>{throw Error(`${EC("sendMessage",A)} failed: the ${dG(A)} is not listening to incoming messages.`)},DAA=(A)=>{throw Error(`${EC("sendMessage",A)} failed: the ${dG(A)} exited without listening to incoming messages.`)},NAA=()=>Error(`\`cancelSignal\` aborted: the ${dG(!0)} disconnected.`),LAA=()=>{throw Error("`getCancelSignal()` cannot be used without setting the `cancelSignal` subprocess option.")},qAA=({error:A,methodName:Q,isSubprocess:B})=>{if(A.code==="EPIPE")throw Error(`${EC(Q,B)} cannot be used: the ${dG(B)} is disconnecting.`,{cause:A})},MAA=({error:A,methodName:Q,isSubprocess:B,message:Y})=>{if(jvQ(A))throw Error(`${EC(Q,B)}'s argument type is invalid: the message cannot be serialized: ${String(Y)}.`,{cause:A})},jvQ=({code:A,message:Q})=>OvQ.has(A)||PvQ.some((B)=>Q.includes(B)),OvQ=new Set(["ERR_MISSING_ARGS","ERR_INVALID_ARG_TYPE"]),PvQ=["could not be cloned","circular structure","call stack size exceeded"],EC=(A,Q,B="")=>A==="cancelSignal"?"`cancelSignal`'s `controller.abort()`":`${TvQ(Q)}${A}(${B})`,TvQ=(A)=>A?"":"subprocess.",dG=(A)=>A?"parent process":"subprocess",N4=(A)=>{if(A.connected)A.disconnect()};var N1=()=>{let A={},Q=new Promise((B,Y)=>{Object.assign(A,{resolve:B,reject:Y})});return Object.assign(Q,A)};var Vz=(A,Q="stdin")=>{let{options:Y,fileDescriptors:J}=L1.get(A),C=zAA(J,Q,!0),X=A.stdio[C];if(X===null)throw TypeError(RAA(C,Q,Y,!0));return X},L4=(A,Q="stdout")=>{let{options:Y,fileDescriptors:J}=L1.get(A),C=zAA(J,Q,!1),X=C==="all"?A.all:A.stdio[C];if(X===null||X===void 0)throw TypeError(RAA(C,Q,Y,!1));return X},L1=new WeakMap,zAA=(A,Q,B)=>{let Y=SvQ(Q,B);return kvQ(Y,Q,B,A),Y},SvQ=(A,Q)=>{let B=n_(A);if(B!==void 0)return B;let{validOptions:Y,defaultValue:J}=Q?{validOptions:'"stdin"',defaultValue:"stdin"}:{validOptions:'"stdout", "stderr", "all"',defaultValue:"stdout"};throw TypeError(`"${tV(Q)}" must not be "${A}". It must be ${Y} or "fd3", "fd4" (and so on). -It is optional and defaults to "${J}".`)},ZvQ=(A,Q,B,Y)=>{let J=Y[_e(A)];if(J===void 0)throw TypeError(`"${_V(B)}" must not be ${Q}. That file descriptor does not exist. -Please set the "stdio" option to ensure that file descriptor exists.`);if(J.direction==="input"&&!B)throw TypeError(`"${_V(B)}" must not be ${Q}. It must be a readable stream, not writable.`);if(J.direction!=="input"&&B)throw TypeError(`"${_V(B)}" must not be ${Q}. It must be a writable stream, not readable.`)},ke=(A,Q,B,Y)=>{if(A==="all"&&!B.all)return`The "all" option must be true to use "from: 'all'".`;let{optionName:J,optionValue:C}=$vQ(A,B);return`The "${J}: ${PM(C)}" option is incompatible with using "${_V(Y)}: ${PM(Q)}". -Please set this option with "pipe" instead.`},$vQ=(A,{stdin:Q,stdout:B,stderr:Y,stdio:J})=>{let C=_e(A);if(C===0&&Q!==void 0)return{optionName:"stdin",optionValue:Q};if(C===1&&B!==void 0)return{optionName:"stdout",optionValue:B};if(C===2&&Y!==void 0)return{optionName:"stderr",optionValue:Y};return{optionName:`stdio[${C}]`,optionValue:J[C]}},_e=(A)=>A==="all"?1:A,_V=(A)=>A?"to":"from",PM=(A)=>{if(typeof A==="string")return`'${A}'`;return typeof A==="number"?`${A}`:"Stream"};import{once as HvQ}from"node:events";import{addAbortListener as UvQ}from"node:events";var IW=(A,Q,B)=>{let Y=A.getMaxListeners();if(Y===0||Y===Number.POSITIVE_INFINITY)return;A.setMaxListeners(Y+Q),UvQ(B,()=>{A.setMaxListeners(A.getMaxListeners()-Q)})};import{EventEmitter as VvQ}from"node:events";import{once as EvQ}from"node:events";import{scheduler as KvQ}from"node:timers/promises";var SM=(A,Q)=>{if(Q)J_(A)},J_=(A)=>{A.refCounted()},kM=(A,Q)=>{if(Q)C_(A)},C_=(A)=>{A.unrefCounted()},ve=(A,Q)=>{if(Q)C_(A),C_(A)},ye=(A,Q)=>{if(Q)J_(A),J_(A)};var ge=async({anyProcess:A,channel:Q,isSubprocess:B,ipcEmitter:Y},J)=>{if(fe(J)||me(J))return;if(!_M.has(A))_M.set(A,[]);let C=_M.get(A);if(C.push(J),C.length>1)return;while(C.length>0){await be(A,Y,J),await KvQ.yield();let X=await xe({wrappedMessage:C[0],anyProcess:A,channel:Q,isSubprocess:B,ipcEmitter:Y});C.shift(),Y.emit("message",X),Y.emit("message:done")}},he=async({anyProcess:A,channel:Q,isSubprocess:B,ipcEmitter:Y,boundOnMessage:J})=>{X_();let C=_M.get(A);while(C?.length>0)await EvQ(Y,"message:done");A.removeListener("message",J),ye(Q,B),Y.connected=!1,Y.emit("disconnect")},_M=new WeakMap;var b6=(A,Q,B)=>{if(vM.has(A))return vM.get(A);let Y=new VvQ;return Y.connected=!0,vM.set(A,Y),IvQ({ipcEmitter:Y,anyProcess:A,channel:Q,isSubprocess:B}),Y},vM=new WeakMap,IvQ=({ipcEmitter:A,anyProcess:Q,channel:B,isSubprocess:Y})=>{let J=ge.bind(void 0,{anyProcess:Q,channel:B,isSubprocess:Y,ipcEmitter:A});Q.on("message",J),Q.once("disconnect",he.bind(void 0,{anyProcess:Q,channel:B,isSubprocess:Y,ipcEmitter:A,boundOnMessage:J})),ve(B,Y)},yM=(A)=>{let Q=vM.get(A);return Q===void 0?A.channel!==null:Q.connected};var ue=({anyProcess:A,channel:Q,isSubprocess:B,message:Y,strict:J})=>{if(!J)return Y;let C=b6(A,Q,B),X=xM(A,C);return{id:DvQ++,type:hM,message:Y,hasListeners:X}},DvQ=0n,de=(A,Q)=>{if(Q?.type!==hM||Q.hasListeners)return;for(let{id:B}of A)if(B!==void 0)gM[B].resolve({isDeadlock:!0,hasListeners:!1})},xe=async({wrappedMessage:A,anyProcess:Q,channel:B,isSubprocess:Y,ipcEmitter:J})=>{if(A?.type!==hM||!Q.connected)return A;let{id:C,message:X}=A,G={id:C,type:le,message:xM(Q,J)};try{await fM({anyProcess:Q,channel:B,isSubprocess:Y,ipc:!0},G)}catch(F){J.emit("strict:error",F)}return X},fe=(A)=>{if(A?.type!==le)return!1;let{id:Q,message:B}=A;return gM[Q]?.resolve({isDeadlock:!1,hasListeners:B}),!0},ce=async(A,Q,B)=>{if(A?.type!==hM)return;let Y=H1();gM[A.id]=Y;let J=new AbortController;try{let{isDeadlock:C,hasListeners:X}=await Promise.race([Y,NvQ(Q,B,J)]);if(C)ze(B);if(!X)Re(B)}finally{J.abort(),delete gM[A.id]}},gM={},NvQ=async(A,Q,{signal:B})=>{IW(A,1,B),await HvQ(A,"disconnect",{signal:B}),we(Q)},hM="execa:ipc:request",le="execa:ipc:response";var pe=(A,Q,B)=>{if(!vV.has(A))vV.set(A,new Set);let Y=vV.get(A),J=H1(),C=B?Q.id:void 0,X={onMessageSent:J,id:C};return Y.add(X),{outgoingMessages:Y,outgoingMessage:X}},ie=({outgoingMessages:A,outgoingMessage:Q})=>{A.delete(Q),Q.onMessageSent.resolve()},be=async(A,Q,B)=>{while(!xM(A,Q)&&vV.get(A)?.size>0){let Y=[...vV.get(A)];de(Y,B),await Promise.all(Y.map(({onMessageSent:J})=>J))}},vV=new WeakMap,xM=(A,Q)=>Q.listenerCount("message")>LvQ(A),LvQ=(A)=>D1.has(A)&&!hX(D1.get(A).options.buffer,"ipc")?1:0;var fM=({anyProcess:A,channel:Q,isSubprocess:B,ipc:Y},J,{strict:C=!1}={})=>{return E4({methodName:"sendMessage",isSubprocess:B,ipc:Y,isConnected:A.connected}),MvQ({anyProcess:A,channel:Q,methodName:"sendMessage",isSubprocess:B,message:J,strict:C})},MvQ=async({anyProcess:A,channel:Q,methodName:B,isSubprocess:Y,message:J,strict:C})=>{let X=ue({anyProcess:A,channel:Q,isSubprocess:Y,message:J,strict:C}),G=pe(A,X,C);try{await F_({anyProcess:A,methodName:B,isSubprocess:Y,wrappedMessage:X,message:J})}catch(F){throw K4(A),F}finally{ie(G)}},F_=async({anyProcess:A,methodName:Q,isSubprocess:B,wrappedMessage:Y,message:J})=>{let C=zvQ(A);try{await Promise.all([ce(Y,A,B),C(Y)])}catch(X){throw Pe({error:X,methodName:Q,isSubprocess:B}),Te({error:X,methodName:Q,isSubprocess:B,message:J}),X}},zvQ=(A)=>{if(G_.has(A))return G_.get(A);let Q=qvQ(A.send.bind(A));return G_.set(A,Q),Q},G_=new WeakMap;var se=(A,Q)=>{return Y_("cancelSignal",!1,A.connected),F_({anyProcess:A,methodName:"cancelSignal",isSubprocess:!1,wrappedMessage:{type:ae,message:Q},message:Q})},re=async({anyProcess:A,channel:Q,isSubprocess:B,ipc:Y})=>{return await wvQ({anyProcess:A,channel:Q,isSubprocess:B,ipc:Y}),W_.signal},wvQ=async({anyProcess:A,channel:Q,isSubprocess:B,ipc:Y})=>{if(ne)return;if(ne=!0,!Y){Oe();return}if(Q===null){X_();return}b6(A,Q,B),await RvQ.yield()},ne=!1,me=(A)=>{if(A?.type!==ae)return!1;return W_.abort(A.message),!0},ae="execa:ipc:cancel",X_=()=>{W_.abort(je())},W_=new AbortController;var oe=({gracefulCancel:A,cancelSignal:Q,ipc:B,serialization:Y})=>{if(!A)return;if(Q===void 0)throw Error("The `cancelSignal` option must be defined when setting the `gracefulCancel` option.");if(!B)throw Error("The `ipc` option cannot be false when setting the `gracefulCancel` option.");if(Y==="json")throw Error("The `serialization` option cannot be 'json' when setting the `gracefulCancel` option.")},te=({subprocess:A,cancelSignal:Q,gracefulCancel:B,forceKillAfterDelay:Y,context:J,controller:C})=>B?[jvQ({subprocess:A,cancelSignal:Q,forceKillAfterDelay:Y,context:J,controller:C})]:[],jvQ=async({subprocess:A,cancelSignal:Q,forceKillAfterDelay:B,context:Y,controller:{signal:J}})=>{await jM(Q,J);let C=OvQ(Q);throw await se(A,C),B_({kill:A.kill,forceKillAfterDelay:B,context:Y,controllerSignal:J}),Y.terminationReason??="gracefulCancel",Q.reason},OvQ=({reason:A})=>{if(!(A instanceof DOMException))return A;let Q=Error(A.message);return Object.defineProperty(Q,"stack",{value:A.stack,enumerable:!1,configurable:!0,writable:!0}),Q};import{setTimeout as PvQ}from"node:timers/promises";var ee=({timeout:A})=>{if(A!==void 0&&(!Number.isFinite(A)||A<0))throw TypeError(`Expected the \`timeout\` option to be a non-negative integer, got \`${A}\` (${typeof A})`)},AAA=(A,Q,B,Y)=>Q===0||Q===void 0?[]:[TvQ(A,Q,B,Y)],TvQ=async(A,Q,B,{signal:Y})=>{throw await PvQ(Q,void 0,{signal:Y}),B.terminationReason??="timeout",A.kill(),new I1};import{execPath as SvQ,execArgv as kvQ}from"node:process";import QAA from"node:path";var BAA=({options:A})=>{if(A.node===!1)throw TypeError('The "node" option cannot be false with `execaNode()`.');return{options:{...A,node:!0}}},YAA=(A,Q,{node:B=!1,nodePath:Y=SvQ,nodeOptions:J=kvQ.filter((F)=>!F.startsWith("--inspect")),cwd:C,execPath:X,...G})=>{if(X!==void 0)throw TypeError('The "execPath" option has been removed. Please use the "nodePath" option instead.');let F=F4(Y,'The "nodePath" option'),W=QAA.resolve(C,F),Z={...G,nodePath:W,node:B,cwd:C};if(!B)return[A,Q,Z];if(QAA.basename(A,".exe")==="node")throw TypeError('When the "node" option is true, the first argument does not need to be "node".');return[W,[...J,A,...Q],{ipc:!0,...Z,shell:!1}]};import{serialize as _vQ}from"node:v8";var JAA=({ipcInput:A,ipc:Q,serialization:B})=>{if(A===void 0)return;if(!Q)throw Error("The `ipcInput` option cannot be set unless the `ipc` option is `true`.");gvQ[B](A)},vvQ=(A)=>{try{_vQ(A)}catch(Q){throw Error("The `ipcInput` option is not serializable with a structured clone.",{cause:Q})}},yvQ=(A)=>{try{JSON.stringify(A)}catch(Q){throw Error("The `ipcInput` option is not serializable with JSON.",{cause:Q})}},gvQ={advanced:vvQ,json:yvQ},CAA=async(A,Q)=>{if(Q===void 0)return;await A.sendMessage(Q)};var GAA=({encoding:A})=>{if(Z_.has(A))return;let Q=xvQ(A);if(Q!==void 0)throw TypeError(`Invalid option \`encoding: ${bM(A)}\`. -Please rename it to ${bM(Q)}.`);let B=[...Z_].map((Y)=>bM(Y)).join(", ");throw TypeError(`Invalid option \`encoding: ${bM(A)}\`. -Please rename it to one of: ${B}.`)},hvQ=new Set(["utf8","utf16le"]),e9=new Set(["buffer","hex","base64","base64url","latin1","ascii"]),Z_=new Set([...hvQ,...e9]),xvQ=(A)=>{if(A===null)return"buffer";if(typeof A!=="string")return;let Q=A.toLowerCase();if(Q in XAA)return XAA[Q];if(Z_.has(Q))return Q},XAA={"utf-8":"utf8","utf-16le":"utf16le","ucs-2":"utf16le",ucs2:"utf16le",binary:"latin1"},bM=(A)=>typeof A==="string"?`"${A}"`:String(A);import{statSync as fvQ}from"node:fs";import bvQ from"node:path";import mvQ from"node:process";var FAA=(A=WAA())=>{let Q=F4(A,'The "cwd" option');return bvQ.resolve(Q)},WAA=()=>{try{return mvQ.cwd()}catch(A){throw A.message=`The current directory does not exist. -${A.message}`,A}},ZAA=(A,Q)=>{if(Q===WAA())return A;let B;try{B=fvQ(Q)}catch(Y){return`The "cwd" option is invalid: ${Q}. +It is optional and defaults to "${J}".`)},kvQ=(A,Q,B,Y)=>{let J=Y[wAA(A)];if(J===void 0)throw TypeError(`"${tV(B)}" must not be ${Q}. That file descriptor does not exist. +Please set the "stdio" option to ensure that file descriptor exists.`);if(J.direction==="input"&&!B)throw TypeError(`"${tV(B)}" must not be ${Q}. It must be a readable stream, not writable.`);if(J.direction!=="input"&&B)throw TypeError(`"${tV(B)}" must not be ${Q}. It must be a writable stream, not readable.`)},RAA=(A,Q,B,Y)=>{if(A==="all"&&!B.all)return`The "all" option must be true to use "from: 'all'".`;let{optionName:J,optionValue:C}=_vQ(A,B);return`The "${J}: ${Kz(C)}" option is incompatible with using "${tV(Y)}: ${Kz(Q)}". +Please set this option with "pipe" instead.`},_vQ=(A,{stdin:Q,stdout:B,stderr:Y,stdio:J})=>{let C=wAA(A);if(C===0&&Q!==void 0)return{optionName:"stdin",optionValue:Q};if(C===1&&B!==void 0)return{optionName:"stdout",optionValue:B};if(C===2&&Y!==void 0)return{optionName:"stderr",optionValue:Y};return{optionName:`stdio[${C}]`,optionValue:J[C]}},wAA=(A)=>A==="all"?1:A,tV=(A)=>A?"to":"from",Kz=(A)=>{if(typeof A==="string")return`'${A}'`;return typeof A==="number"?`${A}`:"Stream"};import{once as fvQ}from"node:events";import{addAbortListener as vvQ}from"node:events";var LW=(A,Q,B)=>{let Y=A.getMaxListeners();if(Y===0||Y===Number.POSITIVE_INFINITY)return;A.setMaxListeners(Y+Q),vvQ(B,()=>{A.setMaxListeners(A.getMaxListeners()-Q)})};import{EventEmitter as gvQ}from"node:events";import{once as yvQ}from"node:events";import{scheduler as hvQ}from"node:timers/promises";var Iz=(A,Q)=>{if(Q)Uv(A)},Uv=(A)=>{A.refCounted()},Hz=(A,Q)=>{if(Q)Ev(A)},Ev=(A)=>{A.unrefCounted()},jAA=(A,Q)=>{if(Q)Ev(A),Ev(A)},OAA=(A,Q)=>{if(Q)Uv(A),Uv(A)};var PAA=async({anyProcess:A,channel:Q,isSubprocess:B,ipcEmitter:Y},J)=>{if(kAA(J)||vAA(J))return;if(!Dz.has(A))Dz.set(A,[]);let C=Dz.get(A);if(C.push(J),C.length>1)return;while(C.length>0){await _AA(A,Y,J),await hvQ.yield();let X=await SAA({wrappedMessage:C[0],anyProcess:A,channel:Q,isSubprocess:B,ipcEmitter:Y});C.shift(),Y.emit("message",X),Y.emit("message:done")}},TAA=async({anyProcess:A,channel:Q,isSubprocess:B,ipcEmitter:Y,boundOnMessage:J})=>{Kv();let C=Dz.get(A);while(C?.length>0)await yvQ(Y,"message:done");A.removeListener("message",J),OAA(Q,B),Y.connected=!1,Y.emit("disconnect")},Dz=new WeakMap;var cG=(A,Q,B)=>{if(Nz.has(A))return Nz.get(A);let Y=new gvQ;return Y.connected=!0,Nz.set(A,Y),xvQ({ipcEmitter:Y,anyProcess:A,channel:Q,isSubprocess:B}),Y},Nz=new WeakMap,xvQ=({ipcEmitter:A,anyProcess:Q,channel:B,isSubprocess:Y})=>{let J=PAA.bind(void 0,{anyProcess:Q,channel:B,isSubprocess:Y,ipcEmitter:A});Q.on("message",J),Q.once("disconnect",TAA.bind(void 0,{anyProcess:Q,channel:B,isSubprocess:Y,ipcEmitter:A,boundOnMessage:J})),jAA(B,Y)},Lz=(A)=>{let Q=Nz.get(A);return Q===void 0?A.channel!==null:Q.connected};var yAA=({anyProcess:A,channel:Q,isSubprocess:B,message:Y,strict:J})=>{if(!J)return Y;let C=cG(A,Q,B),X=zz(A,C);return{id:bvQ++,type:Mz,message:Y,hasListeners:X}},bvQ=0n,hAA=(A,Q)=>{if(Q?.type!==Mz||Q.hasListeners)return;for(let{id:B}of A)if(B!==void 0)qz[B].resolve({isDeadlock:!0,hasListeners:!1})},SAA=async({wrappedMessage:A,anyProcess:Q,channel:B,isSubprocess:Y,ipcEmitter:J})=>{if(A?.type!==Mz||!Q.connected)return A;let{id:C,message:X}=A,G={id:C,type:xAA,message:zz(Q,J)};try{await Rz({anyProcess:Q,channel:B,isSubprocess:Y,ipc:!0},G)}catch(F){J.emit("strict:error",F)}return X},kAA=(A)=>{if(A?.type!==xAA)return!1;let{id:Q,message:B}=A;return qz[Q]?.resolve({isDeadlock:!1,hasListeners:B}),!0},gAA=async(A,Q,B)=>{if(A?.type!==Mz)return;let Y=N1();qz[A.id]=Y;let J=new AbortController;try{let{isDeadlock:C,hasListeners:X}=await Promise.race([Y,mvQ(Q,B,J)]);if(C)IAA(B);if(!X)HAA(B)}finally{J.abort(),delete qz[A.id]}},qz={},mvQ=async(A,Q,{signal:B})=>{LW(A,1,B),await fvQ(A,"disconnect",{signal:B}),DAA(Q)},Mz="execa:ipc:request",xAA="execa:ipc:response";var fAA=(A,Q,B)=>{if(!eV.has(A))eV.set(A,new Set);let Y=eV.get(A),J=N1(),C=B?Q.id:void 0,X={onMessageSent:J,id:C};return Y.add(X),{outgoingMessages:Y,outgoingMessage:X}},bAA=({outgoingMessages:A,outgoingMessage:Q})=>{A.delete(Q),Q.onMessageSent.resolve()},_AA=async(A,Q,B)=>{while(!zz(A,Q)&&eV.get(A)?.size>0){let Y=[...eV.get(A)];hAA(Y,B),await Promise.all(Y.map(({onMessageSent:J})=>J))}},eV=new WeakMap,zz=(A,Q)=>Q.listenerCount("message")>uvQ(A),uvQ=(A)=>L1.has(A)&&!u6(L1.get(A).options.buffer,"ipc")?1:0;var Rz=({anyProcess:A,channel:Q,isSubprocess:B,ipc:Y},J,{strict:C=!1}={})=>{return D4({methodName:"sendMessage",isSubprocess:B,ipc:Y,isConnected:A.connected}),cvQ({anyProcess:A,channel:Q,methodName:"sendMessage",isSubprocess:B,message:J,strict:C})},cvQ=async({anyProcess:A,channel:Q,methodName:B,isSubprocess:Y,message:J,strict:C})=>{let X=yAA({anyProcess:A,channel:Q,isSubprocess:Y,message:J,strict:C}),G=fAA(A,X,C);try{await Iv({anyProcess:A,methodName:B,isSubprocess:Y,wrappedMessage:X,message:J})}catch(F){throw N4(A),F}finally{bAA(G)}},Iv=async({anyProcess:A,methodName:Q,isSubprocess:B,wrappedMessage:Y,message:J})=>{let C=lvQ(A);try{await Promise.all([gAA(Y,A,B),C(Y)])}catch(X){throw qAA({error:X,methodName:Q,isSubprocess:B}),MAA({error:X,methodName:Q,isSubprocess:B,message:J}),X}},lvQ=(A)=>{if(Vv.has(A))return Vv.get(A);let Q=dvQ(A.send.bind(A));return Vv.set(A,Q),Q},Vv=new WeakMap;var uAA=(A,Q)=>{return $v("cancelSignal",!1,A.connected),Iv({anyProcess:A,methodName:"cancelSignal",isSubprocess:!1,wrappedMessage:{type:cAA,message:Q},message:Q})},dAA=async({anyProcess:A,channel:Q,isSubprocess:B,ipc:Y})=>{return await ivQ({anyProcess:A,channel:Q,isSubprocess:B,ipc:Y}),Hv.signal},ivQ=async({anyProcess:A,channel:Q,isSubprocess:B,ipc:Y})=>{if(mAA)return;if(mAA=!0,!Y){LAA();return}if(Q===null){Kv();return}cG(A,Q,B),await pvQ.yield()},mAA=!1,vAA=(A)=>{if(A?.type!==cAA)return!1;return Hv.abort(A.message),!0},cAA="execa:ipc:cancel",Kv=()=>{Hv.abort(NAA())},Hv=new AbortController;var lAA=({gracefulCancel:A,cancelSignal:Q,ipc:B,serialization:Y})=>{if(!A)return;if(Q===void 0)throw Error("The `cancelSignal` option must be defined when setting the `gracefulCancel` option.");if(!B)throw Error("The `ipc` option cannot be false when setting the `gracefulCancel` option.");if(Y==="json")throw Error("The `serialization` option cannot be 'json' when setting the `gracefulCancel` option.")},pAA=({subprocess:A,cancelSignal:Q,gracefulCancel:B,forceKillAfterDelay:Y,context:J,controller:C})=>B?[nvQ({subprocess:A,cancelSignal:Q,forceKillAfterDelay:Y,context:J,controller:C})]:[],nvQ=async({subprocess:A,cancelSignal:Q,forceKillAfterDelay:B,context:Y,controller:{signal:J}})=>{await Uz(Q,J);let C=svQ(Q);throw await uAA(A,C),Zv({kill:A.kill,forceKillAfterDelay:B,context:Y,controllerSignal:J}),Y.terminationReason??="gracefulCancel",Q.reason},svQ=({reason:A})=>{if(!(A instanceof DOMException))return A;let Q=Error(A.message);return Object.defineProperty(Q,"stack",{value:A.stack,enumerable:!1,configurable:!0,writable:!0}),Q};import{setTimeout as rvQ}from"node:timers/promises";var iAA=({timeout:A})=>{if(A!==void 0&&(!Number.isFinite(A)||A<0))throw TypeError(`Expected the \`timeout\` option to be a non-negative integer, got \`${A}\` (${typeof A})`)},nAA=(A,Q,B,Y)=>Q===0||Q===void 0?[]:[avQ(A,Q,B,Y)],avQ=async(A,Q,B,{signal:Y})=>{throw await rvQ(Q,void 0,{signal:Y}),B.terminationReason??="timeout",A.kill(),new D1};import{execPath as ovQ,execArgv as tvQ}from"node:process";import sAA from"node:path";var rAA=({options:A})=>{if(A.node===!1)throw TypeError('The "node" option cannot be false with `execaNode()`.');return{options:{...A,node:!0}}},aAA=(A,Q,{node:B=!1,nodePath:Y=ovQ,nodeOptions:J=tvQ.filter((F)=>!F.startsWith("--inspect")),cwd:C,execPath:X,...G})=>{if(X!==void 0)throw TypeError('The "execPath" option has been removed. Please use the "nodePath" option instead.');let F=E4(Y,'The "nodePath" option'),W=sAA.resolve(C,F),Z={...G,nodePath:W,node:B,cwd:C};if(!B)return[A,Q,Z];if(sAA.basename(A,".exe")==="node")throw TypeError('When the "node" option is true, the first argument does not need to be "node".');return[W,[...J,A,...Q],{ipc:!0,...Z,shell:!1}]};import{serialize as evQ}from"node:v8";var oAA=({ipcInput:A,ipc:Q,serialization:B})=>{if(A===void 0)return;if(!Q)throw Error("The `ipcInput` option cannot be set unless the `ipc` option is `true`.");ByQ[B](A)},AyQ=(A)=>{try{evQ(A)}catch(Q){throw Error("The `ipcInput` option is not serializable with a structured clone.",{cause:Q})}},QyQ=(A)=>{try{JSON.stringify(A)}catch(Q){throw Error("The `ipcInput` option is not serializable with JSON.",{cause:Q})}},ByQ={advanced:AyQ,json:QyQ},tAA=async(A,Q)=>{if(Q===void 0)return;await A.sendMessage(Q)};var AQA=({encoding:A})=>{if(Dv.has(A))return;let Q=JyQ(A);if(Q!==void 0)throw TypeError(`Invalid option \`encoding: ${wz(A)}\`. +Please rename it to ${wz(Q)}.`);let B=[...Dv].map((Y)=>wz(Y)).join(", ");throw TypeError(`Invalid option \`encoding: ${wz(A)}\`. +Please rename it to one of: ${B}.`)},YyQ=new Set(["utf8","utf16le"]),A8=new Set(["buffer","hex","base64","base64url","latin1","ascii"]),Dv=new Set([...YyQ,...A8]),JyQ=(A)=>{if(A===null)return"buffer";if(typeof A!=="string")return;let Q=A.toLowerCase();if(Q in eAA)return eAA[Q];if(Dv.has(Q))return Q},eAA={"utf-8":"utf8","utf-16le":"utf16le","ucs-2":"utf16le",ucs2:"utf16le",binary:"latin1"},wz=(A)=>typeof A==="string"?`"${A}"`:String(A);import{statSync as CyQ}from"node:fs";import XyQ from"node:path";import GyQ from"node:process";var QQA=(A=BQA())=>{let Q=E4(A,'The "cwd" option');return XyQ.resolve(Q)},BQA=()=>{try{return GyQ.cwd()}catch(A){throw A.message=`The current directory does not exist. +${A.message}`,A}},YQA=(A,Q)=>{if(Q===BQA())return A;let B;try{B=CyQ(Q)}catch(Y){return`The "cwd" option is invalid: ${Q}. ${Y.message} ${A}`}if(!B.isDirectory())return`The "cwd" option is not a directory: ${Q}. -${A}`;return A};var mM=(A,Q,B)=>{B.cwd=FAA(B.cwd);let[Y,J,C]=YAA(A,Q,B),{command:X,args:G,options:F}=UAA.default._parse(Y,J,C),W=to(F),Z=dvQ(W);if(ee(Z),GAA(Z),JAA(Z),Le(Z),oe(Z),Z.shell=gk(Z.shell),Z.env=cvQ(Z),Z.killSignal=Ve(Z.killSignal),Z.forceKillAfterDelay=De(Z.forceKillAfterDelay),Z.lines=Z.lines.map((U,$)=>U&&!e9.has(Z.encoding)&&Z.buffer[$]),$AA.platform==="win32"&&uvQ.basename(X,".exe")==="cmd")G.unshift("/q");return{file:X,commandArguments:G,options:Z}},dvQ=({extendEnv:A=!0,preferLocal:Q=!1,cwd:B,localDir:Y=B,encoding:J="utf8",reject:C=!0,cleanup:X=!0,all:G=!1,windowsHide:F=!0,killSignal:W="SIGTERM",forceKillAfterDelay:Z=!0,gracefulCancel:U=!1,ipcInput:$,ipc:E=$!==void 0||U,serialization:K="advanced",...I})=>({...I,extendEnv:A,preferLocal:Q,cwd:B,localDirectory:Y,encoding:J,reject:C,cleanup:X,all:G,windowsHide:F,killSignal:W,forceKillAfterDelay:Z,gracefulCancel:U,ipcInput:$,ipc:E,serialization:K}),cvQ=({env:A,extendEnv:Q,preferLocal:B,node:Y,localDirectory:J,nodePath:C})=>{let X=Q?{...$AA.env,...A}:A;if(B||Y)return Ce({env:X,cwd:J,execPath:C,preferLocal:B,addExecPath:Y});return X};import{inspect as zyQ}from"node:util";function I4(A){if(typeof A==="string")return lvQ(A);if(!(ArrayBuffer.isView(A)&&A.BYTES_PER_ELEMENT===1))throw Error("Input must be a string or a Uint8Array");return pvQ(A)}var lvQ=(A)=>A.at(-1)===EAA?A.slice(0,A.at(-2)===KAA?-2:-1):A,pvQ=(A)=>A.at(-1)===ivQ?A.subarray(0,A.at(-2)===nvQ?-2:-1):A,EAA=` -`,ivQ=EAA.codePointAt(0),KAA="\r",nvQ=KAA.codePointAt(0);import{on as NyQ}from"node:events";import{finished as LyQ}from"node:stream/promises";function WC(A,{checkOpen:Q=!0}={}){return A!==null&&typeof A==="object"&&(A.writable||A.readable||!Q||A.writable===void 0&&A.readable===void 0)&&typeof A.pipe==="function"}function $_(A,{checkOpen:Q=!0}={}){return WC(A,{checkOpen:Q})&&(A.writable||!Q)&&typeof A.write==="function"&&typeof A.end==="function"&&typeof A.writable==="boolean"&&typeof A.writableObjectMode==="boolean"&&typeof A.destroy==="function"&&typeof A.destroyed==="boolean"}function HW(A,{checkOpen:Q=!0}={}){return WC(A,{checkOpen:Q})&&(A.readable||!Q)&&typeof A.read==="function"&&typeof A.readable==="boolean"&&typeof A.readableObjectMode==="boolean"&&typeof A.destroy==="function"&&typeof A.destroyed==="boolean"}function U_(A,Q){return $_(A,Q)&&HW(A,Q)}var svQ=Object.getPrototypeOf(Object.getPrototypeOf(async function*(){}).prototype);class VAA{#A;#Q;#B=!1;#Y=void 0;constructor(A,Q){this.#A=A,this.#Q=Q}next(){let A=()=>this.#J();return this.#Y=this.#Y?this.#Y.then(A,A):A(),this.#Y}return(A){let Q=()=>this.#C(A);return this.#Y?this.#Y.then(Q,Q):Q()}async#J(){if(this.#B)return{done:!0,value:void 0};let A;try{A=await this.#A.read()}catch(Q){throw this.#Y=void 0,this.#B=!0,this.#A.releaseLock(),Q}return A.done&&(this.#Y=void 0,this.#B=!0,this.#A.releaseLock()),A}async#C(A){if(this.#B)return{done:!0,value:A};if(this.#B=!0,!this.#Q){let Q=this.#A.cancel(A);return this.#A.releaseLock(),await Q,{done:!0,value:A}}return this.#A.releaseLock(),{done:!0,value:A}}}var E_=Symbol();function IAA(){return this[E_].next()}Object.defineProperty(IAA,"name",{value:"next"});function HAA(A){return this[E_].return(A)}Object.defineProperty(HAA,"name",{value:"return"});var rvQ=Object.create(svQ,{next:{enumerable:!0,configurable:!0,writable:!0,value:IAA},return:{enumerable:!0,configurable:!0,writable:!0,value:HAA}});function K_({preventCancel:A=!1}={}){let Q=this.getReader(),B=new VAA(Q,A),Y=Object.create(rvQ);return Y[E_]=B,Y}var DAA=(A)=>{if(HW(A,{checkOpen:!1})&&yV.on!==void 0)return ovQ(A);if(typeof A?.[Symbol.asyncIterator]==="function")return A;if(avQ.call(A)==="[object ReadableStream]")return K_.call(A);throw TypeError("The first argument must be a Readable, a ReadableStream, or an async iterable.")},{toString:avQ}=Object.prototype,ovQ=async function*(A){let Q=new AbortController,B={};tvQ(A,Q,B);try{for await(let[Y]of yV.on(A,"data",{signal:Q.signal}))yield Y}catch(Y){if(B.error!==void 0)throw B.error;else if(!Q.signal.aborted)throw Y}finally{A.destroy()}},tvQ=async(A,Q,B)=>{try{await yV.finished(A,{cleanup:!0,readable:!0,writable:!1,error:!1})}catch(Y){B.error=Y}finally{Q.abort()}},yV={};var H4=async(A,{init:Q,convertChunk:B,getSize:Y,truncateChunk:J,addChunk:C,getFinalChunk:X,finalize:G},{maxBuffer:F=Number.POSITIVE_INFINITY}={})=>{let W=DAA(A),Z=Q();Z.length=0;try{for await(let U of W){let $=AyQ(U),E=B[$](U,Z);qAA({convertedChunk:E,state:Z,getSize:Y,truncateChunk:J,addChunk:C,maxBuffer:F})}return evQ({state:Z,convertChunk:B,getSize:Y,truncateChunk:J,addChunk:C,getFinalChunk:X,maxBuffer:F}),G(Z)}catch(U){let $=typeof U==="object"&&U!==null?U:Error(U);throw $.bufferedData=G(Z),$}},evQ=({state:A,getSize:Q,truncateChunk:B,addChunk:Y,getFinalChunk:J,maxBuffer:C})=>{let X=J(A);if(X!==void 0)qAA({convertedChunk:X,state:A,getSize:Q,truncateChunk:B,addChunk:Y,maxBuffer:C})},qAA=({convertedChunk:A,state:Q,getSize:B,truncateChunk:Y,addChunk:J,maxBuffer:C})=>{let X=B(A),G=Q.length+X;if(G<=C){NAA(A,Q,J,G);return}let F=Y(A,C-Q.length);if(F!==void 0)NAA(F,Q,J,C);throw new xX},NAA=(A,Q,B,Y)=>{Q.contents=B(A,Q,Y),Q.length=Y},AyQ=(A)=>{let Q=typeof A;if(Q==="string")return"string";if(Q!=="object"||A===null)return"others";if(globalThis.Buffer?.isBuffer(A))return"buffer";let B=LAA.call(A);if(B==="[object ArrayBuffer]")return"arrayBuffer";if(B==="[object DataView]")return"dataView";if(Number.isInteger(A.byteLength)&&Number.isInteger(A.byteOffset)&&LAA.call(A.buffer)==="[object ArrayBuffer]")return"typedArray";return"others"},{toString:LAA}=Object.prototype;class xX extends Error{name="MaxBufferError";constructor(){super("maxBuffer exceeded")}}var fX=(A)=>A,gV=()=>{return},uM=({contents:A})=>A,dM=(A)=>{throw Error(`Streams in object mode are not supported: ${String(A)}`)},cM=(A)=>A.length;async function lM(A,Q){return H4(A,JyQ,Q)}var QyQ=()=>({contents:[]}),ByQ=()=>1,YyQ=(A,{contents:Q})=>{return Q.push(A),Q},JyQ={init:QyQ,convertChunk:{string:fX,buffer:fX,arrayBuffer:fX,dataView:fX,typedArray:fX,others:fX},getSize:ByQ,truncateChunk:gV,addChunk:YyQ,getFinalChunk:gV,finalize:uM};async function pM(A,Q){return H4(A,EyQ,Q)}var CyQ=()=>({contents:new ArrayBuffer(0)}),XyQ=(A)=>GyQ.encode(A),GyQ=new TextEncoder,MAA=(A)=>new Uint8Array(A),zAA=(A)=>new Uint8Array(A.buffer,A.byteOffset,A.byteLength),FyQ=(A,Q)=>A.slice(0,Q),WyQ=(A,{contents:Q,length:B},Y)=>{let J=jAA()?$yQ(Q,Y):ZyQ(Q,Y);return new Uint8Array(J).set(A,B),J},ZyQ=(A,Q)=>{if(Q<=A.byteLength)return A;let B=new ArrayBuffer(wAA(Q));return new Uint8Array(B).set(new Uint8Array(A),0),B},$yQ=(A,Q)=>{if(Q<=A.maxByteLength)return A.resize(Q),A;let B=new ArrayBuffer(Q,{maxByteLength:wAA(Q)});return new Uint8Array(B).set(new Uint8Array(A),0),B},wAA=(A)=>RAA**Math.ceil(Math.log(A)/Math.log(RAA)),RAA=2,UyQ=({contents:A,length:Q})=>jAA()?A:A.slice(0,Q),jAA=()=>("resize"in ArrayBuffer.prototype),EyQ={init:CyQ,convertChunk:{string:XyQ,buffer:MAA,arrayBuffer:MAA,dataView:zAA,typedArray:zAA,others:dM},getSize:cM,truncateChunk:FyQ,addChunk:WyQ,getFinalChunk:gV,finalize:UyQ};async function nM(A,Q){return H4(A,DyQ,Q)}var KyQ=()=>({contents:"",textDecoder:new TextDecoder}),iM=(A,{textDecoder:Q})=>Q.decode(A,{stream:!0}),VyQ=(A,{contents:Q})=>Q+A,IyQ=(A,Q)=>A.slice(0,Q),HyQ=({textDecoder:A})=>{let Q=A.decode();return Q===""?void 0:Q},DyQ={init:KyQ,convertChunk:{string:fX,buffer:iM,arrayBuffer:iM,dataView:iM,typedArray:iM,others:dM},getSize:cM,truncateChunk:IyQ,addChunk:VyQ,getFinalChunk:HyQ,finalize:uM};Object.assign(yV,{on:NyQ,finished:LyQ});var OAA=({error:A,stream:Q,readableObjectMode:B,lines:Y,encoding:J,fdNumber:C})=>{if(!(A instanceof xX))throw A;if(C==="all")return A;let X=qyQ(B,Y,J);throw A.maxBufferInfo={fdNumber:C,unit:X},Q.destroy(),A},qyQ=(A,Q,B)=>{if(A)return"objects";if(Q)return"lines";if(B==="buffer")return"bytes";return"characters"},PAA=(A,Q,B)=>{if(Q.length!==B)return;let Y=new xX;throw Y.maxBufferInfo={fdNumber:"ipc"},Y},TAA=(A,Q)=>{let{streamName:B,threshold:Y,unit:J}=MyQ(A,Q);return`Command's ${B} was larger than ${Y} ${J}`},MyQ=(A,Q)=>{if(A?.maxBufferInfo===void 0)return{streamName:"output",threshold:Q[1],unit:"bytes"};let{maxBufferInfo:{fdNumber:B,unit:Y}}=A;delete A.maxBufferInfo;let J=hX(Q,B);if(B==="ipc")return{streamName:"IPC output",threshold:J,unit:"messages"};return{streamName:WM(B),threshold:J,unit:Y}},SAA=(A,Q,B)=>A?.code==="ENOBUFS"&&Q!==null&&Q.some((Y)=>Y!==null&&Y.length>sM(B)),kAA=(A,Q,B)=>{if(!Q)return A;let Y=sM(B);return A.length>Y?A.slice(0,Y):A},sM=([,A])=>A;var vAA=({stdio:A,all:Q,ipcOutput:B,originalError:Y,signal:J,signalDescription:C,exitCode:X,escapedCommand:G,timedOut:F,isCanceled:W,isGracefullyCanceled:Z,isMaxBuffer:U,isForcefullyTerminated:$,forceKillAfterDelay:E,killSignal:K,maxBuffer:I,timeout:V,cwd:H})=>{let D=Y?.code,L=RyQ({originalError:Y,timedOut:F,timeout:V,isMaxBuffer:U,maxBuffer:I,errorCode:D,signal:J,signalDescription:C,exitCode:X,isCanceled:W,isGracefullyCanceled:Z,isForcefullyTerminated:$,forceKillAfterDelay:E,killSignal:K}),z=jyQ(Y,H),M=z===void 0?"":` -${z}`,N=`${L}: ${G}${M}`,q=Q===void 0?[A[2],A[1]]:[Q],w=[N,...q,...A.slice(3),B.map((P)=>OyQ(P)).join(` -`)].map((P)=>SV(I4(PyQ(P)))).filter(Boolean).join(` +${A}`;return A};var jz=(A,Q,B)=>{B.cwd=QQA(B.cwd);let[Y,J,C]=aAA(A,Q,B),{command:X,args:G,options:F}=CQA.default._parse(Y,J,C),W=pt(F),Z=WyQ(W);if(iAA(Z),AQA(Z),oAA(Z),EAA(Z),lAA(Z),Z.shell=c_(Z.shell),Z.env=ZyQ(Z),Z.killSignal=FAA(Z.killSignal),Z.forceKillAfterDelay=$AA(Z.forceKillAfterDelay),Z.lines=Z.lines.map((U,$)=>U&&!A8.has(Z.encoding)&&Z.buffer[$]),JQA.platform==="win32"&&FyQ.basename(X,".exe")==="cmd")G.unshift("/q");return{file:X,commandArguments:G,options:Z}},WyQ=({extendEnv:A=!0,preferLocal:Q=!1,cwd:B,localDir:Y=B,encoding:J="utf8",reject:C=!0,cleanup:X=!0,all:G=!1,windowsHide:F=!0,killSignal:W="SIGTERM",forceKillAfterDelay:Z=!0,gracefulCancel:U=!1,ipcInput:$,ipc:E=$!==void 0||U,serialization:K="advanced",...I})=>({...I,extendEnv:A,preferLocal:Q,cwd:B,localDirectory:Y,encoding:J,reject:C,cleanup:X,all:G,windowsHide:F,killSignal:W,forceKillAfterDelay:Z,gracefulCancel:U,ipcInput:$,ipc:E,serialization:K}),ZyQ=({env:A,extendEnv:Q,preferLocal:B,node:Y,localDirectory:J,nodePath:C})=>{let X=Q?{...JQA.env,...A}:A;if(B||Y)return te({env:X,cwd:J,execPath:C,preferLocal:B,addExecPath:Y});return X};import{inspect as lyQ}from"node:util";function q4(A){if(typeof A==="string")return $yQ(A);if(!(ArrayBuffer.isView(A)&&A.BYTES_PER_ELEMENT===1))throw Error("Input must be a string or a Uint8Array");return UyQ(A)}var $yQ=(A)=>A.at(-1)===XQA?A.slice(0,A.at(-2)===GQA?-2:-1):A,UyQ=(A)=>A.at(-1)===EyQ?A.subarray(0,A.at(-2)===KyQ?-2:-1):A,XQA=` +`,EyQ=XQA.codePointAt(0),GQA="\r",KyQ=GQA.codePointAt(0);import{on as myQ}from"node:events";import{finished as uyQ}from"node:stream/promises";function KC(A,{checkOpen:Q=!0}={}){return A!==null&&typeof A==="object"&&(A.writable||A.readable||!Q||A.writable===void 0&&A.readable===void 0)&&typeof A.pipe==="function"}function Nv(A,{checkOpen:Q=!0}={}){return KC(A,{checkOpen:Q})&&(A.writable||!Q)&&typeof A.write==="function"&&typeof A.end==="function"&&typeof A.writable==="boolean"&&typeof A.writableObjectMode==="boolean"&&typeof A.destroy==="function"&&typeof A.destroyed==="boolean"}function qW(A,{checkOpen:Q=!0}={}){return KC(A,{checkOpen:Q})&&(A.readable||!Q)&&typeof A.read==="function"&&typeof A.readable==="boolean"&&typeof A.readableObjectMode==="boolean"&&typeof A.destroy==="function"&&typeof A.destroyed==="boolean"}function Lv(A,Q){return Nv(A,Q)&&qW(A,Q)}var VyQ=Object.getPrototypeOf(Object.getPrototypeOf(async function*(){}).prototype);class FQA{#A;#Q;#B=!1;#Y=void 0;constructor(A,Q){this.#A=A,this.#Q=Q}next(){let A=()=>this.#J();return this.#Y=this.#Y?this.#Y.then(A,A):A(),this.#Y}return(A){let Q=()=>this.#C(A);return this.#Y?this.#Y.then(Q,Q):Q()}async#J(){if(this.#B)return{done:!0,value:void 0};let A;try{A=await this.#A.read()}catch(Q){throw this.#Y=void 0,this.#B=!0,this.#A.releaseLock(),Q}return A.done&&(this.#Y=void 0,this.#B=!0,this.#A.releaseLock()),A}async#C(A){if(this.#B)return{done:!0,value:A};if(this.#B=!0,!this.#Q){let Q=this.#A.cancel(A);return this.#A.releaseLock(),await Q,{done:!0,value:A}}return this.#A.releaseLock(),{done:!0,value:A}}}var qv=Symbol();function WQA(){return this[qv].next()}Object.defineProperty(WQA,"name",{value:"next"});function ZQA(A){return this[qv].return(A)}Object.defineProperty(ZQA,"name",{value:"return"});var IyQ=Object.create(VyQ,{next:{enumerable:!0,configurable:!0,writable:!0,value:WQA},return:{enumerable:!0,configurable:!0,writable:!0,value:ZQA}});function Mv({preventCancel:A=!1}={}){let Q=this.getReader(),B=new FQA(Q,A),Y=Object.create(IyQ);return Y[qv]=B,Y}var $QA=(A)=>{if(qW(A,{checkOpen:!1})&&AI.on!==void 0)return DyQ(A);if(typeof A?.[Symbol.asyncIterator]==="function")return A;if(HyQ.call(A)==="[object ReadableStream]")return Mv.call(A);throw TypeError("The first argument must be a Readable, a ReadableStream, or an async iterable.")},{toString:HyQ}=Object.prototype,DyQ=async function*(A){let Q=new AbortController,B={};NyQ(A,Q,B);try{for await(let[Y]of AI.on(A,"data",{signal:Q.signal}))yield Y}catch(Y){if(B.error!==void 0)throw B.error;else if(!Q.signal.aborted)throw Y}finally{A.destroy()}},NyQ=async(A,Q,B)=>{try{await AI.finished(A,{cleanup:!0,readable:!0,writable:!1,error:!1})}catch(Y){B.error=Y}finally{Q.abort()}},AI={};var M4=async(A,{init:Q,convertChunk:B,getSize:Y,truncateChunk:J,addChunk:C,getFinalChunk:X,finalize:G},{maxBuffer:F=Number.POSITIVE_INFINITY}={})=>{let W=$QA(A),Z=Q();Z.length=0;try{for await(let U of W){let $=qyQ(U),E=B[$](U,Z);KQA({convertedChunk:E,state:Z,getSize:Y,truncateChunk:J,addChunk:C,maxBuffer:F})}return LyQ({state:Z,convertChunk:B,getSize:Y,truncateChunk:J,addChunk:C,getFinalChunk:X,maxBuffer:F}),G(Z)}catch(U){let $=typeof U==="object"&&U!==null?U:Error(U);throw $.bufferedData=G(Z),$}},LyQ=({state:A,getSize:Q,truncateChunk:B,addChunk:Y,getFinalChunk:J,maxBuffer:C})=>{let X=J(A);if(X!==void 0)KQA({convertedChunk:X,state:A,getSize:Q,truncateChunk:B,addChunk:Y,maxBuffer:C})},KQA=({convertedChunk:A,state:Q,getSize:B,truncateChunk:Y,addChunk:J,maxBuffer:C})=>{let X=B(A),G=Q.length+X;if(G<=C){UQA(A,Q,J,G);return}let F=Y(A,C-Q.length);if(F!==void 0)UQA(F,Q,J,C);throw new d6},UQA=(A,Q,B,Y)=>{Q.contents=B(A,Q,Y),Q.length=Y},qyQ=(A)=>{let Q=typeof A;if(Q==="string")return"string";if(Q!=="object"||A===null)return"others";if(globalThis.Buffer?.isBuffer(A))return"buffer";let B=EQA.call(A);if(B==="[object ArrayBuffer]")return"arrayBuffer";if(B==="[object DataView]")return"dataView";if(Number.isInteger(A.byteLength)&&Number.isInteger(A.byteOffset)&&EQA.call(A.buffer)==="[object ArrayBuffer]")return"typedArray";return"others"},{toString:EQA}=Object.prototype;class d6 extends Error{name="MaxBufferError";constructor(){super("maxBuffer exceeded")}}var c6=(A)=>A,QI=()=>{return},Oz=({contents:A})=>A,Pz=(A)=>{throw Error(`Streams in object mode are not supported: ${String(A)}`)},Tz=(A)=>A.length;async function Sz(A,Q){return M4(A,wyQ,Q)}var MyQ=()=>({contents:[]}),zyQ=()=>1,RyQ=(A,{contents:Q})=>{return Q.push(A),Q},wyQ={init:MyQ,convertChunk:{string:c6,buffer:c6,arrayBuffer:c6,dataView:c6,typedArray:c6,others:c6},getSize:zyQ,truncateChunk:QI,addChunk:RyQ,getFinalChunk:QI,finalize:Oz};async function kz(A,Q){return M4(A,yyQ,Q)}var jyQ=()=>({contents:new ArrayBuffer(0)}),OyQ=(A)=>PyQ.encode(A),PyQ=new TextEncoder,VQA=(A)=>new Uint8Array(A),IQA=(A)=>new Uint8Array(A.buffer,A.byteOffset,A.byteLength),TyQ=(A,Q)=>A.slice(0,Q),SyQ=(A,{contents:Q,length:B},Y)=>{let J=NQA()?_yQ(Q,Y):kyQ(Q,Y);return new Uint8Array(J).set(A,B),J},kyQ=(A,Q)=>{if(Q<=A.byteLength)return A;let B=new ArrayBuffer(DQA(Q));return new Uint8Array(B).set(new Uint8Array(A),0),B},_yQ=(A,Q)=>{if(Q<=A.maxByteLength)return A.resize(Q),A;let B=new ArrayBuffer(Q,{maxByteLength:DQA(Q)});return new Uint8Array(B).set(new Uint8Array(A),0),B},DQA=(A)=>HQA**Math.ceil(Math.log(A)/Math.log(HQA)),HQA=2,vyQ=({contents:A,length:Q})=>NQA()?A:A.slice(0,Q),NQA=()=>("resize"in ArrayBuffer.prototype),yyQ={init:jyQ,convertChunk:{string:OyQ,buffer:VQA,arrayBuffer:VQA,dataView:IQA,typedArray:IQA,others:Pz},getSize:Tz,truncateChunk:TyQ,addChunk:SyQ,getFinalChunk:QI,finalize:vyQ};async function vz(A,Q){return M4(A,byQ,Q)}var hyQ=()=>({contents:"",textDecoder:new TextDecoder}),_z=(A,{textDecoder:Q})=>Q.decode(A,{stream:!0}),gyQ=(A,{contents:Q})=>Q+A,xyQ=(A,Q)=>A.slice(0,Q),fyQ=({textDecoder:A})=>{let Q=A.decode();return Q===""?void 0:Q},byQ={init:hyQ,convertChunk:{string:c6,buffer:_z,arrayBuffer:_z,dataView:_z,typedArray:_z,others:Pz},getSize:Tz,truncateChunk:xyQ,addChunk:gyQ,getFinalChunk:fyQ,finalize:Oz};Object.assign(AI,{on:myQ,finished:uyQ});var LQA=({error:A,stream:Q,readableObjectMode:B,lines:Y,encoding:J,fdNumber:C})=>{if(!(A instanceof d6))throw A;if(C==="all")return A;let X=dyQ(B,Y,J);throw A.maxBufferInfo={fdNumber:C,unit:X},Q.destroy(),A},dyQ=(A,Q,B)=>{if(A)return"objects";if(Q)return"lines";if(B==="buffer")return"bytes";return"characters"},qQA=(A,Q,B)=>{if(Q.length!==B)return;let Y=new d6;throw Y.maxBufferInfo={fdNumber:"ipc"},Y},MQA=(A,Q)=>{let{streamName:B,threshold:Y,unit:J}=cyQ(A,Q);return`Command's ${B} was larger than ${Y} ${J}`},cyQ=(A,Q)=>{if(A?.maxBufferInfo===void 0)return{streamName:"output",threshold:Q[1],unit:"bytes"};let{maxBufferInfo:{fdNumber:B,unit:Y}}=A;delete A.maxBufferInfo;let J=u6(Q,B);if(B==="ipc")return{streamName:"IPC output",threshold:J,unit:"messages"};return{streamName:rM(B),threshold:J,unit:Y}},zQA=(A,Q,B)=>A?.code==="ENOBUFS"&&Q!==null&&Q.some((Y)=>Y!==null&&Y.length>yz(B)),RQA=(A,Q,B)=>{if(!Q)return A;let Y=yz(B);return A.length>Y?A.slice(0,Y):A},yz=([,A])=>A;var jQA=({stdio:A,all:Q,ipcOutput:B,originalError:Y,signal:J,signalDescription:C,exitCode:X,escapedCommand:G,timedOut:F,isCanceled:W,isGracefullyCanceled:Z,isMaxBuffer:U,isForcefullyTerminated:$,forceKillAfterDelay:E,killSignal:K,maxBuffer:I,timeout:V,cwd:H})=>{let D=Y?.code,L=pyQ({originalError:Y,timedOut:F,timeout:V,isMaxBuffer:U,maxBuffer:I,errorCode:D,signal:J,signalDescription:C,exitCode:X,isCanceled:W,isGracefullyCanceled:Z,isForcefullyTerminated:$,forceKillAfterDelay:E,killSignal:K}),z=nyQ(Y,H),M=z===void 0?"":` +${z}`,N=`${L}: ${G}${M}`,q=Q===void 0?[A[2],A[1]]:[Q],w=[N,...q,...A.slice(3),B.map((P)=>syQ(P)).join(` +`)].map((P)=>aV(q4(ryQ(P)))).filter(Boolean).join(` -`);return{originalMessage:z,shortMessage:N,message:w}},RyQ=({originalError:A,timedOut:Q,timeout:B,isMaxBuffer:Y,maxBuffer:J,errorCode:C,signal:X,signalDescription:G,exitCode:F,isCanceled:W,isGracefullyCanceled:Z,isForcefullyTerminated:U,forceKillAfterDelay:$,killSignal:E})=>{let K=wyQ(U,$);if(Q)return`Command timed out after ${B} milliseconds${K}`;if(Z){if(X===void 0)return`Command was gracefully canceled with exit code ${F}`;return U?`Command was gracefully canceled${K}`:`Command was gracefully canceled with ${X} (${G})`}if(W)return`Command was canceled${K}`;if(Y)return`${TAA(A,J)}${K}`;if(C!==void 0)return`Command failed with ${C}${K}`;if(U)return`Command was killed with ${E} (${wM(E)})${K}`;if(X!==void 0)return`Command was killed with ${X} (${G})`;if(F!==void 0)return`Command failed with exit code ${F}`;return"Command failed"},wyQ=(A,Q)=>A?` and was forcefully terminated after ${Q} milliseconds`:"",jyQ=(A,Q)=>{if(A instanceof I1)return;let B=Fe(A)?A.originalMessage:String(A?.message??A),Y=SV(ZAA(B,Q));return Y===""?void 0:Y},OyQ=(A)=>typeof A==="string"?A:zyQ(A),PyQ=(A)=>Array.isArray(A)?A.map((Q)=>I4(_AA(Q))).filter(Boolean).join(` -`):_AA(A),_AA=(A)=>{if(typeof A==="string")return A;if(RY(A))return GM(A);return""};var rM=({command:A,escapedCommand:Q,stdio:B,all:Y,ipcOutput:J,options:{cwd:C},startTime:X})=>yAA({command:A,escapedCommand:Q,cwd:C,durationMs:ck(X),failed:!1,timedOut:!1,isCanceled:!1,isGracefullyCanceled:!1,isTerminated:!1,isMaxBuffer:!1,isForcefullyTerminated:!1,exitCode:0,stdout:B[1],stderr:B[2],all:Y,stdio:B,ipcOutput:J,pipedFrom:[]}),D4=({error:A,command:Q,escapedCommand:B,fileDescriptors:Y,options:J,startTime:C,isSync:X})=>hV({error:A,command:Q,escapedCommand:B,startTime:C,timedOut:!1,isCanceled:!1,isGracefullyCanceled:!1,isMaxBuffer:!1,isForcefullyTerminated:!1,stdio:Array.from({length:Y.length}),ipcOutput:[],options:J,isSync:X}),hV=({error:A,command:Q,escapedCommand:B,startTime:Y,timedOut:J,isCanceled:C,isGracefullyCanceled:X,isMaxBuffer:G,isForcefullyTerminated:F,exitCode:W,signal:Z,stdio:U,all:$,ipcOutput:E,options:{timeoutDuration:K,timeout:I=K,forceKillAfterDelay:V,killSignal:H,cwd:D,maxBuffer:L},isSync:z})=>{let{exitCode:M,signal:N,signalDescription:q}=SyQ(W,Z),{originalMessage:w,shortMessage:P,message:_}=vAA({stdio:U,all:$,ipcOutput:E,originalError:A,signal:N,signalDescription:q,exitCode:M,escapedCommand:B,timedOut:J,isCanceled:C,isGracefullyCanceled:X,isMaxBuffer:G,isForcefullyTerminated:F,forceKillAfterDelay:V,killSignal:H,maxBuffer:L,timeout:I,cwd:D}),O=Xe(A,_,z);return Object.assign(O,TyQ({error:O,command:Q,escapedCommand:B,startTime:Y,timedOut:J,isCanceled:C,isGracefullyCanceled:X,isMaxBuffer:G,isForcefullyTerminated:F,exitCode:M,signal:N,signalDescription:q,stdio:U,all:$,ipcOutput:E,cwd:D,originalMessage:w,shortMessage:P})),O},TyQ=({error:A,command:Q,escapedCommand:B,startTime:Y,timedOut:J,isCanceled:C,isGracefullyCanceled:X,isMaxBuffer:G,isForcefullyTerminated:F,exitCode:W,signal:Z,signalDescription:U,stdio:$,all:E,ipcOutput:K,cwd:I,originalMessage:V,shortMessage:H})=>yAA({shortMessage:H,originalMessage:V,command:Q,escapedCommand:B,cwd:I,durationMs:ck(Y),failed:!0,timedOut:J,isCanceled:C,isGracefullyCanceled:X,isTerminated:Z!==void 0,isMaxBuffer:G,isForcefullyTerminated:F,exitCode:W,signal:Z,signalDescription:U,code:A.cause?.code,stdout:$[1],stderr:$[2],all:E,stdio:$,ipcOutput:K,pipedFrom:[]}),yAA=(A)=>Object.fromEntries(Object.entries(A).filter(([,Q])=>Q!==void 0)),SyQ=(A,Q)=>{let B=A===null?void 0:A,Y=Q===null?void 0:Q,J=Y===void 0?void 0:wM(Q);return{exitCode:B,signal:Y,signalDescription:J}};var gAA=(A)=>Number.isFinite(A)?A:0;function kyQ(A){return{days:Math.trunc(A/86400000),hours:Math.trunc(A/3600000%24),minutes:Math.trunc(A/60000%60),seconds:Math.trunc(A/1000%60),milliseconds:Math.trunc(A%1000),microseconds:Math.trunc(gAA(A*1000)%1000),nanoseconds:Math.trunc(gAA(A*1e6)%1000)}}function _yQ(A){return{days:A/86400000n,hours:A/3600000n%24n,minutes:A/60000n%60n,seconds:A/1000n%60n,milliseconds:A%1000n,microseconds:0n,nanoseconds:0n}}function V_(A){switch(typeof A){case"number":{if(Number.isFinite(A))return kyQ(A);break}case"bigint":return _yQ(A)}throw TypeError("Expected a finite number or bigint")}var vyQ=(A)=>A===0||A===0n,yyQ=(A,Q)=>Q===1||Q===1n?A:`${A}s`,gyQ=0.0000001,hyQ=24n*60n*60n*1000n;function I_(A,Q){let B=typeof A==="bigint";if(!B&&!Number.isFinite(A))throw TypeError("Expected a finite number or bigint");Q={...Q};let Y=A<0?"-":"";if(A=A<0?-A:A,Q.colonNotation)Q.compact=!1,Q.formatSubMilliseconds=!1,Q.separateMilliseconds=!1,Q.verbose=!1;if(Q.compact)Q.unitCount=1,Q.secondsDecimalDigits=0,Q.millisecondsDecimalDigits=0;let J=[],C=(Z,U)=>{let $=Math.floor(Z*10**U+gyQ);return(Math.round($)/10**U).toFixed(U)},X=(Z,U,$,E)=>{if((J.length===0||!Q.colonNotation)&&vyQ(Z)&&!(Q.colonNotation&&$==="m"))return;if(E??=String(Z),Q.colonNotation){let K=E.includes(".")?E.split(".")[0].length:E.length,I=J.length>0?2:1;E="0".repeat(Math.max(0,I-K))+E}else E+=Q.verbose?" "+yyQ(U,Z):$;J.push(E)},G=V_(A),F=BigInt(G.days);if(Q.hideYearAndDays)X(BigInt(F)*24n+BigInt(G.hours),"hour","h");else{if(Q.hideYear)X(F,"day","d");else X(F/365n,"year","y"),X(F%365n,"day","d");X(Number(G.hours),"hour","h")}if(X(Number(G.minutes),"minute","m"),!Q.hideSeconds)if(Q.separateMilliseconds||Q.formatSubMilliseconds||!Q.colonNotation&&A<1000){let Z=Number(G.seconds),U=Number(G.milliseconds),$=Number(G.microseconds),E=Number(G.nanoseconds);if(X(Z,"second","s"),Q.formatSubMilliseconds)X(U,"millisecond","ms"),X($,"microsecond","µs"),X(E,"nanosecond","ns");else{let K=U+$/1000+E/1e6,I=typeof Q.millisecondsDecimalDigits==="number"?Q.millisecondsDecimalDigits:0,V=K>=1?Math.round(K):Math.ceil(K),H=I?K.toFixed(I):V;X(Number.parseFloat(H),"millisecond","ms",H)}}else{let Z=(B?Number(A%hyQ):A)/1000%60,U=typeof Q.secondsDecimalDigits==="number"?Q.secondsDecimalDigits:1,$=C(Z,U),E=Q.keepDecimalsOnWholeSeconds?$:$.replace(/\.0+$/,"");X(Number.parseFloat(E),"second","s",E)}if(J.length===0)return Y+"0"+(Q.verbose?" milliseconds":"ms");let W=Q.colonNotation?":":" ";if(typeof Q.unitCount==="number")J=J.slice(0,Math.max(Q.unitCount,1));return Y+J.join(W)}var hAA=(A,Q)=>{if(A.failed)V1({type:"error",verboseMessage:A.shortMessage,verboseInfo:Q,result:A})};var xAA=(A,Q)=>{if(!W4(Q))return;hAA(A,Q),xyQ(A,Q)},xyQ=(A,Q)=>{let B=`(done in ${I_(A.durationMs)})`;V1({type:"duration",verboseMessage:B,verboseInfo:Q,result:A})};var N4=(A,Q,{reject:B})=>{if(xAA(A,Q),A.failed&&B)throw A;return A};import{readFileSync as ZQA}from"node:fs";var mAA=(A,Q)=>{if(DW(A))return"asyncGenerator";if(cAA(A))return"generator";if(aM(A))return"fileUrl";if(dyQ(A))return"filePath";if(pyQ(A))return"webStream";if(WC(A,{checkOpen:!1}))return"native";if(RY(A))return"uint8Array";if(iyQ(A))return"asyncIterable";if(nyQ(A))return"iterable";if(N_(A))return uAA({transform:A},Q);if(uyQ(A))return fyQ(A,Q);return"native"},fyQ=(A,Q)=>{if(U_(A.transform,{checkOpen:!1}))return byQ(A,Q);if(N_(A.transform))return uAA(A,Q);return myQ(A,Q)},byQ=(A,Q)=>{return dAA(A,Q,"Duplex stream"),"duplex"},uAA=(A,Q)=>{return dAA(A,Q,"web TransformStream"),"webTransform"},dAA=({final:A,binary:Q,objectMode:B},Y,J)=>{fAA(A,`${Y}.final`,J),fAA(Q,`${Y}.binary`,J),H_(B,`${Y}.objectMode`)},fAA=(A,Q,B)=>{if(A!==void 0)throw TypeError(`The \`${Q}\` option can only be defined when using a generator, not a ${B}.`)},myQ=({transform:A,final:Q,binary:B,objectMode:Y},J)=>{if(A!==void 0&&!bAA(A))throw TypeError(`The \`${J}.transform\` option must be a generator, a Duplex stream or a web TransformStream.`);if(U_(Q,{checkOpen:!1}))throw TypeError(`The \`${J}.final\` option must not be a Duplex stream.`);if(N_(Q))throw TypeError(`The \`${J}.final\` option must not be a web TransformStream.`);if(Q!==void 0&&!bAA(Q))throw TypeError(`The \`${J}.final\` option must be a generator.`);return H_(B,`${J}.binary`),H_(Y,`${J}.objectMode`),DW(A)||DW(Q)?"asyncGenerator":"generator"},H_=(A,Q)=>{if(A!==void 0&&typeof A!=="boolean")throw TypeError(`The \`${Q}\` option must use a boolean.`)},bAA=(A)=>DW(A)||cAA(A),DW=(A)=>Object.prototype.toString.call(A)==="[object AsyncGeneratorFunction]",cAA=(A)=>Object.prototype.toString.call(A)==="[object GeneratorFunction]",uyQ=(A)=>e0(A)&&(A.transform!==void 0||A.final!==void 0),aM=(A)=>Object.prototype.toString.call(A)==="[object URL]",lAA=(A)=>aM(A)&&A.protocol!=="file:",dyQ=(A)=>e0(A)&&Object.keys(A).length>0&&Object.keys(A).every((Q)=>cyQ.has(Q))&&D_(A.file),cyQ=new Set(["file","append"]),D_=(A)=>typeof A==="string",pAA=(A,Q)=>A==="native"&&typeof Q==="string"&&!lyQ.has(Q),lyQ=new Set(["ipc","ignore","inherit","overlapped","pipe"]),iAA=(A)=>Object.prototype.toString.call(A)==="[object ReadableStream]",oM=(A)=>Object.prototype.toString.call(A)==="[object WritableStream]",pyQ=(A)=>iAA(A)||oM(A),N_=(A)=>iAA(A?.readable)&&oM(A?.writable),iyQ=(A)=>nAA(A)&&typeof A[Symbol.asyncIterator]==="function",nyQ=(A)=>nAA(A)&&typeof A[Symbol.iterator]==="function",nAA=(A)=>typeof A==="object"&&A!==null,p8=new Set(["generator","asyncGenerator","duplex","webTransform"]),tM=new Set(["fileUrl","filePath","fileNumber"]),L_=new Set(["fileUrl","filePath"]),sAA=new Set([...L_,"webStream","nodeStream"]),rAA=new Set(["webTransform","duplex"]),m6={generator:"a generator",asyncGenerator:"an async generator",fileUrl:"a file URL",filePath:"a file path string",fileNumber:"a file descriptor number",webStream:"a web stream",nodeStream:"a Node.js stream",webTransform:"a web TransformStream",duplex:"a Duplex stream",native:"any value",iterable:"an iterable",asyncIterable:"an async iterable",string:"a string",uint8Array:"a Uint8Array"};var q_=(A,Q,B,Y)=>Y==="output"?syQ(A,Q,B):ryQ(A,Q,B),syQ=(A,Q,B)=>{let Y=Q!==0&&B[Q-1].value.readableObjectMode;return{writableObjectMode:Y,readableObjectMode:A??Y}},ryQ=(A,Q,B)=>{let Y=Q===0?A===!0:B[Q-1].value.readableObjectMode,J=Q!==B.length-1&&(A??Y);return{writableObjectMode:Y,readableObjectMode:J}},aAA=(A,Q)=>{let B=A.findLast(({type:Y})=>p8.has(Y));if(B===void 0)return!1;return Q==="input"?B.value.writableObjectMode:B.value.readableObjectMode};var oAA=(A,Q,B,Y)=>[...A.filter(({type:J})=>!p8.has(J)),...ayQ(A,Q,B,Y)],ayQ=(A,Q,B,{encoding:Y})=>{let J=A.filter(({type:X})=>p8.has(X)),C=Array.from({length:J.length});for(let[X,G]of Object.entries(J))C[X]=oyQ({stdioItem:G,index:Number(X),newTransforms:C,optionName:Q,direction:B,encoding:Y});return QgQ(C,B)},oyQ=({stdioItem:A,stdioItem:{type:Q},index:B,newTransforms:Y,optionName:J,direction:C,encoding:X})=>{if(Q==="duplex")return tyQ({stdioItem:A,optionName:J});if(Q==="webTransform")return eyQ({stdioItem:A,index:B,newTransforms:Y,direction:C});return AgQ({stdioItem:A,index:B,newTransforms:Y,direction:C,encoding:X})},tyQ=({stdioItem:A,stdioItem:{value:{transform:Q,transform:{writableObjectMode:B,readableObjectMode:Y},objectMode:J=Y}},optionName:C})=>{if(J&&!Y)throw TypeError(`The \`${C}.objectMode\` option can only be \`true\` if \`new Duplex({objectMode: true})\` is used.`);if(!J&&Y)throw TypeError(`The \`${C}.objectMode\` option cannot be \`false\` if \`new Duplex({objectMode: true})\` is used.`);return{...A,value:{transform:Q,writableObjectMode:B,readableObjectMode:Y}}},eyQ=({stdioItem:A,stdioItem:{value:Q},index:B,newTransforms:Y,direction:J})=>{let{transform:C,objectMode:X}=e0(Q)?Q:{transform:Q},{writableObjectMode:G,readableObjectMode:F}=q_(X,B,Y,J);return{...A,value:{transform:C,writableObjectMode:G,readableObjectMode:F}}},AgQ=({stdioItem:A,stdioItem:{value:Q},index:B,newTransforms:Y,direction:J,encoding:C})=>{let{transform:X,final:G,binary:F=!1,preserveNewlines:W=!1,objectMode:Z}=e0(Q)?Q:{transform:Q},U=F||e9.has(C),{writableObjectMode:$,readableObjectMode:E}=q_(Z,B,Y,J);return{...A,value:{transform:X,final:G,binary:U,preserveNewlines:W,writableObjectMode:$,readableObjectMode:E}}},QgQ=(A,Q)=>Q==="input"?A.reverse():A;import M_ from"node:process";var tAA=(A,Q,B)=>{let Y=A.map((J)=>BgQ(J,Q));if(Y.includes("input")&&Y.includes("output"))throw TypeError(`The \`${B}\` option must not be an array of both readable and writable values.`);return Y.find(Boolean)??CgQ},BgQ=({type:A,value:Q},B)=>YgQ[B]??eAA[A](Q),YgQ=["input","output","output"],L4=()=>{return},z_=()=>"input",eAA={generator:L4,asyncGenerator:L4,fileUrl:L4,filePath:L4,iterable:z_,asyncIterable:z_,uint8Array:z_,webStream:(A)=>oM(A)?"output":"input",nodeStream(A){if(!HW(A,{checkOpen:!1}))return"output";return $_(A,{checkOpen:!1})?void 0:"input"},webTransform:L4,duplex:L4,native(A){let Q=JgQ(A);if(Q!==void 0)return Q;if(WC(A,{checkOpen:!1}))return eAA.nodeStream(A)}},JgQ=(A)=>{if([0,M_.stdin].includes(A))return"input";if([1,2,M_.stdout,M_.stderr].includes(A))return"output"},CgQ="output";var AQA=(A,Q)=>Q&&!A.includes("ipc")?[...A,"ipc"]:A;var QQA=({stdio:A,ipc:Q,buffer:B,...Y},J,C)=>{let X=XgQ(A,Y).map((G,F)=>BQA(G,F));return C?FgQ(X,B,J):AQA(X,Q)},XgQ=(A,Q)=>{if(A===void 0)return l8.map((Y)=>Q[Y]);if(GgQ(Q))throw Error(`It's not possible to provide \`stdio\` in combination with one of ${l8.map((Y)=>`\`${Y}\``).join(", ")}`);if(typeof A==="string")return[A,A,A];if(!Array.isArray(A))throw TypeError(`Expected \`stdio\` to be of type \`string\` or \`Array\`, got \`${typeof A}\``);let B=Math.max(A.length,l8.length);return Array.from({length:B},(Y,J)=>A[J])},GgQ=(A)=>l8.some((Q)=>A[Q]!==void 0),BQA=(A,Q)=>{if(Array.isArray(A))return A.map((B)=>BQA(B,Q));if(A===null||A===void 0)return Q>=l8.length?"ignore":"pipe";return A},FgQ=(A,Q,B)=>A.map((Y,J)=>!Q[J]&&J!==0&&!Z4(B,J)&&WgQ(Y)?"ignore":Y),WgQ=(A)=>A==="pipe"||Array.isArray(A)&&A.every((Q)=>Q==="pipe");import{readFileSync as ZgQ}from"node:fs";import $gQ from"node:tty";var JQA=({stdioItem:A,stdioItem:{type:Q},isStdioArray:B,fdNumber:Y,direction:J,isSync:C})=>{if(!B||Q!=="native")return A;return C?UgQ({stdioItem:A,fdNumber:Y,direction:J}):VgQ({stdioItem:A,fdNumber:Y})},UgQ=({stdioItem:A,stdioItem:{value:Q,optionName:B},fdNumber:Y,direction:J})=>{let C=EgQ({value:Q,optionName:B,fdNumber:Y,direction:J});if(C!==void 0)return C;if(WC(Q,{checkOpen:!1}))throw TypeError(`The \`${B}: Stream\` option cannot both be an array and include a stream with synchronous methods.`);return A},EgQ=({value:A,optionName:Q,fdNumber:B,direction:Y})=>{let J=KgQ(A,B);if(J===void 0)return;if(Y==="output")return{type:"fileNumber",value:J,optionName:Q};if($gQ.isatty(J))throw TypeError(`The \`${Q}: ${PM(A)}\` option is invalid: it cannot be a TTY with synchronous methods.`);return{type:"uint8Array",value:gX(ZgQ(J)),optionName:Q}},KgQ=(A,Q)=>{if(A==="inherit")return Q;if(typeof A==="number")return A;let B=FM.indexOf(A);if(B!==-1)return B},VgQ=({stdioItem:A,stdioItem:{value:Q,optionName:B},fdNumber:Y})=>{if(Q==="inherit")return{type:"nodeStream",value:YQA(Y,Q,B),optionName:B};if(typeof Q==="number")return{type:"nodeStream",value:YQA(Q,Q,B),optionName:B};if(WC(Q,{checkOpen:!1}))return{type:"nodeStream",value:Q,optionName:B};return A},YQA=(A,Q,B)=>{let Y=FM[A];if(Y===void 0)throw TypeError(`The \`${B}: ${Q}\` option is invalid: no such standard stream.`);return Y};var CQA=({input:A,inputFile:Q},B)=>B===0?[...IgQ(A),...DgQ(Q)]:[],IgQ=(A)=>A===void 0?[]:[{type:HgQ(A),value:A,optionName:"input"}],HgQ=(A)=>{if(HW(A,{checkOpen:!1}))return"nodeStream";if(typeof A==="string")return"string";if(RY(A))return"uint8Array";throw Error("The `input` option must be a string, a Uint8Array or a Node.js Readable stream.")},DgQ=(A)=>A===void 0?[]:[{...NgQ(A),optionName:"inputFile"}],NgQ=(A)=>{if(aM(A))return{type:"fileUrl",value:A};if(D_(A))return{type:"filePath",value:{file:A}};throw Error("The `inputFile` option must be a file path string or a file URL.")};var XQA=(A)=>A.filter((Q,B)=>A.every((Y,J)=>Q.value!==Y.value||B>=J||Q.type==="generator"||Q.type==="asyncGenerator")),GQA=({stdioItem:{type:A,value:Q,optionName:B},direction:Y,fileDescriptors:J,isSync:C})=>{let X=LgQ(J,A);if(X.length===0)return;if(C){qgQ({otherStdioItems:X,type:A,value:Q,optionName:B,direction:Y});return}if(sAA.has(A))return FQA({otherStdioItems:X,type:A,value:Q,optionName:B,direction:Y});if(rAA.has(A))zgQ({otherStdioItems:X,type:A,value:Q,optionName:B})},LgQ=(A,Q)=>A.flatMap(({direction:B,stdioItems:Y})=>Y.filter((J)=>J.type===Q).map((J)=>({...J,direction:B}))),qgQ=({otherStdioItems:A,type:Q,value:B,optionName:Y,direction:J})=>{if(L_.has(Q))FQA({otherStdioItems:A,type:Q,value:B,optionName:Y,direction:J})},FQA=({otherStdioItems:A,type:Q,value:B,optionName:Y,direction:J})=>{let C=A.filter((G)=>MgQ(G,B));if(C.length===0)return;let X=C.find((G)=>G.direction!==J);return WQA(X,Y,Q),J==="output"?C[0].stream:void 0},MgQ=({type:A,value:Q},B)=>{if(A==="filePath")return Q.file===B.file;if(A==="fileUrl")return Q.href===B.href;return Q===B},zgQ=({otherStdioItems:A,type:Q,value:B,optionName:Y})=>{let J=A.find(({value:{transform:C}})=>C===B.transform);WQA(J,Y,Q)},WQA=(A,Q,B)=>{if(A!==void 0)throw TypeError(`The \`${A.optionName}\` and \`${Q}\` options must not target ${m6[B]} that is the same.`)};var eM=(A,Q,B,Y)=>{let C=QQA(Q,B,Y).map((G,F)=>RgQ({stdioOption:G,fdNumber:F,options:Q,isSync:Y})),X=_gQ({initialFileDescriptors:C,addProperties:A,options:Q,isSync:Y});return Q.stdio=X.map(({stdioItems:G})=>ggQ(G)),X},RgQ=({stdioOption:A,fdNumber:Q,options:B,isSync:Y})=>{let J=WM(Q),{stdioItems:C,isStdioArray:X}=wgQ({stdioOption:A,fdNumber:Q,options:B,optionName:J}),G=tAA(C,Q,J),F=C.map((U)=>JQA({stdioItem:U,isStdioArray:X,fdNumber:Q,direction:G,isSync:Y})),W=oAA(F,J,G,B),Z=aAA(W,G);return kgQ(W,Z),{direction:G,objectMode:Z,stdioItems:W}},wgQ=({stdioOption:A,fdNumber:Q,options:B,optionName:Y})=>{let C=[...(Array.isArray(A)?A:[A]).map((F)=>jgQ(F,Y)),...CQA(B,Q)],X=XQA(C),G=X.length>1;return OgQ(X,G,Y),TgQ(X),{stdioItems:X,isStdioArray:G}},jgQ=(A,Q)=>({type:mAA(A,Q),value:A,optionName:Q}),OgQ=(A,Q,B)=>{if(A.length===0)throw TypeError(`The \`${B}\` option must not be an empty array.`);if(!Q)return;for(let{value:Y,optionName:J}of A)if(PgQ.has(Y))throw Error(`The \`${J}\` option must not include \`${Y}\`.`)},PgQ=new Set(["ignore","ipc"]),TgQ=(A)=>{for(let Q of A)SgQ(Q)},SgQ=({type:A,value:Q,optionName:B})=>{if(lAA(Q))throw TypeError(`The \`${B}: URL\` option must use the \`file:\` scheme. -For example, you can use the \`pathToFileURL()\` method of the \`url\` core module.`);if(pAA(A,Q))throw TypeError(`The \`${B}: { file: '...' }\` option must be used instead of \`${B}: '...'\`.`)},kgQ=(A,Q)=>{if(!Q)return;let B=A.find(({type:Y})=>tM.has(Y));if(B!==void 0)throw TypeError(`The \`${B.optionName}\` option cannot use both files and transforms in objectMode.`)},_gQ=({initialFileDescriptors:A,addProperties:Q,options:B,isSync:Y})=>{let J=[];try{for(let C of A)J.push(vgQ({fileDescriptor:C,fileDescriptors:J,addProperties:Q,options:B,isSync:Y}));return J}catch(C){throw R_(J),C}},vgQ=({fileDescriptor:{direction:A,objectMode:Q,stdioItems:B},fileDescriptors:Y,addProperties:J,options:C,isSync:X})=>{let G=B.map((F)=>ygQ({stdioItem:F,addProperties:J,direction:A,options:C,fileDescriptors:Y,isSync:X}));return{direction:A,objectMode:Q,stdioItems:G}},ygQ=({stdioItem:A,addProperties:Q,direction:B,options:Y,fileDescriptors:J,isSync:C})=>{let X=GQA({stdioItem:A,direction:B,fileDescriptors:J,isSync:C});if(X!==void 0)return{...A,stream:X};return{...A,...Q[B][A.type](A,Y)}},R_=(A)=>{for(let{stdioItems:Q}of A)for(let{stream:B}of Q)if(B!==void 0&&!GC(B))B.destroy()},ggQ=(A)=>{if(A.length>1)return A.some(({value:Y})=>Y==="overlapped")?"overlapped":"pipe";let[{type:Q,value:B}]=A;return Q==="native"?B:"pipe"};var UQA=(A,Q)=>eM(xgQ,A,Q,!0),N1=({type:A,optionName:Q})=>{EQA(Q,m6[A])},hgQ=({optionName:A,value:Q})=>{if(Q==="ipc"||Q==="overlapped")EQA(A,`"${Q}"`);return{}},EQA=(A,Q)=>{throw TypeError(`The \`${A}\` option cannot be ${Q} with synchronous methods.`)},$QA={generator(){},asyncGenerator:N1,webStream:N1,nodeStream:N1,webTransform:N1,duplex:N1,asyncIterable:N1,native:hgQ},xgQ={input:{...$QA,fileUrl:({value:A})=>({contents:[gX(ZQA(A))]}),filePath:({value:{file:A}})=>({contents:[gX(ZQA(A))]}),fileNumber:N1,iterable:({value:A})=>({contents:[...A]}),string:({value:A})=>({contents:[A]}),uint8Array:({value:A})=>({contents:[A]})},output:{...$QA,fileUrl:({value:A})=>({path:A}),filePath:({value:{file:A,append:Q}})=>({path:A,append:Q}),fileNumber:({value:A})=>({path:A}),iterable:N1,string:N1,uint8Array:N1}};var bX=(A,{stripFinalNewline:Q},B)=>w_(Q,B)&&A!==void 0&&!Array.isArray(A)?I4(A):A,w_=(A,Q)=>Q==="all"?A[1]||A[2]:A[Q];import{Transform as JhQ,getDefaultHighWaterMark as RQA}from"node:stream";var Az=(A,Q,B,Y)=>A||B?void 0:VQA(Q,Y),O_=(A,Q,B)=>B?A.flatMap((Y)=>KQA(Y,Q)):KQA(A,Q),KQA=(A,Q)=>{let{transform:B,final:Y}=VQA(Q,{});return[...B(A),...Y()]},VQA=(A,Q)=>{return Q.previousChunks="",{transform:fgQ.bind(void 0,Q,A),final:mgQ.bind(void 0,Q)}},fgQ=function*(A,Q,B){if(typeof B!=="string"){yield B;return}let{previousChunks:Y}=A,J=-1;for(let C=0;C0)G=j_(Y,G),Y="";yield G,J=C}if(J!==B.length-1)Y=j_(Y,B.slice(J+1));A.previousChunks=Y},bgQ=(A,Q,B,Y)=>{if(B)return 0;return Y.isWindowsNewline=Q!==0&&A[Q-1]==="\r",Y.isWindowsNewline?2:1},mgQ=function*({previousChunks:A}){if(A.length>0)yield A},IQA=({binary:A,preserveNewlines:Q,readableObjectMode:B,state:Y})=>A||Q||B?void 0:{transform:ugQ.bind(void 0,Y)},ugQ=function*({isWindowsNewline:A=!1},Q){let{unixNewline:B,windowsNewline:Y,LF:J,concatBytes:C}=typeof Q==="string"?dgQ:lgQ;if(Q.at(-1)===J){yield Q;return}yield C(Q,A?Y:B)},j_=(A,Q)=>`${A}${Q}`,dgQ={windowsNewline:`\r +`);return{originalMessage:z,shortMessage:N,message:w}},pyQ=({originalError:A,timedOut:Q,timeout:B,isMaxBuffer:Y,maxBuffer:J,errorCode:C,signal:X,signalDescription:G,exitCode:F,isCanceled:W,isGracefullyCanceled:Z,isForcefullyTerminated:U,forceKillAfterDelay:$,killSignal:E})=>{let K=iyQ(U,$);if(Q)return`Command timed out after ${B} milliseconds${K}`;if(Z){if(X===void 0)return`Command was gracefully canceled with exit code ${F}`;return U?`Command was gracefully canceled${K}`:`Command was gracefully canceled with ${X} (${G})`}if(W)return`Command was canceled${K}`;if(Y)return`${MQA(A,J)}${K}`;if(C!==void 0)return`Command failed with ${C}${K}`;if(U)return`Command was killed with ${E} (${$z(E)})${K}`;if(X!==void 0)return`Command was killed with ${X} (${G})`;if(F!==void 0)return`Command failed with exit code ${F}`;return"Command failed"},iyQ=(A,Q)=>A?` and was forcefully terminated after ${Q} milliseconds`:"",nyQ=(A,Q)=>{if(A instanceof D1)return;let B=QAA(A)?A.originalMessage:String(A?.message??A),Y=aV(YQA(B,Q));return Y===""?void 0:Y},syQ=(A)=>typeof A==="string"?A:lyQ(A),ryQ=(A)=>Array.isArray(A)?A.map((Q)=>q4(wQA(Q))).filter(Boolean).join(` +`):wQA(A),wQA=(A)=>{if(typeof A==="string")return A;if(RY(A))return nM(A);return""};var hz=({command:A,escapedCommand:Q,stdio:B,all:Y,ipcOutput:J,options:{cwd:C},startTime:X})=>OQA({command:A,escapedCommand:Q,cwd:C,durationMs:o_(X),failed:!1,timedOut:!1,isCanceled:!1,isGracefullyCanceled:!1,isTerminated:!1,isMaxBuffer:!1,isForcefullyTerminated:!1,exitCode:0,stdout:B[1],stderr:B[2],all:Y,stdio:B,ipcOutput:J,pipedFrom:[]}),z4=({error:A,command:Q,escapedCommand:B,fileDescriptors:Y,options:J,startTime:C,isSync:X})=>BI({error:A,command:Q,escapedCommand:B,startTime:C,timedOut:!1,isCanceled:!1,isGracefullyCanceled:!1,isMaxBuffer:!1,isForcefullyTerminated:!1,stdio:Array.from({length:Y.length}),ipcOutput:[],options:J,isSync:X}),BI=({error:A,command:Q,escapedCommand:B,startTime:Y,timedOut:J,isCanceled:C,isGracefullyCanceled:X,isMaxBuffer:G,isForcefullyTerminated:F,exitCode:W,signal:Z,stdio:U,all:$,ipcOutput:E,options:{timeoutDuration:K,timeout:I=K,forceKillAfterDelay:V,killSignal:H,cwd:D,maxBuffer:L},isSync:z})=>{let{exitCode:M,signal:N,signalDescription:q}=oyQ(W,Z),{originalMessage:w,shortMessage:P,message:_}=jQA({stdio:U,all:$,ipcOutput:E,originalError:A,signal:N,signalDescription:q,exitCode:M,escapedCommand:B,timedOut:J,isCanceled:C,isGracefullyCanceled:X,isMaxBuffer:G,isForcefullyTerminated:F,forceKillAfterDelay:V,killSignal:H,maxBuffer:L,timeout:I,cwd:D}),O=ee(A,_,z);return Object.assign(O,ayQ({error:O,command:Q,escapedCommand:B,startTime:Y,timedOut:J,isCanceled:C,isGracefullyCanceled:X,isMaxBuffer:G,isForcefullyTerminated:F,exitCode:M,signal:N,signalDescription:q,stdio:U,all:$,ipcOutput:E,cwd:D,originalMessage:w,shortMessage:P})),O},ayQ=({error:A,command:Q,escapedCommand:B,startTime:Y,timedOut:J,isCanceled:C,isGracefullyCanceled:X,isMaxBuffer:G,isForcefullyTerminated:F,exitCode:W,signal:Z,signalDescription:U,stdio:$,all:E,ipcOutput:K,cwd:I,originalMessage:V,shortMessage:H})=>OQA({shortMessage:H,originalMessage:V,command:Q,escapedCommand:B,cwd:I,durationMs:o_(Y),failed:!0,timedOut:J,isCanceled:C,isGracefullyCanceled:X,isTerminated:Z!==void 0,isMaxBuffer:G,isForcefullyTerminated:F,exitCode:W,signal:Z,signalDescription:U,code:A.cause?.code,stdout:$[1],stderr:$[2],all:E,stdio:$,ipcOutput:K,pipedFrom:[]}),OQA=(A)=>Object.fromEntries(Object.entries(A).filter(([,Q])=>Q!==void 0)),oyQ=(A,Q)=>{let B=A===null?void 0:A,Y=Q===null?void 0:Q,J=Y===void 0?void 0:$z(Q);return{exitCode:B,signal:Y,signalDescription:J}};var PQA=(A)=>Number.isFinite(A)?A:0;function tyQ(A){return{days:Math.trunc(A/86400000),hours:Math.trunc(A/3600000%24),minutes:Math.trunc(A/60000%60),seconds:Math.trunc(A/1000%60),milliseconds:Math.trunc(A%1000),microseconds:Math.trunc(PQA(A*1000)%1000),nanoseconds:Math.trunc(PQA(A*1e6)%1000)}}function eyQ(A){return{days:A/86400000n,hours:A/3600000n%24n,minutes:A/60000n%60n,seconds:A/1000n%60n,milliseconds:A%1000n,microseconds:0n,nanoseconds:0n}}function zv(A){switch(typeof A){case"number":{if(Number.isFinite(A))return tyQ(A);break}case"bigint":return eyQ(A)}throw TypeError("Expected a finite number or bigint")}var AhQ=(A)=>A===0||A===0n,QhQ=(A,Q)=>Q===1||Q===1n?A:`${A}s`,BhQ=0.0000001,YhQ=24n*60n*60n*1000n;function Rv(A,Q){let B=typeof A==="bigint";if(!B&&!Number.isFinite(A))throw TypeError("Expected a finite number or bigint");Q={...Q};let Y=A<0?"-":"";if(A=A<0?-A:A,Q.colonNotation)Q.compact=!1,Q.formatSubMilliseconds=!1,Q.separateMilliseconds=!1,Q.verbose=!1;if(Q.compact)Q.unitCount=1,Q.secondsDecimalDigits=0,Q.millisecondsDecimalDigits=0;let J=[],C=(Z,U)=>{let $=Math.floor(Z*10**U+BhQ);return(Math.round($)/10**U).toFixed(U)},X=(Z,U,$,E)=>{if((J.length===0||!Q.colonNotation)&&AhQ(Z)&&!(Q.colonNotation&&$==="m"))return;if(E??=String(Z),Q.colonNotation){let K=E.includes(".")?E.split(".")[0].length:E.length,I=J.length>0?2:1;E="0".repeat(Math.max(0,I-K))+E}else E+=Q.verbose?" "+QhQ(U,Z):$;J.push(E)},G=zv(A),F=BigInt(G.days);if(Q.hideYearAndDays)X(BigInt(F)*24n+BigInt(G.hours),"hour","h");else{if(Q.hideYear)X(F,"day","d");else X(F/365n,"year","y"),X(F%365n,"day","d");X(Number(G.hours),"hour","h")}if(X(Number(G.minutes),"minute","m"),!Q.hideSeconds)if(Q.separateMilliseconds||Q.formatSubMilliseconds||!Q.colonNotation&&A<1000){let Z=Number(G.seconds),U=Number(G.milliseconds),$=Number(G.microseconds),E=Number(G.nanoseconds);if(X(Z,"second","s"),Q.formatSubMilliseconds)X(U,"millisecond","ms"),X($,"microsecond","µs"),X(E,"nanosecond","ns");else{let K=U+$/1000+E/1e6,I=typeof Q.millisecondsDecimalDigits==="number"?Q.millisecondsDecimalDigits:0,V=K>=1?Math.round(K):Math.ceil(K),H=I?K.toFixed(I):V;X(Number.parseFloat(H),"millisecond","ms",H)}}else{let Z=(B?Number(A%YhQ):A)/1000%60,U=typeof Q.secondsDecimalDigits==="number"?Q.secondsDecimalDigits:1,$=C(Z,U),E=Q.keepDecimalsOnWholeSeconds?$:$.replace(/\.0+$/,"");X(Number.parseFloat(E),"second","s",E)}if(J.length===0)return Y+"0"+(Q.verbose?" milliseconds":"ms");let W=Q.colonNotation?":":" ";if(typeof Q.unitCount==="number")J=J.slice(0,Math.max(Q.unitCount,1));return Y+J.join(W)}var TQA=(A,Q)=>{if(A.failed)H1({type:"error",verboseMessage:A.shortMessage,verboseInfo:Q,result:A})};var SQA=(A,Q)=>{if(!K4(Q))return;TQA(A,Q),JhQ(A,Q)},JhQ=(A,Q)=>{let B=`(done in ${Rv(A.durationMs)})`;H1({type:"duration",verboseMessage:B,verboseInfo:Q,result:A})};var R4=(A,Q,{reject:B})=>{if(SQA(A,Q),A.failed&&B)throw A;return A};import{readFileSync as YBA}from"node:fs";var vQA=(A,Q)=>{if(MW(A))return"asyncGenerator";if(gQA(A))return"generator";if(gz(A))return"fileUrl";if(WhQ(A))return"filePath";if(UhQ(A))return"webStream";if(KC(A,{checkOpen:!1}))return"native";if(RY(A))return"uint8Array";if(EhQ(A))return"asyncIterable";if(KhQ(A))return"iterable";if(Ov(A))return yQA({transform:A},Q);if(FhQ(A))return ChQ(A,Q);return"native"},ChQ=(A,Q)=>{if(Lv(A.transform,{checkOpen:!1}))return XhQ(A,Q);if(Ov(A.transform))return yQA(A,Q);return GhQ(A,Q)},XhQ=(A,Q)=>{return hQA(A,Q,"Duplex stream"),"duplex"},yQA=(A,Q)=>{return hQA(A,Q,"web TransformStream"),"webTransform"},hQA=({final:A,binary:Q,objectMode:B},Y,J)=>{kQA(A,`${Y}.final`,J),kQA(Q,`${Y}.binary`,J),wv(B,`${Y}.objectMode`)},kQA=(A,Q,B)=>{if(A!==void 0)throw TypeError(`The \`${Q}\` option can only be defined when using a generator, not a ${B}.`)},GhQ=({transform:A,final:Q,binary:B,objectMode:Y},J)=>{if(A!==void 0&&!_QA(A))throw TypeError(`The \`${J}.transform\` option must be a generator, a Duplex stream or a web TransformStream.`);if(Lv(Q,{checkOpen:!1}))throw TypeError(`The \`${J}.final\` option must not be a Duplex stream.`);if(Ov(Q))throw TypeError(`The \`${J}.final\` option must not be a web TransformStream.`);if(Q!==void 0&&!_QA(Q))throw TypeError(`The \`${J}.final\` option must be a generator.`);return wv(B,`${J}.binary`),wv(Y,`${J}.objectMode`),MW(A)||MW(Q)?"asyncGenerator":"generator"},wv=(A,Q)=>{if(A!==void 0&&typeof A!=="boolean")throw TypeError(`The \`${Q}\` option must use a boolean.`)},_QA=(A)=>MW(A)||gQA(A),MW=(A)=>Object.prototype.toString.call(A)==="[object AsyncGeneratorFunction]",gQA=(A)=>Object.prototype.toString.call(A)==="[object GeneratorFunction]",FhQ=(A)=>BY(A)&&(A.transform!==void 0||A.final!==void 0),gz=(A)=>Object.prototype.toString.call(A)==="[object URL]",xQA=(A)=>gz(A)&&A.protocol!=="file:",WhQ=(A)=>BY(A)&&Object.keys(A).length>0&&Object.keys(A).every((Q)=>ZhQ.has(Q))&&jv(A.file),ZhQ=new Set(["file","append"]),jv=(A)=>typeof A==="string",fQA=(A,Q)=>A==="native"&&typeof Q==="string"&&!$hQ.has(Q),$hQ=new Set(["ipc","ignore","inherit","overlapped","pipe"]),bQA=(A)=>Object.prototype.toString.call(A)==="[object ReadableStream]",xz=(A)=>Object.prototype.toString.call(A)==="[object WritableStream]",UhQ=(A)=>bQA(A)||xz(A),Ov=(A)=>bQA(A?.readable)&&xz(A?.writable),EhQ=(A)=>mQA(A)&&typeof A[Symbol.asyncIterator]==="function",KhQ=(A)=>mQA(A)&&typeof A[Symbol.iterator]==="function",mQA=(A)=>typeof A==="object"&&A!==null,n8=new Set(["generator","asyncGenerator","duplex","webTransform"]),fz=new Set(["fileUrl","filePath","fileNumber"]),Pv=new Set(["fileUrl","filePath"]),uQA=new Set([...Pv,"webStream","nodeStream"]),dQA=new Set(["webTransform","duplex"]),lG={generator:"a generator",asyncGenerator:"an async generator",fileUrl:"a file URL",filePath:"a file path string",fileNumber:"a file descriptor number",webStream:"a web stream",nodeStream:"a Node.js stream",webTransform:"a web TransformStream",duplex:"a Duplex stream",native:"any value",iterable:"an iterable",asyncIterable:"an async iterable",string:"a string",uint8Array:"a Uint8Array"};var Tv=(A,Q,B,Y)=>Y==="output"?VhQ(A,Q,B):IhQ(A,Q,B),VhQ=(A,Q,B)=>{let Y=Q!==0&&B[Q-1].value.readableObjectMode;return{writableObjectMode:Y,readableObjectMode:A??Y}},IhQ=(A,Q,B)=>{let Y=Q===0?A===!0:B[Q-1].value.readableObjectMode,J=Q!==B.length-1&&(A??Y);return{writableObjectMode:Y,readableObjectMode:J}},cQA=(A,Q)=>{let B=A.findLast(({type:Y})=>n8.has(Y));if(B===void 0)return!1;return Q==="input"?B.value.writableObjectMode:B.value.readableObjectMode};var lQA=(A,Q,B,Y)=>[...A.filter(({type:J})=>!n8.has(J)),...HhQ(A,Q,B,Y)],HhQ=(A,Q,B,{encoding:Y})=>{let J=A.filter(({type:X})=>n8.has(X)),C=Array.from({length:J.length});for(let[X,G]of Object.entries(J))C[X]=DhQ({stdioItem:G,index:Number(X),newTransforms:C,optionName:Q,direction:B,encoding:Y});return MhQ(C,B)},DhQ=({stdioItem:A,stdioItem:{type:Q},index:B,newTransforms:Y,optionName:J,direction:C,encoding:X})=>{if(Q==="duplex")return NhQ({stdioItem:A,optionName:J});if(Q==="webTransform")return LhQ({stdioItem:A,index:B,newTransforms:Y,direction:C});return qhQ({stdioItem:A,index:B,newTransforms:Y,direction:C,encoding:X})},NhQ=({stdioItem:A,stdioItem:{value:{transform:Q,transform:{writableObjectMode:B,readableObjectMode:Y},objectMode:J=Y}},optionName:C})=>{if(J&&!Y)throw TypeError(`The \`${C}.objectMode\` option can only be \`true\` if \`new Duplex({objectMode: true})\` is used.`);if(!J&&Y)throw TypeError(`The \`${C}.objectMode\` option cannot be \`false\` if \`new Duplex({objectMode: true})\` is used.`);return{...A,value:{transform:Q,writableObjectMode:B,readableObjectMode:Y}}},LhQ=({stdioItem:A,stdioItem:{value:Q},index:B,newTransforms:Y,direction:J})=>{let{transform:C,objectMode:X}=BY(Q)?Q:{transform:Q},{writableObjectMode:G,readableObjectMode:F}=Tv(X,B,Y,J);return{...A,value:{transform:C,writableObjectMode:G,readableObjectMode:F}}},qhQ=({stdioItem:A,stdioItem:{value:Q},index:B,newTransforms:Y,direction:J,encoding:C})=>{let{transform:X,final:G,binary:F=!1,preserveNewlines:W=!1,objectMode:Z}=BY(Q)?Q:{transform:Q},U=F||A8.has(C),{writableObjectMode:$,readableObjectMode:E}=Tv(Z,B,Y,J);return{...A,value:{transform:X,final:G,binary:U,preserveNewlines:W,writableObjectMode:$,readableObjectMode:E}}},MhQ=(A,Q)=>Q==="input"?A.reverse():A;import Sv from"node:process";var pQA=(A,Q,B)=>{let Y=A.map((J)=>zhQ(J,Q));if(Y.includes("input")&&Y.includes("output"))throw TypeError(`The \`${B}\` option must not be an array of both readable and writable values.`);return Y.find(Boolean)??jhQ},zhQ=({type:A,value:Q},B)=>RhQ[B]??iQA[A](Q),RhQ=["input","output","output"],w4=()=>{return},kv=()=>"input",iQA={generator:w4,asyncGenerator:w4,fileUrl:w4,filePath:w4,iterable:kv,asyncIterable:kv,uint8Array:kv,webStream:(A)=>xz(A)?"output":"input",nodeStream(A){if(!qW(A,{checkOpen:!1}))return"output";return Nv(A,{checkOpen:!1})?void 0:"input"},webTransform:w4,duplex:w4,native(A){let Q=whQ(A);if(Q!==void 0)return Q;if(KC(A,{checkOpen:!1}))return iQA.nodeStream(A)}},whQ=(A)=>{if([0,Sv.stdin].includes(A))return"input";if([1,2,Sv.stdout,Sv.stderr].includes(A))return"output"},jhQ="output";var nQA=(A,Q)=>Q&&!A.includes("ipc")?[...A,"ipc"]:A;var sQA=({stdio:A,ipc:Q,buffer:B,...Y},J,C)=>{let X=OhQ(A,Y).map((G,F)=>rQA(G,F));return C?ThQ(X,B,J):nQA(X,Q)},OhQ=(A,Q)=>{if(A===void 0)return i8.map((Y)=>Q[Y]);if(PhQ(Q))throw Error(`It's not possible to provide \`stdio\` in combination with one of ${i8.map((Y)=>`\`${Y}\``).join(", ")}`);if(typeof A==="string")return[A,A,A];if(!Array.isArray(A))throw TypeError(`Expected \`stdio\` to be of type \`string\` or \`Array\`, got \`${typeof A}\``);let B=Math.max(A.length,i8.length);return Array.from({length:B},(Y,J)=>A[J])},PhQ=(A)=>i8.some((Q)=>A[Q]!==void 0),rQA=(A,Q)=>{if(Array.isArray(A))return A.map((B)=>rQA(B,Q));if(A===null||A===void 0)return Q>=i8.length?"ignore":"pipe";return A},ThQ=(A,Q,B)=>A.map((Y,J)=>!Q[J]&&J!==0&&!V4(B,J)&&ShQ(Y)?"ignore":Y),ShQ=(A)=>A==="pipe"||Array.isArray(A)&&A.every((Q)=>Q==="pipe");import{readFileSync as khQ}from"node:fs";import _hQ from"node:tty";var oQA=({stdioItem:A,stdioItem:{type:Q},isStdioArray:B,fdNumber:Y,direction:J,isSync:C})=>{if(!B||Q!=="native")return A;return C?vhQ({stdioItem:A,fdNumber:Y,direction:J}):ghQ({stdioItem:A,fdNumber:Y})},vhQ=({stdioItem:A,stdioItem:{value:Q,optionName:B},fdNumber:Y,direction:J})=>{let C=yhQ({value:Q,optionName:B,fdNumber:Y,direction:J});if(C!==void 0)return C;if(KC(Q,{checkOpen:!1}))throw TypeError(`The \`${B}: Stream\` option cannot both be an array and include a stream with synchronous methods.`);return A},yhQ=({value:A,optionName:Q,fdNumber:B,direction:Y})=>{let J=hhQ(A,B);if(J===void 0)return;if(Y==="output")return{type:"fileNumber",value:J,optionName:Q};if(_hQ.isatty(J))throw TypeError(`The \`${Q}: ${Kz(A)}\` option is invalid: it cannot be a TTY with synchronous methods.`);return{type:"uint8Array",value:m6(khQ(J)),optionName:Q}},hhQ=(A,Q)=>{if(A==="inherit")return Q;if(typeof A==="number")return A;let B=sM.indexOf(A);if(B!==-1)return B},ghQ=({stdioItem:A,stdioItem:{value:Q,optionName:B},fdNumber:Y})=>{if(Q==="inherit")return{type:"nodeStream",value:aQA(Y,Q,B),optionName:B};if(typeof Q==="number")return{type:"nodeStream",value:aQA(Q,Q,B),optionName:B};if(KC(Q,{checkOpen:!1}))return{type:"nodeStream",value:Q,optionName:B};return A},aQA=(A,Q,B)=>{let Y=sM[A];if(Y===void 0)throw TypeError(`The \`${B}: ${Q}\` option is invalid: no such standard stream.`);return Y};var tQA=({input:A,inputFile:Q},B)=>B===0?[...xhQ(A),...bhQ(Q)]:[],xhQ=(A)=>A===void 0?[]:[{type:fhQ(A),value:A,optionName:"input"}],fhQ=(A)=>{if(qW(A,{checkOpen:!1}))return"nodeStream";if(typeof A==="string")return"string";if(RY(A))return"uint8Array";throw Error("The `input` option must be a string, a Uint8Array or a Node.js Readable stream.")},bhQ=(A)=>A===void 0?[]:[{...mhQ(A),optionName:"inputFile"}],mhQ=(A)=>{if(gz(A))return{type:"fileUrl",value:A};if(jv(A))return{type:"filePath",value:{file:A}};throw Error("The `inputFile` option must be a file path string or a file URL.")};var eQA=(A)=>A.filter((Q,B)=>A.every((Y,J)=>Q.value!==Y.value||B>=J||Q.type==="generator"||Q.type==="asyncGenerator")),ABA=({stdioItem:{type:A,value:Q,optionName:B},direction:Y,fileDescriptors:J,isSync:C})=>{let X=uhQ(J,A);if(X.length===0)return;if(C){dhQ({otherStdioItems:X,type:A,value:Q,optionName:B,direction:Y});return}if(uQA.has(A))return QBA({otherStdioItems:X,type:A,value:Q,optionName:B,direction:Y});if(dQA.has(A))lhQ({otherStdioItems:X,type:A,value:Q,optionName:B})},uhQ=(A,Q)=>A.flatMap(({direction:B,stdioItems:Y})=>Y.filter((J)=>J.type===Q).map((J)=>({...J,direction:B}))),dhQ=({otherStdioItems:A,type:Q,value:B,optionName:Y,direction:J})=>{if(Pv.has(Q))QBA({otherStdioItems:A,type:Q,value:B,optionName:Y,direction:J})},QBA=({otherStdioItems:A,type:Q,value:B,optionName:Y,direction:J})=>{let C=A.filter((G)=>chQ(G,B));if(C.length===0)return;let X=C.find((G)=>G.direction!==J);return BBA(X,Y,Q),J==="output"?C[0].stream:void 0},chQ=({type:A,value:Q},B)=>{if(A==="filePath")return Q.file===B.file;if(A==="fileUrl")return Q.href===B.href;return Q===B},lhQ=({otherStdioItems:A,type:Q,value:B,optionName:Y})=>{let J=A.find(({value:{transform:C}})=>C===B.transform);BBA(J,Y,Q)},BBA=(A,Q,B)=>{if(A!==void 0)throw TypeError(`The \`${A.optionName}\` and \`${Q}\` options must not target ${lG[B]} that is the same.`)};var bz=(A,Q,B,Y)=>{let C=sQA(Q,B,Y).map((G,F)=>phQ({stdioOption:G,fdNumber:F,options:Q,isSync:Y})),X=ehQ({initialFileDescriptors:C,addProperties:A,options:Q,isSync:Y});return Q.stdio=X.map(({stdioItems:G})=>BgQ(G)),X},phQ=({stdioOption:A,fdNumber:Q,options:B,isSync:Y})=>{let J=rM(Q),{stdioItems:C,isStdioArray:X}=ihQ({stdioOption:A,fdNumber:Q,options:B,optionName:J}),G=pQA(C,Q,J),F=C.map((U)=>oQA({stdioItem:U,isStdioArray:X,fdNumber:Q,direction:G,isSync:Y})),W=lQA(F,J,G,B),Z=cQA(W,G);return thQ(W,Z),{direction:G,objectMode:Z,stdioItems:W}},ihQ=({stdioOption:A,fdNumber:Q,options:B,optionName:Y})=>{let C=[...(Array.isArray(A)?A:[A]).map((F)=>nhQ(F,Y)),...tQA(B,Q)],X=eQA(C),G=X.length>1;return shQ(X,G,Y),ahQ(X),{stdioItems:X,isStdioArray:G}},nhQ=(A,Q)=>({type:vQA(A,Q),value:A,optionName:Q}),shQ=(A,Q,B)=>{if(A.length===0)throw TypeError(`The \`${B}\` option must not be an empty array.`);if(!Q)return;for(let{value:Y,optionName:J}of A)if(rhQ.has(Y))throw Error(`The \`${J}\` option must not include \`${Y}\`.`)},rhQ=new Set(["ignore","ipc"]),ahQ=(A)=>{for(let Q of A)ohQ(Q)},ohQ=({type:A,value:Q,optionName:B})=>{if(xQA(Q))throw TypeError(`The \`${B}: URL\` option must use the \`file:\` scheme. +For example, you can use the \`pathToFileURL()\` method of the \`url\` core module.`);if(fQA(A,Q))throw TypeError(`The \`${B}: { file: '...' }\` option must be used instead of \`${B}: '...'\`.`)},thQ=(A,Q)=>{if(!Q)return;let B=A.find(({type:Y})=>fz.has(Y));if(B!==void 0)throw TypeError(`The \`${B.optionName}\` option cannot use both files and transforms in objectMode.`)},ehQ=({initialFileDescriptors:A,addProperties:Q,options:B,isSync:Y})=>{let J=[];try{for(let C of A)J.push(AgQ({fileDescriptor:C,fileDescriptors:J,addProperties:Q,options:B,isSync:Y}));return J}catch(C){throw _v(J),C}},AgQ=({fileDescriptor:{direction:A,objectMode:Q,stdioItems:B},fileDescriptors:Y,addProperties:J,options:C,isSync:X})=>{let G=B.map((F)=>QgQ({stdioItem:F,addProperties:J,direction:A,options:C,fileDescriptors:Y,isSync:X}));return{direction:A,objectMode:Q,stdioItems:G}},QgQ=({stdioItem:A,addProperties:Q,direction:B,options:Y,fileDescriptors:J,isSync:C})=>{let X=ABA({stdioItem:A,direction:B,fileDescriptors:J,isSync:C});if(X!==void 0)return{...A,stream:X};return{...A,...Q[B][A.type](A,Y)}},_v=(A)=>{for(let{stdioItems:Q}of A)for(let{stream:B}of Q)if(B!==void 0&&!UC(B))B.destroy()},BgQ=(A)=>{if(A.length>1)return A.some(({value:Y})=>Y==="overlapped")?"overlapped":"pipe";let[{type:Q,value:B}]=A;return Q==="native"?B:"pipe"};var CBA=(A,Q)=>bz(JgQ,A,Q,!0),q1=({type:A,optionName:Q})=>{XBA(Q,lG[A])},YgQ=({optionName:A,value:Q})=>{if(Q==="ipc"||Q==="overlapped")XBA(A,`"${Q}"`);return{}},XBA=(A,Q)=>{throw TypeError(`The \`${A}\` option cannot be ${Q} with synchronous methods.`)},JBA={generator(){},asyncGenerator:q1,webStream:q1,nodeStream:q1,webTransform:q1,duplex:q1,asyncIterable:q1,native:YgQ},JgQ={input:{...JBA,fileUrl:({value:A})=>({contents:[m6(YBA(A))]}),filePath:({value:{file:A}})=>({contents:[m6(YBA(A))]}),fileNumber:q1,iterable:({value:A})=>({contents:[...A]}),string:({value:A})=>({contents:[A]}),uint8Array:({value:A})=>({contents:[A]})},output:{...JBA,fileUrl:({value:A})=>({path:A}),filePath:({value:{file:A,append:Q}})=>({path:A,append:Q}),fileNumber:({value:A})=>({path:A}),iterable:q1,string:q1,uint8Array:q1}};var l6=(A,{stripFinalNewline:Q},B)=>vv(Q,B)&&A!==void 0&&!Array.isArray(A)?q4(A):A,vv=(A,Q)=>Q==="all"?A[1]||A[2]:A[Q];import{Transform as wgQ,getDefaultHighWaterMark as HBA}from"node:stream";var mz=(A,Q,B,Y)=>A||B?void 0:FBA(Q,Y),hv=(A,Q,B)=>B?A.flatMap((Y)=>GBA(Y,Q)):GBA(A,Q),GBA=(A,Q)=>{let{transform:B,final:Y}=FBA(Q,{});return[...B(A),...Y()]},FBA=(A,Q)=>{return Q.previousChunks="",{transform:CgQ.bind(void 0,Q,A),final:GgQ.bind(void 0,Q)}},CgQ=function*(A,Q,B){if(typeof B!=="string"){yield B;return}let{previousChunks:Y}=A,J=-1;for(let C=0;C0)G=yv(Y,G),Y="";yield G,J=C}if(J!==B.length-1)Y=yv(Y,B.slice(J+1));A.previousChunks=Y},XgQ=(A,Q,B,Y)=>{if(B)return 0;return Y.isWindowsNewline=Q!==0&&A[Q-1]==="\r",Y.isWindowsNewline?2:1},GgQ=function*({previousChunks:A}){if(A.length>0)yield A},WBA=({binary:A,preserveNewlines:Q,readableObjectMode:B,state:Y})=>A||Q||B?void 0:{transform:FgQ.bind(void 0,Y)},FgQ=function*({isWindowsNewline:A=!1},Q){let{unixNewline:B,windowsNewline:Y,LF:J,concatBytes:C}=typeof Q==="string"?WgQ:$gQ;if(Q.at(-1)===J){yield Q;return}yield C(Q,A?Y:B)},yv=(A,Q)=>`${A}${Q}`,WgQ={windowsNewline:`\r `,unixNewline:` `,LF:` -`,concatBytes:j_},cgQ=(A,Q)=>{let B=new Uint8Array(A.length+Q.length);return B.set(A,0),B.set(Q,A.length),B},lgQ={windowsNewline:new Uint8Array([13,10]),unixNewline:new Uint8Array([10]),LF:10,concatBytes:cgQ};import{Buffer as pgQ}from"node:buffer";var HQA=(A,Q)=>A?void 0:igQ.bind(void 0,Q),igQ=function*(A,Q){if(typeof Q!=="string"&&!RY(Q)&&!pgQ.isBuffer(Q))throw TypeError(`The \`${A}\` option's transform must use "objectMode: true" to receive as input: ${typeof Q}.`);yield Q},DQA=(A,Q)=>A?ngQ.bind(void 0,Q):sgQ.bind(void 0,Q),ngQ=function*(A,Q){NQA(A,Q),yield Q},sgQ=function*(A,Q){if(NQA(A,Q),typeof Q!=="string"&&!RY(Q))throw TypeError(`The \`${A}\` option's function must yield a string or an Uint8Array, not ${typeof Q}.`);yield Q},NQA=(A,Q)=>{if(Q===null||Q===void 0)throw TypeError(`The \`${A}\` option's function must not call \`yield ${Q}\`. +`,concatBytes:yv},ZgQ=(A,Q)=>{let B=new Uint8Array(A.length+Q.length);return B.set(A,0),B.set(Q,A.length),B},$gQ={windowsNewline:new Uint8Array([13,10]),unixNewline:new Uint8Array([10]),LF:10,concatBytes:ZgQ};import{Buffer as UgQ}from"node:buffer";var ZBA=(A,Q)=>A?void 0:EgQ.bind(void 0,Q),EgQ=function*(A,Q){if(typeof Q!=="string"&&!RY(Q)&&!UgQ.isBuffer(Q))throw TypeError(`The \`${A}\` option's transform must use "objectMode: true" to receive as input: ${typeof Q}.`);yield Q},$BA=(A,Q)=>A?KgQ.bind(void 0,Q):VgQ.bind(void 0,Q),KgQ=function*(A,Q){UBA(A,Q),yield Q},VgQ=function*(A,Q){if(UBA(A,Q),typeof Q!=="string"&&!RY(Q))throw TypeError(`The \`${A}\` option's function must yield a string or an Uint8Array, not ${typeof Q}.`);yield Q},UBA=(A,Q)=>{if(Q===null||Q===void 0)throw TypeError(`The \`${A}\` option's function must not call \`yield ${Q}\`. Instead, \`yield\` should either be called with a value, or not be called at all. For example: - if (condition) { yield value; }`)};import{Buffer as rgQ}from"node:buffer";import{StringDecoder as agQ}from"node:string_decoder";var Qz=(A,Q,B)=>{if(B)return;if(A)return{transform:ogQ.bind(void 0,new TextEncoder)};let Y=new agQ(Q);return{transform:tgQ.bind(void 0,Y),final:egQ.bind(void 0,Y)}},ogQ=function*(A,Q){if(rgQ.isBuffer(Q))yield gX(Q);else if(typeof Q==="string")yield A.encode(Q);else yield Q},tgQ=function*(A,Q){yield RY(Q)?A.write(Q):Q},egQ=function*(A){let Q=A.end();if(Q!=="")yield Q};import{callbackify as LQA}from"node:util";var P_=LQA(async(A,Q,B,Y)=>{Q.currentIterable=A(...B);try{for await(let J of Q.currentIterable)Y.push(J)}finally{delete Q.currentIterable}}),Bz=async function*(A,Q,B){if(B===Q.length){yield A;return}let{transform:Y=QhQ}=Q[B];for await(let J of Y(A))yield*Bz(J,Q,B+1)},qQA=async function*(A){for(let[Q,{final:B}]of Object.entries(A))yield*AhQ(B,Number(Q),A)},AhQ=async function*(A,Q,B){if(A===void 0)return;for await(let Y of A())yield*Bz(Y,B,Q+1)},MQA=LQA(async({currentIterable:A},Q)=>{if(A!==void 0){await(Q?A.throw(Q):A.return());return}if(Q)throw Q}),QhQ=function*(A){yield A};var T_=(A,Q,B,Y)=>{try{for(let J of A(...Q))B.push(J);Y()}catch(J){Y(J)}},zQA=(A,Q)=>[...Q.flatMap((B)=>[...NW(B,A,0)]),...xV(A)],NW=function*(A,Q,B){if(B===Q.length){yield A;return}let{transform:Y=YhQ}=Q[B];for(let J of Y(A))yield*NW(J,Q,B+1)},xV=function*(A){for(let[Q,{final:B}]of Object.entries(A))yield*BhQ(B,Number(Q),A)},BhQ=function*(A,Q,B){if(A===void 0)return;for(let Y of A())yield*NW(Y,B,Q+1)},YhQ=function*(A){yield A};var S_=({value:A,value:{transform:Q,final:B,writableObjectMode:Y,readableObjectMode:J},optionName:C},{encoding:X})=>{let G={},F=wQA(A,X,C),W=DW(Q),Z=DW(B),U=W?P_.bind(void 0,Bz,G):T_.bind(void 0,NW),$=W||Z?P_.bind(void 0,qQA,G):T_.bind(void 0,xV),E=W||Z?MQA.bind(void 0,G):void 0;return{stream:new JhQ({writableObjectMode:Y,writableHighWaterMark:RQA(Y),readableObjectMode:J,readableHighWaterMark:RQA(J),transform(I,V,H){U([I,F,0],this,H)},flush(I){$([F],this,I)},destroy:E})}},Yz=(A,Q,B,Y)=>{let J=Q.filter(({type:X})=>X==="generator"),C=Y?J.reverse():J;for(let{value:X,optionName:G}of C){let F=wQA(X,B,G);A=zQA(F,A)}return A},wQA=({transform:A,final:Q,binary:B,writableObjectMode:Y,readableObjectMode:J,preserveNewlines:C},X,G)=>{let F={};return[{transform:HQA(Y,G)},Qz(B,X,Y),Az(B,C,Y,F),{transform:A,final:Q},{transform:DQA(J,G)},IQA({binary:B,preserveNewlines:C,readableObjectMode:J,state:F})].filter(Boolean)};var jQA=(A,Q)=>{for(let B of ChQ(A))XhQ(A,B,Q)},ChQ=(A)=>new Set(Object.entries(A).filter(([,{direction:Q}])=>Q==="input").map(([Q])=>Number(Q))),XhQ=(A,Q,B)=>{let{stdioItems:Y}=A[Q],J=Y.filter(({contents:G})=>G!==void 0);if(J.length===0)return;if(Q!==0){let[{type:G,optionName:F}]=J;throw TypeError(`Only the \`stdin\` option, not \`${F}\`, can be ${m6[G]} with synchronous methods.`)}let X=J.map(({contents:G})=>G).map((G)=>GhQ(G,Y));B.input=TV(X)},GhQ=(A,Q)=>{let B=Yz(A,Q,"utf8",!0);return FhQ(B),TV(B)},FhQ=(A)=>{let Q=A.find((B)=>typeof B!=="string"&&!RY(B));if(Q!==void 0)throw TypeError(`The \`stdin\` option is invalid: when passing objects as input, a transform must be used to serialize them to strings or Uint8Arrays: ${Q}.`)};import{writeFileSync as UhQ,appendFileSync as EhQ}from"node:fs";var Jz=({stdioItems:A,encoding:Q,verboseInfo:B,fdNumber:Y})=>Y!=="all"&&Z4(B,Y)&&!e9.has(Q)&&WhQ(Y)&&(A.some(({type:J,value:C})=>J==="native"&&ZhQ.has(C))||A.every(({type:J})=>p8.has(J))),WhQ=(A)=>A===1||A===2,ZhQ=new Set(["pipe","overlapped"]),OQA=async(A,Q,B,Y)=>{for await(let J of A)if(!$hQ(Q))TQA(J,B,Y)},PQA=(A,Q,B)=>{for(let Y of A)TQA(Y,Q,B)},$hQ=(A)=>A._readableState.pipes.length>0,TQA=(A,Q,B)=>{let Y=VM(A);V1({type:"output",verboseMessage:Y,fdNumber:Q,verboseInfo:B})};var SQA=({fileDescriptors:A,syncResult:{output:Q},options:B,isMaxBuffer:Y,verboseInfo:J})=>{if(Q===null)return{output:Array.from({length:3})};let C={},X=new Set([]);return{output:Q.map((F,W)=>KhQ({result:F,fileDescriptors:A,fdNumber:W,state:C,outputFiles:X,isMaxBuffer:Y,verboseInfo:J},B)),...C}},KhQ=({result:A,fileDescriptors:Q,fdNumber:B,state:Y,outputFiles:J,isMaxBuffer:C,verboseInfo:X},{buffer:G,encoding:F,lines:W,stripFinalNewline:Z,maxBuffer:U})=>{if(A===null)return;let $=kAA(A,C,U),E=gX($),{stdioItems:K,objectMode:I}=Q[B],V=VhQ([E],K,F,Y),{serializedResult:H,finalResult:D=H}=IhQ({chunks:V,objectMode:I,encoding:F,lines:W,stripFinalNewline:Z,fdNumber:B});HhQ({serializedResult:H,fdNumber:B,state:Y,verboseInfo:X,encoding:F,stdioItems:K,objectMode:I});let L=G[B]?D:void 0;try{if(Y.error===void 0)DhQ(H,K,J);return L}catch(z){return Y.error=z,L}},VhQ=(A,Q,B,Y)=>{try{return Yz(A,Q,B,!1)}catch(J){return Y.error=J,A}},IhQ=({chunks:A,objectMode:Q,encoding:B,lines:Y,stripFinalNewline:J,fdNumber:C})=>{if(Q)return{serializedResult:A};if(B==="buffer")return{serializedResult:TV(A)};let X=po(A,B);if(Y[C])return{serializedResult:X,finalResult:O_(X,!J[C],Q)};return{serializedResult:X}},HhQ=({serializedResult:A,fdNumber:Q,state:B,verboseInfo:Y,encoding:J,stdioItems:C,objectMode:X})=>{if(!Jz({stdioItems:C,encoding:J,verboseInfo:Y,fdNumber:Q}))return;let G=O_(A,!1,X);try{PQA(G,Q,Y)}catch(F){B.error??=F}},DhQ=(A,Q,B)=>{for(let{path:Y,append:J}of Q.filter(({type:C})=>tM.has(C))){let C=typeof Y==="string"?Y:Y.toString();if(J||B.has(C))EhQ(Y,A);else B.add(C),UhQ(Y,A)}};var kQA=([,A,Q],B)=>{if(!B.all)return;if(A===void 0)return Q;if(Q===void 0)return A;if(Array.isArray(A))return Array.isArray(Q)?[...A,...Q]:[...A,bX(Q,B,"all")];if(Array.isArray(Q))return[bX(A,B,"all"),...Q];if(RY(A)&&RY(Q))return hk([A,Q]);return`${A}${Q}`};import{once as k_}from"node:events";var _QA=async(A,Q)=>{let[B,Y]=await NhQ(A);return Q.isForcefullyTerminated??=!1,[B,Y]},NhQ=async(A)=>{let[Q,B]=await Promise.allSettled([k_(A,"spawn"),k_(A,"exit")]);if(Q.status==="rejected")return[];return B.status==="rejected"?vQA(A):B.value},vQA=async(A)=>{try{return await k_(A,"exit")}catch{return vQA(A)}},yQA=async(A)=>{let[Q,B]=await A;if(!LhQ(Q,B)&&__(Q,B))throw new I1;return[Q,B]},LhQ=(A,Q)=>A===void 0&&Q===void 0,__=(A,Q)=>A!==0||Q!==null;var gQA=({error:A,status:Q,signal:B,output:Y},{maxBuffer:J})=>{let C=qhQ(A,Q,B),X=C?.code==="ETIMEDOUT",G=SAA(C,Y,J);return{resultError:C,exitCode:Q,signal:B,timedOut:X,isMaxBuffer:G}},qhQ=(A,Q,B)=>{if(A!==void 0)return A;return __(Q,B)?new I1:void 0};var hQA=(A,Q,B)=>{let{file:Y,commandArguments:J,command:C,escapedCommand:X,startTime:G,verboseInfo:F,options:W,fileDescriptors:Z}=zhQ(A,Q,B),U=jhQ({file:Y,commandArguments:J,options:W,command:C,escapedCommand:X,verboseInfo:F,fileDescriptors:Z,startTime:G});return N4(U,F,W)},zhQ=(A,Q,B)=>{let{command:Y,escapedCommand:J,startTime:C,verboseInfo:X}=HM(A,Q,B),G=RhQ(B),{file:F,commandArguments:W,options:Z}=mM(A,Q,G);whQ(Z);let U=UQA(Z,X);return{file:F,commandArguments:W,command:Y,escapedCommand:J,startTime:C,verboseInfo:X,options:Z,fileDescriptors:U}},RhQ=(A)=>A.node&&!A.ipc?{...A,ipc:!1}:A,whQ=({ipc:A,ipcInput:Q,detached:B,cancelSignal:Y})=>{if(Q)Cz("ipcInput");if(A)Cz("ipc: true");if(B)Cz("detached: true");if(Y)Cz("cancelSignal")},Cz=(A)=>{throw TypeError(`The "${A}" option cannot be used with synchronous methods.`)},jhQ=({file:A,commandArguments:Q,options:B,command:Y,escapedCommand:J,verboseInfo:C,fileDescriptors:X,startTime:G})=>{let F=OhQ({file:A,commandArguments:Q,options:B,command:Y,escapedCommand:J,fileDescriptors:X,startTime:G});if(F.failed)return F;let{resultError:W,exitCode:Z,signal:U,timedOut:$,isMaxBuffer:E}=gQA(F,B),{output:K,error:I=W}=SQA({fileDescriptors:X,syncResult:F,options:B,isMaxBuffer:E,verboseInfo:C}),V=K.map((D,L)=>bX(D,B,L)),H=bX(kQA(K,B),B,"all");return ThQ({error:I,exitCode:Z,signal:U,timedOut:$,isMaxBuffer:E,stdio:V,all:H,options:B,command:Y,escapedCommand:J,startTime:G})},OhQ=({file:A,commandArguments:Q,options:B,command:Y,escapedCommand:J,fileDescriptors:C,startTime:X})=>{try{jQA(C,B);let G=PhQ(B);return MhQ(A,Q,G)}catch(G){return D4({error:G,command:Y,escapedCommand:J,fileDescriptors:C,options:B,startTime:X,isSync:!0})}},PhQ=({encoding:A,maxBuffer:Q,...B})=>({...B,encoding:"buffer",maxBuffer:sM(Q)}),ThQ=({error:A,exitCode:Q,signal:B,timedOut:Y,isMaxBuffer:J,stdio:C,all:X,options:G,command:F,escapedCommand:W,startTime:Z})=>A===void 0?rM({command:F,escapedCommand:W,stdio:C,all:X,ipcOutput:[],options:G,startTime:Z}):hV({error:A,command:F,escapedCommand:W,timedOut:Y,isCanceled:!1,isGracefullyCanceled:!1,isMaxBuffer:J,isForcefullyTerminated:!1,exitCode:Q,signal:B,stdio:C,all:X,ipcOutput:[],options:G,startTime:Z,isSync:!0});import{setMaxListeners as IfQ}from"node:events";import{spawn as HfQ}from"node:child_process";import uQA from"node:process";import{once as v_,on as ShQ}from"node:events";var xQA=({anyProcess:A,channel:Q,isSubprocess:B,ipc:Y},{reference:J=!0,filter:C}={})=>{return E4({methodName:"getOneMessage",isSubprocess:B,ipc:Y,isConnected:yM(A)}),khQ({anyProcess:A,channel:Q,isSubprocess:B,filter:C,reference:J})},khQ=async({anyProcess:A,channel:Q,isSubprocess:B,filter:Y,reference:J})=>{SM(Q,J);let C=b6(A,Q,B),X=new AbortController;try{return await Promise.race([_hQ(C,Y,X),vhQ(C,B,X),yhQ(C,B,X)])}catch(G){throw K4(A),G}finally{X.abort(),kM(Q,J)}},_hQ=async(A,Q,{signal:B})=>{if(Q===void 0){let[Y]=await v_(A,"message",{signal:B});return Y}for await(let[Y]of ShQ(A,"message",{signal:B}))if(Q(Y))return Y},vhQ=async(A,Q,{signal:B})=>{await v_(A,"disconnect",{signal:B}),Me(Q)},yhQ=async(A,Q,{signal:B})=>{let[Y]=await v_(A,"strict:error",{signal:B});throw OM(Y,Q)};import{once as bQA,on as ghQ}from"node:events";var mQA=({anyProcess:A,channel:Q,isSubprocess:B,ipc:Y},{reference:J=!0}={})=>y_({anyProcess:A,channel:Q,isSubprocess:B,ipc:Y,shouldAwait:!B,reference:J}),y_=({anyProcess:A,channel:Q,isSubprocess:B,ipc:Y,shouldAwait:J,reference:C})=>{E4({methodName:"getEachMessage",isSubprocess:B,ipc:Y,isConnected:yM(A)}),SM(Q,C);let X=b6(A,Q,B),G=new AbortController,F={};return hhQ(A,X,G),xhQ({ipcEmitter:X,isSubprocess:B,controller:G,state:F}),fhQ({anyProcess:A,channel:Q,ipcEmitter:X,isSubprocess:B,shouldAwait:J,controller:G,state:F,reference:C})},hhQ=async(A,Q,B)=>{try{await bQA(Q,"disconnect",{signal:B.signal}),B.abort()}catch{}},xhQ=async({ipcEmitter:A,isSubprocess:Q,controller:B,state:Y})=>{try{let[J]=await bQA(A,"strict:error",{signal:B.signal});Y.error=OM(J,Q),B.abort()}catch{}},fhQ=async function*({anyProcess:A,channel:Q,ipcEmitter:B,isSubprocess:Y,shouldAwait:J,controller:C,state:X,reference:G}){try{for await(let[F]of ghQ(B,"message",{signal:C.signal}))fQA(X),yield F}catch{fQA(X)}finally{if(C.abort(),kM(Q,G),!Y)K4(A);if(J)await A}},fQA=({error:A})=>{if(A)throw A};var dQA=(A,{ipc:Q})=>{Object.assign(A,lQA(A,!1,Q))},cQA=()=>{let A=uQA,Q=!0,B=uQA.channel!==void 0;return{...lQA(A,!0,B),getCancelSignal:re.bind(void 0,{anyProcess:A,channel:A.channel,isSubprocess:!0,ipc:B})}},lQA=(A,Q,B)=>({sendMessage:fM.bind(void 0,{anyProcess:A,channel:A.channel,isSubprocess:Q,ipc:B}),getOneMessage:xQA.bind(void 0,{anyProcess:A,channel:A.channel,isSubprocess:Q,ipc:B}),getEachMessage:mQA.bind(void 0,{anyProcess:A,channel:A.channel,isSubprocess:Q,ipc:B})});import{ChildProcess as bhQ}from"node:child_process";import{PassThrough as mhQ,Readable as uhQ,Writable as dhQ,Duplex as chQ}from"node:stream";var pQA=({error:A,command:Q,escapedCommand:B,fileDescriptors:Y,options:J,startTime:C,verboseInfo:X})=>{R_(Y);let G=new bhQ;lhQ(G,Y),Object.assign(G,{readable:phQ,writable:ihQ,duplex:nhQ});let F=D4({error:A,command:Q,escapedCommand:B,fileDescriptors:Y,options:J,startTime:C,isSync:!1}),W=shQ(F,X,J);return{subprocess:G,promise:W}},lhQ=(A,Q)=>{let B=fV(),Y=fV(),J=fV(),C=Array.from({length:Q.length-3},fV),X=fV(),G=[B,Y,J,...C];Object.assign(A,{stdin:B,stdout:Y,stderr:J,all:X,stdio:G})},fV=()=>{let A=new mhQ;return A.end(),A},phQ=()=>new uhQ({read(){}}),ihQ=()=>new dhQ({write(){}}),nhQ=()=>new chQ({read(){},write(){}}),shQ=async(A,Q,B)=>N4(A,Q,B);import{createReadStream as iQA,createWriteStream as nQA}from"node:fs";import{Buffer as rhQ}from"node:buffer";import{Readable as bV,Writable as ahQ,Duplex as ohQ}from"node:stream";var rQA=(A,Q)=>eM(thQ,A,Q,!1),mV=({type:A,optionName:Q})=>{throw TypeError(`The \`${Q}\` option cannot be ${m6[A]}.`)},sQA={fileNumber:mV,generator:S_,asyncGenerator:S_,nodeStream:({value:A})=>({stream:A}),webTransform({value:{transform:A,writableObjectMode:Q,readableObjectMode:B}}){let Y=Q||B;return{stream:ohQ.fromWeb(A,{objectMode:Y})}},duplex:({value:{transform:A}})=>({stream:A}),native(){}},thQ={input:{...sQA,fileUrl:({value:A})=>({stream:iQA(A)}),filePath:({value:{file:A}})=>({stream:iQA(A)}),webStream:({value:A})=>({stream:bV.fromWeb(A)}),iterable:({value:A})=>({stream:bV.from(A)}),asyncIterable:({value:A})=>({stream:bV.from(A)}),string:({value:A})=>({stream:bV.from(A)}),uint8Array:({value:A})=>({stream:bV.from(rhQ.from(A))})},output:{...sQA,fileUrl:({value:A})=>({stream:nQA(A)}),filePath:({value:{file:A,append:Q}})=>({stream:nQA(A,Q?{flags:"a"}:{})}),webStream:({value:A})=>({stream:ahQ.fromWeb(A)}),iterable:mV,asyncIterable:mV,string:mV,uint8Array:mV}};import{on as ehQ,once as aQA}from"node:events";import{PassThrough as AxQ,getDefaultHighWaterMark as QxQ}from"node:stream";import{finished as eQA}from"node:stream/promises";function LW(A){if(!Array.isArray(A))throw TypeError(`Expected an array, got \`${typeof A}\`.`);for(let J of A)g_(J);let Q=A.some(({readableObjectMode:J})=>J),B=BxQ(A,Q),Y=new ABA({objectMode:Q,writableHighWaterMark:B,readableHighWaterMark:B});for(let J of A)Y.add(J);return Y}var BxQ=(A,Q)=>{if(A.length===0)return QxQ(Q);let B=A.filter(({readableObjectMode:Y})=>Y===Q).map(({readableHighWaterMark:Y})=>Y);return Math.max(...B)};class ABA extends AxQ{#A=new Set([]);#Q=new Set([]);#B=new Set([]);#Y;#J=Symbol("unpipe");#C=new WeakMap;add(A){if(g_(A),this.#A.has(A))return;this.#A.add(A),this.#Y??=YxQ(this,this.#A,this.#J);let Q=XxQ({passThroughStream:this,stream:A,streams:this.#A,ended:this.#Q,aborted:this.#B,onFinished:this.#Y,unpipeEvent:this.#J});this.#C.set(A,Q),A.pipe(this,{end:!1})}async remove(A){if(g_(A),!this.#A.has(A))return!1;let Q=this.#C.get(A);if(Q===void 0)return!1;return this.#C.delete(A),A.unpipe(this),await Q,!0}}var YxQ=async(A,Q,B)=>{Xz(A,oQA);let Y=new AbortController;try{await Promise.race([JxQ(A,Y),CxQ(A,Q,B,Y)])}finally{Y.abort(),Xz(A,-oQA)}},JxQ=async(A,{signal:Q})=>{try{await eQA(A,{signal:Q,cleanup:!0})}catch(B){throw QBA(A,B),B}},CxQ=async(A,Q,B,{signal:Y})=>{for await(let[J]of ehQ(A,"unpipe",{signal:Y}))if(Q.has(J))J.emit(B)},g_=(A)=>{if(typeof A?.pipe!=="function")throw TypeError(`Expected a readable stream, got: \`${typeof A}\`.`)},XxQ=async({passThroughStream:A,stream:Q,streams:B,ended:Y,aborted:J,onFinished:C,unpipeEvent:X})=>{Xz(A,tQA);let G=new AbortController;try{await Promise.race([GxQ(C,Q,G),FxQ({passThroughStream:A,stream:Q,streams:B,ended:Y,aborted:J,controller:G}),WxQ({stream:Q,streams:B,ended:Y,aborted:J,unpipeEvent:X,controller:G})])}finally{G.abort(),Xz(A,-tQA)}if(B.size>0&&B.size===Y.size+J.size)if(Y.size===0&&J.size>0)h_(A);else ZxQ(A)},GxQ=async(A,Q,{signal:B})=>{try{if(await A,!B.aborted)h_(Q)}catch(Y){if(!B.aborted)QBA(Q,Y)}},FxQ=async({passThroughStream:A,stream:Q,streams:B,ended:Y,aborted:J,controller:{signal:C}})=>{try{if(await eQA(Q,{signal:C,cleanup:!0,readable:!0,writable:!1}),B.has(Q))Y.add(Q)}catch(X){if(C.aborted||!B.has(Q))return;if(BBA(X))J.add(Q);else YBA(A,X)}},WxQ=async({stream:A,streams:Q,ended:B,aborted:Y,unpipeEvent:J,controller:{signal:C}})=>{if(await aQA(A,J,{signal:C}),!A.readable)return aQA(C,"abort",{signal:C});Q.delete(A),B.delete(A),Y.delete(A)},ZxQ=(A)=>{if(A.writable)A.end()},QBA=(A,Q)=>{if(BBA(Q))h_(A);else YBA(A,Q)},BBA=(A)=>A?.code==="ERR_STREAM_PREMATURE_CLOSE",h_=(A)=>{if(A.readable||A.writable)A.destroy()},YBA=(A,Q)=>{if(!A.destroyed)A.once("error",$xQ),A.destroy(Q)},$xQ=()=>{},Xz=(A,Q)=>{let B=A.getMaxListeners();if(B!==0&&B!==Number.POSITIVE_INFINITY)A.setMaxListeners(B+Q)},oQA=2,tQA=1;import{finished as JBA}from"node:stream/promises";var q4=(A,Q)=>{A.pipe(Q),UxQ(A,Q),ExQ(A,Q)},UxQ=async(A,Q)=>{if(GC(A)||GC(Q))return;try{await JBA(A,{cleanup:!0,readable:!0,writable:!1})}catch{}x_(Q)},x_=(A)=>{if(A.writable)A.end()},ExQ=async(A,Q)=>{if(GC(A)||GC(Q))return;try{await JBA(Q,{cleanup:!0,readable:!1,writable:!0})}catch{}f_(A)},f_=(A)=>{if(A.readable)A.destroy()};var CBA=(A,Q,B)=>{let Y=new Map;for(let[J,{stdioItems:C,direction:X}]of Object.entries(Q)){for(let{stream:G}of C.filter(({type:F})=>p8.has(F)))KxQ(A,G,X,J);for(let{stream:G}of C.filter(({type:F})=>!p8.has(F)))IxQ({subprocess:A,stream:G,direction:X,fdNumber:J,pipeGroups:Y,controller:B})}for(let[J,C]of Y.entries()){let X=C.length===1?C[0]:LW(C);q4(X,J)}},KxQ=(A,Q,B,Y)=>{if(B==="output")q4(A.stdio[Y],Q);else q4(Q,A.stdio[Y]);let J=VxQ[Y];if(J!==void 0)A[J]=Q;A.stdio[Y]=Q},VxQ=["stdin","stdout","stderr"],IxQ=({subprocess:A,stream:Q,direction:B,fdNumber:Y,pipeGroups:J,controller:C})=>{if(Q===void 0)return;HxQ(Q,C);let[X,G]=B==="output"?[Q,A.stdio[Y]]:[A.stdio[Y],Q],F=J.get(X)??[];J.set(X,[...F,G])},HxQ=(A,{signal:Q})=>{if(GC(A))IW(A,DxQ,Q)},DxQ=2;import{addAbortListener as qxQ}from"node:events";var qW=[];qW.push("SIGHUP","SIGINT","SIGTERM");if(process.platform!=="win32")qW.push("SIGALRM","SIGABRT","SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");if(process.platform==="linux")qW.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT");var Gz=(A)=>!!A&&typeof A==="object"&&typeof A.removeListener==="function"&&typeof A.emit==="function"&&typeof A.reallyExit==="function"&&typeof A.listeners==="function"&&typeof A.kill==="function"&&typeof A.pid==="number"&&typeof A.on==="function",b_=Symbol.for("signal-exit emitter"),m_=globalThis,NxQ=Object.defineProperty.bind(Object);class XBA{emitted={afterExit:!1,exit:!1};listeners={afterExit:[],exit:[]};count=0;id=Math.random();constructor(){if(m_[b_])return m_[b_];NxQ(m_,b_,{value:this,writable:!1,enumerable:!1,configurable:!1})}on(A,Q){this.listeners[A].push(Q)}removeListener(A,Q){let B=this.listeners[A],Y=B.indexOf(Q);if(Y===-1)return;if(Y===0&&B.length===1)B.length=0;else B.splice(Y,1)}emit(A,Q,B){if(this.emitted[A])return!1;this.emitted[A]=!0;let Y=!1;for(let J of this.listeners[A])Y=J(Q,B)===!0||Y;if(A==="exit")Y=this.emit("afterExit",Q,B)||Y;return Y}}class d_{}var LxQ=(A)=>{return{onExit(Q,B){return A.onExit(Q,B)},load(){return A.load()},unload(){return A.unload()}}};class GBA extends d_{onExit(){return()=>{}}load(){}unload(){}}class FBA extends d_{#A=u_.platform==="win32"?"SIGINT":"SIGHUP";#Q=new XBA;#B;#Y;#J;#C={};#F=!1;constructor(A){super();this.#B=A,this.#C={};for(let Q of qW)this.#C[Q]=()=>{let B=this.#B.listeners(Q),{count:Y}=this.#Q,J=A;if(typeof J.__signal_exit_emitter__==="object"&&typeof J.__signal_exit_emitter__.count==="number")Y+=J.__signal_exit_emitter__.count;if(B.length===Y){this.unload();let C=this.#Q.emit("exit",null,Q),X=Q==="SIGHUP"?this.#A:Q;if(!C)A.kill(A.pid,X)}};this.#J=A.reallyExit,this.#Y=A.emit}onExit(A,Q){if(!Gz(this.#B))return()=>{};if(this.#F===!1)this.load();let B=Q?.alwaysLast?"afterExit":"exit";return this.#Q.on(B,A),()=>{if(this.#Q.removeListener(B,A),this.#Q.listeners.exit.length===0&&this.#Q.listeners.afterExit.length===0)this.unload()}}load(){if(this.#F)return;this.#F=!0,this.#Q.count+=1;for(let A of qW)try{let Q=this.#C[A];if(Q)this.#B.on(A,Q)}catch(Q){}this.#B.emit=(A,...Q)=>{return this.#G(A,...Q)},this.#B.reallyExit=(A)=>{return this.#X(A)}}unload(){if(!this.#F)return;this.#F=!1,qW.forEach((A)=>{let Q=this.#C[A];if(!Q)throw Error("Listener not defined for signal: "+A);try{this.#B.removeListener(A,Q)}catch(B){}}),this.#B.emit=this.#Y,this.#B.reallyExit=this.#J,this.#Q.count-=1}#X(A){if(!Gz(this.#B))return 0;return this.#B.exitCode=A||0,this.#Q.emit("exit",this.#B.exitCode,null),this.#J.call(this.#B,this.#B.exitCode)}#G(A,...Q){let B=this.#Y;if(A==="exit"&&Gz(this.#B)){if(typeof Q[0]==="number")this.#B.exitCode=Q[0];let Y=B.call(this.#B,A,...Q);return this.#Q.emit("exit",this.#B.exitCode,null),Y}else return B.call(this.#B,A,...Q)}}var u_=globalThis.process,{onExit:WBA,load:fJY,unload:bJY}=LxQ(Gz(u_)?new FBA(u_):new GBA);var ZBA=(A,{cleanup:Q,detached:B},{signal:Y})=>{if(!Q||B)return;let J=WBA(()=>{A.kill()});qxQ(Y,()=>{J()})};var UBA=({source:A,sourcePromise:Q,boundOptions:B,createNested:Y},...J)=>{let C=IM(),{destination:X,destinationStream:G,destinationError:F,from:W,unpipeSignal:Z}=MxQ(B,Y,J),{sourceStream:U,sourceError:$}=RxQ(A,W),{options:E,fileDescriptors:K}=D1.get(A);return{sourcePromise:Q,sourceStream:U,sourceOptions:E,sourceError:$,destination:X,destinationStream:G,destinationError:F,unpipeSignal:Z,fileDescriptors:K,startTime:C}},MxQ=(A,Q,B)=>{try{let{destination:Y,pipeOptions:{from:J,to:C,unpipeSignal:X}={}}=zxQ(A,Q,...B),G=TM(Y,C);return{destination:Y,destinationStream:G,from:J,unpipeSignal:X}}catch(Y){return{destinationError:Y}}},zxQ=(A,Q,B,...Y)=>{if(Array.isArray(B))return{destination:Q($BA,A)(B,...Y),pipeOptions:A};if(typeof B==="string"||B instanceof URL||yk(B)){if(Object.keys(A).length>0)throw TypeError('Please use .pipe("file", ..., options) or .pipe(execa("file", ..., options)) instead of .pipe(options)("file", ...).');let[J,C,X]=XM(B,...Y);return{destination:Q($BA)(J,C,X),pipeOptions:X}}if(D1.has(B)){if(Object.keys(A).length>0)throw TypeError("Please use .pipe(options)`command` or .pipe($(options)`command`) instead of .pipe(options)($`command`).");return{destination:B,pipeOptions:Y[0]}}throw TypeError(`The first argument must be a template string, an options object, or an Execa subprocess: ${B}`)},$BA=({options:A})=>({options:{...A,stdin:"pipe",piped:!0}}),RxQ=(A,Q)=>{try{return{sourceStream:V4(A,Q)}}catch(B){return{sourceError:B}}};var KBA=({sourceStream:A,sourceError:Q,destinationStream:B,destinationError:Y,fileDescriptors:J,sourceOptions:C,startTime:X})=>{let G=wxQ({sourceStream:A,sourceError:Q,destinationStream:B,destinationError:Y});if(G!==void 0)throw c_({error:G,fileDescriptors:J,sourceOptions:C,startTime:X})},wxQ=({sourceStream:A,sourceError:Q,destinationStream:B,destinationError:Y})=>{if(Q!==void 0&&Y!==void 0)return Y;if(Y!==void 0)return f_(A),Y;if(Q!==void 0)return x_(B),Q},c_=({error:A,fileDescriptors:Q,sourceOptions:B,startTime:Y})=>D4({error:A,command:EBA,escapedCommand:EBA,fileDescriptors:Q,options:B,startTime:Y,isSync:!1}),EBA="source.pipe(destination)";var VBA=async(A)=>{let[{status:Q,reason:B,value:Y=B},{status:J,reason:C,value:X=C}]=await A;if(!X.pipedFrom.includes(Y))X.pipedFrom.push(Y);if(J==="rejected")throw X;if(Q==="rejected")throw Y;return X};import{finished as jxQ}from"node:stream/promises";var IBA=(A,Q,B)=>{let Y=Fz.has(Q)?PxQ(A,Q):OxQ(A,Q);return IW(A,SxQ,B.signal),IW(Q,kxQ,B.signal),TxQ(Q),Y},OxQ=(A,Q)=>{let B=LW([A]);return q4(B,Q),Fz.set(Q,B),B},PxQ=(A,Q)=>{let B=Fz.get(Q);return B.add(A),B},TxQ=async(A)=>{try{await jxQ(A,{cleanup:!0,readable:!1,writable:!0})}catch{}Fz.delete(A)},Fz=new WeakMap,SxQ=2,kxQ=1;import{aborted as _xQ}from"node:util";var HBA=(A,Q)=>A===void 0?[]:[vxQ(A,Q)],vxQ=async(A,{sourceStream:Q,mergedStream:B,fileDescriptors:Y,sourceOptions:J,startTime:C})=>{await _xQ(A,Q),await B.remove(Q);let X=Error("Pipe canceled by `unpipeSignal` option.");throw c_({error:X,fileDescriptors:Y,sourceOptions:J,startTime:C})};var Wz=(A,...Q)=>{if(e0(Q[0]))return Wz.bind(void 0,{...A,boundOptions:{...A.boundOptions,...Q[0]}});let{destination:B,...Y}=UBA(A,...Q),J=yxQ({...Y,destination:B});return J.pipe=Wz.bind(void 0,{...A,source:B,sourcePromise:J,boundOptions:{}}),J},yxQ=async({sourcePromise:A,sourceStream:Q,sourceOptions:B,sourceError:Y,destination:J,destinationStream:C,destinationError:X,unpipeSignal:G,fileDescriptors:F,startTime:W})=>{let Z=gxQ(A,J);KBA({sourceStream:Q,sourceError:Y,destinationStream:C,destinationError:X,fileDescriptors:F,sourceOptions:B,startTime:W});let U=new AbortController;try{let $=IBA(Q,C,U);return await Promise.race([VBA(Z),...HBA(G,{sourceStream:Q,mergedStream:$,sourceOptions:B,fileDescriptors:F,startTime:W})])}finally{U.abort()}},gxQ=(A,Q)=>Promise.allSettled([A,Q]);import{setImmediate as dxQ}from"node:timers/promises";import{on as hxQ}from"node:events";import{getDefaultHighWaterMark as xxQ}from"node:stream";var Zz=({subprocessStdout:A,subprocess:Q,binary:B,shouldEncode:Y,encoding:J,preserveNewlines:C})=>{let X=new AbortController;return fxQ(Q,X),NBA({stream:A,controller:X,binary:B,shouldEncode:!A.readableObjectMode&&Y,encoding:J,shouldSplit:!A.readableObjectMode,preserveNewlines:C})},fxQ=async(A,Q)=>{try{await A}catch{}finally{Q.abort()}},l_=({stream:A,onStreamEnd:Q,lines:B,encoding:Y,stripFinalNewline:J,allMixed:C})=>{let X=new AbortController;bxQ(Q,X,A);let G=A.readableObjectMode&&!C;return NBA({stream:A,controller:X,binary:Y==="buffer",shouldEncode:!G,encoding:Y,shouldSplit:!G&&B,preserveNewlines:!J})},bxQ=async(A,Q,B)=>{try{await A}catch{B.destroy()}finally{Q.abort()}},NBA=({stream:A,controller:Q,binary:B,shouldEncode:Y,encoding:J,shouldSplit:C,preserveNewlines:X})=>{let G=hxQ(A,"data",{signal:Q.signal,highWaterMark:DBA,highWatermark:DBA});return mxQ({onStdoutChunk:G,controller:Q,binary:B,shouldEncode:Y,encoding:J,shouldSplit:C,preserveNewlines:X})},p_=xxQ(!0),DBA=p_,mxQ=async function*({onStdoutChunk:A,controller:Q,binary:B,shouldEncode:Y,encoding:J,shouldSplit:C,preserveNewlines:X}){let G=uxQ({binary:B,shouldEncode:Y,encoding:J,shouldSplit:C,preserveNewlines:X});try{for await(let[F]of A)yield*NW(F,G,0)}catch(F){if(!Q.signal.aborted)throw F}finally{yield*xV(G)}},uxQ=({binary:A,shouldEncode:Q,encoding:B,shouldSplit:Y,preserveNewlines:J})=>[Qz(A,B,!Q),Az(A,J,!Y,{})].filter(Boolean);var LBA=async({stream:A,onStreamEnd:Q,fdNumber:B,encoding:Y,buffer:J,maxBuffer:C,lines:X,allMixed:G,stripFinalNewline:F,verboseInfo:W,streamInfo:Z})=>{let U=cxQ({stream:A,onStreamEnd:Q,fdNumber:B,encoding:Y,allMixed:G,verboseInfo:W,streamInfo:Z});if(!J){await Promise.all([lxQ(A),U]);return}let $=w_(F,B),E=l_({stream:A,onStreamEnd:Q,lines:X,encoding:Y,stripFinalNewline:$,allMixed:G}),[K]=await Promise.all([pxQ({stream:A,iterable:E,fdNumber:B,encoding:Y,maxBuffer:C,lines:X}),U]);return K},cxQ=async({stream:A,onStreamEnd:Q,fdNumber:B,encoding:Y,allMixed:J,verboseInfo:C,streamInfo:{fileDescriptors:X}})=>{if(!Jz({stdioItems:X[B]?.stdioItems,encoding:Y,verboseInfo:C,fdNumber:B}))return;let G=l_({stream:A,onStreamEnd:Q,lines:!0,encoding:Y,stripFinalNewline:!0,allMixed:J});await OQA(G,A,B,C)},lxQ=async(A)=>{if(await dxQ(),A.readableFlowing===null)A.resume()},pxQ=async({stream:A,stream:{readableObjectMode:Q},iterable:B,fdNumber:Y,encoding:J,maxBuffer:C,lines:X})=>{try{if(Q||X)return await lM(B,{maxBuffer:C});if(J==="buffer")return new Uint8Array(await pM(B,{maxBuffer:C}));return await nM(B,{maxBuffer:C})}catch(G){return qBA(OAA({error:G,stream:A,readableObjectMode:Q,lines:X,encoding:J,fdNumber:Y}))}},i_=async(A)=>{try{return await A}catch(Q){return qBA(Q)}},qBA=({bufferedData:A})=>co(A)?new Uint8Array(A):A;import{finished as ixQ}from"node:stream/promises";var uV=async(A,Q,B,{isSameDirection:Y,stopOnExit:J=!1}={})=>{let C=nxQ(A,B),X=new AbortController;try{await Promise.race([...J?[B.exitPromise]:[],ixQ(A,{cleanup:!0,signal:X.signal})])}catch(G){if(!C.stdinCleanedUp)axQ(G,Q,B,Y)}finally{X.abort()}},nxQ=(A,{originalStreams:[Q],subprocess:B})=>{let Y={stdinCleanedUp:!1};if(A===Q)sxQ(A,B,Y);return Y},sxQ=(A,Q,B)=>{let{_destroy:Y}=A;A._destroy=(...J)=>{rxQ(Q,B),Y.call(A,...J)}},rxQ=({exitCode:A,signalCode:Q},B)=>{if(A!==null||Q!==null)B.stdinCleanedUp=!0},axQ=(A,Q,B,Y)=>{if(!oxQ(A,Q,B,Y))throw A},oxQ=(A,Q,B,Y=!0)=>{if(B.propagating)return MBA(A)||$z(A);return B.propagating=!0,n_(B,Q)===Y?MBA(A):$z(A)},n_=({fileDescriptors:A},Q)=>Q!=="all"&&A[Q].direction==="input",$z=(A)=>A?.code==="ERR_STREAM_PREMATURE_CLOSE",MBA=(A)=>A?.code==="EPIPE";var zBA=({subprocess:A,encoding:Q,buffer:B,maxBuffer:Y,lines:J,stripFinalNewline:C,verboseInfo:X,streamInfo:G})=>A.stdio.map((F,W)=>s_({stream:F,fdNumber:W,encoding:Q,buffer:B[W],maxBuffer:Y[W],lines:J[W],allMixed:!1,stripFinalNewline:C,verboseInfo:X,streamInfo:G})),s_=async({stream:A,fdNumber:Q,encoding:B,buffer:Y,maxBuffer:J,lines:C,allMixed:X,stripFinalNewline:G,verboseInfo:F,streamInfo:W})=>{if(!A)return;let Z=uV(A,Q,W);if(n_(W,Q)){await Z;return}let[U]=await Promise.all([LBA({stream:A,onStreamEnd:Z,fdNumber:Q,encoding:B,buffer:Y,maxBuffer:J,lines:C,allMixed:X,stripFinalNewline:G,verboseInfo:F,streamInfo:W}),Z]);return U};var RBA=({stdout:A,stderr:Q},{all:B})=>B&&(A||Q)?LW([A,Q].filter(Boolean)):void 0,wBA=({subprocess:A,encoding:Q,buffer:B,maxBuffer:Y,lines:J,stripFinalNewline:C,verboseInfo:X,streamInfo:G})=>s_({...txQ(A,B),fdNumber:"all",encoding:Q,maxBuffer:Y[1]+Y[2],lines:J[1]||J[2],allMixed:exQ(A),stripFinalNewline:C,verboseInfo:X,streamInfo:G}),txQ=({stdout:A,stderr:Q,all:B},[,Y,J])=>{let C=Y||J;if(!C)return{stream:B,buffer:C};if(!Y)return{stream:Q,buffer:C};if(!J)return{stream:A,buffer:C};return{stream:B,buffer:C}},exQ=({all:A,stdout:Q,stderr:B})=>A&&Q&&B&&Q.readableObjectMode!==B.readableObjectMode;import{once as AfQ}from"node:events";var jBA=(A)=>Z4(A,"ipc"),OBA=(A,Q)=>{let B=VM(A);V1({type:"ipc",verboseMessage:B,fdNumber:"ipc",verboseInfo:Q})};var PBA=async({subprocess:A,buffer:Q,maxBuffer:B,ipc:Y,ipcOutput:J,verboseInfo:C})=>{if(!Y)return J;let X=jBA(C),G=hX(Q,"ipc"),F=hX(B,"ipc");for await(let W of y_({anyProcess:A,channel:A.channel,isSubprocess:!1,ipc:Y,shouldAwait:!1,reference:!0})){if(G)PAA(A,J,F),J.push(W);if(X)OBA(W,C)}return J},TBA=async(A,Q)=>{return await Promise.allSettled([A]),Q};var SBA=async({subprocess:A,options:{encoding:Q,buffer:B,maxBuffer:Y,lines:J,timeoutDuration:C,cancelSignal:X,gracefulCancel:G,forceKillAfterDelay:F,stripFinalNewline:W,ipc:Z,ipcInput:U},context:$,verboseInfo:E,fileDescriptors:K,originalStreams:I,onInternalError:V,controller:H})=>{let D=_QA(A,$),L={originalStreams:I,fileDescriptors:K,subprocess:A,exitPromise:D,propagating:!1},z=zBA({subprocess:A,encoding:Q,buffer:B,maxBuffer:Y,lines:J,stripFinalNewline:W,verboseInfo:E,streamInfo:L}),M=wBA({subprocess:A,encoding:Q,buffer:B,maxBuffer:Y,lines:J,stripFinalNewline:W,verboseInfo:E,streamInfo:L}),N=[],q=PBA({subprocess:A,buffer:B,maxBuffer:Y,ipc:Z,ipcOutput:N,verboseInfo:E}),w=QfQ(I,A,L),P=BfQ(K,L);try{return await Promise.race([Promise.all([{},yQA(D),Promise.all(z),M,q,CAA(A,U),...w,...P]),V,YfQ(A,H),...AAA(A,C,$,H),...qe({subprocess:A,cancelSignal:X,gracefulCancel:G,context:$,controller:H}),...te({subprocess:A,cancelSignal:X,gracefulCancel:G,forceKillAfterDelay:F,context:$,controller:H})])}catch(_){return $.terminationReason??="other",Promise.all([{error:_},D,Promise.all(z.map((O)=>i_(O))),i_(M),TBA(q,N),Promise.allSettled(w),Promise.allSettled(P)])}},QfQ=(A,Q,B)=>A.map((Y,J)=>Y===Q.stdio[J]?void 0:uV(Y,J,B)),BfQ=(A,Q)=>A.flatMap(({stdioItems:B},Y)=>B.filter(({value:J,stream:C=J})=>WC(C,{checkOpen:!1})&&!GC(C)).map(({type:J,value:C,stream:X=C})=>uV(X,Y,Q,{isSameDirection:p8.has(J),stopOnExit:J==="native"}))),YfQ=async(A,{signal:Q})=>{let[B]=await AfQ(A,"error",{signal:Q});throw B};var kBA=()=>({readableDestroy:new WeakMap,writableFinal:new WeakMap,writableDestroy:new WeakMap}),dV=(A,Q,B)=>{let Y=A[B];if(!Y.has(Q))Y.set(Q,[]);let J=Y.get(Q),C=H1();return J.push(C),{resolve:C.resolve.bind(C),promises:J}},M4=async({resolve:A,promises:Q},B)=>{A();let[Y]=await Promise.race([Promise.allSettled([!0,B]),Promise.all([!1,...Q])]);return!Y};import{Readable as JfQ}from"node:stream";import{callbackify as CfQ}from"node:util";import{finished as _BA}from"node:stream/promises";var r_=async(A)=>{if(A===void 0)return;try{await a_(A)}catch{}},vBA=async(A)=>{if(A===void 0)return;try{await o_(A)}catch{}},a_=async(A)=>{await _BA(A,{cleanup:!0,readable:!1,writable:!0})},o_=async(A)=>{await _BA(A,{cleanup:!0,readable:!0,writable:!1})},Uz=async(A,Q)=>{if(await A,Q)throw Q},Ez=(A,Q,B)=>{if(B&&!$z(B))A.destroy(B);else if(Q)A.destroy()};var yBA=({subprocess:A,concurrentStreams:Q,encoding:B},{from:Y,binary:J=!0,preserveNewlines:C=!0}={})=>{let X=J||e9.has(B),{subprocessStdout:G,waitReadableDestroy:F}=t_(A,Y,Q),{readableEncoding:W,readableObjectMode:Z,readableHighWaterMark:U}=e_(G,X),{read:$,onStdoutDataDone:E}=Av({subprocessStdout:G,subprocess:A,binary:X,encoding:B,preserveNewlines:C}),K=new JfQ({read:$,destroy:CfQ(Bv.bind(void 0,{subprocessStdout:G,subprocess:A,waitReadableDestroy:F})),highWaterMark:U,objectMode:Z,encoding:W});return Qv({subprocessStdout:G,onStdoutDataDone:E,readable:K,subprocess:A}),K},t_=(A,Q,B)=>{let Y=V4(A,Q),J=dV(B,Y,"readableDestroy");return{subprocessStdout:Y,waitReadableDestroy:J}},e_=({readableEncoding:A,readableObjectMode:Q,readableHighWaterMark:B},Y)=>Y?{readableEncoding:A,readableObjectMode:Q,readableHighWaterMark:B}:{readableEncoding:A,readableObjectMode:!0,readableHighWaterMark:p_},Av=({subprocessStdout:A,subprocess:Q,binary:B,encoding:Y,preserveNewlines:J})=>{let C=H1(),X=Zz({subprocessStdout:A,subprocess:Q,binary:B,shouldEncode:!B,encoding:Y,preserveNewlines:J});return{read(){XfQ(this,X,C)},onStdoutDataDone:C}},XfQ=async(A,Q,B)=>{try{let{value:Y,done:J}=await Q.next();if(J)B.resolve();else A.push(Y)}catch{}},Qv=async({subprocessStdout:A,onStdoutDataDone:Q,readable:B,subprocess:Y,subprocessStdin:J})=>{try{if(await o_(A),await Y,await r_(J),await Q,B.readable)B.push(null)}catch(C){await r_(J),gBA(B,C)}},Bv=async({subprocessStdout:A,subprocess:Q,waitReadableDestroy:B},Y)=>{if(await M4(B,Q))gBA(A,Y),await Uz(Q,Y)},gBA=(A,Q)=>{Ez(A,A.readable,Q)};import{Writable as GfQ}from"node:stream";import{callbackify as hBA}from"node:util";var xBA=({subprocess:A,concurrentStreams:Q},{to:B}={})=>{let{subprocessStdin:Y,waitWritableFinal:J,waitWritableDestroy:C}=Yv(A,B,Q),X=new GfQ({...Jv(Y,A,J),destroy:hBA(Xv.bind(void 0,{subprocessStdin:Y,subprocess:A,waitWritableFinal:J,waitWritableDestroy:C})),highWaterMark:Y.writableHighWaterMark,objectMode:Y.writableObjectMode});return Cv(Y,X),X},Yv=(A,Q,B)=>{let Y=TM(A,Q),J=dV(B,Y,"writableFinal"),C=dV(B,Y,"writableDestroy");return{subprocessStdin:Y,waitWritableFinal:J,waitWritableDestroy:C}},Jv=(A,Q,B)=>({write:FfQ.bind(void 0,A),final:hBA(WfQ.bind(void 0,A,Q,B))}),FfQ=(A,Q,B,Y)=>{if(A.write(Q,B))Y();else A.once("drain",Y)},WfQ=async(A,Q,B)=>{if(await M4(B,Q)){if(A.writable)A.end();await Q}},Cv=async(A,Q,B)=>{try{if(await a_(A),Q.writable)Q.end()}catch(Y){await vBA(B),fBA(Q,Y)}},Xv=async({subprocessStdin:A,subprocess:Q,waitWritableFinal:B,waitWritableDestroy:Y},J)=>{if(await M4(B,Q),await M4(Y,Q))fBA(A,J),await Uz(Q,J)},fBA=(A,Q)=>{Ez(A,A.writable,Q)};import{Duplex as ZfQ}from"node:stream";import{callbackify as $fQ}from"node:util";var bBA=({subprocess:A,concurrentStreams:Q,encoding:B},{from:Y,to:J,binary:C=!0,preserveNewlines:X=!0}={})=>{let G=C||e9.has(B),{subprocessStdout:F,waitReadableDestroy:W}=t_(A,Y,Q),{subprocessStdin:Z,waitWritableFinal:U,waitWritableDestroy:$}=Yv(A,J,Q),{readableEncoding:E,readableObjectMode:K,readableHighWaterMark:I}=e_(F,G),{read:V,onStdoutDataDone:H}=Av({subprocessStdout:F,subprocess:A,binary:G,encoding:B,preserveNewlines:X}),D=new ZfQ({read:V,...Jv(Z,A,U),destroy:$fQ(UfQ.bind(void 0,{subprocessStdout:F,subprocessStdin:Z,subprocess:A,waitReadableDestroy:W,waitWritableFinal:U,waitWritableDestroy:$})),readableHighWaterMark:I,writableHighWaterMark:Z.writableHighWaterMark,readableObjectMode:K,writableObjectMode:Z.writableObjectMode,encoding:E});return Qv({subprocessStdout:F,onStdoutDataDone:H,readable:D,subprocess:A,subprocessStdin:Z}),Cv(Z,D,F),D},UfQ=async({subprocessStdout:A,subprocessStdin:Q,subprocess:B,waitReadableDestroy:Y,waitWritableFinal:J,waitWritableDestroy:C},X)=>{await Promise.all([Bv({subprocessStdout:A,subprocess:B,waitReadableDestroy:Y},X),Xv({subprocessStdin:Q,subprocess:B,waitWritableFinal:J,waitWritableDestroy:C},X)])};var Gv=(A,Q,{from:B,binary:Y=!1,preserveNewlines:J=!1}={})=>{let C=Y||e9.has(Q),X=V4(A,B),G=Zz({subprocessStdout:X,subprocess:A,binary:C,shouldEncode:!0,encoding:Q,preserveNewlines:J});return EfQ(G,X,A)},EfQ=async function*(A,Q,B){try{yield*A}finally{if(Q.readable)Q.destroy();await B}};var mBA=(A,{encoding:Q})=>{let B=kBA();A.readable=yBA.bind(void 0,{subprocess:A,concurrentStreams:B,encoding:Q}),A.writable=xBA.bind(void 0,{subprocess:A,concurrentStreams:B}),A.duplex=bBA.bind(void 0,{subprocess:A,concurrentStreams:B,encoding:Q}),A.iterable=Gv.bind(void 0,A,Q),A[Symbol.asyncIterator]=Gv.bind(void 0,A,Q,{})};var uBA=(A,Q)=>{for(let[B,Y]of VfQ){let J=Y.value.bind(Q);Reflect.defineProperty(A,B,{...Y,value:J})}},KfQ=(async()=>{})().constructor.prototype,VfQ=["then","catch","finally"].map((A)=>[A,Reflect.getOwnPropertyDescriptor(KfQ,A)]);var dBA=(A,Q,B,Y)=>{let{file:J,commandArguments:C,command:X,escapedCommand:G,startTime:F,verboseInfo:W,options:Z,fileDescriptors:U}=DfQ(A,Q,B),{subprocess:$,promise:E}=LfQ({file:J,commandArguments:C,options:Z,startTime:F,verboseInfo:W,command:X,escapedCommand:G,fileDescriptors:U});return $.pipe=Wz.bind(void 0,{source:$,sourcePromise:E,boundOptions:{},createNested:Y}),uBA($,E),D1.set($,{options:Z,fileDescriptors:U}),$},DfQ=(A,Q,B)=>{let{command:Y,escapedCommand:J,startTime:C,verboseInfo:X}=HM(A,Q,B),{file:G,commandArguments:F,options:W}=mM(A,Q,B),Z=NfQ(W),U=rQA(Z,X);return{file:G,commandArguments:F,command:Y,escapedCommand:J,startTime:C,verboseInfo:X,options:Z,fileDescriptors:U}},NfQ=({timeout:A,signal:Q,...B})=>{if(Q!==void 0)throw TypeError('The "signal" option has been renamed to "cancelSignal" instead.');return{...B,timeoutDuration:A}},LfQ=({file:A,commandArguments:Q,options:B,startTime:Y,verboseInfo:J,command:C,escapedCommand:X,fileDescriptors:G})=>{let F;try{F=HfQ(A,Q,B)}catch(K){return pQA({error:K,command:C,escapedCommand:X,fileDescriptors:G,options:B,startTime:Y,verboseInfo:J})}let W=new AbortController;IfQ(Number.POSITIVE_INFINITY,W.signal);let Z=[...F.stdio];CBA(F,G,W),ZBA(F,B,W);let U={},$=H1();F.kill=Ne.bind(void 0,{kill:F.kill.bind(F),options:B,onInternalError:$,context:U,controller:W}),F.all=RBA(F,B),mBA(F,B),dQA(F,B);let E=qfQ({subprocess:F,options:B,startTime:Y,verboseInfo:J,fileDescriptors:G,originalStreams:Z,command:C,escapedCommand:X,context:U,onInternalError:$,controller:W});return{subprocess:F,promise:E}},qfQ=async({subprocess:A,options:Q,startTime:B,verboseInfo:Y,fileDescriptors:J,originalStreams:C,command:X,escapedCommand:G,context:F,onInternalError:W,controller:Z})=>{let[U,[$,E],K,I,V]=await SBA({subprocess:A,options:Q,context:F,verboseInfo:Y,fileDescriptors:J,originalStreams:C,onInternalError:W,controller:Z});Z.abort(),W.resolve();let H=K.map((z,M)=>bX(z,Q,M)),D=bX(I,Q,"all"),L=MfQ({errorInfo:U,exitCode:$,signal:E,stdio:H,all:D,ipcOutput:V,context:F,options:Q,command:X,escapedCommand:G,startTime:B});return N4(L,Y,Q)},MfQ=({errorInfo:A,exitCode:Q,signal:B,stdio:Y,all:J,ipcOutput:C,context:X,options:G,command:F,escapedCommand:W,startTime:Z})=>("error"in A)?hV({error:A.error,command:F,escapedCommand:W,timedOut:X.terminationReason==="timeout",isCanceled:X.terminationReason==="cancel"||X.terminationReason==="gracefulCancel",isGracefullyCanceled:X.terminationReason==="gracefulCancel",isMaxBuffer:A.error instanceof xX,isForcefullyTerminated:X.isForcefullyTerminated,exitCode:Q,signal:B,stdio:Y,all:J,ipcOutput:C,options:G,startTime:Z,isSync:!1}):rM({command:F,escapedCommand:W,stdio:Y,all:J,ipcOutput:C,options:G,startTime:Z});var Kz=(A,Q)=>{let B=Object.fromEntries(Object.entries(Q).map(([Y,J])=>[Y,zfQ(Y,A[Y],J)]));return{...A,...B}},zfQ=(A,Q,B)=>{if(RfQ.has(A)&&e0(Q)&&e0(B))return{...Q,...B};return B},RfQ=new Set(["env",...mk]);var u6=(A,Q,B,Y)=>{let J=(X,G,F)=>u6(X,G,B,F),C=(...X)=>wfQ({mapArguments:A,deepOptions:B,boundOptions:Q,setBoundExeca:Y,createNested:J},...X);if(Y!==void 0)Y(C,J,Q);return C},wfQ=({mapArguments:A,deepOptions:Q={},boundOptions:B={},setBoundExeca:Y,createNested:J},C,...X)=>{if(e0(C))return J(A,Kz(B,C),Y);let{file:G,commandArguments:F,options:W,isSync:Z}=jfQ({mapArguments:A,firstArgument:C,nextArguments:X,deepOptions:Q,boundOptions:B});return Z?hQA(G,F,W):dBA(G,F,W,J)},jfQ=({mapArguments:A,firstArgument:Q,nextArguments:B,deepOptions:Y,boundOptions:J})=>{let C=ro(Q)?ao(Q,B):[Q,...B],[X,G,F]=XM(...C),W=Kz(Kz(Y,J),F),{file:Z=X,commandArguments:U=G,options:$=W,isSync:E=!1}=A({file:X,commandArguments:G,options:W});return{file:Z,commandArguments:U,options:$,isSync:E}};var cBA=({file:A,commandArguments:Q})=>pBA(A,Q),lBA=({file:A,commandArguments:Q})=>({...pBA(A,Q),isSync:!0}),pBA=(A,Q)=>{if(Q.length>0)throw TypeError(`The command and its arguments must be passed as a single string: ${A} ${Q}.`);let[B,...Y]=OfQ(A);return{file:B,commandArguments:Y}},OfQ=(A)=>{if(typeof A!=="string")throw TypeError(`The command must be a string: ${String(A)}.`);let Q=A.trim();if(Q==="")return[];let B=[];for(let Y of Q.split(PfQ)){let J=B.at(-1);if(J&&J.endsWith("\\"))B[B.length-1]=`${J.slice(0,-1)} ${Y}`;else B.push(Y)}return B},PfQ=/ +/g;var iBA=(A,Q,B)=>{A.sync=Q(TfQ,B),A.s=A.sync},nBA=({options:A})=>sBA(A),TfQ=({options:A})=>({...sBA(A),isSync:!0}),sBA=(A)=>({options:{...SfQ(A),...A}}),SfQ=({input:A,inputFile:Q,stdio:B})=>A===void 0&&Q===void 0&&B===void 0?{stdin:"inherit"}:{},rBA={preferLocal:!0};var cV=u6(()=>({})),O5Y=u6(()=>({isSync:!0})),P5Y=u6(cBA),T5Y=u6(lBA),S5Y=u6(BAA),k5Y=u6(nBA,{},rBA,iBA),{sendMessage:_5Y,getOneMessage:v5Y,getEachMessage:y5Y,getCancelSignal:g5Y}=cQA();var V0A=qA(G0A(),1);var pV=(A)=>{if(typeof A!=="string")throw TypeError("invalid pattern");if(A.length>65536)throw TypeError("pattern is too long")};var ffQ={"[:alnum:]":["\\p{L}\\p{Nl}\\p{Nd}",!0],"[:alpha:]":["\\p{L}\\p{Nl}",!0],"[:ascii:]":["\\x00-\\x7f",!1],"[:blank:]":["\\p{Zs}\\t",!0],"[:cntrl:]":["\\p{Cc}",!0],"[:digit:]":["\\p{Nd}",!0],"[:graph:]":["\\p{Z}\\p{C}",!0,!0],"[:lower:]":["\\p{Ll}",!0],"[:print:]":["\\p{C}",!0],"[:punct:]":["\\p{P}",!0],"[:space:]":["\\p{Z}\\t\\r\\n\\v\\f",!0],"[:upper:]":["\\p{Lu}",!0],"[:word:]":["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}",!0],"[:xdigit:]":["A-Fa-f0-9",!1]},iV=(A)=>A.replace(/[[\]\\-]/g,"\\$&"),bfQ=(A)=>A.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),F0A=(A)=>A.join(""),W0A=(A,Q)=>{let B=Q;if(A.charAt(B)!=="[")throw Error("not in a brace expression");let Y=[],J=[],C=B+1,X=!1,G=!1,F=!1,W=!1,Z=B,U="";A:while(CU)Y.push(iV(U)+"-"+iV(I));else if(I===U)Y.push(iV(I));U="",C++;continue}if(A.startsWith("-]",C+1)){Y.push(iV(I+"-")),C+=2;continue}if(A.startsWith("-",C+1)){U=I,C+=2;continue}Y.push(iV(I)),C++}if(Z{return Q?A.replace(/\[([^\/\\])\]/g,"$1"):A.replace(/((?!\\).|^)\[([^\/\\])\]/g,"$1$2").replace(/\\([^\/])/g,"$1")};var mfQ=new Set(["!","?","+","*","@"]),Z0A=(A)=>mfQ.has(A),ufQ="(?!(?:^|/)\\.\\.?(?:$|/))",Vz="(?!\\.)",dfQ=new Set(["[","."]),cfQ=new Set(["..","."]),lfQ=new Set("().*{}+?[]^$\\!"),pfQ=(A)=>A.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),$v="[^/]",$0A=$v+"*?",U0A=$v+"+?";class aY{type;#A;#Q;#B=!1;#Y=[];#J;#C;#F;#X=!1;#G;#Z;#U=!1;constructor(A,Q,B={}){if(this.type=A,A)this.#Q=!0;if(this.#J=Q,this.#A=this.#J?this.#J.#A:this,this.#G=this.#A===this?B:this.#A.#G,this.#F=this.#A===this?[]:this.#A.#F,A==="!"&&!this.#A.#X)this.#F.push(this);this.#C=this.#J?this.#J.#Y.length:0}get hasMagic(){if(this.#Q!==void 0)return this.#Q;for(let A of this.#Y){if(typeof A==="string")continue;if(A.type||A.hasMagic)return this.#Q=!0}return this.#Q}toString(){if(this.#Z!==void 0)return this.#Z;if(!this.type)return this.#Z=this.#Y.map((A)=>String(A)).join("");else return this.#Z=this.type+"("+this.#Y.map((A)=>String(A)).join("|")+")"}#W(){if(this!==this.#A)throw Error("should only call on root");if(this.#X)return this;this.toString(),this.#X=!0;let A;while(A=this.#F.pop()){if(A.type!=="!")continue;let Q=A,B=Q.#J;while(B){for(let Y=Q.#C+1;!B.type&&Ytypeof Q==="string"?Q:Q.toJSON()):[this.type,...this.#Y.map((Q)=>Q.toJSON())];if(this.isStart()&&!this.type)A.unshift([]);if(this.isEnd()&&(this===this.#A||this.#A.#X&&this.#J?.type==="!"))A.push({});return A}isStart(){if(this.#A===this)return!0;if(!this.#J?.isStart())return!1;if(this.#C===0)return!0;let A=this.#J;for(let Q=0;Q{let[E,K,I,V]=typeof $==="string"?aY.#I($,this.#Q,G):$.toRegExpSource(A);return this.#Q=this.#Q||I,this.#B=this.#B||V,E}).join(""),W="";if(this.isStart()){if(typeof this.#Y[0]==="string"){if(!(this.#Y.length===1&&cfQ.has(this.#Y[0]))){let E=dfQ,K=Q&&E.has(F.charAt(0))||F.startsWith("\\.")&&E.has(F.charAt(2))||F.startsWith("\\.\\.")&&E.has(F.charAt(4)),I=!Q&&!A&&E.has(F.charAt(0));W=K?ufQ:I?Vz:""}}}let Z="";if(this.isEnd()&&this.#A.#X&&this.#J?.type==="!")Z="(?:$|\\/)";return[W+F+Z,ZC(F),this.#Q=!!this.#Q,this.#B]}let B=this.type==="*"||this.type==="+",Y=this.type==="!"?"(?:(?!(?:":"(?:",J=this.#V(Q);if(this.isStart()&&this.isEnd()&&!J&&this.type!=="!"){let G=this.toString();return this.#Y=[G],this.type=null,this.#Q=void 0,[G,ZC(this.toString()),!1,!1]}let C=!B||A||Q||!Vz?"":this.#V(!0);if(C===J)C="";if(C)J=`(?:${J})(?:${C})*?`;let X="";if(this.type==="!"&&this.#U)X=(this.isStart()&&!Q?Vz:"")+U0A;else{let G=this.type==="!"?"))"+(this.isStart()&&!Q&&!A?Vz:"")+$0A+")":this.type==="@"?")":this.type==="?"?")?":this.type==="+"&&C?")":this.type==="*"&&C?")?":`)${this.type}`;X=Y+J+G}return[X,ZC(J),this.#Q=!!this.#Q,this.#B]}#V(A){return this.#Y.map((Q)=>{if(typeof Q==="string")throw Error("string type in extglob ast??");let[B,Y,J,C]=Q.toRegExpSource(A);return this.#B=this.#B||C,B}).filter((Q)=>!(this.isStart()&&this.isEnd())||!!Q).join("|")}static#I(A,Q,B=!1){let Y=!1,J="",C=!1;for(let X=0;X{return Q?A.replace(/[?*()[\]]/g,"[$&]"):A.replace(/[?*()[\]\\]/g,"\\$&")};var fJ=(A,Q,B={})=>{if(pV(Q),!B.nocomment&&Q.charAt(0)==="#")return!1;return new n8(Q,B).match(A)},ifQ=/^\*+([^+@!?\*\[\(]*)$/,nfQ=(A)=>(Q)=>!Q.startsWith(".")&&Q.endsWith(A),sfQ=(A)=>(Q)=>Q.endsWith(A),rfQ=(A)=>{return A=A.toLowerCase(),(Q)=>!Q.startsWith(".")&&Q.toLowerCase().endsWith(A)},afQ=(A)=>{return A=A.toLowerCase(),(Q)=>Q.toLowerCase().endsWith(A)},ofQ=/^\*+\.\*+$/,tfQ=(A)=>!A.startsWith(".")&&A.includes("."),efQ=(A)=>A!=="."&&A!==".."&&A.includes("."),AbQ=/^\.\*+$/,QbQ=(A)=>A!=="."&&A!==".."&&A.startsWith("."),BbQ=/^\*+$/,YbQ=(A)=>A.length!==0&&!A.startsWith("."),JbQ=(A)=>A.length!==0&&A!=="."&&A!=="..",CbQ=/^\?+([^+@!?\*\[\(]*)?$/,XbQ=([A,Q=""])=>{let B=I0A([A]);if(!Q)return B;return Q=Q.toLowerCase(),(Y)=>B(Y)&&Y.toLowerCase().endsWith(Q)},GbQ=([A,Q=""])=>{let B=H0A([A]);if(!Q)return B;return Q=Q.toLowerCase(),(Y)=>B(Y)&&Y.toLowerCase().endsWith(Q)},FbQ=([A,Q=""])=>{let B=H0A([A]);return!Q?B:(Y)=>B(Y)&&Y.endsWith(Q)},WbQ=([A,Q=""])=>{let B=I0A([A]);return!Q?B:(Y)=>B(Y)&&Y.endsWith(Q)},I0A=([A])=>{let Q=A.length;return(B)=>B.length===Q&&!B.startsWith(".")},H0A=([A])=>{let Q=A.length;return(B)=>B.length===Q&&B!=="."&&B!==".."},D0A=typeof process==="object"&&process?typeof process.env==="object"&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:"posix",E0A={win32:{sep:"\\"},posix:{sep:"/"}},ZbQ=D0A==="win32"?E0A.win32.sep:E0A.posix.sep;fJ.sep=ZbQ;var oY=Symbol("globstar **");fJ.GLOBSTAR=oY;var $bQ="[^/]",UbQ=$bQ+"*?",EbQ="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",KbQ="(?:(?!(?:\\/|^)\\.).)*?",VbQ=(A,Q={})=>(B)=>fJ(B,A,Q);fJ.filter=VbQ;var i8=(A,Q={})=>Object.assign({},A,Q),IbQ=(A)=>{if(!A||typeof A!=="object"||!Object.keys(A).length)return fJ;let Q=fJ;return Object.assign((Y,J,C={})=>Q(Y,J,i8(A,C)),{Minimatch:class extends Q.Minimatch{constructor(J,C={}){super(J,i8(A,C))}static defaults(J){return Q.defaults(i8(A,J)).Minimatch}},AST:class extends Q.AST{constructor(J,C,X={}){super(J,C,i8(A,X))}static fromGlob(J,C={}){return Q.AST.fromGlob(J,i8(A,C))}},unescape:(Y,J={})=>Q.unescape(Y,i8(A,J)),escape:(Y,J={})=>Q.escape(Y,i8(A,J)),filter:(Y,J={})=>Q.filter(Y,i8(A,J)),defaults:(Y)=>Q.defaults(i8(A,Y)),makeRe:(Y,J={})=>Q.makeRe(Y,i8(A,J)),braceExpand:(Y,J={})=>Q.braceExpand(Y,i8(A,J)),match:(Y,J,C={})=>Q.match(Y,J,i8(A,C)),sep:Q.sep,GLOBSTAR:oY})};fJ.defaults=IbQ;var N0A=(A,Q={})=>{if(pV(A),Q.nobrace||!/\{(?:(?!\{).)*\}/.test(A))return[A];return V0A.default(A)};fJ.braceExpand=N0A;var HbQ=(A,Q={})=>new n8(A,Q).makeRe();fJ.makeRe=HbQ;var DbQ=(A,Q,B={})=>{let Y=new n8(Q,B);if(A=A.filter((J)=>Y.match(J)),Y.options.nonull&&!A.length)A.push(Q);return A};fJ.match=DbQ;var K0A=/[?*]|[+@!]\(.*?\)|\[|\]/,NbQ=(A)=>A.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&");class n8{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;regexp;constructor(A,Q={}){if(pV(A),Q=Q||{},this.options=Q,this.pattern=A,this.platform=Q.platform||D0A,this.isWindows=this.platform==="win32",this.windowsPathsNoEscape=!!Q.windowsPathsNoEscape||Q.allowWindowsEscape===!1,this.windowsPathsNoEscape)this.pattern=this.pattern.replace(/\\/g,"/");this.preserveMultipleSlashes=!!Q.preserveMultipleSlashes,this.regexp=null,this.negate=!1,this.nonegate=!!Q.nonegate,this.comment=!1,this.empty=!1,this.partial=!!Q.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=Q.windowsNoMagicRoot!==void 0?Q.windowsNoMagicRoot:!!(this.isWindows&&this.nocase),this.globSet=[],this.globParts=[],this.set=[],this.make()}hasMagic(){if(this.options.magicalBraces&&this.set.length>1)return!0;for(let A of this.set)for(let Q of A)if(typeof Q!=="string")return!0;return!1}debug(...A){}make(){let A=this.pattern,Q=this.options;if(!Q.nocomment&&A.charAt(0)==="#"){this.comment=!0;return}if(!A){this.empty=!0;return}if(this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],Q.debug)this.debug=(...J)=>console.error(...J);this.debug(this.pattern,this.globSet);let B=this.globSet.map((J)=>this.slashSplit(J));this.globParts=this.preprocess(B),this.debug(this.pattern,this.globParts);let Y=this.globParts.map((J,C,X)=>{if(this.isWindows&&this.windowsNoMagicRoot){let G=J[0]===""&&J[1]===""&&(J[2]==="?"||!K0A.test(J[2]))&&!K0A.test(J[3]),F=/^[a-z]:/i.test(J[0]);if(G)return[...J.slice(0,4),...J.slice(4).map((W)=>this.parse(W))];else if(F)return[J[0],...J.slice(1).map((W)=>this.parse(W))]}return J.map((G)=>this.parse(G))});if(this.debug(this.pattern,Y),this.set=Y.filter((J)=>J.indexOf(!1)===-1),this.isWindows)for(let J=0;J=2)A=this.firstPhasePreProcess(A),A=this.secondPhasePreProcess(A);else if(Q>=1)A=this.levelOneOptimize(A);else A=this.adjascentGlobstarOptimize(A);return A}adjascentGlobstarOptimize(A){return A.map((Q)=>{let B=-1;while((B=Q.indexOf("**",B+1))!==-1){let Y=B;while(Q[Y+1]==="**")Y++;if(Y!==B)Q.splice(B,Y-B)}return Q})}levelOneOptimize(A){return A.map((Q)=>{return Q=Q.reduce((B,Y)=>{let J=B[B.length-1];if(Y==="**"&&J==="**")return B;if(Y===".."){if(J&&J!==".."&&J!=="."&&J!=="**")return B.pop(),B}return B.push(Y),B},[]),Q.length===0?[""]:Q})}levelTwoFileOptimize(A){if(!Array.isArray(A))A=this.slashSplit(A);let Q=!1;do{if(Q=!1,!this.preserveMultipleSlashes){for(let Y=1;YY)B.splice(Y+1,C-Y);let X=B[Y+1],G=B[Y+2],F=B[Y+3];if(X!=="..")continue;if(!G||G==="."||G===".."||!F||F==="."||F==="..")continue;Q=!0,B.splice(Y,1);let W=B.slice(0);W[Y]="**",A.push(W),Y--}if(!this.preserveMultipleSlashes){for(let C=1;CQ.length)}partsMatch(A,Q,B=!1){let Y=0,J=0,C=[],X="";while(YD)Q=Q.slice(L);else if(D>L)A=A.slice(D)}}}let{optimizationLevel:J=1}=this.options;if(J>=2)A=this.levelTwoFileOptimize(A);this.debug("matchOne",this,{file:A,pattern:Q}),this.debug("matchOne",A.length,Q.length);for(var C=0,X=0,G=A.length,F=Q.length;C{if(B)return;if(A)return{transform:DgQ.bind(void 0,new TextEncoder)};let Y=new HgQ(Q);return{transform:NgQ.bind(void 0,Y),final:LgQ.bind(void 0,Y)}},DgQ=function*(A,Q){if(IgQ.isBuffer(Q))yield m6(Q);else if(typeof Q==="string")yield A.encode(Q);else yield Q},NgQ=function*(A,Q){yield RY(Q)?A.write(Q):Q},LgQ=function*(A){let Q=A.end();if(Q!=="")yield Q};import{callbackify as EBA}from"node:util";var gv=EBA(async(A,Q,B,Y)=>{Q.currentIterable=A(...B);try{for await(let J of Q.currentIterable)Y.push(J)}finally{delete Q.currentIterable}}),dz=async function*(A,Q,B){if(B===Q.length){yield A;return}let{transform:Y=MgQ}=Q[B];for await(let J of Y(A))yield*dz(J,Q,B+1)},KBA=async function*(A){for(let[Q,{final:B}]of Object.entries(A))yield*qgQ(B,Number(Q),A)},qgQ=async function*(A,Q,B){if(A===void 0)return;for await(let Y of A())yield*dz(Y,B,Q+1)},VBA=EBA(async({currentIterable:A},Q)=>{if(A!==void 0){await(Q?A.throw(Q):A.return());return}if(Q)throw Q}),MgQ=function*(A){yield A};var xv=(A,Q,B,Y)=>{try{for(let J of A(...Q))B.push(J);Y()}catch(J){Y(J)}},IBA=(A,Q)=>[...Q.flatMap((B)=>[...zW(B,A,0)]),...YI(A)],zW=function*(A,Q,B){if(B===Q.length){yield A;return}let{transform:Y=RgQ}=Q[B];for(let J of Y(A))yield*zW(J,Q,B+1)},YI=function*(A){for(let[Q,{final:B}]of Object.entries(A))yield*zgQ(B,Number(Q),A)},zgQ=function*(A,Q,B){if(A===void 0)return;for(let Y of A())yield*zW(Y,B,Q+1)},RgQ=function*(A){yield A};var fv=({value:A,value:{transform:Q,final:B,writableObjectMode:Y,readableObjectMode:J},optionName:C},{encoding:X})=>{let G={},F=DBA(A,X,C),W=MW(Q),Z=MW(B),U=W?gv.bind(void 0,dz,G):xv.bind(void 0,zW),$=W||Z?gv.bind(void 0,KBA,G):xv.bind(void 0,YI),E=W||Z?VBA.bind(void 0,G):void 0;return{stream:new wgQ({writableObjectMode:Y,writableHighWaterMark:HBA(Y),readableObjectMode:J,readableHighWaterMark:HBA(J),transform(I,V,H){U([I,F,0],this,H)},flush(I){$([F],this,I)},destroy:E})}},cz=(A,Q,B,Y)=>{let J=Q.filter(({type:X})=>X==="generator"),C=Y?J.reverse():J;for(let{value:X,optionName:G}of C){let F=DBA(X,B,G);A=IBA(F,A)}return A},DBA=({transform:A,final:Q,binary:B,writableObjectMode:Y,readableObjectMode:J,preserveNewlines:C},X,G)=>{let F={};return[{transform:ZBA(Y,G)},uz(B,X,Y),mz(B,C,Y,F),{transform:A,final:Q},{transform:$BA(J,G)},WBA({binary:B,preserveNewlines:C,readableObjectMode:J,state:F})].filter(Boolean)};var NBA=(A,Q)=>{for(let B of jgQ(A))OgQ(A,B,Q)},jgQ=(A)=>new Set(Object.entries(A).filter(([,{direction:Q}])=>Q==="input").map(([Q])=>Number(Q))),OgQ=(A,Q,B)=>{let{stdioItems:Y}=A[Q],J=Y.filter(({contents:G})=>G!==void 0);if(J.length===0)return;if(Q!==0){let[{type:G,optionName:F}]=J;throw TypeError(`Only the \`stdin\` option, not \`${F}\`, can be ${lG[G]} with synchronous methods.`)}let X=J.map(({contents:G})=>G).map((G)=>PgQ(G,Y));B.input=rV(X)},PgQ=(A,Q)=>{let B=cz(A,Q,"utf8",!0);return TgQ(B),rV(B)},TgQ=(A)=>{let Q=A.find((B)=>typeof B!=="string"&&!RY(B));if(Q!==void 0)throw TypeError(`The \`stdin\` option is invalid: when passing objects as input, a transform must be used to serialize them to strings or Uint8Arrays: ${Q}.`)};import{writeFileSync as vgQ,appendFileSync as ygQ}from"node:fs";var lz=({stdioItems:A,encoding:Q,verboseInfo:B,fdNumber:Y})=>Y!=="all"&&V4(B,Y)&&!A8.has(Q)&&SgQ(Y)&&(A.some(({type:J,value:C})=>J==="native"&&kgQ.has(C))||A.every(({type:J})=>n8.has(J))),SgQ=(A)=>A===1||A===2,kgQ=new Set(["pipe","overlapped"]),LBA=async(A,Q,B,Y)=>{for await(let J of A)if(!_gQ(Q))MBA(J,B,Y)},qBA=(A,Q,B)=>{for(let Y of A)MBA(Y,Q,B)},_gQ=(A)=>A._readableState.pipes.length>0,MBA=(A,Q,B)=>{let Y=Qz(A);H1({type:"output",verboseMessage:Y,fdNumber:Q,verboseInfo:B})};var zBA=({fileDescriptors:A,syncResult:{output:Q},options:B,isMaxBuffer:Y,verboseInfo:J})=>{if(Q===null)return{output:Array.from({length:3})};let C={},X=new Set([]);return{output:Q.map((F,W)=>hgQ({result:F,fileDescriptors:A,fdNumber:W,state:C,outputFiles:X,isMaxBuffer:Y,verboseInfo:J},B)),...C}},hgQ=({result:A,fileDescriptors:Q,fdNumber:B,state:Y,outputFiles:J,isMaxBuffer:C,verboseInfo:X},{buffer:G,encoding:F,lines:W,stripFinalNewline:Z,maxBuffer:U})=>{if(A===null)return;let $=RQA(A,C,U),E=m6($),{stdioItems:K,objectMode:I}=Q[B],V=ggQ([E],K,F,Y),{serializedResult:H,finalResult:D=H}=xgQ({chunks:V,objectMode:I,encoding:F,lines:W,stripFinalNewline:Z,fdNumber:B});fgQ({serializedResult:H,fdNumber:B,state:Y,verboseInfo:X,encoding:F,stdioItems:K,objectMode:I});let L=G[B]?D:void 0;try{if(Y.error===void 0)bgQ(H,K,J);return L}catch(z){return Y.error=z,L}},ggQ=(A,Q,B,Y)=>{try{return cz(A,Q,B,!1)}catch(J){return Y.error=J,A}},xgQ=({chunks:A,objectMode:Q,encoding:B,lines:Y,stripFinalNewline:J,fdNumber:C})=>{if(Q)return{serializedResult:A};if(B==="buffer")return{serializedResult:rV(A)};let X=ft(A,B);if(Y[C])return{serializedResult:X,finalResult:hv(X,!J[C],Q)};return{serializedResult:X}},fgQ=({serializedResult:A,fdNumber:Q,state:B,verboseInfo:Y,encoding:J,stdioItems:C,objectMode:X})=>{if(!lz({stdioItems:C,encoding:J,verboseInfo:Y,fdNumber:Q}))return;let G=hv(A,!1,X);try{qBA(G,Q,Y)}catch(F){B.error??=F}},bgQ=(A,Q,B)=>{for(let{path:Y,append:J}of Q.filter(({type:C})=>fz.has(C))){let C=typeof Y==="string"?Y:Y.toString();if(J||B.has(C))ygQ(Y,A);else B.add(C),vgQ(Y,A)}};var RBA=([,A,Q],B)=>{if(!B.all)return;if(A===void 0)return Q;if(Q===void 0)return A;if(Array.isArray(A))return Array.isArray(Q)?[...A,...Q]:[...A,l6(Q,B,"all")];if(Array.isArray(Q))return[l6(A,B,"all"),...Q];if(RY(A)&&RY(Q))return l_([A,Q]);return`${A}${Q}`};import{once as bv}from"node:events";var wBA=async(A,Q)=>{let[B,Y]=await mgQ(A);return Q.isForcefullyTerminated??=!1,[B,Y]},mgQ=async(A)=>{let[Q,B]=await Promise.allSettled([bv(A,"spawn"),bv(A,"exit")]);if(Q.status==="rejected")return[];return B.status==="rejected"?jBA(A):B.value},jBA=async(A)=>{try{return await bv(A,"exit")}catch{return jBA(A)}},OBA=async(A)=>{let[Q,B]=await A;if(!ugQ(Q,B)&&mv(Q,B))throw new D1;return[Q,B]},ugQ=(A,Q)=>A===void 0&&Q===void 0,mv=(A,Q)=>A!==0||Q!==null;var PBA=({error:A,status:Q,signal:B,output:Y},{maxBuffer:J})=>{let C=dgQ(A,Q,B),X=C?.code==="ETIMEDOUT",G=zQA(C,Y,J);return{resultError:C,exitCode:Q,signal:B,timedOut:X,isMaxBuffer:G}},dgQ=(A,Q,B)=>{if(A!==void 0)return A;return mv(Q,B)?new D1:void 0};var TBA=(A,Q,B)=>{let{file:Y,commandArguments:J,command:C,escapedCommand:X,startTime:G,verboseInfo:F,options:W,fileDescriptors:Z}=lgQ(A,Q,B),U=ngQ({file:Y,commandArguments:J,options:W,command:C,escapedCommand:X,verboseInfo:F,fileDescriptors:Z,startTime:G});return R4(U,F,W)},lgQ=(A,Q,B)=>{let{command:Y,escapedCommand:J,startTime:C,verboseInfo:X}=Yz(A,Q,B),G=pgQ(B),{file:F,commandArguments:W,options:Z}=jz(A,Q,G);igQ(Z);let U=CBA(Z,X);return{file:F,commandArguments:W,command:Y,escapedCommand:J,startTime:C,verboseInfo:X,options:Z,fileDescriptors:U}},pgQ=(A)=>A.node&&!A.ipc?{...A,ipc:!1}:A,igQ=({ipc:A,ipcInput:Q,detached:B,cancelSignal:Y})=>{if(Q)pz("ipcInput");if(A)pz("ipc: true");if(B)pz("detached: true");if(Y)pz("cancelSignal")},pz=(A)=>{throw TypeError(`The "${A}" option cannot be used with synchronous methods.`)},ngQ=({file:A,commandArguments:Q,options:B,command:Y,escapedCommand:J,verboseInfo:C,fileDescriptors:X,startTime:G})=>{let F=sgQ({file:A,commandArguments:Q,options:B,command:Y,escapedCommand:J,fileDescriptors:X,startTime:G});if(F.failed)return F;let{resultError:W,exitCode:Z,signal:U,timedOut:$,isMaxBuffer:E}=PBA(F,B),{output:K,error:I=W}=zBA({fileDescriptors:X,syncResult:F,options:B,isMaxBuffer:E,verboseInfo:C}),V=K.map((D,L)=>l6(D,B,L)),H=l6(RBA(K,B),B,"all");return agQ({error:I,exitCode:Z,signal:U,timedOut:$,isMaxBuffer:E,stdio:V,all:H,options:B,command:Y,escapedCommand:J,startTime:G})},sgQ=({file:A,commandArguments:Q,options:B,command:Y,escapedCommand:J,fileDescriptors:C,startTime:X})=>{try{NBA(C,B);let G=rgQ(B);return cgQ(A,Q,G)}catch(G){return z4({error:G,command:Y,escapedCommand:J,fileDescriptors:C,options:B,startTime:X,isSync:!0})}},rgQ=({encoding:A,maxBuffer:Q,...B})=>({...B,encoding:"buffer",maxBuffer:yz(Q)}),agQ=({error:A,exitCode:Q,signal:B,timedOut:Y,isMaxBuffer:J,stdio:C,all:X,options:G,command:F,escapedCommand:W,startTime:Z})=>A===void 0?hz({command:F,escapedCommand:W,stdio:C,all:X,ipcOutput:[],options:G,startTime:Z}):BI({error:A,command:F,escapedCommand:W,timedOut:Y,isCanceled:!1,isGracefullyCanceled:!1,isMaxBuffer:J,isForcefullyTerminated:!1,exitCode:Q,signal:B,stdio:C,all:X,ipcOutput:[],options:G,startTime:Z,isSync:!0});import{setMaxListeners as xfQ}from"node:events";import{spawn as ffQ}from"node:child_process";import yBA from"node:process";import{once as uv,on as ogQ}from"node:events";var SBA=({anyProcess:A,channel:Q,isSubprocess:B,ipc:Y},{reference:J=!0,filter:C}={})=>{return D4({methodName:"getOneMessage",isSubprocess:B,ipc:Y,isConnected:Lz(A)}),tgQ({anyProcess:A,channel:Q,isSubprocess:B,filter:C,reference:J})},tgQ=async({anyProcess:A,channel:Q,isSubprocess:B,filter:Y,reference:J})=>{Iz(Q,J);let C=cG(A,Q,B),X=new AbortController;try{return await Promise.race([egQ(C,Y,X),AxQ(C,B,X),QxQ(C,B,X)])}catch(G){throw N4(A),G}finally{X.abort(),Hz(Q,J)}},egQ=async(A,Q,{signal:B})=>{if(Q===void 0){let[Y]=await uv(A,"message",{signal:B});return Y}for await(let[Y]of ogQ(A,"message",{signal:B}))if(Q(Y))return Y},AxQ=async(A,Q,{signal:B})=>{await uv(A,"disconnect",{signal:B}),VAA(Q)},QxQ=async(A,Q,{signal:B})=>{let[Y]=await uv(A,"strict:error",{signal:B});throw Ez(Y,Q)};import{once as _BA,on as BxQ}from"node:events";var vBA=({anyProcess:A,channel:Q,isSubprocess:B,ipc:Y},{reference:J=!0}={})=>dv({anyProcess:A,channel:Q,isSubprocess:B,ipc:Y,shouldAwait:!B,reference:J}),dv=({anyProcess:A,channel:Q,isSubprocess:B,ipc:Y,shouldAwait:J,reference:C})=>{D4({methodName:"getEachMessage",isSubprocess:B,ipc:Y,isConnected:Lz(A)}),Iz(Q,C);let X=cG(A,Q,B),G=new AbortController,F={};return YxQ(A,X,G),JxQ({ipcEmitter:X,isSubprocess:B,controller:G,state:F}),CxQ({anyProcess:A,channel:Q,ipcEmitter:X,isSubprocess:B,shouldAwait:J,controller:G,state:F,reference:C})},YxQ=async(A,Q,B)=>{try{await _BA(Q,"disconnect",{signal:B.signal}),B.abort()}catch{}},JxQ=async({ipcEmitter:A,isSubprocess:Q,controller:B,state:Y})=>{try{let[J]=await _BA(A,"strict:error",{signal:B.signal});Y.error=Ez(J,Q),B.abort()}catch{}},CxQ=async function*({anyProcess:A,channel:Q,ipcEmitter:B,isSubprocess:Y,shouldAwait:J,controller:C,state:X,reference:G}){try{for await(let[F]of BxQ(B,"message",{signal:C.signal}))kBA(X),yield F}catch{kBA(X)}finally{if(C.abort(),Hz(Q,G),!Y)N4(A);if(J)await A}},kBA=({error:A})=>{if(A)throw A};var hBA=(A,{ipc:Q})=>{Object.assign(A,xBA(A,!1,Q))},gBA=()=>{let A=yBA,Q=!0,B=yBA.channel!==void 0;return{...xBA(A,!0,B),getCancelSignal:dAA.bind(void 0,{anyProcess:A,channel:A.channel,isSubprocess:!0,ipc:B})}},xBA=(A,Q,B)=>({sendMessage:Rz.bind(void 0,{anyProcess:A,channel:A.channel,isSubprocess:Q,ipc:B}),getOneMessage:SBA.bind(void 0,{anyProcess:A,channel:A.channel,isSubprocess:Q,ipc:B}),getEachMessage:vBA.bind(void 0,{anyProcess:A,channel:A.channel,isSubprocess:Q,ipc:B})});import{ChildProcess as XxQ}from"node:child_process";import{PassThrough as GxQ,Readable as FxQ,Writable as WxQ,Duplex as ZxQ}from"node:stream";var fBA=({error:A,command:Q,escapedCommand:B,fileDescriptors:Y,options:J,startTime:C,verboseInfo:X})=>{_v(Y);let G=new XxQ;$xQ(G,Y),Object.assign(G,{readable:UxQ,writable:ExQ,duplex:KxQ});let F=z4({error:A,command:Q,escapedCommand:B,fileDescriptors:Y,options:J,startTime:C,isSync:!1}),W=VxQ(F,X,J);return{subprocess:G,promise:W}},$xQ=(A,Q)=>{let B=JI(),Y=JI(),J=JI(),C=Array.from({length:Q.length-3},JI),X=JI(),G=[B,Y,J,...C];Object.assign(A,{stdin:B,stdout:Y,stderr:J,all:X,stdio:G})},JI=()=>{let A=new GxQ;return A.end(),A},UxQ=()=>new FxQ({read(){}}),ExQ=()=>new WxQ({write(){}}),KxQ=()=>new ZxQ({read(){},write(){}}),VxQ=async(A,Q,B)=>R4(A,Q,B);import{createReadStream as bBA,createWriteStream as mBA}from"node:fs";import{Buffer as IxQ}from"node:buffer";import{Readable as CI,Writable as HxQ,Duplex as DxQ}from"node:stream";var dBA=(A,Q)=>bz(NxQ,A,Q,!1),XI=({type:A,optionName:Q})=>{throw TypeError(`The \`${Q}\` option cannot be ${lG[A]}.`)},uBA={fileNumber:XI,generator:fv,asyncGenerator:fv,nodeStream:({value:A})=>({stream:A}),webTransform({value:{transform:A,writableObjectMode:Q,readableObjectMode:B}}){let Y=Q||B;return{stream:DxQ.fromWeb(A,{objectMode:Y})}},duplex:({value:{transform:A}})=>({stream:A}),native(){}},NxQ={input:{...uBA,fileUrl:({value:A})=>({stream:bBA(A)}),filePath:({value:{file:A}})=>({stream:bBA(A)}),webStream:({value:A})=>({stream:CI.fromWeb(A)}),iterable:({value:A})=>({stream:CI.from(A)}),asyncIterable:({value:A})=>({stream:CI.from(A)}),string:({value:A})=>({stream:CI.from(A)}),uint8Array:({value:A})=>({stream:CI.from(IxQ.from(A))})},output:{...uBA,fileUrl:({value:A})=>({stream:mBA(A)}),filePath:({value:{file:A,append:Q}})=>({stream:mBA(A,Q?{flags:"a"}:{})}),webStream:({value:A})=>({stream:HxQ.fromWeb(A)}),iterable:XI,asyncIterable:XI,string:XI,uint8Array:XI}};import{on as LxQ,once as cBA}from"node:events";import{PassThrough as qxQ,getDefaultHighWaterMark as MxQ}from"node:stream";import{finished as iBA}from"node:stream/promises";function RW(A){if(!Array.isArray(A))throw TypeError(`Expected an array, got \`${typeof A}\`.`);for(let J of A)cv(J);let Q=A.some(({readableObjectMode:J})=>J),B=zxQ(A,Q),Y=new nBA({objectMode:Q,writableHighWaterMark:B,readableHighWaterMark:B});for(let J of A)Y.add(J);return Y}var zxQ=(A,Q)=>{if(A.length===0)return MxQ(Q);let B=A.filter(({readableObjectMode:Y})=>Y===Q).map(({readableHighWaterMark:Y})=>Y);return Math.max(...B)};class nBA extends qxQ{#A=new Set([]);#Q=new Set([]);#B=new Set([]);#Y;#J=Symbol("unpipe");#C=new WeakMap;add(A){if(cv(A),this.#A.has(A))return;this.#A.add(A),this.#Y??=RxQ(this,this.#A,this.#J);let Q=OxQ({passThroughStream:this,stream:A,streams:this.#A,ended:this.#Q,aborted:this.#B,onFinished:this.#Y,unpipeEvent:this.#J});this.#C.set(A,Q),A.pipe(this,{end:!1})}async remove(A){if(cv(A),!this.#A.has(A))return!1;let Q=this.#C.get(A);if(Q===void 0)return!1;return this.#C.delete(A),A.unpipe(this),await Q,!0}}var RxQ=async(A,Q,B)=>{iz(A,lBA);let Y=new AbortController;try{await Promise.race([wxQ(A,Y),jxQ(A,Q,B,Y)])}finally{Y.abort(),iz(A,-lBA)}},wxQ=async(A,{signal:Q})=>{try{await iBA(A,{signal:Q,cleanup:!0})}catch(B){throw sBA(A,B),B}},jxQ=async(A,Q,B,{signal:Y})=>{for await(let[J]of LxQ(A,"unpipe",{signal:Y}))if(Q.has(J))J.emit(B)},cv=(A)=>{if(typeof A?.pipe!=="function")throw TypeError(`Expected a readable stream, got: \`${typeof A}\`.`)},OxQ=async({passThroughStream:A,stream:Q,streams:B,ended:Y,aborted:J,onFinished:C,unpipeEvent:X})=>{iz(A,pBA);let G=new AbortController;try{await Promise.race([PxQ(C,Q,G),TxQ({passThroughStream:A,stream:Q,streams:B,ended:Y,aborted:J,controller:G}),SxQ({stream:Q,streams:B,ended:Y,aborted:J,unpipeEvent:X,controller:G})])}finally{G.abort(),iz(A,-pBA)}if(B.size>0&&B.size===Y.size+J.size)if(Y.size===0&&J.size>0)lv(A);else kxQ(A)},PxQ=async(A,Q,{signal:B})=>{try{if(await A,!B.aborted)lv(Q)}catch(Y){if(!B.aborted)sBA(Q,Y)}},TxQ=async({passThroughStream:A,stream:Q,streams:B,ended:Y,aborted:J,controller:{signal:C}})=>{try{if(await iBA(Q,{signal:C,cleanup:!0,readable:!0,writable:!1}),B.has(Q))Y.add(Q)}catch(X){if(C.aborted||!B.has(Q))return;if(rBA(X))J.add(Q);else aBA(A,X)}},SxQ=async({stream:A,streams:Q,ended:B,aborted:Y,unpipeEvent:J,controller:{signal:C}})=>{if(await cBA(A,J,{signal:C}),!A.readable)return cBA(C,"abort",{signal:C});Q.delete(A),B.delete(A),Y.delete(A)},kxQ=(A)=>{if(A.writable)A.end()},sBA=(A,Q)=>{if(rBA(Q))lv(A);else aBA(A,Q)},rBA=(A)=>A?.code==="ERR_STREAM_PREMATURE_CLOSE",lv=(A)=>{if(A.readable||A.writable)A.destroy()},aBA=(A,Q)=>{if(!A.destroyed)A.once("error",_xQ),A.destroy(Q)},_xQ=()=>{},iz=(A,Q)=>{let B=A.getMaxListeners();if(B!==0&&B!==Number.POSITIVE_INFINITY)A.setMaxListeners(B+Q)},lBA=2,pBA=1;import{finished as oBA}from"node:stream/promises";var j4=(A,Q)=>{A.pipe(Q),vxQ(A,Q),yxQ(A,Q)},vxQ=async(A,Q)=>{if(UC(A)||UC(Q))return;try{await oBA(A,{cleanup:!0,readable:!0,writable:!1})}catch{}pv(Q)},pv=(A)=>{if(A.writable)A.end()},yxQ=async(A,Q)=>{if(UC(A)||UC(Q))return;try{await oBA(Q,{cleanup:!0,readable:!1,writable:!0})}catch{}iv(A)},iv=(A)=>{if(A.readable)A.destroy()};var tBA=(A,Q,B)=>{let Y=new Map;for(let[J,{stdioItems:C,direction:X}]of Object.entries(Q)){for(let{stream:G}of C.filter(({type:F})=>n8.has(F)))hxQ(A,G,X,J);for(let{stream:G}of C.filter(({type:F})=>!n8.has(F)))xxQ({subprocess:A,stream:G,direction:X,fdNumber:J,pipeGroups:Y,controller:B})}for(let[J,C]of Y.entries()){let X=C.length===1?C[0]:RW(C);j4(X,J)}},hxQ=(A,Q,B,Y)=>{if(B==="output")j4(A.stdio[Y],Q);else j4(Q,A.stdio[Y]);let J=gxQ[Y];if(J!==void 0)A[J]=Q;A.stdio[Y]=Q},gxQ=["stdin","stdout","stderr"],xxQ=({subprocess:A,stream:Q,direction:B,fdNumber:Y,pipeGroups:J,controller:C})=>{if(Q===void 0)return;fxQ(Q,C);let[X,G]=B==="output"?[Q,A.stdio[Y]]:[A.stdio[Y],Q],F=J.get(X)??[];J.set(X,[...F,G])},fxQ=(A,{signal:Q})=>{if(UC(A))LW(A,bxQ,Q)},bxQ=2;import{addAbortListener as dxQ}from"node:events";var wW=[];wW.push("SIGHUP","SIGINT","SIGTERM");if(process.platform!=="win32")wW.push("SIGALRM","SIGABRT","SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");if(process.platform==="linux")wW.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT");var nz=(A)=>!!A&&typeof A==="object"&&typeof A.removeListener==="function"&&typeof A.emit==="function"&&typeof A.reallyExit==="function"&&typeof A.listeners==="function"&&typeof A.kill==="function"&&typeof A.pid==="number"&&typeof A.on==="function",nv=Symbol.for("signal-exit emitter"),sv=globalThis,mxQ=Object.defineProperty.bind(Object);class eBA{emitted={afterExit:!1,exit:!1};listeners={afterExit:[],exit:[]};count=0;id=Math.random();constructor(){if(sv[nv])return sv[nv];mxQ(sv,nv,{value:this,writable:!1,enumerable:!1,configurable:!1})}on(A,Q){this.listeners[A].push(Q)}removeListener(A,Q){let B=this.listeners[A],Y=B.indexOf(Q);if(Y===-1)return;if(Y===0&&B.length===1)B.length=0;else B.splice(Y,1)}emit(A,Q,B){if(this.emitted[A])return!1;this.emitted[A]=!0;let Y=!1;for(let J of this.listeners[A])Y=J(Q,B)===!0||Y;if(A==="exit")Y=this.emit("afterExit",Q,B)||Y;return Y}}class av{}var uxQ=(A)=>{return{onExit(Q,B){return A.onExit(Q,B)},load(){return A.load()},unload(){return A.unload()}}};class A0A extends av{onExit(){return()=>{}}load(){}unload(){}}class Q0A extends av{#A=rv.platform==="win32"?"SIGINT":"SIGHUP";#Q=new eBA;#B;#Y;#J;#C={};#F=!1;constructor(A){super();this.#B=A,this.#C={};for(let Q of wW)this.#C[Q]=()=>{let B=this.#B.listeners(Q),{count:Y}=this.#Q,J=A;if(typeof J.__signal_exit_emitter__==="object"&&typeof J.__signal_exit_emitter__.count==="number")Y+=J.__signal_exit_emitter__.count;if(B.length===Y){this.unload();let C=this.#Q.emit("exit",null,Q),X=Q==="SIGHUP"?this.#A:Q;if(!C)A.kill(A.pid,X)}};this.#J=A.reallyExit,this.#Y=A.emit}onExit(A,Q){if(!nz(this.#B))return()=>{};if(this.#F===!1)this.load();let B=Q?.alwaysLast?"afterExit":"exit";return this.#Q.on(B,A),()=>{if(this.#Q.removeListener(B,A),this.#Q.listeners.exit.length===0&&this.#Q.listeners.afterExit.length===0)this.unload()}}load(){if(this.#F)return;this.#F=!0,this.#Q.count+=1;for(let A of wW)try{let Q=this.#C[A];if(Q)this.#B.on(A,Q)}catch(Q){}this.#B.emit=(A,...Q)=>{return this.#G(A,...Q)},this.#B.reallyExit=(A)=>{return this.#X(A)}}unload(){if(!this.#F)return;this.#F=!1,wW.forEach((A)=>{let Q=this.#C[A];if(!Q)throw Error("Listener not defined for signal: "+A);try{this.#B.removeListener(A,Q)}catch(B){}}),this.#B.emit=this.#Y,this.#B.reallyExit=this.#J,this.#Q.count-=1}#X(A){if(!nz(this.#B))return 0;return this.#B.exitCode=A||0,this.#Q.emit("exit",this.#B.exitCode,null),this.#J.call(this.#B,this.#B.exitCode)}#G(A,...Q){let B=this.#Y;if(A==="exit"&&nz(this.#B)){if(typeof Q[0]==="number")this.#B.exitCode=Q[0];let Y=B.call(this.#B,A,...Q);return this.#Q.emit("exit",this.#B.exitCode,null),Y}else return B.call(this.#B,A,...Q)}}var rv=globalThis.process,{onExit:B0A,load:iJY,unload:nJY}=uxQ(nz(rv)?new Q0A(rv):new A0A);var Y0A=(A,{cleanup:Q,detached:B},{signal:Y})=>{if(!Q||B)return;let J=B0A(()=>{A.kill()});dxQ(Y,()=>{J()})};var C0A=({source:A,sourcePromise:Q,boundOptions:B,createNested:Y},...J)=>{let C=Bz(),{destination:X,destinationStream:G,destinationError:F,from:W,unpipeSignal:Z}=cxQ(B,Y,J),{sourceStream:U,sourceError:$}=pxQ(A,W),{options:E,fileDescriptors:K}=L1.get(A);return{sourcePromise:Q,sourceStream:U,sourceOptions:E,sourceError:$,destination:X,destinationStream:G,destinationError:F,unpipeSignal:Z,fileDescriptors:K,startTime:C}},cxQ=(A,Q,B)=>{try{let{destination:Y,pipeOptions:{from:J,to:C,unpipeSignal:X}={}}=lxQ(A,Q,...B),G=Vz(Y,C);return{destination:Y,destinationStream:G,from:J,unpipeSignal:X}}catch(Y){return{destinationError:Y}}},lxQ=(A,Q,B,...Y)=>{if(Array.isArray(B))return{destination:Q(J0A,A)(B,...Y),pipeOptions:A};if(typeof B==="string"||B instanceof URL||d_(B)){if(Object.keys(A).length>0)throw TypeError('Please use .pipe("file", ..., options) or .pipe(execa("file", ..., options)) instead of .pipe(options)("file", ...).');let[J,C,X]=iM(B,...Y);return{destination:Q(J0A)(J,C,X),pipeOptions:X}}if(L1.has(B)){if(Object.keys(A).length>0)throw TypeError("Please use .pipe(options)`command` or .pipe($(options)`command`) instead of .pipe(options)($`command`).");return{destination:B,pipeOptions:Y[0]}}throw TypeError(`The first argument must be a template string, an options object, or an Execa subprocess: ${B}`)},J0A=({options:A})=>({options:{...A,stdin:"pipe",piped:!0}}),pxQ=(A,Q)=>{try{return{sourceStream:L4(A,Q)}}catch(B){return{sourceError:B}}};var G0A=({sourceStream:A,sourceError:Q,destinationStream:B,destinationError:Y,fileDescriptors:J,sourceOptions:C,startTime:X})=>{let G=ixQ({sourceStream:A,sourceError:Q,destinationStream:B,destinationError:Y});if(G!==void 0)throw ov({error:G,fileDescriptors:J,sourceOptions:C,startTime:X})},ixQ=({sourceStream:A,sourceError:Q,destinationStream:B,destinationError:Y})=>{if(Q!==void 0&&Y!==void 0)return Y;if(Y!==void 0)return iv(A),Y;if(Q!==void 0)return pv(B),Q},ov=({error:A,fileDescriptors:Q,sourceOptions:B,startTime:Y})=>z4({error:A,command:X0A,escapedCommand:X0A,fileDescriptors:Q,options:B,startTime:Y,isSync:!1}),X0A="source.pipe(destination)";var F0A=async(A)=>{let[{status:Q,reason:B,value:Y=B},{status:J,reason:C,value:X=C}]=await A;if(!X.pipedFrom.includes(Y))X.pipedFrom.push(Y);if(J==="rejected")throw X;if(Q==="rejected")throw Y;return X};import{finished as nxQ}from"node:stream/promises";var W0A=(A,Q,B)=>{let Y=sz.has(Q)?rxQ(A,Q):sxQ(A,Q);return LW(A,oxQ,B.signal),LW(Q,txQ,B.signal),axQ(Q),Y},sxQ=(A,Q)=>{let B=RW([A]);return j4(B,Q),sz.set(Q,B),B},rxQ=(A,Q)=>{let B=sz.get(Q);return B.add(A),B},axQ=async(A)=>{try{await nxQ(A,{cleanup:!0,readable:!1,writable:!0})}catch{}sz.delete(A)},sz=new WeakMap,oxQ=2,txQ=1;import{aborted as exQ}from"node:util";var Z0A=(A,Q)=>A===void 0?[]:[AfQ(A,Q)],AfQ=async(A,{sourceStream:Q,mergedStream:B,fileDescriptors:Y,sourceOptions:J,startTime:C})=>{await exQ(A,Q),await B.remove(Q);let X=Error("Pipe canceled by `unpipeSignal` option.");throw ov({error:X,fileDescriptors:Y,sourceOptions:J,startTime:C})};var rz=(A,...Q)=>{if(BY(Q[0]))return rz.bind(void 0,{...A,boundOptions:{...A.boundOptions,...Q[0]}});let{destination:B,...Y}=C0A(A,...Q),J=QfQ({...Y,destination:B});return J.pipe=rz.bind(void 0,{...A,source:B,sourcePromise:J,boundOptions:{}}),J},QfQ=async({sourcePromise:A,sourceStream:Q,sourceOptions:B,sourceError:Y,destination:J,destinationStream:C,destinationError:X,unpipeSignal:G,fileDescriptors:F,startTime:W})=>{let Z=BfQ(A,J);G0A({sourceStream:Q,sourceError:Y,destinationStream:C,destinationError:X,fileDescriptors:F,sourceOptions:B,startTime:W});let U=new AbortController;try{let $=W0A(Q,C,U);return await Promise.race([F0A(Z),...Z0A(G,{sourceStream:Q,mergedStream:$,sourceOptions:B,fileDescriptors:F,startTime:W})])}finally{U.abort()}},BfQ=(A,Q)=>Promise.allSettled([A,Q]);import{setImmediate as WfQ}from"node:timers/promises";import{on as YfQ}from"node:events";import{getDefaultHighWaterMark as JfQ}from"node:stream";var az=({subprocessStdout:A,subprocess:Q,binary:B,shouldEncode:Y,encoding:J,preserveNewlines:C})=>{let X=new AbortController;return CfQ(Q,X),U0A({stream:A,controller:X,binary:B,shouldEncode:!A.readableObjectMode&&Y,encoding:J,shouldSplit:!A.readableObjectMode,preserveNewlines:C})},CfQ=async(A,Q)=>{try{await A}catch{}finally{Q.abort()}},tv=({stream:A,onStreamEnd:Q,lines:B,encoding:Y,stripFinalNewline:J,allMixed:C})=>{let X=new AbortController;XfQ(Q,X,A);let G=A.readableObjectMode&&!C;return U0A({stream:A,controller:X,binary:Y==="buffer",shouldEncode:!G,encoding:Y,shouldSplit:!G&&B,preserveNewlines:!J})},XfQ=async(A,Q,B)=>{try{await A}catch{B.destroy()}finally{Q.abort()}},U0A=({stream:A,controller:Q,binary:B,shouldEncode:Y,encoding:J,shouldSplit:C,preserveNewlines:X})=>{let G=YfQ(A,"data",{signal:Q.signal,highWaterMark:$0A,highWatermark:$0A});return GfQ({onStdoutChunk:G,controller:Q,binary:B,shouldEncode:Y,encoding:J,shouldSplit:C,preserveNewlines:X})},ev=JfQ(!0),$0A=ev,GfQ=async function*({onStdoutChunk:A,controller:Q,binary:B,shouldEncode:Y,encoding:J,shouldSplit:C,preserveNewlines:X}){let G=FfQ({binary:B,shouldEncode:Y,encoding:J,shouldSplit:C,preserveNewlines:X});try{for await(let[F]of A)yield*zW(F,G,0)}catch(F){if(!Q.signal.aborted)throw F}finally{yield*YI(G)}},FfQ=({binary:A,shouldEncode:Q,encoding:B,shouldSplit:Y,preserveNewlines:J})=>[uz(A,B,!Q),mz(A,J,!Y,{})].filter(Boolean);var E0A=async({stream:A,onStreamEnd:Q,fdNumber:B,encoding:Y,buffer:J,maxBuffer:C,lines:X,allMixed:G,stripFinalNewline:F,verboseInfo:W,streamInfo:Z})=>{let U=ZfQ({stream:A,onStreamEnd:Q,fdNumber:B,encoding:Y,allMixed:G,verboseInfo:W,streamInfo:Z});if(!J){await Promise.all([$fQ(A),U]);return}let $=vv(F,B),E=tv({stream:A,onStreamEnd:Q,lines:X,encoding:Y,stripFinalNewline:$,allMixed:G}),[K]=await Promise.all([UfQ({stream:A,iterable:E,fdNumber:B,encoding:Y,maxBuffer:C,lines:X}),U]);return K},ZfQ=async({stream:A,onStreamEnd:Q,fdNumber:B,encoding:Y,allMixed:J,verboseInfo:C,streamInfo:{fileDescriptors:X}})=>{if(!lz({stdioItems:X[B]?.stdioItems,encoding:Y,verboseInfo:C,fdNumber:B}))return;let G=tv({stream:A,onStreamEnd:Q,lines:!0,encoding:Y,stripFinalNewline:!0,allMixed:J});await LBA(G,A,B,C)},$fQ=async(A)=>{if(await WfQ(),A.readableFlowing===null)A.resume()},UfQ=async({stream:A,stream:{readableObjectMode:Q},iterable:B,fdNumber:Y,encoding:J,maxBuffer:C,lines:X})=>{try{if(Q||X)return await Sz(B,{maxBuffer:C});if(J==="buffer")return new Uint8Array(await kz(B,{maxBuffer:C}));return await vz(B,{maxBuffer:C})}catch(G){return K0A(LQA({error:G,stream:A,readableObjectMode:Q,lines:X,encoding:J,fdNumber:Y}))}},Ay=async(A)=>{try{return await A}catch(Q){return K0A(Q)}},K0A=({bufferedData:A})=>gt(A)?new Uint8Array(A):A;import{finished as EfQ}from"node:stream/promises";var GI=async(A,Q,B,{isSameDirection:Y,stopOnExit:J=!1}={})=>{let C=KfQ(A,B),X=new AbortController;try{await Promise.race([...J?[B.exitPromise]:[],EfQ(A,{cleanup:!0,signal:X.signal})])}catch(G){if(!C.stdinCleanedUp)HfQ(G,Q,B,Y)}finally{X.abort()}},KfQ=(A,{originalStreams:[Q],subprocess:B})=>{let Y={stdinCleanedUp:!1};if(A===Q)VfQ(A,B,Y);return Y},VfQ=(A,Q,B)=>{let{_destroy:Y}=A;A._destroy=(...J)=>{IfQ(Q,B),Y.call(A,...J)}},IfQ=({exitCode:A,signalCode:Q},B)=>{if(A!==null||Q!==null)B.stdinCleanedUp=!0},HfQ=(A,Q,B,Y)=>{if(!DfQ(A,Q,B,Y))throw A},DfQ=(A,Q,B,Y=!0)=>{if(B.propagating)return V0A(A)||oz(A);return B.propagating=!0,Qy(B,Q)===Y?V0A(A):oz(A)},Qy=({fileDescriptors:A},Q)=>Q!=="all"&&A[Q].direction==="input",oz=(A)=>A?.code==="ERR_STREAM_PREMATURE_CLOSE",V0A=(A)=>A?.code==="EPIPE";var I0A=({subprocess:A,encoding:Q,buffer:B,maxBuffer:Y,lines:J,stripFinalNewline:C,verboseInfo:X,streamInfo:G})=>A.stdio.map((F,W)=>By({stream:F,fdNumber:W,encoding:Q,buffer:B[W],maxBuffer:Y[W],lines:J[W],allMixed:!1,stripFinalNewline:C,verboseInfo:X,streamInfo:G})),By=async({stream:A,fdNumber:Q,encoding:B,buffer:Y,maxBuffer:J,lines:C,allMixed:X,stripFinalNewline:G,verboseInfo:F,streamInfo:W})=>{if(!A)return;let Z=GI(A,Q,W);if(Qy(W,Q)){await Z;return}let[U]=await Promise.all([E0A({stream:A,onStreamEnd:Z,fdNumber:Q,encoding:B,buffer:Y,maxBuffer:J,lines:C,allMixed:X,stripFinalNewline:G,verboseInfo:F,streamInfo:W}),Z]);return U};var H0A=({stdout:A,stderr:Q},{all:B})=>B&&(A||Q)?RW([A,Q].filter(Boolean)):void 0,D0A=({subprocess:A,encoding:Q,buffer:B,maxBuffer:Y,lines:J,stripFinalNewline:C,verboseInfo:X,streamInfo:G})=>By({...NfQ(A,B),fdNumber:"all",encoding:Q,maxBuffer:Y[1]+Y[2],lines:J[1]||J[2],allMixed:LfQ(A),stripFinalNewline:C,verboseInfo:X,streamInfo:G}),NfQ=({stdout:A,stderr:Q,all:B},[,Y,J])=>{let C=Y||J;if(!C)return{stream:B,buffer:C};if(!Y)return{stream:Q,buffer:C};if(!J)return{stream:A,buffer:C};return{stream:B,buffer:C}},LfQ=({all:A,stdout:Q,stderr:B})=>A&&Q&&B&&Q.readableObjectMode!==B.readableObjectMode;import{once as qfQ}from"node:events";var N0A=(A)=>V4(A,"ipc"),L0A=(A,Q)=>{let B=Qz(A);H1({type:"ipc",verboseMessage:B,fdNumber:"ipc",verboseInfo:Q})};var q0A=async({subprocess:A,buffer:Q,maxBuffer:B,ipc:Y,ipcOutput:J,verboseInfo:C})=>{if(!Y)return J;let X=N0A(C),G=u6(Q,"ipc"),F=u6(B,"ipc");for await(let W of dv({anyProcess:A,channel:A.channel,isSubprocess:!1,ipc:Y,shouldAwait:!1,reference:!0})){if(G)qQA(A,J,F),J.push(W);if(X)L0A(W,C)}return J},M0A=async(A,Q)=>{return await Promise.allSettled([A]),Q};var z0A=async({subprocess:A,options:{encoding:Q,buffer:B,maxBuffer:Y,lines:J,timeoutDuration:C,cancelSignal:X,gracefulCancel:G,forceKillAfterDelay:F,stripFinalNewline:W,ipc:Z,ipcInput:U},context:$,verboseInfo:E,fileDescriptors:K,originalStreams:I,onInternalError:V,controller:H})=>{let D=wBA(A,$),L={originalStreams:I,fileDescriptors:K,subprocess:A,exitPromise:D,propagating:!1},z=I0A({subprocess:A,encoding:Q,buffer:B,maxBuffer:Y,lines:J,stripFinalNewline:W,verboseInfo:E,streamInfo:L}),M=D0A({subprocess:A,encoding:Q,buffer:B,maxBuffer:Y,lines:J,stripFinalNewline:W,verboseInfo:E,streamInfo:L}),N=[],q=q0A({subprocess:A,buffer:B,maxBuffer:Y,ipc:Z,ipcOutput:N,verboseInfo:E}),w=MfQ(I,A,L),P=zfQ(K,L);try{return await Promise.race([Promise.all([{},OBA(D),Promise.all(z),M,q,tAA(A,U),...w,...P]),V,RfQ(A,H),...nAA(A,C,$,H),...KAA({subprocess:A,cancelSignal:X,gracefulCancel:G,context:$,controller:H}),...pAA({subprocess:A,cancelSignal:X,gracefulCancel:G,forceKillAfterDelay:F,context:$,controller:H})])}catch(_){return $.terminationReason??="other",Promise.all([{error:_},D,Promise.all(z.map((O)=>Ay(O))),Ay(M),M0A(q,N),Promise.allSettled(w),Promise.allSettled(P)])}},MfQ=(A,Q,B)=>A.map((Y,J)=>Y===Q.stdio[J]?void 0:GI(Y,J,B)),zfQ=(A,Q)=>A.flatMap(({stdioItems:B},Y)=>B.filter(({value:J,stream:C=J})=>KC(C,{checkOpen:!1})&&!UC(C)).map(({type:J,value:C,stream:X=C})=>GI(X,Y,Q,{isSameDirection:n8.has(J),stopOnExit:J==="native"}))),RfQ=async(A,{signal:Q})=>{let[B]=await qfQ(A,"error",{signal:Q});throw B};var R0A=()=>({readableDestroy:new WeakMap,writableFinal:new WeakMap,writableDestroy:new WeakMap}),FI=(A,Q,B)=>{let Y=A[B];if(!Y.has(Q))Y.set(Q,[]);let J=Y.get(Q),C=N1();return J.push(C),{resolve:C.resolve.bind(C),promises:J}},O4=async({resolve:A,promises:Q},B)=>{A();let[Y]=await Promise.race([Promise.allSettled([!0,B]),Promise.all([!1,...Q])]);return!Y};import{Readable as wfQ}from"node:stream";import{callbackify as jfQ}from"node:util";import{finished as w0A}from"node:stream/promises";var Yy=async(A)=>{if(A===void 0)return;try{await Jy(A)}catch{}},j0A=async(A)=>{if(A===void 0)return;try{await Cy(A)}catch{}},Jy=async(A)=>{await w0A(A,{cleanup:!0,readable:!1,writable:!0})},Cy=async(A)=>{await w0A(A,{cleanup:!0,readable:!0,writable:!1})},tz=async(A,Q)=>{if(await A,Q)throw Q},ez=(A,Q,B)=>{if(B&&!oz(B))A.destroy(B);else if(Q)A.destroy()};var O0A=({subprocess:A,concurrentStreams:Q,encoding:B},{from:Y,binary:J=!0,preserveNewlines:C=!0}={})=>{let X=J||A8.has(B),{subprocessStdout:G,waitReadableDestroy:F}=Xy(A,Y,Q),{readableEncoding:W,readableObjectMode:Z,readableHighWaterMark:U}=Gy(G,X),{read:$,onStdoutDataDone:E}=Fy({subprocessStdout:G,subprocess:A,binary:X,encoding:B,preserveNewlines:C}),K=new wfQ({read:$,destroy:jfQ(Zy.bind(void 0,{subprocessStdout:G,subprocess:A,waitReadableDestroy:F})),highWaterMark:U,objectMode:Z,encoding:W});return Wy({subprocessStdout:G,onStdoutDataDone:E,readable:K,subprocess:A}),K},Xy=(A,Q,B)=>{let Y=L4(A,Q),J=FI(B,Y,"readableDestroy");return{subprocessStdout:Y,waitReadableDestroy:J}},Gy=({readableEncoding:A,readableObjectMode:Q,readableHighWaterMark:B},Y)=>Y?{readableEncoding:A,readableObjectMode:Q,readableHighWaterMark:B}:{readableEncoding:A,readableObjectMode:!0,readableHighWaterMark:ev},Fy=({subprocessStdout:A,subprocess:Q,binary:B,encoding:Y,preserveNewlines:J})=>{let C=N1(),X=az({subprocessStdout:A,subprocess:Q,binary:B,shouldEncode:!B,encoding:Y,preserveNewlines:J});return{read(){OfQ(this,X,C)},onStdoutDataDone:C}},OfQ=async(A,Q,B)=>{try{let{value:Y,done:J}=await Q.next();if(J)B.resolve();else A.push(Y)}catch{}},Wy=async({subprocessStdout:A,onStdoutDataDone:Q,readable:B,subprocess:Y,subprocessStdin:J})=>{try{if(await Cy(A),await Y,await Yy(J),await Q,B.readable)B.push(null)}catch(C){await Yy(J),P0A(B,C)}},Zy=async({subprocessStdout:A,subprocess:Q,waitReadableDestroy:B},Y)=>{if(await O4(B,Q))P0A(A,Y),await tz(Q,Y)},P0A=(A,Q)=>{ez(A,A.readable,Q)};import{Writable as PfQ}from"node:stream";import{callbackify as T0A}from"node:util";var S0A=({subprocess:A,concurrentStreams:Q},{to:B}={})=>{let{subprocessStdin:Y,waitWritableFinal:J,waitWritableDestroy:C}=$y(A,B,Q),X=new PfQ({...Uy(Y,A,J),destroy:T0A(Ky.bind(void 0,{subprocessStdin:Y,subprocess:A,waitWritableFinal:J,waitWritableDestroy:C})),highWaterMark:Y.writableHighWaterMark,objectMode:Y.writableObjectMode});return Ey(Y,X),X},$y=(A,Q,B)=>{let Y=Vz(A,Q),J=FI(B,Y,"writableFinal"),C=FI(B,Y,"writableDestroy");return{subprocessStdin:Y,waitWritableFinal:J,waitWritableDestroy:C}},Uy=(A,Q,B)=>({write:TfQ.bind(void 0,A),final:T0A(SfQ.bind(void 0,A,Q,B))}),TfQ=(A,Q,B,Y)=>{if(A.write(Q,B))Y();else A.once("drain",Y)},SfQ=async(A,Q,B)=>{if(await O4(B,Q)){if(A.writable)A.end();await Q}},Ey=async(A,Q,B)=>{try{if(await Jy(A),Q.writable)Q.end()}catch(Y){await j0A(B),k0A(Q,Y)}},Ky=async({subprocessStdin:A,subprocess:Q,waitWritableFinal:B,waitWritableDestroy:Y},J)=>{if(await O4(B,Q),await O4(Y,Q))k0A(A,J),await tz(Q,J)},k0A=(A,Q)=>{ez(A,A.writable,Q)};import{Duplex as kfQ}from"node:stream";import{callbackify as _fQ}from"node:util";var _0A=({subprocess:A,concurrentStreams:Q,encoding:B},{from:Y,to:J,binary:C=!0,preserveNewlines:X=!0}={})=>{let G=C||A8.has(B),{subprocessStdout:F,waitReadableDestroy:W}=Xy(A,Y,Q),{subprocessStdin:Z,waitWritableFinal:U,waitWritableDestroy:$}=$y(A,J,Q),{readableEncoding:E,readableObjectMode:K,readableHighWaterMark:I}=Gy(F,G),{read:V,onStdoutDataDone:H}=Fy({subprocessStdout:F,subprocess:A,binary:G,encoding:B,preserveNewlines:X}),D=new kfQ({read:V,...Uy(Z,A,U),destroy:_fQ(vfQ.bind(void 0,{subprocessStdout:F,subprocessStdin:Z,subprocess:A,waitReadableDestroy:W,waitWritableFinal:U,waitWritableDestroy:$})),readableHighWaterMark:I,writableHighWaterMark:Z.writableHighWaterMark,readableObjectMode:K,writableObjectMode:Z.writableObjectMode,encoding:E});return Wy({subprocessStdout:F,onStdoutDataDone:H,readable:D,subprocess:A,subprocessStdin:Z}),Ey(Z,D,F),D},vfQ=async({subprocessStdout:A,subprocessStdin:Q,subprocess:B,waitReadableDestroy:Y,waitWritableFinal:J,waitWritableDestroy:C},X)=>{await Promise.all([Zy({subprocessStdout:A,subprocess:B,waitReadableDestroy:Y},X),Ky({subprocessStdin:Q,subprocess:B,waitWritableFinal:J,waitWritableDestroy:C},X)])};var Vy=(A,Q,{from:B,binary:Y=!1,preserveNewlines:J=!1}={})=>{let C=Y||A8.has(Q),X=L4(A,B),G=az({subprocessStdout:X,subprocess:A,binary:C,shouldEncode:!0,encoding:Q,preserveNewlines:J});return yfQ(G,X,A)},yfQ=async function*(A,Q,B){try{yield*A}finally{if(Q.readable)Q.destroy();await B}};var v0A=(A,{encoding:Q})=>{let B=R0A();A.readable=O0A.bind(void 0,{subprocess:A,concurrentStreams:B,encoding:Q}),A.writable=S0A.bind(void 0,{subprocess:A,concurrentStreams:B}),A.duplex=_0A.bind(void 0,{subprocess:A,concurrentStreams:B,encoding:Q}),A.iterable=Vy.bind(void 0,A,Q),A[Symbol.asyncIterator]=Vy.bind(void 0,A,Q,{})};var y0A=(A,Q)=>{for(let[B,Y]of gfQ){let J=Y.value.bind(Q);Reflect.defineProperty(A,B,{...Y,value:J})}},hfQ=(async()=>{})().constructor.prototype,gfQ=["then","catch","finally"].map((A)=>[A,Reflect.getOwnPropertyDescriptor(hfQ,A)]);var h0A=(A,Q,B,Y)=>{let{file:J,commandArguments:C,command:X,escapedCommand:G,startTime:F,verboseInfo:W,options:Z,fileDescriptors:U}=bfQ(A,Q,B),{subprocess:$,promise:E}=ufQ({file:J,commandArguments:C,options:Z,startTime:F,verboseInfo:W,command:X,escapedCommand:G,fileDescriptors:U});return $.pipe=rz.bind(void 0,{source:$,sourcePromise:E,boundOptions:{},createNested:Y}),y0A($,E),L1.set($,{options:Z,fileDescriptors:U}),$},bfQ=(A,Q,B)=>{let{command:Y,escapedCommand:J,startTime:C,verboseInfo:X}=Yz(A,Q,B),{file:G,commandArguments:F,options:W}=jz(A,Q,B),Z=mfQ(W),U=dBA(Z,X);return{file:G,commandArguments:F,command:Y,escapedCommand:J,startTime:C,verboseInfo:X,options:Z,fileDescriptors:U}},mfQ=({timeout:A,signal:Q,...B})=>{if(Q!==void 0)throw TypeError('The "signal" option has been renamed to "cancelSignal" instead.');return{...B,timeoutDuration:A}},ufQ=({file:A,commandArguments:Q,options:B,startTime:Y,verboseInfo:J,command:C,escapedCommand:X,fileDescriptors:G})=>{let F;try{F=ffQ(A,Q,B)}catch(K){return fBA({error:K,command:C,escapedCommand:X,fileDescriptors:G,options:B,startTime:Y,verboseInfo:J})}let W=new AbortController;xfQ(Number.POSITIVE_INFINITY,W.signal);let Z=[...F.stdio];tBA(F,G,W),Y0A(F,B,W);let U={},$=N1();F.kill=UAA.bind(void 0,{kill:F.kill.bind(F),options:B,onInternalError:$,context:U,controller:W}),F.all=H0A(F,B),v0A(F,B),hBA(F,B);let E=dfQ({subprocess:F,options:B,startTime:Y,verboseInfo:J,fileDescriptors:G,originalStreams:Z,command:C,escapedCommand:X,context:U,onInternalError:$,controller:W});return{subprocess:F,promise:E}},dfQ=async({subprocess:A,options:Q,startTime:B,verboseInfo:Y,fileDescriptors:J,originalStreams:C,command:X,escapedCommand:G,context:F,onInternalError:W,controller:Z})=>{let[U,[$,E],K,I,V]=await z0A({subprocess:A,options:Q,context:F,verboseInfo:Y,fileDescriptors:J,originalStreams:C,onInternalError:W,controller:Z});Z.abort(),W.resolve();let H=K.map((z,M)=>l6(z,Q,M)),D=l6(I,Q,"all"),L=cfQ({errorInfo:U,exitCode:$,signal:E,stdio:H,all:D,ipcOutput:V,context:F,options:Q,command:X,escapedCommand:G,startTime:B});return R4(L,Y,Q)},cfQ=({errorInfo:A,exitCode:Q,signal:B,stdio:Y,all:J,ipcOutput:C,context:X,options:G,command:F,escapedCommand:W,startTime:Z})=>("error"in A)?BI({error:A.error,command:F,escapedCommand:W,timedOut:X.terminationReason==="timeout",isCanceled:X.terminationReason==="cancel"||X.terminationReason==="gracefulCancel",isGracefullyCanceled:X.terminationReason==="gracefulCancel",isMaxBuffer:A.error instanceof d6,isForcefullyTerminated:X.isForcefullyTerminated,exitCode:Q,signal:B,stdio:Y,all:J,ipcOutput:C,options:G,startTime:Z,isSync:!1}):hz({command:F,escapedCommand:W,stdio:Y,all:J,ipcOutput:C,options:G,startTime:Z});var A2=(A,Q)=>{let B=Object.fromEntries(Object.entries(Q).map(([Y,J])=>[Y,lfQ(Y,A[Y],J)]));return{...A,...B}},lfQ=(A,Q,B)=>{if(pfQ.has(A)&&BY(Q)&&BY(B))return{...Q,...B};return B},pfQ=new Set(["env",...s_]);var pG=(A,Q,B,Y)=>{let J=(X,G,F)=>pG(X,G,B,F),C=(...X)=>ifQ({mapArguments:A,deepOptions:B,boundOptions:Q,setBoundExeca:Y,createNested:J},...X);if(Y!==void 0)Y(C,J,Q);return C},ifQ=({mapArguments:A,deepOptions:Q={},boundOptions:B={},setBoundExeca:Y,createNested:J},C,...X)=>{if(BY(C))return J(A,A2(B,C),Y);let{file:G,commandArguments:F,options:W,isSync:Z}=nfQ({mapArguments:A,firstArgument:C,nextArguments:X,deepOptions:Q,boundOptions:B});return Z?TBA(G,F,W):h0A(G,F,W,J)},nfQ=({mapArguments:A,firstArgument:Q,nextArguments:B,deepOptions:Y,boundOptions:J})=>{let C=dt(Q)?ct(Q,B):[Q,...B],[X,G,F]=iM(...C),W=A2(A2(Y,J),F),{file:Z=X,commandArguments:U=G,options:$=W,isSync:E=!1}=A({file:X,commandArguments:G,options:W});return{file:Z,commandArguments:U,options:$,isSync:E}};var g0A=({file:A,commandArguments:Q})=>f0A(A,Q),x0A=({file:A,commandArguments:Q})=>({...f0A(A,Q),isSync:!0}),f0A=(A,Q)=>{if(Q.length>0)throw TypeError(`The command and its arguments must be passed as a single string: ${A} ${Q}.`);let[B,...Y]=sfQ(A);return{file:B,commandArguments:Y}},sfQ=(A)=>{if(typeof A!=="string")throw TypeError(`The command must be a string: ${String(A)}.`);let Q=A.trim();if(Q==="")return[];let B=[];for(let Y of Q.split(rfQ)){let J=B.at(-1);if(J&&J.endsWith("\\"))B[B.length-1]=`${J.slice(0,-1)} ${Y}`;else B.push(Y)}return B},rfQ=/ +/g;var b0A=(A,Q,B)=>{A.sync=Q(afQ,B),A.s=A.sync},m0A=({options:A})=>u0A(A),afQ=({options:A})=>({...u0A(A),isSync:!0}),u0A=(A)=>({options:{...ofQ(A),...A}}),ofQ=({input:A,inputFile:Q,stdio:B})=>A===void 0&&Q===void 0&&B===void 0?{stdin:"inherit"}:{},d0A={preferLocal:!0};var WI=pG(()=>({})),h5Y=pG(()=>({isSync:!0})),g5Y=pG(g0A),x5Y=pG(x0A),f5Y=pG(rAA),b5Y=pG(m0A,{},d0A,b0A),{sendMessage:m5Y,getOneMessage:u5Y,getEachMessage:d5Y,getCancelSignal:c5Y}=gBA();var FYA=qA(AYA(),1);var $I=(A)=>{if(typeof A!=="string")throw TypeError("invalid pattern");if(A.length>65536)throw TypeError("pattern is too long")};var CbQ={"[:alnum:]":["\\p{L}\\p{Nl}\\p{Nd}",!0],"[:alpha:]":["\\p{L}\\p{Nl}",!0],"[:ascii:]":["\\x00-\\x7f",!1],"[:blank:]":["\\p{Zs}\\t",!0],"[:cntrl:]":["\\p{Cc}",!0],"[:digit:]":["\\p{Nd}",!0],"[:graph:]":["\\p{Z}\\p{C}",!0,!0],"[:lower:]":["\\p{Ll}",!0],"[:print:]":["\\p{C}",!0],"[:punct:]":["\\p{P}",!0],"[:space:]":["\\p{Z}\\t\\r\\n\\v\\f",!0],"[:upper:]":["\\p{Lu}",!0],"[:word:]":["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}",!0],"[:xdigit:]":["A-Fa-f0-9",!1]},UI=(A)=>A.replace(/[[\]\\-]/g,"\\$&"),XbQ=(A)=>A.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),QYA=(A)=>A.join(""),BYA=(A,Q)=>{let B=Q;if(A.charAt(B)!=="[")throw Error("not in a brace expression");let Y=[],J=[],C=B+1,X=!1,G=!1,F=!1,W=!1,Z=B,U="";A:while(CU)Y.push(UI(U)+"-"+UI(I));else if(I===U)Y.push(UI(I));U="",C++;continue}if(A.startsWith("-]",C+1)){Y.push(UI(I+"-")),C+=2;continue}if(A.startsWith("-",C+1)){U=I,C+=2;continue}Y.push(UI(I)),C++}if(Z{return Q?A.replace(/\[([^\/\\])\]/g,"$1"):A.replace(/((?!\\).|^)\[([^\/\\])\]/g,"$1$2").replace(/\\([^\/])/g,"$1")};var GbQ=new Set(["!","?","+","*","@"]),YYA=(A)=>GbQ.has(A),FbQ="(?!(?:^|/)\\.\\.?(?:$|/))",Q2="(?!\\.)",WbQ=new Set(["[","."]),ZbQ=new Set(["..","."]),$bQ=new Set("().*{}+?[]^$\\!"),UbQ=(A)=>A.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),Ny="[^/]",JYA=Ny+"*?",CYA=Ny+"+?";class tY{type;#A;#Q;#B=!1;#Y=[];#J;#C;#F;#X=!1;#G;#Z;#U=!1;constructor(A,Q,B={}){if(this.type=A,A)this.#Q=!0;if(this.#J=Q,this.#A=this.#J?this.#J.#A:this,this.#G=this.#A===this?B:this.#A.#G,this.#F=this.#A===this?[]:this.#A.#F,A==="!"&&!this.#A.#X)this.#F.push(this);this.#C=this.#J?this.#J.#Y.length:0}get hasMagic(){if(this.#Q!==void 0)return this.#Q;for(let A of this.#Y){if(typeof A==="string")continue;if(A.type||A.hasMagic)return this.#Q=!0}return this.#Q}toString(){if(this.#Z!==void 0)return this.#Z;if(!this.type)return this.#Z=this.#Y.map((A)=>String(A)).join("");else return this.#Z=this.type+"("+this.#Y.map((A)=>String(A)).join("|")+")"}#W(){if(this!==this.#A)throw Error("should only call on root");if(this.#X)return this;this.toString(),this.#X=!0;let A;while(A=this.#F.pop()){if(A.type!=="!")continue;let Q=A,B=Q.#J;while(B){for(let Y=Q.#C+1;!B.type&&Ytypeof Q==="string"?Q:Q.toJSON()):[this.type,...this.#Y.map((Q)=>Q.toJSON())];if(this.isStart()&&!this.type)A.unshift([]);if(this.isEnd()&&(this===this.#A||this.#A.#X&&this.#J?.type==="!"))A.push({});return A}isStart(){if(this.#A===this)return!0;if(!this.#J?.isStart())return!1;if(this.#C===0)return!0;let A=this.#J;for(let Q=0;Q{let[E,K,I,V]=typeof $==="string"?tY.#I($,this.#Q,G):$.toRegExpSource(A);return this.#Q=this.#Q||I,this.#B=this.#B||V,E}).join(""),W="";if(this.isStart()){if(typeof this.#Y[0]==="string"){if(!(this.#Y.length===1&&ZbQ.has(this.#Y[0]))){let E=WbQ,K=Q&&E.has(F.charAt(0))||F.startsWith("\\.")&&E.has(F.charAt(2))||F.startsWith("\\.\\.")&&E.has(F.charAt(4)),I=!Q&&!A&&E.has(F.charAt(0));W=K?FbQ:I?Q2:""}}}let Z="";if(this.isEnd()&&this.#A.#X&&this.#J?.type==="!")Z="(?:$|\\/)";return[W+F+Z,VC(F),this.#Q=!!this.#Q,this.#B]}let B=this.type==="*"||this.type==="+",Y=this.type==="!"?"(?:(?!(?:":"(?:",J=this.#V(Q);if(this.isStart()&&this.isEnd()&&!J&&this.type!=="!"){let G=this.toString();return this.#Y=[G],this.type=null,this.#Q=void 0,[G,VC(this.toString()),!1,!1]}let C=!B||A||Q||!Q2?"":this.#V(!0);if(C===J)C="";if(C)J=`(?:${J})(?:${C})*?`;let X="";if(this.type==="!"&&this.#U)X=(this.isStart()&&!Q?Q2:"")+CYA;else{let G=this.type==="!"?"))"+(this.isStart()&&!Q&&!A?Q2:"")+JYA+")":this.type==="@"?")":this.type==="?"?")?":this.type==="+"&&C?")":this.type==="*"&&C?")?":`)${this.type}`;X=Y+J+G}return[X,VC(J),this.#Q=!!this.#Q,this.#B]}#V(A){return this.#Y.map((Q)=>{if(typeof Q==="string")throw Error("string type in extglob ast??");let[B,Y,J,C]=Q.toRegExpSource(A);return this.#B=this.#B||C,B}).filter((Q)=>!(this.isStart()&&this.isEnd())||!!Q).join("|")}static#I(A,Q,B=!1){let Y=!1,J="",C=!1;for(let X=0;X{return Q?A.replace(/[?*()[\]]/g,"[$&]"):A.replace(/[?*()[\]\\]/g,"\\$&")};var mJ=(A,Q,B={})=>{if($I(Q),!B.nocomment&&Q.charAt(0)==="#")return!1;return new r8(Q,B).match(A)},EbQ=/^\*+([^+@!?\*\[\(]*)$/,KbQ=(A)=>(Q)=>!Q.startsWith(".")&&Q.endsWith(A),VbQ=(A)=>(Q)=>Q.endsWith(A),IbQ=(A)=>{return A=A.toLowerCase(),(Q)=>!Q.startsWith(".")&&Q.toLowerCase().endsWith(A)},HbQ=(A)=>{return A=A.toLowerCase(),(Q)=>Q.toLowerCase().endsWith(A)},DbQ=/^\*+\.\*+$/,NbQ=(A)=>!A.startsWith(".")&&A.includes("."),LbQ=(A)=>A!=="."&&A!==".."&&A.includes("."),qbQ=/^\.\*+$/,MbQ=(A)=>A!=="."&&A!==".."&&A.startsWith("."),zbQ=/^\*+$/,RbQ=(A)=>A.length!==0&&!A.startsWith("."),wbQ=(A)=>A.length!==0&&A!=="."&&A!=="..",jbQ=/^\?+([^+@!?\*\[\(]*)?$/,ObQ=([A,Q=""])=>{let B=WYA([A]);if(!Q)return B;return Q=Q.toLowerCase(),(Y)=>B(Y)&&Y.toLowerCase().endsWith(Q)},PbQ=([A,Q=""])=>{let B=ZYA([A]);if(!Q)return B;return Q=Q.toLowerCase(),(Y)=>B(Y)&&Y.toLowerCase().endsWith(Q)},TbQ=([A,Q=""])=>{let B=ZYA([A]);return!Q?B:(Y)=>B(Y)&&Y.endsWith(Q)},SbQ=([A,Q=""])=>{let B=WYA([A]);return!Q?B:(Y)=>B(Y)&&Y.endsWith(Q)},WYA=([A])=>{let Q=A.length;return(B)=>B.length===Q&&!B.startsWith(".")},ZYA=([A])=>{let Q=A.length;return(B)=>B.length===Q&&B!=="."&&B!==".."},$YA=typeof process==="object"&&process?typeof process.env==="object"&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:"posix",XYA={win32:{sep:"\\"},posix:{sep:"/"}},kbQ=$YA==="win32"?XYA.win32.sep:XYA.posix.sep;mJ.sep=kbQ;var eY=Symbol("globstar **");mJ.GLOBSTAR=eY;var _bQ="[^/]",vbQ=_bQ+"*?",ybQ="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",hbQ="(?:(?!(?:\\/|^)\\.).)*?",gbQ=(A,Q={})=>(B)=>mJ(B,A,Q);mJ.filter=gbQ;var s8=(A,Q={})=>Object.assign({},A,Q),xbQ=(A)=>{if(!A||typeof A!=="object"||!Object.keys(A).length)return mJ;let Q=mJ;return Object.assign((Y,J,C={})=>Q(Y,J,s8(A,C)),{Minimatch:class extends Q.Minimatch{constructor(J,C={}){super(J,s8(A,C))}static defaults(J){return Q.defaults(s8(A,J)).Minimatch}},AST:class extends Q.AST{constructor(J,C,X={}){super(J,C,s8(A,X))}static fromGlob(J,C={}){return Q.AST.fromGlob(J,s8(A,C))}},unescape:(Y,J={})=>Q.unescape(Y,s8(A,J)),escape:(Y,J={})=>Q.escape(Y,s8(A,J)),filter:(Y,J={})=>Q.filter(Y,s8(A,J)),defaults:(Y)=>Q.defaults(s8(A,Y)),makeRe:(Y,J={})=>Q.makeRe(Y,s8(A,J)),braceExpand:(Y,J={})=>Q.braceExpand(Y,s8(A,J)),match:(Y,J,C={})=>Q.match(Y,J,s8(A,C)),sep:Q.sep,GLOBSTAR:eY})};mJ.defaults=xbQ;var UYA=(A,Q={})=>{if($I(A),Q.nobrace||!/\{(?:(?!\{).)*\}/.test(A))return[A];return FYA.default(A)};mJ.braceExpand=UYA;var fbQ=(A,Q={})=>new r8(A,Q).makeRe();mJ.makeRe=fbQ;var bbQ=(A,Q,B={})=>{let Y=new r8(Q,B);if(A=A.filter((J)=>Y.match(J)),Y.options.nonull&&!A.length)A.push(Q);return A};mJ.match=bbQ;var GYA=/[?*]|[+@!]\(.*?\)|\[|\]/,mbQ=(A)=>A.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&");class r8{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;regexp;constructor(A,Q={}){if($I(A),Q=Q||{},this.options=Q,this.pattern=A,this.platform=Q.platform||$YA,this.isWindows=this.platform==="win32",this.windowsPathsNoEscape=!!Q.windowsPathsNoEscape||Q.allowWindowsEscape===!1,this.windowsPathsNoEscape)this.pattern=this.pattern.replace(/\\/g,"/");this.preserveMultipleSlashes=!!Q.preserveMultipleSlashes,this.regexp=null,this.negate=!1,this.nonegate=!!Q.nonegate,this.comment=!1,this.empty=!1,this.partial=!!Q.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=Q.windowsNoMagicRoot!==void 0?Q.windowsNoMagicRoot:!!(this.isWindows&&this.nocase),this.globSet=[],this.globParts=[],this.set=[],this.make()}hasMagic(){if(this.options.magicalBraces&&this.set.length>1)return!0;for(let A of this.set)for(let Q of A)if(typeof Q!=="string")return!0;return!1}debug(...A){}make(){let A=this.pattern,Q=this.options;if(!Q.nocomment&&A.charAt(0)==="#"){this.comment=!0;return}if(!A){this.empty=!0;return}if(this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],Q.debug)this.debug=(...J)=>console.error(...J);this.debug(this.pattern,this.globSet);let B=this.globSet.map((J)=>this.slashSplit(J));this.globParts=this.preprocess(B),this.debug(this.pattern,this.globParts);let Y=this.globParts.map((J,C,X)=>{if(this.isWindows&&this.windowsNoMagicRoot){let G=J[0]===""&&J[1]===""&&(J[2]==="?"||!GYA.test(J[2]))&&!GYA.test(J[3]),F=/^[a-z]:/i.test(J[0]);if(G)return[...J.slice(0,4),...J.slice(4).map((W)=>this.parse(W))];else if(F)return[J[0],...J.slice(1).map((W)=>this.parse(W))]}return J.map((G)=>this.parse(G))});if(this.debug(this.pattern,Y),this.set=Y.filter((J)=>J.indexOf(!1)===-1),this.isWindows)for(let J=0;J=2)A=this.firstPhasePreProcess(A),A=this.secondPhasePreProcess(A);else if(Q>=1)A=this.levelOneOptimize(A);else A=this.adjascentGlobstarOptimize(A);return A}adjascentGlobstarOptimize(A){return A.map((Q)=>{let B=-1;while((B=Q.indexOf("**",B+1))!==-1){let Y=B;while(Q[Y+1]==="**")Y++;if(Y!==B)Q.splice(B,Y-B)}return Q})}levelOneOptimize(A){return A.map((Q)=>{return Q=Q.reduce((B,Y)=>{let J=B[B.length-1];if(Y==="**"&&J==="**")return B;if(Y===".."){if(J&&J!==".."&&J!=="."&&J!=="**")return B.pop(),B}return B.push(Y),B},[]),Q.length===0?[""]:Q})}levelTwoFileOptimize(A){if(!Array.isArray(A))A=this.slashSplit(A);let Q=!1;do{if(Q=!1,!this.preserveMultipleSlashes){for(let Y=1;YY)B.splice(Y+1,C-Y);let X=B[Y+1],G=B[Y+2],F=B[Y+3];if(X!=="..")continue;if(!G||G==="."||G===".."||!F||F==="."||F==="..")continue;Q=!0,B.splice(Y,1);let W=B.slice(0);W[Y]="**",A.push(W),Y--}if(!this.preserveMultipleSlashes){for(let C=1;CQ.length)}partsMatch(A,Q,B=!1){let Y=0,J=0,C=[],X="";while(YD)Q=Q.slice(L);else if(D>L)A=A.slice(D)}}}let{optimizationLevel:J=1}=this.options;if(J>=2)A=this.levelTwoFileOptimize(A);this.debug("matchOne",this,{file:A,pattern:Q}),this.debug("matchOne",A.length,Q.length);for(var C=0,X=0,G=A.length,F=Q.length;C>> no match, partial?`,A,U,Q,$),U===G)return!0}return!1}let K;if(typeof W==="string")K=Z===W,this.debug("string match",W,Z,K);else K=W.test(Z),this.debug("pattern match",W,Z,K);if(!K)return!1}if(C===G&&X===F)return!0;else if(C===G)return B;else if(X===F)return C===G-1&&A[C]==="";else throw Error("wtf?")}braceExpand(){return N0A(this.pattern,this.options)}parse(A){pV(A);let Q=this.options;if(A==="**")return oY;if(A==="")return"";let B,Y=null;if(B=A.match(BbQ))Y=Q.dot?JbQ:YbQ;else if(B=A.match(ifQ))Y=(Q.nocase?Q.dot?afQ:rfQ:Q.dot?sfQ:nfQ)(B[1]);else if(B=A.match(CbQ))Y=(Q.nocase?Q.dot?GbQ:XbQ:Q.dot?FbQ:WbQ)(B);else if(B=A.match(ofQ))Y=Q.dot?efQ:tfQ;else if(B=A.match(AbQ))Y=QbQ;let J=aY.fromGlob(A,this.options).toMMPattern();if(Y&&typeof J==="object")Reflect.defineProperty(J,"test",{value:Y});return J}makeRe(){if(this.regexp||this.regexp===!1)return this.regexp;let A=this.set;if(!A.length)return this.regexp=!1,this.regexp;let Q=this.options,B=Q.noglobstar?UbQ:Q.dot?EbQ:KbQ,Y=new Set(Q.nocase?["i"]:[]),J=A.map((G)=>{let F=G.map((W)=>{if(W instanceof RegExp)for(let Z of W.flags.split(""))Y.add(Z);return typeof W==="string"?NbQ(W):W===oY?oY:W._src});return F.forEach((W,Z)=>{let U=F[Z+1],$=F[Z-1];if(W!==oY||$===oY)return;if($===void 0)if(U!==void 0&&U!==oY)F[Z+1]="(?:\\/|"+B+"\\/)?"+U;else F[Z]=B;else if(U===void 0)F[Z-1]=$+"(?:\\/|"+B+")?";else if(U!==oY)F[Z-1]=$+"(?:\\/|\\/"+B+"\\/)"+U,F[Z+1]=oY}),F.filter((W)=>W!==oY).join("/")}).join("|"),[C,X]=A.length>1?["(?:",")"]:["",""];if(J="^"+C+J+X+"$",this.negate)J="^(?!"+J+").+$";try{this.regexp=new RegExp(J,[...Y].join(""))}catch(G){this.regexp=!1}return this.regexp}slashSplit(A){if(this.preserveMultipleSlashes)return A.split("/");else if(this.isWindows&&/^\/\/[^\/]+/.test(A))return["",...A.split(/\/+/)];else return A.split(/\/+/)}match(A,Q=this.partial){if(this.debug("match",A,this.pattern),this.comment)return!1;if(this.empty)return A==="";if(A==="/"&&Q)return!0;let B=this.options;if(this.isWindows)A=A.split("\\").join("/");let Y=this.slashSplit(A);this.debug(this.pattern,"split",Y);let J=this.set;this.debug(this.pattern,"set",J);let C=Y[Y.length-1];if(!C)for(let X=Y.length-2;!C&&X>=0;X--)C=Y[X];for(let X=0;X{typeof Uv.emitWarning==="function"?Uv.emitWarning(A,Q,B,Y):console.error(`[${B}] ${Q}: ${A}`)},Iz=globalThis.AbortController,L0A=globalThis.AbortSignal;if(typeof Iz>"u"){L0A=class{onabort;_onabort=[];reason;aborted=!1;addEventListener(Y,J){this._onabort.push(J)}},Iz=class{constructor(){Q()}signal=new L0A;abort(Y){if(this.signal.aborted)return;this.signal.reason=Y,this.signal.aborted=!0;for(let J of this.signal._onabort)J(Y);this.signal.onabort?.(Y)}};let A=Uv.env?.LRU_CACHE_IGNORE_AC_WARNING!=="1",Q=()=>{if(!A)return;A=!1,M0A("AbortController is not defined. If using lru-cache in node 14, load an AbortController polyfill from the `node-abort-controller` package. A minimal polyfill is provided for use by LRUCache.fetch(), but it should not be relied upon in other contexts (eg, passing it to other APIs that use AbortController/AbortSignal might have undesirable effects). You may disable this with LRU_CACHE_IGNORE_AC_WARNING=1 in the env.","NO_ABORT_CONTROLLER","ENOTSUP",Q)}}var LbQ=(A)=>!q0A.has(A),ACY=Symbol("type"),d6=(A)=>A&&A===Math.floor(A)&&A>0&&isFinite(A),z0A=(A)=>!d6(A)?null:A<=Math.pow(2,8)?Uint8Array:A<=Math.pow(2,16)?Uint16Array:A<=Math.pow(2,32)?Uint32Array:A<=Number.MAX_SAFE_INTEGER?nV:null;class nV extends Array{constructor(A){super(A);this.fill(0)}}class w4{heap;length;static#A=!1;static create(A){let Q=z0A(A);if(!Q)return[];w4.#A=!0;let B=new w4(A,Q);return w4.#A=!1,B}constructor(A,Q){if(!w4.#A)throw TypeError("instantiate Stack using Stack.create(n)");this.heap=new Q(A),this.length=0}push(A){this.heap[this.length++]=A}pop(){return this.heap[--this.length]}}class sV{#A;#Q;#B;#Y;#J;#C;#F;ttl;ttlResolution;ttlAutopurge;updateAgeOnGet;updateAgeOnHas;allowStale;noDisposeOnSet;noUpdateTTL;maxEntrySize;sizeCalculation;noDeleteOnFetchRejection;noDeleteOnStaleGet;allowStaleOnFetchAbort;allowStaleOnFetchRejection;ignoreFetchAbort;#X;#G;#Z;#U;#W;#E;#V;#I;#D;#O;#N;#P;#M;#q;#L;#w;#H;#S;static unsafeExposeInternals(A){return{starts:A.#M,ttls:A.#q,sizes:A.#P,keyMap:A.#Z,keyList:A.#U,valList:A.#W,next:A.#E,prev:A.#V,get head(){return A.#I},get tail(){return A.#D},free:A.#O,isBackgroundFetch:(Q)=>A.#K(Q),backgroundFetch:(Q,B,Y,J)=>A.#g(Q,B,Y,J),moveToTail:(Q)=>A.#f(Q),indexes:(Q)=>A.#j(Q),rindexes:(Q)=>A.#T(Q),isStale:(Q)=>A.#R(Q)}}get max(){return this.#A}get maxSize(){return this.#Q}get calculatedSize(){return this.#G}get size(){return this.#X}get fetchMethod(){return this.#C}get memoMethod(){return this.#F}get dispose(){return this.#B}get onInsert(){return this.#Y}get disposeAfter(){return this.#J}constructor(A){let{max:Q=0,ttl:B,ttlResolution:Y=1,ttlAutopurge:J,updateAgeOnGet:C,updateAgeOnHas:X,allowStale:G,dispose:F,onInsert:W,disposeAfter:Z,noDisposeOnSet:U,noUpdateTTL:$,maxSize:E=0,maxEntrySize:K=0,sizeCalculation:I,fetchMethod:V,memoMethod:H,noDeleteOnFetchRejection:D,noDeleteOnStaleGet:L,allowStaleOnFetchRejection:z,allowStaleOnFetchAbort:M,ignoreFetchAbort:N}=A;if(Q!==0&&!d6(Q))throw TypeError("max option must be a nonnegative integer");let q=Q?z0A(Q):Array;if(!q)throw Error("invalid max value: "+Q);if(this.#A=Q,this.#Q=E,this.maxEntrySize=K||this.#Q,this.sizeCalculation=I,this.sizeCalculation){if(!this.#Q&&!this.maxEntrySize)throw TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");if(typeof this.sizeCalculation!=="function")throw TypeError("sizeCalculation set to non-function")}if(H!==void 0&&typeof H!=="function")throw TypeError("memoMethod must be a function if defined");if(this.#F=H,V!==void 0&&typeof V!=="function")throw TypeError("fetchMethod must be a function if specified");if(this.#C=V,this.#w=!!V,this.#Z=new Map,this.#U=Array(Q).fill(void 0),this.#W=Array(Q).fill(void 0),this.#E=new q(Q),this.#V=new q(Q),this.#I=0,this.#D=0,this.#O=w4.create(Q),this.#X=0,this.#G=0,typeof F==="function")this.#B=F;if(typeof W==="function")this.#Y=W;if(typeof Z==="function")this.#J=Z,this.#N=[];else this.#J=void 0,this.#N=void 0;if(this.#L=!!this.#B,this.#S=!!this.#Y,this.#H=!!this.#J,this.noDisposeOnSet=!!U,this.noUpdateTTL=!!$,this.noDeleteOnFetchRejection=!!D,this.allowStaleOnFetchRejection=!!z,this.allowStaleOnFetchAbort=!!M,this.ignoreFetchAbort=!!N,this.maxEntrySize!==0){if(this.#Q!==0){if(!d6(this.#Q))throw TypeError("maxSize must be a positive integer if specified")}if(!d6(this.maxEntrySize))throw TypeError("maxEntrySize must be a positive integer if specified");this.#m()}if(this.allowStale=!!G,this.noDeleteOnStaleGet=!!L,this.updateAgeOnGet=!!C,this.updateAgeOnHas=!!X,this.ttlResolution=d6(Y)||Y===0?Y:1,this.ttlAutopurge=!!J,this.ttl=B||0,this.ttl){if(!d6(this.ttl))throw TypeError("ttl must be a positive integer if specified");this.#$()}if(this.#A===0&&this.ttl===0&&this.#Q===0)throw TypeError("At least one of max, maxSize, or ttl is required");if(!this.ttlAutopurge&&!this.#A&&!this.#Q){if(LbQ("LRU_CACHE_UNBOUNDED"))q0A.add("LRU_CACHE_UNBOUNDED"),M0A("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning","LRU_CACHE_UNBOUNDED",sV)}}getRemainingTTL(A){return this.#Z.has(A)?1/0:0}#$(){let A=new nV(this.#A),Q=new nV(this.#A);this.#q=A,this.#M=Q,this.#k=(J,C,X=R4.now())=>{if(Q[J]=C!==0?X:0,A[J]=C,C!==0&&this.ttlAutopurge){let G=setTimeout(()=>{if(this.#R(J))this.#_(this.#U[J],"expire")},C+1);if(G.unref)G.unref()}},this.#v=(J)=>{Q[J]=A[J]!==0?R4.now():0},this.#z=(J,C)=>{if(A[C]){let X=A[C],G=Q[C];if(!X||!G)return;J.ttl=X,J.start=G,J.now=B||Y();let F=J.now-G;J.remainingTTL=X-F}};let B=0,Y=()=>{let J=R4.now();if(this.ttlResolution>0){B=J;let C=setTimeout(()=>B=0,this.ttlResolution);if(C.unref)C.unref()}return J};this.getRemainingTTL=(J)=>{let C=this.#Z.get(J);if(C===void 0)return 0;let X=A[C],G=Q[C];if(!X||!G)return 1/0;let F=(B||Y())-G;return X-F},this.#R=(J)=>{let C=Q[J],X=A[J];return!!X&&!!C&&(B||Y())-C>X}}#v=()=>{};#z=()=>{};#k=()=>{};#R=()=>!1;#m(){let A=new nV(this.#A);this.#G=0,this.#P=A,this.#y=(Q)=>{this.#G-=A[Q],A[Q]=0},this.#u=(Q,B,Y,J)=>{if(this.#K(B))return 0;if(!d6(Y))if(J){if(typeof J!=="function")throw TypeError("sizeCalculation must be a function");if(Y=J(B,Q),!d6(Y))throw TypeError("sizeCalculation return invalid (expect positive integer)")}else throw TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");return Y},this.#h=(Q,B,Y)=>{if(A[Q]=B,this.#Q){let J=this.#Q-A[Q];while(this.#G>J)this.#x(!0)}if(this.#G+=A[Q],Y)Y.entrySize=B,Y.totalCalculatedSize=this.#G}}#y=(A)=>{};#h=(A,Q,B)=>{};#u=(A,Q,B,Y)=>{if(B||Y)throw TypeError("cannot set size without setting maxSize or maxEntrySize on cache");return 0};*#j({allowStale:A=this.allowStale}={}){if(this.#X)for(let Q=this.#D;;){if(!this.#d(Q))break;if(A||!this.#R(Q))yield Q;if(Q===this.#I)break;else Q=this.#V[Q]}}*#T({allowStale:A=this.allowStale}={}){if(this.#X)for(let Q=this.#I;;){if(!this.#d(Q))break;if(A||!this.#R(Q))yield Q;if(Q===this.#D)break;else Q=this.#E[Q]}}#d(A){return A!==void 0&&this.#Z.get(this.#U[A])===A}*entries(){for(let A of this.#j())if(this.#W[A]!==void 0&&this.#U[A]!==void 0&&!this.#K(this.#W[A]))yield[this.#U[A],this.#W[A]]}*rentries(){for(let A of this.#T())if(this.#W[A]!==void 0&&this.#U[A]!==void 0&&!this.#K(this.#W[A]))yield[this.#U[A],this.#W[A]]}*keys(){for(let A of this.#j()){let Q=this.#U[A];if(Q!==void 0&&!this.#K(this.#W[A]))yield Q}}*rkeys(){for(let A of this.#T()){let Q=this.#U[A];if(Q!==void 0&&!this.#K(this.#W[A]))yield Q}}*values(){for(let A of this.#j())if(this.#W[A]!==void 0&&!this.#K(this.#W[A]))yield this.#W[A]}*rvalues(){for(let A of this.#T())if(this.#W[A]!==void 0&&!this.#K(this.#W[A]))yield this.#W[A]}[Symbol.iterator](){return this.entries()}[Symbol.toStringTag]="LRUCache";find(A,Q={}){for(let B of this.#j()){let Y=this.#W[B],J=this.#K(Y)?Y.__staleWhileFetching:Y;if(J===void 0)continue;if(A(J,this.#U[B],this))return this.get(this.#U[B],Q)}}forEach(A,Q=this){for(let B of this.#j()){let Y=this.#W[B],J=this.#K(Y)?Y.__staleWhileFetching:Y;if(J===void 0)continue;A.call(Q,J,this.#U[B],this)}}rforEach(A,Q=this){for(let B of this.#T()){let Y=this.#W[B],J=this.#K(Y)?Y.__staleWhileFetching:Y;if(J===void 0)continue;A.call(Q,J,this.#U[B],this)}}purgeStale(){let A=!1;for(let Q of this.#T({allowStale:!0}))if(this.#R(Q))this.#_(this.#U[Q],"expire"),A=!0;return A}info(A){let Q=this.#Z.get(A);if(Q===void 0)return;let B=this.#W[Q],Y=this.#K(B)?B.__staleWhileFetching:B;if(Y===void 0)return;let J={value:Y};if(this.#q&&this.#M){let C=this.#q[Q],X=this.#M[Q];if(C&&X){let G=C-(R4.now()-X);J.ttl=G,J.start=Date.now()}}if(this.#P)J.size=this.#P[Q];return J}dump(){let A=[];for(let Q of this.#j({allowStale:!0})){let B=this.#U[Q],Y=this.#W[Q],J=this.#K(Y)?Y.__staleWhileFetching:Y;if(J===void 0||B===void 0)continue;let C={value:J};if(this.#q&&this.#M){C.ttl=this.#q[Q];let X=R4.now()-this.#M[Q];C.start=Math.floor(Date.now()-X)}if(this.#P)C.size=this.#P[Q];A.unshift([B,C])}return A}load(A){this.clear();for(let[Q,B]of A){if(B.start){let Y=Date.now()-B.start;B.start=R4.now()-Y}this.set(Q,B.value,B)}}set(A,Q,B={}){if(Q===void 0)return this.delete(A),this;let{ttl:Y=this.ttl,start:J,noDisposeOnSet:C=this.noDisposeOnSet,sizeCalculation:X=this.sizeCalculation,status:G}=B,{noUpdateTTL:F=this.noUpdateTTL}=B,W=this.#u(A,Q,B.size||0,X);if(this.maxEntrySize&&W>this.maxEntrySize){if(G)G.set="miss",G.maxEntrySizeExceeded=!0;return this.#_(A,"set"),this}let Z=this.#X===0?void 0:this.#Z.get(A);if(Z===void 0){if(Z=this.#X===0?this.#D:this.#O.length!==0?this.#O.pop():this.#X===this.#A?this.#x(!1):this.#X,this.#U[Z]=A,this.#W[Z]=Q,this.#Z.set(A,Z),this.#E[this.#D]=Z,this.#V[Z]=this.#D,this.#D=Z,this.#X++,this.#h(Z,W,G),G)G.set="add";if(F=!1,this.#S)this.#Y?.(Q,A,"add")}else{this.#f(Z);let U=this.#W[Z];if(Q!==U){if(this.#w&&this.#K(U)){U.__abortController.abort(Error("replaced"));let{__staleWhileFetching:$}=U;if($!==void 0&&!C){if(this.#L)this.#B?.($,A,"set");if(this.#H)this.#N?.push([$,A,"set"])}}else if(!C){if(this.#L)this.#B?.(U,A,"set");if(this.#H)this.#N?.push([U,A,"set"])}if(this.#y(Z),this.#h(Z,W,G),this.#W[Z]=Q,G){G.set="replace";let $=U&&this.#K(U)?U.__staleWhileFetching:U;if($!==void 0)G.oldValue=$}}else if(G)G.set="update";if(this.#S)this.onInsert?.(Q,A,Q===U?"update":"replace")}if(Y!==0&&!this.#q)this.#$();if(this.#q){if(!F)this.#k(Z,Y,J);if(G)this.#z(G,Z)}if(!C&&this.#H&&this.#N){let U=this.#N,$;while($=U?.shift())this.#J?.(...$)}return this}pop(){try{while(this.#X){let A=this.#W[this.#I];if(this.#x(!0),this.#K(A)){if(A.__staleWhileFetching)return A.__staleWhileFetching}else if(A!==void 0)return A}}finally{if(this.#H&&this.#N){let A=this.#N,Q;while(Q=A?.shift())this.#J?.(...Q)}}}#x(A){let Q=this.#I,B=this.#U[Q],Y=this.#W[Q];if(this.#w&&this.#K(Y))Y.__abortController.abort(Error("evicted"));else if(this.#L||this.#H){if(this.#L)this.#B?.(Y,B,"evict");if(this.#H)this.#N?.push([Y,B,"evict"])}if(this.#y(Q),A)this.#U[Q]=void 0,this.#W[Q]=void 0,this.#O.push(Q);if(this.#X===1)this.#I=this.#D=0,this.#O.length=0;else this.#I=this.#E[Q];return this.#Z.delete(B),this.#X--,Q}has(A,Q={}){let{updateAgeOnHas:B=this.updateAgeOnHas,status:Y}=Q,J=this.#Z.get(A);if(J!==void 0){let C=this.#W[J];if(this.#K(C)&&C.__staleWhileFetching===void 0)return!1;if(!this.#R(J)){if(B)this.#v(J);if(Y)Y.has="hit",this.#z(Y,J);return!0}else if(Y)Y.has="stale",this.#z(Y,J)}else if(Y)Y.has="miss";return!1}peek(A,Q={}){let{allowStale:B=this.allowStale}=Q,Y=this.#Z.get(A);if(Y===void 0||!B&&this.#R(Y))return;let J=this.#W[Y];return this.#K(J)?J.__staleWhileFetching:J}#g(A,Q,B,Y){let J=Q===void 0?void 0:this.#W[Q];if(this.#K(J))return J;let C=new Iz,{signal:X}=B;X?.addEventListener("abort",()=>C.abort(X.reason),{signal:C.signal});let G={signal:C.signal,options:B,context:Y},F=(K,I=!1)=>{let{aborted:V}=C.signal,H=B.ignoreFetchAbort&&K!==void 0;if(B.status)if(V&&!I){if(B.status.fetchAborted=!0,B.status.fetchError=C.signal.reason,H)B.status.fetchAbortIgnored=!0}else B.status.fetchResolved=!0;if(V&&!H&&!I)return Z(C.signal.reason);let D=$;if(this.#W[Q]===$)if(K===void 0)if(D.__staleWhileFetching)this.#W[Q]=D.__staleWhileFetching;else this.#_(A,"fetch");else{if(B.status)B.status.fetchUpdated=!0;this.set(A,K,G.options)}return K},W=(K)=>{if(B.status)B.status.fetchRejected=!0,B.status.fetchError=K;return Z(K)},Z=(K)=>{let{aborted:I}=C.signal,V=I&&B.allowStaleOnFetchAbort,H=V||B.allowStaleOnFetchRejection,D=H||B.noDeleteOnFetchRejection,L=$;if(this.#W[Q]===$){if(!D||L.__staleWhileFetching===void 0)this.#_(A,"fetch");else if(!V)this.#W[Q]=L.__staleWhileFetching}if(H){if(B.status&&L.__staleWhileFetching!==void 0)B.status.returnedStale=!0;return L.__staleWhileFetching}else if(L.__returned===L)throw K},U=(K,I)=>{let V=this.#C?.(A,J,G);if(V&&V instanceof Promise)V.then((H)=>K(H===void 0?void 0:H),I);C.signal.addEventListener("abort",()=>{if(!B.ignoreFetchAbort||B.allowStaleOnFetchAbort){if(K(void 0),B.allowStaleOnFetchAbort)K=(H)=>F(H,!0)}})};if(B.status)B.status.fetchDispatched=!0;let $=new Promise(U).then(F,W),E=Object.assign($,{__abortController:C,__staleWhileFetching:J,__returned:void 0});if(Q===void 0)this.set(A,E,{...G.options,status:void 0}),Q=this.#Z.get(A);else this.#W[Q]=E;return E}#K(A){if(!this.#w)return!1;let Q=A;return!!Q&&Q instanceof Promise&&Q.hasOwnProperty("__staleWhileFetching")&&Q.__abortController instanceof Iz}async fetch(A,Q={}){let{allowStale:B=this.allowStale,updateAgeOnGet:Y=this.updateAgeOnGet,noDeleteOnStaleGet:J=this.noDeleteOnStaleGet,ttl:C=this.ttl,noDisposeOnSet:X=this.noDisposeOnSet,size:G=0,sizeCalculation:F=this.sizeCalculation,noUpdateTTL:W=this.noUpdateTTL,noDeleteOnFetchRejection:Z=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:U=this.allowStaleOnFetchRejection,ignoreFetchAbort:$=this.ignoreFetchAbort,allowStaleOnFetchAbort:E=this.allowStaleOnFetchAbort,context:K,forceRefresh:I=!1,status:V,signal:H}=Q;if(!this.#w){if(V)V.fetch="get";return this.get(A,{allowStale:B,updateAgeOnGet:Y,noDeleteOnStaleGet:J,status:V})}let D={allowStale:B,updateAgeOnGet:Y,noDeleteOnStaleGet:J,ttl:C,noDisposeOnSet:X,size:G,sizeCalculation:F,noUpdateTTL:W,noDeleteOnFetchRejection:Z,allowStaleOnFetchRejection:U,allowStaleOnFetchAbort:E,ignoreFetchAbort:$,status:V,signal:H},L=this.#Z.get(A);if(L===void 0){if(V)V.fetch="miss";let z=this.#g(A,L,D,K);return z.__returned=z}else{let z=this.#W[L];if(this.#K(z)){let P=B&&z.__staleWhileFetching!==void 0;if(V){if(V.fetch="inflight",P)V.returnedStale=!0}return P?z.__staleWhileFetching:z.__returned=z}let M=this.#R(L);if(!I&&!M){if(V)V.fetch="hit";if(this.#f(L),Y)this.#v(L);if(V)this.#z(V,L);return z}let N=this.#g(A,L,D,K),w=N.__staleWhileFetching!==void 0&&B;if(V){if(V.fetch=M?"stale":"refresh",w&&M)V.returnedStale=!0}return w?N.__staleWhileFetching:N.__returned=N}}async forceFetch(A,Q={}){let B=await this.fetch(A,Q);if(B===void 0)throw Error("fetch() returned undefined");return B}memo(A,Q={}){let B=this.#F;if(!B)throw Error("no memoMethod provided to constructor");let{context:Y,forceRefresh:J,...C}=Q,X=this.get(A,C);if(!J&&X!==void 0)return X;let G=B(A,X,{options:C,context:Y});return this.set(A,G,C),G}get(A,Q={}){let{allowStale:B=this.allowStale,updateAgeOnGet:Y=this.updateAgeOnGet,noDeleteOnStaleGet:J=this.noDeleteOnStaleGet,status:C}=Q,X=this.#Z.get(A);if(X!==void 0){let G=this.#W[X],F=this.#K(G);if(C)this.#z(C,X);if(this.#R(X)){if(C)C.get="stale";if(!F){if(!J)this.#_(A,"expire");if(C&&B)C.returnedStale=!0;return B?G:void 0}else{if(C&&B&&G.__staleWhileFetching!==void 0)C.returnedStale=!0;return B?G.__staleWhileFetching:void 0}}else{if(C)C.get="hit";if(F)return G.__staleWhileFetching;if(this.#f(X),Y)this.#v(X);return G}}else if(C)C.get="miss"}#c(A,Q){this.#V[Q]=A,this.#E[A]=Q}#f(A){if(A!==this.#D){if(A===this.#I)this.#I=this.#E[A];else this.#c(this.#V[A],this.#E[A]);this.#c(this.#D,A),this.#D=A}}delete(A){return this.#_(A,"delete")}#_(A,Q){let B=!1;if(this.#X!==0){let Y=this.#Z.get(A);if(Y!==void 0)if(B=!0,this.#X===1)this.#b(Q);else{this.#y(Y);let J=this.#W[Y];if(this.#K(J))J.__abortController.abort(Error("deleted"));else if(this.#L||this.#H){if(this.#L)this.#B?.(J,A,Q);if(this.#H)this.#N?.push([J,A,Q])}if(this.#Z.delete(A),this.#U[Y]=void 0,this.#W[Y]=void 0,Y===this.#D)this.#D=this.#V[Y];else if(Y===this.#I)this.#I=this.#E[Y];else{let C=this.#V[Y];this.#E[C]=this.#E[Y];let X=this.#E[Y];this.#V[X]=this.#V[Y]}this.#X--,this.#O.push(Y)}}if(this.#H&&this.#N?.length){let Y=this.#N,J;while(J=Y?.shift())this.#J?.(...J)}return B}clear(){return this.#b("delete")}#b(A){for(let Q of this.#T({allowStale:!0})){let B=this.#W[Q];if(this.#K(B))B.__abortController.abort(Error("deleted"));else{let Y=this.#U[Q];if(this.#L)this.#B?.(B,Y,A);if(this.#H)this.#N?.push([B,Y,A])}}if(this.#Z.clear(),this.#W.fill(void 0),this.#U.fill(void 0),this.#q&&this.#M)this.#q.fill(0),this.#M.fill(0);if(this.#P)this.#P.fill(0);if(this.#I=0,this.#D=0,this.#O.length=0,this.#G=0,this.#X=0,this.#H&&this.#N){let Q=this.#N,B;while(B=Q?.shift())this.#J?.(...B)}}}import{posix as kbQ,win32 as Mv}from"node:path";import{fileURLToPath as _bQ}from"node:url";import{lstatSync as vbQ,readdir as ybQ,readdirSync as gbQ,readlinkSync as hbQ,realpathSync as xbQ}from"fs";import*as fbQ from"node:fs";import{lstat as mbQ,readdir as ubQ,readlink as dbQ,realpath as cbQ}from"node:fs/promises";import{EventEmitter as Dv}from"node:events";import P0A from"node:stream";import{StringDecoder as qbQ}from"node:string_decoder";var R0A=typeof process==="object"&&process?process:{stdout:null,stderr:null},MbQ=(A)=>!!A&&typeof A==="object"&&(A instanceof zW||A instanceof P0A||zbQ(A)||RbQ(A)),zbQ=(A)=>!!A&&typeof A==="object"&&A instanceof Dv&&typeof A.pipe==="function"&&A.pipe!==P0A.Writable.prototype.pipe,RbQ=(A)=>!!A&&typeof A==="object"&&A instanceof Dv&&typeof A.write==="function"&&typeof A.end==="function",mX=Symbol("EOF"),uX=Symbol("maybeEmitEnd"),c6=Symbol("emittedEnd"),Hz=Symbol("emittingEnd"),rV=Symbol("emittedError"),Dz=Symbol("closed"),w0A=Symbol("read"),Nz=Symbol("flush"),j0A=Symbol("flushChunk"),$C=Symbol("encoding"),j4=Symbol("decoder"),gY=Symbol("flowing"),aV=Symbol("paused"),O4=Symbol("resume"),hY=Symbol("buffer"),bJ=Symbol("pipes"),xY=Symbol("bufferLength"),Ev=Symbol("bufferPush"),Lz=Symbol("bufferShift"),EJ=Symbol("objectMode"),AY=Symbol("destroyed"),Kv=Symbol("error"),Vv=Symbol("emitData"),O0A=Symbol("emitEnd"),Iv=Symbol("emitEnd2"),L1=Symbol("async"),Hv=Symbol("abort"),qz=Symbol("aborted"),oV=Symbol("signal"),MW=Symbol("dataListeners"),A8=Symbol("discarded"),tV=(A)=>Promise.resolve().then(A),wbQ=(A)=>A(),jbQ=(A)=>A==="end"||A==="finish"||A==="prefinish",ObQ=(A)=>A instanceof ArrayBuffer||!!A&&typeof A==="object"&&A.constructor&&A.constructor.name==="ArrayBuffer"&&A.byteLength>=0,PbQ=(A)=>!Buffer.isBuffer(A)&&ArrayBuffer.isView(A);class Nv{src;dest;opts;ondrain;constructor(A,Q,B){this.src=A,this.dest=Q,this.opts=B,this.ondrain=()=>A[O4](),this.dest.on("drain",this.ondrain)}unpipe(){this.dest.removeListener("drain",this.ondrain)}proxyErrors(A){}end(){if(this.unpipe(),this.opts.end)this.dest.end()}}class T0A extends Nv{unpipe(){this.src.removeListener("error",this.proxyErrors),super.unpipe()}constructor(A,Q,B){super(A,Q,B);this.proxyErrors=(Y)=>Q.emit("error",Y),A.on("error",this.proxyErrors)}}var TbQ=(A)=>!!A.objectMode,SbQ=(A)=>!A.objectMode&&!!A.encoding&&A.encoding!=="buffer";class zW extends Dv{[gY]=!1;[aV]=!1;[bJ]=[];[hY]=[];[EJ];[$C];[L1];[j4];[mX]=!1;[c6]=!1;[Hz]=!1;[Dz]=!1;[rV]=null;[xY]=0;[AY]=!1;[oV];[qz]=!1;[MW]=0;[A8]=!1;writable=!0;readable=!0;constructor(...A){let Q=A[0]||{};super();if(Q.objectMode&&typeof Q.encoding==="string")throw TypeError("Encoding and objectMode may not be used together");if(TbQ(Q))this[EJ]=!0,this[$C]=null;else if(SbQ(Q))this[$C]=Q.encoding,this[EJ]=!1;else this[EJ]=!1,this[$C]=null;if(this[L1]=!!Q.async,this[j4]=this[$C]?new qbQ(this[$C]):null,Q&&Q.debugExposeBuffer===!0)Object.defineProperty(this,"buffer",{get:()=>this[hY]});if(Q&&Q.debugExposePipes===!0)Object.defineProperty(this,"pipes",{get:()=>this[bJ]});let{signal:B}=Q;if(B)if(this[oV]=B,B.aborted)this[Hv]();else B.addEventListener("abort",()=>this[Hv]())}get bufferLength(){return this[xY]}get encoding(){return this[$C]}set encoding(A){throw Error("Encoding must be set at instantiation time")}setEncoding(A){throw Error("Encoding must be set at instantiation time")}get objectMode(){return this[EJ]}set objectMode(A){throw Error("objectMode must be set at instantiation time")}get["async"](){return this[L1]}set["async"](A){this[L1]=this[L1]||!!A}[Hv](){this[qz]=!0,this.emit("abort",this[oV]?.reason),this.destroy(this[oV]?.reason)}get aborted(){return this[qz]}set aborted(A){}write(A,Q,B){if(this[qz])return!1;if(this[mX])throw Error("write after end");if(this[AY])return this.emit("error",Object.assign(Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),!0;if(typeof Q==="function")B=Q,Q="utf8";if(!Q)Q="utf8";let Y=this[L1]?tV:wbQ;if(!this[EJ]&&!Buffer.isBuffer(A)){if(PbQ(A))A=Buffer.from(A.buffer,A.byteOffset,A.byteLength);else if(ObQ(A))A=Buffer.from(A);else if(typeof A!=="string")throw Error("Non-contiguous data written to non-objectMode stream")}if(this[EJ]){if(this[gY]&&this[xY]!==0)this[Nz](!0);if(this[gY])this.emit("data",A);else this[Ev](A);if(this[xY]!==0)this.emit("readable");if(B)Y(B);return this[gY]}if(!A.length){if(this[xY]!==0)this.emit("readable");if(B)Y(B);return this[gY]}if(typeof A==="string"&&!(Q===this[$C]&&!this[j4]?.lastNeed))A=Buffer.from(A,Q);if(Buffer.isBuffer(A)&&this[$C])A=this[j4].write(A);if(this[gY]&&this[xY]!==0)this[Nz](!0);if(this[gY])this.emit("data",A);else this[Ev](A);if(this[xY]!==0)this.emit("readable");if(B)Y(B);return this[gY]}read(A){if(this[AY])return null;if(this[A8]=!1,this[xY]===0||A===0||A&&A>this[xY])return this[uX](),null;if(this[EJ])A=null;if(this[hY].length>1&&!this[EJ])this[hY]=[this[$C]?this[hY].join(""):Buffer.concat(this[hY],this[xY])];let Q=this[w0A](A||null,this[hY][0]);return this[uX](),Q}[w0A](A,Q){if(this[EJ])this[Lz]();else{let B=Q;if(A===B.length||A===null)this[Lz]();else if(typeof B==="string")this[hY][0]=B.slice(A),Q=B.slice(0,A),this[xY]-=A;else this[hY][0]=B.subarray(A),Q=B.subarray(0,A),this[xY]-=A}if(this.emit("data",Q),!this[hY].length&&!this[mX])this.emit("drain");return Q}end(A,Q,B){if(typeof A==="function")B=A,A=void 0;if(typeof Q==="function")B=Q,Q="utf8";if(A!==void 0)this.write(A,Q);if(B)this.once("end",B);if(this[mX]=!0,this.writable=!1,this[gY]||!this[aV])this[uX]();return this}[O4](){if(this[AY])return;if(!this[MW]&&!this[bJ].length)this[A8]=!0;if(this[aV]=!1,this[gY]=!0,this.emit("resume"),this[hY].length)this[Nz]();else if(this[mX])this[uX]();else this.emit("drain")}resume(){return this[O4]()}pause(){this[gY]=!1,this[aV]=!0,this[A8]=!1}get destroyed(){return this[AY]}get flowing(){return this[gY]}get paused(){return this[aV]}[Ev](A){if(this[EJ])this[xY]+=1;else this[xY]+=A.length;this[hY].push(A)}[Lz](){if(this[EJ])this[xY]-=1;else this[xY]-=this[hY][0].length;return this[hY].shift()}[Nz](A=!1){do;while(this[j0A](this[Lz]())&&this[hY].length);if(!A&&!this[hY].length&&!this[mX])this.emit("drain")}[j0A](A){return this.emit("data",A),this[gY]}pipe(A,Q){if(this[AY])return A;this[A8]=!1;let B=this[c6];if(Q=Q||{},A===R0A.stdout||A===R0A.stderr)Q.end=!1;else Q.end=Q.end!==!1;if(Q.proxyErrors=!!Q.proxyErrors,B){if(Q.end)A.end()}else if(this[bJ].push(!Q.proxyErrors?new Nv(this,A,Q):new T0A(this,A,Q)),this[L1])tV(()=>this[O4]());else this[O4]();return A}unpipe(A){let Q=this[bJ].find((B)=>B.dest===A);if(Q){if(this[bJ].length===1){if(this[gY]&&this[MW]===0)this[gY]=!1;this[bJ]=[]}else this[bJ].splice(this[bJ].indexOf(Q),1);Q.unpipe()}}addListener(A,Q){return this.on(A,Q)}on(A,Q){let B=super.on(A,Q);if(A==="data"){if(this[A8]=!1,this[MW]++,!this[bJ].length&&!this[gY])this[O4]()}else if(A==="readable"&&this[xY]!==0)super.emit("readable");else if(jbQ(A)&&this[c6])super.emit(A),this.removeAllListeners(A);else if(A==="error"&&this[rV]){let Y=Q;if(this[L1])tV(()=>Y.call(this,this[rV]));else Y.call(this,this[rV])}return B}removeListener(A,Q){return this.off(A,Q)}off(A,Q){let B=super.off(A,Q);if(A==="data"){if(this[MW]=this.listeners("data").length,this[MW]===0&&!this[A8]&&!this[bJ].length)this[gY]=!1}return B}removeAllListeners(A){let Q=super.removeAllListeners(A);if(A==="data"||A===void 0){if(this[MW]=0,!this[A8]&&!this[bJ].length)this[gY]=!1}return Q}get emittedEnd(){return this[c6]}[uX](){if(!this[Hz]&&!this[c6]&&!this[AY]&&this[hY].length===0&&this[mX]){if(this[Hz]=!0,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[Dz])this.emit("close");this[Hz]=!1}}emit(A,...Q){let B=Q[0];if(A!=="error"&&A!=="close"&&A!==AY&&this[AY])return!1;else if(A==="data")return!this[EJ]&&!B?!1:this[L1]?(tV(()=>this[Vv](B)),!0):this[Vv](B);else if(A==="end")return this[O0A]();else if(A==="close"){if(this[Dz]=!0,!this[c6]&&!this[AY])return!1;let J=super.emit("close");return this.removeAllListeners("close"),J}else if(A==="error"){this[rV]=B,super.emit(Kv,B);let J=!this[oV]||this.listeners("error").length?super.emit("error",B):!1;return this[uX](),J}else if(A==="resume"){let J=super.emit("resume");return this[uX](),J}else if(A==="finish"||A==="prefinish"){let J=super.emit(A);return this.removeAllListeners(A),J}let Y=super.emit(A,...Q);return this[uX](),Y}[Vv](A){for(let B of this[bJ])if(B.dest.write(A)===!1)this.pause();let Q=this[A8]?!1:super.emit("data",A);return this[uX](),Q}[O0A](){if(this[c6])return!1;return this[c6]=!0,this.readable=!1,this[L1]?(tV(()=>this[Iv]()),!0):this[Iv]()}[Iv](){if(this[j4]){let Q=this[j4].end();if(Q){for(let B of this[bJ])B.dest.write(Q);if(!this[A8])super.emit("data",Q)}}for(let Q of this[bJ])Q.end();let A=super.emit("end");return this.removeAllListeners("end"),A}async collect(){let A=Object.assign([],{dataLength:0});if(!this[EJ])A.dataLength=0;let Q=this.promise();return this.on("data",(B)=>{if(A.push(B),!this[EJ])A.dataLength+=B.length}),await Q,A}async concat(){if(this[EJ])throw Error("cannot concat in objectMode");let A=await this.collect();return this[$C]?A.join(""):Buffer.concat(A,A.dataLength)}async promise(){return new Promise((A,Q)=>{this.on(AY,()=>Q(Error("stream destroyed"))),this.on("error",(B)=>Q(B)),this.on("end",()=>A())})}[Symbol.asyncIterator](){this[A8]=!1;let A=!1,Q=async()=>{return this.pause(),A=!0,{value:void 0,done:!0}};return{next:()=>{if(A)return Q();let Y=this.read();if(Y!==null)return Promise.resolve({done:!1,value:Y});if(this[mX])return Q();let J,C,X=(Z)=>{this.off("data",G),this.off("end",F),this.off(AY,W),Q(),C(Z)},G=(Z)=>{this.off("error",X),this.off("end",F),this.off(AY,W),this.pause(),J({value:Z,done:!!this[mX]})},F=()=>{this.off("error",X),this.off("data",G),this.off(AY,W),Q(),J({done:!0,value:void 0})},W=()=>X(Error("stream destroyed"));return new Promise((Z,U)=>{C=U,J=Z,this.once(AY,W),this.once("error",X),this.once("end",F),this.once("data",G)})},throw:Q,return:Q,[Symbol.asyncIterator](){return this}}}[Symbol.iterator](){this[A8]=!1;let A=!1,Q=()=>{return this.pause(),this.off(Kv,Q),this.off(AY,Q),this.off("end",Q),A=!0,{done:!0,value:void 0}},B=()=>{if(A)return Q();let Y=this.read();return Y===null?Q():{done:!1,value:Y}};return this.once("end",Q),this.once(Kv,Q),this.once(AY,Q),{next:B,throw:Q,return:Q,[Symbol.iterator](){return this}}}destroy(A){if(this[AY]){if(A)this.emit("error",A);else this.emit(AY);return this}this[AY]=!0,this[A8]=!0,this[hY].length=0,this[xY]=0;let Q=this;if(typeof Q.close==="function"&&!this[Dz])Q.close();if(A)this.emit("error",A);else this.emit(AY);return this}static get isStream(){return MbQ}}var bbQ=xbQ.native,AI={lstatSync:vbQ,readdir:ybQ,readdirSync:gbQ,readlinkSync:hbQ,realpathSync:bbQ,promises:{lstat:mbQ,readdir:ubQ,readlink:dbQ,realpath:cbQ}},y0A=(A)=>!A||A===AI||A===fbQ?AI:{...AI,...A,promises:{...AI.promises,...A.promises||{}}},g0A=/^\\\\\?\\([a-z]:)\\?$/i,lbQ=(A)=>A.replace(/\//g,"\\").replace(g0A,"$1\\"),pbQ=/[\\\/]/,r8=0,h0A=1,x0A=2,q1=4,f0A=6,b0A=8,RW=10,m0A=12,s8=15,eV=~s8,Lv=16,S0A=32,QI=64,UC=128,Mz=256,Rz=512,k0A=QI|UC|Rz,ibQ=1023,qv=(A)=>A.isFile()?b0A:A.isDirectory()?q1:A.isSymbolicLink()?RW:A.isCharacterDevice()?x0A:A.isBlockDevice()?f0A:A.isSocket()?m0A:A.isFIFO()?h0A:r8,_0A=new Map,BI=(A)=>{let Q=_0A.get(A);if(Q)return Q;let B=A.normalize("NFKD");return _0A.set(A,B),B},v0A=new Map,zz=(A)=>{let Q=v0A.get(A);if(Q)return Q;let B=BI(A.toLowerCase());return v0A.set(A,B),B};class zv extends sV{constructor(){super({max:256})}}class u0A extends sV{constructor(A=16384){super({maxSize:A,sizeCalculation:(Q)=>Q.length+1})}}var d0A=Symbol("PathScurry setAsCwd");class mJ{name;root;roots;parent;nocase;isCWD=!1;#A;#Q;get dev(){return this.#Q}#B;get mode(){return this.#B}#Y;get nlink(){return this.#Y}#J;get uid(){return this.#J}#C;get gid(){return this.#C}#F;get rdev(){return this.#F}#X;get blksize(){return this.#X}#G;get ino(){return this.#G}#Z;get size(){return this.#Z}#U;get blocks(){return this.#U}#W;get atimeMs(){return this.#W}#E;get mtimeMs(){return this.#E}#V;get ctimeMs(){return this.#V}#I;get birthtimeMs(){return this.#I}#D;get atime(){return this.#D}#O;get mtime(){return this.#O}#N;get ctime(){return this.#N}#P;get birthtime(){return this.#P}#M;#q;#L;#w;#H;#S;#$;#v;#z;#k;get parentPath(){return(this.parent||this).fullpath()}get path(){return this.parentPath}constructor(A,Q=r8,B,Y,J,C,X){if(this.name=A,this.#M=J?zz(A):BI(A),this.#$=Q&ibQ,this.nocase=J,this.roots=Y,this.root=B||this,this.#v=C,this.#L=X.fullpath,this.#H=X.relative,this.#S=X.relativePosix,this.parent=X.parent,this.parent)this.#A=this.parent.#A;else this.#A=y0A(X.fs)}depth(){if(this.#q!==void 0)return this.#q;if(!this.parent)return this.#q=0;return this.#q=this.parent.depth()+1}childrenCache(){return this.#v}resolve(A){if(!A)return this;let Q=this.getRootString(A),Y=A.substring(Q.length).split(this.splitSep);return Q?this.getRoot(Q).#R(Y):this.#R(Y)}#R(A){let Q=this;for(let B of A)Q=Q.child(B);return Q}children(){let A=this.#v.get(this);if(A)return A;let Q=Object.assign([],{provisional:0});return this.#v.set(this,Q),this.#$&=~Lv,Q}child(A,Q){if(A===""||A===".")return this;if(A==="..")return this.parent||this;let B=this.children(),Y=this.nocase?zz(A):BI(A);for(let G of B)if(G.#M===Y)return G;let J=this.parent?this.sep:"",C=this.#L?this.#L+J+A:void 0,X=this.newChild(A,r8,{...Q,parent:this,fullpath:C});if(!this.canReaddir())X.#$|=UC;return B.push(X),X}relative(){if(this.isCWD)return"";if(this.#H!==void 0)return this.#H;let A=this.name,Q=this.parent;if(!Q)return this.#H=this.name;let B=Q.relative();return B+(!B||!Q.parent?"":this.sep)+A}relativePosix(){if(this.sep==="/")return this.relative();if(this.isCWD)return"";if(this.#S!==void 0)return this.#S;let A=this.name,Q=this.parent;if(!Q)return this.#S=this.fullpathPosix();let B=Q.relativePosix();return B+(!B||!Q.parent?"":"/")+A}fullpath(){if(this.#L!==void 0)return this.#L;let A=this.name,Q=this.parent;if(!Q)return this.#L=this.name;let Y=Q.fullpath()+(!Q.parent?"":this.sep)+A;return this.#L=Y}fullpathPosix(){if(this.#w!==void 0)return this.#w;if(this.sep==="/")return this.#w=this.fullpath();if(!this.parent){let Y=this.fullpath().replace(/\\/g,"/");if(/^[a-z]:\//i.test(Y))return this.#w=`//?/${Y}`;else return this.#w=Y}let A=this.parent,Q=A.fullpathPosix(),B=Q+(!Q||!A.parent?"":"/")+this.name;return this.#w=B}isUnknown(){return(this.#$&s8)===r8}isType(A){return this[`is${A}`]()}getType(){return this.isUnknown()?"Unknown":this.isDirectory()?"Directory":this.isFile()?"File":this.isSymbolicLink()?"SymbolicLink":this.isFIFO()?"FIFO":this.isCharacterDevice()?"CharacterDevice":this.isBlockDevice()?"BlockDevice":this.isSocket()?"Socket":"Unknown"}isFile(){return(this.#$&s8)===b0A}isDirectory(){return(this.#$&s8)===q1}isCharacterDevice(){return(this.#$&s8)===x0A}isBlockDevice(){return(this.#$&s8)===f0A}isFIFO(){return(this.#$&s8)===h0A}isSocket(){return(this.#$&s8)===m0A}isSymbolicLink(){return(this.#$&RW)===RW}lstatCached(){return this.#$&S0A?this:void 0}readlinkCached(){return this.#z}realpathCached(){return this.#k}readdirCached(){let A=this.children();return A.slice(0,A.provisional)}canReadlink(){if(this.#z)return!0;if(!this.parent)return!1;let A=this.#$&s8;return!(A!==r8&&A!==RW||this.#$&Mz||this.#$&UC)}calledReaddir(){return!!(this.#$&Lv)}isENOENT(){return!!(this.#$&UC)}isNamed(A){return!this.nocase?this.#M===BI(A):this.#M===zz(A)}async readlink(){let A=this.#z;if(A)return A;if(!this.canReadlink())return;if(!this.parent)return;try{let Q=await this.#A.promises.readlink(this.fullpath()),B=(await this.parent.realpath())?.resolve(Q);if(B)return this.#z=B}catch(Q){this.#x(Q.code);return}}readlinkSync(){let A=this.#z;if(A)return A;if(!this.canReadlink())return;if(!this.parent)return;try{let Q=this.#A.readlinkSync(this.fullpath()),B=this.parent.realpathSync()?.resolve(Q);if(B)return this.#z=B}catch(Q){this.#x(Q.code);return}}#m(A){this.#$|=Lv;for(let Q=A.provisional;QB(null,A))}readdirCB(A,Q=!1){if(!this.canReaddir()){if(Q)A(null,[]);else queueMicrotask(()=>A(null,[]));return}let B=this.children();if(this.calledReaddir()){let J=B.slice(0,B.provisional);if(Q)A(null,J);else queueMicrotask(()=>A(null,J));return}if(this.#b.push(A),this.#p)return;this.#p=!0;let Y=this.fullpath();this.#A.readdir(Y,{withFileTypes:!0},(J,C)=>{if(J)this.#T(J.code),B.provisional=0;else{for(let X of C)this.#g(X,B);this.#m(B)}this.#i(B.slice(0,B.provisional));return})}#l;async readdir(){if(!this.canReaddir())return[];let A=this.children();if(this.calledReaddir())return A.slice(0,A.provisional);let Q=this.fullpath();if(this.#l)await this.#l;else{let B=()=>{};this.#l=new Promise((Y)=>B=Y);try{for(let Y of await this.#A.promises.readdir(Q,{withFileTypes:!0}))this.#g(Y,A);this.#m(A)}catch(Y){this.#T(Y.code),A.provisional=0}this.#l=void 0,B()}return A.slice(0,A.provisional)}readdirSync(){if(!this.canReaddir())return[];let A=this.children();if(this.calledReaddir())return A.slice(0,A.provisional);let Q=this.fullpath();try{for(let B of this.#A.readdirSync(Q,{withFileTypes:!0}))this.#g(B,A);this.#m(A)}catch(B){this.#T(B.code),A.provisional=0}return A.slice(0,A.provisional)}canReaddir(){if(this.#$&k0A)return!1;let A=s8&this.#$;if(!(A===r8||A===q1||A===RW))return!1;return!0}shouldWalk(A,Q){return(this.#$&q1)===q1&&!(this.#$&k0A)&&!A.has(this)&&(!Q||Q(this))}async realpath(){if(this.#k)return this.#k;if((Rz|Mz|UC)&this.#$)return;try{let A=await this.#A.promises.realpath(this.fullpath());return this.#k=this.resolve(A)}catch(A){this.#u()}}realpathSync(){if(this.#k)return this.#k;if((Rz|Mz|UC)&this.#$)return;try{let A=this.#A.realpathSync(this.fullpath());return this.#k=this.resolve(A)}catch(A){this.#u()}}[d0A](A){if(A===this)return;A.isCWD=!1,this.isCWD=!0;let Q=new Set([]),B=[],Y=this;while(Y&&Y.parent)Q.add(Y),Y.#H=B.join(this.sep),Y.#S=B.join("/"),Y=Y.parent,B.push("..");Y=A;while(Y&&Y.parent&&!Q.has(Y))Y.#H=void 0,Y.#S=void 0,Y=Y.parent}}class wz extends mJ{sep="\\";splitSep=pbQ;constructor(A,Q=r8,B,Y,J,C,X){super(A,Q,B,Y,J,C,X)}newChild(A,Q=r8,B={}){return new wz(A,Q,this.root,this.roots,this.nocase,this.childrenCache(),B)}getRootString(A){return Mv.parse(A).root}getRoot(A){if(A=lbQ(A.toUpperCase()),A===this.root.name)return this.root;for(let[Q,B]of Object.entries(this.roots))if(this.sameRoot(A,Q))return this.roots[A]=B;return this.roots[A]=new YI(A,this).root}sameRoot(A,Q=this.root.name){return A=A.toUpperCase().replace(/\//g,"\\").replace(g0A,"$1\\"),A===Q}}class jz extends mJ{splitSep="/";sep="/";constructor(A,Q=r8,B,Y,J,C,X){super(A,Q,B,Y,J,C,X)}getRootString(A){return A.startsWith("/")?"/":""}getRoot(A){return this.root}newChild(A,Q=r8,B={}){return new jz(A,Q,this.root,this.roots,this.nocase,this.childrenCache(),B)}}class Rv{root;rootPath;roots;cwd;#A;#Q;#B;nocase;#Y;constructor(A=process.cwd(),Q,B,{nocase:Y,childrenCacheSize:J=16384,fs:C=AI}={}){if(this.#Y=y0A(C),A instanceof URL||A.startsWith("file://"))A=_bQ(A);let X=Q.resolve(A);this.roots=Object.create(null),this.rootPath=this.parseRootPath(X),this.#A=new zv,this.#Q=new zv,this.#B=new u0A(J);let G=X.substring(this.rootPath.length).split(B);if(G.length===1&&!G[0])G.pop();if(Y===void 0)throw TypeError("must provide nocase setting to PathScurryBase ctor");this.nocase=Y,this.root=this.newRoot(this.#Y),this.roots[this.rootPath]=this.root;let F=this.root,W=G.length-1,Z=Q.sep,U=this.rootPath,$=!1;for(let E of G){let K=W--;F=F.child(E,{relative:Array(K).fill("..").join(Z),relativePosix:Array(K).fill("..").join("/"),fullpath:U+=($?"":Z)+E}),$=!0}this.cwd=F}depth(A=this.cwd){if(typeof A==="string")A=this.cwd.resolve(A);return A.depth()}childrenCache(){return this.#B}resolve(...A){let Q="";for(let J=A.length-1;J>=0;J--){let C=A[J];if(!C||C===".")continue;if(Q=Q?`${C}/${Q}`:C,this.isAbsolute(C))break}let B=this.#A.get(Q);if(B!==void 0)return B;let Y=this.cwd.resolve(Q).fullpath();return this.#A.set(Q,Y),Y}resolvePosix(...A){let Q="";for(let J=A.length-1;J>=0;J--){let C=A[J];if(!C||C===".")continue;if(Q=Q?`${C}/${Q}`:C,this.isAbsolute(C))break}let B=this.#Q.get(Q);if(B!==void 0)return B;let Y=this.cwd.resolve(Q).fullpathPosix();return this.#Q.set(Q,Y),Y}relative(A=this.cwd){if(typeof A==="string")A=this.cwd.resolve(A);return A.relative()}relativePosix(A=this.cwd){if(typeof A==="string")A=this.cwd.resolve(A);return A.relativePosix()}basename(A=this.cwd){if(typeof A==="string")A=this.cwd.resolve(A);return A.name}dirname(A=this.cwd){if(typeof A==="string")A=this.cwd.resolve(A);return(A.parent||A).fullpath()}async readdir(A=this.cwd,Q={withFileTypes:!0}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof mJ))Q=A,A=this.cwd;let{withFileTypes:B}=Q;if(!A.canReaddir())return[];else{let Y=await A.readdir();return B?Y:Y.map((J)=>J.name)}}readdirSync(A=this.cwd,Q={withFileTypes:!0}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof mJ))Q=A,A=this.cwd;let{withFileTypes:B=!0}=Q;if(!A.canReaddir())return[];else if(B)return A.readdirSync();else return A.readdirSync().map((Y)=>Y.name)}async lstat(A=this.cwd){if(typeof A==="string")A=this.cwd.resolve(A);return A.lstat()}lstatSync(A=this.cwd){if(typeof A==="string")A=this.cwd.resolve(A);return A.lstatSync()}async readlink(A=this.cwd,{withFileTypes:Q}={withFileTypes:!1}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof mJ))Q=A.withFileTypes,A=this.cwd;let B=await A.readlink();return Q?B:B?.fullpath()}readlinkSync(A=this.cwd,{withFileTypes:Q}={withFileTypes:!1}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof mJ))Q=A.withFileTypes,A=this.cwd;let B=A.readlinkSync();return Q?B:B?.fullpath()}async realpath(A=this.cwd,{withFileTypes:Q}={withFileTypes:!1}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof mJ))Q=A.withFileTypes,A=this.cwd;let B=await A.realpath();return Q?B:B?.fullpath()}realpathSync(A=this.cwd,{withFileTypes:Q}={withFileTypes:!1}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof mJ))Q=A.withFileTypes,A=this.cwd;let B=A.realpathSync();return Q?B:B?.fullpath()}async walk(A=this.cwd,Q={}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof mJ))Q=A,A=this.cwd;let{withFileTypes:B=!0,follow:Y=!1,filter:J,walkFilter:C}=Q,X=[];if(!J||J(A))X.push(B?A:A.fullpath());let G=new Set,F=(Z,U)=>{G.add(Z),Z.readdirCB(($,E)=>{if($)return U($);let K=E.length;if(!K)return U();let I=()=>{if(--K===0)U()};for(let V of E){if(!J||J(V))X.push(B?V:V.fullpath());if(Y&&V.isSymbolicLink())V.realpath().then((H)=>H?.isUnknown()?H.lstat():H).then((H)=>H?.shouldWalk(G,C)?F(H,I):I());else if(V.shouldWalk(G,C))F(V,I);else I()}},!0)},W=A;return new Promise((Z,U)=>{F(W,($)=>{if($)return U($);Z(X)})})}walkSync(A=this.cwd,Q={}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof mJ))Q=A,A=this.cwd;let{withFileTypes:B=!0,follow:Y=!1,filter:J,walkFilter:C}=Q,X=[];if(!J||J(A))X.push(B?A:A.fullpath());let G=new Set([A]);for(let F of G){let W=F.readdirSync();for(let Z of W){if(!J||J(Z))X.push(B?Z:Z.fullpath());let U=Z;if(Z.isSymbolicLink()){if(!(Y&&(U=Z.realpathSync())))continue;if(U.isUnknown())U.lstatSync()}if(U.shouldWalk(G,C))G.add(U)}}return X}[Symbol.asyncIterator](){return this.iterate()}iterate(A=this.cwd,Q={}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof mJ))Q=A,A=this.cwd;return this.stream(A,Q)[Symbol.asyncIterator]()}[Symbol.iterator](){return this.iterateSync()}*iterateSync(A=this.cwd,Q={}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof mJ))Q=A,A=this.cwd;let{withFileTypes:B=!0,follow:Y=!1,filter:J,walkFilter:C}=Q;if(!J||J(A))yield B?A:A.fullpath();let X=new Set([A]);for(let G of X){let F=G.readdirSync();for(let W of F){if(!J||J(W))yield B?W:W.fullpath();let Z=W;if(W.isSymbolicLink()){if(!(Y&&(Z=W.realpathSync())))continue;if(Z.isUnknown())Z.lstatSync()}if(Z.shouldWalk(X,C))X.add(Z)}}}stream(A=this.cwd,Q={}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof mJ))Q=A,A=this.cwd;let{withFileTypes:B=!0,follow:Y=!1,filter:J,walkFilter:C}=Q,X=new zW({objectMode:!0});if(!J||J(A))X.write(B?A:A.fullpath());let G=new Set,F=[A],W=0,Z=()=>{let U=!1;while(!U){let $=F.shift();if(!$){if(W===0)X.end();return}W++,G.add($);let E=(I,V,H=!1)=>{if(I)return X.emit("error",I);if(Y&&!H){let D=[];for(let L of V)if(L.isSymbolicLink())D.push(L.realpath().then((z)=>z?.isUnknown()?z.lstat():z));if(D.length){Promise.all(D).then(()=>E(null,V,!0));return}}for(let D of V)if(D&&(!J||J(D))){if(!X.write(B?D:D.fullpath()))U=!0}W--;for(let D of V){let L=D.realpathCached()||D;if(L.shouldWalk(G,C))F.push(L)}if(U&&!X.flowing)X.once("drain",Z);else if(!K)Z()},K=!0;$.readdirCB(E,!0),K=!1}};return Z(),X}streamSync(A=this.cwd,Q={}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof mJ))Q=A,A=this.cwd;let{withFileTypes:B=!0,follow:Y=!1,filter:J,walkFilter:C}=Q,X=new zW({objectMode:!0}),G=new Set;if(!J||J(A))X.write(B?A:A.fullpath());let F=[A],W=0,Z=()=>{let U=!1;while(!U){let $=F.shift();if(!$){if(W===0)X.end();return}W++,G.add($);let E=$.readdirSync();for(let K of E)if(!J||J(K)){if(!X.write(B?K:K.fullpath()))U=!0}W--;for(let K of E){let I=K;if(K.isSymbolicLink()){if(!(Y&&(I=K.realpathSync())))continue;if(I.isUnknown())I.lstatSync()}if(I.shouldWalk(G,C))F.push(I)}}if(U&&!X.flowing)X.once("drain",Z)};return Z(),X}chdir(A=this.cwd){let Q=this.cwd;this.cwd=typeof A==="string"?this.cwd.resolve(A):A,this.cwd[d0A](Q)}}class YI extends Rv{sep="\\";constructor(A=process.cwd(),Q={}){let{nocase:B=!0}=Q;super(A,Mv,"\\",{...Q,nocase:B});this.nocase=B;for(let Y=this.cwd;Y;Y=Y.parent)Y.nocase=this.nocase}parseRootPath(A){return Mv.parse(A).root.toUpperCase()}newRoot(A){return new wz(this.rootPath,q1,void 0,this.roots,this.nocase,this.childrenCache(),{fs:A})}isAbsolute(A){return A.startsWith("/")||A.startsWith("\\")||/^[a-z]:(\/|\\)/i.test(A)}}class JI extends Rv{sep="/";constructor(A=process.cwd(),Q={}){let{nocase:B=!1}=Q;super(A,kbQ,"/",{...Q,nocase:B});this.nocase=B}parseRootPath(A){return"/"}newRoot(A){return new jz(this.rootPath,q1,void 0,this.roots,this.nocase,this.childrenCache(),{fs:A})}isAbsolute(A){return A.startsWith("/")}}class Oz extends JI{constructor(A=process.cwd(),Q={}){let{nocase:B=!0}=Q;super(A,{...Q,nocase:B})}}var UCY=process.platform==="win32"?wz:jz,c0A=process.platform==="win32"?YI:process.platform==="darwin"?Oz:JI;var nbQ=(A)=>A.length>=1,sbQ=(A)=>A.length>=1;class P4{#A;#Q;#B;length;#Y;#J;#C;#F;#X;#G;#Z=!0;constructor(A,Q,B,Y){if(!nbQ(A))throw TypeError("empty pattern list");if(!sbQ(Q))throw TypeError("empty glob list");if(Q.length!==A.length)throw TypeError("mismatched pattern list and glob list lengths");if(this.length=A.length,B<0||B>=this.length)throw TypeError("index out of range");if(this.#A=A,this.#Q=Q,this.#B=B,this.#Y=Y,this.#B===0){if(this.isUNC()){let[J,C,X,G,...F]=this.#A,[W,Z,U,$,...E]=this.#Q;if(F[0]==="")F.shift(),E.shift();let K=[J,C,X,G,""].join("/"),I=[W,Z,U,$,""].join("/");this.#A=[K,...F],this.#Q=[I,...E],this.length=this.#A.length}else if(this.isDrive()||this.isAbsolute()){let[J,...C]=this.#A,[X,...G]=this.#Q;if(C[0]==="")C.shift(),G.shift();let F=J+"/",W=X+"/";this.#A=[F,...C],this.#Q=[W,...G],this.length=this.#A.length}}}pattern(){return this.#A[this.#B]}isString(){return typeof this.#A[this.#B]==="string"}isGlobstar(){return this.#A[this.#B]===oY}isRegExp(){return this.#A[this.#B]instanceof RegExp}globString(){return this.#C=this.#C||(this.#B===0?this.isAbsolute()?this.#Q[0]+this.#Q.slice(1).join("/"):this.#Q.join("/"):this.#Q.slice(this.#B).join("/"))}hasMore(){return this.length>this.#B+1}rest(){if(this.#J!==void 0)return this.#J;if(!this.hasMore())return this.#J=null;return this.#J=new P4(this.#A,this.#Q,this.#B+1,this.#Y),this.#J.#G=this.#G,this.#J.#X=this.#X,this.#J.#F=this.#F,this.#J}isUNC(){let A=this.#A;return this.#X!==void 0?this.#X:this.#X=this.#Y==="win32"&&this.#B===0&&A[0]===""&&A[1]===""&&typeof A[2]==="string"&&!!A[2]&&typeof A[3]==="string"&&!!A[3]}isDrive(){let A=this.#A;return this.#F!==void 0?this.#F:this.#F=this.#Y==="win32"&&this.#B===0&&this.length>1&&typeof A[0]==="string"&&/^[a-z]:$/i.test(A[0])}isAbsolute(){let A=this.#A;return this.#G!==void 0?this.#G:this.#G=A[0]===""&&A.length>1||this.isDrive()||this.isUNC()}root(){let A=this.#A[0];return typeof A==="string"&&this.isAbsolute()&&this.#B===0?A:""}checkFollowGlobstar(){return!(this.#B===0||!this.isGlobstar()||!this.#Z)}markFollowGlobstar(){if(this.#B===0||!this.isGlobstar()||!this.#Z)return!1;return this.#Z=!1,!0}}var rbQ=typeof process==="object"&&process&&typeof process.platform==="string"?process.platform:"linux";class CI{relative;relativeChildren;absolute;absoluteChildren;platform;mmopts;constructor(A,{nobrace:Q,nocase:B,noext:Y,noglobstar:J,platform:C=rbQ}){this.relative=[],this.absolute=[],this.relativeChildren=[],this.absoluteChildren=[],this.platform=C,this.mmopts={dot:!0,nobrace:Q,nocase:B,noext:Y,noglobstar:J,optimizationLevel:2,platform:C,nocomment:!0,nonegate:!0};for(let X of A)this.add(X)}add(A){let Q=new n8(A,this.mmopts);for(let B=0;B[A,!!(Q&2),!!(Q&1)])}}class p0A{store=new Map;add(A,Q){if(!A.canReaddir())return;let B=this.store.get(A);if(B){if(!B.find((Y)=>Y.globString()===Q.globString()))B.push(Q)}else this.store.set(A,[Q])}get(A){let Q=this.store.get(A);if(!Q)throw Error("attempting to walk unknown path");return Q}entries(){return this.keys().map((A)=>[A,this.store.get(A)])}keys(){return[...this.store.keys()].filter((A)=>A.canReaddir())}}class XI{hasWalkedCache;matches=new l0A;subwalks=new p0A;patterns;follow;dot;opts;constructor(A,Q){this.opts=A,this.follow=!!A.follow,this.dot=!!A.dot,this.hasWalkedCache=Q?Q.copy():new wv}processPatterns(A,Q){this.patterns=Q;let B=Q.map((Y)=>[A,Y]);for(let[Y,J]of B){this.hasWalkedCache.storeWalked(Y,J);let C=J.root(),X=J.isAbsolute()&&this.opts.absolute!==!1;if(C){Y=Y.resolve(C==="/"&&this.opts.root!==void 0?this.opts.root:C);let Z=J.rest();if(!Z){this.matches.add(Y,!0,!1);continue}else J=Z}if(Y.isENOENT())continue;let G,F,W=!1;while(typeof(G=J.pattern())==="string"&&(F=J.rest()))Y=Y.resolve(G),J=F,W=!0;if(G=J.pattern(),F=J.rest(),W){if(this.hasWalkedCache.hasWalked(Y,J))continue;this.hasWalkedCache.storeWalked(Y,J)}if(typeof G==="string"){let Z=G===".."||G===""||G===".";this.matches.add(Y.resolve(G),X,Z);continue}else if(G===oY){if(!Y.isSymbolicLink()||this.follow||J.checkFollowGlobstar())this.subwalks.add(Y,J);let Z=F?.pattern(),U=F?.rest();if(!F||(Z===""||Z===".")&&!U)this.matches.add(Y,X,Z===""||Z===".");else if(Z===".."){let $=Y.parent||Y;if(!U)this.matches.add($,X,!0);else if(!this.hasWalkedCache.hasWalked($,U))this.subwalks.add($,U)}}else if(G instanceof RegExp)this.subwalks.add(Y,J)}return this}subwalkTargets(){return this.subwalks.keys()}child(){return new XI(this.opts,this.hasWalkedCache)}filterEntries(A,Q){let B=this.subwalks.get(A),Y=this.child();for(let J of Q)for(let C of B){let X=C.isAbsolute(),G=C.pattern(),F=C.rest();if(G===oY)Y.testGlobstar(J,C,F,X);else if(G instanceof RegExp)Y.testRegExp(J,G,F,X);else Y.testString(J,G,F,X)}return Y}testGlobstar(A,Q,B,Y){if(this.dot||!A.name.startsWith(".")){if(!Q.hasMore())this.matches.add(A,Y,!1);if(A.canReaddir()){if(this.follow||!A.isSymbolicLink())this.subwalks.add(A,Q);else if(A.isSymbolicLink()){if(B&&Q.checkFollowGlobstar())this.subwalks.add(A,B);else if(Q.markFollowGlobstar())this.subwalks.add(A,Q)}}}if(B){let J=B.pattern();if(typeof J==="string"&&J!==".."&&J!==""&&J!==".")this.testString(A,J,B.rest(),Y);else if(J===".."){let C=A.parent||A;this.subwalks.add(C,B)}else if(J instanceof RegExp)this.testRegExp(A,J,B.rest(),Y)}}testRegExp(A,Q,B,Y){if(!Q.test(A.name))return;if(!B)this.matches.add(A,Y,!1);else this.subwalks.add(A,B)}testString(A,Q,B,Y){if(!A.isNamed(Q))return;if(!B)this.matches.add(A,Y,!1);else this.subwalks.add(A,B)}}var abQ=(A,Q)=>typeof A==="string"?new CI([A],Q):Array.isArray(A)?new CI(A,Q):A;class jv{path;patterns;opts;seen=new Set;paused=!1;aborted=!1;#A=[];#Q;#B;signal;maxDepth;includeChildMatches;constructor(A,Q,B){if(this.patterns=A,this.path=Q,this.opts=B,this.#B=!B.posix&&B.platform==="win32"?"\\":"/",this.includeChildMatches=B.includeChildMatches!==!1,B.ignore||!this.includeChildMatches){if(this.#Q=abQ(B.ignore??[],B),!this.includeChildMatches&&typeof this.#Q.add!=="function")throw Error("cannot ignore child matches, ignore lacks add() method.")}if(this.maxDepth=B.maxDepth||1/0,B.signal)this.signal=B.signal,this.signal.addEventListener("abort",()=>{this.#A.length=0})}#Y(A){return this.seen.has(A)||!!this.#Q?.ignored?.(A)}#J(A){return!!this.#Q?.childrenIgnored?.(A)}pause(){this.paused=!0}resume(){if(this.signal?.aborted)return;this.paused=!1;let A=void 0;while(!this.paused&&(A=this.#A.shift()))A()}onResume(A){if(this.signal?.aborted)return;if(!this.paused)A();else this.#A.push(A)}async matchCheck(A,Q){if(Q&&this.opts.nodir)return;let B;if(this.opts.realpath){if(B=A.realpathCached()||await A.realpath(),!B)return;A=B}let J=A.isUnknown()||this.opts.stat?await A.lstat():A;if(this.opts.follow&&this.opts.nodir&&J?.isSymbolicLink()){let C=await J.realpath();if(C&&(C.isUnknown()||this.opts.stat))await C.lstat()}return this.matchCheckTest(J,Q)}matchCheckTest(A,Q){return A&&(this.maxDepth===1/0||A.depth()<=this.maxDepth)&&(!Q||A.canReaddir())&&(!this.opts.nodir||!A.isDirectory())&&(!this.opts.nodir||!this.opts.follow||!A.isSymbolicLink()||!A.realpathCached()?.isDirectory())&&!this.#Y(A)?A:void 0}matchCheckSync(A,Q){if(Q&&this.opts.nodir)return;let B;if(this.opts.realpath){if(B=A.realpathCached()||A.realpathSync(),!B)return;A=B}let J=A.isUnknown()||this.opts.stat?A.lstatSync():A;if(this.opts.follow&&this.opts.nodir&&J?.isSymbolicLink()){let C=J.realpathSync();if(C&&(C?.isUnknown()||this.opts.stat))C.lstatSync()}return this.matchCheckTest(J,Q)}matchFinish(A,Q){if(this.#Y(A))return;if(!this.includeChildMatches&&this.#Q?.add){let J=`${A.relativePosix()}/**`;this.#Q.add(J)}let B=this.opts.absolute===void 0?Q:this.opts.absolute;this.seen.add(A);let Y=this.opts.mark&&A.isDirectory()?this.#B:"";if(this.opts.withFileTypes)this.matchEmit(A);else if(B){let J=this.opts.posix?A.fullpathPosix():A.fullpath();this.matchEmit(J+Y)}else{let J=this.opts.posix?A.relativePosix():A.relative(),C=this.opts.dotRelative&&!J.startsWith(".."+this.#B)?"."+this.#B:"";this.matchEmit(!J?"."+Y:C+J+Y)}}async match(A,Q,B){let Y=await this.matchCheck(A,B);if(Y)this.matchFinish(Y,Q)}matchSync(A,Q,B){let Y=this.matchCheckSync(A,B);if(Y)this.matchFinish(Y,Q)}walkCB(A,Q,B){if(this.signal?.aborted)B();this.walkCB2(A,Q,new XI(this.opts),B)}walkCB2(A,Q,B,Y){if(this.#J(A))return Y();if(this.signal?.aborted)Y();if(this.paused){this.onResume(()=>this.walkCB2(A,Q,B,Y));return}B.processPatterns(A,Q);let J=1,C=()=>{if(--J===0)Y()};for(let[X,G,F]of B.matches.entries()){if(this.#Y(X))continue;J++,this.match(X,G,F).then(()=>C())}for(let X of B.subwalkTargets()){if(this.maxDepth!==1/0&&X.depth()>=this.maxDepth)continue;J++;let G=X.readdirCached();if(X.calledReaddir())this.walkCB3(X,G,B,C);else X.readdirCB((F,W)=>this.walkCB3(X,W,B,C),!0)}C()}walkCB3(A,Q,B,Y){B=B.filterEntries(A,Q);let J=1,C=()=>{if(--J===0)Y()};for(let[X,G,F]of B.matches.entries()){if(this.#Y(X))continue;J++,this.match(X,G,F).then(()=>C())}for(let[X,G]of B.subwalks.entries())J++,this.walkCB2(X,G,B.child(),C);C()}walkCBSync(A,Q,B){if(this.signal?.aborted)B();this.walkCB2Sync(A,Q,new XI(this.opts),B)}walkCB2Sync(A,Q,B,Y){if(this.#J(A))return Y();if(this.signal?.aborted)Y();if(this.paused){this.onResume(()=>this.walkCB2Sync(A,Q,B,Y));return}B.processPatterns(A,Q);let J=1,C=()=>{if(--J===0)Y()};for(let[X,G,F]of B.matches.entries()){if(this.#Y(X))continue;this.matchSync(X,G,F)}for(let X of B.subwalkTargets()){if(this.maxDepth!==1/0&&X.depth()>=this.maxDepth)continue;J++;let G=X.readdirSync();this.walkCB3Sync(X,G,B,C)}C()}walkCB3Sync(A,Q,B,Y){B=B.filterEntries(A,Q);let J=1,C=()=>{if(--J===0)Y()};for(let[X,G,F]of B.matches.entries()){if(this.#Y(X))continue;this.matchSync(X,G,F)}for(let[X,G]of B.subwalks.entries())J++,this.walkCB2Sync(X,G,B.child(),C);C()}}class Pz extends jv{matches=new Set;constructor(A,Q,B){super(A,Q,B)}matchEmit(A){this.matches.add(A)}async walk(){if(this.signal?.aborted)throw this.signal.reason;if(this.path.isUnknown())await this.path.lstat();return await new Promise((A,Q)=>{this.walkCB(this.path,this.patterns,()=>{if(this.signal?.aborted)Q(this.signal.reason);else A(this.matches)})}),this.matches}walkSync(){if(this.signal?.aborted)throw this.signal.reason;if(this.path.isUnknown())this.path.lstatSync();return this.walkCBSync(this.path,this.patterns,()=>{if(this.signal?.aborted)throw this.signal.reason}),this.matches}}class Tz extends jv{results;constructor(A,Q,B){super(A,Q,B);this.results=new zW({signal:this.signal,objectMode:!0}),this.results.on("drain",()=>this.resume()),this.results.on("resume",()=>this.resume())}matchEmit(A){if(this.results.write(A),!this.results.flowing)this.pause()}stream(){let A=this.path;if(A.isUnknown())A.lstat().then(()=>{this.walkCB(A,this.patterns,()=>this.results.end())});else this.walkCB(A,this.patterns,()=>this.results.end());return this.results}streamSync(){if(this.path.isUnknown())this.path.lstatSync();return this.walkCBSync(this.path,this.patterns,()=>this.results.end()),this.results}}var tbQ=typeof process==="object"&&process&&typeof process.platform==="string"?process.platform:"linux";class M1{absolute;cwd;root;dot;dotRelative;follow;ignore;magicalBraces;mark;matchBase;maxDepth;nobrace;nocase;nodir;noext;noglobstar;pattern;platform;realpath;scurry;stat;signal;windowsPathsNoEscape;withFileTypes;includeChildMatches;opts;patterns;constructor(A,Q){if(!Q)throw TypeError("glob options required");if(this.withFileTypes=!!Q.withFileTypes,this.signal=Q.signal,this.follow=!!Q.follow,this.dot=!!Q.dot,this.dotRelative=!!Q.dotRelative,this.nodir=!!Q.nodir,this.mark=!!Q.mark,!Q.cwd)this.cwd="";else if(Q.cwd instanceof URL||Q.cwd.startsWith("file://"))Q.cwd=obQ(Q.cwd);if(this.cwd=Q.cwd||"",this.root=Q.root,this.magicalBraces=!!Q.magicalBraces,this.nobrace=!!Q.nobrace,this.noext=!!Q.noext,this.realpath=!!Q.realpath,this.absolute=Q.absolute,this.includeChildMatches=Q.includeChildMatches!==!1,this.noglobstar=!!Q.noglobstar,this.matchBase=!!Q.matchBase,this.maxDepth=typeof Q.maxDepth==="number"?Q.maxDepth:1/0,this.stat=!!Q.stat,this.ignore=Q.ignore,this.withFileTypes&&this.absolute!==void 0)throw Error("cannot set absolute and withFileTypes:true");if(typeof A==="string")A=[A];if(this.windowsPathsNoEscape=!!Q.windowsPathsNoEscape||Q.allowWindowsEscape===!1,this.windowsPathsNoEscape)A=A.map((G)=>G.replace(/\\/g,"/"));if(this.matchBase){if(Q.noglobstar)throw TypeError("base matching requires globstar");A=A.map((G)=>G.includes("/")?G:`./**/${G}`)}if(this.pattern=A,this.platform=Q.platform||tbQ,this.opts={...Q,platform:this.platform},Q.scurry){if(this.scurry=Q.scurry,Q.nocase!==void 0&&Q.nocase!==Q.scurry.nocase)throw Error("nocase option contradicts provided scurry option")}else{let G=Q.platform==="win32"?YI:Q.platform==="darwin"?Oz:Q.platform?JI:c0A;this.scurry=new G(this.cwd,{nocase:Q.nocase,fs:Q.fs})}this.nocase=this.scurry.nocase;let B=this.platform==="darwin"||this.platform==="win32",Y={...Q,dot:this.dot,matchBase:this.matchBase,nobrace:this.nobrace,nocase:this.nocase,nocaseMagicOnly:B,nocomment:!0,noext:this.noext,nonegate:!0,optimizationLevel:2,platform:this.platform,windowsPathsNoEscape:this.windowsPathsNoEscape,debug:!!this.opts.debug},J=this.pattern.map((G)=>new n8(G,Y)),[C,X]=J.reduce((G,F)=>{return G[0].push(...F.set),G[1].push(...F.globParts),G},[[],[]]);this.patterns=C.map((G,F)=>{let W=X[F];if(!W)throw Error("invalid pattern object");return new P4(G,W,0,this.platform)})}async walk(){return[...await new Pz(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walk()]}walkSync(){return[...new Pz(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walkSync()]}stream(){return new Tz(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).stream()}streamSync(){return new Tz(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).streamSync()}iterateSync(){return this.streamSync()[Symbol.iterator]()}[Symbol.iterator](){return this.iterateSync()}iterate(){return this.stream()[Symbol.asyncIterator]()}[Symbol.asyncIterator](){return this.iterate()}}var Ov=(A,Q={})=>{if(!Array.isArray(A))A=[A];for(let B of A)if(new n8(B,Q).hasMagic())return!0;return!1};function Sz(A,Q={}){return new M1(A,Q).streamSync()}function n0A(A,Q={}){return new M1(A,Q).stream()}function s0A(A,Q={}){return new M1(A,Q).walkSync()}async function i0A(A,Q={}){return new M1(A,Q).walk()}function kz(A,Q={}){return new M1(A,Q).iterateSync()}function r0A(A,Q={}){return new M1(A,Q).iterate()}var ebQ=Sz,AmQ=Object.assign(n0A,{sync:Sz}),QmQ=kz,BmQ=Object.assign(r0A,{sync:kz}),YmQ=Object.assign(s0A,{stream:Sz,iterate:kz}),T4=Object.assign(i0A,{glob:i0A,globSync:s0A,sync:YmQ,globStream:n0A,stream:AmQ,globStreamSync:Sz,streamSync:ebQ,globIterate:r0A,iterate:BmQ,globIterateSync:kz,iterateSync:QmQ,Glob:M1,hasMagic:Ov,escape:z4,unescape:ZC});T4.glob=T4;var Pv;(function(A){A[A.BITMAP_INFO_HEADER=40]="BITMAP_INFO_HEADER",A[A.BITMAP_V2_INFO_HEADER=52]="BITMAP_V2_INFO_HEADER",A[A.BITMAP_V3_INFO_HEADER=56]="BITMAP_V3_INFO_HEADER",A[A.BITMAP_V4_HEADER=108]="BITMAP_V4_HEADER",A[A.BITMAP_V5_HEADER=124]="BITMAP_V5_HEADER"})(Pv||(Pv={}));var a8=Pv;function Tv(A,Q,B,Y){let J=~A+1&A,C=~Q+1&Q,X=~B+1&B,G=~Y+1&Y,F=A/J+1,W=Q/C+1,Z=B/X+1,U=Y/G+1;return{shiftRed:($)=>($&A)/J*256/F,shiftGreen:($)=>($&Q)/C*256/W,shiftBlue:($)=>($&B)/X*256/Z,shiftAlpha:Y!==0?($)=>($&Y)/G*256/U:()=>255}}var dX;(function(A){A[A.NONE=0]="NONE",A[A.BI_RLE8=1]="BI_RLE8",A[A.BI_RLE4=2]="BI_RLE4",A[A.BI_BIT_FIELDS=3]="BI_BIT_FIELDS",A[A.BI_ALPHA_BIT_FIELDS=6]="BI_ALPHA_BIT_FIELDS"})(dX||(dX={}));class _z{flag;fileSize;reserved1;reserved2;offset;headerSize;width;height;planes;bitPP;compression;rawSize;hr;vr;colors;importantColors;palette;data;maskRed;maskGreen;maskBlue;maskAlpha;toRGBA;pos;bottomUp;buffer;locRed;locGreen;locBlue;locAlpha;shiftRed;shiftGreen;shiftBlue;shiftAlpha;constructor(A,{toRGBA:Q}={toRGBA:!1}){if(this.buffer=A,this.toRGBA=!!Q,this.pos=0,this.bottomUp=!0,this.flag=this.buffer.toString("utf-8",0,this.pos+=2),this.flag!=="BM")throw Error("Invalid BMP File");this.locRed=this.toRGBA?0:3,this.locGreen=this.toRGBA?1:2,this.locBlue=this.toRGBA?2:1,this.locAlpha=this.toRGBA?3:0,this.parseHeader(),this.parseRGBA()}parseHeader(){if(this.fileSize=this.readUInt32LE(),this.reserved1=this.buffer.readUInt16LE(this.pos),this.pos+=2,this.reserved2=this.buffer.readUInt16LE(this.pos),this.pos+=2,this.offset=this.readUInt32LE(),this.headerSize=this.readUInt32LE(),!(this.headerSize in a8))throw Error(`Unsupported BMP header size ${this.headerSize}`);if(this.width=this.readUInt32LE(),this.height=this.readUInt32LE(),this.height=this.height>2147483647?this.height-4294967296:this.height,this.planes=this.buffer.readUInt16LE(this.pos),this.pos+=2,this.bitPP=this.buffer.readUInt16LE(this.pos),this.pos+=2,this.compression=this.readUInt32LE(),this.rawSize=this.readUInt32LE(),this.hr=this.readUInt32LE(),this.vr=this.readUInt32LE(),this.colors=this.readUInt32LE(),this.importantColors=this.readUInt32LE(),this.bitPP===32)this.maskAlpha=0,this.maskRed=16711680,this.maskGreen=65280,this.maskBlue=255;else if(this.bitPP===16)this.maskAlpha=0,this.maskRed=31744,this.maskGreen=992,this.maskBlue=31;if(this.headerSize>a8.BITMAP_INFO_HEADER||this.compression===dX.BI_BIT_FIELDS||this.compression===dX.BI_ALPHA_BIT_FIELDS)this.maskRed=this.readUInt32LE(),this.maskGreen=this.readUInt32LE(),this.maskBlue=this.readUInt32LE();if(this.headerSize>a8.BITMAP_V2_INFO_HEADER||this.compression===dX.BI_ALPHA_BIT_FIELDS)this.maskAlpha=this.readUInt32LE();if(this.headerSize>a8.BITMAP_V3_INFO_HEADER)this.pos+=a8.BITMAP_V4_HEADER-a8.BITMAP_V3_INFO_HEADER;if(this.headerSize>a8.BITMAP_V4_HEADER)this.pos+=a8.BITMAP_V5_HEADER-a8.BITMAP_V4_HEADER;if(this.bitPP<=8||this.colors>0){let Q=this.colors===0?1<{if(C!==Y)Y=C;let X=this.buffer.readUInt8(this.pos++),G=C*this.width*4+J*8*4;for(let F=0;F<8;F++)if(J*8+F>7-F&1];this.data[G+F*this.locAlpha]=0,this.data[G+F*4+this.locBlue]=W.blue,this.data[G+F*4+this.locGreen]=W.green,this.data[G+F*4+this.locRed]=W.red}else break})}bit4(){if(this.compression===dX.BI_RLE4){this.data.fill(0);let A=!1,Q=this.bottomUp?this.height-1:0,B=0;while(B>4),X&1&&X+1>1&1)===1)this.pos++}}else for(let C=0;C>4),A=!A}}else{let A=Math.ceil(this.width/2),Q=A%4,B=Q!==0?4-Q:0;this.scanImage(B,A,(Y,J)=>{let C=this.buffer.readUInt8(this.pos++),X=J*this.width*4+Y*2*4,G=C>>4,F=this.palette[G];if(this.data[X]=0,this.data[X+1]=F.blue,this.data[X+2]=F.green,this.data[X+3]=F.red,Y*2+1>=this.width)return!1;let W=C&15;F=this.palette[W],this.data[X+4]=0,this.data[X+4+1]=F.blue,this.data[X+4+2]=F.green,this.data[X+4+3]=F.red})}}bit8(){if(this.compression===dX.BI_RLE8){this.data.fill(0);let A=this.bottomUp?this.height-1:0,Q=0;while(Q{let J=this.buffer.readUInt8(this.pos++),C=Y*this.width*4+B*4;if(J{let Y=B*this.width*4+Q*4,J=this.buffer.readUInt16LE(this.pos);this.pos+=2,this.data[Y+this.locRed]=this.shiftRed(J),this.data[Y+this.locGreen]=this.shiftGreen(J),this.data[Y+this.locBlue]=this.shiftBlue(J),this.data[Y+this.locAlpha]=this.shiftAlpha(J)})}bit24(){let A=this.width%4;this.scanImage(A,this.width,(Q,B)=>{let Y=B*this.width*4+Q*4,J=this.buffer.readUInt8(this.pos++),C=this.buffer.readUInt8(this.pos++),X=this.buffer.readUInt8(this.pos++);this.data[Y+this.locRed]=X,this.data[Y+this.locGreen]=C,this.data[Y+this.locBlue]=J,this.data[Y+this.locAlpha]=0})}bit32(){this.scanImage(0,this.width,(A,Q)=>{let B=Q*this.width*4+A*4,Y=this.readUInt32LE();this.data[B+this.locRed]=this.shiftRed(Y),this.data[B+this.locGreen]=this.shiftGreen(Y),this.data[B+this.locBlue]=this.shiftBlue(Y),this.data[B+this.locAlpha]=this.shiftAlpha(Y)})}scanImage(A=0,Q=this.width,B){for(let Y=this.height-1;Y>=0;Y--){let J=this.bottomUp?Y:this.height-1-Y;for(let C=0;CQ<<1|B,0)}function Sv(A){return A.quad<<24|A.red<<16|A.green<<8|A.blue}class vz{fileSize;reserved1;reserved2;offset;width;flag;height;planes;bitPP;compress;hr;vr;colors;importantColors;rawSize;headerSize;data;palette;extraBytes;buffer;bytesInColor;pos;constructor(A){if(this.buffer=A.data,this.width=A.width,this.height=A.height,this.headerSize=a8.BITMAP_INFO_HEADER,this.flag="BM",this.bitPP=A.bitPP||24,this.offset=54,this.reserved1=A.reserved1||0,this.reserved2=A.reserved2||0,this.planes=1,this.compress=0,this.hr=A.hr||0,this.vr=A.vr||0,this.importantColors=A.importantColors||0,this.colors=Math.min(2**(this.bitPP-1||1),A.colors||1/0),this.palette=A.palette||[],this.colors&&this.bitPP<16)this.offset+=this.colors*4;else this.colors=0;switch(this.bitPP){case 32:this.bytesInColor=4;break;case 16:this.bytesInColor=2;break;case 8:this.bytesInColor=1;break;case 4:this.bytesInColor=0.5;break;case 1:this.bytesInColor=0.125;break;default:this.bytesInColor=3,this.bitPP=24}let Q=this.width*this.bitPP/32,B=Math.ceil(Q);this.extraBytes=(B-Q)*4,this.rawSize=this.height*B*4+2,this.fileSize=this.rawSize+this.offset,this.data=Buffer.alloc(this.fileSize,1),this.pos=0,this.encode()}encode(){switch(this.pos=0,this.writeHeader(),this.bitPP){case 32:this.bit32();break;case 16:this.bit16();break;case 8:this.bit8();break;case 4:this.bit4();break;case 1:this.bit1();break;default:this.bit24()}}writeHeader(){this.data.write(this.flag,this.pos,2),this.pos+=2,this.writeUInt32LE(this.fileSize),this.writeUInt32LE(this.reserved1<<16|this.reserved2),this.writeUInt32LE(this.offset),this.writeUInt32LE(this.headerSize),this.writeUInt32LE(this.width),this.writeUInt32LE(this.height),this.data.writeUInt16LE(this.planes,this.pos),this.pos+=2,this.data.writeUInt16LE(this.bitPP,this.pos),this.pos+=2,this.writeUInt32LE(this.compress),this.writeUInt32LE(this.rawSize),this.writeUInt32LE(this.hr),this.writeUInt32LE(this.vr),this.writeUInt32LE(this.colors),this.writeUInt32LE(this.importantColors)}bit1(){if(this.palette.length&&this.colors===2)this.initColors(1);else this.writeUInt32LE(16777215),this.writeUInt32LE(0);this.pos+=1;let A=[];this.writeImage((Q,B,Y)=>{let J=B;J++;let C=this.buffer[J++],X=this.buffer[J++],F=this.buffer[J++]*0.2126+X*0.7152+C*0.0722;if(A.push(F>127?0:1),(Y+1)%8===0)this.data[Q-1]=a0A(A),A=[];else if(Y===this.width-1&&A.length>0)this.data[Q-1]=a0A(A)<<4,A=[];return J})}bit4(){let A=this.initColors(4),Q=[];this.writeImage((B,Y,J)=>{let C=Y,X=Sv({quad:this.buffer[C++],blue:this.buffer[C++],green:this.buffer[C++],red:this.buffer[C++]}),G=A.findIndex((F)=>F===X);if(G!==-1)Q.push(G);else Q.push(0);if((J+1)%2===0)this.data[B]=Q[0]<<4|Q[1],Q=[];return C})}bit8(){let A=this.initColors(8);this.writeImage((Q,B)=>{let Y=B,J=Sv({quad:this.buffer[Y++],blue:this.buffer[Y++],green:this.buffer[Y++],red:this.buffer[Y++]}),C=A.findIndex((X)=>X===J);if(C!==-1)this.data[Q]=C;else this.data[Q]=0;return Y})}bit16(){this.writeImage((A,Q)=>{let B=Q+1,Y=this.buffer[B++]/8,J=this.buffer[B++]/8,X=this.buffer[B++]/8<<10|J<<5|Y;return this.data[A]=X&255,this.data[A+1]=(X&65280)>>8,B})}bit24(){this.writeImage((A,Q)=>{let B=Q+1;return this.data[A]=this.buffer[B++],this.data[A+1]=this.buffer[B++],this.data[A+2]=this.buffer[B++],B})}bit32(){this.writeImage((A,Q)=>{let B=Q;return this.data[A+3]=this.buffer[B++],this.data[A]=this.buffer[B++],this.data[A+1]=this.buffer[B++],this.data[A+2]=this.buffer[B++],B})}writeImage(A){let Q=this.extraBytes+this.width*this.bytesInColor,B=0;for(let Y=0;Y=0,C=!B&&J&&(Q==="hex"||Q==="hex6"||Q==="hex3"||Q==="hex4"||Q==="hex8"||Q==="name");if(C){if(Q==="name"&&this._a===0)return this.toName();return this.toRgbString()}if(Q==="rgb")Y=this.toRgbString();if(Q==="prgb")Y=this.toPercentageRgbString();if(Q==="hex"||Q==="hex6")Y=this.toHexString();if(Q==="hex3")Y=this.toHexString(!0);if(Q==="hex4")Y=this.toHex8String(!0);if(Q==="hex8")Y=this.toHex8String();if(Q==="name")Y=this.toName();if(Q==="hsl")Y=this.toHslString();if(Q==="hsv")Y=this.toHsvString();return Y||this.toHexString()},clone:function(){return aA(this.toString())},_applyModification:function(Q,B){var Y=Q.apply(null,[this].concat([].slice.call(B)));return this._r=Y._r,this._g=Y._g,this._b=Y._b,this.setAlpha(Y._a),this},lighten:function(){return this._applyModification(VmQ,arguments)},brighten:function(){return this._applyModification(ImQ,arguments)},darken:function(){return this._applyModification(HmQ,arguments)},desaturate:function(){return this._applyModification(UmQ,arguments)},saturate:function(){return this._applyModification(EmQ,arguments)},greyscale:function(){return this._applyModification(KmQ,arguments)},spin:function(){return this._applyModification(DmQ,arguments)},_applyCombination:function(Q,B){return Q.apply(null,[this].concat([].slice.call(B)))},analogous:function(){return this._applyCombination(qmQ,arguments)},complement:function(){return this._applyCombination(NmQ,arguments)},monochromatic:function(){return this._applyCombination(MmQ,arguments)},splitcomplement:function(){return this._applyCombination(LmQ,arguments)},triad:function(){return this._applyCombination(YYA,[3])},tetrad:function(){return this._applyCombination(YYA,[4])}};aA.fromRatio=function(A,Q){if(yz(A)=="object"){var B={};for(var Y in A)if(A.hasOwnProperty(Y))if(Y==="a")B[Y]=A[Y];else B[Y]=GI(A[Y]);A=B}return aA(A,Q)};function GmQ(A){var Q={r:0,g:0,b:0},B=1,Y=null,J=null,C=null,X=!1,G=!1;if(typeof A=="string")A=OmQ(A);if(yz(A)=="object"){if(cX(A.r)&&cX(A.g)&&cX(A.b))Q=FmQ(A.r,A.g,A.b),X=!0,G=String(A.r).substr(-1)==="%"?"prgb":"rgb";else if(cX(A.h)&&cX(A.s)&&cX(A.v))Y=GI(A.s),J=GI(A.v),Q=ZmQ(A.h,Y,J),X=!0,G="hsv";else if(cX(A.h)&&cX(A.s)&&cX(A.l))Y=GI(A.s),C=GI(A.l),Q=WmQ(A.h,Y,C),X=!0,G="hsl";if(A.hasOwnProperty("a"))B=A.a}return B=CYA(B),{ok:X,format:A.format||G,r:Math.min(255,Math.max(Q.r,0)),g:Math.min(255,Math.max(Q.g,0)),b:Math.min(255,Math.max(Q.b,0)),a:B}}function FmQ(A,Q,B){return{r:D0(A,255)*255,g:D0(Q,255)*255,b:D0(B,255)*255}}function e0A(A,Q,B){A=D0(A,255),Q=D0(Q,255),B=D0(B,255);var Y=Math.max(A,Q,B),J=Math.min(A,Q,B),C,X,G=(Y+J)/2;if(Y==J)C=X=0;else{var F=Y-J;switch(X=G>0.5?F/(2-Y-J):F/(Y+J),Y){case A:C=(Q-B)/F+(Q1)U-=1;if(U<0.16666666666666666)return W+(Z-W)*6*U;if(U<0.5)return Z;if(U<0.6666666666666666)return W+(Z-W)*(0.6666666666666666-U)*6;return W}if(Q===0)Y=J=C=B;else{var G=B<0.5?B*(1+Q):B+Q-B*Q,F=2*B-G;Y=X(F,G,A+0.3333333333333333),J=X(F,G,A),C=X(F,G,A-0.3333333333333333)}return{r:Y*255,g:J*255,b:C*255}}function AYA(A,Q,B){A=D0(A,255),Q=D0(Q,255),B=D0(B,255);var Y=Math.max(A,Q,B),J=Math.min(A,Q,B),C,X,G=Y,F=Y-J;if(X=Y===0?0:F/Y,Y==J)C=0;else{switch(Y){case A:C=(Q-B)/F+(Q>1)+720)%360;--Q;)Y.h=(Y.h+J)%360,C.push(aA(Y));return C}function MmQ(A,Q){Q=Q||6;var B=aA(A).toHsv(),Y=B.h,J=B.s,C=B.v,X=[],G=1/Q;while(Q--)X.push(aA({h:Y,s:J,v:C})),C=(C+G)%1;return X}aA.mix=function(A,Q,B){B=B===0?0:B||50;var Y=aA(A).toRgb(),J=aA(Q).toRgb(),C=B/100,X={r:(J.r-Y.r)*C+Y.r,g:(J.g-Y.g)*C+Y.g,b:(J.b-Y.b)*C+Y.b,a:(J.a-Y.a)*C+Y.a};return aA(X)};aA.readability=function(A,Q){var B=aA(A),Y=aA(Q);return(Math.max(B.getLuminance(),Y.getLuminance())+0.05)/(Math.min(B.getLuminance(),Y.getLuminance())+0.05)};aA.isReadable=function(A,Q,B){var Y=aA.readability(A,Q),J,C;switch(C=!1,J=PmQ(B),J.level+J.size){case"AAsmall":case"AAAlarge":C=Y>=4.5;break;case"AAlarge":C=Y>=3;break;case"AAAsmall":C=Y>=7;break}return C};aA.mostReadable=function(A,Q,B){var Y=null,J=0,C,X,G,F;B=B||{},X=B.includeFallbackColors,G=B.level,F=B.size;for(var W=0;WJ)J=C,Y=aA(Q[W]);if(aA.isReadable(A,Y,{level:G,size:F})||!X)return Y;else return B.includeFallbackColors=!1,aA.mostReadable(A,["#fff","#000"],B)};var kv=aA.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},zmQ=aA.hexNames=RmQ(kv);function RmQ(A){var Q={};for(var B in A)if(A.hasOwnProperty(B))Q[A[B]]=B;return Q}function CYA(A){if(A=parseFloat(A),isNaN(A)||A<0||A>1)A=1;return A}function D0(A,Q){if(wmQ(A))A="100%";var B=jmQ(A);if(A=Math.min(Q,Math.max(0,parseFloat(A))),B)A=parseInt(A*Q,10)/100;if(Math.abs(A-Q)<0.000001)return 1;return A%Q/parseFloat(Q)}function gz(A){return Math.min(1,Math.max(0,A))}function Q8(A){return parseInt(A,16)}function wmQ(A){return typeof A=="string"&&A.indexOf(".")!=-1&&parseFloat(A)===1}function jmQ(A){return typeof A==="string"&&A.indexOf("%")!=-1}function KC(A){return A.length==1?"0"+A:""+A}function GI(A){if(A<=1)A=A*100+"%";return A}function XYA(A){return Math.round(parseFloat(A)*255).toString(16)}function JYA(A){return Q8(A)/255}var EC=function(){var A="[-\\+]?\\d+%?",Q="[-\\+]?\\d*\\.\\d+%?",B="(?:"+Q+")|(?:"+A+")",Y="[\\s|\\(]+("+B+")[,|\\s]+("+B+")[,|\\s]+("+B+")\\s*\\)?",J="[\\s|\\(]+("+B+")[,|\\s]+("+B+")[,|\\s]+("+B+")[,|\\s]+("+B+")\\s*\\)?";return{CSS_UNIT:new RegExp(B),rgb:new RegExp("rgb"+Y),rgba:new RegExp("rgba"+J),hsl:new RegExp("hsl"+Y),hsla:new RegExp("hsla"+J),hsv:new RegExp("hsv"+Y),hsva:new RegExp("hsva"+J),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/}}();function cX(A){return!!EC.CSS_UNIT.exec(A)}function OmQ(A){A=A.replace(CmQ,"").replace(XmQ,"").toLowerCase();var Q=!1;if(kv[A])A=kv[A],Q=!0;else if(A=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var B;if(B=EC.rgb.exec(A))return{r:B[1],g:B[2],b:B[3]};if(B=EC.rgba.exec(A))return{r:B[1],g:B[2],b:B[3],a:B[4]};if(B=EC.hsl.exec(A))return{h:B[1],s:B[2],l:B[3]};if(B=EC.hsla.exec(A))return{h:B[1],s:B[2],l:B[3],a:B[4]};if(B=EC.hsv.exec(A))return{h:B[1],s:B[2],v:B[3]};if(B=EC.hsva.exec(A))return{h:B[1],s:B[2],v:B[3],a:B[4]};if(B=EC.hex8.exec(A))return{r:Q8(B[1]),g:Q8(B[2]),b:Q8(B[3]),a:JYA(B[4]),format:Q?"name":"hex8"};if(B=EC.hex6.exec(A))return{r:Q8(B[1]),g:Q8(B[2]),b:Q8(B[3]),format:Q?"name":"hex"};if(B=EC.hex4.exec(A))return{r:Q8(B[1]+""+B[1]),g:Q8(B[2]+""+B[2]),b:Q8(B[3]+""+B[3]),a:JYA(B[4]+""+B[4]),format:Q?"name":"hex8"};if(B=EC.hex3.exec(A))return{r:Q8(B[1]+""+B[1]),g:Q8(B[2]+""+B[2]),b:Q8(B[3]+""+B[3]),format:Q?"name":"hex"};return!1}function PmQ(A){var Q,B;if(A=A||{level:"AA",size:"small"},Q=(A.level||"AA").toUpperCase(),B=(A.size||"small").toLowerCase(),Q!=="AA"&&Q!=="AAA")Q="AA";if(B!=="small"&&B!=="large")B="small";return{level:Q,size:B}}function B8(A){let Q={width:A.bitmap.width,height:A.bitmap.height,data:Buffer.from(A.bitmap.data)};return new A.constructor(Q)}function o8(A,Q,B,Y,J,C){let X,G,F,W,Z;if(typeof Q==="function")Z=Q,X=0,G=0,F=A.bitmap.width,W=A.bitmap.height;else{if(X=Q,typeof B!=="number")throw Error("y must be a number");if(G=B,typeof Y!=="number")throw Error("w must be a number");if(F=Y,typeof J!=="number")throw Error("h must be a number");if(W=J,typeof C!=="function")throw Error("cb must be a function");Z=C}X=Math.round(X),G=Math.round(G),F=Math.round(F),W=Math.round(W);let U=Z.bind(A);for(let $=G;$Math.pow(G,2),{max:Y}=Math,J=195075,C="a"in A?A.a:255,X="a"in Q?Q.a:255;return(Y(B(A.r-Q.r),B(A.r-Q.r-C+X))+Y(B(A.g-Q.g),B(A.g-Q.g-C+X))+Y(B(A.b-Q.b),B(A.b-Q.b-C+X)))/195075}function N0(A){return A=Math.max(A,0),A=Math.min(A,255),A}function FYA(A){if(typeof A==="number")return A;return parseInt(aA(A).toHex8(),16)}function WYA(A,Q={}){return o8({bitmap:A},0,0,A.width,A.height,function(B,Y,J){let C=A.data[J+0],X=A.data[J+1],G=A.data[J+2],F=A.data[J+3];A.data[J+0]=F,A.data[J+1]=G,A.data[J+2]=X,A.data[J+3]=C}),t0A({...A,...Q}).data}function ZYA(A,Q){let B=o0A(A,Q);return o8({bitmap:B},0,0,B.width,B.height,function(Y,J,C){let X=B.data[C+1],G=B.data[C+2],F=B.data[C+3];B.data[C+0]=F,B.data[C+1]=G,B.data[C+2]=X,B.data[C+3]=255}),B}function $YA(){return{mime:"image/x-ms-bmp",encode:WYA,decode:ZYA}}function hz(){return{mime:"image/bmp",encode:WYA,decode:ZYA}}var VJA=qA(_v(),1),n6=qA(KJA(),1);function nz(){return{mime:"image/gif",encode:async(A)=>{let Q=new n6.BitmapImage(A);n6.GifUtil.quantizeDekker(Q,256);let B=new n6.GifFrame(A);return(await new n6.GifCodec().encodeGif([B],{})).buffer},decode:(A)=>{let Q=new VJA.default.GifReader(A),B=Buffer.alloc(Q.width*Q.height*4);return Q.decodeAndBlitFrameRGBA(0,B),{data:B,width:Q.width,height:Q.height}}}}var iv=qA(MJA(),1);function rz(){return{mime:"image/jpeg",encode:(A,{quality:Q=100}={})=>iv.default.encode(A,Q).data,decode:(A,Q)=>iv.default.decode(A,Q)}}var oz=qA(K9A(),1);var az;(function(A){A[A.AUTO=-1]="AUTO",A[A.NONE=0]="NONE",A[A.SUB=1]="SUB",A[A.UP=2]="UP",A[A.AVERAGE=3]="AVERAGE",A[A.PATH=4]="PATH"})(az||(az={}));var DI;(function(A){A[A.GRAYSCALE=0]="GRAYSCALE",A[A.COLOR=2]="COLOR",A[A.GRAYSCALE_ALPHA=4]="GRAYSCALE_ALPHA",A[A.COLOR_ALPHA=6]="COLOR_ALPHA"})(DI||(DI={}));function tz(){return{mime:"image/png",hasAlpha:!0,encode:(A,{deflateLevel:Q=9,deflateStrategy:B=3,filterType:Y=az.AUTO,colorType:J,inputHasAlpha:C=!0,...X}={})=>{let G=new oz.PNG({width:A.width,height:A.height});return G.data=A.data,oz.PNG.sync.write(G,{...X,deflateLevel:Q,deflateStrategy:B,filterType:Y,colorType:typeof J<"u"?J:C?DI.COLOR_ALPHA:DI.COLOR,inputHasAlpha:C})},decode:(A,Q)=>{let B=oz.PNG.sync.read(A,Q);return{data:B.data,width:B.width,height:B.height}}}}var vI=qA(Y5A(),1);function J5A(A){if(typeof A==="number")return A;if(A instanceof Uint8Array)return A[0];if(typeof A[0]==="string")return parseInt(A[0]);return A[0]}function V2(){return{mime:"image/tiff",encode:(A)=>{let Q=vI.default.encodeImage(A.data,A.width,A.height);return Buffer.from(Q)},decode:(A)=>{let Q=vI.default.decode(A),B=Q[0];if(!B)throw Error("No page found in TIFF");if(!B.t256)throw Error("No image width found in TIFF");if(!B.t257)throw Error("No image height found in TIFF");Q.forEach((J)=>{vI.default.decodeImage(A,J)});let Y=vI.default.toRGBA8(B);return{data:Buffer.from(Y),width:J5A(B.t256),height:J5A(B.t257)}}}}var s={};x6(s,{void:()=>kiQ,util:()=>FB,unknown:()=>TiQ,union:()=>giQ,undefined:()=>jiQ,tuple:()=>fiQ,transformer:()=>siQ,symbol:()=>wiQ,string:()=>E5A,strictObject:()=>yiQ,setErrorMap:()=>apQ,set:()=>uiQ,record:()=>biQ,quotelessJson:()=>spQ,promise:()=>niQ,preprocess:()=>oiQ,pipeline:()=>tiQ,ostring:()=>eiQ,optional:()=>riQ,onumber:()=>AnQ,oboolean:()=>QnQ,objectUtil:()=>cy,object:()=>viQ,number:()=>K5A,nullable:()=>aiQ,null:()=>OiQ,never:()=>SiQ,nativeEnum:()=>iiQ,nan:()=>MiQ,map:()=>miQ,makeIssue:()=>yI,literal:()=>liQ,lazy:()=>ciQ,late:()=>LiQ,isValid:()=>B7,isDirty:()=>H2,isAsync:()=>a4,isAborted:()=>I2,intersection:()=>xiQ,instanceof:()=>qiQ,getParsedType:()=>k1,getErrorMap:()=>r4,function:()=>diQ,enum:()=>piQ,effect:()=>siQ,discriminatedUnion:()=>hiQ,defaultErrorMap:()=>aX,datetimeRegex:()=>Z5A,date:()=>RiQ,custom:()=>U5A,coerce:()=>BnQ,boolean:()=>V5A,bigint:()=>ziQ,array:()=>_iQ,any:()=>PiQ,addIssueToContext:()=>xA,ZodVoid:()=>hI,ZodUnknown:()=>Y7,ZodUnion:()=>BU,ZodUndefined:()=>AU,ZodType:()=>JB,ZodTuple:()=>v1,ZodTransformer:()=>MC,ZodSymbol:()=>gI,ZodString:()=>DC,ZodSet:()=>fW,ZodSchema:()=>JB,ZodRecord:()=>xI,ZodReadonly:()=>WU,ZodPromise:()=>bW,ZodPipeline:()=>mI,ZodParsedType:()=>kA,ZodOptional:()=>LC,ZodObject:()=>O0,ZodNumber:()=>J7,ZodNullable:()=>tX,ZodNull:()=>QU,ZodNever:()=>_1,ZodNativeEnum:()=>XU,ZodNaN:()=>bI,ZodMap:()=>fI,ZodLiteral:()=>CU,ZodLazy:()=>JU,ZodIssueCode:()=>RA,ZodIntersection:()=>YU,ZodFunction:()=>t4,ZodFirstPartyTypeKind:()=>zQ,ZodError:()=>z9,ZodEnum:()=>X7,ZodEffects:()=>MC,ZodDiscriminatedUnion:()=>D2,ZodDefault:()=>GU,ZodDate:()=>hW,ZodCatch:()=>FU,ZodBranded:()=>N2,ZodBoolean:()=>e4,ZodBigInt:()=>C7,ZodArray:()=>NC,ZodAny:()=>xW,Schema:()=>JB,ParseStatus:()=>AJ,OK:()=>VJ,NEVER:()=>YnQ,INVALID:()=>LQ,EMPTY_PATH:()=>opQ,DIRTY:()=>gW,BRAND:()=>NiQ});var FB;(function(A){A.assertEqual=(J)=>{};function Q(J){}A.assertIs=Q;function B(J){throw Error()}A.assertNever=B,A.arrayToEnum=(J)=>{let C={};for(let X of J)C[X]=X;return C},A.getValidEnumValues=(J)=>{let C=A.objectKeys(J).filter((G)=>typeof J[J[G]]!=="number"),X={};for(let G of C)X[G]=J[G];return A.objectValues(X)},A.objectValues=(J)=>{return A.objectKeys(J).map(function(C){return J[C]})},A.objectKeys=typeof Object.keys==="function"?(J)=>Object.keys(J):(J)=>{let C=[];for(let X in J)if(Object.prototype.hasOwnProperty.call(J,X))C.push(X);return C},A.find=(J,C)=>{for(let X of J)if(C(X))return X;return},A.isInteger=typeof Number.isInteger==="function"?(J)=>Number.isInteger(J):(J)=>typeof J==="number"&&Number.isFinite(J)&&Math.floor(J)===J;function Y(J,C=" | "){return J.map((X)=>typeof X==="string"?`'${X}'`:X).join(C)}A.joinValues=Y,A.jsonStringifyReplacer=(J,C)=>{if(typeof C==="bigint")return C.toString();return C}})(FB||(FB={}));var cy;(function(A){A.mergeShapes=(Q,B)=>{return{...Q,...B}}})(cy||(cy={}));var kA=FB.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),k1=(A)=>{switch(typeof A){case"undefined":return kA.undefined;case"string":return kA.string;case"number":return Number.isNaN(A)?kA.nan:kA.number;case"boolean":return kA.boolean;case"function":return kA.function;case"bigint":return kA.bigint;case"symbol":return kA.symbol;case"object":if(Array.isArray(A))return kA.array;if(A===null)return kA.null;if(A.then&&typeof A.then==="function"&&A.catch&&typeof A.catch==="function")return kA.promise;if(typeof Map<"u"&&A instanceof Map)return kA.map;if(typeof Set<"u"&&A instanceof Set)return kA.set;if(typeof Date<"u"&&A instanceof Date)return kA.date;return kA.object;default:return kA.unknown}};var RA=FB.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),spQ=(A)=>{return JSON.stringify(A,null,2).replace(/"([^"]+)":/g,"$1:")};class z9 extends Error{get errors(){return this.issues}constructor(A){super();this.issues=[],this.addIssue=(B)=>{this.issues=[...this.issues,B]},this.addIssues=(B=[])=>{this.issues=[...this.issues,...B]};let Q=new.target.prototype;if(Object.setPrototypeOf)Object.setPrototypeOf(this,Q);else this.__proto__=Q;this.name="ZodError",this.issues=A}format(A){let Q=A||function(J){return J.message},B={_errors:[]},Y=(J)=>{for(let C of J.issues)if(C.code==="invalid_union")C.unionErrors.map(Y);else if(C.code==="invalid_return_type")Y(C.returnTypeError);else if(C.code==="invalid_arguments")Y(C.argumentsError);else if(C.path.length===0)B._errors.push(Q(C));else{let X=B,G=0;while(GQ.message){let Q={},B=[];for(let Y of this.issues)if(Y.path.length>0){let J=Y.path[0];Q[J]=Q[J]||[],Q[J].push(A(Y))}else B.push(A(Y));return{formErrors:B,fieldErrors:Q}}get formErrors(){return this.flatten()}}z9.create=(A)=>{return new z9(A)};var rpQ=(A,Q)=>{let B;switch(A.code){case RA.invalid_type:if(A.received===kA.undefined)B="Required";else B=`Expected ${A.expected}, received ${A.received}`;break;case RA.invalid_literal:B=`Invalid literal value, expected ${JSON.stringify(A.expected,FB.jsonStringifyReplacer)}`;break;case RA.unrecognized_keys:B=`Unrecognized key(s) in object: ${FB.joinValues(A.keys,", ")}`;break;case RA.invalid_union:B="Invalid input";break;case RA.invalid_union_discriminator:B=`Invalid discriminator value. Expected ${FB.joinValues(A.options)}`;break;case RA.invalid_enum_value:B=`Invalid enum value. Expected ${FB.joinValues(A.options)}, received '${A.received}'`;break;case RA.invalid_arguments:B="Invalid function arguments";break;case RA.invalid_return_type:B="Invalid function return type";break;case RA.invalid_date:B="Invalid date";break;case RA.invalid_string:if(typeof A.validation==="object")if("includes"in A.validation){if(B=`Invalid input: must include "${A.validation.includes}"`,typeof A.validation.position==="number")B=`${B} at one or more positions greater than or equal to ${A.validation.position}`}else if("startsWith"in A.validation)B=`Invalid input: must start with "${A.validation.startsWith}"`;else if("endsWith"in A.validation)B=`Invalid input: must end with "${A.validation.endsWith}"`;else FB.assertNever(A.validation);else if(A.validation!=="regex")B=`Invalid ${A.validation}`;else B="Invalid";break;case RA.too_small:if(A.type==="array")B=`Array must contain ${A.exact?"exactly":A.inclusive?"at least":"more than"} ${A.minimum} element(s)`;else if(A.type==="string")B=`String must contain ${A.exact?"exactly":A.inclusive?"at least":"over"} ${A.minimum} character(s)`;else if(A.type==="number")B=`Number must be ${A.exact?"exactly equal to ":A.inclusive?"greater than or equal to ":"greater than "}${A.minimum}`;else if(A.type==="bigint")B=`Number must be ${A.exact?"exactly equal to ":A.inclusive?"greater than or equal to ":"greater than "}${A.minimum}`;else if(A.type==="date")B=`Date must be ${A.exact?"exactly equal to ":A.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(A.minimum))}`;else B="Invalid input";break;case RA.too_big:if(A.type==="array")B=`Array must contain ${A.exact?"exactly":A.inclusive?"at most":"less than"} ${A.maximum} element(s)`;else if(A.type==="string")B=`String must contain ${A.exact?"exactly":A.inclusive?"at most":"under"} ${A.maximum} character(s)`;else if(A.type==="number")B=`Number must be ${A.exact?"exactly":A.inclusive?"less than or equal to":"less than"} ${A.maximum}`;else if(A.type==="bigint")B=`BigInt must be ${A.exact?"exactly":A.inclusive?"less than or equal to":"less than"} ${A.maximum}`;else if(A.type==="date")B=`Date must be ${A.exact?"exactly":A.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(A.maximum))}`;else B="Invalid input";break;case RA.custom:B="Invalid input";break;case RA.invalid_intersection_types:B="Intersection results could not be merged";break;case RA.not_multiple_of:B=`Number must be a multiple of ${A.multipleOf}`;break;case RA.not_finite:B="Number must be finite";break;default:B=Q.defaultError,FB.assertNever(A)}return{message:B}},aX=rpQ;var C5A=aX;function apQ(A){C5A=A}function r4(){return C5A}var yI=(A)=>{let{data:Q,path:B,errorMaps:Y,issueData:J}=A,C=[...B,...J.path||[]],X={...J,path:C};if(J.message!==void 0)return{...J,path:C,message:J.message};let G="",F=Y.filter((W)=>!!W).slice().reverse();for(let W of F)G=W(X,{data:Q,defaultError:G}).message;return{...J,path:C,message:G}},opQ=[];function xA(A,Q){let B=r4(),Y=yI({issueData:Q,data:A.data,path:A.path,errorMaps:[A.common.contextualErrorMap,A.schemaErrorMap,B,B===aX?void 0:aX].filter((J)=>!!J)});A.common.issues.push(Y)}class AJ{constructor(){this.value="valid"}dirty(){if(this.value==="valid")this.value="dirty"}abort(){if(this.value!=="aborted")this.value="aborted"}static mergeArray(A,Q){let B=[];for(let Y of Q){if(Y.status==="aborted")return LQ;if(Y.status==="dirty")A.dirty();B.push(Y.value)}return{status:A.value,value:B}}static async mergeObjectAsync(A,Q){let B=[];for(let Y of Q){let J=await Y.key,C=await Y.value;B.push({key:J,value:C})}return AJ.mergeObjectSync(A,B)}static mergeObjectSync(A,Q){let B={};for(let Y of Q){let{key:J,value:C}=Y;if(J.status==="aborted")return LQ;if(C.status==="aborted")return LQ;if(J.status==="dirty")A.dirty();if(C.status==="dirty")A.dirty();if(J.value!=="__proto__"&&(typeof C.value<"u"||Y.alwaysSet))B[J.value]=C.value}return{status:A.value,value:B}}}var LQ=Object.freeze({status:"aborted"}),gW=(A)=>({status:"dirty",value:A}),VJ=(A)=>({status:"valid",value:A}),I2=(A)=>A.status==="aborted",H2=(A)=>A.status==="dirty",B7=(A)=>A.status==="valid",a4=(A)=>typeof Promise<"u"&&A instanceof Promise;var oA;(function(A){A.errToObj=(Q)=>typeof Q==="string"?{message:Q}:Q||{},A.toString=(Q)=>typeof Q==="string"?Q:Q?.message})(oA||(oA={}));class qC{constructor(A,Q,B,Y){this._cachedPath=[],this.parent=A,this.data=Q,this._path=B,this._key=Y}get path(){if(!this._cachedPath.length)if(Array.isArray(this._key))this._cachedPath.push(...this._path,...this._key);else this._cachedPath.push(...this._path,this._key);return this._cachedPath}}var X5A=(A,Q)=>{if(B7(Q))return{success:!0,data:Q.value};else{if(!A.common.issues.length)throw Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let B=new z9(A.common.issues);return this._error=B,this._error}}}};function pQ(A){if(!A)return{};let{errorMap:Q,invalid_type_error:B,required_error:Y,description:J}=A;if(Q&&(B||Y))throw Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);if(Q)return{errorMap:Q,description:J};return{errorMap:(X,G)=>{let{message:F}=A;if(X.code==="invalid_enum_value")return{message:F??G.defaultError};if(typeof G.data>"u")return{message:F??Y??G.defaultError};if(X.code!=="invalid_type")return{message:G.defaultError};return{message:F??B??G.defaultError}},description:J}}class JB{get description(){return this._def.description}_getType(A){return k1(A.data)}_getOrReturnCtx(A,Q){return Q||{common:A.parent.common,data:A.data,parsedType:k1(A.data),schemaErrorMap:this._def.errorMap,path:A.path,parent:A.parent}}_processInputParams(A){return{status:new AJ,ctx:{common:A.parent.common,data:A.data,parsedType:k1(A.data),schemaErrorMap:this._def.errorMap,path:A.path,parent:A.parent}}}_parseSync(A){let Q=this._parse(A);if(a4(Q))throw Error("Synchronous parse encountered promise.");return Q}_parseAsync(A){let Q=this._parse(A);return Promise.resolve(Q)}parse(A,Q){let B=this.safeParse(A,Q);if(B.success)return B.data;throw B.error}safeParse(A,Q){let B={common:{issues:[],async:Q?.async??!1,contextualErrorMap:Q?.errorMap},path:Q?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:A,parsedType:k1(A)},Y=this._parseSync({data:A,path:B.path,parent:B});return X5A(B,Y)}"~validate"(A){let Q={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:A,parsedType:k1(A)};if(!this["~standard"].async)try{let B=this._parseSync({data:A,path:[],parent:Q});return B7(B)?{value:B.value}:{issues:Q.common.issues}}catch(B){if(B?.message?.toLowerCase()?.includes("encountered"))this["~standard"].async=!0;Q.common={issues:[],async:!0}}return this._parseAsync({data:A,path:[],parent:Q}).then((B)=>B7(B)?{value:B.value}:{issues:Q.common.issues})}async parseAsync(A,Q){let B=await this.safeParseAsync(A,Q);if(B.success)return B.data;throw B.error}async safeParseAsync(A,Q){let B={common:{issues:[],contextualErrorMap:Q?.errorMap,async:!0},path:Q?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:A,parsedType:k1(A)},Y=this._parse({data:A,path:B.path,parent:B}),J=await(a4(Y)?Y:Promise.resolve(Y));return X5A(B,J)}refine(A,Q){let B=(Y)=>{if(typeof Q==="string"||typeof Q>"u")return{message:Q};else if(typeof Q==="function")return Q(Y);else return Q};return this._refinement((Y,J)=>{let C=A(Y),X=()=>J.addIssue({code:RA.custom,...B(Y)});if(typeof Promise<"u"&&C instanceof Promise)return C.then((G)=>{if(!G)return X(),!1;else return!0});if(!C)return X(),!1;else return!0})}refinement(A,Q){return this._refinement((B,Y)=>{if(!A(B))return Y.addIssue(typeof Q==="function"?Q(B,Y):Q),!1;else return!0})}_refinement(A){return new MC({schema:this,typeName:zQ.ZodEffects,effect:{type:"refinement",refinement:A}})}superRefine(A){return this._refinement(A)}constructor(A){this.spa=this.safeParseAsync,this._def=A,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:(Q)=>this["~validate"](Q)}}optional(){return LC.create(this,this._def)}nullable(){return tX.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return NC.create(this)}promise(){return bW.create(this,this._def)}or(A){return BU.create([this,A],this._def)}and(A){return YU.create(this,A,this._def)}transform(A){return new MC({...pQ(this._def),schema:this,typeName:zQ.ZodEffects,effect:{type:"transform",transform:A}})}default(A){let Q=typeof A==="function"?A:()=>A;return new GU({...pQ(this._def),innerType:this,defaultValue:Q,typeName:zQ.ZodDefault})}brand(){return new N2({typeName:zQ.ZodBranded,type:this,...pQ(this._def)})}catch(A){let Q=typeof A==="function"?A:()=>A;return new FU({...pQ(this._def),innerType:this,catchValue:Q,typeName:zQ.ZodCatch})}describe(A){return new this.constructor({...this._def,description:A})}pipe(A){return mI.create(this,A)}readonly(){return WU.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}var tpQ=/^c[^\s-]{8,}$/i,epQ=/^[0-9a-z]+$/,AiQ=/^[0-9A-HJKMNP-TV-Z]{26}$/i,QiQ=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,BiQ=/^[a-z0-9_-]{21}$/i,YiQ=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,JiQ=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,CiQ=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,XiQ="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",ly,GiQ=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,FiQ=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,WiQ=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,ZiQ=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,$iQ=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,UiQ=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,F5A="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",EiQ=new RegExp(`^${F5A}$`);function W5A(A){let Q="[0-5]\\d";if(A.precision)Q=`${Q}\\.\\d{${A.precision}}`;else if(A.precision==null)Q=`${Q}(\\.\\d+)?`;let B=A.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${Q})${B}`}function KiQ(A){return new RegExp(`^${W5A(A)}$`)}function Z5A(A){let Q=`${F5A}T${W5A(A)}`,B=[];if(B.push(A.local?"Z?":"Z"),A.offset)B.push("([+-]\\d{2}:?\\d{2})");return Q=`${Q}(${B.join("|")})`,new RegExp(`^${Q}$`)}function ViQ(A,Q){if((Q==="v4"||!Q)&&GiQ.test(A))return!0;if((Q==="v6"||!Q)&&WiQ.test(A))return!0;return!1}function IiQ(A,Q){if(!YiQ.test(A))return!1;try{let[B]=A.split(".");if(!B)return!1;let Y=B.replace(/-/g,"+").replace(/_/g,"/").padEnd(B.length+(4-B.length%4)%4,"="),J=JSON.parse(atob(Y));if(typeof J!=="object"||J===null)return!1;if("typ"in J&&J?.typ!=="JWT")return!1;if(!J.alg)return!1;if(Q&&J.alg!==Q)return!1;return!0}catch{return!1}}function HiQ(A,Q){if((Q==="v4"||!Q)&&FiQ.test(A))return!0;if((Q==="v6"||!Q)&&ZiQ.test(A))return!0;return!1}class DC extends JB{_parse(A){if(this._def.coerce)A.data=String(A.data);if(this._getType(A)!==kA.string){let J=this._getOrReturnCtx(A);return xA(J,{code:RA.invalid_type,expected:kA.string,received:J.parsedType}),LQ}let B=new AJ,Y=void 0;for(let J of this._def.checks)if(J.kind==="min"){if(A.data.lengthJ.value)Y=this._getOrReturnCtx(A,Y),xA(Y,{code:RA.too_big,maximum:J.value,type:"string",inclusive:!0,exact:!1,message:J.message}),B.dirty()}else if(J.kind==="length"){let C=A.data.length>J.value,X=A.data.lengthA.test(Y),{validation:Q,code:RA.invalid_string,...oA.errToObj(B)})}_addCheck(A){return new DC({...this._def,checks:[...this._def.checks,A]})}email(A){return this._addCheck({kind:"email",...oA.errToObj(A)})}url(A){return this._addCheck({kind:"url",...oA.errToObj(A)})}emoji(A){return this._addCheck({kind:"emoji",...oA.errToObj(A)})}uuid(A){return this._addCheck({kind:"uuid",...oA.errToObj(A)})}nanoid(A){return this._addCheck({kind:"nanoid",...oA.errToObj(A)})}cuid(A){return this._addCheck({kind:"cuid",...oA.errToObj(A)})}cuid2(A){return this._addCheck({kind:"cuid2",...oA.errToObj(A)})}ulid(A){return this._addCheck({kind:"ulid",...oA.errToObj(A)})}base64(A){return this._addCheck({kind:"base64",...oA.errToObj(A)})}base64url(A){return this._addCheck({kind:"base64url",...oA.errToObj(A)})}jwt(A){return this._addCheck({kind:"jwt",...oA.errToObj(A)})}ip(A){return this._addCheck({kind:"ip",...oA.errToObj(A)})}cidr(A){return this._addCheck({kind:"cidr",...oA.errToObj(A)})}datetime(A){if(typeof A==="string")return this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:A});return this._addCheck({kind:"datetime",precision:typeof A?.precision>"u"?null:A?.precision,offset:A?.offset??!1,local:A?.local??!1,...oA.errToObj(A?.message)})}date(A){return this._addCheck({kind:"date",message:A})}time(A){if(typeof A==="string")return this._addCheck({kind:"time",precision:null,message:A});return this._addCheck({kind:"time",precision:typeof A?.precision>"u"?null:A?.precision,...oA.errToObj(A?.message)})}duration(A){return this._addCheck({kind:"duration",...oA.errToObj(A)})}regex(A,Q){return this._addCheck({kind:"regex",regex:A,...oA.errToObj(Q)})}includes(A,Q){return this._addCheck({kind:"includes",value:A,position:Q?.position,...oA.errToObj(Q?.message)})}startsWith(A,Q){return this._addCheck({kind:"startsWith",value:A,...oA.errToObj(Q)})}endsWith(A,Q){return this._addCheck({kind:"endsWith",value:A,...oA.errToObj(Q)})}min(A,Q){return this._addCheck({kind:"min",value:A,...oA.errToObj(Q)})}max(A,Q){return this._addCheck({kind:"max",value:A,...oA.errToObj(Q)})}length(A,Q){return this._addCheck({kind:"length",value:A,...oA.errToObj(Q)})}nonempty(A){return this.min(1,oA.errToObj(A))}trim(){return new DC({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new DC({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new DC({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find((A)=>A.kind==="datetime")}get isDate(){return!!this._def.checks.find((A)=>A.kind==="date")}get isTime(){return!!this._def.checks.find((A)=>A.kind==="time")}get isDuration(){return!!this._def.checks.find((A)=>A.kind==="duration")}get isEmail(){return!!this._def.checks.find((A)=>A.kind==="email")}get isURL(){return!!this._def.checks.find((A)=>A.kind==="url")}get isEmoji(){return!!this._def.checks.find((A)=>A.kind==="emoji")}get isUUID(){return!!this._def.checks.find((A)=>A.kind==="uuid")}get isNANOID(){return!!this._def.checks.find((A)=>A.kind==="nanoid")}get isCUID(){return!!this._def.checks.find((A)=>A.kind==="cuid")}get isCUID2(){return!!this._def.checks.find((A)=>A.kind==="cuid2")}get isULID(){return!!this._def.checks.find((A)=>A.kind==="ulid")}get isIP(){return!!this._def.checks.find((A)=>A.kind==="ip")}get isCIDR(){return!!this._def.checks.find((A)=>A.kind==="cidr")}get isBase64(){return!!this._def.checks.find((A)=>A.kind==="base64")}get isBase64url(){return!!this._def.checks.find((A)=>A.kind==="base64url")}get minLength(){let A=null;for(let Q of this._def.checks)if(Q.kind==="min"){if(A===null||Q.value>A)A=Q.value}return A}get maxLength(){let A=null;for(let Q of this._def.checks)if(Q.kind==="max"){if(A===null||Q.value{return new DC({checks:[],typeName:zQ.ZodString,coerce:A?.coerce??!1,...pQ(A)})};function DiQ(A,Q){let B=(A.toString().split(".")[1]||"").length,Y=(Q.toString().split(".")[1]||"").length,J=B>Y?B:Y,C=Number.parseInt(A.toFixed(J).replace(".","")),X=Number.parseInt(Q.toFixed(J).replace(".",""));return C%X/10**J}class J7 extends JB{constructor(){super(...arguments);this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(A){if(this._def.coerce)A.data=Number(A.data);if(this._getType(A)!==kA.number){let J=this._getOrReturnCtx(A);return xA(J,{code:RA.invalid_type,expected:kA.number,received:J.parsedType}),LQ}let B=void 0,Y=new AJ;for(let J of this._def.checks)if(J.kind==="int"){if(!FB.isInteger(A.data))B=this._getOrReturnCtx(A,B),xA(B,{code:RA.invalid_type,expected:"integer",received:"float",message:J.message}),Y.dirty()}else if(J.kind==="min"){if(J.inclusive?A.dataJ.value:A.data>=J.value)B=this._getOrReturnCtx(A,B),xA(B,{code:RA.too_big,maximum:J.value,type:"number",inclusive:J.inclusive,exact:!1,message:J.message}),Y.dirty()}else if(J.kind==="multipleOf"){if(DiQ(A.data,J.value)!==0)B=this._getOrReturnCtx(A,B),xA(B,{code:RA.not_multiple_of,multipleOf:J.value,message:J.message}),Y.dirty()}else if(J.kind==="finite"){if(!Number.isFinite(A.data))B=this._getOrReturnCtx(A,B),xA(B,{code:RA.not_finite,message:J.message}),Y.dirty()}else FB.assertNever(J);return{status:Y.value,value:A.data}}gte(A,Q){return this.setLimit("min",A,!0,oA.toString(Q))}gt(A,Q){return this.setLimit("min",A,!1,oA.toString(Q))}lte(A,Q){return this.setLimit("max",A,!0,oA.toString(Q))}lt(A,Q){return this.setLimit("max",A,!1,oA.toString(Q))}setLimit(A,Q,B,Y){return new J7({...this._def,checks:[...this._def.checks,{kind:A,value:Q,inclusive:B,message:oA.toString(Y)}]})}_addCheck(A){return new J7({...this._def,checks:[...this._def.checks,A]})}int(A){return this._addCheck({kind:"int",message:oA.toString(A)})}positive(A){return this._addCheck({kind:"min",value:0,inclusive:!1,message:oA.toString(A)})}negative(A){return this._addCheck({kind:"max",value:0,inclusive:!1,message:oA.toString(A)})}nonpositive(A){return this._addCheck({kind:"max",value:0,inclusive:!0,message:oA.toString(A)})}nonnegative(A){return this._addCheck({kind:"min",value:0,inclusive:!0,message:oA.toString(A)})}multipleOf(A,Q){return this._addCheck({kind:"multipleOf",value:A,message:oA.toString(Q)})}finite(A){return this._addCheck({kind:"finite",message:oA.toString(A)})}safe(A){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:oA.toString(A)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:oA.toString(A)})}get minValue(){let A=null;for(let Q of this._def.checks)if(Q.kind==="min"){if(A===null||Q.value>A)A=Q.value}return A}get maxValue(){let A=null;for(let Q of this._def.checks)if(Q.kind==="max"){if(A===null||Q.valueA.kind==="int"||A.kind==="multipleOf"&&FB.isInteger(A.value))}get isFinite(){let A=null,Q=null;for(let B of this._def.checks)if(B.kind==="finite"||B.kind==="int"||B.kind==="multipleOf")return!0;else if(B.kind==="min"){if(Q===null||B.value>Q)Q=B.value}else if(B.kind==="max"){if(A===null||B.value{return new J7({checks:[],typeName:zQ.ZodNumber,coerce:A?.coerce||!1,...pQ(A)})};class C7 extends JB{constructor(){super(...arguments);this.min=this.gte,this.max=this.lte}_parse(A){if(this._def.coerce)try{A.data=BigInt(A.data)}catch{return this._getInvalidInput(A)}if(this._getType(A)!==kA.bigint)return this._getInvalidInput(A);let B=void 0,Y=new AJ;for(let J of this._def.checks)if(J.kind==="min"){if(J.inclusive?A.dataJ.value:A.data>=J.value)B=this._getOrReturnCtx(A,B),xA(B,{code:RA.too_big,type:"bigint",maximum:J.value,inclusive:J.inclusive,message:J.message}),Y.dirty()}else if(J.kind==="multipleOf"){if(A.data%J.value!==BigInt(0))B=this._getOrReturnCtx(A,B),xA(B,{code:RA.not_multiple_of,multipleOf:J.value,message:J.message}),Y.dirty()}else FB.assertNever(J);return{status:Y.value,value:A.data}}_getInvalidInput(A){let Q=this._getOrReturnCtx(A);return xA(Q,{code:RA.invalid_type,expected:kA.bigint,received:Q.parsedType}),LQ}gte(A,Q){return this.setLimit("min",A,!0,oA.toString(Q))}gt(A,Q){return this.setLimit("min",A,!1,oA.toString(Q))}lte(A,Q){return this.setLimit("max",A,!0,oA.toString(Q))}lt(A,Q){return this.setLimit("max",A,!1,oA.toString(Q))}setLimit(A,Q,B,Y){return new C7({...this._def,checks:[...this._def.checks,{kind:A,value:Q,inclusive:B,message:oA.toString(Y)}]})}_addCheck(A){return new C7({...this._def,checks:[...this._def.checks,A]})}positive(A){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:oA.toString(A)})}negative(A){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:oA.toString(A)})}nonpositive(A){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:oA.toString(A)})}nonnegative(A){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:oA.toString(A)})}multipleOf(A,Q){return this._addCheck({kind:"multipleOf",value:A,message:oA.toString(Q)})}get minValue(){let A=null;for(let Q of this._def.checks)if(Q.kind==="min"){if(A===null||Q.value>A)A=Q.value}return A}get maxValue(){let A=null;for(let Q of this._def.checks)if(Q.kind==="max"){if(A===null||Q.value{return new C7({checks:[],typeName:zQ.ZodBigInt,coerce:A?.coerce??!1,...pQ(A)})};class e4 extends JB{_parse(A){if(this._def.coerce)A.data=Boolean(A.data);if(this._getType(A)!==kA.boolean){let B=this._getOrReturnCtx(A);return xA(B,{code:RA.invalid_type,expected:kA.boolean,received:B.parsedType}),LQ}return VJ(A.data)}}e4.create=(A)=>{return new e4({typeName:zQ.ZodBoolean,coerce:A?.coerce||!1,...pQ(A)})};class hW extends JB{_parse(A){if(this._def.coerce)A.data=new Date(A.data);if(this._getType(A)!==kA.date){let J=this._getOrReturnCtx(A);return xA(J,{code:RA.invalid_type,expected:kA.date,received:J.parsedType}),LQ}if(Number.isNaN(A.data.getTime())){let J=this._getOrReturnCtx(A);return xA(J,{code:RA.invalid_date}),LQ}let B=new AJ,Y=void 0;for(let J of this._def.checks)if(J.kind==="min"){if(A.data.getTime()J.value)Y=this._getOrReturnCtx(A,Y),xA(Y,{code:RA.too_big,message:J.message,inclusive:!0,exact:!1,maximum:J.value,type:"date"}),B.dirty()}else FB.assertNever(J);return{status:B.value,value:new Date(A.data.getTime())}}_addCheck(A){return new hW({...this._def,checks:[...this._def.checks,A]})}min(A,Q){return this._addCheck({kind:"min",value:A.getTime(),message:oA.toString(Q)})}max(A,Q){return this._addCheck({kind:"max",value:A.getTime(),message:oA.toString(Q)})}get minDate(){let A=null;for(let Q of this._def.checks)if(Q.kind==="min"){if(A===null||Q.value>A)A=Q.value}return A!=null?new Date(A):null}get maxDate(){let A=null;for(let Q of this._def.checks)if(Q.kind==="max"){if(A===null||Q.value{return new hW({checks:[],coerce:A?.coerce||!1,typeName:zQ.ZodDate,...pQ(A)})};class gI extends JB{_parse(A){if(this._getType(A)!==kA.symbol){let B=this._getOrReturnCtx(A);return xA(B,{code:RA.invalid_type,expected:kA.symbol,received:B.parsedType}),LQ}return VJ(A.data)}}gI.create=(A)=>{return new gI({typeName:zQ.ZodSymbol,...pQ(A)})};class AU extends JB{_parse(A){if(this._getType(A)!==kA.undefined){let B=this._getOrReturnCtx(A);return xA(B,{code:RA.invalid_type,expected:kA.undefined,received:B.parsedType}),LQ}return VJ(A.data)}}AU.create=(A)=>{return new AU({typeName:zQ.ZodUndefined,...pQ(A)})};class QU extends JB{_parse(A){if(this._getType(A)!==kA.null){let B=this._getOrReturnCtx(A);return xA(B,{code:RA.invalid_type,expected:kA.null,received:B.parsedType}),LQ}return VJ(A.data)}}QU.create=(A)=>{return new QU({typeName:zQ.ZodNull,...pQ(A)})};class xW extends JB{constructor(){super(...arguments);this._any=!0}_parse(A){return VJ(A.data)}}xW.create=(A)=>{return new xW({typeName:zQ.ZodAny,...pQ(A)})};class Y7 extends JB{constructor(){super(...arguments);this._unknown=!0}_parse(A){return VJ(A.data)}}Y7.create=(A)=>{return new Y7({typeName:zQ.ZodUnknown,...pQ(A)})};class _1 extends JB{_parse(A){let Q=this._getOrReturnCtx(A);return xA(Q,{code:RA.invalid_type,expected:kA.never,received:Q.parsedType}),LQ}}_1.create=(A)=>{return new _1({typeName:zQ.ZodNever,...pQ(A)})};class hI extends JB{_parse(A){if(this._getType(A)!==kA.undefined){let B=this._getOrReturnCtx(A);return xA(B,{code:RA.invalid_type,expected:kA.void,received:B.parsedType}),LQ}return VJ(A.data)}}hI.create=(A)=>{return new hI({typeName:zQ.ZodVoid,...pQ(A)})};class NC extends JB{_parse(A){let{ctx:Q,status:B}=this._processInputParams(A),Y=this._def;if(Q.parsedType!==kA.array)return xA(Q,{code:RA.invalid_type,expected:kA.array,received:Q.parsedType}),LQ;if(Y.exactLength!==null){let C=Q.data.length>Y.exactLength.value,X=Q.data.lengthY.maxLength.value)xA(Q,{code:RA.too_big,maximum:Y.maxLength.value,type:"array",inclusive:!0,exact:!1,message:Y.maxLength.message}),B.dirty()}if(Q.common.async)return Promise.all([...Q.data].map((C,X)=>{return Y.type._parseAsync(new qC(Q,C,Q.path,X))})).then((C)=>{return AJ.mergeArray(B,C)});let J=[...Q.data].map((C,X)=>{return Y.type._parseSync(new qC(Q,C,Q.path,X))});return AJ.mergeArray(B,J)}get element(){return this._def.type}min(A,Q){return new NC({...this._def,minLength:{value:A,message:oA.toString(Q)}})}max(A,Q){return new NC({...this._def,maxLength:{value:A,message:oA.toString(Q)}})}length(A,Q){return new NC({...this._def,exactLength:{value:A,message:oA.toString(Q)}})}nonempty(A){return this.min(1,A)}}NC.create=(A,Q)=>{return new NC({type:A,minLength:null,maxLength:null,exactLength:null,typeName:zQ.ZodArray,...pQ(Q)})};function o4(A){if(A instanceof O0){let Q={};for(let B in A.shape){let Y=A.shape[B];Q[B]=LC.create(o4(Y))}return new O0({...A._def,shape:()=>Q})}else if(A instanceof NC)return new NC({...A._def,type:o4(A.element)});else if(A instanceof LC)return LC.create(o4(A.unwrap()));else if(A instanceof tX)return tX.create(o4(A.unwrap()));else if(A instanceof v1)return v1.create(A.items.map((Q)=>o4(Q)));else return A}class O0 extends JB{constructor(){super(...arguments);this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let A=this._def.shape(),Q=FB.objectKeys(A);return this._cached={shape:A,keys:Q},this._cached}_parse(A){if(this._getType(A)!==kA.object){let F=this._getOrReturnCtx(A);return xA(F,{code:RA.invalid_type,expected:kA.object,received:F.parsedType}),LQ}let{status:B,ctx:Y}=this._processInputParams(A),{shape:J,keys:C}=this._getCached(),X=[];if(!(this._def.catchall instanceof _1&&this._def.unknownKeys==="strip")){for(let F in Y.data)if(!C.includes(F))X.push(F)}let G=[];for(let F of C){let W=J[F],Z=Y.data[F];G.push({key:{status:"valid",value:F},value:W._parse(new qC(Y,Z,Y.path,F)),alwaysSet:F in Y.data})}if(this._def.catchall instanceof _1){let F=this._def.unknownKeys;if(F==="passthrough")for(let W of X)G.push({key:{status:"valid",value:W},value:{status:"valid",value:Y.data[W]}});else if(F==="strict"){if(X.length>0)xA(Y,{code:RA.unrecognized_keys,keys:X}),B.dirty()}else if(F==="strip");else throw Error("Internal ZodObject error: invalid unknownKeys value.")}else{let F=this._def.catchall;for(let W of X){let Z=Y.data[W];G.push({key:{status:"valid",value:W},value:F._parse(new qC(Y,Z,Y.path,W)),alwaysSet:W in Y.data})}}if(Y.common.async)return Promise.resolve().then(async()=>{let F=[];for(let W of G){let Z=await W.key,U=await W.value;F.push({key:Z,value:U,alwaysSet:W.alwaysSet})}return F}).then((F)=>{return AJ.mergeObjectSync(B,F)});else return AJ.mergeObjectSync(B,G)}get shape(){return this._def.shape()}strict(A){return oA.errToObj,new O0({...this._def,unknownKeys:"strict",...A!==void 0?{errorMap:(Q,B)=>{let Y=this._def.errorMap?.(Q,B).message??B.defaultError;if(Q.code==="unrecognized_keys")return{message:oA.errToObj(A).message??Y};return{message:Y}}}:{}})}strip(){return new O0({...this._def,unknownKeys:"strip"})}passthrough(){return new O0({...this._def,unknownKeys:"passthrough"})}extend(A){return new O0({...this._def,shape:()=>({...this._def.shape(),...A})})}merge(A){return new O0({unknownKeys:A._def.unknownKeys,catchall:A._def.catchall,shape:()=>({...this._def.shape(),...A._def.shape()}),typeName:zQ.ZodObject})}setKey(A,Q){return this.augment({[A]:Q})}catchall(A){return new O0({...this._def,catchall:A})}pick(A){let Q={};for(let B of FB.objectKeys(A))if(A[B]&&this.shape[B])Q[B]=this.shape[B];return new O0({...this._def,shape:()=>Q})}omit(A){let Q={};for(let B of FB.objectKeys(this.shape))if(!A[B])Q[B]=this.shape[B];return new O0({...this._def,shape:()=>Q})}deepPartial(){return o4(this)}partial(A){let Q={};for(let B of FB.objectKeys(this.shape)){let Y=this.shape[B];if(A&&!A[B])Q[B]=Y;else Q[B]=Y.optional()}return new O0({...this._def,shape:()=>Q})}required(A){let Q={};for(let B of FB.objectKeys(this.shape))if(A&&!A[B])Q[B]=this.shape[B];else{let J=this.shape[B];while(J instanceof LC)J=J._def.innerType;Q[B]=J}return new O0({...this._def,shape:()=>Q})}keyof(){return $5A(FB.objectKeys(this.shape))}}O0.create=(A,Q)=>{return new O0({shape:()=>A,unknownKeys:"strip",catchall:_1.create(),typeName:zQ.ZodObject,...pQ(Q)})};O0.strictCreate=(A,Q)=>{return new O0({shape:()=>A,unknownKeys:"strict",catchall:_1.create(),typeName:zQ.ZodObject,...pQ(Q)})};O0.lazycreate=(A,Q)=>{return new O0({shape:A,unknownKeys:"strip",catchall:_1.create(),typeName:zQ.ZodObject,...pQ(Q)})};class BU extends JB{_parse(A){let{ctx:Q}=this._processInputParams(A),B=this._def.options;function Y(J){for(let X of J)if(X.result.status==="valid")return X.result;for(let X of J)if(X.result.status==="dirty")return Q.common.issues.push(...X.ctx.common.issues),X.result;let C=J.map((X)=>new z9(X.ctx.common.issues));return xA(Q,{code:RA.invalid_union,unionErrors:C}),LQ}if(Q.common.async)return Promise.all(B.map(async(J)=>{let C={...Q,common:{...Q.common,issues:[]},parent:null};return{result:await J._parseAsync({data:Q.data,path:Q.path,parent:C}),ctx:C}})).then(Y);else{let J=void 0,C=[];for(let G of B){let F={...Q,common:{...Q.common,issues:[]},parent:null},W=G._parseSync({data:Q.data,path:Q.path,parent:F});if(W.status==="valid")return W;else if(W.status==="dirty"&&!J)J={result:W,ctx:F};if(F.common.issues.length)C.push(F.common.issues)}if(J)return Q.common.issues.push(...J.ctx.common.issues),J.result;let X=C.map((G)=>new z9(G));return xA(Q,{code:RA.invalid_union,unionErrors:X}),LQ}}get options(){return this._def.options}}BU.create=(A,Q)=>{return new BU({options:A,typeName:zQ.ZodUnion,...pQ(Q)})};var oX=(A)=>{if(A instanceof JU)return oX(A.schema);else if(A instanceof MC)return oX(A.innerType());else if(A instanceof CU)return[A.value];else if(A instanceof X7)return A.options;else if(A instanceof XU)return FB.objectValues(A.enum);else if(A instanceof GU)return oX(A._def.innerType);else if(A instanceof AU)return[void 0];else if(A instanceof QU)return[null];else if(A instanceof LC)return[void 0,...oX(A.unwrap())];else if(A instanceof tX)return[null,...oX(A.unwrap())];else if(A instanceof N2)return oX(A.unwrap());else if(A instanceof WU)return oX(A.unwrap());else if(A instanceof FU)return oX(A._def.innerType);else return[]};class D2 extends JB{_parse(A){let{ctx:Q}=this._processInputParams(A);if(Q.parsedType!==kA.object)return xA(Q,{code:RA.invalid_type,expected:kA.object,received:Q.parsedType}),LQ;let B=this.discriminator,Y=Q.data[B],J=this.optionsMap.get(Y);if(!J)return xA(Q,{code:RA.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[B]}),LQ;if(Q.common.async)return J._parseAsync({data:Q.data,path:Q.path,parent:Q});else return J._parseSync({data:Q.data,path:Q.path,parent:Q})}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(A,Q,B){let Y=new Map;for(let J of Q){let C=oX(J.shape[A]);if(!C.length)throw Error(`A discriminator value for key \`${A}\` could not be extracted from all schema options`);for(let X of C){if(Y.has(X))throw Error(`Discriminator property ${String(A)} has duplicate value ${String(X)}`);Y.set(X,J)}}return new D2({typeName:zQ.ZodDiscriminatedUnion,discriminator:A,options:Q,optionsMap:Y,...pQ(B)})}}function py(A,Q){let B=k1(A),Y=k1(Q);if(A===Q)return{valid:!0,data:A};else if(B===kA.object&&Y===kA.object){let J=FB.objectKeys(Q),C=FB.objectKeys(A).filter((G)=>J.indexOf(G)!==-1),X={...A,...Q};for(let G of C){let F=py(A[G],Q[G]);if(!F.valid)return{valid:!1};X[G]=F.data}return{valid:!0,data:X}}else if(B===kA.array&&Y===kA.array){if(A.length!==Q.length)return{valid:!1};let J=[];for(let C=0;C{if(I2(J)||I2(C))return LQ;let X=py(J.value,C.value);if(!X.valid)return xA(B,{code:RA.invalid_intersection_types}),LQ;if(H2(J)||H2(C))Q.dirty();return{status:Q.value,value:X.data}};if(B.common.async)return Promise.all([this._def.left._parseAsync({data:B.data,path:B.path,parent:B}),this._def.right._parseAsync({data:B.data,path:B.path,parent:B})]).then(([J,C])=>Y(J,C));else return Y(this._def.left._parseSync({data:B.data,path:B.path,parent:B}),this._def.right._parseSync({data:B.data,path:B.path,parent:B}))}}YU.create=(A,Q,B)=>{return new YU({left:A,right:Q,typeName:zQ.ZodIntersection,...pQ(B)})};class v1 extends JB{_parse(A){let{status:Q,ctx:B}=this._processInputParams(A);if(B.parsedType!==kA.array)return xA(B,{code:RA.invalid_type,expected:kA.array,received:B.parsedType}),LQ;if(B.data.lengththis._def.items.length)xA(B,{code:RA.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),Q.dirty();let J=[...B.data].map((C,X)=>{let G=this._def.items[X]||this._def.rest;if(!G)return null;return G._parse(new qC(B,C,B.path,X))}).filter((C)=>!!C);if(B.common.async)return Promise.all(J).then((C)=>{return AJ.mergeArray(Q,C)});else return AJ.mergeArray(Q,J)}get items(){return this._def.items}rest(A){return new v1({...this._def,rest:A})}}v1.create=(A,Q)=>{if(!Array.isArray(A))throw Error("You must pass an array of schemas to z.tuple([ ... ])");return new v1({items:A,typeName:zQ.ZodTuple,rest:null,...pQ(Q)})};class xI extends JB{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(A){let{status:Q,ctx:B}=this._processInputParams(A);if(B.parsedType!==kA.object)return xA(B,{code:RA.invalid_type,expected:kA.object,received:B.parsedType}),LQ;let Y=[],J=this._def.keyType,C=this._def.valueType;for(let X in B.data)Y.push({key:J._parse(new qC(B,X,B.path,X)),value:C._parse(new qC(B,B.data[X],B.path,X)),alwaysSet:X in B.data});if(B.common.async)return AJ.mergeObjectAsync(Q,Y);else return AJ.mergeObjectSync(Q,Y)}get element(){return this._def.valueType}static create(A,Q,B){if(Q instanceof JB)return new xI({keyType:A,valueType:Q,typeName:zQ.ZodRecord,...pQ(B)});return new xI({keyType:DC.create(),valueType:A,typeName:zQ.ZodRecord,...pQ(Q)})}}class fI extends JB{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(A){let{status:Q,ctx:B}=this._processInputParams(A);if(B.parsedType!==kA.map)return xA(B,{code:RA.invalid_type,expected:kA.map,received:B.parsedType}),LQ;let Y=this._def.keyType,J=this._def.valueType,C=[...B.data.entries()].map(([X,G],F)=>{return{key:Y._parse(new qC(B,X,B.path,[F,"key"])),value:J._parse(new qC(B,G,B.path,[F,"value"]))}});if(B.common.async){let X=new Map;return Promise.resolve().then(async()=>{for(let G of C){let F=await G.key,W=await G.value;if(F.status==="aborted"||W.status==="aborted")return LQ;if(F.status==="dirty"||W.status==="dirty")Q.dirty();X.set(F.value,W.value)}return{status:Q.value,value:X}})}else{let X=new Map;for(let G of C){let{key:F,value:W}=G;if(F.status==="aborted"||W.status==="aborted")return LQ;if(F.status==="dirty"||W.status==="dirty")Q.dirty();X.set(F.value,W.value)}return{status:Q.value,value:X}}}}fI.create=(A,Q,B)=>{return new fI({valueType:Q,keyType:A,typeName:zQ.ZodMap,...pQ(B)})};class fW extends JB{_parse(A){let{status:Q,ctx:B}=this._processInputParams(A);if(B.parsedType!==kA.set)return xA(B,{code:RA.invalid_type,expected:kA.set,received:B.parsedType}),LQ;let Y=this._def;if(Y.minSize!==null){if(B.data.sizeY.maxSize.value)xA(B,{code:RA.too_big,maximum:Y.maxSize.value,type:"set",inclusive:!0,exact:!1,message:Y.maxSize.message}),Q.dirty()}let J=this._def.valueType;function C(G){let F=new Set;for(let W of G){if(W.status==="aborted")return LQ;if(W.status==="dirty")Q.dirty();F.add(W.value)}return{status:Q.value,value:F}}let X=[...B.data.values()].map((G,F)=>J._parse(new qC(B,G,B.path,F)));if(B.common.async)return Promise.all(X).then((G)=>C(G));else return C(X)}min(A,Q){return new fW({...this._def,minSize:{value:A,message:oA.toString(Q)}})}max(A,Q){return new fW({...this._def,maxSize:{value:A,message:oA.toString(Q)}})}size(A,Q){return this.min(A,Q).max(A,Q)}nonempty(A){return this.min(1,A)}}fW.create=(A,Q)=>{return new fW({valueType:A,minSize:null,maxSize:null,typeName:zQ.ZodSet,...pQ(Q)})};class t4 extends JB{constructor(){super(...arguments);this.validate=this.implement}_parse(A){let{ctx:Q}=this._processInputParams(A);if(Q.parsedType!==kA.function)return xA(Q,{code:RA.invalid_type,expected:kA.function,received:Q.parsedType}),LQ;function B(X,G){return yI({data:X,path:Q.path,errorMaps:[Q.common.contextualErrorMap,Q.schemaErrorMap,r4(),aX].filter((F)=>!!F),issueData:{code:RA.invalid_arguments,argumentsError:G}})}function Y(X,G){return yI({data:X,path:Q.path,errorMaps:[Q.common.contextualErrorMap,Q.schemaErrorMap,r4(),aX].filter((F)=>!!F),issueData:{code:RA.invalid_return_type,returnTypeError:G}})}let J={errorMap:Q.common.contextualErrorMap},C=Q.data;if(this._def.returns instanceof bW){let X=this;return VJ(async function(...G){let F=new z9([]),W=await X._def.args.parseAsync(G,J).catch(($)=>{throw F.addIssue(B(G,$)),F}),Z=await Reflect.apply(C,this,W);return await X._def.returns._def.type.parseAsync(Z,J).catch(($)=>{throw F.addIssue(Y(Z,$)),F})})}else{let X=this;return VJ(function(...G){let F=X._def.args.safeParse(G,J);if(!F.success)throw new z9([B(G,F.error)]);let W=Reflect.apply(C,this,F.data),Z=X._def.returns.safeParse(W,J);if(!Z.success)throw new z9([Y(W,Z.error)]);return Z.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...A){return new t4({...this._def,args:v1.create(A).rest(Y7.create())})}returns(A){return new t4({...this._def,returns:A})}implement(A){return this.parse(A)}strictImplement(A){return this.parse(A)}static create(A,Q,B){return new t4({args:A?A:v1.create([]).rest(Y7.create()),returns:Q||Y7.create(),typeName:zQ.ZodFunction,...pQ(B)})}}class JU extends JB{get schema(){return this._def.getter()}_parse(A){let{ctx:Q}=this._processInputParams(A);return this._def.getter()._parse({data:Q.data,path:Q.path,parent:Q})}}JU.create=(A,Q)=>{return new JU({getter:A,typeName:zQ.ZodLazy,...pQ(Q)})};class CU extends JB{_parse(A){if(A.data!==this._def.value){let Q=this._getOrReturnCtx(A);return xA(Q,{received:Q.data,code:RA.invalid_literal,expected:this._def.value}),LQ}return{status:"valid",value:A.data}}get value(){return this._def.value}}CU.create=(A,Q)=>{return new CU({value:A,typeName:zQ.ZodLiteral,...pQ(Q)})};function $5A(A,Q){return new X7({values:A,typeName:zQ.ZodEnum,...pQ(Q)})}class X7 extends JB{_parse(A){if(typeof A.data!=="string"){let Q=this._getOrReturnCtx(A),B=this._def.values;return xA(Q,{expected:FB.joinValues(B),received:Q.parsedType,code:RA.invalid_type}),LQ}if(!this._cache)this._cache=new Set(this._def.values);if(!this._cache.has(A.data)){let Q=this._getOrReturnCtx(A),B=this._def.values;return xA(Q,{received:Q.data,code:RA.invalid_enum_value,options:B}),LQ}return VJ(A.data)}get options(){return this._def.values}get enum(){let A={};for(let Q of this._def.values)A[Q]=Q;return A}get Values(){let A={};for(let Q of this._def.values)A[Q]=Q;return A}get Enum(){let A={};for(let Q of this._def.values)A[Q]=Q;return A}extract(A,Q=this._def){return X7.create(A,{...this._def,...Q})}exclude(A,Q=this._def){return X7.create(this.options.filter((B)=>!A.includes(B)),{...this._def,...Q})}}X7.create=$5A;class XU extends JB{_parse(A){let Q=FB.getValidEnumValues(this._def.values),B=this._getOrReturnCtx(A);if(B.parsedType!==kA.string&&B.parsedType!==kA.number){let Y=FB.objectValues(Q);return xA(B,{expected:FB.joinValues(Y),received:B.parsedType,code:RA.invalid_type}),LQ}if(!this._cache)this._cache=new Set(FB.getValidEnumValues(this._def.values));if(!this._cache.has(A.data)){let Y=FB.objectValues(Q);return xA(B,{received:B.data,code:RA.invalid_enum_value,options:Y}),LQ}return VJ(A.data)}get enum(){return this._def.values}}XU.create=(A,Q)=>{return new XU({values:A,typeName:zQ.ZodNativeEnum,...pQ(Q)})};class bW extends JB{unwrap(){return this._def.type}_parse(A){let{ctx:Q}=this._processInputParams(A);if(Q.parsedType!==kA.promise&&Q.common.async===!1)return xA(Q,{code:RA.invalid_type,expected:kA.promise,received:Q.parsedType}),LQ;let B=Q.parsedType===kA.promise?Q.data:Promise.resolve(Q.data);return VJ(B.then((Y)=>{return this._def.type.parseAsync(Y,{path:Q.path,errorMap:Q.common.contextualErrorMap})}))}}bW.create=(A,Q)=>{return new bW({type:A,typeName:zQ.ZodPromise,...pQ(Q)})};class MC extends JB{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===zQ.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(A){let{status:Q,ctx:B}=this._processInputParams(A),Y=this._def.effect||null,J={addIssue:(C)=>{if(xA(B,C),C.fatal)Q.abort();else Q.dirty()},get path(){return B.path}};if(J.addIssue=J.addIssue.bind(J),Y.type==="preprocess"){let C=Y.transform(B.data,J);if(B.common.async)return Promise.resolve(C).then(async(X)=>{if(Q.value==="aborted")return LQ;let G=await this._def.schema._parseAsync({data:X,path:B.path,parent:B});if(G.status==="aborted")return LQ;if(G.status==="dirty")return gW(G.value);if(Q.value==="dirty")return gW(G.value);return G});else{if(Q.value==="aborted")return LQ;let X=this._def.schema._parseSync({data:C,path:B.path,parent:B});if(X.status==="aborted")return LQ;if(X.status==="dirty")return gW(X.value);if(Q.value==="dirty")return gW(X.value);return X}}if(Y.type==="refinement"){let C=(X)=>{let G=Y.refinement(X,J);if(B.common.async)return Promise.resolve(G);if(G instanceof Promise)throw Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return X};if(B.common.async===!1){let X=this._def.schema._parseSync({data:B.data,path:B.path,parent:B});if(X.status==="aborted")return LQ;if(X.status==="dirty")Q.dirty();return C(X.value),{status:Q.value,value:X.value}}else return this._def.schema._parseAsync({data:B.data,path:B.path,parent:B}).then((X)=>{if(X.status==="aborted")return LQ;if(X.status==="dirty")Q.dirty();return C(X.value).then(()=>{return{status:Q.value,value:X.value}})})}if(Y.type==="transform")if(B.common.async===!1){let C=this._def.schema._parseSync({data:B.data,path:B.path,parent:B});if(!B7(C))return LQ;let X=Y.transform(C.value,J);if(X instanceof Promise)throw Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:Q.value,value:X}}else return this._def.schema._parseAsync({data:B.data,path:B.path,parent:B}).then((C)=>{if(!B7(C))return LQ;return Promise.resolve(Y.transform(C.value,J)).then((X)=>({status:Q.value,value:X}))});FB.assertNever(Y)}}MC.create=(A,Q,B)=>{return new MC({schema:A,typeName:zQ.ZodEffects,effect:Q,...pQ(B)})};MC.createWithPreprocess=(A,Q,B)=>{return new MC({schema:Q,effect:{type:"preprocess",transform:A},typeName:zQ.ZodEffects,...pQ(B)})};class LC extends JB{_parse(A){if(this._getType(A)===kA.undefined)return VJ(void 0);return this._def.innerType._parse(A)}unwrap(){return this._def.innerType}}LC.create=(A,Q)=>{return new LC({innerType:A,typeName:zQ.ZodOptional,...pQ(Q)})};class tX extends JB{_parse(A){if(this._getType(A)===kA.null)return VJ(null);return this._def.innerType._parse(A)}unwrap(){return this._def.innerType}}tX.create=(A,Q)=>{return new tX({innerType:A,typeName:zQ.ZodNullable,...pQ(Q)})};class GU extends JB{_parse(A){let{ctx:Q}=this._processInputParams(A),B=Q.data;if(Q.parsedType===kA.undefined)B=this._def.defaultValue();return this._def.innerType._parse({data:B,path:Q.path,parent:Q})}removeDefault(){return this._def.innerType}}GU.create=(A,Q)=>{return new GU({innerType:A,typeName:zQ.ZodDefault,defaultValue:typeof Q.default==="function"?Q.default:()=>Q.default,...pQ(Q)})};class FU extends JB{_parse(A){let{ctx:Q}=this._processInputParams(A),B={...Q,common:{...Q.common,issues:[]}},Y=this._def.innerType._parse({data:B.data,path:B.path,parent:{...B}});if(a4(Y))return Y.then((J)=>{return{status:"valid",value:J.status==="valid"?J.value:this._def.catchValue({get error(){return new z9(B.common.issues)},input:B.data})}});else return{status:"valid",value:Y.status==="valid"?Y.value:this._def.catchValue({get error(){return new z9(B.common.issues)},input:B.data})}}removeCatch(){return this._def.innerType}}FU.create=(A,Q)=>{return new FU({innerType:A,typeName:zQ.ZodCatch,catchValue:typeof Q.catch==="function"?Q.catch:()=>Q.catch,...pQ(Q)})};class bI extends JB{_parse(A){if(this._getType(A)!==kA.nan){let B=this._getOrReturnCtx(A);return xA(B,{code:RA.invalid_type,expected:kA.nan,received:B.parsedType}),LQ}return{status:"valid",value:A.data}}}bI.create=(A)=>{return new bI({typeName:zQ.ZodNaN,...pQ(A)})};var NiQ=Symbol("zod_brand");class N2 extends JB{_parse(A){let{ctx:Q}=this._processInputParams(A),B=Q.data;return this._def.type._parse({data:B,path:Q.path,parent:Q})}unwrap(){return this._def.type}}class mI extends JB{_parse(A){let{status:Q,ctx:B}=this._processInputParams(A);if(B.common.async)return(async()=>{let J=await this._def.in._parseAsync({data:B.data,path:B.path,parent:B});if(J.status==="aborted")return LQ;if(J.status==="dirty")return Q.dirty(),gW(J.value);else return this._def.out._parseAsync({data:J.value,path:B.path,parent:B})})();else{let Y=this._def.in._parseSync({data:B.data,path:B.path,parent:B});if(Y.status==="aborted")return LQ;if(Y.status==="dirty")return Q.dirty(),{status:"dirty",value:Y.value};else return this._def.out._parseSync({data:Y.value,path:B.path,parent:B})}}static create(A,Q){return new mI({in:A,out:Q,typeName:zQ.ZodPipeline})}}class WU extends JB{_parse(A){let Q=this._def.innerType._parse(A),B=(Y)=>{if(B7(Y))Y.value=Object.freeze(Y.value);return Y};return a4(Q)?Q.then((Y)=>B(Y)):B(Q)}unwrap(){return this._def.innerType}}WU.create=(A,Q)=>{return new WU({innerType:A,typeName:zQ.ZodReadonly,...pQ(Q)})};function G5A(A,Q){let B=typeof A==="function"?A(Q):typeof A==="string"?{message:A}:A;return typeof B==="string"?{message:B}:B}function U5A(A,Q={},B){if(A)return xW.create().superRefine((Y,J)=>{let C=A(Y);if(C instanceof Promise)return C.then((X)=>{if(!X){let G=G5A(Q,Y),F=G.fatal??B??!0;J.addIssue({code:"custom",...G,fatal:F})}});if(!C){let X=G5A(Q,Y),G=X.fatal??B??!0;J.addIssue({code:"custom",...X,fatal:G})}return});return xW.create()}var LiQ={object:O0.lazycreate},zQ;(function(A){A.ZodString="ZodString",A.ZodNumber="ZodNumber",A.ZodNaN="ZodNaN",A.ZodBigInt="ZodBigInt",A.ZodBoolean="ZodBoolean",A.ZodDate="ZodDate",A.ZodSymbol="ZodSymbol",A.ZodUndefined="ZodUndefined",A.ZodNull="ZodNull",A.ZodAny="ZodAny",A.ZodUnknown="ZodUnknown",A.ZodNever="ZodNever",A.ZodVoid="ZodVoid",A.ZodArray="ZodArray",A.ZodObject="ZodObject",A.ZodUnion="ZodUnion",A.ZodDiscriminatedUnion="ZodDiscriminatedUnion",A.ZodIntersection="ZodIntersection",A.ZodTuple="ZodTuple",A.ZodRecord="ZodRecord",A.ZodMap="ZodMap",A.ZodSet="ZodSet",A.ZodFunction="ZodFunction",A.ZodLazy="ZodLazy",A.ZodLiteral="ZodLiteral",A.ZodEnum="ZodEnum",A.ZodEffects="ZodEffects",A.ZodNativeEnum="ZodNativeEnum",A.ZodOptional="ZodOptional",A.ZodNullable="ZodNullable",A.ZodDefault="ZodDefault",A.ZodCatch="ZodCatch",A.ZodPromise="ZodPromise",A.ZodBranded="ZodBranded",A.ZodPipeline="ZodPipeline",A.ZodReadonly="ZodReadonly"})(zQ||(zQ={}));var qiQ=(A,Q={message:`Input not instance of ${A.name}`})=>U5A((B)=>B instanceof A,Q),E5A=DC.create,K5A=J7.create,MiQ=bI.create,ziQ=C7.create,V5A=e4.create,RiQ=hW.create,wiQ=gI.create,jiQ=AU.create,OiQ=QU.create,PiQ=xW.create,TiQ=Y7.create,SiQ=_1.create,kiQ=hI.create,_iQ=NC.create,viQ=O0.create,yiQ=O0.strictCreate,giQ=BU.create,hiQ=D2.create,xiQ=YU.create,fiQ=v1.create,biQ=xI.create,miQ=fI.create,uiQ=fW.create,diQ=t4.create,ciQ=JU.create,liQ=CU.create,piQ=X7.create,iiQ=XU.create,niQ=bW.create,siQ=MC.create,riQ=LC.create,aiQ=tX.create,oiQ=MC.createWithPreprocess,tiQ=mI.create,eiQ=()=>E5A().optional(),AnQ=()=>K5A().optional(),QnQ=()=>V5A().optional(),BnQ={string:(A)=>DC.create({...A,coerce:!0}),number:(A)=>J7.create({...A,coerce:!0}),boolean:(A)=>e4.create({...A,coerce:!0}),bigint:(A)=>C7.create({...A,coerce:!0}),date:(A)=>hW.create({...A,coerce:!0})};var YnQ=LQ;var TB=s;var zC;(function(A){A[A.EXTEND=1]="EXTEND",A[A.WRAP=2]="WRAP",A[A.CROP=3]="CROP"})(zC||(zC={}));var G7=s.object({bitmap:s.object({data:s.union([s.instanceof(Buffer),s.instanceof(Uint8Array)]),width:s.number(),height:s.number()})});var JnQ=s.object({src:G7,x:s.number().optional(),y:s.number().optional(),srcX:s.number().optional(),srcY:s.number().optional(),srcW:s.number().optional(),srcH:s.number().optional()}),CnQ=s.union([G7,JnQ]),ZU={blit(A,Q){let B=CnQ.parse(Q),{src:Y,x:J=0,y:C=0,srcX:X=0,srcY:G=0,srcW:F=Y.bitmap.width,srcH:W=Y.bitmap.height}="bitmap"in B?{src:B}:B;if(!("bitmap"in Y))throw Error("The source must be a Jimp image");if(typeof J!=="number"||typeof C!=="number")throw Error("x and y must be numbers");J=Math.round(J),C=Math.round(C),X=Math.round(X),G=Math.round(G),F=Math.round(F),W=Math.round(W);let Z=A.bitmap.width,U=A.bitmap.height;return o8(Y,X,G,F,W,function($,E,K){let I=J+$-X,V=C+E-G;if(I>=0&&V>=0&&Z-I>0&&U-V>0){let H=A.getPixelIndex(I,V),D={r:Y.bitmap.data[K]||0,g:Y.bitmap.data[K+1]||0,b:Y.bitmap.data[K+2]||0,a:Y.bitmap.data[K+3]||0},L={r:A.bitmap.data[H]||0,g:A.bitmap.data[H+1]||0,b:A.bitmap.data[H+2]||0,a:A.bitmap.data[H+3]||0};A.bitmap.data[H]=(D.a*(D.r-L.r)-L.r+255>>8)+L.r,A.bitmap.data[H+1]=(D.a*(D.g-L.g)-L.g+255>>8)+L.g,A.bitmap.data[H+2]=(D.a*(D.b-L.b)-L.b+255>>8)+L.b,A.bitmap.data[H+3]=N0(L.a+D.a)}}),A}};var I5A=[1,57,41,21,203,34,97,73,227,91,149,62,105,45,39,137,241,107,3,173,39,71,65,238,219,101,187,87,81,151,141,133,249,117,221,209,197,187,177,169,5,153,73,139,133,127,243,233,223,107,103,99,191,23,177,171,165,159,77,149,9,139,135,131,253,245,119,231,224,109,211,103,25,195,189,23,45,175,171,83,81,79,155,151,147,9,141,137,67,131,129,251,123,30,235,115,113,221,217,53,13,51,50,49,193,189,185,91,179,175,43,169,83,163,5,79,155,19,75,147,145,143,35,69,17,67,33,65,255,251,247,243,239,59,29,229,113,111,219,27,213,105,207,51,201,199,49,193,191,47,93,183,181,179,11,87,43,85,167,165,163,161,159,157,155,77,19,75,37,73,145,143,141,35,138,137,135,67,33,131,129,255,63,250,247,61,121,239,237,117,29,229,227,225,111,55,109,216,213,211,209,207,205,203,201,199,197,195,193,48,190,47,93,185,183,181,179,178,176,175,173,171,85,21,167,165,41,163,161,5,79,157,78,154,153,19,75,149,74,147,73,144,143,71,141,140,139,137,17,135,134,133,66,131,65,129,1],H5A=[0,9,10,10,14,12,14,14,16,15,16,15,16,15,15,17,18,17,12,18,16,17,17,19,19,18,19,18,18,19,19,19,20,19,20,20,20,20,20,20,15,20,19,20,20,20,21,21,21,20,20,20,21,18,21,21,21,21,20,21,17,21,21,21,22,22,21,22,22,21,22,21,19,22,22,19,20,22,22,21,21,21,22,22,22,18,22,22,21,22,22,23,22,20,23,22,22,23,23,21,19,21,21,21,23,23,23,22,23,23,21,23,22,23,18,22,23,20,22,23,23,23,21,22,20,22,21,22,24,24,24,24,24,22,21,24,23,23,24,21,24,23,24,22,24,24,22,24,24,22,23,24,24,24,20,23,22,23,24,24,24,24,24,24,24,23,21,23,22,23,24,24,24,22,24,24,24,23,22,24,24,25,23,25,25,23,24,25,25,24,22,25,25,25,24,23,24,25,25,25,25,25,25,25,25,25,25,25,25,23,25,23,24,25,25,25,25,25,25,25,25,25,24,22,25,25,23,25,25,20,24,25,24,25,25,22,24,25,24,25,24,25,25,24,25,25,25,25,22,25,25,25,24,25,24,25,18];var D5A={blur(A,Q){if(typeof Q!=="number")throw Error("r must be a number");if(Q<1)throw Error("r must be greater than 0");let B,Y,J,C,X,G,F,W,Z,U,$,E,K,I=A.bitmap.width-1,V=A.bitmap.height-1,H=Q+1,D=I5A[Q],L=H5A[Q],z=[],M=[],N=[],q=[],w=[],P=[],_=2;while(_-- >0){E=0,K=0;for(G=0;GI?I:F)<<2),B+=A.bitmap.data[W++],Y+=A.bitmap.data[W++],J+=A.bitmap.data[W++],C+=A.bitmap.data[W];for(X=0;X0?W<<2:0;Z=K+w[X],U=K+P[X],B+=A.bitmap.data[Z++]-A.bitmap.data[U++],Y+=A.bitmap.data[Z++]-A.bitmap.data[U++],J+=A.bitmap.data[Z++]-A.bitmap.data[U++],C+=A.bitmap.data[Z]-A.bitmap.data[U++],E++}K+=A.bitmap.width<<2}for(X=0;XV?0:A.bitmap.width,B+=z[$],Y+=M[$],J+=N[$],C+=q[$];E=X<<2;for(G=0;G>>L),A.bitmap.data[E+1]=N0(Y*D>>>L),A.bitmap.data[E+2]=N0(J*D>>>L),A.bitmap.data[E+3]=N0(C*D>>>L),X===0)w[G]=((W=G+H)0?W*A.bitmap.width:0;Z=X+w[G],U=X+P[G],B+=z[Z]-z[U],Y+=M[Z]-M[U],J+=N[Z]-N[U],C+=q[Z]-q[U],E+=A.bitmap.width<<2}}}return A},gaussian(A,Q){if(typeof Q!=="number")throw Error("r must be a number");if(Q<1)throw Error("r must be greater than 0");let B=Math.ceil(Q*2.57),Y=B*2+1,J=Q*Q*2,C=J*Math.PI,X=[];for(let G=0;GA.bitmap.height?A.bitmap.height:A.bitmap.width)/2,J={x:typeof B.x==="number"?B.x:A.bitmap.width/2,y:typeof B.y==="number"?B.y:A.bitmap.height/2};return A.scan((C,X,G)=>{let F=Math.sqrt(Math.pow(C-J.x,2)+Math.pow(X-J.y,2));if(Y-F<=0)A.bitmap.data[G+3]=0;else if(Y-F<1)A.bitmap.data[G+3]=255*(Y-F)}),A}};var L2=s.array(s.number()).min(1).array(),ZnQ=s.object({kernel:L2,edgeHandling:s.nativeEnum(zC).optional()}),$nQ=s.union([L2,ZnQ]),UnQ=s.object({kernel:L2,x:s.number().optional(),y:s.number().optional(),w:s.number().optional(),h:s.number().optional()}),EnQ=s.union([L2,UnQ]),q5A=s.number().min(1).max(1/0),KnQ=s.object({size:q5A,x:s.number().optional(),y:s.number().optional(),w:s.number().optional(),h:s.number().optional()}),VnQ=s.union([q5A,KnQ]);function L5A(A,Q,B,Y){let J=[0,0,0,0],C=(Q.length-1)/2;for(let X=0;X{Q.r[A.bitmap.data[J+0]]++,Q.g[A.bitmap.data[J+1]]++,Q.b[A.bitmap.data[J+2]]++}),Q}var ny=function(A,Q,B){return(A-Q)*255/(B-Q)},sy=function(A){return[A.findIndex((Q)=>Q>0),255-A.slice().reverse().findIndex((Q)=>Q>0)]},$U={normalize(A){let Q=_nQ(A),B={r:sy(Q.r),g:sy(Q.g),b:sy(Q.b)};return A.scan((Y,J,C)=>{let X=A.bitmap.data[C+0],G=A.bitmap.data[C+1],F=A.bitmap.data[C+2];A.bitmap.data[C+0]=ny(X,B.r[0],B.r[1]),A.bitmap.data[C+1]=ny(G,B.g[0],B.g[1]),A.bitmap.data[C+2]=ny(F,B.b[0],B.b[1])}),A},invert(A){return A.scan((Q,B,Y)=>{A.bitmap.data[Y]=255-A.bitmap.data[Y],A.bitmap.data[Y+1]=255-A.bitmap.data[Y+1],A.bitmap.data[Y+2]=255-A.bitmap.data[Y+2]}),A},brightness(A,Q){if(typeof Q!=="number")throw Error("val must be numbers");return A.scan((B,Y,J)=>{A.bitmap.data[J]=N0(A.bitmap.data[J]*Q),A.bitmap.data[J+1]=N0(A.bitmap.data[J+1]*Q),A.bitmap.data[J+2]=N0(A.bitmap.data[J+2]*Q)}),A},contrast(A,Q){if(typeof Q!=="number")throw Error("val must be numbers");if(Q<-1||Q>1)throw Error("val must be a number between -1 and +1");let B=(Q+1)/(1-Q);function Y(J){return J=Math.floor(B*(J-127)+127),J<0?0:J>255?255:J}return A.scan((J,C,X)=>{A.bitmap.data[X]=Y(A.bitmap.data[X]),A.bitmap.data[X+1]=Y(A.bitmap.data[X+1]),A.bitmap.data[X+2]=Y(A.bitmap.data[X+2])}),A},posterize(A,Q){if(typeof Q!=="number")throw Error("n must be numbers");if(Q<2)Q=2;return A.scan((B,Y,J)=>{let C=A.bitmap.data[J],X=A.bitmap.data[J+1],G=A.bitmap.data[J+2];A.bitmap.data[J]=Math.floor(C/255*(Q-1))/(Q-1)*255,A.bitmap.data[J+1]=Math.floor(X/255*(Q-1))/(Q-1)*255,A.bitmap.data[J+2]=Math.floor(G/255*(Q-1))/(Q-1)*255}),A},greyscale(A){return A.scan((Q,B,Y)=>{let J=0.2126*A.bitmap.data[Y]+0.7152*A.bitmap.data[Y+1]+0.0722*A.bitmap.data[Y+2];A.bitmap.data[Y]=J,A.bitmap.data[Y+1]=J,A.bitmap.data[Y+2]=J}),A},opacity(A,Q){if(typeof Q!=="number")throw Error("f must be a number");if(Q<0||Q>1)throw Error("f must be a number from 0 to 1");return A.scan((B,Y,J)=>{let C=A.bitmap.data[J+3]*Q;A.bitmap.data[J+3]=C}),A},sepia(A){return A.scan((Q,B,Y)=>{let J=A.bitmap.data[Y],C=A.bitmap.data[Y+1],X=A.bitmap.data[Y+2];J=J*0.393+C*0.769+X*0.189,C=J*0.349+C*0.686+X*0.168,X=J*0.272+C*0.534+X*0.131,A.bitmap.data[Y]=J<255?J:255,A.bitmap.data[Y+1]=C<255?C:255,A.bitmap.data[Y+2]=X<255?X:255}),A},fade(A,Q){if(typeof Q!=="number")throw Error("f must be a number");if(Q<0||Q>1)throw Error("f must be a number from 0 to 1");return this.opacity(A,1-Q)},convolution(A,Q){let B=$nQ.parse(Q),{kernel:Y,edgeHandling:J=zC.EXTEND}="kernel"in B?B:{kernel:B,edgeHandling:void 0};if(!Y[0])throw Error("kernel must be a matrix");let C=Buffer.from(A.bitmap.data),X=Y.length,G=Y[0].length,F=Math.floor(X/2),W=Math.floor(G/2),Z=-F,U=-W,$,E,K,I,V,H,D,L,z,M;return A.scan((N,q,w)=>{I=0,K=0,E=0;for(let P=Z;P<=F;P++)for(let _=U;_<=W;_++){if(L=N+_,z=q+P,$=Y[P+F][_+W],M=A.getPixelIndex(L,z,J),M===-1)D=0,H=0,V=0;else V=A.bitmap.data[M+0],H=A.bitmap.data[M+1],D=A.bitmap.data[M+2];E+=$*V,K+=$*H,I+=$*D}if(E<0)E=0;if(K<0)K=0;if(I<0)I=0;if(E>255)E=255;if(K>255)K=255;if(I>255)I=255;C[w+0]=E,C[w+1]=K,C[w+2]=I}),A.bitmap.data=C,A},opaque(A){return A.scan((Q,B,Y)=>{A.bitmap.data[Y+3]=255}),A},pixelate(A,Q){let B=VnQ.parse(Q),{size:Y,x:J=0,y:C=0,w:X=A.bitmap.width-J,h:G=A.bitmap.height-C}=typeof B==="number"?{size:B}:B,F=[[0.0625,0.125,0.0625],[0.125,0.25,0.125],[0.0625,0.125,0.0625]],W=B8(A);return o8(W,J,C,X,G,(Z,U,$)=>{Z=Y*Math.floor(Z/Y),U=Y*Math.floor(U/Y);let E=L5A(W,F,Z,U);A.bitmap.data[$]=E[0],A.bitmap.data[$+1]=E[1],A.bitmap.data[$+2]=E[2],A.bitmap.data[$+3]=E[3]}),A},convolute(A,Q){let B=EnQ.parse(Q),{kernel:Y,x:J=0,y:C=0,w:X=A.bitmap.width-J,h:G=A.bitmap.height-C}="kernel"in B?B:{kernel:B},F=B8(A);return o8(F,J,C,X,G,(W,Z,U)=>{let $=L5A(F,Y,W,Z);A.bitmap.data[U]=N0($[0]),A.bitmap.data[U+1]=N0($[1]),A.bitmap.data[U+2]=N0($[2]),A.bitmap.data[U+3]=N0($[3])}),A},color(A,Q){if(!Q||!Array.isArray(Q))throw Error("actions must be an array");return Q.forEach((B)=>knQ.parse(B)),Q=Q.map((B)=>{if(B.apply==="xor"||B.apply==="mix")B.params[0]=aA(B.params[0]).toRgb();return B}),A.scan((B,Y,J)=>{let C={r:A.bitmap.data[J],g:A.bitmap.data[J+1],b:A.bitmap.data[J+2]},X=(G,F)=>N0(C[G]+F);Q.forEach((G)=>{if(G.apply==="mix")C=iy(C,G.params[0],G.params[1]);else if(G.apply==="tint")C=iy(C,{r:255,g:255,b:255},G.params?.[0]);else if(G.apply==="shade")C=iy(C,{r:0,g:0,b:0},G.params?.[0]);else if(G.apply==="xor")C={r:C.r^G.params[0].r,g:C.g^G.params[0].g,b:C.b^G.params[0].b};else if(G.apply==="red")C.r=X("r",G.params[0]);else if(G.apply==="green")C.g=X("g",G.params[0]);else if(G.apply==="blue")C.b=X("b",G.params[0]);else{if(G.apply==="hue")G.apply="spin";let F=aA(C),W=F[G.apply].bind(F);if(!W)throw Error("action "+G.apply+" not supported");C=W(...G.params||[]).toRgb()}}),A.bitmap.data[J]=C.r,A.bitmap.data[J+1]=C.g,A.bitmap.data[J+2]=C.b}),A}};var X1A=qA(WCA(),1),Gg=qA($CA(),1);import{promises as UCA}from"fs";import{existsSync as VCA}from"fs";var ECA=UCA.readFile,KCA=UCA.writeFile;var G1A=qA(qCA(),1);var Y5;(function(A){A[A.LEFT=1]="LEFT",A[A.CENTER=2]="CENTER",A[A.RIGHT=4]="RIGHT"})(Y5||(Y5={}));var J5;(function(A){A[A.TOP=8]="TOP",A[A.MIDDLE=16]="MIDDLE",A[A.BOTTOM=32]="BOTTOM"})(J5||(J5={}));var T2;(function(A){A.SRC_OVER="srcOver",A.DST_OVER="dstOver",A.MULTIPLY="multiply",A.ADD="add",A.SCREEN="screen",A.OVERLAY="overlay",A.DARKEN="darken",A.LIGHTEN="lighten",A.HARD_LIGHT="hardLight",A.DIFFERENCE="difference",A.EXCLUSION="exclusion"})(T2||(T2={}));var Qg={};x6(Qg,{srcOver:()=>MCA,screen:()=>jCA,overlay:()=>OCA,names:()=>fsQ,multiply:()=>RCA,lighten:()=>TCA,hardLight:()=>SCA,exclusion:()=>_CA,dstOver:()=>zCA,difference:()=>kCA,darken:()=>PCA,add:()=>wCA});function MCA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=(A.r*A.a+Q.r*Q.a*(1-A.a))/Y,C=(A.g*A.a+Q.g*Q.a*(1-A.a))/Y,X=(A.b*A.a+Q.b*Q.a*(1-A.a))/Y;return{r:J,g:C,b:X,a:Y}}function zCA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=(Q.r*Q.a+A.r*A.a*(1-Q.a))/Y,C=(Q.g*Q.a+A.g*A.a*(1-Q.a))/Y,X=(Q.b*Q.a+A.b*A.a*(1-Q.a))/Y;return{r:J,g:C,b:X,a:Y}}function RCA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,F=Q.g*Q.a,W=Q.b*Q.a,Z=(J*G+J*(1-Q.a)+G*(1-A.a))/Y,U=(C*F+C*(1-Q.a)+F*(1-A.a))/Y,$=(X*W+X*(1-Q.a)+W*(1-A.a))/Y;return{r:Z,g:U,b:$,a:Y}}function wCA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,F=Q.g*Q.a,W=Q.b*Q.a,Z=(J+G)/Y,U=(C+F)/Y,$=(X+W)/Y;return{r:Z,g:U,b:$,a:Y}}function jCA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,F=Q.g*Q.a,W=Q.b*Q.a,Z=(J*Q.a+G*A.a-J*G+J*(1-Q.a)+G*(1-A.a))/Y,U=(C*Q.a+F*A.a-C*F+C*(1-Q.a)+F*(1-A.a))/Y,$=(X*Q.a+W*A.a-X*W+X*(1-Q.a)+W*(1-A.a))/Y;return{r:Z,g:U,b:$,a:Y}}function OCA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,F=Q.g*Q.a,W=Q.b*Q.a,Z=(2*G<=Q.a?2*J*G+J*(1-Q.a)+G*(1-A.a):J*(1+Q.a)+G*(1+A.a)-2*G*J-Q.a*A.a)/Y,U=(2*F<=Q.a?2*C*F+C*(1-Q.a)+F*(1-A.a):C*(1+Q.a)+F*(1+A.a)-2*F*C-Q.a*A.a)/Y,$=(2*W<=Q.a?2*X*W+X*(1-Q.a)+W*(1-A.a):X*(1+Q.a)+W*(1+A.a)-2*W*X-Q.a*A.a)/Y;return{r:Z,g:U,b:$,a:Y}}function PCA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,F=Q.g*Q.a,W=Q.b*Q.a,Z=(Math.min(J*Q.a,G*A.a)+J*(1-Q.a)+G*(1-A.a))/Y,U=(Math.min(C*Q.a,F*A.a)+C*(1-Q.a)+F*(1-A.a))/Y,$=(Math.min(X*Q.a,W*A.a)+X*(1-Q.a)+W*(1-A.a))/Y;return{r:Z,g:U,b:$,a:Y}}function TCA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,F=Q.g*Q.a,W=Q.b*Q.a,Z=(Math.max(J*Q.a,G*A.a)+J*(1-Q.a)+G*(1-A.a))/Y,U=(Math.max(C*Q.a,F*A.a)+C*(1-Q.a)+F*(1-A.a))/Y,$=(Math.max(X*Q.a,W*A.a)+X*(1-Q.a)+W*(1-A.a))/Y;return{r:Z,g:U,b:$,a:Y}}function SCA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,F=Q.g*Q.a,W=Q.b*Q.a,Z=(2*J<=A.a?2*J*G+J*(1-Q.a)+G*(1-A.a):J*(1+Q.a)+G*(1+A.a)-2*G*J-Q.a*A.a)/Y,U=(2*C<=A.a?2*C*F+C*(1-Q.a)+F*(1-A.a):C*(1+Q.a)+F*(1+A.a)-2*F*C-Q.a*A.a)/Y,$=(2*X<=A.a?2*X*W+X*(1-Q.a)+W*(1-A.a):X*(1+Q.a)+W*(1+A.a)-2*W*X-Q.a*A.a)/Y;return{r:Z,g:U,b:$,a:Y}}function kCA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,F=Q.g*Q.a,W=Q.b*Q.a,Z=(J+G-2*Math.min(J*Q.a,G*A.a))/Y,U=(C+F-2*Math.min(C*Q.a,F*A.a))/Y,$=(X+W-2*Math.min(X*Q.a,W*A.a))/Y;return{r:Z,g:U,b:$,a:Y}}function _CA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,F=Q.g*Q.a,W=Q.b*Q.a,Z=(J*Q.a+G*A.a-2*J*G+J*(1-Q.a)+G*(1-A.a))/Y,U=(C*Q.a+F*A.a-2*C*F+C*(1-Q.a)+F*(1-A.a))/Y,$=(X*Q.a+W*A.a-2*X*W+X*(1-Q.a)+W*(1-A.a))/Y;return{r:Z,g:U,b:$,a:Y}}var fsQ=[MCA,zCA,RCA,wCA,jCA,OCA,PCA,TCA,SCA,kCA,_CA];function UU(A,Q,B=0,Y=0,J={}){if(!(Q instanceof A.constructor))throw Error("The source must be a Jimp image");if(typeof B!=="number"||typeof Y!=="number")throw Error("x and y must be numbers");let{mode:C=T2.SRC_OVER}=J,{opacitySource:X=1,opacityDest:G=1}=J;if(typeof X!=="number"||X<0||X>1)X=1;if(typeof G!=="number"||G<0||G>1)G=1;let F=Qg[C];if(B=Math.round(B),Y=Math.round(Y),G!==1)A.scan((W,Z,U)=>{let $=A.bitmap.data[U+3]*G;A.bitmap.data[U+3]=$});return Q.scan((W,Z,U)=>{let $=A.getPixelIndex(B+W,Y+Z,zC.CROP);if($===-1)return;let E=F({r:Q.bitmap.data[U+0]/255,g:Q.bitmap.data[U+1]/255,b:Q.bitmap.data[U+2]/255,a:Q.bitmap.data[U+3]/255},{r:A.bitmap.data[$+0]/255,g:A.bitmap.data[$+1]/255,b:A.bitmap.data[$+2]/255,a:A.bitmap.data[$+3]/255},X);A.bitmap.data[$+0]=N0(E.r*255),A.bitmap.data[$+1]=N0(E.g*255),A.bitmap.data[$+2]=N0(E.b*255),A.bitmap.data[$+3]=N0(E.a*255)}),A}var Y1A=qA(B1A(),1);function Cg(A){let Q=A._exif;return Q&&Q.tags&&Q.tags.Orientation||1}function asQ(A){let Q=A.bitmap.width,B=A.bitmap.height;switch(Cg(A)){case 1:return null;case 2:return function(Y,J){return[Q-Y-1,J]};case 3:return function(Y,J){return[Q-Y-1,B-J-1]};case 4:return function(Y,J){return[Y,B-J-1]};case 5:return function(Y,J){return[J,Y]};case 6:return function(Y,J){return[J,B-Y-1]};case 7:return function(Y,J){return[Q-J-1,B-Y-1]};case 8:return function(Y,J){return[Q-J-1,Y]};default:return null}}function osQ(A,Q,B,Y){let J=A.bitmap.data,C=A.bitmap.width,X=Buffer.alloc(J.length);for(let G=0;G4,Y=B?A.bitmap.height:A.bitmap.width,J=B?A.bitmap.width:A.bitmap.height;if(Q)osQ(A,Y,J,Q)}async function J1A(A,Q){try{A._exif=Y1A.default.create(Q).parse(),tsQ(A)}catch{}}var Xg={data:Buffer.alloc(0),width:0,height:0};function C1A(A){let Q=Buffer.alloc(A.byteLength),B=new Uint8Array(A);for(let Y=0;YC()),J=class{bitmap=Xg;background=0;formats=[];mime;constructor(X=Xg){if(this.formats=Y,"data"in X)this.bitmap=X;else if(this.bitmap={data:Buffer.alloc(X.width*X.height*4),width:X.width,height:X.height},X.color){this.background=typeof X.color==="string"?FYA(X.color):X.color;for(let G=0;G{let Z=G[F]?.(this,...W);if(typeof Z==="object"&&"bitmap"in Z)return this.bitmap=Z.bitmap,this;return Z}}static async read(X,G){if(Buffer.isBuffer(X)||X instanceof ArrayBuffer)return this.fromBuffer(X);if(VCA(X))return this.fromBuffer(await ECA(X));let[F,W]=await Gg.to(fetch(X));if(F)throw Error(`Could not load Buffer from URL: ${X}`);if(!W.ok)throw Error(`HTTP Status ${W.status} for url ${X}`);let[Z,U]=await Gg.to(W.arrayBuffer());if(Z)throw Error(`Could not load Buffer from ${X}`);let $=C1A(U);return this.fromBuffer($,G)}static fromBitmap(X){let G;if(X.data instanceof Buffer)G=Buffer.from(X.data);if(X.data instanceof Uint8Array||X.data instanceof Uint8ClampedArray)G=Buffer.from(X.data.buffer);if(Array.isArray(X.data))G=Buffer.concat(X.data.map((F)=>Buffer.from(F.toString(16).padStart(8,"0"),"hex")));if(!G)throw Error("data must be a Buffer");if(typeof X.height!=="number"||typeof X.width!=="number")throw Error("bitmap must have width and height");return new J({height:X.height,width:X.width,data:G})}static async fromBuffer(X,G){let F=X instanceof ArrayBuffer?C1A(X):X,W=await X1A.default.fromBuffer(F);if(!W||!W.mime)throw Error("Could not find MIME for Buffer");let Z=Y.find(($)=>$.mime===W.mime);if(!Z||!Z.decode)throw Error(`Mime type ${W.mime} does not support decoding`);let U=new J(await Z.decode(F,G?.[Z.mime]));return U.mime=W.mime,J1A(U,F),U}inspect(){return""}toString(){return"[object Jimp]"}get width(){return this.bitmap.width}get height(){return this.bitmap.height}async getBuffer(X,G){let F=this.formats.find((Z)=>Z.mime===X);if(!F||!F.encode)throw Error(`Unsupported MIME type: ${X}`);let W;if(F.hasAlpha)W=this;else W=new J({width:this.bitmap.width,height:this.bitmap.height,color:this.background}),UU(W,this);return F.encode(W.bitmap,G)}async getBase64(X,G){let F=await this.getBuffer(X,G);return"data:"+X+";base64,"+F.toString("base64")}async write(X,G){let F=G1A.default.getType(X);await KCA(X,await this.getBuffer(F,G))}clone(){return new J({...this.bitmap,data:Buffer.from(this.bitmap.data)})}getPixelIndex(X,G,F){let W,Z;if(!F)F=zC.EXTEND;if(typeof X!=="number"||typeof G!=="number")throw Error("x and y must be numbers");if(X=Math.round(X),G=Math.round(G),W=X,Z=G,F===zC.EXTEND){if(X<0)W=0;if(X>=this.bitmap.width)W=this.bitmap.width-1;if(G<0)Z=0;if(G>=this.bitmap.height)Z=this.bitmap.height-1}if(F===zC.WRAP){if(X<0)W=this.bitmap.width+X;if(X>=this.bitmap.width)W=X%this.bitmap.width;if(G<0)Z=this.bitmap.height+G;if(G>=this.bitmap.height)Z=G%this.bitmap.height}let U=this.bitmap.width*Z+W<<2;if(W<0||W>=this.bitmap.width)U=-1;if(Z<0||Z>=this.bitmap.height)U=-1;return U}getPixelColor(X,G){if(typeof X!=="number"||typeof G!=="number")throw Error("x and y must be numbers");let F=this.getPixelIndex(X,G);return this.bitmap.data.readUInt32BE(F)}setPixelColor(X,G,F){if(typeof X!=="number"||typeof G!=="number"||typeof F!=="number")throw Error("hex, x and y must be numbers");let W=this.getPixelIndex(G,F);return this.bitmap.data.writeUInt32BE(X,W),this}hasAlpha(){let{width:X,height:G,data:F}=this.bitmap,W=X*G<<2;for(let Z=3;Z0&&this.heightOriginal>0&&this.targetWidth>0&&this.targetHeight>0)this.configurePasses();else throw console.log(this),Error("Invalid settings specified for the resizer.")};VY.prototype.configurePasses=function(){if(this.widthOriginal===this.targetWidth)this.resizeWidth=this.bypassResizer;else if(this.ratioWeightWidthPass=this.widthOriginal/this.targetWidth,this.ratioWeightWidthPass<1&&this.interpolationPass)this.initializeFirstPassBuffers(!0),this.resizeWidth=this.colorChannels===4?this.resizeWidthInterpolatedRGBA:this.resizeWidthInterpolatedRGB;else this.initializeFirstPassBuffers(!1),this.resizeWidth=this.colorChannels===4?this.resizeWidthRGBA:this.resizeWidthRGB;if(this.heightOriginal===this.targetHeight)this.resizeHeight=this.bypassResizer;else if(this.ratioWeightHeightPass=this.heightOriginal/this.targetHeight,this.ratioWeightHeightPass<1&&this.interpolationPass)this.initializeSecondPassBuffers(!0),this.resizeHeight=this.resizeHeightInterpolated;else this.initializeSecondPassBuffers(!1),this.resizeHeight=this.colorChannels===4?this.resizeHeightRGBA:this.resizeHeightRGB};VY.prototype._resizeWidthInterpolatedRGBChannels=function(A,Q){let B=Q?4:3,Y=this.ratioWeightWidthPass,J=this.widthBuffer,C=0,X=0,G=0,F=0,W=0,Z;for(Z=0;C<0.3333333333333333;Z+=B,C+=Y)for(X=Z,G=0;X=U)$+=B,E=$,Z-=U;else{E+=Z;break}}while(Z>0&&$=F)W=E,Z=W,G-=F;else{Z+=G;break}}while(G>0&&W3)this.outputWidthWorkBenchOpaquePixelsCount=this.generateFloat64Buffer(this.heightOriginal)}};VY.prototype.initializeSecondPassBuffers=function(A){if(this.heightBuffer=this.generateUint8Buffer(this.finalResultSize),!A){if(this.outputHeightWorkBench=this.generateFloatBuffer(this.targetWidthMultipliedByChannels),this.colorChannels>3)this.outputHeightWorkBenchOpaquePixelsCount=this.generateFloat64Buffer(this.targetWidth)}};VY.prototype.generateFloatBuffer=function(A){try{return new Float32Array(A)}catch(Q){return console.error(Q),[]}};VY.prototype.generateFloat64Buffer=function(A){try{return new Float64Array(A)}catch(Q){return console.error(Q),[]}};VY.prototype.generateUint8Buffer=function(A){try{return new Uint8Array(A)}catch(Q){return console.error(Q),[]}};var W1A=VY;var Fg={nearestNeighbor(A,Q){let{width:B,height:Y}=A,J=Q.width,C=Q.height,X=A.data,G=Q.data;for(let F=0;F0?J[P-4]:2*J[P]-J[P+4],O=J[P],k=J[P+4],T=z0?K[P-U*4]:2*K[P]-K[P+U*4],O=K[P],k=K[P+U*4],T=z1)for(let H=0;H{A.bitmap.data=Buffer.from(X),A.bitmap.width=Y,A.bitmap.height=J}).resize(A.bitmap.data);return A},scale(A,Q){let{f:B,mode:Y}=typeof Q==="number"?{f:Q}:QrQ.parse(Q),J=A.bitmap.width*B,C=A.bitmap.height*B;return this.resize(A,{w:J,h:C,mode:Y})},scaleToFit(A,Q){let{h:B,w:Y,mode:J}=ArQ.parse(Q),C=Y/B>A.bitmap.width/A.bitmap.height?B/A.bitmap.height:Y/A.bitmap.width;return this.scale(A,{f:C,mode:J})}};var YrQ=s.object({w:s.number(),h:s.number(),align:s.number().optional(),mode:s.nativeEnum(G8).optional()}),Z1A={contain(A,Q){let{w:B,h:Y,align:J=Y5.CENTER|J5.MIDDLE,mode:C}=YrQ.parse(Q),X=J&7,G=J>>3;if(!(X!==0&&!(X&X-1)||G!==0&&!(G&G-1)))throw Error("only use one flag per alignment direction");let F=X>>1,W=G>>1,Z=B/Y>A.bitmap.width/A.bitmap.height?Y/A.bitmap.height:B/A.bitmap.width,U=RC.scale(B8(A),{f:Z,mode:C});return A=RC.resize(A,{w:B,h:Y,mode:C}),A.scan(($,E,K)=>{A.bitmap.data.writeUInt32BE(A.background,K)}),A=ZU.blit(A,{src:U,x:(A.bitmap.width-U.bitmap.width)/2*F,y:(A.bitmap.height-U.bitmap.height)/2*W}),A}};var CrQ=s.object({x:s.number(),y:s.number(),w:s.number(),h:s.number()}),XrQ=s.object({tolerance:s.number().min(0).max(1).optional(),cropOnlyFrames:s.boolean().optional(),cropSymmetric:s.boolean().optional(),leaveBorder:s.number().optional(),ignoreSides:s.object({north:s.boolean().optional(),south:s.boolean().optional(),east:s.boolean().optional(),west:s.boolean().optional()}).optional()}),VU={crop(A,Q){let{x:B,y:Y,w:J,h:C}=CrQ.parse(Q);if(B=Math.round(B),Y=Math.round(Y),J=Math.round(J),C=Math.round(C),B===0&&J===A.bitmap.width){let X=J*Y+B<<2,G=X+(C*J<<2);A.bitmap.data=A.bitmap.data.slice(X,G)}else{let X=Buffer.allocUnsafe(J*C*4),G=0;o8(A,B,Y,J,C,function(F,W,Z){let U=A.bitmap.data.readUInt32BE(Z);X.writeUInt32BE(U,G),G+=4}),A.bitmap.data=X}return A.bitmap.width=J,A.bitmap.height=C,A},autocrop(A,Q={}){let{tolerance:B=0.0002,cropOnlyFrames:Y=!0,cropSymmetric:J=!1,leaveBorder:C=0,ignoreSides:X}=typeof Q==="number"?{tolerance:Q}:XrQ.parse(Q),G=A.bitmap.width,F=A.bitmap.height,W=1,Z={north:!1,south:!1,east:!1,west:!1,...X},U=A.getPixelColor(0,0),$=S4(U),E=0,K=0,I=0,V=0;if(U=A.getPixelColor(0,0),!Z.north)A:for(let z=0;zB)break A}E++}if(U=A.getPixelColor(G,0),!Z.west)A:for(let z=0;zB)break A}V++}if(U=A.getPixelColor(0,F),!Z.south)A:for(let z=F-1;z>=E+1;z--){for(let M=G-K-1;M>=0;M--){let N=A.getPixelColor(M,z),q=S4(N);if(FI($,q)>B)break A}I++}if(U=A.getPixelColor(G,F),!Z.east)A:for(let z=G-1;z>=0+V+1;z--){for(let M=F-1;M>=0+E;M--){let N=A.getPixelColor(z,M),q=S4(N);if(FI($,q)>B)break A}K++}let H=!1;if(V-=C,K-=C,E-=C,I-=C,J){let z=Math.min(K,V),M=Math.min(E,I);V=z,K=z,E=M,I=M}V=V>=0?V:0,K=K>=0?K:0,E=E>=0?E:0,I=I>=0?I:0;let D=G-(V+K),L=F-(I+E);if(Y)H=K!==0&&E!==0&&V!==0&&I!==0;else H=K!==0||E!==0||V!==0||I!==0;if(H)this.crop(A,{x:V,y:E,w:D,h:L});return A}};var FrQ=s.object({w:s.number(),h:s.number(),align:s.number().optional(),mode:s.nativeEnum(G8).optional()}),$1A={cover(A,Q){let{w:B,h:Y,align:J=Y5.CENTER|J5.MIDDLE,mode:C}=FrQ.parse(Q),X=J&7,G=J>>3;if(!(X!==0&&!(X&X-1)||G!==0&&!(G&G-1)))throw Error("only use one flag per alignment direction");let F=X>>1,W=G>>1,Z=B/Y>A.bitmap.width/A.bitmap.height?B/A.bitmap.width:Y/A.bitmap.height;return A=RC.scale(A,{f:Z,mode:C}),A=VU.crop(A,{x:(A.bitmap.width-B)/2*F,y:(A.bitmap.height-Y)/2*W,w:B,h:Y}),A}};var ZrQ=s.object({map:G7,offset:s.number()}),U1A={displace(A,Q){let{map:B,offset:Y}=ZrQ.parse(Q),J=B8(A);return A.scan((C,X,G)=>{let F=B.bitmap.data[G]/256*Y;F=Math.round(F);let W=A.getPixelIndex(C+F,X);A.bitmap.data[W]=J.bitmap.data[G],A.bitmap.data[W+1]=J.bitmap.data[G+1],A.bitmap.data[W+2]=J.bitmap.data[G+2]}),A}};var E1A={dither(A){let Q=[1,9,3,11,13,5,15,7,4,12,2,10,16,8,14,6];return A.scan((B,Y,J)=>{let C=((Y&3)<<2)+B%4,X=Q[C];A.bitmap.data[J]=Math.min(A.bitmap.data[J]+X,255),A.bitmap.data[J+1]=Math.min(A.bitmap.data[J+1]+X,255),A.bitmap.data[J+2]=Math.min(A.bitmap.data[J+2]+X,255)}),A}};var ErQ=s.object({radius:s.number().min(0).optional()}),K1A={fisheye(A,Q={}){let{radius:B=2.5}=ErQ.parse(Q),Y=B8(A),{width:J,height:C}=Y.bitmap;return Y.scan((X,G)=>{let F=X/J,W=G/C,Z=Math.sqrt(Math.pow(F-0.5,2)+Math.pow(W-0.5,2)),U=2*Math.pow(Z,B),$=(F-0.5)/Z,E=(W-0.5)/Z,K=Math.round((U*$+0.5)*J),I=Math.round((U*E+0.5)*C),V=Y.getPixelColor(K,I);A.setPixelColor(V,X,G)}),A.setPixelColor(Y.getPixelColor(J/2,C/2),J/2,C/2),A}};var VrQ=s.object({horizontal:s.boolean().optional(),vertical:s.boolean().optional()}),V1A={flip(A,Q){let{horizontal:B,vertical:Y}=VrQ.parse(Q),J=Buffer.alloc(A.bitmap.data.length);return A.scan((C,X,G)=>{let F=B?A.bitmap.width-1-C:C,W=Y?A.bitmap.height-1-X:X,Z=A.bitmap.width*W+F<<2,U=A.bitmap.data.readUInt32BE(G);J.writeUInt32BE(U,Z)}),A.bitmap.data=Buffer.from(J),A}};var lI=qA(N1A(),1);class L1A{size;smallerSize;constructor(A,Q){this.size=A||32,this.smallerSize=Q||8,NrQ(this.size)}distance(A,Q){let B=0;for(let Y=0;YJ?"1":"0";return C}}function DrQ(A){let Q=A&255;A>>>=8;let B=A&255;A>>>=8;let Y=A&255;return A>>>=8,{r:A&255,g:Y,b:B,a:Q}}var _2=[];function NrQ(A){for(let Q=1;Q64)throw Error("base must be a number between 2 and 64");let B=q1A.slice(0,Q),Y=this.pHash(A),J=M1A[Q];return lI.default(lI.default.BIN,B)(Y).padStart(J,"0")},distanceFromHash(A,Q){let B=new Zg,Y=B.getHash(A);return B.distance(Y,Q)}};var MrQ=s.object({src:G7,x:s.number().optional(),y:s.number().optional()}),zrQ=s.union([G7,MrQ]),R1A={mask(A,Q){zrQ.parse(Q);let B,Y,J;if("bitmap"in Q)B=Q,Y=0,J=0;else B=Q.src,Y=Q.x??0,J=Q.y??0;Y=Math.round(Y),J=Math.round(J);let C=A.bitmap.width,X=A.bitmap.height;return B.scan(function(G,F,W){let Z=Y+G,U=J+F;if(Z>=0&&U>=0&&Z{if(IU(A,G+(Y.length>1?" ":""))>B){let U=G[Symbol.iterator](),$="";for(let E of U){let K=[...C,$+E].join(" "),I=IU(A,K);if(IB)J.push([...C,$]),C=[],$=E;else J.push([...C,$+E]),C=[],$=""}return}let W=[...C,G].join(" "),Z=IU(A,W);if(Z<=B&&!G.includes(` +>>> no match, partial?`,A,U,Q,$),U===G)return!0}return!1}let K;if(typeof W==="string")K=Z===W,this.debug("string match",W,Z,K);else K=W.test(Z),this.debug("pattern match",W,Z,K);if(!K)return!1}if(C===G&&X===F)return!0;else if(C===G)return B;else if(X===F)return C===G-1&&A[C]==="";else throw Error("wtf?")}braceExpand(){return UYA(this.pattern,this.options)}parse(A){$I(A);let Q=this.options;if(A==="**")return eY;if(A==="")return"";let B,Y=null;if(B=A.match(zbQ))Y=Q.dot?wbQ:RbQ;else if(B=A.match(EbQ))Y=(Q.nocase?Q.dot?HbQ:IbQ:Q.dot?VbQ:KbQ)(B[1]);else if(B=A.match(jbQ))Y=(Q.nocase?Q.dot?PbQ:ObQ:Q.dot?TbQ:SbQ)(B);else if(B=A.match(DbQ))Y=Q.dot?LbQ:NbQ;else if(B=A.match(qbQ))Y=MbQ;let J=tY.fromGlob(A,this.options).toMMPattern();if(Y&&typeof J==="object")Reflect.defineProperty(J,"test",{value:Y});return J}makeRe(){if(this.regexp||this.regexp===!1)return this.regexp;let A=this.set;if(!A.length)return this.regexp=!1,this.regexp;let Q=this.options,B=Q.noglobstar?vbQ:Q.dot?ybQ:hbQ,Y=new Set(Q.nocase?["i"]:[]),J=A.map((G)=>{let F=G.map((W)=>{if(W instanceof RegExp)for(let Z of W.flags.split(""))Y.add(Z);return typeof W==="string"?mbQ(W):W===eY?eY:W._src});return F.forEach((W,Z)=>{let U=F[Z+1],$=F[Z-1];if(W!==eY||$===eY)return;if($===void 0)if(U!==void 0&&U!==eY)F[Z+1]="(?:\\/|"+B+"\\/)?"+U;else F[Z]=B;else if(U===void 0)F[Z-1]=$+"(?:\\/|"+B+")?";else if(U!==eY)F[Z-1]=$+"(?:\\/|\\/"+B+"\\/)"+U,F[Z+1]=eY}),F.filter((W)=>W!==eY).join("/")}).join("|"),[C,X]=A.length>1?["(?:",")"]:["",""];if(J="^"+C+J+X+"$",this.negate)J="^(?!"+J+").+$";try{this.regexp=new RegExp(J,[...Y].join(""))}catch(G){this.regexp=!1}return this.regexp}slashSplit(A){if(this.preserveMultipleSlashes)return A.split("/");else if(this.isWindows&&/^\/\/[^\/]+/.test(A))return["",...A.split(/\/+/)];else return A.split(/\/+/)}match(A,Q=this.partial){if(this.debug("match",A,this.pattern),this.comment)return!1;if(this.empty)return A==="";if(A==="/"&&Q)return!0;let B=this.options;if(this.isWindows)A=A.split("\\").join("/");let Y=this.slashSplit(A);this.debug(this.pattern,"split",Y);let J=this.set;this.debug(this.pattern,"set",J);let C=Y[Y.length-1];if(!C)for(let X=Y.length-2;!C&&X>=0;X--)C=Y[X];for(let X=0;X{typeof Ly.emitWarning==="function"?Ly.emitWarning(A,Q,B,Y):console.error(`[${B}] ${Q}: ${A}`)},B2=globalThis.AbortController,EYA=globalThis.AbortSignal;if(typeof B2>"u"){EYA=class{onabort;_onabort=[];reason;aborted=!1;addEventListener(Y,J){this._onabort.push(J)}},B2=class{constructor(){Q()}signal=new EYA;abort(Y){if(this.signal.aborted)return;this.signal.reason=Y,this.signal.aborted=!0;for(let J of this.signal._onabort)J(Y);this.signal.onabort?.(Y)}};let A=Ly.env?.LRU_CACHE_IGNORE_AC_WARNING!=="1",Q=()=>{if(!A)return;A=!1,VYA("AbortController is not defined. If using lru-cache in node 14, load an AbortController polyfill from the `node-abort-controller` package. A minimal polyfill is provided for use by LRUCache.fetch(), but it should not be relied upon in other contexts (eg, passing it to other APIs that use AbortController/AbortSignal might have undesirable effects). You may disable this with LRU_CACHE_IGNORE_AC_WARNING=1 in the env.","NO_ABORT_CONTROLLER","ENOTSUP",Q)}}var ubQ=(A)=>!KYA.has(A),FCY=Symbol("type"),iG=(A)=>A&&A===Math.floor(A)&&A>0&&isFinite(A),IYA=(A)=>!iG(A)?null:A<=Math.pow(2,8)?Uint8Array:A<=Math.pow(2,16)?Uint16Array:A<=Math.pow(2,32)?Uint32Array:A<=Number.MAX_SAFE_INTEGER?EI:null;class EI extends Array{constructor(A){super(A);this.fill(0)}}class S4{heap;length;static#A=!1;static create(A){let Q=IYA(A);if(!Q)return[];S4.#A=!0;let B=new S4(A,Q);return S4.#A=!1,B}constructor(A,Q){if(!S4.#A)throw TypeError("instantiate Stack using Stack.create(n)");this.heap=new Q(A),this.length=0}push(A){this.heap[this.length++]=A}pop(){return this.heap[--this.length]}}class KI{#A;#Q;#B;#Y;#J;#C;#F;ttl;ttlResolution;ttlAutopurge;updateAgeOnGet;updateAgeOnHas;allowStale;noDisposeOnSet;noUpdateTTL;maxEntrySize;sizeCalculation;noDeleteOnFetchRejection;noDeleteOnStaleGet;allowStaleOnFetchAbort;allowStaleOnFetchRejection;ignoreFetchAbort;#X;#G;#Z;#U;#W;#E;#V;#I;#D;#O;#N;#P;#M;#q;#L;#w;#H;#S;static unsafeExposeInternals(A){return{starts:A.#M,ttls:A.#q,sizes:A.#P,keyMap:A.#Z,keyList:A.#U,valList:A.#W,next:A.#E,prev:A.#V,get head(){return A.#I},get tail(){return A.#D},free:A.#O,isBackgroundFetch:(Q)=>A.#K(Q),backgroundFetch:(Q,B,Y,J)=>A.#h(Q,B,Y,J),moveToTail:(Q)=>A.#f(Q),indexes:(Q)=>A.#j(Q),rindexes:(Q)=>A.#T(Q),isStale:(Q)=>A.#R(Q)}}get max(){return this.#A}get maxSize(){return this.#Q}get calculatedSize(){return this.#G}get size(){return this.#X}get fetchMethod(){return this.#C}get memoMethod(){return this.#F}get dispose(){return this.#B}get onInsert(){return this.#Y}get disposeAfter(){return this.#J}constructor(A){let{max:Q=0,ttl:B,ttlResolution:Y=1,ttlAutopurge:J,updateAgeOnGet:C,updateAgeOnHas:X,allowStale:G,dispose:F,onInsert:W,disposeAfter:Z,noDisposeOnSet:U,noUpdateTTL:$,maxSize:E=0,maxEntrySize:K=0,sizeCalculation:I,fetchMethod:V,memoMethod:H,noDeleteOnFetchRejection:D,noDeleteOnStaleGet:L,allowStaleOnFetchRejection:z,allowStaleOnFetchAbort:M,ignoreFetchAbort:N}=A;if(Q!==0&&!iG(Q))throw TypeError("max option must be a nonnegative integer");let q=Q?IYA(Q):Array;if(!q)throw Error("invalid max value: "+Q);if(this.#A=Q,this.#Q=E,this.maxEntrySize=K||this.#Q,this.sizeCalculation=I,this.sizeCalculation){if(!this.#Q&&!this.maxEntrySize)throw TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");if(typeof this.sizeCalculation!=="function")throw TypeError("sizeCalculation set to non-function")}if(H!==void 0&&typeof H!=="function")throw TypeError("memoMethod must be a function if defined");if(this.#F=H,V!==void 0&&typeof V!=="function")throw TypeError("fetchMethod must be a function if specified");if(this.#C=V,this.#w=!!V,this.#Z=new Map,this.#U=Array(Q).fill(void 0),this.#W=Array(Q).fill(void 0),this.#E=new q(Q),this.#V=new q(Q),this.#I=0,this.#D=0,this.#O=S4.create(Q),this.#X=0,this.#G=0,typeof F==="function")this.#B=F;if(typeof W==="function")this.#Y=W;if(typeof Z==="function")this.#J=Z,this.#N=[];else this.#J=void 0,this.#N=void 0;if(this.#L=!!this.#B,this.#S=!!this.#Y,this.#H=!!this.#J,this.noDisposeOnSet=!!U,this.noUpdateTTL=!!$,this.noDeleteOnFetchRejection=!!D,this.allowStaleOnFetchRejection=!!z,this.allowStaleOnFetchAbort=!!M,this.ignoreFetchAbort=!!N,this.maxEntrySize!==0){if(this.#Q!==0){if(!iG(this.#Q))throw TypeError("maxSize must be a positive integer if specified")}if(!iG(this.maxEntrySize))throw TypeError("maxEntrySize must be a positive integer if specified");this.#m()}if(this.allowStale=!!G,this.noDeleteOnStaleGet=!!L,this.updateAgeOnGet=!!C,this.updateAgeOnHas=!!X,this.ttlResolution=iG(Y)||Y===0?Y:1,this.ttlAutopurge=!!J,this.ttl=B||0,this.ttl){if(!iG(this.ttl))throw TypeError("ttl must be a positive integer if specified");this.#$()}if(this.#A===0&&this.ttl===0&&this.#Q===0)throw TypeError("At least one of max, maxSize, or ttl is required");if(!this.ttlAutopurge&&!this.#A&&!this.#Q){if(ubQ("LRU_CACHE_UNBOUNDED"))KYA.add("LRU_CACHE_UNBOUNDED"),VYA("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning","LRU_CACHE_UNBOUNDED",KI)}}getRemainingTTL(A){return this.#Z.has(A)?1/0:0}#$(){let A=new EI(this.#A),Q=new EI(this.#A);this.#q=A,this.#M=Q,this.#k=(J,C,X=T4.now())=>{if(Q[J]=C!==0?X:0,A[J]=C,C!==0&&this.ttlAutopurge){let G=setTimeout(()=>{if(this.#R(J))this.#_(this.#U[J],"expire")},C+1);if(G.unref)G.unref()}},this.#v=(J)=>{Q[J]=A[J]!==0?T4.now():0},this.#z=(J,C)=>{if(A[C]){let X=A[C],G=Q[C];if(!X||!G)return;J.ttl=X,J.start=G,J.now=B||Y();let F=J.now-G;J.remainingTTL=X-F}};let B=0,Y=()=>{let J=T4.now();if(this.ttlResolution>0){B=J;let C=setTimeout(()=>B=0,this.ttlResolution);if(C.unref)C.unref()}return J};this.getRemainingTTL=(J)=>{let C=this.#Z.get(J);if(C===void 0)return 0;let X=A[C],G=Q[C];if(!X||!G)return 1/0;let F=(B||Y())-G;return X-F},this.#R=(J)=>{let C=Q[J],X=A[J];return!!X&&!!C&&(B||Y())-C>X}}#v=()=>{};#z=()=>{};#k=()=>{};#R=()=>!1;#m(){let A=new EI(this.#A);this.#G=0,this.#P=A,this.#y=(Q)=>{this.#G-=A[Q],A[Q]=0},this.#u=(Q,B,Y,J)=>{if(this.#K(B))return 0;if(!iG(Y))if(J){if(typeof J!=="function")throw TypeError("sizeCalculation must be a function");if(Y=J(B,Q),!iG(Y))throw TypeError("sizeCalculation return invalid (expect positive integer)")}else throw TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");return Y},this.#g=(Q,B,Y)=>{if(A[Q]=B,this.#Q){let J=this.#Q-A[Q];while(this.#G>J)this.#x(!0)}if(this.#G+=A[Q],Y)Y.entrySize=B,Y.totalCalculatedSize=this.#G}}#y=(A)=>{};#g=(A,Q,B)=>{};#u=(A,Q,B,Y)=>{if(B||Y)throw TypeError("cannot set size without setting maxSize or maxEntrySize on cache");return 0};*#j({allowStale:A=this.allowStale}={}){if(this.#X)for(let Q=this.#D;;){if(!this.#d(Q))break;if(A||!this.#R(Q))yield Q;if(Q===this.#I)break;else Q=this.#V[Q]}}*#T({allowStale:A=this.allowStale}={}){if(this.#X)for(let Q=this.#I;;){if(!this.#d(Q))break;if(A||!this.#R(Q))yield Q;if(Q===this.#D)break;else Q=this.#E[Q]}}#d(A){return A!==void 0&&this.#Z.get(this.#U[A])===A}*entries(){for(let A of this.#j())if(this.#W[A]!==void 0&&this.#U[A]!==void 0&&!this.#K(this.#W[A]))yield[this.#U[A],this.#W[A]]}*rentries(){for(let A of this.#T())if(this.#W[A]!==void 0&&this.#U[A]!==void 0&&!this.#K(this.#W[A]))yield[this.#U[A],this.#W[A]]}*keys(){for(let A of this.#j()){let Q=this.#U[A];if(Q!==void 0&&!this.#K(this.#W[A]))yield Q}}*rkeys(){for(let A of this.#T()){let Q=this.#U[A];if(Q!==void 0&&!this.#K(this.#W[A]))yield Q}}*values(){for(let A of this.#j())if(this.#W[A]!==void 0&&!this.#K(this.#W[A]))yield this.#W[A]}*rvalues(){for(let A of this.#T())if(this.#W[A]!==void 0&&!this.#K(this.#W[A]))yield this.#W[A]}[Symbol.iterator](){return this.entries()}[Symbol.toStringTag]="LRUCache";find(A,Q={}){for(let B of this.#j()){let Y=this.#W[B],J=this.#K(Y)?Y.__staleWhileFetching:Y;if(J===void 0)continue;if(A(J,this.#U[B],this))return this.get(this.#U[B],Q)}}forEach(A,Q=this){for(let B of this.#j()){let Y=this.#W[B],J=this.#K(Y)?Y.__staleWhileFetching:Y;if(J===void 0)continue;A.call(Q,J,this.#U[B],this)}}rforEach(A,Q=this){for(let B of this.#T()){let Y=this.#W[B],J=this.#K(Y)?Y.__staleWhileFetching:Y;if(J===void 0)continue;A.call(Q,J,this.#U[B],this)}}purgeStale(){let A=!1;for(let Q of this.#T({allowStale:!0}))if(this.#R(Q))this.#_(this.#U[Q],"expire"),A=!0;return A}info(A){let Q=this.#Z.get(A);if(Q===void 0)return;let B=this.#W[Q],Y=this.#K(B)?B.__staleWhileFetching:B;if(Y===void 0)return;let J={value:Y};if(this.#q&&this.#M){let C=this.#q[Q],X=this.#M[Q];if(C&&X){let G=C-(T4.now()-X);J.ttl=G,J.start=Date.now()}}if(this.#P)J.size=this.#P[Q];return J}dump(){let A=[];for(let Q of this.#j({allowStale:!0})){let B=this.#U[Q],Y=this.#W[Q],J=this.#K(Y)?Y.__staleWhileFetching:Y;if(J===void 0||B===void 0)continue;let C={value:J};if(this.#q&&this.#M){C.ttl=this.#q[Q];let X=T4.now()-this.#M[Q];C.start=Math.floor(Date.now()-X)}if(this.#P)C.size=this.#P[Q];A.unshift([B,C])}return A}load(A){this.clear();for(let[Q,B]of A){if(B.start){let Y=Date.now()-B.start;B.start=T4.now()-Y}this.set(Q,B.value,B)}}set(A,Q,B={}){if(Q===void 0)return this.delete(A),this;let{ttl:Y=this.ttl,start:J,noDisposeOnSet:C=this.noDisposeOnSet,sizeCalculation:X=this.sizeCalculation,status:G}=B,{noUpdateTTL:F=this.noUpdateTTL}=B,W=this.#u(A,Q,B.size||0,X);if(this.maxEntrySize&&W>this.maxEntrySize){if(G)G.set="miss",G.maxEntrySizeExceeded=!0;return this.#_(A,"set"),this}let Z=this.#X===0?void 0:this.#Z.get(A);if(Z===void 0){if(Z=this.#X===0?this.#D:this.#O.length!==0?this.#O.pop():this.#X===this.#A?this.#x(!1):this.#X,this.#U[Z]=A,this.#W[Z]=Q,this.#Z.set(A,Z),this.#E[this.#D]=Z,this.#V[Z]=this.#D,this.#D=Z,this.#X++,this.#g(Z,W,G),G)G.set="add";if(F=!1,this.#S)this.#Y?.(Q,A,"add")}else{this.#f(Z);let U=this.#W[Z];if(Q!==U){if(this.#w&&this.#K(U)){U.__abortController.abort(Error("replaced"));let{__staleWhileFetching:$}=U;if($!==void 0&&!C){if(this.#L)this.#B?.($,A,"set");if(this.#H)this.#N?.push([$,A,"set"])}}else if(!C){if(this.#L)this.#B?.(U,A,"set");if(this.#H)this.#N?.push([U,A,"set"])}if(this.#y(Z),this.#g(Z,W,G),this.#W[Z]=Q,G){G.set="replace";let $=U&&this.#K(U)?U.__staleWhileFetching:U;if($!==void 0)G.oldValue=$}}else if(G)G.set="update";if(this.#S)this.onInsert?.(Q,A,Q===U?"update":"replace")}if(Y!==0&&!this.#q)this.#$();if(this.#q){if(!F)this.#k(Z,Y,J);if(G)this.#z(G,Z)}if(!C&&this.#H&&this.#N){let U=this.#N,$;while($=U?.shift())this.#J?.(...$)}return this}pop(){try{while(this.#X){let A=this.#W[this.#I];if(this.#x(!0),this.#K(A)){if(A.__staleWhileFetching)return A.__staleWhileFetching}else if(A!==void 0)return A}}finally{if(this.#H&&this.#N){let A=this.#N,Q;while(Q=A?.shift())this.#J?.(...Q)}}}#x(A){let Q=this.#I,B=this.#U[Q],Y=this.#W[Q];if(this.#w&&this.#K(Y))Y.__abortController.abort(Error("evicted"));else if(this.#L||this.#H){if(this.#L)this.#B?.(Y,B,"evict");if(this.#H)this.#N?.push([Y,B,"evict"])}if(this.#y(Q),A)this.#U[Q]=void 0,this.#W[Q]=void 0,this.#O.push(Q);if(this.#X===1)this.#I=this.#D=0,this.#O.length=0;else this.#I=this.#E[Q];return this.#Z.delete(B),this.#X--,Q}has(A,Q={}){let{updateAgeOnHas:B=this.updateAgeOnHas,status:Y}=Q,J=this.#Z.get(A);if(J!==void 0){let C=this.#W[J];if(this.#K(C)&&C.__staleWhileFetching===void 0)return!1;if(!this.#R(J)){if(B)this.#v(J);if(Y)Y.has="hit",this.#z(Y,J);return!0}else if(Y)Y.has="stale",this.#z(Y,J)}else if(Y)Y.has="miss";return!1}peek(A,Q={}){let{allowStale:B=this.allowStale}=Q,Y=this.#Z.get(A);if(Y===void 0||!B&&this.#R(Y))return;let J=this.#W[Y];return this.#K(J)?J.__staleWhileFetching:J}#h(A,Q,B,Y){let J=Q===void 0?void 0:this.#W[Q];if(this.#K(J))return J;let C=new B2,{signal:X}=B;X?.addEventListener("abort",()=>C.abort(X.reason),{signal:C.signal});let G={signal:C.signal,options:B,context:Y},F=(K,I=!1)=>{let{aborted:V}=C.signal,H=B.ignoreFetchAbort&&K!==void 0;if(B.status)if(V&&!I){if(B.status.fetchAborted=!0,B.status.fetchError=C.signal.reason,H)B.status.fetchAbortIgnored=!0}else B.status.fetchResolved=!0;if(V&&!H&&!I)return Z(C.signal.reason);let D=$;if(this.#W[Q]===$)if(K===void 0)if(D.__staleWhileFetching)this.#W[Q]=D.__staleWhileFetching;else this.#_(A,"fetch");else{if(B.status)B.status.fetchUpdated=!0;this.set(A,K,G.options)}return K},W=(K)=>{if(B.status)B.status.fetchRejected=!0,B.status.fetchError=K;return Z(K)},Z=(K)=>{let{aborted:I}=C.signal,V=I&&B.allowStaleOnFetchAbort,H=V||B.allowStaleOnFetchRejection,D=H||B.noDeleteOnFetchRejection,L=$;if(this.#W[Q]===$){if(!D||L.__staleWhileFetching===void 0)this.#_(A,"fetch");else if(!V)this.#W[Q]=L.__staleWhileFetching}if(H){if(B.status&&L.__staleWhileFetching!==void 0)B.status.returnedStale=!0;return L.__staleWhileFetching}else if(L.__returned===L)throw K},U=(K,I)=>{let V=this.#C?.(A,J,G);if(V&&V instanceof Promise)V.then((H)=>K(H===void 0?void 0:H),I);C.signal.addEventListener("abort",()=>{if(!B.ignoreFetchAbort||B.allowStaleOnFetchAbort){if(K(void 0),B.allowStaleOnFetchAbort)K=(H)=>F(H,!0)}})};if(B.status)B.status.fetchDispatched=!0;let $=new Promise(U).then(F,W),E=Object.assign($,{__abortController:C,__staleWhileFetching:J,__returned:void 0});if(Q===void 0)this.set(A,E,{...G.options,status:void 0}),Q=this.#Z.get(A);else this.#W[Q]=E;return E}#K(A){if(!this.#w)return!1;let Q=A;return!!Q&&Q instanceof Promise&&Q.hasOwnProperty("__staleWhileFetching")&&Q.__abortController instanceof B2}async fetch(A,Q={}){let{allowStale:B=this.allowStale,updateAgeOnGet:Y=this.updateAgeOnGet,noDeleteOnStaleGet:J=this.noDeleteOnStaleGet,ttl:C=this.ttl,noDisposeOnSet:X=this.noDisposeOnSet,size:G=0,sizeCalculation:F=this.sizeCalculation,noUpdateTTL:W=this.noUpdateTTL,noDeleteOnFetchRejection:Z=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:U=this.allowStaleOnFetchRejection,ignoreFetchAbort:$=this.ignoreFetchAbort,allowStaleOnFetchAbort:E=this.allowStaleOnFetchAbort,context:K,forceRefresh:I=!1,status:V,signal:H}=Q;if(!this.#w){if(V)V.fetch="get";return this.get(A,{allowStale:B,updateAgeOnGet:Y,noDeleteOnStaleGet:J,status:V})}let D={allowStale:B,updateAgeOnGet:Y,noDeleteOnStaleGet:J,ttl:C,noDisposeOnSet:X,size:G,sizeCalculation:F,noUpdateTTL:W,noDeleteOnFetchRejection:Z,allowStaleOnFetchRejection:U,allowStaleOnFetchAbort:E,ignoreFetchAbort:$,status:V,signal:H},L=this.#Z.get(A);if(L===void 0){if(V)V.fetch="miss";let z=this.#h(A,L,D,K);return z.__returned=z}else{let z=this.#W[L];if(this.#K(z)){let P=B&&z.__staleWhileFetching!==void 0;if(V){if(V.fetch="inflight",P)V.returnedStale=!0}return P?z.__staleWhileFetching:z.__returned=z}let M=this.#R(L);if(!I&&!M){if(V)V.fetch="hit";if(this.#f(L),Y)this.#v(L);if(V)this.#z(V,L);return z}let N=this.#h(A,L,D,K),w=N.__staleWhileFetching!==void 0&&B;if(V){if(V.fetch=M?"stale":"refresh",w&&M)V.returnedStale=!0}return w?N.__staleWhileFetching:N.__returned=N}}async forceFetch(A,Q={}){let B=await this.fetch(A,Q);if(B===void 0)throw Error("fetch() returned undefined");return B}memo(A,Q={}){let B=this.#F;if(!B)throw Error("no memoMethod provided to constructor");let{context:Y,forceRefresh:J,...C}=Q,X=this.get(A,C);if(!J&&X!==void 0)return X;let G=B(A,X,{options:C,context:Y});return this.set(A,G,C),G}get(A,Q={}){let{allowStale:B=this.allowStale,updateAgeOnGet:Y=this.updateAgeOnGet,noDeleteOnStaleGet:J=this.noDeleteOnStaleGet,status:C}=Q,X=this.#Z.get(A);if(X!==void 0){let G=this.#W[X],F=this.#K(G);if(C)this.#z(C,X);if(this.#R(X)){if(C)C.get="stale";if(!F){if(!J)this.#_(A,"expire");if(C&&B)C.returnedStale=!0;return B?G:void 0}else{if(C&&B&&G.__staleWhileFetching!==void 0)C.returnedStale=!0;return B?G.__staleWhileFetching:void 0}}else{if(C)C.get="hit";if(F)return G.__staleWhileFetching;if(this.#f(X),Y)this.#v(X);return G}}else if(C)C.get="miss"}#c(A,Q){this.#V[Q]=A,this.#E[A]=Q}#f(A){if(A!==this.#D){if(A===this.#I)this.#I=this.#E[A];else this.#c(this.#V[A],this.#E[A]);this.#c(this.#D,A),this.#D=A}}delete(A){return this.#_(A,"delete")}#_(A,Q){let B=!1;if(this.#X!==0){let Y=this.#Z.get(A);if(Y!==void 0)if(B=!0,this.#X===1)this.#b(Q);else{this.#y(Y);let J=this.#W[Y];if(this.#K(J))J.__abortController.abort(Error("deleted"));else if(this.#L||this.#H){if(this.#L)this.#B?.(J,A,Q);if(this.#H)this.#N?.push([J,A,Q])}if(this.#Z.delete(A),this.#U[Y]=void 0,this.#W[Y]=void 0,Y===this.#D)this.#D=this.#V[Y];else if(Y===this.#I)this.#I=this.#E[Y];else{let C=this.#V[Y];this.#E[C]=this.#E[Y];let X=this.#E[Y];this.#V[X]=this.#V[Y]}this.#X--,this.#O.push(Y)}}if(this.#H&&this.#N?.length){let Y=this.#N,J;while(J=Y?.shift())this.#J?.(...J)}return B}clear(){return this.#b("delete")}#b(A){for(let Q of this.#T({allowStale:!0})){let B=this.#W[Q];if(this.#K(B))B.__abortController.abort(Error("deleted"));else{let Y=this.#U[Q];if(this.#L)this.#B?.(B,Y,A);if(this.#H)this.#N?.push([B,Y,A])}}if(this.#Z.clear(),this.#W.fill(void 0),this.#U.fill(void 0),this.#q&&this.#M)this.#q.fill(0),this.#M.fill(0);if(this.#P)this.#P.fill(0);if(this.#I=0,this.#D=0,this.#O.length=0,this.#G=0,this.#X=0,this.#H&&this.#N){let Q=this.#N,B;while(B=Q?.shift())this.#J?.(...B)}}}import{posix as tbQ,win32 as Sy}from"node:path";import{fileURLToPath as ebQ}from"node:url";import{lstatSync as AmQ,readdir as QmQ,readdirSync as BmQ,readlinkSync as YmQ,realpathSync as JmQ}from"fs";import*as CmQ from"node:fs";import{lstat as GmQ,readdir as FmQ,readlink as WmQ,realpath as ZmQ}from"node:fs/promises";import{EventEmitter as jy}from"node:events";import qYA from"node:stream";import{StringDecoder as dbQ}from"node:string_decoder";var HYA=typeof process==="object"&&process?process:{stdout:null,stderr:null},cbQ=(A)=>!!A&&typeof A==="object"&&(A instanceof OW||A instanceof qYA||lbQ(A)||pbQ(A)),lbQ=(A)=>!!A&&typeof A==="object"&&A instanceof jy&&typeof A.pipe==="function"&&A.pipe!==qYA.Writable.prototype.pipe,pbQ=(A)=>!!A&&typeof A==="object"&&A instanceof jy&&typeof A.write==="function"&&typeof A.end==="function",p6=Symbol("EOF"),i6=Symbol("maybeEmitEnd"),nG=Symbol("emittedEnd"),Y2=Symbol("emittingEnd"),VI=Symbol("emittedError"),J2=Symbol("closed"),DYA=Symbol("read"),C2=Symbol("flush"),NYA=Symbol("flushChunk"),IC=Symbol("encoding"),k4=Symbol("decoder"),xY=Symbol("flowing"),II=Symbol("paused"),_4=Symbol("resume"),fY=Symbol("buffer"),uJ=Symbol("pipes"),bY=Symbol("bufferLength"),qy=Symbol("bufferPush"),X2=Symbol("bufferShift"),KJ=Symbol("objectMode"),YY=Symbol("destroyed"),My=Symbol("error"),zy=Symbol("emitData"),LYA=Symbol("emitEnd"),Ry=Symbol("emitEnd2"),M1=Symbol("async"),wy=Symbol("abort"),G2=Symbol("aborted"),HI=Symbol("signal"),jW=Symbol("dataListeners"),Q8=Symbol("discarded"),DI=(A)=>Promise.resolve().then(A),ibQ=(A)=>A(),nbQ=(A)=>A==="end"||A==="finish"||A==="prefinish",sbQ=(A)=>A instanceof ArrayBuffer||!!A&&typeof A==="object"&&A.constructor&&A.constructor.name==="ArrayBuffer"&&A.byteLength>=0,rbQ=(A)=>!Buffer.isBuffer(A)&&ArrayBuffer.isView(A);class Oy{src;dest;opts;ondrain;constructor(A,Q,B){this.src=A,this.dest=Q,this.opts=B,this.ondrain=()=>A[_4](),this.dest.on("drain",this.ondrain)}unpipe(){this.dest.removeListener("drain",this.ondrain)}proxyErrors(A){}end(){if(this.unpipe(),this.opts.end)this.dest.end()}}class MYA extends Oy{unpipe(){this.src.removeListener("error",this.proxyErrors),super.unpipe()}constructor(A,Q,B){super(A,Q,B);this.proxyErrors=(Y)=>Q.emit("error",Y),A.on("error",this.proxyErrors)}}var abQ=(A)=>!!A.objectMode,obQ=(A)=>!A.objectMode&&!!A.encoding&&A.encoding!=="buffer";class OW extends jy{[xY]=!1;[II]=!1;[uJ]=[];[fY]=[];[KJ];[IC];[M1];[k4];[p6]=!1;[nG]=!1;[Y2]=!1;[J2]=!1;[VI]=null;[bY]=0;[YY]=!1;[HI];[G2]=!1;[jW]=0;[Q8]=!1;writable=!0;readable=!0;constructor(...A){let Q=A[0]||{};super();if(Q.objectMode&&typeof Q.encoding==="string")throw TypeError("Encoding and objectMode may not be used together");if(abQ(Q))this[KJ]=!0,this[IC]=null;else if(obQ(Q))this[IC]=Q.encoding,this[KJ]=!1;else this[KJ]=!1,this[IC]=null;if(this[M1]=!!Q.async,this[k4]=this[IC]?new dbQ(this[IC]):null,Q&&Q.debugExposeBuffer===!0)Object.defineProperty(this,"buffer",{get:()=>this[fY]});if(Q&&Q.debugExposePipes===!0)Object.defineProperty(this,"pipes",{get:()=>this[uJ]});let{signal:B}=Q;if(B)if(this[HI]=B,B.aborted)this[wy]();else B.addEventListener("abort",()=>this[wy]())}get bufferLength(){return this[bY]}get encoding(){return this[IC]}set encoding(A){throw Error("Encoding must be set at instantiation time")}setEncoding(A){throw Error("Encoding must be set at instantiation time")}get objectMode(){return this[KJ]}set objectMode(A){throw Error("objectMode must be set at instantiation time")}get["async"](){return this[M1]}set["async"](A){this[M1]=this[M1]||!!A}[wy](){this[G2]=!0,this.emit("abort",this[HI]?.reason),this.destroy(this[HI]?.reason)}get aborted(){return this[G2]}set aborted(A){}write(A,Q,B){if(this[G2])return!1;if(this[p6])throw Error("write after end");if(this[YY])return this.emit("error",Object.assign(Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),!0;if(typeof Q==="function")B=Q,Q="utf8";if(!Q)Q="utf8";let Y=this[M1]?DI:ibQ;if(!this[KJ]&&!Buffer.isBuffer(A)){if(rbQ(A))A=Buffer.from(A.buffer,A.byteOffset,A.byteLength);else if(sbQ(A))A=Buffer.from(A);else if(typeof A!=="string")throw Error("Non-contiguous data written to non-objectMode stream")}if(this[KJ]){if(this[xY]&&this[bY]!==0)this[C2](!0);if(this[xY])this.emit("data",A);else this[qy](A);if(this[bY]!==0)this.emit("readable");if(B)Y(B);return this[xY]}if(!A.length){if(this[bY]!==0)this.emit("readable");if(B)Y(B);return this[xY]}if(typeof A==="string"&&!(Q===this[IC]&&!this[k4]?.lastNeed))A=Buffer.from(A,Q);if(Buffer.isBuffer(A)&&this[IC])A=this[k4].write(A);if(this[xY]&&this[bY]!==0)this[C2](!0);if(this[xY])this.emit("data",A);else this[qy](A);if(this[bY]!==0)this.emit("readable");if(B)Y(B);return this[xY]}read(A){if(this[YY])return null;if(this[Q8]=!1,this[bY]===0||A===0||A&&A>this[bY])return this[i6](),null;if(this[KJ])A=null;if(this[fY].length>1&&!this[KJ])this[fY]=[this[IC]?this[fY].join(""):Buffer.concat(this[fY],this[bY])];let Q=this[DYA](A||null,this[fY][0]);return this[i6](),Q}[DYA](A,Q){if(this[KJ])this[X2]();else{let B=Q;if(A===B.length||A===null)this[X2]();else if(typeof B==="string")this[fY][0]=B.slice(A),Q=B.slice(0,A),this[bY]-=A;else this[fY][0]=B.subarray(A),Q=B.subarray(0,A),this[bY]-=A}if(this.emit("data",Q),!this[fY].length&&!this[p6])this.emit("drain");return Q}end(A,Q,B){if(typeof A==="function")B=A,A=void 0;if(typeof Q==="function")B=Q,Q="utf8";if(A!==void 0)this.write(A,Q);if(B)this.once("end",B);if(this[p6]=!0,this.writable=!1,this[xY]||!this[II])this[i6]();return this}[_4](){if(this[YY])return;if(!this[jW]&&!this[uJ].length)this[Q8]=!0;if(this[II]=!1,this[xY]=!0,this.emit("resume"),this[fY].length)this[C2]();else if(this[p6])this[i6]();else this.emit("drain")}resume(){return this[_4]()}pause(){this[xY]=!1,this[II]=!0,this[Q8]=!1}get destroyed(){return this[YY]}get flowing(){return this[xY]}get paused(){return this[II]}[qy](A){if(this[KJ])this[bY]+=1;else this[bY]+=A.length;this[fY].push(A)}[X2](){if(this[KJ])this[bY]-=1;else this[bY]-=this[fY][0].length;return this[fY].shift()}[C2](A=!1){do;while(this[NYA](this[X2]())&&this[fY].length);if(!A&&!this[fY].length&&!this[p6])this.emit("drain")}[NYA](A){return this.emit("data",A),this[xY]}pipe(A,Q){if(this[YY])return A;this[Q8]=!1;let B=this[nG];if(Q=Q||{},A===HYA.stdout||A===HYA.stderr)Q.end=!1;else Q.end=Q.end!==!1;if(Q.proxyErrors=!!Q.proxyErrors,B){if(Q.end)A.end()}else if(this[uJ].push(!Q.proxyErrors?new Oy(this,A,Q):new MYA(this,A,Q)),this[M1])DI(()=>this[_4]());else this[_4]();return A}unpipe(A){let Q=this[uJ].find((B)=>B.dest===A);if(Q){if(this[uJ].length===1){if(this[xY]&&this[jW]===0)this[xY]=!1;this[uJ]=[]}else this[uJ].splice(this[uJ].indexOf(Q),1);Q.unpipe()}}addListener(A,Q){return this.on(A,Q)}on(A,Q){let B=super.on(A,Q);if(A==="data"){if(this[Q8]=!1,this[jW]++,!this[uJ].length&&!this[xY])this[_4]()}else if(A==="readable"&&this[bY]!==0)super.emit("readable");else if(nbQ(A)&&this[nG])super.emit(A),this.removeAllListeners(A);else if(A==="error"&&this[VI]){let Y=Q;if(this[M1])DI(()=>Y.call(this,this[VI]));else Y.call(this,this[VI])}return B}removeListener(A,Q){return this.off(A,Q)}off(A,Q){let B=super.off(A,Q);if(A==="data"){if(this[jW]=this.listeners("data").length,this[jW]===0&&!this[Q8]&&!this[uJ].length)this[xY]=!1}return B}removeAllListeners(A){let Q=super.removeAllListeners(A);if(A==="data"||A===void 0){if(this[jW]=0,!this[Q8]&&!this[uJ].length)this[xY]=!1}return Q}get emittedEnd(){return this[nG]}[i6](){if(!this[Y2]&&!this[nG]&&!this[YY]&&this[fY].length===0&&this[p6]){if(this[Y2]=!0,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[J2])this.emit("close");this[Y2]=!1}}emit(A,...Q){let B=Q[0];if(A!=="error"&&A!=="close"&&A!==YY&&this[YY])return!1;else if(A==="data")return!this[KJ]&&!B?!1:this[M1]?(DI(()=>this[zy](B)),!0):this[zy](B);else if(A==="end")return this[LYA]();else if(A==="close"){if(this[J2]=!0,!this[nG]&&!this[YY])return!1;let J=super.emit("close");return this.removeAllListeners("close"),J}else if(A==="error"){this[VI]=B,super.emit(My,B);let J=!this[HI]||this.listeners("error").length?super.emit("error",B):!1;return this[i6](),J}else if(A==="resume"){let J=super.emit("resume");return this[i6](),J}else if(A==="finish"||A==="prefinish"){let J=super.emit(A);return this.removeAllListeners(A),J}let Y=super.emit(A,...Q);return this[i6](),Y}[zy](A){for(let B of this[uJ])if(B.dest.write(A)===!1)this.pause();let Q=this[Q8]?!1:super.emit("data",A);return this[i6](),Q}[LYA](){if(this[nG])return!1;return this[nG]=!0,this.readable=!1,this[M1]?(DI(()=>this[Ry]()),!0):this[Ry]()}[Ry](){if(this[k4]){let Q=this[k4].end();if(Q){for(let B of this[uJ])B.dest.write(Q);if(!this[Q8])super.emit("data",Q)}}for(let Q of this[uJ])Q.end();let A=super.emit("end");return this.removeAllListeners("end"),A}async collect(){let A=Object.assign([],{dataLength:0});if(!this[KJ])A.dataLength=0;let Q=this.promise();return this.on("data",(B)=>{if(A.push(B),!this[KJ])A.dataLength+=B.length}),await Q,A}async concat(){if(this[KJ])throw Error("cannot concat in objectMode");let A=await this.collect();return this[IC]?A.join(""):Buffer.concat(A,A.dataLength)}async promise(){return new Promise((A,Q)=>{this.on(YY,()=>Q(Error("stream destroyed"))),this.on("error",(B)=>Q(B)),this.on("end",()=>A())})}[Symbol.asyncIterator](){this[Q8]=!1;let A=!1,Q=async()=>{return this.pause(),A=!0,{value:void 0,done:!0}};return{next:()=>{if(A)return Q();let Y=this.read();if(Y!==null)return Promise.resolve({done:!1,value:Y});if(this[p6])return Q();let J,C,X=(Z)=>{this.off("data",G),this.off("end",F),this.off(YY,W),Q(),C(Z)},G=(Z)=>{this.off("error",X),this.off("end",F),this.off(YY,W),this.pause(),J({value:Z,done:!!this[p6]})},F=()=>{this.off("error",X),this.off("data",G),this.off(YY,W),Q(),J({done:!0,value:void 0})},W=()=>X(Error("stream destroyed"));return new Promise((Z,U)=>{C=U,J=Z,this.once(YY,W),this.once("error",X),this.once("end",F),this.once("data",G)})},throw:Q,return:Q,[Symbol.asyncIterator](){return this}}}[Symbol.iterator](){this[Q8]=!1;let A=!1,Q=()=>{return this.pause(),this.off(My,Q),this.off(YY,Q),this.off("end",Q),A=!0,{done:!0,value:void 0}},B=()=>{if(A)return Q();let Y=this.read();return Y===null?Q():{done:!1,value:Y}};return this.once("end",Q),this.once(My,Q),this.once(YY,Q),{next:B,throw:Q,return:Q,[Symbol.iterator](){return this}}}destroy(A){if(this[YY]){if(A)this.emit("error",A);else this.emit(YY);return this}this[YY]=!0,this[Q8]=!0,this[fY].length=0,this[bY]=0;let Q=this;if(typeof Q.close==="function"&&!this[J2])Q.close();if(A)this.emit("error",A);else this.emit(YY);return this}static get isStream(){return cbQ}}var XmQ=JmQ.native,LI={lstatSync:AmQ,readdir:QmQ,readdirSync:BmQ,readlinkSync:YmQ,realpathSync:XmQ,promises:{lstat:GmQ,readdir:FmQ,readlink:WmQ,realpath:ZmQ}},OYA=(A)=>!A||A===LI||A===CmQ?LI:{...LI,...A,promises:{...LI.promises,...A.promises||{}}},PYA=/^\\\\\?\\([a-z]:)\\?$/i,$mQ=(A)=>A.replace(/\//g,"\\").replace(PYA,"$1\\"),UmQ=/[\\\/]/,o8=0,TYA=1,SYA=2,z1=4,kYA=6,_YA=8,PW=10,vYA=12,a8=15,NI=~a8,Py=16,zYA=32,qI=64,HC=128,F2=256,Z2=512,RYA=qI|HC|Z2,EmQ=1023,Ty=(A)=>A.isFile()?_YA:A.isDirectory()?z1:A.isSymbolicLink()?PW:A.isCharacterDevice()?SYA:A.isBlockDevice()?kYA:A.isSocket()?vYA:A.isFIFO()?TYA:o8,wYA=new Map,MI=(A)=>{let Q=wYA.get(A);if(Q)return Q;let B=A.normalize("NFKD");return wYA.set(A,B),B},jYA=new Map,W2=(A)=>{let Q=jYA.get(A);if(Q)return Q;let B=MI(A.toLowerCase());return jYA.set(A,B),B};class ky extends KI{constructor(){super({max:256})}}class yYA extends KI{constructor(A=16384){super({maxSize:A,sizeCalculation:(Q)=>Q.length+1})}}var hYA=Symbol("PathScurry setAsCwd");class dJ{name;root;roots;parent;nocase;isCWD=!1;#A;#Q;get dev(){return this.#Q}#B;get mode(){return this.#B}#Y;get nlink(){return this.#Y}#J;get uid(){return this.#J}#C;get gid(){return this.#C}#F;get rdev(){return this.#F}#X;get blksize(){return this.#X}#G;get ino(){return this.#G}#Z;get size(){return this.#Z}#U;get blocks(){return this.#U}#W;get atimeMs(){return this.#W}#E;get mtimeMs(){return this.#E}#V;get ctimeMs(){return this.#V}#I;get birthtimeMs(){return this.#I}#D;get atime(){return this.#D}#O;get mtime(){return this.#O}#N;get ctime(){return this.#N}#P;get birthtime(){return this.#P}#M;#q;#L;#w;#H;#S;#$;#v;#z;#k;get parentPath(){return(this.parent||this).fullpath()}get path(){return this.parentPath}constructor(A,Q=o8,B,Y,J,C,X){if(this.name=A,this.#M=J?W2(A):MI(A),this.#$=Q&EmQ,this.nocase=J,this.roots=Y,this.root=B||this,this.#v=C,this.#L=X.fullpath,this.#H=X.relative,this.#S=X.relativePosix,this.parent=X.parent,this.parent)this.#A=this.parent.#A;else this.#A=OYA(X.fs)}depth(){if(this.#q!==void 0)return this.#q;if(!this.parent)return this.#q=0;return this.#q=this.parent.depth()+1}childrenCache(){return this.#v}resolve(A){if(!A)return this;let Q=this.getRootString(A),Y=A.substring(Q.length).split(this.splitSep);return Q?this.getRoot(Q).#R(Y):this.#R(Y)}#R(A){let Q=this;for(let B of A)Q=Q.child(B);return Q}children(){let A=this.#v.get(this);if(A)return A;let Q=Object.assign([],{provisional:0});return this.#v.set(this,Q),this.#$&=~Py,Q}child(A,Q){if(A===""||A===".")return this;if(A==="..")return this.parent||this;let B=this.children(),Y=this.nocase?W2(A):MI(A);for(let G of B)if(G.#M===Y)return G;let J=this.parent?this.sep:"",C=this.#L?this.#L+J+A:void 0,X=this.newChild(A,o8,{...Q,parent:this,fullpath:C});if(!this.canReaddir())X.#$|=HC;return B.push(X),X}relative(){if(this.isCWD)return"";if(this.#H!==void 0)return this.#H;let A=this.name,Q=this.parent;if(!Q)return this.#H=this.name;let B=Q.relative();return B+(!B||!Q.parent?"":this.sep)+A}relativePosix(){if(this.sep==="/")return this.relative();if(this.isCWD)return"";if(this.#S!==void 0)return this.#S;let A=this.name,Q=this.parent;if(!Q)return this.#S=this.fullpathPosix();let B=Q.relativePosix();return B+(!B||!Q.parent?"":"/")+A}fullpath(){if(this.#L!==void 0)return this.#L;let A=this.name,Q=this.parent;if(!Q)return this.#L=this.name;let Y=Q.fullpath()+(!Q.parent?"":this.sep)+A;return this.#L=Y}fullpathPosix(){if(this.#w!==void 0)return this.#w;if(this.sep==="/")return this.#w=this.fullpath();if(!this.parent){let Y=this.fullpath().replace(/\\/g,"/");if(/^[a-z]:\//i.test(Y))return this.#w=`//?/${Y}`;else return this.#w=Y}let A=this.parent,Q=A.fullpathPosix(),B=Q+(!Q||!A.parent?"":"/")+this.name;return this.#w=B}isUnknown(){return(this.#$&a8)===o8}isType(A){return this[`is${A}`]()}getType(){return this.isUnknown()?"Unknown":this.isDirectory()?"Directory":this.isFile()?"File":this.isSymbolicLink()?"SymbolicLink":this.isFIFO()?"FIFO":this.isCharacterDevice()?"CharacterDevice":this.isBlockDevice()?"BlockDevice":this.isSocket()?"Socket":"Unknown"}isFile(){return(this.#$&a8)===_YA}isDirectory(){return(this.#$&a8)===z1}isCharacterDevice(){return(this.#$&a8)===SYA}isBlockDevice(){return(this.#$&a8)===kYA}isFIFO(){return(this.#$&a8)===TYA}isSocket(){return(this.#$&a8)===vYA}isSymbolicLink(){return(this.#$&PW)===PW}lstatCached(){return this.#$&zYA?this:void 0}readlinkCached(){return this.#z}realpathCached(){return this.#k}readdirCached(){let A=this.children();return A.slice(0,A.provisional)}canReadlink(){if(this.#z)return!0;if(!this.parent)return!1;let A=this.#$&a8;return!(A!==o8&&A!==PW||this.#$&F2||this.#$&HC)}calledReaddir(){return!!(this.#$&Py)}isENOENT(){return!!(this.#$&HC)}isNamed(A){return!this.nocase?this.#M===MI(A):this.#M===W2(A)}async readlink(){let A=this.#z;if(A)return A;if(!this.canReadlink())return;if(!this.parent)return;try{let Q=await this.#A.promises.readlink(this.fullpath()),B=(await this.parent.realpath())?.resolve(Q);if(B)return this.#z=B}catch(Q){this.#x(Q.code);return}}readlinkSync(){let A=this.#z;if(A)return A;if(!this.canReadlink())return;if(!this.parent)return;try{let Q=this.#A.readlinkSync(this.fullpath()),B=this.parent.realpathSync()?.resolve(Q);if(B)return this.#z=B}catch(Q){this.#x(Q.code);return}}#m(A){this.#$|=Py;for(let Q=A.provisional;QB(null,A))}readdirCB(A,Q=!1){if(!this.canReaddir()){if(Q)A(null,[]);else queueMicrotask(()=>A(null,[]));return}let B=this.children();if(this.calledReaddir()){let J=B.slice(0,B.provisional);if(Q)A(null,J);else queueMicrotask(()=>A(null,J));return}if(this.#b.push(A),this.#p)return;this.#p=!0;let Y=this.fullpath();this.#A.readdir(Y,{withFileTypes:!0},(J,C)=>{if(J)this.#T(J.code),B.provisional=0;else{for(let X of C)this.#h(X,B);this.#m(B)}this.#i(B.slice(0,B.provisional));return})}#l;async readdir(){if(!this.canReaddir())return[];let A=this.children();if(this.calledReaddir())return A.slice(0,A.provisional);let Q=this.fullpath();if(this.#l)await this.#l;else{let B=()=>{};this.#l=new Promise((Y)=>B=Y);try{for(let Y of await this.#A.promises.readdir(Q,{withFileTypes:!0}))this.#h(Y,A);this.#m(A)}catch(Y){this.#T(Y.code),A.provisional=0}this.#l=void 0,B()}return A.slice(0,A.provisional)}readdirSync(){if(!this.canReaddir())return[];let A=this.children();if(this.calledReaddir())return A.slice(0,A.provisional);let Q=this.fullpath();try{for(let B of this.#A.readdirSync(Q,{withFileTypes:!0}))this.#h(B,A);this.#m(A)}catch(B){this.#T(B.code),A.provisional=0}return A.slice(0,A.provisional)}canReaddir(){if(this.#$&RYA)return!1;let A=a8&this.#$;if(!(A===o8||A===z1||A===PW))return!1;return!0}shouldWalk(A,Q){return(this.#$&z1)===z1&&!(this.#$&RYA)&&!A.has(this)&&(!Q||Q(this))}async realpath(){if(this.#k)return this.#k;if((Z2|F2|HC)&this.#$)return;try{let A=await this.#A.promises.realpath(this.fullpath());return this.#k=this.resolve(A)}catch(A){this.#u()}}realpathSync(){if(this.#k)return this.#k;if((Z2|F2|HC)&this.#$)return;try{let A=this.#A.realpathSync(this.fullpath());return this.#k=this.resolve(A)}catch(A){this.#u()}}[hYA](A){if(A===this)return;A.isCWD=!1,this.isCWD=!0;let Q=new Set([]),B=[],Y=this;while(Y&&Y.parent)Q.add(Y),Y.#H=B.join(this.sep),Y.#S=B.join("/"),Y=Y.parent,B.push("..");Y=A;while(Y&&Y.parent&&!Q.has(Y))Y.#H=void 0,Y.#S=void 0,Y=Y.parent}}class $2 extends dJ{sep="\\";splitSep=UmQ;constructor(A,Q=o8,B,Y,J,C,X){super(A,Q,B,Y,J,C,X)}newChild(A,Q=o8,B={}){return new $2(A,Q,this.root,this.roots,this.nocase,this.childrenCache(),B)}getRootString(A){return Sy.parse(A).root}getRoot(A){if(A=$mQ(A.toUpperCase()),A===this.root.name)return this.root;for(let[Q,B]of Object.entries(this.roots))if(this.sameRoot(A,Q))return this.roots[A]=B;return this.roots[A]=new zI(A,this).root}sameRoot(A,Q=this.root.name){return A=A.toUpperCase().replace(/\//g,"\\").replace(PYA,"$1\\"),A===Q}}class U2 extends dJ{splitSep="/";sep="/";constructor(A,Q=o8,B,Y,J,C,X){super(A,Q,B,Y,J,C,X)}getRootString(A){return A.startsWith("/")?"/":""}getRoot(A){return this.root}newChild(A,Q=o8,B={}){return new U2(A,Q,this.root,this.roots,this.nocase,this.childrenCache(),B)}}class _y{root;rootPath;roots;cwd;#A;#Q;#B;nocase;#Y;constructor(A=process.cwd(),Q,B,{nocase:Y,childrenCacheSize:J=16384,fs:C=LI}={}){if(this.#Y=OYA(C),A instanceof URL||A.startsWith("file://"))A=ebQ(A);let X=Q.resolve(A);this.roots=Object.create(null),this.rootPath=this.parseRootPath(X),this.#A=new ky,this.#Q=new ky,this.#B=new yYA(J);let G=X.substring(this.rootPath.length).split(B);if(G.length===1&&!G[0])G.pop();if(Y===void 0)throw TypeError("must provide nocase setting to PathScurryBase ctor");this.nocase=Y,this.root=this.newRoot(this.#Y),this.roots[this.rootPath]=this.root;let F=this.root,W=G.length-1,Z=Q.sep,U=this.rootPath,$=!1;for(let E of G){let K=W--;F=F.child(E,{relative:Array(K).fill("..").join(Z),relativePosix:Array(K).fill("..").join("/"),fullpath:U+=($?"":Z)+E}),$=!0}this.cwd=F}depth(A=this.cwd){if(typeof A==="string")A=this.cwd.resolve(A);return A.depth()}childrenCache(){return this.#B}resolve(...A){let Q="";for(let J=A.length-1;J>=0;J--){let C=A[J];if(!C||C===".")continue;if(Q=Q?`${C}/${Q}`:C,this.isAbsolute(C))break}let B=this.#A.get(Q);if(B!==void 0)return B;let Y=this.cwd.resolve(Q).fullpath();return this.#A.set(Q,Y),Y}resolvePosix(...A){let Q="";for(let J=A.length-1;J>=0;J--){let C=A[J];if(!C||C===".")continue;if(Q=Q?`${C}/${Q}`:C,this.isAbsolute(C))break}let B=this.#Q.get(Q);if(B!==void 0)return B;let Y=this.cwd.resolve(Q).fullpathPosix();return this.#Q.set(Q,Y),Y}relative(A=this.cwd){if(typeof A==="string")A=this.cwd.resolve(A);return A.relative()}relativePosix(A=this.cwd){if(typeof A==="string")A=this.cwd.resolve(A);return A.relativePosix()}basename(A=this.cwd){if(typeof A==="string")A=this.cwd.resolve(A);return A.name}dirname(A=this.cwd){if(typeof A==="string")A=this.cwd.resolve(A);return(A.parent||A).fullpath()}async readdir(A=this.cwd,Q={withFileTypes:!0}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof dJ))Q=A,A=this.cwd;let{withFileTypes:B}=Q;if(!A.canReaddir())return[];else{let Y=await A.readdir();return B?Y:Y.map((J)=>J.name)}}readdirSync(A=this.cwd,Q={withFileTypes:!0}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof dJ))Q=A,A=this.cwd;let{withFileTypes:B=!0}=Q;if(!A.canReaddir())return[];else if(B)return A.readdirSync();else return A.readdirSync().map((Y)=>Y.name)}async lstat(A=this.cwd){if(typeof A==="string")A=this.cwd.resolve(A);return A.lstat()}lstatSync(A=this.cwd){if(typeof A==="string")A=this.cwd.resolve(A);return A.lstatSync()}async readlink(A=this.cwd,{withFileTypes:Q}={withFileTypes:!1}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof dJ))Q=A.withFileTypes,A=this.cwd;let B=await A.readlink();return Q?B:B?.fullpath()}readlinkSync(A=this.cwd,{withFileTypes:Q}={withFileTypes:!1}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof dJ))Q=A.withFileTypes,A=this.cwd;let B=A.readlinkSync();return Q?B:B?.fullpath()}async realpath(A=this.cwd,{withFileTypes:Q}={withFileTypes:!1}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof dJ))Q=A.withFileTypes,A=this.cwd;let B=await A.realpath();return Q?B:B?.fullpath()}realpathSync(A=this.cwd,{withFileTypes:Q}={withFileTypes:!1}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof dJ))Q=A.withFileTypes,A=this.cwd;let B=A.realpathSync();return Q?B:B?.fullpath()}async walk(A=this.cwd,Q={}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof dJ))Q=A,A=this.cwd;let{withFileTypes:B=!0,follow:Y=!1,filter:J,walkFilter:C}=Q,X=[];if(!J||J(A))X.push(B?A:A.fullpath());let G=new Set,F=(Z,U)=>{G.add(Z),Z.readdirCB(($,E)=>{if($)return U($);let K=E.length;if(!K)return U();let I=()=>{if(--K===0)U()};for(let V of E){if(!J||J(V))X.push(B?V:V.fullpath());if(Y&&V.isSymbolicLink())V.realpath().then((H)=>H?.isUnknown()?H.lstat():H).then((H)=>H?.shouldWalk(G,C)?F(H,I):I());else if(V.shouldWalk(G,C))F(V,I);else I()}},!0)},W=A;return new Promise((Z,U)=>{F(W,($)=>{if($)return U($);Z(X)})})}walkSync(A=this.cwd,Q={}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof dJ))Q=A,A=this.cwd;let{withFileTypes:B=!0,follow:Y=!1,filter:J,walkFilter:C}=Q,X=[];if(!J||J(A))X.push(B?A:A.fullpath());let G=new Set([A]);for(let F of G){let W=F.readdirSync();for(let Z of W){if(!J||J(Z))X.push(B?Z:Z.fullpath());let U=Z;if(Z.isSymbolicLink()){if(!(Y&&(U=Z.realpathSync())))continue;if(U.isUnknown())U.lstatSync()}if(U.shouldWalk(G,C))G.add(U)}}return X}[Symbol.asyncIterator](){return this.iterate()}iterate(A=this.cwd,Q={}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof dJ))Q=A,A=this.cwd;return this.stream(A,Q)[Symbol.asyncIterator]()}[Symbol.iterator](){return this.iterateSync()}*iterateSync(A=this.cwd,Q={}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof dJ))Q=A,A=this.cwd;let{withFileTypes:B=!0,follow:Y=!1,filter:J,walkFilter:C}=Q;if(!J||J(A))yield B?A:A.fullpath();let X=new Set([A]);for(let G of X){let F=G.readdirSync();for(let W of F){if(!J||J(W))yield B?W:W.fullpath();let Z=W;if(W.isSymbolicLink()){if(!(Y&&(Z=W.realpathSync())))continue;if(Z.isUnknown())Z.lstatSync()}if(Z.shouldWalk(X,C))X.add(Z)}}}stream(A=this.cwd,Q={}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof dJ))Q=A,A=this.cwd;let{withFileTypes:B=!0,follow:Y=!1,filter:J,walkFilter:C}=Q,X=new OW({objectMode:!0});if(!J||J(A))X.write(B?A:A.fullpath());let G=new Set,F=[A],W=0,Z=()=>{let U=!1;while(!U){let $=F.shift();if(!$){if(W===0)X.end();return}W++,G.add($);let E=(I,V,H=!1)=>{if(I)return X.emit("error",I);if(Y&&!H){let D=[];for(let L of V)if(L.isSymbolicLink())D.push(L.realpath().then((z)=>z?.isUnknown()?z.lstat():z));if(D.length){Promise.all(D).then(()=>E(null,V,!0));return}}for(let D of V)if(D&&(!J||J(D))){if(!X.write(B?D:D.fullpath()))U=!0}W--;for(let D of V){let L=D.realpathCached()||D;if(L.shouldWalk(G,C))F.push(L)}if(U&&!X.flowing)X.once("drain",Z);else if(!K)Z()},K=!0;$.readdirCB(E,!0),K=!1}};return Z(),X}streamSync(A=this.cwd,Q={}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof dJ))Q=A,A=this.cwd;let{withFileTypes:B=!0,follow:Y=!1,filter:J,walkFilter:C}=Q,X=new OW({objectMode:!0}),G=new Set;if(!J||J(A))X.write(B?A:A.fullpath());let F=[A],W=0,Z=()=>{let U=!1;while(!U){let $=F.shift();if(!$){if(W===0)X.end();return}W++,G.add($);let E=$.readdirSync();for(let K of E)if(!J||J(K)){if(!X.write(B?K:K.fullpath()))U=!0}W--;for(let K of E){let I=K;if(K.isSymbolicLink()){if(!(Y&&(I=K.realpathSync())))continue;if(I.isUnknown())I.lstatSync()}if(I.shouldWalk(G,C))F.push(I)}}if(U&&!X.flowing)X.once("drain",Z)};return Z(),X}chdir(A=this.cwd){let Q=this.cwd;this.cwd=typeof A==="string"?this.cwd.resolve(A):A,this.cwd[hYA](Q)}}class zI extends _y{sep="\\";constructor(A=process.cwd(),Q={}){let{nocase:B=!0}=Q;super(A,Sy,"\\",{...Q,nocase:B});this.nocase=B;for(let Y=this.cwd;Y;Y=Y.parent)Y.nocase=this.nocase}parseRootPath(A){return Sy.parse(A).root.toUpperCase()}newRoot(A){return new $2(this.rootPath,z1,void 0,this.roots,this.nocase,this.childrenCache(),{fs:A})}isAbsolute(A){return A.startsWith("/")||A.startsWith("\\")||/^[a-z]:(\/|\\)/i.test(A)}}class RI extends _y{sep="/";constructor(A=process.cwd(),Q={}){let{nocase:B=!1}=Q;super(A,tbQ,"/",{...Q,nocase:B});this.nocase=B}parseRootPath(A){return"/"}newRoot(A){return new U2(this.rootPath,z1,void 0,this.roots,this.nocase,this.childrenCache(),{fs:A})}isAbsolute(A){return A.startsWith("/")}}class E2 extends RI{constructor(A=process.cwd(),Q={}){let{nocase:B=!0}=Q;super(A,{...Q,nocase:B})}}var LCY=process.platform==="win32"?$2:U2,gYA=process.platform==="win32"?zI:process.platform==="darwin"?E2:RI;var KmQ=(A)=>A.length>=1,VmQ=(A)=>A.length>=1;class v4{#A;#Q;#B;length;#Y;#J;#C;#F;#X;#G;#Z=!0;constructor(A,Q,B,Y){if(!KmQ(A))throw TypeError("empty pattern list");if(!VmQ(Q))throw TypeError("empty glob list");if(Q.length!==A.length)throw TypeError("mismatched pattern list and glob list lengths");if(this.length=A.length,B<0||B>=this.length)throw TypeError("index out of range");if(this.#A=A,this.#Q=Q,this.#B=B,this.#Y=Y,this.#B===0){if(this.isUNC()){let[J,C,X,G,...F]=this.#A,[W,Z,U,$,...E]=this.#Q;if(F[0]==="")F.shift(),E.shift();let K=[J,C,X,G,""].join("/"),I=[W,Z,U,$,""].join("/");this.#A=[K,...F],this.#Q=[I,...E],this.length=this.#A.length}else if(this.isDrive()||this.isAbsolute()){let[J,...C]=this.#A,[X,...G]=this.#Q;if(C[0]==="")C.shift(),G.shift();let F=J+"/",W=X+"/";this.#A=[F,...C],this.#Q=[W,...G],this.length=this.#A.length}}}pattern(){return this.#A[this.#B]}isString(){return typeof this.#A[this.#B]==="string"}isGlobstar(){return this.#A[this.#B]===eY}isRegExp(){return this.#A[this.#B]instanceof RegExp}globString(){return this.#C=this.#C||(this.#B===0?this.isAbsolute()?this.#Q[0]+this.#Q.slice(1).join("/"):this.#Q.join("/"):this.#Q.slice(this.#B).join("/"))}hasMore(){return this.length>this.#B+1}rest(){if(this.#J!==void 0)return this.#J;if(!this.hasMore())return this.#J=null;return this.#J=new v4(this.#A,this.#Q,this.#B+1,this.#Y),this.#J.#G=this.#G,this.#J.#X=this.#X,this.#J.#F=this.#F,this.#J}isUNC(){let A=this.#A;return this.#X!==void 0?this.#X:this.#X=this.#Y==="win32"&&this.#B===0&&A[0]===""&&A[1]===""&&typeof A[2]==="string"&&!!A[2]&&typeof A[3]==="string"&&!!A[3]}isDrive(){let A=this.#A;return this.#F!==void 0?this.#F:this.#F=this.#Y==="win32"&&this.#B===0&&this.length>1&&typeof A[0]==="string"&&/^[a-z]:$/i.test(A[0])}isAbsolute(){let A=this.#A;return this.#G!==void 0?this.#G:this.#G=A[0]===""&&A.length>1||this.isDrive()||this.isUNC()}root(){let A=this.#A[0];return typeof A==="string"&&this.isAbsolute()&&this.#B===0?A:""}checkFollowGlobstar(){return!(this.#B===0||!this.isGlobstar()||!this.#Z)}markFollowGlobstar(){if(this.#B===0||!this.isGlobstar()||!this.#Z)return!1;return this.#Z=!1,!0}}var ImQ=typeof process==="object"&&process&&typeof process.platform==="string"?process.platform:"linux";class wI{relative;relativeChildren;absolute;absoluteChildren;platform;mmopts;constructor(A,{nobrace:Q,nocase:B,noext:Y,noglobstar:J,platform:C=ImQ}){this.relative=[],this.absolute=[],this.relativeChildren=[],this.absoluteChildren=[],this.platform=C,this.mmopts={dot:!0,nobrace:Q,nocase:B,noext:Y,noglobstar:J,optimizationLevel:2,platform:C,nocomment:!0,nonegate:!0};for(let X of A)this.add(X)}add(A){let Q=new r8(A,this.mmopts);for(let B=0;B[A,!!(Q&2),!!(Q&1)])}}class fYA{store=new Map;add(A,Q){if(!A.canReaddir())return;let B=this.store.get(A);if(B){if(!B.find((Y)=>Y.globString()===Q.globString()))B.push(Q)}else this.store.set(A,[Q])}get(A){let Q=this.store.get(A);if(!Q)throw Error("attempting to walk unknown path");return Q}entries(){return this.keys().map((A)=>[A,this.store.get(A)])}keys(){return[...this.store.keys()].filter((A)=>A.canReaddir())}}class jI{hasWalkedCache;matches=new xYA;subwalks=new fYA;patterns;follow;dot;opts;constructor(A,Q){this.opts=A,this.follow=!!A.follow,this.dot=!!A.dot,this.hasWalkedCache=Q?Q.copy():new vy}processPatterns(A,Q){this.patterns=Q;let B=Q.map((Y)=>[A,Y]);for(let[Y,J]of B){this.hasWalkedCache.storeWalked(Y,J);let C=J.root(),X=J.isAbsolute()&&this.opts.absolute!==!1;if(C){Y=Y.resolve(C==="/"&&this.opts.root!==void 0?this.opts.root:C);let Z=J.rest();if(!Z){this.matches.add(Y,!0,!1);continue}else J=Z}if(Y.isENOENT())continue;let G,F,W=!1;while(typeof(G=J.pattern())==="string"&&(F=J.rest()))Y=Y.resolve(G),J=F,W=!0;if(G=J.pattern(),F=J.rest(),W){if(this.hasWalkedCache.hasWalked(Y,J))continue;this.hasWalkedCache.storeWalked(Y,J)}if(typeof G==="string"){let Z=G===".."||G===""||G===".";this.matches.add(Y.resolve(G),X,Z);continue}else if(G===eY){if(!Y.isSymbolicLink()||this.follow||J.checkFollowGlobstar())this.subwalks.add(Y,J);let Z=F?.pattern(),U=F?.rest();if(!F||(Z===""||Z===".")&&!U)this.matches.add(Y,X,Z===""||Z===".");else if(Z===".."){let $=Y.parent||Y;if(!U)this.matches.add($,X,!0);else if(!this.hasWalkedCache.hasWalked($,U))this.subwalks.add($,U)}}else if(G instanceof RegExp)this.subwalks.add(Y,J)}return this}subwalkTargets(){return this.subwalks.keys()}child(){return new jI(this.opts,this.hasWalkedCache)}filterEntries(A,Q){let B=this.subwalks.get(A),Y=this.child();for(let J of Q)for(let C of B){let X=C.isAbsolute(),G=C.pattern(),F=C.rest();if(G===eY)Y.testGlobstar(J,C,F,X);else if(G instanceof RegExp)Y.testRegExp(J,G,F,X);else Y.testString(J,G,F,X)}return Y}testGlobstar(A,Q,B,Y){if(this.dot||!A.name.startsWith(".")){if(!Q.hasMore())this.matches.add(A,Y,!1);if(A.canReaddir()){if(this.follow||!A.isSymbolicLink())this.subwalks.add(A,Q);else if(A.isSymbolicLink()){if(B&&Q.checkFollowGlobstar())this.subwalks.add(A,B);else if(Q.markFollowGlobstar())this.subwalks.add(A,Q)}}}if(B){let J=B.pattern();if(typeof J==="string"&&J!==".."&&J!==""&&J!==".")this.testString(A,J,B.rest(),Y);else if(J===".."){let C=A.parent||A;this.subwalks.add(C,B)}else if(J instanceof RegExp)this.testRegExp(A,J,B.rest(),Y)}}testRegExp(A,Q,B,Y){if(!Q.test(A.name))return;if(!B)this.matches.add(A,Y,!1);else this.subwalks.add(A,B)}testString(A,Q,B,Y){if(!A.isNamed(Q))return;if(!B)this.matches.add(A,Y,!1);else this.subwalks.add(A,B)}}var HmQ=(A,Q)=>typeof A==="string"?new wI([A],Q):Array.isArray(A)?new wI(A,Q):A;class yy{path;patterns;opts;seen=new Set;paused=!1;aborted=!1;#A=[];#Q;#B;signal;maxDepth;includeChildMatches;constructor(A,Q,B){if(this.patterns=A,this.path=Q,this.opts=B,this.#B=!B.posix&&B.platform==="win32"?"\\":"/",this.includeChildMatches=B.includeChildMatches!==!1,B.ignore||!this.includeChildMatches){if(this.#Q=HmQ(B.ignore??[],B),!this.includeChildMatches&&typeof this.#Q.add!=="function")throw Error("cannot ignore child matches, ignore lacks add() method.")}if(this.maxDepth=B.maxDepth||1/0,B.signal)this.signal=B.signal,this.signal.addEventListener("abort",()=>{this.#A.length=0})}#Y(A){return this.seen.has(A)||!!this.#Q?.ignored?.(A)}#J(A){return!!this.#Q?.childrenIgnored?.(A)}pause(){this.paused=!0}resume(){if(this.signal?.aborted)return;this.paused=!1;let A=void 0;while(!this.paused&&(A=this.#A.shift()))A()}onResume(A){if(this.signal?.aborted)return;if(!this.paused)A();else this.#A.push(A)}async matchCheck(A,Q){if(Q&&this.opts.nodir)return;let B;if(this.opts.realpath){if(B=A.realpathCached()||await A.realpath(),!B)return;A=B}let J=A.isUnknown()||this.opts.stat?await A.lstat():A;if(this.opts.follow&&this.opts.nodir&&J?.isSymbolicLink()){let C=await J.realpath();if(C&&(C.isUnknown()||this.opts.stat))await C.lstat()}return this.matchCheckTest(J,Q)}matchCheckTest(A,Q){return A&&(this.maxDepth===1/0||A.depth()<=this.maxDepth)&&(!Q||A.canReaddir())&&(!this.opts.nodir||!A.isDirectory())&&(!this.opts.nodir||!this.opts.follow||!A.isSymbolicLink()||!A.realpathCached()?.isDirectory())&&!this.#Y(A)?A:void 0}matchCheckSync(A,Q){if(Q&&this.opts.nodir)return;let B;if(this.opts.realpath){if(B=A.realpathCached()||A.realpathSync(),!B)return;A=B}let J=A.isUnknown()||this.opts.stat?A.lstatSync():A;if(this.opts.follow&&this.opts.nodir&&J?.isSymbolicLink()){let C=J.realpathSync();if(C&&(C?.isUnknown()||this.opts.stat))C.lstatSync()}return this.matchCheckTest(J,Q)}matchFinish(A,Q){if(this.#Y(A))return;if(!this.includeChildMatches&&this.#Q?.add){let J=`${A.relativePosix()}/**`;this.#Q.add(J)}let B=this.opts.absolute===void 0?Q:this.opts.absolute;this.seen.add(A);let Y=this.opts.mark&&A.isDirectory()?this.#B:"";if(this.opts.withFileTypes)this.matchEmit(A);else if(B){let J=this.opts.posix?A.fullpathPosix():A.fullpath();this.matchEmit(J+Y)}else{let J=this.opts.posix?A.relativePosix():A.relative(),C=this.opts.dotRelative&&!J.startsWith(".."+this.#B)?"."+this.#B:"";this.matchEmit(!J?"."+Y:C+J+Y)}}async match(A,Q,B){let Y=await this.matchCheck(A,B);if(Y)this.matchFinish(Y,Q)}matchSync(A,Q,B){let Y=this.matchCheckSync(A,B);if(Y)this.matchFinish(Y,Q)}walkCB(A,Q,B){if(this.signal?.aborted)B();this.walkCB2(A,Q,new jI(this.opts),B)}walkCB2(A,Q,B,Y){if(this.#J(A))return Y();if(this.signal?.aborted)Y();if(this.paused){this.onResume(()=>this.walkCB2(A,Q,B,Y));return}B.processPatterns(A,Q);let J=1,C=()=>{if(--J===0)Y()};for(let[X,G,F]of B.matches.entries()){if(this.#Y(X))continue;J++,this.match(X,G,F).then(()=>C())}for(let X of B.subwalkTargets()){if(this.maxDepth!==1/0&&X.depth()>=this.maxDepth)continue;J++;let G=X.readdirCached();if(X.calledReaddir())this.walkCB3(X,G,B,C);else X.readdirCB((F,W)=>this.walkCB3(X,W,B,C),!0)}C()}walkCB3(A,Q,B,Y){B=B.filterEntries(A,Q);let J=1,C=()=>{if(--J===0)Y()};for(let[X,G,F]of B.matches.entries()){if(this.#Y(X))continue;J++,this.match(X,G,F).then(()=>C())}for(let[X,G]of B.subwalks.entries())J++,this.walkCB2(X,G,B.child(),C);C()}walkCBSync(A,Q,B){if(this.signal?.aborted)B();this.walkCB2Sync(A,Q,new jI(this.opts),B)}walkCB2Sync(A,Q,B,Y){if(this.#J(A))return Y();if(this.signal?.aborted)Y();if(this.paused){this.onResume(()=>this.walkCB2Sync(A,Q,B,Y));return}B.processPatterns(A,Q);let J=1,C=()=>{if(--J===0)Y()};for(let[X,G,F]of B.matches.entries()){if(this.#Y(X))continue;this.matchSync(X,G,F)}for(let X of B.subwalkTargets()){if(this.maxDepth!==1/0&&X.depth()>=this.maxDepth)continue;J++;let G=X.readdirSync();this.walkCB3Sync(X,G,B,C)}C()}walkCB3Sync(A,Q,B,Y){B=B.filterEntries(A,Q);let J=1,C=()=>{if(--J===0)Y()};for(let[X,G,F]of B.matches.entries()){if(this.#Y(X))continue;this.matchSync(X,G,F)}for(let[X,G]of B.subwalks.entries())J++,this.walkCB2Sync(X,G,B.child(),C);C()}}class K2 extends yy{matches=new Set;constructor(A,Q,B){super(A,Q,B)}matchEmit(A){this.matches.add(A)}async walk(){if(this.signal?.aborted)throw this.signal.reason;if(this.path.isUnknown())await this.path.lstat();return await new Promise((A,Q)=>{this.walkCB(this.path,this.patterns,()=>{if(this.signal?.aborted)Q(this.signal.reason);else A(this.matches)})}),this.matches}walkSync(){if(this.signal?.aborted)throw this.signal.reason;if(this.path.isUnknown())this.path.lstatSync();return this.walkCBSync(this.path,this.patterns,()=>{if(this.signal?.aborted)throw this.signal.reason}),this.matches}}class V2 extends yy{results;constructor(A,Q,B){super(A,Q,B);this.results=new OW({signal:this.signal,objectMode:!0}),this.results.on("drain",()=>this.resume()),this.results.on("resume",()=>this.resume())}matchEmit(A){if(this.results.write(A),!this.results.flowing)this.pause()}stream(){let A=this.path;if(A.isUnknown())A.lstat().then(()=>{this.walkCB(A,this.patterns,()=>this.results.end())});else this.walkCB(A,this.patterns,()=>this.results.end());return this.results}streamSync(){if(this.path.isUnknown())this.path.lstatSync();return this.walkCBSync(this.path,this.patterns,()=>this.results.end()),this.results}}var NmQ=typeof process==="object"&&process&&typeof process.platform==="string"?process.platform:"linux";class R1{absolute;cwd;root;dot;dotRelative;follow;ignore;magicalBraces;mark;matchBase;maxDepth;nobrace;nocase;nodir;noext;noglobstar;pattern;platform;realpath;scurry;stat;signal;windowsPathsNoEscape;withFileTypes;includeChildMatches;opts;patterns;constructor(A,Q){if(!Q)throw TypeError("glob options required");if(this.withFileTypes=!!Q.withFileTypes,this.signal=Q.signal,this.follow=!!Q.follow,this.dot=!!Q.dot,this.dotRelative=!!Q.dotRelative,this.nodir=!!Q.nodir,this.mark=!!Q.mark,!Q.cwd)this.cwd="";else if(Q.cwd instanceof URL||Q.cwd.startsWith("file://"))Q.cwd=DmQ(Q.cwd);if(this.cwd=Q.cwd||"",this.root=Q.root,this.magicalBraces=!!Q.magicalBraces,this.nobrace=!!Q.nobrace,this.noext=!!Q.noext,this.realpath=!!Q.realpath,this.absolute=Q.absolute,this.includeChildMatches=Q.includeChildMatches!==!1,this.noglobstar=!!Q.noglobstar,this.matchBase=!!Q.matchBase,this.maxDepth=typeof Q.maxDepth==="number"?Q.maxDepth:1/0,this.stat=!!Q.stat,this.ignore=Q.ignore,this.withFileTypes&&this.absolute!==void 0)throw Error("cannot set absolute and withFileTypes:true");if(typeof A==="string")A=[A];if(this.windowsPathsNoEscape=!!Q.windowsPathsNoEscape||Q.allowWindowsEscape===!1,this.windowsPathsNoEscape)A=A.map((G)=>G.replace(/\\/g,"/"));if(this.matchBase){if(Q.noglobstar)throw TypeError("base matching requires globstar");A=A.map((G)=>G.includes("/")?G:`./**/${G}`)}if(this.pattern=A,this.platform=Q.platform||NmQ,this.opts={...Q,platform:this.platform},Q.scurry){if(this.scurry=Q.scurry,Q.nocase!==void 0&&Q.nocase!==Q.scurry.nocase)throw Error("nocase option contradicts provided scurry option")}else{let G=Q.platform==="win32"?zI:Q.platform==="darwin"?E2:Q.platform?RI:gYA;this.scurry=new G(this.cwd,{nocase:Q.nocase,fs:Q.fs})}this.nocase=this.scurry.nocase;let B=this.platform==="darwin"||this.platform==="win32",Y={...Q,dot:this.dot,matchBase:this.matchBase,nobrace:this.nobrace,nocase:this.nocase,nocaseMagicOnly:B,nocomment:!0,noext:this.noext,nonegate:!0,optimizationLevel:2,platform:this.platform,windowsPathsNoEscape:this.windowsPathsNoEscape,debug:!!this.opts.debug},J=this.pattern.map((G)=>new r8(G,Y)),[C,X]=J.reduce((G,F)=>{return G[0].push(...F.set),G[1].push(...F.globParts),G},[[],[]]);this.patterns=C.map((G,F)=>{let W=X[F];if(!W)throw Error("invalid pattern object");return new v4(G,W,0,this.platform)})}async walk(){return[...await new K2(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walk()]}walkSync(){return[...new K2(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walkSync()]}stream(){return new V2(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).stream()}streamSync(){return new V2(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).streamSync()}iterateSync(){return this.streamSync()[Symbol.iterator]()}[Symbol.iterator](){return this.iterateSync()}iterate(){return this.stream()[Symbol.asyncIterator]()}[Symbol.asyncIterator](){return this.iterate()}}var hy=(A,Q={})=>{if(!Array.isArray(A))A=[A];for(let B of A)if(new r8(B,Q).hasMagic())return!0;return!1};function I2(A,Q={}){return new R1(A,Q).streamSync()}function mYA(A,Q={}){return new R1(A,Q).stream()}function uYA(A,Q={}){return new R1(A,Q).walkSync()}async function bYA(A,Q={}){return new R1(A,Q).walk()}function H2(A,Q={}){return new R1(A,Q).iterateSync()}function dYA(A,Q={}){return new R1(A,Q).iterate()}var LmQ=I2,qmQ=Object.assign(mYA,{sync:I2}),MmQ=H2,zmQ=Object.assign(dYA,{sync:H2}),RmQ=Object.assign(uYA,{stream:I2,iterate:H2}),y4=Object.assign(bYA,{glob:bYA,globSync:uYA,sync:RmQ,globStream:mYA,stream:qmQ,globStreamSync:I2,streamSync:LmQ,globIterate:dYA,iterate:zmQ,globIterateSync:H2,iterateSync:MmQ,Glob:R1,hasMagic:hy,escape:P4,unescape:VC});y4.glob=y4;class gy{constructor(){this._listeners={}}addEventListener(A,Q){let B=this._listeners;if(B[A]===void 0)B[A]=[];if(B[A].indexOf(Q)===-1)B[A].push(Q);return this}removeEventListener(A,Q){let Y=this._listeners[A];if(Y!==void 0){let J=Y.indexOf(Q);if(J!==-1)Y.splice(J,1)}return this}dispatchEvent(A){let B=this._listeners[A.type];if(B!==void 0){let Y=B.slice(0);for(let J=0,C=Y.length;J=0)this.list.splice(Q,1)}removeChild(A){let Q=[];for(let B of this.list)if(B.getChild()===A)Q.push(B);for(let B of Q)this.remove(B);return Q}listRefsByChild(A){let Q=[];for(let B of this.list)if(B.getChild()===A)Q.push(B);return Q}values(){return this.list}}class xB{constructor(A){if(this.set=new Set,this.map=new Map,A)for(let Q of A)this.add(Q)}add(A){let Q=A.getChild();this.removeChild(Q),this.set.add(A),this.map.set(Q,A)}remove(A){this.set.delete(A),this.map.delete(A.getChild())}removeChild(A){let Q=this.map.get(A)||null;if(Q)this.remove(Q);return Q}getRefByChild(A){return this.map.get(A)||null}values(){return Array.from(this.set)}}class cJ{constructor(A){if(this.map={},A)Object.assign(this.map,A)}set(A,Q){this.map[A]=Q}delete(A){delete this.map[A]}get(A){return this.map[A]||null}keys(){return Object.keys(this.map)}values(){return Object.values(this.map)}}var PB=Symbol("attributes"),sG=Symbol("immutableKeys");class N2 extends gy{constructor(A){super();this._disposed=!1,this.graph=void 0,this[PB]=void 0,this[sG]=void 0,this.graph=A,this[sG]=new Set,this[PB]=this._createAttributes()}getDefaults(){return{}}_createAttributes(){let A=this.getDefaults(),Q={};for(let B in A){let Y=A[B];if(Y instanceof N2){let J=this.graph._createEdge(B,this,Y);this[sG].add(B),Q[B]=J}else Q[B]=Y}return Q}isOnGraph(A){return this.graph===A.graph}isDisposed(){return this._disposed}dispose(){if(this._disposed)return;this.graph.listChildEdges(this).forEach((A)=>A.dispose()),this.graph.disconnectParents(this),this._disposed=!0,this.dispatchEvent({type:"dispose"})}detach(){return this.graph.disconnectParents(this),this}swap(A,Q){for(let B in this[PB]){let Y=this[PB][B];if(Y instanceof n6){let J=Y;if(J.getChild()===A)this.setRef(B,Q,J.getAttributes())}else if(Y instanceof DC)for(let J of Y.listRefsByChild(A)){let C=J.getAttributes();this.removeRef(B,A),this.addRef(B,Q,C)}else if(Y instanceof xB){let J=Y.getRefByChild(A);if(J){let C=J.getAttributes();this.removeRef(B,A),this.addRef(B,Q,C)}}else if(Y instanceof cJ)for(let J of Y.keys()){let C=Y.get(J);if(C.getChild()===A)this.setRefMap(B,J,Q,C.getAttributes())}}return this}get(A){return this[PB][A]}set(A,Q){return this[PB][A]=Q,this.dispatchEvent({type:"change",attribute:A})}getRef(A){let Q=this[PB][A];return Q?Q.getChild():null}setRef(A,Q,B){if(this[sG].has(A))throw Error(`Cannot overwrite immutable attribute, "${A}".`);let Y=this[PB][A];if(Y)Y.dispose();if(!Q)return this;let J=this.graph._createEdge(A,this,Q,B);return this[PB][A]=J,this.dispatchEvent({type:"change",attribute:A})}listRefs(A){return this.assertRefList(A).values().map((B)=>B.getChild())}addRef(A,Q,B){let Y=this.graph._createEdge(A,this,Q,B);return this.assertRefList(A).add(Y),this.dispatchEvent({type:"change",attribute:A})}removeRef(A,Q){let B=this.assertRefList(A);if(B instanceof DC)for(let Y of B.listRefsByChild(Q))Y.dispose();else{let Y=B.getRefByChild(Q);if(Y)Y.dispose()}return this}assertRefList(A){let Q=this[PB][A];if(Q instanceof DC||Q instanceof xB)return Q;throw Error(`Expected RefList or RefSet for attribute "${A}"`)}listRefMapKeys(A){return this.assertRefMap(A).keys()}listRefMapValues(A){return this.assertRefMap(A).values().map((Q)=>Q.getChild())}getRefMap(A,Q){let Y=this.assertRefMap(A).get(Q);return Y?Y.getChild():null}setRefMap(A,Q,B,Y){let J=this.assertRefMap(A),C=J.get(Q);if(C)C.dispose();if(!B)return this;Y=Object.assign(Y||{},{key:Q});let X=this.graph._createEdge(A,this,B,OI({},Y,{key:Q}));return J.set(Q,X),this.dispatchEvent({type:"change",attribute:A,key:Q})}assertRefMap(A){let Q=this[PB][A];if(Q instanceof cJ)return Q;throw Error(`Expected RefMap for attribute "${A}"`)}dispatchEvent(A){return super.dispatchEvent(OI({},A,{target:this})),this.graph.dispatchEvent(OI({},A,{target:this,type:`node:${A.type}`})),this}_destroyRef(A){let Q=A.getName();if(this[PB][Q]===A){if(this[PB][Q]=null,this[sG].has(Q))A.getChild().dispose()}else if(this[PB][Q]instanceof DC)this[PB][Q].remove(A);else if(this[PB][Q]instanceof xB)this[PB][Q].remove(A);else if(this[PB][Q]instanceof cJ){let B=this[PB][Q];for(let Y of B.keys())if(B.get(Y)===A)B.delete(Y)}else return;this.graph._destroyEdge(A),this.dispatchEvent({type:"change",attribute:Q})}}var rYA="v4.2.1",SW="@glb.bin",YA;(function(A){A.ACCESSOR="Accessor",A.ANIMATION="Animation",A.ANIMATION_CHANNEL="AnimationChannel",A.ANIMATION_SAMPLER="AnimationSampler",A.BUFFER="Buffer",A.CAMERA="Camera",A.MATERIAL="Material",A.MESH="Mesh",A.PRIMITIVE="Primitive",A.PRIMITIVE_TARGET="PrimitiveTarget",A.NODE="Node",A.ROOT="Root",A.SCENE="Scene",A.SKIN="Skin",A.TEXTURE="Texture",A.TEXTURE_INFO="TextureInfo"})(YA||(YA={}));var w2;(function(A){A.INTERLEAVED="interleaved",A.SEPARATE="separate"})(w2||(w2={}));var Y8;(function(A){A.ARRAY_BUFFER="ARRAY_BUFFER",A.ELEMENT_ARRAY_BUFFER="ELEMENT_ARRAY_BUFFER",A.INVERSE_BIND_MATRICES="INVERSE_BIND_MATRICES",A.OTHER="OTHER",A.SPARSE="SPARSE"})(Y8||(Y8={}));var w9;(function(A){A[A.R=4096]="R",A[A.G=256]="G",A[A.B=16]="B",A[A.A=1]="A"})(w9||(w9={}));var s6;(function(A){A.GLTF="GLTF",A.GLB="GLB"})(s6||(s6={}));var aG={"5120":Int8Array,"5121":Uint8Array,"5122":Int16Array,"5123":Uint16Array,"5125":Uint32Array,"5126":Float32Array};class jQ{static createBufferFromDataURI(A){if(typeof Buffer>"u"){let Q=atob(A.split(",")[1]),B=new Uint8Array(Q.length);for(let Y=0;Y=0;return Buffer.from(Q,B?"base64":"utf8")}}static encodeText(A){return new TextEncoder().encode(A)}static decodeText(A){return new TextDecoder().decode(A)}static concat(A){let Q=0;for(let J of A)Q+=J.byteLength;let B=new Uint8Array(Q),Y=0;for(let J of A)B.set(J,Y),Y+=J.byteLength;return B}static pad(A,Q=0){let B=this.padNumber(A.byteLength);if(B===A.byteLength)return A;let Y=new Uint8Array(B);if(Y.set(A),Q!==0)for(let J=A.byteLength;J>16&255)/255,B[1]=(A>>8&255)/255,B[2]=(A&255)/255,this.convertSRGBToLinear(Q,Q)}static factorToHex(A){let Q=[...A],[B,Y,J]=this.convertLinearToSRGB(A,Q);return B*255<<16^Y*255<<8^J*255<<0}static convertSRGBToLinear(A,Q){let B=A,Y=Q;for(let J=0;J<3;J++)Y[J]=B[J]<0.04045?B[J]*0.0773993808:Math.pow(B[J]*0.9478672986+0.0521327014,2.4);return Q}static convertLinearToSRGB(A,Q){let B=A,Y=Q;for(let J=0;J<3;J++)Y[J]=B[J]<0.0031308?B[J]*12.92:1.055*Math.pow(B[J],0.41666)-0.055;return Q}}class aYA{match(A){return A.length>=3&&A[0]===255&&A[1]===216&&A[2]===255}getSize(A){let Q=new DataView(A.buffer,A.byteOffset+4),B,Y;while(Q.byteLength){if(B=Q.getUint16(0,!1),wmQ(Q,B),Y=Q.getUint8(B+1),Y===192||Y===193||Y===194)return[Q.getUint16(B+7,!1),Q.getUint16(B+5,!1)];Q=new DataView(A.buffer,Q.byteOffset+B+2)}throw TypeError("Invalid JPG, no size found")}getChannels(A){return 3}}class P2{match(A){return A.length>=8&&A[0]===137&&A[1]===80&&A[2]===78&&A[3]===71&&A[4]===13&&A[5]===10&&A[6]===26&&A[7]===10}getSize(A){let Q=new DataView(A.buffer,A.byteOffset);if(jQ.decodeText(A.slice(12,16))===P2.PNG_FRIED_CHUNK_NAME)return[Q.getUint32(32,!1),Q.getUint32(36,!1)];return[Q.getUint32(16,!1),Q.getUint32(20,!1)]}getChannels(A){return 4}}P2.PNG_FRIED_CHUNK_NAME="CgBI";class B8{static registerFormat(A,Q){this.impls[A]=Q}static getMimeType(A){for(let Q in this.impls)if(this.impls[Q].match(A))return Q;return null}static getSize(A,Q){if(!this.impls[Q])return null;return this.impls[Q].getSize(A)}static getChannels(A,Q){if(!this.impls[Q])return null;return this.impls[Q].getChannels(A)}static getVRAMByteLength(A,Q){if(!this.impls[Q])return null;if(this.impls[Q].getVRAMByteLength)return this.impls[Q].getVRAMByteLength(A);let B=0,Y=4,J=this.getSize(A,Q);if(!J)return null;while(J[0]>1||J[1]>1)B+=J[0]*J[1]*Y,J[0]=Math.max(Math.floor(J[0]/2),1),J[1]=Math.max(Math.floor(J[1]/2),1);return B+=1*Y,B}static mimeTypeToExtension(A){if(A==="image/jpeg")return"jpg";return A.split("/").pop()}static extensionToMimeType(A){if(A==="jpg")return"image/jpeg";if(!A)return"";return`image/${A}`}}B8.impls={"image/jpeg":new aYA,"image/png":new P2};function wmQ(A,Q){if(Q>A.byteLength)throw TypeError("Corrupt JPG, exceeded buffer limits");if(A.getUint8(Q)!==255)throw TypeError("Invalid JPG, marker table corrupted");return A}class r6{static basename(A){let Q=A.split(/[\\/]/).pop();return Q.substring(0,Q.lastIndexOf("."))}static extension(A){if(A.startsWith("data:image/")){let Q=A.match(/data:(image\/\w+)/)[1];return B8.mimeTypeToExtension(Q)}else if(A.startsWith("data:model/gltf+json"))return"gltf";else if(A.startsWith("data:model/gltf-binary"))return"glb";else if(A.startsWith("data:application/"))return"bin";return A.split(/[\\/]/).pop().split(/[.]/).pop()}}var fy=typeof Float32Array<"u"?Float32Array:Array;if(!Math.hypot)Math.hypot=function(){var A=0,Q=arguments.length;while(Q--)A+=arguments[Q]*arguments[Q];return Math.sqrt(A)};function jmQ(){var A=new fy(3);if(fy!=Float32Array)A[0]=0,A[1]=0,A[2]=0;return A}function xy(A){var Q=A[0],B=A[1],Y=A[2];return Math.hypot(Q,B,Y)}function OmQ(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=B[3]*Y+B[7]*J+B[11]*C+B[15];return X=X||1,A[0]=(B[0]*Y+B[4]*J+B[8]*C+B[12])/X,A[1]=(B[1]*Y+B[5]*J+B[9]*C+B[13])/X,A[2]=(B[2]*Y+B[6]*J+B[10]*C+B[14])/X,A}(function(){var A=jmQ();return function(Q,B,Y,J,C,X){var G,F;if(!B)B=3;if(!Y)Y=0;if(J)F=Math.min(J*B+Y,Q.length);else F=Q.length;for(G=Y;G{let C=J.getMesh();if(!C)return;let X=PmQ(C,J.getWorldMatrix());if(X.min.every(isFinite)&&X.max.every(isFinite))by(X.min,Q),by(X.max,Q)});return Q}function PmQ(A,Q){let B=oYA();for(let Y of A.listPrimitives()){let J=Y.getAttribute("POSITION"),C=Y.getIndices();if(!J)continue;let X=[0,0,0],G=[0,0,0];for(let F=0,W=C?C.getCount():J.getCount();F0)V=Math.sqrt(I+1)*2,A[3]=0.25*V,A[0]=(U-E)/V,A[1]=($-F)/V,A[2]=(G-W)/V;else if(X>Z&&X>K)V=Math.sqrt(1+X-Z-K)*2,A[3]=(U-E)/V,A[0]=0.25*V,A[1]=(G+W)/V,A[2]=($+F)/V;else if(Z>K)V=Math.sqrt(1+Z-X-K)*2,A[3]=($-F)/V,A[0]=(G+W)/V,A[1]=0.25*V,A[2]=(U+E)/V;else V=Math.sqrt(1+K-X-Z)*2,A[3]=(G-W)/V,A[0]=($+F)/V,A[1]=(U+E)/V,A[2]=0.25*V;return A}class kQ{static identity(A){return A}static eq(A,Q,B=0.00001){if(A.length!==Q.length)return!1;for(let Y=0;YB)return!1;return!0}static clamp(A,Q,B){if(AB)return B;return A}static decodeNormalizedInt(A,Q){switch(Q){case 5126:return A;case 5123:return A/65535;case 5121:return A/255;case 5122:return Math.max(A/32767,-1);case 5120:return Math.max(A/127,-1);default:throw Error("Invalid component type.")}}static encodeNormalizedInt(A,Q){switch(Q){case 5126:return A;case 5123:return Math.round(kQ.clamp(A,0,1)*65535);case 5121:return Math.round(kQ.clamp(A,0,1)*255);case 5122:return Math.round(kQ.clamp(A,-1,1)*32767);case 5120:return Math.round(kQ.clamp(A,-1,1)*127);default:throw Error("Invalid component type.")}}static decompose(A,Q,B,Y){let J=xy([A[0],A[1],A[2]]),C=xy([A[4],A[5],A[6]]),X=xy([A[8],A[9],A[10]]);if(TmQ(A)<0)J=-J;Q[0]=A[12],Q[1]=A[13],Q[2]=A[14];let F=A.slice(),W=1/J,Z=1/C,U=1/X;F[0]*=W,F[1]*=W,F[2]*=W,F[4]*=Z,F[5]*=Z,F[6]*=Z,F[8]*=U,F[9]*=U,F[10]*=U,_mQ(B,F),Y[0]=J,Y[1]=C,Y[2]=X}static compose(A,Q,B,Y){let J=Y,C=Q[0],X=Q[1],G=Q[2],F=Q[3],W=C+C,Z=X+X,U=G+G,$=C*W,E=C*Z,K=C*U,I=X*Z,V=X*U,H=G*U,D=F*W,L=F*Z,z=F*U,M=B[0],N=B[1],q=B[2];return J[0]=(1-(I+H))*M,J[1]=(E+z)*M,J[2]=(K-L)*M,J[3]=0,J[4]=(E-z)*N,J[5]=(1-($+H))*N,J[6]=(V+D)*N,J[7]=0,J[8]=(K+L)*q,J[9]=(V-D)*q,J[10]=(1-($+I))*q,J[11]=0,J[12]=A[0],J[13]=A[1],J[14]=A[2],J[15]=1,J}}function vmQ(A,Q){if(!!A!==!!Q)return!1;let B=A.getChild(),Y=Q.getChild();return B===Y||B.equals(Y)}function ymQ(A,Q){if(!!A!==!!Q)return!1;let B=A.values(),Y=Q.values();if(B.length!==Y.length)return!1;for(let J=0;JA,bmQ=new Set;class T2 extends N2{constructor(A,Q=""){super(A);this[PB].name=Q,this.init(),this.dispatchEvent({type:"create"})}getGraph(){return this.graph}getDefaults(){return Object.assign(super.getDefaults(),{name:"",extras:{}})}set(A,Q){if(Array.isArray(Q))Q=Q.slice();return super.set(A,Q)}getName(){return this.get("name")}setName(A){return this.set("name",A)}getExtras(){return this.get("extras")}setExtras(A){return this.set("extras",A)}clone(){return new this.constructor(this.graph).copy(this,rG)}copy(A,Q=rG){for(let B in this[PB]){let Y=this[PB][B];if(Y instanceof n6){if(!this[sG].has(B))Y.dispose()}else if(Y instanceof DC||Y instanceof xB)for(let J of Y.values())J.dispose();else if(Y instanceof cJ)for(let J of Y.values())J.dispose()}for(let B in A[PB]){let Y=this[PB][B],J=A[PB][B];if(J instanceof n6)if(this[sG].has(B))Y.getChild().copy(Q(J.getChild()),Q);else this.setRef(B,Q(J.getChild()),J.getAttributes());else if(J instanceof xB||J instanceof DC)for(let C of J.values())this.addRef(B,Q(C.getChild()),C.getAttributes());else if(J instanceof cJ)for(let C of J.keys()){let X=J.get(C);this.setRefMap(B,C,Q(X.getChild()),X.getAttributes())}else if(TW(J))this[PB][B]=JSON.parse(JSON.stringify(J));else if(Array.isArray(J)||J instanceof ArrayBuffer||ArrayBuffer.isView(J))this[PB][B]=J.slice();else this[PB][B]=J}return this}equals(A,Q=bmQ){if(this===A)return!0;if(this.propertyType!==A.propertyType)return!1;for(let B in this[PB]){if(Q.has(B))continue;let Y=this[PB][B],J=A[PB][B];if(Y instanceof n6||J instanceof n6){if(!vmQ(Y,J))return!1}else if(Y instanceof xB||J instanceof xB||Y instanceof DC||J instanceof DC){if(!ymQ(Y,J))return!1}else if(Y instanceof cJ||J instanceof cJ){if(!hmQ(Y,J))return!1}else if(TW(Y)||TW(J)){if(!eYA(Y,J))return!1}else if(j2(Y)||j2(J)){if(!tYA(Y,J))return!1}else if(Y!==J)return!1}return!0}detach(){return this.graph.disconnectParents(this,(A)=>A.propertyType!=="Root"),this}listParents(){return this.graph.listParents(this)}}class IJ extends T2{getDefaults(){return Object.assign(super.getDefaults(),{extensions:new cJ})}getExtension(A){return this.getRefMap("extensions",A)}setExtension(A,Q){if(Q)Q._validateParent(this);return this.setRefMap("extensions",A,Q)}listExtensions(){return this.listRefMapValues("extensions")}}class fA extends IJ{init(){this.propertyType=YA.ACCESSOR}getDefaults(){return Object.assign(super.getDefaults(),{array:null,type:fA.Type.SCALAR,componentType:fA.ComponentType.FLOAT,normalized:!1,sparse:!1,buffer:null})}static getElementSize(A){switch(A){case fA.Type.SCALAR:return 1;case fA.Type.VEC2:return 2;case fA.Type.VEC3:return 3;case fA.Type.VEC4:return 4;case fA.Type.MAT2:return 4;case fA.Type.MAT3:return 9;case fA.Type.MAT4:return 16;default:throw Error("Unexpected type: "+A)}}static getComponentSize(A){switch(A){case fA.ComponentType.BYTE:return 1;case fA.ComponentType.UNSIGNED_BYTE:return 1;case fA.ComponentType.SHORT:return 2;case fA.ComponentType.UNSIGNED_SHORT:return 2;case fA.ComponentType.UNSIGNED_INT:return 4;case fA.ComponentType.FLOAT:return 4;default:throw Error("Unexpected component type: "+A)}}getMinNormalized(A){let Q=this.getNormalized(),B=this.getElementSize(),Y=this.getComponentType();if(this.getMin(A),Q)for(let J=0;J{this._addChildOfRoot(Q.target)})}clone(){throw Error("Root cannot be cloned.")}copy(A,Q=rG){if(Q===rG)throw Error("Root cannot be copied.");this.set("asset",lJ({},A.get("asset"))),this.setName(A.getName()),this.setExtras(lJ({},A.getExtras())),this.setDefaultScene(A.getDefaultScene()?Q(A.getDefaultScene()):null);for(let B of A.listRefMapKeys("extensions")){let Y=A.getExtension(B);this.setExtension(B,Q(Y))}return this}_addChildOfRoot(A){if(A instanceof h4)this.addRef("scenes",A);else if(A instanceof S2)this.addRef("nodes",A);else if(A instanceof kW)this.addRef("cameras",A);else if(A instanceof iy)this.addRef("skins",A);else if(A instanceof kI)this.addRef("meshes",A);else if(A instanceof w1)this.addRef("materials",A);else if(A instanceof _W)this.addRef("textures",A);else if(A instanceof cy)this.addRef("animations",A);else if(A instanceof fA)this.addRef("accessors",A);else if(A instanceof ly)this.addRef("buffers",A);return this}getAsset(){return this.get("asset")}listExtensionsUsed(){return Array.from(this._extensions)}listExtensionsRequired(){return this.listExtensionsUsed().filter((A)=>A.isRequired())}_enableExtension(A){return this._extensions.add(A),this}_disableExtension(A){return this._extensions.delete(A),this}listScenes(){return this.listRefs("scenes")}setDefaultScene(A){return this.setRef("defaultScene",A)}getDefaultScene(){return this.getRef("defaultScene")}listNodes(){return this.listRefs("nodes")}listCameras(){return this.listRefs("cameras")}listSkins(){return this.listRefs("skins")}listMeshes(){return this.listRefs("meshes")}listMaterials(){return this.listRefs("materials")}listTextures(){return this.listRefs("textures")}listAnimations(){return this.listRefs("animations")}listAccessors(){return this.listRefs("accessors")}listBuffers(){return this.listRefs("buffers")}}class VJ{static fromGraph(A){return VJ._GRAPH_DOCUMENTS.get(A)||null}constructor(){this._graph=new D2,this._root=new g4(this._graph),this._logger=R9.DEFAULT_INSTANCE,VJ._GRAPH_DOCUMENTS.set(this._graph,this)}getRoot(){return this._root}getGraph(){return this._graph}getLogger(){return this._logger}setLogger(A){return this._logger=A,this}clone(){throw Error("Use 'cloneDocument(source)' from '@gltf-transform/functions'.")}merge(A){throw Error("Use 'mergeDocuments(target, source)' from '@gltf-transform/functions'.")}async transform(...A){let Q=A.map((B)=>B.name);for(let B of A)await B(this,{stack:Q});return this}createExtension(A){let Q=A.EXTENSION_NAME;return this.getRoot().listExtensionsUsed().find((Y)=>Y.extensionName===Q)||new A(this)}createScene(A=""){return new h4(this._graph,A)}createNode(A=""){return new S2(this._graph,A)}createCamera(A=""){return new kW(this._graph,A)}createSkin(A=""){return new iy(this._graph,A)}createMesh(A=""){return new kI(this._graph,A)}createPrimitive(){return new D0(this._graph)}createPrimitiveTarget(A=""){return new py(this._graph,A)}createMaterial(A=""){return new w1(this._graph,A)}createTexture(A=""){return new _W(this._graph,A)}createAnimation(A=""){return new cy(this._graph,A)}createAnimationChannel(A=""){return new a6(this._graph,A)}createAnimationSampler(A=""){return new oG(this._graph,A)}createAccessor(A="",Q=null){if(!Q)Q=this.getRoot().listBuffers()[0];return new fA(this._graph,A).setBuffer(Q)}createBuffer(A=""){return new ly(this._graph,A)}}VJ._GRAPH_DOCUMENTS=new WeakMap;class oB{constructor(A){this.extensionName="",this.prereadTypes=[],this.prewriteTypes=[],this.readDependencies=[],this.writeDependencies=[],this.document=void 0,this.required=!1,this.properties=new Set,this._listener=void 0,this.document=A,A.getRoot()._enableExtension(this),this._listener=(B)=>{let Y=B,J=Y.target;if(J instanceof aB&&J.extensionName===this.extensionName){if(Y.type==="node:create")this._addExtensionProperty(J);if(Y.type==="node:dispose")this._removeExtensionProperty(J)}};let Q=A.getGraph();Q.addEventListener("node:create",this._listener),Q.addEventListener("node:dispose",this._listener)}dispose(){this.document.getRoot()._disableExtension(this);let A=this.document.getGraph();A.removeEventListener("node:create",this._listener),A.removeEventListener("node:dispose",this._listener);for(let Q of this.properties)Q.dispose()}static register(){}isRequired(){return this.required}setRequired(A){return this.required=A,this}listProperties(){return Array.from(this.properties)}_addExtensionProperty(A){return this.properties.add(A),this}_removeExtensionProperty(A){return this.properties.delete(A),this}install(A,Q){return this}preread(A,Q){return this}prewrite(A,Q){return this}}oB.EXTENSION_NAME=void 0;class QJA{constructor(A){this.jsonDoc=void 0,this.buffers=[],this.bufferViews=[],this.bufferViewBuffers=[],this.accessors=[],this.textures=[],this.textureInfos=new Map,this.materials=[],this.meshes=[],this.cameras=[],this.nodes=[],this.skins=[],this.animations=[],this.scenes=[],this.jsonDoc=A}setTextureInfo(A,Q){if(this.textureInfos.set(A,Q),Q.texCoord!==void 0)A.setTexCoord(Q.texCoord);if(Q.extras!==void 0)A.setExtras(Q.extras);let B=this.jsonDoc.json.textures[Q.index];if(B.sampler===void 0)return;let Y=this.jsonDoc.json.samplers[B.sampler];if(Y.magFilter!==void 0)A.setMagFilter(Y.magFilter);if(Y.minFilter!==void 0)A.setMinFilter(Y.minFilter);if(Y.wrapS!==void 0)A.setWrapS(Y.wrapS);if(Y.wrapT!==void 0)A.setWrapT(Y.wrapT)}}var nYA={logger:R9.DEFAULT_INSTANCE,extensions:[],dependencies:{}},dmQ=new Set([YA.BUFFER,YA.TEXTURE,YA.MATERIAL,YA.MESH,YA.PRIMITIVE,YA.NODE,YA.SCENE]);class BJA{static read(A,Q=nYA){let B=lJ({},nYA,Q),{json:Y}=A,J=new VJ().setLogger(B.logger);this.validate(A,B);let C=new QJA(A),X=Y.asset,G=J.getRoot().getAsset();if(X.copyright)G.copyright=X.copyright;if(X.extras)G.extras=X.extras;if(Y.extras!==void 0)J.getRoot().setExtras(lJ({},Y.extras));let F=Y.extensionsUsed||[],W=Y.extensionsRequired||[];B.extensions.sort((N,q)=>N.EXTENSION_NAME>q.EXTENSION_NAME?1:-1);for(let N of B.extensions)if(F.includes(N.EXTENSION_NAME)){let q=J.createExtension(N).setRequired(W.includes(N.EXTENSION_NAME)),w=q.prereadTypes.filter((P)=>!dmQ.has(P));if(w.length)B.logger.warn(`Preread hooks for some types (${w.join()}), requested by extension ${q.extensionName}, are unsupported. Please file an issue or a PR.`);for(let P of q.readDependencies)q.install(P,B.dependencies[P])}let Z=Y.buffers||[];J.getRoot().listExtensionsUsed().filter((N)=>N.prereadTypes.includes(YA.BUFFER)).forEach((N)=>N.preread(C,YA.BUFFER)),C.buffers=Z.map((N)=>{let q=J.createBuffer(N.name);if(N.extras)q.setExtras(N.extras);if(N.uri&&N.uri.indexOf("__")!==0)q.setURI(N.uri);return q});let U=Y.bufferViews||[];C.bufferViewBuffers=U.map((N,q)=>{if(!C.bufferViews[q]){let w=A.json.buffers[N.buffer],P=w.uri?A.resources[w.uri]:A.resources[SW],_=N.byteOffset||0;C.bufferViews[q]=jQ.toView(P,_,N.byteLength)}return C.buffers[N.buffer]});let $=Y.accessors||[];C.accessors=$.map((N)=>{let q=C.bufferViewBuffers[N.bufferView],w=J.createAccessor(N.name,q).setType(N.type);if(N.extras)w.setExtras(N.extras);if(N.normalized!==void 0)w.setNormalized(N.normalized);if(N.bufferView===void 0)return w;return w.setArray(R2(N,C)),w});let E=Y.images||[],K=Y.textures||[];J.getRoot().listExtensionsUsed().filter((N)=>N.prereadTypes.includes(YA.TEXTURE)).forEach((N)=>N.preread(C,YA.TEXTURE)),C.textures=E.map((N)=>{let q=J.createTexture(N.name);if(N.extras)q.setExtras(N.extras);if(N.bufferView!==void 0){let w=Y.bufferViews[N.bufferView],P=A.json.buffers[w.buffer],_=P.uri?A.resources[P.uri]:A.resources[SW],O=w.byteOffset||0,k=w.byteLength,T=_.slice(O,O+k);q.setImage(T)}else if(N.uri!==void 0){if(q.setImage(A.resources[N.uri]),N.uri.indexOf("__")!==0)q.setURI(N.uri)}if(N.mimeType!==void 0)q.setMimeType(N.mimeType);else if(N.uri){let w=r6.extension(N.uri);q.setMimeType(B8.extensionToMimeType(w))}return q}),J.getRoot().listExtensionsUsed().filter((N)=>N.prereadTypes.includes(YA.MATERIAL)).forEach((N)=>N.preread(C,YA.MATERIAL));let I=Y.materials||[];C.materials=I.map((N)=>{let q=J.createMaterial(N.name);if(N.extras)q.setExtras(N.extras);if(N.alphaMode!==void 0)q.setAlphaMode(N.alphaMode);if(N.alphaCutoff!==void 0)q.setAlphaCutoff(N.alphaCutoff);if(N.doubleSided!==void 0)q.setDoubleSided(N.doubleSided);let w=N.pbrMetallicRoughness||{};if(w.baseColorFactor!==void 0)q.setBaseColorFactor(w.baseColorFactor);if(N.emissiveFactor!==void 0)q.setEmissiveFactor(N.emissiveFactor);if(w.metallicFactor!==void 0)q.setMetallicFactor(w.metallicFactor);if(w.roughnessFactor!==void 0)q.setRoughnessFactor(w.roughnessFactor);if(w.baseColorTexture!==void 0){let P=w.baseColorTexture,_=C.textures[K[P.index].source];q.setBaseColorTexture(_),C.setTextureInfo(q.getBaseColorTextureInfo(),P)}if(N.emissiveTexture!==void 0){let P=N.emissiveTexture,_=C.textures[K[P.index].source];q.setEmissiveTexture(_),C.setTextureInfo(q.getEmissiveTextureInfo(),P)}if(N.normalTexture!==void 0){let P=N.normalTexture,_=C.textures[K[P.index].source];if(q.setNormalTexture(_),C.setTextureInfo(q.getNormalTextureInfo(),P),N.normalTexture.scale!==void 0)q.setNormalScale(N.normalTexture.scale)}if(N.occlusionTexture!==void 0){let P=N.occlusionTexture,_=C.textures[K[P.index].source];if(q.setOcclusionTexture(_),C.setTextureInfo(q.getOcclusionTextureInfo(),P),N.occlusionTexture.strength!==void 0)q.setOcclusionStrength(N.occlusionTexture.strength)}if(w.metallicRoughnessTexture!==void 0){let P=w.metallicRoughnessTexture,_=C.textures[K[P.index].source];q.setMetallicRoughnessTexture(_),C.setTextureInfo(q.getMetallicRoughnessTextureInfo(),P)}return q}),J.getRoot().listExtensionsUsed().filter((N)=>N.prereadTypes.includes(YA.MESH)).forEach((N)=>N.preread(C,YA.MESH));let V=Y.meshes||[];J.getRoot().listExtensionsUsed().filter((N)=>N.prereadTypes.includes(YA.PRIMITIVE)).forEach((N)=>N.preread(C,YA.PRIMITIVE)),C.meshes=V.map((N)=>{let q=J.createMesh(N.name);if(N.extras)q.setExtras(N.extras);if(N.weights!==void 0)q.setWeights(N.weights);return(N.primitives||[]).forEach((P)=>{let _=J.createPrimitive();if(P.extras)_.setExtras(P.extras);if(P.material!==void 0)_.setMaterial(C.materials[P.material]);if(P.mode!==void 0)_.setMode(P.mode);for(let[T,S]of Object.entries(P.attributes||{}))_.setAttribute(T,C.accessors[S]);if(P.indices!==void 0)_.setIndices(C.accessors[P.indices]);let O=N.extras&&N.extras.targetNames||[];(P.targets||[]).forEach((T,S)=>{let v=O[S]||S.toString(),y=J.createPrimitiveTarget(v);for(let[g,h]of Object.entries(T))y.setAttribute(g,C.accessors[h]);_.addTarget(y)}),q.addPrimitive(_)}),q});let H=Y.cameras||[];C.cameras=H.map((N)=>{let q=J.createCamera(N.name).setType(N.type);if(N.extras)q.setExtras(N.extras);if(N.type===kW.Type.PERSPECTIVE){let w=N.perspective;if(q.setYFov(w.yfov),q.setZNear(w.znear),w.zfar!==void 0)q.setZFar(w.zfar);if(w.aspectRatio!==void 0)q.setAspectRatio(w.aspectRatio)}else{let w=N.orthographic;q.setZNear(w.znear).setZFar(w.zfar).setXMag(w.xmag).setYMag(w.ymag)}return q});let D=Y.nodes||[];J.getRoot().listExtensionsUsed().filter((N)=>N.prereadTypes.includes(YA.NODE)).forEach((N)=>N.preread(C,YA.NODE)),C.nodes=D.map((N)=>{let q=J.createNode(N.name);if(N.extras)q.setExtras(N.extras);if(N.translation!==void 0)q.setTranslation(N.translation);if(N.rotation!==void 0)q.setRotation(N.rotation);if(N.scale!==void 0)q.setScale(N.scale);if(N.matrix!==void 0){let w=[0,0,0],P=[0,0,0,1],_=[1,1,1];kQ.decompose(N.matrix,w,P,_),q.setTranslation(w),q.setRotation(P),q.setScale(_)}if(N.weights!==void 0)q.setWeights(N.weights);return q});let L=Y.skins||[];C.skins=L.map((N)=>{let q=J.createSkin(N.name);if(N.extras)q.setExtras(N.extras);if(N.inverseBindMatrices!==void 0)q.setInverseBindMatrices(C.accessors[N.inverseBindMatrices]);if(N.skeleton!==void 0)q.setSkeleton(C.nodes[N.skeleton]);for(let w of N.joints)q.addJoint(C.nodes[w]);return q}),D.map((N,q)=>{let w=C.nodes[q];if((N.children||[]).forEach((_)=>w.addChild(C.nodes[_])),N.mesh!==void 0)w.setMesh(C.meshes[N.mesh]);if(N.camera!==void 0)w.setCamera(C.cameras[N.camera]);if(N.skin!==void 0)w.setSkin(C.skins[N.skin])});let z=Y.animations||[];C.animations=z.map((N)=>{let q=J.createAnimation(N.name);if(N.extras)q.setExtras(N.extras);let P=(N.samplers||[]).map((O)=>{let k=J.createAnimationSampler().setInput(C.accessors[O.input]).setOutput(C.accessors[O.output]).setInterpolation(O.interpolation||oG.Interpolation.LINEAR);if(O.extras)k.setExtras(O.extras);return q.addSampler(k),k});return(N.channels||[]).forEach((O)=>{let k=J.createAnimationChannel().setSampler(P[O.sampler]).setTargetPath(O.target.path);if(O.target.node!==void 0)k.setTargetNode(C.nodes[O.target.node]);if(O.extras)k.setExtras(O.extras);q.addChannel(k)}),q});let M=Y.scenes||[];if(J.getRoot().listExtensionsUsed().filter((N)=>N.prereadTypes.includes(YA.SCENE)).forEach((N)=>N.preread(C,YA.SCENE)),C.scenes=M.map((N)=>{let q=J.createScene(N.name);if(N.extras)q.setExtras(N.extras);return(N.nodes||[]).map((P)=>C.nodes[P]).forEach((P)=>q.addChild(P)),q}),Y.scene!==void 0)J.getRoot().setDefaultScene(C.scenes[Y.scene]);return J.getRoot().listExtensionsUsed().forEach((N)=>N.read(C)),$.forEach((N,q)=>{let w=C.accessors[q],P=!!N.sparse,_=!N.bufferView&&!w.getArray();if(P||_)w.setSparse(!0).setArray(lmQ(N,C))}),J}static validate(A,Q){let B=A.json;if(B.asset.version!=="2.0")throw Error(`Unsupported glTF version, "${B.asset.version}".`);if(B.extensionsRequired){for(let Y of B.extensionsRequired)if(!Q.extensions.find((J)=>J.EXTENSION_NAME===Y))throw Error(`Missing required extension, "${Y}".`)}if(B.extensionsUsed){for(let Y of B.extensionsUsed)if(!Q.extensions.find((J)=>J.EXTENSION_NAME===Y))Q.logger.warn(`Missing optional extension, "${Y}".`)}}}function cmQ(A,Q){let B=Q.jsonDoc,Y=Q.bufferViews[A.bufferView],J=B.json.bufferViews[A.bufferView],C=aG[A.componentType],X=fA.getElementSize(A.type),G=C.BYTES_PER_ELEMENT,F=A.byteOffset||0,W=new C(A.count*X),Z=new DataView(Y.buffer,Y.byteOffset,Y.byteLength),U=J.byteStride;for(let $=0;$1,()=>B.basename||"buffer"),this.imageURIGenerator=new uy(C>1,(X)=>pmQ(A,X)||B.basename||"texture"),this.logger=A.getLogger()}createTextureInfoDef(A,Q){let B={magFilter:Q.getMagFilter()||void 0,minFilter:Q.getMinFilter()||void 0,wrapS:Q.getWrapS(),wrapT:Q.getWrapT()},Y=JSON.stringify(B);if(!this.samplerDefIndexMap.has(Y))this.samplerDefIndexMap.set(Y,this.jsonDoc.json.samplers.length),this.jsonDoc.json.samplers.push(B);let J={source:this.imageIndexMap.get(A),sampler:this.samplerDefIndexMap.get(Y)},C=JSON.stringify(J);if(!this.textureDefIndexMap.has(C))this.textureDefIndexMap.set(C,this.jsonDoc.json.textures.length),this.jsonDoc.json.textures.push(J);let X={index:this.textureDefIndexMap.get(C)};if(Q.getTexCoord()!==0)X.texCoord=Q.getTexCoord();if(Object.keys(Q.getExtras()).length>0)X.extras=Q.getExtras();return this.textureInfoDefMap.set(Q,X),X}createPropertyDef(A){let Q={};if(A.getName())Q.name=A.getName();if(Object.keys(A.getExtras()).length>0)Q.extras=A.getExtras();return Q}createAccessorDef(A){let Q=this.createPropertyDef(A);if(Q.type=A.getType(),Q.componentType=A.getComponentType(),Q.count=A.getCount(),this._doc.getGraph().listParentEdges(A).some((Y)=>Y.getName()==="attributes"&&Y.getAttributes().key==="POSITION"||Y.getName()==="input"))Q.max=A.getMax([]).map(Math.fround),Q.min=A.getMin([]).map(Math.fround);if(A.getNormalized())Q.normalized=A.getNormalized();return Q}createImageData(A,Q,B){if(this.options.format===s6.GLB)this.imageBufferViews.push(Q),A.bufferView=this.jsonDoc.json.bufferViews.length,this.jsonDoc.json.bufferViews.push({buffer:0,byteOffset:-1,byteLength:Q.byteLength});else{let Y=B8.mimeTypeToExtension(B.getMimeType());A.uri=this.imageURIGenerator.createURI(B,Y),this.assignResourceURI(A.uri,Q,!1)}}assignResourceURI(A,Q,B){let Y=this.jsonDoc.resources;if(!(A in Y)){Y[A]=Q;return}if(Q===Y[A]){this.logger.warn(`Duplicate resource URI, "${A}".`);return}let J=`Resource URI "${A}" already assigned to different data.`;if(!B){this.logger.warn(J);return}throw Error(J)}getAccessorUsage(A){let Q=this._accessorUsageMap.get(A);if(Q)return Q;if(A.getSparse())return Y8.SPARSE;for(let B of this._doc.getGraph().listParentEdges(A)){let{usage:Y}=B.getAttributes();if(Y)return Y;if(B.getParent().propertyType!==YA.ROOT)this.logger.warn(`Missing attribute ".usage" on edge, "${B.getName()}".`)}return Y8.OTHER}addAccessorToUsageGroup(A,Q){let B=this._accessorUsageMap.get(A);if(B&&B!==Q)throw Error(`Accessor with usage "${B}" cannot be reused as "${Q}".`);return this._accessorUsageMap.set(A,Q),this}}e8.BufferViewTarget=TI;e8.BufferViewUsage=Y8;e8.USAGE_TO_TARGET={[Y8.ARRAY_BUFFER]:TI.ARRAY_BUFFER,[Y8.ELEMENT_ARRAY_BUFFER]:TI.ELEMENT_ARRAY_BUFFER};class uy{constructor(A,Q){this.multiple=void 0,this.basename=void 0,this.counter={},this.multiple=A,this.basename=Q}createURI(A,Q){if(A.getURI())return A.getURI();else if(!this.multiple)return`${this.basename(A)}.${Q}`;else{let B=this.basename(A);return this.counter[B]=this.counter[B]||1,`${B}_${this.counter[B]++}.${Q}`}}}function pmQ(A,Q){let B=A.getGraph().listParentEdges(Q).find((Y)=>Y.getParent()!==A.getRoot());return B?B.getName().replace(/texture$/i,""):""}var{BufferViewUsage:z2}=e8,{UNSIGNED_INT:imQ,UNSIGNED_SHORT:nmQ,UNSIGNED_BYTE:smQ}=fA.ComponentType,rmQ=new Set([YA.ACCESSOR,YA.BUFFER,YA.MATERIAL,YA.MESH]);class YJA{static write(A,Q){let B=A.getGraph(),Y=A.getRoot(),J={asset:lJ({generator:`glTF-Transform ${rYA}`},Y.getAsset()),extras:lJ({},Y.getExtras())},C={json:J,resources:{}},X=new e8(A,C,Q),G=Q.logger||R9.DEFAULT_INSTANCE,F=new Set(Q.extensions.map((V)=>V.EXTENSION_NAME)),W=A.getRoot().listExtensionsUsed().filter((V)=>F.has(V.extensionName)).sort((V,H)=>V.extensionName>H.extensionName?1:-1),Z=A.getRoot().listExtensionsRequired().filter((V)=>F.has(V.extensionName)).sort((V,H)=>V.extensionName>H.extensionName?1:-1);if(W.length!rmQ.has(D));if(H.length)G.warn(`Prewrite hooks for some types (${H.join()}), requested by extension ${V.extensionName}, are unsupported. Please file an issue or a PR.`);for(let D of V.writeDependencies)V.install(D,Q.dependencies[D])}function U(V,H,D,L){let z=[],M=0;for(let w of V){let P=X.createAccessorDef(w);P.bufferView=J.bufferViews.length;let _=w.getArray(),O=jQ.pad(jQ.toView(_));P.byteOffset=M,M+=O.byteLength,z.push(O),X.accessorIndexMap.set(w,J.accessors.length),J.accessors.push(P)}let N=jQ.concat(z),q={buffer:H,byteOffset:D,byteLength:N.byteLength};if(L)q.target=L;return J.bufferViews.push(q),{buffers:z,byteLength:M}}function $(V,H,D){let L=V[0].getCount(),z=0;for(let P of V){let _=X.createAccessorDef(P);_.bufferView=J.bufferViews.length,_.byteOffset=z;let O=P.getElementSize(),k=P.getComponentSize();z+=jQ.padNumber(O*k),X.accessorIndexMap.set(P,J.accessors.length),J.accessors.push(_)}let M=L*z,N=new ArrayBuffer(M),q=new DataView(N);for(let P=0;PS.getCount()/2)q=!0;let l=aG[S.getComponentType()];p.indices=y,p.values=new l(g)}if(!Number.isFinite(N))return{buffers:L,byteLength:z};if(q)G.warn("Some sparse accessors have >50% non-zero elements, which may increase file size.");let w=N<255?Uint8Array:N<65535?Uint16Array:Uint32Array,P=N<255?smQ:N<65535?nmQ:imQ,_={buffer:H,byteOffset:D+z,byteLength:0};for(let S of V){let v=M.get(S);if(v.count===0)continue;v.indicesByteOffset=_.byteLength;let y=jQ.pad(jQ.toView(new w(v.indices)));L.push(y),z+=y.byteLength,_.byteLength+=y.byteLength}J.bufferViews.push(_);let O=J.bufferViews.length-1,k={buffer:H,byteOffset:D+z,byteLength:0};for(let S of V){let v=M.get(S);if(v.count===0)continue;v.valuesByteOffset=k.byteLength;let y=jQ.pad(jQ.toView(v.values));L.push(y),z+=y.byteLength,k.byteLength+=y.byteLength}J.bufferViews.push(k);let T=J.bufferViews.length-1;for(let S of V){let v=M.get(S);if(v.count===0)continue;v.accessorDef.sparse={count:v.count,indices:{bufferView:O,byteOffset:v.indicesByteOffset,componentType:P},values:{bufferView:T,byteOffset:v.valuesByteOffset}}}return{buffers:L,byteLength:z}}if(J.accessors=[],J.bufferViews=[],J.samplers=[],J.textures=[],J.images=Y.listTextures().map((V,H)=>{let D=X.createPropertyDef(V);if(V.getMimeType())D.mimeType=V.getMimeType();let L=V.getImage();if(L)X.createImageData(D,L,V);return X.imageIndexMap.set(V,H),D}),W.filter((V)=>V.prewriteTypes.includes(YA.ACCESSOR)).forEach((V)=>V.prewrite(X,YA.ACCESSOR)),Y.listAccessors().forEach((V)=>{let{accessorUsageGroupedByParent:H,accessorParents:D}=X;if(X.accessorIndexMap.has(V))return;let L=X.getAccessorUsage(V);if(X.addAccessorToUsageGroup(V,L),H.has(L)){let z=B.listParents(V).find((M)=>M.propertyType!==YA.ROOT);D.set(V,z)}}),W.filter((V)=>V.prewriteTypes.includes(YA.BUFFER)).forEach((V)=>V.prewrite(X,YA.BUFFER)),(Y.listAccessors().length>0||X.otherBufferViews.size>0||Y.listTextures().length>0&&Q.format===s6.GLB)&&Y.listBuffers().length===0)throw Error("Buffer required for Document resources, but none was found.");if(J.buffers=[],Y.listBuffers().forEach((V,H)=>{let D=X.createPropertyDef(V),L=X.accessorUsageGroupedByParent,z=V.listParents().filter((k)=>k instanceof fA),M=new Set(z.map((k)=>X.accessorParents.get(k))),N=new Map(Array.from(M).map((k,T)=>[k,T])),q={};for(let k of z){var w;if(X.accessorIndexMap.has(k))continue;let T=X.getAccessorUsage(k),S=T;if(L.has(T)){let v=X.accessorParents.get(k);S+=`:${N.get(v)}`}q[w=S]||(q[w]={usage:T,accessors:[]}),q[S].accessors.push(k)}let P=[],_=J.buffers.length,O=0;for(let{usage:k,accessors:T}of Object.values(q))if(k===z2.ARRAY_BUFFER&&Q.vertexLayout===w2.INTERLEAVED){let S=$(T,_,O);O+=S.byteLength;for(let v of S.buffers)P.push(v)}else if(k===z2.ARRAY_BUFFER)for(let S of T){let v=$([S],_,O);O+=v.byteLength;for(let y of v.buffers)P.push(y)}else if(k===z2.SPARSE){let S=E(T,_,O);O+=S.byteLength;for(let v of S.buffers)P.push(v)}else if(k===z2.ELEMENT_ARRAY_BUFFER){let S=e8.BufferViewTarget.ELEMENT_ARRAY_BUFFER,v=U(T,_,O,S);O+=v.byteLength;for(let y of v.buffers)P.push(y)}else{let S=U(T,_,O);O+=S.byteLength;for(let v of S.buffers)P.push(v)}if(X.imageBufferViews.length&&H===0){for(let k=0;k!V.getBuffer()))G.warn("Skipped writing one or more Accessors: no Buffer assigned.");W.filter((V)=>V.prewriteTypes.includes(YA.MATERIAL)).forEach((V)=>V.prewrite(X,YA.MATERIAL)),J.materials=Y.listMaterials().map((V,H)=>{let D=X.createPropertyDef(V);if(V.getAlphaMode()!==w1.AlphaMode.OPAQUE)D.alphaMode=V.getAlphaMode();if(V.getAlphaMode()===w1.AlphaMode.MASK)D.alphaCutoff=V.getAlphaCutoff();if(V.getDoubleSided())D.doubleSided=!0;if(D.pbrMetallicRoughness={},!kQ.eq(V.getBaseColorFactor(),[1,1,1,1]))D.pbrMetallicRoughness.baseColorFactor=V.getBaseColorFactor();if(!kQ.eq(V.getEmissiveFactor(),[0,0,0]))D.emissiveFactor=V.getEmissiveFactor();if(V.getRoughnessFactor()!==1)D.pbrMetallicRoughness.roughnessFactor=V.getRoughnessFactor();if(V.getMetallicFactor()!==1)D.pbrMetallicRoughness.metallicFactor=V.getMetallicFactor();if(V.getBaseColorTexture()){let L=V.getBaseColorTexture(),z=V.getBaseColorTextureInfo();D.pbrMetallicRoughness.baseColorTexture=X.createTextureInfoDef(L,z)}if(V.getEmissiveTexture()){let L=V.getEmissiveTexture(),z=V.getEmissiveTextureInfo();D.emissiveTexture=X.createTextureInfoDef(L,z)}if(V.getNormalTexture()){let L=V.getNormalTexture(),z=V.getNormalTextureInfo(),M=X.createTextureInfoDef(L,z);if(V.getNormalScale()!==1)M.scale=V.getNormalScale();D.normalTexture=M}if(V.getOcclusionTexture()){let L=V.getOcclusionTexture(),z=V.getOcclusionTextureInfo(),M=X.createTextureInfoDef(L,z);if(V.getOcclusionStrength()!==1)M.strength=V.getOcclusionStrength();D.occlusionTexture=M}if(V.getMetallicRoughnessTexture()){let L=V.getMetallicRoughnessTexture(),z=V.getMetallicRoughnessTextureInfo();D.pbrMetallicRoughness.metallicRoughnessTexture=X.createTextureInfoDef(L,z)}return X.materialIndexMap.set(V,H),D}),W.filter((V)=>V.prewriteTypes.includes(YA.MESH)).forEach((V)=>V.prewrite(X,YA.MESH)),J.meshes=Y.listMeshes().map((V,H)=>{let D=X.createPropertyDef(V),L=null;if(D.primitives=V.listPrimitives().map((z)=>{let M={attributes:{}};M.mode=z.getMode();let N=z.getMaterial();if(N)M.material=X.materialIndexMap.get(N);if(Object.keys(z.getExtras()).length)M.extras=z.getExtras();let q=z.getIndices();if(q)M.indices=X.accessorIndexMap.get(q);for(let w of z.listSemantics())M.attributes[w]=X.accessorIndexMap.get(z.getAttribute(w));for(let w of z.listTargets()){let P={};for(let _ of w.listSemantics())P[_]=X.accessorIndexMap.get(w.getAttribute(_));M.targets=M.targets||[],M.targets.push(P)}if(z.listTargets().length&&!L)L=z.listTargets().map((w)=>w.getName());return M}),V.getWeights().length)D.weights=V.getWeights();if(L)D.extras=D.extras||{},D.extras.targetNames=L;return X.meshIndexMap.set(V,H),D}),J.cameras=Y.listCameras().map((V,H)=>{let D=X.createPropertyDef(V);if(D.type=V.getType(),D.type===kW.Type.PERSPECTIVE){D.perspective={znear:V.getZNear(),zfar:V.getZFar(),yfov:V.getYFov()};let L=V.getAspectRatio();if(L!==null)D.perspective.aspectRatio=L}else D.orthographic={znear:V.getZNear(),zfar:V.getZFar(),xmag:V.getXMag(),ymag:V.getYMag()};return X.cameraIndexMap.set(V,H),D}),J.nodes=Y.listNodes().map((V,H)=>{let D=X.createPropertyDef(V);if(!kQ.eq(V.getTranslation(),[0,0,0]))D.translation=V.getTranslation();if(!kQ.eq(V.getRotation(),[0,0,0,1]))D.rotation=V.getRotation();if(!kQ.eq(V.getScale(),[1,1,1]))D.scale=V.getScale();if(V.getWeights().length)D.weights=V.getWeights();return X.nodeIndexMap.set(V,H),D}),J.skins=Y.listSkins().map((V,H)=>{let D=X.createPropertyDef(V),L=V.getInverseBindMatrices();if(L)D.inverseBindMatrices=X.accessorIndexMap.get(L);let z=V.getSkeleton();if(z)D.skeleton=X.nodeIndexMap.get(z);return D.joints=V.listJoints().map((M)=>X.nodeIndexMap.get(M)),X.skinIndexMap.set(V,H),D}),Y.listNodes().forEach((V,H)=>{let D=J.nodes[H],L=V.getMesh();if(L)D.mesh=X.meshIndexMap.get(L);let z=V.getCamera();if(z)D.camera=X.cameraIndexMap.get(z);let M=V.getSkin();if(M)D.skin=X.skinIndexMap.get(M);if(V.listChildren().length>0)D.children=V.listChildren().map((N)=>X.nodeIndexMap.get(N))}),J.animations=Y.listAnimations().map((V,H)=>{let D=X.createPropertyDef(V),L=new Map;return D.samplers=V.listSamplers().map((z,M)=>{let N=X.createPropertyDef(z);return N.input=X.accessorIndexMap.get(z.getInput()),N.output=X.accessorIndexMap.get(z.getOutput()),N.interpolation=z.getInterpolation(),L.set(z,M),N}),D.channels=V.listChannels().map((z)=>{let M=X.createPropertyDef(z);return M.sampler=L.get(z.getSampler()),M.target={node:X.nodeIndexMap.get(z.getTargetNode()),path:z.getTargetPath()},M}),X.animationIndexMap.set(V,H),D}),J.scenes=Y.listScenes().map((V,H)=>{let D=X.createPropertyDef(V);return D.nodes=V.listChildren().map((L)=>X.nodeIndexMap.get(L)),X.sceneIndexMap.set(V,H),D});let I=Y.getDefaultScene();if(I)J.scene=Y.listScenes().indexOf(I);return J.extensionsUsed=W.map((V)=>V.extensionName),J.extensionsRequired=Z.map((V)=>V.extensionName),W.forEach((V)=>V.write(X)),amQ(J),C}}function amQ(A){let Q=[];for(let B in A){let Y=A[B];if(Array.isArray(Y)&&Y.length===0)Q.push(B);else if(Y===null||Y==="")Q.push(B);else if(Y&&typeof Y==="object"&&Object.keys(Y).length===0)Q.push(B)}for(let B of Q)delete A[B]}var O2;(function(A){A[A.JSON=1313821514]="JSON",A[A.BIN=5130562]="BIN"})(O2||(O2={}));class JJA{constructor(){this._logger=R9.DEFAULT_INSTANCE,this._extensions=new Set,this._dependencies={},this._vertexLayout=w2.INTERLEAVED,this.lastReadBytes=0,this.lastWriteBytes=0}setLogger(A){return this._logger=A,this}registerExtensions(A){for(let Q of A)this._extensions.add(Q),Q.register();return this}registerDependencies(A){return Object.assign(this._dependencies,A),this}setVertexLayout(A){return this._vertexLayout=A,this}async read(A){return await this.readJSON(await this.readAsJSON(A))}async readAsJSON(A){let Q=await this.readURI(A,"view");this.lastReadBytes=Q.byteLength;let B=sYA(Q)?this._binaryToJSON(Q):{json:JSON.parse(jQ.decodeText(Q)),resources:{}};return await this._readResourcesExternal(B,this.dirname(A)),this._readResourcesInternal(B),B}async readJSON(A){return A=this._copyJSON(A),this._readResourcesInternal(A),BJA.read(A,{extensions:Array.from(this._extensions),dependencies:this._dependencies,logger:this._logger})}async binaryToJSON(A){let Q=this._binaryToJSON(jQ.assertView(A));this._readResourcesInternal(Q);let B=Q.json;if(B.buffers&&B.buffers.some((Y)=>omQ(Q,Y)))throw Error("Cannot resolve external buffers with binaryToJSON().");else if(B.images&&B.images.some((Y)=>tmQ(Q,Y)))throw Error("Cannot resolve external images with binaryToJSON().");return Q}async readBinary(A){return this.readJSON(await this.binaryToJSON(jQ.assertView(A)))}async writeJSON(A,Q={}){if(Q.format===s6.GLB&&A.getRoot().listBuffers().length>1)throw Error("GLB must have 0–1 buffers.");return YJA.write(A,{format:Q.format||s6.GLTF,basename:Q.basename||"",logger:this._logger,vertexLayout:this._vertexLayout,dependencies:lJ({},this._dependencies),extensions:Array.from(this._extensions)})}async writeBinary(A){let{json:Q,resources:B}=await this.writeJSON(A,{format:s6.GLB}),Y=new Uint32Array([1179937895,2,12]),J=JSON.stringify(Q),C=jQ.pad(jQ.encodeText(J),32),X=jQ.toView(new Uint32Array([C.byteLength,1313821514])),G=jQ.concat([X,C]);Y[Y.length-1]+=G.byteLength;let F=Object.values(B)[0];if(!F||!F.byteLength)return jQ.concat([jQ.toView(Y),G]);let W=jQ.pad(F,0),Z=jQ.toView(new Uint32Array([W.byteLength,5130562])),U=jQ.concat([Z,W]);return Y[Y.length-1]+=U.byteLength,jQ.concat([jQ.toView(Y),G,U])}async _readResourcesExternal(A,Q){var B=this;let Y=A.json.images||[],J=A.json.buffers||[],C=[...Y,...J].map(async function(X){let G=X.uri;if(!G||G.match(/data:/))return Promise.resolve();A.resources[G]=await B.readURI(B.resolve(Q,G),"view"),B.lastReadBytes+=A.resources[G].byteLength});await Promise.all(C)}_readResourcesInternal(A){function Q(J){if(!J.uri)return;if(J.uri in A.resources){jQ.assertView(A.resources[J.uri]);return}if(J.uri.match(/data:/)){let C=`__${AJA()}.${r6.extension(J.uri)}`;A.resources[C]=jQ.createBufferFromDataURI(J.uri),J.uri=C}}(A.json.images||[]).forEach((J)=>{if(J.bufferView===void 0&&J.uri===void 0)throw Error("Missing resource URI or buffer view.");Q(J)}),(A.json.buffers||[]).forEach(Q)}_copyJSON(A){let{images:Q,buffers:B}=A.json;if(A={json:lJ({},A.json),resources:lJ({},A.resources)},Q)A.json.images=Q.map((Y)=>lJ({},Y));if(B)A.json.buffers=B.map((Y)=>lJ({},Y));return A}_binaryToJSON(A){if(!sYA(A))throw Error("Invalid glTF 2.0 binary.");let Q=new Uint32Array(A.buffer,A.byteOffset+12,2);if(Q[1]!==O2.JSON)throw Error("Missing required GLB JSON chunk.");let B=20,Y=Q[0],J=jQ.decodeText(jQ.toView(A,B,Y)),C=JSON.parse(J),X=B+Y;if(A.byteLength<=X)return{json:C,resources:{}};let G=new Uint32Array(A.buffer,A.byteOffset+X,2);if(G[1]!==O2.BIN)return{json:C,resources:{}};let F=G[0],W=jQ.toView(A,X+8,F);return{json:C,resources:{[SW]:W}}}}function omQ(A,Q){return Q.uri!==void 0&&!(Q.uri in A.resources)}function tmQ(A,Q){return Q.uri!==void 0&&!(Q.uri in A.resources)&&Q.bufferView===void 0}function sYA(A){if(A.byteLength<3*Uint32Array.BYTES_PER_ELEMENT)return!1;let Q=new Uint32Array(A.buffer,A.byteOffset,3);return Q[0]===1179937895&&Q[1]===2}class x4 extends JJA{constructor(A=null,Q=t8.DEFAULT_INIT){super();this._fetch=void 0,this._fetchConfig=void 0,this._init=void 0,this._fetchEnabled=!1,this._fetch=A,this._fetchConfig=Q,this._init=this.init()}async init(){if(this._init)return this._init;return Promise.all([import("fs"),import("path")]).then(([A,Q])=>{this._fs=A.promises,this._path=Q})}setAllowNetwork(A){if(A&&!this._fetch)throw Error("NodeIO requires a Fetch API implementation for HTTP requests.");return this._fetchEnabled=A,this}async readURI(A,Q){if(await this.init(),t8.isAbsoluteURL(A)){if(!this._fetchEnabled||!this._fetch)throw Error("Network request blocked. Allow HTTP requests explicitly, if needed.");let B=await this._fetch(A,this._fetchConfig);switch(Q){case"view":return new Uint8Array(await B.arrayBuffer());case"text":return B.text()}}else switch(Q){case"view":return this._fs.readFile(A);case"text":return this._fs.readFile(A,"utf8")}}resolve(A,Q){if(t8.isAbsoluteURL(A)||t8.isAbsoluteURL(Q))return t8.resolve(A,Q);return this._path.resolve(A,decodeURIComponent(Q))}dirname(A){if(t8.isAbsoluteURL(A))return t8.dirname(A);return this._path.dirname(A)}async write(A,Q){await this.init(),await(!!A.match(/\.glb$/)?this._writeGLB(A,Q):this._writeGLTF(A,Q))}async _writeGLTF(A,Q){var B=this;this.lastWriteBytes=0;let{json:Y,resources:J}=await this.writeJSON(Q,{format:s6.GLTF,basename:r6.basename(A)}),{_fs:C,_path:X}=this,G=X.dirname(A),F=JSON.stringify(Y,null,2);await C.writeFile(A,F),this.lastWriteBytes+=F.length;for(let W of emQ(Object.keys(J),10))await Promise.all(W.map(async function(Z){if(t8.isAbsoluteURL(Z)){if(t8.extension(Z)==="bin")throw Error(`Cannot write buffer to path "${Z}".`);return}let U=X.join(G,decodeURIComponent(Z));await C.mkdir(X.dirname(U),{recursive:!0}),await C.writeFile(U,J[Z]),B.lastWriteBytes+=J[Z].byteLength}))}async _writeGLB(A,Q){let B=await this.writeBinary(Q);await this._fs.writeFile(A,B),this.lastWriteBytes=B.byteLength}}function emQ(A,Q){let B=[];for(let Y=0,J=A.length;Y{if(!Y.extensions||!Y.extensions[o6])return;let C=Y.extensions[o6],X=this.createInstancedMesh();for(let G in C.attributes)X.setAttribute(G,A.accessors[C.attributes[G]]);A.nodes[J].setExtension(o6,X)}),this}prewrite(A){A.accessorUsageGroupedByParent.add(sy);for(let Q of this.properties)for(let B of Q.listAttributes())A.addAccessorToUsageGroup(B,sy);return this}write(A){let Q=A.jsonDoc;return this.document.getRoot().listNodes().forEach((B)=>{let Y=B.getExtension(o6);if(Y){let J=A.nodeIndexMap.get(B),C=Q.json.nodes[J],X={attributes:{}};Y.listSemantics().forEach((G)=>{let F=Y.getAttribute(G);X.attributes[G]=A.accessorIndexMap.get(F)}),C.extensions=C.extensions||{},C.extensions[o6]=X}}),this}}y2.EXTENSION_NAME=o6;function $X(){return $X=Object.assign?Object.assign.bind():function(A){for(var Q=1;Q8?8:4,X.componentType=C>8?FJA:BuQ,X.normalized=!0,G=A.getElementSize()===3?GuQ(G):G,X.array=Q.encodeFilterOct(G,A.getCount(),X.byteStride,C);break;case b0.QUATERNION:X.byteStride=8,X.componentType=FJA,X.normalized=!0,X.array=Q.encodeFilterQuat(G,A.getCount(),X.byteStride,C);break;default:throw Error("Invalid filter.")}if(X.min=A.getMin([]),X.max=A.getMax([]),A.getNormalized())X.min=X.min.map((F)=>ry(F,A.getComponentType())),X.max=X.max.map((F)=>ry(F,A.getComponentType()));if(X.normalized)X.min=X.min.map((F)=>WJA(F,X.componentType)),X.max=X.max.map((F)=>WJA(F,X.componentType))}else if(X.byteStride%4)X.array=XuQ(X.array,A.getElementSize()),X.byteStride=X.array.byteLength/A.getCount();return X}function CuQ(A){let Q=A.getComponentType(),B=A.getArray(),Y=new Float32Array(B.length);for(let J=0;J{return Y instanceof D0&&Y.getMode()===D0.Mode.TRIANGLES})?b4.TRIANGLES:b4.INDICES;return b4.ATTRIBUTES}function WuQ(A,Q){let B=Q.getGraph().listParentEdges(A).filter((Y)=>!(Y.getParent()instanceof g4));for(let Y of B){let J=Y.getName(),C=Y.getAttributes().key||"",X=Y.getParent().propertyType===YA.PRIMITIVE_TARGET;if(J==="indices")return{filter:b0.NONE};if(J==="attributes"){if(C==="POSITION")return{filter:b0.NONE};if(C==="TEXCOORD_0")return{filter:b0.NONE};if(C.startsWith("JOINTS_"))return{filter:b0.NONE};if(C.startsWith("WEIGHTS_"))return{filter:b0.NONE};if(C==="NORMAL"||C==="TANGENT")return X?{filter:b0.NONE}:{filter:b0.OCTAHEDRAL,bits:8}}if(J==="output"){let G=qJA(A);if(G==="rotation")return{filter:b0.QUATERNION,bits:16};if(G==="translation")return{filter:b0.EXPONENTIAL,bits:12};if(G==="scale")return{filter:b0.EXPONENTIAL,bits:12};return{filter:b0.NONE}}if(J==="input")return{filter:b0.NONE};if(J==="inverseBindMatrices")return{filter:b0.NONE}}return{filter:b0.NONE}}function qJA(A){for(let Q of A.listParents()){if(!(Q instanceof oG))continue;for(let B of Q.listParents()){if(!(B instanceof a6))continue;return B.getTargetPath()}}return null}var ZJA={method:hI.QUANTIZE};class xI extends oB{constructor(...A){super(...A);this.extensionName=AJ,this.prereadTypes=[YA.BUFFER,YA.PRIMITIVE],this.prewriteTypes=[YA.BUFFER,YA.ACCESSOR],this.readDependencies=["meshopt.decoder"],this.writeDependencies=["meshopt.encoder"],this._decoder=null,this._decoderFallbackBufferMap=new Map,this._encoder=null,this._encoderOptions=ZJA,this._encoderFallbackBuffer=null,this._encoderBufferViews={},this._encoderBufferViewData={},this._encoderBufferViewAccessors={}}install(A,Q){if(A==="meshopt.decoder")this._decoder=Q;if(A==="meshopt.encoder")this._encoder=Q;return this}setEncoderOptions(A){return this._encoderOptions=$X({},ZJA,A),this}preread(A,Q){if(!this._decoder){if(!this.isRequired())return this;throw Error(`[${AJ}] Please install extension dependency, "meshopt.decoder".`)}if(!this._decoder.supported){if(!this.isRequired())return this;throw Error(`[${AJ}]: Missing WASM support.`)}if(Q===YA.BUFFER)this._prereadBuffers(A);else if(Q===YA.PRIMITIVE)this._prereadPrimitives(A);return this}_prereadBuffers(A){let Q=A.jsonDoc;(Q.json.bufferViews||[]).forEach((Y,J)=>{if(!Y.extensions||!Y.extensions[AJ])return;let C=Y.extensions[AJ],X=C.byteOffset||0,G=C.byteLength||0,F=C.count,W=C.byteStride,Z=new Uint8Array(F*W),U=Q.json.buffers[C.buffer],$=U.uri?Q.resources[U.uri]:Q.resources[SW],E=jQ.toView($,X,G);this._decoder.decodeGltfBuffer(Z,F,W,E,C.mode,C.filter),A.bufferViews[J]=Z})}_prereadPrimitives(A){let Q=A.jsonDoc;(Q.json.bufferViews||[]).forEach((Y)=>{if(!Y.extensions||!Y.extensions[AJ])return;let J=Y.extensions[AJ],C=A.buffers[J.buffer],X=A.buffers[Y.buffer],G=Q.json.buffers[Y.buffer];if(QuQ(G))this._decoderFallbackBufferMap.set(X,C)})}read(A){if(!this.isRequired())return this;for(let[Q,B]of this._decoderFallbackBufferMap){for(let Y of Q.listParents())if(Y instanceof fA)Y.swap(Q,B);Q.dispose()}return this}prewrite(A,Q){if(Q===YA.ACCESSOR)this._prewriteAccessors(A);else if(Q===YA.BUFFER)this._prewriteBuffers(A);return this}_prewriteAccessors(A){let Q=A.jsonDoc.json,B=this._encoder,Y=this._encoderOptions,J=this.document.getGraph(),C=this.document.createBuffer(),X=this.document.getRoot().listBuffers().indexOf(C),G=1,F=new Map,W=(Z)=>{for(let U of J.listParents(Z)){if(U.propertyType===YA.ROOT)continue;let $=F.get(Z);if($===void 0)F.set(Z,$=G++);return $}return-1};this._encoderFallbackBuffer=C,this._encoderBufferViews={},this._encoderBufferViewData={},this._encoderBufferViewAccessors={};for(let Z of this.document.getRoot().listAccessors()){if(qJA(Z)==="weights")continue;if(Z.getSparse())continue;let U=A.getAccessorUsage(Z),$=A.accessorUsageGroupedByParent.has(U)?W(Z):null,E=FuQ(Z,U),K=Y.method===hI.FILTER?WuQ(Z,this.document):{filter:b0.NONE},I=JuQ(Z,B,E,K),{array:V,byteStride:H}=I,D=Z.getBuffer();if(!D)throw Error(`${AJ}: Missing buffer for accessor.`);let L=this.document.getRoot().listBuffers().indexOf(D),z=[U,$,E,K.filter,H,L].join(":"),M=this._encoderBufferViews[z],N=this._encoderBufferViewData[z],q=this._encoderBufferViewAccessors[z];if(!M||!N)q=this._encoderBufferViewAccessors[z]=[],N=this._encoderBufferViewData[z]=[],M=this._encoderBufferViews[z]={buffer:X,target:e8.USAGE_TO_TARGET[U],byteOffset:0,byteLength:0,byteStride:U===e8.BufferViewUsage.ARRAY_BUFFER?H:void 0,extensions:{[AJ]:{buffer:L,byteOffset:0,byteLength:0,mode:E,filter:K.filter!==b0.NONE?K.filter:void 0,byteStride:H,count:0}}};let w=A.createAccessorDef(Z);if(w.componentType=I.componentType,w.normalized=I.normalized,w.byteOffset=M.byteLength,w.min&&I.min)w.min=I.min;if(w.max&&I.max)w.max=I.max;A.accessorIndexMap.set(Z,Q.accessors.length),Q.accessors.push(w),q.push(w),N.push(new Uint8Array(V.buffer,V.byteOffset,V.byteLength)),M.byteLength+=V.byteLength,M.extensions.EXT_meshopt_compression.count+=Z.getCount()}}_prewriteBuffers(A){let Q=this._encoder;for(let B in this._encoderBufferViews){let Y=this._encoderBufferViews[B],J=this._encoderBufferViewData[B],C=this.document.getRoot().listBuffers()[Y.extensions[AJ].buffer],X=A.otherBufferViews.get(C)||[],{count:G,byteStride:F,mode:W}=Y.extensions[AJ],Z=jQ.concat(J),U=Q.encodeGltfBuffer(Z,G,F,W),$=jQ.pad(U);Y.extensions[AJ].byteLength=U.byteLength,J.length=0,J.push($),X.push($),A.otherBufferViews.set(C,X)}}write(A){let Q=0;for(let C in this._encoderBufferViews){let X=this._encoderBufferViews[C],G=this._encoderBufferViewData[C][0],F=A.otherBufferViewsIndexMap.get(G),W=this._encoderBufferViewAccessors[C];for(let E of W)E.bufferView=F;let Z=A.jsonDoc.json.bufferViews[F],U=Z.byteOffset||0;Object.assign(Z,X),Z.byteOffset=Q;let $=Z.extensions[AJ];$.byteOffset=U,Q+=jQ.padNumber(X.byteLength)}let B=this._encoderFallbackBuffer,Y=A.bufferIndexMap.get(B),J=A.jsonDoc.json.buffers[Y];return J.byteLength=Q,J.extensions={[AJ]:{fallback:!0}},B.dispose(),this}}xI.EXTENSION_NAME=AJ;xI.EncoderMethod=hI;class MJA{match(A){return A.length>=12&&jQ.decodeText(A.slice(4,12))==="ftypavif"}getSize(A){if(!this.match(A))return null;let Q=new DataView(A.buffer,A.byteOffset,A.byteLength),B=$JA(Q,0);if(!B)return null;let Y=B.end;while(B=$JA(Q,Y))if(B.type==="meta")Y=B.start+4;else if(B.type==="iprp"||B.type==="ipco")Y=B.start;else if(B.type==="ispe")return[Q.getUint32(B.start+4),Q.getUint32(B.start+8)];else if(B.type==="mdat")break;else Y=B.end;return null}getChannels(A){return 4}}class h2 extends oB{constructor(...A){super(...A);this.extensionName=vI,this.prereadTypes=[YA.TEXTURE]}static register(){B8.registerFormat("image/avif",new MJA)}preread(A){return(A.jsonDoc.json.textures||[]).forEach((B)=>{if(B.extensions&&B.extensions[vI])B.source=B.extensions[vI].source}),this}read(A){return this}write(A){let Q=A.jsonDoc;return this.document.getRoot().listTextures().forEach((B)=>{if(B.getMimeType()==="image/avif"){let Y=A.imageIndexMap.get(B);(Q.json.textures||[]).forEach((C)=>{if(C.source===Y)C.extensions=C.extensions||{},C.extensions[vI]={source:C.source},delete C.source})}}),this}}h2.EXTENSION_NAME=vI;function $JA(A,Q){if(A.byteLength<4+Q)return null;let B=A.getUint32(Q);if(A.byteLength=12&&A[8]===87&&A[9]===69&&A[10]===66&&A[11]===80}getSize(A){let Q=jQ.decodeText(A.slice(0,4)),B=jQ.decodeText(A.slice(8,12));if(Q!=="RIFF"||B!=="WEBP")return null;let Y=new DataView(A.buffer,A.byteOffset),J=12;while(J>6);return[U,$]}J+=8+X+X%2}return null}getChannels(A){return 4}}class g2 extends oB{constructor(...A){super(...A);this.extensionName=_I,this.prereadTypes=[YA.TEXTURE]}static register(){B8.registerFormat("image/webp",new zJA)}preread(A){return(A.jsonDoc.json.textures||[]).forEach((B)=>{if(B.extensions&&B.extensions[_I])B.source=B.extensions[_I].source}),this}read(A){return this}write(A){let Q=A.jsonDoc;return this.document.getRoot().listTextures().forEach((B)=>{if(B.getMimeType()==="image/webp"){let Y=A.imageIndexMap.get(B);(Q.json.textures||[]).forEach((C)=>{if(C.source===Y)C.extensions=C.extensions||{},C.extensions[_I]={source:C.source},delete C.source})}}),this}}g2.EXTENSION_NAME=_I;var wY,RJA,wJA;function ZuQ(A,Q){let B=new wY.DecoderBuffer;try{if(B.Init(Q,Q.length),A.GetEncodedGeometryType(B)!==wY.TRIANGULAR_MESH)throw Error(`[${O0}] Unknown geometry type.`);let J=new wY.Mesh;if(!A.DecodeBufferToMesh(B,J).ok()||J.ptr===0)throw Error(`[${O0}] Decoding failure.`);return J}finally{wY.destroy(B)}}function $uQ(A,Q){let Y=Q.num_faces()*3,J,C;if(Q.num_points()<=65534){let X=Y*Uint16Array.BYTES_PER_ELEMENT;J=wY._malloc(X),A.GetTrianglesUInt16Array(Q,X,J),C=new Uint16Array(wY.HEAPU16.buffer,J,Y).slice()}else{let X=Y*Uint32Array.BYTES_PER_ELEMENT;J=wY._malloc(X),A.GetTrianglesUInt32Array(Q,X,J),C=new Uint32Array(wY.HEAPU32.buffer,J,Y).slice()}return wY._free(J),C}function UuQ(A,Q,B,Y){let J=wJA[Y.componentType],C=RJA[Y.componentType],X=B.num_components(),F=Q.num_points()*X,W=F*C.BYTES_PER_ELEMENT,Z=wY._malloc(W);A.GetAttributeDataArrayForAllPoints(Q,B,J,W,Z);let U=new C(wY.HEAPF32.buffer,Z,F).slice();return wY._free(Z),U}function EuQ(A){wY=A,RJA={[fA.ComponentType.FLOAT]:Float32Array,[fA.ComponentType.UNSIGNED_INT]:Uint32Array,[fA.ComponentType.UNSIGNED_SHORT]:Uint16Array,[fA.ComponentType.UNSIGNED_BYTE]:Uint8Array,[fA.ComponentType.SHORT]:Int16Array,[fA.ComponentType.BYTE]:Int8Array},wJA={[fA.ComponentType.FLOAT]:wY.DT_FLOAT32,[fA.ComponentType.UNSIGNED_INT]:wY.DT_UINT32,[fA.ComponentType.UNSIGNED_SHORT]:wY.DT_UINT16,[fA.ComponentType.UNSIGNED_BYTE]:wY.DT_UINT8,[fA.ComponentType.SHORT]:wY.DT_INT16,[fA.ComponentType.BYTE]:wY.DT_INT8}}var A5,gI;(function(A){A[A.EDGEBREAKER=1]="EDGEBREAKER",A[A.SEQUENTIAL=0]="SEQUENTIAL"})(gI||(gI={}));var Y5;(function(A){A.POSITION="POSITION",A.NORMAL="NORMAL",A.COLOR="COLOR",A.TEX_COORD="TEX_COORD",A.GENERIC="GENERIC"})(Y5||(Y5={}));var jJA={[Y5.POSITION]:14,[Y5.NORMAL]:10,[Y5.COLOR]:8,[Y5.TEX_COORD]:12,[Y5.GENERIC]:12},UJA={decodeSpeed:5,encodeSpeed:5,method:gI.EDGEBREAKER,quantizationBits:jJA,quantizationVolume:"mesh"};function KuQ(A){A5=A}function VuQ(A,Q=UJA){let B=$X({},UJA,Q);B.quantizationBits=$X({},jJA,Q.quantizationBits);let Y=new A5.MeshBuilder,J=new A5.Mesh,C=new A5.ExpertEncoder(J),X={},G=new A5.DracoInt8Array,F=A.listTargets().length>0,W=!1;for(let I of A.listSemantics()){let V=A.getAttribute(I);if(V.getSparse()){W=!0;continue}let H=IuQ(I),D=HuQ(Y,V.getComponentType(),J,A5[H],V.getCount(),V.getElementSize(),V.getArray());if(D===-1)throw Error(`Error compressing "${I}" attribute.`);if(X[I]=D,B.quantizationVolume==="mesh"||I!=="POSITION")C.SetAttributeQuantization(D,B.quantizationBits[H]);else if(typeof B.quantizationVolume==="object"){let{quantizationVolume:L}=B,z=Math.max(L.max[0]-L.min[0],L.max[1]-L.min[1],L.max[2]-L.min[2]);C.SetAttributeExplicitQuantization(D,B.quantizationBits[H],V.getElementSize(),L.min,z)}else throw Error("Invalid quantization volume state.")}let Z=A.getIndices();if(!Z)throw new _2("Primitive must have indices.");if(Y.AddFacesToMesh(J,Z.getCount()/3,Z.getArray()),C.SetSpeedOptions(B.encodeSpeed,B.decodeSpeed),C.SetTrackEncodedProperties(!0),B.method===gI.SEQUENTIAL||F||W)C.SetEncodingMethod(A5.MESH_SEQUENTIAL_ENCODING);else C.SetEncodingMethod(A5.MESH_EDGEBREAKER_ENCODING);let U=C.EncodeToDracoBuffer(!(F||W),G);if(U<=0)throw new _2("Error applying Draco compression.");let $=new Uint8Array(U);for(let I=0;I65534&&fA.getComponentSize(U.componentType)<=2)U.componentType=fA.ComponentType.UNSIGNED_INT;else if(Z.numVertices>254&&fA.getComponentSize(U.componentType)<=1)U.componentType=fA.ComponentType.UNSIGNED_SHORT;for(let E of X.listSemantics()){let K=X.getAttribute(E);if(Z.attributeIDs[E]===void 0)continue;let I=A.createAccessorDef(K);I.count=Z.numVertices,A.accessorIndexMap.set(K,W.length),W.push(I)}let $=X.getAttribute("POSITION").getBuffer()||this.document.getRoot().listBuffers()[0];if(!A.otherBufferViews.has($))A.otherBufferViews.set($,[]);A.otherBufferViews.get($).push(Z.data)}return B.debug(`[${O0}] Compressed ${Y.size} primitives.`),A.extensionData[O0]={primitiveHashMap:Y,primitiveEncodingMap:J},this}write(A){let Q=A.extensionData[O0];for(let B of this.document.getRoot().listMeshes()){let Y=A.jsonDoc.json.meshes[A.meshIndexMap.get(B)];for(let J=0;JY!==O0),B.extensionsRequired=(B.extensionsRequired||[]).filter((Y)=>Y!==O0)}return this}}fI.EXTENSION_NAME=O0;fI.EncoderMethod=gI;function DuQ(A){let Q=A.getLogger(),B=new Set,Y=new Set,J=0,C=0;for(let U of A.getRoot().listMeshes())for(let $ of U.listPrimitives())if(!$.getIndices())Y.add($),J++;else if($.getMode()!==D0.Mode.TRIANGLES)Y.add($),C++;else B.add($);if(J>0)Q.warn(`[${O0}] Skipping Draco compression of ${J} non-indexed primitives.`);if(C>0)Q.warn(`[${O0}] Skipping Draco compression of ${C} non-TRIANGLES primitives.`);let X=A.getRoot().listAccessors(),G=new Map;for(let U=0;UE.propertyType));if($.size!==2||!$.has(YA.PRIMITIVE)||!$.has(YA.ROOT))throw Error(`[${O0}] Compressed accessors must only be used as indices or vertex attributes.`)}for(let U of Array.from(B)){let $=Z.get(U),E=U.getIndices();if(F.get(E)!==$||U.listAttributes().some((K)=>F.get(K)!==$))throw Error(`[${O0}] Draco primitives must share all, or no, accessors.`)}for(let U of Array.from(Y)){let $=U.getIndices();if(F.has($)||U.listAttributes().some((E)=>F.has(E)))throw Error(`[${O0}] Accessor cannot be shared by compressed and uncompressed primitives.`)}return Z}function EJA(A,Q){let B=[],Y=A.getIndices();B.push(Q.get(Y));for(let J of A.listAttributes())B.push(Q.get(J));return B.sort().join("|")}class m4 extends aB{init(){this.extensionName=Q5,this.propertyType="Light",this.parentTypes=[YA.NODE]}getDefaults(){return Object.assign(super.getDefaults(),{color:[1,1,1],intensity:1,type:m4.Type.POINT,range:null,innerConeAngle:0,outerConeAngle:Math.PI/4})}getColor(){return this.get("color")}setColor(A){return this.set("color",A)}getIntensity(){return this.get("intensity")}setIntensity(A){return this.set("intensity",A)}getType(){return this.get("type")}setType(A){return this.set("type",A)}getRange(){return this.get("range")}setRange(A){return this.set("range",A)}getInnerConeAngle(){return this.get("innerConeAngle")}setInnerConeAngle(A){return this.set("innerConeAngle",A)}getOuterConeAngle(){return this.get("outerConeAngle")}setOuterConeAngle(A){return this.set("outerConeAngle",A)}}m4.EXTENSION_NAME=Q5;m4.Type={POINT:"point",SPOT:"spot",DIRECTIONAL:"directional"};class oy extends oB{constructor(...A){super(...A);this.extensionName=Q5}createLight(A=""){return new m4(this.document.getGraph(),A)}read(A){let Q=A.jsonDoc;if(!Q.json.extensions||!Q.json.extensions[Q5])return this;let J=(Q.json.extensions[Q5].lights||[]).map((C)=>{var X,G;let F=this.createLight().setName(C.name||"").setType(C.type);if(C.color!==void 0)F.setColor(C.color);if(C.intensity!==void 0)F.setIntensity(C.intensity);if(C.range!==void 0)F.setRange(C.range);if(((X=C.spot)==null?void 0:X.innerConeAngle)!==void 0)F.setInnerConeAngle(C.spot.innerConeAngle);if(((G=C.spot)==null?void 0:G.outerConeAngle)!==void 0)F.setOuterConeAngle(C.spot.outerConeAngle);return F});return Q.json.nodes.forEach((C,X)=>{if(!C.extensions||!C.extensions[Q5])return;let G=C.extensions[Q5];A.nodes[X].setExtension(Q5,J[G.light])}),this}write(A){let Q=A.jsonDoc;if(this.properties.size===0)return this;let B=[],Y=new Map;for(let J of this.properties){let C=J,X={type:C.getType()};if(!kQ.eq(C.getColor(),[1,1,1]))X.color=C.getColor();if(C.getIntensity()!==1)X.intensity=C.getIntensity();if(C.getRange()!=null)X.range=C.getRange();if(C.getName())X.name=C.getName();if(C.getType()===m4.Type.SPOT)X.spot={innerConeAngle:C.getInnerConeAngle(),outerConeAngle:C.getOuterConeAngle()};B.push(X),Y.set(C,B.length-1)}return this.document.getRoot().listNodes().forEach((J)=>{let C=J.getExtension(Q5);if(C){let X=A.nodeIndexMap.get(J),G=Q.json.nodes[X];G.extensions=G.extensions||{},G.extensions[Q5]={light:Y.get(C)}}}),Q.json.extensions=Q.json.extensions||{},Q.json.extensions[Q5]={lights:B},this}}oy.EXTENSION_NAME=Q5;var{R:NuQ,G:LuQ,B:quQ}=w9;class ty extends aB{init(){this.extensionName=t6,this.propertyType="Anisotropy",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{anisotropyStrength:0,anisotropyRotation:0,anisotropyTexture:null,anisotropyTextureInfo:new hB(this.graph,"anisotropyTextureInfo")})}getAnisotropyStrength(){return this.get("anisotropyStrength")}setAnisotropyStrength(A){return this.set("anisotropyStrength",A)}getAnisotropyRotation(){return this.get("anisotropyRotation")}setAnisotropyRotation(A){return this.set("anisotropyRotation",A)}getAnisotropyTexture(){return this.getRef("anisotropyTexture")}getAnisotropyTextureInfo(){return this.getRef("anisotropyTexture")?this.getRef("anisotropyTextureInfo"):null}setAnisotropyTexture(A){return this.setRef("anisotropyTexture",A,{channels:NuQ|LuQ|quQ})}}ty.EXTENSION_NAME=t6;class ey extends oB{constructor(...A){super(...A);this.extensionName=t6,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createAnisotropy(){return new ty(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[t6]){let X=this.createAnisotropy();A.materials[C].setExtension(t6,X);let G=J.extensions[t6];if(G.anisotropyStrength!==void 0)X.setAnisotropyStrength(G.anisotropyStrength);if(G.anisotropyRotation!==void 0)X.setAnisotropyRotation(G.anisotropyRotation);if(G.anisotropyTexture!==void 0){let F=G.anisotropyTexture,W=A.textures[Y[F.index].source];X.setAnisotropyTexture(W),A.setTextureInfo(X.getAnisotropyTextureInfo(),F)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(t6);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[t6]={};if(Y.getAnisotropyStrength()>0)X.anisotropyStrength=Y.getAnisotropyStrength();if(Y.getAnisotropyRotation()!==0)X.anisotropyRotation=Y.getAnisotropyRotation();if(Y.getAnisotropyTexture()){let G=Y.getAnisotropyTexture(),F=Y.getAnisotropyTextureInfo();X.anisotropyTexture=A.createTextureInfoDef(G,F)}}}),this}}ey.EXTENSION_NAME=t6;var{R:KJA,G:VJA,B:MuQ}=w9;class Ah extends aB{init(){this.extensionName=e6,this.propertyType="Clearcoat",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{clearcoatFactor:0,clearcoatTexture:null,clearcoatTextureInfo:new hB(this.graph,"clearcoatTextureInfo"),clearcoatRoughnessFactor:0,clearcoatRoughnessTexture:null,clearcoatRoughnessTextureInfo:new hB(this.graph,"clearcoatRoughnessTextureInfo"),clearcoatNormalScale:1,clearcoatNormalTexture:null,clearcoatNormalTextureInfo:new hB(this.graph,"clearcoatNormalTextureInfo")})}getClearcoatFactor(){return this.get("clearcoatFactor")}setClearcoatFactor(A){return this.set("clearcoatFactor",A)}getClearcoatTexture(){return this.getRef("clearcoatTexture")}getClearcoatTextureInfo(){return this.getRef("clearcoatTexture")?this.getRef("clearcoatTextureInfo"):null}setClearcoatTexture(A){return this.setRef("clearcoatTexture",A,{channels:KJA})}getClearcoatRoughnessFactor(){return this.get("clearcoatRoughnessFactor")}setClearcoatRoughnessFactor(A){return this.set("clearcoatRoughnessFactor",A)}getClearcoatRoughnessTexture(){return this.getRef("clearcoatRoughnessTexture")}getClearcoatRoughnessTextureInfo(){return this.getRef("clearcoatRoughnessTexture")?this.getRef("clearcoatRoughnessTextureInfo"):null}setClearcoatRoughnessTexture(A){return this.setRef("clearcoatRoughnessTexture",A,{channels:VJA})}getClearcoatNormalScale(){return this.get("clearcoatNormalScale")}setClearcoatNormalScale(A){return this.set("clearcoatNormalScale",A)}getClearcoatNormalTexture(){return this.getRef("clearcoatNormalTexture")}getClearcoatNormalTextureInfo(){return this.getRef("clearcoatNormalTexture")?this.getRef("clearcoatNormalTextureInfo"):null}setClearcoatNormalTexture(A){return this.setRef("clearcoatNormalTexture",A,{channels:KJA|VJA|MuQ})}}Ah.EXTENSION_NAME=e6;class Qh extends oB{constructor(...A){super(...A);this.extensionName=e6,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createClearcoat(){return new Ah(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[e6]){let X=this.createClearcoat();A.materials[C].setExtension(e6,X);let G=J.extensions[e6];if(G.clearcoatFactor!==void 0)X.setClearcoatFactor(G.clearcoatFactor);if(G.clearcoatRoughnessFactor!==void 0)X.setClearcoatRoughnessFactor(G.clearcoatRoughnessFactor);if(G.clearcoatTexture!==void 0){let F=G.clearcoatTexture,W=A.textures[Y[F.index].source];X.setClearcoatTexture(W),A.setTextureInfo(X.getClearcoatTextureInfo(),F)}if(G.clearcoatRoughnessTexture!==void 0){let F=G.clearcoatRoughnessTexture,W=A.textures[Y[F.index].source];X.setClearcoatRoughnessTexture(W),A.setTextureInfo(X.getClearcoatRoughnessTextureInfo(),F)}if(G.clearcoatNormalTexture!==void 0){let F=G.clearcoatNormalTexture,W=A.textures[Y[F.index].source];if(X.setClearcoatNormalTexture(W),A.setTextureInfo(X.getClearcoatNormalTextureInfo(),F),F.scale!==void 0)X.setClearcoatNormalScale(F.scale)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(e6);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[e6]={clearcoatFactor:Y.getClearcoatFactor(),clearcoatRoughnessFactor:Y.getClearcoatRoughnessFactor()};if(Y.getClearcoatTexture()){let G=Y.getClearcoatTexture(),F=Y.getClearcoatTextureInfo();X.clearcoatTexture=A.createTextureInfoDef(G,F)}if(Y.getClearcoatRoughnessTexture()){let G=Y.getClearcoatRoughnessTexture(),F=Y.getClearcoatRoughnessTextureInfo();X.clearcoatRoughnessTexture=A.createTextureInfoDef(G,F)}if(Y.getClearcoatNormalTexture()){let G=Y.getClearcoatNormalTexture(),F=Y.getClearcoatNormalTextureInfo();if(X.clearcoatNormalTexture=A.createTextureInfoDef(G,F),Y.getClearcoatNormalScale()!==1)X.clearcoatNormalTexture.scale=Y.getClearcoatNormalScale()}}}),this}}Qh.EXTENSION_NAME=e6;var{R:zuQ,G:RuQ,B:wuQ,A:juQ}=w9;class Bh extends aB{init(){this.extensionName=AX,this.propertyType="DiffuseTransmission",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{diffuseTransmissionFactor:0,diffuseTransmissionTexture:null,diffuseTransmissionTextureInfo:new hB(this.graph,"diffuseTransmissionTextureInfo"),diffuseTransmissionColorFactor:[1,1,1],diffuseTransmissionColorTexture:null,diffuseTransmissionColorTextureInfo:new hB(this.graph,"diffuseTransmissionColorTextureInfo")})}getDiffuseTransmissionFactor(){return this.get("diffuseTransmissionFactor")}setDiffuseTransmissionFactor(A){return this.set("diffuseTransmissionFactor",A)}getDiffuseTransmissionTexture(){return this.getRef("diffuseTransmissionTexture")}getDiffuseTransmissionTextureInfo(){return this.getRef("diffuseTransmissionTexture")?this.getRef("diffuseTransmissionTextureInfo"):null}setDiffuseTransmissionTexture(A){return this.setRef("diffuseTransmissionTexture",A,{channels:juQ})}getDiffuseTransmissionColorFactor(){return this.get("diffuseTransmissionColorFactor")}setDiffuseTransmissionColorFactor(A){return this.set("diffuseTransmissionColorFactor",A)}getDiffuseTransmissionColorTexture(){return this.getRef("diffuseTransmissionColorTexture")}getDiffuseTransmissionColorTextureInfo(){return this.getRef("diffuseTransmissionColorTexture")?this.getRef("diffuseTransmissionColorTextureInfo"):null}setDiffuseTransmissionColorTexture(A){return this.setRef("diffuseTransmissionColorTexture",A,{channels:zuQ|RuQ|wuQ})}}Bh.EXTENSION_NAME=AX;class Yh extends oB{constructor(...A){super(...A);this.extensionName=AX}createDiffuseTransmission(){return new Bh(this.document.getGraph())}read(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[AX]){let X=this.createDiffuseTransmission();A.materials[C].setExtension(AX,X);let G=J.extensions[AX];if(G.diffuseTransmissionFactor!==void 0)X.setDiffuseTransmissionFactor(G.diffuseTransmissionFactor);if(G.diffuseTransmissionColorFactor!==void 0)X.setDiffuseTransmissionColorFactor(G.diffuseTransmissionColorFactor);if(G.diffuseTransmissionTexture!==void 0){let F=G.diffuseTransmissionTexture,W=A.textures[Y[F.index].source];X.setDiffuseTransmissionTexture(W),A.setTextureInfo(X.getDiffuseTransmissionTextureInfo(),F)}if(G.diffuseTransmissionColorTexture!==void 0){let F=G.diffuseTransmissionColorTexture,W=A.textures[Y[F.index].source];X.setDiffuseTransmissionColorTexture(W),A.setTextureInfo(X.getDiffuseTransmissionColorTextureInfo(),F)}}}),this}write(A){let Q=A.jsonDoc;for(let B of this.document.getRoot().listMaterials()){let Y=B.getExtension(AX);if(!Y)continue;let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[AX]={diffuseTransmissionFactor:Y.getDiffuseTransmissionFactor(),diffuseTransmissionColorFactor:Y.getDiffuseTransmissionColorFactor()};if(Y.getDiffuseTransmissionTexture()){let G=Y.getDiffuseTransmissionTexture(),F=Y.getDiffuseTransmissionTextureInfo();X.diffuseTransmissionTexture=A.createTextureInfoDef(G,F)}if(Y.getDiffuseTransmissionColorTexture()){let G=Y.getDiffuseTransmissionColorTexture(),F=Y.getDiffuseTransmissionColorTextureInfo();X.diffuseTransmissionColorTexture=A.createTextureInfoDef(G,F)}}return this}}Yh.EXTENSION_NAME=AX;class Jh extends aB{init(){this.extensionName=QX,this.propertyType="Dispersion",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{dispersion:0})}getDispersion(){return this.get("dispersion")}setDispersion(A){return this.set("dispersion",A)}}Jh.EXTENSION_NAME=QX;class Ch extends oB{constructor(...A){super(...A);this.extensionName=QX,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createDispersion(){return new Jh(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){return(A.jsonDoc.json.materials||[]).forEach((Y,J)=>{if(Y.extensions&&Y.extensions[QX]){let C=this.createDispersion();A.materials[J].setExtension(QX,C);let X=Y.extensions[QX];if(X.dispersion!==void 0)C.setDispersion(X.dispersion)}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(QX);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{},C.extensions[QX]={dispersion:Y.getDispersion()}}}),this}}Ch.EXTENSION_NAME=QX;class Xh extends aB{init(){this.extensionName=BX,this.propertyType="EmissiveStrength",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{emissiveStrength:1})}getEmissiveStrength(){return this.get("emissiveStrength")}setEmissiveStrength(A){return this.set("emissiveStrength",A)}}Xh.EXTENSION_NAME=BX;class bI extends oB{constructor(...A){super(...A);this.extensionName=BX,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createEmissiveStrength(){return new Xh(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){return(A.jsonDoc.json.materials||[]).forEach((Y,J)=>{if(Y.extensions&&Y.extensions[BX]){let C=this.createEmissiveStrength();A.materials[J].setExtension(BX,C);let X=Y.extensions[BX];if(X.emissiveStrength!==void 0)C.setEmissiveStrength(X.emissiveStrength)}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(BX);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{},C.extensions[BX]={emissiveStrength:Y.getEmissiveStrength()}}}),this}}bI.EXTENSION_NAME=BX;class Gh extends aB{init(){this.extensionName=YX,this.propertyType="IOR",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{ior:1.5})}getIOR(){return this.get("ior")}setIOR(A){return this.set("ior",A)}}Gh.EXTENSION_NAME=YX;class x2 extends oB{constructor(...A){super(...A);this.extensionName=YX,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createIOR(){return new Gh(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){return(A.jsonDoc.json.materials||[]).forEach((Y,J)=>{if(Y.extensions&&Y.extensions[YX]){let C=this.createIOR();A.materials[J].setExtension(YX,C);let X=Y.extensions[YX];if(X.ior!==void 0)C.setIOR(X.ior)}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(YX);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{},C.extensions[YX]={ior:Y.getIOR()}}}),this}}x2.EXTENSION_NAME=YX;var{R:OuQ,G:PuQ}=w9;class Fh extends aB{init(){this.extensionName=JX,this.propertyType="Iridescence",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{iridescenceFactor:0,iridescenceTexture:null,iridescenceTextureInfo:new hB(this.graph,"iridescenceTextureInfo"),iridescenceIOR:1.3,iridescenceThicknessMinimum:100,iridescenceThicknessMaximum:400,iridescenceThicknessTexture:null,iridescenceThicknessTextureInfo:new hB(this.graph,"iridescenceThicknessTextureInfo")})}getIridescenceFactor(){return this.get("iridescenceFactor")}setIridescenceFactor(A){return this.set("iridescenceFactor",A)}getIridescenceTexture(){return this.getRef("iridescenceTexture")}getIridescenceTextureInfo(){return this.getRef("iridescenceTexture")?this.getRef("iridescenceTextureInfo"):null}setIridescenceTexture(A){return this.setRef("iridescenceTexture",A,{channels:OuQ})}getIridescenceIOR(){return this.get("iridescenceIOR")}setIridescenceIOR(A){return this.set("iridescenceIOR",A)}getIridescenceThicknessMinimum(){return this.get("iridescenceThicknessMinimum")}setIridescenceThicknessMinimum(A){return this.set("iridescenceThicknessMinimum",A)}getIridescenceThicknessMaximum(){return this.get("iridescenceThicknessMaximum")}setIridescenceThicknessMaximum(A){return this.set("iridescenceThicknessMaximum",A)}getIridescenceThicknessTexture(){return this.getRef("iridescenceThicknessTexture")}getIridescenceThicknessTextureInfo(){return this.getRef("iridescenceThicknessTexture")?this.getRef("iridescenceThicknessTextureInfo"):null}setIridescenceThicknessTexture(A){return this.setRef("iridescenceThicknessTexture",A,{channels:PuQ})}}Fh.EXTENSION_NAME=JX;class Wh extends oB{constructor(...A){super(...A);this.extensionName=JX,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createIridescence(){return new Fh(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[JX]){let X=this.createIridescence();A.materials[C].setExtension(JX,X);let G=J.extensions[JX];if(G.iridescenceFactor!==void 0)X.setIridescenceFactor(G.iridescenceFactor);if(G.iridescenceIor!==void 0)X.setIridescenceIOR(G.iridescenceIor);if(G.iridescenceThicknessMinimum!==void 0)X.setIridescenceThicknessMinimum(G.iridescenceThicknessMinimum);if(G.iridescenceThicknessMaximum!==void 0)X.setIridescenceThicknessMaximum(G.iridescenceThicknessMaximum);if(G.iridescenceTexture!==void 0){let F=G.iridescenceTexture,W=A.textures[Y[F.index].source];X.setIridescenceTexture(W),A.setTextureInfo(X.getIridescenceTextureInfo(),F)}if(G.iridescenceThicknessTexture!==void 0){let F=G.iridescenceThicknessTexture,W=A.textures[Y[F.index].source];X.setIridescenceThicknessTexture(W),A.setTextureInfo(X.getIridescenceThicknessTextureInfo(),F)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(JX);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[JX]={};if(Y.getIridescenceFactor()>0)X.iridescenceFactor=Y.getIridescenceFactor();if(Y.getIridescenceIOR()!==1.3)X.iridescenceIor=Y.getIridescenceIOR();if(Y.getIridescenceThicknessMinimum()!==100)X.iridescenceThicknessMinimum=Y.getIridescenceThicknessMinimum();if(Y.getIridescenceThicknessMaximum()!==400)X.iridescenceThicknessMaximum=Y.getIridescenceThicknessMaximum();if(Y.getIridescenceTexture()){let G=Y.getIridescenceTexture(),F=Y.getIridescenceTextureInfo();X.iridescenceTexture=A.createTextureInfoDef(G,F)}if(Y.getIridescenceThicknessTexture()){let G=Y.getIridescenceThicknessTexture(),F=Y.getIridescenceThicknessTextureInfo();X.iridescenceThicknessTexture=A.createTextureInfoDef(G,F)}}}),this}}Wh.EXTENSION_NAME=JX;var{R:IJA,G:HJA,B:DJA,A:NJA}=w9;class Zh extends aB{init(){this.extensionName=CX,this.propertyType="PBRSpecularGlossiness",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{diffuseFactor:[1,1,1,1],diffuseTexture:null,diffuseTextureInfo:new hB(this.graph,"diffuseTextureInfo"),specularFactor:[1,1,1],glossinessFactor:1,specularGlossinessTexture:null,specularGlossinessTextureInfo:new hB(this.graph,"specularGlossinessTextureInfo")})}getDiffuseFactor(){return this.get("diffuseFactor")}setDiffuseFactor(A){return this.set("diffuseFactor",A)}getDiffuseTexture(){return this.getRef("diffuseTexture")}getDiffuseTextureInfo(){return this.getRef("diffuseTexture")?this.getRef("diffuseTextureInfo"):null}setDiffuseTexture(A){return this.setRef("diffuseTexture",A,{channels:IJA|HJA|DJA|NJA,isColor:!0})}getSpecularFactor(){return this.get("specularFactor")}setSpecularFactor(A){return this.set("specularFactor",A)}getGlossinessFactor(){return this.get("glossinessFactor")}setGlossinessFactor(A){return this.set("glossinessFactor",A)}getSpecularGlossinessTexture(){return this.getRef("specularGlossinessTexture")}getSpecularGlossinessTextureInfo(){return this.getRef("specularGlossinessTexture")?this.getRef("specularGlossinessTextureInfo"):null}setSpecularGlossinessTexture(A){return this.setRef("specularGlossinessTexture",A,{channels:IJA|HJA|DJA|NJA})}}Zh.EXTENSION_NAME=CX;class f2 extends oB{constructor(...A){super(...A);this.extensionName=CX,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createPBRSpecularGlossiness(){return new Zh(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[CX]){let X=this.createPBRSpecularGlossiness();A.materials[C].setExtension(CX,X);let G=J.extensions[CX];if(G.diffuseFactor!==void 0)X.setDiffuseFactor(G.diffuseFactor);if(G.specularFactor!==void 0)X.setSpecularFactor(G.specularFactor);if(G.glossinessFactor!==void 0)X.setGlossinessFactor(G.glossinessFactor);if(G.diffuseTexture!==void 0){let F=G.diffuseTexture,W=A.textures[Y[F.index].source];X.setDiffuseTexture(W),A.setTextureInfo(X.getDiffuseTextureInfo(),F)}if(G.specularGlossinessTexture!==void 0){let F=G.specularGlossinessTexture,W=A.textures[Y[F.index].source];X.setSpecularGlossinessTexture(W),A.setTextureInfo(X.getSpecularGlossinessTextureInfo(),F)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(CX);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[CX]={diffuseFactor:Y.getDiffuseFactor(),specularFactor:Y.getSpecularFactor(),glossinessFactor:Y.getGlossinessFactor()};if(Y.getDiffuseTexture()){let G=Y.getDiffuseTexture(),F=Y.getDiffuseTextureInfo();X.diffuseTexture=A.createTextureInfoDef(G,F)}if(Y.getSpecularGlossinessTexture()){let G=Y.getSpecularGlossinessTexture(),F=Y.getSpecularGlossinessTextureInfo();X.specularGlossinessTexture=A.createTextureInfoDef(G,F)}}}),this}}f2.EXTENSION_NAME=CX;var{R:TuQ,G:SuQ,B:kuQ,A:_uQ}=w9;class $h extends aB{init(){this.extensionName=XX,this.propertyType="Sheen",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{sheenColorFactor:[0,0,0],sheenColorTexture:null,sheenColorTextureInfo:new hB(this.graph,"sheenColorTextureInfo"),sheenRoughnessFactor:0,sheenRoughnessTexture:null,sheenRoughnessTextureInfo:new hB(this.graph,"sheenRoughnessTextureInfo")})}getSheenColorFactor(){return this.get("sheenColorFactor")}setSheenColorFactor(A){return this.set("sheenColorFactor",A)}getSheenColorTexture(){return this.getRef("sheenColorTexture")}getSheenColorTextureInfo(){return this.getRef("sheenColorTexture")?this.getRef("sheenColorTextureInfo"):null}setSheenColorTexture(A){return this.setRef("sheenColorTexture",A,{channels:TuQ|SuQ|kuQ,isColor:!0})}getSheenRoughnessFactor(){return this.get("sheenRoughnessFactor")}setSheenRoughnessFactor(A){return this.set("sheenRoughnessFactor",A)}getSheenRoughnessTexture(){return this.getRef("sheenRoughnessTexture")}getSheenRoughnessTextureInfo(){return this.getRef("sheenRoughnessTexture")?this.getRef("sheenRoughnessTextureInfo"):null}setSheenRoughnessTexture(A){return this.setRef("sheenRoughnessTexture",A,{channels:_uQ})}}$h.EXTENSION_NAME=XX;class Uh extends oB{constructor(...A){super(...A);this.extensionName=XX,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createSheen(){return new $h(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[XX]){let X=this.createSheen();A.materials[C].setExtension(XX,X);let G=J.extensions[XX];if(G.sheenColorFactor!==void 0)X.setSheenColorFactor(G.sheenColorFactor);if(G.sheenRoughnessFactor!==void 0)X.setSheenRoughnessFactor(G.sheenRoughnessFactor);if(G.sheenColorTexture!==void 0){let F=G.sheenColorTexture,W=A.textures[Y[F.index].source];X.setSheenColorTexture(W),A.setTextureInfo(X.getSheenColorTextureInfo(),F)}if(G.sheenRoughnessTexture!==void 0){let F=G.sheenRoughnessTexture,W=A.textures[Y[F.index].source];X.setSheenRoughnessTexture(W),A.setTextureInfo(X.getSheenRoughnessTextureInfo(),F)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(XX);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[XX]={sheenColorFactor:Y.getSheenColorFactor(),sheenRoughnessFactor:Y.getSheenRoughnessFactor()};if(Y.getSheenColorTexture()){let G=Y.getSheenColorTexture(),F=Y.getSheenColorTextureInfo();X.sheenColorTexture=A.createTextureInfoDef(G,F)}if(Y.getSheenRoughnessTexture()){let G=Y.getSheenRoughnessTexture(),F=Y.getSheenRoughnessTextureInfo();X.sheenRoughnessTexture=A.createTextureInfoDef(G,F)}}}),this}}Uh.EXTENSION_NAME=XX;var{R:vuQ,G:yuQ,B:huQ,A:guQ}=w9;class Eh extends aB{init(){this.extensionName=GX,this.propertyType="Specular",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{specularFactor:1,specularTexture:null,specularTextureInfo:new hB(this.graph,"specularTextureInfo"),specularColorFactor:[1,1,1],specularColorTexture:null,specularColorTextureInfo:new hB(this.graph,"specularColorTextureInfo")})}getSpecularFactor(){return this.get("specularFactor")}setSpecularFactor(A){return this.set("specularFactor",A)}getSpecularColorFactor(){return this.get("specularColorFactor")}setSpecularColorFactor(A){return this.set("specularColorFactor",A)}getSpecularTexture(){return this.getRef("specularTexture")}getSpecularTextureInfo(){return this.getRef("specularTexture")?this.getRef("specularTextureInfo"):null}setSpecularTexture(A){return this.setRef("specularTexture",A,{channels:guQ})}getSpecularColorTexture(){return this.getRef("specularColorTexture")}getSpecularColorTextureInfo(){return this.getRef("specularColorTexture")?this.getRef("specularColorTextureInfo"):null}setSpecularColorTexture(A){return this.setRef("specularColorTexture",A,{channels:vuQ|yuQ|huQ,isColor:!0})}}Eh.EXTENSION_NAME=GX;class b2 extends oB{constructor(...A){super(...A);this.extensionName=GX,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createSpecular(){return new Eh(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[GX]){let X=this.createSpecular();A.materials[C].setExtension(GX,X);let G=J.extensions[GX];if(G.specularFactor!==void 0)X.setSpecularFactor(G.specularFactor);if(G.specularColorFactor!==void 0)X.setSpecularColorFactor(G.specularColorFactor);if(G.specularTexture!==void 0){let F=G.specularTexture,W=A.textures[Y[F.index].source];X.setSpecularTexture(W),A.setTextureInfo(X.getSpecularTextureInfo(),F)}if(G.specularColorTexture!==void 0){let F=G.specularColorTexture,W=A.textures[Y[F.index].source];X.setSpecularColorTexture(W),A.setTextureInfo(X.getSpecularColorTextureInfo(),F)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(GX);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[GX]={};if(Y.getSpecularFactor()!==1)X.specularFactor=Y.getSpecularFactor();if(!kQ.eq(Y.getSpecularColorFactor(),[1,1,1]))X.specularColorFactor=Y.getSpecularColorFactor();if(Y.getSpecularTexture()){let G=Y.getSpecularTexture(),F=Y.getSpecularTextureInfo();X.specularTexture=A.createTextureInfoDef(G,F)}if(Y.getSpecularColorTexture()){let G=Y.getSpecularColorTexture(),F=Y.getSpecularColorTextureInfo();X.specularColorTexture=A.createTextureInfoDef(G,F)}}}),this}}b2.EXTENSION_NAME=GX;var{R:xuQ}=w9;class Kh extends aB{init(){this.extensionName=FX,this.propertyType="Transmission",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{transmissionFactor:0,transmissionTexture:null,transmissionTextureInfo:new hB(this.graph,"transmissionTextureInfo")})}getTransmissionFactor(){return this.get("transmissionFactor")}setTransmissionFactor(A){return this.set("transmissionFactor",A)}getTransmissionTexture(){return this.getRef("transmissionTexture")}getTransmissionTextureInfo(){return this.getRef("transmissionTexture")?this.getRef("transmissionTextureInfo"):null}setTransmissionTexture(A){return this.setRef("transmissionTexture",A,{channels:xuQ})}}Kh.EXTENSION_NAME=FX;class Vh extends oB{constructor(...A){super(...A);this.extensionName=FX,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createTransmission(){return new Kh(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[FX]){let X=this.createTransmission();A.materials[C].setExtension(FX,X);let G=J.extensions[FX];if(G.transmissionFactor!==void 0)X.setTransmissionFactor(G.transmissionFactor);if(G.transmissionTexture!==void 0){let F=G.transmissionTexture,W=A.textures[Y[F.index].source];X.setTransmissionTexture(W),A.setTextureInfo(X.getTransmissionTextureInfo(),F)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(FX);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[FX]={transmissionFactor:Y.getTransmissionFactor()};if(Y.getTransmissionTexture()){let G=Y.getTransmissionTexture(),F=Y.getTransmissionTextureInfo();X.transmissionTexture=A.createTextureInfoDef(G,F)}}}),this}}Vh.EXTENSION_NAME=FX;class Ih extends aB{init(){this.extensionName=tG,this.propertyType="Unlit",this.parentTypes=[YA.MATERIAL]}}Ih.EXTENSION_NAME=tG;class m2 extends oB{constructor(...A){super(...A);this.extensionName=tG,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createUnlit(){return new Ih(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){return(A.jsonDoc.json.materials||[]).forEach((B,Y)=>{if(B.extensions&&B.extensions[tG])A.materials[Y].setExtension(tG,this.createUnlit())}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{if(B.getExtension(tG)){let Y=A.materialIndexMap.get(B),J=Q.json.materials[Y];J.extensions=J.extensions||{},J.extensions[tG]={}}}),this}}m2.EXTENSION_NAME=tG;class Hh extends aB{init(){this.extensionName=HJ,this.propertyType="Mapping",this.parentTypes=["MappingList"]}getDefaults(){return Object.assign(super.getDefaults(),{material:null,variants:new xB})}getMaterial(){return this.getRef("material")}setMaterial(A){return this.setRef("material",A)}addVariant(A){return this.addRef("variants",A)}removeVariant(A){return this.removeRef("variants",A)}listVariants(){return this.listRefs("variants")}}Hh.EXTENSION_NAME=HJ;class Dh extends aB{init(){this.extensionName=HJ,this.propertyType="MappingList",this.parentTypes=[YA.PRIMITIVE]}getDefaults(){return Object.assign(super.getDefaults(),{mappings:new xB})}addMapping(A){return this.addRef("mappings",A)}removeMapping(A){return this.removeRef("mappings",A)}listMappings(){return this.listRefs("mappings")}}Dh.EXTENSION_NAME=HJ;class v2 extends aB{init(){this.extensionName=HJ,this.propertyType="Variant",this.parentTypes=["MappingList"]}}v2.EXTENSION_NAME=HJ;class Nh extends oB{constructor(...A){super(...A);this.extensionName=HJ}createMappingList(){return new Dh(this.document.getGraph())}createVariant(A=""){return new v2(this.document.getGraph(),A)}createMapping(){return new Hh(this.document.getGraph())}listVariants(){return Array.from(this.properties).filter((A)=>A instanceof v2)}read(A){let Q=A.jsonDoc;if(!Q.json.extensions||!Q.json.extensions[HJ])return this;let J=(Q.json.extensions[HJ].variants||[]).map((X)=>this.createVariant().setName(X.name||""));return(Q.json.meshes||[]).forEach((X,G)=>{let F=A.meshes[G];(X.primitives||[]).forEach((Z,U)=>{if(!Z.extensions||!Z.extensions[HJ])return;let $=this.createMappingList(),E=Z.extensions[HJ];for(let K of E.mappings){let I=this.createMapping();if(K.material!==void 0)I.setMaterial(A.materials[K.material]);for(let V of K.variants||[])I.addVariant(J[V]);$.addMapping(I)}F.listPrimitives()[U].setExtension(HJ,$)})}),this}write(A){let Q=A.jsonDoc,B=this.listVariants();if(!B.length)return this;let Y=[],J=new Map;for(let C of B)J.set(C,Y.length),Y.push(A.createPropertyDef(C));for(let C of this.document.getRoot().listMeshes()){let X=A.meshIndexMap.get(C);C.listPrimitives().forEach((G,F)=>{let W=G.getExtension(HJ);if(!W)return;let Z=A.jsonDoc.json.meshes[X].primitives[F],U=W.listMappings().map(($)=>{let E=A.createPropertyDef($),K=$.getMaterial();if(K)E.material=A.materialIndexMap.get(K);return E.variants=$.listVariants().map((I)=>J.get(I)),E});Z.extensions=Z.extensions||{},Z.extensions[HJ]={mappings:U}})}return Q.json.extensions=Q.json.extensions||{},Q.json.extensions[HJ]={variants:Y},this}}Nh.EXTENSION_NAME=HJ;var{G:fuQ}=w9;class Lh extends aB{init(){this.extensionName=WX,this.propertyType="Volume",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{thicknessFactor:0,thicknessTexture:null,thicknessTextureInfo:new hB(this.graph,"thicknessTexture"),attenuationDistance:1/0,attenuationColor:[1,1,1]})}getThicknessFactor(){return this.get("thicknessFactor")}setThicknessFactor(A){return this.set("thicknessFactor",A)}getThicknessTexture(){return this.getRef("thicknessTexture")}getThicknessTextureInfo(){return this.getRef("thicknessTexture")?this.getRef("thicknessTextureInfo"):null}setThicknessTexture(A){return this.setRef("thicknessTexture",A,{channels:fuQ})}getAttenuationDistance(){return this.get("attenuationDistance")}setAttenuationDistance(A){return this.set("attenuationDistance",A)}getAttenuationColor(){return this.get("attenuationColor")}setAttenuationColor(A){return this.set("attenuationColor",A)}}Lh.EXTENSION_NAME=WX;class qh extends oB{constructor(...A){super(...A);this.extensionName=WX,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createVolume(){return new Lh(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[WX]){let X=this.createVolume();A.materials[C].setExtension(WX,X);let G=J.extensions[WX];if(G.thicknessFactor!==void 0)X.setThicknessFactor(G.thicknessFactor);if(G.attenuationDistance!==void 0)X.setAttenuationDistance(G.attenuationDistance);if(G.attenuationColor!==void 0)X.setAttenuationColor(G.attenuationColor);if(G.thicknessTexture!==void 0){let F=G.thicknessTexture,W=A.textures[Y[F.index].source];X.setThicknessTexture(W),A.setTextureInfo(X.getThicknessTextureInfo(),F)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(WX);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[WX]={};if(Y.getThicknessFactor()>0)X.thicknessFactor=Y.getThicknessFactor();if(Number.isFinite(Y.getAttenuationDistance()))X.attenuationDistance=Y.getAttenuationDistance();if(!kQ.eq(Y.getAttenuationColor(),[1,1,1]))X.attenuationColor=Y.getAttenuationColor();if(Y.getThicknessTexture()){let G=Y.getThicknessTexture(),F=Y.getThicknessTextureInfo();X.thicknessTexture=A.createTextureInfoDef(G,F)}}}),this}}qh.EXTENSION_NAME=WX;class mI extends oB{constructor(...A){super(...A);this.extensionName=LJA}read(A){return this}write(A){return this}}mI.EXTENSION_NAME=LJA;class OJA{match(A){return A[0]===171&&A[1]===75&&A[2]===84&&A[3]===88&&A[4]===32&&A[5]===50&&A[6]===48&&A[7]===187&&A[8]===13&&A[9]===10&&A[10]===26&&A[11]===10}getSize(A){let Q=k2(A);return[Q.pixelWidth,Q.pixelHeight]}getChannels(A){let B=k2(A).dataFormatDescriptor[0];if(B.colorModel===XJA)return B.samples.length===2&&(B.samples[1].channelType&15)===15?4:3;else if(B.colorModel===GJA)return(B.samples[0].channelType&15)===3?4:3;throw Error(`Unexpected KTX2 colorModel, "${B.colorModel}".`)}getVRAMByteLength(A){let Q=k2(A),B=this.getChannels(A)>3,Y=0;for(let J=0;J{if(Q.extensions&&Q.extensions[yI]){let B=Q.extensions[yI];Q.source=B.source}}),this}read(A){return this}write(A){let Q=A.jsonDoc;return this.document.getRoot().listTextures().forEach((B)=>{if(B.getMimeType()==="image/ktx2"){let Y=A.imageIndexMap.get(B);Q.json.textures.forEach((J)=>{if(J.source===Y)J.extensions=J.extensions||{},J.extensions[yI]={source:J.source},delete J.source})}}),this}}uI.EXTENSION_NAME=yI;class Mh extends aB{init(){this.extensionName=ZX,this.propertyType="Transform",this.parentTypes=[YA.TEXTURE_INFO]}getDefaults(){return Object.assign(super.getDefaults(),{offset:[0,0],rotation:0,scale:[1,1],texCoord:null})}getOffset(){return this.get("offset")}setOffset(A){return this.set("offset",A)}getRotation(){return this.get("rotation")}setRotation(A){return this.set("rotation",A)}getScale(){return this.get("scale")}setScale(A){return this.set("scale",A)}getTexCoord(){return this.get("texCoord")}setTexCoord(A){return this.set("texCoord",A)}}Mh.EXTENSION_NAME=ZX;class zh extends oB{constructor(...A){super(...A);this.extensionName=ZX}createTransform(){return new Mh(this.document.getGraph())}read(A){for(let[Q,B]of Array.from(A.textureInfos.entries())){if(!B.extensions||!B.extensions[ZX])continue;let Y=this.createTransform(),J=B.extensions[ZX];if(J.offset!==void 0)Y.setOffset(J.offset);if(J.rotation!==void 0)Y.setRotation(J.rotation);if(J.scale!==void 0)Y.setScale(J.scale);if(J.texCoord!==void 0)Y.setTexCoord(J.texCoord);Q.setExtension(ZX,Y)}return this}write(A){let Q=Array.from(A.textureInfoDefMap.entries());for(let[B,Y]of Q){let J=B.getExtension(ZX);if(!J)continue;Y.extensions=Y.extensions||{};let C={},X=kQ.eq;if(!X(J.getOffset(),[0,0]))C.offset=J.getOffset();if(J.getRotation()!==0)C.rotation=J.getRotation();if(!X(J.getScale(),[1,1]))C.scale=J.getScale();if(J.getTexCoord()!=null)C.texCoord=J.getTexCoord();Y.extensions[ZX]=C}return this}}zh.EXTENSION_NAME=ZX;var buQ=[YA.ROOT,YA.SCENE,YA.NODE,YA.MESH,YA.MATERIAL,YA.TEXTURE,YA.ANIMATION];class Rh extends aB{init(){this.extensionName=B5,this.propertyType="Packet",this.parentTypes=buQ}getDefaults(){return Object.assign(super.getDefaults(),{context:{},properties:{}})}getContext(){return this.get("context")}setContext(A){return this.set("context",$X({},A))}listProperties(){return Object.keys(this.get("properties"))}getProperty(A){let Q=this.get("properties");return A in Q?Q[A]:null}setProperty(A,Q){this._assertContext(A);let B=$X({},this.get("properties"));if(Q)B[A]=Q;else delete B[A];return this.set("properties",B)}toJSONLD(){let A=ny(this.get("context")),Q=ny(this.get("properties"));return $X({"@context":A},Q)}fromJSONLD(A){A=ny(A);let Q=A["@context"];if(Q)this.set("context",Q);return delete A["@context"],this.set("properties",A)}_assertContext(A){if(!(A.split(":")[0]in this.get("context")))throw Error(`${B5}: Missing context for term, "${A}".`)}}Rh.EXTENSION_NAME=B5;function ny(A){return JSON.parse(JSON.stringify(A))}class wh extends oB{constructor(...A){super(...A);this.extensionName=B5}createPacket(){return new Rh(this.document.getGraph())}listPackets(){return Array.from(this.properties)}read(A){var Q;let B=(Q=A.jsonDoc.json.extensions)==null?void 0:Q[B5];if(!B||!B.packets)return this;let Y=A.jsonDoc.json,J=this.document.getRoot(),C=B.packets.map((F)=>this.createPacket().fromJSONLD(F)),X=[[Y.asset],Y.scenes,Y.nodes,Y.meshes,Y.materials,Y.images,Y.animations],G=[[J],J.listScenes(),J.listNodes(),J.listMeshes(),J.listMaterials(),J.listTextures(),J.listAnimations()];for(let F=0;F0)Q.extensions=Q.extensions||{},Q.extensions[B5]={packets:B};return this}}wh.EXTENSION_NAME=B5;var muQ=[fI,oy,ey,Qh,Yh,Ch,bI,x2,Wh,f2,b2,Uh,Vh,m2,Nh,qh,mI,uI,zh,wh],Y1Y=[y2,xI,h2,g2,...muQ];var R5A=qA(jh(),1),w5A=qA(G5A(),1),viQ=qA(z5A(),1);async function yiQ(A,Q){if(!(A instanceof Uint8Array))throw Error("[ndarray-pixels] Input must be Uint8Array or Buffer.");let{data:B,info:Y}=await w5A.default(A).ensureAlpha().raw().toBuffer({resolveWithObject:!0});return R5A.default(new Uint8Array(B),[Y.width,Y.height,4],[4,4*Y.width|0,1],0)}async function j5A(A,Q){return yiQ(A)}var hiQ=qA(jh(),1);function e4(){return e4=Object.assign?Object.assign.bind():function(A){for(var Q=1;QQ?"–":"+",J="%";return Y+(Math.abs(A-Q)/A*100).toFixed(B)+"%"}function E3(A,Q){return`${Ag(A)} → ${Ag(Q)} (${uiQ(A,Q)})`}function K3(A){let Q=[];for(let B of A.listAttributes())Q.push(B);for(let B of A.listTargets())for(let Y of B.listAttributes())Q.push(Y);return Array.from(new Set(Q))}function diQ(A,Q,B){A.swap(Q,B);for(let Y of A.listTargets())Y.swap(Q,B)}function i5A(A){let Q=A.getIndices(),B=K3(A);if(A.dispose(),Q&&!Qg(Q))Q.dispose();for(let Y of B)if(!Qg(Y))Y.dispose()}function KX(A,Q){return A.createAccessor(Q.getName()).setArray(Q.getArray()).setType(Q.getType()).setBuffer(Q.getBuffer()).setNormalized(Q.getNormalized()).setSparse(Q.getSparse())}function ciQ(A,Q=A){let B=Fg(A,Q);for(let Y=0;YQ.propertyType!==YA.ROOT)}function n5A(A){for(let Q in A)return!1;return!0}function s5A(A){let Q=VJ.fromGraph(A.getGraph()),B=A.getMaterial(),Y=Q.getRoot().listMaterials().indexOf(B),J=piQ[A.getMode()],C=!!A.getIndices(),X=A.listSemantics().sort().map((F)=>{let W=A.getAttribute(F),Z=W.getElementSize(),U=W.getComponentType();return`${F}:${Z}:${U}`}).join("+"),G=A.listTargets().map((F)=>{return F.listSemantics().sort().map((W)=>{let Z=A.getAttribute(W),U=Z.getElementSize(),$=Z.getComponentType();return`${W}:${U}:${$}`}).join("+")}).join("~");return`${Y}|${J}|${C}|${X}|${G}`}function liQ(A){return Math.pow(2,Math.ceil(Math.log(A)/Math.LN2))}var piQ={[O5A]:O5A,[G3]:G3,[giQ]:G3,[xiQ]:G3,[F3]:F3,[fiQ]:F3,[biQ]:F3},o4="center",P5A={pivot:"center"};function r5A(A=P5A){let Q=VX(P5A,A);return fW(o4,(B)=>{let Y=B.getLogger(),J=B.getRoot(),C=J.listAnimations().length>0||J.listSkins().length>0;B.getRoot().listScenes().forEach((X,G)=>{Y.debug(`${o4}: Scene ${G+1} / ${J.listScenes().length}.`);let F;if(typeof Q.pivot==="string"){let Z=SI(X);if(F=[(Z.max[0]-Z.min[0])/2+Z.min[0],(Z.max[1]-Z.min[1])/2+Z.min[1],(Z.max[2]-Z.min[2])/2+Z.min[2]],Q.pivot==="above")F[1]=Z.max[1];if(Q.pivot==="below")F[1]=Z.min[1]}else F=Q.pivot;Y.debug(`${o4}: Pivot "${F.join(", ")}".`);let W=[-1*F[0],-1*F[1],-1*F[2]];if(C){Y.debug(`${o4}: Model contains animation or skin. Adding a wrapper node.`);let Z=B.createNode("Pivot").setTranslation(W);X.listChildren().forEach((U)=>Z.addChild(U)),X.addChild(Z)}else Y.debug(`${o4}: Skipping wrapper, offsetting all root nodes.`),X.listChildren().forEach((Z)=>{let U=Z.getTranslation();Z.setTranslation([U[0]+W[0],U[1]+W[1],U[2]+W[2]])})}),Y.debug(`${o4}: Complete.`)})}function iiQ(A){let Q=new Set,B=A,Y;while(Y=B.getParentNode()){if(Q.has(Y))throw Error("Circular dependency in scene graph.");Q.add(Y),B=Y}return B.listParents().filter((J)=>J instanceof h4)}function niQ(A){let Q=iiQ(A),B=A.getParentNode();if(!B)return A;A.setMatrix(A.getWorldMatrix()),B.removeChild(A);for(let Y of Q)Y.addChild(A);return A}var AU=typeof Float32Array<"u"?Float32Array:Array;if(!Math.hypot)Math.hypot=function(){var A=0,Q=arguments.length;while(Q--)A+=arguments[Q]*arguments[Q];return Math.sqrt(A)};function siQ(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Q[4],G=Q[5],F=Q[6],W=Q[7],Z=Q[8],U=Q[9],$=Q[10],E=Q[11],K=Q[12],I=Q[13],V=Q[14],H=Q[15],D=B*G-Y*X,L=B*F-J*X,z=B*W-C*X,M=Y*F-J*G,N=Y*W-C*G,q=J*W-C*F,w=Z*I-U*K,P=Z*V-$*K,_=Z*H-E*K,O=U*V-$*I,k=U*H-E*I,T=$*H-E*V,S=D*T-L*k+z*O+M*_-N*P+q*w;if(!S)return null;return S=1/S,A[0]=(G*T-F*k+W*O)*S,A[1]=(J*k-Y*T-C*O)*S,A[2]=(I*q-V*N+H*M)*S,A[3]=($*N-U*q-E*M)*S,A[4]=(F*_-X*T-W*P)*S,A[5]=(B*T-J*_+C*P)*S,A[6]=(V*z-K*q-H*L)*S,A[7]=(Z*q-$*z+E*L)*S,A[8]=(X*k-G*_+W*w)*S,A[9]=(Y*_-B*k-C*w)*S,A[10]=(K*N-I*z+H*D)*S,A[11]=(U*z-Z*N-E*D)*S,A[12]=(G*P-X*O-F*w)*S,A[13]=(B*O-Y*P+J*w)*S,A[14]=(I*L-K*M-V*D)*S,A[15]=(Z*M-U*L+$*D)*S,A}function riQ(A){var Q=A[0],B=A[1],Y=A[2],J=A[3],C=A[4],X=A[5],G=A[6],F=A[7],W=A[8],Z=A[9],U=A[10],$=A[11],E=A[12],K=A[13],I=A[14],V=A[15],H=Q*X-B*C,D=Q*G-Y*C,L=Q*F-J*C,z=B*G-Y*X,M=B*F-J*X,N=Y*F-J*G,q=W*K-Z*E,w=W*I-U*E,P=W*V-$*E,_=Z*I-U*K,O=Z*V-$*K,k=U*V-$*I;return H*k-D*O+L*_+z*P-M*w+N*q}function a5A(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],F=Q[5],W=Q[6],Z=Q[7],U=Q[8],$=Q[9],E=Q[10],K=Q[11],I=Q[12],V=Q[13],H=Q[14],D=Q[15],L=B[0],z=B[1],M=B[2],N=B[3];return A[0]=L*Y+z*G+M*U+N*I,A[1]=L*J+z*F+M*$+N*V,A[2]=L*C+z*W+M*E+N*H,A[3]=L*X+z*Z+M*K+N*D,L=B[4],z=B[5],M=B[6],N=B[7],A[4]=L*Y+z*G+M*U+N*I,A[5]=L*J+z*F+M*$+N*V,A[6]=L*C+z*W+M*E+N*H,A[7]=L*X+z*Z+M*K+N*D,L=B[8],z=B[9],M=B[10],N=B[11],A[8]=L*Y+z*G+M*U+N*I,A[9]=L*J+z*F+M*$+N*V,A[10]=L*C+z*W+M*E+N*H,A[11]=L*X+z*Z+M*K+N*D,L=B[12],z=B[13],M=B[14],N=B[15],A[12]=L*Y+z*G+M*U+N*I,A[13]=L*J+z*F+M*$+N*V,A[14]=L*C+z*W+M*E+N*H,A[15]=L*X+z*Z+M*K+N*D,A}var DJ;(function(A){A.RENDER="render",A.RENDER_CACHED="render-cached",A.UPLOAD="upload",A.UPLOAD_NAIVE="upload-naive",A.DISTINCT="distinct",A.DISTINCT_POSITION="distinct-position",A.UNUSED="unused"})(DJ||(DJ={}));function xW(A,Q){let B=A.getAttribute("POSITION"),Y=A.getIndices();switch(Q){case DJ.RENDER:return Y?Y.getCount():B.getCount();case DJ.RENDER_CACHED:return Y?new Set(Y.getArray()).size:B.getCount();case DJ.UPLOAD_NAIVE:case DJ.UPLOAD:return B.getCount();case DJ.DISTINCT:case DJ.DISTINCT_POSITION:return aiQ(Q);case DJ.UNUSED:return Y?B.getCount()-new Set(Y.getArray()).size:0;default:return oiQ(Q)}}function aiQ(A){throw Error(`Not implemented: ${A}`)}function oiQ(A){throw Error(`Unexpected value: ${A}`)}var J7=4294967295;class o5A{constructor(A){this.attributes=[],this.u8=void 0,this.u32=void 0;let Q=0;for(let B of K3(A))Q+=this._initAttribute(B);this.u8=new Uint8Array(Q),this.u32=new Uint32Array(this.u8.buffer)}_initAttribute(A){let Q=A.getArray(),B=new Uint8Array(Q.buffer,Q.byteOffset,Q.byteLength),Y=A.getElementSize()*A.getComponentSize(),J=jQ.padNumber(Y);return this.attributes.push({u8:B,byteStride:Y,paddedByteStride:J}),J}hash(A){let Q=0;for(let{u8:B,byteStride:Y,paddedByteStride:J}of this.attributes){for(let C=0;C>>0,X=(X^X>>24)>>>0,X=Math.imul(X,1540483477)>>>0,A=Math.imul(A,1540483477)>>>0,A=(A^X)>>>0}return A}function eiQ(A,Q,B,Y,J=J7){let C=Q-1,G=B.hash(Y)&C;for(let F=0;F<=C;F++){let W=A[G];if(W===J||B.equal(W,Y))return G;G=G+F+1&C}throw Error("Hash table full.")}function AH(A,Q,B){let Y=VJ.fromGraph(A.getGraph());if(!Q||!B)[Q,B]=AnQ(A);let J=A.getIndices(),C=J?J.getArray():null,X=xW(A,DJ.RENDER),G=Y.createAccessor(),F=X,W=Fg(F,B);for(let U=0;U0)C=1/Math.sqrt(C);return A[0]=Q[0]*C,A[1]=Q[1]*C,A[2]=Q[2]*C,A}function XnQ(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=B[3]*Y+B[7]*J+B[11]*C+B[15];return X=X||1,A[0]=(B[0]*Y+B[4]*J+B[8]*C+B[12])/X,A[1]=(B[1]*Y+B[5]*J+B[9]*C+B[13])/X,A[2]=(B[2]*Y+B[6]*J+B[10]*C+B[14])/X,A}function GnQ(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2];return A[0]=Y*B[0]+J*B[3]+C*B[6],A[1]=Y*B[1]+J*B[4]+C*B[7],A[2]=Y*B[2]+J*B[5]+C*B[8],A}var FnQ=CnQ;(function(){var A=V3();return function(Q,B,Y,J,C,X){var G,F;if(!B)B=3;if(!Y)Y=0;if(J)F=Math.min(J*B+Y,Q.length);else F=Q.length;for(G=Y;G{let Y=B.getLogger();for(let J of B.getRoot().listMeshes()){for(let C of J.listPrimitives())if(I3(C,Q),xW(C,DJ.RENDER)===0)i5A(C);if(J.listPrimitives().length===0)J.dispose()}Y.debug(`${Yg}: Complete.`)})}function I3(A,Q=Z3){let B=A.getGraph(),J=VJ.fromGraph(B).getLogger(),C=e4({},Z3,Q);if(A.getIndices()&&!C.overwrite)return;if(A.getMode()===D0.Mode.POINTS)return;let X=A.getAttribute("POSITION").getCount(),G=A.getIndices(),F=G==null?void 0:G.getArray(),W=G?G.getCount():X,Z=new o5A(A),U=liQ(X+X/4),$=new Uint32Array(U).fill(J7),E=new Uint32Array(X).fill(J7),K=0;for(let I=0;IY instanceof kI&&Y!==Q))A=A.clone();for(let Y of A.listTargets())if(Y.listParents().some((C)=>C instanceof D0&&C!==A))A.removeTarget(Y).addTarget(Y.clone());return A}var _5A=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function ACA(A){let Q=A.getMesh(),B=A.getMatrix();if(Q&&!kQ.eq(B,_5A))$nQ(Q,B);for(let Y of A.listChildren()){let J=Y.getMatrix();a5A(J,J,B),Y.setMatrix(J)}return A.setMatrix(_5A)}var{LINES:EnQ,LINE_STRIP:KnQ,LINE_LOOP:VnQ,TRIANGLES:InQ,TRIANGLE_STRIP:HnQ,TRIANGLE_FAN:DnQ}=D0.Mode;function NnQ(A){let Q=A.getGraph(),B=VJ.fromGraph(Q);if(!A.getIndices())I3(A);let Y=A.getIndices(),J=Y.getArray(),C=p5A(A),G=new aG[Y.getComponentType()](C*2),F=A.getMode();if(F===KnQ)for(let Z=0;ZZ!==W&&Z!==A))A.setIndices(KX(B,Y).setArray(G));else Y.setArray(G)}function QCA(A){let Q=A.getGraph(),B=VJ.fromGraph(Q);if(!A.getIndices())I3(A);let Y=A.getIndices(),J=Y.getArray(),C=p5A(A),G=new aG[Y.getComponentType()](C*3),F=A.getMode();if(F===HnQ)for(let Z=0,U=J.length;ZZ!==W&&Z!==A))A.setIndices(KX(B,Y).setArray(G));else Y.setArray(G)}var $6Y={keepUniqueNames:!1,propertyTypes:[YA.ACCESSOR,YA.MESH,YA.TEXTURE,YA.MATERIAL,YA.SKIN]};var v5A="dequantize",$3={pattern:/^((?!JOINTS_).)*$/};function BCA(A=$3){let Q=VX($3,A);return fW(v5A,(B)=>{let Y=B.getLogger();for(let J of B.getRoot().listMeshes())for(let C of J.listPrimitives())LnQ(C,Q);B.createExtension(mI).dispose(),Y.debug(`${v5A}: Complete.`)})}function LnQ(A,Q=$3){let B=VX($3,Q);for(let Y of A.listSemantics())if(B.pattern.test(Y))Jg(A.getAttribute(Y));for(let Y of A.listTargets())for(let J of Y.listSemantics())if(B.pattern.test(J))Jg(Y.getAttribute(J))}function Jg(A){let Q=A.getArray();if(!Q)return;let B=U3(Q,A.getComponentType(),A.getNormalized());A.setArray(B).setNormalized(!1)}function U3(A,Q,B){let Y=new Float32Array(A.length);for(let J=0,C=A.length;J{if(Y.propertyType===YCA)return Y;let J=B.get(Y);if(!J)J=new Y.constructor(A.getGraph()),B.set(Y,J);return J}}function znQ(A){let Q=new Set;for(let B of A.getGraph().listEdges())Q.add(B.getChild());return Array.from(Q)}function CCA(){var A=new AU(4);if(AU!=Float32Array)A[0]=0,A[1]=0,A[2]=0,A[3]=0;return A}function RnQ(A,Q,B){return A[0]=Q[0]+B[0],A[1]=Q[1]+B[1],A[2]=Q[2]+B[2],A[3]=Q[3]+B[3],A}function wnQ(A,Q,B){return A[0]=Q[0]-B[0],A[1]=Q[1]-B[1],A[2]=Q[2]-B[2],A[3]=Q[3]-B[3],A}function jnQ(A,Q,B){return A[0]=Q[0]*B[0],A[1]=Q[1]*B[1],A[2]=Q[2]*B[2],A[3]=Q[3]*B[3],A}function OnQ(A,Q,B){return A[0]=Q[0]*B,A[1]=Q[1]*B,A[2]=Q[2]*B,A[3]=Q[3]*B,A}function PnQ(A){var Q=A[0],B=A[1],Y=A[2],J=A[3];return Math.hypot(Q,B,Y,J)}var XCA=wnQ,TnQ=jnQ,GCA=PnQ;(function(){var A=CCA();return function(Q,B,Y,J,C,X){var G,F;if(!B)B=4;if(!Y)Y=0;if(J)F=Math.min(J*B+Y,Q.length);else F=Q.length;for(G=Y;G{return J.getAttributes().isColor||SnQ.test(J.getName())})?"srgb":null}function _nQ(A){let Q=A.getGraph(),B=new Set,Y=new Set;function J(C){let X=new Set;for(let G of Q.listChildEdges(C))if(G.getChild()instanceof _W)X.add(G.getName()+"Info");for(let G of Q.listChildEdges(C)){let F=G.getChild();if(B.has(F))continue;if(B.add(F),F instanceof hB&&X.has(G.getName()))Y.add(F);else if(F instanceof aB)J(F)}}return J(A),Array.from(Y)}function vnQ(A){let B=VJ.fromGraph(A.getGraph()).getRoot(),Y=A.getGraph().listParentEdges(A).filter((J)=>J.getParent()!==B).map((J)=>J.getName());return Array.from(new Set(Y))}var t4="prune",Cg=0.011764705882352941,y5A={propertyTypes:[YA.NODE,YA.SKIN,YA.MESH,YA.CAMERA,YA.PRIMITIVE,YA.PRIMITIVE_TARGET,YA.ANIMATION,YA.MATERIAL,YA.TEXTURE,YA.ACCESSOR,YA.BUFFER],keepLeaves:!1,keepAttributes:!1,keepIndices:!1,keepSolidTextures:!1,keepExtras:!1};function H3(A=y5A){let Q=VX(y5A,A),B=new Set(Q.propertyTypes),Y=Q.keepExtras;return fW(t4,async(J)=>{let C=J.getLogger(),X=J.getRoot(),G=J.getGraph(),F=new FCA,W=(Z)=>F.dispose(Z.target);if(G.addEventListener("node:dispose",W),B.has(YA.MESH))for(let Z of X.listMeshes()){if(Z.listPrimitives().length>0)continue;Z.dispose()}if(B.has(YA.NODE)){if(!Q.keepLeaves)for(let Z of X.listScenes())WCA(G,Z,Y);for(let Z of X.listNodes())C5(Z,Y)}if(B.has(YA.SKIN))for(let Z of X.listSkins())C5(Z,Y);if(B.has(YA.MESH))for(let Z of X.listMeshes())C5(Z,Y);if(B.has(YA.CAMERA))for(let Z of X.listCameras())C5(Z,Y);if(B.has(YA.PRIMITIVE))h5A(G,YA.PRIMITIVE,Y);if(B.has(YA.PRIMITIVE_TARGET))h5A(G,YA.PRIMITIVE_TARGET,Y);if(!Q.keepAttributes&&B.has(YA.ACCESSOR)){let Z=new Map;for(let U of X.listMeshes())for(let $ of U.listPrimitives()){let E=$.getMaterial();if(!E)continue;let K=ZCA(J,$,E),I=ynQ($,K);g5A($,I),$.listTargets().forEach((V)=>g5A(V,I)),Z.has(E)?Z.get(E).add($):Z.set(E,new Set([$]))}for(let[U,$]of Z)hnQ(U,Array.from($))}if(B.has(YA.ANIMATION))for(let Z of X.listAnimations()){for(let U of Z.listChannels())if(!U.getTargetNode())U.dispose();if(!Z.listChannels().length){let U=Z.listSamplers();C5(Z,Y),U.forEach(($)=>C5($,Y))}else Z.listSamplers().forEach((U)=>C5(U,Y))}if(B.has(YA.MATERIAL))X.listMaterials().forEach((Z)=>C5(Z,Y));if(B.has(YA.TEXTURE)){if(X.listTextures().forEach((Z)=>C5(Z,Y)),!Q.keepSolidTextures)await gnQ(J)}if(B.has(YA.ACCESSOR))X.listAccessors().forEach((Z)=>C5(Z,Y));if(B.has(YA.BUFFER))X.listBuffers().forEach((Z)=>C5(Z,Y));if(G.removeEventListener("node:dispose",W),!F.empty()){let Z=F.entries().map(([U,$])=>`${U} (${$})`).join(", ");C.info(`${t4}: Removed types... ${Z}`)}else C.debug(`${t4}: No unused properties found.`);C.debug(`${t4}: Complete.`)})}class FCA{constructor(){this.disposed={}}empty(){for(let A in this.disposed)return!1;return!0}entries(){return Object.entries(this.disposed)}dispose(A){this.disposed[A.propertyType]=this.disposed[A.propertyType]||0,this.disposed[A.propertyType]++}}function C5(A,Q){let B=A.listParents().filter((J)=>!(J instanceof g4||J instanceof a6)),Y=Q&&!n5A(A.getExtras());if(!B.length&&!Y)A.dispose()}function h5A(A,Q,B){for(let Y of A.listEdges()){let J=Y.getParent();if(J.propertyType===Q)C5(J,B)}}function WCA(A,Q,B){if(Q.listChildren().forEach((X)=>WCA(A,X,B)),Q instanceof h4)return;let Y=A.listParentEdges(Q).some((X)=>{let G=X.getParent().propertyType;return G!==YA.ROOT&&G!==YA.SCENE&&G!==YA.NODE}),J=A.listChildren(Q).length===0,C=B&&!n5A(Q.getExtras());if(J&&!Y&&!C)Q.dispose()}function g5A(A,Q){for(let B of Q)A.setAttribute(B,null)}function ynQ(A,Q){let B=[];for(let Y of A.listSemantics())if(Y==="NORMAL"&&!Q.has(Y))B.push(Y);else if(Y==="TANGENT"&&!Q.has(Y))B.push(Y);else if(Y.startsWith("TEXCOORD_")&&!Q.has(Y))B.push(Y);else if(Y.startsWith("COLOR_")&&Y!=="COLOR_0")B.push(Y);return B}function ZCA(A,Q,B,Y=new Set){let C=A.getGraph().listChildEdges(B),X=new Set;for(let W of C)if(W.getChild()instanceof _W)X.add(W.getName());for(let W of C){let Z=W.getName(),U=W.getChild();if(U instanceof hB){if(X.has(Z.replace(/Info$/,"")))Y.add(`TEXCOORD_${U.getTexCoord()}`)}if(U instanceof _W&&Z.match(/normalTexture/i))Y.add("TANGENT");if(U instanceof aB)ZCA(A,Q,U,Y)}let G=B instanceof w1&&!B.getExtension("KHR_materials_unlit"),F=Q.getMode()===D0.Mode.POINTS;if(G&&!F)Y.add("NORMAL");return Y}function hnQ(A,Q){let B=_nQ(A),Y=new Set(B.map((F)=>F.getTexCoord())),J=Array.from(Y).sort(),C=new Map(J.map((F,W)=>[F,W])),X=new Map(J.map((F,W)=>[`TEXCOORD_${F}`,`TEXCOORD_${W}`]));for(let F of B){let W=F.getTexCoord();F.setTexCoord(C.get(W))}for(let F of Q){let W=F.listSemantics().filter((Z)=>Z.startsWith("TEXCOORD_")).sort();G(F,W),F.listTargets().forEach((Z)=>G(Z,W))}function G(F,W){for(let Z of W){let U=F.getAttribute(Z);if(!U)continue;let $=X.get(Z);if($===Z)continue;F.setAttribute($,U),F.setAttribute(Z,null)}}}async function gnQ(A){let Q=A.getRoot(),B=A.getGraph(),Y=A.getLogger(),C=Q.listTextures().map(async(X)=>{var G;let F=await fnQ(X);if(!F)return;if(knQ(X)==="srgb")dy.convertSRGBToLinear(F,F);let W=X.getName()||X.getURI(),Z=(G=X.getSize())==null?void 0:G.join("x"),U=vnQ(X);for(let $ of B.listParentEdges(X)){let E=$.getParent();if(E!==Q&&xnQ(E,F,$.getName(),Y))$.dispose()}if(X.listParents().length===1)X.dispose(),Y.debug(`${t4}: Removed solid-color texture "${W}" (${Z}px ${U.join(", ")})`)});await Promise.all(C)}function xnQ(A,Q,B,Y){if(A instanceof w1)switch(B){case"baseColorTexture":return A.setBaseColorFactor(TnQ(Q,Q,A.getBaseColorFactor())),!0;case"emissiveTexture":return A.setEmissiveFactor(FnQ([0,0,0],Q.slice(0,3),A.getEmissiveFactor())),!0;case"occlusionTexture":return Math.abs(Q[0]-1)<=Cg;case"metallicRoughnessTexture":return A.setRoughnessFactor(Q[1]*A.getRoughnessFactor()),A.setMetallicFactor(Q[2]*A.getMetallicFactor()),!0;case"normalTexture":return GCA(XCA(CCA(),Q,[0.5,0.5,1,1]))<=Cg}return Y.warn(`${t4}: Detected single-color ${B} texture. Pruning ${B} not yet supported.`),!1}async function fnQ(A){let Q=await bnQ(A);if(!Q)return null;let B=[1/0,1/0,1/0,1/0],Y=[-1/0,-1/0,-1/0,-1/0],J=[0,0,0,0],[C,X]=Q.shape;for(let G=0;GCg)return null}return OnQ(J,RnQ(J,Y,B),0.00196078431372549)}async function bnQ(A){try{return await j5A(A.getImage(),A.getMimeType())}catch(Q){return null}}var th="flatten",x5A={cleanup:!0};function $g(A=x5A){let Q=VX(x5A,A);return fW(th,async(B)=>{let Y=B.getRoot(),J=B.getLogger(),C=new Set;for(let W of Y.listSkins())for(let Z of W.listJoints())C.add(Z);let X=new Set;for(let W of Y.listAnimations())for(let Z of W.listChannels()){let U=Z.getTargetNode();if(U&&Z.getTargetPath()!=="weights")X.add(U)}let G=new Set,F=new Set;for(let W of Y.listScenes())W.traverse((Z)=>{let U=Z.getParentNode();if(!U)return;if(C.has(U)||G.has(U))G.add(Z);if(X.has(U)||F.has(U))F.add(Z)});for(let W of Y.listScenes())W.traverse((Z)=>{if(X.has(Z))return;if(G.has(Z))return;if(F.has(Z))return;niQ(Z)});if(X.size)J.debug(`${th}: Flattening node hierarchies with TRS animation not yet supported.`);if(Q.cleanup)await B.transform(H3({propertyTypes:[YA.NODE],keepLeaves:!1}));J.debug(`${th}: Complete.`)})}function $CA(A){return SI(A)}var mnQ={skipValidation:!1},f5A=4294967295,{LINE_STRIP:unQ,LINE_LOOP:dnQ,TRIANGLE_STRIP:cnQ,TRIANGLE_FAN:lnQ}=D0.Mode;function pnQ(A,Q={}){let B=VX(mnQ,Q),Y=A[0],J=VJ.fromGraph(Y.getGraph());if(!B.skipValidation&&new Set(A.map(s5A)).size>1)throw Error("Requires >=2 Primitives, sharing the same Material and Mode, with compatible vertex attributes and indices.");for(let E of A)switch(E.getMode()){case unQ:case dnQ:NnQ(E);break;case cnQ:case lnQ:QCA(E);break}let C=[],X=new Uint32Array(A.length),G=0,F=0;for(let E=0;E!0};function Ug(A=b5A){let Q=VX(b5A,A);return fW(Xg,async(B)=>{let Y=B.getRoot(),J=B.getLogger();for(let C of Y.listScenes())m5A(B,C,Q),C.traverse((X)=>m5A(B,X,Q));if(Q.cleanup)await B.transform(H3({propertyTypes:[rnQ,anQ,onQ,tnQ],keepAttributes:!0,keepIndices:!0,keepLeaves:!1}));J.debug(`${Xg}: Complete.`)})}function m5A(A,Q,B){let Y=A.getLogger(),J={},C=Q.listChildren();for(let F=0;F$ instanceof a6))continue;let U=W.getMesh();if(!U)continue;if(W.getExtension("EXT_mesh_gpu_instancing"))continue;if(W.getSkin())continue;for(let $ of U.listPrimitives()){if($.listTargets().length>0)continue;let E=$.getMaterial();if(E&&E.getExtension("KHR_materials_volume"))continue;AH($),AsQ($);let K=s5A($),I=U.getName()||W.getName();if(B.keepMeshes||B.keepNamed&&I)K+=`|${F}`;if(!(K in J))J[K]={prims:[],primMeshes:[],primNodes:[],dstNode:W,dstMesh:void 0};let V=J[K];V.prims.push($),V.primNodes.push(W)}}let X=Object.values(J).filter(({prims:F})=>F.length>1),G=new Set(X.flatMap((F)=>F.primNodes));for(let F of G){let W=F.getMesh();if(W.listParents().some((U)=>{return U.propertyType!==snQ&&F!==U}))F.setMesh(W.clone())}for(let F of X){let{dstNode:W,primNodes:Z}=F;F.dstMesh=W.getMesh(),F.primMeshes=Z.map((U)=>U.getMesh())}for(let F of X){let{prims:W,primNodes:Z,primMeshes:U,dstNode:$,dstMesh:E}=F,K=$.getMatrix();for(let H=0;H=Math.PI}else if(B==="lerp"){let H=GsQ(C,F,G,I);V=!W3(X,H,Y)}else if(B==="step")V=!W3(X,F)||!W3(X,G)}if(V){if(U!==Z)A[Z]=A[U],c5A(Q,Z,eI(Q,U,C));Z++}}if(W>0)A[Z]=A[W],c5A(Q,Z,eI(Q,W,C)),Z++;return Z}function eI(A,Q,B){for(let Y=0,J=B.length;YB)return!1;return!0}function XsQ(A,Q,B){return A*(1-B)+Q*B}function GsQ(A,Q,B,Y){for(let J=0;JJsQ)$=Math.acos(E),K=Math.sin($),I=Math.sin((1-Y)*$)/K,V=Math.sin(Y*$)/K;else I=1-Y,V=Y;return A[0]=I*J+V*F,A[1]=I*C+V*W,A[2]=I*X+V*Z,A[3]=I*G+V*U,A}function l5A(A,Q){let B=WsQ(A,Q);return Math.acos(2*B*B-1)}function WsQ(A,Q){return A[0]*Q[0]+A[1]*Q[1]+A[2]*Q[2]+A[3]*Q[3]}var D6Y=new Float32Array(0),N6Y={ready:Promise.resolve(),resample:CsQ,tolerance:0.0001,cleanup:!0};var gW="simplify",{POINTS:UCA,LINES:ZsQ,LINE_STRIP:$sQ,LINE_LOOP:UsQ,TRIANGLES:EsQ,TRIANGLE_STRIP:ECA,TRIANGLE_FAN:KCA}=D0.Mode,VCA={ratio:0,error:0.0001,lockBorder:!1};function ICA(A){let Q=VX(VCA,A),B=Q.simplifier;if(!B)throw Error(`${gW}: simplifier dependency required — install "meshoptimizer".`);return fW(gW,async(Y)=>{let J=Y.getLogger();await B.ready,await Y.transform(Wg({overwrite:!1}));let C=0;for(let X of Y.getRoot().listMeshes()){for(let G of X.listPrimitives()){let F=G.getMode();if(F!==EsQ&&F!==ECA&&F!==KCA&&F!==UCA){C++;continue}if(KsQ(G,Q),xW(G,DJ.RENDER)===0)i5A(G)}if(X.listPrimitives().length===0)X.dispose()}if(C>0)J.warn(`${gW}: Skipped ${C} primitives: Unsupported draw mode.`);J.debug(`${gW}: Complete.`)})}function KsQ(A,Q){let B=e4({},VCA,Q),Y=B.simplifier,J=A.getGraph(),C=VJ.fromGraph(J),X=C.getLogger();switch(A.getMode()){case UCA:return VsQ(C,A,B);case ZsQ:case $sQ:case UsQ:return X.warn(`${gW}: Skipping primitive simplification: Unsupported draw mode.`),A;case ECA:case KCA:QCA(A);break}let G=xW(A,DJ.UPLOAD),F=xW(A,DJ.RENDER);if(F($&A)/J*256/F,shiftGreen:($)=>($&Q)/C*256/W,shiftBlue:($)=>($&B)/X*256/Z,shiftAlpha:Y!==0?($)=>($&Y)/G*256/U:()=>255}}var IX;(function(A){A[A.NONE=0]="NONE",A[A.BI_RLE8=1]="BI_RLE8",A[A.BI_RLE4=2]="BI_RLE4",A[A.BI_BIT_FIELDS=3]="BI_BIT_FIELDS",A[A.BI_ALPHA_BIT_FIELDS=6]="BI_ALPHA_BIT_FIELDS"})(IX||(IX={}));class M3{flag;fileSize;reserved1;reserved2;offset;headerSize;width;height;planes;bitPP;compression;rawSize;hr;vr;colors;importantColors;palette;data;maskRed;maskGreen;maskBlue;maskAlpha;toRGBA;pos;bottomUp;buffer;locRed;locGreen;locBlue;locAlpha;shiftRed;shiftGreen;shiftBlue;shiftAlpha;constructor(A,{toRGBA:Q}={toRGBA:!1}){if(this.buffer=A,this.toRGBA=!!Q,this.pos=0,this.bottomUp=!0,this.flag=this.buffer.toString("utf-8",0,this.pos+=2),this.flag!=="BM")throw Error("Invalid BMP File");this.locRed=this.toRGBA?0:3,this.locGreen=this.toRGBA?1:2,this.locBlue=this.toRGBA?2:1,this.locAlpha=this.toRGBA?3:0,this.parseHeader(),this.parseRGBA()}parseHeader(){if(this.fileSize=this.readUInt32LE(),this.reserved1=this.buffer.readUInt16LE(this.pos),this.pos+=2,this.reserved2=this.buffer.readUInt16LE(this.pos),this.pos+=2,this.offset=this.readUInt32LE(),this.headerSize=this.readUInt32LE(),!(this.headerSize in X5))throw Error(`Unsupported BMP header size ${this.headerSize}`);if(this.width=this.readUInt32LE(),this.height=this.readUInt32LE(),this.height=this.height>2147483647?this.height-4294967296:this.height,this.planes=this.buffer.readUInt16LE(this.pos),this.pos+=2,this.bitPP=this.buffer.readUInt16LE(this.pos),this.pos+=2,this.compression=this.readUInt32LE(),this.rawSize=this.readUInt32LE(),this.hr=this.readUInt32LE(),this.vr=this.readUInt32LE(),this.colors=this.readUInt32LE(),this.importantColors=this.readUInt32LE(),this.bitPP===32)this.maskAlpha=0,this.maskRed=16711680,this.maskGreen=65280,this.maskBlue=255;else if(this.bitPP===16)this.maskAlpha=0,this.maskRed=31744,this.maskGreen=992,this.maskBlue=31;if(this.headerSize>X5.BITMAP_INFO_HEADER||this.compression===IX.BI_BIT_FIELDS||this.compression===IX.BI_ALPHA_BIT_FIELDS)this.maskRed=this.readUInt32LE(),this.maskGreen=this.readUInt32LE(),this.maskBlue=this.readUInt32LE();if(this.headerSize>X5.BITMAP_V2_INFO_HEADER||this.compression===IX.BI_ALPHA_BIT_FIELDS)this.maskAlpha=this.readUInt32LE();if(this.headerSize>X5.BITMAP_V3_INFO_HEADER)this.pos+=X5.BITMAP_V4_HEADER-X5.BITMAP_V3_INFO_HEADER;if(this.headerSize>X5.BITMAP_V4_HEADER)this.pos+=X5.BITMAP_V5_HEADER-X5.BITMAP_V4_HEADER;if(this.bitPP<=8||this.colors>0){let Q=this.colors===0?1<{if(C!==Y)Y=C;let X=this.buffer.readUInt8(this.pos++),G=C*this.width*4+J*8*4;for(let F=0;F<8;F++)if(J*8+F>7-F&1];this.data[G+F*this.locAlpha]=0,this.data[G+F*4+this.locBlue]=W.blue,this.data[G+F*4+this.locGreen]=W.green,this.data[G+F*4+this.locRed]=W.red}else break})}bit4(){if(this.compression===IX.BI_RLE4){this.data.fill(0);let A=!1,Q=this.bottomUp?this.height-1:0,B=0;while(B>4),X&1&&X+1>1&1)===1)this.pos++}}else for(let C=0;C>4),A=!A}}else{let A=Math.ceil(this.width/2),Q=A%4,B=Q!==0?4-Q:0;this.scanImage(B,A,(Y,J)=>{let C=this.buffer.readUInt8(this.pos++),X=J*this.width*4+Y*2*4,G=C>>4,F=this.palette[G];if(this.data[X]=0,this.data[X+1]=F.blue,this.data[X+2]=F.green,this.data[X+3]=F.red,Y*2+1>=this.width)return!1;let W=C&15;F=this.palette[W],this.data[X+4]=0,this.data[X+4+1]=F.blue,this.data[X+4+2]=F.green,this.data[X+4+3]=F.red})}}bit8(){if(this.compression===IX.BI_RLE8){this.data.fill(0);let A=this.bottomUp?this.height-1:0,Q=0;while(Q{let J=this.buffer.readUInt8(this.pos++),C=Y*this.width*4+B*4;if(J{let Y=B*this.width*4+Q*4,J=this.buffer.readUInt16LE(this.pos);this.pos+=2,this.data[Y+this.locRed]=this.shiftRed(J),this.data[Y+this.locGreen]=this.shiftGreen(J),this.data[Y+this.locBlue]=this.shiftBlue(J),this.data[Y+this.locAlpha]=this.shiftAlpha(J)})}bit24(){let A=this.width%4;this.scanImage(A,this.width,(Q,B)=>{let Y=B*this.width*4+Q*4,J=this.buffer.readUInt8(this.pos++),C=this.buffer.readUInt8(this.pos++),X=this.buffer.readUInt8(this.pos++);this.data[Y+this.locRed]=X,this.data[Y+this.locGreen]=C,this.data[Y+this.locBlue]=J,this.data[Y+this.locAlpha]=0})}bit32(){this.scanImage(0,this.width,(A,Q)=>{let B=Q*this.width*4+A*4,Y=this.readUInt32LE();this.data[B+this.locRed]=this.shiftRed(Y),this.data[B+this.locGreen]=this.shiftGreen(Y),this.data[B+this.locBlue]=this.shiftBlue(Y),this.data[B+this.locAlpha]=this.shiftAlpha(Y)})}scanImage(A=0,Q=this.width,B){for(let Y=this.height-1;Y>=0;Y--){let J=this.bottomUp?Y:this.height-1-Y;for(let C=0;CQ<<1|B,0)}function Ng(A){return A.quad<<24|A.red<<16|A.green<<8|A.blue}class z3{fileSize;reserved1;reserved2;offset;width;flag;height;planes;bitPP;compress;hr;vr;colors;importantColors;rawSize;headerSize;data;palette;extraBytes;buffer;bytesInColor;pos;constructor(A){if(this.buffer=A.data,this.width=A.width,this.height=A.height,this.headerSize=X5.BITMAP_INFO_HEADER,this.flag="BM",this.bitPP=A.bitPP||24,this.offset=54,this.reserved1=A.reserved1||0,this.reserved2=A.reserved2||0,this.planes=1,this.compress=0,this.hr=A.hr||0,this.vr=A.vr||0,this.importantColors=A.importantColors||0,this.colors=Math.min(2**(this.bitPP-1||1),A.colors||1/0),this.palette=A.palette||[],this.colors&&this.bitPP<16)this.offset+=this.colors*4;else this.colors=0;switch(this.bitPP){case 32:this.bytesInColor=4;break;case 16:this.bytesInColor=2;break;case 8:this.bytesInColor=1;break;case 4:this.bytesInColor=0.5;break;case 1:this.bytesInColor=0.125;break;default:this.bytesInColor=3,this.bitPP=24}let Q=this.width*this.bitPP/32,B=Math.ceil(Q);this.extraBytes=(B-Q)*4,this.rawSize=this.height*B*4+2,this.fileSize=this.rawSize+this.offset,this.data=Buffer.alloc(this.fileSize,1),this.pos=0,this.encode()}encode(){switch(this.pos=0,this.writeHeader(),this.bitPP){case 32:this.bit32();break;case 16:this.bit16();break;case 8:this.bit8();break;case 4:this.bit4();break;case 1:this.bit1();break;default:this.bit24()}}writeHeader(){this.data.write(this.flag,this.pos,2),this.pos+=2,this.writeUInt32LE(this.fileSize),this.writeUInt32LE(this.reserved1<<16|this.reserved2),this.writeUInt32LE(this.offset),this.writeUInt32LE(this.headerSize),this.writeUInt32LE(this.width),this.writeUInt32LE(this.height),this.data.writeUInt16LE(this.planes,this.pos),this.pos+=2,this.data.writeUInt16LE(this.bitPP,this.pos),this.pos+=2,this.writeUInt32LE(this.compress),this.writeUInt32LE(this.rawSize),this.writeUInt32LE(this.hr),this.writeUInt32LE(this.vr),this.writeUInt32LE(this.colors),this.writeUInt32LE(this.importantColors)}bit1(){if(this.palette.length&&this.colors===2)this.initColors(1);else this.writeUInt32LE(16777215),this.writeUInt32LE(0);this.pos+=1;let A=[];this.writeImage((Q,B,Y)=>{let J=B;J++;let C=this.buffer[J++],X=this.buffer[J++],F=this.buffer[J++]*0.2126+X*0.7152+C*0.0722;if(A.push(F>127?0:1),(Y+1)%8===0)this.data[Q-1]=zCA(A),A=[];else if(Y===this.width-1&&A.length>0)this.data[Q-1]=zCA(A)<<4,A=[];return J})}bit4(){let A=this.initColors(4),Q=[];this.writeImage((B,Y,J)=>{let C=Y,X=Ng({quad:this.buffer[C++],blue:this.buffer[C++],green:this.buffer[C++],red:this.buffer[C++]}),G=A.findIndex((F)=>F===X);if(G!==-1)Q.push(G);else Q.push(0);if((J+1)%2===0)this.data[B]=Q[0]<<4|Q[1],Q=[];return C})}bit8(){let A=this.initColors(8);this.writeImage((Q,B)=>{let Y=B,J=Ng({quad:this.buffer[Y++],blue:this.buffer[Y++],green:this.buffer[Y++],red:this.buffer[Y++]}),C=A.findIndex((X)=>X===J);if(C!==-1)this.data[Q]=C;else this.data[Q]=0;return Y})}bit16(){this.writeImage((A,Q)=>{let B=Q+1,Y=this.buffer[B++]/8,J=this.buffer[B++]/8,X=this.buffer[B++]/8<<10|J<<5|Y;return this.data[A]=X&255,this.data[A+1]=(X&65280)>>8,B})}bit24(){this.writeImage((A,Q)=>{let B=Q+1;return this.data[A]=this.buffer[B++],this.data[A+1]=this.buffer[B++],this.data[A+2]=this.buffer[B++],B})}bit32(){this.writeImage((A,Q)=>{let B=Q;return this.data[A+3]=this.buffer[B++],this.data[A]=this.buffer[B++],this.data[A+1]=this.buffer[B++],this.data[A+2]=this.buffer[B++],B})}writeImage(A){let Q=this.extraBytes+this.width*this.bytesInColor,B=0;for(let Y=0;Y=0,C=!B&&J&&(Q==="hex"||Q==="hex6"||Q==="hex3"||Q==="hex4"||Q==="hex8"||Q==="name");if(C){if(Q==="name"&&this._a===0)return this.toName();return this.toRgbString()}if(Q==="rgb")Y=this.toRgbString();if(Q==="prgb")Y=this.toPercentageRgbString();if(Q==="hex"||Q==="hex6")Y=this.toHexString();if(Q==="hex3")Y=this.toHexString(!0);if(Q==="hex4")Y=this.toHex8String(!0);if(Q==="hex8")Y=this.toHex8String();if(Q==="name")Y=this.toName();if(Q==="hsl")Y=this.toHslString();if(Q==="hsv")Y=this.toHsvString();return Y||this.toHexString()},clone:function(){return oA(this.toString())},_applyModification:function(Q,B){var Y=Q.apply(null,[this].concat([].slice.call(B)));return this._r=Y._r,this._g=Y._g,this._b=Y._b,this.setAlpha(Y._a),this},lighten:function(){return this._applyModification(ksQ,arguments)},brighten:function(){return this._applyModification(_sQ,arguments)},darken:function(){return this._applyModification(vsQ,arguments)},desaturate:function(){return this._applyModification(PsQ,arguments)},saturate:function(){return this._applyModification(TsQ,arguments)},greyscale:function(){return this._applyModification(SsQ,arguments)},spin:function(){return this._applyModification(ysQ,arguments)},_applyCombination:function(Q,B){return Q.apply(null,[this].concat([].slice.call(B)))},analogous:function(){return this._applyCombination(xsQ,arguments)},complement:function(){return this._applyCombination(hsQ,arguments)},monochromatic:function(){return this._applyCombination(fsQ,arguments)},splitcomplement:function(){return this._applyCombination(gsQ,arguments)},triad:function(){return this._applyCombination(SCA,[3])},tetrad:function(){return this._applyCombination(SCA,[4])}};oA.fromRatio=function(A,Q){if(R3(A)=="object"){var B={};for(var Y in A)if(A.hasOwnProperty(Y))if(Y==="a")B[Y]=A[Y];else B[Y]=CH(A[Y]);A=B}return oA(A,Q)};function zsQ(A){var Q={r:0,g:0,b:0},B=1,Y=null,J=null,C=null,X=!1,G=!1;if(typeof A=="string")A=csQ(A);if(R3(A)=="object"){if(HX(A.r)&&HX(A.g)&&HX(A.b))Q=RsQ(A.r,A.g,A.b),X=!0,G=String(A.r).substr(-1)==="%"?"prgb":"rgb";else if(HX(A.h)&&HX(A.s)&&HX(A.v))Y=CH(A.s),J=CH(A.v),Q=jsQ(A.h,Y,J),X=!0,G="hsv";else if(HX(A.h)&&HX(A.s)&&HX(A.l))Y=CH(A.s),C=CH(A.l),Q=wsQ(A.h,Y,C),X=!0,G="hsl";if(A.hasOwnProperty("a"))B=A.a}return B=_CA(B),{ok:X,format:A.format||G,r:Math.min(255,Math.max(Q.r,0)),g:Math.min(255,Math.max(Q.g,0)),b:Math.min(255,Math.max(Q.b,0)),a:B}}function RsQ(A,Q,B){return{r:N0(A,255)*255,g:N0(Q,255)*255,b:N0(B,255)*255}}function jCA(A,Q,B){A=N0(A,255),Q=N0(Q,255),B=N0(B,255);var Y=Math.max(A,Q,B),J=Math.min(A,Q,B),C,X,G=(Y+J)/2;if(Y==J)C=X=0;else{var F=Y-J;switch(X=G>0.5?F/(2-Y-J):F/(Y+J),Y){case A:C=(Q-B)/F+(Q1)U-=1;if(U<0.16666666666666666)return W+(Z-W)*6*U;if(U<0.5)return Z;if(U<0.6666666666666666)return W+(Z-W)*(0.6666666666666666-U)*6;return W}if(Q===0)Y=J=C=B;else{var G=B<0.5?B*(1+Q):B+Q-B*Q,F=2*B-G;Y=X(F,G,A+0.3333333333333333),J=X(F,G,A),C=X(F,G,A-0.3333333333333333)}return{r:Y*255,g:J*255,b:C*255}}function OCA(A,Q,B){A=N0(A,255),Q=N0(Q,255),B=N0(B,255);var Y=Math.max(A,Q,B),J=Math.min(A,Q,B),C,X,G=Y,F=Y-J;if(X=Y===0?0:F/Y,Y==J)C=0;else{switch(Y){case A:C=(Q-B)/F+(Q>1)+720)%360;--Q;)Y.h=(Y.h+J)%360,C.push(oA(Y));return C}function fsQ(A,Q){Q=Q||6;var B=oA(A).toHsv(),Y=B.h,J=B.s,C=B.v,X=[],G=1/Q;while(Q--)X.push(oA({h:Y,s:J,v:C})),C=(C+G)%1;return X}oA.mix=function(A,Q,B){B=B===0?0:B||50;var Y=oA(A).toRgb(),J=oA(Q).toRgb(),C=B/100,X={r:(J.r-Y.r)*C+Y.r,g:(J.g-Y.g)*C+Y.g,b:(J.b-Y.b)*C+Y.b,a:(J.a-Y.a)*C+Y.a};return oA(X)};oA.readability=function(A,Q){var B=oA(A),Y=oA(Q);return(Math.max(B.getLuminance(),Y.getLuminance())+0.05)/(Math.min(B.getLuminance(),Y.getLuminance())+0.05)};oA.isReadable=function(A,Q,B){var Y=oA.readability(A,Q),J,C;switch(C=!1,J=lsQ(B),J.level+J.size){case"AAsmall":case"AAAlarge":C=Y>=4.5;break;case"AAlarge":C=Y>=3;break;case"AAAsmall":C=Y>=7;break}return C};oA.mostReadable=function(A,Q,B){var Y=null,J=0,C,X,G,F;B=B||{},X=B.includeFallbackColors,G=B.level,F=B.size;for(var W=0;WJ)J=C,Y=oA(Q[W]);if(oA.isReadable(A,Y,{level:G,size:F})||!X)return Y;else return B.includeFallbackColors=!1,oA.mostReadable(A,["#fff","#000"],B)};var Lg=oA.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},bsQ=oA.hexNames=msQ(Lg);function msQ(A){var Q={};for(var B in A)if(A.hasOwnProperty(B))Q[A[B]]=B;return Q}function _CA(A){if(A=parseFloat(A),isNaN(A)||A<0||A>1)A=1;return A}function N0(A,Q){if(usQ(A))A="100%";var B=dsQ(A);if(A=Math.min(Q,Math.max(0,parseFloat(A))),B)A=parseInt(A*Q,10)/100;if(Math.abs(A-Q)<0.000001)return 1;return A%Q/parseFloat(Q)}function w3(A){return Math.min(1,Math.max(0,A))}function X8(A){return parseInt(A,16)}function usQ(A){return typeof A=="string"&&A.indexOf(".")!=-1&&parseFloat(A)===1}function dsQ(A){return typeof A==="string"&&A.indexOf("%")!=-1}function qC(A){return A.length==1?"0"+A:""+A}function CH(A){if(A<=1)A=A*100+"%";return A}function vCA(A){return Math.round(parseFloat(A)*255).toString(16)}function kCA(A){return X8(A)/255}var LC=function(){var A="[-\\+]?\\d+%?",Q="[-\\+]?\\d*\\.\\d+%?",B="(?:"+Q+")|(?:"+A+")",Y="[\\s|\\(]+("+B+")[,|\\s]+("+B+")[,|\\s]+("+B+")\\s*\\)?",J="[\\s|\\(]+("+B+")[,|\\s]+("+B+")[,|\\s]+("+B+")[,|\\s]+("+B+")\\s*\\)?";return{CSS_UNIT:new RegExp(B),rgb:new RegExp("rgb"+Y),rgba:new RegExp("rgba"+J),hsl:new RegExp("hsl"+Y),hsla:new RegExp("hsla"+J),hsv:new RegExp("hsv"+Y),hsva:new RegExp("hsva"+J),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/}}();function HX(A){return!!LC.CSS_UNIT.exec(A)}function csQ(A){A=A.replace(qsQ,"").replace(MsQ,"").toLowerCase();var Q=!1;if(Lg[A])A=Lg[A],Q=!0;else if(A=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var B;if(B=LC.rgb.exec(A))return{r:B[1],g:B[2],b:B[3]};if(B=LC.rgba.exec(A))return{r:B[1],g:B[2],b:B[3],a:B[4]};if(B=LC.hsl.exec(A))return{h:B[1],s:B[2],l:B[3]};if(B=LC.hsla.exec(A))return{h:B[1],s:B[2],l:B[3],a:B[4]};if(B=LC.hsv.exec(A))return{h:B[1],s:B[2],v:B[3]};if(B=LC.hsva.exec(A))return{h:B[1],s:B[2],v:B[3],a:B[4]};if(B=LC.hex8.exec(A))return{r:X8(B[1]),g:X8(B[2]),b:X8(B[3]),a:kCA(B[4]),format:Q?"name":"hex8"};if(B=LC.hex6.exec(A))return{r:X8(B[1]),g:X8(B[2]),b:X8(B[3]),format:Q?"name":"hex"};if(B=LC.hex4.exec(A))return{r:X8(B[1]+""+B[1]),g:X8(B[2]+""+B[2]),b:X8(B[3]+""+B[3]),a:kCA(B[4]+""+B[4]),format:Q?"name":"hex8"};if(B=LC.hex3.exec(A))return{r:X8(B[1]+""+B[1]),g:X8(B[2]+""+B[2]),b:X8(B[3]+""+B[3]),format:Q?"name":"hex"};return!1}function lsQ(A){var Q,B;if(A=A||{level:"AA",size:"small"},Q=(A.level||"AA").toUpperCase(),B=(A.size||"small").toLowerCase(),Q!=="AA"&&Q!=="AAA")Q="AA";if(B!=="small"&&B!=="large")B="small";return{level:Q,size:B}}function G8(A){let Q={width:A.bitmap.width,height:A.bitmap.height,data:Buffer.from(A.bitmap.data)};return new A.constructor(Q)}function G5(A,Q,B,Y,J,C){let X,G,F,W,Z;if(typeof Q==="function")Z=Q,X=0,G=0,F=A.bitmap.width,W=A.bitmap.height;else{if(X=Q,typeof B!=="number")throw Error("y must be a number");if(G=B,typeof Y!=="number")throw Error("w must be a number");if(F=Y,typeof J!=="number")throw Error("h must be a number");if(W=J,typeof C!=="function")throw Error("cb must be a function");Z=C}X=Math.round(X),G=Math.round(G),F=Math.round(F),W=Math.round(W);let U=Z.bind(A);for(let $=G;$Math.pow(G,2),{max:Y}=Math,J=195075,C="a"in A?A.a:255,X="a"in Q?Q.a:255;return(Y(B(A.r-Q.r),B(A.r-Q.r-C+X))+Y(B(A.g-Q.g),B(A.g-Q.g-C+X))+Y(B(A.b-Q.b),B(A.b-Q.b-C+X)))/195075}function L0(A){return A=Math.max(A,0),A=Math.min(A,255),A}function hCA(A){if(typeof A==="number")return A;return parseInt(oA(A).toHex8(),16)}function gCA(A,Q={}){return G5({bitmap:A},0,0,A.width,A.height,function(B,Y,J){let C=A.data[J+0],X=A.data[J+1],G=A.data[J+2],F=A.data[J+3];A.data[J+0]=F,A.data[J+1]=G,A.data[J+2]=X,A.data[J+3]=C}),wCA({...A,...Q}).data}function xCA(A,Q){let B=RCA(A,Q);return G5({bitmap:B},0,0,B.width,B.height,function(Y,J,C){let X=B.data[C+1],G=B.data[C+2],F=B.data[C+3];B.data[C+0]=F,B.data[C+1]=G,B.data[C+2]=X,B.data[C+3]=255}),B}function fCA(){return{mime:"image/x-ms-bmp",encode:gCA,decode:xCA}}function j3(){return{mime:"image/bmp",encode:gCA,decode:xCA}}var d1A=qA(qg(),1),F7=qA(u1A(),1);function x3(){return{mime:"image/gif",encode:async(A)=>{let Q=new F7.BitmapImage(A);F7.GifUtil.quantizeDekker(Q,256);let B=new F7.GifFrame(A);return(await new F7.GifCodec().encodeGif([B],{})).buffer},decode:(A)=>{let Q=new d1A.default.GifReader(A),B=Buffer.alloc(Q.width*Q.height*4);return Q.decodeAndBlitFrameRGBA(0,B),{data:B,width:Q.width,height:Q.height}}}}var hg=qA(r1A(),1);function b3(){return{mime:"image/jpeg",encode:(A,{quality:Q=100}={})=>hg.default.encode(A,Q).data,decode:(A,Q)=>hg.default.decode(A,Q)}}var u3=qA(u6A(),1);var m3;(function(A){A[A.AUTO=-1]="AUTO",A[A.NONE=0]="NONE",A[A.SUB=1]="SUB",A[A.UP=2]="UP",A[A.AVERAGE=3]="AVERAGE",A[A.PATH=4]="PATH"})(m3||(m3={}));var IH;(function(A){A[A.GRAYSCALE=0]="GRAYSCALE",A[A.COLOR=2]="COLOR",A[A.GRAYSCALE_ALPHA=4]="GRAYSCALE_ALPHA",A[A.COLOR_ALPHA=6]="COLOR_ALPHA"})(IH||(IH={}));function d3(){return{mime:"image/png",hasAlpha:!0,encode:(A,{deflateLevel:Q=9,deflateStrategy:B=3,filterType:Y=m3.AUTO,colorType:J,inputHasAlpha:C=!0,...X}={})=>{let G=new u3.PNG({width:A.width,height:A.height});return G.data=A.data,u3.PNG.sync.write(G,{...X,deflateLevel:Q,deflateStrategy:B,filterType:Y,colorType:typeof J<"u"?J:C?IH.COLOR_ALPHA:IH.COLOR,inputHasAlpha:C})},decode:(A,Q)=>{let B=u3.PNG.sync.read(A,Q);return{data:B.data,width:B.width,height:B.height}}}}var kH=qA(SGA(),1);function kGA(A){if(typeof A==="number")return A;if(A instanceof Uint8Array)return A[0];if(typeof A[0]==="string")return parseInt(A[0]);return A[0]}function CR(){return{mime:"image/tiff",encode:(A)=>{let Q=kH.default.encodeImage(A.data,A.width,A.height);return Buffer.from(Q)},decode:(A)=>{let Q=kH.default.decode(A),B=Q[0];if(!B)throw Error("No page found in TIFF");if(!B.t256)throw Error("No image width found in TIFF");if(!B.t257)throw Error("No image height found in TIFF");Q.forEach((J)=>{kH.default.decodeImage(A,J)});let Y=kH.default.toRGBA8(B);return{data:Buffer.from(Y),width:kGA(B.t256),height:kGA(B.t257)}}}}var s={};fG(s,{void:()=>nAB,util:()=>WB,unknown:()=>pAB,union:()=>oAB,undefined:()=>dAB,tuple:()=>AQB,transformer:()=>ZQB,symbol:()=>uAB,string:()=>mGA,strictObject:()=>aAB,setErrorMap:()=>UAB,set:()=>YQB,record:()=>QQB,quotelessJson:()=>ZAB,promise:()=>WQB,preprocess:()=>EQB,pipeline:()=>KQB,ostring:()=>VQB,optional:()=>$QB,onumber:()=>IQB,oboolean:()=>HQB,objectUtil:()=>_x,object:()=>rAB,number:()=>uGA,nullable:()=>UQB,null:()=>cAB,never:()=>iAB,nativeEnum:()=>FQB,nan:()=>fAB,map:()=>BQB,makeIssue:()=>_H,literal:()=>XQB,lazy:()=>CQB,late:()=>gAB,isValid:()=>H7,isDirty:()=>GR,isAsync:()=>qU,isAborted:()=>XR,intersection:()=>eAB,instanceof:()=>xAB,getParsedType:()=>b1,getErrorMap:()=>LU,function:()=>JQB,enum:()=>GQB,effect:()=>ZQB,discriminatedUnion:()=>tAB,defaultErrorMap:()=>RX,datetimeRegex:()=>xGA,date:()=>mAB,custom:()=>bGA,coerce:()=>DQB,boolean:()=>dGA,bigint:()=>bAB,array:()=>sAB,any:()=>lAB,addIssueToContext:()=>xA,ZodVoid:()=>yH,ZodUnknown:()=>D7,ZodUnion:()=>OU,ZodUndefined:()=>wU,ZodType:()=>JB,ZodTuple:()=>u1,ZodTransformer:()=>TC,ZodSymbol:()=>vH,ZodString:()=>wC,ZodSet:()=>tW,ZodSchema:()=>JB,ZodRecord:()=>hH,ZodReadonly:()=>yU,ZodPromise:()=>eW,ZodPipeline:()=>fH,ZodParsedType:()=>kA,ZodOptional:()=>OC,ZodObject:()=>k0,ZodNumber:()=>N7,ZodNullable:()=>jX,ZodNull:()=>jU,ZodNever:()=>m1,ZodNativeEnum:()=>kU,ZodNaN:()=>xH,ZodMap:()=>gH,ZodLiteral:()=>SU,ZodLazy:()=>TU,ZodIssueCode:()=>RA,ZodIntersection:()=>PU,ZodFunction:()=>zU,ZodFirstPartyTypeKind:()=>zQ,ZodError:()=>T9,ZodEnum:()=>q7,ZodEffects:()=>TC,ZodDiscriminatedUnion:()=>FR,ZodDefault:()=>_U,ZodDate:()=>aW,ZodCatch:()=>vU,ZodBranded:()=>WR,ZodBoolean:()=>RU,ZodBigInt:()=>L7,ZodArray:()=>jC,ZodAny:()=>oW,Schema:()=>JB,ParseStatus:()=>YJ,OK:()=>LJ,NEVER:()=>NQB,INVALID:()=>LQ,EMPTY_PATH:()=>EAB,DIRTY:()=>rW,BRAND:()=>hAB});var WB;(function(A){A.assertEqual=(J)=>{};function Q(J){}A.assertIs=Q;function B(J){throw Error()}A.assertNever=B,A.arrayToEnum=(J)=>{let C={};for(let X of J)C[X]=X;return C},A.getValidEnumValues=(J)=>{let C=A.objectKeys(J).filter((G)=>typeof J[J[G]]!=="number"),X={};for(let G of C)X[G]=J[G];return A.objectValues(X)},A.objectValues=(J)=>{return A.objectKeys(J).map(function(C){return J[C]})},A.objectKeys=typeof Object.keys==="function"?(J)=>Object.keys(J):(J)=>{let C=[];for(let X in J)if(Object.prototype.hasOwnProperty.call(J,X))C.push(X);return C},A.find=(J,C)=>{for(let X of J)if(C(X))return X;return},A.isInteger=typeof Number.isInteger==="function"?(J)=>Number.isInteger(J):(J)=>typeof J==="number"&&Number.isFinite(J)&&Math.floor(J)===J;function Y(J,C=" | "){return J.map((X)=>typeof X==="string"?`'${X}'`:X).join(C)}A.joinValues=Y,A.jsonStringifyReplacer=(J,C)=>{if(typeof C==="bigint")return C.toString();return C}})(WB||(WB={}));var _x;(function(A){A.mergeShapes=(Q,B)=>{return{...Q,...B}}})(_x||(_x={}));var kA=WB.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),b1=(A)=>{switch(typeof A){case"undefined":return kA.undefined;case"string":return kA.string;case"number":return Number.isNaN(A)?kA.nan:kA.number;case"boolean":return kA.boolean;case"function":return kA.function;case"bigint":return kA.bigint;case"symbol":return kA.symbol;case"object":if(Array.isArray(A))return kA.array;if(A===null)return kA.null;if(A.then&&typeof A.then==="function"&&A.catch&&typeof A.catch==="function")return kA.promise;if(typeof Map<"u"&&A instanceof Map)return kA.map;if(typeof Set<"u"&&A instanceof Set)return kA.set;if(typeof Date<"u"&&A instanceof Date)return kA.date;return kA.object;default:return kA.unknown}};var RA=WB.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),ZAB=(A)=>{return JSON.stringify(A,null,2).replace(/"([^"]+)":/g,"$1:")};class T9 extends Error{get errors(){return this.issues}constructor(A){super();this.issues=[],this.addIssue=(B)=>{this.issues=[...this.issues,B]},this.addIssues=(B=[])=>{this.issues=[...this.issues,...B]};let Q=new.target.prototype;if(Object.setPrototypeOf)Object.setPrototypeOf(this,Q);else this.__proto__=Q;this.name="ZodError",this.issues=A}format(A){let Q=A||function(J){return J.message},B={_errors:[]},Y=(J)=>{for(let C of J.issues)if(C.code==="invalid_union")C.unionErrors.map(Y);else if(C.code==="invalid_return_type")Y(C.returnTypeError);else if(C.code==="invalid_arguments")Y(C.argumentsError);else if(C.path.length===0)B._errors.push(Q(C));else{let X=B,G=0;while(GQ.message){let Q={},B=[];for(let Y of this.issues)if(Y.path.length>0){let J=Y.path[0];Q[J]=Q[J]||[],Q[J].push(A(Y))}else B.push(A(Y));return{formErrors:B,fieldErrors:Q}}get formErrors(){return this.flatten()}}T9.create=(A)=>{return new T9(A)};var $AB=(A,Q)=>{let B;switch(A.code){case RA.invalid_type:if(A.received===kA.undefined)B="Required";else B=`Expected ${A.expected}, received ${A.received}`;break;case RA.invalid_literal:B=`Invalid literal value, expected ${JSON.stringify(A.expected,WB.jsonStringifyReplacer)}`;break;case RA.unrecognized_keys:B=`Unrecognized key(s) in object: ${WB.joinValues(A.keys,", ")}`;break;case RA.invalid_union:B="Invalid input";break;case RA.invalid_union_discriminator:B=`Invalid discriminator value. Expected ${WB.joinValues(A.options)}`;break;case RA.invalid_enum_value:B=`Invalid enum value. Expected ${WB.joinValues(A.options)}, received '${A.received}'`;break;case RA.invalid_arguments:B="Invalid function arguments";break;case RA.invalid_return_type:B="Invalid function return type";break;case RA.invalid_date:B="Invalid date";break;case RA.invalid_string:if(typeof A.validation==="object")if("includes"in A.validation){if(B=`Invalid input: must include "${A.validation.includes}"`,typeof A.validation.position==="number")B=`${B} at one or more positions greater than or equal to ${A.validation.position}`}else if("startsWith"in A.validation)B=`Invalid input: must start with "${A.validation.startsWith}"`;else if("endsWith"in A.validation)B=`Invalid input: must end with "${A.validation.endsWith}"`;else WB.assertNever(A.validation);else if(A.validation!=="regex")B=`Invalid ${A.validation}`;else B="Invalid";break;case RA.too_small:if(A.type==="array")B=`Array must contain ${A.exact?"exactly":A.inclusive?"at least":"more than"} ${A.minimum} element(s)`;else if(A.type==="string")B=`String must contain ${A.exact?"exactly":A.inclusive?"at least":"over"} ${A.minimum} character(s)`;else if(A.type==="number")B=`Number must be ${A.exact?"exactly equal to ":A.inclusive?"greater than or equal to ":"greater than "}${A.minimum}`;else if(A.type==="bigint")B=`Number must be ${A.exact?"exactly equal to ":A.inclusive?"greater than or equal to ":"greater than "}${A.minimum}`;else if(A.type==="date")B=`Date must be ${A.exact?"exactly equal to ":A.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(A.minimum))}`;else B="Invalid input";break;case RA.too_big:if(A.type==="array")B=`Array must contain ${A.exact?"exactly":A.inclusive?"at most":"less than"} ${A.maximum} element(s)`;else if(A.type==="string")B=`String must contain ${A.exact?"exactly":A.inclusive?"at most":"under"} ${A.maximum} character(s)`;else if(A.type==="number")B=`Number must be ${A.exact?"exactly":A.inclusive?"less than or equal to":"less than"} ${A.maximum}`;else if(A.type==="bigint")B=`BigInt must be ${A.exact?"exactly":A.inclusive?"less than or equal to":"less than"} ${A.maximum}`;else if(A.type==="date")B=`Date must be ${A.exact?"exactly":A.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(A.maximum))}`;else B="Invalid input";break;case RA.custom:B="Invalid input";break;case RA.invalid_intersection_types:B="Intersection results could not be merged";break;case RA.not_multiple_of:B=`Number must be a multiple of ${A.multipleOf}`;break;case RA.not_finite:B="Number must be finite";break;default:B=Q.defaultError,WB.assertNever(A)}return{message:B}},RX=$AB;var _GA=RX;function UAB(A){_GA=A}function LU(){return _GA}var _H=(A)=>{let{data:Q,path:B,errorMaps:Y,issueData:J}=A,C=[...B,...J.path||[]],X={...J,path:C};if(J.message!==void 0)return{...J,path:C,message:J.message};let G="",F=Y.filter((W)=>!!W).slice().reverse();for(let W of F)G=W(X,{data:Q,defaultError:G}).message;return{...J,path:C,message:G}},EAB=[];function xA(A,Q){let B=LU(),Y=_H({issueData:Q,data:A.data,path:A.path,errorMaps:[A.common.contextualErrorMap,A.schemaErrorMap,B,B===RX?void 0:RX].filter((J)=>!!J)});A.common.issues.push(Y)}class YJ{constructor(){this.value="valid"}dirty(){if(this.value==="valid")this.value="dirty"}abort(){if(this.value!=="aborted")this.value="aborted"}static mergeArray(A,Q){let B=[];for(let Y of Q){if(Y.status==="aborted")return LQ;if(Y.status==="dirty")A.dirty();B.push(Y.value)}return{status:A.value,value:B}}static async mergeObjectAsync(A,Q){let B=[];for(let Y of Q){let J=await Y.key,C=await Y.value;B.push({key:J,value:C})}return YJ.mergeObjectSync(A,B)}static mergeObjectSync(A,Q){let B={};for(let Y of Q){let{key:J,value:C}=Y;if(J.status==="aborted")return LQ;if(C.status==="aborted")return LQ;if(J.status==="dirty")A.dirty();if(C.status==="dirty")A.dirty();if(J.value!=="__proto__"&&(typeof C.value<"u"||Y.alwaysSet))B[J.value]=C.value}return{status:A.value,value:B}}}var LQ=Object.freeze({status:"aborted"}),rW=(A)=>({status:"dirty",value:A}),LJ=(A)=>({status:"valid",value:A}),XR=(A)=>A.status==="aborted",GR=(A)=>A.status==="dirty",H7=(A)=>A.status==="valid",qU=(A)=>typeof Promise<"u"&&A instanceof Promise;var tA;(function(A){A.errToObj=(Q)=>typeof Q==="string"?{message:Q}:Q||{},A.toString=(Q)=>typeof Q==="string"?Q:Q?.message})(tA||(tA={}));class PC{constructor(A,Q,B,Y){this._cachedPath=[],this.parent=A,this.data=Q,this._path=B,this._key=Y}get path(){if(!this._cachedPath.length)if(Array.isArray(this._key))this._cachedPath.push(...this._path,...this._key);else this._cachedPath.push(...this._path,this._key);return this._cachedPath}}var vGA=(A,Q)=>{if(H7(Q))return{success:!0,data:Q.value};else{if(!A.common.issues.length)throw Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let B=new T9(A.common.issues);return this._error=B,this._error}}}};function pQ(A){if(!A)return{};let{errorMap:Q,invalid_type_error:B,required_error:Y,description:J}=A;if(Q&&(B||Y))throw Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);if(Q)return{errorMap:Q,description:J};return{errorMap:(X,G)=>{let{message:F}=A;if(X.code==="invalid_enum_value")return{message:F??G.defaultError};if(typeof G.data>"u")return{message:F??Y??G.defaultError};if(X.code!=="invalid_type")return{message:G.defaultError};return{message:F??B??G.defaultError}},description:J}}class JB{get description(){return this._def.description}_getType(A){return b1(A.data)}_getOrReturnCtx(A,Q){return Q||{common:A.parent.common,data:A.data,parsedType:b1(A.data),schemaErrorMap:this._def.errorMap,path:A.path,parent:A.parent}}_processInputParams(A){return{status:new YJ,ctx:{common:A.parent.common,data:A.data,parsedType:b1(A.data),schemaErrorMap:this._def.errorMap,path:A.path,parent:A.parent}}}_parseSync(A){let Q=this._parse(A);if(qU(Q))throw Error("Synchronous parse encountered promise.");return Q}_parseAsync(A){let Q=this._parse(A);return Promise.resolve(Q)}parse(A,Q){let B=this.safeParse(A,Q);if(B.success)return B.data;throw B.error}safeParse(A,Q){let B={common:{issues:[],async:Q?.async??!1,contextualErrorMap:Q?.errorMap},path:Q?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:A,parsedType:b1(A)},Y=this._parseSync({data:A,path:B.path,parent:B});return vGA(B,Y)}"~validate"(A){let Q={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:A,parsedType:b1(A)};if(!this["~standard"].async)try{let B=this._parseSync({data:A,path:[],parent:Q});return H7(B)?{value:B.value}:{issues:Q.common.issues}}catch(B){if(B?.message?.toLowerCase()?.includes("encountered"))this["~standard"].async=!0;Q.common={issues:[],async:!0}}return this._parseAsync({data:A,path:[],parent:Q}).then((B)=>H7(B)?{value:B.value}:{issues:Q.common.issues})}async parseAsync(A,Q){let B=await this.safeParseAsync(A,Q);if(B.success)return B.data;throw B.error}async safeParseAsync(A,Q){let B={common:{issues:[],contextualErrorMap:Q?.errorMap,async:!0},path:Q?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:A,parsedType:b1(A)},Y=this._parse({data:A,path:B.path,parent:B}),J=await(qU(Y)?Y:Promise.resolve(Y));return vGA(B,J)}refine(A,Q){let B=(Y)=>{if(typeof Q==="string"||typeof Q>"u")return{message:Q};else if(typeof Q==="function")return Q(Y);else return Q};return this._refinement((Y,J)=>{let C=A(Y),X=()=>J.addIssue({code:RA.custom,...B(Y)});if(typeof Promise<"u"&&C instanceof Promise)return C.then((G)=>{if(!G)return X(),!1;else return!0});if(!C)return X(),!1;else return!0})}refinement(A,Q){return this._refinement((B,Y)=>{if(!A(B))return Y.addIssue(typeof Q==="function"?Q(B,Y):Q),!1;else return!0})}_refinement(A){return new TC({schema:this,typeName:zQ.ZodEffects,effect:{type:"refinement",refinement:A}})}superRefine(A){return this._refinement(A)}constructor(A){this.spa=this.safeParseAsync,this._def=A,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:(Q)=>this["~validate"](Q)}}optional(){return OC.create(this,this._def)}nullable(){return jX.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return jC.create(this)}promise(){return eW.create(this,this._def)}or(A){return OU.create([this,A],this._def)}and(A){return PU.create(this,A,this._def)}transform(A){return new TC({...pQ(this._def),schema:this,typeName:zQ.ZodEffects,effect:{type:"transform",transform:A}})}default(A){let Q=typeof A==="function"?A:()=>A;return new _U({...pQ(this._def),innerType:this,defaultValue:Q,typeName:zQ.ZodDefault})}brand(){return new WR({typeName:zQ.ZodBranded,type:this,...pQ(this._def)})}catch(A){let Q=typeof A==="function"?A:()=>A;return new vU({...pQ(this._def),innerType:this,catchValue:Q,typeName:zQ.ZodCatch})}describe(A){return new this.constructor({...this._def,description:A})}pipe(A){return fH.create(this,A)}readonly(){return yU.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}var KAB=/^c[^\s-]{8,}$/i,VAB=/^[0-9a-z]+$/,IAB=/^[0-9A-HJKMNP-TV-Z]{26}$/i,HAB=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,DAB=/^[a-z0-9_-]{21}$/i,NAB=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,LAB=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,qAB=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,MAB="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",vx,zAB=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,RAB=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,wAB=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,jAB=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,OAB=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,PAB=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,hGA="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",TAB=new RegExp(`^${hGA}$`);function gGA(A){let Q="[0-5]\\d";if(A.precision)Q=`${Q}\\.\\d{${A.precision}}`;else if(A.precision==null)Q=`${Q}(\\.\\d+)?`;let B=A.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${Q})${B}`}function SAB(A){return new RegExp(`^${gGA(A)}$`)}function xGA(A){let Q=`${hGA}T${gGA(A)}`,B=[];if(B.push(A.local?"Z?":"Z"),A.offset)B.push("([+-]\\d{2}:?\\d{2})");return Q=`${Q}(${B.join("|")})`,new RegExp(`^${Q}$`)}function kAB(A,Q){if((Q==="v4"||!Q)&&zAB.test(A))return!0;if((Q==="v6"||!Q)&&wAB.test(A))return!0;return!1}function _AB(A,Q){if(!NAB.test(A))return!1;try{let[B]=A.split(".");if(!B)return!1;let Y=B.replace(/-/g,"+").replace(/_/g,"/").padEnd(B.length+(4-B.length%4)%4,"="),J=JSON.parse(atob(Y));if(typeof J!=="object"||J===null)return!1;if("typ"in J&&J?.typ!=="JWT")return!1;if(!J.alg)return!1;if(Q&&J.alg!==Q)return!1;return!0}catch{return!1}}function vAB(A,Q){if((Q==="v4"||!Q)&&RAB.test(A))return!0;if((Q==="v6"||!Q)&&jAB.test(A))return!0;return!1}class wC extends JB{_parse(A){if(this._def.coerce)A.data=String(A.data);if(this._getType(A)!==kA.string){let J=this._getOrReturnCtx(A);return xA(J,{code:RA.invalid_type,expected:kA.string,received:J.parsedType}),LQ}let B=new YJ,Y=void 0;for(let J of this._def.checks)if(J.kind==="min"){if(A.data.lengthJ.value)Y=this._getOrReturnCtx(A,Y),xA(Y,{code:RA.too_big,maximum:J.value,type:"string",inclusive:!0,exact:!1,message:J.message}),B.dirty()}else if(J.kind==="length"){let C=A.data.length>J.value,X=A.data.lengthA.test(Y),{validation:Q,code:RA.invalid_string,...tA.errToObj(B)})}_addCheck(A){return new wC({...this._def,checks:[...this._def.checks,A]})}email(A){return this._addCheck({kind:"email",...tA.errToObj(A)})}url(A){return this._addCheck({kind:"url",...tA.errToObj(A)})}emoji(A){return this._addCheck({kind:"emoji",...tA.errToObj(A)})}uuid(A){return this._addCheck({kind:"uuid",...tA.errToObj(A)})}nanoid(A){return this._addCheck({kind:"nanoid",...tA.errToObj(A)})}cuid(A){return this._addCheck({kind:"cuid",...tA.errToObj(A)})}cuid2(A){return this._addCheck({kind:"cuid2",...tA.errToObj(A)})}ulid(A){return this._addCheck({kind:"ulid",...tA.errToObj(A)})}base64(A){return this._addCheck({kind:"base64",...tA.errToObj(A)})}base64url(A){return this._addCheck({kind:"base64url",...tA.errToObj(A)})}jwt(A){return this._addCheck({kind:"jwt",...tA.errToObj(A)})}ip(A){return this._addCheck({kind:"ip",...tA.errToObj(A)})}cidr(A){return this._addCheck({kind:"cidr",...tA.errToObj(A)})}datetime(A){if(typeof A==="string")return this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:A});return this._addCheck({kind:"datetime",precision:typeof A?.precision>"u"?null:A?.precision,offset:A?.offset??!1,local:A?.local??!1,...tA.errToObj(A?.message)})}date(A){return this._addCheck({kind:"date",message:A})}time(A){if(typeof A==="string")return this._addCheck({kind:"time",precision:null,message:A});return this._addCheck({kind:"time",precision:typeof A?.precision>"u"?null:A?.precision,...tA.errToObj(A?.message)})}duration(A){return this._addCheck({kind:"duration",...tA.errToObj(A)})}regex(A,Q){return this._addCheck({kind:"regex",regex:A,...tA.errToObj(Q)})}includes(A,Q){return this._addCheck({kind:"includes",value:A,position:Q?.position,...tA.errToObj(Q?.message)})}startsWith(A,Q){return this._addCheck({kind:"startsWith",value:A,...tA.errToObj(Q)})}endsWith(A,Q){return this._addCheck({kind:"endsWith",value:A,...tA.errToObj(Q)})}min(A,Q){return this._addCheck({kind:"min",value:A,...tA.errToObj(Q)})}max(A,Q){return this._addCheck({kind:"max",value:A,...tA.errToObj(Q)})}length(A,Q){return this._addCheck({kind:"length",value:A,...tA.errToObj(Q)})}nonempty(A){return this.min(1,tA.errToObj(A))}trim(){return new wC({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new wC({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new wC({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find((A)=>A.kind==="datetime")}get isDate(){return!!this._def.checks.find((A)=>A.kind==="date")}get isTime(){return!!this._def.checks.find((A)=>A.kind==="time")}get isDuration(){return!!this._def.checks.find((A)=>A.kind==="duration")}get isEmail(){return!!this._def.checks.find((A)=>A.kind==="email")}get isURL(){return!!this._def.checks.find((A)=>A.kind==="url")}get isEmoji(){return!!this._def.checks.find((A)=>A.kind==="emoji")}get isUUID(){return!!this._def.checks.find((A)=>A.kind==="uuid")}get isNANOID(){return!!this._def.checks.find((A)=>A.kind==="nanoid")}get isCUID(){return!!this._def.checks.find((A)=>A.kind==="cuid")}get isCUID2(){return!!this._def.checks.find((A)=>A.kind==="cuid2")}get isULID(){return!!this._def.checks.find((A)=>A.kind==="ulid")}get isIP(){return!!this._def.checks.find((A)=>A.kind==="ip")}get isCIDR(){return!!this._def.checks.find((A)=>A.kind==="cidr")}get isBase64(){return!!this._def.checks.find((A)=>A.kind==="base64")}get isBase64url(){return!!this._def.checks.find((A)=>A.kind==="base64url")}get minLength(){let A=null;for(let Q of this._def.checks)if(Q.kind==="min"){if(A===null||Q.value>A)A=Q.value}return A}get maxLength(){let A=null;for(let Q of this._def.checks)if(Q.kind==="max"){if(A===null||Q.value{return new wC({checks:[],typeName:zQ.ZodString,coerce:A?.coerce??!1,...pQ(A)})};function yAB(A,Q){let B=(A.toString().split(".")[1]||"").length,Y=(Q.toString().split(".")[1]||"").length,J=B>Y?B:Y,C=Number.parseInt(A.toFixed(J).replace(".","")),X=Number.parseInt(Q.toFixed(J).replace(".",""));return C%X/10**J}class N7 extends JB{constructor(){super(...arguments);this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(A){if(this._def.coerce)A.data=Number(A.data);if(this._getType(A)!==kA.number){let J=this._getOrReturnCtx(A);return xA(J,{code:RA.invalid_type,expected:kA.number,received:J.parsedType}),LQ}let B=void 0,Y=new YJ;for(let J of this._def.checks)if(J.kind==="int"){if(!WB.isInteger(A.data))B=this._getOrReturnCtx(A,B),xA(B,{code:RA.invalid_type,expected:"integer",received:"float",message:J.message}),Y.dirty()}else if(J.kind==="min"){if(J.inclusive?A.dataJ.value:A.data>=J.value)B=this._getOrReturnCtx(A,B),xA(B,{code:RA.too_big,maximum:J.value,type:"number",inclusive:J.inclusive,exact:!1,message:J.message}),Y.dirty()}else if(J.kind==="multipleOf"){if(yAB(A.data,J.value)!==0)B=this._getOrReturnCtx(A,B),xA(B,{code:RA.not_multiple_of,multipleOf:J.value,message:J.message}),Y.dirty()}else if(J.kind==="finite"){if(!Number.isFinite(A.data))B=this._getOrReturnCtx(A,B),xA(B,{code:RA.not_finite,message:J.message}),Y.dirty()}else WB.assertNever(J);return{status:Y.value,value:A.data}}gte(A,Q){return this.setLimit("min",A,!0,tA.toString(Q))}gt(A,Q){return this.setLimit("min",A,!1,tA.toString(Q))}lte(A,Q){return this.setLimit("max",A,!0,tA.toString(Q))}lt(A,Q){return this.setLimit("max",A,!1,tA.toString(Q))}setLimit(A,Q,B,Y){return new N7({...this._def,checks:[...this._def.checks,{kind:A,value:Q,inclusive:B,message:tA.toString(Y)}]})}_addCheck(A){return new N7({...this._def,checks:[...this._def.checks,A]})}int(A){return this._addCheck({kind:"int",message:tA.toString(A)})}positive(A){return this._addCheck({kind:"min",value:0,inclusive:!1,message:tA.toString(A)})}negative(A){return this._addCheck({kind:"max",value:0,inclusive:!1,message:tA.toString(A)})}nonpositive(A){return this._addCheck({kind:"max",value:0,inclusive:!0,message:tA.toString(A)})}nonnegative(A){return this._addCheck({kind:"min",value:0,inclusive:!0,message:tA.toString(A)})}multipleOf(A,Q){return this._addCheck({kind:"multipleOf",value:A,message:tA.toString(Q)})}finite(A){return this._addCheck({kind:"finite",message:tA.toString(A)})}safe(A){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:tA.toString(A)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:tA.toString(A)})}get minValue(){let A=null;for(let Q of this._def.checks)if(Q.kind==="min"){if(A===null||Q.value>A)A=Q.value}return A}get maxValue(){let A=null;for(let Q of this._def.checks)if(Q.kind==="max"){if(A===null||Q.valueA.kind==="int"||A.kind==="multipleOf"&&WB.isInteger(A.value))}get isFinite(){let A=null,Q=null;for(let B of this._def.checks)if(B.kind==="finite"||B.kind==="int"||B.kind==="multipleOf")return!0;else if(B.kind==="min"){if(Q===null||B.value>Q)Q=B.value}else if(B.kind==="max"){if(A===null||B.value{return new N7({checks:[],typeName:zQ.ZodNumber,coerce:A?.coerce||!1,...pQ(A)})};class L7 extends JB{constructor(){super(...arguments);this.min=this.gte,this.max=this.lte}_parse(A){if(this._def.coerce)try{A.data=BigInt(A.data)}catch{return this._getInvalidInput(A)}if(this._getType(A)!==kA.bigint)return this._getInvalidInput(A);let B=void 0,Y=new YJ;for(let J of this._def.checks)if(J.kind==="min"){if(J.inclusive?A.dataJ.value:A.data>=J.value)B=this._getOrReturnCtx(A,B),xA(B,{code:RA.too_big,type:"bigint",maximum:J.value,inclusive:J.inclusive,message:J.message}),Y.dirty()}else if(J.kind==="multipleOf"){if(A.data%J.value!==BigInt(0))B=this._getOrReturnCtx(A,B),xA(B,{code:RA.not_multiple_of,multipleOf:J.value,message:J.message}),Y.dirty()}else WB.assertNever(J);return{status:Y.value,value:A.data}}_getInvalidInput(A){let Q=this._getOrReturnCtx(A);return xA(Q,{code:RA.invalid_type,expected:kA.bigint,received:Q.parsedType}),LQ}gte(A,Q){return this.setLimit("min",A,!0,tA.toString(Q))}gt(A,Q){return this.setLimit("min",A,!1,tA.toString(Q))}lte(A,Q){return this.setLimit("max",A,!0,tA.toString(Q))}lt(A,Q){return this.setLimit("max",A,!1,tA.toString(Q))}setLimit(A,Q,B,Y){return new L7({...this._def,checks:[...this._def.checks,{kind:A,value:Q,inclusive:B,message:tA.toString(Y)}]})}_addCheck(A){return new L7({...this._def,checks:[...this._def.checks,A]})}positive(A){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:tA.toString(A)})}negative(A){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:tA.toString(A)})}nonpositive(A){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:tA.toString(A)})}nonnegative(A){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:tA.toString(A)})}multipleOf(A,Q){return this._addCheck({kind:"multipleOf",value:A,message:tA.toString(Q)})}get minValue(){let A=null;for(let Q of this._def.checks)if(Q.kind==="min"){if(A===null||Q.value>A)A=Q.value}return A}get maxValue(){let A=null;for(let Q of this._def.checks)if(Q.kind==="max"){if(A===null||Q.value{return new L7({checks:[],typeName:zQ.ZodBigInt,coerce:A?.coerce??!1,...pQ(A)})};class RU extends JB{_parse(A){if(this._def.coerce)A.data=Boolean(A.data);if(this._getType(A)!==kA.boolean){let B=this._getOrReturnCtx(A);return xA(B,{code:RA.invalid_type,expected:kA.boolean,received:B.parsedType}),LQ}return LJ(A.data)}}RU.create=(A)=>{return new RU({typeName:zQ.ZodBoolean,coerce:A?.coerce||!1,...pQ(A)})};class aW extends JB{_parse(A){if(this._def.coerce)A.data=new Date(A.data);if(this._getType(A)!==kA.date){let J=this._getOrReturnCtx(A);return xA(J,{code:RA.invalid_type,expected:kA.date,received:J.parsedType}),LQ}if(Number.isNaN(A.data.getTime())){let J=this._getOrReturnCtx(A);return xA(J,{code:RA.invalid_date}),LQ}let B=new YJ,Y=void 0;for(let J of this._def.checks)if(J.kind==="min"){if(A.data.getTime()J.value)Y=this._getOrReturnCtx(A,Y),xA(Y,{code:RA.too_big,message:J.message,inclusive:!0,exact:!1,maximum:J.value,type:"date"}),B.dirty()}else WB.assertNever(J);return{status:B.value,value:new Date(A.data.getTime())}}_addCheck(A){return new aW({...this._def,checks:[...this._def.checks,A]})}min(A,Q){return this._addCheck({kind:"min",value:A.getTime(),message:tA.toString(Q)})}max(A,Q){return this._addCheck({kind:"max",value:A.getTime(),message:tA.toString(Q)})}get minDate(){let A=null;for(let Q of this._def.checks)if(Q.kind==="min"){if(A===null||Q.value>A)A=Q.value}return A!=null?new Date(A):null}get maxDate(){let A=null;for(let Q of this._def.checks)if(Q.kind==="max"){if(A===null||Q.value{return new aW({checks:[],coerce:A?.coerce||!1,typeName:zQ.ZodDate,...pQ(A)})};class vH extends JB{_parse(A){if(this._getType(A)!==kA.symbol){let B=this._getOrReturnCtx(A);return xA(B,{code:RA.invalid_type,expected:kA.symbol,received:B.parsedType}),LQ}return LJ(A.data)}}vH.create=(A)=>{return new vH({typeName:zQ.ZodSymbol,...pQ(A)})};class wU extends JB{_parse(A){if(this._getType(A)!==kA.undefined){let B=this._getOrReturnCtx(A);return xA(B,{code:RA.invalid_type,expected:kA.undefined,received:B.parsedType}),LQ}return LJ(A.data)}}wU.create=(A)=>{return new wU({typeName:zQ.ZodUndefined,...pQ(A)})};class jU extends JB{_parse(A){if(this._getType(A)!==kA.null){let B=this._getOrReturnCtx(A);return xA(B,{code:RA.invalid_type,expected:kA.null,received:B.parsedType}),LQ}return LJ(A.data)}}jU.create=(A)=>{return new jU({typeName:zQ.ZodNull,...pQ(A)})};class oW extends JB{constructor(){super(...arguments);this._any=!0}_parse(A){return LJ(A.data)}}oW.create=(A)=>{return new oW({typeName:zQ.ZodAny,...pQ(A)})};class D7 extends JB{constructor(){super(...arguments);this._unknown=!0}_parse(A){return LJ(A.data)}}D7.create=(A)=>{return new D7({typeName:zQ.ZodUnknown,...pQ(A)})};class m1 extends JB{_parse(A){let Q=this._getOrReturnCtx(A);return xA(Q,{code:RA.invalid_type,expected:kA.never,received:Q.parsedType}),LQ}}m1.create=(A)=>{return new m1({typeName:zQ.ZodNever,...pQ(A)})};class yH extends JB{_parse(A){if(this._getType(A)!==kA.undefined){let B=this._getOrReturnCtx(A);return xA(B,{code:RA.invalid_type,expected:kA.void,received:B.parsedType}),LQ}return LJ(A.data)}}yH.create=(A)=>{return new yH({typeName:zQ.ZodVoid,...pQ(A)})};class jC extends JB{_parse(A){let{ctx:Q,status:B}=this._processInputParams(A),Y=this._def;if(Q.parsedType!==kA.array)return xA(Q,{code:RA.invalid_type,expected:kA.array,received:Q.parsedType}),LQ;if(Y.exactLength!==null){let C=Q.data.length>Y.exactLength.value,X=Q.data.lengthY.maxLength.value)xA(Q,{code:RA.too_big,maximum:Y.maxLength.value,type:"array",inclusive:!0,exact:!1,message:Y.maxLength.message}),B.dirty()}if(Q.common.async)return Promise.all([...Q.data].map((C,X)=>{return Y.type._parseAsync(new PC(Q,C,Q.path,X))})).then((C)=>{return YJ.mergeArray(B,C)});let J=[...Q.data].map((C,X)=>{return Y.type._parseSync(new PC(Q,C,Q.path,X))});return YJ.mergeArray(B,J)}get element(){return this._def.type}min(A,Q){return new jC({...this._def,minLength:{value:A,message:tA.toString(Q)}})}max(A,Q){return new jC({...this._def,maxLength:{value:A,message:tA.toString(Q)}})}length(A,Q){return new jC({...this._def,exactLength:{value:A,message:tA.toString(Q)}})}nonempty(A){return this.min(1,A)}}jC.create=(A,Q)=>{return new jC({type:A,minLength:null,maxLength:null,exactLength:null,typeName:zQ.ZodArray,...pQ(Q)})};function MU(A){if(A instanceof k0){let Q={};for(let B in A.shape){let Y=A.shape[B];Q[B]=OC.create(MU(Y))}return new k0({...A._def,shape:()=>Q})}else if(A instanceof jC)return new jC({...A._def,type:MU(A.element)});else if(A instanceof OC)return OC.create(MU(A.unwrap()));else if(A instanceof jX)return jX.create(MU(A.unwrap()));else if(A instanceof u1)return u1.create(A.items.map((Q)=>MU(Q)));else return A}class k0 extends JB{constructor(){super(...arguments);this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let A=this._def.shape(),Q=WB.objectKeys(A);return this._cached={shape:A,keys:Q},this._cached}_parse(A){if(this._getType(A)!==kA.object){let F=this._getOrReturnCtx(A);return xA(F,{code:RA.invalid_type,expected:kA.object,received:F.parsedType}),LQ}let{status:B,ctx:Y}=this._processInputParams(A),{shape:J,keys:C}=this._getCached(),X=[];if(!(this._def.catchall instanceof m1&&this._def.unknownKeys==="strip")){for(let F in Y.data)if(!C.includes(F))X.push(F)}let G=[];for(let F of C){let W=J[F],Z=Y.data[F];G.push({key:{status:"valid",value:F},value:W._parse(new PC(Y,Z,Y.path,F)),alwaysSet:F in Y.data})}if(this._def.catchall instanceof m1){let F=this._def.unknownKeys;if(F==="passthrough")for(let W of X)G.push({key:{status:"valid",value:W},value:{status:"valid",value:Y.data[W]}});else if(F==="strict"){if(X.length>0)xA(Y,{code:RA.unrecognized_keys,keys:X}),B.dirty()}else if(F==="strip");else throw Error("Internal ZodObject error: invalid unknownKeys value.")}else{let F=this._def.catchall;for(let W of X){let Z=Y.data[W];G.push({key:{status:"valid",value:W},value:F._parse(new PC(Y,Z,Y.path,W)),alwaysSet:W in Y.data})}}if(Y.common.async)return Promise.resolve().then(async()=>{let F=[];for(let W of G){let Z=await W.key,U=await W.value;F.push({key:Z,value:U,alwaysSet:W.alwaysSet})}return F}).then((F)=>{return YJ.mergeObjectSync(B,F)});else return YJ.mergeObjectSync(B,G)}get shape(){return this._def.shape()}strict(A){return tA.errToObj,new k0({...this._def,unknownKeys:"strict",...A!==void 0?{errorMap:(Q,B)=>{let Y=this._def.errorMap?.(Q,B).message??B.defaultError;if(Q.code==="unrecognized_keys")return{message:tA.errToObj(A).message??Y};return{message:Y}}}:{}})}strip(){return new k0({...this._def,unknownKeys:"strip"})}passthrough(){return new k0({...this._def,unknownKeys:"passthrough"})}extend(A){return new k0({...this._def,shape:()=>({...this._def.shape(),...A})})}merge(A){return new k0({unknownKeys:A._def.unknownKeys,catchall:A._def.catchall,shape:()=>({...this._def.shape(),...A._def.shape()}),typeName:zQ.ZodObject})}setKey(A,Q){return this.augment({[A]:Q})}catchall(A){return new k0({...this._def,catchall:A})}pick(A){let Q={};for(let B of WB.objectKeys(A))if(A[B]&&this.shape[B])Q[B]=this.shape[B];return new k0({...this._def,shape:()=>Q})}omit(A){let Q={};for(let B of WB.objectKeys(this.shape))if(!A[B])Q[B]=this.shape[B];return new k0({...this._def,shape:()=>Q})}deepPartial(){return MU(this)}partial(A){let Q={};for(let B of WB.objectKeys(this.shape)){let Y=this.shape[B];if(A&&!A[B])Q[B]=Y;else Q[B]=Y.optional()}return new k0({...this._def,shape:()=>Q})}required(A){let Q={};for(let B of WB.objectKeys(this.shape))if(A&&!A[B])Q[B]=this.shape[B];else{let J=this.shape[B];while(J instanceof OC)J=J._def.innerType;Q[B]=J}return new k0({...this._def,shape:()=>Q})}keyof(){return fGA(WB.objectKeys(this.shape))}}k0.create=(A,Q)=>{return new k0({shape:()=>A,unknownKeys:"strip",catchall:m1.create(),typeName:zQ.ZodObject,...pQ(Q)})};k0.strictCreate=(A,Q)=>{return new k0({shape:()=>A,unknownKeys:"strict",catchall:m1.create(),typeName:zQ.ZodObject,...pQ(Q)})};k0.lazycreate=(A,Q)=>{return new k0({shape:A,unknownKeys:"strip",catchall:m1.create(),typeName:zQ.ZodObject,...pQ(Q)})};class OU extends JB{_parse(A){let{ctx:Q}=this._processInputParams(A),B=this._def.options;function Y(J){for(let X of J)if(X.result.status==="valid")return X.result;for(let X of J)if(X.result.status==="dirty")return Q.common.issues.push(...X.ctx.common.issues),X.result;let C=J.map((X)=>new T9(X.ctx.common.issues));return xA(Q,{code:RA.invalid_union,unionErrors:C}),LQ}if(Q.common.async)return Promise.all(B.map(async(J)=>{let C={...Q,common:{...Q.common,issues:[]},parent:null};return{result:await J._parseAsync({data:Q.data,path:Q.path,parent:C}),ctx:C}})).then(Y);else{let J=void 0,C=[];for(let G of B){let F={...Q,common:{...Q.common,issues:[]},parent:null},W=G._parseSync({data:Q.data,path:Q.path,parent:F});if(W.status==="valid")return W;else if(W.status==="dirty"&&!J)J={result:W,ctx:F};if(F.common.issues.length)C.push(F.common.issues)}if(J)return Q.common.issues.push(...J.ctx.common.issues),J.result;let X=C.map((G)=>new T9(G));return xA(Q,{code:RA.invalid_union,unionErrors:X}),LQ}}get options(){return this._def.options}}OU.create=(A,Q)=>{return new OU({options:A,typeName:zQ.ZodUnion,...pQ(Q)})};var wX=(A)=>{if(A instanceof TU)return wX(A.schema);else if(A instanceof TC)return wX(A.innerType());else if(A instanceof SU)return[A.value];else if(A instanceof q7)return A.options;else if(A instanceof kU)return WB.objectValues(A.enum);else if(A instanceof _U)return wX(A._def.innerType);else if(A instanceof wU)return[void 0];else if(A instanceof jU)return[null];else if(A instanceof OC)return[void 0,...wX(A.unwrap())];else if(A instanceof jX)return[null,...wX(A.unwrap())];else if(A instanceof WR)return wX(A.unwrap());else if(A instanceof yU)return wX(A.unwrap());else if(A instanceof vU)return wX(A._def.innerType);else return[]};class FR extends JB{_parse(A){let{ctx:Q}=this._processInputParams(A);if(Q.parsedType!==kA.object)return xA(Q,{code:RA.invalid_type,expected:kA.object,received:Q.parsedType}),LQ;let B=this.discriminator,Y=Q.data[B],J=this.optionsMap.get(Y);if(!J)return xA(Q,{code:RA.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[B]}),LQ;if(Q.common.async)return J._parseAsync({data:Q.data,path:Q.path,parent:Q});else return J._parseSync({data:Q.data,path:Q.path,parent:Q})}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(A,Q,B){let Y=new Map;for(let J of Q){let C=wX(J.shape[A]);if(!C.length)throw Error(`A discriminator value for key \`${A}\` could not be extracted from all schema options`);for(let X of C){if(Y.has(X))throw Error(`Discriminator property ${String(A)} has duplicate value ${String(X)}`);Y.set(X,J)}}return new FR({typeName:zQ.ZodDiscriminatedUnion,discriminator:A,options:Q,optionsMap:Y,...pQ(B)})}}function yx(A,Q){let B=b1(A),Y=b1(Q);if(A===Q)return{valid:!0,data:A};else if(B===kA.object&&Y===kA.object){let J=WB.objectKeys(Q),C=WB.objectKeys(A).filter((G)=>J.indexOf(G)!==-1),X={...A,...Q};for(let G of C){let F=yx(A[G],Q[G]);if(!F.valid)return{valid:!1};X[G]=F.data}return{valid:!0,data:X}}else if(B===kA.array&&Y===kA.array){if(A.length!==Q.length)return{valid:!1};let J=[];for(let C=0;C{if(XR(J)||XR(C))return LQ;let X=yx(J.value,C.value);if(!X.valid)return xA(B,{code:RA.invalid_intersection_types}),LQ;if(GR(J)||GR(C))Q.dirty();return{status:Q.value,value:X.data}};if(B.common.async)return Promise.all([this._def.left._parseAsync({data:B.data,path:B.path,parent:B}),this._def.right._parseAsync({data:B.data,path:B.path,parent:B})]).then(([J,C])=>Y(J,C));else return Y(this._def.left._parseSync({data:B.data,path:B.path,parent:B}),this._def.right._parseSync({data:B.data,path:B.path,parent:B}))}}PU.create=(A,Q,B)=>{return new PU({left:A,right:Q,typeName:zQ.ZodIntersection,...pQ(B)})};class u1 extends JB{_parse(A){let{status:Q,ctx:B}=this._processInputParams(A);if(B.parsedType!==kA.array)return xA(B,{code:RA.invalid_type,expected:kA.array,received:B.parsedType}),LQ;if(B.data.lengththis._def.items.length)xA(B,{code:RA.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),Q.dirty();let J=[...B.data].map((C,X)=>{let G=this._def.items[X]||this._def.rest;if(!G)return null;return G._parse(new PC(B,C,B.path,X))}).filter((C)=>!!C);if(B.common.async)return Promise.all(J).then((C)=>{return YJ.mergeArray(Q,C)});else return YJ.mergeArray(Q,J)}get items(){return this._def.items}rest(A){return new u1({...this._def,rest:A})}}u1.create=(A,Q)=>{if(!Array.isArray(A))throw Error("You must pass an array of schemas to z.tuple([ ... ])");return new u1({items:A,typeName:zQ.ZodTuple,rest:null,...pQ(Q)})};class hH extends JB{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(A){let{status:Q,ctx:B}=this._processInputParams(A);if(B.parsedType!==kA.object)return xA(B,{code:RA.invalid_type,expected:kA.object,received:B.parsedType}),LQ;let Y=[],J=this._def.keyType,C=this._def.valueType;for(let X in B.data)Y.push({key:J._parse(new PC(B,X,B.path,X)),value:C._parse(new PC(B,B.data[X],B.path,X)),alwaysSet:X in B.data});if(B.common.async)return YJ.mergeObjectAsync(Q,Y);else return YJ.mergeObjectSync(Q,Y)}get element(){return this._def.valueType}static create(A,Q,B){if(Q instanceof JB)return new hH({keyType:A,valueType:Q,typeName:zQ.ZodRecord,...pQ(B)});return new hH({keyType:wC.create(),valueType:A,typeName:zQ.ZodRecord,...pQ(Q)})}}class gH extends JB{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(A){let{status:Q,ctx:B}=this._processInputParams(A);if(B.parsedType!==kA.map)return xA(B,{code:RA.invalid_type,expected:kA.map,received:B.parsedType}),LQ;let Y=this._def.keyType,J=this._def.valueType,C=[...B.data.entries()].map(([X,G],F)=>{return{key:Y._parse(new PC(B,X,B.path,[F,"key"])),value:J._parse(new PC(B,G,B.path,[F,"value"]))}});if(B.common.async){let X=new Map;return Promise.resolve().then(async()=>{for(let G of C){let F=await G.key,W=await G.value;if(F.status==="aborted"||W.status==="aborted")return LQ;if(F.status==="dirty"||W.status==="dirty")Q.dirty();X.set(F.value,W.value)}return{status:Q.value,value:X}})}else{let X=new Map;for(let G of C){let{key:F,value:W}=G;if(F.status==="aborted"||W.status==="aborted")return LQ;if(F.status==="dirty"||W.status==="dirty")Q.dirty();X.set(F.value,W.value)}return{status:Q.value,value:X}}}}gH.create=(A,Q,B)=>{return new gH({valueType:Q,keyType:A,typeName:zQ.ZodMap,...pQ(B)})};class tW extends JB{_parse(A){let{status:Q,ctx:B}=this._processInputParams(A);if(B.parsedType!==kA.set)return xA(B,{code:RA.invalid_type,expected:kA.set,received:B.parsedType}),LQ;let Y=this._def;if(Y.minSize!==null){if(B.data.sizeY.maxSize.value)xA(B,{code:RA.too_big,maximum:Y.maxSize.value,type:"set",inclusive:!0,exact:!1,message:Y.maxSize.message}),Q.dirty()}let J=this._def.valueType;function C(G){let F=new Set;for(let W of G){if(W.status==="aborted")return LQ;if(W.status==="dirty")Q.dirty();F.add(W.value)}return{status:Q.value,value:F}}let X=[...B.data.values()].map((G,F)=>J._parse(new PC(B,G,B.path,F)));if(B.common.async)return Promise.all(X).then((G)=>C(G));else return C(X)}min(A,Q){return new tW({...this._def,minSize:{value:A,message:tA.toString(Q)}})}max(A,Q){return new tW({...this._def,maxSize:{value:A,message:tA.toString(Q)}})}size(A,Q){return this.min(A,Q).max(A,Q)}nonempty(A){return this.min(1,A)}}tW.create=(A,Q)=>{return new tW({valueType:A,minSize:null,maxSize:null,typeName:zQ.ZodSet,...pQ(Q)})};class zU extends JB{constructor(){super(...arguments);this.validate=this.implement}_parse(A){let{ctx:Q}=this._processInputParams(A);if(Q.parsedType!==kA.function)return xA(Q,{code:RA.invalid_type,expected:kA.function,received:Q.parsedType}),LQ;function B(X,G){return _H({data:X,path:Q.path,errorMaps:[Q.common.contextualErrorMap,Q.schemaErrorMap,LU(),RX].filter((F)=>!!F),issueData:{code:RA.invalid_arguments,argumentsError:G}})}function Y(X,G){return _H({data:X,path:Q.path,errorMaps:[Q.common.contextualErrorMap,Q.schemaErrorMap,LU(),RX].filter((F)=>!!F),issueData:{code:RA.invalid_return_type,returnTypeError:G}})}let J={errorMap:Q.common.contextualErrorMap},C=Q.data;if(this._def.returns instanceof eW){let X=this;return LJ(async function(...G){let F=new T9([]),W=await X._def.args.parseAsync(G,J).catch(($)=>{throw F.addIssue(B(G,$)),F}),Z=await Reflect.apply(C,this,W);return await X._def.returns._def.type.parseAsync(Z,J).catch(($)=>{throw F.addIssue(Y(Z,$)),F})})}else{let X=this;return LJ(function(...G){let F=X._def.args.safeParse(G,J);if(!F.success)throw new T9([B(G,F.error)]);let W=Reflect.apply(C,this,F.data),Z=X._def.returns.safeParse(W,J);if(!Z.success)throw new T9([Y(W,Z.error)]);return Z.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...A){return new zU({...this._def,args:u1.create(A).rest(D7.create())})}returns(A){return new zU({...this._def,returns:A})}implement(A){return this.parse(A)}strictImplement(A){return this.parse(A)}static create(A,Q,B){return new zU({args:A?A:u1.create([]).rest(D7.create()),returns:Q||D7.create(),typeName:zQ.ZodFunction,...pQ(B)})}}class TU extends JB{get schema(){return this._def.getter()}_parse(A){let{ctx:Q}=this._processInputParams(A);return this._def.getter()._parse({data:Q.data,path:Q.path,parent:Q})}}TU.create=(A,Q)=>{return new TU({getter:A,typeName:zQ.ZodLazy,...pQ(Q)})};class SU extends JB{_parse(A){if(A.data!==this._def.value){let Q=this._getOrReturnCtx(A);return xA(Q,{received:Q.data,code:RA.invalid_literal,expected:this._def.value}),LQ}return{status:"valid",value:A.data}}get value(){return this._def.value}}SU.create=(A,Q)=>{return new SU({value:A,typeName:zQ.ZodLiteral,...pQ(Q)})};function fGA(A,Q){return new q7({values:A,typeName:zQ.ZodEnum,...pQ(Q)})}class q7 extends JB{_parse(A){if(typeof A.data!=="string"){let Q=this._getOrReturnCtx(A),B=this._def.values;return xA(Q,{expected:WB.joinValues(B),received:Q.parsedType,code:RA.invalid_type}),LQ}if(!this._cache)this._cache=new Set(this._def.values);if(!this._cache.has(A.data)){let Q=this._getOrReturnCtx(A),B=this._def.values;return xA(Q,{received:Q.data,code:RA.invalid_enum_value,options:B}),LQ}return LJ(A.data)}get options(){return this._def.values}get enum(){let A={};for(let Q of this._def.values)A[Q]=Q;return A}get Values(){let A={};for(let Q of this._def.values)A[Q]=Q;return A}get Enum(){let A={};for(let Q of this._def.values)A[Q]=Q;return A}extract(A,Q=this._def){return q7.create(A,{...this._def,...Q})}exclude(A,Q=this._def){return q7.create(this.options.filter((B)=>!A.includes(B)),{...this._def,...Q})}}q7.create=fGA;class kU extends JB{_parse(A){let Q=WB.getValidEnumValues(this._def.values),B=this._getOrReturnCtx(A);if(B.parsedType!==kA.string&&B.parsedType!==kA.number){let Y=WB.objectValues(Q);return xA(B,{expected:WB.joinValues(Y),received:B.parsedType,code:RA.invalid_type}),LQ}if(!this._cache)this._cache=new Set(WB.getValidEnumValues(this._def.values));if(!this._cache.has(A.data)){let Y=WB.objectValues(Q);return xA(B,{received:B.data,code:RA.invalid_enum_value,options:Y}),LQ}return LJ(A.data)}get enum(){return this._def.values}}kU.create=(A,Q)=>{return new kU({values:A,typeName:zQ.ZodNativeEnum,...pQ(Q)})};class eW extends JB{unwrap(){return this._def.type}_parse(A){let{ctx:Q}=this._processInputParams(A);if(Q.parsedType!==kA.promise&&Q.common.async===!1)return xA(Q,{code:RA.invalid_type,expected:kA.promise,received:Q.parsedType}),LQ;let B=Q.parsedType===kA.promise?Q.data:Promise.resolve(Q.data);return LJ(B.then((Y)=>{return this._def.type.parseAsync(Y,{path:Q.path,errorMap:Q.common.contextualErrorMap})}))}}eW.create=(A,Q)=>{return new eW({type:A,typeName:zQ.ZodPromise,...pQ(Q)})};class TC extends JB{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===zQ.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(A){let{status:Q,ctx:B}=this._processInputParams(A),Y=this._def.effect||null,J={addIssue:(C)=>{if(xA(B,C),C.fatal)Q.abort();else Q.dirty()},get path(){return B.path}};if(J.addIssue=J.addIssue.bind(J),Y.type==="preprocess"){let C=Y.transform(B.data,J);if(B.common.async)return Promise.resolve(C).then(async(X)=>{if(Q.value==="aborted")return LQ;let G=await this._def.schema._parseAsync({data:X,path:B.path,parent:B});if(G.status==="aborted")return LQ;if(G.status==="dirty")return rW(G.value);if(Q.value==="dirty")return rW(G.value);return G});else{if(Q.value==="aborted")return LQ;let X=this._def.schema._parseSync({data:C,path:B.path,parent:B});if(X.status==="aborted")return LQ;if(X.status==="dirty")return rW(X.value);if(Q.value==="dirty")return rW(X.value);return X}}if(Y.type==="refinement"){let C=(X)=>{let G=Y.refinement(X,J);if(B.common.async)return Promise.resolve(G);if(G instanceof Promise)throw Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return X};if(B.common.async===!1){let X=this._def.schema._parseSync({data:B.data,path:B.path,parent:B});if(X.status==="aborted")return LQ;if(X.status==="dirty")Q.dirty();return C(X.value),{status:Q.value,value:X.value}}else return this._def.schema._parseAsync({data:B.data,path:B.path,parent:B}).then((X)=>{if(X.status==="aborted")return LQ;if(X.status==="dirty")Q.dirty();return C(X.value).then(()=>{return{status:Q.value,value:X.value}})})}if(Y.type==="transform")if(B.common.async===!1){let C=this._def.schema._parseSync({data:B.data,path:B.path,parent:B});if(!H7(C))return LQ;let X=Y.transform(C.value,J);if(X instanceof Promise)throw Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:Q.value,value:X}}else return this._def.schema._parseAsync({data:B.data,path:B.path,parent:B}).then((C)=>{if(!H7(C))return LQ;return Promise.resolve(Y.transform(C.value,J)).then((X)=>({status:Q.value,value:X}))});WB.assertNever(Y)}}TC.create=(A,Q,B)=>{return new TC({schema:A,typeName:zQ.ZodEffects,effect:Q,...pQ(B)})};TC.createWithPreprocess=(A,Q,B)=>{return new TC({schema:Q,effect:{type:"preprocess",transform:A},typeName:zQ.ZodEffects,...pQ(B)})};class OC extends JB{_parse(A){if(this._getType(A)===kA.undefined)return LJ(void 0);return this._def.innerType._parse(A)}unwrap(){return this._def.innerType}}OC.create=(A,Q)=>{return new OC({innerType:A,typeName:zQ.ZodOptional,...pQ(Q)})};class jX extends JB{_parse(A){if(this._getType(A)===kA.null)return LJ(null);return this._def.innerType._parse(A)}unwrap(){return this._def.innerType}}jX.create=(A,Q)=>{return new jX({innerType:A,typeName:zQ.ZodNullable,...pQ(Q)})};class _U extends JB{_parse(A){let{ctx:Q}=this._processInputParams(A),B=Q.data;if(Q.parsedType===kA.undefined)B=this._def.defaultValue();return this._def.innerType._parse({data:B,path:Q.path,parent:Q})}removeDefault(){return this._def.innerType}}_U.create=(A,Q)=>{return new _U({innerType:A,typeName:zQ.ZodDefault,defaultValue:typeof Q.default==="function"?Q.default:()=>Q.default,...pQ(Q)})};class vU extends JB{_parse(A){let{ctx:Q}=this._processInputParams(A),B={...Q,common:{...Q.common,issues:[]}},Y=this._def.innerType._parse({data:B.data,path:B.path,parent:{...B}});if(qU(Y))return Y.then((J)=>{return{status:"valid",value:J.status==="valid"?J.value:this._def.catchValue({get error(){return new T9(B.common.issues)},input:B.data})}});else return{status:"valid",value:Y.status==="valid"?Y.value:this._def.catchValue({get error(){return new T9(B.common.issues)},input:B.data})}}removeCatch(){return this._def.innerType}}vU.create=(A,Q)=>{return new vU({innerType:A,typeName:zQ.ZodCatch,catchValue:typeof Q.catch==="function"?Q.catch:()=>Q.catch,...pQ(Q)})};class xH extends JB{_parse(A){if(this._getType(A)!==kA.nan){let B=this._getOrReturnCtx(A);return xA(B,{code:RA.invalid_type,expected:kA.nan,received:B.parsedType}),LQ}return{status:"valid",value:A.data}}}xH.create=(A)=>{return new xH({typeName:zQ.ZodNaN,...pQ(A)})};var hAB=Symbol("zod_brand");class WR extends JB{_parse(A){let{ctx:Q}=this._processInputParams(A),B=Q.data;return this._def.type._parse({data:B,path:Q.path,parent:Q})}unwrap(){return this._def.type}}class fH extends JB{_parse(A){let{status:Q,ctx:B}=this._processInputParams(A);if(B.common.async)return(async()=>{let J=await this._def.in._parseAsync({data:B.data,path:B.path,parent:B});if(J.status==="aborted")return LQ;if(J.status==="dirty")return Q.dirty(),rW(J.value);else return this._def.out._parseAsync({data:J.value,path:B.path,parent:B})})();else{let Y=this._def.in._parseSync({data:B.data,path:B.path,parent:B});if(Y.status==="aborted")return LQ;if(Y.status==="dirty")return Q.dirty(),{status:"dirty",value:Y.value};else return this._def.out._parseSync({data:Y.value,path:B.path,parent:B})}}static create(A,Q){return new fH({in:A,out:Q,typeName:zQ.ZodPipeline})}}class yU extends JB{_parse(A){let Q=this._def.innerType._parse(A),B=(Y)=>{if(H7(Y))Y.value=Object.freeze(Y.value);return Y};return qU(Q)?Q.then((Y)=>B(Y)):B(Q)}unwrap(){return this._def.innerType}}yU.create=(A,Q)=>{return new yU({innerType:A,typeName:zQ.ZodReadonly,...pQ(Q)})};function yGA(A,Q){let B=typeof A==="function"?A(Q):typeof A==="string"?{message:A}:A;return typeof B==="string"?{message:B}:B}function bGA(A,Q={},B){if(A)return oW.create().superRefine((Y,J)=>{let C=A(Y);if(C instanceof Promise)return C.then((X)=>{if(!X){let G=yGA(Q,Y),F=G.fatal??B??!0;J.addIssue({code:"custom",...G,fatal:F})}});if(!C){let X=yGA(Q,Y),G=X.fatal??B??!0;J.addIssue({code:"custom",...X,fatal:G})}return});return oW.create()}var gAB={object:k0.lazycreate},zQ;(function(A){A.ZodString="ZodString",A.ZodNumber="ZodNumber",A.ZodNaN="ZodNaN",A.ZodBigInt="ZodBigInt",A.ZodBoolean="ZodBoolean",A.ZodDate="ZodDate",A.ZodSymbol="ZodSymbol",A.ZodUndefined="ZodUndefined",A.ZodNull="ZodNull",A.ZodAny="ZodAny",A.ZodUnknown="ZodUnknown",A.ZodNever="ZodNever",A.ZodVoid="ZodVoid",A.ZodArray="ZodArray",A.ZodObject="ZodObject",A.ZodUnion="ZodUnion",A.ZodDiscriminatedUnion="ZodDiscriminatedUnion",A.ZodIntersection="ZodIntersection",A.ZodTuple="ZodTuple",A.ZodRecord="ZodRecord",A.ZodMap="ZodMap",A.ZodSet="ZodSet",A.ZodFunction="ZodFunction",A.ZodLazy="ZodLazy",A.ZodLiteral="ZodLiteral",A.ZodEnum="ZodEnum",A.ZodEffects="ZodEffects",A.ZodNativeEnum="ZodNativeEnum",A.ZodOptional="ZodOptional",A.ZodNullable="ZodNullable",A.ZodDefault="ZodDefault",A.ZodCatch="ZodCatch",A.ZodPromise="ZodPromise",A.ZodBranded="ZodBranded",A.ZodPipeline="ZodPipeline",A.ZodReadonly="ZodReadonly"})(zQ||(zQ={}));var xAB=(A,Q={message:`Input not instance of ${A.name}`})=>bGA((B)=>B instanceof A,Q),mGA=wC.create,uGA=N7.create,fAB=xH.create,bAB=L7.create,dGA=RU.create,mAB=aW.create,uAB=vH.create,dAB=wU.create,cAB=jU.create,lAB=oW.create,pAB=D7.create,iAB=m1.create,nAB=yH.create,sAB=jC.create,rAB=k0.create,aAB=k0.strictCreate,oAB=OU.create,tAB=FR.create,eAB=PU.create,AQB=u1.create,QQB=hH.create,BQB=gH.create,YQB=tW.create,JQB=zU.create,CQB=TU.create,XQB=SU.create,GQB=q7.create,FQB=kU.create,WQB=eW.create,ZQB=TC.create,$QB=OC.create,UQB=jX.create,EQB=TC.createWithPreprocess,KQB=fH.create,VQB=()=>mGA().optional(),IQB=()=>uGA().optional(),HQB=()=>dGA().optional(),DQB={string:(A)=>wC.create({...A,coerce:!0}),number:(A)=>N7.create({...A,coerce:!0}),boolean:(A)=>RU.create({...A,coerce:!0}),bigint:(A)=>L7.create({...A,coerce:!0}),date:(A)=>aW.create({...A,coerce:!0})};var NQB=LQ;var SB=s;var SC;(function(A){A[A.EXTEND=1]="EXTEND",A[A.WRAP=2]="WRAP",A[A.CROP=3]="CROP"})(SC||(SC={}));var M7=s.object({bitmap:s.object({data:s.union([s.instanceof(Buffer),s.instanceof(Uint8Array)]),width:s.number(),height:s.number()})});var LQB=s.object({src:M7,x:s.number().optional(),y:s.number().optional(),srcX:s.number().optional(),srcY:s.number().optional(),srcW:s.number().optional(),srcH:s.number().optional()}),qQB=s.union([M7,LQB]),hU={blit(A,Q){let B=qQB.parse(Q),{src:Y,x:J=0,y:C=0,srcX:X=0,srcY:G=0,srcW:F=Y.bitmap.width,srcH:W=Y.bitmap.height}="bitmap"in B?{src:B}:B;if(!("bitmap"in Y))throw Error("The source must be a Jimp image");if(typeof J!=="number"||typeof C!=="number")throw Error("x and y must be numbers");J=Math.round(J),C=Math.round(C),X=Math.round(X),G=Math.round(G),F=Math.round(F),W=Math.round(W);let Z=A.bitmap.width,U=A.bitmap.height;return G5(Y,X,G,F,W,function($,E,K){let I=J+$-X,V=C+E-G;if(I>=0&&V>=0&&Z-I>0&&U-V>0){let H=A.getPixelIndex(I,V),D={r:Y.bitmap.data[K]||0,g:Y.bitmap.data[K+1]||0,b:Y.bitmap.data[K+2]||0,a:Y.bitmap.data[K+3]||0},L={r:A.bitmap.data[H]||0,g:A.bitmap.data[H+1]||0,b:A.bitmap.data[H+2]||0,a:A.bitmap.data[H+3]||0};A.bitmap.data[H]=(D.a*(D.r-L.r)-L.r+255>>8)+L.r,A.bitmap.data[H+1]=(D.a*(D.g-L.g)-L.g+255>>8)+L.g,A.bitmap.data[H+2]=(D.a*(D.b-L.b)-L.b+255>>8)+L.b,A.bitmap.data[H+3]=L0(L.a+D.a)}}),A}};var cGA=[1,57,41,21,203,34,97,73,227,91,149,62,105,45,39,137,241,107,3,173,39,71,65,238,219,101,187,87,81,151,141,133,249,117,221,209,197,187,177,169,5,153,73,139,133,127,243,233,223,107,103,99,191,23,177,171,165,159,77,149,9,139,135,131,253,245,119,231,224,109,211,103,25,195,189,23,45,175,171,83,81,79,155,151,147,9,141,137,67,131,129,251,123,30,235,115,113,221,217,53,13,51,50,49,193,189,185,91,179,175,43,169,83,163,5,79,155,19,75,147,145,143,35,69,17,67,33,65,255,251,247,243,239,59,29,229,113,111,219,27,213,105,207,51,201,199,49,193,191,47,93,183,181,179,11,87,43,85,167,165,163,161,159,157,155,77,19,75,37,73,145,143,141,35,138,137,135,67,33,131,129,255,63,250,247,61,121,239,237,117,29,229,227,225,111,55,109,216,213,211,209,207,205,203,201,199,197,195,193,48,190,47,93,185,183,181,179,178,176,175,173,171,85,21,167,165,41,163,161,5,79,157,78,154,153,19,75,149,74,147,73,144,143,71,141,140,139,137,17,135,134,133,66,131,65,129,1],lGA=[0,9,10,10,14,12,14,14,16,15,16,15,16,15,15,17,18,17,12,18,16,17,17,19,19,18,19,18,18,19,19,19,20,19,20,20,20,20,20,20,15,20,19,20,20,20,21,21,21,20,20,20,21,18,21,21,21,21,20,21,17,21,21,21,22,22,21,22,22,21,22,21,19,22,22,19,20,22,22,21,21,21,22,22,22,18,22,22,21,22,22,23,22,20,23,22,22,23,23,21,19,21,21,21,23,23,23,22,23,23,21,23,22,23,18,22,23,20,22,23,23,23,21,22,20,22,21,22,24,24,24,24,24,22,21,24,23,23,24,21,24,23,24,22,24,24,22,24,24,22,23,24,24,24,20,23,22,23,24,24,24,24,24,24,24,23,21,23,22,23,24,24,24,22,24,24,24,23,22,24,24,25,23,25,25,23,24,25,25,24,22,25,25,25,24,23,24,25,25,25,25,25,25,25,25,25,25,25,25,23,25,23,24,25,25,25,25,25,25,25,25,25,24,22,25,25,23,25,25,20,24,25,24,25,25,22,24,25,24,25,24,25,25,24,25,25,25,25,22,25,25,25,24,25,24,25,18];var pGA={blur(A,Q){if(typeof Q!=="number")throw Error("r must be a number");if(Q<1)throw Error("r must be greater than 0");let B,Y,J,C,X,G,F,W,Z,U,$,E,K,I=A.bitmap.width-1,V=A.bitmap.height-1,H=Q+1,D=cGA[Q],L=lGA[Q],z=[],M=[],N=[],q=[],w=[],P=[],_=2;while(_-- >0){E=0,K=0;for(G=0;GI?I:F)<<2),B+=A.bitmap.data[W++],Y+=A.bitmap.data[W++],J+=A.bitmap.data[W++],C+=A.bitmap.data[W];for(X=0;X0?W<<2:0;Z=K+w[X],U=K+P[X],B+=A.bitmap.data[Z++]-A.bitmap.data[U++],Y+=A.bitmap.data[Z++]-A.bitmap.data[U++],J+=A.bitmap.data[Z++]-A.bitmap.data[U++],C+=A.bitmap.data[Z]-A.bitmap.data[U++],E++}K+=A.bitmap.width<<2}for(X=0;XV?0:A.bitmap.width,B+=z[$],Y+=M[$],J+=N[$],C+=q[$];E=X<<2;for(G=0;G>>L),A.bitmap.data[E+1]=L0(Y*D>>>L),A.bitmap.data[E+2]=L0(J*D>>>L),A.bitmap.data[E+3]=L0(C*D>>>L),X===0)w[G]=((W=G+H)0?W*A.bitmap.width:0;Z=X+w[G],U=X+P[G],B+=z[Z]-z[U],Y+=M[Z]-M[U],J+=N[Z]-N[U],C+=q[Z]-q[U],E+=A.bitmap.width<<2}}}return A},gaussian(A,Q){if(typeof Q!=="number")throw Error("r must be a number");if(Q<1)throw Error("r must be greater than 0");let B=Math.ceil(Q*2.57),Y=B*2+1,J=Q*Q*2,C=J*Math.PI,X=[];for(let G=0;GA.bitmap.height?A.bitmap.height:A.bitmap.width)/2,J={x:typeof B.x==="number"?B.x:A.bitmap.width/2,y:typeof B.y==="number"?B.y:A.bitmap.height/2};return A.scan((C,X,G)=>{let F=Math.sqrt(Math.pow(C-J.x,2)+Math.pow(X-J.y,2));if(Y-F<=0)A.bitmap.data[G+3]=0;else if(Y-F<1)A.bitmap.data[G+3]=255*(Y-F)}),A}};var ZR=s.array(s.number()).min(1).array(),jQB=s.object({kernel:ZR,edgeHandling:s.nativeEnum(SC).optional()}),OQB=s.union([ZR,jQB]),PQB=s.object({kernel:ZR,x:s.number().optional(),y:s.number().optional(),w:s.number().optional(),h:s.number().optional()}),TQB=s.union([ZR,PQB]),sGA=s.number().min(1).max(1/0),SQB=s.object({size:sGA,x:s.number().optional(),y:s.number().optional(),w:s.number().optional(),h:s.number().optional()}),kQB=s.union([sGA,SQB]);function nGA(A,Q,B,Y){let J=[0,0,0,0],C=(Q.length-1)/2;for(let X=0;X{Q.r[A.bitmap.data[J+0]]++,Q.g[A.bitmap.data[J+1]]++,Q.b[A.bitmap.data[J+2]]++}),Q}var gx=function(A,Q,B){return(A-Q)*255/(B-Q)},xx=function(A){return[A.findIndex((Q)=>Q>0),255-A.slice().reverse().findIndex((Q)=>Q>0)]},gU={normalize(A){let Q=sQB(A),B={r:xx(Q.r),g:xx(Q.g),b:xx(Q.b)};return A.scan((Y,J,C)=>{let X=A.bitmap.data[C+0],G=A.bitmap.data[C+1],F=A.bitmap.data[C+2];A.bitmap.data[C+0]=gx(X,B.r[0],B.r[1]),A.bitmap.data[C+1]=gx(G,B.g[0],B.g[1]),A.bitmap.data[C+2]=gx(F,B.b[0],B.b[1])}),A},invert(A){return A.scan((Q,B,Y)=>{A.bitmap.data[Y]=255-A.bitmap.data[Y],A.bitmap.data[Y+1]=255-A.bitmap.data[Y+1],A.bitmap.data[Y+2]=255-A.bitmap.data[Y+2]}),A},brightness(A,Q){if(typeof Q!=="number")throw Error("val must be numbers");return A.scan((B,Y,J)=>{A.bitmap.data[J]=L0(A.bitmap.data[J]*Q),A.bitmap.data[J+1]=L0(A.bitmap.data[J+1]*Q),A.bitmap.data[J+2]=L0(A.bitmap.data[J+2]*Q)}),A},contrast(A,Q){if(typeof Q!=="number")throw Error("val must be numbers");if(Q<-1||Q>1)throw Error("val must be a number between -1 and +1");let B=(Q+1)/(1-Q);function Y(J){return J=Math.floor(B*(J-127)+127),J<0?0:J>255?255:J}return A.scan((J,C,X)=>{A.bitmap.data[X]=Y(A.bitmap.data[X]),A.bitmap.data[X+1]=Y(A.bitmap.data[X+1]),A.bitmap.data[X+2]=Y(A.bitmap.data[X+2])}),A},posterize(A,Q){if(typeof Q!=="number")throw Error("n must be numbers");if(Q<2)Q=2;return A.scan((B,Y,J)=>{let C=A.bitmap.data[J],X=A.bitmap.data[J+1],G=A.bitmap.data[J+2];A.bitmap.data[J]=Math.floor(C/255*(Q-1))/(Q-1)*255,A.bitmap.data[J+1]=Math.floor(X/255*(Q-1))/(Q-1)*255,A.bitmap.data[J+2]=Math.floor(G/255*(Q-1))/(Q-1)*255}),A},greyscale(A){return A.scan((Q,B,Y)=>{let J=0.2126*A.bitmap.data[Y]+0.7152*A.bitmap.data[Y+1]+0.0722*A.bitmap.data[Y+2];A.bitmap.data[Y]=J,A.bitmap.data[Y+1]=J,A.bitmap.data[Y+2]=J}),A},opacity(A,Q){if(typeof Q!=="number")throw Error("f must be a number");if(Q<0||Q>1)throw Error("f must be a number from 0 to 1");return A.scan((B,Y,J)=>{let C=A.bitmap.data[J+3]*Q;A.bitmap.data[J+3]=C}),A},sepia(A){return A.scan((Q,B,Y)=>{let J=A.bitmap.data[Y],C=A.bitmap.data[Y+1],X=A.bitmap.data[Y+2];J=J*0.393+C*0.769+X*0.189,C=J*0.349+C*0.686+X*0.168,X=J*0.272+C*0.534+X*0.131,A.bitmap.data[Y]=J<255?J:255,A.bitmap.data[Y+1]=C<255?C:255,A.bitmap.data[Y+2]=X<255?X:255}),A},fade(A,Q){if(typeof Q!=="number")throw Error("f must be a number");if(Q<0||Q>1)throw Error("f must be a number from 0 to 1");return this.opacity(A,1-Q)},convolution(A,Q){let B=OQB.parse(Q),{kernel:Y,edgeHandling:J=SC.EXTEND}="kernel"in B?B:{kernel:B,edgeHandling:void 0};if(!Y[0])throw Error("kernel must be a matrix");let C=Buffer.from(A.bitmap.data),X=Y.length,G=Y[0].length,F=Math.floor(X/2),W=Math.floor(G/2),Z=-F,U=-W,$,E,K,I,V,H,D,L,z,M;return A.scan((N,q,w)=>{I=0,K=0,E=0;for(let P=Z;P<=F;P++)for(let _=U;_<=W;_++){if(L=N+_,z=q+P,$=Y[P+F][_+W],M=A.getPixelIndex(L,z,J),M===-1)D=0,H=0,V=0;else V=A.bitmap.data[M+0],H=A.bitmap.data[M+1],D=A.bitmap.data[M+2];E+=$*V,K+=$*H,I+=$*D}if(E<0)E=0;if(K<0)K=0;if(I<0)I=0;if(E>255)E=255;if(K>255)K=255;if(I>255)I=255;C[w+0]=E,C[w+1]=K,C[w+2]=I}),A.bitmap.data=C,A},opaque(A){return A.scan((Q,B,Y)=>{A.bitmap.data[Y+3]=255}),A},pixelate(A,Q){let B=kQB.parse(Q),{size:Y,x:J=0,y:C=0,w:X=A.bitmap.width-J,h:G=A.bitmap.height-C}=typeof B==="number"?{size:B}:B,F=[[0.0625,0.125,0.0625],[0.125,0.25,0.125],[0.0625,0.125,0.0625]],W=G8(A);return G5(W,J,C,X,G,(Z,U,$)=>{Z=Y*Math.floor(Z/Y),U=Y*Math.floor(U/Y);let E=nGA(W,F,Z,U);A.bitmap.data[$]=E[0],A.bitmap.data[$+1]=E[1],A.bitmap.data[$+2]=E[2],A.bitmap.data[$+3]=E[3]}),A},convolute(A,Q){let B=TQB.parse(Q),{kernel:Y,x:J=0,y:C=0,w:X=A.bitmap.width-J,h:G=A.bitmap.height-C}="kernel"in B?B:{kernel:B},F=G8(A);return G5(F,J,C,X,G,(W,Z,U)=>{let $=nGA(F,Y,W,Z);A.bitmap.data[U]=L0($[0]),A.bitmap.data[U+1]=L0($[1]),A.bitmap.data[U+2]=L0($[2]),A.bitmap.data[U+3]=L0($[3])}),A},color(A,Q){if(!Q||!Array.isArray(Q))throw Error("actions must be an array");return Q.forEach((B)=>nQB.parse(B)),Q=Q.map((B)=>{if(B.apply==="xor"||B.apply==="mix")B.params[0]=oA(B.params[0]).toRgb();return B}),A.scan((B,Y,J)=>{let C={r:A.bitmap.data[J],g:A.bitmap.data[J+1],b:A.bitmap.data[J+2]},X=(G,F)=>L0(C[G]+F);Q.forEach((G)=>{if(G.apply==="mix")C=hx(C,G.params[0],G.params[1]);else if(G.apply==="tint")C=hx(C,{r:255,g:255,b:255},G.params?.[0]);else if(G.apply==="shade")C=hx(C,{r:0,g:0,b:0},G.params?.[0]);else if(G.apply==="xor")C={r:C.r^G.params[0].r,g:C.g^G.params[0].g,b:C.b^G.params[0].b};else if(G.apply==="red")C.r=X("r",G.params[0]);else if(G.apply==="green")C.g=X("g",G.params[0]);else if(G.apply==="blue")C.b=X("b",G.params[0]);else{if(G.apply==="hue")G.apply="spin";let F=oA(C),W=F[G.apply].bind(F);if(!W)throw Error("action "+G.apply+" not supported");C=W(...G.params||[]).toRgb()}}),A.bitmap.data[J]=C.r,A.bitmap.data[J+1]=C.g,A.bitmap.data[J+2]=C.b}),A}};var vFA=qA(g7A(),1),ax=qA(f7A(),1);import{promises as b7A}from"fs";import{existsSync as d7A}from"fs";var m7A=b7A.readFile,u7A=b7A.writeFile;var yFA=qA(s7A(),1);var E5;(function(A){A[A.LEFT=1]="LEFT",A[A.CENTER=2]="CENTER",A[A.RIGHT=4]="RIGHT"})(E5||(E5={}));var K5;(function(A){A[A.TOP=8]="TOP",A[A.MIDDLE=16]="MIDDLE",A[A.BOTTOM=32]="BOTTOM"})(K5||(K5={}));var NR;(function(A){A.SRC_OVER="srcOver",A.DST_OVER="dstOver",A.MULTIPLY="multiply",A.ADD="add",A.SCREEN="screen",A.OVERLAY="overlay",A.DARKEN="darken",A.LIGHTEN="lighten",A.HARD_LIGHT="hardLight",A.DIFFERENCE="difference",A.EXCLUSION="exclusion"})(NR||(NR={}));var lx={};fG(lx,{srcOver:()=>r7A,screen:()=>e7A,overlay:()=>AFA,names:()=>A0B,multiply:()=>o7A,lighten:()=>BFA,hardLight:()=>YFA,exclusion:()=>CFA,dstOver:()=>a7A,difference:()=>JFA,darken:()=>QFA,add:()=>t7A});function r7A(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=(A.r*A.a+Q.r*Q.a*(1-A.a))/Y,C=(A.g*A.a+Q.g*Q.a*(1-A.a))/Y,X=(A.b*A.a+Q.b*Q.a*(1-A.a))/Y;return{r:J,g:C,b:X,a:Y}}function a7A(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=(Q.r*Q.a+A.r*A.a*(1-Q.a))/Y,C=(Q.g*Q.a+A.g*A.a*(1-Q.a))/Y,X=(Q.b*Q.a+A.b*A.a*(1-Q.a))/Y;return{r:J,g:C,b:X,a:Y}}function o7A(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,F=Q.g*Q.a,W=Q.b*Q.a,Z=(J*G+J*(1-Q.a)+G*(1-A.a))/Y,U=(C*F+C*(1-Q.a)+F*(1-A.a))/Y,$=(X*W+X*(1-Q.a)+W*(1-A.a))/Y;return{r:Z,g:U,b:$,a:Y}}function t7A(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,F=Q.g*Q.a,W=Q.b*Q.a,Z=(J+G)/Y,U=(C+F)/Y,$=(X+W)/Y;return{r:Z,g:U,b:$,a:Y}}function e7A(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,F=Q.g*Q.a,W=Q.b*Q.a,Z=(J*Q.a+G*A.a-J*G+J*(1-Q.a)+G*(1-A.a))/Y,U=(C*Q.a+F*A.a-C*F+C*(1-Q.a)+F*(1-A.a))/Y,$=(X*Q.a+W*A.a-X*W+X*(1-Q.a)+W*(1-A.a))/Y;return{r:Z,g:U,b:$,a:Y}}function AFA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,F=Q.g*Q.a,W=Q.b*Q.a,Z=(2*G<=Q.a?2*J*G+J*(1-Q.a)+G*(1-A.a):J*(1+Q.a)+G*(1+A.a)-2*G*J-Q.a*A.a)/Y,U=(2*F<=Q.a?2*C*F+C*(1-Q.a)+F*(1-A.a):C*(1+Q.a)+F*(1+A.a)-2*F*C-Q.a*A.a)/Y,$=(2*W<=Q.a?2*X*W+X*(1-Q.a)+W*(1-A.a):X*(1+Q.a)+W*(1+A.a)-2*W*X-Q.a*A.a)/Y;return{r:Z,g:U,b:$,a:Y}}function QFA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,F=Q.g*Q.a,W=Q.b*Q.a,Z=(Math.min(J*Q.a,G*A.a)+J*(1-Q.a)+G*(1-A.a))/Y,U=(Math.min(C*Q.a,F*A.a)+C*(1-Q.a)+F*(1-A.a))/Y,$=(Math.min(X*Q.a,W*A.a)+X*(1-Q.a)+W*(1-A.a))/Y;return{r:Z,g:U,b:$,a:Y}}function BFA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,F=Q.g*Q.a,W=Q.b*Q.a,Z=(Math.max(J*Q.a,G*A.a)+J*(1-Q.a)+G*(1-A.a))/Y,U=(Math.max(C*Q.a,F*A.a)+C*(1-Q.a)+F*(1-A.a))/Y,$=(Math.max(X*Q.a,W*A.a)+X*(1-Q.a)+W*(1-A.a))/Y;return{r:Z,g:U,b:$,a:Y}}function YFA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,F=Q.g*Q.a,W=Q.b*Q.a,Z=(2*J<=A.a?2*J*G+J*(1-Q.a)+G*(1-A.a):J*(1+Q.a)+G*(1+A.a)-2*G*J-Q.a*A.a)/Y,U=(2*C<=A.a?2*C*F+C*(1-Q.a)+F*(1-A.a):C*(1+Q.a)+F*(1+A.a)-2*F*C-Q.a*A.a)/Y,$=(2*X<=A.a?2*X*W+X*(1-Q.a)+W*(1-A.a):X*(1+Q.a)+W*(1+A.a)-2*W*X-Q.a*A.a)/Y;return{r:Z,g:U,b:$,a:Y}}function JFA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,F=Q.g*Q.a,W=Q.b*Q.a,Z=(J+G-2*Math.min(J*Q.a,G*A.a))/Y,U=(C+F-2*Math.min(C*Q.a,F*A.a))/Y,$=(X+W-2*Math.min(X*Q.a,W*A.a))/Y;return{r:Z,g:U,b:$,a:Y}}function CFA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,F=Q.g*Q.a,W=Q.b*Q.a,Z=(J*Q.a+G*A.a-2*J*G+J*(1-Q.a)+G*(1-A.a))/Y,U=(C*Q.a+F*A.a-2*C*F+C*(1-Q.a)+F*(1-A.a))/Y,$=(X*Q.a+W*A.a-2*X*W+X*(1-Q.a)+W*(1-A.a))/Y;return{r:Z,g:U,b:$,a:Y}}var A0B=[r7A,a7A,o7A,t7A,e7A,AFA,QFA,BFA,YFA,JFA,CFA];function xU(A,Q,B=0,Y=0,J={}){if(!(Q instanceof A.constructor))throw Error("The source must be a Jimp image");if(typeof B!=="number"||typeof Y!=="number")throw Error("x and y must be numbers");let{mode:C=NR.SRC_OVER}=J,{opacitySource:X=1,opacityDest:G=1}=J;if(typeof X!=="number"||X<0||X>1)X=1;if(typeof G!=="number"||G<0||G>1)G=1;let F=lx[C];if(B=Math.round(B),Y=Math.round(Y),G!==1)A.scan((W,Z,U)=>{let $=A.bitmap.data[U+3]*G;A.bitmap.data[U+3]=$});return Q.scan((W,Z,U)=>{let $=A.getPixelIndex(B+W,Y+Z,SC.CROP);if($===-1)return;let E=F({r:Q.bitmap.data[U+0]/255,g:Q.bitmap.data[U+1]/255,b:Q.bitmap.data[U+2]/255,a:Q.bitmap.data[U+3]/255},{r:A.bitmap.data[$+0]/255,g:A.bitmap.data[$+1]/255,b:A.bitmap.data[$+2]/255,a:A.bitmap.data[$+3]/255},X);A.bitmap.data[$+0]=L0(E.r*255),A.bitmap.data[$+1]=L0(E.g*255),A.bitmap.data[$+2]=L0(E.b*255),A.bitmap.data[$+3]=L0(E.a*255)}),A}var SFA=qA(TFA(),1);function sx(A){let Q=A._exif;return Q&&Q.tags&&Q.tags.Orientation||1}function U0B(A){let Q=A.bitmap.width,B=A.bitmap.height;switch(sx(A)){case 1:return null;case 2:return function(Y,J){return[Q-Y-1,J]};case 3:return function(Y,J){return[Q-Y-1,B-J-1]};case 4:return function(Y,J){return[Y,B-J-1]};case 5:return function(Y,J){return[J,Y]};case 6:return function(Y,J){return[J,B-Y-1]};case 7:return function(Y,J){return[Q-J-1,B-Y-1]};case 8:return function(Y,J){return[Q-J-1,Y]};default:return null}}function E0B(A,Q,B,Y){let J=A.bitmap.data,C=A.bitmap.width,X=Buffer.alloc(J.length);for(let G=0;G4,Y=B?A.bitmap.height:A.bitmap.width,J=B?A.bitmap.width:A.bitmap.height;if(Q)E0B(A,Y,J,Q)}async function kFA(A,Q){try{A._exif=SFA.default.create(Q).parse(),K0B(A)}catch{}}var rx={data:Buffer.alloc(0),width:0,height:0};function _FA(A){let Q=Buffer.alloc(A.byteLength),B=new Uint8Array(A);for(let Y=0;YC()),J=class{bitmap=rx;background=0;formats=[];mime;constructor(X=rx){if(this.formats=Y,"data"in X)this.bitmap=X;else if(this.bitmap={data:Buffer.alloc(X.width*X.height*4),width:X.width,height:X.height},X.color){this.background=typeof X.color==="string"?hCA(X.color):X.color;for(let G=0;G{let Z=G[F]?.(this,...W);if(typeof Z==="object"&&"bitmap"in Z)return this.bitmap=Z.bitmap,this;return Z}}static async read(X,G){if(Buffer.isBuffer(X)||X instanceof ArrayBuffer)return this.fromBuffer(X);if(d7A(X))return this.fromBuffer(await m7A(X));let[F,W]=await ax.to(fetch(X));if(F)throw Error(`Could not load Buffer from URL: ${X}`);if(!W.ok)throw Error(`HTTP Status ${W.status} for url ${X}`);let[Z,U]=await ax.to(W.arrayBuffer());if(Z)throw Error(`Could not load Buffer from ${X}`);let $=_FA(U);return this.fromBuffer($,G)}static fromBitmap(X){let G;if(X.data instanceof Buffer)G=Buffer.from(X.data);if(X.data instanceof Uint8Array||X.data instanceof Uint8ClampedArray)G=Buffer.from(X.data.buffer);if(Array.isArray(X.data))G=Buffer.concat(X.data.map((F)=>Buffer.from(F.toString(16).padStart(8,"0"),"hex")));if(!G)throw Error("data must be a Buffer");if(typeof X.height!=="number"||typeof X.width!=="number")throw Error("bitmap must have width and height");return new J({height:X.height,width:X.width,data:G})}static async fromBuffer(X,G){let F=X instanceof ArrayBuffer?_FA(X):X,W=await vFA.default.fromBuffer(F);if(!W||!W.mime)throw Error("Could not find MIME for Buffer");let Z=Y.find(($)=>$.mime===W.mime);if(!Z||!Z.decode)throw Error(`Mime type ${W.mime} does not support decoding`);let U=new J(await Z.decode(F,G?.[Z.mime]));return U.mime=W.mime,kFA(U,F),U}inspect(){return""}toString(){return"[object Jimp]"}get width(){return this.bitmap.width}get height(){return this.bitmap.height}async getBuffer(X,G){let F=this.formats.find((Z)=>Z.mime===X);if(!F||!F.encode)throw Error(`Unsupported MIME type: ${X}`);let W;if(F.hasAlpha)W=this;else W=new J({width:this.bitmap.width,height:this.bitmap.height,color:this.background}),xU(W,this);return F.encode(W.bitmap,G)}async getBase64(X,G){let F=await this.getBuffer(X,G);return"data:"+X+";base64,"+F.toString("base64")}async write(X,G){let F=yFA.default.getType(X);await u7A(X,await this.getBuffer(F,G))}clone(){return new J({...this.bitmap,data:Buffer.from(this.bitmap.data)})}getPixelIndex(X,G,F){let W,Z;if(!F)F=SC.EXTEND;if(typeof X!=="number"||typeof G!=="number")throw Error("x and y must be numbers");if(X=Math.round(X),G=Math.round(G),W=X,Z=G,F===SC.EXTEND){if(X<0)W=0;if(X>=this.bitmap.width)W=this.bitmap.width-1;if(G<0)Z=0;if(G>=this.bitmap.height)Z=this.bitmap.height-1}if(F===SC.WRAP){if(X<0)W=this.bitmap.width+X;if(X>=this.bitmap.width)W=X%this.bitmap.width;if(G<0)Z=this.bitmap.height+G;if(G>=this.bitmap.height)Z=G%this.bitmap.height}let U=this.bitmap.width*Z+W<<2;if(W<0||W>=this.bitmap.width)U=-1;if(Z<0||Z>=this.bitmap.height)U=-1;return U}getPixelColor(X,G){if(typeof X!=="number"||typeof G!=="number")throw Error("x and y must be numbers");let F=this.getPixelIndex(X,G);return this.bitmap.data.readUInt32BE(F)}setPixelColor(X,G,F){if(typeof X!=="number"||typeof G!=="number"||typeof F!=="number")throw Error("hex, x and y must be numbers");let W=this.getPixelIndex(G,F);return this.bitmap.data.writeUInt32BE(X,W),this}hasAlpha(){let{width:X,height:G,data:F}=this.bitmap,W=X*G<<2;for(let Z=3;Z0&&this.heightOriginal>0&&this.targetWidth>0&&this.targetHeight>0)this.configurePasses();else throw console.log(this),Error("Invalid settings specified for the resizer.")};HY.prototype.configurePasses=function(){if(this.widthOriginal===this.targetWidth)this.resizeWidth=this.bypassResizer;else if(this.ratioWeightWidthPass=this.widthOriginal/this.targetWidth,this.ratioWeightWidthPass<1&&this.interpolationPass)this.initializeFirstPassBuffers(!0),this.resizeWidth=this.colorChannels===4?this.resizeWidthInterpolatedRGBA:this.resizeWidthInterpolatedRGB;else this.initializeFirstPassBuffers(!1),this.resizeWidth=this.colorChannels===4?this.resizeWidthRGBA:this.resizeWidthRGB;if(this.heightOriginal===this.targetHeight)this.resizeHeight=this.bypassResizer;else if(this.ratioWeightHeightPass=this.heightOriginal/this.targetHeight,this.ratioWeightHeightPass<1&&this.interpolationPass)this.initializeSecondPassBuffers(!0),this.resizeHeight=this.resizeHeightInterpolated;else this.initializeSecondPassBuffers(!1),this.resizeHeight=this.colorChannels===4?this.resizeHeightRGBA:this.resizeHeightRGB};HY.prototype._resizeWidthInterpolatedRGBChannels=function(A,Q){let B=Q?4:3,Y=this.ratioWeightWidthPass,J=this.widthBuffer,C=0,X=0,G=0,F=0,W=0,Z;for(Z=0;C<0.3333333333333333;Z+=B,C+=Y)for(X=Z,G=0;X=U)$+=B,E=$,Z-=U;else{E+=Z;break}}while(Z>0&&$=F)W=E,Z=W,G-=F;else{Z+=G;break}}while(G>0&&W3)this.outputWidthWorkBenchOpaquePixelsCount=this.generateFloat64Buffer(this.heightOriginal)}};HY.prototype.initializeSecondPassBuffers=function(A){if(this.heightBuffer=this.generateUint8Buffer(this.finalResultSize),!A){if(this.outputHeightWorkBench=this.generateFloatBuffer(this.targetWidthMultipliedByChannels),this.colorChannels>3)this.outputHeightWorkBenchOpaquePixelsCount=this.generateFloat64Buffer(this.targetWidth)}};HY.prototype.generateFloatBuffer=function(A){try{return new Float32Array(A)}catch(Q){return console.error(Q),[]}};HY.prototype.generateFloat64Buffer=function(A){try{return new Float64Array(A)}catch(Q){return console.error(Q),[]}};HY.prototype.generateUint8Buffer=function(A){try{return new Uint8Array(A)}catch(Q){return console.error(Q),[]}};var gFA=HY;var ox={nearestNeighbor(A,Q){let{width:B,height:Y}=A,J=Q.width,C=Q.height,X=A.data,G=Q.data;for(let F=0;F0?J[P-4]:2*J[P]-J[P+4],O=J[P],k=J[P+4],T=z0?K[P-U*4]:2*K[P]-K[P+U*4],O=K[P],k=K[P+U*4],T=z1)for(let H=0;H{A.bitmap.data=Buffer.from(X),A.bitmap.width=Y,A.bitmap.height=J}).resize(A.bitmap.data);return A},scale(A,Q){let{f:B,mode:Y}=typeof Q==="number"?{f:Q}:H0B.parse(Q),J=A.bitmap.width*B,C=A.bitmap.height*B;return this.resize(A,{w:J,h:C,mode:Y})},scaleToFit(A,Q){let{h:B,w:Y,mode:J}=I0B.parse(Q),C=Y/B>A.bitmap.width/A.bitmap.height?B/A.bitmap.height:Y/A.bitmap.width;return this.scale(A,{f:C,mode:J})}};var N0B=s.object({w:s.number(),h:s.number(),align:s.number().optional(),mode:s.nativeEnum(U8).optional()}),xFA={contain(A,Q){let{w:B,h:Y,align:J=E5.CENTER|K5.MIDDLE,mode:C}=N0B.parse(Q),X=J&7,G=J>>3;if(!(X!==0&&!(X&X-1)||G!==0&&!(G&G-1)))throw Error("only use one flag per alignment direction");let F=X>>1,W=G>>1,Z=B/Y>A.bitmap.width/A.bitmap.height?Y/A.bitmap.height:B/A.bitmap.width,U=kC.scale(G8(A),{f:Z,mode:C});return A=kC.resize(A,{w:B,h:Y,mode:C}),A.scan(($,E,K)=>{A.bitmap.data.writeUInt32BE(A.background,K)}),A=hU.blit(A,{src:U,x:(A.bitmap.width-U.bitmap.width)/2*F,y:(A.bitmap.height-U.bitmap.height)/2*W}),A}};var q0B=s.object({x:s.number(),y:s.number(),w:s.number(),h:s.number()}),M0B=s.object({tolerance:s.number().min(0).max(1).optional(),cropOnlyFrames:s.boolean().optional(),cropSymmetric:s.boolean().optional(),leaveBorder:s.number().optional(),ignoreSides:s.object({north:s.boolean().optional(),south:s.boolean().optional(),east:s.boolean().optional(),west:s.boolean().optional()}).optional()}),mU={crop(A,Q){let{x:B,y:Y,w:J,h:C}=q0B.parse(Q);if(B=Math.round(B),Y=Math.round(Y),J=Math.round(J),C=Math.round(C),B===0&&J===A.bitmap.width){let X=J*Y+B<<2,G=X+(C*J<<2);A.bitmap.data=A.bitmap.data.slice(X,G)}else{let X=Buffer.allocUnsafe(J*C*4),G=0;G5(A,B,Y,J,C,function(F,W,Z){let U=A.bitmap.data.readUInt32BE(Z);X.writeUInt32BE(U,G),G+=4}),A.bitmap.data=X}return A.bitmap.width=J,A.bitmap.height=C,A},autocrop(A,Q={}){let{tolerance:B=0.0002,cropOnlyFrames:Y=!0,cropSymmetric:J=!1,leaveBorder:C=0,ignoreSides:X}=typeof Q==="number"?{tolerance:Q}:M0B.parse(Q),G=A.bitmap.width,F=A.bitmap.height,W=1,Z={north:!1,south:!1,east:!1,west:!1,...X},U=A.getPixelColor(0,0),$=QU(U),E=0,K=0,I=0,V=0;if(U=A.getPixelColor(0,0),!Z.north)A:for(let z=0;zB)break A}E++}if(U=A.getPixelColor(G,0),!Z.west)A:for(let z=0;zB)break A}V++}if(U=A.getPixelColor(0,F),!Z.south)A:for(let z=F-1;z>=E+1;z--){for(let M=G-K-1;M>=0;M--){let N=A.getPixelColor(M,z),q=QU(N);if(XH($,q)>B)break A}I++}if(U=A.getPixelColor(G,F),!Z.east)A:for(let z=G-1;z>=0+V+1;z--){for(let M=F-1;M>=0+E;M--){let N=A.getPixelColor(z,M),q=QU(N);if(XH($,q)>B)break A}K++}let H=!1;if(V-=C,K-=C,E-=C,I-=C,J){let z=Math.min(K,V),M=Math.min(E,I);V=z,K=z,E=M,I=M}V=V>=0?V:0,K=K>=0?K:0,E=E>=0?E:0,I=I>=0?I:0;let D=G-(V+K),L=F-(I+E);if(Y)H=K!==0&&E!==0&&V!==0&&I!==0;else H=K!==0||E!==0||V!==0||I!==0;if(H)this.crop(A,{x:V,y:E,w:D,h:L});return A}};var R0B=s.object({w:s.number(),h:s.number(),align:s.number().optional(),mode:s.nativeEnum(U8).optional()}),fFA={cover(A,Q){let{w:B,h:Y,align:J=E5.CENTER|K5.MIDDLE,mode:C}=R0B.parse(Q),X=J&7,G=J>>3;if(!(X!==0&&!(X&X-1)||G!==0&&!(G&G-1)))throw Error("only use one flag per alignment direction");let F=X>>1,W=G>>1,Z=B/Y>A.bitmap.width/A.bitmap.height?B/A.bitmap.width:Y/A.bitmap.height;return A=kC.scale(A,{f:Z,mode:C}),A=mU.crop(A,{x:(A.bitmap.width-B)/2*F,y:(A.bitmap.height-Y)/2*W,w:B,h:Y}),A}};var j0B=s.object({map:M7,offset:s.number()}),bFA={displace(A,Q){let{map:B,offset:Y}=j0B.parse(Q),J=G8(A);return A.scan((C,X,G)=>{let F=B.bitmap.data[G]/256*Y;F=Math.round(F);let W=A.getPixelIndex(C+F,X);A.bitmap.data[W]=J.bitmap.data[G],A.bitmap.data[W+1]=J.bitmap.data[G+1],A.bitmap.data[W+2]=J.bitmap.data[G+2]}),A}};var mFA={dither(A){let Q=[1,9,3,11,13,5,15,7,4,12,2,10,16,8,14,6];return A.scan((B,Y,J)=>{let C=((Y&3)<<2)+B%4,X=Q[C];A.bitmap.data[J]=Math.min(A.bitmap.data[J]+X,255),A.bitmap.data[J+1]=Math.min(A.bitmap.data[J+1]+X,255),A.bitmap.data[J+2]=Math.min(A.bitmap.data[J+2]+X,255)}),A}};var T0B=s.object({radius:s.number().min(0).optional()}),uFA={fisheye(A,Q={}){let{radius:B=2.5}=T0B.parse(Q),Y=G8(A),{width:J,height:C}=Y.bitmap;return Y.scan((X,G)=>{let F=X/J,W=G/C,Z=Math.sqrt(Math.pow(F-0.5,2)+Math.pow(W-0.5,2)),U=2*Math.pow(Z,B),$=(F-0.5)/Z,E=(W-0.5)/Z,K=Math.round((U*$+0.5)*J),I=Math.round((U*E+0.5)*C),V=Y.getPixelColor(K,I);A.setPixelColor(V,X,G)}),A.setPixelColor(Y.getPixelColor(J/2,C/2),J/2,C/2),A}};var k0B=s.object({horizontal:s.boolean().optional(),vertical:s.boolean().optional()}),dFA={flip(A,Q){let{horizontal:B,vertical:Y}=k0B.parse(Q),J=Buffer.alloc(A.bitmap.data.length);return A.scan((C,X,G)=>{let F=B?A.bitmap.width-1-C:C,W=Y?A.bitmap.height-1-X:X,Z=A.bitmap.width*W+F<<2,U=A.bitmap.data.readUInt32BE(G);J.writeUInt32BE(U,Z)}),A.bitmap.data=Buffer.from(J),A}};var dH=qA(iFA(),1);class nFA{size;smallerSize;constructor(A,Q){this.size=A||32,this.smallerSize=Q||8,h0B(this.size)}distance(A,Q){let B=0;for(let Y=0;YJ?"1":"0";return C}}function y0B(A){let Q=A&255;A>>>=8;let B=A&255;A>>>=8;let Y=A&255;return A>>>=8,{r:A&255,g:Y,b:B,a:Q}}var MR=[];function h0B(A){for(let Q=1;Q64)throw Error("base must be a number between 2 and 64");let B=sFA.slice(0,Q),Y=this.pHash(A),J=rFA[Q];return dH.default(dH.default.BIN,B)(Y).padStart(J,"0")},distanceFromHash(A,Q){let B=new ex,Y=B.getHash(A);return B.distance(Y,Q)}};var f0B=s.object({src:M7,x:s.number().optional(),y:s.number().optional()}),b0B=s.union([M7,f0B]),oFA={mask(A,Q){b0B.parse(Q);let B,Y,J;if("bitmap"in Q)B=Q,Y=0,J=0;else B=Q.src,Y=Q.x??0,J=Q.y??0;Y=Math.round(Y),J=Math.round(J);let C=A.bitmap.width,X=A.bitmap.height;return B.scan(function(G,F,W){let Z=Y+G,U=J+F;if(Z>=0&&U>=0&&Z{if(uU(A,G+(Y.length>1?" ":""))>B){let U=G[Symbol.iterator](),$="";for(let E of U){let K=[...C,$+E].join(" "),I=uU(A,K);if(IB)J.push([...C,$]),C=[],$=E;else J.push([...C,$+E]),C=[],$=""}return}let W=[...C,G].join(" "),Z=uU(A,W);if(Z<=B&&!G.includes(` `)){if(Z>X)X=Z;C.push(G)}else J.push(C),C=[G.replace(` -`,"")]}),J.push(C),{lines:J,longestLine:X}}function Ug(A,Q,B){let{lines:Y}=$g(A,Q,B);return Y.length*A.common.lineHeight}var wrQ=s.object({x:s.number(),y:s.number(),text:s.union([s.union([s.string(),s.number()]),s.object({text:s.union([s.string(),s.number()]),alignmentX:s.nativeEnum(Y5).optional(),alignmentY:s.nativeEnum(J5).optional()})]),maxWidth:s.number().optional(),maxHeight:s.number().optional(),cb:s.function(s.tuple([s.object({x:s.number(),y:s.number()})])).optional()});function jrQ(A,Q,B,Y){if(Y===Y5.LEFT)return 0;if(Y===Y5.CENTER)return(B-IU(A,Q))/2;return B-IU(A,Q)}function OrQ(A,Q,B,Y,J){if(J.width>0&&J.height>0){let C=Q.pages[J.page];if(C)A=ZU.blit(A,{src:C,x:B+J.xoffset,y:Y+J.yoffset,srcX:J.x,srcY:J.y,srcW:J.width,srcH:J.height})}return A}function PrQ(A,Q,B,Y,J,C){for(let X=0;X{}}=wrQ.parse(B),W,Z;if(typeof C==="object"&&C.text!==null&&C.text!==void 0)W=C.alignmentX||Y5.LEFT,Z=C.alignmentY||J5.TOP,{text:C}=C;else W=Y5.LEFT,Z=J5.TOP,C=C.toString();if(typeof C==="number")C=C.toString();if(G!==1/0&&Z===J5.BOTTOM)J+=G-Ug(Q,C,X);else if(G!==1/0&&Z===J5.MIDDLE)J+=G/2-Ug(Q,C,X)/2;let U=Object.entries(Q.chars).find((K)=>K[1].xadvance)?.[1].xadvance;if(typeof U!=="number")throw Error("Could not find default character width");let{lines:$,longestLine:E}=$g(Q,C,X);return $.forEach((K)=>{let I=K.join(" "),V=jrQ(Q,I,X,W);PrQ(A,Q,Y+V,J,I,U),J+=Q.common.lineHeight}),F.bind(A)({x:Y+E,y:J}),A}};var SrQ=s.union([s.number(),s.object({deg:s.number(),mode:s.union([s.boolean(),s.nativeEnum(G8)]).optional()})]);function j1A(A){return function(Q,B){return B*A+Q<<2}}function krQ(A,Q){if(Math.abs(Q)%90!==0)throw Error("Unsupported matrix rotation degree");let B=A.bitmap.width,Y=A.bitmap.height,J;switch(Q){case 90:case-270:J=90;break;case 180:case-180:J=180;break;case 270:case-90:J=-90;break;default:throw Error("Unsupported matrix rotation degree")}let C=J===180?B:Y,X=J===180?Y:B,G=Buffer.alloc(A.bitmap.data.length),F=j1A(B),W=j1A(C);for(let Z=0;Z{A.bitmap.data.writeUInt32BE(A.background,H)});let K=Math.max(X,G,A.bitmap.width,A.bitmap.height);A=RC.resize(A,{h:K,w:K,mode:B===!0?void 0:B}),A=UU(A,E,A.bitmap.width/2-E.bitmap.width/2,A.bitmap.height/2-E.bitmap.height/2)}let F=A.bitmap.width,W=A.bitmap.height,Z=Buffer.alloc(A.bitmap.data.length),U=O1A(-(F/2),-(W/2)),$=O1A(F/2+0.5,W/2+0.5);for(let E=1;E<=W;E++)for(let K=1;K<=F;K++){let I=U(K,E),V=$(J*I.x-C*I.y,J*I.y+C*I.x),H=F*(E-1)+K-1<<2;if(V.x>=0&&V.x=0&&V.y{let F=A.bitmap.data[G](Q in A)?v1A(A,Q,{enumerable:!0,configurable:!0,writable:!0,value:B}):A[Q]=B,QG=(A,Q)=>{for(var B in Q)v1A(A,B,{get:Q[B],enumerable:!0})},ZA=(A,Q,B)=>{return hrQ(A,typeof Q!=="symbol"?Q+"":Q,B),B},xrQ={};QG(xrQ,{bt709:()=>y1A});var y1A={};QG(y1A,{Y:()=>g1A,x:()=>h1A,y:()=>x1A});var g1A=((A)=>{return A[A.RED=0.2126]="RED",A[A.GREEN=0.7152]="GREEN",A[A.BLUE=0.0722]="BLUE",A[A.WHITE=1]="WHITE",A})(g1A||{}),h1A=((A)=>{return A[A.RED=0.64]="RED",A[A.GREEN=0.3]="GREEN",A[A.BLUE=0.15]="BLUE",A[A.WHITE=0.3127]="WHITE",A})(h1A||{}),x1A=((A)=>{return A[A.RED=0.33]="RED",A[A.GREEN=0.6]="GREEN",A[A.BLUE=0.06]="BLUE",A[A.WHITE=0.329]="WHITE",A})(x1A||{}),frQ={};QG(frQ,{lab2rgb:()=>irQ,lab2xyz:()=>c1A,rgb2hsl:()=>v2,rgb2lab:()=>iI,rgb2xyz:()=>f1A,xyz2lab:()=>d1A,xyz2rgb:()=>l1A});function Eg(A){return A>0.04045?((A+0.055)/1.055)**2.4:A/12.92}function f1A(A,Q,B){return A=Eg(A/255),Q=Eg(Q/255),B=Eg(B/255),{x:A*0.4124+Q*0.3576+B*0.1805,y:A*0.2126+Q*0.7152+B*0.0722,z:A*0.0193+Q*0.1192+B*0.9505}}var b1A={};QG(b1A,{degrees2radians:()=>Z7,inRange0to255:()=>W8,inRange0to255Rounded:()=>C5,intInRange:()=>brQ,max3:()=>m1A,min3:()=>u1A,stableSort:()=>Dg});function Z7(A){return A*(Math.PI/180)}function m1A(A,Q,B){let Y=A;if(YQ)Y=Q;if(Y>B)Y=B;return Y}function brQ(A,Q,B){if(A>B)A=B;if(A255)A=255;else if(A<0)A=0;return A}function W8(A){if(A>255)A=255;else if(A<0)A=0;return A}function Dg(A,Q){let B=typeof A[0],Y;if(B==="number"||B==="string"){let J=Object.create(null);for(let C=0,X=A.length;CQ(C,X)||J[C]-J[X])}else{let J=A.slice(0);Y=A.sort((C,X)=>Q(C,X)||J.indexOf(C)-J.indexOf(X))}return Y}function v2(A,Q,B){let Y=u1A(A,Q,B),J=m1A(A,Q,B),C=J-Y,X=(Y+J)/510,G=0;if(X>0&&X<1)G=C/(X<0.5?J+Y:510-J-Y);let F=0;if(C>0){if(J===A)F=(Q-B)/C;else if(J===Q)F=2+(B-A)/C;else F=4+(A-Q)/C;if(F*=60,F<0)F+=360}return{h:F,s:G,l:X}}var mrQ=0.95047,urQ=1,drQ=1.08883;function Kg(A){return A>0.008856?A**0.3333333333333333:7.787*A+0.13793103448275862}function d1A(A,Q,B){if(A=Kg(A/mrQ),Q=Kg(Q/urQ),B=Kg(B/drQ),116*Q-16<0)throw Error("xxx");return{L:Math.max(0,116*Q-16),a:500*(A-Q),b:200*(Q-B)}}function iI(A,Q,B){let Y=f1A(A,Q,B);return d1A(Y.x,Y.y,Y.z)}var crQ=0.95047,lrQ=1,prQ=1.08883;function Vg(A){return A>0.206893034?A**3:(A-0.13793103448275862)/7.787}function c1A(A,Q,B){let Y=(A+16)/116,J=Q/500+Y,C=Y-B/200;return{x:crQ*Vg(J),y:lrQ*Vg(Y),z:prQ*Vg(C)}}function Ig(A){return A>0.0031308?1.055*A**0.4166666666666667-0.055:12.92*A}function l1A(A,Q,B){let Y=Ig(A*3.2406+Q*-1.5372+B*-0.4986),J=Ig(A*-0.9689+Q*1.8758+B*0.0415),C=Ig(A*0.0557+Q*-0.204+B*1.057);return{r:C5(Y*255),g:C5(J*255),b:C5(C*255)}}function irQ(A,Q,B){let Y=c1A(A,Q,B);return l1A(Y.x,Y.y,Y.z)}var nrQ={};QG(nrQ,{AbstractDistanceCalculator:()=>mW,AbstractEuclidean:()=>y2,AbstractManhattan:()=>g2,CIE94GraphicArts:()=>n1A,CIE94Textiles:()=>i1A,CIEDE2000:()=>wC,CMetric:()=>s1A,Euclidean:()=>r1A,EuclideanBT709:()=>a1A,EuclideanBT709NoAlpha:()=>o1A,Manhattan:()=>t1A,ManhattanBT709:()=>AXA,ManhattanNommyde:()=>e1A,PNGQuant:()=>QXA});var mW=class{constructor(){ZA(this,"_maxDistance"),ZA(this,"_whitePoint"),this._setDefaults(),this.setWhitePoint(255,255,255,255)}setWhitePoint(A,Q,B,Y){this._whitePoint={r:A>0?255/A:0,g:Q>0?255/Q:0,b:B>0?255/B:0,a:Y>0?255/Y:0},this._maxDistance=this.calculateRaw(A,Q,B,Y,0,0,0,0)}calculateNormalized(A,Q){return this.calculateRaw(A.r,A.g,A.b,A.a,Q.r,Q.g,Q.b,Q.a)/this._maxDistance}},p1A=class extends mW{calculateRaw(A,Q,B,Y,J,C,X,G){let F=iI(W8(A*this._whitePoint.r),W8(Q*this._whitePoint.g),W8(B*this._whitePoint.b)),W=iI(W8(J*this._whitePoint.r),W8(C*this._whitePoint.g),W8(X*this._whitePoint.b)),Z=F.L-W.L,U=F.a-W.a,$=F.b-W.b,E=Math.sqrt(F.a*F.a+F.b*F.b),K=Math.sqrt(W.a*W.a+W.b*W.b),I=E-K,V=U*U+$*$-I*I;V=V<0?0:Math.sqrt(V);let H=(G-Y)*this._whitePoint.a*this._kA;return Math.sqrt((Z/this._Kl)**2+(I/(1+this._K1*E))**2+(V/(1+this._K2*E))**2+H**2)}},i1A=class extends p1A{_setDefaults(){this._Kl=2,this._K1=0.048,this._K2=0.014,this._kA=0.049019607843137254}},n1A=class extends p1A{_setDefaults(){this._Kl=1,this._K1=0.045,this._K2=0.015,this._kA=0.09803921568627451}},M0=class extends mW{_setDefaults(){}static _calculatehp(A,Q){let B=Math.atan2(A,Q);if(B>=0)return B;return B+M0._deg360InRad}static _calculateRT(A,Q){let B=Q**7,Y=2*Math.sqrt(B/(B+M0._pow25to7)),J=M0._deg30InRad*Math.exp(-(((A-M0._deg275InRad)/M0._deg25InRad)**2));return-Math.sin(2*J)*Y}static _calculateT(A){return 1-0.17*Math.cos(A-M0._deg30InRad)+0.24*Math.cos(A*2)+0.32*Math.cos(A*3+M0._deg6InRad)-0.2*Math.cos(A*4-M0._deg63InRad)}static _calculate_ahp(A,Q,B,Y){let J=B+Y;if(A===0)return J;if(Q<=M0._deg180InRad)return J/2;if(J>8)+4*Z*Z+((767-F)*U*U>>8),E=(G-Y)*this._whitePoint.a;return Math.sqrt($+E*E)}_setDefaults(){}},y2=class extends mW{calculateRaw(A,Q,B,Y,J,C,X,G){let F=J-A,W=C-Q,Z=X-B,U=G-Y;return Math.sqrt(this._kR*F*F+this._kG*W*W+this._kB*Z*Z+this._kA*U*U)}},r1A=class extends y2{_setDefaults(){this._kR=1,this._kG=1,this._kB=1,this._kA=1}},a1A=class extends y2{_setDefaults(){this._kR=0.2126,this._kG=0.7152,this._kB=0.0722,this._kA=1}},o1A=class extends y2{_setDefaults(){this._kR=0.2126,this._kG=0.7152,this._kB=0.0722,this._kA=0}},g2=class extends mW{calculateRaw(A,Q,B,Y,J,C,X,G){let F=J-A,W=C-Q,Z=X-B,U=G-Y;if(F<0)F=0-F;if(W<0)W=0-W;if(Z<0)Z=0-Z;if(U<0)U=0-U;return this._kR*F+this._kG*W+this._kB*Z+this._kA*U}},t1A=class extends g2{_setDefaults(){this._kR=1,this._kG=1,this._kB=1,this._kA=1}},e1A=class extends g2{_setDefaults(){this._kR=0.4984,this._kG=0.8625,this._kB=0.2979,this._kA=1}},AXA=class extends g2{_setDefaults(){this._kR=0.2126,this._kG=0.7152,this._kB=0.0722,this._kA=1}},QXA=class extends mW{calculateRaw(A,Q,B,Y,J,C,X,G){let F=(G-Y)*this._whitePoint.a;return this._colordifferenceCh(A*this._whitePoint.r,J*this._whitePoint.r,F)+this._colordifferenceCh(Q*this._whitePoint.g,C*this._whitePoint.g,F)+this._colordifferenceCh(B*this._whitePoint.b,X*this._whitePoint.b,F)}_colordifferenceCh(A,Q,B){let Y=A-Q,J=Y+B;return Y*Y+J*J}_setDefaults(){}},srQ={};QG(srQ,{AbstractPaletteQuantizer:()=>nI,ColorHistogram:()=>rI,NeuQuant:()=>P0,NeuQuantFloat:()=>T0,RGBQuant:()=>JXA,WuColorCube:()=>CXA,WuQuant:()=>MU});var nI=class{quantizeSync(){for(let A of this.quantize())if(A.palette)return A.palette;throw Error("unreachable")}},Z8=class{constructor(){ZA(this,"r"),ZA(this,"g"),ZA(this,"b"),ZA(this,"a"),ZA(this,"uint32"),ZA(this,"rgba"),this.uint32=4294967295,this.r=this.g=this.b=this.a=0,this.rgba=[,,,,],this.rgba[0]=0,this.rgba[1]=0,this.rgba[2]=0,this.rgba[3]=0}static createByQuadruplet(A){let Q=new Z8;return Q.r=A[0]|0,Q.g=A[1]|0,Q.b=A[2]|0,Q.a=A[3]|0,Q._loadUINT32(),Q._loadQuadruplet(),Q}static createByRGBA(A,Q,B,Y){let J=new Z8;return J.r=A|0,J.g=Q|0,J.b=B|0,J.a=Y|0,J._loadUINT32(),J._loadQuadruplet(),J}static createByUint32(A){let Q=new Z8;return Q.uint32=A>>>0,Q._loadRGBA(),Q._loadQuadruplet(),Q}from(A){this.r=A.r,this.g=A.g,this.b=A.b,this.a=A.a,this.uint32=A.uint32,this.rgba[0]=A.r,this.rgba[1]=A.g,this.rgba[2]=A.b,this.rgba[3]=A.a}getLuminosity(A){let Q=this.r,B=this.g,Y=this.b;if(A)Q=Math.min(255,255-this.a+this.a*Q/255),B=Math.min(255,255-this.a+this.a*B/255),Y=Math.min(255,255-this.a+this.a*Y/255);return Q*0.2126+B*0.7152+Y*0.0722}_loadUINT32(){this.uint32=(this.a<<24|this.b<<16|this.g<<8|this.r)>>>0}_loadRGBA(){this.r=this.uint32&255,this.g=this.uint32>>>8&255,this.b=this.uint32>>>16&255,this.a=this.uint32>>>24&255}_loadQuadruplet(){this.rgba[0]=this.r,this.rgba[1]=this.g,this.rgba[2]=this.b,this.rgba[3]=this.a}},AG=class{constructor(){ZA(this,"_pointArray"),ZA(this,"_width"),ZA(this,"_height"),this._width=0,this._height=0,this._pointArray=[]}getWidth(){return this._width}getHeight(){return this._height}setWidth(A){this._width=A}setHeight(A){this._height=A}getPointArray(){return this._pointArray}clone(){let A=new AG;A._width=this._width,A._height=this._height;for(let Q=0,B=this._pointArray.length;Q=X&&A=0;Q--)if(A.uint32===this._pointArray[Q].uint32)return!0;return!1}getNearestColor(A,Q){return this._pointArray[this._getNearestIndex(A,Q)|0]}getPointContainer(){return this._pointContainer}_nearestPointFromCache(A){return typeof this._i32idx[A]==="number"?this._i32idx[A]:-1}_getNearestIndex(A,Q){let B=this._nearestPointFromCache(""+Q.uint32);if(B>=0)return B;let Y=Number.MAX_VALUE;B=0;for(let J=0,C=this._pointArray.length;J{let B=v2(A.r,A.g,A.b),Y=v2(Q.r,Q.g,Q.b),J=A.r===A.g&&A.g===A.b?0:1+Hg(B.h,S1A),X=(Q.r===Q.g&&Q.g===Q.b?0:1+Hg(Y.h,S1A))-J;if(X)return-X;let G=A.getLuminosity(!0),F=Q.getLuminosity(!0);if(F-G!==0)return F-G;let W=(Y.s*100|0)-(B.s*100|0);if(W)return-W;return 0})}},Ng={};QG(Ng,{HueStatistics:()=>BXA,Palette:()=>sI,Point:()=>Z8,PointContainer:()=>AG,ProgressTracker:()=>BG,arithmetic:()=>b1A});var rrQ=class{constructor(){ZA(this,"num",0),ZA(this,"cols",[])}},BXA=class{constructor(A,Q){ZA(this,"_numGroups"),ZA(this,"_minCols"),ZA(this,"_stats"),ZA(this,"_groupsFull"),this._numGroups=A,this._minCols=Q,this._stats=[];for(let B=0;B<=A;B++)this._stats[B]=new rrQ;this._groupsFull=0}check(A){if(this._groupsFull===this._numGroups+1)this.check=()=>{};let Q=A&255,B=A>>>8&255,Y=A>>>16&255,J=Q===B&&B===Y?0:1+Hg(v2(Q,B,Y).h,this._numGroups),C=this._stats[J],X=this._minCols;if(C.num++,C.num>X)return;if(C.num===X)this._groupsFull++;if(C.num<=X)this._stats[J].cols.push(A)}injectIntoDictionary(A){for(let Q=0;Q<=this._numGroups;Q++)if(this._stats[Q].num<=this._minCols)this._stats[Q].cols.forEach((B)=>{if(!A[B])A[B]=1;else A[B]++})}injectIntoArray(A){for(let Q=0;Q<=this._numGroups;Q++)if(this._stats[Q].num<=this._minCols)this._stats[Q].cols.forEach((B)=>{if(A.indexOf(B)===-1)A.push(B)})}},YXA=class{constructor(A,Q){ZA(this,"progress"),ZA(this,"_step"),ZA(this,"_range"),ZA(this,"_last"),ZA(this,"_progressRange"),this._range=A,this._progressRange=Q,this._step=Math.max(1,this._range/(YXA.steps+1)|0),this._last=-this._step,this.progress=0}shouldNotify(A){if(A-this._last>=this._step)return this._last=A,this.progress=Math.min(this._progressRange*this._last/this._range,this._progressRange),!0;return!1}},BG=YXA;ZA(BG,"steps",100);var pJ=3,arQ=class{constructor(A){ZA(this,"r"),ZA(this,"g"),ZA(this,"b"),ZA(this,"a"),this.r=this.g=this.b=this.a=A}toPoint(){return Z8.createByRGBA(this.r>>pJ,this.g>>pJ,this.b>>pJ,this.a>>pJ)}subtract(A,Q,B,Y){this.r-=A|0,this.g-=Q|0,this.b-=B|0,this.a-=Y|0}},CB=class extends nI{constructor(A,Q=256){super();ZA(this,"_pointArray"),ZA(this,"_networkSize"),ZA(this,"_network"),ZA(this,"_sampleFactor"),ZA(this,"_radPower"),ZA(this,"_freq"),ZA(this,"_bias"),ZA(this,"_distance"),this._distance=A,this._pointArray=[],this._sampleFactor=1,this._networkSize=Q,this._distance.setWhitePoint(255<>3)*CB._radiusBias,G=X>>CB._radiusBiasShift;if(G<=1)G=0;for(let Z=0;Z>>0;let F;if(Q=Q)U-=Q;if(Z++,J===0)J=1;if(Z%J===0){if(C-=C/B|0,X-=X/CB._radiusDecrease|0,G=X>>CB._radiusBiasShift,G<=1)G=0;for(let D=0;D>>0}}}_buildPalette(){let A=new sI;return this._network.forEach((Q)=>{A.add(Q.toPoint())}),A.sort(),A}_alterNeighbour(A,Q,B,Y,J,C){let X=Q-A;if(X<-1)X=-1;let G=Q+A;if(G>this._networkSize)G=this._networkSize;let F=Q+1,W=Q-1,Z=1;while(FX){let U=this._radPower[Z++]/CB._alphaRadBias;if(FX){let $=this._network[W--];$.subtract(U*($.r-J),U*($.g-Y),U*($.b-B),U*($.a-C))}}}_alterSingle(A,Q,B,Y,J,C){A/=CB._initAlpha;let X=this._network[Q];X.subtract(A*(X.r-J),A*(X.g-Y),A*(X.b-B),A*(X.a-C))}_contest(A,Q,B,Y){let J=1020<>CB._initialBiasShift-pJ);if($>CB._betaShift;this._freq[W]-=E,this._bias[W]+=E<>CB._betaShift);ZA(P0,"_betaGamma",CB._initialBias<>iJ,this.g>>iJ,this.b>>iJ,this.a>>iJ)}subtract(A,Q,B,Y){this.r-=A,this.g-=Q,this.b-=B,this.a-=Y}},XB=class extends nI{constructor(A,Q=256){super();ZA(this,"_pointArray"),ZA(this,"_networkSize"),ZA(this,"_network"),ZA(this,"_sampleFactor"),ZA(this,"_radPower"),ZA(this,"_freq"),ZA(this,"_bias"),ZA(this,"_distance"),this._distance=A,this._pointArray=[],this._sampleFactor=1,this._networkSize=Q,this._distance.setWhitePoint(255<>3)*XB._radiusBias,G=X>>XB._radiusBiasShift;if(G<=1)G=0;for(let Z=0;Z=Q)U-=Q;if(Z++,J===0)J=1;if(Z%J===0){if(C-=C/B,X-=X/XB._radiusDecrease,G=X>>XB._radiusBiasShift,G<=1)G=0;for(let D=0;D{A.add(Q.toPoint())}),A.sort(),A}_alterNeighbour(A,Q,B,Y,J,C){let X=Q-A;if(X<-1)X=-1;let G=Q+A;if(G>this._networkSize)G=this._networkSize;let F=Q+1,W=Q-1,Z=1;while(FX){let U=this._radPower[Z++]/XB._alphaRadBias;if(FX){let $=this._network[W--];$.subtract(U*($.r-J),U*($.g-Y),U*($.b-B),U*($.a-C))}}}_alterSingle(A,Q,B,Y,J,C){A/=XB._initAlpha;let X=this._network[Q];X.subtract(A*(X.r-J),A*(X.g-Y),A*(X.b-B),A*(X.a-C))}_contest(A,Q,B,Y){let J=1020<>XB._initialBiasShift-iJ);if($>XB._betaShift;this._freq[W]-=E,this._bias[W]+=E<>XB._betaShift);ZA(T0,"_betaGamma",XB._initialBias<this._histogram[Y]-this._histogram[B]);if(A.length===0)return[];let Q;switch(this._method){case 1:let B=Math.min(A.length,this._initColors),Y=A[B-1],J=this._histogram[Y];Q=A.slice(0,B);let C=B,X=A.length;while(C+B)}_colorStats1D(A){let Q=this._histogram,B=A.getPointArray(),Y=B.length;for(let J=0;J{let Z=Math.round(W.w*W.h/X)*pI._boxPixels;if(Z<2)Z=2;let U={};this._iterateBox(W,Q,($)=>{let E=Y[$].uint32;if(this._hueStats.check(E),E in F)F[E]++;else if(E in U){if(++U[E]>=Z)F[E]=U[E]}else U[E]=1})}),this._hueStats.injectIntoDictionary(F)}_iterateBox(A,Q,B){let Y=A,J=Y.y*Q+Y.x,C=(Y.y+Y.h-1)*Q+(Y.x+Y.w-1),X=Q-Y.w+1,G=0,F=J;do B.call(this,F),F+=++G%Y.w===0?X:1;while(F<=C)}_makeBoxes(A,Q,B,Y){let J=A%B,C=Q%Y,X=A-J,G=Q-C,F=[];for(let W=0;Wthis._colors){C.length=0;for(let Z=0;Zthis._colors*3?this._initialDistance:this._distanceIncrement}if(X$.distance-U.distance);let Z=0;while(X=0;Z--)if(Y[Z]===0){if(Z!==W-1)B[Z]=B[W-1];--W}B.length=W,Q.sort(),yield{palette:Q,progress:100}}};function HU(A){let Q=[];for(let B=0;B0){let B=this._sums[Q],Y=this._reds[Q]/B,J=this._greens[Q]/B,C=this._blues[Q]/B,X=this._alphas[Q]/B,G=Z8.createByRGBA(Y|0,J|0,C|0,X|0);A.add(G)}A.sort(),yield{palette:A,progress:100}}*_preparePalette(){yield*this._calculateMoments();let A=0,Q=HU(this._colors);for(let X=1;X1?this._calculateVariance(this._cubes[A]):0,Q[X]=this._cubes[X].volume>1?this._calculateVariance(this._cubes[X]):0;else Q[A]=0,X--;A=0;let G=Q[0];for(let F=1;F<=X;++F)if(Q[F]>G)G=Q[F],A=F;if(G<=0){this._colors=X+1;break}}let B=[],Y=[],J=[],C=[];for(let X=0;X0)B[X]=OQ._volume(this._cubes[X],this._momentsRed)/G|0,Y[X]=OQ._volume(this._cubes[X],this._momentsGreen)/G|0,J[X]=OQ._volume(this._cubes[X],this._momentsBlue)/G|0,C[X]=OQ._volume(this._cubes[X],this._momentsAlpha)/G|0;else B[X]=0,Y[X]=0,J[X]=0,C[X]=0}this._reds=HU(this._colors+1),this._greens=HU(this._colors+1),this._blues=HU(this._colors+1),this._alphas=HU(this._colors+1),this._sums=HU(this._colors+1);for(let X=0,G=this._pixels.length;X>Q)+1,Y=(A.g>>Q)+1,J=(A.b>>Q)+1,C=(A.a>>Q)+1;this._weights[C][B][Y][J]++,this._momentsRed[C][B][Y][J]+=A.r,this._momentsGreen[C][B][Y][J]+=A.g,this._momentsBlue[C][B][Y][J]+=A.b,this._momentsAlpha[C][B][Y][J]+=A.a,this._moments[C][B][Y][J]+=this._table[A.r]+this._table[A.g]+this._table[A.b]+this._table[A.a]}*_calculateMoments(){let A=[],Q=[],B=[],Y=[],J=[],C=[],X=NU(this._sideSize,this._sideSize,this._sideSize),G=NU(this._sideSize,this._sideSize,this._sideSize),F=NU(this._sideSize,this._sideSize,this._sideSize),W=NU(this._sideSize,this._sideSize,this._sideSize),Z=NU(this._sideSize,this._sideSize,this._sideSize),U=NU(this._sideSize,this._sideSize,this._sideSize),$=0,E=new BG(this._alphaMaxSideIndex*this._maxSideIndex,99);for(let K=1;K<=this._alphaMaxSideIndex;++K){LU(X,this._sideSize,this._sideSize,this._sideSize,0),LU(G,this._sideSize,this._sideSize,this._sideSize,0),LU(F,this._sideSize,this._sideSize,this._sideSize,0),LU(W,this._sideSize,this._sideSize,this._sideSize,0),LU(Z,this._sideSize,this._sideSize,this._sideSize,0),LU(U,this._sideSize,this._sideSize,this._sideSize,0);for(let I=1;I<=this._maxSideIndex;++I,++$){if(E.shouldNotify($))yield{progress:E.progress};qU(A,this._sideSize,0),qU(Q,this._sideSize,0),qU(B,this._sideSize,0),qU(Y,this._sideSize,0),qU(J,this._sideSize,0),qU(C,this._sideSize,0);for(let V=1;V<=this._maxSideIndex;++V){let H=0,D=0,L=0,z=0,M=0,N=0;for(let q=1;q<=this._maxSideIndex;++q)H+=this._weights[K][I][V][q],D+=this._momentsRed[K][I][V][q],L+=this._momentsGreen[K][I][V][q],z+=this._momentsBlue[K][I][V][q],M+=this._momentsAlpha[K][I][V][q],N+=this._moments[K][I][V][q],A[q]+=H,Q[q]+=D,B[q]+=L,Y[q]+=z,J[q]+=M,C[q]+=N,X[I][V][q]=X[I-1][V][q]+A[q],G[I][V][q]=G[I-1][V][q]+Q[q],F[I][V][q]=F[I-1][V][q]+B[q],W[I][V][q]=W[I-1][V][q]+Y[q],Z[I][V][q]=Z[I-1][V][q]+J[q],U[I][V][q]=U[I-1][V][q]+C[q],this._weights[K][I][V][q]=this._weights[K-1][I][V][q]+X[I][V][q],this._momentsRed[K][I][V][q]=this._momentsRed[K-1][I][V][q]+G[I][V][q],this._momentsGreen[K][I][V][q]=this._momentsGreen[K-1][I][V][q]+F[I][V][q],this._momentsBlue[K][I][V][q]=this._momentsBlue[K-1][I][V][q]+W[I][V][q],this._momentsAlpha[K][I][V][q]=this._momentsAlpha[K-1][I][V][q]+Z[I][V][q],this._moments[K][I][V][q]=this._moments[K-1][I][V][q]+U[I][V][q]}}}}static _volumeFloat(A,Q){return Q[A.alphaMaximum][A.redMaximum][A.greenMaximum][A.blueMaximum]-Q[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMaximum]-Q[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMaximum]+Q[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMaximum]-Q[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMaximum]+Q[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMaximum]+Q[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMaximum]-Q[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(Q[A.alphaMaximum][A.redMaximum][A.greenMaximum][A.blueMinimum]-Q[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMinimum]-Q[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMinimum]+Q[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]-Q[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMinimum]+Q[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]+Q[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]-Q[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum])}static _volume(A,Q){return OQ._volumeFloat(A,Q)|0}static _top(A,Q,B,Y){let J;switch(Q){case OQ._alpha:J=Y[B][A.redMaximum][A.greenMaximum][A.blueMaximum]-Y[B][A.redMaximum][A.greenMinimum][A.blueMaximum]-Y[B][A.redMinimum][A.greenMaximum][A.blueMaximum]+Y[B][A.redMinimum][A.greenMinimum][A.blueMaximum]-(Y[B][A.redMaximum][A.greenMaximum][A.blueMinimum]-Y[B][A.redMaximum][A.greenMinimum][A.blueMinimum]-Y[B][A.redMinimum][A.greenMaximum][A.blueMinimum]+Y[B][A.redMinimum][A.greenMinimum][A.blueMinimum]);break;case OQ._red:J=Y[A.alphaMaximum][B][A.greenMaximum][A.blueMaximum]-Y[A.alphaMaximum][B][A.greenMinimum][A.blueMaximum]-Y[A.alphaMinimum][B][A.greenMaximum][A.blueMaximum]+Y[A.alphaMinimum][B][A.greenMinimum][A.blueMaximum]-(Y[A.alphaMaximum][B][A.greenMaximum][A.blueMinimum]-Y[A.alphaMaximum][B][A.greenMinimum][A.blueMinimum]-Y[A.alphaMinimum][B][A.greenMaximum][A.blueMinimum]+Y[A.alphaMinimum][B][A.greenMinimum][A.blueMinimum]);break;case OQ._green:J=Y[A.alphaMaximum][A.redMaximum][B][A.blueMaximum]-Y[A.alphaMaximum][A.redMinimum][B][A.blueMaximum]-Y[A.alphaMinimum][A.redMaximum][B][A.blueMaximum]+Y[A.alphaMinimum][A.redMinimum][B][A.blueMaximum]-(Y[A.alphaMaximum][A.redMaximum][B][A.blueMinimum]-Y[A.alphaMaximum][A.redMinimum][B][A.blueMinimum]-Y[A.alphaMinimum][A.redMaximum][B][A.blueMinimum]+Y[A.alphaMinimum][A.redMinimum][B][A.blueMinimum]);break;case OQ._blue:J=Y[A.alphaMaximum][A.redMaximum][A.greenMaximum][B]-Y[A.alphaMaximum][A.redMaximum][A.greenMinimum][B]-Y[A.alphaMaximum][A.redMinimum][A.greenMaximum][B]+Y[A.alphaMaximum][A.redMinimum][A.greenMinimum][B]-(Y[A.alphaMinimum][A.redMaximum][A.greenMaximum][B]-Y[A.alphaMinimum][A.redMaximum][A.greenMinimum][B]-Y[A.alphaMinimum][A.redMinimum][A.greenMaximum][B]+Y[A.alphaMinimum][A.redMinimum][A.greenMinimum][B]);break;default:throw Error("impossible")}return J|0}static _bottom(A,Q,B){switch(Q){case OQ._alpha:return-B[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMaximum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMaximum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMaximum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(-B[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMinimum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);case OQ._red:return-B[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMaximum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMaximum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMaximum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(-B[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMinimum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);case OQ._green:return-B[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMaximum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMaximum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMaximum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(-B[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);case OQ._blue:return-B[A.alphaMaximum][A.redMaximum][A.greenMaximum][A.blueMinimum]+B[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]-(-B[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMinimum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);default:return 0}}_calculateVariance(A){let Q=OQ._volume(A,this._momentsRed),B=OQ._volume(A,this._momentsGreen),Y=OQ._volume(A,this._momentsBlue),J=OQ._volume(A,this._momentsAlpha),C=OQ._volumeFloat(A,this._moments),X=OQ._volume(A,this._weights),G=Q*Q+B*B+Y*Y+J*J;return C-G/X}_maximize(A,Q,B,Y,J,C,X,G,F){let W=OQ._bottom(A,Q,this._momentsRed)|0,Z=OQ._bottom(A,Q,this._momentsGreen)|0,U=OQ._bottom(A,Q,this._momentsBlue)|0,$=OQ._bottom(A,Q,this._momentsAlpha)|0,E=OQ._bottom(A,Q,this._weights)|0,K=0,I=-1;for(let V=B;VK)K=q,I=V}}}return{max:K,position:I}}_cut(A,Q){let B,Y=OQ._volume(A,this._momentsRed),J=OQ._volume(A,this._momentsGreen),C=OQ._volume(A,this._momentsBlue),X=OQ._volume(A,this._momentsAlpha),G=OQ._volume(A,this._weights),F=this._maximize(A,OQ._red,A.redMinimum+1,A.redMaximum,Y,J,C,X,G),W=this._maximize(A,OQ._green,A.greenMinimum+1,A.greenMaximum,Y,J,C,X,G),Z=this._maximize(A,OQ._blue,A.blueMinimum+1,A.blueMaximum,Y,J,C,X,G),U=this._maximize(A,OQ._alpha,A.alphaMinimum+1,A.alphaMaximum,Y,J,C,X,G);if(U.max>=F.max&&U.max>=W.max&&U.max>=Z.max){if(B=OQ._alpha,U.position<0)return!1}else if(F.max>=U.max&&F.max>=W.max&&F.max>=Z.max)B=OQ._red;else if(W.max>=U.max&&W.max>=F.max&&W.max>=Z.max)B=OQ._green;else B=OQ._blue;switch(Q.redMaximum=A.redMaximum,Q.greenMaximum=A.greenMaximum,Q.blueMaximum=A.blueMaximum,Q.alphaMaximum=A.alphaMaximum,B){case OQ._red:Q.redMinimum=A.redMaximum=F.position,Q.greenMinimum=A.greenMinimum,Q.blueMinimum=A.blueMinimum,Q.alphaMinimum=A.alphaMinimum;break;case OQ._green:Q.greenMinimum=A.greenMaximum=W.position,Q.redMinimum=A.redMinimum,Q.blueMinimum=A.blueMinimum,Q.alphaMinimum=A.alphaMinimum;break;case OQ._blue:Q.blueMinimum=A.blueMaximum=Z.position,Q.redMinimum=A.redMinimum,Q.greenMinimum=A.greenMinimum,Q.alphaMinimum=A.alphaMinimum;break;case OQ._alpha:Q.alphaMinimum=A.alphaMaximum=U.position,Q.blueMinimum=A.blueMinimum,Q.redMinimum=A.redMinimum,Q.greenMinimum=A.greenMinimum;break}return A.volume=(A.redMaximum-A.redMinimum)*(A.greenMaximum-A.greenMinimum)*(A.blueMaximum-A.blueMinimum)*(A.alphaMaximum-A.alphaMinimum),Q.volume=(Q.redMaximum-Q.redMinimum)*(Q.greenMaximum-Q.greenMinimum)*(Q.blueMaximum-Q.blueMinimum)*(Q.alphaMaximum-Q.alphaMinimum),!0}_initialize(A){this._colors=A,this._cubes=[];for(let Q=0;Qh2,ErrorDiffusionArray:()=>g1,ErrorDiffusionArrayKernel:()=>GXA,ErrorDiffusionRiemersma:()=>Lg,NearestColor:()=>XXA});var h2=class{quantizeSync(A,Q){for(let B of this.quantize(A,Q))if(B.pointContainer)return B.pointContainer;throw Error("unreachable")}},XXA=class extends h2{constructor(A){super();ZA(this,"_distance"),this._distance=A}*quantize(A,Q){let B=A.getPointArray(),Y=A.getWidth(),J=A.getHeight(),C=new BG(J,99);for(let X=0;X{return A[A.FloydSteinberg=0]="FloydSteinberg",A[A.FalseFloydSteinberg=1]="FalseFloydSteinberg",A[A.Stucki=2]="Stucki",A[A.Atkinson=3]="Atkinson",A[A.Jarvis=4]="Jarvis",A[A.Burkes=5]="Burkes",A[A.Sierra=6]="Sierra",A[A.TwoSierra=7]="TwoSierra",A[A.SierraLite=8]="SierraLite",A})(GXA||{}),g1=class extends h2{constructor(A,Q,B=!0,Y=0,J=!1){super();ZA(this,"_minColorDistance"),ZA(this,"_serpentine"),ZA(this,"_kernel"),ZA(this,"_calculateErrorLikeGIMP"),ZA(this,"_distance"),this._setKernel(Q),this._distance=A,this._minColorDistance=Y,this._serpentine=B,this._calculateErrorLikeGIMP=J}*quantize(A,Q){let B=A.getPointArray(),Y=new Z8,J=A.getWidth(),C=A.getHeight(),X=[],G=1,F=1;for(let Z of this._kernel){let U=Z[2]+1;if(F=0&&k+I=0&&T+ZQ)A.length=Q;let B=A.length;for(let Y=0;Y=0&&A.x=0&&A.y{let W=B[G+F*Y],{r:Z,g:U,b:$,a:E}=W;for(let H=0;HJaQ});var BaQ=0.01,YaQ=0.03;function JaQ(A,Q){if(A.getHeight()!==Q.getHeight()||A.getWidth()!==Q.getWidth())throw Error("Images have different sizes!");let Y=255,J=(BaQ*Y)**2,C=(YaQ*Y)**2,X=0,G=0;return CaQ(A,Q,(F,W,Z,U)=>{let $=0,E=0,K=0;for(let L=0;Lprocess.nextTick(A):(A)=>setTimeout(A,0);function FXA(A,{colorDistanceFormula:Q,paletteQuantization:B,colors:Y}={}){let J=ZXA(Q),C=GaQ(J,B,Y);return A.forEach((X)=>C.sample(X)),C.quantizeSync()}function WXA(A,Q,{colorDistanceFormula:B,imageQuantization:Y}={}){let J=ZXA(B);return XaQ(J,Y).quantizeSync(A,Q)}function ZXA(A="euclidean-bt709"){switch(A){case"cie94-graphic-arts":return new n1A;case"cie94-textiles":return new i1A;case"ciede2000":return new wC;case"color-metric":return new s1A;case"euclidean":return new r1A;case"euclidean-bt709":return new a1A;case"euclidean-bt709-noalpha":return new o1A;case"manhattan":return new t1A;case"manhattan-bt709":return new AXA;case"manhattan-nommyde":return new e1A;case"pngquant":return new QXA;default:throw Error(`Unknown colorDistanceFormula ${A}`)}}function XaQ(A,Q="floyd-steinberg"){switch(Q){case"nearest":return new XXA(A);case"riemersma":return new Lg(A);case"floyd-steinberg":return new g1(A,0);case"false-floyd-steinberg":return new g1(A,1);case"stucki":return new g1(A,2);case"atkinson":return new g1(A,3);case"jarvis":return new g1(A,4);case"burkes":return new g1(A,5);case"sierra":return new g1(A,6);case"two-sierra":return new g1(A,7);case"sierra-lite":return new g1(A,8);default:throw Error(`Unknown imageQuantization ${Q}`)}}function GaQ(A,Q="wuquant",B=256){switch(Q){case"neuquant":return new P0(A,B);case"rgbquant":return new JXA(A,B);case"wuquant":return new MU(A,B);case"neuquant-float":return new T0(A,B);default:throw Error(`Unknown paletteQuantization ${Q}`)}}var FaQ=TB.object({colors:TB.number().optional(),colorDistanceFormula:TB.union([TB.literal("cie94-textiles"),TB.literal("cie94-graphic-arts"),TB.literal("ciede2000"),TB.literal("color-metric"),TB.literal("euclidean"),TB.literal("euclidean-bt709-noalpha"),TB.literal("euclidean-bt709"),TB.literal("manhattan"),TB.literal("manhattan-bt709"),TB.literal("manhattan-nommyde"),TB.literal("pngquant")]).optional(),paletteQuantization:TB.union([TB.literal("neuquant"),TB.literal("neuquant-float"),TB.literal("rgbquant"),TB.literal("wuquant")]).optional(),imageQuantization:TB.union([TB.literal("nearest"),TB.literal("riemersma"),TB.literal("floyd-steinberg"),TB.literal("false-floyd-steinberg"),TB.literal("stucki"),TB.literal("atkinson"),TB.literal("jarvis"),TB.literal("burkes"),TB.literal("sierra"),TB.literal("two-sierra"),TB.literal("sierra-lite")]).optional()}),$XA={quantize(A,Q){let{colors:B,colorDistanceFormula:Y,paletteQuantization:J,imageQuantization:C}=FaQ.parse(Q),X=Ng.PointContainer.fromUint8Array(A.bitmap.data,A.bitmap.width,A.bitmap.height),G=FXA([X],{colors:B,colorDistanceFormula:Y,paletteQuantization:J}),F=WXA(X,G,{colorDistanceFormula:Y,imageQuantization:C});return A.bitmap.data=Buffer.from(F.toUint8Array()),A}};var ZaQ=[ZU,D5A,N5A,$U,Z1A,$1A,VU,U1A,E1A,K1A,V1A,z1A,R1A,w1A,RC,P1A,T1A,$XA],$aQ=[hz,$YA,nz,rz,tz,V2],WFY={bmp:hz().mime,gif:nz().mime,jpeg:rz().mime,png:tz().mime,tiff:V2().mime},zU=F1A({formats:$aQ,plugins:ZaQ});var G0={ATLAS_DIR:".atlas",ATLAS_PNG_FILE:"atlas.png",ATLAS_KTX2_FILE:"atlas.ktx2",ATLAS_MANIFEST_FILE:"atlas.json",TEXTURE_SIZE:24,TEXTURE_PADDING:20,ALPHA_TEST_THRESHOLD:0.05,DATA_SCHEMA_VERSION:1,DIRECTORIES:[zY.assetsLibraryPath&&$8.join(zY.assetsLibraryPath,"blocks"),$8.resolve(process.cwd(),"assets","blocks")].filter(Boolean)};class U7{static instance=new U7;generate=process.env.NODE_ENV!=="production";_textureUriMetadata=new Map;constructor(){}hasBlockTexture(A){return this._textureUriMetadata.has(A)||["+x","-x","+y","-y","+z","-z"].every((Q)=>this._textureUriMetadata.has(`${A}/${Q}.png`))}getBlockTextureMetadata(A){let Q=this._textureUriMetadata.get(A);if(Q)return[Q];let B=["+x","-x","+y","-y","+z","-z"].map((Y)=>this._textureUriMetadata.get(`${A}/${Y}.png`)).filter(Boolean);return B.length===6?B:void 0}async preloadAtlas(){let A=await this._getAbsoluteTexturePaths(),Q=$8.resolve(process.cwd(),"assets/blocks",G0.ATLAS_DIR);if(this._loadCachedAtlasManifest(A,Q))return console.info(`BlockTextureRegistry.preloadAtlas(): Using cached atlas for ${A.length} block textures`);if(!this.generate)n.fatalError("BlockTextureRegistry.preloadAtlas(): No cached atlas found in production. Run development server to generate atlas.");console.info(`BlockTextureRegistry.preloadAtlas(): Generating atlas for ${A.length} block textures...`);let B=await Promise.all(A.map(async(U)=>{let $=await zU.read(U),E=this._absoluteTexturePathToTextureUri(U);if($.width!==G0.TEXTURE_SIZE||$.height!==G0.TEXTURE_SIZE)$.resize({w:G0.TEXTURE_SIZE,h:G0.TEXTURE_SIZE});return{textureUri:E,image:$,metadata:this._analyzeTexture($.bitmap)}})),Y=G0.TEXTURE_SIZE+G0.TEXTURE_PADDING*2,{cols:J,rows:C}=this._calculateGridLayout(B.length),X=J*Y,G=C*Y,F=new zU({width:X,height:G,color:0});for(let U=0;U{let U=(F*C+G)*4,$=(Z*C+W)*4;J[$]=J[U],J[$+1]=J[U+1],J[$+2]=J[U+2],J[$+3]=J[U+3]};for(let G=0;G=B+Q||F=B+Q){let W=Math.max(B,Math.min(B+Q-1,F)),Z=Math.max(B,Math.min(B+Q-1,G));X(W,Z,F,G)}return Y}_analyzeTexture(A){let{width:Q,height:B,data:Y}=A,J=Q*B,C=[0,0,0],X=255*G0.ALPHA_TEST_THRESHOLD,G=!1,F=!1,W=0;for(let Z=0;Z=X,F||=UZ/J/255),isTransparent:G,needsAlphaTest:F,transparencyRatio:W/J}}_calculateGridLayout(A){let Q=(C)=>2**Math.ceil(Math.log2(C)),B=Math.ceil(Math.sqrt(A)),Y=Q(B),J=Q(Math.ceil(A/Y));return{cols:Y,rows:J}}async _getAbsoluteTexturePaths(){let A=new Map;for(let B of G0.DIRECTORIES){if(!$7.existsSync(B))continue;let Y=await T4("**/*.png",{cwd:B,follow:!0});for(let J of Y){let C=$8.join(B,J),X=this._absoluteTexturePathToTextureUri(C);A.set(X,C)}}return Array.from(A.keys()).sort().map((B)=>A.get(B))}}var j,IB=Array(128).fill(void 0);function $B(A){return IB[A]}IB.push(void 0,null,!0,!1);var BH=IB.length;function lB(A){BH===IB.length&&IB.push(IB.length+1);let Q=BH;return BH=IB[Q],IB[Q]=A,Q}function x2(A,Q){try{return A.apply(this,Q)}catch(B){j.__wbindgen_export_0(lB(B))}}var fXA=typeof TextDecoder<"u"?new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0}):{decode:()=>{throw Error("TextDecoder not available")}};typeof TextDecoder<"u"&&fXA.decode();var oI=null;function kg(A,Q){return A>>>=0,fXA.decode((oI!==null&&oI.byteLength!==0||(oI=new Uint8Array(j.memory.buffer)),oI).subarray(A,A+Q))}function VQ(A){return A==null}var uW=null;function IY(){return(uW===null||uW.buffer.detached===!0||uW.buffer.detached===void 0&&uW.buffer!==j.memory.buffer)&&(uW=new DataView(j.memory.buffer)),uW}function YH(A){let Q=$B(A);return function(B){B<132||(IB[B]=BH,BH=B)}(A),Q}function c(A,Q){if(!(A instanceof Q))throw Error(`expected instance of ${Q.name}`)}var pB=128;function F0(A){if(pB==1)throw Error("out of js stack");return IB[--pB]=A,pB}var tI=null;function EaQ(A,Q){return A>>>=0,(tI!==null&&tI.byteLength!==0||(tI=new Int32Array(j.memory.buffer)),tI).subarray(A/4,A/4+Q)}var eI=null;function bXA(){return eI!==null&&eI.byteLength!==0||(eI=new Float32Array(j.memory.buffer)),eI}function UXA(A,Q){return A>>>=0,bXA().subarray(A/4,A/4+Q)}var AH=null;function mXA(){return AH!==null&&AH.byteLength!==0||(AH=new Uint32Array(j.memory.buffer)),AH}var nJ=0;function aI(A,Q){let B=Q(4*A.length,4)>>>0;return mXA().set(A,B/4),nJ=A.length,B}function E7(A,Q){let B=Q(4*A.length,4)>>>0;return bXA().set(A,B/4),nJ=A.length,B}Object.freeze({Vertex:0,0:"Vertex",Edge:1,1:"Edge",Face:2,2:"Face",Unknown:3,3:"Unknown"});var r2=Object.freeze({LinX:0,0:"LinX",LinY:1,1:"LinY",LinZ:2,2:"LinZ",AngX:3,3:"AngX",AngY:4,4:"AngY",AngZ:5,5:"AngZ"}),OC=Object.freeze({Revolute:0,0:"Revolute",Fixed:1,1:"Fixed",Prismatic:2,2:"Prismatic",Rope:3,3:"Rope",Spring:4,4:"Spring",Spherical:5,5:"Spherical",Generic:6,6:"Generic"});Object.freeze({AccelerationBased:0,0:"AccelerationBased",ForceBased:1,1:"ForceBased"}),Object.freeze({Dynamic:0,0:"Dynamic",Fixed:1,1:"Fixed",KinematicPositionBased:2,2:"KinematicPositionBased",KinematicVelocityBased:3,3:"KinematicVelocityBased"});var bY=Object.freeze({Ball:0,0:"Ball",Cuboid:1,1:"Cuboid",Capsule:2,2:"Capsule",Segment:3,3:"Segment",Polyline:4,4:"Polyline",Triangle:5,5:"Triangle",TriMesh:6,6:"TriMesh",HeightField:7,7:"HeightField",Compound:8,8:"Compound",ConvexPolyhedron:9,9:"ConvexPolyhedron",Cylinder:10,10:"Cylinder",Cone:11,11:"Cone",RoundCuboid:12,12:"RoundCuboid",RoundTriangle:13,13:"RoundTriangle",RoundCylinder:14,14:"RoundCylinder",RoundCone:15,15:"RoundCone",RoundConvexPolyhedron:16,16:"RoundConvexPolyhedron",HalfSpace:17,17:"HalfSpace",Voxels:18,18:"Voxels"}),qg=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawbroadphase_free(A>>>0,1));class JG{static __wrap(A){A>>>=0;let Q=Object.create(JG.prototype);return Q.__wbg_ptr=A,qg.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,qg.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawbroadphase_free(A,0)}constructor(){let A=j.rawbroadphase_new();return this.__wbg_ptr=A>>>0,qg.register(this,this.__wbg_ptr,this),this}castRay(A,Q,B,Y,J,C,X,G,F,W,Z,U){try{c(A,HY),c(Q,J0),c(B,S0),c(Y,r),c(J,r);let $=j.rawbroadphase_castRay(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C,X,G,VQ(F)?4294967297:F>>>0,!VQ(W),VQ(W)?0:W,!VQ(Z),VQ(Z)?0:Z,F0(U));return $===0?void 0:ng.__wrap($)}finally{IB[pB++]=void 0}}castRayAndGetNormal(A,Q,B,Y,J,C,X,G,F,W,Z,U){try{c(A,HY),c(Q,J0),c(B,S0),c(Y,r),c(J,r);let $=j.rawbroadphase_castRayAndGetNormal(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C,X,G,VQ(F)?4294967297:F>>>0,!VQ(W),VQ(W)?0:W,!VQ(Z),VQ(Z)?0:Z,F0(U));return $===0?void 0:t2.__wrap($)}finally{IB[pB++]=void 0}}intersectionsWithRay(A,Q,B,Y,J,C,X,G,F,W,Z,U,$){try{c(A,HY),c(Q,J0),c(B,S0),c(Y,r),c(J,r),j.rawbroadphase_intersectionsWithRay(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C,X,F0(G),F,VQ(W)?4294967297:W>>>0,!VQ(Z),VQ(Z)?0:Z,!VQ(U),VQ(U)?0:U,F0($))}finally{IB[pB++]=void 0,IB[pB++]=void 0}}intersectionWithShape(A,Q,B,Y,J,C,X,G,F,W,Z){try{let E=j.__wbindgen_add_to_stack_pointer(-16);c(A,HY),c(Q,J0),c(B,S0),c(Y,r),c(J,AB),c(C,UQ),j.rawbroadphase_intersectionWithShape(E,this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C.__wbg_ptr,X,VQ(G)?4294967297:G>>>0,!VQ(F),VQ(F)?0:F,!VQ(W),VQ(W)?0:W,F0(Z));var U=IY().getInt32(E+0,!0),$=IY().getFloat64(E+8,!0);return U===0?void 0:$}finally{j.__wbindgen_add_to_stack_pointer(16),IB[pB++]=void 0}}projectPoint(A,Q,B,Y,J,C,X,G,F,W){try{c(A,HY),c(Q,J0),c(B,S0),c(Y,r);let Z=j.rawbroadphase_projectPoint(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J,C,VQ(X)?4294967297:X>>>0,!VQ(G),VQ(G)?0:G,!VQ(F),VQ(F)?0:F,F0(W));return Z===0?void 0:b2.__wrap(Z)}finally{IB[pB++]=void 0}}projectPointAndGetFeature(A,Q,B,Y,J,C,X,G,F){try{c(A,HY),c(Q,J0),c(B,S0),c(Y,r);let W=j.rawbroadphase_projectPointAndGetFeature(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J,VQ(C)?4294967297:C>>>0,!VQ(X),VQ(X)?0:X,!VQ(G),VQ(G)?0:G,F0(F));return W===0?void 0:b2.__wrap(W)}finally{IB[pB++]=void 0}}intersectionsWithPoint(A,Q,B,Y,J,C,X,G,F,W){try{c(A,HY),c(Q,J0),c(B,S0),c(Y,r),j.rawbroadphase_intersectionsWithPoint(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,F0(J),C,VQ(X)?4294967297:X>>>0,!VQ(G),VQ(G)?0:G,!VQ(F),VQ(F)?0:F,F0(W))}finally{IB[pB++]=void 0,IB[pB++]=void 0}}castShape(A,Q,B,Y,J,C,X,G,F,W,Z,U,$,E,K){try{c(A,HY),c(Q,J0),c(B,S0),c(Y,r),c(J,AB),c(C,r),c(X,UQ);let I=j.rawbroadphase_castShape(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C.__wbg_ptr,X.__wbg_ptr,G,F,W,Z,VQ(U)?4294967297:U>>>0,!VQ($),VQ($)?0:$,!VQ(E),VQ(E)?0:E,F0(K));return I===0?void 0:a2.__wrap(I)}finally{IB[pB++]=void 0}}intersectionsWithShape(A,Q,B,Y,J,C,X,G,F,W,Z,U){try{c(A,HY),c(Q,J0),c(B,S0),c(Y,r),c(J,AB),c(C,UQ),j.rawbroadphase_intersectionsWithShape(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C.__wbg_ptr,F0(X),G,VQ(F)?4294967297:F>>>0,!VQ(W),VQ(W)?0:W,!VQ(Z),VQ(Z)?0:Z,F0(U))}finally{IB[pB++]=void 0,IB[pB++]=void 0}}collidersWithAabbIntersectingAabb(A,Q,B,Y,J,C){try{c(A,HY),c(Q,J0),c(B,S0),c(Y,r),c(J,r),j.rawbroadphase_collidersWithAabbIntersectingAabb(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,F0(C))}finally{IB[pB++]=void 0}}}var EXA=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawccdsolver_free(A>>>0,1));class f2{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,EXA.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawccdsolver_free(A,0)}constructor(){let A=j.rawccdsolver_new();return this.__wbg_ptr=A>>>0,EXA.register(this,this.__wbg_ptr,this),this}}var KXA=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawcharactercollision_free(A>>>0,1));class ug{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,KXA.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawcharactercollision_free(A,0)}constructor(){let A=j.rawcharactercollision_new();return this.__wbg_ptr=A>>>0,KXA.register(this,this.__wbg_ptr,this),this}handle(){return j.rawcharactercollision_handle(this.__wbg_ptr)}translationDeltaApplied(){let A=j.rawcharactercollision_translationDeltaApplied(this.__wbg_ptr);return r.__wrap(A)}translationDeltaRemaining(){let A=j.rawcharactercollision_translationDeltaRemaining(this.__wbg_ptr);return r.__wrap(A)}toi(){return j.rawcharactercollision_toi(this.__wbg_ptr)}worldWitness1(){let A=j.rawcharactercollision_worldWitness1(this.__wbg_ptr);return r.__wrap(A)}worldWitness2(){let A=j.rawcharactercollision_worldWitness2(this.__wbg_ptr);return r.__wrap(A)}worldNormal1(){let A=j.rawcharactercollision_worldNormal1(this.__wbg_ptr);return r.__wrap(A)}worldNormal2(){let A=j.rawcharactercollision_worldNormal2(this.__wbg_ptr);return r.__wrap(A)}}var Mg=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawcolliderset_free(A>>>0,1));class S0{static __wrap(A){A>>>=0;let Q=Object.create(S0.prototype);return Q.__wbg_ptr=A,Mg.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Mg.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawcolliderset_free(A,0)}coTranslation(A){let Q=j.rawcolliderset_coTranslation(this.__wbg_ptr,A);return r.__wrap(Q)}coRotation(A){let Q=j.rawcolliderset_coRotation(this.__wbg_ptr,A);return AB.__wrap(Q)}coTranslationWrtParent(A){let Q=j.rawcolliderset_coTranslationWrtParent(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}coRotationWrtParent(A){let Q=j.rawcolliderset_coRotationWrtParent(this.__wbg_ptr,A);return Q===0?void 0:AB.__wrap(Q)}coSetTranslation(A,Q,B,Y){j.rawcolliderset_coSetTranslation(this.__wbg_ptr,A,Q,B,Y)}coSetTranslationWrtParent(A,Q,B,Y){j.rawcolliderset_coSetTranslationWrtParent(this.__wbg_ptr,A,Q,B,Y)}coSetRotation(A,Q,B,Y,J){j.rawcolliderset_coSetRotation(this.__wbg_ptr,A,Q,B,Y,J)}coSetRotationWrtParent(A,Q,B,Y,J){j.rawcolliderset_coSetRotationWrtParent(this.__wbg_ptr,A,Q,B,Y,J)}coIsSensor(A){return j.rawcolliderset_coIsSensor(this.__wbg_ptr,A)!==0}coShapeType(A){return j.rawcolliderset_coShapeType(this.__wbg_ptr,A)}coHalfspaceNormal(A){let Q=j.rawcolliderset_coHalfspaceNormal(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}coHalfExtents(A){let Q=j.rawcolliderset_coHalfExtents(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}coSetHalfExtents(A,Q){c(Q,r),j.rawcolliderset_coSetHalfExtents(this.__wbg_ptr,A,Q.__wbg_ptr)}coRadius(A){let Q=j.rawcolliderset_coRadius(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}coSetRadius(A,Q){j.rawcolliderset_coSetRadius(this.__wbg_ptr,A,Q)}coHalfHeight(A){let Q=j.rawcolliderset_coHalfHeight(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}coSetHalfHeight(A,Q){j.rawcolliderset_coSetHalfHeight(this.__wbg_ptr,A,Q)}coRoundRadius(A){let Q=j.rawcolliderset_coRoundRadius(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}coSetRoundRadius(A,Q){j.rawcolliderset_coSetRoundRadius(this.__wbg_ptr,A,Q)}coVoxelData(A){try{let Y=j.__wbindgen_add_to_stack_pointer(-16);j.rawcolliderset_coVoxelData(Y,this.__wbg_ptr,A);var Q=IY().getInt32(Y+0,!0),B=IY().getInt32(Y+4,!0);let J;return Q!==0&&(J=EaQ(Q,B).slice(),j.__wbindgen_export_1(Q,4*B,4)),J}finally{j.__wbindgen_add_to_stack_pointer(16)}}coVoxelSize(A){let Q=j.rawcolliderset_coVoxelSize(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}coSetVoxel(A,Q,B,Y,J){j.rawcolliderset_coSetVoxel(this.__wbg_ptr,A,Q,B,Y,J)}coPropagateVoxelChange(A,Q,B,Y,J,C,X,G){j.rawcolliderset_coPropagateVoxelChange(this.__wbg_ptr,A,Q,B,Y,J,C,X,G)}coCombineVoxelStates(A,Q,B,Y,J){j.rawcolliderset_coCombineVoxelStates(this.__wbg_ptr,A,Q,B,Y,J)}coVertices(A){try{let Y=j.__wbindgen_add_to_stack_pointer(-16);j.rawcolliderset_coVertices(Y,this.__wbg_ptr,A);var Q=IY().getInt32(Y+0,!0),B=IY().getInt32(Y+4,!0);let J;return Q!==0&&(J=UXA(Q,B).slice(),j.__wbindgen_export_1(Q,4*B,4)),J}finally{j.__wbindgen_add_to_stack_pointer(16)}}coIndices(A){try{let Y=j.__wbindgen_add_to_stack_pointer(-16);j.rawcolliderset_coIndices(Y,this.__wbg_ptr,A);var Q=IY().getInt32(Y+0,!0),B=IY().getInt32(Y+4,!0);let J;return Q!==0&&(J=function(C,X){return C>>>=0,mXA().subarray(C/4,C/4+X)}(Q,B).slice(),j.__wbindgen_export_1(Q,4*B,4)),J}finally{j.__wbindgen_add_to_stack_pointer(16)}}coTriMeshFlags(A){let Q=j.rawcolliderset_coTriMeshFlags(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}coHeightFieldFlags(A){let Q=j.rawcolliderset_coHeightFieldFlags(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}coHeightfieldHeights(A){try{let Y=j.__wbindgen_add_to_stack_pointer(-16);j.rawcolliderset_coHeightfieldHeights(Y,this.__wbg_ptr,A);var Q=IY().getInt32(Y+0,!0),B=IY().getInt32(Y+4,!0);let J;return Q!==0&&(J=UXA(Q,B).slice(),j.__wbindgen_export_1(Q,4*B,4)),J}finally{j.__wbindgen_add_to_stack_pointer(16)}}coHeightfieldScale(A){let Q=j.rawcolliderset_coHeightfieldScale(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}coHeightfieldNRows(A){let Q=j.rawcolliderset_coHeightfieldNRows(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}coHeightfieldNCols(A){let Q=j.rawcolliderset_coHeightfieldNCols(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}coParent(A){try{let Y=j.__wbindgen_add_to_stack_pointer(-16);j.rawcolliderset_coParent(Y,this.__wbg_ptr,A);var Q=IY().getInt32(Y+0,!0),B=IY().getFloat64(Y+8,!0);return Q===0?void 0:B}finally{j.__wbindgen_add_to_stack_pointer(16)}}coSetEnabled(A,Q){j.rawcolliderset_coSetEnabled(this.__wbg_ptr,A,Q)}coIsEnabled(A){return j.rawcolliderset_coIsEnabled(this.__wbg_ptr,A)!==0}coSetContactSkin(A,Q){j.rawcolliderset_coSetContactSkin(this.__wbg_ptr,A,Q)}coContactSkin(A){return j.rawcolliderset_coContactSkin(this.__wbg_ptr,A)}coFriction(A){return j.rawcolliderset_coFriction(this.__wbg_ptr,A)}coRestitution(A){return j.rawcolliderset_coRestitution(this.__wbg_ptr,A)}coDensity(A){return j.rawcolliderset_coDensity(this.__wbg_ptr,A)}coMass(A){return j.rawcolliderset_coMass(this.__wbg_ptr,A)}coVolume(A){return j.rawcolliderset_coVolume(this.__wbg_ptr,A)}coCollisionGroups(A){return j.rawcolliderset_coCollisionGroups(this.__wbg_ptr,A)>>>0}coSolverGroups(A){return j.rawcolliderset_coSolverGroups(this.__wbg_ptr,A)>>>0}coActiveHooks(A){return j.rawcolliderset_coActiveHooks(this.__wbg_ptr,A)>>>0}coActiveCollisionTypes(A){return j.rawcolliderset_coActiveCollisionTypes(this.__wbg_ptr,A)}coActiveEvents(A){return j.rawcolliderset_coActiveEvents(this.__wbg_ptr,A)>>>0}coContactForceEventThreshold(A){return j.rawcolliderset_coContactForceEventThreshold(this.__wbg_ptr,A)}coContainsPoint(A,Q){return c(Q,r),j.rawcolliderset_coContainsPoint(this.__wbg_ptr,A,Q.__wbg_ptr)!==0}coCastShape(A,Q,B,Y,J,C,X,G,F){c(Q,r),c(B,UQ),c(Y,r),c(J,AB),c(C,r);let W=j.rawcolliderset_coCastShape(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C.__wbg_ptr,X,G,F);return W===0?void 0:A3.__wrap(W)}coCastCollider(A,Q,B,Y,J,C,X){c(Q,r),c(Y,r);let G=j.rawcolliderset_coCastCollider(this.__wbg_ptr,A,Q.__wbg_ptr,B,Y.__wbg_ptr,J,C,X);return G===0?void 0:a2.__wrap(G)}coIntersectsShape(A,Q,B,Y){return c(Q,UQ),c(B,r),c(Y,AB),j.rawcolliderset_coIntersectsShape(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr)!==0}coContactShape(A,Q,B,Y,J){c(Q,UQ),c(B,r),c(Y,AB);let C=j.rawcolliderset_coContactShape(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J);return C===0?void 0:JH.__wrap(C)}coContactCollider(A,Q,B){let Y=j.rawcolliderset_coContactCollider(this.__wbg_ptr,A,Q,B);return Y===0?void 0:JH.__wrap(Y)}coProjectPoint(A,Q,B){c(Q,r);let Y=j.rawcolliderset_coProjectPoint(this.__wbg_ptr,A,Q.__wbg_ptr,B);return o2.__wrap(Y)}coIntersectsRay(A,Q,B,Y){return c(Q,r),c(B,r),j.rawcolliderset_coIntersectsRay(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y)!==0}coCastRay(A,Q,B,Y,J){return c(Q,r),c(B,r),j.rawcolliderset_coCastRay(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y,J)}coCastRayAndGetNormal(A,Q,B,Y,J){c(Q,r),c(B,r);let C=j.rawcolliderset_coCastRayAndGetNormal(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y,J);return C===0?void 0:e2.__wrap(C)}coSetSensor(A,Q){j.rawcolliderset_coSetSensor(this.__wbg_ptr,A,Q)}coSetRestitution(A,Q){j.rawcolliderset_coSetRestitution(this.__wbg_ptr,A,Q)}coSetFriction(A,Q){j.rawcolliderset_coSetFriction(this.__wbg_ptr,A,Q)}coFrictionCombineRule(A){return j.rawcolliderset_coFrictionCombineRule(this.__wbg_ptr,A)>>>0}coSetFrictionCombineRule(A,Q){j.rawcolliderset_coSetFrictionCombineRule(this.__wbg_ptr,A,Q)}coRestitutionCombineRule(A){return j.rawcolliderset_coRestitutionCombineRule(this.__wbg_ptr,A)>>>0}coSetRestitutionCombineRule(A,Q){j.rawcolliderset_coSetRestitutionCombineRule(this.__wbg_ptr,A,Q)}coSetCollisionGroups(A,Q){j.rawcolliderset_coSetCollisionGroups(this.__wbg_ptr,A,Q)}coSetSolverGroups(A,Q){j.rawcolliderset_coSetSolverGroups(this.__wbg_ptr,A,Q)}coSetActiveHooks(A,Q){j.rawcolliderset_coSetActiveHooks(this.__wbg_ptr,A,Q)}coSetActiveEvents(A,Q){j.rawcolliderset_coSetActiveEvents(this.__wbg_ptr,A,Q)}coSetActiveCollisionTypes(A,Q){j.rawcolliderset_coSetActiveCollisionTypes(this.__wbg_ptr,A,Q)}coSetShape(A,Q){c(Q,UQ),j.rawcolliderset_coSetShape(this.__wbg_ptr,A,Q.__wbg_ptr)}coSetContactForceEventThreshold(A,Q){j.rawcolliderset_coSetContactForceEventThreshold(this.__wbg_ptr,A,Q)}coSetDensity(A,Q){j.rawcolliderset_coSetDensity(this.__wbg_ptr,A,Q)}coSetMass(A,Q){j.rawcolliderset_coSetMass(this.__wbg_ptr,A,Q)}coSetMassProperties(A,Q,B,Y,J){c(B,r),c(Y,r),c(J,AB),j.rawcolliderset_coSetMassProperties(this.__wbg_ptr,A,Q,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr)}constructor(){let A=j.rawcolliderset_new();return this.__wbg_ptr=A>>>0,Mg.register(this,this.__wbg_ptr,this),this}len(){return j.rawcolliderset_len(this.__wbg_ptr)>>>0}contains(A){return j.rawcolliderset_contains(this.__wbg_ptr,A)!==0}createCollider(A,Q,B,Y,J,C,X,G,F,W,Z,U,$,E,K,I,V,H,D,L,z,M,N,q,w){try{let O=j.__wbindgen_add_to_stack_pointer(-16);c(Q,UQ),c(B,r),c(Y,AB),c(X,r),c(G,r),c(F,AB),c(w,J0),j.rawcolliderset_createCollider(O,this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J,C,X.__wbg_ptr,G.__wbg_ptr,F.__wbg_ptr,W,Z,U,$,E,K,I,V,H,D,L,z,M,N,q,w.__wbg_ptr);var P=IY().getInt32(O+0,!0),_=IY().getFloat64(O+8,!0);return P===0?void 0:_}finally{j.__wbindgen_add_to_stack_pointer(16)}}remove(A,Q,B,Y){c(Q,XG),c(B,J0),j.rawcolliderset_remove(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y)}isHandleValid(A){return j.rawcolliderset_contains(this.__wbg_ptr,A)!==0}forEachColliderHandle(A){try{j.rawcolliderset_forEachColliderHandle(this.__wbg_ptr,F0(A))}finally{IB[pB++]=void 0}}}var VXA=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawcollidershapecasthit_free(A>>>0,1));class a2{static __wrap(A){A>>>=0;let Q=Object.create(a2.prototype);return Q.__wbg_ptr=A,VXA.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,VXA.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawcollidershapecasthit_free(A,0)}colliderHandle(){return j.rawcharactercollision_handle(this.__wbg_ptr)}time_of_impact(){return j.rawcollidershapecasthit_time_of_impact(this.__wbg_ptr)}witness1(){let A=j.rawcollidershapecasthit_witness1(this.__wbg_ptr);return r.__wrap(A)}witness2(){let A=j.rawcollidershapecasthit_witness2(this.__wbg_ptr);return r.__wrap(A)}normal1(){let A=j.rawcharactercollision_translationDeltaApplied(this.__wbg_ptr);return r.__wrap(A)}normal2(){let A=j.rawcharactercollision_translationDeltaRemaining(this.__wbg_ptr);return r.__wrap(A)}}var IXA=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawcontactforceevent_free(A>>>0,1));class dg{static __wrap(A){A>>>=0;let Q=Object.create(dg.prototype);return Q.__wbg_ptr=A,IXA.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,IXA.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawcontactforceevent_free(A,0)}collider1(){return j.rawcharactercollision_handle(this.__wbg_ptr)}collider2(){return j.rawcontactforceevent_collider2(this.__wbg_ptr)}total_force(){let A=j.rawcontactforceevent_total_force(this.__wbg_ptr);return r.__wrap(A)}total_force_magnitude(){return j.rawcontactforceevent_total_force_magnitude(this.__wbg_ptr)}max_force_direction(){let A=j.rawcontactforceevent_max_force_direction(this.__wbg_ptr);return r.__wrap(A)}max_force_magnitude(){return j.rawcontactforceevent_max_force_magnitude(this.__wbg_ptr)}}var HXA=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawcontactmanifold_free(A>>>0,1));class cg{static __wrap(A){A>>>=0;let Q=Object.create(cg.prototype);return Q.__wbg_ptr=A,HXA.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,HXA.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawcontactmanifold_free(A,0)}normal(){let A=j.rawcontactmanifold_normal(this.__wbg_ptr);return r.__wrap(A)}local_n1(){let A=j.rawcontactmanifold_local_n1(this.__wbg_ptr);return r.__wrap(A)}local_n2(){let A=j.rawcontactmanifold_local_n2(this.__wbg_ptr);return r.__wrap(A)}subshape1(){return j.rawcontactmanifold_subshape1(this.__wbg_ptr)>>>0}subshape2(){return j.rawcontactmanifold_subshape2(this.__wbg_ptr)>>>0}num_contacts(){return j.rawcontactmanifold_num_contacts(this.__wbg_ptr)>>>0}contact_local_p1(A){let Q=j.rawcontactmanifold_contact_local_p1(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}contact_local_p2(A){let Q=j.rawcontactmanifold_contact_local_p2(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}contact_dist(A){return j.rawcontactmanifold_contact_dist(this.__wbg_ptr,A)}contact_fid1(A){return j.rawcontactmanifold_contact_fid1(this.__wbg_ptr,A)>>>0}contact_fid2(A){return j.rawcontactmanifold_contact_fid2(this.__wbg_ptr,A)>>>0}contact_impulse(A){return j.rawcontactmanifold_contact_impulse(this.__wbg_ptr,A)}contact_tangent_impulse_x(A){return j.rawcontactmanifold_contact_tangent_impulse_x(this.__wbg_ptr,A)}contact_tangent_impulse_y(A){return j.rawcontactmanifold_contact_tangent_impulse_y(this.__wbg_ptr,A)}num_solver_contacts(){return j.rawcontactmanifold_num_solver_contacts(this.__wbg_ptr)>>>0}solver_contact_point(A){let Q=j.rawcontactmanifold_solver_contact_point(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}solver_contact_dist(A){return j.rawcontactmanifold_solver_contact_dist(this.__wbg_ptr,A)}solver_contact_friction(A){return j.rawcontactmanifold_solver_contact_friction(this.__wbg_ptr,A)}solver_contact_restitution(A){return j.rawcontactmanifold_solver_contact_restitution(this.__wbg_ptr,A)}solver_contact_tangent_velocity(A){let Q=j.rawcontactmanifold_solver_contact_tangent_velocity(this.__wbg_ptr,A);return r.__wrap(Q)}}var DXA=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawcontactpair_free(A>>>0,1));class lg{static __wrap(A){A>>>=0;let Q=Object.create(lg.prototype);return Q.__wbg_ptr=A,DXA.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,DXA.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawcontactpair_free(A,0)}collider1(){return j.rawcontactpair_collider1(this.__wbg_ptr)}collider2(){return j.rawcontactpair_collider2(this.__wbg_ptr)}numContactManifolds(){return j.rawcontactpair_numContactManifolds(this.__wbg_ptr)>>>0}contactManifold(A){let Q=j.rawcontactpair_contactManifold(this.__wbg_ptr,A);return Q===0?void 0:cg.__wrap(Q)}}var NXA=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawdebugrenderpipeline_free(A>>>0,1));class uXA{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,NXA.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawdebugrenderpipeline_free(A,0)}constructor(){let A=j.rawdebugrenderpipeline_new();return this.__wbg_ptr=A>>>0,NXA.register(this,this.__wbg_ptr,this),this}vertices(){return YH(j.rawdebugrenderpipeline_vertices(this.__wbg_ptr))}colors(){return YH(j.rawdebugrenderpipeline_colors(this.__wbg_ptr))}render(A,Q,B,Y,J,C,X){try{c(A,J0),c(Q,S0),c(B,CG),c(Y,GG),c(J,HY),j.rawdebugrenderpipeline_render(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C,F0(X))}finally{IB[pB++]=void 0}}}var LXA=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawdeserializedworld_free(A>>>0,1));class pg{static __wrap(A){A>>>=0;let Q=Object.create(pg.prototype);return Q.__wbg_ptr=A,LXA.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,LXA.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawdeserializedworld_free(A,0)}takeGravity(){let A=j.rawdeserializedworld_takeGravity(this.__wbg_ptr);return A===0?void 0:r.__wrap(A)}takeIntegrationParameters(){let A=j.rawdeserializedworld_takeIntegrationParameters(this.__wbg_ptr);return A===0?void 0:cW.__wrap(A)}takeIslandManager(){let A=j.rawdeserializedworld_takeIslandManager(this.__wbg_ptr);return A===0?void 0:XG.__wrap(A)}takeBroadPhase(){let A=j.rawdeserializedworld_takeBroadPhase(this.__wbg_ptr);return A===0?void 0:JG.__wrap(A)}takeNarrowPhase(){let A=j.rawdeserializedworld_takeNarrowPhase(this.__wbg_ptr);return A===0?void 0:HY.__wrap(A)}takeBodies(){let A=j.rawdeserializedworld_takeBodies(this.__wbg_ptr);return A===0?void 0:J0.__wrap(A)}takeColliders(){let A=j.rawdeserializedworld_takeColliders(this.__wbg_ptr);return A===0?void 0:S0.__wrap(A)}takeImpulseJoints(){let A=j.rawdeserializedworld_takeImpulseJoints(this.__wbg_ptr);return A===0?void 0:CG.__wrap(A)}takeMultibodyJoints(){let A=j.rawdeserializedworld_takeMultibodyJoints(this.__wbg_ptr);return A===0?void 0:GG.__wrap(A)}}var qXA=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawdynamicraycastvehiclecontroller_free(A>>>0,1));class dXA{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,qXA.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawdynamicraycastvehiclecontroller_free(A,0)}constructor(A){let Q=j.rawdynamicraycastvehiclecontroller_new(A);return this.__wbg_ptr=Q>>>0,qXA.register(this,this.__wbg_ptr,this),this}current_vehicle_speed(){return j.rawdynamicraycastvehiclecontroller_current_vehicle_speed(this.__wbg_ptr)}chassis(){return j.rawdynamicraycastvehiclecontroller_chassis(this.__wbg_ptr)}index_up_axis(){return j.rawdynamicraycastvehiclecontroller_index_up_axis(this.__wbg_ptr)>>>0}set_index_up_axis(A){j.rawdynamicraycastvehiclecontroller_set_index_up_axis(this.__wbg_ptr,A)}index_forward_axis(){return j.rawdynamicraycastvehiclecontroller_index_forward_axis(this.__wbg_ptr)>>>0}set_index_forward_axis(A){j.rawdynamicraycastvehiclecontroller_set_index_forward_axis(this.__wbg_ptr,A)}add_wheel(A,Q,B,Y,J){c(A,r),c(Q,r),c(B,r),j.rawdynamicraycastvehiclecontroller_add_wheel(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y,J)}num_wheels(){return j.rawdynamicraycastvehiclecontroller_num_wheels(this.__wbg_ptr)>>>0}update_vehicle(A,Q,B,Y,J,C,X,G){try{c(Q,JG),c(B,HY),c(Y,J0),c(J,S0),j.rawdynamicraycastvehiclecontroller_update_vehicle(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C,VQ(X)?4294967297:X>>>0,F0(G))}finally{IB[pB++]=void 0}}wheel_chassis_connection_point_cs(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_chassis_connection_point_cs(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}set_wheel_chassis_connection_point_cs(A,Q){c(Q,r),j.rawdynamicraycastvehiclecontroller_set_wheel_chassis_connection_point_cs(this.__wbg_ptr,A,Q.__wbg_ptr)}wheel_suspension_rest_length(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_suspension_rest_length(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_suspension_rest_length(A,Q){j.rawdynamicraycastvehiclecontroller_set_wheel_suspension_rest_length(this.__wbg_ptr,A,Q)}wheel_max_suspension_travel(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_max_suspension_travel(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_max_suspension_travel(A,Q){j.rawdynamicraycastvehiclecontroller_set_wheel_max_suspension_travel(this.__wbg_ptr,A,Q)}wheel_radius(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_radius(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_radius(A,Q){j.rawdynamicraycastvehiclecontroller_set_wheel_radius(this.__wbg_ptr,A,Q)}wheel_suspension_stiffness(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_suspension_stiffness(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_suspension_stiffness(A,Q){j.rawdynamicraycastvehiclecontroller_set_wheel_suspension_stiffness(this.__wbg_ptr,A,Q)}wheel_suspension_compression(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_suspension_compression(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_suspension_compression(A,Q){j.rawdynamicraycastvehiclecontroller_set_wheel_suspension_compression(this.__wbg_ptr,A,Q)}wheel_suspension_relaxation(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_suspension_relaxation(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_suspension_relaxation(A,Q){j.rawdynamicraycastvehiclecontroller_set_wheel_suspension_relaxation(this.__wbg_ptr,A,Q)}wheel_max_suspension_force(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_max_suspension_force(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_max_suspension_force(A,Q){j.rawdynamicraycastvehiclecontroller_set_wheel_max_suspension_force(this.__wbg_ptr,A,Q)}wheel_brake(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_brake(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_brake(A,Q){j.rawdynamicraycastvehiclecontroller_set_wheel_brake(this.__wbg_ptr,A,Q)}wheel_steering(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_steering(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_steering(A,Q){j.rawdynamicraycastvehiclecontroller_set_wheel_steering(this.__wbg_ptr,A,Q)}wheel_engine_force(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_engine_force(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_engine_force(A,Q){j.rawdynamicraycastvehiclecontroller_set_wheel_engine_force(this.__wbg_ptr,A,Q)}wheel_direction_cs(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_direction_cs(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}set_wheel_direction_cs(A,Q){c(Q,r),j.rawdynamicraycastvehiclecontroller_set_wheel_direction_cs(this.__wbg_ptr,A,Q.__wbg_ptr)}wheel_axle_cs(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_axle_cs(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}set_wheel_axle_cs(A,Q){c(Q,r),j.rawdynamicraycastvehiclecontroller_set_wheel_axle_cs(this.__wbg_ptr,A,Q.__wbg_ptr)}wheel_friction_slip(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_friction_slip(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_friction_slip(A,Q){j.rawdynamicraycastvehiclecontroller_set_wheel_friction_slip(this.__wbg_ptr,A,Q)}wheel_side_friction_stiffness(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_side_friction_stiffness(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_side_friction_stiffness(A,Q){j.rawdynamicraycastvehiclecontroller_set_wheel_side_friction_stiffness(this.__wbg_ptr,A,Q)}wheel_rotation(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_rotation(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}wheel_forward_impulse(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_forward_impulse(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}wheel_side_impulse(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_side_impulse(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}wheel_suspension_force(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_suspension_force(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}wheel_contact_normal_ws(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_contact_normal_ws(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}wheel_contact_point_ws(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_contact_point_ws(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}wheel_suspension_length(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_suspension_length(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}wheel_hard_point_ws(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_hard_point_ws(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}wheel_is_in_contact(A){return j.rawdynamicraycastvehiclecontroller_wheel_is_in_contact(this.__wbg_ptr,A)!==0}wheel_ground_object(A){try{let Y=j.__wbindgen_add_to_stack_pointer(-16);j.rawdynamicraycastvehiclecontroller_wheel_ground_object(Y,this.__wbg_ptr,A);var Q=IY().getInt32(Y+0,!0),B=IY().getFloat64(Y+8,!0);return Q===0?void 0:B}finally{j.__wbindgen_add_to_stack_pointer(16)}}}var MXA=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_raweventqueue_free(A>>>0,1));class ig{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,MXA.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_raweventqueue_free(A,0)}constructor(A){let Q=j.raweventqueue_new(A);return this.__wbg_ptr=Q>>>0,MXA.register(this,this.__wbg_ptr,this),this}drainCollisionEvents(A){try{j.raweventqueue_drainCollisionEvents(this.__wbg_ptr,F0(A))}finally{IB[pB++]=void 0}}drainContactForceEvents(A){try{j.raweventqueue_drainContactForceEvents(this.__wbg_ptr,F0(A))}finally{IB[pB++]=void 0}}clear(){j.raweventqueue_clear(this.__wbg_ptr)}}var zXA=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawgenericjoint_free(A>>>0,1));class mY{static __wrap(A){A>>>=0;let Q=Object.create(mY.prototype);return Q.__wbg_ptr=A,zXA.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,zXA.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawgenericjoint_free(A,0)}static generic(A,Q,B,Y){c(A,r),c(Q,r),c(B,r);let J=j.rawgenericjoint_generic(A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y);return J===0?void 0:mY.__wrap(J)}static spring(A,Q,B,Y,J){c(Y,r),c(J,r);let C=j.rawgenericjoint_spring(A,Q,B,Y.__wbg_ptr,J.__wbg_ptr);return mY.__wrap(C)}static rope(A,Q,B){c(Q,r),c(B,r);let Y=j.rawgenericjoint_rope(A,Q.__wbg_ptr,B.__wbg_ptr);return mY.__wrap(Y)}static spherical(A,Q){c(A,r),c(Q,r);let B=j.rawgenericjoint_spherical(A.__wbg_ptr,Q.__wbg_ptr);return mY.__wrap(B)}static prismatic(A,Q,B,Y,J,C){c(A,r),c(Q,r),c(B,r);let X=j.rawgenericjoint_prismatic(A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y,J,C);return X===0?void 0:mY.__wrap(X)}static fixed(A,Q,B,Y){c(A,r),c(Q,AB),c(B,r),c(Y,AB);let J=j.rawgenericjoint_fixed(A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr);return mY.__wrap(J)}static revolute(A,Q,B){c(A,r),c(Q,r),c(B,r);let Y=j.rawgenericjoint_revolute(A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr);return Y===0?void 0:mY.__wrap(Y)}}var zg=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawimpulsejointset_free(A>>>0,1));class CG{static __wrap(A){A>>>=0;let Q=Object.create(CG.prototype);return Q.__wbg_ptr=A,zg.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,zg.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawimpulsejointset_free(A,0)}jointType(A){return j.rawimpulsejointset_jointType(this.__wbg_ptr,A)}jointBodyHandle1(A){return j.rawimpulsejointset_jointBodyHandle1(this.__wbg_ptr,A)}jointBodyHandle2(A){return j.rawimpulsejointset_jointBodyHandle2(this.__wbg_ptr,A)}jointFrameX1(A){let Q=j.rawimpulsejointset_jointFrameX1(this.__wbg_ptr,A);return AB.__wrap(Q)}jointFrameX2(A){let Q=j.rawimpulsejointset_jointFrameX2(this.__wbg_ptr,A);return AB.__wrap(Q)}jointAnchor1(A){let Q=j.rawimpulsejointset_jointAnchor1(this.__wbg_ptr,A);return r.__wrap(Q)}jointAnchor2(A){let Q=j.rawimpulsejointset_jointAnchor2(this.__wbg_ptr,A);return r.__wrap(Q)}jointSetAnchor1(A,Q){c(Q,r),j.rawimpulsejointset_jointSetAnchor1(this.__wbg_ptr,A,Q.__wbg_ptr)}jointSetAnchor2(A,Q){c(Q,r),j.rawimpulsejointset_jointSetAnchor2(this.__wbg_ptr,A,Q.__wbg_ptr)}jointContactsEnabled(A){return j.rawimpulsejointset_jointContactsEnabled(this.__wbg_ptr,A)!==0}jointSetContactsEnabled(A,Q){j.rawimpulsejointset_jointSetContactsEnabled(this.__wbg_ptr,A,Q)}jointLimitsEnabled(A,Q){return j.rawimpulsejointset_jointLimitsEnabled(this.__wbg_ptr,A,Q)!==0}jointLimitsMin(A,Q){return j.rawimpulsejointset_jointLimitsMin(this.__wbg_ptr,A,Q)}jointLimitsMax(A,Q){return j.rawimpulsejointset_jointLimitsMax(this.__wbg_ptr,A,Q)}jointSetLimits(A,Q,B,Y){j.rawimpulsejointset_jointSetLimits(this.__wbg_ptr,A,Q,B,Y)}jointConfigureMotorModel(A,Q,B){j.rawimpulsejointset_jointConfigureMotorModel(this.__wbg_ptr,A,Q,B)}jointConfigureMotorVelocity(A,Q,B,Y){j.rawimpulsejointset_jointConfigureMotorVelocity(this.__wbg_ptr,A,Q,B,Y)}jointConfigureMotorPosition(A,Q,B,Y,J){j.rawimpulsejointset_jointConfigureMotorPosition(this.__wbg_ptr,A,Q,B,Y,J)}jointConfigureMotor(A,Q,B,Y,J,C){j.rawimpulsejointset_jointConfigureMotor(this.__wbg_ptr,A,Q,B,Y,J,C)}constructor(){let A=j.rawimpulsejointset_new();return this.__wbg_ptr=A>>>0,zg.register(this,this.__wbg_ptr,this),this}createJoint(A,Q,B,Y){return c(A,mY),j.rawimpulsejointset_createJoint(this.__wbg_ptr,A.__wbg_ptr,Q,B,Y)}remove(A,Q){j.rawimpulsejointset_remove(this.__wbg_ptr,A,Q)}len(){return j.rawimpulsejointset_len(this.__wbg_ptr)>>>0}contains(A){return j.rawimpulsejointset_contains(this.__wbg_ptr,A)!==0}forEachJointHandle(A){try{j.rawimpulsejointset_forEachJointHandle(this.__wbg_ptr,F0(A))}finally{IB[pB++]=void 0}}forEachJointAttachedToRigidBody(A,Q){try{j.rawimpulsejointset_forEachJointAttachedToRigidBody(this.__wbg_ptr,A,F0(Q))}finally{IB[pB++]=void 0}}}var Rg=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawintegrationparameters_free(A>>>0,1));class cW{static __wrap(A){A>>>=0;let Q=Object.create(cW.prototype);return Q.__wbg_ptr=A,Rg.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Rg.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawintegrationparameters_free(A,0)}constructor(){let A=j.rawintegrationparameters_new();return this.__wbg_ptr=A>>>0,Rg.register(this,this.__wbg_ptr,this),this}get dt(){return j.rawintegrationparameters_dt(this.__wbg_ptr)}get contact_erp(){return j.rawintegrationparameters_contact_erp(this.__wbg_ptr)}get normalizedAllowedLinearError(){return j.rawintegrationparameters_normalizedAllowedLinearError(this.__wbg_ptr)}get normalizedPredictionDistance(){return j.rawintegrationparameters_normalizedPredictionDistance(this.__wbg_ptr)}get numSolverIterations(){return j.rawintegrationparameters_numSolverIterations(this.__wbg_ptr)>>>0}get numInternalPgsIterations(){return j.rawdynamicraycastvehiclecontroller_index_up_axis(this.__wbg_ptr)>>>0}get minIslandSize(){return j.rawintegrationparameters_minIslandSize(this.__wbg_ptr)>>>0}get maxCcdSubsteps(){return j.rawintegrationparameters_maxCcdSubsteps(this.__wbg_ptr)>>>0}get lengthUnit(){return j.rawcontactforceevent_total_force_magnitude(this.__wbg_ptr)}set dt(A){j.rawintegrationparameters_set_dt(this.__wbg_ptr,A)}set contact_natural_frequency(A){j.rawintegrationparameters_set_contact_natural_frequency(this.__wbg_ptr,A)}set normalizedAllowedLinearError(A){j.rawintegrationparameters_set_normalizedAllowedLinearError(this.__wbg_ptr,A)}set normalizedPredictionDistance(A){j.rawintegrationparameters_set_normalizedPredictionDistance(this.__wbg_ptr,A)}set numSolverIterations(A){j.rawintegrationparameters_set_numSolverIterations(this.__wbg_ptr,A)}set numInternalPgsIterations(A){j.rawdynamicraycastvehiclecontroller_set_index_up_axis(this.__wbg_ptr,A)}set minIslandSize(A){j.rawintegrationparameters_set_minIslandSize(this.__wbg_ptr,A)}set maxCcdSubsteps(A){j.rawintegrationparameters_set_maxCcdSubsteps(this.__wbg_ptr,A)}set lengthUnit(A){j.rawintegrationparameters_set_lengthUnit(this.__wbg_ptr,A)}}var wg=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawislandmanager_free(A>>>0,1));class XG{static __wrap(A){A>>>=0;let Q=Object.create(XG.prototype);return Q.__wbg_ptr=A,wg.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,wg.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawislandmanager_free(A,0)}constructor(){let A=j.rawislandmanager_new();return this.__wbg_ptr=A>>>0,wg.register(this,this.__wbg_ptr,this),this}forEachActiveRigidBodyHandle(A){try{j.rawislandmanager_forEachActiveRigidBodyHandle(this.__wbg_ptr,F0(A))}finally{IB[pB++]=void 0}}}var RXA=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawkinematiccharactercontroller_free(A>>>0,1));class cXA{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,RXA.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawkinematiccharactercontroller_free(A,0)}constructor(A){let Q=j.rawkinematiccharactercontroller_new(A);return this.__wbg_ptr=Q>>>0,RXA.register(this,this.__wbg_ptr,this),this}up(){let A=j.rawcharactercollision_translationDeltaApplied(this.__wbg_ptr);return r.__wrap(A)}setUp(A){c(A,r),j.rawkinematiccharactercontroller_setUp(this.__wbg_ptr,A.__wbg_ptr)}normalNudgeFactor(){return j.rawkinematiccharactercontroller_normalNudgeFactor(this.__wbg_ptr)}setNormalNudgeFactor(A){j.rawkinematiccharactercontroller_setNormalNudgeFactor(this.__wbg_ptr,A)}offset(){return j.rawkinematiccharactercontroller_offset(this.__wbg_ptr)}setOffset(A){j.rawkinematiccharactercontroller_setOffset(this.__wbg_ptr,A)}slideEnabled(){return j.rawkinematiccharactercontroller_slideEnabled(this.__wbg_ptr)!==0}setSlideEnabled(A){j.rawkinematiccharactercontroller_setSlideEnabled(this.__wbg_ptr,A)}autostepMaxHeight(){let A=j.rawkinematiccharactercontroller_autostepMaxHeight(this.__wbg_ptr);return A===4294967297?void 0:A}autostepMinWidth(){let A=j.rawkinematiccharactercontroller_autostepMinWidth(this.__wbg_ptr);return A===4294967297?void 0:A}autostepIncludesDynamicBodies(){let A=j.rawkinematiccharactercontroller_autostepIncludesDynamicBodies(this.__wbg_ptr);return A===16777215?void 0:A!==0}autostepEnabled(){return j.rawkinematiccharactercontroller_autostepEnabled(this.__wbg_ptr)!==0}enableAutostep(A,Q,B){j.rawkinematiccharactercontroller_enableAutostep(this.__wbg_ptr,A,Q,B)}disableAutostep(){j.rawkinematiccharactercontroller_disableAutostep(this.__wbg_ptr)}maxSlopeClimbAngle(){return j.rawkinematiccharactercontroller_maxSlopeClimbAngle(this.__wbg_ptr)}setMaxSlopeClimbAngle(A){j.rawkinematiccharactercontroller_setMaxSlopeClimbAngle(this.__wbg_ptr,A)}minSlopeSlideAngle(){return j.rawkinematiccharactercontroller_minSlopeSlideAngle(this.__wbg_ptr)}setMinSlopeSlideAngle(A){j.rawkinematiccharactercontroller_setMinSlopeSlideAngle(this.__wbg_ptr,A)}snapToGroundDistance(){let A=j.rawkinematiccharactercontroller_snapToGroundDistance(this.__wbg_ptr);return A===4294967297?void 0:A}enableSnapToGround(A){j.rawkinematiccharactercontroller_enableSnapToGround(this.__wbg_ptr,A)}disableSnapToGround(){j.rawkinematiccharactercontroller_disableSnapToGround(this.__wbg_ptr)}snapToGroundEnabled(){return j.rawkinematiccharactercontroller_snapToGroundEnabled(this.__wbg_ptr)!==0}computeColliderMovement(A,Q,B,Y,J,C,X,G,F,W,Z,U){try{c(Q,JG),c(B,HY),c(Y,J0),c(J,S0),c(X,r),j.rawkinematiccharactercontroller_computeColliderMovement(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C,X.__wbg_ptr,G,VQ(F)?4294967297:Math.fround(F),W,VQ(Z)?4294967297:Z>>>0,F0(U))}finally{IB[pB++]=void 0}}computedMovement(){let A=j.rawkinematiccharactercontroller_computedMovement(this.__wbg_ptr);return r.__wrap(A)}computedGrounded(){return j.rawkinematiccharactercontroller_computedGrounded(this.__wbg_ptr)!==0}numComputedCollisions(){return j.rawkinematiccharactercontroller_numComputedCollisions(this.__wbg_ptr)>>>0}computedCollision(A,Q){return c(Q,ug),j.rawkinematiccharactercontroller_computedCollision(this.__wbg_ptr,A,Q.__wbg_ptr)!==0}}var jg=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawmultibodyjointset_free(A>>>0,1));class GG{static __wrap(A){A>>>=0;let Q=Object.create(GG.prototype);return Q.__wbg_ptr=A,jg.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,jg.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawmultibodyjointset_free(A,0)}jointType(A){return j.rawmultibodyjointset_jointType(this.__wbg_ptr,A)}jointFrameX1(A){let Q=j.rawmultibodyjointset_jointFrameX1(this.__wbg_ptr,A);return AB.__wrap(Q)}jointFrameX2(A){let Q=j.rawmultibodyjointset_jointFrameX2(this.__wbg_ptr,A);return AB.__wrap(Q)}jointAnchor1(A){let Q=j.rawmultibodyjointset_jointAnchor1(this.__wbg_ptr,A);return r.__wrap(Q)}jointAnchor2(A){let Q=j.rawmultibodyjointset_jointAnchor2(this.__wbg_ptr,A);return r.__wrap(Q)}jointContactsEnabled(A){return j.rawmultibodyjointset_jointContactsEnabled(this.__wbg_ptr,A)!==0}jointSetContactsEnabled(A,Q){j.rawmultibodyjointset_jointSetContactsEnabled(this.__wbg_ptr,A,Q)}jointLimitsEnabled(A,Q){return j.rawmultibodyjointset_jointLimitsEnabled(this.__wbg_ptr,A,Q)!==0}jointLimitsMin(A,Q){return j.rawmultibodyjointset_jointLimitsMin(this.__wbg_ptr,A,Q)}jointLimitsMax(A,Q){return j.rawmultibodyjointset_jointLimitsMax(this.__wbg_ptr,A,Q)}constructor(){let A=j.rawmultibodyjointset_new();return this.__wbg_ptr=A>>>0,jg.register(this,this.__wbg_ptr,this),this}createJoint(A,Q,B,Y){return c(A,mY),j.rawmultibodyjointset_createJoint(this.__wbg_ptr,A.__wbg_ptr,Q,B,Y)}remove(A,Q){j.rawmultibodyjointset_remove(this.__wbg_ptr,A,Q)}contains(A){return j.rawmultibodyjointset_contains(this.__wbg_ptr,A)!==0}forEachJointHandle(A){try{j.rawmultibodyjointset_forEachJointHandle(this.__wbg_ptr,F0(A))}finally{IB[pB++]=void 0}}forEachJointAttachedToRigidBody(A,Q){try{j.rawmultibodyjointset_forEachJointAttachedToRigidBody(this.__wbg_ptr,A,F0(Q))}finally{IB[pB++]=void 0}}}var Og=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawnarrowphase_free(A>>>0,1));class HY{static __wrap(A){A>>>=0;let Q=Object.create(HY.prototype);return Q.__wbg_ptr=A,Og.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Og.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawnarrowphase_free(A,0)}constructor(){let A=j.rawnarrowphase_new();return this.__wbg_ptr=A>>>0,Og.register(this,this.__wbg_ptr,this),this}contact_pairs_with(A,Q){j.rawnarrowphase_contact_pairs_with(this.__wbg_ptr,A,lB(Q))}contact_pair(A,Q){let B=j.rawnarrowphase_contact_pair(this.__wbg_ptr,A,Q);return B===0?void 0:lg.__wrap(B)}intersection_pairs_with(A,Q){j.rawnarrowphase_intersection_pairs_with(this.__wbg_ptr,A,lB(Q))}intersection_pair(A,Q){return j.rawnarrowphase_intersection_pair(this.__wbg_ptr,A,Q)!==0}}var wXA=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawphysicspipeline_free(A>>>0,1));class lXA{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,wXA.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawphysicspipeline_free(A,0)}constructor(){let A=j.rawphysicspipeline_new();return this.__wbg_ptr=A>>>0,wXA.register(this,this.__wbg_ptr,this),this}set_profiler_enabled(A){j.rawphysicspipeline_set_profiler_enabled(this.__wbg_ptr,A)}is_profiler_enabled(){return j.rawphysicspipeline_is_profiler_enabled(this.__wbg_ptr)!==0}timing_step(){return j.rawphysicspipeline_timing_step(this.__wbg_ptr)}timing_collision_detection(){return j.rawphysicspipeline_timing_collision_detection(this.__wbg_ptr)}timing_broad_phase(){return j.rawphysicspipeline_timing_broad_phase(this.__wbg_ptr)}timing_narrow_phase(){return j.rawphysicspipeline_timing_narrow_phase(this.__wbg_ptr)}timing_solver(){return j.rawphysicspipeline_timing_solver(this.__wbg_ptr)}timing_velocity_assembly(){return j.rawphysicspipeline_timing_velocity_assembly(this.__wbg_ptr)}timing_velocity_resolution(){return j.rawphysicspipeline_timing_velocity_resolution(this.__wbg_ptr)}timing_velocity_update(){return j.rawphysicspipeline_timing_velocity_update(this.__wbg_ptr)}timing_velocity_writeback(){return j.rawphysicspipeline_timing_velocity_writeback(this.__wbg_ptr)}timing_ccd(){return j.rawphysicspipeline_timing_ccd(this.__wbg_ptr)}timing_ccd_toi_computation(){return j.rawphysicspipeline_timing_ccd_toi_computation(this.__wbg_ptr)}timing_ccd_broad_phase(){return j.rawphysicspipeline_timing_ccd_broad_phase(this.__wbg_ptr)}timing_ccd_narrow_phase(){return j.rawphysicspipeline_timing_ccd_narrow_phase(this.__wbg_ptr)}timing_ccd_solver(){return j.rawphysicspipeline_timing_ccd_solver(this.__wbg_ptr)}timing_island_construction(){return j.rawphysicspipeline_timing_island_construction(this.__wbg_ptr)}timing_user_changes(){return j.rawphysicspipeline_timing_user_changes(this.__wbg_ptr)}step(A,Q,B,Y,J,C,X,G,F,W){c(A,r),c(Q,cW),c(B,XG),c(Y,JG),c(J,HY),c(C,J0),c(X,S0),c(G,CG),c(F,GG),c(W,f2),j.rawphysicspipeline_step(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C.__wbg_ptr,X.__wbg_ptr,G.__wbg_ptr,F.__wbg_ptr,W.__wbg_ptr)}stepWithEvents(A,Q,B,Y,J,C,X,G,F,W,Z,U,$,E){c(A,r),c(Q,cW),c(B,XG),c(Y,JG),c(J,HY),c(C,J0),c(X,S0),c(G,CG),c(F,GG),c(W,f2),c(Z,ig),j.rawphysicspipeline_stepWithEvents(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C.__wbg_ptr,X.__wbg_ptr,G.__wbg_ptr,F.__wbg_ptr,W.__wbg_ptr,Z.__wbg_ptr,lB(U),lB($),lB(E))}}var jXA=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawpidcontroller_free(A>>>0,1));class pXA{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,jXA.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawpidcontroller_free(A,0)}constructor(A,Q,B,Y){let J=j.rawpidcontroller_new(A,Q,B,Y);return this.__wbg_ptr=J>>>0,jXA.register(this,this.__wbg_ptr,this),this}set_kp(A,Q){j.rawpidcontroller_set_kp(this.__wbg_ptr,A,Q)}set_ki(A,Q){j.rawpidcontroller_set_ki(this.__wbg_ptr,A,Q)}set_kd(A,Q){j.rawpidcontroller_set_kd(this.__wbg_ptr,A,Q)}set_axes_mask(A){j.rawpidcontroller_set_axes_mask(this.__wbg_ptr,A)}reset_integrals(){j.rawpidcontroller_reset_integrals(this.__wbg_ptr)}apply_linear_correction(A,Q,B,Y,J){c(Q,J0),c(Y,r),c(J,r),j.rawpidcontroller_apply_linear_correction(this.__wbg_ptr,A,Q.__wbg_ptr,B,Y.__wbg_ptr,J.__wbg_ptr)}apply_angular_correction(A,Q,B,Y,J){c(Q,J0),c(Y,AB),c(J,r),j.rawpidcontroller_apply_angular_correction(this.__wbg_ptr,A,Q.__wbg_ptr,B,Y.__wbg_ptr,J.__wbg_ptr)}linear_correction(A,Q,B,Y,J){c(Q,J0),c(Y,r),c(J,r);let C=j.rawpidcontroller_linear_correction(this.__wbg_ptr,A,Q.__wbg_ptr,B,Y.__wbg_ptr,J.__wbg_ptr);return r.__wrap(C)}angular_correction(A,Q,B,Y,J){c(Q,J0),c(Y,AB),c(J,r);let C=j.rawpidcontroller_angular_correction(this.__wbg_ptr,A,Q.__wbg_ptr,B,Y.__wbg_ptr,J.__wbg_ptr);return r.__wrap(C)}}var OXA=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawpointcolliderprojection_free(A>>>0,1));class b2{static __wrap(A){A>>>=0;let Q=Object.create(b2.prototype);return Q.__wbg_ptr=A,OXA.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,OXA.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawpointcolliderprojection_free(A,0)}colliderHandle(){return j.rawpointcolliderprojection_colliderHandle(this.__wbg_ptr)}point(){let A=j.rawpointcolliderprojection_point(this.__wbg_ptr);return r.__wrap(A)}isInside(){return j.rawpointcolliderprojection_isInside(this.__wbg_ptr)!==0}featureType(){return j.rawpointcolliderprojection_featureType(this.__wbg_ptr)}featureId(){let A=j.rawpointcolliderprojection_featureId(this.__wbg_ptr);return A===4294967297?void 0:A}}var PXA=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawpointprojection_free(A>>>0,1));class o2{static __wrap(A){A>>>=0;let Q=Object.create(o2.prototype);return Q.__wbg_ptr=A,PXA.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,PXA.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawpointprojection_free(A,0)}point(){let A=j.rawpointprojection_point(this.__wbg_ptr);return r.__wrap(A)}isInside(){return j.rawpointprojection_isInside(this.__wbg_ptr)!==0}}var TXA=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawraycolliderhit_free(A>>>0,1));class ng{static __wrap(A){A>>>=0;let Q=Object.create(ng.prototype);return Q.__wbg_ptr=A,TXA.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,TXA.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawraycolliderhit_free(A,0)}colliderHandle(){return j.rawcharactercollision_handle(this.__wbg_ptr)}timeOfImpact(){return j.rawcollidershapecasthit_time_of_impact(this.__wbg_ptr)}}var SXA=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawraycolliderintersection_free(A>>>0,1));class t2{static __wrap(A){A>>>=0;let Q=Object.create(t2.prototype);return Q.__wbg_ptr=A,SXA.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,SXA.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawraycolliderintersection_free(A,0)}colliderHandle(){return j.rawpointcolliderprojection_colliderHandle(this.__wbg_ptr)}normal(){let A=j.rawcollidershapecasthit_witness1(this.__wbg_ptr);return r.__wrap(A)}time_of_impact(){return j.rawcollidershapecasthit_time_of_impact(this.__wbg_ptr)}featureType(){return j.rawpointcolliderprojection_featureType(this.__wbg_ptr)}featureId(){let A=j.rawpointcolliderprojection_featureId(this.__wbg_ptr);return A===4294967297?void 0:A}}var kXA=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawrayintersection_free(A>>>0,1));class e2{static __wrap(A){A>>>=0;let Q=Object.create(e2.prototype);return Q.__wbg_ptr=A,kXA.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,kXA.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawrayintersection_free(A,0)}normal(){let A=j.rawcollidershapecasthit_witness1(this.__wbg_ptr);return r.__wrap(A)}time_of_impact(){return j.rawcollidershapecasthit_time_of_impact(this.__wbg_ptr)}featureType(){return j.rawpointcolliderprojection_featureType(this.__wbg_ptr)}featureId(){let A=j.rawpointcolliderprojection_featureId(this.__wbg_ptr);return A===4294967297?void 0:A}}var Pg=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawrigidbodyset_free(A>>>0,1));class J0{static __wrap(A){A>>>=0;let Q=Object.create(J0.prototype);return Q.__wbg_ptr=A,Pg.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Pg.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawrigidbodyset_free(A,0)}rbTranslation(A){let Q=j.rawrigidbodyset_rbTranslation(this.__wbg_ptr,A);return r.__wrap(Q)}rbRotation(A){let Q=j.rawrigidbodyset_rbRotation(this.__wbg_ptr,A);return AB.__wrap(Q)}rbSleep(A){j.rawrigidbodyset_rbSleep(this.__wbg_ptr,A)}rbIsSleeping(A){return j.rawrigidbodyset_rbIsSleeping(this.__wbg_ptr,A)!==0}rbIsMoving(A){return j.rawrigidbodyset_rbIsMoving(this.__wbg_ptr,A)!==0}rbNextTranslation(A){let Q=j.rawrigidbodyset_rbNextTranslation(this.__wbg_ptr,A);return r.__wrap(Q)}rbNextRotation(A){let Q=j.rawrigidbodyset_rbNextRotation(this.__wbg_ptr,A);return AB.__wrap(Q)}rbSetTranslation(A,Q,B,Y,J){j.rawrigidbodyset_rbSetTranslation(this.__wbg_ptr,A,Q,B,Y,J)}rbSetRotation(A,Q,B,Y,J,C){j.rawrigidbodyset_rbSetRotation(this.__wbg_ptr,A,Q,B,Y,J,C)}rbSetLinvel(A,Q,B){c(Q,r),j.rawrigidbodyset_rbSetLinvel(this.__wbg_ptr,A,Q.__wbg_ptr,B)}rbSetAngvel(A,Q,B){c(Q,r),j.rawrigidbodyset_rbSetAngvel(this.__wbg_ptr,A,Q.__wbg_ptr,B)}rbSetNextKinematicTranslation(A,Q,B,Y){j.rawrigidbodyset_rbSetNextKinematicTranslation(this.__wbg_ptr,A,Q,B,Y)}rbSetNextKinematicRotation(A,Q,B,Y,J){j.rawrigidbodyset_rbSetNextKinematicRotation(this.__wbg_ptr,A,Q,B,Y,J)}rbRecomputeMassPropertiesFromColliders(A,Q){c(Q,S0),j.rawrigidbodyset_rbRecomputeMassPropertiesFromColliders(this.__wbg_ptr,A,Q.__wbg_ptr)}rbSetAdditionalMass(A,Q,B){j.rawrigidbodyset_rbSetAdditionalMass(this.__wbg_ptr,A,Q,B)}rbSetAdditionalMassProperties(A,Q,B,Y,J,C){c(B,r),c(Y,r),c(J,AB),j.rawrigidbodyset_rbSetAdditionalMassProperties(this.__wbg_ptr,A,Q,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C)}rbLinvel(A){let Q=j.rawrigidbodyset_rbLinvel(this.__wbg_ptr,A);return r.__wrap(Q)}rbAngvel(A){let Q=j.rawrigidbodyset_rbAngvel(this.__wbg_ptr,A);return r.__wrap(Q)}rbVelocityAtPoint(A,Q){c(Q,r);let B=j.rawrigidbodyset_rbVelocityAtPoint(this.__wbg_ptr,A,Q.__wbg_ptr);return r.__wrap(B)}rbLockTranslations(A,Q,B){j.rawrigidbodyset_rbLockTranslations(this.__wbg_ptr,A,Q,B)}rbSetEnabledTranslations(A,Q,B,Y,J){j.rawrigidbodyset_rbSetEnabledTranslations(this.__wbg_ptr,A,Q,B,Y,J)}rbLockRotations(A,Q,B){j.rawrigidbodyset_rbLockRotations(this.__wbg_ptr,A,Q,B)}rbSetEnabledRotations(A,Q,B,Y,J){j.rawrigidbodyset_rbSetEnabledRotations(this.__wbg_ptr,A,Q,B,Y,J)}rbDominanceGroup(A){return j.rawrigidbodyset_rbDominanceGroup(this.__wbg_ptr,A)}rbSetDominanceGroup(A,Q){j.rawrigidbodyset_rbSetDominanceGroup(this.__wbg_ptr,A,Q)}rbEnableCcd(A,Q){j.rawrigidbodyset_rbEnableCcd(this.__wbg_ptr,A,Q)}rbSetSoftCcdPrediction(A,Q){j.rawrigidbodyset_rbSetSoftCcdPrediction(this.__wbg_ptr,A,Q)}rbMass(A){return j.rawrigidbodyset_rbMass(this.__wbg_ptr,A)}rbInvMass(A){return j.rawrigidbodyset_rbInvMass(this.__wbg_ptr,A)}rbEffectiveInvMass(A){let Q=j.rawrigidbodyset_rbEffectiveInvMass(this.__wbg_ptr,A);return r.__wrap(Q)}rbLocalCom(A){let Q=j.rawrigidbodyset_rbLocalCom(this.__wbg_ptr,A);return r.__wrap(Q)}rbWorldCom(A){let Q=j.rawrigidbodyset_rbWorldCom(this.__wbg_ptr,A);return r.__wrap(Q)}rbInvPrincipalInertia(A){let Q=j.rawrigidbodyset_rbInvPrincipalInertia(this.__wbg_ptr,A);return r.__wrap(Q)}rbPrincipalInertiaLocalFrame(A){let Q=j.rawrigidbodyset_rbPrincipalInertiaLocalFrame(this.__wbg_ptr,A);return AB.__wrap(Q)}rbPrincipalInertia(A){let Q=j.rawrigidbodyset_rbPrincipalInertia(this.__wbg_ptr,A);return r.__wrap(Q)}rbEffectiveWorldInvInertia(A){let Q=j.rawrigidbodyset_rbEffectiveWorldInvInertia(this.__wbg_ptr,A);return m2.__wrap(Q)}rbEffectiveAngularInertia(A){let Q=j.rawrigidbodyset_rbEffectiveAngularInertia(this.__wbg_ptr,A);return m2.__wrap(Q)}rbWakeUp(A){j.rawrigidbodyset_rbWakeUp(this.__wbg_ptr,A)}rbIsCcdEnabled(A){return j.rawrigidbodyset_rbIsCcdEnabled(this.__wbg_ptr,A)!==0}rbSoftCcdPrediction(A){return j.rawrigidbodyset_rbSoftCcdPrediction(this.__wbg_ptr,A)}rbNumColliders(A){return j.rawrigidbodyset_rbNumColliders(this.__wbg_ptr,A)>>>0}rbCollider(A,Q){return j.rawrigidbodyset_rbCollider(this.__wbg_ptr,A,Q)}rbBodyType(A){return j.rawrigidbodyset_rbBodyType(this.__wbg_ptr,A)}rbSetBodyType(A,Q,B){j.rawrigidbodyset_rbSetBodyType(this.__wbg_ptr,A,Q,B)}rbIsFixed(A){return j.rawrigidbodyset_rbIsFixed(this.__wbg_ptr,A)!==0}rbIsKinematic(A){return j.rawrigidbodyset_rbIsKinematic(this.__wbg_ptr,A)!==0}rbIsDynamic(A){return j.rawrigidbodyset_rbIsDynamic(this.__wbg_ptr,A)!==0}rbLinearDamping(A){return j.rawrigidbodyset_rbLinearDamping(this.__wbg_ptr,A)}rbAngularDamping(A){return j.rawrigidbodyset_rbAngularDamping(this.__wbg_ptr,A)}rbSetLinearDamping(A,Q){j.rawrigidbodyset_rbSetLinearDamping(this.__wbg_ptr,A,Q)}rbSetAngularDamping(A,Q){j.rawrigidbodyset_rbSetAngularDamping(this.__wbg_ptr,A,Q)}rbSetEnabled(A,Q){j.rawrigidbodyset_rbSetEnabled(this.__wbg_ptr,A,Q)}rbIsEnabled(A){return j.rawrigidbodyset_rbIsEnabled(this.__wbg_ptr,A)!==0}rbGravityScale(A){return j.rawrigidbodyset_rbGravityScale(this.__wbg_ptr,A)}rbSetGravityScale(A,Q,B){j.rawrigidbodyset_rbSetGravityScale(this.__wbg_ptr,A,Q,B)}rbResetForces(A,Q){j.rawrigidbodyset_rbResetForces(this.__wbg_ptr,A,Q)}rbResetTorques(A,Q){j.rawrigidbodyset_rbResetTorques(this.__wbg_ptr,A,Q)}rbAddForce(A,Q,B){c(Q,r),j.rawrigidbodyset_rbAddForce(this.__wbg_ptr,A,Q.__wbg_ptr,B)}rbApplyImpulse(A,Q,B){c(Q,r),j.rawrigidbodyset_rbApplyImpulse(this.__wbg_ptr,A,Q.__wbg_ptr,B)}rbAddTorque(A,Q,B){c(Q,r),j.rawrigidbodyset_rbAddTorque(this.__wbg_ptr,A,Q.__wbg_ptr,B)}rbApplyTorqueImpulse(A,Q,B){c(Q,r),j.rawrigidbodyset_rbApplyTorqueImpulse(this.__wbg_ptr,A,Q.__wbg_ptr,B)}rbAddForceAtPoint(A,Q,B,Y){c(Q,r),c(B,r),j.rawrigidbodyset_rbAddForceAtPoint(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y)}rbApplyImpulseAtPoint(A,Q,B,Y){c(Q,r),c(B,r),j.rawrigidbodyset_rbApplyImpulseAtPoint(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y)}rbAdditionalSolverIterations(A){return j.rawrigidbodyset_rbAdditionalSolverIterations(this.__wbg_ptr,A)>>>0}rbSetAdditionalSolverIterations(A,Q){j.rawrigidbodyset_rbSetAdditionalSolverIterations(this.__wbg_ptr,A,Q)}rbUserData(A){return j.rawrigidbodyset_rbUserData(this.__wbg_ptr,A)>>>0}rbSetUserData(A,Q){j.rawrigidbodyset_rbSetUserData(this.__wbg_ptr,A,Q)}rbUserForce(A){let Q=j.rawrigidbodyset_rbUserForce(this.__wbg_ptr,A);return r.__wrap(Q)}rbUserTorque(A){let Q=j.rawrigidbodyset_rbUserTorque(this.__wbg_ptr,A);return r.__wrap(Q)}constructor(){let A=j.rawrigidbodyset_new();return this.__wbg_ptr=A>>>0,Pg.register(this,this.__wbg_ptr,this),this}createRigidBody(A,Q,B,Y,J,C,X,G,F,W,Z,U,$,E,K,I,V,H,D,L,z,M,N,q,w,P){return c(Q,r),c(B,AB),c(X,r),c(G,r),c(F,r),c(W,r),c(Z,AB),j.rawrigidbodyset_createRigidBody(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y,J,C,X.__wbg_ptr,G.__wbg_ptr,F.__wbg_ptr,W.__wbg_ptr,Z.__wbg_ptr,U,$,E,K,I,V,H,D,L,z,M,N,q,w,P)}remove(A,Q,B,Y,J){c(Q,XG),c(B,S0),c(Y,CG),c(J,GG),j.rawrigidbodyset_remove(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr)}len(){return j.rawrigidbodyset_len(this.__wbg_ptr)>>>0}contains(A){return j.rawrigidbodyset_contains(this.__wbg_ptr,A)!==0}forEachRigidBodyHandle(A){try{j.rawrigidbodyset_forEachRigidBodyHandle(this.__wbg_ptr,F0(A))}finally{IB[pB++]=void 0}}propagateModifiedBodyPositionsToColliders(A){c(A,S0),j.rawrigidbodyset_propagateModifiedBodyPositionsToColliders(this.__wbg_ptr,A.__wbg_ptr)}}var Tg=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawrotation_free(A>>>0,1));class AB{static __wrap(A){A>>>=0;let Q=Object.create(AB.prototype);return Q.__wbg_ptr=A,Tg.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Tg.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawrotation_free(A,0)}constructor(A,Q,B,Y){let J=j.rawrotation_new(A,Q,B,Y);return this.__wbg_ptr=J>>>0,Tg.register(this,this.__wbg_ptr,this),this}static identity(){let A=j.rawrotation_identity();return AB.__wrap(A)}get x(){return j.rawintegrationparameters_dt(this.__wbg_ptr)}get y(){return j.rawkinematiccharactercontroller_offset(this.__wbg_ptr)}get z(){return j.rawcollidershapecasthit_time_of_impact(this.__wbg_ptr)}get w(){return j.rawrotation_w(this.__wbg_ptr)}}var _XA=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawsdpmatrix3_free(A>>>0,1));class m2{static __wrap(A){A>>>=0;let Q=Object.create(m2.prototype);return Q.__wbg_ptr=A,_XA.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,_XA.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawsdpmatrix3_free(A,0)}elements(){return YH(j.rawsdpmatrix3_elements(this.__wbg_ptr))}}var vXA=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawserializationpipeline_free(A>>>0,1));class iXA{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,vXA.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawserializationpipeline_free(A,0)}constructor(){let A=j.rawccdsolver_new();return this.__wbg_ptr=A>>>0,vXA.register(this,this.__wbg_ptr,this),this}serializeAll(A,Q,B,Y,J,C,X,G,F){return c(A,r),c(Q,cW),c(B,XG),c(Y,JG),c(J,HY),c(C,J0),c(X,S0),c(G,CG),c(F,GG),YH(j.rawserializationpipeline_serializeAll(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C.__wbg_ptr,X.__wbg_ptr,G.__wbg_ptr,F.__wbg_ptr))}deserializeAll(A){let Q=j.rawserializationpipeline_deserializeAll(this.__wbg_ptr,lB(A));return Q===0?void 0:pg.__wrap(Q)}}var yXA=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawshape_free(A>>>0,1));class UQ{static __wrap(A){A>>>=0;let Q=Object.create(UQ.prototype);return Q.__wbg_ptr=A,yXA.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,yXA.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawshape_free(A,0)}static cuboid(A,Q,B){let Y=j.rawshape_cuboid(A,Q,B);return UQ.__wrap(Y)}static roundCuboid(A,Q,B,Y){let J=j.rawshape_roundCuboid(A,Q,B,Y);return UQ.__wrap(J)}static ball(A){let Q=j.rawshape_ball(A);return UQ.__wrap(Q)}static halfspace(A){c(A,r);let Q=j.rawshape_halfspace(A.__wbg_ptr);return UQ.__wrap(Q)}static capsule(A,Q){let B=j.rawshape_capsule(A,Q);return UQ.__wrap(B)}static cylinder(A,Q){let B=j.rawshape_cylinder(A,Q);return UQ.__wrap(B)}static roundCylinder(A,Q,B){let Y=j.rawshape_roundCylinder(A,Q,B);return UQ.__wrap(Y)}static cone(A,Q){let B=j.rawshape_cone(A,Q);return UQ.__wrap(B)}static roundCone(A,Q,B){let Y=j.rawshape_roundCone(A,Q,B);return UQ.__wrap(Y)}static voxels(A,Q){c(A,r);let B=aI(Q,j.__wbindgen_export_2),Y=nJ,J=j.rawshape_voxels(A.__wbg_ptr,B,Y);return UQ.__wrap(J)}static voxelsFromPoints(A,Q){c(A,r);let B=E7(Q,j.__wbindgen_export_2),Y=nJ,J=j.rawshape_voxelsFromPoints(A.__wbg_ptr,B,Y);return UQ.__wrap(J)}static polyline(A,Q){let B=E7(A,j.__wbindgen_export_2),Y=nJ,J=aI(Q,j.__wbindgen_export_2),C=nJ,X=j.rawshape_polyline(B,Y,J,C);return UQ.__wrap(X)}static trimesh(A,Q,B){let Y=E7(A,j.__wbindgen_export_2),J=nJ,C=aI(Q,j.__wbindgen_export_2),X=nJ,G=j.rawshape_trimesh(Y,J,C,X,B);return G===0?void 0:UQ.__wrap(G)}static heightfield(A,Q,B,Y,J){let C=E7(B,j.__wbindgen_export_2),X=nJ;c(Y,r);let G=j.rawshape_heightfield(A,Q,C,X,Y.__wbg_ptr,J);return UQ.__wrap(G)}static segment(A,Q){c(A,r),c(Q,r);let B=j.rawshape_segment(A.__wbg_ptr,Q.__wbg_ptr);return UQ.__wrap(B)}static triangle(A,Q,B){c(A,r),c(Q,r),c(B,r);let Y=j.rawshape_triangle(A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr);return UQ.__wrap(Y)}static roundTriangle(A,Q,B,Y){c(A,r),c(Q,r),c(B,r);let J=j.rawshape_roundTriangle(A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y);return UQ.__wrap(J)}static convexHull(A){let Q=E7(A,j.__wbindgen_export_2),B=nJ,Y=j.rawshape_convexHull(Q,B);return Y===0?void 0:UQ.__wrap(Y)}static roundConvexHull(A,Q){let B=E7(A,j.__wbindgen_export_2),Y=nJ,J=j.rawshape_roundConvexHull(B,Y,Q);return J===0?void 0:UQ.__wrap(J)}static convexMesh(A,Q){let B=E7(A,j.__wbindgen_export_2),Y=nJ,J=aI(Q,j.__wbindgen_export_2),C=nJ,X=j.rawshape_convexMesh(B,Y,J,C);return X===0?void 0:UQ.__wrap(X)}static roundConvexMesh(A,Q,B){let Y=E7(A,j.__wbindgen_export_2),J=nJ,C=aI(Q,j.__wbindgen_export_2),X=nJ,G=j.rawshape_roundConvexMesh(Y,J,C,X,B);return G===0?void 0:UQ.__wrap(G)}castShape(A,Q,B,Y,J,C,X,G,F,W){c(A,r),c(Q,AB),c(B,r),c(Y,UQ),c(J,r),c(C,AB),c(X,r);let Z=j.rawshape_castShape(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C.__wbg_ptr,X.__wbg_ptr,G,F,W);return Z===0?void 0:A3.__wrap(Z)}intersectsShape(A,Q,B,Y,J){return c(A,r),c(Q,AB),c(B,UQ),c(Y,r),c(J,AB),j.rawshape_intersectsShape(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr)!==0}contactShape(A,Q,B,Y,J,C){c(A,r),c(Q,AB),c(B,UQ),c(Y,r),c(J,AB);let X=j.rawshape_contactShape(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C);return X===0?void 0:JH.__wrap(X)}containsPoint(A,Q,B){return c(A,r),c(Q,AB),c(B,r),j.rawshape_containsPoint(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr)!==0}projectPoint(A,Q,B,Y){c(A,r),c(Q,AB),c(B,r);let J=j.rawshape_projectPoint(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y);return o2.__wrap(J)}intersectsRay(A,Q,B,Y,J){return c(A,r),c(Q,AB),c(B,r),c(Y,r),j.rawshape_intersectsRay(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J)!==0}castRay(A,Q,B,Y,J,C){return c(A,r),c(Q,AB),c(B,r),c(Y,r),j.rawshape_castRay(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J,C)}castRayAndGetNormal(A,Q,B,Y,J,C){c(A,r),c(Q,AB),c(B,r),c(Y,r);let X=j.rawshape_castRayAndGetNormal(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J,C);return X===0?void 0:e2.__wrap(X)}}var gXA=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawshapecasthit_free(A>>>0,1));class A3{static __wrap(A){A>>>=0;let Q=Object.create(A3.prototype);return Q.__wbg_ptr=A,gXA.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,gXA.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawshapecasthit_free(A,0)}time_of_impact(){return j.rawintegrationparameters_dt(this.__wbg_ptr)}witness1(){let A=j.rawshapecasthit_witness1(this.__wbg_ptr);return r.__wrap(A)}witness2(){let A=j.rawcontactforceevent_total_force(this.__wbg_ptr);return r.__wrap(A)}normal1(){let A=j.rawshapecasthit_normal1(this.__wbg_ptr);return r.__wrap(A)}normal2(){let A=j.rawshapecasthit_normal2(this.__wbg_ptr);return r.__wrap(A)}}var hXA=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawshapecontact_free(A>>>0,1));class JH{static __wrap(A){A>>>=0;let Q=Object.create(JH.prototype);return Q.__wbg_ptr=A,hXA.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,hXA.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawshapecontact_free(A,0)}distance(){return j.rawkinematiccharactercontroller_maxSlopeClimbAngle(this.__wbg_ptr)}point1(){let A=j.rawpointprojection_point(this.__wbg_ptr);return r.__wrap(A)}point2(){let A=j.rawcollidershapecasthit_witness1(this.__wbg_ptr);return r.__wrap(A)}normal1(){let A=j.rawcollidershapecasthit_witness2(this.__wbg_ptr);return r.__wrap(A)}normal2(){let A=j.rawcharactercollision_translationDeltaApplied(this.__wbg_ptr);return r.__wrap(A)}}var Sg=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawvector_free(A>>>0,1));class r{static __wrap(A){A>>>=0;let Q=Object.create(r.prototype);return Q.__wbg_ptr=A,Sg.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Sg.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawvector_free(A,0)}static zero(){let A=j.rawvector_zero();return r.__wrap(A)}constructor(A,Q,B){let Y=j.rawvector_new(A,Q,B);return this.__wbg_ptr=Y>>>0,Sg.register(this,this.__wbg_ptr,this),this}get x(){return j.rawintegrationparameters_dt(this.__wbg_ptr)}set x(A){j.rawintegrationparameters_set_dt(this.__wbg_ptr,A)}get y(){return j.rawkinematiccharactercontroller_offset(this.__wbg_ptr)}set y(A){j.rawvector_set_y(this.__wbg_ptr,A)}get z(){return j.rawcollidershapecasthit_time_of_impact(this.__wbg_ptr)}set z(A){j.rawvector_set_z(this.__wbg_ptr,A)}xyz(){let A=j.rawvector_xyz(this.__wbg_ptr);return r.__wrap(A)}yxz(){let A=j.rawvector_yxz(this.__wbg_ptr);return r.__wrap(A)}zxy(){let A=j.rawvector_zxy(this.__wbg_ptr);return r.__wrap(A)}xzy(){let A=j.rawvector_xzy(this.__wbg_ptr);return r.__wrap(A)}yzx(){let A=j.rawvector_yzx(this.__wbg_ptr);return r.__wrap(A)}zyx(){let A=j.rawvector_zyx(this.__wbg_ptr);return r.__wrap(A)}}async function nXA(A){if(j!==void 0)return j;A!==void 0&&(Object.getPrototypeOf(A)===Object.prototype?{module_or_path:A}=A:console.warn("using deprecated parameters for the initialization function; pass a single object instead")),A===void 0&&(A=new URL("rapier_wasm3d_bg.wasm",""));let Q=function(){let J={wbg:{}};return J.wbg.__wbg_bind_c8359b1cba058168=function(C,X,G,F){return lB($B(C).bind($B(X),$B(G),$B(F)))},J.wbg.__wbg_buffer_609cc3eee51ed158=function(C){return lB($B(C).buffer)},J.wbg.__wbg_call_672a4d21634d4a24=function(){return x2(function(C,X){return lB($B(C).call($B(X)))},arguments)},J.wbg.__wbg_call_7cccdd69e0791ae2=function(){return x2(function(C,X,G){return lB($B(C).call($B(X),$B(G)))},arguments)},J.wbg.__wbg_call_833bed5770ea2041=function(){return x2(function(C,X,G,F){return lB($B(C).call($B(X),$B(G),$B(F)))},arguments)},J.wbg.__wbg_call_b8adc8b1d0a0d8eb=function(){return x2(function(C,X,G,F,W){return lB($B(C).call($B(X),$B(G),$B(F),$B(W)))},arguments)},J.wbg.__wbg_length_3b4f022188ae8db6=function(C){return $B(C).length},J.wbg.__wbg_length_a446193dc22c12f8=function(C){return $B(C).length},J.wbg.__wbg_new_a12002a7f91c75be=function(C){return lB(new Uint8Array($B(C)))},J.wbg.__wbg_newnoargs_105ed471475aaf50=function(C,X){return lB(Function(kg(C,X)))},J.wbg.__wbg_newwithbyteoffsetandlength_d97e637ebe145a9a=function(C,X,G){return lB(new Uint8Array($B(C),X>>>0,G>>>0))},J.wbg.__wbg_newwithbyteoffsetandlength_e6b7e69acd4c7354=function(C,X,G){return lB(new Float32Array($B(C),X>>>0,G>>>0))},J.wbg.__wbg_newwithlength_5a5efe313cfd59f1=function(C){return lB(new Float32Array(C>>>0))},J.wbg.__wbg_now_2c95c9de01293173=function(C){return $B(C).now()},J.wbg.__wbg_performance_7a3ffd0b17f663ad=function(C){return lB($B(C).performance)},J.wbg.__wbg_rawcontactforceevent_new=function(C){return lB(dg.__wrap(C))},J.wbg.__wbg_rawraycolliderintersection_new=function(C){return lB(t2.__wrap(C))},J.wbg.__wbg_set_10bad9bee0e9c58b=function(C,X,G){$B(C).set($B(X),G>>>0)},J.wbg.__wbg_set_65595bdd868b3009=function(C,X,G){$B(C).set($B(X),G>>>0)},J.wbg.__wbg_static_accessor_GLOBAL_88a902d13a557d07=function(){let C=typeof global>"u"?null:global;return VQ(C)?0:lB(C)},J.wbg.__wbg_static_accessor_GLOBAL_THIS_56578be7e9f832b0=function(){let C=typeof globalThis>"u"?null:globalThis;return VQ(C)?0:lB(C)},J.wbg.__wbg_static_accessor_SELF_37c5d418e4bf5819=function(){let C=typeof self>"u"?null:self;return VQ(C)?0:lB(C)},J.wbg.__wbg_static_accessor_WINDOW_5de37043a91a9c40=function(){let C=typeof window>"u"?null:window;return VQ(C)?0:lB(C)},J.wbg.__wbindgen_boolean_get=function(C){let X=$B(C);return typeof X=="boolean"?X?1:0:2},J.wbg.__wbindgen_is_function=function(C){return typeof $B(C)=="function"},J.wbg.__wbindgen_is_undefined=function(C){return $B(C)===void 0},J.wbg.__wbindgen_memory=function(){return lB(j.memory)},J.wbg.__wbindgen_number_get=function(C,X){let G=$B(X),F=typeof G=="number"?G:void 0;IY().setFloat64(C+8,VQ(F)?0:F,!0),IY().setInt32(C+0,!VQ(F),!0)},J.wbg.__wbindgen_number_new=function(C){return lB(C)},J.wbg.__wbindgen_object_clone_ref=function(C){return lB($B(C))},J.wbg.__wbindgen_object_drop_ref=function(C){YH(C)},J.wbg.__wbindgen_throw=function(C,X){throw Error(kg(C,X))},J}();(typeof A=="string"||typeof Request=="function"&&A instanceof Request||typeof URL=="function"&&A instanceof URL)&&(A=fetch(A));let{instance:B,module:Y}=await async function(J,C){if(typeof Response=="function"&&J instanceof Response){if(typeof WebAssembly.instantiateStreaming=="function")try{return await WebAssembly.instantiateStreaming(J,C)}catch(G){if(J.headers.get("Content-Type")=="application/wasm")throw G;console.warn("`WebAssembly.instantiateStreaming` failed because your server does not serve Wasm with `application/wasm` MIME type. Falling back to `WebAssembly.instantiate` which is slower. Original error:\n",G)}let X=await J.arrayBuffer();return await WebAssembly.instantiate(X,C)}{let X=await WebAssembly.instantiate(J,C);return X instanceof WebAssembly.Instance?{instance:X,module:J}:X}}(await A,Q);return function(J,C){return j=J.exports,nXA.__wbindgen_wasm_module=C,uW=null,eI=null,tI=null,AH=null,oI=null,j}(B,Y)}class sg{constructor(A,Q,B){this.x=A,this.y=Q,this.z=B}}class a{static new(A,Q,B){return new sg(A,Q,B)}static intoRaw(A){return new r(A.x,A.y,A.z)}static zeros(){return a.new(0,0,0)}static fromRaw(A){if(!A)return null;let Q=a.new(A.x,A.y,A.z);return A.free(),Q}static copy(A,Q){A.x=Q.x,A.y=Q.y,A.z=Q.z}}class u2{constructor(A,Q,B,Y){this.x=A,this.y=Q,this.z=B,this.w=Y}}class hQ{static identity(){return new u2(0,0,0,1)}static fromRaw(A){if(!A)return null;let Q=new u2(A.x,A.y,A.z,A.w);return A.free(),Q}static intoRaw(A){return new AB(A.x,A.y,A.z,A.w)}static copy(A,Q){A.x=Q.x,A.y=Q.y,A.z=Q.z,A.w=Q.w}}class rg{constructor(A){this.elements=A}get m11(){return this.elements[0]}get m12(){return this.elements[1]}get m21(){return this.m12}get m13(){return this.elements[2]}get m31(){return this.m13}get m22(){return this.elements[3]}get m23(){return this.elements[4]}get m32(){return this.m23}get m33(){return this.elements[5]}}class d2{static fromRaw(A){let Q=new rg(A.elements());return A.free(),Q}}var jC,BJ,_g,vg,CH,RU,YY,yg,gg,hg,c2,l2,xg,fg,p2,dW;(function(A){A[A.Dynamic=0]="Dynamic",A[A.Fixed=1]="Fixed",A[A.KinematicPositionBased=2]="KinematicPositionBased",A[A.KinematicVelocityBased=3]="KinematicVelocityBased"})(jC||(jC={}));class i2{constructor(A,Q,B){this.rawSet=A,this.colliderSet=Q,this.handle=B}finalizeDeserialization(A){this.colliderSet=A}isValid(){return this.rawSet.contains(this.handle)}lockTranslations(A,Q){return this.rawSet.rbLockTranslations(this.handle,A,Q)}lockRotations(A,Q){return this.rawSet.rbLockRotations(this.handle,A,Q)}setEnabledTranslations(A,Q,B,Y){return this.rawSet.rbSetEnabledTranslations(this.handle,A,Q,B,Y)}restrictTranslations(A,Q,B,Y){this.setEnabledTranslations(A,Q,B,Y)}setEnabledRotations(A,Q,B,Y){return this.rawSet.rbSetEnabledRotations(this.handle,A,Q,B,Y)}restrictRotations(A,Q,B,Y){this.setEnabledRotations(A,Q,B,Y)}dominanceGroup(){return this.rawSet.rbDominanceGroup(this.handle)}setDominanceGroup(A){this.rawSet.rbSetDominanceGroup(this.handle,A)}additionalSolverIterations(){return this.rawSet.rbAdditionalSolverIterations(this.handle)}setAdditionalSolverIterations(A){this.rawSet.rbSetAdditionalSolverIterations(this.handle,A)}enableCcd(A){this.rawSet.rbEnableCcd(this.handle,A)}setSoftCcdPrediction(A){this.rawSet.rbSetSoftCcdPrediction(this.handle,A)}softCcdPrediction(){return this.rawSet.rbSoftCcdPrediction(this.handle)}translation(){let A=this.rawSet.rbTranslation(this.handle);return a.fromRaw(A)}rotation(){let A=this.rawSet.rbRotation(this.handle);return hQ.fromRaw(A)}nextTranslation(){let A=this.rawSet.rbNextTranslation(this.handle);return a.fromRaw(A)}nextRotation(){let A=this.rawSet.rbNextRotation(this.handle);return hQ.fromRaw(A)}setTranslation(A,Q){this.rawSet.rbSetTranslation(this.handle,A.x,A.y,A.z,Q)}setLinvel(A,Q){let B=a.intoRaw(A);this.rawSet.rbSetLinvel(this.handle,B,Q),B.free()}gravityScale(){return this.rawSet.rbGravityScale(this.handle)}setGravityScale(A,Q){this.rawSet.rbSetGravityScale(this.handle,A,Q)}setRotation(A,Q){this.rawSet.rbSetRotation(this.handle,A.x,A.y,A.z,A.w,Q)}setAngvel(A,Q){let B=a.intoRaw(A);this.rawSet.rbSetAngvel(this.handle,B,Q),B.free()}setNextKinematicTranslation(A){this.rawSet.rbSetNextKinematicTranslation(this.handle,A.x,A.y,A.z)}setNextKinematicRotation(A){this.rawSet.rbSetNextKinematicRotation(this.handle,A.x,A.y,A.z,A.w)}linvel(){return a.fromRaw(this.rawSet.rbLinvel(this.handle))}velocityAtPoint(A){let Q=a.intoRaw(A),B=a.fromRaw(this.rawSet.rbVelocityAtPoint(this.handle,Q));return Q.free(),B}angvel(){return a.fromRaw(this.rawSet.rbAngvel(this.handle))}mass(){return this.rawSet.rbMass(this.handle)}effectiveInvMass(){return a.fromRaw(this.rawSet.rbEffectiveInvMass(this.handle))}invMass(){return this.rawSet.rbInvMass(this.handle)}localCom(){return a.fromRaw(this.rawSet.rbLocalCom(this.handle))}worldCom(){return a.fromRaw(this.rawSet.rbWorldCom(this.handle))}invPrincipalInertia(){return a.fromRaw(this.rawSet.rbInvPrincipalInertia(this.handle))}principalInertia(){return a.fromRaw(this.rawSet.rbPrincipalInertia(this.handle))}principalInertiaLocalFrame(){return hQ.fromRaw(this.rawSet.rbPrincipalInertiaLocalFrame(this.handle))}effectiveWorldInvInertia(){return d2.fromRaw(this.rawSet.rbEffectiveWorldInvInertia(this.handle))}effectiveAngularInertia(){return d2.fromRaw(this.rawSet.rbEffectiveAngularInertia(this.handle))}sleep(){this.rawSet.rbSleep(this.handle)}wakeUp(){this.rawSet.rbWakeUp(this.handle)}isCcdEnabled(){return this.rawSet.rbIsCcdEnabled(this.handle)}numColliders(){return this.rawSet.rbNumColliders(this.handle)}collider(A){return this.colliderSet.get(this.rawSet.rbCollider(this.handle,A))}setEnabled(A){this.rawSet.rbSetEnabled(this.handle,A)}isEnabled(){return this.rawSet.rbIsEnabled(this.handle)}bodyType(){return this.rawSet.rbBodyType(this.handle)}setBodyType(A,Q){return this.rawSet.rbSetBodyType(this.handle,A,Q)}isSleeping(){return this.rawSet.rbIsSleeping(this.handle)}isMoving(){return this.rawSet.rbIsMoving(this.handle)}isFixed(){return this.rawSet.rbIsFixed(this.handle)}isKinematic(){return this.rawSet.rbIsKinematic(this.handle)}isDynamic(){return this.rawSet.rbIsDynamic(this.handle)}linearDamping(){return this.rawSet.rbLinearDamping(this.handle)}angularDamping(){return this.rawSet.rbAngularDamping(this.handle)}setLinearDamping(A){this.rawSet.rbSetLinearDamping(this.handle,A)}recomputeMassPropertiesFromColliders(){this.rawSet.rbRecomputeMassPropertiesFromColliders(this.handle,this.colliderSet.raw)}setAdditionalMass(A,Q){this.rawSet.rbSetAdditionalMass(this.handle,A,Q)}setAdditionalMassProperties(A,Q,B,Y,J){let C=a.intoRaw(Q),X=a.intoRaw(B),G=hQ.intoRaw(Y);this.rawSet.rbSetAdditionalMassProperties(this.handle,A,C,X,G,J),C.free(),X.free(),G.free()}setAngularDamping(A){this.rawSet.rbSetAngularDamping(this.handle,A)}resetForces(A){this.rawSet.rbResetForces(this.handle,A)}resetTorques(A){this.rawSet.rbResetTorques(this.handle,A)}addForce(A,Q){let B=a.intoRaw(A);this.rawSet.rbAddForce(this.handle,B,Q),B.free()}applyImpulse(A,Q){let B=a.intoRaw(A);this.rawSet.rbApplyImpulse(this.handle,B,Q),B.free()}addTorque(A,Q){let B=a.intoRaw(A);this.rawSet.rbAddTorque(this.handle,B,Q),B.free()}applyTorqueImpulse(A,Q){let B=a.intoRaw(A);this.rawSet.rbApplyTorqueImpulse(this.handle,B,Q),B.free()}addForceAtPoint(A,Q,B){let Y=a.intoRaw(A),J=a.intoRaw(Q);this.rawSet.rbAddForceAtPoint(this.handle,Y,J,B),Y.free(),J.free()}applyImpulseAtPoint(A,Q,B){let Y=a.intoRaw(A),J=a.intoRaw(Q);this.rawSet.rbApplyImpulseAtPoint(this.handle,Y,J,B),Y.free(),J.free()}userForce(){return a.fromRaw(this.rawSet.rbUserForce(this.handle))}userTorque(){return a.fromRaw(this.rawSet.rbUserTorque(this.handle))}}class h1{constructor(A){this.enabled=!0,this.status=A,this.translation=a.zeros(),this.rotation=hQ.identity(),this.gravityScale=1,this.linvel=a.zeros(),this.mass=0,this.massOnly=!1,this.centerOfMass=a.zeros(),this.translationsEnabledX=!0,this.translationsEnabledY=!0,this.angvel=a.zeros(),this.principalAngularInertia=a.zeros(),this.angularInertiaLocalFrame=hQ.identity(),this.translationsEnabledZ=!0,this.rotationsEnabledX=!0,this.rotationsEnabledY=!0,this.rotationsEnabledZ=!0,this.linearDamping=0,this.angularDamping=0,this.canSleep=!0,this.sleeping=!1,this.ccdEnabled=!1,this.softCcdPrediction=0,this.dominanceGroup=0,this.additionalSolverIterations=0}static dynamic(){return new h1(jC.Dynamic)}static kinematicPositionBased(){return new h1(jC.KinematicPositionBased)}static kinematicVelocityBased(){return new h1(jC.KinematicVelocityBased)}static fixed(){return new h1(jC.Fixed)}static newDynamic(){return new h1(jC.Dynamic)}static newKinematicPositionBased(){return new h1(jC.KinematicPositionBased)}static newKinematicVelocityBased(){return new h1(jC.KinematicVelocityBased)}static newStatic(){return new h1(jC.Fixed)}setDominanceGroup(A){return this.dominanceGroup=A,this}setAdditionalSolverIterations(A){return this.additionalSolverIterations=A,this}setEnabled(A){return this.enabled=A,this}setTranslation(A,Q,B){if(typeof A!="number"||typeof Q!="number"||typeof B!="number")throw TypeError("The translation components must be numbers.");return this.translation={x:A,y:Q,z:B},this}setRotation(A){return hQ.copy(this.rotation,A),this}setGravityScale(A){return this.gravityScale=A,this}setAdditionalMass(A){return this.mass=A,this.massOnly=!0,this}setLinvel(A,Q,B){if(typeof A!="number"||typeof Q!="number"||typeof B!="number")throw TypeError("The linvel components must be numbers.");return this.linvel={x:A,y:Q,z:B},this}setAngvel(A){return a.copy(this.angvel,A),this}setAdditionalMassProperties(A,Q,B,Y){return this.mass=A,a.copy(this.centerOfMass,Q),a.copy(this.principalAngularInertia,B),hQ.copy(this.angularInertiaLocalFrame,Y),this.massOnly=!1,this}enabledTranslations(A,Q,B){return this.translationsEnabledX=A,this.translationsEnabledY=Q,this.translationsEnabledZ=B,this}restrictTranslations(A,Q,B){return this.enabledTranslations(A,Q,B)}lockTranslations(){return this.enabledTranslations(!1,!1,!1)}enabledRotations(A,Q,B){return this.rotationsEnabledX=A,this.rotationsEnabledY=Q,this.rotationsEnabledZ=B,this}restrictRotations(A,Q,B){return this.enabledRotations(A,Q,B)}lockRotations(){return this.restrictRotations(!1,!1,!1)}setLinearDamping(A){return this.linearDamping=A,this}setAngularDamping(A){return this.angularDamping=A,this}setCanSleep(A){return this.canSleep=A,this}setSleeping(A){return this.sleeping=A,this}setCcdEnabled(A){return this.ccdEnabled=A,this}setSoftCcdPrediction(A){return this.softCcdPrediction=A,this}setUserData(A){return this.userData=A,this}}class ZH{constructor(){this.fconv=new Float64Array(1),this.uconv=new Uint32Array(this.fconv.buffer),this.data=[],this.size=0}set(A,Q){let B=this.index(A);for(;this.data.length<=B;)this.data.push(null);this.data[B]==null&&(this.size+=1),this.data[B]=Q}len(){return this.size}delete(A){let Q=this.index(A);QA!=null)}index(A){return this.fconv[0]=A,this.uconv[0]}}class ag{constructor(A){this.raw=A||new J0,this.map=new ZH,A&&A.forEachRigidBodyHandle((Q)=>{this.map.set(Q,new i2(A,null,Q))})}free(){this.raw&&this.raw.free(),this.raw=void 0,this.map&&this.map.clear(),this.map=void 0}finalizeDeserialization(A){this.map.forEach((Q)=>Q.finalizeDeserialization(A))}createRigidBody(A,Q){let B=a.intoRaw(Q.translation),Y=hQ.intoRaw(Q.rotation),J=a.intoRaw(Q.linvel),C=a.intoRaw(Q.centerOfMass),X=a.intoRaw(Q.angvel),G=a.intoRaw(Q.principalAngularInertia),F=hQ.intoRaw(Q.angularInertiaLocalFrame),W=this.raw.createRigidBody(Q.enabled,B,Y,Q.gravityScale,Q.mass,Q.massOnly,C,J,X,G,F,Q.translationsEnabledX,Q.translationsEnabledY,Q.translationsEnabledZ,Q.rotationsEnabledX,Q.rotationsEnabledY,Q.rotationsEnabledZ,Q.linearDamping,Q.angularDamping,Q.status,Q.canSleep,Q.sleeping,Q.softCcdPrediction,Q.ccdEnabled,Q.dominanceGroup,Q.additionalSolverIterations);B.free(),Y.free(),J.free(),C.free(),X.free(),G.free(),F.free();let Z=new i2(this.raw,A,W);return Z.userData=Q.userData,this.map.set(W,Z),Z}remove(A,Q,B,Y,J){for(let C=0;CY.unmap(C)),J.forEachJointHandleAttachedToRigidBody(A,(C)=>J.unmap(C)),this.raw.remove(A,Q.raw,B.raw,Y.raw,J.raw),this.map.delete(A)}len(){return this.map.len()}contains(A){return this.get(A)!=null}get(A){return this.map.get(A)}forEach(A){this.map.forEach(A)}forEachActiveRigidBody(A,Q){A.forEachActiveRigidBodyHandle((B)=>{Q(this.get(B))})}getAll(){return this.map.getAll()}}class og{constructor(A){this.raw=A||new cW}free(){this.raw&&this.raw.free(),this.raw=void 0}get dt(){return this.raw.dt}get contact_erp(){return this.raw.contact_erp}get lengthUnit(){return this.raw.lengthUnit}get normalizedAllowedLinearError(){return this.raw.normalizedAllowedLinearError}get normalizedPredictionDistance(){return this.raw.normalizedPredictionDistance}get numSolverIterations(){return this.raw.numSolverIterations}get numInternalPgsIterations(){return this.raw.numInternalPgsIterations}get minIslandSize(){return this.raw.minIslandSize}get maxCcdSubsteps(){return this.raw.maxCcdSubsteps}set dt(A){this.raw.dt=A}set contact_natural_frequency(A){this.raw.contact_natural_frequency=A}set lengthUnit(A){this.raw.lengthUnit=A}set normalizedAllowedLinearError(A){this.raw.normalizedAllowedLinearError=A}set normalizedPredictionDistance(A){this.raw.normalizedPredictionDistance=A}set numSolverIterations(A){this.raw.numSolverIterations=A}set numInternalPgsIterations(A){this.raw.numInternalPgsIterations=A}set minIslandSize(A){this.raw.minIslandSize=A}set maxCcdSubsteps(A){this.raw.maxCcdSubsteps=A}}(function(A){A[A.Revolute=0]="Revolute",A[A.Fixed=1]="Fixed",A[A.Prismatic=2]="Prismatic",A[A.Rope=3]="Rope",A[A.Spring=4]="Spring",A[A.Spherical=5]="Spherical",A[A.Generic=6]="Generic"})(BJ||(BJ={})),function(A){A[A.AccelerationBased=0]="AccelerationBased",A[A.ForceBased=1]="ForceBased"}(_g||(_g={})),function(A){A[A.LinX=1]="LinX",A[A.LinY=2]="LinY",A[A.LinZ=4]="LinZ",A[A.AngX=8]="AngX",A[A.AngY=16]="AngY",A[A.AngZ=32]="AngZ"}(vg||(vg={}));class PC{constructor(A,Q,B){this.rawSet=A,this.bodySet=Q,this.handle=B}static newTyped(A,Q,B){switch(A.jointType(B)){case OC.Revolute:return new Bh(A,Q,B);case OC.Prismatic:return new Qh(A,Q,B);case OC.Fixed:return new tg(A,Q,B);case OC.Spring:return new Ah(A,Q,B);case OC.Rope:return new eg(A,Q,B);case OC.Spherical:return new Jh(A,Q,B);case OC.Generic:return new Yh(A,Q,B);default:return new PC(A,Q,B)}}finalizeDeserialization(A){this.bodySet=A}isValid(){return this.rawSet.contains(this.handle)}body1(){return this.bodySet.get(this.rawSet.jointBodyHandle1(this.handle))}body2(){return this.bodySet.get(this.rawSet.jointBodyHandle2(this.handle))}type(){return this.rawSet.jointType(this.handle)}frameX1(){return hQ.fromRaw(this.rawSet.jointFrameX1(this.handle))}frameX2(){return hQ.fromRaw(this.rawSet.jointFrameX2(this.handle))}anchor1(){return a.fromRaw(this.rawSet.jointAnchor1(this.handle))}anchor2(){return a.fromRaw(this.rawSet.jointAnchor2(this.handle))}setAnchor1(A){let Q=a.intoRaw(A);this.rawSet.jointSetAnchor1(this.handle,Q),Q.free()}setAnchor2(A){let Q=a.intoRaw(A);this.rawSet.jointSetAnchor2(this.handle,Q),Q.free()}setContactsEnabled(A){this.rawSet.jointSetContactsEnabled(this.handle,A)}contactsEnabled(){return this.rawSet.jointContactsEnabled(this.handle)}}class Q3 extends PC{limitsEnabled(){return this.rawSet.jointLimitsEnabled(this.handle,this.rawAxis())}limitsMin(){return this.rawSet.jointLimitsMin(this.handle,this.rawAxis())}limitsMax(){return this.rawSet.jointLimitsMax(this.handle,this.rawAxis())}setLimits(A,Q){this.rawSet.jointSetLimits(this.handle,this.rawAxis(),A,Q)}configureMotorModel(A){this.rawSet.jointConfigureMotorModel(this.handle,this.rawAxis(),A)}configureMotorVelocity(A,Q){this.rawSet.jointConfigureMotorVelocity(this.handle,this.rawAxis(),A,Q)}configureMotorPosition(A,Q,B){this.rawSet.jointConfigureMotorPosition(this.handle,this.rawAxis(),A,Q,B)}configureMotor(A,Q,B,Y){this.rawSet.jointConfigureMotor(this.handle,this.rawAxis(),A,Q,B,Y)}}class tg extends PC{}class eg extends PC{}class Ah extends PC{}class Qh extends Q3{rawAxis(){return r2.LinX}}class Bh extends Q3{rawAxis(){return r2.AngX}}class Yh extends PC{}class Jh extends PC{}class YG{constructor(){}static fixed(A,Q,B,Y){let J=new YG;return J.anchor1=A,J.anchor2=B,J.frame1=Q,J.frame2=Y,J.jointType=BJ.Fixed,J}static spring(A,Q,B,Y,J){let C=new YG;return C.anchor1=Y,C.anchor2=J,C.length=A,C.stiffness=Q,C.damping=B,C.jointType=BJ.Spring,C}static rope(A,Q,B){let Y=new YG;return Y.anchor1=Q,Y.anchor2=B,Y.length=A,Y.jointType=BJ.Rope,Y}static generic(A,Q,B,Y){let J=new YG;return J.anchor1=A,J.anchor2=Q,J.axis=B,J.axesMask=Y,J.jointType=BJ.Generic,J}static spherical(A,Q){let B=new YG;return B.anchor1=A,B.anchor2=Q,B.jointType=BJ.Spherical,B}static prismatic(A,Q,B){let Y=new YG;return Y.anchor1=A,Y.anchor2=Q,Y.axis=B,Y.jointType=BJ.Prismatic,Y}static revolute(A,Q,B){let Y=new YG;return Y.anchor1=A,Y.anchor2=Q,Y.axis=B,Y.jointType=BJ.Revolute,Y}intoRaw(){let A,Q,B=a.intoRaw(this.anchor1),Y=a.intoRaw(this.anchor2),J=!1,C=0,X=0;switch(this.jointType){case BJ.Fixed:let G=hQ.intoRaw(this.frame1),F=hQ.intoRaw(this.frame2);Q=mY.fixed(B,G,Y,F),G.free(),F.free();break;case BJ.Spring:Q=mY.spring(this.length,this.stiffness,this.damping,B,Y);break;case BJ.Rope:Q=mY.rope(this.length,B,Y);break;case BJ.Prismatic:A=a.intoRaw(this.axis),this.limitsEnabled&&(J=!0,C=this.limits[0],X=this.limits[1]),Q=mY.prismatic(B,Y,A,J,C,X),A.free();break;case BJ.Generic:A=a.intoRaw(this.axis);let W=this.axesMask;Q=mY.generic(B,Y,A,W);break;case BJ.Spherical:Q=mY.spherical(B,Y);break;case BJ.Revolute:A=a.intoRaw(this.axis),Q=mY.revolute(B,Y,A),A.free()}return B.free(),Y.free(),Q}}class Ch{constructor(A){this.raw=A||new CG,this.map=new ZH,A&&A.forEachJointHandle((Q)=>{this.map.set(Q,PC.newTyped(A,null,Q))})}free(){this.raw&&this.raw.free(),this.raw=void 0,this.map&&this.map.clear(),this.map=void 0}finalizeDeserialization(A){this.map.forEach((Q)=>Q.finalizeDeserialization(A))}createJoint(A,Q,B,Y,J){let C=Q.intoRaw(),X=this.raw.createJoint(C,B,Y,J);C.free();let G=PC.newTyped(this.raw,A,X);return this.map.set(X,G),G}remove(A,Q){this.raw.remove(A,Q),this.unmap(A)}forEachJointHandleAttachedToRigidBody(A,Q){this.raw.forEachJointAttachedToRigidBody(A,Q)}unmap(A){this.map.delete(A)}len(){return this.map.len()}contains(A){return this.get(A)!=null}get(A){return this.map.get(A)}forEach(A){this.map.forEach(A)}getAll(){return this.map.getAll()}}class V7{constructor(A,Q){this.rawSet=A,this.handle=Q}static newTyped(A,Q){switch(A.jointType(Q)){case OC.Revolute:return new Fh(A,Q);case OC.Prismatic:return new Gh(A,Q);case OC.Fixed:return new Xh(A,Q);case OC.Spherical:return new Wh(A,Q);default:return new V7(A,Q)}}isValid(){return this.rawSet.contains(this.handle)}setContactsEnabled(A){this.rawSet.jointSetContactsEnabled(this.handle,A)}contactsEnabled(){return this.rawSet.jointContactsEnabled(this.handle)}}class B3 extends V7{}class Xh extends V7{}class Gh extends B3{rawAxis(){return r2.LinX}}class Fh extends B3{rawAxis(){return r2.AngX}}class Wh extends V7{}class Zh{constructor(A){this.raw=A||new GG,this.map=new ZH,A&&A.forEachJointHandle((Q)=>{this.map.set(Q,V7.newTyped(this.raw,Q))})}free(){this.raw&&this.raw.free(),this.raw=void 0,this.map&&this.map.clear(),this.map=void 0}createJoint(A,Q,B,Y){let J=A.intoRaw(),C=this.raw.createJoint(J,Q,B,Y);J.free();let X=V7.newTyped(this.raw,C);return this.map.set(C,X),X}remove(A,Q){this.raw.remove(A,Q),this.map.delete(A)}unmap(A){this.map.delete(A)}len(){return this.map.len()}contains(A){return this.get(A)!=null}get(A){return this.map.get(A)}forEach(A){this.map.forEach(A)}forEachJointHandleAttachedToRigidBody(A,Q){this.raw.forEachJointAttachedToRigidBody(A,Q)}getAll(){return this.map.getAll()}}(function(A){A[A.Average=0]="Average",A[A.Min=1]="Min",A[A.Multiply=2]="Multiply",A[A.Max=3]="Max"})(CH||(CH={}));class $h{constructor(A){this.raw=A||new f2}free(){this.raw&&this.raw.free(),this.raw=void 0}}class Uh{constructor(A){this.raw=A||new XG}free(){this.raw&&this.raw.free(),this.raw=void 0}forEachActiveRigidBodyHandle(A){this.raw.forEachActiveRigidBodyHandle(A)}}(function(A){A[A.Vertex=0]="Vertex",A[A.Edge=1]="Edge",A[A.Face=2]="Face",A[A.Unknown=3]="Unknown"})(RU||(RU={}));class sXA{constructor(A,Q){this.origin=A,this.dir=Q}pointAt(A){return{x:this.origin.x+this.dir.x*A,y:this.origin.y+this.dir.y*A,z:this.origin.z+this.dir.z*A}}}class $H{constructor(A,Q,B,Y){this.featureType=RU.Unknown,this.featureId=void 0,this.timeOfImpact=A,this.normal=Q,Y!==void 0&&(this.featureId=Y),B!==void 0&&(this.featureType=B)}static fromRaw(A){if(!A)return null;let Q=new $H(A.time_of_impact(),a.fromRaw(A.normal()),A.featureType(),A.featureId());return A.free(),Q}}class XH{constructor(A,Q,B,Y,J){this.featureType=RU.Unknown,this.featureId=void 0,this.collider=A,this.timeOfImpact=Q,this.normal=B,J!==void 0&&(this.featureId=J),Y!==void 0&&(this.featureType=Y)}static fromRaw(A,Q){if(!Q)return null;let B=new XH(A.get(Q.colliderHandle()),Q.time_of_impact(),a.fromRaw(Q.normal()),Q.featureType(),Q.featureId());return Q.free(),B}}class Y3{constructor(A,Q){this.collider=A,this.timeOfImpact=Q}static fromRaw(A,Q){if(!Q)return null;let B=new Y3(A.get(Q.colliderHandle()),Q.timeOfImpact());return Q.free(),B}}class UH{constructor(A,Q){this.point=A,this.isInside=Q}static fromRaw(A){if(!A)return null;let Q=new UH(a.fromRaw(A.point()),A.isInside());return A.free(),Q}}class GH{constructor(A,Q,B,Y,J){this.featureType=RU.Unknown,this.featureId=void 0,this.collider=A,this.point=Q,this.isInside=B,J!==void 0&&(this.featureId=J),Y!==void 0&&(this.featureType=Y)}static fromRaw(A,Q){if(!Q)return null;let B=new GH(A.get(Q.colliderHandle()),a.fromRaw(Q.point()),Q.isInside(),Q.featureType(),Q.featureId());return Q.free(),B}}class jU{constructor(A,Q,B,Y,J){this.time_of_impact=A,this.witness1=Q,this.witness2=B,this.normal1=Y,this.normal2=J}static fromRaw(A,Q){if(!Q)return null;let B=new jU(Q.time_of_impact(),a.fromRaw(Q.witness1()),a.fromRaw(Q.witness2()),a.fromRaw(Q.normal1()),a.fromRaw(Q.normal2()));return Q.free(),B}}class EH extends jU{constructor(A,Q,B,Y,J,C){super(Q,B,Y,J,C),this.collider=A}static fromRaw(A,Q){if(!Q)return null;let B=new EH(A.get(Q.colliderHandle()),Q.time_of_impact(),a.fromRaw(Q.witness1()),a.fromRaw(Q.witness2()),a.fromRaw(Q.normal1()),a.fromRaw(Q.normal2()));return Q.free(),B}}class Eh{constructor(A){this.raw=A||new JG}free(){this.raw&&this.raw.free(),this.raw=void 0}castRay(A,Q,B,Y,J,C,X,G,F,W,Z){let U=a.intoRaw(Y.origin),$=a.intoRaw(Y.dir),E=Y3.fromRaw(B,this.raw.castRay(A.raw,Q.raw,B.raw,U,$,J,C,X,G,F,W,Z));return U.free(),$.free(),E}castRayAndGetNormal(A,Q,B,Y,J,C,X,G,F,W,Z){let U=a.intoRaw(Y.origin),$=a.intoRaw(Y.dir),E=XH.fromRaw(B,this.raw.castRayAndGetNormal(A.raw,Q.raw,B.raw,U,$,J,C,X,G,F,W,Z));return U.free(),$.free(),E}intersectionsWithRay(A,Q,B,Y,J,C,X,G,F,W,Z,U){let $=a.intoRaw(Y.origin),E=a.intoRaw(Y.dir);this.raw.intersectionsWithRay(A.raw,Q.raw,B.raw,$,E,J,C,(K)=>X(XH.fromRaw(B,K)),G,F,W,Z,U),$.free(),E.free()}intersectionWithShape(A,Q,B,Y,J,C,X,G,F,W,Z){let U=a.intoRaw(Y),$=hQ.intoRaw(J),E=C.intoRaw(),K=this.raw.intersectionWithShape(A.raw,Q.raw,B.raw,U,$,E,X,G,F,W,Z);return U.free(),$.free(),E.free(),K}projectPoint(A,Q,B,Y,J,C,X,G,F,W){let Z=a.intoRaw(Y),U=GH.fromRaw(B,this.raw.projectPoint(A.raw,Q.raw,B.raw,Z,J,C,X,G,F,W));return Z.free(),U}projectPointAndGetFeature(A,Q,B,Y,J,C,X,G,F){let W=a.intoRaw(Y),Z=GH.fromRaw(B,this.raw.projectPointAndGetFeature(A.raw,Q.raw,B.raw,W,J,C,X,G,F));return W.free(),Z}intersectionsWithPoint(A,Q,B,Y,J,C,X,G,F,W){let Z=a.intoRaw(Y);this.raw.intersectionsWithPoint(A.raw,Q.raw,B.raw,Z,J,C,X,G,F,W),Z.free()}castShape(A,Q,B,Y,J,C,X,G,F,W,Z,U,$,E,K){let I=a.intoRaw(Y),V=hQ.intoRaw(J),H=a.intoRaw(C),D=X.intoRaw(),L=EH.fromRaw(B,this.raw.castShape(A.raw,Q.raw,B.raw,I,V,H,D,G,F,W,Z,U,$,E,K));return I.free(),V.free(),H.free(),D.free(),L}intersectionsWithShape(A,Q,B,Y,J,C,X,G,F,W,Z,U){let $=a.intoRaw(Y),E=hQ.intoRaw(J),K=C.intoRaw();this.raw.intersectionsWithShape(A.raw,Q.raw,B.raw,$,E,K,X,G,F,W,Z,U),$.free(),E.free(),K.free()}collidersWithAabbIntersectingAabb(A,Q,B,Y,J,C){let X=a.intoRaw(Y),G=a.intoRaw(J);this.raw.collidersWithAabbIntersectingAabb(A.raw,Q.raw,B.raw,X,G,C),X.free(),G.free()}}class Kh{constructor(A){this.raw=A||new HY,this.tempManifold=new Vh(null)}free(){this.raw&&this.raw.free(),this.raw=void 0}contactPairsWith(A,Q){this.raw.contact_pairs_with(A,Q)}intersectionPairsWith(A,Q){this.raw.intersection_pairs_with(A,Q)}contactPair(A,Q,B){let Y=this.raw.contact_pair(A,Q);if(Y){let J=Y.collider1()!=A,C;for(C=0;CA.free()),this.pidControllers.forEach((A)=>A.free()),this.vehicleControllers.forEach((A)=>A.free()),this.integrationParameters=void 0,this.islands=void 0,this.broadPhase=void 0,this.narrowPhase=void 0,this.bodies=void 0,this.colliders=void 0,this.ccdSolver=void 0,this.impulseJoints=void 0,this.multibodyJoints=void 0,this.physicsPipeline=void 0,this.serializationPipeline=void 0,this.debugRenderPipeline=void 0,this.characterControllers=void 0,this.pidControllers=void 0,this.vehicleControllers=void 0}static fromRaw(A){return A?new N3(a.fromRaw(A.takeGravity()),A.takeIntegrationParameters(),A.takeIslandManager(),A.takeBroadPhase(),A.takeNarrowPhase(),A.takeBodies(),A.takeColliders(),A.takeImpulseJoints(),A.takeMultibodyJoints()):null}takeSnapshot(){return this.serializationPipeline.serializeAll(this.gravity,this.integrationParameters,this.islands,this.broadPhase,this.narrowPhase,this.bodies,this.colliders,this.impulseJoints,this.multibodyJoints)}static restoreSnapshot(A){return new n2().deserializeAll(A)}debugRender(A,Q){return this.debugRenderPipeline.render(this.bodies,this.colliders,this.impulseJoints,this.multibodyJoints,this.narrowPhase,A,Q),new Dh(this.debugRenderPipeline.vertices,this.debugRenderPipeline.colors)}step(A,Q){this.physicsPipeline.step(this.gravity,this.integrationParameters,this.islands,this.broadPhase,this.narrowPhase,this.bodies,this.colliders,this.impulseJoints,this.multibodyJoints,this.ccdSolver,A,Q)}propagateModifiedBodyPositionsToColliders(){this.bodies.raw.propagateModifiedBodyPositionsToColliders(this.colliders.raw)}get timestep(){return this.integrationParameters.dt}set timestep(A){this.integrationParameters.dt=A}get lengthUnit(){return this.integrationParameters.lengthUnit}set lengthUnit(A){this.integrationParameters.lengthUnit=A}get numSolverIterations(){return this.integrationParameters.numSolverIterations}set numSolverIterations(A){this.integrationParameters.numSolverIterations=A}get numInternalPgsIterations(){return this.integrationParameters.numInternalPgsIterations}set numInternalPgsIterations(A){this.integrationParameters.numInternalPgsIterations=A}get maxCcdSubsteps(){return this.integrationParameters.maxCcdSubsteps}set maxCcdSubsteps(A){this.integrationParameters.maxCcdSubsteps=A}createRigidBody(A){return this.bodies.createRigidBody(this.colliders,A)}createCharacterController(A){let Q=new qh(A,this.integrationParameters,this.broadPhase,this.narrowPhase,this.bodies,this.colliders);return this.characterControllers.add(Q),Q}removeCharacterController(A){this.characterControllers.delete(A),A.free()}createPidController(A,Q,B,Y){let J=new Mh(this.integrationParameters,this.bodies,A,Q,B,Y);return this.pidControllers.add(J),J}removePidController(A){this.pidControllers.delete(A),A.free()}createVehicleController(A){let Q=new zh(A,this.broadPhase,this.narrowPhase,this.bodies,this.colliders);return this.vehicleControllers.add(Q),Q}removeVehicleController(A){this.vehicleControllers.delete(A),A.free()}createCollider(A,Q){let B=Q?Q.handle:void 0;return this.colliders.createCollider(this.bodies,A,B)}createImpulseJoint(A,Q,B,Y){return this.impulseJoints.createJoint(this.bodies,A,Q.handle,B.handle,Y)}createMultibodyJoint(A,Q,B,Y){return this.multibodyJoints.createJoint(A,Q.handle,B.handle,Y)}getRigidBody(A){return this.bodies.get(A)}getCollider(A){return this.colliders.get(A)}getImpulseJoint(A){return this.impulseJoints.get(A)}getMultibodyJoint(A){return this.multibodyJoints.get(A)}removeRigidBody(A){this.bodies&&this.bodies.remove(A.handle,this.islands,this.colliders,this.impulseJoints,this.multibodyJoints)}removeCollider(A,Q){this.colliders&&this.colliders.remove(A.handle,this.islands,this.bodies,Q)}removeImpulseJoint(A,Q){this.impulseJoints&&this.impulseJoints.remove(A.handle,Q)}removeMultibodyJoint(A,Q){this.impulseJoints&&this.multibodyJoints.remove(A.handle,Q)}forEachCollider(A){this.colliders.forEach(A)}forEachRigidBody(A){this.bodies.forEach(A)}forEachActiveRigidBody(A){this.bodies.forEachActiveRigidBody(this.islands,A)}castRay(A,Q,B,Y,J,C,X,G){return this.broadPhase.castRay(this.narrowPhase,this.bodies,this.colliders,A,Q,B,Y,J,C?C.handle:null,X?X.handle:null,this.colliders.castClosure(G))}castRayAndGetNormal(A,Q,B,Y,J,C,X,G){return this.broadPhase.castRayAndGetNormal(this.narrowPhase,this.bodies,this.colliders,A,Q,B,Y,J,C?C.handle:null,X?X.handle:null,this.colliders.castClosure(G))}intersectionsWithRay(A,Q,B,Y,J,C,X,G,F){this.broadPhase.intersectionsWithRay(this.narrowPhase,this.bodies,this.colliders,A,Q,B,Y,J,C,X?X.handle:null,G?G.handle:null,this.colliders.castClosure(F))}intersectionWithShape(A,Q,B,Y,J,C,X,G){let F=this.broadPhase.intersectionWithShape(this.narrowPhase,this.bodies,this.colliders,A,Q,B,Y,J,C?C.handle:null,X?X.handle:null,this.colliders.castClosure(G));return F!=null?this.colliders.get(F):null}projectPoint(A,Q,B,Y,J,C,X){return this.broadPhase.projectPoint(this.narrowPhase,this.bodies,this.colliders,A,Q,B,Y,J?J.handle:null,C?C.handle:null,this.colliders.castClosure(X))}projectPointAndGetFeature(A,Q,B,Y,J,C){return this.broadPhase.projectPointAndGetFeature(this.narrowPhase,this.bodies,this.colliders,A,Q,B,Y?Y.handle:null,J?J.handle:null,this.colliders.castClosure(C))}intersectionsWithPoint(A,Q,B,Y,J,C,X){this.broadPhase.intersectionsWithPoint(this.narrowPhase,this.bodies,this.colliders,A,this.colliders.castClosure(Q),B,Y,J?J.handle:null,C?C.handle:null,this.colliders.castClosure(X))}castShape(A,Q,B,Y,J,C,X,G,F,W,Z,U){return this.broadPhase.castShape(this.narrowPhase,this.bodies,this.colliders,A,Q,B,Y,J,C,X,G,F,W?W.handle:null,Z?Z.handle:null,this.colliders.castClosure(U))}intersectionsWithShape(A,Q,B,Y,J,C,X,G,F){this.broadPhase.intersectionsWithShape(this.narrowPhase,this.bodies,this.colliders,A,Q,B,this.colliders.castClosure(Y),J,C,X?X.handle:null,G?G.handle:null,this.colliders.castClosure(F))}collidersWithAabbIntersectingAabb(A,Q,B){this.broadPhase.collidersWithAabbIntersectingAabb(this.narrowPhase,this.bodies,this.colliders,A,Q,this.colliders.castClosure(B))}contactPairsWith(A,Q){this.narrowPhase.contactPairsWith(A.handle,this.colliders.castClosure(Q))}intersectionPairsWith(A,Q){this.narrowPhase.intersectionPairsWith(A.handle,this.colliders.castClosure(Q))}contactPair(A,Q,B){this.narrowPhase.contactPair(A.handle,Q.handle,B)}intersectionPair(A,Q){return this.narrowPhase.intersectionPair(A.handle,Q.handle)}set profilerEnabled(A){this.physicsPipeline.raw.set_profiler_enabled(A)}get profilerEnabled(){return this.physicsPipeline.raw.is_profiler_enabled()}timingStep(){return this.physicsPipeline.raw.timing_step()}timingCollisionDetection(){return this.physicsPipeline.raw.timing_collision_detection()}timingBroadPhase(){return this.physicsPipeline.raw.timing_broad_phase()}timingNarrowPhase(){return this.physicsPipeline.raw.timing_narrow_phase()}timingSolver(){return this.physicsPipeline.raw.timing_solver()}timingVelocityAssembly(){return this.physicsPipeline.raw.timing_velocity_assembly()}timingVelocityResolution(){return this.physicsPipeline.raw.timing_velocity_resolution()}timingVelocityUpdate(){return this.physicsPipeline.raw.timing_velocity_update()}timingVelocityWriteback(){return this.physicsPipeline.raw.timing_velocity_writeback()}timingCcd(){return this.physicsPipeline.raw.timing_ccd()}timingCcdToiComputation(){return this.physicsPipeline.raw.timing_ccd_toi_computation()}timingCcdBroadPhase(){return this.physicsPipeline.raw.timing_ccd_broad_phase()}timingCcdNarrowPhase(){return this.physicsPipeline.raw.timing_ccd_narrow_phase()}timingCcdSolver(){return this.physicsPipeline.raw.timing_ccd_solver()}timingIslandConstruction(){return this.physicsPipeline.raw.timing_island_construction()}timingUserChanges(){return this.physicsPipeline.raw.timing_user_changes()}}(function(A){A[A.NONE=0]="NONE",A[A.COLLISION_EVENTS=1]="COLLISION_EVENTS",A[A.CONTACT_FORCE_EVENTS=2]="CONTACT_FORCE_EVENTS"})(c2||(c2={}));class Rh{free(){this.raw&&this.raw.free(),this.raw=void 0}collider1(){return this.raw.collider1()}collider2(){return this.raw.collider2()}totalForce(){return a.fromRaw(this.raw.total_force())}totalForceMagnitude(){return this.raw.total_force_magnitude()}maxForceDirection(){return a.fromRaw(this.raw.max_force_direction())}maxForceMagnitude(){return this.raw.max_force_magnitude()}}class rXA{constructor(A,Q){this.raw=Q||new ig(A)}free(){this.raw&&this.raw.free(),this.raw=void 0}drainCollisionEvents(A){this.raw.drainCollisionEvents(A)}drainContactForceEvents(A){let Q=new Rh;this.raw.drainContactForceEvents((B)=>{Q.raw=B,A(Q),Q.free()})}clear(){this.raw.clear()}}(function(A){A[A.NONE=0]="NONE",A[A.FILTER_CONTACT_PAIRS=1]="FILTER_CONTACT_PAIRS",A[A.FILTER_INTERSECTION_PAIRS=2]="FILTER_INTERSECTION_PAIRS"})(l2||(l2={})),function(A){A[A.EMPTY=0]="EMPTY",A[A.COMPUTE_IMPULSE=1]="COMPUTE_IMPULSE"}(xg||(xg={})),function(A){A[A.EXCLUDE_FIXED=1]="EXCLUDE_FIXED",A[A.EXCLUDE_KINEMATIC=2]="EXCLUDE_KINEMATIC",A[A.EXCLUDE_DYNAMIC=4]="EXCLUDE_DYNAMIC",A[A.EXCLUDE_SENSORS=8]="EXCLUDE_SENSORS",A[A.EXCLUDE_SOLIDS=16]="EXCLUDE_SOLIDS",A[A.ONLY_DYNAMIC=3]="ONLY_DYNAMIC",A[A.ONLY_KINEMATIC=5]="ONLY_KINEMATIC",A[A.ONLY_FIXED=6]="ONLY_FIXED"}(fg||(fg={})),function(A){A[A.DYNAMIC_DYNAMIC=1]="DYNAMIC_DYNAMIC",A[A.DYNAMIC_KINEMATIC=12]="DYNAMIC_KINEMATIC",A[A.DYNAMIC_FIXED=2]="DYNAMIC_FIXED",A[A.KINEMATIC_KINEMATIC=52224]="KINEMATIC_KINEMATIC",A[A.KINEMATIC_FIXED=8704]="KINEMATIC_FIXED",A[A.FIXED_FIXED=32]="FIXED_FIXED",A[A.DEFAULT=15]="DEFAULT",A[A.ALL=60943]="ALL"}(p2||(p2={}));class s2{constructor(A,Q,B,Y){this.colliderSet=A,this.handle=Q,this._parent=B,this._shape=Y}finalizeDeserialization(A){this.handle!=null&&(this._parent=A.get(this.colliderSet.raw.coParent(this.handle)))}ensureShapeIsCached(){this._shape||(this._shape=JY.fromRaw(this.colliderSet.raw,this.handle))}get shape(){return this.ensureShapeIsCached(),this._shape}clearShapeCache(){this._shape=null}isValid(){return this.colliderSet.raw.contains(this.handle)}translation(){return a.fromRaw(this.colliderSet.raw.coTranslation(this.handle))}translationWrtParent(){return a.fromRaw(this.colliderSet.raw.coTranslationWrtParent(this.handle))}rotation(){return hQ.fromRaw(this.colliderSet.raw.coRotation(this.handle))}rotationWrtParent(){return hQ.fromRaw(this.colliderSet.raw.coRotationWrtParent(this.handle))}isSensor(){return this.colliderSet.raw.coIsSensor(this.handle)}setSensor(A){this.colliderSet.raw.coSetSensor(this.handle,A)}setShape(A){let Q=A.intoRaw();this.colliderSet.raw.coSetShape(this.handle,Q),Q.free(),this._shape=A}setEnabled(A){this.colliderSet.raw.coSetEnabled(this.handle,A)}isEnabled(){return this.colliderSet.raw.coIsEnabled(this.handle)}setRestitution(A){this.colliderSet.raw.coSetRestitution(this.handle,A)}setFriction(A){this.colliderSet.raw.coSetFriction(this.handle,A)}frictionCombineRule(){return this.colliderSet.raw.coFrictionCombineRule(this.handle)}setFrictionCombineRule(A){this.colliderSet.raw.coSetFrictionCombineRule(this.handle,A)}restitutionCombineRule(){return this.colliderSet.raw.coRestitutionCombineRule(this.handle)}setRestitutionCombineRule(A){this.colliderSet.raw.coSetRestitutionCombineRule(this.handle,A)}setCollisionGroups(A){this.colliderSet.raw.coSetCollisionGroups(this.handle,A)}setSolverGroups(A){this.colliderSet.raw.coSetSolverGroups(this.handle,A)}contactSkin(){return this.colliderSet.raw.coContactSkin(this.handle)}setContactSkin(A){return this.colliderSet.raw.coSetContactSkin(this.handle,A)}activeHooks(){return this.colliderSet.raw.coActiveHooks(this.handle)}setActiveHooks(A){this.colliderSet.raw.coSetActiveHooks(this.handle,A)}activeEvents(){return this.colliderSet.raw.coActiveEvents(this.handle)}setActiveEvents(A){this.colliderSet.raw.coSetActiveEvents(this.handle,A)}activeCollisionTypes(){return this.colliderSet.raw.coActiveCollisionTypes(this.handle)}setContactForceEventThreshold(A){return this.colliderSet.raw.coSetContactForceEventThreshold(this.handle,A)}contactForceEventThreshold(){return this.colliderSet.raw.coContactForceEventThreshold(this.handle)}setActiveCollisionTypes(A){this.colliderSet.raw.coSetActiveCollisionTypes(this.handle,A)}setDensity(A){this.colliderSet.raw.coSetDensity(this.handle,A)}setMass(A){this.colliderSet.raw.coSetMass(this.handle,A)}setMassProperties(A,Q,B,Y){let J=a.intoRaw(Q),C=a.intoRaw(B),X=hQ.intoRaw(Y);this.colliderSet.raw.coSetMassProperties(this.handle,A,J,C,X),J.free(),C.free(),X.free()}setTranslation(A){this.colliderSet.raw.coSetTranslation(this.handle,A.x,A.y,A.z)}setTranslationWrtParent(A){this.colliderSet.raw.coSetTranslationWrtParent(this.handle,A.x,A.y,A.z)}setRotation(A){this.colliderSet.raw.coSetRotation(this.handle,A.x,A.y,A.z,A.w)}setRotationWrtParent(A){this.colliderSet.raw.coSetRotationWrtParent(this.handle,A.x,A.y,A.z,A.w)}shapeType(){return this.colliderSet.raw.coShapeType(this.handle)}halfExtents(){return a.fromRaw(this.colliderSet.raw.coHalfExtents(this.handle))}setHalfExtents(A){let Q=a.intoRaw(A);this.colliderSet.raw.coSetHalfExtents(this.handle,Q)}radius(){return this.colliderSet.raw.coRadius(this.handle)}setRadius(A){this.colliderSet.raw.coSetRadius(this.handle,A)}roundRadius(){return this.colliderSet.raw.coRoundRadius(this.handle)}setRoundRadius(A){this.colliderSet.raw.coSetRoundRadius(this.handle,A)}halfHeight(){return this.colliderSet.raw.coHalfHeight(this.handle)}setHalfHeight(A){this.colliderSet.raw.coSetHalfHeight(this.handle,A)}setVoxel(A,Q,B,Y){this.colliderSet.raw.coSetVoxel(this.handle,A,Q,B,Y),this._shape=null}propagateVoxelChange(A,Q,B,Y,J,C,X){this.colliderSet.raw.coPropagateVoxelChange(this.handle,A.handle,Q,B,Y,J,C,X),this._shape=null}combineVoxelStates(A,Q,B,Y){this.colliderSet.raw.coCombineVoxelStates(this.handle,A.handle,Q,B,Y),this._shape=null}vertices(){return this.colliderSet.raw.coVertices(this.handle)}indices(){return this.colliderSet.raw.coIndices(this.handle)}heightfieldHeights(){return this.colliderSet.raw.coHeightfieldHeights(this.handle)}heightfieldScale(){let A=this.colliderSet.raw.coHeightfieldScale(this.handle);return a.fromRaw(A)}heightfieldNRows(){return this.colliderSet.raw.coHeightfieldNRows(this.handle)}heightfieldNCols(){return this.colliderSet.raw.coHeightfieldNCols(this.handle)}parent(){return this._parent}friction(){return this.colliderSet.raw.coFriction(this.handle)}restitution(){return this.colliderSet.raw.coRestitution(this.handle)}density(){return this.colliderSet.raw.coDensity(this.handle)}mass(){return this.colliderSet.raw.coMass(this.handle)}volume(){return this.colliderSet.raw.coVolume(this.handle)}collisionGroups(){return this.colliderSet.raw.coCollisionGroups(this.handle)}solverGroups(){return this.colliderSet.raw.coSolverGroups(this.handle)}containsPoint(A){let Q=a.intoRaw(A),B=this.colliderSet.raw.coContainsPoint(this.handle,Q);return Q.free(),B}projectPoint(A,Q){let B=a.intoRaw(A),Y=UH.fromRaw(this.colliderSet.raw.coProjectPoint(this.handle,B,Q));return B.free(),Y}intersectsRay(A,Q){let B=a.intoRaw(A.origin),Y=a.intoRaw(A.dir),J=this.colliderSet.raw.coIntersectsRay(this.handle,B,Y,Q);return B.free(),Y.free(),J}castShape(A,Q,B,Y,J,C,X,G){let F=a.intoRaw(A),W=a.intoRaw(B),Z=hQ.intoRaw(Y),U=a.intoRaw(J),$=Q.intoRaw(),E=jU.fromRaw(this.colliderSet,this.colliderSet.raw.coCastShape(this.handle,F,$,W,Z,U,C,X,G));return F.free(),W.free(),Z.free(),U.free(),$.free(),E}castCollider(A,Q,B,Y,J,C){let X=a.intoRaw(A),G=a.intoRaw(B),F=EH.fromRaw(this.colliderSet,this.colliderSet.raw.coCastCollider(this.handle,X,Q.handle,G,Y,J,C));return X.free(),G.free(),F}intersectsShape(A,Q,B){let Y=a.intoRaw(Q),J=hQ.intoRaw(B),C=A.intoRaw(),X=this.colliderSet.raw.coIntersectsShape(this.handle,C,Y,J);return Y.free(),J.free(),C.free(),X}contactShape(A,Q,B,Y){let J=a.intoRaw(Q),C=hQ.intoRaw(B),X=A.intoRaw(),G=wU.fromRaw(this.colliderSet.raw.coContactShape(this.handle,X,J,C,Y));return J.free(),C.free(),X.free(),G}contactCollider(A,Q){return wU.fromRaw(this.colliderSet.raw.coContactCollider(this.handle,A.handle,Q))}castRay(A,Q,B){let Y=a.intoRaw(A.origin),J=a.intoRaw(A.dir),C=this.colliderSet.raw.coCastRay(this.handle,Y,J,Q,B);return Y.free(),J.free(),C}castRayAndGetNormal(A,Q,B){let Y=a.intoRaw(A.origin),J=a.intoRaw(A.dir),C=$H.fromRaw(this.colliderSet.raw.coCastRayAndGetNormal(this.handle,Y,J,Q,B));return Y.free(),J.free(),C}}(function(A){A[A.Density=0]="Density",A[A.Mass=1]="Mass",A[A.MassProps=2]="MassProps"})(dW||(dW={}));class BY{constructor(A){this.enabled=!0,this.shape=A,this.massPropsMode=dW.Density,this.density=1,this.friction=0.5,this.restitution=0,this.rotation=hQ.identity(),this.translation=a.zeros(),this.isSensor=!1,this.collisionGroups=4294967295,this.solverGroups=4294967295,this.frictionCombineRule=CH.Average,this.restitutionCombineRule=CH.Average,this.activeCollisionTypes=p2.DEFAULT,this.activeEvents=c2.NONE,this.activeHooks=l2.NONE,this.mass=0,this.centerOfMass=a.zeros(),this.contactForceEventThreshold=0,this.contactSkin=0,this.principalAngularInertia=a.zeros(),this.angularInertiaLocalFrame=hQ.identity()}static ball(A){let Q=new J3(A);return new BY(Q)}static capsule(A,Q){let B=new G3(A,Q);return new BY(B)}static segment(A,Q){let B=new F3(A,Q);return new BY(B)}static triangle(A,Q,B){let Y=new W3(A,Q,B);return new BY(Y)}static roundTriangle(A,Q,B,Y){let J=new Z3(A,Q,B,Y);return new BY(J)}static polyline(A,Q){let B=new $3(A,Q);return new BY(B)}static voxels(A,Q){let B=new U3(A,Q);return new BY(B)}static trimesh(A,Q,B){let Y=new E3(A,Q,B);return new BY(Y)}static cuboid(A,Q,B){let Y=new C3(A,Q,B);return new BY(Y)}static roundCuboid(A,Q,B,Y){let J=new X3(A,Q,B,Y);return new BY(J)}static heightfield(A,Q,B,Y,J){let C=new K3(A,Q,B,Y,J);return new BY(C)}static cylinder(A,Q){let B=new V3(A,Q);return new BY(B)}static roundCylinder(A,Q,B){let Y=new I3(A,Q,B);return new BY(Y)}static cone(A,Q){let B=new H3(A,Q);return new BY(B)}static roundCone(A,Q,B){let Y=new D3(A,Q,B);return new BY(Y)}static convexHull(A){let Q=new FH(A,null);return new BY(Q)}static convexMesh(A,Q){let B=new FH(A,Q);return new BY(B)}static roundConvexHull(A,Q){let B=new WH(A,null,Q);return new BY(B)}static roundConvexMesh(A,Q,B){let Y=new WH(A,Q,B);return new BY(Y)}setTranslation(A,Q,B){if(typeof A!="number"||typeof Q!="number"||typeof B!="number")throw TypeError("The translation components must be numbers.");return this.translation={x:A,y:Q,z:B},this}setRotation(A){return hQ.copy(this.rotation,A),this}setSensor(A){return this.isSensor=A,this}setEnabled(A){return this.enabled=A,this}setContactSkin(A){return this.contactSkin=A,this}setDensity(A){return this.massPropsMode=dW.Density,this.density=A,this}setMass(A){return this.massPropsMode=dW.Mass,this.mass=A,this}setMassProperties(A,Q,B,Y){return this.massPropsMode=dW.MassProps,this.mass=A,a.copy(this.centerOfMass,Q),a.copy(this.principalAngularInertia,B),hQ.copy(this.angularInertiaLocalFrame,Y),this}setRestitution(A){return this.restitution=A,this}setFriction(A){return this.friction=A,this}setFrictionCombineRule(A){return this.frictionCombineRule=A,this}setRestitutionCombineRule(A){return this.restitutionCombineRule=A,this}setCollisionGroups(A){return this.collisionGroups=A,this}setSolverGroups(A){return this.solverGroups=A,this}setActiveHooks(A){return this.activeHooks=A,this}setActiveEvents(A){return this.activeEvents=A,this}setActiveCollisionTypes(A){return this.activeCollisionTypes=A,this}setContactForceEventThreshold(A){return this.contactForceEventThreshold=A,this}}class wh{constructor(A){this.raw=A||new S0,this.map=new ZH,A&&A.forEachColliderHandle((Q)=>{this.map.set(Q,new s2(this,Q,null))})}free(){this.raw&&this.raw.free(),this.raw=void 0,this.map&&this.map.clear(),this.map=void 0}castClosure(A){return(Q)=>A?A(this.get(Q)):void 0}finalizeDeserialization(A){this.map.forEach((Q)=>Q.finalizeDeserialization(A))}createCollider(A,Q,B){let Y=B!=null&&B!=null;if(Y&&isNaN(B))throw Error("Cannot create a collider with a parent rigid-body handle that is not a number.");let J=Q.shape.intoRaw(),C=a.intoRaw(Q.translation),X=hQ.intoRaw(Q.rotation),G=a.intoRaw(Q.centerOfMass),F=a.intoRaw(Q.principalAngularInertia),W=hQ.intoRaw(Q.angularInertiaLocalFrame),Z=this.raw.createCollider(Q.enabled,J,C,X,Q.massPropsMode,Q.mass,G,F,W,Q.density,Q.friction,Q.restitution,Q.frictionCombineRule,Q.restitutionCombineRule,Q.isSensor,Q.collisionGroups,Q.solverGroups,Q.activeCollisionTypes,Q.activeHooks,Q.activeEvents,Q.contactForceEventThreshold,Q.contactSkin,Y,Y?B:0,A.raw);J.free(),C.free(),X.free(),G.free(),F.free(),W.free();let U=Y?A.get(B):null,$=new s2(this,Z,U,Q.shape);return this.map.set(Z,$),$}remove(A,Q,B,Y){this.raw.remove(A,Q.raw,B.raw,Y),this.unmap(A)}unmap(A){this.map.delete(A)}get(A){return this.map.get(A)}len(){return this.map.len()}contains(A){return this.get(A)!=null}forEach(A){this.map.forEach(A)}getAll(){return this.map.getAll()}}function KaQ(A,Q,B,Y){return new(B||(B=Promise))(function(J,C){function X(W){try{F(Y.next(W))}catch(Z){C(Z)}}function G(W){try{F(Y.throw(W))}catch(Z){C(Z)}}function F(W){var Z;W.done?J(W.value):(Z=W.value,Z instanceof B?Z:new B(function(U){U(Z)})).then(X,G)}F((Y=Y.apply(A,Q||[])).next())})}for(jh={byteLength:function(A){var Q=xXA(A),B=Q[0],Y=Q[1];return 3*(B+Y)/4-Y},toByteArray:function(A){var Q,B,Y=xXA(A),J=Y[0],C=Y[1],X=new bg(function(W,Z,U){return 3*(Z+U)/4-U}(0,J,C)),G=0,F=C>0?J-4:J;for(B=0;B>16&255,X[G++]=Q>>8&255,X[G++]=255&Q;return C===2&&(Q=R9[A.charCodeAt(B)]<<2|R9[A.charCodeAt(B+1)]>>4,X[G++]=255&Q),C===1&&(Q=R9[A.charCodeAt(B)]<<10|R9[A.charCodeAt(B+1)]<<4|R9[A.charCodeAt(B+2)]>>2,X[G++]=Q>>8&255,X[G++]=255&Q),X},fromByteArray:function(A){for(var Q,B=A.length,Y=B%3,J=[],C=16383,X=0,G=B-Y;XG?G:X+C));return Y===1?(Q=A[B-1],J.push(X5[Q>>2]+X5[Q<<4&63]+"==")):Y===2&&(Q=(A[B-2]<<8)+A[B-1],J.push(X5[Q>>10]+X5[Q>>4&63]+X5[Q<<2&63]+"=")),J.join("")}},X5=[],R9=[],bg=typeof Uint8Array<"u"?Uint8Array:Array,QH="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",K7=0,mg=QH.length;K70)throw Error("Invalid string. Length must be a multiple of 4");var B=A.indexOf("=");return B===-1&&(B=Q),[B,B===Q?0:4-B%4]}function VaQ(A,Q,B){for(var Y,J,C=[],X=Q;X>18&63]+X5[J>>12&63]+X5[J>>6&63]+X5[63&J]);return C.join("")}function IaQ(){return KaQ(this,void 0,void 0,function*(){yield nXA(jh.toByteArray("AGFzbQEAAAAB6QykAWACf38AYAN/f38AYAR/f39/AGACf38Bf2ABfwF/YAN/f38Bf2ABfwBgBX9/f39/AGACf3wBf2AGf39/f31/AGAGf39/f39/AGABfwF9YAV/f399fwBgA39/fQBgBX9/f399AGADf3x/AGABfwF8YAR/f39/AX9gDH9/f39/f39/f399fwF/YAZ/f39/f30AYAR/f399AX9gAAF/YAR/f39/AX1gA39/fwF9YAN/f30Bf2ACf38BfGADf39/AX5gAn99AGAGf39/f39/AX9gAn98AX1gA398fQBgBH98f38AYAV/f39/fwF/YAd/f39/f39/AGACf38BfWACf3wBfGAIf39/f39/f38AYAF9AX1gAABgCX9/f39/f39/fwBgBH9+f38Bf2AIf39/f39/f30AYAR/f399AGADf398AGALf39/f39/f399fX8AYAh/f39/fX9/fwBgCX9/f39/fX9/fwBgBX9/fX9/AGAGf3x/f39/AGADf3x/AX9gA398fwF9YAN9fX0Bf2AGf31/f399AGAJf39/f39/fX9/AX9gBX98f39/AGAGf3x9fX19AGAFf3x9fX0AYAN/fX8AYAJ9fQF/YAF8AX9gBH99f38AYAt/f39/f39/f31/fwBgCn9/f39/f31/f38AYAZ/f319f38AYAt/f39/f39/fX9/fwBgCH9/f399fX9/AGAGf319f399AGAMf39/f31/f39/fX9/AGAPf39/f39/f39/fH98f3x/AGAPf39/f39/fX9/fH98f3x/AX9gBn9/f399fQBgBn99f3x/fwF/YAZ/fX98f38AYAV/fX1/fwBgAn5/AX9gBX9/fHx/AXxgBn9/fX9/fwBgA398fAF/YAR/fH1/AGAFf3x/fX0AYAJ/fABgAX0Bf2AEfX19fQF/YA5/f39/f39/f39/f39/fwBgB39/f39/f30AYA9/f39/f39/f39/f399fX8AYAt/f399f399f319fwBgCX99f39/f39/fwF/YAd/f39/f39/AX1gCn9/f39/f399fX8AYAt/f39/f39/f319fwF/YBJ/f39/f39/f39/f399f319fX0AYA9/f39/f39/f39/f39/f38AYAp/f39/f39/f39/AX9gC39/f39/f39/f39/AGAJf39/f39/fX9/AGASf39/f39/f399fX9/fH98f3x/AX9gB39/f39/f30Bf2Abf39/f319f39/f39/f39/f39/fX1/f399f39/AXxgEH9/f39/f31/f398f3x/fH8AYAh/fX9/f39/fwBgCH9/f39/e39/AGAbf39/f39/f31/f399fX1/f39/f39/f319f3x/AGAKf31/f39/f39/fwBgDH9/f399f39/f39/fwBgBn98f39/fQF/YAd/f39/f31/AX9gCn98f39/f399fX8Bf2AMf39/f39/f39/f39/AGANf39/f39/f3x/fH98fwBgC39/f399f39/f39/AGAHf39/f399fwF9YAh/fX99f31/fwBgBn9/f399fQF/YA1/f39/f39/fH98f3x/AX9gDH9/f39/f3x/fH98fwF/YAZ/f39/f30Bf2ANf31/f39/fH9/fH98fwBgBH9/fX8AYAl/f39/f39/f38BfWASf39/f39/f39/f39/f39/f39/AGAGf3x/f31/AX9gBX98f39/AX9gCX99f39/f398fwBgBn99f39/fwBgCn9/f39/f39/f38AYAd/fH1/f39/AGAGf3x/f31/AX1gAn9+AX9gBn98fX9/fwBgCH98f3x/fX1/AX9gBX98f399AX9gDX9/f39/f399fX19fX0AYAR/fH9/AX9gBX19fX9/AX9gA31/fwF/YAl/f39/f39+fn4AYAd/f39/f39/AX9gDX9/f39/f39/f39/f38AYAR/fHx9AX9gA398fwF8YAZ/fH99fX0AYAd/fH99fX19AGACf34AYAh/f39/f39/fwF/YAd/fH19fX1/AGAJf3x8f39/f39/AGAFf39/f30Bf2AGf3x9fX1/AGAGf3x8f39/AGAEf39+fwBgA39/fgF/YAV/fn9+fwBgA39+fgBgBH19fX8Bf2ADf399AX1gAn19AGAEf319fwBgBn9/fX19fQBgA319fwF/YAV/f3x/fwBgBX9/fn9/AGAEf35/fwBgAn19AX0CqwkgA3diZxVfX3diaW5kZ2VuX251bWJlcl9uZXcAOwN3YmcWX193YmluZGdlbl9ib29sZWFuX2dldAAEA3diZxpfX3diaW5kZ2VuX29iamVjdF9kcm9wX3JlZgAGA3diZxVfX3diaW5kZ2VuX251bWJlcl9nZXQAAAN3YmcWX193YmluZGdlbl9pc19mdW5jdGlvbgAEA3diZyRfX3diZ19yYXdyYXljb2xsaWRlcmludGVyc2VjdGlvbl9uZXcABAN3YmceX193YmdfcmF3Y29udGFjdGZvcmNlZXZlbnRfbmV3AAQDd2JnIl9fd2JnX3BlcmZvcm1hbmNlXzdhM2ZmZDBiMTdmNjYzYWQABAN3YmcXX193YmluZGdlbl9pc191bmRlZmluZWQABAN3YmcaX193Ymdfbm93XzJjOTVjOWRlMDEyOTMxNzMAEAN3YmcbX193YmluZGdlbl9vYmplY3RfY2xvbmVfcmVmAAQDd2JnIF9fd2JnX25ld25vYXJnc18xMDVlZDQ3MTQ3NWFhZjUwAAMDd2JnG19fd2JnX2NhbGxfNjcyYTRkMjE2MzRkNGEyNAADA3diZxtfX3diZ19jYWxsXzdjY2NkZDY5ZTA3OTFhZTIABQN3YmcbX193YmdfY2FsbF84MzNiZWQ1NzcwZWEyMDQxABEDd2JnG19fd2JnX2NhbGxfYjhhZGM4YjFkMGEwZDhlYgAgA3diZxtfX3diZ19iaW5kX2M4MzU5YjFjYmEwNTgxNjgAEQN3YmcdX193YmdfYnVmZmVyXzYwOWNjM2VlZTUxZWQxNTgABAN3YmcyX193Ymdfc3RhdGljX2FjY2Vzc29yX0dMT0JBTF9USElTXzU2NTc4YmU3ZTlmODMyYjAAFQN3YmcrX193Ymdfc3RhdGljX2FjY2Vzc29yX1NFTEZfMzdjNWQ0MThlNGJmNTgxOQAVA3diZy1fX3diZ19zdGF0aWNfYWNjZXNzb3JfV0lORE9XXzVkZTM3MDQzYTkxYTljNDAAFQN3YmctX193Ymdfc3RhdGljX2FjY2Vzc29yX0dMT0JBTF84OGE5MDJkMTNhNTU3ZDA3ABUDd2JnMV9fd2JnX25ld3dpdGhieXRlb2Zmc2V0YW5kbGVuZ3RoX2Q5N2U2MzdlYmUxNDVhOWEABQN3YmcaX193YmdfbmV3X2ExMjAwMmE3ZjkxYzc1YmUABAN3YmcaX193Ymdfc2V0XzY1NTk1YmRkODY4YjMwMDkAAQN3YmcdX193YmdfbGVuZ3RoX2E0NDYxOTNkYzIyYzEyZjgABAN3YmcxX193YmdfbmV3d2l0aGJ5dGVvZmZzZXRhbmRsZW5ndGhfZTZiN2U2OWFjZDRjNzM1NAAFA3diZxpfX3di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d2tpbmVtYXRpY2NoYXJhY3RlcmNvbnRyb2xsZXJfYXV0b3N0ZXBNaW5XaWR0aACnCz1yYXdraW5lbWF0aWNjaGFyYWN0ZXJjb250cm9sbGVyX2F1dG9zdGVwSW5jbHVkZXNEeW5hbWljQm9kaWVzAJgLL3Jhd2tpbmVtYXRpY2NoYXJhY3RlcmNvbnRyb2xsZXJfYXV0b3N0ZXBFbmFibGVkANgLLnJhd2tpbmVtYXRpY2NoYXJhY3RlcmNvbnRyb2xsZXJfZW5hYmxlQXV0b3N0ZXAAiAsvcmF3a2luZW1hdGljY2hhcmFjdGVyY29udHJvbGxlcl9kaXNhYmxlQXV0b3N0ZXAAlAwycmF3a2luZW1hdGljY2hhcmFjdGVyY29udHJvbGxlcl9tYXhTbG9wZUNsaW1iQW5nbGUA6Qs1cmF3a2luZW1hdGljY2hhcmFjdGVyY29udHJvbGxlcl9zZXRNYXhTbG9wZUNsaW1iQW5nbGUAlQwycmF3a2luZW1hdGljY2hhcmFjdGVyY29udHJvbGxlcl9taW5TbG9wZVNsaWRlQW5nbGUA6gs1cmF3a2luZW1hdGljY2hhcmFjdGVyY29udHJvbGxlcl9zZXRNaW5TbG9wZVNsaWRlQW5nbGUAlgw0cmF3a2luZW1hdGljY2hhcmFjdGVyY29udHJvbGxlcl9zbmFwVG9Hcm91bmREaXN0YW5jZQCoCzJyYXdraW5lbWF0aWNjaGFyYWN0ZXJjb250cm9sbGVyX2VuYWJsZVNuYXBUb0dyb3VuZADrCzNyYXdraW5lbWF0aWNjaGFyYWN0ZXJjb250cm9sbGVyX2Rpc2FibGVTbmFwVG9Hcm91bmQAlwwzcmF3a2luZW1hdGljY2hhcmFjdGVyY29udHJvbGxlcl9zbmFwVG9Hcm91bmRFbmFibGVkANkLN3Jhd2tpbmVtYXRpY2NoYXJhY3RlcmNvbnRyb2xsZXJfY29tcHV0ZUNvbGxpZGVyTW92ZW1lbnQAwgIwcmF3a2luZW1hdGljY2hhcmFjdGVyY29udHJvbGxlcl9jb21wdXRlZE1vdmVtZW50AM0IMHJhd2tpbmVtYXRpY2NoYXJhY3RlcmNvbnRyb2xsZXJfY29tcHV0ZWRHcm91bmRlZADsCzVyYXdraW5lbWF0aWNjaGFyYWN0ZXJjb250cm9sbGVyX251bUNvbXB1dGVkQ29sbGlzaW9ucwDtCzFyYXdraW5lbWF0aWNjaGFyYWN0ZXJjb250cm9sbGVyX2NvbXB1dGVkQ29sbGlzaW9uAMkGIF9fd2JnX3Jhd2NoYXJhY3RlcmNvbGxpc2lvbl9mcmVlAJ0JGXJhd2NoYXJhY3RlcmNvbGxpc2lvbl9uZXcAtQsccmF3Y2hhcmFjdGVyY29sbGlzaW9uX2hhbmRsZQDuCy1yYXdjaGFyYWN0ZXJjb2xsaXNpb25fdHJhbnNsYXRpb25EZWx0YUFwcGxpZWQAzggvcmF3Y2hhcmFjdGVyY29sbGlzaW9uX3RyYW5zbGF0aW9uRGVsdGFSZW1haW5pbmcAzwgZcmF3Y2hhcmFjdGVyY29sbGlzaW9uX3RvaQDvCyNyYXdjaGFyYWN0ZXJjb2xsaXNpb25fd29ybGRXaXRuZXNzMQDQCCNyYXdjaGFyYWN0ZXJjb2xsaXNpb25fd29ybGRXaXRuZXNzMgDLBSJyYXdjaGFyYWN0ZXJjb2xsaXNpb25fd29ybGROb3JtYWwxANEIInJhd2NoYXJhY3RlcmNvbGxpc2lvbl93b3JsZE5vcm1hbDIAhAYbX193YmdfcmF3cGlkY29udHJvbGxlcl9mcmVlAJ4JFHJhd3BpZGNvbnRyb2xsZXJfbmV3AMEKF3Jhd3BpZGNvbnRyb2xsZXJfc2V0X2twAKUIF3Jhd3BpZGNvbnRyb2xsZXJfc2V0X2tpAKYIF3Jhd3BpZGNvbnRyb2xsZXJfc2V0X2tkAKcIHnJhd3BpZGNvbnRyb2xsZXJfc2V0X2F4ZXNfbWFzawC2CyByYXdwaWRjb250cm9sbGVyX3Jlc2V0X2ludGVncmFscwDdCShyYXdwaWRjb250cm9sbGVyX2FwcGx5X2xpbmVhcl9jb3JyZWN0aW9uAKwDKXJhd3BpZGNvbnRyb2xsZXJfYXBwbHlfYW5ndWxhcl9jb3JyZWN0aW9uAK0DInJhd3BpZGNvbnRyb2xsZXJfbGluZWFyX2NvcnJlY3Rpb24AhAMjcmF3cGlkY29udHJvbGxlcl9hbmd1bGFyX2NvcnJlY3Rpb24AhQMtX193YmdfcmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9mcmVlAOMGJnJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfbmV3ALELOHJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfY3VycmVudF92ZWhpY2xlX3NwZWVkAPALKnJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfY2hhc3NpcwDxCzByYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX2luZGV4X3VwX2F4aXMA8gs0cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9zZXRfaW5kZXhfdXBfYXhpcwCYDDVyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX2luZGV4X2ZvcndhcmRfYXhpcwDzCzlyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3NldF9pbmRleF9mb3J3YXJkX2F4aXMAmQwscmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9hZGRfd2hlZWwA1AMtcmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9udW1fd2hlZWxzAPQLMXJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfdXBkYXRlX3ZlaGljbGUAiANEcmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9jaGFzc2lzX2Nvbm5lY3Rpb25fcG9pbnRfY3MA9AZIcmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9zZXRfd2hlZWxfY2hhc3Npc19jb25uZWN0aW9uX3BvaW50X2NzAM0FP3Jhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfd2hlZWxfc3VzcGVuc2lvbl9yZXN0X2xlbmd0aACpCkNyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3NldF93aGVlbF9zdXNwZW5zaW9uX3Jlc3RfbGVuZ3RoAPwIPnJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfd2hlZWxfbWF4X3N1c3BlbnNpb25fdHJhdmVsAKoKQnJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfc2V0X3doZWVsX21heF9zdXNwZW5zaW9uX3RyYXZlbAD9CC9yYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3doZWVsX3JhZGl1cwCrCjNyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3NldF93aGVlbF9yYWRpdXMA/gg9cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9zdXNwZW5zaW9uX3N0aWZmbmVzcwCsCkFyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3NldF93aGVlbF9zdXNwZW5zaW9uX3N0aWZmbmVzcwD/CD9yYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3doZWVsX3N1c3BlbnNpb25fY29tcHJlc3Npb24ArQpDcmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9zZXRfd2hlZWxfc3VzcGVuc2lvbl9jb21wcmVzc2lvbgCACT5yYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3doZWVsX3N1c3BlbnNpb25fcmVsYXhhdGlvbgCuCkJyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3NldF93aGVlbF9zdXNwZW5zaW9uX3JlbGF4YXRpb24AgQk9cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9tYXhfc3VzcGVuc2lvbl9mb3JjZQCvCkFyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3NldF93aGVlbF9tYXhfc3VzcGVuc2lvbl9mb3JjZQCCCS5yYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3doZWVsX2JyYWtlALAKMnJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfc2V0X3doZWVsX2JyYWtlAIMJMXJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfd2hlZWxfc3RlZXJpbmcAsQo1cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9zZXRfd2hlZWxfc3RlZXJpbmcAhAk1cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9lbmdpbmVfZm9yY2UAsgo5cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9zZXRfd2hlZWxfZW5naW5lX2ZvcmNlAIUJNXJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfd2hlZWxfZGlyZWN0aW9uX2NzAPUGOXJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfc2V0X3doZWVsX2RpcmVjdGlvbl9jcwDOBTByYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3doZWVsX2F4bGVfY3MA9gY0cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9zZXRfd2hlZWxfYXhsZV9jcwDPBTZyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3doZWVsX2ZyaWN0aW9uX3NsaXAAswo6cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9zZXRfd2hlZWxfZnJpY3Rpb25fc2xpcACGCUByYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3doZWVsX3NpZGVfZnJpY3Rpb25fc3RpZmZuZXNzALQKRHJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfc2V0X3doZWVsX3NpZGVfZnJpY3Rpb25fc3RpZmZuZXNzAIcJMXJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfd2hlZWxfcm90YXRpb24AtQo4cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9mb3J3YXJkX2ltcHVsc2UAtgo1cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9zaWRlX2ltcHVsc2UAtwo5cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9zdXNwZW5zaW9uX2ZvcmNlALgKOnJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfd2hlZWxfY29udGFjdF9ub3JtYWxfd3MA9wY5cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9jb250YWN0X3BvaW50X3dzAPgGOnJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfd2hlZWxfc3VzcGVuc2lvbl9sZW5ndGgAuQo2cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9oYXJkX3BvaW50X3dzAPkGNnJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfd2hlZWxfaXNfaW5fY29udGFjdADCCjZyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3doZWVsX2dyb3VuZF9vYmplY3QAmQkXX193YmdfcmF3Y2Nkc29sdmVyX2ZyZWUAnwkccmF3aW1wdWxzZWpvaW50c2V0X2pvaW50VHlwZQCEByNyYXdpbXB1bHNlam9pbnRzZXRfam9pbnRCb2R5SGFuZGxlMQDhByNyYXdpbXB1bHNlam9pbnRzZXRfam9pbnRCb2R5SGFuZGxlMgDiBx9yYXdpbXB1bHNlam9pbnRzZXRfam9pbnRGcmFtZVgxANsGH3Jhd2ltcHVsc2Vqb2ludHNldF9qb2ludEZyYW1lWDIA3AYfcmF3aW1wdWxzZWpvaW50c2V0X2pvaW50QW5jaG9yMQCFBh9yYXdpbXB1bHNlam9pbnRzZXRfam9pbnRBbmNob3IyAIYGInJhd2ltcHVsc2Vqb2ludHNldF9qb2ludFNldEFuY2hvcjEA0gUicmF3aW1wdWxzZWpvaW50c2V0X2pvaW50U2V0QW5jaG9yMgDTBSdyYXdpbXB1bHNlam9pbnRzZXRfam9pbnRDb250YWN0c0VuYWJsZWQA4wcqcmF3aW1wdWxzZWpvaW50c2V0X2pvaW50U2V0Q29udGFjdHNFbmFibGVkALgIJXJhd2ltcHVsc2Vqb2ludHNldF9qb2ludExpbWl0c0VuYWJsZWQA/AYhcmF3aW1wdWxzZWpvaW50c2V0X2pvaW50TGltaXRzTWluAKIHIXJhd2ltcHVsc2Vqb2ludHNldF9qb2ludExpbWl0c01heACjByFyYXdpbXB1bHNlam9pbnRzZXRfam9pbnRTZXRMaW1pdHMAtQcrcmF3aW1wdWxzZWpvaW50c2V0X2pvaW50Q29uZmlndXJlTW90b3JNb2RlbACBBy5yYXdpbXB1bHNlam9pbnRzZXRfam9pbnRDb25maWd1cmVNb3RvclZlbG9jaXR5AMMHLnJhd2ltcHVsc2Vqb2ludHNldF9qb2ludENvbmZpZ3VyZU1vdG9yUG9zaXRpb24AxAcmcmF3aW1wdWxzZWpvaW50c2V0X2pvaW50Q29uZmlndXJlTW90b3IAxQcdX193YmdfcmF3aW1wdWxzZWpvaW50c2V0X2ZyZWUAyAcWcmF3aW1wdWxzZWpvaW50c2V0X25ldwDDCh5yYXdpbXB1bHNlam9pbnRzZXRfY3JlYXRlSm9pbnQAtgYZcmF3aW1wdWxzZWpvaW50c2V0X3JlbW92ZQCLCRZyYXdpbXB1bHNlam9pbnRzZXRfbGVuAPILG3Jhd2ltcHVsc2Vqb2ludHNldF9jb250YWlucwDSCCVyYXdpbXB1bHNlam9pbnRzZXRfZm9yRWFjaEpvaW50SGFuZGxlAIcGMnJhd2ltcHVsc2Vqb2ludHNldF9mb3JFYWNoSm9pbnRBdHRhY2hlZFRvUmlnaWRCb2R5AIwJI19fd2JnX3Jhd2ludGVncmF0aW9ucGFyYW1ldGVyc19mcmVlAKAJHHJhd2ludGVncmF0aW9ucGFyYW1ldGVyc19uZXcA0gsbcmF3aW50ZWdyYXRpb25wYXJhbWV0ZXJzX2R0APULJHJhd2ludGVncmF0aW9ucGFyYW1ldGVyc19jb250YWN0X2VycADSCjVyYXdpbnRlZ3JhdGlvbnBhcmFtZXRlcnNfbm9ybWFsaXplZEFsbG93ZWRMaW5lYXJFcnJvcgD2CzVyYXdpbnRlZ3JhdGlvbnBhcmFtZXRlcnNfbm9ybWFsaXplZFByZWRpY3Rpb25EaXN0YW5jZQD3CyxyYXdpbnRlZ3JhdGlvbnBhcmFtZXRlcnNfbnVtU29sdmVySXRlcmF0aW9ucwD4CyZyYXdpbnRlZ3JhdGlvbnBhcmFtZXRlcnNfbWluSXNsYW5kU2l6ZQD5CydyYXdpbnRlZ3JhdGlvbnBhcmFtZXRlcnNfbWF4Q2NkU3Vic3RlcHMA+gsfcmF3aW50ZWdyYXRpb25wYXJhbWV0ZXJzX3NldF9kdACaDDZyYXdpbnRlZ3JhdGlvbnBhcmFtZXRlcnNfc2V0X2NvbnRhY3RfbmF0dXJhbF9mcmVxdWVuY3kAmww5cmF3aW50ZWdyYXRpb25wYXJhbWV0ZXJzX3NldF9ub3JtYWxpemVkQWxsb3dlZExpbmVhckVycm9yAJwMOXJhd2ludGVncmF0aW9ucGFyYW1ldGVyc19zZXRfbm9ybWFsaXplZFByZWRpY3Rpb25EaXN0YW5jZQCdDDByYXdpbnRlZ3JhdGlvbnBhcmFtZXRlcnNfc2V0X251bVNvbHZlckl0ZXJhdGlvbnMAngwqcmF3aW50ZWdyYXRpb25wYXJhbWV0ZXJzX3NldF9taW5Jc2xhbmRTaXplAJ8MK3Jhd2ludGVncmF0aW9ucGFyYW1ldGVyc19zZXRfbWF4Q2NkU3Vic3RlcHMAoAwncmF3aW50ZWdyYXRpb25wYXJhbWV0ZXJzX3NldF9sZW5ndGhVbml0AKEMG19fd2JnX3Jhd2lzbGFuZG1hbmFnZXJfZnJlZQCkBxRyYXdpc2xhbmRtYW5hZ2VyX25ldwDTCy1yYXdpc2xhbmRtYW5hZ2VyX2ZvckVhY2hBY3RpdmVSaWdpZEJvZHlIYW5kbGUAlwYaX193YmdfcmF3Z2VuZXJpY2pvaW50X2ZyZWUAoQkXcmF3Z2VuZXJpY2pvaW50X2dlbmVyaWMAyAIWcmF3Z2VuZXJpY2pvaW50X3NwcmluZwCtBBRyYXdnZW5lcmljam9pbnRfcm9wZQC4BBlyYXdnZW5lcmljam9pbnRfc3BoZXJpY2FsALwEGXJhd2dlbmVyaWNqb2ludF9wcmlzbWF0aWMAtgIVcmF3Z2VuZXJpY2pvaW50X2ZpeGVkALoCGHJhd2dlbmVyaWNqb2ludF9yZXZvbHV0ZQDYAh5yYXdtdWx0aWJvZHlqb2ludHNldF9qb2ludFR5cGUAswYhcmF3bXVsdGlib2R5am9pbnRzZXRfam9pbnRGcmFtZVgxAJMGIXJhd211bHRpYm9keWpvaW50c2V0X2pvaW50RnJhbWVYMgCUBiFyYXdtdWx0aWJvZHlqb2ludHNldF9qb2ludEFuY2hvcjEAwAUhcmF3bXVsdGlib2R5am9pbnRzZXRfam9pbnRBbmNob3IyAMEFKXJhd211bHRpYm9keWpvaW50c2V0X2pvaW50Q29udGFjdHNFbmFibGVkAO8GLHJhd211bHRpYm9keWpvaW50c2V0X2pvaW50U2V0Q29udGFjdHNFbmFibGVkAJwHJ3Jhd211bHRpYm9keWpvaW50c2V0X2pvaW50TGltaXRzRW5hYmxlZACnBiNyYXdtdWx0aWJvZHlqb2ludHNldF9qb2ludExpbWl0c01pbgDDBiNyYXdtdWx0aWJvZHlqb2ludHNldF9qb2ludExpbWl0c01heADEBh9fX3diZ19yYXdtdWx0aWJvZHlqb2ludHNldF9mcmVlAMkHGHJhd211bHRpYm9keWpvaW50c2V0X25ldwDECiByYXdtdWx0aWJvZHlqb2ludHNldF9jcmVhdGVKb2ludAC3BhtyYXdtdWx0aWJvZHlqb2ludHNldF9yZW1vdmUAlAkdcmF3bXVsdGlib2R5am9pbnRzZXRfY29udGFpbnMArAgncmF3bXVsdGlib2R5am9pbnRzZXRfZm9yRWFjaEpvaW50SGFuZGxlAJAJNHJhd211bHRpYm9keWpvaW50c2V0X2ZvckVhY2hKb2ludEF0dGFjaGVkVG9SaWdpZEJvZHkAjQkdcmF3cmlnaWRib2R5c2V0X3JiVHJhbnNsYXRpb24AiAYacmF3cmlnaWRib2R5c2V0X3JiUm90YXRpb24A5QYXcmF3cmlnaWRib2R5c2V0X3JiU2xlZXAA+AgccmF3cmlnaWRib2R5c2V0X3JiSXNTbGVlcGluZwD1BxpyYXdyaWdpZGJvZHlzZXRfcmJJc01vdmluZwCeCCFyYXdyaWdpZGJvZHlzZXRfcmJOZXh0VHJhbnNsYXRpb24AiQYecmF3cmlnaWRib2R5c2V0X3JiTmV4dFJvdGF0aW9uAOYGIHJhd3JpZ2lkYm9keXNldF9yYlNldFRyYW5zbGF0aW9uALMJHXJhd3JpZ2lkYm9keXNldF9yYlNldFJvdGF0aW9uAK0JG3Jhd3JpZ2lkYm9keXNldF9yYlNldExpbnZlbAD8BRtyYXdyaWdpZGJvZHlzZXRfcmJTZXRBbmd2ZWwA/QUtcmF3cmlnaWRib2R5c2V0X3JiU2V0TmV4dEtpbmVtYXRpY1RyYW5zbGF0aW9uAPYHKnJhd3JpZ2lkYm9keXNldF9yYlNldE5leHRLaW5lbWF0aWNSb3RhdGlvbgCjBjZyYXdyaWdpZGJvZHlzZXRfcmJSZWNvbXB1dGVNYXNzUHJvcGVydGllc0Zyb21Db2xsaWRlcnMAlQYjcmF3cmlnaWRib2R5c2V0X3JiU2V0QWRkaXRpb25hbE1hc3MA9wctcmF3cmlnaWRib2R5c2V0X3JiU2V0QWRkaXRpb25hbE1hc3NQcm9wZXJ0aWVzALEDGHJhd3JpZ2lkYm9keXNldF9yYkxpbnZlbACKBhhyYXdyaWdpZGJvZHlzZXRfcmJBbmd2ZWwAiwYhcmF3cmlnaWRib2R5c2V0X3JiVmVsb2NpdHlBdFBvaW50AMIEInJhd3JpZ2lkYm9keXNldF9yYkxvY2tUcmFuc2xhdGlvbnMAtAYocmF3cmlnaWRib2R5c2V0X3JiU2V0RW5hYmxlZFRyYW5zbGF0aW9ucwDCBR9yYXdyaWdpZGJvZHlzZXRfcmJMb2NrUm90YXRpb25zALUGJXJhd3JpZ2lkYm9keXNldF9yYlNldEVuYWJsZWRSb3RhdGlvbnMAwwUgcmF3cmlnaWRib2R5c2V0X3JiRG9taW5hbmNlR3JvdXAA+AcjcmF3cmlnaWRib2R5c2V0X3JiU2V0RG9taW5hbmNlR3JvdXAA1AcbcmF3cmlnaWRib2R5c2V0X3JiRW5hYmxlQ2NkANMIJnJhd3JpZ2lkYm9keXNldF9yYlNldFNvZnRDY2RQcmVkaWN0aW9uAOYIFnJhd3JpZ2lkYm9keXNldF9yYk1hc3MAwAcZcmF3cmlnaWRib2R5c2V0X3JiSW52TWFzcwD5ByJyYXdyaWdpZGJvZHlzZXRfcmJFZmZlY3RpdmVJbnZNYXNzAIwGGnJhd3JpZ2lkYm9keXNldF9yYkxvY2FsQ29tAI0GGnJhd3JpZ2lkYm9keXNldF9yYldvcmxkQ29tAI4GJXJhd3JpZ2lkYm9keXNldF9yYkludlByaW5jaXBhbEluZXJ0aWEAjwYscmF3cmlnaWRib2R5c2V0X3JiUHJpbmNpcGFsSW5lcnRpYUxvY2FsRnJhbWUA5wYicmF3cmlnaWRib2R5c2V0X3JiUHJpbmNpcGFsSW5lcnRpYQC8BipyYXdyaWdpZGJvZHlzZXRfcmJFZmZlY3RpdmVXb3JsZEludkluZXJ0aWEAmAYpcmF3cmlnaWRib2R5c2V0X3JiRWZmZWN0aXZlQW5ndWxhckluZXJ0aWEAvQYYcmF3cmlnaWRib2R5c2V0X3JiV2FrZVVwAM8HHnJhd3JpZ2lkYm9keXNldF9yYklzQ2NkRW5hYmxlZAD6ByNyYXdyaWdpZGJvZHlzZXRfcmJTb2Z0Q2NkUHJlZGljdGlvbgD7Bx5yYXdyaWdpZGJvZHlzZXRfcmJOdW1Db2xsaWRlcnMA/AcacmF3cmlnaWRib2R5c2V0X3JiQ29sbGlkZXIAhQcacmF3cmlnaWRib2R5c2V0X3JiQm9keVR5cGUA/QcdcmF3cmlnaWRib2R5c2V0X3JiU2V0Qm9keVR5cGUA7AcZcmF3cmlnaWRib2R5c2V0X3JiSXNGaXhlZADQBx1yYXdyaWdpZGJvZHlzZXRfcmJJc0tpbmVtYXRpYwDRBxtyYXdyaWdpZGJvZHlzZXRfcmJJc0R5bmFtaWMA1QcfcmF3cmlnaWRib2R5c2V0X3JiTGluZWFyRGFtcGluZwD+ByByYXdyaWdpZGJvZHlzZXRfcmJBbmd1bGFyRGFtcGluZwD/ByJyYXdyaWdpZGJvZHlzZXRfcmJTZXRMaW5lYXJEYW1waW5nAOcII3Jhd3JpZ2lkYm9keXNldF9yYlNldEFuZ3VsYXJEYW1waW5nAOgIHHJhd3JpZ2lkYm9keXNldF9yYlNldEVuYWJsZWQA1AgbcmF3cmlnaWRib2R5c2V0X3JiSXNFbmFibGVkAIAIHnJhd3JpZ2lkYm9keXNldF9yYkdyYXZpdHlTY2FsZQCBCCFyYXdyaWdpZGJvZHlzZXRfcmJTZXRHcmF2aXR5U2NhbGUApQcdcmF3cmlnaWRib2R5c2V0X3JiUmVzZXRGb3JjZXMA1QgecmF3cmlnaWRib2R5c2V0X3JiUmVzZXRUb3JxdWVzANYIGnJhd3JpZ2lkYm9keXNldF9yYkFkZEZvcmNlAP4FHnJhd3JpZ2lkYm9keXNldF9yYkFwcGx5SW1wdWxzZQD/BRtyYXdyaWdpZGJvZHlzZXRfcmJBZGRUb3JxdWUAgAYkcmF3cmlnaWRib2R5c2V0X3JiQXBwbHlUb3JxdWVJbXB1bHNlAIEGIXJhd3JpZ2lkYm9keXNldF9yYkFkZEZvcmNlQXRQb2ludADLBCVyYXdyaWdpZGJvZHlzZXRfcmJBcHBseUltcHVsc2VBdFBvaW50AJQELHJhd3JpZ2lkYm9keXNldF9yYkFkZGl0aW9uYWxTb2x2ZXJJdGVyYXRpb25zAIIIL3Jhd3JpZ2lkYm9keXNldF9yYlNldEFkZGl0aW9uYWxTb2x2ZXJJdGVyYXRpb25zAOkIGnJhd3JpZ2lkYm9keXNldF9yYlVzZXJEYXRhAO0HHXJhd3JpZ2lkYm9keXNldF9yYlNldFVzZXJEYXRhAMoIG3Jhd3JpZ2lkYm9keXNldF9yYlVzZXJGb3JjZQDFBhxyYXdyaWdpZGJvZHlzZXRfcmJVc2VyVG9ycXVlAMYGGl9fd2JnX3Jhd3JpZ2lkYm9keXNldF9mcmVlAO4HE3Jhd3JpZ2lkYm9keXNldF9uZXcA1gofcmF3cmlnaWRib2R5c2V0X2NyZWF0ZVJpZ2lkQm9keQDeARZyYXdyaWdpZGJvZHlzZXRfcmVtb3ZlAPUCE3Jhd3JpZ2lkYm9keXNldF9sZW4A+wsYcmF3cmlnaWRib2R5c2V0X2NvbnRhaW5zAOoIJnJhd3JpZ2lkYm9keXNldF9mb3JFYWNoUmlnaWRCb2R5SGFuZGxlAJEJOXJhd3JpZ2lkYm9keXNldF9wcm9wYWdhdGVNb2RpZmllZEJvZHlQb3NpdGlvbnNUb0NvbGxpZGVycwD9BhhfX3diZ19yYXdicm9hZHBoYXNlX2ZyZWUAygcRcmF3YnJvYWRwaGFzZV9uZXcAlQkVcmF3YnJvYWRwaGFzZV9jYXN0UmF5AJICIXJhd2Jyb2FkcGhhc2VfY2FzdFJheUFuZEdldE5vcm1hbACTAiJyYXdicm9hZHBoYXNlX2ludGVyc2VjdGlvbnNXaXRoUmF5AOABI3Jhd2Jyb2FkcGhhc2VfaW50ZXJzZWN0aW9uV2l0aFNoYXBlANUBGnJhd2Jyb2FkcGhhc2VfcHJvamVjdFBvaW50ALcCJ3Jhd2Jyb2FkcGhhc2VfcHJvamVjdFBvaW50QW5kR2V0RmVhdHVyZQC7AiRyYXdicm9hZHBoYXNlX2ludGVyc2VjdGlvbnNXaXRoUG9pbnQAmAIXcmF3YnJvYWRwaGFzZV9jYXN0U2hhcGUA0wEkcmF3YnJvYWRwaGFzZV9pbnRlcnNlY3Rpb25zV2l0aFNoYXBlANkBL3Jhd2Jyb2FkcGhhc2VfY29sbGlkZXJzV2l0aEFhYmJJbnRlcnNlY3RpbmdBYWJiALwCHHJhd2NvbGxpZGVyc2V0X2NvVHJhbnNsYXRpb24AkAYZcmF3Y29sbGlkZXJzZXRfY29Sb3RhdGlvbgDoBiVyYXdjb2xsaWRlcnNldF9jb1RyYW5zbGF0aW9uV3J0UGFyZW50AOwFInJhd2NvbGxpZGVyc2V0X2NvUm90YXRpb25XcnRQYXJlbnQAuAYfcmF3Y29sbGlkZXJzZXRfY29TZXRUcmFuc2xhdGlvbgDWByhyYXdjb2xsaWRlcnNldF9jb1NldFRyYW5zbGF0aW9uV3J0UGFyZW50AMEHHHJhd2NvbGxpZGVyc2V0X2NvU2V0Um90YXRpb24AoAYlcmF3Y29sbGlkZXJzZXRfY29TZXRSb3RhdGlvbldydFBhcmVudADACRlyYXdjb2xsaWRlcnNldF9jb0lzU2Vuc29yAIMIGnJhd2NvbGxpZGVyc2V0X2NvU2hhcGVUeXBlAI4JIHJhd2NvbGxpZGVyc2V0X2NvSGFsZnNwYWNlTm9ybWFsAK4FHHJhd2NvbGxpZGVyc2V0X2NvSGFsZkV4dGVudHMAnQUfcmF3Y29sbGlkZXJzZXRfY29TZXRIYWxmRXh0ZW50cwDUBhdyYXdjb2xsaWRlcnNldF9jb1JhZGl1cwC5CBpyYXdjb2xsaWRlcnNldF9jb1NldFJhZGl1cwDOCRtyYXdjb2xsaWRlcnNldF9jb0hhbGZIZWlnaHQAuggecmF3Y29sbGlkZXJzZXRfY29TZXRIYWxmSGVpZ2h0AM8JHHJhd2NvbGxpZGVyc2V0X2NvUm91bmRSYWRpdXMAuwgfcmF3Y29sbGlkZXJzZXRfY29TZXRSb3VuZFJhZGl1cwDQCRpyYXdjb2xsaWRlcnNldF9jb1ZveGVsRGF0YQCoBhpyYXdjb2xsaWRlcnNldF9jb1ZveGVsU2l6ZQCxBRlyYXdjb2xsaWRlcnNldF9jb1NldFZveGVsAJYHJXJhd2NvbGxpZGVyc2V0X2NvUHJvcGFnYXRlVm94ZWxDaGFuZ2UArgkjcmF3Y29sbGlkZXJzZXRfY29Db21iaW5lVm94ZWxTdGF0ZXMAwQkZcmF3Y29sbGlkZXJzZXRfY29WZXJ0aWNlcwCpBhhyYXdjb2xsaWRlcnNldF9jb0luZGljZXMAqgYdcmF3Y29sbGlkZXJzZXRfY29UcmlNZXNoRmxhZ3MA3QYhcmF3Y29sbGlkZXJzZXRfY29IZWlnaHRGaWVsZEZsYWdzAN4GI3Jhd2NvbGxpZGVyc2V0X2NvSGVpZ2h0ZmllbGRIZWlnaHRzAKsGIXJhd2NvbGxpZGVyc2V0X2NvSGVpZ2h0ZmllbGRTY2FsZQCcBSFyYXdjb2xsaWRlcnNldF9jb0hlaWdodGZpZWxkTlJvd3MAvgYhcmF3Y29sbGlkZXJzZXRfY29IZWlnaHRmaWVsZE5Db2xzAL8GF3Jhd2NvbGxpZGVyc2V0X2NvUGFyZW50AJgHG3Jhd2NvbGxpZGVyc2V0X2NvU2V0RW5hYmxlZACmBxpyYXdjb2xsaWRlcnNldF9jb0lzRW5hYmxlZADXBx9yYXdjb2xsaWRlcnNldF9jb1NldENvbnRhY3RTa2luAOsIHHJhd2NvbGxpZGVyc2V0X2NvQ29udGFjdFNraW4AhAgZcmF3Y29sbGlkZXJzZXRfY29GcmljdGlvbgCFCBxyYXdjb2xsaWRlcnNldF9jb1Jlc3RpdHV0aW9uAIYIGHJhd2NvbGxpZGVyc2V0X2NvRGVuc2l0eQCfCBVyYXdjb2xsaWRlcnNldF9jb01hc3MAoAgXcmF3Y29sbGlkZXJzZXRfY29Wb2x1bWUAoQggcmF3Y29sbGlkZXJzZXRfY29Db2xsaXNpb25Hcm91cHMAuQcdcmF3Y29sbGlkZXJzZXRfY29Tb2x2ZXJHcm91cHMAugcccmF3Y29sbGlkZXJzZXRfY29BY3RpdmVIb29rcwCHCCVyYXdjb2xsaWRlcnNldF9jb0FjdGl2ZUNvbGxpc2lvblR5cGVzAIgIHXJhd2NvbGxpZGVyc2V0X2NvQWN0aXZlRXZlbnRzAIkIK3Jhd2NvbGxpZGVyc2V0X2NvQ29udGFjdEZvcmNlRXZlbnRUaHJlc2hvbGQAiggecmF3Y29sbGlkZXJzZXRfY29Db250YWluc1BvaW50AJIFGnJhd2NvbGxpZGVyc2V0X2NvQ2FzdFNoYXBlAJYCHXJhd2NvbGxpZGVyc2V0X2NvQ2FzdENvbGxpZGVyAM8DIHJhd2NvbGxpZGVyc2V0X2NvSW50ZXJzZWN0c1NoYXBlAO4CHXJhd2NvbGxpZGVyc2V0X2NvQ29udGFjdFNoYXBlAIQCIHJhd2NvbGxpZGVyc2V0X2NvQ29udGFjdENvbGxpZGVyAKwGHXJhd2NvbGxpZGVyc2V0X2NvUHJvamVjdFBvaW50AKQEHnJhd2NvbGxpZGVyc2V0X2NvSW50ZXJzZWN0c1JheQDSAxhyYXdjb2xsaWRlcnNldF9jb0Nhc3RSYXkAswMkcmF3Y29sbGlkZXJzZXRfY29DYXN0UmF5QW5kR2V0Tm9ybWFsAOgCGnJhd2NvbGxpZGVyc2V0X2NvU2V0U2Vuc29yANIHH3Jhd2NvbGxpZGVyc2V0X2NvU2V0UmVzdGl0dXRpb24A7AgccmF3Y29sbGlkZXJzZXRfY29TZXRGcmljdGlvbgDtCCRyYXdjb2xsaWRlcnNldF9jb0ZyaWN0aW9uQ29tYmluZVJ1bGUAiwgncmF3Y29sbGlkZXJzZXRfY29TZXRGcmljdGlvbkNvbWJpbmVSdWxlALwIJ3Jhd2NvbGxpZGVyc2V0X2NvUmVzdGl0dXRpb25Db21iaW5lUnVsZQCMCCpyYXdjb2xsaWRlcnNldF9jb1NldFJlc3RpdHV0aW9uQ29tYmluZVJ1bGUAvQgjcmF3Y29sbGlkZXJzZXRfY29TZXRDb2xsaXNpb25Hcm91cHMAkQcgcmF3Y29sbGlkZXJzZXRfY29TZXRTb2x2ZXJHcm91cHMAkgcfcmF3Y29sbGlkZXJzZXRfY29TZXRBY3RpdmVIb29rcwCtCCByYXdjb2xsaWRlcnNldF9jb1NldEFjdGl2ZUV2ZW50cwC+CChyYXdjb2xsaWRlcnNldF9jb1NldEFjdGl2ZUNvbGxpc2lvblR5cGVzAL8IGXJhd2NvbGxpZGVyc2V0X2NvU2V0U2hhcGUA0AUucmF3Y29sbGlkZXJzZXRfY29TZXRDb250YWN0Rm9yY2VFdmVudFRocmVzaG9sZADuCBtyYXdjb2xsaWRlcnNldF9jb1NldERlbnNpdHkA7wgYcmF3Y29sbGlkZXJzZXRfY29TZXRNYXNzAPAIInJhd2NvbGxpZGVyc2V0X2NvU2V0TWFzc1Byb3BlcnRpZXMAugMZX193YmdfcmF3Y29sbGlkZXJzZXRfZnJlZQCnBxJyYXdjb2xsaWRlcnNldF9uZXcAmwoScmF3Y29sbGlkZXJzZXRfbGVuAPwLF3Jhd2NvbGxpZGVyc2V0X2NvbnRhaW5zAPEIHXJhd2NvbGxpZGVyc2V0X2NyZWF0ZUNvbGxpZGVyAOYBFXJhd2NvbGxpZGVyc2V0X3JlbW92ZQCPBCRyYXdjb2xsaWRlcnNldF9mb3JFYWNoQ29sbGlkZXJIYW5kbGUAkgkaX193YmdfcmF3c2hhcGVjb250YWN0X2ZyZWUAogkZX193YmdfcmF3bmFycm93cGhhc2VfZnJlZQCyCBJyYXduYXJyb3dwaGFzZV9uZXcAmQshcmF3bmFycm93cGhhc2VfY29udGFjdF9wYWlyc193aXRoAJoJG3Jhd25hcnJvd3BoYXNlX2NvbnRhY3RfcGFpcgDfBiZyYXduYXJyb3dwaGFzZV9pbnRlcnNlY3Rpb25fcGFpcnNfd2l0aACbCSByYXduYXJyb3dwaGFzZV9pbnRlcnNlY3Rpb25fcGFpcgDvBx1fX3diZ19yYXdjb250YWN0bWFuaWZvbGRfZnJlZQCjCRhyYXdjb250YWN0cGFpcl9jb2xsaWRlcjEAmgsYcmF3Y29udGFjdHBhaXJfY29sbGlkZXIyAJsLInJhd2NvbnRhY3RwYWlyX251bUNvbnRhY3RNYW5pZm9sZHMAnAsecmF3Y29udGFjdHBhaXJfY29udGFjdE1hbmlmb2xkAPkIGXJhd2NvbnRhY3RtYW5pZm9sZF9ub3JtYWwAjQgbcmF3Y29udGFjdG1hbmlmb2xkX2xvY2FsX24xAI4IG3Jhd2NvbnRhY3RtYW5pZm9sZF9sb2NhbF9uMgCPCBxyYXdjb250YWN0bWFuaWZvbGRfc3Vic2hhcGUxAJ0LHHJhd2NvbnRhY3RtYW5pZm9sZF9zdWJzaGFwZTIAngsfcmF3Y29udGFjdG1hbmlmb2xkX251bV9jb250YWN0cwCfCyNyYXdjb250YWN0bWFuaWZvbGRfY29udGFjdF9sb2NhbF9wMQDrBiNyYXdjb250YWN0bWFuaWZvbGRfY29udGFjdF9sb2NhbF9wMgDsBh9yYXdjb250YWN0bWFuaWZvbGRfY29udGFjdF9kaXN0AJwKH3Jhd2NvbnRhY3RtYW5pZm9sZF9jb250YWN0X2ZpZDEAnQofcmF3Y29udGFjdG1hbmlmb2xkX2NvbnRhY3RfZmlkMgCeCiJyYXdjb250YWN0bWFuaWZvbGRfY29udGFjdF9pbXB1bHNlAJ8KLHJhd2NvbnRhY3RtYW5pZm9sZF9jb250YWN0X3RhbmdlbnRfaW1wdWxzZV94AKAKLHJhd2NvbnRhY3RtYW5pZm9sZF9jb250YWN0X3RhbmdlbnRfaW1wdWxzZV95AKEKJnJhd2NvbnRhY3RtYW5pZm9sZF9udW1fc29sdmVyX2NvbnRhY3RzAKALJ3Jhd2NvbnRhY3RtYW5pZm9sZF9zb2x2ZXJfY29udGFjdF9wb2ludADtBiZyYXdjb250YWN0bWFuaWZvbGRfc29sdmVyX2NvbnRhY3RfZGlzdACiCipyYXdjb250YWN0bWFuaWZvbGRfc29sdmVyX2NvbnRhY3RfZnJpY3Rpb24AgwotcmF3Y29udGFjdG1hbmlmb2xkX3NvbHZlcl9jb250YWN0X3Jlc3RpdHV0aW9uAIQKMnJhd2NvbnRhY3RtYW5pZm9sZF9zb2x2ZXJfY29udGFjdF90YW5nZW50X3ZlbG9jaXR5AI0HHV9fd2JnX3Jhd3BvaW50cHJvamVjdGlvbl9mcmVlAKQJGHJhd3BvaW50cHJvamVjdGlvbl9wb2ludADXCBtyYXdwb2ludHByb2plY3Rpb25faXNJbnNpZGUA/QslX193YmdfcmF3cG9pbnRjb2xsaWRlcnByb2plY3Rpb25fZnJlZQClCSlyYXdwb2ludGNvbGxpZGVycHJvamVjdGlvbl9jb2xsaWRlckhhbmRsZQD+CyByYXdwb2ludGNvbGxpZGVycHJvamVjdGlvbl9wb2ludADYCCNyYXdwb2ludGNvbGxpZGVycHJvamVjdGlvbl9pc0luc2lkZQD/CyZyYXdwb2ludGNvbGxpZGVycHJvamVjdGlvbl9mZWF0dXJlVHlwZQCADCRyYXdwb2ludGNvbGxpZGVycHJvamVjdGlvbl9mZWF0dXJlSWQAqQsdX193YmdfcmF3cmF5aW50ZXJzZWN0aW9uX2ZyZWUApgkcX193YmdfcmF3cmF5Y29sbGlkZXJoaXRfZnJlZQCnCRNfX3diZ19yYXdzaGFwZV9mcmVlAMYHD3Jhd3NoYXBlX2N1Ym9pZACJCxRyYXdzaGFwZV9yb3VuZEN1Ym9pZAD/Cg1yYXdzaGFwZV9iYWxsAKoLEnJhd3NoYXBlX2hhbGZzcGFjZQCdBhByYXdzaGFwZV9jYXBzdWxlAMUJEXJhd3NoYXBlX2N5bGluZGVyAKELFnJhd3NoYXBlX3JvdW5kQ3lsaW5kZXIAigsNcmF3c2hhcGVfY29uZQCiCxJyYXdzaGFwZV9yb3VuZENvbmUAiwsPcmF3c2hhcGVfdm94ZWxzAPAGGXJhd3NoYXBlX3ZveGVsc0Zyb21Qb2ludHMA8QYRcmF3c2hhcGVfcG9seWxpbmUA7gkQcmF3c2hhcGVfdHJpbWVzaACvCRRyYXdzaGFwZV9oZWlnaHRmaWVsZACfBRByYXdzaGFwZV9zZWdtZW50ALsFEXJhd3NoYXBlX3RyaWFuZ2xlAIwEFnJhd3NoYXBlX3JvdW5kVHJpYW5nbGUAigQTcmF3c2hhcGVfY29udmV4SHVsbADvCRhyYXdzaGFwZV9yb3VuZENvbnZleEh1bGwA6AkTcmF3c2hhcGVfY29udmV4TWVzaAC0CRhyYXdzaGFwZV9yb3VuZENvbnZleE1lc2gAsAkScmF3c2hhcGVfY2FzdFNoYXBlAJkBGHJhd3NoYXBlX2ludGVyc2VjdHNTaGFwZQCVAhVyYXdzaGFwZV9jb250YWN0U2hhcGUA1AEWcmF3c2hhcGVfY29udGFpbnNQb2ludACMAxVyYXdzaGFwZV9wcm9qZWN0UG9pbnQA5wIWcmF3c2hhcGVfaW50ZXJzZWN0c1JheQC9AhByYXdzaGFwZV9jYXN0UmF5ALACHHJhd3NoYXBlX2Nhc3RSYXlBbmRHZXROb3JtYWwAlAIaX193YmdfcmF3c2hhcGVjYXN0aGl0X2ZyZWUAqAkYcmF3c2hhcGVjYXN0aGl0X3dpdG5lc3MxANkIF3Jhd3NoYXBlY2FzdGhpdF9ub3JtYWwxANoIF3Jhd3NoYXBlY2FzdGhpdF9ub3JtYWwyANsIIl9fd2JnX3Jhd2NvbGxpZGVyc2hhcGVjYXN0aGl0X2ZyZWUAqQkmcmF3Y29sbGlkZXJzaGFwZWNhc3RoaXRfdGltZV9vZl9pbXBhY3QAgQwgcmF3Y29sbGlkZXJzaGFwZWNhc3RoaXRfd2l0bmVzczEA3AggcmF3Y29sbGlkZXJzaGFwZWNhc3RoaXRfd2l0bmVzczIA3QgPcmF3cm90YXRpb25fbmV3ALAMFHJhd3JvdGF0aW9uX2lkZW50aXR5AP4MDXJhd3JvdGF0aW9uX3cAggwOcmF3dmVjdG9yX3plcm8Arw0NcmF3dmVjdG9yX25ldwC+DA9yYXd2ZWN0b3Jfc2V0X3kAogwPcmF3dmVjdG9yX3NldF96AKMMDXJhd3ZlY3Rvcl94eXoA0QkNcmF3dmVjdG9yX3l4egDSCQ1yYXd2ZWN0b3Jfenh5ANMJDXJhd3ZlY3Rvcl94enkA1AkNcmF3dmVjdG9yX3l6eADVCQ1yYXd2ZWN0b3Jfenl4ANYJFnJhd3NkcG1hdHJpeDNfZWxlbWVudHMAogghX193YmdfcmF3ZGVidWdyZW5kZXJwaXBlbGluZV9mcmVlAMsHGnJhd2RlYnVncmVuZGVycGlwZWxpbmVfbmV3AOkJH3Jhd2RlYnVncmVuZGVycGlwZWxpbmVfdmVydGljZXMA8ggdcmF3ZGVidWdyZW5kZXJwaXBlbGluZV9jb2xvcnMA8wgdcmF3ZGVidWdyZW5kZXJwaXBlbGluZV9yZW5kZXIAjgIYX193YmdfcmF3ZXZlbnRxdWV1ZV9mcmVlAMwHH19fd2JnX3Jhd2NvbnRhY3Rmb3JjZWV2ZW50X2ZyZWUAqgkecmF3Y29udGFjdGZvcmNlZXZlbnRfY29sbGlkZXIyAIMMIHJhd2NvbnRhY3Rmb3JjZWV2ZW50X3RvdGFsX2ZvcmNlAN4IKnJhd2NvbnRhY3Rmb3JjZWV2ZW50X3RvdGFsX2ZvcmNlX21hZ25pdHVkZQCEDChyYXdjb250YWN0Zm9yY2VldmVudF9tYXhfZm9yY2VfZGlyZWN0aW9uAN8IKHJhd2NvbnRhY3Rmb3JjZWV2ZW50X21heF9mb3JjZV9tYWduaXR1ZGUAhQwRcmF3ZXZlbnRxdWV1ZV9uZXcA0woicmF3ZXZlbnRxdWV1ZV9kcmFpbkNvbGxpc2lvbkV2ZW50cwC7CSVyYXdldmVudHF1ZXVlX2RyYWluQ29udGFjdEZvcmNlRXZlbnRzALwJE3Jhd2V2ZW50cXVldWVfY2xlYXIA5AcdX193YmdfcmF3cGh5c2ljc3BpcGVsaW5lX2ZyZWUAzQcWcmF3cGh5c2ljc3BpcGVsaW5lX25ldwCoBCdyYXdwaHlzaWNzcGlwZWxpbmVfc2V0X3Byb2ZpbGVyX2VuYWJsZWQAjgwmcmF3cGh5c2ljc3BpcGVsaW5lX2lzX3Byb2ZpbGVyX2VuYWJsZWQAhgwecmF3cGh5c2ljc3BpcGVsaW5lX3RpbWluZ19zdGVwAIwLLXJhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfY29sbGlzaW9uX2RldGVjdGlvbgDaCiVyYXdwaHlzaWNzcGlwZWxpbmVfdGltaW5nX2Jyb2FkX3BoYXNlANsKJnJhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfbmFycm93X3BoYXNlANwKIHJhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfc29sdmVyAN0KK3Jhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfdmVsb2NpdHlfYXNzZW1ibHkAjQstcmF3cGh5c2ljc3BpcGVsaW5lX3RpbWluZ192ZWxvY2l0eV9yZXNvbHV0aW9uAN4KKXJhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfdmVsb2NpdHlfdXBkYXRlAN8KLHJhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfdmVsb2NpdHlfd3JpdGViYWNrAI4LHXJhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfY2NkAOAKLXJhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfY2NkX3RvaV9jb21wdXRhdGlvbgCPCylyYXdwaHlzaWNzcGlwZWxpbmVfdGltaW5nX2NjZF9icm9hZF9waGFzZQCQCypyYXdwaHlzaWNzcGlwZWxpbmVfdGltaW5nX2NjZF9uYXJyb3dfcGhhc2UAkQskcmF3cGh5c2ljc3BpcGVsaW5lX3RpbWluZ19jY2Rfc29sdmVyAJILLXJhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfaXNsYW5kX2NvbnN0cnVjdGlvbgDhCiZyYXdwaHlzaWNzcGlwZWxpbmVfdGltaW5nX3VzZXJfY2hhbmdlcwCTCxdyYXdwaHlzaWNzcGlwZWxpbmVfc3RlcADGASFyYXdwaHlzaWNzcGlwZWxpbmVfc3RlcFdpdGhFdmVudHMAuAEfX193YmdfcmF3ZGVzZXJpYWxpemVkd29ybGRfZnJlZQDwByByYXdkZXNlcmlhbGl6ZWR3b3JsZF90YWtlR3Jhdml0eQCWCC5yYXdkZXNlcmlhbGl6ZWR3b3JsZF90YWtlSW50ZWdyYXRpb25QYXJhbWV0ZXJzAOkFJnJhd2Rlc2VyaWFsaXplZHdvcmxkX3Rha2VJc2xhbmRNYW5hZ2VyAJ4GI3Jhd2Rlc2VyaWFsaXplZHdvcmxkX3Rha2VCcm9hZFBoYXNlAOUHJHJhd2Rlc2VyaWFsaXplZHdvcmxkX3Rha2VOYXJyb3dQaGFzZQDgBh9yYXdkZXNlcmlhbGl6ZWR3b3JsZF90YWtlQm9kaWVzAOQGInJhd2Rlc2VyaWFsaXplZHdvcmxkX3Rha2VDb2xsaWRlcnMAsgcmcmF3ZGVzZXJpYWxpemVkd29ybGRfdGFrZUltcHVsc2VKb2ludHMAvAUocmF3ZGVzZXJpYWxpemVkd29ybGRfdGFrZU11bHRpYm9keUpvaW50cwC9BSVyYXdzZXJpYWxpemF0aW9ucGlwZWxpbmVfc2VyaWFsaXplQWxsAMABJ3Jhd3NlcmlhbGl6YXRpb25waXBlbGluZV9kZXNlcmlhbGl6ZUFsbADQBhxyYXdjb2xsaWRlcnNldF9pc0hhbmRsZVZhbGlkAPEIHHJhd3JheWludGVyc2VjdGlvbl9mZWF0dXJlSWQAqQskcmF3cmF5Y29sbGlkZXJpbnRlcnNlY3Rpb25fZmVhdHVyZUlkAKkLNXJhd2ludGVncmF0aW9ucGFyYW1ldGVyc19zZXRfbnVtSW50ZXJuYWxQZ3NJdGVyYXRpb25zAJgMD3Jhd3ZlY3Rvcl9zZXRfeACaDA5yZXNlcnZlX21lbW9yeQC4CyJyYXdraW5lbWF0aWNjaGFyYWN0ZXJjb250cm9sbGVyX3VwAM4IF3Jhd3NoYXBlY29udGFjdF9ub3JtYWwyAM4IFnJhd3NoYXBlY29udGFjdF9wb2ludDEA1wgWcmF3c2hhcGVjb250YWN0X3BvaW50MgDcCBlyYXdyYXlpbnRlcnNlY3Rpb25fbm9ybWFsANwIIXJhd3JheWNvbGxpZGVyaW50ZXJzZWN0aW9uX25vcm1hbADcCBdyYXdzaGFwZWNvbnRhY3Rfbm9ybWFsMQDdCB9yYXdjb2xsaWRlcnNoYXBlY2FzdGhpdF9ub3JtYWwxAM4IH3Jhd2NvbGxpZGVyc2hhcGVjYXN0aGl0X25vcm1hbDIAzwgYcmF3c2hhcGVjYXN0aGl0X3dpdG5lc3MyAN4IMXJhd2ludGVncmF0aW9ucGFyYW1ldGVyc19udW1JbnRlcm5hbFBnc0l0ZXJhdGlvbnMA8gsYcmF3c2hhcGVjb250YWN0X2Rpc3RhbmNlAOkLHnJhd3JheWludGVyc2VjdGlvbl9mZWF0dXJlVHlwZQCADClyYXdyYXljb2xsaWRlcmludGVyc2VjdGlvbl9jb2xsaWRlckhhbmRsZQD+CyFyYXdyYXlpbnRlcnNlY3Rpb25fdGltZV9vZl9pbXBhY3QAgQwmcmF3cmF5Y29sbGlkZXJpbnRlcnNlY3Rpb25fZmVhdHVyZVR5cGUAgAwgcmF3cmF5Y29sbGlkZXJoaXRfY29sbGlkZXJIYW5kbGUA7gspcmF3cmF5Y29sbGlkZXJpbnRlcnNlY3Rpb25fdGltZV9vZl9pbXBhY3QAgQwecmF3c2hhcGVjYXN0aGl0X3RpbWVfb2ZfaW1wYWN0APULJnJhd2NvbGxpZGVyc2hhcGVjYXN0aGl0X2NvbGxpZGVySGFuZGxlAO4LHnJhd3JheWNvbGxpZGVyaGl0X3RpbWVPZkltcGFjdACBDA1yYXdyb3RhdGlvbl94APULDXJhd3JvdGF0aW9uX3kA5gsNcmF3cm90YXRpb25fegCBDAtyYXd2ZWN0b3JfeAD1CwtyYXd2ZWN0b3JfeQDmCwtyYXd2ZWN0b3JfegCBDB5yYXdjb250YWN0Zm9yY2VldmVudF9jb2xsaWRlcjEA7gsjcmF3aW50ZWdyYXRpb25wYXJhbWV0ZXJzX2xlbmd0aFVuaXQAhAwZX193YmdfcmF3Y29udGFjdHBhaXJfZnJlZQCjCSVfX3diZ19yYXdyYXljb2xsaWRlcmludGVyc2VjdGlvbl9mcmVlAKUJFl9fd2JnX3Jhd3JvdGF0aW9uX2ZyZWUApAkUX193YmdfcmF3dmVjdG9yX2ZyZWUApwkYX193YmdfcmF3c2RwbWF0cml4M19mcmVlAKYJI19fd2JnX3Jhd3NlcmlhbGl6YXRpb25waXBlbGluZV9mcmVlAJ8JEHJhd2NjZHNvbHZlcl9uZXcArg0ccmF3c2VyaWFsaXphdGlvbnBpcGVsaW5lX25ldwCuDRNfX3diaW5kZ2VuX2V4cG9ydF8wAJwOH19fd2JpbmRnZW5fYWRkX3RvX3N0YWNrX3BvaW50ZXIA9A4TX193YmluZGdlbl9leHBvcnRfMQDzDRNfX3diaW5kZ2VuX2V4cG9ydF8yAKENCdwRAQBBAQv3CIkO4wK8DLAP5Q75DvcO9Q72Dv0M+g6vDLQLng2eDbAFsAXlDMEP+wj7COQD5QOUB/sO5wmr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IAEgCUEYayILNgIEIAEgAkEYajYCACALQQNNBEAgA0EAOgCTDCADQSU7AJEMIANBADYClAwgA0EBOgCQDCADQZAMahCfDQwBCyACKAAUIUQgASAJQRxrIgs2AgQgASACQRxqNgIAIAtBA00EQCADQQA6AJMMIANBJTsAkQwgA0EANgKUDCADQQE6AJAMIANBkAxqEJ8NDAELIAIoABghRSABIAlBIGsiCzYCBCABIAJBIGo2AgAgA0ELNgL0AiALQQNNBEAgA0EAOgCTDCADQSU7AJEMIANBADYClAwgA0EBOgCQDCADQZAMahCfDQwBCyACKAAcIUYgASAJQSRrNgIEIAEgAkEkajYCACACKAAgIUcgA0GQDGoiCSADQfACaiILELoJIAMoApQMIkggAygCkAwiCEECRg0AGiAIQQFxBEAgCSALELoJIAMoApQMIkkgAygCkAwiCEECRg0BGgJAIAhBAXEEQCAJIAsQugkgAygClAwhOSADKAKQDCICQQJHDQEgOQwDC0EHQaS1wQBBkK3BABCoCgwCCwJAIAJBAXEEQCADQZAMaiADQfACahC6CSADKAKUDCE6IAMoApAMIgJBAkcNASA6DAMLQQhBpLXBAEGQrcEAEKgKDAILAkAgAkEBcQRAIANBkAxqIANB8AJqELoJIAMoApQMITsgAygCkAwiAkECRw0BIDsMAwtBCUGktcEAQZCtwQAQqAoMAgsCQCACQQFxBEAgA0GQDGogA0HwAmoQ5AggAygClAwhPCADKAKQDCICQQJHDQEgPAwDC0EKQaS1wQBBkK3BABCoCgwCCwJAIAJBAXEEQCADQZAMaiADQfACahDkCCADKAKUDCE9IAMoApAMIgJBAkcNASA9DAMLQQtBpLXBAEGQrcEAEKgKDAILAkAgAkEBcQRAIANBkAxqIANB8AJqEOQIIAMoApQMIT4gAygCkAwiAkECRw0BID4MAwtBDEGktcEAQZCtwQAQqAoMAgsCQCACQQFxBEAgA0GQDGogA0HwAmoQ5AggAygClAwhPyADKAKQDCICQQJHDQEgPwwDC0ENQaS1wQBBkK3BABCoCgwCCwJAIAJBAXEEQCADQZAMaiADQfACahDkCCADKAKUDCFAIAMoApAMIgJBAkcNASBADAMLQQ5BpLXBAEGQrcEAEKgKDAILAkAgAkEBcQRAIANBkAxqIANB8AJqEOIIIAMtAJAMRQ0BIAMoApQMDAMLQQ9BpLXBAEGQrcEAEKgKDAILIAMtAJEMIkpBAkYEQEEQQaS1wQBBkK3BABCoCgwCCyADQQY2AkQgA0EENgL0AiADIAE2AvACIANBkAxqIgQgA0HwAmoiCBDdAyADKAKUDCIUIQsgAygCkAwiAkGBgICAeEYNDyACQYCAgIB4Rg0CIAMoApgMIQ4gBCAIEPkDIAMoApQMIgohCyADKAKQDCIJQYGAgIB4Rg0OIAlBgICAgHhGDQUgAygCmAwhECAEIAgQ+QMgAygClAwhCyADKAKQDCIIQYGAgIB4Rg0NIAhBgICAgHhGDQQCfyADKAL0AgRAIAMoAvACIgcoAgQiDEEETw0FIANCgcoANwOQDCAEEJ8NDAELQQNBmLLBAEGQrcEAEKgKCyEBIAgEQCALIAhBAnRBBBDoDgsgASELDA0LQQZBpLXBAEGQrcEAEKgKCyECIABBAjYCxAcgACACNgIADA4LQQBBmLLBAEGQrcEAEKgKIQsMDAsgAygCmAwhBCAHIAxBBGs2AgQgByAHKAIAIgdBBGo2AgAgA0IENwJ8IANCADcCdCADQoCAgIDAADcCbCADIAQ2AmggAyALNgJkIAMgCDYCYCADIBA2AlwgAyAKNgJYIAMgCTYCVCADIA42AlAgAyAUNgJMIAMgAjYCSCADIAcoAAA2AoQBIANBBTYCRCADQQQ2ApwUIAMgATYCmBQgA0GQDGogA0GYFGoQfyADKAKUDCIWIQIgAygCkAwiDEGBgICAeEYNByAMQYCAgIB4Rg0CIAMpArAMIWogAygCrAwhHSADKAKoDCEaIAMoAqQMISQgAygCoAwhGSADKAKcDCETIAMoApgMIRsgA0EANgLgDCADQhA3AqAMIANCADcCmAwgA0KAgICAgAg3ApAMIANCADcC2AwgA0KAgICAwAA3AtAMIANCADcCyAwgA0KAgICAwAA3AsAMIANCBDcCuAwgA0IANwKwDCADQoCAgIDAADcCqAwCQCADKAKcFCIUBEAgAyAUQQFrIig2ApwUAn8gAygCmBQiCygCBCIIQQdNBEAgA0KBygA3A/ACQQEhDiADQfACahCfDQwBCyALIAhBCGsiCDYCBCALIAsoAgAiAkEIajYCACADQThqIAIpAAAQqAggAygCOCEOIAMoAjwLIQIgDkEBcQ0IIAJFDQUgAkEPTwR/QX9BgCAgAiACQYAgTxtBA3RB+P8DcUEHbkEBa2d2QQFqBUEEQQhBECACQQhJGyACQQRJGwsiCUEUbEEHakH4/z9xIgcgCUEIaiIEaiIKQQgQkQ4iDkUEQAwQCyAHIA5qIQcgBARAIAdB/wEgBPwLAAsgA0EANgL8AiADIAlBAWsiBCAJQQN2QQdsIAlBCUkbNgL4AiADIAQ2AvQCIAMgBzYC8AIgA0KJ2bnijtO+lwg3A4ADIAsoAgAhDiADQfgCaiEnA0AgCEEESQ0CIAsgCEEEayIJNgIEIAsgDkEEajYCACAJQQRJDQggDigAACEQIAsgCEEIayIJNgIEIAsgDkEIajYCACAJQQRJDQggDigABCERIAsgCEEMayIJNgIEIAsgDkEMajYCACAJQQRJDQggDigACCEGIAsgCEEQayIJNgIEIAsgDkEQajYCACAJQQNNDQggDigADCEFIAsgCEEUayIINgIEIAsgDkEUaiISNgIAIAMpA4ADIBCtIBGtQiCGhIUiY0IgiCJmIAVBt9OwhXxzrSJofiBjQv////8PgyJjIAZB3aHxy3xzrSJrfoUgYyBofiBmIGt+hUIgiIUhYyAOKAAQIRcgAygC+AJFBEAgA0EoaiADQfACaiIJIAlBEGoQ9gELIAJBAWshAiADKAL0AiIVIGOncSEJIGNCGYgia0L/AINCgYKEiJCgwIABfiFtQQAhJSADKALwAiEHQQAhBANAAn8CQAJAIG0gByAJaikAACJohSJjQoGChIiQoMCAAX0gY0J/hYNCgIGChIiQoMCAf4MiZkIAUgRAA0ACQCAHQQAgZnqnQQN2IAlqIBVxayIKQRRsaiIOQRRrKAIAIBBHDQAgDkEQaygCACARRw0AIAYgDkEMaygCAEcNACAFIA5BCGsoAgBGDQMLIGZCAX0gZoMiZkIAUg0ACwsgaEKAgYKEiJCgwIB/gyFmIARBAUcEQCBmUA0CIGZ6p0EDdiAJaiAVcSENC0EBIGYgaEIBhoNQDQIaIAcgDWosAAAiD0EATgRAIAcgBykDAEKAgYKEiJCgwIB/g3qnQQN2Ig1qLQAAIQ8LIAcgDWoga6dB/wBxIgk6AAAgByANQQhrIBVxakEIaiAJOgAAIAdBACANayIKQRRsaiIJQRRrIBA2AgAgCUEQayARNgIAIAlBDGsgBjYCACAJQQhrIAU2AgAgAyADKAL8AkEBajYC/AIgAyADKAL4AiAPQQFxazYC+AILIAcgCkEUbGpBBGsgFzYCACASIQ4gAg0DIAMgJ/0AAwD9CwOYCiADKAL0AiICIAMoAvACIg4NChoMDAtBAAshBCAlQQhqIiUgCWogFXEhCQwACwALAAtBAUGgs8EAQZCtwQAQqAohAgwHCwwFC0ECQZiywQBBkK3BABCoCiELDAgLQQFBmLLBAEGQrcEAEKgKIQsMCAtBAEGgs8EAQZCtwQAQqAohAgwECyADQaAKakKJ2bnijtO+lwg3AwAgA0IANwOYCkHYzcEAIQ5BAAshCSADIAP9AAOYCv0LA6gCAkACQAJ/AkAgKARAIAMgFEECayIENgKcFCALKAIEIghBBEkEQCADQoHKADcD8AIgA0HwAmoQnw0MAwsgCyAIQQRrIgc2AgQgCyALKAIAIgJBBGo2AgAgBEUNASACKAAAIQQgAyAUQQNrNgKcFCAHQQNNBEAgA0KBygA3A/ACIANB8AJqEJ8NDAMLIAsgCEEIazYCBCALIAJBCGo2AgBBASEQAkAgAigABCICDgIEBQALIANBAToA8AIgAyACrTcD+AIgA0HwAmpByK/BAEGQrcEAEO8KDAILQQJBoLPBAEGQrcEAEKgKDAELQQNBoLPBAEGQrcEAEKgKCyECIAkEQCAOIAlBFGxBG2pBeHEiAWsgASAJakEJakEIEOgOCwwDC0EAIRALIANByAFqIANBkAxqIgJB1AD8CgAAIANBpAJqIANB6xNqKAAANgAAIAMgA/0AA6gC/QsDuAEgAyADKADoEzYAoQIgAyAQOgCgAiADIAQ2ApwCIAMgCTYCtAEgAyAONgKwASADIGo3A6gBIAMgHTYCpAEgAyAaNgKgASADICQ2ApwBIAMgGTYCmAEgAyATNgKUASADIBs2ApABIAMgFjYCjAEgAyAMNgKIASADQQQ2AkQgA0EgaiEJQQhBBBCRDiILRQRAQQRBCEH4ysQAKAIAIgBBzAggABsRAAAACyALQoGAgIAQNwIAIAlBwNrBADYCBCAJIAs2AgAgAyADKAIkIhk2AuwTIAMgAygCICIfNgLoEyADQQI2ApwUIAMgATYCmBQgAiADQZgUahDtAiADKAKUDCELAkACQAJAIAMoApAMIhpBgYCAgHhGDQACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIBpBgICAgHhHBEAgAygCnBRFDQEgAygCmAwhIQJ/IAMoApgUIhEoAgQiCUEHTQRAIANCgcoANwOQDEEBIQ4gAhCfDQwBCyARIAlBCGs2AgQgESARKAIAIgJBCGo2AgAgA0EYaiACKQAAEKgIIAMoAhghDiADKAIcCyEJIA5BAXEEQCAJIQIMAwsgCUUNBEGkkgEgCSAJQaSSAU8bIgJBOGwiCEEEEJEOIgRFDTAgA0EANgK4CSADIAQ2ArQJIAMgAjYCsAkgA0H4AmohLyADQZgMaiEwA0AgA0GQDGohIkEAIQhBACEHQgAhY0EAIRBBACEKQQAhD0EAIRhCACFkQQAhE0EAIRxBACEMIwBBkANrIgUkAAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAn8CQAJAAn8gESgCBCIEQQRPBEAgESAEQQRrIg02AgQgESARKAIAIgJBBGo2AgAgDUEESQRAIAVCgcoANwPIAiAFQcgCahCfDQwCCyACKAAAITMgESAEQQhrIg02AgQgESACQQhqNgIAIA1BBEkNAyACKAAEITcgESAEQQxrIg02AgQgESACQQxqNgIAIA1BBE8NAiAFQoHKADcDyAIgBUHIAmoQnw0MBAsgBUKBygA3A8gCIAVByAJqEJ8NCyECICJBgICAgHg2AgAgIiACNgIEDB4LIAIoAAghSyARIARBEGsiDTYCBCARIAJBEGo2AgAgAigADCFMAn8gDUEHTQRAIAVCgcoANwPIAkEBIRUgBUHIAmoQnw0MAQsgESAEQRhrNgIEIBEgAkEYajYCACAFQcgBaiACKQAQEKgIIAUoAsgBIRUgBSgCzAELIQIgFUEBcQRAIAIhEgwcCyACRQRAQQQhEkEAIRUMHQtB4TAgAiACQeEwTxsiCEGoAWwiBEEEEJEOIg1FDU8gBUEANgLcASAFIA02AtgBIAUgCDYC1AEgBUHQAmohDANAAn8gESgCBCIPQQdNBEAgBUKBygA3A8gCQQEhFSAFQcgCahCfDQwBCyARIA9BCGsiDzYCBCARIBEoAgAiCEEIajYCACAFQcABaiAIKQAAEKgIIAUoAsABIRUgBSgCxAELIRIgFUEBcQ0bAkAgEkUEQEEEIRJBACENQQAhFgwBC0GAgAEgEiASQYCAAU8bIghBBnQiBEEEEJEOIg1FDVEgBSANNgLMAiAFIAg2AsgCQQAhBCAFQQA2AtACIBEoAgAhDkEAIRYDQCAPQQRJDQYgESAPQQRrIgg2AgQgESAEIA5qIgpBBGoiDTYCACAIQQRJDQYgCigAACEQIBEgCEEEayIINgIEIBEgDUEEaiIKNgIAIAhBBEkNBiANNQAAIWMgESAIQQRrIgg2AgQgESAKQQRqIg02AgAgCEEESQ0HIAo1AAAhZCARIAhBBGsiCDYCBCARIA1BBGoiCjYCACAIQQRJDQcgDSgAACEGIBEgCEEEayIINgIEIBEgCkEEaiINNgIAIAhBBEkNByAKNQAAIWwgESAIQQRrIgg2AgQgESANQQRqIgo2AgAgCEEESQ0IIA01AAAhZSARIAhBBGsiCDYCBCARIApBBGoiDTYCACAIQQRJDQkgCioAACGAASARIAhBBGsiCDYCBCARIA1BBGoiCjYCAAJAIAhBBE8EQCANKAAAIRUgESAIQQRrIgg2AgQgESAKQQRqIg02AgAgCEEESQ0MIAooAAAhFyARIAhBBGsiCDYCBCARIA1BBGoiCjYCACAIQQRJDQ0gDSoAACGBASARIAhBBGsiCDYCBCARIApBBGoiDTYCACAIQQRJDQ0gCigAACEYIBEgCEEEayIINgIEIBEgDUEEaiIKNgIAIAhBBEkNDiANKAAAIRwgESAIQQRrIgg2AgQgESAKQQRqIg02AgAgCEEESQ0PIAoqAAAhggEgESAIQQRrIgg2AgQgESANQQRqIgo2AgAgCEEESQ0PIA0oAAAhEyARIAhBBGsiCDYCBCARIApBBGoiDTYCACAIQQRPDQEgBUEAOgD7AiAFQSU7APkCIAVBADYC/AIgBUEBOgD4AgweCyAFQoHKADcD+AIMHQsgZEIghiBjhCFjIGVCIIYgbIQhZCAKKAAAIQogESAIQQRrIg82AgQgESANQQRqNgIAIA0qAAAhgwEgBSgCyAIgFkYEQCAFQcgCakHUrcEAEMAICyAFKALMAiAEaiIIIBA2AgAgCEE8aiCDATgCACAIQThqIIIBOAIAIAhBNGoggQE4AgAgCEEwaiAKNgIAIAhBLGogEzYCACAIQShqIBw2AgAgCEEkaiAYNgIAIAhBIGogFzYCACAIQRxqIBU2AgAgCEEYaiCAATgCACAIQRBqIGQ3AgAgCEEMaiAGNgIAIAhBBGogYzcCACAFIBZBAWoiFjYC0AIgBEFAayEEIBIgFkcNAAsgBSgCzAIhEiAFKALIAiINQYKAgIB4SA0cCwJAAkAgESgCBCIEQQRJDQAgESgCACEIIBEgBEEEayIKNgIEIBEgCEEEajYCACAKQQRJDQAgCCgAACE4IBEgBEEIayIKNgIEIBEgCEEIajYCACAKQQRJDQAgCDUABCFjIBEgBEEMayIKNgIEIBEgCEEMajYCACAKQQRJDQ4gCDUACCFkIBEgBEEQayIKNgIEIBEgCEEQajYCACAKQQRJDQ4gCCgADCFNIBEgBEEUayIKNgIEIBEgCEEUajYCACAKQQRJDQ4gCDUAECFsIBEgBEEYayIKNgIEIBEgCEEYajYCACAKQQRJDQ8gCDUAFCFlIBEgBEEcayIKNgIEIBEgCEEcajYCAAJAAkAgCkEETwRAIAgoABghTiARIARBIGsiCjYCBCARIAhBIGo2AgAgCkUEQCAFQoHKADcDyAIgBUHIAmoQnw0hBAwfCyAIKAAcIU8gESAEQSFrIg82AgQgESAIQSFqNgIAAkACQCAILQAgIgoOAgQAAQsgBUHIAmogERDdBCAFKALMAiETIAUoAsgCQQFHDQIgEyEEDB8LQQxBBBCRDiIERQ1XIAQgCjYCBCAEQYSAgIB4NgIADB4LIAVCgcoANwPIAiAFQcgCahCfDSEEDB0LIAVBuAJqIAxBEGopAgA3AwAgBSAM/QACAP0LA6gCIBEoAgQhD0EBIQoLIA9FBEAgBUKBygA3A8gCIAVByAJqEJ8NIQQMHAsgESAPQQFrNgIEIBEgESgCACIIQQFqNgIAAkACQAJAAkAgCC0AACIODgIDAAELIAVByAJqIBEQ3QQgBSgCzAIhByAFKALIAkEBRw0BIAchBAweC0EMQQQQkQ4iBEUNViAEIA42AgQgBEGEgICAeDYCAAwdCyAFQYgDaiAMQRBqKQIANwMAIAUgDP0AAgD9CwP4AkEBIQ4LIAVBoAJqIAVBiANqKQMANwMAIAUgBf0AA/gC/QsDkAIgBUEHNgLEAiAFIBE2AsACIAVByAJqIAVBwAJqEPsFIAUoAswCIQYgBSgCyAIiHEEDRgRAIAYhBAwcCyAcQQJGDRAgBSgC0AIhUCAFQcgCaiAFQcACahD7BSAFKALMAiEVIAUoAsgCIghBA0YEQCAVIQQMHAsgCEECRg0RIAUoAsQCIi1FDRIgBSgCwAIiECgCBCIPQQRJBEAgBUKBygA3A8gCIAVByAJqEJ8NIQQMHAsgBSgC0AIhUSAQIA9BBGsiFzYCBCAQIBAoAgAiBEEEajYCAAJ/AkAgLUEBRwRAAkACQCAXQQRJDQAgBCgAACFSIBAgD0EIayIXNgIEIBAgBEEIajYCACAXQQRJDQAgBCgABCFTIBAgD0EMayIXNgIEIBAgBEEMajYCACAXQQRPDQELIAVBADoAywIgBUElOwDJAiAFQQA2AswCIAVBAToAyAIgBUHIAmoQnw0hBAwfCyAENQAIIWcgECAPQRBrIhg2AgQgECAEQRBqNgIAIC1BAkYNHCAENQAMIWkgBSAtQQNrIlQ2AsQCAn8gGEEHTQRAIAVCgcoANwPIAkEBIQ8gBUHIAmoQnw0MAQsgECAPQRhrIhg2AgQgECAEQRhqNgIAIAVBuAFqIAQpABAQqAggBSgCuAEhDyAFKAK8AQshBCAPQQFxDR4gBEUNAUGAgAEgBCAEQYCAAU8bIg9BBnQiF0EQEJEOIipFDRZBACEXIAVBADYC0AIgBSAqNgLMAiAFIA82AsgCIBAoAgAhVUEAISoDQCAYQQRJDRggECAYQQRrIg82AgQgECAXIFVqIh5BBGoiGDYCACAPQQRJDRggHigAACFWIBAgD0EEayIPNgIEIBAgGEEEaiIeNgIAIA9BBEkNGCAYNQAAIW4gECAPQQRrIg82AgQgECAeQQRqIhg2AgAgD0EESQ0ZIB41AAAhbyAQIA9BBGsiDzYCBCAQIBhBBGoiHjYCACAPQQRJDRogGCoAACGAASAQIA9BBGsiDzYCBCAQIB5BBGoiGDYCACAPQQRJDRsgHioAACGBASAQIA9BBGsiDzYCBCAQIBhBBGoiHjYCACAPQQRJDRwgGCoAACGCASAQIA9BBGsiDzYCBCAQIB5BBGoiGDYCACAPQQRJDRwgHigAACFXIBAgD0EEayIPNgIEIBAgGEEEaiIeNgIAIA9BBEkNHCAYNQAAIXAgECAPQQRrIg82AgQgECAeQQRqIhg2AgACQCAPQQRPBEAgHjUAACFxIBAgD0EEayIPNgIEIBAgGEEEaiIeNgIAIA9BBE8EQCAYKAAAIVggECAPQQRrIg82AgQgECAeQQRqIhg2AgAgD0EDSw0CCyAFQQA6APsCIAVBJTsA+QIgBUEANgL8AiAFQQE6APgCDCALIAVBADoA+wIgBUElOwD5AiAFQQA2AvwCIAVBAToA+AIMHwsgHigAACFZIBAgD0EEayIPNgIEIBAgGEEEaiIeNgIAIA9BA00EQCAFQQA6APsCIAVBJTsA+QIgBUEANgL8AiAFQQE6APgCDB8LIBgoAAAhWiAQIA9BBGsiDzYCBCAQIB5BBGoiGDYCACAPQQNNBEAgBUEAOgD7AiAFQSU7APkCIAVBADYC/AIgBUEBOgD4AgwfCyAeKAAAIVsgECAPQQRrIg82AgQgECAYQQRqIh42AgAgD0EDTQRAIAVCgcoANwP4AgwfCyAYKAAAIVwgECAPQQRrIg82AgQgECAeQQRqIis2AgAgD0EDTQRAIAVBADoA+wIgBUElOwD5AiAFQQA2AvwCIAVBAToA+AIMHwsgb0IghiBuhCFuIHFCIIYgcIQhbyAeKAAAIR4gECAPQQRrIhg2AgQgECArQQRqNgIAICsoAAAhKyAFKALIAiAqRgRAIAVByAJqQdStwQAQwQgLIAUoAswCIBdqIg8gVjYCACAPQTxqICs2AgAgD0E4aiAeNgIAIA9BNGogXDYCACAPQTBqIFs2AgAgD0EsaiBaNgIAIA9BKGogWTYCACAPQSRqIFg2AgAgD0EcaiBvNwIAIA9BGGogVzYCACAPQRRqIIIBOAIAIA9BEGoggQE4AgAgD0EMaiCAATgCACAPQQRqIG43AgAgBSAqQQFqIio2AtACIBdBQGshFyAEICpHDQALIAUoAswCIgQgBSgCyAIiF0GCgICAeE4NAhoMHgtBA0HUs8EAQZCtwQAQqAohBAwdC0EAIRdBACEqQRALIQ8CfwJAIFQEQCAQKAIEIhhBAkkEQCAFQoHKADcDyAIgBUHIAmoQnw0MAwsgECAYQQJrIh42AgQgECAQKAIAIgRBAmo2AgAgLUEERg0BIB5BA0sNBCAFQoHKADcDyAIgBUHIAmoQnw0MAgtBBUHUs8EAQZCtwQAQqAoMAQtBBkHUs8EAQZCtwQAQqAoLIQQgFwRAIA8gF0EGdEEQEOgOCwwbCyAFQQA6AMsCIAVBJTsAyQIgBUEANgLMAiAFQQE6AMgCIAVByAJqEJ8NIQQMGgsgZEIghiBjhCFjIGVCIIYgbIQhbCBpQiCGIGeEIWUgBC8AACEeIBAgBEEGajYCACAQIBhBBms2AgQgBUGAAmoiKyAFQbACav0AAwD9CwMAIAVB6AFqIhAgBUGYAmr9AAMA/QsDACAFIAUpA6gCNwP4ASAFIAUpA5ACNwPgASAEKAACIRggBSgC3AEiLSAFKALUAUYEQCAFQdQBakHUrcEAEJcICyAFKALYASAtQagBbGoiBCATNgIEIAQgCjYCACAEIAUpA/gBNwIIIAQgBzYCJCAEIA42AiAgBCAFKQPgATcCKCAEIE82AqQBIAQgTjYCoAEgBCBsNwKYASAEIE02ApQBIAQgYzcCjAEgBCA4NgKIASAEIBY2AoQBIAQgEjYCgAEgBCANNgJ8IAQgHjsBeCAEIBg2AnQgBCBlNwJsIAQgUzYCaCAEIFI2AmQgBCAqNgJgIAQgDzYCXCAEIBc2AlggBCBRNgJUIAQgFTYCUCAEIAg2AkwgBCBQNgJIIAQgBjYCRCAEIBw2AkAgBEEQaiAr/QADAP0LAgAgBEEwaiAQ/QADAP0LAgAgBSAtQQFqIhU2AtwBIAJBAWsiAg0ACyAFKALYASESIAUoAtQBIg9BgoCAgHhODRwMGwsgBUKBygA3A8gCIAVByAJqEJ8NCyECICJBgICAgHg2AgAgIiACNgIEDBsLAAsgBUEAOgD7AiAFQSU7APkCIAVBADYC/AIgBUEBOgD4AgwVCyAFQQA6APsCIAVBJTsA+QIgBUEANgL8AiAFQQE6APgCDBQLIAVBADoA+wIgBUElOwD5AiAFQQA2AvwCIAVBAToA+AIMEwsgBUKBygA3A/gCDBILIAVBADoA+wIgBUElOwD5AiAFQQA2AvwCIAVBAToA+AIMEQsgBUEAOgD7AiAFQSU7APkCIAVBADYC/AIgBUEBOgD4AgwQCyAFQQA6APsCIAVBJTsA+QIgBUEANgL8AiAFQQE6APgCDA8LIAVBADoA+wIgBUElOwD5AiAFQQA2AvwCIAVBAToA+AIMDgsgBUEAOgDLAiAFQSU7AMkCIAVBADYCzAIgBUEBOgDIAiAFQcgCahCfDSEEDAwLIAVCgcoANwPIAiAFQcgCahCfDSEEDAsLQQBB1LPBAEGQrcEAEKgKIQQMCgtBAUHUs8EAQZCtwQAQqAohBAwJC0ECQdSzwQBBkK3BABCoCiEEDAgLQRAgF0HErcEAENcNAAsgBUEAOgD7AiAFQSU7APkCIAVBADYC/AIgBUEBOgD4AgwFCyAFQQA6APsCIAVBJTsA+QIgBUEANgL8AiAFQQE6APgCDAQLIAVBADoA+wIgBUElOwD5AiAFQQA2AvwCIAVBAToA+AIMAwsgBUEAOgD7AiAFQSU7APkCIAVBADYC/AIgBUEBOgD4AgwCCyAFQQA6APsCIAVBJTsA+QIgBUEANgL8AiAFQQE6APgCDAELQQRB1LPBAEGQrcEAEKgKIQQMAQsgBUH4AmoQnw0hBCAFKALIAiICRQ0AIAUoAswCIAJBBnRBEBDoDgsgDQRAIBIgDUEGdEEEEOgOCyAEIRIMAQsgBUH4AmoQnw0hEiAFKALIAiICRQ0AIAUoAswCIAJBBnRBBBDoDgsgBSgC2AEhCCAFKALcASIVBEAgCEGAAWohAgNAIAJBBGsoAgAiBARAIAIoAgAgBEEGdEEEEOgOCyACQShrKAIAIgQEQCACQSRrKAIAIARBBnRBEBDoDgsgAkGoAWohAiAVQQFrIhUNAAsLIAUoAtQBIgJFDQAgCCACQagBbEEEEOgOCyAiQYCAgIB4NgIAICIgEjYCBAwBCwJAIBEoAgQiB0UEQCAFQoHKADcDyAIgBUHIAmoQnw0hAgwBCyARIAdBAWsiAjYCBCARIBEoAgAiBEEBajYCACAELQAAIipBAk8EQEEMQQQQkQ4iAkUNNiACICo6AAQgAkGCgICAeDYCAAwBCyACRQRAIAVCgcoANwPIAiAFQcgCahCfDSECDAELIBEgB0ECayICNgIEIBEgBEECajYCACAELQABIi1BAk8EQEEMQQQQkQ4iAkUNNiACIC06AAQgAkGCgICAeDYCAAwBCyACRQRAIAVCgcoANwPIAiAFQcgCahCfDSECDAELIBEgB0EDazYCBCARIARBA2o2AgBBACEXIAVBkAJqIQYCQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAELQACIg0OAgwAAQsgAkEETQRAIAVCgcoANwP4AiAFQfgCahCfDSECDBALIBEgB0EHayIONgIEIBEgBEEHajYCAEGHgICAeCENQgAhbAJAAkACQAJAIAQoAAMiFg4JAQINDAsKCQgOAAsgBUEBOgD4AiAFIBatNwOAAyAFQfgCakHwuMEAQZCtwQAQ7wohAgwSCyAFQQM2AqwCIAUgETYCqAIgBUH4AmogBUGoAmoQpQQgBSgC/AIhAiAFKAL4AiINQYGAgIB4Rg0RIA1BgICAgHhGDQUCQCAFKAKsAiIIBEAgBSgCgAMhHCAFIAhBAWs2AqwCIAUoAqgCIggoAgQiB0EESQ0DIAgoAgAhBCAIIAdBBGsiCjYCBCAIIARBBGo2AgAgCkEESQ0DIAQoAAAhGCAIIAdBCGsiCjYCBCAIIARBCGo2AgAgCkEESQ0DIAQoAAQhEyAIIAdBDGsiCjYCBCAIIARBDGo2AgACQCAKQQRJDQAgBCgACCEGIAggB0EQayIKNgIEIAggBEEQajYCACAKQQRJDQAgBCgADCEMIAggB0EUayIKNgIEIAggBEEUajYCACAKQQRPDQILIAVBADoA+wIgBUElOwD5AiAFQQA2AvwCIAVBAToA+AIgBUH4AmoQnw0hEAwSC0EBQbS5wQBBkK3BABCoCiEQDBELIAQ1ABAhYyAIIAdBGGs2AgQgCCAEQRhqNgIAIAQ1ABQhZCAFQfgCaiAFQagCahClBCAFKAL8AiEQIAUoAvgCIghBgYCAgHhGDRAgCEGAgICAeEcNBEECQbS5wQBBkK3BABCoCiEQDBALIA5FBEAgBUKBygA3A/gCIAVB+AJqEJ8NIQIMEQsgESAHQQhrIhA2AgQgESAEQQhqIg02AgACQCAELQAHIgZBAk8EQEEMQQQQkQ4iAkUNASACIAY6AAQgAkGCgICAeDYCAAwSCwJ/IA5BCE0EQCAFQoHKADcD+AJBASEEIAVB+AJqEJ8NDAELIBEgB0EQayIQNgIEIBEgBEEQaiINNgIAIAVBIGogBCkACBCoCCAFKAIgIQQgBSgCJAshAiAEQQFxDREgAkUNAyACQQ9PBH9Bf0GAICACIAJBgCBPG0EDdEH4/wNxQQduQQFrZ3ZBAWoFQQRBCEEQIAJBCEkbIAJBBEkbCyIIQQxsQQdqQfj/P3EiByAIQQhqIgRqIgpBCBCRDiIORQ1DIAcgDmohByAEBEAgB0H/ASAE/AsACyAFQQA2AoQDIAUgCEEBayIEIAhBA3ZBB2wgCEEJSRs2AoADIAUgBDYC/AIgBSAHNgL4AiAFQonZueKO076XCDcDiAMgBUGIA2ohHANAAkACQAJAIBBBA00EQCAFQoHKADcDqAIgBUGoAmoQnw0hAgwBCyARIBBBBGsiCDYCBCARIA1BBGo2AgAgCEEHTQRAIAVCgcoANwOoAiAFQagCahCfDSECDAELIA0oAAAhEyARIBBBDGsiCDYCBCARIA1BDGo2AgAgDSkABCJjQoCAgIAQWgRAIAVBAToAqAIgBSBjNwOwAiAFQagCaiAFQeABakGMrMEAEO8KIQIMAQsgCEUEQCAFQoHKADcDqAIgBUGoAmoQnw0hAgwBCyARIBBBDWsiEDYCBCARIA1BDWoiCDYCACANLQAMIhdBAkkNAUEMQQQQkQ4iAkUNAiACIBc6AAQgAkGCgICAeDYCAAsgBSgC/AIiCEUNFCAFKAL4AiAIQQxsQRNqQXhxIgRrIAQgCGpBCWpBCBDoDgwUCyATIAUpA4gDImSnc60iZULdofHLDH4gZEIgiCJkQrfTsIUMfoUgZUK307CFDH4gZELdofHLDH6FQiCIhSFkIAUoAoADRQRAIAVBEGogBUH4AmogHBD9AQsgAkEBayECIGOnIQwgBSgC/AIiDiBkp3EhFiBkQhmIImVC/wCDQoGChIiQoMCAAX4hZ0EAIQcgBSgC+AIhBEEAIQoDQAJ/AkACQAJAIAQgFmopAAAiZCBnhSJjQoGChIiQoMCAAX0gY0J/hYNCgIGChIiQoMCAf4MiY0IAUgRAA0AgEyAEIGN6p0EDdiAWaiAOcUF0bGoiGEEMaygCAEYNAiBjQgF9IGODImNCAFINAAsLIGRCgIGChIiQoMCAf4MhYyAKQQFHBEAgY1ANAyBjeqdBA3YgFmogDnEhDQtBASBjIGRCAYaDUA0DGiAEIA1qLAAAIhZBAE4EQCAEIAQpAwBCgIGChIiQoMCAf4N6p0EDdiINai0AACEWCyAEIA1qIGWnQf8AcSIHOgAAIAQgDUEIayAOcWpBCGogBzoAACAEIA1BdGxqIgRBDGsgEzYCACAEQQhrIAw2AgAgBEEEayAXOgAAIAUgBSgChANBAWo2AoQDIAUgBSgCgAMgFkEBcWs2AoADDAELIBhBBGsgFzoAACAYQQhrIAw2AgALIAghDSACDQQgBSgC/AIhCCAFKAL4AiIcRQRAIAghAgwXCyAFKAKMAyETIAUoAogDIRggBSgChAMhCiAFKAKAAyEQQYCAgIB4IQ0MEQtBAAshCiAWIAdBCGoiB2ogDnEhFgwACwALCwxGCwxFCyAFQQA6APsCIAVBJTsA+QIgBUEANgL8AiAFQQE6APgCIAVB+AJqEJ8NIRAMDgtBDEEEEJEOIgIEQCACIA02AgQgAkGEgICAeDYCAAwPCwxDC0HYzcEAIRxBACEKQYnZueJ+IRhBmPW7wQAhE0EAIRBBACEIQYCAgIB4IQ0MCAsgZEIghiBjhCFjIAUoAoADIQogBkEIdq1CKIYhbAwHC0EAQbS5wQBBkK3BABCoCiECDAsLIA5FBEAgBUKBygA3A/gCIAVB+AJqEJ8NIQIMCwsgESAHQQhrNgIEIBEgBEEIajYCACAELQAHIgZBAk8EQEEMQQQQkQ4iAkUNQCACIAY6AAQgAkGCgICAeDYCAAwLCwJ/IA5BCE0EQCAFQoHKADcD+AJBASEEIAVB+AJqEJ8NDAELIBEgB0EQazYCBCARIARBEGo2AgAgBUGwAWogBCkACBCoCCAFKAKwASEEIAUoArQBCyECIARBAXENCgJ/IAJFBEBB2M3BACEWQQAMAQsgAkEPTwR/QX9BgCAgAiACQYAgTxtBA3RB+P8DcUEHbkEBa2d2QQFqBUEEQQhBECACQQhJGyACQQRJGwsiBEEcbEEHakH4/z9xIg0gBEEIaiIHaiIQQQgQkQ4iCkUEQEEIIBBB+MrEACgCACIAQcwIIAAbEQAAAAsgCiANaiEWIAcEQCAWQf8BIAf8CwALIARBAWsiFyAEQQN2QQdsIARBCUkbCyEEIAVBADYChAMgBSAENgKAAyAFIBc2AvwCIAUgFjYC+AIgBUKJ2bnijtO+lwg3A4gDIAVBsQJqIR4gBUGIA2ohKwNAAkACfyACRQRAQQIhDUEADAELAkACfwJAAkAgESgCBCIHQQRJDQAgESgCACEEIBEgB0EEayINNgIEIBEgBEEEajYCACANQQRJDQAgBCgAACEQIBEgB0EIayINNgIEIBEgBEEIajYCACANQQRJDQAgBCgABCEcIBEgB0EMayINNgIEIBEgBEEMajYCACANQQNLDQELIAVCgcoANwOoAiAFQagCahCfDQwBCyAEKAAIIRggESAHQRBrNgIEIBEgBEEQajYCACAEKAAMIRMgBUGoAmogERDzBSAFLQCwAiINQQJHDQEgBSgCqAILIQIgBSgC/AIiCEUNDiAFKAL4AiAIQRxsQSNqQXhxIgRrIAQgCGpBCWpBCBDoDgwOCyAFQdYBaiAeQQJqLQAAOgAAIAUgHi8AADsB1AEgBSkDqAIhZCACQQFrCyECIAVB4gFqIjggBUHWAWotAAA6AAAgBSAFLwHUATsB4AEgDUECRg0AIAUpA4gDQoSAgIAQhSJjQv////8PgyJlIBBB3aHxy3xzrSJnfiBjQiCIImMgHEG307CFfHOtIml+hSBlIGl+IGMgZ36FQiCJhSAYrSATrUIghoQiZ4UiY0IgiCJlQrfTsIUMfiBjQv////8PgyJjQt2h8csMfoUgZULdofHLDH4gY0K307CFDH6FQiCIhSFjIAUoAoADRQRAIAVBoAFqIAVB+AJqICsQ4QELIAUoAvwCIgwgY6dxIRcgY0IZiCJpQv8Ag0KBgoSIkKDAgAF+IW5BACEEIAUoAvgCIQpBACEOA0ACfwJAAkACQCAKIBdqKQAAImUgboUiY0KBgoSIkKDAgAF9IGNCf4WDQoCBgoSIkKDAgH+DImNCAFIEQANAAkAgCkEAIGN6p0EDdiAXaiAMcWsiB0EcbGoiFkEcaygCACAQRw0AIBwgFkEYaygCAEcNACAWQRRrKAIAIBhHDQAgFkEQaygCACATRg0DCyBjQgF9IGODImNCAFINAAsLIGVCgIGChIiQoMCAf4MhYyAOQQFHBEAgY1ANAyBjeqdBA3YgF2ogDHEhCAtBASBjIGVCAYaDUA0DGiAIIApqLAAAIhdBAE4EQCAKIAopAwBCgIGChIiQoMCAf4N6p0EDdiIIai0AACEXCyAIIApqIGmnQf8AcSIEOgAAIAogCEEIayAMcWpBCGogBDoAACAKQQAgCGsiB0EcbGoiBEEcayAQNgIAIARBGGsgHDYCACAEQRRrIGc3AgAgBEEMayBkNwIAIARBBGsgDToAACAFIAUoAoQDQQFqNgKEAyAFIAUoAoADIBdBAXFrNgKAAwwBCyAWQQRrIA06AAAgFkEMayBkNwIACyAKIAdBHGxqQQNrIgQgBS8B4AE7AAAgBEECaiA4LQAAOgAADAQLQQALIQ4gFyAEQQhqIgRqIAxxIRcMAAsACwsgBSgC/AIhCCAFKAL4AiIcRQRAIAghAgwLCyAFKAKMAyETIAUoAogDIRggBSgChAMhCiAFKAKAAyEQQYaAgIB4IQ0MBQsgDkUEQCAFQoHKADcD+AIgBUH4AmoQnw0hAgwKCyARIAdBCGs2AgQgESAEQQhqNgIAAn8gBC0AByIGQQJPBEBBDEEEEJEOIgJFDUAgAiAGOgAEIAJBgoCAgHg2AgAMCwsCfyAOQQhNBEAgBUKBygA3A/gCQQEhBCAFQfgCahCfDQwBCyARIAdBEGs2AgQgESAEQRBqNgIAIAVBmAFqIAQpAAgQqAggBSgCmAEhBCAFKAKcAQshAiAEQQFxDQogAgRAIAJBD08Ef0F/QYAgIAIgAkGAIE8bQQN0Qfj/A3FBB25BAWtndkEBagVBBEEIQRAgAkEISRsgAkEESRsLIgRBGGxB+P8/cSINIARBCGoiB2oiCkEIEJEOIg5FDT0gDSAOaiENIAcEQCANQf8BIAf8CwALIAVBADYChAMgBSAEQQFrIgcgBEEDdkEHbCAEQQlJGzYCgAMgBSAHNgL8AiAFIA02AvgCIAVCidm54o7TvpcINwOIAyAFQbECaiETIAVBiANqIR4DQAJAAn8CQAJAIBEoAgQiB0EESQ0AIBEoAgAhBCARIAdBBGsiDTYCBCARIARBBGo2AgAgDUEESQ0AIAQoAAAhECARIAdBCGsiDTYCBCARIARBCGo2AgAgDUEDSw0BCyAFQoHKADcDqAIgBUGoAmoQnw0MAQsgBCgABCEWIBEgB0EMazYCBCARIARBDGo2AgAgBCgACCEcIAVBqAJqIBEQ8wUgBS0AsAIiDEECRw0BIAUoAqgCCyECIAUoAvwCIghFDQ0gBSgC+AIgCEFobGpBGGsgCEEZbEEhakEIEOgODA0LIAVB4gFqIisgE0ECai0AADoAACAFIBMvAAA7AeABIAUpA4gDQoOAgIAQhSJjQiCIImQgFq0iZUK307CFDIUiZ34gY0L/////D4MiYyAQQd2h8ct8c60iaX6FIGMgZ34gZCBpfoVCIImFImNC/////w+DIBytImSFImdC3aHxywx+IGNCIIgiY0K307CFDH6FIGdCt9OwhQx+IGNC3aHxywx+hUIgiIUhYyBkQiCGIWcgBSkDqAIhZCAFKAKAA0UEQCAFQYgBaiAFQfgCaiAeEO0BCyACQQFrIQIgZSBnhCFnIAUoAvwCIgcgY6dxIRcgY0IZiCJpQv8Ag0KBgoSIkKDAgAF+IW5BACEYIAUoAvgCIQRBACEOA0ACfwJAAkACQCAEIBdqKQAAImUgboUiY0KBgoSIkKDAgAF9IGNCf4WDQoCBgoSIkKDAgH+DImNCAFIEQANAAkAgBEEAIGN6p0EDdiAXaiAHcWsiCkEYbGoiDUEYaygCACAQRw0AIA1BFGsoAgAgFkcNACANQRBrKAIAIBxGDQMLIGNCAX0gY4MiY0IAUg0ACwsgZUKAgYKEiJCgwIB/gyFjIA5BAUcEQCBjUA0DIGN6p0EDdiAXaiAHcSEIC0EBIGMgZUIBhoNQDQMaIAQgCGosAAAiF0EATgRAIAQgBCkDAEKAgYKEiJCgwIB/g3qnQQN2IghqLQAAIRcLIAQgCGogaadB/wBxIg06AAAgBCAIQQhrIAdxakEIaiANOgAAIARBACAIayIKQRhsaiIHQRhrIBA2AgAgB0EUayBnNwIAIAdBDGsgZDcCACAHQQRrIAw6AAAgBSAFKAKEA0EBajYChAMgBSAFKAKAAyAXQQFxazYCgAMMAQsgDUEEayAMOgAAIA1BDGsgZDcCAAsgBCAKQRhsakEDayIEIAUvAeABOwAAIARBAmogKy0AADoAACACDQMgBSgC/AIhCCAFKAL4AiIcRQRAIAghAgwQCyAFKAKMAyETIAUoAogDIRggBSgCgAMhECAFKAKEAwwFC0EACyEOIBcgGEEIaiIYaiAHcSEXDAALAAsAC0HYzcEAIRxBmPW7wQAhE0GJ2bnifiEYQQAhCEEAIRBBAAshCkGFgICAeCENDAQLIA5FBEAgBUKBygA3A/gCIAVB+AJqEJ8NIQIMCQsgESAHQQhrNgIEIBEgBEEIajYCACAELQAHIgZBAk8EQEEMQQQQkQ4iAkUNPiACIAY6AAQgAkGCgICAeDYCAAwJCwJ/IA5BCE0EQCAFQoHKADcD+AJBASEEIAVB+AJqEJ8NDAELIBEgB0EQazYCBCARIARBEGo2AgAgBUGAAWogBCkACBCoCCAFKAKAASEEIAUoAoQBCyECIARBAXENCCACBEAgAkEPTwR/QX9BgCAgAiACQYAgTxtBA3RB+P8DcUEHbkEBa2d2QQFqBUEEQQhBECACQQhJGyACQQRJGwsiCEEUbEEHakH4/z9xIgcgCEEIaiIEaiINQQgQkQ4iCkUEQEEIIA1B+MrEACgCACIAQcwIIAAbEQAAAAsgByAKaiEHIAQEQCAHQf8BIAT8CwALIAVBADYChAMgBSAIQQFrIgQgCEEDdkEHbCAIQQlJGzYCgAMgBSAENgL8AiAFIAc2AvgCIAVCidm54o7TvpcINwOIAyAFQbECaiETIAVBiANqIRgDQAJAAn8CQCARKAIEIgRBBE8EQCARKAIAIQggESAEQQRrIgc2AgQgESAIQQRqNgIAIAdBA0sNAQsgBUKBygA3A6gCIAVBqAJqEJ8NDAELIAgoAAAhDSARIARBCGs2AgQgESAIQQhqNgIAIAgoAAQhCiAFQagCaiAREPMFIAUtALACIhdBAkcNASAFKAKoAgshAiAFKAL8AiIIRQ0LIAUoAvgCIAhBFGxBG2pBeHEiBGsgBCAIakEJakEIEOgODAsLIAVB4gFqIh4gE0ECai0AADoAACAFIBMvAAA7AeABIAUpA4gDQoKAgIAQhSJjQiCIImQgCkG307CFfHOtImV+IGNC/////w+DImMgDUHdofHLfHOtImd+hSBjIGV+IGQgZ36FQiCIhSFjIAUpA6gCIWQgBSgCgANFBEAgBUHwAGogBUH4AmogGBD4AQsgAkEBayECIAUoAvwCIgQgY6dxIRYgY0IZiCJnQv8Ag0KBgoSIkKDAgAF+IWlBACEOIAUoAvgCIQhBACEHA0ACfwJAAkACQCAIIBZqKQAAImUgaYUiY0KBgoSIkKDAgAF9IGNCf4WDQoCBgoSIkKDAgH+DImNCAFIEQANAIAhBACBjeqdBA3YgFmogBHFrIgxBFGxqIhBBFGsoAgAgDUYEQCAKIBBBEGsoAgBGDQMLIGNCAX0gY4MiY0IAUg0ACwsgZUKAgYKEiJCgwIB/gyFjIAdBAUcEQCBjUA0DIGN6p0EDdiAWaiAEcSEcC0EBIGMgZUIBhoNQDQMaIAggHGosAAAiEEEATgRAIAggCCkDAEKAgYKEiJCgwIB/g3qnQQN2IhxqLQAAIRALIAggHGogZ6dB/wBxIgc6AAAgCCAcQQhrIARxakEIaiAHOgAAIAhBACAcayIMQRRsaiIEQRRrIA02AgAgBEEQayAKNgIAIARBDGsgZDcCACAEQQRrIBc6AAAgBSAFKAKEA0EBajYChAMgBSAFKAKAAyAQQQFxazYCgAMMAQsgEEEEayAXOgAAIBBBDGsgZDcCAAsgCCAMQRRsakEDayIIIAUvAeABOwAAIAhBAmogHi0AADoAACACDQMgBSgC/AIhCCAFKAL4AiIcRQRAIAghAgwOCyAFKAKMAyETIAUoAogDIRggBSgChAMhCiAFKAKAAyEQQYSAgIB4IQ0MCAtBAAshByAOQQhqIg4gFmogBHEhFgwACwALAAtB2M3BACEcQZj1u8EAIRNBidm54n4hGEEAIRBBACEKQQAhCEGEgICAeCENDAMLIA5FBEAgBUKBygA3A/gCIAVB+AJqEJ8NIQIMCAsgESAHQQhrIhA2AgQgESAEQQhqIg02AgAgBC0AByIGQQJPBEBBDEEEEJEOIgJFDT0gAiAGOgAEIAJBgoCAgHg2AgAMCAsCfyAOQQhNBEAgBUKBygA3A/gCQQEhBCAFQfgCahCfDQwBCyARIAdBEGsiEDYCBCARIARBEGoiDTYCACAFQegAaiAEKQAIEKgIIAUoAmghBCAFKAJsCyECIARBAXENByACBEAgAkEPTwR/QX9BgCAgAiACQYAgTxtBA3RB+P8DcUEHbkEBa2d2QQFqBUEEQQhBECACQQhJGyACQQRJGwsiCEEMbEEHakH4/z9xIgcgCEEIaiIEaiIKQQgQkQ4iDkUNOiAHIA5qIQcgBARAIAdB/wEgBPwLAAsgBUEANgKEAyAFIAhBAWsiBCAIQQN2QQdsIAhBCUkbNgKAAyAFIAQ2AvwCIAUgBzYC+AIgBUKJ2bnijtO+lwg3A4gDIAVBiANqIRwDQAJAAkACQCAQQQNNBEAgBUKBygA3A6gCIAVBqAJqEJ8NIQIMAQsgESAQQQRrIgg2AgQgESANQQRqNgIAIAhBB00EQCAFQoHKADcDqAIgBUGoAmoQnw0hAgwBCyANKAAAIRMgESAQQQxrIgg2AgQgESANQQxqNgIAIA0pAAQiY0KAgICAEFoEQCAFQQE6AKgCIAUgYzcDsAIgBUGoAmogBUHgAWpBjKzBABDvCiECDAELIAhFBEAgBUKBygA3A6gCIAVBqAJqEJ8NIQIMAQsgESAQQQ1rIhA2AgQgESANQQ1qIgg2AgAgDS0ADCIXQQJJDQFBDEEEEJEOIgJFDQIgAiAXOgAEIAJBgoCAgHg2AgALIAUoAvwCIghFDQsgBSgC+AIgCEEMbEETakF4cSIEayAEIAhqQQlqQQgQ6A4MCwsgEyAFKQOIAyJkp3OtImVC3aHxywx+IGRCIIgiZEK307CFDH6FIGVCt9OwhQx+IGRC3aHxywx+hUIgiIUhZCAFKAKAA0UEQCAFQdgAaiAFQfgCaiAcEP0BCyACQQFrIQIgY6chDCAFKAL8AiIOIGSncSEWIGRCGYgiZUL/AINCgYKEiJCgwIABfiFnQQAhByAFKAL4AiEEQQAhCgNAAn8CQAJAAkAgBCAWaikAACJkIGeFImNCgYKEiJCgwIABfSBjQn+Fg0KAgYKEiJCgwIB/gyJjQgBSBEADQCATIAQgY3qnQQN2IBZqIA5xQXRsaiIYQQxrKAIARg0CIGNCAX0gY4MiY0IAUg0ACwsgZEKAgYKEiJCgwIB/gyFjIApBAUcEQCBjUA0DIGN6p0EDdiAWaiAOcSENC0EBIGMgZEIBhoNQDQMaIAQgDWosAAAiFkEATgRAIAQgBCkDAEKAgYKEiJCgwIB/g3qnQQN2Ig1qLQAAIRYLIAQgDWogZadB/wBxIgc6AAAgBCANQQhrIA5xakEIaiAHOgAAIAQgDUF0bGoiBEEMayATNgIAIARBCGsgDDYCACAEQQRrIBc6AAAgBSAFKAKEA0EBajYChAMgBSAFKAKAAyAWQQFxazYCgAMMAQsgGEEEayAXOgAAIBhBCGsgDDYCAAsgCCENIAINBCAFKAL8AiEIIAUoAvgCIhxFBEAgCCECDA4LIAUoAowDIRMgBSgCiAMhGCAFKAKEAyEKIAUoAoADIRBBg4CAgHghDQwIC0EACyEKIBYgB0EIaiIHaiAOcSEWDAALAAsLDD0LQdjNwQAhHEGY9bvBACETQYnZueJ+IRhBACEQQQAhCkEAIQhBg4CAgHghDQwCCyAORQRAIAVCgcoANwP4AiAFQfgCahCfDSECDAcLIBEgB0EIayIQNgIEIBEgBEEIaiINNgIAIAQtAAciBkECTwRAQQxBBBCRDiICRQ08IAIgBjoABCACQYKAgIB4NgIADAcLAn8gDkEITQRAIAVCgcoANwP4AkEBIQQgBUH4AmoQnw0MAQsgESAHQRBrIhA2AgQgESAEQRBqIg02AgAgBUHQAGogBCkACBCoCCAFKAJQIQQgBSgCVAshAiAEQQFxDQYCQCACBEAgAkEPTwR/QX9BgCAgAiACQYAgTxtBA3RB+P8DcUEHbkEBa2d2QQFqBUEEQQhBECACQQhJGyACQQRJGwsiBEEEdEHw/z9xIgogBEEIaiIHaiIIQQgQkQ4iDkUNCyAKIA5qIQogBwRAIApB/wEgB/wLAAsgBUEANgKEAyAFIARBAWsiByAEQQN2QQdsIARBCUkbNgKAAyAFIAc2AvwCIAUgCjYC+AIgBUKJ2bnijtO+lwg3A4gDAkADQCAQQQRJDQEgESAQQQRrIgQ2AgQgESANQQRqNgIAIARBBEkEQCAFQoHKADcDqAIgBUGoAmoQnw0hAgwECyANKAAAIQogESAQQQhrIgQ2AgQgESANQQhqNgIAIARBB00EQCAFQoHKADcDqAIgBUGoAmoQnw0hAgwECyANKAAEIRMgESAQQRBrIgQ2AgQgESANQRBqNgIAIA0pAAgiY0KAgICAEFoEQCAFQQE6AKgCIAUgYzcDsAIgBUGoAmogBUHgAWpBjKzBABDvCiECDAQLIARFBEAgBUKBygA3A6gCIAVBqAJqEJ8NIQIMBAsgESAQQRFrIhA2AgQgESANQRFqIgw2AgACQCANLQAQIhdBAk8EQEEMQQQQkQ4iAkUNASACIBc6AAQgAkGCgICAeDYCAAwFCyAFKQOIAyAKrSATrUIghoSFImRCIIgiZUK307CFDH4gZEL/////D4MiZELdofHLDH6FIGVC3aHxywx+IGRCt9OwhQx+hUIgiIUhZCAFKAKAA0UEQCAFQUBrIAVB+AJqIgQgBEEQahCKAgsgAkEBayECIGOnIRwgBSgC/AIiDSBkp3EhFiBkQhmIImVC/wCDQoGChIiQoMCAAX4hZ0EAIQ4gBSgC+AIhBEEAIQcDQAJ/AkACQAJAIAQgFmopAAAiZCBnhSJjQoGChIiQoMCAAX0gY0J/hYNCgIGChIiQoMCAf4MiY0IAUgRAA0AgBCBjeqdBA3YgFmogDXFBBHRrIhhBEGsoAgAgCkYEQCATIBhBDGsoAgBGDQMLIGNCAX0gY4MiY0IAUg0ACwsgZEKAgYKEiJCgwIB/gyFjIAdBAUcEQCBjUA0DIGN6p0EDdiAWaiANcSEIC0EBIGMgZEIBhoNQDQMaIAQgCGosAAAiFkEATgRAIAQgBCkDAEKAgYKEiJCgwIB/g3qnQQN2IghqLQAAIRYLIAQgCGogZadB/wBxIgc6AAAgBCAIQQhrIA1xakEIaiAHOgAAIAQgCEEEdGsiBEEQayAKNgIAIARBDGsgEzYCACAEQQhrIBw2AgAgBEEEayAXOgAAIAUgBSgChANBAWo2AoQDIAUgBSgCgAMgFkEBcWs2AoADDAELIBhBBGsgFzoAACAYQQhrIBw2AgALIAwhDSACDQQgBSgC/AIhCCAFKAL4AiIcRQRAIAghAgwPCyAFKAKMAyETIAUoAogDIRggBSgChAMhCiAFKAKAAyEQQYKAgIB4IQ0MCQtBAAshByAOQQhqIg4gFmogDXEhFgwACwALCww+CyAFQoHKADcDqAIgBUGoAmoQnw0hAgwBC0HYzcEAIRxBmPW7wQAhE0GJ2bnifiEYQQAhEEEAIQpBACEIQYKAgIB4IQ0MAgsgBSgC/AIiCEUNBiAFKAL4AiAIQQR0a0EQayAIQRFsQRlqQQgQ6A4MBgsgDkUEQCAFQoHKADcD+AIgBUH4AmoQnw0hAgwGCyARIAdBCGsiEDYCBCARIARBCGoiDTYCACAELQAHIgZBAk8EQEEMQQQQkQ4iAkUNOyACIAY6AAQgAkGCgICAeDYCAAwGCwJ/IA5BCE0EQCAFQoHKADcD+AJBASEEIAVB+AJqEJ8NDAELIBEgB0EQayIQNgIEIBEgBEEQaiINNgIAIAVBOGogBCkACBCoCCAFKAI4IQQgBSgCPAshAiAEQQFxDQUgAgRAIAJBD08Ef0F/QYAgIAIgAkGAIE8bQQN0Qfj/A3FBB25BAWtndkEBagVBBEEIQRAgAkEISRsgAkEESRsLIgRBBHRB8P8/cSIKIARBCGoiB2oiCEEIEJEOIg5FDQkgCiAOaiEKIAcEQCAKQf8BIAf8CwALIAVBADYChAMgBSAEQQFrIgcgBEEDdkEHbCAEQQlJGzYCgAMgBSAHNgL8AiAFIAo2AvgCIAVCidm54o7TvpcINwOIAwJAA0AgEEEESQ0BIBEgEEEEayIENgIEIBEgDUEEajYCACAEQQRJBEAgBUKBygA3A6gCIAVBqAJqEJ8NIQIMBwsgDSgAACEKIBEgEEEIayIENgIEIBEgDUEIajYCACAEQQdNBEAgBUKBygA3A6gCIAVBqAJqEJ8NIQIMBwsgDSgABCETIBEgEEEQayIENgIEIBEgDUEQajYCACANKQAIImNCgICAgBBaBEAgBUEBOgCoAiAFIGM3A7ACIAVBqAJqIAVB4AFqQYyswQAQ7wohAgwHCyAERQRAIAVCgcoANwOoAiAFQagCahCfDSECDAcLIBEgEEERayIQNgIEIBEgDUERaiIMNgIAAkAgDS0AECIXQQJPBEBBDEEEEJEOIgJFDQEgAiAXOgAEIAJBgoCAgHg2AgAMCAsgBSkDiAMgCq0gE61CIIaEhSJkQiCIImVCt9OwhQx+IGRC/////w+DImRC3aHxywx+hSBlQt2h8csMfiBkQrfTsIUMfoVCIIiFIWQgBSgCgANFBEAgBUEoaiAFQfgCaiIEIARBEGoQigILIAJBAWshAiBjpyEcIAUoAvwCIg0gZKdxIRYgZEIZiCJlQv8Ag0KBgoSIkKDAgAF+IWdBACEOIAUoAvgCIQRBACEHA0ACfwJAAkACQCAEIBZqKQAAImQgZ4UiY0KBgoSIkKDAgAF9IGNCf4WDQoCBgoSIkKDAgH+DImNCAFIEQANAIAQgY3qnQQN2IBZqIA1xQQR0ayIYQRBrKAIAIApGBEAgEyAYQQxrKAIARg0DCyBjQgF9IGODImNCAFINAAsLIGRCgIGChIiQoMCAf4MhYyAHQQFHBEAgY1ANAyBjeqdBA3YgFmogDXEhCAtBASBjIGRCAYaDUA0DGiAEIAhqLAAAIhZBAE4EQCAEIAQpAwBCgIGChIiQoMCAf4N6p0EDdiIIai0AACEWCyAEIAhqIGWnQf8AcSIHOgAAIAQgCEEIayANcWpBCGogBzoAACAEIAhBBHRrIgRBEGsgCjYCACAEQQxrIBM2AgAgBEEIayAcNgIAIARBBGsgFzoAACAFIAUoAoQDQQFqNgKEAyAFIAUoAoADIBZBAXFrNgKAAwwBCyAYQQRrIBc6AAAgGEEIayAcNgIACyAMIQ0gAg0EIAUoAvwCIQggBSgC+AIiHEUEQCAIIQIMDQsgBSgCjAMhEyAFKAKIAyEYIAUoAoQDIQogBSgCgAMhEEGBgICAeCENDAcLQQALIQcgDkEIaiIOIBZqIA1xIRYMAAsACwsMPAsgBUKBygA3A6gCIAVBqAJqEJ8NIQIMBAtB2M3BACEcQZj1u8EAIRNBACEKQYnZueJ+IRhBACEQQQAhCEGBgICAeCENCyAFIGM3A/ACIAUgDDYC7AIgBSAYNgLgAiAFIAo2AtwCIAUgEDYC2AIgBSAINgLUAiAFIBw2AtACIAUgAjYCzAIgBSANNgLIAiAFIBOtIAatQv8Bg0IghiBshIQ3AuQCIAVBCGohBEEAIQdBACEIAkACQAJAAkACQAJAAkACQAJAAkACQCAFQcgCaiICKAIAIg1B/////wdrIA1BH3VxQQFrDggBAgMEBQYHCAALQTBBBBCRDiIHRQ1CIAcgAv0AAgD9CwIAIAdBIGogAkEgav0AAgD9CwIAIAdBEGogAkEQav0AAgD9CwIAQYSAwwAhCAwHC0EgQQgQkQ4iB0UNByAHIAL9AAMI/QsDACAHQRBqIAJBGGr9AAMA/QsDAEHg/sIAIQgMBgtBIEEIEJEOIgdFDQYgByAC/QADCP0LAwAgB0EQaiACQRhq/QADAP0LAwBBsPrCACEIDAULQSBBCBCRDiIHRQ0FIAcgAv0AAwj9CwMAIAdBEGogAkEYav0AAwD9CwMAQaz3wgAhCAwEC0EgQQgQkQ4iB0UNBCAHIAL9AAMI/QsDACAHQRBqIAJBGGr9AAMA/QsDAEHo+MIAIQgMAwtBIEEIEJEOIgdFDQMgByAC/QADCP0LAwAgB0EQaiACQRhq/QADAP0LAwBBzIbDACEIDAILQSBBCBCRDiIHRQ0CIAcgAv0AAwj9CwMAIAdBEGogAkEYav0AAwD9CwMAQciBwwAhCAwBC0EgQQgQkQ4iBwRAIAcgAv0AAwj9CwMAIAdBEGogAkEYav0AAwD9CwMAQZiGwwAhCAwBCwwBCyAEIAg2AgQgBCAHNgIADAELQQhBIEH4ysQAKAIAIgBBzAggABsRAAAACyAFKAIMIRcgBSgCCCEEQSBBARCRDiIIRQ0BIAhBEGpB/KvBAP0AAAD9CwAAIAhB7KvBAP0AAAD9CwAAQQxBBBCRDiICRQ05IAJBIDYCCCACIAg2AgQgAkEgNgIAIARFDQQgAhDNCSAFIAQ2ApACIAVB+AFqIQYLIAYgFzYCACAFKAKQAiECIAUoAvgBIQggIiAtOgAlICIgKjoAJCAiIAg2AiAgIiACNgIcICIgTDYCGCAiIEs2AhQgIiA3NgIQICIgMzYCDCAiIBU2AgggIiASNgIEICIgDzYCAAwEC0EBQSBB/L7BABDXDQALIAUoAvwCIghFDQEgBSgC+AIgCEEEdGtBEGsgCEERbEEZakEIEOgODAELIA1FBEAgECECDAELIAIgDUECdEEEEOgOIBAhAgsgIkGAgICAeDYCACAiIAI2AgQgFQRAIBJBgAFqIQIDQCACQQRrKAIAIggEQCACKAIAIAhBBnRBBBDoDgsgAkEoaygCACIIBEAgAkEkaygCACAIQQZ0QRAQ6A4LIAJBqAFqIQIgFUEBayIVDQALCyAPRQ0AIBIgD0GoAWxBBBDoDgsgBUGQA2okAAwCCwALQQggCEH4ysQAKAIAIgBBzAggABsRAAAACyADKAKUDCECAkAgAygCkAwiB0GAgICAeEcEQCAvIDD9AAIA/QsCACAvQRBqIgogMEEQav0AAgD9CwIAIAMgAjYC9AIgAyAHNgLwAgJ/IBEoAgQiBEEDTQRAIANCgcoANwOQDCAiEJ8NDAELIBEgBEEEayINNgIEIBEgESgCACIIQQRqNgIAIA1BA00EQCADQoHKADcDkAwgA0GQDGoQnw0MAQsgCCgAACENIBEgBEEIayIONgIEIBEgCEEIajYCACAOQQNNBEAgA0KBygA3A5AMIANBkAxqEJ8NDAELIAgoAAQhFSARIARBDGsiDjYCBCARIAhBDGo2AgAgDkEDSw0CIANCgcoANwOQDCADQZAMahCfDQshAiADQfACahDHCAsgAygCtAkhCSADKAK4CSIIBEAgCSEBA0AgARDHCCABQThqIQEgCEEBayIIDQALCyADKAKwCSIBRQ0EIAkgAUE4bEEEEOgODAQLIAgoAAghDiARIARBEGs2AgQgESAIQRBqNgIAIAgoAAwhECADQagKaiISIAr9AAIA/QsDACADIC/9AAIA/QsDmAogAygCuAkiBCADKAKwCUYEQCADQbAJakHUrcEAEJoICyADKAK0CSAEQThsaiIIIAI2AgQgCCAHNgIAIAggEDYCNCAIIA42AjAgCCAVNgIsIAggDTYCKCAIIAP9AAOYCv0LAgggCEEYaiAS/QADAP0LAgAgAyAEQQFqIg42ArgJIAlBAWsiCQ0ACyADKAK0CSECIAMoArAJIghBgoCAgHhIDQIgGkGAgICAeGsOAgMhBQtBAEHIscEAQZCtwQAQqAohCwwgC0EBQcixwQBBkK3BABCoCiECCyAaBEAgCyAaQQR0QQQQ6A4LIAIhCwweC0EAQYC2wQBBkK3BABCoCiELDB0LQQQhAkEAIQ5BACEICyADQQI2ApwKIAMgATYCmAogA0GQDGoiByADQZgKahDtAiADKAKUDCEJIAMoApAMIgZBgYCAgHhGDRoCQAJAAkACQAJAIAZBgICAgHhHBEAgAygCnApFDQEgAygCmAwhFgJ/IAMoApgKIgQoAgQiE0EHTQRAIANCgcoANwOQDEEBIQwgBxCfDQwBCyAEIBNBCGsiEzYCBCAEIAQoAgAiB0EIajYCACADQRBqIAcpAAAQqAggAygCECEMIAMoAhQLIQcgDEEBcQ0CIAdFDQRBzJkDIAcgB0HMmQNPGyIUQRRsIg1BBBCRDiIKRQ0GQQAhFSADQQA2ApgMIAMgCjYClAwgAyAUNgKQDCAEKAIAIQ1BACEPA0ACQAJAIBNFBEAgA0KBygA3A/ACIANB8AJqEJ8NIQcMAQsgBCATQQFrIhQ2AgQgBCANQQFqIgo2AgAgDS0AACISQQJPBEBBDEEEEJEOIgdFDTMgByASOgAEIAdBgoCAgHg2AgAMAQsgFEUEQCADQoHKADcD8AIgA0HwAmoQnw0hBwwBCyAEIBRBAWsiFDYCBCAEIApBAWoiDTYCACAKLQAAIhBBAk8EQEEMQQQQkQ4iB0UNMyAHIBA6AAQgB0GCgICAeDYCAAwBCyAUQQNNBEAgA0KBygA3A/ACIANB8AJqEJ8NIQcMAQsgBCAUQQRrIgo2AgQgBCANQQRqIgw2AgAgCkEDTQRAIANCgcoANwPwAiADQfACahCfDSEHDAELIA0oAAAhFCAEIApBBGsiDTYCBCAEIAxBBGoiCjYCACANQQNNBEAgA0KBygA3A/ACIANB8AJqEJ8NIQcMAQsgDCgAACElIAQgDUEEayINNgIEIAQgCkEEaiIMNgIAIA1BA0sNASADQoHKADcD8AIgA0HwAmoQnw0hBwsgAygCkAwiAUUNBCADKAKUDCABQRRsQQQQ6A4MBAsgCigAACEdIAQgDUEEayITNgIEIAQgDEEEaiINNgIAIAwoAAAhDCADKAKQDCAPRgRAIANBkAxqQdStwQAQlAgLIAMoApQMIBVqIgogFDYCACAKQRFqIBA6AAAgCkEQaiASOgAAIApBDGogDDYCACAKQQhqIB02AgAgCkEEaiAlNgIAIAMgD0EBaiIPNgKYDCAVQRRqIRUgByAPRw0ACyADKAKUDCEHIAMoApAMIgRBgoCAgHhIDQIgBkGAgICAeGsOAgMgBQtBAEHIscEAQZCtwQAQqAohCQwfC0EBQcixwQBBkK3BABCoCiEHCyAGBEAgCSAGQQR0QQQQ6A4LIAchCQwdC0EAQYC2wQBBkK3BABCoCiEJDBwLQQQhB0EAIQ9BACEECwJ/IAEoAgQiE0EHTQRAIANCgcoANwOQDEEBIQwgA0GQDGoQnw0MAQsgASATQQhrIhM2AgQgASABKAIAIgpBCGo2AgAgA0EIaiAKKQAAEKgIIAMoAgghDCADKAIMCyEKIAxBAXENGQJAIApFBEBBBCEKQQAhEEEAIQEMAQtB1aoFIAogCkHVqgVPGyINQQxsIhJBBBCRDiIZRQ0CIAMgGTYClAwgAyANNgKQDEEAIQwgA0EANgKYDCABKAIAIRFBACEQA0ACQCATQQRPBEAgASATQQRrIg02AgQgASAMIBFqIhJBBGoiEzYCACANQQRJDRwgEigAACESIAEgDUEEayINNgIEIAEgE0EEaiIVNgIAIA1BBE8NAQwcCwwbCyATNQAAIWMgASANQQRrIhM2AgQgASAVQQRqNgIAIGMgFTUAAEIghoQhZiADKAKQDCAQRgRAIANBkAxqQdStwQAQkQggAygClAwhGQsgDCAZaiINIBI2AgAgDUEEaiBmNwIAIAMgEEEBaiIQNgKYDCAMQQxqIQwgCiAQRw0ACyADKAKUDCEKIAMoApAMIgFBgoCAgHhIDRogAygC7BMhGSADKALoEyEfCwJAIBpBgICAgHhrDgIPHQALIAMgGTYC6AIgAyAfNgLkAiADIBA2AuACIAMgCjYC3AIgAyABNgLYAiADIA82AtQCIAMgBzYC0AIgAyAENgLMAiADIBY2AsgCIAMgCTYCxAIgAyAGNgLAAiADIA42ArwCIAMgAjYCuAIgAyAINgK0AiADICE2ArACIAMgCzYCrAIgAyAaNgKoAiADKAJEIgFFBEBBAiEODBQLIAMgAUEBazYCRAJ/IAMoAkAiDCgCBCIBQQdNBEAgA0KBygA3A5gKQQEhECADQZgKahCfDQwBCyAMIAFBCGs2AgQgDCAMKAIAIgFBCGo2AgAgAyABKQAAEKgIIAMoAgAhECADKAIECyEBIBBBAXEEQCABIQIMFwsgAUUEQEEQIQhBACELQQAhEAwTC0GqFSABIAFBqhVPGyIJQYADbCILQRAQkQ4iCEUNAkEAIRMgA0EANgLwESADIAg2AuwRIAMgCTYC6BEgA0GgCmohEUEAIRADQCAMKAIEIgtBA00EQCADQoHKADcDmAogA0GYCmoQnw0hAgwTCyAMIAtBBGsiCDYCBCAMIAwoAgAiCUEEajYCAAJAAkACQAJAAkAgCSgAACIFDgICAQALIANBAToAmAogAyAFrTcDoAogA0GYCmpByK/BAEGQrcEAEO8KIQIMFgsgCEEETwRAIAwgC0EIayICNgIEIAwgCUEIajYCACACQQdNBEAgA0KBygA3A5gKIANBmApqEJ8NIQIMFwsgCSgABCEGIAwgC0EQayICNgIEIAwgCUEQajYCACAJKQAIImNCgICAgBBaBEAgA0EBOgCYCiADIGM3A6AKIANBmApqIANBsAlqQYyswQAQ7wohAgwXCyACQQdNBEAgA0KBygA3A5gKIANBmApqEJ8NIQIMFwsgDCALQRhrIgI2AgQgDCAJQRhqNgIAIAkpABAiZkKAgICAEFoEQCADQQE6AJgKIAMgZjcDoAogA0GYCmogA0GwCWpBjKzBABDvCiECDBcLIAJBBEkNCCAMIAtBHGsiAjYCBCAMIAlBHGo2AgAgAkEESQRAIANCgcoANwOYCiADQZgKahCfDSECDBcLIAkoABghByAMIAtBIGs2AgQgDCAJQSBqNgIAIAkoABwhDyADQZgKaiIJIAwQ3QQgAygCnAohAiADKAKYCg0WIANBwAlqIBFBEGoiCCkCADcDACADIBH9AAIA/QsDsAkgCSAMEN0EIAMoApwKIQ0gAygCmAoEQCANIQIMFwsgA0HIE2oiFyAIKQIANwMAIANB2BNqIikgA0G4CWoiFP0AAwD9CwMAIAMgEf0AAgD9CwO4EyADIAMpA7AJNwPQEyAMKAIEIgtBBEkNCSAMIAtBBGsiBDYCBCAMIAwoAgAiCUEEajYCACAEQQRJBEAgA0EAOgCbCiADQSU7AJkKIANBADYCnAogA0EBOgCYCiADQZgKahCfDSECDBcLIAkoAAAhFSAMIAtBCGsiBDYCBCAMIAlBCGo2AgAgBEEESQ0KIAkqAAQhfyAMIAtBDGsiBDYCBCAMIAlBDGo2AgAgBEEESQ0KIAkoAAghCiAMIAtBEGsiBDYCBCAMIAlBEGo2AgAgBEEESQ0KIAk1AAwhaCAMIAtBFGsiBDYCBCAMIAlBFGo2AgACQAJAIARBBEkNACAJNQAQIWogDCALQRhrIgQ2AgQgDCAJQRhqNgIAIARBBEkNACAJKAAUIRIgDCALQRxrIgQ2AgQgDCAJQRxqNgIAIARBBE8NAQsgA0EAOgCbCiADQSU7AJkKIANBADYCnAogA0EBOgCYCiADQZgKahCfDSECDBcLIAk1ABghayAMIAtBIGsiBDYCBCAMIAlBIGo2AgACQAJAIARBBEkNACAJNQAcIW0gDCALQSRrIgQ2AgQgDCAJQSRqNgIAIARBBEkNACAJKAAgIRkgDCALQShrIgQ2AgQgDCAJQShqNgIAIARBA0sNAQsgA0EAOgCbCiADQSU7AJkKIANBADYCnAogA0EBOgCYCiADQZgKahCfDSECDBcLIAk1ACQhbCAMIAtBLGsiBDYCBCAMIAlBLGo2AgACQAJAIARBBEkNACAJNQAoIWUgDCALQTBrIgQ2AgQgDCAJQTBqNgIAIARBBEkNACAJKAAsISEgDCALQTRrIgQ2AgQgDCAJQTRqNgIAIARBA0sNAQsgA0EAOgCbCiADQSU7AJkKIANBADYCnAogA0EBOgCYCiADQZgKahCfDSECDBcLIAk1ADAhZyAMIAtBOGsiBDYCBCAMIAlBOGo2AgAgBEEDTQRAIANBADoAmwogA0ElOwCZCiADQQA2ApwKIANBAToAmAogA0GYCmoQnw0hAgwXCyAJNQA0IWkgDCALQTxrIgQ2AgQgDCAJQTxqNgIAAkACQCAEQQRJDQAgCSoAOCGEASAMIAtBQGoiBDYCBCAMIAlBQGs2AgAgBEEESQ0AIAkoADwhBCAMIAtBxABrIg42AgQgDCAJQcQAajYCACAOQQNLDQELIANBADoAmwogA0ElOwCZCiADQQA2ApwKIANBAToAmAogA0GYCmoQnw0hAgwXCyAJNQBAIW4gDCALQcgAayIONgIEIAwgCUHIAGo2AgACQAJAIA5BBEkNACAJNQBEIW8gDCALQcwAayIONgIEIAwgCUHMAGo2AgAgDkEESQ0AIAkoAEghJSAMIAtB0ABrIg42AgQgDCAJQdAAajYCACAOQQNLDQELIANBADoAmwogA0ElOwCZCiADQQA2ApwKIANBAToAmAogA0GYCmoQnw0hAgwXCyAJNQBMIXAgDCALQdQAayIONgIEIAwgCUHUAGo2AgAgDkUEQCADQoHKADcDmAogA0GYCmoQnw0hAgwXCyAJNQBQIXEgDCALQdUAayIONgIEIAwgCUHVAGo2AgAgCS0AVCIdQQJPBEBBDEEEEJEOIgJFDS8gAiAdOgAEIAJBgoCAgHg2AgAMFwsgDkEESQ0LIAwgC0HZAGsiDjYCBCAMIAlB2QBqNgIAIA5BBEkNCyAJKABVIRYgDCALQd0AayIONgIEIAwgCUHdAGo2AgAgDkEESQ0LIAk1AFkhciAMIAtB4QBrIg42AgQgDCAJQeEAajYCAAJAAkAgDkEESQ0AIAk1AF0hcyAMIAtB5QBrIg42AgQgDCAJQeUAajYCACAOQQRJDQAgCSgAYSEoIAwgC0HpAGsiDjYCBCAMIAlB6QBqNgIAIA5BBEkNACAJNQBlIXQgDCALQe0AayIONgIEIAwgCUHtAGo2AgAgDkEESQ0OIAk1AGkhdSAMIAtB8QBrIg42AgQgDCAJQfEAajYCACAOQQRJDQ8gCSgAbSEkIAwgC0H1AGsiDjYCBCAMIAlB9QBqNgIAIA5BBEkNECAJKgBxIYUBIAwgC0H5AGsiDjYCBCAMIAlB+QBqNgIAIA5BBEkNESAJKgB1IYYBIAwgC0H9AGsiDjYCBCAMIAlB/QBqNgIAIA5BBEkNEiAJKgB5IYcBIAwgC0GBAWsiDjYCBCAMIAlBgQFqNgIAIA5BBE8NASADQQA6AJsKIANBJTsAmQogA0EANgKcCiADQQE6AJgKIANBmApqEJ8NIQIMGAsgA0EAOgCbCiADQSU7AJkKIANBADYCnAogA0EBOgCYCiADQZgKahCfDSECDBcLIAkqAH0hiAEgDCALQYUBazYCBCAMIAlBhQFqNgIAIAkqAIEBIYkBIANBmApqIg4gDBDlAiADKAKcCiEbIAMoApgKDREgA0GYFGoiCUEgaiIYIBFBIGopAgA3AwAgCUEQaiIcIAj9AAIA/QsDACADIBH9AAIA/QsDmBQCQAJAIAwoAgQiCwRAIAwgC0EBayIINgIEIAwgDCgCACIJQQFqNgIAIAhFBEAgA0KBygA3A5gKIA4Qnw0hAgwaCyAJLQAAIScgDCALQQJrIgg2AgQgDCAJQQJqIg42AgBBACEaAkACQCAJLQABIh8OAgQAAQsgC0EFTQRAIANCgcoANwOYCiADQZgKahCfDSECDBsLIAwgC0EGayIONgIEIAwgCUEGajYCAAJ/AkACQAJAAkAgCSgAAiIIDgIBAgALIANBAToAmAogAyAIrTcDoAogA0GYCmpByK/BAEGQrcEAEO8KIQIMHgsgA0GYCmogDBDlAiADKAKYCkEBRw0BIAMoApwKIQIMHQsgDkEESQ0bIAwgC0EKazYCBCAMIAlBCmo2AgAgCSgABgwBCyAUIBFBCGr9AAIA/QsDACADQcgJaiARQRhq/QACAP0LAwAgAyARKQIANwOwCSADKAKcCgshCUEwQQQQkQ4iGg0CDDELQQxBBBCRDiICRQ0xIAIgHzYCBCACQYSAgIB4NgIADBkLIANCgcoANwOYCiADQZgKahCfDSECDBgLIBogCTYCBCAaIAg2AgAgGiADKQOwCTcCCCAaQRBqIBT9AAMA/QsCACAaQSBqIANByAlq/QADAP0LAgAgDCgCACEOIAwoAgQhCAsgA0HoE2oiCUEgaiAYKQMANwMAIAlBEGogHP0AAwD9CwMAIAMgA/0AA5gU/QsD6BMgCEEESQ0SIAwgCEEEayIJNgIEIAwgDkEEajYCACAJQQRJDRIgDigAACE0IAwgCEEIayIJNgIEIAwgDkEIajYCACAJQQRJDRIgDjUABCF4IAwgCEEMayIJNgIEIAwgDkEMajYCAAJAAkAgCUEESQ0AIA41AAgheSAMIAhBEGsiCTYCBCAMIA5BEGo2AgAgCUEESQ0AIA4oAAwhLCAMIAhBFGsiCTYCBCAMIA5BFGo2AgAgCUEETw0BCyADQQA6AJsKIANBJTsAmQogA0EANgKcCiADQQE6AJgKIANBmApqEJ8NIRQMFQsgDjUAECF6IAwgCEEYayIJNgIEIAwgDkEYajYCACAJQQNNBEAgA0EAOgCbCiADQSU7AJkKIANBADYCnAogA0EBOgCYCiADQZgKahCfDSEUDBULIA41ABQheyAMIAhBHGsiCTYCBCAMIA5BHGo2AgAgCUEDTQRAIANBADoAmwogA0ElOwCZCiADQQA2ApwKIANBAToAmAogA0GYCmoQnw0hFAwVCyAOKAAYITUgDCAIQSBrIgk2AgQgDCAOQSBqNgIAIAlFBEAgA0KBygA3A5gKIANBmApqEJ8NIRQMFQsgDioAHCGKASAMIAhBIWsiCTYCBCAMIA5BIWo2AgAgDi0AICImQQJPBEBBDEEEEJEOIhRFDS8gFCAmOgAEIBRBgoCAgHg2AgAMFQsgCUUEQCADQoHKADcDmAogA0GYCmoQnw0hFAwVCyAMIAhBImsiCTYCBCAMIA5BImo2AgAgDi0AISIxQQJPBEBBDEEEEJEOIhRFDS8gFCAxOgAEIBRBgoCAgHg2AgAMFQsgCUEDTQRAIANBADoAmwogA0ElOwCZCiADQQA2ApwKIANBAToAmAogA0GYCmoQnw0hFAwVCyAMIAhBJms2AgQgDCAOQSZqNgIAIA4qACIhiwEgA0GYCmoiCSAMEPoDIAMoApwKIRQgAygCmAoiIEGAgICAeEYNFAJAIAwoAgQiC0EDTQRAIANBADoAmwogA0ElOwCZCiADQQA2ApwKIANBAToAmAogCRCfDSEBDAELIAMoAqAKIV0gDCALQQRrIgg2AgQgDCAMKAIAIglBBGo2AgAgCEEDTQRAIANBADoAmwogA0ElOwCZCiADQQA2ApwKIANBAToAmAogA0GYCmoQnw0hAQwBCyAJKAAAIV4gDCALQQhrIgg2AgQgDCAJQQhqNgIAIAhBA00EQCADQQA6AJsKIANBJTsAmQogA0EANgKcCiADQQE6AJgKIANBmApqEJ8NIQEMAQsgCSoABCGMASAMIAtBDGsiCDYCBCAMIAlBDGo2AgAgCEEDTQRAIANBADoAmwogA0ElOwCZCiADQQA2ApwKIANBAToAmAogA0GYCmoQnw0hAQwBCyAJKgAIIY0BIAwgC0EQayIINgIEIAwgCUEQajYCACAIRQRAIANCgcoANwOYCiADQZgKahCfDSEBDAELIAkqAAwhjgEgDCALQRFrIgg2AgQgDCAJQRFqNgIAIAktABAiMkECTwRAQQxBBBCRDiIBRQ0wIAEgMjoABCABQYKAgIB4NgIADAELIAhBA00EQCADQoHKADcDmAogA0GYCmoQnw0hAQwBCyAMIAtBFWsiCDYCBCAMIAlBFWo2AgAgCEEDTQRAIANCgcoANwOYCiADQZgKahCfDSEBDAELIAkoABEhXyAMIAtBGWsiCDYCBCAMIAlBGWo2AgAgCSgAFSIuQQRPBEAgA0EBOgCYCiADIC6tNwOgCiADQZgKakHstMEAQZCtwQAQ7wohAQwBCyAIRQRAIANCgcoANwOYCiADQZgKahCfDSEBDAELIAwgC0EaayIINgIEIAwgCUEaajYCACAIRQRAIANCgcoANwOYCiADQZgKahCfDSEBDAELIAktABkhYCAMIAtBG2siCDYCBCAMIAlBG2o2AgAgCS0AGiIjQQJPBEBBDEEEEJEOIgFFDTAgASAjOgAEIAFBgoCAgHg2AgAMAQsgCEEHTQRAIANCgcoANwOYCiADQZgKahCfDSEBDAELIAwgC0EjayIINgIEIAwgCUEjajYCACAJKQAbImRCgICAgBBaBEAgA0EBOgCYCiADIGQ3A6AKIANBmApqIANBsAlqQYyswQAQ7wohAQwBCyAIQQ9LDQMgA0KBygA3A5gKIANBmApqEJ8NIQELICAEQCAUICBBA3RBBBDoDgsgASEUDBQLIANCgcoANwOYCiADQZgKahCfDSECDBULIAhFBEAgA0KBygA3A5gKIANBmApqEJ8NIQIMFQsgDCALQQVrNgIEIAwgCUEFajYCAAJAAkAgCS0ABCIGDgIDAAELIAhBBE0EQCADQoHKADcDmAogA0GYCmoQnw0hAgwWCyAMIAtBCWs2AgQgDCAJQQlqNgIAIAkoAAUhKUEBIQYMAgtBDEEEEJEOIgJFDSwgAiAGNgIEIAJBhICAgHg2AgAMFAsgY6chYSBmpyFiIGpCIIYgaIQhfCBtQiCGIGuEIX0gZUIghiBshCF+IGlCIIYgZ4QhaiBvQiCGIG6EIWsgcUIghiBwhCFoIHNCIIYgcoQhbSB1QiCGIHSEIWYgeUIghiB4hCFyIHtCIIYgeoQhcyAJQS9qNQAAIWwgCTUAIyFlIAkpACchYyAMIAtBM2s2AgQgDCAJQTNqNgIAIANB2BJqIglBCGogA0HoE2oiC0EIav0AAwD9CwMAIAlBGGogC0EYav0AAwD9CwMAIANBqBNqICn9AAMA/QsDACADQZATaiAXKQMANwMAIAMgAykD6BM3A9gSIAMgAykD0BM3A6ATIAMgA/0AA7gT/QsEgBMgA0HWEmogA0GXFGotAAA6AAAgAyADLwCVFDsB1BIgbEIghiBjQiCIhCF0IGUgY0IghoQhdSBkpyE2CyADQcgSaiADQbATaikDADcDACADQfgRaiIJQQhqIANB2BJqIgtBCGr9AAMA/QsDACAJQRhqIAtBGGr9AAMA/QsDACADQfYRaiILIANB1hJqLQAAOgAAIAMgA/0AA6AT/QsDuBIgAyADKQOAEzcDoBIgAyAD/QADiBP9CwOoEiADIAMpA9gSNwP4ESADIAMvAdQSOwH0ESADKALoESAQRgRAIANB6BFqQdStwQAQkwgLIBMgAygC7BEiCGoiCSAFNgIAIAlBKGogdDcCACAJQSBqIHU3AgAgCUFAayACNgIAIAlBPWogMToAACAJQTxqICY6AAAgCUE4aiCLATgCACAJQTRqIIoBOAIAIAlBMGogNTYCACAJQRxqIA82AgAgCUEYaiAHNgIAIAlBFGogYjYCACAJQRBqIGE2AgAgCUEIaiApNgIAIAlBBGogBjYCACAJQcQAaiADKQO4EjcCACAJQcwAaiADQcASav0AAwD9CwIAIAlB3ABqIA02AgAgCUH4AGogFTYCACAJQfwAaiB/OAIAIAlBgAFqIAo2AgAgCUGEAWogfDcCACAJQYwBaiASNgIAIAlBkAFqIH03AgAgCUGYAWogNDYCACAJQZwBaiByNwIAIAlBpAFqICw2AgAgCUGoAWogczcCACAJQbABaiAZNgIAIAlBtAFqIH43AgAgCUG8AWogITYCACAJQcABaiBqNwIAIAlByAFqIIQBOAIAIAlBzAFqIAQ2AgAgCUHQAWogazcCACAJQdgBaiAlNgIAIAlB3AFqIGg3AgAgCUHoAWogJDYCACAJQewBaiCFATgCACAJQfABaiCGATgCACAJQfQBaiCHATgCACAJQfgBaiCIATgCACAJQfwBaiCJATgCACAJQYACaiAWNgIAIAlBhAJqIG03AgAgCUGMAmogKDYCACAJQZACaiBmNwIAIAlBmAJqIBs2AgAgCUHkAWogHToAACAJQfAAaiADQbASaikDADcCACAJQeAAaiAD/QAEoBL9CwIAIAlBxAJqIBo2AgAgCUHIAmogJzYCACAJQcwCaiBfNgIAIAlB0AJqIDY2AgAgCUHUAmogXjYCACAJQdgCaiCMATgCACAJQdwCaiCNATgCACAJQeACaiCOATgCACAJQeQCaiAyOgAAIAlBvAJqIANB+BFqIg5BIGopAwA3AgAgCUGsAmogDkEQav0AAwD9CwIAIAlBnAJqIAP9AAP4Ef0LAgAgCUHlAmogAy8B9BE7AAAgCUHnAmogCy0AADoAACAJQfYCaiAjOgAAIAlB9QJqIC46AAAgCUH0AmogYDoAACAJQfACaiBdNgIAIAlB7AJqIBQ2AgAgCUHoAmogIDYCACADIBBBAWoiEDYC8BEgE0GAA2ohEyABIBBHDQALIAMoAugRIgtBgoCAgHhODRIgCCECDBYLQQQgDUHErcEAENcNAAtBBCASQcStwQAQ1w0AC0EQIAtBxK3BABDXDQALIANCgcoANwOYCiADQZgKahCfDSECDA0LIANBADoAmwogA0ElOwCZCiADQQA2ApwKIANBAToAmAogA0GYCmoQnw0hAgwMCyADQQA6AJsKIANBJTsAmQogA0EANgKcCiADQQE6AJgKIANBmApqEJ8NIQIMCwsgA0EAOgCbCiADQSU7AJkKIANBADYCnAogA0EBOgCYCiADQZgKahCfDSECDAoLIANBADoAmwogA0ElOwCZCiADQQA2ApwKIANBAToAmAogA0GYCmoQnw0hAgwJCyADQQA6AJsKIANBJTsAmQogA0EANgKcCiADQQE6AJgKIANBmApqEJ8NIQIMCAsgA0EAOgCbCiADQSU7AJkKIANBADYCnAogA0EBOgCYCiADQZgKahCfDSECDAcLIANBADoAmwogA0ElOwCZCiADQQA2ApwKIANBAToAmAogA0GYCmoQnw0hAgwGCyADQQA6AJsKIANBJTsAmQogA0EANgKcCiADQQE6AJgKIANBmApqEJ8NIQIMBQsgGyECDAQLIANBADoAmwogA0ElOwCZCiADQQA2ApwKIANBAToAmAogA0GYCmoQnw0hFAwBC0EEQfTXwQBBkK3BABCoCiEBIABBAjYCxAcgACABNgIADA4LIBoEQCAaQTBBBBDoDgsgFCECDAELIANBADoAmwogA0ElOwCZCiADQQA2ApwKIANBAToAmAogA0GYCmoQnw0hAgsgAygC7BEhCSAQBEAgCSEBA0ACQCABKAIARQ0AIAFBxAJqKAIAIgsEQCALQTBBBBDoDgsgAUHoAmooAgAiC0UNACABQewCaigCACALQQN0QQQQ6A4LIAFBgANqIQEgEEEBayIQDQALCyADKALoESIBRQ0EIAkgAUGAA2xBEBDoDgwECwJAAkACQAJAIAwoAgQiAkEETwRAIAwgAkEEayIJNgIEIAwgDCgCACIBQQRqNgIAIAlFBEAgA0KBygA3A5gKIANBmApqEJ8NIQIMBAsgATUAACFmIAwgAkEFayITNgIEIAwgAUEFaiIaNgIAAkACQCABLQAEIg4OAgQAAQsgCUEESw0CIANCgcoANwOYCiADQZgKahCfDSECDAQLQQxBBBCRDiICRQ0bIAIgDjYCBCACQYSAgIB4NgIADAMLIANCgcoANwOYCiADQZgKahCfDSECDAILIAwgAkEJayIT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AgJAIANB////H0sNACAJQfz///8HSw0AIAsoAoABIQUCQCAJRQRAQQQhAEEAIQQMAQtBBCECIAMhBCAJQQQQkQ4iAEUNAQsgCQRAIAAgBSAJ/AoAAAsgC0EANgKEASAMQaQGaiIGKgIAISIgDCoC3AYhJiAMKgLQBiEoIAwqApwGISogDCoCoAYhISAMKgLYBiEjIAwqAtQGISUgDEEgaiAGKAIANgIAIAwgDCkCnAY3AxggDEHYAWoiAiAIIAxBGGoiBRChDyAMICYgKiAllCAhICiUkyIKIAqSIimUICggIiAolCAqICOUkyIKIAqSIiSUICUgISAjlCAiICWUkyIKIAqSIgqUk5IgIpMiIjgCkAQgDCAmICSUICMgCpQgKCAplJOSICGTIiE4AowEIAwgJiAKlCAlICmUICMgJJSTkiAqkyIKOAKIBCAFIAcgDEGIBGoQoQ8gASAMQZgGakEEciACIAUgC0EAECsgCyAiOAKcASALICE4ApgBIAsgCjgClAEgC0GQAWogBigCADYCACALIAwpApwGNwKIAQJAIAsoAoQBIgFFDQAgA0UNACALKAKAASICIAFBBnRqIQggACADQQZ0aiEHIABBJGohCyAAQUBrIQEgCUFAaiIGQcAAcSEDA0AgAkEkaiEOIAIoAhwhCSAAIQUCQCADDQAgASEFIAkgACgCHEcNACACKAIgIAAoAiBHDQAgDiAL/QACAP0LAgAgDkEYaiALQRhqKAIANgIAIA5BEGogC0EQaikCADcCAAsgBgRAA0ACQCAJIAVBHGooAgBHDQAgAigCICAFQSBqKAIARw0AIA5BGGogBUE8aigCADYCACAOQRBqIAVBNGopAgA3AgAgDiAFQSRq/QACAP0LAgALAkAgCSAFQdwAaigCAEcNACACKAIgIAVB4ABqKAIARw0AIA5BGGogBUH8AGooAgA2AgAgDkEQaiAFQfQAaikCADcCACAOIAVB5ABq/QACAP0LAgALIAcgBUGAAWoiBUcNAAsLIAggAkFAayICRw0ACwsgBEUNAyAAIARBBnRBBBDoDgwDCyACIAlBgPzBABDXDQALIAsgKTgCnAEgCyAkOAKYASALICE4ApQBIAsgIzgCkAEgCyAiOAKMASALIAo4AogBDAELIAtBADYChAELIAxBkAhqJAAgDQvThAEEH38RfQN+AXsj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JEHcAGogAiASQQRByAAQ1wYgJCgCZCEPCyApKAJgIA9ByABsaiEBIBJBAk8EQCAmIAJBf3NqIg5BAXEhECACICZBAmtHBEAgDkF+cSEOA0AgAUIANwIAIAFBCGpCfzcCACABQRBqQn83AgAgAUEYakJ/NwIAIAFBIGpBfzYCACABQdAAakJ/NwIAIAFByABqQgA3AgAgAUHEAGpBADsBACABQTRq/Qz//39///9/f///f3///39//QsCACABQSRq/QwAAAAA//9/////f3///39//QsCACABQdgAakJ/NwIAIAFB4ABqQn83AgAgAUHoAGpBfzYCACABQYwBakEAOwEAIAFB/ABq/Qz//39///9/f///f3///39//QsCACABQewAav0MAAAAAP//f////39///9/f/0LAgAgAUGQAWohASAOQQJrIg4NAAsLIA8gEmpBAWshDyAQBEAgAUJ/NwIIIAFCADcCACABQQA7AUQgAf0M//9/f///f3///39///9/f/0LAjQgAf0MAAAAAP//f////39///9/f/0LAiQgAUEQakJ/NwIAIAFBGGpCfzcCACABQSBqQX82AgAgAUHIAGohAQsLIAFCfzcCCCABQgA3AgAgAUEAOwFEIAH9DP//f3///39///9/f///f3/9CwI0IAH9DAAAAAD//3////9/f///f3/9CwIkIAFBEGpCfzcCACABQRhqQn83AgAgAUEgakF/NgIAIA9BAWohJgsgKSAmNgJkIBVBoApqJAAMAwsgGiBnQciOwgAQ8A4AC0HQi8IAQRNB2MfCABDRCwALQdCLwgBBE0Hox8IAENELAAsgF0HgAmoiARC6CiAXQbAEaiABIKkCIIMBEOQJIAApA3gingIgFykDsAR8Ip0CIJ4CVA0aIAAoAoABIBcoArgEaiIBQYCU69wDTwRAIJ0CQn9RDRsgnQJCAXwhnQIgAUGAlOvcA2shAQsgACABNgKAASAAIJ0CNwN4IABBgJTr3AM2AnAgF0GwBGoQugogFykDsAQhnQIgACAXKAK4BCICNgJQIAAgnQI3A0gghAENAQwYC0GwssIAEPIOAAsgLigC6AIiASAuKALQAiIQIAEgEEkbISYgLigC5AIhRCAuKALMAiFHIC4oAvgCIoYBIC4oAogDIgFHDRUgLkHsAmohYkMAAAAAQwAAgD9DAACA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IAH9HAEh0gFCACGdAkIAIaACIDtFBEAgGSkDOCGgAiAZKQMwIZ0CCyDiASDpAf0NAAECAwQFBgccHR4fAAECAyHiASDgASDpAf0NAAECAwQFBgcYGRobAAECAyHgASDoASDpAf0NAAECAwQFBgcUFRYXAAECAyHoASDhASDpAf0NAAECAwQFBgcQERITAAECAyHhASDeASDwAf0NAAECAwQFBgcQERITAAECAyHeASDcASDXAf0NAAECAwQFBgcQERITAAECAyHcASDdASDmAf0NAAECAwQFBgcQERITAAECAyHdASDaASDwAf0NAAECAwQFBgcYGRobAAECAyHaASDfASDwAf0NAAECAwQFBgcUFRYXAAECAyHfASDZASDXAf0NAAECAwQFBgcYGRobAAECAyHZASDbASDXAf0NAAECAwQFBgcUFRYXAAECAyHbASDYASDmAf0NAAECAwQFBgcUFRYXAAECAyHYASDWASDwAf0NAAECAwQFBgccHR4fAAECAyHWASDVASDXAf0NAAECAwQFBgccHR4fAAECAyHVASDTASDmAf0NAAECAwQFBgcYGRobAAECAyHTASDSASDmAf0NAAECAwQFBgccHR4fAAECAyHSAf0MAAAAAAAAAAAAAAAAAAAAACHXAf0MAAAAAAAAAAAAAAAAAAAAACGBAiAzRQRAICv9AAQwIYECCyDiASDjAf0NAAECAwQFBgcICQoLHB0eHyH2ASDgASDjAf0NAAECAwQFBgcICQoLGBkaGyGGAiDoASDjAf0NAAECAwQFBgcICQoLFBUWFyH+ASDhASDjAf0NAAECAwQFBgcICQoLEBESEyH/ASDeASDyAf0NAAECAwQFBgcICQoLEBESEyH9ASDcASCSAv0NAAECAwQFBgcICQoLEBESEyH7ASDdASD0Af0NAAECAwQFBgcICQoLEBESEyHkASDaASDyAf0NAAECAwQFBgcICQoLGBkaGyHxASDfASDyAf0NAAECAwQFBgcICQoLFBUWFyH3ASDZASCSAv0NAAECAwQFBgcICQoLGBkaGyGEAiDbASCSAv0NAAECAwQFBgcICQoLFBUWFyHrASDYASD0Af0NAAECAwQFBgcICQoLFBUWFyHqASDWASDyAf0NAAECAwQFBgcICQoLHB0eHyHlASDVASCSAv0NAAECAwQFBgcICQoLHB0eHyHiASDTASD0Af0NAAECAwQFBgcICQoLGBkaGyHgASDSASD0Af0NAAECAwQFBgcICQoLHB0eHyHoASAgRQRAIC/9AAQwIdcBCyAXIIMC/QsEsAQgFyCdAjcDwAQgFyCgAjcDyAQgF/0AAvwBIeEBIBf9AALkAiHeASAX/QAD6AIh3AEgF/0AAuwCId0BIBf9AAK0BCHaASAX/QADuAQh3wEgF/0AArwEIdkBIBf9AAL0ASHbASAX/QAD+AEh2AEgF/0AA4gBIdYBIBf9AAKEASHVASAX/QACjAEh0wEgFyACQeAAav0ABAAi5gEg9gH95gEgAkEwav0ABAAi4wEg/wH95gH95QEgAkFAa/0ABAAi6QEg/gH95gH95QEgAkHQAGr9AAQAItIBIIYC/eYB/eUB/QsEsAEgFyDmASCGAv3mASDpASD/Af3mASDSASD2Af3mAf3kASDjASD+Af3mAf3lAf3kAf0LBKABIBcg4wEghgL95gEg5gEg/gH95gEg6QEg9gH95gEg0gEg/wH95gH95QH95AH95AH9CwSQASAXINIBIP4B/eYBIOMBIPYB/eYBIOYBIP8B/eYB/eQB/eQBIOkBIIYC/eYB/eUB/QsEgAEgAkGAAWr9AAQAIuYBIP8B/eYBIAJB8ABq/QAEACLjASD+Af3mAf3lASLSASDSAf3kASHzASDjASCGAv3mASACQZABav0ABAAi6QEg/wH95gH95QEi0gEg0gH95AEh7gEgFyDpASDzASD2Af3mASDuASD/Af3mASDpASD+Af3mASDmASCGAv3mAf3lASLSASDSAf3kASLSASD+Af3mAf3lAf3kAf3kASCEAv3kAf0LBOABIBcg5gEg7gEg9gH95gEg0gEghgL95gEg8wEg/wH95gH95QH95AH95AEg6wH95AH9CwTQASAXIOMBINIBIPYB/eYBIPMBIP4B/eYBIO4BIIYC/eYB/eUB/eQB/eQBIPsB/eQB/QsEwAEgFyACQdABav0ABAAi4wEg0wEg+AH9DQABAgMcHR4fAAECAwABAgMg7wH9DQABAgMEBQYHHB0eHwABAgMg+gH9DQABAgMEBQYHCAkKCxwdHh8i5gH95gEgAkGgAWr9AAQAIukBIO0BIPgB/Q0AAQIDEBESEwABAgMAAQIDIO8B/Q0AAQIDBAUGBxAREhMAAQIDIPoB/Q0AAQIDBAUGBwgJCgsQERITIvYB/eYB/eUBIAJBsAFq/QAEACLTASDVASD4Af0NAAECAxQVFhcAAQIDAAECAyDvAf0NAAECAwQFBgcUFRYXAAECAyD6Af0NAAECAwQFBgcICQoLFBUWFyLzAf3mAf3lASACQcABav0ABAAi0gEg1gEg+AH9DQABAgMYGRobAAECAwABAgMg7wH9DQABAgMEBQYHGBkaGwABAgMg+gH9DQABAgMEBQYHCAkKCxgZGhsi7gH95gH95QH9CwSgAiAXIOMBIO4B/eYBINMBIPYB/eYBINIBIOYB/eYB/eQBIOkBIPMB/eYB/eUB/eQB/QsEkAIgFyDpASDuAf3mASDjASDzAf3mASDTASDmAf3mASDSASD2Af3mAf3lAf3kAf3kAf0LBIACIBcg0gEg8wH95gEg6QEg5gH95gEg4wEg9gH95gH95AH95AEg0wEg7gH95gH95QH9CwTwASACQfABav0ABAAi7QEg9gH95gEgAkHgAWr9AAQAItYBIPMB/eYB/eUBItIBINIB/eQBIeMBINYBIO4B/eYBIAJBgAJq/QAEACLTASD2Af3mAf3lASLSASDSAf3kASHpASAXINMBIOMBIOYB/eYBIOkBIPYB/eYBINMBIPMB/eYBIO0BIO4B/eYB/eUBItIBINIB/eQBItIBIPMB/eYB/eUB/eQB/eQBINgBIKgCp/0cASD5Af0NAAECAwQFBgcYGRobAAECAyD1Af0NAAECAwQFBgcICQoLGBkaGyLVAf3kAf0LBNACIBcg7QEg6QEg5gH95gEg0gEg7gH95gEg4wEg9gH95gH95QH95AH95AEg2wEgqwJCIIin/RwBIPkB/Q0AAQIDBAUGBxQVFhcAAQIDIPUB/Q0AAQIDBAUGBwgJCgsUFRYXItMB/eQB/QsEwAIgFyDWASDSASDmAf3mASDjASDzAf3mASDpASDuAf3mAf3lAf3kAf3kASCCAiCrAqf9HAEg+QH9DQABAgMEBQYHEBESEwABAgMg9QH9DQABAgMEBQYHCAkKCxAREhMi0gH95AH9CwSwAiBjIAL9AAQA/QsEACAXIOgB/QsE4AMgFyDgAf0LBNADIBcg6gH9CwTAAyAXIIQC/QsEkAQgFyDrAf0LBIAEIBcg+wH9CwTwAyAXIOQB/QsEsAMgFyDlAf0LBKADIBcg8QH9CwSQAyAXIPcB/QsEgAMgFyD9Af0LBPACIBcg4gH9CwTgAiBhIDT9AAQA/QsEACAXINkBIKACQiCIp/0cASCBAv0NAAECAwQFBgccHR4fAAECAyDXAf0NAAECAwQFBgcICQoLHB0eH/0LBLAFIBcg3wEgoAKn/RwBIIEC/Q0AAQIDBAUGBxgZGhsAAQIDINcB/Q0AAQIDBAUGBwgJCgsYGRob/QsEoAUgFyDaASCdAkIgiKf9HAEggQL9DQABAgMEBQYHFBUWFwABAgMg1wH9DQABAgMEBQYHCAkKCxQVFhf9CwSQBSAXIIMCIJ0Cp/0cASCBAv0NAAECAwQFBgcQERITAAECAyDXAf0NAAECAwQFBgcICQoLEBESE/0LBIAFIBcg3QEgpQJCIIin/RwBINQB/Q0AAQIDBAUGBxwdHh8AAQIDIOcB/Q0AAQIDBAUGBwgJCgscHR4f/QsE8AQgFyDcASClAqf9HAEg1AH9DQABAgMEBQYHGBkaGwABAgMg5wH9DQABAgMEBQYHCAkKCxgZGhv9CwTgBCAXIN4BIKMCQiCIp/0cASDUAf0NAAECAwQFBgcUFRYXAAECAyDnAf0NAAECAwQFBgcICQoLFBUWF/0LBNAEIBcghQIgowKn/RwBINQB/Q0AAQIDBAUGBxAREhMAAQIDIOcB/Q0AAQIDBAUGBwgJCgsQERIT/QsEwAQgFyDhASCoAkIgiKf9HAEg+QH9DQABAgMEBQYHHB0eHwABAgMg9QH9DQABAgMEBQYHCAkKCxwdHh/9CwSwBCAXINUB/QsE4AUgFyDTAf0LBNAFIBcg0gH9CwTABSACQZACaigCACIBIIcBSw0XIBdBBGohGiACQSBqITUgF0HgAmohKyAXQbAEaiE7IAJBlAJqLQAAISggMCABQZAEbGohDyCHASABayFMQQAhOEEAIS8jAEGgB2siGSQAIBdBgAFqIhD9AAQAIowCIBD9AAQwIvYB/eYBItIBINIB/eQBIeABIBD9AAQQIucBIBD9AAQgIocC/eYBItIBINIB/eQBIegBIIwCIIcC/eYBItIBINIB/eQBItwBIOcBIPYB/eYBItIBINIB/eQBIt0B/eUBIfIBIIwCIOcB/eYBItIBINIB/eQBIt8BIIcCIPYB/eYBItIBINIB/eQBItkB/eQBIYACIBdB8AFqIgH9AARgItUBIBD9AARg/eUBIe4BIAH9AARQItMBIBD9AARQ/eUBIfsBIAH9AARAItIBIBD9AARA/eUBIYQCIOcBIOcB/eYBIuEBIPYBIPYB/eYBItsBIIwCIIwC/eYBItQB/eUBItYB/eQBIdgBINQBINsB/eQBIOEB/eUBIIcCIIcC/eYBIt4B/eUBIZACINUBIdoBINMBIdQBINIBIdcBIChBAXEEQCDVASDyASCQAiCEAv3mASCAAiD7Af3mAf3kASDyASDuAf3mAf3kASLbAf3mAf3lASHaASDSASCQAiDbAf3mAf3lASHXASDTASCAAiDbAf3mAf3lASHUAQsg1gEg4QH95QEh1gEg6AEg4AH95AEh9AEg3wEg2QH95QEhkQIg2AEg3gH95QEh9QEgKEECcQRAINoBIPQBIJECIIQC/eYBIPUBIPsB/eYB/eQBIPQBIO4B/eYB/eQBItgB/eYB/eUBIdoBINcBIJECINgB/eYB/eUBIdcBINQBIPUBINgB/eYB/eUBIdQBCyDoASDgAf3lASH5ASDcASDdAf3kASGGAiDeASDWAf3kASH8ASAoQQRxBEAg2gEg/AEghgIghAL95gEg+QEg+wH95gH95AEg/AEg7gH95gH95AEi1gH95gH95QEh2gEg1wEghgIg1gH95gH95QEh1wEg1AEg+QEg1gH95gH95QEh1AELIDv9AASgASHmASA7/QAEkAEh4wEgO/0ABLABIekBICv9AASgASHtASAr/QAEkAEh/QEgK/0ABLABIeQBIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBn9AAQAIfEBIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBn9AAQAIfcBIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBn9AAQAId4BIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBn9AAQAIeoBIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBn9AAQAIeUBIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBn9AAQAIeIBIAH9AAQwIYoCIAH9AAQgIYsCIAH9AAQQIewBIAH9AAQAIYgCIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwTwBiAZ/QwAAAAAAAAAAAAAAAAAAAAA/QsEAAJ7IBlB8AZq/QAEACAZ/QAEAP1B/aMBBEAghwIgiAL95gH9DAAAAAAAAAAAAAAAAAAAAAD95AEhiQIg5wEgiAL95gH9DAAAAAAAAAAAAAAAAAAAAAD95AEhggIgjAIgiAL95gEMAQv9DAAAwH8AAMB/AADAfwAAwH8hiQL9DAAAwH8AAMB/AADAfwAAwH8hggL9DAAAwH8AAMB/AADAfwAAwH8LId8BIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwTwBiAZ/QwAAAAAAAAAAAAAAAAAAAAA/QsEACAZQfAGav0ABAAgGf0ABAD9Qf2jASESIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwTwBiAZ/QwAAAAAAAAAAAAAAAAAAAAA/QsEACAZQfAGav0ABAAgGf0ABAD9Qf2jASEQIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBn9AAQAIeABIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBn9AAQAIegBIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBn9AAQAIeEBIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBn9AAQAIdwBIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBn9AAQAId0BIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBn9AAQAIdkBIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBn9AAQAIdsBIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBn9AAQAIdgBIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBn9AAQAIdYBIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwTwBiAZ/QwAAAAAAAAAAAAAAAAAAAAA/QsEACAZQfAGav0ABAAgGf0ABAD9Qf2jASEBIBn9DAAAgD8AAIA/AACAPwAAgD/9CwTwBiAZ/QwAAAAAAAAAAAAAAAAAAAAA/QsEACCLAiDcASCHAv3lASLrAf3mASH6ASDZASDnAf3lASHcAQJ7IBlB8AZq/QAEACAZ/QAEAP1B/aMBRQRAIPoB/QwAAAAAAAAAAAAAAAAAAAAA/QwAAMB/AADAfwAAwH8AAMB/IAEb/eQBIfoBIIsC/QwAAAAAAAAAAAAAAAAAAAAA/eYBIIcC/QwAAAAAAAAAAAAAAAAAAAAA/eYB/QwAAMB/AADAfwAAwH8AAMB/IAEb/eQBIfMBIIwCIIsC/eYBINwB/QwAAAAAAAAAAAAAAAAAAAAA/eYB/QwAAMB/AADAfwAAwH8AAMB/IAEb/eQBDAELIIsC/QwAAAAAAAAAAAAAAAAAAAAA/eYBIfMBIIwCIIsC/eYBCyHZASDdASCMAv3lASHvASDWASDsAf3lASHdASAZ/QwAAIA/AACAPwAAgD8AAIA//QsE8AYgGf0MAAAAAAAAAAAAAAAAAAAAAP0LBAACeyAZQfAGav0ABAAgGf0ABAD9Qf2jAUUEQCDdAf0MAAAAAAAAAAAAAAAAAAAAAP3mASDZASAZ/QAE8AYi1gH95gH95AEhhQIg7wEg3QH95gEg8wEg1gH95gH95AEh8wEg5wEg3QH95gEg+gEg1gH95gH95AEMAQsg3QH9DAAAAAAAAAAAAAAAAAAAAAD95gEhhQIg7wEg3QH95gEh8wEg5wEg3QH95gELIdkBIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwTwBiAZ/QwAAAAAAAAAAAAAAAAAAAAA/QsEACAZQfAGav0ABAAgGf0ABAD9Qf2jASEBIBn9DAAAgD8AAIA/AACAPwAAgD/9CwTwBiAZ/QwAAAAAAAAAAAAAAAAAAAAA/QsEAAJ7IBlB8AZq/QAEACAZ/QAEAP1B/aMBRQRAIIwC/QwAAAAAAAAAAAAAAAAAAAAA/eYBINwBINsBIIsC/eUBItsB/eYB/QwAAMB/AADAfwAAwH8AAMB/IAEbIBn9AATwBiLWAf3mAf3kASGDAiDrAf0MAAAAAAAAAAAAAAAAAAAAAP3mASDbAf0MAAAAAAAAAAAAAAAAAAAAAP3mAf0MAADAfwAAwH8AAMB/AADAfyABGyDWAf3mAf3kASGOAiCHAiDbAf3mAf0MAADAfwAAwH8AAMB/AADAfyABGyDWAf3mAf0MAAAAAAAAAAAAAAAAAAAAAP3kAQwBCyCMAv0MAAAAAAAAAAAAAAAAAAAAAP3mASGDAiDrAf0MAAAAAAAAAAAAAAAAAAAAAP3mASGOAv0MAAAAAAAAAAAAAAAAAAAAAAsh2wEgGf0MAACAPwAAgD8AAIA/AACAP/0LBPAGIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAAnsgGUHwBmr9AAQAIBn9AAQA/UH9owFFBEAgiAL9DAAAAAAAAAAAAAAAAAAAAAD95gEggwIgGf0ABPAGItYB/eYB/eQBIYMCIIgCIO8B/eYBINsBINYB/eYB/eQBIY0CIOcBIIgC/eYBII4CINYB/eYB/eQBDAELIIgC/QwAAAAAAAAAAAAAAAAAAAAA/eYBIYMCIIgCIO8B/eYBIY0CIOcBIIgC/eYBCyHbASDYASCIAv3lASHYASAZ/QwAAAAAAAAAAAAAAAAAAAAA/QsE8AYgGf0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgGUHwBmr9AAQAIBn9AAQA/UH9owEhASAZ/QwAAIA/AACAPwAAgD8AAIA//QsE8AYgGf0MAAAAAAAAAAAAAAAAAAAAAP0LBAACeyAZQfAGav0ABAAgGf0ABAD9Qf2jAUUEQCCMAiDYAf3mASDsASDcAf3mAf0MAADAfwAAwH8AAMB/AADAfyABGyAZ/QAE8AYi1gH95gH95AEhjgIg6wEg2AH95gEg7AH9DAAAAAAAAAAAAAAAAAAAAAD95gH9DAAAwH8AAMB/AADAfwAAwH8gARsg1gH95gH95AEhgQIg2AH9DAAAAAAAAAAAAAAAAAAAAAD95gEghwIg7AH95gH9DAAAwH8AAMB/AADAfwAAwH8gARsg1gH95gH95AEMAQsgjAIg2AH95gEhjgIg6wEg2AH95gEhgQIg2AH9DAAAAAAAAAAAAAAAAAAAAAD95gELIdYBINoBIOQB/eUBIeQBINQBIO0B/eUBIfgBIBn9DAAAgD8AAIA/AACAPwAAgD/9CwTwBiAZ/QwAAAAAAAAAAAAAAAAAAAAA/QsEAAJ7IBlB8AZq/QAEACAZ/QAEAP1B/aMBRQRAIO8B/QwAAAAAAAAAAAAAAAAAAAAA/eYBINYBIBn9AATwBiLUAf3mAf3kASGSAiDnAf0MAAAAAAAAAAAAAAAAAAAAAP3mASCBAiDUAf3mAf3kASGPAiCOAiDUAf3mAf0MAAAAAAAAAAAAAAAAAAAAAP3kAQwBCyDvAf0MAAAAAAAAAAAAAAAAAAAAAP3mASGSAiDnAf0MAAAAAAAAAAAAAAAAAAAAAP3mASGPAv0MAAAAAAAAAAAAAAAAAAAAAAsh2AEg1wEg/QH95QEh7wEg8QEg5AH95QEh6wEg3gEg+AH95QEh8QEgGf0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgGf0ABAAh3gEgGf0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgGf0ABAAh3AEgGf0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgGf0ABAAh3QEgGf0MAAAAAAAAAAAAAAAAAAAAAP0LBPAGIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBlB8AZq/QAEACAZ/QAEAP1B/aMBIQEgGf0MAACAPwAAgD8AAIA/AACAP/0LBPAGIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAAnsgGUHwBmr9AAQAIBn9AAQA/UH9owFFBEAggAIg7wH95gEgkAIg8QH95gH9DAAAwH8AAMB/AADAfwAAwH8gARsgGf0ABPAGItQB/eYB/eQBIY4CIIACIOsB/eYBIJAC/QwAAAAAAAAAAAAAAAAAAAAA/eYB/QwAAMB/AADAfwAAwH8AAMB/IAEbINQB/eYB/eQBIf0BIIAC/QwAAAAAAAAAAAAAAAAAAAAA/eYBIJACIOQB/eYB/QwAAMB/AADAfwAAwH8AAMB/IAEbINQB/eYB/eQBDAELIIACIO8B/eYBIY4CIIACIOsB/eYBIf0BIIAC/QwAAAAAAAAAAAAAAAAAAAAA/eYBCyHWASD3ASDvAf3lASHtASAZ/QwAAIA/AACAPwAAgD8AAIA//QsE8AYgGf0MAAAAAAAAAAAAAAAAAAAAAP0LBAACeyAZQfAGav0ABAAgGf0ABAD9Qf2jAUUEQCDyAf0MAAAAAAAAAAAAAAAAAAAAAP3mASCOAiAZ/QAE8AYi1AH95gH95AEh/gEg8gEg7QH95gEg1gEg1AH95gH95AEh/wEg8gEg+AH95gEg/QEg1AH95gH95AEMAQsg8gH9DAAAAAAAAAAAAAAAAAAAAAD95gEh/gEg8gEg7QH95gEh/wEg8gEg+AH95gELIdYBIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwTwBiAZ/QwAAAAAAAAAAAAAAAAAAAAA/QsEACAZQfAGav0ABAAgGf0ABAD9Qf2jASEBIBn9DAAAgD8AAIA/AACAPwAAgD/9CwTwBiAZ/QwAAAAAAAAAAAAAAAAAAAAA/QsEAAJ7IBlB8AZq/QAEACAZ/QAEAP1B/aMBRQRAIPUBIO8B/eYBIJECIPEB/eYB/QwAAMB/AADAfwAAwH8AAMB/IAEbIBn9AATwBiLUAf3mAf3kASHXASD1ASDrAf3mASCRAv0MAAAAAAAAAAAAAAAAAAAAAP3mAf0MAADAfwAAwH8AAMB/AADAfyABGyDUAf3mAf3kASGBAiD1Af0MAAAAAAAAAAAAAAAAAAAAAP3mASCRAiDkAf3mAf0MAADAfwAAwH8AAMB/AADAfyABGyDUAf3mAf3kAQwBCyD1ASDvAf3mASHXASD1ASDrAf3mASGBAiD1Af0MAAAAAAAAAAAAAAAAAAAAAP3mAQsh2gEgGf0MAACAPwAAgD8AAIA/AACAP/0LBPAGIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAAnsgGUHwBmr9AAQAIBn9AAQA/UH9owFFBEAg9AH9DAAAAAAAAAAAAAAAAAAAAAD95gEg1wEgGf0ABPAGItQB/eYB/eQBIY4CIPQBIO0B/eYBINoBINQB/eYB/eQBIf0BIPQBIPgB/eYBIIECINQB/eYB/eQBDAELIPQB/QwAAAAAAAAAAAAAAAAAAAAA/eYBIY4CIPQBIO0B/eYBIf0BIPQBIPgB/eYBCyHUASDVASDpAf3lASH3ASAZ/QwAAAAAAAAAAAAAAAAAAAAA/QsE8AYgGf0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgGUHwBmr9AAQAIBn9AAQA/UH9owEhASAZ/QwAAIA/AACAPwAAgD8AAIA//QsE8AYgGf0MAAAAAAAAAAAAAAAAAAAAAP0LBAACeyAZQfAGav0ABAAgGf0ABAD9Qf2jAUUEQCD5ASDvAf3mASCGAiDxAf3mAf0MAADAfwAAwH8AAMB/AADAfyABGyAZ/QAE8AYi1QH95gH95AEh2gEg+QH9DAAAAAAAAAAAAAAAAAAAAAD95gEghgIg5AH95gH9DAAAwH8AAMB/AADAfwAAwH8gARsg1QH95gH95AEhgQIg+QEg6wH95gEghgL9DAAAAAAAAAAAAAAAAAAAAAD95gH9DAAAwH8AAMB/AADAfwAAwH8gARsg1QH95gH95AEMAQsg+QEg7wH95gEh2gEg+QH9DAAAAAAAAAAAAAAAAAAAAAD95gEhgQIg+QEg6wH95gELIdUBINMBIOYB/eUBIeYBIOoBIPcB/eUBIeoBIBn9DAAAgD8AAIA/AACAPwAAgD/9CwTwBiAZ/QwAAAAAAAAAAAAAAAAAAAAA/QsEAAJ7IBlB8AZq/QAEACAZ/QAEAP1B/aMBRQRAIPwB/QwAAAAAAAAAAAAAAAAAAAAA/eYBINoBIBn9AATwBiLTAf3mAf3kASH6ASD8ASDtAf3mASCBAiDTAf3mAf3kASHrASD8ASD4Af3mASDVASDTAf3mAf3kAQwBCyD8Af0MAAAAAAAAAAAAAAAAAAAAAP3mASH6ASD8ASDtAf3mASHrASD8ASD4Af3mAQsh1QEg0gEg4wH95QEh6QEg4gEg5gH95QEh4gEgGf0MAAAAAAAAAAAAAAAAAAAAAP0LBPAGIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBlB8AZq/QAEACAZ/QAEAP1B/aMBIQEgGf0MAACAPwAAgD8AAIA/AACAP/0LBPAGIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIIACIOoB/eYBIdoBAnsgGUHwBmr9AAQAIBn9AAQA/UH9owFFBEAggAL9DAAAAAAAAAAAAAAAAAAAAAD95gEgkAIg9wH95gH9DAAAwH8AAMB/AADAfwAAwH8gARv95AEh8AEg2gEgkAL9DAAAAAAAAAAAAAAAAAAAAAD95gH9DAAAwH8AAMB/AADAfwAAwH8gARv95AEh2gEggAIg6QH95gEgkAIg4gH95gH9DAAAwH8AAMB/AADAfwAAwH8gARv95AEMAQsggAL9DAAAAAAAAAAAAAAAAAAAAAD95gEh8AEggAIg6QH95gELIdIBIOUBIOkB/eUBIfEBIBn9DAAAgD8AAIA/AACAPwAAgD/9CwTwBiAZ/QwAAAAAAAAAAAAAAAAAAAAA/QsEAAJ7IBlB8AZq/QAEACAZ/QAEAP1B/aMBRQRAIPIB/QwAAAAAAAAAAAAAAAAAAAAA/eYBINIBIBn9AATwBiLSAf3mAf3kASHtASDyASDxAf3mASDwASDSAf3mAf3kASHwASDyASDmAf3mASDaASDSAf3mAf3kAQwBCyDyAf0MAAAAAAAAAAAAAAAAAAAAAP3mASHtASDyASDxAf3mASHwASDyASDmAf3mAQsh0wEgGf0MAAAAAAAAAAAAAAAAAAAAAP0LBPAGIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBlB8AZq/QAEACAZ/QAEAP1B/aMBIQEgGf0MAACAPwAAgD8AAIA/AACAP/0LBPAGIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAAnsgGUHwBmr9AAQAIBn9AAQA/UH9owFFBEAg9QEg6QH95gEgkQIg4gH95gH9DAAAwH8AAMB/AADAfwAAwH8gARsgGf0ABPAGItIB/eYB/eQBIeMBIPUBIOoB/eYBIJEC/QwAAAAAAAAAAAAAAAAAAAAA/eYB/QwAAMB/AADAfwAAwH8AAMB/IAEbINIB/eYB/eQBIdcBIPUB/QwAAAAAAAAAAAAAAAAAAAAA/eYBIJECIPcB/eYB/QwAAMB/AADAfwAAwH8AAMB/IAEbINIB/eYB/eQBDAELIPUBIOkB/eYBIeMBIPUBIOoB/eYBIdcBIPUB/QwAAAAAAAAAAAAAAAAAAAAA/eYBCyHaASAZ/QwAAIA/AACAPwAAgD8AAIA//QsE8AYgGf0MAAAAAAAAAAAAAAAAAAAAAP0LBAACeyAZQfAGav0ABAAgGf0ABAD9Qf2jAUUEQCD0Af0MAAAAAAAAAAAAAAAAAAAAAP3mASDjASAZ/QAE8AYi0gH95gH95AEh4wEg9AEg8QH95gEg2gEg0gH95gH95AEh5AEg9AEg5gH95gEg1wEg0gH95gH95AEMAQsg9AH9DAAAAAAAAAAAAAAAAAAAAAD95gEh4wEg9AEg8QH95gEh5AEg9AEg5gH95gELIdIBIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwTwBiAZ/QwAAAAAAAAAAAAAAAAAAAAA/QsEACAZQfAGav0ABAAgGf0ABAD9Qf2jASEBIBn9DAAAgD8AAIA/AACAPwAAgD/9CwTwBiAZ/QwAAAAAAAAAAAAAAAAAAAAA/QsEAAJ7IBlB8AZq/QAEACAZ/QAEAP1B/aMBRQRAIPkBIOkB/eYBIIYCIOIB/eYB/QwAAMB/AADAfwAAwH8AAMB/IAEbIBn9AATwBiLXAf3mAf3kASHaASD5ASDqAf3mASCGAv0MAAAAAAAAAAAAAAAAAAAAAP3mAf0MAADAfwAAwH8AAMB/AADAfyABGyDXAf3mAf3kASHqASD5Af0MAAAAAAAAAAAAAAAAAAAAAP3mASCGAiD3Af3mAf0MAADAfwAAwH8AAMB/AADAfyABGyDXAf3mAf3kAQwBCyD5ASDpAf3mASHaASD5ASDqAf3mASHqASD5Af0MAAAAAAAAAAAAAAAAAAAAAP3mAQsh5QEgGf0MAACAPwAAgD8AAIA/AACAP/0LBPAGIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAAnsgGUHwBmr9AAQAIBn9AAQA/UH9owFFBEAg/AH9DAAAAAAAAAAAAAAAAAAAAAD95gEg2gEgGf0ABPAGItcB/eYB/eQBIeIBIPwBIPEB/eYBIOUBINcB/eYB/eQBIdoBIPwBIOYB/eYBIOoBINcB/eYB/eQBDAELIPwB/QwAAAAAAAAAAAAAAAAAAAAA/eYBIeIBIPwBIPEB/eYBIdoBIPwBIOYB/eYBCyHXASAZIO4B/QsEsAYgGSD7Af0LBKAGIBkghAL9CwSQBiAZIOIB/QsE8AQgGSDaAf0LBOAEIBkg1wH9CwTQBCAZIOMB/QsEwAQgGSDkAf0LBLAEIBkg0gH9CwSgBCAZIO0B/QsEkAQgGSDwAf0LBIAEIBkg0wH9CwTwAyAZIPoB/QsE4AMgGSDrAf0LBNADIBkg1QH9CwTAAyAZII4C/QsEsAMgGSD9Af0LBKADIBkg1AH9CwSQAyAZIP4B/QsEgAMgGSD/Af0LBPACIBkg1gH9CwTgAiAZIPwB/QsEwAEgGSD5Af0LBLABIBkghgL9CwSgASAZIPQB/QsEkAEgGSD1Af0LBIABIBkgkQL9CwRwIBkg8gH9CwRgIBkggAL9CwRQIBkgkAL9CwRAIBkg7AEgiwL95gEi0gEg0gH95AEi1gEgiAIgigL95gEi0gEg0gH95AEi0wH95QH9CwTAAiAZIIgCIIsC/eYBItIBINIB/eQBItQBIOwBIIoC/eYBItIBINIB/eQBItUB/eQB/QsEsAIgGSDWASDTAf3kAf0LBKACIBkgiAIg7AH95gEi0gEg0gH95AEi0wEgiwIgigL95gEi0gEg0gH95AEi0gH95QH9CwSAAiAZINQBINUB/eUB/QsE8AEgGSDTASDSAf3kAf0LBOABIBkgiwIgiwL95gEi1gEgigIgigL95gEi1QEgiAIgiAL95gEi0wH95QEi0gEg7AEg7AH95gEi1AH95QH95AH9CwTQAiAZINQBINIB/eQBINYB/eUB/QsEkAIgGSDTASDVAf3kASDUAf3lASDWAf3lAf0LBNABIIwCIIgC/eYBIIcCIIsC/eYBItMB/eQBIOcBIOwB/eYBItIBIPYBIIoC/eYBItoB/eQB/eQB/QwAAACAAAAAgAAAAIAAAACA/U79DAAAgD8AAIA/AACAPwAAgD/9UCHXASAZINoBINMB/QwAAMB/AADAfwAAwH8AAMB/IBAb/eQBINgB/eQB/QwAAAA/AAAAPwAAAD8AAAA//eYBINcB/eYB/QsEgAYgGSDaASDSAf0MAADAfwAAwH8AAMB/AADAfyASG/3kASCNAv3kAf0MAAAAPwAAAD8AAAA/AAAAP/3mASDXAf3mAf0LBMAFIBkgggIg9gEgiwL95gEi2AEghwIgigL95gH95AEi1gH95QEg8wH95AH9DAAAAD8AAAA/AAAAPwAAAD/95gEg1wH95gH9CwSwBSAZINoBIN8B/eQBINkB/eQB/QwAAAA/AAAAPwAAAD8AAAA//eYBINcB/eYB/QsEgAUgGSCHAiDsAf3mAf0MAAAAAAAAAAAAAAAAAAAAAP3kAf0MAADAfwAAwH8AAMB/AADAfyASGyD2ASCIAv3mASLUASCMAiCKAv3mAf3kASLVAf3lASCDAv3kAf0MAAAAPwAAAD8AAAA/AAAAP/3mASDXAf3mAf0LBPAFIBkgiQIg9gEg7AH95gEi0wEg5wEgigL95gH95AEi0gEg4QH95QH95AEghQL95AH9DAAAAD8AAAA/AAAAPwAAAD/95gEg1wH95gH9CwTgBSAZIOcBIIsC/eYB/QwAAAAAAAAAAAAAAAAAAAAA/eQB/QwAAMB/AADAfwAAwH8AAMB/IBAbINUBIOgB/eUB/eQBIJIC/eQB/QwAAAA/AAAAPwAAAD8AAAA//eYBINcB/eYB/QsE0AUgGSCMAiCLAv3mAf0MAAAAAAAAAAAAAAAAAAAAAP3kAf0MAADAfwAAwH8AAMB/AADAfyAQGyDSAf3lASCPAv3kAf0MAAAAPwAAAD8AAAA/AAAAP/3mASDXAf3mAf0LBKAFIBkgjAIg7AH95gH9DAAAAAAAAAAAAAAAAAAAAAD95AH9DAAAwH8AAMB/AADAfwAAwH8gEhsg1gEg4AH95QH95AEg2wH95AH9DAAAAD8AAAA/AAAAPwAAAD/95gEg1wH95gH9CwSQBSAZINoBIIgCIN4BIIwC/eUBItYB/eYB/eUBIOwBINwBIOcB/eUBItUB/eYB/eUBIIsCIN0BIIcC/eUBItIB/eYB/eUBINcB/eYB/QsEMCAZINgBIOwBINYB/eYB/eQBIIgCINUB/eYB/eUBIIoCINIB/eYB/eQBINcB/eYB/QsEICAZINMBIIsCINYB/eYB/eUBIIoCINUB/eYB/eQBIIgCINIB/eYB/eQBINcB/eYB/QsEECAZINQBIIoCINYB/eYB/eQBIIsCINUB/eYB/eQBIOwBINIB/eYB/eUBINcB/eYB/QsEACAaKgIQQ9sPyUCUIpoBIBoqAgAimQEgmgGUIBoqAhQinAEgnAGSkpUhmwFDAACAPyCZASCbAZQimQGVQwAAgL+SIpoBIJoBlCCcASCcASCaAUMAAIA/kkMAAIBAlJSUlbxBACCZAUMAAAAAXBv9ESHdASCbAf0TIdcBIDtB4ABqISUgK0HgAGohHSA7QcABaiEWICtBwAFqIScgGUHwBmoiAUEgaiEQIAFBEGohASA7/QAEUCHaASA7/QAEQCH3ASA7/QAEMCHfASA7/QAEICHqASA7/QAEECHlASA7/QAEACHZASAr/QAEUCHbASAr/QAEQCHiASAr/QAEMCHYASAr/QAEICHgASAr/QAEECHoASAr/QAEACHWAUEAIRICQAJAAkACQANAICggEnZBAXEEQCABIBb9AAQA/QsEACAZICf9AAQA/QsE8AYgGSAvaiI0QUBr/QAEACHhASA0QdAAav0ABAAh3gEgNEHgAGr9AAQAIdwBIDRB4AJq/QAEACHjASA0QfACav0ABAAh6QEgNEGAA2r9AAQAIe0BIDRB8ANq/QAEACH9ASA0QYAEav0ABAAh5AEgNEGQBGr9AAQAIfEBIBn9AASQBiHUASAZ/QAEoAYh1QEgGf0ABLAGIdMBIBlBwAZq/QwAAAAAAAAAAAAAAAAAAAAA/QsEACAZ/QAEwAYh0gEgECA1/QACAP0LAgAgOCBMTw0CIA8gOEGQBGxqIjQgGf0ABPAG/QsEACA0/QwAAAAAAAAAAAAAAAAAAAAA/QsE0AIgNCDxAf0LBOABIDQg5AH9CwTQASA0IP0B/QsEwAEgNCDtAf0LBLABIDQg6QH9CwSgASA0IOMB/QsEkAEgNCDcAf0LBIABIDQg3gH9CwRwIDQg4QH9CwRgIDT9DP//f3///39///9/f///f3/9CwRQIDQg0gH9DP//f////3////9/////f//95AH9CwRAIDT9DAAAAAAAAAAAAAAAAAAAAAD9CwQwIDRBIGogEP0ABAD9CwQAIDRBEGogAf0ABAD9CwQAIDQg6gEg/QH95gEg9wEg5AH95gH95AEg2gEg8QH95gH95AH9CwTAAiA0IOUBIP0B/eYBIN8BIOQB/eYB/eQBIPcBIPEB/eYB/eQB/QsEsAIgNCDZASD9Af3mASDlASDkAf3mAf3kASDqASDxAf3mAf3kAf0LBKACIDQg4AEg4wH95gEg4gEg6QH95gH95AEg2wEg7QH95gH95AH9CwSQAiA0IOgBIOMB/eYBINgBIOkB/eYB/eQBIOIBIO0B/eYB/eQB/QsEgAIgNCDWASDjAf3mASDoASDpAf3mAf3kASDgASDtAf3mAf3kAf0LBPABIDQg1wEg1AEg4QH95gEg1QEg3gH95gH95AEg0wEg3AH95gH95AH95gH9DAAAAAAAAAAAAAAAAAAAAAD95AH9CwTgAiA0QYADav0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgNP0MAAAAAAAAAAAAAAAAAAAAAP0LBPACIDQg3QH9CwSQAyA0QQA2AoAEIDQgEjYChAQgNEHAA2ogHUEgav0ABAD9CwQAIDRBsANqIB1BEGr9AAQA/QsEACA0IB39AAQA/QsEoAMgNCAl/QAEAP0LBNADIDRB4ANqICVBEGr9AAQA/QsEACA0QfADaiAlQSBq/QAEAP0LBAAgOEEBaiE4CyASQQFqIRIgL0EwaiIvQZABRw0ACyAaKgIQQ9sPyUCUIpoBIBoqAgAimQEgmgGUIBoqAhQinAEgnAGSkpUhmwFDAACAPyCZASCbAZQimQGVQwAAgL+SIpoBIJoBlCCcASCcASCaAUMAAIA/kkMAAIBAlJSUlbxBACCZAUMAAAAAXBv9ESHaASCbAf0TId8BIBlBwAZqIgFBIGohGiABQRBqIRAgO/0ABFAh2QEgO/0ABEAh6AEgO/0ABDAh2wEgO/0ABCAh4QEgO/0ABBAh3gEgO/0ABAAh2AEgK/0ABFAh1gEgK/0ABEAh3AEgK/0ABDAh1AEgK/0ABCAh3QEgK/0ABBAh1wEgK/0ABAAh1QFBAyESIBlB8AZqIS9BACFbAkADQCAoIBJ2QQFxBEAgGSBbaiIBQYAFav0ABAAh5QEgAUGQBWr9AAQAIeIBIAFBoAVq/QAEACHgASAZIBn9AAQg/QsEkAcgGSAZ/QAEEP0LBIAHIBkgGf0ABAD9CwTwBiAv/QAEACHTASAQIBb9AAQA/QsEACAZICf9AAQA/QsEwAYgGUHwBmr9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBn9AATwBiHSASAaIDX9AAIA/QsCACA4IExPDQIgDyA4QZAEbGoiASAZ/QAEwAb9CwQAIAH9DP//f3///39///9/f///f3/9CwRQIAEg0gH9DP//f////3////9/////f//95AH9CwRAIAH9DAAAAAAAAAAAAAAAAAAAAAD9CwQwIAH9DAAAAAAAAAAAAAAAAAAAAAD9CwRgIAEg5QH9CwSQASABIOIB/QsEoAEgASDgAf0LBLABIAEg5QH9CwTAASABIOIB/QsE0AEgASDgAf0LBOABIAH9DAAAAAAAAAAAAAAAAAAAAAD9CwTQAiABIN8BINMB/eYB/QwAAAAAAAAAAAAAAAAAAAAA/eQB/QsE4AIgAUEgaiAa/QAEAP0LBAAgAUEQaiAQ/QAEAP0LBAAgAUHwAGr9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIAFBgAFq/QwAAAAAAAAAAAAAAAAAAAAA/QsEACABINUBIOUB/eYBINcBIOIB/eYB/eQBIN0BIOAB/eYB/eQB/QsE8AEgASDXASDlAf3mASDUASDiAf3mAf3kASDcASDgAf3mAf3kAf0LBIACIAEg3QEg5QH95gEg3AEg4gH95gH95AEg1gEg4AH95gH95AH9CwSQAiABINgBIOUB/eYBIN4BIOIB/eYB/eQBIOEBIOAB/eYB/eQB/QsEoAIgASDeASDlAf3mASDbASDiAf3mAf3kASDoASDgAf3mAf3kAf0LBLACIAEg4QEg5QH95gEg6AEg4gH95gH95AEg2QEg4AH95gH95AH9CwTAAiABQYADav0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgAf0MAAAAAAAAAAAAAAAAAAAAAP0LBPACIAEg2gH9CwSQAyABQQA2AoAEIAEgEjYChAQgAUHAA2ogHUEgav0ABAD9CwQAIAFBsANqIB1BEGr9AAQA/QsEACABIB39AAQA/QsEoAMgASAl/QAEAP0LBNADIAFB4ANqICVBEGr9AAQA/QsEACABQfADaiAlQSBq/QAEAP0LBAAgOEEBaiE4CyBbQTBqIVsgL0EQaiEvIBJBAWoiEkEGRw0ACyA4IExLDQIgOARAQQAhO0EAIDhrIVsgD/0ABMADIA/9AATwA/3kASHxASAP/QAEsAMgD/0ABOAD/eQBIfcBIA/9AASgAyAP/QAE0AP95AEh6gEgGUGAB2ohNCAPIQEDQCAPIDtBkARsaiIr/QAEgAIh6AEgK/0ABKABIeEBICv9AATwASHeASAr/QAEkAEh3AEgK/0ABJACId0BICv9AASwASHXASAr/QAEcCHlASAr/QAEYCHiASAr/QAEgAEh4AEgK/0ABLACIdoBICv9AATQASHfASAr/QAEoAIh2QEgK/0ABMABIdsBICv9AATAAiHYASAr/QAE4AEh1gEgK/0ABJADIdQBICv9AASAAyHSASAZQfAGaiIQ/QwAAAAAAAAAAAAAAAAAAAAA/QsEACAZ/QAE8AYh1QEgEP0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgGf0ABPAGIdMBICsg0gEg1AEg4AEg8QEg4AH95gH95gEg4gEg6gEg4gH95gH95gEg5QEg9wEg5QH95gH95gH95AH95AEg3AEg3gH95gEg4QEg6AH95gH95AEg1wEg3QH95gH95AH95AEg2wEg2QH95gEg3wEg2gH95gH95AEg1gEg2AH95gH95AH95AEi1AH95gH95AEi0gH9CwSAAyAr/QwAAAAAAAAAAAAAAAAAAAAA/QwAAIA/AACAPwAAgD8AAIA/INQBINIB/eQBItIB/ecBINIB/QwI5TweCOU8HgjlPB4I5Twe/UMg0wH9DAjlPJ4I5TyeCOU8ngjlPJ795AEg0gH9Q/1O/VL9CwTQAiAZQcAGav0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgGf0M//9/f///f3///39///9/f/0LBIAHIBkgGf0ABMAG/Qz//3////9/////f////3///eQB/QsE8AYgO0EBaiE7AkAgK0FAa/0ABAAgEP0ABAD9Qf2jAUUNACArQdAAav0ABAAgNP0ABAD9Qf2jAUUNACA4IDtNDQD9DAAAAAAAAAAAAAAAAAAAAAD9DAAAgD8AAIA/AACAPwAAgD8g1AH95wEg1AH9DAjlPB4I5TweCOU8HgjlPB79QyDVAf0MCOU8ngjlPJ4I5TyeCOU8nv3kASDUAf1D/U79UiHlAUF/IS8gASESA0AgL0UNByDqASAr/QAEYCLiAf3mASASQfAEaiJM/QAEACLgAf3mASD3ASAr/QAEcCLoAf3mASASQYAFaiIl/QAEACLhAf3mAf3kASASQZAFaiIQ/QAEACLeASDxASAr/QAEgAEi3AH95gH95gH95AEgK/0ABJABIt0BIBJBgAZqIh39AAQAItcB/eYBICv9AASgASLaASASQZAGaiIo/QAEACLfAf3mAf3kASAr/QAEsAEi2QEgEkGgBmoiNf0ABAAi2wH95gH95AH95AEgK/0ABMABItgBIBJBsAZqIhb9AAQAItYB/eYBICv9AATQASLTASASQcAGaiIn/QAEACLUAf3mAf3kASAr/QAE4AEi0gEgEkHQBmoiGv0ABAAi1QH95gH95AH95AEg5QH95gEh5AEgECDeASDcASDkAf3mAf3lAf0LBAAgJSDhASDoASDkAf3mAf3lAf0LBAAgTCDgASDiASDkAf3mAf3lAf0LBAAgEkGgBWoiECAQ/QAEACDdASDkAf3mAf3lAf0LBAAgEkGwBWoiECAQ/QAEACDaASDkAf3mAf3lAf0LBAAgEkHABWoiECAQ/QAEACDZASDkAf3mAf3lAf0LBAAgEkHQBWoiECAQ/QAEACDYASDkAf3mAf3lAf0LBAAgEkHgBWoiECAQ/QAEACDTASDkAf3mAf3lAf0LBAAgEkHwBWoiECAQ/QAEACDSASDkAf3mAf3lAf0LBAAgK/0ABPABIdMBICv9AASAAiHSASA1INsBIOQBICv9AASQAv3mAf3lAf0LBAAgKCDfASDkASDSAf3mAf3lAf0LBAAgHSDXASDkASDTAf3mAf3lAf0LBAAgK/0ABKACIdMBICv9AASwAiHSASAaINUBIOQBICv9AATAAv3mAf3lAf0LBAAgJyDUASDkASDSAf3mAf3lAf0LBAAgFiDWASDkASDTAf3mAf3lAf0LBAAgEkGAB2oiECAQ/QAEACDkASAr/QAE8AL95gH95QH9CwQAIBJB8AZqIhAgEP0ABAAg5AEgK/0ABOAC/eYB/eUB/QsEACASQZAEaiESIFsgL0EBayIvRw0ACwsgW0EBaiFbIAFBkARqIQEgOCA7Rw0ACwsgGUGgB2okAAwECyA4IExBsLHCABCFCwALIDggTEHAscIAEIULAAsgOCBMQaCxwgAQ8A4ACyAZQQA2AoAHIBlBATYC9AYgGUGIuMIANgLwBiAZQgQ3AvgGIBlB8AZqQbi4wgAQuQ0ACyACQaACaiECIA5BoAJrIg4NAAsLIFAEQCC8ASBps5QhrgFBACESICQhLUEAIQ4DQCAfIA5BuAdsaiEnAn0CQCAkIA5BxAFsaiIQKAKwASIBIGBJBEAgECgCtAEgXiABQRRsaiIPKAIARg0BCyAnKAKkByIBIENPBEBDAAAAACG5AUMAAAAAIagBQwAAAAAhsgFDAAAAACG4AUMAAAAAIb8BQwAAAAAhtgFDAACAPwwCCyA6IAFBBnRqIgEqAhghtgEgASoCFCG/ASABKgIQIbgBIAEqAgghsgEgASoCBCGoASABKgIAIbkBIAEqAgwMAQsgDygCBCIBIHZPDQ8gdyABQaQCbGoiAigCAEGAgICAeEYNDyACKAKgAiAPKAIIRw0PIA8oAhAiASACKAIITw0OIAIoAgQgAUHwA2xqIgEqArQDIbYBIAEqArADIb8BIAEqAqwDIbgBIAEqAqQDIbIBIAEqAqADIagBIAEqApwDIbkBIAEqAqgDCyGZAQJ9AkAgECgCuAEiASBgSQRAIBAoArwBIF4gAUEUbGoiDygCAEYNAQsgJygCqAciASBDTwRAQwAAgD8htwFDAAAAACGwAUMAAAAAIbQBQwAAAAAhswFDAAAAACGxAUMAAAAAIaoBQwAAAAAMAgsgOiABQQZ0aiIBKgIYIaoBIAEqAhQhsQEgASoCECGzASABKgIMIbcBIAEqAgghtAEgASoCBCGwASABKgIADAELIA8oAgQiASB2Tw0NIHcgAUGkAmxqIgIoAgBBgICAgHhGDQ0gAigCoAIgDygCCEcNDSAPKAIQIgEgAigCCE8NDCACKAIEIAFB8ANsaiIBKgK0AyGqASABKgKwAyGxASABKgKsAyGzASABKgKoAyG3ASABKgKkAyG0ASABKgKgAyGwASABKgKcAwshmgEgJy0AtQciAUEESw0KIAEEQCC+AUMAAAAAYEUNCiAnKgL8BiKsASAnKgLsBiKrAZQgJyoC+AYipwEgJyoC8AYipgGUkyGeASCnASAnKgL0BiKkAZQgJyoCgAcioQEgqwGUkyGcASChASCmAZQgrAEgpAGUkyGbASABQSxsIRAgvwH9EyCxAf0gASHYASC4Af0TILMB/SABIdYBILYB/RMgqgH9IAEh1AEgmQH9EyC3Af0gASHXASCyAf0TILQB/SABId4BIKgB/RMgsAH9IAEh3AEguQH9EyCaAf0gASHdAUEAIQ8gEiITISADQCAfICBqIgJBQGsiASoCACGZASABIMkBIJkBlDgCACACQcQAaiIBIJkBIAEqAgCSOAIAIA8gLWoiGkEQav0AAgAi2gEg3gH9DQgJCgsAAQIDAAECAwABAgMgGkEgaiIB/V0CACLSAf0NAAECAxQVFhcAAQIDAAECAyHfASACQTxqIBpBDGoqAgAgxwFDAAAAAEMAAAAAIBpBKGoqAgAgpAEgrgEgGkEIaioCAJQg1AEg3wEg1wEg3QEg2gEg0gH9DQQFBgcQERITAAECAwABAgMi1QH95gEg3AEg2gEg3gH9DQABAgMMDQ4PAAECAwABAgMi0wH95gH95QEi0gEg0gH95AEi2QH95gEg3QEg3gEg0wH95gEg3QEg3wH95gH95QEi0gEg0gH95AEi2wH95gEg3AEg3AEg3wH95gEg3gEg1QH95gH95QEi0gEg0gH95AEi0wH95gH95QH95AH95AH95AEi0gH9HwCSINIB/R8BkyKiAZQgqwEgrgEgGioCAJQg1gEgGkEcaiDaAf1WAgABINcBINMB/eYBINwBINkB/eYBIN4BINsB/eYB/eUB/eQB/eQB/eQBItIB/R8AkiDSAf0fAZMinwGUIKYBIK4BIBpBBGoqAgCUINgBIAEgGkEUav1cAgD9VgIAASDXASDbAf3mASDeASDTAf3mASDdASDZAf3mAf3lAf3kAf3kAf3kASLSAf0fAJIg0gH9HwGTIp0BlJKSkiKaASCaAUMAAAAAXRsgmgEgmgFcG5SSIpkBOAIAIAJBOGogmQFDAAAAACDIASC9ASClASCaAZKUIpkBIJkBIMgBXRsimQEgmQFDAAAAAF4bkjgCACATIB9qIhpBrANqIgEgGkGkA2oiMyoCACKaASABKgIAkjgCACAaQZADaiDHASChASCiAZQgpwEgnwGUIKwBIJ0BlJKSlCAaQZgDaioCAJI4AgAgGkGUA2ogxwEgngEgogGUIJsBIJ8BlCCcASCdAZSSkpQgGkGcA2oqAgCSOAIAIBpBqANqIgIgGkGgA2oiASoCACKZASACKgIAkjgCACAzIMkBIJoBlDgCACABIMkBIJkBlDgCACATQYwBaiETICBBzABqISAgECAPQSxqIg9HDQALCyAnIKMBOAKcByAtQcQBaiEtIBJBuAdqIRIgUCAOQQFqIg5HDQALCyBNBEAgvAEgabOU/RMh8wFBACESIEIhAUEAIRoDQCAX/QwAAAAAAAAAAAAAAAAAAIA//QsE8AEgFyA6IB4gGkGwHWxqIigoAuQcIhZBBnRqIicgF0HwAWoiNSAWIENJG/0ABAAi6AH9CwTwAiAXIDogKCgC4BwiAkEGdGoiICA1IAIgQ0kiExv9AAQAItwB/QsE4AIgOiAoKALsHCIzQQZ0aiIQIDUgMyBDSRshDiA6ICgoAugcIi1BBnRqIg8gNSAtIENJGyECIBMEeyAg/QAEEAX9DAAAAAAAAAAAAAAAAAAAAAALIdIBIA79AAQAIeEBIAL9AAQAId4BQgAhnQJCACGiAiAWIENJBEAgJykDGCGiAiAnKQMQIZ0CC/0MAAAAAAAAAAAAAAAAAAAAACH0Af0MAAAAAAAAAAAAAAAAAAAAACHUASAtIENJBEAgD/0ABBAh1AEL/QwAAAAAAAAAAAAAAAAAAAAAIecBIDMgQ0kEQCAQ/QAEECHnAQsgFyDSAf0LBLAEIBcgnQI3A8AEIBf9AAK0BCHdASAX/QADuAQh2gEgF/0AAuQCId8BIBf9AAPoAiHZASAX/QAC7AIh2wEgF/0MAAAAAAAAAAAAAAAAAACAP/0LBPABIBcgOiAoKAL0HCIQQQZ0aiIgIBdB8AFqIicgECBDSRv9AAQAIuUB/QsE8AIgFyA6ICgoAvAcIgJBBnRqIjMgJyACIENJIg8b/QAEACLYAf0LBOACIDogKCgC/BwiDkEGdGoiLSAnIA4gQ0kb/QAEACHiASA6ICgoAvgcIhNBBnRqIgIgJyATIENJG/0ABAAh4AEgDwRAIDP9AAQQIfQBC0IAIaACQgAhpAIgECBDSQRAICApAxAhoAIgICkDGCGkAgv9DAAAAAAAAAAAAAAAAAAAAAAh1wH9DAAAAAAAAAAAAAAAAAAAAAAh8gEgEyBDSQRAIAL9AAQQIfIBCyAOIENJBEAgLf0ABBAh1wELIBf9AALsAiHWASAX/QAD6AIh1QEgF/0AAuQCIdMBIBcg9AH9CwSwBCAXIKACNwPABCAoLQCQHSICQQRLDQggAgRAINsBIOgB/Q0AAQIDHB0eHwABAgMAAQIDIN4B/Q0AAQIDBAUGBxwdHh8AAQIDIOEB/Q0AAQIDBAUGBwgJCgscHR4fIe4BINkBIOgB/Q0AAQIDGBkaGwABAgMAAQIDIN4B/Q0AAQIDBAUGBxgZGhsAAQIDIOEB/Q0AAQIDBAUGBwgJCgsYGRobIf4BIN8BIOgB/Q0AAQIDFBUWFwABAgMAAQIDIN4B/Q0AAQIDBAUGBxQVFhcAAQIDIOEB/Q0AAQIDBAUGBwgJCgsUFRYXIf8BINwBIOgB/Q0AAQIDEBESEwABAgMAAQIDIN4B/Q0AAQIDBAUGBxAREhMAAQIDIOEB/Q0AAQIDBAUGBwgJCgsQERITIfYBINIBIJ0Cp/0cASDUAf0NAAECAwQFBgcQERITAAECAyDnAf0NAAECAwQFBgcICQoLEBESEyHoASDaASCiAqf9HAEg1AH9DQABAgMEBQYHGBkaGwABAgMg5wH9DQABAgMEBQYHCAkKCxgZGhsh4QEg3QEgnQJCIIin/RwBINQB/Q0AAQIDBAUGBxQVFhcAAQIDIOcB/Q0AAQIDBAUGBwgJCgsUFRYXId4BINYBIOUB/Q0AAQIDHB0eHwABAgMAAQIDIOAB/Q0AAQIDBAUGBxwdHh8AAQIDIOIB/Q0AAQIDBAUGBwgJCgscHR4fIfsBINUBIOUB/Q0AAQIDGBkaGwABAgMAAQIDIOAB/Q0AAQIDBAUGBxgZGhsAAQIDIOIB/Q0AAQIDBAUGBwgJCgsYGRobIfgBINMBIOUB/Q0AAQIDFBUWFwABAgMAAQIDIOAB/Q0AAQIDBAUGBxQVFhcAAQIDIOIB/Q0AAQIDBAUGBwgJCgsUFRYXIfoBINgBIOUB/Q0AAQIDEBESEwABAgMAAQIDIOAB/Q0AAQIDBAUGBxAREhMAAQIDIOIB/Q0AAQIDBAUGBwgJCgsQERITIe8BIPQBIKACp/0cASDyAf0NAAECAwQFBgcQERITAAECAyDXAf0NAAECAwQFBgcICQoLEBESEyHcASAX/QADuAQgpAKn/RwBIPIB/Q0AAQIDBAUGBxgZGhsAAQIDINcB/Q0AAQIDBAUGBwgJCgsYGRobId0BIBf9AAK0BCCgAkIgiKf9HAEg8gH9DQABAgMEBQYHFBUWFwABAgMg1wH9DQABAgMEBQYHCAkKCxQVFhch2gEgKP0ABMABIu0BICj9AAQAIv0B/eYBICj9AASwASLkASAo/QAEECLxAf3mAf3lASHfASDkASAo/QAEICL3Af3mASAo/QAE0AEi6gEg/QH95gH95QEh2QEg6gEg8QH95gEg7QEg9wH95gH95QEh2wEgAkGwAWwhDkEAIRAgEiIPIRMDQCABIBBqIgJBMGr9AAQAIdgBIAJBoAFq/QAEACHWASACQSBq/QAEACHSASAC/QAEACHUASACQRBq/QAEACHVASACQeAAav0ABAAh4AEgAkHQAGr9AAQAIYQCIAJBQGv9AAQAIesBIAJBkAFq/QAEACHmASACQYABav0ABAAh4wEgAkHwAGr9AAQAIekBIBdBsARq/QwAAAAAAAAAAAAAAAAAAAAA/QsEACAX/QAEsAQh0wEgDyAeaiIgQeADaiIC/QAEACHXASACIJMCINcB/eYB/QsEACAgQfADaiICINcBIAL9AAQA/eQB/QsEACAgQdADaiDYASCUAv0MAAAAAAAAAAAAAAAAAAAAACDWASD3ASDzASDSAf3mASDgASCEAiD2Af3mASDrASD/Af3mAf3lASLSASDSAf3kASLlASDuAf3mASDrASD+Af3mASDgASD2Af3mAf3lASLSASDSAf3kASLiASD2Af3mASDgASD/Af3mASCEAiD+Af3mAf3lASLSASDSAf3kASLgASD/Af3mAf3lAf3kAf3kASDhAf3kAf3kASDmASDjASDvAf3mASDpASD6Af3mAf3lASLSASDSAf3kASLXASD7Af3mASDpASD4Af3mASDmASDvAf3mAf3lASLSASDSAf3kASLYASDvAf3mASDmASD6Af3mASDjASD4Af3mAf3lASLSASDSAf3kASLSASD6Af3mAf3lAf3kAf3kASDdAf3kAf3lASLWAf3mASD9ASDzASDUAf3mASDrASDgASDuAf3mASDlASD/Af3mASDiASD+Af3mAf3lAf3kAf3kASDoAf3kAf3kASDpASDSASD7Af3mASDXASD6Af3mASDYASD4Af3mAf3lAf3kAf3kASDcAf3kAf3lASLUAf3mASDxASDzASDVAf3mASCEAiDiASDuAf3mASDgASD+Af3mASDlASD2Af3mAf3lAf3kAf3kASDeAf3kAf3kASDjASDYASD7Af3mASDSASD4Af3mASDXASDvAf3mAf3lAf3kAf3kASDaAf3kAf3lASLVAf3mAf3kAf3kAf3kASLYAf0MAAAAAAAAAAAAAAAAAAAAAP3rASDYASDYAf1C/VL95gH95AEi0gH9CwQAICBBwANqINIBINMBIJkC/eUBItIB/QwAAAAAAAAAAAAAAAAAAAAAIJgCIJsCINgB/eQB/eYBItMB/QwAAAAAAAAAAAAAAAAAAAAA/eoBINMBINMB/UL9UiLTASDSAf3rASDT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IBD9AASQECHxASAQ/QAE0A0h9wEgEP0ABIAOIeoBIBD9AASgECHlASAQ/QAE4A0h3wEgEP0ABJAOIdkBIBD9AARgIeIBIBD9AARwIeABIBD9AASAASHoASAQ/QAE0A8h2AEgEP0ABOAPIdMBIBD9AATAECGHAiAQ/QAE8A8h0gEgJSCFAiDWASCRAiCAAv3mASD8ASDbASCQAv3mASCPAiCSAv3mAf3lASLWAf3mAf3kAf3mAf3kASKNAv0LBEAgJSDcASDVASCQAiCAAv3mASD8ASCGAiCPAv3mASDbASCRAv3mAf3lASLVAf3mAf3kAf3mAf3kASLbAf0LBDAgJf0AAjQh4QEgJf0AAzgh3gEgJf0AAjwh3AEgJSDUASCAAiCEAv3mASD8ASDdAf3mAf3kAf3kASDSASCHAv3mAf3kASKJAv1aAigCICUgiQL9WwMgACAlINcBIIACIO4B/eYBIPwBIPsB/eYB/eQB/eQBINMBIIcC/eYB/eQBItMB/QsEECCDAiDzASCPAiCAAv3mASD8ASCRAiCSAv3mASCGAiCQAv3mAf3lASLSAf3mAf3kAf3mAf3kASHuASCOAiCAAiD6Af3mASD8ASDvAf3mAf3kAf3kASDYASCHAv3mAf3kASH7ASDWASDaASD8Af3lASKEAv3mASHdASDjASDrASCAAv3lASLjAf3mASHYASDVASCEAv3mASHXASDjASDmAf3mASHWASD8ASDZAf3mASHaASCAAiDfAf3mASHUASD8ASDqAf3mASHfASCAAiD3Af3mASHVASABIChJDQEMAgsgAUEEQZinwgAQ8A4ACyAdIAFBBXRqIgEg0wEgiQL9DQABAgMQERITAAECAwABAgMg/gH9DQABAgMEBQYHEBESEwABAgMg/wH9DQABAgMEBQYHCAkKCxAREhP9CwQQIAEg2wEgjQL9DQABAgMQERITAAECAwABAgMg7gH9DQABAgMEBQYHEBESEwABAgMg+wH9DQABAgMEBQYHCAkKCxAREhP9CwQACyDSASCEAv3mASHZASDjASDpAf3mASHTASD8ASDkAf3mASHbASCAAiD9Af3mASHSASDYASDdAf3kASHYASDWASDXAf3kASHWASDUASDaAf3kASHUASDVASDfAf3kASHVASACIChJBEAgHSACQQV0aiIBICX9AAIUIIkC/RsB/RwBIKICp/0cAiCiAkIgiKf9HAP9CwQQIAEg4QEgjQL9DQABAgMUFRYXAAECAwABAgMg7gH9DQABAgMEBQYHFBUWFwABAgMg+wH9DQABAgMEBQYHCAkKCxQVFhf9CwQACyDTASDZAf3kASHTASDSASDbAf3kASHSASDYASDgAf3mASHfASDiASDWAf3mASHZASD1ASDUAf3kASHbASCHAiDlAf3mASHYASDsASDVAf3kASHWASCHAiDxAf3mASHUASAOIChJBEAgHSAOQQV0aiIBICX9AAMYIIkC/Q0AAQIDGBkaGwABAgMAAQIDIPAB/Q0AAQIDBAUGBxgZGhscHR4f/QsEECABIN4BII0C/Q0AAQIDGBkaGwABAgMAAQIDIO4B/Q0AAQIDBAUGBxgZGhsAAQIDIPsB/Q0AAQIDBAUGBwgJCgsYGRob/QsEAAsg0wEg6AH95gEh1QEg5wEg0gH95AEh0wEghwIg7QH95gEh0gEggQIg3wH95AEh3wEg9AEg2QH95AEh2QEg2wEg2AH95AEh2wEg1gEg1AH95AEh1AEgEiAoSQRAIB0gEkEFdGoiASAl/QACHCCJAv0NAAECAxwdHh8AAQIDAAECAyD5Af0NAAECAwQFBgcYGRobHB0eH/0LBBAgASDcASCNAv0NAAECAxwdHh8AAQIDAAECAyDuAf0NAAECAwQFBgccHR4fAAECAyD7Af0NAAECAwQFBgcICQoLHB0eH/0LBAALIPIBINUB/eQBIdgBINMBINIB/eQBIdYBIBAoAswRIRIgECgCyBEhDiAQKALEESECIBAoAsARIQEgJSDZAf0LBDAgJSDfAf0LBEAgJf0AAjQh1QEgJf0AAzgh0wEgJf0AAjwh0gEgJSDbAf1aAigCICUg2wH9WwMgACAlINQB/QsEECABIChJBEAgHSABQQV0aiIBINQBINsB/Q0AAQIDEBESEwABAgMAAQIDIPYB/Q0AAQIDBAUGBxAREhMAAQIDIPgB/Q0AAQIDBAUGBwgJCgsQERIT/QsEECABINkBIN8B/Q0AAQIDEBESEwABAgMAAQIDINgB/Q0AAQIDBAUGBxAREhMAAQIDINYB/Q0AAQIDBAUGBwgJCgsQERIT/QsEAAsgAiAoSQRAIB0gAkEFdGoiASAl/QACFCDbAf0bAf0cASCdAqf9HAIgnQJCIIin/RwD/QsEECABINUBIN8B/Q0AAQIDFBUWFwABAgMAAQIDINgB/Q0AAQIDBAUGBxQVFhcAAQIDINYB/Q0AAQIDBAUGBwgJCgsUFRYX/QsEAAsgDiAoSQRAIB0gDkEFdGoiASAl/QADGCDbAf0NAAECAxgZGhsAAQIDAAECAyCCAv0NAAECAwQFBgcYGRobHB0eH/0LBBAgASDTASDfAf0NAAECAxgZGhsAAQIDAAECAyDYAf0NAAECAwQFBgcYGRobAAECAyDWAf0NAAECAwQFBgcICQoLGBkaG/0LBAALIBIgKEkEQCAdIBJBBXRqIgEgJf0AAhwg2wH9DQABAgMcHR4fAAECAwABAgMgigL9DQABAgMEBQYHGBkaGxwdHh/9CwQQIAEg0gEg3wH9DQABAgMcHR4fAAECAwABAgMg2AH9DQABAgMEBQYHHB0eHwABAgMg1gH9DQABAgMEBQYHCAkKCxwdHh/9CwQACyAlQdAAaiQAIBBBgBJqIRBBACECDAALAAsACyBcBEBBACEgA0AgPSEPIBUhEyAwIRADQEEBIQIDQAJAIAJBAXFFDQACQCAPRQ0AIA8gfkYNACAPICkgRiBiEFkgD0HIAGohAgNAIAIgfkYNASACICkgRiBiEFkgAkHIAGohAgwACwALQQAhDyATIF1GDQAgEyBGEJQDIBNBiAFqIRMMAgsgECBTRwRAIBAgRhCEASAQQZAEaiEQQQAhAgwBCwsLIB8hDyAeIRMgGCEQA0BBASECA0ACQCACQQFxRQ0AAkAgD0UNACAPIHNGDQAgDyAuIEYgYhBGIA9BuAdqIQIDQCACIHNGDQEgAiAuIEYgYhBGIAJBuAdqIQIMAAsAC0EAIQ8gEyCKAUYNACATIEYQViATQbAdaiETDAILIBAgiQFHBEAgECBGEEogEEGAEmohEEEAIQIMAQsLCyBcICBBAWoiIEcNAAsLAkAgeEUNAEEAIQIggwEgeEEESXJFBEAgKiEPIDohAiBHIRADQCAQQegAaiAQQcgAaiAQQShqIBBBCGr9XAIA/VYCAAH9VgIAAv1WAgADIdYBIAJBxAFqIicgAkGEAWoiMyACQcQAaiACQQRq/VwCAP1WAgAB/VYCAAL9VgIAAyHdASAQQfQAaiAQQdQAaiAQQTRqIBBBFGr9XAIA/VYCAAH9VgIAAv1WAgADIdQBIAJBwAFqIi0gAkGAAWoiICACQUBrIhogAv1cAgD9VgIAAf1WAgAC/VYCAAMh1wEgAkHMAWogAkGMAWogAkHMAGogAkEMav1cAgD9VgIAAf1WAgAC/VYCAAMh2gEgEEHsAGogEEHMAGogEEEsaiAQQQxq/VwCAP1WAgAB/VYCAAL9VgIAAyHVASACQcgBaiACQYgBaiACQcgAaiACQQhq/VwCAP1WAgAB/VYCAAL9VgIAAyHfASAQQfAAaiAQQdAAaiAQQTBqIBBBEGr9XAIA/VYCAAH9VgIAAv1WAgADIdMBIBBB5ABqIBBBxABqIBBBJGogEEEEav1cAgD9VgIAAf1WAgAC/VYCAAMh0gEglQIgEEHgAGogEEFAayAQQSBqIBD9XAIA/VYCAAH9VgIAAv1WAgAD/eYBIAJB0AFqIAJBkAFqIAJB0ABqIg4gAkEQaiIB/VwCAP1WAgAB/VYCAAL9VgIAA/3kASHZASABINkB/R8AOAIAIA4g2QH9HwE4AgAglQIg0gH95gEgAkHUAWoiEiACQZQBaiITIAJB1ABqIg4gAkEUaiIB/VwCAP1WAgAB/VYCAAL9VgIAA/3kASHSASABINIB/R8AOAIAIA4g0gH9HwE4AgAgEyDSAf0fAjgCACASINIB/R8DOAIAIC0g3wEglgIg0wH95gEi2wH95gEg1wEg2gEglgIg1QH95gEi2AH95gH95AH95AEg3QEglgIg1AH95gEi0gH95gH95QEi1AEg1wEg0gH95gEg2wEg2gH95gEg3QEg2AEg3wH95gH95QH95AH95AEi1QEg1QH95gEg2gEg2AEg1wH95gH95QEg2wEg3QH95gH95QEg0gEg3wH95gH95QEi0wEg0wH95gH95AEg0gEg2gH95gEg3wEg2AEg3QH95gH95AEg2wEg1wH95gH95QH95AEi0gEg0gH95gEg1AEg1AH95gH95AH95AH94wEi2wH95wEi2AH9HwM4AgAgICDYAf0fAjgCACAaINgBINUBINsB/ecBItQB/Q0EBQYHFBUWFwABAgMAAQIDINIBINsB/ecBItUBINMBINsB/ecBItIB/Q0AAQIDAAECAwQFBgcUFRYX/Q0AAQIDBAUGBxgZGhscHR4f/QsCACAzINQBINUB/Q0ICQoLGBkaGwABAgMAAQIDINIBINkB/Q0AAQIDAAECAwgJCgsYGRob/Q0AAQIDBAUGBxgZGhscHR4f/QsCACAnINQBINUB/Q0MDQ4PHB0eHwABAgMAAQIDINIBINkB/Q0AAQIDAAECAwwNDg8cHR4f/Q0AAQIDBAUGBxgZGhscHR4f/QsCACACINgBINQB/Q0AAQIDEBESEwABAgMAAQIDINUB/Q0AAQIDBAUGBxAREhMAAQIDINIB/Q0AAQIDBAUGBwgJCgsQERIT/QsCACCVAiDWAf3mASACQdgBaiITIAJBmAFqIiAgAkHYAGoiMyACQRhqIi39XAIA/VYCAAH9VgIAAv1WAgAD/eQBIdIBIBMg0gH9HwM4AgAgICDSAf0fAjgCACAzINIB/R8BOAIAIC0g0gH9HwA4AgAgAkGAAmohAiAQQYABaiEQIA9BBGsiDw0ACyB4ICoiAkYNAQsgeCACayEPIEcgAkEFdGohECA6IAJBBnRqIQIDQCAQQQhqKgIAIZ4BIBBBFGoqAgAhnAEgEEEMaioCACGbASAQQRBqKgIAIZoBIBBBBGoqAgAhmQEgAkEQaiIBILwBIBAqAgCUIAEqAgCSOAIAIAJBFGoiASC8ASCZAZQgASoCAJI4AgAgAkEMaiIOKgIAIqYBIMoBIJsBlCKkASACKgIAIqEBlJMgygEgmgGUIqIBIAJBBGoiASoCACKfAZSTIMoBIJwBlCKdASACQQhqIiAqAgAinAGUkyGZASAOIJkBIKEBIJ0BlCCiASCmAZQgnwEgpAEgnAGUk5KSIpsBIJsBlCCZASCZAZSSIJ0BIKYBlCCkASCfAZQgnAGSIKIBIKEBlJOSIpoBIJoBlCCiASCcAZQgoQEgpAEgpgGUkpIgnQEgnwGUkyKZASCZAZSSkpEinAGVOAIAICAgmgEgnAGVOAIAIAEgmwEgnAGVOAIAIAIgmQEgnAGVOAIAIAJBGGoiEyC8ASCeAZQgEyoCAJI4AgAgEEEgaiEQIAJBQGshAiAPQQFrIg8NAAsLIHoEQCAxIS0DQAJAAkACQCAtKAIAIgEgdk8NACB3IAFBpAJsaiIzKAIAQYCAgIB4Rg0AIDMoAqACIC0oAgRHDQACQCCGASAzKAKUAiITIDMoApgCIgFqTwRAIDNBGGooAgAgE0cNIyAzQRBqIRoCQCATRQ0AIAFBAnQhJyAaKAIAIQFBACEgAkAgE0EESQ0AIAEgJyA/aiICa0EQSQ0AIBNBfHEiICEPIAEhEANAIBAgAv0AAgD9CwIAIBBBEGohECACQRBqIQIgD0EEayIPDQALIBMgIEYNAQsgICESIBNBA3EiDwRAID8gEkECdCIOICdqaiECIA8gEmohEiABIA5qIRADQCAQIAIqAgA4AgAgAkEEaiECIBBBBGohECAPQQFrIg8NAAsLICAgE2tBfEsNACA/IBJBAnQiDiAnamohAiATIBJrIQ8gASAOaiEQA0AgECACKgIAOAIAIBBBBGogAkEEaioCADgCACAQQQhqIAJBCGoqAgA4AgAgEEEMaiACQQxqKgIAOAIAIBBBEGohECACQRBqIQIgD0EEayIPDQALCyAzKAIIIgEEQCAzKAIEIQIgAUHwA2whEyAaKAIAISAgMygCFCEOA0AgAkGUA2ooAgAiASAOSw0DICAgAUECdGohEiAOIAFrIQ9BACEQQwAAAAAhugFDAAAAACGpAUMAAAAAIZoBIwBBIGsiGiQAAkACQCACLQDIAiIBQQFxRQRAIA9FDQEgAiACKgLQAiC8ASASKgIAlJI4AtACQQEhEAsgAUECcUUEQCAPIBBNDQEgAiACKgLUAiC8ASASIBBBAnRqKgIAlJI4AtQCIBBBAWohEAsgAUEEcUUEQCAPIBBNDQEgAiACKgLYAiC8ASASIBBBAnRqKgIAlJI4AtgCIBBBAWohEAsCQAJAAkACQAJAAkAgAUEDdiIBaQ4EAQQAAgULIA8gEE0EQCAQIA9B4MPCABCFCwALIAFBf3NoIgFBA0kEQCABQQJ0Ig8gAmpB3AJqIgEqAgAgvAEgEiAQQQJ0aioCAJSSIZkBIAEgmQE4AgAgGkEANgIQIBpCADcCCCAaQQhqIA9qQYCAgPwDNgIAIBoqAgghnAEgGioCDCGbASAaKgIQIZoBIAIgmQFDAAAAP5QimQEQvA84AgwgAiCaASCZARC7DyKZAZQ4AgggAiCZASCbAZQ4AgQgAiCZASCcAZQ4AgAMAgsgGkEANgIYIBpBATYCDCAaQeyAwgA2AgggGkIENwIQIBpBCGpB8MPCABC5DQALIBBBA2oiASAPSw0BQwAAgD8hmwEgvAEgEiAQQQJ0aiIBKgIElCKdAUMAAAA/lCKhASChAZQgvAEgASoCAJQingFDAAAAP5QiogEgogGUkiC8ASABKgIIlCKcAUMAAAA/lCKfASCfAZSSIpkBQwAAAABfRQRAIJ8BIJkBkSKbARC7DyCbAZUimQGUIZoBIKEBIJkBlCGpASCiASCZAZQhugEgmwEQvA8hmwELIAIgngEgAioC3AKSOALcAiACIJ0BIAIqAuACkjgC4AIgAiCcASACKgLkApI4AuQCIAIgmwEgAioCDCKdAZQgugEgAioCACKeAZSTIKkBIAIqAgQinAGUkyCaASACKgIIIpkBlJM4AgwgAiCaASCdAZQgugEgnAGUIJsBIJkBlJIgqQEgngGUk5I4AgggAiCaASCeAZQgqQEgnQGUIJsBIJwBlCC6ASCZAZSTkpI4AgQgAiCpASCZAZQgmwEgngGUILoBIJ0BlJKSIJoBIJwBlJM4AgALIBpBIGokAAwECyABIA9BkMTCABDwDgALQZSdwgBBE0GAxMIAENYMAAtB7NzBAEEoQaDEwgAQ1gwACyAQIA9BsMTCABCFCwALIAJB8ANqIQIgE0HwA2siEw0ACwsgMyAGQQAQJiAzKAIIIgFFDQQgAUHwA2whDyAzKAIEIRMgUSBpRg0DIBNBnANqIQIDQAJAIAJBLGsoAgAiASB1Tw0AIHQgAUGAA2xqIg4oAgBBAUcNACAOKAIEIAJBKGsoAgBHDQAgAkEQaikCACGdAiAC/QACACHSASAOQfQAaiACQRhqKAIANgIAIA5B7ABqIJ0CNwIAIA4g0gH9CwJcIA4tAPUCIRMgF0GwBGoiASAOQZgCaiIgIAIQqgggDkGIAmogiwEoAgA2AgAgDiAXKQKwBDcCgAIgDiAOKgK0AiKZATgClAIgDiCZATgCkAIgDiCZATgCjAIgASAgIAIQlQMgDkH4AWogAUEQaikCADcCACAOIBf9AAKwBP0LAugBAkAgEwRAIA5BADYClAIgDkIANwKMAiAOQegBav0MAAAAAAAAAAAAAAAAAAAAAP0LAgAMAQsgDi0AyAIiE0EBcQRAIA5BADYCjAILIBNBAnEEQCAOQQA2ApACCyATQQRxBEAgDkEANgKUAgsgE0EIcQRAIA5BADYC8AEgDkIANwLoAQsgE0EQcQRAIA5BADYC7AEgDkIANwL0AQsgE0EgcUUNAQsgDkEANgLwASAOQgA3AvgBCyACQfADaiECIA9B8ANrIg8NAAsMBAsMIQsgASAOQZiXwgAQ7w4AC0GIyMIAEPIOAAsgEyECAkAgAUHwA2xB8ANrIgFB8ANuQQFxDQAgAkHwA2ohAiB1IBMoAvACIiBNDQAgdCAgQYADbGoiICgCAEEBRw0AICAoAgQgEygC9AJHDQAgE0GsA2opAgAhnQIgE/0AApwDIdIBICBB9ABqIBNBtANqKAIANgIAICBB7ABqIJ0CNwIAICAg0gH9CwJcCyABQfADSQ0AIA8gE2ohDwNAAkAgAkHwAmooAgAiASB1Tw0AIHQgAUGAA2xqIgEoAgBBAUcNACABKAIEIAJB9AJqKAIARw0AIAJBnANq/QACACHSASACQawDaikCACGdAiABQfQAaiACQbQDaigCADYCACABQewAaiCdAjcCACABINIB/QsCXAsCQCACQeAGaigCACIBIHVPDQAgdCABQYADbGoiASgCAEEBRw0AIAEoAgQgAkHkBmooAgBHDQAgAkGMB2r9AAIAIdIBIAJBnAdqKQIAIZ0CIAFB9ABqIAJBpAdqKAIANgIAIAFB7ABqIJ0CNwIAIAEg0gH9CwJcCyAPIAJB4AdqIgJHDQALCwJAIFEgaUYNACAzILwBIHQgdRAkIDMgdCB1EEwgMygClAIiDyAzKAKYAiICaiCGAUsNHiAXIDMoAjgiATYC4AIgFyAPNgLwASABIA9HDQQgMygCNCITRQ0AIAJBAnQhASAzKAIwITNBACEgIBNBBE8EQCABIDJqIQIgE0F8cSIgIQ8gMyEQA0AgAiCVAiAQ/QACAP3mAf0LAgAgEEEQaiEQIAJBEGohAiAPQQRrIg8NAAsgEyAgRg0BCyAyIAEgIEECdCIBamohAiATICBrIQ8gASAzaiEQA0AgAiC8ASAQKgIAlDgCACACQQRqIQIgEEEEaiEQIA9BAWsiDw0ACwsgeyAtQRBqIi1HDQALCyBZBEBBACEgA0AgPSECIBUhEyAwIQ8DQEEBIRADQAJAIBBBAXFFDQACQCACRQ0AIAIgfkYNACACIAIqAjg4AjQgAiApIEYgYhBZIAJBgAFqIQIDQCACQThrIgEgfkYNASACQQRrIAIqAgA4AgAgASApIEYgYhBZIAJByABqIQIMAAsAC0EAIQIgEyBdRg0AIBMgEyoCZDgCYCATIEYQlAMgE0GIAWohEwwCCyAPIFNHBEAgDyAP/QAE8AL9CwTgAiAPIEYQhAEgD0GQBGohD0EAIRAMAQsLCyAfIQIgHiETIBghDwNAQQEhEANAAkAgEEEBcUUNAAJAIAJFDQAgAiBzRg0AIAJBgICA/AM2ApwHIAIgAioCPDgCOCACIAIqAogBOAKEASACIAIqAtQBOALQASACIAIqAqACOAKcAiACIAIpApgDNwKQAyACIAIpAqQENwKcBCACIAIpArAFNwKoBSACIAIpArwGNwK0BiACIC4gRiBiEEYDQCACQbgHaiIBIHNGDQEgAkHUDmpBgICA/AM2AgAgAkHwB2ogAkH0B2oqAgA4AgAgAkG8CGogAkHACGoqAgA4AgAgAkGICWogAkGMCWoqAgA4AgAgAkHUCWogAkHYCWoqAgA4AgAgAkHICmogAkHQCmopAgA3AgAgAkHUC2ogAkHcC2opAgA3AgAgAkHgDGogAkHoDGopAgA3AgAgAkHsDWogAkH0DWopAgA3AgAgASAuIEYgYhBGIAEhAgwACwALQQAhAiATIIoBRg0AIBP9DAAAgD8AAIA/AACAPwAAgD/9CwSQASATIBP9AATQA/0LBMADIBMgE/0ABIAG/QsE8AUgEyAT/QAEsAj9CwSgCCATIBP9AATgCv0LBNAKIBMgE/0ABMAO/QsEoA4gEyAT/QAE8BL9CwTQEiATIBP9AASgF/0LBIAXIBNBsA5qIBNB0A5q/QAEAP0LBAAgE0HgEmogE0GAE2r9AAQA/QsEACATQZAXaiATQbAXav0ABAD9CwQAIBNBwBtqIBNB4Btq/QAEAP0LBAAgEyAT/QAE0Bv9CwSwGyATIEYQViATQbAdaiETDAILIA8giQFHBEAgD/0MAACAPwAAgD8AAIA/AACAP/0LBJABIA8gD/0ABNAD/QsEwAMgDyAP/QAEgAb9CwTwBSAPIA/9AASwCP0LBKAIIA8gD/0ABOAK/QsE0AogDyAP/QAEwA79CwSgDiAPQbAOaiAPQdAOav0ABAD9CwQAIA8gRhBKIA9BgBJqIQ9BACEQDAELCwsgWSAgQQFqIiBHDQALCyCEASBpQQFqImlHDQALIAAoAlAiAkGAlOvcA0cNFwwYCwwbCwwYC0EEIBBBgODBABDXDQALIBogEEGA4MEAENcNAAsgAkEEQYinwgAQ8A4ACyACQQRBqKPCABDwDgALIMgBQwAAAAAQhgsACyABQQRByKTCABDwDgALQYilwgAQ8g4AC0HQi8IAQRNB+KTCABDRCwALQeikwgAQ8g4AC0HQi8IAQRNB2KTCABDRCwALIAEgckGArcIAEO8OAAtB8KzCABDyDgALQdCLwgBBE0HgrMIAENELAAtB0KzCABDyDgALQdCLwgBBE0HArMIAENELAAsgEyByQfCtwgAQ7w4AC0HgrcIAEPIOAAtB0IvCAEETQdCtwgAQ0QsACyABIIcBQbCuwgAQ7w4ACyABIIgBQaCuwgAQ7w4ACyAmBEBBACEYA0AgGCBEaiICQQhqKgIAIaABIAJBBGoqAgAhtQEgGCBHaiIDIAIqAgAgAyoCAJI4AgAgA0EEaiIAILUBIAAqAgCSOAIAIANBCGoiACCgASAAKgIAkjgCACACQRRqKgIAIaABIAJBEGoqAgAhtQEgA0EMaiIAIAJBDGoqAgAgACoCAJI4AgAgA0EQaiIAILUBIAAqAgCSOAIAIANBFGoiACCgASAAKgIAkjgCACAYQSBqIRggJkEBayImDQALCyAXQQE2AuQCIBcgATYC4AIgF0EBNgL0ASAXIIYBNgLwASAXQgA3ArwEIBdCgYCAgMAANwK0BCAXQaSBwgA2ArAEIBdB8AFqIBdB4AJqIBdBsARqQayBwgAQ+AwACyAAKQNIIZ0CIBdB4AJqIgEQugogF0GwBGogASCdAiACEOQJIAApA1gingIgFykDsAR8Ip0CIJ4CVA0BIAAoAmAgFygCuARqIgFBgJTr3ANPBEAgnQJCf1ENAiCdAkIBfCGdAiABQYCU69wDayEBCyAAIAE2AmAgACCdAjcDWAsgAEGAlOvcAzYCUCAXQbAEahC6CiAXKQOwBCGdAiAAIBcoArgEIjk2ArABIAAgnQI3A6gBIC4oApwCIhggLigCoAJBkARsaiEOIC4oApACIhogLigClAJBiAFsaiEPIC4oAoQCIhAgLigCiAJByABsaiETA0AgDyAaRyEBQQEhAgJAA0ACQCACQQFxBEACQCAQRQ0AIBAgE0YNACAQIDcgQBCZByAQQcgAaiECA0AgAiATRg0BIAIgNyBAEJkHIAJByABqIQIMAAsAC0EAIRAgAQ0BCyAOIBhGDQIjAEEgayIeJAAgGCgCICECIBgoAoAEIR8CQAJAAkACQAJAIBgoAoQEIiFBBU0EQCACIEBPDQEgIUEMbCEmICFBHGwhEiAY/QAEMCHSASA3IAJBgANsaiECAkACQAJAAkAgH0EBaw4CAQACCyACIBJqQaQBaiDSAf0fADgCAAwCCyACICZqQRhqINIB/R8AOAIADAELIAIgIUECdGpB0AJqINIB/R8AOAIACyBAIBgoAiQiAk0NASA3IAJBgANsaiECAkACQAJAAkAgH0EBaw4CAQACCyACIBJqQaQBaiDSAf0fATgCAAwCCyACICZqQRhqINIB/R8BOAIADAELIAIgIUECdGpB0AJqINIB/R8BOAIACyBAIBgoAigiAk0NASA3IAJBgANsaiECAkACQAJAAkAgH0EBaw4CAQACCyACIBJqQaQBaiDSAf0fAjgCAAwCCyACICZqQRhqINIB/R8COAIADAELIAIgIUECdGpB0AJqINIB/R8COAIACyBAIBgoAiwiAk0NASA3IAJBgANsaiECAkACQAJAAkAgH0EBaw4CAQACCyACIBJqQaQBaiDSAf0fAzgCAAwCCyACICZqQRhqINIB/R8DOAIADAELIAIgIUECdGpB0AJqINIB/R8DOAIACyAeQSBqJAAMBQsgAiBATw0AIB9BAWsOAgIDAQsgAiBAQdCxwgAQhQsACyAeQQA2AhggHkEBNgIMIB5B7IDCADYCCCAeQgQ3AhAgHkEIakHgscIAELkNAAsgIUEGQfCxwgAQhQsACyAhQQZBgLLCABCFCwALIBhBkARqIRhBACECDAELCyMAQSBrIgIkAAJAAkACQAJAAkACQAJAIBooAhAiASBASQRAIDcgAUGAA2xqIQEgGigCBCESIBooAgBBAWsOAgIDAQsgASBAQeCwwgAQhQsACyASQQZPDQIgASASQQJ0akHQAmogGioCFDgCAAwFCyASQQZJDQMgEkEGQYCxwgAQhQsACyASQQZJDQEgEkEGQZCxwgAQhQsACyACQQA2AhggAkEBNgIMIAJB7IDCADYCCCACQgQ3AhAgAkEIakHwsMIAELkNAAsgASASQRxsakGkAWogGioCFDgCAAwBCyABIBJBDGxqQRhqIBoqAhQ4AgALIAJBIGokACAaQYgBaiEaDAELCyAuKAJ4IhggLigCfEGAEmxqITYgLigCbCIaIC4oAnBBsB1saiFBIC4oAmAiECAuKAJkQbgHbGohQgNAIBogQUchEkEBIQICQANAAkAgAkEBcQRAAkAgEEUNACAQIEJGDQAgECA8ICwQywMgEEG4B2ohAgNAIAIg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IAYoAogDIRQgBigCjAMhAkEAIREDQCAcKAIAIgEgAk8NECAUIAFBgANsaiIBKAIAQQFHDRAgASgCBCAcQQRqKAIARw0QIAEtAD0EQCABILEBIAEqApgBIqABIKABlCABKgKcASKgASCgAZSSIAEqAqABIqABIKABlJKRIAEqAjQgASoCpAEioAEgoAGUIAEqAqgBIqABIKABlJIgASoCrAEioAEgoAGUkpGUkpQgASoCMEMAACBBlV4iAToAPCABIBFyIRELIA8gHEEIaiIcRw0ACyARQQFxRQ0HICJBkAFqIi4QugogIigCmAEhPSAAICIpA5ABIqECNwPQAUEAIQJBACEUQQAhDiMAQdAEayIWJAAgIkEwaiIBKgIAIaABIBZCidm54o7TvpcINwMoIBZByOfBAP0AAwAi0gH9CwMYIBZBADYCPCAWQoCAgIDAADcCNCAWQonZueKO076XCDcDUCAWINIB/QsDQCAHKAIQIjpBsAFsIRAgASoCHEMK1yM8lCGaASAGKAKIAyEcIAYoAowDIRIgBygCDCEzQQAhAQNAAkACQAJAAkAgAiAQRwRAIAIgM2oiEygCAEUNAyATQfIAai0AAA0DIBNBIGooAgBFDQMCQCATQSRqKAIAIhEgEk8NACAcIBFBgANsaiIRKAIAQQFHDQAgESgCBCATQShqKAIARg0CC0HQi8IAQRNB+MDCABDRCwALIBYgBzYCtAEgFiAGNgKwASAWIAQ2AqwBIBZCADcCmAEgFkEANgKMASAWQQA2AoABIBZBADYCdCAWIAUoAkAiTzYCqAEgFiAFKAI8IE8oAghBAWtBeHFqQQhqIkc2AqQBIKABIZkBIAMoAggiAkUNASADKAIEIgEgAkEDdGohNiABQQhqIQIgFkGwAmohQCAFKAIUITIgBSgCECE+IAUoAgQhICAFKAIIIUUgBSgCOCFBIAUoAjQhLSAWQZgEaiEkIAYoAogDISwgBigCjAMhPCBPQSBqISEDQAJAIAEoAgAiESA8Tw0AICwgEUGAA2xqIhEoAgBBAUcNACARKAIEIAEoAgRHDQAgAiETAkAgES0APEUNACARKgKkASGkASARKgLoASGjASARKgKoASGlASARKgLsASGrASARKgL0ASGtASARKgKsASGhASARKgLEASGqASARKgL8ASGiASARKgK8ASGuASAR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BEAgACACQQRBAUEBENYGIAAoAgghAgsgACgCBCACakEMNgAAIAAgAkEEaiICNgIIIANBBGoqAgAhDiADKgIAIQ8gACgCACACa0EDTQRAIAAgAkEEQQFBARDWBiAAKAIIIQILIAAoAgQgAmogDzgAACAAIAJBBGoiAjYCCCAAKAIAIAJrQQNNBEAgACACQQRBAUEBENYGIAAoAgghAgsgACACQQRqNgIIIAAoAgQgAmogDjgAAEEAIQAMBgsgCCgCCCEDIAEoAgAiACgCCCECIAAoAgAgAmtBA00EQCAAIAJBBEEBQQEQ1gYgACgCCCECCyAAIAJBBGo2AgggACgCBCACakELNgAAIAMgARDWASEADAULIAEoAgAiACgCCCECIAAoAgAgAmtBA00EQCAAIAJBBEEBQQEQ1gYgACgCCCECCyAAIAJBBGo2AgggACgCBCACakEKNgAAIAgoAggiBEEEaigCACECIARBCGooAgAiBa0hCiABKAIAIgAoAgghAyAAKAIAIANrQQdNBEAgACADQQhBAUEBENYGIAAoAgghAwsgACADQQhqNgIIIAAoAgQgA2ogCjcAACAFQSRsIQMDQCADBEAgASACEM4GIgANBiACQRBqIAEQkAgiAA0GIANBJGshAyACQRxqIQAgAkEkaiECIAAgARAtIgBFDQEMBgsLIAEgBEEMahDxASIADQQgBEE4aigCACECIARBPGooAgAiBa0hCiABKAIAIgAoAgghAyAAKAIAIANrQQdNBEAgACADQQhBAUEBENYGIAAoAgghAwsgACADQQhqNgIIIAAoAgQgA2ogCjcAACAFQRhsIQMDQCADBEAgAiABEJAIIgANBiADQRhrIQMgAkEMaiEAIAJBGGohAiAAIAEQkAgiAEUNAQwGCwsgBEFAayABEJAIIgANBCAEQcwAaiABEJAIIQAMBAsgCCgCCCEGIAEoAgAiAigCCCEAIAIoAgAgAGtBA00EQCACIABBBEEBQQEQ1gYgAigCCCEACyACIABBBGo2AgggAigCBCAAakEJNgAAIAEgBhDkBSIADQMgBigCGCEDIAYoAhwiBa0hCiACKAIAIAIoAggiBGtBB00EQCACIARBCEEBQQEQ1gYgAigCCCEECyACIARBCGoiADYCCCACKAIEIARqIAo3AAAgBQRAA0AgAy0AACEHIANBAWoh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IgFBFGooAgAhFiABQRBqKAIAIQkgACgCECgCACIBQSxqKAIAIR0gAUEoaigCACEDIBIoAowDIQEgACgCFCgCACEXAkAgBioC+AEiJ0MAAAAAWwRAIAFBgANsIQADQCAARQ0CIABBgANrIQAMAAsACyAGKAKAAkECcUUEQCABQYADbCEAA0AgAEUNAiAAQYADayEADAALAAsgEigCiAMhCCABQYADbCEKIBj9AAMAITggGf0AAwAhOUEAIQEDQCABIApGDQECQCABIAhqIgAoAgBFDQAgAEEEaigCACEFIAIgAEEQajYCrAEgAiAFNgKoASACIAw2AqQBIAJBADYCoAEgAkEEaiACQaABahCLA0UNACAAQcQAaioCACIkIABByABqKgIAIiiUIiYgJpIiISAAQUBrKgIAIiYgAEHMAGoqAgAiKZQiIyAjkiIjkiEuICYgKJQiJSAlkiIlICQgKZQiIiAikiIikyEsICEgI5MhLyAmICSUIiEgIZIiISAoICmUIiMgI5IiI5IhMCAlICKSITEgISAjkyEtICggKJQiISApICmUIiUgJiAmlCIikyIrICQgJJQiI5OSISogIyArkiAhkyEyICIgJZIgI5MgIZMhMyA5ITcgAEH2AmotAABBAUYEQCA4/QwAAIA/AACAPwAAgD8AAIA/IABB5AJqLQAAGyE3CyAAQdAAaioCACE0IABB1ABqKgIAITUgJiAAQawCaioCACIilCAkIABBqAJqKgIAIiuUkyIhICGSISMgKCArlCAmIABBsAJqKgIAIiGUkyIlICWSISUgAiAnICyUIABB2ABqKgIAICEgKSAjlCAmICWUICQgJCAhlCAoICKUkyIhICGSIiyUk5KSkiIhkjgChAEgAiAnIDCUIDUgIiApICWUICggLJQgJiAjlJOSkpIiJpI4AoABIAIgJyAzlCA0ICsgKSAslCAkICOUICggJZSTkpKSIiSSOAJ8IAIgN/0fAyIoOAKsASACIDf9HwIiKUMAAIA+lDgCqAEgAiA3/R8BIiM4AqQBIAIgN/0fACIlQwAAAACUOAKgASACICE4AmAgAiAmOAJcIAIgJDgCWCACQQRqIgAgAkHYAGoiBSACQfwAaiIEIAJBoAFqIgcQxAMgAiAnIC6UICGSOAKEASACICcgMpQgJpI4AoABIAIgJyAtlCAkkjgCfCAC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IBuUk5IgF5MiBjgCgAFB////+wchA0P//39/IQlD//9//yELQ///f/8hD0P//3//IRBD//9//yEVQ///f38hE0P//39/IRRB////+wchBQJAIAIoAghFDQACQAJAIAIoAgQiASgCPEH/////A3EgASgCHEH/////A3FqDgICAAELIAEqAhghDyABKgIUIRAgASoCECEVIAEqAgghEyABKgIEIRQgASgCACEFDAELIAEqAhgiCiABKgI4Ig8gCiAPYBshDyABKgIUIgogASoCNCIQIAogEGAbIRAgASoCECIKIAEqAjAiFSAKIBVgGyEVIAEqAggiCiABKgIoIhMgCiATXxshEyABKgIEIgogASoCJCIUIAogFF8bIRQgASoCACIKIAEqAiAiHCAKIBxfG7whBQsCQCAEKAIIRQRAQ///f/8hCkP//3//IRxD//9/fyEgDAELQ///f/8hCkP//3//IRxD//9/fyEgAkACQCAEKAIEIgEoAjxB/////wNxIAEoAhxB/////wNxag4CAgABCyABKgIYIQsgASoCFCEKIAEqAhAhHCABKgIIIQkgASoCBCEgIAEoAgAhAwwBCyABKgIYIgogASoCOCIJIAkgCl8bIQsgASoCFCIKIAEqAjQiCSAJIApfGyEKIAEqAhAiCSABKgIwIhwgCSAcYBshHCABKgIIIgkgASoCKCIgIAkgIF8bIQkgASoCBCIgIAEqAiQiHiAeICBgGyEgIAEqAgAiHiABKgIgIiIgHiAiXxu8IQMLIEIgD/0TIAv9IAEgE/0TIAn9IAH95QH9DAAAAD8AAAA/AAAAPwAAAD/95gEiXyBf/eYBIBD9EyAK/SABIBT9EyAg/SAB/eUB/QwAAAA/AAAAPwAAAD8AAAA//eYBIl8gX/3mASAV/RMgHP0gASAF/REgA/0cAf3lAf0MAAAAPwAAAD8AAAA/AAAAP/3mASJfIF/95gH95AH95AEiX/0fACBf/R8BXSIBOgCXASABDQQgCyEPIAohECAcIRUgCSETICAhFCADIQUgGCENIBYhESAXIQYgGSEMIBshDiAaIRIgRSEDIEMhBCBGIUUgRyFDDA8LIEIgBCAFKAJgEQAAIEJBwAFqIgQgQigCACIAIEIoAgQoAgwRAABBACFEIABFDRAgQikDwAFC3oWKxraak/zQAIUgQikDyAFChcGX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BEL////7////v383ApwBIAT9DP//f3///39///9/f///f//9CwKMASAEQQA2AogBIARC////+////79/NwOAASAE/Qz//39///9/f///f3///3///QsEcCAEQQA2AmwgBEL////7////v383AmQgBP0M//9/f///f3///39///9///0LAlQgBEEANgJQIARC////+////79/NwNIIAT9DP//f3///39///9/f///f//9CwM4IARBADYCNCAEQv////v///+/fzcCLCAE/Qz//39///9/f///f3///3///QsCHCAEQQA2AhggBEL////7////v383AxAgBP0M//9/f///f3///39///9///0LBAACQAJAAkACQCADQQFLBEAgA0EFdCIHQSBrIQggAioCCCACKgIYkkMAAAA/lCIXIRggAv0ABAAgAv0ABBD95AH9DAAAAD8AAAA/AAAAPwAAAD/95gEiciFzA0AgFyACIAVqIgZBKGoqAgAgBkE4aioCAJJDAAAAP5QiFiAWIBdfGyEXIBggFiAWIBhgGyEYIAZBIGr9XQIAIAZBMGr9XQIA/eQB/QwAAAA/AAAAPwAAAD8AAAA//eYBInQgcv3rASFyIHQgc/3qASFzIAggBUEgaiIFRw0ACyAEIHL9HwA4AuwBIAQgc/0fATgC5AEgBCBz/R8AOALgASAEIHL9HwE4AvABIAQgGDgC6AEgBCAXOAL0AUECIHIgc/3lASJy/R8BIhYgcv0fACIZXiIFIBcgGJMgFiAZIAUbXhsiEEECdCIFIARB4AFqaioCACEXQ1j//0AgBEHsAWogBWoqAgAgF5OVIRggBEH4AWogBWohCEEAIQUDQCACIAVqIgZBGGoqAgAhFiAEIAZBCGoqAgAgFpJDAAAAP5Q4AoACIAQgBkEEaiIJKgIAIAZBFGoqAgAiGZJDAAAAP5Q4AvwBIAQgBioCACIbIAZBEGoqAgAiGpJDAAAAP5Q4AvgBIBggCCoCACAXk5T8ASIGQQhPDQIgBCAGQRxsaiIGIAYoAhhBAWo2AhggBiAGKgIUIhwgFiAWIBxfGzgCFCAGIAYqAhAiFiAZIBYgGWAbOAIQIBv9EyAJ/V0CAP0NAAECAxAREhMUFRYXAAECAyAG/QACACJy/Q0AAQIDBAUGBwgJCgscHR4fIXMgBiByIHMgGv0gAyByIBr9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ACADQQRqKAIAIAVqIQUgA0EIaiEDIAZBAWsiBg0ACwsgBEHIAGogBRDRBiAEQdQAaiAFENEGIAghAyAKQQdxIgUEQANAIANBBGpBADYCACADQQhqIQMgBUEBayIFDQALCyACQQdJDQEgCCALQQN0aiECA0AgA0E8akEANgIAIANBNGpBADYCACADQSxqQQA2AgAgA0EkakEANgIAIANBHGpBADYCACADQRRqQQA2AgAgA0EMakEANgIAIANBBGpBADYCACACIANBQGsiA0cNAAsMAQsgBEHIAGpBABDRBiAEQdQAakEAENEGCyAMBEAgDkEUaiEDIAQoAmQhFCAEKAJYIRUgBCgCXCESIAQoAmghDyAEKAJMIRcgBCgCUCETIAQoAnAhGCAEKAJ0IQlBASEGQQAhDANAIA4hAiADIQ4gDCEDIAYhDAJAIAIoAgAiByAHIAIoAgQiDWpPDQAgB0ECdCICIBhqIQYgAiAUaiECIAcgCSAHIAlLGyIWIAdrIQUgByAPIAcgD0sbIhkgB2shBwJAAkACQAJAA0AgBUUNASAGKAIAIgogC08NAiAIIApBA3RqIgooAgQgCigCAGoiECATTw0DIBcgEEECdGogAzYCACAHRQ0EIAooAgQgCigCAGoiECASSQRAIBUgEEECdGogAigCADYCACAKIAooAgRBAWo2AgQgBkEEaiEGIAJBBGohAiAFQQFrIQUgB0EBayEHIA1BAWsiDUUNBgwBCwsgECASQcjCwwAQhQsACyAWIAlBiMLDABCFCwALIAogC0GYwsMAEIULAAsgECATQajCwwAQhQsACyAZIA9BuMLDABCFCwALIA4gEUciAiAMaiEGIA5BFEEAIAIbaiEDIAINAAsLIARBhAJqIARBCGooAgA2AgAgBEGQAmogBEEgaigCADYCACAEQZwCaiAEQRRqKAIANgIAIARBqAJqIARB0ABqKAIANgIAIARBtAJqIARB3ABqKAIANgIAIAQgBCkCADcC/AEgBCAEKQIYNwOIAiAEIAQpAgw3ApQCIAQgBCkCSDcDoAIgBCAEKQJUNwKsAiAEQcACaiAEQegAaigCADYCACAEQcwCaiAEQfQAaigCADYCACAEQfABaiICQQhqIAFBCGooAgA2AgAgBCAEKQJgNwO4AiAEIAQpAmw3AsQCIAQgASkCADcD8AEgACAC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QQxqIgAQjgEgA0EIaiAJKAIANgIAIAMgASkCADcCACADIAEpAgw3AgwgA0EUaiAAQQhqKAIANgIAIAFB4ABqJAAgBygCJCEAIAcoAhghASAHKAIsIQogBygCKCEEIAcoAiAhCyAHKAIcIQkgB0GAgID8AzYCICAHQoCAgPyDgIDAPzcCGCACIAkgCyAEIAogBSADIAYQqQMgAARAIAQgAEEDdEEEEOgOCyABRQ0KIAkgAUEMbEEEEOgODAoLIAdBGGohAyAHKAIQIQkgACgC8AEhDCAAKAL0ASEEIwBB4ABrIgEkACABQTBqIgBBCGoiCkEANgIAIAFBADYCCCABQoCAgIDAADcCACABQQA2AhQgAUKAgICAwAA3AgwgAUEANgIgIAFBADYCLCABQQA2AiQgASAJKgIAIh04AiggASAJKgIEIh+MIh44AhggASAeOAIwIAkqAgghHiABIB2MIiA4AhwgASAgIB6TOAI0IB8gH5QgHUMAAADAlCIjICOUkpEhICABIB4gIyAglZQiI0MAAAAAkjgCPCABIB0gHiAfICCVlCIhkjgCQCABIB5DAAAAACAglZRDAAAAAJIiIDgCRCABQdj5wwAQkQggASgCBCIJIAEpAjA3AgAgCUEIaiAKKAIANgIAIAFBATYCCCABICA4AlAgASAhIB2TIiE4AkwgASAjIB+TIh84AkggAUEYaiAAIAFByABqIAQgARDDAiABKAIAIgsgASgCCCIJRgRAIAFB6PnDABCRCCABKAIAIQsLIB4gHZIhHSABKAIEIgAgCUEMbGoiCiAgOAIIIAogITgCBCAKIB84AgAgASAJQQFqIgo2AgggCiALRgRAIAFB+PnDABCRCCABKAIEIQALIAAgCkEMbGoiACABKQI8NwIAIABBCGogAUE8aiIAQQhqKAIANgIAIAEgCUECajYCCCABQQA2AlAgASAdOAJMIAFBADYCSCABQSRqIAAgAUHIAGogBCABEMMCIAEoAggiACABKAIARgRAIAFBiPrDABCRCAsgAUEIaiIJIABBAWo2AgAgASgCBCAAQQxsaiIAQQA2AgggACAdOAIEIABBADYCACABQoCAgIAQNwJIIAEgBDYCUCABIARBAmo2AlQgASAEQQF0IgBBAmo2AlwgASAAQQFyNgJYQQEgAUHIAGpBAyAMIAEgAUEMaiIAEI4B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KAIEIAVqNgIEIAMgASABQQhqIgBBB2pBeHEgAGtqIgBqIgEhAiAAIANBA3I2AgQgBiAGQQhqIgVBB2pBeHEgBWtqIgQgAWshAwJAQczOxAAoAgAgBEcEQCAEQcjOxAAoAgBGDQEgBCgCBCIBQQNxQQFGBEAgBCABQXhxIgEQpwUgASADaiEDIAEgBGohBAsgBCAEKAIEQX5xNgIEIAIgA0EBcjYCBCACIANqIAM2AgAgA0GAAk8EQCACIAMQ8AUMBAsCf0G4zsQAKAIAIgFBASADQQN2dCIFcUUEQEG4zsQAIAEgBXI2AgAgA0H4AXFBsMzEAGoiAwwBCyADQfgBcSIBQbDMxABqIQMgAUG4zMQAaigCAAshASADIAI2AgggASACNgIMIAIgAzYCDCACIAE2AggMAwtBzM7EACACNgIAQcTOxABBxM7EACgCACADaiIBNgIAIAIgAUEBcjYCBAwCC0HIzsQAIAI2AgBBwM7EAEHAzsQAKAIAIANqIgE2AgAgAiABQQFyNgIEIAEgAmogATYCAAwBC0EAIQBBxM7EACgCACIBIANNDQFBxM7EACABIANrIgE2AgBBzM7EACADQczOxAAoAgAiAGoiAjYCACACIAFBAXI2AgQgACADQQNyNgIECyAAQQhqIQALIAlBEGokACAAC/kXAhx/AnwjAEGwBGsiAyQAIANCADcDmAEgA0IANwOQASADQgA3A4gBIANCADcDgAEgA0IANwN4IANCADcDcCADQgA3A2ggA0IANwNgIANCADcDWCADQgA3A1AgA0IANwNIIANCADcDQCADQgA3AzggA0IANwMwIANCADcDKCADQgA3AyAgA0IANwMYIANCADcDECADQgA3AwggA0IANwMAIANCADcDuAIgA0IANwOwAiADQgA3A6gCIANCADcDoAIgA0IANwOYAiADQgA3A5ACIANCADcDiAIgA0IANwOAAiADQgA3A/gBIANCADcD8AEgA0IANwPoASADQgA3A+ABIANCADcD2AEgA0IANwPQASADQgA3A8gBIANCADcDwAEgA0IANwO4ASADQgA3A7ABIANCADcDqAEgA0IANwOgASADQgA3A9gDIANCADcD0AMgA0IANwPIAyADQgA3A8ADIANCADcDuAMgA0IANwOwAyADQgA3A6gDIANCADcDoAMgA0IANwOYAyAD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AAsgA0GQAWokAAu2OgMefwZ+DH0jACIFISEgBUHAAmtBQHEiBCQAIARBQGtBqNzCACkDADcDACAEQfwAaiABQQhqKAIANgIAIARCADcDMCAEQoCAgIDAADcDKCAEQgQ3AyAgBEIANwMYIARCgICAgIAINwMQIARBADYCcCAEQoCAgIDAADcDaCAEQsAANwNgIARCADcDWCAEQoCAgIDAADcDUCAEQonZueKO076XCDcDSCAEQaDcwgApAwA3AzggBCABKQIANwJ0AkACQAJAAkACQAJAAkACfyADRQRAQZjcwgAhAkEADAELIAIgA0EMbGohDCAEQdwAaiEIIARB0ABqIQUgBEE4aiEDIARBsAFqIQoDQCACQQRqKAIAIRIgAkEIaigCACEWIAIoAgAiC0EfdiEBIAQgASALakEIbSABayIGNgKAAiAEIBZBH3YiASAWakEIbSABayIHNgKIAiAEIBJBH3YiASASakEIbSABayINNgKEAiAEQagBaiADIARBgAJqEOwEAn8gBCgCvAEiDgRAIAQpA6gBISIgBCgCZCIXIAQoAlxGBEAgCEGY5sMAEMQICyAEKAJgIBdBCXRqQcAAQYAE/AsAIAQgF0EBajYCZCAEKAJYIgkgBCgCUEYEQCAFQajmwwAQkQgLIAQoAlQgCUEMbGoiASAHNgIIIAEgDTYCBCABIAY2AgAgBCAJQQFqNgJYIARBgAJqIgFBCGogCkEIaigCADYCACAEQQA2ApACIAQgFzYCjAIgBCAKKQIANwOAAiAOICIgASAOQRBqEMcFDAELIAQoArABCyIJQQRrIgEgASgCAEEBajYCACAJQQhrKAIAIgkgBCgCZCIBTw0CIBIgBmtBA3QgC2ogB0EJdGsgFiANa0EGdGoiAUGABE8NAyAEKAJgIAlBCXRqIAFqQT86AAAgDCACQQxqIgJHDQALIAQoAjghAiAEKAJECyEBIAIpAwAhIiAEQgA3AqABIARCgICAgMAANwKYASAEQgQ3ApABIARCADcCiAEgBEKAgICAgAg3AoABIARBADYC+AEgBEIQNwK4ASAEQgA3ArABIARCgICAgIAINwKoASAEQgA3AvABIARCgICAgMAANwLoASAEQgA3AuABIARCgICAgMAANwLYASAEQgQ3AtABIARCADcCyAEgBEKAgICAwAA3AsABIAFFDQYg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NwIAIBBBCGogE0EIaigCADYCACADQfgCaiAMEIgCIAMoAvgCDQQgDiAEIgJHDQALCyABQQA2AvQBAkAgASgChANBAUcNACADQfgCaiAfEIgCIAMoAvgCQQFHDQAgA0HwAmogCEEIaigCADYCACADIAgpAgA3A+gCDAoLIAFBADYChAMgASgCMCECCyAYQQI2AgAgAkECRwRAIAFBMGohIwJAA0ACQCABKAK8ASICRQRAAkAgCygCACICQSFPBEAgASgCOCEFIAEoAjQiB0UNAyAGIQQgByECDAELIAshBCAGIQUgAkUNBAsgBCACQQFrIgQ2AgAgBSAEQQJ0aigCACECCyABQQA2ArwBIAIoAhxB/////wNxQQFHBEAgAigCDCIFIAEoArgBIgIoAggiBE8NCiABKgLUASEkIAEqAtABISVBASEEAkAgASoCzAEiJiACKAIEIAVBBnRqIgIqAgBgRQ0AIAIqAgQgJV9FDQAgAioCCCAkX0UNACACKgIQIAEqAsABYEUNACACKgIUIAEqAsQBYEUNACACKgIYIAEqAsgBYEUNACABIAI2ArwBQQAhBAsgAioCICAmX0UNAiACKgIkICVfRQ0CIAIqAiggJF9FDQIgAioCMCABKgLAAWBFDQIgAioCNCABKgLEAWBFDQIgAioCOCABKgLIAWBFDQIgAkEgaiEJIARFBEACfyALKAIAIgdBIUkEQCAHIQUgBiECQSAhByALDAELIAEoAjQhBSABKAI4IQIgBgshBCAFIAdGBEAgIxCgBCABKAI0IQUgASgCOCECIAYhBAsgAiAFQQJ0aiAJNgIAIAQgBCgCAEEBajYCAAwDCyABIAk2ArwBDAILIANB0AVqIgciBSABKALYASACKAIMEK0LIANB+AJqIgQgBSAiICEQsAcgGCAEQdgC/AoAAAJAIAEoAvQBQQFxRQ0AIAcgDBCIAiADKALQBUUNACADQfACaiAKQQhqKAIANgIAIAMgCikCADcD6AIMDQsCQCABKAKUBCINRQ0AIAEoAsQEIgIgASgCyAQiDk4NACABKAKYBCEPIAEoAsAEIQkgASgCrAQhByABKAKgBCEFA0AgASACQQFqIgQ2AsQEIAEgDzYCzAIgASANNgLIAiABQQA2AqACIAFCATcC9AEgASACNgLoAiABIAk2AvgCIAEgBTYC/AIgASAH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QdABayIDJABBGCEEAkAgAkEIaiIFKAIEIgdFBEBBAiEFDAELIAUgB0EBazYCBCAFKAIAIQUgA0EGNgIgIAMgBTYCHCADQSRqIANBHGoQggMgAQJ/IAMtADwiB0EDRgRAIAMoAiQMAQsCQAJAAkAgB0ECRwRAIANBQGsgA0EcahCCAyADLQBYIglBA0YEQCADKAJADAULIAlBAkYNASADQdwAaiADQRxqEIIDIAMtAHQiCkEDRgRAIAMoAlwMBQsgCkECRg0CIANB+ABqIANBHGoQggMgAy0AkAEiBkEDRgRAIAMoAngMBQsgBkECRg0DIANBlAFqIANBHGoQggMgAy0ArAEiDEEDRgRAIAMoApQBDAULAkACQAJAIAxBAkcEQCADQbABaiADQRxqEIIDIAMtAMgBIgVBAmsOAgIBAwtBBCADQc8BakHEzcEAEKgKDAcLIAMoArABDAYLQQUgA0HPAWpBxM3BABCoCgwFCyABIAP9AAKwAf0LAowBIAEgAy8AyQE7AKUBIAEgA/0AAij9CwIEIAFBnAFqIANBwAFqKQIANwIAIAFBpwFqIANBywFqLQAAOgAAIAFBFGogA0E4aigCADYCACADQQJqIANBPWoiBEECai0AADoAACADIAQvAAA7AQAgAygCJCEEIANBE2ogA0HQAGopAgA3AAAgASADQdkAaiIILwAAOwA1IAFBN2ogCEECai0AADoAACABIAP9AAJc/QsCOCABQcgAaiADQewAaikCADcCACABIANB9QBqIggvAAA7AFEgAUHTAGogCEECai0AADoAACABIAP9AAJ4/QsCVCABQeQAaiADQYgBaikCADcCACADIAP9AAJA/QsAAyABQe8AaiADQZEBaiIIQQJqLQAAOgAAIAEgCC8AADsAbSABQYABaiADQaQBaikCADcCACABIAP9AAKUAf0LAnAgAUGLAWogA0GtAWoiCEECai0AADoAACABIAgvAAA7AIkBIAEgBzoAGCABIAQ2AgAgASAMOgCIASABIAY6AGwgASAKOgBQIAEgCToANCABIAMpAQA3ABkgAUEhaiADQQhq/QABAP0LAAAgAUEwaiADQRdqKAAANgAAQaQBIQQMBQtBACADQc8BakHEzcEAEKgKDAMLQQEgA0HPAWpBxM3BABCoCgwCC0ECIANBzwFqQcTNwQAQqAoMAQtB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AAAAAAAAAAD95AEiGv0fAzgCACATIBr9HwI4AgAgFCAa/R8BOAIAIBUgGv0fADgCACALIBsgHCAe/QzzBDW/8wQ1v/MENb/zBDW//eYBIBn9DAAAAAAAAAAAAAAAAAAAAAD95gH95AH95AH95AH9DAAAAAAAAAAAAAAAAAAAAAD95AEiGf0fAzgCACAPIBn9HwI4AgAgECAZ/R8BOAIAIBEgGf0fADgCACABQTBqIQEgBEEEayIEDQALIAcgCkYNAQsgBSAOQQxsaiEBA0AgA0EEaiIEKgIAIiFD8wQ1v5QgAyoCACIiQwAAAACUkiIgICCSIiVD8wQ1P5QhJCAiQwAAAICUIANBCGoiBSoCACIjQ/MENT+UkiIgICCSISAgBSAjICQgIEPzBDW/lCAjQwAAAICUICFDAAAAAJSSIiMgI5IiI0MAAAAAlJKSkkMAAAAAkjgCACAEICEgIEPzBDU/lCAjQwAAAICUICSSkpJDAAAAAJI4AgAgAyAiICND8wQ1P5QgJUMAAACAlCAgQwAAAACUkpKSQwAAAACSOAIAIAEgA0EMaiIDRw0ACwsgCCAOQQF0aiILIAZJDQEgCyAMSw0CIAkgBkEMbGoiDCEDAkAgDUEkTwRAIAkgACAIakEMbGohASADIApB/P///wNxIgRBDGxqIQMgBCEFA0AgAUE4aiIJIAFBLGoiDSABQSBqIg8gAUEUaiIQ/VwCAP1WAgAB/VYCAAL9VgIAAyId/Qz///8+////Pv///z7///8+/eYBIhsgAUE0aiIRIAFBKGoiEiABQRxqIhMgAUEQaiIU/VwCAP1WAgAB/VYCAAL9VgIAAyIc/Qz///8+////Pv///z7///8+/eYB/eUBIhkgGf3kAf0M////Pv///z7///8+////Pv3mASEZIBz9DP///77///++////vv///7795gEgAUEwaiIHIAFBJGoiFSABQRhqIhYgAUEMaiIB/VwCAP1WAgAB/VYCAAL9VgIAAyIe/Qz///8+////Pv///z7///8+/eYBIh/95QEiGiAa/eQB/Qz///8+////Pv///z7///8+/eYBIRogByAeIBkgGiAfIBv95AEiGyAb/eQBIh79DP///z7///8+////Pv///z795gEiH/3lAf3kAf3kAf0MAAAAAAAAAAAAAAAAAAAAAP3kASIb/R8DOAIAIBUgG/0fAjgCACAWIBv9HwE4AgAgASAb/R8AOAIAIBEgHCAfIBkgGv3kAf3kAf3kAf0MAAAAAAAAAAAAAAAAAAAAAP3kASIb/R8DOAIAIBIgG/0fAjgCACATIBv9HwE4AgAgFCAb/R8AOAIAIAkgHSAaIB79DP///77///++////vv///7795gEgGf3lAf3kAf3kAf0MAAAAAAAAAAAAAAAAAAAAAP3kASIZ/R8DOAIAIA0gGf0fAjgCACAPIBn9HwE4AgAgECAZ/R8AOAIAIAchASAFQQRrIgUNAAsgBCAKRg0BCyAMIA5BDGxqIQEDQCADQQRqIgQqAgAiJEP///++lCIiIAMqAgAiI0P///8+lCIhkyIgICCSQ////z6UISAgISADQQhqIgUqAgAiJUP///8+lCImkiIhICGSISEgBSAlICAgIUP///++lCAmICKSIiIgIpJD////PpQiIpOSkkMAAAAAkjgCACAEICQgIUP///8+lCIhICIgIJKSkkMAAAAAkjgCACADICMgIiAgICGTkpJDAAAAAJI4AgAgASADQQxqIgNHDQALCyAAQQAgACAIaiIBIABPGyIEIAIoAgAgAigCCCIDa0sEQCACIAMgBEEEQQgQ2AYgAigCCCEDCyACKAIEIQQCQCAARQ0AIAGtIisgCK0iKX0iKkICWgRAIAQgA0EDdGohASAp/RL9DAAAAAAAAAAAAQAAAAAAAAD9zgEhGSAqQn6DIicgKXwhKSADICenaiEDICchKANAIAEgGUEg/csBIBn9zgH9DAAAAAABAAAAAAAAAAEAAAD9zgH9CwIAIAFBEGohASAZ/QwCAAAAAAAAAAIAAAAAAAAA/c4BIRkgKEICfSIoQgBSDQALICcgKlENAQsgKyApfSEnIAQgA0EDdGohASApQoGAgIAQfkKAgICAEHwhKCADIAhqIABqICmnayEDA0AgASAoNwIAIAFBCGohASAoQoGAgIAQfCEoICdCAX0iJ0IAUg0ACwsgAiADNgIIIAtBAWsiACAGayIBQQAgACABTxsiASACKAIAIANrSwRAIAIgAyABQQRBCBDYBiACKAIIIQMgAigCBCEECwJAIAAgBk0NACAArSIrIAatIil9IipCAloEQCAEIANBA3RqIQEgKf0S/QwAAAAAAAAAAAEAAAAAAAAA/c4BIRkgKkJ+gyIn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CSgCACEFIApBuANqIA5BA3RqLQAERQRAIAkgBUEBayIJNgIAIAQgBCgCAEEBayIENgIAIAkgCkGAA2ogAWooAgAiCUgEQCAEIAlKDQMMAgsgAiADQQhqKAIANgIAIAogAykCADcDgAQgCkGABGogAWogBTYCACAKQegDaiIBQQhqIApB8AJqKAIANgIAIAsgCikDgAQ3AgAgC0EIaiACKAIANgIAIAogCikC6AI3A+gDIApBvAJqIAEQkwMMAgsgCSAFQQFqIgU2AgAgBCAEKAIAIgRBAWoiCTYCACAJIApBkANqIAFqKAIAIglMBEAgAiAKQfACaigCADYCACAKIAopAugCNwOABCAKQYAEaiABaiAENgIAIAYgAykCADcCACAGQQhqIANBCGooAgA2AgAgCkHQA2oiAUEIaiACKAIANgIAIAogCikDgAQ3A9ADIApBvAJqIAEQkwMMAgsgBSAJSA0BCyAAIAr9AAKwAf0LAgAgAEEwaiAKQbABaiIBQTBqKQIANwIAIABBIGogAUEgav0AAgD9CwIAIABBEGogAUEQav0AAgD9CwIAIApBoARqJAAPCyAKKAL8AiEEIAr9AALsAiEdIAooAugCIQUMAAsAC9QRAwt/L30IeyMAQSBrIgQkACADBEAgACgCECINBEACQCADIAAoAgxGBEAgAioCACIPIAEqAhQiGpQgAkEEaioCACIQIAEqAiwiG5SSIAJBCGoqAgAiESABKgJEIhyUkiACQQxqKgIAIhIgASoCXCIdlJIgAkEQaioCACITIAEqAnQiHpSSIAJBFGoqAgAiFCABKgKMASIflJIhFSAPIAEqAhAiIJQgECABKgIoIiGUkiARIAEqAkAiIpSSIBIgASoCWCIjlJIgEyABKgJwIiSUkiAUIAEqAogBIiWUkiEWIA8gASoCDCImlCAQIAEqAiQiJ5SSIBEgASoCPCIolJIgEiABKgJUIimUkiATIAEqAmwiKpSSIBQgASoChAEiK5SSIRcgDyABKgIIIiyUIBAgASoCICItlJIgESABKgI4Ii6UkiASIAEqAlAiL5SSIBMgASoCaCIwlJIgFCABKgKAASIxlJIhGCAPIAEqAgQiMpQgECABKgIcIjOUkiARIAEqAjQiNJSSIBIgASoCTCI1lJIgEyABKgJkIjaUkiAUIAEqAnwiN5SSIRkgDyAB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BgcUFRYXAAECAwABAgMgIf3lAf3rAf3rASIeIB795gH95AH9DAAAAAAAAAAAAAAAAAAAAAAgICAFQRhqIAX9XAI4/VYCAAH95QEgBUEIaiAF/VwCKP1WAgABICD95QH96wH96wEiHiAe/eYB/eQB/eMBIh79HwEgHv0fAF4iARshCAJAAkACQAJAAkAgHiAeIB79DQQFBgcAAQIDAAECAwABAgMgARsiHv0fACITIBRdRQRAIB79HwEiEyAUXUUNBCATQ///f39bDQQgCCgCHEH/////A3FBAUcNAQwCCwJAIBND//9/f1sEQAwBCyAGIAUgARsiBigCDCEBIAYoAhxB/////wNxQQFHBEAgHv0fASITIBRdRQRAIAEhBAwHCyATQ///f39bBEAgASEEDAcLQQEhBiAIKAIcQf////8DcUEBRgRAIAEhBAwFCwJ/IAMoApQBIg5BIUkEQCAOIQQgByEFQSAhDiARDAELIAMoAhQhBCADKAIYIQUgBwshBiAIKAIMIQggBCAORgR/IANBEGoQowQgAygCGCEFIAchBiADKAIUBSAEC0ECdCAFaiAINgIAIAYgBigCAEEBajYCACABIQQMBgsCQCABIAxJBEAgEiABQSRsaiIGKAIgIQEgA0GYAWogBigCHCABKAIIQQFrQXhxakEIaiAGIAIgAUHEAGooAgARAgAgAygCqAEiAUEERg0BIB0gAyoCmAEiF5MiEyATlCAcIAMqApwBIhiTIhMgE5SSIBsgAyoCoAEiFpMiEyATlJKRIhMgFF1FDQEgAygCrAEhCiADKAKkASEPIBchGSAYIRogFiEVIBMhFCABIQsMAQsgASAMQcicwwAQhQsACwsgHv0fASAUXUUNAyAe/R8BQ///f39bDQMgCCgCHEH/////A3FBAUYNAQsgCCgCDCEEDAMLQQAhBgsgDCAIKAIMIgFLBEAgEiABQSRsaiIFKAIgIQEgA0GYAWogBSgCHCABKAIIQQFrQXhxakEIaiAFIAIgAUHEAGooAgARAgACQCADKAKoASIBQQRGDQAgHSADKgKYASIXkyITIBOUIBwgAyoCnAEiGJMiEyATlJIgGyADKgKgASIWkyITIBOUkpEiEyAUXUUNACADKAKsASEKIAMoAqQBIQ8gFyEZIBghGiAWIRUgEyEUIAEhCwsgBkUNAQwCCyABIAxB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JAAPCyAEQQA2AhwgBEEBNgIQIARBpNnBADYCDCAEQgQ3AhQgBEEMakGs2cEAELkNAAvTDAIHfwN9IwBB4AFrIgskACALQTBqIAMgBCgCtAERAAAgCygCNCENIAsoAjAhDCALQShqIAYgBygCtAERAAACQAJAAkACQAJAIAwEQCALKAIoIhANAQsgC0EgaiADIAQoArgBEQAAIAsoAiAiDEUNASALQaABaiAMIAsoAiQgASACIAUgBiAHIAggCSAKEHcgCy0A2AEiAUEERwRAIAtB6ABqIAtB1AFqKAIANgIAIAtB2ABqIAtBxAFq/QACAP0LAwAgC0HIAGogC0G0AWr9AAIA/QsDACALQZIBaiALQdsBai0AADoAACALIAv9AAKkAf0LAzggCyALLwDZATsBkAELIAAgC/0AAzj9CwIAIAAgAToANCAAIAsvAZABOwA1IABBMGogC0E4aiIBQTBqKAIANgIAIABBIGogAUEgav0AAwD9CwIAIABBEGogAUEQav0AAwD9CwIAIABBN2ogC0GSAWotAAA6AAAMBAsgCygCLCEOIAoEf0EABSAHKAKsASEKIAQoAqwBIQ8gBygCqAEhESADIAQoAqgBEQsAIAYgERELAJIhFCADIA8RCwAhEiAGIAoRCwAiEyATIBIgEiATXRsgEiASXBshEkEBCyEKIAsgEjgCeCALIBQ4AnQgCyAKNgJwIA5BGGooAgAhCiAOQRBqKAIAIQ4gDUEYaigCACEPIA1BEGooAgAhDSALQYABaiADIAQoAoQBEQAAIAtBkAFqIAYgBygChAERAAAgCyoCjAEgCyoCnAFgDQEgC0GgAWoiCiABIAUgECAOIAYgByACIAwgDyADIAQgCCAJIAtB8ABqEEUgCy0A1AEiAkEERwRAIAtBOGoiAUEYaiAKQQxqKAIANgIAIAFBDGogCkEYaigCADYCACABQTBqIApBJGooAgA2AgAgAUEkaiAKQTBqKAIANgIAIAsgCykCpAE3AkggCyALKQKwATcCPCALIAspArwBNwJgIAsgCykCyAE3AlQgCyALKgKgATgCOAsgCyACOgBsDAILIAtBGGogBiAHKAK4AREAACALKAIYIgwEQCALQaABaiAMIAsoAhwgASAFIAIgAyAEIAggCSAKEHcgCy0A2AEiAUEERwRAIAtBmAFqIAtBsAFqKAIANgIAIAtBQGsgC0G8AWooAgA2AgAgC0H4AGogC0HIAWooAgA2AgAgC0GIAWogC0HUAWooAgA2AgAgCyALKQKoATcDkAEgCyALKQK0ATcDOCALIAspAsABNwNwIAsgCykCzAE3A4ABIAsqAqQBIQkLIAAgCTgCACAAIAspAzg3AgQgACALKQOQATcCECAAIAspA4ABNwIcIAAgCykDcDcCKCAAIAE6ADQgAEEMaiALQUBrKAIANgIAIABBGGogC0GYAWooAgA2AgAgAEEkaiALQYgBaigCADYCACAAQTBqIAtB+ABqKAIANgIAIABBN2ogC0GiAWotAAA6AAAgACALLwCgATsANQwDCyALQRBqIAMgBCgCYBEAACALQaABaiALKAIQIgwgCygCFCgCDBEAAAJAIAxFDQAgCykDoAFC5p216IDjz4cxhSALKQOoAULw4py6utTs2yaFhEIAUg0AIAAgASACIAwgBSAGIAcgCCAJIAoQcgwDCyALQQhqIAYgBygCYBEAACALQaABaiALKAIIIgwgCygCDCgCDBEAAAJAIAxFDQAgCykDoAFC5p216IDjz4cxhSALKQOoAULw4py6utTs2yaFhEIAUg0AIwBBQGoiBiQAIAZBCGoiByABIAUgDCACIAMgBCAIIAkgChByIAYtADwiAUEERwRAIAAgBikCDDcCECAAIAYpAhg3AgQgACAGKQIkNwIoIAAgBikCMDcCHCAAIAYqAgg4AgAgAEEYaiAHQQxqKAIANgIAIABBDGogB0EYaigCADYCACAAQTBqIAdBJGooAgA2AgAgAEEkaiAHQTBqKAIANgIACyAAIAE6ADQgBkFAayQADAMLIABBBToANAwCCyALQThqIAEgAiAMIA0gAyAEIAUgECAKIAYgByAIIAkgC0HwAGoQRQsgAEEwaiALQThqIgFBMGopAgA3AgAgAEEgaiABQSBq/QACAP0LAgAgAEEQaiABQRBq/QACAP0LAgAgACAL/QACOP0LAgALIAtB4AFqJAALowwBG38jAEGQAWsiDyQAAkACQAJAIABFDQAgAEEIayITKAIAQQFqIRAgEyAQNgIAIBBFDQEgACgCAA0CIABBfzYCACAPIBM2AgggDyAANgIEIA8gAEEIaiIfNgIAIAFFDQAgAUEIayIUKAIAQQFqIRAgFCAQNgIAIBBFDQEgASgC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AhAgCioCBCEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCCCEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCDCEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCECEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCFCEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCGCEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCHCEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCICEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCJCEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCKCEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCjUCLCErIBAoAgggC2tBB00EQCAQQQhqIAtBCEEBQQEQ1gYgECgCECELCyAQKAIMIAtqICs3AAAgECALQQhqIgs2AhAgCjUCMCErIBAoAgggC2tBB00EQCAQQQhqIAtBCEEBQQEQ1gYgECgCECELCyAQKAIMIAtqICs3AAAgECALQQhqIgs2AhAgCjUCNCErIBAoAgggC2tBB00EQCAQQQhqIAtBCEEBQQEQ1gYgECgCECELCyAQKAIMIAtqICs3AAAgECALQQhqIgs2AhAg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NwLoASADQgQ3AvABIANCgICAgMAANwL4ASADQgA3AoACIANCBDcCiAIgAyAD/QACuAX9CwKoASADQagDakIANwMAIANBhAVqQQA2AgAgA0EBOgCcAiAD/QwAAAAAAAAAAAAAAAAAAAAA/QsDmAMgA/0MAAAAAAAAAAAAAAAAAAAAAP0LBMADIANCADcC/AQgA/0MAAAAAAAAAAAAAAAAAACAP/0LBKACIAP9DP//f////39/AAAAAP//f//9CwTAAiAD/Qz//39/AAAAAP//f////39//QsE0AIgA/0MAAAAAP//f////39/AAAAAP0LBOACIAP9DP//f////39/AAAAAP//f//9CwTwAiAD/QwAAAAAAAAAAAAAAAAAAAAA/QsChAMgA0H////7BzYCgAMgA/0MAAAAAAAAAAAAAAAAAAAAAP0LBLACIAP9DAAAAAAAAAAAAAAAAAAAAAD9CwC7BSAD/QwAAAAAAAAAAAAAAAAAAAAA/QsAkwUgA/0MAAAAAAAAAAAAAAAAAAAAAP0LAOcFIAP9DAAAAAAAAAAAAAAAAAAAAAD9CwCQBiAD/QwAAAAAAAAAAAAAAAAAAAAA/QsA/QUgA0EAOgDYAyADQv////sHNwPQAyAD/QwAAIA/AAAAAAAAAAAAAAAA/QsEsAMgA0GAgID8AzYClAMgA0GgAmoiCEHIAWogBkEPaigAADYAACADIAP9AAC4Bf0LANkDIANBADoA9AMgA0L////7BzcC7AMgA0GEBGogBEEPaigAADYAACADIAP9AACQBf0LAPUDIANBADoAkAQgA0L////7BzcDiAQgCEGAAmogBUEPaigAADYAACADIAP9AADkBf0LAJEEIANBADoArAQgA0L////7BzcCpAQgA0G8BGogA0GcBmooAAA2AAAgAyAD/QAAjQb9CwCtBCADQQA6AMgEIANC////+wc3A8AEIANB2ARqIANBiQZqKAAANgAAIAMgA/0AAPoF/QsAyQQgA0EAOgCIBSADQQA2AvgEIANCADcD8AQgA0GAAjsB7AQgA0EANgLoBCADQQA6AOQEIANC////+wc3AtwEIAMoAgghBiADQQxqIAMoAhgiCEEGaiIFEMcCIANBHGogBRDHAiADQSxqIAUQxwIgAygCRCIEIAMoAjxGBEAgA0E8aiAEQQFBBEEQENcGIAMoAkQh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IAFBDEEAIAUbciEOIApBDGogCiADKgIAIhdDAAAAAF4iBhsqAgAhGSAIQfwBaiEKIAhBpAJqIQsgCUEMaiEBA0AgCCAaIBv9+gH95gH9CwTAAUP//39/IRAgBiAXQwAAAABdcgRAQ///f38gCCoCyAEgFCAHspQgBhsgGZMgF5UiECAQQwAAAABdGyEQC0P//39/IRJD//9/fyERIAUgFkMAAAAAXXIEQEP//39/IA4qAgAgDSoCAJMgFpUiESARQwAAAABdGyERCyAEIBVDAAAAAF1yBEBD//9/fyAYIAKylCAIKgLEASAEGyAMKgIAkyAVlSISIBJDAAAAAF0bIRILIAggBDoA7AEgCCAFOgDkASAIIAY6ANwBAkACQAJAIBAgE15FDQAgESATXkUNACASIBNeDQELQQIgECARXiICIBIgESAQIAIbXRsiD0ECdCICIAFqIQMgCEGIAWogAmoiCSgCACEHIAhB2AFqIA9BA3RqLQAERQRAIAkgB0EBayIJNgIAIAMgAygCAEEBayIDNgIAIAkgCEGgAWogAmooAgAiCUgEQCADIAlKDQMMAgsgCEGIAmoiA0EIaiIJIAFBCGooAgA2AgAgCCABKQIANwOIAiACIANqIAc2AgAgCEGYAmoiAkEIaiAIQZABaigCADYCACALIAgpA4gCNwIAIAtBCGogCSgCADYCACAIIAgpAogBNwOYAiAIQeQAaiACEI4DDAILIAkgB0EBaiIHNgIAIAMgAygCACIDQQFqIgk2AgAgCSAIQbABaiACaigCACIJTARAIAhBiAJqIgdBCGoiCSAIQZABaigCADYCACAIIAgpAogBNwOIAiACIAdqIAM2AgAgCiABKQIANwIAIApBCGogAUEIaigCADYCACAIQfABaiICQQhqIAkoAgA2AgAgCCAIKQOIAjcD8AEgCEHkAGogAhCOAwwCCyAHIAlIDQELIAAgCP0AAhD9CwIAIABBMGogCEEQaiIBQTBqKQIANwIAIABBIGogAUEgav0AAgD9CwIAIABBEGogAUEQav0AAgD9CwIAIAhBsAJqJAAPCyAIKAKcASECIAj9AAKMASEbIAgoAogBIQcMAAsAC70JAg5/An0jAEGgAmsiAiQAAkACQAJAIAAoAkBBgICAgHhHBEAgAkEMaiAAIAFBAUP//39/EHQgAigCIEEERg0B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aikCADcCACABQQhqIANBCGr9AAIA/QsCAAsgJUEwaiQADwtBAAshJyAoQQhqIiggFmogF3EhFgwACwAL+wgDCn8BewF+IwAiAiEJIAJBQGpBQHEiBSQAAkAgACgCCCIDRQRAIABBADYCFEEAIQMMAQsgACgCBCIGKAIcIQcCQAJAAkACQAJAIAYoAjxB/////wNxIAdB/////wNxakECTQRAIABBADYCFCABQQA2AgggBSAGQTBq/QAEAP0LBDAgBSAGQSBq/QAEAP0LBCAgBSAGQRBq/QAEAP0LBBAgBSAG/QAEAP0LBAAgASgCAEUEQCABQeDwwgAQwwgLIABBDGohBCABKAIEIgIgBf0ABAD9CwQAIAJBEGogBf0ABBD9CwQAIAJBIGogBf0ABCD9CwQAIAJBMGogBf0ABDD9CwQAIAIgAigCHCIIQf////8HQf////8DIAhB/////3tLG3E2AhwgAigCPCIFQf////8DcSIIDQEMBQsgAyABKAIIIgRLBEAgASgCACAEIgJrIAMgAmsiCEkEQCABIAIgCEHAAEHAABDYBiABKAIIIQILIAEoAgQiCiACQQZ0aiEHIAhBAkkEfyACBSADIARBf3NqQQZ0IgsEQCAHQQAgC/wLAAsgCiACIANqIARrQQZ0akFAaiEHIAIgCGpBAWsLIQggB/0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgB0Ewav0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgB0Egav0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgB0EQav0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgBigCHCEHIAhBAWohAwsgAEEYaiEEIAEgAzYCCCAFQQE2AgAgBigCLCEDAkAgB0H/////A3FBAUYEQCABKAIEIgJBEGogBkEQav0ABAD9CwQAIAIgBikDADcDACACQQhqIAZBCGopAwA3AwAgAkH/////B0H/////AyACKAIcIgJB/////3tLGyACcTYCHAwBCyAAIAEgBCAAKAIQIAAoAhQgBigCDCAFQQAQggIgACgCCEUNAgsCQCAAKAIEIgIoAjxB/////wNxQQFHBEAgACABIAQgACgCECAAKAIUIAMgBUEBEIICDAELIAEoAghFDQMgAkEwav0ABAAhDCABKAIEIgMgAikDIDcDICADQShqIAJBKGopAwA3AwAgA0EwaiAM/QsEACABKAIIRQ0EIAEoAgQiAigCPCIDQf////97TQRAIAIgA0H/////A3E2AjwMAQsgAiADQf////8HcTYCPAsgACgCCCIDIAUoAgAiAk8EQCAAIAI2AgggAiEDCyABKAIIIgQgAk8EQCABIAI2AgggAiEECyACIAAoAhRLDQUgACACNgIUDAULIAIgCEGAgICABHIgCCAFQf////97Sxs2AjwMAwtBAEEAQbDwwgAQhQsAC0EAQQBBwPDCABCFCwALQQBBAEHQ8MIAEIULAAsgBCgCAEUEQCAEQfDwwgAQtgggACgCCCEDC0EBIQQgAEEBNgIUIAAoAhBBADYCAAsgACAENgIIIAEgAzYCCCAAKQIAIQ0gACABKQIANwIAIAEgDTcCACAJJAALzwcCEn8DfQJAIAEoAgBBAUYEQCABKAIIIQwgASgCHCEFIAEoAgwhBiABKAIkIQIgASgCKCEEIAEoAgQhBwJAAkAgAQJ/AkACQCABAn8CQAJAAkAgASgCVCINBEAgAUH4AGohDiABQRBqIQ8gASgCWCEQIAEoAoQBIRIgASgCdCERIAEoAnAhCCABKAJkIQogASgCiAEiAyABKAKMASILIAMgC0obIRMDQCADIQkgBwRAIAIgBEgEQCAGIAJBBnRqIAVBA3RqIAEoAhBrIAEoAhRBA3RrIAEoAhhBBnRrIQMDQCADQf8DSw0HIAMgDGotAAAiC0HAAEcNCiADQUBrIQMgBCACQQFqIgJHDQALIAEgBDYCJAsgAUEANgIECyAJIBNGDQIgASARNgIMIAEgEDYCCCABIA02AgQgASAINgIoIAEgCjYCJCABIBI2AiAgASAJNgIcIAEgCUEBaiIDNgKIASAPIA4pAgA3AgAgD0EIaiAOQQhqKAIANgIAIBAhDCAJIQUgESEGIAohAiAIIQQgDSEHDAALAAsgB0UNACACIARIBEAgBiACQQZ0aiAFQQN0aiABKAIQayABKAIUQQN0ayABKAIYQQZ0ayEDA0AgA0H/A0sNAyADIAxqLQAAIgtBwABHDQYgA0FAayEDIAQgAkEBaiICRw0ACyABIAQ2AiQLIAFBADYCBAsgASgCLCIIBEAgASgCTCICIAEoAlAiCkgEQCABKAI0IgYgAkEGdGogASgCRCIFQQN0aiABKAI4ayABKAI8QQN0ayABKAJAQQZ0ayEDIAEoAjAhCQNAIANB/wNLDQkgAyAJai0AACILQcAARw0KIANBQGshAyAKIAJBAWoiAkcNAAsgASAKNgJMCyABQQA2AiwLQQAhBCABQQA2AgAMCQsgAkEBagwBCyACQQFqCzYCJCADQYAEQaD7wQAQhQsACyACQQFqDAELIAJBAWoLNgIkIAKyQwAAAD+SIAcqAmyUIRQgBbJDAAAAP5IgByoCaJQhFSAGskMAAAA/kiAHKgJklCEWIAEoAiAhAUEBIQQMAwsgASACQQFqNgJMIANBgARBoPvBABCFCwALQQEhBCABIAJBAWo2AkwgArJDAAAAP5IgCCoCbJQhFCAFskMAAAA/kiAIKgJolCEVIAayQwAAAD+SIAgqAmSUIRYgASgCSCEBDAELIABBADYCAA8LIAAgCzoAJCAAIBQ4AiAgACAVOAIcIAAgFjgCGCAAIAI2AhQgACAFNgIQIAAgBjYCDCAAIAM2AgggACABNgIEIAAgBDYCAAvPBwISfwN9AkAgASgCAEEBRgRAIAEoAgghDCABKAIcIQUgASgCDCEGIAEoAiQhAiABKAIoIQQgASgCBCEHAkACQCABAn8CQAJAIAECfwJAAkACQCABKAJUIg0EQCABQfgAaiEOIAFBEGohDyABKAJYIRAgASgChAEhEiABKAJ0IREgASgCcCEIIAEoAmQhCiABKAKIASIDIAEoAowBIgsgAyALShshEwNAIAMhCSAHBEAgAiAESARAIAYgAkEGdGogBUEDdGogASgCEGsgASgCFEEDdGsgASgCGEEGdGshAwNAIANB/wNLDQcgAyAMai0AACILQcAARw0KIANBQGshAyAEIAJBAWoiAkcNAAsgASAENgIkCyABQQA2AgQLIAkgE0YNAiABIBE2AgwgASAQNgIIIAEgDTYCBCABIAg2AiggASAKNgIkIAEgEjYCICABIAk2AhwgASAJQQFqIgM2AogBIA8gDikCADcCACAPQQhqIA5BCGooAgA2AgAgECEMIAkhBSARIQYgCiECIAghBCANIQcMAAsACyAHRQ0AIAIgBEgEQCAGIAJBBnRqIAVBA3RqIAEoAhBrIAEoAhRBA3RrIAEoAhhBBnRrIQMDQCADQf8DSw0DIAMgDGotAAAiC0HAAEcNBiADQUBrIQMgBCACQQFqIgJHDQALIAEgBDYCJAsgAUEANgIECyABKAIsIggEQCABKAJMIgIgASgCUCIKSARAIAEoAjQiBiACQQZ0aiABKAJEIgVBA3RqIAEoAjhrIAEoAjxBA3RrIAEoAkBBBnRrIQMgASgCMCEJA0AgA0H/A0sNCSADIAlqLQAAIgtBwABHDQogA0FAayEDIAogAkEBaiICRw0ACyABIAo2AkwLIAFBADYCLAtBACEEIAFBADYCAAwJCyACQQFqDAELIAJBAWoLNgIkIANBgARBlOfDABCFCwALIAJBAWoMAQsgAkEBags2AiQgArJDAAAAP5IgByoCbJQhFCAFskMAAAA/kiAHKgJolCEVIAayQwAAAD+SIAcqAmSUIRYgASgCICEBQQEhBAwDCyABIAJBAWo2AkwgA0GABEGU58MAEIULAAtBASEEIAEgAkEBajYCTCACskMAAAA/kiAIKgJslCEUIAWyQwAAAD+SIAgqAmiUIRUgBrJDAAAAP5IgCCoCZJQhFiABKAJIIQEMAQsgAEEANgIADwsgACALOgAkIAAgFDgCICAAIBU4AhwgACAWOAIYIAAgAjYCFCAAIAU2AhAgACAGNgIMIAAgAzYCCCAAIAE2AgQgACAENgIAC4YIAwh/AXsMfSMAQRBrIgskACAGIAYoAgAiCEEBajYCAAJAAkACQAJAAkACQCAFIAAoAggiCUkEQCAAKAIEIg0gBUEGdGoiCSgCPCEOIAkoAiwhDwJAIAkoAhxB/////wNxQQFHBEAgACABIAIgAyAEIAkoAgwgBiAIQQF0EIICDAELIAEoAggiCiAITQ0CIAlBEGr9AAQAIRAgCEEGdCIMIAEoAgRqIgogCSkDADcDACAKQQhqIAlBCGopAwA3AwAgCkEQaiAQ/QsEACABKAIIIgogCE0NAyABKAIEIAxqIgwoAhwhCiAMQf////8HQf////8DIApB/////3tLGyAKcTYCHCAJKAIMIgkgAigCCE8NBCACKAIEIAlBA3RqIgkoAgBFDQQgCSAIQQF0NgIECyAOQf////8DcUEBRwRAIAAgASACIAMgBCAPIAYgCEEBdEEBchCCAgwHCyABKAIIIgAgCE0NBCANIAVBBnRqQSBqIgBBEGr9AAQAIRAgASgCBCAIQQZ0aiIFIAApAwA3AyAgBUEoaiAAQQhqKQMANwMAIAVBMGogEP0LBAAgASgCCCIFIAhNDQUgASgCBCAIQQZ0aiIGKAI8IQUgBkH/////B0H/////AyAFQf////97SxsgBXE2AjwCQCAAKAIMIgAgAigCCE8NACACKAIEIABBA3RqIgAoAgBFDQAgACAIQQF0QQFyNgIEDAcLQZDkwgBBD0Hg8cIAENELAAsgBSAJQYDxwgAQhQsACyAIIApBkPHCABCFCwALIAggCkGg8cIAEIULAAtBkOTCAEEPQbDxwgAQ0QsACyAIIABBwPHCABCFCwALIAggBUHQ8cIAEIULAAsCQAJAIAggASgCCCIASQRAIAdBAXYiAiAATw0BIAEoAgQiBiAIQQZ0aiIAKAI8IQEgACgCHCEFIAAqAjghESAAKgIYIRIgACoCNCETIAAqAhQhFCAAKgIwIRUgACoCECEWIAAqAighFyAAKgIIIRggACoCJCEZIAAqAgQhGiAAKgIgIRsgACoCACEcIAsgBiACQQZ0aiIANgIIIAsgAEEgajYCDCALQQhqIAdBAXFBAnRqKAIAIgAgAUH/////A3EgBUH/////A3FqIAEgBXJBgICAgHxxcjYCHCAAIBIgESARIBJfGzgCGCAAIBQgEyATIBRfGzgCFCAAIBYgFSAVIBZfGzgCECAAIAg2AgwgACAYIBcgFyAYYBs4AgggACAaIBkgGSAaYBs4AgQgACAcIBsgGyAcYBs4AgAgBCAITQ0CIAMgCEECdGogBzYCACALQRBqJAAPCyAIIABB8PHCABCFCwALIAIgAEGA8sIAEIULAAsgCCAEQZDywgAQhQsAC9gHAgh/Bn0jAEHQAWsiBiQAIAZBCGogBCADIAUoApQBEQEAAkAgACABKAIQEQQAIgkoAghFBEAMAQsgCSgCBCIHQQAgBioCECIOIAcqAhhfG0EAIAYqAgwiDyAHKgIUXxtBACAGKgIIIhAgByoCEF8bQQAgBioCHCIRIAcqAghgG0EAIAYqAhgiEiAHKgIEYBtBACAGKgIUIhMgByoCAGAbIQogBygCPEH/////A3FFDQAgByoCICATXyAHKgIkIBJfcSAHKgIoIBFfcSAHKgIwIBBgcSAHKgI0IA9gcSAHKgI4IA5gcSEIIAdBIGohBwsgBiAKNgKwASAGIAk2AqgBIAYgCDYCpAEgBiAHNgIkIAZBADYCICAGIAZBCGo2AqwBIAZBpAFqIQsgBkEkaiEKIAFBDGohDQJAAn8DQAJAAkAgBigCsAEiB0UEQCAKIQEgCyEJIAYoAqQBIggiB0EhTwRAIAYoAiQhByABIQkgBigCKCEBCyAHRQ0BIAkgB0EBayIJNgIAIAEgCUECdGooAgAhBwsgBkEANgKwASAHKAIcQf////8DcUEBRg0BIAcoAgwiASAGKAKoASIHKAIIIglPDQRBASEJAkAgBigCrAEiCCoCDCIOIAcoAgQgAUEGdGoiASoCAGBFDQAgASoCBCAIKgIQX0UNACABKgIIIAgqAhRfRQ0AIAEqAhAgCCoCAGBFDQAgASoCFCAIKgIEYEUNACABKgIYIAgqAghgRQ0AIAYgATYCsAEgCCoCDCEOQQAhCQsgASoCICAOX0UNAiABKgIkIAgqAhBfRQ0CIAEqAiggCCoCFF9FDQIgASoCMCAIKgIAYEUNAiABKgI0IAgqAgRgRQ0CIAEqAjggCCoCCGBFDQIgAUEgaiEMIAlFBEACfyAGKAKkASIIQSFJBEAgCCEBIAohB0EgIQggCwwBCyAGKAIkIQEgBigCKCEHIAoLIQkgASAIRgR/IAZBIGoQowQgBigCKCEHIAohCSAGKAIkBSABC0ECdCAHaiAMNgIAIAkgCSgCAEEBajYCAAwDCyAGIAw2ArABDAILIAZBADYCsAFBAAwCCyAHKAIMIQEgBiAFNgLAASAGIAQ2ArwBIAYgAzYCuAEgBiACNgK0ASANKAIAIQkgBkECOgDHASAGIAZBtAFqNgLMASAGIAZBxwFqNgLIASAAIAEgBkHIAWpBiJvDACAJEQIAIAYtAMcBQQFxRQ0ACyAGKAKkASEIQQELIQcgCEEhTwRAIAYoAiggCEECdEEEEOgOCyAGQdABaiQAIAcPCyABIAlBoPLCABCFCwAL7gcCCn8BfiMAQYACayIGJAACQAJAAkACQCAARQ0AIABBCGsiCSgCAEEBaiEHIAkgBzYCACAHRQ0BIAAoAgAiB0F/Rg0CIAAgB0EBajYCACAGIAk2AhAgBiAANgIMIAYgAEEEaiINNgIIIAJFDQAgAkEIayIKKAIAQQFqIQcgCiAHNgIAIAdFDQEgAigCACIHQX9GDQIgAiAHQQFqNgIAIAYgCjYCHCAGIAI2AhggBiACQQRqNgIUIANFDQAgA0EIayILKAIAQQFqIQcgCyAHNgIAIAdFDQEgAygCACIHQX9GDQIgAyAHQQFqNgIAIAYgCzYCKCAGIAM2AiQgBiADQQRqIgc2AiAgBEUNACAEQQhrIgwoAgBBAWohCCAMIAg2AgAgCEUNASAEKAIAIghBf0YNAiAEIAhBAWo2AgAgBiAMNgI0IAYgBDYCMCAGIARBBGo2AiwgBiAE/QACBP0LA3AgBkGIAWogB0EIaigCADYCACAGIAcpAgA3A4ABAn8CQCANIAG9IhCnIBBCIIinELoMIgcEQCAGQcgBaiAHQfQAaiAHKAJAIAcoAkQiBygCCEEBa0F4cWpBCGogByAGQfAAaiACKAIEIAIoAggiBygCCEEBa0F4cWpBCGogByAFEPkBIAYoAsgBIghBAkYNASAGQZABaiIHQTBqIg0gBkH8AWooAgA2AgAgB0EgaiIOIAZB7AFq/QACAP0LAwAgB0EQaiIPIAZB3AFq/QACAP0LAwAgBiAG/QACzAH9CwOQAUEAIAhBAXFFDQIaIAZBOGoiB0EwaiANKAIANgIAIAdBIGogDv0AAwD9CwMAIAdBEGogD/0AAwD9CwMAIAYgBv0AA5AB/QsDOEEBDAILQdzQwQBBzABBqNHBABDRCwALQQALIQcgBCAEKAIAQQFrNgIAIAwgDCgCAEEBayIENgIAIARFBEAgBkE0ahClDQsgAyADKAIAQQFrNgIAIAsgCygCAEEBayIDNgIAIANFBEAgBkEoahCpDQsgAiACKAIAQQFrNgIAIAogCigCAEEBayICNgIAIAJFBEAgBkEcahDgCwsgACAAKAIAQQFrNgIAIAkgCSgCAEEBayIANgIAIABFBEAgBkEQahDuDAtBACECIAcEQEHAAEEEEJEOIgBFDQQgAEEANgIIIABCgYCAgBA3AgAgACAG/QADOP0LAgwgAEEcaiAGQcgAav0AAwD9CwIAIABBLGogBkHYAGr9AAMA/QsCACAAQTxqIAZB6ABqKAIANgIAIABBCGohAgsgBkGAAmokACACDwsQgw8LAAsQhA8AC0EEQcAAQfjKxAAoAgAiAEHMCCAAGxEAAAALhQwDCn8NewZ+IwBBkAFrIgQkACAE/QwAAAAAAAAAAAAAAAAAAIA//QsEACADKAIEIgYgAkkhCiAEIAEgBkEGdGogBCAKG/0ABAAiFP0LBCAgBCABIAMoAgAiC0EGdGoiByAEIAIgC0siDBv9AAQAIhr9CwQQIAMoAgwhCCADKAIIIQMgDAR7IAf9AAQQBf0MAAAAAAAAAAAAAAAAAAAAAAshGSAIQQZ0IQUgA0EGdCEJIAIgA0shByAKBEAgASAGQQZ0aiINKQMYIR4gDSkDECEbCyACIAhLIQIgASAFaiEFIAEgCWohCSAHBEAgASADQQZ0av0ABBAhDgsgBSAEIAIbIQUgCSAEIAcbIQkgAgRAIAEgCEEGdGr9AAQQIQ8LIAX9AAQAIRYgCf0ABAAhFyAEIBs3A0AgBCAZ/QsEMCAEIB43A0ggDARAIAEgC0EGdGr9AAQgIRULIAoEQCABIAZBBnRqIgUpAyghHyAFKQMgIRwLIAcEQCABIANBBnRq/QAEICEQCyACBEAgASAIQQZ0av0ABCAhEQsgBCAcNwNgIAQgFf0LBFAgBCAfNwNoIAwEQCABIAtBBnRq/QAEMCEYCyAKBEAgASAGQQZ0aiIGKQM4ISAgBikDMCEdCyAHBEAgASADQQZ0av0ABDAhEwsgAgRAIAEgCEEGdGr9AAQwIRILIAAgBP0AAhwgFP0NAAECAxwdHh8AAQIDAAECAyAX/Q0AAQIDBAUGBxwdHh8AAQIDIBb9DQABAgMEBQYHCAkKCxwdHh/9CwQwIAAgBP0AAxggFP0NAAECAxgZGhsAAQIDAAECAyAX/Q0AAQIDBAUGBxgZGhsAAQIDIBb9DQABAgMEBQYHCAkKCxgZGhv9CwQgIAAgBP0AAhQgFP0NAAECAxQVFhcAAQIDAAECAyAX/Q0AAQIDBAUGBxQVFhcAAQIDIBb9DQABAgMEBQYHCAkKCxQVFhf9CwQQIAAgGiAU/Q0AAQIDEBESEwABAgMAAQIDIBf9DQABAgMEBQYHEBESEwABAgMgFv0NAAECAwQFBgcICQoLEBESE/0LBAAgACAVIByn/RwBIBD9DQABAgMEBQYHEBESEwABAgMgEf0NAAECAwQFBgcICQoLEBESE/0LBIABIAAgGSAbp/0cASAO/Q0AAQIDBAUGBxAREhMAAQIDIA/9DQABAgMEBQYHCAkKCxAREhP9CwRAIAQgGP0LBHAgBCAdNwOAASAAIBggHaf9HAEgE/0NAAECAwQFBgcQERITAAECAyAS/Q0AAQIDBAUGBwgJCgsQERIT/QsEwAEgACAE/QADWCAfp/0cASAQ/Q0AAQIDBAUGBxgZGhsAAQIDIBH9DQABAgMEBQYHCAkKCxgZGhv9CwSgASAAIAT9AAJUIBxCIIin/RwBIBD9DQABAgMEBQYHFBUWFwABAgMgEf0NAAECAwQFBgcICQoLFBUWF/0LBJABIAAgBP0AAzggHqf9HAEgDv0NAAECAwQFBgcYGRobAAECAyAP/Q0AAQIDBAUGBwgJCgsYGRob/QsEYCAAIAT9AAI0IBtCIIin/RwBIA79DQABAgMEBQYHFBUWFwABAgMgD/0NAAECAwQFBgcICQoLFBUWF/0LBFAgACAE/QACdCAdQiCIp/0cASAT/Q0AAQIDBAUGBxQVFhcAAQIDIBL9DQABAgMEBQYHCAkKCxQVFhf9CwTQASAAIAT9AAJcIB9CIIin/RwBIBD9DQABAgMEBQYHHB0eHwABAgMgEf0NAAECAwQFBgcICQoLHB0eH/0LBLABIAAgBP0AAjwgHkIgiKf9HAEgDv0NAAECAwQFBgccHR4fAAECAyAP/Q0AAQIDBAUGBwgJCgscHR4f/QsEcCAEICA3A4gBIAAgBP0AA3ggIKf9HAEgE/0NAAECAwQFBgcYGRobAAECAyAS/Q0AAQIDBAUGBwgJCgsYGRob/QsE4AEgACAE/QACfCAgQiCIp/0cASAT/Q0AAQIDBAUGBxwdHh8AAQIDIBL9DQABAgMEBQYHCAkKCxwdHh/9CwTwASAEQZABaiQAC7gGAhl9An8gASoCeCEVIAEqAnwhFiABKgKAASEXIAEqAtACIRggASoC2AIhGSABKgLUAiEaIAEtAMgCIRsgASoCnAEhCCABKgKYASEGIAEqApQBIRMgACABKgIIIgMgASoCjAEiBZQgASoCBCIHIAEqAogBIgKUIAEqAgAiBCABKgKEASIKlCABKgIMIhEgASoCkAEiCZSSkpIiCyABKgJ0IhKUIAMgApQgBCAJlCARIAqUkyAHIAWUk5IiDCABKgJoIg6UkyAHIAmUIAQgBZQgESAClJOSIAMgCpSTIg0gASoCbCIPlJMgAyAJlCAHIAqUIBEgBYyUIAQgApSTkpIiFCABKgJwIhCUkzgCDCAAIBQgD5QgCyAOlCAMIBKUkpIgDSAQlJM4AgAgACALIBCUIA0gDpQgFCASlJIgDCAPlJOSOAIIIAAgDCAQlCALIA+UIA0gEpQgFCAOlJOSkjgCBCAAIBcgCSAKIAaUIAIgE5STIgsgC5IiC5QgAiACIAiUIAUgBpSTIgwgDJIiDJQgCiAFIBOUIAogCJSTIg0gDZIiDZSTkiAIkyIIIBEgBCAJIA2UIAogC5QgBSAMlJOSIAaTIgqUIAcgCSAMlCAFIA2UIAIgC5STkiATkyIFlJMiAiACkiIClCAEIAMgBZQgBCAIlJMiCSAJkiIJlCAHIAcgCJQgAyAKlJMiCCAIkiIIlJOSkiIGIAZDAAAAAJIgG0EBcSIBGyIGIAZDAAAAAJIgG0ECcSIcGyIGIAYgGZIgG0EEcSIbGyIGIBIgDiAKIBEgCZQgAyAIlCAEIAKUk5KSIgQgBEMAAAAAkiABGyIEIAQgGpIgHBsiBCAEQwAAAACSIBsbIgSUIA8gBSARIAiUIAcgApQgAyAJlJOSkiIDIAMgGJIgARsiAyADQwAAAACSIBwbIgMgA0MAAAAAkiAbGyIDlJMiBSAFkiIFlCAOIAMgEJQgBiAOlJMiByAHkiIHlCAPIAYgD5QgBCAQlJMiAiACkiIClJOSkpI4AhggACAWIAQgEiAHlCAQIAKUIA4gBZSTkpKSOAIUIAAgFSADIBIgApQgDyAFlCAQIAeUk5KSkjgCEAvPBgEIfwJAAkAgAEEDakF8cSIDIABrIgggAUsNACABIAhrIgZBBEkNACAGQQNxIQdBACEBAkAgACADRiIJDQACQCAAIANrIgVBfEsEQEEAIQMMAQtBACEDA0AgASAAIANqIgIsAABBv39KaiACQQFqLAAAQb9/SmogAkECaiwAAEG/f0pqIAJBA2osAABBv39KaiEBIANBBGoiAw0ACwsgCQ0AIAAgA2ohAgNAIAEgAiwAAEG/f0pqIQEgAkEBaiECIAVBAWoiBQ0ACwsgACAIaiEAAkAgB0UNACAAIAZBfHFqIgMsAABBv39KIQQgB0EBRg0AIAQgAywAAUG/f0pqIQQgB0ECRg0AIAQgAywAAkG/f0pqIQQLIAZBAnYhBSABIARqIQQDQCAAIQMgBUUNAkHAASAFIAVBwAFPGyIGQQNxIQcgBkECdCEAQQAhAiAFQQRPBEAgAyAAQfAHcWohCCADIQEDQCACIAEoAgAiAkF/c0EHdiACQQZ2ckGBgoQIcWogAUEEaigCACICQX9zQQd2IAJBBnZyQYGChAhxaiABQQhqKAIAIgJBf3NBB3YgAkEGdnJBgYKECHFqIAFBDGooAgAiAkF/c0EHdiACQQZ2ckGBgoQIcWohAiAIIAFBEGoiAUcNAAsLIAUgBmshBSAAIANqIQAgAkEIdkH/gfwHcSACQf+B/AdxakGBgARsQRB2IARqIQQgB0UNAAsCfyADIAZB/AFxQQJ0aiIAKAIAIgFBf3NBB3YgAUEGdnJBgYKECHEiASAHQQFGDQAaIAEgACgCBCIBQX9zQQd2IAFBBnZyQYGChAhxaiIBIAdBAkYNABogACgCCCIAQX9zQQd2IABBBnZyQYGChAhxIAFqCyIBQQh2Qf+BHHEgAUH/gfwHcWpBgYAEbEEQdiAEag8LIAFFBEBBAA8LIAFBA3EhAwJAIAFBBEkEQAwBCyABQXxxIQUDQCAEIAAgAmoiASwAAEG/f0pqIAFBAWosAABBv39KaiABQQJqLAAAQb9/SmogAUEDaiwAAEG/f0pqIQQgBSACQQRqIgJHDQALCyADRQ0AIAAgAmohAQNAIAQgASwAAEG/f0pqIQQgAUEBaiEBIANBAWsiAw0ACwsgBAuTBwEUfwJAAkACQCABKAIARQ0AIAEoAggiBiABKAIgIgNBBnRqIAEoAhgiCEEDdGogASgCDGsgASgCEEEDdGsgASgCFEEGdGshBCADQQFrIQJBACABKAIkIgUgAyADIAVIG2shAyABKAIEIQUCQANAIAIgA2pBf0YNAiABIAJBAmo2AiAgBEH/A0sNASACQQFqIQIgBCAFaiEHIARBQGshBCAHLQAAQcAARg0ACwwDCwwBCwJAIAEoAlAiD0UNACABKAKEASIDIAEoAogBIgpODQAgASgCcCIFIAEoAmAiAkEGdGogA0EDdGoiCyABKAJUIgxqIQ0gCkEBayESIAFBDGohECABQfQAaiERIAJBAWshCEEAIAEoAmwiByACIAIgB0gbIhNrIRQgASgCgAEhDgNAIBAgESkCADcCACAQQQhqIBFBCGooAgA2AgAgCyABKAIMIgJrIAEoAhBBA3QiBmsgASgCFEEGdCIJayEEIA0gAiAGaiAJamshCSADQQFqIQYgCCECAkACQANAIAIgFGpBf0YNAiAEQf8DSw0BIARBQGshBCACQQFqIQIgCS0AACEVIAlBQGshCSAVQcAARg0ACyABIAY2AoQBIAEgBzYCJCABIA42AhwgASADNgIYIAEgBTYCCCABIAw2AgQgASAPNgIAIAAgAjYCDCAAIAM2AgggACAFNgIEIAEgAkEBajYCICAAQQE2AgAPCyABIAY2AoQBIAEgBzYCJCABIA42AhwgASADNgIYIAEgBTYCCCABIAw2AgQgASAPNgIAIAEgAkECajYCIAwDCyANQQhqIQ0gC0EIaiELIAogBiIDRw0ACyABIAo2AoQBIAEgBzYCJCABIBM2AiAgASAONgIcIAEgEjYCGCABIAU2AgggASAMNgIECyABQQA2AgACQCABKAIoRQ0AIAEoAjAiBiABKAJIIgNBBnRqIAEoAkAiCEEDdGogASgCNGsgASgCOEEDdGsgASgCPEEGdGshBCADQQFrIQJBACABKAJMIgUgAyADIAVIG2shAyABKAIsIQUCQANAIAIgA2pBf0YNAiABIAJBAmo2AkggBEH/A0sNASACQQFqIQIgBCAFaiEHIARBQGshBCAHLQAAQcAARg0ACwwDCwwBCyABQQA2AiggAEEANgIADwsgBEGABEH8vcEAEIULAAsgACACNgIMIAAgCDYCCCAAIAY2AgQgAEEBNgIAC5kHAg59An8jAEHAAWsiBCQAIAAoAgQhBQJAAkAgAQRAIAUoAgAhFCAEQeAAaiIVIAUoAgQgARDTAiAEQShqIBQgFSACIAMgBSgCCCAFKAIMIAUoAhAgBSgCFCoCACAFKAIYKgIAIAUoAhwtAAAQtwEgBC0AXCIDQQVGDQEgBEG4AWoiAiAEQUBrKAIANgIAIARBqAFqIgUgBEHYAGooAgA2AgAgBCAEKQI4NwOwASAEIAQpAlA3A6ABIANBBEYNAiAEKgI0IQogBCoCMCEQIAQqAiwhESAEKgIoIRIgBCoCRCENIAQqAkghDiAEKgJMIQYgBEEgaiACKAIANgIAIARBEGogBSgCADYCACAEIAQpA7ABNwMYIAQgBCkDoAE3AwggBiABKgIMIg8gDiABKgIAIgeUIA0gASoCBCIIlJMiCSAJkiILlCAHIA0gASoCCCIJlCAGIAeUkyIMIAySIgyUIAggBiAIlCAOIAmUkyIGIAaSIgaUk5KSIRMgDiAPIAyUIAkgBpQgByALlJOSkiEOIA0gDyAGlCAIIAuUIAkgDJSTkpIhDSABKgIYIAogDyAQIAeUIBEgCJSTIgYgBpIiBpQgByARIAmUIAogB5STIgsgC5IiC5QgCCAKIAiUIBAgCZSTIgogCpIiCpSTkpKSIQwgASoCFCAQIA8gC5QgCSAKlCAHIAaUk5KSkiEHIAEqAhAgESAPIAqUIAggBpQgCSALlJOSkpIhCAwCCyAEQeAAaiAFKAIAIAUoAgQgAiADIAUoAgggBSgCDCAFKAIQIAUoAhQqAgAgBSgCGCoCACAFKAIcLQAAELcBIAQtAJQBIgNBBUYNACAEQSBqIARB+ABqKAIANgIAIARBEGogBEGQAWooAgA2AgAgBEEGaiAEQZcBai0AADoAACAEIAQpAnA3AxggBCAEKQKIATcDCCAEIAQvAJUBOwEEIAQqAmwhDCAEKgJoIQcgBCoCZCEIIAQqAmAhEiAEKgJ8IQ0gBCoCgAEhDiAEKgKEASETDAELQQQhAwsgACgCACIAIAw4AgwgACAHOAIIIAAgCDgCBCAAIBI4AgAgACAEKQMYNwIQIAAgEzgCJCAAIA44AiAgACANOAIcIAAgBCkDCDcCKCAAIAM6ADQgAEEYaiAEQSBqKAIANgIAIABBMGogBEEQaigCADYCACAAIAQvAQQ7ADUgAEE3aiAEQQZqLQAAOgAAIARBwAFqJAALlQcCEH8DfiMAQTBrIgQkACAEIAI2AiggASgCDCEJIAQgBEEoajYCLAJAAkACQAJ/AkAgCSAJQQFqIgJNBEAgASgCBCIKIApBAWpBA3ZBB2wgCkEISRsiA0EBdiACSQRAIANBAWoiAyACIAIgA0kbIgJBD0kNAiACQf////8BTQRAQX8gAkEDdEEHbkEBa2d2IgJB/v///wBLDQUgAkEBagwECxCnDCAEKAIkIQIgBCgCICEDDAYLIAEgBEEsakGMAkEQEMYCQYGAgIB4IQMMBQsQpwwgBCgCDCECIAQoAgghAwwEC0EEQQhBECACQQhJGyACQQRJGwsiAkEEdCIHIAJBCGoiCyAHaiIDSw0AIANB+P///wdLDQAgA0EIEJEOIgUNAUEIIANB+MrEACgCACIAQcwIIAAbEQAAAAsQpwwgBCgCFCECIAQoAhAhAwwBCyAFIAdqIQUgCwRAIAVB/wEgC/wLAAsgAkEBayIIIAJBA3ZBB2wgCEEISRshDQJAIAlFBEAgASgCACEHDAELIAVBCGohDiABKAIAIgdBEGshDyAHKQMAQn+FQoCBgoSIkKDAgH+DIRMgBCgCKCEQQQAhAiAJIQsgByEDA0AgE1AEQANAIAJBCGohAiADQQhqIgMpAwBCgIGChIiQoMCAf4MiE0KAgYKEiJCgwIB/UQ0ACyATQoCBgoSIkKDAgH+FIRMLIBApAwAgDyATeqdBA3YgAmoiEUEEdGspAgCFIhRCIIgiFUK307CFDH4gFEL/////D4MiFELdofHLDH6FIBVC3aHxywx+IBRCt9OwhQx+hUIgiIWnIhIgCHEiBiAFaikAAEKAgYKEiJCgwIB/gyIUUARAQQghDANAIAYgDGohBiAMQQhqIQwgBiAIcSIGIAVqKQAAQoCBgoSIkKDAgH+DIhRQDQALCyATQgF9IBODIRMgFHqnQQN2IAZqIAhxIgYgBWosAABBAE4EQCAFKQMAQoCBgoSIkKDAgH+DeqdBA3YhBgsgBSAGaiASQRl2Igw6AAAgDiAGQQhrIAhxaiAMOgAAIAUgBkF/c0EEdGogByARQX9zQQR0av0AAAD9CwAAIAtBAWsiCw0ACwsgASAINgIEIAEgBTYCACABIA0gCWs2AghBgYCAgHghAyAKRQ0AIAcgCkEEdEEXakFwcSICayACIApqQQlqQQgQ6A4LIAAgAjYCBCAAIAM2AgAgBEEwaiQAC9IHAgF/D30jAEGAAmsiBSQAIAVBuAFqQQA2AgAgBUIANwOwASAF/QwAAAAAAQAAAAIAAAADAAAA/QsEACAFQTRqQQBB+AD8CwAgAioCECIIjCEPIAIqAgwiCYwhEAJAAn0CQCAJIAmUIg0gAioCFCIKIAqUIhSSIgZDAAAAAFwEQCABKgIAIgsgD5QiByAQIAaRIgaVIAEqAgQiDpQiDCAQlCAHkyAKIAqMIAaVIA6UIgeUk14NASALjCEGDAMLIAEqAgQhDiABKgIAIgsgD5gMAQtDAAAAACEHIAsLIQZDAAAAACEMCyAFQQA2ArwBIAVBADYCrAEgBUEANgIwIAVCADcDKCAFIAcgAioCCCIRkyIHOAIkIAUgBiACKgIEIhKTIgY4AiAgBSAMIAIqAgAiE5MiDDgCHCAFIAc4AhggBSAGOAIUIAUgDDgCECAFQcABaiALIA4gBSACIAMQuwEgBSgCwAEhAQJAAkACQCAERQRAIAEEQCAFKgLEASIGQwAAAABcBEAgACAFKQLIATcCDCAAIAY4AgggAEEDNgIAIABBFGogBUHQAWooAgA2AgAMBQsgCCANIAggCJSSIBSSkSIGlSEMAkACfQJAIAkgBpUiCCAIlCAKIAaVIgkgCZSSIgZDAAAAAFwEQCAMIAuUIgcgCSAJIAaRIg2VIA6UIgaUIAggCCANlSAOlCINlCAHk5JeDQEgC4whBwwDCyALIAyYIQdDAAAAAAwBCyALIQdDAAAAAAshBkMAAAAAIQ0LIAUgDzgC5AEgBSAQOALgASAFQQA2ArwBIAVBADYCrAEgBUEANgIwIAVCADcDKCAFIAqMOALoASAFIBEgCSAJIAYgEZOUIAwgByASk5QgCCANIBOTlJKSQ28SgzqSIgqUkiIJOALcASAFIAYgCZMiBjgCJCAFIBIgDCAKlJIiCTgC2AEgBSAHIAmTIgc4AiAgBSATIAggCpSSIgg4AtQBIAUgDSAIkyIIOAIcIAUgBjgCGCAFIAc4AhQgBSAIOAIQIAVB7AFqIAsgDiAFIAVB1AFqIApDbxKDOpIQuwEgBSgC7AFBAUcNAiADIAogBSoC8AGTIgNgRQRAIABBBDYCAAwFCyAAIAM4AgggAEEDNgIAIAAgBSoC/AGMOAIUIAAgBSoC+AGMOAIQIAAgBSoC9AGMOAIMDAQLIABBBDYCAAwDCyABDQEgAEEENgIADAILIABBBDYCAAwBCyAAIAUpAsgBNwIMIAAgBSoCxAE4AgggAEEDNgIAIABBFGogBUHQAWooAgA2AgALIAVBgAJqJAALugcCAX8RfSMAQYACayIFJAAgBUG4AWpBADYCACAFQgA3A7ABIAX9DAAAAAABAAAAAgAAAAMAAAD9CwQAIAVBNGpBAEH4APwLACACKgIQIguMIRIgAioCDCINjCIUIA0gDZQgCyALlJIgAioCFCIHIAeUkpEiCJUiCSAJlCAHjCIVIAiVIgogCpSSIg5DAAAAAFwEQCAKIA6RIgyVIAEqAgQiDpQhBiAJIAyVIA6UIQwLIAVBADYCvAEgBUEANgKsASAFQQA2AjAgBUIANwMoIAUgBiAKIAEqAggiCpSSIAIqAggiDpMiBjgCJCAFIAEqAgAiFiASIAiVIg+YIA8gCpSSIAIqAgQiD5MiEDgCICAFIAwgCSAKlJIgAioCACITkyIJOAIcIAUgBjgCGCAFIBA4AhQgBSAJOAIQIAVBwAFqIAEgBSACIAMQsgEgBSgCwAEhAgJAAkACQCAERQRAIAIEQEMAAAAAIQYgBSoCxAEiCUMAAAAAXARAIAAgBSkCyAE3AgwgACAJOAIIIABBAzYCACAAQRRqIAVB0AFqKAIANgIADAULQwAAAAAhECAHIAiVIgcgB5QgDSAIlSINIA2UIAsgCJUiCCAIlJKSkSELIA0gC5UiCSAJlCAHIAuVIgwgDJSSIhFDAAAAAFwEQCAMIBGRIgaVIAEqAgQiEZQhECAJIAaVIBGUIQYLIAUgFTgC6AEgBSASOALkASAFIBQ4AuABIAVBADYCvAEgBUEANgKsASAFQQA2AjAgBUIANwMoIAUgDiAHIAggFiAIIAuVIguYIAsgCpSSIgsgD5OUIA0gCSAKlCAGkiIJIBOTlJIgByAMIAqUIBCSIgogDpOUkkNvEoM6kiIGlJIiBzgC3AEgBSAKIAeTIgo4AiQgBSAPIAggBpSSIgg4AtgBIAUgCyAIkyIIOAIgIAUgEyANIAaUkiIHOALUASAFIAkgB5MiBzgCHCAFIAo4AhggBSAIOAIUIAUgBzgCECAFQewBaiABIAUgBUHUAWogBkNvEoM6khCyASAFKALsAUEBRw0CIAMgBiAFKgLwAZMiA2BFBEAgAEEENgIADAULIAAgAzgCCCAAQQM2AgAgACAFKgL8AYw4AhQgACAFKgL4AYw4AhAgACAFKgL0AYw4AgwMBAsgAEEENgIADAMLIAINASAAQQQ2AgAMAgsgAEEENgIADAELIAAgBSkCyAE3AgwgACAFKgLEATgCCCAAQQM2AgAgAEEUaiAFQdABaigCADYCAAsgBUGAAmokAAuhBwIJfwJ9IwBBoAFrIgMkACAAQQxqIQcCQCAAKAIURQRADAELAn9BACABKgIAIgwgACgCECIEKgIAXQ0AGkEAIAwgBCoCEF4NABpBACABKgIEIgsgBCoCBF0NABpBACALIAQqAhReDQAaQQBBACAEIAEqAggiCyAEKgIYXhsgCyAEKgIIXRsLIQIgBCgCPEH/////A3FFDQAgBCoCICAMXg0AIAQqAjAgDF0NACABKgIEIgsgBCoCJF0NACAEKgI0IAtdDQAgBEEgaiEGIAEqAggiCyAEKgI4XkUgCyAEKgIoXUF/c3EhBQsgAyACNgKcASADIAc2ApQBIAMgATYCmAEgAyAFNgKQASADIAY2AhAgA0EANgIMIAAoAgQhCiAAKAIIIQggA0GQAWohByADQRBqIQYCfwJAAkACQANAIAMoApwBIgBFBEAgBiEEIAchAiADKAKQASIFIgBBIU8EQCADKAIUIQQgBiECIAMoAhAhAAsgAEUNBCACIABBAWsiADYCACAEIABBAnRqKAIAIQALIANBADYCnAEgACgCHEH/////A3FBAUcEQCAAKAIMIgQgAygClAEiAigCCCIATw0CQQEhBQJAIAMoApgBIgAqAgAiDCACKAIEIARBBnRqIgIqAgBdDQAgDCACKgIQXg0AIAAqAgQiCyACKgIEXQ0AIAsgAioCFF4NACAAKgIIIgsgAioCCF0NACALIAIqAhheDQAgAyACNgKcASAAKgIAIQxBACEFCyAMIAIqAiBdDQEgDCACKgIwXg0BIAAqAgQiCyACKgIkXQ0BIAsgAioCNF4NASAAKgIIIgsgAioCKF0NASALIAIqAjheDQEgAkEgaiEJIAVFBEACfyADKAKQASIFQSFJBEAgBSEEIAchAkEgIQUgBgwBCyADKAIQIQQgBiECIAMoAhQLIQAgBCAFRgRAIANBDGoQowQgAygCECEEIAYhAiADKAIUIQALIAAgBEECdGogCTYCACACIAIoAgBBAWo2AgAMAgsgAyAJNgKcAQwBCyAAKAIMIgAgCE8NAiAKIABBJGxqIgIoAiAhACACKAIcIAAoAghBAWtBeHFqQQhqIAIgASAAQcgAaigCABEFAEUNAAsgAygCkAEhBUEBDAMLIAQgAEGg8sIAEIULAAsgACAIQcicwwAQhQsACyADQQA2ApwBQQALIQAgBUEhTwRAIAMoAhQgBUECdEEEEOgOCyADQaABaiQAIAALwgcBDX8jAEGQAWsiCCQAAkACQAJAIABFDQAgAEEIayIPKAIAQQFqIQ0gDyANNgIAIA1FDQEgACgCAA0CIABBfzYCACAIIA82AhAgCCAANgIMIAggAEEIaiIQNgIIIAFFDQAgAUEQayINKAIAQQFqIQkgDSAJNgIAIAlFDQEgASgCACIJQX9GDQIgASAJQQFqNgIAIAggDTYCHCAIIAE2AhggCCABQRBqIhE2AhQgAkUNACACQQhrIgkoAgBBAWohCiAJIAo2AgAgCkUNASACKAIAIgpBf0YNAiACIApBAWo2AgAgCCAJNgIoIAggAjYCJCAIIAJBBGoiEjYCICADRQ0AIANBCGsiCigCAEEBaiELIAogCzYCACALRQ0BIAMoAgAiC0F/Rg0CIAMgC0EBajYCACAIIAo2AjQgCCADNgIwIAggA0EIaiITNgIsIARFDQAgBEEIayILKAIAQQFqIQwgCyAMNgIAIAxFDQEgBCgCACIMQX9GDQIgBCAMQQFqNgIAIAggCzYCQCAIIAQ2AjwgCCAEQQhqIhQ2AjggBUUNACAFQQhrIgwoAgBBAWohDiAMIA42AgAgDkUNASAFKAIAIg5Bf0YNAiAFIA5BAWo2AgAgCCAMNgJMIAggBTYCSCAIIAVBBGoiDjYCRCAIIAc2AlAgAEEANgKkAiAAQQA2ApgCIAggBjYCbCAIIA42AmggCCAUNgJkIAggEzYCYCAIIBI2AlwgCCARNgJYIAggEDYCVCAIIAhB6ABqNgKIASAIIAhB5ABqNgKEASAIIAhB4ABqNgKAASAIIAhB1ABqNgJ8IAggCEHcAGo2AnggCCAIQdgAajYCdCAIIAhB7ABqNgJwAkAgBxAEQQFGBEAgCCAIQdAAajYCjAEgCEHwAGogCEGMAWoQOgwBCyAIQfAAakEAEDoLIAUgBSgCAEEBazYCACAMIAwoAgBBAWsiBTYCACAFRQRAIAhBzABqEOkMCyAEIAQoAgBBAWs2AgAgCyALKAIAQQFrIgQ2AgAgBEUEQCAIQUBrEOoMCyADIAMoAgBBAWs2AgAgCiAKKAIAQQFrIgM2AgAgA0UEQCAIQTRqEO8MCyACIAIoAgBBAWs2AgAgCSAJKAIAQQFrIgI2AgAgAkUEQCAIQShqEO4MCyABIAEoAgBBAWs2AgAgDSANKAIAQQFrIgE2AgAgAUUEQCAIQRxqEOsMCyAAQQA2AgAgDyAPKAIAQQFrIgA2AgAgAEUEQCAIQRBqEPAMCyAIQZABaiQADwsQgw8LAAsQhA8AC6oHAQh/IwBBIGsiAyQAIAAoAlAhByAAKAJUIQYgASgCACEIIAEoAgQhCSADIAEoAggiCjYCHCADIAk2AhggAyAIQQFrNgIUIANBCGogACADQRRqEOMDAkACQAJAIAMoAghBAUcNACADKAIMIgEgBk8NASADKAIQIgRBgARPDQIgByABQQl0aiAEaiIBLQAAIgRBwABGDQAgASAEQf4BcSACQQFzcjoAAEEAQQIgAhshBQsgAyAKNgIcIAMgCTYCGCADIAhBAWo2AhQgA0EIaiAAIANBFGoQ4wMCQAJAAkAgAygCCEUNACADKAIMIgEgBk8NASADKAIQIgRBgARPDQIgByABQQl0aiAEaiIBLQAAIgRBwABGDQAgAkUEQCABIARBAnI6AAAgBUEBciEFDAELIAEgBEH9AXE6AAALIAMgCjYCHCADIAlBAWs2AhggAyAINgIUIANBCGogACADQRRqEOMDAkAgAygCCEEBRw0AIAMoAgwiASAGTw0DIAMoAhAiBEH/A0sNBCAHIAFBCXRqIARqIgEtAAAiBEHAAEYNACACRQRAIAEgBEEEcjoAACAFQQhyIQUMAQsgASAEQfsBcToAAAsgAyAKNgIcIAMgCUEBajYCGCADIAg2AhQgA0EIaiAAIANBFGoQ4wMCQCADKAIIQQFHDQAgAygCDCIBIAZPDQEgAygCECIEQf8DSw0CIAcgAUEJdGogBGoiAS0AACIEQcAARg0AIAJFBEAgASAEQQhyOgAAIAVBBHIhBQwBCyABIARB9wFxOgAACyADIApBAWs2AhwgAyAJNgIYIAMgCDYCFCADQQhqIAAgA0EUahDjAwJAIAMoAghBAUcNACADKAIMIgEgBk8NAyADKAIQIgRB/wNLDQQgByABQQl0aiAEaiIBLQAAIgRBwABGDQAgAkUEQCABIARBEHI6AAAgBUEgciEFDAELIAEgBEHvAXE6AAALIAMgCkEBajYCHCADIAk2AhggAyAINgIUIANBCGogACADQRRqEOMDAkAgAygCCEEBRw0AIAMoAgwiASAGTw0BIAMoAhAiBEH/A0sNAiAHIAFBCXRqIARqIgAtAAAiAUHAAEYNACACRQRAIAAgAUEgcjoAACAFQRByIQUMAQsgACABQd8BcToAAAsgA0EgaiQAQcAAIAUgAhsPCyABIAZBxOjDABCFCwALIARBgARB1OjDABCFCwALIAEgBkGk6MMAEIULAAsgBEGABEG06MMAEIULAAu0CQMJewJ/EX0jAEEwayIOJAAgASoCACIUIAP9XQIMIgr9HwEiHpQgASoCBCIWIAr9HwAiH5STIhEgEZIhEiAB/V0CBCIGIAb9DQQFBgcAAQIDAAECAwABAgMgFP0gASEIIAYgAyoCFCIQ/RMgCv0NAAECAxAREhMAAQIDAAECA/3mASAIIANBEGr9XQIA/eYB/eUBIgUgBf3kASEFIA4gASoCGCIbIBAgASoCDCIZIBKUIBQgBf0fAZQgFiAF/R8AlJOSkpIiIDgCLCAD/V0CACIL/R8BIRUgBiADKgIIIhH9EyAL/Q0AAQIDEBESEwABAgMAAQID/eYBIANBBGr9XQIAIAj95gH95QEiByAH/eQBIQkgDiAbIBEgGSAUIBWUIBYgC/0fACIalJMiFyAXkiITlCAUIAn9HwGUIBYgCf0fAJSTkpKSIhc4AiAgDiAB/V0CECIMIAogGf0TIg0gBf3mASAGIBL9EyAF/Q0AAQIDEBESEwABAgMAAQID/eYBIAggBSAG/Q0EBQYHAAECAwABAgMAAQIDIBL9IAH95gH95QH95AH95AH95AEiB/0fATgCKCAOIAf9HwA4AiQgDiAMIAsgDSAJ/eYBIAYgE/0TIAn9DQABAgMQERITAAECAwABAgP95gEgCCAJIAb9DQQFBgcAAQIDAAECAwABAgMgE/0gAf3mAf3lAf3kAf3kAf3kASIF/R8BOAIcIA4gBf0fADgCGCAOIAIgAkEMaiAOQRhqIgEgAUEMahCpAiAOKAIEIQEgDigCDCEPIA4oAhAhAyAOKgIUIRwCQAJAAkACfSAOKAIAQQFxBEAgAioCCCABviISlCAOKgIIIh0gAioCFJSSIRMgAioCBCASlCAdIAIqAhCUkiEYIAIqAgAgEpQgHSACKgIMlJIMAQsCQAJAIAEOAgABAwsgAioCCCETIAIqAgQhGCACKgIADAELIAIqAhQhEyACKgIQIRggAioCDAshEiAPQQFxBEAgGyARIAO+IhWUIBAgHJSSIhEgGSAUIAsgFf0T/eYBIAogHP0T/eYB/eQBIgX9HwEiFZQgFiAF/R8AIhqUkyIQIBCSIhCUIBQgBiAR/RMgBf0NAAECAxAREhMAAQIDAAECA/3mASAIIAUgBv0NBAUGBwABAgMAAQIDAAECAyAR/SAB/eYB/eUBIgcgB/3kASIH/R8BlCAWIAf9HwCUk5KSkiEXIAwgBSANIAf95gEgBiAQ/RMgB/0NAAECAxAREhMAAQIDAAECA/3mASAIIAcgBv0NBAUGBwABAgMAAQIDAAECAyAQ/SAB/eYB/eUB/eQB/eQB/eQBIQUMAwsgAw4CAgEACyMAQSBrIgAkACAAQQE2AgQgAEHQrsQANgIAIABCATcCDCAAQpSvxIDgjQE3AxggACAAQRhqNgIIIABB5KDDABC5DQALICAhFyAfIRogHiEVIBAhESAHIQULIAAgFyATkyIQIBCUIAX9HwAgEpMiECAQlCAF/R8BIBiTIhAgEJSSkiAEIASUXwR/IAAgETgCGCAAIBU4AhQgACAaOAIQIAAgEzgCDCAAIBg4AgggACASOAIEQQEFQQILNgIAIA5BMGokAAuyBwEKfyMAQSBrIgckAAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgBUEBaw4DAQkQAAsgASgCICILIAJNDQkgAyABKAIkTw0JIAEoAgwiCSADbCACaiIIQQFqIQogASgCGCADIAtsaiACai0AAEEBcUUNAyAJIApqIQEgBA0CIAcgATYCDCAHIAg2AgggByAIIAlqNgIQIAZBA08NASAHQQhqIAZBAnRqKAIAIQgMDwsgASgCICINIAJNDQkgAyABKAIkTw0JIAEoAgwiCEEBayIJIANsIg4gAmoiCiAJaiELIAkgASgCECIPbCACaiIQIAMgCGxqIglBAWohDCAOIBBqIA9BAWsgCGxqIQggASgCGCADIA1saiACai0AAEEBcUUNBiAEDQUgByAJNgIQIAcgCzYCDCAHIAg2AgggBkEDTw0EIAdBCGogBkECdGooAgAhCAwOCyAGQQNBzMrDABCFCwALIAcgATYCECAHIAo2AgwgByAINgIIIAZBA0kNASAGQQNB3MrDABCFCwALIARFBEAgByAIIAlqNgIQIAcgCjYCCCAHIAkgCmo2AgwgBkEDSQRAIAdBCGogBkECdGooAgAhCAwNCyAGQQNB7MrDABCFCwALIAcgCjYCDCAHIAg2AgggByAIIAlqNgIQIAZBA0kNCiAGQQNB/MrDABCFCwALIAdBCGogBkECdGooAgAhCAwKCyAGQQNBnMvDABCFCwALIAcgCDYCECAHIAw2AgwgByAKNgIIIAZBA0kNBiAGQQNBrMvDABCFCwALIARFBEAgByAINgIQIAcgCzYCDCAHIAw2AgggBkEDSQRAIAdBCGogBkECdGooAgAhCAwJCyAGQQNBvMvDABCFCwALIAcgCTYCECAHIAg2AgwgByAKNgIIIAZBA0kNBCAGQQNBzMvDABCFCwALIAEoAgxBAWsgA2whAyABKAJMIQEgBkUNAiABIAJqIANqQQAgAUEBdiAEG2ohCAwGCyAHQQA2AhggB0EBNgIMIAdB/NzCADYCCCAHQgQ3AhAgB0EIakG8ysMAELkNAAsgB0EANgIYIAdBATYCDCAHQfzcwgA2AgggB0IENwIQIAdBCGpBjMvDABC5DQALIAIgA2pBACABQQF2IAQbaiEIDAMLIAdBCGogBkECdGooAgAhCAwCCyAHQQhqIAZBAnRqKAIAIQgMAQsgB0EIaiAGQQJ0aigCACEICyAAIAg2AgQgACAFNgIAIAdBIGokAAunFwMXfwV9BH4jAEHgAGsiESQAAkACQAJAAkAgAEUNACAAQQhrIh0oAgBBAWohEyAdIBM2AgAgE0UNASAAKAIAIhNBf0YNAiAAIBNBAWo2AgAgESAdNgIMIBEgADYCCCARIABBCGoiFzYCBCABRQ0AIAFBCGsiHigCAEEBaiETIB4gEzYCACATRQ0BIAEoAgAiE0F/Rg0CIAEgE0EBajYCACARIB42AhggESABNgIUIBEgAUEEaiITNgIQIAJFDQAgAkEQayIfKAIAQQFqIRAgHyAQNgIAIBBFDQEgAigCACIQQX9GDQIgAiAQQQFqNgIAIBEgHzYCJCARIAI2AiAgESACQRBqIho2AhwgA0UNACADQQhrIiAoAgBBAWohECAgIBA2AgAgEEUNASADKAIAIhBBf0YNAiADIBBBAWo2AgAgESAgNgIwIBEgAzYCLCARIANBBGoiGzYCKCAERQ0AIARBCGsiISgCAEEBaiEQICEgEDYCACAQRQ0BIAQoAgAiEEF/Rg0CIAQgEEEBajYCACARICE2AjwgESAENgI4IBEgBEEEaiIYNgI0IAVFDQAgBUEIayIiKAIAQQFqIRAgIiAQNgIAIBBFDQEgBSgCACIQQX9GDQIgBSAQQQFqNgIAIBEgIjYCSCARIAU2AkQgESAFQQRqIhA2AkAgESAONgJMIBFB0ABqISMgB0EARyEkIAlEAAAQAAAA8EFiIQ4gCfwDIRQgCkEAR60hLiAMQQBHrSErIwBB8ABrIg8kACANvSEsIAu9IS0CQCARQcwAaiIHKAIAEARBAUYEQCAPIAc2AhAgDyAbNgJUIA8gGjYCUCAPIBc2AkwgD0G40sEANgJAIA8gCEEAIAhBIEkbNgI4IA8gKz4CLCAPIC4+AiAgDyAUQf//A3E2AhwgDyAUQRB2NgIYIA8gDjYCFCAPIBMoAkAiBzYCSCAPICw+AjAgDyAsQiCIPgI0IA8gLT4CJCAPIC1CIIg+AiggDyATKAI8IAcoAghBAWtBeHFqQQhqNgJEIA8gD0EQajYCPAwBCyAPIBs2AlQgDyAaNgJQIA8gFzYCTCAPQbjSwQA2AkAgDyArPgIsIA8gLj4CICAPIA42AhQgDyATKAJAIgc2AkggDyAUQf//A3E2AhwgDyAUQRB2NgIYIA9BADYCPCAPIAhBACAIQSBJGzYCOCAPICw+AjAgDyAsQiCIPgI0IA8gLT4CJCAPIC1CIIg+AiggDyATKAI8IAcoAghBAWtBeHFqQQhqNgJECyAPQdgAaiIWQQhqIBhBCGooAgA2AgAgD0HsAGogEEEIaigCADYCACAPIBgpAgA3A1ggDyAQKQIANwJkIAYhKUEAIQxBACEHIwBB0AFrIhIkACAPQRRqIhUoAjgiCEEIaigCACEXIAhBBGooAgAhHCASQSBqIQgCfSAWKgIMIgaLQwAAADRdRQRAQwAAgD8gBpUMAQtDAACAPyAGmEMAAABLlAshJgJ9IBYqAhAiBotDAAAANF1FBEBDAACAPyAGlQwBC0MAAIA/IAaYQwAAAEuUCyEGAn0gFioCFCIni0MAAAA0XUUEQEMAAIA/ICeVDAELQwAAgD8gJ5hDAAAAS5QLIScgCCAW/QACAP0MAAAAAAAAAAAAAAAAAAAAAP0NAAECAwQFBgcICQoLCAkKC/0LBAAgCCAn/RMgJv0gACAG/SAB/QsEECASQQA2AkggEkEANgLMAQJAIBdFDQAgHCgCPEH/////A3EEQCASQcwAaiEKIBJBzAFqIRMgFSgCQCEUIBUoAjwiCEGMA2ohGiAIQYgDaiEbICkhBkF/IRkCQANAIBwgB0EGdGoiDCASQSBqIg4Q2AohJgJAICYgDEEgaiIIIA4Q2AoiJ15FBEAgJyEoICYhJyAIIQ4gDCEIDAELICYhKCAMIQ4LAkACQAJAAkACQCAGICdeRQRAIAYgKF5FDQQgKEP//39/Ww0EIA4oAhxB/////wNxQQFHDQEMAgsgJ0P//39/XARAIAgoAgwhDCAIKAIcQf////8DcUEBRwRAIAYgKF5FBEAgDCEHDAcLIChD//9/f1sEQCAMIQcMBwtBASEIIA4oAhxB/////wNxQQFGBEAgDCEHDAULAn8gEigCzAEiGEEhSQRAIBghByAKIRBBICEYIBMMAQsgEigCTCEHIBIoAlAhECAKCyEIIA4oAgwhDiAHIBhGBEAgEkHIAGoQogQgEigCUCEQIAohCCASKAJMIQcLIAdBAnQgEGogDjYCACAIIAgoAgBBAWo2AgAgDCEHDAYLAkAgDCAUKAIQTw0AIBQoAgwgDEGwAWxqIhAoAgBBAUcNACAVIBsoAgAgGigCACAMIBAoAgQgEEEQahCoBUUNACASQRhqIBAoAlAgECgCVCIMKAIIQQFrQXhxakEIaiAQQYQBaiAWIAYgJCAMQRhqKAIAEQkAIBIoAhhBAXFFDQAgEioCHCImIAZdRQ0AIAgoAgwhGUEBISUgJiIGISoLCyAGICheRQ0DIChD//9/f1sNAyAOKAIcQf////8DcUEBRg0BCyAOKAIMIQcMAwtBACEICwJAAkAgDigCDCIMIBQoAhBPDQAgFCgCDCAMQbABbGoiECgCAEEBRw0AIBUgGygCACAaKAIAIAwgECgCBCAQQRBqEKgFDQELIAhFDQEMAgsgEkEQaiAQKAJQIBAoAlQiDCgCCEEBa0F4cWpBCGogEEGEAWogFiAGICQgDEEYaigCABEJACASKAIQQQFxRQRAIAhFDQEMAgsgEioCFCImIAZdBEAgJiIGISogDigCDCEZQQEhJQsgCA0BCyAKIQcgEyEIIBIoAswBIgxBIU8EQCASKAJMIQwgByEIIBIoAlAhBwsgDEUNAiAIIAxBAWsiCDYCACAHIAhBAnRqKAIAIQcLIAcgF0kNAAsgByAXQYTiwQAQhQsAC0EBIQwgJQ0BQQAhDAwBCyAcIBJBIGoQ2AogKV1FDQAgHCgCDCIIIBUoAkAiBygCEE8NACAHKAIMIAhBsAFsaiIKKAIAQQFHDQAgFSAVKAI8IgdBiANqKAIAIAdBjANqKAIAIAggCigCBCAKQRBqEKgFRQ0AIBJBCGogCigCUCAKKAJUIgcoAghBAWtBeHFqQQhqIApBhAFqIBYgKSAkIAdBGGooAgARCQAgEigCCEEBcUUNACASKgIMIiogKV1FDQAgHCgCDCEZQQEhDAsgEigCzAEiB0EhTwRAIBIoAlAgB0ECdEEEEOgOC0EAIQcCQCAMICkgKl5xRQ0AIBkgFSgCQCIIKAIQTw0AIAgoAgwgGUGwAWxqIggoAgBBAUcNACAPICo4AgwgDyAZNgIEIA8gCCgCBDYCCEEBIQcLIA8gBzYCACASQdABaiQAQQEhBwJAIA8oAgBBAUYEQCAPKQIEISsgIyAPKgIMOAIMICMgKzcCBAwBC0EAIQcLICMgBzYCACAPQfAAaiQAIAUgBSgCAEEBazYCACAiICIoAgBBAWsiBTYCACAFRQRAIBFByABqEKkNCyAEIAQoAgBBAWs2AgAgISAhKAIAQQFrIgQ2AgAgBEUEQCARQTxqEKkNCyADIAMoAgBBAWs2AgAgICAgKAIAQQFrIgM2AgAgA0UEQCARQTBqEO4MCyACIAIoAgBBAWs2AgAgHyAfKAIAQQFrIgI2AgAgAkUEQCARQSRqEOsMCyABIAEoAgBBAWs2AgAgHiAeKAIAQQFrIgE2AgAgAUUEQCARQRhqEOkMCyAAIAAoAgBBAWs2AgAgHSAdKAIAQQFrIgA2AgAgAEUEQCARQQxqEOgMC0EAIQAgESgCUEEBRgRAQRhBBBCRDiIARQ0EIABBADYCCCAAQoGAgIAQNwIAIAAgESkCVDcCDCAAQRRqIBFB3ABqKAIANgIAIABBCGohAAsgEUHgAGokACAADwsQgw8LAAsQhA8AC0EEQRhB+MrEACgCACIAQcwIIAAbEQAAAAvOCwIQfwR+IwBB8ABrIg8kAAJAAkACQAJAIABFDQAgAEEIayIVKAIAQQFqIRAgFSAQNgIAIBBFDQEgACgCACIQQX9GDQIgACAQQQFqNgIAIA8gFTYCDCAPIAA2AgggDyAAQQhqIho2AgQgAUUNACABQQhrIhYoAgBBAWohECAWIBA2AgAgEEUNASABKAIAIhBBf0YNAiABIBBBAWo2AgAgDyAWNgIYIA8gATYCFCAPIAFBBGoiFDYCECACRQ0AIAJBEGsiFygCAEEBaiEQIBcgEDYCACAQRQ0BIAIoAgAiEEF/Rg0CIAIgEEEBajYCACAPIBc2AiQgDyACNgIgIA8gAkEQaiIQNgIcIANFDQAgA0EIayIYKAIAQQFqIRMgGCATNgIAIBNFDQEgAygCACITQX9GDQIgAyATQQFqNgIAIA8gGDYCMCAPIAM2AiwgDyADQQRqIhM2AiggBEUNACAEQQhrIhkoAgBBAWohESAZIBE2AgAgEUUNASAEKAIAIhFBf0YNAiAEIBFBAWo2AgAgDyAZNgI8IA8gBDYCOCAPIARBBGoiGzYCNCAFRQ0AIAVBCGsiESgCAEEBaiESIBEgEjYCACASRQ0BIAUoAgAiEkF/Rg0CIAUgEkEBajYCACAPIBE2AkggDyAFNgJEIA8gBUEEaiIcNgJAIA8gDjYCTCAPQdAAaiESIBQhDiAHQQBHIR4gCUQAABAAAADwQWIhHSAJ/AMhFCAKQQBHrSEhIAxBAEetISIjAEGAAWsiByQAIA29IR8gC70hIAJAIA9BzABqIgooAgAQBEEBRgRAIAcgCjYCICAHIBM2AmQgByAQNgJgIAcgGjYCXCAHQYjSwQA2AlAgByAIQQAgCEEgSRs2AkggByAiPgI8IAcgIT4CMCAHIBRB//8DcTYCLCAHIBRBEHY2AiggByAdNgIkIAcgDigCQCIINgJYIAcgHz4CQCAHIB9CIIg+AkQgByAgPgI0IAcgIEIgiD4COCAHIA4oAjwgCCgCCEEBa0F4cWpBCGo2AlQgByAHQSBqNgJMDAELIAcgEzYCZCAHIBA2AmAgByAaNgJcIAdBiNLBADYCUCAHICI+AjwgByAhPgIwIAcgHTYCJCAHIA4oAkAiCjYCWCAHIBRB//8DcTYCLCAHIBRBEHY2AiggB0EANgJMIAcgCEEAIAhBIEkbNgJIIAcgHz4CQCAHIB9CIIg+AkQgByAgPgI0IAcgIEIgiD4COCAHIA4oAjwgCigCCEEBa0F4cWpBCGo2AlQLIAdB6ABqIghBCGogG0EIaigCADYCACAHQfwAaiAcQQhqKAIANgIAIAcgGykCADcDaCAHIBwpAgA3AnQgByAHQSRqIAggBiAeEJMBAkAgBygCCEEERwRAIBIgB0EIaiIIKQIANwIAIBJBCGogCEEIav0AAgD9CwIAIBIgBykCADcCGAwBCyASQQQ2AgALIAdBgAFqJAAgBSAFKAIAQQFrNgIAIBEgESgCAEEBayIFNgIAIAVFBEAgD0HIAGoQqQ0LIAQgBCgCAEEBazYCACAZIBkoAgBBAWsiBDYCACAERQRAIA9BPGoQqQ0LIAMgAygCAEEBazYCACAYIBgoAgBBAWsiAzYCACADRQRAIA9BMGoQ7gwLIAIgAigCAEEBazYCACAXIBcoAgBBAWsiAjYCACACRQRAIA9BJGoQ6wwLIAEgASgCAEEBazYCACAWIBYoAgBBAWsiATYCACABRQRAIA9BGGoQ6QwLIAAgACgCAEEBazYCACAVIBUoAgBBAWsiADYCACAARQRAIA9BDGoQ6AwLQQAhACAPKAJQQQRHBEBBLEEEEJEOIgBFDQQgAEEANgIIIABCgYCAgBA3AgAgACAP/QACUP0LAgwgAEEcaiAPQeAAav0AAgD9CwIAIABBCGohAAsgD0HwAGokACAADwsQgw8LAAsQhA8AC0EEQSxB+MrEACgCACIAQcwIIAAbEQAAAAvMBwELfyMAQbABayIHJAACQAJAAkACQCAARQ0AIABBCGsiDigCAEEBaiEIIA4gCDYCACAIRQ0BIAAoAgAiCEF/Rg0CIAAgCEEBajYCACAHIA42AhQgByAANgIQIAcgAEEEajYCDCABRQ0AIAFBCGsiCCgCAEEBaiEJIAggCTYCACAJRQ0BIAEoAgAiCUF/Rg0CIAEgCUEBajYCACAHIAg2AiAgByABNgIcIAcgAUEEaiINNgIYIAJFDQAgAkEIayIJKAIAQQFqIQogCSAKNgIAIApFDQEgAigCACIKQX9GDQIgAiAKQQFqNgIAIAcgCTYCLCAHIAI2AiggByACQQRqIhA2AiQgA0UNACADQQhrIgooAgBBAWohCyAKIAs2AgAgC0UNASADKAIAIgtBf0YNAiADIAtBAWo2AgAgByAKNgI4IAcgAzYCNCAHIANBBGoiDzYCMCAERQ0AIARBCGsiCygCAEEBaiEMIAsgDDYCACAMRQ0BIAQoAgAiDEF/Rg0CIAQgDEEBajYCACAHIAs2AkQgByAENgJAIAcgBEEEajYCPCAHIBD9AAIA/QsDYCAHQfgAaiANQQhqKAIANgIAIAcgDSkCADcDcCAAKAIEIQwgACgCCCIQKAIIIREgB0GYAWoiDUEIaiAPQQhqKAIANgIAIAcgDykCADcDmAEgDUEUaiAEQQxqKAIANgIAIAcgBCkCBDcCpAEgB0GAAWoiDyAMIBFBAWtBeHFqQQhqIAdB4ABqIA0gBSAGQQBHIBAoAhwRCQAgBygCgAEiBkEERwRAIAdB2ABqIA9BFGooAgA2AgAgByAH/QAChAH9CwNICyAEIAQoAgBBAWs2AgAgCyALKAIAQQFrIgQ2AgAgBEUEQCAHQcQAahCpDQsgAyADKAIAQQFrNgIAIAogCigCAEEBayIDNgIAIANFBEAgB0E4ahCpDQsgAiACKAIAQQFrNgIAIAkgCSgCAEEBayICNgIAIAJFBEAgB0EsahClDQsgASABKAIAQQFrNgIAIAggCCgCAEEBayIBNgIAIAFFBEAgB0EgahCpDQsgACAAKAIAQQFrNgIAIA4gDigCAEEBayIANgIAIABFBEAgB0EUahDgCwtBACEAIAZBBEcEQEEkQQQQkQ4iAEUNBCAAIAf9AANI/QsCECAA/QwBAAAAAQAAAAAAAAAAAAAAIAb9HAP9CwIAIABBIGogB0HYAGooAgA2AgAgAEEIaiEACyAHQbABaiQAIAAPCxCDDwsACxCEDwALQQRBJEH4ysQAKAIAIgBBzAggABsRAAAAC6QHAQt/IwBBkAFrIgYkAAJAAkACQCAARQ0AIABBCGsiDigCAEEBaiEHIA4gBzYCACAHRQ0BIAAoAgAiB0F/Rg0CIAAgB0EBajYCACAGIA42AhAgBiAANgIMIAYgAEEEajYCCCABRQ0AIAFBCGsiBygCAEEBaiEIIAcgCDYCACAIRQ0BIAEoAgAiCEF/Rg0CIAEgCEEBajYCACAGIAc2AhwgBiABNgIYIAYgAUEEaiIMNgIUIAJFDQAgAkEIayIIKAIAQQFqIQkgCCAJNgIAIAlFDQEgAigCACIJQX9GDQIgAiAJQQFqNgIAIAYgCDYCKCAGIAI2AiQgBiACQQRqIhA2AiAgA0UNACADQQhrIgkoAgBBAWohCiAJIAo2AgAgCkUNASADKAIAIgpBf0YNAiADIApBAWo2AgAgBiAJNgI0IAYgAzYCMCAGIANBBGo2AiwgBEUNACAEQQhrIgooAgBBAWohCyAKIAs2AgAgC0UNASAEKAIAIgtBf0YNAiAEIAtBAWo2AgAgBiAKNgJAIAYgBDYCPCAGIARBBGoiDzYCOCAFRQ0AIAVBCGsiCygCAEEBaiENIAsgDTYCACANRQ0BIAUoAgAiDUF/Rg0CIAUgDUEBajYCACAGIAs2AkwgBiAFNgJIIAYgBUEEajYCRCAGIBD9AAIA/QsDUCAGQdAAaiINQRhqIAxBCGooAgA2AgAgBiAMKQIANwNgIAYgBf0AAgT9CwNwIAZB8ABqIgxBGGogD0EIaigCADYCACAGIA8pAgA3A4ABIA0gACgCBCAAKAIIIg8oAghBAWtBeHFqQQhqIA8gDCADKAIEIAMoAggiDCgCCEEBa0F4cWpBCGogDBCOBSEMIAUgBSgCAEEBazYCACALIAsoAgBBAWsiBTYCACAFRQRAIAZBzABqEKUNCyAEIAQoAgBBAWs2AgAgCiAKKAIAQQFrIgQ2AgAgBEUEQCAGQUBrEKkNCyADIAMoAgBBAWs2AgAgCSAJKAIAQQFrIgM2AgAgA0UEQCAGQTRqEOALCyACIAIoAgBBAWs2AgAgCCAIKAIAQQFrIgI2AgAgAkUEQCAGQShqEKUNCyABIAEoAgBBAWs2AgAgByAHKAIAQQFrIgE2AgAgAUUEQCAGQRxqEKkNCyAMQf8BcSEBIAAgACgCAEEBazYCACAOIA4oAgBBAWsiADYCACAARQRAIAZBEGoQ4AsLIAZBkAFqJAAgAUEBcQ8LEIMPCwALEIQPAAugCwISfwF+IwBBgAFrIgskAAJAAkACQAJAIABFDQAgAEEIayISKAIAQQFqIQwgEiAMNgIAIAxFDQEgACgCACIMQX9GDQIgACAMQQFqNgIAIAsgEjYCCCALIAA2AgQgCyAAQQRqIhE2AgAgAkUNACACQQhrIhMoAgBBAWohDCATIAw2AgAgDEUNASACKAIAIgxBf0YNAiACIAxBAWo2AgAgCyATNgIUIAsgAjYCECALIAJBBGoiDTYCDCADRQ0AIANBCGsiFCgCAEEBaiEMIBQgDDYCACAMRQ0BIAMoAgAiDEF/Rg0CIAMgDEEBajYCACALIBQ2AiAgCyADNgIcIAsgA0EEaiIPNgIYIARFDQAgBEEIayIVKAIAQQFqIQwgFSAMNgIAIAxFDQEgBCgCACIMQX9GDQIgBCAMQQFqNgIAIAsgFTYCLCALIAQ2AiggCyAEQQRqIgw2AiQgBUUNACAFQQhrIhYoAgBBAWohCiAWIAo2AgAgCkUNASAFKAIAIgpBf0YNAiAFIApBAWo2AgAgCyAWNgI4IAsgBTYCNCALIAVBBGoiDjYCMCAGRQ0AIAZBCGsiFygCAEEBaiEKIBcgCjYCACAKRQ0BIAYoAgAiCkF/Rg0CIAYgCkEBajYCACALIBc2AkQgCyAGNgJAIAsgBkEEaiIQNgI8IAlBAEchCSMAQbABayIKJAAgCkEYaiAMQQhqKAIANgIAIAogDv0AAgD9CwMAIAogDCkCADcDECALQcgAaiIOAn8CQCARIAG9IhynIBxCIIinELoMIgwEQCAKQSBqIhFBCGogDUEIaigCADYCACAKIA0pAgA3AyAgDygCACENIA8oAgQiDygCCCEYIApBMGoiGUEIaiAQQQhqKAIANgIAIAogECkCADcDMCAMKAJAIRAgDCgCRCIaKAIIIRsgCkEBOgBJIAogCToASCAKIAc4AkQgCiAIOAJAIApB+ABqIgkgDEH0AGogESAQIBtBAWtBeHFqQQhqIBogCiAZIA0gGEEBa0F4cWpBCGogDyAKQUBrIg0QrgMgCi0ArAEiDEEFRg0BIA1BMGoiDyAJQTBqKAIANgIAIA1BIGoiECAJQSBq/QACAP0LAwAgDUEQaiINIAlBEGr9AAIA/QsDACAKQT5qIhEgCUE3ai0AADoAACAKIAr9AAJ4/QsDQCAKIAovAK0BOwE8QQQgDEEERg0CGiAOIAr9AANA/QsCACAOIAovATw7ADUgDkEwaiAPKAIANgIAIA5BIGogEP0AAwD9CwIAIA5BEGogDf0AAwD9CwIAIA5BN2ogES0AADoAACAMDAILQdzQwQBBzABBqNHBABDRCwALQQQLOgA0IApBsAFqJAAgBiAGKAIAQQFrNgIAIBcgFygCAEEBayIGNgIAIAZFBEAgC0HEAGoQqQ0LIAUgBSgCAEEBazYCACAWIBYoAgBBAWsiBTYCACAFRQRAIAtBOGoQpQ0LIAQgBCgCAEEBazYCACAVIBUoAgBBAWsiBDYCACAERQRAIAtBLGoQqQ0LIAMgAygCAEEBazYCACAUIBQoAgBBAWsiAzYCACADRQRAIAtBIGoQ4AsLIAIgAigCAEEBazYCACATIBMoAgBBAWsiAjYCACACRQRAIAtBFGoQqQ0LIAAgACgCAEEBazYCACASIBIoAgBBAWsiADYCACAARQRAIAtBCGoQ7gwLQQAhACALLQB8QQRHBEBBxABBBBCRDiIARQ0EIABBADYCCCAAQoGAgIAQNwIAIAAgCykCSDcCDCAAQRRqIAtB0ABq/QACAP0LAgAgAEEkaiALQeAAav0AAgD9CwIAIABBNGogC0HwAGr9AAIA/QsCACAAQQhqIQALIAtBgAFqJAAgAA8LEIMPCwALEIQPAAtBBEHEAEH4ysQAKAIAIgBBzAggABsRAAAAC98HAgF/CX0jAEGgAWsiDCQAIAIgAigCAEEJcjYCACAIIAUqAgwiEyAJKgIUIg+UIAUqAgAiDSAJKgIIIhCUkyAFKgIEIg4gCSoCDCIUlJMgBSoCCCIRIAkqAhAiFZSTOAIMIAggESAPlCANIBSUIBMgFZSSIA4gEJSTkjgCCCAIIBEgEJQgDiAPlCATIBSUIA0gFZSTkpI4AgQgCCAOIBWUIBMgEJQgDSAPlJKSIBEgFJSTOAIAIA0gCSoCHCIUlCAOIAkqAhgiFZSTIg8gD5IhDyARIBWUIA0gCSoCICISlJMiECAQkiEQIAggBSoCGCASIBMgD5QgDSAQlCAOIA4gEpQgESAUlJMiEiASkiISlJOSkpI4AhggCCAFKgIUIBQgEyAQlCARIBKUIA0gD5STkpKSOAIUIAggBSoCECAVIBMgEpQgDiAPlCARIBCUk5KSkjgCECADIAMqAgAiDiAOIAooAgAgCigCBCICKAIIQQFrQXhxakEIaiIIIAIoAqgBEQsAIg0gDSAOXhsgDSANXBs4AgAgDEEEaiAIIAlBCGoiCSACKAKYAREBACADIAwqAhAgDCoCBCINIA2UIAwqAggiDSANlJIgDCoCDCINIA2UkpGSIg4gDiADKgIEIg0gDSAOXRsgDSANXBs4AgQCQAJAAkACQCALKAIAQQFrDgICAAELIAxBQGsiA0EYaiALKAIEIgJBGGr9AAIA/QsDACADQShqIAJBKGooAgA2AgAgDCACKQIANwNAIAwgAkEIav0AAgD9CwNIDAILIAsqAgQiDUMAAAAAWwRAIAxB6ABqQQA2AgAgDEHgAGpCADcDACAM/QwAAAAAAAAAAAAAAAAAAAAA/QsEUCAM/QwAAAAAAAAAAAAAAAAAAIA//QsEQAwCCyAMQUBrIAggDSACKAKcARENAAwBCyALKgIEIg1DAAAAAFsEQCAMQegAakEANgIAIAxB4ABqQgA3AwAgDP0MAAAAAAAAAAAAAAAAAAAAAP0LBFAgDP0MAAAAAAAAAAAAAAAAAACAP/0LBEAMAQsgDEH0AGoiAyAIQwAAgD8gAigCnAERDQAgAyANEKwLIAxBQGsiAkEoaiADQShqKAIANgIAIAJBIGogA0EgaikCADcDACACQRBqIANBEGr9AAIA/QsEACAMIAz9AAJ0/QsEQAsgDEEUaiAMQUBrIAkQ7QQgACgCCCICIAAoAgBGBEAgAEGYn8IAELQICyAAIAJBAWo2AgggACgCBCACQQN0aiIAIAc2AgQgACAGNgIAIARBMGogDEEUahCBCyAEIAEgBRCwBiAMQaABaiQAC7oHAQt/IwBBwAFrIg0kAAJAAkACQCAARQ0AIABBCGsiEygCAEEBaiEOIBMgDjYCACAORQ0BIAAoAgAiDkF/Rg0CIAAgDkEBajYCACANIBM2AhAgDSAANgIMIA0gAEEIaiIUNgIIIAFFDQAgAUEIayIOKAIAQQFqIQ8gDiAPNgIAIA9FDQEgASgCACIPQX9GDQIgASAPQQFqNgIAIA0gDjYCHCANIAE2AhggDSABQQRqIhU2AhQgAkUNACACQRBrIg8oAgBBAWohECAPIBA2AgAgEEUNASACKAIAIhBBf0YNAiACIBBBAWo2AgAgDSAPNgIoIA0gAjYCJCANIAJBEGoiFjYCICADRQ0AIANBCGsiECgCAEEBaiERIBAgETYCACARRQ0BIAMoAgAiEUF/Rg0CIAMgEUEBajYCACANIBA2AjQgDSADNgIwIA0gA0EEaiIXNgIsIARFDQAgBEEIayIRKAIAQQFqIRIgESASNgIAIBJFDQEgBCgCACISQX9GDQIgBCASQQFqNgIAIA0gETYCQCANIAQ2AjwgDSAEQQRqIhI2AjggDSAFNgJEIA0gDDYCSCANIAk5A3ggDSAIQQBHrTcDcCANIAf8AzYCbCANIAdEAAAQAAAA8EFiNgJoIA0gBjYCZCANIBI2AlwgDSAXNgJYIA0gFjYCVCANIBU2AlAgDSAUNgJMIA0gDUHEAGo2AmAgDSALOQOIASANIApBAEetNwOAASANIA1B3ABqNgK4ASANIA1B4ABqNgK0ASANIA1B2ABqNgKwASANIA1B1ABqNgKsASANIA1B0ABqNgKoASANIA1BzABqNgKkASANIA1BgAFqNgKgASANIA1B8ABqNgKcASANIA1B6ABqNgKYASANIA1B5ABqNgKUAQJAIAwQBEEBRgRAIA0gDUHIAGo2ArwBIA1BlAFqIA1BvAFqEM8BDAELIA1BlAFqQQAQzwELIAQgBCgCAEEBazYCACARIBEoAgBBAWsiBDYCACAERQRAIA1BQGsQqQ0LIAMgAygCAEEBazYCACAQIBAoAgBBAWsiAzYCACADRQRAIA1BNGoQ7gwLIAIgAigCAEEBazYCACAPIA8oAgBBAWsiAjYCACACRQRAIA1BKGoQ6wwLIAEgASgCAEEBazYCACAOIA4oAgBBAWsiATYCACABRQRAIA1BHGoQ6QwLIAAgACgCAEEBazYCACATIBMoAgBBAWsiADYCACAARQRAIA1BEGoQ6AwLIA1BwAFqJAAPCxCDDwsACxCEDwALjgYBFn0gASoCCCEYIAEqAgQhGSABKgIAIRogAyoCGCEOIAMqAhQhFCADKgIQIRUgAyoCDCELIAMqAgAhDCAEKgIAIQ8gBCoCBCEQIAMqAgghCiAEKgIIIREgAyoCBCENAn0gAiABKgIMlEMAAAA/lCIJIAmUIAIgASoCEJRDAAAAP5QiBiAGlJIgAiABKgIUlEMAAAA/lCIHIAeUkiIIQwAAgChfBEBDAACAPyEIQwAAAAAhBkMAAAAAIQdDAAAAAAwBCyAHIAiRIggQ6wEgCJUiBZQhByAGIAWUIQYgCBDvASEIIAkgBZQLIQlDAABAQCAKIAaUIAsgCZQgDCAIlJKSIA0gB5STIhIgEpQgCyAHlCANIAmUIAogCJSSIAwgBpSTkiITIBOUkiAMIAeUIAsgBpQgDSAIlCAKIAmUk5KSIhYgFpQgCyAIlCAMIAmUkyANIAaUkyAKIAeUkyIXIBeUkpKTQwAAAD+UIQUgACAXIAWUOAIMIAAgEyAFlDgCCCAAIBYgBZQ4AgQgACASIAWUOAIAIAAgDiARIAsgECAMlCANIA+UkyIFIAWSIhKUIAwgCiAPlCARIAyUkyIFIAWSIhOUIA0gDSARlCAKIBCUkyIFIAWSIhGUk5KSkiIFIAIgGJSSIAggFSAPIAsgEZQgDSASlCAKIBOUk5KSkiINIAaUIBQgECALIBOUIAogEZQgDCASlJOSkpIiDCAJlJMiCiAKkiIKlCAJIAUgCZQgDSAHlJMiCyALkiILlCAGIAwgB5QgBSAGlJMiDyAPkiIPlJOSIAWTkiAOIAggCSAUlCAVIAaUkyIFIAWSIgWUIAkgFSAHlCAJIA6UkyIQIBCSIhCUIAYgBiAOlCAHIBSUkyIOIA6SIg6Uk5KSkjgCGCAAIAIgGZQgDJIgCCALlCAHIA+UIAkgCpSTkiAMk5IgFCAIIBCUIAcgDpQgCSAFlJOSkpI4AhQgACACIBqUIA2SIAggD5QgBiAKlCAHIAuUk5IgDZOSIBUgCCAOlCAGIAWUIAcgEJSTkpKSOAIQC/oPAw5/An4EeyMAQfAAayILJAAgBCgCBCETAkAgBCgCACIKIAIoAhAiCE8NACACKAIMIApBsAFsaiIQKAIAQQFHDQAgEEEQakEAIBAoAgQgE0YbIRQLAkAgBCgCCCIOIAhPDQAgAigCDCAOQbABbGoiECgCAEEBRw0AIBRFDQAgBCgCDCIPIBAoAgQiCEcNAEEAIQQgACgCOCIJIApLBEAgACgCNCAKQQxsaiIEQQRqQQAgEyAEKAIARhshBAsgCSAOTQ0AIARFDQAgDyAAKAI0IA5BDGxqIgkoAgBHIg0NACAQQRBqQQAgCCAPRhshEEEAIAlBBGogDRshCAJAAkACQCAHQf8BcUEBaw4CAgABCyAULQCYAQ0BIBAtAJgBDQELIAQoAgAiBCAAKAIITw0BIAgoAgAhCCAAKAIQIQoCQCAAKAIEIARBBHRqIg4oAggiBCAAKAIUIgdJBEADQCAKIARBOGxqIgkoAjQgCEYNAiAHIAkoAigiBEsNAAsLIAcgDigCDCIETQ0CA0AgCiAEQThsaiIOKAIwIAhGDQEgByAOKAIsIgRLDQALDAILIAtBCGohDiMAQUBqIRMCQCAAKAIUIg8gBE0EQCAOQYCAgIB4NgIADAELIAAoAgQhCQJAIAAoAggiDSAAKAIQIgggBEE4bGoiCikCMCIWpyIHTQ0AIAopAigiF6chEiAWQiCIpyEMAkAgCSAHQQR0aiIRKAIIIgcgBEcEQANAIAcgD08NAiAIIAdBOGxqIhEoAigiByAERw0ACyARQShqIBI2AgAMAQsgEUEIaiASNgIACyAMIA1PDQAgF0IgiKchEiAJIAxBBHRqIgwoAgwiByAERwRAA0AgByAPTw0CIAggB0E4bGoiDCgCLCIHIARHDQALIAxBLGogEjYCAAwBCyAMQQxqIBI2AgALIAAgD0EBayIANgIUIBNBCGoiB0EwaiAKQTBqIg8pAgA3AwAgB0EgaiISIApBIGoiDP0AAgD9CwMAIAdBEGoiESAKQRBqIhX9AAIA/QsDACAIIABBOGxqIgdBIGr9AAIAIRggB0EQav0AAgAhGSAH/QACACEaIA8gB0EwaikCADcCACAK/QACACEbIAogGv0LAgAgFSAZ/QsCACAMIBj9CwIAIBMgG/0LAwgCQCAAIARNDQAgCCAEQThsaikCMCIWpyIHIA1PDQAgFkIgiKchCgJAIAAgCSAHQQR0aiIPKAIIIgdHBEADQCAAIAdNDQIgACAIIAdBOGxqIg8oAigiB0cNAAsgD0EoaiAENgIADAELIA9BCGogBDYCAAsgCiANTw0AIAAgCSAKQQR0aiIKKAIMIgdHBEADQCAAIAdNDQIgACAIIAdBOGxqIgooAiwiB0cNAAsgCkEsaiAENgIADAELIApBDGogBDYCAAsgDiAT/QADCP0LAgAgDkEgaiASKQMANwIAIA5BEGogEf0AAwD9CwIACyALKAIIQYCAgIB4Rg0BIAtBMGoiAEEgaiAOQSBqKQIANwMAIABBEGogDkEQav0AAgD9CwMAIAsgC/0AAgj9CwMwAkAgCy0AVEUNAAJAIAFFDQAgFCgCEARAIAEgAyAUKAIUIBQoAhgQqQgLIBAoAhBBAUcNACABIAMgECgCFCAQKAIYEKkICyAQKAJcIBQoAlxyQQFxRQ0AIAtBADoAVSALIAv9AAI8/QsCYCALQgE3AlggBSADIAIgC0HYAGogC0EwaiAGEQcACyALQTBqEMcIDAELIAQoAgQiBCAAKAIgTw0AIABBGGohASAIKAIEIQcgACgCLCEIIAAoAighCSAAKAIcIARBBHRqQQhqIgAhDQNAAkAgCCANKAIAIgRNBEADQCAIIAAoAgQiBE0NBCAJIARBFGxqIgAoAgggB0cNAAwCCwALIAkgBEEUbGoiDSgCDCAHRw0BCwtBAiEAAkAgASgCFCINIARNDQAgASgCBCEJAkAgASgCCCISIAEoAhAiCCAEQRRsaiIAKQIIIhanIgdNDQAgACkCACIXpyEMIBZCIIinIRECQCAJIAdBBHRqIhUoAggiByAERwRAA0AgByANTw0CIAggB0EUbGoiFSgCACIHIARHDQALIBUgDDYCAAwBCyAVQQhqIAw2AgALIBEgEk8NACAXQiCIpyEMIAkgEUEEdGoiESgCDCIHIARHBEADQCAHIA1PDQIgCCAHQRRsaiIRKAIEIgcgBEcNAAsgEUEEaiAMNgIADAELIBFBDGogDDYCAAsgASANQQFrIgE2AhQgCCABQRRsaiIHQRBqKAIAIQ0gACAH/QACAP0LAgAgAEEQaiIHLQAAIQAgByANNgIAIAEgBE0NACAIIARBFGxqKQIIIhanIgcgEk8NACAWQiCIpyENAkAgASAJIAdBBHRqIgwoAggiB0cEQANAIAEgB00NAiABIAggB0EUbGoiDCgCACIHRw0ACyAMIAQ2AgAMAQsgDEEIaiAENgIACyANIBJPDQAgASAJIA1BBHRqIgkoAgwiB0cEQANAIAEgB00NAiABIAggB0EUbGoiCSgCBCIHRw0ACyAJQQRqIAQ2AgAMAQsgCUEMaiAENgIACyAAQf8BcUECRg0AIABBAXFFDQAgECgCXCAUKAJcckEBcUUNACALIA82AkQgCyAONgJAIAsgEzYCPCALIAo2AjggC0KBgICAEDcCMCAFIAMgAiALQTBqQQAgBhEHAAsgC0HwAGokAAu1BwIBfxB9IwBBgAJrIgUkACAFQbgBakEANgIAIAVCADcDsAEgBf0MAAAAAAEAAAACAAAAAwAAAP0LBAAgBUE0akEAQfgA/AsAIAUgAioCDCIHjCIQIAcgB5QgAioCECIKIAqUkiACKgIUIgggCJSSkSIGlSINOALsASAFIAqMIhIgBpUiDjgC8AEgBSAIjCITIAaVIgk4AvQBIAVB1AFqIAEgBUHsAWoQggQgBUEANgK8ASAFQQA2AqwBIAVBADYCMCAFQgA3AyggBSoC1AEhCyAFKgLYASEMIAUgCSABKgJgIgmUIAUqAtwBkiACKgIIIg+TIhE4AiQgBSAMIA4gCZSSIAIqAgQiDpMiDDgCICAFIAsgDSAJlJIgAioCACINkyILOAIcIAUgETgCGCAFIAw4AhQgBSALOAIQIAVBwAFqIAEgBSACIAMQuQEgBSgCwAEhAgJAAkACQCAERQRAIAIEQCAFKgLEASILQwAAAABcBEAgACAFKQLIATcCDCAAIAs4AgggAEEDNgIAIABBFGogBUHQAWooAgA2AgAMBQsgCCAGlSIIIAiUIAcgBpUiByAHlCAKIAaVIgYgBpSSkpEhCiAFIAggCpUiCzgC9AEgBSAHIAqVIgw4AuwBIAUgBiAKlSIKOALwASAFQdQBaiICIAEgBUHsAWoiBBCCBCAFQQA2ArwBIAVBADYCrAEgBUEANgIwIAVCADcDKCAFKgLcASERIAUqAtQBIRQgBSoC2AEhFSAFIBM4AugBIAUgEjgC5AEgBSAQOALgASAFIA8gCCAIIBEgCSALlJIiCCAPk5QgByAUIAkgDJSSIg8gDZOUIAYgFSAJIAqUkiIKIA6TlJKSQ28SgzqSIgmUkiIQOALcASAFIAggEJMiCDgCJCAFIA4gBiAJlJIiBjgC2AEgBSAKIAaTIgY4AiAgBSANIAcgCZSSIgc4AtQBIAUgDyAHkyIHOAIcIAUgCDgCGCAFIAY4AhQgBSAHOAIQIAQgASAFIAIgCUNvEoM6khC5ASAFKALsAUEBRw0CIAMgCSAFKgLwAZMiA2BFBEAgAEEENgIADAULIAAgAzgCCCAAQQM2AgAgACAFKgL8AYw4AhQgACAFKgL4AYw4AhAgACAFKgL0AYw4AgwMBAsgAEEENgIADAMLIAINASAAQQQ2AgAMAgsgAEEENgIADAELIAAgBSkCyAE3AgwgACAFKgLEATgCCCAAQQM2AgAgAEEUaiAFQdABaigCADYCAAsgBUGAAmokAAuoBwIKfwR9IwBBIGsiCyQAIAEoApQCIQwCfSAAKgIQQ9sPyUCUIhUgACoCACIWIBWUIAAqAhQiFyAXkpKVIRhDAAAAACAWIBiUIhZDAAAAAFsNABpDAACAPyAWlUMAAIC/kiIVIBWUIBcgFyAVQwAAgD+SQwAAgECUlJSVCyEVAkACQAJAAkAgBygCDCINIAxBAXQiDiAGKAIAIgBqTwRAIAMqAgQhFyADKgIAIRYgAigClAMgACAFamohEiAHKAIEIQ8gDgRAIA8gAEECdGoiACAOQQJ0aiEDIA4hAiAAIQcDQCANQQJ0IhMgB2oiFCAAIAAgA0YiEBsiEUEANgIAIBFBBGoiESAAIBNqIAMgEBsiA0YhACAUIAcgEBsiByATaiIQIBEgABsiFEEANgIAIBAgByAAGyEHIBEgE2ogAyAAGyEDIBQgAkECR0ECdGohACACQQJrIgINAAsLIA1BAUYiACASQQBHcQ0BIBJBACANQQFHIgIbIgMgDU8NASAPIANBAnRqQYCAgPwDNgIAIAAgDCASaiIDQQBHcQ0CIANBACACGyIAIA1PDQIgDyAAQQJ0aiIHQYCAgPwDNgIAIAYoAgAiAyAMaiIAIAxqIA1LDQQgAUHcAGogDyAAQQJ0aiAMENwBIAooAgAiAiAJSQ0DIAIgCUHYnsIAEIULAAsMAwsgC0EANgIYIAtBATYCDCALQeyAwgA2AgggC0IENwIQIAtBCGpBuJ7CABC5DQALIAtBADYCGCALQQE2AgwgC0HsgMIANgIIIAtCBDcCECALQQhqQciewgAQuQ0ACyAIIAJByABsaiIAQQA7AUQgAEEANgJAIAAgFTgCPCAAQQA2AjggAEP//39/QwAAAAAgBCAXXhs4AiwgAEP//3//QwAAAIAgBCAWXRs4AiggAEL/////DzcCICAAIAM2AhwgACAMNgIYIABCADcCECAAIAEoApgCNgIMIABBfzYCCCAAIAU2AgQgAEEBNgIAIABDAAAAAEMAAIA/IAcqAgAiFZUgFYtDCOU8Hl8bOAIwIABDAAAAAEMAAAAAIAQgF5MiFSAVQwAAAABdGyAVIBVcG0MAAAAAQwAAAAAgFiAEkyIEIARDAAAAAF0bIAQgBFwbkyAYlEMAAAAAkjgCNCAGIAMgDmo2AgAgCiACQQFqNgIAIAtBIGokAA8LIAtBADYCGCALQQE2AgwgC0Gw/cEANgIIIAtCBDcCECALQQhqQbj9wQAQuQ0AC4gHAgp/CX0jAEEgayIEJAACQAJAAkACQAJAAkAgAiABKAIMIgZBAWtPDQAgAyABKAIQIghBAWtPDQAgASgCICIFIAJNDQIgAyABKAIkTw0CIAEoAhggAyAFbGogAmotAAAiBUEGcUEGRgRAIABBADYCKCAAQQA2AgAMAgsgAiAGTw0DIAMgCE8NAyACQQFqIgkgBk8NBCADQQFqIgogCE8NBSAJQQJ0IgsgASgCBCIMIAYgCmxBAnRqIgdqKgIAIAEqAiwiEJQhFCAHIAJBAnQiDWoqAgAgEJQhFSAFQQJxIQdDAACAPyAIs0MAAIC/kpUiDiAKs5RDAAAAv5IgASoCKCIWlCERQwAAgD8gBrNDAACAv5KVIg8gCbOUQwAAAL+SIAEqAjAiE5QhEiAPIAKzlEMAAAC/kiATlCEPIA0gDCADIAZsQQJ0aiIBaioCACAQlCETIA4gA7OUQwAAAL+SIBaUIQ4gASALaioCACAQlCEQIAVBAXEEQEEAIQFBACECIAdFIQIgACAPOAJMIAAgFTgCSCAAIBE4AkQgACASOAJAIAAgFDgCPCAAIBE4AjggACAPOAI0IAAgEzgCMCAAIA44AiwgACAFQQRxRTYCKCAAIBI4AiQgACAUOAIgIAAgETgCHCAAIBI4AhggACAQOAIUIAAgDjgCECAAIA84AgwgACATOAIIIAAgDjgCBCAAIAI2AgAMAgtBACEBQQAhAiAHRSECIAAgDzgCTCAAIBU4AkggACAROAJEIAAgEjgCQCAAIBQ4AjwgACAROAI4IAAgEjgCNCAAIBA4AjAgACAOOAIsIAAgBUEEcUU2AiggACAPOAIkIAAgFTgCICAAIBE4AhwgACASOAIYIAAgEDgCFCAAIA44AhAgACAPOAIMIAAgEzgCCCAAIA44AgQgACACNgIADAELIABBADYCKCAAQQA2AgALIARBIGokAA8LIARBADYCGCAEQQE2AgwgBEH83MIANgIIIARCBDcCECAEQQhqQczJwwAQuQ0ACyAEQQA2AhggBEEBNgIMIARB/NzCADYCCCAEQgQ3AhAgBEEIakHcycMAELkNAAsgBEEANgIYIARBATYCDCAEQfzcwgA2AgggBEIENwIQIARBCGpB7MnDABC5DQALIARBADYCGCAEQQE2AgwgBEH83MIANgIIIARCBDcCECAEQQhqQfzJwwAQuQ0AC7wHAgJ/Cn0jAEHgB2siBSQAQ///f38hDEP//3//IQ0CQCACKAIIRQRAQ///f/8hCkP//3//IQdD//9/fyEIQ///f38hCQwBC0P//3//IQpD//9//yEHQ///f38hCEP//39/IQkCQAJAIAIoAgQiBigCPEH/////A3EgBigCHEH/////A3FqDgICAAELIAYqAhghDSAGKgIUIQogBioCECEHIAYqAgghDCAGKgIEIQggBioCACEJDAELIAYqAhgiCiAGKgI4IgcgByAKXxshDSAGKgIUIgogBioCNCIHIAcgCl8bIQogBioCECIHIAYqAjAiCCAHIAhgGyEHIAYqAggiCCAGKgIoIgkgCCAJXxshDCAGKgIEIgggBioCJCIJIAggCV8bIQggBioCACIJIAYqAiAiDiAJIA5fGyEJCyACKgJsIQ4gAioCaCEPIAIqAmQhECAFIAMgASAEKAKUAREBAEEAIQYCQCAJIAUqAgAiCyAJIAtgGyIJIAcgBSoCDCILIAcgC18bIgdeDQAgCCAFKgIEIgsgCCALYBsiCCAKIAUqAhAiCyAKIAtfGyIKXg0AIAwgBSoCCCILIAsgDF8bIgwgDSAFKgIUIgsgCyANYBsiDV4NACAFIAwgDpWO/AA2AsgHIAUgCCAPlY78ADYCxAcgBSAJIBCVjvwANgLAByAFIA0gDpWN/AA2ApQHIAUgCiAPlY38ADYCkAcgBSAHIBCVjfwANgKMByAFQRhqIgYgAiAFQcAHaiAFQYwHaiICEJ4EIAIgBhCAASAFKAKMB0EBRgRAIA5DAAAAP5QhCiAPQwAAAD+UIQcgEEMAAAA/lCEIQfyIwwAoAgAhBiABKgIYIQkgASoCFCEMIAEqAhAhDQNAAkAgBS0AsAciAkHBAEkEQCACQZirwQBqLQAARQ0BIAUqAqwHIQ4gBSoCqAchDyAFKgKkByEQIAUgCjgCvAcgBSAHOAK4ByAFIAg4ArQHIAUgCSAOkzgC2AcgBSAMIA+TOALUByAFIA0gEJM4AtAHIAUgAf0AAgD9CwPAByAAIAVBwAdqIAVBtAdqQaSEwwAgAyAEIAYRHABBAXFFDQFBASEGIAUoAhhBAkYNBCAFKAKcASIAQSFJDQQgBSgCICAAQQJ0QQQQ6A4MBAsgAkHBAEHQ4sMAEIULAAsgBUGMB2ogBUEYahCAASAFKAKMBw0ACwtBACEGIAUoAhhBAkYNACAFKAKcASIAQSFJDQAgBSgCICAAQQJ0QQQQ6A4LIAVB4AdqJAAgBgvcBgIJfwZ+IwBBEGsiCiQAAkACQAJ/AkACQAJAAkAgASkDACIOQgBSBEAgDkKAgICAgICAgCBaDQEgA0UNAkGgfyABLwEYIA55Ig+nayIFa8FB0ABsQbCnBWpBzhBtIgFB0QBPDQMgCiABQQR0IgFBuJ7EAGopAwAgDiAPhhC9CiAKKQMIIAopAwBCP4h8IhBBQCAFIAFBwJ7EAGovAQBqayIIQT9xrSIOiKchBSABQcKexABqLwEAIQEgEEIBIA6GIhFCAX0iEoMiD1AEQCADQQpLDQcgA0ECdEGcq8QAaigCACAFSw0HCyAFQZDOAE8EQCAFQcCEPUkNBSAFQYDC1y9PBEBBCEEJIAVBgJTr3ANJIgYbIQdBgMLXL0GAlOvcAyAGGwwHC0EGQQcgBUGAreIESSIGGyEHQcCEPUGAreIEIAYbDAYLIAVB5ABPBEBBAkEDIAVB6AdJIgYbIQdB5ABB6AcgBhsMBgtBCkEBIAVBCUsiBxsMBQtBkJrEAEEcQcyqxAAQ1gwAC0HcqsQAQSRBgKvEABDWDAALQaiqxABBIUGQq8QAENYMAAsgAUHRAEHIqMQAEIULAAtBBEEFIAVBoI0GSSIGGyEHQZDOAEGgjQYgBhsLIQYCQAJAAkACQCAHIAFrQQFqwSIJIATBIgFKBEAgCEH//wNxIQwgCSAEa8EgAyAJIAFrIANJGyIIQQFrIQ1BACEBA0AgBSAGbiELIAEgA0YNAyAFIAYgC2xrIQUgASACaiALQTBqOgAAIAEgDUYNBCABIAdGDQIgAUEBaiEBIAZBCkkhCyAGQQpuIQYgC0UNAAtByKvEABCSDQALIAAgAiADQQAgCSAEIBBCCoAgBq0gDoYgERDcBAwFCyABQQFqIQEgDEEBa0E/ca0hE0IBIRADQCAQIBOIQgBSBEAgAEEANgIADAYLIAEgA08NAyABIAJqIA9CCn4iDyAOiKdBMGo6AAAgEEIKfiEQIA8gEoMhDyAIIAFBAWoiAUcNAAsgACACIAMgCCAJIAQgDyARIBAQ3AQMBAsgAyADQdirxAAQhQsACyAAIAIgAyAIIAkgBCAFrSAOhiAPfCAGrSAOhiARENwEDAILIAEgA0Hoq8QAEIULAAsgAEEANgIACyAKQRBqJAALhQcDBn8JfQJ7IwBBsAJrIgYkACAGIAU2AiQgBiAENgIgIAYgATYCHCAAKAIAIQQCQCABBEAgBiAEKgIMIhIgASoCDCINlCAEKgIAIgwgASoCACIOlJMgBCoCBCIPIAEqAgQiE5STIAQqAggiECABKgIIIhSUkzgCNCAGIBAgDZQgDCATlCASIBSUkiAPIA6Uk5I4AjAgBiAQIA6UIA8gDZQgEiATlCAMIBSUk5KSOAIsIAYgDyAUlCASIA6UIAwgDZSSkiAQIBOUkzgCKCAMIAEqAhQiE5QgDyABKgIQIhSUkyINIA2SIQ0gECAUlCABKgIYIhEgDJSTIg4gDpIhDiAGIAQqAhggESASIA2UIAwgDpQgDyAPIBGUIBAgE5STIhEgEZIiEZSTkpKSOAJAIAYgBCoCFCATIBIgDpQgECARlCAMIA2Uk5KSkjgCPCAGIAQqAhAgFCASIBGUIA8gDZQgECAOlJOSkpI4AjgMAQsgBkEoaiIBQRhqIARBGGooAgA2AgAgAUEQaiAEQRBqKQIANwMAIAYgBP0AAgD9CwMoCyAGQfQBaiACIAZBKGogAygClAERAQAgACgCBCIBKgIAIgxDAAAAAGAEQCAGIAYqAvgBIAyTOAJIIAYgBioC9AEgDJM4AkQgBiAG/QAC/AEiFSAM/RMiFv3lASAVIBb95AH9DQABAgMUFRYXGBkaGxwdHh/9CwJMIAAoAiwhBCAAKAIoIQUgACgCJCEIIAD9AAIUIRUgACgCECEJIAZB3ABqIgcgACgCCCIKIAAoAgwiCygCEBEEACAGQcQAahD6BiAGQRBqIAcQ2AMgBigCEEEBcQRAIAYoAhQhACALKAIMIQcDQCAGIAA2AvABIAYgATYCrAIgBiADNgKkAiAGIAI2AqACIAYgBDYCnAIgBiAFNgKYAiAGIAg2ApACIAYgFf0LAoACIAYgCTYC+AEgBiAGQSBqNgKoAiAGIAZBHGo2ApQCIAYgBkHwAWo2AvwBIAYgBkEoajYC9AEgCiAAIAZB9AFqQfzxwQAgBxECACAGQQhqIAZB3ABqENgDIAYoAgwhACAGKAIIQQFxDQALCyAGKALgASIAQSFPBEAgBigCZCAAQQJ0QQQQ6A4LIAZBsAJqJAAPCyAGQQA2AmwgBkEBNgJgIAZBpNnBADYCXCAGQgQ3AmQgBkHcAGpBrNnBABC5DQAL9QUBGn0CfSACKgIIIg8gAyoCDCIJIAMqAgAiBEMAAAAAlCIGIAMqAgQiBUMAAAAAlCIKkyINIA2SIgyUIAVDAACAPyADKgIYIhqYIg0gBZQgAyoCCCIHQwAAAACUIgiTIg4gDpIiC5QgBCAIIA0gBJSTIg4gDpIiEZSTkiANk5ghDiAEIAIqAgQiECAJIBGUIAQgDJQgByALlJOSmCIblCAFIAIqAgAiFSAJIAuUIAcgEZQgBSAMlJOSmCIclJMhESAQIAkgCCAGkyIMIAySIhaUIARDAACAPyADKgIUIh2YIgwgBJQgCpMiCyALkiIXlCAHIAogDCAHlJMiCyALkiIYlJOSIAyTmCELIBUgCSAKIAiTIgogCpIiCJQgB0MAAIA/IAMqAhAiE5giCiAHlCAGkyISIBKSIhKUIAUgBiAKIAWUkyIGIAaSIhmUk5IgCpOYIQYgCiATIAYgCSAFIA8gCSAZlCAFIAiUIAQgEpSTkpgiE5QgByAQIAkgEpQgBCAZlCAHIAiUk5KYIgiUkyIQIBCSlCAFIAQgCJQgBSAGlJMiCCAIkpQgByAHIAaUIAQgE5STIgYgBpKUk5KSkpQgASoCAJMiBkP//3//XiEDIAwgHSALIAkgByAVIAkgGJQgByAWlCAFIBeUk5KYIgiUIAQgDyAJIBeUIAUgGJQgBCAWlJOSmCIPlJMiECAQkpQgByAFIA+UIAcgC5STIg8gD5KUIAQgBCALlCAFIAiUkyIIIAiSlJOSkpKUIAEqAgSTIgggBkP//3//IAMbIgZeIQIgCCAGIAIbIgYgDSAaIA4gCSARIBGSlCAEIAcgHJQgBCAOlJMiBCAEkpQgBSAFIA6UIAcgG5STIgQgBJKUk5KSkpQgASoCCJMiBF1FBEAgDEMAAAAAIAIbIQVDAAAAACAKQwAAAAAgAxsgAhsMAQtDAAAAACEFIA0hFCAEIQZDAAAAAAshDSAAIBQ4AgwgACAFOAIIIAAgDTgCBCAAIAY4AgAL5QUBD30gAyoCACACKgIQkyINIAIqAgQiCpQgAyoCBCACKgIUkyIRIAIqAgAiC5STIgkgCZIhBiARIAIqAggiCZQgAyoCCCACKgIYkyIIIAqUkyIMIAySIQcgCCACKgIMIgwgBpQgCiAHlCALIAggC5QgDSAJlJMiCCAIkiIPlJOSkiIIIAiUIA0gDCAHlCAJIA+UIAogBpSTkpIiDSANlCARIAwgD5QgCyAGlCAJIAeUk5KSIhEgEZSSkiABKgIAIgYgBpSTIQ9DAAAAACEGIAogAyoCDCISlCALIAMqAhAiE5STIgcgB5IhByAJIBOUIAogAyoCFCIQlJMiDiAOkiEOAkACQCAQIAwgB5QgCiAOlCALIAsgEJQgCSASlJMiECAQkiIUlJOSkiIQIBCUIBIgDCAOlCAJIBSUIAogB5STkpIiEiASlCATIAwgFJQgCyAHlCAJIA6Uk5KSIg4gDpSSkiITQwAAAABcBEAgCCAQlCANIBKUIBEgDpSSkiEHIA9DAAAAAF4gB0MAAAAAXnENAiAHIAeUIA8gE5STIgZDAAAAAF0NAiAHjCAGkSIPkyATlSIGQwAAAABfIgEhAkMAAAAAIAYgAhshBiAFDQEgAUUNASAPIAeTIBOVIQZBASECDAELQQEhAiAPQwAAAABeDQELIAQgBmBFDQAgACAGOAIIIABCAjcCACAIIBAgBpSSIgcgB5QgDSASIAaUkiIIIAiUIBEgDiAGlJIiBiAGlJKSkSEEIAsgBiAElSIGjCAGIAIbIg2UIAogCCAElSIGjCAGIAIbIgiUkyIGIAaSIQYgCSAIlCALIAcgBJUiBIwgBCACGyIHlJMiBCAEkiEEIAAgByAMIAaUIAsgBJQgCiAKIAeUIAkgDZSTIgcgB5IiB5STkpI4AhQgACANIAwgBJQgCSAHlCALIAaUk5KSOAIQIAAgCCAMIAeUIAogBpQgCSAElJOSkjgCDA8LIABBBDYCAAurBgIJfwZ9AkAgASgCCCIEBEAgAioCCCEMIAIqAgQhDSACKgIAIQ4CQCAEQQFGDQAgDiABKAIEIgUqAgyUIA0gBUEQaioCAJSSIAwgBUEUaioCAJSSIhEgDiAFKgIAlCANIAVBBGoqAgCUkiAMIAVBCGoqAgCUkiIPXiICIQZBAiEDIARBAkYNACARIA8gAhshECAEQf3///8DaiEHIAVBGGohAiAEQf////8DcUEDRwRAIAdB/////wNxQQFqQf7///8HcSEFA0AgDiACKgIAlCANIAJBBGoqAgCUkiAMIAJBCGoqAgCUkiIPIBBeIQggDiACQQxqKgIAlCANIAJBEGoqAgCUkiAMIAJBFGoqAgCUkiIRIA8gECAIGyIPXiEEIBEgDyAEGyEQIANBAWogAyAGIAgbIAQbIQYgAkEYaiECIAMgBUchBCADQQJqIQMgBA0ACwsgB0EBcQ0AIAMgBiAOIAIqAgCUIA0gAkEEaioCAJSSIAwgAkEIaioCAJSSIBBeGyEGCyAGIAEoAhQiAkkEQCABKAIQIAZBA3RqIgooAgQhCyABKAIcIQUgASgCICEJIAEoAjQhBCABKAI4IQdBACECA0ACQAJAIAIgC0YEQCABKAIoIQUgASgCLCEHIAEoAkAhBCABKAJEIQhBACECA0AgAiALRgRAIAYhA0EAIQkMCAsgAiAKKAIAaiIBIAhPDQIgBCABQQJ0aigCACIDIAdJBEBBASEJIAJBAWohAiAOIAUgA0EFdGoiASoCEJQgDSABQRRqKgIAlJIgDCABQRhqKgIAlJKLQ1n4jjxfRQ0BDAgLCyADIAdBiMbDABCFCwALIAcgAiAKKAIAaiIDTQRAIAMgB0GYxsMAEIULAAsgCSAEIANBAnRqKAIAIgNLDQEgAyAJQajGwwAQhQsACyABIAhB+MXDABCFCwALIAJBAWohAiAOIAUgA0EUbGoiCCoCCJQgDSAIQQxqKgIAlJIgDCAIQRBqKgIAlJJDBfZ/P2BFDQALQQIhCQwCCyAGIAJB6MXDABCFCwALQQBBAEGAhMQAEIULAAsgACADNgIEIAAgCTYCAAuxBgIDfxp9IwBBIGsiCSQAAkAgBkEBakEESQRAIAEgBkEMbGoiCkEQaiIGRQ0BIApB2ABqIgtFDQEgCkH8AGoiCkUNASAGKgIIIRUgBioCBCEWIAYqAgAhFyALKgIIIQ4gCyoCBCEPIAsqAgAhECAKKgIIIREgCioCBCESIAoqAgAhEwJ9IAIqAhBD2w/JQJQiDCACKgIAIg0gDJQgAioCFCIMIAySkpUhGEMAAAAAIA0gGJQiDUMAAAAAWw0AGkMAAIA/IA2VQwAAgL+SIhQgFJQgDCAMIBRDAACAP5JDAACAQJSUlJULIRQgASoCzAEhHSABKgLEASEeIAEqAsgBIR8gBCoCACEgIAQqAgQhDCAEKgIMISEgBCoCFCEiIAQqAgghDSAEKgIQIRkgBSoCACEjIAUqAgQhGiAFKgIMISQgBSoCFCElIAUqAgghGyAFKgIQIRwgBCgCMCEBIAUoAjAhAiAAIBQ4AmwgAEIANwJkIABBADYCXCAAIBE4AkAgACASOAI8IAAgEzgCOCAAIA44AjQgACAPOAIwIAAgEDgCLCAAIBU4AiggACAWOAIkIAAgFzgCICAAQf////sHNgIcIABCgICAgPD//79/NwIUIAAgAzYCECAAIAI2AgwgACABNgIIIABB+ABqIARBIGooAgA2AgAgACAEKQIYNwJwIAAgBSkCGDcCfCAAQYQBaiAFQSBqKAIANgIAIAAgEyAblCASIByUkiARICWUkjgCWCAAIBMgGpQgEiAklJIgESAclJI4AlQgACATICOUIBIgGpSSIBEgG5SSOAJQIAAgECANlCAPIBmUkiAOICKUkjgCTCAAIBAgDJQgDyAhlJIgDiAZlJI4AkggACAQICCUIA8gDJSSIA4gDZSSOAJEIAAgGCAXIB6UIBYgH5SSIBUgHZSSlEMAAAAAkjgCYCAAIAg2AgQgACAHNgIAIAlBIGokAA8LIAlBADYCGCAJQQE2AgwgCUGw/cEANgIIIAlCBDcCECAJQQhqQcj9wQAQuQ0ACyAJQQA2AhggCUEBNgIMIAlB9NvBADYCCCAJQgQ3AhAgCUEIakH828EAELkNAAuhBgEJfyMAQTBrIgMkACADIAA2AgACQAJAAkACQAJAIABBAkkEQCABIABByABsaiIIKAIYIgRBAk8NAiABIARByABsai0AREEBRw0EIAhBGGoiBSgCBCIGQQJJDQEgBiEEDAILIABBAkGs98MAEIULAAsgASAGQcgAbGotAERBAUcNAiAFKAIIIgpBAkkNASAKIQQLIARBAkGM+MMAEIULAAsgASAKQcgAbGotAEQNAQtBnPjDAEEsQcj4wwAQ1gwACwJAAkAgCCgCJCICQQJLDQACQAJAAkAgACABIARByABsaiIEIAJBAnRqIgUoAhhHBEAgBUEYaiECDAELIAJBAnQiBSAEaiIJKAIkBEAgCUEkaiECDAILIARBMGoiByAFaigCACIEIAgoAjQiBUcNBCAHIAJBAWpBACACQQJHG0ECdGooAgAiBSAIKAIwIgdHBEAgBSECIAchBAwDCyAIKAIoIgJBAksNAyAAIAEgBkHIAGxqIgkgAkECdGoiBigCGEcEQCAGQRhqIQIMAQtBASEHIAYoAiRBAUcEQCAGQSRqIQIMAgsgCUEwaiIJIAJBAnRqKAIAIgYgCCgCOCIHRwRAIAYhBCAHIQUMBQsgCSACQQFqQQAgAkECRxtBAnRqKAIAIgIgBEcNAiAIKAIsIgJBAksNAyAAIAEgCkHIAGxqIgEgAkECdGoiBCgCGEcEQCAEQRhqIQIMAQtBAiEHIAEgAkECdGoiACgCJEECRwRAIABBJGohAgwCCyAFIAFBMGoiACACQQJ0aigCACIERw0EIAYiBCAAIAJBAWpBACACQQJHG0ECdGooAgAiAkcNAiADQTBqJAAPCyADQQA2AhggAiADIANBGGpBzPfDABD8DAALIAMgBzYCBCADQQA2AhggAiADQQRqIANBGGpB3PfDABD8DAALIAMgBDYCFCADIAI2AhAgA0EANgIYIANBEGogA0EUaiADQRhqQfz3wwAQ/AwACyACQQNBvPfDABCFCwALIAMgBTYCDCADIAQ2AgggA0EANgIYIANBCGogA0EMaiADQRhqQez3wwAQ/AwAC+8GAgN/D30jAEGAAmsiBSQAIAVBuAFqQQA2AgAgBUIANwOwASAF/QwAAAAAAQAAAAIAAAADAAAA/QsEACAFQTRqQQBB+AD8CwAgBUEANgK8ASAFQQA2AqwBIAVBADYCMCAFQgA3AyggASoCBCIQIAIqAhAiCIwiEZQgASoCACIMIAIqAgwiCZSTIAIqAhQiCiABKgIIIg6UkyABKgIQIhUgEZQgCSABKgIMIg+UkyAKIAEqAhQiFpSTXiEGIAUgDCAPIAYbIAIqAgAiEpMiCzgCHCAFIAs4AhAgBSABIAFBDGoiByAGGyIGKgIIIAIqAggiE5MiCzgCJCAFIAYqAgQgAioCBCIUkyINOAIgIAUgCzgCGCAFIA04AhQgBUHAAWogASAFIAIgAxDEASAFKALAASECAkACQAJAIARFBEAgAgRAIAUqAsQBIgtDAAAAAFwEQCAAIAUpAsgBNwIMIAAgCzgCCCAAQQM2AgAgAEEUaiAFQdABaigCADYCAAwFCyAFQQA2ArwBIAVBADYCrAEgBUEANgIwIAVCADcDKCABIAcgDiAKIAkgCZQgCCAIlJIgCiAKlJKRIg2VIg6UIAwgCSANlSILlCAQIAggDZUiCJSSkiAOIBaUIAsgD5QgCCAVlJKSXiICGyIEKgIIIQ0gBCoCBCEQIAUgCow4AugBIAUgETgC5AEgBSAJjDgC4AEgBSATIA4gDiANIBOTlCALIAwgDyACGyIKIBKTlCAIIBAgFJOUkpJDbxKDOpIiCZSSIgw4AtwBIAUgDSAMkyIMOAIkIAUgFCAIIAmUkiIIOALYASAFIBAgCJMiCDgCICAFIBIgCyAJlJIiDzgC1AEgBSAKIA+TIgo4AhwgBSAMOAIYIAUgCDgCFCAFIAo4AhAgBUHsAWogASAFIAVB1AFqIAlDbxKDOpIQxAEgBSgC7AFBAUcNAiADIAkgBSoC8AGTIgNgRQRAIABBBDYCAAwFCyAAIAM4AgggAEEDNgIAIAAgBSoC/AGMOAIUIAAgBSoC+AGMOAIQIAAgBSoC9AGMOAIMDAQLIABBBDYCAAwDCyACDQEgAEEENgIADAILIABBBDYCAAwBCyAAIAUpAsgBNwIMIAAgBSoCxAE4AgggAEEDNgIAIABBFGogBUHQAWooAgA2AgALIAVBgAJqJAAL+wkECn8CfgN7B30jAEGAAmsiAiQAIAJBwAFqIgP9DAAAAAAAAAAAAAAAAAAAAAD9CwIQIAP9DAAAAAAAAAAAAAAAAAAAgD/9CwIAIANBKGpBADYCACADQSBqQgA3AgAgAkGwAWr9DAAAAAAAAAAAAAAAAAAAAAD9CwMAIAJBoAFq/QwAAAAAAAAAAAAAAAAAAAAA/QsDACAC/QwAAAAAAAAAAAAAAAAAAAAA/QsDkAEgAkEUaiACQZABaiIDQdwA/AoAACACQRBqIAJB8wFqLQAAOgAAIAIgAi8A8QE7AQ4gAkGEAWogAUHwAGooAgA2AgAgAiABKQJcNwNwIAIgAUHkAGooAgA2AnggAiABKQJoNwJ8IAEpAzghDCABKQMwIQ0gAf0ABEAhDiABLQCNASEFIAEoAoQBIQYgA/0MAAAAAAAAAAAAAAAAAAAAAP0LAhAgA/0MAAAAAAAAAAAAAAAAAACAP/0LAgAgA0EoakEANgIAIANBIGpCADcCAAJAAkACQCABKAIARQRAIAH9AAIUIAL9AASgAf1B/aMBRQ0BIAEqAiQgAioCsAFcDQEgASoCKCACKgK0AVwNASABKgIsIAIqArgBXA0BQQAhAyAB/QACBCIPIAL9AASQASIQ/UL9U0UNAiAPIBD94QH9Qv1TRQ0CDAELIAEqAgRDAAAAAFwNAEEAIQMMAQtBMEEEEJEOIgNFDQEgAyAB/QACAP0LAgAgA0EgaiABQSBq/QACAP0LAgAgA0EQaiABQRBq/QACAP0LAgALIAEqAoABIRMgAS0AigEhByABLQCMASEIIAEqAnQhFCABKgJ8IRUgASoCeCEWQwAAgL8hEQJAIAEtAIgBRQRAQwAAgL8hEgwBC0EBIQRDzczMPiESQwAAAD8hESABLQCJAUEBRwRAQQAhBAwBCyACQYABakIANwMAIAL9DAAAAAAAAAAAAAAAAAAAAAD9CwRwQwAAAEAhFwsgAS0AiwEhCSABLQCPASEKIAEtAI4BIQsgACANNwMQIAAgDv0LBDAgACAHOgAtIABBADoALCAAIBM4AiggAEL////7BzcDICAA/Qz///////////////8AAAAA/QsEACAAIA79CwJMIAAgFjgCaCAAIBU4AmwgACAC/QAEcP0LBHAgACAMNwMYIAAgASkDUCIMNwNAIAAgDDcCXCAAQcgAaiABQdgAaigCACIBNgIAIABB5ABqIAE2AgAgAEGAAWogAkGAAWopAwA3AwAgAEGoAWr9DAAAAAAAAAAAAAAAAAAAAAD9CwMAIABBmAFq/QwAAAAAAAAAAAAAAAAAAAAA/QsDACAA/QwAAAAAAAAAAAAAAAAAAAAA/QsDiAEgAEHMAWpCADcCACAAIBQ4ArgBIAD9DAAAAAAAAAAAAAAAAAAAAAD9CwK8ASAAIAg6ANQBIABB1QFqIAJBEWpB3wD8CgAAIAAgCzoAuAIgACADNgK0AiAAIAk6AOYCIAAgBToA5QIgACAKOgDkAiAAQQA2AuACIABCgICAgMAANwPYAiAAIAQ6ANQCIAAgFzgC0AIgAEGAgICABDYCzAIgACAROALIAiAAIBI4AsQCIAAgBjYCwAIgAEH/ATYCvAIgACACLwEOOwC5AiAAQbsCaiACQRBqLQAAOgAAIAJBgAJqJAAPC0EEQTBB+MrEACgCACIAQcwIIAAbEQAAAAuCHAQRfwZ9A3sBfiMAQbABayIFJAACQAJAAkACQAJAAkAgASgCCCIHRQRAQQQhCEEAIQFBACEHDAELIAEoAgQiBCgCICEBIAVBIGogBCgCHCABKAIIQQFrQXhxakEIaiACIAMgASgCkAERAgAgBSgCICIBRQ0BIAIqAgghFSACKgIEIRYgAioCACEaIAQqAhghFyAEKgIUIRggBCoCECEZIAVBGGogASAFKAIkEIoJIAUoAhgiAUUNASAFKAIcIQYgBSAE/QACAP0LA6ABQZABQQQQkQ4iCEUNAyAIIAX9AAOgAf0LAgAgCCABNgIcIAggBjYCICAIIBcgFZQ4AhggCCAYIBaUOAIUIAggGSAalDgCECAFIAg2ApgBIAVBBDYClAEgBUEBNgKcASAHQQFHBEAgB0EkbEEkayEKQQAhB0EBIQEDQCAEIAdqIglBxABqKAIAIQYgBUEQaiAJQUBrKAIAIAYoAghBAWtBeHFqQQhqIAIgAyAGKAKQARECACAFKAIQIgZFBEAgBSgClAEhBgwHCyAJQTxqKgIAIRcgCUE4aioCACEYIAlBNGoqAgAhGSAFQQhqIAYgBSgCFBCKCSAFKAKUASEGIAUoAggiDEUNBiAFKAIMIQsgBSAJQSRq/QACAP0LAzggGiAZlCEZIBYgGJQhGCAVIBeUIRcgASAGRgRAIAVBlAFqIAFBAUEEQSQQ2AYgBSgCmAEhCAsgBf0AAzghGyAHIAhqIgZBxABqIAs2AgAgBkFAayAMNgIAIAZBPGogFzgCACAGQThqIBg4AgAgBkE0aiAZOAIAIAZBJGogG/0LAgAgBSABQQFqIgE2ApwBIAogB0EkaiIHRw0AC0EAIQIgBSgClAEiB0GAgICAeEYNBiAFKAKYASEIDAELQQQhB0EBIQELIAUgATYCNCAFIAg2AjAgBSAHNgIsIAVBOGohDEEAIQlBACEKIwAiASESIAFBwAJrQUBxIgQkAAJAAkAgBUEsaiIQKAIIIgEEQCAEQQA2AkAgBEKAgICAwAA3AjggBEEANgJMIARCgICAgMAANwJEIAFBJGwhDSAQKAIEIQb9DP//f3///39///9/f///f/8hG0P//3//IRVBBCEDQQAhAUEEIQdD//9//yEWAkADQCANRQ0BIARB0ABqIAYoAhwgBigCICICKAIIQQFrQXhxakEIaiAGIAIoApQBEQEAIBsgBP0ABFAiHP1FIBsgHP1G/Q0AAQIDBAUGBwgJCgscHR4fIR0gBCoCZCIaIBVfIQIgBCoCYCIXIBZfIQsgBCgCOCABRgRAIARBOGpB6JvDABCSCCAEKAI8IQcLIAcgCmoiCCAE/QAEUP0LAgAgCEEQaiAEQeAAaiIOKQMANwIAIAQgAUEBaiIINgJAIARBqAFqIA4pAwA3AwAgBCAE/QAEUP0LA5gBIBsgHCAd/VIhGyAVIBogAhshFSAWIBcgCxshFiAEKAJEIAFGBEBBACELIwBBIGsiAiQAQQQgBEHEAGoiAygCACIOQQF0Ig8gD0EETRsiD61CHH4iHkIgiEIAUgRAQQBBAEH4m8MAENcNAAsCQCAepyIRQfz///8HTQR/IAIgDgR/IAIgDkEcbDYCHCACIAMoAgQ2AhRBBAVBAAs2AhggAkEIakEEIBEgAkEUahDiCSACKAIIQQFHDQEgAigCECELIAIoAgwFQQALIAtB+JvDABDXDQALIAIoAgwhCyADIA82AgAgAyALNgIEIAJBIGokACAEKAJIIQMLIAMgCWoiAiABNgIAIAJBBGogBCkDmAE3AgAgAkEMaiAEQZgBaiICQQhq/QADAP0LAgAgBCAINgJMIARBMGogBigCHCAGKAIgIgEoAghBAWtBeHFqQQhqIAEoArgBEQAAIA1BJGshDSAKQRhqIQogCUEcaiEJIAghASAGQSRqIQYgBCgCMEUNAAsgBEEANgKoASAEQQE2ApwBIARBsJzDADYCmAEgBEIENwKgASACQbicwwAQuQ0ACyAEKAJEIQ4gBCgCSCEIIARCADcCkAEgBEKAgICAwAA3AogBIARCBDcCgAEgBEIANwJ4IARCgICAgIAINwJwQQAhCiAEQQA2AugBIARCEDcCqAEgBEIANwKgASAEQoCAgICACDcCmAEgBEIANwLgASAEQoCAgIDAADcC2AEgBEIANwLQASAEQoCAgIDAADcCyAEgBEIENwLAASAEQgA3ArgBIARCgICAgMAANwKwAUEQIQYgCUUNAiAIIAlqIREgBEGkAWoiE0EAIAFBEEEgENgGIARBiAFqIhRBACABQQRBCBDYBiAEKAKsASEKIAghAwNAIAMoAgAhDSAEIANBDGooAgA2AogCIAQgAykCBDcDgAIgBCADQRhqKAIANgL4ASAEIAMpAhA3A/ABIAQoAqQBIApGBEAgE0HQ88IAEMUICyAEKAKoASIGIApBBXRqIgIgBCkDgAI3AwAgAiANNgIMIAIgBCkD8AE3AxAgAkGBgICAfDYCHCACQQhqIAQoAogCNgIAIAJBGGogBCgC+AE2AgAgBCAKQQFqIgo2AqwBIA0gBCgCkAEiAk8EQAJAAkAgDSACayIJQQFqIgcgBCgCiAEgAmtLBEAgFCACIAdBBEEIENgGIAQoApABIQIMAQsgB0UNAQsgB0EDcSELIAQoAowBIQ8gCUEDTwRAIAdBfHEhByAPIAJBA3RqIQkDQCAJQQA2AgAgCUEYakEANgIAIAlBEGpBADYCACAJQQhqQQA2AgAgCUEgaiEJIAJBBGohAiAHQQRrIgcNAAsLIAtFDQAgAiALaiEHIA8gAkEDdGohCQNAIAlBADYCACAJQQhqIQkgC0EBayILDQALIAchAgsgBCACNgKQAQsgAiANTQ0CIAQoAowBIA1BA3RqIgIoAgAhByACQgE3AgAgB0UEQCAEIAQoApQBQQFqNgKUAQsgESADQRxqIgNHDQALDAILIARBADYCqAEgBEEBNgKcASAEQdCbwwA2ApgBIARCBDcCoAEgBEGYAWpB2JvDABC5DQALIA0gAkGQhMQAEIULAAsgDgRAIAggDkEcbEEEEOgOCyAEQfwAaiECAkACQAJAAkACQAJAAkAgCg4DAwECAAsgBCgCcCAEKAJ4IgNrIAFJBEAgBEHwAGogAyABQcAAQcAAENgGCyAEKAJ8IAQoAoQBIgNrIAFJBEAgBEH8AGogAyABQQRBBBDYBgtBACEBIARBADYChAEgBCgCeCIIIAQoAnBGBEAgBEHwAGpBsPPCABDDCCAEKAKEASEBCyAEKAJ0IAhBBnRqIgP9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIANBEGr9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIANBIGr9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIANBMGr9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIAQgCEEBajYCeCAEKAJ8IAFGBEAgAkHA88IAELYICyAEKAKAASABQQJ0akEANgIAIAQgAUEBajYChAEgBEHwAGoiAUEAIAYgChA9IAEgBEGYAWoQ/wEMAgsgBCAG/QAEAP0LBIACIAQgBkEQav0ABAD9CwSQAiAEKAJ4IgMgBCgCcEYEQCAEQfAAakHA8sIAEMMICyAEKAJ0IANBBnRqIgEgBP0ABIAC/QsEACAB/QwAAAAAAAAAAAAAAAAAAAAA/QsEICABQRBqIAT9AASQAv0LBAAgAUEwav0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgBCADQQFqNgJ4IAQoAoQBIgEgBCgCfEYEQCACQdDywgAQtggLIAQoAoABIAFBAnRqQQA2AgAgBCABQQFqNgKEAQJAIAQoApABRQ0AIAQoAowBIgEoAgBBAUcNACABQQA2AgQMAgtBkOTCAEEPQeDywgAQ0QsACyAEIAb9AAQA/QsEgAIgBCAG/QAEIP0LBKACIAQgBkEQav0ABAD9CwSQAiAEIAZBMGr9AAQA/QsEsAIgBCgCeCIDIAQoAnBGBEAgBEHwAGpB8PLCABDDCAsgBCgCdCADQQZ0aiIBIAT9AASAAv0LBAAgAUEQaiAE/QAEkAL9CwQAIAFBIGogBP0ABKAC/QsEACABQTBqIAT9AASwAv0LBAAgBCADQQFqNgJ4IAQoAoQBIgEgBCgCfEYEQCACQYDzwgAQtggLIAQoAoABIAFBAnRqQQA2AgAgBCABQQFqNgKEASAEKAKQASICRQ0CIAQoAowBIgEoAgBBAUcNAiABQQA2AgQgAkEBRg0BIAEoAghFDQEgAUEBNgIMCyAMIAT9AAJw/QsCDCAMQSxqIARBkAFqKQIANwIAIAxBHGogBEGAAWr9AAIA/QsCACAEQZgBahCsCSAMQTxqIARBQGsoAgA2AgAgDCAEKQI4NwI0IAwgFTgCVCAMIBY4AlAgDCAb/QsCQCAMIBApAgA3AgAgDEEIaiAQQQhqKAIANgIAIBIkAAwCC0GQ5MIAQQ9BoPPCABDRCwALQZDkwgBBD0GQ88IAENELAAtB2ABBBBCRDiICDQFBBEHYAEH4ysQAKAIAIgBBzAggABsRAAAAC0EAIQIMAwsgAiAFQThqQdgA/AoAAAwCC0EEQZABQZTQwgAQ1w0ACyAFKAKYASIIQRxqIQIDQCACKAIAIgcoAgAhAyAHIANBAWs2AgAgA0EBRgRAIAIQigoLIAJBJGohAiABQQFrIgENAAtBACECIAZFDQAgCCAGQSRsQQQQ6A4LIABB6KnDADYCBCAAIAI2AgAgBUGwAWokAAvmBgENfSAEKgIAIAMqAgAiBpMiByABKgIAIgggBpMiCZQgBCoCBCADKgIEIgaTIgogASoCBCILIAaTIhGUkiAEKgIIIAMqAggiBpMiDCABKgIIIg0gBpMiBZSSIQ4gByAHlCAKIAqUkiAMIAyUkiEGAkACQAJAAkACfQJAAkACQAJAAkACQAJAIAIqAgAgCJMiDyAPlCACKgIEIAuTIhAgEJSSIAIqAgggDZMiDSANlJIiCEMAAAA0X0UEQCAPIAmUIBAgEZSSIA0gBZSSIQkgBkMAAAA0Xw0BQwAAAAAhBSAIIAaUIgsgDyAHlCAQIAqUkiANIAyUkiIHIAeUIgqTIgxDAAAANF5FDQQgDEMAAAA0Xw0EQwAAwH9DAACAPyALmCALIAtcG0MAAMB/QwAAgD8gCpggCiAKXBtcDQMgC7wiASAKvCICSw0CIAIgAWtBBU8NAwwECyAGQwAAADRfRQ0FQwAAAAAhBgwJC0MAAAAAIQYgCYwgCJUiBUMAAAAAXkUNCCAFQwAAgD8gBUMAAIA/XRshBQwDCyABIAJrQQVJDQELIAcgDpQgCSAGlJMgDJUiBUMAAIA/IAVDAACAP10bQwAAAAAgBUMAAAAAXhshBQsgDiAHIAWUkiAGlSIGQwAAAABdRQRAIAZDAACAP15FDQFDAAAAACEGIAcgCZMgCJUiBUMAAAAAXkUNBSAFQwAAgD8gBUMAAIA/XRshBUMAAIA/IQYMAQtDAAAAACEGIAmMIAiVIgVDAAAAAF5FDQUgBUMAAIA/IAVDAACAP10bIQULQwAAAAAhCEEAIQEgBUMAAAAAXA0BIAYMAgtDAAAAACEIQQAhASAOIAaVIgVDAAAAAF5FBEBDAAAAACEGDAULIAVDAACAPyAFQwAAgD9dGwwBCyAFQwAAgD9bBEBDAQAAACEIIAYMAQtDAACAPyAFkyEIQQEhASAGCyEHQwAAAAAhCUEAIQMgB0MAAAAAWwRAIAghBgwECyAHQwAAgD9bBEBDAQAAACEJIAghBgwEC0MAAIA/IAeTIQlBASEDIAghBgwDC0MBAAAAIQlBACEBQQAhAwwCC0EAIQELQQAhA0MAAAAAIQkLIAAgBzgCFCAAIAk4AhAgACADNgIMIAAgBTgCCCAAIAY4AgQgACABNgIAC+cGAgF/Dn0jAEGAAmsiBSQAIAVBuAFqQQA2AgAgBUIANwOwASAF/QwAAAAAAQAAAAIAAAADAAAA/QsEACAFQTRqQQBB+AD8CwAgAioCECIHjCEPIAIqAgwiCIwhEAJAIAggCJQiCiACKgIUIgsgC5QiDpIiDEMAAAAAWwRAIAEqAgQhDAwBCyALjCAMkSIJlSABKgIEIgyUIQYgECAJlSAMlCEJCyAFQQA2ArwBIAVBADYCrAEgBUEANgIwIAVCADcDKCAFIAYgAioCCCIRkyIGOAIkIAUgCSACKgIAIhKTIgk4AhwgBSAGOAIYIAUgCTgCECAFIAEqAgAiCSAPmCACKgIEIhOTIgY4AiAgBSAGOAIUIAVBwAFqIAkgDCAFIAIgAxDMASAFKALAASEBAkACQAJAIARFBEAgAQRAQwAAAAAhBiAFKgLEASINQwAAAABcBEAgACAFKQLIATcCDCAAIA04AgggAEEDNgIAIABBFGogBUHQAWooAgA2AgAMBQsgByAKIAcgB5SSIA6SkSINlSEKQwAAAAAhDiAIIA2VIgcgB5QgCyANlSIIIAiUkiINQwAAAABcBEAgCCANkSIGlSAMlCEOIAcgBpUgDJQhBgsgBSAPOALkASAFIBA4AuABIAVBADYCvAEgBUEANgKsASAFQQA2AjAgBUIANwMoIAUgC4w4AugBIAUgESAIIAogCSAKmCIPIBOTlCAHIAYgEpOUkiAIIA4gEZOUkkNvEoM6kiILlJIiCDgC3AEgBSAOIAiTIgg4AiQgBSATIAogC5SSIgo4AtgBIAUgDyAKkyIKOAIgIAUgEiAHIAuUkiIHOALUASAFIAYgB5MiBzgCHCAFIAg4AhggBSAKOAIUIAUgBzgCECAFQewBaiAJIAwgBSAFQdQBaiALQ28SgzqSEMwBIAUoAuwBQQFHDQIgAyALIAUqAvABkyIDYEUEQCAAQQQ2AgAMBQsgACADOAIIIABBAzYCACAAIAUqAvwBjDgCFCAAIAUqAvgBjDgCECAAIAUqAvQBjDgCDAwECyAAQQQ2AgAMAwsgAQ0BIABBBDYCAAwCCyAAQQQ2AgAMAQsgACAFKQLIATcCDCAAIAUqAsQBOAIIIABBAzYCACAAQRRqIAVB0AFqKAIANgIACyAFQYACaiQAC9wGAgF/EX0jAEGAAmsiBSQAIAVBuAFqQQA2AgAgBUIANwOwASAF/QwAAAAAAQAAAAIAAAADAAAA/QsEACAFQTRqQQBB+AD8CwAgBUEANgK8ASAFQQA2AqwBIAVBADYCMCAFQgA3AyggBSABKgIIIg4gAioCFCIGjCIQIAIqAgwiCCAIlCACKgIQIgogCpSSIAYgBpSSkSIHlSIJmCAJIAEqAgwiCZSSIAIqAggiC5MiDzgCJCAFIAEqAgQiESAKjCISIAeVIgyYIAwgCZSSIAIqAgQiDJMiEzgCICAFIAEqAgAiFCAIjCIVIAeVIg2YIA0gCZSSIAIqAgAiDZMiFjgCHCAFIA84AhggBSATOAIUIAUgFjgCECAFQcABaiABIAUgAiADEMIBIAUoAsABIQICQAJAAkAgBEUEQCACBEAgBSoCxAEiD0MAAAAAXARAIAAgBSkCyAE3AgwgACAPOAIIIABBAzYCACAAQRRqIAVB0AFqKAIANgIADAULIAUgEDgC6AEgBSASOALkASAFIBU4AuABIAVBADYCvAEgBUEANgKsASAFQQA2AjAgBUIANwMoIAYgB5UiBiAGlCAIIAeVIgggCJQgCiAHlSIHIAeUkpKRIQogBSALIAYgBiAOIAYgCpUiBpggCSAGlJIiBiALk5QgCCAUIAggCpUiC5ggCSALlJIiCyANk5QgByARIAcgCpUiCpggCSAKlJIiCiAMk5SSkkNvEoM6kiIJlJIiDjgC3AEgBSAGIA6TIgY4AiQgBSAMIAcgCZSSIgc4AtgBIAUgCiAHkyIHOAIgIAUgDSAIIAmUkiIIOALUASAFIAsgCJMiCDgCHCAFIAY4AhggBSAHOAIUIAUgCDgCECAFQewBaiABIAUgBUHUAWogCUNvEoM6khDCASAFKALsAUEBRw0CIAMgCSAFKgLwAZMiA2BFBEAgAEEENgIADAULIAAgAzgCCCAAQQM2AgAgACAFKgL8AYw4AhQgACAFKgL4AYw4AhAgACAFKgL0AYw4AgwMBAsgAEEENgIADAMLIAINASAAQQQ2AgAMAgsgAEEENgIADAELIAAgBSkCyAE3AgwgACAFKgLEATgCCCAAQQM2AgAgAEEUaiAFQdABaigCADYCAAsgBUGAAmokAAuGBgEJfQJAIAEtAOUCQQFGBEAgACABKgI8IgkgACoCZCIDlCABKgIwIgUgACoCWCIElJMgASoCNCIGIAAqAlwiCpSTIAEqAjgiByAAKgJgIguUkzgCZCAAIAcgA5QgBSAKlCAJIAuUkiAGIASUk5I4AmAgACAHIASUIAYgA5QgCSAKlCAFIAuUk5KSOAJcIAAgBiALlCAJIASUIAUgA5SSkiAHIAqUkzgCWCAFIAAqAmwiCpQgBiAAKgJoIguUkyIDIAOSIQMgByALlCAFIAAqAnAiCJSTIgQgBJIhBCAAIAEqAkggCCAJIAOUIAUgBJQgBiAGIAiUIAcgCpSTIgggCJIiCJSTkpKSOAJwIAAgASoCRCAKIAkgBJQgByAIlCAFIAOUk5KSkjgCbCAAIAEqAkAgCyAJIAiUIAYgA5QgByAElJOSkpI4AmgMAQsgACAAKgJoIAEqApgCkzgCaCAAIAAqAmwgASoCnAKTOAJsIAAgACoCcCABKgKgApM4AnALIAItAOUCQQFGBEAgACACKgI8IgkgACoCgAEiA5QgAioCMCIFIAAqAnQiBJSTIAIqAjQiBiAAKgJ4IgqUkyACKgI4IgcgACoCfCILlJM4AoABIAAgByADlCAFIAqUIAkgC5SSIAYgBJSTkjgCfCAAIAcgBJQgBiADlCAJIAqUIAUgC5STkpI4AnggACAGIAuUIAkgBJQgBSADlJKSIAcgCpSTOAJ0IAUgACoCiAEiCpQgBiAAKgKEASILlJMiAyADkiEDIAcgC5QgBSAAKgKMASIIlJMiBCAEkiEEIAAgAioCSCAIIAkgA5QgBSAElCAGIAYgCJQgByAKlJMiCCAIkiIIlJOSkpI4AowBIAAgAioCRCAKIAkgBJQgByAIlCAFIAOUk5KSkjgCiAEgACACKgJAIAsgCSAIlCAGIAOUIAcgBJSTkpKSOAKEAQ8LIAAgACoChAEgAioCmAKTOAKEASAAIAAqAogBIAIqApwCkzgCiAEgACAAKgKMASACKgKgApM4AowBC8IGAgZ/BH0jAEFAaiIDJAAgAUEIaiIEKgIAIQsgASoCACEJIAEqAgQhDEEUIQUgA0EUaiAEKAIANgIAIAMgC4w4AgggAyAMjDgCBCADIAmMOAIAIAMgASkCADcCDEEAIQEgA0EkaiIGIAMgAkEAEIYDIANBIGoiBCAGQQhqKAIANgIAIAMgAykCJDcDGCADLQAwIQICQAJAAkACQAJAAkAgAyoCPEMAAAAAWyIGIAMqAjgiCkMAAAAAWyIIIAMqAjRDAAAAAFtqaiIHQQJrDgIBAgALIAAgAykDGDcCACAAIAI6AAwgACAHQQBHNgIQIABBCGogBCgCADYCACADKgIcIAMqAhAgDJNDAAAAP5RdQQF0IAMqAhggAyoCDCAJk0MAAAA/lF1yIAQqAgAgAyoCFCALk0MAAAA/lF1BAnRyIgFBAnRBAiAIIAYbciABIAcbIQEMBAsgCkMAAAAAXEECIAYbIgFBAnQiBSADQRhqIgRqKgIAIQogAyADKgIUIAuTQwAAAD+UOAIsIAMgAyoCECAMk0MAAAA/lDgCKCADIAMqAgwgCZNDAAAAP5Q4AiQgCiADQSRqIAVqKgIAXUUEQCAAIAMpAxg3AgAgAEECNgIQIAAgAjoADCAAQQhqIARBCGooAgA2AgAMAgsgACADKQMYNwIAIABBAjYCECAAIAI6AAwgAEEIaiADQSBqKAIANgIAIAFBA2ohAQwBCwJAAkAgAyoCGCIKIAMqAgxDAAAAtJJeDQBDAAAANCAJkyAKYARAQQMhAQwCCyADKgIcIgkgAyoCEEMAAAC0kl4EQEEBIQEMAQtDAAAANCAMkyAJYARAQQQhAQwCCyADKgIgIgkgAyoCFEMAAAC0kl4EQEECIQEMAQsgCUMAAAA0IAuTX0UNA0EFIQEMAQsgACADKQMYNwIAIABBAjYCECAAIAI6AAwgAEEIaiADQSBqKAIANgIADAELIAAgAykDGDcCACAAQQI2AhAgACACOgAMIABBCGogA0EgaigCADYCAAtBFCEFDAELIAAgAykDGDcCACAAIAI6AAwgAEEIaiADQSBqKAIANgIAQQMhAUEQIQULIAAgBWogATYCACADQUBrJAAL4AUCDH8DfiMAQaABayIJJAAgCUEAQaAB/AsAAkACQAJAIAAoAqABIgQgAk8EQCAEQSlPDQEgASACQQJ0aiELAkACQCAEBEAgBEEBaiEKIARBAnQhDANAIAkgBkECdGohAwNAIAYhAiADIQUgASALRg0IIANBBGohAyACQQFqIQYgASgCACEIIAFBBGoiDSEBIAhFDQALIAitIRFCACEPIAwhCCACIQEgACEDA0AgAUEoTw0EIAUgDyAFNQIAfCADNQIAIBF+fCIQPgIAIBBCIIghDyAFQQRqIQUgAUEBaiEBIANBBGohAyAIQQRrIggNAAsgByAQQoCAgIAQWgR/IAIgBGoiAUEoTw0DIAkgAUECdGogDz4CACAKBSAECyACaiIBIAEgB0kbIQcgDSEBDAALAAsDQCABIAtGDQYgBUEBaiEFIAEoAgAhAiABQQRqIQEgAkUNACAHIAVBAWsiAiACIAdJGyEHDAALAAsgAUEoQejCxAAQhQsACyABQShB6MLEABCFCwALIARBKU8NASACQQJ0IQwgAkEBaiELIAAgBEECdGohDiAAIQMCQANAIAkgCEECdGohBgNAIAghBCAGIQUgAyAORg0FIAVBBGohBiAEQQFqIQggAygCACEKIANBBGoiDSEDIApFDQALIAqtIRFCACEPIAwhCiAEIQMgASEGA0AgA0EoTw0CIAUgDyAFNQIAfCAGNQIAIBF+fCIQPgIAIBBCIIghDyAFQQRqIQUgA0EBaiEDIAZBBGohBiAKQQRrIgoNAAsCQCAHIBBCgICAgBBaBH8gAiAEaiIDQShPDQEgCSADQQJ0aiAPPgIAIAsFIAILIARqIgMgAyAHSRshByANIQMMAQsLIANBKEHowsQAEIULAAsgA0EoQejCxAAQhQsACyAEQShB6MLEABDwDgALIARBKEHowsQAEPAOAAsgACAJQaAB/AoAACAAIAc2AqABIAlBoAFqJAAL3gYCCH8CfiMAQTBrIgMkACABKAIAIQEgACgCACEIIAAoAgQiBC0AgAEhAiAEQQE6AIABIAMgAjoACAJAAkACQCACQQFHBEAgASABKAIAIgJBAWo2AgAgAkEASA0BIAQoAowBIgIgBCgChAFGBEAgBEGEAWpB1N7BABCRCAsgBCACQQFqIgU2AowBIAQoAogBIAJBDGxqIgJBADYCCCACIAg2AgQgAiABNgIAQQAhAiAFRQRAIAQoApgBRSECCyAEQQA6AIABIAQgAjoAnAEgBCgCxAEgBCgCAGogBCgCQCICIAQoAsgBIgVBf3NxRw0CIAIgBXENAgwDCyADQgA3AiQgA0KBgICAwAA3AhwgA0GU38EANgIYIANBCGogA0EYakGc38EAEPsMCwALIAEgASgCDCICQQEgAhs2AgwLAkACQAJAAkACQCAAKAIIIgAoAggiAkGAlOvcA0cEQCAAKQMAIQoDQCABKAIMIgAEQCAAQQFrQQJPDQQMAwsQkQ0CQAJAIAogAykDCCILUQRAIAIgAygCECIASw0BDAILIAogC1gNASADKAIQIQALIANBGGogCiACIAsgABCJCgwBCwsgASABKAIMIgBBASAAGzYCDCAARQ0BIABBAWtBAkkNASAADQJB7NzBAEEoQZTewQAQ1gwACwNAIAEoAgwiAEUNAAsgAEEBa0ECTw0BCyAELQCAASEAIARBAToAgAEgAyAAOgAIIABBAUYNAiAEKAKIASIAQQxrIQIgBCgCjAEiBUEMbCEBQX8hBgJAA0AgAUUEQEEAIQAMAgsgBkEBaiEGIAJBDGohAiABQQxrIQEgACgCBCEJIABBDGohACAIIAlHDQALIAUgBk0NBCACQQRqKQIAIQogAigCACEAIAEEQCACIAJBDGogAfwKAAALIAQgBUEBayIFNgKMAQsgBUUEQCAEKAKYAUUhBwsgBEEAOgCAASAEIAc6AJwBIABFDQEgAyAKNwIcIAMgADYCGCAAIAAoAgAiAEEBazYCACAAQQFHDQAgA0EYahDXCwsgA0EwaiQADwtBpN7BABDyDgALIANCADcCJCADQoGAgIDAADcCHCADQZTfwQA2AhggA0EIaiADQRhqQZzfwQAQ+wwACyAGIAVBxN7BABCECwALvgYBC38jAEGAAWsiByQAAkACQAJAIABFDQAgAEEIayINKAIAQQFqIQggDSAINgIAIAhFDQEgACgCACIIQX9GDQIgACAIQQFqNgIAIAcgDTYCFCAHIAA2AhAgByAAQQRqNgIMIAFFDQAgAUEIayIIKAIAQQFqIQkgCCAJNgIAIAlFDQEgASgCACIJQX9GDQIgASAJQQFqNgIAIAcgCDYCICAHIAE2AhwgByABQQRqIg42AhggAkUNACACQQhrIgkoAgBBAWohCiAJIAo2AgAgCkUNASACKAIAIgpBf0YNAiACIApBAWo2AgAgByAJNgIsIAcgAjYCKCAHIAJBBGoiDzYCJCADRQ0AIANBCGsiCigCAEEBaiELIAogCzYCACALRQ0BIAMoAgAiC0F/Rg0CIAMgC0EBajYCACAHIAo2AjggByADNgI0IAcgA0EEaiIQNgIwIARFDQAgBEEIayILKAIAQQFqIQwgCyAMNgIAIAxFDQEgBCgCACIMQX9GDQIgBCAMQQFqNgIAIAcgCzYCRCAHIAQ2AkAgByAEQQRqNgI8IAcgD/0AAgD9CwNIIAdB4ABqIA5BCGooAgA2AgAgByAOKQIANwNYIAAoAgQhDiAAKAIIIgwoAgghDyAHQegAaiIRQQhqIBBBCGooAgA2AgAgByAQKQIANwNoIAdB/ABqIARBDGooAgA2AgAgByAEKQIENwJ0IAcgDiAPQQFrQXhxakEIaiAHQcgAaiARIAUgBkEARyAMKAIYEQkAIAcqAgQhBSAHKAIAIQYgBCAEKAIAQQFrNgIAIAsgCygCAEEBayIENgIAIARFBEAgB0HEAGoQqQ0LIAMgAygCAEEBazYCACAKIAooAgBBAWsiAzYCACADRQRAIAdBOGoQqQ0LIAIgAigCAEEBazYCACAJIAkoAgBBAWsiAjYCACACRQRAIAdBLGoQpQ0LIAEgASgCAEEBazYCACAIIAgoAgBBAWsiATYCACABRQRAIAdBIGoQqQ0LIAAgACgCAEEBazYCACANIA0oAgBBAWsiADYCACAARQRAIAdBFGoQ4AsLIAdBgAFqJAAgBUMAAIC/IAZBAXEbDwsQgw8LAAsQhA8AC/MHAwx/DX0BeyMAQbACayIDJAAgAyABNgIcIANBIGoiAUEgaiACQSBqKAIANgIAIAFBEGogAkEQav0AAgD9CwMAIAMgAv0AAgD9CwMgIANB4ABqIAIgACgCACIFEPIFIAAoAgQiBioCACIVQwAAAABgBEAgAyoCZCEWIAMqAmAhFyADKgJ8IRMgAyoCeCEUIAMqAnAhGCADKgJsIRkgAyADKgKAASIRIBEgAyoCdCISIBIgAyoCaCIPIA8gEl0iARsgDyAPXBsiECAQIBFdGyAQIBBcGyAVkiIaOAJcIAMgEyATIBggGCAWIBYgGF0iAhsgFiAWXBsiECAQIBNdGyAQIBBcGyAVkiIbOAJYIAMgFCAUIBkgGSAXIBcgGV0iBBsgFyAXXBsiECAQIBRdGyAQIBBcGyAVkiIQOAJUIAMgDyAPIBIgARsgEiASXBsiDyAPIBEgDyARXRsgESARXBsgFZMiETgCUCADIBYgFiAYIAIbIBggGFwbIg8gDyATIA8gE10bIBMgE1wbIBWTIhI4AkwgAyAXIBcgGSAEGyAZIBlcGyIPIA8gFCAPIBRdGyAUIBRcGyAVkyIPOAJIAn9BACAAKAI0IgQoAghFDQAaIAQoAgQiAUEAIAEqAhggEWAbQQAgASoCFCASYBtBACABKgIQIA9gG0EAIAEqAgggGl8bQQAgASoCBCAbXxtBACABKgIAIBBfGyEHQQAgASgCPEH/////A3FFDQAaIAFBIGohCCABKgIgIBBfIAEqAiQgG19xIAEqAiggGl9xIAEqAjAgD2BxIAEqAjQgEmBxIAEqAjggEWBxCyECIAAoAjAhCSAAKAIsIQogACgCKCELIAAoAiQhDCAA/QACFCEcIAAoAhAhDSAAKAIMIQEgACgCCCEOIAMgBzYC8AEgAyAENgLoASADIAI2AuQBIAMgCDYCZCADQQA2AmAgAyADQcgAajYC7AEgA0EQaiADQeAAahDZAyADKAIQQQFxBEAgAygCFCEAIAEoAgwhAQNAIAMgADYC9AEgAyAJNgKsAiADIAY2AqgCIAMgBTYCoAIgAyAKNgKcAiADIAs2ApgCIAMgDDYClAIgAyAc/QsChAIgAyANNgL4ASADIANBIGo2AqQCIAMgA0H0AWo2AoACIAMgA0EcajYC/AEgDiAAIANB+AFqQYT7wgAgARECACADQQhqIANB4ABqENkDIAMoAgwhACADKAIIQQFxDQALCyADKALkASIAQSFPBEAgAygCaCAAQQJ0QQQQ6A4LIANBsAJqJAAPCyADQQA2AnAgA0EBNgJkIANB6ODCADYCYCADQgQ3AmggA0HgAGpB8ODCABC5DQALowgDA38Lewt9IwBB4ABrIggkACAIQQhqIAIgByoCBCIYENwCIAgqAhAiGiAGKgIAIhmUIAgqAggiFiAG/V0CBCIL/R8BlJMiFyAXkiEXIAv9HwAgCCoCFCIbIBeUIBogCP1dAwgiDSAL/eYBIAj9XQIMIg4gGf0TIAv9DQABAgMQERITAAECAwABAgP95gH95QEiDCAM/eQBIgz9HwGUIBYgDP0fAJSTkpIiHv0TIg8gCyAL/Q0EBQYHAAECAwABAgMAAQIDIBn9IAEgG/0TIAz95gEgDSAX/RMgDP0NAAECAxAREhMAAQIDAAECA/3mASAOIAwgC/0NBAUGBwABAgMAAQIDAAECAyAX/SAB/eYB/eUB/eQB/eQBIg39DQABAgMQERITAAECAwABAgMhEiAPIA39DRQVFhcEBQYHAAECAwABAgMhEyAN/R8BIR8gDf0fACEgIAX9EyEUIAcqAgghFyAHKgIAIRlBACEGAkADQCAHIBgCfSABQwAAAABdRQRAIAFDAACgNV5FDQMgByAYOAIAIBghGSAXDAELIAcgGDgCCCAYIRcgGQuSQwAAAD+UIhg4AgQgFyAZk0MAAKA1XUUEQCAIQShqIgkgAiAYENwCIAhBxABqIgogBCAYENwCIAgqAigiAf0TIAj9XQIsIgv9DQABAgMQERITAAECAwABAgMhDiALIApBEGogCP1cAlz9VgIAASAJQRBqIAj9XAJA/VYCAAH95QEiDyAL/Q0EBQYHAAECAwABAgMAAQIDIAgqAlggCCoCPJMiG/0gAf3mASAOIBv9EyAP/Q0AAQIDEBESEwABAgMAAQID/eYB/eUBIgwgDP3kASEMIA0gCCoCNCId/RMiFSATIAv95gEgEiAO/eYB/eUBIhAgEP3kASIQ/eYBIAsgECAL/Q0EBQYHAAECAwABAgMAAQIDICAgAZQgHyAIKgIwIhqUkyIWIBaSIhb9IAH95gEgDiAW/RMgEP0NAAECAxAREhMAAQIDAAECA/3mAf3lAf3kAf3kASIRIA8gFSAM/eYBIAsgDCAL/Q0EBQYHAAECAwABAgMAAQIDIAEgD/0fAJQgGiAP/R8BlJMiHCAckiIc/SAB/eYBIA4gHP0TIAz9DQABAgMQERITAAECAwABAgP95gH95QH95AH95AEgFCAR/eYB/eUB/eYBIgv9HwAgC/0fASAeIB0gFpQgASAQ/R8AlCAaIBD9HwGUk5KSIhYgGyAdIByUIAEgDP0fAJQgGiAM/R8BlJOSkiAFIBaUk5SSkiAR/R8AIgEgAyABlJQgEf0fASIBIAMgAZSUIBYgAyAWlJSSkpMhASAGQQFqIQYMAQsLIAcgFzgCBAsgACAGNgIMIAAgBykCADcCACAAQQhqIAdBCGooAgA2AgAgCEHgAGokAAvzBQIBfwl9IwBB4ABrIgYkACACKgIEIgwgAyoCDCIIlCACKgIAIg0gAyoCECIOlJMiCyALkiEHIAIqAggiCyAOlCAMIAMqAhQiCpSTIg8gD5IhCSAGIAogAioCDCIPIAeUIAwgCZQgDSANIAqUIAsgCJSTIgogCpIiCpSTkpI4AhggBiAOIA8gCpQgDSAHlCALIAmUk5KSOAIUIAYgCCAPIAmUIAsgCpQgDCAHlJOSkjgCECAMIAMqAgAgAioCEJMiCJQgDSADKgIEIAIqAhSTIg6UkyIHIAeSIQcgDiALlCADKgIIIAIqAhiTIgogDJSTIgkgCZIhCSAGIAogDyAHlCAMIAmUIA0gCiANlCAIIAuUkyIKIAqSIgqUk5KSOAIMIAYgDiAPIAqUIA0gB5QgCyAJlJOSkjgCCCAGIAggDyAJlCALIAqUIAwgB5STkpI4AgQgAUEIaiICKgIAIQcgASoCACEJIAEqAgQhCCAGQTBqIAIoAgA2AgAgBiAHjDgCJCAGIAiMOAIgIAYgCYw4AhwgBiABKQIANwIoIAZBNGogBkEcaiAGQQRqIAZBEGoQsQECQAJAIAYoAjRBAUcNAEMAAAAAIQcCfSAGKgI4IghDAAAAAF1FBEAgBCAIYEUNAiAGKAJIIQIgBioCRCEHIAYqAjwhCSAGKgJADAELIAYoAlwhAiAFBEBDAAAAACEJQwAAAAAhCEMAAAAADAELIAYqAkwiCCAEX0UNASAGKgJYIQcgBioCUCEJIAYqAlQLIQQgACAIOAIIIABBAjYCACAAQQIgAmsgAkEBayACQQBIGzYCBCAAIAcgDyANIASUIAwgCZSTIgggCJIiCJQgDSALIAmUIA0gB5STIg4gDpIiDpQgDCAMIAeUIAsgBJSTIgcgB5IiB5STkpI4AhQgACAEIA8gDpQgCyAHlCANIAiUk5KSOAIQIAAgCSAPIAeUIAwgCJQgCyAOlJOSkjgCDAwBCyAAQQQ2AgALIAZB4ABqJAAL6gUBBH8CQAJAAkACQAJAAkACQAJAIAIgBEYgAyAFRnFFBEAgASgCECEIIAEoAgwhBiACIARHBEACfwJAAkAgAiAISQRAIAQgCE8NASAGIAQgAiACIARJG0GwAWxqIQcgAiAETw0CIAchCCAGIAJBsAFsagwDCyAEIAhPDQogBiAEQbABbGoiAigCAEUNCgwJCyAGIAJBsAFsaiIIKAIAQQFHDQkgCCgCBCADRw0JDAYLIAIgBE0NAyAGIARBsAFsaiEIIAcLIQZBACEHIAYoAgAEQCAGQRBqQQAgBigCBCADRhshCQsgCCgCAEEBRgRAIAhBEGpBACAIKAIEIAVGGyEHCyAJRQ0IDAULIAMgBUYNAiADIAVNBEAgAiAITw0HIAYgAkGwAWxqIgIoAgANBgwHCyACIAhPDQYgBiACQbABbGoiCCgCAEEBRw0GIAgoAgQgA0YNAwwGCyACIAEoAhBPDQcgASgCDCACQbABbGoiBCgCAEEBRw0HIAQoAgQgA0cNByAEQRBqIQkgBCgCgAEiBUEBcQ0HIAQgBUEBcjYCgAEgASgCJCIEIAEoAhxGBEAgAUEcakGIjsIAELQICyABIARBAWo2AiQgASgCICAEQQN0aiIBIAM2AgQgASACNgIADAcLIAQgBEHwisIAEIULAAtBgIvCAEEwQbCLwgAQ1gwACyAGIAJBsAFsakEQaiEJCyAJKAJwIgZBAXENAiAJIAZBAXI2AnAgASgCJCIGIAEoAhxGBEAgAUEcakGIjsIAELQICyABIAZBAWo2AiQgASgCICAGQQN0aiIGIAM2AgQgBiACNgIADAILIAJBEGpBACACKAIEIAVGGyEHCwsgB0UNACAHKAJwIgJBAXENACAHIAJBAXI2AnAgASgCJCICIAEoAhxGBEAgAUEcakGIjsIAELQICyABIAJBAWo2AiQgASgCICACQQN0aiIBIAU2AgQgASAENgIACyAAIAk2AgAgACAHNgIEC9gFAgp9B38gAioCCCEJIAIqAgAhCiACKgIEIQsgAioCDCEMIAEoAgQhDgJAAkACQAJAIAEoAggiEA4CAgEACyAJIAMqAgQiCJQgCyADKgIIIgaUkyIEIASSIQcgCiAGlCAJIAMqAgAiBJSTIgUgBZIhBSAEIAwgB5QgCSAFlCALIAsgBJQgCiAIlJMiBCAEkiINlJOSkiIEIA4qAgyUIAggDCAFlCAKIA2UIAkgB5STkpIiCCAOQRBqKgIAlJIgBiAMIA2UIAsgB5QgCiAFlJOSkiIHIA5BFGoqAgCUkiIFIAQgDioCAJQgCCAOQQRqKgIAlJIgByAOQQhqKgIAlJIiBl4iASEPQQIhAyAQQQJGDQAgBSAGIAEbIQUgEEH9////A2ohEiAOQRhqIQEgEEH/////A3FBA0cEQCASQf////8DcUEBakH+////B3EhFANAIAQgASoCAJQgCCABQQRqKgIAlJIgByABQQhqKgIAlJIiBiAFXiERIAQgAUEMaioCAJQgCCABQRBqKgIAlJIgByABQRRqKgIAlJIiDSAGIAUgERsiBV4hEyANIAUgExshBSADQQFqIAMgDyARGyATGyEPIAFBGGohASADIBRHIREgA0ECaiEDIBENAAsLIBJBAXENACADIA8gBCABKgIAlCAIIAFBBGoqAgCUkiAHIAFBCGoqAgCUkiAFXhshDwsgDyAQTw0BIAAgAioCGCAOIA9BDGxqIgEqAggiBCAMIAogASoCBCIIlCALIAEqAgAiB5STIgUgBZIiBZQgCiAJIAeUIAogBJSTIgYgBpIiBpQgCyALIASUIAkgCJSTIgQgBJIiBJSTkpKSOAIIIAAgAioCFCAIIAwgBpQgCSAElCAKIAWUk5KSkjgCBCAAIAIqAhAgByAMIASUIAsgBZQgCSAGlJOSkpI4AgAPC0EAQQBBgITEABCFCwALIA8gEEGox8MAEIULAAu/DAILfwR9IwBBoAhrIgckAAJAAkACQAJAIABFDQAgAEEIayIKKAIAQQFqIQYgCiAGNgIAIAZFDQEgACgCACIGQX9GDQIgACAGQQFqNgIAIAcgCjYCFCAHIAA2AhAgByAAQQRqIgs2AgwgAUUNACABQQhrIgwoAgBBAWohBiAMIAY2AgAgBkUNASABKAIAIgZBf0YNAiABIAZBAWo2AgAgByAMNgIgIAcgATYCHCAHIAFBBGoiDTYCGCACRQ0AIAJBCGsiCSgCACIIQQFqIQYgCSAGNgIAIAZFDQEgAigCACIGQX9GDQIgAiAGQQFqNgIAIAcgCTYCLCAHIAI2AiggByACQQRqNgIkAkAgAioCBCISIBKUIAIqAggiEyATlJIgAioCDCIRIBGUkiIUQwAAAABeRQRAIAIgBjYCACAJIAg2AgBBAiEDDAELIAcgESAUkSIRlTgC/AIgByATIBGVOAL4AiAHIBIgEZU4AvQCIwBBkAFrIggkACAHQYADaiIG/QwAAAAAAAAAAAAAAAAAAAAA/QsEkAEgCP0MAAAAAAAAAAAAAAAAAAAAAP0LAwggCP0MAAAAAAAAAAAAAAAAAAAAAP0LAHAgCP0MAAAAAAAAAAAAAAAAAAAAAP0LAF0gCP0MAAAAAAAAAAAAAAAAAAAAAP0LAEogCP0MAAAAAAAAAAAAAAAAAAAAAP0LADcgCP0MAAAAAAAAAAAAAAAAAAAAAP0LACQgCEGAAWoiDiAHQfQCaiIPEK4EIAZB4ABqIA5BCGoiECgCADYCACAGIAgpAoABNwJYIAgqAowBIRIgDiAPEK4EIAhBHGogECgCADYCACAIIAgpAoABNwIUIAgqAowBIRMgBiASOAJkIAZC////+wc3A1AgBv0M//9/////f38AAAAA//9///0LBEAgBv0MAAAAAP//f////39/AAAAAP0LBDAgBv0M//9/fwAAAAD//3////9/f/0LBCAgBv0M//9/////f38AAAAA//9///0LBBAgBv0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgBiAIKQMINwNoIAZB8ABqIAhBEGopAwA3AwAgBkH4AGogCEEYaikDADcDACAGQQA6AKgBIAZC////+wc3A6ABIAZBADYCjAEgBkIANwKEASAGIBM4AoABIAZC////+wc3ArwBIAZBADoAxAEgBkL////7BzcD2AEgBkEAOgDgASAGQv////sHNwL0ASAGQQA6APwBIAZBuAFqIAhB/ABqKAAANgAAIAYgCP0AAG39CwCpASAGQdQBaiAIQekAaigAADYAACAGIAj9AABa/QsAxQEgBkHwAWogCEHWAGooAAA2AAAgBiAI/QAAR/0LAOEBIAZBADoAmAIgBkL////7BzcDkAIgBkEAOgC0AiAGQT42ArgCIAZBgAI7AbwCIAZC////+wc3AqwCIAZBjAJqIAhBwwBqKAAANgAAIAYgCP0AADT9CwD9ASAGIAj9AAAh/QsAmQIgBkGoAmogCEEwaigAADYAACAIQZABaiQAIAdB8ANqIAtBCGooAgA2AgAgB0GMBGogDUEIaigCADYCACAHIAspAgA3A+gDIAcgDSkCADcChAQgAwRAIAdB0AVqIgMgBkHAAvwKAAAgByAFOALMBSAHIAQ4AsgFIAMgB0HIBWopAgA3AxAgAyADLQC5AkEBcjoAuQIgBiADQcAC/AoAAAsgB0EwaiAHQYADakG9AvwKAAAgCSgCACEGIAcvAb4FIQsgBy0AvQUhAyACIAIoAgBBAWs2AgAgCSAGQQFrIgI2AgAgAg0AIAdBLGoQqQ0LIAEgASgCAEEBazYCACAMIAwoAgBBAWsiATYCACABRQRAIAdBIGoQqQ0LIAAgACgCAEEBazYCACAKIAooAgBBAWsiADYCACAARQRAIAdBFGoQqQ0LQQAhAiADQQJHBEAgB0HcBWogB0EwakG9AvwKAABB4AJBEBCRDiIARQ0EIABBADYCECAAQoGAgIAQNwMAIABBFGogB0HQBWpByQL8CgAAIAAgCzsB3gIgACADOgDdAiAA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AAAAAAAA/QsAXSAE/QwAAAAAAAAAAAAAAAAAAAAA/QsASiAE/QwAAAAAAAAAAAAAAAAAAAAA/QsANyAE/QwAAAAAAAAAAAAAAAAAAAAA/QsAJCAEQYABaiILIAVB9AJqIgwQrgQgA0HgAGogC0EIaiINKAIANgIAIAMgBCkCgAE3AlggBCoCjAEhDyALIAwQrgQgBEEcaiANKAIANgIAIAQgBCkCgAE3AhQgBCoCjAEhECADIA84AmQgA0L////7BzcDUCAD/Qz//3////9/fwAAAAD//3///QsEQCAD/QwAAAAA//9/////f38AAAAA/QsEMCAD/Qz//39/AAAAAP//f////39//QsEICAD/Qz//3////9/fwAAAAD//3///QsEECAD/QwAAAAAAAAAAAAAAAAAAAAA/QsEACADIAQpAwg3A2ggA0HwAGogBEEQaikDADcDACADQfgAaiAEQRhqKQMANwMAIANBADoAqAEgA0L////7BzcDoAEgA0EANgKMASADQgA3AoQBIAMgEDgCgAEgA0L////7BzcCvAEgA0EAOgDEASADQv////sHNwPYASADQQA6AOABIANC////+wc3AvQBIANBADoA/AEgA0G4AWogBEH8AGooAAA2AAAgAyAE/QAAbf0LAKkBIANB1AFqIARB6QBqKAAANgAAIAMgBP0AAFr9CwDFASADQfABaiAEQdYAaigAADYAACADIAT9AABH/QsA4QEgA0EAOgCYAiADQv////sHNwOQAiADQQA6ALQCIANBNzYCuAIgA0GAAjsBvAIgA0L////7BzcCrAIgA0GMAmogBEHDAGooAAA2AAAgAyAE/QAANP0LAP0BIAMgBP0AACH9CwCZAiADQagCaiAEQTBqKAAANgAAIARBkAFqJAAgBUHwA2ogCEEIaigCADYCACAFQYwEaiAKQQhqKAIANgIAIAUgCCkCADcD6AMgBSAKKQIANwKEBCAFQTBqIANBvQL8CgAAIAYoAgAhBCAFLwG+BSEIIAUtAL0FIQMgAiACKAIAQQFrNgIAIAYgBEEBayICNgIAIAINACAFQSxqEKkNCyABIAEoAgBBAWs2AgAgCSAJKAIAQQFrIgE2AgAgAUUEQCAFQSBqEKkNCyAAIAAoAgBBAWs2AgAgByAHKAIAQQFrIgA2AgAgAEUEQCAFQRRqEKkNC0EA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kAlqIQIgDv0MBAAAAAQAAAAEAAAABAAAAP2uASEOIANBBGsiAw0ACyABIARGDQELIAkgBkGkAmxqIQIgCCAKayIJQQFrIQRBACEDA0AgAkGAgICAeDYCACACQQRqIAxBASADIARGIgEbNgIAIAJBCGogCyAKIANBAWoiA2ogARs2AgAgAkGkAmohAiADIAlHDQALIAMgBmohBgsgACAHNgIEIABBATYCACAAIAY2AhAgBUEgaiQAC6MFAQp/AkACQCAAKAIIIgQgAU8EQCAAIAE2AgggASAERwRAIAQgAWshBCAAKAIEIAFBBHRqIQMDQCADKAIAIgAEQCADQQRqKAIAIABBAnRBBBDoDgsgA0EQaiEDIARBAWsiBA0ACwsgAigCACIARQ0BIAIoAgQgAEECdEEEEOgODwsgAigCDCEGIAIoAgghCCACKAIEIQogAigCACELIAQhBSABIARrIgkgACgCACAEa0sEQCAAIAQgCUEEQRAQ1wYgACgCCCEFCyAAKAIEIAVBBHRqIQMCQCAJQQJJDQAgCEECdCEHIAhB/////wNLDQIgB0H8////B0sNAiAHBEAgBEF/cyABaiECIAUgCWpBAWshBUEEIQwDQCAHQQQQkQ4iAUUNBCAHBEAgASAKIAf8CgAACyADQQxqIAY2AgAgA0EIaiAINgIAIANBBGogATYCACADIAg2AgAgA0EQaiEDIAJBAWsiAg0ACwwBCyABIARBf3NqIgFBA3EhAiAJQQJrQQNPBEAgAUF8cSEBA0AgA0KAgICAwAA3AgAgA0E8aiAGNgIAIANBOGpBADYCACADQTBqQoCAgIDAADcCACADQSxqIAY2AgAgA0EoakEANgIAIANBIGpCgICAgMAANwIAIANBHGogBjYCACADQRhqQQA2AgAgA0EQakKAgICAwAA3AgAgA0EMaiAGNgIAIANBCGpBADYCACADQUBrIQMgAUEEayIBDQALCyACBEADQCADQoCAgIDAADcCACADQQxqIAY2AgAgA0EIakEANgIAIANBEGohAyACQQFrIgINAAsLIAUgCWpBAWshBQsgAyAGNgIMIAMgCDYCCCADIAo2AgQgAyALNgIAIAAgBUEBajYCCAsPCyAMIAdBgPzBABDXDQALvQUBC38jAEEgayICJAACQCABKAIEIgNFBEAgAEGAgICAeDYCAAwB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A0AgAyAGTw0CIAcgA0GAA2xqIgwoAvACIgMgAkcNAAsgDEHwAmogCTYCAAwBCyAMQQhqIAk2AgALIAggC08NACAOQiCIpyEJIAIgBCAIQQR0aiIIKAIMIgNHBEADQCADIAZPDQIgByADQYADbGoiCCgC9AIiAyACRw0ACyAIQfQCaiAJNgIADAELIAhBDGogCTYCAAsgCiAFQYAD/AoAACAFIAcgBkEBayIDQYADbGpBgAP8CgAAIAEgAzYCFAJAIAIgA08NACAHIAJBgANsaikD+AIiDaciASALTw0AIA1CIIinIQYCQCAEIAFBBHRqIgUoAggiASADRwRAA0AgASADTw0CIAMgByABQYADbGoiBSgC8AIiAUcNAAsgBUHwAmogAjYCAAwBCyAFQQhqIAI2AgALIAYgC08NACAEIAZBBHRqIgQoAgwiASADRwRAA0AgASADTw0CIAMgByABQYADbGoiBCgC9AIiAUcNAAsgBEH0AmogAjYCAAwBCyAEQQxqIAI2AgALIAAgCkHwAvwKAAALIApBgANqJAALvgQBCH8jAEEQayIDJAAgAyABNgIEIAMgADYCACADQqCAgIAONwIIAn8CQAJAAkAgAigCECIJBEAgAigCFCIADQEMAgsgAigCDCIARQ0BIAIoAggiASAAQQN0aiEEIABBAWtB/////wFxQQFqIQYgAigCACEAA0ACQCAAQQRqKAIAIgVFDQAgAygCACAAKAIAIAUgAygCBCgCDBEFAEUNAEEBDAULQQEgASgCACADIAFBBGooAgARAwANBBogAEEIaiEAIAFBCGoiASAERw0ACwwCCyAAQRhsIQogAEEBa0H/////AXFBAWohBiACKAIIIQQgAigCACEAA0ACQCAAQQRqKAIAIgFFDQAgAygCACAAKAIAIAEgAygCBCgCDBEFAEUNAEEBDAQLQQAhB0EAIQgCQAJAAkAgBSAJaiIBQQhqLwEAQQFrDgIBAgALIAFBCmovAQAhCAwBCyAEIAFBDGooAgBBA3RqLwEEIQgLAkACQAJAIAEvAQBBAWsOAgECAAsgAUECai8BACEHDAELIAQgAUEEaigCAEEDdGovAQQhBwsgAyAHOwEOIAMgCDsBDCADIAFBFGooAgA2AghBASAEIAFBEGooAgBBA3RqIgEoAgAgAyABKAIEEQMADQMaIABBCGoh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CANAIAEoAighAiABQQA2AiggAkEBcQRAIAAgAjYCACAAIAf9AAIA/QsCBCAAQRRqIAdBEGr9AAIA/QsCACAAQSRqIAdBIGooAgA2AgAMBAsgASADQQFqIgM2AlQgCCgCDEEBayADTQRAIAUgCCgCEEECa08NAyABQQA2AlQgASAFQQFqIgU2AlhBACEDCyAEQTBqIgIgCCADIAUQnQIgASACQdAA/AoAACAJIAZBEGr9AAIA/QsDACAKIAZBIGooAgA2AgAgASgCACECIAFBADYCACAEIAb9AAIA/QsDCCACQQFxRQ0ACwsgACACNgIAIAAgBP0AAwj9CwIEIABBFGogCf0AAwD9CwIAIABBJGogCigCADYCAAwBCyAAQQA2AgALIARBgAFqJAALwwMCAX8JfUP//39/IQdD//9//yEIAkAgASgCCEUEQEP//3//IQZD//9//yEFQ///f38hA0P//39/IQQMAQtD//9//yEGQ///f/8hBUP//39/IQND//9/fyEEAkACQCABKAIEIgIoAjxB/////wNxIAIoAhxB/////wNxag4CAgABCyACKgIYIQggAioCFCEGIAIqAhAhBSACKgIIIQcgAioCBCEDIAIqAgAhBAwBCyACKgIYIgYgAioCOCIFIAUgBl8bIQggAioCFCIGIAIqAjQiBSAFIAZfGyEGIAIqAhAiBSACKgIwIgMgAyAFXxshBSACKgIIIgMgAioCKCIEIAMgBF8bIQcgAioCBCIDIAIqAiQiBCADIARfGyEDIAIqAgAiBCACKgIgIgkgBCAJXxshBAsgACAHIAEqAmwiB0MAAAA/lCIJkiAHlY78ADYCCCAAIAMgASoCaCIDQwAAAD+UIgqSIAOVjvwANgIEIAAgBCABKgJkIgRDAAAAP5QiC5IgBJWO/AA2AgAgACAIIAmTIAeVjvwAQQFqNgIUIAAgBiAKkyADlY78AEEBajYCECAAIAUgC5MgBJWO/ABBAWo2AgwLiAMBB38jAEEQayIEJAACQAJAAkACQCABKAIEIgIEQCABKAIAIQYgAkEDcSEFAkAgAkEESQRAQQAhAgwBCyAGQRxqIQMgAkF8cSEIQQAhAgNAIAMoAgAgA0EIaygCACADQRBrKAIAIANBGGsoAgAgAmpqamohAiADQSBqIQMgCCAHQQRqIgdHDQALCyAFBEAgB0ED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IAMoAvgFIAMoAvwFTg0AQQAhBSADQdQHagwBCyADIAUgB2oiBSAHTzYC1AcgA0H8DmoLIAU2AgAgAygC/A4hCCADKALUByEFCyADKAKABkEBRgRAQQAhBEEAIQcgAygChAYEQCADKAKoBiIGIAMoAqQGIgdrQQAgBiAHShshBwsgAygCrAYEQCADKALQBiIEIAMoAswGIgZrQQAgBCAGShshBAsCfwJAIAMoAtQGRQ0AIAMoAogHIAMoAowHTg0AQQAhBCADQdQHagwBCyADIAQgB2oiBCAHTzYC1AcgA0H8DmoLIAQ2AgAgAygC/A4hBiADKALUByEECwJ/AkAgAygCkAcEQCADKALAByADKALEB04gBXEgBHENAUEAIQUgA0HUB2oMAgsgBCAFcUEBcQ0AQQAhBSADQdQHagwBCyAGIAhqIQUgA0H8DmoLIAU2AgALQQRBfyAJIAtqIgQgBCAJSRsgCyAQG0EBaiIEQX8gBBsiBCAEQQRNGyIGQQJ0IQUgBEH/////A0sNAyAFQfz///8HSw0DQQQhDCAFQQQQkQ4iBEUNAyAEIA82AgBBASEHIANBATYC0AcgAyAENgLMByADIAY2AsgHIANB1AdqIgUgA0EkakGkB/wKAAAgA0EQaiAFEGogAygCEEEBcUUNBCADKAIUIQxBBCELA0AgAygCyAcgB0YEQCADKAL0ByADKALwB2tBACADKALsBxshDyADKALcByADKALYB2shECADKALUByERAkAgAygChAhBA0YNACADKALICSIEQQJHBEBBASEFQQAhCEEAIQlBASEGIARBAXEEQEEAIQZBACEEIAMoAswJBEAgAygC8AkiBCADKALsCSIJa0EAIAQgCUobIQQLIAMoAvQJBEAgAygCmAoiBiADKAKUCiIJa0EAIAYgCUobIQYLAn8CQCADKAKcCkUNACADKALQCiADKALUCk4NAEEAIQYgA0H8DmoMAQsgAyAEIAZqIgYgBE82AvwOIANB+A5qCyAGNgIAIAMoAvgOIQkgAygC/A4hBgsgAygC2ApBAUYEQEEAIQVBACEEIAMoAtwKBEAgAygCgAsiBCADKAL8CiIIa0EAIAQgCEobIQQLIAMoAoQLBEAgAygCqAsiBSADKAKkCyIIa0EAIAUgCEobIQULAn8CQCADKAKsC0UNACADKALgCyADKALk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AhxB/////wNxag4CAAECCyADQv////v///+/fzcDECAD/Qz//39///9/f///f3///3///QsEAAwCCyADQRRqIAFBGGooAgA2AgAgAyABKQMANwMAIAMgASkCEDcCDCADIAFBCGooAgA2AggMAQsgAyABKgIYIgQgASoCOCIFIAQgBWAbOAIUIAMgASoCFCIEIAEqAjQiBSAEIAVgGzgCECADIAEqAhAiBCABKgIwIgUgBCAFYBs4AgwgAyABKgIIIgQgASoCKCIFIAQgBV8bOAIIIAMgASoCBCIEIAEqAiQiBSAEIAVfGzgCBCADIAEqAgAiBCABKgIgIgUgBCAFXxs4AgALIAAgAyACELsDIANBIGokAAu2AgIFfwF+IwBBQGoiAiQAIAEoAgBBgICAgHhGBEAgASgCDCEEIAJBHGoiBUEIaiIGQQA2AgAgAkKAgICAEDcCHCACQShqIgNBCGogBCgCACIEQQhqKQIANwMAIANBEGogBEEQaikCADcDACACIAQpAgA3AyggBUHYicQAIAMQuAMaIAJBGGogBigCACIDNgIAIAIgAikCHCIHNwMQIAFBCGogAzYCACABIAc3AgALIAEpAgAhByABQoCAgIAQNwIAIAJBCGoiAyABQQhqIgEoAgA2AgAgAUEANgIAIAIgBzcDAEEMQQQQkQ4iAUUEQEEEQQxB+MrEACgCACIAQcwIIAAbEQAAAAsgASACKQMANwIAIAFBCGogAygCADYCACAAQcyNxAA2AgQgACABNgIAIAJBQGskAAuRAgEFfyMAQRBrIgUkAAJAAkACQCAARQ0AIABBCGsiBigCAEEBaiEDIAYgAzYCACADRQ0BIAAoAgAiA0F/Rg0CIAAgA0EBajYCACAFIAY2AgwgBSAANgIIIAUgAEEEajYCBCACRQ0AIAJBCGsiAygCACIHQQFqIQQgAyAENgIAIARFDQEgAigCAA0CIAJBfzYCACABIAAoAkwiBEkEQCACQQRqIAAoAkggAUH0AGxqQfQA/AoAACAAKAJMIQQLIAJBADYCACADIAc2AgAgBigCACECIAAgACgCAEEBazYCACAGIAJBAWsiADYCACAARQRAIAVBDGoQ5AsLIAVBEGokACABIARJDwsQgw8LAAsQhA8AC94CAgV9A3sgACABKgIEIgVDq6qqPpQgASoCECIDQ6uqqj6UkiABKgIcIgRDq6qqPpSSIgI4AgQgAUEgaiAB/V0CFCIH/VYCAAAhCCAAIAH9XQIIIgn9DKuqqj6rqqo+q6qqPquqqj795gEgByABKgIAIgb9IAH9DKuqqj6rqqo+q6qqPquqqj795gH95AEgCP0Mq6qqPquqqj6rqqo+q6qqPv3mAf3kASIH/R8AOAIIIAAgB/0fATgCACAAIAcgCP3lASIIIAj95gEiCP0fASACIASTIgQgBJSSIAj9HwCSIgQgByABQRRqIAn9VgIAAP3lASIIIAj95gEiCP0fASACIAOTIgMgA5SSIAj9HwCSIgMgByAJIAb9IAH95QEiByAH/eYBIgf9HwEgAiAFkyICIAKUkiAH/R8AkiICQwAAAAAgAkMAAAAAXhsiAiACIANdGyICIAIgBF0bkTgCDAvvAQILfQF/IAIqAgQgASoCFJMiCiABKgIIIgOUIAIqAgggASoCGJMiCyABKgIEIgWUkyIGIAaSIQYgCyABKgIAIgiUIAIqAgAgASoCEJMiBCADlJMiByAHkiEHAkAgBCABKgIMIgwgBpQgAyAHlCAFIAQgBZQgCiAIlJMiBCAEkiIElJOSkiINIAAqAgAiCYxdDQAgCSANXQ0AIAogDCAHlCAIIASUIAMgBpSTkpIiAyAAKgIEIgmMXQ0AIAMgCV4NACALIAwgBJQgBSAGlCAIIAeUk5KSIgMgACoCCCIFXkUgAyAFjF1Bf3NxIQ4LIA4L/wECCX0BfyACKgIAIgMgA5QgAioCBCIGIAaUkiACKgIIIgQgBJSSkSEFIAMgBZUiByABKgIYIgOUIAYgBZUiCCABKgIclJIgBCAFlSIJIAEqAiCUkiEKIAFBGGohAgJAIAcgASoCACIElCAIIAEqAgSUkiAJIAEqAgiUkiILIAcgASoCDCIFlCAIIAEqAhCUkiAJIAEqAhSUkiIGXkUEQCABQQxqIAIgBiAKXiIMGyECIAUgAyAMGyEDDAELIAogC11FDQAgBCEDIAEhAgsgACACKgIIIAkgASoCJCIElJI4AgggACACKgIEIAggBJSSOAIEIAAgAyAHIASUkjgCAAunAgICfwR9AkACQCAAvCIBQYCAgAROBEAgAUH////7B0sNAUGBfyECQwAAAAAhACABQYCAgPwDRg0BDAILIABDAAAAAFsEQEMAAIC/IAAgAJSVDwsgAUEATgRAIABDAAAATJS8IQFB6H4hAgwCCyAAIACTQwAAAACVIQALIAAPCyABQY32qwJqIgFB////A3FB84nU+QNqvkMAAIC/kiIAIABDAAAAP5SUIQMgACAAQwAAAECSlSIFIAWUIgYgBpQhBCAAIAAgA5O8QYBgcb4iAJMgA5MgBSADIAYgBEPu6ZE+lEOqqio/kpQgBCAEQyaeeD6UQxPOzD6SlJKSlJIhAyAAQwCwuD+UIANDALC4P5QgAyAAkkPUmji5lJKSIAFBF3YgAmqykguaAgIBfwF9IAEqAgAhAyAAKAIAIgIoAgghACACKAIAIABrQQNNBEAgAiAAQQRBAUEBENYGIAIoAgghAAsgAigCBCAAaiADOAAAIAIgAEEEaiIANgIIIAEqAgQhAyACKAIAIABrQQNNBEAgAiAAQQRBAUEBENYGIAIoAgghAAsgAigCBCAAaiADOAAAIAIgAEEEaiIANgIIIAEqAgghAyACKAIAIABrQQNNBEAgAiAAQQRBAUEBENYGIAIoAgghAAsgAigCBCAAaiADOAAAIAIgAEEEaiIANgIIIAEqAgwhAyACKAIAIABrQQNNBEAgAiAAQQRBAUEBENYGIAIoAgghAAsgAiAAQQRqNgIIIAIoAgQgAGogAzgAAEEAC5UCAQJ/IAAoAgAhACABKAIAQQFGBEAgASgCCCECIAEoAgQhAyAAKAIIIgEgACgCAEYEQCAAIAFBAUEBQQEQ1gYgACgCCCEBCyAAKAIEIAFqQQE6AAAgACABQQFqIgE2AgggACgCACABa0EDTQRAIAAgAUEEQQFBARDWBiAAKAIIIQELIAAoAgQgAWogAzYAACAAIAFBBGoiATYCCCAAKAIAIAFrQQNNBEAgACABQQRBAUEBENYGIAAoAgghAQsgACABQQRqNgIIIAAoAgQgAWogAjYAAEEADwsgACgCCCIBIAAoAgBGBEAgACABQQFBAUEBENYGIAAoAgghAQsgACABQQFqNgIIIAAoAgQgAWpBADoAAEEAC5sJAQl/IwBBkBBrIgMkAAJAAkACQCAABEAgAEEIayIHKAIAQQFqIQIgByACNgIAIAJFDQEgACgCACICQX9GDQIgACACQQFqNgIAIAMgBzYCjAggAyAANgKICCADIABBBGo2AoQIIwBBsBhrIgIkACACIAE2AgggAkEMaiEEAkACQCACQQhqKAIAIggQGSIBQQBIDQACQCABRQRAQQEhBgwBC0EBIQUgAUEBEJEOIgZFDQELEB8iCRARIgoQFyEFIApBhAFPBEAgChACCyAFIAggBhAYIAVBhAFPBEAgBRACCyAJQYQBTwRAIAkQAgsgBCAIEBk2AgggBCAGNgIEIAQgATYCAAwBCyAFIAFBiM7CABDXDQALIAIoAhAhBCACIAIoAhQ2AqwQIAIgBDYCqBAgAkGwEGoiASACQagQahAgIAIoArAQIQYCQAJAIAIoAvQXIgVBAkcEQCACQaAIaiIEQQRyIAFBBHJBwAf8CgAAIARB+AdqIgggAUH4B2opAwA3AwAgBEHoB2oiCSABQegHav0AAwD9CwMAIARB2AdqIgogAUHYB2r9AAMA/QsDACACIAL9AAP4F/0LA+gPIAIgBjYCoAggAkHQAGoiASAEQcQH/AoAACACQRhqIgRBMGogCCkDADcDACAEQSBqIgYgCf0AAwD9CwMAIARBEGoiBCAK/QADAP0LAwAgAiAC/QAD6A/9CwMYIANBDGogAkGIB2ooAgA2AgAgAyACKQOABzcCBCADQbgHaiACQYwHakHEAPwKAAAgA0HgA2ogAUEwav0ABAD9CwQAIANB0ANqIAFBIGr9AAQA/QsEACADQcADaiABQRBq/QAEAP0LBAAgAyAC/QAEUP0LBLADIANB8ANqIAJBkAFqQaAB/AoAACADQfQGaiACQdAHakHEAPwKAAAgA0EQaiACQbACakGgA/wKAAAgA0HkBmogBv0AAwD9CwIAIANB1AZqIAT9AAMA/QsCACADIAL9AAMY/QsCxAYgA0GQBWogAkHQBWpB2AD8CgAAIANB6AVqIAJBqAZqQdgA/AoAACADIAU2AsAGIANBATYCACACKAIMIgEEQCACKAIQIAFBARDoDgsgAigCCCIBQYMBSw0BDAILIAJBAjYC5A8gAiAGNgKgCAJAIAJBoAhqIgEoAsQHQQJHBEAgARCCCiABQUBrEO0JIAFBgAdqEM4HIAFB4AFqEOsHIAFBxAdqEKMIIAFBgAVqEMkJIAFB2AVqELMIDAELIAEoAgAQzQkLIANBAjYCACACKAIMIgEEQCAEIAFBARDoDgsgAigCCCIBQYQBSQ0BCyABEAILIAJBsBhqJAAgACAAKAIAQQFrNgIAIAcgBygCAEEBayIANgIAIABFBEAgA0GMCGoQpg0LQQAhACADKAIAQQJHBEAgA0GQCGogA0GACPwKAABBoAhBEBCRDiIARQ0EIABBADYCECAAQoGAgIAQNwMAIABBFGogA0GECGpBjAj8CgAAIABBEGohAAsgA0GQEGokACAADwsQgw8LAAsQhA8AC0EQQaAIQfjKxAAoAgAiAEHMCCAAGxEAAAALiwIBCX8gACIHKAIIIgIgAUkEQCACIQMgASACayIFIAAoAgAgAmtLBEAgACACIAVBBEEEENgGIAAoAgghAwsgBygCBCADQQJ0aiEAAkAgBUECSQRAIAAhBAwBCwJAAkAgASACQX9zaiIIQQRJBEAgACEEQQEhCQwBCyAIQXxxIgZBAXIhCSAAIAZBAnRqIQQgBiEKA0AgAP0MAAAAAAAAAAAAAAAAAAAAAP0LAgAgAEEQaiEAIApBBGsiCg0ACyAGIAhGDQELIAIgCWogAWshAANAIARBADYCACAEQQRqIQQgAEEBaiIADQALCyADIAVqQQFrIQMLIARBADYCACADQQFqIQELIAcgATYCCAu2AgICfQZ/IAAoAggiA0UEQEP//39/DwsgACgCBCEFIANBAXEhBgJAIANBAUYEQEEAIQND//9/fyEBDAELIAVBxABqIQAgA0F+cSEHQQAhA0P//39/IQEDQCAAQShrKAIAIABBJGsoAgAiBCgCCEEBa0F4cWpBCGogBCgCqAERCwAhAiAAKAIAIQQgAEEEaygCACEIIABByABqIQAgASABIAIgASACXRsgAiACXBsiAiACIAggBCgCCEEBa0F4cWpBCGogBCgCqAERCwAiASABIAJeGyABIAFcGyEBIAcgA0ECaiIDRw0ACwsgBgRAIAUgA0EkbGoiA0EgaigCACEAIAEgASADQRxqKAIAIAAoAghBAWtBeHFqQQhqIAAoAqgBEQsAIgIgASACXRsgAiACXBshAQsgAQu2AgIDfQZ/IAAoAggiBEUEQEP//39/DwsgACgCBCEGIARBAXEhBwJAIARBAUYEQEEAIQRD//9/fyEBDAELIAZBxABqIQAgBEF+cSEIQQAhBEP//39/IQEDQCAAQShrKAIAIABBJGsoAgAiBSgCCEEBa0F4cWpBCGogBSgCrAERCwAhAiAAKAIAIQUgAEEEaygCACEJIABByABqIQAgCSAFKAII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AkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgACfyAAKAIMIAFNBEAgACACNgIAIAQgBTYCAEEADAELIAAoAgggAUHUAWxqIgEpAighBiABQTBqKAIAIQEgACACNgIAIANBCGoiAiABNgIAIAQgBTYCACADIAY3AwBBGEEEEJEOIgBFDQQgAEEANgIIIABCgYCAgBA3AgAgACADKQMANwIMIABBFGogAigCADYCACAAQQhqCyEAIANBEGokACAADwsQgw8LAAsQhA8AC0EEQRhB+MrEACgCACIAQcwIIAAbEQAAAAv4AQIDfwZ9AkAgASgCCEUEQAwBCyABKAIEIgNBACACKgIIIgYgAyoCGF8bQQAgAioCBCIHIAMqAhRfG0EAIAIqAgAiCCADKgIQXxtBACACKgIUIgkgAyoCCGAbQQAgAioCECIKIAMqAgRgG0EAIAIqAgwiCyADKgIAYBshBSADKAI8Qf////8DcUUNACADKgIgIAtfIAMqAiQgCl9xIAMqAiggCV9xIAMqAjAgCGBxIAMqAjQgB2BxIAMqAjggBmBxIQQgA0EgaiEDCyAAIAU2ApABIAAgATYCiAEgACACNgKMASAAIAQ2AoQBIAAgAzYCBCAAQQA2AgALqwIBAn0CQAJAAkAgASgCCEUNACABKAIEIgEoAjxB/////wNxIAEoAhxB/////wNxag4CAAECCyAAQv////v///+/fzcCECAA/Qz//39///9/f///f3///3///QsCAA8LIAAgASkCADcCACAAIAEpAhA3AgwgAEEIaiABQQhqKAIANgIAIABBFGogAUEYaigCADYCAA8LIAAgASoCGCICIAEqAjgiAyACIANgGzgCFCAAIAEqAhQiAiABKgI0IgMgAiADYBs4AhAgACABKgIQIgIgASoCMCIDIAIgA2AbOAIMIAAgASoCCCICIAEqAigiAyACIANfGzgCCCAAIAEqAgQiAiABKgIkIgMgAiADXxs4AgQgACABKgIAIgIgASoCICIDIAIgA18bOAIAC/wBAgN/AX4jAEEQayIEJAACQAJAAkAgAARAIABBCGsiBSgCAEEBaiEDIAUgAzYCACADRQ0BIAAoAgAiA0F/Rg0CIAAgA0EBajYCACAEIAU2AgwgBCAANgIIIAQgAEEIaiIDNgIEIAJBBU0EQCADIAG9IganIAZCIIin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AWohASADIAE2AgAgAUUNASAAKAIAIgFBf0YNAiAAIAFBAWo2AgAgACgCBCIFQZABaigCACEGIAUpAogBIQcgACABNgIAIAJBCGoiASAGNgIAIAMgBDYCACACIAc3AwBBGEEEEJEOIgBFDQMgAEEANgIIIABCgYCAgBA3AgAgACACKQMANwIMIABBFGogASgCADYCACACQRBqJAAgAEEIag8LEIMPCwALEIQPAAtBBEEYQfjKxAAoAgAiAEHMCCAAGxEAAAAL6wECBn8BfiMAQRBrIgIkAAJAAkACQCAABEAgAEEIayIDKAIAIgRBAWohASADIAE2AgAgAUUNASAAKAIAIgFBf0YNAiAAIAFBAWo2AgAgACgCBCIFQZwBaigCACEGIAUpApQBIQcgACABNgIAIAJBCGoiASAGNgIAIAMgBDYCACACIAc3AwBBGEEEEJEOIgBFDQMgAEEANgIIIABCgYCAgBA3AgAgACACKQMANwIMIABBFGogASgCADYCACACQRBqJAAgAEEIag8LEIMPCwALEIQPAAtBBEEYQfjKxAAoAgAiAEHMCCAAGxEAAAAL2AECAX8BfSAAKgIAIQMgASgCACICKAIIIQEgAigCACABa0EDTQRAIAIgAUEEQQFBARDWBiACKAIIIQELIAIoAgQgAWogAzgAACACIAFBBGoiATYCCCAAKgIEIQMgAigCACABa0EDTQRAIAIgAUEEQQFBARDWBiACKAIIIQELIAIoAgQgAWogAzgAACACIAFBBGoiATYCCCAAKgIIIQMgAigCACABa0EDTQRAIAIgAUEEQQFBARDWBiACKAIIIQELIAIgAUEEajYCCCACKAIEIAFqIAM4AABBAAvBAQIFfwF+IwBBIGsiAiQAQQQgACgCACIFQQF0IgQgBEEETRsiBK1CDH4iB0IgiEIAUgRAQQBBACABENcNAAsCQCAHpyIGQfz///8HTQR/IAIgBQR/IAIgBUEMbDYCHCACIAAoAgQ2AhRBBAVBAAs2AhggAkEIakEEIAYgAkEUahDiCSACKAIIQQFHDQEgAigCECEDIAIoAgwFQQALIAMgARDXDQALIAIoAgwhASAAIAQ2AgAgACABNgIEIAJBIGokAAvBAQIFfwF+IwBBIGsiAiQAQQQgACgCACIFQQF0IgQgBEEETRsiBK1CGH4iB0IgiEIAUgRA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ACADQQxqIQIgAEEARyEEAkACQEGAAkHAABCRDiIABEAgAEEAOgDIASAAQoGAgIAQNwPAASAAQQE6AJwBIABCBDcClAEgAEIANwKMASAAQoCAgIDAADcChAEgAEEAOgCAASAAQgA3A0AgAEIANwMAQYACQcAAEJEOIgFFDQIgAUEAOgDIASABQoGAgIAQNwPAASABQQE6AJwBIAFCBDcClAEgAUIANwKMASABQoCAgIDAADcChAEgAUEAOgCAASABQgA3A0AgAUIANwMAIAIgBDoAICACIAE2AhwgAkEBNgIYIAIgADYCFCACQQE2AhAgAiABNgIMIAJBATYCCCACIAA2AgQgAkEBNgIADAELDAELQTBBBBCRDiIARQRAQQRBMEH4ysQAKAIAIgBBzAggABsRAAAACyAAQQA2AgggAEKBgICAEDcCACAAIAP9AAIM/QsCDCAAQRxqIANBHGr9AAIA/QsCACAAQSxqIANBLGooAgA2AgAgA0EwaiQAIABBCGoPC0HAAEGAAkH4ysQAKAIAIgBBzAggABsRAAAAC5ABAQd9IAIqAgghBCACKgIEIQUgAioCACEGIAEqAgghByABKgIEIQggASoCACEJIAEqAgwhCkEQQQQQkQ4iAUUEQEEEQRBB+MrEACgCACIAQcwIIAAbEQAAAAsgASAKOAIMIAEgByAElDgCCCABIAggBZQ4AgQgASAJIAaUOAIAIABBtNjDADYCBCAAIAE2AgALgAECAX8BfSMAQSBrIgIkACABKgIIIgNDAAAAAGBFBEAgAkEANgIYIAJBATYCDCACQejgwgA2AgggAkIENwIQIAJBCGpBoITEABC5DQALIABBADYCCCAAQgA3AgAgACADIAEqAgAiAyADlCABKgIEIgMgA5SSkZI4AgwgAkEgaiQAC8oGAgd/A3sjAEHQBmsiAiQAIwBBkAFrIgAkACACQfwCaiEEIwBBIGsiAyQAIANBADYCGCADQQhqQRBBgAwgA0EUahDiCSADKAIIQQFGBEAgAygCDCADKAIQQcCLwgAQ1w0AC/0MAAAAAAEAAAACAAAAAwAAACEIQQQhBSADKAIMIgYhAQNAIAFBADYCACABQYAJakEANgIAIAFBgAZqQQA2AgAgAUGAA2pBADYCACABQYQJaiAI/QwDAAAAAwAAAAMAAAADAAAA/TgiCf0MAQAA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QQEhBEHWrcQAQdetxAAgCUEASCIAG0HWrcQAQQEgABsgChshCCAJQR92IApyIQcgBkEERwRAIAJBAzYCmAggAkHbrcQANgKUCCACQQI7AZAIIAJBkAhqDAMLQQIhBCACQQI7AZAIIAVFBEBBASEEIAJBATYCmAggAkHercQANgKUCCACQZAIagwDCyACIAU2AqAIIAJBADsBnAggAkECNgKYCCACQa2txAA2ApQIIAJBkAhqDAILQdatxABBASAJQQBIIgAbIQNB1q3EAEHXrcQAIAAbIQggCUEfdiEEIAJBkAhqIgcgAkHQCGogAkEQaiAGQQR2QRVqIgZBgIB+QQAgBWsgBcFBAEgbIgAQnwIgAMEhAAJAIAIoApAIBEAgAkHICGogB0EIaigCADYCACACIAIpApAINwPACAwBCyACQcAIaiACQdAIaiACQRBqIAYgABA5CyAIIAMgChshCCAEIApyIQcgACACLgHICCIASARAIAJBCGogAigCwAggAigCxAggACAFIAJBkAhqELUFIAIoAgwhBCACKAIIDAILQQIhBCACQQI7AZAIIAVFBEBBASEEIAJBATYCmAggAkHercQANgKUCCACQZAIagwCCyACIAU2AqAIIAJBADsBnAggAkECNgKYCCACQa2txAA2ApQIIAJBkAhqDAELIAJBAzYCmAggAkHYrcQANgKUCCACQQI7AZAIQQEhCEEAIQdBASEEIAJBkAhqCyEAIAIgBDYCzAggAiAANgLICCACIAc2AsQIIAIgCDYCwAggASACQcAIahCvAyEAIAJB8AhqJAAgAAtpAQR+IAEoAgAgAkFsbGoiAUEUaykCACAAKAIAKAIAKQMAhSIDQiCIIgQgAUEIazUCAEK307CFDIUiBX4gAUEMazUCAELdofHLDIUiBiADQv////8PgyIDfoUgAyAFfiAEIAZ+hUIgiYULbwEEfiABKAIAIAJBBHRrIgFBDGspAABCl5Kcqtu2tcI/hSIDQiCIIgUgAUEQaykAACAAKAIAKAIAKQMAQjSJhSIEQiCIIgZ+IANC/////w+DIgMgBEL/////D4MiBH6FIAMgBn4gBCAFfoVCIImFC24BB30gAEICNwIQIAAgASoCACIEIAIqAgAiBZQgASoCBCIGIAIqAgQiB5SSIAEqAggiCCACKgIIIgmUkiIDQwAAAABf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fwJ+IwBBIGsiAiQAIAJBCGogACABKAJgEQAAIAJBEGogAigCCCIAIAIoAgwoAgwRAAAgAikDGCEDIAIpAxAhBCACQSBqJAAgAEEAIARCj9iZz4j1zJ4HhSADQo34tqK32v+FyACFhFAbC2sCAX8CfiMAQSBrIgIkACACQQhqIAAgASgCYBEAACACQRBqIAIoAggiACACKAIMKAIMEQAAIAIpAxghAyACKQMQIQQgAkEgaiQAIABBACAEQuadteiA48+HMYUgA0Lw4py6utTs2yaFhFAbC2sCAX8CfiMAQSBrIgIkACACQQhqIAAgASgCZBEAACACQRBqIAIoAggiACACKAIMKAIMEQAAIAIpAxghAyACKQMQIQQgAkEgaiQAIABBACAEQuadteiA48+HMYUgA0Lw4py6utTs2yaFhFAbC20CAX8CfiMAQSBrIgIkACACQQhqIAAgASgCYBEAACACQRBqIAIoAggiACACKAIMKAIMEQAAIAIpAxghAyACKQMQIQQgAkEgaiQAIABBACAEQt6Fisa2mpP80ACFIANChcGXiNPx7PrkAIWEUBsLbQIBfwJ+IwBBIGsiAiQAIAJBCGogACABKAJgEQAAIAJBEGogAigCCCIAIAIoAgwoAgwRAAAgAikDGCEDIAIpAxAhBCACQSBqJAAgAEEAIARCr6ns6fSs26rgAIUgA0LLr+Dt64uH8Kt/hYRQGwtsAgF/An4jAEEgayICJAAgAkEIaiAAIAEoAmARAAAgAkEQaiACKAIIIgAgAigCDCgCDBEAACACKQMYIQMgAikDECEEIAJBIGokACAAQQAgBELO24DRiLeklRyFIANC5vTWnZL/juehf4WEUBsLbAIBfwJ+IwBBIGsiAiQAIAJBCGogACABKAJkEQAAIAJBEGogAigCCCIAIAIoAgwoAgwRAAAgAikDGCEDIAIpAxAhBCACQSBqJAAgAEEAIARCztuA0Yi3pJUchSADQub01p2S/47noX+FhFAbC2sCAX8CfiMAQSBrIgIkACACQQhqIAAgASgCYBEAACACQRBqIAIoAggiACACKAIMKAIMEQAAIAIpAxghAyACKQMQIQQgAkEgaiQAIABBACAEQpTFqNTN/JyWQ4UgA0L2+IbMtIfkyQKFhFAbC2wCAX8CfiMAQSBrIgIkACACQQhqIAAgASgCYBEAACAC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ATgCNCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATgCOCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiASgCACIDQQFqIQIgASACNgIAIAJFDQEgACgCAA0CIABBAjYCICABIAM2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATYCNCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATYCOCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATgCBCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATgCECACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATgCJCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATgCLCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATYCMCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATYCPCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATYCQCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAg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AgQoAhQREQANAEEADwsgACgCCCIERQRAQQEPCyAEIAEgAiADIAAoAgwoAhgREQALRgEBfyMAQTBrIgUkACAFQQhqIAEgAiADIAQQdAJAIAUoAhxBBEcEQCAAIAX9AAII/QsCAAwBCyAAQQI6AAwLIAVBMGokAAtGAQF/IAAoAgAiACgCCCICIAAoAgBGBEAgACACQQFBAUEBENYGIAAoAgghAgsgACACQQFqNgIIIAAoAgQgAmogAToAAEEAC1AAIAEoAgAgAigCACADKAIAIAQoAgAQDiEBQezKxAAoAgAhAkHoysQAKAIAIQNB6MrEAEIANwIAIAAgAiABIANBAUYiARs2AgQgACABNgIACzwBAX8jAEEgayICJAAgAUEBQQFBACAAKQMAIAJBDGoiABDxBSIBIABqQRQgAWsQ2QIhACACQSBqJAAgAAs9AQF/AkAgASAAKAKMA08NACAAKAKIAyABQYADbGoiACgCAEEBRw0AIABBEGpBACAAKAIEIAJGGyEDCyADCzsBAX8CQCABIAAoAhBPDQAgACgCDCABQbABbGoiACgCAEEBRw0AIABBEGpBACAAKAIEIAJGGyEDCyADC0ABAX1DAAAAACABKgIAIgMgA5QgASoCBCIDIAOUkiABKgIIIgMgA5SSkSAAKgIAkyIDIANDAAAAAF0bIAMgAhsLPwEBfyMAQSBrIgIkACACQQhqIAAoAgAgAkEWahDMBSABQQFBAUEAIAIoAgggAigCDBDZAiEAIAJBIGokACAAC5ENAwh/BX4BfCABKAIIIgdBgICAAXEhBSAAKwMAIQ8gB0GAgICAAXFFBEAgBUEARyEEIwBBgAFrIgMkACAPvSEKAn9BAyAPmUQAAAAAAADwf2ENABpBAiAKQoCAgICAgID4/wCDIgtCgICAgICAgPj/AFENABogCkL/////////B4MiDkKAgICAgICACIQgCkIBhkL+////////D4MgCkI0iKdB/w9xIgYbIgxCAYMhDSALUARAQQQgDlANARogBkGzCGshBkIBIQsgDVAMAQtCgICAgICAgCAgDEIBhiAMQoCAgICAgIAIUSIAGyEMQgJCASAAGyELQct3Qcx3IAAbIAZqIQYgDVALIQAgAyAGOwF4IAMgCzcDcCADQgE3A2ggAyAMNwNgIAMgADoAegJ/AkACQAJAAkACQCAAQQFNBEAgA0EgaiIGIANB4ABqIANBD2oQjQFB1q3EAEEBIApCAFMiABshBUHWrcQAQdetxAAgABshByAKQj+IpyEAIAMoAiBFDQEgA0HYAGogBkEIaigCADYCACADIAMpAiA3A1AMAgsgAEECRg0DQQEhBkHWrcQAQdetxAAgCkIAUyIHG0HWrcQAQQEgBxsgBBshBSAKQj+IpyAEciEHIABB/wFxQQRGDQIgA0EDNgIoIANB263EADYCJCADQQI7ASAgA0EgagwFCyADQdAAaiADQeAAaiADQQ9qEDMLIAcgBSAEGyEFIAAgBHIhByADIAMoAlAgAygCVCADLwFYQQAgA0EgahC1BSADKAIEIQYgAygCAAwDCyADQQI7ASAMAQsgA0EDNgIoIANB2K3EADYCJCADQQI7ASBBASEFQQAhB0EBIQYgA0EgagwBCyADQQE2AiggA0HercQANgIkIANBIGoLIQAgAyAGNgJcIAMgADYCWCADIAc2AlQgAyAFNgJQIAEgA0HQAGoQrwMhACADQYABaiQAIAAPCyAFQQBHIQggAS8BDiEHIwBB8AhrIgIkACAPvSEKAn9BAyAPmUQAAAAAAADwf2ENABpBAiAKQoCAgICAgID4/wCDIgtCgICAgICAgPj/AFENABogCkL/////////B4MiDkKAgICAgICACIQgCkIBhkL+////////D4MgCkI0iKdB/w9xIgQbIgxCAYMhDSALUARAQQQgDlANARogBEGzCGshBEIBIQsgDVAMAQtCgICAgICAgCAgDEIBhiAMQoCAgICAgIAIUSIAGyEMQgJCASAAGyELQct3Qcx3IAAbIARqIQQgDVALIQAgAiAEOwHoCCACIAs3A+AIIAJCATcD2AggAiAMNwPQCCACIAA6AOoIAn8CQAJAIABBAU0EQEF0QQUgBMEiAEEASBsgAGwiBUHA/QBJDQFB5a3EAEElQYyuxAAQ1gwACyAAQQJGDQFBASEEQdatxABB163EACAKQgBTIgUbQdatxABBASAFGyAIGyEGIApCP4inIAhyIQUgAEH/AXFBBEcEQCACQQM2ApgIIAJB263EADYClAggAkECOwGQCCACQZAIagwDC0ECIQQgAkECOwGQCCAHRQRAQQEhBCACQQE2ApgIIAJB3q3EADYClAggAkGQCGoMAwsgAiAHNgKgCCAC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IAFBAnRBBBDoDgsgACgCFCIBBEAgACgCGCABQQN0QQQQ6A4LCz8BAX8gACgCACEAIAEoAggiAkGAgIAQcUUEQCACQYCAgCBxRQRAIAAgARC8DA8LIAAgARCUCg8LIAAgARCTCgs2AQF/IAAoAgAiAQRAIAAoAgQgAUECdEEEEOgOCyAAKAIMIgEEQCAAKAIQIAFBAnRBBBDoDgsLPAEBfUMAAAAAIAAqAgAgASoCAJQgACoCBCABKgIElJIgACoCCCABKgIIlJIiAyADQwAAAABdGyADIAIbCzgBAX0gAEEANgIIIABCADcCACAAIAEqAgAiAiAClCABKgIEIgIgApSSIAEqAggiAiAClJKROAIMCz0BAn0gACABKgIEIgI4AhQgACACOAIMIAAgASoCAIsiAzgCECAAIAKMIgI4AgggACACOAIAIAAgA4w4AgQLxQMBA38gACgCACECIAEoAggiAEGAgIAQcUUEQCAAQYCAgCBxRQRAIwBBEGsiACQAQQMhAyACLQAAIgIhBCACQQpPBEAgACACIAJB5ABuIgRB5ABsa0H/AXFBAXQiA0HWscQAai0AADoADyAAIANB1bHEAGotAAA6AA5BASEDCyAERSACQQBHcUUEQCADQQFrIgMgAEENamogBEEBdEH+AXFB1rHEAGotAAA6AAALIAFBAUEBQQAgAEENaiADakEDIANrENkCIQEgAEEQaiQAIAEPCyMAQYABayIEJAAgAi0AACEAQQAhAgNAIAIgBGpB/wBqIABBD3EiA0EwciADQTdqIANBCkkbOgAAIAJBAWshAiAAIgNBBHYhACADQQ9LDQALIAFBAUHTscQAQQIgAiAEakGAAWpBACACaxDZAiEAIARBgAFqJAAgAA8LIwBBgAFrIgQkACACLQAAIQBBACECA0AgAiAEakH/AGogAEEPcSIDQTByIANB1wBqIANBCkkbOgAAIAJBAWshAiAAIgNBBHYhACADQQ9LDQALIAFBAUHTscQAQQIgAiAEakGAAWpBACACaxDZAiEAIARBgAFqJAAgAAvRAwEGfyMAQRBrIgMkACADIAA2AgwgAEEMaiEEIANBDGohBSMAQSBrIgAkAAJAIAEoAgAiBkHQicQAQQggASgCBCgCDCIHEQUABEBBASECDAELAkAgAS0ACkGAAXFFBEBBASECIAZBzbHEAEEB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RQRAQQRBHEH4ysQAKAIAIgBBzAggABsRAAAACyAAQoGAgIAQNwIAIAD9DAAAAAAAAAAAAAAAAAAAAAD9CwIIIABBgICA/AM2AhggAEEIagsvAQF9IAEqAgAiAiAClCABKgIEIgIgApSSIAEqAggiAiAClJIgACoCACICIAKUXwswAQF/IwBBIGsiAyQAIANBCGogACABIAJBABCaASADKAIIIQAgA0EgaiQAIABBBEcLMAEBfyMAQSBrIgMkACADQQhqIAAgASACQQEQ9AEgAygCCCEAIANBIGokACAAQQRHCzABAX8jAEEgayIDJAAgA0EIaiAAIAEgAkEBEKoCIAMoAgghACADQSBqJAAgAEEERwswAQF/IwBBEGsiAyQAIANBCGogACABIAJBARC1ASADKAIIIQAgA0EQaiQAIABBAUYLMAEBfyMAQSBrIgMkACADQQhqIAAgASACQQEQiwIgAygCCCEAIANBIGokACAAQQRHCzABAX8jAEEgayIDJAAgA0EIaiAAIAEgAkEBEKsCIAMoAgghACADQSBqJAAgAEEERwswAQF/IwBBIGsiAyQAIANBCGogACABIAJBARDbASADKAIIIQAgA0EgaiQAIABBBEcLMAEBfyMAQSBrIgMkACADQQhqIAAgASACQQEQvAEgAygCCCEAIANBIGokACAAQQRHCzABAX8jAEEgayIDJAAgA0EIaiAAIAEgAkEBEO4BIAMoAgghACADQSBqJAAgAEEERwswAQF/IwBBIGsiAyQAIANBCGogACABIAJBARCMAiADKAIIIQAgA0EgaiQAIABBBEcLMAEBfyMAQSBrIgMkACADQQhqIAAgASACQQEQpgIgAygCCCEAIANBIGokACAAQQRHCzABAX8jAEEgayIDJAAgA0EIaiAAIAEgAkEBEJsCIAMoAgghACADQSBqJAAgAEEERwswAQF/IwBBEGsiAyQAIANBCGogACABIAJBARCKASADKAIIIQAgA0EQaiQAIABBAUYLMAEBfyMAQSBrIgMkACADQQhqIAAgASACQQEQmAEgAygCCCEAIANBIGokACAAQQRHCzABAX8jAEEQayIDJAAgA0EIaiAAIAEgAkEBEJ4BIAMoAgghACADQRBqJAAgAEEBRgtIAQF/IAEoAgAhAkEEQQQQkQ4iAUUEQEEEQQRB+MrEACgCACIA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IQAgAkEQaiQAIAALJwEBfyMAQRBrIgIkACACIAAgAUEBECwgAi0ADCEAIAJBEGokACAACycBAX8jAEEQayICJAAgAiAAIAFBARApIAItAAwhACACQRBqJAAgAAsoAQF/IwBBEGsiAiQAIAIgACABQQEQ/wIgAi0ADCEAIAJBEGokACAACygBAX8jAEEQayICJAAgAiAAIAFBARCJASACLQAMIQAgAkEQaiQAIAALJwEBfyMAQRBrIgIkACACIAAgAUEBECggAi0ADCEAIAJBEGokACAACycBAn0gACoCACIBIAAqAgQiAiABIAJfGyIBIAAqAggiAiABIAJfGwsnAQJ9IAAqAmQiASAAKgJoIgIgASACXxsiASAAKgJsIgIgASACXxsLKwAgAEH/AXEiAEHAAE0EQCAAQZirwQBqLQAADwsgAEHBAEHQ4sMAEIULAAtGACAA/QwAAAAAAAAAAAAAAAAAAAAA/QsCECAA/QwAAAAAAAAAAAAAAAAAAIA//QsCACAAQShqQQA2AgAgAEEgakIANwIACzMAIAEoAgAgACgCAC0AAEECdCIAQdDLwgBqKAIAIABBwMvCAGooAgAgASgCBCgCDBEFAAslACAARQRAQeDMwgBBMhCCDwALIAAgAiADIAQgBSABKAIQESAACyMAIABFBEBB4MzCAEEyEIIPAAsgACACIAMgBCABKAIQEQIACyMAIABFBEBB4MzCAEEyEIIPAAsgACACIAMgBCABKAIQEREACyMAIABFBEBB4MzCAEEyEIIPAAsgACACIAMgBCABKAIQER8ACyQAIABFBEBB4MzCAEEyEIIPAAsgACACIAMgBCABKAIQEaIBAAsjACAARQRAQeDMwgBBMhCCDwALIAAgAiADIAQgASgCEBE8AAsoAQF/IAAoAgAiAUGAgICAeHJBgICAgHhHBEAgACgCBCABQQEQ6A4LCyEAIABFBEBB4MzCAEEyEIIPAAsgACACIAMgASgCEBEBAAsdACABKAIABEAgAEHcjcQANgIEIAAgATYCAA8LAAsnAQF/IAAoAgAiAgRAIAEoAgAgAiAAKAIEIAEoAgQoAgwRBQAPCwALJAAgAC0AAEUEQCABQfCzxABBBRD7Ag8LIAFB9bPEAEEEEPsCCx8AIABFBEBB4MzCAEEyEIIPAAsgACACIAEoAhARAwALHwAgACAB/QACQP0LAgAgAEEQaiABQdAAaikCADcCAAsfACAAIAH9AAI0/QsCACAAQRBqIAFBxABqKQIANwIACykAIAAgAC0ABCABQS5GcjoABCAAKAIAIgAoAgAgASAAKAIEKAIQEQMACx0AIAAgAiABKAIsIAEoAjAgASgCOCABKAI8EIkDCxoBAX8gACgCACIBBEAgACgCBCABQQEQ6A4LC1IAIAAEQCAAIAFB+MrEACgCACIAQcwIIAAbEQAAAAsjAEEgayIAJAAgAEEANgIYIABBATYCDCAAQfSPxAA2AgggAEIENwIQIABBCGogAhC5DQALHQAgAEHEp8MANgIEIAAgATYCACAAIAEqAhg4AggLHQAgAEGYpMMANgIEIAAgATYCACAAIAEqAgw4AggLHQAgAEGEqMMANgIEIAAgATYCACAAIAEqAiQ4AggLHQAgAEH4t8MANgIEIAAgATYCACAAIAEqAgg4AggLHQAgAEHcu8MANgIEIAAgATYCACAAIAEqAgg4AggLHQAgAEHMtMMANgIEIAAgATYCACAAIAEqAmA4AggLHwAgAEEIakG8iMQAKQIANwIAIABBtIjEACkCADcCAAsfACAAQQhqQcyIxAApAgA3AgAgAEHEiMQAKQIANwIACxoAIABBADYCCCAAQZC9wQA2AgQgACABNgIACxoAIABBADYCCCAAQdi+wQA2AgQgACABNgIACxoAIABBADYCCCAAQeDhwQA2AgQgACABNgIACxoAIABBADYCCCAAQdz7wQA2AgQgACABNgIACxYAIABB2AFqIAAtAOUCIABBMGoQsAYLGAAgACgCACABKAIAIAIoAgAgAygCABAQCxcBAX8gABASIgE2AgQgACABQQBHNgIACxcBAX8gABATIgE2AgQgACABQQBHNgIACxcBAX8gABAUIgE2AgQgACABQQBHNgIACxcBAX8gABAVIgE2AgQgACABQQBHNgIACxwAIABBADYCECAAQgA3AgggAEKAgICAwAA3AgALGgAgAEEANgIIIABBmKTDADYCBCAAIAE2AgALrQUCFH0CfyABKgIYIQYgAAJ9QwAAgD8gAUEMaiIXKgIIIg8gASoCCCIQkyIKjCAKIBcqAgQiESABKgIEIhKTIgdDAAAAAF0iGBsiCyALlCAXKgIAIhMgASoCACIUkyIMjCAMIBgbIgggCJQg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IABBDGqtQoCAgIAwhDcDUCAAIABBCGqtQoCAgIAwhDcDSAsgACAAQcgAajYCOCAAQTBqIAQQuQ0ACxMAIABBxLrBADYCBCAAIAE2AgALEwAgAEHUusEANgIEIAAgATYCAAsTACAAQfS8wQA2AgQgACABNgIACxAAIABBATYCACAAIAE2AgQLEwAgAEG8vsEANgIEIAAgATYCAAsQACAAQQQ2AgAgACABNgIECxoAAn8gAUEJTwRAIAEgABCuBgwBCyAAEEMLCxAAIAAgATYCBCAAQQU2AgALEwAgAEGs38EANgIEIAAgATYCAAsTACAAQbzfwQA2AgQgACABNgIACxMAIABBzN/BADYCBCAAIAE2AgALEwAgAEHc38EANgIEIAAgATYCAAsTACAAQezfwQA2AgQgACABNgIACxMAIABBxOHBADYCBCAAIAE2AgALEAAgACABNgIEIABBBzYCAAsQACAAIAE2AgQgAEEGNgIACxMAIABBwPvBADYCBCAAIAE2AgALFgBB7MrEACAANgIAQejKxABBATYCAAsTACAAQfTVwgA2AgQgACABNgIACxMAIABBhNbCADYCBCAAIAE2AgALEwAgAEGU1sIANgIEIAAgATYCAAsTACAAQaTWwgA2AgQgACABNgIACxMAIABBtNbCADYCBCAAIAE2AgALEwAgAEHE1sIANgIEIAAgATYCAAsTACAAQdTWwgA2AgQgACABNgIACxMAIABB5NbCADYCBCAAIAE2AgALEwAgAEH01sIANgIEIAAgATYCAAsTACAAQYTXwgA2AgQgACABNgIACxMAIABBlNfCADYCBCAAIAE2AgALEwAgAEGk18IANgIEIAAgATYCAAsTACAAQbTXwgA2AgQgACABNgIACxMAIABBxNfCADYCBCAAIAE2AgALEwAgAEHU18IANgIEIAAgATYCAAsTACAAQeTXwgA2AgQgACABNgIACxMAIABB9NfCADYCBCAAIAE2AgALEwAgAEGE2MIANgIEIAAgATYCAAsTACAAQZTYwgA2AgQgACABNgIACxMAIABBpNjCADYCBCAAIAE2AgALEwAgAEG02MIANgIEIAAgATYCAAsTACAAQcTYwgA2AgQgACABNgIACxMAIABB1NjCADYCBCAAIAE2AgALEwAgAEHk2MIANgIEIAAgATYCAAsTACAAQfTYwgA2AgQgACABNgIACxMAIABBhNnCADYCBCAAIAE2AgALEwAgAEGU2cIANgIEIAAgATYCAAsRACABIAAoAgAgACgCBBD7AgsQACAAIAE2AgQgAEEDNgIACxAAIAAgATYCBCAAQQQ2AgALEAAgACABNgIEIABBAjYCAAsQACAAIAE2AgQgAEEBNgIACxAAIAAgATYCBCAAQQA2AgALKgAgAEL////39/////4ANwIQIAD9DP////7////+/////v///379CwIACxAAIABBADYCACAAIAE2AgQLEwAgAEHgo8MANgIEIAAgATYCAAsTACAAQfyjwwA2AgQgACABNgIACxAAIABBAjYCACAAIAE2AgQLEwAgAEGop8MANgIEIAAgATYCAAsTACAAQeinwwA2AgQgACABNgIACxAAIABBAzYCACAAIAE2AgQLEwAgAEGoqMMANgIEIAAgATYCAAsOACAAIAFBQGsgAhC7AwsQACAAQQo2AgAgACABNgIECxMAIABBsKvDADYCBCAAIAE2AgALEAAgAEEHNgIAIAAgATYCBAsTACAAQbCuwwA2AgQgACABNgIACxAAIABBBjYCACAAIAE2AgQLEwAgAEGwscMANgIEIAAgATYCAAsOACAAIAFBNGogAhC7AwsQACAAQQk2AgAgACABNgIECxAAIABBCzYCACAAIAE2AgQLEwAgAEGwtMMANgIEIAAgATYCAAsQACAAQQw2AgAgACABNgIECxMAIABB3LfDADYCBCAAIAE2AgALEAAgAEENNgIAIAAgATYCBAsTACAAQcC7wwA2AgQgACABNgIACyoAIABC////9/f////+ADcCECAA/Qz////+/////v////7///9+/QsCAAsqACAAQv////f3/////gA3AhAgAP0M/////v////7////+////fv0LAgALEAAgAEEINgIAIAAgATYCBAsQACAAQQU2AgAgACABNgIECxAAIABBDjYCACAAIAE2AgQLEwAgAEGwhMQANgIEIAAgATYCAAsQACAAQQ82AgAgACABNgIECxMAIABBzITEADYCBCAAIAE2AgALEAAgAEEQNgIAIAAgATYCBAsTACAAQeiExAA2AgQgACABNgIACxAAIABBETYCACAAIAE2AgQLEwAgAEGEhcQANgIEIAAgATYCAAsQACAAQRI2AgAgACAB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bnQgYXQgaW5kZXgvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9jY2QvdG9pX2VudHJ5LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2R5bmFtaWNzL2pvaW50L211bHRpYm9keV9qb2ludC9tdWx0aWJvZHkucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvZHluYW1pY3Mvc29sdmVyL3NvbHZlcl9ib2R5LnJzAGJ1aWxkcy9yYXBpZXIzZC1zaW1kLy4uLy4uL3NyYy9keW5hbWljcy9yaWdpZF9ib2R5LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLnJ1c3R1cC90b29sY2hhaW5zL3N0YWJsZS1hYXJjaDY0LWFwcGxlLWRhcndpbi9saWIvcnVzdGxpYi9zcmMvcnVzdC9saWJyYXJ5L3N0ZC9zcmMvc3luYy9tcG1jL2FycmF5LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9uYWxnZWJyYS0wLjM0LjEvc3JjL2Jhc2UvbWF0cml4LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9uYWxnZWJyYS0wLjM0LjEvc3JjL2Jhc2UvbWluX21heC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUtYWFyY2g2NC1hcHBsZS1kYXJ3aW4vbGliL3J1c3RsaWIvc3JjL3J1c3QvbGlicmFyeS9hbGxvYy9zcmMvYm9ycm93LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9uYWxnZWJyYS0wLjM0LjEvc3JjL2Jhc2UvbWF0cml4X3ZpZXcucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL25hbGdlYnJhLTAuMzQuMS9zcmMvYmFzZS9jb25zdHJ1Y3Rpb25fdmlldy5ycwBsaWJyYXJ5L2NvcmUvc3JjL251bS9mbHQyZGVjL3N0cmF0ZWd5L2dyaXN1LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9uYWxnZWJyYS0wLjM0LjEvc3JjL2xpbmFsZy9sdS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUtYWFyY2g2NC1hcHBsZS1kYXJ3aW4vbGliL3J1c3RsaWIvc3JjL3J1c3QvbGlicmFyeS9zdGQvc3JjL3N5bmMvbXBtYy9jb250ZXh0LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcGFydGl0aW9uaW5nL2J2aC9idmhfdHJhdmVyc2VfYnZ0dC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUtYWFyY2g2NC1hcHBsZS1kYXJ3aW4vbGliL3J1c3RsaWIvc3JjL3J1c3QvbGlicmFyeS9zdGQvc3JjL3N5bmMvbXBtYy9saXN0LnJzAGxpYnJhcnkvY29yZS9zcmMvc2xpY2Uvc29ydC9zaGFyZWQvc21hbGxzb3J0LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcGFydGl0aW9uaW5nL2J2aC9idmhfaW5zZXJ0LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdXRpbHMvcG9pbnRfY2xvdWRfc3VwcG9ydF9wb2ludC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9qb2ludC9tdWx0aWJvZHlfam9pbnQvdW5pdF9tdWx0aWJvZHlfam9pbnQucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvZHluYW1pY3Mvam9pbnQvbXVsdGlib2R5X2pvaW50L211bHRpYm9keV9qb2ludC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9zb2x2ZXIvam9pbnRfY29uc3RyYWludC9qb2ludF92ZWxvY2l0eV9jb25zdHJhaW50LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2R5bmFtaWNzL3NvbHZlci9qb2ludF9jb25zdHJhaW50L2dlbmVyaWNfam9pbnRfY29uc3RyYWludC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9zb2x2ZXIvY29udGFjdF9jb25zdHJhaW50L2dlbmVyaWNfY29udGFjdF9jb25zdHJhaW50LnJzAGxpYnJhcnkvc3RkL3NyYy90aHJlYWQvY3VycmVudC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L3BvaW50L3BvaW50X3NlZ21lbnQucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9zaGFwZS9zZWdtZW50LnJzAGxpYnJhcnkvYWxsb2Mvc3JjL2ZtdC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3BhcnRpdGlvbmluZy9idmgvYnZoX3JlZml0LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2R5bmFtaWNzL3JpZ2lkX2JvZHlfc2V0LnJzAGJ1aWxkcy9yYXBpZXIzZC1zaW1kLy4uLy4uL3NyYy9keW5hbWljcy9yaWdpZF9ib2R5X3NldC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9qb2ludC9tdWx0aWJvZHlfam9pbnQvbXVsdGlib2R5X2pvaW50X3NldC5ycwBidWlsZHMvcmFwaWVyM2Qtc2ltZC8uLi8uLi9zcmMvZHluYW1pY3MvbXVsdGlib2R5X2pvaW50X3NldC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9qb2ludC9pbXB1bHNlX2pvaW50L2ltcHVsc2Vfam9pbnRfc2V0LnJzAGJ1aWxkcy9yYXBpZXIzZC1zaW1kLy4uLy4uL3NyYy9keW5hbWljcy9pbXB1bHNlX2pvaW50X3NldC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9zb2x2ZXIvam9pbnRfY29uc3RyYWludC9qb2ludF9jb25zdHJhaW50c19zZXQucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvZHluYW1pY3Mvc29sdmVyL2NvbnRhY3RfY29uc3RyYWludC9jb250YWN0X2NvbnN0cmFpbnRzX3NldC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9nZW9tZXRyeS9jb2xsaWRlcl9zZXQucnMAYnVpbGRzL3JhcGllcjNkLXNpbWQvLi4vLi4vc3JjL2dlb21ldHJ5L2NvbGxpZGVyX3NldC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3RyYW5zZm9ybWF0aW9uL2NvbnZleF9odWxsMy90cmlhbmdsZV9mYWNldC5ycwBsaWJyYXJ5L2NvcmUvc3JjL251bS9kaXlfZmxvYXQucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvZHluYW1pY3MvcmlnaWRfYm9keV9jb21wb25lbnRzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2RhdGEvbW9kaWZpZWRfb2JqZWN0cy5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9zb2x2ZXIvaW50ZXJhY3Rpb25fZ3JvdXBzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9uYWxnZWJyYS0wLjM0LjEvc3JjL2Jhc2Uvb3BzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9zZXJkZS0xLjAuMjE5L3NyYy9kZS9pbXBscy5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3RyYW5zZm9ybWF0aW9uL2NvbnZleF9odWxsX3V0aWxzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvYm91bmRpbmdfdm9sdW1lL2FhYmJfdXRpbHMucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy90cmFuc2Zvcm1hdGlvbi91dGlscy5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy91dGlscy5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2NvbnRhY3RfbWFuaWZvbGRzL2NvbnRhY3RfbWFuaWZvbGRzX3ZveGVsc192b3hlbHMucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9zaGFwZS92b3hlbHMvdm94ZWxzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi93ZWItdGltZS0xLjEuMC9zcmMvdGltZS9qcy5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL21hc3NfcHJvcGVydGllcy9tYXNzX3Byb3BlcnRpZXMucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvcGlwZWxpbmUvdXNlcl9jaGFuZ2VzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi93YXNtLWJpbmRnZW4tMC4yLjEwMC9zcmMvY29udmVydC9zbGljZXMucnMAL1VzZXJzL3NlYmNyb3pldC8ucnVzdHVwL3Rvb2xjaGFpbnMvc3RhYmxlLWFhcmNoNjQtYXBwbGUtZGFyd2luL2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvc3RkL3NyYy9zeXMvc3luYy9tdXRleC9ub190aHJlYWRzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9uYWxnZWJyYS0wLjM0LjEvc3JjL2Jhc2UvYmxhcy5ycwBsaWJyYXJ5L2FsbG9jL3NyYy9mZmkvY19zdHIucnMAL1VzZXJzL3NlYmNyb3pldC8ucnVzdHVwL3Rvb2xjaGFpbnMvc3RhYmxlLWFhcmNoNjQtYXBwbGUtZGFyd2luL2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvY29yZS9zcmMvaXRlci90cmFpdHMvaXRlcmF0b3IucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL25hbGdlYnJhLTAuMzQuMS9zcmMvYmFzZS9kZWZhdWx0X2FsbG9jYXRvci5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9zb2x2ZXIvdmVsb2NpdHlfc29sdmVyLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2R5bmFtaWNzL2NjZC9jY2Rfc29sdmVyLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdXRpbHMvY2VudGVyLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2NvbnRyb2wvY2hhcmFjdGVyX2NvbnRyb2xsZXIucnMAYnVpbGRzL3JhcGllcjNkLXNpbWQvLi4vLi4vc3JjL2NvbnRyb2wvY2hhcmFjdGVyX2NvbnRyb2xsZXIucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvY29udHJvbC9yYXlfY2FzdF92ZWhpY2xlX2NvbnRyb2xsZXIucnMAL1VzZXJzL3NlYmNyb3pldC8ucnVzdHVwL3Rvb2xjaGFpbnMvc3RhYmxlLWFhcmNoNjQtYXBwbGUtZGFyd2luL2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvc3RkL3NyYy9zeW5jL21wbWMvd2FrZXIucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9kZWZhdWx0X3F1ZXJ5X2Rpc3BhdGNoZXIucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvZHluYW1pY3MvaXNsYW5kX21hbmFnZXIucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9zaGFwZS9jeWxpbmRlci5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9zb2x2ZXIvam9pbnRfY29uc3RyYWludC9nZW5lcmljX2pvaW50X2NvbnN0cmFpbnRfYnVpbGRlci5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9zb2x2ZXIvam9pbnRfY29uc3RyYWludC9qb2ludF9jb25zdHJhaW50X2J1aWxkZXIucnMAYnVpbGRzL3JhcGllcjNkLXNpbWQvLi4vLi4vc3JjL2dlb21ldHJ5L2NvbGxpZGVyLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdXRpbHMvY2xlYW51cC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUtYWFyY2g2NC1hcHBsZS1kYXJ3aW4vbGliL3J1c3RsaWIvc3JjL3J1c3QvbGlicmFyeS9jb3JlL3NyYy9jbXAucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9pbnRlcnNlY3Rpb25fdGVzdC9pbnRlcnNlY3Rpb25fdGVzdF9zdXBwb3J0X21hcF9zdXBwb3J0X21hcC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L25vbmxpbmVhcl9zaGFwZV9jYXN0L25vbmxpbmVhcl9zaGFwZV9jYXN0X3N1cHBvcnRfbWFwX3N1cHBvcnRfbWFwLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvY29udGFjdC9jb250YWN0X3N1cHBvcnRfbWFwX3N1cHBvcnRfbWFwLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvY2xvc2VzdF9wb2ludHMvY2xvc2VzdF9wb2ludHNfc3VwcG9ydF9tYXBfc3VwcG9ydF9tYXAucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9kaXN0YW5jZS9kaXN0YW5jZV9zdXBwb3J0X21hcF9zdXBwb3J0X21hcC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2Nsb3Nlc3RfcG9pbnRzL2Nsb3Nlc3RfcG9pbnRzX2hhbGZzcGFjZV9zdXBwb3J0X21hcC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3V0aWxzL3ZlY19tYXAucnMAL1VzZXJzL3NlYmNyb3pldC8ucnVzdHVwL3Rvb2xjaGFpbnMvc3RhYmxlLWFhcmNoNjQtYXBwbGUtZGFyd2luL2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvc3RkL3NyYy9zeW5jL21wbWMvemVyby5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3NoYXBlL2NvbnZleF9wb2x5aGVkcm9uLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvcG9pbnQvcG9pbnRfdGV0cmFoZWRyb24ucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9zaGFwZS92b3hlbHMvdm94ZWxzX2VkaXRpb24ucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL25hbGdlYnJhLTAuMzQuMS9zcmMvYmFzZS9lZGl0aW9uLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9uYWxnZWJyYS0wLjM0LjEvc3JjL2Jhc2UvY29uc3RydWN0aW9uLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2R5bmFtaWNzL3NvbHZlci9jb250YWN0X2NvbnN0cmFpbnQvY29udGFjdF93aXRoX3R3aXN0X2ZyaWN0aW9uLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2R5bmFtaWNzL3NvbHZlci9jb250YWN0X2NvbnN0cmFpbnQvY29udGFjdF93aXRoX2NvdWxvbWJfZnJpY3Rpb24ucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvZHluYW1pY3Mvc29sdmVyL2NhdGVnb3JpemF0aW9uLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdHJhbnNmb3JtYXRpb24vY29udmV4X2h1bGwzL3ZhbGlkYXRpb24ucnMAbGlicmFyeS9jb3JlL3NyYy9udW0vZmx0MmRlYy9zdHJhdGVneS9kcmFnb24ucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL25hbGdlYnJhLTAuMzQuMS9zcmMvbGluYWxnL3N5bW1ldHJpY19laWdlbi5ycwBsaWJyYXJ5L2NvcmUvc3JjL251bS9iaWdudW0ucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9jb250YWN0X21hbmlmb2xkcy9jb250YWN0X21hbmlmb2xkc19wZm1fcGZtLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvY29udGFjdF9tYW5pZm9sZHMvY29udGFjdF9tYW5pZm9sZHNfaGFsZnNwYWNlX3BmbS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3RyYW5zZm9ybWF0aW9uL2NvbnZleF9odWxsMy9jb252ZXhfaHVsbC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2NvbnRhY3RfbWFuaWZvbGRzL2NvbnRhY3RfbWFuaWZvbGRzX2NvbnZleF9iYWxsLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvY29udGFjdF9tYW5pZm9sZHMvY29udGFjdF9tYW5pZm9sZHNfdm94ZWxzX2JhbGwucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9jbG9zZXN0X3BvaW50cy9jbG9zZXN0X3BvaW50c19iYWxsX2JhbGwucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9jb250YWN0X21hbmlmb2xkcy9jb250YWN0X21hbmlmb2xkc19iYWxsX2JhbGwucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL2JpbmNvZGUtMS4zLjMvc3JjL2ludGVybmFsLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvdm94ZWxzL3ZveGVsc19jaHVuay5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9qb2ludC9tdWx0aWJvZHlfam9pbnQvbXVsdGlib2R5X2xpbmsucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9namsvZ2prLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2dlb21ldHJ5L2Jyb2FkX3BoYXNlX2J2aC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3RyYW5zZm9ybWF0aW9uL3RvX3RyaW1lc2gvY3lsaW5kZXJfdG9fdHJpbWVzaC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3RyYW5zZm9ybWF0aW9uL3RvX3RyaW1lc2gvY29udmV4X3BvbHloZWRyb25fdG9fdHJpbWVzaC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3RyYW5zZm9ybWF0aW9uL3RvX3RyaW1lc2gvYmFsbF90b190cmltZXNoLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdHJhbnNmb3JtYXRpb24vdG9fdHJpbWVzaC9jb25lX3RvX3RyaW1lc2gucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9zaGFwZS90cmltZXNoLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdHJhbnNmb3JtYXRpb24vY29udmV4X2h1bGwzL2luaXRpYWxfbWVzaC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9nZW9tZXRyeS9pbnRlcmFjdGlvbl9ncmFwaC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9kYXRhL2dyYXBoLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9lbmEtMC4xNC4zL3NyYy91bmRvX2xvZy5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvbmFsZ2VicmEtMC4zNC4xL3NyYy9iYXNlL2luZGV4aW5nLnJzAGxpYnJhcnkvYWxsb2Mvc3JjL3N0cmluZy5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3BhcnRpdGlvbmluZy9idmgvYnZoX29wdGltaXplLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcGFydGl0aW9uaW5nL2J2aC9idmhfdHJhdmVyc2UucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL25hbGdlYnJhLTAuMzQuMS9zcmMvYmFzZS9jb21wb25lbnR3aXNlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2dlb21ldHJ5L25hcnJvd19waGFzZS5ycwBidWlsZHMvcmFwaWVyM2Qtc2ltZC8uLi8uLi9zcmMvZ2VvbWV0cnkvbmFycm93X3BoYXNlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvYm91bmRpbmdfdm9sdW1lL2JvdW5kaW5nX3NwaGVyZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2NvbnRhY3RfbWFuaWZvbGRzL2NvbnRhY3RfbWFuaWZvbGRzX3ZveGVsc19zaGFwZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2NvbnRhY3RfbWFuaWZvbGRzL2NvbnRhY3RfbWFuaWZvbGRzX3RyaW1lc2hfc2hhcGUucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9wb2ludC9wb2ludF9jb21wb3NpdGVfc2hhcGUucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9jb250YWN0X21hbmlmb2xkcy9jb250YWN0X21hbmlmb2xkc192b3hlbHNfY29tcG9zaXRlX3NoYXBlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvY29udGFjdF9tYW5pZm9sZHMvY29udGFjdF9tYW5pZm9sZHNfY29tcG9zaXRlX3NoYXBlX2NvbXBvc2l0ZV9zaGFwZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2NvbnRhY3RfbWFuaWZvbGRzL2NvbnRhY3RfbWFuaWZvbGRzX2hlaWdodGZpZWxkX2NvbXBvc2l0ZV9zaGFwZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2NvbnRhY3RfbWFuaWZvbGRzL2NvbnRhY3RfbWFuaWZvbGRzX2NvbXBvc2l0ZV9zaGFwZV9zaGFwZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2NvbnRhY3RfbWFuaWZvbGRzL2NvbnRhY3RfbWFuaWZvbGRzX2hlaWdodGZpZWxkX3NoYXBlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvc2hhcmVkX3NoYXBlLnJzAGJ1aWxkcy9yYXBpZXIzZC1zaW1kLy4uLy4uL3NyYy9nZW9tZXRyeS9zaGFwZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3NoYXBlL3NoYXBlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvcG9seWxpbmUucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy90cmFuc2Zvcm1hdGlvbi90b19vdXRsaW5lL3ZveGVsc190b19vdXRsaW5lLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdHJhbnNmb3JtYXRpb24vdG9fb3V0bGluZS9yb3VuZF9jeWxpbmRlcl90b19vdXRsaW5lLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdHJhbnNmb3JtYXRpb24vdG9fb3V0bGluZS9yb3VuZF9jb252ZXhfcG9seWhlZHJvbl90b19vdXRsaW5lLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdHJhbnNmb3JtYXRpb24vdG9fb3V0bGluZS9iYWxsX3RvX291dGxpbmUucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy90cmFuc2Zvcm1hdGlvbi90b19vdXRsaW5lL3JvdW5kX2NvbmVfdG9fb3V0bGluZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3RyYW5zZm9ybWF0aW9uL3RvX291dGxpbmUvY2Fwc3VsZV90b19vdXRsaW5lLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdHJhbnNmb3JtYXRpb24vdG9fb3V0bGluZS9yb3VuZF9jdWJvaWRfdG9fb3V0bGluZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9waXBlbGluZS9waHlzaWNzX3BpcGVsaW5lLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL3BpcGVsaW5lL2RlYnVnX3JlbmRlcl9waXBlbGluZS9kZWJ1Z19yZW5kZXJfcGlwZWxpbmUucnMAbGlicmFyeS9zdGQvc3JjL3N5cy9wYWwvd2FzbS8uLi91bnN1cHBvcnRlZC90aW1lLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLnJ1c3R1cC90b29sY2hhaW5zL3N0YWJsZS1hYXJjaDY0LWFwcGxlLWRhcndpbi9saWIvcnVzdGxpYi9zcmMvcnVzdC9saWJyYXJ5L2NvcmUvc3JjL3RpbWUucnMAL3J1c3RjLzExNTllNzhjNDc0N2IwMmVmOTk2ZTU1MDgyYjcwNGMwOWI5NzA1ODgvbGlicmFyeS9jb3JlL3NyYy90aW1lLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvY29udGFjdF9tYW5pZm9sZHMvY29udGFjdF9tYW5pZm9sZHNfY2Fwc3VsZV9jYXBzdWxlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvY2xvc2VzdF9wb2ludHMvY2xvc2VzdF9wb2ludHNfY3Vib2lkX3RyaWFuZ2xlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvdHJpYW5nbGUucnMAbGlicmFyeS9jb3JlL3NyYy91bmljb2RlL3ByaW50YWJsZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvbmFsZ2VicmEtMC4zNC4xL3NyYy9iYXNlL3ZlY19zdG9yYWdlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcGFydGl0aW9uaW5nL2J2aC9idmhfdHJlZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvbmFsZ2VicmEtMC4zNC4xL3NyYy9saW5hbGcvcGVybXV0YXRpb25fc2VxdWVuY2UucnMAL1VzZXJzL3NlYmNyb3pldC8ucnVzdHVwL3Rvb2xjaGFpbnMvc3RhYmxlLWFhcmNoNjQtYXBwbGUtZGFyd2luL2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvYWxsb2Mvc3JjL3NsaWNlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvdm94ZWxzL3ZveGVsc19uZWlnaGJvcmhvb2QucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL2VuYS0wLjE0LjMvc3JjL3VuaWZ5L21vZC5ycwAvcnVzdC9kZXBzL2hhc2hicm93bi0wLjE1LjQvc3JjL3Jhdy9tb2QucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL2hhc2hicm93bi0wLjE2LjAvc3JjL3Jhdy9tb2QucnMAbGlicmFyeS9jb3JlL3NyYy9mbXQvbW9kLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLnJ1c3R1cC90b29sY2hhaW5zL3N0YWJsZS1hYXJjaDY0LWFwcGxlLWRhcndpbi9saWIvcnVzdGxpYi9zcmMvcnVzdC9saWJyYXJ5L2FsbG9jL3NyYy9jb2xsZWN0aW9ucy9iaW5hcnlfaGVhcC9tb2QucnMAbGlicmFyeS9zdGQvc3JjL3RocmVhZC9tb2QucnMAL1VzZXJzL3NlYmNyb3pldC8ucnVzdHVwL3Rvb2xjaGFpbnMvc3RhYmxlLWFhcmNoNjQtYXBwbGUtZGFyd2luL2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvc3RkL3NyYy9zeW5jL21wbWMvbW9kLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLnJ1c3R1cC90b29sY2hhaW5zL3N0YWJsZS1hYXJjaDY0LWFwcGxlLWRhcndpbi9saWIvcnVzdGxpYi9zcmMvcnVzdC9saWJyYXJ5L2FsbG9jL3NyYy9yYXdfdmVjL21vZC5ycwAvcnVzdGMvMTE1OWU3OGM0NzQ3YjAyZWY5OTZlNTUwODJiNzA0YzA5Yjk3MDU4OC9saWJyYXJ5L2FsbG9jL3NyYy9yYXdfdmVjL21vZC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUtYWFyY2g2NC1hcHBsZS1kYXJ3aW4vbGliL3J1c3RsaWIvc3JjL3J1c3QvbGlicmFyeS9hbGxvYy9zcmMvdmVjL21vZC5ycwBsaWJyYXJ5L2NvcmUvc3JjL251bS9mbHQyZGVjL21vZC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3NoYXBlL2NvbXBvdW5kLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL3BpcGVsaW5lL2RlYnVnX3JlbmRlcl9waXBlbGluZS9kZWJ1Z19yZW5kZXJfYmFja2VuZC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3BhcnRpdGlvbmluZy9idmgvYnZoX2Jpbm5lZF9idWlsZC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3BhcnRpdGlvbmluZy9idmgvYnZoX3Bsb2NfYnVpbGQucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9jbG9zZXN0X3BvaW50cy9jbG9zZXN0X3BvaW50c19jdWJvaWRfY3Vib2lkLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvY3Vib2lkLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvZmVhdHVyZV9pZC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUtYWFyY2g2NC1hcHBsZS1kYXJ3aW4vbGliL3J1c3RsaWIvc3JjL3J1c3QvbGlicmFyeS9hbGxvYy9zcmMvdmVjL3NwZWNfZnJvbV9pdGVyX25lc3RlZC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL21hc3NfcHJvcGVydGllcy9tYXNzX3Byb3BlcnRpZXNfdHJpbWVzaDNkLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvcG9seWdvbmFsX2ZlYXR1cmUzZC5ycwAvcnVzdC9kZXBzL2RsbWFsbG9jLTAuMi4xMC9zcmMvZGxtYWxsb2MucnMAbGlicmFyeS9zdGQvc3JjL2FsbG9jLnJzAGxpYnJhcnkvYWxsb2Mvc3JjL3N5bmMucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL2VuYS0wLjE0LjMvc3JjL3NuYXBzaG90X3ZlYy5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvanMtc3lzLTAuMy43Ny9zcmMvbGliLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9vbmNlX2NlbGwtMS4yMS4zL3NyYy9saWIucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3ZlY19tYXAtMC44LjIvc3JjL2xpYi5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2Yvc21hbGx2ZWMtMS4xNS4xL3NyYy9saWIucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9ib3VuZGluZ192b2x1bWUvYWFiYi5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9kYXRhL2NvYXJlbmEucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvZGF0YS9hcmVuYS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2dqay92b3Jvbm9pX3NpbXBsZXgzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvaGVpZ2h0ZmllbGQzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvZXBhL2VwYTMucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy90cmFuc2Zvcm1hdGlvbi9jb252ZXhfaHVsbDIucnMAL1VzZXJzL3NlYmNyb3pldC8ucnVzdHVwL3Rvb2xjaGFpbnMvc3RhYmxlLWFhcmNoNjQtYXBwbGUtZGFyd2luL2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvY29yZS9zcmMvbnVtL2YzMi5ycwABAQECAQEBAgEBAQICAgIDAQEBAgEBAQIBAQECAgICAwEBAQIBAQECAQEBAgICAgMCAgIDAgICAwICAgMDAwMEAAAAAGY1EAB5AAAANQAAACwAAABDYW5ub3QgZGVzZXJpYWxpemUgY3VzdG9tIHNoYXBlLgAAAAAAAAAAAQAAAAQAAABBbGxvY2F0aW9uIGZyb20gaXRlcmF0b3IgZXJyb3I6IHRoZSBpdGVyYXRvciBkaWQgbm90IHlpZWxkIHRoZSBjb3JyZWN0IG51bWJlciBvZiBlbGVtZW50cy4AABxWEABaAAAAJBkQAHMAAACEAAAACQAAAAAAAAAIAAAABAAAAAUAAABhIHR1cGxlIG9mIHNpemUgMgBBvK3BAAthAQAAAAYAAACqEhAAYwAAAJUEAAAiAAAAqhIQAGMAAACYBAAAHAAAAHN0cnVjdCBUcmlNZXNoIHdpdGggNyBlbGVtZW50cwAA5FYQAB4AAABhIHR1cGxlIG9mIHNpemUgMwBBqK7BAAsFAQAAAAcAQbiuwQALBQEAAAAHAEHIrsEACwUBAAAABwBB2K7BAAuJDgEAAAAHAAAAc3RydWN0IENvbXBvdW5kIHdpdGggNCBlbGVtZW50cwBgVxAAHwAAAHN0cnVjdCBQb2x5bGluZSB3aXRoIDMgZWxlbWVudHMAiFcQAB8AAAB2YXJpYW50IGluZGV4IDAgPD0gaSA8IDKwVxAAGAAAAHN0cnVjdCBDb2xsaWRlciB3aXRoIDExIGVsZW1lbnRz0FcQACAAAABzdHJ1Y3QgVm94ZWxzIHdpdGggNiBlbGVtZW50cwAAAPhXEAAdAAAAc3RydWN0IEhlaWdodEZpZWxkIHdpdGggNiBlbGVtZW50cwAAIFgQACIAAAB2YXJpYW50IGluZGV4IDAgPD0gaSA8IDIwAAAATFgQABkAAABzdHJ1Y3QgVHJpTWVzaENvbm5lY3RlZENvbXBvbmVudHMgd2l0aCAzIGVsZW1lbnRzAAAAcFgQADEAAABzdHJ1Y3QgR3JhcGggd2l0aCAyIGVsZW1lbnRzrFgQABwAAABzdHJ1Y3QgTFUgd2l0aCAyIGVsZW1lbnRzAAAA0FgQABkAAABzdHJ1Y3QgSXNsYW5kTWFuYWdlciB3aXRoIDQgZWxlbWVudHP0WBAAJAAAAHN0cnVjdCBDb252ZXhQb2x5aGVkcm9uIHdpdGggOCBlbGVtZW50cwAgWRAAJwAAAHN0cnVjdCBCdmhOb2RlV2lkZSB3aXRoIDIgZWxlbWVudHMAAFBZEAAiAAAAc3RydWN0IEJyb2FkUGhhc2VCdmggd2l0aCA0IGVsZW1lbnRzfFkQACQAAABzdHJ1Y3QgQ29udGFjdE1hbmlmb2xkRGF0YSB3aXRoIDcgZWxlbWVudHMAAKhZEAAqAAAAc3RydWN0IEpvaW50TW90b3Igd2l0aCA3IGVsZW1lbnRzAAAA3FkQACEAAABzdHJ1Y3QgR2VuZXJpY0pvaW50IHdpdGggMTEgZWxlbWVudHMIWhAAJAAAAHZhcmlhbnQgaW5kZXggMCA8PSBpIDwgMzRaEAAYAAAAdmFyaWFudCBpbmRleCAwIDw9IGkgPCA0VFoQABgAAABzdHJ1Y3QgSW50ZWdyYXRpb25QYXJhbWV0ZXJzIHdpdGggMTcgZWxlbWVudHMAAAB0WhAALQAAAHN0cnVjdCBNdWx0aWJvZHkgd2l0aCAxOCBlbGVtZW50cwAAAKxaEAAhAAAAc3RydWN0IEludGVyYWN0aW9uR3JhcGggd2l0aCAxIGVsZW1lbnQAANhaEAAmAAAAc3RydWN0IEluZGV4U2VxdWVuY2Ugd2l0aCAyIGVsZW1lbnRzCFsQACQAAABzdHJ1Y3QgSW1wdWxzZUpvaW50IHdpdGggNSBlbGVtZW50cwA0WxAAIwAAAHR1cGxlIHN0cnVjdCBNb2RpZmllZE9iamVjdHMgd2l0aCAyIGVsZW1lbnRzYFsQ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EACcAAAASgAAABwAAAAcORAAnAAAAEoAAAA2AAAAHDkQAJwAAAAXAQAAKgAAABw5EACcAAAAdgAAADkAAAAcORAAnAAAAH0AAAAnAAAAHDkQAJwAAACQAAAAIwAAABw5EACcAAAAnQAAAC4AAAAAAAAAMAAAAAQAAADmAAAA5wAAABw5EACcAAAA8gAAACIAAABfOhAAoQAAAEsAAAAcAAAAXzoQAKEAAABLAAAANgAAAAAAAAA4AAAABAAAAOgAAADpAAAAXzoQAKEAAABiAAAANQAAAF86EAChAAAAZQAAACMAAABfOhAAoQAAAHoAAAAjAAAAXzoQAKEAAAB/AAAALgAAALk5EAClAAAASAAAABwAAAC5ORAApQAAAEgAAAA2AAAAAAAAADAAAAAEAAAA6gAAAOsAAAAAAAAAPAAAAAQAAADsAAAA7QAAALk5EAClAAAAdwAAAD0AAAC5ORAApQAAAHoAAAArAAAAuTkQAKUAAACRAAAAKwAAALk5EAClAAAAlgAAADYAAABEVBAAagAAAMgBAAAkAAAARFQQAGoAAADJAQAAJAAAAERUEABqAAAAygEAACQAAABEVBAAagAAAN8BAAAYAAAARFQQAGoAAADgAQAAGAAAAERUEABqAAAA4QEAABgAAABEVBAAagAAAOIBAAAYAAAARFQQAGoAAADlAQAAJwAAAERUEABqAAAA5QEAAEQAAABEVBAAagAAAOoBAAAnAAAARFQQAGoAAADqAQAARAAAAERUEABqAAAA7wEAACcAAABEVBAAagAAAO8BAABEAAAARFQQAGoAAAD0AQAAJwAAAERUEABqAAAA9AEAAEQAAABIaXQgdW5leHBlY3RlZCBzdGF0ZSBpbiBFUEE6IGZhaWxlZCB0byBwcm9qZWN0IHRoZSBvcmlnaW4gb24gdGhlIGluaXRpYWwgc2ltcGxleC4AAABAehAAUQAAAERUEABqAAAA/AEAABEAAABwYXJyeTNkOjpxdWVyeTo6ZXBhOjplcGEzAAAARFQQAGoAAAABAgAAKAAAAERUEABqAAAAFAIAABgAAABEVBAAagAAABUCAAAYAAAARFQQAGoAAAAlAgAAIgAAAERUEABqAAAALQIAABsAAABEVBAAagAAAEQCAAAXAAAARFQQAGoAAABGAgAALAAAAERUEABqAAAARwIAACwA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TAAAAA4AAABEVBAAagAAAGIAAAANAAAARFQQAGoAAABjAAAADQAAAERUEABqAAAAZAAAAA0AAABEVBAAagAAAHoAAAANAAAARFQQAGoAAAB7AAAAEwAAAERUEABqAAAAfAAAABMAAABIaXQgdW5leHBlY3RlZCBzdGF0ZSBpbiBFUEE6IGZvdW5kIGluZGV4ICwgZXhwZWN0ZWQ6IAAAAIzFEAApAAAAtcUQAAwAAAA4rxAAAQAAAERUEABqAAAAjgAAABEAAABwYXJyeTNkOjpxdWVyeTo6ZXBhOjplcGEzAAAARFQQAGoAAACaAAAAHAAAAERUEABqAAAAmgAAABMAAABEVBAAagAAAJsAAAATAAAARFQQAGoAAACcAAAAEwAAAERUEABqAAAAnQAAABMAAABEVBAAagAAAN8BAAAYAAAARFQQAGoAAADgAQAAGAAAAERUEABqAAAA4QEAABgAAABEVBAAagAAAOIBAAAYAAAARFQQAGoAAADlAQAAJwAAAERUEABqAAAA5QEAAEQAAABEVBAAagAAAOoBAAAnAAAARFQQAGoAAADqAQAARAAAAERUEABqAAAA7wEAACcAAABEVBAAagAAAO8BAABEAAAARFQQAGoAAAD0AQAAJwAAAERUEABqAAAA9AEAAEQAAABIaXQgdW5leHBlY3RlZCBzdGF0ZSBpbiBFUEE6IGZhaWxlZCB0byBwcm9qZWN0IHRoZSBvcmlnaW4gb24gdGhlIGluaXRpYWwgc2ltcGxleC4AAAAYxxAAUQAAAERUEABqAAAA/AEAABEAAABEVBAAagAAABQCAAAYAAAARFQQAGoAAAAVAgAAGAAAAERUEABqAAAAJQIAACIAAABEVBAAagAAAC0CAAAbAAAARFQQAGoAAABEAgAAFwAAAERUEABqAAAARgIAACwAAABEVBAAagAAAEcCAAAsAAAARFQQAGoAAABIAgAALAAAAERUEABqAAAAegIAABcAAABEVBAAagAAAHsCAAAjAAAARFQQAGoAAABWAgAAHwAAAERUEABqAAAAYwIAACAAAABEVBAAagAAAGYCAAA6AAAARFQQAGoAAABmAgAALwAAAERUEABqAAAAPQIAACwAAABEVBAAagAAAIgCAAAkAAAARFQQAGoAAADAAQAAGwAAAERUEABqAAAABwIAABoAAABEVBAAagAAAI4CAAAXAAAARFQQAGoAAACQAgAAIQAAAERUEABqAAAAlwIAACYAAABEVBAAagAAAJsCAAAfAAAARFQQAGoAAACdAgAAHwAAAERUEABqAAAAnQIAAD8AAAAsLxAAaQAAANMAAAAOAAAAYXNzZXJ0aW9uIGZhaWxlZDogbWluX2JvdW5kLmlzX2Zpbml0ZSgpACwvEABpAAAAlwEAAAkAAAAAAAAALC8QAGkAAAD8AgAACQAAAF5TEAB2AAAALQAAABcAAABeUxAAdgAAAFYAAAASAAAAvK8QABQAAABeUxAAdgAAAGEAAAAJAAAAXlMQAHYAAABmAAAACQAAAF5TEAB2AAAAZwAAAAoAAABeUxAAdgAAAG0AAAAJAAAAXlMQAHYAAABzAAAACgAAAF5TEAB2AAAAkQAAABYAAABeUxAAdgAAAOUAAAAeAAAAXlMQAHYAAAAOAQAAHgAAAGFzc2VydGlvbiBmYWlsZWQ6IHNlbGYuZGltID09IDMAXlMQAHYAAAC8AAAADQAAAF5TEAB2AAAAXAEAABQAAABBIBAAnQAAADkAAAApAAAAAAAAAAQAAAAEAAAAvgEAAL8BAADAAQAAwQEAAMIBAADDAQAAxAEAAMUBAADGAQAAxwEAAAAAAAAEAAAABAAAACQBAADIAQAAyQEAAMoBAADLAQAAAAAAAAQAAAAEAAAAJAEAAMgBAADJAQAAygEAAMsBAADIAQAAAAAAAAQAAAAEAAAAJAEAAMgBAADJAQAAygEAAMsBAADIAQAAyAEAAMkBAAAAAAAABAAAAAQAAADMAQAAzQEAAM4BAADPAQAA0AEAANEBAAC+AQAAvwEAAMABAADBAQAAwgEAAMMBAADEAQAAxQEAAMYBAADHAQAAWMoQACQBAACEqxAAyAEAAMkBAADKAQAAywEAAIzKEADIAQAArMoQAMgBAADJAQAA0MoQANIBAADTAQAA1AEAANUBAADWAQAA1wEAANgBAADZAQAA2gEAANsBAADcAQAA3QEAAH8BAADeAQAAgQEAAN8BAADgAQAA4QEAAENsb3Nlc3QgcG9pbnRzIG5vdCBmb3VuZCBkZXNwaXRlIHNldHRpbmcgdGhlIG1heCBkaXN0YW5jZSB0byBpbmZpbml0eS4AAMTLEABGAAAA3yAQAKMAAADMAAAAEQAAAHBhcnJ5M2Q6OnF1ZXJ5Ojpub25saW5lYXJfc2hhcGVfY2FzdDo6bm9ubGluZWFyX3NoYXBlX2Nhc3Rfc3VwcG9ydF9tYXBfc3VwcG9ydF9tYXAAAJ44EAB9AAAATwAAAA4AAACeOBAAfQAAAG8AAAAOAAAAnjgQAH0AAAARAQAADgAAAJ44EAB9AAAAKgEAACMAAACeOBAAfQAAAC0BAAAiAAAAnjgQAH0AAAAoAQAAIwAAAGFzc2VydGlvbiBmYWlsZWQ6IHNxbmFiICE9IDAuMAAAngoQAHUAAABHAAAADQAAAGFzc2VydGlvbiBmYWlsZWQ6IGRlbm9tICE9IDAuMAAAHCUQAHkAAAAXAQAAFQAAAAAAAAAIAAAABAAAAOIBAADjAQAAAAAAAAgAAAAEAAAA5AEAAOUBAAAAAAAACAAAAAQAAADmAQAA5wEAAAAAAAAIAAAABAAAAOgBAADpAQAAAAAAAAgAAAAEAAAA6gEAAOsBAABBIGNvbXBvdW5kIHNoYXBlIG11c3QgY29udGFpbiBhdCBsZWFzdCBvbmUgc2hhcGUuAAAAnM0QADEAAAD9ShAAagAAAHIAAAAJAAAA/UoQAGoAAAB+AAAAEwAAAP1KEABqAAAAfwAAABQAAABOZXN0ZWQgY29tcG9zaXRlIHNoYXBlcyBhcmUgbm90IGFsbG93ZWQuCM4QACgAAAD9ShAAagAAAIIAAAARAAAA/UoQAGoAAAC7AgAALAAAAIFNEABoAAAANAEAABIAAACBTRAAaAAAADgBAAASAAAAgU0QAGgAAAA8AQAAEgAAAIFNEABoAAAAmQEAABgAAAA9PRAAagAAAK0AAAAmAAAAPT0QAGoAAACtAAAAQQAAAD09EABqAAAAmgEAAB8AAAA9PRAAagAAAJwBAAAaAAAAPT0QAGoAAACdAQAAGgAAAAAAAAAYAAAABAAAAOwBAADtAQAA7gEAAO8BAADwAQAA8QEAAPIBAADzAQAA9AEAAPUBAAAAAAAAGAAAAAQAAAAXAQAA9gEAAPcBAAD4AQAA+QEAAAAAAAAYAAAABAAAABcBAAD2AQAA9wEAAPgBAAD5AQAA9gEAAAAAAAAYAAAABAAAABcBAAD2AQAA9wEAAPgBAAD5AQAA9gEAAPYBAAD3AQAAAAAAABgAAAAEAAAA+gEAAPsBAAD8AQAA/QEAAP4BAAD/AQAA7AEAAO0BAADuAQAA7wEAAPABAADxAQAA8gEAAPMBAAD0AQAA9QEAAOjOEAAXAQAABKsQAPYBAAD3AQAA+AEAAPkBAAAczxAA9gEAADzPEAD2AQAA9wEAAGDPEAAAAgAAAQIAAAICAAADAgAABAIAAAUCAAAGAgAANQAAAAcCAAAIAgAAfQEAAH4BAAB/AQAACQIAAIEBAAAKAgAACwIAAAwCAAAUCxAAaQAAAKIAAAAyAAAAFAsQAGkAAAChAQAAEgAAACUBAABgAAAABAAAAA0CAAAOAgAADwIAABACAAARAgAAEgIAABMCAAAUAgAAFQIAABYCAAAlAQAAYAAAAAQAAAAmAQAAFwIAABgCAAAZAgAAGgIAACUBAABgAAAABAAAACYBAAAXAgAAGAIAABkCAAAaAgAAFwIAACUBAABgAAAABAAAACYBAAAXAgAAGAIAABkCAAAaAgAAFwIAABcCAAAYAgAAJQEAAGAAAAAEAAAAGwIAABwCAAAdAgAAHgIAAB8CAAAgAgAADQIAAA4CAAAPAgAAEAIAABECAAASAgAAEwIAABQCAAAVAgAAFgIAAHTQEAAmAQAAlKsQABcCAAAYAgAAGQIAABoCAACo0BAAFwIAAMjQEAAXAgAAGAIAAOzQEAAhAgAAIgIAACMCAAAkAgAAJQIAACYCAAAnAgAAKAIAACkCAAAqAgAAKwIAACwCAAB/AQAALQIAAIEBAAAuAgAALwIAADACAAAAAAAABAAAAAQAAAAxAgAAMgIAADMCAAA0AgAAAAAAAAwAAAAEAAAANQIAADYCAAA3AgAAOAIAAAAAAAAMAAAABAAAADUCAAA2AgAANwIAADgCAAASAAAAOQIAAAAAAAAcAAAABAAAADoCAAA7AgAAPAIAAD0CAAA+AgAAPwIAAEACAABBAgAAQgIAAEMCAAAAAAAAHAAAAAQAAAA6AQAARAIAAEUCAABGAgAARwIAAAAAAAAcAAAABAAAADoBAABEAgAARQIAAEYCAABHAgAARAIAAAAAAAAcAAAABAAAADoBAABEAgAARQIAAEYCAABHAgAARAIAAEQCAABFAgAAAAAAABwAAAAEAAAASAIAAEkCAABKAgAASwIAAEwCAABNAgAAOgIAADsCAAA8AgAAPQIAAD4CAAA/AgAAQAIAAEECAABCAgAAQwIAADzSEAA6AQAAdKwQAEQCAABFAgAARgIAAEcCAABw0hAARAIAAJDSEABEAgAARQIAALTSEABOAgAATwIAAFACAABRAgAAUgIAAFMCAABUAgAAVQIAAFYCAABXAgAAWAIAAH4BAAB/AQAAWQIAAIEBAABaAgAAWwIAAFwCAAAAAAAAHAAAAAQAAABdAgAAXgIAAF8CAABgAgAAAAAAABgAAAAEAAAAYQIAAGICAABjAgAAZAIAAGUCAAA5AgAAAAAAACQAAAAEAAAAZgIAAGcCAABoAgAAaQIAAAAAAAAkAAAABAAAAGYCAABnAgAAaAIAAGkCAAAYAAAAOQIAAAAAAAAYAAAABAAAAGECAABiAgAAYwIAAGQCAAAtAQAAWAAAAAQAAABqAgAAawIAAGwCAABtAgAAbgIAAG8CAABwAgAAcQIAAHICAABzAgAALQEAAFgAAAAEAAAALgEAAHQCAAB1AgAAdgIAAHcCAAAtAQAAWAAAAAQAAAAuAQAAdAIAAHUCAAB2AgAAdwIAAHQCAAAtAQAAWAAAAAQAAAAuAQAAdAIAAHUCAAB2AgAAdwIAAHQCAAB0AgAAdQIAAC0BAABYAAAABAAAAHgCAAB5AgAAegIAAHsCAAB8AgAAfQIAAGoCAABrAgAAbAIAAG0CAABuAgAAbwIAAHACAABxAgAAcgIAAHMCAABE1BAALgEAAPSrEAB0AgAAdQIAAHYCAAB3AgAAeNQQAHQCAACY1BAAdAIAAHUCAAC81BAAfgIAAH8CAACAAgAAgQIAAIICAACDAgAAhAIAAIUCAACGAgAAhwIAAIgCAACJAgAAOQIAAIEBAACKAgAA3wEAAFsCAACLAgAALQEAAFgAAAAEAAAAjAIAAI0CAAA0AQAAQAAAAAQAAACOAgAAjwIAAJACAACRAgAAkgIAAJMCAACUAgAAlQIAAJYCAACXAgAANAEAAEAAAAAEAAAANQEAAJgCAACZAgAAmgIAAJsCAAA0AQAAQAAAAAQAAAA1AQAAmAIAAJkCAACaAgAAmwIAAJgCAAA0AQAAQAAAAAQAAAA1AQAAmAIAAJkCAACaAgAAmwIAAJgCAACYAgAAmQIAADQBAABAAAAABAAAAJwCAACdAgAAngIAAJ8CAACgAgAAoQIAAI4CAACPAgAAkAIAAJECAACSAgAAkwIAAJQCAACVAgAAlgIAAJcCAADE1RAANQEAADSsEACYAgAAmQIAAJoCAACbAgAA+NUQAJgCAAAY1hAAmAIAAJkCAAA81hAAogIAAKMCAACkAgAApQIAAKYCAACnAgAAqAIAADUAAACpAgAAqgIAAH0BAAAsAgAAOQIAAIEBAACrAgAA3wEAAFsCAACsAgAANAEAAEAAAAAEAAAArQIAAK4CAAAcAQAApAAAAAQAAACvAgAAsAIAALECAACyAgAAswIAALQCAAC1AgAAtgIAALcCAAC4AgAAHAEAAKQAAAAEAAAAHQEAALkCAAC6AgAAuwIAALwCAAAcAQAApAAAAAQAAAAdAQAAuQIAALoCAAC7AgAAvAIAALkCAAAcAQAApAAAAAQAAAAdAQAAuQIAALoCAAC7AgAAvAIAALkCAAC5AgAAugIAABwBAACkAAAABAAAAL0CAAC+AgAAvwIAAMACAADBAgAAwgIAAK8CAACwAgAAsQIAALICAACzAgAAtAIAALUCAAC2AgAAtwIAALgCAABE1xAAHQEAAESrEAC5AgAAugIAALsCAAC8AgAAeNcQALkCAACY1xAAuQIAALoCAAC81xAAwwIAAMQCAADFAgAAxgIAAMcCAADIAgAAyQIAAMoCAADLAgAAzAIAAH0BAAAsAgAAOQIAAIEBAADNAgAA3wEAAM4CAADPAgAAHAEAAKQAAAAEAAAA0AIAANECAAA3AQAAVAAAAAQAAADSAgAA0wIAANQCAADVAgAA1gIAANcCAADYAgAA2QIAANoCAADbAgAANwEAAFQAAAAEAAAAOAEAANwCAADdAgAA3gIAAN8CAAA3AQAAVAAAAAQAAAA4AQAA3AIAAN0CAADeAgAA3wIAANwCAAA3AQAAVAAAAAQAAAA4AQAA3AIAAN0CAADeAgAA3wIAANwCAADcAgAA3QIAADcBAABUAAAABAAAAOACAADhAgAA4gIAAOMCAADkAgAA5QIAANICAADTAgAA1AIAANUCAADWAgAA1wIAANgCAADZAgAA2gIAANsCAADE2BAAOAEAAFSsEADcAgAA3QIAAN4CAADfAgAA+NgQANwCAAAY2RAA3AIAAN0CAAA82RAA5gIAAOcCAADoAgAA6QIAAOoCAADrAgAA7AIAADUAAADtAgAA7gIAAH0BAAAsAgAAOQIAAIEBAACBAQAA3wEAAFsCAADvAgAAJQEAAGAAAAAEAAAA8AIAAPECAADyAgAA8wIAACUBAABgAAAABAAAAPACAADxAgAA8gIAAPMCAAD0AgAAfwEAAAAAAAAIAAAABAAAAPUCAAD2AgAA9wIAAPgCAAD5AgAA+gIAAPsCAAD8AgAA/QIAAP4CAAAAAAAACAAAAAQAAAAsAQAA/wIAAAADAAABAwAAAgMAAAAAAAAIAAAABAAAACwBAAD/AgAAAAMAAAEDAAACAwAA/wIAAAAAAAAIAAAABAAAACwBAAD/AgAAAAMAAAEDAAACAwAA/wIAAP8CAAAAAwAAAAAAAAgAAAAEAAAAAwMAAAQDAAAFAwAABgMAAAcDAAAIAwAA9QIAAPYCAAD3AgAA+AIAAPkCAAD6AgAA+wIAAPwCAAD9AgAA/gIAAHDaEAAsAQAA5KsQAP8CAAAAAwAAAQMAAAIDAACk2hAA/wIAAMTaEAD/AgAAAAMAAOjaEAAJAwAACgMAAAsDAAAMAwAADQMAAA4DAAAPAwAAEAMAABEDAAASAwAAEwMAAH4BAAB/AQAAFAMAAIEBAAAVAwAAWwIAABYDAAAAAAAACAAAAAQAAAAXAwAAGAMAABkDAAAaAwAAAAAAAAgAAAAEAAAAFwMAABgDAAAZAwAAGgMAABsDAAA5AgAAAAAAAAgAAAAEAAAAHAMAAB0DAAAeAwAAHwMAACADAAAhAwAAIgMAACMDAAAkAwAAJQMAAAAAAAAIAAAABAAAABgBAAAmAwAAJwMAACgDAAApAwAAAAAAAAgAAAAEAAAAGAEAACYDAAAnAwAAKAMAACkDAAAmAwAAAAAAAAgAAAAEAAAAGAEAACYDAAAnAwAAKAMAACkDAAAmAwAAJgMAACcDAAAAAAAACAAAAAQAAAAqAwAAKwMAACwDAAAtAwAALgMAAC8DAAAcAwAAHQMAAB4DAAAfAwAAIAMAACEDAAAiAwAAIwMAACQDAAAlAwAAHNwQABgBAAAUqxAAJgMAACcDAAAoAwAAKQMAAFDcEAAmAwAAcNwQACYDAAAnAwAAlNwQADADAAAKAwAAMQMAADIDAAAzAwAANAMAAA8DAAA1AwAANgMAADcDAAATAwAAOAMAAH8BAAA5AwAAgQEAADoDAABbAgAAOwMAAGFzc2VydGlvbiBmYWlsZWQ6IGFwZXhfaGFsZl9hbmdsZSA+PSAwLjDVPBAAZwAAALUFAAAJAAAAAAAAAAgAAAAEAAAAPAMAAD0DAAA+AwAAPwMAAAAAAAAIAAAABAAAADwDAAA9AwAAPgMAAD8DAABAAwAAOQIAAAAAAAAMAAAABAAAAEEDAABCAwAAQwMAAEQDAABFAwAARgMAAEcDAABIAwAASQMAAEoDAAAAAAAADAAAAAQAAAA5AQAASwMAAEwDAABNAwAATgMAAAAAAAAMAAAABAAAADkBAABLAwAATAMAAE0DAABOAwAASwMAAAAAAAAMAAAABAAAADkBAABLAwAATAMAAE0DAABOAwAASwMAAEsDAABMAwAAAAAAAAwAAAAEAAAATwMAAFADAABRAwAAUgMAAFMDAABUAwAAQQMAAEIDAABDAwAARAMAAEUDAABGAwAARwMAAEgDAABJAwAASgMAAADeEAA5AQAAZKwQAEsDAABMAwAATQMAAE4DAAA03hAASwMAAFTeEABLAwAATAMAAHjeEABVAwAAVgMAAFcDAABYAwAAWQMAAFoDAABbAwAANQAAAFwDAABdAwAAXgMAAN0BAAB/AQAAgQEAAIEBAADfAQAAWwIAAF8DAAAyAQAAcAAAAAgAAABgAwAAYQMAAGIDAABjAwAAZAMAAGUDAABmAwAAZwMAAGgDAABpAwAAMgEAAHAAAAAIAAAAMwEAAGoDAABrAwAAbAMAAG0DAAAyAQAAcAAAAAgAAAAzAQAAagMAAGsDAABsAwAAbQMAAGoDAAAyAQAAcAAAAAgAAAAzAQAAagMAAGsDAABsAwAAbQMAAGoDAABqAwAAawMAADIBAABwAAAACAAAAG4DAABvAwAAcAMAAHEDAAByAwAAcwMAAGADAABhAwAAYgMAAGMDAABkAwAAZQMAAGYDAABnAwAAaAMAAGkDAABs3xAAMwEAACSsEABqAwAAawMAAGwDAABtAwAAoN8QAGoDAADA3xAAagMAAGsDAADk3xAAdAMAAHUDAAB2AwAAdwMAAHgDAAB5AwAAegMAAHsDAAB8AwAAfQMAAH4DAAB/AwAAgAMAAIEDAACBAwAAggMAAIMDAACEAwAAnEQQAGoAAAB9AAAAMwAAAJxEEABqAAAAgwAAABoAAACoJBAAcwAAAFgAAAAJAAAAqCQQAHMAAABiAgAAOwAAAKgkEABzAAAAYgIAACYAAACoJBAAcwAAAGQCAAAVAAAAqCQQAHMAAABoAgAAJgAAAKgkEABzAAAAZwIAABUAAACoJBAAcwAAAEgCAAArAAAAqCQQAHMAAABJAgAAGQAAAKgkEABzAAAA7gEAAB4AAACoJBAAcwAAAPcBAAArAAAAqCQQAHMAAAD4AQAALgAAAKgkEABzAAAAAwIAACgAAACoJBAAcwAAACYCAAAjAAAAqCQQAHMAAAANAgAAJgAAAKgkEABzAAAADgIAADMAAACoJBAAcwAAAA8CAAA2AAAAqCQQAHMAAAAZAgAALgAAAGFzc2VydGlvbiBmYWlsZWQ6IHRyaWFuZ2xlc1tjdXJyX3RyaWFuZ2xlXS52ZXJ0aWNlc1tjdXJyX2VkZ2VfaWRdID09IGN1cnJfdmVydGV4qCQQAHMAAAAaAgAAIQAAAKgkEABzAAAAzwEAABgAAACoJBAAcwAAANABAAAYAAAAqCQQAHMAAADRAQAAGAAAAKgkEABzAAAA2wEAABcAAACoJBAAcwAAALEBAAAuAAAAqCQQAHMAAADAAQAAIwAAAKgkEABzAAAAwAEAAD4AAACoJBAAcwAAAMQBAAAfAAAAqCQQAHMAAAB8AwAAJAAAAKgkEABzAAAAigMAADMAAACoJBAAcwAAAIsDAAAjAAAAqCQQAHMAAACAAwAAMwAAAKgkEABzAAAAgQMAACMAAACoJBAAcwAAAKgDAAAsAAAAqCQQAHMAAACtAwAANgAAAKgkEABzAAAArgMAACoAAACoJBAAcwAAAKEDAAAnAAAAqCQQAHMAAACjAwAAIAAAAKgkEABzAAAApAMAACYAAACoJBAAcwAAAJ8DAAAzAAAAGQcQAHsAAAAYAAAABQAAAKgkEABzAAAAwgMAACYAAACoJBAAcwAAAM0DAAAfAAAAqCQQAHMAAADTAwAAOQAAAKgkEABzAAAA1QMAACgAAACoJBAAcwAAANgDAAAyAAAAYXNzZXJ0aW9uIGZhaWxlZDogaGFsZl9oZWlnaHQuaXNfc2lnbl9wb3NpdGl2ZSgpICYmIHJhZGl1cy5pc19zaWduX3Bvc2l0aXZlKCkAAACVHRAAagAAAHkAAAAJAAAAQSBoZWlnaHRmaWVsZCBoZWlnaHRzIG11c3QgaGF2ZSBhdCBsZWFzdCAyIHJvd3MgYW5kIGNvbHVtbnMuaOQQADwAAADVUxAAbgAAAFwAAAAJAAAA1VMQAG4AAACUAAAAEQAAANVTEABuAAAAWQEAACEAAADVUxAAbgAAAGsBAAAfAAAA1VMQAG4AAABsAQAAHwAAANVTEABuAAAAbQEAAB8AAADVUxAAbgAAAKMBAAAlAAAA1VMQAG4AAADeAQAAPgAAANVTEABuAAAAzwEAAD4AAADVUxAAbgAAAF8CAAAfAAAA1VMQAG4AAABjAgAAKwAAANVTEABuAAAAYQIAACsAAADVUxAAbgAAAGgCAAAnAAAA1VMQAG4AAABmAgAAJwAAANVTEABuAAAAdgIAAB8AAADVUxAAbgAAAIQCAAApAAAA1VMQAG4AAAB9AgAAKQAAANVTEABuAAAAkwIAACUAAADVUxAAbgAAAIwCAAAlAAAA1VMQAG4AAADMAgAAKQAAANVTEABuAAAA2AIAACcAAADVUxAAbgAAANkCAAAnAAAA1VMQAG4AAADaAgAAJwAAAGFPEAB1AAAAnwAAACEAAABhTxAAdQAAALsAAAAdAAAAYU8QAHUAAADEAAAAHQAAAGFPEAB1AAAAuAAAABYAAABhTxAAdQAAABQBAAAeAAAAYU8QAHUAAAAWAQAAOgAAAGFPEAB1AAAAKgEAACUAAABhTxAAdQAAABkBAAApAAAAYU8QAHUAAAA+AQAAHgAAAGFPEAB1AAAAQAEAADoAAABhTxAAdQAAAFQBAAAlAAAAYU8QAHUAAABDAQAAKQAAAGFPEAB1AAAAZAEAABEAAABhTxAAdQAAAGUBAAARAAAAYU8QAHUAAABqAQAAFQAAAGFPEAB1AAAAawEAABUAAABhTxAAdQAAAHkBAAApAAAANTIQAGkAAACKBAAAHgAAADUyEABpAAAAiwQAAB4AAAA1MhAAaQAAAIwEAAAeAAAANTIQAGkAAADpBAAAIAAAADUyEABpAAAA6gQAAB8AAAA1MhAAaQAAACAFAAAWAAAANTIQAGkAAAABBQAAHwAAADUyEABpAAAABwUAAB8AAAA1MhAAaQAAAA0FAAAfAAAANTIQAGkAAAAbBQAAIQAAADUyEABpAAAAGAUAACUAAAA1MhAAaQAAAPkEAAAeAAAANTIQAGkAAABFBQAAKgAAADUyEABpAAAATAUAABEAAAA1MhAAaQAAAE0FAAARAAAANTIQAGkAAABOBQAAEQAAADUyEABpAAAAVgUAACcAAAA1MhAAaQAAAFcFAAAnAAAANTIQAGkAAABYBQAAJwAAADUyEABpAAAA5QUAACgAAAA1MhAAaQAAAOYFAAAoAAAANTIQAGkAAADbBQAAHAAAADUyEABpAAAAygUAACUAAAA1MhAAaQAAANMFAAA3AAAANTIQAGkAAADYBQAAIgAAADUyEABpAAAACAYAAB8AAAA1MhAAaQAAAAoGAAAjAAAANTIQAGkAAAALBgAAIQAAADUyEABpAAAADAYAACEAAAA1MhAAaQAAAEIGAABAAAAANTIQAGkAAABDBgAAGgAAADUyEABpAAAAOgYAACAAAAA1MhAAaQAAADoGAAATAAAANTIQAGkAAAApBgAANwAAADUyEABpAAAAKwYAAB8AAAA1MhAAaQAAAC0GAAAYAAAANTIQAGkAAAAyBgAAEwAAAEludEtleQAANTIQAGkAAAAPBgAAHQAAADUyEABpAAAAnwYAABsAAAA1MhAAaQAAAGkHAAAfAAAANTIQAGkAAABrBwAAGgAAADUyEABpAAAAbAcAABoAAAA1MhAAaQAAAG0HAAAaAAAANTIQAGkAAAB7BwAASgAAAOpNEABsAAAA7AEAAAkAAADqTRAAbAAAAAYCAAAJAAAA6k0QAGwAAAAdAgAACQAAACoBAABkAAAABAAAAIUDAACGAwAAhwMAAIgDAACJAwAAigMAAIsDAACMAwAAjQMAAI4DAAAqAQAAZAAAAAQAAAArAQAAjwMAAJADAACRAwAAkgMAACoBAABkAAAABAAAACsBAACPAwAAkAMAAJEDAACSAwAAjwMAACoBAABkAAAABAAAACsBAACPAwAAkAMAAJEDAACSAwAAjwMAAI8DAACQAwAAKgEAAGQAAAAEAAAAkwMAAJQDAACVAwAAlgMAAJcDAACYAwAAhQMAAIYDAACHAwAAiAMAAIkDAACKAwAAiwMAAIwDAACNAwAAjgMAACTqEAArAQAA1KsQAI8DAACQAwAAkQMAAJIDAABY6hAAjwMAAHjqEACPAwAAkAMAAJzqEACZAwAAmgMAAJsDAACcAwAAnQMAAJ4DAACfAwAAoAMAAKEDAACiAwAAowMAACwCAAB/AQAApAMAAIEBAAClAwAAWwIAAKYDAAAAAAAAEAAAAAQAAACnAwAAqAMAAKkDAACqAwAAqwMAAKwDAACtAwAArgMAAK8DAACwAwAAAAAAABAAAAAEAAAAFgEAALEDAACyAwAAswMAALQDAAAAAAAAEAAAAAQAAAAWAQAAsQMAALIDAACzAwAAtAMAALEDAAAAAAAAEAAAAAQAAAAWAQAAsQMAALIDAACzAwAAtAMAALEDAACxAwAAsgMAAAAAAAAQAAAABAAAALUDAAC2AwAAtwMAALgDAAC5AwAAugMAAKcDAACoAwAAqQMAAKoDAACrAwAArAMAAK0DAACuAwAArwMAALADAACQ6xAAFgEAAPSqEACxAwAAsgMAALMDAAC0AwAAxOsQALEDAADk6xAAsQMAALIDAAAI7BAAuwMAALwDAAC9AwAAvgMAAL8DAADAAwAAwQMAAMIDAADDAwAAxAMAAMUDAAB+AQAAfwEAAMYDAACBAQAAxwMAAFsCAADIAwAAAAAAACgAAAAEAAAAyQMAAMoDAADLAwAAzAMAAM0DAADOAwAAzwMAANADAADRAwAA0gMAAAAAAAAoAAAABAAAACcBAADTAwAA1AMAANUDAADWAwAAAAAAACgAAAAEAAAAJwEAANMDAADUAwAA1QMAANYDAADTAwAAAAAAACgAAAAEAAAAJwEAANMDAADUAwAA1QMAANYDAADTAwAA0wMAANQDAAAAAAAAKAAAAAQAAADXAwAA2AMAANkDAADaAwAA2wMAANwDAADJAwAAygMAAMsDAADMAwAAzQMAAM4DAADPAwAA0AMAANEDAADSAwAA/OwQACcBAACkqxAA0wMAANQDAADVAwAA1gMAADDtEADTAwAAUO0QANMDAADUAwAAdO0QAN0DAADeAwAA3wMAAOADAADhAwAA4gMAAOMDAAA1AAAA5AMAAOUDAADmAwAAfgEAAH8BAADnAwAAgQEAAOgDAABbAgAA6QMAAAAAAAAMAAAABAAAAOoDAADrAwAA7AMAAO0DAADuAwAA7wMAAPADAADxAwAA8gMAAPMDAAAAAAAADAAAAAQAAAA2AQAA9AMAAPUDAAD2AwAA9wMAAAAAAAAMAAAABAAAADYBAAD0AwAA9QMAAPYDAAD3AwAA9AMAAAAAAAAMAAAABAAAADYBAAD0AwAA9QMAAPYDAAD3AwAA9AMAAPQDAAD1AwAAAAAAAAwAAAAEAAAA+AMAAPkDAAD6AwAA+wMAAPwDAAD9AwAA6gMAAOsDAADsAwAA7QMAAO4DAADvAwAA8AMAAPEDAADyAwAA8wMAAGjuEAA2AQAARKwQAPQDAAD1AwAA9gMAAPcDAACc7hAA9AMAALzuEAD0AwAA9QMAAODuEAD+AwAA/wMAAAAEAAABBAAAAgQAAAMEAAAEBAAABQQAAAYEAAAHBAAACAQAAAkEAAB/AQAACgQAAIEBAAALBAAAWwIAAAwEAAAAAAAADAAAAAQAAAANBAAADgQAAA8EAAAQBAAAEQQAABIEAAATBAAAFAQAABUEAAAWBAAAAAAAAAwAAAAEAAAAGwEAABcEAAAYBAAAGQQAABoEAAAAAAAADAAAAAQAAAAbAQAAFwQAABgEAAAZBAAAGgQAABcEAAAAAAAADAAAAAQAAAAbAQAAFwQAABgEAAAZBAAAGgQAABcEAAAXBAAAGAQAAAAAAAAMAAAABAAAABsEAAAcBAAAHQQAAB4EAAAfBAAAIAQAAA0EAAAOBAAADwQAABAEAAARBAAAEgQAABMEAAAUBAAAFQQAABYEAADU7xAAGwEAADSrEAAXBAAAGAQAABkEAAAaBAAACPAQABcEAAAo8BAAFwQAABgEAABM8BAAIQQAAP8DAAAiBAAAIwQAACQEAAAlBAAABAQAACYEAAAnBAAAKAQAAAgEAAB+AQAAfwEAACkEAACBAQAAKgQAAFsCAAArBAAANTwQAG4AAACTAAAAIwAAAGoVEABvAAAA+AAAAAkAAAD/AJkAZgBVADMAEQAiABEAzACIAEQARACqAIgAIgAwAA8ACQAGAAUAAwABAAIAAQAMAAgABAAEAAoACAACACAA8ACQAGAAUAAwABAAIAAQAMAAgABAAEAAoACAACAAEAAADwAJAAYMAAADAAEAAggAAAwACAAEBAADAAIAAQD//wAAAABJkiQAkRIpAEqkRACSJEkAyZZsANEXfQDKruwA0i/9AFuyJQC7sisAX/RFAL/0SwDbtm0A+7d/AN/+7QD///8ASUKSAJFCmwBKZNIAkmTbAMlGtgDRR6MAym4WANJvAwBb0pIAu1KYAF+E0gC/BNgA29a2APtXoADfjhYA/w8AACSZJAC0GSkAJq1EALYtSQBkm2wANBp9AGah7AA2IP0ALbklAIW5KwAo/UUAgP1LAG27bQAFun8AaPHtAADw/wAkSZIAtEmbACZt0gC2bdsAZEu2ADRKowBmYRYANmADAC3ZkgCFWZgAKI3SAIAN2ABt27YABVqgAGiBFgBB6OXDAAuRIGoVEABvAAAAAQEAAAkAAABqFRAAbwAAAFECAAAaAAAAahUQAG8AAABRAgAADQAAAGoVEABvAAAATAIAAB8AAABqFRAAbwAAAE0CAAAjAAAAahUQAG8AAAD/AgAAIQAAAGoVEABvAAAAAAMAACIAAABqFRAAbwAAACkDAAAZAAAAahUQAG8AAAApAwAADgAAAP///3////9/////fysuEAB1AAAAvgAAAA4AAAArLhAAdQAAACsBAAAhAAAAliUQAHcAAACOAAAAHwAAAJYlEAB3AAAAjgAAABQAAACWJRAAdwAAAJoAAAAYAAAAliUQAHcAAAClAAAAIgAAAJYlEAB3AAAApgAAACAAAACWJRAAdwAAAIcAAAAcAAAAliUQAHcAAACCAAAAHQAAAJYlEAB3AAAAgwAAACEAAAD6RhAAfAAAABwAAAAyAAAA+kYQAHwAAAAcAAAAJwAAAPpGEAB8AAAAKAAAADMAAAD6RhAAfAAAACgAAAAoAAAA+kYQAHwAAAA/AAAAHAAAAPpGEAB8AAAASgAAABcAAAD6RhAAfAAAAEoAAAAMAAAA+kYQAHwAAABaAAAAIAAAAPpGEAB8AAAAWgAAABUAAAD6RhAAfAAAAF8AAAAgAAAA+kYQAHwAAABfAAAAFQAAAPpGEAB8AAAAfQAAABgAAAD6RhAAfAAAAH0AAAANAAAA+kYQAHwAAACzAAAAOwAAAPpGEAB8AAAAswAAADAAAAD6RhAAfAAAALcAAAA8AAAA+kYQAHwAAAC3AAAAMAAAAK9UEAB3AAAAPQAAABQAAACvVBAAdwAAAEQAAAAdAAAAr1QQAHcAAABHAAAAEQAAAK9UEAB3AAAAHgAAABUAAACvVBAAdwAAAFwAAAA2AAAAr1QQAHcAAABiAAAALAAAAK9UEAB3AAAAZAAAABQAAACvVBAAdwAAAGQAAAAhAAAARmFpbGVkIHRvIGJ1aWxkIHRoZSAyZCBjb252ZXggaHVsbCBvZiB0aGlzIHBvaW50IGNsb3VkLgC09RAANwAAAK9UEAB3AAAAawAAAAUAAACvVBAAdwAAAIMAAAAJAAAAr1QQAHcAAACEAAAACQAAAK9UEAB3AAAAfwAAABkAAACvVBAAdwAAAHwAAAAfAAAAr1QQAHcAAAB6AAAAHwAAAK9UEAB3AAAAlAAAABsAAACvVBAAdwAAAJUAAAAbAAAAr1QQAHcAAAC6AAAADgAAAK9UEAB3AAAAuwAAAA4AAACvVBAAdwAAAK8AAAAxAAAAr1QQAHcAAACzAAAAJwAAAK9UEAB3AAAAsAAAACcAAACvVBAAdwAAAKYAAAAnAAAAr1QQAHcAAACkAAAAJwAAAK9UEAB3AAAA0AAAABQAAACvVBAAdwAAANAAAAAhAAAAr1QQAHcAAADhAAAAEwAAAK9UEAB3AAAA4gAAABMAAAAFKxAAgwAAAIwAAAAWAAAABSsQAIMAAACcAAAAHAAAAAUrEACDAAAAzwAAABoAAAAFKxAAgwAAAOsAAAARAAAASW50ZXJuYWwgZXJyb3I6IGV4aXRpbmcgYW4gdW5maW5pc2hlZCB3b3JrLgAFKxAAgwAAAMIAAAArAAAABSsQAIMAAAADAQAACAAAAAUrEACDAAAACwEAACAAAAAFKxAAgwAAAA4BAAAcAAAABSsQAIMAAAAxAQAAGQAAAAUrEACDAAAARwEAAB0AAAAFKxAAgwAAAEcBAAAWAAAABSsQAIMAAABIAQAAFgAAAAUrEACDAAAAUQEAAC8AAAAFKxAAgwAAAFIBAAAaAAAABSsQAIMAAABSAQAAGQAAAAUrEACDAAAAYgEAAB4AAAAFKxAAgwAAAGgBAAAeAAAABSsQAIMAAABpAQAAIQAAAAUrEACDAAAAcgEAACQAAAAFKxAAgwAAAHUBAAAkAAAABSsQAIMAAAA4AQAAEQAAAAUrEACDAAAAOQEAABIAAAAFKxAAgwAAAE4BAAAkAAAABSsQAIMAAACTAQAAGgAAAAUrEACDAAAA5AEAACwAAAAFKxAAgwAAAPIBAAAXAAAABSsQAIMAAADBAQAAJwAAAAUrEACDAAAAwgEAABAAAAAFKxAAgwAAAMIBAAAqAAAABSsQAIMAAADUAQAANAAAAAUrEACDAAAAuAEAABMAAAAFKxAAgwAAALkBAAAlAAAABSsQAIMAAAC5AQAAHAAAAAUrEACDAAAAuQEAABsAAABhc3NlcnRpb24gZmFpbGVkOiAhdHJpYW5nbGVzW3RyaWFuZ2xlc1ttaWRkbGVfZmFjZXRdLmFkalttaWRkbGVfaWRdXS52YWxpZAAABSsQAIMAAAC5AQAACQAAAAUrEACDAAAApQEAABYAAAAFKxAAgwAAAKkBAAAUAAAAnzIQAIQAAABuAAAAJwAAAJ8yEACEAAAAfQAAACEAAACfMhAAhAAAAIgAAAAbAAAAnzIQAIQAAACAAAAAGwAAAJ8yEACEAAAAcQAAACEAAACfMhAAhAAAALkAAAA4AAAAnzIQAIQAAAC6AAAAOAAAAJ8yEACEAAAA0AAAACUAAABubyB0cmlhbmdsZSBmb3VuZC4AAJ8yEACEAAAAoAAAACMAAACfMhAAhAAAAKAAAAA6AAAAnzIQAIQAAAB8AAAAMgAAACwQEACGAAAAFgAAABQAAAAsEBAAhgAAABYAAAAhAAAALBAQAIYAAAAXAAAAFAAAAGFzc2VydGlvbiBmYWlsZWQ6IGRpc3RhbmNlID4gY3JhdGU6Om1hdGg6OkRFRkFVTFRfRVBTSUxPTgAAACwQEACGAAAAKwAAAAkAAAAsEBAAhgAAADIAAAAdAAAALBAQAIYAAAA2AAAAGwAAACwQEACGAAAANgAAACsAAAAsEBAAhgAAAEwAAAAJAAAALBAQAIYAAABZAAAAEgAAACwQEACGAAAAWgAAABIAAAAsEBAAhgAAAHEAAAAWAAAALBAQAIYAAAByAAAAFgAAAJ0oEACCAAAACgAAABIAAACdKBAAggAAABMAAAAUAAAAnSgQAIIAAAATAAAACQAAAJ0oEACCAAAAFAAAAAkAAACdKBAAggAAABUAAAAJAAAAnSgQAIIAAAAZAAAACQAAAJ0oEACCAAAADQAAABEAAABhc3NlcnRpb24gZmFpbGVkOiBmYWNldHNbZmFjZXQuYWRqW2ldXS52YWxpZJ0oEACCAAAADQAAAAkAAAAOExAAfAAAAHYAAAAiAAAADhMQAHwAAAC2AAAAIgAAAFk/EACFAAAAHAAAABQAAABZPxAAhQAAACAAAAAUAAAAWT8QAIUAAAA6AAAAEQAAAFk/EACFAAAAPgAAABEAAABrQBAAiAAAAB0AAAAIAAAAAAAAAAEAAAAAAAAAAgAAAN8/EACLAAAAHwAAABEAAADfPxAAiwAAACEAAAARAAAA3z8QAIsAAAAiAAAAEQAAAN8/EACLAAAAJAAAABEAAADAPhAAmAAAADEAAAAaAAAAwD4QAJgAAAAjAAAANAAAAMA+EACYAAAAKwAAABUAAADAPhAAmAAAACgAAAAZAAAAwD4QAJgAAAAkAAAAHgAAAMA+EACYAAAAJAAAABkAAADAPhAAmAAAABAAAAAaAAAAwD4QAJgAAAATAAAAOAAAAMA+EACYAAAAFgAAABwAAADAPhAAmAAAABcAAAAZAAAA9EAQAI0AAAAdAAAAEQAAAPRAEACNAAAAHgAAABEAAAD0QBAAjQAAAB8AAAARAAAA9EAQAI0AAAAgAAAAEQAAADA+EACPAAAAHQAAABEAAAAwPhAAjwAAAB8AAAARAAAAMD4QAI8AAAAgAAAAEQAAADA+EACPAAAAIgAAABEAAACoPRAAhwAAAA0AAAAUAAAAqD0QAIcAAAAOAAAAFAAAAAAAAAABAAAAAQAAAAIAAAADAAAAAgAAAAAAAAADAAAABAAAAAUAAAAFAAAABgAAAAcAAAAGAAAABAAAAAcAAAAAAAAABAAAAAEAAAAFAAAAAgAAAAYAAAADAAAABwAAAKg9EACHAAAAJwAAAC4AAACoPRAAhwAAACgAAAAuAAAAqD0QAIcAAAA0AAAALgAAAKg9EACHAAAANQAAAC4AAAApMRAAhQAAABsAAAAMAAAAKTEQAIUAAAAoAAAADAAAACkxEACFAAAAWgAAAAwAAACvMRAAhQAAACEAAAAMAAAAljAQAJIAAAAOAAAAHAAAAJYwEACSAAAAEAAAADMAAACWMBAAkgAAABEAAAAZAAAADDAQAIkAAAAwAAAALAAAAAIUEABwAAAATgEAAA0AAABhc3NlcnRpb24gZmFpbGVkOiBuc3ViZGl2ID4gMAAAAAIUEABwAAAA8QEAAAUAAAACFBAAcAAAAAUCAAAJAAAAAhQQAHAAAAARAgAABQAAAAIUEABwAAAAFAIAAA0AAAACFBAAcAAAAB8CAAANAAAAAhQQAHAAAABGAgAACQAAAAIUEABwAAAARwIAAAkAAAACFBAAcAAAAHECAAANAAAAAhQQAHAAAACNAgAAEAAAAAIUEABwAAAAjgIAABAAAABhc3NlcnRpb24gZmFpbGVkOiBuc3ViZGl2cyA+IDAAAAIUEABwAAAAwgIAAAUAAAACFBAAcAAAAN8CAAAVAAAAAhQQAHAAAADsAgAADQAAAAIUEABwAAAA8AIAAA0AAAACFBAAcAAAAO4CAAARAAAAAhQQAHAAAADqAgAADQAAAAIUEABwAAAAMAMAAB0AAAACFBAAcAAAABsDAAAVAAAAAhQQAHAAAAAnAwAAFQAAAAIUEABwAAAAIwMAABUAAAACFBAAcAAAAB8DAAAnAAAAAhQQAHAAAAAfAwAAFQAAAAIUEABwAAAACQMAABEAAABDYW5ub3QgY29tcHV0ZSB0aGUgY2VudGVyIG9mIGxlc3MgdGhhbiAxIHBvaW50LgA4AREALwAAAIoaEABoAAAAUwAAAAUAAABqHxAAaQAAAB4AAAARAAAAah8QAGkAAAAfAAAAEQAAAGofEABpAAAAIAAAABEAAABqHxAAaQAAABQAAAANAAAAah8QAGkAAAAWAAAADQAAAGofEABpAAAADQAAAAkAAABqHxAAaQAAAA4AAAAJAAAAah8QAGkAAAAPAAAACQAAABkHEAB7AAAABwAAABgAAADHIxAAaQAAAEgCAAAZAAAA+zYQAHsAAAAAAgAACQAAAAAAAAAQAAAABAAAACwEAAAtBAAALgQAAC8EAAAAAAAAKAAAAAQAAAAwBAAAMQQAADIEAAAzBAAAAAAAAAwAAAAEAAAANAQAADUEAAA2BAAANwQAAAAAAAAMAAAABAAAADgEAAA5BAAAOgQAADsEAAAqAQAAZAAAAAQAAAA8BAAAPQQAAD4EAAA/BAAAMAAAAEAAAAA0AAAASGFzaCB0YWJsZSBjYXBhY2l0eSBvdmVyZmxvd8gCEQAcAAAABEgQAGUAAAAlAAAAKABBhIbEAAulCgEAAABABAAAQQQAAEIEAAAAAAAACAAAAAQAAABJBAAASgQAAEsEAABieXRlIGFycmF5Ym9vbGVhbiBgYDYDEQAJAAAAPwMRAAEAAABpbnRlZ2VyIGAAAABQAxEACQAAAD8DEQABAAAAZmxvYXRpbmcgcG9pbnQgYGwDEQAQAAAAPwMRAAEAAABjaGFyYWN0ZXIgYACMAxEACwAAAD8DEQABAAAAc3RyaW5nIACoAxEABwAAAHVuaXQgdmFsdWVPcHRpb24gdmFsdWVuZXd0eXBlIHN0cnVjdHNlcXVlbmNlbWFwZW51bXVuaXQgdmFyaWFudG5ld3R5cGUgdmFyaWFudHR1cGxlIHZhcmlhbnRzdHJ1Y3QgdmFyaWFudAAAAAEAAAAAAAAALjB1c2l6ZQBtXcvWLFDrY3hBpldxG4u5CQZmgQHzuVSiCC9Dgld0MgAAAAAEAAAABAAAAE0EAABvdmVyZmxvdyBpbiBEdXJhdGlvbjo6bmV3AAAALUMQAEgAAADJAAAAEgAAAAAAAAAEAAAABAAAAE4EAAAWShAAUAAAAC4CAAARAAAAAAAAAAQAAAAEAAAATwQAAAAAAAAEAAAABAAAAFAEAABOdWxFcnJvclEEAAAMAAAABAAAAFIEAABTBAAAVAQAAGFzc2VydGlvbiBmYWlsZWQ6IHBzaXplID49IHNpemUgKyBtaW5fb3ZlcmhlYWQAANdPEAAqAAAAsQQAAAkAAABhc3NlcnRpb24gZmFpbGVkOiBwc2l6ZSA8PSBzaXplICsgbWF4X292ZXJoZWFkAADXTxAAKgAAALcEAAANAAAAdXNlIG9mIHN0ZDo6dGhyZWFkOjpjdXJyZW50KCkgaXMgbm90IHBvc3NpYmxlIGFmdGVyIHRoZSB0aHJlYWQncyBsb2NhbCBkYXRhIGhhcyBiZWVuIGRlc3Ryb3llZAAAcAURAF4AAAB8ChAAIQAAAAEBAAAJAAAAZmFpbGVkIHRvIGdlbmVyYXRlIHVuaXF1ZSB0aHJlYWQgSUQ6IGJpdHNwYWNlIGV4aGF1c3RlZADoBREANwAAAAxJEAAdAAAAvAQAAA0AAABVBAAAEAAAAAQAAABWBAAAdGhyZWFkIG5hbWUgbWF5IG5vdCBjb250YWluIGludGVyaW9yIG51bGwgYnl0ZXMADEkQAB0AAAAJBQAAKAAAAG1lbW9yeSBhbGxvY2F0aW9uIG9mICBieXRlcyBmYWlsZWQAAIgGEQAVAAAAnQYRAA0AAAACUBAAGAAAAGQBAAAJAAAAUQQAAAwAAAAEAAAAVwQAAAAAAAAIAAAABAAAAFgEAAAAAAAACAAAAAQAAABZBAAAWgQAAFsEAABcBAAAXQQAABAAAAAEAAAAXgQAAF8EAABgBAAAYQQAAAAAAAAIAAAABAAAAGIEAABjBAAAZAQAAGEEAAB0aW1lIG5vdCBpbXBsZW1lbnRlZCBvbiB0aGlzIHBsYXRmb3JtAAAAQAcRACUAAACLQhAAMwAAAA0AAAAJAAAAAEhhc2ggdGFibGUgY2FwYWNpdHkgb3ZlcmZsb3cAAACBBxEAHAAAANlHEAAqAAAAJQAAACgAAABFcnJvckxheW91dEVycm9yZQQAAAwAAAAEAAAAZgQAAGcEAABoBAAAY2FwYWNpdHkgb3ZlcmZsb3cAAADgBxEAEQAAAEZKEAAgAAAALgIAABEAAADQNBAAGwAAAOgBAAAXAAAAhxgQAB4AAABVAQAACwBBtJDEAAttAQAAAGkEAABhIGZvcm1hdHRpbmcgdHJhaXQgaW1wbGVtZW50YXRpb24gcmV0dXJuZWQgYW4gZXJyb3Igd2hlbiB0aGUgdW5kZXJseWluZyBzdHJlYW0gZGlkIG5vdAAAfgsQABgAAACKAgAADgBBrJHEAAv4EQEAAABqBAAAY2FsbGVkIGBSZXN1bHQ6OnVud3JhcCgpYCBvbiBhbiBgRXJyYCB2YWx1ZQDfRhAAGgAAAL0BAAAdAAAAG1AQABkAAACDAQAAMgAAAHN3YXBfcmVtb3ZlIGluZGV4IChpcyApIHNob3VsZCBiZSA8IGxlbiAoaXMgKQAAAAAJEQAWAAAAFgkRABYAAAAsCREAAQAAAHJlbW92YWwgaW5kZXggKGlzIAAASAkRABIAAAAWCREAFgAAACwJEQABAAAAAHAABwAtAQEBAgECAQFICzAVEAFlBwIGAgIBBCMBHhtbCzoJCQEYBAEJAQMBBSsDOwkqGAEgNwEBAQQIBAEDBwoCHQE6AQEBAgQIAQkBCgIaAQICOQEEAgQCAgMDAR4CAwELAjkBBAUBAgQBFAIWBgEBOgEBAgEECAEHAwoCHgE7AQEBDAEJASgBAwE3AQEDBQMBBAcCCwIdAToBAgIBAQMDAQQHAgsCHAI5AgEBAgQIAQkBCgIdAUgBBAECAwEBCAFRAQIHDAhiAQIJCwdJAhsBAQEBATcOAQUBAgULASQJAWYEAQYBAgICGQIEAxAEDQECAgYBDwEAAwAEHAMdAh4CQAIBBwgBAgsJAS0DAQF1AiIBdgMEAgkBBgPbAgIBOgEBBwEBAQECCAYKAgEwHzEEMAoEAyYJDAIgBAIGOAEBAgMBAQU4CAICmAMBDQEHBAEGAQMCxkAAAcMhAAONAWAgAAZpAgAEAQogAlACAAEDAQQBGQIFAZcCGhINASYIGQsBASwDMAECBAICAgEkAUMGAgICAgwBCAEvATMBAQMCAgUCAQEqAggB7gECAQQBAAEAEBAQAAIAAeIBlQUAAwECBQQoAwQBpQIABEEFAAJPBEYLMQR7ATYPKQECAgoDMQQCAgcBPQMkBQEIPgEMAjQJAQEIBAIBXwMCBAYBAgGdAQMIFQI5AgEBAQEMAQkBDgcDBUMBAgYBAQIBAQMEAwEBDgJVCAIDAQEXAVEBAgYBAQIBAQIBAusBAgQGAgECGwJVCAIBAQJqAQEBAghlAQEBAgQBBQAJAQL1AQoEBAGQBAICBAEgCigGAgQIAQkGAgMuDQECAAcBBgEBUhYCBwECAQJ6BgMBAQIBBwEBSAIDAQEBAAILAjQFBQMXAQABBg8ADAMDAAU7BwABPwRRAQsCAAIALgIXAAUDBggIAgceBJQDADcEMggBDgEWBQEPAAcBEQIHAQIBBWQBoAcAAT0EAAT+AgAHbQcAYIDwAACzEBAAIQAAAC4AAAAJAAAAwW/yhiMAAACB76yFW0FtLe4EAAABH2q/ZO04bu2Xp9r0+T/pA08YAAE+lS4Jmd8D/TgVDy/kdCPs9c/TCNwExNqwzbwZfzOmAyYf6U4CAAABfC6YW4fTvnKf2diHLxUSxlDea3BuSs8P2JXVbnGyJrBmxq0kNhUdWtNCPA5U/2PAc1XMF+/5ZfIovFX3x9yA3O1u9M7v3F/3UwUAYXNzZXJ0aW9uIGZhaWxlZDogZC5tYW50ID4gMCApEAAvAAAAdgAAAAUAAABhc3NlcnRpb24gZmFpbGVkOiBkLm1pbnVzID4gMAAAACApEAAvAAAAdwAAAAUAAABhc3NlcnRpb24gZmFpbGVkOiBkLnBsdXMgPiAwICkQAC8AAAB4AAAABQAAAGFzc2VydGlvbiBmYWlsZWQ6IGJ1Zi5sZW4oKSA+PSBNQVhfU0lHX0RJR0lUUwAAACApEAAvAAAAewAAAAUAAAAgKRAALwAAAMIAAAAJAAAAICkQAC8AAAD7AAAADQAAACApEAAvAAAAAgEAABIAAABhc3NlcnRpb24gZmFpbGVkOiBkLm1hbnQuY2hlY2tlZF9zdWIoZC5taW51cykuaXNfc29tZSgpACApEAAvAAAAegAAAAUAAABhc3NlcnRpb24gZmFpbGVkOiBkLm1hbnQuY2hlY2tlZF9hZGQoZC5wbHVzKS5pc19zb21lKCkAACApEAAvAAAAeQAAAAUAAAAgKRAALwAAAAsBAAAFAAAAICkQAC8AAAAMAQAABQAAACApEAAvAAAADQEAAAUAAAAgKRAALwAAAHIBAAAkAAAAICkQAC8AAAB3AQAALwAAACApEAAvAAAAhAEAABIAAAAgKRAALwAAAGYBAAANAAAAICkQAC8AAABMAQAAIgAAACApEAAvAAAADwEAAAUAAAAgKRAALwAAAA4BAAAFAAAA30UaPQPPGubB+8z+AAAAAMrGmscX/nCr3PvU/gAAAABP3Ly+/LF3//b73P4AAAAADNZrQe+RVr4R/OT+AAAAADz8f5CtH9CNLPzs/gAAAACDmlUxKFxR00b89P4AAAAAtcmmrY+scZ1h/Pz+AAAAAMuL7iN3Ipzqe/wE/wAAAABtU3hAkUnMrpb8DP8AAAAAV862XXkSPIKx/BT/AAAAADdW+002lBDCy/wc/wAAAABPmEg4b+qWkOb8JP8AAAAAxzqCJcuFdNcA/Sz/AAAAAPSXv5fNz4agG/00/wAAAADlrCoXmAo07zX9PP8AAAAAjrI1KvtnOLJQ/UT/AAAAADs/xtLf1MiEa/1M/wAAAAC6zdMaJ0TdxYX9VP8AAAAAlsklu86fa5Og/Vz/AAAAAISlYn0kbKzbuv1k/wAAAAD22l8NWGaro9X9bP8AAAAAJvHD3pP44vPv/XT/AAAAALiA/6qorbW1Cv58/wAAAACLSnxsBV9ihyX+hP8AAAAAUzDBNGD/vMk//oz/AAAAAFUmupGMhU6WWv6U/wAAAAC9filwJHf533T+nP8AAAAAj7jluJ+936aP/qT/AAAAAJR9dIjPX6n4qf6s/wAAAADPm6iPk3BEucT+tP8AAAAAaxUPv/jwCIrf/rz/AAAAALYxMWVVJbDN+f7E/wAAAACsf3vQxuI/mRT/zP8AAAAABjsrKsQQXOQu/9T/AAAAANOSc2mZJCSqSf/c/wAAAAAOygCD8rWH/WP/5P8AAAAA6xoRkmQI5bx+/+z/AAAAAMyIUG8JzLyMmf/0/wAAAAAsZRniWBe30bP//P8AQa6jxAALBUCczv8EAEG8o8QAC8QmEKXU6Oj/DAAAAAAAAABirMXreK0DABQAAAAAAIQJlPh4OT+BHgAcAAAAAACzFQfJe86XwDgAJAAAAAAAcFzqe84yfo9TACwAAAAAAGiA6aukONLVbQA0AAAAAABFIpoXJidPn4gAPAAAAAAAJ/vE1DGiY+2iAEQAAAAAAKityIw4Zd6wvQBMAAAAAADbZasajgjHg9gAVAAAAAAAmh1xQvkdXcTyAFwAAAAAAFjnG6YsaU2SDQFkAAAAAADqjXAaZO4B2icBbAAAAAAASnfvmpmjbaJCAXQAAAAAAIVrfbR7eAnyXAF8AAAAAAB3GN15oeRUtHcBhAAAAAAAwsWbW5KGW4aSAYwAAAAAAD1dlsjFUzXIrAGUAAAAAACzoJf6XLQqlccBnAAAAAAA41+gmb2fRt7hAaQAAAAAACWMOds0wpul/AGsAAAAAABcn5ijcprG9hYCtAAAAAAAzr7pVFO/3LcxArwAAAAAAOJBIvIX8/yITALEAAAAAACleFzTm84gzGYCzAAAAAAA31Mhe/NaFpiBAtQAAAAAADowH5fctaDimwLcAAAAAACWs+NcU9HZqLYC5AAAAAAAPESnpNl8m/vQAuwAAAAAABBEpKdMTHa76wL0AAAAAAAanEC2746riwYD/AAAAAAALIRXphDvH9AgAwQBAAAAACkxkenlpBCbOwMMAQAAAACdDJyh+5sQ51UDFAEAAAAAKfQ7YtkgKKxwAxwBAAAAAIXPp3peS0SAiwMkAQAAAAAt3awDQOQhv6UDLAEAAAAAj/9EXi+cZ47AAzQBAAAAAEG4jJydFzPU2gM8AQAAAACpG+O0ktsZnvUDRAEAAAAA2Xffum6/lusPBEwBAAAAAGsEEAAuAAAAfQAAABUAAABrBBAALgAAAKkAAAAFAAAAawQQAC4AAACqAAAABQAAAGsEEAAuAAAAqwAAAAUAAABrBBAALgAAAK4AAAAFAAAAYXNzZXJ0aW9uIGZhaWxlZDogZC5tYW50ICsgZC5wbHVzIDwgKDEgPDwgNjEpAAAAawQQAC4AAACvAAAABQAAAGsEEAAuAAAACgEAABEAAABrBBAALgAAAA0BAAAJAAAAawQQAC4AAABAAQAACQAAAGsEEAAuAAAArQAAAAUAAABrBBAALgAAAKwAAAAFAAAAYXNzZXJ0aW9uIGZhaWxlZDogIWJ1Zi5pc19lbXB0eSgpAAAAawQQAC4AAADcAQAABQAAAGFzc2VydGlvbiBmYWlsZWQ6IGQubWFudCA8ICgxIDw8IDYxKWsEEAAuAAAA3QEAAAUAAABrBBAALgAAAN4BAAAFAAAAAQAAAAoAAABkAAAA6AMAABAnAACghgEAQEIPAICWmAAA4fUFAMqaO2sEEAAuAAAAMwIAABEAAABrBBAALgAAADYCAAAJAAAAawQQAC4AAABsAgAACQAAAGsEEAAuAAAA4wIAACYAAABrBBAALgAAAO8CAAAmAAAAawQQAC4AAADMAgAAJgAAANlKEAAjAAAAmQAAAA4AAADZShAAIwAAALcAAAAFAAAAYXNzZXJ0aW9uIGZhaWxlZDogYnVmWzBdID4gYicwJwDZShAAIwAAALgAAAAFAAAAYXNzZXJ0aW9uIGZhaWxlZDogcGFydHMubGVuKCkgPj0gNAAA2UoQACMAAAC5AAAABQAAAC4wLgDZShAAIwAAAAYBAAAFAAAA2UoQACMAAAAHAQAABQAAAGVFZS1FLS0rTmFOaW5mMDBlMDBFMGFzc2VydGlvbiBmYWlsZWQ6IGJ1Zi5sZW4oKSA+PSBtYXhsZW4AANlKEAAjAAAAegIAAA0AAAAgKDEgPDwgKQEAAAAAAAAAHBcRAAcAAAAjFxEAAQAAAC4uMDEyMzQ1Njc4OWFiY2RlZgAAAQAAAAAAAABbY2FsbGVkIGBPcHRpb246OnVud3JhcCgpYCBvbiBhIGBOb25lYCB2YWx1ZWV4cGxpY2l0IHBhbmljAACEFxEADgAAAGluZGV4IG91dCBvZiBib3VuZHM6IHRoZSBsZW4gaXMgIGJ1dCB0aGUgaW5kZXggaXMgAACcFxEAIAAAALwXEQASAAAAAAAAAAQAAAAEAAAAcwQAAAAAAAAEAAAABAAAAHQEAAA9PSE9bWF0Y2hlc2Fzc2VydGlvbiBgbGVmdCAgcmlnaHRgIGZhaWxlZAogIGxlZnQ6IAogcmlnaHQ6IAALGBEAEAAAABsYEQAXAAAAMhgRAAkAAAAgcmlnaHRgIGZhaWxlZDogCiAgbGVmdDogAAAACxgRABAAAABUGBEAEAAAAGQYEQAJAAAAMhgRAAkAAAA6IAAAAQAAAAAAAACQGBEAAgAAAAAAAAAMAAAABAAAAHUEAAB2BAAAdwQAACAgICAgeyAsICB7CiwKfSB9KCgKLApdMHgwMDAxMDIwMzA0MDUwNjA3MDgwOTEwMTExMjEzMTQxNTE2MTcxODE5MjAyMTIyMjMyNDI1MjYyNzI4MjkzMDMxMzIzMzM0MzUzNjM3MzgzOTQwNDE0MjQzNDQ0NTQ2NDc0ODQ5NTA1MTUyNTM1NDU1NTY1NzU4NTk2MDYxNjI2MzY0NjU2NjY3Njg2OTcwNzE3MjczNzQ3NTc2Nzc3ODc5ODA4MTgyODM4NDg1ODY4Nzg4ODk5MDkxOTI5Mzk0OTU5Njk3OTg5OTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAABqSBAAGwAAADUHAAAfAAAAZmFsc2V0cnVlAAAAakgQABsAAACvCgAAJgAAAGpIEAAbAAAAuAoAABoAAAB1c2VyLXByb3ZpZGVkIGNvbXBhcmlzb24gZnVuY3Rpb24gZG9lcyBub3QgY29ycmVjdGx5IGltcGxlbWVudCBhIHRvdGFsIG9yZGVyHBoRAEwAAABxBhAALwAAAFwDAAAFAAAAWy4uLl1iZWdpbiA8PSBlbmQgKCA8PSApIHdoZW4gc2xpY2luZyBgYIUaEQAOAAAAkxoRAAQAAACXGhEAEAAAAKcaEQABAAAAYnl0ZSBpbmRleCAgaXMgbm90IGEgY2hhciBib3VuZGFyeTsgaXQgaXMgaW5zaWRlICAoYnl0ZXMgKSBvZiBgAMgaEQALAAAA0xoRACYAAAD5GhEACAAAAAEbEQAGAAAApxoRAAEAAAAgaXMgb3V0IG9mIGJvdW5kcyBvZiBgAADIGhEACwAAADAbEQAWAAAApxoRAAEAAAAHRRAAJQAAABoAAAA2AAAAB0UQACUAAAAKAAAAKwAAAAAGAQEDAQQCBQcHAggICQIKBQsCDgQQARECEgUTHBQBFQIXAhkNHAUdCB8BJAFqBGsCrwOxArwCzwLRAtQM1QnWAtcC2gHgBeEC5wToAu4g8AT4AvoE+wEMJzs+Tk+Pnp6fe4uTlqKyuoaxBgcJNj0+VvPQ0QQUGDY3Vld/qq6vvTXgEoeJjp4EDQ4REikxNDpFRklKTk9kZYqMjY+2wcPExsvWXLa3GxwHCAoLFBc2OTqoqdjZCTeQkagHCjs+ZmmPkhFvX7/u71pi9Pz/U1Samy4vJyhVnaCho6SnqK26vMQGCwwVHTo/RVGmp8zNoAcZGiIlPj/n7O//xcYEICMlJigzODpISkxQU1VWWFpcXmBjZWZrc3h9f4qkqq+wwNCur25v3d6TXiJ7BQMELQNmAwEvLoCCHQMxDxwEJAkeBSsFRAQOKoCqBiQEJAQoCDQLTgM0DIE3CRYKCBg7RTkDYwgJMBYFIQMbBQFAOARLBS8ECgcJB0AgJwQMCTYDOgUaBwQMB1BJNzMNMwcuCAoGJgMdCAKA0FIQAzcsCCoWGiYcFBcJTgQkCUQNGQcKBkgIJwl1C0I+KgY7BQoGUQYBBRADBQtZCAIdYh5ICAqApl4iRQsKBg0TOgYKBhQcLAQXgLk8ZFMMSAkKRkUbSAhTDUkHCoC2Ig4KBkYKHQNHSTcDDggKBjkHCoE2GQc7Ax1VAQ8yDYObZnULgMSKTGMNhDAQFgqPmwWCR5q5OobGgjkHKgRcBiYKRgooBROBsDqAxltlSwQ5BxFABQsCDpf4CITWKQqi54EzDwEdBg4ECIGMiQRrBQ0DCQcQj2CA+gaBtExHCXQ8gPYKcwhwFUZ6FAwUDFcJGYCHgUcDhUIPFYRQHwYGgNUrBT4hAXAtAxoEAoFAHxE6BQGB0CqA1isEAYHggPcpTAQKBAKDEURMPYDCPAYBBFUFGzQCgQ4sBGQMVgqArjgdDSwECQcCDgaAmoPYBBEDDQN3BF8GDAQBDwwEOAgKBigILAQCPoFUDB0DCgU4BxwGCQeA+oQGAAEDBQUGBgIHBggHCREKHAsZDBoNEA4MDwQQAxISEwkWARcEGAEZAxoHGwEcAh8WIAMrAy0LLgEwBDECMgGnBKkCqgSrCPoC+wX9Av4D/wmteHmLjaIwV1iLjJAc3Q4PS0z7/C4vP1xdX+KEjY6RkqmxurvFxsnK3uTl/wAEERIpMTQ3Ojs9SUpdhI6SqbG0urvGys7P5OUABA0OERIpMTQ6O0VGSUpeZGWEkZudyc7PDREpOjtFSVdbXF5fZGWNkam0urvFyd/k5fANEUVJZGWAhLK8vr/V1/Dxg4WLpKa+v8XHz9rbSJi9zcbOz0lOT1dZXl+Jjo+xtre/wcbH1xEWF1tc9vf+/4Btcd7fDh9ubxwdX31+rq9Nu7wWFx4fRkdOT1haXF5+f7XF1NXc8PH1cnOPdHWWJi4vp6+3v8fP19+aAECXmDCPH87P0tTO/05PWlsHCA8QJy/u725vNz0/QkWQkVNndcjJ0NHY2ef+/wAgXyKC3wSCRAgbBAYRgawOgKsFHwiBHAMZCAEELwQ0BAcDAQcGBxEKUA8SB1UHAwQcCgkDCAMHAwIDAwMMBAUDCwYBDhUFTgcbB1cHAgYXDFAEQwMtAwEEEQYPDDoEHSVfIG0EaiWAyAWCsAMaBoL9A1kHFgkYCRQMFAxqBgoGGgZZBysFRgosBAwEAQMxCywEGgYLA4CsBgoGLzGA9Ag8Aw8DPgU4CCsFgv8RGAgvES0DIQ8hD4CMBIKaFgsViJQFLwU7BwIOGAmAviJ0DIDWGoEQBYDhCfKeAzcJgVwUgLgIgN0VOwMKBjgIRggMBnQLHgNaBFkJgIMYHAoWCUwEgIoGq6QMFwQxoQSB2iYHDAUFgKYQgfUHASAqBkwEgI0EgL4DGwMPDW1pbiA+IG1heCwgb3IgZWl0aGVyIHdhcyBOYU4uIG1pbiA9ICwgbWF4ID0gAAAAKSERACQAAABNIREACAAAAMQpEAAeAAAAqwEAAAEAAABhc3NlcnRpb24gZmFpbGVkOiBub2JvcnJvd2Fzc2VydGlvbiBmYWlsZWQ6IGRpZ2l0cyA8IDQwYXNzZXJ0aW9uIGZhaWxlZDogb3RoZXIgPiAwYXR0ZW1wdCB0byBkaXZpZGUgYnkgemVybwDKIREAGQAAAGF0dGVtcHQgdG8gY2FsY3VsYXRlIHRoZSByZW1haW5kZXIgd2l0aCBhIGRpdmlzb3Igb2YgemVybwAAAOwhEQA5AAAAcmFuZ2Ugc3RhcnQgaW5kZXggIG91dCBvZiByYW5nZSBmb3Igc2xpY2Ugb2YgbGVuZ3RoIDAiEQASAAAAQiIRACIAAAByYW5nZSBlbmQgaW5kZXggdCIRABAAAABCIhEAIgAAAHNsaWNlIGluZGV4IHN0YXJ0cyBhdCAgYnV0IGVuZHMgYXQgAJQiEQAWAAAAqiIRAA0AAAAAAwAAgwQgAJEFYABdE6AAEhcgHwwgYB/vLCArKjCgK2+mYCwCqOAsHvvgLQD+IDae/2A2/QHhNgEKITckDeE3qw5hOS8Y4TkwHOFK8x7hTkA0oVIeYeFT8GphVE9v4VSdvGFVAM9hVmXRoVYA2iFXAOChWK7iIVrs5OFb0OhhXCAA7lzwAX9dABgRAAIYEQAEGBEAAgAAAAIAAAAHAAAAAwAAAAQAAAAEAAAABgAAAIP5ogBETm4A/CkVANFXJwDdNPUAYtvAADyZlQBBkEMAY1H+ALveqwC3YcUAOm4kANJNQgBJBuAACeouAByS0QDrHf4AKbEcAOg+pwD1NYIARLsuAJzphAC0JnAAQX5fANaROQBTgzkAnPQ5AItfhAAo+b0A+B87AN7/lwAPmAUAES/vAApaiwBtH20Az342AAnLJwBGT7cAnmY/AC3qXwC6J3UA5evHAD178QD3OQcAklKKAPtr6gAfsV8ACF2NADADVgB7/EYA8KtrACC8zwA29JoA46kdAF5hkQAIG+YAhZllAKAUXwCNQGgAgNj/ACdzTQAGBjEAylYVAMmocwB74mAAa4zAAAAAAED7Ifk/AAAAAC1EdD4AAACAmEb4PAAAAGBRzHg7AAAAgIMb8DkAAABAICV6OAAAAIAiguM2AAAAAB3zaTU4Y+0+2g9JP16Yez/aD8k/aTesMWghIjO0DxQzaCGiM9sPST/bD0m/5MsWQOTLFsAAAAAAAAAAgNsPSUDbD0nAAEGBysQACzEBAAACAAAAAAAAAAEBAAACAAAAAAAAAAIBAAACAAAAAAAAAAMBAAACAAAAAAAAAAQBAEHMysQACwsFAQAAAQAAAPwCEQA8CXByb2R1Y2VycwEMcHJvY2Vzc2VkLWJ5AgZ3YWxydXMGMC4yMy4zDHdhc20tYmluZGdlbgcwLjIuMTAw").buffer)})}function HaQ(){return function(){let A,Q;try{let J=j.__wbindgen_add_to_stack_pointer(-16);j.version(J);var B=IY().getInt32(J+0,!0),Y=IY().getInt32(J+4,!0);return A=B,Q=Y,kg(B,Y)}finally{j.__wbindgen_add_to_stack_pointer(16),j.__wbindgen_export_1(A,Q,1)}}()}function DaQ(A){var Q;Q=A,j.reserve_memory(Q)}R9[45]=62,R9[95]=63;var WB=Object.freeze({__proto__:null,version:HaQ,reserveMemory:DaQ,Vector3:sg,VectorOps:a,Quaternion:u2,RotationOps:hQ,SdpMatrix3:rg,SdpMatrix3Ops:d2,get RigidBodyType(){return jC},RigidBody:i2,RigidBodyDesc:h1,RigidBodySet:ag,IntegrationParameters:og,get JointType(){return BJ},get MotorModel(){return _g},get JointAxesMask(){return vg},ImpulseJoint:PC,UnitImpulseJoint:Q3,FixedImpulseJoint:tg,RopeImpulseJoint:eg,SpringImpulseJoint:Ah,PrismaticImpulseJoint:Qh,RevoluteImpulseJoint:Bh,GenericImpulseJoint:Yh,SphericalImpulseJoint:Jh,JointData:YG,ImpulseJointSet:Ch,MultibodyJoint:V7,UnitMultibodyJoint:B3,FixedMultibodyJoint:Xh,PrismaticMultibodyJoint:Gh,RevoluteMultibodyJoint:Fh,SphericalMultibodyJoint:Wh,MultibodyJointSet:Zh,get CoefficientCombineRule(){return CH},CCDSolver:$h,IslandManager:Uh,BroadPhase:Eh,NarrowPhase:Kh,TempContactManifold:Vh,Shape:JY,get ShapeType(){return YY},get HeightFieldFlags(){return yg},get TriMeshFlags(){return gg},Ball:J3,HalfSpace:Ih,Cuboid:C3,RoundCuboid:X3,Capsule:G3,Segment:F3,Triangle:W3,RoundTriangle:Z3,Polyline:$3,Voxels:U3,TriMesh:E3,ConvexPolyhedron:FH,RoundConvexPolyhedron:WH,Heightfield:K3,Cylinder:V3,RoundCylinder:I3,Cone:H3,RoundCone:D3,get ActiveCollisionTypes(){return p2},Collider:s2,get MassPropsMode(){return dW},ColliderDesc:BY,ColliderSet:wh,get FeatureType(){return RU},Ray:sXA,RayIntersection:$H,RayColliderIntersection:XH,RayColliderHit:Y3,PointProjection:UH,PointColliderProjection:GH,ShapeCastHit:jU,ColliderShapeCastHit:EH,ShapeContact:wU,World:N3,PhysicsPipeline:Hh,SerializationPipeline:n2,get ActiveEvents(){return c2},TempContactForceEvent:Rh,EventQueue:rXA,get ActiveHooks(){return l2},get SolverFlags(){return xg},DebugRenderBuffers:Dh,DebugRenderPipeline:Nh,get QueryFilterFlags(){return fg},init:IaQ,CharacterCollision:Lh,KinematicCharacterController:qh,get PidAxesMask(){return hg},PidController:Mh,DynamicRayCastVehicleController:zh});var lW;((H)=>{H[H.BLOCK=1]="BLOCK";H[H.ENTITY=2]="ENTITY";H[H.ENTITY_SENSOR=4]="ENTITY_SENSOR";H[H.ENVIRONMENT_ENTITY=8]="ENVIRONMENT_ENTITY";H[H.PLAYER=16]="PLAYER";H[H.GROUP_1=32]="GROUP_1";H[H.GROUP_2=64]="GROUP_2";H[H.GROUP_3=128]="GROUP_3";H[H.GROUP_4=256]="GROUP_4";H[H.GROUP_5=512]="GROUP_5";H[H.GROUP_6=1024]="GROUP_6";H[H.GROUP_7=2048]="GROUP_7";H[H.GROUP_8=4096]="GROUP_8";H[H.GROUP_9=8192]="GROUP_9";H[H.GROUP_10=16384]="GROUP_10";H[H.GROUP_11=32768]="GROUP_11";H[H.ALL=65535]="ALL"})(lW||={});class TC{static BELONGS_TO_SHIFT=16;static COLLIDES_WITH_MASK=65535;static buildRawCollisionGroups(A){return this.combineGroups(A.belongsTo)<>>this.BELONGS_TO_SHIFT),collidesWith:this.bitsToGroups(A&this.COLLIDES_WITH_MASK)}}static decodeCollisionGroups(A){return{belongsTo:A.belongsTo.map((Q)=>this.groupToName(Q)),collidesWith:A.collidesWith.map((Q)=>this.groupToName(Q))}}static isDefaultCollisionGroups(A){return A.belongsTo.includes(65535)&&A.collidesWith.includes(65535)}static combineGroups(A){return A.reduce((Q,B)=>Q|B,0)}static bitsToGroups(A){if(A===65535)return[65535];return Object.values(lW).filter((Q)=>typeof Q==="number"&&Q!==65535&&(A&Q)!==0)}static groupToName(A){let Q=Object.entries(lW).find(([B,Y])=>Y===A);if(!Q)n.fatalError(`CollisionGroupsBuilder.groupToName(): Unknown collision group: ${A}`);return Q[0]}}import KYB from"crypto";import I8 from"fs";import VYB from"os";import LJ from"path";class Oh{constructor(){this._listeners={}}addEventListener(A,Q){let B=this._listeners;if(B[A]===void 0)B[A]=[];if(B[A].indexOf(Q)===-1)B[A].push(Q);return this}removeEventListener(A,Q){let Y=this._listeners[A];if(Y!==void 0){let J=Y.indexOf(Q);if(J!==-1)Y.splice(J,1)}return this}dispatchEvent(A){let B=this._listeners[A.type];if(B!==void 0){let Y=B.slice(0);for(let J=0,C=Y.length;J=0)this.list.splice(Q,1)}removeChild(A){let Q=[];for(let B of this.list)if(B.getChild()===A)Q.push(B);for(let B of Q)this.remove(B);return Q}listRefsByChild(A){let Q=[];for(let B of this.list)if(B.getChild()===A)Q.push(B);return Q}values(){return this.list}}class xB{constructor(A){if(this.set=new Set,this.map=new Map,A)for(let Q of A)this.add(Q)}add(A){let Q=A.getChild();this.removeChild(Q),this.set.add(A),this.map.set(Q,A)}remove(A){this.set.delete(A),this.map.delete(A.getChild())}removeChild(A){let Q=this.map.get(A)||null;if(Q)this.remove(Q);return Q}getRefByChild(A){return this.map.get(A)||null}values(){return Array.from(this.set)}}class sJ{constructor(A){if(this.map={},A)Object.assign(this.map,A)}set(A,Q){this.map[A]=Q}delete(A){delete this.map[A]}get(A){return this.map[A]||null}keys(){return Object.keys(this.map)}values(){return Object.values(this.map)}}var SB=Symbol("attributes"),I7=Symbol("immutableKeys");class q3 extends Oh{constructor(A){super();this._disposed=!1,this.graph=void 0,this[SB]=void 0,this[I7]=void 0,this.graph=A,this[I7]=new Set,this[SB]=this._createAttributes()}getDefaults(){return{}}_createAttributes(){let A=this.getDefaults(),Q={};for(let B in A){let Y=A[B];if(Y instanceof q3){let J=this.graph._createEdge(B,this,Y);this[I7].add(B),Q[B]=J}else Q[B]=Y}return Q}isOnGraph(A){return this.graph===A.graph}isDisposed(){return this._disposed}dispose(){if(this._disposed)return;this.graph.listChildEdges(this).forEach((A)=>A.dispose()),this.graph.disconnectParents(this),this._disposed=!0,this.dispatchEvent({type:"dispose"})}detach(){return this.graph.disconnectParents(this),this}swap(A,Q){for(let B in this[SB]){let Y=this[SB][B];if(Y instanceof FG){let J=Y;if(J.getChild()===A)this.setRef(B,Q,J.getAttributes())}else if(Y instanceof SC)for(let J of Y.listRefsByChild(A)){let C=J.getAttributes();this.removeRef(B,A),this.addRef(B,Q,C)}else if(Y instanceof xB){let J=Y.getRefByChild(A);if(J){let C=J.getAttributes();this.removeRef(B,A),this.addRef(B,Q,C)}}else if(Y instanceof sJ)for(let J of Y.keys()){let C=Y.get(J);if(C.getChild()===A)this.setRefMap(B,J,Q,C.getAttributes())}}return this}get(A){return this[SB][A]}set(A,Q){return this[SB][A]=Q,this.dispatchEvent({type:"change",attribute:A})}getRef(A){let Q=this[SB][A];return Q?Q.getChild():null}setRef(A,Q,B){if(this[I7].has(A))throw Error(`Cannot overwrite immutable attribute, "${A}".`);let Y=this[SB][A];if(Y)Y.dispose();if(!Q)return this;let J=this.graph._createEdge(A,this,Q,B);return this[SB][A]=J,this.dispatchEvent({type:"change",attribute:A})}listRefs(A){return this.assertRefList(A).values().map((B)=>B.getChild())}addRef(A,Q,B){let Y=this.graph._createEdge(A,this,Q,B);return this.assertRefList(A).add(Y),this.dispatchEvent({type:"change",attribute:A})}removeRef(A,Q){let B=this.assertRefList(A);if(B instanceof SC)for(let Y of B.listRefsByChild(Q))Y.dispose();else{let Y=B.getRefByChild(Q);if(Y)Y.dispose()}return this}assertRefList(A){let Q=this[SB][A];if(Q instanceof SC||Q instanceof xB)return Q;throw Error(`Expected RefList or RefSet for attribute "${A}"`)}listRefMapKeys(A){return this.assertRefMap(A).keys()}listRefMapValues(A){return this.assertRefMap(A).values().map((Q)=>Q.getChild())}getRefMap(A,Q){let Y=this.assertRefMap(A).get(Q);return Y?Y.getChild():null}setRefMap(A,Q,B,Y){let J=this.assertRefMap(A),C=J.get(Q);if(C)C.dispose();if(!B)return this;Y=Object.assign(Y||{},{key:Q});let X=this.graph._createEdge(A,this,B,KH({},Y,{key:Q}));return J.set(Q,X),this.dispatchEvent({type:"change",attribute:A,key:Q})}assertRefMap(A){let Q=this[SB][A];if(Q instanceof sJ)return Q;throw Error(`Expected RefMap for attribute "${A}"`)}dispatchEvent(A){return super.dispatchEvent(KH({},A,{target:this})),this.graph.dispatchEvent(KH({},A,{target:this,type:`node:${A.type}`})),this}_destroyRef(A){let Q=A.getName();if(this[SB][Q]===A){if(this[SB][Q]=null,this[I7].has(Q))A.getChild().dispose()}else if(this[SB][Q]instanceof SC)this[SB][Q].remove(A);else if(this[SB][Q]instanceof xB)this[SB][Q].remove(A);else if(this[SB][Q]instanceof sJ){let B=this[SB][Q];for(let Y of B.keys())if(B.get(Y)===A)B.delete(Y)}else return;this.graph._destroyEdge(A),this.dispatchEvent({type:"change",attribute:Q})}}var BGA="v4.2.1",iW="@glb.bin",YA;(function(A){A.ACCESSOR="Accessor",A.ANIMATION="Animation",A.ANIMATION_CHANNEL="AnimationChannel",A.ANIMATION_SAMPLER="AnimationSampler",A.BUFFER="Buffer",A.CAMERA="Camera",A.MATERIAL="Material",A.MESH="Mesh",A.PRIMITIVE="Primitive",A.PRIMITIVE_TARGET="PrimitiveTarget",A.NODE="Node",A.ROOT="Root",A.SCENE="Scene",A.SKIN="Skin",A.TEXTURE="Texture",A.TEXTURE_INFO="TextureInfo"})(YA||(YA={}));var O3;(function(A){A.INTERLEAVED="interleaved",A.SEPARATE="separate"})(O3||(O3={}));var E8;(function(A){A.ARRAY_BUFFER="ARRAY_BUFFER",A.ELEMENT_ARRAY_BUFFER="ELEMENT_ARRAY_BUFFER",A.INVERSE_BIND_MATRICES="INVERSE_BIND_MATRICES",A.OTHER="OTHER",A.SPARSE="SPARSE"})(E8||(E8={}));var j9;(function(A){A[A.R=4096]="R",A[A.G=256]="G",A[A.B=16]="B",A[A.A=1]="A"})(j9||(j9={}));var WG;(function(A){A.GLTF="GLTF",A.GLB="GLB"})(WG||(WG={}));var D7={"5120":Int8Array,"5121":Uint8Array,"5122":Int16Array,"5123":Uint16Array,"5125":Uint32Array,"5126":Float32Array};class PQ{static createBufferFromDataURI(A){if(typeof Buffer>"u"){let Q=atob(A.split(",")[1]),B=new Uint8Array(Q.length);for(let Y=0;Y=0;return Buffer.from(Q,B?"base64":"utf8")}}static encodeText(A){return new TextEncoder().encode(A)}static decodeText(A){return new TextDecoder().decode(A)}static concat(A){let Q=0;for(let J of A)Q+=J.byteLength;let B=new Uint8Array(Q),Y=0;for(let J of A)B.set(J,Y),Y+=J.byteLength;return B}static pad(A,Q=0){let B=this.padNumber(A.byteLength);if(B===A.byteLength)return A;let Y=new Uint8Array(B);if(Y.set(A),Q!==0)for(let J=A.byteLength;J>16&255)/255,B[1]=(A>>8&255)/255,B[2]=(A&255)/255,this.convertSRGBToLinear(Q,Q)}static factorToHex(A){let Q=[...A],[B,Y,J]=this.convertLinearToSRGB(A,Q);return B*255<<16^Y*255<<8^J*255<<0}static convertSRGBToLinear(A,Q){let B=A,Y=Q;for(let J=0;J<3;J++)Y[J]=B[J]<0.04045?B[J]*0.0773993808:Math.pow(B[J]*0.9478672986+0.0521327014,2.4);return Q}static convertLinearToSRGB(A,Q){let B=A,Y=Q;for(let J=0;J<3;J++)Y[J]=B[J]<0.0031308?B[J]*12.92:1.055*Math.pow(B[J],0.41666)-0.055;return Q}}class YGA{match(A){return A.length>=3&&A[0]===255&&A[1]===216&&A[2]===255}getSize(A){let Q=new DataView(A.buffer,A.byteOffset+4),B,Y;while(Q.byteLength){if(B=Q.getUint16(0,!1),NaQ(Q,B),Y=Q.getUint8(B+1),Y===192||Y===193||Y===194)return[Q.getUint16(B+7,!1),Q.getUint16(B+5,!1)];Q=new DataView(A.buffer,Q.byteOffset+B+2)}throw TypeError("Invalid JPG, no size found")}getChannels(A){return 3}}class S3{match(A){return A.length>=8&&A[0]===137&&A[1]===80&&A[2]===78&&A[3]===71&&A[4]===13&&A[5]===10&&A[6]===26&&A[7]===10}getSize(A){let Q=new DataView(A.buffer,A.byteOffset);if(PQ.decodeText(A.slice(12,16))===S3.PNG_FRIED_CHUNK_NAME)return[Q.getUint32(32,!1),Q.getUint32(36,!1)];return[Q.getUint32(16,!1),Q.getUint32(20,!1)]}getChannels(A){return 4}}S3.PNG_FRIED_CHUNK_NAME="CgBI";class U8{static registerFormat(A,Q){this.impls[A]=Q}static getMimeType(A){for(let Q in this.impls)if(this.impls[Q].match(A))return Q;return null}static getSize(A,Q){if(!this.impls[Q])return null;return this.impls[Q].getSize(A)}static getChannels(A,Q){if(!this.impls[Q])return null;return this.impls[Q].getChannels(A)}static getVRAMByteLength(A,Q){if(!this.impls[Q])return null;if(this.impls[Q].getVRAMByteLength)return this.impls[Q].getVRAMByteLength(A);let B=0,Y=4,J=this.getSize(A,Q);if(!J)return null;while(J[0]>1||J[1]>1)B+=J[0]*J[1]*Y,J[0]=Math.max(Math.floor(J[0]/2),1),J[1]=Math.max(Math.floor(J[1]/2),1);return B+=1*Y,B}static mimeTypeToExtension(A){if(A==="image/jpeg")return"jpg";return A.split("/").pop()}static extensionToMimeType(A){if(A==="jpg")return"image/jpeg";if(!A)return"";return`image/${A}`}}U8.impls={"image/jpeg":new YGA,"image/png":new S3};function NaQ(A,Q){if(Q>A.byteLength)throw TypeError("Corrupt JPG, exceeded buffer limits");if(A.getUint8(Q)!==255)throw TypeError("Invalid JPG, marker table corrupted");return A}class ZG{static basename(A){let Q=A.split(/[\\/]/).pop();return Q.substring(0,Q.lastIndexOf("."))}static extension(A){if(A.startsWith("data:image/")){let Q=A.match(/data:(image\/\w+)/)[1];return U8.mimeTypeToExtension(Q)}else if(A.startsWith("data:model/gltf+json"))return"gltf";else if(A.startsWith("data:model/gltf-binary"))return"glb";else if(A.startsWith("data:application/"))return"bin";return A.split(/[\\/]/).pop().split(/[.]/).pop()}}var Th=typeof Float32Array<"u"?Float32Array:Array;if(!Math.hypot)Math.hypot=function(){var A=0,Q=arguments.length;while(Q--)A+=arguments[Q]*arguments[Q];return Math.sqrt(A)};function LaQ(){var A=new Th(3);if(Th!=Float32Array)A[0]=0,A[1]=0,A[2]=0;return A}function Ph(A){var Q=A[0],B=A[1],Y=A[2];return Math.hypot(Q,B,Y)}function qaQ(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=B[3]*Y+B[7]*J+B[11]*C+B[15];return X=X||1,A[0]=(B[0]*Y+B[4]*J+B[8]*C+B[12])/X,A[1]=(B[1]*Y+B[5]*J+B[9]*C+B[13])/X,A[2]=(B[2]*Y+B[6]*J+B[10]*C+B[14])/X,A}(function(){var A=LaQ();return function(Q,B,Y,J,C,X){var G,F;if(!B)B=3;if(!Y)Y=0;if(J)F=Math.min(J*B+Y,Q.length);else F=Q.length;for(G=Y;G{let C=J.getMesh();if(!C)return;let X=MaQ(C,J.getWorldMatrix());if(X.min.every(isFinite)&&X.max.every(isFinite))Sh(X.min,Q),Sh(X.max,Q)});return Q}function MaQ(A,Q){let B=JGA();for(let Y of A.listPrimitives()){let J=Y.getAttribute("POSITION"),C=Y.getIndices();if(!J)continue;let X=[0,0,0],G=[0,0,0];for(let F=0,W=C?C.getCount():J.getCount();F0)V=Math.sqrt(I+1)*2,A[3]=0.25*V,A[0]=(U-E)/V,A[1]=($-F)/V,A[2]=(G-W)/V;else if(X>Z&&X>K)V=Math.sqrt(1+X-Z-K)*2,A[3]=(U-E)/V,A[0]=0.25*V,A[1]=(G+W)/V,A[2]=($+F)/V;else if(Z>K)V=Math.sqrt(1+Z-X-K)*2,A[3]=($-F)/V,A[0]=(G+W)/V,A[1]=0.25*V,A[2]=(U+E)/V;else V=Math.sqrt(1+K-X-Z)*2,A[3]=(G-W)/V,A[0]=($+F)/V,A[1]=(U+E)/V,A[2]=0.25*V;return A}class kQ{static identity(A){return A}static eq(A,Q,B=0.00001){if(A.length!==Q.length)return!1;for(let Y=0;YB)return!1;return!0}static clamp(A,Q,B){if(AB)return B;return A}static decodeNormalizedInt(A,Q){switch(Q){case 5126:return A;case 5123:return A/65535;case 5121:return A/255;case 5122:return Math.max(A/32767,-1);case 5120:return Math.max(A/127,-1);default:throw Error("Invalid component type.")}}static encodeNormalizedInt(A,Q){switch(Q){case 5126:return A;case 5123:return Math.round(kQ.clamp(A,0,1)*65535);case 5121:return Math.round(kQ.clamp(A,0,1)*255);case 5122:return Math.round(kQ.clamp(A,-1,1)*32767);case 5120:return Math.round(kQ.clamp(A,-1,1)*127);default:throw Error("Invalid component type.")}}static decompose(A,Q,B,Y){let J=Ph([A[0],A[1],A[2]]),C=Ph([A[4],A[5],A[6]]),X=Ph([A[8],A[9],A[10]]);if(zaQ(A)<0)J=-J;Q[0]=A[12],Q[1]=A[13],Q[2]=A[14];let F=A.slice(),W=1/J,Z=1/C,U=1/X;F[0]*=W,F[1]*=W,F[2]*=W,F[4]*=Z,F[5]*=Z,F[6]*=Z,F[8]*=U,F[9]*=U,F[10]*=U,jaQ(B,F),Y[0]=J,Y[1]=C,Y[2]=X}static compose(A,Q,B,Y){let J=Y,C=Q[0],X=Q[1],G=Q[2],F=Q[3],W=C+C,Z=X+X,U=G+G,$=C*W,E=C*Z,K=C*U,I=X*Z,V=X*U,H=G*U,D=F*W,L=F*Z,z=F*U,M=B[0],N=B[1],q=B[2];return J[0]=(1-(I+H))*M,J[1]=(E+z)*M,J[2]=(K-L)*M,J[3]=0,J[4]=(E-z)*N,J[5]=(1-($+H))*N,J[6]=(V+D)*N,J[7]=0,J[8]=(K+L)*q,J[9]=(V-D)*q,J[10]=(1-($+I))*q,J[11]=0,J[12]=A[0],J[13]=A[1],J[14]=A[2],J[15]=1,J}}function OaQ(A,Q){if(!!A!==!!Q)return!1;let B=A.getChild(),Y=Q.getChild();return B===Y||B.equals(Y)}function PaQ(A,Q){if(!!A!==!!Q)return!1;let B=A.values(),Y=Q.values();if(B.length!==Y.length)return!1;for(let J=0;JA,vaQ=new Set;class k3 extends q3{constructor(A,Q=""){super(A);this[SB].name=Q,this.init(),this.dispatchEvent({type:"create"})}getGraph(){return this.graph}getDefaults(){return Object.assign(super.getDefaults(),{name:"",extras:{}})}set(A,Q){if(Array.isArray(Q))Q=Q.slice();return super.set(A,Q)}getName(){return this.get("name")}setName(A){return this.set("name",A)}getExtras(){return this.get("extras")}setExtras(A){return this.set("extras",A)}clone(){return new this.constructor(this.graph).copy(this,H7)}copy(A,Q=H7){for(let B in this[SB]){let Y=this[SB][B];if(Y instanceof FG){if(!this[I7].has(B))Y.dispose()}else if(Y instanceof SC||Y instanceof xB)for(let J of Y.values())J.dispose();else if(Y instanceof sJ)for(let J of Y.values())J.dispose()}for(let B in A[SB]){let Y=this[SB][B],J=A[SB][B];if(J instanceof FG)if(this[I7].has(B))Y.getChild().copy(Q(J.getChild()),Q);else this.setRef(B,Q(J.getChild()),J.getAttributes());else if(J instanceof xB||J instanceof SC)for(let C of J.values())this.addRef(B,Q(C.getChild()),C.getAttributes());else if(J instanceof sJ)for(let C of J.keys()){let X=J.get(C);this.setRefMap(B,C,Q(X.getChild()),X.getAttributes())}else if(pW(J))this[SB][B]=JSON.parse(JSON.stringify(J));else if(Array.isArray(J)||J instanceof ArrayBuffer||ArrayBuffer.isView(J))this[SB][B]=J.slice();else this[SB][B]=J}return this}equals(A,Q=vaQ){if(this===A)return!0;if(this.propertyType!==A.propertyType)return!1;for(let B in this[SB]){if(Q.has(B))continue;let Y=this[SB][B],J=A[SB][B];if(Y instanceof FG||J instanceof FG){if(!OaQ(Y,J))return!1}else if(Y instanceof xB||J instanceof xB||Y instanceof SC||J instanceof SC){if(!PaQ(Y,J))return!1}else if(Y instanceof sJ||J instanceof sJ){if(!TaQ(Y,J))return!1}else if(pW(Y)||pW(J)){if(!XGA(Y,J))return!1}else if(P3(Y)||P3(J)){if(!CGA(Y,J))return!1}else if(Y!==J)return!1}return!0}detach(){return this.graph.disconnectParents(this,(A)=>A.propertyType!=="Root"),this}listParents(){return this.graph.listParents(this)}}class HJ extends k3{getDefaults(){return Object.assign(super.getDefaults(),{extensions:new sJ})}getExtension(A){return this.getRefMap("extensions",A)}setExtension(A,Q){if(Q)Q._validateParent(this);return this.setRefMap("extensions",A,Q)}listExtensions(){return this.listRefMapValues("extensions")}}class fA extends HJ{init(){this.propertyType=YA.ACCESSOR}getDefaults(){return Object.assign(super.getDefaults(),{array:null,type:fA.Type.SCALAR,componentType:fA.ComponentType.FLOAT,normalized:!1,sparse:!1,buffer:null})}static getElementSize(A){switch(A){case fA.Type.SCALAR:return 1;case fA.Type.VEC2:return 2;case fA.Type.VEC3:return 3;case fA.Type.VEC4:return 4;case fA.Type.MAT2:return 4;case fA.Type.MAT3:return 9;case fA.Type.MAT4:return 16;default:throw Error("Unexpected type: "+A)}}static getComponentSize(A){switch(A){case fA.ComponentType.BYTE:return 1;case fA.ComponentType.UNSIGNED_BYTE:return 1;case fA.ComponentType.SHORT:return 2;case fA.ComponentType.UNSIGNED_SHORT:return 2;case fA.ComponentType.UNSIGNED_INT:return 4;case fA.ComponentType.FLOAT:return 4;default:throw Error("Unexpected component type: "+A)}}getMinNormalized(A){let Q=this.getNormalized(),B=this.getElementSize(),Y=this.getComponentType();if(this.getMin(A),Q)for(let J=0;J{this._addChildOfRoot(Q.target)})}clone(){throw Error("Root cannot be cloned.")}copy(A,Q=H7){if(Q===H7)throw Error("Root cannot be copied.");this.set("asset",rJ({},A.get("asset"))),this.setName(A.getName()),this.setExtras(rJ({},A.getExtras())),this.setDefaultScene(A.getDefaultScene()?Q(A.getDefaultScene()):null);for(let B of A.listRefMapKeys("extensions")){let Y=A.getExtension(B);this.setExtension(B,Q(Y))}return this}_addChildOfRoot(A){if(A instanceof OU)this.addRef("scenes",A);else if(A instanceof _3)this.addRef("nodes",A);else if(A instanceof nW)this.addRef("cameras",A);else if(A instanceof xh)this.addRef("skins",A);else if(A instanceof DH)this.addRef("meshes",A);else if(A instanceof x1)this.addRef("materials",A);else if(A instanceof sW)this.addRef("textures",A);else if(A instanceof yh)this.addRef("animations",A);else if(A instanceof fA)this.addRef("accessors",A);else if(A instanceof gh)this.addRef("buffers",A);return this}getAsset(){return this.get("asset")}listExtensionsUsed(){return Array.from(this._extensions)}listExtensionsRequired(){return this.listExtensionsUsed().filter((A)=>A.isRequired())}_enableExtension(A){return this._extensions.add(A),this}_disableExtension(A){return this._extensions.delete(A),this}listScenes(){return this.listRefs("scenes")}setDefaultScene(A){return this.setRef("defaultScene",A)}getDefaultScene(){return this.getRef("defaultScene")}listNodes(){return this.listRefs("nodes")}listCameras(){return this.listRefs("cameras")}listSkins(){return this.listRefs("skins")}listMeshes(){return this.listRefs("meshes")}listMaterials(){return this.listRefs("materials")}listTextures(){return this.listRefs("textures")}listAnimations(){return this.listRefs("animations")}listAccessors(){return this.listRefs("accessors")}listBuffers(){return this.listRefs("buffers")}}class IJ{static fromGraph(A){return IJ._GRAPH_DOCUMENTS.get(A)||null}constructor(){this._graph=new L3,this._root=new PU(this._graph),this._logger=w9.DEFAULT_INSTANCE,IJ._GRAPH_DOCUMENTS.set(this._graph,this)}getRoot(){return this._root}getGraph(){return this._graph}getLogger(){return this._logger}setLogger(A){return this._logger=A,this}clone(){throw Error("Use 'cloneDocument(source)' from '@gltf-transform/functions'.")}merge(A){throw Error("Use 'mergeDocuments(target, source)' from '@gltf-transform/functions'.")}async transform(...A){let Q=A.map((B)=>B.name);for(let B of A)await B(this,{stack:Q});return this}createExtension(A){let Q=A.EXTENSION_NAME;return this.getRoot().listExtensionsUsed().find((Y)=>Y.extensionName===Q)||new A(this)}createScene(A=""){return new OU(this._graph,A)}createNode(A=""){return new _3(this._graph,A)}createCamera(A=""){return new nW(this._graph,A)}createSkin(A=""){return new xh(this._graph,A)}createMesh(A=""){return new DH(this._graph,A)}createPrimitive(){return new z0(this._graph)}createPrimitiveTarget(A=""){return new hh(this._graph,A)}createMaterial(A=""){return new x1(this._graph,A)}createTexture(A=""){return new sW(this._graph,A)}createAnimation(A=""){return new yh(this._graph,A)}createAnimationChannel(A=""){return new $G(this._graph,A)}createAnimationSampler(A=""){return new N7(this._graph,A)}createAccessor(A="",Q=null){if(!Q)Q=this.getRoot().listBuffers()[0];return new fA(this._graph,A).setBuffer(Q)}createBuffer(A=""){return new gh(this._graph,A)}}IJ._GRAPH_DOCUMENTS=new WeakMap;class oB{constructor(A){this.extensionName="",this.prereadTypes=[],this.prewriteTypes=[],this.readDependencies=[],this.writeDependencies=[],this.document=void 0,this.required=!1,this.properties=new Set,this._listener=void 0,this.document=A,A.getRoot()._enableExtension(this),this._listener=(B)=>{let Y=B,J=Y.target;if(J instanceof aB&&J.extensionName===this.extensionName){if(Y.type==="node:create")this._addExtensionProperty(J);if(Y.type==="node:dispose")this._removeExtensionProperty(J)}};let Q=A.getGraph();Q.addEventListener("node:create",this._listener),Q.addEventListener("node:dispose",this._listener)}dispose(){this.document.getRoot()._disableExtension(this);let A=this.document.getGraph();A.removeEventListener("node:create",this._listener),A.removeEventListener("node:dispose",this._listener);for(let Q of this.properties)Q.dispose()}static register(){}isRequired(){return this.required}setRequired(A){return this.required=A,this}listProperties(){return Array.from(this.properties)}_addExtensionProperty(A){return this.properties.add(A),this}_removeExtensionProperty(A){return this.properties.delete(A),this}install(A,Q){return this}preread(A,Q){return this}prewrite(A,Q){return this}}oB.EXTENSION_NAME=void 0;class FGA{constructor(A){this.jsonDoc=void 0,this.buffers=[],this.bufferViews=[],this.bufferViewBuffers=[],this.accessors=[],this.textures=[],this.textureInfos=new Map,this.materials=[],this.meshes=[],this.cameras=[],this.nodes=[],this.skins=[],this.animations=[],this.scenes=[],this.jsonDoc=A}setTextureInfo(A,Q){if(this.textureInfos.set(A,Q),Q.texCoord!==void 0)A.setTexCoord(Q.texCoord);if(Q.extras!==void 0)A.setExtras(Q.extras);let B=this.jsonDoc.json.textures[Q.index];if(B.sampler===void 0)return;let Y=this.jsonDoc.json.samplers[B.sampler];if(Y.magFilter!==void 0)A.setMagFilter(Y.magFilter);if(Y.minFilter!==void 0)A.setMinFilter(Y.minFilter);if(Y.wrapS!==void 0)A.setWrapS(Y.wrapS);if(Y.wrapT!==void 0)A.setWrapT(Y.wrapT)}}var AGA={logger:w9.DEFAULT_INSTANCE,extensions:[],dependencies:{}},haQ=new Set([YA.BUFFER,YA.TEXTURE,YA.MATERIAL,YA.MESH,YA.PRIMITIVE,YA.NODE,YA.SCENE]);class WGA{static read(A,Q=AGA){let B=rJ({},AGA,Q),{json:Y}=A,J=new IJ().setLogger(B.logger);this.validate(A,B);let C=new FGA(A),X=Y.asset,G=J.getRoot().getAsset();if(X.copyright)G.copyright=X.copyright;if(X.extras)G.extras=X.extras;if(Y.extras!==void 0)J.getRoot().setExtras(rJ({},Y.extras));let F=Y.extensionsUsed||[],W=Y.extensionsRequired||[];B.extensions.sort((N,q)=>N.EXTENSION_NAME>q.EXTENSION_NAME?1:-1);for(let N of B.extensions)if(F.includes(N.EXTENSION_NAME)){let q=J.createExtension(N).setRequired(W.includes(N.EXTENSION_NAME)),w=q.prereadTypes.filter((P)=>!haQ.has(P));if(w.length)B.logger.warn(`Preread hooks for some types (${w.join()}), requested by extension ${q.extensionName}, are unsupported. Please file an issue or a PR.`);for(let P of q.readDependencies)q.install(P,B.dependencies[P])}let Z=Y.buffers||[];J.getRoot().listExtensionsUsed().filter((N)=>N.prereadTypes.includes(YA.BUFFER)).forEach((N)=>N.preread(C,YA.BUFFER)),C.buffers=Z.map((N)=>{let q=J.createBuffer(N.name);if(N.extras)q.setExtras(N.extras);if(N.uri&&N.uri.indexOf("__")!==0)q.setURI(N.uri);return q});let U=Y.bufferViews||[];C.bufferViewBuffers=U.map((N,q)=>{if(!C.bufferViews[q]){let w=A.json.buffers[N.buffer],P=w.uri?A.resources[w.uri]:A.resources[iW],_=N.byteOffset||0;C.bufferViews[q]=PQ.toView(P,_,N.byteLength)}return C.buffers[N.buffer]});let $=Y.accessors||[];C.accessors=$.map((N)=>{let q=C.bufferViewBuffers[N.bufferView],w=J.createAccessor(N.name,q).setType(N.type);if(N.extras)w.setExtras(N.extras);if(N.normalized!==void 0)w.setNormalized(N.normalized);if(N.bufferView===void 0)return w;return w.setArray(j3(N,C)),w});let E=Y.images||[],K=Y.textures||[];J.getRoot().listExtensionsUsed().filter((N)=>N.prereadTypes.includes(YA.TEXTURE)).forEach((N)=>N.preread(C,YA.TEXTURE)),C.textures=E.map((N)=>{let q=J.createTexture(N.name);if(N.extras)q.setExtras(N.extras);if(N.bufferView!==void 0){let w=Y.bufferViews[N.bufferView],P=A.json.buffers[w.buffer],_=P.uri?A.resources[P.uri]:A.resources[iW],O=w.byteOffset||0,k=w.byteLength,T=_.slice(O,O+k);q.setImage(T)}else if(N.uri!==void 0){if(q.setImage(A.resources[N.uri]),N.uri.indexOf("__")!==0)q.setURI(N.uri)}if(N.mimeType!==void 0)q.setMimeType(N.mimeType);else if(N.uri){let w=ZG.extension(N.uri);q.setMimeType(U8.extensionToMimeType(w))}return q}),J.getRoot().listExtensionsUsed().filter((N)=>N.prereadTypes.includes(YA.MATERIAL)).forEach((N)=>N.preread(C,YA.MATERIAL));let I=Y.materials||[];C.materials=I.map((N)=>{let q=J.createMaterial(N.name);if(N.extras)q.setExtras(N.extras);if(N.alphaMode!==void 0)q.setAlphaMode(N.alphaMode);if(N.alphaCutoff!==void 0)q.setAlphaCutoff(N.alphaCutoff);if(N.doubleSided!==void 0)q.setDoubleSided(N.doubleSided);let w=N.pbrMetallicRoughness||{};if(w.baseColorFactor!==void 0)q.setBaseColorFactor(w.baseColorFactor);if(N.emissiveFactor!==void 0)q.setEmissiveFactor(N.emissiveFactor);if(w.metallicFactor!==void 0)q.setMetallicFactor(w.metallicFactor);if(w.roughnessFactor!==void 0)q.setRoughnessFactor(w.roughnessFactor);if(w.baseColorTexture!==void 0){let P=w.baseColorTexture,_=C.textures[K[P.index].source];q.setBaseColorTexture(_),C.setTextureInfo(q.getBaseColorTextureInfo(),P)}if(N.emissiveTexture!==void 0){let P=N.emissiveTexture,_=C.textures[K[P.index].source];q.setEmissiveTexture(_),C.setTextureInfo(q.getEmissiveTextureInfo(),P)}if(N.normalTexture!==void 0){let P=N.normalTexture,_=C.textures[K[P.index].source];if(q.setNormalTexture(_),C.setTextureInfo(q.getNormalTextureInfo(),P),N.normalTexture.scale!==void 0)q.setNormalScale(N.normalTexture.scale)}if(N.occlusionTexture!==void 0){let P=N.occlusionTexture,_=C.textures[K[P.index].source];if(q.setOcclusionTexture(_),C.setTextureInfo(q.getOcclusionTextureInfo(),P),N.occlusionTexture.strength!==void 0)q.setOcclusionStrength(N.occlusionTexture.strength)}if(w.metallicRoughnessTexture!==void 0){let P=w.metallicRoughnessTexture,_=C.textures[K[P.index].source];q.setMetallicRoughnessTexture(_),C.setTextureInfo(q.getMetallicRoughnessTextureInfo(),P)}return q}),J.getRoot().listExtensionsUsed().filter((N)=>N.prereadTypes.includes(YA.MESH)).forEach((N)=>N.preread(C,YA.MESH));let V=Y.meshes||[];J.getRoot().listExtensionsUsed().filter((N)=>N.prereadTypes.includes(YA.PRIMITIVE)).forEach((N)=>N.preread(C,YA.PRIMITIVE)),C.meshes=V.map((N)=>{let q=J.createMesh(N.name);if(N.extras)q.setExtras(N.extras);if(N.weights!==void 0)q.setWeights(N.weights);return(N.primitives||[]).forEach((P)=>{let _=J.createPrimitive();if(P.extras)_.setExtras(P.extras);if(P.material!==void 0)_.setMaterial(C.materials[P.material]);if(P.mode!==void 0)_.setMode(P.mode);for(let[T,S]of Object.entries(P.attributes||{}))_.setAttribute(T,C.accessors[S]);if(P.indices!==void 0)_.setIndices(C.accessors[P.indices]);let O=N.extras&&N.extras.targetNames||[];(P.targets||[]).forEach((T,S)=>{let v=O[S]||S.toString(),y=J.createPrimitiveTarget(v);for(let[h,g]of Object.entries(T))y.setAttribute(h,C.accessors[g]);_.addTarget(y)}),q.addPrimitive(_)}),q});let H=Y.cameras||[];C.cameras=H.map((N)=>{let q=J.createCamera(N.name).setType(N.type);if(N.extras)q.setExtras(N.extras);if(N.type===nW.Type.PERSPECTIVE){let w=N.perspective;if(q.setYFov(w.yfov),q.setZNear(w.znear),w.zfar!==void 0)q.setZFar(w.zfar);if(w.aspectRatio!==void 0)q.setAspectRatio(w.aspectRatio)}else{let w=N.orthographic;q.setZNear(w.znear).setZFar(w.zfar).setXMag(w.xmag).setYMag(w.ymag)}return q});let D=Y.nodes||[];J.getRoot().listExtensionsUsed().filter((N)=>N.prereadTypes.includes(YA.NODE)).forEach((N)=>N.preread(C,YA.NODE)),C.nodes=D.map((N)=>{let q=J.createNode(N.name);if(N.extras)q.setExtras(N.extras);if(N.translation!==void 0)q.setTranslation(N.translation);if(N.rotation!==void 0)q.setRotation(N.rotation);if(N.scale!==void 0)q.setScale(N.scale);if(N.matrix!==void 0){let w=[0,0,0],P=[0,0,0,1],_=[1,1,1];kQ.decompose(N.matrix,w,P,_),q.setTranslation(w),q.setRotation(P),q.setScale(_)}if(N.weights!==void 0)q.setWeights(N.weights);return q});let L=Y.skins||[];C.skins=L.map((N)=>{let q=J.createSkin(N.name);if(N.extras)q.setExtras(N.extras);if(N.inverseBindMatrices!==void 0)q.setInverseBindMatrices(C.accessors[N.inverseBindMatrices]);if(N.skeleton!==void 0)q.setSkeleton(C.nodes[N.skeleton]);for(let w of N.joints)q.addJoint(C.nodes[w]);return q}),D.map((N,q)=>{let w=C.nodes[q];if((N.children||[]).forEach((_)=>w.addChild(C.nodes[_])),N.mesh!==void 0)w.setMesh(C.meshes[N.mesh]);if(N.camera!==void 0)w.setCamera(C.cameras[N.camera]);if(N.skin!==void 0)w.setSkin(C.skins[N.skin])});let z=Y.animations||[];C.animations=z.map((N)=>{let q=J.createAnimation(N.name);if(N.extras)q.setExtras(N.extras);let P=(N.samplers||[]).map((O)=>{let k=J.createAnimationSampler().setInput(C.accessors[O.input]).setOutput(C.accessors[O.output]).setInterpolation(O.interpolation||N7.Interpolation.LINEAR);if(O.extras)k.setExtras(O.extras);return q.addSampler(k),k});return(N.channels||[]).forEach((O)=>{let k=J.createAnimationChannel().setSampler(P[O.sampler]).setTargetPath(O.target.path);if(O.target.node!==void 0)k.setTargetNode(C.nodes[O.target.node]);if(O.extras)k.setExtras(O.extras);q.addChannel(k)}),q});let M=Y.scenes||[];if(J.getRoot().listExtensionsUsed().filter((N)=>N.prereadTypes.includes(YA.SCENE)).forEach((N)=>N.preread(C,YA.SCENE)),C.scenes=M.map((N)=>{let q=J.createScene(N.name);if(N.extras)q.setExtras(N.extras);return(N.nodes||[]).map((P)=>C.nodes[P]).forEach((P)=>q.addChild(P)),q}),Y.scene!==void 0)J.getRoot().setDefaultScene(C.scenes[Y.scene]);return J.getRoot().listExtensionsUsed().forEach((N)=>N.read(C)),$.forEach((N,q)=>{let w=C.accessors[q],P=!!N.sparse,_=!N.bufferView&&!w.getArray();if(P||_)w.setSparse(!0).setArray(faQ(N,C))}),J}static validate(A,Q){let B=A.json;if(B.asset.version!=="2.0")throw Error(`Unsupported glTF version, "${B.asset.version}".`);if(B.extensionsRequired){for(let Y of B.extensionsRequired)if(!Q.extensions.find((J)=>J.EXTENSION_NAME===Y))throw Error(`Missing required extension, "${Y}".`)}if(B.extensionsUsed){for(let Y of B.extensionsUsed)if(!Q.extensions.find((J)=>J.EXTENSION_NAME===Y))Q.logger.warn(`Missing optional extension, "${Y}".`)}}}function xaQ(A,Q){let B=Q.jsonDoc,Y=Q.bufferViews[A.bufferView],J=B.json.bufferViews[A.bufferView],C=D7[A.componentType],X=fA.getElementSize(A.type),G=C.BYTES_PER_ELEMENT,F=A.byteOffset||0,W=new C(A.count*X),Z=new DataView(Y.buffer,Y.byteOffset,Y.byteLength),U=J.byteStride;for(let $=0;$1,()=>B.basename||"buffer"),this.imageURIGenerator=new _h(C>1,(X)=>baQ(A,X)||B.basename||"texture"),this.logger=A.getLogger()}createTextureInfoDef(A,Q){let B={magFilter:Q.getMagFilter()||void 0,minFilter:Q.getMinFilter()||void 0,wrapS:Q.getWrapS(),wrapT:Q.getWrapT()},Y=JSON.stringify(B);if(!this.samplerDefIndexMap.has(Y))this.samplerDefIndexMap.set(Y,this.jsonDoc.json.samplers.length),this.jsonDoc.json.samplers.push(B);let J={source:this.imageIndexMap.get(A),sampler:this.samplerDefIndexMap.get(Y)},C=JSON.stringify(J);if(!this.textureDefIndexMap.has(C))this.textureDefIndexMap.set(C,this.jsonDoc.json.textures.length),this.jsonDoc.json.textures.push(J);let X={index:this.textureDefIndexMap.get(C)};if(Q.getTexCoord()!==0)X.texCoord=Q.getTexCoord();if(Object.keys(Q.getExtras()).length>0)X.extras=Q.getExtras();return this.textureInfoDefMap.set(Q,X),X}createPropertyDef(A){let Q={};if(A.getName())Q.name=A.getName();if(Object.keys(A.getExtras()).length>0)Q.extras=A.getExtras();return Q}createAccessorDef(A){let Q=this.createPropertyDef(A);if(Q.type=A.getType(),Q.componentType=A.getComponentType(),Q.count=A.getCount(),this._doc.getGraph().listParentEdges(A).some((Y)=>Y.getName()==="attributes"&&Y.getAttributes().key==="POSITION"||Y.getName()==="input"))Q.max=A.getMax([]).map(Math.fround),Q.min=A.getMin([]).map(Math.fround);if(A.getNormalized())Q.normalized=A.getNormalized();return Q}createImageData(A,Q,B){if(this.options.format===WG.GLB)this.imageBufferViews.push(Q),A.bufferView=this.jsonDoc.json.bufferViews.length,this.jsonDoc.json.bufferViews.push({buffer:0,byteOffset:-1,byteLength:Q.byteLength});else{let Y=U8.mimeTypeToExtension(B.getMimeType());A.uri=this.imageURIGenerator.createURI(B,Y),this.assignResourceURI(A.uri,Q,!1)}}assignResourceURI(A,Q,B){let Y=this.jsonDoc.resources;if(!(A in Y)){Y[A]=Q;return}if(Q===Y[A]){this.logger.warn(`Duplicate resource URI, "${A}".`);return}let J=`Resource URI "${A}" already assigned to different data.`;if(!B){this.logger.warn(J);return}throw Error(J)}getAccessorUsage(A){let Q=this._accessorUsageMap.get(A);if(Q)return Q;if(A.getSparse())return E8.SPARSE;for(let B of this._doc.getGraph().listParentEdges(A)){let{usage:Y}=B.getAttributes();if(Y)return Y;if(B.getParent().propertyType!==YA.ROOT)this.logger.warn(`Missing attribute ".usage" on edge, "${B.getName()}".`)}return E8.OTHER}addAccessorToUsageGroup(A,Q){let B=this._accessorUsageMap.get(A);if(B&&B!==Q)throw Error(`Accessor with usage "${B}" cannot be reused as "${Q}".`);return this._accessorUsageMap.set(A,Q),this}}F5.BufferViewTarget=IH;F5.BufferViewUsage=E8;F5.USAGE_TO_TARGET={[E8.ARRAY_BUFFER]:IH.ARRAY_BUFFER,[E8.ELEMENT_ARRAY_BUFFER]:IH.ELEMENT_ARRAY_BUFFER};class _h{constructor(A,Q){this.multiple=void 0,this.basename=void 0,this.counter={},this.multiple=A,this.basename=Q}createURI(A,Q){if(A.getURI())return A.getURI();else if(!this.multiple)return`${this.basename(A)}.${Q}`;else{let B=this.basename(A);return this.counter[B]=this.counter[B]||1,`${B}_${this.counter[B]++}.${Q}`}}}function baQ(A,Q){let B=A.getGraph().listParentEdges(Q).find((Y)=>Y.getParent()!==A.getRoot());return B?B.getName().replace(/texture$/i,""):""}var{BufferViewUsage:w3}=F5,{UNSIGNED_INT:maQ,UNSIGNED_SHORT:uaQ,UNSIGNED_BYTE:daQ}=fA.ComponentType,caQ=new Set([YA.ACCESSOR,YA.BUFFER,YA.MATERIAL,YA.MESH]);class ZGA{static write(A,Q){let B=A.getGraph(),Y=A.getRoot(),J={asset:rJ({generator:`glTF-Transform ${BGA}`},Y.getAsset()),extras:rJ({},Y.getExtras())},C={json:J,resources:{}},X=new F5(A,C,Q),G=Q.logger||w9.DEFAULT_INSTANCE,F=new Set(Q.extensions.map((V)=>V.EXTENSION_NAME)),W=A.getRoot().listExtensionsUsed().filter((V)=>F.has(V.extensionName)).sort((V,H)=>V.extensionName>H.extensionName?1:-1),Z=A.getRoot().listExtensionsRequired().filter((V)=>F.has(V.extensionName)).sort((V,H)=>V.extensionName>H.extensionName?1:-1);if(W.length!caQ.has(D));if(H.length)G.warn(`Prewrite hooks for some types (${H.join()}), requested by extension ${V.extensionName}, are unsupported. Please file an issue or a PR.`);for(let D of V.writeDependencies)V.install(D,Q.dependencies[D])}function U(V,H,D,L){let z=[],M=0;for(let w of V){let P=X.createAccessorDef(w);P.bufferView=J.bufferViews.length;let _=w.getArray(),O=PQ.pad(PQ.toView(_));P.byteOffset=M,M+=O.byteLength,z.push(O),X.accessorIndexMap.set(w,J.accessors.length),J.accessors.push(P)}let N=PQ.concat(z),q={buffer:H,byteOffset:D,byteLength:N.byteLength};if(L)q.target=L;return J.bufferViews.push(q),{buffers:z,byteLength:M}}function $(V,H,D){let L=V[0].getCount(),z=0;for(let P of V){let _=X.createAccessorDef(P);_.bufferView=J.bufferViews.length,_.byteOffset=z;let O=P.getElementSize(),k=P.getComponentSize();z+=PQ.padNumber(O*k),X.accessorIndexMap.set(P,J.accessors.length),J.accessors.push(_)}let M=L*z,N=new ArrayBuffer(M),q=new DataView(N);for(let P=0;PS.getCount()/2)q=!0;let l=D7[S.getComponentType()];p.indices=y,p.values=new l(h)}if(!Number.isFinite(N))return{buffers:L,byteLength:z};if(q)G.warn("Some sparse accessors have >50% non-zero elements, which may increase file size.");let w=N<255?Uint8Array:N<65535?Uint16Array:Uint32Array,P=N<255?daQ:N<65535?uaQ:maQ,_={buffer:H,byteOffset:D+z,byteLength:0};for(let S of V){let v=M.get(S);if(v.count===0)continue;v.indicesByteOffset=_.byteLength;let y=PQ.pad(PQ.toView(new w(v.indices)));L.push(y),z+=y.byteLength,_.byteLength+=y.byteLength}J.bufferViews.push(_);let O=J.bufferViews.length-1,k={buffer:H,byteOffset:D+z,byteLength:0};for(let S of V){let v=M.get(S);if(v.count===0)continue;v.valuesByteOffset=k.byteLength;let y=PQ.pad(PQ.toView(v.values));L.push(y),z+=y.byteLength,k.byteLength+=y.byteLength}J.bufferViews.push(k);let T=J.bufferViews.length-1;for(let S of V){let v=M.get(S);if(v.count===0)continue;v.accessorDef.sparse={count:v.count,indices:{bufferView:O,byteOffset:v.indicesByteOffset,componentType:P},values:{bufferView:T,byteOffset:v.valuesByteOffset}}}return{buffers:L,byteLength:z}}if(J.accessors=[],J.bufferViews=[],J.samplers=[],J.textures=[],J.images=Y.listTextures().map((V,H)=>{let D=X.createPropertyDef(V);if(V.getMimeType())D.mimeType=V.getMimeType();let L=V.getImage();if(L)X.createImageData(D,L,V);return X.imageIndexMap.set(V,H),D}),W.filter((V)=>V.prewriteTypes.includes(YA.ACCESSOR)).forEach((V)=>V.prewrite(X,YA.ACCESSOR)),Y.listAccessors().forEach((V)=>{let{accessorUsageGroupedByParent:H,accessorParents:D}=X;if(X.accessorIndexMap.has(V))return;let L=X.getAccessorUsage(V);if(X.addAccessorToUsageGroup(V,L),H.has(L)){let z=B.listParents(V).find((M)=>M.propertyType!==YA.ROOT);D.set(V,z)}}),W.filter((V)=>V.prewriteTypes.includes(YA.BUFFER)).forEach((V)=>V.prewrite(X,YA.BUFFER)),(Y.listAccessors().length>0||X.otherBufferViews.size>0||Y.listTextures().length>0&&Q.format===WG.GLB)&&Y.listBuffers().length===0)throw Error("Buffer required for Document resources, but none was found.");if(J.buffers=[],Y.listBuffers().forEach((V,H)=>{let D=X.createPropertyDef(V),L=X.accessorUsageGroupedByParent,z=V.listParents().filter((k)=>k instanceof fA),M=new Set(z.map((k)=>X.accessorParents.get(k))),N=new Map(Array.from(M).map((k,T)=>[k,T])),q={};for(let k of z){var w;if(X.accessorIndexMap.has(k))continue;let T=X.getAccessorUsage(k),S=T;if(L.has(T)){let v=X.accessorParents.get(k);S+=`:${N.get(v)}`}q[w=S]||(q[w]={usage:T,accessors:[]}),q[S].accessors.push(k)}let P=[],_=J.buffers.length,O=0;for(let{usage:k,accessors:T}of Object.values(q))if(k===w3.ARRAY_BUFFER&&Q.vertexLayout===O3.INTERLEAVED){let S=$(T,_,O);O+=S.byteLength;for(let v of S.buffers)P.push(v)}else if(k===w3.ARRAY_BUFFER)for(let S of T){let v=$([S],_,O);O+=v.byteLength;for(let y of v.buffers)P.push(y)}else if(k===w3.SPARSE){let S=E(T,_,O);O+=S.byteLength;for(let v of S.buffers)P.push(v)}else if(k===w3.ELEMENT_ARRAY_BUFFER){let S=F5.BufferViewTarget.ELEMENT_ARRAY_BUFFER,v=U(T,_,O,S);O+=v.byteLength;for(let y of v.buffers)P.push(y)}else{let S=U(T,_,O);O+=S.byteLength;for(let v of S.buffers)P.push(v)}if(X.imageBufferViews.length&&H===0){for(let k=0;k!V.getBuffer()))G.warn("Skipped writing one or more Accessors: no Buffer assigned.");W.filter((V)=>V.prewriteTypes.includes(YA.MATERIAL)).forEach((V)=>V.prewrite(X,YA.MATERIAL)),J.materials=Y.listMaterials().map((V,H)=>{let D=X.createPropertyDef(V);if(V.getAlphaMode()!==x1.AlphaMode.OPAQUE)D.alphaMode=V.getAlphaMode();if(V.getAlphaMode()===x1.AlphaMode.MASK)D.alphaCutoff=V.getAlphaCutoff();if(V.getDoubleSided())D.doubleSided=!0;if(D.pbrMetallicRoughness={},!kQ.eq(V.getBaseColorFactor(),[1,1,1,1]))D.pbrMetallicRoughness.baseColorFactor=V.getBaseColorFactor();if(!kQ.eq(V.getEmissiveFactor(),[0,0,0]))D.emissiveFactor=V.getEmissiveFactor();if(V.getRoughnessFactor()!==1)D.pbrMetallicRoughness.roughnessFactor=V.getRoughnessFactor();if(V.getMetallicFactor()!==1)D.pbrMetallicRoughness.metallicFactor=V.getMetallicFactor();if(V.getBaseColorTexture()){let L=V.getBaseColorTexture(),z=V.getBaseColorTextureInfo();D.pbrMetallicRoughness.baseColorTexture=X.createTextureInfoDef(L,z)}if(V.getEmissiveTexture()){let L=V.getEmissiveTexture(),z=V.getEmissiveTextureInfo();D.emissiveTexture=X.createTextureInfoDef(L,z)}if(V.getNormalTexture()){let L=V.getNormalTexture(),z=V.getNormalTextureInfo(),M=X.createTextureInfoDef(L,z);if(V.getNormalScale()!==1)M.scale=V.getNormalScale();D.normalTexture=M}if(V.getOcclusionTexture()){let L=V.getOcclusionTexture(),z=V.getOcclusionTextureInfo(),M=X.createTextureInfoDef(L,z);if(V.getOcclusionStrength()!==1)M.strength=V.getOcclusionStrength();D.occlusionTexture=M}if(V.getMetallicRoughnessTexture()){let L=V.getMetallicRoughnessTexture(),z=V.getMetallicRoughnessTextureInfo();D.pbrMetallicRoughness.metallicRoughnessTexture=X.createTextureInfoDef(L,z)}return X.materialIndexMap.set(V,H),D}),W.filter((V)=>V.prewriteTypes.includes(YA.MESH)).forEach((V)=>V.prewrite(X,YA.MESH)),J.meshes=Y.listMeshes().map((V,H)=>{let D=X.createPropertyDef(V),L=null;if(D.primitives=V.listPrimitives().map((z)=>{let M={attributes:{}};M.mode=z.getMode();let N=z.getMaterial();if(N)M.material=X.materialIndexMap.get(N);if(Object.keys(z.getExtras()).length)M.extras=z.getExtras();let q=z.getIndices();if(q)M.indices=X.accessorIndexMap.get(q);for(let w of z.listSemantics())M.attributes[w]=X.accessorIndexMap.get(z.getAttribute(w));for(let w of z.listTargets()){let P={};for(let _ of w.listSemantics())P[_]=X.accessorIndexMap.get(w.getAttribute(_));M.targets=M.targets||[],M.targets.push(P)}if(z.listTargets().length&&!L)L=z.listTargets().map((w)=>w.getName());return M}),V.getWeights().length)D.weights=V.getWeights();if(L)D.extras=D.extras||{},D.extras.targetNames=L;return X.meshIndexMap.set(V,H),D}),J.cameras=Y.listCameras().map((V,H)=>{let D=X.createPropertyDef(V);if(D.type=V.getType(),D.type===nW.Type.PERSPECTIVE){D.perspective={znear:V.getZNear(),zfar:V.getZFar(),yfov:V.getYFov()};let L=V.getAspectRatio();if(L!==null)D.perspective.aspectRatio=L}else D.orthographic={znear:V.getZNear(),zfar:V.getZFar(),xmag:V.getXMag(),ymag:V.getYMag()};return X.cameraIndexMap.set(V,H),D}),J.nodes=Y.listNodes().map((V,H)=>{let D=X.createPropertyDef(V);if(!kQ.eq(V.getTranslation(),[0,0,0]))D.translation=V.getTranslation();if(!kQ.eq(V.getRotation(),[0,0,0,1]))D.rotation=V.getRotation();if(!kQ.eq(V.getScale(),[1,1,1]))D.scale=V.getScale();if(V.getWeights().length)D.weights=V.getWeights();return X.nodeIndexMap.set(V,H),D}),J.skins=Y.listSkins().map((V,H)=>{let D=X.createPropertyDef(V),L=V.getInverseBindMatrices();if(L)D.inverseBindMatrices=X.accessorIndexMap.get(L);let z=V.getSkeleton();if(z)D.skeleton=X.nodeIndexMap.get(z);return D.joints=V.listJoints().map((M)=>X.nodeIndexMap.get(M)),X.skinIndexMap.set(V,H),D}),Y.listNodes().forEach((V,H)=>{let D=J.nodes[H],L=V.getMesh();if(L)D.mesh=X.meshIndexMap.get(L);let z=V.getCamera();if(z)D.camera=X.cameraIndexMap.get(z);let M=V.getSkin();if(M)D.skin=X.skinIndexMap.get(M);if(V.listChildren().length>0)D.children=V.listChildren().map((N)=>X.nodeIndexMap.get(N))}),J.animations=Y.listAnimations().map((V,H)=>{let D=X.createPropertyDef(V),L=new Map;return D.samplers=V.listSamplers().map((z,M)=>{let N=X.createPropertyDef(z);return N.input=X.accessorIndexMap.get(z.getInput()),N.output=X.accessorIndexMap.get(z.getOutput()),N.interpolation=z.getInterpolation(),L.set(z,M),N}),D.channels=V.listChannels().map((z)=>{let M=X.createPropertyDef(z);return M.sampler=L.get(z.getSampler()),M.target={node:X.nodeIndexMap.get(z.getTargetNode()),path:z.getTargetPath()},M}),X.animationIndexMap.set(V,H),D}),J.scenes=Y.listScenes().map((V,H)=>{let D=X.createPropertyDef(V);return D.nodes=V.listChildren().map((L)=>X.nodeIndexMap.get(L)),X.sceneIndexMap.set(V,H),D});let I=Y.getDefaultScene();if(I)J.scene=Y.listScenes().indexOf(I);return J.extensionsUsed=W.map((V)=>V.extensionName),J.extensionsRequired=Z.map((V)=>V.extensionName),W.forEach((V)=>V.write(X)),laQ(J),C}}function laQ(A){let Q=[];for(let B in A){let Y=A[B];if(Array.isArray(Y)&&Y.length===0)Q.push(B);else if(Y===null||Y==="")Q.push(B);else if(Y&&typeof Y==="object"&&Object.keys(Y).length===0)Q.push(B)}for(let B of Q)delete A[B]}var T3;(function(A){A[A.JSON=1313821514]="JSON",A[A.BIN=5130562]="BIN"})(T3||(T3={}));class $GA{constructor(){this._logger=w9.DEFAULT_INSTANCE,this._extensions=new Set,this._dependencies={},this._vertexLayout=O3.INTERLEAVED,this.lastReadBytes=0,this.lastWriteBytes=0}setLogger(A){return this._logger=A,this}registerExtensions(A){for(let Q of A)this._extensions.add(Q),Q.register();return this}registerDependencies(A){return Object.assign(this._dependencies,A),this}setVertexLayout(A){return this._vertexLayout=A,this}async read(A){return await this.readJSON(await this.readAsJSON(A))}async readAsJSON(A){let Q=await this.readURI(A,"view");this.lastReadBytes=Q.byteLength;let B=QGA(Q)?this._binaryToJSON(Q):{json:JSON.parse(PQ.decodeText(Q)),resources:{}};return await this._readResourcesExternal(B,this.dirname(A)),this._readResourcesInternal(B),B}async readJSON(A){return A=this._copyJSON(A),this._readResourcesInternal(A),WGA.read(A,{extensions:Array.from(this._extensions),dependencies:this._dependencies,logger:this._logger})}async binaryToJSON(A){let Q=this._binaryToJSON(PQ.assertView(A));this._readResourcesInternal(Q);let B=Q.json;if(B.buffers&&B.buffers.some((Y)=>paQ(Q,Y)))throw Error("Cannot resolve external buffers with binaryToJSON().");else if(B.images&&B.images.some((Y)=>iaQ(Q,Y)))throw Error("Cannot resolve external images with binaryToJSON().");return Q}async readBinary(A){return this.readJSON(await this.binaryToJSON(PQ.assertView(A)))}async writeJSON(A,Q={}){if(Q.format===WG.GLB&&A.getRoot().listBuffers().length>1)throw Error("GLB must have 0–1 buffers.");return ZGA.write(A,{format:Q.format||WG.GLTF,basename:Q.basename||"",logger:this._logger,vertexLayout:this._vertexLayout,dependencies:rJ({},this._dependencies),extensions:Array.from(this._extensions)})}async writeBinary(A){let{json:Q,resources:B}=await this.writeJSON(A,{format:WG.GLB}),Y=new Uint32Array([1179937895,2,12]),J=JSON.stringify(Q),C=PQ.pad(PQ.encodeText(J),32),X=PQ.toView(new Uint32Array([C.byteLength,1313821514])),G=PQ.concat([X,C]);Y[Y.length-1]+=G.byteLength;let F=Object.values(B)[0];if(!F||!F.byteLength)return PQ.concat([PQ.toView(Y),G]);let W=PQ.pad(F,0),Z=PQ.toView(new Uint32Array([W.byteLength,5130562])),U=PQ.concat([Z,W]);return Y[Y.length-1]+=U.byteLength,PQ.concat([PQ.toView(Y),G,U])}async _readResourcesExternal(A,Q){var B=this;let Y=A.json.images||[],J=A.json.buffers||[],C=[...Y,...J].map(async function(X){let G=X.uri;if(!G||G.match(/data:/))return Promise.resolve();A.resources[G]=await B.readURI(B.resolve(Q,G),"view"),B.lastReadBytes+=A.resources[G].byteLength});await Promise.all(C)}_readResourcesInternal(A){function Q(J){if(!J.uri)return;if(J.uri in A.resources){PQ.assertView(A.resources[J.uri]);return}if(J.uri.match(/data:/)){let C=`__${GGA()}.${ZG.extension(J.uri)}`;A.resources[C]=PQ.createBufferFromDataURI(J.uri),J.uri=C}}(A.json.images||[]).forEach((J)=>{if(J.bufferView===void 0&&J.uri===void 0)throw Error("Missing resource URI or buffer view.");Q(J)}),(A.json.buffers||[]).forEach(Q)}_copyJSON(A){let{images:Q,buffers:B}=A.json;if(A={json:rJ({},A.json),resources:rJ({},A.resources)},Q)A.json.images=Q.map((Y)=>rJ({},Y));if(B)A.json.buffers=B.map((Y)=>rJ({},Y));return A}_binaryToJSON(A){if(!QGA(A))throw Error("Invalid glTF 2.0 binary.");let Q=new Uint32Array(A.buffer,A.byteOffset+12,2);if(Q[1]!==T3.JSON)throw Error("Missing required GLB JSON chunk.");let B=20,Y=Q[0],J=PQ.decodeText(PQ.toView(A,B,Y)),C=JSON.parse(J),X=B+Y;if(A.byteLength<=X)return{json:C,resources:{}};let G=new Uint32Array(A.buffer,A.byteOffset+X,2);if(G[1]!==T3.BIN)return{json:C,resources:{}};let F=G[0],W=PQ.toView(A,X+8,F);return{json:C,resources:{[iW]:W}}}}function paQ(A,Q){return Q.uri!==void 0&&!(Q.uri in A.resources)}function iaQ(A,Q){return Q.uri!==void 0&&!(Q.uri in A.resources)&&Q.bufferView===void 0}function QGA(A){if(A.byteLength<3*Uint32Array.BYTES_PER_ELEMENT)return!1;let Q=new Uint32Array(A.buffer,A.byteOffset,3);return Q[0]===1179937895&&Q[1]===2}class TU extends $GA{constructor(A=null,Q=G5.DEFAULT_INIT){super();this._fetch=void 0,this._fetchConfig=void 0,this._init=void 0,this._fetchEnabled=!1,this._fetch=A,this._fetchConfig=Q,this._init=this.init()}async init(){if(this._init)return this._init;return Promise.all([import("fs"),import("path")]).then(([A,Q])=>{this._fs=A.promises,this._path=Q})}setAllowNetwork(A){if(A&&!this._fetch)throw Error("NodeIO requires a Fetch API implementation for HTTP requests.");return this._fetchEnabled=A,this}async readURI(A,Q){if(await this.init(),G5.isAbsoluteURL(A)){if(!this._fetchEnabled||!this._fetch)throw Error("Network request blocked. Allow HTTP requests explicitly, if needed.");let B=await this._fetch(A,this._fetchConfig);switch(Q){case"view":return new Uint8Array(await B.arrayBuffer());case"text":return B.text()}}else switch(Q){case"view":return this._fs.readFile(A);case"text":return this._fs.readFile(A,"utf8")}}resolve(A,Q){if(G5.isAbsoluteURL(A)||G5.isAbsoluteURL(Q))return G5.resolve(A,Q);return this._path.resolve(A,decodeURIComponent(Q))}dirname(A){if(G5.isAbsoluteURL(A))return G5.dirname(A);return this._path.dirname(A)}async write(A,Q){await this.init(),await(!!A.match(/\.glb$/)?this._writeGLB(A,Q):this._writeGLTF(A,Q))}async _writeGLTF(A,Q){var B=this;this.lastWriteBytes=0;let{json:Y,resources:J}=await this.writeJSON(Q,{format:WG.GLTF,basename:ZG.basename(A)}),{_fs:C,_path:X}=this,G=X.dirname(A),F=JSON.stringify(Y,null,2);await C.writeFile(A,F),this.lastWriteBytes+=F.length;for(let W of naQ(Object.keys(J),10))await Promise.all(W.map(async function(Z){if(G5.isAbsoluteURL(Z)){if(G5.extension(Z)==="bin")throw Error(`Cannot write buffer to path "${Z}".`);return}let U=X.join(G,decodeURIComponent(Z));await C.mkdir(X.dirname(U),{recursive:!0}),await C.writeFile(U,J[Z]),B.lastWriteBytes+=J[Z].byteLength}))}async _writeGLB(A,Q){let B=await this.writeBinary(Q);await this._fs.writeFile(A,B),this.lastWriteBytes=B.byteLength}}function naQ(A,Q){let B=[];for(let Y=0,J=A.length;Y{if(!Y.extensions||!Y.extensions[UG])return;let C=Y.extensions[UG],X=this.createInstancedMesh();for(let G in C.attributes)X.setAttribute(G,A.accessors[C.attributes[G]]);A.nodes[J].setExtension(UG,X)}),this}prewrite(A){A.accessorUsageGroupedByParent.add(bh);for(let Q of this.properties)for(let B of Q.listAttributes())A.addAccessorToUsageGroup(B,bh);return this}write(A){let Q=A.jsonDoc;return this.document.getRoot().listNodes().forEach((B)=>{let Y=B.getExtension(UG);if(Y){let J=A.nodeIndexMap.get(B),C=Q.json.nodes[J],X={attributes:{}};Y.listSemantics().forEach((G)=>{let F=Y.getAttribute(G);X.attributes[G]=A.accessorIndexMap.get(F)}),C.extensions=C.extensions||{},C.extensions[UG]=X}}),this}}h3.EXTENSION_NAME=UG;function jG(){return jG=Object.assign?Object.assign.bind():function(A){for(var Q=1;Q8?8:4,X.componentType=C>8?VGA:aaQ,X.normalized=!0,G=A.getElementSize()===3?QoQ(G):G,X.array=Q.encodeFilterOct(G,A.getCount(),X.byteStride,C);break;case f0.QUATERNION:X.byteStride=8,X.componentType=VGA,X.normalized=!0,X.array=Q.encodeFilterQuat(G,A.getCount(),X.byteStride,C);break;default:throw Error("Invalid filter.")}if(X.min=A.getMin([]),X.max=A.getMax([]),A.getNormalized())X.min=X.min.map((F)=>mh(F,A.getComponentType())),X.max=X.max.map((F)=>mh(F,A.getComponentType()));if(X.normalized)X.min=X.min.map((F)=>IGA(F,X.componentType)),X.max=X.max.map((F)=>IGA(F,X.componentType))}else if(X.byteStride%4)X.array=AoQ(X.array,A.getElementSize()),X.byteStride=X.array.byteLength/A.getCount();return X}function eaQ(A){let Q=A.getComponentType(),B=A.getArray(),Y=new Float32Array(B.length);for(let J=0;J{return Y instanceof z0&&Y.getMode()===z0.Mode.TRIANGLES})?kU.TRIANGLES:kU.INDICES;return kU.ATTRIBUTES}function YoQ(A,Q){let B=Q.getGraph().listParentEdges(A).filter((Y)=>!(Y.getParent()instanceof PU));for(let Y of B){let J=Y.getName(),C=Y.getAttributes().key||"",X=Y.getParent().propertyType===YA.PRIMITIVE_TARGET;if(J==="indices")return{filter:f0.NONE};if(J==="attributes"){if(C==="POSITION")return{filter:f0.NONE};if(C==="TEXCOORD_0")return{filter:f0.NONE};if(C.startsWith("JOINTS_"))return{filter:f0.NONE};if(C.startsWith("WEIGHTS_"))return{filter:f0.NONE};if(C==="NORMAL"||C==="TANGENT")return X?{filter:f0.NONE}:{filter:f0.OCTAHEDRAL,bits:8}}if(J==="output"){let G=PGA(A);if(G==="rotation")return{filter:f0.QUATERNION,bits:16};if(G==="translation")return{filter:f0.EXPONENTIAL,bits:12};if(G==="scale")return{filter:f0.EXPONENTIAL,bits:12};return{filter:f0.NONE}}if(J==="input")return{filter:f0.NONE};if(J==="inverseBindMatrices")return{filter:f0.NONE}}return{filter:f0.NONE}}function PGA(A){for(let Q of A.listParents()){if(!(Q instanceof N7))continue;for(let B of Q.listParents()){if(!(B instanceof $G))continue;return B.getTargetPath()}}return null}var HGA={method:MH.QUANTIZE};class RH extends oB{constructor(...A){super(...A);this.extensionName=YJ,this.prereadTypes=[YA.BUFFER,YA.PRIMITIVE],this.prewriteTypes=[YA.BUFFER,YA.ACCESSOR],this.readDependencies=["meshopt.decoder"],this.writeDependencies=["meshopt.encoder"],this._decoder=null,this._decoderFallbackBufferMap=new Map,this._encoder=null,this._encoderOptions=HGA,this._encoderFallbackBuffer=null,this._encoderBufferViews={},this._encoderBufferViewData={},this._encoderBufferViewAccessors={}}install(A,Q){if(A==="meshopt.decoder")this._decoder=Q;if(A==="meshopt.encoder")this._encoder=Q;return this}setEncoderOptions(A){return this._encoderOptions=jG({},HGA,A),this}preread(A,Q){if(!this._decoder){if(!this.isRequired())return this;throw Error(`[${YJ}] Please install extension dependency, "meshopt.decoder".`)}if(!this._decoder.supported){if(!this.isRequired())return this;throw Error(`[${YJ}]: Missing WASM support.`)}if(Q===YA.BUFFER)this._prereadBuffers(A);else if(Q===YA.PRIMITIVE)this._prereadPrimitives(A);return this}_prereadBuffers(A){let Q=A.jsonDoc;(Q.json.bufferViews||[]).forEach((Y,J)=>{if(!Y.extensions||!Y.extensions[YJ])return;let C=Y.extensions[YJ],X=C.byteOffset||0,G=C.byteLength||0,F=C.count,W=C.byteStride,Z=new Uint8Array(F*W),U=Q.json.buffers[C.buffer],$=U.uri?Q.resources[U.uri]:Q.resources[iW],E=PQ.toView($,X,G);this._decoder.decodeGltfBuffer(Z,F,W,E,C.mode,C.filter),A.bufferViews[J]=Z})}_prereadPrimitives(A){let Q=A.jsonDoc;(Q.json.bufferViews||[]).forEach((Y)=>{if(!Y.extensions||!Y.extensions[YJ])return;let J=Y.extensions[YJ],C=A.buffers[J.buffer],X=A.buffers[Y.buffer],G=Q.json.buffers[Y.buffer];if(raQ(G))this._decoderFallbackBufferMap.set(X,C)})}read(A){if(!this.isRequired())return this;for(let[Q,B]of this._decoderFallbackBufferMap){for(let Y of Q.listParents())if(Y instanceof fA)Y.swap(Q,B);Q.dispose()}return this}prewrite(A,Q){if(Q===YA.ACCESSOR)this._prewriteAccessors(A);else if(Q===YA.BUFFER)this._prewriteBuffers(A);return this}_prewriteAccessors(A){let Q=A.jsonDoc.json,B=this._encoder,Y=this._encoderOptions,J=this.document.getGraph(),C=this.document.createBuffer(),X=this.document.getRoot().listBuffers().indexOf(C),G=1,F=new Map,W=(Z)=>{for(let U of J.listParents(Z)){if(U.propertyType===YA.ROOT)continue;let $=F.get(Z);if($===void 0)F.set(Z,$=G++);return $}return-1};this._encoderFallbackBuffer=C,this._encoderBufferViews={},this._encoderBufferViewData={},this._encoderBufferViewAccessors={};for(let Z of this.document.getRoot().listAccessors()){if(PGA(Z)==="weights")continue;if(Z.getSparse())continue;let U=A.getAccessorUsage(Z),$=A.accessorUsageGroupedByParent.has(U)?W(Z):null,E=BoQ(Z,U),K=Y.method===MH.FILTER?YoQ(Z,this.document):{filter:f0.NONE},I=taQ(Z,B,E,K),{array:V,byteStride:H}=I,D=Z.getBuffer();if(!D)throw Error(`${YJ}: Missing buffer for accessor.`);let L=this.document.getRoot().listBuffers().indexOf(D),z=[U,$,E,K.filter,H,L].join(":"),M=this._encoderBufferViews[z],N=this._encoderBufferViewData[z],q=this._encoderBufferViewAccessors[z];if(!M||!N)q=this._encoderBufferViewAccessors[z]=[],N=this._encoderBufferViewData[z]=[],M=this._encoderBufferViews[z]={buffer:X,target:F5.USAGE_TO_TARGET[U],byteOffset:0,byteLength:0,byteStride:U===F5.BufferViewUsage.ARRAY_BUFFER?H:void 0,extensions:{[YJ]:{buffer:L,byteOffset:0,byteLength:0,mode:E,filter:K.filter!==f0.NONE?K.filter:void 0,byteStride:H,count:0}}};let w=A.createAccessorDef(Z);if(w.componentType=I.componentType,w.normalized=I.normalized,w.byteOffset=M.byteLength,w.min&&I.min)w.min=I.min;if(w.max&&I.max)w.max=I.max;A.accessorIndexMap.set(Z,Q.accessors.length),Q.accessors.push(w),q.push(w),N.push(new Uint8Array(V.buffer,V.byteOffset,V.byteLength)),M.byteLength+=V.byteLength,M.extensions.EXT_meshopt_compression.count+=Z.getCount()}}_prewriteBuffers(A){let Q=this._encoder;for(let B in this._encoderBufferViews){let Y=this._encoderBufferViews[B],J=this._encoderBufferViewData[B],C=this.document.getRoot().listBuffers()[Y.extensions[YJ].buffer],X=A.otherBufferViews.get(C)||[],{count:G,byteStride:F,mode:W}=Y.extensions[YJ],Z=PQ.concat(J),U=Q.encodeGltfBuffer(Z,G,F,W),$=PQ.pad(U);Y.extensions[YJ].byteLength=U.byteLength,J.length=0,J.push($),X.push($),A.otherBufferViews.set(C,X)}}write(A){let Q=0;for(let C in this._encoderBufferViews){let X=this._encoderBufferViews[C],G=this._encoderBufferViewData[C][0],F=A.otherBufferViewsIndexMap.get(G),W=this._encoderBufferViewAccessors[C];for(let E of W)E.bufferView=F;let Z=A.jsonDoc.json.bufferViews[F],U=Z.byteOffset||0;Object.assign(Z,X),Z.byteOffset=Q;let $=Z.extensions[YJ];$.byteOffset=U,Q+=PQ.padNumber(X.byteLength)}let B=this._encoderFallbackBuffer,Y=A.bufferIndexMap.get(B),J=A.jsonDoc.json.buffers[Y];return J.byteLength=Q,J.extensions={[YJ]:{fallback:!0}},B.dispose(),this}}RH.EXTENSION_NAME=YJ;RH.EncoderMethod=MH;class TGA{match(A){return A.length>=12&&PQ.decodeText(A.slice(4,12))==="ftypavif"}getSize(A){if(!this.match(A))return null;let Q=new DataView(A.buffer,A.byteOffset,A.byteLength),B=DGA(Q,0);if(!B)return null;let Y=B.end;while(B=DGA(Q,Y))if(B.type==="meta")Y=B.start+4;else if(B.type==="iprp"||B.type==="ipco")Y=B.start;else if(B.type==="ispe")return[Q.getUint32(B.start+4),Q.getUint32(B.start+8)];else if(B.type==="mdat")break;else Y=B.end;return null}getChannels(A){return 4}}class x3 extends oB{constructor(...A){super(...A);this.extensionName=LH,this.prereadTypes=[YA.TEXTURE]}static register(){U8.registerFormat("image/avif",new TGA)}preread(A){return(A.jsonDoc.json.textures||[]).forEach((B)=>{if(B.extensions&&B.extensions[LH])B.source=B.extensions[LH].source}),this}read(A){return this}write(A){let Q=A.jsonDoc;return this.document.getRoot().listTextures().forEach((B)=>{if(B.getMimeType()==="image/avif"){let Y=A.imageIndexMap.get(B);(Q.json.textures||[]).forEach((C)=>{if(C.source===Y)C.extensions=C.extensions||{},C.extensions[LH]={source:C.source},delete C.source})}}),this}}x3.EXTENSION_NAME=LH;function DGA(A,Q){if(A.byteLength<4+Q)return null;let B=A.getUint32(Q);if(A.byteLength=12&&A[8]===87&&A[9]===69&&A[10]===66&&A[11]===80}getSize(A){let Q=PQ.decodeText(A.slice(0,4)),B=PQ.decodeText(A.slice(8,12));if(Q!=="RIFF"||B!=="WEBP")return null;let Y=new DataView(A.buffer,A.byteOffset),J=12;while(J>6);return[U,$]}J+=8+X+X%2}return null}getChannels(A){return 4}}class f3 extends oB{constructor(...A){super(...A);this.extensionName=NH,this.prereadTypes=[YA.TEXTURE]}static register(){U8.registerFormat("image/webp",new SGA)}preread(A){return(A.jsonDoc.json.textures||[]).forEach((B)=>{if(B.extensions&&B.extensions[NH])B.source=B.extensions[NH].source}),this}read(A){return this}write(A){let Q=A.jsonDoc;return this.document.getRoot().listTextures().forEach((B)=>{if(B.getMimeType()==="image/webp"){let Y=A.imageIndexMap.get(B);(Q.json.textures||[]).forEach((C)=>{if(C.source===Y)C.extensions=C.extensions||{},C.extensions[NH]={source:C.source},delete C.source})}}),this}}f3.EXTENSION_NAME=NH;var OY,kGA,_GA;function JoQ(A,Q){let B=new OY.DecoderBuffer;try{if(B.Init(Q,Q.length),A.GetEncodedGeometryType(B)!==OY.TRIANGULAR_MESH)throw Error(`[${k0}] Unknown geometry type.`);let J=new OY.Mesh;if(!A.DecodeBufferToMesh(B,J).ok()||J.ptr===0)throw Error(`[${k0}] Decoding failure.`);return J}finally{OY.destroy(B)}}function CoQ(A,Q){let Y=Q.num_faces()*3,J,C;if(Q.num_points()<=65534){let X=Y*Uint16Array.BYTES_PER_ELEMENT;J=OY._malloc(X),A.GetTrianglesUInt16Array(Q,X,J),C=new Uint16Array(OY.HEAPU16.buffer,J,Y).slice()}else{let X=Y*Uint32Array.BYTES_PER_ELEMENT;J=OY._malloc(X),A.GetTrianglesUInt32Array(Q,X,J),C=new Uint32Array(OY.HEAPU32.buffer,J,Y).slice()}return OY._free(J),C}function XoQ(A,Q,B,Y){let J=_GA[Y.componentType],C=kGA[Y.componentType],X=B.num_components(),F=Q.num_points()*X,W=F*C.BYTES_PER_ELEMENT,Z=OY._malloc(W);A.GetAttributeDataArrayForAllPoints(Q,B,J,W,Z);let U=new C(OY.HEAPF32.buffer,Z,F).slice();return OY._free(Z),U}function GoQ(A){OY=A,kGA={[fA.ComponentType.FLOAT]:Float32Array,[fA.ComponentType.UNSIGNED_INT]:Uint32Array,[fA.ComponentType.UNSIGNED_SHORT]:Uint16Array,[fA.ComponentType.UNSIGNED_BYTE]:Uint8Array,[fA.ComponentType.SHORT]:Int16Array,[fA.ComponentType.BYTE]:Int8Array},_GA={[fA.ComponentType.FLOAT]:OY.DT_FLOAT32,[fA.ComponentType.UNSIGNED_INT]:OY.DT_UINT32,[fA.ComponentType.UNSIGNED_SHORT]:OY.DT_UINT16,[fA.ComponentType.UNSIGNED_BYTE]:OY.DT_UINT8,[fA.ComponentType.SHORT]:OY.DT_INT16,[fA.ComponentType.BYTE]:OY.DT_INT8}}var W5,zH;(function(A){A[A.EDGEBREAKER=1]="EDGEBREAKER",A[A.SEQUENTIAL=0]="SEQUENTIAL"})(zH||(zH={}));var U5;(function(A){A.POSITION="POSITION",A.NORMAL="NORMAL",A.COLOR="COLOR",A.TEX_COORD="TEX_COORD",A.GENERIC="GENERIC"})(U5||(U5={}));var vGA={[U5.POSITION]:14,[U5.NORMAL]:10,[U5.COLOR]:8,[U5.TEX_COORD]:12,[U5.GENERIC]:12},NGA={decodeSpeed:5,encodeSpeed:5,method:zH.EDGEBREAKER,quantizationBits:vGA,quantizationVolume:"mesh"};function FoQ(A){W5=A}function WoQ(A,Q=NGA){let B=jG({},NGA,Q);B.quantizationBits=jG({},vGA,Q.quantizationBits);let Y=new W5.MeshBuilder,J=new W5.Mesh,C=new W5.ExpertEncoder(J),X={},G=new W5.DracoInt8Array,F=A.listTargets().length>0,W=!1;for(let I of A.listSemantics()){let V=A.getAttribute(I);if(V.getSparse()){W=!0;continue}let H=ZoQ(I),D=$oQ(Y,V.getComponentType(),J,W5[H],V.getCount(),V.getElementSize(),V.getArray());if(D===-1)throw Error(`Error compressing "${I}" attribute.`);if(X[I]=D,B.quantizationVolume==="mesh"||I!=="POSITION")C.SetAttributeQuantization(D,B.quantizationBits[H]);else if(typeof B.quantizationVolume==="object"){let{quantizationVolume:L}=B,z=Math.max(L.max[0]-L.min[0],L.max[1]-L.min[1],L.max[2]-L.min[2]);C.SetAttributeExplicitQuantization(D,B.quantizationBits[H],V.getElementSize(),L.min,z)}else throw Error("Invalid quantization volume state.")}let Z=A.getIndices();if(!Z)throw new y3("Primitive must have indices.");if(Y.AddFacesToMesh(J,Z.getCount()/3,Z.getArray()),C.SetSpeedOptions(B.encodeSpeed,B.decodeSpeed),C.SetTrackEncodedProperties(!0),B.method===zH.SEQUENTIAL||F||W)C.SetEncodingMethod(W5.MESH_SEQUENTIAL_ENCODING);else C.SetEncodingMethod(W5.MESH_EDGEBREAKER_ENCODING);let U=C.EncodeToDracoBuffer(!(F||W),G);if(U<=0)throw new y3("Error applying Draco compression.");let $=new Uint8Array(U);for(let I=0;I65534&&fA.getComponentSize(U.componentType)<=2)U.componentType=fA.ComponentType.UNSIGNED_INT;else if(Z.numVertices>254&&fA.getComponentSize(U.componentType)<=1)U.componentType=fA.ComponentType.UNSIGNED_SHORT;for(let E of X.listSemantics()){let K=X.getAttribute(E);if(Z.attributeIDs[E]===void 0)continue;let I=A.createAccessorDef(K);I.count=Z.numVertices,A.accessorIndexMap.set(K,W.length),W.push(I)}let $=X.getAttribute("POSITION").getBuffer()||this.document.getRoot().listBuffers()[0];if(!A.otherBufferViews.has($))A.otherBufferViews.set($,[]);A.otherBufferViews.get($).push(Z.data)}return B.debug(`[${k0}] Compressed ${Y.size} primitives.`),A.extensionData[k0]={primitiveHashMap:Y,primitiveEncodingMap:J},this}write(A){let Q=A.extensionData[k0];for(let B of this.document.getRoot().listMeshes()){let Y=A.jsonDoc.json.meshes[A.meshIndexMap.get(B)];for(let J=0;JY!==k0),B.extensionsRequired=(B.extensionsRequired||[]).filter((Y)=>Y!==k0)}return this}}wH.EXTENSION_NAME=k0;wH.EncoderMethod=zH;function UoQ(A){let Q=A.getLogger(),B=new Set,Y=new Set,J=0,C=0;for(let U of A.getRoot().listMeshes())for(let $ of U.listPrimitives())if(!$.getIndices())Y.add($),J++;else if($.getMode()!==z0.Mode.TRIANGLES)Y.add($),C++;else B.add($);if(J>0)Q.warn(`[${k0}] Skipping Draco compression of ${J} non-indexed primitives.`);if(C>0)Q.warn(`[${k0}] Skipping Draco compression of ${C} non-TRIANGLES primitives.`);let X=A.getRoot().listAccessors(),G=new Map;for(let U=0;UE.propertyType));if($.size!==2||!$.has(YA.PRIMITIVE)||!$.has(YA.ROOT))throw Error(`[${k0}] Compressed accessors must only be used as indices or vertex attributes.`)}for(let U of Array.from(B)){let $=Z.get(U),E=U.getIndices();if(F.get(E)!==$||U.listAttributes().some((K)=>F.get(K)!==$))throw Error(`[${k0}] Draco primitives must share all, or no, accessors.`)}for(let U of Array.from(Y)){let $=U.getIndices();if(F.has($)||U.listAttributes().some((E)=>F.has(E)))throw Error(`[${k0}] Accessor cannot be shared by compressed and uncompressed primitives.`)}return Z}function LGA(A,Q){let B=[],Y=A.getIndices();B.push(Q.get(Y));for(let J of A.listAttributes())B.push(Q.get(J));return B.sort().join("|")}class _U extends aB{init(){this.extensionName=Z5,this.propertyType="Light",this.parentTypes=[YA.NODE]}getDefaults(){return Object.assign(super.getDefaults(),{color:[1,1,1],intensity:1,type:_U.Type.POINT,range:null,innerConeAngle:0,outerConeAngle:Math.PI/4})}getColor(){return this.get("color")}setColor(A){return this.set("color",A)}getIntensity(){return this.get("intensity")}setIntensity(A){return this.set("intensity",A)}getType(){return this.get("type")}setType(A){return this.set("type",A)}getRange(){return this.get("range")}setRange(A){return this.set("range",A)}getInnerConeAngle(){return this.get("innerConeAngle")}setInnerConeAngle(A){return this.set("innerConeAngle",A)}getOuterConeAngle(){return this.get("outerConeAngle")}setOuterConeAngle(A){return this.set("outerConeAngle",A)}}_U.EXTENSION_NAME=Z5;_U.Type={POINT:"point",SPOT:"spot",DIRECTIONAL:"directional"};class dh extends oB{constructor(...A){super(...A);this.extensionName=Z5}createLight(A=""){return new _U(this.document.getGraph(),A)}read(A){let Q=A.jsonDoc;if(!Q.json.extensions||!Q.json.extensions[Z5])return this;let J=(Q.json.extensions[Z5].lights||[]).map((C)=>{var X,G;let F=this.createLight().setName(C.name||"").setType(C.type);if(C.color!==void 0)F.setColor(C.color);if(C.intensity!==void 0)F.setIntensity(C.intensity);if(C.range!==void 0)F.setRange(C.range);if(((X=C.spot)==null?void 0:X.innerConeAngle)!==void 0)F.setInnerConeAngle(C.spot.innerConeAngle);if(((G=C.spot)==null?void 0:G.outerConeAngle)!==void 0)F.setOuterConeAngle(C.spot.outerConeAngle);return F});return Q.json.nodes.forEach((C,X)=>{if(!C.extensions||!C.extensions[Z5])return;let G=C.extensions[Z5];A.nodes[X].setExtension(Z5,J[G.light])}),this}write(A){let Q=A.jsonDoc;if(this.properties.size===0)return this;let B=[],Y=new Map;for(let J of this.properties){let C=J,X={type:C.getType()};if(!kQ.eq(C.getColor(),[1,1,1]))X.color=C.getColor();if(C.getIntensity()!==1)X.intensity=C.getIntensity();if(C.getRange()!=null)X.range=C.getRange();if(C.getName())X.name=C.getName();if(C.getType()===_U.Type.SPOT)X.spot={innerConeAngle:C.getInnerConeAngle(),outerConeAngle:C.getOuterConeAngle()};B.push(X),Y.set(C,B.length-1)}return this.document.getRoot().listNodes().forEach((J)=>{let C=J.getExtension(Z5);if(C){let X=A.nodeIndexMap.get(J),G=Q.json.nodes[X];G.extensions=G.extensions||{},G.extensions[Z5]={light:Y.get(C)}}}),Q.json.extensions=Q.json.extensions||{},Q.json.extensions[Z5]={lights:B},this}}dh.EXTENSION_NAME=Z5;var{R:EoQ,G:KoQ,B:VoQ}=j9;class ch extends aB{init(){this.extensionName=EG,this.propertyType="Anisotropy",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{anisotropyStrength:0,anisotropyRotation:0,anisotropyTexture:null,anisotropyTextureInfo:new gB(this.graph,"anisotropyTextureInfo")})}getAnisotropyStrength(){return this.get("anisotropyStrength")}setAnisotropyStrength(A){return this.set("anisotropyStrength",A)}getAnisotropyRotation(){return this.get("anisotropyRotation")}setAnisotropyRotation(A){return this.set("anisotropyRotation",A)}getAnisotropyTexture(){return this.getRef("anisotropyTexture")}getAnisotropyTextureInfo(){return this.getRef("anisotropyTexture")?this.getRef("anisotropyTextureInfo"):null}setAnisotropyTexture(A){return this.setRef("anisotropyTexture",A,{channels:EoQ|KoQ|VoQ})}}ch.EXTENSION_NAME=EG;class lh extends oB{constructor(...A){super(...A);this.extensionName=EG,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createAnisotropy(){return new ch(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[EG]){let X=this.createAnisotropy();A.materials[C].setExtension(EG,X);let G=J.extensions[EG];if(G.anisotropyStrength!==void 0)X.setAnisotropyStrength(G.anisotropyStrength);if(G.anisotropyRotation!==void 0)X.setAnisotropyRotation(G.anisotropyRotation);if(G.anisotropyTexture!==void 0){let F=G.anisotropyTexture,W=A.textures[Y[F.index].source];X.setAnisotropyTexture(W),A.setTextureInfo(X.getAnisotropyTextureInfo(),F)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(EG);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[EG]={};if(Y.getAnisotropyStrength()>0)X.anisotropyStrength=Y.getAnisotropyStrength();if(Y.getAnisotropyRotation()!==0)X.anisotropyRotation=Y.getAnisotropyRotation();if(Y.getAnisotropyTexture()){let G=Y.getAnisotropyTexture(),F=Y.getAnisotropyTextureInfo();X.anisotropyTexture=A.createTextureInfoDef(G,F)}}}),this}}lh.EXTENSION_NAME=EG;var{R:qGA,G:MGA,B:IoQ}=j9;class ph extends aB{init(){this.extensionName=KG,this.propertyType="Clearcoat",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{clearcoatFactor:0,clearcoatTexture:null,clearcoatTextureInfo:new gB(this.graph,"clearcoatTextureInfo"),clearcoatRoughnessFactor:0,clearcoatRoughnessTexture:null,clearcoatRoughnessTextureInfo:new gB(this.graph,"clearcoatRoughnessTextureInfo"),clearcoatNormalScale:1,clearcoatNormalTexture:null,clearcoatNormalTextureInfo:new gB(this.graph,"clearcoatNormalTextureInfo")})}getClearcoatFactor(){return this.get("clearcoatFactor")}setClearcoatFactor(A){return this.set("clearcoatFactor",A)}getClearcoatTexture(){return this.getRef("clearcoatTexture")}getClearcoatTextureInfo(){return this.getRef("clearcoatTexture")?this.getRef("clearcoatTextureInfo"):null}setClearcoatTexture(A){return this.setRef("clearcoatTexture",A,{channels:qGA})}getClearcoatRoughnessFactor(){return this.get("clearcoatRoughnessFactor")}setClearcoatRoughnessFactor(A){return this.set("clearcoatRoughnessFactor",A)}getClearcoatRoughnessTexture(){return this.getRef("clearcoatRoughnessTexture")}getClearcoatRoughnessTextureInfo(){return this.getRef("clearcoatRoughnessTexture")?this.getRef("clearcoatRoughnessTextureInfo"):null}setClearcoatRoughnessTexture(A){return this.setRef("clearcoatRoughnessTexture",A,{channels:MGA})}getClearcoatNormalScale(){return this.get("clearcoatNormalScale")}setClearcoatNormalScale(A){return this.set("clearcoatNormalScale",A)}getClearcoatNormalTexture(){return this.getRef("clearcoatNormalTexture")}getClearcoatNormalTextureInfo(){return this.getRef("clearcoatNormalTexture")?this.getRef("clearcoatNormalTextureInfo"):null}setClearcoatNormalTexture(A){return this.setRef("clearcoatNormalTexture",A,{channels:qGA|MGA|IoQ})}}ph.EXTENSION_NAME=KG;class ih extends oB{constructor(...A){super(...A);this.extensionName=KG,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createClearcoat(){return new ph(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[KG]){let X=this.createClearcoat();A.materials[C].setExtension(KG,X);let G=J.extensions[KG];if(G.clearcoatFactor!==void 0)X.setClearcoatFactor(G.clearcoatFactor);if(G.clearcoatRoughnessFactor!==void 0)X.setClearcoatRoughnessFactor(G.clearcoatRoughnessFactor);if(G.clearcoatTexture!==void 0){let F=G.clearcoatTexture,W=A.textures[Y[F.index].source];X.setClearcoatTexture(W),A.setTextureInfo(X.getClearcoatTextureInfo(),F)}if(G.clearcoatRoughnessTexture!==void 0){let F=G.clearcoatRoughnessTexture,W=A.textures[Y[F.index].source];X.setClearcoatRoughnessTexture(W),A.setTextureInfo(X.getClearcoatRoughnessTextureInfo(),F)}if(G.clearcoatNormalTexture!==void 0){let F=G.clearcoatNormalTexture,W=A.textures[Y[F.index].source];if(X.setClearcoatNormalTexture(W),A.setTextureInfo(X.getClearcoatNormalTextureInfo(),F),F.scale!==void 0)X.setClearcoatNormalScale(F.scale)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(KG);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[KG]={clearcoatFactor:Y.getClearcoatFactor(),clearcoatRoughnessFactor:Y.getClearcoatRoughnessFactor()};if(Y.getClearcoatTexture()){let G=Y.getClearcoatTexture(),F=Y.getClearcoatTextureInfo();X.clearcoatTexture=A.createTextureInfoDef(G,F)}if(Y.getClearcoatRoughnessTexture()){let G=Y.getClearcoatRoughnessTexture(),F=Y.getClearcoatRoughnessTextureInfo();X.clearcoatRoughnessTexture=A.createTextureInfoDef(G,F)}if(Y.getClearcoatNormalTexture()){let G=Y.getClearcoatNormalTexture(),F=Y.getClearcoatNormalTextureInfo();if(X.clearcoatNormalTexture=A.createTextureInfoDef(G,F),Y.getClearcoatNormalScale()!==1)X.clearcoatNormalTexture.scale=Y.getClearcoatNormalScale()}}}),this}}ih.EXTENSION_NAME=KG;var{R:HoQ,G:DoQ,B:NoQ,A:LoQ}=j9;class nh extends aB{init(){this.extensionName=VG,this.propertyType="DiffuseTransmission",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{diffuseTransmissionFactor:0,diffuseTransmissionTexture:null,diffuseTransmissionTextureInfo:new gB(this.graph,"diffuseTransmissionTextureInfo"),diffuseTransmissionColorFactor:[1,1,1],diffuseTransmissionColorTexture:null,diffuseTransmissionColorTextureInfo:new gB(this.graph,"diffuseTransmissionColorTextureInfo")})}getDiffuseTransmissionFactor(){return this.get("diffuseTransmissionFactor")}setDiffuseTransmissionFactor(A){return this.set("diffuseTransmissionFactor",A)}getDiffuseTransmissionTexture(){return this.getRef("diffuseTransmissionTexture")}getDiffuseTransmissionTextureInfo(){return this.getRef("diffuseTransmissionTexture")?this.getRef("diffuseTransmissionTextureInfo"):null}setDiffuseTransmissionTexture(A){return this.setRef("diffuseTransmissionTexture",A,{channels:LoQ})}getDiffuseTransmissionColorFactor(){return this.get("diffuseTransmissionColorFactor")}setDiffuseTransmissionColorFactor(A){return this.set("diffuseTransmissionColorFactor",A)}getDiffuseTransmissionColorTexture(){return this.getRef("diffuseTransmissionColorTexture")}getDiffuseTransmissionColorTextureInfo(){return this.getRef("diffuseTransmissionColorTexture")?this.getRef("diffuseTransmissionColorTextureInfo"):null}setDiffuseTransmissionColorTexture(A){return this.setRef("diffuseTransmissionColorTexture",A,{channels:HoQ|DoQ|NoQ})}}nh.EXTENSION_NAME=VG;class sh extends oB{constructor(...A){super(...A);this.extensionName=VG}createDiffuseTransmission(){return new nh(this.document.getGraph())}read(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[VG]){let X=this.createDiffuseTransmission();A.materials[C].setExtension(VG,X);let G=J.extensions[VG];if(G.diffuseTransmissionFactor!==void 0)X.setDiffuseTransmissionFactor(G.diffuseTransmissionFactor);if(G.diffuseTransmissionColorFactor!==void 0)X.setDiffuseTransmissionColorFactor(G.diffuseTransmissionColorFactor);if(G.diffuseTransmissionTexture!==void 0){let F=G.diffuseTransmissionTexture,W=A.textures[Y[F.index].source];X.setDiffuseTransmissionTexture(W),A.setTextureInfo(X.getDiffuseTransmissionTextureInfo(),F)}if(G.diffuseTransmissionColorTexture!==void 0){let F=G.diffuseTransmissionColorTexture,W=A.textures[Y[F.index].source];X.setDiffuseTransmissionColorTexture(W),A.setTextureInfo(X.getDiffuseTransmissionColorTextureInfo(),F)}}}),this}write(A){let Q=A.jsonDoc;for(let B of this.document.getRoot().listMaterials()){let Y=B.getExtension(VG);if(!Y)continue;let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[VG]={diffuseTransmissionFactor:Y.getDiffuseTransmissionFactor(),diffuseTransmissionColorFactor:Y.getDiffuseTransmissionColorFactor()};if(Y.getDiffuseTransmissionTexture()){let G=Y.getDiffuseTransmissionTexture(),F=Y.getDiffuseTransmissionTextureInfo();X.diffuseTransmissionTexture=A.createTextureInfoDef(G,F)}if(Y.getDiffuseTransmissionColorTexture()){let G=Y.getDiffuseTransmissionColorTexture(),F=Y.getDiffuseTransmissionColorTextureInfo();X.diffuseTransmissionColorTexture=A.createTextureInfoDef(G,F)}}return this}}sh.EXTENSION_NAME=VG;class rh extends aB{init(){this.extensionName=IG,this.propertyType="Dispersion",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{dispersion:0})}getDispersion(){return this.get("dispersion")}setDispersion(A){return this.set("dispersion",A)}}rh.EXTENSION_NAME=IG;class ah extends oB{constructor(...A){super(...A);this.extensionName=IG,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createDispersion(){return new rh(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){return(A.jsonDoc.json.materials||[]).forEach((Y,J)=>{if(Y.extensions&&Y.extensions[IG]){let C=this.createDispersion();A.materials[J].setExtension(IG,C);let X=Y.extensions[IG];if(X.dispersion!==void 0)C.setDispersion(X.dispersion)}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(IG);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{},C.extensions[IG]={dispersion:Y.getDispersion()}}}),this}}ah.EXTENSION_NAME=IG;class oh extends aB{init(){this.extensionName=HG,this.propertyType="EmissiveStrength",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{emissiveStrength:1})}getEmissiveStrength(){return this.get("emissiveStrength")}setEmissiveStrength(A){return this.set("emissiveStrength",A)}}oh.EXTENSION_NAME=HG;class jH extends oB{constructor(...A){super(...A);this.extensionName=HG,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createEmissiveStrength(){return new oh(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){return(A.jsonDoc.json.materials||[]).forEach((Y,J)=>{if(Y.extensions&&Y.extensions[HG]){let C=this.createEmissiveStrength();A.materials[J].setExtension(HG,C);let X=Y.extensions[HG];if(X.emissiveStrength!==void 0)C.setEmissiveStrength(X.emissiveStrength)}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(HG);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{},C.extensions[HG]={emissiveStrength:Y.getEmissiveStrength()}}}),this}}jH.EXTENSION_NAME=HG;class th extends aB{init(){this.extensionName=DG,this.propertyType="IOR",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{ior:1.5})}getIOR(){return this.get("ior")}setIOR(A){return this.set("ior",A)}}th.EXTENSION_NAME=DG;class b3 extends oB{constructor(...A){super(...A);this.extensionName=DG,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createIOR(){return new th(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){return(A.jsonDoc.json.materials||[]).forEach((Y,J)=>{if(Y.extensions&&Y.extensions[DG]){let C=this.createIOR();A.materials[J].setExtension(DG,C);let X=Y.extensions[DG];if(X.ior!==void 0)C.setIOR(X.ior)}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(DG);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{},C.extensions[DG]={ior:Y.getIOR()}}}),this}}b3.EXTENSION_NAME=DG;var{R:qoQ,G:MoQ}=j9;class eh extends aB{init(){this.extensionName=NG,this.propertyType="Iridescence",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{iridescenceFactor:0,iridescenceTexture:null,iridescenceTextureInfo:new gB(this.graph,"iridescenceTextureInfo"),iridescenceIOR:1.3,iridescenceThicknessMinimum:100,iridescenceThicknessMaximum:400,iridescenceThicknessTexture:null,iridescenceThicknessTextureInfo:new gB(this.graph,"iridescenceThicknessTextureInfo")})}getIridescenceFactor(){return this.get("iridescenceFactor")}setIridescenceFactor(A){return this.set("iridescenceFactor",A)}getIridescenceTexture(){return this.getRef("iridescenceTexture")}getIridescenceTextureInfo(){return this.getRef("iridescenceTexture")?this.getRef("iridescenceTextureInfo"):null}setIridescenceTexture(A){return this.setRef("iridescenceTexture",A,{channels:qoQ})}getIridescenceIOR(){return this.get("iridescenceIOR")}setIridescenceIOR(A){return this.set("iridescenceIOR",A)}getIridescenceThicknessMinimum(){return this.get("iridescenceThicknessMinimum")}setIridescenceThicknessMinimum(A){return this.set("iridescenceThicknessMinimum",A)}getIridescenceThicknessMaximum(){return this.get("iridescenceThicknessMaximum")}setIridescenceThicknessMaximum(A){return this.set("iridescenceThicknessMaximum",A)}getIridescenceThicknessTexture(){return this.getRef("iridescenceThicknessTexture")}getIridescenceThicknessTextureInfo(){return this.getRef("iridescenceThicknessTexture")?this.getRef("iridescenceThicknessTextureInfo"):null}setIridescenceThicknessTexture(A){return this.setRef("iridescenceThicknessTexture",A,{channels:MoQ})}}eh.EXTENSION_NAME=NG;class Ax extends oB{constructor(...A){super(...A);this.extensionName=NG,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createIridescence(){return new eh(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[NG]){let X=this.createIridescence();A.materials[C].setExtension(NG,X);let G=J.extensions[NG];if(G.iridescenceFactor!==void 0)X.setIridescenceFactor(G.iridescenceFactor);if(G.iridescenceIor!==void 0)X.setIridescenceIOR(G.iridescenceIor);if(G.iridescenceThicknessMinimum!==void 0)X.setIridescenceThicknessMinimum(G.iridescenceThicknessMinimum);if(G.iridescenceThicknessMaximum!==void 0)X.setIridescenceThicknessMaximum(G.iridescenceThicknessMaximum);if(G.iridescenceTexture!==void 0){let F=G.iridescenceTexture,W=A.textures[Y[F.index].source];X.setIridescenceTexture(W),A.setTextureInfo(X.getIridescenceTextureInfo(),F)}if(G.iridescenceThicknessTexture!==void 0){let F=G.iridescenceThicknessTexture,W=A.textures[Y[F.index].source];X.setIridescenceThicknessTexture(W),A.setTextureInfo(X.getIridescenceThicknessTextureInfo(),F)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(NG);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[NG]={};if(Y.getIridescenceFactor()>0)X.iridescenceFactor=Y.getIridescenceFactor();if(Y.getIridescenceIOR()!==1.3)X.iridescenceIor=Y.getIridescenceIOR();if(Y.getIridescenceThicknessMinimum()!==100)X.iridescenceThicknessMinimum=Y.getIridescenceThicknessMinimum();if(Y.getIridescenceThicknessMaximum()!==400)X.iridescenceThicknessMaximum=Y.getIridescenceThicknessMaximum();if(Y.getIridescenceTexture()){let G=Y.getIridescenceTexture(),F=Y.getIridescenceTextureInfo();X.iridescenceTexture=A.createTextureInfoDef(G,F)}if(Y.getIridescenceThicknessTexture()){let G=Y.getIridescenceThicknessTexture(),F=Y.getIridescenceThicknessTextureInfo();X.iridescenceThicknessTexture=A.createTextureInfoDef(G,F)}}}),this}}Ax.EXTENSION_NAME=NG;var{R:zGA,G:RGA,B:wGA,A:jGA}=j9;class Qx extends aB{init(){this.extensionName=LG,this.propertyType="PBRSpecularGlossiness",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{diffuseFactor:[1,1,1,1],diffuseTexture:null,diffuseTextureInfo:new gB(this.graph,"diffuseTextureInfo"),specularFactor:[1,1,1],glossinessFactor:1,specularGlossinessTexture:null,specularGlossinessTextureInfo:new gB(this.graph,"specularGlossinessTextureInfo")})}getDiffuseFactor(){return this.get("diffuseFactor")}setDiffuseFactor(A){return this.set("diffuseFactor",A)}getDiffuseTexture(){return this.getRef("diffuseTexture")}getDiffuseTextureInfo(){return this.getRef("diffuseTexture")?this.getRef("diffuseTextureInfo"):null}setDiffuseTexture(A){return this.setRef("diffuseTexture",A,{channels:zGA|RGA|wGA|jGA,isColor:!0})}getSpecularFactor(){return this.get("specularFactor")}setSpecularFactor(A){return this.set("specularFactor",A)}getGlossinessFactor(){return this.get("glossinessFactor")}setGlossinessFactor(A){return this.set("glossinessFactor",A)}getSpecularGlossinessTexture(){return this.getRef("specularGlossinessTexture")}getSpecularGlossinessTextureInfo(){return this.getRef("specularGlossinessTexture")?this.getRef("specularGlossinessTextureInfo"):null}setSpecularGlossinessTexture(A){return this.setRef("specularGlossinessTexture",A,{channels:zGA|RGA|wGA|jGA})}}Qx.EXTENSION_NAME=LG;class m3 extends oB{constructor(...A){super(...A);this.extensionName=LG,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createPBRSpecularGlossiness(){return new Qx(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[LG]){let X=this.createPBRSpecularGlossiness();A.materials[C].setExtension(LG,X);let G=J.extensions[LG];if(G.diffuseFactor!==void 0)X.setDiffuseFactor(G.diffuseFactor);if(G.specularFactor!==void 0)X.setSpecularFactor(G.specularFactor);if(G.glossinessFactor!==void 0)X.setGlossinessFactor(G.glossinessFactor);if(G.diffuseTexture!==void 0){let F=G.diffuseTexture,W=A.textures[Y[F.index].source];X.setDiffuseTexture(W),A.setTextureInfo(X.getDiffuseTextureInfo(),F)}if(G.specularGlossinessTexture!==void 0){let F=G.specularGlossinessTexture,W=A.textures[Y[F.index].source];X.setSpecularGlossinessTexture(W),A.setTextureInfo(X.getSpecularGlossinessTextureInfo(),F)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(LG);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[LG]={diffuseFactor:Y.getDiffuseFactor(),specularFactor:Y.getSpecularFactor(),glossinessFactor:Y.getGlossinessFactor()};if(Y.getDiffuseTexture()){let G=Y.getDiffuseTexture(),F=Y.getDiffuseTextureInfo();X.diffuseTexture=A.createTextureInfoDef(G,F)}if(Y.getSpecularGlossinessTexture()){let G=Y.getSpecularGlossinessTexture(),F=Y.getSpecularGlossinessTextureInfo();X.specularGlossinessTexture=A.createTextureInfoDef(G,F)}}}),this}}m3.EXTENSION_NAME=LG;var{R:zoQ,G:RoQ,B:woQ,A:joQ}=j9;class Bx extends aB{init(){this.extensionName=qG,this.propertyType="Sheen",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{sheenColorFactor:[0,0,0],sheenColorTexture:null,sheenColorTextureInfo:new gB(this.graph,"sheenColorTextureInfo"),sheenRoughnessFactor:0,sheenRoughnessTexture:null,sheenRoughnessTextureInfo:new gB(this.graph,"sheenRoughnessTextureInfo")})}getSheenColorFactor(){return this.get("sheenColorFactor")}setSheenColorFactor(A){return this.set("sheenColorFactor",A)}getSheenColorTexture(){return this.getRef("sheenColorTexture")}getSheenColorTextureInfo(){return this.getRef("sheenColorTexture")?this.getRef("sheenColorTextureInfo"):null}setSheenColorTexture(A){return this.setRef("sheenColorTexture",A,{channels:zoQ|RoQ|woQ,isColor:!0})}getSheenRoughnessFactor(){return this.get("sheenRoughnessFactor")}setSheenRoughnessFactor(A){return this.set("sheenRoughnessFactor",A)}getSheenRoughnessTexture(){return this.getRef("sheenRoughnessTexture")}getSheenRoughnessTextureInfo(){return this.getRef("sheenRoughnessTexture")?this.getRef("sheenRoughnessTextureInfo"):null}setSheenRoughnessTexture(A){return this.setRef("sheenRoughnessTexture",A,{channels:joQ})}}Bx.EXTENSION_NAME=qG;class Yx extends oB{constructor(...A){super(...A);this.extensionName=qG,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createSheen(){return new Bx(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[qG]){let X=this.createSheen();A.materials[C].setExtension(qG,X);let G=J.extensions[qG];if(G.sheenColorFactor!==void 0)X.setSheenColorFactor(G.sheenColorFactor);if(G.sheenRoughnessFactor!==void 0)X.setSheenRoughnessFactor(G.sheenRoughnessFactor);if(G.sheenColorTexture!==void 0){let F=G.sheenColorTexture,W=A.textures[Y[F.index].source];X.setSheenColorTexture(W),A.setTextureInfo(X.getSheenColorTextureInfo(),F)}if(G.sheenRoughnessTexture!==void 0){let F=G.sheenRoughnessTexture,W=A.textures[Y[F.index].source];X.setSheenRoughnessTexture(W),A.setTextureInfo(X.getSheenRoughnessTextureInfo(),F)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(qG);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[qG]={sheenColorFactor:Y.getSheenColorFactor(),sheenRoughnessFactor:Y.getSheenRoughnessFactor()};if(Y.getSheenColorTexture()){let G=Y.getSheenColorTexture(),F=Y.getSheenColorTextureInfo();X.sheenColorTexture=A.createTextureInfoDef(G,F)}if(Y.getSheenRoughnessTexture()){let G=Y.getSheenRoughnessTexture(),F=Y.getSheenRoughnessTextureInfo();X.sheenRoughnessTexture=A.createTextureInfoDef(G,F)}}}),this}}Yx.EXTENSION_NAME=qG;var{R:OoQ,G:PoQ,B:ToQ,A:SoQ}=j9;class Jx extends aB{init(){this.extensionName=MG,this.propertyType="Specular",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{specularFactor:1,specularTexture:null,specularTextureInfo:new gB(this.graph,"specularTextureInfo"),specularColorFactor:[1,1,1],specularColorTexture:null,specularColorTextureInfo:new gB(this.graph,"specularColorTextureInfo")})}getSpecularFactor(){return this.get("specularFactor")}setSpecularFactor(A){return this.set("specularFactor",A)}getSpecularColorFactor(){return this.get("specularColorFactor")}setSpecularColorFactor(A){return this.set("specularColorFactor",A)}getSpecularTexture(){return this.getRef("specularTexture")}getSpecularTextureInfo(){return this.getRef("specularTexture")?this.getRef("specularTextureInfo"):null}setSpecularTexture(A){return this.setRef("specularTexture",A,{channels:SoQ})}getSpecularColorTexture(){return this.getRef("specularColorTexture")}getSpecularColorTextureInfo(){return this.getRef("specularColorTexture")?this.getRef("specularColorTextureInfo"):null}setSpecularColorTexture(A){return this.setRef("specularColorTexture",A,{channels:OoQ|PoQ|ToQ,isColor:!0})}}Jx.EXTENSION_NAME=MG;class u3 extends oB{constructor(...A){super(...A);this.extensionName=MG,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createSpecular(){return new Jx(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[MG]){let X=this.createSpecular();A.materials[C].setExtension(MG,X);let G=J.extensions[MG];if(G.specularFactor!==void 0)X.setSpecularFactor(G.specularFactor);if(G.specularColorFactor!==void 0)X.setSpecularColorFactor(G.specularColorFactor);if(G.specularTexture!==void 0){let F=G.specularTexture,W=A.textures[Y[F.index].source];X.setSpecularTexture(W),A.setTextureInfo(X.getSpecularTextureInfo(),F)}if(G.specularColorTexture!==void 0){let F=G.specularColorTexture,W=A.textures[Y[F.index].source];X.setSpecularColorTexture(W),A.setTextureInfo(X.getSpecularColorTextureInfo(),F)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(MG);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[MG]={};if(Y.getSpecularFactor()!==1)X.specularFactor=Y.getSpecularFactor();if(!kQ.eq(Y.getSpecularColorFactor(),[1,1,1]))X.specularColorFactor=Y.getSpecularColorFactor();if(Y.getSpecularTexture()){let G=Y.getSpecularTexture(),F=Y.getSpecularTextureInfo();X.specularTexture=A.createTextureInfoDef(G,F)}if(Y.getSpecularColorTexture()){let G=Y.getSpecularColorTexture(),F=Y.getSpecularColorTextureInfo();X.specularColorTexture=A.createTextureInfoDef(G,F)}}}),this}}u3.EXTENSION_NAME=MG;var{R:koQ}=j9;class Cx extends aB{init(){this.extensionName=zG,this.propertyType="Transmission",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{transmissionFactor:0,transmissionTexture:null,transmissionTextureInfo:new gB(this.graph,"transmissionTextureInfo")})}getTransmissionFactor(){return this.get("transmissionFactor")}setTransmissionFactor(A){return this.set("transmissionFactor",A)}getTransmissionTexture(){return this.getRef("transmissionTexture")}getTransmissionTextureInfo(){return this.getRef("transmissionTexture")?this.getRef("transmissionTextureInfo"):null}setTransmissionTexture(A){return this.setRef("transmissionTexture",A,{channels:koQ})}}Cx.EXTENSION_NAME=zG;class Xx extends oB{constructor(...A){super(...A);this.extensionName=zG,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createTransmission(){return new Cx(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[zG]){let X=this.createTransmission();A.materials[C].setExtension(zG,X);let G=J.extensions[zG];if(G.transmissionFactor!==void 0)X.setTransmissionFactor(G.transmissionFactor);if(G.transmissionTexture!==void 0){let F=G.transmissionTexture,W=A.textures[Y[F.index].source];X.setTransmissionTexture(W),A.setTextureInfo(X.getTransmissionTextureInfo(),F)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(zG);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[zG]={transmissionFactor:Y.getTransmissionFactor()};if(Y.getTransmissionTexture()){let G=Y.getTransmissionTexture(),F=Y.getTransmissionTextureInfo();X.transmissionTexture=A.createTextureInfoDef(G,F)}}}),this}}Xx.EXTENSION_NAME=zG;class Gx extends aB{init(){this.extensionName=L7,this.propertyType="Unlit",this.parentTypes=[YA.MATERIAL]}}Gx.EXTENSION_NAME=L7;class d3 extends oB{constructor(...A){super(...A);this.extensionName=L7,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createUnlit(){return new Gx(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){return(A.jsonDoc.json.materials||[]).forEach((B,Y)=>{if(B.extensions&&B.extensions[L7])A.materials[Y].setExtension(L7,this.createUnlit())}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{if(B.getExtension(L7)){let Y=A.materialIndexMap.get(B),J=Q.json.materials[Y];J.extensions=J.extensions||{},J.extensions[L7]={}}}),this}}d3.EXTENSION_NAME=L7;class Fx extends aB{init(){this.extensionName=DJ,this.propertyType="Mapping",this.parentTypes=["MappingList"]}getDefaults(){return Object.assign(super.getDefaults(),{material:null,variants:new xB})}getMaterial(){return this.getRef("material")}setMaterial(A){return this.setRef("material",A)}addVariant(A){return this.addRef("variants",A)}removeVariant(A){return this.removeRef("variants",A)}listVariants(){return this.listRefs("variants")}}Fx.EXTENSION_NAME=DJ;class Wx extends aB{init(){this.extensionName=DJ,this.propertyType="MappingList",this.parentTypes=[YA.PRIMITIVE]}getDefaults(){return Object.assign(super.getDefaults(),{mappings:new xB})}addMapping(A){return this.addRef("mappings",A)}removeMapping(A){return this.removeRef("mappings",A)}listMappings(){return this.listRefs("mappings")}}Wx.EXTENSION_NAME=DJ;class g3 extends aB{init(){this.extensionName=DJ,this.propertyType="Variant",this.parentTypes=["MappingList"]}}g3.EXTENSION_NAME=DJ;class Zx extends oB{constructor(...A){super(...A);this.extensionName=DJ}createMappingList(){return new Wx(this.document.getGraph())}createVariant(A=""){return new g3(this.document.getGraph(),A)}createMapping(){return new Fx(this.document.getGraph())}listVariants(){return Array.from(this.properties).filter((A)=>A instanceof g3)}read(A){let Q=A.jsonDoc;if(!Q.json.extensions||!Q.json.extensions[DJ])return this;let J=(Q.json.extensions[DJ].variants||[]).map((X)=>this.createVariant().setName(X.name||""));return(Q.json.meshes||[]).forEach((X,G)=>{let F=A.meshes[G];(X.primitives||[]).forEach((Z,U)=>{if(!Z.extensions||!Z.extensions[DJ])return;let $=this.createMappingList(),E=Z.extensions[DJ];for(let K of E.mappings){let I=this.createMapping();if(K.material!==void 0)I.setMaterial(A.materials[K.material]);for(let V of K.variants||[])I.addVariant(J[V]);$.addMapping(I)}F.listPrimitives()[U].setExtension(DJ,$)})}),this}write(A){let Q=A.jsonDoc,B=this.listVariants();if(!B.length)return this;let Y=[],J=new Map;for(let C of B)J.set(C,Y.length),Y.push(A.createPropertyDef(C));for(let C of this.document.getRoot().listMeshes()){let X=A.meshIndexMap.get(C);C.listPrimitives().forEach((G,F)=>{let W=G.getExtension(DJ);if(!W)return;let Z=A.jsonDoc.json.meshes[X].primitives[F],U=W.listMappings().map(($)=>{let E=A.createPropertyDef($),K=$.getMaterial();if(K)E.material=A.materialIndexMap.get(K);return E.variants=$.listVariants().map((I)=>J.get(I)),E});Z.extensions=Z.extensions||{},Z.extensions[DJ]={mappings:U}})}return Q.json.extensions=Q.json.extensions||{},Q.json.extensions[DJ]={variants:Y},this}}Zx.EXTENSION_NAME=DJ;var{G:_oQ}=j9;class $x extends aB{init(){this.extensionName=RG,this.propertyType="Volume",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{thicknessFactor:0,thicknessTexture:null,thicknessTextureInfo:new gB(this.graph,"thicknessTexture"),attenuationDistance:1/0,attenuationColor:[1,1,1]})}getThicknessFactor(){return this.get("thicknessFactor")}setThicknessFactor(A){return this.set("thicknessFactor",A)}getThicknessTexture(){return this.getRef("thicknessTexture")}getThicknessTextureInfo(){return this.getRef("thicknessTexture")?this.getRef("thicknessTextureInfo"):null}setThicknessTexture(A){return this.setRef("thicknessTexture",A,{channels:_oQ})}getAttenuationDistance(){return this.get("attenuationDistance")}setAttenuationDistance(A){return this.set("attenuationDistance",A)}getAttenuationColor(){return this.get("attenuationColor")}setAttenuationColor(A){return this.set("attenuationColor",A)}}$x.EXTENSION_NAME=RG;class Ux extends oB{constructor(...A){super(...A);this.extensionName=RG,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createVolume(){return new $x(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[RG]){let X=this.createVolume();A.materials[C].setExtension(RG,X);let G=J.extensions[RG];if(G.thicknessFactor!==void 0)X.setThicknessFactor(G.thicknessFactor);if(G.attenuationDistance!==void 0)X.setAttenuationDistance(G.attenuationDistance);if(G.attenuationColor!==void 0)X.setAttenuationColor(G.attenuationColor);if(G.thicknessTexture!==void 0){let F=G.thicknessTexture,W=A.textures[Y[F.index].source];X.setThicknessTexture(W),A.setTextureInfo(X.getThicknessTextureInfo(),F)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(RG);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[RG]={};if(Y.getThicknessFactor()>0)X.thicknessFactor=Y.getThicknessFactor();if(Number.isFinite(Y.getAttenuationDistance()))X.attenuationDistance=Y.getAttenuationDistance();if(!kQ.eq(Y.getAttenuationColor(),[1,1,1]))X.attenuationColor=Y.getAttenuationColor();if(Y.getThicknessTexture()){let G=Y.getThicknessTexture(),F=Y.getThicknessTextureInfo();X.thicknessTexture=A.createTextureInfoDef(G,F)}}}),this}}Ux.EXTENSION_NAME=RG;class OH extends oB{constructor(...A){super(...A);this.extensionName=OGA}read(A){return this}write(A){return this}}OH.EXTENSION_NAME=OGA;class yGA{match(A){return A[0]===171&&A[1]===75&&A[2]===84&&A[3]===88&&A[4]===32&&A[5]===50&&A[6]===48&&A[7]===187&&A[8]===13&&A[9]===10&&A[10]===26&&A[11]===10}getSize(A){let Q=v3(A);return[Q.pixelWidth,Q.pixelHeight]}getChannels(A){let B=v3(A).dataFormatDescriptor[0];if(B.colorModel===EGA)return B.samples.length===2&&(B.samples[1].channelType&15)===15?4:3;else if(B.colorModel===KGA)return(B.samples[0].channelType&15)===3?4:3;throw Error(`Unexpected KTX2 colorModel, "${B.colorModel}".`)}getVRAMByteLength(A){let Q=v3(A),B=this.getChannels(A)>3,Y=0;for(let J=0;J{if(Q.extensions&&Q.extensions[qH]){let B=Q.extensions[qH];Q.source=B.source}}),this}read(A){return this}write(A){let Q=A.jsonDoc;return this.document.getRoot().listTextures().forEach((B)=>{if(B.getMimeType()==="image/ktx2"){let Y=A.imageIndexMap.get(B);Q.json.textures.forEach((J)=>{if(J.source===Y)J.extensions=J.extensions||{},J.extensions[qH]={source:J.source},delete J.source})}}),this}}PH.EXTENSION_NAME=qH;class Ex extends aB{init(){this.extensionName=wG,this.propertyType="Transform",this.parentTypes=[YA.TEXTURE_INFO]}getDefaults(){return Object.assign(super.getDefaults(),{offset:[0,0],rotation:0,scale:[1,1],texCoord:null})}getOffset(){return this.get("offset")}setOffset(A){return this.set("offset",A)}getRotation(){return this.get("rotation")}setRotation(A){return this.set("rotation",A)}getScale(){return this.get("scale")}setScale(A){return this.set("scale",A)}getTexCoord(){return this.get("texCoord")}setTexCoord(A){return this.set("texCoord",A)}}Ex.EXTENSION_NAME=wG;class Kx extends oB{constructor(...A){super(...A);this.extensionName=wG}createTransform(){return new Ex(this.document.getGraph())}read(A){for(let[Q,B]of Array.from(A.textureInfos.entries())){if(!B.extensions||!B.extensions[wG])continue;let Y=this.createTransform(),J=B.extensions[wG];if(J.offset!==void 0)Y.setOffset(J.offset);if(J.rotation!==void 0)Y.setRotation(J.rotation);if(J.scale!==void 0)Y.setScale(J.scale);if(J.texCoord!==void 0)Y.setTexCoord(J.texCoord);Q.setExtension(wG,Y)}return this}write(A){let Q=Array.from(A.textureInfoDefMap.entries());for(let[B,Y]of Q){let J=B.getExtension(wG);if(!J)continue;Y.extensions=Y.extensions||{};let C={},X=kQ.eq;if(!X(J.getOffset(),[0,0]))C.offset=J.getOffset();if(J.getRotation()!==0)C.rotation=J.getRotation();if(!X(J.getScale(),[1,1]))C.scale=J.getScale();if(J.getTexCoord()!=null)C.texCoord=J.getTexCoord();Y.extensions[wG]=C}return this}}Kx.EXTENSION_NAME=wG;var voQ=[YA.ROOT,YA.SCENE,YA.NODE,YA.MESH,YA.MATERIAL,YA.TEXTURE,YA.ANIMATION];class Vx extends aB{init(){this.extensionName=$5,this.propertyType="Packet",this.parentTypes=voQ}getDefaults(){return Object.assign(super.getDefaults(),{context:{},properties:{}})}getContext(){return this.get("context")}setContext(A){return this.set("context",jG({},A))}listProperties(){return Object.keys(this.get("properties"))}getProperty(A){let Q=this.get("properties");return A in Q?Q[A]:null}setProperty(A,Q){this._assertContext(A);let B=jG({},this.get("properties"));if(Q)B[A]=Q;else delete B[A];return this.set("properties",B)}toJSONLD(){let A=fh(this.get("context")),Q=fh(this.get("properties"));return jG({"@context":A},Q)}fromJSONLD(A){A=fh(A);let Q=A["@context"];if(Q)this.set("context",Q);return delete A["@context"],this.set("properties",A)}_assertContext(A){if(!(A.split(":")[0]in this.get("context")))throw Error(`${$5}: Missing context for term, "${A}".`)}}Vx.EXTENSION_NAME=$5;function fh(A){return JSON.parse(JSON.stringify(A))}class Ix extends oB{constructor(...A){super(...A);this.extensionName=$5}createPacket(){return new Vx(this.document.getGraph())}listPackets(){return Array.from(this.properties)}read(A){var Q;let B=(Q=A.jsonDoc.json.extensions)==null?void 0:Q[$5];if(!B||!B.packets)return this;let Y=A.jsonDoc.json,J=this.document.getRoot(),C=B.packets.map((F)=>this.createPacket().fromJSONLD(F)),X=[[Y.asset],Y.scenes,Y.nodes,Y.meshes,Y.materials,Y.images,Y.animations],G=[[J],J.listScenes(),J.listNodes(),J.listMeshes(),J.listMaterials(),J.listTextures(),J.listAnimations()];for(let F=0;F0)Q.extensions=Q.extensions||{},Q.extensions[$5]={packets:B};return this}}Ix.EXTENSION_NAME=$5;var yoQ=[wH,dh,lh,ih,sh,ah,jH,b3,Ax,m3,u3,Yx,Xx,d3,Zx,Ux,OH,PH,Kx,Ix],kFY=[h3,RH,x3,f3,...yoQ];var kFA=qA(Hx(),1),_FA=qA(KFA(),1),OBB=qA(SFA(),1);async function PBB(A,Q){if(!(A instanceof Uint8Array))throw Error("[ndarray-pixels] Input must be Uint8Array or Buffer.");let{data:B,info:Y}=await _FA.default(A).ensureAlpha().raw().toBuffer({resolveWithObject:!0});return kFA.default(new Uint8Array(B),[Y.width,Y.height,4],[4,4*Y.width|0,1],0)}async function vFA(A,Q){return PBB(A)}var TBB=qA(Hx(),1);function pU(){return pU=Object.assign?Object.assign.bind():function(A){for(var Q=1;QQ?"–":"+",J="%";return Y+(Math.abs(A-Q)/A*100).toFixed(B)+"%"}function VR(A,Q){return`${px(A)} → ${px(Q)} (${gBB(A,Q)})`}function IR(A){let Q=[];for(let B of A.listAttributes())Q.push(B);for(let B of A.listTargets())for(let Y of B.listAttributes())Q.push(Y);return Array.from(new Set(Q))}function hBB(A,Q,B){A.swap(Q,B);for(let Y of A.listTargets())Y.swap(Q,B)}function eFA(A){let Q=A.getIndices(),B=IR(A);if(A.dispose(),Q&&!ix(Q))Q.dispose();for(let Y of B)if(!ix(Y))Y.dispose()}function TG(A,Q){return A.createAccessor(Q.getName()).setArray(Q.getArray()).setType(Q.getType()).setBuffer(Q.getBuffer()).setNormalized(Q.getNormalized()).setSparse(Q.getSparse())}function xBB(A,Q=A){let B=ex(A,Q);for(let Y=0;YQ.propertyType!==YA.ROOT)}function AWA(A){for(let Q in A)return!1;return!0}function QWA(A){let Q=IJ.fromGraph(A.getGraph()),B=A.getMaterial(),Y=Q.getRoot().listMaterials().indexOf(B),J=bBB[A.getMode()],C=!!A.getIndices(),X=A.listSemantics().sort().map((F)=>{let W=A.getAttribute(F),Z=W.getElementSize(),U=W.getComponentType();return`${F}:${Z}:${U}`}).join("+"),G=A.listTargets().map((F)=>{return F.listSemantics().sort().map((W)=>{let Z=A.getAttribute(W),U=Z.getElementSize(),$=Z.getComponentType();return`${W}:${U}:${$}`}).join("+")}).join("~");return`${Y}|${J}|${C}|${X}|${G}`}function fBB(A){return Math.pow(2,Math.ceil(Math.log(A)/Math.LN2))}var bBB={[yFA]:yFA,[WR]:WR,[SBB]:WR,[kBB]:WR,[ZR]:ZR,[_BB]:ZR,[vBB]:ZR},cU="center",gFA={pivot:"center"};function BWA(A=gFA){let Q=SG(gFA,A);return AZ(cU,(B)=>{let Y=B.getLogger(),J=B.getRoot(),C=J.listAnimations().length>0||J.listSkins().length>0;B.getRoot().listScenes().forEach((X,G)=>{Y.debug(`${cU}: Scene ${G+1} / ${J.listScenes().length}.`);let F;if(typeof Q.pivot==="string"){let Z=HH(X);if(F=[(Z.max[0]-Z.min[0])/2+Z.min[0],(Z.max[1]-Z.min[1])/2+Z.min[1],(Z.max[2]-Z.min[2])/2+Z.min[2]],Q.pivot==="above")F[1]=Z.max[1];if(Q.pivot==="below")F[1]=Z.min[1]}else F=Q.pivot;Y.debug(`${cU}: Pivot "${F.join(", ")}".`);let W=[-1*F[0],-1*F[1],-1*F[2]];if(C){Y.debug(`${cU}: Model contains animation or skin. Adding a wrapper node.`);let Z=B.createNode("Pivot").setTranslation(W);X.listChildren().forEach((U)=>Z.addChild(U)),X.addChild(Z)}else Y.debug(`${cU}: Skipping wrapper, offsetting all root nodes.`),X.listChildren().forEach((Z)=>{let U=Z.getTranslation();Z.setTranslation([U[0]+W[0],U[1]+W[1],U[2]+W[2]])})}),Y.debug(`${cU}: Complete.`)})}function mBB(A){let Q=new Set,B=A,Y;while(Y=B.getParentNode()){if(Q.has(Y))throw Error("Circular dependency in scene graph.");Q.add(Y),B=Y}return B.listParents().filter((J)=>J instanceof OU)}function uBB(A){let Q=mBB(A),B=A.getParentNode();if(!B)return A;A.setMatrix(A.getWorldMatrix()),B.removeChild(A);for(let Y of Q)Y.addChild(A);return A}var iU=typeof Float32Array<"u"?Float32Array:Array;if(!Math.hypot)Math.hypot=function(){var A=0,Q=arguments.length;while(Q--)A+=arguments[Q]*arguments[Q];return Math.sqrt(A)};function dBB(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Q[4],G=Q[5],F=Q[6],W=Q[7],Z=Q[8],U=Q[9],$=Q[10],E=Q[11],K=Q[12],I=Q[13],V=Q[14],H=Q[15],D=B*G-Y*X,L=B*F-J*X,z=B*W-C*X,M=Y*F-J*G,N=Y*W-C*G,q=J*W-C*F,w=Z*I-U*K,P=Z*V-$*K,_=Z*H-E*K,O=U*V-$*I,k=U*H-E*I,T=$*H-E*V,S=D*T-L*k+z*O+M*_-N*P+q*w;if(!S)return null;return S=1/S,A[0]=(G*T-F*k+W*O)*S,A[1]=(J*k-Y*T-C*O)*S,A[2]=(I*q-V*N+H*M)*S,A[3]=($*N-U*q-E*M)*S,A[4]=(F*_-X*T-W*P)*S,A[5]=(B*T-J*_+C*P)*S,A[6]=(V*z-K*q-H*L)*S,A[7]=(Z*q-$*z+E*L)*S,A[8]=(X*k-G*_+W*w)*S,A[9]=(Y*_-B*k-C*w)*S,A[10]=(K*N-I*z+H*D)*S,A[11]=(U*z-Z*N-E*D)*S,A[12]=(G*P-X*O-F*w)*S,A[13]=(B*O-Y*P+J*w)*S,A[14]=(I*L-K*M-V*D)*S,A[15]=(Z*M-U*L+$*D)*S,A}function cBB(A){var Q=A[0],B=A[1],Y=A[2],J=A[3],C=A[4],X=A[5],G=A[6],F=A[7],W=A[8],Z=A[9],U=A[10],$=A[11],E=A[12],K=A[13],I=A[14],V=A[15],H=Q*X-B*C,D=Q*G-Y*C,L=Q*F-J*C,z=B*G-Y*X,M=B*F-J*X,N=Y*F-J*G,q=W*K-Z*E,w=W*I-U*E,P=W*V-$*E,_=Z*I-U*K,O=Z*V-$*K,k=U*V-$*I;return H*k-D*O+L*_+z*P-M*w+N*q}function YWA(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],F=Q[5],W=Q[6],Z=Q[7],U=Q[8],$=Q[9],E=Q[10],K=Q[11],I=Q[12],V=Q[13],H=Q[14],D=Q[15],L=B[0],z=B[1],M=B[2],N=B[3];return A[0]=L*Y+z*G+M*U+N*I,A[1]=L*J+z*F+M*$+N*V,A[2]=L*C+z*W+M*E+N*H,A[3]=L*X+z*Z+M*K+N*D,L=B[4],z=B[5],M=B[6],N=B[7],A[4]=L*Y+z*G+M*U+N*I,A[5]=L*J+z*F+M*$+N*V,A[6]=L*C+z*W+M*E+N*H,A[7]=L*X+z*Z+M*K+N*D,L=B[8],z=B[9],M=B[10],N=B[11],A[8]=L*Y+z*G+M*U+N*I,A[9]=L*J+z*F+M*$+N*V,A[10]=L*C+z*W+M*E+N*H,A[11]=L*X+z*Z+M*K+N*D,L=B[12],z=B[13],M=B[14],N=B[15],A[12]=L*Y+z*G+M*U+N*I,A[13]=L*J+z*F+M*$+N*V,A[14]=L*C+z*W+M*E+N*H,A[15]=L*X+z*Z+M*K+N*D,A}var NJ;(function(A){A.RENDER="render",A.RENDER_CACHED="render-cached",A.UPLOAD="upload",A.UPLOAD_NAIVE="upload-naive",A.DISTINCT="distinct",A.DISTINCT_POSITION="distinct-position",A.UNUSED="unused"})(NJ||(NJ={}));function eW(A,Q){let B=A.getAttribute("POSITION"),Y=A.getIndices();switch(Q){case NJ.RENDER:return Y?Y.getCount():B.getCount();case NJ.RENDER_CACHED:return Y?new Set(Y.getArray()).size:B.getCount();case NJ.UPLOAD_NAIVE:case NJ.UPLOAD:return B.getCount();case NJ.DISTINCT:case NJ.DISTINCT_POSITION:return lBB(Q);case NJ.UNUSED:return Y?B.getCount()-new Set(Y.getArray()).size:0;default:return pBB(Q)}}function lBB(A){throw Error(`Not implemented: ${A}`)}function pBB(A){throw Error(`Unexpected value: ${A}`)}var j7=4294967295;class JWA{constructor(A){this.attributes=[],this.u8=void 0,this.u32=void 0;let Q=0;for(let B of IR(A))Q+=this._initAttribute(B);this.u8=new Uint8Array(Q),this.u32=new Uint32Array(this.u8.buffer)}_initAttribute(A){let Q=A.getArray(),B=new Uint8Array(Q.buffer,Q.byteOffset,Q.byteLength),Y=A.getElementSize()*A.getComponentSize(),J=PQ.padNumber(Y);return this.attributes.push({u8:B,byteStride:Y,paddedByteStride:J}),J}hash(A){let Q=0;for(let{u8:B,byteStride:Y,paddedByteStride:J}of this.attributes){for(let C=0;C>>0,X=(X^X>>24)>>>0,X=Math.imul(X,1540483477)>>>0,A=Math.imul(A,1540483477)>>>0,A=(A^X)>>>0}return A}function nBB(A,Q,B,Y,J=j7){let C=Q-1,G=B.hash(Y)&C;for(let F=0;F<=C;F++){let W=A[G];if(W===J||B.equal(W,Y))return G;G=G+F+1&C}throw Error("Hash table full.")}function uH(A,Q,B){let Y=IJ.fromGraph(A.getGraph());if(!Q||!B)[Q,B]=sBB(A);let J=A.getIndices(),C=J?J.getArray():null,X=eW(A,NJ.RENDER),G=Y.createAccessor(),F=X,W=ex(F,B);for(let U=0;U0)C=1/Math.sqrt(C);return A[0]=Q[0]*C,A[1]=Q[1]*C,A[2]=Q[2]*C,A}function A0B(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=B[3]*Y+B[7]*J+B[11]*C+B[15];return X=X||1,A[0]=(B[0]*Y+B[4]*J+B[8]*C+B[12])/X,A[1]=(B[1]*Y+B[5]*J+B[9]*C+B[13])/X,A[2]=(B[2]*Y+B[6]*J+B[10]*C+B[14])/X,A}function Q0B(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2];return A[0]=Y*B[0]+J*B[3]+C*B[6],A[1]=Y*B[1]+J*B[4]+C*B[7],A[2]=Y*B[2]+J*B[5]+C*B[8],A}var B0B=eBB;(function(){var A=HR();return function(Q,B,Y,J,C,X){var G,F;if(!B)B=3;if(!Y)Y=0;if(J)F=Math.min(J*B+Y,Q.length);else F=Q.length;for(G=Y;G{let Y=B.getLogger();for(let J of B.getRoot().listMeshes()){for(let C of J.listPrimitives())if(DR(C,Q),eW(C,NJ.RENDER)===0)eFA(C);if(J.listPrimitives().length===0)J.dispose()}Y.debug(`${sx}: Complete.`)})}function DR(A,Q=UR){let B=A.getGraph(),J=IJ.fromGraph(B).getLogger(),C=pU({},UR,Q);if(A.getIndices()&&!C.overwrite)return;if(A.getMode()===z0.Mode.POINTS)return;let X=A.getAttribute("POSITION").getCount(),G=A.getIndices(),F=G==null?void 0:G.getArray(),W=G?G.getCount():X,Z=new JWA(A),U=fBB(X+X/4),$=new Uint32Array(U).fill(j7),E=new Uint32Array(X).fill(j7),K=0;for(let I=0;IY instanceof DH&&Y!==Q))A=A.clone();for(let Y of A.listTargets())if(Y.listParents().some((C)=>C instanceof z0&&C!==A))A.removeTarget(Y).addTarget(Y.clone());return A}var bFA=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function GWA(A){let Q=A.getMesh(),B=A.getMatrix();if(Q&&!kQ.eq(B,bFA))C0B(Q,B);for(let Y of A.listChildren()){let J=Y.getMatrix();YWA(J,J,B),Y.setMatrix(J)}return A.setMatrix(bFA)}var{LINES:G0B,LINE_STRIP:F0B,LINE_LOOP:W0B,TRIANGLES:Z0B,TRIANGLE_STRIP:$0B,TRIANGLE_FAN:U0B}=z0.Mode;function E0B(A){let Q=A.getGraph(),B=IJ.fromGraph(Q);if(!A.getIndices())DR(A);let Y=A.getIndices(),J=Y.getArray(),C=tFA(A),G=new D7[Y.getComponentType()](C*2),F=A.getMode();if(F===F0B)for(let Z=0;ZZ!==W&&Z!==A))A.setIndices(TG(B,Y).setArray(G));else Y.setArray(G)}function FWA(A){let Q=A.getGraph(),B=IJ.fromGraph(Q);if(!A.getIndices())DR(A);let Y=A.getIndices(),J=Y.getArray(),C=tFA(A),G=new D7[Y.getComponentType()](C*3),F=A.getMode();if(F===$0B)for(let Z=0,U=J.length;ZZ!==W&&Z!==A))A.setIndices(TG(B,Y).setArray(G));else Y.setArray(G)}var bWY={keepUniqueNames:!1,propertyTypes:[YA.ACCESSOR,YA.MESH,YA.TEXTURE,YA.MATERIAL,YA.SKIN]};var mFA="dequantize",ER={pattern:/^((?!JOINTS_).)*$/};function WWA(A=ER){let Q=SG(ER,A);return AZ(mFA,(B)=>{let Y=B.getLogger();for(let J of B.getRoot().listMeshes())for(let C of J.listPrimitives())K0B(C,Q);B.createExtension(OH).dispose(),Y.debug(`${mFA}: Complete.`)})}function K0B(A,Q=ER){let B=SG(ER,Q);for(let Y of A.listSemantics())if(B.pattern.test(Y))rx(A.getAttribute(Y));for(let Y of A.listTargets())for(let J of Y.listSemantics())if(B.pattern.test(J))rx(Y.getAttribute(J))}function rx(A){let Q=A.getArray();if(!Q)return;let B=KR(Q,A.getComponentType(),A.getNormalized());A.setArray(B).setNormalized(!1)}function KR(A,Q,B){let Y=new Float32Array(A.length);for(let J=0,C=A.length;J{if(Y.propertyType===ZWA)return Y;let J=B.get(Y);if(!J)J=new Y.constructor(A.getGraph()),B.set(Y,J);return J}}function H0B(A){let Q=new Set;for(let B of A.getGraph().listEdges())Q.add(B.getChild());return Array.from(Q)}function UWA(){var A=new iU(4);if(iU!=Float32Array)A[0]=0,A[1]=0,A[2]=0,A[3]=0;return A}function D0B(A,Q,B){return A[0]=Q[0]+B[0],A[1]=Q[1]+B[1],A[2]=Q[2]+B[2],A[3]=Q[3]+B[3],A}function N0B(A,Q,B){return A[0]=Q[0]-B[0],A[1]=Q[1]-B[1],A[2]=Q[2]-B[2],A[3]=Q[3]-B[3],A}function L0B(A,Q,B){return A[0]=Q[0]*B[0],A[1]=Q[1]*B[1],A[2]=Q[2]*B[2],A[3]=Q[3]*B[3],A}function q0B(A,Q,B){return A[0]=Q[0]*B,A[1]=Q[1]*B,A[2]=Q[2]*B,A[3]=Q[3]*B,A}function M0B(A){var Q=A[0],B=A[1],Y=A[2],J=A[3];return Math.hypot(Q,B,Y,J)}var EWA=N0B,z0B=L0B,KWA=M0B;(function(){var A=UWA();return function(Q,B,Y,J,C,X){var G,F;if(!B)B=4;if(!Y)Y=0;if(J)F=Math.min(J*B+Y,Q.length);else F=Q.length;for(G=Y;G{return J.getAttributes().isColor||R0B.test(J.getName())})?"srgb":null}function j0B(A){let Q=A.getGraph(),B=new Set,Y=new Set;function J(C){let X=new Set;for(let G of Q.listChildEdges(C))if(G.getChild()instanceof sW)X.add(G.getName()+"Info");for(let G of Q.listChildEdges(C)){let F=G.getChild();if(B.has(F))continue;if(B.add(F),F instanceof gB&&X.has(G.getName()))Y.add(F);else if(F instanceof aB)J(F)}}return J(A),Array.from(Y)}function O0B(A){let B=IJ.fromGraph(A.getGraph()).getRoot(),Y=A.getGraph().listParentEdges(A).filter((J)=>J.getParent()!==B).map((J)=>J.getName());return Array.from(new Set(Y))}var lU="prune",ax=0.011764705882352941,uFA={propertyTypes:[YA.NODE,YA.SKIN,YA.MESH,YA.CAMERA,YA.PRIMITIVE,YA.PRIMITIVE_TARGET,YA.ANIMATION,YA.MATERIAL,YA.TEXTURE,YA.ACCESSOR,YA.BUFFER],keepLeaves:!1,keepAttributes:!1,keepIndices:!1,keepSolidTextures:!1,keepExtras:!1};function NR(A=uFA){let Q=SG(uFA,A),B=new Set(Q.propertyTypes),Y=Q.keepExtras;return AZ(lU,async(J)=>{let C=J.getLogger(),X=J.getRoot(),G=J.getGraph(),F=new VWA,W=(Z)=>F.dispose(Z.target);if(G.addEventListener("node:dispose",W),B.has(YA.MESH))for(let Z of X.listMeshes()){if(Z.listPrimitives().length>0)continue;Z.dispose()}if(B.has(YA.NODE)){if(!Q.keepLeaves)for(let Z of X.listScenes())IWA(G,Z,Y);for(let Z of X.listNodes())K5(Z,Y)}if(B.has(YA.SKIN))for(let Z of X.listSkins())K5(Z,Y);if(B.has(YA.MESH))for(let Z of X.listMeshes())K5(Z,Y);if(B.has(YA.CAMERA))for(let Z of X.listCameras())K5(Z,Y);if(B.has(YA.PRIMITIVE))dFA(G,YA.PRIMITIVE,Y);if(B.has(YA.PRIMITIVE_TARGET))dFA(G,YA.PRIMITIVE_TARGET,Y);if(!Q.keepAttributes&&B.has(YA.ACCESSOR)){let Z=new Map;for(let U of X.listMeshes())for(let $ of U.listPrimitives()){let E=$.getMaterial();if(!E)continue;let K=HWA(J,$,E),I=P0B($,K);cFA($,I),$.listTargets().forEach((V)=>cFA(V,I)),Z.has(E)?Z.get(E).add($):Z.set(E,new Set([$]))}for(let[U,$]of Z)T0B(U,Array.from($))}if(B.has(YA.ANIMATION))for(let Z of X.listAnimations()){for(let U of Z.listChannels())if(!U.getTargetNode())U.dispose();if(!Z.listChannels().length){let U=Z.listSamplers();K5(Z,Y),U.forEach(($)=>K5($,Y))}else Z.listSamplers().forEach((U)=>K5(U,Y))}if(B.has(YA.MATERIAL))X.listMaterials().forEach((Z)=>K5(Z,Y));if(B.has(YA.TEXTURE)){if(X.listTextures().forEach((Z)=>K5(Z,Y)),!Q.keepSolidTextures)await S0B(J)}if(B.has(YA.ACCESSOR))X.listAccessors().forEach((Z)=>K5(Z,Y));if(B.has(YA.BUFFER))X.listBuffers().forEach((Z)=>K5(Z,Y));if(G.removeEventListener("node:dispose",W),!F.empty()){let Z=F.entries().map(([U,$])=>`${U} (${$})`).join(", ");C.info(`${lU}: Removed types... ${Z}`)}else C.debug(`${lU}: No unused properties found.`);C.debug(`${lU}: Complete.`)})}class VWA{constructor(){this.disposed={}}empty(){for(let A in this.disposed)return!1;return!0}entries(){return Object.entries(this.disposed)}dispose(A){this.disposed[A.propertyType]=this.disposed[A.propertyType]||0,this.disposed[A.propertyType]++}}function K5(A,Q){let B=A.listParents().filter((J)=>!(J instanceof PU||J instanceof $G)),Y=Q&&!AWA(A.getExtras());if(!B.length&&!Y)A.dispose()}function dFA(A,Q,B){for(let Y of A.listEdges()){let J=Y.getParent();if(J.propertyType===Q)K5(J,B)}}function IWA(A,Q,B){if(Q.listChildren().forEach((X)=>IWA(A,X,B)),Q instanceof OU)return;let Y=A.listParentEdges(Q).some((X)=>{let G=X.getParent().propertyType;return G!==YA.ROOT&&G!==YA.SCENE&&G!==YA.NODE}),J=A.listChildren(Q).length===0,C=B&&!AWA(Q.getExtras());if(J&&!Y&&!C)Q.dispose()}function cFA(A,Q){for(let B of Q)A.setAttribute(B,null)}function P0B(A,Q){let B=[];for(let Y of A.listSemantics())if(Y==="NORMAL"&&!Q.has(Y))B.push(Y);else if(Y==="TANGENT"&&!Q.has(Y))B.push(Y);else if(Y.startsWith("TEXCOORD_")&&!Q.has(Y))B.push(Y);else if(Y.startsWith("COLOR_")&&Y!=="COLOR_0")B.push(Y);return B}function HWA(A,Q,B,Y=new Set){let C=A.getGraph().listChildEdges(B),X=new Set;for(let W of C)if(W.getChild()instanceof sW)X.add(W.getName());for(let W of C){let Z=W.getName(),U=W.getChild();if(U instanceof gB){if(X.has(Z.replace(/Info$/,"")))Y.add(`TEXCOORD_${U.getTexCoord()}`)}if(U instanceof sW&&Z.match(/normalTexture/i))Y.add("TANGENT");if(U instanceof aB)HWA(A,Q,U,Y)}let G=B instanceof x1&&!B.getExtension("KHR_materials_unlit"),F=Q.getMode()===z0.Mode.POINTS;if(G&&!F)Y.add("NORMAL");return Y}function T0B(A,Q){let B=j0B(A),Y=new Set(B.map((F)=>F.getTexCoord())),J=Array.from(Y).sort(),C=new Map(J.map((F,W)=>[F,W])),X=new Map(J.map((F,W)=>[`TEXCOORD_${F}`,`TEXCOORD_${W}`]));for(let F of B){let W=F.getTexCoord();F.setTexCoord(C.get(W))}for(let F of Q){let W=F.listSemantics().filter((Z)=>Z.startsWith("TEXCOORD_")).sort();G(F,W),F.listTargets().forEach((Z)=>G(Z,W))}function G(F,W){for(let Z of W){let U=F.getAttribute(Z);if(!U)continue;let $=X.get(Z);if($===Z)continue;F.setAttribute($,U),F.setAttribute(Z,null)}}}async function S0B(A){let Q=A.getRoot(),B=A.getGraph(),Y=A.getLogger(),C=Q.listTextures().map(async(X)=>{var G;let F=await _0B(X);if(!F)return;if(w0B(X)==="srgb")vh.convertSRGBToLinear(F,F);let W=X.getName()||X.getURI(),Z=(G=X.getSize())==null?void 0:G.join("x"),U=O0B(X);for(let $ of B.listParentEdges(X)){let E=$.getParent();if(E!==Q&&k0B(E,F,$.getName(),Y))$.dispose()}if(X.listParents().length===1)X.dispose(),Y.debug(`${lU}: Removed solid-color texture "${W}" (${Z}px ${U.join(", ")})`)});await Promise.all(C)}function k0B(A,Q,B,Y){if(A instanceof x1)switch(B){case"baseColorTexture":return A.setBaseColorFactor(z0B(Q,Q,A.getBaseColorFactor())),!0;case"emissiveTexture":return A.setEmissiveFactor(B0B([0,0,0],Q.slice(0,3),A.getEmissiveFactor())),!0;case"occlusionTexture":return Math.abs(Q[0]-1)<=ax;case"metallicRoughnessTexture":return A.setRoughnessFactor(Q[1]*A.getRoughnessFactor()),A.setMetallicFactor(Q[2]*A.getMetallicFactor()),!0;case"normalTexture":return KWA(EWA(UWA(),Q,[0.5,0.5,1,1]))<=ax}return Y.warn(`${lU}: Detected single-color ${B} texture. Pruning ${B} not yet supported.`),!1}async function _0B(A){let Q=await v0B(A);if(!Q)return null;let B=[1/0,1/0,1/0,1/0],Y=[-1/0,-1/0,-1/0,-1/0],J=[0,0,0,0],[C,X]=Q.shape;for(let G=0;Gax)return null}return q0B(J,D0B(J,Y,B),0.00196078431372549)}async function v0B(A){try{return await vFA(A.getImage(),A.getMimeType())}catch(Q){return null}}var cx="flatten",lFA={cleanup:!0};function Bf(A=lFA){let Q=SG(lFA,A);return AZ(cx,async(B)=>{let Y=B.getRoot(),J=B.getLogger(),C=new Set;for(let W of Y.listSkins())for(let Z of W.listJoints())C.add(Z);let X=new Set;for(let W of Y.listAnimations())for(let Z of W.listChannels()){let U=Z.getTargetNode();if(U&&Z.getTargetPath()!=="weights")X.add(U)}let G=new Set,F=new Set;for(let W of Y.listScenes())W.traverse((Z)=>{let U=Z.getParentNode();if(!U)return;if(C.has(U)||G.has(U))G.add(Z);if(X.has(U)||F.has(U))F.add(Z)});for(let W of Y.listScenes())W.traverse((Z)=>{if(X.has(Z))return;if(G.has(Z))return;if(F.has(Z))return;uBB(Z)});if(X.size)J.debug(`${cx}: Flattening node hierarchies with TRS animation not yet supported.`);if(Q.cleanup)await B.transform(NR({propertyTypes:[YA.NODE],keepLeaves:!1}));J.debug(`${cx}: Complete.`)})}function DWA(A){return HH(A)}var y0B={skipValidation:!1},pFA=4294967295,{LINE_STRIP:g0B,LINE_LOOP:h0B,TRIANGLE_STRIP:x0B,TRIANGLE_FAN:f0B}=z0.Mode;function b0B(A,Q={}){let B=SG(y0B,Q),Y=A[0],J=IJ.fromGraph(Y.getGraph());if(!B.skipValidation&&new Set(A.map(QWA)).size>1)throw Error("Requires >=2 Primitives, sharing the same Material and Mode, with compatible vertex attributes and indices.");for(let E of A)switch(E.getMode()){case g0B:case h0B:E0B(E);break;case x0B:case f0B:FWA(E);break}let C=[],X=new Uint32Array(A.length),G=0,F=0;for(let E=0;E!0};function Yf(A=iFA){let Q=SG(iFA,A);return AZ(ox,async(B)=>{let Y=B.getRoot(),J=B.getLogger();for(let C of Y.listScenes())nFA(B,C,Q),C.traverse((X)=>nFA(B,X,Q));if(Q.cleanup)await B.transform(NR({propertyTypes:[c0B,l0B,p0B,i0B],keepAttributes:!0,keepIndices:!0,keepLeaves:!1}));J.debug(`${ox}: Complete.`)})}function nFA(A,Q,B){let Y=A.getLogger(),J={},C=Q.listChildren();for(let F=0;F$ instanceof $G))continue;let U=W.getMesh();if(!U)continue;if(W.getExtension("EXT_mesh_gpu_instancing"))continue;if(W.getSkin())continue;for(let $ of U.listPrimitives()){if($.listTargets().length>0)continue;let E=$.getMaterial();if(E&&E.getExtension("KHR_materials_volume"))continue;uH($),s0B($);let K=QWA($),I=U.getName()||W.getName();if(B.keepMeshes||B.keepNamed&&I)K+=`|${F}`;if(!(K in J))J[K]={prims:[],primMeshes:[],primNodes:[],dstNode:W,dstMesh:void 0};let V=J[K];V.prims.push($),V.primNodes.push(W)}}let X=Object.values(J).filter(({prims:F})=>F.length>1),G=new Set(X.flatMap((F)=>F.primNodes));for(let F of G){let W=F.getMesh();if(W.listParents().some((U)=>{return U.propertyType!==d0B&&F!==U}))F.setMesh(W.clone())}for(let F of X){let{dstNode:W,primNodes:Z}=F;F.dstMesh=W.getMesh(),F.primMeshes=Z.map((U)=>U.getMesh())}for(let F of X){let{prims:W,primNodes:Z,primMeshes:U,dstNode:$,dstMesh:E}=F,K=$.getMatrix();for(let H=0;H=Math.PI}else if(B==="lerp"){let H=QYB(C,F,G,I);V=!$R(X,H,Y)}else if(B==="step")V=!$R(X,F)||!$R(X,G)}if(V){if(U!==Z)A[Z]=A[U],aFA(Q,Z,mH(Q,U,C));Z++}}if(W>0)A[Z]=A[W],aFA(Q,Z,mH(Q,W,C)),Z++;return Z}function mH(A,Q,B){for(let Y=0,J=B.length;YB)return!1;return!0}function AYB(A,Q,B){return A*(1-B)+Q*B}function QYB(A,Q,B,Y){for(let J=0;Jt0B)$=Math.acos(E),K=Math.sin($),I=Math.sin((1-Y)*$)/K,V=Math.sin(Y*$)/K;else I=1-Y,V=Y;return A[0]=I*J+V*F,A[1]=I*C+V*W,A[2]=I*X+V*Z,A[3]=I*G+V*U,A}function oFA(A,Q){let B=YYB(A,Q);return Math.acos(2*B*B-1)}function YYB(A,Q){return A[0]*Q[0]+A[1]*Q[1]+A[2]*Q[2]+A[3]*Q[3]}var iWY=new Float32Array(0),nWY={ready:Promise.resolve(),resample:e0B,tolerance:0.0001,cleanup:!0};var tW="simplify",{POINTS:NWA,LINES:JYB,LINE_STRIP:CYB,LINE_LOOP:XYB,TRIANGLES:GYB,TRIANGLE_STRIP:LWA,TRIANGLE_FAN:qWA}=z0.Mode,MWA={ratio:0,error:0.0001,lockBorder:!1};function zWA(A){let Q=SG(MWA,A),B=Q.simplifier;if(!B)throw Error(`${tW}: simplifier dependency required — install "meshoptimizer".`);return AZ(tW,async(Y)=>{let J=Y.getLogger();await B.ready,await Y.transform(Af({overwrite:!1}));let C=0;for(let X of Y.getRoot().listMeshes()){for(let G of X.listPrimitives()){let F=G.getMode();if(F!==GYB&&F!==LWA&&F!==qWA&&F!==NWA){C++;continue}if(FYB(G,Q),eW(G,NJ.RENDER)===0)eFA(G)}if(X.listPrimitives().length===0)X.dispose()}if(C>0)J.warn(`${tW}: Skipped ${C} primitives: Unsupported draw mode.`);J.debug(`${tW}: Complete.`)})}function FYB(A,Q){let B=pU({},MWA,Q),Y=B.simplifier,J=A.getGraph(),C=IJ.fromGraph(J),X=C.getLogger();switch(A.getMode()){case NWA:return WYB(C,A,B);case JYB:case CYB:case XYB:return X.warn(`${tW}: Skipping primitive simplification: Unsupported draw mode.`),A;case LWA:case qWA:FWA(A);break}let G=eW(A,NJ.UPLOAD),F=eW(A,NJ.RENDER);if(FK.getName()),Z=G.getRoot().listAnimations().map((K)=>K.getName()),U=await this._buildTrimesh(G),$={},E=new TU().registerExtensions(RR);for(let K of H8.OPTIMIZER_RUNS){let I=this._buildOptimizedModelPath(A),V=this._buildOptimizedSuffixedModelPath(I,K.suffix);$[K.suffix]={meshCount:(await E.read(V)).getRoot().listMeshes().length}}X={schemaVersion:H8.VERSION,source:{uri:Y,sha256:J},animationNames:Z,boundingBox:{min:{x:F.min[0],y:F.min[1],z:F.min[2]},max:{x:F.max[0],y:F.max[1],z:F.max[2]}},nodeNames:W,trimesh:U?{vertices:Array.from(U.vertices),indices:Array.from(U.indices)}:void 0,optimizedModelData:$};try{let K=LJ.dirname(B);I8.mkdirSync(K,{recursive:!0}),I8.writeFileSync(B,JSON.stringify(X))}catch(K){n.warning(`ModelRegistry._loadModelData(): Failed to write data file for ${Y}. Error: ${String(K)}`)}}if(process.env.NODE_ENV!=="production"&&!C)for(let G of H8.OPTIMIZER_RUNS){let F=X.optimizedModelData[G.suffix].meshCount;if(F>G.optimalMaxMeshCount)n.warning(`Model "${Y}" (${G.suffix}) has ${F} meshes (less is better, try not to exceed: ${G.optimalMaxMeshCount}). This may impact FPS if this model is used in a game. ${G.optimalMaxMeshHint}`)}this._modelUriAnimationNames.set(Y,X.animationNames),this._modelUriBoundingBoxes.set(Y,X.boundingBox),this._modelUriNodeNames.set(Y,X.nodeNames),this._modelUriTrimeshes.set(Y,X.trimesh?{vertices:new Float32Array(X.trimesh.vertices),indices:new Uint32Array(X.trimesh.indices)}:void 0)}async _resolveOptimizedModelPath(A){let Q=this._buildOptimizedModelPath(A);if(this._isOptimizedVersionValid(A))return Q;return await this._optimizeModel(A,Q)}_isOptimizedVersionValid(A){let Q=`${this._buildOptimizedModelPath(A)}${H8.CHECKSUM_EXT}`;if(!I8.existsSync(Q))return!1;let B=this._calculateChecksum(A),Y=I8.readFileSync(Q,"utf8");return B===Y}_calculateChecksum(A){if(!I8.existsSync(A))return"";let Q=I8.readFileSync(A);return KYB.createHash("sha256").update(Q.toString("base64")).update(H8.VERSION.toString()).digest("hex")}_buildOptimizedModelPath(A){let Q=LJ.basename(A),B=Q.replace(/\.[^/.]+$/,""),Y=LJ.dirname(A),J=LJ.join(Y,H8.OPTIMIZED_DIR,B);return LJ.join(J,Q)}_buildOptimizedSuffixedModelPath(A,Q){return A.replace(/(\.[^/.]+)$/,`${Q}.glb`)}async _buildTrimesh(A,Q=1,B=0.001){let Y=$WA(A);Y.setLogger(new w9(VH.WARN)),await Y.transform(BWA({pivot:"center"}),Bf(),Yf(),Af(),zWA({simplifier:SWA.MeshoptSimplifier,ratio:Q,error:B}),WWA());for(let $ of Y.getRoot().listScenes())for(let E of $.listChildren())GWA(E);let J=[],C=0,X=0;for(let $ of Y.getRoot().listMeshes())for(let E of $.listPrimitives()){let K=E.getAttribute("POSITION"),I=E.getIndices();if(!K||!I)continue;let V=K.getArray(),H=I.getArray(),D=H instanceof Uint32Array?H:new Uint32Array(H);if(V.length===0||D.length===0)continue;J.push({vertices:V,indices:D}),C+=V.length,X+=D.length}if(J.length===0){n.error("ModelRegistry._buildTrimesh(): Model has no primitives with POSITION and INDICES!");return}let G=new Float32Array(C),F=new Uint32Array(X),W=0,Z=0,U=0;for(let $ of J){G.set($.vertices,W);let E=$.vertices.length/3;for(let K=0;K<$.indices.length;K++)F[U+K]=$.indices[K]+Z;W+=$.vertices.length,U+=$.indices.length,Z+=E}return{vertices:G,indices:F}}async _optimizeModel(A,Q){let B=LJ.dirname(Q);I8.rmSync(B,{recursive:!0,force:!0}),I8.mkdirSync(B,{recursive:!0}),console.info(`ModelRegistry: Optimizing model ${this._absoluteModelPathToModelUri(A)}...`);for(let Y of H8.OPTIMIZER_RUNS){let J=this._buildOptimizedSuffixedModelPath(Q,Y.suffix),C=await this._preprocessOptimizableModel(A,Y),X=await cV("npx",["@gltf-transform/cli","optimize",C,J,...Y.options]);if(X.stderr)return n.warning(`ModelRegistry._optimizeModel(): Error optimizing model ${this._absoluteModelPathToModelUri(A)}, defaulting to unoptimized model. Error: ${X.stderr}`),A;await this._embedModelMetadata(J);let G=await cV("npx",["@gltf-transform/cli","uastc",J,J,"--level","4","--zstd","10"]);if(G.stderr)n.warning(`ModelRegistry._optimizeModel(): Error compressing textures for model ${this._absoluteModelPathToModelUri(A)}, continuing without compression. Error: ${G.stderr}`)}return I8.writeFileSync(`${Q}${H8.CHECKSUM_EXT}`,this._calculateChecksum(A)),Q}async _embedModelMetadata(A){try{let Q=new TU().registerExtensions(RR),B=await Q.read(A);for(let Y of B.getRoot().listMaterials()){let C=Y.getBaseColorTexture()?.getImage(),X=!1;if(C)try{let G=Y.getAlphaMode()==="MASK"?Y.getAlphaCutoff()??0.5:0,F=Y.getAlpha(),W=G/F*255,{data:Z}=(await zU.read(Buffer.from(C))).bitmap;for(let U=3;U=W&&Z[U]<255){X=!0;break}}catch{}Y.setExtras({...Y.getExtras(),hasTransparency:X})}await Q.write(A,B)}catch(Q){n.warning(`ModelRegistry._embedModelMetadata(): Failed to embed metadata for ${A}. Error: ${String(Q)}`)}}async _preprocessOptimizableModel(A,Q){let B=new TU().registerExtensions(RR),Y=await B.read(A),J=!1;if(Q.stripAnimations){let C=Y.getRoot().listAnimations();if(C.length>0)C.forEach((X)=>X.dispose()),J=!0}if(Q.keepEmptyNamedNodes)await Y.transform(Bf({cleanup:!1}),Yf({cleanup:!1,keepNamed:!0}),NR({keepLeaves:!0})),J=!0;if(J){let C=LJ.join(VYB.tmpdir(),H8.TEMP_DIR);I8.mkdirSync(C,{recursive:!0});let X=LJ.join(C,LJ.basename(A));return await B.write(X,Y),X}return A}}var iH;((J)=>{J.DYNAMIC="dynamic";J.FIXED="fixed";J.KINEMATIC_POSITION="kinematic_position";J.KINEMATIC_VELOCITY="kinematic_velocity"})(iH||={});var Ff=0.001,kWA="dynamic";class O7 extends FQ{_additionalMass=0;_colliders=new Set;_explicitSleep=!1;_enabledPositions={x:!0,y:!0,z:!0};_enabledRotations={x:!0,y:!0,z:!0};_rigidBody;_rigidBodyDesc;_rigidBodyType;_simulation;constructor(A){super();A.type??=kWA,this._rigidBodyDesc=this._createRigidBodyDesc(A),this._rigidBodyType=A.type,this._applyRigidBodyOptions(A),this._autoAddToSimulation(A)}get additionalMass(){if(!this._requireNotRemoved("additionalMass"))return 0;return this._additionalMass}get additionalSolverIterations(){if(!this._requireNotRemoved("additionalSolverIterations"))return 0;return this._rigidBody?this._rigidBody.additionalSolverIterations():this._rigidBodyDesc.additionalSolverIterations}get angularDamping(){if(!this._requireNotRemoved("angularDamping"))return 0;return this._rigidBody?this._rigidBody.angularDamping():this._rigidBodyDesc.angularDamping}get angularVelocity(){if(!this._requireNotRemoved("angularVelocity"))return{x:0,y:0,z:0};return this._rigidBody?this._rigidBody.angvel():this._rigidBodyDesc.angvel}get colliders(){return this._colliders}get dominanceGroup(){if(!this._requireNotRemoved("dominanceGroup"))return 0;return this._rigidBody?this._rigidBody.dominanceGroup():this._rigidBodyDesc.dominanceGroup}get directionFromRotation(){let{x:A,y:Q,z:B,w:Y}=this.rotation;return{x:-2*(A*B+Y*Q),y:-2*(Q*B-Y*A),z:-(1-2*(A*A+Q*Q))}}get effectiveAngularInertia(){if(!this._requireNotRemoved("effectiveAngularInertia"))return;return this._rigidBody?this._rigidBody.effectiveAngularInertia():void 0}get effectiveInverseMass(){if(!this._requireNotRemoved("effectiveInverseMass"))return;return this._rigidBody?this._rigidBody.effectiveInvMass():void 0}get enabledRotations(){if(!this._requireNotRemoved("enabledRotations"))return{x:!0,y:!0,z:!0};return this._enabledRotations}get enabledPositions(){if(!this._requireNotRemoved("enabledPositions"))return{x:!0,y:!0,z:!0};return this._enabledPositions}get gravityScale(){if(!this._requireNotRemoved("gravityScale"))return 0;return this._rigidBody?this._rigidBody.gravityScale():this._rigidBodyDesc.gravityScale}get inverseMass(){if(!this._requireNotRemoved("inverseMass"))return;return this._rigidBody?this._rigidBody.invMass():void 0}get isCcdEnabled(){if(!this._requireNotRemoved("isCcdEnabled"))return!1;return this._rigidBody?this._rigidBody.isCcdEnabled():this._rigidBodyDesc.ccdEnabled}get isDynamic(){if(!this._requireNotRemoved("isDynamic"))return!1;return this._rigidBodyType==="dynamic"}get isEnabled(){if(!this._requireNotRemoved("isEnabled"))return!1;return this._rigidBody?this._rigidBody.isEnabled():this._rigidBodyDesc.enabled}get isFixed(){if(!this._requireNotRemoved("isFixed"))return!1;return this._rigidBodyType==="fixed"}get isKinematic(){if(!this._requireNotRemoved("isKinematic"))return!1;return["kinematic_position","kinematic_velocity"].includes(this._rigidBodyType)}get isKinematicPositionBased(){if(!this._requireNotRemoved("isKinematicPositionBased"))return!1;return this._rigidBodyType==="kinematic_position"}get isKinematicVelocityBased(){if(!this._requireNotRemoved("isKinematicVelocityBased"))return!1;return this._rigidBodyType==="kinematic_velocity"}get isMoving(){if(!this._requireNotRemoved("isMoving"))return!1;return this._rigidBody?this._rigidBody.isMoving():!1}get isRemoved(){return!this._rigidBody&&!this._rigidBodyDesc}get isSimulated(){if(!this._requireNotRemoved("isSimulated"))return!1;return this._rigidBody?!0:!1}get isSleeping(){if(!this._requireNotRemoved("isSleeping"))return!1;return this._rigidBody?this._rigidBody.isSleeping():this._rigidBodyDesc.sleeping}get linearDamping(){if(!this._requireNotRemoved("linearDamping"))return 0;return this._rigidBody?this._rigidBody.linearDamping():this._rigidBodyDesc.linearDamping}get linearVelocity(){if(!this._requireNotRemoved("linearVelocity"))return{x:0,y:0,z:0};return this._rigidBody?this._rigidBody.linvel():this._rigidBodyDesc.linvel}get localCenterOfMass(){if(!this._requireNotRemoved("localCenterOfMass"))return{x:0,y:0,z:0};return this._rigidBody?this._rigidBody.localCom():this._rigidBodyDesc.centerOfMass}get mass(){if(!this._requireNotRemoved("mass"))return 0;return this._rigidBody?this._rigidBody.mass():this._rigidBodyDesc.mass}get nextKinematicRotation(){if(!this._requireNotRemoved("nextKinematicRotation"))return{x:0,y:0,z:0,w:1};return this._rigidBody?this._rigidBody.nextRotation():this._rigidBodyDesc.rotation}get nextKinematicPosition(){if(!this._requireNotRemoved("nextKinematicPosition"))return{x:0,y:0,z:0};return this._rigidBody?this._rigidBody.nextTranslation():this._rigidBodyDesc.translation}get numColliders(){return this._colliders.size}get principalAngularInertia(){if(!this._requireNotRemoved("principalAngularInertia"))return{x:0,y:0,z:0};return this._rigidBody?this._rigidBody.principalInertia():this._rigidBodyDesc.principalAngularInertia}get principalAngularInertiaLocalFrame(){if(!this._requireNotRemoved("principalAngularInertiaLocalFrame"))return;return this._rigidBody?this._rigidBody.principalInertiaLocalFrame():void 0}get position(){if(!this._requireNotRemoved("position"))return{x:0,y:0,z:0};return this._rigidBody?this._rigidBody.translation():this._rigidBodyDesc.translation}get rawRigidBody(){if(!this._requireNotRemoved("rawRigidBody"))return;return this._rigidBody}get rotation(){if(!this._requireNotRemoved("rotation"))return{x:0,y:0,z:0,w:1};return this._rigidBody?this._rigidBody.rotation():this._rigidBodyDesc.rotation}get softCcdPrediction(){if(!this._requireNotRemoved("softCcdPrediction"))return 0;return this._rigidBody?this._rigidBody.softCcdPrediction():this._rigidBodyDesc.softCcdPrediction}get type(){if(!this._requireNotRemoved("type"))return"dynamic";return this._rigidBodyType}get worldCenterOfMass(){if(!this._requireNotRemoved("worldCenterOfMass"))return;return this._rigidBody?this._rigidBody.worldCom():void 0}setAdditionalMass(A){if(!this._requireDynamic("setAdditionalMass"))return;if(!this._requireNotRemoved("setAdditionalMass"))return;this._rigidBody?this._rigidBody.setAdditionalMass(A,!this._explicitSleep):this._rigidBodyDesc.setAdditionalMass(A)}setAdditionalMassProperties(A){if(!this._requireDynamic("setAdditionalMassProperties"))return;if(!this._requireNotRemoved("setAdditionalMassProperties"))return;let{additionalMass:Q,centerOfMass:B,principalAngularInertia:Y,principalAngularInertiaLocalFrame:J}=A;this._rigidBody?this._rigidBody.setAdditionalMassProperties(Q,B,Y,J,!this._explicitSleep):this._rigidBodyDesc.setAdditionalMassProperties(Q,B,Y,J)}setAdditionalSolverIterations(A){if(!this._requireDynamic("setAdditionalSolverIterations"))return;if(!this._requireNotRemoved("setAdditionalSolverIterations"))return;this._rigidBody?this._rigidBody.setAdditionalSolverIterations(A):this._rigidBodyDesc.setAdditionalSolverIterations(A)}setAngularDamping(A){if(!this._requireDynamic("setAngularDamping"))return;if(!this._requireNotRemoved("setAngularDamping"))return;this._rigidBody?this._rigidBody.setAngularDamping(A):this._rigidBodyDesc.setAngularDamping(A)}setAngularVelocity(A){if(!this._requireNotKinematicPositionBased("setAngularVelocity"))return;if(!this._requireNotRemoved("setAngularVelocity"))return;this._rigidBody?this._rigidBody.setAngvel(A,!this._explicitSleep):this._rigidBodyDesc.setAngvel(A)}setCcdEnabled(A){if(!this._requireDynamic("setCcdEnabled"))return;if(!this._requireNotRemoved("setCcdEnabled"))return;this._rigidBody?this._rigidBody.enableCcd(A):this._rigidBodyDesc.setCcdEnabled(A)}setDominanceGroup(A){if(!this._requireDynamic("setDominanceGroup"))return;if(!this._requireNotRemoved("setDominanceGroup"))return;this._rigidBody?this._rigidBody.setDominanceGroup(A):this._rigidBodyDesc.setDominanceGroup(A)}setEnabled(A){if(!this._requireNotRemoved("setEnabled"))return;this._rigidBody?this._rigidBody.setEnabled(A):this._rigidBodyDesc.setEnabled(A)}setEnabledPositions(A){if(!this._requireDynamic("setEnabledPositions"))return;if(!this._requireNotRemoved("setEnabledPositions"))return;this._rigidBody?this._rigidBody.setEnabledTranslations(A.x,A.y,A.z,!this._explicitSleep):this._rigidBodyDesc.enabledTranslations(A.x,A.y,A.z),this._enabledPositions=A}setEnabledRotations(A){if(!this._requireDynamic("setEnabledRotations"))return;if(!this._requireNotRemoved("setEnabledRotations"))return;this._rigidBody?this._rigidBody.setEnabledRotations(A.x,A.y,A.z,!this._explicitSleep):this._rigidBodyDesc.enabledRotations(A.x,A.y,A.z),this._enabledRotations=A}setGravityScale(A){if(!this._requireDynamic("setGravityScale"))return;if(!this._requireNotRemoved("setGravityScale"))return;this._rigidBody?this._rigidBody.setGravityScale(A,!this._explicitSleep):this._rigidBodyDesc.setGravityScale(A)}setLinearDamping(A){if(!this._requireDynamic("setLinearDamping"))return;if(!this._requireNotRemoved("setLinearDamping"))return;this._rigidBody?this._rigidBody.setLinearDamping(A):this._rigidBodyDesc.setLinearDamping(A)}setLinearVelocity(A){if(!this._requireNotKinematicPositionBased("setLinearVelocity"))return;if(!this._requireNotRemoved("setLinearVelocity"))return;this._rigidBody?this._rigidBody.setLinvel(A,!this._explicitSleep):this._rigidBodyDesc.setLinvel(A.x,A.y,A.z)}setNextKinematicRotation(A){if(!this._requireKinematic("setNextKinematicRotation"))return;if(!this._requireNotRemoved("setNextKinematicRotation"))return;this._rigidBody?this._rigidBody.setNextKinematicRotation(A):this._rigidBodyDesc.setRotation(A)}setNextKinematicPosition(A){if(!this._requireKinematic("setNextKinematicPosition"))return;if(!this._requireNotRemoved("setNextKinematicPosition"))return;this._rigidBody?this._rigidBody.setNextKinematicTranslation(A):this._rigidBodyDesc.setTranslation(A.x,A.y,A.z)}setPosition(A){if(!this._requireNotRemoved("setPosition"))return;this._rigidBody?this._rigidBody.setTranslation(A,!this._explicitSleep):this._rigidBodyDesc.setTranslation(A.x,A.y,A.z)}setRotation(A){if(!this._requireNotRemoved("setRotation"))return;this._rigidBody?this._rigidBody.setRotation(A,!this._explicitSleep):this._rigidBodyDesc.setRotation(A)}setSleeping(A){if(!this._requireDynamic("setSleeping"))return;if(!this._requireNotRemoved("setSleeping"))return;this._rigidBody?A?this._rigidBody.sleep():this._rigidBody.wakeUp():this._rigidBodyDesc.sleeping=A,this._explicitSleep=A}setSoftCcdPrediction(A){if(!this._requireDynamic("setSoftCcdPrediction"))return;if(!this._requireNotRemoved("setSoftCcdPrediction"))return;this._rigidBody?this._rigidBody.setSoftCcdPrediction(A):this._rigidBodyDesc.setSoftCcdPrediction(A)}setCollisionGroupsForSolidColliders(A){if(!this._requireNotRemoved("setCollisionGroupsForSolidColliders"))return;this._colliders.forEach((Q)=>{if(Q.isSensor)return;Q.setCollisionGroups(A)})}setCollisionGroupsForSensorColliders(A){if(!this._requireNotRemoved("setCollisionGroupsForSensorColliders"))return;this._colliders.forEach((Q)=>{if(!Q.isSensor)return;Q.setCollisionGroups(A)})}setType(A){if(!this._requireNotRemoved("setType"))return;let B={["dynamic"]:WB.RigidBodyType.Dynamic,["fixed"]:WB.RigidBodyType.Fixed,["kinematic_position"]:WB.RigidBodyType.KinematicPositionBased,["kinematic_velocity"]:WB.RigidBodyType.KinematicVelocityBased}[A];if(B===void 0)return n.error(`Invalid RigidBodyType: ${A}`);this._rigidBody?this._rigidBody.setBodyType(B,!this._explicitSleep):this._rigidBodyDesc.status=B,this._rigidBodyType=A}addForce(A){if(!this._requireNotRemoved("addForce"))return;if(!this._requireCreated("addForce"))return;if(!this._requireDynamic("addForce"))return;if(this._isNegligibleVector(A))return;this._rigidBody.addForce(A,!this._explicitSleep)}addTorque(A){if(!this._requireNotRemoved("addTorque"))return;if(!this._requireCreated("addTorque"))return;if(!this._requireDynamic("addTorque"))return;if(this._isNegligibleVector(A))return;this._rigidBody.addTorque(A,!this._explicitSleep)}addChildColliderToSimulation(A){if(!this._requireNotRemoved("addChildColliderToSimulation"))return;if(!this._requireCreated("addChildColliderToSimulation"))return;A.addToSimulation(this._simulation,this)}addToSimulation(A){if(!this._requireNotRemoved("addToSimulation"))return;if(this._rigidBody)return n.error("RigidBody.addToSimulation(): Rigid body already exists in the simulation!");this._simulation=A,this._rigidBody=this._simulation.createRawRigidBody(this._rigidBodyDesc),this._colliders.forEach((Q)=>{if(!Q.isSimulated)Q.addToSimulation(A,this)})}applyImpulse(A){if(!this._requireNotRemoved("applyImpulse"))return;if(!this._requireCreated("applyImpulse"))return;if(!this._requireDynamic("applyImpulse"))return;if(this._isNegligibleVector(A))return;this._rigidBody.applyImpulse(A,!this._explicitSleep)}applyImpulseAtPoint(A,Q){if(!this._requireNotRemoved("applyImpulseAtPoint"))return;if(!this._requireCreated("applyImpulseAtPoint"))return;if(!this._requireDynamic("applyImpulseAtPoint"))return;if(this._isNegligibleVector(A))return;this._rigidBody.applyImpulseAtPoint(A,Q,!this._explicitSleep)}applyTorqueImpulse(A){if(!this._requireNotRemoved("applyTorqueImpulse"))return;if(!this._requireCreated("applyTorqueImpulse"))return;if(!this._requireDynamic("applyTorqueImpulse"))return;this._rigidBody.applyTorqueImpulse(A,!this._explicitSleep)}createAndAddChildCollider(A){if(!this._requireNotRemoved("createAndAddChildCollider"))return null;return this._simulation?new T9({...A,parentRigidBody:this,simulation:this._simulation}):this._createAndAddPendingChildCollider(A)}createAndAddChildColliders(A){let Q=[];return A.forEach((B)=>{let Y=this.createAndAddChildCollider(B);if(Y)Q.push(Y)}),Q}getCollidersByTag(A){let Q=[];for(let B of this._colliders)if(B.tag===A)Q.push(B);return Q}linkCollider(A){if(!this._requireNotRemoved("linkCollider"))return;if(A.parentRigidBody!==this)return n.error("RigidBody.linkCollider(): Collider cannot be linked because it is not a child of this rigid body!");this._colliders.add(A)}lockAllRotations(){if(!this._requireNotRemoved("lockAllRotations"))return;this.setEnabledRotations({x:!1,y:!1,z:!1})}lockAllPositions(){if(!this._requireNotRemoved("lockAllPositions"))return;this.setEnabledPositions({x:!1,y:!1,z:!1})}removeFromSimulation(){if(!this._requireNotRemoved("removeFromSimulation"))return;if(!this._rigidBody)return n.error("RigidBody.removeFromSimulation(): Rigid body does not exist in the simulation!");this._colliders.forEach((A)=>{A.removeFromSimulation()}),this._simulation.removeRawRigidBody(this._rigidBody),this._simulation=void 0,this._rigidBody=void 0}unlinkCollider(A){if(!this._requireNotRemoved("unlinkCollider"))return;if(!A.isRemoved)return n.error("RigidBody.unlinkCollider(): Collider is still simulated and therefore cannot be unlinked from this rigid body!");this._colliders.delete(A)}resetAngularVelocity(){if(!this._requireNotRemoved("resetAngularVelocity"))return;if(!this._requireCreated("resetAngularVelocity"))return;this.setAngularVelocity({x:0,y:0,z:0})}resetForces(){if(!this._requireNotRemoved("resetForces"))return;if(!this._requireCreated("resetForces"))return;this._rigidBody.resetForces(!this._explicitSleep)}resetLinearVelocity(){if(!this._requireNotRemoved("resetLinearVelocity"))return;if(!this._requireCreated("resetLinearVelocity"))return;this.setLinearVelocity({x:0,y:0,z:0})}resetTorques(){if(!this._requireNotRemoved("resetTorques"))return;if(!this._requireCreated("resetTorques"))return;this._rigidBody.resetTorques(!this._explicitSleep)}sleep(){if(!this._requireNotRemoved("sleep"))return;this.setSleeping(!0)}wakeUp(){if(!this._requireNotRemoved("wakeUp"))return;this.setSleeping(!1)}_applyRigidBodyOptions(A){[["additionalMass",this.setAdditionalMass.bind(this)],["additionalMassProperties",this.setAdditionalMassProperties.bind(this)],["additionalSolverIterations",this.setAdditionalSolverIterations.bind(this)],["angularDamping",this.setAngularDamping.bind(this)],["angularVelocity",this.setAngularVelocity.bind(this)],["dominanceGroup",this.setDominanceGroup.bind(this)],["ccdEnabled",this.setCcdEnabled.bind(this)],["enabled",this.setEnabled.bind(this)],["enabledPositions",this.setEnabledPositions.bind(this)],["enabledRotations",this.setEnabledRotations.bind(this)],["gravityScale",this.setGravityScale.bind(this)],["linearDamping",this.setLinearDamping.bind(this)],["linearVelocity",this.setLinearVelocity.bind(this)],["position",this.setPosition.bind(this)],["rotation",this.setRotation.bind(this)],["sleeping",this.setSleeping.bind(this)],["softCcdPrediction",this.setSoftCcdPrediction.bind(this)]].forEach(([B,Y])=>{if(B in A)Y(A[B])})}_autoAddToSimulation(A){if(A.colliders)this._createAndAddPendingChildColliders(A.colliders);if(A.simulation)this.addToSimulation(A.simulation)}_createAndAddPendingChildCollider(A){if(!this._requireNotRemoved("createAndAddPendingChildCollider"))return null;if(!this._requireNotSimulated("createAndAddPendingChildCollider"))return null;let Q=new T9(A);return this._colliders.add(Q),Q}_createAndAddPendingChildColliders(A){let Q=[];return A.forEach((B)=>{let Y=this._createAndAddPendingChildCollider(B);if(Y)Q.push(Y)}),Q}_createRigidBodyDesc(A){let Q=A.type??kWA;return{["dynamic"]:()=>WB.RigidBodyDesc.dynamic(),["fixed"]:()=>WB.RigidBodyDesc.fixed(),["kinematic_position"]:()=>WB.RigidBodyDesc.kinematicPositionBased(),["kinematic_velocity"]:()=>WB.RigidBodyDesc.kinematicVelocityBased()}[Q]()}_requireCreated(A){if(!this._rigidBody||!this._simulation)n.error(`RigidBody._requireCreated(): Rigid body has not been created and therefore does not support the invoked method: ${A}()`);return!!this._rigidBody&&!!this._simulation}_requireDynamic(A){if(!this.isDynamic)n.error(`RigidBody._requireDynamic(): Rigid body is not dynamic and therefore does not support the invoked method: ${A}()`);return this.isDynamic}_requireKinematic(A){if(!this.isKinematic)n.error(`RigidBody._requireKinematic(): Rigid body is not kinematic and therefore does not support the invoked method: ${A}()`);return this.isKinematic}_requireNotKinematicPositionBased(A){if(this.isKinematicPositionBased)n.error(`RigidBody._requireNotKinematicPositionBased(): Rigid body is kinematic position based and therefore does not support the invoked method: ${A}()`);return!this.isKinematicPositionBased}_requireNotRemoved(A){if(!this._rigidBody&&!this._rigidBodyDesc)n.error(`RigidBody._requireNotRemoved(): Rigid body has been removed and therefore does not support the invoked method: ${A}()`);return!!this._rigidBody||!!this._rigidBodyDesc}_requireNotSimulated(A){if(this.isSimulated)n.error(`RigidBody._requireNotSimulated(): Rigid body is simulated and therefore does not support the invoked method: ${A}()`);return!this.isSimulated}_isNegligibleVector(A){return Math.abs(A.x){J[J.Average=0]="Average";J[J.Min=1]="Min";J[J.Multiply=2]="Multiply";J[J.Max=3]="Max"})(Wf||={});var nU;((Z)=>{Z.NONE="none";Z.BALL="ball";Z.BLOCK="block";Z.CAPSULE="capsule";Z.CONE="cone";Z.CYLINDER="cylinder";Z.ROUND_CYLINDER="round-cylinder";Z.TRIMESH="trimesh";Z.VOXELS="voxels";Z.WEDGE="wedge"})(nU||={});class T9 extends FQ{_collider;_colliderDesc;_onCollision;_parentRigidBody;_relativePosition={x:0,y:0,z:0};_relativeRotation={x:0,y:0,z:0,w:1};_scale={x:1,y:1,z:1};_shape;_simulation;_tag;constructor(A){super();this._colliderDesc=this._createColliderDesc(A),this._shape=A.shape,this._applyColliderOptions(A),this._autoAddToSimulation(A)}static optionsFromBlockHalfExtents(A){return{shape:"block",halfExtents:A}}static optionsFromModelUri(A,Q=1,B){Q=typeof Q==="number"?{x:Q,y:Q,z:Q}:Q;let Y=TY.instance.getBoundingBox(A),J=Y.max.x-Y.min.x,C=Y.max.y-Y.min.y,X=Y.max.z-Y.min.z,G=J*Q.x,F=C*Q.y,W=X*Q.z,Z=Math.max(G,W),U=Math.min(G,W),$=Z/U,E=Z/F,K=Z/2,I=(M)=>Math.max(0.01,M),V=()=>({shape:"block",halfExtents:{x:I(G/2),y:I(F/2),z:I(W/2)}}),H=()=>({shape:"round-cylinder",radius:I(K),halfHeight:I(F/2),borderRadius:I(K*0.1)}),D=()=>{let M=TY.instance.getTrimesh(A,Q);if(!M)return;return{shape:"trimesh",vertices:M.vertices,indices:M.indices}},L=()=>({shape:"wedge",extents:{x:G,y:F,z:W}}),z=()=>({shape:"capsule",radius:I(K),halfHeight:I(F/2-K)});if(B)switch(B){case"block":return V();case"capsule":return z();case"round-cylinder":return H();case"trimesh":{let M=D();if(!M){n.error(`Collider.optionsFromModelUri(): Failed to create trimesh options for model ${A}, falling back to generic shape!`);break}return M}case"wedge":return L();default:n.warning(`Collider.optionsFromModelUri(): Preferred shape ${B} is not yet supported with Collider.optionsFromModelUri(), defaulting to generic shape!`)}if($>2)return V();if(E>1.5)return H();return z()}get bounciness(){if(!this._requireNotRemoved("bounciness"))return 0;return this._collider?this._collider.restitution():this._colliderDesc.restitution}get bouncinessCombineRule(){if(!this._requireNotRemoved("bouncinessCombineRule"))return 0;return this._collider?this._collider.restitutionCombineRule():this._colliderDesc.restitutionCombineRule}get collisionGroups(){if(!this._requireNotRemoved("collisionGroups"))return{belongsTo:[],collidesWith:[]};return this._collider?TC.decodeRawCollisionGroups(this._collider.collisionGroups()):TC.decodeRawCollisionGroups(this._colliderDesc.collisionGroups)}get friction(){if(!this._requireNotRemoved("friction"))return 0;return this._collider?this._collider.friction():this._colliderDesc.friction}get frictionCombineRule(){if(!this._requireNotRemoved("frictionCombineRule"))return 0;return this._collider?this._collider.frictionCombineRule():this._colliderDesc.frictionCombineRule}get isEnabled(){if(!this._requireNotRemoved("isEnabled"))return!1;return this._collider?this._collider.isEnabled():this._colliderDesc.enabled}get isRemoved(){return!this._collider&&!this._colliderDesc}get isSensor(){if(!this._requireNotRemoved("isSensor"))return!1;return this._collider?this._collider.isSensor():this._colliderDesc.isSensor}get isSimulated(){if(!this._requireNotRemoved("isSimulated"))return!1;return!!this._collider}get isBall(){return this.shape==="ball"}get isBlock(){return this.shape==="block"}get isCapsule(){return this.shape==="capsule"}get isCone(){return this.shape==="cone"}get isCylinder(){return this.shape==="cylinder"}get isNone(){return this.shape==="none"}get isRoundCylinder(){return this.shape==="round-cylinder"}get isTrimesh(){return this.shape==="trimesh"}get isVoxel(){return this.shape==="voxels"}get isWedge(){return this.shape==="wedge"}get parentRigidBody(){if(!this._requireNotRemoved("parentRigidBody"))return;return this._parentRigidBody}get rawCollider(){if(!this._requireNotRemoved("rawCollider"))return;return this._collider}get rawShape(){if(!this._requireNotRemoved("rawShape"))return;return this._collider?this._collider.shape:this._colliderDesc.shape}get relativePosition(){if(!this._requireNotRemoved("relativePosition"))return{x:0,y:0,z:0};return this._relativePosition}get relativeRotation(){if(!this._requireNotRemoved("relativeRotation"))return{x:0,y:0,z:0,w:1};return this._relativeRotation}get scale(){if(!this._requireNotRemoved("scale"))return{x:1,y:1,z:1};return this._scale}get shape(){if(!this._requireNotRemoved("shape"))return"none";return this._shape}get tag(){if(!this._requireNotRemoved("tag"))return;return this._tag}setBounciness(A){if(!this._requireNotRemoved("setBounciness"))return;this._collider?this._collider.setRestitution(A):this._colliderDesc.setRestitution(A)}setBouncinessCombineRule(A){if(!this._requireNotRemoved("setBouncinessCombineRule"))return;this._collider?this._collider.setRestitutionCombineRule(A):this._colliderDesc.setRestitutionCombineRule(A)}setCollisionGroups(A){if(!this._requireNotRemoved("setCollisionGroups"))return;let Q=TC.buildRawCollisionGroups(A);this._collider?this._collider.setCollisionGroups(Q):this._colliderDesc.setCollisionGroups(Q)}setEnabled(A){if(!this._requireNotRemoved("setEnabled"))return;this._collider?this._collider.setEnabled(A):this._colliderDesc.setEnabled(A)}setFriction(A){if(!this._requireNotRemoved("setFriction"))return;this._collider?this._collider.setFriction(A):this._colliderDesc.setFriction(A)}setFrictionCombineRule(A){if(!this._requireNotRemoved("setFrictionCombineRule"))return;this._collider?this._collider.setFrictionCombineRule(A):this._colliderDesc.setFrictionCombineRule(A)}setHalfExtents(A){if(!this._requireSimulated("setHalfExtents"))return;if(!this._requireNotRemoved("setHalfExtents"))return;if(this.shape!=="block")return n.error("Collider.setHalfExtents(): Collider is not a block collider!");this._collider.setHalfExtents(A)}setHalfHeight(A){if(!this._requireSimulated("setHalfHeight"))return;if(!this._requireNotRemoved("setHalfHeight"))return;if(this.shape!=="capsule"&&this.shape!=="cone"&&this.shape!=="cylinder"&&this.shape!=="round-cylinder")return n.error("Collider.setHalfHeight(): Collider is not a capsule, cone, cylinder, or round cylinder collider!");this._collider.setHalfHeight(A)}setMass(A){if(!this._requireNotRemoved("setMass"))return;this._collider?this._collider.setMass(A):this._colliderDesc.setMass(A)}setOnCollision(A){if(!this._requireNotRemoved("setOnCollision"))return;if(this._onCollision=A,this.isSimulated)if(this.enableCollisionEvents(!!A),A)this._simulation.colliderMap.setColliderCollisionCallback(this,A);else this._simulation.colliderMap.removeColliderCollisionCallback(this)}setRadius(A){if(!this._requireSimulated("setRadius"))return;if(!this._requireNotRemoved("setRadius"))return;if(this.shape!=="ball"&&this.shape!=="capsule"&&this.shape!=="cylinder"&&this.shape!=="round-cylinder")return n.error("Collider.setRadius(): Collider is not a ball, capsule, cylinder, or round cylinder collider!");this._collider.setRadius(A)}setRelativeRotation(A){if(!this._requireNotRemoved("setRelativeRotation"))return;this._relativeRotation=A,this._collider?this._collider.parent()?this._collider.setRotationWrtParent(A):this._collider.setRotation(A):this._colliderDesc.setRotation(A)}setRelativePosition(A){if(!this._requireNotRemoved("setRelativePosition"))return;this._relativePosition=A,this._collider?this._collider.parent()?this._collider.setTranslationWrtParent(A):this._collider.setTranslation(A):this._colliderDesc.setTranslation(A.x,A.y,A.z)}setSensor(A){if(!this._requireNotRemoved("setSensor"))return;this._collider?this._collider.setSensor(A):this._colliderDesc.setSensor(A)}setTag(A){if(!this._requireNotRemoved("setTag"))return;this._tag=A}setVoxel(A,Q){if(!this._requireNotRemoved("setVoxel"))return;if(!this._requireSimulated("setVoxel"))return;if(this.shape!=="voxels")return n.error("Collider.setVoxel(): Collider is not a voxels collider!");this._collider.setVoxel(A.x,A.y,A.z,Q)}addToSimulation(A,Q){if(!this._requireNotRemoved("addToSimulation"))return;if(!this._requireUnsimulated("addToSimulation"))return;if(Q){if(!Q.isSimulated)return n.error("Collider.addToSimulation(): Rigid body must be simulated before adding a collider to it!");if(Q.type==="dynamic"&&this.shape==="trimesh")n.warning("Collider.addToSimulation(): Trimesh colliders are strongly discouraged to be used with dynamic rigid bodies, they will not contribute any mass!")}if(this._simulation=A,this._parentRigidBody=Q,this._collider=this._simulation.createRawCollider(this._colliderDesc,Q?.rawRigidBody),this._colliderDesc=void 0,Q)Q.linkCollider(this);if(this._onCollision)this.setOnCollision(this._onCollision)}combineVoxelStates(A){if(!this._requireNotRemoved("combineVoxelStates"))return;if(!this._requireSimulated("combineVoxelStates"))return;if(!A.isSimulated)return n.error("Collider.combineVoxelStates(): Other collider is not simulated!");if(this.shape!=="voxels")return n.error("Collider.combineVoxelStates(): Collider is not a voxels collider!");if(A.shape!=="voxels")return n.error("Collider.combineVoxelStates(): Other collider is not a voxels collider!");this._collider.combineVoxelStates(A.rawCollider,0,0,0)}enableCollisionEvents(A){if(!this._requireNotRemoved("enableCollisionEvents"))return;let Q=this._collider?this._collider.activeEvents():this._colliderDesc.activeEvents,B=A?Q|WB.ActiveEvents.COLLISION_EVENTS:Q&~WB.ActiveEvents.COLLISION_EVENTS;(this._collider??this._colliderDesc).setActiveEvents(B),this._setActiveCollisionTypes()}enableContactForceEvents(A){if(!this._requireNotRemoved("enableContactForceEvents"))return;let Q=this._collider?this._collider.activeEvents():this._colliderDesc.activeEvents,B=A?Q|WB.ActiveEvents.CONTACT_FORCE_EVENTS:Q&~WB.ActiveEvents.CONTACT_FORCE_EVENTS;(this._collider??this._colliderDesc).setActiveEvents(B),this._setActiveCollisionTypes()}propagateVoxelChange(A,Q){if(!this._requireNotRemoved("propagateVoxelChange"))return;if(!this._requireSimulated("propagateVoxelChange"))return;if(!A.isSimulated)return n.error("Collider.propagateVoxelChange(): Other collider is not simulated!");if(this.shape!=="voxels")return n.error("Collider.propagateVoxelChange(): Collider is not a voxels collider!");if(A.shape!=="voxels")return n.error("Collider.propagateVoxelChange(): Other collider is not a voxels collider!");this._collider.propagateVoxelChange(A.rawCollider,Q.x,Q.y,Q.z,0,0,0)}removeFromSimulation(){if(!this._requireNotRemoved("removeFromSimulation"))return;if(!this._requireSimulated("removeFromSimulation"))return;if(this._simulation.removeRawCollider(this._collider),this._simulation=void 0,this._collider=void 0,this._parentRigidBody)this._parentRigidBody.unlinkCollider(this);this._parentRigidBody=void 0}setScale(A){if(!this._requireNotRemoved("scale"))return;let Q={x:A.x/this._scale.x,y:A.y/this._scale.y,z:A.z/this._scale.z};this.setRelativePosition({x:this.relativePosition.x*Q.x,y:this.relativePosition.y*Q.y,z:this.relativePosition.z*Q.z});let B=Math.max(this._scale.x,this._scale.z),J=Math.max(A.x,A.z)/B;switch(this._scale=A,this._shape){case"ball":{if(this._collider)this._collider.setRadius(this._collider.radius()*J);else this._colliderDesc.shape.radius*=J;return}case"block":{if(this._collider){let C=this._collider.halfExtents();this._collider.setHalfExtents({x:C.x*Q.x,y:C.y*Q.y,z:C.z*Q.z})}else this._colliderDesc.shape.halfExtents.x*=Q.x,this._colliderDesc.shape.halfExtents.y*=Q.y,this._colliderDesc.shape.halfExtents.z*=Q.z;return}case"capsule":{if(this._collider)this._collider.setHalfHeight(this._collider.halfHeight()*Q.y),this._collider.setRadius(this._collider.radius()*J);else this._colliderDesc.shape.halfHeight*=Q.y,this._colliderDesc.shape.radius*=J;return}case"cone":{if(this._collider)this._collider.setHalfHeight(this._collider.halfHeight()*Q.y),this._collider.setRadius(this._collider.radius()*J);else this._colliderDesc.shape.halfHeight*=Q.y,this._colliderDesc.shape.radius*=J;return}case"cylinder":{if(this._collider)this._collider.setHalfHeight(this._collider.halfHeight()*Q.y),this._collider.setRadius(this._collider.radius()*J);else this._colliderDesc.shape.halfHeight*=Q.y,this._colliderDesc.shape.radius*=J;return}case"round-cylinder":{if(this._collider)this._collider.setHalfHeight(this._collider.halfHeight()*Q.y),this._collider.setRoundRadius(this._collider.roundRadius()*J),this._collider.setRadius(this._collider.radius()*J);else this._colliderDesc.shape.halfHeight=this._colliderDesc.shape.halfHeight*Q.y,this._colliderDesc.shape.borderRadius=this._colliderDesc.shape.borderRadius*J,this._colliderDesc.shape.radius=this._colliderDesc.shape.radius*J;return}case"trimesh":{n.error("Collider.setScale(): Trimesh colliders cannot be scaled at runtime!");return}case"voxels":{n.error("Collider.setScale(): Voxels colliders cannot be scaled!");return}case"wedge":{n.error("Collider.setScale(): Wedge colliders cannot be scaled!");return}default:n.fatalError(`Collider.setScale(): ${this._shape} is not a valid collider shape!`)}}_applyColliderOptions(A){[["bounciness",this.setBounciness.bind(this)],["bouncinessCombineRule",this.setBouncinessCombineRule.bind(this)],["collisionGroups",this.setCollisionGroups.bind(this)],["enabled",this.setEnabled.bind(this)],["friction",this.setFriction.bind(this)],["frictionCombineRule",this.setFrictionCombineRule.bind(this)],["isSensor",this.setSensor.bind(this)],["mass",this.setMass.bind(this)],["onCollision",this.setOnCollision.bind(this)],["relativePosition",this.setRelativePosition.bind(this)],["relativeRotation",this.setRelativeRotation.bind(this)],["tag",this.setTag.bind(this)]].forEach(([B,Y])=>{if(A[B]!==void 0)Y.call(this,A[B])})}_autoAddToSimulation(A){if(A.simulation)this.addToSimulation(A.simulation,A.parentRigidBody)}_buildWedgeConvexHullVertices(A){let{x:Q,y:B,z:Y}=A,J=Q/2,C=Y/2,X=B/2;return new Float32Array([-J,0-X,-C,J,0-X,-C,J,0-X,C,-J,0-X,C,-J,B-X,-C,J,B-X,-C])}_createColliderDesc(A){let{shape:Q,flags:B}=A;switch(Q){case"ball":{if(!A.radius)n.fatalError("Ball collider must have a radius!");return WB.ColliderDesc.ball(A.radius)}case"block":{if(!A.halfExtents)n.fatalError("Block collider must have halfExtents!");return WB.ColliderDesc.cuboid(A.halfExtents.x,A.halfExtents.y,A.halfExtents.z)}case"capsule":{if(!A.halfHeight||!A.radius)n.fatalError("Capsule collider must have halfHeight and radius!");return WB.ColliderDesc.capsule(A.halfHeight,A.radius)}case"cone":{if(!A.radius||!A.halfHeight)n.fatalError("Cone collider must have radius and halfHeight!");return WB.ColliderDesc.cone(A.halfHeight,A.radius)}case"cylinder":{if(!A.radius||!A.halfHeight)n.fatalError("Cylinder collider must have radius and halfHeight!");return WB.ColliderDesc.cylinder(A.halfHeight,A.radius)}case"round-cylinder":{if(!A.radius||!A.halfHeight||!A.borderRadius)n.fatalError("Round cylinder collider must have radius, halfHeight, and borderRadius!");return WB.ColliderDesc.roundCylinder(A.halfHeight,A.radius,A.borderRadius)}case"trimesh":{if(!A.indices||!A.vertices)n.fatalError("Trimesh collider must have vertices and indices!");return WB.ColliderDesc.trimesh(A.vertices,A.indices,B)}case"voxels":{if(!A.coordinates||!A.size)n.fatalError("Voxels collider must have coordinates and size!");return WB.ColliderDesc.voxels(this._coordinatesToInt32Array(A.coordinates),A.size)}case"wedge":{if(!A.extents)n.fatalError("Wedge collider must have extents!");let Y=this._buildWedgeConvexHullVertices(A.extents),J=WB.ColliderDesc.convexHull(Y);if(!J)throw n.fatalError("Failed to create convex hull for wedge collider!"),Error("Convex hull creation failed");return J}default:n.fatalError(`Collider._createColliderDesc(): ${Q} is not a valid collider shape!`)}}_requireSimulated(A){if(!this.isSimulated)n.error(`Collider._requireSimulated(): Collider is not simulated, invoked method: ${A}()`);return this.isSimulated}_requireUnsimulated(A){if(this.isSimulated)n.error(`Collider._requireUnsimulated(): Collider is already simulated, invoked method: ${A}()`);return!this.isSimulated}_requireNotRemoved(A){if(this.isRemoved)n.error(`Collider._requireNotRemoved(): Collider is removed, invoked method: ${A}()`);return!this.isRemoved}_setActiveCollisionTypes(){(this._collider??this._colliderDesc).setActiveCollisionTypes(WB.ActiveCollisionTypes.DYNAMIC_DYNAMIC|WB.ActiveCollisionTypes.DYNAMIC_KINEMATIC|WB.ActiveCollisionTypes.DYNAMIC_FIXED|WB.ActiveCollisionTypes.KINEMATIC_KINEMATIC|WB.ActiveCollisionTypes.KINEMATIC_FIXED)}_coordinatesToInt32Array(A){let Q=new Int32Array(A.length*3);for(let B=0;B{Y.ENTITY_COLLISION="BLOCK_TYPE.ENTITY_COLLISION";Y.ENTITY_CONTACT_FORCE="BLOCK_TYPE.ENTITY_CONTACT_FORCE";Y.INTERACT="BLOCK_TYPE.INTERACT"})(Zf||={});class D8 extends FQ{_id;_customColliderOptions;_isLiquid;_lightLevel;_name;_textureUri;constructor(A={id:-1,textureUri:"textures/missing.png",name:"Unknown"}){if(A.id<0)n.fatalError("BlockType.constructor(): BlockType id not set.");if(!U7.instance.hasBlockTexture(A.textureUri))n.fatalError(`BlockType.constructor(): Block texture ${A.textureUri} not found. If it is a cubemap texture, make sure every face is present in the folder (+x.png, -x.png, +y.png, -y.png, +z.png, -z.png).`);super();this._id=A.id,this._customColliderOptions=A.customColliderOptions,this._isLiquid=A.isLiquid??!1,this._name=A.name,this._textureUri=A.textureUri,this._lightLevel=Math.min(A.lightLevel??0,15)}get id(){return this._id}get colliderOptions(){return this._customColliderOptions??{shape:"voxels"}}get isLiquid(){return this._isLiquid}get isMeshable(){return!this._customColliderOptions}get isTrimesh(){return this.colliderOptions.shape==="trimesh"}get isVoxel(){return this.colliderOptions.shape==="voxels"}get lightLevel(){return this._lightLevel}get name(){return this._name}get textureUri(){return this._textureUri}createCollider(A){let Q=this.colliderOptions.shape==="voxels"?new T9({...this.colliderOptions,coordinates:A.map((B)=>B.globalCoordinate),size:{x:1,y:1,z:1}}):new T9({...this.colliderOptions,...this._buildTrimeshFromBlockPlacements(A)});if(this.isLiquid)Q.setSensor(!0);if(this.hasListeners("BLOCK_TYPE.ENTITY_COLLISION")||this.isLiquid)Q.enableCollisionEvents(!0);if(this.hasListeners("BLOCK_TYPE.ENTITY_CONTACT_FORCE"))Q.enableContactForceEvents(!0);if(TC.isDefaultCollisionGroups(Q.collisionGroups))Q.setCollisionGroups({belongsTo:[1],collidesWith:[65535&~1]});return Q}interact(A,Q){if(!A.world)return;this.emitWithWorld(A.world,"BLOCK_TYPE.INTERACT",{blockType:this,player:A,raycastHit:Q})}serialize(){return CQ.serializeBlockType(this)}_buildTrimeshFromBlockPlacements(A){let Q=this.colliderOptions,B=Q.vertices,Y=Q.indices;if(!B||!Y)n.fatalError(`BlockType._buildTrimeshFromCoordinates(): Block type id ${this.id} (${this.name}) is a trimesh but is missing vertices or indices!`);if(B.length%3!==0||Y.length%3!==0)n.fatalError(`BlockType._buildTrimeshFromCoordinates(): Block type id ${this.id} (${this.name}) has an invalid number of vertices or indices! Expected a multiple of 3, got ${B.length} and ${Y.length}.`);let J=B.length/3,C=A.length,X=new Float32Array(B.length*C),G=new Uint32Array(Y.length*C);for(let F=0;FQ.REGISTER_BLOCK_TYPE="BLOCK_TYPE_REGISTRY.REGISTER_BLOCK_TYPE")($f||={});class nH extends FQ{_blockTypes=new Map;_world;constructor(A){super();this._world=A}get world(){return this._world}getAllBlockTypes(){return Array.from(this._blockTypes.values())}getBlockType(A){let Q=this._blockTypes.get(A);if(!Q)n.fatalError(`BlockTypeRegistry.getBlockType(): BlockType with id ${A} not found.`);return Q}registerGenericBlockType(A){let B=new class extends D8{constructor(Y=A){super(Y)}};return this.registerBlockType(B),B}registerBlockType(A){this._blockTypes.set(A.id,A),this.emitWithWorld(this._world,"BLOCK_TYPE_REGISTRY.REGISTER_BLOCK_TYPE",{blockTypeRegistry:this,id:A.id,blockType:A})}serialize(){return CQ.serializeBlockTypeRegistry(this)}}var pb={};x6(pb,{worldSchema:()=>lb,worldPacketDefinition:()=>wEA,vectorSchema:()=>nQ,vectorBooleanSchema:()=>XGB,uiSchema:()=>db,uiPacketDefinition:()=>zEA,uiDatasSchema:()=>cb,uiDatasPacketDefinition:()=>REA,uiDataSendPacketDefinition:()=>GEA,uiDataSchema:()=>DD,syncResponseSchema:()=>ub,syncResponsePacketDefinition:()=>MEA,syncRequestSchema:()=>Eb,syncRequestPacketDefinition:()=>XEA,stateRequestSchema:()=>Ub,stateRequestPacketDefinition:()=>CEA,sceneUIsSchema:()=>mb,sceneUIsPacketDefinition:()=>qEA,sceneUISchema:()=>bb,rgbColorSchema:()=>SY,registeredPackets:()=>Zw,quaternionSchema:()=>ND,playersSchema:()=>fb,playersPacketDefinition:()=>LEA,playerSchema:()=>xb,physicsDebugRenderSchema:()=>hb,physicsDebugRenderPacketDefinition:()=>DEA,physicsDebugRaycastsSchema:()=>gb,physicsDebugRaycastsPacketDefinition:()=>NEA,physicsDebugRaycastSchema:()=>yb,particleEmittersSchema:()=>vb,particleEmittersPacketDefinition:()=>HEA,particleEmitterSchema:()=>_b,outlineSchema:()=>jb,outboundPackets:()=>Ww,notificationPermissionRequestSchema:()=>kb,notificationPermissionRequestPacketDefinition:()=>IEA,modelNodeOverrideSchema:()=>wb,modelAnimationSchema:()=>Rb,lightsSchema:()=>Sb,lightsPacketDefinition:()=>VEA,lightSchema:()=>Tb,isValidPacket:()=>FGB,inputSchema:()=>$b,inputPacketDefinition:()=>JEA,inboundPackets:()=>Fw,hexColorSchema:()=>Wb,heartbeatSchema:()=>Fb,heartbeatPacketDefinition:()=>QEA,framePacketBuffer:()=>CGB,entitySchema:()=>Ob,entitiesSchema:()=>Pb,entitiesPacketDefinition:()=>KEA,definePacket:()=>HQ,debugConfigSchema:()=>Zb,debugConfigPacketDefinition:()=>YEA,createPacketBufferUnframer:()=>JGB,createPacket:()=>YGB,connectionSchema:()=>Gb,connectionPacketDefinition:()=>AEA,chunksSchema:()=>zb,chunksPacketDefinition:()=>EEA,chunkSchema:()=>Mb,chatMessagesSchema:()=>qb,chatMessagesPacketDefinition:()=>UEA,chatMessageSendPacketDefinition:()=>BEA,chatMessageSchema:()=>HD,cameraSchema:()=>Lb,cameraPacketDefinition:()=>$EA,blocksSchema:()=>Hb,blocksPacketDefinition:()=>WEA,blockTypesSchema:()=>Nb,blockTypesPacketDefinition:()=>ZEA,blockTypeSchema:()=>Db,blockSchema:()=>Ib,bidirectionalPackets:()=>Gw,audiosSchema:()=>Vb,audiosPacketDefinition:()=>FEA,audioSchema:()=>Kb,PacketId:()=>nB});var Gw={};x6(Gw,{heartbeatPacketDefinition:()=>QEA,connectionPacketDefinition:()=>AEA});var Cb=qA(tUA(),1);class Xb extends Cb.default{static instance=new Cb.default}var ID=4,eUA=33554432,nB;((_)=>{_[_.SYNC_REQUEST=0]="SYNC_REQUEST";_[_.INPUT=1]="INPUT";_[_.STATE_REQUEST=2]="STATE_REQUEST";_[_.CHAT_MESSAGE_SEND=3]="CHAT_MESSAGE_SEND";_[_.UI_DATA_SEND=4]="UI_DATA_SEND";_[_.SYNC_RESPONSE=32]="SYNC_RESPONSE";_[_.AUDIOS=33]="AUDIOS";_[_.BLOCKS=34]="BLOCKS";_[_.BLOCK_TYPES=35]="BLOCK_TYPES";_[_.CHAT_MESSAGES=36]="CHAT_MESSAGES";_[_.CHUNKS=37]="CHUNKS";_[_.ENTITIES=38]="ENTITIES";_[_.WORLD=39]="WORLD";_[_.CAMERA=40]="CAMERA";_[_.UI=41]="UI";_[_.UI_DATAS=42]="UI_DATAS";_[_.SCENE_UIS=43]="SCENE_UIS";_[_.LIGHTS=44]="LIGHTS";_[_.PLAYERS=45]="PLAYERS";_[_.PARTICLE_EMITTERS=46]="PARTICLE_EMITTERS";_[_.NOTIFICATION_PERMISSION_REQUEST=47]="NOTIFICATION_PERMISSION_REQUEST";_[_.CONNECTION=116]="CONNECTION";_[_.HEARTBEAT=117]="HEARTBEAT";_[_.DEBUG_CONFIG=128]="DEBUG_CONFIG";_[_.PHYSICS_DEBUG_RENDER=192]="PHYSICS_DEBUG_RENDER";_[_.PHYSICS_DEBUG_RAYCASTS=193]="PHYSICS_DEBUG_RAYCASTS"})(nB||={});function YGB(A,Q,B){if(!A.validate(Q))throw Error(`Invalid payload for packet with id ${A.id}. Error: ${Xb.instance.errorsText(A.validate.errors)}`);let Y=[A.id,Q];if(typeof B==="number")Y.push(B);return Y}function JGB(A){let Q=new Uint8Array(524288),B=new DataView(Q.buffer,Q.byteOffset,Q.byteLength),Y=0;return(J)=>{if(Y+J.length>Q.length){let X=Math.max(Q.length*2,Y+J.length);if(X>eUA){console.error(`Unframer packet buffer exceeded maximum size of ${eUA} bytes, discarding packet...`),Y=0;return}let G=new Uint8Array(X);G.set(Q.subarray(0,Y)),Q=G,B=new DataView(Q.buffer,Q.byteOffset,Q.byteLength)}Q.set(J,Y),Y+=J.length;let C=0;while(Y-C>=ID){let X=B.getUint32(C,!1),G=ID+X;if(Y-C0){if(Y>C)Q.copyWithin(0,C,Y);Y-=C}}}function HQ(A,Q){return{id:A,schema:Q,validate:Xb.instance.compile(Q)}}function CGB(A){let Q=new Uint8Array(ID+A.length);return new DataView(Q.buffer).setUint32(0,A.length,!1),Q.set(A,ID),Q}var Gb={type:"object",properties:{i:{type:"string",nullable:!0},k:{type:"boolean",nullable:!0}},additionalProperties:!1};var AEA=HQ(116,Gb);var Fb={type:"null",nullable:!0};var QEA=HQ(117,Fb);var Fw={};x6(Fw,{uiDataSendPacketDefinition:()=>GEA,syncRequestPacketDefinition:()=>XEA,stateRequestPacketDefinition:()=>CEA,inputPacketDefinition:()=>JEA,debugConfigPacketDefinition:()=>YEA,chatMessageSendPacketDefinition:()=>BEA});var Wb={type:"string",pattern:"^[0-9A-Fa-f]{6}$"};var HD={type:"object",properties:{m:{type:"string"},c:{...Wb,nullable:!0},p:{type:"string",nullable:!0}},required:["m"],additionalProperties:!1};var BEA=HQ(3,HD);var Zb={type:"object",properties:{pdr:{type:"boolean",nullable:!0}},additionalProperties:!1};var YEA=HQ(128,Zb);var nQ={type:"array",items:[{type:"number"},{type:"number"},{type:"number"}],minItems:3,maxItems:3};var $b={type:"object",properties:{"1":{type:"boolean",nullable:!0},"2":{type:"boolean",nullable:!0},"3":{type:"boolean",nullable:!0},"4":{type:"boolean",nullable:!0},"5":{type:"boolean",nullable:!0},"6":{type:"boolean",nullable:!0},"7":{type:"boolean",nullable:!0},"8":{type:"boolean",nullable:!0},"9":{type:"boolean",nullable:!0},"0":{type:"boolean",nullable:!0},w:{type:"boolean",nullable:!0},a:{type:"boolean",nullable:!0},s:{type:"boolean",nullable:!0},d:{type:"boolean",nullable:!0},q:{type:"boolean",nullable:!0},e:{type:"boolean",nullable:!0},r:{type:"boolean",nullable:!0},f:{type:"boolean",nullable:!0},z:{type:"boolean",nullable:!0},x:{type:"boolean",nullable:!0},c:{type:"boolean",nullable:!0},v:{type:"boolean",nullable:!0},u:{type:"boolean",nullable:!0},i:{type:"boolean",nullable:!0},o:{type:"boolean",nullable:!0},j:{type:"boolean",nullable:!0},k:{type:"boolean",nullable:!0},l:{type:"boolean",nullable:!0},n:{type:"boolean",nullable:!0},m:{type:"boolean",nullable:!0},sp:{type:"boolean",nullable:!0},sh:{type:"boolean",nullable:!0},tb:{type:"boolean",nullable:!0},ml:{type:"boolean",nullable:!0},mr:{type:"boolean",nullable:!0},cp:{type:"number",nullable:!0},cy:{type:"number",nullable:!0},ird:{...nQ,nullable:!0},iro:{...nQ,nullable:!0},jd:{type:"number",nullable:!0},sq:{type:"number",nullable:!0}},additionalProperties:!1};var JEA=HQ(1,$b);var Ub={type:"object",properties:{},additionalProperties:!1};var CEA=HQ(2,Ub);var Eb={type:"null",nullable:!0};var XEA=HQ(0,Eb);var DD={type:"object",properties:{},additionalProperties:!0};var GEA=HQ(4,DD);var Ww={};x6(Ww,{worldPacketDefinition:()=>wEA,uiPacketDefinition:()=>zEA,uiDatasPacketDefinition:()=>REA,syncResponsePacketDefinition:()=>MEA,sceneUIsPacketDefinition:()=>qEA,playersPacketDefinition:()=>LEA,physicsDebugRenderPacketDefinition:()=>DEA,physicsDebugRaycastsPacketDefinition:()=>NEA,particleEmittersPacketDefinition:()=>HEA,notificationPermissionRequestPacketDefinition:()=>IEA,lightsPacketDefinition:()=>VEA,entitiesPacketDefinition:()=>KEA,chunksPacketDefinition:()=>EEA,chatMessagesPacketDefinition:()=>UEA,cameraPacketDefinition:()=>$EA,blocksPacketDefinition:()=>WEA,blockTypesPacketDefinition:()=>ZEA,audiosPacketDefinition:()=>FEA});var Kb={type:"object",properties:{i:{type:"number"},a:{type:"string",nullable:!0},cd:{type:"number",nullable:!0},d:{type:"number",nullable:!0},de:{type:"number",nullable:!0},di:{type:"number",minimum:0,nullable:!0},e:{type:"number",nullable:!0},l:{type:"boolean",nullable:!0},o:{type:"number",nullable:!0},p:{...nQ,nullable:!0},pa:{type:"boolean",nullable:!0},pl:{type:"boolean",nullable:!0},pr:{type:"number",minimum:0,nullable:!0},r:{type:"boolean",nullable:!0},rd:{type:"number",nullable:!0},s:{type:"number",nullable:!0},v:{type:"number",minimum:0,maximum:1,nullable:!0}},required:["i"],additionalProperties:!1};var Vb={type:"array",items:{...Kb}};var FEA=HQ(33,Vb);var Ib={type:"object",properties:{i:{type:"number"},c:nQ,r:{type:"number",nullable:!0}},required:["i","c"],additionalProperties:!1};var Hb={type:"array",items:{...Ib}};var WEA=HQ(34,Hb);var Db={type:"object",properties:{i:{type:"number"},l:{type:"boolean",nullable:!0},ll:{type:"number",nullable:!0},n:{type:"string",nullable:!0},t:{type:"string",nullable:!0},ti:{type:"array",items:{type:"number"},nullable:!0},tv:{type:"array",items:{type:"number"},nullable:!0}},required:["i"],additionalProperties:!1};var Nb={type:"array",items:{...Db}};var ZEA=HQ(35,Nb);var Lb={type:"object",properties:{cb:{type:"boolean",nullable:!0},m:{type:"number",nullable:!0},e:{type:"number",nullable:!0},et:{type:"number",nullable:!0},fo:{type:"number",nullable:!0},ffo:{type:"number",nullable:!0},fv:{type:"number",nullable:!0},h:{type:"array",items:{type:"string"},nullable:!0},mp:{type:"boolean",nullable:!0},my:{type:"boolean",nullable:!0},o:{...nQ,nullable:!0},p:{...nQ,nullable:!0},pt:{...nQ,nullable:!0},pl:{...nQ,nullable:!0},s:{type:"array",items:{type:"string"},nullable:!0},sa:{type:"number",nullable:!0},z:{type:"number",nullable:!0}},additionalProperties:!1};var qb={type:"array",items:{...HD}};var Mb={type:"object",properties:{c:nQ,b:{type:"array",items:{type:"number",minimum:0,maximum:255},minItems:4096,maxItems:4096,nullable:!0},r:{type:"array",items:{type:"number"},minItems:0,maxItems:8192,nullable:!0},rm:{type:"boolean",nullable:!0}},required:["c"],additionalProperties:!1};var zb={type:"array",items:{...Mb}};var SY={type:"array",items:[{type:"number",minimum:0,maximum:255},{type:"number",minimum:0,maximum:255},{type:"number",minimum:0,maximum:255}],minItems:3,maxItems:3};var Rb={type:"object",properties:{n:{type:"string"},b:{type:"number",nullable:!0},c:{type:"boolean",nullable:!0},fi:{type:"boolean",nullable:!0},fo:{type:"boolean",nullable:!0},l:{type:"number",nullable:!0},p:{type:"boolean",nullable:!0},pa:{type:"boolean",nullable:!0},pr:{type:"number",nullable:!0},r:{type:"boolean",nullable:!0},s:{type:"boolean",nullable:!0},w:{type:"number",nullable:!0}},required:["n"],additionalProperties:!1};var ND={type:"array",items:[{type:"number"},{type:"number"},{type:"number"},{type:"number"}],minItems:4,maxItems:4};var wb={type:"object",properties:{n:{type:"string"},ec:{...SY,nullable:!0},ei:{type:"number",nullable:!0},h:{type:"boolean",nullable:!0},p:{...nQ,nullable:!0},pi:{type:"number",nullable:!0},r:{...ND,nullable:!0},ri:{type:"number",nullable:!0},rm:{type:"boolean",nullable:!0},s:{...nQ,nullable:!0},si:{type:"number",nullable:!0}},required:["n"],additionalProperties:!1};var jb={type:"object",properties:{c:{...SY,nullable:!0},ci:{type:"number",nullable:!0},th:{type:"number",nullable:!0},o:{type:"number",nullable:!0},oc:{type:"boolean",nullable:!0}},required:[],additionalProperties:!1};var Ob={type:"object",properties:{i:{type:"number"},bh:{...nQ,nullable:!0},bt:{type:"string",nullable:!0},e:{type:"boolean",nullable:!0},ec:{...SY,nullable:!0},ei:{type:"number",nullable:!0},m:{type:"string",nullable:!0},ma:{type:"array",items:{...Rb},nullable:!0},mo:{type:"array",items:{...wb},nullable:!0},mt:{type:"string",nullable:!0},n:{type:"string",nullable:!0},o:{type:"number",nullable:!0},ol:{...jb,nullable:!0},p:{...nQ,nullable:!0},pi:{type:"number",nullable:!0},pe:{type:"number",nullable:!0},pn:{type:"string",nullable:!0},r:{...ND,nullable:!0},ri:{type:"number",nullable:!0},rm:{type:"boolean",nullable:!0},si:{type:"number",nullable:!0},sv:{...nQ,nullable:!0},t:{...SY,nullable:!0}},required:["i"],additionalProperties:!1};var Pb={type:"array",items:{...Ob}};var Tb={type:"object",properties:{i:{type:"number"},a:{type:"number",nullable:!0},e:{type:"number",nullable:!0},c:{...SY,nullable:!0},d:{type:"number",nullable:!0},n:{type:"number",nullable:!0},o:{...nQ,nullable:!0},p:{...nQ,nullable:!0},pe:{type:"number",minimum:0,maximum:1,nullable:!0},rm:{type:"boolean",nullable:!0},t:{type:"number",nullable:!0},te:{type:"number",nullable:!0},tp:{...nQ,nullable:!0}},required:["i"],additionalProperties:!1};var Sb={type:"array",items:{...Tb}};var kb={type:"null",nullable:!0};var _b={type:"object",properties:{i:{type:"number"},at:{type:"number",nullable:!0},b:{type:"number",nullable:!0},ce:{...SY,nullable:!0},cev:{...SY,nullable:!0},cs:{...SY,nullable:!0},csv:{...SY,nullable:!0},cie:{type:"number",nullable:!0},ciev:{type:"number",nullable:!0},cis:{type:"number",nullable:!0},cisv:{type:"number",nullable:!0},e:{type:"number",nullable:!0},en:{type:"string",nullable:!0},g:{...nQ,nullable:!0},l:{type:"number",nullable:!0},le:{type:"boolean",nullable:!0},lv:{type:"number",nullable:!0},mp:{type:"number",nullable:!0},o:{...nQ,nullable:!0},oe:{type:"number",nullable:!0},oev:{type:"number",nullable:!0},or:{type:"number",nullable:!0},ofr:{...nQ,nullable:!0},os:{type:"number",nullable:!0},osv:{type:"number",nullable:!0},p:{...nQ,nullable:!0},pa:{type:"boolean",nullable:!0},pv:{...nQ,nullable:!0},r:{type:"number",nullable:!0},rv:{type:"number",nullable:!0},rm:{type:"boolean",nullable:!0},se:{type:"number",nullable:!0},sev:{type:"number",nullable:!0},ss:{type:"number",nullable:!0},ssv:{type:"number",nullable:!0},t:{type:"boolean",nullable:!0},tu:{type:"string",nullable:!0},v:{...nQ,nullable:!0},vv:{...nQ,nullable:!0}},required:["i"],additionalProperties:!1};var vb={type:"array",items:{..._b}};var yb={type:"object",properties:{o:{...nQ},d:{...nQ},l:{type:"number"},h:{type:"boolean"}},required:["o","d","l","h"],additionalProperties:!1};var gb={type:"array",items:{...yb}};var hb={type:"object",properties:{v:{type:"array",items:{type:"number"}},c:{type:"array",items:{type:"number"}}},required:["v","c"],additionalProperties:!1};var xb={type:"object",properties:{i:{type:"string"},p:{type:"string",nullable:!0},rm:{type:"boolean",nullable:!0},u:{type:"string",nullable:!0}},required:["i"],additionalProperties:!1};var fb={type:"array",items:{...xb}};var bb={type:"object",properties:{i:{type:"number"},e:{type:"number",nullable:!0},o:{...nQ,nullable:!0},p:{...nQ,nullable:!0},rm:{type:"boolean",nullable:!0},s:{type:"object",nullable:!0},t:{type:"string",nullable:!0},v:{type:"number",nullable:!0}},required:["i"],additionalProperties:!1};var mb={type:"array",items:{...bb}};var ub={type:"object",properties:{r:{type:"number"},s:{type:"number"},p:{type:"number"},n:{type:"number"}},required:["r","s","p","n"],additionalProperties:!1};var db={type:"object",properties:{p:{type:"boolean",nullable:!0},pf:{type:"boolean",nullable:!0},u:{type:"string",nullable:!0},ua:{type:"array",items:{type:"string"},nullable:!0}},additionalProperties:!1};var cb={type:"array",items:{...DD}};var XGB={type:"array",items:[{type:"boolean"},{type:"boolean"},{type:"boolean"}],minItems:3,maxItems:3};var lb={type:"object",properties:{i:{type:"number"},ac:{...SY,nullable:!0},ai:{type:"number",nullable:!0},dc:{...SY,nullable:!0},di:{type:"number",nullable:!0},dp:{...nQ,nullable:!0},fc:{...SY,nullable:!0},ff:{type:"number",nullable:!0},fn:{type:"number",nullable:!0},n:{type:"string",nullable:!0},s:{type:"string",nullable:!0},si:{type:"number",nullable:!0},t:{type:"number",nullable:!0}},required:["i"],additionalProperties:!1};var $EA=HQ(40,Lb);var UEA=HQ(36,qb);var EEA=HQ(37,zb);var KEA=HQ(38,Pb);var VEA=HQ(44,Sb);var IEA=HQ(47,kb);var HEA=HQ(46,vb);var DEA=HQ(192,hb);var NEA=HQ(193,gb);var LEA=HQ(45,fb);var qEA=HQ(43,mb);var MEA=HQ(32,ub);var zEA=HQ(41,db);var REA=HQ(42,cb);var wEA=HQ(39,lb);var Zw=new Map,GGB={...Gw,...Fw,...Ww};for(let A of Object.values(GGB))if("id"in A&&"schema"in A){let Q=A;if(Zw.has(Q.id))throw Error(`Packet with id ${Q.id} is already registered.`);Zw.set(Q.id,Q)}function FGB(A){if(typeof A!=="object"||A===null||typeof A[0]!=="number"||A[0]<0||A[1]===void 0||A[2]!==void 0&&(typeof A[2]!=="number"||A[2]<0))return!1;let Q=Zw.get(A[0]);return!!Q&&Q.validate(A[1])}var gQ=pb;var kVA=qA(eEA(),1);import $Z from"fs";import TVA from"path";var a6B=qA(sKA(),1),o6B=qA(Bm(),1),t6B=qA(Jm(),1),UE=qA(qw(),1),$m=qA(QVA(),1);var BVA=UE.default;function y9(A){if(A===null)return"null";if(Array.isArray(A))return"array";return typeof A}function f7(A){return y9(A)==="object"}function e6B(A){return Array.isArray(A)&&A.length>0&&A.every((Q)=>("message"in Q))}function Um(A,Q){return A.length<124?A:Q}var YVA="graphql-transport-ws";var L8=((A)=>{return A[A.InternalServerError=4500]="InternalServerError",A[A.InternalClientError=4005]="InternalClientError",A[A.BadRequest=4400]="BadRequest",A[A.BadResponse=4004]="BadResponse",A[A.Unauthorized=4401]="Unauthorized",A[A.Forbidden=4403]="Forbidden",A[A.SubprotocolNotAcceptable=4406]="SubprotocolNotAcceptable",A[A.ConnectionInitialisationTimeout=4408]="ConnectionInitialisationTimeout",A[A.ConnectionAcknowledgementTimeout=4504]="ConnectionAcknowledgementTimeout",A[A.SubscriberAlreadyExists=4409]="SubscriberAlreadyExists",A[A.TooManyInitialisationRequests=4429]="TooManyInitialisationRequests",A})(L8||{}),q8=((A)=>{return A.ConnectionInit="connection_init",A.ConnectionAck="connection_ack",A.Ping="ping",A.Pong="pong",A.Subscribe="subscribe",A.Next="next",A.Error="error",A.Complete="complete",A})(q8||{});function JVA(A){if(!f7(A))throw Error(`Message is expected to be an object, but got ${y9(A)}`);if(!A.type)throw Error("Message is missing the 'type' property");if(typeof A.type!=="string")throw Error(`Message is expects the 'type' property to be a string, but got ${y9(A.type)}`);switch(A.type){case"connection_init":case"connection_ack":case"ping":case"pong":{if(A.payload!=null&&!f7(A.payload))throw Error(`"${A.type}" message expects the 'payload' property to be an object or nullish or missing, but got "${A.payload}"`);break}case"subscribe":{if(typeof A.id!=="string")throw Error(`"${A.type}" message expects the 'id' property to be a string, but got ${y9(A.id)}`);if(!A.id)throw Error(`"${A.type}" message requires a non-empty 'id' property`);if(!f7(A.payload))throw Error(`"${A.type}" message expects the 'payload' property to be an object, but got ${y9(A.payload)}`);if(typeof A.payload.query!=="string")throw Error(`"${A.type}" message payload expects the 'query' property to be a string, but got ${y9(A.payload.query)}`);if(A.payload.variables!=null&&!f7(A.payload.variables))throw Error(`"${A.type}" message payload expects the 'variables' property to be a an object or nullish or missing, but got ${y9(A.payload.variables)}`);if(A.payload.operationName!=null&&y9(A.payload.operationName)!=="string")throw Error(`"${A.type}" message payload expects the 'operationName' property to be a string or nullish or missing, but got ${y9(A.payload.operationName)}`);if(A.payload.extensions!=null&&!f7(A.payload.extensions))throw Error(`"${A.type}" message payload expects the 'extensions' property to be a an object or nullish or missing, but got ${y9(A.payload.extensions)}`);break}case"next":{if(typeof A.id!=="string")throw Error(`"${A.type}" message expects the 'id' property to be a string, but got ${y9(A.id)}`);if(!A.id)throw Error(`"${A.type}" message requires a non-empty 'id' property`);if(!f7(A.payload))throw Error(`"${A.type}" message expects the 'payload' property to be an object, but got ${y9(A.payload)}`);break}case"error":{if(typeof A.id!=="string")throw Error(`"${A.type}" message expects the 'id' property to be a string, but got ${y9(A.id)}`);if(!A.id)throw Error(`"${A.type}" message requires a non-empty 'id' property`);if(!e6B(A.payload))throw Error(`"${A.type}" message expects the 'payload' property to be an array of GraphQL errors, but got ${JSON.stringify(A.payload)}`);break}case"complete":{if(typeof A.id!=="string")throw Error(`"${A.type}" message expects the 'id' property to be a string, but got ${y9(A.id)}`);if(!A.id)throw Error(`"${A.type}" message requires a non-empty 'id' property`);break}default:throw Error(`Invalid message 'type' property "${A.type}"`)}return A}function CVA(A,Q){return JVA(typeof A==="string"?JSON.parse(A,Q):A)}function EE(A,Q){return JVA(A),JSON.stringify(A,Q)}function Km(A){let{url:Q,connectionParams:B,lazy:Y=!0,onNonLazyError:J=console.error,lazyCloseTimeout:C=0,keepAlive:X=0,disablePong:G,connectionAckWaitTimeout:F=0,retryAttempts:W=5,retryWait:Z=async function(v){let y=Math.pow(2,v);await new Promise((h)=>setTimeout(h,y*1000+Math.floor(Math.random()*2700+300)))},shouldRetry:U=Em,on:$,webSocketImpl:E,generateID:K=function(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(v)=>{let y=Math.random()*16|0;return(v=="x"?y:y&3|8).toString(16)})},jsonMessageReplacer:I,jsonMessageReviver:V}=A,H;if(E){if(!Q7B(E))throw Error("Invalid WebSocket implementation provided");H=E}else if(typeof WebSocket<"u")H=WebSocket;else if(typeof global<"u")H=global.WebSocket||global.MozWebSocket;else if(typeof window<"u")H=window.WebSocket||window.MozWebSocket;if(!H)throw Error("WebSocket implementation missing; on Node you can `import WebSocket from 'ws';` and pass `webSocketImpl: WebSocket` to `createClient`");let D=H,L=(()=>{let S=(()=>{let y={};return{on(h,g){return y[h]=g,()=>{delete y[h]}},emit(h){if("id"in h)y[h.id]?.(h)}}})(),v={connecting:$?.connecting?[$.connecting]:[],opened:$?.opened?[$.opened]:[],connected:$?.connected?[$.connected]:[],ping:$?.ping?[$.ping]:[],pong:$?.pong?[$.pong]:[],message:$?.message?[S.emit,$.message]:[S.emit],closed:$?.closed?[$.closed]:[],error:$?.error?[$.error]:[]};return{onMessage:S.on,on(y,h){let g=v[y];return g.push(h),()=>{g.splice(g.indexOf(h),1)}},emit(y,...h){for(let g of[...v[y]])g(...h)}}})();function z(S){let v=[L.on("error",(y)=>{v.forEach((h)=>h()),S(y)}),L.on("closed",(y)=>{v.forEach((h)=>h()),S(y)})]}let M,N=0,q,w=!1,P=0,_=!1;async function O(){clearTimeout(q);let[S,v]=await(M??(M=new Promise((g,m)=>(async()=>{if(w){if(await Z(P),!N)return M=void 0,m({code:1000,reason:"All Subscriptions Gone"});P++}L.emit("connecting",w);let i=new D(typeof Q==="function"?await Q():Q,YVA),p,l;function d(){if(isFinite(X)&&X>0)clearTimeout(l),l=setTimeout(()=>{if(i.readyState===D.OPEN)i.send(EE({type:q8.Ping})),L.emit("ping",!1,void 0)},X)}z((b)=>{if(M=void 0,clearTimeout(p),clearTimeout(l),m(b),b instanceof zw)i.close(4499,"Terminated"),i.onerror=null,i.onclose=null}),i.onerror=(b)=>L.emit("error",b),i.onclose=(b)=>L.emit("closed",b),i.onopen=async()=>{try{L.emit("opened",i);let b=typeof B==="function"?await B():B;if(i.readyState!==D.OPEN)return;if(i.send(EE(b?{type:q8.ConnectionInit,payload:b}:{type:q8.ConnectionInit},I)),isFinite(F)&&F>0)p=setTimeout(()=>{i.close(L8.ConnectionAcknowledgementTimeout,"Connection acknowledgement timeout")},F);d()}catch(b){L.emit("error",b),i.close(L8.InternalClientError,Um(b instanceof Error?b.message:String(b),"Internal client error"))}};let x=!1;i.onmessage=({data:b})=>{try{let o=CVA(b,V);if(L.emit("message",o),o.type==="ping"||o.type==="pong"){if(L.emit(o.type,!0,o.payload),o.type==="pong")d();else if(!G)i.send(EE(o.payload?{type:q8.Pong,payload:o.payload}:{type:q8.Pong})),L.emit("pong",!1,o.payload);return}if(x)return;if(o.type!==q8.ConnectionAck)throw Error(`First message cannot be of type ${o.type}`);clearTimeout(p),x=!0,L.emit("connected",i,o.payload,w),w=!1,P=0,g([i,new Promise((GA,VA)=>z(VA))])}catch(o){i.onmessage=null,L.emit("error",o),i.close(L8.BadResponse,Um(o instanceof Error?o.message:String(o),"Bad response"))}}})())));if(S.readyState===D.CLOSING)await v;let y=()=>{},h=new Promise((g)=>y=g);return[S,y,Promise.race([h.then(()=>{if(!N){let g=()=>S.close(1000,"Normal Closure");if(isFinite(C)&&C>0)q=setTimeout(()=>{if(S.readyState===D.OPEN)g()},C);else g()}}),v])]}function k(S){if(Em(S)&&(A7B(S.code)||[L8.InternalServerError,L8.InternalClientError,L8.BadRequest,L8.BadResponse,L8.Unauthorized,L8.SubprotocolNotAcceptable,L8.SubscriberAlreadyExists,L8.TooManyInitialisationRequests].includes(S.code)))throw S;if(_)return!1;if(Em(S)&&S.code===1000)return N>0;if(!W||P>=W)throw S;if(!U(S))throw S;return w=!0}if(!Y)(async()=>{N++;for(;;)try{let[,,S]=await O();await S}catch(S){try{if(!k(S))return}catch(v){return J?.(v)}}})();function T(S,v){let y=K(S),h=!1,g=!1,m=()=>{N--,h=!0};return(async()=>{N++;for(;;)try{let[i,p,l]=await O();if(h)return p();let d=L.onMessage(y,(x)=>{switch(x.type){case q8.Next:{v.next(x.payload);return}case q8.Error:{g=!0,h=!0,v.error(x.payload),m();return}case q8.Complete:{h=!0,m();return}}});i.send(EE({id:y,type:q8.Subscribe,payload:S},I)),m=()=>{if(!h&&i.readyState===D.OPEN)i.send(EE({id:y,type:q8.Complete},I));N--,h=!0,p()},await l.finally(d);return}catch(i){if(!k(i))return}})().then(()=>{if(!g)v.complete()}).catch((i)=>{v.error(i)}),()=>{if(!h)m()}}return{on:L.on,subscribe:T,iterate(S){let v=[],y={done:!1,error:null,resolve:()=>{}},h=T(S,{next(m){v.push(m),y.resolve()},error(m){y.done=!0,y.error=m,y.resolve()},complete(){y.done=!0,y.resolve()}}),g=async function*(){for(;;){if(!v.length)await new Promise((i)=>y.resolve=i);while(v.length)yield v.shift();if(y.error)throw y.error;if(y.done)return}}();return g.throw=async(m)=>{if(!y.done)y.done=!0,y.error=m,y.resolve();return{done:!0,value:void 0}},g.return=async()=>{return h(),{done:!0,value:void 0}},g},async dispose(){if(_=!0,M){let[S]=await M;S.close(1000,"Normal Closure")}},terminate(){if(M)L.emit("closed",new zw)}}}class zw extends Error{name="TerminatedCloseEvent";message="4499: Terminated";code=4499;reason="Terminated";wasClean=!1}function Em(A){return f7(A)&&"code"in A&&"reason"in A}function A7B(A){if([1000,1001,1006,1005,1012,1013,1014].includes(A))return!1;return A>=1000&&A<=1999}function Q7B(A){return typeof A==="function"&&"constructor"in A&&"CLOSED"in A&&"CLOSING"in A&&"CONNECTING"in A&&"OPEN"in A}var SVA=qA(PVA(),1);var TD="./dev/persistence",ww=process.env.HYTOPIA_NOTIFICATION_SERVICE_URL||"https://prod.notifications.hytopia.com";class D5{static instance=new D5;creatorApiKey=process.env.HYTOPIA_API_KEY;gameId=process.env.HYTOPIA_GAME_ID;lobbyId=process.env.HYTOPIA_LOBBY_ID;_creativeGateway;_gqlWs;constructor(){this._gqlWs=Km({url:"wss://prod.gql.hytopia.com/graphql",webSocketImpl:BVA});try{this._creativeGateway=new SVA.CreativeGateway}catch{console.warn(["━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━","\uD83D\uDEA8 HYTOPIA PLATFORM GATEWAY IS NOT INITIALIZED \uD83D\uDEA8","","\uD83D\uDD27 Local development is still possible, but these features will be disabled:"," • \uD83D\uDC64 Live Player Accounts"," • \uD83C\uDFAD Live Player Cosmetics"," • \uD83D\uDD14 Scheduled Notifications"," • \uD83D\uDC1B Crash Analytics & Debug Logs","","\uD83D\uDCA1 These features will be enabled but modified:"," • \uD83D\uDCBE Player & Global Persisted Data - Data will be persisted"," locally in the ./dev/persistence directory of your project."," Player ids for data persistence will begin at 1 for the first "," player to join your local server, and increments for each"," additional player. This means that if you restart your"," server, the first player id will be 1 again. This is to ensure"," that data persistence across server restarts can be easily"," tested and debugged in local development.","","To enable the HYTOPIA Platform Gateway locally:"," 1. Set these environment variables:"," HYTOPIA_API_KEY, HYTOPIA_GAME_ID, HYTOPIA_LOBBY_ID"," 2. You can find these values at: https://create.hytopia.com","","Note: In production, these environment variables will be auto-populated ","& the HYTOPIA Platform Gateway will automatically be initialized \uD83D\uDE80","━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━",""].join(` +`,"")]}),J.push(C),{lines:J,longestLine:X}}function Qf(A,Q,B){let{lines:Y}=Af(A,Q,B);return Y.length*A.common.lineHeight}var u0B=s.object({x:s.number(),y:s.number(),text:s.union([s.union([s.string(),s.number()]),s.object({text:s.union([s.string(),s.number()]),alignmentX:s.nativeEnum(E5).optional(),alignmentY:s.nativeEnum(K5).optional()})]),maxWidth:s.number().optional(),maxHeight:s.number().optional(),cb:s.function(s.tuple([s.object({x:s.number(),y:s.number()})])).optional()});function d0B(A,Q,B,Y){if(Y===E5.LEFT)return 0;if(Y===E5.CENTER)return(B-uU(A,Q))/2;return B-uU(A,Q)}function c0B(A,Q,B,Y,J){if(J.width>0&&J.height>0){let C=Q.pages[J.page];if(C)A=hU.blit(A,{src:C,x:B+J.xoffset,y:Y+J.yoffset,srcX:J.x,srcY:J.y,srcW:J.width,srcH:J.height})}return A}function l0B(A,Q,B,Y,J,C){for(let X=0;X{}}=u0B.parse(B),W,Z;if(typeof C==="object"&&C.text!==null&&C.text!==void 0)W=C.alignmentX||E5.LEFT,Z=C.alignmentY||K5.TOP,{text:C}=C;else W=E5.LEFT,Z=K5.TOP,C=C.toString();if(typeof C==="number")C=C.toString();if(G!==1/0&&Z===K5.BOTTOM)J+=G-Qf(Q,C,X);else if(G!==1/0&&Z===K5.MIDDLE)J+=G/2-Qf(Q,C,X)/2;let U=Object.entries(Q.chars).find((K)=>K[1].xadvance)?.[1].xadvance;if(typeof U!=="number")throw Error("Could not find default character width");let{lines:$,longestLine:E}=Af(Q,C,X);return $.forEach((K)=>{let I=K.join(" "),V=d0B(Q,I,X,W);l0B(A,Q,Y+V,J,I,U),J+=Q.common.lineHeight}),F.bind(A)({x:Y+E,y:J}),A}};var i0B=s.union([s.number(),s.object({deg:s.number(),mode:s.union([s.boolean(),s.nativeEnum(U8)]).optional()})]);function eFA(A){return function(Q,B){return B*A+Q<<2}}function n0B(A,Q){if(Math.abs(Q)%90!==0)throw Error("Unsupported matrix rotation degree");let B=A.bitmap.width,Y=A.bitmap.height,J;switch(Q){case 90:case-270:J=90;break;case 180:case-180:J=180;break;case 270:case-90:J=-90;break;default:throw Error("Unsupported matrix rotation degree")}let C=J===180?B:Y,X=J===180?Y:B,G=Buffer.alloc(A.bitmap.data.length),F=eFA(B),W=eFA(C);for(let Z=0;Z{A.bitmap.data.writeUInt32BE(A.background,H)});let K=Math.max(X,G,A.bitmap.width,A.bitmap.height);A=kC.resize(A,{h:K,w:K,mode:B===!0?void 0:B}),A=xU(A,E,A.bitmap.width/2-E.bitmap.width/2,A.bitmap.height/2-E.bitmap.height/2)}let F=A.bitmap.width,W=A.bitmap.height,Z=Buffer.alloc(A.bitmap.data.length),U=AWA(-(F/2),-(W/2)),$=AWA(F/2+0.5,W/2+0.5);for(let E=1;E<=W;E++)for(let K=1;K<=F;K++){let I=U(K,E),V=$(J*I.x-C*I.y,J*I.y+C*I.x),H=F*(E-1)+K-1<<2;if(V.x>=0&&V.x=0&&V.y{let F=A.bitmap.data[G](Q in A)?XWA(A,Q,{enumerable:!0,configurable:!0,writable:!0,value:B}):A[Q]=B,TX=(A,Q)=>{for(var B in Q)XWA(A,B,{get:Q[B],enumerable:!0})},ZA=(A,Q,B)=>{return t0B(A,typeof Q!=="symbol"?Q+"":Q,B),B},e0B={};TX(e0B,{bt709:()=>GWA});var GWA={};TX(GWA,{Y:()=>FWA,x:()=>WWA,y:()=>ZWA});var FWA=((A)=>{return A[A.RED=0.2126]="RED",A[A.GREEN=0.7152]="GREEN",A[A.BLUE=0.0722]="BLUE",A[A.WHITE=1]="WHITE",A})(FWA||{}),WWA=((A)=>{return A[A.RED=0.64]="RED",A[A.GREEN=0.3]="GREEN",A[A.BLUE=0.15]="BLUE",A[A.WHITE=0.3127]="WHITE",A})(WWA||{}),ZWA=((A)=>{return A[A.RED=0.33]="RED",A[A.GREEN=0.6]="GREEN",A[A.BLUE=0.06]="BLUE",A[A.WHITE=0.329]="WHITE",A})(ZWA||{}),AYB={};TX(AYB,{lab2rgb:()=>FYB,lab2xyz:()=>IWA,rgb2hsl:()=>zR,rgb2lab:()=>lH,rgb2xyz:()=>$WA,xyz2lab:()=>VWA,xyz2rgb:()=>HWA});function Bf(A){return A>0.04045?((A+0.055)/1.055)**2.4:A/12.92}function $WA(A,Q,B){return A=Bf(A/255),Q=Bf(Q/255),B=Bf(B/255),{x:A*0.4124+Q*0.3576+B*0.1805,y:A*0.2126+Q*0.7152+B*0.0722,z:A*0.0193+Q*0.1192+B*0.9505}}var UWA={};TX(UWA,{degrees2radians:()=>w7,inRange0to255:()=>K8,inRange0to255Rounded:()=>V5,intInRange:()=>QYB,max3:()=>EWA,min3:()=>KWA,stableSort:()=>Gf});function w7(A){return A*(Math.PI/180)}function EWA(A,Q,B){let Y=A;if(YQ)Y=Q;if(Y>B)Y=B;return Y}function QYB(A,Q,B){if(A>B)A=B;if(A255)A=255;else if(A<0)A=0;return A}function K8(A){if(A>255)A=255;else if(A<0)A=0;return A}function Gf(A,Q){let B=typeof A[0],Y;if(B==="number"||B==="string"){let J=Object.create(null);for(let C=0,X=A.length;CQ(C,X)||J[C]-J[X])}else{let J=A.slice(0);Y=A.sort((C,X)=>Q(C,X)||J.indexOf(C)-J.indexOf(X))}return Y}function zR(A,Q,B){let Y=KWA(A,Q,B),J=EWA(A,Q,B),C=J-Y,X=(Y+J)/510,G=0;if(X>0&&X<1)G=C/(X<0.5?J+Y:510-J-Y);let F=0;if(C>0){if(J===A)F=(Q-B)/C;else if(J===Q)F=2+(B-A)/C;else F=4+(A-Q)/C;if(F*=60,F<0)F+=360}return{h:F,s:G,l:X}}var BYB=0.95047,YYB=1,JYB=1.08883;function Yf(A){return A>0.008856?A**0.3333333333333333:7.787*A+0.13793103448275862}function VWA(A,Q,B){if(A=Yf(A/BYB),Q=Yf(Q/YYB),B=Yf(B/JYB),116*Q-16<0)throw Error("xxx");return{L:Math.max(0,116*Q-16),a:500*(A-Q),b:200*(Q-B)}}function lH(A,Q,B){let Y=$WA(A,Q,B);return VWA(Y.x,Y.y,Y.z)}var CYB=0.95047,XYB=1,GYB=1.08883;function Jf(A){return A>0.206893034?A**3:(A-0.13793103448275862)/7.787}function IWA(A,Q,B){let Y=(A+16)/116,J=Q/500+Y,C=Y-B/200;return{x:CYB*Jf(J),y:XYB*Jf(Y),z:GYB*Jf(C)}}function Cf(A){return A>0.0031308?1.055*A**0.4166666666666667-0.055:12.92*A}function HWA(A,Q,B){let Y=Cf(A*3.2406+Q*-1.5372+B*-0.4986),J=Cf(A*-0.9689+Q*1.8758+B*0.0415),C=Cf(A*0.0557+Q*-0.204+B*1.057);return{r:V5(Y*255),g:V5(J*255),b:V5(C*255)}}function FYB(A,Q,B){let Y=IWA(A,Q,B);return HWA(Y.x,Y.y,Y.z)}var WYB={};TX(WYB,{AbstractDistanceCalculator:()=>AZ,AbstractEuclidean:()=>RR,AbstractManhattan:()=>wR,CIE94GraphicArts:()=>LWA,CIE94Textiles:()=>NWA,CIEDE2000:()=>_C,CMetric:()=>qWA,Euclidean:()=>MWA,EuclideanBT709:()=>zWA,EuclideanBT709NoAlpha:()=>RWA,Manhattan:()=>wWA,ManhattanBT709:()=>OWA,ManhattanNommyde:()=>jWA,PNGQuant:()=>PWA});var AZ=class{constructor(){ZA(this,"_maxDistance"),ZA(this,"_whitePoint"),this._setDefaults(),this.setWhitePoint(255,255,255,255)}setWhitePoint(A,Q,B,Y){this._whitePoint={r:A>0?255/A:0,g:Q>0?255/Q:0,b:B>0?255/B:0,a:Y>0?255/Y:0},this._maxDistance=this.calculateRaw(A,Q,B,Y,0,0,0,0)}calculateNormalized(A,Q){return this.calculateRaw(A.r,A.g,A.b,A.a,Q.r,Q.g,Q.b,Q.a)/this._maxDistance}},DWA=class extends AZ{calculateRaw(A,Q,B,Y,J,C,X,G){let F=lH(K8(A*this._whitePoint.r),K8(Q*this._whitePoint.g),K8(B*this._whitePoint.b)),W=lH(K8(J*this._whitePoint.r),K8(C*this._whitePoint.g),K8(X*this._whitePoint.b)),Z=F.L-W.L,U=F.a-W.a,$=F.b-W.b,E=Math.sqrt(F.a*F.a+F.b*F.b),K=Math.sqrt(W.a*W.a+W.b*W.b),I=E-K,V=U*U+$*$-I*I;V=V<0?0:Math.sqrt(V);let H=(G-Y)*this._whitePoint.a*this._kA;return Math.sqrt((Z/this._Kl)**2+(I/(1+this._K1*E))**2+(V/(1+this._K2*E))**2+H**2)}},NWA=class extends DWA{_setDefaults(){this._Kl=2,this._K1=0.048,this._K2=0.014,this._kA=0.049019607843137254}},LWA=class extends DWA{_setDefaults(){this._Kl=1,this._K1=0.045,this._K2=0.015,this._kA=0.09803921568627451}},z0=class extends AZ{_setDefaults(){}static _calculatehp(A,Q){let B=Math.atan2(A,Q);if(B>=0)return B;return B+z0._deg360InRad}static _calculateRT(A,Q){let B=Q**7,Y=2*Math.sqrt(B/(B+z0._pow25to7)),J=z0._deg30InRad*Math.exp(-(((A-z0._deg275InRad)/z0._deg25InRad)**2));return-Math.sin(2*J)*Y}static _calculateT(A){return 1-0.17*Math.cos(A-z0._deg30InRad)+0.24*Math.cos(A*2)+0.32*Math.cos(A*3+z0._deg6InRad)-0.2*Math.cos(A*4-z0._deg63InRad)}static _calculate_ahp(A,Q,B,Y){let J=B+Y;if(A===0)return J;if(Q<=z0._deg180InRad)return J/2;if(J>8)+4*Z*Z+((767-F)*U*U>>8),E=(G-Y)*this._whitePoint.a;return Math.sqrt($+E*E)}_setDefaults(){}},RR=class extends AZ{calculateRaw(A,Q,B,Y,J,C,X,G){let F=J-A,W=C-Q,Z=X-B,U=G-Y;return Math.sqrt(this._kR*F*F+this._kG*W*W+this._kB*Z*Z+this._kA*U*U)}},MWA=class extends RR{_setDefaults(){this._kR=1,this._kG=1,this._kB=1,this._kA=1}},zWA=class extends RR{_setDefaults(){this._kR=0.2126,this._kG=0.7152,this._kB=0.0722,this._kA=1}},RWA=class extends RR{_setDefaults(){this._kR=0.2126,this._kG=0.7152,this._kB=0.0722,this._kA=0}},wR=class extends AZ{calculateRaw(A,Q,B,Y,J,C,X,G){let F=J-A,W=C-Q,Z=X-B,U=G-Y;if(F<0)F=0-F;if(W<0)W=0-W;if(Z<0)Z=0-Z;if(U<0)U=0-U;return this._kR*F+this._kG*W+this._kB*Z+this._kA*U}},wWA=class extends wR{_setDefaults(){this._kR=1,this._kG=1,this._kB=1,this._kA=1}},jWA=class extends wR{_setDefaults(){this._kR=0.4984,this._kG=0.8625,this._kB=0.2979,this._kA=1}},OWA=class extends wR{_setDefaults(){this._kR=0.2126,this._kG=0.7152,this._kB=0.0722,this._kA=1}},PWA=class extends AZ{calculateRaw(A,Q,B,Y,J,C,X,G){let F=(G-Y)*this._whitePoint.a;return this._colordifferenceCh(A*this._whitePoint.r,J*this._whitePoint.r,F)+this._colordifferenceCh(Q*this._whitePoint.g,C*this._whitePoint.g,F)+this._colordifferenceCh(B*this._whitePoint.b,X*this._whitePoint.b,F)}_colordifferenceCh(A,Q,B){let Y=A-Q,J=Y+B;return Y*Y+J*J}_setDefaults(){}},ZYB={};TX(ZYB,{AbstractPaletteQuantizer:()=>pH,ColorHistogram:()=>nH,NeuQuant:()=>_0,NeuQuantFloat:()=>v0,RGBQuant:()=>kWA,WuColorCube:()=>_WA,WuQuant:()=>nU});var pH=class{quantizeSync(){for(let A of this.quantize())if(A.palette)return A.palette;throw Error("unreachable")}},V8=class{constructor(){ZA(this,"r"),ZA(this,"g"),ZA(this,"b"),ZA(this,"a"),ZA(this,"uint32"),ZA(this,"rgba"),this.uint32=4294967295,this.r=this.g=this.b=this.a=0,this.rgba=[,,,,],this.rgba[0]=0,this.rgba[1]=0,this.rgba[2]=0,this.rgba[3]=0}static createByQuadruplet(A){let Q=new V8;return Q.r=A[0]|0,Q.g=A[1]|0,Q.b=A[2]|0,Q.a=A[3]|0,Q._loadUINT32(),Q._loadQuadruplet(),Q}static createByRGBA(A,Q,B,Y){let J=new V8;return J.r=A|0,J.g=Q|0,J.b=B|0,J.a=Y|0,J._loadUINT32(),J._loadQuadruplet(),J}static createByUint32(A){let Q=new V8;return Q.uint32=A>>>0,Q._loadRGBA(),Q._loadQuadruplet(),Q}from(A){this.r=A.r,this.g=A.g,this.b=A.b,this.a=A.a,this.uint32=A.uint32,this.rgba[0]=A.r,this.rgba[1]=A.g,this.rgba[2]=A.b,this.rgba[3]=A.a}getLuminosity(A){let Q=this.r,B=this.g,Y=this.b;if(A)Q=Math.min(255,255-this.a+this.a*Q/255),B=Math.min(255,255-this.a+this.a*B/255),Y=Math.min(255,255-this.a+this.a*Y/255);return Q*0.2126+B*0.7152+Y*0.0722}_loadUINT32(){this.uint32=(this.a<<24|this.b<<16|this.g<<8|this.r)>>>0}_loadRGBA(){this.r=this.uint32&255,this.g=this.uint32>>>8&255,this.b=this.uint32>>>16&255,this.a=this.uint32>>>24&255}_loadQuadruplet(){this.rgba[0]=this.r,this.rgba[1]=this.g,this.rgba[2]=this.b,this.rgba[3]=this.a}},PX=class{constructor(){ZA(this,"_pointArray"),ZA(this,"_width"),ZA(this,"_height"),this._width=0,this._height=0,this._pointArray=[]}getWidth(){return this._width}getHeight(){return this._height}setWidth(A){this._width=A}setHeight(A){this._height=A}getPointArray(){return this._pointArray}clone(){let A=new PX;A._width=this._width,A._height=this._height;for(let Q=0,B=this._pointArray.length;Q=X&&A=0;Q--)if(A.uint32===this._pointArray[Q].uint32)return!0;return!1}getNearestColor(A,Q){return this._pointArray[this._getNearestIndex(A,Q)|0]}getPointContainer(){return this._pointContainer}_nearestPointFromCache(A){return typeof this._i32idx[A]==="number"?this._i32idx[A]:-1}_getNearestIndex(A,Q){let B=this._nearestPointFromCache(""+Q.uint32);if(B>=0)return B;let Y=Number.MAX_VALUE;B=0;for(let J=0,C=this._pointArray.length;J{let B=zR(A.r,A.g,A.b),Y=zR(Q.r,Q.g,Q.b),J=A.r===A.g&&A.g===A.b?0:1+Xf(B.h,YWA),X=(Q.r===Q.g&&Q.g===Q.b?0:1+Xf(Y.h,YWA))-J;if(X)return-X;let G=A.getLuminosity(!0),F=Q.getLuminosity(!0);if(F-G!==0)return F-G;let W=(Y.s*100|0)-(B.s*100|0);if(W)return-W;return 0})}},Ff={};TX(Ff,{HueStatistics:()=>TWA,Palette:()=>iH,Point:()=>V8,PointContainer:()=>PX,ProgressTracker:()=>SX,arithmetic:()=>UWA});var $YB=class{constructor(){ZA(this,"num",0),ZA(this,"cols",[])}},TWA=class{constructor(A,Q){ZA(this,"_numGroups"),ZA(this,"_minCols"),ZA(this,"_stats"),ZA(this,"_groupsFull"),this._numGroups=A,this._minCols=Q,this._stats=[];for(let B=0;B<=A;B++)this._stats[B]=new $YB;this._groupsFull=0}check(A){if(this._groupsFull===this._numGroups+1)this.check=()=>{};let Q=A&255,B=A>>>8&255,Y=A>>>16&255,J=Q===B&&B===Y?0:1+Xf(zR(Q,B,Y).h,this._numGroups),C=this._stats[J],X=this._minCols;if(C.num++,C.num>X)return;if(C.num===X)this._groupsFull++;if(C.num<=X)this._stats[J].cols.push(A)}injectIntoDictionary(A){for(let Q=0;Q<=this._numGroups;Q++)if(this._stats[Q].num<=this._minCols)this._stats[Q].cols.forEach((B)=>{if(!A[B])A[B]=1;else A[B]++})}injectIntoArray(A){for(let Q=0;Q<=this._numGroups;Q++)if(this._stats[Q].num<=this._minCols)this._stats[Q].cols.forEach((B)=>{if(A.indexOf(B)===-1)A.push(B)})}},SWA=class{constructor(A,Q){ZA(this,"progress"),ZA(this,"_step"),ZA(this,"_range"),ZA(this,"_last"),ZA(this,"_progressRange"),this._range=A,this._progressRange=Q,this._step=Math.max(1,this._range/(SWA.steps+1)|0),this._last=-this._step,this.progress=0}shouldNotify(A){if(A-this._last>=this._step)return this._last=A,this.progress=Math.min(this._progressRange*this._last/this._range,this._progressRange),!0;return!1}},SX=SWA;ZA(SX,"steps",100);var eJ=3,UYB=class{constructor(A){ZA(this,"r"),ZA(this,"g"),ZA(this,"b"),ZA(this,"a"),this.r=this.g=this.b=this.a=A}toPoint(){return V8.createByRGBA(this.r>>eJ,this.g>>eJ,this.b>>eJ,this.a>>eJ)}subtract(A,Q,B,Y){this.r-=A|0,this.g-=Q|0,this.b-=B|0,this.a-=Y|0}},CB=class extends pH{constructor(A,Q=256){super();ZA(this,"_pointArray"),ZA(this,"_networkSize"),ZA(this,"_network"),ZA(this,"_sampleFactor"),ZA(this,"_radPower"),ZA(this,"_freq"),ZA(this,"_bias"),ZA(this,"_distance"),this._distance=A,this._pointArray=[],this._sampleFactor=1,this._networkSize=Q,this._distance.setWhitePoint(255<>3)*CB._radiusBias,G=X>>CB._radiusBiasShift;if(G<=1)G=0;for(let Z=0;Z>>0;let F;if(Q=Q)U-=Q;if(Z++,J===0)J=1;if(Z%J===0){if(C-=C/B|0,X-=X/CB._radiusDecrease|0,G=X>>CB._radiusBiasShift,G<=1)G=0;for(let D=0;D>>0}}}_buildPalette(){let A=new iH;return this._network.forEach((Q)=>{A.add(Q.toPoint())}),A.sort(),A}_alterNeighbour(A,Q,B,Y,J,C){let X=Q-A;if(X<-1)X=-1;let G=Q+A;if(G>this._networkSize)G=this._networkSize;let F=Q+1,W=Q-1,Z=1;while(FX){let U=this._radPower[Z++]/CB._alphaRadBias;if(FX){let $=this._network[W--];$.subtract(U*($.r-J),U*($.g-Y),U*($.b-B),U*($.a-C))}}}_alterSingle(A,Q,B,Y,J,C){A/=CB._initAlpha;let X=this._network[Q];X.subtract(A*(X.r-J),A*(X.g-Y),A*(X.b-B),A*(X.a-C))}_contest(A,Q,B,Y){let J=1020<>CB._initialBiasShift-eJ);if($>CB._betaShift;this._freq[W]-=E,this._bias[W]+=E<>CB._betaShift);ZA(_0,"_betaGamma",CB._initialBias<>A9,this.g>>A9,this.b>>A9,this.a>>A9)}subtract(A,Q,B,Y){this.r-=A,this.g-=Q,this.b-=B,this.a-=Y}},XB=class extends pH{constructor(A,Q=256){super();ZA(this,"_pointArray"),ZA(this,"_networkSize"),ZA(this,"_network"),ZA(this,"_sampleFactor"),ZA(this,"_radPower"),ZA(this,"_freq"),ZA(this,"_bias"),ZA(this,"_distance"),this._distance=A,this._pointArray=[],this._sampleFactor=1,this._networkSize=Q,this._distance.setWhitePoint(255<>3)*XB._radiusBias,G=X>>XB._radiusBiasShift;if(G<=1)G=0;for(let Z=0;Z=Q)U-=Q;if(Z++,J===0)J=1;if(Z%J===0){if(C-=C/B,X-=X/XB._radiusDecrease,G=X>>XB._radiusBiasShift,G<=1)G=0;for(let D=0;D{A.add(Q.toPoint())}),A.sort(),A}_alterNeighbour(A,Q,B,Y,J,C){let X=Q-A;if(X<-1)X=-1;let G=Q+A;if(G>this._networkSize)G=this._networkSize;let F=Q+1,W=Q-1,Z=1;while(FX){let U=this._radPower[Z++]/XB._alphaRadBias;if(FX){let $=this._network[W--];$.subtract(U*($.r-J),U*($.g-Y),U*($.b-B),U*($.a-C))}}}_alterSingle(A,Q,B,Y,J,C){A/=XB._initAlpha;let X=this._network[Q];X.subtract(A*(X.r-J),A*(X.g-Y),A*(X.b-B),A*(X.a-C))}_contest(A,Q,B,Y){let J=1020<>XB._initialBiasShift-A9);if($>XB._betaShift;this._freq[W]-=E,this._bias[W]+=E<>XB._betaShift);ZA(v0,"_betaGamma",XB._initialBias<this._histogram[Y]-this._histogram[B]);if(A.length===0)return[];let Q;switch(this._method){case 1:let B=Math.min(A.length,this._initColors),Y=A[B-1],J=this._histogram[Y];Q=A.slice(0,B);let C=B,X=A.length;while(C+B)}_colorStats1D(A){let Q=this._histogram,B=A.getPointArray(),Y=B.length;for(let J=0;J{let Z=Math.round(W.w*W.h/X)*cH._boxPixels;if(Z<2)Z=2;let U={};this._iterateBox(W,Q,($)=>{let E=Y[$].uint32;if(this._hueStats.check(E),E in F)F[E]++;else if(E in U){if(++U[E]>=Z)F[E]=U[E]}else U[E]=1})}),this._hueStats.injectIntoDictionary(F)}_iterateBox(A,Q,B){let Y=A,J=Y.y*Q+Y.x,C=(Y.y+Y.h-1)*Q+(Y.x+Y.w-1),X=Q-Y.w+1,G=0,F=J;do B.call(this,F),F+=++G%Y.w===0?X:1;while(F<=C)}_makeBoxes(A,Q,B,Y){let J=A%B,C=Q%Y,X=A-J,G=Q-C,F=[];for(let W=0;Wthis._colors){C.length=0;for(let Z=0;Zthis._colors*3?this._initialDistance:this._distanceIncrement}if(X$.distance-U.distance);let Z=0;while(X=0;Z--)if(Y[Z]===0){if(Z!==W-1)B[Z]=B[W-1];--W}B.length=W,Q.sort(),yield{palette:Q,progress:100}}};function dU(A){let Q=[];for(let B=0;B0){let B=this._sums[Q],Y=this._reds[Q]/B,J=this._greens[Q]/B,C=this._blues[Q]/B,X=this._alphas[Q]/B,G=V8.createByRGBA(Y|0,J|0,C|0,X|0);A.add(G)}A.sort(),yield{palette:A,progress:100}}*_preparePalette(){yield*this._calculateMoments();let A=0,Q=dU(this._colors);for(let X=1;X1?this._calculateVariance(this._cubes[A]):0,Q[X]=this._cubes[X].volume>1?this._calculateVariance(this._cubes[X]):0;else Q[A]=0,X--;A=0;let G=Q[0];for(let F=1;F<=X;++F)if(Q[F]>G)G=Q[F],A=F;if(G<=0){this._colors=X+1;break}}let B=[],Y=[],J=[],C=[];for(let X=0;X0)B[X]=PQ._volume(this._cubes[X],this._momentsRed)/G|0,Y[X]=PQ._volume(this._cubes[X],this._momentsGreen)/G|0,J[X]=PQ._volume(this._cubes[X],this._momentsBlue)/G|0,C[X]=PQ._volume(this._cubes[X],this._momentsAlpha)/G|0;else B[X]=0,Y[X]=0,J[X]=0,C[X]=0}this._reds=dU(this._colors+1),this._greens=dU(this._colors+1),this._blues=dU(this._colors+1),this._alphas=dU(this._colors+1),this._sums=dU(this._colors+1);for(let X=0,G=this._pixels.length;X>Q)+1,Y=(A.g>>Q)+1,J=(A.b>>Q)+1,C=(A.a>>Q)+1;this._weights[C][B][Y][J]++,this._momentsRed[C][B][Y][J]+=A.r,this._momentsGreen[C][B][Y][J]+=A.g,this._momentsBlue[C][B][Y][J]+=A.b,this._momentsAlpha[C][B][Y][J]+=A.a,this._moments[C][B][Y][J]+=this._table[A.r]+this._table[A.g]+this._table[A.b]+this._table[A.a]}*_calculateMoments(){let A=[],Q=[],B=[],Y=[],J=[],C=[],X=lU(this._sideSize,this._sideSize,this._sideSize),G=lU(this._sideSize,this._sideSize,this._sideSize),F=lU(this._sideSize,this._sideSize,this._sideSize),W=lU(this._sideSize,this._sideSize,this._sideSize),Z=lU(this._sideSize,this._sideSize,this._sideSize),U=lU(this._sideSize,this._sideSize,this._sideSize),$=0,E=new SX(this._alphaMaxSideIndex*this._maxSideIndex,99);for(let K=1;K<=this._alphaMaxSideIndex;++K){pU(X,this._sideSize,this._sideSize,this._sideSize,0),pU(G,this._sideSize,this._sideSize,this._sideSize,0),pU(F,this._sideSize,this._sideSize,this._sideSize,0),pU(W,this._sideSize,this._sideSize,this._sideSize,0),pU(Z,this._sideSize,this._sideSize,this._sideSize,0),pU(U,this._sideSize,this._sideSize,this._sideSize,0);for(let I=1;I<=this._maxSideIndex;++I,++$){if(E.shouldNotify($))yield{progress:E.progress};iU(A,this._sideSize,0),iU(Q,this._sideSize,0),iU(B,this._sideSize,0),iU(Y,this._sideSize,0),iU(J,this._sideSize,0),iU(C,this._sideSize,0);for(let V=1;V<=this._maxSideIndex;++V){let H=0,D=0,L=0,z=0,M=0,N=0;for(let q=1;q<=this._maxSideIndex;++q)H+=this._weights[K][I][V][q],D+=this._momentsRed[K][I][V][q],L+=this._momentsGreen[K][I][V][q],z+=this._momentsBlue[K][I][V][q],M+=this._momentsAlpha[K][I][V][q],N+=this._moments[K][I][V][q],A[q]+=H,Q[q]+=D,B[q]+=L,Y[q]+=z,J[q]+=M,C[q]+=N,X[I][V][q]=X[I-1][V][q]+A[q],G[I][V][q]=G[I-1][V][q]+Q[q],F[I][V][q]=F[I-1][V][q]+B[q],W[I][V][q]=W[I-1][V][q]+Y[q],Z[I][V][q]=Z[I-1][V][q]+J[q],U[I][V][q]=U[I-1][V][q]+C[q],this._weights[K][I][V][q]=this._weights[K-1][I][V][q]+X[I][V][q],this._momentsRed[K][I][V][q]=this._momentsRed[K-1][I][V][q]+G[I][V][q],this._momentsGreen[K][I][V][q]=this._momentsGreen[K-1][I][V][q]+F[I][V][q],this._momentsBlue[K][I][V][q]=this._momentsBlue[K-1][I][V][q]+W[I][V][q],this._momentsAlpha[K][I][V][q]=this._momentsAlpha[K-1][I][V][q]+Z[I][V][q],this._moments[K][I][V][q]=this._moments[K-1][I][V][q]+U[I][V][q]}}}}static _volumeFloat(A,Q){return Q[A.alphaMaximum][A.redMaximum][A.greenMaximum][A.blueMaximum]-Q[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMaximum]-Q[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMaximum]+Q[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMaximum]-Q[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMaximum]+Q[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMaximum]+Q[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMaximum]-Q[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(Q[A.alphaMaximum][A.redMaximum][A.greenMaximum][A.blueMinimum]-Q[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMinimum]-Q[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMinimum]+Q[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]-Q[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMinimum]+Q[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]+Q[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]-Q[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum])}static _volume(A,Q){return PQ._volumeFloat(A,Q)|0}static _top(A,Q,B,Y){let J;switch(Q){case PQ._alpha:J=Y[B][A.redMaximum][A.greenMaximum][A.blueMaximum]-Y[B][A.redMaximum][A.greenMinimum][A.blueMaximum]-Y[B][A.redMinimum][A.greenMaximum][A.blueMaximum]+Y[B][A.redMinimum][A.greenMinimum][A.blueMaximum]-(Y[B][A.redMaximum][A.greenMaximum][A.blueMinimum]-Y[B][A.redMaximum][A.greenMinimum][A.blueMinimum]-Y[B][A.redMinimum][A.greenMaximum][A.blueMinimum]+Y[B][A.redMinimum][A.greenMinimum][A.blueMinimum]);break;case PQ._red:J=Y[A.alphaMaximum][B][A.greenMaximum][A.blueMaximum]-Y[A.alphaMaximum][B][A.greenMinimum][A.blueMaximum]-Y[A.alphaMinimum][B][A.greenMaximum][A.blueMaximum]+Y[A.alphaMinimum][B][A.greenMinimum][A.blueMaximum]-(Y[A.alphaMaximum][B][A.greenMaximum][A.blueMinimum]-Y[A.alphaMaximum][B][A.greenMinimum][A.blueMinimum]-Y[A.alphaMinimum][B][A.greenMaximum][A.blueMinimum]+Y[A.alphaMinimum][B][A.greenMinimum][A.blueMinimum]);break;case PQ._green:J=Y[A.alphaMaximum][A.redMaximum][B][A.blueMaximum]-Y[A.alphaMaximum][A.redMinimum][B][A.blueMaximum]-Y[A.alphaMinimum][A.redMaximum][B][A.blueMaximum]+Y[A.alphaMinimum][A.redMinimum][B][A.blueMaximum]-(Y[A.alphaMaximum][A.redMaximum][B][A.blueMinimum]-Y[A.alphaMaximum][A.redMinimum][B][A.blueMinimum]-Y[A.alphaMinimum][A.redMaximum][B][A.blueMinimum]+Y[A.alphaMinimum][A.redMinimum][B][A.blueMinimum]);break;case PQ._blue:J=Y[A.alphaMaximum][A.redMaximum][A.greenMaximum][B]-Y[A.alphaMaximum][A.redMaximum][A.greenMinimum][B]-Y[A.alphaMaximum][A.redMinimum][A.greenMaximum][B]+Y[A.alphaMaximum][A.redMinimum][A.greenMinimum][B]-(Y[A.alphaMinimum][A.redMaximum][A.greenMaximum][B]-Y[A.alphaMinimum][A.redMaximum][A.greenMinimum][B]-Y[A.alphaMinimum][A.redMinimum][A.greenMaximum][B]+Y[A.alphaMinimum][A.redMinimum][A.greenMinimum][B]);break;default:throw Error("impossible")}return J|0}static _bottom(A,Q,B){switch(Q){case PQ._alpha:return-B[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMaximum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMaximum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMaximum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(-B[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMinimum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);case PQ._red:return-B[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMaximum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMaximum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMaximum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(-B[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMinimum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);case PQ._green:return-B[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMaximum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMaximum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMaximum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(-B[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);case PQ._blue:return-B[A.alphaMaximum][A.redMaximum][A.greenMaximum][A.blueMinimum]+B[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]-(-B[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMinimum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);default:return 0}}_calculateVariance(A){let Q=PQ._volume(A,this._momentsRed),B=PQ._volume(A,this._momentsGreen),Y=PQ._volume(A,this._momentsBlue),J=PQ._volume(A,this._momentsAlpha),C=PQ._volumeFloat(A,this._moments),X=PQ._volume(A,this._weights),G=Q*Q+B*B+Y*Y+J*J;return C-G/X}_maximize(A,Q,B,Y,J,C,X,G,F){let W=PQ._bottom(A,Q,this._momentsRed)|0,Z=PQ._bottom(A,Q,this._momentsGreen)|0,U=PQ._bottom(A,Q,this._momentsBlue)|0,$=PQ._bottom(A,Q,this._momentsAlpha)|0,E=PQ._bottom(A,Q,this._weights)|0,K=0,I=-1;for(let V=B;VK)K=q,I=V}}}return{max:K,position:I}}_cut(A,Q){let B,Y=PQ._volume(A,this._momentsRed),J=PQ._volume(A,this._momentsGreen),C=PQ._volume(A,this._momentsBlue),X=PQ._volume(A,this._momentsAlpha),G=PQ._volume(A,this._weights),F=this._maximize(A,PQ._red,A.redMinimum+1,A.redMaximum,Y,J,C,X,G),W=this._maximize(A,PQ._green,A.greenMinimum+1,A.greenMaximum,Y,J,C,X,G),Z=this._maximize(A,PQ._blue,A.blueMinimum+1,A.blueMaximum,Y,J,C,X,G),U=this._maximize(A,PQ._alpha,A.alphaMinimum+1,A.alphaMaximum,Y,J,C,X,G);if(U.max>=F.max&&U.max>=W.max&&U.max>=Z.max){if(B=PQ._alpha,U.position<0)return!1}else if(F.max>=U.max&&F.max>=W.max&&F.max>=Z.max)B=PQ._red;else if(W.max>=U.max&&W.max>=F.max&&W.max>=Z.max)B=PQ._green;else B=PQ._blue;switch(Q.redMaximum=A.redMaximum,Q.greenMaximum=A.greenMaximum,Q.blueMaximum=A.blueMaximum,Q.alphaMaximum=A.alphaMaximum,B){case PQ._red:Q.redMinimum=A.redMaximum=F.position,Q.greenMinimum=A.greenMinimum,Q.blueMinimum=A.blueMinimum,Q.alphaMinimum=A.alphaMinimum;break;case PQ._green:Q.greenMinimum=A.greenMaximum=W.position,Q.redMinimum=A.redMinimum,Q.blueMinimum=A.blueMinimum,Q.alphaMinimum=A.alphaMinimum;break;case PQ._blue:Q.blueMinimum=A.blueMaximum=Z.position,Q.redMinimum=A.redMinimum,Q.greenMinimum=A.greenMinimum,Q.alphaMinimum=A.alphaMinimum;break;case PQ._alpha:Q.alphaMinimum=A.alphaMaximum=U.position,Q.blueMinimum=A.blueMinimum,Q.redMinimum=A.redMinimum,Q.greenMinimum=A.greenMinimum;break}return A.volume=(A.redMaximum-A.redMinimum)*(A.greenMaximum-A.greenMinimum)*(A.blueMaximum-A.blueMinimum)*(A.alphaMaximum-A.alphaMinimum),Q.volume=(Q.redMaximum-Q.redMinimum)*(Q.greenMaximum-Q.greenMinimum)*(Q.blueMaximum-Q.blueMinimum)*(Q.alphaMaximum-Q.alphaMinimum),!0}_initialize(A){this._colors=A,this._cubes=[];for(let Q=0;QjR,ErrorDiffusionArray:()=>c1,ErrorDiffusionArrayKernel:()=>yWA,ErrorDiffusionRiemersma:()=>Wf,NearestColor:()=>vWA});var jR=class{quantizeSync(A,Q){for(let B of this.quantize(A,Q))if(B.pointContainer)return B.pointContainer;throw Error("unreachable")}},vWA=class extends jR{constructor(A){super();ZA(this,"_distance"),this._distance=A}*quantize(A,Q){let B=A.getPointArray(),Y=A.getWidth(),J=A.getHeight(),C=new SX(J,99);for(let X=0;X{return A[A.FloydSteinberg=0]="FloydSteinberg",A[A.FalseFloydSteinberg=1]="FalseFloydSteinberg",A[A.Stucki=2]="Stucki",A[A.Atkinson=3]="Atkinson",A[A.Jarvis=4]="Jarvis",A[A.Burkes=5]="Burkes",A[A.Sierra=6]="Sierra",A[A.TwoSierra=7]="TwoSierra",A[A.SierraLite=8]="SierraLite",A})(yWA||{}),c1=class extends jR{constructor(A,Q,B=!0,Y=0,J=!1){super();ZA(this,"_minColorDistance"),ZA(this,"_serpentine"),ZA(this,"_kernel"),ZA(this,"_calculateErrorLikeGIMP"),ZA(this,"_distance"),this._setKernel(Q),this._distance=A,this._minColorDistance=Y,this._serpentine=B,this._calculateErrorLikeGIMP=J}*quantize(A,Q){let B=A.getPointArray(),Y=new V8,J=A.getWidth(),C=A.getHeight(),X=[],G=1,F=1;for(let Z of this._kernel){let U=Z[2]+1;if(F=0&&k+I=0&&T+ZQ)A.length=Q;let B=A.length;for(let Y=0;Y=0&&A.x=0&&A.y{let W=B[G+F*Y],{r:Z,g:U,b:$,a:E}=W;for(let H=0;HLYB});var DYB=0.01,NYB=0.03;function LYB(A,Q){if(A.getHeight()!==Q.getHeight()||A.getWidth()!==Q.getWidth())throw Error("Images have different sizes!");let Y=255,J=(DYB*Y)**2,C=(NYB*Y)**2,X=0,G=0;return qYB(A,Q,(F,W,Z,U)=>{let $=0,E=0,K=0;for(let L=0;Lprocess.nextTick(A):(A)=>setTimeout(A,0);function hWA(A,{colorDistanceFormula:Q,paletteQuantization:B,colors:Y}={}){let J=xWA(Q),C=zYB(J,B,Y);return A.forEach((X)=>C.sample(X)),C.quantizeSync()}function gWA(A,Q,{colorDistanceFormula:B,imageQuantization:Y}={}){let J=xWA(B);return MYB(J,Y).quantizeSync(A,Q)}function xWA(A="euclidean-bt709"){switch(A){case"cie94-graphic-arts":return new LWA;case"cie94-textiles":return new NWA;case"ciede2000":return new _C;case"color-metric":return new qWA;case"euclidean":return new MWA;case"euclidean-bt709":return new zWA;case"euclidean-bt709-noalpha":return new RWA;case"manhattan":return new wWA;case"manhattan-bt709":return new OWA;case"manhattan-nommyde":return new jWA;case"pngquant":return new PWA;default:throw Error(`Unknown colorDistanceFormula ${A}`)}}function MYB(A,Q="floyd-steinberg"){switch(Q){case"nearest":return new vWA(A);case"riemersma":return new Wf(A);case"floyd-steinberg":return new c1(A,0);case"false-floyd-steinberg":return new c1(A,1);case"stucki":return new c1(A,2);case"atkinson":return new c1(A,3);case"jarvis":return new c1(A,4);case"burkes":return new c1(A,5);case"sierra":return new c1(A,6);case"two-sierra":return new c1(A,7);case"sierra-lite":return new c1(A,8);default:throw Error(`Unknown imageQuantization ${Q}`)}}function zYB(A,Q="wuquant",B=256){switch(Q){case"neuquant":return new _0(A,B);case"rgbquant":return new kWA(A,B);case"wuquant":return new nU(A,B);case"neuquant-float":return new v0(A,B);default:throw Error(`Unknown paletteQuantization ${Q}`)}}var RYB=SB.object({colors:SB.number().optional(),colorDistanceFormula:SB.union([SB.literal("cie94-textiles"),SB.literal("cie94-graphic-arts"),SB.literal("ciede2000"),SB.literal("color-metric"),SB.literal("euclidean"),SB.literal("euclidean-bt709-noalpha"),SB.literal("euclidean-bt709"),SB.literal("manhattan"),SB.literal("manhattan-bt709"),SB.literal("manhattan-nommyde"),SB.literal("pngquant")]).optional(),paletteQuantization:SB.union([SB.literal("neuquant"),SB.literal("neuquant-float"),SB.literal("rgbquant"),SB.literal("wuquant")]).optional(),imageQuantization:SB.union([SB.literal("nearest"),SB.literal("riemersma"),SB.literal("floyd-steinberg"),SB.literal("false-floyd-steinberg"),SB.literal("stucki"),SB.literal("atkinson"),SB.literal("jarvis"),SB.literal("burkes"),SB.literal("sierra"),SB.literal("two-sierra"),SB.literal("sierra-lite")]).optional()}),fWA={quantize(A,Q){let{colors:B,colorDistanceFormula:Y,paletteQuantization:J,imageQuantization:C}=RYB.parse(Q),X=Ff.PointContainer.fromUint8Array(A.bitmap.data,A.bitmap.width,A.bitmap.height),G=hWA([X],{colors:B,colorDistanceFormula:Y,paletteQuantization:J}),F=gWA(X,G,{colorDistanceFormula:Y,imageQuantization:C});return A.bitmap.data=Buffer.from(F.toUint8Array()),A}};var jYB=[hU,pGA,iGA,gU,xFA,fFA,mU,bFA,mFA,uFA,dFA,aFA,oFA,tFA,kC,QWA,BWA,fWA],OYB=[j3,fCA,x3,b3,d3,CR],pWY={bmp:j3().mime,gif:x3().mime,jpeg:b3().mime,png:d3().mime,tiff:CR().mime},sU=hFA({formats:OYB,plugins:jYB});var H8={OPTIMIZED_DIR:".optimized",TEMP_DIR:"hytopia-models-temp",CHECKSUM_EXT:".md5",VERSION:4,DATA_EXT:".data.json",DIRECTORIES:[zY.assetsLibraryPath,qJ.resolve(process.cwd(),"assets")].filter(Boolean),OPTIMIZER_RUNS:[{suffix:"",options:["--compress","false","--instance","false","--simplify","false","--texture-compress","false"],stripAnimations:!1,optimalMaxMeshCount:10,optimalMaxMeshHint:"Reduce nodes/meshes in your source model, or use fewer unique materials so primitives can be merged in the generated optimized model.",keepEmptyNamedNodes:!1},{suffix:"-named-nodes",options:["--compress","false","--flatten","false","--instance","false","--simplify","false","--join","false","--prune","false","--texture-compress","false"],stripAnimations:!1,optimalMaxMeshCount:20,optimalMaxMeshHint:"Use fewer unique materials in your source model so primitives sharing the same material can be joined in the generated optimized model. Named nodes are preserved, reduce unnecessary named nodes to further reduce mesh count.",keepEmptyNamedNodes:!0},{suffix:"-no-animations",options:["--compress","false","--instance","false","--simplify","false","--texture-compress","false"],stripAnimations:!0,optimalMaxMeshCount:1,optimalMaxMeshHint:"Use a single material/texture atlas in your source model so all primitives can merge into one mesh in the generated optimized model.",keepEmptyNamedNodes:!1}]},OR=[bI,uI];class TY{static instance=new TY;optimize=process.env.NODE_ENV!=="production";_modelUriAnimationNames=new Map;_modelUriBoundingBoxes=new Map;_modelUriNodeNames=new Map;_modelUriTrimeshes=new Map;constructor(){}async preloadModels(){let A=await this._getAbsoluteModelPaths();console.info(`ModelRegistry.preloadModels(): Preloading ${A.length} models...`);let Q=performance.now();for(let Y of A){if(this.optimize)await this._resolveOptimizedModelPath(Y);await this._loadModelData(Y)}let B=performance.now();console.info(`ModelRegistry.preloadModels(): Preloaded ${A.length} models in ${B-Q}ms!`)}getAllModelUris(){return Array.from(this._modelUriBoundingBoxes.keys())}getAnimationNames(A){let Q=this._modelUriAnimationNames.get(A);if(!Q)return n.error(`ModelRegistry.getAnimationNames(): Model ${A} not found!`),[];return Q}getBoundingBox(A){let Q=this._modelUriBoundingBoxes.get(A);if(!Q)return n.error(`ModelRegistry.getBoundingBox(): Model ${A} not found!`),{min:{x:0,y:0,z:0},max:{x:1,y:1,z:1}};return Q}getDepth(A){let Q=this.getBoundingBox(A);return Q.max.z-Q.min.z}getHeight(A){let Q=this.getBoundingBox(A);return Q.max.y-Q.min.y}getNodeNames(A){let Q=this._modelUriNodeNames.get(A);if(!Q)return n.error(`ModelRegistry.getNodeNames(): Model ${A} not found!`),[];return Q}getTrimesh(A,Q={x:1,y:1,z:1}){let B=this._modelUriTrimeshes.get(A);if(!B){n.error(`ModelRegistry.getTrimesh(): Model ${A} not found!`);return}let Y=B.vertices;if(Q.x!==1||Q.y!==1||Q.z!==1){Y=new Float32Array(Y.length);for(let J=0;JK.getName()),Z=G.getRoot().listAnimations().map((K)=>K.getName()),U=await this._buildTrimesh(G),$={},E=new x4().registerExtensions(OR);for(let K of H8.OPTIMIZER_RUNS){let I=this._buildOptimizedModelPath(A),V=this._buildOptimizedSuffixedModelPath(I,K.suffix);$[K.suffix]={meshCount:(await E.read(V)).getRoot().listMeshes().length}}X={schemaVersion:H8.VERSION,source:{uri:Y,sha256:J},animationNames:Z,boundingBox:{min:{x:F.min[0],y:F.min[1],z:F.min[2]},max:{x:F.max[0],y:F.max[1],z:F.max[2]}},nodeNames:W,trimesh:U?{vertices:Array.from(U.vertices),indices:Array.from(U.indices)}:void 0,optimizedModelData:$};try{let K=qJ.dirname(B);I8.mkdirSync(K,{recursive:!0}),I8.writeFileSync(B,JSON.stringify(X))}catch(K){n.warning(`ModelRegistry._loadModelData(): Failed to write data file for ${Y}. Error: ${String(K)}`)}}if(process.env.NODE_ENV!=="production"&&!C)for(let G of H8.OPTIMIZER_RUNS){let F=X.optimizedModelData[G.suffix].meshCount;if(F>G.optimalMaxMeshCount)n.warning(`Model "${Y}" (${G.suffix}) has ${F} meshes (less is better, try not to exceed: ${G.optimalMaxMeshCount}). This may impact FPS if this model is used in a game. ${G.optimalMaxMeshHint}`)}this._modelUriAnimationNames.set(Y,X.animationNames),this._modelUriBoundingBoxes.set(Y,X.boundingBox),this._modelUriNodeNames.set(Y,X.nodeNames),this._modelUriTrimeshes.set(Y,X.trimesh?{vertices:new Float32Array(X.trimesh.vertices),indices:new Uint32Array(X.trimesh.indices)}:void 0)}async _resolveOptimizedModelPath(A){let Q=this._buildOptimizedModelPath(A);if(this._isOptimizedVersionValid(A))return Q;return await this._optimizeModel(A,Q)}_isOptimizedVersionValid(A){let Q=`${this._buildOptimizedModelPath(A)}${H8.CHECKSUM_EXT}`;if(!I8.existsSync(Q))return!1;let B=this._calculateChecksum(A),Y=I8.readFileSync(Q,"utf8");return B===Y}_calculateChecksum(A){if(!I8.existsSync(A))return"";let Q=I8.readFileSync(A);return PYB.createHash("sha256").update(Q.toString("base64")).update(H8.VERSION.toString()).digest("hex")}_buildOptimizedModelPath(A){let Q=qJ.basename(A),B=Q.replace(/\.[^/.]+$/,""),Y=qJ.dirname(A),J=qJ.join(Y,H8.OPTIMIZED_DIR,B);return qJ.join(J,Q)}_buildOptimizedSuffixedModelPath(A,Q){return A.replace(/(\.[^/.]+)$/,`${Q}.glb`)}async _buildTrimesh(A,Q=1,B=0.001){let Y=JCA(A);Y.setLogger(new R9(PI.WARN)),await Y.transform(r5A({pivot:"center"}),$g(),Ug(),Wg(),ICA({simplifier:bWA.MeshoptSimplifier,ratio:Q,error:B}),BCA());for(let $ of Y.getRoot().listScenes())for(let E of $.listChildren())ACA(E);let J=[],C=0,X=0;for(let $ of Y.getRoot().listMeshes())for(let E of $.listPrimitives()){let K=E.getAttribute("POSITION"),I=E.getIndices();if(!K||!I)continue;let V=K.getArray(),H=I.getArray(),D=H instanceof Uint32Array?H:new Uint32Array(H);if(V.length===0||D.length===0)continue;J.push({vertices:V,indices:D}),C+=V.length,X+=D.length}if(J.length===0){n.error("ModelRegistry._buildTrimesh(): Model has no primitives with POSITION and INDICES!");return}let G=new Float32Array(C),F=new Uint32Array(X),W=0,Z=0,U=0;for(let $ of J){G.set($.vertices,W);let E=$.vertices.length/3;for(let K=0;K<$.indices.length;K++)F[U+K]=$.indices[K]+Z;W+=$.vertices.length,U+=$.indices.length,Z+=E}return{vertices:G,indices:F}}async _optimizeModel(A,Q){let B=qJ.dirname(Q);I8.rmSync(B,{recursive:!0,force:!0}),I8.mkdirSync(B,{recursive:!0}),console.info(`ModelRegistry: Optimizing model ${this._absoluteModelPathToModelUri(A)}...`);for(let Y of H8.OPTIMIZER_RUNS){let J=this._buildOptimizedSuffixedModelPath(Q,Y.suffix),C=await this._preprocessOptimizableModel(A,Y),X=await WI("npx",["@gltf-transform/cli","optimize",C,J,...Y.options]);if(X.stderr)return n.warning(`ModelRegistry._optimizeModel(): Error optimizing model ${this._absoluteModelPathToModelUri(A)}, defaulting to unoptimized model. Error: ${X.stderr}`),A;await this._embedModelMetadata(J);let G=await WI("npx",["@gltf-transform/cli","uastc",J,J,"--level","4","--zstd","10"]);if(G.stderr)n.warning(`ModelRegistry._optimizeModel(): Error compressing textures for model ${this._absoluteModelPathToModelUri(A)}, continuing without compression. Error: ${G.stderr}`)}return I8.writeFileSync(`${Q}${H8.CHECKSUM_EXT}`,this._calculateChecksum(A)),Q}async _embedModelMetadata(A){try{let Q=new x4().registerExtensions(OR),B=await Q.read(A);for(let Y of B.getRoot().listMaterials()){let C=Y.getBaseColorTexture()?.getImage(),X=!1;if(C)try{let G=Y.getAlphaMode()==="MASK"?Y.getAlphaCutoff()??0.5:0,F=Y.getAlpha(),W=G/F*255,{data:Z}=(await sU.read(Buffer.from(C))).bitmap;for(let U=3;U=W&&Z[U]<255){X=!0;break}}catch{}Y.setExtras({...Y.getExtras(),hasTransparency:X})}await Q.write(A,B)}catch(Q){n.warning(`ModelRegistry._embedModelMetadata(): Failed to embed metadata for ${A}. Error: ${String(Q)}`)}}async _preprocessOptimizableModel(A,Q){let B=new x4().registerExtensions(OR),Y=await B.read(A),J=!1;if(Q.stripAnimations){let C=Y.getRoot().listAnimations();if(C.length>0)C.forEach((X)=>X.dispose()),J=!0}if(Q.keepEmptyNamedNodes)await Y.transform($g({cleanup:!1}),Ug({cleanup:!1,keepNamed:!0}),H3({keepLeaves:!0})),J=!0;if(J){let C=qJ.join(TYB.tmpdir(),H8.TEMP_DIR);I8.mkdirSync(C,{recursive:!0});let X=qJ.join(C,qJ.basename(A));return await B.write(X,Y),X}return A}}var rU;((J)=>{J.DYNAMIC="dynamic";J.FIXED="fixed";J.KINEMATIC_POSITION="kinematic_position";J.KINEMATIC_VELOCITY="kinematic_velocity"})(rU||={});var Zf=0.001,mWA="dynamic";class j7 extends BQ{_additionalMass=0;_colliders=new Set;_explicitSleep=!1;_enabledPositions={x:!0,y:!0,z:!0};_enabledRotations={x:!0,y:!0,z:!0};_rigidBody;_rigidBodyDesc;_rigidBodyType;_simulation;constructor(A){super();A.type??=mWA,this._rigidBodyDesc=this._createRigidBodyDesc(A),this._rigidBodyType=A.type,this._applyRigidBodyOptions(A),this._autoAddToSimulation(A)}get additionalMass(){if(!this._requireNotRemoved("additionalMass"))return 0;return this._additionalMass}get additionalSolverIterations(){if(!this._requireNotRemoved("additionalSolverIterations"))return 0;return this._rigidBody?this._rigidBody.additionalSolverIterations():this._rigidBodyDesc.additionalSolverIterations}get angularDamping(){if(!this._requireNotRemoved("angularDamping"))return 0;return this._rigidBody?this._rigidBody.angularDamping():this._rigidBodyDesc.angularDamping}get angularVelocity(){if(!this._requireNotRemoved("angularVelocity"))return{x:0,y:0,z:0};return this._rigidBody?this._rigidBody.angvel():this._rigidBodyDesc.angvel}get colliders(){return this._colliders}get dominanceGroup(){if(!this._requireNotRemoved("dominanceGroup"))return 0;return this._rigidBody?this._rigidBody.dominanceGroup():this._rigidBodyDesc.dominanceGroup}get directionFromRotation(){let{x:A,y:Q,z:B,w:Y}=this.rotation;return{x:-2*(A*B+Y*Q),y:-2*(Q*B-Y*A),z:-(1-2*(A*A+Q*Q))}}get effectiveAngularInertia(){if(!this._requireNotRemoved("effectiveAngularInertia"))return;return this._rigidBody?this._rigidBody.effectiveAngularInertia():void 0}get effectiveInverseMass(){if(!this._requireNotRemoved("effectiveInverseMass"))return;return this._rigidBody?this._rigidBody.effectiveInvMass():void 0}get enabledRotations(){if(!this._requireNotRemoved("enabledRotations"))return{x:!0,y:!0,z:!0};return this._enabledRotations}get enabledPositions(){if(!this._requireNotRemoved("enabledPositions"))return{x:!0,y:!0,z:!0};return this._enabledPositions}get gravityScale(){if(!this._requireNotRemoved("gravityScale"))return 0;return this._rigidBody?this._rigidBody.gravityScale():this._rigidBodyDesc.gravityScale}get inverseMass(){if(!this._requireNotRemoved("inverseMass"))return;return this._rigidBody?this._rigidBody.invMass():void 0}get isCcdEnabled(){if(!this._requireNotRemoved("isCcdEnabled"))return!1;return this._rigidBody?this._rigidBody.isCcdEnabled():this._rigidBodyDesc.ccdEnabled}get isDynamic(){if(!this._requireNotRemoved("isDynamic"))return!1;return this._rigidBodyType==="dynamic"}get isEnabled(){if(!this._requireNotRemoved("isEnabled"))return!1;return this._rigidBody?this._rigidBody.isEnabled():this._rigidBodyDesc.enabled}get isFixed(){if(!this._requireNotRemoved("isFixed"))return!1;return this._rigidBodyType==="fixed"}get isKinematic(){if(!this._requireNotRemoved("isKinematic"))return!1;return["kinematic_position","kinematic_velocity"].includes(this._rigidBodyType)}get isKinematicPositionBased(){if(!this._requireNotRemoved("isKinematicPositionBased"))return!1;return this._rigidBodyType==="kinematic_position"}get isKinematicVelocityBased(){if(!this._requireNotRemoved("isKinematicVelocityBased"))return!1;return this._rigidBodyType==="kinematic_velocity"}get isMoving(){if(!this._requireNotRemoved("isMoving"))return!1;return this._rigidBody?this._rigidBody.isMoving():!1}get isRemoved(){return!this._rigidBody&&!this._rigidBodyDesc}get isSimulated(){if(!this._requireNotRemoved("isSimulated"))return!1;return this._rigidBody?!0:!1}get isSleeping(){if(!this._requireNotRemoved("isSleeping"))return!1;return this._rigidBody?this._rigidBody.isSleeping():this._rigidBodyDesc.sleeping}get linearDamping(){if(!this._requireNotRemoved("linearDamping"))return 0;return this._rigidBody?this._rigidBody.linearDamping():this._rigidBodyDesc.linearDamping}get linearVelocity(){if(!this._requireNotRemoved("linearVelocity"))return{x:0,y:0,z:0};return this._rigidBody?this._rigidBody.linvel():this._rigidBodyDesc.linvel}get localCenterOfMass(){if(!this._requireNotRemoved("localCenterOfMass"))return{x:0,y:0,z:0};return this._rigidBody?this._rigidBody.localCom():this._rigidBodyDesc.centerOfMass}get mass(){if(!this._requireNotRemoved("mass"))return 0;return this._rigidBody?this._rigidBody.mass():this._rigidBodyDesc.mass}get nextKinematicRotation(){if(!this._requireNotRemoved("nextKinematicRotation"))return{x:0,y:0,z:0,w:1};return this._rigidBody?this._rigidBody.nextRotation():this._rigidBodyDesc.rotation}get nextKinematicPosition(){if(!this._requireNotRemoved("nextKinematicPosition"))return{x:0,y:0,z:0};return this._rigidBody?this._rigidBody.nextTranslation():this._rigidBodyDesc.translation}get numColliders(){return this._colliders.size}get principalAngularInertia(){if(!this._requireNotRemoved("principalAngularInertia"))return{x:0,y:0,z:0};return this._rigidBody?this._rigidBody.principalInertia():this._rigidBodyDesc.principalAngularInertia}get principalAngularInertiaLocalFrame(){if(!this._requireNotRemoved("principalAngularInertiaLocalFrame"))return;return this._rigidBody?this._rigidBody.principalInertiaLocalFrame():void 0}get position(){if(!this._requireNotRemoved("position"))return{x:0,y:0,z:0};return this._rigidBody?this._rigidBody.translation():this._rigidBodyDesc.translation}get rawRigidBody(){if(!this._requireNotRemoved("rawRigidBody"))return;return this._rigidBody}get rotation(){if(!this._requireNotRemoved("rotation"))return{x:0,y:0,z:0,w:1};return this._rigidBody?this._rigidBody.rotation():this._rigidBodyDesc.rotation}get softCcdPrediction(){if(!this._requireNotRemoved("softCcdPrediction"))return 0;return this._rigidBody?this._rigidBody.softCcdPrediction():this._rigidBodyDesc.softCcdPrediction}get type(){if(!this._requireNotRemoved("type"))return"dynamic";return this._rigidBodyType}get worldCenterOfMass(){if(!this._requireNotRemoved("worldCenterOfMass"))return;return this._rigidBody?this._rigidBody.worldCom():void 0}setAdditionalMass(A){if(!this._requireDynamic("setAdditionalMass"))return;if(!this._requireNotRemoved("setAdditionalMass"))return;this._rigidBody?this._rigidBody.setAdditionalMass(A,!this._explicitSleep):this._rigidBodyDesc.setAdditionalMass(A)}setAdditionalMassProperties(A){if(!this._requireDynamic("setAdditionalMassProperties"))return;if(!this._requireNotRemoved("setAdditionalMassProperties"))return;let{additionalMass:Q,centerOfMass:B,principalAngularInertia:Y,principalAngularInertiaLocalFrame:J}=A;this._rigidBody?this._rigidBody.setAdditionalMassProperties(Q,B,Y,J,!this._explicitSleep):this._rigidBodyDesc.setAdditionalMassProperties(Q,B,Y,J)}setAdditionalSolverIterations(A){if(!this._requireDynamic("setAdditionalSolverIterations"))return;if(!this._requireNotRemoved("setAdditionalSolverIterations"))return;this._rigidBody?this._rigidBody.setAdditionalSolverIterations(A):this._rigidBodyDesc.setAdditionalSolverIterations(A)}setAngularDamping(A){if(!this._requireDynamic("setAngularDamping"))return;if(!this._requireNotRemoved("setAngularDamping"))return;this._rigidBody?this._rigidBody.setAngularDamping(A):this._rigidBodyDesc.setAngularDamping(A)}setAngularVelocity(A){if(!this._requireNotKinematicPositionBased("setAngularVelocity"))return;if(!this._requireNotRemoved("setAngularVelocity"))return;this._rigidBody?this._rigidBody.setAngvel(A,!this._explicitSleep):this._rigidBodyDesc.setAngvel(A)}setCcdEnabled(A){if(!this._requireDynamic("setCcdEnabled"))return;if(!this._requireNotRemoved("setCcdEnabled"))return;this._rigidBody?this._rigidBody.enableCcd(A):this._rigidBodyDesc.setCcdEnabled(A)}setDominanceGroup(A){if(!this._requireDynamic("setDominanceGroup"))return;if(!this._requireNotRemoved("setDominanceGroup"))return;this._rigidBody?this._rigidBody.setDominanceGroup(A):this._rigidBodyDesc.setDominanceGroup(A)}setEnabled(A){if(!this._requireNotRemoved("setEnabled"))return;this._rigidBody?this._rigidBody.setEnabled(A):this._rigidBodyDesc.setEnabled(A)}setEnabledPositions(A){if(!this._requireDynamic("setEnabledPositions"))return;if(!this._requireNotRemoved("setEnabledPositions"))return;this._rigidBody?this._rigidBody.setEnabledTranslations(A.x,A.y,A.z,!this._explicitSleep):this._rigidBodyDesc.enabledTranslations(A.x,A.y,A.z),this._enabledPositions=A}setEnabledRotations(A){if(!this._requireDynamic("setEnabledRotations"))return;if(!this._requireNotRemoved("setEnabledRotations"))return;this._rigidBody?this._rigidBody.setEnabledRotations(A.x,A.y,A.z,!this._explicitSleep):this._rigidBodyDesc.enabledRotations(A.x,A.y,A.z),this._enabledRotations=A}setGravityScale(A){if(!this._requireDynamic("setGravityScale"))return;if(!this._requireNotRemoved("setGravityScale"))return;this._rigidBody?this._rigidBody.setGravityScale(A,!this._explicitSleep):this._rigidBodyDesc.setGravityScale(A)}setLinearDamping(A){if(!this._requireDynamic("setLinearDamping"))return;if(!this._requireNotRemoved("setLinearDamping"))return;this._rigidBody?this._rigidBody.setLinearDamping(A):this._rigidBodyDesc.setLinearDamping(A)}setLinearVelocity(A){if(!this._requireNotKinematicPositionBased("setLinearVelocity"))return;if(!this._requireNotRemoved("setLinearVelocity"))return;this._rigidBody?this._rigidBody.setLinvel(A,!this._explicitSleep):this._rigidBodyDesc.setLinvel(A.x,A.y,A.z)}setNextKinematicRotation(A){if(!this._requireKinematic("setNextKinematicRotation"))return;if(!this._requireNotRemoved("setNextKinematicRotation"))return;this._rigidBody?this._rigidBody.setNextKinematicRotation(A):this._rigidBodyDesc.setRotation(A)}setNextKinematicPosition(A){if(!this._requireKinematic("setNextKinematicPosition"))return;if(!this._requireNotRemoved("setNextKinematicPosition"))return;this._rigidBody?this._rigidBody.setNextKinematicTranslation(A):this._rigidBodyDesc.setTranslation(A.x,A.y,A.z)}setPosition(A){if(!this._requireNotRemoved("setPosition"))return;this._rigidBody?this._rigidBody.setTranslation(A,!this._explicitSleep):this._rigidBodyDesc.setTranslation(A.x,A.y,A.z)}setRotation(A){if(!this._requireNotRemoved("setRotation"))return;this._rigidBody?this._rigidBody.setRotation(A,!this._explicitSleep):this._rigidBodyDesc.setRotation(A)}setSleeping(A){if(!this._requireDynamic("setSleeping"))return;if(!this._requireNotRemoved("setSleeping"))return;this._rigidBody?A?this._rigidBody.sleep():this._rigidBody.wakeUp():this._rigidBodyDesc.sleeping=A,this._explicitSleep=A}setSoftCcdPrediction(A){if(!this._requireDynamic("setSoftCcdPrediction"))return;if(!this._requireNotRemoved("setSoftCcdPrediction"))return;this._rigidBody?this._rigidBody.setSoftCcdPrediction(A):this._rigidBodyDesc.setSoftCcdPrediction(A)}setCollisionGroupsForSolidColliders(A){if(!this._requireNotRemoved("setCollisionGroupsForSolidColliders"))return;this._colliders.forEach((Q)=>{if(Q.isSensor)return;Q.setCollisionGroups(A)})}setCollisionGroupsForSensorColliders(A){if(!this._requireNotRemoved("setCollisionGroupsForSensorColliders"))return;this._colliders.forEach((Q)=>{if(!Q.isSensor)return;Q.setCollisionGroups(A)})}setType(A){if(!this._requireNotRemoved("setType"))return;let B={["dynamic"]:FB.RigidBodyType.Dynamic,["fixed"]:FB.RigidBodyType.Fixed,["kinematic_position"]:FB.RigidBodyType.KinematicPositionBased,["kinematic_velocity"]:FB.RigidBodyType.KinematicVelocityBased}[A];if(B===void 0)return n.error(`Invalid RigidBodyType: ${A}`);this._rigidBody?this._rigidBody.setBodyType(B,!this._explicitSleep):this._rigidBodyDesc.status=B,this._rigidBodyType=A}addForce(A){if(!this._requireNotRemoved("addForce"))return;if(!this._requireCreated("addForce"))return;if(!this._requireDynamic("addForce"))return;if(this._isNegligibleVector(A))return;this._rigidBody.addForce(A,!this._explicitSleep)}addTorque(A){if(!this._requireNotRemoved("addTorque"))return;if(!this._requireCreated("addTorque"))return;if(!this._requireDynamic("addTorque"))return;if(this._isNegligibleVector(A))return;this._rigidBody.addTorque(A,!this._explicitSleep)}addChildColliderToSimulation(A){if(!this._requireNotRemoved("addChildColliderToSimulation"))return;if(!this._requireCreated("addChildColliderToSimulation"))return;A.addToSimulation(this._simulation,this)}addToSimulation(A){if(!this._requireNotRemoved("addToSimulation"))return;if(this._rigidBody)return n.error("RigidBody.addToSimulation(): Rigid body already exists in the simulation!");this._simulation=A,this._rigidBody=this._simulation.createRawRigidBody(this._rigidBodyDesc),this._colliders.forEach((Q)=>{if(!Q.isSimulated)Q.addToSimulation(A,this)})}applyImpulse(A){if(!this._requireNotRemoved("applyImpulse"))return;if(!this._requireCreated("applyImpulse"))return;if(!this._requireDynamic("applyImpulse"))return;if(this._isNegligibleVector(A))return;this._rigidBody.applyImpulse(A,!this._explicitSleep)}applyImpulseAtPoint(A,Q){if(!this._requireNotRemoved("applyImpulseAtPoint"))return;if(!this._requireCreated("applyImpulseAtPoint"))return;if(!this._requireDynamic("applyImpulseAtPoint"))return;if(this._isNegligibleVector(A))return;this._rigidBody.applyImpulseAtPoint(A,Q,!this._explicitSleep)}applyTorqueImpulse(A){if(!this._requireNotRemoved("applyTorqueImpulse"))return;if(!this._requireCreated("applyTorqueImpulse"))return;if(!this._requireDynamic("applyTorqueImpulse"))return;this._rigidBody.applyTorqueImpulse(A,!this._explicitSleep)}createAndAddChildCollider(A){if(!this._requireNotRemoved("createAndAddChildCollider"))return null;return this._simulation?new S9({...A,parentRigidBody:this,simulation:this._simulation}):this._createAndAddPendingChildCollider(A)}createAndAddChildColliders(A){let Q=[];return A.forEach((B)=>{let Y=this.createAndAddChildCollider(B);if(Y)Q.push(Y)}),Q}getCollidersByTag(A){let Q=[];for(let B of this._colliders)if(B.tag===A)Q.push(B);return Q}linkCollider(A){if(!this._requireNotRemoved("linkCollider"))return;if(A.parentRigidBody!==this)return n.error("RigidBody.linkCollider(): Collider cannot be linked because it is not a child of this rigid body!");this._colliders.add(A)}lockAllRotations(){if(!this._requireNotRemoved("lockAllRotations"))return;this.setEnabledRotations({x:!1,y:!1,z:!1})}lockAllPositions(){if(!this._requireNotRemoved("lockAllPositions"))return;this.setEnabledPositions({x:!1,y:!1,z:!1})}removeFromSimulation(){if(!this._requireNotRemoved("removeFromSimulation"))return;if(!this._rigidBody)return n.error("RigidBody.removeFromSimulation(): Rigid body does not exist in the simulation!");this._colliders.forEach((A)=>{A.removeFromSimulation()}),this._simulation.removeRawRigidBody(this._rigidBody),this._simulation=void 0,this._rigidBody=void 0}unlinkCollider(A){if(!this._requireNotRemoved("unlinkCollider"))return;if(!A.isRemoved)return n.error("RigidBody.unlinkCollider(): Collider is still simulated and therefore cannot be unlinked from this rigid body!");this._colliders.delete(A)}resetAngularVelocity(){if(!this._requireNotRemoved("resetAngularVelocity"))return;if(!this._requireCreated("resetAngularVelocity"))return;this.setAngularVelocity({x:0,y:0,z:0})}resetForces(){if(!this._requireNotRemoved("resetForces"))return;if(!this._requireCreated("resetForces"))return;this._rigidBody.resetForces(!this._explicitSleep)}resetLinearVelocity(){if(!this._requireNotRemoved("resetLinearVelocity"))return;if(!this._requireCreated("resetLinearVelocity"))return;this.setLinearVelocity({x:0,y:0,z:0})}resetTorques(){if(!this._requireNotRemoved("resetTorques"))return;if(!this._requireCreated("resetTorques"))return;this._rigidBody.resetTorques(!this._explicitSleep)}sleep(){if(!this._requireNotRemoved("sleep"))return;this.setSleeping(!0)}wakeUp(){if(!this._requireNotRemoved("wakeUp"))return;this.setSleeping(!1)}_applyRigidBodyOptions(A){[["additionalMass",this.setAdditionalMass.bind(this)],["additionalMassProperties",this.setAdditionalMassProperties.bind(this)],["additionalSolverIterations",this.setAdditionalSolverIterations.bind(this)],["angularDamping",this.setAngularDamping.bind(this)],["angularVelocity",this.setAngularVelocity.bind(this)],["dominanceGroup",this.setDominanceGroup.bind(this)],["ccdEnabled",this.setCcdEnabled.bind(this)],["enabled",this.setEnabled.bind(this)],["enabledPositions",this.setEnabledPositions.bind(this)],["enabledRotations",this.setEnabledRotations.bind(this)],["gravityScale",this.setGravityScale.bind(this)],["linearDamping",this.setLinearDamping.bind(this)],["linearVelocity",this.setLinearVelocity.bind(this)],["position",this.setPosition.bind(this)],["rotation",this.setRotation.bind(this)],["sleeping",this.setSleeping.bind(this)],["softCcdPrediction",this.setSoftCcdPrediction.bind(this)]].forEach(([B,Y])=>{if(B in A)Y(A[B])})}_autoAddToSimulation(A){if(A.colliders)this._createAndAddPendingChildColliders(A.colliders);if(A.simulation)this.addToSimulation(A.simulation)}_createAndAddPendingChildCollider(A){if(!this._requireNotRemoved("createAndAddPendingChildCollider"))return null;if(!this._requireNotSimulated("createAndAddPendingChildCollider"))return null;let Q=new S9(A);return this._colliders.add(Q),Q}_createAndAddPendingChildColliders(A){let Q=[];return A.forEach((B)=>{let Y=this._createAndAddPendingChildCollider(B);if(Y)Q.push(Y)}),Q}_createRigidBodyDesc(A){let Q=A.type??mWA;return{["dynamic"]:()=>FB.RigidBodyDesc.dynamic(),["fixed"]:()=>FB.RigidBodyDesc.fixed(),["kinematic_position"]:()=>FB.RigidBodyDesc.kinematicPositionBased(),["kinematic_velocity"]:()=>FB.RigidBodyDesc.kinematicVelocityBased()}[Q]()}_requireCreated(A){if(!this._rigidBody||!this._simulation)n.error(`RigidBody._requireCreated(): Rigid body has not been created and therefore does not support the invoked method: ${A}()`);return!!this._rigidBody&&!!this._simulation}_requireDynamic(A){if(!this.isDynamic)n.error(`RigidBody._requireDynamic(): Rigid body is not dynamic and therefore does not support the invoked method: ${A}()`);return this.isDynamic}_requireKinematic(A){if(!this.isKinematic)n.error(`RigidBody._requireKinematic(): Rigid body is not kinematic and therefore does not support the invoked method: ${A}()`);return this.isKinematic}_requireNotKinematicPositionBased(A){if(this.isKinematicPositionBased)n.error(`RigidBody._requireNotKinematicPositionBased(): Rigid body is kinematic position based and therefore does not support the invoked method: ${A}()`);return!this.isKinematicPositionBased}_requireNotRemoved(A){if(!this._rigidBody&&!this._rigidBodyDesc)n.error(`RigidBody._requireNotRemoved(): Rigid body has been removed and therefore does not support the invoked method: ${A}()`);return!!this._rigidBody||!!this._rigidBodyDesc}_requireNotSimulated(A){if(this.isSimulated)n.error(`RigidBody._requireNotSimulated(): Rigid body is simulated and therefore does not support the invoked method: ${A}()`);return!this.isSimulated}_isNegligibleVector(A){return Math.abs(A.x){J[J.Average=0]="Average";J[J.Min=1]="Min";J[J.Multiply=2]="Multiply";J[J.Max=3]="Max"})($f||={});var aU;((Z)=>{Z.NONE="none";Z.BALL="ball";Z.BLOCK="block";Z.CAPSULE="capsule";Z.CONE="cone";Z.CYLINDER="cylinder";Z.ROUND_CYLINDER="round-cylinder";Z.TRIMESH="trimesh";Z.VOXELS="voxels";Z.WEDGE="wedge"})(aU||={});class S9 extends BQ{_collider;_colliderDesc;_onCollision;_parentRigidBody;_relativePosition={x:0,y:0,z:0};_relativeRotation={x:0,y:0,z:0,w:1};_scale={x:1,y:1,z:1};_shape;_simulation;_tag;constructor(A){super();this._colliderDesc=this._createColliderDesc(A),this._shape=A.shape,this._applyColliderOptions(A),this._autoAddToSimulation(A)}static optionsFromBlockHalfExtents(A){return{shape:"block",halfExtents:A}}static optionsFromModelUri(A,Q=1,B){Q=typeof Q==="number"?{x:Q,y:Q,z:Q}:Q;let Y=TY.instance.getBoundingBox(A),J=Y.max.x-Y.min.x,C=Y.max.y-Y.min.y,X=Y.max.z-Y.min.z,G=J*Q.x,F=C*Q.y,W=X*Q.z,Z=Math.max(G,W),U=Math.min(G,W),$=Z/U,E=Z/F,K=Z/2,I=(M)=>Math.max(0.01,M),V=()=>({shape:"block",halfExtents:{x:I(G/2),y:I(F/2),z:I(W/2)}}),H=()=>({shape:"round-cylinder",radius:I(K),halfHeight:I(F/2),borderRadius:I(K*0.1)}),D=()=>{let M=TY.instance.getTrimesh(A,Q);if(!M)return;return{shape:"trimesh",vertices:M.vertices,indices:M.indices}},L=()=>({shape:"wedge",extents:{x:G,y:F,z:W}}),z=()=>({shape:"capsule",radius:I(K),halfHeight:I(F/2-K)});if(B)switch(B){case"block":return V();case"capsule":return z();case"round-cylinder":return H();case"trimesh":{let M=D();if(!M){n.error(`Collider.optionsFromModelUri(): Failed to create trimesh options for model ${A}, falling back to generic shape!`);break}return M}case"wedge":return L();default:n.warning(`Collider.optionsFromModelUri(): Preferred shape ${B} is not yet supported with Collider.optionsFromModelUri(), defaulting to generic shape!`)}if($>2)return V();if(E>1.5)return H();return z()}get bounciness(){if(!this._requireNotRemoved("bounciness"))return 0;return this._collider?this._collider.restitution():this._colliderDesc.restitution}get bouncinessCombineRule(){if(!this._requireNotRemoved("bouncinessCombineRule"))return 0;return this._collider?this._collider.restitutionCombineRule():this._colliderDesc.restitutionCombineRule}get collisionGroups(){if(!this._requireNotRemoved("collisionGroups"))return{belongsTo:[],collidesWith:[]};return this._collider?$C.decodeRawCollisionGroups(this._collider.collisionGroups()):$C.decodeRawCollisionGroups(this._colliderDesc.collisionGroups)}get friction(){if(!this._requireNotRemoved("friction"))return 0;return this._collider?this._collider.friction():this._colliderDesc.friction}get frictionCombineRule(){if(!this._requireNotRemoved("frictionCombineRule"))return 0;return this._collider?this._collider.frictionCombineRule():this._colliderDesc.frictionCombineRule}get isEnabled(){if(!this._requireNotRemoved("isEnabled"))return!1;return this._collider?this._collider.isEnabled():this._colliderDesc.enabled}get isRemoved(){return!this._collider&&!this._colliderDesc}get isSensor(){if(!this._requireNotRemoved("isSensor"))return!1;return this._collider?this._collider.isSensor():this._colliderDesc.isSensor}get isSimulated(){if(!this._requireNotRemoved("isSimulated"))return!1;return!!this._collider}get isBall(){return this.shape==="ball"}get isBlock(){return this.shape==="block"}get isCapsule(){return this.shape==="capsule"}get isCone(){return this.shape==="cone"}get isCylinder(){return this.shape==="cylinder"}get isNone(){return this.shape==="none"}get isRoundCylinder(){return this.shape==="round-cylinder"}get isTrimesh(){return this.shape==="trimesh"}get isVoxel(){return this.shape==="voxels"}get isWedge(){return this.shape==="wedge"}get parentRigidBody(){if(!this._requireNotRemoved("parentRigidBody"))return;return this._parentRigidBody}get rawCollider(){if(!this._requireNotRemoved("rawCollider"))return;return this._collider}get rawShape(){if(!this._requireNotRemoved("rawShape"))return;return this._collider?this._collider.shape:this._colliderDesc.shape}get relativePosition(){if(!this._requireNotRemoved("relativePosition"))return{x:0,y:0,z:0};return this._relativePosition}get relativeRotation(){if(!this._requireNotRemoved("relativeRotation"))return{x:0,y:0,z:0,w:1};return this._relativeRotation}get scale(){if(!this._requireNotRemoved("scale"))return{x:1,y:1,z:1};return this._scale}get shape(){if(!this._requireNotRemoved("shape"))return"none";return this._shape}get tag(){if(!this._requireNotRemoved("tag"))return;return this._tag}setBounciness(A){if(!this._requireNotRemoved("setBounciness"))return;this._collider?this._collider.setRestitution(A):this._colliderDesc.setRestitution(A)}setBouncinessCombineRule(A){if(!this._requireNotRemoved("setBouncinessCombineRule"))return;this._collider?this._collider.setRestitutionCombineRule(A):this._colliderDesc.setRestitutionCombineRule(A)}setCollisionGroups(A){if(!this._requireNotRemoved("setCollisionGroups"))return;let Q=$C.buildRawCollisionGroups(A);this._collider?this._collider.setCollisionGroups(Q):this._colliderDesc.setCollisionGroups(Q)}setEnabled(A){if(!this._requireNotRemoved("setEnabled"))return;this._collider?this._collider.setEnabled(A):this._colliderDesc.setEnabled(A)}setFriction(A){if(!this._requireNotRemoved("setFriction"))return;this._collider?this._collider.setFriction(A):this._colliderDesc.setFriction(A)}setFrictionCombineRule(A){if(!this._requireNotRemoved("setFrictionCombineRule"))return;this._collider?this._collider.setFrictionCombineRule(A):this._colliderDesc.setFrictionCombineRule(A)}setHalfExtents(A){if(!this._requireSimulated("setHalfExtents"))return;if(!this._requireNotRemoved("setHalfExtents"))return;if(this.shape!=="block")return n.error("Collider.setHalfExtents(): Collider is not a block collider!");this._collider.setHalfExtents(A)}setHalfHeight(A){if(!this._requireSimulated("setHalfHeight"))return;if(!this._requireNotRemoved("setHalfHeight"))return;if(this.shape!=="capsule"&&this.shape!=="cone"&&this.shape!=="cylinder"&&this.shape!=="round-cylinder")return n.error("Collider.setHalfHeight(): Collider is not a capsule, cone, cylinder, or round cylinder collider!");this._collider.setHalfHeight(A)}setMass(A){if(!this._requireNotRemoved("setMass"))return;this._collider?this._collider.setMass(A):this._colliderDesc.setMass(A)}setOnCollision(A){if(!this._requireNotRemoved("setOnCollision"))return;if(this._onCollision=A,this.isSimulated)if(this.enableCollisionEvents(!!A),A)this._simulation.colliderMap.setColliderCollisionCallback(this,A);else this._simulation.colliderMap.removeColliderCollisionCallback(this)}setRadius(A){if(!this._requireSimulated("setRadius"))return;if(!this._requireNotRemoved("setRadius"))return;if(this.shape!=="ball"&&this.shape!=="capsule"&&this.shape!=="cylinder"&&this.shape!=="round-cylinder")return n.error("Collider.setRadius(): Collider is not a ball, capsule, cylinder, or round cylinder collider!");this._collider.setRadius(A)}setRelativeRotation(A){if(!this._requireNotRemoved("setRelativeRotation"))return;this._relativeRotation=A,this._collider?this._collider.parent()?this._collider.setRotationWrtParent(A):this._collider.setRotation(A):this._colliderDesc.setRotation(A)}setRelativePosition(A){if(!this._requireNotRemoved("setRelativePosition"))return;this._relativePosition=A,this._collider?this._collider.parent()?this._collider.setTranslationWrtParent(A):this._collider.setTranslation(A):this._colliderDesc.setTranslation(A.x,A.y,A.z)}setSensor(A){if(!this._requireNotRemoved("setSensor"))return;this._collider?this._collider.setSensor(A):this._colliderDesc.setSensor(A)}setTag(A){if(!this._requireNotRemoved("setTag"))return;this._tag=A}setVoxel(A,Q){if(!this._requireNotRemoved("setVoxel"))return;if(!this._requireSimulated("setVoxel"))return;if(this.shape!=="voxels")return n.error("Collider.setVoxel(): Collider is not a voxels collider!");this._collider.setVoxel(A.x,A.y,A.z,Q)}addToSimulation(A,Q){if(!this._requireNotRemoved("addToSimulation"))return;if(!this._requireUnsimulated("addToSimulation"))return;if(Q){if(!Q.isSimulated)return n.error("Collider.addToSimulation(): Rigid body must be simulated before adding a collider to it!");if(Q.type==="dynamic"&&this.shape==="trimesh")n.warning("Collider.addToSimulation(): Trimesh colliders are strongly discouraged to be used with dynamic rigid bodies, they will not contribute any mass!")}if(this._simulation=A,this._parentRigidBody=Q,this._collider=this._simulation.createRawCollider(this._colliderDesc,Q?.rawRigidBody),this._colliderDesc=void 0,Q)Q.linkCollider(this);if(this._onCollision)this.setOnCollision(this._onCollision)}combineVoxelStates(A){if(!this._requireNotRemoved("combineVoxelStates"))return;if(!this._requireSimulated("combineVoxelStates"))return;if(!A.isSimulated)return n.error("Collider.combineVoxelStates(): Other collider is not simulated!");if(this.shape!=="voxels")return n.error("Collider.combineVoxelStates(): Collider is not a voxels collider!");if(A.shape!=="voxels")return n.error("Collider.combineVoxelStates(): Other collider is not a voxels collider!");this._collider.combineVoxelStates(A.rawCollider,0,0,0)}enableCollisionEvents(A){if(!this._requireNotRemoved("enableCollisionEvents"))return;let Q=this._collider?this._collider.activeEvents():this._colliderDesc.activeEvents,B=A?Q|FB.ActiveEvents.COLLISION_EVENTS:Q&~FB.ActiveEvents.COLLISION_EVENTS;(this._collider??this._colliderDesc).setActiveEvents(B),this._setActiveCollisionTypes()}enableContactForceEvents(A){if(!this._requireNotRemoved("enableContactForceEvents"))return;let Q=this._collider?this._collider.activeEvents():this._colliderDesc.activeEvents,B=A?Q|FB.ActiveEvents.CONTACT_FORCE_EVENTS:Q&~FB.ActiveEvents.CONTACT_FORCE_EVENTS;(this._collider??this._colliderDesc).setActiveEvents(B),this._setActiveCollisionTypes()}propagateVoxelChange(A,Q){if(!this._requireNotRemoved("propagateVoxelChange"))return;if(!this._requireSimulated("propagateVoxelChange"))return;if(!A.isSimulated)return n.error("Collider.propagateVoxelChange(): Other collider is not simulated!");if(this.shape!=="voxels")return n.error("Collider.propagateVoxelChange(): Collider is not a voxels collider!");if(A.shape!=="voxels")return n.error("Collider.propagateVoxelChange(): Other collider is not a voxels collider!");this._collider.propagateVoxelChange(A.rawCollider,Q.x,Q.y,Q.z,0,0,0)}removeFromSimulation(){if(!this._requireNotRemoved("removeFromSimulation"))return;if(!this._requireSimulated("removeFromSimulation"))return;if(this._simulation.removeRawCollider(this._collider),this._simulation=void 0,this._collider=void 0,this._parentRigidBody)this._parentRigidBody.unlinkCollider(this);this._parentRigidBody=void 0}setScale(A){if(!this._requireNotRemoved("scale"))return;let Q={x:A.x/this._scale.x,y:A.y/this._scale.y,z:A.z/this._scale.z};this.setRelativePosition({x:this.relativePosition.x*Q.x,y:this.relativePosition.y*Q.y,z:this.relativePosition.z*Q.z});let B=Math.max(this._scale.x,this._scale.z),J=Math.max(A.x,A.z)/B;switch(this._scale=A,this._shape){case"ball":{if(this._collider)this._collider.setRadius(this._collider.radius()*J);else this._colliderDesc.shape.radius*=J;return}case"block":{if(this._collider){let C=this._collider.halfExtents();this._collider.setHalfExtents({x:C.x*Q.x,y:C.y*Q.y,z:C.z*Q.z})}else this._colliderDesc.shape.halfExtents.x*=Q.x,this._colliderDesc.shape.halfExtents.y*=Q.y,this._colliderDesc.shape.halfExtents.z*=Q.z;return}case"capsule":{if(this._collider)this._collider.setHalfHeight(this._collider.halfHeight()*Q.y),this._collider.setRadius(this._collider.radius()*J);else this._colliderDesc.shape.halfHeight*=Q.y,this._colliderDesc.shape.radius*=J;return}case"cone":{if(this._collider)this._collider.setHalfHeight(this._collider.halfHeight()*Q.y),this._collider.setRadius(this._collider.radius()*J);else this._colliderDesc.shape.halfHeight*=Q.y,this._colliderDesc.shape.radius*=J;return}case"cylinder":{if(this._collider)this._collider.setHalfHeight(this._collider.halfHeight()*Q.y),this._collider.setRadius(this._collider.radius()*J);else this._colliderDesc.shape.halfHeight*=Q.y,this._colliderDesc.shape.radius*=J;return}case"round-cylinder":{if(this._collider)this._collider.setHalfHeight(this._collider.halfHeight()*Q.y),this._collider.setRoundRadius(this._collider.roundRadius()*J),this._collider.setRadius(this._collider.radius()*J);else this._colliderDesc.shape.halfHeight=this._colliderDesc.shape.halfHeight*Q.y,this._colliderDesc.shape.borderRadius=this._colliderDesc.shape.borderRadius*J,this._colliderDesc.shape.radius=this._colliderDesc.shape.radius*J;return}case"trimesh":{n.error("Collider.setScale(): Trimesh colliders cannot be scaled at runtime!");return}case"voxels":{n.error("Collider.setScale(): Voxels colliders cannot be scaled!");return}case"wedge":{n.error("Collider.setScale(): Wedge colliders cannot be scaled!");return}default:n.fatalError(`Collider.setScale(): ${this._shape} is not a valid collider shape!`)}}_applyColliderOptions(A){[["bounciness",this.setBounciness.bind(this)],["bouncinessCombineRule",this.setBouncinessCombineRule.bind(this)],["collisionGroups",this.setCollisionGroups.bind(this)],["enabled",this.setEnabled.bind(this)],["friction",this.setFriction.bind(this)],["frictionCombineRule",this.setFrictionCombineRule.bind(this)],["isSensor",this.setSensor.bind(this)],["mass",this.setMass.bind(this)],["onCollision",this.setOnCollision.bind(this)],["relativePosition",this.setRelativePosition.bind(this)],["relativeRotation",this.setRelativeRotation.bind(this)],["tag",this.setTag.bind(this)]].forEach(([B,Y])=>{if(A[B]!==void 0)Y.call(this,A[B])})}_autoAddToSimulation(A){if(A.simulation)this.addToSimulation(A.simulation,A.parentRigidBody)}_buildWedgeConvexHullVertices(A){let{x:Q,y:B,z:Y}=A,J=Q/2,C=Y/2,X=B/2;return new Float32Array([-J,0-X,-C,J,0-X,-C,J,0-X,C,-J,0-X,C,-J,B-X,-C,J,B-X,-C])}_createColliderDesc(A){let{shape:Q,flags:B}=A;switch(Q){case"ball":{if(!A.radius)n.fatalError("Ball collider must have a radius!");return FB.ColliderDesc.ball(A.radius)}case"block":{if(!A.halfExtents)n.fatalError("Block collider must have halfExtents!");return FB.ColliderDesc.cuboid(A.halfExtents.x,A.halfExtents.y,A.halfExtents.z)}case"capsule":{if(!A.halfHeight||!A.radius)n.fatalError("Capsule collider must have halfHeight and radius!");return FB.ColliderDesc.capsule(A.halfHeight,A.radius)}case"cone":{if(!A.radius||!A.halfHeight)n.fatalError("Cone collider must have radius and halfHeight!");return FB.ColliderDesc.cone(A.halfHeight,A.radius)}case"cylinder":{if(!A.radius||!A.halfHeight)n.fatalError("Cylinder collider must have radius and halfHeight!");return FB.ColliderDesc.cylinder(A.halfHeight,A.radius)}case"round-cylinder":{if(!A.radius||!A.halfHeight||!A.borderRadius)n.fatalError("Round cylinder collider must have radius, halfHeight, and borderRadius!");return FB.ColliderDesc.roundCylinder(A.halfHeight,A.radius,A.borderRadius)}case"trimesh":{if(!A.indices||!A.vertices)n.fatalError("Trimesh collider must have vertices and indices!");return FB.ColliderDesc.trimesh(A.vertices,A.indices,B)}case"voxels":{if(!A.coordinates||!A.size)n.fatalError("Voxels collider must have coordinates and size!");return FB.ColliderDesc.voxels(this._coordinatesToInt32Array(A.coordinates),A.size)}case"wedge":{if(!A.extents)n.fatalError("Wedge collider must have extents!");let Y=this._buildWedgeConvexHullVertices(A.extents),J=FB.ColliderDesc.convexHull(Y);if(!J)throw n.fatalError("Failed to create convex hull for wedge collider!"),Error("Convex hull creation failed");return J}default:n.fatalError(`Collider._createColliderDesc(): ${Q} is not a valid collider shape!`)}}_requireSimulated(A){if(!this.isSimulated)n.error(`Collider._requireSimulated(): Collider is not simulated, invoked method: ${A}()`);return this.isSimulated}_requireUnsimulated(A){if(this.isSimulated)n.error(`Collider._requireUnsimulated(): Collider is already simulated, invoked method: ${A}()`);return!this.isSimulated}_requireNotRemoved(A){if(this.isRemoved)n.error(`Collider._requireNotRemoved(): Collider is removed, invoked method: ${A}()`);return!this.isRemoved}_setActiveCollisionTypes(){(this._collider??this._colliderDesc).setActiveCollisionTypes(FB.ActiveCollisionTypes.DYNAMIC_DYNAMIC|FB.ActiveCollisionTypes.DYNAMIC_KINEMATIC|FB.ActiveCollisionTypes.DYNAMIC_FIXED|FB.ActiveCollisionTypes.KINEMATIC_KINEMATIC|FB.ActiveCollisionTypes.KINEMATIC_FIXED)}_coordinatesToInt32Array(A){let Q=new Int32Array(A.length*3);for(let B=0;Bthis.serializeBlockType(Q))}static serializeChunk(A){return{c:this.serializeVector(A.originCoordinate),b:Array.from(A.blocks),r:Array.from(A.blockRotations).flatMap(([Q,B])=>[Q,B.enumIndex])}}static serializeEntity(A){if(!A.world||A.id===void 0)n.fatalError("Serializer.serializeEntity(): Entity is not in a world");return{i:A.id,bt:A.blockTextureUri,bh:A.blockHalfExtents?this.serializeVector(A.blockHalfExtents):void 0,e:A.isEnvironmental,ec:A.emissiveColor?this.serializeRgbColor(A.emissiveColor):void 0,ei:A.emissiveIntensity,m:A.modelUri,ma:A.modelAnimations.map((Q)=>this.serializeEntityModelAnimation(Q)),mo:A.modelNodeOverrides.map((Q)=>this.serializeEntityModelNodeOverride(Q)),mt:A.modelTextureUri,n:A.name,o:A.opacity,ol:A.outline?this.serializeOutline(A.outline):void 0,p:this.serializeVector(A.position),pi:A.positionInterpolationMs,pe:A.parent?A.parent.id:void 0,pn:A.parentNodeName,r:this.serializeQuaternion(A.rotation),ri:A.rotationInterpolationMs,si:A.modelScaleInterpolationMs,sv:A.modelScale?this.serializeVector(A.modelScale):void 0,t:A.tintColor?this.serializeRgbColor(A.tintColor):void 0}}static serializeEntityModelAnimation(A){return{n:A.name,b:A.blendMode,c:A.clampWhenFinished,fi:A.fadesIn,fo:A.fadesOut,l:A.loopMode,p:A.isPlaying&&A.loopMode!==0,pr:A.playbackRate,w:A.weight}}static serializeEntityModelNodeOverride(A){return{n:A.nameMatch,ec:A.emissiveColor?this.serializeRgbColor(A.emissiveColor):void 0,ei:A.emissiveIntensity,h:A.isHidden,p:A.localPosition?this.serializeVector(A.localPosition):void 0,pi:A.localPositionInterpolationMs,r:A.localRotation?this.serializeQuaternion(A.localRotation):void 0,ri:A.localRotationInterpolationMs,s:A.localScale?this.serializeVector(A.localScale):void 0,si:A.localScaleInterpolationMs}}static serializeOutline(A){return{c:A.color?this.serializeRgbColor(A.color):void 0,ci:A.colorIntensity,th:A.thickness,o:A.opacity,oc:A.occluded}}static serializeParticleEmitter(A){if(!A.world||A.id===void 0)n.fatalError("Serializer.serializeParticleEmitter(): ParticleEmitter is not in a world");return{i:A.id,at:A.alphaTest,ce:A.colorEnd?this.serializeRgbColor(A.colorEnd):void 0,cev:A.colorEndVariance?this.serializeRgbColor(A.colorEndVariance):void 0,cs:A.colorStart?this.serializeRgbColor(A.colorStart):void 0,csv:A.colorStartVariance?this.serializeRgbColor(A.colorStartVariance):void 0,cie:A.colorIntensityEnd,ciev:A.colorIntensityEndVariance,cis:A.colorIntensityStart,cisv:A.colorIntensityStartVariance,e:A.attachedToEntity?.isSpawned?A.attachedToEntity.id:void 0,en:A.attachedToEntityNodeName,g:A.gravity?this.serializeVector(A.gravity):void 0,l:A.lifetime,le:A.lockToEmitter,lv:A.lifetimeVariance,mp:A.maxParticles,o:A.offset?this.serializeVector(A.offset):void 0,or:A.orientation?this.serializeParticleEmitterOrientation(A.orientation):void 0,ofr:A.orientationFixedRotation?this.serializeVector(A.orientationFixedRotation):void 0,oe:A.opacityEnd,oev:A.opacityEndVariance,os:A.opacityStart,osv:A.opacityStartVariance,p:A.position?this.serializeVector(A.position):void 0,pa:A.paused,pv:A.positionVariance?this.serializeVector(A.positionVariance):void 0,r:A.rate,rv:A.rateVariance,se:A.sizeEnd,sev:A.sizeEndVariance,ss:A.sizeStart,ssv:A.sizeStartVariance,t:A.transparent,tu:A.textureUri,v:A.velocity?this.serializeVector(A.velocity):void 0,vv:A.velocityVariance?this.serializeVector(A.velocityVariance):void 0}}static serializeParticleEmitterOrientation(A){switch(A){case"billboard":return 0;case"billboardY":return 1;case"fixed":return 2;case"velocity":return 3;default:return 0}}static serializePhysicsDebugRaycast(A){return{o:this.serializeVector(A.origin),d:this.serializeVector(A.direction),l:A.length,h:A.hit}}static serializePlayer(A){return{i:A.id,u:A.username,p:A.profilePictureUrl}}static serializePlayerCamera(A){return{cb:A.collidesWithBlocks,m:A.mode,e:A.attachedToEntity?.isSpawned?A.attachedToEntity.id:void 0,et:A.targetEntity?.isSpawned?A.targetEntity.id:void 0,fo:A.filmOffset,ffo:A.forwardOffset,fv:A.fov,h:Array.from(A.viewModelHiddenNodes),mp:A.viewModelPitchesWithCamera,my:A.viewModelYawsWithCamera,o:A.offset?this.serializeVector(A.offset):void 0,p:A.attachedToPosition?this.serializeVector(A.attachedToPosition):void 0,pt:A.targetPosition?this.serializeVector(A.targetPosition):void 0,s:Array.from(A.viewModelShownNodes),sa:A.shoulderAngle,z:A.zoom}}static serializeQuaternion(A){return[A.x,A.y,A.z,A.w]}static serializeRgbColor(A){return[A.r,A.g,A.b]}static serializeSceneUI(A){if(A.id===void 0)n.fatalError("Serializer.serializeSceneUI(): SceneUI is not loaded!");return{i:A.id,e:A.attachedToEntity?.isSpawned?A.attachedToEntity.id:void 0,o:A.offset?this.serializeVector(A.offset):void 0,p:A.position?this.serializeVector(A.position):void 0,s:A.state,t:A.templateId,v:A.viewDistance}}static serializeVector(A){return[A.x,A.y,A.z]}static serializeVectorBoolean(A){return[A.x,A.y,A.z]}static serializeWorld(A){return{i:A.id,ac:this.serializeRgbColor(A.ambientLightColor),ai:A.ambientLightIntensity,dc:this.serializeRgbColor(A.directionalLightColor),di:A.directionalLightIntensity,dp:this.serializeVector(A.directionalLightPosition),fc:A.fogColor?this.serializeRgbColor(A.fogColor):void 0,ff:A.fogFar,fn:A.fogNear,n:A.name,s:A.skyboxUri,si:A.skyboxIntensity,t:A.loop.timestepS}}}var uWA;((Y)=>{Y[Y.PLAYING=0]="PLAYING";Y[Y.PAUSED=1]="PAUSED";Y[Y.STOPPED=2]="STOPPED"})(uWA||={});var Uf;((B)=>{B[B.ADDITIVE=0]="ADDITIVE";B[B.NORMAL=1]="NORMAL"})(Uf||={});var oU;((Y)=>{Y[Y.ONCE=0]="ONCE";Y[Y.LOOP=1]="LOOP";Y[Y.PING_PONG=2]="PING_PONG"})(oU||={});var Ef;((U)=>{U.PAUSE="ENTITY_MODEL_ANIMATION.PAUSE";U.PLAY="ENTITY_MODEL_ANIMATION.PLAY";U.RESTART="ENTITY_MODEL_ANIMATION.RESTART";U.SET_BLEND_MODE="ENTITY_MODEL_ANIMATION.SET_BLEND_MODE";U.SET_CLAMP_WHEN_FINISHED="ENTITY_MODEL_ANIMATION.SET_CLAMP_WHEN_FINISHED";U.SET_FADES_IN="ENTITY_MODEL_ANIMATION.SET_FADES_IN";U.SET_FADES_OUT="ENTITY_MODEL_ANIMATION.SET_FADES_OUT";U.SET_LOOP_MODE="ENTITY_MODEL_ANIMATION.SET_LOOP_MODE";U.SET_PLAYBACK_RATE="ENTITY_MODEL_ANIMATION.SET_PLAYBACK_RATE";U.SET_WEIGHT="ENTITY_MODEL_ANIMATION.SET_WEIGHT";U.STOP="ENTITY_MODEL_ANIMATION.STOP"})(Ef||={});class tU{_name;_blendMode=1;_clampWhenFinished=!1;_entity;_fadesIn=!0;_fadesOut=!0;_loopMode=0;_state=2;_playbackRate=1;_weight=1;constructor(A){this._name=A.name,this._entity=A.entity,this._blendMode=A.blendMode??this._blendMode,this._clampWhenFinished=A.clampWhenFinished??this._clampWhenFinished,this._fadesIn=A.fadesIn??this._fadesIn,this._fadesOut=A.fadesOut??this._fadesOut,this._loopMode=A.loopMode??this._loopMode,this._state=A.play?0:this._state,this._playbackRate=A.playbackRate??this._playbackRate,this._weight=A.weight??this._weight}get name(){return this._name}get blendMode(){return this._blendMode}get clampWhenFinished(){return this._clampWhenFinished}get entity(){return this._entity}get fadesIn(){return this._fadesIn}get fadesOut(){return this._fadesOut}get isPlaying(){return this._state===0}get isPaused(){return this._state===1}get isStopped(){return this._state===2}get loopMode(){return this._loopMode}get playbackRate(){return this._playbackRate}get weight(){return this._weight}pause(){if(this._state===1)return;if(this._state=1,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.PAUSE",{entityModelAnimation:this})}play(){if(this._state===0)return;if(this._state=0,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.PLAY",{entityModelAnimation:this})}restart(){if(this._state=0,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.RESTART",{entityModelAnimation:this})}setBlendMode(A){if(this._blendMode===A)return;if(this._blendMode=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_BLEND_MODE",{entityModelAnimation:this,blendMode:A})}setClampWhenFinished(A){if(this._clampWhenFinished===A)return;if(this._clampWhenFinished=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_CLAMP_WHEN_FINISHED",{entityModelAnimation:this,clampWhenFinished:A})}setFadesIn(A){if(this._fadesIn===A)return;if(this._fadesIn=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_FADES_IN",{entityModelAnimation:this,fadesIn:A})}setFadesOut(A){if(this._fadesOut===A)return;if(this._fadesOut=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_FADES_OUT",{entityModelAnimation:this,fadesOut:A})}setLoopMode(A){if(this._loopMode===A)return;if(this._loopMode=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_LOOP_MODE",{entityModelAnimation:this,loopMode:A})}setPlaybackRate(A){if(this._playbackRate===A)return;if(this._playbackRate=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_PLAYBACK_RATE",{entityModelAnimation:this,playbackRate:A})}setWeight(A){if(this._weight===A)return;if(this._weight=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_WEIGHT",{entityModelAnimation:this,weight:A})}stop(){if(this._state===2)return;if(this._state=2,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.STOP",{entityModelAnimation:this})}serialize(){return GQ.serializeEntityModelAnimation(this)}}var Kf;((W)=>{W.SET_EMISSIVE_COLOR="ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_COLOR";W.SET_EMISSIVE_INTENSITY="ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_INTENSITY";W.SET_HIDDEN="ENTITY_MODEL_NODE_OVERRIDE.SET_HIDDEN";W.SET_LOCAL_POSITION="ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION";W.SET_LOCAL_POSITION_INTERPOLATION_MS="ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION_INTERPOLATION_MS";W.SET_LOCAL_ROTATION="ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION";W.SET_LOCAL_ROTATION_INTERPOLATION_MS="ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION_INTERPOLATION_MS";W.SET_LOCAL_SCALE="ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE";W.SET_LOCAL_SCALE_INTERPOLATION_MS="ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE_INTERPOLATION_MS"})(Kf||={});class eU{_nameMatch;_entity;_emissiveColor;_emissiveIntensity;_hidden=!1;_isRemoved=!1;_localPosition;_localPositionInterpolationMs;_localRotation;_localRotationInterpolationMs;_localScale;_localScaleInterpolationMs;constructor(A){this._nameMatch=A.nameMatch.toLowerCase(),this._entity=A.entity,this._emissiveColor=A.emissiveColor,this._emissiveIntensity=A.emissiveIntensity,this._hidden=A.hidden??this._hidden,this._localPosition=A.localPosition,this._localPositionInterpolationMs=A.localPositionInterpolationMs,this._localRotation=A.localRotation,this._localRotationInterpolationMs=A.localRotationInterpolationMs,this._localScale=typeof A.localScale==="number"?{x:A.localScale,y:A.localScale,z:A.localScale}:A.localScale,this._localScaleInterpolationMs=A.localScaleInterpolationMs}get nameMatch(){return this._nameMatch}get name(){return this._nameMatch}get entity(){return this._entity}get emissiveColor(){return this._emissiveColor}get emissiveIntensity(){return this._emissiveIntensity}get isHidden(){return this._hidden}get localPosition(){return this._localPosition}get localPositionInterpolationMs(){return this._localPositionInterpolationMs}get localRotation(){return this._localRotation}get localRotationInterpolationMs(){return this._localRotationInterpolationMs}get localScale(){return this._localScale}get localScaleInterpolationMs(){return this._localScaleInterpolationMs}remove(){this._entity.removeModelNodeOverride(this.nameMatch)}setEmissiveColor(A){if(this._isRemoved)return;if(!A&&!this._emissiveColor||A&&this._emissiveColor&&A.r===this._emissiveColor.r&&A.g===this._emissiveColor.g&&A.b===this._emissiveColor.b)return;if(this._emissiveColor=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_COLOR",{entityModelNodeOverride:this,emissiveColor:A})}setEmissiveIntensity(A){if(this._isRemoved)return;if(this._emissiveIntensity===A)return;if(this._emissiveIntensity=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_INTENSITY",{entityModelNodeOverride:this,emissiveIntensity:A})}setHidden(A){if(this._isRemoved)return;if(this._hidden===A)return;if(this._hidden=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_HIDDEN",{entityModelNodeOverride:this,hidden:A})}setLocalPosition(A){if(this._isRemoved)return;if(A===this._localPosition)return;if(A&&this._localPosition&&this._localPosition.x===A.x&&this._localPosition.y===A.y&&this._localPosition.z===A.z)return;if(this._localPosition=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION",{entityModelNodeOverride:this,localPosition:A})}setLocalPositionInterpolationMs(A){if(this._isRemoved)return;if(A===this._localPositionInterpolationMs)return;if(this._localPositionInterpolationMs=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION_INTERPOLATION_MS",{entityModelNodeOverride:this,interpolationMs:A})}setLocalRotation(A){if(this._isRemoved)return;if(A===this._localRotation)return;if(A&&this._localRotation&&this._localRotation.x===A.x&&this._localRotation.y===A.y&&this._localRotation.z===A.z&&this._localRotation.w===A.w)return;if(this._localRotation=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION",{entityModelNodeOverride:this,localRotation:A})}setLocalRotationInterpolationMs(A){if(this._isRemoved)return;if(A===this._localRotationInterpolationMs)return;if(this._localRotationInterpolationMs=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION_INTERPOLATION_MS",{entityModelNodeOverride:this,interpolationMs:A})}setLocalScale(A){if(this._isRemoved)return;if(A===this._localScale)return;if(typeof A==="number")A={x:A,y:A,z:A};if(A&&this._localScale&&this._localScale.x===A.x&&this._localScale.y===A.y&&this._localScale.z===A.z)return;if(this._localScale=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE",{entityModelNodeOverride:this,localScale:A})}setLocalScaleInterpolationMs(A){if(this._isRemoved)return;if(A===this._localScaleInterpolationMs)return;if(this._localScaleInterpolationMs=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE_INTERPOLATION_MS",{entityModelNodeOverride:this,interpolationMs:A})}serialize(){return GQ.serializeEntityModelNodeOverride(this)}markRemoved(){this._isRemoved=!0}}var dWA={type:"dynamic",softCcdPrediction:1},cWA=0.0016,lWA=Math.cos(0.026),sH;((q)=>{q.BLOCK_COLLISION="ENTITY.BLOCK_COLLISION";q.BLOCK_CONTACT_FORCE="ENTITY.BLOCK_CONTACT_FORCE";q.DESPAWN="ENTITY.DESPAWN";q.ENTITY_COLLISION="ENTITY.ENTITY_COLLISION";q.ENTITY_CONTACT_FORCE="ENTITY.ENTITY_CONTACT_FORCE";q.INTERACT="ENTITY.INTERACT";q.REMOVE_MODEL_NODE_OVERRIDE="ENTITY.REMOVE_MODEL_NODE_OVERRIDE";q.SET_BLOCK_TEXTURE_URI="ENTITY.SET_BLOCK_TEXTURE_URI";q.SET_EMISSIVE_COLOR="ENTITY.SET_EMISSIVE_COLOR";q.SET_EMISSIVE_INTENSITY="ENTITY.SET_EMISSIVE_INTENSITY";q.SET_MODEL_SCALE="ENTITY.SET_MODEL_SCALE";q.SET_MODEL_SCALE_INTERPOLATION_MS="ENTITY.SET_MODEL_SCALE_INTERPOLATION_MS";q.SET_MODEL_TEXTURE_URI="ENTITY.SET_MODEL_TEXTURE_URI";q.SET_OPACITY="ENTITY.SET_OPACITY";q.SET_OUTLINE="ENTITY.SET_OUTLINE";q.SET_PARENT="ENTITY.SET_PARENT";q.SET_POSITION_INTERPOLATION_MS="ENTITY.SET_POSITION_INTERPOLATION_MS";q.SET_ROTATION_INTERPOLATION_MS="ENTITY.SET_ROTATION_INTERPOLATION_MS";q.SET_TINT_COLOR="ENTITY.SET_TINT_COLOR";q.SPAWN="ENTITY.SPAWN";q.TICK="ENTITY.TICK";q.UPDATE_POSITION="ENTITY.UPDATE_POSITION";q.UPDATE_ROTATION="ENTITY.UPDATE_ROTATION"})(sH||={});class R0 extends j7{_id;_blockHalfExtents;_blockTextureUri;_controller;_isEnvironmental=!1;_modelAnimations=new Map;_modelNodeOverrides=new Map;_modelPreferredShape;_modelScale={x:1,y:1,z:1};_modelScaleInterpolationMs;_modelTextureUri;_modelUri;_name;_opacity;_outline;_parent;_parentNodeName;_positionInterpolationMs;_rotationInterpolationMs;_tag;_tintColor;_emissiveColor;_emissiveIntensity;_lastUpdatedPosition={x:0,y:0,z:0};_lastUpdatedRotation={x:0,y:0,z:0,w:1};_lastParentlessType="dynamic";_world;_positionUpdateThresholdSq;_rotationUpdateThreshold;constructor(A){let Q="blockTextureUri"in A,B="modelUri"in A;if(!Q===!B)n.fatalError("Entity.constructor(): Entity data must include a blockTextureUri or modelUri, but not both.");if(Q&&!A.blockHalfExtents)n.fatalError("Entity.constructor(): Block entity must have blockHalfExtents!");if(A.parent&&!A.parent.isSpawned)n.fatalError("Entity.constructor(): Parent entity must be spawned before child entity!");if(A.parent?.modelUri&&A.parentNodeName&&!TY.instance.modelHasNode(A.parent.modelUri,A.parentNodeName))n.fatalError(`Entity.constructor(): Parent node name ${A.parentNodeName} not found in parent model ${A.parent.modelUri}!`);super(A.rigidBodyOptions??dWA);if(Q)this._blockHalfExtents=A.blockHalfExtents,this._blockTextureUri=A.blockTextureUri;if(B){let Y=this._modelScale=typeof A.modelScale==="number"?{x:A.modelScale,y:A.modelScale,z:A.modelScale}:A.modelScale??{x:1,y:1,z:1};if(this._modelPreferredShape=A.modelPreferredShape,this._modelScale=Y,this._modelScaleInterpolationMs=A.modelScaleInterpolationMs,this._modelTextureUri=A.modelTextureUri,this._modelUri=A.modelUri,!this._modelUri.startsWith("http"))if(TY.instance.hasModel(this._modelUri))A.modelAnimations?.forEach((J)=>{this._modelAnimations.set(J.name,new tU({...J,entity:this}))});else n.error(`Entity.constructor(): Model ${this._modelUri} does not exist!`);A.modelNodeOverrides?.forEach((J)=>{this._modelNodeOverrides.set(J.nameMatch.toLowerCase(),new eU({...J,entity:this}))})}if(this._emissiveColor=A.emissiveColor,this._emissiveIntensity=A.emissiveIntensity,this._isEnvironmental=A.isEnvironmental??!1,this._name=A.name??"Nameless",this._opacity=A.opacity??1,this._outline=A.outline,this._parent=A.parent,this._parentNodeName=A.parentNodeName,this._positionInterpolationMs=A.positionInterpolationMs,this._rotationInterpolationMs=A.rotationInterpolationMs,this._tag=A.tag,this._tintColor=A.tintColor,this._positionUpdateThresholdSq=cWA,this._rotationUpdateThreshold=lWA,A.controller)this._controller=A.controller,this._controller.attach(this)}get id(){return this._id}get availableModelAnimationNames(){return this.isModelEntity?TY.instance.getAnimationNames(this._modelUri):[]}get availableModelNodeNames(){return this.isModelEntity?TY.instance.getNodeNames(this._modelUri):[]}get blockHalfExtents(){return this._blockHalfExtents}get blockTextureUri(){return this._blockTextureUri}get controller(){return this._controller}get emissiveColor(){return this._emissiveColor}get emissiveIntensity(){return this._emissiveIntensity}get depth(){return this.isModelEntity?TY.instance.getDepth(this._modelUri)*this._modelScale.z:this._blockHalfExtents.z*2}get height(){return this.isModelEntity?TY.instance.getHeight(this._modelUri)*this._modelScale.y:this._blockHalfExtents.y*2}get modelAnimations(){return Array.from(this._modelAnimations.values())}get modelNodeOverrides(){return Array.from(this._modelNodeOverrides.values())}get modelPreferredShape(){return this._modelPreferredShape}get modelScale(){return this._modelScale}get modelScaleInterpolationMs(){return this._modelScaleInterpolationMs}get modelTextureUri(){return this._modelTextureUri}get modelUri(){return this._modelUri}get name(){return this._name}get opacity(){return this._opacity}get outline(){return this._outline}get parent(){return this._parent}get parentNodeName(){return this._parentNodeName}get positionInterpolationMs(){return this._positionInterpolationMs}get rotationInterpolationMs(){return this._rotationInterpolationMs}get tag(){return this._tag}get tintColor(){return this._tintColor}get isBlockEntity(){return!!this._blockTextureUri}get isEnvironmental(){return this._isEnvironmental}get isModelEntity(){return!!this._modelUri}get isSpawned(){return!!this._world}get width(){return this.isModelEntity?TY.instance.getWidth(this._modelUri)*this._modelScale.x:this._blockHalfExtents.x*2}get world(){return this._world}clearModelNodeOverrides(){if(!this.isModelEntity)return;this.removeModelNodeOverrides(Array.from(this._modelNodeOverrides.keys()))}despawn(){if(!this._requireSpawned("despawn"))return;if(this._world.entityManager.getEntityChildren(this).forEach((A)=>{A.despawn()}),this._controller)this._controller.detach(this),this._controller.despawn(this);if(this.emitWithWorld(this._world,"ENTITY.DESPAWN",{entity:this}),this.isSimulated)this.removeFromSimulation();this._world.entityManager.unregisterEntity(this),this._world.audioManager.unregisterEntityAttachedAudios(this),this._world.particleEmitterManager.despawnEntityAttachedParticleEmitters(this),this._world.sceneUIManager.unloadEntityAttachedSceneUIs(this),this._id=void 0,this._world=void 0}getModelAnimation(A){if(!this.isModelEntity)return;let Q=this._modelAnimations.get(A);if(!Q)Q=new tU({name:A,entity:this}),this._modelAnimations.set(A,Q);return Q}getModelNodeOverride(A){if(!this.isModelEntity)return;A=A.toLowerCase();let Q=this._modelNodeOverrides.get(A);if(!Q)Q=new eU({nameMatch:A,entity:this}),this._modelNodeOverrides.set(A,Q);return Q}interact(A,Q){if(!this._requireSpawned("interact"))return;this.emitWithWorld(this._world,"ENTITY.INTERACT",{entity:this,player:A,raycastHit:Q})}setBlockTextureUri(A){if(this._blockTextureUri===A)return;if(this._blockTextureUri=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_BLOCK_TEXTURE_URI",{entity:this,blockTextureUri:A})}removeModelNodeOverride(A){if(!this.isModelEntity)return;A=A.toLowerCase();let Q=this._modelNodeOverrides.get(A);if(!Q)return;if(Q.markRemoved(),this._modelNodeOverrides.delete(A),this.isSpawned)this.emitWithWorld(this._world,"ENTITY.REMOVE_MODEL_NODE_OVERRIDE",{entity:this,entityModelNodeOverride:Q})}removeModelNodeOverrides(A){if(!this.isModelEntity)return;for(let Q of A)this.removeModelNodeOverride(Q)}setEmissiveColor(A){if(!A&&!this._emissiveColor||A&&this._emissiveColor&&A.r===this._emissiveColor.r&&A.g===this._emissiveColor.g&&A.b===this._emissiveColor.b)return;if(this._emissiveColor=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_EMISSIVE_COLOR",{entity:this,emissiveColor:A})}setEmissiveIntensity(A){if(this._emissiveIntensity===A)return;if(this._emissiveIntensity=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_EMISSIVE_INTENSITY",{entity:this,emissiveIntensity:A})}setModelScale(A){if(!this.isModelEntity)return;if(typeof A==="number")A={x:A,y:A,z:A};if(this._modelScale===A)return;let Q={x:A.x/this._modelScale.x,y:A.y/this._modelScale.y,z:A.z/this._modelScale.z};if(this._modelScale=A,this.colliders.forEach((B)=>B.setScale(Q)),this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_MODEL_SCALE",{entity:this,modelScale:A})}setModelScaleInterpolationMs(A){if(!this.isModelEntity)return;if(this._modelScaleInterpolationMs===A)return;if(this._modelScaleInterpolationMs=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_MODEL_SCALE_INTERPOLATION_MS",{entity:this,interpolationMs:A})}setModelTextureUri(A){if(!this.isModelEntity||this._modelTextureUri===A)return;if(this._modelTextureUri=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_MODEL_TEXTURE_URI",{entity:this,modelTextureUri:A})}setOpacity(A){if(this._opacity===A)return;if(this._opacity=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_OPACITY",{entity:this,opacity:A})}setOutline(A,Q){if(this._outline=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_OUTLINE",{entity:this,forPlayer:Q,outline:A})}setParent(A,Q,B,Y){if(A&&!A.isSpawned)return n.error("Entity.setParent(): Parent entity is not spawned, cannot set parent!");if(!this._parent&&A)this._lastParentlessType=this.type;if(this._parent=A,this._parentNodeName=Q,!this.isSpawned)return;if(this.colliders.forEach((J)=>J.setEnabled(!A)),this.setType(!A?this._lastParentlessType:"kinematic_velocity"),this.setPosition(B??{x:0,y:0,z:0}),this.setRotation(Y??{x:0,y:0,z:0,w:1}),!this.isKinematicPositionBased)this.resetAngularVelocity(),this.resetForces(),this.resetLinearVelocity(),this.resetTorques();this.emitWithWorld(this._world,"ENTITY.SET_PARENT",{entity:this,parent:A,parentNodeName:Q})}setPositionInterpolationMs(A){if(this._positionInterpolationMs===A)return;if(this._positionInterpolationMs=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_POSITION_INTERPOLATION_MS",{entity:this,interpolationMs:A})}setRotationInterpolationMs(A){if(this._rotationInterpolationMs===A)return;if(this._rotationInterpolationMs=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_ROTATION_INTERPOLATION_MS",{entity:this,interpolationMs:A})}setTintColor(A){if(!A&&!this._tintColor||A&&this._tintColor&&A.r===this._tintColor.r&&A.g===this._tintColor.g&&A.b===this._tintColor.b)return;if(this._tintColor=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_TINT_COLOR",{entity:this,tintColor:A})}spawn(A,Q,B){if(this.isSpawned)return n.error(`Entity.spawn(): Entity ${this._name} is already spawned with id ${this._id}!`);if(!this.isSimulated)this.addToSimulation(A.simulation);if(this._blockTextureUri&&this._blockHalfExtents&&this.numColliders===0)this.addChildColliderToSimulation(new S9(S9.optionsFromBlockHalfExtents(this._blockHalfExtents)));if(this._modelUri&&this.numColliders===0&&this._modelPreferredShape!=="none")this.addChildColliderToSimulation(new S9(S9.optionsFromModelUri(this._modelUri,this._modelScale,this._modelPreferredShape)));if(this.colliders.forEach((Y)=>{if(this.hasListeners("ENTITY.BLOCK_COLLISION")||this.hasListeners("ENTITY.ENTITY_COLLISION"))Y.enableCollisionEvents(!0);if(this.hasListeners("ENTITY.BLOCK_CONTACT_FORCE")||this.hasListeners("ENTITY.ENTITY_CONTACT_FORCE"))Y.enableContactForceEvents(!0);if($C.isDefaultCollisionGroups(Y.collisionGroups)){let J=this.isEnvironmental?[8]:[Y.isSensor?4:2],C=this.isEnvironmental?[65535&~8&~1]:[65535];Y.setCollisionGroups({belongsTo:J,collidesWith:C})}}),this.setPosition(Q),B)this.setRotation(B);if(this._id=A.entityManager.registerEntity(this),this._world=A,this._controller)this._controller.spawn(this);if(this._parent)this.setParent(this._parent,this._parentNodeName,Q,B);this.colliders.forEach((Y)=>{A.simulation.colliderMap.setColliderEntity(Y,this)}),this.emitWithWorld(A,"ENTITY.SPAWN",{entity:this})}stopAllModelAnimations(A){for(let Q of this._modelAnimations.values()){if(A?.(Q))continue;Q.stop()}}stopModelAnimations(A){for(let Q of A){let B=this._modelAnimations.get(Q);if(!B)continue;B.stop()}}checkAndEmitUpdates(){if(!this._requireSpawned("checkAndEmitUpdates"))return;let A=this.position,Q=this.rotation;if(this._rotationExceedsThreshold(Q,this._lastUpdatedRotation))this._lastUpdatedRotation=Q,this.emitWithWorld(this._world,"ENTITY.UPDATE_ROTATION",{entity:this,rotation:Q});if(this._positionExceedsThreshold(A,this._lastUpdatedPosition))this._lastUpdatedPosition=A,this.emitWithWorld(this._world,"ENTITY.UPDATE_POSITION",{entity:this,position:A})}serialize(){return GQ.serializeEntity(this)}tick(A){if(this.emit("ENTITY.TICK",{entity:this,tickDeltaMs:A}),this._controller)this._controller.tick(this,A)}_positionExceedsThreshold(A,Q){let B=A.x-Q.x,Y=A.y-Q.y,J=A.z-Q.z;return B*B+Y*Y+J*J>this._positionUpdateThresholdSq}_requireSpawned(A){if(!this.isSpawned)n.error(`Entity._requireSpawned(): Entity ${this._name} is not spawned, cannot invoke ${A}()!`);return this.isSpawned}_rotationExceedsThreshold(A,Q){return Math.abs(A.x*Q.x+A.y*Q.y+A.z*Q.z+A.w*Q.w){X.ATTACH="BASE_ENTITY_CONTROLLER.ATTACH";X.DESPAWN="BASE_ENTITY_CONTROLLER.DESPAWN";X.DETACH="BASE_ENTITY_CONTROLLER.DETACH";X.SPAWN="BASE_ENTITY_CONTROLLER.SPAWN";X.TICK="BASE_ENTITY_CONTROLLER.TICK";X.TICK_WITH_PLAYER_INPUT="BASE_ENTITY_CONTROLLER.TICK_WITH_PLAYER_INPUT"})(pWA||={});class QZ extends BQ{attach(A){this.emit("BASE_ENTITY_CONTROLLER.ATTACH",{entity:A})}despawn(A){this.emit("BASE_ENTITY_CONTROLLER.DESPAWN",{entity:A})}detach(A){this.emit("BASE_ENTITY_CONTROLLER.DETACH",{entity:A})}spawn(A){this.emit("BASE_ENTITY_CONTROLLER.SPAWN",{entity:A})}tickWithPlayerInput(A,Q,B,Y){this.emit("BASE_ENTITY_CONTROLLER.TICK_WITH_PLAYER_INPUT",{entity:A,input:Q,cameraOrientation:B,deltaTimeMs:Y})}tick(A,Q){this.emit("BASE_ENTITY_CONTROLLER.TICK",{entity:A,deltaTimeMs:Q})}}var iWA=0.099856;class BZ extends QZ{faceSpeed=0;idleLoopedAnimations=[];idleLoopedAnimationsSpeed;jumpOneshotAnimations=[];moveLoopedAnimations=[];moveLoopedAnimationsSpeed;moveSpeed=0;_faceTarget;_jumpHeight=0;_moveCompletesWhenStuck=!1;_moveIgnoreAxes={};_moveStartMoveAnimations=!1;_moveStartIdleAnimationsOnCompletion=!0;_moveStoppingDistanceSquared=iWA;_moveStuckAccumulatorMs=0;_moveStuckLastPosition;_moveTarget;_onFace;_onFaceComplete;_onMove;_onMoveComplete;_stopFaceRequested=!1;_stopMoveRequested=!1;constructor(A={}){super();this.idleLoopedAnimations=A.idleLoopedAnimations??this.idleLoopedAnimations,this.idleLoopedAnimationsSpeed=A.idleLoopedAnimationsSpeed??this.idleLoopedAnimationsSpeed,this.jumpOneshotAnimations=A.jumpOneshotAnimations??this.jumpOneshotAnimations,this.moveLoopedAnimations=A.moveLoopedAnimations??this.moveLoopedAnimations,this.moveLoopedAnimationsSpeed=A.moveLoopedAnimationsSpeed??this.moveLoopedAnimationsSpeed}spawn(A){super.spawn(A),this._startIdleAnimations(A)}face(A,Q,B){this._faceTarget=A,this.faceSpeed=Q,this._onFace=B?.faceCallback,this._onFaceComplete=B?.faceCompleteCallback}jump(A){this._jumpHeight=A}move(A,Q,B){this.moveSpeed=Q,this._moveCompletesWhenStuck=B?.moveCompletesWhenStuck??!1,this._moveIgnoreAxes=B?.moveIgnoreAxes??{},this._moveStartIdleAnimationsOnCompletion=B?.moveStartIdleAnimationsOnCompletion??!0,this._moveStartMoveAnimations=!0,this._moveStoppingDistanceSquared=B?.moveStoppingDistance?B.moveStoppingDistance**2:iWA,this._moveTarget=A,this._onMove=B?.moveCallback,this._onMoveComplete=B?.moveCompleteCallback,this._moveStuckAccumulatorMs=0,this._moveStuckLastPosition=void 0}stopFace(){this._stopFaceRequested=!0}stopMove(){this._stopMoveRequested=!0}tick(A,Q){if(super.tick(A,Q),!this._moveTarget&&!this._faceTarget&&!this._jumpHeight)return;if(this._moveStartMoveAnimations)this._startMoveAnimations(A),this._moveStartMoveAnimations=!1;let B=Q/1000,Y=A.position;if(A.isDynamic&&this._jumpHeight>0){let J=Math.abs(A.world.simulation.gravity.y),C=Math.sqrt(2*J*this._jumpHeight);A.applyImpulse({x:0,y:C*A.mass,z:0}),this._jumpHeight=0,this._startJumpAnimations(A)}if(this._moveTarget){let J={x:this._moveIgnoreAxes.x?0:this._moveTarget.x-Y.x,y:this._moveIgnoreAxes.y?0:this._moveTarget.y-Y.y,z:this._moveIgnoreAxes.z?0:this._moveTarget.z-Y.z},C=J.x*J.x+J.y*J.y+J.z*J.z,X=!1;if(this._moveCompletesWhenStuck){if(this._moveStuckAccumulatorMs+=Q,this._moveStuckAccumulatorMs>=500){if(this._moveStuckLastPosition){let G=Y.x-this._moveStuckLastPosition.x,F=Y.y-this._moveStuckLastPosition.y,W=Y.z-this._moveStuckLastPosition.z;X=Math.sqrt(G*G+F*F+W*W)this._moveStoppingDistanceSquared&&!this._stopMoveRequested&&!X){let G=Math.sqrt(C),F=this.moveSpeed*B,Z=Math.min(G,F)/G,U={x:Y.x+J.x*Z,y:Y.y+J.y*Z,z:Y.z+J.z*Z};if(A.setPosition(U),this._onMove)this._onMove(U,this._moveTarget)}else{if(this._moveStuckAccumulatorMs=0,this._moveStuckLastPosition=void 0,this._moveTarget=void 0,this._stopMoveRequested=!1,this._moveStartIdleAnimationsOnCompletion)this._startIdleAnimations(A);if(this._onMoveComplete){let G=this._onMoveComplete;this._onMove=void 0,this._onMoveComplete=void 0,G(Y)}}}if(this._faceTarget){let J={x:this._faceTarget.x-Y.x,z:this._faceTarget.z-Y.z},C=Math.atan2(-J.x,-J.z),X=A.rotation,G=Math.atan2(2*(X.w*X.y),1-2*(X.y*X.y)),F=C-G;while(F>Math.PI)F-=2*Math.PI;while(F<-Math.PI)F+=2*Math.PI;if(Math.abs(F)>0.01&&!this._stopFaceRequested){let W=this.faceSpeed*B,Z=Math.abs(F){if(this._behavior)this._behavior.tick(this,this._world,Y)})}get isSpawned(){return this._spawned}get world(){return this._world}get controller(){return this.entity.controller}setBehavior(A){this._behavior=A}spawn(A){if(this._spawned)return;let Q=A??{x:0,y:10,z:0};this.entity.spawn(this._world,Q),this._spawned=!0}teleport(A){if(!this._spawned)return;this.entity.setPosition(A)}despawn(){if(!this._spawned)return;this.entity.despawn(),this._spawned=!1}}class YZ{static _instance;static get instance(){if(!YZ._instance)YZ._instance=new YZ;return YZ._instance}_bots=new Map;get botCount(){return this._bots.size}spawnBot(A,Q){let B=new rH(A,Q);return B.spawn(Q?.spawnPosition),this._bots.set(B.id,B),B}spawnBots(A,Q,B){let Y=[];for(let J=0;J=this._changeIntervalMs)this._elapsed=0,this._pickNewTarget(A)}_pickNewTarget(A){let Q=Math.random()*Math.PI*2,B=Math.random()*this._moveRadius,Y=this._originX+Math.cos(Q)*B,J=this._originZ+Math.sin(Q)*B,C=A.entity.position;A.controller.move({x:Y,y:C.y,z:J},this._moveSpeed),A.controller.face({x:Y,y:C.y,z:J},5)}}class Hf{name="chase";_chaseSpeed;_detectionRadius;_updateIntervalMs;_elapsed=0;constructor(A){this._chaseSpeed=A?.chaseSpeed??5,this._detectionRadius=A?.detectionRadius??50,this._updateIntervalMs=A?.updateIntervalMs??500}tick(A,Q,B){if(!A.isSpawned)return;if(this._elapsed+=B,this._elapsed=3000)this._moveElapsed=0,this._moveToRandom(A);if(this._elapsed+=B,this._elapsed{Y.post("Profiler.enable",()=>{Y.post("Profiler.start",()=>{setTimeout(()=>{Y.post("Profiler.stop",(X,{profile:G})=>{if(Y.post("Profiler.disable"),Y.disconnect(),X){C(X);return}if(Q)nWA(Q,JSON.stringify(G));J(G)})},A)})})})}static async captureHeapSnapshot(A){let Q=await sWA();if(!Q)return console.warn("CpuProfiler: node:inspector not available in this runtime"),"";let B=new Q.Session;B.connect();let Y="";return B.on("HeapProfiler.addHeapSnapshotChunk",(J)=>{Y+=J.params.chunk}),new Promise((J,C)=>{B.post("HeapProfiler.takeHeapSnapshot",void 0,(X)=>{if(B.disconnect(),X){C(X);return}if(A)nWA(A,Y);J(Y)})})}}var rWA=5,Lf;((U)=>{U.PAUSE="AUDIO.PAUSE";U.PLAY="AUDIO.PLAY";U.PLAY_RESTART="AUDIO.PLAY_RESTART";U.SET_ATTACHED_TO_ENTITY="AUDIO.SET_ATTACHED_TO_ENTITY";U.SET_CUTOFF_DISTANCE="AUDIO.SET_CUTOFF_DISTANCE";U.SET_DETUNE="AUDIO.SET_DETUNE";U.SET_DISTORTION="AUDIO.SET_DISTORTION";U.SET_POSITION="AUDIO.SET_POSITION";U.SET_PLAYBACK_RATE="AUDIO.SET_PLAYBACK_RATE";U.SET_REFERENCE_DISTANCE="AUDIO.SET_REFERENCE_DISTANCE";U.SET_VOLUME="AUDIO.SET_VOLUME"})(Lf||={});class aH extends BQ{_id;_attachedToEntity;_cutoffDistance;_duration;_detune;_distortion;_loop;_offset;_position;_playbackRate;_playing;_referenceDistance;_startTick;_uri;_volume;_world;constructor(A){super();this._attachedToEntity=A.attachedToEntity,this._cutoffDistance=A.cutoffDistance??(this.isPositional?(A.referenceDistance??rWA)+10:0),this._duration=A.duration,this._detune=A.detune??0,this._distortion=A.distortion??0,this._loop=A.loop??!1,this._offset=A.offset??0,this._position=A.position,this._playing=!1,this._playbackRate=A.playbackRate??1,this._referenceDistance=A.referenceDistance??(this.isPositional?rWA:0),this._uri=A.uri,this._volume=A.volume??0.5}get id(){return this._id}get attachedToEntity(){return this._attachedToEntity}get cutoffDistance(){return this._cutoffDistance}get duration(){return this._duration}get detune(){return this._detune}get distortion(){return this._distortion}get loop(){return this._loop}get offset(){return this._offset}get isLoaded(){return this._id!==void 0}get isPlaying(){return this._playing}get isPositional(){return this._attachedToEntity!==void 0||this._position!==void 0}get position(){return this._position}get playbackRate(){return this._playbackRate}get referenceDistance(){return this._referenceDistance}get startTick(){return this._startTick}get uri(){return this._uri}get volume(){return this._volume}get world(){return this._world}play(A,Q=!1){if(this.isPlaying&&!Q)return;if(this._attachedToEntity&&!this._attachedToEntity.isSpawned)return n.error(`Audio.play(): Attached entity ${this._attachedToEntity.id} is not spawned!`);let B=Q&&this._id!==void 0?"AUDIO.PLAY_RESTART":"AUDIO.PLAY";this._id??=A.audioManager.registerAudio(this),this._playing=!0,this._startTick=A.loop.currentTick,this._world=this._world??A,this.emitWithWorld(A,B,{audio:this})}pause(){if(!this.isPlaying||!this._world)return;this._playing=!1,this.emitWithWorld(this._world,"AUDIO.PAUSE",{audio:this})}setAttachedToEntity(A){if(!this._requirePositional())return;if(!A.isSpawned)return n.error(`Audio.setAttachedToEntity(): Entity ${A.id} is not spawned!`);if(this._attachedToEntity===A)return;if(this._attachedToEntity=A,this._position=void 0,this.isLoaded&&this._world)this.emitWithWorld(this._world,"AUDIO.SET_ATTACHED_TO_ENTITY",{audio:this,entity:A})}setCutoffDistance(A){if(!this._requirePositional())return;if(A<=0||A1)return n.error("Volume must be between 0 and 1");if(this._volume===A)return;if(this._volume=A,this.isLoaded&&this._world)this.emitWithWorld(this._world,"AUDIO.SET_VOLUME",{audio:this,volume:A})}serialize(){return GQ.serializeAudio(this)}_requirePositional(){if(!this.isPositional)n.error("Audio._requirePositional(): Audio is not positional. and therefor does not support the invoked method.");return this.isPositional}}class oH{_audios=new Map;_nextAudioId=1;_world;constructor(A){this._world=A}get world(){return this._world}getAllAudios(){return Array.from(this._audios.values())}getAllEntityAttachedAudios(A){return this.getAllAudios().filter((Q)=>Q.attachedToEntity===A)}getAllLoopedAudios(){return this.getAllAudios().filter((A)=>A.loop)}getAllOneshotAudios(){return this.getAllAudios().filter((A)=>!A.loop)}registerAudio(A){if(A.id!==void 0)n.fatalError(`AudioManager.registerAudio(): Provided audio instance with uri ${A.uri} is already assigned the id ${A.id}!`);let Q=this._nextAudioId;return this._audios.set(Q,A),this._nextAudioId++,Q}unregisterAudio(A){if(A.id===void 0)return n.error(`AudioManager.unregisterAudio(): Provided audio instance with uri ${A.uri} is not assigned an id!`);A.pause(),this._audios.delete(A.id)}unregisterEntityAttachedAudios(A){this.getAllEntityAttachedAudios(A).forEach((Q)=>{this.unregisterAudio(Q)})}}var kX={Y_0:{enumIndex:0,matrix:[1,0,0,0,1,0,0,0,1]},Y_90:{enumIndex:1,matrix:[0,0,-1,0,1,0,1,0,0]},Y_180:{enumIndex:2,matrix:[-1,0,0,0,1,0,0,0,-1]},Y_270:{enumIndex:3,matrix:[0,0,1,0,1,0,-1,0,0]},NY_0:{enumIndex:4,matrix:[-1,0,0,0,-1,0,0,0,1]},NY_90:{enumIndex:5,matrix:[0,0,-1,0,-1,0,-1,0,0]},NY_180:{enumIndex:6,matrix:[1,0,0,0,-1,0,0,0,-1]},NY_270:{enumIndex:7,matrix:[0,0,1,0,-1,0,1,0,0]},X_0:{enumIndex:8,matrix:[0,-1,0,1,0,0,0,0,1]},X_90:{enumIndex:9,matrix:[0,0,-1,1,0,0,0,-1,0]},X_180:{enumIndex:10,matrix:[0,1,0,1,0,0,0,0,-1]},X_270:{enumIndex:11,matrix:[0,0,1,1,0,0,0,1,0]},NX_0:{enumIndex:12,matrix:[0,1,0,-1,0,0,0,0,1]},NX_90:{enumIndex:13,matrix:[0,0,-1,-1,0,0,0,1,0]},NX_180:{enumIndex:14,matrix:[0,-1,0,-1,0,0,0,0,-1]},NX_270:{enumIndex:15,matrix:[0,0,1,-1,0,0,0,-1,0]},Z_0:{enumIndex:16,matrix:[1,0,0,0,0,1,0,-1,0]},Z_90:{enumIndex:17,matrix:[0,1,0,0,0,1,1,0,0]},Z_180:{enumIndex:18,matrix:[-1,0,0,0,0,1,0,1,0]},Z_270:{enumIndex:19,matrix:[0,-1,0,0,0,1,-1,0,0]},NZ_0:{enumIndex:20,matrix:[1,0,0,0,0,-1,0,1,0]},NZ_90:{enumIndex:21,matrix:[0,-1,0,0,0,-1,1,0,0]},NZ_180:{enumIndex:22,matrix:[-1,0,0,0,0,-1,0,-1,0]},NZ_270:{enumIndex:23,matrix:[0,1,0,0,0,-1,-1,0,0]}};class AE{globalCoordinate;blockType;constructor(A,Q){this.globalCoordinate=A,this.blockType=Q}static fromGlobalCoordinate(A,Q){return new AE(A,Q)}getNeighborGlobalCoordinateFromHitPoint(A){let Q={x:A.x-(this.globalCoordinate.x+0.5),y:A.y-(this.globalCoordinate.y+0.5),z:A.z-(this.globalCoordinate.z+0.5)},B="x",Y=Math.abs(Q.x);for(let[J,C]of Object.entries(Q))if(Math.abs(C)>Y)B=J,Y=Math.abs(C);return{x:this.globalCoordinate.x+(B==="x"?Math.sign(Q.x):0),y:this.globalCoordinate.y+(B==="y"?Math.sign(Q.y):0),z:this.globalCoordinate.z+(B==="z"?Math.sign(Q.z):0)}}}import kYB from"crypto";import O7 from"fs";import D8 from"path";var W0={ATLAS_DIR:".atlas",ATLAS_PNG_FILE:"atlas.png",ATLAS_KTX2_FILE:"atlas.ktx2",ATLAS_MANIFEST_FILE:"atlas.json",TEXTURE_SIZE:24,TEXTURE_PADDING:20,ALPHA_TEST_THRESHOLD:0.05,DATA_SCHEMA_VERSION:1,DIRECTORIES:[zY.assetsLibraryPath&&D8.join(zY.assetsLibraryPath,"blocks"),D8.resolve(process.cwd(),"assets","blocks")].filter(Boolean)};class P7{static instance=new P7;generate=process.env.NODE_ENV!=="production";_textureUriMetadata=new Map;constructor(){}hasBlockTexture(A){return this._textureUriMetadata.has(A)||["+x","-x","+y","-y","+z","-z"].every((Q)=>this._textureUriMetadata.has(`${A}/${Q}.png`))}getBlockTextureMetadata(A){let Q=this._textureUriMetadata.get(A);if(Q)return[Q];let B=["+x","-x","+y","-y","+z","-z"].map((Y)=>this._textureUriMetadata.get(`${A}/${Y}.png`)).filter(Boolean);return B.length===6?B:void 0}async preloadAtlas(){let A=await this._getAbsoluteTexturePaths(),Q=D8.resolve(process.cwd(),"assets/blocks",W0.ATLAS_DIR);if(this._loadCachedAtlasManifest(A,Q))return console.info(`BlockTextureRegistry.preloadAtlas(): Using cached atlas for ${A.length} block textures`);if(!this.generate)n.fatalError("BlockTextureRegistry.preloadAtlas(): No cached atlas found in production. Run development server to generate atlas.");console.info(`BlockTextureRegistry.preloadAtlas(): Generating atlas for ${A.length} block textures...`);let B=await Promise.all(A.map(async(U)=>{let $=await sU.read(U),E=this._absoluteTexturePathToTextureUri(U);if($.width!==W0.TEXTURE_SIZE||$.height!==W0.TEXTURE_SIZE)$.resize({w:W0.TEXTURE_SIZE,h:W0.TEXTURE_SIZE});return{textureUri:E,image:$,metadata:this._analyzeTexture($.bitmap)}})),Y=W0.TEXTURE_SIZE+W0.TEXTURE_PADDING*2,{cols:J,rows:C}=this._calculateGridLayout(B.length),X=J*Y,G=C*Y,F=new sU({width:X,height:G,color:0});for(let U=0;U{let U=(F*C+G)*4,$=(Z*C+W)*4;J[$]=J[U],J[$+1]=J[U+1],J[$+2]=J[U+2],J[$+3]=J[U+3]};for(let G=0;G=B+Q||F=B+Q){let W=Math.max(B,Math.min(B+Q-1,F)),Z=Math.max(B,Math.min(B+Q-1,G));X(W,Z,F,G)}return Y}_analyzeTexture(A){let{width:Q,height:B,data:Y}=A,J=Q*B,C=[0,0,0],X=255*W0.ALPHA_TEST_THRESHOLD,G=!1,F=!1,W=0;for(let Z=0;Z=X,F||=UZ/J/255),isTransparent:G,needsAlphaTest:F,transparencyRatio:W/J}}_calculateGridLayout(A){let Q=(C)=>2**Math.ceil(Math.log2(C)),B=Math.ceil(Math.sqrt(A)),Y=Q(B),J=Q(Math.ceil(A/Y));return{cols:Y,rows:J}}async _getAbsoluteTexturePaths(){let A=new Map;for(let B of W0.DIRECTORIES){if(!O7.existsSync(B))continue;let Y=await y4("**/*.png",{cwd:B,follow:!0});for(let J of Y){let C=D8.join(B,J),X=this._absoluteTexturePathToTextureUri(C);A.set(X,C)}}return Array.from(A.keys()).sort().map((B)=>A.get(B))}}var qf;((Y)=>{Y.ENTITY_COLLISION="BLOCK_TYPE.ENTITY_COLLISION";Y.ENTITY_CONTACT_FORCE="BLOCK_TYPE.ENTITY_CONTACT_FORCE";Y.INTERACT="BLOCK_TYPE.INTERACT"})(qf||={});class N8 extends BQ{_id;_customColliderOptions;_isLiquid;_lightLevel;_name;_textureUri;constructor(A={id:-1,textureUri:"textures/missing.png",name:"Unknown"}){if(A.id<0)n.fatalError("BlockType.constructor(): BlockType id not set.");if(!P7.instance.hasBlockTexture(A.textureUri))n.fatalError(`BlockType.constructor(): Block texture ${A.textureUri} not found. If it is a cubemap texture, make sure every face is present in the folder (+x.png, -x.png, +y.png, -y.png, +z.png, -z.png).`);super();this._id=A.id,this._customColliderOptions=A.customColliderOptions,this._isLiquid=A.isLiquid??!1,this._name=A.name,this._textureUri=A.textureUri,this._lightLevel=Math.min(A.lightLevel??0,15)}get id(){return this._id}get colliderOptions(){return this._customColliderOptions??{shape:"voxels"}}get isLiquid(){return this._isLiquid}get isMeshable(){return!this._customColliderOptions}get isTrimesh(){return this.colliderOptions.shape==="trimesh"}get isVoxel(){return this.colliderOptions.shape==="voxels"}get lightLevel(){return this._lightLevel}get name(){return this._name}get textureUri(){return this._textureUri}createCollider(A){let Q=this.colliderOptions.shape==="voxels"?new S9({...this.colliderOptions,coordinates:A.map((B)=>B.globalCoordinate),size:{x:1,y:1,z:1}}):new S9({...this.colliderOptions,...this._buildTrimeshFromBlockPlacements(A)});if(this.isLiquid)Q.setSensor(!0);if(this.hasListeners("BLOCK_TYPE.ENTITY_COLLISION")||this.isLiquid)Q.enableCollisionEvents(!0);if(this.hasListeners("BLOCK_TYPE.ENTITY_CONTACT_FORCE"))Q.enableContactForceEvents(!0);if($C.isDefaultCollisionGroups(Q.collisionGroups))Q.setCollisionGroups({belongsTo:[1],collidesWith:[65535&~1]});return Q}interact(A,Q){if(!A.world)return;this.emitWithWorld(A.world,"BLOCK_TYPE.INTERACT",{blockType:this,player:A,raycastHit:Q})}serialize(){return GQ.serializeBlockType(this)}_buildTrimeshFromBlockPlacements(A){let Q=this.colliderOptions,B=Q.vertices,Y=Q.indices;if(!B||!Y)n.fatalError(`BlockType._buildTrimeshFromCoordinates(): Block type id ${this.id} (${this.name}) is a trimesh but is missing vertices or indices!`);if(B.length%3!==0||Y.length%3!==0)n.fatalError(`BlockType._buildTrimeshFromCoordinates(): Block type id ${this.id} (${this.name}) has an invalid number of vertices or indices! Expected a multiple of 3, got ${B.length} and ${Y.length}.`);let J=B.length/3,C=A.length,X=new Float32Array(B.length*C),G=new Uint32Array(Y.length*C);for(let F=0;FQ.REGISTER_BLOCK_TYPE="BLOCK_TYPE_REGISTRY.REGISTER_BLOCK_TYPE")(Mf||={});class tH extends BQ{_blockTypes=new Map;_world;constructor(A){super();this._world=A}get world(){return this._world}getAllBlockTypes(){return Array.from(this._blockTypes.values())}getBlockType(A){let Q=this._blockTypes.get(A);if(!Q)n.fatalError(`BlockTypeRegistry.getBlockType(): BlockType with id ${A} not found.`);return Q}registerGenericBlockType(A){let B=new class extends N8{constructor(Y=A){super(Y)}};return this.registerBlockType(B),B}registerBlockType(A){this._blockTypes.set(A.id,A),this.emitWithWorld(this._world,"BLOCK_TYPE_REGISTRY.REGISTER_BLOCK_TYPE",{blockTypeRegistry:this,id:A.id,blockType:A})}serialize(){return GQ.serializeBlockTypeRegistry(this)}}var Bm={};fG(Bm,{worldSchema:()=>Qm,worldPacketDefinition:()=>cEA,vectorSchema:()=>nQ,vectorBooleanSchema:()=>MXB,uiSchema:()=>eb,uiPacketDefinition:()=>uEA,uiDatasSchema:()=>Am,uiDatasPacketDefinition:()=>dEA,uiDataSendPacketDefinition:()=>wEA,uiDataSchema:()=>zD,syncResponseSchema:()=>tb,syncResponsePacketDefinition:()=>mEA,syncRequestSchema:()=>Rb,syncRequestPacketDefinition:()=>REA,stateRequestSchema:()=>zb,stateRequestPacketDefinition:()=>zEA,sceneUIsSchema:()=>ob,sceneUIsPacketDefinition:()=>bEA,sceneUISchema:()=>ab,rgbColorSchema:()=>SY,registeredPackets:()=>Kw,quaternionSchema:()=>RD,playersSchema:()=>rb,playersPacketDefinition:()=>fEA,playerSchema:()=>sb,physicsDebugRenderSchema:()=>nb,physicsDebugRenderPacketDefinition:()=>gEA,physicsDebugRaycastsSchema:()=>ib,physicsDebugRaycastsPacketDefinition:()=>xEA,physicsDebugRaycastSchema:()=>pb,particleEmittersSchema:()=>lb,particleEmittersPacketDefinition:()=>hEA,particleEmitterSchema:()=>cb,outlineSchema:()=>xb,outboundPackets:()=>Ew,notificationPermissionRequestSchema:()=>db,notificationPermissionRequestPacketDefinition:()=>yEA,modelNodeOverrideSchema:()=>gb,modelAnimationSchema:()=>hb,lightsSchema:()=>ub,lightsPacketDefinition:()=>vEA,lightSchema:()=>mb,isValidPacket:()=>RXB,inputSchema:()=>Mb,inputPacketDefinition:()=>MEA,inboundPackets:()=>Uw,hexColorSchema:()=>Lb,heartbeatSchema:()=>Nb,heartbeatPacketDefinition:()=>NEA,framePacketBuffer:()=>qXB,entitySchema:()=>fb,entitiesSchema:()=>bb,entitiesPacketDefinition:()=>_EA,definePacket:()=>HQ,debugConfigSchema:()=>qb,debugConfigPacketDefinition:()=>qEA,createPacketBufferUnframer:()=>LXB,createPacket:()=>NXB,connectionSchema:()=>Db,connectionPacketDefinition:()=>DEA,chunksSchema:()=>yb,chunksPacketDefinition:()=>kEA,chunkSchema:()=>vb,chatMessagesSchema:()=>_b,chatMessagesPacketDefinition:()=>SEA,chatMessageSendPacketDefinition:()=>LEA,chatMessageSchema:()=>MD,cameraSchema:()=>kb,cameraPacketDefinition:()=>TEA,blocksSchema:()=>Pb,blocksPacketDefinition:()=>OEA,blockTypesSchema:()=>Sb,blockTypesPacketDefinition:()=>PEA,blockTypeSchema:()=>Tb,blockSchema:()=>Ob,bidirectionalPackets:()=>$w,audiosSchema:()=>jb,audiosPacketDefinition:()=>jEA,audioSchema:()=>wb,PacketId:()=>nB});var $w={};fG($w,{heartbeatPacketDefinition:()=>NEA,connectionPacketDefinition:()=>DEA});var Ib=qA(IEA(),1);class Hb extends Ib.default{static instance=new Ib.default}var qD=4,HEA=33554432,nB;((_)=>{_[_.SYNC_REQUEST=0]="SYNC_REQUEST";_[_.INPUT=1]="INPUT";_[_.STATE_REQUEST=2]="STATE_REQUEST";_[_.CHAT_MESSAGE_SEND=3]="CHAT_MESSAGE_SEND";_[_.UI_DATA_SEND=4]="UI_DATA_SEND";_[_.SYNC_RESPONSE=32]="SYNC_RESPONSE";_[_.AUDIOS=33]="AUDIOS";_[_.BLOCKS=34]="BLOCKS";_[_.BLOCK_TYPES=35]="BLOCK_TYPES";_[_.CHAT_MESSAGES=36]="CHAT_MESSAGES";_[_.CHUNKS=37]="CHUNKS";_[_.ENTITIES=38]="ENTITIES";_[_.WORLD=39]="WORLD";_[_.CAMERA=40]="CAMERA";_[_.UI=41]="UI";_[_.UI_DATAS=42]="UI_DATAS";_[_.SCENE_UIS=43]="SCENE_UIS";_[_.LIGHTS=44]="LIGHTS";_[_.PLAYERS=45]="PLAYERS";_[_.PARTICLE_EMITTERS=46]="PARTICLE_EMITTERS";_[_.NOTIFICATION_PERMISSION_REQUEST=47]="NOTIFICATION_PERMISSION_REQUEST";_[_.CONNECTION=116]="CONNECTION";_[_.HEARTBEAT=117]="HEARTBEAT";_[_.DEBUG_CONFIG=128]="DEBUG_CONFIG";_[_.PHYSICS_DEBUG_RENDER=192]="PHYSICS_DEBUG_RENDER";_[_.PHYSICS_DEBUG_RAYCASTS=193]="PHYSICS_DEBUG_RAYCASTS"})(nB||={});function NXB(A,Q,B){if(!A.validate(Q))throw Error(`Invalid payload for packet with id ${A.id}. Error: ${Hb.instance.errorsText(A.validate.errors)}`);let Y=[A.id,Q];if(typeof B==="number")Y.push(B);return Y}function LXB(A){let Q=new Uint8Array(524288),B=new DataView(Q.buffer,Q.byteOffset,Q.byteLength),Y=0;return(J)=>{if(Y+J.length>Q.length){let X=Math.max(Q.length*2,Y+J.length);if(X>HEA){console.error(`Unframer packet buffer exceeded maximum size of ${HEA} bytes, discarding packet...`),Y=0;return}let G=new Uint8Array(X);G.set(Q.subarray(0,Y)),Q=G,B=new DataView(Q.buffer,Q.byteOffset,Q.byteLength)}Q.set(J,Y),Y+=J.length;let C=0;while(Y-C>=qD){let X=B.getUint32(C,!1),G=qD+X;if(Y-C0){if(Y>C)Q.copyWithin(0,C,Y);Y-=C}}}function HQ(A,Q){return{id:A,schema:Q,validate:Hb.instance.compile(Q)}}function qXB(A){let Q=new Uint8Array(qD+A.length);return new DataView(Q.buffer).setUint32(0,A.length,!1),Q.set(A,qD),Q}var Db={type:"object",properties:{i:{type:"string",nullable:!0},k:{type:"boolean",nullable:!0}},additionalProperties:!1};var DEA=HQ(116,Db);var Nb={type:"null",nullable:!0};var NEA=HQ(117,Nb);var Uw={};fG(Uw,{uiDataSendPacketDefinition:()=>wEA,syncRequestPacketDefinition:()=>REA,stateRequestPacketDefinition:()=>zEA,inputPacketDefinition:()=>MEA,debugConfigPacketDefinition:()=>qEA,chatMessageSendPacketDefinition:()=>LEA});var Lb={type:"string",pattern:"^[0-9A-Fa-f]{6}$"};var MD={type:"object",properties:{m:{type:"string"},c:{...Lb,nullable:!0},p:{type:"string",nullable:!0}},required:["m"],additionalProperties:!1};var LEA=HQ(3,MD);var qb={type:"object",properties:{pdr:{type:"boolean",nullable:!0}},additionalProperties:!1};var qEA=HQ(128,qb);var nQ={type:"array",items:[{type:"number"},{type:"number"},{type:"number"}],minItems:3,maxItems:3};var Mb={type:"object",properties:{"1":{type:"boolean",nullable:!0},"2":{type:"boolean",nullable:!0},"3":{type:"boolean",nullable:!0},"4":{type:"boolean",nullable:!0},"5":{type:"boolean",nullable:!0},"6":{type:"boolean",nullable:!0},"7":{type:"boolean",nullable:!0},"8":{type:"boolean",nullable:!0},"9":{type:"boolean",nullable:!0},"0":{type:"boolean",nullable:!0},w:{type:"boolean",nullable:!0},a:{type:"boolean",nullable:!0},s:{type:"boolean",nullable:!0},d:{type:"boolean",nullable:!0},q:{type:"boolean",nullable:!0},e:{type:"boolean",nullable:!0},r:{type:"boolean",nullable:!0},f:{type:"boolean",nullable:!0},z:{type:"boolean",nullable:!0},x:{type:"boolean",nullable:!0},c:{type:"boolean",nullable:!0},v:{type:"boolean",nullable:!0},u:{type:"boolean",nullable:!0},i:{type:"boolean",nullable:!0},o:{type:"boolean",nullable:!0},j:{type:"boolean",nullable:!0},k:{type:"boolean",nullable:!0},l:{type:"boolean",nullable:!0},n:{type:"boolean",nullable:!0},m:{type:"boolean",nullable:!0},sp:{type:"boolean",nullable:!0},sh:{type:"boolean",nullable:!0},tb:{type:"boolean",nullable:!0},ml:{type:"boolean",nullable:!0},mr:{type:"boolean",nullable:!0},cp:{type:"number",nullable:!0},cy:{type:"number",nullable:!0},ird:{...nQ,nullable:!0},iro:{...nQ,nullable:!0},jd:{type:"number",nullable:!0},sq:{type:"number",nullable:!0}},additionalProperties:!1};var MEA=HQ(1,Mb);var zb={type:"object",properties:{},additionalProperties:!1};var zEA=HQ(2,zb);var Rb={type:"null",nullable:!0};var REA=HQ(0,Rb);var zD={type:"object",properties:{},additionalProperties:!0};var wEA=HQ(4,zD);var Ew={};fG(Ew,{worldPacketDefinition:()=>cEA,uiPacketDefinition:()=>uEA,uiDatasPacketDefinition:()=>dEA,syncResponsePacketDefinition:()=>mEA,sceneUIsPacketDefinition:()=>bEA,playersPacketDefinition:()=>fEA,physicsDebugRenderPacketDefinition:()=>gEA,physicsDebugRaycastsPacketDefinition:()=>xEA,particleEmittersPacketDefinition:()=>hEA,notificationPermissionRequestPacketDefinition:()=>yEA,lightsPacketDefinition:()=>vEA,entitiesPacketDefinition:()=>_EA,chunksPacketDefinition:()=>kEA,chatMessagesPacketDefinition:()=>SEA,cameraPacketDefinition:()=>TEA,blocksPacketDefinition:()=>OEA,blockTypesPacketDefinition:()=>PEA,audiosPacketDefinition:()=>jEA});var wb={type:"object",properties:{i:{type:"number"},a:{type:"string",nullable:!0},cd:{type:"number",nullable:!0},d:{type:"number",nullable:!0},de:{type:"number",nullable:!0},di:{type:"number",minimum:0,nullable:!0},e:{type:"number",nullable:!0},l:{type:"boolean",nullable:!0},o:{type:"number",nullable:!0},p:{...nQ,nullable:!0},pa:{type:"boolean",nullable:!0},pl:{type:"boolean",nullable:!0},pr:{type:"number",minimum:0,nullable:!0},r:{type:"boolean",nullable:!0},rd:{type:"number",nullable:!0},s:{type:"number",nullable:!0},v:{type:"number",minimum:0,maximum:1,nullable:!0}},required:["i"],additionalProperties:!1};var jb={type:"array",items:{...wb}};var jEA=HQ(33,jb);var Ob={type:"object",properties:{i:{type:"number"},c:nQ,r:{type:"number",nullable:!0}},required:["i","c"],additionalProperties:!1};var Pb={type:"array",items:{...Ob}};var OEA=HQ(34,Pb);var Tb={type:"object",properties:{i:{type:"number"},l:{type:"boolean",nullable:!0},ll:{type:"number",nullable:!0},n:{type:"string",nullable:!0},t:{type:"string",nullable:!0},ti:{type:"array",items:{type:"number"},nullable:!0},tv:{type:"array",items:{type:"number"},nullable:!0}},required:["i"],additionalProperties:!1};var Sb={type:"array",items:{...Tb}};var PEA=HQ(35,Sb);var kb={type:"object",properties:{cb:{type:"boolean",nullable:!0},m:{type:"number",nullable:!0},e:{type:"number",nullable:!0},et:{type:"number",nullable:!0},fo:{type:"number",nullable:!0},ffo:{type:"number",nullable:!0},fv:{type:"number",nullable:!0},h:{type:"array",items:{type:"string"},nullable:!0},mp:{type:"boolean",nullable:!0},my:{type:"boolean",nullable:!0},o:{...nQ,nullable:!0},p:{...nQ,nullable:!0},pt:{...nQ,nullable:!0},pl:{...nQ,nullable:!0},s:{type:"array",items:{type:"string"},nullable:!0},sa:{type:"number",nullable:!0},z:{type:"number",nullable:!0}},additionalProperties:!1};var _b={type:"array",items:{...MD}};var vb={type:"object",properties:{c:nQ,b:{type:"array",items:{type:"number",minimum:0,maximum:255},minItems:4096,maxItems:4096,nullable:!0},r:{type:"array",items:{type:"number"},minItems:0,maxItems:8192,nullable:!0},rm:{type:"boolean",nullable:!0}},required:["c"],additionalProperties:!1};var yb={type:"array",items:{...vb}};var SY={type:"array",items:[{type:"number",minimum:0,maximum:255},{type:"number",minimum:0,maximum:255},{type:"number",minimum:0,maximum:255}],minItems:3,maxItems:3};var hb={type:"object",properties:{n:{type:"string"},b:{type:"number",nullable:!0},c:{type:"boolean",nullable:!0},fi:{type:"boolean",nullable:!0},fo:{type:"boolean",nullable:!0},l:{type:"number",nullable:!0},p:{type:"boolean",nullable:!0},pa:{type:"boolean",nullable:!0},pr:{type:"number",nullable:!0},r:{type:"boolean",nullable:!0},s:{type:"boolean",nullable:!0},w:{type:"number",nullable:!0}},required:["n"],additionalProperties:!1};var RD={type:"array",items:[{type:"number"},{type:"number"},{type:"number"},{type:"number"}],minItems:4,maxItems:4};var gb={type:"object",properties:{n:{type:"string"},ec:{...SY,nullable:!0},ei:{type:"number",nullable:!0},h:{type:"boolean",nullable:!0},p:{...nQ,nullable:!0},pi:{type:"number",nullable:!0},r:{...RD,nullable:!0},ri:{type:"number",nullable:!0},rm:{type:"boolean",nullable:!0},s:{...nQ,nullable:!0},si:{type:"number",nullable:!0}},required:["n"],additionalProperties:!1};var xb={type:"object",properties:{c:{...SY,nullable:!0},ci:{type:"number",nullable:!0},th:{type:"number",nullable:!0},o:{type:"number",nullable:!0},oc:{type:"boolean",nullable:!0}},required:[],additionalProperties:!1};var fb={type:"object",properties:{i:{type:"number"},bh:{...nQ,nullable:!0},bt:{type:"string",nullable:!0},e:{type:"boolean",nullable:!0},ec:{...SY,nullable:!0},ei:{type:"number",nullable:!0},m:{type:"string",nullable:!0},ma:{type:"array",items:{...hb},nullable:!0},mo:{type:"array",items:{...gb},nullable:!0},mt:{type:"string",nullable:!0},n:{type:"string",nullable:!0},o:{type:"number",nullable:!0},ol:{...xb,nullable:!0},p:{...nQ,nullable:!0},pi:{type:"number",nullable:!0},pe:{type:"number",nullable:!0},pn:{type:"string",nullable:!0},r:{...RD,nullable:!0},ri:{type:"number",nullable:!0},rm:{type:"boolean",nullable:!0},si:{type:"number",nullable:!0},sv:{...nQ,nullable:!0},t:{...SY,nullable:!0}},required:["i"],additionalProperties:!1};var bb={type:"array",items:{...fb}};var mb={type:"object",properties:{i:{type:"number"},a:{type:"number",nullable:!0},e:{type:"number",nullable:!0},c:{...SY,nullable:!0},d:{type:"number",nullable:!0},n:{type:"number",nullable:!0},o:{...nQ,nullable:!0},p:{...nQ,nullable:!0},pe:{type:"number",minimum:0,maximum:1,nullable:!0},rm:{type:"boolean",nullable:!0},t:{type:"number",nullable:!0},te:{type:"number",nullable:!0},tp:{...nQ,nullable:!0}},required:["i"],additionalProperties:!1};var ub={type:"array",items:{...mb}};var db={type:"null",nullable:!0};var cb={type:"object",properties:{i:{type:"number"},at:{type:"number",nullable:!0},b:{type:"number",nullable:!0},ce:{...SY,nullable:!0},cev:{...SY,nullable:!0},cs:{...SY,nullable:!0},csv:{...SY,nullable:!0},cie:{type:"number",nullable:!0},ciev:{type:"number",nullable:!0},cis:{type:"number",nullable:!0},cisv:{type:"number",nullable:!0},e:{type:"number",nullable:!0},en:{type:"string",nullable:!0},g:{...nQ,nullable:!0},l:{type:"number",nullable:!0},le:{type:"boolean",nullable:!0},lv:{type:"number",nullable:!0},mp:{type:"number",nullable:!0},o:{...nQ,nullable:!0},oe:{type:"number",nullable:!0},oev:{type:"number",nullable:!0},or:{type:"number",nullable:!0},ofr:{...nQ,nullable:!0},os:{type:"number",nullable:!0},osv:{type:"number",nullable:!0},p:{...nQ,nullable:!0},pa:{type:"boolean",nullable:!0},pv:{...nQ,nullable:!0},r:{type:"number",nullable:!0},rv:{type:"number",nullable:!0},rm:{type:"boolean",nullable:!0},se:{type:"number",nullable:!0},sev:{type:"number",nullable:!0},ss:{type:"number",nullable:!0},ssv:{type:"number",nullable:!0},t:{type:"boolean",nullable:!0},tu:{type:"string",nullable:!0},v:{...nQ,nullable:!0},vv:{...nQ,nullable:!0}},required:["i"],additionalProperties:!1};var lb={type:"array",items:{...cb}};var pb={type:"object",properties:{o:{...nQ},d:{...nQ},l:{type:"number"},h:{type:"boolean"}},required:["o","d","l","h"],additionalProperties:!1};var ib={type:"array",items:{...pb}};var nb={type:"object",properties:{v:{type:"array",items:{type:"number"}},c:{type:"array",items:{type:"number"}}},required:["v","c"],additionalProperties:!1};var sb={type:"object",properties:{i:{type:"string"},p:{type:"string",nullable:!0},rm:{type:"boolean",nullable:!0},u:{type:"string",nullable:!0}},required:["i"],additionalProperties:!1};var rb={type:"array",items:{...sb}};var ab={type:"object",properties:{i:{type:"number"},e:{type:"number",nullable:!0},o:{...nQ,nullable:!0},p:{...nQ,nullable:!0},rm:{type:"boolean",nullable:!0},s:{type:"object",nullable:!0},t:{type:"string",nullable:!0},v:{type:"number",nullable:!0}},required:["i"],additionalProperties:!1};var ob={type:"array",items:{...ab}};var tb={type:"object",properties:{r:{type:"number"},s:{type:"number"},p:{type:"number"},n:{type:"number"}},required:["r","s","p","n"],additionalProperties:!1};var eb={type:"object",properties:{p:{type:"boolean",nullable:!0},pf:{type:"boolean",nullable:!0},u:{type:"string",nullable:!0},ua:{type:"array",items:{type:"string"},nullable:!0}},additionalProperties:!1};var Am={type:"array",items:{...zD}};var MXB={type:"array",items:[{type:"boolean"},{type:"boolean"},{type:"boolean"}],minItems:3,maxItems:3};var Qm={type:"object",properties:{i:{type:"number"},ac:{...SY,nullable:!0},ai:{type:"number",nullable:!0},dc:{...SY,nullable:!0},di:{type:"number",nullable:!0},dp:{...nQ,nullable:!0},fc:{...SY,nullable:!0},ff:{type:"number",nullable:!0},fn:{type:"number",nullable:!0},n:{type:"string",nullable:!0},s:{type:"string",nullable:!0},si:{type:"number",nullable:!0},t:{type:"number",nullable:!0}},required:["i"],additionalProperties:!1};var TEA=HQ(40,kb);var SEA=HQ(36,_b);var kEA=HQ(37,yb);var _EA=HQ(38,bb);var vEA=HQ(44,ub);var yEA=HQ(47,db);var hEA=HQ(46,lb);var gEA=HQ(192,nb);var xEA=HQ(193,ib);var fEA=HQ(45,rb);var bEA=HQ(43,ob);var mEA=HQ(32,tb);var uEA=HQ(41,eb);var dEA=HQ(42,Am);var cEA=HQ(39,Qm);var Kw=new Map,zXB={...$w,...Uw,...Ew};for(let A of Object.values(zXB))if("id"in A&&"schema"in A){let Q=A;if(Kw.has(Q.id))throw Error(`Packet with id ${Q.id} is already registered.`);Kw.set(Q.id,Q)}function RXB(A){if(typeof A!=="object"||A===null||typeof A[0]!=="number"||A[0]<0||A[1]===void 0||A[2]!==void 0&&(typeof A[2]!=="number"||A[2]<0))return!1;let Q=Kw.get(A[0]);return!!Q&&Q.validate(A[1])}var hQ=Bm;var rVA=qA(HKA(),1);import KZ from"fs";import nVA from"path";var U7B=qA(UVA(),1),E7B=qA(Em(),1),K7B=qA(Vm(),1),NE=qA(ww(),1),Mm=qA(NVA(),1);var LVA=NE.default;function h9(A){if(A===null)return"null";if(Array.isArray(A))return"array";return typeof A}function b7(A){return h9(A)==="object"}function V7B(A){return Array.isArray(A)&&A.length>0&&A.every((Q)=>("message"in Q))}function zm(A,Q){return A.length<124?A:Q}var qVA="graphql-transport-ws";var q8=((A)=>{return A[A.InternalServerError=4500]="InternalServerError",A[A.InternalClientError=4005]="InternalClientError",A[A.BadRequest=4400]="BadRequest",A[A.BadResponse=4004]="BadResponse",A[A.Unauthorized=4401]="Unauthorized",A[A.Forbidden=4403]="Forbidden",A[A.SubprotocolNotAcceptable=4406]="SubprotocolNotAcceptable",A[A.ConnectionInitialisationTimeout=4408]="ConnectionInitialisationTimeout",A[A.ConnectionAcknowledgementTimeout=4504]="ConnectionAcknowledgementTimeout",A[A.SubscriberAlreadyExists=4409]="SubscriberAlreadyExists",A[A.TooManyInitialisationRequests=4429]="TooManyInitialisationRequests",A})(q8||{}),M8=((A)=>{return A.ConnectionInit="connection_init",A.ConnectionAck="connection_ack",A.Ping="ping",A.Pong="pong",A.Subscribe="subscribe",A.Next="next",A.Error="error",A.Complete="complete",A})(M8||{});function MVA(A){if(!b7(A))throw Error(`Message is expected to be an object, but got ${h9(A)}`);if(!A.type)throw Error("Message is missing the 'type' property");if(typeof A.type!=="string")throw Error(`Message is expects the 'type' property to be a string, but got ${h9(A.type)}`);switch(A.type){case"connection_init":case"connection_ack":case"ping":case"pong":{if(A.payload!=null&&!b7(A.payload))throw Error(`"${A.type}" message expects the 'payload' property to be an object or nullish or missing, but got "${A.payload}"`);break}case"subscribe":{if(typeof A.id!=="string")throw Error(`"${A.type}" message expects the 'id' property to be a string, but got ${h9(A.id)}`);if(!A.id)throw Error(`"${A.type}" message requires a non-empty 'id' property`);if(!b7(A.payload))throw Error(`"${A.type}" message expects the 'payload' property to be an object, but got ${h9(A.payload)}`);if(typeof A.payload.query!=="string")throw Error(`"${A.type}" message payload expects the 'query' property to be a string, but got ${h9(A.payload.query)}`);if(A.payload.variables!=null&&!b7(A.payload.variables))throw Error(`"${A.type}" message payload expects the 'variables' property to be a an object or nullish or missing, but got ${h9(A.payload.variables)}`);if(A.payload.operationName!=null&&h9(A.payload.operationName)!=="string")throw Error(`"${A.type}" message payload expects the 'operationName' property to be a string or nullish or missing, but got ${h9(A.payload.operationName)}`);if(A.payload.extensions!=null&&!b7(A.payload.extensions))throw Error(`"${A.type}" message payload expects the 'extensions' property to be a an object or nullish or missing, but got ${h9(A.payload.extensions)}`);break}case"next":{if(typeof A.id!=="string")throw Error(`"${A.type}" message expects the 'id' property to be a string, but got ${h9(A.id)}`);if(!A.id)throw Error(`"${A.type}" message requires a non-empty 'id' property`);if(!b7(A.payload))throw Error(`"${A.type}" message expects the 'payload' property to be an object, but got ${h9(A.payload)}`);break}case"error":{if(typeof A.id!=="string")throw Error(`"${A.type}" message expects the 'id' property to be a string, but got ${h9(A.id)}`);if(!A.id)throw Error(`"${A.type}" message requires a non-empty 'id' property`);if(!V7B(A.payload))throw Error(`"${A.type}" message expects the 'payload' property to be an array of GraphQL errors, but got ${JSON.stringify(A.payload)}`);break}case"complete":{if(typeof A.id!=="string")throw Error(`"${A.type}" message expects the 'id' property to be a string, but got ${h9(A.id)}`);if(!A.id)throw Error(`"${A.type}" message requires a non-empty 'id' property`);break}default:throw Error(`Invalid message 'type' property "${A.type}"`)}return A}function zVA(A,Q){return MVA(typeof A==="string"?JSON.parse(A,Q):A)}function LE(A,Q){return MVA(A),JSON.stringify(A,Q)}function wm(A){let{url:Q,connectionParams:B,lazy:Y=!0,onNonLazyError:J=console.error,lazyCloseTimeout:C=0,keepAlive:X=0,disablePong:G,connectionAckWaitTimeout:F=0,retryAttempts:W=5,retryWait:Z=async function(v){let y=Math.pow(2,v);await new Promise((g)=>setTimeout(g,y*1000+Math.floor(Math.random()*2700+300)))},shouldRetry:U=Rm,on:$,webSocketImpl:E,generateID:K=function(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(v)=>{let y=Math.random()*16|0;return(v=="x"?y:y&3|8).toString(16)})},jsonMessageReplacer:I,jsonMessageReviver:V}=A,H;if(E){if(!H7B(E))throw Error("Invalid WebSocket implementation provided");H=E}else if(typeof WebSocket<"u")H=WebSocket;else if(typeof global<"u")H=global.WebSocket||global.MozWebSocket;else if(typeof window<"u")H=window.WebSocket||window.MozWebSocket;if(!H)throw Error("WebSocket implementation missing; on Node you can `import WebSocket from 'ws';` and pass `webSocketImpl: WebSocket` to `createClient`");let D=H,L=(()=>{let S=(()=>{let y={};return{on(g,h){return y[g]=h,()=>{delete y[g]}},emit(g){if("id"in g)y[g.id]?.(g)}}})(),v={connecting:$?.connecting?[$.connecting]:[],opened:$?.opened?[$.opened]:[],connected:$?.connected?[$.connected]:[],ping:$?.ping?[$.ping]:[],pong:$?.pong?[$.pong]:[],message:$?.message?[S.emit,$.message]:[S.emit],closed:$?.closed?[$.closed]:[],error:$?.error?[$.error]:[]};return{onMessage:S.on,on(y,g){let h=v[y];return h.push(g),()=>{h.splice(h.indexOf(g),1)}},emit(y,...g){for(let h of[...v[y]])h(...g)}}})();function z(S){let v=[L.on("error",(y)=>{v.forEach((g)=>g()),S(y)}),L.on("closed",(y)=>{v.forEach((g)=>g()),S(y)})]}let M,N=0,q,w=!1,P=0,_=!1;async function O(){clearTimeout(q);let[S,v]=await(M??(M=new Promise((h,m)=>(async()=>{if(w){if(await Z(P),!N)return M=void 0,m({code:1000,reason:"All Subscriptions Gone"});P++}L.emit("connecting",w);let i=new D(typeof Q==="function"?await Q():Q,qVA),p,l;function d(){if(isFinite(X)&&X>0)clearTimeout(l),l=setTimeout(()=>{if(i.readyState===D.OPEN)i.send(LE({type:M8.Ping})),L.emit("ping",!1,void 0)},X)}z((b)=>{if(M=void 0,clearTimeout(p),clearTimeout(l),m(b),b instanceof Ow)i.close(4499,"Terminated"),i.onerror=null,i.onclose=null}),i.onerror=(b)=>L.emit("error",b),i.onclose=(b)=>L.emit("closed",b),i.onopen=async()=>{try{L.emit("opened",i);let b=typeof B==="function"?await B():B;if(i.readyState!==D.OPEN)return;if(i.send(LE(b?{type:M8.ConnectionInit,payload:b}:{type:M8.ConnectionInit},I)),isFinite(F)&&F>0)p=setTimeout(()=>{i.close(q8.ConnectionAcknowledgementTimeout,"Connection acknowledgement timeout")},F);d()}catch(b){L.emit("error",b),i.close(q8.InternalClientError,zm(b instanceof Error?b.message:String(b),"Internal client error"))}};let x=!1;i.onmessage=({data:b})=>{try{let o=zVA(b,V);if(L.emit("message",o),o.type==="ping"||o.type==="pong"){if(L.emit(o.type,!0,o.payload),o.type==="pong")d();else if(!G)i.send(LE(o.payload?{type:M8.Pong,payload:o.payload}:{type:M8.Pong})),L.emit("pong",!1,o.payload);return}if(x)return;if(o.type!==M8.ConnectionAck)throw Error(`First message cannot be of type ${o.type}`);clearTimeout(p),x=!0,L.emit("connected",i,o.payload,w),w=!1,P=0,h([i,new Promise((GA,VA)=>z(VA))])}catch(o){i.onmessage=null,L.emit("error",o),i.close(q8.BadResponse,zm(o instanceof Error?o.message:String(o),"Bad response"))}}})())));if(S.readyState===D.CLOSING)await v;let y=()=>{},g=new Promise((h)=>y=h);return[S,y,Promise.race([g.then(()=>{if(!N){let h=()=>S.close(1000,"Normal Closure");if(isFinite(C)&&C>0)q=setTimeout(()=>{if(S.readyState===D.OPEN)h()},C);else h()}}),v])]}function k(S){if(Rm(S)&&(I7B(S.code)||[q8.InternalServerError,q8.InternalClientError,q8.BadRequest,q8.BadResponse,q8.Unauthorized,q8.SubprotocolNotAcceptable,q8.SubscriberAlreadyExists,q8.TooManyInitialisationRequests].includes(S.code)))throw S;if(_)return!1;if(Rm(S)&&S.code===1000)return N>0;if(!W||P>=W)throw S;if(!U(S))throw S;return w=!0}if(!Y)(async()=>{N++;for(;;)try{let[,,S]=await O();await S}catch(S){try{if(!k(S))return}catch(v){return J?.(v)}}})();function T(S,v){let y=K(S),g=!1,h=!1,m=()=>{N--,g=!0};return(async()=>{N++;for(;;)try{let[i,p,l]=await O();if(g)return p();let d=L.onMessage(y,(x)=>{switch(x.type){case M8.Next:{v.next(x.payload);return}case M8.Error:{h=!0,g=!0,v.error(x.payload),m();return}case M8.Complete:{g=!0,m();return}}});i.send(LE({id:y,type:M8.Subscribe,payload:S},I)),m=()=>{if(!g&&i.readyState===D.OPEN)i.send(LE({id:y,type:M8.Complete},I));N--,g=!0,p()},await l.finally(d);return}catch(i){if(!k(i))return}})().then(()=>{if(!h)v.complete()}).catch((i)=>{v.error(i)}),()=>{if(!g)m()}}return{on:L.on,subscribe:T,iterate(S){let v=[],y={done:!1,error:null,resolve:()=>{}},g=T(S,{next(m){v.push(m),y.resolve()},error(m){y.done=!0,y.error=m,y.resolve()},complete(){y.done=!0,y.resolve()}}),h=async function*(){for(;;){if(!v.length)await new Promise((i)=>y.resolve=i);while(v.length)yield v.shift();if(y.error)throw y.error;if(y.done)return}}();return h.throw=async(m)=>{if(!y.done)y.done=!0,y.error=m,y.resolve();return{done:!0,value:void 0}},h.return=async()=>{return g(),{done:!0,value:void 0}},h},async dispose(){if(_=!0,M){let[S]=await M;S.close(1000,"Normal Closure")}},terminate(){if(M)L.emit("closed",new Ow)}}}class Ow extends Error{name="TerminatedCloseEvent";message="4499: Terminated";code=4499;reason="Terminated";wasClean=!1}function Rm(A){return b7(A)&&"code"in A&&"reason"in A}function I7B(A){if([1000,1001,1006,1005,1012,1013,1014].includes(A))return!1;return A>=1000&&A<=1999}function H7B(A){return typeof A==="function"&&"constructor"in A&&"CLOSED"in A&&"CLOSING"in A&&"CONNECTING"in A&&"OPEN"in A}var sVA=qA(iVA(),1);var yD="./dev/persistence",Tw=process.env.HYTOPIA_NOTIFICATION_SERVICE_URL||"https://prod.notifications.hytopia.com";class N5{static instance=new N5;creatorApiKey=process.env.HYTOPIA_API_KEY;gameId=process.env.HYTOPIA_GAME_ID;lobbyId=process.env.HYTOPIA_LOBBY_ID;_creativeGateway;_gqlWs;constructor(){this._gqlWs=wm({url:"wss://prod.gql.hytopia.com/graphql",webSocketImpl:LVA});try{this._creativeGateway=new sVA.CreativeGateway}catch{console.warn(["━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━","\uD83D\uDEA8 HYTOPIA PLATFORM GATEWAY IS NOT INITIALIZED \uD83D\uDEA8","","\uD83D\uDD27 Local development is still possible, but these features will be disabled:"," • \uD83D\uDC64 Live Player Accounts"," • \uD83C\uDFAD Live Player Cosmetics"," • \uD83D\uDD14 Scheduled Notifications"," • \uD83D\uDC1B Crash Analytics & Debug Logs","","\uD83D\uDCA1 These features will be enabled but modified:"," • \uD83D\uDCBE Player & Global Persisted Data - Data will be persisted"," locally in the ./dev/persistence directory of your project."," Player ids for data persistence will begin at 1 for the first "," player to join your local server, and increments for each"," additional player. This means that if you restart your"," server, the first player id will be 1 again. This is to ensure"," that data persistence across server restarts can be easily"," tested and debugged in local development.","","To enable the HYTOPIA Platform Gateway locally:"," 1. Set these environment variables:"," HYTOPIA_API_KEY, HYTOPIA_GAME_ID, HYTOPIA_LOBBY_ID"," 2. You can find these values at: https://create.hytopia.com","","Note: In production, these environment variables will be auto-populated ","& the HYTOPIA Platform Gateway will automatically be initialized \uD83D\uDE80","━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━",""].join(` `))}}get isGatewayAvailable(){return!!this._creativeGateway}async getGlobalData(A){if(!this._creativeGateway&&process.env.NODE_ENV==="production")return n.warning("PlatformGateway.getGlobalData(): You are running in production mode, but the Platform Gateway is not initialized! No data will be returned."),{error:{code:"gatewayError",message:"Platform Gateway is not initialized."}};return this._creativeGateway?await this._creativeGateway.kv.get(A):this._readDevGlobalDataLocally(A)}async getPlayerCosmetics(A){let Q=this._gqlWs.iterate({query:`{ userById(id: "${A}") { characterSettings { @@ -258,35 +258,35 @@ globstar while`,A,U,Q,$,E),this.matchOne(A.slice(U),Q.slice($),B))return this.de } } } - }`});try{let Y=(await Q.next()).value?.data?.userById;if(!Y)return n.warning(`PlatformGateway.getPlayerCosmetics(): No cosmetic data returned for user id "${A}".`);let J=Y.equippedItems?Y.equippedItems.map((F)=>({slot:F.slot,item:F.itemInstance.item.slots.find((W)=>W.type===F.slot)})).filter((F)=>!!F.item):[],C=Y.characterSettings?.hair?.modelUrl,X=Y.characterSettings?.hair?.textureUrl,G=`https://d3qkovarww0lj1.cloudfront.net/?skin_tone=${Y.characterSettings?.skinTone||"SKIN_COLOR_1"}&clothing=${Y.characterSettings?.clothing||"CLOTHING_1"}&hair_style=${Y.characterSettings?.hairStyle||"HAIR_STYLE_1"}&hair_color=${Y.characterSettings?.hairColor||"HAIR_COLOR_1"}&eye_color=${Y.characterSettings?.eyeColor||"00FF00"}`;return{equippedItems:J,hairModelUri:C,hairTextureUri:X,skinTextureUri:G}}finally{await Q.return?.()}}async getPlayerSession(A){if(!this._creativeGateway)return;return await this._creativeGateway.getSession(A)}async scheduleNotification(A,Q,B){if(!ww)return n.warning("PlatformGateway.scheduleNotification(): HYTOPIA_NOTIFICATION_SERVICE_URL is not set. Unable to schedule notification.");if(!this.gameId||!this.creatorApiKey)return n.warning("PlatformGateway.scheduleNotification(): HYTOPIA_GAME_ID or HYTOPIA_API_KEY is not set. Unable to schedule notification.");if(BsetTimeout(J,500))}n.warning(`PersistenceManager.getGlobalData(): Failed to get global data after ${Q} attempts.`);return}async getPlayerData(A){let Q=await this._saveStatesClient.load(this._getPlayerKey(A));if(!Q)return n.warning(`PersistenceManager.getPlayerData(): Failed to get player data for player ${A.id}. Persistence service may be down.`),{};return Q}async setGlobalData(A,Q){let B=await D5.instance.setGlobalData(A,Q);if(!B||B.error){if(B?.error)n.warning(`PersistenceManager.setGlobalData(): ${B.error.message}`)}}async setPlayerData(A,Q){let B=await this.getPlayerData(A);for(let[Y,J]of Object.entries(Q))B[Y]=J}async unloadPlayerData(A){await this._saveStatesClient.unload(this._getPlayerKey(A))}_getPlayerKey(A){return`player-${A.id}`}}var Im;((Y)=>{Y[Y.FIRST_PERSON=0]="FIRST_PERSON";Y[Y.THIRD_PERSON=1]="THIRD_PERSON";Y[Y.SPECTATOR=2]="SPECTATOR"})(Im||={});var Hm;((L)=>{L.FACE_ENTITY="PLAYER_CAMERA.FACE_ENTITY";L.FACE_POSITION="PLAYER_CAMERA.FACE_POSITION";L.SET_ATTACHED_TO_ENTITY="PLAYER_CAMERA.SET_ATTACHED_TO_ENTITY";L.SET_ATTACHED_TO_POSITION="PLAYER_CAMERA.SET_ATTACHED_TO_POSITION";L.SET_COLLIDES_WITH_BLOCKS="PLAYER_CAMERA.SET_COLLIDES_WITH_BLOCKS";L.SET_FILM_OFFSET="PLAYER_CAMERA.SET_FILM_OFFSET";L.SET_FORWARD_OFFSET="PLAYER_CAMERA.SET_FORWARD_OFFSET";L.SET_FOV="PLAYER_CAMERA.SET_FOV";L.SET_MODE="PLAYER_CAMERA.SET_MODE";L.SET_OFFSET="PLAYER_CAMERA.SET_OFFSET";L.SET_SHOULDER_ANGLE="PLAYER_CAMERA.SET_SHOULDER_ANGLE";L.SET_TARGET_ENTITY="PLAYER_CAMERA.SET_TARGET_ENTITY";L.SET_TARGET_POSITION="PLAYER_CAMERA.SET_TARGET_POSITION";L.SET_VIEW_MODEL="PLAYER_CAMERA.SET_VIEW_MODEL";L.SET_VIEW_MODEL_HIDDEN_NODES="PLAYER_CAMERA.SET_VIEW_MODEL_HIDDEN_NODES";L.SET_VIEW_MODEL_PITCHES_WITH_CAMERA="PLAYER_CAMERA.SET_VIEW_MODEL_PITCHES_WITH_CAMERA";L.SET_VIEW_MODEL_SHOWN_NODES="PLAYER_CAMERA.SET_VIEW_MODEL_SHOWN_NODES";L.SET_VIEW_MODEL_YAWS_WITH_CAMERA="PLAYER_CAMERA.SET_VIEW_MODEL_YAWS_WITH_CAMERA";L.SET_ZOOM="PLAYER_CAMERA.SET_ZOOM"})(Hm||={});class SD extends FQ{player;_attachedToEntity;_attachedToPosition;_collidesWithBlocks=!0;_filmOffset=0;_forwardOffset=0;_fov=75;_mode=1;_offset={x:0,y:0,z:0};_orientation={pitch:0,yaw:0};_shoulderAngle=0;_targetEntity;_targetPosition;_viewModelUri;_viewModelHiddenNodes=new Set;_viewModelPitchesWithCamera=!1;_viewModelShownNodes=new Set;_viewModelYawsWithCamera=!1;_zoom=1;constructor(A){super();this.player=A}get attachedToEntity(){return this._attachedToEntity}get attachedToPosition(){return this._attachedToPosition}get collidesWithBlocks(){return this._collidesWithBlocks}get facingDirection(){return{x:-Math.sin(this._orientation.yaw)*Math.cos(this._orientation.pitch),y:Math.sin(this._orientation.pitch),z:-Math.cos(this._orientation.yaw)*Math.cos(this._orientation.pitch)}}get facingQuaternion(){let A=this._orientation.pitch*0.5,Q=this._orientation.yaw*0.5,B=Math.cos(A),Y=Math.sin(A),J=Math.cos(Q),C=Math.sin(Q);return{x:Y*J,y:B*C,z:-Y*C,w:B*J}}get filmOffset(){return this._filmOffset}get forwardOffset(){return this._forwardOffset}get fov(){return this._fov}get modelHiddenNodes(){return this._viewModelHiddenNodes}get modelShownNodes(){return this._viewModelShownNodes}get mode(){return this._mode}get offset(){return this._offset}get orientation(){return this._orientation}get shoulderAngle(){return this._shoulderAngle}get targetEntity(){return this._targetEntity}get targetPosition(){return this._targetPosition}get viewModelUri(){return this._viewModelUri??this._attachedToEntity?.modelUri}get viewModelHiddenNodes(){return this._viewModelHiddenNodes}get viewModelPitchesWithCamera(){return this._viewModelPitchesWithCamera}get viewModelShownNodes(){return this._viewModelShownNodes}get viewModelYawsWithCamera(){return this._viewModelYawsWithCamera}get zoom(){return this._zoom}faceEntity(A){if(!this._requirePlayerWorld("faceEntity"))return;this._targetEntity=void 0,this._targetPosition=void 0,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.FACE_ENTITY",{playerCamera:this,entity:A})}facePosition(A){if(!this._requirePlayerWorld("facePosition"))return;this._targetEntity=void 0,this._targetPosition=void 0,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.FACE_POSITION",{playerCamera:this,position:A})}reset(){this._attachedToEntity=void 0,this._attachedToPosition=void 0,this._orientation={pitch:0,yaw:0},this._targetEntity=void 0,this._targetPosition=void 0}setAttachedToEntity(A){if(!this._requirePlayerWorld("setAttachedToEntity"))return;if(!A.isSpawned)return n.error(`PlayerCamera.setAttachedToEntity(): Entity ${A.id} is not spawned!`);if(this._targetEntity===A)return n.error(`PlayerCamera.setAttachedToEntity(): Entity ${A.id} is already set as the target. Attachment and target cannot be the same!`);this._attachedToEntity=A,this._attachedToPosition=void 0,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_ATTACHED_TO_ENTITY",{playerCamera:this,entity:A})}setAttachedToPosition(A){if(!this._requirePlayerWorld("setAttachedToPosition"))return;if(A&&this._targetPosition?.x===A.x&&this._targetPosition?.y===A.y&&this._targetPosition?.z===A.z)return n.error(`PlayerCamera.setAttachedToPosition(): Position ${A.x}, ${A.y}, ${A.z} is already set as the target. Attachment and target cannot be the same!`);this._attachedToPosition=A,this._attachedToEntity=void 0,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_ATTACHED_TO_POSITION",{playerCamera:this,position:A})}setCollidesWithBlocks(A){if(!this._requirePlayerWorld("setCollidesWithBlocks"))return;this._collidesWithBlocks=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_COLLIDES_WITH_BLOCKS",{playerCamera:this,collidesWithBlocks:A})}setFilmOffset(A){if(!this._requirePlayerWorld("setFilmOffset"))return;this._filmOffset=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_FILM_OFFSET",{playerCamera:this,filmOffset:A})}setForwardOffset(A){if(!this._requirePlayerWorld("setForwardOffset"))return;this._forwardOffset=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_FORWARD_OFFSET",{playerCamera:this,forwardOffset:A})}setFov(A){if(!this._requirePlayerWorld("setFov"))return;this._fov=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_FOV",{playerCamera:this,fov:A})}setMode(A){if(!this._requirePlayerWorld("setMode"))return;this._mode=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_MODE",{playerCamera:this,mode:A})}setOffset(A){if(!this._requirePlayerWorld("setOffset"))return;this._offset=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_OFFSET",{playerCamera:this,offset:A})}setOrientationPitch(A){this._orientation.pitch=A}setOrientationYaw(A){this._orientation.yaw=A}setShoulderAngle(A){if(!this._requirePlayerWorld("setShoulderAngle"))return;this._shoulderAngle=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_SHOULDER_ANGLE",{playerCamera:this,shoulderAngle:A})}setTargetEntity(A){if(!this._requirePlayerWorld("setTargetEntity"))return;if(A&&this._attachedToEntity===A)return n.error(`PlayerCamera.setTargetEntity(): Entity ${A.id} is already set as the attachment. Attachment and target cannot be the same!`);if(this._targetEntity=A,A)this._targetPosition=void 0;this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_TARGET_ENTITY",{playerCamera:this,entity:A})}setTargetPosition(A){if(!this._requirePlayerWorld("setTargetPosition"))return;if(A&&this._attachedToPosition?.x===A.x&&this._attachedToPosition?.y===A.y&&this._attachedToPosition?.z===A.z)return n.error(`PlayerCamera.setTargetPosition(): Position ${A.x}, ${A.y}, ${A.z} is already set as the attachment. Attachment and target cannot be the same!`);if(this._targetPosition=A,A)this._targetEntity=void 0;this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_TARGET_POSITION",{playerCamera:this,position:A})}setViewModel(A){if(!this._requirePlayerWorld("setViewModel"))return;if(!this._attachedToEntity)return n.error("PlayerCamera.setViewModel(): Camera is not attached to an entity, cannot set view model! Use camera.setAttachedToEntity() first.");this._viewModelUri=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_VIEW_MODEL",{playerCamera:this,viewModelUri:A})}setViewModelHiddenNodes(A){if(!this._requirePlayerWorld("setViewModelHiddenNodes"))return;this._viewModelHiddenNodes=new Set(A.map((Q)=>Q.toLowerCase())),this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_VIEW_MODEL_HIDDEN_NODES",{playerCamera:this,viewModelHiddenNodes:this._viewModelHiddenNodes})}setViewModelPitchesWithCamera(A){if(!this._requirePlayerWorld("setViewModelPitchesWithCamera"))return;this._viewModelPitchesWithCamera=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_VIEW_MODEL_PITCHES_WITH_CAMERA",{playerCamera:this,viewModelPitchesWithCamera:A})}setViewModelShownNodes(A){if(!this._requirePlayerWorld("setViewModelShownNodes"))return;this._viewModelShownNodes=new Set(A.map((Q)=>Q.toLowerCase())),this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_VIEW_MODEL_SHOWN_NODES",{playerCamera:this,viewModelShownNodes:this._viewModelShownNodes})}setViewModelYawsWithCamera(A){if(!this._requirePlayerWorld("setViewModelYawsWithCamera"))return;this._viewModelYawsWithCamera=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_VIEW_MODEL_YAWS_WITH_CAMERA",{playerCamera:this,viewModelYawsWithCamera:A})}setZoom(A){if(!this._requirePlayerWorld("setZoom"))return;this._zoom=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_ZOOM",{playerCamera:this,zoom:A})}serialize(){return CQ.serializePlayerCamera(this)}_requirePlayerWorld(A){if(!this.player.world)n.error(`PlayerCamera._requirePlayerWorld(): Player ${this.player.id} is not in a world, invoked method: ${A}()`);return!!this.player.world}}var jw;((X)=>{X.APPEND="PLAYER_UI.APPEND";X.DATA="PLAYER_UI.DATA";X.FREEZE_POINTER_LOCK="PLAYER_UI.FREEZE_POINTER_LOCK";X.LOAD="PLAYER_UI.LOAD";X.LOCK_POINTER="PLAYER_UI.LOCK_POINTER";X.SEND_DATA="PLAYER_UI.SEND_DATA"})(jw||={});class kD extends FQ{player;constructor(A){super();this.player=A}append(A){if(!this.player.world)return;this.emitWithWorld(this.player.world,"PLAYER_UI.APPEND",{playerUI:this,htmlUri:A})}freezePointerLock(A){if(!this.player.world)return;this.emitWithWorld(this.player.world,"PLAYER_UI.FREEZE_POINTER_LOCK",{playerUI:this,freeze:A})}load(A){if(!this.player.world)return;this.emitWithWorld(this.player.world,"PLAYER_UI.LOAD",{playerUI:this,htmlUri:A})}lockPointer(A){if(!this.player.world)return;this.emitWithWorld(this.player.world,"PLAYER_UI.LOCK_POINTER",{playerUI:this,lock:A})}sendData(A){if(!this.player.world)return;this.emitWithWorld(this.player.world,"PLAYER_UI.SEND_DATA",{playerUI:this,data:A})}}var O7B=["w","a","s","d","sp","sh","tb","ml","mr","q","e","r","f","z","x","c","v","u","i","o","j","k","l","n","m","1","2","3","4","5","6","7","8","9","0","cp","cy","iro","ird","jd"],_D;((G)=>{G.CHAT_MESSAGE_SEND="PLAYER.CHAT_MESSAGE_SEND";G.INTERACT="PLAYER.INTERACT";G.JOINED_WORLD="PLAYER.JOINED_WORLD";G.LEFT_WORLD="PLAYER.LEFT_WORLD";G.RECONNECTED_WORLD="PLAYER.RECONNECTED_WORLD";G.REQUEST_NOTIFICATION_PERMISSION="PLAYER.REQUEST_NOTIFICATION_PERMISSION";G.REQUEST_SYNC="PLAYER.REQUEST_SYNC"})(_D||={});class KE extends FQ{static _devNextPlayerId=1;id;username;profilePictureUrl;camera;connection;cosmetics;ui;_input={};_interactEnabled=!0;_lastUnreliableInputSequenceNumber=0;_maxInteractDistance=20;_persistedData;_world;_worldSwitched=!1;constructor(A,Q){super();this.id=Q?.user.id??`player-${KE._devNextPlayerId++}`,this.username=Q?.user.username??this.id,this.profilePictureUrl=Q?.user.profilePictureURL??void 0,this.camera=new SD(this),this.connection=A,this.cosmetics=D5.instance.getPlayerCosmetics(this.id),this.ui=new kD(this),A.onPacket(gQ.PacketId.CHAT_MESSAGE_SEND,this._onChatMessageSendPacket),A.onPacket(gQ.PacketId.DEBUG_CONFIG,this._onDebugConfigPacket),A.onPacket(gQ.PacketId.INPUT,this._onInputPacket),A.onPacket(gQ.PacketId.SYNC_REQUEST,this._onSyncRequestPacket),A.onPacket(gQ.PacketId.UI_DATA_SEND,this._onUIDataSendPacket)}get input(){return this._input}get isInteractEnabled(){return this._interactEnabled}get maxInteractDistance(){return this._maxInteractDistance}get world(){return this._world}disconnect(){this._leaveWorld(),this.connection.disconnect()}getPersistedData(){if(!this._persistedData)return;let A=Object.keys(this._persistedData);if(A.length===0||A.length===1&&A[0]==="__version")return;return this._persistedData}joinWorld(A){if(this._world===A)return;if(!this._world)this._world=A,this.emitWithWorld(this._world,"PLAYER.JOINED_WORLD",{player:this,world:this._world});else{for(let Q of this._world.entityManager.getPlayerEntitiesByPlayer(this))if(Q.isSpawned)Q.despawn();this.disconnect(),this._world=A,this._worldSwitched=!0}}async scheduleNotification(A,Q){if(!this._world)return n.warning("Player.scheduleNotification(): Player must be in a world to schedule a notification.");return this.emitWithWorld(this._world,"PLAYER.REQUEST_NOTIFICATION_PERMISSION",{player:this}),D5.instance.scheduleNotification(this.id,A,Q)}async unscheduleNotification(A){if(!A)return!1;return D5.instance.unscheduleNotification(A)}async loadInitialPersistedData(){if(this._persistedData)return;this._persistedData=await b7.instance.getPlayerData(this)}reconnected(){if(!this._world)return;if(this._lastUnreliableInputSequenceNumber=0,!this._worldSwitched)this.emitWithWorld(this._world,"PLAYER.RECONNECTED_WORLD",{player:this,world:this._world});else this._worldSwitched=!1,this.emitWithWorld(this._world,"PLAYER.JOINED_WORLD",{player:this,world:this._world})}resetInputs(){this._input={}}setInteractEnabled(A){this._interactEnabled=A}setMaxInteractDistance(A){this._maxInteractDistance=A}setPersistedData(A){if(!this._persistedData){n.warning(`Player.setPersistedData(): Persisted data not found for player ${this.id}`);return}for(let[Q,B]of Object.entries(A))this._persistedData[Q]=B}serialize(){return CQ.serializePlayer(this)}_leaveWorld(){if(!this._world)return;this.emitWithWorld(this._world,"PLAYER.LEFT_WORLD",{player:this,world:this._world}),this._world=void 0}_onChatMessageSendPacket=(A)=>{if(!this._world)return;let Q=A[1].m;if(this._world.chatManager.handleCommand(this,Q)){this._world.chatManager.sendPlayerMessage(this,`Command Entered: ${Q}`,"CCCCCC");return}this.emitWithWorld(this._world,"PLAYER.CHAT_MESSAGE_SEND",{player:this,message:Q})};_onDebugConfigPacket=(A)=>{console.log(A)};_onInputPacket=(A)=>{let Q=A[1];if(Q.sq!==void 0){if(Q.sq{if(!this.world||!this._input.ird||!this._input.iro)return;if(this._interactEnabled){let A={x:this._input.iro[0],y:this._input.iro[1],z:this._input.iro[2]},Q={x:this._input.ird[0],y:this._input.ird[1],z:this._input.ird[2]},B=this.world.entityManager.getPlayerEntitiesByPlayer(this)[0],Y=this.world.simulation.raycast(A,Q,this._maxInteractDistance,{filterExcludeRigidBody:B?.rawRigidBody,filterFlags:WB.QueryFilterFlags.EXCLUDE_SENSORS});if(this.emitWithWorld(this.world,"PLAYER.INTERACT",{player:this,interactOrigin:A,interactDirection:Q,raycastHit:Y}),Y?.hitEntity)Y.hitEntity.interact(this,Y);if(Y?.hitBlock)Y.hitBlock.blockType.interact(this,Y)}};_onSyncRequestPacket=()=>{if(this._world)this.emitWithWorld(this._world,"PLAYER.REQUEST_SYNC",{player:this,receivedAt:Date.now(),receivedAtMs:performance.now()})};_onUIDataSendPacket=(A)=>{this.ui.emit("PLAYER_UI.DATA",{playerUI:this.ui,data:A[1]})}}var Dm;((B)=>{B.BROADCAST_MESSAGE="CHAT.BROADCAST_MESSAGE";B.PLAYER_MESSAGE="CHAT.PLAYER_MESSAGE"})(Dm||={});class vD extends FQ{_commandCallbacks={};_world;constructor(A){super();this._world=A,this._subscribeToPlayerEvents()}registerCommand(A,Q){this._commandCallbacks[A]=Q}unregisterCommand(A){delete this._commandCallbacks[A]}sendBroadcastMessage(A,Q){this._sendBroadcastMessage(void 0,A,Q)}handleCommand(A,Q){let[B,...Y]=Q.split(" "),J=this._commandCallbacks[B];if(J)return J(A,Y,Q),!0;return!1}sendPlayerMessage(A,Q,B){this.emitWithWorld(this._world,"CHAT.PLAYER_MESSAGE",{player:A,message:Q,color:B})}_subscribeToPlayerEvents(){this._world.on("PLAYER.CHAT_MESSAGE_SEND",(A)=>{let{player:Q,message:B}=A;this._sendBroadcastMessage(Q,B)})}_sendBroadcastMessage(A,Q,B){this.emitWithWorld(this._world,"CHAT.BROADCAST_MESSAGE",{player:A,message:Q,color:B})}}var g9=16,VE=g9-1,Nm=g9**3,IE=255;class B9{_blocks;_blockRotations=new Map;_originCoordinate;constructor(A){this._blocks=new Uint8Array(Nm),this._originCoordinate=A}get blocks(){return this._blocks}get blockRotations(){return this._blockRotations}get originCoordinate(){return this._originCoordinate}static blockIndexToLocalCoordinate(A){return{x:A&VE,y:A>>4&VE,z:A>>8&VE}}static localCoordinateToBlockIndex(A){return A.x+(A.y<<4)+(A.z<<8)}static globalCoordinateToLocalCoordinate(A){let Q=Math.trunc(A.x),B=Math.trunc(A.y),Y=Math.trunc(A.z),J=Q%g9,C=B%g9,X=Y%g9;return{x:J<0?J+g9:J,y:C<0?C+g9:C,z:X<0?X+g9:X}}static globalCoordinateToOriginCoordinate(A){let Q=Math.trunc(A.x),B=Math.trunc(A.y),Y=Math.trunc(A.z),J=Q%g9,C=B%g9,X=Y%g9,G=J<0?J+g9:J,F=C<0?C+g9:C,W=X<0?X+g9:X;return{x:Q-G,y:B-F,z:Y-W}}getBlockId(A){return this._blocks[this._getIndex(A)]}getBlockRotation(A){return this._blockRotations.get(this._getIndex(A))??yX.Y_0}hasBlock(A){return this._blocks[this._getIndex(A)]!==0}setBlock(A,Q,B){if(!this._isValidLocalCoordinate(A))return n.error("Chunk.setBlock(): Block local coordinate is out of bounds");if(!Number.isInteger(Q)||Q<0||Q>IE)return n.error(`Chunk.setBlock(): Block type id ${Q} is out of bounds (expected 0-${IE}).`);let Y=this._getIndex(A);if(this._blocks[Y]=Q,this._blockRotations.delete(Y),B&&B!==yX.Y_0)this._blockRotations.set(Y,B)}serialize(){return CQ.serializeChunk(this)}_getIndex(A){return B9.localCoordinateToBlockIndex(A)}_isValidLocalCoordinate(A){return A.x>=0&&A.x<=VE&&A.y>=0&&A.y<=VE&&A.z>=0&&A.z<=VE}}var P7B=32,T7B=Nm/P7B,yD=54,S7B=BigInt(yD),k7B=BigInt(yD*2),Lm;((Y)=>{Y.ADD_CHUNK="CHUNK_LATTICE.ADD_CHUNK";Y.REMOVE_CHUNK="CHUNK_LATTICE.REMOVE_CHUNK";Y.SET_BLOCK="CHUNK_LATTICE.SET_BLOCK"})(Lm||={});class gD extends FQ{_blockTypeColliders=new Map;_blockTypeChunkMasks=new Map;_blockTypeCounts=new Map;_chunks=new Map;_rigidBody;_world;constructor(A){super();this._world=A}get chunkCount(){return this._chunks.size}clear(){for(let A of this._blockTypeColliders.values())A.removeFromSimulation();this._chunks.forEach((A)=>{this.emitWithWorld(this._world,"CHUNK_LATTICE.REMOVE_CHUNK",{chunkLattice:this,chunk:A})}),this._blockTypeColliders.clear(),this._blockTypeChunkMasks.clear(),this._blockTypeCounts.clear(),this._chunks.clear()}getBlockId(A){let Q=this.getChunk(A);if(!Q)return 0;return Q.getBlockId(B9.globalCoordinateToLocalCoordinate(A))}getBlockTypeCollider(A){return this._blockTypeColliders.get(A)}getBlockType(A){let Q=this.getBlockId(A);return Q?this._world.blockTypeRegistry.getBlockType(Q):null}getBlockTypeCount(A){if(!this._isValidBlockTypeId(A))return 0;return this._blockTypeCounts.get(A)??0}getChunk(A){return this._chunks.get(this._getChunkKey(A))}getOrCreateBlockTypeCollider(A,Q){let B=this._blockTypeColliders.get(A);if(B)return B;let J=this._world.blockTypeRegistry.getBlockType(A).createCollider(Q);return this._blockTypeColliders.set(A,J),J}getOrCreateChunk(A){let Q=B9.globalCoordinateToOriginCoordinate(A),B=this._packCoordinate(Q),Y=this._chunks.get(B);if(Y)return Y;return Y=new B9(Q),this._chunks.set(B,Y),this.emitWithWorld(this._world,"CHUNK_LATTICE.ADD_CHUNK",{chunkLattice:this,chunk:Y}),Y}getAllChunks(){return Array.from(this._chunks.values())}hasBlock(A){let Q=this.getChunk(A);if(!Q)return!1;return Q.hasBlock(B9.globalCoordinateToLocalCoordinate(A))}hasChunk(A){return this._chunks.has(this._getChunkKey(A))}initializeBlocks(A){let Q=function*(){for(let B in A){let Y=Number(B),J=A[Y];for(let C=0;C>>0;if(G===0)continue;let F=G;while(F!==0){let W=F&-F,Z=31-Math.clz32(W),U=(X<<5)+Z,$=B9.blockIndexToLocalCoordinate(U),E=C.getBlockRotation($);Q.push({globalCoordinate:{x:C.originCoordinate.x+$.x,y:C.originCoordinate.y+$.y,z:C.originCoordinate.z+$.z},blockRotation:E===yX.Y_0?void 0:E}),F=(F&F-1)>>>0}}}return Q}_isChunkMaskEmpty(A){for(let Q=0;Q=0&&A<=IE;if(!Q)n.error(`ChunkLattice._isValidBlockTypeId(): Block type id ${A} is out of bounds (expected 0-${IE}).`);return Q}_setBlockTypePlacement(A,Q,B){let Y=this._blockTypeChunkMasks.get(A);if(!Y){if(!B)return;Y=new Map,this._blockTypeChunkMasks.set(A,Y)}let J=this._getChunkKey(Q),C=B9.globalCoordinateToLocalCoordinate(Q),X=B9.localCoordinateToBlockIndex(C),G=X>>>5,F=1<<(X&31)>>>0,W=Y.get(J);if(!W){if(!B)return;W=new Uint32Array(T7B),Y.set(J,W)}let Z=(W[G]&F)!==0;if(B){if(Z)return;W[G]|=F,this._blockTypeCounts.set(A,(this._blockTypeCounts.get(A)??0)+1);return}if(!Z)return;W[G]&=~F;let U=Math.max(0,(this._blockTypeCounts.get(A)??0)-1);if(U>0)this._blockTypeCounts.set(A,U);else this._blockTypeCounts.delete(A),this._blockTypeChunkMasks.delete(A);if(this._blockTypeChunkMasks.has(A)&&this._isChunkMaskEmpty(W))Y.delete(J)}}class hD{_colliderHandleBlockTypeMap=new Map;_colliderHandleCollisionCallbackMap=new Map;_colliderHandleEntityMap=new Map;_cleanupBlockTypeColliderHandles=new Set;_pendingCleanupBlockTypeColliderHandles=new Set;_cleanupCollisionCallbackColliderHandles=new Set;_pendingCleanupCollisionCallbackColliderHandles=new Set;_cleanupEntityColliderHandles=new Set;_pendingCleanupEntityColliderHandles=new Set;getColliderBlockType(A){if(!this._requireSimulatedCollider(A))return;return this._colliderHandleBlockTypeMap.get(A.rawCollider.handle)}getColliderCollisionCallback(A){if(!this._requireSimulatedCollider(A))return;return this._colliderHandleCollisionCallbackMap.get(A.rawCollider.handle)}getColliderEntity(A){if(!this._requireSimulatedCollider(A))return;return this._colliderHandleEntityMap.get(A.rawCollider.handle)}getColliderHandleBlockType(A){return this._colliderHandleBlockTypeMap.get(A)}getColliderHandleCollisionCallback(A){return this._colliderHandleCollisionCallbackMap.get(A)}getColliderHandleEntity(A){return this._colliderHandleEntityMap.get(A)}removeColliderBlockType(A){if(!this._requireSimulatedCollider(A))return;this.removeColliderHandleBlockType(A.rawCollider.handle)}removeColliderCollisionCallback(A){if(!this._requireSimulatedCollider(A))return;this.removeColliderHandleCollisionCallback(A.rawCollider.handle)}removeColliderEntity(A){if(!this._requireSimulatedCollider(A))return;this.removeColliderHandleEntity(A.rawCollider.handle)}removeColliderHandleBlockType(A){this._colliderHandleBlockTypeMap.delete(A)}removeColliderHandleCollisionCallback(A){this._colliderHandleCollisionCallbackMap.delete(A)}removeColliderHandleEntity(A){this._colliderHandleEntityMap.delete(A)}setColliderBlockType(A,Q){if(!this._requireSimulatedCollider(A))return;this.setColliderHandleBlockType(A.rawCollider.handle,Q)}setColliderCollisionCallback(A,Q){if(!this._requireSimulatedCollider(A))return;this.setColliderHandleCollisionCallback(A.rawCollider.handle,Q)}setColliderEntity(A,Q){if(!this._requireSimulatedCollider(A))return;this.setColliderHandleEntity(A.rawCollider.handle,Q)}setColliderHandleBlockType(A,Q){this._colliderHandleBlockTypeMap.set(A,Q),this._cleanupBlockTypeColliderHandles.delete(A),this._pendingCleanupBlockTypeColliderHandles.delete(A)}setColliderHandleCollisionCallback(A,Q){this._colliderHandleCollisionCallbackMap.set(A,Q),this._cleanupCollisionCallbackColliderHandles.delete(A),this._pendingCleanupCollisionCallbackColliderHandles.delete(A)}setColliderHandleEntity(A,Q){this._colliderHandleEntityMap.set(A,Q),this._cleanupEntityColliderHandles.delete(A),this._pendingCleanupEntityColliderHandles.delete(A)}queueColliderHandleForCleanup(A){if(this._colliderHandleBlockTypeMap.has(A))this._pendingCleanupBlockTypeColliderHandles.add(A);if(this._colliderHandleCollisionCallbackMap.has(A))this._pendingCleanupCollisionCallbackColliderHandles.add(A);if(this._colliderHandleEntityMap.has(A))this._pendingCleanupEntityColliderHandles.add(A)}cleanup(){for(let A of this._cleanupBlockTypeColliderHandles)this._colliderHandleBlockTypeMap.delete(A);if(this._cleanupBlockTypeColliderHandles.size>0)this._cleanupBlockTypeColliderHandles.clear();for(let A of this._cleanupCollisionCallbackColliderHandles)this._colliderHandleCollisionCallbackMap.delete(A);if(this._cleanupCollisionCallbackColliderHandles.size>0)this._cleanupCollisionCallbackColliderHandles.clear();for(let A of this._cleanupEntityColliderHandles)this._colliderHandleEntityMap.delete(A);if(this._cleanupEntityColliderHandles.size>0)this._cleanupEntityColliderHandles.clear();for(let A of this._pendingCleanupBlockTypeColliderHandles)this._cleanupBlockTypeColliderHandles.add(A);if(this._pendingCleanupBlockTypeColliderHandles.size>0)this._pendingCleanupBlockTypeColliderHandles.clear();for(let A of this._pendingCleanupCollisionCallbackColliderHandles)this._cleanupCollisionCallbackColliderHandles.add(A);if(this._pendingCleanupCollisionCallbackColliderHandles.size>0)this._pendingCleanupCollisionCallbackColliderHandles.clear();for(let A of this._pendingCleanupEntityColliderHandles)this._cleanupEntityColliderHandles.add(A);if(this._pendingCleanupEntityColliderHandles.size>0)this._pendingCleanupEntityColliderHandles.clear()}_requireSimulatedCollider(A){if(!A.rawCollider)n.error("ColliderMap._requireSimulatedCollider(): Collider is not in the simulation.");return!!A.rawCollider}}var qm;((W)=>{W.SET_EMISSIVE_COLOR="ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_COLOR";W.SET_EMISSIVE_INTENSITY="ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_INTENSITY";W.SET_HIDDEN="ENTITY_MODEL_NODE_OVERRIDE.SET_HIDDEN";W.SET_LOCAL_POSITION="ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION";W.SET_LOCAL_POSITION_INTERPOLATION_MS="ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION_INTERPOLATION_MS";W.SET_LOCAL_ROTATION="ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION";W.SET_LOCAL_ROTATION_INTERPOLATION_MS="ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION_INTERPOLATION_MS";W.SET_LOCAL_SCALE="ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE";W.SET_LOCAL_SCALE_INTERPOLATION_MS="ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE_INTERPOLATION_MS"})(qm||={});class HE{_nameMatch;_entity;_emissiveColor;_emissiveIntensity;_hidden=!1;_isRemoved=!1;_localPosition;_localPositionInterpolationMs;_localRotation;_localRotationInterpolationMs;_localScale;_localScaleInterpolationMs;constructor(A){this._nameMatch=A.nameMatch.toLowerCase(),this._entity=A.entity,this._emissiveColor=A.emissiveColor,this._emissiveIntensity=A.emissiveIntensity,this._hidden=A.hidden??this._hidden,this._localPosition=A.localPosition,this._localPositionInterpolationMs=A.localPositionInterpolationMs,this._localRotation=A.localRotation,this._localRotationInterpolationMs=A.localRotationInterpolationMs,this._localScale=typeof A.localScale==="number"?{x:A.localScale,y:A.localScale,z:A.localScale}:A.localScale,this._localScaleInterpolationMs=A.localScaleInterpolationMs}get nameMatch(){return this._nameMatch}get name(){return this._nameMatch}get entity(){return this._entity}get emissiveColor(){return this._emissiveColor}get emissiveIntensity(){return this._emissiveIntensity}get isHidden(){return this._hidden}get localPosition(){return this._localPosition}get localPositionInterpolationMs(){return this._localPositionInterpolationMs}get localRotation(){return this._localRotation}get localRotationInterpolationMs(){return this._localRotationInterpolationMs}get localScale(){return this._localScale}get localScaleInterpolationMs(){return this._localScaleInterpolationMs}remove(){this._entity.removeModelNodeOverride(this.nameMatch)}setEmissiveColor(A){if(this._isRemoved)return;if(!A&&!this._emissiveColor||A&&this._emissiveColor&&A.r===this._emissiveColor.r&&A.g===this._emissiveColor.g&&A.b===this._emissiveColor.b)return;if(this._emissiveColor=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_COLOR",{entityModelNodeOverride:this,emissiveColor:A})}setEmissiveIntensity(A){if(this._isRemoved)return;if(this._emissiveIntensity===A)return;if(this._emissiveIntensity=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_INTENSITY",{entityModelNodeOverride:this,emissiveIntensity:A})}setHidden(A){if(this._isRemoved)return;if(this._hidden===A)return;if(this._hidden=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_HIDDEN",{entityModelNodeOverride:this,hidden:A})}setLocalPosition(A){if(this._isRemoved)return;if(A===this._localPosition)return;if(A&&this._localPosition&&this._localPosition.x===A.x&&this._localPosition.y===A.y&&this._localPosition.z===A.z)return;if(this._localPosition=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION",{entityModelNodeOverride:this,localPosition:A})}setLocalPositionInterpolationMs(A){if(this._isRemoved)return;if(A===this._localPositionInterpolationMs)return;if(this._localPositionInterpolationMs=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION_INTERPOLATION_MS",{entityModelNodeOverride:this,interpolationMs:A})}setLocalRotation(A){if(this._isRemoved)return;if(A===this._localRotation)return;if(A&&this._localRotation&&this._localRotation.x===A.x&&this._localRotation.y===A.y&&this._localRotation.z===A.z&&this._localRotation.w===A.w)return;if(this._localRotation=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION",{entityModelNodeOverride:this,localRotation:A})}setLocalRotationInterpolationMs(A){if(this._isRemoved)return;if(A===this._localRotationInterpolationMs)return;if(this._localRotationInterpolationMs=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION_INTERPOLATION_MS",{entityModelNodeOverride:this,interpolationMs:A})}setLocalScale(A){if(this._isRemoved)return;if(A===this._localScale)return;if(typeof A==="number")A={x:A,y:A,z:A};if(A&&this._localScale&&this._localScale.x===A.x&&this._localScale.y===A.y&&this._localScale.z===A.z)return;if(this._localScale=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE",{entityModelNodeOverride:this,localScale:A})}setLocalScaleInterpolationMs(A){if(this._isRemoved)return;if(A===this._localScaleInterpolationMs)return;if(this._localScaleInterpolationMs=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE_INTERPOLATION_MS",{entityModelNodeOverride:this,interpolationMs:A})}serialize(){return CQ.serializeEntityModelNodeOverride(this)}markRemoved(){this._isRemoved=!0}}var _VA={type:"dynamic",softCcdPrediction:1},vVA=0.0016,yVA=Math.cos(0.026),xD;((q)=>{q.BLOCK_COLLISION="ENTITY.BLOCK_COLLISION";q.BLOCK_CONTACT_FORCE="ENTITY.BLOCK_CONTACT_FORCE";q.DESPAWN="ENTITY.DESPAWN";q.ENTITY_COLLISION="ENTITY.ENTITY_COLLISION";q.ENTITY_CONTACT_FORCE="ENTITY.ENTITY_CONTACT_FORCE";q.INTERACT="ENTITY.INTERACT";q.REMOVE_MODEL_NODE_OVERRIDE="ENTITY.REMOVE_MODEL_NODE_OVERRIDE";q.SET_BLOCK_TEXTURE_URI="ENTITY.SET_BLOCK_TEXTURE_URI";q.SET_EMISSIVE_COLOR="ENTITY.SET_EMISSIVE_COLOR";q.SET_EMISSIVE_INTENSITY="ENTITY.SET_EMISSIVE_INTENSITY";q.SET_MODEL_SCALE="ENTITY.SET_MODEL_SCALE";q.SET_MODEL_SCALE_INTERPOLATION_MS="ENTITY.SET_MODEL_SCALE_INTERPOLATION_MS";q.SET_MODEL_TEXTURE_URI="ENTITY.SET_MODEL_TEXTURE_URI";q.SET_OPACITY="ENTITY.SET_OPACITY";q.SET_OUTLINE="ENTITY.SET_OUTLINE";q.SET_PARENT="ENTITY.SET_PARENT";q.SET_POSITION_INTERPOLATION_MS="ENTITY.SET_POSITION_INTERPOLATION_MS";q.SET_ROTATION_INTERPOLATION_MS="ENTITY.SET_ROTATION_INTERPOLATION_MS";q.SET_TINT_COLOR="ENTITY.SET_TINT_COLOR";q.SPAWN="ENTITY.SPAWN";q.TICK="ENTITY.TICK";q.UPDATE_POSITION="ENTITY.UPDATE_POSITION";q.UPDATE_ROTATION="ENTITY.UPDATE_ROTATION"})(xD||={});class m0 extends O7{_id;_blockHalfExtents;_blockTextureUri;_controller;_isEnvironmental=!1;_modelAnimations=new Map;_modelNodeOverrides=new Map;_modelPreferredShape;_modelScale={x:1,y:1,z:1};_modelScaleInterpolationMs;_modelTextureUri;_modelUri;_name;_opacity;_outline;_parent;_parentNodeName;_positionInterpolationMs;_rotationInterpolationMs;_tag;_tintColor;_emissiveColor;_emissiveIntensity;_lastUpdatedPosition={x:0,y:0,z:0};_lastUpdatedRotation={x:0,y:0,z:0,w:1};_lastParentlessType="dynamic";_world;_positionUpdateThresholdSq;_rotationUpdateThreshold;constructor(A){let Q="blockTextureUri"in A,B="modelUri"in A;if(!Q===!B)n.fatalError("Entity.constructor(): Entity data must include a blockTextureUri or modelUri, but not both.");if(Q&&!A.blockHalfExtents)n.fatalError("Entity.constructor(): Block entity must have blockHalfExtents!");if(A.parent&&!A.parent.isSpawned)n.fatalError("Entity.constructor(): Parent entity must be spawned before child entity!");if(A.parent?.modelUri&&A.parentNodeName&&!TY.instance.modelHasNode(A.parent.modelUri,A.parentNodeName))n.fatalError(`Entity.constructor(): Parent node name ${A.parentNodeName} not found in parent model ${A.parent.modelUri}!`);super(A.rigidBodyOptions??_VA);if(Q)this._blockHalfExtents=A.blockHalfExtents,this._blockTextureUri=A.blockTextureUri;if(B){let Y=this._modelScale=typeof A.modelScale==="number"?{x:A.modelScale,y:A.modelScale,z:A.modelScale}:A.modelScale??{x:1,y:1,z:1};if(this._modelPreferredShape=A.modelPreferredShape,this._modelScale=Y,this._modelScaleInterpolationMs=A.modelScaleInterpolationMs,this._modelTextureUri=A.modelTextureUri,this._modelUri=A.modelUri,!this._modelUri.startsWith("http"))if(TY.instance.hasModel(this._modelUri))A.modelAnimations?.forEach((J)=>{this._modelAnimations.set(J.name,new X4({...J,entity:this}))});else n.error(`Entity.constructor(): Model ${this._modelUri} does not exist!`);A.modelNodeOverrides?.forEach((J)=>{this._modelNodeOverrides.set(J.nameMatch.toLowerCase(),new HE({...J,entity:this}))})}if(this._emissiveColor=A.emissiveColor,this._emissiveIntensity=A.emissiveIntensity,this._isEnvironmental=A.isEnvironmental??!1,this._name=A.name??"Nameless",this._opacity=A.opacity??1,this._outline=A.outline,this._parent=A.parent,this._parentNodeName=A.parentNodeName,this._positionInterpolationMs=A.positionInterpolationMs,this._rotationInterpolationMs=A.rotationInterpolationMs,this._tag=A.tag,this._tintColor=A.tintColor,this._positionUpdateThresholdSq=vVA,this._rotationUpdateThreshold=yVA,A.controller)this._controller=A.controller,this._controller.attach(this)}get id(){return this._id}get availableModelAnimationNames(){return this.isModelEntity?TY.instance.getAnimationNames(this._modelUri):[]}get availableModelNodeNames(){return this.isModelEntity?TY.instance.getNodeNames(this._modelUri):[]}get blockHalfExtents(){return this._blockHalfExtents}get blockTextureUri(){return this._blockTextureUri}get controller(){return this._controller}get emissiveColor(){return this._emissiveColor}get emissiveIntensity(){return this._emissiveIntensity}get depth(){return this.isModelEntity?TY.instance.getDepth(this._modelUri)*this._modelScale.z:this._blockHalfExtents.z*2}get height(){return this.isModelEntity?TY.instance.getHeight(this._modelUri)*this._modelScale.y:this._blockHalfExtents.y*2}get modelAnimations(){return Array.from(this._modelAnimations.values())}get modelNodeOverrides(){return Array.from(this._modelNodeOverrides.values())}get modelPreferredShape(){return this._modelPreferredShape}get modelScale(){return this._modelScale}get modelScaleInterpolationMs(){return this._modelScaleInterpolationMs}get modelTextureUri(){return this._modelTextureUri}get modelUri(){return this._modelUri}get name(){return this._name}get opacity(){return this._opacity}get outline(){return this._outline}get parent(){return this._parent}get parentNodeName(){return this._parentNodeName}get positionInterpolationMs(){return this._positionInterpolationMs}get rotationInterpolationMs(){return this._rotationInterpolationMs}get tag(){return this._tag}get tintColor(){return this._tintColor}get isBlockEntity(){return!!this._blockTextureUri}get isEnvironmental(){return this._isEnvironmental}get isModelEntity(){return!!this._modelUri}get isSpawned(){return!!this._world}get width(){return this.isModelEntity?TY.instance.getWidth(this._modelUri)*this._modelScale.x:this._blockHalfExtents.x*2}get world(){return this._world}clearModelNodeOverrides(){if(!this.isModelEntity)return;this.removeModelNodeOverrides(Array.from(this._modelNodeOverrides.keys()))}despawn(){if(!this._requireSpawned("despawn"))return;if(this._world.entityManager.getEntityChildren(this).forEach((A)=>{A.despawn()}),this._controller)this._controller.detach(this),this._controller.despawn(this);if(this.emitWithWorld(this._world,"ENTITY.DESPAWN",{entity:this}),this.isSimulated)this.removeFromSimulation();this._world.entityManager.unregisterEntity(this),this._world.audioManager.unregisterEntityAttachedAudios(this),this._world.particleEmitterManager.despawnEntityAttachedParticleEmitters(this),this._world.sceneUIManager.unloadEntityAttachedSceneUIs(this),this._id=void 0,this._world=void 0}getModelAnimation(A){if(!this.isModelEntity)return;let Q=this._modelAnimations.get(A);if(!Q)Q=new X4({name:A,entity:this}),this._modelAnimations.set(A,Q);return Q}getModelNodeOverride(A){if(!this.isModelEntity)return;A=A.toLowerCase();let Q=this._modelNodeOverrides.get(A);if(!Q)Q=new HE({nameMatch:A,entity:this}),this._modelNodeOverrides.set(A,Q);return Q}interact(A,Q){if(!this._requireSpawned("interact"))return;this.emitWithWorld(this._world,"ENTITY.INTERACT",{entity:this,player:A,raycastHit:Q})}setBlockTextureUri(A){if(this._blockTextureUri===A)return;if(this._blockTextureUri=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_BLOCK_TEXTURE_URI",{entity:this,blockTextureUri:A})}removeModelNodeOverride(A){if(!this.isModelEntity)return;A=A.toLowerCase();let Q=this._modelNodeOverrides.get(A);if(!Q)return;if(Q.markRemoved(),this._modelNodeOverrides.delete(A),this.isSpawned)this.emitWithWorld(this._world,"ENTITY.REMOVE_MODEL_NODE_OVERRIDE",{entity:this,entityModelNodeOverride:Q})}removeModelNodeOverrides(A){if(!this.isModelEntity)return;for(let Q of A)this.removeModelNodeOverride(Q)}setEmissiveColor(A){if(!A&&!this._emissiveColor||A&&this._emissiveColor&&A.r===this._emissiveColor.r&&A.g===this._emissiveColor.g&&A.b===this._emissiveColor.b)return;if(this._emissiveColor=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_EMISSIVE_COLOR",{entity:this,emissiveColor:A})}setEmissiveIntensity(A){if(this._emissiveIntensity===A)return;if(this._emissiveIntensity=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_EMISSIVE_INTENSITY",{entity:this,emissiveIntensity:A})}setModelScale(A){if(!this.isModelEntity)return;if(typeof A==="number")A={x:A,y:A,z:A};if(this._modelScale===A)return;let Q={x:A.x/this._modelScale.x,y:A.y/this._modelScale.y,z:A.z/this._modelScale.z};if(this._modelScale=A,this.colliders.forEach((B)=>B.setScale(Q)),this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_MODEL_SCALE",{entity:this,modelScale:A})}setModelScaleInterpolationMs(A){if(!this.isModelEntity)return;if(this._modelScaleInterpolationMs===A)return;if(this._modelScaleInterpolationMs=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_MODEL_SCALE_INTERPOLATION_MS",{entity:this,interpolationMs:A})}setModelTextureUri(A){if(!this.isModelEntity||this._modelTextureUri===A)return;if(this._modelTextureUri=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_MODEL_TEXTURE_URI",{entity:this,modelTextureUri:A})}setOpacity(A){if(this._opacity===A)return;if(this._opacity=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_OPACITY",{entity:this,opacity:A})}setOutline(A,Q){if(this._outline=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_OUTLINE",{entity:this,forPlayer:Q,outline:A})}setParent(A,Q,B,Y){if(A&&!A.isSpawned)return n.error("Entity.setParent(): Parent entity is not spawned, cannot set parent!");if(!this._parent&&A)this._lastParentlessType=this.type;if(this._parent=A,this._parentNodeName=Q,!this.isSpawned)return;if(this.colliders.forEach((J)=>J.setEnabled(!A)),this.setType(!A?this._lastParentlessType:"kinematic_velocity"),this.setPosition(B??{x:0,y:0,z:0}),this.setRotation(Y??{x:0,y:0,z:0,w:1}),!this.isKinematicPositionBased)this.resetAngularVelocity(),this.resetForces(),this.resetLinearVelocity(),this.resetTorques();this.emitWithWorld(this._world,"ENTITY.SET_PARENT",{entity:this,parent:A,parentNodeName:Q})}setPositionInterpolationMs(A){if(this._positionInterpolationMs===A)return;if(this._positionInterpolationMs=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_POSITION_INTERPOLATION_MS",{entity:this,interpolationMs:A})}setRotationInterpolationMs(A){if(this._rotationInterpolationMs===A)return;if(this._rotationInterpolationMs=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_ROTATION_INTERPOLATION_MS",{entity:this,interpolationMs:A})}setTintColor(A){if(!A&&!this._tintColor||A&&this._tintColor&&A.r===this._tintColor.r&&A.g===this._tintColor.g&&A.b===this._tintColor.b)return;if(this._tintColor=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_TINT_COLOR",{entity:this,tintColor:A})}spawn(A,Q,B){if(this.isSpawned)return n.error(`Entity.spawn(): Entity ${this._name} is already spawned with id ${this._id}!`);if(!this.isSimulated)this.addToSimulation(A.simulation);if(this._blockTextureUri&&this._blockHalfExtents&&this.numColliders===0)this.addChildColliderToSimulation(new T9(T9.optionsFromBlockHalfExtents(this._blockHalfExtents)));if(this._modelUri&&this.numColliders===0&&this._modelPreferredShape!=="none")this.addChildColliderToSimulation(new T9(T9.optionsFromModelUri(this._modelUri,this._modelScale,this._modelPreferredShape)));if(this.colliders.forEach((Y)=>{if(this.hasListeners("ENTITY.BLOCK_COLLISION")||this.hasListeners("ENTITY.ENTITY_COLLISION"))Y.enableCollisionEvents(!0);if(this.hasListeners("ENTITY.BLOCK_CONTACT_FORCE")||this.hasListeners("ENTITY.ENTITY_CONTACT_FORCE"))Y.enableContactForceEvents(!0);if(TC.isDefaultCollisionGroups(Y.collisionGroups)){let J=this.isEnvironmental?[8]:[Y.isSensor?4:2],C=this.isEnvironmental?[65535&~8&~1]:[65535];Y.setCollisionGroups({belongsTo:J,collidesWith:C})}}),this.setPosition(Q),B)this.setRotation(B);if(this._id=A.entityManager.registerEntity(this),this._world=A,this._controller)this._controller.spawn(this);if(this._parent)this.setParent(this._parent,this._parentNodeName,Q,B);this.colliders.forEach((Y)=>{A.simulation.colliderMap.setColliderEntity(Y,this)}),this.emitWithWorld(A,"ENTITY.SPAWN",{entity:this})}stopAllModelAnimations(A){for(let Q of this._modelAnimations.values()){if(A?.(Q))continue;Q.stop()}}stopModelAnimations(A){for(let Q of A){let B=this._modelAnimations.get(Q);if(!B)continue;B.stop()}}checkAndEmitUpdates(){if(!this._requireSpawned("checkAndEmitUpdates"))return;let A=this.position,Q=this.rotation;if(this._rotationExceedsThreshold(Q,this._lastUpdatedRotation))this._lastUpdatedRotation=Q,this.emitWithWorld(this._world,"ENTITY.UPDATE_ROTATION",{entity:this,rotation:Q});if(this._positionExceedsThreshold(A,this._lastUpdatedPosition))this._lastUpdatedPosition=A,this.emitWithWorld(this._world,"ENTITY.UPDATE_POSITION",{entity:this,position:A})}serialize(){return CQ.serializeEntity(this)}tick(A){if(this.emit("ENTITY.TICK",{entity:this,tickDeltaMs:A}),this._controller)this._controller.tick(this,A)}_positionExceedsThreshold(A,Q){let B=A.x-Q.x,Y=A.y-Q.y,J=A.z-Q.z;return B*B+Y*Y+J*J>this._positionUpdateThresholdSq}_requireSpawned(A){if(!this.isSpawned)n.error(`Entity._requireSpawned(): Entity ${this._name} is not spawned, cannot invoke ${A}()!`);return this.isSpawned}_rotationExceedsThreshold(A,Q){return Math.abs(A.x*Q.x+A.y*Q.y+A.z*Q.z+A.w*Q.w)!0;canRun=()=>!0;canSwim=()=>!0;canWalk=()=>!0;facesCameraWhenIdle=!1;idleLoopedAnimations=["idle-upper","idle-lower"];interactOneshotAnimations=["simple-interact"];jumpLandHeavyOneshotAnimations=["jump-post-heavy"];jumpLandLightOneshotAnimations=["jump-post-light"];jumpOneshotAnimations=["jump-loop"];jumpVelocity=10;runLoopedAnimations=["run-upper","run-lower"];runVelocity=8;sticksToPlatforms=!0;swimFastVelocity=5;swimGravity=0;swimIdleLoopedAnimations=["swim-idle"];swimLoopedAnimations=["swim-forward"];swimMaxGravityVelocity=-1;swimSlowVelocity=3;swimUpwardVelocity=2;walkLoopedAnimations=["walk-upper","walk-lower"];walkVelocity=4;_externalVelocity={x:0,y:0,z:0};_magnitudeYTracker=0;_groundContactCount=0;_internalApplyImpulse=()=>{};_isActivelyMoving=!1;_isFullySubmerged=!1;_justSubmergedUntil=0;_liquidContactCount=0;_platform;_reusableImpulse={x:0,y:0,z:0};_reusablePlatformVelocity={x:0,y:0,z:0};_reusableTargetVelocities={x:0,y:0,z:0};_reusableVelocityClamp={x:0,y:0,z:0};_stepAudio;_swimUpwardCooldownAt=0;constructor(A={}){super();this.applyDirectionalMovementRotations=A.applyDirectionalMovementRotations??this.applyDirectionalMovementRotations,this.autoCancelMouseLeftClick=A.autoCancelMouseLeftClick??this.autoCancelMouseLeftClick,this.facesCameraWhenIdle=A.facesCameraWhenIdle??this.facesCameraWhenIdle,this.sticksToPlatforms=A.sticksToPlatforms??this.sticksToPlatforms,this.canJump=A.canJump??this.canJump,this.canRun=A.canRun??this.canRun,this.canSwim=A.canSwim??this.canSwim,this.canWalk=A.canWalk??this.canWalk,this.jumpVelocity=A.jumpVelocity??this.jumpVelocity,this.runVelocity=A.runVelocity??this.runVelocity,this.walkVelocity=A.walkVelocity??this.walkVelocity,this.swimFastVelocity=A.swimFastVelocity??this.swimFastVelocity,this.swimSlowVelocity=A.swimSlowVelocity??this.swimSlowVelocity,this.swimUpwardVelocity=A.swimUpwardVelocity??this.swimUpwardVelocity,this.swimGravity=A.swimGravity??this.swimGravity,this.swimMaxGravityVelocity=A.swimMaxGravityVelocity??this.swimMaxGravityVelocity,this.idleLoopedAnimations=A.idleLoopedAnimations??this.idleLoopedAnimations,this.interactOneshotAnimations=A.interactOneshotAnimations??this.interactOneshotAnimations,this.jumpOneshotAnimations=A.jumpOneshotAnimations??this.jumpOneshotAnimations,this.jumpLandHeavyOneshotAnimations=A.jumpLandHeavyOneshotAnimations??this.jumpLandHeavyOneshotAnimations,this.jumpLandLightOneshotAnimations=A.jumpLandLightOneshotAnimations??this.jumpLandLightOneshotAnimations,this.runLoopedAnimations=A.runLoopedAnimations??this.runLoopedAnimations,this.swimLoopedAnimations=A.swimLoopedAnimations??this.swimLoopedAnimations,this.swimIdleLoopedAnimations=A.swimIdleLoopedAnimations??this.swimIdleLoopedAnimations,this.walkLoopedAnimations=A.walkLoopedAnimations??this.walkLoopedAnimations}get isActivelyMoving(){return this._isActivelyMoving}get isGrounded(){return this._groundContactCount>0}get isOnPlatform(){return!!this._platform}get isSwimming(){return this._liquidContactCount>0}get platform(){return this._platform}attach(A){super.attach(A),this._internalApplyImpulse=A.applyImpulse.bind(A),A.applyImpulse=(Q)=>{let B=A.mass||1;this._externalVelocity.x+=Q.x/B,this._externalVelocity.y+=Q.y/B,this._externalVelocity.z+=Q.z/B},this._stepAudio=new OV({uri:"audio/sfx/step/stone/stone-step-04.mp3",loop:!0,volume:0.1,referenceDistance:2,cutoffDistance:15,attachedToEntity:A}),A.setCcdEnabled(!0),A.lockAllRotations(),A.on("ENTITY.BLOCK_COLLISION",({blockType:Q,started:B})=>{if(!Q.isLiquid||!this.canSwim(this))return;if(this._liquidContactCount<=0&&B){let Y=A.linearVelocity;A.setLinearVelocity({x:Y.x*this.swimGravity,y:Y.y*this.swimGravity,z:Y.z*this.swimGravity})}if(this._liquidContactCount+=B?1:-1,this._liquidContactCount>0)A.setGravityScale(this.swimGravity),A.stopAllModelAnimations((Y)=>this.swimLoopedAnimations.includes(Y.name)),this._swimUpwardCooldownAt=performance.now()+C0.SWIM_UPWARD_COOLDOWN_MS;else A.setGravityScale(1),A.stopModelAnimations(this.swimLoopedAnimations)})}spawn(A){if(!A.isSpawned)return n.error("DefaultPlayerEntityController.spawn(): Entity is not spawned!");A.createAndAddChildCollider({shape:"cylinder",radius:C0.GROUND_SENSOR_RADIUS_SCALE*(A.height/C0.BASE_ENTITY_HEIGHT),halfHeight:C0.GROUND_SENSOR_HEIGHT_SCALE*(A.height/C0.BASE_ENTITY_HEIGHT),collisionGroups:{belongsTo:[4],collidesWith:[1,2,8]},isSensor:!0,relativePosition:{x:0,y:-A.height/2,z:0},tag:"groundSensor",onCollision:(Q,B)=>{if(!A.isSpawned)return;if(!(Q instanceof D8)||!Q.isLiquid){if(B&&this._groundContactCount===0&&A.linearVelocity.y<-1)if(A.linearVelocity.yw.includes(P.name)||P.loopMode===0);for(let P of w)A.getModelAnimation(P)?.setLoopMode(1),A.getModelAnimation(P)?.play();this._stepAudio?.setPlaybackRate(V?0.75:0.51),this._stepAudio?.play(A.world,!this._stepAudio?.isPlaying)}else if(this._isFullySubmerged&&this.canSwim(this))if(this._stepAudio?.pause(),this._isActivelyMoving){A.stopAllModelAnimations((w)=>this.swimLoopedAnimations.includes(w.name)||w.loopMode===0);for(let w of this.swimLoopedAnimations)A.getModelAnimation(w)?.setLoopMode(1),A.getModelAnimation(w)?.play()}else{A.stopAllModelAnimations((w)=>this.swimIdleLoopedAnimations.includes(w.name)||w.loopMode===0);for(let w of this.swimIdleLoopedAnimations)A.getModelAnimation(w)?.setLoopMode(1),A.getModelAnimation(w)?.play()}else{this._stepAudio?.pause(),A.stopAllModelAnimations((w)=>this.idleLoopedAnimations.includes(w.name)||w.loopMode===0);for(let w of this.idleLoopedAnimations)A.getModelAnimation(w)?.setLoopMode(1),A.getModelAnimation(w)?.play()}let L;if(this.applyDirectionalMovementRotations&&D){if(I)L=$;else if(J&&C&&!G&&!X)L=C0.MOVEMENT_ROTATIONS.wa;else if(J&&G&&!C&&!X)L=C0.MOVEMENT_ROTATIONS.wd;else if(X&&C&&!J&&!G)L=C0.MOVEMENT_ROTATIONS.sa;else if(X&&G&&!J&&!C)L=C0.MOVEMENT_ROTATIONS.sd;else if(X&&!J&&!C&&!G||C&&X&&G&&!J)L=C0.MOVEMENT_ROTATIONS.s;else if(C&&!J&&!X&&!G)L=C0.MOVEMENT_ROTATIONS.a;else if(G&&!J&&!C&&!X)L=C0.MOVEMENT_ROTATIONS.d}if(U){for(let w of this.interactOneshotAnimations)A.getModelAnimation(w)?.setBlendMode(0),A.getModelAnimation(w)?.restart();Q.ml=!this.autoCancelMouseLeftClick}if(D){let w=!this.isSwimming?V?this.runVelocity:this.walkVelocity:V?this.swimFastVelocity:this.swimSlowVelocity;if(I){let P=E+$;this._reusableTargetVelocities.x=-w*Math.sin(P),this._reusableTargetVelocities.z=-w*Math.cos(P)}else{let P=Math.sin(E),_=Math.cos(E);if(J)this._reusableTargetVelocities.x-=w*P,this._reusableTargetVelocities.z-=w*_;if(X)this._reusableTargetVelocities.x+=w*P,this._reusableTargetVelocities.z+=w*_;if(C)this._reusableTargetVelocities.x-=w*_,this._reusableTargetVelocities.z+=w*P;if(G)this._reusableTargetVelocities.x+=w*_,this._reusableTargetVelocities.z-=w*P;let O=Math.sqrt(this._reusableTargetVelocities.x*this._reusableTargetVelocities.x+this._reusableTargetVelocities.z*this._reusableTargetVelocities.z);if(O>w){let k=w/O;this._reusableTargetVelocities.x*=k,this._reusableTargetVelocities.z*=k}}}if(this.isSwimming){if(K.ythis.swimUpwardVelocity*2)this._reusableVelocityClamp.x=K.x,this._reusableVelocityClamp.y=this.swimUpwardVelocity*2,this._reusableVelocityClamp.z=K.z,A.setLinearVelocity(this._reusableVelocityClamp);if(F)this._reusableTargetVelocities.y=-this.swimUpwardVelocity;else if(performance.now()-0.001&&K.y<=3)this._reusableTargetVelocities.y=this.jumpVelocity;else if(this.isSwimming&&performance.now()>this._swimUpwardCooldownAt)this._reusableTargetVelocities.y=this.swimUpwardVelocity}let z=this._platform?.linearVelocity??this._reusablePlatformVelocity;if(this._externalVelocity.y!==0)this._magnitudeYTracker+=this._externalVelocity.y;if(this._externalVelocity.x!==0||this._externalVelocity.y!==0||this._externalVelocity.z!==0){if(this.isGrounded){let w=Math.sqrt(this._externalVelocity.x*this._externalVelocity.x+this._magnitudeYTracker*this._magnitudeYTracker+this._externalVelocity.z*this._externalVelocity.z);if(w>0.01){let _=Math.max(0,w-C0.EXTERNAL_IMPULSE_DECAY_RATE)/w;this._externalVelocity.x*=_,this._magnitudeYTracker*=_,this._externalVelocity.z*=_}else this._externalVelocity.x=0,this._externalVelocity.y=0,this._magnitudeYTracker=0,this._externalVelocity.z=0}}let M=this._reusableTargetVelocities.x+this._externalVelocity.x-K.x+z.x,N=this._reusableTargetVelocities.y+this._externalVelocity.y+z.y,q=this._reusableTargetVelocities.z+this._externalVelocity.z-K.z+z.z;if(this._externalVelocity.y=0,M!==0||N!==0||q!==0){let w=A.mass;this._reusableImpulse.x=M*w,this._reusableImpulse.y=N*w,this._reusableImpulse.z=q*w,this._internalApplyImpulse(this._reusableImpulse)}if(E!==void 0&&(this.facesCameraWhenIdle||this.isActivelyMoving)){let P=(L!==void 0?E+L:E)*0.5;A.setRotation({x:0,y:Math.sin(P),z:0,w:Math.cos(P)})}}}var Mm;((G)=>{G.LOAD="SCENE_UI.LOAD";G.SET_ATTACHED_TO_ENTITY="SCENE_UI.SET_ATTACHED_TO_ENTITY";G.SET_OFFSET="SCENE_UI.SET_OFFSET";G.SET_POSITION="SCENE_UI.SET_POSITION";G.SET_STATE="SCENE_UI.SET_STATE";G.SET_VIEW_DISTANCE="SCENE_UI.SET_VIEW_DISTANCE";G.UNLOAD="SCENE_UI.UNLOAD"})(Mm||={});class fD extends FQ{_id;_attachedToEntity;_offset;_position;_state={};_templateId;_viewDistance;_world;constructor(A){if(!!A.attachedToEntity===!!A.position)n.fatalError("Either attachedToEntity or position must be set, but not both");super();this._attachedToEntity=A.attachedToEntity,this._offset=A.offset,this._position=A.position,this._state=A.state??{},this._templateId=A.templateId,this._viewDistance=A.viewDistance}get id(){return this._id}get attachedToEntity(){return this._attachedToEntity}get isLoaded(){return this._id!==void 0}get offset(){return this._offset}get position(){return this._position}get state(){return this._state}get templateId(){return this._templateId}get viewDistance(){return this._viewDistance}get world(){return this._world}load(A){if(this.isLoaded)return;if(this._attachedToEntity&&!this._attachedToEntity.isSpawned)return n.error(`SceneUI.load(): Attached entity ${this._attachedToEntity.id} must be spawned before loading SceneUI!`);this._id=A.sceneUIManager.registerSceneUI(this),this._world=A,this.emitWithWorld(A,"SCENE_UI.LOAD",{sceneUI:this})}setAttachedToEntity(A){if(!A.isSpawned)return n.error(`SceneUI.setAttachedToEntity(): Entity ${A.id} is not spawned!`);if(this._attachedToEntity===A)return;if(this._attachedToEntity=A,this._position=void 0,this.isLoaded)this.emitWithWorld(this._world,"SCENE_UI.SET_ATTACHED_TO_ENTITY",{sceneUI:this,entity:A})}setOffset(A){if(this._offset===A)return;if(this._offset=A,this.isLoaded)this.emitWithWorld(this._world,"SCENE_UI.SET_OFFSET",{sceneUI:this,offset:A})}setPosition(A){if(this._position===A)return;if(this._attachedToEntity=void 0,this._position=A,this.isLoaded)this.emitWithWorld(this._world,"SCENE_UI.SET_POSITION",{sceneUI:this,position:A})}setState(A){if(this._state={...this._state,...A},this.isLoaded)this.emitWithWorld(this._world,"SCENE_UI.SET_STATE",{sceneUI:this,state:this._state})}setViewDistance(A){if(this._viewDistance=A,this.isLoaded)this.emitWithWorld(this._world,"SCENE_UI.SET_VIEW_DISTANCE",{sceneUI:this,viewDistance:A})}unload(){if(!this.isLoaded||!this._world)return;this._world.sceneUIManager.unregisterSceneUI(this),this.emitWithWorld(this._world,"SCENE_UI.UNLOAD",{sceneUI:this}),this._id=void 0,this._world=void 0}serialize(){return CQ.serializeSceneUI(this)}}var gVA=0.010000000000000002,hVA=Math.cos(0.026);class i1 extends m0{player;nametagSceneUI;_tickWithPlayerInputEnabled=!0;constructor(A){super(A);this._positionUpdateThresholdSq=gVA,this._rotationUpdateThreshold=hVA,this.player=A.player,this.nametagSceneUI=new fD({templateId:"hytopia:nametag",attachedToEntity:this,offset:{x:0,y:1,z:0},viewDistance:15,state:{username:this.player.username,profilePictureUrl:this.player.profilePictureUrl}})}get isTickWithPlayerInputEnabled(){return this._tickWithPlayerInputEnabled}setTickWithPlayerInputEnabled(A){this._tickWithPlayerInputEnabled=A}spawn(A,Q,B){super.spawn(A,Q,B),this.nametagSceneUI.load(A),this.player.on("PLAYER.CHAT_MESSAGE_SEND",({message:Y})=>{this.nametagSceneUI.setState({chat:Y})})}tick(A){if(!this.isSpawned||!this.world)return;if(!this.controller)return n.error(`PlayerEntity.tick(): PlayerEntity "${this.name}" must have a controller.`);if(this._tickWithPlayerInputEnabled){let{input:Q,camera:B}=this.player;this.controller.tickWithPlayerInput(this,Q,B.orientation,A)}super.tick(A)}}var xVA="models/players/player.gltf",_7B={BACK:"back-anchor",HEAD:"head-anchor",LEFT_ARM:"arm-left-anchor",LEFT_FOOT:"foot-left-anchor",LEFT_HAND:"hand-left-anchor",LEFT_ITEM:"hand-left-anchor",LEFT_LEG:"leg-left-anchor",RIGHT_ARM:"arm-right-anchor",RIGHT_FOOT:"foot-right-anchor",RIGHT_HAND:"hand-right-anchor",RIGHT_ITEM:"hand-right-anchor",RIGHT_LEG:"leg-right-anchor",TORSO:"torso-anchor"};class zm extends i1{_cosmeticHiddenSlots;constructor(A){super({controller:new C0,modelAnimations:[{name:"idle-lower",loopMode:1,play:!0},{name:"idle-upper",loopMode:1,play:!0}],modelUri:xVA,...A});this._cosmeticHiddenSlots=A.cosmeticHiddenSlots??[]}get cosmeticHiddenSlots(){return this._cosmeticHiddenSlots}spawn(A,Q,B){super.spawn(A,Q,B),this.player.cosmetics.then((Y)=>{if(!Y||!this.modelUri)return;if(!(Y.equippedItems.some((C)=>C.item.flags.includes("HIDES_HAIR"))&&!this._cosmeticHiddenSlots.includes("ALL")&&!this._cosmeticHiddenSlots.includes("HEAD"))&&Y.hairModelUri)new m0({modelUri:Y.hairModelUri,modelPreferredShape:"none",modelTextureUri:Y.hairTextureUri,parent:this,parentNodeName:"head-anchor"}).spawn(A,{x:0,y:0,z:0});if(this.modelUri===xVA)this.setModelTextureUri(Y.skinTextureUri);if(this._cosmeticHiddenSlots.includes("ALL"))return;for(let C of Y.equippedItems){let{item:X,slot:G}=C;if(this._cosmeticHiddenSlots.includes(G))continue;let F=_7B[G];if(!F||!TY.instance.modelHasNode(this.modelUri,F))continue;new m0({modelUri:X.modelUrl,modelPreferredShape:"none",parent:this,parentNodeName:F}).spawn(A,{x:0,y:0,z:0})}}).catch((Y)=>n.warning(`DefaultPlayerEntity.spawn(): Failed to get player cosmetics: ${Y}`))}}class bD{_activeEntities=new Set;_entities=new Map;_nextEntityId=1;_world;constructor(A){this._world=A}get entityCount(){return this._entities.size}get world(){return this._world}registerEntity(A){if(A.id!==void 0)n.fatalError(`EntityManager.registerEntity(): Entity ${A.name} is already assigned the id ${A.id}!`);let Q=this._nextEntityId;if(this._entities.set(Q,A),this._nextEntityId++,!A.isEnvironmental)this._activeEntities.add(A);return Q}unregisterEntity(A){if(A.id===void 0)return n.error(`EntityManager.unregisterEntity(): Entity ${A.name} is not assigned an id!`);if(this._entities.delete(A.id),!A.isEnvironmental)this._activeEntities.delete(A)}getAllEntities(){return Array.from(this._entities.values())}getAllPlayerEntities(){let A=[];return this._entities.forEach((Q)=>{if(Q instanceof i1)A.push(Q)}),A}getPlayerEntitiesByPlayer(A){let Q=[];return this._entities.forEach((B)=>{if(B instanceof i1&&B.player===A)Q.push(B)}),Q}getEntity(A){return this._entities.get(A)}getEntitiesByTag(A){let Q=[];return this._entities.forEach((B)=>{if(B.tag===A)Q.push(B)}),Q}getEntitiesByTagSubstring(A){let Q=[];return this._entities.forEach((B)=>{if(B.tag?.includes(A))Q.push(B)}),Q}getEntityChildren(A){let Q=[];return this._entities.forEach((B)=>{if(B.parent===A)Q.push(B)}),Q}tickEntities(A){for(let Q of this._activeEntities)Q.tick(A)}checkAndEmitUpdates(){for(let A of this._activeEntities)A.checkAndEmitUpdates()}}import{gzipSync as bf0}from"zlib";var Y9=qA(uIA(),1),pDY=Y9.default.v1,iDY=Y9.default.v1ToV6,nDY=Y9.default.v3,dIA=Y9.default.v4,sDY=Y9.default.v5,rDY=Y9.default.v6,aDY=Y9.default.v6ToV1,oDY=Y9.default.v7,tDY=Y9.default.NIL,eDY=Y9.default.MAX,ANY=Y9.default.version,QNY=Y9.default.validate,BNY=Y9.default.stringify,YNY=Y9.default.parse;var km;try{km=new TextDecoder}catch(A){}var _A,z8,t=0;var gm=[],EZ=gm,dD=0,eB={},DB,mG,M8=0,N5=0,kY,uG,x9=[],UB,cIA={useRecords:!1,mapsAsObjects:!0};class yw{}var hm=new yw;hm.name="MessagePack 0xC1";var m7=!1,oIA=2,_m,vm,ym;try{Function("")}catch(A){oIA=1/0}class dG{constructor(A){if(A){if(A.useRecords===!1&&A.mapsAsObjects===void 0)A.mapsAsObjects=!0;if(A.sequential&&A.trusted!==!1){if(A.trusted=!0,!A.structures&&A.useRecords!=!1){if(A.structures=[],!A.maxSharedStructures)A.maxSharedStructures=0}}if(A.structures)A.structures.sharedLength=A.structures.length;else if(A.getStructures)(A.structures=[]).uninitialized=!0,A.structures.sharedLength=0;if(A.int64AsNumber)A.int64AsType="number"}Object.assign(this,A)}unpack(A,Q){if(_A)return GHA(()=>{return vw(),this?this.unpack(A,Q):dG.prototype.unpack.call(cIA,A,Q)});if(!A.buffer&&A.constructor===ArrayBuffer)A=typeof Buffer<"u"?Buffer.from(A):new Uint8Array(A);if(typeof Q==="object")z8=Q.end||A.length,t=Q.start||0;else t=0,z8=Q>-1?Q:A.length;dD=0,N5=0,mG=null,EZ=gm,kY=null,_A=A;try{UB=A.dataView||(A.dataView=new DataView(A.buffer,A.byteOffset,A.byteLength))}catch(B){if(_A=null,A instanceof Uint8Array)throw B;throw Error("Source must be a Uint8Array or Buffer but was a "+(A&&typeof A=="object"?A.constructor.name:typeof A))}if(this instanceof dG){if(eB=this,this.structures)return DB=this.structures,kw(Q);else if(!DB||DB.length>0)DB=[]}else if(eB=cIA,!DB||DB.length>0)DB=[];return kw(Q)}unpackMultiple(A,Q){let B,Y=0;try{m7=!0;let J=A.length,C=this?this.unpack(A,J):hw.unpack(A,J);if(Q){if(Q(C,Y,t)===!1)return;while(tB.slice(0));for(let B=0,Y=A.length;B=32)J.highByte=B-32>>5}}A.sharedLength=A.length;for(let B in Q||[])if(B>=0){let Y=A[B],J=Q[B];if(J){if(Y)(A.restoreStructures||(A.restoreStructures=[]))[B]=Y;A[B]=J}}return this.structures=A}decode(A,Q){return this.unpack(A,Q)}}function kw(A){try{if(!eB.trusted&&!m7){let B=DB.sharedLength||0;if(B=32&&_m){if(Q=_m(_A,t,z8,eB),_A=null,!(A&&A.lazy)&&Q)Q=Q.toJSON();t=z8}else Q=GY();if(kY)t=kY.postBundlePosition,kY=null;if(m7)DB.restoreStructures=null;if(t==z8){if(DB&&DB.restoreStructures)lIA();if(DB=null,_A=null,uG)uG=null}else if(t>z8)throw Error("Unexpected end of MessagePack data");else if(!m7){let B;try{B=JSON.stringify(Q,(Y,J)=>typeof J==="bigint"?`${J}n`:J).slice(0,100)}catch(Y){B="(JSON view not available "+Y+")"}throw Error("Data read, but end of buffer not reached "+B)}return Q}catch(Q){if(DB&&DB.restoreStructures)lIA();if(vw(),Q instanceof RangeError||Q.message.startsWith("Unexpected end of buffer")||t>z8)Q.incomplete=!0;throw Q}}function lIA(){for(let A in DB.restoreStructures)DB[A]=DB.restoreStructures[A];DB.restoreStructures=null}function GY(){let A=_A[t++];if(A<160)if(A<128)if(A<64)return A;else{let Q=DB[A&63]||eB.getStructures&&tIA()[A&63];if(Q){if(!Q.read)Q.read=xm(Q,A&63);return Q.read()}else return A}else if(A<144)if(A-=128,eB.mapsAsObjects){let Q={};for(let B=0;B=t)return mG.slice(t-M8,(t+=Q)-M8);if(N5==0&&z8<140){let B=Q<16?fm(Q):JHA(Q);if(B!=null)return B}return _w(Q)}else{let Q;switch(A){case 192:return null;case 193:if(kY)if(Q=GY(),Q>0)return kY[1].slice(kY.position1,kY.position1+=Q);else return kY[0].slice(kY.position0,kY.position0-=Q);return hm;case 194:return!1;case 195:return!0;case 196:if(Q=_A[t++],Q===void 0)throw Error("Unexpected end of buffer");return Sm(Q);case 197:return Q=UB.getUint16(t),t+=2,Sm(Q);case 198:return Q=UB.getUint32(t),t+=4,Sm(Q);case 199:return UZ(_A[t++]);case 200:return Q=UB.getUint16(t),t+=2,UZ(Q);case 201:return Q=UB.getUint32(t),t+=4,UZ(Q);case 202:if(Q=UB.getFloat32(t),eB.useFloat32>2){let B=VZ[(_A[t]&127)<<1|_A[t+1]>>7];return t+=4,(B*Q+(Q>0?0.5:-0.5)>>0)/B}return t+=4,Q;case 203:return Q=UB.getFloat64(t),t+=8,Q;case 204:return _A[t++];case 205:return Q=UB.getUint16(t),t+=2,Q;case 206:return Q=UB.getUint32(t),t+=4,Q;case 207:if(eB.int64AsType==="number")Q=UB.getUint32(t)*4294967296,Q+=UB.getUint32(t+4);else if(eB.int64AsType==="string")Q=UB.getBigUint64(t).toString();else if(eB.int64AsType==="auto"){if(Q=UB.getBigUint64(t),Q<=BigInt(2)<=BigInt(-2)<=t)return mG.slice(t-M8,(t+=Q)-M8);return eIA(Q);case 218:if(Q=UB.getUint16(t),t+=2,N5>=t)return mG.slice(t-M8,(t+=Q)-M8);return AHA(Q);case 219:if(Q=UB.getUint32(t),t+=4,N5>=t)return mG.slice(t-M8,(t+=Q)-M8);return QHA(Q);case 220:return Q=UB.getUint16(t),t+=2,iIA(Q);case 221:return Q=UB.getUint32(t),t+=4,iIA(Q);case 222:return Q=UB.getUint16(t),t+=2,nIA(Q);case 223:return Q=UB.getUint32(t),t+=4,nIA(Q);default:if(A>=224)return A-256;if(A===void 0){let B=Error("Unexpected end of MessagePack data");throw B.incomplete=!0,B}throw Error("Unknown MessagePack token "+A)}}}var GWB=/^[a-zA-Z_$][a-zA-Z\d_$]*$/;function xm(A,Q){function B(){if(B.count++>oIA){let J=A.read=Function("r","return function(){return "+(eB.freezeData?"Object.freeze":"")+"({"+A.map((C)=>C==="__proto__"?"__proto_:r()":GWB.test(C)?C+":r()":"["+JSON.stringify(C)+"]:r()").join(",")+"})}")(GY);if(A.highByte===0)A.read=pIA(Q,A.read);return J()}let Y={};for(let J=0,C=A.length;J{return function(){let B=_A[t++];if(B===0)return Q();let Y=A<32?-(A+(B<<5)):A+(B<<5),J=DB[Y]||tIA()[Y];if(!J)throw Error("Record id is not defined for "+Y);if(!J.read)J.read=xm(J,A);return J.read()}};function tIA(){let A=GHA(()=>{return _A=null,eB.getStructures()});return DB=eB._mergeStructures(A,DB)}var _w=KZ,eIA=KZ,AHA=KZ,QHA=KZ,gw=!1;function BHA(A){gw=!0,_w=Q(1),eIA=Q(2),AHA=Q(3),QHA=Q(5);function Q(B){return function(J){let C=EZ[dD++];if(C==null){if(kY)return KZ(J);let G=_A.byteOffset,F=A(t-B+G,z8+G,_A.buffer);if(typeof F=="string")C=F,EZ=gm;else if(EZ=F,dD=1,N5=1,C=EZ[0],C===void 0)throw Error("Unexpected end of buffer")}let X=C.length;if(X<=J)return t+=J,C;return mG=C,M8=t,N5=t+X,t+=J,C.slice(0,J)}}}function KZ(A){let Q;if(A<16){if(Q=fm(A))return Q}if(A>64&&km)return km.decode(_A.subarray(t,t+=A));let B=t+A,Y=[];Q="";while(t65535)F-=65536,Y.push(F>>>10&1023|55296),F=56320|F&1023;Y.push(F)}else Y.push(J);if(Y.length>=4096)Q+=cY.apply(String,Y),Y.length=0}if(Y.length>0)Q+=cY.apply(String,Y);return Q}function YHA(A,Q,B){let Y=_A;_A=A,t=Q;try{return KZ(B)}finally{_A=Y}}function iIA(A){let Q=Array(A);for(let B=0;B0){t=Q;return}B[Y]=J}return cY.apply(String,B)}function fm(A){if(A<4)if(A<2)if(A===0)return"";else{let Q=_A[t++];if((Q&128)>1){t-=1;return}return cY(Q)}else{let Q=_A[t++],B=_A[t++];if((Q&128)>0||(B&128)>0){t-=2;return}if(A<3)return cY(Q,B);let Y=_A[t++];if((Y&128)>0){t-=3;return}return cY(Q,B,Y)}else{let Q=_A[t++],B=_A[t++],Y=_A[t++],J=_A[t++];if((Q&128)>0||(B&128)>0||(Y&128)>0||(J&128)>0){t-=4;return}if(A<6)if(A===4)return cY(Q,B,Y,J);else{let C=_A[t++];if((C&128)>0){t-=5;return}return cY(Q,B,Y,J,C)}else if(A<8){let C=_A[t++],X=_A[t++];if((C&128)>0||(X&128)>0){t-=6;return}if(A<7)return cY(Q,B,Y,J,C,X);let G=_A[t++];if((G&128)>0){t-=7;return}return cY(Q,B,Y,J,C,X,G)}else{let C=_A[t++],X=_A[t++],G=_A[t++],F=_A[t++];if((C&128)>0||(X&128)>0||(G&128)>0||(F&128)>0){t-=8;return}if(A<10)if(A===8)return cY(Q,B,Y,J,C,X,G,F);else{let W=_A[t++];if((W&128)>0){t-=9;return}return cY(Q,B,Y,J,C,X,G,F,W)}else if(A<12){let W=_A[t++],Z=_A[t++];if((W&128)>0||(Z&128)>0){t-=10;return}if(A<11)return cY(Q,B,Y,J,C,X,G,F,W,Z);let U=_A[t++];if((U&128)>0){t-=11;return}return cY(Q,B,Y,J,C,X,G,F,W,Z,U)}else{let W=_A[t++],Z=_A[t++],U=_A[t++],$=_A[t++];if((W&128)>0||(Z&128)>0||(U&128)>0||($&128)>0){t-=12;return}if(A<14)if(A===12)return cY(Q,B,Y,J,C,X,G,F,W,Z,U,$);else{let E=_A[t++];if((E&128)>0){t-=13;return}return cY(Q,B,Y,J,C,X,G,F,W,Z,U,$,E)}else{let E=_A[t++],K=_A[t++];if((E&128)>0||(K&128)>0){t-=14;return}if(A<15)return cY(Q,B,Y,J,C,X,G,F,W,Z,U,$,E,K);let I=_A[t++];if((I&128)>0){t-=15;return}return cY(Q,B,Y,J,C,X,G,F,W,Z,U,$,E,K,I)}}}}}function sIA(){let A=_A[t++],Q;if(A<192)Q=A-160;else switch(A){case 217:Q=_A[t++];break;case 218:Q=UB.getUint16(t),t+=2;break;case 219:Q=UB.getUint32(t),t+=4;break;default:throw Error("Expected string")}return KZ(Q)}function Sm(A){return eB.copyBuffers?Uint8Array.prototype.slice.call(_A,t,t+=A):_A.subarray(t,t+=A)}function UZ(A){let Q=_A[t++];if(x9[Q]){let B;return x9[Q](_A.subarray(t,B=t+=A),(Y)=>{t=Y;try{return GY()}finally{t=B}})}else throw Error("Unknown extension type "+Q)}var rIA=Array(4096);function CHA(){let A=_A[t++];if(A>=160&&A<192){if(A=A-160,N5>=t)return mG.slice(t-M8,(t+=A)-M8);else if(!(N5==0&&z8<180))return _w(A)}else return t--,XHA(GY());let Q=(A<<5^(A>1?UB.getUint16(t):A>0?_A[t]:0))&4095,B=rIA[Q],Y=t,J=t+A-3,C,X=0;if(B&&B.bytes==A){while(Y["string","number","boolean","bigint"].includes(typeof Q)))return A.flat().toString();throw Error(`Invalid property type for record: ${typeof A}`)}var aIA=(A,Q)=>{let B=GY().map(XHA),Y=A;if(Q!==void 0)A=A<32?-((Q<<5)+A):(Q<<5)+A,B.highByte=Q;let J=DB[A];if(J&&(J.isShared||m7))(DB.restoreStructures||(DB.restoreStructures=[]))[A]=J;return DB[A]=B,B.read=xm(B,Y),B.read()};x9[0]=()=>{};x9[0].noBuffer=!0;x9[66]=(A)=>{let Q=A.length,B=BigInt(A[0]&128?A[0]-256:A[0]);for(let Y=1;Y{let A=GY();return(FWB[A[0]]||Error)(A[1],{cause:A[2]})};x9[105]=(A)=>{if(eB.structuredClone===!1)throw Error("Structured clone extension is disabled");let Q=UB.getUint32(t-4);if(!uG)uG=new Map;let B=_A[t],Y;if(B>=144&&B<160||B==220||B==221)Y=[];else if(B>=128&&B<144||B==222||B==223)Y=new Map;else if((B>=199&&B<=201||B>=212&&B<=216)&&_A[t+1]===115)Y=new Set;else Y={};let J={target:Y};uG.set(Q,J);let C=GY();if(!J.used)return J.target=C;else Object.assign(Y,C);if(Y instanceof Map)for(let[X,G]of C.entries())Y.set(X,G);if(Y instanceof Set)for(let X of Array.from(C))Y.add(X);return Y};x9[112]=(A)=>{if(eB.structuredClone===!1)throw Error("Structured clone extension is disabled");let Q=UB.getUint32(t-4),B=uG.get(Q);return B.used=!0,B.target};x9[115]=()=>new Set(GY());var bm=["Int8","Uint8","Uint8Clamped","Int16","Uint16","Int32","Uint32","Float32","Float64","BigInt64","BigUint64"].map((A)=>A+"Array"),WWB=typeof globalThis==="object"?globalThis:window;x9[116]=(A)=>{let Q=A[0],B=Uint8Array.prototype.slice.call(A,1).buffer,Y=bm[Q];if(!Y){if(Q===16)return B;if(Q===17)return new DataView(B);throw Error("Could not find typed array for code "+Q)}return new WWB[Y](B)};x9[120]=()=>{let A=GY();return new RegExp(A[0],A[1])};var ZWB=[];x9[98]=(A)=>{let Q=(A[0]<<24)+(A[1]<<16)+(A[2]<<8)+A[3],B=t;return t+=Q-A.length,kY=ZWB,kY=[sIA(),sIA()],kY.position0=0,kY.position1=0,kY.postBundlePosition=t,t=B,GY()};x9[255]=(A)=>{if(A.length==4)return new Date((A[0]*16777216+(A[1]<<16)+(A[2]<<8)+A[3])*1000);else if(A.length==8)return new Date(((A[0]<<22)+(A[1]<<14)+(A[2]<<6)+(A[3]>>2))/1e6+((A[3]&3)*4294967296+A[4]*16777216+(A[5]<<16)+(A[6]<<8)+A[7])*1000);else if(A.length==12)return new Date(((A[0]<<24)+(A[1]<<16)+(A[2]<<8)+A[3])/1e6+((A[4]&128?-281474976710656:0)+A[6]*1099511627776+A[7]*4294967296+A[8]*16777216+(A[9]<<16)+(A[10]<<8)+A[11])*1000);else return new Date("invalid")};function GHA(A){if(ym)ym();let Q=z8,B=t,Y=dD,J=M8,C=N5,X=mG,G=EZ,F=uG,W=kY,Z=new Uint8Array(_A.slice(0,z8)),U=DB,$=DB.slice(0,DB.length),E=eB,K=m7,I=A();return z8=Q,t=B,dD=Y,M8=J,N5=C,mG=X,EZ=G,uG=F,kY=W,_A=Z,m7=K,DB=U,DB.splice(0,DB.length,...$),eB=E,UB=new DataView(_A.buffer,_A.byteOffset,_A.byteLength),I}function vw(){_A=null,uG=null,DB=null}var VZ=Array(147);for(let A=0;A<256;A++)VZ[A]=+("1e"+Math.floor(45.15-A*0.30103));var hw=new dG({useRecords:!1}),$WB=hw.unpack,UWB=hw.unpackMultiple,EWB=hw.unpack,cD={NEVER:0,ALWAYS:1,DECIMAL_ROUND:3,DECIMAL_FIT:4},KWB=new Float32Array(1),CNY=new Uint8Array(KWB.buffer,0,4);function FHA(A,Q,B){_m=A,vm=Q,ym=B}var fw;try{fw=new TextEncoder}catch(A){}var dm,$HA,pD=typeof Buffer<"u",xw=pD?function(A){return Buffer.allocUnsafeSlow(A)}:Uint8Array,UHA=pD?Buffer:Uint8Array,WHA=pD?4294967296:2144337920,$A,lD,X0,BA=0,J9,v0=null,EHA,VWB=21760,IWB=/[\u0080-\uFFFF]/,n1=Symbol("record-id");class IZ extends dG{constructor(A){super(A);this.offset=0;let Q,B,Y,J,C,X=UHA.prototype.utf8Write?function(T,S){return $A.utf8Write(T,S,$A.byteLength-S)}:fw&&fw.encodeInto?function(T,S){return fw.encodeInto(T,$A.subarray(S)).written}:!1,G=this;if(!A)A={};let F=A&&A.sequential,W=A.structures||A.saveStructures,Z=A.maxSharedStructures;if(Z==null)Z=W?32:0;if(Z>8160)throw Error("Maximum maxSharedStructure is 8160");if(A.structuredClone&&A.moreTypes==null)this.moreTypes=!0;let U=A.maxOwnStructures;if(U==null)U=W?32:64;if(!this.structures&&A.useRecords!=!1)this.structures=[];let $=Z>32||U+Z>64,E=Z+64,K=Z+U+64;if(K>8256)throw Error("Maximum maxSharedStructure + maxOwnStructure is 8192");let I=[],V=0,H=0;this.pack=this.encode=function(T,S){if(!$A)$A=new xw(8192),X0=$A.dataView||($A.dataView=new DataView($A.buffer,0,8192)),BA=0;if(J9=$A.length-10,J9-BA<2048)$A=new xw($A.length),X0=$A.dataView||($A.dataView=new DataView($A.buffer,0,$A.length)),J9=$A.length-10,BA=0;else BA=BA+7&2147483640;if(B=BA,S&zWB)BA+=S&255;if(C=G.structuredClone?new Map:null,G.bundleStrings&&typeof T!=="string")v0=[],v0.size=1/0;else v0=null;if(J=G.structures,J){if(J.uninitialized)J=G._mergeStructures(G.getStructures());let y=J.sharedLength||0;if(y>Z)throw Error("Shared structures is larger than maximum shared structures, try increasing maxSharedStructures to "+J.sharedLength);if(!J.transitions){J.transitions=Object.create(null);for(let h=0;hp.offset>l.offset?1:-1),g=h.length,m=-1;while(y&&g>0){let p=h[--g].offset+B;if(py.position+B){if(m>=0)m+=6}else{if(m>=0)X0.setUint32(y.position+B,X0.getUint32(y.position+B)+m),m=-1;y=y.previous,g++}}if(m>=0&&y)X0.setUint32(y.position+B,X0.getUint32(y.position+B)+m);if(BA+=h.length*6,BA>J9)P(BA);G.offset=BA;let i=DWB($A.subarray(B,BA),h);return C=null,i}if(G.offset=BA,S&qWB)return $A.start=B,$A.end=BA,$A;return $A.subarray(B,BA)}catch(y){throw v=y,y}finally{if(J){if(D(),Y&&G.saveStructures){let y=J.sharedLength||0,h=$A.subarray(B,BA),g=KHA(J,G);if(!v){if(G.saveStructures(g,g.isCompatible)===!1)return G.pack(T,S);if(G.lastNamedStructuresLength=y,$A.length>1073741824)$A=null;return h}}}if($A.length>1073741824)$A=null;if(S&MWB)BA=B}};let D=()=>{if(H<10)H++;let T=J.sharedLength||0;if(J.length>T&&!F)J.length=T;if(V>1e4){if(J.transitions=null,H=0,V=0,I.length>0)I=[]}else if(I.length>0&&!F){for(let S=0,v=I.length;S{var S=T.length;if(S<16)$A[BA++]=144|S;else if(S<65536)$A[BA++]=220,$A[BA++]=S>>8,$A[BA++]=S&255;else $A[BA++]=221,X0.setUint32(BA,S),BA+=4;for(let v=0;v{if(BA>J9)$A=P(BA);var S=typeof T,v;if(S==="string"){let y=T.length;if(v0&&y>=4&&y<4096){if((v0.size+=y)>VWB){let i,p=(v0[0]?v0[0].length*3+v0[1].length:0)+10;if(BA+p>J9)$A=P(BA+p);let l;if(v0.position)l=v0,$A[BA]=200,BA+=3,$A[BA++]=98,i=BA-B,BA+=4,ZHA(B,z,0),X0.setUint16(i+B-3,BA-B-i);else $A[BA++]=214,$A[BA++]=98,i=BA-B,BA+=4;v0=["",""],v0.previous=l,v0.size=0,v0.position=i}let m=IWB.test(T);v0[m?0:1]+=T,$A[BA++]=193,z(m?-y:y);return}let h;if(y<32)h=1;else if(y<256)h=2;else if(y<65536)h=3;else h=5;let g=y*3;if(BA+g>J9)$A=P(BA+g);if(y<64||!X){let m,i,p,l=BA+h;for(m=0;m>6|192,$A[l++]=i&63|128;else if((i&64512)===55296&&((p=T.charCodeAt(m+1))&64512)===56320)i=65536+((i&1023)<<10)+(p&1023),m++,$A[l++]=i>>18|240,$A[l++]=i>>12&63|128,$A[l++]=i>>6&63|128,$A[l++]=i&63|128;else $A[l++]=i>>12|224,$A[l++]=i>>6&63|128,$A[l++]=i&63|128;v=l-BA-h}else v=X(T,BA+h);if(v<32)$A[BA++]=160|v;else if(v<256){if(h<2)$A.copyWithin(BA+2,BA+1,BA+1+v);$A[BA++]=217,$A[BA++]=v}else if(v<65536){if(h<3)$A.copyWithin(BA+3,BA+2,BA+2+v);$A[BA++]=218,$A[BA++]=v>>8,$A[BA++]=v&255}else{if(h<5)$A.copyWithin(BA+5,BA+3,BA+3+v);$A[BA++]=219,X0.setUint32(BA,v),BA+=4}BA+=v}else if(S==="number")if(T>>>0===T)if(T<32||T<128&&this.useRecords===!1||T<64&&!this.randomAccessStructure)$A[BA++]=T;else if(T<256)$A[BA++]=204,$A[BA++]=T;else if(T<65536)$A[BA++]=205,$A[BA++]=T>>8,$A[BA++]=T&255;else $A[BA++]=206,X0.setUint32(BA,T),BA+=4;else if(T>>0===T)if(T>=-32)$A[BA++]=256+T;else if(T>=-128)$A[BA++]=208,$A[BA++]=T+256;else if(T>=-32768)$A[BA++]=209,X0.setInt16(BA,T),BA+=2;else $A[BA++]=210,X0.setInt32(BA,T),BA+=4;else{let y;if((y=this.useFloat32)>0&&T<4294967296&&T>=-2147483648){$A[BA++]=202,X0.setFloat32(BA,T);let h;if(y<4||(h=T*VZ[($A[BA]&127)<<1|$A[BA+1]>>7])>>0===h){BA+=4;return}else BA--}$A[BA++]=203,X0.setFloat64(BA,T),BA+=8}else if(S==="object"||S==="function")if(!T)$A[BA++]=192;else{if(C){let h=C.get(T);if(h){if(!h.id){let g=C.idsToInsert||(C.idsToInsert=[]);h.id=g.push(h)}$A[BA++]=214,$A[BA++]=112,X0.setUint32(BA,h.id),BA+=4;return}else C.set(T,{offset:BA-B})}let y=T.constructor;if(y===Object)w(T);else if(y===Array)L(T);else if(y===Map)if(this.mapAsEmptyObject)$A[BA++]=128;else{if(v=T.size,v<16)$A[BA++]=128|v;else if(v<65536)$A[BA++]=222,$A[BA++]=v>>8,$A[BA++]=v&255;else $A[BA++]=223,X0.setUint32(BA,v),BA+=4;for(let[h,g]of T)z(h),z(g)}else{for(let h=0,g=dm.length;h{if($A=p,p=null,BA+=b,BA>J9)P(BA);return{target:$A,targetView:X0,position:BA-b}},z)}finally{if(p)$A=p,X0=l,BA=d,J9=$A.length-10}if(x){if(x.length+BA>J9)P(x.length+BA);BA=HWB(x,$A,BA,i.type)}return}}if(Array.isArray(T))L(T);else{if(T.toJSON){let h=T.toJSON();if(h!==T)return z(h)}if(S==="function")return z(this.writeFunction&&this.writeFunction(T));w(T)}}}else if(S==="boolean")$A[BA++]=T?195:194;else if(S==="bigint"){if(T<9223372036854776000&&T>=-9223372036854776000)$A[BA++]=211,X0.setBigInt64(BA,T);else if(T<18446744073709552000&&T>0)$A[BA++]=207,X0.setBigUint64(BA,T);else if(this.largeBigIntToFloat)$A[BA++]=203,X0.setFloat64(BA,Number(T));else if(this.largeBigIntToString)return z(T.toString());else if((this.useBigIntExtension||this.moreTypes)&&T-(BigInt(2)**BigInt(1023))){$A[BA++]=199,BA++,$A[BA++]=66;let y=[],h;do{let g=T&BigInt(255);h=(g&BigInt(128))===(T>=BigInt(8)}while(!((T===BigInt(0)||T===BigInt(-1))&&h));$A[BA-2]=y.length;for(let g=y.length;g>0;)$A[BA++]=Number(y[--g]);return}else throw RangeError(T+" was too large to fit in MessagePack 64-bit integer format, use useBigIntExtension, or set largeBigIntToFloat to convert to float-64, or set largeBigIntToString to convert to string");BA+=8}else if(S==="undefined")if(this.encodeUndefinedAsNil)$A[BA++]=192;else $A[BA++]=212,$A[BA++]=0,$A[BA++]=0;else throw Error("Unknown type: "+S)},M=this.variableMapSize||this.coercibleKeyAsNumber||this.skipValues?(T)=>{let S;if(this.skipValues){S=[];for(let h in T)if((typeof T.hasOwnProperty!=="function"||T.hasOwnProperty(h))&&!this.skipValues.includes(T[h]))S.push(h)}else S=Object.keys(T);let v=S.length;if(v<16)$A[BA++]=128|v;else if(v<65536)$A[BA++]=222,$A[BA++]=v>>8,$A[BA++]=v&255;else $A[BA++]=223,X0.setUint32(BA,v),BA+=4;let y;if(this.coercibleKeyAsNumber)for(let h=0;h{$A[BA++]=222;let S=BA-B;BA+=2;let v=0;for(let y in T)if(typeof T.hasOwnProperty!=="function"||T.hasOwnProperty(y))z(y),z(T[y]),v++;if(v>65535)throw Error('Object is too large to serialize with fast 16-bit map size, use the "variableMapSize" option to serialize this object');$A[S+++B]=v>>8,$A[S+B]=v&255},N=this.useRecords===!1?M:A.progressiveRecords&&!$?(T)=>{let S,v=J.transitions||(J.transitions=Object.create(null)),y=BA++-B,h;for(let g in T)if(typeof T.hasOwnProperty!=="function"||T.hasOwnProperty(g)){if(S=v[g],S)v=S;else{let m=Object.keys(T),i=v;v=J.transitions;let p=0;for(let l=0,d=m.length;l{let S,v=J.transitions||(J.transitions=Object.create(null)),y=0;for(let g in T)if(typeof T.hasOwnProperty!=="function"||T.hasOwnProperty(g)){if(S=v[g],!S)S=v[g]=Object.create(null),y++;v=S}let h=v[n1];if(h)if(h>=96&&$)$A[BA++]=((h-=96)&31)+96,$A[BA++]=h>>5;else $A[BA++]=h;else _(v,v.__keys__||Object.keys(T),y);for(let g in T)if(typeof T.hasOwnProperty!=="function"||T.hasOwnProperty(g))z(T[g])},q=typeof this.useRecords=="function"&&this.useRecords,w=q?(T)=>{q(T)?N(T):M(T)}:N,P=(T)=>{let S;if(T>16777216){if(T-B>WHA)throw Error("Packed buffer would be larger than maximum buffer size");S=Math.min(WHA,Math.round(Math.max((T-B)*(T>67108864?1.25:2),4194304)/4096)*4096)}else S=(Math.max(T-B<<2,$A.length-1)>>12)+1<<12;let v=new xw(S);if(X0=v.dataView||(v.dataView=new DataView(v.buffer,0,S)),T=Math.min(T,$A.length),$A.copy)$A.copy(v,0,B,T);else v.set($A.slice(B,T));return BA-=B,B=0,J9=v.length-10,$A=v},_=(T,S,v)=>{let y=J.nextId;if(!y)y=64;if(y=K)y=E;J.nextId=y+1}let h=S.highByte=y>=96&&$?y-96>>5:-1;if(T[n1]=y,T.__keys__=S,J[y-64]=S,y=0)$A[BA++]=(y&31)+96,$A[BA++]=h;else $A[BA++]=y;else{if(h>=0)$A[BA++]=213,$A[BA++]=114,$A[BA++]=(y&31)+96,$A[BA++]=h;else $A[BA++]=212,$A[BA++]=114,$A[BA++]=y;if(v)V+=H*v;if(I.length>=U)I.shift()[n1]=0;I.push(T),z(S)}},O=(T,S,v,y)=>{let h=$A,g=BA,m=J9,i=B;if($A=lD,BA=0,B=0,!$A)lD=$A=new xw(8192);J9=$A.length-10,_(T,S,y),lD=$A;let p=BA;if($A=h,BA=g,J9=m,B=i,p>1){let l=BA+p-1;if(l>J9)P(l);let d=v+B;$A.copyWithin(d+p,d+1,BA),$A.set(lD.slice(0,p),d),BA=l}else $A[v+B]=lD[0]},k=(T)=>{let S=EHA(T,$A,B,BA,J,P,(v,y,h)=>{if(h)return Y=!0;BA=y;let g=$A;if(z(v),D(),g!==$A)return{position:BA,targetView:X0,target:$A};return BA},this);if(S===0)return w(T);BA=S}}useBuffer(A){$A=A,$A.dataView||($A.dataView=new DataView($A.buffer,$A.byteOffset,$A.byteLength)),BA=0}set position(A){BA=A}get position(){return BA}clearSharedData(){if(this.structures)this.structures=[];if(this.typedStructs)this.typedStructs=[]}}$HA=[Date,Set,Error,RegExp,ArrayBuffer,Object.getPrototypeOf(Uint8Array.prototype).constructor,DataView,yw];dm=[{pack(A,Q,B){let Y=A.getTime()/1000;if((this.useTimestamp32||A.getMilliseconds()===0)&&Y>=0&&Y<4294967296){let{target:J,targetView:C,position:X}=Q(6);J[X++]=214,J[X++]=255,C.setUint32(X,Y)}else if(Y>0&&Y<4294967296){let{target:J,targetView:C,position:X}=Q(10);J[X++]=215,J[X++]=255,C.setUint32(X,A.getMilliseconds()*4000000+(Y/1000/4294967296>>0)),C.setUint32(X+4,Y)}else if(isNaN(Y)){if(this.onInvalidDate)return Q(0),B(this.onInvalidDate());let{target:J,targetView:C,position:X}=Q(3);J[X++]=212,J[X++]=255,J[X++]=255}else{let{target:J,targetView:C,position:X}=Q(15);J[X++]=199,J[X++]=12,J[X++]=255,C.setUint32(X,A.getMilliseconds()*1e6),C.setBigInt64(X+4,BigInt(Math.floor(Y)))}}},{pack(A,Q,B){if(this.setAsEmptyObject)return Q(0),B({});let Y=Array.from(A),{target:J,position:C}=Q(this.moreTypes?3:0);if(this.moreTypes)J[C++]=212,J[C++]=115,J[C++]=0;B(Y)}},{pack(A,Q,B){let{target:Y,position:J}=Q(this.moreTypes?3:0);if(this.moreTypes)Y[J++]=212,Y[J++]=101,Y[J++]=0;B([A.name,A.message,A.cause])}},{pack(A,Q,B){let{target:Y,position:J}=Q(this.moreTypes?3:0);if(this.moreTypes)Y[J++]=212,Y[J++]=120,Y[J++]=0;B([A.source,A.flags])}},{pack(A,Q){if(this.moreTypes)mm(A,16,Q);else um(pD?Buffer.from(A):new Uint8Array(A),Q)}},{pack(A,Q){let B=A.constructor;if(B!==UHA&&this.moreTypes)mm(A,bm.indexOf(B.name),Q);else um(A,Q)}},{pack(A,Q){if(this.moreTypes)mm(A,17,Q);else um(pD?Buffer.from(A):new Uint8Array(A),Q)}},{pack(A,Q){let{target:B,position:Y}=Q(1);B[Y]=193}}];function mm(A,Q,B,Y){let J=A.byteLength;if(J+1<256){var{target:C,position:X}=B(4+J);C[X++]=199,C[X++]=J+1}else if(J+1<65536){var{target:C,position:X}=B(5+J);C[X++]=200,C[X++]=J+1>>8,C[X++]=J+1&255}else{var{target:C,position:X,targetView:G}=B(7+J);C[X++]=201,G.setUint32(X,J+1),X+=4}if(C[X++]=116,C[X++]=Q,!A.buffer)A=new Uint8Array(A);C.set(new Uint8Array(A.buffer,A.byteOffset,A.byteLength),X)}function um(A,Q){let B=A.byteLength;var Y,J;if(B<256){var{target:Y,position:J}=Q(B+2);Y[J++]=196,Y[J++]=B}else if(B<65536){var{target:Y,position:J}=Q(B+3);Y[J++]=197,Y[J++]=B>>8,Y[J++]=B&255}else{var{target:Y,position:J,targetView:C}=Q(B+5);Y[J++]=198,C.setUint32(J,B),J+=4}Y.set(A,J)}function HWB(A,Q,B,Y){let J=A.length;switch(J){case 1:Q[B++]=212;break;case 2:Q[B++]=213;break;case 4:Q[B++]=214;break;case 8:Q[B++]=215;break;case 16:Q[B++]=216;break;default:if(J<256)Q[B++]=199,Q[B++]=J;else if(J<65536)Q[B++]=200,Q[B++]=J>>8,Q[B++]=J&255;else Q[B++]=201,Q[B++]=J>>24,Q[B++]=J>>16&255,Q[B++]=J>>8&255,Q[B++]=J&255}return Q[B++]=Y,Q.set(A,B),B+=J,B}function DWB(A,Q){let B,Y=Q.length*6,J=A.length-Y;while(B=Q.pop()){let{offset:C,id:X}=B;A.copyWithin(C+Y,C,J),Y-=6;let G=C+Y;A[G++]=214,A[G++]=105,A[G++]=X>>24,A[G++]=X>>16&255,A[G++]=X>>8&255,A[G++]=X&255,J=C}return A}function ZHA(A,Q,B){if(v0.length>0){X0.setUint32(v0.position+A,BA+B-v0.position-A),v0.stringsPosition=BA-A;let Y=v0;v0=null,Q(Y[0]),Q(Y[1])}}function KHA(A,Q){return A.isCompatible=(B)=>{let Y=!B||(Q.lastNamedStructuresLength||0)===B.length;if(!Y)Q._mergeStructures(B);return Y},A}function VHA(A,Q){EHA=A,KHA=Q}var IHA=new IZ({useRecords:!1}),NWB=IHA.pack,LWB=IHA.pack;var qWB=512,MWB=1024,zWB=2048;var cm=3,NE=0,iD=2,bw=1,pm=16,DHA=["num","object","string","ascii"];DHA[pm]="date";var wWB=[!1,!0,!0,!1,!1,!0,!0,!1],NHA;try{Function(""),NHA=!0}catch(A){}var HZ,jWB=typeof Buffer<"u",mw,s1;try{mw=new TextEncoder}catch(A){}var OWB=jWB?function(A,Q,B){return A.utf8Write(Q,B,A.byteLength-B)}:mw&&mw.encodeInto?function(A,Q,B){return mw.encodeInto(Q,A.subarray(B)).written}:!1,KNY=Symbol("type"),VNY=Symbol("parent");VHA(LHA,_WB);function LHA(A,Q,B,Y,J,C,X,G){let F=G.typedStructs||(G.typedStructs=[]),W=Q.dataView,Z=(F.lastStringStart||100)+Y,U=Q.length-10,$=Y;if(Y>U)Q=C(Y),W=Q.dataView,Y-=B,$-=B,Z-=B,B=0,U=Q.length-10;let E,K=Z,I=F.transitions||(F.transitions=Object.create(null)),V=F.nextId||F.length,H=V<15?1:V<240?2:V<61440?3:V<15728640?4:0;if(H===0)return 0;Y+=H;let D=[],L,z=0;for(let N in A){let q=A[N],w=I[N];if(!w)I[N]=w={key:N,parent:I,enumerationOffset:0,ascii0:null,ascii8:null,num8:null,string16:null,object16:null,num32:null,float64:null,date64:null};if(Y>U)Q=C(Y),W=Q.dataView,Y-=B,$-=B,Z-=B,K-=B,B=0,U=Q.length-10;switch(typeof q){case"number":let P=q;if(V<200||!w.num64){if(P>>0===P&&P<536870912&&P>-520093696){if(P<246&&P>=0&&(w.num8&&!(V>200&&w.num32)||P<32&&!w.num32))I=w.num8||f9(w,NE,1),Q[Y++]=P;else I=w.num32||f9(w,NE,4),W.setUint32(Y,P,!0),Y+=4;break}else if(P<4294967296&&P>=-2147483648){if(W.setFloat32(Y,P,!0),wWB[Q[Y+3]>>>5]){let T;if((T=P*VZ[(Q[Y+3]&127)<<1|Q[Y+2]>>7])>>0===T){I=w.num32||f9(w,NE,4),Y+=4;break}}}}I=w.num64||f9(w,NE,8),W.setFloat64(Y,P,!0),Y+=8;break;case"string":let _=q.length;if(E=K-Z,(_<<2)+K>U)Q=C((_<<2)+K),W=Q.dataView,Y-=B,$-=B,Z-=B,K-=B,B=0,U=Q.length-10;if(_>65280+E>>2){D.push(N,q,Y-$);break}let O,k=K;if(_<64){let T,S,v;for(T=0;T<_;T++)if(S=q.charCodeAt(T),S<128)Q[K++]=S;else if(S<2048)O=!0,Q[K++]=S>>6|192,Q[K++]=S&63|128;else if((S&64512)===55296&&((v=q.charCodeAt(T+1))&64512)===56320)O=!0,S=65536+((S&1023)<<10)+(v&1023),T++,Q[K++]=S>>18|240,Q[K++]=S>>12&63|128,Q[K++]=S>>6&63|128,Q[K++]=S&63|128;else O=!0,Q[K++]=S>>12|224,Q[K++]=S>>6&63|128,Q[K++]=S&63|128}else K+=OWB(Q,q,K),O=K-k>_;if(E<160||E<246&&(w.ascii8||w.string8)){if(O){if(!(I=w.string8))if(F.length>10&&(I=w.ascii8))I.__type=iD,w.ascii8=null,w.string8=I,X(null,0,!0);else I=f9(w,iD,1)}else if(E===0&&!L){L=!0,I=w.ascii0||f9(w,cm,0);break}else if(!(I=w.ascii8)&&!(F.length>10&&(I=w.string8)))I=f9(w,cm,1);Q[Y++]=E}else I=w.string16||f9(w,iD,2),W.setUint16(Y,E,!0),Y+=2;break;case"object":if(q){if(q.constructor===Date)I=w.date64||f9(w,pm,8),W.setFloat64(Y,q.getTime(),!0),Y+=8;else D.push(N,q,z);break}else if(w=HHA(w,Y,W,-10),w)I=w,Y=HZ;else D.push(N,q,z);break;case"boolean":I=w.num8||w.ascii8||f9(w,NE,1),Q[Y++]=q?249:248;break;case"undefined":if(w=HHA(w,Y,W,-9),w)I=w,Y=HZ;else D.push(N,q,z);break;default:D.push(N,q,z)}z++}for(let N=0,q=D.length;N=16)return 0;Q[$]=M+32;break;case 2:if(M>=256)return 0;Q[$]=56,Q[$+1]=M;break;case 3:if(M>=65536)return 0;Q[$]=57,W.setUint16($+1,M,!0);break;case 4:if(M>=16777216)return 0;W.setUint32($,(M<<8)+58,!0);break}if(YZ){if(Z===K)return Y;return F.lastStringStart=Y-$,LHA(A,Q,B,$,J,C,X,G)}return K}function HHA(A,Q,B,Y){let J;if(J=A.ascii8||A.num8)return B.setInt8(Q,Y,!0),HZ=Q+1,J;if(J=A.string16||A.object16)return B.setInt16(Q,Y,!0),HZ=Q+2,J;if(J=A.num32)return B.setUint32(Q,3758096640+Y,!0),HZ=Q+4,J;if(J=A.num64)return B.setFloat64(Q,NaN,!0),B.setInt8(Q,Y),HZ=Q+8,J;HZ=Q;return}function f9(A,Q,B){let Y=DHA[Q]+(B<<3),J=A[Y]||(A[Y]=Object.create(null));return J.__type=Q,J.__size=B,J.__parent=A,J}function PWB(A){if(!(A instanceof Map))return A;let Q=A.get("typed")||[];if(Object.isFrozen(Q))Q=Q.map((J)=>J.slice(0));let B=A.get("named"),Y=Object.create(null);for(let J=0,C=Q.length;J=24)switch(J){case 24:J=A[Q++];break;case 25:J=A[Q++]+(A[Q++]<<8);break;case 26:J=A[Q++]+(A[Q++]<<8)+(A[Q++]<<16);break;case 27:J=A[Q++]+(A[Q++]<<8)+(A[Q++]<<16)+(A[Q++]<<24);break}let C=Y.typedStructs&&Y.typedStructs[J];if(!C){if(A=Uint8Array.prototype.slice.call(A,Q,B),B-=Q,Q=0,!Y.getStructures)throw Error(`Reference to shared structure ${J} without getStructures method`);if(Y._mergeStructures(Y.getStructures()),!Y.typedStructs)throw Error("Could not find any shared typed structures");if(Y.lastTypedStructuresLength=Y.typedStructs.length,C=Y.typedStructs[J],!C)throw Error("Could not find typed structure "+J)}var{construct:X,fullConstruct:G}=C;if(!X){X=C.construct=function(){},G=C.fullConstruct=function(){},G.prototype=Y.structPrototype??{};var F=X.prototype=Y.structPrototype?Object.create(Y.structPrototype):{};let Z=[],U=0,$;for(let E=0,K=C.length;E0;break;case 1:M=(q,w)=>{let P=q.bytes[w+z.offset];return P>=246?DE(P):P};break;case 2:M=(q,w)=>{let P=q.bytes,O=(P.dataView||(P.dataView=new DataView(P.buffer,P.byteOffset,P.byteLength))).getUint16(w+z.offset,!0);return O>=65280?DE(O&255):O};break;case 4:M=(q,w)=>{let P=q.bytes,O=(P.dataView||(P.dataView=new DataView(P.buffer,P.byteOffset,P.byteLength))).getUint32(w+z.offset,!0);return O>=4294967040?DE(O&255):O};break}z.getRef=M,U+=H;let N;switch(V){case cm:if($&&!$.next)$.next=z;$=z,z.multiGetCount=0,N=function(q){let{bytes:w,position:P}=q,_=U+P,O=M(q,P);if(typeof O!=="number")return O;let k,T=z.next;while(T){if(k=T.getRef(q,P),typeof k==="number")break;else k=null;T=T.next}if(k==null)k=q.bytesEnd-_;if(q.srcString)return q.srcString.slice(O,k);return YHA(w,O+_,k-O)};break;case iD:case bw:if($&&!$.next)$.next=z;$=z,N=function(q){let w=q.position,P=U+w,_=M(q,w);if(typeof _!=="number")return _;let O=q.bytes,k,T=z.next;while(T){if(k=T.getRef(q,w),typeof k==="number")break;else k=null;T=T.next}if(k==null)k=q.bytesEnd-P;if(V===iD)return O.toString("utf8",_+P,k+P);else{s1=q;try{return Y.unpack(O,{start:_+P,end:k+P})}finally{s1=null}}};break;case NE:switch(H){case 4:N=function(q){let w=q.bytes,P=w.dataView||(w.dataView=new DataView(w.buffer,w.byteOffset,w.byteLength)),_=q.position+z.offset,O=P.getInt32(_,!0);if(O<536870912){if(O>-520093696)return O;if(O>-536870912)return DE(O&255)}let k=P.getFloat32(_,!0),T=VZ[(w[_+3]&127)<<1|w[_+2]>>7];return(T*k+(k>0?0.5:-0.5)>>0)/T};break;case 8:N=function(q){let w=q.bytes,_=(w.dataView||(w.dataView=new DataView(w.buffer,w.byteOffset,w.byteLength))).getFloat64(q.position+z.offset,!0);if(isNaN(_)){let O=w[q.position+z.offset];if(O>=246)return DE(O)}return _};break;case 1:N=function(q){let P=q.bytes[q.position+z.offset];return P<246?P:DE(P)};break}break;case pm:N=function(q){let w=q.bytes,P=w.dataView||(w.dataView=new DataView(w.buffer,w.byteOffset,w.byteLength));return new Date(P.getFloat64(q.position+z.offset,!0))};break}z.get=N}if(NHA){let E=[],K=[],I=0,V;for(let D of Z){if(Y.alwaysLazyProperty&&Y.alwaysLazyProperty(D.key)){V=!0;continue}Object.defineProperty(F,D.key,{get:SWB(D.get),enumerable:!0});let L="v"+I++;K.push(L),E.push("o["+JSON.stringify(D.key)+"]="+L+"(s)")}if(V)E.push("__proto__:this");let H=Function(...K,"var c=this;return function(s){var o=new c();"+E.join(";")+";return o;}").apply(G,Z.map((D)=>D.get));Object.defineProperty(F,"toJSON",{value(D){return H.call(this,this[lm])}})}else Object.defineProperty(F,"toJSON",{value(E){let K={};for(let I=0,V=Z.length;I{let J=!0;if(Y instanceof Map){if((Y.get("named")||[]).length!==(Q.lastNamedStructuresLength||0))J=!1;if((Y.get("typed")||[]).length!==B)J=!1}else if(Y instanceof Array||Array.isArray(Y)){if(Y.length!==(Q.lastNamedStructuresLength||0))J=!1}if(!J)Q._mergeStructures(Y);return J},Q.lastTypedStructuresLength=Q.typedStructs&&Q.typedStructs.length,A}FHA(TWB,PWB,kWB);var cWB=process.env.MSGPACKR_NATIVE_ACCELERATION_DISABLED!==void 0&&process.env.MSGPACKR_NATIVE_ACCELERATION_DISABLED.toLowerCase()==="true";if(!cWB){let A;try{if(A=xHA(),A)BHA(A.extractStrings)}catch(Q){}}var Ls={};x6(Ls,{zodErrorsIntegration:()=>Ld,wrapMcpServerWithSentry:()=>wd,withScope:()=>O8,withMonitor:()=>o1,withIsolationScope:()=>nG,withActiveSpan:()=>t7,vercelAIIntegration:()=>KT,validateOpenTelemetrySetup:()=>Ns,updateSpanName:()=>Ku,trpcMiddleware:()=>Md,tediousIntegration:()=>FT,suppressTracing:()=>FN,supabaseIntegration:()=>Nd,startSpanManual:()=>GN,startSpan:()=>w5,startSession:()=>KN,startNewTrace:()=>yu,startInactiveSpan:()=>_u,spotlightIntegration:()=>YT,spanToTraceHeader:()=>tD,spanToJSON:()=>eA,spanToBaggageHeader:()=>Mu,setupKoaErrorHandler:()=>eHQ,setupHapiErrorHandler:()=>OHQ,setupFastifyErrorHandler:()=>mUQ,setupExpressErrorHandler:()=>s4Q,setupConnectErrorHandler:()=>MDQ,setUser:()=>lu,setTags:()=>du,setTag:()=>cu,setNodeAsyncContextStrategy:()=>nO,setMeasurement:()=>Su,setHttpStatus:()=>OE,setExtras:()=>mu,setExtra:()=>uu,setCurrentClient:()=>Jd,setContext:()=>bu,rewriteFramesIntegration:()=>Dd,requestDataIntegration:()=>DN,redisIntegration:()=>uP,profiler:()=>qd,prismaIntegration:()=>nP,preloadOpenTelemetry:()=>_LQ,postgresIntegration:()=>pP,parameterize:()=>Vj,onUnhandledRejectionIntegration:()=>$P,onUncaughtExceptionIntegration:()=>ZP,nodeContextIntegration:()=>JP,nativeNodeFetchIntegration:()=>QP,mysqlIntegration:()=>xP,mysql2Integration:()=>bP,mongooseIntegration:()=>gP,mongoIntegration:()=>vP,modulesIntegration:()=>WP,makeNodeTransport:()=>qT,lruMemoizerIntegration:()=>_P,logger:()=>Td,localVariablesIntegration:()=>FP,linkedErrorsIntegration:()=>HN,lastEventId:()=>pu,koaIntegration:()=>AT,knexIntegration:()=>pDQ,kafkaIntegration:()=>kP,isInitialized:()=>yE,instrumentSupabaseClient:()=>qj,initWithoutDefaultIntegrations:()=>yLQ,initOpenTelemetry:()=>jT,init:()=>OT,inboundFiltersIntegration:()=>IN,httpIntegration:()=>oO,hapiIntegration:()=>oP,graphqlIntegration:()=>SP,getTraceMetaTags:()=>Fd,getTraceData:()=>aG,getSpanStatusFromHttpCode:()=>jE,getSpanDescendants:()=>eD,getSentryRelease:()=>RT,getRootSpan:()=>$0,getIsolationScope:()=>RQ,getGlobalScope:()=>iG,getDefaultIntegrationsWithoutPerformance:()=>Hs,getDefaultIntegrations:()=>Ds,getCurrentScope:()=>sQ,getClient:()=>gA,getAutoPerformanceIntegrations:()=>DT,getActiveSpan:()=>pC,genericPoolIntegration:()=>WT,generateInstrumentOnce:()=>EQ,functionToStringIntegration:()=>VN,fsIntegration:()=>s$Q,flush:()=>iu,fastifyIntegration:()=>jP,extraErrorDataIntegration:()=>Ed,expressIntegration:()=>HP,expressErrorHandler:()=>mi,eventFiltersIntegration:()=>Hj,endSession:()=>SZ,disableAnrDetectionForCallback:()=>E4Q,defaultStackParser:()=>wT,dedupeIntegration:()=>Ud,dataloaderIntegration:()=>hNQ,cron:()=>mLQ,createTransport:()=>gE,createSentryWinstonTransport:()=>GLQ,createGetModuleFromFilename:()=>zT,continueTrace:()=>vu,contextLinesIntegration:()=>CP,consoleLoggingIntegration:()=>Od,consoleIntegration:()=>NN,connectIntegration:()=>BT,close:()=>nu,childProcessIntegration:()=>VT,captureSession:()=>ru,captureMessage:()=>vE,captureFeedback:()=>jd,captureException:()=>jB,captureEvent:()=>UN,captureConsoleIntegration:()=>$d,captureCheckIn:()=>$N,anrIntegration:()=>U4Q,amqplibIntegration:()=>UT,addIntegration:()=>eu,addEventProcessor:()=>su,addBreadcrumb:()=>X9,SentryContextManager:()=>HT,Scope:()=>XJ,SEMANTIC_ATTRIBUTE_SENTRY_SOURCE:()=>A0,SEMANTIC_ATTRIBUTE_SENTRY_SAMPLE_RATE:()=>R5,SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN:()=>DQ,SEMANTIC_ATTRIBUTE_SENTRY_OP:()=>BQ,SDK_VERSION:()=>u0,NodeClient:()=>dL});var Td={};x6(Td,{warn:()=>R4B,trace:()=>q4B,info:()=>z4B,fmt:()=>Xd,fatal:()=>j4B,error:()=>w4B,debug:()=>M4B});import{format as L4B}from"node:util";var OA=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__;var u0="9.22.0";var AQ=globalThis;function zJ(){return u7(AQ),AQ}function u7(A){let Q=A.__SENTRY__=A.__SENTRY__||{};return Q.version=Q.version||u0,Q[u0]=Q[u0]||{}}function DZ(A,Q,B=AQ){let Y=B.__SENTRY__=B.__SENTRY__||{},J=Y[u0]=Y[u0]||{};return J[A]||(J[A]=Q())}var fHA=Object.prototype.toString;function mC(A){switch(fHA.call(A)){case"[object Error]":case"[object Exception]":case"[object DOMException]":case"[object WebAssembly.Exception]":return!0;default:return cG(A,Error)}}function cw(A,Q){return fHA.call(A)===`[object ${Q}]`}function bHA(A){return cw(A,"ErrorEvent")}function NZ(A){return cw(A,"String")}function LZ(A){return typeof A==="object"&&A!==null&&"__sentry_template_string__"in A&&"__sentry_template_values__"in A}function nD(A){return A===null||LZ(A)||typeof A!=="object"&&typeof A!=="function"}function L5(A){return cw(A,"Object")}function mHA(A){return typeof Event<"u"&&cG(A,Event)}function uHA(A){return typeof Element<"u"&&cG(A,Element)}function dHA(A){return cw(A,"RegExp")}function q5(A){return Boolean(A?.then&&typeof A.then==="function")}function cHA(A){return L5(A)&&"nativeEvent"in A&&"preventDefault"in A&&"stopPropagation"in A}function cG(A,Q){try{return A instanceof Q}catch(B){return!1}}function lw(A){return!!(typeof A==="object"&&A!==null&&(A.__isVue||A._isVue))}var lWB=AQ,pWB=80;function lHA(A,Q={}){if(!A)return"";try{let B=A,Y=5,J=[],C=0,X=0,G=" > ",F=G.length,W,Z=Array.isArray(Q)?Q:Q.keyAttrs,U=!Array.isArray(Q)&&Q.maxStringLength||pWB;while(B&&C++1&&X+J.length*F+W.length>=U)break;J.push(W),X+=W.length,B=B.parentNode}return J.reverse().join(G)}catch(B){return""}}function iWB(A,Q){let B=A,Y=[];if(!B?.tagName)return"";if(lWB.HTMLElement){if(B instanceof HTMLElement&&B.dataset){if(B.dataset.sentryComponent)return B.dataset.sentryComponent;if(B.dataset.sentryElement)return B.dataset.sentryElement}}Y.push(B.tagName.toLowerCase());let J=Q?.length?Q.filter((X)=>B.getAttribute(X)).map((X)=>[X,B.getAttribute(X)]):null;if(J?.length)J.forEach((X)=>{Y.push(`[${X[0]}="${X[1]}"]`)});else{if(B.id)Y.push(`#${B.id}`);let X=B.className;if(X&&NZ(X)){let G=X.split(/\s+/);for(let F of G)Y.push(`.${F}`)}}let C=["aria-label","type","name","title","alt"];for(let X of C){let G=B.getAttribute(X);if(G)Y.push(`[${X}="${G}"]`)}return Y.join("")}var nWB="Sentry Logger ",uC=["debug","info","warn","error","log","assert","trace"],LE={};function y0(A){if(!("console"in AQ))return A();let Q=AQ.console,B={},Y=Object.keys(LE);Y.forEach((J)=>{let C=LE[J];B[J]=Q[J],Q[J]=C});try{return A()}finally{Y.forEach((J)=>{Q[J]=B[J]})}}function sWB(){let A=!1,Q={enable:()=>{A=!0},disable:()=>{A=!1},isEnabled:()=>A};if(OA)uC.forEach((B)=>{Q[B]=(...Y)=>{if(A)y0(()=>{AQ.console[B](`${nWB}[${B}]:`,...Y)})}});else uC.forEach((B)=>{Q[B]=()=>{return}});return Q}var e=DZ("logger",sWB);function b9(A,Q=0){if(typeof A!=="string"||Q===0)return A;return A.length<=Q?A:`${A.slice(0,Q)}...`}function em(A,Q){let B=A,Y=B.length;if(Y<=150)return B;if(Q>Y)Q=Y;let J=Math.max(Q-60,0);if(J<5)J=0;let C=Math.min(J+140,Y);if(C>Y-5)C=Y;if(C===Y)J=Math.max(C-140,0);if(B=B.slice(J,C),J>0)B=`'{snip} ${B}`;if(CpHA(A,Y,B))}function Au(A,Q,B){if(!(Q in A))return;let Y=A[Q];if(typeof Y!=="function")return;let J=B(Y);if(typeof J==="function")sHA(J,Y);try{A[Q]=J}catch{OA&&e.log(`Failed to replace method "${Q}" in object`,A)}}function d0(A,Q,B){try{Object.defineProperty(A,Q,{value:B,writable:!0,configurable:!0})}catch(Y){OA&&e.log(`Failed to add non-enumerable property "${Q}" to object`,A)}}function sHA(A,Q){try{let B=Q.prototype||{};A.prototype=Q.prototype=B,d0(A,"__sentry_original__",Q)}catch(B){}}function Qu(A){return A.__sentry_original__}function pw(A){if(mC(A))return{message:A.message,name:A.name,stack:A.stack,...nHA(A)};else if(mHA(A)){let Q={type:A.type,target:iHA(A.target),currentTarget:iHA(A.currentTarget),...nHA(A)};if(typeof CustomEvent<"u"&&cG(A,CustomEvent))Q.detail=A.detail;return Q}else return A}function iHA(A){try{return uHA(A)?lHA(A):Object.prototype.toString.call(A)}catch(Q){return""}}function nHA(A){if(typeof A==="object"&&A!==null){let Q={};for(let B in A)if(Object.prototype.hasOwnProperty.call(A,B))Q[B]=A[B];return Q}else return{}}function Bu(A,Q=40){let B=Object.keys(pw(A));B.sort();let Y=B[0];if(!Y)return"[object has no keys]";if(Y.length>=Q)return b9(Y,Q);for(let J=B.length;J>0;J--){let C=B.slice(0,J).join(", ");if(C.length>Q)continue;if(J===B.length)return C;return b9(C,Q)}return""}function rWB(){let A=AQ;return A.crypto||A.msCrypto}function FY(A=rWB()){let Q=()=>Math.random()*16;try{if(A?.randomUUID)return A.randomUUID().replace(/-/g,"");if(A?.getRandomValues)Q=()=>{let B=new Uint8Array(1);return A.getRandomValues(B),B[0]}}catch(B){}return([1e7]+1000+4000+8000+100000000000).replace(/[018]/g,(B)=>(B^(Q()&15)>>B/4).toString(16))}function rHA(A){return A.exception?.values?.[0]}function l7(A){let{message:Q,event_id:B}=A;if(Q)return Q;let Y=rHA(A);if(Y){if(Y.type&&Y.value)return`${Y.type}: ${Y.value}`;return Y.type||Y.value||B||""}return B||""}function Ju(A,Q,B){let Y=A.exception=A.exception||{},J=Y.values=Y.values||[],C=J[0]=J[0]||{};if(!C.value)C.value=Q||"";if(!C.type)C.type=B||"Error"}function p7(A,Q){let B=rHA(A);if(!B)return;let Y={type:"generic",handled:!0},J=B.mechanism;if(B.mechanism={...Y,...J,...Q},Q&&"data"in Q){let C={...J?.data,...Q.data};B.mechanism.data=C}}var aWB=/^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/;function Yu(A){return parseInt(A||"",10)}function Cu(A){let Q=A.match(aWB)||[],B=Yu(Q[1]),Y=Yu(Q[2]),J=Yu(Q[3]);return{buildmetadata:Q[5],major:isNaN(B)?void 0:B,minor:isNaN(Y)?void 0:Y,patch:isNaN(J)?void 0:J,prerelease:Q[4]}}function iw(A){if(oWB(A))return!0;try{d0(A,"__sentry_captured__",!0)}catch(Q){}return!1}function oWB(A){try{return A.__sentry_captured__}catch{}}var aHA=1000;function lG(){return Date.now()/aHA}function tWB(){let{performance:A}=AQ;if(!A?.now)return lG;let Q=Date.now()-A.now(),B=A.timeOrigin==null?Q:A.timeOrigin;return()=>{return(B+A.now())/aHA}}var R8=tWB();function oHA(A){let Q=R8(),B={sid:FY(),init:!0,timestamp:Q,started:Q,duration:0,status:"ok",errors:0,ignoreDuration:!1,toJSON:()=>eWB(B)};if(A)pG(B,A);return B}function pG(A,Q={}){if(Q.user){if(!A.ipAddress&&Q.user.ip_address)A.ipAddress=Q.user.ip_address;if(!A.did&&!Q.did)A.did=Q.user.id||Q.user.email||Q.user.username}if(A.timestamp=Q.timestamp||R8(),Q.abnormal_mechanism)A.abnormal_mechanism=Q.abnormal_mechanism;if(Q.ignoreDuration)A.ignoreDuration=Q.ignoreDuration;if(Q.sid)A.sid=Q.sid.length===32?Q.sid:FY();if(Q.init!==void 0)A.init=Q.init;if(!A.did&&Q.did)A.did=`${Q.did}`;if(typeof Q.started==="number")A.started=Q.started;if(A.ignoreDuration)A.duration=void 0;else if(typeof Q.duration==="number")A.duration=Q.duration;else{let B=A.timestamp-A.started;A.duration=B>=0?B:0}if(Q.release)A.release=Q.release;if(Q.environment)A.environment=Q.environment;if(!A.ipAddress&&Q.ipAddress)A.ipAddress=Q.ipAddress;if(!A.userAgent&&Q.userAgent)A.userAgent=Q.userAgent;if(typeof Q.errors==="number")A.errors=Q.errors;if(Q.status)A.status=Q.status}function tHA(A,Q){let B={};if(Q)B={status:Q};else if(A.status==="ok")B={status:"exited"};pG(A,B)}function eWB(A){return{sid:`${A.sid}`,init:A.init,started:new Date(A.started*1000).toISOString(),timestamp:new Date(A.timestamp*1000).toISOString(),status:A.status,errors:A.errors,did:typeof A.did==="number"||typeof A.did==="string"?`${A.did}`:void 0,duration:A.duration,abnormal_mechanism:A.abnormal_mechanism,attrs:{release:A.release,environment:A.environment,ip_address:A.ipAddress,user_agent:A.userAgent}}}function i7(A,Q,B=2){if(!Q||typeof Q!=="object"||B<=0)return Q;if(A&&Object.keys(Q).length===0)return A;let Y={...A};for(let J in Q)if(Object.prototype.hasOwnProperty.call(Q,J))Y[J]=i7(Y[J],Q[J],B-1);return Y}var Xu="_sentrySpan";function qZ(A,Q){if(Q)d0(A,Xu,Q);else delete A[Xu]}function dC(A){return A[Xu]}function w8(){return FY()}function j8(){return FY().substring(16)}var AZB=100;class XJ{constructor(){this._notifyingListeners=!1,this._scopeListeners=[],this._eventProcessors=[],this._breadcrumbs=[],this._attachments=[],this._user={},this._tags={},this._extra={},this._contexts={},this._sdkProcessingMetadata={},this._propagationContext={traceId:w8(),sampleRand:Math.random()}}clone(){let A=new XJ;if(A._breadcrumbs=[...this._breadcrumbs],A._tags={...this._tags},A._extra={...this._extra},A._contexts={...this._contexts},this._contexts.flags)A._contexts.flags={values:[...this._contexts.flags.values]};return A._user=this._user,A._level=this._level,A._session=this._session,A._transactionName=this._transactionName,A._fingerprint=this._fingerprint,A._eventProcessors=[...this._eventProcessors],A._attachments=[...this._attachments],A._sdkProcessingMetadata={...this._sdkProcessingMetadata},A._propagationContext={...this._propagationContext},A._client=this._client,A._lastEventId=this._lastEventId,qZ(A,dC(this)),A}setClient(A){this._client=A}setLastEventId(A){this._lastEventId=A}getClient(){return this._client}lastEventId(){return this._lastEventId}addScopeListener(A){this._scopeListeners.push(A)}addEventProcessor(A){return this._eventProcessors.push(A),this}setUser(A){if(this._user=A||{email:void 0,id:void 0,ip_address:void 0,username:void 0},this._session)pG(this._session,{user:A});return this._notifyScopeListeners(),this}getUser(){return this._user}setTags(A){return this._tags={...this._tags,...A},this._notifyScopeListeners(),this}setTag(A,Q){return this._tags={...this._tags,[A]:Q},this._notifyScopeListeners(),this}setExtras(A){return this._extra={...this._extra,...A},this._notifyScopeListeners(),this}setExtra(A,Q){return this._extra={...this._extra,[A]:Q},this._notifyScopeListeners(),this}setFingerprint(A){return this._fingerprint=A,this._notifyScopeListeners(),this}setLevel(A){return this._level=A,this._notifyScopeListeners(),this}setTransactionName(A){return this._transactionName=A,this._notifyScopeListeners(),this}setContext(A,Q){if(Q===null)delete this._contexts[A];else this._contexts[A]=Q;return this._notifyScopeListeners(),this}setSession(A){if(!A)delete this._session;else this._session=A;return this._notifyScopeListeners(),this}getSession(){return this._session}update(A){if(!A)return this;let Q=typeof A==="function"?A(this):A,B=Q instanceof XJ?Q.getScopeData():L5(Q)?A:void 0,{tags:Y,extra:J,user:C,contexts:X,level:G,fingerprint:F=[],propagationContext:W}=B||{};if(this._tags={...this._tags,...Y},this._extra={...this._extra,...J},this._contexts={...this._contexts,...X},C&&Object.keys(C).length)this._user=C;if(G)this._level=G;if(F.length)this._fingerprint=F;if(W)this._propagationContext=W;return this}clear(){return this._breadcrumbs=[],this._tags={},this._extra={},this._user={},this._contexts={},this._level=void 0,this._transactionName=void 0,this._fingerprint=void 0,this._session=void 0,qZ(this,void 0),this._attachments=[],this.setPropagationContext({traceId:w8(),sampleRand:Math.random()}),this._notifyScopeListeners(),this}addBreadcrumb(A,Q){let B=typeof Q==="number"?Q:AZB;if(B<=0)return this;let Y={timestamp:lG(),...A,message:A.message?b9(A.message,2048):A.message};if(this._breadcrumbs.push(Y),this._breadcrumbs.length>B)this._breadcrumbs=this._breadcrumbs.slice(-B),this._client?.recordDroppedEvent("buffer_overflow","log_item");return this._notifyScopeListeners(),this}getLastBreadcrumb(){return this._breadcrumbs[this._breadcrumbs.length-1]}clearBreadcrumbs(){return this._breadcrumbs=[],this._notifyScopeListeners(),this}addAttachment(A){return this._attachments.push(A),this}clearAttachments(){return this._attachments=[],this}getScopeData(){return{breadcrumbs:this._breadcrumbs,attachments:this._attachments,contexts:this._contexts,tags:this._tags,extra:this._extra,user:this._user,level:this._level,fingerprint:this._fingerprint||[],eventProcessors:this._eventProcessors,propagationContext:this._propagationContext,sdkProcessingMetadata:this._sdkProcessingMetadata,transactionName:this._transactionName,span:dC(this)}}setSDKProcessingMetadata(A){return this._sdkProcessingMetadata=i7(this._sdkProcessingMetadata,A,2),this}setPropagationContext(A){return this._propagationContext=A,this}getPropagationContext(){return this._propagationContext}captureException(A,Q){let B=Q?.event_id||FY();if(!this._client)return e.warn("No client configured on scope - will not capture exception!"),B;let Y=Error("Sentry syntheticException");return this._client.captureException(A,{originalException:A,syntheticException:Y,...Q,event_id:B},this),B}captureMessage(A,Q,B){let Y=B?.event_id||FY();if(!this._client)return e.warn("No client configured on scope - will not capture message!"),Y;let J=Error(A);return this._client.captureMessage(A,Q,{originalException:A,syntheticException:J,...B,event_id:Y},this),Y}captureEvent(A,Q){let B=Q?.event_id||FY();if(!this._client)return e.warn("No client configured on scope - will not capture event!"),B;return this._client.captureEvent(A,{...Q,event_id:B},this),B}_notifyScopeListeners(){if(!this._notifyingListeners)this._notifyingListeners=!0,this._scopeListeners.forEach((A)=>{A(this)}),this._notifyingListeners=!1}}function qE(){return DZ("defaultCurrentScope",()=>new XJ)}function M5(){return DZ("defaultIsolationScope",()=>new XJ)}class ADA{constructor(A,Q){let B;if(!A)B=new XJ;else B=A;let Y;if(!Q)Y=new XJ;else Y=Q;this._stack=[{scope:B}],this._isolationScope=Y}withScope(A){let Q=this._pushScope(),B;try{B=A(Q)}catch(Y){throw this._popScope(),Y}if(q5(B))return B.then((Y)=>{return this._popScope(),Y},(Y)=>{throw this._popScope(),Y});return this._popScope(),B}getClient(){return this.getStackTop().client}getScope(){return this.getStackTop().scope}getIsolationScope(){return this._isolationScope}getStackTop(){return this._stack[this._stack.length-1]}_pushScope(){let A=this.getScope().clone();return this._stack.push({client:this.getClient(),scope:A}),A}_popScope(){if(this._stack.length<=1)return!1;return!!this._stack.pop()}}function ME(){let A=zJ(),Q=u7(A);return Q.stack=Q.stack||new ADA(qE(),M5())}function QZB(A){return ME().withScope(A)}function BZB(A,Q){let B=ME();return B.withScope(()=>{return B.getStackTop().scope=A,Q(A)})}function eHA(A){return ME().withScope(()=>{return A(ME().getIsolationScope())})}function QDA(){return{withIsolationScope:eHA,withScope:QZB,withSetScope:BZB,withSetIsolationScope:(A,Q)=>{return eHA(Q)},getCurrentScope:()=>ME().getScope(),getIsolationScope:()=>ME().getIsolationScope()}}function Gu(A){let Q=zJ(),B=u7(Q);B.acs=A}function z5(A){let Q=u7(A);if(Q.acs)return Q.acs;return QDA()}function sQ(){let A=zJ();return z5(A).getCurrentScope()}function RQ(){let A=zJ();return z5(A).getIsolationScope()}function iG(){return DZ("globalScope",()=>new XJ)}function O8(...A){let Q=zJ(),B=z5(Q);if(A.length===2){let[Y,J]=A;if(!Y)return B.withScope(J);return B.withSetScope(Y,J)}return B.withScope(A[0])}function nG(...A){let Q=zJ(),B=z5(Q);if(A.length===2){let[Y,J]=A;if(!Y)return B.withIsolationScope(J);return B.withSetIsolationScope(Y,J)}return B.withIsolationScope(A[0])}function gA(){return sQ().getClient()}function zE(A){let Q=A.getPropagationContext(),{traceId:B,parentSpanId:Y,propagationSpanId:J}=Q,C={trace_id:B,span_id:J||j8()};if(Y)C.parent_span_id=Y;return C}var A0="sentry.source",R5="sentry.sample_rate",Fu="sentry.previous_trace_sample_rate",BQ="sentry.op",DQ="sentry.origin";var nw="sentry.measurement_unit",sw="sentry.measurement_value",cC="sentry.custom_span_name",RE="sentry.profile_id",wE="sentry.exclusive_time",Wu="cache.hit",Zu="cache.key",$u="cache.item_size";var Uu=0,n7=1,m9=2;function jE(A){if(A<400&&A>=100)return{code:1};if(A>=400&&A<500)switch(A){case 401:return{code:2,message:"unauthenticated"};case 403:return{code:2,message:"permission_denied"};case 404:return{code:2,message:"not_found"};case 409:return{code:2,message:"already_exists"};case 413:return{code:2,message:"failed_precondition"};case 429:return{code:2,message:"resource_exhausted"};case 499:return{code:2,message:"cancelled"};default:return{code:2,message:"invalid_argument"}}if(A>=500&&A<600)switch(A){case 501:return{code:2,message:"unimplemented"};case 503:return{code:2,message:"unavailable"};case 504:return{code:2,message:"deadline_exceeded"};default:return{code:2,message:"internal_error"}}return{code:2,message:"unknown_error"}}function OE(A,Q){A.setAttribute("http.response.status_code",Q);let B=jE(Q);if(B.message!=="unknown_error")A.setStatus(B)}var BDA="_sentryScope",YDA="_sentryIsolationScope";function sD(A,Q,B){if(A)d0(A,YDA,B),d0(A,BDA,Q)}function lC(A){return{scope:A[BDA],isolationScope:A[YDA]}}function P8(A){if(typeof A==="boolean")return Number(A);let Q=typeof A==="string"?parseFloat(A):A;if(typeof Q!=="number"||isNaN(Q)||Q<0||Q>1)return;return Q}var rD="sentry-",CDA=/^sentry-/,XDA=8192;function s7(A){let Q=MZ(A);if(!Q)return;let B=Object.entries(Q).reduce((Y,[J,C])=>{if(J.match(CDA)){let X=J.slice(rD.length);Y[X]=C}return Y},{});if(Object.keys(B).length>0)return B;else return}function r7(A){if(!A)return;let Q=Object.entries(A).reduce((B,[Y,J])=>{if(J)B[`${rD}${Y}`]=J;return B},{});return rw(Q)}function MZ(A){if(!A||!NZ(A)&&!Array.isArray(A))return;if(Array.isArray(A))return A.reduce((Q,B)=>{let Y=JDA(B);return Object.entries(Y).forEach(([J,C])=>{Q[J]=C}),Q},{});return JDA(A)}function JDA(A){return A.split(",").map((Q)=>Q.split("=").map((B)=>{try{return decodeURIComponent(B.trim())}catch{return}})).reduce((Q,[B,Y])=>{if(B&&Y)Q[B]=Y;return Q},{})}function rw(A){if(Object.keys(A).length===0)return;return Object.entries(A).reduce((Q,[B,Y],J)=>{let C=`${encodeURIComponent(B)}=${encodeURIComponent(Y)}`,X=J===0?C:`${Q},${C}`;if(X.length>XDA)return OA&&e.warn(`Not adding key: ${B} with val: ${Y} to baggage header due to exceeding baggage size limits.`),Q;else return X},"")}var aD=new RegExp("^[ \\t]*([0-9a-f]{32})?-?([0-9a-f]{16})?-?([01])?[ \\t]*$");function GDA(A){if(!A)return;let Q=A.match(aD);if(!Q)return;let B;if(Q[3]==="1")B=!0;else if(Q[3]==="0")B=!1;return{traceId:Q[1],parentSampled:B,parentSpanId:Q[2]}}function zZ(A,Q){let B=GDA(A),Y=s7(Q);if(!B?.traceId)return{traceId:w8(),sampleRand:Math.random()};let J=YZB(B,Y);if(Y)Y.sample_rand=J.toString();let{traceId:C,parentSpanId:X,parentSampled:G}=B;return{traceId:C,parentSpanId:X,sampled:G,dsc:Y||{},sampleRand:J}}function a7(A=w8(),Q=j8(),B){let Y="";if(B!==void 0)Y=B?"-1":"-0";return`${A}-${Q}${Y}`}function YZB(A,Q){let B=P8(Q?.sample_rand);if(B!==void 0)return B;let Y=P8(Q?.sample_rate);if(Y&&A?.parentSampled!==void 0)return A.parentSampled?Math.random()*Y:Y+Math.random()*(1-Y);else return Math.random()}var aw=0,ow=1,FDA=!1;function ZDA(A){let{spanId:Q,traceId:B}=A.spanContext(),{data:Y,op:J,parent_span_id:C,status:X,origin:G,links:F}=eA(A);return{parent_span_id:C,span_id:Q,trace_id:B,data:Y,op:J,status:X,origin:G,links:F}}function o7(A){let{spanId:Q,traceId:B,isRemote:Y}=A.spanContext(),J=Y?Q:eA(A).parent_span_id,C=lC(A).scope,X=Y?C?.getPropagationContext().propagationSpanId||j8():Q;return{parent_span_id:J,span_id:X,trace_id:B}}function tD(A){let{traceId:Q,spanId:B}=A.spanContext(),Y=a1(A);return a7(Q,B,Y)}function RZ(A){if(A&&A.length>0)return A.map(({context:{spanId:Q,traceId:B,traceFlags:Y,...J},attributes:C})=>({span_id:Q,trace_id:B,sampled:Y===ow,attributes:C,...J}));else return}function u9(A){if(typeof A==="number")return WDA(A);if(Array.isArray(A))return A[0]+A[1]/1e9;if(A instanceof Date)return WDA(A.getTime());return R8()}function WDA(A){return A>9999999999?A/1000:A}function eA(A){if(CZB(A))return A.getSpanJSON();let{spanId:Q,traceId:B}=A.spanContext();if(JZB(A)){let{attributes:Y,startTime:J,name:C,endTime:X,status:G,links:F}=A,W="parentSpanId"in A?A.parentSpanId:("parentSpanContext"in A)?A.parentSpanContext?.spanId:void 0;return{span_id:Q,trace_id:B,data:Y,description:C,parent_span_id:W,start_timestamp:u9(J),timestamp:u9(X)||void 0,status:wZ(G),op:Y[BQ],origin:Y[DQ],links:RZ(F)}}return{span_id:Q,trace_id:B,start_timestamp:0,data:{}}}function JZB(A){let Q=A;return!!Q.attributes&&!!Q.startTime&&!!Q.name&&!!Q.endTime&&!!Q.status}function CZB(A){return typeof A.getSpanJSON==="function"}function a1(A){let{traceFlags:Q}=A.spanContext();return Q===ow}function wZ(A){if(!A||A.code===Uu)return;if(A.code===n7)return"ok";return A.message||"unknown_error"}var oD="_sentryChildSpans",Eu="_sentryRootSpan";function PE(A,Q){let B=A[Eu]||A;if(d0(Q,Eu,B),A[oD])A[oD].add(Q);else d0(A,oD,new Set([Q]))}function eD(A){let Q=new Set;function B(Y){if(Q.has(Y))return;else if(a1(Y)){Q.add(Y);let J=Y[oD]?Array.from(Y[oD]):[];for(let C of J)B(C)}}return B(A),Array.from(Q)}function $0(A){return A[Eu]||A}function pC(){let A=zJ(),Q=z5(A);if(Q.getActiveSpan)return Q.getActiveSpan();return dC(sQ())}function AN(){if(!FDA)y0(()=>{console.warn("[Sentry] Returning null from `beforeSendSpan` is disallowed. To drop certain spans, configure the respective integrations directly.")}),FDA=!0}function Ku(A,Q){A.updateName(Q),A.setAttributes({[A0]:"custom",[cC]:Q})}var Iu="?",$DA=/\(error: (.*)\)/,UDA=/captureMessage|captureException/;function ew(...A){let Q=A.sort((B,Y)=>B[0]-Y[0]).map((B)=>B[1]);return(B,Y=0,J=0)=>{let C=[],X=B.split(` -`);for(let G=Y;G1024)continue;let W=$DA.test(F)?F.replace($DA,"$1"):F;if(W.match(/\S*Error: /))continue;for(let Z of Q){let U=Z(W);if(U){C.push(U);break}}if(C.length>=50+J)break}return EDA(C.slice(J))}}function Hu(A){if(Array.isArray(A))return ew(...A);return A}function EDA(A){if(!A.length)return[];let Q=Array.from(A);if(/sentryWrapped/.test(tw(Q).function||""))Q.pop();if(Q.reverse(),UDA.test(tw(Q).function||"")){if(Q.pop(),UDA.test(tw(Q).function||""))Q.pop()}return Q.slice(0,50).map((B)=>({...B,filename:B.filename||tw(Q).filename,function:B.function||"?"}))}function tw(A){return A[A.length-1]||{}}var Vu="";function QN(A){try{if(!A||typeof A!=="function")return Vu;return A.name||Vu}catch(Q){return Vu}}function Aj(A){let Q=A.exception;if(Q){let B=[];try{return Q.values.forEach((Y)=>{if(Y.stacktrace.frames)B.push(...Y.stacktrace.frames)}),B}catch(Y){return}}return}var Qj={},KDA={};function TE(A,Q){Qj[A]=Qj[A]||[],Qj[A].push(Q)}function SE(A,Q){if(!KDA[A]){KDA[A]=!0;try{Q()}catch(B){OA&&e.error(`Error while instrumenting ${A}`,B)}}}function kE(A,Q){let B=A&&Qj[A];if(!B)return;for(let Y of B)try{Y(Q)}catch(J){OA&&e.error(`Error while triggering instrumentation handler. + }`});try{let Y=(await Q.next()).value?.data?.userById;if(!Y)return n.warning(`PlatformGateway.getPlayerCosmetics(): No cosmetic data returned for user id "${A}".`);let J=Y.equippedItems?Y.equippedItems.map((F)=>({slot:F.slot,item:F.itemInstance.item.slots.find((W)=>W.type===F.slot)})).filter((F)=>!!F.item):[],C=Y.characterSettings?.hair?.modelUrl,X=Y.characterSettings?.hair?.textureUrl,G=`https://d3qkovarww0lj1.cloudfront.net/?skin_tone=${Y.characterSettings?.skinTone||"SKIN_COLOR_1"}&clothing=${Y.characterSettings?.clothing||"CLOTHING_1"}&hair_style=${Y.characterSettings?.hairStyle||"HAIR_STYLE_1"}&hair_color=${Y.characterSettings?.hairColor||"HAIR_COLOR_1"}&eye_color=${Y.characterSettings?.eyeColor||"00FF00"}`;return{equippedItems:J,hairModelUri:C,hairTextureUri:X,skinTextureUri:G}}finally{await Q.return?.()}}async getPlayerSession(A){if(!this._creativeGateway)return;return await this._creativeGateway.getSession(A)}async scheduleNotification(A,Q,B){if(!Tw)return n.warning("PlatformGateway.scheduleNotification(): HYTOPIA_NOTIFICATION_SERVICE_URL is not set. Unable to schedule notification.");if(!this.gameId||!this.creatorApiKey)return n.warning("PlatformGateway.scheduleNotification(): HYTOPIA_GAME_ID or HYTOPIA_API_KEY is not set. Unable to schedule notification.");if(BsetTimeout(J,500))}n.warning(`PersistenceManager.getGlobalData(): Failed to get global data after ${Q} attempts.`);return}async getPlayerData(A){let Q=await this._saveStatesClient.load(this._getPlayerKey(A));if(!Q)return n.warning(`PersistenceManager.getPlayerData(): Failed to get player data for player ${A.id}. Persistence service may be down.`),{};return Q}async setGlobalData(A,Q){let B=await N5.instance.setGlobalData(A,Q);if(!B||B.error){if(B?.error)n.warning(`PersistenceManager.setGlobalData(): ${B.error.message}`)}}async setPlayerData(A,Q){let B=await this.getPlayerData(A);for(let[Y,J]of Object.entries(Q))B[Y]=J}async unloadPlayerData(A){await this._saveStatesClient.unload(this._getPlayerKey(A))}_getPlayerKey(A){return`player-${A.id}`}}var Om;((Y)=>{Y[Y.FIRST_PERSON=0]="FIRST_PERSON";Y[Y.THIRD_PERSON=1]="THIRD_PERSON";Y[Y.SPECTATOR=2]="SPECTATOR"})(Om||={});var Pm;((L)=>{L.FACE_ENTITY="PLAYER_CAMERA.FACE_ENTITY";L.FACE_POSITION="PLAYER_CAMERA.FACE_POSITION";L.SET_ATTACHED_TO_ENTITY="PLAYER_CAMERA.SET_ATTACHED_TO_ENTITY";L.SET_ATTACHED_TO_POSITION="PLAYER_CAMERA.SET_ATTACHED_TO_POSITION";L.SET_COLLIDES_WITH_BLOCKS="PLAYER_CAMERA.SET_COLLIDES_WITH_BLOCKS";L.SET_FILM_OFFSET="PLAYER_CAMERA.SET_FILM_OFFSET";L.SET_FORWARD_OFFSET="PLAYER_CAMERA.SET_FORWARD_OFFSET";L.SET_FOV="PLAYER_CAMERA.SET_FOV";L.SET_MODE="PLAYER_CAMERA.SET_MODE";L.SET_OFFSET="PLAYER_CAMERA.SET_OFFSET";L.SET_SHOULDER_ANGLE="PLAYER_CAMERA.SET_SHOULDER_ANGLE";L.SET_TARGET_ENTITY="PLAYER_CAMERA.SET_TARGET_ENTITY";L.SET_TARGET_POSITION="PLAYER_CAMERA.SET_TARGET_POSITION";L.SET_VIEW_MODEL="PLAYER_CAMERA.SET_VIEW_MODEL";L.SET_VIEW_MODEL_HIDDEN_NODES="PLAYER_CAMERA.SET_VIEW_MODEL_HIDDEN_NODES";L.SET_VIEW_MODEL_PITCHES_WITH_CAMERA="PLAYER_CAMERA.SET_VIEW_MODEL_PITCHES_WITH_CAMERA";L.SET_VIEW_MODEL_SHOWN_NODES="PLAYER_CAMERA.SET_VIEW_MODEL_SHOWN_NODES";L.SET_VIEW_MODEL_YAWS_WITH_CAMERA="PLAYER_CAMERA.SET_VIEW_MODEL_YAWS_WITH_CAMERA";L.SET_ZOOM="PLAYER_CAMERA.SET_ZOOM"})(Pm||={});class hD extends BQ{player;_attachedToEntity;_attachedToPosition;_collidesWithBlocks=!0;_filmOffset=0;_forwardOffset=0;_fov=75;_mode=1;_offset={x:0,y:0,z:0};_orientation={pitch:0,yaw:0};_shoulderAngle=0;_targetEntity;_targetPosition;_viewModelUri;_viewModelHiddenNodes=new Set;_viewModelPitchesWithCamera=!1;_viewModelShownNodes=new Set;_viewModelYawsWithCamera=!1;_zoom=1;constructor(A){super();this.player=A}get attachedToEntity(){return this._attachedToEntity}get attachedToPosition(){return this._attachedToPosition}get collidesWithBlocks(){return this._collidesWithBlocks}get facingDirection(){return{x:-Math.sin(this._orientation.yaw)*Math.cos(this._orientation.pitch),y:Math.sin(this._orientation.pitch),z:-Math.cos(this._orientation.yaw)*Math.cos(this._orientation.pitch)}}get facingQuaternion(){let A=this._orientation.pitch*0.5,Q=this._orientation.yaw*0.5,B=Math.cos(A),Y=Math.sin(A),J=Math.cos(Q),C=Math.sin(Q);return{x:Y*J,y:B*C,z:-Y*C,w:B*J}}get filmOffset(){return this._filmOffset}get forwardOffset(){return this._forwardOffset}get fov(){return this._fov}get modelHiddenNodes(){return this._viewModelHiddenNodes}get modelShownNodes(){return this._viewModelShownNodes}get mode(){return this._mode}get offset(){return this._offset}get orientation(){return this._orientation}get shoulderAngle(){return this._shoulderAngle}get targetEntity(){return this._targetEntity}get targetPosition(){return this._targetPosition}get viewModelUri(){return this._viewModelUri??this._attachedToEntity?.modelUri}get viewModelHiddenNodes(){return this._viewModelHiddenNodes}get viewModelPitchesWithCamera(){return this._viewModelPitchesWithCamera}get viewModelShownNodes(){return this._viewModelShownNodes}get viewModelYawsWithCamera(){return this._viewModelYawsWithCamera}get zoom(){return this._zoom}faceEntity(A){if(!this._requirePlayerWorld("faceEntity"))return;this._targetEntity=void 0,this._targetPosition=void 0,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.FACE_ENTITY",{playerCamera:this,entity:A})}facePosition(A){if(!this._requirePlayerWorld("facePosition"))return;this._targetEntity=void 0,this._targetPosition=void 0,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.FACE_POSITION",{playerCamera:this,position:A})}reset(){this._attachedToEntity=void 0,this._attachedToPosition=void 0,this._orientation={pitch:0,yaw:0},this._targetEntity=void 0,this._targetPosition=void 0}setAttachedToEntity(A){if(!this._requirePlayerWorld("setAttachedToEntity"))return;if(!A.isSpawned)return n.error(`PlayerCamera.setAttachedToEntity(): Entity ${A.id} is not spawned!`);if(this._targetEntity===A)return n.error(`PlayerCamera.setAttachedToEntity(): Entity ${A.id} is already set as the target. Attachment and target cannot be the same!`);this._attachedToEntity=A,this._attachedToPosition=void 0,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_ATTACHED_TO_ENTITY",{playerCamera:this,entity:A})}setAttachedToPosition(A){if(!this._requirePlayerWorld("setAttachedToPosition"))return;if(A&&this._targetPosition?.x===A.x&&this._targetPosition?.y===A.y&&this._targetPosition?.z===A.z)return n.error(`PlayerCamera.setAttachedToPosition(): Position ${A.x}, ${A.y}, ${A.z} is already set as the target. Attachment and target cannot be the same!`);this._attachedToPosition=A,this._attachedToEntity=void 0,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_ATTACHED_TO_POSITION",{playerCamera:this,position:A})}setCollidesWithBlocks(A){if(!this._requirePlayerWorld("setCollidesWithBlocks"))return;this._collidesWithBlocks=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_COLLIDES_WITH_BLOCKS",{playerCamera:this,collidesWithBlocks:A})}setFilmOffset(A){if(!this._requirePlayerWorld("setFilmOffset"))return;this._filmOffset=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_FILM_OFFSET",{playerCamera:this,filmOffset:A})}setForwardOffset(A){if(!this._requirePlayerWorld("setForwardOffset"))return;this._forwardOffset=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_FORWARD_OFFSET",{playerCamera:this,forwardOffset:A})}setFov(A){if(!this._requirePlayerWorld("setFov"))return;this._fov=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_FOV",{playerCamera:this,fov:A})}setMode(A){if(!this._requirePlayerWorld("setMode"))return;this._mode=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_MODE",{playerCamera:this,mode:A})}setOffset(A){if(!this._requirePlayerWorld("setOffset"))return;this._offset=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_OFFSET",{playerCamera:this,offset:A})}setOrientationPitch(A){this._orientation.pitch=A}setOrientationYaw(A){this._orientation.yaw=A}setShoulderAngle(A){if(!this._requirePlayerWorld("setShoulderAngle"))return;this._shoulderAngle=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_SHOULDER_ANGLE",{playerCamera:this,shoulderAngle:A})}setTargetEntity(A){if(!this._requirePlayerWorld("setTargetEntity"))return;if(A&&this._attachedToEntity===A)return n.error(`PlayerCamera.setTargetEntity(): Entity ${A.id} is already set as the attachment. Attachment and target cannot be the same!`);if(this._targetEntity=A,A)this._targetPosition=void 0;this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_TARGET_ENTITY",{playerCamera:this,entity:A})}setTargetPosition(A){if(!this._requirePlayerWorld("setTargetPosition"))return;if(A&&this._attachedToPosition?.x===A.x&&this._attachedToPosition?.y===A.y&&this._attachedToPosition?.z===A.z)return n.error(`PlayerCamera.setTargetPosition(): Position ${A.x}, ${A.y}, ${A.z} is already set as the attachment. Attachment and target cannot be the same!`);if(this._targetPosition=A,A)this._targetEntity=void 0;this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_TARGET_POSITION",{playerCamera:this,position:A})}setViewModel(A){if(!this._requirePlayerWorld("setViewModel"))return;if(!this._attachedToEntity)return n.error("PlayerCamera.setViewModel(): Camera is not attached to an entity, cannot set view model! Use camera.setAttachedToEntity() first.");this._viewModelUri=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_VIEW_MODEL",{playerCamera:this,viewModelUri:A})}setViewModelHiddenNodes(A){if(!this._requirePlayerWorld("setViewModelHiddenNodes"))return;this._viewModelHiddenNodes=new Set(A.map((Q)=>Q.toLowerCase())),this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_VIEW_MODEL_HIDDEN_NODES",{playerCamera:this,viewModelHiddenNodes:this._viewModelHiddenNodes})}setViewModelPitchesWithCamera(A){if(!this._requirePlayerWorld("setViewModelPitchesWithCamera"))return;this._viewModelPitchesWithCamera=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_VIEW_MODEL_PITCHES_WITH_CAMERA",{playerCamera:this,viewModelPitchesWithCamera:A})}setViewModelShownNodes(A){if(!this._requirePlayerWorld("setViewModelShownNodes"))return;this._viewModelShownNodes=new Set(A.map((Q)=>Q.toLowerCase())),this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_VIEW_MODEL_SHOWN_NODES",{playerCamera:this,viewModelShownNodes:this._viewModelShownNodes})}setViewModelYawsWithCamera(A){if(!this._requirePlayerWorld("setViewModelYawsWithCamera"))return;this._viewModelYawsWithCamera=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_VIEW_MODEL_YAWS_WITH_CAMERA",{playerCamera:this,viewModelYawsWithCamera:A})}setZoom(A){if(!this._requirePlayerWorld("setZoom"))return;this._zoom=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_ZOOM",{playerCamera:this,zoom:A})}serialize(){return GQ.serializePlayerCamera(this)}_requirePlayerWorld(A){if(!this.player.world)n.error(`PlayerCamera._requirePlayerWorld(): Player ${this.player.id} is not in a world, invoked method: ${A}()`);return!!this.player.world}}var Sw;((X)=>{X.APPEND="PLAYER_UI.APPEND";X.DATA="PLAYER_UI.DATA";X.FREEZE_POINTER_LOCK="PLAYER_UI.FREEZE_POINTER_LOCK";X.LOAD="PLAYER_UI.LOAD";X.LOCK_POINTER="PLAYER_UI.LOCK_POINTER";X.SEND_DATA="PLAYER_UI.SEND_DATA"})(Sw||={});class gD extends BQ{player;constructor(A){super();this.player=A}append(A){if(!this.player.world)return;this.emitWithWorld(this.player.world,"PLAYER_UI.APPEND",{playerUI:this,htmlUri:A})}freezePointerLock(A){if(!this.player.world)return;this.emitWithWorld(this.player.world,"PLAYER_UI.FREEZE_POINTER_LOCK",{playerUI:this,freeze:A})}load(A){if(!this.player.world)return;this.emitWithWorld(this.player.world,"PLAYER_UI.LOAD",{playerUI:this,htmlUri:A})}lockPointer(A){if(!this.player.world)return;this.emitWithWorld(this.player.world,"PLAYER_UI.LOCK_POINTER",{playerUI:this,lock:A})}sendData(A){if(!this.player.world)return;this.emitWithWorld(this.player.world,"PLAYER_UI.SEND_DATA",{playerUI:this,data:A})}}var c7B=["w","a","s","d","sp","sh","tb","ml","mr","q","e","r","f","z","x","c","v","u","i","o","j","k","l","n","m","1","2","3","4","5","6","7","8","9","0","cp","cy","iro","ird","jd"],xD;((G)=>{G.CHAT_MESSAGE_SEND="PLAYER.CHAT_MESSAGE_SEND";G.INTERACT="PLAYER.INTERACT";G.JOINED_WORLD="PLAYER.JOINED_WORLD";G.LEFT_WORLD="PLAYER.LEFT_WORLD";G.RECONNECTED_WORLD="PLAYER.RECONNECTED_WORLD";G.REQUEST_NOTIFICATION_PERMISSION="PLAYER.REQUEST_NOTIFICATION_PERMISSION";G.REQUEST_SYNC="PLAYER.REQUEST_SYNC"})(xD||={});class qE extends BQ{static _devNextPlayerId=1;id;username;profilePictureUrl;camera;connection;cosmetics;ui;_input={};_interactEnabled=!0;_lastUnreliableInputSequenceNumber=0;_maxInteractDistance=20;_persistedData;_world;_worldSwitched=!1;constructor(A,Q){super();this.id=Q?.user.id??`player-${qE._devNextPlayerId++}`,this.username=Q?.user.username??this.id,this.profilePictureUrl=Q?.user.profilePictureURL??void 0,this.camera=new hD(this),this.connection=A,this.cosmetics=N5.instance.getPlayerCosmetics(this.id),this.ui=new gD(this),A.onPacket(hQ.PacketId.CHAT_MESSAGE_SEND,this._onChatMessageSendPacket),A.onPacket(hQ.PacketId.DEBUG_CONFIG,this._onDebugConfigPacket),A.onPacket(hQ.PacketId.INPUT,this._onInputPacket),A.onPacket(hQ.PacketId.SYNC_REQUEST,this._onSyncRequestPacket),A.onPacket(hQ.PacketId.UI_DATA_SEND,this._onUIDataSendPacket)}get input(){return this._input}get isInteractEnabled(){return this._interactEnabled}get maxInteractDistance(){return this._maxInteractDistance}get world(){return this._world}disconnect(){this._leaveWorld(),this.connection.disconnect()}getPersistedData(){if(!this._persistedData)return;let A=Object.keys(this._persistedData);if(A.length===0||A.length===1&&A[0]==="__version")return;return this._persistedData}joinWorld(A){if(this._world===A)return;if(!this._world)this._world=A,this.emitWithWorld(this._world,"PLAYER.JOINED_WORLD",{player:this,world:this._world});else{for(let Q of this._world.entityManager.getPlayerEntitiesByPlayer(this))if(Q.isSpawned)Q.despawn();this.disconnect(),this._world=A,this._worldSwitched=!0}}async scheduleNotification(A,Q){if(!this._world)return n.warning("Player.scheduleNotification(): Player must be in a world to schedule a notification.");return this.emitWithWorld(this._world,"PLAYER.REQUEST_NOTIFICATION_PERMISSION",{player:this}),N5.instance.scheduleNotification(this.id,A,Q)}async unscheduleNotification(A){if(!A)return!1;return N5.instance.unscheduleNotification(A)}async loadInitialPersistedData(){if(this._persistedData)return;this._persistedData=await m7.instance.getPlayerData(this)}reconnected(){if(!this._world)return;if(this._lastUnreliableInputSequenceNumber=0,!this._worldSwitched)this.emitWithWorld(this._world,"PLAYER.RECONNECTED_WORLD",{player:this,world:this._world});else this._worldSwitched=!1,this.emitWithWorld(this._world,"PLAYER.JOINED_WORLD",{player:this,world:this._world})}resetInputs(){this._input={}}setInteractEnabled(A){this._interactEnabled=A}setMaxInteractDistance(A){this._maxInteractDistance=A}setPersistedData(A){if(!this._persistedData){n.warning(`Player.setPersistedData(): Persisted data not found for player ${this.id}`);return}for(let[Q,B]of Object.entries(A))this._persistedData[Q]=B}serialize(){return GQ.serializePlayer(this)}_leaveWorld(){if(!this._world)return;this.emitWithWorld(this._world,"PLAYER.LEFT_WORLD",{player:this,world:this._world}),this._world=void 0}_onChatMessageSendPacket=(A)=>{if(!this._world)return;let Q=A[1].m;if(this._world.chatManager.handleCommand(this,Q)){this._world.chatManager.sendPlayerMessage(this,`Command Entered: ${Q}`,"CCCCCC");return}this.emitWithWorld(this._world,"PLAYER.CHAT_MESSAGE_SEND",{player:this,message:Q})};_onDebugConfigPacket=(A)=>{console.log(A)};_onInputPacket=(A)=>{let Q=A[1];if(Q.sq!==void 0){if(Q.sq{if(!this.world||!this._input.ird||!this._input.iro)return;if(this._interactEnabled){let A={x:this._input.iro[0],y:this._input.iro[1],z:this._input.iro[2]},Q={x:this._input.ird[0],y:this._input.ird[1],z:this._input.ird[2]},B=this.world.entityManager.getPlayerEntitiesByPlayer(this)[0],Y=this.world.simulation.raycast(A,Q,this._maxInteractDistance,{filterExcludeRigidBody:B?.rawRigidBody,filterFlags:FB.QueryFilterFlags.EXCLUDE_SENSORS});if(this.emitWithWorld(this.world,"PLAYER.INTERACT",{player:this,interactOrigin:A,interactDirection:Q,raycastHit:Y}),Y?.hitEntity)Y.hitEntity.interact(this,Y);if(Y?.hitBlock)Y.hitBlock.blockType.interact(this,Y)}};_onSyncRequestPacket=()=>{if(this._world)this.emitWithWorld(this._world,"PLAYER.REQUEST_SYNC",{player:this,receivedAt:Date.now(),receivedAtMs:performance.now()})};_onUIDataSendPacket=(A)=>{this.ui.emit("PLAYER_UI.DATA",{playerUI:this.ui,data:A[1]})}}var Tm;((B)=>{B.BROADCAST_MESSAGE="CHAT.BROADCAST_MESSAGE";B.PLAYER_MESSAGE="CHAT.PLAYER_MESSAGE"})(Tm||={});class fD extends BQ{_commandCallbacks={};_world;constructor(A){super();this._world=A,this._subscribeToPlayerEvents()}registerCommand(A,Q){this._commandCallbacks[A]=Q}unregisterCommand(A){delete this._commandCallbacks[A]}sendBroadcastMessage(A,Q){this._sendBroadcastMessage(void 0,A,Q)}handleCommand(A,Q){let[B,...Y]=Q.split(" "),J=this._commandCallbacks[B];if(J)return J(A,Y,Q),!0;return!1}sendPlayerMessage(A,Q,B){this.emitWithWorld(this._world,"CHAT.PLAYER_MESSAGE",{player:A,message:Q,color:B})}_subscribeToPlayerEvents(){this._world.on("PLAYER.CHAT_MESSAGE_SEND",(A)=>{let{player:Q,message:B}=A;this._sendBroadcastMessage(Q,B)})}_sendBroadcastMessage(A,Q,B){this.emitWithWorld(this._world,"CHAT.BROADCAST_MESSAGE",{player:A,message:Q,color:B})}}var Sm=16,L5=Sm-1,kw=Math.log2(Sm),km=Sm**3,ME=255;class Y9{_blocks;_blockRotations=new Map;_originCoordinate;constructor(A){this._blocks=new Uint8Array(km),this._originCoordinate=A}get blocks(){return this._blocks}get blockRotations(){return this._blockRotations}get originCoordinate(){return this._originCoordinate}static blockIndexToLocalCoordinate(A){return{x:A&L5,y:A>>kw&L5,z:A>>kw*2&L5}}static localCoordinateToBlockIndex(A){return A.x+(A.y<ME)return n.error(`Chunk.setBlock(): Block type id ${Q} is out of bounds (expected 0-${ME}).`);let Y=this._getIndex(A);if(this._blocks[Y]=Q,this._blockRotations.delete(Y),B&&B!==kX.Y_0)this._blockRotations.set(Y,B)}serialize(){return GQ.serializeChunk(this)}_getIndex(A){return Y9.localCoordinateToBlockIndex(A)}_isValidLocalCoordinate(A){return A.x>=0&&A.x<=L5&&A.y>=0&&A.y<=L5&&A.z>=0&&A.z<=L5}}var l7B=32,p7B=km/l7B,bD=54,i7B=BigInt(bD),n7B=BigInt(bD*2),_m;((Y)=>{Y.ADD_CHUNK="CHUNK_LATTICE.ADD_CHUNK";Y.REMOVE_CHUNK="CHUNK_LATTICE.REMOVE_CHUNK";Y.SET_BLOCK="CHUNK_LATTICE.SET_BLOCK"})(_m||={});class mD extends BQ{_blockTypeColliders=new Map;_blockTypeChunkMasks=new Map;_blockTypeCounts=new Map;_chunks=new Map;_rigidBody;_world;constructor(A){super();this._world=A}get chunkCount(){return this._chunks.size}clear(){for(let A of this._blockTypeColliders.values())A.removeFromSimulation();this._chunks.forEach((A)=>{this.emitWithWorld(this._world,"CHUNK_LATTICE.REMOVE_CHUNK",{chunkLattice:this,chunk:A})}),this._blockTypeColliders.clear(),this._blockTypeChunkMasks.clear(),this._blockTypeCounts.clear(),this._chunks.clear()}getBlockId(A){let Q=this.getChunk(A);if(!Q)return 0;return Q.getBlockId(Y9.globalCoordinateToLocalCoordinate(A))}getBlockTypeCollider(A){return this._blockTypeColliders.get(A)}getBlockType(A){let Q=this.getBlockId(A);return Q?this._world.blockTypeRegistry.getBlockType(Q):null}getBlockTypeCount(A){if(!this._isValidBlockTypeId(A))return 0;return this._blockTypeCounts.get(A)??0}getChunk(A){return this._chunks.get(this._getChunkKey(A))}getOrCreateBlockTypeCollider(A,Q){let B=this._blockTypeColliders.get(A);if(B)return B;let J=this._world.blockTypeRegistry.getBlockType(A).createCollider(Q);return this._blockTypeColliders.set(A,J),J}getOrCreateChunk(A){let Q=Y9.globalCoordinateToOriginCoordinate(A),B=this._packCoordinate(Q),Y=this._chunks.get(B);if(Y)return Y;return Y=new Y9(Q),this._chunks.set(B,Y),this.emitWithWorld(this._world,"CHUNK_LATTICE.ADD_CHUNK",{chunkLattice:this,chunk:Y}),Y}getAllChunks(){return Array.from(this._chunks.values())}hasBlock(A){let Q=this.getChunk(A);if(!Q)return!1;return Q.hasBlock(Y9.globalCoordinateToLocalCoordinate(A))}hasChunk(A){return this._chunks.has(this._getChunkKey(A))}initializeBlocks(A){let Q=function*(){for(let B in A){let Y=Number(B),J=A[Y];for(let C=0;C>>0;if(G===0)continue;let F=G;while(F!==0){let W=F&-F,Z=31-Math.clz32(W),U=(X<<5)+Z,$=Y9.blockIndexToLocalCoordinate(U),E=C.getBlockRotation($);Q.push({globalCoordinate:{x:C.originCoordinate.x+$.x,y:C.originCoordinate.y+$.y,z:C.originCoordinate.z+$.z},blockRotation:E===kX.Y_0?void 0:E}),F=(F&F-1)>>>0}}}return Q}_isChunkMaskEmpty(A){for(let Q=0;Q=0&&A<=ME;if(!Q)n.error(`ChunkLattice._isValidBlockTypeId(): Block type id ${A} is out of bounds (expected 0-${ME}).`);return Q}_setBlockTypePlacement(A,Q,B){let Y=this._blockTypeChunkMasks.get(A);if(!Y){if(!B)return;Y=new Map,this._blockTypeChunkMasks.set(A,Y)}let J=this._getChunkKey(Q),C=Y9.globalCoordinateToLocalCoordinate(Q),X=Y9.localCoordinateToBlockIndex(C),G=X>>>5,F=1<<(X&31)>>>0,W=Y.get(J);if(!W){if(!B)return;W=new Uint32Array(p7B),Y.set(J,W)}let Z=(W[G]&F)!==0;if(B){if(Z)return;W[G]|=F,this._blockTypeCounts.set(A,(this._blockTypeCounts.get(A)??0)+1);return}if(!Z)return;W[G]&=~F;let U=Math.max(0,(this._blockTypeCounts.get(A)??0)-1);if(U>0)this._blockTypeCounts.set(A,U);else this._blockTypeCounts.delete(A),this._blockTypeChunkMasks.delete(A);if(this._blockTypeChunkMasks.has(A)&&this._isChunkMaskEmpty(W))Y.delete(J)}}class uD{_colliderHandleBlockTypeMap=new Map;_colliderHandleCollisionCallbackMap=new Map;_colliderHandleEntityMap=new Map;_cleanupBlockTypeColliderHandles=new Set;_pendingCleanupBlockTypeColliderHandles=new Set;_cleanupCollisionCallbackColliderHandles=new Set;_pendingCleanupCollisionCallbackColliderHandles=new Set;_cleanupEntityColliderHandles=new Set;_pendingCleanupEntityColliderHandles=new Set;getColliderBlockType(A){if(!this._requireSimulatedCollider(A))return;return this._colliderHandleBlockTypeMap.get(A.rawCollider.handle)}getColliderCollisionCallback(A){if(!this._requireSimulatedCollider(A))return;return this._colliderHandleCollisionCallbackMap.get(A.rawCollider.handle)}getColliderEntity(A){if(!this._requireSimulatedCollider(A))return;return this._colliderHandleEntityMap.get(A.rawCollider.handle)}getColliderHandleBlockType(A){return this._colliderHandleBlockTypeMap.get(A)}getColliderHandleCollisionCallback(A){return this._colliderHandleCollisionCallbackMap.get(A)}getColliderHandleEntity(A){return this._colliderHandleEntityMap.get(A)}removeColliderBlockType(A){if(!this._requireSimulatedCollider(A))return;this.removeColliderHandleBlockType(A.rawCollider.handle)}removeColliderCollisionCallback(A){if(!this._requireSimulatedCollider(A))return;this.removeColliderHandleCollisionCallback(A.rawCollider.handle)}removeColliderEntity(A){if(!this._requireSimulatedCollider(A))return;this.removeColliderHandleEntity(A.rawCollider.handle)}removeColliderHandleBlockType(A){this._colliderHandleBlockTypeMap.delete(A)}removeColliderHandleCollisionCallback(A){this._colliderHandleCollisionCallbackMap.delete(A)}removeColliderHandleEntity(A){this._colliderHandleEntityMap.delete(A)}setColliderBlockType(A,Q){if(!this._requireSimulatedCollider(A))return;this.setColliderHandleBlockType(A.rawCollider.handle,Q)}setColliderCollisionCallback(A,Q){if(!this._requireSimulatedCollider(A))return;this.setColliderHandleCollisionCallback(A.rawCollider.handle,Q)}setColliderEntity(A,Q){if(!this._requireSimulatedCollider(A))return;this.setColliderHandleEntity(A.rawCollider.handle,Q)}setColliderHandleBlockType(A,Q){this._colliderHandleBlockTypeMap.set(A,Q),this._cleanupBlockTypeColliderHandles.delete(A),this._pendingCleanupBlockTypeColliderHandles.delete(A)}setColliderHandleCollisionCallback(A,Q){this._colliderHandleCollisionCallbackMap.set(A,Q),this._cleanupCollisionCallbackColliderHandles.delete(A),this._pendingCleanupCollisionCallbackColliderHandles.delete(A)}setColliderHandleEntity(A,Q){this._colliderHandleEntityMap.set(A,Q),this._cleanupEntityColliderHandles.delete(A),this._pendingCleanupEntityColliderHandles.delete(A)}queueColliderHandleForCleanup(A){if(this._colliderHandleBlockTypeMap.has(A))this._pendingCleanupBlockTypeColliderHandles.add(A);if(this._colliderHandleCollisionCallbackMap.has(A))this._pendingCleanupCollisionCallbackColliderHandles.add(A);if(this._colliderHandleEntityMap.has(A))this._pendingCleanupEntityColliderHandles.add(A)}cleanup(){for(let A of this._cleanupBlockTypeColliderHandles)this._colliderHandleBlockTypeMap.delete(A);if(this._cleanupBlockTypeColliderHandles.size>0)this._cleanupBlockTypeColliderHandles.clear();for(let A of this._cleanupCollisionCallbackColliderHandles)this._colliderHandleCollisionCallbackMap.delete(A);if(this._cleanupCollisionCallbackColliderHandles.size>0)this._cleanupCollisionCallbackColliderHandles.clear();for(let A of this._cleanupEntityColliderHandles)this._colliderHandleEntityMap.delete(A);if(this._cleanupEntityColliderHandles.size>0)this._cleanupEntityColliderHandles.clear();for(let A of this._pendingCleanupBlockTypeColliderHandles)this._cleanupBlockTypeColliderHandles.add(A);if(this._pendingCleanupBlockTypeColliderHandles.size>0)this._pendingCleanupBlockTypeColliderHandles.clear();for(let A of this._pendingCleanupCollisionCallbackColliderHandles)this._cleanupCollisionCallbackColliderHandles.add(A);if(this._pendingCleanupCollisionCallbackColliderHandles.size>0)this._pendingCleanupCollisionCallbackColliderHandles.clear();for(let A of this._pendingCleanupEntityColliderHandles)this._cleanupEntityColliderHandles.add(A);if(this._pendingCleanupEntityColliderHandles.size>0)this._pendingCleanupEntityColliderHandles.clear()}_requireSimulatedCollider(A){if(!A.rawCollider)n.error("ColliderMap._requireSimulatedCollider(): Collider is not in the simulation.");return!!A.rawCollider}}class C0 extends QZ{static BASE_ENTITY_HEIGHT=1.5;static GROUND_SENSOR_HEIGHT_SCALE=0.125;static GROUND_SENSOR_RADIUS_SCALE=0.23;static JUMP_LAND_HEAVY_VELOCITY_THRESHOLD=-12;static WALL_COLLIDER_HEIGHT_SCALE=0.33;static WALL_COLLIDER_RADIUS_SCALE=0.4;static MOVEMENT_ROTATIONS={wa:Math.PI/4,wd:-Math.PI/4,sa:Math.PI-Math.PI/4,sd:Math.PI+Math.PI/4,s:Math.PI,asd:Math.PI,a:Math.PI/2,d:-Math.PI/2};static EXTERNAL_IMPULSE_DECAY_RATE=0.253;static SWIM_UPWARD_COOLDOWN_MS=600;static SWIMMING_DRAG_FACTOR=0.05;static WATER_ENTRY_SINKING_FACTOR=0.8;static WATER_ENTRY_SINKING_MS=250;applyDirectionalMovementRotations=!0;autoCancelMouseLeftClick=!0;canJump=()=>!0;canRun=()=>!0;canSwim=()=>!0;canWalk=()=>!0;facesCameraWhenIdle=!1;idleLoopedAnimations=["idle-upper","idle-lower"];interactOneshotAnimations=["simple-interact"];jumpLandHeavyOneshotAnimations=["jump-post-heavy"];jumpLandLightOneshotAnimations=["jump-post-light"];jumpOneshotAnimations=["jump-loop"];jumpVelocity=10;runLoopedAnimations=["run-upper","run-lower"];runVelocity=8;sticksToPlatforms=!0;swimFastVelocity=5;swimGravity=0;swimIdleLoopedAnimations=["swim-idle"];swimLoopedAnimations=["swim-forward"];swimMaxGravityVelocity=-1;swimSlowVelocity=3;swimUpwardVelocity=2;walkLoopedAnimations=["walk-upper","walk-lower"];walkVelocity=4;_externalVelocity={x:0,y:0,z:0};_magnitudeYTracker=0;_groundContactCount=0;_internalApplyImpulse=()=>{};_isActivelyMoving=!1;_isFullySubmerged=!1;_justSubmergedUntil=0;_liquidContactCount=0;_platform;_reusableImpulse={x:0,y:0,z:0};_reusablePlatformVelocity={x:0,y:0,z:0};_reusableTargetVelocities={x:0,y:0,z:0};_reusableVelocityClamp={x:0,y:0,z:0};_stepAudio;_swimUpwardCooldownAt=0;constructor(A={}){super();this.applyDirectionalMovementRotations=A.applyDirectionalMovementRotations??this.applyDirectionalMovementRotations,this.autoCancelMouseLeftClick=A.autoCancelMouseLeftClick??this.autoCancelMouseLeftClick,this.facesCameraWhenIdle=A.facesCameraWhenIdle??this.facesCameraWhenIdle,this.sticksToPlatforms=A.sticksToPlatforms??this.sticksToPlatforms,this.canJump=A.canJump??this.canJump,this.canRun=A.canRun??this.canRun,this.canSwim=A.canSwim??this.canSwim,this.canWalk=A.canWalk??this.canWalk,this.jumpVelocity=A.jumpVelocity??this.jumpVelocity,this.runVelocity=A.runVelocity??this.runVelocity,this.walkVelocity=A.walkVelocity??this.walkVelocity,this.swimFastVelocity=A.swimFastVelocity??this.swimFastVelocity,this.swimSlowVelocity=A.swimSlowVelocity??this.swimSlowVelocity,this.swimUpwardVelocity=A.swimUpwardVelocity??this.swimUpwardVelocity,this.swimGravity=A.swimGravity??this.swimGravity,this.swimMaxGravityVelocity=A.swimMaxGravityVelocity??this.swimMaxGravityVelocity,this.idleLoopedAnimations=A.idleLoopedAnimations??this.idleLoopedAnimations,this.interactOneshotAnimations=A.interactOneshotAnimations??this.interactOneshotAnimations,this.jumpOneshotAnimations=A.jumpOneshotAnimations??this.jumpOneshotAnimations,this.jumpLandHeavyOneshotAnimations=A.jumpLandHeavyOneshotAnimations??this.jumpLandHeavyOneshotAnimations,this.jumpLandLightOneshotAnimations=A.jumpLandLightOneshotAnimations??this.jumpLandLightOneshotAnimations,this.runLoopedAnimations=A.runLoopedAnimations??this.runLoopedAnimations,this.swimLoopedAnimations=A.swimLoopedAnimations??this.swimLoopedAnimations,this.swimIdleLoopedAnimations=A.swimIdleLoopedAnimations??this.swimIdleLoopedAnimations,this.walkLoopedAnimations=A.walkLoopedAnimations??this.walkLoopedAnimations}get isActivelyMoving(){return this._isActivelyMoving}get isGrounded(){return this._groundContactCount>0}get isOnPlatform(){return!!this._platform}get isSwimming(){return this._liquidContactCount>0}get platform(){return this._platform}attach(A){super.attach(A),this._internalApplyImpulse=A.applyImpulse.bind(A),A.applyImpulse=(Q)=>{let B=A.mass||1;this._externalVelocity.x+=Q.x/B,this._externalVelocity.y+=Q.y/B,this._externalVelocity.z+=Q.z/B},this._stepAudio=new aH({uri:"audio/sfx/step/stone/stone-step-04.mp3",loop:!0,volume:0.1,referenceDistance:2,cutoffDistance:15,attachedToEntity:A}),A.setCcdEnabled(!0),A.lockAllRotations(),A.on("ENTITY.BLOCK_COLLISION",({blockType:Q,started:B})=>{if(!Q.isLiquid||!this.canSwim(this))return;if(this._liquidContactCount<=0&&B){let Y=A.linearVelocity;A.setLinearVelocity({x:Y.x*this.swimGravity,y:Y.y*this.swimGravity,z:Y.z*this.swimGravity})}if(this._liquidContactCount+=B?1:-1,this._liquidContactCount>0)A.setGravityScale(this.swimGravity),A.stopAllModelAnimations((Y)=>this.swimLoopedAnimations.includes(Y.name)),this._swimUpwardCooldownAt=performance.now()+C0.SWIM_UPWARD_COOLDOWN_MS;else A.setGravityScale(1),A.stopModelAnimations(this.swimLoopedAnimations)})}spawn(A){if(!A.isSpawned)return n.error("DefaultPlayerEntityController.spawn(): Entity is not spawned!");A.createAndAddChildCollider({shape:"cylinder",radius:C0.GROUND_SENSOR_RADIUS_SCALE*(A.height/C0.BASE_ENTITY_HEIGHT),halfHeight:C0.GROUND_SENSOR_HEIGHT_SCALE*(A.height/C0.BASE_ENTITY_HEIGHT),collisionGroups:{belongsTo:[4],collidesWith:[1,2,8]},isSensor:!0,relativePosition:{x:0,y:-A.height/2,z:0},tag:"groundSensor",onCollision:(Q,B)=>{if(!A.isSpawned)return;if(!(Q instanceof N8)||!Q.isLiquid){if(B&&this._groundContactCount===0&&A.linearVelocity.y<-1)if(A.linearVelocity.yw.includes(P.name)||P.loopMode===0);for(let P of w)A.getModelAnimation(P)?.setLoopMode(1),A.getModelAnimation(P)?.play();this._stepAudio?.setPlaybackRate(V?0.75:0.51),this._stepAudio?.play(A.world,!this._stepAudio?.isPlaying)}else if(this._isFullySubmerged&&this.canSwim(this))if(this._stepAudio?.pause(),this._isActivelyMoving){A.stopAllModelAnimations((w)=>this.swimLoopedAnimations.includes(w.name)||w.loopMode===0);for(let w of this.swimLoopedAnimations)A.getModelAnimation(w)?.setLoopMode(1),A.getModelAnimation(w)?.play()}else{A.stopAllModelAnimations((w)=>this.swimIdleLoopedAnimations.includes(w.name)||w.loopMode===0);for(let w of this.swimIdleLoopedAnimations)A.getModelAnimation(w)?.setLoopMode(1),A.getModelAnimation(w)?.play()}else{this._stepAudio?.pause(),A.stopAllModelAnimations((w)=>this.idleLoopedAnimations.includes(w.name)||w.loopMode===0);for(let w of this.idleLoopedAnimations)A.getModelAnimation(w)?.setLoopMode(1),A.getModelAnimation(w)?.play()}let L;if(this.applyDirectionalMovementRotations&&D){if(I)L=$;else if(J&&C&&!G&&!X)L=C0.MOVEMENT_ROTATIONS.wa;else if(J&&G&&!C&&!X)L=C0.MOVEMENT_ROTATIONS.wd;else if(X&&C&&!J&&!G)L=C0.MOVEMENT_ROTATIONS.sa;else if(X&&G&&!J&&!C)L=C0.MOVEMENT_ROTATIONS.sd;else if(X&&!J&&!C&&!G||C&&X&&G&&!J)L=C0.MOVEMENT_ROTATIONS.s;else if(C&&!J&&!X&&!G)L=C0.MOVEMENT_ROTATIONS.a;else if(G&&!J&&!C&&!X)L=C0.MOVEMENT_ROTATIONS.d}if(U){for(let w of this.interactOneshotAnimations)A.getModelAnimation(w)?.setBlendMode(0),A.getModelAnimation(w)?.restart();Q.ml=!this.autoCancelMouseLeftClick}if(D){let w=!this.isSwimming?V?this.runVelocity:this.walkVelocity:V?this.swimFastVelocity:this.swimSlowVelocity;if(I){let P=E+$;this._reusableTargetVelocities.x=-w*Math.sin(P),this._reusableTargetVelocities.z=-w*Math.cos(P)}else{let P=Math.sin(E),_=Math.cos(E);if(J)this._reusableTargetVelocities.x-=w*P,this._reusableTargetVelocities.z-=w*_;if(X)this._reusableTargetVelocities.x+=w*P,this._reusableTargetVelocities.z+=w*_;if(C)this._reusableTargetVelocities.x-=w*_,this._reusableTargetVelocities.z+=w*P;if(G)this._reusableTargetVelocities.x+=w*_,this._reusableTargetVelocities.z-=w*P;let O=Math.sqrt(this._reusableTargetVelocities.x*this._reusableTargetVelocities.x+this._reusableTargetVelocities.z*this._reusableTargetVelocities.z);if(O>w){let k=w/O;this._reusableTargetVelocities.x*=k,this._reusableTargetVelocities.z*=k}}}if(this.isSwimming){if(K.ythis.swimUpwardVelocity*2)this._reusableVelocityClamp.x=K.x,this._reusableVelocityClamp.y=this.swimUpwardVelocity*2,this._reusableVelocityClamp.z=K.z,A.setLinearVelocity(this._reusableVelocityClamp);if(F)this._reusableTargetVelocities.y=-this.swimUpwardVelocity;else if(performance.now()-0.001&&K.y<=3)this._reusableTargetVelocities.y=this.jumpVelocity;else if(this.isSwimming&&performance.now()>this._swimUpwardCooldownAt)this._reusableTargetVelocities.y=this.swimUpwardVelocity}let z=this._platform?.linearVelocity??this._reusablePlatformVelocity;if(this._externalVelocity.y!==0)this._magnitudeYTracker+=this._externalVelocity.y;if(this._externalVelocity.x!==0||this._externalVelocity.y!==0||this._externalVelocity.z!==0){if(this.isGrounded){let w=Math.sqrt(this._externalVelocity.x*this._externalVelocity.x+this._magnitudeYTracker*this._magnitudeYTracker+this._externalVelocity.z*this._externalVelocity.z);if(w>0.01){let _=Math.max(0,w-C0.EXTERNAL_IMPULSE_DECAY_RATE)/w;this._externalVelocity.x*=_,this._magnitudeYTracker*=_,this._externalVelocity.z*=_}else this._externalVelocity.x=0,this._externalVelocity.y=0,this._magnitudeYTracker=0,this._externalVelocity.z=0}}let M=this._reusableTargetVelocities.x+this._externalVelocity.x-K.x+z.x,N=this._reusableTargetVelocities.y+this._externalVelocity.y+z.y,q=this._reusableTargetVelocities.z+this._externalVelocity.z-K.z+z.z;if(this._externalVelocity.y=0,M!==0||N!==0||q!==0){let w=A.mass;this._reusableImpulse.x=M*w,this._reusableImpulse.y=N*w,this._reusableImpulse.z=q*w,this._internalApplyImpulse(this._reusableImpulse)}if(E!==void 0&&(this.facesCameraWhenIdle||this.isActivelyMoving)){let P=(L!==void 0?E+L:E)*0.5;A.setRotation({x:0,y:Math.sin(P),z:0,w:Math.cos(P)})}}}var vm;((G)=>{G.LOAD="SCENE_UI.LOAD";G.SET_ATTACHED_TO_ENTITY="SCENE_UI.SET_ATTACHED_TO_ENTITY";G.SET_OFFSET="SCENE_UI.SET_OFFSET";G.SET_POSITION="SCENE_UI.SET_POSITION";G.SET_STATE="SCENE_UI.SET_STATE";G.SET_VIEW_DISTANCE="SCENE_UI.SET_VIEW_DISTANCE";G.UNLOAD="SCENE_UI.UNLOAD"})(vm||={});class dD extends BQ{_id;_attachedToEntity;_offset;_position;_state={};_templateId;_viewDistance;_world;constructor(A){if(!!A.attachedToEntity===!!A.position)n.fatalError("Either attachedToEntity or position must be set, but not both");super();this._attachedToEntity=A.attachedToEntity,this._offset=A.offset,this._position=A.position,this._state=A.state??{},this._templateId=A.templateId,this._viewDistance=A.viewDistance}get id(){return this._id}get attachedToEntity(){return this._attachedToEntity}get isLoaded(){return this._id!==void 0}get offset(){return this._offset}get position(){return this._position}get state(){return this._state}get templateId(){return this._templateId}get viewDistance(){return this._viewDistance}get world(){return this._world}load(A){if(this.isLoaded)return;if(this._attachedToEntity&&!this._attachedToEntity.isSpawned)return n.error(`SceneUI.load(): Attached entity ${this._attachedToEntity.id} must be spawned before loading SceneUI!`);this._id=A.sceneUIManager.registerSceneUI(this),this._world=A,this.emitWithWorld(A,"SCENE_UI.LOAD",{sceneUI:this})}setAttachedToEntity(A){if(!A.isSpawned)return n.error(`SceneUI.setAttachedToEntity(): Entity ${A.id} is not spawned!`);if(this._attachedToEntity===A)return;if(this._attachedToEntity=A,this._position=void 0,this.isLoaded)this.emitWithWorld(this._world,"SCENE_UI.SET_ATTACHED_TO_ENTITY",{sceneUI:this,entity:A})}setOffset(A){if(this._offset===A)return;if(this._offset=A,this.isLoaded)this.emitWithWorld(this._world,"SCENE_UI.SET_OFFSET",{sceneUI:this,offset:A})}setPosition(A){if(this._position===A)return;if(this._attachedToEntity=void 0,this._position=A,this.isLoaded)this.emitWithWorld(this._world,"SCENE_UI.SET_POSITION",{sceneUI:this,position:A})}setState(A){if(this._state={...this._state,...A},this.isLoaded)this.emitWithWorld(this._world,"SCENE_UI.SET_STATE",{sceneUI:this,state:this._state})}setViewDistance(A){if(this._viewDistance=A,this.isLoaded)this.emitWithWorld(this._world,"SCENE_UI.SET_VIEW_DISTANCE",{sceneUI:this,viewDistance:A})}unload(){if(!this.isLoaded||!this._world)return;this._world.sceneUIManager.unregisterSceneUI(this),this.emitWithWorld(this._world,"SCENE_UI.UNLOAD",{sceneUI:this}),this._id=void 0,this._world=void 0}serialize(){return GQ.serializeSceneUI(this)}}var aVA=0.010000000000000002,oVA=Math.cos(0.026);class n1 extends R0{player;nametagSceneUI;_tickWithPlayerInputEnabled=!0;constructor(A){super(A);this._positionUpdateThresholdSq=aVA,this._rotationUpdateThreshold=oVA,this.player=A.player,this.nametagSceneUI=new dD({templateId:"hytopia:nametag",attachedToEntity:this,offset:{x:0,y:1,z:0},viewDistance:15,state:{username:this.player.username,profilePictureUrl:this.player.profilePictureUrl}})}get isTickWithPlayerInputEnabled(){return this._tickWithPlayerInputEnabled}setTickWithPlayerInputEnabled(A){this._tickWithPlayerInputEnabled=A}spawn(A,Q,B){super.spawn(A,Q,B),this.nametagSceneUI.load(A),this.player.on("PLAYER.CHAT_MESSAGE_SEND",({message:Y})=>{this.nametagSceneUI.setState({chat:Y})})}tick(A){if(!this.isSpawned||!this.world)return;if(!this.controller)return n.error(`PlayerEntity.tick(): PlayerEntity "${this.name}" must have a controller.`);if(this._tickWithPlayerInputEnabled){let{input:Q,camera:B}=this.player;this.controller.tickWithPlayerInput(this,Q,B.orientation,A)}super.tick(A)}}var tVA="models/players/player.gltf",s7B={BACK:"back-anchor",HEAD:"head-anchor",LEFT_ARM:"arm-left-anchor",LEFT_FOOT:"foot-left-anchor",LEFT_HAND:"hand-left-anchor",LEFT_ITEM:"hand-left-anchor",LEFT_LEG:"leg-left-anchor",RIGHT_ARM:"arm-right-anchor",RIGHT_FOOT:"foot-right-anchor",RIGHT_HAND:"hand-right-anchor",RIGHT_ITEM:"hand-right-anchor",RIGHT_LEG:"leg-right-anchor",TORSO:"torso-anchor"};class ym extends n1{_cosmeticHiddenSlots;constructor(A){super({controller:new C0,modelAnimations:[{name:"idle-lower",loopMode:1,play:!0},{name:"idle-upper",loopMode:1,play:!0}],modelUri:tVA,...A});this._cosmeticHiddenSlots=A.cosmeticHiddenSlots??[]}get cosmeticHiddenSlots(){return this._cosmeticHiddenSlots}spawn(A,Q,B){super.spawn(A,Q,B),this.player.cosmetics.then((Y)=>{if(!Y||!this.modelUri)return;if(!(Y.equippedItems.some((C)=>C.item.flags.includes("HIDES_HAIR"))&&!this._cosmeticHiddenSlots.includes("ALL")&&!this._cosmeticHiddenSlots.includes("HEAD"))&&Y.hairModelUri)new R0({modelUri:Y.hairModelUri,modelPreferredShape:"none",modelTextureUri:Y.hairTextureUri,parent:this,parentNodeName:"head-anchor"}).spawn(A,{x:0,y:0,z:0});if(this.modelUri===tVA)this.setModelTextureUri(Y.skinTextureUri);if(this._cosmeticHiddenSlots.includes("ALL"))return;for(let C of Y.equippedItems){let{item:X,slot:G}=C;if(this._cosmeticHiddenSlots.includes(G))continue;let F=s7B[G];if(!F||!TY.instance.modelHasNode(this.modelUri,F))continue;new R0({modelUri:X.modelUrl,modelPreferredShape:"none",parent:this,parentNodeName:F}).spawn(A,{x:0,y:0,z:0})}}).catch((Y)=>n.warning(`DefaultPlayerEntity.spawn(): Failed to get player cosmetics: ${Y}`))}}var eVA;((Y)=>{Y.TICK_REPORT="PERFORMANCE_MONITOR.TICK_REPORT";Y.SPIKE_DETECTED="PERFORMANCE_MONITOR.SPIKE_DETECTED";Y.SNAPSHOT="PERFORMANCE_MONITOR.SNAPSHOT"})(eVA||={});class cY extends BQ{static _instance;static get instance(){if(!cY._instance)cY._instance=new cY;return cY._instance}_enabled=!1;_entityProfilingEnabled=!1;_spikeThresholdMs=50;_tickBudgetMs=16.67;_snapshotIntervalMs=5000;_startTime=0;_operations=new Map;_tickDurations;_tickIndex=0;_tickCount=0;_ticksOverBudget=0;_maxTickMs=0;_totalTicks=0;_currentTick=0;_currentTickStart=0;_currentPhases={};_currentEntityCount=0;_currentPlayerCount=0;_entityCosts=new Map;_snapshotTimer=null;constructor(){super();this._tickDurations=new Float64Array(3600)}get isEnabled(){return this._enabled}get isEntityProfilingEnabled(){return this._enabled&&this._entityProfilingEnabled}enable(A){if(this._enabled)return;this._enabled=!0,this._startTime=performance.now(),this._spikeThresholdMs=A?.spikeThresholdMs??50,this._tickBudgetMs=A?.tickBudgetMs??16.67,this._snapshotIntervalMs=A?.snapshotIntervalMs??5000;let Q=A?.historySize??3600;if(this._tickDurations=new Float64Array(Q),this._tickIndex=0,this._tickCount=0,this._ticksOverBudget=0,this._maxTickMs=0,this._totalTicks=0,this._operations.clear(),this._entityCosts.clear(),this._snapshotIntervalMs>0)this._snapshotTimer=setInterval(()=>{let B=this.getSnapshot();this.emit("PERFORMANCE_MONITOR.SNAPSHOT",B)},this._snapshotIntervalMs)}disable(){if(this._enabled=!1,this._entityProfilingEnabled=!1,this._snapshotTimer)clearInterval(this._snapshotTimer),this._snapshotTimer=null}enableEntityProfiling(A){if(this._entityProfilingEnabled=A,!A)this._entityCosts.clear()}measure(A,Q){if(!this._enabled)return Q();let B=performance.now(),Y=Q(),J=performance.now()-B;return this._recordOperation(A,J),Y}async measureAsync(A,Q){if(!this._enabled)return Q();let B=performance.now(),Y=await Q(),J=performance.now()-B;return this._recordOperation(A,J),Y}startTiming(A){if(!this._enabled)return()=>{};let Q=performance.now();return()=>{this._recordOperation(A,performance.now()-Q)}}beginTick(A,Q,B){this._currentTick=A,this._currentTickStart=performance.now(),this._currentPhases={},this._currentEntityCount=Q,this._currentPlayerCount=B}recordPhase(A,Q){this._currentPhases[A]=Q,this._recordOperation(A,Q)}endTick(){let A=performance.now()-this._currentTickStart;if(this._tickDurations[this._tickIndex]=A,this._tickIndex=(this._tickIndex+1)%this._tickDurations.length,this._tickCount=Math.min(this._tickCount+1,this._tickDurations.length),this._totalTicks++,A>this._maxTickMs)this._maxTickMs=A;if(A>this._tickBudgetMs)this._ticksOverBudget++;let Q=process.memoryUsage().heapUsed/1048576,B={tick:this._currentTick,durationMs:A,budgetMs:this._tickBudgetMs,budgetPercent:A/this._tickBudgetMs*100,phases:{...this._currentPhases},entityCount:this._currentEntityCount,playerCount:this._currentPlayerCount,heapUsedMb:Q};if(this.emit("PERFORMANCE_MONITOR.TICK_REPORT",B),A>this._spikeThresholdMs)this.emit("PERFORMANCE_MONITOR.SPIKE_DETECTED",B)}recordEntityCost(A,Q,B){this._entityCosts.set(A,{tickMs:B,name:Q})}getEntityCosts(){return new Map(this._entityCosts)}getSnapshot(){let A=process.memoryUsage(),B=this._getTickSamples().slice().sort((Y,J)=>Y-J);return{uptimeMs:performance.now()-this._startTime,tickRate:60,avgTickMs:B.length>0?B.reduce((Y,J)=>Y+J,0)/B.length:0,maxTickMs:this._maxTickMs,p95TickMs:B.length>0?B[Math.floor(B.length*0.95)]:0,p99TickMs:B.length>0?B[Math.floor(B.length*0.99)]:0,ticksOverBudget:this._ticksOverBudget,totalTicks:this._totalTicks,budgetMs:this._tickBudgetMs,operations:this._getOperationStats(),memory:{heapUsedMb:A.heapUsed/1048576,heapTotalMb:A.heapTotal/1048576,rssMb:A.rss/1048576}}}resetStats(){this._tickIndex=0,this._tickCount=0,this._ticksOverBudget=0,this._maxTickMs=0,this._totalTicks=0,this._operations.clear(),this._entityCosts.clear()}_recordOperation(A,Q){let B=this._operations.get(A);if(!B)B={count:0,totalMs:0,minMs:1/0,maxMs:0,lastMs:0,samples:new Float64Array(1000),sampleIndex:0,sampleCount:0},this._operations.set(A,B);if(B.count++,B.totalMs+=Q,B.lastMs=Q,QB.maxMs)B.maxMs=Q;B.samples[B.sampleIndex]=Q,B.sampleIndex=(B.sampleIndex+1)%B.samples.length,B.sampleCount=Math.min(B.sampleCount+1,B.samples.length)}_getTickSamples(){if(this._tickCount===0)return[];let A=[];for(let Q=0;QJ-C),A[Q]={count:B.count,totalMs:B.totalMs,avgMs:B.count>0?B.totalMs/B.count:0,minMs:B.minMs===1/0?0:B.minMs,maxMs:B.maxMs,lastMs:B.lastMs,p50Ms:Y.length>0?Y[Math.floor(Y.length*0.5)]:0,p95Ms:Y.length>0?Y[Math.floor(Y.length*0.95)]:0,p99Ms:Y.length>0?Y[Math.floor(Y.length*0.99)]:0}}return A}}class cD{_activeEntities=new Set;_entities=new Map;_nextEntityId=1;_world;constructor(A){this._world=A}get entityCount(){return this._entities.size}get world(){return this._world}registerEntity(A){if(A.id!==void 0)n.fatalError(`EntityManager.registerEntity(): Entity ${A.name} is already assigned the id ${A.id}!`);let Q=this._nextEntityId;if(this._entities.set(Q,A),this._nextEntityId++,!A.isEnvironmental)this._activeEntities.add(A);return Q}unregisterEntity(A){if(A.id===void 0)return n.error(`EntityManager.unregisterEntity(): Entity ${A.name} is not assigned an id!`);if(this._entities.delete(A.id),!A.isEnvironmental)this._activeEntities.delete(A)}getAllEntities(){return Array.from(this._entities.values())}getAllPlayerEntities(){let A=[];return this._entities.forEach((Q)=>{if(Q instanceof n1)A.push(Q)}),A}getPlayerEntitiesByPlayer(A){let Q=[];return this._entities.forEach((B)=>{if(B instanceof n1&&B.player===A)Q.push(B)}),Q}getEntity(A){return this._entities.get(A)}getEntitiesByTag(A){let Q=[];return this._entities.forEach((B)=>{if(B.tag===A)Q.push(B)}),Q}getEntitiesByTagSubstring(A){let Q=[];return this._entities.forEach((B)=>{if(B.tag?.includes(A))Q.push(B)}),Q}getEntityChildren(A){let Q=[];return this._entities.forEach((B)=>{if(B.parent===A)Q.push(B)}),Q}tickEntities(A){let Q=cY.instance,B=Q.isEntityProfilingEnabled;for(let Y of this._activeEntities)if(B){let J=performance.now();Y.tick(A),Q.recordEntityCost(Y.id??0,Y.name,performance.now()-J)}else Y.tick(A)}checkAndEmitUpdates(){for(let A of this._activeEntities)A.checkAndEmitUpdates()}}import{gzipSync as Qb0}from"zlib";var J9=qA(YHA(),1),PNY=J9.default.v1,TNY=J9.default.v1ToV6,SNY=J9.default.v3,JHA=J9.default.v4,kNY=J9.default.v5,_NY=J9.default.v6,vNY=J9.default.v6ToV1,yNY=J9.default.v7,hNY=J9.default.NIL,gNY=J9.default.MAX,xNY=J9.default.version,fNY=J9.default.validate,bNY=J9.default.stringify,mNY=J9.default.parse;var dm;try{dm=new TextDecoder}catch(A){}var _A,R8,t=0;var im=[],IZ=im,iD=0,eB={},DB,uX,z8=0,q5=0,kY,dX,x9=[],UB,CHA={useRecords:!1,mapsAsObjects:!0};class bw{}var nm=new bw;nm.name="MessagePack 0xC1";var u7=!1,EHA=2,cm,lm,pm;try{Function("")}catch(A){EHA=1/0}class cX{constructor(A){if(A){if(A.useRecords===!1&&A.mapsAsObjects===void 0)A.mapsAsObjects=!0;if(A.sequential&&A.trusted!==!1){if(A.trusted=!0,!A.structures&&A.useRecords!=!1){if(A.structures=[],!A.maxSharedStructures)A.maxSharedStructures=0}}if(A.structures)A.structures.sharedLength=A.structures.length;else if(A.getStructures)(A.structures=[]).uninitialized=!0,A.structures.sharedLength=0;if(A.int64AsNumber)A.int64AsType="number"}Object.assign(this,A)}unpack(A,Q){if(_A)return zHA(()=>{return fw(),this?this.unpack(A,Q):cX.prototype.unpack.call(CHA,A,Q)});if(!A.buffer&&A.constructor===ArrayBuffer)A=typeof Buffer<"u"?Buffer.from(A):new Uint8Array(A);if(typeof Q==="object")R8=Q.end||A.length,t=Q.start||0;else t=0,R8=Q>-1?Q:A.length;iD=0,q5=0,uX=null,IZ=im,kY=null,_A=A;try{UB=A.dataView||(A.dataView=new DataView(A.buffer,A.byteOffset,A.byteLength))}catch(B){if(_A=null,A instanceof Uint8Array)throw B;throw Error("Source must be a Uint8Array or Buffer but was a "+(A&&typeof A=="object"?A.constructor.name:typeof A))}if(this instanceof cX){if(eB=this,this.structures)return DB=this.structures,gw(Q);else if(!DB||DB.length>0)DB=[]}else if(eB=CHA,!DB||DB.length>0)DB=[];return gw(Q)}unpackMultiple(A,Q){let B,Y=0;try{u7=!0;let J=A.length,C=this?this.unpack(A,J):uw.unpack(A,J);if(Q){if(Q(C,Y,t)===!1)return;while(tB.slice(0));for(let B=0,Y=A.length;B=32)J.highByte=B-32>>5}}A.sharedLength=A.length;for(let B in Q||[])if(B>=0){let Y=A[B],J=Q[B];if(J){if(Y)(A.restoreStructures||(A.restoreStructures=[]))[B]=Y;A[B]=J}}return this.structures=A}decode(A,Q){return this.unpack(A,Q)}}function gw(A){try{if(!eB.trusted&&!u7){let B=DB.sharedLength||0;if(B=32&&cm){if(Q=cm(_A,t,R8,eB),_A=null,!(A&&A.lazy)&&Q)Q=Q.toJSON();t=R8}else Q=GY();if(kY)t=kY.postBundlePosition,kY=null;if(u7)DB.restoreStructures=null;if(t==R8){if(DB&&DB.restoreStructures)XHA();if(DB=null,_A=null,dX)dX=null}else if(t>R8)throw Error("Unexpected end of MessagePack data");else if(!u7){let B;try{B=JSON.stringify(Q,(Y,J)=>typeof J==="bigint"?`${J}n`:J).slice(0,100)}catch(Y){B="(JSON view not available "+Y+")"}throw Error("Data read, but end of buffer not reached "+B)}return Q}catch(Q){if(DB&&DB.restoreStructures)XHA();if(fw(),Q instanceof RangeError||Q.message.startsWith("Unexpected end of buffer")||t>R8)Q.incomplete=!0;throw Q}}function XHA(){for(let A in DB.restoreStructures)DB[A]=DB.restoreStructures[A];DB.restoreStructures=null}function GY(){let A=_A[t++];if(A<160)if(A<128)if(A<64)return A;else{let Q=DB[A&63]||eB.getStructures&&KHA()[A&63];if(Q){if(!Q.read)Q.read=sm(Q,A&63);return Q.read()}else return A}else if(A<144)if(A-=128,eB.mapsAsObjects){let Q={};for(let B=0;B=t)return uX.slice(t-z8,(t+=Q)-z8);if(q5==0&&R8<140){let B=Q<16?rm(Q):LHA(Q);if(B!=null)return B}return xw(Q)}else{let Q;switch(A){case 192:return null;case 193:if(kY)if(Q=GY(),Q>0)return kY[1].slice(kY.position1,kY.position1+=Q);else return kY[0].slice(kY.position0,kY.position0-=Q);return nm;case 194:return!1;case 195:return!0;case 196:if(Q=_A[t++],Q===void 0)throw Error("Unexpected end of buffer");return um(Q);case 197:return Q=UB.getUint16(t),t+=2,um(Q);case 198:return Q=UB.getUint32(t),t+=4,um(Q);case 199:return VZ(_A[t++]);case 200:return Q=UB.getUint16(t),t+=2,VZ(Q);case 201:return Q=UB.getUint32(t),t+=4,VZ(Q);case 202:if(Q=UB.getFloat32(t),eB.useFloat32>2){let B=DZ[(_A[t]&127)<<1|_A[t+1]>>7];return t+=4,(B*Q+(Q>0?0.5:-0.5)>>0)/B}return t+=4,Q;case 203:return Q=UB.getFloat64(t),t+=8,Q;case 204:return _A[t++];case 205:return Q=UB.getUint16(t),t+=2,Q;case 206:return Q=UB.getUint32(t),t+=4,Q;case 207:if(eB.int64AsType==="number")Q=UB.getUint32(t)*4294967296,Q+=UB.getUint32(t+4);else if(eB.int64AsType==="string")Q=UB.getBigUint64(t).toString();else if(eB.int64AsType==="auto"){if(Q=UB.getBigUint64(t),Q<=BigInt(2)<=BigInt(-2)<=t)return uX.slice(t-z8,(t+=Q)-z8);return VHA(Q);case 218:if(Q=UB.getUint16(t),t+=2,q5>=t)return uX.slice(t-z8,(t+=Q)-z8);return IHA(Q);case 219:if(Q=UB.getUint32(t),t+=4,q5>=t)return uX.slice(t-z8,(t+=Q)-z8);return HHA(Q);case 220:return Q=UB.getUint16(t),t+=2,FHA(Q);case 221:return Q=UB.getUint32(t),t+=4,FHA(Q);case 222:return Q=UB.getUint16(t),t+=2,WHA(Q);case 223:return Q=UB.getUint32(t),t+=4,WHA(Q);default:if(A>=224)return A-256;if(A===void 0){let B=Error("Unexpected end of MessagePack data");throw B.incomplete=!0,B}throw Error("Unknown MessagePack token "+A)}}}var zWB=/^[a-zA-Z_$][a-zA-Z\d_$]*$/;function sm(A,Q){function B(){if(B.count++>EHA){let J=A.read=Function("r","return function(){return "+(eB.freezeData?"Object.freeze":"")+"({"+A.map((C)=>C==="__proto__"?"__proto_:r()":zWB.test(C)?C+":r()":"["+JSON.stringify(C)+"]:r()").join(",")+"})}")(GY);if(A.highByte===0)A.read=GHA(Q,A.read);return J()}let Y={};for(let J=0,C=A.length;J{return function(){let B=_A[t++];if(B===0)return Q();let Y=A<32?-(A+(B<<5)):A+(B<<5),J=DB[Y]||KHA()[Y];if(!J)throw Error("Record id is not defined for "+Y);if(!J.read)J.read=sm(J,A);return J.read()}};function KHA(){let A=zHA(()=>{return _A=null,eB.getStructures()});return DB=eB._mergeStructures(A,DB)}var xw=HZ,VHA=HZ,IHA=HZ,HHA=HZ,mw=!1;function DHA(A){mw=!0,xw=Q(1),VHA=Q(2),IHA=Q(3),HHA=Q(5);function Q(B){return function(J){let C=IZ[iD++];if(C==null){if(kY)return HZ(J);let G=_A.byteOffset,F=A(t-B+G,R8+G,_A.buffer);if(typeof F=="string")C=F,IZ=im;else if(IZ=F,iD=1,q5=1,C=IZ[0],C===void 0)throw Error("Unexpected end of buffer")}let X=C.length;if(X<=J)return t+=J,C;return uX=C,z8=t,q5=t+X,t+=J,C.slice(0,J)}}}function HZ(A){let Q;if(A<16){if(Q=rm(A))return Q}if(A>64&&dm)return dm.decode(_A.subarray(t,t+=A));let B=t+A,Y=[];Q="";while(t65535)F-=65536,Y.push(F>>>10&1023|55296),F=56320|F&1023;Y.push(F)}else Y.push(J);if(Y.length>=4096)Q+=lY.apply(String,Y),Y.length=0}if(Y.length>0)Q+=lY.apply(String,Y);return Q}function NHA(A,Q,B){let Y=_A;_A=A,t=Q;try{return HZ(B)}finally{_A=Y}}function FHA(A){let Q=Array(A);for(let B=0;B0){t=Q;return}B[Y]=J}return lY.apply(String,B)}function rm(A){if(A<4)if(A<2)if(A===0)return"";else{let Q=_A[t++];if((Q&128)>1){t-=1;return}return lY(Q)}else{let Q=_A[t++],B=_A[t++];if((Q&128)>0||(B&128)>0){t-=2;return}if(A<3)return lY(Q,B);let Y=_A[t++];if((Y&128)>0){t-=3;return}return lY(Q,B,Y)}else{let Q=_A[t++],B=_A[t++],Y=_A[t++],J=_A[t++];if((Q&128)>0||(B&128)>0||(Y&128)>0||(J&128)>0){t-=4;return}if(A<6)if(A===4)return lY(Q,B,Y,J);else{let C=_A[t++];if((C&128)>0){t-=5;return}return lY(Q,B,Y,J,C)}else if(A<8){let C=_A[t++],X=_A[t++];if((C&128)>0||(X&128)>0){t-=6;return}if(A<7)return lY(Q,B,Y,J,C,X);let G=_A[t++];if((G&128)>0){t-=7;return}return lY(Q,B,Y,J,C,X,G)}else{let C=_A[t++],X=_A[t++],G=_A[t++],F=_A[t++];if((C&128)>0||(X&128)>0||(G&128)>0||(F&128)>0){t-=8;return}if(A<10)if(A===8)return lY(Q,B,Y,J,C,X,G,F);else{let W=_A[t++];if((W&128)>0){t-=9;return}return lY(Q,B,Y,J,C,X,G,F,W)}else if(A<12){let W=_A[t++],Z=_A[t++];if((W&128)>0||(Z&128)>0){t-=10;return}if(A<11)return lY(Q,B,Y,J,C,X,G,F,W,Z);let U=_A[t++];if((U&128)>0){t-=11;return}return lY(Q,B,Y,J,C,X,G,F,W,Z,U)}else{let W=_A[t++],Z=_A[t++],U=_A[t++],$=_A[t++];if((W&128)>0||(Z&128)>0||(U&128)>0||($&128)>0){t-=12;return}if(A<14)if(A===12)return lY(Q,B,Y,J,C,X,G,F,W,Z,U,$);else{let E=_A[t++];if((E&128)>0){t-=13;return}return lY(Q,B,Y,J,C,X,G,F,W,Z,U,$,E)}else{let E=_A[t++],K=_A[t++];if((E&128)>0||(K&128)>0){t-=14;return}if(A<15)return lY(Q,B,Y,J,C,X,G,F,W,Z,U,$,E,K);let I=_A[t++];if((I&128)>0){t-=15;return}return lY(Q,B,Y,J,C,X,G,F,W,Z,U,$,E,K,I)}}}}}function ZHA(){let A=_A[t++],Q;if(A<192)Q=A-160;else switch(A){case 217:Q=_A[t++];break;case 218:Q=UB.getUint16(t),t+=2;break;case 219:Q=UB.getUint32(t),t+=4;break;default:throw Error("Expected string")}return HZ(Q)}function um(A){return eB.copyBuffers?Uint8Array.prototype.slice.call(_A,t,t+=A):_A.subarray(t,t+=A)}function VZ(A){let Q=_A[t++];if(x9[Q]){let B;return x9[Q](_A.subarray(t,B=t+=A),(Y)=>{t=Y;try{return GY()}finally{t=B}})}else throw Error("Unknown extension type "+Q)}var $HA=Array(4096);function qHA(){let A=_A[t++];if(A>=160&&A<192){if(A=A-160,q5>=t)return uX.slice(t-z8,(t+=A)-z8);else if(!(q5==0&&R8<180))return xw(A)}else return t--,MHA(GY());let Q=(A<<5^(A>1?UB.getUint16(t):A>0?_A[t]:0))&4095,B=$HA[Q],Y=t,J=t+A-3,C,X=0;if(B&&B.bytes==A){while(Y["string","number","boolean","bigint"].includes(typeof Q)))return A.flat().toString();throw Error(`Invalid property type for record: ${typeof A}`)}var UHA=(A,Q)=>{let B=GY().map(MHA),Y=A;if(Q!==void 0)A=A<32?-((Q<<5)+A):(Q<<5)+A,B.highByte=Q;let J=DB[A];if(J&&(J.isShared||u7))(DB.restoreStructures||(DB.restoreStructures=[]))[A]=J;return DB[A]=B,B.read=sm(B,Y),B.read()};x9[0]=()=>{};x9[0].noBuffer=!0;x9[66]=(A)=>{let Q=A.length,B=BigInt(A[0]&128?A[0]-256:A[0]);for(let Y=1;Y{let A=GY();return(RWB[A[0]]||Error)(A[1],{cause:A[2]})};x9[105]=(A)=>{if(eB.structuredClone===!1)throw Error("Structured clone extension is disabled");let Q=UB.getUint32(t-4);if(!dX)dX=new Map;let B=_A[t],Y;if(B>=144&&B<160||B==220||B==221)Y=[];else if(B>=128&&B<144||B==222||B==223)Y=new Map;else if((B>=199&&B<=201||B>=212&&B<=216)&&_A[t+1]===115)Y=new Set;else Y={};let J={target:Y};dX.set(Q,J);let C=GY();if(!J.used)return J.target=C;else Object.assign(Y,C);if(Y instanceof Map)for(let[X,G]of C.entries())Y.set(X,G);if(Y instanceof Set)for(let X of Array.from(C))Y.add(X);return Y};x9[112]=(A)=>{if(eB.structuredClone===!1)throw Error("Structured clone extension is disabled");let Q=UB.getUint32(t-4),B=dX.get(Q);return B.used=!0,B.target};x9[115]=()=>new Set(GY());var am=["Int8","Uint8","Uint8Clamped","Int16","Uint16","Int32","Uint32","Float32","Float64","BigInt64","BigUint64"].map((A)=>A+"Array"),wWB=typeof globalThis==="object"?globalThis:window;x9[116]=(A)=>{let Q=A[0],B=Uint8Array.prototype.slice.call(A,1).buffer,Y=am[Q];if(!Y){if(Q===16)return B;if(Q===17)return new DataView(B);throw Error("Could not find typed array for code "+Q)}return new wWB[Y](B)};x9[120]=()=>{let A=GY();return new RegExp(A[0],A[1])};var jWB=[];x9[98]=(A)=>{let Q=(A[0]<<24)+(A[1]<<16)+(A[2]<<8)+A[3],B=t;return t+=Q-A.length,kY=jWB,kY=[ZHA(),ZHA()],kY.position0=0,kY.position1=0,kY.postBundlePosition=t,t=B,GY()};x9[255]=(A)=>{if(A.length==4)return new Date((A[0]*16777216+(A[1]<<16)+(A[2]<<8)+A[3])*1000);else if(A.length==8)return new Date(((A[0]<<22)+(A[1]<<14)+(A[2]<<6)+(A[3]>>2))/1e6+((A[3]&3)*4294967296+A[4]*16777216+(A[5]<<16)+(A[6]<<8)+A[7])*1000);else if(A.length==12)return new Date(((A[0]<<24)+(A[1]<<16)+(A[2]<<8)+A[3])/1e6+((A[4]&128?-281474976710656:0)+A[6]*1099511627776+A[7]*4294967296+A[8]*16777216+(A[9]<<16)+(A[10]<<8)+A[11])*1000);else return new Date("invalid")};function zHA(A){if(pm)pm();let Q=R8,B=t,Y=iD,J=z8,C=q5,X=uX,G=IZ,F=dX,W=kY,Z=new Uint8Array(_A.slice(0,R8)),U=DB,$=DB.slice(0,DB.length),E=eB,K=u7,I=A();return R8=Q,t=B,iD=Y,z8=J,q5=C,uX=X,IZ=G,dX=F,kY=W,_A=Z,u7=K,DB=U,DB.splice(0,DB.length,...$),eB=E,UB=new DataView(_A.buffer,_A.byteOffset,_A.byteLength),I}function fw(){_A=null,dX=null,DB=null}var DZ=Array(147);for(let A=0;A<256;A++)DZ[A]=+("1e"+Math.floor(45.15-A*0.30103));var uw=new cX({useRecords:!1}),OWB=uw.unpack,PWB=uw.unpackMultiple,TWB=uw.unpack,nD={NEVER:0,ALWAYS:1,DECIMAL_ROUND:3,DECIMAL_FIT:4},SWB=new Float32Array(1),dNY=new Uint8Array(SWB.buffer,0,4);function RHA(A,Q,B){cm=A,lm=Q,pm=B}var cw;try{cw=new TextEncoder}catch(A){}var em,OHA,rD=typeof Buffer<"u",dw=rD?function(A){return Buffer.allocUnsafeSlow(A)}:Uint8Array,PHA=rD?Buffer:Uint8Array,wHA=rD?4294967296:2144337920,$A,sD,X0,BA=0,C9,y0=null,THA,kWB=21760,_WB=/[\u0080-\uFFFF]/,s1=Symbol("record-id");class NZ extends cX{constructor(A){super(A);this.offset=0;let Q,B,Y,J,C,X=PHA.prototype.utf8Write?function(T,S){return $A.utf8Write(T,S,$A.byteLength-S)}:cw&&cw.encodeInto?function(T,S){return cw.encodeInto(T,$A.subarray(S)).written}:!1,G=this;if(!A)A={};let F=A&&A.sequential,W=A.structures||A.saveStructures,Z=A.maxSharedStructures;if(Z==null)Z=W?32:0;if(Z>8160)throw Error("Maximum maxSharedStructure is 8160");if(A.structuredClone&&A.moreTypes==null)this.moreTypes=!0;let U=A.maxOwnStructures;if(U==null)U=W?32:64;if(!this.structures&&A.useRecords!=!1)this.structures=[];let $=Z>32||U+Z>64,E=Z+64,K=Z+U+64;if(K>8256)throw Error("Maximum maxSharedStructure + maxOwnStructure is 8192");let I=[],V=0,H=0;this.pack=this.encode=function(T,S){if(!$A)$A=new dw(8192),X0=$A.dataView||($A.dataView=new DataView($A.buffer,0,8192)),BA=0;if(C9=$A.length-10,C9-BA<2048)$A=new dw($A.length),X0=$A.dataView||($A.dataView=new DataView($A.buffer,0,$A.length)),C9=$A.length-10,BA=0;else BA=BA+7&2147483640;if(B=BA,S&bWB)BA+=S&255;if(C=G.structuredClone?new Map:null,G.bundleStrings&&typeof T!=="string")y0=[],y0.size=1/0;else y0=null;if(J=G.structures,J){if(J.uninitialized)J=G._mergeStructures(G.getStructures());let y=J.sharedLength||0;if(y>Z)throw Error("Shared structures is larger than maximum shared structures, try increasing maxSharedStructures to "+J.sharedLength);if(!J.transitions){J.transitions=Object.create(null);for(let g=0;gp.offset>l.offset?1:-1),h=g.length,m=-1;while(y&&h>0){let p=g[--h].offset+B;if(py.position+B){if(m>=0)m+=6}else{if(m>=0)X0.setUint32(y.position+B,X0.getUint32(y.position+B)+m),m=-1;y=y.previous,h++}}if(m>=0&&y)X0.setUint32(y.position+B,X0.getUint32(y.position+B)+m);if(BA+=g.length*6,BA>C9)P(BA);G.offset=BA;let i=yWB($A.subarray(B,BA),g);return C=null,i}if(G.offset=BA,S&xWB)return $A.start=B,$A.end=BA,$A;return $A.subarray(B,BA)}catch(y){throw v=y,y}finally{if(J){if(D(),Y&&G.saveStructures){let y=J.sharedLength||0,g=$A.subarray(B,BA),h=SHA(J,G);if(!v){if(G.saveStructures(h,h.isCompatible)===!1)return G.pack(T,S);if(G.lastNamedStructuresLength=y,$A.length>1073741824)$A=null;return g}}}if($A.length>1073741824)$A=null;if(S&fWB)BA=B}};let D=()=>{if(H<10)H++;let T=J.sharedLength||0;if(J.length>T&&!F)J.length=T;if(V>1e4){if(J.transitions=null,H=0,V=0,I.length>0)I=[]}else if(I.length>0&&!F){for(let S=0,v=I.length;S{var S=T.length;if(S<16)$A[BA++]=144|S;else if(S<65536)$A[BA++]=220,$A[BA++]=S>>8,$A[BA++]=S&255;else $A[BA++]=221,X0.setUint32(BA,S),BA+=4;for(let v=0;v{if(BA>C9)$A=P(BA);var S=typeof T,v;if(S==="string"){let y=T.length;if(y0&&y>=4&&y<4096){if((y0.size+=y)>kWB){let i,p=(y0[0]?y0[0].length*3+y0[1].length:0)+10;if(BA+p>C9)$A=P(BA+p);let l;if(y0.position)l=y0,$A[BA]=200,BA+=3,$A[BA++]=98,i=BA-B,BA+=4,jHA(B,z,0),X0.setUint16(i+B-3,BA-B-i);else $A[BA++]=214,$A[BA++]=98,i=BA-B,BA+=4;y0=["",""],y0.previous=l,y0.size=0,y0.position=i}let m=_WB.test(T);y0[m?0:1]+=T,$A[BA++]=193,z(m?-y:y);return}let g;if(y<32)g=1;else if(y<256)g=2;else if(y<65536)g=3;else g=5;let h=y*3;if(BA+h>C9)$A=P(BA+h);if(y<64||!X){let m,i,p,l=BA+g;for(m=0;m>6|192,$A[l++]=i&63|128;else if((i&64512)===55296&&((p=T.charCodeAt(m+1))&64512)===56320)i=65536+((i&1023)<<10)+(p&1023),m++,$A[l++]=i>>18|240,$A[l++]=i>>12&63|128,$A[l++]=i>>6&63|128,$A[l++]=i&63|128;else $A[l++]=i>>12|224,$A[l++]=i>>6&63|128,$A[l++]=i&63|128;v=l-BA-g}else v=X(T,BA+g);if(v<32)$A[BA++]=160|v;else if(v<256){if(g<2)$A.copyWithin(BA+2,BA+1,BA+1+v);$A[BA++]=217,$A[BA++]=v}else if(v<65536){if(g<3)$A.copyWithin(BA+3,BA+2,BA+2+v);$A[BA++]=218,$A[BA++]=v>>8,$A[BA++]=v&255}else{if(g<5)$A.copyWithin(BA+5,BA+3,BA+3+v);$A[BA++]=219,X0.setUint32(BA,v),BA+=4}BA+=v}else if(S==="number")if(T>>>0===T)if(T<32||T<128&&this.useRecords===!1||T<64&&!this.randomAccessStructure)$A[BA++]=T;else if(T<256)$A[BA++]=204,$A[BA++]=T;else if(T<65536)$A[BA++]=205,$A[BA++]=T>>8,$A[BA++]=T&255;else $A[BA++]=206,X0.setUint32(BA,T),BA+=4;else if(T>>0===T)if(T>=-32)$A[BA++]=256+T;else if(T>=-128)$A[BA++]=208,$A[BA++]=T+256;else if(T>=-32768)$A[BA++]=209,X0.setInt16(BA,T),BA+=2;else $A[BA++]=210,X0.setInt32(BA,T),BA+=4;else{let y;if((y=this.useFloat32)>0&&T<4294967296&&T>=-2147483648){$A[BA++]=202,X0.setFloat32(BA,T);let g;if(y<4||(g=T*DZ[($A[BA]&127)<<1|$A[BA+1]>>7])>>0===g){BA+=4;return}else BA--}$A[BA++]=203,X0.setFloat64(BA,T),BA+=8}else if(S==="object"||S==="function")if(!T)$A[BA++]=192;else{if(C){let g=C.get(T);if(g){if(!g.id){let h=C.idsToInsert||(C.idsToInsert=[]);g.id=h.push(g)}$A[BA++]=214,$A[BA++]=112,X0.setUint32(BA,g.id),BA+=4;return}else C.set(T,{offset:BA-B})}let y=T.constructor;if(y===Object)w(T);else if(y===Array)L(T);else if(y===Map)if(this.mapAsEmptyObject)$A[BA++]=128;else{if(v=T.size,v<16)$A[BA++]=128|v;else if(v<65536)$A[BA++]=222,$A[BA++]=v>>8,$A[BA++]=v&255;else $A[BA++]=223,X0.setUint32(BA,v),BA+=4;for(let[g,h]of T)z(g),z(h)}else{for(let g=0,h=em.length;g{if($A=p,p=null,BA+=b,BA>C9)P(BA);return{target:$A,targetView:X0,position:BA-b}},z)}finally{if(p)$A=p,X0=l,BA=d,C9=$A.length-10}if(x){if(x.length+BA>C9)P(x.length+BA);BA=vWB(x,$A,BA,i.type)}return}}if(Array.isArray(T))L(T);else{if(T.toJSON){let g=T.toJSON();if(g!==T)return z(g)}if(S==="function")return z(this.writeFunction&&this.writeFunction(T));w(T)}}}else if(S==="boolean")$A[BA++]=T?195:194;else if(S==="bigint"){if(T<9223372036854776000&&T>=-9223372036854776000)$A[BA++]=211,X0.setBigInt64(BA,T);else if(T<18446744073709552000&&T>0)$A[BA++]=207,X0.setBigUint64(BA,T);else if(this.largeBigIntToFloat)$A[BA++]=203,X0.setFloat64(BA,Number(T));else if(this.largeBigIntToString)return z(T.toString());else if((this.useBigIntExtension||this.moreTypes)&&T-(BigInt(2)**BigInt(1023))){$A[BA++]=199,BA++,$A[BA++]=66;let y=[],g;do{let h=T&BigInt(255);g=(h&BigInt(128))===(T>=BigInt(8)}while(!((T===BigInt(0)||T===BigInt(-1))&&g));$A[BA-2]=y.length;for(let h=y.length;h>0;)$A[BA++]=Number(y[--h]);return}else throw RangeError(T+" was too large to fit in MessagePack 64-bit integer format, use useBigIntExtension, or set largeBigIntToFloat to convert to float-64, or set largeBigIntToString to convert to string");BA+=8}else if(S==="undefined")if(this.encodeUndefinedAsNil)$A[BA++]=192;else $A[BA++]=212,$A[BA++]=0,$A[BA++]=0;else throw Error("Unknown type: "+S)},M=this.variableMapSize||this.coercibleKeyAsNumber||this.skipValues?(T)=>{let S;if(this.skipValues){S=[];for(let g in T)if((typeof T.hasOwnProperty!=="function"||T.hasOwnProperty(g))&&!this.skipValues.includes(T[g]))S.push(g)}else S=Object.keys(T);let v=S.length;if(v<16)$A[BA++]=128|v;else if(v<65536)$A[BA++]=222,$A[BA++]=v>>8,$A[BA++]=v&255;else $A[BA++]=223,X0.setUint32(BA,v),BA+=4;let y;if(this.coercibleKeyAsNumber)for(let g=0;g{$A[BA++]=222;let S=BA-B;BA+=2;let v=0;for(let y in T)if(typeof T.hasOwnProperty!=="function"||T.hasOwnProperty(y))z(y),z(T[y]),v++;if(v>65535)throw Error('Object is too large to serialize with fast 16-bit map size, use the "variableMapSize" option to serialize this object');$A[S+++B]=v>>8,$A[S+B]=v&255},N=this.useRecords===!1?M:A.progressiveRecords&&!$?(T)=>{let S,v=J.transitions||(J.transitions=Object.create(null)),y=BA++-B,g;for(let h in T)if(typeof T.hasOwnProperty!=="function"||T.hasOwnProperty(h)){if(S=v[h],S)v=S;else{let m=Object.keys(T),i=v;v=J.transitions;let p=0;for(let l=0,d=m.length;l{let S,v=J.transitions||(J.transitions=Object.create(null)),y=0;for(let h in T)if(typeof T.hasOwnProperty!=="function"||T.hasOwnProperty(h)){if(S=v[h],!S)S=v[h]=Object.create(null),y++;v=S}let g=v[s1];if(g)if(g>=96&&$)$A[BA++]=((g-=96)&31)+96,$A[BA++]=g>>5;else $A[BA++]=g;else _(v,v.__keys__||Object.keys(T),y);for(let h in T)if(typeof T.hasOwnProperty!=="function"||T.hasOwnProperty(h))z(T[h])},q=typeof this.useRecords=="function"&&this.useRecords,w=q?(T)=>{q(T)?N(T):M(T)}:N,P=(T)=>{let S;if(T>16777216){if(T-B>wHA)throw Error("Packed buffer would be larger than maximum buffer size");S=Math.min(wHA,Math.round(Math.max((T-B)*(T>67108864?1.25:2),4194304)/4096)*4096)}else S=(Math.max(T-B<<2,$A.length-1)>>12)+1<<12;let v=new dw(S);if(X0=v.dataView||(v.dataView=new DataView(v.buffer,0,S)),T=Math.min(T,$A.length),$A.copy)$A.copy(v,0,B,T);else v.set($A.slice(B,T));return BA-=B,B=0,C9=v.length-10,$A=v},_=(T,S,v)=>{let y=J.nextId;if(!y)y=64;if(y=K)y=E;J.nextId=y+1}let g=S.highByte=y>=96&&$?y-96>>5:-1;if(T[s1]=y,T.__keys__=S,J[y-64]=S,y=0)$A[BA++]=(y&31)+96,$A[BA++]=g;else $A[BA++]=y;else{if(g>=0)$A[BA++]=213,$A[BA++]=114,$A[BA++]=(y&31)+96,$A[BA++]=g;else $A[BA++]=212,$A[BA++]=114,$A[BA++]=y;if(v)V+=H*v;if(I.length>=U)I.shift()[s1]=0;I.push(T),z(S)}},O=(T,S,v,y)=>{let g=$A,h=BA,m=C9,i=B;if($A=sD,BA=0,B=0,!$A)sD=$A=new dw(8192);C9=$A.length-10,_(T,S,y),sD=$A;let p=BA;if($A=g,BA=h,C9=m,B=i,p>1){let l=BA+p-1;if(l>C9)P(l);let d=v+B;$A.copyWithin(d+p,d+1,BA),$A.set(sD.slice(0,p),d),BA=l}else $A[v+B]=sD[0]},k=(T)=>{let S=THA(T,$A,B,BA,J,P,(v,y,g)=>{if(g)return Y=!0;BA=y;let h=$A;if(z(v),D(),h!==$A)return{position:BA,targetView:X0,target:$A};return BA},this);if(S===0)return w(T);BA=S}}useBuffer(A){$A=A,$A.dataView||($A.dataView=new DataView($A.buffer,$A.byteOffset,$A.byteLength)),BA=0}set position(A){BA=A}get position(){return BA}clearSharedData(){if(this.structures)this.structures=[];if(this.typedStructs)this.typedStructs=[]}}OHA=[Date,Set,Error,RegExp,ArrayBuffer,Object.getPrototypeOf(Uint8Array.prototype).constructor,DataView,bw];em=[{pack(A,Q,B){let Y=A.getTime()/1000;if((this.useTimestamp32||A.getMilliseconds()===0)&&Y>=0&&Y<4294967296){let{target:J,targetView:C,position:X}=Q(6);J[X++]=214,J[X++]=255,C.setUint32(X,Y)}else if(Y>0&&Y<4294967296){let{target:J,targetView:C,position:X}=Q(10);J[X++]=215,J[X++]=255,C.setUint32(X,A.getMilliseconds()*4000000+(Y/1000/4294967296>>0)),C.setUint32(X+4,Y)}else if(isNaN(Y)){if(this.onInvalidDate)return Q(0),B(this.onInvalidDate());let{target:J,targetView:C,position:X}=Q(3);J[X++]=212,J[X++]=255,J[X++]=255}else{let{target:J,targetView:C,position:X}=Q(15);J[X++]=199,J[X++]=12,J[X++]=255,C.setUint32(X,A.getMilliseconds()*1e6),C.setBigInt64(X+4,BigInt(Math.floor(Y)))}}},{pack(A,Q,B){if(this.setAsEmptyObject)return Q(0),B({});let Y=Array.from(A),{target:J,position:C}=Q(this.moreTypes?3:0);if(this.moreTypes)J[C++]=212,J[C++]=115,J[C++]=0;B(Y)}},{pack(A,Q,B){let{target:Y,position:J}=Q(this.moreTypes?3:0);if(this.moreTypes)Y[J++]=212,Y[J++]=101,Y[J++]=0;B([A.name,A.message,A.cause])}},{pack(A,Q,B){let{target:Y,position:J}=Q(this.moreTypes?3:0);if(this.moreTypes)Y[J++]=212,Y[J++]=120,Y[J++]=0;B([A.source,A.flags])}},{pack(A,Q){if(this.moreTypes)om(A,16,Q);else tm(rD?Buffer.from(A):new Uint8Array(A),Q)}},{pack(A,Q){let B=A.constructor;if(B!==PHA&&this.moreTypes)om(A,am.indexOf(B.name),Q);else tm(A,Q)}},{pack(A,Q){if(this.moreTypes)om(A,17,Q);else tm(rD?Buffer.from(A):new Uint8Array(A),Q)}},{pack(A,Q){let{target:B,position:Y}=Q(1);B[Y]=193}}];function om(A,Q,B,Y){let J=A.byteLength;if(J+1<256){var{target:C,position:X}=B(4+J);C[X++]=199,C[X++]=J+1}else if(J+1<65536){var{target:C,position:X}=B(5+J);C[X++]=200,C[X++]=J+1>>8,C[X++]=J+1&255}else{var{target:C,position:X,targetView:G}=B(7+J);C[X++]=201,G.setUint32(X,J+1),X+=4}if(C[X++]=116,C[X++]=Q,!A.buffer)A=new Uint8Array(A);C.set(new Uint8Array(A.buffer,A.byteOffset,A.byteLength),X)}function tm(A,Q){let B=A.byteLength;var Y,J;if(B<256){var{target:Y,position:J}=Q(B+2);Y[J++]=196,Y[J++]=B}else if(B<65536){var{target:Y,position:J}=Q(B+3);Y[J++]=197,Y[J++]=B>>8,Y[J++]=B&255}else{var{target:Y,position:J,targetView:C}=Q(B+5);Y[J++]=198,C.setUint32(J,B),J+=4}Y.set(A,J)}function vWB(A,Q,B,Y){let J=A.length;switch(J){case 1:Q[B++]=212;break;case 2:Q[B++]=213;break;case 4:Q[B++]=214;break;case 8:Q[B++]=215;break;case 16:Q[B++]=216;break;default:if(J<256)Q[B++]=199,Q[B++]=J;else if(J<65536)Q[B++]=200,Q[B++]=J>>8,Q[B++]=J&255;else Q[B++]=201,Q[B++]=J>>24,Q[B++]=J>>16&255,Q[B++]=J>>8&255,Q[B++]=J&255}return Q[B++]=Y,Q.set(A,B),B+=J,B}function yWB(A,Q){let B,Y=Q.length*6,J=A.length-Y;while(B=Q.pop()){let{offset:C,id:X}=B;A.copyWithin(C+Y,C,J),Y-=6;let G=C+Y;A[G++]=214,A[G++]=105,A[G++]=X>>24,A[G++]=X>>16&255,A[G++]=X>>8&255,A[G++]=X&255,J=C}return A}function jHA(A,Q,B){if(y0.length>0){X0.setUint32(y0.position+A,BA+B-y0.position-A),y0.stringsPosition=BA-A;let Y=y0;y0=null,Q(Y[0]),Q(Y[1])}}function SHA(A,Q){return A.isCompatible=(B)=>{let Y=!B||(Q.lastNamedStructuresLength||0)===B.length;if(!Y)Q._mergeStructures(B);return Y},A}function kHA(A,Q){THA=A,SHA=Q}var _HA=new NZ({useRecords:!1}),hWB=_HA.pack,gWB=_HA.pack;var xWB=512,fWB=1024,bWB=2048;var Au=3,RE=0,aD=2,lw=1,Bu=16,yHA=["num","object","string","ascii"];yHA[Bu]="date";var uWB=[!1,!0,!0,!1,!1,!0,!0,!1],hHA;try{Function(""),hHA=!0}catch(A){}var LZ,dWB=typeof Buffer<"u",pw,r1;try{pw=new TextEncoder}catch(A){}var cWB=dWB?function(A,Q,B){return A.utf8Write(Q,B,A.byteLength-B)}:pw&&pw.encodeInto?function(A,Q,B){return pw.encodeInto(Q,A.subarray(B)).written}:!1,oNY=Symbol("type"),tNY=Symbol("parent");kHA(gHA,sWB);function gHA(A,Q,B,Y,J,C,X,G){let F=G.typedStructs||(G.typedStructs=[]),W=Q.dataView,Z=(F.lastStringStart||100)+Y,U=Q.length-10,$=Y;if(Y>U)Q=C(Y),W=Q.dataView,Y-=B,$-=B,Z-=B,B=0,U=Q.length-10;let E,K=Z,I=F.transitions||(F.transitions=Object.create(null)),V=F.nextId||F.length,H=V<15?1:V<240?2:V<61440?3:V<15728640?4:0;if(H===0)return 0;Y+=H;let D=[],L,z=0;for(let N in A){let q=A[N],w=I[N];if(!w)I[N]=w={key:N,parent:I,enumerationOffset:0,ascii0:null,ascii8:null,num8:null,string16:null,object16:null,num32:null,float64:null,date64:null};if(Y>U)Q=C(Y),W=Q.dataView,Y-=B,$-=B,Z-=B,K-=B,B=0,U=Q.length-10;switch(typeof q){case"number":let P=q;if(V<200||!w.num64){if(P>>0===P&&P<536870912&&P>-520093696){if(P<246&&P>=0&&(w.num8&&!(V>200&&w.num32)||P<32&&!w.num32))I=w.num8||f9(w,RE,1),Q[Y++]=P;else I=w.num32||f9(w,RE,4),W.setUint32(Y,P,!0),Y+=4;break}else if(P<4294967296&&P>=-2147483648){if(W.setFloat32(Y,P,!0),uWB[Q[Y+3]>>>5]){let T;if((T=P*DZ[(Q[Y+3]&127)<<1|Q[Y+2]>>7])>>0===T){I=w.num32||f9(w,RE,4),Y+=4;break}}}}I=w.num64||f9(w,RE,8),W.setFloat64(Y,P,!0),Y+=8;break;case"string":let _=q.length;if(E=K-Z,(_<<2)+K>U)Q=C((_<<2)+K),W=Q.dataView,Y-=B,$-=B,Z-=B,K-=B,B=0,U=Q.length-10;if(_>65280+E>>2){D.push(N,q,Y-$);break}let O,k=K;if(_<64){let T,S,v;for(T=0;T<_;T++)if(S=q.charCodeAt(T),S<128)Q[K++]=S;else if(S<2048)O=!0,Q[K++]=S>>6|192,Q[K++]=S&63|128;else if((S&64512)===55296&&((v=q.charCodeAt(T+1))&64512)===56320)O=!0,S=65536+((S&1023)<<10)+(v&1023),T++,Q[K++]=S>>18|240,Q[K++]=S>>12&63|128,Q[K++]=S>>6&63|128,Q[K++]=S&63|128;else O=!0,Q[K++]=S>>12|224,Q[K++]=S>>6&63|128,Q[K++]=S&63|128}else K+=cWB(Q,q,K),O=K-k>_;if(E<160||E<246&&(w.ascii8||w.string8)){if(O){if(!(I=w.string8))if(F.length>10&&(I=w.ascii8))I.__type=aD,w.ascii8=null,w.string8=I,X(null,0,!0);else I=f9(w,aD,1)}else if(E===0&&!L){L=!0,I=w.ascii0||f9(w,Au,0);break}else if(!(I=w.ascii8)&&!(F.length>10&&(I=w.string8)))I=f9(w,Au,1);Q[Y++]=E}else I=w.string16||f9(w,aD,2),W.setUint16(Y,E,!0),Y+=2;break;case"object":if(q){if(q.constructor===Date)I=w.date64||f9(w,Bu,8),W.setFloat64(Y,q.getTime(),!0),Y+=8;else D.push(N,q,z);break}else if(w=vHA(w,Y,W,-10),w)I=w,Y=LZ;else D.push(N,q,z);break;case"boolean":I=w.num8||w.ascii8||f9(w,RE,1),Q[Y++]=q?249:248;break;case"undefined":if(w=vHA(w,Y,W,-9),w)I=w,Y=LZ;else D.push(N,q,z);break;default:D.push(N,q,z)}z++}for(let N=0,q=D.length;N=16)return 0;Q[$]=M+32;break;case 2:if(M>=256)return 0;Q[$]=56,Q[$+1]=M;break;case 3:if(M>=65536)return 0;Q[$]=57,W.setUint16($+1,M,!0);break;case 4:if(M>=16777216)return 0;W.setUint32($,(M<<8)+58,!0);break}if(YZ){if(Z===K)return Y;return F.lastStringStart=Y-$,gHA(A,Q,B,$,J,C,X,G)}return K}function vHA(A,Q,B,Y){let J;if(J=A.ascii8||A.num8)return B.setInt8(Q,Y,!0),LZ=Q+1,J;if(J=A.string16||A.object16)return B.setInt16(Q,Y,!0),LZ=Q+2,J;if(J=A.num32)return B.setUint32(Q,3758096640+Y,!0),LZ=Q+4,J;if(J=A.num64)return B.setFloat64(Q,NaN,!0),B.setInt8(Q,Y),LZ=Q+8,J;LZ=Q;return}function f9(A,Q,B){let Y=yHA[Q]+(B<<3),J=A[Y]||(A[Y]=Object.create(null));return J.__type=Q,J.__size=B,J.__parent=A,J}function lWB(A){if(!(A instanceof Map))return A;let Q=A.get("typed")||[];if(Object.isFrozen(Q))Q=Q.map((J)=>J.slice(0));let B=A.get("named"),Y=Object.create(null);for(let J=0,C=Q.length;J=24)switch(J){case 24:J=A[Q++];break;case 25:J=A[Q++]+(A[Q++]<<8);break;case 26:J=A[Q++]+(A[Q++]<<8)+(A[Q++]<<16);break;case 27:J=A[Q++]+(A[Q++]<<8)+(A[Q++]<<16)+(A[Q++]<<24);break}let C=Y.typedStructs&&Y.typedStructs[J];if(!C){if(A=Uint8Array.prototype.slice.call(A,Q,B),B-=Q,Q=0,!Y.getStructures)throw Error(`Reference to shared structure ${J} without getStructures method`);if(Y._mergeStructures(Y.getStructures()),!Y.typedStructs)throw Error("Could not find any shared typed structures");if(Y.lastTypedStructuresLength=Y.typedStructs.length,C=Y.typedStructs[J],!C)throw Error("Could not find typed structure "+J)}var{construct:X,fullConstruct:G}=C;if(!X){X=C.construct=function(){},G=C.fullConstruct=function(){},G.prototype=Y.structPrototype??{};var F=X.prototype=Y.structPrototype?Object.create(Y.structPrototype):{};let Z=[],U=0,$;for(let E=0,K=C.length;E0;break;case 1:M=(q,w)=>{let P=q.bytes[w+z.offset];return P>=246?zE(P):P};break;case 2:M=(q,w)=>{let P=q.bytes,O=(P.dataView||(P.dataView=new DataView(P.buffer,P.byteOffset,P.byteLength))).getUint16(w+z.offset,!0);return O>=65280?zE(O&255):O};break;case 4:M=(q,w)=>{let P=q.bytes,O=(P.dataView||(P.dataView=new DataView(P.buffer,P.byteOffset,P.byteLength))).getUint32(w+z.offset,!0);return O>=4294967040?zE(O&255):O};break}z.getRef=M,U+=H;let N;switch(V){case Au:if($&&!$.next)$.next=z;$=z,z.multiGetCount=0,N=function(q){let{bytes:w,position:P}=q,_=U+P,O=M(q,P);if(typeof O!=="number")return O;let k,T=z.next;while(T){if(k=T.getRef(q,P),typeof k==="number")break;else k=null;T=T.next}if(k==null)k=q.bytesEnd-_;if(q.srcString)return q.srcString.slice(O,k);return NHA(w,O+_,k-O)};break;case aD:case lw:if($&&!$.next)$.next=z;$=z,N=function(q){let w=q.position,P=U+w,_=M(q,w);if(typeof _!=="number")return _;let O=q.bytes,k,T=z.next;while(T){if(k=T.getRef(q,w),typeof k==="number")break;else k=null;T=T.next}if(k==null)k=q.bytesEnd-P;if(V===aD)return O.toString("utf8",_+P,k+P);else{r1=q;try{return Y.unpack(O,{start:_+P,end:k+P})}finally{r1=null}}};break;case RE:switch(H){case 4:N=function(q){let w=q.bytes,P=w.dataView||(w.dataView=new DataView(w.buffer,w.byteOffset,w.byteLength)),_=q.position+z.offset,O=P.getInt32(_,!0);if(O<536870912){if(O>-520093696)return O;if(O>-536870912)return zE(O&255)}let k=P.getFloat32(_,!0),T=DZ[(w[_+3]&127)<<1|w[_+2]>>7];return(T*k+(k>0?0.5:-0.5)>>0)/T};break;case 8:N=function(q){let w=q.bytes,_=(w.dataView||(w.dataView=new DataView(w.buffer,w.byteOffset,w.byteLength))).getFloat64(q.position+z.offset,!0);if(isNaN(_)){let O=w[q.position+z.offset];if(O>=246)return zE(O)}return _};break;case 1:N=function(q){let P=q.bytes[q.position+z.offset];return P<246?P:zE(P)};break}break;case Bu:N=function(q){let w=q.bytes,P=w.dataView||(w.dataView=new DataView(w.buffer,w.byteOffset,w.byteLength));return new Date(P.getFloat64(q.position+z.offset,!0))};break}z.get=N}if(hHA){let E=[],K=[],I=0,V;for(let D of Z){if(Y.alwaysLazyProperty&&Y.alwaysLazyProperty(D.key)){V=!0;continue}Object.defineProperty(F,D.key,{get:iWB(D.get),enumerable:!0});let L="v"+I++;K.push(L),E.push("o["+JSON.stringify(D.key)+"]="+L+"(s)")}if(V)E.push("__proto__:this");let H=Function(...K,"var c=this;return function(s){var o=new c();"+E.join(";")+";return o;}").apply(G,Z.map((D)=>D.get));Object.defineProperty(F,"toJSON",{value(D){return H.call(this,this[Qu])}})}else Object.defineProperty(F,"toJSON",{value(E){let K={};for(let I=0,V=Z.length;I{let J=!0;if(Y instanceof Map){if((Y.get("named")||[]).length!==(Q.lastNamedStructuresLength||0))J=!1;if((Y.get("typed")||[]).length!==B)J=!1}else if(Y instanceof Array||Array.isArray(Y)){if(Y.length!==(Q.lastNamedStructuresLength||0))J=!1}if(!J)Q._mergeStructures(Y);return J},Q.lastTypedStructuresLength=Q.typedStructs&&Q.typedStructs.length,A}RHA(pWB,lWB,nWB);var CZB=process.env.MSGPACKR_NATIVE_ACCELERATION_DISABLED!==void 0&&process.env.MSGPACKR_NATIVE_ACCELERATION_DISABLED.toLowerCase()==="true";if(!CZB){let A;try{if(A=eHA(),A)DHA(A.extractStrings)}catch(Q){}}if(!mw)console.warn("Msgpackr: msgpackr native acceleration is not enabled, using fallback implementation.");var Zu=new NZ({useFloat32:nD.ALWAYS});var _s={};fG(_s,{zodErrorsIntegration:()=>_d,wrapMcpServerWithSentry:()=>xd,withScope:()=>P8,withMonitor:()=>t1,withIsolationScope:()=>sX,withActiveSpan:()=>e7,vercelAIIntegration:()=>NT,validateOpenTelemetrySetup:()=>ks,updateSpanName:()=>ju,trpcMiddleware:()=>yd,tediousIntegration:()=>ET,suppressTracing:()=>UN,supabaseIntegration:()=>kd,startSpanManual:()=>$N,startSpan:()=>k8,startSession:()=>DN,startNewTrace:()=>iu,startInactiveSpan:()=>lu,spotlightIntegration:()=>FT,spanToTraceHeader:()=>BN,spanToJSON:()=>eA,spanToBaggageHeader:()=>yu,setupKoaErrorHandler:()=>VDQ,setupHapiErrorHandler:()=>cHQ,setupFastifyErrorHandler:()=>BEQ,setupExpressErrorHandler:()=>ZUQ,setupConnectErrorHandler:()=>fDQ,setUser:()=>Bd,setTags:()=>Ad,setTag:()=>Qd,setNodeAsyncContextStrategy:()=>tO,setMeasurement:()=>du,setHttpStatus:()=>_E,setExtras:()=>tu,setExtra:()=>eu,setCurrentClient:()=>Id,setContext:()=>ou,rewriteFramesIntegration:()=>Sd,requestDataIntegration:()=>MN,redisIntegration:()=>iP,profiler:()=>vd,prismaIntegration:()=>tP,preloadOpenTelemetry:()=>sLQ,postgresIntegration:()=>aP,parameterize:()=>Lj,onUnhandledRejectionIntegration:()=>IP,onUncaughtExceptionIntegration:()=>VP,nodeContextIntegration:()=>WP,nativeNodeFetchIntegration:()=>XP,mysqlIntegration:()=>dP,mysql2Integration:()=>lP,mongooseIntegration:()=>mP,mongoIntegration:()=>fP,modulesIntegration:()=>KP,makeNodeTransport:()=>jT,lruMemoizerIntegration:()=>xP,logger:()=>ud,localVariablesIntegration:()=>EP,linkedErrorsIntegration:()=>qN,lastEventId:()=>Yd,koaIntegration:()=>CT,knexIntegration:()=>GNQ,kafkaIntegration:()=>gP,isInitialized:()=>vZ,instrumentSupabaseClient:()=>jj,initWithoutDefaultIntegrations:()=>aLQ,initOpenTelemetry:()=>kT,init:()=>_T,inboundFiltersIntegration:()=>LN,httpIntegration:()=>BP,hapiIntegration:()=>BT,graphqlIntegration:()=>hP,getTraceMetaTags:()=>Ld,getTraceData:()=>oX,getSpanStatusFromHttpCode:()=>kE,getSpanDescendants:()=>YN,getSentryRelease:()=>TT,getRootSpan:()=>$0,getIsolationScope:()=>RQ,getGlobalScope:()=>nX,getDefaultIntegrationsWithoutPerformance:()=>Ts,getDefaultIntegrations:()=>Ss,getCurrentScope:()=>sQ,getClient:()=>hA,getAutoPerformanceIntegrations:()=>zT,getActiveSpan:()=>iC,genericPoolIntegration:()=>KT,generateInstrumentOnce:()=>EQ,functionToStringIntegration:()=>NN,fsIntegration:()=>Z4Q,flush:()=>Jd,fastifyIntegration:()=>kP,extraErrorDataIntegration:()=>wd,expressIntegration:()=>MP,expressErrorHandler:()=>ti,eventFiltersIntegration:()=>Mj,endSession:()=>yZ,disableAnrDetectionForCallback:()=>T4Q,defaultStackParser:()=>ST,dedupeIntegration:()=>Rd,dataloaderIntegration:()=>tNQ,cron:()=>BqQ,createTransport:()=>bE,createSentryWinstonTransport:()=>zLQ,createGetModuleFromFilename:()=>PT,continueTrace:()=>pu,contextLinesIntegration:()=>ZP,consoleLoggingIntegration:()=>bd,consoleIntegration:()=>zN,connectIntegration:()=>GT,close:()=>Cd,childProcessIntegration:()=>LT,captureSession:()=>Gd,captureMessage:()=>fE,captureFeedback:()=>fd,captureException:()=>jB,captureEvent:()=>IN,captureConsoleIntegration:()=>zd,captureCheckIn:()=>VN,anrIntegration:()=>P4Q,amqplibIntegration:()=>HT,addIntegration:()=>$d,addEventProcessor:()=>Xd,addBreadcrumb:()=>G9,SentryContextManager:()=>MT,Scope:()=>GJ,SEMANTIC_ATTRIBUTE_SENTRY_SOURCE:()=>A0,SEMANTIC_ATTRIBUTE_SENTRY_SAMPLE_RATE:()=>j5,SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN:()=>DQ,SEMANTIC_ATTRIBUTE_SENTRY_OP:()=>YQ,SDK_VERSION:()=>u0,NodeClient:()=>iL});var ud={};fG(ud,{warn:()=>m4B,trace:()=>x4B,info:()=>b4B,fmt:()=>Dd,fatal:()=>d4B,error:()=>u4B,debug:()=>f4B});import{format as g4B}from"node:util";var OA=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__;var u0="9.22.0";var AQ=globalThis;function RJ(){return d7(AQ),AQ}function d7(A){let Q=A.__SENTRY__=A.__SENTRY__||{};return Q.version=Q.version||u0,Q[u0]=Q[u0]||{}}function qZ(A,Q,B=AQ){let Y=B.__SENTRY__=B.__SENTRY__||{},J=Y[u0]=Y[u0]||{};return J[A]||(J[A]=Q())}var ADA=Object.prototype.toString;function uC(A){switch(ADA.call(A)){case"[object Error]":case"[object Exception]":case"[object DOMException]":case"[object WebAssembly.Exception]":return!0;default:return lX(A,Error)}}function sw(A,Q){return ADA.call(A)===`[object ${Q}]`}function QDA(A){return sw(A,"ErrorEvent")}function MZ(A){return sw(A,"String")}function zZ(A){return typeof A==="object"&&A!==null&&"__sentry_template_string__"in A&&"__sentry_template_values__"in A}function oD(A){return A===null||zZ(A)||typeof A!=="object"&&typeof A!=="function"}function M5(A){return sw(A,"Object")}function BDA(A){return typeof Event<"u"&&lX(A,Event)}function YDA(A){return typeof Element<"u"&&lX(A,Element)}function JDA(A){return sw(A,"RegExp")}function z5(A){return Boolean(A?.then&&typeof A.then==="function")}function CDA(A){return M5(A)&&"nativeEvent"in A&&"preventDefault"in A&&"stopPropagation"in A}function lX(A,Q){try{return A instanceof Q}catch(B){return!1}}function rw(A){return!!(typeof A==="object"&&A!==null&&(A.__isVue||A._isVue))}var XZB=AQ,GZB=80;function XDA(A,Q={}){if(!A)return"";try{let B=A,Y=5,J=[],C=0,X=0,G=" > ",F=G.length,W,Z=Array.isArray(Q)?Q:Q.keyAttrs,U=!Array.isArray(Q)&&Q.maxStringLength||GZB;while(B&&C++1&&X+J.length*F+W.length>=U)break;J.push(W),X+=W.length,B=B.parentNode}return J.reverse().join(G)}catch(B){return""}}function FZB(A,Q){let B=A,Y=[];if(!B?.tagName)return"";if(XZB.HTMLElement){if(B instanceof HTMLElement&&B.dataset){if(B.dataset.sentryComponent)return B.dataset.sentryComponent;if(B.dataset.sentryElement)return B.dataset.sentryElement}}Y.push(B.tagName.toLowerCase());let J=Q?.length?Q.filter((X)=>B.getAttribute(X)).map((X)=>[X,B.getAttribute(X)]):null;if(J?.length)J.forEach((X)=>{Y.push(`[${X[0]}="${X[1]}"]`)});else{if(B.id)Y.push(`#${B.id}`);let X=B.className;if(X&&MZ(X)){let G=X.split(/\s+/);for(let F of G)Y.push(`.${F}`)}}let C=["aria-label","type","name","title","alt"];for(let X of C){let G=B.getAttribute(X);if(G)Y.push(`[${X}="${G}"]`)}return Y.join("")}var WZB="Sentry Logger ",dC=["debug","info","warn","error","log","assert","trace"],wE={};function h0(A){if(!("console"in AQ))return A();let Q=AQ.console,B={},Y=Object.keys(wE);Y.forEach((J)=>{let C=wE[J];B[J]=Q[J],Q[J]=C});try{return A()}finally{Y.forEach((J)=>{Q[J]=B[J]})}}function ZZB(){let A=!1,Q={enable:()=>{A=!0},disable:()=>{A=!1},isEnabled:()=>A};if(OA)dC.forEach((B)=>{Q[B]=(...Y)=>{if(A)h0(()=>{AQ.console[B](`${WZB}[${B}]:`,...Y)})}});else dC.forEach((B)=>{Q[B]=()=>{return}});return Q}var e=qZ("logger",ZZB);function b9(A,Q=0){if(typeof A!=="string"||Q===0)return A;return A.length<=Q?A:`${A.slice(0,Q)}...`}function $u(A,Q){let B=A,Y=B.length;if(Y<=150)return B;if(Q>Y)Q=Y;let J=Math.max(Q-60,0);if(J<5)J=0;let C=Math.min(J+140,Y);if(C>Y-5)C=Y;if(C===Y)J=Math.max(C-140,0);if(B=B.slice(J,C),J>0)B=`'{snip} ${B}`;if(CGDA(A,Y,B))}function Uu(A,Q,B){if(!(Q in A))return;let Y=A[Q];if(typeof Y!=="function")return;let J=B(Y);if(typeof J==="function")ZDA(J,Y);try{A[Q]=J}catch{OA&&e.log(`Failed to replace method "${Q}" in object`,A)}}function d0(A,Q,B){try{Object.defineProperty(A,Q,{value:B,writable:!0,configurable:!0})}catch(Y){OA&&e.log(`Failed to add non-enumerable property "${Q}" to object`,A)}}function ZDA(A,Q){try{let B=Q.prototype||{};A.prototype=Q.prototype=B,d0(A,"__sentry_original__",Q)}catch(B){}}function Eu(A){return A.__sentry_original__}function aw(A){if(uC(A))return{message:A.message,name:A.name,stack:A.stack,...WDA(A)};else if(BDA(A)){let Q={type:A.type,target:FDA(A.target),currentTarget:FDA(A.currentTarget),...WDA(A)};if(typeof CustomEvent<"u"&&lX(A,CustomEvent))Q.detail=A.detail;return Q}else return A}function FDA(A){try{return YDA(A)?XDA(A):Object.prototype.toString.call(A)}catch(Q){return""}}function WDA(A){if(typeof A==="object"&&A!==null){let Q={};for(let B in A)if(Object.prototype.hasOwnProperty.call(A,B))Q[B]=A[B];return Q}else return{}}function Ku(A,Q=40){let B=Object.keys(aw(A));B.sort();let Y=B[0];if(!Y)return"[object has no keys]";if(Y.length>=Q)return b9(Y,Q);for(let J=B.length;J>0;J--){let C=B.slice(0,J).join(", ");if(C.length>Q)continue;if(J===B.length)return C;return b9(C,Q)}return""}function $ZB(){let A=AQ;return A.crypto||A.msCrypto}function FY(A=$ZB()){let Q=()=>Math.random()*16;try{if(A?.randomUUID)return A.randomUUID().replace(/-/g,"");if(A?.getRandomValues)Q=()=>{let B=new Uint8Array(1);return A.getRandomValues(B),B[0]}}catch(B){}return([1e7]+1000+4000+8000+100000000000).replace(/[018]/g,(B)=>(B^(Q()&15)>>B/4).toString(16))}function $DA(A){return A.exception?.values?.[0]}function p7(A){let{message:Q,event_id:B}=A;if(Q)return Q;let Y=$DA(A);if(Y){if(Y.type&&Y.value)return`${Y.type}: ${Y.value}`;return Y.type||Y.value||B||""}return B||""}function Iu(A,Q,B){let Y=A.exception=A.exception||{},J=Y.values=Y.values||[],C=J[0]=J[0]||{};if(!C.value)C.value=Q||"";if(!C.type)C.type=B||"Error"}function i7(A,Q){let B=$DA(A);if(!B)return;let Y={type:"generic",handled:!0},J=B.mechanism;if(B.mechanism={...Y,...J,...Q},Q&&"data"in Q){let C={...J?.data,...Q.data};B.mechanism.data=C}}var UZB=/^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/;function Vu(A){return parseInt(A||"",10)}function Hu(A){let Q=A.match(UZB)||[],B=Vu(Q[1]),Y=Vu(Q[2]),J=Vu(Q[3]);return{buildmetadata:Q[5],major:isNaN(B)?void 0:B,minor:isNaN(Y)?void 0:Y,patch:isNaN(J)?void 0:J,prerelease:Q[4]}}function ow(A){if(EZB(A))return!0;try{d0(A,"__sentry_captured__",!0)}catch(Q){}return!1}function EZB(A){try{return A.__sentry_captured__}catch{}}var UDA=1000;function pX(){return Date.now()/UDA}function KZB(){let{performance:A}=AQ;if(!A?.now)return pX;let Q=Date.now()-A.now(),B=A.timeOrigin==null?Q:A.timeOrigin;return()=>{return(B+A.now())/UDA}}var w8=KZB();function EDA(A){let Q=w8(),B={sid:FY(),init:!0,timestamp:Q,started:Q,duration:0,status:"ok",errors:0,ignoreDuration:!1,toJSON:()=>VZB(B)};if(A)iX(B,A);return B}function iX(A,Q={}){if(Q.user){if(!A.ipAddress&&Q.user.ip_address)A.ipAddress=Q.user.ip_address;if(!A.did&&!Q.did)A.did=Q.user.id||Q.user.email||Q.user.username}if(A.timestamp=Q.timestamp||w8(),Q.abnormal_mechanism)A.abnormal_mechanism=Q.abnormal_mechanism;if(Q.ignoreDuration)A.ignoreDuration=Q.ignoreDuration;if(Q.sid)A.sid=Q.sid.length===32?Q.sid:FY();if(Q.init!==void 0)A.init=Q.init;if(!A.did&&Q.did)A.did=`${Q.did}`;if(typeof Q.started==="number")A.started=Q.started;if(A.ignoreDuration)A.duration=void 0;else if(typeof Q.duration==="number")A.duration=Q.duration;else{let B=A.timestamp-A.started;A.duration=B>=0?B:0}if(Q.release)A.release=Q.release;if(Q.environment)A.environment=Q.environment;if(!A.ipAddress&&Q.ipAddress)A.ipAddress=Q.ipAddress;if(!A.userAgent&&Q.userAgent)A.userAgent=Q.userAgent;if(typeof Q.errors==="number")A.errors=Q.errors;if(Q.status)A.status=Q.status}function KDA(A,Q){let B={};if(Q)B={status:Q};else if(A.status==="ok")B={status:"exited"};iX(A,B)}function VZB(A){return{sid:`${A.sid}`,init:A.init,started:new Date(A.started*1000).toISOString(),timestamp:new Date(A.timestamp*1000).toISOString(),status:A.status,errors:A.errors,did:typeof A.did==="number"||typeof A.did==="string"?`${A.did}`:void 0,duration:A.duration,abnormal_mechanism:A.abnormal_mechanism,attrs:{release:A.release,environment:A.environment,ip_address:A.ipAddress,user_agent:A.userAgent}}}function n7(A,Q,B=2){if(!Q||typeof Q!=="object"||B<=0)return Q;if(A&&Object.keys(Q).length===0)return A;let Y={...A};for(let J in Q)if(Object.prototype.hasOwnProperty.call(Q,J))Y[J]=n7(Y[J],Q[J],B-1);return Y}var Du="_sentrySpan";function RZ(A,Q){if(Q)d0(A,Du,Q);else delete A[Du]}function cC(A){return A[Du]}function j8(){return FY()}function O8(){return FY().substring(16)}var IZB=100;class GJ{constructor(){this._notifyingListeners=!1,this._scopeListeners=[],this._eventProcessors=[],this._breadcrumbs=[],this._attachments=[],this._user={},this._tags={},this._extra={},this._contexts={},this._sdkProcessingMetadata={},this._propagationContext={traceId:j8(),sampleRand:Math.random()}}clone(){let A=new GJ;if(A._breadcrumbs=[...this._breadcrumbs],A._tags={...this._tags},A._extra={...this._extra},A._contexts={...this._contexts},this._contexts.flags)A._contexts.flags={values:[...this._contexts.flags.values]};return A._user=this._user,A._level=this._level,A._session=this._session,A._transactionName=this._transactionName,A._fingerprint=this._fingerprint,A._eventProcessors=[...this._eventProcessors],A._attachments=[...this._attachments],A._sdkProcessingMetadata={...this._sdkProcessingMetadata},A._propagationContext={...this._propagationContext},A._client=this._client,A._lastEventId=this._lastEventId,RZ(A,cC(this)),A}setClient(A){this._client=A}setLastEventId(A){this._lastEventId=A}getClient(){return this._client}lastEventId(){return this._lastEventId}addScopeListener(A){this._scopeListeners.push(A)}addEventProcessor(A){return this._eventProcessors.push(A),this}setUser(A){if(this._user=A||{email:void 0,id:void 0,ip_address:void 0,username:void 0},this._session)iX(this._session,{user:A});return this._notifyScopeListeners(),this}getUser(){return this._user}setTags(A){return this._tags={...this._tags,...A},this._notifyScopeListeners(),this}setTag(A,Q){return this._tags={...this._tags,[A]:Q},this._notifyScopeListeners(),this}setExtras(A){return this._extra={...this._extra,...A},this._notifyScopeListeners(),this}setExtra(A,Q){return this._extra={...this._extra,[A]:Q},this._notifyScopeListeners(),this}setFingerprint(A){return this._fingerprint=A,this._notifyScopeListeners(),this}setLevel(A){return this._level=A,this._notifyScopeListeners(),this}setTransactionName(A){return this._transactionName=A,this._notifyScopeListeners(),this}setContext(A,Q){if(Q===null)delete this._contexts[A];else this._contexts[A]=Q;return this._notifyScopeListeners(),this}setSession(A){if(!A)delete this._session;else this._session=A;return this._notifyScopeListeners(),this}getSession(){return this._session}update(A){if(!A)return this;let Q=typeof A==="function"?A(this):A,B=Q instanceof GJ?Q.getScopeData():M5(Q)?A:void 0,{tags:Y,extra:J,user:C,contexts:X,level:G,fingerprint:F=[],propagationContext:W}=B||{};if(this._tags={...this._tags,...Y},this._extra={...this._extra,...J},this._contexts={...this._contexts,...X},C&&Object.keys(C).length)this._user=C;if(G)this._level=G;if(F.length)this._fingerprint=F;if(W)this._propagationContext=W;return this}clear(){return this._breadcrumbs=[],this._tags={},this._extra={},this._user={},this._contexts={},this._level=void 0,this._transactionName=void 0,this._fingerprint=void 0,this._session=void 0,RZ(this,void 0),this._attachments=[],this.setPropagationContext({traceId:j8(),sampleRand:Math.random()}),this._notifyScopeListeners(),this}addBreadcrumb(A,Q){let B=typeof Q==="number"?Q:IZB;if(B<=0)return this;let Y={timestamp:pX(),...A,message:A.message?b9(A.message,2048):A.message};if(this._breadcrumbs.push(Y),this._breadcrumbs.length>B)this._breadcrumbs=this._breadcrumbs.slice(-B),this._client?.recordDroppedEvent("buffer_overflow","log_item");return this._notifyScopeListeners(),this}getLastBreadcrumb(){return this._breadcrumbs[this._breadcrumbs.length-1]}clearBreadcrumbs(){return this._breadcrumbs=[],this._notifyScopeListeners(),this}addAttachment(A){return this._attachments.push(A),this}clearAttachments(){return this._attachments=[],this}getScopeData(){return{breadcrumbs:this._breadcrumbs,attachments:this._attachments,contexts:this._contexts,tags:this._tags,extra:this._extra,user:this._user,level:this._level,fingerprint:this._fingerprint||[],eventProcessors:this._eventProcessors,propagationContext:this._propagationContext,sdkProcessingMetadata:this._sdkProcessingMetadata,transactionName:this._transactionName,span:cC(this)}}setSDKProcessingMetadata(A){return this._sdkProcessingMetadata=n7(this._sdkProcessingMetadata,A,2),this}setPropagationContext(A){return this._propagationContext=A,this}getPropagationContext(){return this._propagationContext}captureException(A,Q){let B=Q?.event_id||FY();if(!this._client)return e.warn("No client configured on scope - will not capture exception!"),B;let Y=Error("Sentry syntheticException");return this._client.captureException(A,{originalException:A,syntheticException:Y,...Q,event_id:B},this),B}captureMessage(A,Q,B){let Y=B?.event_id||FY();if(!this._client)return e.warn("No client configured on scope - will not capture message!"),Y;let J=Error(A);return this._client.captureMessage(A,Q,{originalException:A,syntheticException:J,...B,event_id:Y},this),Y}captureEvent(A,Q){let B=Q?.event_id||FY();if(!this._client)return e.warn("No client configured on scope - will not capture event!"),B;return this._client.captureEvent(A,{...Q,event_id:B},this),B}_notifyScopeListeners(){if(!this._notifyingListeners)this._notifyingListeners=!0,this._scopeListeners.forEach((A)=>{A(this)}),this._notifyingListeners=!1}}function jE(){return qZ("defaultCurrentScope",()=>new GJ)}function R5(){return qZ("defaultIsolationScope",()=>new GJ)}class IDA{constructor(A,Q){let B;if(!A)B=new GJ;else B=A;let Y;if(!Q)Y=new GJ;else Y=Q;this._stack=[{scope:B}],this._isolationScope=Y}withScope(A){let Q=this._pushScope(),B;try{B=A(Q)}catch(Y){throw this._popScope(),Y}if(z5(B))return B.then((Y)=>{return this._popScope(),Y},(Y)=>{throw this._popScope(),Y});return this._popScope(),B}getClient(){return this.getStackTop().client}getScope(){return this.getStackTop().scope}getIsolationScope(){return this._isolationScope}getStackTop(){return this._stack[this._stack.length-1]}_pushScope(){let A=this.getScope().clone();return this._stack.push({client:this.getClient(),scope:A}),A}_popScope(){if(this._stack.length<=1)return!1;return!!this._stack.pop()}}function OE(){let A=RJ(),Q=d7(A);return Q.stack=Q.stack||new IDA(jE(),R5())}function HZB(A){return OE().withScope(A)}function DZB(A,Q){let B=OE();return B.withScope(()=>{return B.getStackTop().scope=A,Q(A)})}function VDA(A){return OE().withScope(()=>{return A(OE().getIsolationScope())})}function HDA(){return{withIsolationScope:VDA,withScope:HZB,withSetScope:DZB,withSetIsolationScope:(A,Q)=>{return VDA(Q)},getCurrentScope:()=>OE().getScope(),getIsolationScope:()=>OE().getIsolationScope()}}function Nu(A){let Q=RJ(),B=d7(Q);B.acs=A}function w5(A){let Q=d7(A);if(Q.acs)return Q.acs;return HDA()}function sQ(){let A=RJ();return w5(A).getCurrentScope()}function RQ(){let A=RJ();return w5(A).getIsolationScope()}function nX(){return qZ("globalScope",()=>new GJ)}function P8(...A){let Q=RJ(),B=w5(Q);if(A.length===2){let[Y,J]=A;if(!Y)return B.withScope(J);return B.withSetScope(Y,J)}return B.withScope(A[0])}function sX(...A){let Q=RJ(),B=w5(Q);if(A.length===2){let[Y,J]=A;if(!Y)return B.withIsolationScope(J);return B.withSetIsolationScope(Y,J)}return B.withIsolationScope(A[0])}function hA(){return sQ().getClient()}function PE(A){let Q=A.getPropagationContext(),{traceId:B,parentSpanId:Y,propagationSpanId:J}=Q,C={trace_id:B,span_id:J||O8()};if(Y)C.parent_span_id=Y;return C}var A0="sentry.source",j5="sentry.sample_rate",Lu="sentry.previous_trace_sample_rate",YQ="sentry.op",DQ="sentry.origin";var tw="sentry.measurement_unit",ew="sentry.measurement_value",lC="sentry.custom_span_name",TE="sentry.profile_id",SE="sentry.exclusive_time",qu="cache.hit",Mu="cache.key",zu="cache.item_size";var Ru=0,s7=1,m9=2;function kE(A){if(A<400&&A>=100)return{code:1};if(A>=400&&A<500)switch(A){case 401:return{code:2,message:"unauthenticated"};case 403:return{code:2,message:"permission_denied"};case 404:return{code:2,message:"not_found"};case 409:return{code:2,message:"already_exists"};case 413:return{code:2,message:"failed_precondition"};case 429:return{code:2,message:"resource_exhausted"};case 499:return{code:2,message:"cancelled"};default:return{code:2,message:"invalid_argument"}}if(A>=500&&A<600)switch(A){case 501:return{code:2,message:"unimplemented"};case 503:return{code:2,message:"unavailable"};case 504:return{code:2,message:"deadline_exceeded"};default:return{code:2,message:"internal_error"}}return{code:2,message:"unknown_error"}}function _E(A,Q){A.setAttribute("http.response.status_code",Q);let B=kE(Q);if(B.message!=="unknown_error")A.setStatus(B)}var DDA="_sentryScope",NDA="_sentryIsolationScope";function tD(A,Q,B){if(A)d0(A,NDA,B),d0(A,DDA,Q)}function pC(A){return{scope:A[DDA],isolationScope:A[NDA]}}function T8(A){if(typeof A==="boolean")return Number(A);let Q=typeof A==="string"?parseFloat(A):A;if(typeof Q!=="number"||isNaN(Q)||Q<0||Q>1)return;return Q}var eD="sentry-",qDA=/^sentry-/,MDA=8192;function r7(A){let Q=wZ(A);if(!Q)return;let B=Object.entries(Q).reduce((Y,[J,C])=>{if(J.match(qDA)){let X=J.slice(eD.length);Y[X]=C}return Y},{});if(Object.keys(B).length>0)return B;else return}function a7(A){if(!A)return;let Q=Object.entries(A).reduce((B,[Y,J])=>{if(J)B[`${eD}${Y}`]=J;return B},{});return Aj(Q)}function wZ(A){if(!A||!MZ(A)&&!Array.isArray(A))return;if(Array.isArray(A))return A.reduce((Q,B)=>{let Y=LDA(B);return Object.entries(Y).forEach(([J,C])=>{Q[J]=C}),Q},{});return LDA(A)}function LDA(A){return A.split(",").map((Q)=>Q.split("=").map((B)=>{try{return decodeURIComponent(B.trim())}catch{return}})).reduce((Q,[B,Y])=>{if(B&&Y)Q[B]=Y;return Q},{})}function Aj(A){if(Object.keys(A).length===0)return;return Object.entries(A).reduce((Q,[B,Y],J)=>{let C=`${encodeURIComponent(B)}=${encodeURIComponent(Y)}`,X=J===0?C:`${Q},${C}`;if(X.length>MDA)return OA&&e.warn(`Not adding key: ${B} with val: ${Y} to baggage header due to exceeding baggage size limits.`),Q;else return X},"")}var AN=new RegExp("^[ \\t]*([0-9a-f]{32})?-?([0-9a-f]{16})?-?([01])?[ \\t]*$");function zDA(A){if(!A)return;let Q=A.match(AN);if(!Q)return;let B;if(Q[3]==="1")B=!0;else if(Q[3]==="0")B=!1;return{traceId:Q[1],parentSampled:B,parentSpanId:Q[2]}}function jZ(A,Q){let B=zDA(A),Y=r7(Q);if(!B?.traceId)return{traceId:j8(),sampleRand:Math.random()};let J=NZB(B,Y);if(Y)Y.sample_rand=J.toString();let{traceId:C,parentSpanId:X,parentSampled:G}=B;return{traceId:C,parentSpanId:X,sampled:G,dsc:Y||{},sampleRand:J}}function o7(A=j8(),Q=O8(),B){let Y="";if(B!==void 0)Y=B?"-1":"-0";return`${A}-${Q}${Y}`}function NZB(A,Q){let B=T8(Q?.sample_rand);if(B!==void 0)return B;let Y=T8(Q?.sample_rate);if(Y&&A?.parentSampled!==void 0)return A.parentSampled?Math.random()*Y:Y+Math.random()*(1-Y);else return Math.random()}var Qj=0,Bj=1,RDA=!1;function jDA(A){let{spanId:Q,traceId:B}=A.spanContext(),{data:Y,op:J,parent_span_id:C,status:X,origin:G,links:F}=eA(A);return{parent_span_id:C,span_id:Q,trace_id:B,data:Y,op:J,status:X,origin:G,links:F}}function t7(A){let{spanId:Q,traceId:B,isRemote:Y}=A.spanContext(),J=Y?Q:eA(A).parent_span_id,C=pC(A).scope,X=Y?C?.getPropagationContext().propagationSpanId||O8():Q;return{parent_span_id:J,span_id:X,trace_id:B}}function BN(A){let{traceId:Q,spanId:B}=A.spanContext(),Y=o1(A);return o7(Q,B,Y)}function OZ(A){if(A&&A.length>0)return A.map(({context:{spanId:Q,traceId:B,traceFlags:Y,...J},attributes:C})=>({span_id:Q,trace_id:B,sampled:Y===Bj,attributes:C,...J}));else return}function u9(A){if(typeof A==="number")return wDA(A);if(Array.isArray(A))return A[0]+A[1]/1e9;if(A instanceof Date)return wDA(A.getTime());return w8()}function wDA(A){return A>9999999999?A/1000:A}function eA(A){if(qZB(A))return A.getSpanJSON();let{spanId:Q,traceId:B}=A.spanContext();if(LZB(A)){let{attributes:Y,startTime:J,name:C,endTime:X,status:G,links:F}=A,W="parentSpanId"in A?A.parentSpanId:("parentSpanContext"in A)?A.parentSpanContext?.spanId:void 0;return{span_id:Q,trace_id:B,data:Y,description:C,parent_span_id:W,start_timestamp:u9(J),timestamp:u9(X)||void 0,status:PZ(G),op:Y[YQ],origin:Y[DQ],links:OZ(F)}}return{span_id:Q,trace_id:B,start_timestamp:0,data:{}}}function LZB(A){let Q=A;return!!Q.attributes&&!!Q.startTime&&!!Q.name&&!!Q.endTime&&!!Q.status}function qZB(A){return typeof A.getSpanJSON==="function"}function o1(A){let{traceFlags:Q}=A.spanContext();return Q===Bj}function PZ(A){if(!A||A.code===Ru)return;if(A.code===s7)return"ok";return A.message||"unknown_error"}var QN="_sentryChildSpans",wu="_sentryRootSpan";function vE(A,Q){let B=A[wu]||A;if(d0(Q,wu,B),A[QN])A[QN].add(Q);else d0(A,QN,new Set([Q]))}function YN(A){let Q=new Set;function B(Y){if(Q.has(Y))return;else if(o1(Y)){Q.add(Y);let J=Y[QN]?Array.from(Y[QN]):[];for(let C of J)B(C)}}return B(A),Array.from(Q)}function $0(A){return A[wu]||A}function iC(){let A=RJ(),Q=w5(A);if(Q.getActiveSpan)return Q.getActiveSpan();return cC(sQ())}function JN(){if(!RDA)h0(()=>{console.warn("[Sentry] Returning null from `beforeSendSpan` is disallowed. To drop certain spans, configure the respective integrations directly.")}),RDA=!0}function ju(A,Q){A.updateName(Q),A.setAttributes({[A0]:"custom",[lC]:Q})}var Pu="?",ODA=/\(error: (.*)\)/,PDA=/captureMessage|captureException/;function Jj(...A){let Q=A.sort((B,Y)=>B[0]-Y[0]).map((B)=>B[1]);return(B,Y=0,J=0)=>{let C=[],X=B.split(` +`);for(let G=Y;G1024)continue;let W=ODA.test(F)?F.replace(ODA,"$1"):F;if(W.match(/\S*Error: /))continue;for(let Z of Q){let U=Z(W);if(U){C.push(U);break}}if(C.length>=50+J)break}return TDA(C.slice(J))}}function Tu(A){if(Array.isArray(A))return Jj(...A);return A}function TDA(A){if(!A.length)return[];let Q=Array.from(A);if(/sentryWrapped/.test(Yj(Q).function||""))Q.pop();if(Q.reverse(),PDA.test(Yj(Q).function||"")){if(Q.pop(),PDA.test(Yj(Q).function||""))Q.pop()}return Q.slice(0,50).map((B)=>({...B,filename:B.filename||Yj(Q).filename,function:B.function||"?"}))}function Yj(A){return A[A.length-1]||{}}var Ou="";function CN(A){try{if(!A||typeof A!=="function")return Ou;return A.name||Ou}catch(Q){return Ou}}function Cj(A){let Q=A.exception;if(Q){let B=[];try{return Q.values.forEach((Y)=>{if(Y.stacktrace.frames)B.push(...Y.stacktrace.frames)}),B}catch(Y){return}}return}var Xj={},SDA={};function yE(A,Q){Xj[A]=Xj[A]||[],Xj[A].push(Q)}function hE(A,Q){if(!SDA[A]){SDA[A]=!0;try{Q()}catch(B){OA&&e.error(`Error while instrumenting ${A}`,B)}}}function gE(A,Q){let B=A&&Xj[A];if(!B)return;for(let Y of B)try{Y(Q)}catch(J){OA&&e.error(`Error while triggering instrumentation handler. Type: ${A} -Name: ${QN(Y)} -Error:`,J)}}var Du=null;function VDA(A){TE("error",A),SE("error",XZB)}function XZB(){Du=AQ.onerror,AQ.onerror=function(A,Q,B,Y,J){if(kE("error",{column:Y,error:J,line:B,msg:A,url:Q}),Du)return Du.apply(this,arguments);return!1},AQ.onerror.__SENTRY_INSTRUMENTED__=!0}var Nu=null;function IDA(A){TE("unhandledrejection",A),SE("unhandledrejection",GZB)}function GZB(){Nu=AQ.onunhandledrejection,AQ.onunhandledrejection=function(A){if(kE("unhandledrejection",A),Nu)return Nu.apply(this,arguments);return!0},AQ.onunhandledrejection.__SENTRY_INSTRUMENTED__=!0}var HDA=!1;function DDA(){if(HDA)return;HDA=!0,VDA(Lu),IDA(Lu)}function Lu(){let A=pC(),Q=A&&$0(A);if(Q)OA&&e.log("[Tracing] Root span: internal_error -> Global error occurred"),Q.setStatus({code:m9,message:"internal_error"})}Lu.tag="sentry_tracingErrorCallback";function C9(A){if(typeof __SENTRY_TRACING__==="boolean"&&!__SENTRY_TRACING__)return!1;let Q=A||gA()?.getOptions();return!!Q&&(Q.tracesSampleRate!=null||!!Q.tracesSampler)}var _E="production";var FZB=/^o(\d+)\./,WZB=/^(?:(\w+):)\/\/(?:(\w+)(?::(\w+)?)?@)([\w.-]+)(?::(\d+))?\/(.+)/;function ZZB(A){return A==="http"||A==="https"}function iC(A,Q=!1){let{host:B,path:Y,pass:J,port:C,projectId:X,protocol:G,publicKey:F}=A;return`${G}://${F}${Q&&J?`:${J}`:""}@${B}${C?`:${C}`:""}/${Y?`${Y}/`:Y}${X}`}function $ZB(A){let Q=WZB.exec(A);if(!Q){y0(()=>{console.error(`Invalid Sentry Dsn: ${A}`)});return}let[B,Y,J="",C="",X="",G=""]=Q.slice(1),F="",W=G,Z=W.split("/");if(Z.length>1)F=Z.slice(0,-1).join("/"),W=Z.pop();if(W){let U=W.match(/^\d+/);if(U)W=U[0]}return NDA({host:C,pass:J,path:F,projectId:W,port:X,protocol:B,publicKey:Y})}function NDA(A){return{protocol:A.protocol,publicKey:A.publicKey||"",pass:A.pass||"",host:A.host,port:A.port||"",path:A.path||"",projectId:A.projectId}}function UZB(A){if(!OA)return!0;let{port:Q,projectId:B,protocol:Y}=A;if(["protocol","publicKey","host","projectId"].find((X)=>{if(!A[X])return e.error(`Invalid Sentry Dsn: ${X} missing`),!0;return!1}))return!1;if(!B.match(/^\d+$/))return e.error(`Invalid Sentry Dsn: Invalid projectId ${B}`),!1;if(!ZZB(Y))return e.error(`Invalid Sentry Dsn: Invalid protocol ${Y}`),!1;if(Q&&isNaN(parseInt(Q,10)))return e.error(`Invalid Sentry Dsn: Invalid port ${Q}`),!1;return!0}function LDA(A){return A.match(FZB)?.[1]}function qDA(A){let Q=typeof A==="string"?$ZB(A):NDA(A);if(!Q||!UZB(Q))return;return Q}var MDA="_frozenDsc";function Bj(A,Q){d0(A,MDA,Q)}function qu(A,Q){let B=Q.getOptions(),{publicKey:Y,host:J}=Q.getDsn()||{},C;if(B.orgId)C=String(B.orgId);else if(J)C=LDA(J);let X={environment:B.environment||_E,release:B.release,public_key:Y,trace_id:A,org_id:C};return Q.emit("createDsc",X),X}function sG(A,Q){let B=Q.getPropagationContext();return B.dsc||qu(B.traceId,A)}function c0(A){let Q=gA();if(!Q)return{};let B=$0(A),Y=eA(B),J=Y.data,C=B.spanContext().traceState,X=C?.get("sentry.sample_rate")??J[R5]??J[Fu];function G(K){if(typeof X==="number"||typeof X==="string")K.sample_rate=`${X}`;return K}let F=B[MDA];if(F)return G(F);let W=C?.get("sentry.dsc"),Z=W&&s7(W);if(Z)return G(Z);let U=qu(A.spanContext().traceId,Q),$=J[A0],E=Y.description;if($!=="url"&&E)U.transaction=E;if(C9())U.sampled=String(a1(B)),U.sample_rand=C?.get("sentry.sample_rand")??lC(B).scope?.getPropagationContext().sampleRand.toString();return G(U),Q.emit("createDsc",U,B),U}function Mu(A){let Q=c0(A);return r7(Q)}class jZ{constructor(A={}){this._traceId=A.traceId||w8(),this._spanId=A.spanId||j8()}spanContext(){return{spanId:this._spanId,traceId:this._traceId,traceFlags:aw}}end(A){}setAttribute(A,Q){return this}setAttributes(A){return this}setStatus(A){return this}updateName(A){return this}isRecording(){return!1}addEvent(A,Q,B){return this}addLink(A){return this}addLinks(A){return this}recordException(A,Q){}}function OZ(A,Q,B=()=>{}){let Y;try{Y=A()}catch(J){throw Q(J),B(),J}return EZB(Y,Q,B)}function EZB(A,Q,B){if(q5(A))return A.then((Y)=>{return B(),Y},(Y)=>{throw Q(Y),B(),Y});return B(),A}function BN(A){if(!OA)return;let{description:Q="< unknown name >",op:B="< unknown op >",parent_span_id:Y}=eA(A),{spanId:J}=A.spanContext(),C=a1(A),X=$0(A),G=X===A,F=`[Tracing] Starting ${C?"sampled":"unsampled"} ${G?"root ":""}span`,W=[`op: ${B}`,`name: ${Q}`,`ID: ${J}`];if(Y)W.push(`parent ID: ${Y}`);if(!G){let{op:Z,description:U}=eA(X);if(W.push(`root ID: ${X.spanContext().spanId}`),Z)W.push(`root op: ${Z}`);if(U)W.push(`root description: ${U}`)}e.log(`${F} +Name: ${CN(Y)} +Error:`,J)}}var Su=null;function kDA(A){yE("error",A),hE("error",MZB)}function MZB(){Su=AQ.onerror,AQ.onerror=function(A,Q,B,Y,J){if(gE("error",{column:Y,error:J,line:B,msg:A,url:Q}),Su)return Su.apply(this,arguments);return!1},AQ.onerror.__SENTRY_INSTRUMENTED__=!0}var ku=null;function _DA(A){yE("unhandledrejection",A),hE("unhandledrejection",zZB)}function zZB(){ku=AQ.onunhandledrejection,AQ.onunhandledrejection=function(A){if(gE("unhandledrejection",A),ku)return ku.apply(this,arguments);return!0},AQ.onunhandledrejection.__SENTRY_INSTRUMENTED__=!0}var vDA=!1;function yDA(){if(vDA)return;vDA=!0,kDA(_u),_DA(_u)}function _u(){let A=iC(),Q=A&&$0(A);if(Q)OA&&e.log("[Tracing] Root span: internal_error -> Global error occurred"),Q.setStatus({code:m9,message:"internal_error"})}_u.tag="sentry_tracingErrorCallback";function X9(A){if(typeof __SENTRY_TRACING__==="boolean"&&!__SENTRY_TRACING__)return!1;let Q=A||hA()?.getOptions();return!!Q&&(Q.tracesSampleRate!=null||!!Q.tracesSampler)}var xE="production";var RZB=/^o(\d+)\./,wZB=/^(?:(\w+):)\/\/(?:(\w+)(?::(\w+)?)?@)([\w.-]+)(?::(\d+))?\/(.+)/;function jZB(A){return A==="http"||A==="https"}function nC(A,Q=!1){let{host:B,path:Y,pass:J,port:C,projectId:X,protocol:G,publicKey:F}=A;return`${G}://${F}${Q&&J?`:${J}`:""}@${B}${C?`:${C}`:""}/${Y?`${Y}/`:Y}${X}`}function OZB(A){let Q=wZB.exec(A);if(!Q){h0(()=>{console.error(`Invalid Sentry Dsn: ${A}`)});return}let[B,Y,J="",C="",X="",G=""]=Q.slice(1),F="",W=G,Z=W.split("/");if(Z.length>1)F=Z.slice(0,-1).join("/"),W=Z.pop();if(W){let U=W.match(/^\d+/);if(U)W=U[0]}return hDA({host:C,pass:J,path:F,projectId:W,port:X,protocol:B,publicKey:Y})}function hDA(A){return{protocol:A.protocol,publicKey:A.publicKey||"",pass:A.pass||"",host:A.host,port:A.port||"",path:A.path||"",projectId:A.projectId}}function PZB(A){if(!OA)return!0;let{port:Q,projectId:B,protocol:Y}=A;if(["protocol","publicKey","host","projectId"].find((X)=>{if(!A[X])return e.error(`Invalid Sentry Dsn: ${X} missing`),!0;return!1}))return!1;if(!B.match(/^\d+$/))return e.error(`Invalid Sentry Dsn: Invalid projectId ${B}`),!1;if(!jZB(Y))return e.error(`Invalid Sentry Dsn: Invalid protocol ${Y}`),!1;if(Q&&isNaN(parseInt(Q,10)))return e.error(`Invalid Sentry Dsn: Invalid port ${Q}`),!1;return!0}function gDA(A){return A.match(RZB)?.[1]}function xDA(A){let Q=typeof A==="string"?OZB(A):hDA(A);if(!Q||!PZB(Q))return;return Q}var fDA="_frozenDsc";function Gj(A,Q){d0(A,fDA,Q)}function vu(A,Q){let B=Q.getOptions(),{publicKey:Y,host:J}=Q.getDsn()||{},C;if(B.orgId)C=String(B.orgId);else if(J)C=gDA(J);let X={environment:B.environment||xE,release:B.release,public_key:Y,trace_id:A,org_id:C};return Q.emit("createDsc",X),X}function rX(A,Q){let B=Q.getPropagationContext();return B.dsc||vu(B.traceId,A)}function c0(A){let Q=hA();if(!Q)return{};let B=$0(A),Y=eA(B),J=Y.data,C=B.spanContext().traceState,X=C?.get("sentry.sample_rate")??J[j5]??J[Lu];function G(K){if(typeof X==="number"||typeof X==="string")K.sample_rate=`${X}`;return K}let F=B[fDA];if(F)return G(F);let W=C?.get("sentry.dsc"),Z=W&&r7(W);if(Z)return G(Z);let U=vu(A.spanContext().traceId,Q),$=J[A0],E=Y.description;if($!=="url"&&E)U.transaction=E;if(X9())U.sampled=String(o1(B)),U.sample_rand=C?.get("sentry.sample_rand")??pC(B).scope?.getPropagationContext().sampleRand.toString();return G(U),Q.emit("createDsc",U,B),U}function yu(A){let Q=c0(A);return a7(Q)}class TZ{constructor(A={}){this._traceId=A.traceId||j8(),this._spanId=A.spanId||O8()}spanContext(){return{spanId:this._spanId,traceId:this._traceId,traceFlags:Qj}}end(A){}setAttribute(A,Q){return this}setAttributes(A){return this}setStatus(A){return this}updateName(A){return this}isRecording(){return!1}addEvent(A,Q,B){return this}addLink(A){return this}addLinks(A){return this}recordException(A,Q){}}function SZ(A,Q,B=()=>{}){let Y;try{Y=A()}catch(J){throw Q(J),B(),J}return TZB(Y,Q,B)}function TZB(A,Q,B){if(z5(A))return A.then((Y)=>{return B(),Y},(Y)=>{throw Q(Y),B(),Y});return B(),A}function XN(A){if(!OA)return;let{description:Q="< unknown name >",op:B="< unknown op >",parent_span_id:Y}=eA(A),{spanId:J}=A.spanContext(),C=o1(A),X=$0(A),G=X===A,F=`[Tracing] Starting ${C?"sampled":"unsampled"} ${G?"root ":""}span`,W=[`op: ${B}`,`name: ${Q}`,`ID: ${J}`];if(Y)W.push(`parent ID: ${Y}`);if(!G){let{op:Z,description:U}=eA(X);if(W.push(`root ID: ${X.spanContext().spanId}`),Z)W.push(`root op: ${Z}`);if(U)W.push(`root description: ${U}`)}e.log(`${F} ${W.join(` - `)}`)}function YN(A){if(!OA)return;let{description:Q="< unknown name >",op:B="< unknown op >"}=eA(A),{spanId:Y}=A.spanContext(),C=$0(A)===A,X=`[Tracing] Finishing "${B}" ${C?"root ":""}span "${Q}" with ID ${Y}`;e.log(X)}function JN(A,Q,B){if(!C9(A))return[!1];let Y=void 0,J;if(typeof A.tracesSampler==="function")J=A.tracesSampler({...Q,inheritOrSampleWith:(G)=>{if(typeof Q.parentSampleRate==="number")return Q.parentSampleRate;if(typeof Q.parentSampled==="boolean")return Number(Q.parentSampled);return G}}),Y=!0;else if(Q.parentSampled!==void 0)J=Q.parentSampled;else if(typeof A.tracesSampleRate<"u")J=A.tracesSampleRate,Y=!0;let C=P8(J);if(C===void 0)return OA&&e.warn(`[Tracing] Discarding root span because of invalid sample rate. Sample rate must be a boolean or a number between 0 and 1. Got ${JSON.stringify(J)} of type ${JSON.stringify(typeof J)}.`),[!1];if(!C)return OA&&e.log(`[Tracing] Discarding transaction because ${typeof A.tracesSampler==="function"?"tracesSampler returned 0 or false":"a negative sampling decision was inherited or tracesSampleRate is set to 0"}`),[!1,C,Y];let X=BB)return Ru(A,Q-1,B);return Y}function zu(A,Q,B=1/0,Y=1/0,J=DZB()){let[C,X]=J;if(Q==null||["boolean","string"].includes(typeof Q)||typeof Q==="number"&&Number.isFinite(Q))return Q;let G=KZB(A,Q);if(!G.startsWith("[object "))return G;if(Q.__sentry_skip_normalization__)return Q;let F=typeof Q.__sentry_override_normalization_depth__==="number"?Q.__sentry_override_normalization_depth__:B;if(F===0)return G.replace("object ","");if(C(Q))return"[Circular ~]";let W=Q;if(W&&typeof W.toJSON==="function")try{let E=W.toJSON();return zu("",E,F-1,Y,J)}catch(E){}let Z=Array.isArray(Q)?[]:{},U=0,$=pw(Q);for(let E in $){if(!Object.prototype.hasOwnProperty.call($,E))continue;if(U>=Y){Z[E]="[MaxProperties ~]";break}let K=$[E];Z[E]=zu(E,K,F-1,Y,J),U++}return X(Q),Z}function KZB(A,Q){try{if(A==="domain"&&Q&&typeof Q==="object"&&Q._events)return"[Domain]";if(A==="domainEmitter")return"[DomainEmitter]";if(typeof global<"u"&&Q===global)return"[Global]";if(typeof window<"u"&&Q===window)return"[Window]";if(typeof document<"u"&&Q===document)return"[Document]";if(lw(Q))return"[VueViewModel]";if(cHA(Q))return"[SyntheticEvent]";if(typeof Q==="number"&&!Number.isFinite(Q))return`[${Q}]`;if(typeof Q==="function")return`[Function: ${QN(Q)}]`;if(typeof Q==="symbol")return`[${String(Q)}]`;if(typeof Q==="bigint")return`[BigInt: ${String(Q)}]`;let B=VZB(Q);if(/^HTML(\w*)Element$/.test(B))return`[HTMLElement: ${B}]`;return`[object ${B}]`}catch(B){return`**non-serializable** (${B})`}}function VZB(A){let Q=Object.getPrototypeOf(A);return Q?.constructor?Q.constructor.name:"null prototype"}function IZB(A){return~-encodeURI(A).split(/%..|./).length}function HZB(A){return IZB(JSON.stringify(A))}function DZB(){let A=new WeakSet;function Q(Y){if(A.has(Y))return!0;return A.add(Y),!1}function B(Y){A.delete(Y)}return[Q,B]}function T8(A,Q=[]){return[A,Q]}function ju(A,Q){let[B,Y]=A;return[B,[...Y,Q]]}function Yj(A,Q){let B=A[1];for(let Y of B){let J=Y[0].type;if(Q(Y,J))return!0}return!1}function wu(A){let Q=u7(AQ);return Q.encodePolyfill?Q.encodePolyfill(A):new TextEncoder().encode(A)}function CN(A){let[Q,B]=A,Y=JSON.stringify(Q);function J(C){if(typeof Y==="string")Y=typeof C==="string"?Y+C:[wu(Y),C];else Y.push(typeof C==="string"?wu(C):C)}for(let C of B){let[X,G]=C;if(J(` + `)}`)}function GN(A){if(!OA)return;let{description:Q="< unknown name >",op:B="< unknown op >"}=eA(A),{spanId:Y}=A.spanContext(),C=$0(A)===A,X=`[Tracing] Finishing "${B}" ${C?"root ":""}span "${Q}" with ID ${Y}`;e.log(X)}function FN(A,Q,B){if(!X9(A))return[!1];let Y=void 0,J;if(typeof A.tracesSampler==="function")J=A.tracesSampler({...Q,inheritOrSampleWith:(G)=>{if(typeof Q.parentSampleRate==="number")return Q.parentSampleRate;if(typeof Q.parentSampled==="boolean")return Number(Q.parentSampled);return G}}),Y=!0;else if(Q.parentSampled!==void 0)J=Q.parentSampled;else if(typeof A.tracesSampleRate<"u")J=A.tracesSampleRate,Y=!0;let C=T8(J);if(C===void 0)return OA&&e.warn(`[Tracing] Discarding root span because of invalid sample rate. Sample rate must be a boolean or a number between 0 and 1. Got ${JSON.stringify(J)} of type ${JSON.stringify(typeof J)}.`),[!1];if(!C)return OA&&e.log(`[Tracing] Discarding transaction because ${typeof A.tracesSampler==="function"?"tracesSampler returned 0 or false":"a negative sampling decision was inherited or tracesSampleRate is set to 0"}`),[!1,C,Y];let X=BB)return gu(A,Q-1,B);return Y}function hu(A,Q,B=1/0,Y=1/0,J=yZB()){let[C,X]=J;if(Q==null||["boolean","string"].includes(typeof Q)||typeof Q==="number"&&Number.isFinite(Q))return Q;let G=SZB(A,Q);if(!G.startsWith("[object "))return G;if(Q.__sentry_skip_normalization__)return Q;let F=typeof Q.__sentry_override_normalization_depth__==="number"?Q.__sentry_override_normalization_depth__:B;if(F===0)return G.replace("object ","");if(C(Q))return"[Circular ~]";let W=Q;if(W&&typeof W.toJSON==="function")try{let E=W.toJSON();return hu("",E,F-1,Y,J)}catch(E){}let Z=Array.isArray(Q)?[]:{},U=0,$=aw(Q);for(let E in $){if(!Object.prototype.hasOwnProperty.call($,E))continue;if(U>=Y){Z[E]="[MaxProperties ~]";break}let K=$[E];Z[E]=hu(E,K,F-1,Y,J),U++}return X(Q),Z}function SZB(A,Q){try{if(A==="domain"&&Q&&typeof Q==="object"&&Q._events)return"[Domain]";if(A==="domainEmitter")return"[DomainEmitter]";if(typeof global<"u"&&Q===global)return"[Global]";if(typeof window<"u"&&Q===window)return"[Window]";if(typeof document<"u"&&Q===document)return"[Document]";if(rw(Q))return"[VueViewModel]";if(CDA(Q))return"[SyntheticEvent]";if(typeof Q==="number"&&!Number.isFinite(Q))return`[${Q}]`;if(typeof Q==="function")return`[Function: ${CN(Q)}]`;if(typeof Q==="symbol")return`[${String(Q)}]`;if(typeof Q==="bigint")return`[BigInt: ${String(Q)}]`;let B=kZB(Q);if(/^HTML(\w*)Element$/.test(B))return`[HTMLElement: ${B}]`;return`[object ${B}]`}catch(B){return`**non-serializable** (${B})`}}function kZB(A){let Q=Object.getPrototypeOf(A);return Q?.constructor?Q.constructor.name:"null prototype"}function _ZB(A){return~-encodeURI(A).split(/%..|./).length}function vZB(A){return _ZB(JSON.stringify(A))}function yZB(){let A=new WeakSet;function Q(Y){if(A.has(Y))return!0;return A.add(Y),!1}function B(Y){A.delete(Y)}return[Q,B]}function S8(A,Q=[]){return[A,Q]}function fu(A,Q){let[B,Y]=A;return[B,[...Y,Q]]}function Fj(A,Q){let B=A[1];for(let Y of B){let J=Y[0].type;if(Q(Y,J))return!0}return!1}function xu(A){let Q=d7(AQ);return Q.encodePolyfill?Q.encodePolyfill(A):new TextEncoder().encode(A)}function WN(A){let[Q,B]=A,Y=JSON.stringify(Q);function J(C){if(typeof Y==="string")Y=typeof C==="string"?Y+C:[xu(Y),C];else Y.push(typeof C==="string"?xu(C):C)}for(let C of B){let[X,G]=C;if(J(` ${JSON.stringify(X)} -`),typeof G==="string"||G instanceof Uint8Array)J(G);else{let F;try{F=JSON.stringify(G)}catch(W){F=JSON.stringify(RJ(G))}J(F)}}return typeof Y==="string"?Y:NZB(Y)}function NZB(A){let Q=A.reduce((J,C)=>J+C.length,0),B=new Uint8Array(Q),Y=0;for(let J of A)B.set(J,Y),Y+=J.length;return B}function Ou(A){return[{type:"span"},A]}function Pu(A){let Q=typeof A.data==="string"?wu(A.data):A.data;return[{type:"attachment",length:Q.length,filename:A.filename,content_type:A.contentType,attachment_type:A.attachmentType},Q]}var LZB={session:"session",sessions:"session",attachment:"attachment",transaction:"transaction",event:"error",client_report:"internal",user_report:"default",profile:"profile",profile_chunk:"profile",replay_event:"replay",replay_recording:"replay",check_in:"monitor",feedback:"feedback",span:"span",raw_security:"security",log:"log_item"};function Jj(A){return LZB[A]}function Cj(A){if(!A?.sdk)return;let{name:Q,version:B}=A.sdk;return{name:Q,version:B}}function Tu(A,Q,B,Y){let J=A.sdkProcessingMetadata?.dynamicSamplingContext;return{event_id:A.event_id,sent_at:new Date().toISOString(),...Q&&{sdk:Q},...!!B&&Y&&{dsn:iC(Y)},...J&&{trace:J}}}function qZB(A,Q){if(!Q)return A;return A.sdk=A.sdk||{},A.sdk.name=A.sdk.name||Q.name,A.sdk.version=A.sdk.version||Q.version,A.sdk.integrations=[...A.sdk.integrations||[],...Q.integrations||[]],A.sdk.packages=[...A.sdk.packages||[],...Q.packages||[]],A}function zDA(A,Q,B,Y){let J=Cj(B),C={sent_at:new Date().toISOString(),...J&&{sdk:J},...!!Y&&Q&&{dsn:iC(Q)}},X="aggregates"in A?[{type:"sessions"},A]:[{type:"session"},A.toJSON()];return T8(C,[X])}function RDA(A,Q,B,Y){let J=Cj(B),C=A.type&&A.type!=="replay_event"?A.type:"event";qZB(A,B?.sdk);let X=Tu(A,J,Y,Q);return delete A.sdkProcessingMetadata,T8(X,[[{type:C},A]])}function wDA(A,Q){function B(Z){return!!Z.trace_id&&!!Z.public_key}let Y=c0(A[0]),J=Q?.getDsn(),C=Q?.getOptions().tunnel,X={sent_at:new Date().toISOString(),...B(Y)&&{trace:Y},...!!C&&J&&{dsn:iC(J)}},G=Q?.getOptions().beforeSendSpan,F=G?(Z)=>{let U=eA(Z),$=G(U);if(!$)return AN(),U;return $}:eA,W=[];for(let Z of A){let U=F(Z);if(U)W.push(Ou(U))}return T8(X,W)}function Su(A,Q,B,Y=pC()){let J=Y&&$0(Y);if(J)OA&&e.log(`[Measurement] Setting measurement on root span: ${A} = ${Q} ${B}`),J.addEvent(A,{[sw]:Q,[nw]:B})}function PZ(A){if(!A||A.length===0)return;let Q={};return A.forEach((B)=>{let Y=B.attributes||{},J=Y[nw],C=Y[sw];if(typeof J==="string"&&typeof C==="number")Q[B.name]={value:C,unit:J}}),Q}var jDA=1000;class XN{constructor(A={}){if(this._traceId=A.traceId||w8(),this._spanId=A.spanId||j8(),this._startTime=A.startTimestamp||R8(),this._links=A.links,this._attributes={},this.setAttributes({[DQ]:"manual",[BQ]:A.op,...A.attributes}),this._name=A.name,A.parentSpanId)this._parentSpanId=A.parentSpanId;if("sampled"in A)this._sampled=A.sampled;if(A.endTimestamp)this._endTime=A.endTimestamp;if(this._events=[],this._isStandaloneSpan=A.isStandalone,this._endTime)this._onSpanEnded()}addLink(A){if(this._links)this._links.push(A);else this._links=[A];return this}addLinks(A){if(this._links)this._links.push(...A);else this._links=A;return this}recordException(A,Q){}spanContext(){let{_spanId:A,_traceId:Q,_sampled:B}=this;return{spanId:A,traceId:Q,traceFlags:B?ow:aw}}setAttribute(A,Q){if(Q===void 0)delete this._attributes[A];else this._attributes[A]=Q;return this}setAttributes(A){return Object.keys(A).forEach((Q)=>this.setAttribute(Q,A[Q])),this}updateStartTime(A){this._startTime=u9(A)}setStatus(A){return this._status=A,this}updateName(A){return this._name=A,this.setAttribute(A0,"custom"),this}end(A){if(this._endTime)return;this._endTime=u9(A),YN(this),this._onSpanEnded()}getSpanJSON(){return{data:this._attributes,description:this._name,op:this._attributes[BQ],parent_span_id:this._parentSpanId,span_id:this._spanId,start_timestamp:this._startTime,status:wZ(this._status),timestamp:this._endTime,trace_id:this._traceId,origin:this._attributes[DQ],profile_id:this._attributes[RE],exclusive_time:this._attributes[wE],measurements:PZ(this._events),is_segment:this._isStandaloneSpan&&$0(this)===this||void 0,segment_id:this._isStandaloneSpan?$0(this).spanContext().spanId:void 0,links:RZ(this._links)}}isRecording(){return!this._endTime&&!!this._sampled}addEvent(A,Q,B){OA&&e.log("[Tracing] Adding an event to span:",A);let Y=ODA(Q)?Q:B||R8(),J=ODA(Q)?{}:Q||{},C={name:A,time:u9(Y),attributes:J};return this._events.push(C),this}isStandaloneSpan(){return!!this._isStandaloneSpan}_onSpanEnded(){let A=gA();if(A)A.emit("spanEnd",this);if(!(this._isStandaloneSpan||this===$0(this)))return;if(this._isStandaloneSpan){if(this._sampled)zZB(wDA([this],A));else if(OA&&e.log("[Tracing] Discarding standalone span because its trace was not chosen to be sampled."),A)A.recordDroppedEvent("sample_rate","span");return}let B=this._convertSpanToTransaction();if(B)(lC(this).scope||sQ()).captureEvent(B)}_convertSpanToTransaction(){if(!PDA(eA(this)))return;if(!this._name)OA&&e.warn("Transaction has no name, falling back to ``."),this._name="";let{scope:A,isolationScope:Q}=lC(this),B=A?.getScopeData().sdkProcessingMetadata?.normalizedRequest;if(this._sampled!==!0)return;let J=eD(this).filter((W)=>W!==this&&!MZB(W)).map((W)=>eA(W)).filter(PDA),C=this._attributes[A0];delete this._attributes[cC],J.forEach((W)=>{delete W.data[cC]});let X={contexts:{trace:ZDA(this)},spans:J.length>jDA?J.sort((W,Z)=>W.start_timestamp-Z.start_timestamp).slice(0,jDA):J,start_timestamp:this._startTime,timestamp:this._endTime,transaction:this._name,type:"transaction",sdkProcessingMetadata:{capturedSpanScope:A,capturedSpanIsolationScope:Q,dynamicSamplingContext:c0(this)},request:B,...C&&{transaction_info:{source:C}}},G=PZ(this._events);if(G&&Object.keys(G).length)OA&&e.log("[Measurements] Adding measurements to transaction event",JSON.stringify(G,void 0,2)),X.measurements=G;return X}}function ODA(A){return A&&typeof A==="number"||A instanceof Date||Array.isArray(A)}function PDA(A){return!!A.start_timestamp&&!!A.timestamp&&!!A.span_id&&!!A.trace_id}function MZB(A){return A instanceof XN&&A.isStandaloneSpan()}function zZB(A){let Q=gA();if(!Q)return;let B=A[1];if(!B||B.length===0){Q.recordDroppedEvent("before_send","span");return}Q.sendEnvelope(A)}var ku="__SENTRY_SUPPRESS_TRACING__";function w5(A,Q){let B=WN();if(B.startSpan)return B.startSpan(A,Q);let Y=hu(A),{forceTransaction:J,parentSpan:C,scope:X}=A,G=X?.clone();return O8(G,()=>{return SDA(C)(()=>{let W=sQ(),Z=xu(W),$=A.onlyIfParent&&!Z?new jZ:gu({parentSpan:Z,spanArguments:Y,forceTransaction:J,scope:W});return qZ(W,$),OZ(()=>Q($),()=>{let{status:E}=eA($);if($.isRecording()&&(!E||E==="ok"))$.setStatus({code:m9,message:"internal_error"})},()=>{$.end()})})})}function GN(A,Q){let B=WN();if(B.startSpanManual)return B.startSpanManual(A,Q);let Y=hu(A),{forceTransaction:J,parentSpan:C,scope:X}=A,G=X?.clone();return O8(G,()=>{return SDA(C)(()=>{let W=sQ(),Z=xu(W),$=A.onlyIfParent&&!Z?new jZ:gu({parentSpan:Z,spanArguments:Y,forceTransaction:J,scope:W});return qZ(W,$),OZ(()=>Q($,()=>$.end()),()=>{let{status:E}=eA($);if($.isRecording()&&(!E||E==="ok"))$.setStatus({code:m9,message:"internal_error"})})})})}function _u(A){let Q=WN();if(Q.startInactiveSpan)return Q.startInactiveSpan(A);let B=hu(A),{forceTransaction:Y,parentSpan:J}=A;return(A.scope?(X)=>O8(A.scope,X):J!==void 0?(X)=>t7(J,X):(X)=>X())(()=>{let X=sQ(),G=xu(X);if(A.onlyIfParent&&!G)return new jZ;return gu({parentSpan:G,spanArguments:B,forceTransaction:Y,scope:X})})}var vu=(A,Q)=>{let B=zJ(),Y=z5(B);if(Y.continueTrace)return Y.continueTrace(A,Q);let{sentryTrace:J,baggage:C}=A;return O8((X)=>{let G=zZ(J,C);return X.setPropagationContext(G),Q()})};function t7(A,Q){let B=WN();if(B.withActiveSpan)return B.withActiveSpan(A,Q);return O8((Y)=>{return qZ(Y,A||void 0),Q(Y)})}function FN(A){let Q=WN();if(Q.suppressTracing)return Q.suppressTracing(A);return O8((B)=>{return B.setSDKProcessingMetadata({[ku]:!0}),A()})}function yu(A){return O8((Q)=>{return Q.setPropagationContext({traceId:w8(),sampleRand:Math.random()}),OA&&e.info(`Starting a new trace with id ${Q.getPropagationContext().traceId}`),t7(null,A)})}function gu({parentSpan:A,spanArguments:Q,forceTransaction:B,scope:Y}){if(!C9()){let X=new jZ;if(B||!A){let G={sampled:"false",sample_rate:"0",transaction:Q.name,...c0(X)};Bj(X,G)}return X}let J=RQ(),C;if(A&&!B)C=RZB(A,Y,Q),PE(A,C);else if(A){let X=c0(A),{traceId:G,spanId:F}=A.spanContext(),W=a1(A);C=TDA({traceId:G,parentSpanId:F,...Q},Y,W),Bj(C,X)}else{let{traceId:X,dsc:G,parentSpanId:F,sampled:W}={...J.getPropagationContext(),...Y.getPropagationContext()};if(C=TDA({traceId:X,parentSpanId:F,...Q},Y,W),G)Bj(C,G)}return BN(C),sD(C,Y,J),C}function hu(A){let B={isStandalone:(A.experimental||{}).standalone,...A};if(A.startTime){let Y={...B};return Y.startTimestamp=u9(A.startTime),delete Y.startTime,Y}return B}function WN(){let A=zJ();return z5(A)}function TDA(A,Q,B){let Y=gA(),J=Y?.getOptions()||{},{name:C=""}=A,X={spanAttributes:{...A.attributes},spanName:C,parentSampled:B};Y?.emit("beforeSampling",X,{decision:!1});let G=X.parentSampled??B,F=X.spanAttributes,W=Q.getPropagationContext(),[Z,U,$]=Q.getScopeData().sdkProcessingMetadata[ku]?[!1]:JN(J,{name:C,parentSampled:G,attributes:F,parentSampleRate:P8(W.dsc?.sample_rate)},W.sampleRand),E=new XN({...A,attributes:{[A0]:"custom",[R5]:U!==void 0&&$?U:void 0,...F},sampled:Z});if(!Z&&Y)OA&&e.log("[Tracing] Discarding root span because its trace was not chosen to be sampled."),Y.recordDroppedEvent("sample_rate","transaction");if(Y)Y.emit("spanStart",E);return E}function RZB(A,Q,B){let{spanId:Y,traceId:J}=A.spanContext(),C=Q.getScopeData().sdkProcessingMetadata[ku]?!1:a1(A),X=C?new XN({...B,parentSpanId:Y,traceId:J,sampled:C}):new jZ({traceId:J});PE(A,X);let G=gA();if(G){if(G.emit("spanStart",X),B.endTimestamp)G.emit("spanEnd",X)}return X}function xu(A){let Q=dC(A);if(!Q)return;let B=gA();if((B?B.getOptions():{}).parentSpanIsAlwaysRootSpan)return $0(Q);return Q}function SDA(A){return A!==void 0?(Q)=>{return t7(A,Q)}:(Q)=>Q()}var rG;(function(A){A[A.PENDING=0]="PENDING";let B=1;A[A.RESOLVED=B]="RESOLVED";let Y=2;A[A.REJECTED=Y]="REJECTED"})(rG||(rG={}));function sC(A){return new nC((Q)=>{Q(A)})}function Xj(A){return new nC((Q,B)=>{B(A)})}class nC{constructor(A){this._state=rG.PENDING,this._handlers=[],this._runExecutor(A)}then(A,Q){return new nC((B,Y)=>{this._handlers.push([!1,(J)=>{if(!A)B(J);else try{B(A(J))}catch(C){Y(C)}},(J)=>{if(!Q)Y(J);else try{B(Q(J))}catch(C){Y(C)}}]),this._executeHandlers()})}catch(A){return this.then((Q)=>Q,A)}finally(A){return new nC((Q,B)=>{let Y,J;return this.then((C)=>{if(J=!1,Y=C,A)A()},(C)=>{if(J=!0,Y=C,A)A()}).then(()=>{if(J){B(Y);return}Q(Y)})})}_executeHandlers(){if(this._state===rG.PENDING)return;let A=this._handlers.slice();this._handlers=[],A.forEach((Q)=>{if(Q[0])return;if(this._state===rG.RESOLVED)Q[1](this._value);if(this._state===rG.REJECTED)Q[2](this._value);Q[0]=!0})}_runExecutor(A){let Q=(J,C)=>{if(this._state!==rG.PENDING)return;if(q5(C)){C.then(B,Y);return}this._state=J,this._value=C,this._executeHandlers()},B=(J)=>{Q(rG.RESOLVED,J)},Y=(J)=>{Q(rG.REJECTED,J)};try{A(B,Y)}catch(J){Y(J)}}}function Gj(A,Q,B,Y=0){return new nC((J,C)=>{let X=A[Y];if(Q===null||typeof X!=="function")J(Q);else{let G=X({...Q},B);if(OA&&X.id&&G===null&&e.log(`Event processor "${X.id}" dropped event`),q5(G))G.then((F)=>Gj(A,F,B,Y+1).then(J)).then(null,C);else Gj(A,G,B,Y+1).then(J).then(null,C)}})}var Fj,kDA,Wj;function ZN(A){let Q=AQ._sentryDebugIds;if(!Q)return{};let B=Object.keys(Q);if(Wj&&B.length===kDA)return Wj;return kDA=B.length,Wj=B.reduce((Y,J)=>{if(!Fj)Fj={};let C=Fj[J];if(C)Y[C[0]]=C[1];else{let X=A(J);for(let G=X.length-1;G>=0;G--){let W=X[G]?.filename,Z=Q[J];if(W&&Z){Y[W]=Z,Fj[J]=[W,Z];break}}}return Y},{}),Wj}function fu(A,Q){let{fingerprint:B,span:Y,breadcrumbs:J,sdkProcessingMetadata:C}=Q;if(wZB(A,Q),Y)PZB(A,Y);TZB(A,B),jZB(A,J),OZB(A,C)}function TZ(A,Q){let{extra:B,tags:Y,user:J,contexts:C,level:X,sdkProcessingMetadata:G,breadcrumbs:F,fingerprint:W,eventProcessors:Z,attachments:U,propagationContext:$,transactionName:E,span:K}=Q;if(Zj(A,"extra",B),Zj(A,"tags",Y),Zj(A,"user",J),Zj(A,"contexts",C),A.sdkProcessingMetadata=i7(A.sdkProcessingMetadata,G,2),X)A.level=X;if(E)A.transactionName=E;if(K)A.span=K;if(F.length)A.breadcrumbs=[...A.breadcrumbs,...F];if(W.length)A.fingerprint=[...A.fingerprint,...W];if(Z.length)A.eventProcessors=[...A.eventProcessors,...Z];if(U.length)A.attachments=[...A.attachments,...U];A.propagationContext={...A.propagationContext,...$}}function Zj(A,Q,B){A[Q]=i7(A[Q],B,1)}function wZB(A,Q){let{extra:B,tags:Y,user:J,contexts:C,level:X,transactionName:G}=Q;if(Object.keys(B).length)A.extra={...B,...A.extra};if(Object.keys(Y).length)A.tags={...Y,...A.tags};if(Object.keys(J).length)A.user={...J,...A.user};if(Object.keys(C).length)A.contexts={...C,...A.contexts};if(X)A.level=X;if(G&&A.type!=="transaction")A.transaction=G}function jZB(A,Q){let B=[...A.breadcrumbs||[],...Q];A.breadcrumbs=B.length?B:void 0}function OZB(A,Q){A.sdkProcessingMetadata={...A.sdkProcessingMetadata,...Q}}function PZB(A,Q){A.contexts={trace:o7(Q),...A.contexts},A.sdkProcessingMetadata={dynamicSamplingContext:c0(Q),...A.sdkProcessingMetadata};let B=$0(Q),Y=eA(B).description;if(Y&&!A.transaction&&A.type==="transaction")A.transaction=Y}function TZB(A,Q){if(A.fingerprint=A.fingerprint?Array.isArray(A.fingerprint)?A.fingerprint:[A.fingerprint]:[],Q)A.fingerprint=A.fingerprint.concat(Q);if(!A.fingerprint.length)delete A.fingerprint}function _DA(A,Q,B,Y,J,C){let{normalizeDepth:X=3,normalizeMaxBreadth:G=1000}=A,F={...Q,event_id:Q.event_id||B.event_id||FY(),timestamp:Q.timestamp||lG()},W=B.integrations||A.integrations.map((V)=>V.name);if(SZB(F,A),vZB(F,W),J)J.emit("applyFrameMetadata",Q);if(Q.type===void 0)kZB(F,A.stackParser);let Z=gZB(Y,B.captureContext);if(B.mechanism)p7(F,B.mechanism);let U=J?J.getEventProcessors():[],$=iG().getScopeData();if(C){let V=C.getScopeData();TZ($,V)}if(Z){let V=Z.getScopeData();TZ($,V)}let E=[...B.attachments||[],...$.attachments];if(E.length)B.attachments=E;fu(F,$);let K=[...U,...$.eventProcessors];return Gj(K,F,B).then((V)=>{if(V)_ZB(V);if(typeof X==="number"&&X>0)return yZB(V,X,G);return V})}function SZB(A,Q){let{environment:B,release:Y,dist:J,maxValueLength:C=250}=Q;if(A.environment=A.environment||B||_E,!A.release&&Y)A.release=Y;if(!A.dist&&J)A.dist=J;let X=A.request;if(X?.url)X.url=b9(X.url,C)}function kZB(A,Q){let B=ZN(Q);A.exception?.values?.forEach((Y)=>{Y.stacktrace?.frames?.forEach((J)=>{if(J.filename)J.debug_id=B[J.filename]})})}function _ZB(A){let Q={};if(A.exception?.values?.forEach((Y)=>{Y.stacktrace?.frames?.forEach((J)=>{if(J.debug_id){if(J.abs_path)Q[J.abs_path]=J.debug_id;else if(J.filename)Q[J.filename]=J.debug_id;delete J.debug_id}})}),Object.keys(Q).length===0)return;A.debug_meta=A.debug_meta||{},A.debug_meta.images=A.debug_meta.images||[];let B=A.debug_meta.images;Object.entries(Q).forEach(([Y,J])=>{B.push({type:"sourcemap",code_file:Y,debug_id:J})})}function vZB(A,Q){if(Q.length>0)A.sdk=A.sdk||{},A.sdk.integrations=[...A.sdk.integrations||[],...Q]}function yZB(A,Q,B){if(!A)return null;let Y={...A,...A.breadcrumbs&&{breadcrumbs:A.breadcrumbs.map((J)=>({...J,...J.data&&{data:RJ(J.data,Q,B)}}))},...A.user&&{user:RJ(A.user,Q,B)},...A.contexts&&{contexts:RJ(A.contexts,Q,B)},...A.extra&&{extra:RJ(A.extra,Q,B)}};if(A.contexts?.trace&&Y.contexts){if(Y.contexts.trace=A.contexts.trace,A.contexts.trace.data)Y.contexts.trace.data=RJ(A.contexts.trace.data,Q,B)}if(A.spans)Y.spans=A.spans.map((J)=>{return{...J,...J.data&&{data:RJ(J.data,Q,B)}}});if(A.contexts?.flags&&Y.contexts)Y.contexts.flags=RJ(A.contexts.flags,3,B);return Y}function gZB(A,Q){if(!Q)return A;let B=A?A.clone():new XJ;return B.update(Q),B}function vDA(A){if(!A)return;if(hZB(A))return{captureContext:A};if(fZB(A))return{captureContext:A};return A}function hZB(A){return A instanceof XJ||typeof A==="function"}var xZB=["user","level","extra","contexts","tags","fingerprint","propagationContext"];function fZB(A){return Object.keys(A).some((Q)=>xZB.includes(Q))}function jB(A,Q){return sQ().captureException(A,vDA(Q))}function vE(A,Q){let B=typeof Q==="string"?Q:void 0,Y=typeof Q!=="string"?{captureContext:Q}:void 0;return sQ().captureMessage(A,B,Y)}function UN(A,Q){return sQ().captureEvent(A,Q)}function bu(A,Q){RQ().setContext(A,Q)}function mu(A){RQ().setExtras(A)}function uu(A,Q){RQ().setExtra(A,Q)}function du(A){RQ().setTags(A)}function cu(A,Q){RQ().setTag(A,Q)}function lu(A){RQ().setUser(A)}function pu(){return RQ().lastEventId()}function $N(A,Q){let B=sQ(),Y=gA();if(!Y)OA&&e.warn("Cannot capture check-in. No client defined.");else if(!Y.captureCheckIn)OA&&e.warn("Cannot capture check-in. Client does not support sending check-ins.");else return Y.captureCheckIn(A,Q,B);return FY()}function o1(A,Q,B){let Y=$N({monitorSlug:A,status:"in_progress"},B),J=R8();function C(X){$N({monitorSlug:A,status:X,checkInId:Y,duration:R8()-J})}return nG(()=>{let X;try{X=Q()}catch(G){throw C("error"),G}if(q5(X))Promise.resolve(X).then(()=>{C("ok")},(G)=>{throw C("error"),G});else C("ok");return X})}async function iu(A){let Q=gA();if(Q)return Q.flush(A);return OA&&e.warn("Cannot flush events. No client defined."),Promise.resolve(!1)}async function nu(A){let Q=gA();if(Q)return Q.close(A);return OA&&e.warn("Cannot flush events and disable SDK. No client defined."),Promise.resolve(!1)}function yE(){return!!gA()}function EN(){let A=gA();return A?.getOptions().enabled!==!1&&!!A?.getTransport()}function su(A){RQ().addEventProcessor(A)}function KN(A){let Q=RQ(),B=sQ(),{userAgent:Y}=AQ.navigator||{},J=oHA({user:B.getUser()||Q.getUser(),...Y&&{userAgent:Y},...A}),C=Q.getSession();if(C?.status==="ok")pG(C,{status:"exited"});return SZ(),Q.setSession(J),J}function SZ(){let A=RQ(),B=sQ().getSession()||A.getSession();if(B)tHA(B);yDA(),A.setSession()}function yDA(){let A=RQ(),Q=gA(),B=A.getSession();if(B&&Q)Q.captureSession(B)}function ru(A=!1){if(A){SZ();return}yDA()}var bZB="7";function mZB(A){let Q=A.protocol?`${A.protocol}:`:"",B=A.port?`:${A.port}`:"";return`${Q}//${A.host}${B}${A.path?`/${A.path}`:""}/api/`}function uZB(A){return`${mZB(A)}${A.projectId}/envelope/`}function dZB(A,Q){let B={sentry_version:bZB};if(A.publicKey)B.sentry_key=A.publicKey;if(Q)B.sentry_client=`${Q.name}/${Q.version}`;return new URLSearchParams(B).toString()}function gDA(A,Q,B){return Q?Q:`${uZB(A)}?${dZB(A,B)}`}var hDA=[];function cZB(A){let Q={};return A.forEach((B)=>{let{name:Y}=B,J=Q[Y];if(J&&!J.isDefaultInstance&&B.isDefaultInstance)return;Q[Y]=B}),Object.values(Q)}function au(A){let Q=A.defaultIntegrations||[],B=A.integrations;Q.forEach((J)=>{J.isDefaultInstance=!0});let Y;if(Array.isArray(B))Y=[...Q,...B];else if(typeof B==="function"){let J=B(Q);Y=Array.isArray(J)?J:[J]}else Y=Q;return cZB(Y)}function xDA(A,Q){let B={};return Q.forEach((Y)=>{if(Y)tu(A,Y,B)}),B}function ou(A,Q){for(let B of Q)if(B?.afterAllSetup)B.afterAllSetup(A)}function tu(A,Q,B){if(B[Q.name]){OA&&e.log(`Integration skipped because it was already installed: ${Q.name}`);return}if(B[Q.name]=Q,hDA.indexOf(Q.name)===-1&&typeof Q.setupOnce==="function")Q.setupOnce(),hDA.push(Q.name);if(Q.setup&&typeof Q.setup==="function")Q.setup(A);if(typeof Q.preprocessEvent==="function"){let Y=Q.preprocessEvent.bind(Q);A.on("preprocessEvent",(J,C)=>Y(J,C,A))}if(typeof Q.processEvent==="function"){let Y=Q.processEvent.bind(Q),J=Object.assign((C,X)=>Y(C,X,A),{id:Q.name});A.addEventProcessor(J)}OA&&e.log(`Integration installed: ${Q.name}`)}function eu(A){let Q=gA();if(!Q){OA&&e.warn(`Cannot add integration "${A.name}" because no SDK Client is available.`);return}Q.addIntegration(A)}function wA(A){return A}function $j(A){let Q=[];if(A.message)Q.push(A.message);try{let B=A.exception.values[A.exception.values.length-1];if(B?.value){if(Q.push(B.value),B.type)Q.push(`${B.type}: ${B.value}`)}}catch(B){}return Q}function fDA(A){let{trace_id:Q,parent_span_id:B,span_id:Y,status:J,origin:C,data:X,op:G}=A.contexts?.trace??{};return{data:X??{},description:A.transaction,op:G,parent_span_id:B,span_id:Y??"",start_timestamp:A.start_timestamp??0,status:J,timestamp:A.timestamp,trace_id:Q??"",origin:C,profile_id:X?.[RE],exclusive_time:X?.[wE],measurements:A.measurements,is_segment:!0}}function bDA(A){return{type:"transaction",timestamp:A.timestamp,start_timestamp:A.start_timestamp,transaction:A.description,contexts:{trace:{trace_id:A.trace_id,span_id:A.span_id,parent_span_id:A.parent_span_id,op:A.op,status:A.status,origin:A.origin,data:{...A.data,...A.profile_id&&{[RE]:A.profile_id},...A.exclusive_time&&{[wE]:A.exclusive_time}}}},measurements:A.measurements}}function mDA(A,Q,B){let Y=[{type:"client_report"},{timestamp:B||lG(),discarded_events:A}];return T8(Q?{dsn:Q}:{},[Y])}var uDA="Not capturing exception because it's already been captured.",dDA="Discarded session because of missing or non-string release",pDA=Symbol.for("SentryInternalError"),iDA=Symbol.for("SentryDoNotSendEventError");function Uj(A){return{message:A,[pDA]:!0}}function Ad(A){return{message:A,[iDA]:!0}}function cDA(A){return!!A&&typeof A==="object"&&pDA in A}function lDA(A){return!!A&&typeof A==="object"&&iDA in A}class Bd{constructor(A){if(this._options=A,this._integrations={},this._numProcessing=0,this._outcomes={},this._hooks={},this._eventProcessors=[],A.dsn)this._dsn=qDA(A.dsn);else OA&&e.warn("No DSN provided, client will not send events.");if(this._dsn){let Q=gDA(this._dsn,A.tunnel,A._metadata?A._metadata.sdk:void 0);this._transport=A.transport({tunnel:this._options.tunnel,recordDroppedEvent:this.recordDroppedEvent.bind(this),...A.transportOptions,url:Q})}}captureException(A,Q,B){let Y=FY();if(iw(A))return OA&&e.log(uDA),Y;let J={event_id:Y,...Q};return this._process(this.eventFromException(A,J).then((C)=>this._captureEvent(C,J,B))),J.event_id}captureMessage(A,Q,B,Y){let J={event_id:FY(),...B},C=LZ(A)?A:String(A),X=nD(A)?this.eventFromMessage(C,Q,J):this.eventFromException(A,J);return this._process(X.then((G)=>this._captureEvent(G,J,Y))),J.event_id}captureEvent(A,Q,B){let Y=FY();if(Q?.originalException&&iw(Q.originalException))return OA&&e.log(uDA),Y;let J={event_id:Y,...Q},C=A.sdkProcessingMetadata||{},X=C.capturedSpanScope,G=C.capturedSpanIsolationScope;return this._process(this._captureEvent(A,J,X||B,G)),J.event_id}captureSession(A){this.sendSession(A),pG(A,{init:!1})}getDsn(){return this._dsn}getOptions(){return this._options}getSdkMetadata(){return this._options._metadata}getTransport(){return this._transport}flush(A){let Q=this._transport;if(Q)return this.emit("flush"),this._isClientDoneProcessing(A).then((B)=>{return Q.flush(A).then((Y)=>B&&Y)});else return sC(!0)}close(A){return this.flush(A).then((Q)=>{return this.getOptions().enabled=!1,this.emit("close"),Q})}getEventProcessors(){return this._eventProcessors}addEventProcessor(A){this._eventProcessors.push(A)}init(){if(this._isEnabled()||this._options.integrations.some(({name:A})=>A.startsWith("Spotlight")))this._setupIntegrations()}getIntegrationByName(A){return this._integrations[A]}addIntegration(A){let Q=this._integrations[A.name];if(tu(this,A,this._integrations),!Q)ou(this,[A])}sendEvent(A,Q={}){this.emit("beforeSendEvent",A,Q);let B=RDA(A,this._dsn,this._options._metadata,this._options.tunnel);for(let J of Q.attachments||[])B=ju(B,Pu(J));let Y=this.sendEnvelope(B);if(Y)Y.then((J)=>this.emit("afterSendEvent",A,J),null)}sendSession(A){let{release:Q,environment:B=_E}=this._options;if("aggregates"in A){let J=A.attrs||{};if(!J.release&&!Q){OA&&e.warn(dDA);return}J.release=J.release||Q,J.environment=J.environment||B,A.attrs=J}else{if(!A.release&&!Q){OA&&e.warn(dDA);return}A.release=A.release||Q,A.environment=A.environment||B}this.emit("beforeSendSession",A);let Y=zDA(A,this._dsn,this._options._metadata,this._options.tunnel);this.sendEnvelope(Y)}recordDroppedEvent(A,Q,B=1){if(this._options.sendClientReports){let Y=`${A}:${Q}`;OA&&e.log(`Recording outcome: "${Y}"${B>1?` (${B} times)`:""}`),this._outcomes[Y]=(this._outcomes[Y]||0)+B}}on(A,Q){let B=this._hooks[A]=this._hooks[A]||[];return B.push(Q),()=>{let Y=B.indexOf(Q);if(Y>-1)B.splice(Y,1)}}emit(A,...Q){let B=this._hooks[A];if(B)B.forEach((Y)=>Y(...Q))}sendEnvelope(A){if(this.emit("beforeEnvelope",A),this._isEnabled()&&this._transport)return this._transport.send(A).then(null,(Q)=>{return OA&&e.error("Error while sending envelope:",Q),Q});return OA&&e.error("Transport disabled"),sC({})}_setupIntegrations(){let{integrations:A}=this._options;this._integrations=xDA(this,A),ou(this,A)}_updateSessionFromEvent(A,Q){let B=Q.level==="fatal",Y=!1,J=Q.exception?.values;if(J){Y=!0;for(let G of J)if(G.mechanism?.handled===!1){B=!0;break}}let C=A.status==="ok";if(C&&A.errors===0||C&&B)pG(A,{...B&&{status:"crashed"},errors:A.errors||Number(Y||B)}),this.captureSession(A)}_isClientDoneProcessing(A){return new nC((Q)=>{let B=0,Y=1,J=setInterval(()=>{if(this._numProcessing==0)clearInterval(J),Q(!0);else if(B+=Y,A&&B>=A)clearInterval(J),Q(!1)},Y)})}_isEnabled(){return this.getOptions().enabled!==!1&&this._transport!==void 0}_prepareEvent(A,Q,B,Y){let J=this.getOptions(),C=Object.keys(this._integrations);if(!Q.integrations&&C?.length)Q.integrations=C;if(this.emit("preprocessEvent",A,Q),!A.type)Y.setLastEventId(A.event_id||Q.event_id);return _DA(J,A,Q,B,this,Y).then((X)=>{if(X===null)return X;this.emit("postprocessEvent",X,Q),X.contexts={trace:zE(B),...X.contexts};let G=sG(this,B);return X.sdkProcessingMetadata={dynamicSamplingContext:G,...X.sdkProcessingMetadata},X})}_captureEvent(A,Q={},B=sQ(),Y=RQ()){if(OA&&Qd(A))e.log(`Captured error event \`${$j(A)[0]||""}\``);return this._processEvent(A,Q,B,Y).then((J)=>{return J.event_id},(J)=>{if(OA)if(lDA(J))e.log(J.message);else if(cDA(J))e.warn(J.message);else e.warn(J);return})}_processEvent(A,Q,B,Y){let J=this.getOptions(),{sampleRate:C}=J,X=nDA(A),G=Qd(A),F=A.type||"error",W=`before send for type \`${F}\``,Z=typeof C>"u"?void 0:P8(C);if(G&&typeof Z==="number"&&Math.random()>Z)return this.recordDroppedEvent("sample_rate","error"),Xj(Ad(`Discarding event because it's not included in the random sample (sampling rate = ${C})`));let U=F==="replay_event"?"replay":F;return this._prepareEvent(A,Q,B,Y).then(($)=>{if($===null)throw this.recordDroppedEvent("event_processor",U),Ad("An event processor returned `null`, will not send event.");if(Q.data&&Q.data.__sentry__===!0)return $;let K=pZB(this,J,$,Q);return lZB(K,W)}).then(($)=>{if($===null){if(this.recordDroppedEvent("before_send",U),X){let V=1+(A.spans||[]).length;this.recordDroppedEvent("before_send","span",V)}throw Ad(`${W} returned \`null\`, will not send event.`)}let E=B.getSession()||Y.getSession();if(G&&E)this._updateSessionFromEvent(E,$);if(X){let I=$.sdkProcessingMetadata?.spanCountBeforeProcessing||0,V=$.spans?$.spans.length:0,H=I-V;if(H>0)this.recordDroppedEvent("before_send","span",H)}let K=$.transaction_info;if(X&&K&&$.transaction!==A.transaction)$.transaction_info={...K,source:"custom"};return this.sendEvent($,Q),$}).then(null,($)=>{if(lDA($)||cDA($))throw $;throw this.captureException($,{data:{__sentry__:!0},originalException:$}),Uj(`Event processing pipeline threw an error, original event will not be sent. Details have been sent as a new event. -Reason: ${$}`)})}_process(A){this._numProcessing++,A.then((Q)=>{return this._numProcessing--,Q},(Q)=>{return this._numProcessing--,Q})}_clearOutcomes(){let A=this._outcomes;return this._outcomes={},Object.entries(A).map(([Q,B])=>{let[Y,J]=Q.split(":");return{reason:Y,category:J,quantity:B}})}_flushOutcomes(){OA&&e.log("Flushing outcomes...");let A=this._clearOutcomes();if(A.length===0){OA&&e.log("No outcomes to send");return}if(!this._dsn){OA&&e.log("No dsn provided, will not send outcomes");return}OA&&e.log("Sending outcomes:",A);let Q=mDA(A,this._options.tunnel&&iC(this._dsn));this.sendEnvelope(Q)}}function lZB(A,Q){let B=`${Q} must return \`null\` or a valid event.`;if(q5(A))return A.then((Y)=>{if(!L5(Y)&&Y!==null)throw Uj(B);return Y},(Y)=>{throw Uj(`${Q} rejected with ${Y}`)});else if(!L5(A)&&A!==null)throw Uj(B);return A}function pZB(A,Q,B,Y){let{beforeSend:J,beforeSendTransaction:C,beforeSendSpan:X}=Q,G=B;if(Qd(G)&&J)return J(G,Y);if(nDA(G)){if(X){let F=X(fDA(G));if(!F)AN();else G=i7(B,bDA(F));if(G.spans){let W=[];for(let Z of G.spans){let U=X(Z);if(!U)AN(),W.push(Z);else W.push(U)}G.spans=W}}if(C){if(G.spans){let F=G.spans.length;G.sdkProcessingMetadata={...B.sdkProcessingMetadata,spanCountBeforeProcessing:F}}return C(G,Y)}}return G}function Qd(A){return A.type===void 0}function nDA(A){return A.type==="transaction"}function Ej(A,Q){if(!Q)return[void 0,void 0];let B=dC(Q),Y=B?o7(B):zE(Q);return[B?c0(B):sG(A,Q),Y]}function sDA(A,Q,B,Y,J){let C={sent_at:new Date().toISOString()};if(B?.sdk)C.sdk={name:B.sdk.name,version:B.sdk.version};if(!!Y&&!!J)C.dsn=iC(J);if(Q)C.trace=Q;let X=iZB(A);return T8(C,[X])}function iZB(A){return[{type:"check_in"},A]}var rDA={trace:1,debug:5,info:9,warn:13,error:17,fatal:21};function nZB(A){return[{type:"log",item_count:A.length,content_type:"application/vnd.sentry.items.log+json"},{items:A}]}function aDA(A,Q,B,Y){let J={};if(Q?.sdk)J.sdk={name:Q.sdk.name,version:Q.sdk.version};if(!!B&&!!Y)J.dsn=iC(Y);return T8(J,[nZB(A)])}var sZB=100;AQ._sentryClientToLogBufferMap=new WeakMap;function rZB(A){switch(typeof A){case"number":if(Number.isInteger(A))return{value:A,type:"integer"};return{value:A,type:"double"};case"boolean":return{value:A,type:"boolean"};case"string":return{value:A,type:"string"};default:{let Q="";try{Q=JSON.stringify(A)??""}catch{}return{value:Q,type:"string"}}}}function kZ(A,Q=gA(),B=sQ()){if(!Q){OA&&e.warn("No client available to capture log.");return}let{_experiments:Y,release:J,environment:C}=Q.getOptions(),{enableLogs:X=!1,beforeSendLog:G}=Y??{};if(!X){OA&&e.warn("logging option not enabled, log will not be captured.");return}let[,F]=Ej(Q,B),W={...A.attributes};if(J)W["sentry.release"]=J;if(C)W["sentry.environment"]=C;let{sdk:Z}=Q.getSdkMetadata()??{};if(Z)W["sentry.sdk.name"]=Z.name,W["sentry.sdk.version"]=Z.version;let U=A.message;if(LZ(U)){let{__sentry_template_string__:M,__sentry_template_values__:N=[]}=U;W["sentry.message.template"]=M,N.forEach((q,w)=>{W[`sentry.message.parameter.${w}`]=q})}let $=dC(B);if($)W["sentry.trace.parent_span_id"]=$.spanContext().spanId;let E={...A,attributes:W};Q.emit("beforeCaptureLog",E);let K=G?G(E):E;if(!K){Q.recordDroppedEvent("before_send","log_item",1),OA&&e.warn("beforeSendLog returned null, log will not be captured.");return}let{level:I,message:V,attributes:H={},severityNumber:D}=K,L={timestamp:R8(),level:I,body:V,trace_id:F?.trace_id,severity_number:D??rDA[I],attributes:Object.keys(H).reduce((M,N)=>{return M[N]=rZB(H[N]),M},{})},z=oDA(Q);if(z===void 0)AQ._sentryClientToLogBufferMap?.set(Q,[L]);else if(AQ._sentryClientToLogBufferMap?.set(Q,[...z,L]),z.length>=sZB)e7(Q,z);Q.emit("afterCaptureLog",K)}function e7(A,Q){let B=Q??oDA(A)??[];if(B.length===0)return;let Y=A.getOptions(),J=aDA(B,Y._metadata,Y.tunnel,A.getDsn());AQ._sentryClientToLogBufferMap?.set(A,[]),A.emit("flushLogs"),A.sendEnvelope(J)}function oDA(A){return AQ._sentryClientToLogBufferMap?.get(A)}function tDA(A,Q){return A(Q.stack||"",1)}function Yd(A,Q){let B={type:Q.name||Q.constructor.name,value:Q.message},Y=tDA(A,Q);if(Y.length)B.stacktrace={frames:Y};return B}function aZB(A){for(let Q in A)if(Object.prototype.hasOwnProperty.call(A,Q)){let B=A[Q];if(B instanceof Error)return B}return}function oZB(A){if("name"in A&&typeof A.name==="string"){let Y=`'${A.name}' captured as exception`;if("message"in A&&typeof A.message==="string")Y+=` with message '${A.message}'`;return Y}else if("message"in A&&typeof A.message==="string")return A.message;let Q=Bu(A);if(bHA(A))return`Event \`ErrorEvent\` captured as exception with message \`${A.message}\``;let B=tZB(A);return`${B&&B!=="Object"?`'${B}'`:"Object"} captured as exception with keys: ${Q}`}function tZB(A){try{let Q=Object.getPrototypeOf(A);return Q?Q.constructor.name:void 0}catch(Q){}}function eZB(A,Q,B,Y){if(mC(B))return[B,void 0];if(Q.synthetic=!0,L5(B)){let C=A?.getOptions().normalizeDepth,X={["__serialized__"]:Ru(B,C)},G=aZB(B);if(G)return[G,X];let F=oZB(B),W=Y?.syntheticException||Error(F);return W.message=F,[W,X]}let J=Y?.syntheticException||Error(B);return J.message=`${B}`,[J,void 0]}function eDA(A,Q,B,Y){let C=Y?.data&&Y.data.mechanism||{handled:!0,type:"generic"},[X,G]=eZB(A,C,B,Y),F={exception:{values:[Yd(Q,X)]}};if(G)F.extra=G;return Ju(F,void 0,void 0),p7(F,C),{...F,event_id:Y?.event_id}}function ANA(A,Q,B="info",Y,J){let C={event_id:Y?.event_id,level:B};if(J&&Y?.syntheticException){let X=tDA(A,Y.syntheticException);if(X.length)C.exception={values:[{value:Q,stacktrace:{frames:X}}]},p7(C,{synthetic:!0})}if(LZ(Q)){let{__sentry_template_string__:X,__sentry_template_values__:G}=Q;return C.logentry={message:X,params:G},C}return C.message=Q,C}var A$B=5000;class Kj extends Bd{constructor(A){DDA();super(A);if(this._logWeight=0,this._options._experiments?.enableLogs){let Q=this;Q.on("flushLogs",()=>{Q._logWeight=0,clearTimeout(Q._logFlushIdleTimeout)}),Q.on("afterCaptureLog",(B)=>{if(Q._logWeight+=Q$B(B),Q._logWeight>=800000)e7(Q);else Q._logFlushIdleTimeout=setTimeout(()=>{e7(Q)},A$B)}),Q.on("flush",()=>{e7(Q)})}}eventFromException(A,Q){let B=eDA(this,this._options.stackParser,A,Q);return B.level="error",sC(B)}eventFromMessage(A,Q="info",B){return sC(ANA(this._options.stackParser,A,Q,B,this._options.attachStacktrace))}captureException(A,Q,B){return QNA(Q),super.captureException(A,Q,B)}captureEvent(A,Q,B){if(!A.type&&A.exception?.values&&A.exception.values.length>0)QNA(Q);return super.captureEvent(A,Q,B)}captureCheckIn(A,Q,B){let Y="checkInId"in A&&A.checkInId?A.checkInId:FY();if(!this._isEnabled())return OA&&e.warn("SDK not enabled, will not capture check-in."),Y;let J=this.getOptions(),{release:C,environment:X,tunnel:G}=J,F={check_in_id:Y,monitor_slug:A.monitorSlug,status:A.status,release:C,environment:X};if("duration"in A)F.duration=A.duration;if(Q)F.monitor_config={schedule:Q.schedule,checkin_margin:Q.checkinMargin,max_runtime:Q.maxRuntime,timezone:Q.timezone,failure_issue_threshold:Q.failureIssueThreshold,recovery_threshold:Q.recoveryThreshold};let[W,Z]=Ej(this,B);if(Z)F.contexts={trace:Z};let U=sDA(F,W,this.getSdkMetadata(),G,this.getDsn());return OA&&e.info("Sending checkin:",A.monitorSlug,A.status),this.sendEnvelope(U),Y}_prepareEvent(A,Q,B,Y){if(this._options.platform)A.platform=A.platform||this._options.platform;if(this._options.runtime)A.contexts={...A.contexts,runtime:A.contexts?.runtime||this._options.runtime};if(this._options.serverName)A.server_name=A.server_name||this._options.serverName;return super._prepareEvent(A,Q,B,Y)}}function QNA(A){let Q=RQ().getScopeData().sdkProcessingMetadata.requestSession;if(Q){let B=A?.mechanism?.handled??!0;if(B&&Q.status!=="crashed")Q.status="errored";else if(!B)Q.status="crashed"}}function Q$B(A){let Q=0;if(A.message)Q+=A.message.length*2;if(A.attributes)Object.values(A.attributes).forEach((B)=>{if(Array.isArray(B))Q+=B.length*BNA(B[0]);else if(nD(B))Q+=BNA(B);else Q+=100});return Q}function BNA(A){if(typeof A==="string")return A.length*2;else if(typeof A==="number")return 8;else if(typeof A==="boolean")return 4;return 0}function Jd(A){sQ().setClient(A)}var Cd=Symbol.for("SentryBufferFullError");function YNA(A){let Q=[];function B(){return A===void 0||Q.lengthY(G)).then(null,()=>Y(G).then(null,()=>{})),G}function C(X){return new nC((G,F)=>{let W=Q.length;if(!W)return G(!0);let Z=setTimeout(()=>{if(X&&X>0)G(!1)},X);Q.forEach((U)=>{sC(U).then(()=>{if(!--W)clearTimeout(Z),G(!0)},F)})})}return{$:Q,add:J,drain:C}}function B$B(A,Q=Date.now()){let B=parseInt(`${A}`,10);if(!isNaN(B))return B*1000;let Y=Date.parse(`${A}`);if(!isNaN(Y))return Y-Q;return 60000}function Y$B(A,Q){return A[Q]||A.all||0}function JNA(A,Q,B=Date.now()){return Y$B(A,Q)>B}function CNA(A,{statusCode:Q,headers:B},Y=Date.now()){let J={...A},C=B?.["x-sentry-rate-limits"],X=B?.["retry-after"];if(C)for(let G of C.trim().split(",")){let[F,W,,,Z]=G.split(":",5),U=parseInt(F,10),$=(!isNaN(U)?U:60)*1000;if(!W)J.all=Y+$;else for(let E of W.split(";"))if(E==="metric_bucket"){if(!Z||Z.split(";").includes("custom"))J[E]=Y+$}else J[E]=Y+$}else if(X)J.all=Y+B$B(X,Y);else if(Q===429)J.all=Y+60000;return J}var J$B=64;function gE(A,Q,B=YNA(A.bufferSize||J$B)){let Y={},J=(X)=>B.drain(X);function C(X){let G=[];if(Yj(X,(U,$)=>{let E=Jj($);if(JNA(Y,E))A.recordDroppedEvent("ratelimit_backoff",E);else G.push(U)}),G.length===0)return sC({});let F=T8(X[0],G),W=(U)=>{Yj(F,($,E)=>{A.recordDroppedEvent(U,Jj(E))})},Z=()=>Q({body:CN(F)}).then((U)=>{if(U.statusCode!==void 0&&(U.statusCode<200||U.statusCode>=300))OA&&e.warn(`Sentry responded with status code ${U.statusCode} to sent event.`);return Y=CNA(Y,U),U},(U)=>{throw W("network_error"),OA&&e.error("Encountered error running transport request:",U),U});return B.add(Z).then((U)=>U,(U)=>{if(U===Cd)return OA&&e.error("Skipped sending event because buffer is full."),W("queue_overflow"),sC({});else throw U})}return{send:C,flush:J}}function Vj(A,...Q){let B=new String(String.raw(A,...Q));return B.__sentry_template_string__=A.join("\x00").replace(/%/g,"%%").replace(/\0/g,"%s"),B.__sentry_template_values__=Q,B}var Xd=Vj;function Gd(A,Q,B=[Q],Y="npm"){let J=A._metadata||{};if(!J.sdk)J.sdk={name:`sentry.javascript.${Q}`,packages:B.map((C)=>({name:`${Y}:@sentry/${C}`,version:u0})),version:u0};A._metadata=J}function aG(A={}){let Q=gA();if(!EN()||!Q)return{};let B=zJ(),Y=z5(B);if(Y.getTraceData)return Y.getTraceData(A);let J=sQ(),C=A.span||pC(),X=C?tD(C):C$B(J),G=C?c0(C):sG(Q,J),F=r7(G);if(!aD.test(X))return e.warn("Invalid sentry-trace data. Cannot generate trace data"),{};return{"sentry-trace":X,baggage:F}}function C$B(A){let{traceId:Q,sampled:B,propagationSpanId:Y}=A.getPropagationContext();return a7(Q,Y,B)}function Fd(){return Object.entries(aG()).map(([A,Q])=>``).join(` -`)}function XNA(A){let Q=Object.create(null);try{Object.entries(A).forEach(([B,Y])=>{if(typeof Y==="string")Q[B]=Y})}catch{}return Q}function hE(A){let Q=A.headers||{},B=typeof Q.host==="string"?Q.host:void 0,Y=A.protocol||(A.socket?.encrypted?"https":"http"),J=A.url||"",C=X$B({url:J,host:B,protocol:Y}),X=A.body||void 0,G=A.cookies;return{url:C,method:A.method,query_string:GNA(J),headers:XNA(Q),cookies:G,data:X}}function X$B({url:A,protocol:Q,host:B}){if(A?.startsWith("http"))return A;if(A&&B)return`${Q}://${B}${A}`;return}function GNA(A){if(!A)return;try{let Q=new URL(A,"http://s.io").search.slice(1);return Q.length?Q:void 0}catch{return}}var G$B=100;function X9(A,Q){let B=gA(),Y=RQ();if(!B)return;let{beforeBreadcrumb:J=null,maxBreadcrumbs:C=G$B}=B.getOptions();if(C<=0)return;let G={timestamp:lG(),...A},F=J?y0(()=>J(G,Q)):G;if(F===null)return;if(B.emit)B.emit("beforeAddBreadcrumb",F,Q);Y.addBreadcrumb(F,C)}var FNA,F$B="FunctionToString",WNA=new WeakMap,W$B=()=>{return{name:F$B,setupOnce(){FNA=Function.prototype.toString;try{Function.prototype.toString=function(...A){let Q=Qu(this),B=WNA.has(gA())&&Q!==void 0?Q:this;return FNA.apply(B,A)}}catch{}},setup(A){WNA.set(A,!0)}}},VN=wA(W$B);var Z$B=[/^Script error\.?$/,/^Javascript error: Script error\.? on line 0$/,/^ResizeObserver loop completed with undelivered notifications.$/,/^Cannot redefine property: googletag$/,/^Can't find variable: gmo$/,/^undefined is not an object \(evaluating 'a\.[A-Z]'\)$/,`can't redefine non-configurable property "solana"`,"vv().getRestrictions is not a function. (In 'vv().getRestrictions(1,a)', 'vv().getRestrictions' is undefined)","Can't find variable: _AutofillCallbackHandler",/^Non-Error promise rejection captured with value: Object Not Found Matching Id:\d+, MethodName:simulateEvent, ParamCount:\d+$/,/^Java exception was raised during method invocation$/],$$B="EventFilters",Hj=wA((A={})=>{let Q;return{name:$$B,setup(B){let Y=B.getOptions();Q=ZNA(A,Y)},processEvent(B,Y,J){if(!Q){let C=J.getOptions();Q=ZNA(A,C)}return U$B(B,Q)?null:B}}}),IN=wA((A={})=>{return{...Hj(A),name:"InboundFilters"}});function ZNA(A={},Q={}){return{allowUrls:[...A.allowUrls||[],...Q.allowUrls||[]],denyUrls:[...A.denyUrls||[],...Q.denyUrls||[]],ignoreErrors:[...A.ignoreErrors||[],...Q.ignoreErrors||[],...A.disableErrorDefaults?[]:Z$B],ignoreTransactions:[...A.ignoreTransactions||[],...Q.ignoreTransactions||[]]}}function U$B(A,Q){if(!A.type){if(E$B(A,Q.ignoreErrors))return OA&&e.warn(`Event dropped due to being matched by \`ignoreErrors\` option. -Event: ${l7(A)}`),!0;if(D$B(A))return OA&&e.warn(`Event dropped due to not having an error message, error type or stacktrace. -Event: ${l7(A)}`),!0;if(V$B(A,Q.denyUrls))return OA&&e.warn(`Event dropped due to being matched by \`denyUrls\` option. -Event: ${l7(A)}. -Url: ${Ij(A)}`),!0;if(!I$B(A,Q.allowUrls))return OA&&e.warn(`Event dropped due to not being matched by \`allowUrls\` option. -Event: ${l7(A)}. -Url: ${Ij(A)}`),!0}else if(A.type==="transaction"){if(K$B(A,Q.ignoreTransactions))return OA&&e.warn(`Event dropped due to being matched by \`ignoreTransactions\` option. -Event: ${l7(A)}`),!0}return!1}function E$B(A,Q){if(!Q?.length)return!1;return $j(A).some((B)=>c7(B,Q))}function K$B(A,Q){if(!Q?.length)return!1;let B=A.transaction;return B?c7(B,Q):!1}function V$B(A,Q){if(!Q?.length)return!1;let B=Ij(A);return!B?!1:c7(B,Q)}function I$B(A,Q){if(!Q?.length)return!0;let B=Ij(A);return!B?!0:c7(B,Q)}function H$B(A=[]){for(let Q=A.length-1;Q>=0;Q--){let B=A[Q];if(B&&B.filename!==""&&B.filename!=="[native code]")return B.filename||null}return null}function Ij(A){try{let B=[...A.exception?.values??[]].reverse().find((Y)=>Y.mechanism?.parent_id===void 0&&Y.stacktrace?.frames?.length)?.stacktrace?.frames;return B?H$B(B):null}catch(Q){return OA&&e.error(`Cannot extract url for event ${l7(A)}`),null}}function D$B(A){if(!A.exception?.values?.length)return!1;return!A.message&&!A.exception.values.some((Q)=>Q.stacktrace||Q.type&&Q.type!=="Error"||Q.value)}function ENA(A,Q,B,Y,J,C){if(!J.exception?.values||!C||!cG(C.originalException,Error))return;let X=J.exception.values.length>0?J.exception.values[J.exception.values.length-1]:void 0;if(X)J.exception.values=Wd(A,Q,Y,C.originalException,B,J.exception.values,X,0)}function Wd(A,Q,B,Y,J,C,X,G){if(C.length>=B+1)return C;let F=[...C];if(cG(Y[J],Error)){$NA(X,G);let W=A(Q,Y[J]),Z=F.length;UNA(W,J,Z,G),F=Wd(A,Q,B,Y[J],J,[W,...F],W,Z)}if(Array.isArray(Y.errors))Y.errors.forEach((W,Z)=>{if(cG(W,Error)){$NA(X,G);let U=A(Q,W),$=F.length;UNA(U,`errors[${Z}]`,$,G),F=Wd(A,Q,B,W,J,[U,...F],U,$)}});return F}function $NA(A,Q){A.mechanism=A.mechanism||{type:"generic",handled:!0},A.mechanism={...A.mechanism,...A.type==="AggregateError"&&{is_exception_group:!0},exception_id:Q}}function UNA(A,Q,B,Y){A.mechanism=A.mechanism||{type:"generic",handled:!0},A.mechanism={...A.mechanism,type:"chained",source:Q,exception_id:B,parent_id:Y}}var N$B="cause",L$B=5,q$B="LinkedErrors",M$B=(A={})=>{let Q=A.limit||L$B,B=A.key||N$B;return{name:q$B,preprocessEvent(Y,J,C){let X=C.getOptions();ENA(Yd,X.stackParser,B,Q,Y,J)}}},HN=wA(M$B);function KNA(A){let Q={},B=0;while(B{let C=A[J],X=Array.isArray(C)?C.join(";"):C;if(J==="Forwarded")return z$B(X);return X?.split(",").map((G)=>G.trim())}).reduce((J,C)=>{if(!C)return J;return J.concat(C)},[]).find((J)=>J!==null&&R$B(J))||null}function z$B(A){if(!A)return null;for(let Q of A.split(";"))if(Q.startsWith("for="))return Q.slice(4);return null}function R$B(A){return/(?:^(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}$)|(?:^(?:(?:[a-fA-F\d]{1,4}:){7}(?:[a-fA-F\d]{1,4}|:)|(?:[a-fA-F\d]{1,4}:){6}(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|:[a-fA-F\d]{1,4}|:)|(?:[a-fA-F\d]{1,4}:){5}(?::(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,2}|:)|(?:[a-fA-F\d]{1,4}:){4}(?:(?::[a-fA-F\d]{1,4}){0,1}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,3}|:)|(?:[a-fA-F\d]{1,4}:){3}(?:(?::[a-fA-F\d]{1,4}){0,2}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,4}|:)|(?:[a-fA-F\d]{1,4}:){2}(?:(?::[a-fA-F\d]{1,4}){0,3}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,5}|:)|(?:[a-fA-F\d]{1,4}:){1}(?:(?::[a-fA-F\d]{1,4}){0,4}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,6}|:)|(?::(?:(?::[a-fA-F\d]{1,4}){0,5}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,7}|:)))(?:%[0-9a-zA-Z]{1,})?$)/.test(A)}var w$B={cookies:!0,data:!0,headers:!0,query_string:!0,url:!0},j$B="RequestData",O$B=(A={})=>{let Q={...w$B,...A.include};return{name:j$B,processEvent(B,Y,J){let{sdkProcessingMetadata:C={}}=B,{normalizedRequest:X,ipAddress:G}=C,F={...Q,ip:Q.ip??J.getOptions().sendDefaultPii};if(X)P$B(B,X,{ipAddress:G},F);return B}}},DN=wA(O$B);function P$B(A,Q,B,Y){if(A.request={...A.request,...T$B(Q,Y)},Y.ip){let J=Q.headers&&VNA(Q.headers)||B.ipAddress;if(J)A.user={...A.user,ip_address:J}}}function T$B(A,Q){let B={},Y={...A.headers};if(Q.headers){if(B.headers=Y,!Q.cookies)delete Y.cookie;if(!Q.ip)Zd.forEach((J)=>{delete Y[J]})}if(B.method=A.method,Q.url)B.url=A.url;if(Q.cookies){let J=A.cookies||(Y?.cookie?KNA(Y.cookie):void 0);B.cookies=J||{}}if(Q.query_string)B.query_string=A.query_string;if(Q.data)B.data=A.data;return B}function xE(A){TE("console",A),SE("console",S$B)}function S$B(){if(!("console"in AQ))return;uC.forEach(function(A){if(!(A in AQ.console))return;Au(AQ.console,A,function(Q){return LE[A]=Q,function(...B){kE("console",{args:B,level:A}),LE[A]?.apply(AQ.console,B)}})})}function Dj(A){return A==="warn"?"warning":["fatal","error","warning","log","info","debug"].includes(A)?A:"log"}var k$B="CaptureConsole",_$B=(A={})=>{let Q=A.levels||uC,B=A.handled??!0;return{name:k$B,setup(Y){if(!("console"in AQ))return;xE(({args:J,level:C})=>{if(gA()!==Y||!Q.includes(C))return;v$B(J,C,B)})}}},$d=wA(_$B);function v$B(A,Q,B){let Y={level:Dj(Q),extra:{arguments:A}};O8((J)=>{if(J.addEventProcessor((G)=>{return G.logger="console",p7(G,{handled:B,type:"console"}),G}),Q==="assert"){if(!A[0]){let G=`Assertion failed: ${d7(A.slice(1)," ")||"console.assert"}`;J.setExtra("arguments",A.slice(1)),vE(G,Y)}return}let C=A.find((G)=>G instanceof Error);if(C){jB(C,Y);return}let X=d7(A," ");vE(X,Y)})}var y$B="Dedupe",g$B=()=>{let A;return{name:y$B,processEvent(Q){if(Q.type)return Q;try{if(h$B(Q,A))return OA&&e.warn("Event dropped due to being a duplicate of previously captured event."),null}catch(B){}return A=Q}}},Ud=wA(g$B);function h$B(A,Q){if(!Q)return!1;if(x$B(A,Q))return!0;if(f$B(A,Q))return!0;return!1}function x$B(A,Q){let B=A.message,Y=Q.message;if(!B&&!Y)return!1;if(B&&!Y||!B&&Y)return!1;if(B!==Y)return!1;if(!DNA(A,Q))return!1;if(!HNA(A,Q))return!1;return!0}function f$B(A,Q){let B=INA(Q),Y=INA(A);if(!B||!Y)return!1;if(B.type!==Y.type||B.value!==Y.value)return!1;if(!DNA(A,Q))return!1;if(!HNA(A,Q))return!1;return!0}function HNA(A,Q){let B=Aj(A),Y=Aj(Q);if(!B&&!Y)return!0;if(B&&!Y||!B&&Y)return!1;if(B=B,Y=Y,Y.length!==B.length)return!1;for(let J=0;J{let{depth:Q=3,captureErrorCause:B=!0}=A;return{name:b$B,processEvent(Y,J,C){let{maxValueLength:X=250}=C.getOptions();return u$B(Y,J,Q,B,X)}}},Ed=wA(m$B);function u$B(A,Q={},B,Y,J){if(!Q.originalException||!mC(Q.originalException))return A;let C=Q.originalException.name||Q.originalException.constructor.name,X=d$B(Q.originalException,Y,J);if(X){let G={...A.contexts},F=RJ(X,B);if(L5(F))d0(F,"__sentry_skip_normalization__",!0),G[C]=F;return{...A,contexts:G}}return A}function d$B(A,Q,B){try{let Y=["name","message","stack","line","column","fileName","lineNumber","columnNumber","toJSON"],J={};for(let C of Object.keys(A)){if(Y.indexOf(C)!==-1)continue;let X=A[C];J[C]=mC(X)||typeof X==="string"?b9(`${X}`,B):X}if(Q&&A.cause!==void 0)J.cause=mC(A.cause)?A.cause.toString():A.cause;if(typeof A.toJSON==="function"){let C=A.toJSON();for(let X of Object.keys(C)){let G=C[X];J[X]=mC(G)?G.toString():G}}return J}catch(Y){OA&&e.error("Unable to extract extra data from the Error object:",Y)}return null}function c$B(A,Q){let B=0;for(let Y=A.length-1;Y>=0;Y--){let J=A[Y];if(J===".")A.splice(Y,1);else if(J==="..")A.splice(Y,1),B++;else if(B)A.splice(Y,1),B--}if(Q)for(;B--;B)A.unshift("..");return A}var l$B=/^(\S+:\\|\/?)([\s\S]*?)((?:\.{1,2}|[^/\\]+?|)(\.[^./\\]*|))(?:[/\\]*)$/;function LNA(A){let Q=A.length>1024?`${A.slice(-1024)}`:A,B=l$B.exec(Q);return B?B.slice(1):[]}function Kd(...A){let Q="",B=!1;for(let Y=A.length-1;Y>=-1&&!B;Y--){let J=Y>=0?A[Y]:"/";if(!J)continue;Q=`${J}/${Q}`,B=J.charAt(0)==="/"}return Q=c$B(Q.split("/").filter((Y)=>!!Y),!B).join("/"),(B?"/":"")+Q||"."}function NNA(A){let Q=0;for(;Q=0;B--)if(A[B]!=="")break;if(Q>B)return[];return A.slice(Q,B-Q+1)}function Vd(A,Q){A=Kd(A).slice(1),Q=Kd(Q).slice(1);let B=NNA(A.split("/")),Y=NNA(Q.split("/")),J=Math.min(B.length,Y.length),C=J;for(let G=0;G{let Q=A.root,B=A.prefix||"app:///",Y="window"in AQ&&!!AQ.window,J=A.iteratee||i$B({isBrowser:Y,root:Q,prefix:B});function C(G){try{return{...G,exception:{...G.exception,values:G.exception.values.map((F)=>({...F,...F.stacktrace&&{stacktrace:X(F.stacktrace)}}))}}}catch(F){return G}}function X(G){return{...G,frames:G?.frames&&G.frames.map((F)=>J(F))}}return{name:p$B,processEvent(G){let F=G;if(G.exception&&Array.isArray(G.exception.values))F=C(F);return F}}});function i$B({isBrowser:A,root:Q,prefix:B}){return(Y)=>{if(!Y.filename)return Y;let J=/^[a-zA-Z]:\\/.test(Y.filename)||Y.filename.includes("\\")&&!Y.filename.includes("/"),C=/^\//.test(Y.filename);if(A){if(Q){let X=Y.filename;if(X.indexOf(Q)===0)Y.filename=X.replace(Q,B)}}else if(J||C){let X=J?Y.filename.replace(/^[a-zA-Z]:/,"").replace(/\\/g,"/"):Y.filename,G=Q?Vd(Q,X):Hd(X);Y.filename=`${B}${G}`}return Y}}var n$B=["reauthenticate","signInAnonymously","signInWithOAuth","signInWithIdToken","signInWithOtp","signInWithPassword","signInWithSSO","signOut","signUp","verifyOtp"],s$B=["createUser","deleteUser","listUsers","getUserById","updateUserById","inviteUserByEmail"],r$B={eq:"eq",neq:"neq",gt:"gt",gte:"gte",lt:"lt",lte:"lte",like:"like","like(all)":"likeAllOf","like(any)":"likeAnyOf",ilike:"ilike","ilike(all)":"ilikeAllOf","ilike(any)":"ilikeAnyOf",is:"is",in:"in",cs:"contains",cd:"containedBy",sr:"rangeGt",nxl:"rangeGte",sl:"rangeLt",nxr:"rangeLte",adj:"rangeAdjacent",ov:"overlaps",fts:"",plfts:"plain",phfts:"phrase",wfts:"websearch",not:"not"},MNA=["select","insert","upsert","update","delete"];function Nj(A){try{A.__SENTRY_INSTRUMENTED__=!0}catch{}}function Lj(A){try{return A.__SENTRY_INSTRUMENTED__}catch{return!1}}function a$B(A,Q={}){switch(A){case"GET":return"select";case"POST":if(Q.Prefer?.includes("resolution="))return"upsert";else return"insert";case"PATCH":return"update";case"DELETE":return"delete";default:return""}}function o$B(A,Q){if(Q===""||Q==="*")return"select(*)";if(A==="select")return`select(${Q})`;if(A==="or"||A.endsWith(".or"))return`${A}${Q}`;let[B,...Y]=Q.split("."),J;if(B?.startsWith("fts"))J="textSearch";else if(B?.startsWith("plfts"))J="textSearch[plain]";else if(B?.startsWith("phfts"))J="textSearch[phrase]";else if(B?.startsWith("wfts"))J="textSearch[websearch]";else J=B&&r$B[B]||"filter";return`${J}(${A}, ${Y.join(".")})`}function qNA(A,Q=!1){return new Proxy(A,{apply(B,Y,J){return w5({name:A.name,attributes:{[DQ]:"auto.db.supabase",[BQ]:`db.auth.${Q?"admin.":""}${A.name}`}},(C)=>{return Reflect.apply(B,Y,J).then((X)=>{if(X&&typeof X==="object"&&"error"in X&&X.error)C.setStatus({code:m9}),jB(X.error,{mechanism:{handled:!1}});else C.setStatus({code:n7});return C.end(),X}).catch((X)=>{throw C.setStatus({code:m9}),C.end(),jB(X,{mechanism:{handled:!1}}),X}).then(...J)})}})}function t$B(A){let Q=A.auth;if(!Q||Lj(A.auth))return;for(let B of n$B){let Y=Q[B];if(!Y)continue;if(typeof A.auth[B]==="function")A.auth[B]=qNA(Y)}for(let B of s$B){let Y=Q.admin[B];if(!Y)continue;if(typeof A.auth.admin[B]==="function")A.auth.admin[B]=qNA(Y,!0)}Nj(A.auth)}function e$B(A){if(Lj(A.prototype.from))return;A.prototype.from=new Proxy(A.prototype.from,{apply(Q,B,Y){let J=Reflect.apply(Q,B,Y),C=J.constructor;return Q4B(C),J}}),Nj(A.prototype.from)}function A4B(A){if(Lj(A.prototype.then))return;A.prototype.then=new Proxy(A.prototype.then,{apply(Q,B,Y){let J=MNA,C=B,X=a$B(C.method,C.headers);if(!J.includes(X))return Reflect.apply(Q,B,Y);if(!C?.url?.pathname||typeof C.url.pathname!=="string")return Reflect.apply(Q,B,Y);let G=C.url.pathname.split("/"),F=G.length>0?G[G.length-1]:"",W=`from(${F})`,Z=[];for(let[E,K]of C.url.searchParams.entries())Z.push(o$B(E,K));let U=Object.create(null);if(L5(C.body))for(let[E,K]of Object.entries(C.body))U[E]=K;let $={"db.table":F,"db.schema":C.schema,"db.url":C.url.origin,"db.sdk":C.headers["X-Client-Info"],"db.system":"postgresql",[DQ]:"auto.db.supabase",[BQ]:`db.${X}`};if(Z.length)$["db.query"]=Z;if(Object.keys(U).length)$["db.body"]=U;return w5({name:W,attributes:$},(E)=>{return Reflect.apply(Q,B,[]).then((K)=>{if(E){if(K&&typeof K==="object"&&"status"in K)OE(E,K.status||500);E.end()}if(K.error){let H=Error(K.error.message);if(K.error.code)H.code=K.error.code;if(K.error.details)H.details=K.error.details;let D={};if(Z.length)D.query=Z;if(Object.keys(U).length)D.body=U;jB(H,{contexts:{supabase:D}})}let I={type:"supabase",category:`db.${X}`,message:W},V={};if(Z.length)V.query=Z;if(Object.keys(U).length)V.body=U;if(Object.keys(V).length)I.data=V;return X9(I),K},(K)=>{if(E)OE(E,500),E.end();throw K}).then(...Y)})}}),Nj(A.prototype.then)}function Q4B(A){for(let Q of MNA){if(Lj(A.prototype[Q]))continue;A.prototype[Q]=new Proxy(A.prototype[Q],{apply(B,Y,J){let C=Reflect.apply(B,Y,J),X=C.constructor;return OA&&e.log(`Instrumenting ${Q} operation's PostgRESTFilterBuilder`),A4B(X),C}}),Nj(A.prototype[Q])}}var qj=(A)=>{if(!A){OA&&e.warn("Supabase integration was not installed because no Supabase client was provided.");return}let Q=A.constructor===Function?A:A.constructor;e$B(Q),t$B(A)},B4B="Supabase",Y4B=(A)=>{return{setupOnce(){qj(A)},name:B4B}},Nd=wA((A)=>{return Y4B(A.supabaseClient)});var J4B=10,C4B="ZodErrors";function X4B(A){return mC(A)&&A.name==="ZodError"&&Array.isArray(A.issues)}function G4B(A){return{...A,path:"path"in A&&Array.isArray(A.path)?A.path.join("."):void 0,keys:"keys"in A?JSON.stringify(A.keys):void 0,unionErrors:"unionErrors"in A?JSON.stringify(A.unionErrors):void 0}}function F4B(A){return A.map((Q)=>{if(typeof Q==="number")return"";else return Q}).join(".")}function W4B(A){let Q=new Set;for(let Y of A.issues){let J=F4B(Y.path);if(J.length>0)Q.add(J)}let B=Array.from(Q);if(B.length===0){let Y="variable";if(A.issues.length>0){let J=A.issues[0];if(J!==void 0&&"expected"in J&&typeof J.expected==="string")Y=J.expected}return`Failed to validate ${Y}`}return`Failed to validate keys: ${b9(B.join(", "),100)}`}function Z4B(A,Q=!1,B,Y){if(!B.exception?.values||!Y.originalException||!X4B(Y.originalException)||Y.originalException.issues.length===0)return B;try{let C=(Q?Y.originalException.issues:Y.originalException.issues.slice(0,A)).map(G4B);if(Q){if(!Array.isArray(Y.attachments))Y.attachments=[];Y.attachments.push({filename:"zod_issues.json",data:JSON.stringify({issues:C})})}return{...B,exception:{...B.exception,values:[{...B.exception.values[0],value:W4B(Y.originalException)},...B.exception.values.slice(1)]},extra:{...B.extra,"zoderror.issues":C.slice(0,A)}}}catch(J){return{...B,extra:{...B.extra,"zoderrors sentry integration parse error":{message:"an exception was thrown while processing ZodError within applyZodErrorsToEvent()",error:J instanceof Error?`${J.name}: ${J.message} -${J.stack}`:"unknown"}}}}}var $4B=(A={})=>{let Q=A.limit??J4B;return{name:C4B,processEvent(B,Y){return Z4B(Q,A.saveZodIssuesAsAttachment,B,Y)}}},Ld=wA($4B);var U4B="Console",NN=wA((A={})=>{let Q=new Set(A.levels||uC);return{name:U4B,setup(B){xE(({args:Y,level:J})=>{if(gA()!==B||!Q.has(J))return;E4B(J,Y)})}}});function E4B(A,Q){let B={category:"console",data:{arguments:Q,logger:"console"},level:Dj(A),message:zNA(Q)};if(A==="assert")if(Q[0]===!1){let Y=Q.slice(1);B.message=Y.length>0?`Assertion failed: ${zNA(Y)}`:"Assertion failed",B.data.arguments=Y}else return;X9(B,{input:Q,level:A})}function zNA(A){return"util"in AQ&&typeof AQ.util.format==="function"?AQ.util.format(...A):d7(A," ")}function RNA(A){return!!A&&typeof A._profiler<"u"&&typeof A._profiler.start==="function"&&typeof A._profiler.stop==="function"}function K4B(){let A=gA();if(!A){OA&&e.warn("No Sentry client available, profiling is not started");return}let Q=A.getIntegrationByName("ProfilingIntegration");if(!Q){OA&&e.warn("ProfilingIntegration is not available");return}if(!RNA(Q)){OA&&e.warn("Profiler is not available on profiling integration.");return}Q._profiler.start()}function V4B(){let A=gA();if(!A){OA&&e.warn("No Sentry client available, profiling is not started");return}let Q=A.getIntegrationByName("ProfilingIntegration");if(!Q){OA&&e.warn("ProfilingIntegration is not available");return}if(!RNA(Q)){OA&&e.warn("Profiler is not available on profiling integration.");return}Q._profiler.stop()}var qd={startProfiler:K4B,stopProfiler:V4B};function AF(A){if(!A)return{};let Q=A.match(/^(([^:/?#]+):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?$/);if(!Q)return{};let B=Q[6]||"",Y=Q[8]||"";return{host:Q[4],path:Q[5],protocol:Q[2],search:B,hash:Y,relative:Q[5]+B+Y}}function fE(A){return A.split(/[?#]/,1)[0]}function QF(A){let{protocol:Q,host:B,path:Y}=A,J=B?.replace(/^.*@/,"[filtered]:[filtered]@").replace(/(:80)$/,"").replace(/(:443)$/,"")||"";return`${Q?`${Q}://`:""}${J}${Y}`}var wNA={mechanism:{handled:!1,data:{function:"trpcMiddleware"}}};function I4B(A){if(typeof A==="object"&&A!==null&&"ok"in A&&!A.ok&&"error"in A)jB(A.error,wNA)}function Md(A={}){return async function(Q){let{path:B,type:Y,next:J,rawInput:C,getRawInput:X}=Q,F=gA()?.getOptions(),W={procedure_path:B,procedure_type:Y};if(d0(W,"__sentry_override_normalization_depth__",1+(F?.normalizeDepth??5)),A.attachRpcInput!==void 0?A.attachRpcInput:F?.sendDefaultPii){if(C!==void 0)W.input=RJ(C);if(X!==void 0&&typeof X==="function")try{let Z=await X();W.input=RJ(Z)}catch(Z){}}return nG((Z)=>{return Z.setContext("trpc",W),GN({name:`trpc/${B}`,op:"rpc.server",attributes:{[A0]:"route",[DQ]:"auto.rpc.trpc"},forceTransaction:!!A.forceTransaction},async(U)=>{try{let $=await J();return I4B($),U.end(),$}catch($){throw jB($,wNA),U.end(),$}})})}}var jNA=new WeakSet;function wd(A){if(jNA.has(A))return A;if(!H4B(A))return OA&&e.warn("Did not patch MCP server. Interface is incompatible."),A;return A.connect=new Proxy(A.connect,{apply(Q,B,Y){let[J,...C]=Y;if(!J.onclose)J.onclose=()=>{if(J.sessionId)PNA(J.sessionId)};if(!J.onmessage)J.onmessage=(G)=>{if(J.sessionId&&ONA(G))TNA(J.sessionId,G.id)};let X=new Proxy(J,{set(G,F,W){if(F==="onmessage")G[F]=new Proxy(W,{apply(Z,U,$){let[E]=$;if(J.sessionId&&ONA(E))TNA(J.sessionId,E.id);return Reflect.apply(Z,U,$)}});else if(F==="onclose")G[F]=new Proxy(W,{apply(Z,U,$){if(J.sessionId)PNA(J.sessionId);return Reflect.apply(Z,U,$)}});else G[F]=W;return!0}});return Reflect.apply(Q,B,[X,...C])}}),A.resource=new Proxy(A.resource,{apply(Q,B,Y){let J=Y[0],C=Y[Y.length-1];if(typeof J!=="string"||typeof C!=="function")return Q.apply(B,Y);let X=new Proxy(C,{apply(G,F,W){let Z=W.find(zd);return Rd(Z,()=>{return w5({name:`mcp-server/resource:${J}`,forceTransaction:!0,attributes:{[BQ]:"auto.function.mcp-server",[DQ]:"auto.function.mcp-server",[A0]:"route","mcp_server.resource":J}},()=>G.apply(F,W))})}});return Reflect.apply(Q,B,[...Y.slice(0,-1),X])}}),A.tool=new Proxy(A.tool,{apply(Q,B,Y){let J=Y[0],C=Y[Y.length-1];if(typeof J!=="string"||typeof C!=="function")return Q.apply(B,Y);let X=new Proxy(C,{apply(G,F,W){let Z=W.find(zd);return Rd(Z,()=>{return w5({name:`mcp-server/tool:${J}`,forceTransaction:!0,attributes:{[BQ]:"auto.function.mcp-server",[DQ]:"auto.function.mcp-server",[A0]:"route","mcp_server.tool":J}},()=>G.apply(F,W))})}});return Reflect.apply(Q,B,[...Y.slice(0,-1),X])}}),A.prompt=new Proxy(A.prompt,{apply(Q,B,Y){let J=Y[0],C=Y[Y.length-1];if(typeof J!=="string"||typeof C!=="function")return Q.apply(B,Y);let X=new Proxy(C,{apply(G,F,W){let Z=W.find(zd);return Rd(Z,()=>{return w5({name:`mcp-server/prompt:${J}`,forceTransaction:!0,attributes:{[BQ]:"auto.function.mcp-server",[DQ]:"auto.function.mcp-server",[A0]:"route","mcp_server.prompt":J}},()=>G.apply(F,W))})}});return Reflect.apply(Q,B,[...Y.slice(0,-1),X])}}),jNA.add(A),A}function H4B(A){return typeof A==="object"&&A!==null&&"resource"in A&&typeof A.resource==="function"&&"tool"in A&&typeof A.tool==="function"&&"prompt"in A&&typeof A.prompt==="function"&&"connect"in A&&typeof A.connect==="function"}function ONA(A){return typeof A==="object"&&A!==null&&"id"in A&&(typeof A.id==="number"||typeof A.id==="string")}function zd(A){return typeof A==="object"&&A!==null&&"sessionId"in A&&typeof A.sessionId==="string"&&"requestId"in A&&(typeof A.requestId==="number"||typeof A.requestId==="string")}var Mj=new Map;function PNA(A){Mj.delete(A)}function TNA(A,Q){let B=pC();if(B){let Y=Mj.get(A)??new Map;Y.set(Q,B),Mj.set(A,Y)}}function Rd(A,Q){if(A){let{sessionId:B,requestId:Y}=A,J=Mj.get(B);if(!J)return Q();let C=J.get(Y);if(!C)return Q();return J.delete(Y),t7(C,()=>{return Q()})}return Q()}function jd(A,Q={},B=sQ()){let{message:Y,name:J,email:C,url:X,source:G,associatedEventId:F,tags:W}=A,Z={contexts:{feedback:{contact_email:C,name:J,message:Y,url:X,source:G,associated_event_id:F}},type:"feedback",level:"info",tags:W},U=B?.getClient()||gA();if(U)U.emit("beforeSendFeedback",Z,Q);return B.captureEvent(Z,Q)}var D4B="ConsoleLogs",SNA={[DQ]:"auto.console.logging"},N4B=(A={})=>{let Q=A.levels||uC;return{name:D4B,setup(B){if(!B.getOptions()._experiments?.enableLogs){OA&&e.warn("`_experiments.enableLogs` is not enabled, ConsoleLogs integration disabled");return}xE(({args:Y,level:J})=>{if(gA()!==B||!Q.includes(J))return;if(J==="assert"){if(!Y[0]){let X=Y.slice(1),G=X.length>0?`Assertion failed: ${kNA(X)}`:"Assertion failed";kZ({level:"error",message:G,attributes:SNA})}return}let C=J==="log";kZ({level:C?"info":J,message:kNA(Y),severityNumber:C?10:void 0,attributes:SNA})})}}},Od=wA(N4B);function kNA(A){return"util"in AQ&&typeof AQ.util.format==="function"?AQ.util.format(...A):d7(A," ")}function LN(A){if(A===void 0)return;else if(A>=400&&A<500)return"warning";else if(A>=500)return"error";else return}function vNA(A,Q=!1){return!(Q||A&&!A.startsWith("/")&&!A.match(/^[A-Z]:/)&&!A.startsWith(".")&&!A.match(/^[a-zA-Z]([a-zA-Z0-9.\-+])*:\/\//))&&A!==void 0&&!A.includes("node_modules/")}function yNA(A){let Q=/^\s*[-]{4,}$/,B=/at (?:async )?(?:(.+?)\s+\()?(?:(.+):(\d+):(\d+)?|([^)]+))\)?/;return(Y)=>{let J=Y.match(B);if(J){let C,X,G,F,W;if(J[1]){G=J[1];let $=G.lastIndexOf(".");if(G[$-1]===".")$--;if($>0){C=G.slice(0,$),X=G.slice($+1);let E=C.indexOf(".Module");if(E>0)G=G.slice(E+1),C=C.slice(0,E)}F=void 0}if(X)F=C,W=X;if(X==="")W=void 0,G=void 0;if(G===void 0)W=W||Iu,G=F?`${F}.${W}`:W;let Z=J[2]?.startsWith("file://")?J[2].slice(7):J[2],U=J[5]==="native";if(Z?.match(/\/[A-Z]:/))Z=Z.slice(1);if(!Z&&J[5]&&!U)Z=J[5];return{filename:Z?decodeURI(Z):void 0,module:A?A(Z):void 0,function:G,lineno:_NA(J[3]),colno:_NA(J[4]),in_app:vNA(Z||"",U)}}if(Y.match(Q))return{filename:Y};return}}function Pd(A){return[90,yNA(A)]}function _NA(A){return parseInt(A||"",10)||void 0}class S8{constructor(A){this._maxSize=A,this._cache=new Map}get size(){return this._cache.size}get(A){let Q=this._cache.get(A);if(Q===void 0)return;return this._cache.delete(A),this._cache.set(A,Q),Q}set(A,Q){if(this._cache.size>=this._maxSize)this._cache.delete(this._cache.keys().next().value);this._cache.set(A,Q)}remove(A){let Q=this._cache.get(A);if(Q)this._cache.delete(A);return Q}clear(){this._cache.clear()}keys(){return Array.from(this._cache.keys())}values(){let A=[];return this._cache.forEach((Q)=>A.push(Q)),A}}function oG(A,...Q){let[B,Y,J]=Q;if(Array.isArray(Y)){let C={...J};C["sentry.message.template"]=B,Y.forEach((G,F)=>{C[`sentry.message.parameter.${F}`]=G});let X=L4B(B,...Y);kZ({level:A,message:X,attributes:C})}else kZ({level:A,message:B,attributes:Y})}function q4B(...A){oG("trace",...A)}function M4B(...A){oG("debug",...A)}function z4B(...A){oG("info",...A)}function R4B(...A){oG("warn",...A)}function w4B(...A){oG("error",...A)}function j4B(...A){oG("fatal",...A)}var J$Q=qA(yA(),1),C$Q=qA(MpA(),1);var qp=qA(NB(),1),SO={};function EQ(A,Q,B){if(B)return hlB(A,Q,B);return glB(A,Q)}function glB(A,Q){return Object.assign((B)=>{let Y=SO[A];if(Y){if(B)Y.setConfig(B);return Y}let J=Q(B);return SO[A]=J,qp.registerInstrumentations({instrumentations:[J]}),J},{id:A})}function hlB(A,Q,B){return Object.assign((Y)=>{let J=B(Y),C=SO[A];if(C)return C.setConfig(J),C;let X=new Q(J);return SO[A]=X,qp.registerInstrumentations({instrumentations:[X]}),X},{id:A})}function XF(A){let Q=!1,B=[];if(!xlB(A))Q=!0;else{let J=A._wrap;A._wrap=(...C)=>{return Q=!0,B.forEach((X)=>X()),B=[],J(...C)}}return(J)=>{if(Q)J();else B.push(J)}}function xlB(A){return typeof A._wrap==="function"}function p0(A,Q){A.setAttribute(DQ,Q)}function GL(A){let Q=A.protocol||"",B=A.hostname||A.host||"",Y=!A.port||A.port===80||A.port===443||/^(.*):(\d+)$/.test(B)?"":`:${A.port}`,J=A.path?A.path:"/";return`${Q}//${B}${Y}${J}`}var VK=qA(yA(),1),aO=qA(MB(),1),EL=qA(NB(),1);import{subscribe as sO,unsubscribe as rO}from"node:diagnostics_channel";var oQ=qA(uB(),1);var l9=qA(yA(),1),bA=qA(yA(),1),b5=qA(MB(),1),WF=qA(op(),1),Ci="sentry.parentIsRemote",EK="sentry.graphql.operation";function Xi(A){if("parentSpanId"in A)return A.parentSpanId;else if("parentSpanContext"in A)return A.parentSpanContext?.spanId;return}function Gi(A){let Q=A;return!!Q.attributes&&typeof Q.attributes==="object"}function tV0(A){return typeof A.kind==="number"}function eV0(A){return!!A.status}function _ZQ(A){return!!A.name}function AI0(A){if(!Gi(A))return{};let Q=A.attributes[oQ.ATTR_URL_FULL]||A.attributes[oQ.SEMATTRS_HTTP_URL],B={url:Q,"http.method":A.attributes[oQ.ATTR_HTTP_REQUEST_METHOD]||A.attributes[oQ.SEMATTRS_HTTP_METHOD]};if(!B["http.method"]&&B.url)B["http.method"]="GET";try{if(typeof Q==="string"){let Y=AF(Q);if(B.url=QF(Y),Y.search)B["http.query"]=Y.search;if(Y.hash)B["http.fragment"]=Y.hash}}catch{}return B}function QI0(A){if(tV0(A))return A.kind;return bA.SpanKind.INTERNAL}var tp="sentry-trace",ep="baggage",Fi="sentry.dsc",Wi="sentry.sampled_not_recording",vZQ="sentry.url",BI0="sentry.sample_rand",YI0="sentry.sample_rate",yZQ=bA.createContextKey("sentry_scopes"),Ai=bA.createContextKey("sentry_fork_isolation_scope"),Qi=bA.createContextKey("sentry_fork_set_scope"),Bi=bA.createContextKey("sentry_fork_set_isolation_scope"),gZQ="_scopeContext";function KK(A){return A.getValue(yZQ)}function hZQ(A,Q){return A.setValue(yZQ,Q)}function JI0(A,Q){d0(A,gZQ,Q)}function Zi(A){return A[gZQ]}function UK(A){let{traceFlags:Q,traceState:B}=A,Y=B?B.get(Wi)==="1":!1;if(Q===bA.TraceFlags.SAMPLED)return!0;if(Y)return!1;let J=B?B.get(Fi):void 0,C=J?s7(J):void 0;if(C?.sampled==="true")return!0;if(C?.sampled==="false")return!1;return}function xZQ(A,Q,B){let Y=Q[oQ.ATTR_HTTP_REQUEST_METHOD]||Q[oQ.SEMATTRS_HTTP_METHOD];if(Y)return XI0({attributes:Q,name:A,kind:B},Y);let J=Q[oQ.SEMATTRS_DB_SYSTEM],C=typeof Q[BQ]==="string"&&Q[BQ].startsWith("cache.");if(J&&!C)return CI0({attributes:Q,name:A});let X=Q[A0]==="custom"?"custom":"route";if(Q[oQ.SEMATTRS_RPC_SERVICE])return{...ZL(A,Q,"route"),op:"rpc"};if(Q[oQ.SEMATTRS_MESSAGING_SYSTEM])return{...ZL(A,Q,X),op:"message"};let W=Q[oQ.SEMATTRS_FAAS_TRIGGER];if(W)return{...ZL(A,Q,X),op:W.toString()};return{op:void 0,description:A,source:"custom"}}function fZQ(A){let Q=Gi(A)?A.attributes:{},B=_ZQ(A)?A.name:"",Y=QI0(A);return xZQ(B,Q,Y)}function CI0({attributes:A,name:Q}){let B=A[cC];if(typeof B==="string")return{op:"db",description:B,source:A[A0]||"custom"};if(A[A0]==="custom")return{op:"db",description:Q,source:"custom"};let Y=A[oQ.SEMATTRS_DB_STATEMENT];return{op:"db",description:Y?Y.toString():Q,source:"task"}}function XI0({name:A,kind:Q,attributes:B},Y){let J=["http"];switch(Q){case bA.SpanKind.CLIENT:J.push("client");break;case bA.SpanKind.SERVER:J.push("server");break}if(B["sentry.http.prefetch"])J.push("prefetch");let{urlPath:C,url:X,query:G,fragment:F,hasRoute:W}=FI0(B,Q);if(!C)return{...ZL(A,B),op:J.join(".")};let Z=B[EK],U=`${Y} ${C}`,$=Z?`${U} (${GI0(Z)})`:U,E=W||C==="/"?"route":"url",K={};if(X)K.url=X;if(G)K["http.query"]=G;if(F)K["http.fragment"]=F;let I=Q===bA.SpanKind.CLIENT||Q===bA.SpanKind.SERVER,H=!`${B[DQ]||"manual"}`.startsWith("auto"),D=B[A0]==="custom",L=B[cC],z=!D&&L==null&&(I||!H),{description:M,source:N}=z?{description:$,source:E}:ZL(A,B);return{op:J.join("."),description:M,source:N,data:K}}function GI0(A){if(Array.isArray(A)){let Q=A.slice().sort();if(Q.length<=5)return Q.join(", ");else return`${Q.slice(0,5).join(", ")}, +${Q.length-5}`}return`${A}`}function FI0(A,Q){let B=A[oQ.SEMATTRS_HTTP_TARGET],Y=A[oQ.SEMATTRS_HTTP_URL]||A[oQ.ATTR_URL_FULL],J=A[oQ.ATTR_HTTP_ROUTE],C=typeof Y==="string"?AF(Y):void 0,X=C?QF(C):void 0,G=C?.search||void 0,F=C?.hash||void 0;if(typeof J==="string")return{urlPath:J,url:X,query:G,fragment:F,hasRoute:!0};if(Q===bA.SpanKind.SERVER&&typeof B==="string")return{urlPath:fE(B),url:X,query:G,fragment:F,hasRoute:!1};if(C)return{urlPath:X,url:X,query:G,fragment:F,hasRoute:!1};if(typeof B==="string")return{urlPath:fE(B),url:X,query:G,fragment:F,hasRoute:!1};return{urlPath:void 0,url:X,query:G,fragment:F,hasRoute:!1}}function ZL(A,Q,B="custom"){let Y=Q[A0]||B,J=Q[cC];if(J&&typeof J==="string")return{description:J,source:Y};return{description:A,source:Y}}function bZQ(A){A.on("createDsc",(Q,B)=>{if(!B)return;let C=eA(B).data[A0],{description:X}=_ZQ(B)?fZQ(B):{description:void 0};if(C!=="url"&&X)Q.transaction=X;if(C9()){let G=UK(B.spanContext());Q.sampled=G==null?void 0:String(G)}})}function mZQ(){return bA.trace.getActiveSpan()}var GX=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__;function uZQ({dsc:A,sampled:Q}){let B=A?r7(A):void 0,Y=new b5.TraceState,J=B?Y.set(Fi,B):Y;return Q===!1?J.set(Wi,"1"):J}var dZQ=new Set;function cZQ(){return Array.from(dZQ)}function iO(A){dZQ.add(A)}class $i extends b5.W3CBaggagePropagator{constructor(){super();iO("SentryPropagator"),this._urlMatchesTargetsMap=new S8(100)}inject(A,Q,B){if(b5.isTracingSuppressed(A)){GX&&e.log("[Tracing] Not injecting trace data for url because tracing is suppressed.");return}let Y=bA.trace.getSpan(A),J=Y&&$I0(Y),C=gA()?.getOptions()?.tracePropagationTargets;if(!$L(J,C,this._urlMatchesTargetsMap)){GX&&e.log("[Tracing] Not injecting trace data for url because it does not match tracePropagationTargets:",J);return}let X=ZI0(Q),G=bA.propagation.getBaggage(A)||bA.propagation.createBaggage({}),{dynamicSamplingContext:F,traceId:W,spanId:Z,sampled:U}=lZQ(A);if(X){let $=MZ(X);if($)Object.entries($).forEach(([E,K])=>{G=G.setEntry(E,{value:K})})}if(F)G=Object.entries(F).reduce(($,[E,K])=>{if(K)return $.setEntry(`${rD}${E}`,{value:K});return $},G);if(W&&W!==bA.INVALID_TRACEID)B.set(Q,tp,a7(W,Z,U));super.inject(bA.propagation.setBaggage(A,G),Q,B)}extract(A,Q,B){let Y=B.get(Q,tp),J=B.get(Q,ep),C=Y?Array.isArray(Y)?Y[0]:Y:void 0;return iZQ(pZQ(A,{sentryTrace:C,baggage:J}))}fields(){return[tp,ep]}}var TZQ="[Tracing] Not injecting trace data for url because it does not match tracePropagationTargets:";function $L(A,Q,B){if(typeof A!=="string"||!Q)return!0;let Y=B?.get(A);if(Y!==void 0)return GX&&!Y&&e.log(TZQ,A),Y;let J=c7(A,Q);return B?.set(A,J),GX&&!J&&e.log(TZQ,A),J}function lZQ(A){let Q=bA.trace.getSpan(A);if(Q?.spanContext().isRemote){let X=Q.spanContext();return{dynamicSamplingContext:c0(Q),traceId:X.traceId,spanId:void 0,sampled:UK(X)}}if(Q){let X=Q.spanContext();return{dynamicSamplingContext:c0(Q),traceId:X.traceId,spanId:X.spanId,sampled:UK(X)}}let B=KK(A)?.scope||sQ(),Y=gA(),J=B.getPropagationContext();return{dynamicSamplingContext:Y?sG(Y,B):void 0,traceId:J.traceId,spanId:J.propagationSpanId,sampled:J.sampled}}function pZQ(A,{sentryTrace:Q,baggage:B}){let Y=zZ(Q,B),{traceId:J,parentSpanId:C,sampled:X,dsc:G}=Y;if(!C)return A;let F=UI0({traceId:J,spanId:C,sampled:X,dsc:G});return bA.trace.setSpanContext(A,F)}function WI0(A,Q,B){let Y=iZQ(pZQ(A,Q));return bA.context.with(Y,B)}function iZQ(A){let Q=KK(A),B={scope:Q?Q.scope:sQ().clone(),isolationScope:Q?Q.isolationScope:RQ()};return hZQ(A,B)}function ZI0(A){try{let Q=A[ep];return Array.isArray(Q)?Q.join(","):Q}catch{return}}function $I0(A){let Q=eA(A).data,B=Q[oQ.SEMATTRS_HTTP_URL]||Q[oQ.ATTR_URL_FULL];if(typeof B==="string")return B;let Y=A.spanContext().traceState?.get(vZQ);if(Y)return Y;return}function UI0({spanId:A,traceId:Q,sampled:B,dsc:Y}){let J=uZQ({dsc:Y,sampled:B});return{traceId:Q,spanId:A,isRemote:!0,traceFlags:B?bA.TraceFlags.SAMPLED:bA.TraceFlags.NONE,traceState:J}}function EI0(A,Q){let B=Ui(),{name:Y,parentSpan:J}=A;return Vi(J)(()=>{let X=Ki(A.scope,A.forceTransaction),F=A.onlyIfParent&&!bA.trace.getSpan(X)?b5.suppressTracing(X):X,W=Ei(A);return B.startActiveSpan(Y,W,F,(Z)=>{return OZ(()=>Q(Z),()=>{if(eA(Z).status===void 0)Z.setStatus({code:bA.SpanStatusCode.ERROR})},()=>Z.end())})})}function KI0(A,Q){let B=Ui(),{name:Y,parentSpan:J}=A;return Vi(J)(()=>{let X=Ki(A.scope,A.forceTransaction),F=A.onlyIfParent&&!bA.trace.getSpan(X)?b5.suppressTracing(X):X,W=Ei(A);return B.startActiveSpan(Y,W,F,(Z)=>{return OZ(()=>Q(Z,()=>Z.end()),()=>{if(eA(Z).status===void 0)Z.setStatus({code:bA.SpanStatusCode.ERROR})})})})}function VI0(A){let Q=Ui(),{name:B,parentSpan:Y}=A;return Vi(Y)(()=>{let C=Ki(A.scope,A.forceTransaction),G=A.onlyIfParent&&!bA.trace.getSpan(C)?b5.suppressTracing(C):C,F=Ei(A);return Q.startSpan(B,F,G)})}function nZQ(A,Q){let B=A?bA.trace.setSpan(bA.context.active(),A):bA.trace.deleteSpan(bA.context.active());return bA.context.with(B,()=>Q(sQ()))}function Ui(){return gA()?.tracer||bA.trace.getTracer("@sentry/opentelemetry",u0)}function Ei(A){let{startTime:Q,attributes:B,kind:Y,op:J,links:C}=A,X=typeof Q==="number"?II0(Q):Q;return{attributes:J?{[BQ]:J,...B}:B,kind:Y,links:C,startTime:X}}function II0(A){return A<9999999999?A*1000:A}function Ki(A,Q){let B=HI0(A),Y=bA.trace.getSpan(B);if(!Y)return B;if(!Q)return B;let J=bA.trace.deleteSpan(B),{spanId:C,traceId:X}=Y.spanContext(),G=UK(Y.spanContext()),F=$0(Y),W=c0(F),Z=uZQ({dsc:W,sampled:G}),U={traceId:X,spanId:C,isRemote:!0,traceFlags:G?bA.TraceFlags.SAMPLED:bA.TraceFlags.NONE,traceState:Z};return bA.trace.setSpanContext(J,U)}function HI0(A){if(A){let Q=Zi(A);if(Q)return Q}return bA.context.active()}function DI0(A,Q){return WI0(bA.context.active(),A,Q)}function sZQ(A,Q){let B=Zi(Q),Y=B&&bA.trace.getSpan(B),J=Y?o7(Y):zE(Q);return[Y?c0(Y):sG(A,Q),J]}function Vi(A){return A!==void 0?(Q)=>{return nZQ(A,Q)}:(Q)=>Q()}function NI0(A){let Q=b5.suppressTracing(bA.context.active());return bA.context.with(Q,A)}function rZQ(A){A.on("preprocessEvent",(Q)=>{let B=mZQ();if(!B||Q.type==="transaction")return;Q.contexts={trace:o7(B),...Q.contexts};let Y=$0(B);return Q.sdkProcessingMetadata={dynamicSamplingContext:c0(Y),...Q.sdkProcessingMetadata},Q})}function LI0({span:A}={}){let Q=l9.context.active();if(A){let{scope:X}=lC(A);Q=X&&Zi(X)||l9.trace.setSpan(l9.context.active(),A)}let{traceId:B,spanId:Y,sampled:J,dynamicSamplingContext:C}=lZQ(Q);return{"sentry-trace":a7(B,Y,J),baggage:r7(C)}}function nO(){function A(){let G=l9.context.active(),F=KK(G);if(F)return F;return{scope:qE(),isolationScope:M5()}}function Q(G){let F=l9.context.active();return l9.context.with(F,()=>{return G(C())})}function B(G,F){let W=l9.context.active();return l9.context.with(W.setValue(Qi,G),()=>{return F(G)})}function Y(G){let F=l9.context.active();return l9.context.with(F.setValue(Ai,!0),()=>{return G(X())})}function J(G,F){let W=l9.context.active();return l9.context.with(W.setValue(Bi,G),()=>{return F(X())})}function C(){return A().scope}function X(){return A().isolationScope}Gu({withScope:Q,withSetScope:B,withSetIsolationScope:J,withIsolationScope:Y,getCurrentScope:C,getIsolationScope:X,startSpan:EI0,startSpanManual:KI0,startInactiveSpan:VI0,getActiveSpan:mZQ,suppressTracing:NI0,getTraceData:LI0,continueTrace:DI0,withActiveSpan:nZQ})}function aZQ(A){class Q extends A{constructor(...B){super(...B);iO("SentryContextManager")}with(B,Y,J,...C){let X=KK(B),G=X?.scope||sQ(),F=X?.isolationScope||RQ(),W=B.getValue(Ai)===!0,Z=B.getValue(Qi),U=B.getValue(Bi),$=Z||G.clone(),E=U||(W?F.clone():F),V=hZQ(B,{scope:$,isolationScope:E}).deleteValue(Ai).deleteValue(Qi).deleteValue(Bi);return JI0($,V),super.with(V,Y,J,...C)}}return Q}function qI0(A){let Q=new Map;for(let B of A)MI0(Q,B);return Array.from(Q,function([B,Y]){return Y})}function oZQ(A){return A.attributes[Ci]!==!0?Xi(A):void 0}function MI0(A,Q){let B=Q.spanContext().spanId,Y=oZQ(Q);if(!Y){Yi(A,{id:B,span:Q,children:[]});return}let J=zI0(A,Y),C=Yi(A,{id:B,span:Q,parentNode:J,children:[]});J.children.push(C)}function zI0(A,Q){let B=A.get(Q);if(B)return B;return Yi(A,{id:Q,children:[]})}function Yi(A,Q){let B=A.get(Q.id);if(B?.span)return B;if(B&&!B.span)return B.span=Q.span,B.parentNode=Q.parentNode,B;return A.set(Q.id,Q),Q}var tZQ={"1":"cancelled","2":"unknown_error","3":"invalid_argument","4":"deadline_exceeded","5":"not_found","6":"already_exists","7":"permission_denied","8":"resource_exhausted","9":"failed_precondition","10":"aborted","11":"out_of_range","12":"unimplemented","13":"internal_error","14":"unavailable","15":"data_loss","16":"unauthenticated"},RI0=(A)=>{return Object.values(tZQ).includes(A)};function eZQ(A){let Q=Gi(A)?A.attributes:{},B=eV0(A)?A.status:void 0;if(B){if(B.code===bA.SpanStatusCode.OK)return{code:n7};else if(B.code===bA.SpanStatusCode.ERROR){if(typeof B.message>"u"){let J=SZQ(Q);if(J)return J}if(B.message&&RI0(B.message))return{code:m9,message:B.message};else return{code:m9,message:"unknown_error"}}}let Y=SZQ(Q);if(Y)return Y;if(B?.code===bA.SpanStatusCode.UNSET)return{code:n7};else return{code:m9,message:"unknown_error"}}function SZQ(A){let Q=A[oQ.ATTR_HTTP_RESPONSE_STATUS_CODE]||A[oQ.SEMATTRS_HTTP_STATUS_CODE],B=A[oQ.SEMATTRS_RPC_GRPC_STATUS_CODE],Y=typeof Q==="number"?Q:typeof Q==="string"?parseInt(Q):void 0;if(typeof Y==="number")return jE(Y);if(typeof B==="string")return{code:m9,message:tZQ[B]||"unknown_error"};return}var kZQ=1000,wI0=300;class A$Q{constructor(A){this._finishedSpanBucketSize=A?.timeout||wI0,this._finishedSpanBuckets=Array(this._finishedSpanBucketSize).fill(void 0),this._lastCleanupTimestampInS=Math.floor(Date.now()/1000),this._spansToBucketEntry=new WeakMap}export(A){let Q=Math.floor(Date.now()/1000);if(this._lastCleanupTimestampInS!==Q){let J=0;if(this._finishedSpanBuckets.forEach((C,X)=>{if(C&&C.timestampInS<=Q-this._finishedSpanBucketSize)J+=C.spans.size,this._finishedSpanBuckets[X]=void 0}),J>0)GX&&e.log(`SpanExporter dropped ${J} spans because they were pending for more than ${this._finishedSpanBucketSize} seconds.`);this._lastCleanupTimestampInS=Q}let B=Q%this._finishedSpanBucketSize,Y=this._finishedSpanBuckets[B]||{timestampInS:Q,spans:new Set};if(this._finishedSpanBuckets[B]=Y,Y.spans.add(A),this._spansToBucketEntry.set(A,Y),!oZQ(A))this._clearTimeout(),this._flushTimeout=setTimeout(()=>{this.flush()},1)}flush(){this._clearTimeout();let A=[];this._finishedSpanBuckets.forEach((J)=>{if(J)A.push(...J.spans)});let Q=jI0(A),B=Q.size,Y=A.length-B;GX&&e.log(`SpanExporter exported ${B} spans, ${Y} spans are waiting for their parent spans to finish`),Q.forEach((J)=>{let C=this._spansToBucketEntry.get(J);if(C)C.spans.delete(J)})}clear(){this._finishedSpanBuckets=this._finishedSpanBuckets.fill(void 0),this._clearTimeout()}_clearTimeout(){if(this._flushTimeout)clearTimeout(this._flushTimeout),this._flushTimeout=void 0}}function jI0(A){let Q=qI0(A),B=new Set;return PI0(Q).forEach((J)=>{let C=J.span;B.add(C);let X=SI0(C),G=X.spans||[];J.children.forEach((W)=>{Ji(W,G,B)}),X.spans=G.length>kZQ?G.sort((W,Z)=>W.start_timestamp-Z.start_timestamp).slice(0,kZQ):G;let F=PZ(C.events);if(F)X.measurements=F;UN(X)}),B}function OI0(A){return!!A.span&&!A.parentNode}function PI0(A){return A.filter(OI0)}function TI0(A){let Q=A.attributes,B=Q[DQ],Y=Q[BQ],J=Q[A0];return{origin:B,op:Y,source:J}}function SI0(A){let{op:Q,description:B,data:Y,origin:J="manual",source:C}=Q$Q(A),X=lC(A),G=A.attributes[R5],F={[A0]:C,[R5]:G,[BQ]:Q,[DQ]:J,...Y,...B$Q(A.attributes)},{links:W}=A,{traceId:Z,spanId:U}=A.spanContext(),$=Xi(A),E=eZQ(A),K={parent_span_id:$,span_id:U,trace_id:Z,data:F,origin:J,op:Q,status:wZ(E),links:RZ(W)},I=F[oQ.ATTR_HTTP_RESPONSE_STATUS_CODE],V=typeof I==="number"?{response:{status_code:I}}:void 0;return{contexts:{trace:K,otel:{resource:A.resource.attributes},...V},spans:[],start_timestamp:u9(A.startTime),timestamp:u9(A.endTime),transaction:B,type:"transaction",sdkProcessingMetadata:{capturedSpanScope:X.scope,capturedSpanIsolationScope:X.isolationScope,sampleRate:G,dynamicSamplingContext:c0(A)},...C&&{transaction_info:{source:C}}}}function Ji(A,Q,B){let Y=A.span;if(Y)B.add(Y);if(!Y){A.children.forEach((L)=>{Ji(L,Q,B)});return}let C=Y.spanContext().spanId,X=Y.spanContext().traceId,G=Xi(Y),{attributes:F,startTime:W,endTime:Z,links:U}=Y,{op:$,description:E,data:K,origin:I="manual"}=Q$Q(Y),V={[DQ]:I,[BQ]:$,...B$Q(F),...K},H=eZQ(Y),D={span_id:C,trace_id:X,data:V,description:E,parent_span_id:G,start_timestamp:u9(W),timestamp:u9(Z)||void 0,status:wZ(H),op:$,origin:I,measurements:PZ(Y.events),links:RZ(U)};Q.push(D),A.children.forEach((L)=>{Ji(L,Q,B)})}function Q$Q(A){let{op:Q,source:B,origin:Y}=TI0(A),{op:J,description:C,source:X,data:G}=fZQ(A),F=Q||J,W=B||X,Z={...G,...kI0(A)};return{op:F,description:C,source:W,origin:Y,data:Z}}function B$Q(A){let Q={...A};return delete Q[R5],delete Q[Ci],delete Q[cC],Q}function kI0(A){let Q=A.attributes,B={};if(A.kind!==bA.SpanKind.INTERNAL)B["otel.kind"]=bA.SpanKind[A.kind];let Y=Q[oQ.SEMATTRS_HTTP_STATUS_CODE];if(Y)B[oQ.ATTR_HTTP_RESPONSE_STATUS_CODE]=Y;let J=AI0(A);if(J.url)B.url=J.url;if(J["http.query"])B["http.query"]=J["http.query"].slice(1);if(J["http.fragment"])B["http.fragment"]=J["http.fragment"].slice(1);return B}function _I0(A,Q){let B=bA.trace.getSpan(Q),Y=KK(Q);if(B&&!B.spanContext().isRemote)PE(B,A);if(B?.spanContext().isRemote)A.setAttribute(Ci,!0);if(Q===bA.ROOT_CONTEXT)Y={scope:qE(),isolationScope:M5()};if(Y)sD(A,Y.scope,Y.isolationScope);BN(A),gA()?.emit("spanStart",A)}function vI0(A){YN(A),gA()?.emit("spanEnd",A)}class Ii{constructor(A){iO("SentrySpanProcessor"),this._exporter=new A$Q(A)}async forceFlush(){this._exporter.flush()}async shutdown(){this._exporter.clear()}onStart(A,Q){_I0(A,Q)}onEnd(A){vI0(A),this._exporter.export(A)}}class Hi{constructor(A){this._client=A,iO("SentrySampler")}shouldSample(A,Q,B,Y,J,C){let X=this._client.getOptions(),G=hI0(A),F=G?.spanContext();if(!C9(X))return $K({decision:void 0,context:A,spanAttributes:J});let W=J[oQ.SEMATTRS_HTTP_METHOD]||J[oQ.ATTR_HTTP_REQUEST_METHOD];if(Y===bA.SpanKind.CLIENT&&W&&(!G||F?.isRemote))return $K({decision:void 0,context:A,spanAttributes:J});let Z=G?yI0(G,Q,B):void 0;if(!(!G||F?.isRemote))return $K({decision:Z?WF.SamplingDecision.RECORD_AND_SAMPLED:WF.SamplingDecision.NOT_RECORD,context:A,spanAttributes:J});let{description:$,data:E,op:K}=xZQ(B,J,Y),I={...E,...J};if(K)I[BQ]=K;let V={decision:!0};if(this._client.emit("beforeSampling",{spanAttributes:I,spanName:$,parentSampled:Z,parentContext:F},V),!V.decision)return $K({decision:void 0,context:A,spanAttributes:J});let{isolationScope:H}=KK(A)??{},D=F?.traceState?F.traceState.get(Fi):void 0,L=D?s7(D):void 0,z=P8(L?.sample_rand)??Math.random(),[M,N,q]=JN(X,{name:$,attributes:I,normalizedRequest:H?.getScopeData().sdkProcessingMetadata.normalizedRequest,parentSampled:Z,parentSampleRate:P8(L?.sample_rate)},z),w=`${W}`.toUpperCase();if(w==="OPTIONS"||w==="HEAD")return GX&&e.log(`[Tracing] Not sampling span because HTTP method is '${w}' for ${B}`),$K({decision:WF.SamplingDecision.NOT_RECORD,context:A,spanAttributes:J,sampleRand:z,downstreamTraceSampleRate:0});if(!M&&Z===void 0)GX&&e.log("[Tracing] Discarding root span because its trace was not chosen to be sampled."),this._client.recordDroppedEvent("sample_rate","transaction");return{...$K({decision:M?WF.SamplingDecision.RECORD_AND_SAMPLED:WF.SamplingDecision.NOT_RECORD,context:A,spanAttributes:J,sampleRand:z,downstreamTraceSampleRate:q?N:void 0}),attributes:{[R5]:q?N:void 0}}}toString(){return"SentrySampler"}}function yI0(A,Q,B){let Y=A.spanContext();if(bA.isSpanContextValid(Y)&&Y.traceId===Q){if(Y.isRemote){let C=UK(A.spanContext());return GX&&e.log(`[Tracing] Inheriting remote parent's sampled decision for ${B}: ${C}`),C}let J=UK(Y);return GX&&e.log(`[Tracing] Inheriting parent's sampled decision for ${B}: ${J}`),J}return}function $K({decision:A,context:Q,spanAttributes:B,sampleRand:Y,downstreamTraceSampleRate:J}){let C=gI0(Q,B);if(J!==void 0)C=C.set(YI0,`${J}`);if(Y!==void 0)C=C.set(BI0,`${Y}`);if(A==null)return{decision:WF.SamplingDecision.NOT_RECORD,traceState:C};if(A===WF.SamplingDecision.NOT_RECORD)return{decision:A,traceState:C.set(Wi,"1")};return{decision:A,traceState:C}}function gI0(A,Q){let J=bA.trace.getSpan(A)?.spanContext()?.traceState||new b5.TraceState,C=Q[oQ.SEMATTRS_HTTP_URL]||Q[oQ.ATTR_URL_FULL];if(C&&typeof C==="string")J=J.set(vZQ,C);return J}function hI0(A){let Q=bA.trace.getSpan(A);return Q&&bA.isSpanContextValid(Q.spanContext())?Q:void 0}var fQ=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__;function UL(A,Q){if(!A)return Q;let B=MZ(A),Y=MZ(Q);if(!Y)return A;let J={...B};return Object.entries(Y).forEach(([C,X])=>{if(!J[C])J[C]=X}),rw(J)}var A1="@sentry/instrumentation-http",xI0=1048576;class Ni extends EL.InstrumentationBase{constructor(A={}){super(A1,aO.VERSION,A);this._propagationDecisionMap=new S8(100),this._ignoreOutgoingRequestsMap=new WeakMap}init(){let A=!1,Q=(G)=>{let F=G;this._patchServerEmitOnce(F.server)},B=(G)=>{let F=G;this._onOutgoingRequestFinish(F.request,F.response)},Y=(G)=>{let F=G;this._onOutgoingRequestFinish(F.request,void 0)},J=(G)=>{let F=G;this._onOutgoingRequestCreated(F.request)},C=(G)=>{if(A)return G;if(A=!0,sO("http.server.request.start",Q),sO("http.client.response.finish",B),sO("http.client.request.error",Y),this.getConfig().propagateTraceInOutgoingRequests)sO("http.client.request.created",J);return G},X=()=>{rO("http.server.request.start",Q),rO("http.client.response.finish",B),rO("http.client.request.error",Y),rO("http.client.request.created",J)};return[new EL.InstrumentationNodeModuleDefinition("http",["*"],C,X),new EL.InstrumentationNodeModuleDefinition("https",["*"],C,X)]}_onOutgoingRequestFinish(A,Q){fQ&&e.log(A1,"Handling finished outgoing request");let B=this.getConfig().breadcrumbs,Y=typeof B>"u"?!0:B,J=this._ignoreOutgoingRequestsMap.get(A)??this._shouldIgnoreOutgoingRequest(A);if(this._ignoreOutgoingRequestsMap.set(A,J),Y&&!J)fI0(A,Q)}_onOutgoingRequestCreated(A){let Q=this._ignoreOutgoingRequestsMap.get(A)??this._shouldIgnoreOutgoingRequest(A);if(this._ignoreOutgoingRequestsMap.set(A,Q),Q)return;let B=GL(A),Y=gA()?.getOptions().tracePropagationTargets,J=$L(B,Y,this._propagationDecisionMap)?aG():void 0;if(!J)return;let{"sentry-trace":C,baggage:X}=J;if(C&&!A.getHeader("sentry-trace"))A.setHeader("sentry-trace",C),e.log(A1,"Added sentry-trace header to outgoing request");if(X){let G=UL(A.getHeader("baggage"),X);if(G)A.setHeader("baggage",G)}}_patchServerEmitOnce(A){let Q=A.emit;if(Q.__sentry_patched__)return;fQ&&e.log(A1,"Patching server.emit");let B=this,{ignoreIncomingRequestBody:Y,maxIncomingRequestBodySize:J="medium"}=B.getConfig(),C=new Proxy(Q,{apply(X,G,F){if(F[0]!=="request")return X.apply(G,F);fQ&&e.log(A1,"Handling incoming request");let W=RQ().clone(),Z=F[1],U=F[2],$=hE(Z),E=Z.ip||Z.socket?.remoteAddress,K=Z.url||"/";if(!Y?.(K,Z)&&J!=="none")mI0(Z,W,J);W.setSDKProcessingMetadata({normalizedRequest:$,ipAddress:E});let I=(Z.method||"GET").toUpperCase(),V=fE(K),H=`${I} ${V}`;if(W.setTransactionName(H),B.getConfig().trackIncomingRequestsAsSessions!==!1)dI0({requestIsolationScope:W,response:U,sessionFlushingDelayMS:B.getConfig().sessionFlushingDelayMS??60000});return nG(W,()=>{if(sQ().getPropagationContext().propagationSpanId=j8(),!B.getConfig().extractIncomingTraceFromHeader)return X.apply(G,F);let D=VK.propagation.extract(VK.context.active(),$.headers);return VK.context.with(D,()=>{return X.apply(G,F)})})}});d0(C,"__sentry_patched__",!0),A.emit=C}_shouldIgnoreOutgoingRequest(A){if(aO.isTracingSuppressed(VK.context.active()))return!0;let Q=this.getConfig().ignoreOutgoingRequests;if(!Q)return!1;let B=uI0(A),Y=GL(A);return Q(Y,B)}}function fI0(A,Q){let B=bI0(A),Y=Q?.statusCode,J=LN(Y);X9({category:"http",data:{status_code:Y,...B},type:"http",level:J},{event:"response",request:A,response:Q})}function bI0(A){try{let Q=A.getHeader("host")||A.host,B=new URL(A.path,`${A.protocol}//${Q}`),Y=AF(B.toString()),J={url:QF(Y),"http.method":A.method||"GET"};if(Y.search)J["http.query"]=Y.search;if(Y.hash)J["http.fragment"]=Y.hash;return J}catch{return{}}}function mI0(A,Q,B){let Y=0,J=[];fQ&&e.log(A1,"Patching request.on");let C=new WeakMap,X=B==="small"?1000:B==="medium"?1e4:xI0;try{A.on=new Proxy(A.on,{apply:(G,F,W)=>{let[Z,U,...$]=W;if(Z==="data"){fQ&&e.log(A1,`Handling request.on("data") with maximum body size of ${X}b`);let E=new Proxy(U,{apply:(K,I,V)=>{try{let H=V[0],D=Buffer.from(H);if(Y{let[,Z]=W,U=C.get(Z);if(U){C.delete(Z);let $=W.slice();return $[1]=U,Reflect.apply(G,F,$)}return Reflect.apply(G,F,W)}}),A.on("end",()=>{try{let G=Buffer.concat(J).toString("utf-8");if(G){let W=Buffer.byteLength(G,"utf-8")>X?`${Buffer.from(G).subarray(0,X-3).toString("utf-8")}...`:G;Q.setSDKProcessingMetadata({normalizedRequest:{data:W}})}}catch(G){if(fQ)e.error(A1,"Error building captured request body",G)}})}catch(G){if(fQ)e.error(A1,"Error patching request to capture body",G)}}function uI0(A){return{method:A.method,protocol:A.protocol,host:A.host,hostname:A.host,path:A.path,headers:A.getHeaders()}}function dI0({requestIsolationScope:A,response:Q,sessionFlushingDelayMS:B}){A.setSDKProcessingMetadata({requestSession:{status:"ok"}}),Q.once("close",()=>{let Y=gA(),J=A.getScopeData().sdkProcessingMetadata.requestSession;if(Y&&J){fQ&&e.debug(`Recorded request session with status: ${J.status}`);let C=new Date;C.setSeconds(0,0);let X=C.toISOString(),G=Di.get(Y),F=G?.[X]||{exited:0,crashed:0,errored:0};if(F[{ok:"exited",crashed:"crashed",errored:"errored"}[J.status]]++,G)G[X]=F;else{fQ&&e.debug("Opened new request session aggregate.");let W={[X]:F};Di.set(Y,W);let Z=()=>{clearTimeout($),U(),Di.delete(Y);let E=Object.entries(W).map(([K,I])=>({started:K,exited:I.exited,errored:I.errored,crashed:I.crashed}));Y.sendSession({aggregates:E})},U=Y.on("flush",()=>{fQ&&e.debug("Sending request session aggregate due to client flush"),Z()}),$=setTimeout(()=>{fQ&&e.debug("Sending request session aggregate due to flushing schedule"),Z()},B).unref()}}})}var Di=new Map;var Li="Http",Y$Q="@opentelemetry_sentry-patched/instrumentation-http",cI0=EQ(`${Li}.sentry`,(A)=>{return new Ni(A)}),qi=EQ(Li,(A)=>{let Q=new C$Q.HttpInstrumentation(A);try{Q._diag=J$Q.diag.createComponentLogger({namespace:Y$Q}),Q.instrumentationName=Y$Q}catch{}return Q});function lI0(A,Q={}){return typeof A.spans==="boolean"?A.spans:!Q.skipOpenTelemetrySetup}var oO=wA((A={})=>{let Q=A.dropSpansForIncomingRequestStatusCodes??[404];return{name:Li,setupOnce(){let B=lI0(A,gA()?.getOptions());if(cI0({...A,extractIncomingTraceFromHeader:!B,propagateTraceInOutgoingRequests:!B}),B){let Y=nI0(A);qi(Y)}},processEvent(B){if(B.type==="transaction"){let Y=B.contexts?.trace?.data?.["http.response.status_code"];if(typeof Y==="number"&&Q.some((J)=>{if(typeof J==="number")return J===Y;let[C,X]=J;return Y>=C&&Y<=X}))return null}return B}}});function pI0(A){return"outputData"in A&&"outputSize"in A&&!("client"in A)&&!("statusCode"in A)}function iI0(A){return A.headers["next-router-prefetch"]==="1"}function nI0(A={}){return{...A.instrumentation?._experimentalConfig,disableIncomingRequestInstrumentation:A.disableIncomingRequestSpans,ignoreOutgoingRequestHook:(B)=>{let Y=GL(B);if(!Y)return!1;let J=A.ignoreOutgoingRequests;if(J?.(Y,B))return!0;return!1},ignoreIncomingRequestHook:(B)=>{let Y=B.url,J=B.method?.toUpperCase();if(J==="OPTIONS"||J==="HEAD")return!0;let C=A.ignoreIncomingRequests;if(Y&&C?.(Y,B))return!0;return!1},requireParentforOutgoingSpans:!1,requireParentforIncomingSpans:!1,requestHook:(B,Y)=>{if(p0(B,"auto.http.otel.http"),!pI0(Y)&&iI0(Y))B.setAttribute("sentry.http.prefetch",!0);A.instrumentation?.requestHook?.(B,Y)},responseHook:(B,Y)=>{A.instrumentation?.responseHook?.(B,Y)},applyCustomAttributesOnSpan:(B,Y,J)=>{A.instrumentation?.applyCustomAttributesOnSpan?.(B,Y,J)}}}var w$Q=qA(L$Q(),1);var z$Q=qA(yA(),1),AP=qA(MB(),1),R$Q=qA(NB(),1);import*as IK from"diagnostics_channel";var $F=Cu(process.versions.node),IL=$F.major,q$Q=$F.minor;var eO="sentry-trace",Mi="baggage",M$Q=/baggage: (.*)\r\n/;class Ri extends R$Q.InstrumentationBase{constructor(A={}){super("@sentry/instrumentation-node-fetch",AP.VERSION,A);this._channelSubs=[],this._propagationDecisionMap=new S8(100),this._ignoreOutgoingRequestsMap=new WeakMap}init(){return}disable(){super.disable(),this._channelSubs.forEach((A)=>A.unsubscribe()),this._channelSubs=[]}enable(){if(super.enable(),this._channelSubs=this._channelSubs||[],this._channelSubs.length>0)return;this._subscribeToChannel("undici:request:create",this._onRequestCreated.bind(this)),this._subscribeToChannel("undici:request:headers",this._onResponseHeaders.bind(this))}_onRequestCreated({request:A}){if(this.getConfig().enabled===!1)return;let Y=this._shouldIgnoreOutgoingRequest(A);if(this._ignoreOutgoingRequestsMap.set(A,Y),Y)return;let J=zi(A.origin,A.path),C=gA()?.getOptions().tracePropagationTargets,X=$L(J,C,this._propagationDecisionMap)?aG():void 0;if(!X)return;let{"sentry-trace":G,baggage:F}=X;if(Array.isArray(A.headers)){let W=A.headers;if(G&&!W.includes(eO))W.push(eO,G);let Z=W.findIndex((U)=>U===Mi);if(F&&Z===-1)W.push(Mi,F);else if(F){let U=W[Z+1],$=UL(U,F);if($)W[Z+1]=$}}else{let W=A.headers;if(G&&!W.includes(`${eO}:`))A.headers+=`${eO}: ${G}\r -`;let Z=A.headers.match(M$Q)?.[1];if(F&&!Z)A.headers+=`${Mi}: ${F}\r -`;else if(F){let U=UL(Z,F);if(U)A.headers=A.headers.replace(M$Q,`baggage: ${U}\r -`)}}}_onResponseHeaders({request:A,response:Q}){let B=this.getConfig();if(B.enabled===!1)return;let J=B.breadcrumbs,C=typeof J>"u"?!0:J,X=this._ignoreOutgoingRequestsMap.get(A);if(C&&!X)oI0(A,Q)}_subscribeToChannel(A,Q){let B=IL>18||IL===18&&q$Q>=19,Y;if(B)IK.subscribe?.(A,Q),Y=()=>IK.unsubscribe?.(A,Q);else{let J=IK.channel(A);J.subscribe(Q),Y=()=>J.unsubscribe(Q)}this._channelSubs.push({name:A,unsubscribe:Y})}_shouldIgnoreOutgoingRequest(A){if(AP.isTracingSuppressed(z$Q.context.active()))return!0;let Q=zi(A.origin,A.path),B=this.getConfig().ignoreOutgoingRequests;if(typeof B!=="function"||!Q)return!1;return B(Q)}}function oI0(A,Q){let B=tI0(A),Y=Q.statusCode,J=LN(Y);X9({category:"http",data:{status_code:Y,...B},type:"http",level:J},{event:"response",request:A,response:Q})}function tI0(A){try{let Q=zi(A.origin,A.path),B=AF(Q),Y={url:QF(B),"http.method":A.method||"GET"};if(B.search)Y["http.query"]=B.search;if(B.hash)Y["http.fragment"]=B.hash;return Y}catch{return{}}}function zi(A,Q="/"){try{return new URL(Q,A).toString()}catch{let B=`${A}`;if(B.endsWith("/")&&Q.startsWith("/"))return`${B}${Q.slice(1)}`;if(!B.endsWith("/")&&!Q.startsWith("/"))return`${B}/${Q.slice(1)}`;return`${B}${Q}`}}var j$Q="NodeFetch",eI0=EQ(j$Q,w$Q.UndiciInstrumentation,(A)=>{return JH0(A)}),AH0=EQ(`${j$Q}.sentry`,Ri,(A)=>{return A}),QH0=(A={})=>{return{name:"NodeFetch",setupOnce(){if(YH0(A,gA()?.getOptions()))eI0(A);AH0(A)}}},QP=wA(QH0);function BH0(A,Q="/"){let B=`${A}`;if(B.endsWith("/")&&Q.startsWith("/"))return`${B}${Q.slice(1)}`;if(!B.endsWith("/")&&!Q.startsWith("/"))return`${B}/${Q.slice(1)}`;return`${B}${Q}`}function YH0(A,Q={}){return typeof A.spans==="boolean"?A.spans:!Q.skipOpenTelemetrySetup}function JH0(A={}){return{requireParentforSpans:!1,ignoreRequestHook:(B)=>{let Y=BH0(B.origin,B.path),J=A.ignoreOutgoingRequests;return!!(J&&Y&&J(Y))},startSpanHook:()=>{return{[DQ]:"auto.http.otel.node_fetch"}}}}var n$Q=qA(p$Q(),1);var i$Q="FileSystem",s$Q=wA((A={})=>{return{name:i$Q,setupOnce(){EQ(i$Q,()=>new n$Q.FsInstrumentation({requireParentSpan:!0,endHook(Q,{args:B,span:Y,error:J}){if(Y.updateName(`fs.${Q}`),Y.setAttributes({[BQ]:"file",[DQ]:"auto.file.fs"}),A.recordErrorMessagesAsSpanAttributes){if(typeof B[0]==="string"&&HH0.includes(Q))Y.setAttribute("path_argument",B[0]);else if(typeof B[0]==="string"&&typeof B[1]==="string"&&IH0.includes(Q))Y.setAttribute("target_argument",B[0]),Y.setAttribute("path_argument",B[1]);else if(typeof B[0]==="string"&&VH0.includes(Q))Y.setAttribute("prefix_argument",B[0]);else if(typeof B[0]==="string"&&typeof B[1]==="string"&&KH0.includes(Q))Y.setAttribute("existing_path_argument",B[0]),Y.setAttribute("new_path_argument",B[1]);else if(typeof B[0]==="string"&&typeof B[1]==="string"&&EH0.includes(Q))Y.setAttribute("src_argument",B[0]),Y.setAttribute("dest_argument",B[1]);else if(typeof B[0]==="string"&&typeof B[1]==="string"&&UH0.includes(Q))Y.setAttribute("old_path_argument",B[0]),Y.setAttribute("new_path_argument",B[1])}if(J&&A.recordErrorMessagesAsSpanAttributes)Y.setAttribute("fs_error",J.message)}}))()}}}),UH0=["rename","renameSync"],EH0=["copyFile","cp","copyFileSync","cpSync"],KH0=["link","linkSync"],VH0=["mkdtemp","mkdtempSync"],IH0=["symlink","symlinkSync"],HH0=["access","appendFile","chmod","chown","exists","mkdir","lchown","lstat","lutimes","open","opendir","readdir","readFile","readlink","realpath","realpath.native","rm","rmdir","stat","truncate","unlink","utimes","writeFile","accessSync","appendFileSync","chmodSync","chownSync","existsSync","lchownSync","lstatSync","lutimesSync","opendirSync","mkdirSync","openSync","readdirSync","readFileSync","readlinkSync","realpathSync","realpathSync.native","rmdirSync","rmSync","statSync","truncateSync","unlinkSync","utimesSync","writeFileSync"];import{execFile as DH0}from"node:child_process";import{readFile as NH0,readdir as LH0}from"node:fs";import*as lY from"node:os";import{join as qH0}from"node:path";import{promisify as a$Q}from"node:util";var MH0=a$Q(NH0),zH0=a$Q(LH0),RH0="Context",wH0=(A={})=>{let Q,B={app:!0,os:!0,device:!0,culture:!0,cloudResource:!0,...A};async function Y(C){if(Q===void 0)Q=J();let X=jH0(await Q);return C.contexts={...C.contexts,app:{...X.app,...C.contexts?.app},os:{...X.os,...C.contexts?.os},device:{...X.device,...C.contexts?.device},culture:{...X.culture,...C.contexts?.culture},cloud_resource:{...X.cloud_resource,...C.contexts?.cloud_resource}},C}async function J(){let C={};if(B.os)C.os=await OH0();if(B.app)C.app=TH0();if(B.device)C.device=SH0(B.device);if(B.culture){let X=PH0();if(X)C.culture=X}if(B.cloudResource)C.cloud_resource=hH0();return C}return{name:RH0,processEvent(C){return Y(C)}}},JP=wA(wH0);function jH0(A){if(A.app?.app_memory)A.app.app_memory=process.memoryUsage().rss;if(A.app?.free_memory&&typeof process.availableMemory==="function"){let Q=process.availableMemory?.();if(Q!=null)A.app.free_memory=Q}if(A.device?.free_memory)A.device.free_memory=lY.freemem();return A}async function OH0(){let A=lY.platform();switch(A){case"darwin":return yH0();case"linux":return gH0();default:return{name:kH0[A]||A,version:lY.release()}}}function PH0(){try{if(typeof process.versions.icu!=="string")return;let A=new Date(900000000);if(new Intl.DateTimeFormat("es",{month:"long"}).format(A)==="enero"){let B=Intl.DateTimeFormat().resolvedOptions();return{locale:B.locale,timezone:B.timeZone}}}catch(A){}return}function TH0(){let A=process.memoryUsage().rss,B={app_start_time:new Date(Date.now()-process.uptime()*1000).toISOString(),app_memory:A};if(typeof process.availableMemory==="function"){let Y=process.availableMemory?.();if(Y!=null)B.free_memory=Y}return B}function SH0(A){let Q={},B;try{B=lY.uptime()}catch(Y){}if(typeof B==="number")Q.boot_time=new Date(Date.now()-B*1000).toISOString();if(Q.arch=lY.arch(),A===!0||A.memory)Q.memory_size=lY.totalmem(),Q.free_memory=lY.freemem();if(A===!0||A.cpu){let Y=lY.cpus(),J=Y?.[0];if(J)Q.processor_count=Y.length,Q.cpu_description=J.model,Q.processor_frequency=J.speed}return Q}var kH0={aix:"IBM AIX",freebsd:"FreeBSD",openbsd:"OpenBSD",sunos:"SunOS",win32:"Windows"},_H0=[{name:"fedora-release",distros:["Fedora"]},{name:"redhat-release",distros:["Red Hat Linux","Centos"]},{name:"redhat_version",distros:["Red Hat Linux"]},{name:"SuSE-release",distros:["SUSE Linux"]},{name:"lsb-release",distros:["Ubuntu Linux","Arch Linux"]},{name:"debian_version",distros:["Debian"]},{name:"debian_release",distros:["Debian"]},{name:"arch-release",distros:["Arch Linux"]},{name:"gentoo-release",distros:["Gentoo Linux"]},{name:"novell-release",distros:["SUSE Linux"]},{name:"alpine-release",distros:["Alpine Linux"]}],vH0={alpine:(A)=>A,arch:(A)=>FX(/distrib_release=(.*)/,A),centos:(A)=>FX(/release ([^ ]+)/,A),debian:(A)=>A,fedora:(A)=>FX(/release (..)/,A),mint:(A)=>FX(/distrib_release=(.*)/,A),red:(A)=>FX(/release ([^ ]+)/,A),suse:(A)=>FX(/VERSION = (.*)\n/,A),ubuntu:(A)=>FX(/distrib_release=(.*)/,A)};function FX(A,Q){let B=A.exec(Q);return B?B[1]:void 0}async function yH0(){let A={kernel_version:lY.release(),name:"Mac OS X",version:`10.${Number(lY.release().split(".")[0])-4}`};try{let Q=await new Promise((B,Y)=>{DH0("/usr/bin/sw_vers",(J,C)=>{if(J){Y(J);return}B(C)})});A.name=FX(/^ProductName:\s+(.*)$/m,Q),A.version=FX(/^ProductVersion:\s+(.*)$/m,Q),A.build=FX(/^BuildVersion:\s+(.*)$/m,Q)}catch(Q){}return A}function r$Q(A){return A.split(" ")[0].toLowerCase()}async function gH0(){let A={kernel_version:lY.release(),name:"Linux"};try{let Q=await zH0("/etc"),B=_H0.find((G)=>Q.includes(G.name));if(!B)return A;let Y=qH0("/etc",B.name),J=(await MH0(Y,{encoding:"utf-8"})).toLowerCase(),{distros:C}=B;A.name=C.find((G)=>J.indexOf(r$Q(G))>=0)||C[0];let X=r$Q(A.name);A.version=vH0[X]?.(J)}catch(Q){}return A}function hH0(){if(process.env.VERCEL)return{"cloud.provider":"vercel","cloud.region":process.env.VERCEL_REGION};else if(process.env.AWS_REGION)return{"cloud.provider":"aws","cloud.region":process.env.AWS_REGION,"cloud.platform":process.env.AWS_EXECUTION_ENV};else if(process.env.GCP_PROJECT)return{"cloud.provider":"gcp"};else if(process.env.ALIYUN_REGION_ID)return{"cloud.provider":"alibaba_cloud","cloud.region":process.env.ALIYUN_REGION_ID};else if(process.env.WEBSITE_SITE_NAME&&process.env.REGION_NAME)return{"cloud.provider":"azure","cloud.region":process.env.REGION_NAME};else if(process.env.IBM_CLOUD_REGION)return{"cloud.provider":"ibm_cloud","cloud.region":process.env.IBM_CLOUD_REGION};else if(process.env.TENCENTCLOUD_REGION)return{"cloud.provider":"tencent_cloud","cloud.region":process.env.TENCENTCLOUD_REGION,"cloud.account.id":process.env.TENCENTCLOUD_APPID,"cloud.availability_zone":process.env.TENCENTCLOUD_ZONE};else if(process.env.NETLIFY)return{"cloud.provider":"netlify"};else if(process.env.FLY_REGION)return{"cloud.provider":"fly.io","cloud.region":process.env.FLY_REGION};else if(process.env.DYNO)return{"cloud.provider":"heroku"};else return}import{createReadStream as xH0}from"node:fs";import{createInterface as fH0}from"node:readline";var wi=new S8(10),e$Q=new S8(20),bH0=7,mH0="ContextLines",uH0=1000,dH0=1e4;function cH0(A,Q,B){let Y=A.get(Q);if(Y===void 0)return A.set(Q,B),B;return Y}function lH0(A){if(A.startsWith("node:"))return!0;if(A.endsWith(".min.js"))return!0;if(A.endsWith(".min.cjs"))return!0;if(A.endsWith(".min.mjs"))return!0;if(A.startsWith("data:"))return!0;return!1}function pH0(A){if(A.lineno!==void 0&&A.lineno>dH0)return!0;if(A.colno!==void 0&&A.colno>uH0)return!0;return!1}function iH0(A,Q){let B=wi.get(A);if(B===void 0)return!1;for(let Y=Q[0];Y<=Q[1];Y++)if(B[Y]===void 0)return!1;return!0}function nH0(A,Q){if(!A.length)return[];let B=0,Y=A[0];if(typeof Y!=="number")return[];let J=t$Q(Y,Q),C=[];while(!0){if(B===A.length-1){C.push(J);break}let X=A[B+1];if(typeof X!=="number")break;if(X<=J[1])J[1]=X+Q;else C.push(J),J=t$Q(X,Q);B++}return C}function sH0(A,Q,B){return new Promise((Y,J)=>{let C=xH0(A),X=fH0({input:C});function G(){C.destroy(),Y()}let F=0,W=0,Z=Q[W];if(Z===void 0){G();return}let U=Z[0],$=Z[1];function E(K){e$Q.set(A,1),fQ&&e.error(`Failed to read file: ${A}. Error: ${K}`),X.close(),X.removeAllListeners(),G()}C.on("error",E),X.on("error",E),X.on("close",G),X.on("line",(K)=>{if(F++,F=$){if(W===Q.length-1){X.close(),X.removeAllListeners();return}W++;let I=Q[W];if(I===void 0){X.close(),X.removeAllListeners();return}U=I[0],$=I[1]}})})}async function rH0(A,Q){let B={};if(Q>0&&A.exception?.values)for(let C of A.exception.values){if(!C.stacktrace?.frames?.length)continue;for(let X=C.stacktrace.frames.length-1;X>=0;X--){let G=C.stacktrace.frames[X],F=G?.filename;if(!G||typeof F!=="string"||typeof G.lineno!=="number"||lH0(F)||pH0(G))continue;if(!B[F])B[F]=[];B[F].push(G.lineno)}}let Y=Object.keys(B);if(Y.length==0)return A;let J=[];for(let C of Y){if(e$Q.get(C))continue;let X=B[C];if(!X)continue;X.sort((W,Z)=>W-Z);let G=nH0(X,Q);if(G.every((W)=>iH0(C,W)))continue;let F=cH0(wi,C,{});J.push(sH0(C,G,F))}if(await Promise.all(J).catch(()=>{fQ&&e.log("Failed to read one or more source files and resolve context lines")}),Q>0&&A.exception?.values){for(let C of A.exception.values)if(C.stacktrace?.frames&&C.stacktrace.frames.length>0)aH0(C.stacktrace.frames,Q,wi)}return A}function aH0(A,Q,B){for(let Y of A)if(Y.filename&&Y.context_line===void 0&&typeof Y.lineno==="number"){let J=B.get(Y.filename);if(J===void 0)continue;oH0(Y.lineno,Y,Q,J)}}function o$Q(A){delete A.pre_context,delete A.context_line,delete A.post_context}function oH0(A,Q,B,Y){if(Q.lineno===void 0||Y===void 0){fQ&&e.error("Cannot resolve context for frame with no lineno or file contents");return}Q.pre_context=[];for(let C=A4Q(A,B);C{let Q=A.frameContextLines!==void 0?A.frameContextLines:bH0;return{name:mH0,processEvent(B){return rH0(B,Q)}}},CP=wA(tH0);import{Worker as eH0}from"node:worker_threads";var XP;async function HK(){if(XP===void 0)try{XP=!!(await import("node:inspector")).url()}catch(A){XP=!1}return XP}var HL="__SENTRY_ERROR_LOCAL_VARIABLES__";function Y4Q(A,Q,B){let Y=0,J=5,C=0;return setInterval(()=>{if(C===0){if(Y>A){if(J*=2,B(J),J>86400)J=86400;C=J}}else if(C-=1,C===0)Q();Y=0},1000).unref(),()=>{Y+=1}}function B4Q(A){return A!==void 0&&(A.length===0||A==="?"||A==="")}function GP(A,Q){return A===Q||B4Q(A)&&B4Q(Q)}var AD0="LyohIEBzZW50cnkvbm9kZSA5LjIyLjAgKGNjYWJmYzIpIHwgaHR0cHM6Ly9naXRodWIuY29tL2dldHNlbnRyeS9zZW50cnktamF2YXNjcmlwdCAqLwppbXBvcnR7U2Vzc2lvbiBhcyBlfWZyb20ibm9kZTppbnNwZWN0b3IvcHJvbWlzZXMiO2ltcG9ydHt3b3JrZXJEYXRhIGFzIHR9ZnJvbSJub2RlOndvcmtlcl90aHJlYWRzIjtjb25zdCBuPSJ1bmRlZmluZWQiPT10eXBlb2YgX19TRU5UUllfREVCVUdfX3x8X19TRU5UUllfREVCVUdfXyxvPSI5LjIyLjAiLGk9Z2xvYmFsVGhpcztjb25zdCBhPVsiZGVidWciLCJpbmZvIiwid2FybiIsImVycm9yIiwibG9nIiwiYXNzZXJ0IiwidHJhY2UiXSxzPXt9O2Z1bmN0aW9uIGMoZSl7aWYoISgiY29uc29sZSJpbiBpKSlyZXR1cm4gZSgpO2NvbnN0IHQ9aS5jb25zb2xlLG49e30sbz1PYmplY3Qua2V5cyhzKTtvLmZvckVhY2goKGU9Pntjb25zdCBvPXNbZV07bltlXT10W2VdLHRbZV09b30pKTt0cnl7cmV0dXJuIGUoKX1maW5hbGx5e28uZm9yRWFjaCgoZT0+e3RbZV09bltlXX0pKX19IWZ1bmN0aW9uKGUsdCxuPWkpe2NvbnN0IGE9bi5fX1NFTlRSWV9fPW4uX19TRU5UUllfX3x8e30scz1hW29dPWFbb118fHt9O3NbZV18fChzW2VdPXQoKSl9KCJsb2dnZXIiLChmdW5jdGlvbigpe2xldCBlPSExO2NvbnN0IHQ9e2VuYWJsZTooKT0+e2U9ITB9LGRpc2FibGU6KCk9PntlPSExfSxpc0VuYWJsZWQ6KCk9PmV9O3JldHVybiBuP2EuZm9yRWFjaCgobj0+e3Rbbl09KC4uLnQpPT57ZSYmYygoKCk9PntpLmNvbnNvbGVbbl0oYFNlbnRyeSBMb2dnZXIgWyR7bn1dOmAsLi4udCl9KSl9fSkpOmEuZm9yRWFjaCgoZT0+e3RbZV09KCk9Pnt9fSkpLHR9KSk7Y29uc3Qgcj0iX19TRU5UUllfRVJST1JfTE9DQUxfVkFSSUFCTEVTX18iO2NvbnN0IHU9dDtmdW5jdGlvbiBsKC4uLmUpe3UuZGVidWcmJmMoKCgpPT5jb25zb2xlLmxvZygiW0xvY2FsVmFyaWFibGVzIFdvcmtlcl0iLC4uLmUpKSl9YXN5bmMgZnVuY3Rpb24gZihlLHQsbixvKXtjb25zdCBpPWF3YWl0IGUucG9zdCgiUnVudGltZS5nZXRQcm9wZXJ0aWVzIix7b2JqZWN0SWQ6dCxvd25Qcm9wZXJ0aWVzOiEwfSk7b1tuXT1pLnJlc3VsdC5maWx0ZXIoKGU9PiJsZW5ndGgiIT09ZS5uYW1lJiYhaXNOYU4ocGFyc2VJbnQoZS5uYW1lLDEwKSkpKS5zb3J0KCgoZSx0KT0+cGFyc2VJbnQoZS5uYW1lLDEwKS1wYXJzZUludCh0Lm5hbWUsMTApKSkubWFwKChlPT5lLnZhbHVlPy52YWx1ZSkpfWFzeW5jIGZ1bmN0aW9uIGcoZSx0LG4sbyl7Y29uc3QgaT1hd2FpdCBlLnBvc3QoIlJ1bnRpbWUuZ2V0UHJvcGVydGllcyIse29iamVjdElkOnQsb3duUHJvcGVydGllczohMH0pO29bbl09aS5yZXN1bHQubWFwKChlPT5bZS5uYW1lLGUudmFsdWU/LnZhbHVlXSkpLnJlZHVjZSgoKGUsW3Qsbl0pPT4oZVt0XT1uLGUpKSx7fSl9ZnVuY3Rpb24gZChlLHQpe2UudmFsdWUmJigidmFsdWUiaW4gZS52YWx1ZT92b2lkIDA9PT1lLnZhbHVlLnZhbHVlfHxudWxsPT09ZS52YWx1ZS52YWx1ZT90W2UubmFtZV09YDwke2UudmFsdWUudmFsdWV9PmA6dFtlLm5hbWVdPWUudmFsdWUudmFsdWU6ImRlc2NyaXB0aW9uImluIGUudmFsdWUmJiJmdW5jdGlvbiIhPT1lLnZhbHVlLnR5cGU/dFtlLm5hbWVdPWA8JHtlLnZhbHVlLmRlc2NyaXB0aW9ufT5gOiJ1bmRlZmluZWQiPT09ZS52YWx1ZS50eXBlJiYodFtlLm5hbWVdPSI8dW5kZWZpbmVkPiIpKX1hc3luYyBmdW5jdGlvbiBiKGUsdCl7Y29uc3Qgbj1hd2FpdCBlLnBvc3QoIlJ1bnRpbWUuZ2V0UHJvcGVydGllcyIse29iamVjdElkOnQsb3duUHJvcGVydGllczohMH0pLG89e307Zm9yKGNvbnN0IHQgb2Ygbi5yZXN1bHQpaWYodC52YWx1ZT8ub2JqZWN0SWQmJiJBcnJheSI9PT10LnZhbHVlLmNsYXNzTmFtZSl7Y29uc3Qgbj10LnZhbHVlLm9iamVjdElkO2F3YWl0IGYoZSxuLHQubmFtZSxvKX1lbHNlIGlmKHQudmFsdWU/Lm9iamVjdElkJiYiT2JqZWN0Ij09PXQudmFsdWUuY2xhc3NOYW1lKXtjb25zdCBuPXQudmFsdWUub2JqZWN0SWQ7YXdhaXQgZyhlLG4sdC5uYW1lLG8pfWVsc2UgdC52YWx1ZSYmZCh0LG8pO3JldHVybiBvfWxldCBwOyhhc3luYyBmdW5jdGlvbigpe2NvbnN0IHQ9bmV3IGU7dC5jb25uZWN0VG9NYWluVGhyZWFkKCksbCgiQ29ubmVjdGVkIHRvIG1haW4gdGhyZWFkIik7bGV0IG49ITE7dC5vbigiRGVidWdnZXIucmVzdW1lZCIsKCgpPT57bj0hMX0pKSx0Lm9uKCJEZWJ1Z2dlci5wYXVzZWQiLChlPT57bj0hMCxhc3luYyBmdW5jdGlvbihlLHtyZWFzb246dCxkYXRhOntvYmplY3RJZDpufSxjYWxsRnJhbWVzOm99KXtpZigiZXhjZXB0aW9uIiE9PXQmJiJwcm9taXNlUmVqZWN0aW9uIiE9PXQpcmV0dXJuO2lmKHA/LigpLG51bGw9PW4pcmV0dXJuO2NvbnN0IGk9W107Zm9yKGxldCB0PTA7dDxvLmxlbmd0aDt0Kyspe2NvbnN0e3Njb3BlQ2hhaW46bixmdW5jdGlvbk5hbWU6YSx0aGlzOnN9PW9bdF0sYz1uLmZpbmQoKGU9PiJsb2NhbCI9PT1lLnR5cGUpKSxyPSJnbG9iYWwiIT09cy5jbGFzc05hbWUmJnMuY2xhc3NOYW1lP2Ake3MuY2xhc3NOYW1lfS4ke2F9YDphO2lmKHZvaWQgMD09PWM/Lm9iamVjdC5vYmplY3RJZClpW3RdPXtmdW5jdGlvbjpyfTtlbHNle2NvbnN0IG49YXdhaXQgYihlLGMub2JqZWN0Lm9iamVjdElkKTtpW3RdPXtmdW5jdGlvbjpyLHZhcnM6bn19fWF3YWl0IGUucG9zdCgiUnVudGltZS5jYWxsRnVuY3Rpb25PbiIse2Z1bmN0aW9uRGVjbGFyYXRpb246YGZ1bmN0aW9uKCkgeyB0aGlzLiR7cn0gPSB0aGlzLiR7cn0gfHwgJHtKU09OLnN0cmluZ2lmeShpKX07IH1gLHNpbGVudDohMCxvYmplY3RJZDpufSksYXdhaXQgZS5wb3N0KCJSdW50aW1lLnJlbGVhc2VPYmplY3QiLHtvYmplY3RJZDpufSl9KHQsZS5wYXJhbXMpLnRoZW4oKGFzeW5jKCk9PntuJiZhd2FpdCB0LnBvc3QoIkRlYnVnZ2VyLnJlc3VtZSIpfSksKGFzeW5jIGU9PntuJiZhd2FpdCB0LnBvc3QoIkRlYnVnZ2VyLnJlc3VtZSIpfSkpfSkpLGF3YWl0IHQucG9zdCgiRGVidWdnZXIuZW5hYmxlIik7Y29uc3Qgbz0hMSE9PXUuY2FwdHVyZUFsbEV4Y2VwdGlvbnM7aWYoYXdhaXQgdC5wb3N0KCJEZWJ1Z2dlci5zZXRQYXVzZU9uRXhjZXB0aW9ucyIse3N0YXRlOm8/ImFsbCI6InVuY2F1Z2h0In0pLG8pe2NvbnN0IGU9dS5tYXhFeGNlcHRpb25zUGVyU2Vjb25kfHw1MDtwPWZ1bmN0aW9uKGUsdCxuKXtsZXQgbz0wLGk9NSxhPTA7cmV0dXJuIHNldEludGVydmFsKCgoKT0+ezA9PT1hP28+ZSYmKGkqPTIsbihpKSxpPjg2NDAwJiYoaT04NjQwMCksYT1pKTooYS09MSwwPT09YSYmdCgpKSxvPTB9KSwxZTMpLnVucmVmKCksKCk9PntvKz0xfX0oZSwoYXN5bmMoKT0+e2woIlJhdGUtbGltaXQgbGlmdGVkLiIpLGF3YWl0IHQucG9zdCgiRGVidWdnZXIuc2V0UGF1c2VPbkV4Y2VwdGlvbnMiLHtzdGF0ZToiYWxsIn0pfSksKGFzeW5jIGU9PntsKGBSYXRlLWxpbWl0IGV4Y2VlZGVkLiBEaXNhYmxpbmcgY2FwdHVyaW5nIG9mIGNhdWdodCBleGNlcHRpb25zIGZvciAke2V9IHNlY29uZHMuYCksYXdhaXQgdC5wb3N0KCJEZWJ1Z2dlci5zZXRQYXVzZU9uRXhjZXB0aW9ucyIse3N0YXRlOiJ1bmNhdWdodCJ9KX0pKX19KSgpLmNhdGNoKChlPT57bCgiRmFpbGVkIHRvIHN0YXJ0IGRlYnVnZ2VyIixlKX0pKSxzZXRJbnRlcnZhbCgoKCk9Pnt9KSwxZTQpOw==";function J4Q(...A){e.log("[LocalVariables]",...A)}var C4Q=wA((A={})=>{function Q(C,X){let G=(C.stacktrace?.frames||[]).filter((F)=>F.function!=="new Promise");for(let F=0;F{X.terminate()}),X.once("error",(G)=>{J4Q("Worker error",G)}),X.once("exit",(G)=>{J4Q("Worker exit",G)}),X.unref()}return{name:"LocalVariablesAsync",async setup(C){if(!C.getOptions().includeLocalVariables)return;if(await HK()){e.warn("Local variables capture has been disabled because the debugger was already enabled");return}let G={...A,debug:e.isEnabled()};Y().then(()=>{try{J(G)}catch(F){e.error("Failed to start worker",F)}},(F)=>{e.error("Failed to start inspector",F)})},processEvent(C,X){return B(C,X)}}});function X4Q(A){if(A===void 0)return;return A.slice(-10).reduce((Q,B)=>`${Q},${B.function},${B.lineno},${B.colno}`,"")}function QD0(A,Q){if(Q===void 0)return;return X4Q(A(Q,1))}function G4Q(A){let Q=[],B=!1;function Y(X){if(Q=[],B)return;B=!0,A(X)}Q.push(Y);function J(X){Q.push(X)}function C(X){let G=Q.pop()||Y;try{G(X)}catch(F){Y(X)}}return{add:J,next:C}}class ji{constructor(A){this._session=A}static async create(A){if(A)return A;let Q=await import("node:inspector");return new ji(new Q.Session)}configureAndConnect(A,Q){this._session.connect(),this._session.on("Debugger.paused",(B)=>{A(B,()=>{this._session.post("Debugger.resume")})}),this._session.post("Debugger.enable"),this._session.post("Debugger.setPauseOnExceptions",{state:Q?"all":"uncaught"})}setPauseOnExceptions(A){this._session.post("Debugger.setPauseOnExceptions",{state:A?"all":"uncaught"})}getLocalVariables(A,Q){this._getProperties(A,(B)=>{let{add:Y,next:J}=G4Q(Q);for(let C of B)if(C.value?.objectId&&C.value.className==="Array"){let X=C.value.objectId;Y((G)=>this._unrollArray(X,C.name,G,J))}else if(C.value?.objectId&&C.value.className==="Object"){let X=C.value.objectId;Y((G)=>this._unrollObject(X,C.name,G,J))}else if(C.value)Y((X)=>this._unrollOther(C,X,J));J({})})}_getProperties(A,Q){this._session.post("Runtime.getProperties",{objectId:A,ownProperties:!0},(B,Y)=>{if(B)Q([]);else Q(Y.result)})}_unrollArray(A,Q,B,Y){this._getProperties(A,(J)=>{B[Q]=J.filter((C)=>C.name!=="length"&&!isNaN(parseInt(C.name,10))).sort((C,X)=>parseInt(C.name,10)-parseInt(X.name,10)).map((C)=>C.value?.value),Y(B)})}_unrollObject(A,Q,B,Y){this._getProperties(A,(J)=>{B[Q]=J.map((C)=>[C.name,C.value?.value]).reduce((C,[X,G])=>{return C[X]=G,C},{}),Y(B)})}_unrollOther(A,Q,B){if(A.value){if("value"in A.value)if(A.value.value===void 0||A.value.value===null)Q[A.name]=`<${A.value.value}>`;else Q[A.name]=A.value.value;else if("description"in A.value&&A.value.type!=="function")Q[A.name]=`<${A.value.description}>`;else if(A.value.type==="undefined")Q[A.name]=""}B(Q)}}var BD0="LocalVariables",YD0=(A={},Q)=>{let B=new S8(20),Y,J=!1;function C(G){let F=X4Q(G.stacktrace?.frames);if(F===void 0)return;let W=B.remove(F);if(W===void 0)return;let Z=(G.stacktrace?.frames||[]).filter((U)=>U.function!=="new Promise");for(let U=0;U= v18.");return}if(await HK()){e.warn("Local variables capture has been disabled because the debugger was already enabled");return}ji.create(Q).then((Z)=>{function U(E,{params:{reason:K,data:I,callFrames:V}},H){if(K!=="exception"&&K!=="promiseRejection"){H();return}Y?.();let D=QD0(E,I.description);if(D==null){H();return}let{add:L,next:z}=G4Q((M)=>{B.set(D,M),H()});for(let M=0;MO.type==="local"),_=w.className==="global"||!w.className?q:`${w.className}.${q}`;if(P?.object.objectId===void 0)L((O)=>{O[M]={function:_},z(O)});else{let O=P.object.objectId;L((k)=>Z.getLocalVariables(O,(T)=>{k[M]={function:_,vars:T},z(k)}))}}z([])}let $=A.captureAllExceptions!==!1;if(Z.configureAndConnect((E,K)=>U(F.stackParser,E,K),$),$){let E=A.maxExceptionsPerSecond||50;Y=Y4Q(E,()=>{e.log("Local variables rate-limit lifted."),Z.setPauseOnExceptions(!0)},(K)=>{e.log(`Local variables rate-limit exceeded. Disabling capturing of caught exceptions for ${K} seconds.`),Z.setPauseOnExceptions(!1)})}J=!0},(Z)=>{e.log("The `LocalVariables` integration failed to start.",Z)})},processEvent(G){if(J)return X(G);return G},_getCachedFramesCount(){return B.size},_getFirstCachedFrame(){return B.values()[0]}}},F4Q=wA(YD0);var FP=(A={})=>{return $F.major<19?F4Q(A):C4Q(A)};import{existsSync as JD0,readFileSync as CD0}from"node:fs";import{dirname as XD0,join as GD0}from"node:path";function m5(){try{return typeof W4Q<"u"&&typeof WfY<"u"}catch{return!1}}var Oi,Z4Q="Modules",FD0=()=>{if(!m5())return fQ&&e.warn("modulesIntegration only works in CommonJS (CJS) environments. Remove this integration if you are using ESM."),{name:Z4Q};return{name:Z4Q,processEvent(A){return A.modules={...A.modules,...$D0()},A}}},WP=wA(FD0);function WD0(){try{return u.cache?Object.keys(u.cache):[]}catch(A){return[]}}function ZD0(){let A=u.main?.paths||[],Q=WD0(),B={},Y={};return Q.forEach((J)=>{let C=J,X=()=>{let G=C;if(C=XD0(G),!C||G===C||Y[G])return;if(A.indexOf(C)<0)return X();let F=GD0(G,"package.json");if(Y[G]=!0,!JD0(F))return X();try{let W=JSON.parse(CD0(F,"utf8"));B[W.name]=W.version}catch(W){}};X()}),B}function $D0(){if(!Oi)Oi=ZD0();return Oi}var UD0=2000;function DL(A){y0(()=>{console.error(A)});let Q=gA();if(Q===void 0){fQ&&e.warn("No NodeClient was defined, we are exiting the process now."),global.process.exit(1);return}let B=Q.getOptions(),Y=B?.shutdownTimeout&&B.shutdownTimeout>0?B.shutdownTimeout:UD0;Q.close(Y).then((J)=>{if(!J)fQ&&e.warn("We reached the timeout for emptying the request buffer, still exiting now!");global.process.exit(1)},(J)=>{fQ&&e.error(J)})}var ED0="OnUncaughtException",ZP=wA((A={})=>{let Q={exitEvenIfOtherHandlersAreRegistered:!1,...A};return{name:ED0,setup(B){global.process.on("uncaughtException",KD0(B,Q))}}});function KD0(A,Q){let Y=!1,J=!1,C=!1,X,G=A.getOptions();return Object.assign((F)=>{let W=DL;if(Q.onFatalError)W=Q.onFatalError;else if(G.onFatalError)W=G.onFatalError;let U=global.process.listeners("uncaughtException").filter((E)=>{return E.name!=="domainUncaughtExceptionClear"&&E.tag!=="sentry_tracingErrorCallback"&&E._errorHandler!==!0}).length===0,$=Q.exitEvenIfOtherHandlersAreRegistered||U;if(!Y){if(X=F,Y=!0,gA()===A)jB(F,{originalException:F,captureContext:{level:"fatal"},mechanism:{handled:!1,type:"onuncaughtexception"}});if(!C&&$)C=!0,W(F)}else if($){if(C)fQ&&e.warn("uncaught exception after calling fatal error shutdown callback - this is bad! forcing shutdown"),DL(F);else if(!J)J=!0,setTimeout(()=>{if(!C)C=!0,W(X,F)},2000)}},{_errorHandler:!0})}var VD0="OnUnhandledRejection",ID0=(A={})=>{let Q={mode:"warn",...A};return{name:VD0,setup(B){global.process.on("unhandledRejection",HD0(B,Q))}}},$P=wA(ID0);function HD0(A,Q){return function(Y,J){if(gA()!==A)return;let C=Q.mode==="strict"?"fatal":"error";jB(Y,{originalException:J,captureContext:{extra:{unhandledPromiseRejection:!0},level:C},mechanism:{handled:!1,type:"onunhandledrejection"}}),DD0(Y,Q.mode)}}function DD0(A,Q){let B="This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). The promise rejected with the reason:";if(Q==="warn")y0(()=>{console.warn(B),console.error(A&&typeof A==="object"&&"stack"in A?A.stack:A)});else if(Q==="strict")y0(()=>{console.warn(B)}),DL(A)}import{types as ND0}from"node:util";import{Worker as LD0}from"node:worker_threads";var{isPromise:qD0}=ND0,MD0="LyohIEBzZW50cnkvbm9kZSA5LjIyLjAgKGNjYWJmYzIpIHwgaHR0cHM6Ly9naXRodWIuY29tL2dldHNlbnRyeS9zZW50cnktamF2YXNjcmlwdCAqLwppbXBvcnR7U2Vzc2lvbiBhcyB0fWZyb20ibm9kZTppbnNwZWN0b3IiO2ltcG9ydHt3b3JrZXJEYXRhIGFzIG4scGFyZW50UG9ydCBhcyBlfWZyb20ibm9kZTp3b3JrZXJfdGhyZWFkcyI7aW1wb3J0e3Bvc2l4IGFzIHIsc2VwIGFzIG99ZnJvbSJub2RlOnBhdGgiO2ltcG9ydCphcyBzIGZyb20ibm9kZTpodHRwIjtpbXBvcnQqYXMgaSBmcm9tIm5vZGU6aHR0cHMiO2ltcG9ydHtSZWFkYWJsZSBhcyBjfWZyb20ibm9kZTpzdHJlYW0iO2ltcG9ydHtjcmVhdGVHemlwIGFzIHV9ZnJvbSJub2RlOnpsaWIiO2ltcG9ydCphcyBhIGZyb20ibm9kZTpuZXQiO2ltcG9ydCphcyBmIGZyb20ibm9kZTp0bHMiO2NvbnN0IGg9InVuZGVmaW5lZCI9PXR5cGVvZiBfX1NFTlRSWV9ERUJVR19ffHxfX1NFTlRSWV9ERUJVR19fLHA9IjkuMjIuMCIsbD1nbG9iYWxUaGlzO2Z1bmN0aW9uIGQoKXtyZXR1cm4gbShsKSxsfWZ1bmN0aW9uIG0odCl7Y29uc3Qgbj10Ll9fU0VOVFJZX189dC5fX1NFTlRSWV9ffHx7fTtyZXR1cm4gbi52ZXJzaW9uPW4udmVyc2lvbnx8cCxuW3BdPW5bcF18fHt9fWZ1bmN0aW9uIGcodCxuLGU9bCl7Y29uc3Qgcj1lLl9fU0VOVFJZX189ZS5fX1NFTlRSWV9ffHx7fSxvPXJbcF09cltwXXx8e307cmV0dXJuIG9bdF18fChvW3RdPW4oKSl9Y29uc3QgeT1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nO2Z1bmN0aW9uIGIodCxuKXtyZXR1cm4geS5jYWxsKHQpPT09YFtvYmplY3QgJHtufV1gfWZ1bmN0aW9uIF8odCl7cmV0dXJuIGIodCwiU3RyaW5nIil9ZnVuY3Rpb24gdih0KXtyZXR1cm4gYih0LCJPYmplY3QiKX1mdW5jdGlvbiB3KHQpe3JldHVybiBCb29sZWFuKHQ/LnRoZW4mJiJmdW5jdGlvbiI9PXR5cGVvZiB0LnRoZW4pfWZ1bmN0aW9uIFModCxuKXt0cnl7cmV0dXJuIHQgaW5zdGFuY2VvZiBufWNhdGNoKHQpe3JldHVybiExfX1jb25zdCAkPWwsRT04MDtmdW5jdGlvbiB4KHQsbil7Y29uc3QgZT10LHI9W107aWYoIWU/LnRhZ05hbWUpcmV0dXJuIiI7aWYoJC5IVE1MRWxlbWVudCYmZSBpbnN0YW5jZW9mIEhUTUxFbGVtZW50JiZlLmRhdGFzZXQpe2lmKGUuZGF0YXNldC5zZW50cnlDb21wb25lbnQpcmV0dXJuIGUuZGF0YXNldC5zZW50cnlDb21wb25lbnQ7aWYoZS5kYXRhc2V0LnNlbnRyeUVsZW1lbnQpcmV0dXJuIGUuZGF0YXNldC5zZW50cnlFbGVtZW50fXIucHVzaChlLnRhZ05hbWUudG9Mb3dlckNhc2UoKSk7Y29uc3Qgbz1uPy5sZW5ndGg/bi5maWx0ZXIoKHQ9PmUuZ2V0QXR0cmlidXRlKHQpKSkubWFwKCh0PT5bdCxlLmdldEF0dHJpYnV0ZSh0KV0pKTpudWxsO2lmKG8/Lmxlbmd0aClvLmZvckVhY2goKHQ9PntyLnB1c2goYFske3RbMF19PSIke3RbMV19Il1gKX0pKTtlbHNle2UuaWQmJnIucHVzaChgIyR7ZS5pZH1gKTtjb25zdCB0PWUuY2xhc3NOYW1lO2lmKHQmJl8odCkpe2NvbnN0IG49dC5zcGxpdCgvXHMrLyk7Zm9yKGNvbnN0IHQgb2YgbilyLnB1c2goYC4ke3R9YCl9fWNvbnN0IHM9WyJhcmlhLWxhYmVsIiwidHlwZSIsIm5hbWUiLCJ0aXRsZSIsImFsdCJdO2Zvcihjb25zdCB0IG9mIHMpe2NvbnN0IG49ZS5nZXRBdHRyaWJ1dGUodCk7biYmci5wdXNoKGBbJHt0fT0iJHtufSJdYCl9cmV0dXJuIHIuam9pbigiIil9Y29uc3QgTj1bImRlYnVnIiwiaW5mbyIsIndhcm4iLCJlcnJvciIsImxvZyIsImFzc2VydCIsInRyYWNlIl0sQz17fTtmdW5jdGlvbiBUKHQpe2lmKCEoImNvbnNvbGUiaW4gbCkpcmV0dXJuIHQoKTtjb25zdCBuPWwuY29uc29sZSxlPXt9LHI9T2JqZWN0LmtleXMoQyk7ci5mb3JFYWNoKCh0PT57Y29uc3Qgcj1DW3RdO2VbdF09blt0XSxuW3RdPXJ9KSk7dHJ5e3JldHVybiB0KCl9ZmluYWxseXtyLmZvckVhY2goKHQ9PntuW3RdPWVbdF19KSl9fWNvbnN0IGs9ZygibG9nZ2VyIiwoZnVuY3Rpb24oKXtsZXQgdD0hMTtjb25zdCBuPXtlbmFibGU6KCk9Pnt0PSEwfSxkaXNhYmxlOigpPT57dD0hMX0saXNFbmFibGVkOigpPT50fTtyZXR1cm4gaD9OLmZvckVhY2goKGU9PntuW2VdPSguLi5uKT0+e3QmJlQoKCgpPT57bC5jb25zb2xlW2VdKGBTZW50cnkgTG9nZ2VyIFske2V9XTpgLC4uLm4pfSkpfX0pKTpOLmZvckVhY2goKHQ9PntuW3RdPSgpPT57fX0pKSxufSkpO2Z1bmN0aW9uIGoodCxuPTApe3JldHVybiJzdHJpbmciIT10eXBlb2YgdHx8MD09PW58fHQubGVuZ3RoPD1uP3Q6YCR7dC5zbGljZSgwLG4pfS4uLmB9ZnVuY3Rpb24gUih0KXtpZihmdW5jdGlvbih0KXtzd2l0Y2goeS5jYWxsKHQpKXtjYXNlIltvYmplY3QgRXJyb3JdIjpjYXNlIltvYmplY3QgRXhjZXB0aW9uXSI6Y2FzZSJbb2JqZWN0IERPTUV4Y2VwdGlvbl0iOmNhc2UiW29iamVjdCBXZWJBc3NlbWJseS5FeGNlcHRpb25dIjpyZXR1cm4hMDtkZWZhdWx0OnJldHVybiBTKHQsRXJyb3IpfX0odCkpcmV0dXJue21lc3NhZ2U6dC5tZXNzYWdlLG5hbWU6dC5uYW1lLHN0YWNrOnQuc3RhY2ssLi4uTyh0KX07aWYobj10LCJ1bmRlZmluZWQiIT10eXBlb2YgRXZlbnQmJlMobixFdmVudCkpe2NvbnN0IG49e3R5cGU6dC50eXBlLHRhcmdldDpJKHQudGFyZ2V0KSxjdXJyZW50VGFyZ2V0OkkodC5jdXJyZW50VGFyZ2V0KSwuLi5PKHQpfTtyZXR1cm4idW5kZWZpbmVkIiE9dHlwZW9mIEN1c3RvbUV2ZW50JiZTKHQsQ3VzdG9tRXZlbnQpJiYobi5kZXRhaWw9dC5kZXRhaWwpLG59cmV0dXJuIHQ7dmFyIG59ZnVuY3Rpb24gSSh0KXt0cnl7cmV0dXJuIG49dCwidW5kZWZpbmVkIiE9dHlwZW9mIEVsZW1lbnQmJlMobixFbGVtZW50KT9mdW5jdGlvbih0LG49e30pe2lmKCF0KXJldHVybiI8dW5rbm93bj4iO3RyeXtsZXQgZT10O2NvbnN0IHI9NSxvPVtdO2xldCBzPTAsaT0wO2NvbnN0IGM9IiA+ICIsdT1jLmxlbmd0aDtsZXQgYTtjb25zdCBmPUFycmF5LmlzQXJyYXkobik/bjpuLmtleUF0dHJzLGg9IUFycmF5LmlzQXJyYXkobikmJm4ubWF4U3RyaW5nTGVuZ3RofHxFO2Zvcig7ZSYmcysrPHImJihhPXgoZSxmKSwhKCJodG1sIj09PWF8fHM+MSYmaStvLmxlbmd0aCp1K2EubGVuZ3RoPj1oKSk7KW8ucHVzaChhKSxpKz1hLmxlbmd0aCxlPWUucGFyZW50Tm9kZTtyZXR1cm4gby5yZXZlcnNlKCkuam9pbihjKX1jYXRjaCh0KXtyZXR1cm4iPHVua25vd24+In19KHQpOk9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbCh0KX1jYXRjaCh0KXtyZXR1cm4iPHVua25vd24+In12YXIgbn1mdW5jdGlvbiBPKHQpe2lmKCJvYmplY3QiPT10eXBlb2YgdCYmbnVsbCE9PXQpe2NvbnN0IG49e307Zm9yKGNvbnN0IGUgaW4gdClPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodCxlKSYmKG5bZV09dFtlXSk7cmV0dXJuIG59cmV0dXJue319ZnVuY3Rpb24gRCh0PWZ1bmN0aW9uKCl7Y29uc3QgdD1sO3JldHVybiB0LmNyeXB0b3x8dC5tc0NyeXB0b30oKSl7bGV0IG49KCk9PjE2Kk1hdGgucmFuZG9tKCk7dHJ5e2lmKHQ/LnJhbmRvbVVVSUQpcmV0dXJuIHQucmFuZG9tVVVJRCgpLnJlcGxhY2UoLy0vZywiIik7dD8uZ2V0UmFuZG9tVmFsdWVzJiYobj0oKT0+e2NvbnN0IG49bmV3IFVpbnQ4QXJyYXkoMSk7cmV0dXJuIHQuZ2V0UmFuZG9tVmFsdWVzKG4pLG5bMF19KX1jYXRjaCh0KXt9cmV0dXJuKFsxZTddKzFlMys0ZTMrOGUzKzFlMTEpLnJlcGxhY2UoL1swMThdL2csKHQ9Pih0XigxNSZuKCkpPj50LzQpLnRvU3RyaW5nKDE2KSkpfWNvbnN0IEE9MWUzO2Z1bmN0aW9uIFAoKXtyZXR1cm4gRGF0ZS5ub3coKS9BfWNvbnN0IFU9ZnVuY3Rpb24oKXtjb25zdHtwZXJmb3JtYW5jZTp0fT1sO2lmKCF0Py5ub3cpcmV0dXJuIFA7Y29uc3Qgbj1EYXRlLm5vdygpLXQubm93KCksZT1udWxsPT10LnRpbWVPcmlnaW4/bjp0LnRpbWVPcmlnaW47cmV0dXJuKCk9PihlK3Qubm93KCkpL0F9KCk7ZnVuY3Rpb24gTSh0KXtjb25zdCBuPVUoKSxlPXtzaWQ6RCgpLGluaXQ6ITAsdGltZXN0YW1wOm4sc3RhcnRlZDpuLGR1cmF0aW9uOjAsc3RhdHVzOiJvayIsZXJyb3JzOjAsaWdub3JlRHVyYXRpb246ITEsdG9KU09OOigpPT5mdW5jdGlvbih0KXtyZXR1cm57c2lkOmAke3Quc2lkfWAsaW5pdDp0LmluaXQsc3RhcnRlZDpuZXcgRGF0ZSgxZTMqdC5zdGFydGVkKS50b0lTT1N0cmluZygpLHRpbWVzdGFtcDpuZXcgRGF0ZSgxZTMqdC50aW1lc3RhbXApLnRvSVNPU3RyaW5nKCksc3RhdHVzOnQuc3RhdHVzLGVycm9yczp0LmVycm9ycyxkaWQ6Im51bWJlciI9PXR5cGVvZiB0LmRpZHx8InN0cmluZyI9PXR5cGVvZiB0LmRpZD9gJHt0LmRpZH1gOnZvaWQgMCxkdXJhdGlvbjp0LmR1cmF0aW9uLGFibm9ybWFsX21lY2hhbmlzbTp0LmFibm9ybWFsX21lY2hhbmlzbSxhdHRyczp7cmVsZWFzZTp0LnJlbGVhc2UsZW52aXJvbm1lbnQ6dC5lbnZpcm9ubWVudCxpcF9hZGRyZXNzOnQuaXBBZGRyZXNzLHVzZXJfYWdlbnQ6dC51c2VyQWdlbnR9fX0oZSl9O3JldHVybiB0JiZMKGUsdCksZX1mdW5jdGlvbiBMKHQsbj17fSl7aWYobi51c2VyJiYoIXQuaXBBZGRyZXNzJiZuLnVzZXIuaXBfYWRkcmVzcyYmKHQuaXBBZGRyZXNzPW4udXNlci5pcF9hZGRyZXNzKSx0LmRpZHx8bi5kaWR8fCh0LmRpZD1uLnVzZXIuaWR8fG4udXNlci5lbWFpbHx8bi51c2VyLnVzZXJuYW1lKSksdC50aW1lc3RhbXA9bi50aW1lc3RhbXB8fFUoKSxuLmFibm9ybWFsX21lY2hhbmlzbSYmKHQuYWJub3JtYWxfbWVjaGFuaXNtPW4uYWJub3JtYWxfbWVjaGFuaXNtKSxuLmlnbm9yZUR1cmF0aW9uJiYodC5pZ25vcmVEdXJhdGlvbj1uLmlnbm9yZUR1cmF0aW9uKSxuLnNpZCYmKHQuc2lkPTMyPT09bi5zaWQubGVuZ3RoP24uc2lkOkQoKSksdm9pZCAwIT09bi5pbml0JiYodC5pbml0PW4uaW5pdCksIXQuZGlkJiZuLmRpZCYmKHQuZGlkPWAke24uZGlkfWApLCJudW1iZXIiPT10eXBlb2Ygbi5zdGFydGVkJiYodC5zdGFydGVkPW4uc3RhcnRlZCksdC5pZ25vcmVEdXJhdGlvbil0LmR1cmF0aW9uPXZvaWQgMDtlbHNlIGlmKCJudW1iZXIiPT10eXBlb2Ygbi5kdXJhdGlvbil0LmR1cmF0aW9uPW4uZHVyYXRpb247ZWxzZXtjb25zdCBuPXQudGltZXN0YW1wLXQuc3RhcnRlZDt0LmR1cmF0aW9uPW4+PTA/bjowfW4ucmVsZWFzZSYmKHQucmVsZWFzZT1uLnJlbGVhc2UpLG4uZW52aXJvbm1lbnQmJih0LmVudmlyb25tZW50PW4uZW52aXJvbm1lbnQpLCF0LmlwQWRkcmVzcyYmbi5pcEFkZHJlc3MmJih0LmlwQWRkcmVzcz1uLmlwQWRkcmVzcyksIXQudXNlckFnZW50JiZuLnVzZXJBZ2VudCYmKHQudXNlckFnZW50PW4udXNlckFnZW50KSwibnVtYmVyIj09dHlwZW9mIG4uZXJyb3JzJiYodC5lcnJvcnM9bi5lcnJvcnMpLG4uc3RhdHVzJiYodC5zdGF0dXM9bi5zdGF0dXMpfWZ1bmN0aW9uIEIodCxuLGU9Mil7aWYoIW58fCJvYmplY3QiIT10eXBlb2Ygbnx8ZTw9MClyZXR1cm4gbjtpZih0JiYwPT09T2JqZWN0LmtleXMobikubGVuZ3RoKXJldHVybiB0O2NvbnN0IHI9ey4uLnR9O2Zvcihjb25zdCB0IGluIG4pT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG4sdCkmJihyW3RdPUIoclt0XSxuW3RdLGUtMSkpO3JldHVybiByfWNvbnN0IEc9Il9zZW50cnlTcGFuIjtmdW5jdGlvbiBKKHQsbil7bj9mdW5jdGlvbih0LG4sZSl7dHJ5e09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LG4se3ZhbHVlOmUsd3JpdGFibGU6ITAsY29uZmlndXJhYmxlOiEwfSl9Y2F0Y2goZSl7aCYmay5sb2coYEZhaWxlZCB0byBhZGQgbm9uLWVudW1lcmFibGUgcHJvcGVydHkgIiR7bn0iIHRvIG9iamVjdGAsdCl9fSh0LEcsbik6ZGVsZXRlIHRbR119ZnVuY3Rpb24geih0KXtyZXR1cm4gdFtHXX1mdW5jdGlvbiBIKCl7cmV0dXJuIEQoKX1mdW5jdGlvbiBGKCl7cmV0dXJuIEQoKS5zdWJzdHJpbmcoMTYpfWNsYXNzIFd7Y29uc3RydWN0b3IoKXt0aGlzLnQ9ITEsdGhpcy5vPVtdLHRoaXMuaT1bXSx0aGlzLnU9W10sdGhpcy5oPVtdLHRoaXMucD17fSx0aGlzLmw9e30sdGhpcy5tPXt9LHRoaXMuXz17fSx0aGlzLnY9e30sdGhpcy5TPXt0cmFjZUlkOkgoKSxzYW1wbGVSYW5kOk1hdGgucmFuZG9tKCl9fWNsb25lKCl7Y29uc3QgdD1uZXcgVztyZXR1cm4gdC51PVsuLi50aGlzLnVdLHQubD17Li4udGhpcy5sfSx0Lm09ey4uLnRoaXMubX0sdC5fPXsuLi50aGlzLl99LHRoaXMuXy5mbGFncyYmKHQuXy5mbGFncz17dmFsdWVzOlsuLi50aGlzLl8uZmxhZ3MudmFsdWVzXX0pLHQucD10aGlzLnAsdC5OPXRoaXMuTix0LkM9dGhpcy5DLHQuVD10aGlzLlQsdC5rPXRoaXMuayx0Lmk9Wy4uLnRoaXMuaV0sdC5oPVsuLi50aGlzLmhdLHQudj17Li4udGhpcy52fSx0LlM9ey4uLnRoaXMuU30sdC5qPXRoaXMuaix0LlI9dGhpcy5SLEoodCx6KHRoaXMpKSx0fXNldENsaWVudCh0KXt0aGlzLmo9dH1zZXRMYXN0RXZlbnRJZCh0KXt0aGlzLlI9dH1nZXRDbGllbnQoKXtyZXR1cm4gdGhpcy5qfWxhc3RFdmVudElkKCl7cmV0dXJuIHRoaXMuUn1hZGRTY29wZUxpc3RlbmVyKHQpe3RoaXMuby5wdXNoKHQpfWFkZEV2ZW50UHJvY2Vzc29yKHQpe3JldHVybiB0aGlzLmkucHVzaCh0KSx0aGlzfXNldFVzZXIodCl7cmV0dXJuIHRoaXMucD10fHx7ZW1haWw6dm9pZCAwLGlkOnZvaWQgMCxpcF9hZGRyZXNzOnZvaWQgMCx1c2VybmFtZTp2b2lkIDB9LHRoaXMuQyYmTCh0aGlzLkMse3VzZXI6dH0pLHRoaXMuSSgpLHRoaXN9Z2V0VXNlcigpe3JldHVybiB0aGlzLnB9c2V0VGFncyh0KXtyZXR1cm4gdGhpcy5sPXsuLi50aGlzLmwsLi4udH0sdGhpcy5JKCksdGhpc31zZXRUYWcodCxuKXtyZXR1cm4gdGhpcy5sPXsuLi50aGlzLmwsW3RdOm59LHRoaXMuSSgpLHRoaXN9c2V0RXh0cmFzKHQpe3JldHVybiB0aGlzLm09ey4uLnRoaXMubSwuLi50fSx0aGlzLkkoKSx0aGlzfXNldEV4dHJhKHQsbil7cmV0dXJuIHRoaXMubT17Li4udGhpcy5tLFt0XTpufSx0aGlzLkkoKSx0aGlzfXNldEZpbmdlcnByaW50KHQpe3JldHVybiB0aGlzLms9dCx0aGlzLkkoKSx0aGlzfXNldExldmVsKHQpe3JldHVybiB0aGlzLk49dCx0aGlzLkkoKSx0aGlzfXNldFRyYW5zYWN0aW9uTmFtZSh0KXtyZXR1cm4gdGhpcy5UPXQsdGhpcy5JKCksdGhpc31zZXRDb250ZXh0KHQsbil7cmV0dXJuIG51bGw9PT1uP2RlbGV0ZSB0aGlzLl9bdF06dGhpcy5fW3RdPW4sdGhpcy5JKCksdGhpc31zZXRTZXNzaW9uKHQpe3JldHVybiB0P3RoaXMuQz10OmRlbGV0ZSB0aGlzLkMsdGhpcy5JKCksdGhpc31nZXRTZXNzaW9uKCl7cmV0dXJuIHRoaXMuQ311cGRhdGUodCl7aWYoIXQpcmV0dXJuIHRoaXM7Y29uc3Qgbj0iZnVuY3Rpb24iPT10eXBlb2YgdD90KHRoaXMpOnQsZT1uIGluc3RhbmNlb2YgVz9uLmdldFNjb3BlRGF0YSgpOnYobik/dDp2b2lkIDAse3RhZ3M6cixleHRyYTpvLHVzZXI6cyxjb250ZXh0czppLGxldmVsOmMsZmluZ2VycHJpbnQ6dT1bXSxwcm9wYWdhdGlvbkNvbnRleHQ6YX09ZXx8e307cmV0dXJuIHRoaXMubD17Li4udGhpcy5sLC4uLnJ9LHRoaXMubT17Li4udGhpcy5tLC4uLm99LHRoaXMuXz17Li4udGhpcy5fLC4uLml9LHMmJk9iamVjdC5rZXlzKHMpLmxlbmd0aCYmKHRoaXMucD1zKSxjJiYodGhpcy5OPWMpLHUubGVuZ3RoJiYodGhpcy5rPXUpLGEmJih0aGlzLlM9YSksdGhpc31jbGVhcigpe3JldHVybiB0aGlzLnU9W10sdGhpcy5sPXt9LHRoaXMubT17fSx0aGlzLnA9e30sdGhpcy5fPXt9LHRoaXMuTj12b2lkIDAsdGhpcy5UPXZvaWQgMCx0aGlzLms9dm9pZCAwLHRoaXMuQz12b2lkIDAsSih0aGlzLHZvaWQgMCksdGhpcy5oPVtdLHRoaXMuc2V0UHJvcGFnYXRpb25Db250ZXh0KHt0cmFjZUlkOkgoKSxzYW1wbGVSYW5kOk1hdGgucmFuZG9tKCl9KSx0aGlzLkkoKSx0aGlzfWFkZEJyZWFkY3J1bWIodCxuKXtjb25zdCBlPSJudW1iZXIiPT10eXBlb2Ygbj9uOjEwMDtpZihlPD0wKXJldHVybiB0aGlzO2NvbnN0IHI9e3RpbWVzdGFtcDpQKCksLi4udCxtZXNzYWdlOnQubWVzc2FnZT9qKHQubWVzc2FnZSwyMDQ4KTp0Lm1lc3NhZ2V9O3JldHVybiB0aGlzLnUucHVzaChyKSx0aGlzLnUubGVuZ3RoPmUmJih0aGlzLnU9dGhpcy51LnNsaWNlKC1lKSx0aGlzLmo/LnJlY29yZERyb3BwZWRFdmVudCgiYnVmZmVyX292ZXJmbG93IiwibG9nX2l0ZW0iKSksdGhpcy5JKCksdGhpc31nZXRMYXN0QnJlYWRjcnVtYigpe3JldHVybiB0aGlzLnVbdGhpcy51Lmxlbmd0aC0xXX1jbGVhckJyZWFkY3J1bWJzKCl7cmV0dXJuIHRoaXMudT1bXSx0aGlzLkkoKSx0aGlzfWFkZEF0dGFjaG1lbnQodCl7cmV0dXJuIHRoaXMuaC5wdXNoKHQpLHRoaXN9Y2xlYXJBdHRhY2htZW50cygpe3JldHVybiB0aGlzLmg9W10sdGhpc31nZXRTY29wZURhdGEoKXtyZXR1cm57YnJlYWRjcnVtYnM6dGhpcy51LGF0dGFjaG1lbnRzOnRoaXMuaCxjb250ZXh0czp0aGlzLl8sdGFnczp0aGlzLmwsZXh0cmE6dGhpcy5tLHVzZXI6dGhpcy5wLGxldmVsOnRoaXMuTixmaW5nZXJwcmludDp0aGlzLmt8fFtdLGV2ZW50UHJvY2Vzc29yczp0aGlzLmkscHJvcGFnYXRpb25Db250ZXh0OnRoaXMuUyxzZGtQcm9jZXNzaW5nTWV0YWRhdGE6dGhpcy52LHRyYW5zYWN0aW9uTmFtZTp0aGlzLlQsc3Bhbjp6KHRoaXMpfX1zZXRTREtQcm9jZXNzaW5nTWV0YWRhdGEodCl7cmV0dXJuIHRoaXMudj1CKHRoaXMudix0LDIpLHRoaXN9c2V0UHJvcGFnYXRpb25Db250ZXh0KHQpe3JldHVybiB0aGlzLlM9dCx0aGlzfWdldFByb3BhZ2F0aW9uQ29udGV4dCgpe3JldHVybiB0aGlzLlN9Y2FwdHVyZUV4Y2VwdGlvbih0LG4pe2NvbnN0IGU9bj8uZXZlbnRfaWR8fEQoKTtpZighdGhpcy5qKXJldHVybiBrLndhcm4oIk5vIGNsaWVudCBjb25maWd1cmVkIG9uIHNjb3BlIC0gd2lsbCBub3QgY2FwdHVyZSBleGNlcHRpb24hIiksZTtjb25zdCByPW5ldyBFcnJvcigiU2VudHJ5IHN5bnRoZXRpY0V4Y2VwdGlvbiIpO3JldHVybiB0aGlzLmouY2FwdHVyZUV4Y2VwdGlvbih0LHtvcmlnaW5hbEV4Y2VwdGlvbjp0LHN5bnRoZXRpY0V4Y2VwdGlvbjpyLC4uLm4sZXZlbnRfaWQ6ZX0sdGhpcyksZX1jYXB0dXJlTWVzc2FnZSh0LG4sZSl7Y29uc3Qgcj1lPy5ldmVudF9pZHx8RCgpO2lmKCF0aGlzLmopcmV0dXJuIGsud2FybigiTm8gY2xpZW50IGNvbmZpZ3VyZWQgb24gc2NvcGUgLSB3aWxsIG5vdCBjYXB0dXJlIG1lc3NhZ2UhIikscjtjb25zdCBvPW5ldyBFcnJvcih0KTtyZXR1cm4gdGhpcy5qLmNhcHR1cmVNZXNzYWdlKHQsbix7b3JpZ2luYWxFeGNlcHRpb246dCxzeW50aGV0aWNFeGNlcHRpb246bywuLi5lLGV2ZW50X2lkOnJ9LHRoaXMpLHJ9Y2FwdHVyZUV2ZW50KHQsbil7Y29uc3QgZT1uPy5ldmVudF9pZHx8RCgpO3JldHVybiB0aGlzLmo/KHRoaXMuai5jYXB0dXJlRXZlbnQodCx7Li4ubixldmVudF9pZDplfSx0aGlzKSxlKTooay53YXJuKCJObyBjbGllbnQgY29uZmlndXJlZCBvbiBzY29wZSAtIHdpbGwgbm90IGNhcHR1cmUgZXZlbnQhIiksZSl9SSgpe3RoaXMudHx8KHRoaXMudD0hMCx0aGlzLm8uZm9yRWFjaCgodD0+e3QodGhpcyl9KSksdGhpcy50PSExKX19Y2xhc3MgWXtjb25zdHJ1Y3Rvcih0LG4pe2xldCBlLHI7ZT10fHxuZXcgVyxyPW58fG5ldyBXLHRoaXMuTz1be3Njb3BlOmV9XSx0aGlzLkQ9cn13aXRoU2NvcGUodCl7Y29uc3Qgbj10aGlzLkEoKTtsZXQgZTt0cnl7ZT10KG4pfWNhdGNoKHQpe3Rocm93IHRoaXMuUCgpLHR9cmV0dXJuIHcoZSk/ZS50aGVuKCh0PT4odGhpcy5QKCksdCkpLCh0PT57dGhyb3cgdGhpcy5QKCksdH0pKToodGhpcy5QKCksZSl9Z2V0Q2xpZW50KCl7cmV0dXJuIHRoaXMuZ2V0U3RhY2tUb3AoKS5jbGllbnR9Z2V0U2NvcGUoKXtyZXR1cm4gdGhpcy5nZXRTdGFja1RvcCgpLnNjb3BlfWdldElzb2xhdGlvblNjb3BlKCl7cmV0dXJuIHRoaXMuRH1nZXRTdGFja1RvcCgpe3JldHVybiB0aGlzLk9bdGhpcy5PLmxlbmd0aC0xXX1BKCl7Y29uc3QgdD10aGlzLmdldFNjb3BlKCkuY2xvbmUoKTtyZXR1cm4gdGhpcy5PLnB1c2goe2NsaWVudDp0aGlzLmdldENsaWVudCgpLHNjb3BlOnR9KSx0fVAoKXtyZXR1cm4hKHRoaXMuTy5sZW5ndGg8PTEpJiYhIXRoaXMuTy5wb3AoKX19ZnVuY3Rpb24gSygpe2NvbnN0IHQ9bShkKCkpO3JldHVybiB0LnN0YWNrPXQuc3RhY2t8fG5ldyBZKGcoImRlZmF1bHRDdXJyZW50U2NvcGUiLCgoKT0+bmV3IFcpKSxnKCJkZWZhdWx0SXNvbGF0aW9uU2NvcGUiLCgoKT0+bmV3IFcpKSl9ZnVuY3Rpb24gVih0KXtyZXR1cm4gSygpLndpdGhTY29wZSh0KX1mdW5jdGlvbiBaKHQsbil7Y29uc3QgZT1LKCk7cmV0dXJuIGUud2l0aFNjb3BlKCgoKT0+KGUuZ2V0U3RhY2tUb3AoKS5zY29wZT10LG4odCkpKSl9ZnVuY3Rpb24gcSh0KXtyZXR1cm4gSygpLndpdGhTY29wZSgoKCk9PnQoSygpLmdldElzb2xhdGlvblNjb3BlKCkpKSl9ZnVuY3Rpb24gUSh0KXtjb25zdCBuPW0odCk7cmV0dXJuIG4uYWNzP24uYWNzOnt3aXRoSXNvbGF0aW9uU2NvcGU6cSx3aXRoU2NvcGU6Vix3aXRoU2V0U2NvcGU6Wix3aXRoU2V0SXNvbGF0aW9uU2NvcGU6KHQsbik9PnEobiksZ2V0Q3VycmVudFNjb3BlOigpPT5LKCkuZ2V0U2NvcGUoKSxnZXRJc29sYXRpb25TY29wZTooKT0+SygpLmdldElzb2xhdGlvblNjb3BlKCl9fWZ1bmN0aW9uIFgoKXtyZXR1cm4gUShkKCkpLmdldEN1cnJlbnRTY29wZSgpLmdldENsaWVudCgpfWNvbnN0IHR0PSJzZW50cnkuc291cmNlIixudD0ic2VudHJ5LnNhbXBsZV9yYXRlIixldD0ic2VudHJ5LnByZXZpb3VzX3RyYWNlX3NhbXBsZV9yYXRlIixydD0ic2VudHJ5Lm9wIixvdD0ic2VudHJ5Lm9yaWdpbiIsc3Q9MCxpdD0xLGN0PSJfc2VudHJ5U2NvcGUiLHV0PSJfc2VudHJ5SXNvbGF0aW9uU2NvcGUiO2Z1bmN0aW9uIGF0KHQpe3JldHVybntzY29wZTp0W2N0XSxpc29sYXRpb25TY29wZTp0W3V0XX19Y29uc3QgZnQ9InNlbnRyeS0iLGh0PS9ec2VudHJ5LS87ZnVuY3Rpb24gcHQodCl7Y29uc3Qgbj1mdW5jdGlvbih0KXtpZighdHx8IV8odCkmJiFBcnJheS5pc0FycmF5KHQpKXJldHVybjtpZihBcnJheS5pc0FycmF5KHQpKXJldHVybiB0LnJlZHVjZSgoKHQsbik9Pntjb25zdCBlPWx0KG4pO3JldHVybiBPYmplY3QuZW50cmllcyhlKS5mb3JFYWNoKCgoW24sZV0pPT57dFtuXT1lfSkpLHR9KSx7fSk7cmV0dXJuIGx0KHQpfSh0KTtpZighbilyZXR1cm47Y29uc3QgZT1PYmplY3QuZW50cmllcyhuKS5yZWR1Y2UoKCh0LFtuLGVdKT0+e2lmKG4ubWF0Y2goaHQpKXt0W24uc2xpY2UoZnQubGVuZ3RoKV09ZX1yZXR1cm4gdH0pLHt9KTtyZXR1cm4gT2JqZWN0LmtleXMoZSkubGVuZ3RoPjA/ZTp2b2lkIDB9ZnVuY3Rpb24gbHQodCl7cmV0dXJuIHQuc3BsaXQoIiwiKS5tYXAoKHQ9PnQuc3BsaXQoIj0iKS5tYXAoKHQ9Pnt0cnl7cmV0dXJuIGRlY29kZVVSSUNvbXBvbmVudCh0LnRyaW0oKSl9Y2F0Y2h7cmV0dXJufX0pKSkpLnJlZHVjZSgoKHQsW24sZV0pPT4obiYmZSYmKHRbbl09ZSksdCkpLHt9KX1jb25zdCBkdD0xO2Z1bmN0aW9uIG10KHQpe2NvbnN0e3NwYW5JZDpuLHRyYWNlSWQ6ZSxpc1JlbW90ZTpyfT10LnNwYW5Db250ZXh0KCksbz1yP246X3QodCkucGFyZW50X3NwYW5faWQscz1hdCh0KS5zY29wZTtyZXR1cm57cGFyZW50X3NwYW5faWQ6byxzcGFuX2lkOnI/cz8uZ2V0UHJvcGFnYXRpb25Db250ZXh0KCkucHJvcGFnYXRpb25TcGFuSWR8fEYoKTpuLHRyYWNlX2lkOmV9fWZ1bmN0aW9uIGd0KHQpe3JldHVybiB0JiZ0Lmxlbmd0aD4wP3QubWFwKCgoe2NvbnRleHQ6e3NwYW5JZDp0LHRyYWNlSWQ6bix0cmFjZUZsYWdzOmUsLi4ucn0sYXR0cmlidXRlczpvfSk9Pih7c3Bhbl9pZDp0LHRyYWNlX2lkOm4sc2FtcGxlZDplPT09ZHQsYXR0cmlidXRlczpvLC4uLnJ9KSkpOnZvaWQgMH1mdW5jdGlvbiB5dCh0KXtyZXR1cm4ibnVtYmVyIj09dHlwZW9mIHQ/YnQodCk6QXJyYXkuaXNBcnJheSh0KT90WzBdK3RbMV0vMWU5OnQgaW5zdGFuY2VvZiBEYXRlP2J0KHQuZ2V0VGltZSgpKTpVKCl9ZnVuY3Rpb24gYnQodCl7cmV0dXJuIHQ+OTk5OTk5OTk5OT90LzFlMzp0fWZ1bmN0aW9uIF90KHQpe2lmKGZ1bmN0aW9uKHQpe3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiB0LmdldFNwYW5KU09OfSh0KSlyZXR1cm4gdC5nZXRTcGFuSlNPTigpO2NvbnN0e3NwYW5JZDpuLHRyYWNlSWQ6ZX09dC5zcGFuQ29udGV4dCgpO2lmKGZ1bmN0aW9uKHQpe2NvbnN0IG49dDtyZXR1cm4hIShuLmF0dHJpYnV0ZXMmJm4uc3RhcnRUaW1lJiZuLm5hbWUmJm4uZW5kVGltZSYmbi5zdGF0dXMpfSh0KSl7Y29uc3R7YXR0cmlidXRlczpyLHN0YXJ0VGltZTpvLG5hbWU6cyxlbmRUaW1lOmksc3RhdHVzOmMsbGlua3M6dX09dDtyZXR1cm57c3Bhbl9pZDpuLHRyYWNlX2lkOmUsZGF0YTpyLGRlc2NyaXB0aW9uOnMscGFyZW50X3NwYW5faWQ6InBhcmVudFNwYW5JZCJpbiB0P3QucGFyZW50U3BhbklkOiJwYXJlbnRTcGFuQ29udGV4dCJpbiB0P3QucGFyZW50U3BhbkNvbnRleHQ/LnNwYW5JZDp2b2lkIDAsc3RhcnRfdGltZXN0YW1wOnl0KG8pLHRpbWVzdGFtcDp5dChpKXx8dm9pZCAwLHN0YXR1czp2dChjKSxvcDpyW3J0XSxvcmlnaW46cltvdF0sbGlua3M6Z3QodSl9fXJldHVybntzcGFuX2lkOm4sdHJhY2VfaWQ6ZSxzdGFydF90aW1lc3RhbXA6MCxkYXRhOnt9fX1mdW5jdGlvbiB2dCh0KXtpZih0JiZ0LmNvZGUhPT1zdClyZXR1cm4gdC5jb2RlPT09aXQ/Im9rIjp0Lm1lc3NhZ2V8fCJ1bmtub3duX2Vycm9yIn1jb25zdCB3dD0iX3NlbnRyeVJvb3RTcGFuIjtmdW5jdGlvbiBTdCh0KXtyZXR1cm4gdFt3dF18fHR9Y29uc3QgJHQ9NTAsRXQ9Ij8iLHh0PS9jYXB0dXJlTWVzc2FnZXxjYXB0dXJlRXhjZXB0aW9uLztmdW5jdGlvbiBOdCh0KXtyZXR1cm4gdFt0Lmxlbmd0aC0xXXx8e319Y29uc3QgQ3Q9Ijxhbm9ueW1vdXM+Ijtjb25zdCBUdD0icHJvZHVjdGlvbiIsa3Q9L15vKFxkKylcLi87ZnVuY3Rpb24ganQodCxuPSExKXtjb25zdHtob3N0OmUscGF0aDpyLHBhc3M6byxwb3J0OnMscHJvamVjdElkOmkscHJvdG9jb2w6YyxwdWJsaWNLZXk6dX09dDtyZXR1cm5gJHtjfTovLyR7dX0ke24mJm8/YDoke299YDoiIn1AJHtlfSR7cz9gOiR7c31gOiIifS8ke3I/YCR7cn0vYDpyfSR7aX1gfWNvbnN0IFJ0PSJfZnJvemVuRHNjIjtmdW5jdGlvbiBJdCh0LG4pe2NvbnN0IGU9bi5nZXRPcHRpb25zKCkse3B1YmxpY0tleTpyLGhvc3Q6b309bi5nZXREc24oKXx8e307bGV0IHM7ZS5vcmdJZD9zPVN0cmluZyhlLm9yZ0lkKTpvJiYocz1mdW5jdGlvbih0KXtjb25zdCBuPXQubWF0Y2goa3QpO3JldHVybiBuPy5bMV19KG8pKTtjb25zdCBpPXtlbnZpcm9ubWVudDplLmVudmlyb25tZW50fHxUdCxyZWxlYXNlOmUucmVsZWFzZSxwdWJsaWNfa2V5OnIsdHJhY2VfaWQ6dCxvcmdfaWQ6c307cmV0dXJuIG4uZW1pdCgiY3JlYXRlRHNjIixpKSxpfWZ1bmN0aW9uIE90KHQpe2NvbnN0IG49WCgpO2lmKCFuKXJldHVybnt9O2NvbnN0IGU9U3QodCkscj1fdChlKSxvPXIuZGF0YSxzPWUuc3BhbkNvbnRleHQoKS50cmFjZVN0YXRlLGk9cz8uZ2V0KCJzZW50cnkuc2FtcGxlX3JhdGUiKT8/b1tudF0/P29bZXRdO2Z1bmN0aW9uIGModCl7cmV0dXJuIm51bWJlciIhPXR5cGVvZiBpJiYic3RyaW5nIiE9dHlwZW9mIGl8fCh0LnNhbXBsZV9yYXRlPWAke2l9YCksdH1jb25zdCB1PWVbUnRdO2lmKHUpcmV0dXJuIGModSk7Y29uc3QgYT1zPy5nZXQoInNlbnRyeS5kc2MiKSxmPWEmJnB0KGEpO2lmKGYpcmV0dXJuIGMoZik7Y29uc3QgaD1JdCh0LnNwYW5Db250ZXh0KCkudHJhY2VJZCxuKSxwPW9bdHRdLGw9ci5kZXNjcmlwdGlvbjtyZXR1cm4idXJsIiE9PXAmJmwmJihoLnRyYW5zYWN0aW9uPWwpLGZ1bmN0aW9uKHQpe2lmKCJib29sZWFuIj09dHlwZW9mIF9fU0VOVFJZX1RSQUNJTkdfXyYmIV9fU0VOVFJZX1RSQUNJTkdfXylyZXR1cm4hMTtjb25zdCBuPXR8fFgoKT8uZ2V0T3B0aW9ucygpO3JldHVybiEoIW58fG51bGw9PW4udHJhY2VzU2FtcGxlUmF0ZSYmIW4udHJhY2VzU2FtcGxlcil9KCkmJihoLnNhbXBsZWQ9U3RyaW5nKGZ1bmN0aW9uKHQpe2NvbnN0e3RyYWNlRmxhZ3M6bn09dC5zcGFuQ29udGV4dCgpO3JldHVybiBuPT09ZHR9KGUpKSxoLnNhbXBsZV9yYW5kPXM/LmdldCgic2VudHJ5LnNhbXBsZV9yYW5kIik/P2F0KGUpLnNjb3BlPy5nZXRQcm9wYWdhdGlvbkNvbnRleHQoKS5zYW1wbGVSYW5kLnRvU3RyaW5nKCkpLGMoaCksbi5lbWl0KCJjcmVhdGVEc2MiLGgsZSksaH1mdW5jdGlvbiBEdCh0LG49MTAwLGU9MS8wKXt0cnl7cmV0dXJuIEF0KCIiLHQsbixlKX1jYXRjaCh0KXtyZXR1cm57RVJST1I6YCoqbm9uLXNlcmlhbGl6YWJsZSoqICgke3R9KWB9fX1mdW5jdGlvbiBBdCh0LG4sZT0xLzAscj0xLzAsbz1mdW5jdGlvbigpe2NvbnN0IHQ9bmV3IFdlYWtTZXQ7ZnVuY3Rpb24gbihuKXtyZXR1cm4hIXQuaGFzKG4pfHwodC5hZGQobiksITEpfWZ1bmN0aW9uIGUobil7dC5kZWxldGUobil9cmV0dXJuW24sZV19KCkpe2NvbnN0W3MsaV09bztpZihudWxsPT1ufHxbImJvb2xlYW4iLCJzdHJpbmciXS5pbmNsdWRlcyh0eXBlb2Ygbil8fCJudW1iZXIiPT10eXBlb2YgbiYmTnVtYmVyLmlzRmluaXRlKG4pKXJldHVybiBuO2NvbnN0IGM9ZnVuY3Rpb24odCxuKXt0cnl7aWYoImRvbWFpbiI9PT10JiZuJiYib2JqZWN0Ij09dHlwZW9mIG4mJm4uVSlyZXR1cm4iW0RvbWFpbl0iO2lmKCJkb21haW5FbWl0dGVyIj09PXQpcmV0dXJuIltEb21haW5FbWl0dGVyXSI7aWYoInVuZGVmaW5lZCIhPXR5cGVvZiBnbG9iYWwmJm49PT1nbG9iYWwpcmV0dXJuIltHbG9iYWxdIjtpZigidW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdyYmbj09PXdpbmRvdylyZXR1cm4iW1dpbmRvd10iO2lmKCJ1bmRlZmluZWQiIT10eXBlb2YgZG9jdW1lbnQmJm49PT1kb2N1bWVudClyZXR1cm4iW0RvY3VtZW50XSI7aWYoIm9iamVjdCI9PXR5cGVvZihlPW4pJiZudWxsIT09ZSYmKGUuX19pc1Z1ZXx8ZS5NKSlyZXR1cm4iW1Z1ZVZpZXdNb2RlbF0iO2lmKGZ1bmN0aW9uKHQpe3JldHVybiB2KHQpJiYibmF0aXZlRXZlbnQiaW4gdCYmInByZXZlbnREZWZhdWx0ImluIHQmJiJzdG9wUHJvcGFnYXRpb24iaW4gdH0obikpcmV0dXJuIltTeW50aGV0aWNFdmVudF0iO2lmKCJudW1iZXIiPT10eXBlb2YgbiYmIU51bWJlci5pc0Zpbml0ZShuKSlyZXR1cm5gWyR7bn1dYDtpZigiZnVuY3Rpb24iPT10eXBlb2YgbilyZXR1cm5gW0Z1bmN0aW9uOiAke2Z1bmN0aW9uKHQpe3RyeXtyZXR1cm4gdCYmImZ1bmN0aW9uIj09dHlwZW9mIHQmJnQubmFtZXx8Q3R9Y2F0Y2godCl7cmV0dXJuIEN0fX0obil9XWA7aWYoInN5bWJvbCI9PXR5cGVvZiBuKXJldHVybmBbJHtTdHJpbmcobil9XWA7aWYoImJpZ2ludCI9PXR5cGVvZiBuKXJldHVybmBbQmlnSW50OiAke1N0cmluZyhuKX1dYDtjb25zdCByPWZ1bmN0aW9uKHQpe2NvbnN0IG49T2JqZWN0LmdldFByb3RvdHlwZU9mKHQpO3JldHVybiBuPy5jb25zdHJ1Y3Rvcj9uLmNvbnN0cnVjdG9yLm5hbWU6Im51bGwgcHJvdG90eXBlIn0obik7cmV0dXJuL15IVE1MKFx3KilFbGVtZW50JC8udGVzdChyKT9gW0hUTUxFbGVtZW50OiAke3J9XWA6YFtvYmplY3QgJHtyfV1gfWNhdGNoKHQpe3JldHVybmAqKm5vbi1zZXJpYWxpemFibGUqKiAoJHt0fSlgfXZhciBlfSh0LG4pO2lmKCFjLnN0YXJ0c1dpdGgoIltvYmplY3QgIikpcmV0dXJuIGM7aWYobi5fX3NlbnRyeV9za2lwX25vcm1hbGl6YXRpb25fXylyZXR1cm4gbjtjb25zdCB1PSJudW1iZXIiPT10eXBlb2Ygbi5fX3NlbnRyeV9vdmVycmlkZV9ub3JtYWxpemF0aW9uX2RlcHRoX18/bi5fX3NlbnRyeV9vdmVycmlkZV9ub3JtYWxpemF0aW9uX2RlcHRoX186ZTtpZigwPT09dSlyZXR1cm4gYy5yZXBsYWNlKCJvYmplY3QgIiwiIik7aWYocyhuKSlyZXR1cm4iW0NpcmN1bGFyIH5dIjtjb25zdCBhPW47aWYoYSYmImZ1bmN0aW9uIj09dHlwZW9mIGEudG9KU09OKXRyeXtyZXR1cm4gQXQoIiIsYS50b0pTT04oKSx1LTEscixvKX1jYXRjaCh0KXt9Y29uc3QgZj1BcnJheS5pc0FycmF5KG4pP1tdOnt9O2xldCBoPTA7Y29uc3QgcD1SKG4pO2Zvcihjb25zdCB0IGluIHApe2lmKCFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocCx0KSljb250aW51ZTtpZihoPj1yKXtmW3RdPSJbTWF4UHJvcGVydGllcyB+XSI7YnJlYWt9Y29uc3Qgbj1wW3RdO2ZbdF09QXQodCxuLHUtMSxyLG8pLGgrK31yZXR1cm4gaShuKSxmfWZ1bmN0aW9uIFB0KHQsbil7Y29uc3QgZT1uLnJlcGxhY2UoL1xcL2csIi8iKS5yZXBsYWNlKC9bfFxce30oKVtcXV4kKyo/Ll0vZywiXFwkJiIpO2xldCByPXQ7dHJ5e3I9ZGVjb2RlVVJJKHQpfWNhdGNoKHQpe31yZXR1cm4gci5yZXBsYWNlKC9cXC9nLCIvIikucmVwbGFjZSgvd2VicGFjazpcLz8vZywiIikucmVwbGFjZShuZXcgUmVnRXhwKGAoZmlsZTovLyk/Lyoke2V9LypgLCJpZyIpLCJhcHA6Ly8vIil9ZnVuY3Rpb24gVXQodCxuPVtdKXtyZXR1cm5bdCxuXX1mdW5jdGlvbiBNdCh0LG4pe2NvbnN0IGU9dFsxXTtmb3IoY29uc3QgdCBvZiBlKXtpZihuKHQsdFswXS50eXBlKSlyZXR1cm4hMH1yZXR1cm4hMX1mdW5jdGlvbiBMdCh0KXtjb25zdCBuPW0obCk7cmV0dXJuIG4uZW5jb2RlUG9seWZpbGw/bi5lbmNvZGVQb2x5ZmlsbCh0KToobmV3IFRleHRFbmNvZGVyKS5lbmNvZGUodCl9ZnVuY3Rpb24gQnQodCl7Y29uc3RbbixlXT10O2xldCByPUpTT04uc3RyaW5naWZ5KG4pO2Z1bmN0aW9uIG8odCl7InN0cmluZyI9PXR5cGVvZiByP3I9InN0cmluZyI9PXR5cGVvZiB0P3IrdDpbTHQociksdF06ci5wdXNoKCJzdHJpbmciPT10eXBlb2YgdD9MdCh0KTp0KX1mb3IoY29uc3QgdCBvZiBlKXtjb25zdFtuLGVdPXQ7aWYobyhgXG4ke0pTT04uc3RyaW5naWZ5KG4pfVxuYCksInN0cmluZyI9PXR5cGVvZiBlfHxlIGluc3RhbmNlb2YgVWludDhBcnJheSlvKGUpO2Vsc2V7bGV0IHQ7dHJ5e3Q9SlNPTi5zdHJpbmdpZnkoZSl9Y2F0Y2gobil7dD1KU09OLnN0cmluZ2lmeShEdChlKSl9byh0KX19cmV0dXJuInN0cmluZyI9PXR5cGVvZiByP3I6ZnVuY3Rpb24odCl7Y29uc3Qgbj10LnJlZHVjZSgoKHQsbik9PnQrbi5sZW5ndGgpLDApLGU9bmV3IFVpbnQ4QXJyYXkobik7bGV0IHI9MDtmb3IoY29uc3QgbiBvZiB0KWUuc2V0KG4scikscis9bi5sZW5ndGg7cmV0dXJuIGV9KHIpfWNvbnN0IEd0PXtzZXNzaW9uOiJzZXNzaW9uIixzZXNzaW9uczoic2Vzc2lvbiIsYXR0YWNobWVudDoiYXR0YWNobWVudCIsdHJhbnNhY3Rpb246InRyYW5zYWN0aW9uIixldmVudDoiZXJyb3IiLGNsaWVudF9yZXBvcnQ6ImludGVybmFsIix1c2VyX3JlcG9ydDoiZGVmYXVsdCIscHJvZmlsZToicHJvZmlsZSIscHJvZmlsZV9jaHVuazoicHJvZmlsZSIscmVwbGF5X2V2ZW50OiJyZXBsYXkiLHJlcGxheV9yZWNvcmRpbmc6InJlcGxheSIsY2hlY2tfaW46Im1vbml0b3IiLGZlZWRiYWNrOiJmZWVkYmFjayIsc3Bhbjoic3BhbiIscmF3X3NlY3VyaXR5OiJzZWN1cml0eSIsbG9nOiJsb2dfaXRlbSJ9O2Z1bmN0aW9uIEp0KHQpe2lmKCF0Py5zZGspcmV0dXJuO2NvbnN0e25hbWU6bix2ZXJzaW9uOmV9PXQuc2RrO3JldHVybntuYW1lOm4sdmVyc2lvbjplfX1mdW5jdGlvbiB6dCh0LG4sZSxyKXtjb25zdCBvPUp0KGUpLHM9dC50eXBlJiYicmVwbGF5X2V2ZW50IiE9PXQudHlwZT90LnR5cGU6ImV2ZW50IjshZnVuY3Rpb24odCxuKXtuJiYodC5zZGs9dC5zZGt8fHt9LHQuc2RrLm5hbWU9dC5zZGsubmFtZXx8bi5uYW1lLHQuc2RrLnZlcnNpb249dC5zZGsudmVyc2lvbnx8bi52ZXJzaW9uLHQuc2RrLmludGVncmF0aW9ucz1bLi4udC5zZGsuaW50ZWdyYXRpb25zfHxbXSwuLi5uLmludGVncmF0aW9uc3x8W11dLHQuc2RrLnBhY2thZ2VzPVsuLi50LnNkay5wYWNrYWdlc3x8W10sLi4ubi5wYWNrYWdlc3x8W11dKX0odCxlPy5zZGspO2NvbnN0IGk9ZnVuY3Rpb24odCxuLGUscil7Y29uc3Qgbz10LnNka1Byb2Nlc3NpbmdNZXRhZGF0YT8uZHluYW1pY1NhbXBsaW5nQ29udGV4dDtyZXR1cm57ZXZlbnRfaWQ6dC5ldmVudF9pZCxzZW50X2F0OihuZXcgRGF0ZSkudG9JU09TdHJpbmcoKSwuLi5uJiZ7c2RrOm59LC4uLiEhZSYmciYme2RzbjpqdChyKX0sLi4ubyYme3RyYWNlOm99fX0odCxvLHIsbik7ZGVsZXRlIHQuc2RrUHJvY2Vzc2luZ01ldGFkYXRhO3JldHVybiBVdChpLFtbe3R5cGU6c30sdF1dKX1jb25zdCBIdD0iX19TRU5UUllfU1VQUFJFU1NfVFJBQ0lOR19fIjtmdW5jdGlvbiBGdCh0KXtjb25zdCBuPVEoZCgpKTtyZXR1cm4gbi5zdXBwcmVzc1RyYWNpbmc/bi5zdXBwcmVzc1RyYWNpbmcodCk6ZnVuY3Rpb24oLi4udCl7Y29uc3Qgbj1RKGQoKSk7aWYoMj09PXQubGVuZ3RoKXtjb25zdFtlLHJdPXQ7cmV0dXJuIGU/bi53aXRoU2V0U2NvcGUoZSxyKTpuLndpdGhTY29wZShyKX1yZXR1cm4gbi53aXRoU2NvcGUodFswXSl9KChuPT4obi5zZXRTREtQcm9jZXNzaW5nTWV0YWRhdGEoe1tIdF06ITB9KSx0KCkpKSl9dmFyIFd0O2Z1bmN0aW9uIFl0KHQpe3JldHVybiBuZXcgS3QoKG49PntuKHQpfSkpfSFmdW5jdGlvbih0KXt0W3QuUEVORElORz0wXT0iUEVORElORyI7dFt0LlJFU09MVkVEPTFdPSJSRVNPTFZFRCI7dFt0LlJFSkVDVEVEPTJdPSJSRUpFQ1RFRCJ9KFd0fHwoV3Q9e30pKTtjbGFzcyBLdHtjb25zdHJ1Y3Rvcih0KXt0aGlzLkw9V3QuUEVORElORyx0aGlzLkI9W10sdGhpcy5HKHQpfXRoZW4odCxuKXtyZXR1cm4gbmV3IEt0KCgoZSxyKT0+e3RoaXMuQi5wdXNoKFshMSxuPT57aWYodCl0cnl7ZSh0KG4pKX1jYXRjaCh0KXtyKHQpfWVsc2UgZShuKX0sdD0+e2lmKG4pdHJ5e2Uobih0KSl9Y2F0Y2godCl7cih0KX1lbHNlIHIodCl9XSksdGhpcy5KKCl9KSl9Y2F0Y2godCl7cmV0dXJuIHRoaXMudGhlbigodD0+dCksdCl9ZmluYWxseSh0KXtyZXR1cm4gbmV3IEt0KCgobixlKT0+e2xldCByLG87cmV0dXJuIHRoaXMudGhlbigobj0+e289ITEscj1uLHQmJnQoKX0pLChuPT57bz0hMCxyPW4sdCYmdCgpfSkpLnRoZW4oKCgpPT57bz9lKHIpOm4ocil9KSl9KSl9Sigpe2lmKHRoaXMuTD09PVd0LlBFTkRJTkcpcmV0dXJuO2NvbnN0IHQ9dGhpcy5CLnNsaWNlKCk7dGhpcy5CPVtdLHQuZm9yRWFjaCgodD0+e3RbMF18fCh0aGlzLkw9PT1XdC5SRVNPTFZFRCYmdFsxXSh0aGlzLkgpLHRoaXMuTD09PVd0LlJFSkVDVEVEJiZ0WzJdKHRoaXMuSCksdFswXT0hMCl9KSl9Ryh0KXtjb25zdCBuPSh0LG4pPT57dGhpcy5MPT09V3QuUEVORElORyYmKHcobik/bi50aGVuKGUscik6KHRoaXMuTD10LHRoaXMuSD1uLHRoaXMuSigpKSl9LGU9dD0+e24oV3QuUkVTT0xWRUQsdCl9LHI9dD0+e24oV3QuUkVKRUNURUQsdCl9O3RyeXt0KGUscil9Y2F0Y2godCl7cih0KX19fWZ1bmN0aW9uIFZ0KHQsbil7Y29uc3R7ZmluZ2VycHJpbnQ6ZSxzcGFuOnIsYnJlYWRjcnVtYnM6byxzZGtQcm9jZXNzaW5nTWV0YWRhdGE6c309bjshZnVuY3Rpb24odCxuKXtjb25zdHtleHRyYTplLHRhZ3M6cix1c2VyOm8sY29udGV4dHM6cyxsZXZlbDppLHRyYW5zYWN0aW9uTmFtZTpjfT1uO09iamVjdC5rZXlzKGUpLmxlbmd0aCYmKHQuZXh0cmE9ey4uLmUsLi4udC5leHRyYX0pO09iamVjdC5rZXlzKHIpLmxlbmd0aCYmKHQudGFncz17Li4uciwuLi50LnRhZ3N9KTtPYmplY3Qua2V5cyhvKS5sZW5ndGgmJih0LnVzZXI9ey4uLm8sLi4udC51c2VyfSk7T2JqZWN0LmtleXMocykubGVuZ3RoJiYodC5jb250ZXh0cz17Li4ucywuLi50LmNvbnRleHRzfSk7aSYmKHQubGV2ZWw9aSk7YyYmInRyYW5zYWN0aW9uIiE9PXQudHlwZSYmKHQudHJhbnNhY3Rpb249Yyl9KHQsbiksciYmZnVuY3Rpb24odCxuKXt0LmNvbnRleHRzPXt0cmFjZTptdChuKSwuLi50LmNvbnRleHRzfSx0LnNka1Byb2Nlc3NpbmdNZXRhZGF0YT17ZHluYW1pY1NhbXBsaW5nQ29udGV4dDpPdChuKSwuLi50LnNka1Byb2Nlc3NpbmdNZXRhZGF0YX07Y29uc3QgZT1TdChuKSxyPV90KGUpLmRlc2NyaXB0aW9uO3ImJiF0LnRyYW5zYWN0aW9uJiYidHJhbnNhY3Rpb24iPT09dC50eXBlJiYodC50cmFuc2FjdGlvbj1yKX0odCxyKSxmdW5jdGlvbih0LG4pe3QuZmluZ2VycHJpbnQ9dC5maW5nZXJwcmludD9BcnJheS5pc0FycmF5KHQuZmluZ2VycHJpbnQpP3QuZmluZ2VycHJpbnQ6W3QuZmluZ2VycHJpbnRdOltdLG4mJih0LmZpbmdlcnByaW50PXQuZmluZ2VycHJpbnQuY29uY2F0KG4pKTt0LmZpbmdlcnByaW50Lmxlbmd0aHx8ZGVsZXRlIHQuZmluZ2VycHJpbnR9KHQsZSksZnVuY3Rpb24odCxuKXtjb25zdCBlPVsuLi50LmJyZWFkY3J1bWJzfHxbXSwuLi5uXTt0LmJyZWFkY3J1bWJzPWUubGVuZ3RoP2U6dm9pZCAwfSh0LG8pLGZ1bmN0aW9uKHQsbil7dC5zZGtQcm9jZXNzaW5nTWV0YWRhdGE9ey4uLnQuc2RrUHJvY2Vzc2luZ01ldGFkYXRhLC4uLm59fSh0LHMpfWNvbnN0IFp0PSI3Ijtjb25zdCBxdD1TeW1ib2wuZm9yKCJTZW50cnlCdWZmZXJGdWxsRXJyb3IiKTtmdW5jdGlvbiBRdCh0KXtjb25zdCBuPVtdO2Z1bmN0aW9uIGUodCl7cmV0dXJuIG4uc3BsaWNlKG4uaW5kZXhPZih0KSwxKVswXXx8UHJvbWlzZS5yZXNvbHZlKHZvaWQgMCl9cmV0dXJueyQ6bixhZGQ6ZnVuY3Rpb24ocil7aWYoISh2b2lkIDA9PT10fHxuLmxlbmd0aDx0KSlyZXR1cm4gbz1xdCxuZXcgS3QoKCh0LG4pPT57bihvKX0pKTt2YXIgbztjb25zdCBzPXIoKTtyZXR1cm4tMT09PW4uaW5kZXhPZihzKSYmbi5wdXNoKHMpLHMudGhlbigoKCk9PmUocykpKS50aGVuKG51bGwsKCgpPT5lKHMpLnRoZW4obnVsbCwoKCk9Pnt9KSkpKSxzfSxkcmFpbjpmdW5jdGlvbih0KXtyZXR1cm4gbmV3IEt0KCgoZSxyKT0+e2xldCBvPW4ubGVuZ3RoO2lmKCFvKXJldHVybiBlKCEwKTtjb25zdCBzPXNldFRpbWVvdXQoKCgpPT57dCYmdD4wJiZlKCExKX0pLHQpO24uZm9yRWFjaCgodD0+e1l0KHQpLnRoZW4oKCgpPT57LS1vfHwoY2xlYXJUaW1lb3V0KHMpLGUoITApKX0pLHIpfSkpfSkpfX19Y29uc3QgWHQ9NmU0O2Z1bmN0aW9uIHRuKHQse3N0YXR1c0NvZGU6bixoZWFkZXJzOmV9LHI9RGF0ZS5ub3coKSl7Y29uc3Qgbz17Li4udH0scz1lPy5bIngtc2VudHJ5LXJhdGUtbGltaXRzIl0saT1lPy5bInJldHJ5LWFmdGVyIl07aWYocylmb3IoY29uc3QgdCBvZiBzLnRyaW0oKS5zcGxpdCgiLCIpKXtjb25zdFtuLGUsLCxzXT10LnNwbGl0KCI6Iiw1KSxpPXBhcnNlSW50KG4sMTApLGM9MWUzKihpc05hTihpKT82MDppKTtpZihlKWZvcihjb25zdCB0IG9mIGUuc3BsaXQoIjsiKSkibWV0cmljX2J1Y2tldCI9PT10JiZzJiYhcy5zcGxpdCgiOyIpLmluY2x1ZGVzKCJjdXN0b20iKXx8KG9bdF09citjKTtlbHNlIG8uYWxsPXIrY31lbHNlIGk/by5hbGw9citmdW5jdGlvbih0LG49RGF0ZS5ub3coKSl7Y29uc3QgZT1wYXJzZUludChgJHt0fWAsMTApO2lmKCFpc05hTihlKSlyZXR1cm4gMWUzKmU7Y29uc3Qgcj1EYXRlLnBhcnNlKGAke3R9YCk7cmV0dXJuIGlzTmFOKHIpP1h0OnItbn0oaSxyKTo0Mjk9PT1uJiYoby5hbGw9cis2ZTQpO3JldHVybiBvfWNvbnN0IG5uPTY0O2Z1bmN0aW9uIGVuKHQsbixlPVF0KHQuYnVmZmVyU2l6ZXx8bm4pKXtsZXQgcj17fTtyZXR1cm57c2VuZDpmdW5jdGlvbih0KXtjb25zdCBvPVtdO2lmKE10KHQsKCh0LG4pPT57Y29uc3QgZT1mdW5jdGlvbih0KXtyZXR1cm4gR3RbdF19KG4pOyhmdW5jdGlvbih0LG4sZT1EYXRlLm5vdygpKXtyZXR1cm4gZnVuY3Rpb24odCxuKXtyZXR1cm4gdFtuXXx8dC5hbGx8fDB9KHQsbik+ZX0pKHIsZSl8fG8ucHVzaCh0KX0pKSwwPT09by5sZW5ndGgpcmV0dXJuIFl0KHt9KTtjb25zdCBzPVV0KHRbMF0sbyksaT10PT57TXQocywoKHQsbik9Pnt9KSl9O3JldHVybiBlLmFkZCgoKCk9Pm4oe2JvZHk6QnQocyl9KS50aGVuKCh0PT4odm9pZCAwIT09dC5zdGF0dXNDb2RlJiYodC5zdGF0dXNDb2RlPDIwMHx8dC5zdGF0dXNDb2RlPj0zMDApJiZoJiZrLndhcm4oYFNlbnRyeSByZXNwb25kZWQgd2l0aCBzdGF0dXMgY29kZSAke3Quc3RhdHVzQ29kZX0gdG8gc2VudCBldmVudC5gKSxyPXRuKHIsdCksdCkpLCh0PT57dGhyb3cgaSgpLGgmJmsuZXJyb3IoIkVuY291bnRlcmVkIGVycm9yIHJ1bm5pbmcgdHJhbnNwb3J0IHJlcXVlc3Q6Iix0KSx0fSkpKSkudGhlbigodD0+dCksKHQ9PntpZih0PT09cXQpcmV0dXJuIGgmJmsuZXJyb3IoIlNraXBwZWQgc2VuZGluZyBldmVudCBiZWNhdXNlIGJ1ZmZlciBpcyBmdWxsLiIpLGkoKSxZdCh7fSk7dGhyb3cgdH0pKX0sZmx1c2g6dD0+ZS5kcmFpbih0KX19Y29uc3Qgcm49L14oXFMrOlxcfFwvPykoW1xzXFNdKj8pKCg/OlwuezEsMn18W14vXFxdKz98KShcLlteLi9cXF0qfCkpKD86Wy9cXF0qKSQvO2Z1bmN0aW9uIG9uKHQpe2NvbnN0IG49ZnVuY3Rpb24odCl7Y29uc3Qgbj10Lmxlbmd0aD4xMDI0P2A8dHJ1bmNhdGVkPiR7dC5zbGljZSgtMTAyNCl9YDp0LGU9cm4uZXhlYyhuKTtyZXR1cm4gZT9lLnNsaWNlKDEpOltdfSh0KSxlPW5bMF18fCIiO2xldCByPW5bMV07cmV0dXJuIGV8fHI/KHImJihyPXIuc2xpY2UoMCxyLmxlbmd0aC0xKSksZStyKToiLiJ9ZnVuY3Rpb24gc24odCxuPSExKXtyZXR1cm4hKG58fHQmJiF0LnN0YXJ0c1dpdGgoIi8iKSYmIXQubWF0Y2goL15bQS1aXTovKSYmIXQuc3RhcnRzV2l0aCgiLiIpJiYhdC5tYXRjaCgvXlthLXpBLVpdKFthLXpBLVowLTkuXC0rXSkqOlwvXC8vKSkmJnZvaWQgMCE9PXQmJiF0LmluY2x1ZGVzKCJub2RlX21vZHVsZXMvIil9Y29uc3QgY249U3ltYm9sKCJBZ2VudEJhc2VJbnRlcm5hbFN0YXRlIik7Y2xhc3MgdW4gZXh0ZW5kcyBzLkFnZW50e2NvbnN0cnVjdG9yKHQpe3N1cGVyKHQpLHRoaXNbY25dPXt9fWlzU2VjdXJlRW5kcG9pbnQodCl7aWYodCl7aWYoImJvb2xlYW4iPT10eXBlb2YgdC5zZWN1cmVFbmRwb2ludClyZXR1cm4gdC5zZWN1cmVFbmRwb2ludDtpZigic3RyaW5nIj09dHlwZW9mIHQucHJvdG9jb2wpcmV0dXJuImh0dHBzOiI9PT10LnByb3RvY29sfWNvbnN0e3N0YWNrOm59PW5ldyBFcnJvcjtyZXR1cm4ic3RyaW5nIj09dHlwZW9mIG4mJm4uc3BsaXQoIlxuIikuc29tZSgodD0+LTEhPT10LmluZGV4T2YoIihodHRwcy5qczoiKXx8LTEhPT10LmluZGV4T2YoIm5vZGU6aHR0cHM6IikpKX1jcmVhdGVTb2NrZXQodCxuLGUpe2NvbnN0IHI9ey4uLm4sc2VjdXJlRW5kcG9pbnQ6dGhpcy5pc1NlY3VyZUVuZHBvaW50KG4pfTtQcm9taXNlLnJlc29sdmUoKS50aGVuKCgoKT0+dGhpcy5jb25uZWN0KHQscikpKS50aGVuKChvPT57aWYobyBpbnN0YW5jZW9mIHMuQWdlbnQpcmV0dXJuIG8uYWRkUmVxdWVzdCh0LHIpO3RoaXNbY25dLmN1cnJlbnRTb2NrZXQ9byxzdXBlci5jcmVhdGVTb2NrZXQodCxuLGUpfSksZSl9Y3JlYXRlQ29ubmVjdGlvbigpe2NvbnN0IHQ9dGhpc1tjbl0uY3VycmVudFNvY2tldDtpZih0aGlzW2NuXS5jdXJyZW50U29ja2V0PXZvaWQgMCwhdCl0aHJvdyBuZXcgRXJyb3IoIk5vIHNvY2tldCB3YXMgcmV0dXJuZWQgaW4gdGhlIGBjb25uZWN0KClgIGZ1bmN0aW9uIik7cmV0dXJuIHR9Z2V0IGRlZmF1bHRQb3J0KCl7cmV0dXJuIHRoaXNbY25dLmRlZmF1bHRQb3J0Pz8oImh0dHBzOiI9PT10aGlzLnByb3RvY29sPzQ0Mzo4MCl9c2V0IGRlZmF1bHRQb3J0KHQpe3RoaXNbY25dJiYodGhpc1tjbl0uZGVmYXVsdFBvcnQ9dCl9Z2V0IHByb3RvY29sKCl7cmV0dXJuIHRoaXNbY25dLnByb3RvY29sPz8odGhpcy5pc1NlY3VyZUVuZHBvaW50KCk/Imh0dHBzOiI6Imh0dHA6Iil9c2V0IHByb3RvY29sKHQpe3RoaXNbY25dJiYodGhpc1tjbl0ucHJvdG9jb2w9dCl9fWZ1bmN0aW9uIGFuKC4uLnQpe2subG9nKCJbaHR0cHMtcHJveHktYWdlbnQ6cGFyc2UtcHJveHktcmVzcG9uc2VdIiwuLi50KX1mdW5jdGlvbiBmbih0KXtyZXR1cm4gbmV3IFByb21pc2UoKChuLGUpPT57bGV0IHI9MDtjb25zdCBvPVtdO2Z1bmN0aW9uIHMoKXtjb25zdCBjPXQucmVhZCgpO2M/ZnVuY3Rpb24oYyl7by5wdXNoKGMpLHIrPWMubGVuZ3RoO2NvbnN0IHU9QnVmZmVyLmNvbmNhdChvLHIpLGE9dS5pbmRleE9mKCJcclxuXHJcbiIpO2lmKC0xPT09YSlyZXR1cm4gYW4oImhhdmUgbm90IHJlY2VpdmVkIGVuZCBvZiBIVFRQIGhlYWRlcnMgeWV0Li4uIiksdm9pZCBzKCk7Y29uc3QgZj11LnN1YmFycmF5KDAsYSkudG9TdHJpbmcoImFzY2lpIikuc3BsaXQoIlxyXG4iKSxoPWYuc2hpZnQoKTtpZighaClyZXR1cm4gdC5kZXN0cm95KCksZShuZXcgRXJyb3IoIk5vIGhlYWRlciByZWNlaXZlZCBmcm9tIHByb3h5IENPTk5FQ1QgcmVzcG9uc2UiKSk7Y29uc3QgcD1oLnNwbGl0KCIgIiksbD0rKHBbMV18fDApLGQ9cC5zbGljZSgyKS5qb2luKCIgIiksbT17fTtmb3IoY29uc3QgbiBvZiBmKXtpZighbiljb250aW51ZTtjb25zdCByPW4uaW5kZXhPZigiOiIpO2lmKC0xPT09cilyZXR1cm4gdC5kZXN0cm95KCksZShuZXcgRXJyb3IoYEludmFsaWQgaGVhZGVyIGZyb20gcHJveHkgQ09OTkVDVCByZXNwb25zZTogIiR7bn0iYCkpO2NvbnN0IG89bi5zbGljZSgwLHIpLnRvTG93ZXJDYXNlKCkscz1uLnNsaWNlKHIrMSkudHJpbVN0YXJ0KCksaT1tW29dOyJzdHJpbmciPT10eXBlb2YgaT9tW29dPVtpLHNdOkFycmF5LmlzQXJyYXkoaSk/aS5wdXNoKHMpOm1bb109c31hbigiZ290IHByb3h5IHNlcnZlciByZXNwb25zZTogJW8gJW8iLGgsbSksaSgpLG4oe2Nvbm5lY3Q6e3N0YXR1c0NvZGU6bCxzdGF0dXNUZXh0OmQsaGVhZGVyczptfSxidWZmZXJlZDp1fSl9KGMpOnQub25jZSgicmVhZGFibGUiLHMpfWZ1bmN0aW9uIGkoKXt0LnJlbW92ZUxpc3RlbmVyKCJlbmQiLGMpLHQucmVtb3ZlTGlzdGVuZXIoImVycm9yIix1KSx0LnJlbW92ZUxpc3RlbmVyKCJyZWFkYWJsZSIscyl9ZnVuY3Rpb24gYygpe2koKSxhbigib25lbmQiKSxlKG5ldyBFcnJvcigiUHJveHkgY29ubmVjdGlvbiBlbmRlZCBiZWZvcmUgcmVjZWl2aW5nIENPTk5FQ1QgcmVzcG9uc2UiKSl9ZnVuY3Rpb24gdSh0KXtpKCksYW4oIm9uZXJyb3IgJW8iLHQpLGUodCl9dC5vbigiZXJyb3IiLHUpLHQub24oImVuZCIsYykscygpfSkpfWZ1bmN0aW9uIGhuKC4uLnQpe2subG9nKCJbaHR0cHMtcHJveHktYWdlbnRdIiwuLi50KX1jbGFzcyBwbiBleHRlbmRzIHVue3N0YXRpYyBfX2luaXRTdGF0aWMoKXt0aGlzLnByb3RvY29scz1bImh0dHAiLCJodHRwcyJdfWNvbnN0cnVjdG9yKHQsbil7c3VwZXIobiksdGhpcy5vcHRpb25zPXt9LHRoaXMucHJveHk9InN0cmluZyI9PXR5cGVvZiB0P25ldyBVUkwodCk6dCx0aGlzLnByb3h5SGVhZGVycz1uPy5oZWFkZXJzPz97fSxobigiQ3JlYXRpbmcgbmV3IEh0dHBzUHJveHlBZ2VudCBpbnN0YW5jZTogJW8iLHRoaXMucHJveHkuaHJlZik7Y29uc3QgZT0odGhpcy5wcm94eS5ob3N0bmFtZXx8dGhpcy5wcm94eS5ob3N0KS5yZXBsYWNlKC9eXFt8XF0kL2csIiIpLHI9dGhpcy5wcm94eS5wb3J0P3BhcnNlSW50KHRoaXMucHJveHkucG9ydCwxMCk6Imh0dHBzOiI9PT10aGlzLnByb3h5LnByb3RvY29sPzQ0Mzo4MDt0aGlzLmNvbm5lY3RPcHRzPXtBTFBOUHJvdG9jb2xzOlsiaHR0cC8xLjEiXSwuLi5uP2RuKG4sImhlYWRlcnMiKTpudWxsLGhvc3Q6ZSxwb3J0OnJ9fWFzeW5jIGNvbm5lY3QodCxuKXtjb25zdHtwcm94eTplfT10aGlzO2lmKCFuLmhvc3QpdGhyb3cgbmV3IFR5cGVFcnJvcignTm8gImhvc3QiIHByb3ZpZGVkJyk7bGV0IHI7aWYoImh0dHBzOiI9PT1lLnByb3RvY29sKXtobigiQ3JlYXRpbmcgYHRscy5Tb2NrZXRgOiAlbyIsdGhpcy5jb25uZWN0T3B0cyk7Y29uc3QgdD10aGlzLmNvbm5lY3RPcHRzLnNlcnZlcm5hbWV8fHRoaXMuY29ubmVjdE9wdHMuaG9zdDtyPWYuY29ubmVjdCh7Li4udGhpcy5jb25uZWN0T3B0cyxzZXJ2ZXJuYW1lOnQmJmEuaXNJUCh0KT92b2lkIDA6dH0pfWVsc2UgaG4oIkNyZWF0aW5nIGBuZXQuU29ja2V0YDogJW8iLHRoaXMuY29ubmVjdE9wdHMpLHI9YS5jb25uZWN0KHRoaXMuY29ubmVjdE9wdHMpO2NvbnN0IG89ImZ1bmN0aW9uIj09dHlwZW9mIHRoaXMucHJveHlIZWFkZXJzP3RoaXMucHJveHlIZWFkZXJzKCk6ey4uLnRoaXMucHJveHlIZWFkZXJzfSxzPWEuaXNJUHY2KG4uaG9zdCk/YFske24uaG9zdH1dYDpuLmhvc3Q7bGV0IGk9YENPTk5FQ1QgJHtzfToke24ucG9ydH0gSFRUUC8xLjFcclxuYDtpZihlLnVzZXJuYW1lfHxlLnBhc3N3b3JkKXtjb25zdCB0PWAke2RlY29kZVVSSUNvbXBvbmVudChlLnVzZXJuYW1lKX06JHtkZWNvZGVVUklDb21wb25lbnQoZS5wYXNzd29yZCl9YDtvWyJQcm94eS1BdXRob3JpemF0aW9uIl09YEJhc2ljICR7QnVmZmVyLmZyb20odCkudG9TdHJpbmcoImJhc2U2NCIpfWB9by5Ib3N0PWAke3N9OiR7bi5wb3J0fWAsb1siUHJveHktQ29ubmVjdGlvbiJdfHwob1siUHJveHktQ29ubmVjdGlvbiJdPXRoaXMua2VlcEFsaXZlPyJLZWVwLUFsaXZlIjoiY2xvc2UiKTtmb3IoY29uc3QgdCBvZiBPYmplY3Qua2V5cyhvKSlpKz1gJHt0fTogJHtvW3RdfVxyXG5gO2NvbnN0IGM9Zm4ocik7ci53cml0ZShgJHtpfVxyXG5gKTtjb25zdHtjb25uZWN0OnUsYnVmZmVyZWQ6aH09YXdhaXQgYztpZih0LmVtaXQoInByb3h5Q29ubmVjdCIsdSksdGhpcy5lbWl0KCJwcm94eUNvbm5lY3QiLHUsdCksMjAwPT09dS5zdGF0dXNDb2RlKXtpZih0Lm9uY2UoInNvY2tldCIsbG4pLG4uc2VjdXJlRW5kcG9pbnQpe2huKCJVcGdyYWRpbmcgc29ja2V0IGNvbm5lY3Rpb24gdG8gVExTIik7Y29uc3QgdD1uLnNlcnZlcm5hbWV8fG4uaG9zdDtyZXR1cm4gZi5jb25uZWN0KHsuLi5kbihuLCJob3N0IiwicGF0aCIsInBvcnQiKSxzb2NrZXQ6cixzZXJ2ZXJuYW1lOmEuaXNJUCh0KT92b2lkIDA6dH0pfXJldHVybiByfXIuZGVzdHJveSgpO2NvbnN0IHA9bmV3IGEuU29ja2V0KHt3cml0YWJsZTohMX0pO3JldHVybiBwLnJlYWRhYmxlPSEwLHQub25jZSgic29ja2V0IiwodD0+e2huKCJSZXBsYXlpbmcgcHJveHkgYnVmZmVyIGZvciBmYWlsZWQgcmVxdWVzdCIpLHQucHVzaChoKSx0LnB1c2gobnVsbCl9KSkscH19ZnVuY3Rpb24gbG4odCl7dC5yZXN1bWUoKX1mdW5jdGlvbiBkbih0LC4uLm4pe2NvbnN0IGU9e307bGV0IHI7Zm9yKHIgaW4gdCluLmluY2x1ZGVzKHIpfHwoZVtyXT10W3JdKTtyZXR1cm4gZX1wbi5fX2luaXRTdGF0aWMoKTtjb25zdCBtbj0zMjc2ODtmdW5jdGlvbiBnbih0KXtyZXR1cm4gdC5yZXBsYWNlKC9eW0EtWl06LywiIikucmVwbGFjZSgvXFwvZywiLyIpfWNvbnN0IHluPW47bGV0IGJuLF9uPTAsdm49e307ZnVuY3Rpb24gd24odCl7eW4uZGVidWcmJmNvbnNvbGUubG9nKGBbQU5SIFdvcmtlcl0gJHt0fWApfXZhciBTbiwkbixFbjtjb25zdCB4bj1mdW5jdGlvbih0KXtsZXQgbjt0cnl7bj1uZXcgVVJMKHQudXJsKX1jYXRjaChuKXtyZXR1cm4gVCgoKCk9Pntjb25zb2xlLndhcm4oIltAc2VudHJ5L25vZGVdOiBJbnZhbGlkIGRzbiBvciB0dW5uZWwgb3B0aW9uLCB3aWxsIG5vdCBzZW5kIGFueSBldmVudHMuIFRoZSB0dW5uZWwgb3B0aW9uIG11c3QgYmUgYSBmdWxsIFVSTCB3aGVuIHVzZWQuIil9KSksZW4odCwoKCk9PlByb21pc2UucmVzb2x2ZSh7fSkpKX1jb25zdCBlPSJodHRwczoiPT09bi5wcm90b2NvbCxyPWZ1bmN0aW9uKHQsbil7Y29uc3R7bm9fcHJveHk6ZX09cHJvY2Vzcy5lbnYscj1lPy5zcGxpdCgiLCIpLnNvbWUoKG49PnQuaG9zdC5lbmRzV2l0aChuKXx8dC5ob3N0bmFtZS5lbmRzV2l0aChuKSkpO3JldHVybiByP3ZvaWQgMDpufShuLHQucHJveHl8fChlP3Byb2Nlc3MuZW52Lmh0dHBzX3Byb3h5OnZvaWQgMCl8fHByb2Nlc3MuZW52Lmh0dHBfcHJveHkpLG89ZT9pOnMsYT12b2lkIDAhPT10LmtlZXBBbGl2ZSYmdC5rZWVwQWxpdmUsZj1yP25ldyBwbihyKTpuZXcgby5BZ2VudCh7a2VlcEFsaXZlOmEsbWF4U29ja2V0czozMCx0aW1lb3V0OjJlM30pLGg9ZnVuY3Rpb24odCxuLGUpe2NvbnN0e2hvc3RuYW1lOnIscGF0aG5hbWU6byxwb3J0OnMscHJvdG9jb2w6aSxzZWFyY2g6YX09bmV3IFVSTCh0LnVybCk7cmV0dXJuIGZ1bmN0aW9uKGYpe3JldHVybiBuZXcgUHJvbWlzZSgoKGgscCk9PntGdCgoKCk9PntsZXQgbD1mdW5jdGlvbih0KXtyZXR1cm4gbmV3IGMoe3JlYWQoKXt0aGlzLnB1c2godCksdGhpcy5wdXNoKG51bGwpfX0pfShmLmJvZHkpO2NvbnN0IGQ9ey4uLnQuaGVhZGVyc307Zi5ib2R5Lmxlbmd0aD5tbiYmKGRbImNvbnRlbnQtZW5jb2RpbmciXT0iZ3ppcCIsbD1sLnBpcGUodSgpKSk7Y29uc3QgbT1uLnJlcXVlc3Qoe21ldGhvZDoiUE9TVCIsYWdlbnQ6ZSxoZWFkZXJzOmQsaG9zdG5hbWU6cixwYXRoOmAke299JHthfWAscG9ydDpzLHByb3RvY29sOmksY2E6dC5jYUNlcnRzfSwodD0+e3Qub24oImRhdGEiLCgoKT0+e30pKSx0Lm9uKCJlbmQiLCgoKT0+e30pKSx0LnNldEVuY29kaW5nKCJ1dGY4Iik7Y29uc3Qgbj10LmhlYWRlcnNbInJldHJ5LWFmdGVyIl0/P251bGwsZT10LmhlYWRlcnNbIngtc2VudHJ5LXJhdGUtbGltaXRzIl0/P251bGw7aCh7c3RhdHVzQ29kZTp0LnN0YXR1c0NvZGUsaGVhZGVyczp7InJldHJ5LWFmdGVyIjpuLCJ4LXNlbnRyeS1yYXRlLWxpbWl0cyI6QXJyYXkuaXNBcnJheShlKT9lWzBdfHxudWxsOmV9fSl9KSk7bS5vbigiZXJyb3IiLHApLGwucGlwZShtKX0pKX0pKX19KHQsdC5odHRwTW9kdWxlPz9vLGYpO3JldHVybiBlbih0LGgpfSh7dXJsOihTbj15bi5kc24sJG49eW4udHVubmVsLEVuPXluLnNka01ldGFkYXRhLnNkaywkbnx8YCR7ZnVuY3Rpb24odCl7cmV0dXJuYCR7ZnVuY3Rpb24odCl7Y29uc3Qgbj10LnByb3RvY29sP2Ake3QucHJvdG9jb2x9OmA6IiIsZT10LnBvcnQ/YDoke3QucG9ydH1gOiIiO3JldHVybmAke259Ly8ke3QuaG9zdH0ke2V9JHt0LnBhdGg/YC8ke3QucGF0aH1gOiIifS9hcGkvYH0odCl9JHt0LnByb2plY3RJZH0vZW52ZWxvcGUvYH0oU24pfT8ke2Z1bmN0aW9uKHQsbil7Y29uc3QgZT17c2VudHJ5X3ZlcnNpb246WnR9O3JldHVybiB0LnB1YmxpY0tleSYmKGUuc2VudHJ5X2tleT10LnB1YmxpY0tleSksbiYmKGUuc2VudHJ5X2NsaWVudD1gJHtuLm5hbWV9LyR7bi52ZXJzaW9ufWApLG5ldyBVUkxTZWFyY2hQYXJhbXMoZSkudG9TdHJpbmcoKX0oU24sRW4pfWApfSk7YXN5bmMgZnVuY3Rpb24gTm4oKXtpZihibil7d24oIlNlbmRpbmcgYWJub3JtYWwgc2Vzc2lvbiIpLEwoYm4se3N0YXR1czoiYWJub3JtYWwiLGFibm9ybWFsX21lY2hhbmlzbToiYW5yX2ZvcmVncm91bmQiLHJlbGVhc2U6eW4ucmVsZWFzZSxlbnZpcm9ubWVudDp5bi5lbnZpcm9ubWVudH0pO2NvbnN0IHQ9ZnVuY3Rpb24odCxuLGUscil7Y29uc3Qgbz1KdChlKTtyZXR1cm4gVXQoe3NlbnRfYXQ6KG5ldyBEYXRlKS50b0lTT1N0cmluZygpLC4uLm8mJntzZGs6b30sLi4uISFyJiZuJiZ7ZHNuOmp0KG4pfX0sWyJhZ2dyZWdhdGVzImluIHQ/W3t0eXBlOiJzZXNzaW9ucyJ9LHRdOlt7dHlwZToic2Vzc2lvbiJ9LHQudG9KU09OKCldXSl9KGJuLHluLmRzbix5bi5zZGtNZXRhZGF0YSx5bi50dW5uZWwpO3duKEpTT04uc3RyaW5naWZ5KHQpKSxhd2FpdCB4bi5zZW5kKHQpO3RyeXtlPy5wb3N0TWVzc2FnZSgic2Vzc2lvbi1lbmRlZCIpfWNhdGNoKHQpe319fWZ1bmN0aW9uIENuKHQpe2lmKCF0KXJldHVybjtjb25zdCBuPWZ1bmN0aW9uKHQpe2lmKCF0Lmxlbmd0aClyZXR1cm5bXTtjb25zdCBuPUFycmF5LmZyb20odCk7cmV0dXJuL3NlbnRyeVdyYXBwZWQvLnRlc3QoTnQobikuZnVuY3Rpb258fCIiKSYmbi5wb3AoKSxuLnJldmVyc2UoKSx4dC50ZXN0KE50KG4pLmZ1bmN0aW9ufHwiIikmJihuLnBvcCgpLHh0LnRlc3QoTnQobikuZnVuY3Rpb258fCIiKSYmbi5wb3AoKSksbi5zbGljZSgwLCR0KS5tYXAoKHQ9Pih7Li4udCxmaWxlbmFtZTp0LmZpbGVuYW1lfHxOdChuKS5maWxlbmFtZSxmdW5jdGlvbjp0LmZ1bmN0aW9ufHxFdH0pKSl9KHQpO2lmKHluLmFwcFJvb3RQYXRoKWZvcihjb25zdCB0IG9mIG4pdC5maWxlbmFtZSYmKHQuZmlsZW5hbWU9UHQodC5maWxlbmFtZSx5bi5hcHBSb290UGF0aCkpO3JldHVybiBufWFzeW5jIGZ1bmN0aW9uIFRuKHQsbil7aWYoX24+PXluLm1heEFuckV2ZW50cylyZXR1cm47X24rPTEsYXdhaXQgTm4oKSx3bigiU2VuZGluZyBldmVudCIpO2NvbnN0IGU9e2V2ZW50X2lkOkQoKSxjb250ZXh0czp5bi5jb250ZXh0cyxyZWxlYXNlOnluLnJlbGVhc2UsZW52aXJvbm1lbnQ6eW4uZW52aXJvbm1lbnQsZGlzdDp5bi5kaXN0LHBsYXRmb3JtOiJub2RlIixsZXZlbDoiZXJyb3IiLGV4Y2VwdGlvbjp7dmFsdWVzOlt7dHlwZToiQXBwbGljYXRpb25Ob3RSZXNwb25kaW5nIix2YWx1ZTpgQXBwbGljYXRpb24gTm90IFJlc3BvbmRpbmcgZm9yIGF0IGxlYXN0ICR7eW4uYW5yVGhyZXNob2xkfSBtc2Asc3RhY2t0cmFjZTp7ZnJhbWVzOkNuKHQpfSxtZWNoYW5pc206e3R5cGU6IkFOUiJ9fV19LHRhZ3M6eW4uc3RhdGljVGFnc307biYmZnVuY3Rpb24odCxuKXtpZihWdCh0LG4pLCF0LmNvbnRleHRzPy50cmFjZSl7Y29uc3R7dHJhY2VJZDplLHBhcmVudFNwYW5JZDpyLHByb3BhZ2F0aW9uU3BhbklkOm99PW4ucHJvcGFnYXRpb25Db250ZXh0O3QuY29udGV4dHM9e3RyYWNlOnt0cmFjZV9pZDplLHNwYW5faWQ6b3x8RigpLHBhcmVudF9zcGFuX2lkOnJ9LC4uLnQuY29udGV4dHN9fX0oZSxuKSxmdW5jdGlvbih0KXtpZigwPT09T2JqZWN0LmtleXModm4pLmxlbmd0aClyZXR1cm47Y29uc3Qgbj15bi5hcHBSb290UGF0aD97fTp2bjtpZih5bi5hcHBSb290UGF0aClmb3IoY29uc3RbdCxlXW9mIE9iamVjdC5lbnRyaWVzKHZuKSluW1B0KHQseW4uYXBwUm9vdFBhdGgpXT1lO2NvbnN0IGU9bmV3IE1hcDtmb3IoY29uc3QgciBvZiB0LmV4Y2VwdGlvbj8udmFsdWVzfHxbXSlmb3IoY29uc3QgdCBvZiByLnN0YWNrdHJhY2U/LmZyYW1lc3x8W10pe2NvbnN0IHI9dC5hYnNfcGF0aHx8dC5maWxlbmFtZTtyJiZuW3JdJiZlLnNldChyLG5bcl0pfWlmKGUuc2l6ZT4wKXtjb25zdCBuPVtdO2Zvcihjb25zdFt0LHJdb2YgZS5lbnRyaWVzKCkpbi5wdXNoKHt0eXBlOiJzb3VyY2VtYXAiLGNvZGVfZmlsZTp0LGRlYnVnX2lkOnJ9KTt0LmRlYnVnX21ldGE9e2ltYWdlczpufX19KGUpO2NvbnN0IHI9enQoZSx5bi5kc24seW4uc2RrTWV0YWRhdGEseW4udHVubmVsKTt3bihKU09OLnN0cmluZ2lmeShyKSksYXdhaXQgeG4uc2VuZChyKSxhd2FpdCB4bi5mbHVzaCgyZTMpLF9uPj15bi5tYXhBbnJFdmVudHMmJnNldFRpbWVvdXQoKCgpPT57cHJvY2Vzcy5leGl0KDApfSksNWUzKX1sZXQga247aWYod24oIlN0YXJ0ZWQiKSx5bi5jYXB0dXJlU3RhY2tUcmFjZSl7d24oIkNvbm5lY3RpbmcgdG8gZGVidWdnZXIiKTtjb25zdCBuPW5ldyB0O24uY29ubmVjdFRvTWFpblRocmVhZCgpLHduKCJDb25uZWN0ZWQgdG8gZGVidWdnZXIiKTtjb25zdCBlPW5ldyBNYXA7bi5vbigiRGVidWdnZXIuc2NyaXB0UGFyc2VkIiwodD0+e2Uuc2V0KHQucGFyYW1zLnNjcmlwdElkLHQucGFyYW1zLnVybCl9KSksbi5vbigiRGVidWdnZXIucGF1c2VkIiwodD0+e2lmKCJvdGhlciI9PT10LnBhcmFtcy5yZWFzb24pdHJ5e3duKCJEZWJ1Z2dlciBwYXVzZWQiKTtjb25zdCBzPVsuLi50LnBhcmFtcy5jYWxsRnJhbWVzXSxpPXluLmFwcFJvb3RQYXRoP2Z1bmN0aW9uKHQ9KHByb2Nlc3MuYXJndlsxXT9vbihwcm9jZXNzLmFyZ3ZbMV0pOnByb2Nlc3MuY3dkKCkpLG49IlxcIj09PW8pe2NvbnN0IGU9bj9nbih0KTp0O3JldHVybiB0PT57aWYoIXQpcmV0dXJuO2NvbnN0IG89bj9nbih0KTp0O2xldHtkaXI6cyxiYXNlOmksZXh0OmN9PXIucGFyc2Uobyk7Ii5qcyIhPT1jJiYiLm1qcyIhPT1jJiYiLmNqcyIhPT1jfHwoaT1pLnNsaWNlKDAsLTEqYy5sZW5ndGgpKTtjb25zdCB1PWRlY29kZVVSSUNvbXBvbmVudChpKTtzfHwocz0iLiIpO2NvbnN0IGE9cy5sYXN0SW5kZXhPZigiL25vZGVfbW9kdWxlcyIpO2lmKGE+LTEpcmV0dXJuYCR7cy5zbGljZShhKzE0KS5yZXBsYWNlKC9cLy9nLCIuIil9OiR7dX1gO2lmKHMuc3RhcnRzV2l0aChlKSl7Y29uc3QgdD1zLnNsaWNlKGUubGVuZ3RoKzEpLnJlcGxhY2UoL1wvL2csIi4iKTtyZXR1cm4gdD9gJHt0fToke3V9YDp1fXJldHVybiB1fX0oeW4uYXBwUm9vdFBhdGgpOigpPT57fSxjPXMubWFwKCh0PT5mdW5jdGlvbih0LG4sZSl7Y29uc3Qgcj1uP24ucmVwbGFjZSgvXmZpbGU6XC9cLy8sIiIpOnZvaWQgMCxvPXQubG9jYXRpb24uY29sdW1uTnVtYmVyP3QubG9jYXRpb24uY29sdW1uTnVtYmVyKzE6dm9pZCAwLHM9dC5sb2NhdGlvbi5saW5lTnVtYmVyP3QubG9jYXRpb24ubGluZU51bWJlcisxOnZvaWQgMDtyZXR1cm57ZmlsZW5hbWU6cixtb2R1bGU6ZShyKSxmdW5jdGlvbjp0LmZ1bmN0aW9uTmFtZXx8RXQsY29sbm86byxsaW5lbm86cyxpbl9hcHA6cj9zbihyKTp2b2lkIDB9fSh0LGUuZ2V0KHQubG9jYXRpb24uc2NyaXB0SWQpLGkpKSksdT1zZXRUaW1lb3V0KCgoKT0+e1RuKGMpLnRoZW4obnVsbCwoKCk9Pnt3bigiU2VuZGluZyBBTlIgZXZlbnQgZmFpbGVkLiIpfSkpfSksNWUzKTtuLnBvc3QoIlJ1bnRpbWUuZXZhbHVhdGUiLHtleHByZXNzaW9uOiJnbG9iYWwuX19TRU5UUllfR0VUX1NDT1BFU19fKCk7IixzaWxlbnQ6ITAscmV0dXJuQnlWYWx1ZTohMH0sKCh0LGUpPT57dCYmd24oYEVycm9yIGV4ZWN1dGluZyBzY3JpcHQ6ICcke3QubWVzc2FnZX0nYCksY2xlYXJUaW1lb3V0KHUpO2NvbnN0IHI9ZT8ucmVzdWx0P2UucmVzdWx0LnZhbHVlOnZvaWQgMDtuLnBvc3QoIkRlYnVnZ2VyLnJlc3VtZSIpLG4ucG9zdCgiRGVidWdnZXIuZGlzYWJsZSIpLFRuKGMscikudGhlbihudWxsLCgoKT0+e3duKCJTZW5kaW5nIEFOUiBldmVudCBmYWlsZWQuIil9KSl9KSl9Y2F0Y2godCl7dGhyb3cgbi5wb3N0KCJEZWJ1Z2dlci5yZXN1bWUiKSxuLnBvc3QoIkRlYnVnZ2VyLmRpc2FibGUiKSx0fX0pKSxrbj0oKT0+e3RyeXtuLnBvc3QoIkRlYnVnZ2VyLmVuYWJsZSIsKCgpPT57bi5wb3N0KCJEZWJ1Z2dlci5wYXVzZSIpfSkpfWNhdGNoKHQpe319fWNvbnN0e3BvbGw6am59PWZ1bmN0aW9uKHQsbixlLHIpe2NvbnN0IG89dCgpO2xldCBzPSExLGk9ITA7cmV0dXJuIHNldEludGVydmFsKCgoKT0+e2NvbnN0IHQ9by5nZXRUaW1lTXMoKTshMT09PXMmJnQ+bitlJiYocz0hMCxpJiZyKCkpLHQ8bitlJiYocz0hMSl9KSwyMCkse3BvbGw6KCk9PntvLnJlc2V0KCl9LGVuYWJsZWQ6dD0+e2k9dH19fSgoZnVuY3Rpb24oKXtsZXQgdD1wcm9jZXNzLmhydGltZSgpO3JldHVybntnZXRUaW1lTXM6KCk9Pntjb25zdFtuLGVdPXByb2Nlc3MuaHJ0aW1lKHQpO3JldHVybiBNYXRoLmZsb29yKDFlMypuK2UvMWU2KX0scmVzZXQ6KCk9Pnt0PXByb2Nlc3MuaHJ0aW1lKCl9fX0pLHluLnBvbGxJbnRlcnZhbCx5bi5hbnJUaHJlc2hvbGQsKGZ1bmN0aW9uKCl7d24oIldhdGNoZG9nIHRpbWVvdXQiKSxrbj8od24oIlBhdXNpbmcgZGVidWdnZXIgdG8gY2FwdHVyZSBzdGFjayB0cmFjZSIpLGtuKCkpOih3bigiQ2FwdHVyaW5nIGV2ZW50IHdpdGhvdXQgYSBzdGFjayB0cmFjZSIpLFRuKCkudGhlbihudWxsLCgoKT0+e3duKCJTZW5kaW5nIEFOUiBldmVudCBmYWlsZWQgb24gd2F0Y2hkb2cgdGltZW91dC4iKX0pKSl9KSk7ZT8ub24oIm1lc3NhZ2UiLCh0PT57dC5zZXNzaW9uJiYoYm49TSh0LnNlc3Npb24pKSx0LmRlYnVnSW1hZ2VzJiYodm49dC5kZWJ1Z0ltYWdlcyksam4oKX0pKTs=",zD0=50,RD0=5000;function Pi(A,...Q){e.log(`[ANR] ${A}`,...Q)}function wD0(){return AQ}function jD0(){let A=iG().getScopeData();return TZ(A,RQ().getScopeData()),TZ(A,sQ().getScopeData()),A.attachments=[],A.eventProcessors=[],A}async function OD0(A){let Q={message:"ANR"},B={};for(let Y of A.getEventProcessors()){if(Q===null)break;Q=await Y(Q,B)}return Q?.contexts||{}}var $4Q="Anr",PD0=(A={})=>{if($F.major<16||$F.major===16&&$F.minor<17)throw Error("ANR detection requires Node 16.17.0 or later");let Q,B,Y=wD0();return Y.__SENTRY_GET_SCOPES__=jD0,{name:$4Q,startWorker:()=>{if(Q)return;if(B)Q=TD0(B,A)},stopWorker:()=>{if(Q)Q.then((J)=>{J(),Q=void 0})},async setup(J){if(B=J,A.captureStackTrace&&await HK())e.warn("ANR captureStackTrace has been disabled because the debugger was already enabled"),A.captureStackTrace=!1;setImmediate(()=>this.startWorker())}}},U4Q=wA(PD0);async function TD0(A,Q){let B=A.getDsn();if(!B)return()=>{};let Y=await OD0(A);delete Y.app?.app_memory,delete Y.device?.free_memory;let J=A.getOptions(),C=A.getSdkMetadata()||{};if(C.sdk)C.sdk.integrations=J.integrations.map((W)=>W.name);let X={debug:e.isEnabled(),dsn:B,tunnel:J.tunnel,environment:J.environment||"production",release:J.release,dist:J.dist,sdkMetadata:C,appRootPath:Q.appRootPath,pollInterval:Q.pollInterval||zD0,anrThreshold:Q.anrThreshold||RD0,captureStackTrace:!!Q.captureStackTrace,maxAnrEvents:Q.maxAnrEvents||1,staticTags:Q.staticTags||{},contexts:Y};if(X.captureStackTrace){let W=await import("node:inspector");if(!W.url())W.open(0)}let G=new LD0(new URL(`data:application/javascript;base64,${MD0}`),{workerData:X,execArgv:[],env:{...process.env,NODE_OPTIONS:void 0}});process.on("exit",()=>{G.terminate()});let F=setInterval(()=>{try{let W=RQ().getSession(),Z=W?{...W,toJSON:void 0}:void 0;G.postMessage({session:Z,debugImages:ZN(J.stackParser)})}catch(W){}},X.pollInterval);return F.unref(),G.on("message",(W)=>{if(W==="session-ended")Pi("ANR event sent from ANR worker. Clearing session in this thread."),RQ().setSession(void 0)}),G.once("error",(W)=>{clearInterval(F),Pi("ANR worker error",W)}),G.once("exit",(W)=>{clearInterval(F),Pi("ANR worker exit",W)}),G.unref(),()=>{G.terminate(),clearInterval(F)}}function E4Q(A){let Q=gA()?.getIntegrationByName($4Q);if(!Q)return A();Q.stopWorker();let B=A();if(qD0(B))return B.finally(()=>Q.startWorker());return Q.startWorker(),B}var l4Q=qA(g4Q(),1);var x4Q=qA(MB(),1);var h4Q=(A)=>({package:A,"javascript.is_cjs":m5()});function VF(A,Q){let B=gA()?.getOptions();if(!B?.disableInstrumentationWarnings&&!x4Q.isWrapped(A)&&EN()&&C9(B))y0(()=>{if(m5())console.warn(`[Sentry] ${Q} is not instrumented. This is likely because you required/imported ${Q} before calling \`Sentry.init()\`.`);else console.warn(`[Sentry] ${Q} is not instrumented. Please make sure to initialize Sentry in a separate file that you \`--import\` when running node, see: https://docs.sentry.io/platforms/javascript/guides/${Q}/install/esm/.`)}),iG().setContext("missing_instrumentation",h4Q(Q))}var B1=qA(yA(),1),IP=qA(MB(),1),ZX=qA(NB(),1),c4Q=qA(uB(),1);var u5;(function(A){A.EXPRESS_TYPE="express.type";let B="express.name";A.EXPRESS_NAME=B})(u5||(u5={}));var G6;(function(A){A.ROUTER="router";let B="middleware";A.MIDDLEWARE=B;let Y="request_handler";A.REQUEST_HANDLER=Y})(G6||(G6={}));var gi=Symbol("express-layer-patched"),IF="__ot_middlewares";var b4Q=(A,Q)=>{if(Array.isArray(A[IF])===!1)Object.defineProperty(A,IF,{enumerable:!1,value:[]});if(Q===void 0)return;A[IF].push(Q)},m4Q=(A,Q)=>{let B=Q.handle?.stack?.[0];if(B?.route?.path)return`${A}${B.route.path}`;if(B?.handle?.stack)return m4Q(A,B);return A},u4Q=(A,Q,B)=>{if(Q.name==="router"){let Y=m4Q("",Q),J=Y?Y:B||A||"/";return{attributes:{[u5.EXPRESS_NAME]:J,[u5.EXPRESS_TYPE]:G6.ROUTER},name:`router - ${J}`}}else if(Q.name==="bound dispatch"||Q.name==="handle")return{attributes:{[u5.EXPRESS_NAME]:(A||B)??"request handler",[u5.EXPRESS_TYPE]:G6.REQUEST_HANDLER},name:`request handler${Q.path?` - ${A||B}`:""}`};else return{attributes:{[u5.EXPRESS_NAME]:Q.name,[u5.EXPRESS_TYPE]:G6.MIDDLEWARE},name:`middleware - ${Q.name}`}},nD0=(A,Q)=>{if(typeof Q==="string")return Q===A;else if(Q instanceof RegExp)return Q.test(A);else if(typeof Q==="function")return Q(A);else throw TypeError("Pattern is in unsupported datatype")},d4Q=(A,Q,B)=>{if(Array.isArray(B?.ignoreLayersType)&&B?.ignoreLayersType?.includes(Q))return!0;if(Array.isArray(B?.ignoreLayers)===!1)return!1;try{for(let Y of B.ignoreLayers)if(nD0(A,Y))return!0}catch(Y){}return!1},hi=(A)=>A instanceof Error?[A,A.message]:[String(A),String(A)],VP=(A)=>{let Q=A[0];if(Array.isArray(Q))return Q.map((B)=>f4Q(B)||"").join(",");return f4Q(Q)},f4Q=(A)=>{if(typeof A==="string")return A;if(A instanceof RegExp||typeof A==="number")return A.toString();return};var sD0="0.1.0",rD0="@sentry/instrumentation-express-v5";class xi extends ZX.InstrumentationBase{constructor(A={}){super(rD0,sD0,A)}init(){return[new ZX.InstrumentationNodeModuleDefinition("express",[">=5.0.0"],(A)=>this._setup(A),(A)=>this._tearDown(A))]}_setup(A){let Q=A.Router.prototype;if(ZX.isWrapped(Q.route))this._unwrap(Q,"route");if(this._wrap(Q,"route",this._getRoutePatch()),ZX.isWrapped(Q.use))this._unwrap(Q,"use");if(this._wrap(Q,"use",this._getRouterUsePatch()),ZX.isWrapped(A.application.use))this._unwrap(A.application,"use");return this._wrap(A.application,"use",this._getAppUsePatch()),A}_tearDown(A){if(A===void 0)return;let Q=A.Router.prototype;this._unwrap(Q,"route"),this._unwrap(Q,"use"),this._unwrap(A.application,"use")}_getRoutePatch(){let A=this;return function(Q){return function(...Y){let J=Q.apply(this,Y),C=this.stack[this.stack.length-1];return A._applyPatch(C,VP(Y)),J}}}_getRouterUsePatch(){let A=this;return function(Q){return function(...Y){let J=Q.apply(this,Y),C=this.stack[this.stack.length-1];return A._applyPatch(C,VP(Y)),J}}}_getAppUsePatch(){let A=this;return function(Q){return function(...Y){let J=this.router,C=Q.apply(this,Y);if(J){let X=J.stack[J.stack.length-1];A._applyPatch(X,VP(Y))}return C}}}_applyPatch(A,Q){let B=this;if(A[gi]===!0)return;A[gi]=!0,this._wrap(A,"handle",(Y)=>{if(Y.length===4)return Y;let J=function(C,X){b4Q(C,Q);let G=C[IF].filter((z)=>z!=="/"&&z!=="/*").join("").replace(/\/{2,}/g,"/"),F=G.length>0?G:void 0,W={[c4Q.SEMATTRS_HTTP_ROUTE]:F},Z=u4Q(G,A,Q),U=Z.attributes[u5.EXPRESS_TYPE],$=IP.getRPCMetadata(B1.context.active());if($?.type===IP.RPCType.HTTP)$.route=F;if(d4Q(Z.name,U,B.getConfig())){if(U===G6.MIDDLEWARE)C[IF].pop();return Y.apply(this,arguments)}if(B1.trace.getSpan(B1.context.active())===void 0)return Y.apply(this,arguments);let E=B._getSpanName({request:C,layerType:U,route:G},Z.name),K=B.tracer.startSpan(E,{attributes:Object.assign(W,Z.attributes)}),{requestHook:I}=B.getConfig();if(I)ZX.safeExecuteInTheMiddle(()=>I(K,{request:C,layerType:U,route:G}),(z)=>{if(z)B1.diag.error("express instrumentation: request hook failed",z)},!0);let V=!1;if(Z.attributes[u5.EXPRESS_TYPE]!==G6.MIDDLEWARE)K.end(),V=!0;let H=()=>{if(V===!1)V=!0,K.end()},D=Array.from(arguments),L=D.findIndex((z)=>typeof z==="function");if(L>=0)arguments[L]=function(){let z=arguments[0],M=![void 0,null,"route","router"].includes(z);if(!V&&M){let[q,w]=hi(z);K.recordException(q),K.setStatus({code:B1.SpanStatusCode.ERROR,message:w})}if(V===!1)V=!0,C.res?.removeListener("finish",H),K.end();if(!(C.route&&M))C[IF].pop();return D[L].apply(this,arguments)};try{return Y.apply(this,arguments)}catch(z){let[M,N]=hi(z);throw K.recordException(M),K.setStatus({code:B1.SpanStatusCode.ERROR,message:N}),z}finally{if(!V)X.once("finish",H)}};for(let C in Y)Object.defineProperty(J,C,{get(){return Y[C]},set(X){Y[C]=X}});return J})}_getSpanName(A,Q){let{spanNameHook:B}=this.getConfig();if(!(B instanceof Function))return Q;try{return B(A,Q)??Q}catch(Y){return B1.diag.error("express instrumentation: error calling span name rewrite hook",Y),Q}}}var p4Q="Express",aD0="Express-V5";function i4Q(A){p0(A,"auto.http.otel.express");let Q=eA(A).data,B=Q["express.type"];if(B)A.setAttribute(BQ,`${B}.express`);let Y=Q["express.name"];if(typeof Y==="string")A.updateName(Y)}function n4Q(A,Q){if(RQ()===M5())return fQ&&e.warn("Isolation scope is still default isolation scope - skipping setting transactionName"),Q;if(A.layerType==="request_handler"){let B=A.request,Y=B.method?B.method.toUpperCase():"GET";RQ().setTransactionName(`${Y} ${A.route}`)}return Q}var fi=EQ(p4Q,()=>new l4Q.ExpressInstrumentation({requestHook:(A)=>i4Q(A),spanNameHook:(A,Q)=>n4Q(A,Q)})),bi=EQ(aD0,()=>new xi({requestHook:(A)=>i4Q(A),spanNameHook:(A,Q)=>n4Q(A,Q)})),oD0=()=>{return{name:p4Q,setupOnce(){fi(),bi()}}},HP=wA(oD0);function mi(A){return function(B,Y,J,C){let X=hE(Y);if(RQ().setSDKProcessingMetadata({normalizedRequest:X}),(A?.shouldHandleError||AN0)(B)){let F=jB(B,{mechanism:{type:"middleware",handled:!1}});J.sentry=F}C(B)}}function tD0(){return function(Q,B,Y){let J=hE(Q);RQ().setSDKProcessingMetadata({normalizedRequest:J}),Y()}}function s4Q(A,Q){A.use(tD0()),A.use(mi(Q)),VF(A.use,"express")}function eD0(A){let Q=A.status||A.statusCode||A.status_code||A.output?.statusCode;return Q?parseInt(Q,10):500}function AN0(A){return eD0(A)>=500}import*as fUQ from"node:diagnostics_channel";var ZY=qA(yA(),1),zP=qA(MB(),1),kUQ=qA(NB(),1),NY=qA(uB(),1);import jUQ from"node:diagnostics_channel";var OUQ="@fastify/otel",JL0="0.8.0",CL0=">=4.0.0 <6",PUQ=["onRequest","preParsing","preValidation","preHandler","preSerialization","onSend","onResponse","onError"],K0={HOOK_NAME:"hook.name",FASTIFY_TYPE:"fastify.type",HOOK_CALLBACK_NAME:"hook.callback.name",ROOT:"fastify.root"},HF={ROUTE:"route-hook",INSTANCE:"hook",HANDLER:"request-handler"},F6="anonymous",U9=Symbol("fastify otel instance"),DF=Symbol("fastify otel request spans"),ML=Symbol("fastify otel request context"),TUQ=Symbol("fastify otel addhook original"),SUQ=Symbol("fastify otel setnotfound original"),MP=Symbol("fastify otel ignore path");class ii extends kUQ.InstrumentationBase{constructor(A){super(OUQ,JL0,A);if(this.servername=A?.servername??process.env.OTEL_SERVICE_NAME??"fastify",this[MP]=null,this._logger=ZY.diag.createComponentLogger({namespace:OUQ}),A?.ignorePaths!=null||process.env.OTEL_FASTIFY_IGNORE_PATHS!=null){let Q=A?.ignorePaths??process.env.OTEL_FASTIFY_IGNORE_PATHS;if((typeof Q!=="string"||Q.length===0)&&typeof Q!=="function")throw TypeError("ignorePaths must be a string or a function");let B=null;this[MP]=(Y)=>{if(typeof Q==="function")return Q(Y);else{if(B==null)B=wUQ().minimatch;return B(Y.url,Q)}}}}enable(){if(this._handleInitialization===void 0&&this.getConfig().registerOnInitialization){let A=this.plugin();this._handleInitialization=(Q)=>{Q.fastify.register(A)},jUQ.subscribe("fastify.initialization",this._handleInitialization)}return super.enable()}disable(){if(this._handleInitialization)jUQ.unsubscribe("fastify.initialization",this._handleInitialization),this._handleInitialization=void 0;return super.disable()}init(){return[]}plugin(){let A=this;return Q[Symbol.for("skip-override")]=!0,Q[Symbol.for("fastify.display-name")]="@fastify/otel",Q[Symbol.for("plugin-meta")]={fastify:CL0,name:"@fastify/otel"},Q;function Q(B,Y,J){B.decorate(U9,A),B.decorate(TUQ,B.addHook),B.decorate(SUQ,B.setNotFoundHandler),B.decorateRequest("opentelemetry",function(){let U=this[ML];return{span:this[DF],tracer:A.tracer,context:U,inject:(E,K)=>{return ZY.propagation.inject(U,E,K)},extract:(E,K)=>{return ZY.propagation.extract(U,E,K)}}}),B.decorateRequest(DF,null),B.decorateRequest(ML,null),B.addHook("onRoute",function(Z){if(A[MP]?.(Z)===!0){A._logger.debug(`Ignoring route instrumentation ${Z.method} ${Z.url} because it matches the ignore path`);return}for(let U of PUQ)if(Z[U]!=null){let $=Z[U];if(typeof $==="function")Z[U]=W($,{[NY.ATTR_SERVICE_NAME]:B[U9].servername,[K0.HOOK_NAME]:`${this.pluginName} - route -> ${U}`,[K0.FASTIFY_TYPE]:HF.ROUTE,[NY.ATTR_HTTP_ROUTE]:Z.url,[K0.HOOK_CALLBACK_NAME]:$.name?.length>0?$.name:F6});else if(Array.isArray($)){let E=[];for(let K of $)E.push(W(K,{[NY.ATTR_SERVICE_NAME]:B[U9].servername,[K0.HOOK_NAME]:`${this.pluginName} - route -> ${U}`,[K0.FASTIFY_TYPE]:HF.ROUTE,[NY.ATTR_HTTP_ROUTE]:Z.url,[K0.HOOK_CALLBACK_NAME]:K.name?.length>0?K.name:F6}));Z[U]=E}}if(Z.onSend!=null)Z.onSend=Array.isArray(Z.onSend)?[...Z.onSend,C]:[Z.onSend,C];else Z.onSend=C;if(Z.onError!=null)Z.onError=Array.isArray(Z.onError)?[...Z.onError,X]:[Z.onError,X];else Z.onError=X;Z.handler=W(Z.handler,{[NY.ATTR_SERVICE_NAME]:B[U9].servername,[K0.HOOK_NAME]:`${this.pluginName} - route-handler`,[K0.FASTIFY_TYPE]:HF.HANDLER,[NY.ATTR_HTTP_ROUTE]:Z.url,[K0.HOOK_CALLBACK_NAME]:Z.handler.name.length>0?Z.handler.name:F6})}),B.addHook("onRequest",function(Z,U,$){if(this[U9].isEnabled()===!1)return $();else if(this[U9][MP]?.({url:Z.url,method:Z.method})===!0)return this[U9]._logger.debug(`Ignoring request ${Z.method} ${Z.url} because it matches the ignore path`),$();let E=ZY.context.active();if(ZY.trace.getSpan(E)==null)E=ZY.propagation.extract(E,Z.headers);let K=zP.getRPCMetadata(E);if(Z.routeOptions.url!=null&&K?.type===zP.RPCType.HTTP)K.route=Z.routeOptions.url;let I=this[U9].tracer.startSpan("request",{attributes:{[NY.ATTR_SERVICE_NAME]:B[U9].servername,[K0.ROOT]:"@fastify/otel",[NY.ATTR_HTTP_ROUTE]:Z.url,[NY.ATTR_HTTP_REQUEST_METHOD]:Z.method}},E);Z[ML]=ZY.trace.setSpan(E,I),Z[DF]=I,ZY.context.with(Z[ML],()=>{$()})}),B.addHook("onResponse",function(Z,U,$){let E=Z[DF];if(E!=null)E.setStatus({code:ZY.SpanStatusCode.OK,message:"OK"}),E.setAttributes({[NY.ATTR_HTTP_RESPONSE_STATUS_CODE]:404}),E.end();Z[DF]=null,$()}),B.addHook=G,B.setNotFoundHandler=F,J();function C(Z,U,$,E){let K=Z[DF];if(K!=null){if(U.statusCode<500)K.setStatus({code:ZY.SpanStatusCode.OK,message:"OK"});K.setAttributes({[NY.ATTR_HTTP_RESPONSE_STATUS_CODE]:U.statusCode}),K.end()}Z[DF]=null,E(null,$)}function X(Z,U,$,E){let K=Z[DF];if(K!=null)K.setStatus({code:ZY.SpanStatusCode.ERROR,message:$.message}),K.recordException($);E()}function G(Z,U){let $=this[TUQ];if(PUQ.includes(Z))return $.call(this,Z,W(U,{[NY.ATTR_SERVICE_NAME]:B[U9].servername,[K0.HOOK_NAME]:`${this.pluginName} - ${Z}`,[K0.FASTIFY_TYPE]:HF.INSTANCE,[K0.HOOK_CALLBACK_NAME]:U.name?.length>0?U.name:F6}));else return $.call(this,Z,U)}function F(Z,U){let $=this[SUQ];if(typeof Z==="function")U=W(Z,{[NY.ATTR_SERVICE_NAME]:B[U9].servername,[K0.HOOK_NAME]:`${this.pluginName} - not-found-handler`,[K0.FASTIFY_TYPE]:HF.INSTANCE,[K0.HOOK_CALLBACK_NAME]:Z.name?.length>0?Z.name:F6}),$.call(this,U);else{if(Z.preValidation!=null)Z.preValidation=W(Z.preValidation,{[NY.ATTR_SERVICE_NAME]:B[U9].servername,[K0.HOOK_NAME]:`${this.pluginName} - not-found-handler - preValidation`,[K0.FASTIFY_TYPE]:HF.INSTANCE,[K0.HOOK_CALLBACK_NAME]:Z.preValidation.name?.length>0?Z.preValidation.name:F6});if(Z.preHandler!=null)Z.preHandler=W(Z.preHandler,{[NY.ATTR_SERVICE_NAME]:B[U9].servername,[K0.HOOK_NAME]:`${this.pluginName} - not-found-handler - preHandler`,[K0.FASTIFY_TYPE]:HF.INSTANCE,[K0.HOOK_CALLBACK_NAME]:Z.preHandler.name?.length>0?Z.preHandler.name:F6});U=W(U,{[NY.ATTR_SERVICE_NAME]:B[U9].servername,[K0.HOOK_NAME]:`${this.pluginName} - not-found-handler`,[K0.FASTIFY_TYPE]:HF.INSTANCE,[K0.HOOK_CALLBACK_NAME]:U.name?.length>0?U.name:F6}),$.call(this,Z,U)}}function W(Z,U={}){return function(...E){let K=this[U9],[I]=E;if(K.isEnabled()===!1)return Z.call(this,...E);let V=I[ML]??ZY.context.active(),H=K.tracer.startSpan(`handler - ${Z.name?.length>0?Z.name:this.pluginName??F6}`,{attributes:U},V);return ZY.context.with(ZY.trace.setSpan(V,H),function(){try{let D=Z.call(this,...E);if(typeof D?.then==="function")return D.then((L)=>{return H.end(),L},(L)=>{return H.setStatus({code:ZY.SpanStatusCode.ERROR,message:L.message}),H.recordException(L),H.end(),Promise.reject(L)});return H.end(),D}catch(D){throw H.setStatus({code:ZY.SpanStatusCode.ERROR,message:D.message}),H.recordException(D),H.end(),D}},this)}}}}}var Y1=qA(yA(),1),wP=qA(MB(),1),E$=qA(NB(),1),hUQ=qA(uB(),1);var W6;(function(A){A.FASTIFY_NAME="fastify.name";let B="fastify.type";A.FASTIFY_TYPE=B;let Y="hook.name";A.HOOK_NAME=Y;let J="plugin.name";A.PLUGIN_NAME=J})(W6||(W6={}));var zL;(function(A){A.MIDDLEWARE="middleware";let B="request_handler";A.REQUEST_HANDLER=B})(zL||(zL={}));var RL;(function(A){A.MIDDLEWARE="middleware";let B="request handler";A.REQUEST_HANDLER=B})(RL||(RL={}));var vUQ=qA(yA(),1);var wL=Symbol("opentelemetry.instrumentation.fastify.request_active_span");function ni(A,Q,B,Y={}){let J=Q.startSpan(B,{attributes:Y}),C=A[wL]||[];return C.push(J),Object.defineProperty(A,wL,{enumerable:!1,configurable:!0,value:C}),J}function RP(A,Q){let B=A[wL]||[];if(!B.length)return;B.forEach((Y)=>{if(Q)Y.setStatus({code:vUQ.SpanStatusCode.ERROR,message:Q.message}),Y.recordException(Q);Y.end()}),delete A[wL]}function yUQ(A,Q,B){let Y,J=void 0;try{if(J=A(),_UQ(J))J.then((C)=>Q(void 0,C),(C)=>Q(C))}catch(C){Y=C}finally{if(!_UQ(J)){if(Q(Y,J),Y)throw Y}return J}}function _UQ(A){return typeof A==="object"&&A&&typeof Object.getOwnPropertyDescriptor(A,"then")?.value==="function"||!1}var XL0="0.1.0",GL0="@sentry/instrumentation-fastify-v3",gUQ="anonymous",FL0=new Set(["onTimeout","onRequest","preParsing","preValidation","preSerialization","preHandler","onSend","onResponse","onError"]);class si extends E$.InstrumentationBase{constructor(A={}){super(GL0,XL0,A)}init(){return[new E$.InstrumentationNodeModuleDefinition("fastify",[">=3.0.0 <4"],(A)=>{return this._patchConstructor(A)})]}_hookOnRequest(){let A=this;return function(B,Y,J){if(!A.isEnabled())return J();A._wrap(Y,"send",A._patchSend());let C=B,X=wP.getRPCMetadata(Y1.context.active()),G=C.routeOptions?C.routeOptions.url:B.routerPath;if(G&&X?.type===wP.RPCType.HTTP)X.route=G;let F=B.method||"GET";RQ().setTransactionName(`${F} ${G}`),J()}}_wrapHandler(A,Q,B,Y){let J=this;return this._diag.debug("Patching fastify route.handler function"),function(...C){if(!J.isEnabled())return B.apply(this,C);let X=B.name||A||gUQ,G=`${RL.MIDDLEWARE} - ${X}`,F=C[1],W=ni(F,J.tracer,G,{[W6.FASTIFY_TYPE]:zL.MIDDLEWARE,[W6.PLUGIN_NAME]:A,[W6.HOOK_NAME]:Q}),Z=Y&&C[C.length-1];if(Z)C[C.length-1]=function(...U){RP(F),Z.apply(this,U)};return Y1.context.with(Y1.trace.setSpan(Y1.context.active(),W),()=>{return yUQ(()=>{return B.apply(this,C)},(U)=>{if(U instanceof Error)W.setStatus({code:Y1.SpanStatusCode.ERROR,message:U.message}),W.recordException(U);if(!Y)RP(F)})})}}_wrapAddHook(){let A=this;return this._diag.debug("Patching fastify server.addHook function"),function(Q){return function(...Y){let J=Y[0],C=Y[1],X=this.pluginName;if(!FL0.has(J))return Q.apply(this,Y);let G=typeof Y[Y.length-1]==="function"&&C.constructor.name!=="AsyncFunction";return Q.apply(this,[J,A._wrapHandler(X,J,C,G)])}}}_patchConstructor(A){let Q=this;function B(...Y){let J=A.fastify.apply(this,Y);return J.addHook("onRequest",Q._hookOnRequest()),J.addHook("preHandler",Q._hookPreHandler()),WL0(),Q._wrap(J,"addHook",Q._wrapAddHook()),J}if(A.errorCodes!==void 0)B.errorCodes=A.errorCodes;return B.fastify=B,B.default=B,B}_patchSend(){let A=this;return this._diag.debug("Patching fastify reply.send function"),function(B){return function(...J){let C=J[0];if(!A.isEnabled())return B.apply(this,J);return E$.safeExecuteInTheMiddle(()=>{return B.apply(this,J)},(X)=>{if(!X&&C instanceof Error)X=C;RP(this,X)})}}}_hookPreHandler(){let A=this;return this._diag.debug("Patching fastify preHandler function"),function(B,Y,J){if(!A.isEnabled())return J();let C=B,X=C.routeOptions?.handler||C.context?.handler,G=X?.name.startsWith("bound ")?X.name.substring(6):X?.name,F=`${RL.REQUEST_HANDLER} - ${G||this.pluginName||gUQ}`,W={[W6.PLUGIN_NAME]:this.pluginName,[W6.FASTIFY_TYPE]:zL.REQUEST_HANDLER,[hUQ.SEMATTRS_HTTP_ROUTE]:C.routeOptions?C.routeOptions.url:B.routerPath};if(G)W[W6.FASTIFY_NAME]=G;let Z=ni(Y,A.tracer,F,W);xUQ(Z);let{requestHook:U}=A.getConfig();if(U)E$.safeExecuteInTheMiddle(()=>U(Z,{request:B}),($)=>{if($)A._diag.error("request hook failed",$)},!0);return Y1.context.with(Y1.trace.setSpan(Y1.context.active(),Z),()=>{J()})}}}function WL0(){let A=gA();if(A)A.on("spanStart",(Q)=>{xUQ(Q)})}function xUQ(A){let Q=eA(A).data,B=Q["fastify.type"];if(Q[BQ]||!B)return;A.setAttributes({[DQ]:"auto.http.otel.fastify",[BQ]:`${B}.fastify`});let Y=Q["fastify.name"]||Q["plugin.name"]||Q["hook.name"];if(typeof Y==="string"){let J=Y.replace(/^fastify -> /,"").replace(/^@fastify\/otel -> /,"");A.updateName(J)}}var bUQ="Fastify",ZL0="Fastify-V3",ri=EQ(ZL0,()=>new si),ai=EQ(bUQ,()=>{let A=new ii,Q=A.plugin();return fUQ.subscribe("fastify.initialization",(B)=>{let Y=B.fastify;Y?.register(Q).after((J)=>{if(J)fQ&&e.error("Failed to setup Fastify instrumentation",J);else if(EL0(),Y)KL0(Y)})}),A}),$L0=()=>{return{name:bUQ,setupOnce(){ri(),ai()}}},jP=wA($L0);function UL0(A,Q,B){let Y=B.statusCode;return Y>=500||Y<=299}function mUQ(A,Q){let B=Q?.shouldHandleError||UL0,Y=Object.assign(function(J,C,X){J.addHook("onError",async(G,F,W)=>{if(B(W,G,F))jB(W)}),X()},{[Symbol.for("skip-override")]:!0,[Symbol.for("fastify.display-name")]:"sentry-fastify-error-handler"});A.register(Y)}function uUQ(A){let Q=eA(A),B=Q.description,Y=Q.data,J=Y["fastify.type"],C=J==="hook",X=J===B?.startsWith("handler -"),G=B==="request"||J==="request-handler";if(Y[BQ]||!X&&!G&&!C)return;let F=C?"hook":X?"middleware":G?"request-handler":"";A.setAttributes({[DQ]:"auto.http.otel.fastify",[BQ]:`${F}.fastify`});let W=Y["fastify.name"]||Y["plugin.name"]||Y["hook.name"];if(typeof W==="string"){let Z=W.replace(/^fastify -> /,"").replace(/^@fastify\/otel -> /,"");A.updateName(Z)}}function EL0(){let A=gA();if(A)A.on("spanStart",(Q)=>{uUQ(Q)})}function KL0(A){A.addHook("onRequest",async(Q,B)=>{if(Q.opentelemetry){let{span:C}=Q.opentelemetry();if(C)uUQ(C)}let Y=Q.routeOptions?.url,J=Q.method||"GET";RQ().setTransactionName(`${J} ${Y}`)})}var wEQ=qA(REQ(),1);var jEQ="Graphql",Yn=EQ(jEQ,wEQ.GraphQLInstrumentation,(A)=>{let Q=OEQ(A);return{...Q,responseHook(B){p0(B,"auto.graphql.otel.graphql");let Y=eA(B).data,J=Y["graphql.operation.type"],C=Y["graphql.operation.name"];if(Q.useOperationNameForRootSpan&&J){let X=$0(B),F=eA(X).data[EK]||[],W=C?`${J} ${C}`:`${J}`;if(Array.isArray(F))F.push(W),X.setAttribute(EK,F);else if(typeof F==="string")X.setAttribute(EK,[F,W]);else X.setAttribute(EK,W);if(!eA(X).data["original-description"])X.setAttribute("original-description",eA(X).description);X.updateName(`${eA(X).data["original-description"]} (${uL0(F)})`)}}}}),mL0=(A={})=>{return{name:jEQ,setupOnce(){Yn(OEQ(A))}}},SP=wA(mL0);function OEQ(A){return{ignoreResolveSpans:!0,ignoreTrivialResolveSpans:!0,useOperationNameForRootSpan:!0,...A}}function uL0(A){if(Array.isArray(A)){let Q=A.slice().sort();if(Q.length<=5)return Q.join(", ");else return`${Q.slice(0,5).join(", ")}, +${Q.length-5}`}return`${A}`}var lEQ=qA(cEQ(),1);var pEQ="Kafka",Jn=EQ(pEQ,()=>new lEQ.KafkaJsInstrumentation({consumerHook(A){p0(A,"auto.kafkajs.otel.consumer")},producerHook(A){p0(A,"auto.kafkajs.otel.producer")}})),lL0=()=>{return{name:pEQ,setupOnce(){Jn()}}},kP=wA(lL0);var YKQ=qA(BKQ(),1);var JKQ="LruMemoizer",Cn=EQ(JKQ,()=>new YKQ.LruMemoizerInstrumentation),sL0=()=>{return{name:JKQ,setupOnce(){Cn()}}},_P=wA(sL0);var NKQ=qA(DKQ(),1);var LKQ="Mongo",Zn=EQ(LKQ,()=>new NKQ.MongoDBInstrumentation({dbStatementSerializer:eL0,responseHook(A){p0(A,"auto.db.otel.mongo")}}));function eL0(A){let Q=Wn(A);return JSON.stringify(Q)}function Wn(A){if(Array.isArray(A))return A.map((Q)=>Wn(Q));if(Aq0(A)){let Q={};return Object.entries(A).map(([B,Y])=>[B,Wn(Y)]).reduce((B,Y)=>{if(Bq0(Y))B[Y[0]]=Y[1];return B},Q)}return"?"}function Aq0(A){return typeof A==="object"&&A!==null&&!Qq0(A)}function Qq0(A){let Q=!1;if(typeof Buffer<"u")Q=Buffer.isBuffer(A);return Q}function Bq0(A){return Array.isArray(A)}var Yq0=()=>{return{name:LKQ,setupOnce(){Zn()}}},vP=wA(Yq0);var uKQ=qA(mKQ(),1);var dKQ="Mongoose",En=EQ(dKQ,()=>new uKQ.MongooseInstrumentation({responseHook(A){p0(A,"auto.db.otel.mongoose")}})),Iq0=()=>{return{name:dKQ,setupOnce(){En()}}},gP=wA(Iq0);var XVQ=qA(CVQ(),1);var GVQ="Mysql",Hn=EQ(GVQ,()=>new XVQ.MySQLInstrumentation({})),_q0=()=>{return{name:GVQ,setupOnce(){Hn()}}},xP=wA(_q0);var OVQ=qA(jVQ(),1);var PVQ="Mysql2",Mn=EQ(PVQ,()=>new OVQ.MySQL2Instrumentation({responseHook(A){p0(A,"auto.db.otel.mysql2")}})),rq0=()=>{return{name:PVQ,setupOnce(){Mn()}}},bP=wA(rq0);var VIQ=qA(nVQ(),1),IIQ=qA(ZIQ(),1);var WM0=["get","set","setex"],Rn=["get","mget"],ZM0=["set","setex"];function yL(A,Q){return A.includes(Q.toLowerCase())}function wn(A){if(yL(Rn,A))return"cache.get";else if(yL(ZM0,A))return"cache.put";else return}function $M0(A,Q){return Q.some((B)=>A.startsWith(B))}function UIQ(A,Q){try{if(Q.length===0)return;let B=(J)=>{if(typeof J==="string"||typeof J==="number"||Buffer.isBuffer(J))return[J.toString()];else if(Array.isArray(J))return $IQ(J.map((C)=>B(C)));else return[""]},Y=Q[0];if(yL(WM0,A)&&Y!=null)return B(Y);return $IQ(Q.map((J)=>B(J)))}catch(B){return}}function EIQ(A,Q,B){if(!wn(A))return!1;for(let Y of Q)if($M0(Y,B))return!0;return!1}function KIQ(A){let Q=(B)=>{try{if(Buffer.isBuffer(B))return B.byteLength;else if(typeof B==="string")return B.length;else if(typeof B==="number")return B.toString().length;else if(B===null||B===void 0)return 0;return JSON.stringify(B).length}catch(Y){return}};return Array.isArray(A)?A.reduce((B,Y)=>{let J=Q(Y);return typeof J==="number"?B!==void 0?B+J:J:B},0):Q(A)}function $IQ(A){let Q=[],B=(Y)=>{Y.forEach((J)=>{if(Array.isArray(J))B(J);else Q.push(J)})};return B(A),Q}var HIQ="Redis",jn={},DIQ=(A,Q,B,Y)=>{A.setAttribute(DQ,"auto.db.otel.redis");let J=UIQ(Q,B),C=wn(Q);if(!J||!C||!jn.cachePrefixes||!EIQ(Q,J,jn.cachePrefixes))return;let X=eA(A).data["net.peer.name"],G=eA(A).data["net.peer.port"];if(G&&X)A.setAttributes({"network.peer.address":X,"network.peer.port":G});let F=KIQ(Y);if(F)A.setAttribute($u,F);if(yL(Rn,Q)&&F!==void 0)A.setAttribute(Wu,F>0);A.setAttributes({[BQ]:C,[Zu]:J});let W=J.join(", ");A.updateName(b9(W,1024))},UM0=EQ("IORedis",()=>{return new VIQ.IORedisInstrumentation({responseHook:DIQ})}),EM0=EQ("Redis-4",()=>{return new IIQ.RedisInstrumentation({responseHook:DIQ})}),On=Object.assign(()=>{UM0(),EM0()},{id:HIQ}),KM0=(A={})=>{return{name:HIQ,setupOnce(){jn=A,On()}}},uP=wA(KM0);var aIQ=qA(rIQ(),1);var oIQ="Postgres",gn=EQ(oIQ,()=>new aIQ.PgInstrumentation({requireParentSpan:!0,requestHook(A){p0(A,"auto.db.otel.postgres")}})),tM0=()=>{return{name:oIQ,setupOnce(){gn()}}},pP=wA(tM0);var AHQ=qA(yA(),1),iP=qA(NB(),1),vF=qA(yA(),1);var eM0=process.env.PRISMA_SHOW_ALL_TRACES==="true",Az0="00-10-10-00";function Qz0(A){switch(A){case"client":return vF.SpanKind.CLIENT;case"internal":default:return vF.SpanKind.INTERNAL}}var Bz0=class{traceMiddleware;tracerProvider;ignoreSpanTypes;constructor({traceMiddleware:A,tracerProvider:Q,ignoreSpanTypes:B}){this.traceMiddleware=A,this.tracerProvider=Q,this.ignoreSpanTypes=B}isEnabled(){return!0}getTraceParent(A){let Q=vF.trace.getSpanContext(A??vF.context.active());if(Q)return`00-${Q.traceId}-${Q.spanId}-0${Q.traceFlags}`;return Az0}dispatchEngineSpans(A){let Q=this.tracerProvider.getTracer("prisma"),B=new Map,Y=A.filter((J)=>J.parentId===null);for(let J of Y)QHQ(Q,J,A,B,this.ignoreSpanTypes)}getActiveContext(){return vF.context.active()}runInChildSpan(A,Q){if(typeof A==="string")A={name:A};if(A.internal&&!eM0)return Q();if(A.middleware&&!this.traceMiddleware)return Q();let B=this.tracerProvider.getTracer("prisma"),Y=A.context??this.getActiveContext(),J=`prisma:client:${A.name}`;if(BHQ(J,this.ignoreSpanTypes))return Q();if(A.active===!1){let C=B.startSpan(J,A,Y);return tIQ(C,Q(C,Y))}return B.startActiveSpan(J,A,(C)=>tIQ(C,Q(C,Y)))}};function QHQ(A,Q,B,Y,J){if(BHQ(Q.name,J))return;let C={attributes:Q.attributes,kind:Qz0(Q.kind),startTime:Q.startTime};A.startActiveSpan(Q.name,C,(X)=>{if(Y.set(Q.id,X.spanContext().spanId),Q.links)X.addLinks(Q.links.flatMap((F)=>{let W=Y.get(F);if(!W)return[];return{context:{spanId:W,traceId:X.spanContext().traceId,traceFlags:X.spanContext().traceFlags}}}));let G=B.filter((F)=>F.parentId===Q.id);for(let F of G)QHQ(A,F,B,Y,J);X.end(Q.endTime)})}function tIQ(A,Q){if(Yz0(Q))return Q.then((B)=>{return A.end(),B},(B)=>{throw A.end(),B});return A.end(),Q}function Yz0(A){return A!=null&&typeof A.then==="function"}function BHQ(A,Q){return Q.some((B)=>typeof B==="string"?B===A:B.test(A))}var YHQ={name:"@prisma/instrumentation",version:"6.7.0",description:"OpenTelemetry compliant instrumentation for Prisma Client",main:"dist/index.js",module:"dist/index.mjs",types:"dist/index.d.ts",exports:{".":{require:{types:"./dist/index.d.ts",default:"./dist/index.js"},import:{types:"./dist/index.d.ts",default:"./dist/index.mjs"}}},license:"Apache-2.0",homepage:"https://www.prisma.io",repository:{type:"git",url:"https://github.com/prisma/prisma.git",directory:"packages/instrumentation"},bugs:"https://github.com/prisma/prisma/issues",devDependencies:{"@prisma/internals":"workspace:*","@swc/core":"1.11.5","@types/jest":"29.5.14","@types/node":"18.19.76","@opentelemetry/api":"1.9.0",jest:"29.7.0","jest-junit":"16.0.0",typescript:"5.4.5"},dependencies:{"@opentelemetry/instrumentation":"^0.52.0 || ^0.53.0 || ^0.54.0 || ^0.55.0 || ^0.56.0 || ^0.57.0"},peerDependencies:{"@opentelemetry/api":"^1.8"},files:["dist"],keywords:["prisma","instrumentation","opentelemetry","otel"],scripts:{dev:"DEV=true tsx helpers/build.ts",build:"tsx helpers/build.ts",prepublishOnly:"pnpm run build",test:"jest"},sideEffects:!1},xn=YHQ.version,Jz0=xn.split(".")[0],eIQ="PRISMA_INSTRUMENTATION",hn=`V${Jz0}_PRISMA_INSTRUMENTATION`,Cz0=YHQ.name,Xz0="@prisma/client",JHQ=class extends iP.InstrumentationBase{tracerProvider;constructor(A={}){super(Cz0,xn,A)}setTracerProvider(A){this.tracerProvider=A}init(){return[new iP.InstrumentationNodeModuleDefinition(Xz0,[xn])]}enable(){let A=this._config,Q={helper:new Bz0({traceMiddleware:A.middleware??!1,tracerProvider:this.tracerProvider??AHQ.trace.getTracerProvider(),ignoreSpanTypes:A.ignoreSpanTypes??[]})};global[eIQ]=Q,global[hn]=Q}disable(){delete global[eIQ],delete global[hn]}isEnabled(){return Boolean(global[hn])}};var CHQ="Prisma";function Gz0(A){return!!A&&typeof A==="object"&&"dispatchEngineSpans"in A}function XHQ(){let A=globalThis.PRISMA_INSTRUMENTATION;return A&&typeof A==="object"&&"helper"in A?A.helper:void 0}class GHQ extends JHQ{constructor(){super()}enable(){super.enable();let A=XHQ(),Q=!1;if(Gz0(A))A.createEngineSpan=()=>{y0(()=>{if(!Q)Q=!0,console.warn("[Sentry] The Sentry SDK supports tracing with Prisma version 5 only with limited capabilities. For full tracing capabilities pass `prismaInstrumentation` for version 5 to the Sentry `prismaIntegration`. Read more: https://docs.sentry.io/platforms/javascript/guides/node/configuration/integrations/prisma/")})}}}var Fz0=EQ(CHQ,(A)=>{if(A?.prismaInstrumentation)return A.prismaInstrumentation;return new GHQ}),nP=wA(({prismaInstrumentation:A}={})=>{return{name:CHQ,setupOnce(){Fz0({prismaInstrumentation:A})},setup(Q){if(!XHQ())return;Q.on("spanStart",(B)=>{let Y=eA(B);if(Y.description?.startsWith("prisma:"))B.setAttribute(DQ,"auto.db.otel.prisma");if(Y.description==="prisma:engine:db_query"&&Y.data["db.query.text"])B.updateName(Y.data["db.query.text"]);if(Y.description==="prisma:engine:db_query"&&!Y.data["db.system"])B.setAttribute("db.system","prisma")})}}});var wHQ=qA(RHQ(),1);var jHQ="Hapi",aP=EQ(jHQ,()=>new wHQ.HapiInstrumentation),Tz0=()=>{return{name:jHQ,setupOnce(){aP()}}},oP=wA(Tz0);function Sz0(A){return!!(A&&typeof A==="object"&&("error"in A)&&A.error)}function kz0(A){jB(A,{mechanism:{type:"hapi",handled:!1,data:{function:"hapiErrorPlugin"}}})}var _z0={name:"SentryHapiErrorPlugin",version:u0,register:async function(A){A.events.on({name:"request",channels:["error"]},(B,Y)=>{if(RQ()!==M5()){let J=B.route;if(J.path)RQ().setTransactionName(`${J.method.toUpperCase()} ${J.path}`)}else fQ&&e.warn("Isolation scope is still the default isolation scope - skipping setting transactionName");if(Sz0(Y))kz0(Y.error)})}};async function OHQ(A){await A.register(_z0);let Q=gA();if(Q)Q.on("spanStart",(B)=>{vz0(B)});VF(A.register,"hapi")}function vz0(A){let Q=eA(A).data,B=Q["hapi.type"];if(Q[BQ]||!B)return;A.setAttributes({[DQ]:"auto.http.otel.hapi",[BQ]:`${B}.hapi`})}var aHQ=qA(rHQ(),1),oHQ=qA(uB(),1);var tHQ="Koa",nn=EQ(tHQ,()=>new aHQ.KoaInstrumentation({requestHook(A,Q){if(cz0(A),RQ()===M5()){fQ&&e.warn("Isolation scope is default isolation scope - skipping setting transactionName");return}let Y=eA(A).data[oHQ.ATTR_HTTP_ROUTE],J=Q.context?.request?.method?.toUpperCase()||"GET";if(Y)RQ().setTransactionName(`${J} ${Y}`)}})),dz0=()=>{return{name:tHQ,setupOnce(){nn()}}},AT=wA(dz0),eHQ=(A)=>{A.use(async(Q,B)=>{try{await B()}catch(Y){throw jB(Y),Y}}),VF(A.use,"koa")};function cz0(A){A.setAttribute(DQ,"auto.http.otel.koa");let Q=eA(A).data,B=Q["koa.type"];if(B)A.setAttribute(BQ,`${B}.koa`);let Y=Q["koa.name"];if(typeof Y==="string")A.updateName(Y||"< unknown >")}var LDQ=qA(NDQ(),1);var qDQ="Connect",tn=EQ(qDQ,()=>new LDQ.ConnectInstrumentation),Y20=()=>{return{name:qDQ,setupOnce(){tn()}}},BT=wA(Y20);function J20(A,Q,B,Y){jB(A),Y(A)}var MDQ=(A)=>{A.use(J20);let Q=gA();if(Q)Q.on("spanStart",(B)=>{C20(B)});VF(A.use,"connect")};function C20(A){let Q=eA(A).data,B=Q["connect.type"];if(Q[BQ]||!B)return;A.setAttributes({[DQ]:"auto.http.otel.connect",[BQ]:`${B}.connect`});let Y=Q["connect.name"];if(typeof Y==="string")A.updateName(Y)}import*as X20 from"node:http";var en="Spotlight",G20=(A={})=>{let Q={sidecarUrl:A.sidecarUrl||"http://localhost:8969/stream"};return{name:en,setup(B){if(typeof process==="object"&&process.env&&process.env.NODE_ENV!=="development")e.warn("[Spotlight] It seems you're not in dev mode. Do you really want to have Spotlight enabled?");F20(B,Q)}}},YT=wA(G20);function F20(A,Q){let B=W20(Q.sidecarUrl);if(!B)return;let Y=0;A.on("beforeEnvelope",(J)=>{if(Y>3){e.warn("[Spotlight] Disabled Sentry -> Spotlight integration due to too many failed requests");return}let C=CN(J),G=Z20()({method:"POST",path:B.pathname,hostname:B.hostname,port:B.port,headers:{"Content-Type":"application/x-sentry-envelope"}},(F)=>{if(F.statusCode&&F.statusCode>=200&&F.statusCode<400)Y=0;F.on("data",()=>{}),F.on("end",()=>{}),F.setEncoding("utf8")});G.on("error",()=>{Y++,e.warn("[Spotlight] Failed to send envelope to Spotlight Sidecar")}),G.write(C),G.end()})}function W20(A){try{return new URL(`${A}`)}catch{e.warn(`[Spotlight] Invalid sidecar URL: ${A}`);return}}function Z20(){let{request:A}=X20;if($20(A))return A.__sentry_original__;return A}function $20(A){return"__sentry_original__"in A}var cDQ=qA(dDQ(),1);var lDQ="Knex",O20=EQ(lDQ,()=>new cDQ.KnexInstrumentation({requireParentSpan:!0})),P20=()=>{let A;return{name:lDQ,setupOnce(){let Q=O20();A=XF(Q)},setup(Q){A?.(()=>Q.on("spanStart",(B)=>{let{data:Y}=eA(B);if("knex.version"in Y)B.setAttribute(DQ,"auto.db.otel.knex")}))}}},pDQ=wA(P20);var WNQ=qA(FNQ(),1);var g20=new Set(["callProcedure","execSql","execSqlBatch","execBulkLoad","prepare","execute"]),ZNQ="Tedious",Qs=EQ(ZNQ,()=>new WNQ.TediousInstrumentation({})),h20=()=>{let A;return{name:ZNQ,setupOnce(){let Q=Qs();A=XF(Q)},setup(Q){A?.(()=>Q.on("spanStart",(B)=>{let{description:Y,data:J}=eA(B);if(!Y||J["db.system"]!=="mssql")return;let C=Y.split(" ")[0]||"";if(g20.has(C))B.setAttribute(DQ,"auto.db.otel.tedious")}))}}},FT=wA(h20);var LNQ=qA(NNQ(),1);var qNQ="GenericPool",Ys=EQ(qNQ,()=>new LNQ.GenericPoolInstrumentation({})),m20=()=>{let A;return{name:qNQ,setupOnce(){let Q=Ys();A=XF(Q)},setup(Q){A?.(()=>Q.on("spanStart",(B)=>{let J=eA(B).description;if(J==="generic-pool.aquire"||J==="generic-pool.acquire")B.setAttribute(DQ,"auto.db.otel.generic_pool")}))}}},WT=wA(m20);var yNQ=qA(vNQ(),1);var gNQ="Dataloader",c20=EQ(gNQ,()=>new yNQ.DataloaderInstrumentation({requireParentSpan:!0})),l20=()=>{let A;return{name:gNQ,setupOnce(){let Q=c20();A=XF(Q)},setup(Q){A?.(()=>{Q.on("spanStart",(B)=>{let Y=eA(B);if(Y.description?.startsWith("dataloader"))B.setAttribute(DQ,"auto.db.otel.dataloader");if(Y.description==="dataloader.load"||Y.description==="dataloader.loadMany"||Y.description==="dataloader.batch")B.setAttribute(BQ,"cache.get")})})}}},hNQ=wA(l20);var BLQ=qA(QLQ(),1);var YLQ="Amqplib",Z30={consumeEndHook:(A)=>{p0(A,"auto.amqplib.otel.consumer")},publishHook:(A)=>{p0(A,"auto.amqplib.otel.publisher")}},Fs=EQ(YLQ,()=>new BLQ.AmqplibInstrumentation(Z30)),$30=()=>{return{name:YLQ,setupOnce(){Fs()}}},UT=wA($30);var ET=qA(NB(),1);var JLQ=["generateText","streamText","generateObject","streamObject","embed","embedMany"];class mL extends ET.InstrumentationBase{__init(){this._isPatched=!1}__init2(){this._callbacks=[]}constructor(A={}){super("@sentry/instrumentation-vercel-ai",u0,A);mL.prototype.__init.call(this),mL.prototype.__init2.call(this)}init(){return new ET.InstrumentationNodeModuleDefinition("ai",[">=3.0.0 <5"],this._patch.bind(this))}callWhenPatched(A){if(this._isPatched)A();else this._callbacks.push(A)}_patch(A){this._isPatched=!0,this._callbacks.forEach((B)=>B()),this._callbacks=[];function Q(B){return(...Y)=>{let J=Y[0].experimental_telemetry||{};if(J.isEnabled===void 0)Y[0].experimental_telemetry={isEnabled:!0,recordInputs:!1,recordOutputs:!1,...J};return B.apply(this,Y)}}if(Object.prototype.toString.call(A)==="[object Module]"){for(let B of JLQ)A[B]=Q(A[B]);return A}else{let B=JLQ.reduce((Y,J)=>{return Y[J]=Q(A[J]),Y},{});return{...A,...B}}}}var CLQ="VercelAI",Ws=EQ(CLQ,()=>new mL({})),U30=()=>{let A;return{name:CLQ,setupOnce(){A=Ws()},setup(Q){A?.callWhenPatched(()=>{Q.on("spanStart",(B)=>{let{data:Y,description:J}=eA(B);if(!J)return;let C=Y["ai.model.id"],X=Y["ai.model.provider"];if(typeof C!=="string"||typeof X!=="string"||!C||!X)return;let G=!1;switch(J){case"ai.generateText":{B.setAttribute(BQ,"ai.pipeline.generateText"),G=!0;break}case"ai.generateText.doGenerate":{B.setAttribute(BQ,"ai.run.doGenerate");break}case"ai.streamText":{B.setAttribute(BQ,"ai.pipeline.streamText"),G=!0;break}case"ai.streamText.doStream":{B.setAttribute(BQ,"ai.run.doStream");break}case"ai.generateObject":{B.setAttribute(BQ,"ai.pipeline.generateObject"),G=!0;break}case"ai.generateObject.doGenerate":{B.setAttribute(BQ,"ai.run.doGenerate");break}case"ai.streamObject":{B.setAttribute(BQ,"ai.pipeline.streamObject"),G=!0;break}case"ai.streamObject.doStream":{B.setAttribute(BQ,"ai.run.doStream");break}case"ai.embed":{B.setAttribute(BQ,"ai.pipeline.embed"),G=!0;break}case"ai.embed.doEmbed":{B.setAttribute(BQ,"ai.embeddings");break}case"ai.embedMany":{B.setAttribute(BQ,"ai.pipeline.embedMany"),G=!0;break}case"ai.embedMany.doEmbed":{B.setAttribute(BQ,"ai.embeddings");break}case"ai.toolCall":case"ai.stream.firstChunk":case"ai.stream.finish":B.setAttribute(BQ,"ai.run");break}p0(B,"auto.vercelai.otel");let F=J.replace("ai.","");B.setAttribute("ai.pipeline.name",F),B.updateName(F);let W=Y["ai.telemetry.functionId"];if(W&&typeof W==="string"&&G)B.updateName(W),B.setAttribute("ai.pipeline.name",W);if(Y["ai.prompt"])B.setAttribute("ai.input_messages",Y["ai.prompt"]);if(Y["ai.model.id"])B.setAttribute("ai.model_id",Y["ai.model.id"]);B.setAttribute("ai.streaming",J.includes("stream"))}),Q.addEventProcessor((B)=>{if(B.type==="transaction"&&B.spans?.length)for(let Y of B.spans){let{data:J,description:C}=Y;if(!C||Y.origin!=="auto.vercelai.otel")continue;if(J["ai.usage.completionTokens"]!=null)J["ai.completion_tokens.used"]=J["ai.usage.completionTokens"];if(J["ai.usage.promptTokens"]!=null)J["ai.prompt_tokens.used"]=J["ai.usage.promptTokens"];if(typeof J["ai.usage.completionTokens"]=="number"&&typeof J["ai.usage.promptTokens"]=="number")J["ai.total_tokens.used"]=J["ai.usage.completionTokens"]+J["ai.usage.promptTokens"]}return B})})}}},KT=wA(U30);import*as Zs from"node:diagnostics_channel";var E30="ChildProcess",VT=wA((A={})=>{return{name:E30,setup(){Zs.channel("child_process").subscribe((Q)=>{if(Q&&typeof Q==="object"&&"process"in Q)K30(Q.process,A)}),Zs.channel("worker_threads").subscribe((Q)=>{if(Q&&typeof Q==="object"&&"worker"in Q)V30(Q.worker,A)})}}});function K30(A,Q){let B=!1,Y;A.on("spawn",()=>{if(A.spawnfile==="/usr/bin/sw_vers"){B=!0;return}if(Y={spawnfile:A.spawnfile},Q.includeChildProcessArgs)Y.spawnargs=A.spawnargs}).on("exit",(J)=>{if(!B){if(B=!0,J!==null&&J!==0)X9({category:"child_process",message:`Child process exited with code '${J}'`,level:J===0?"info":"warning",data:Y})}}).on("error",(J)=>{if(!B)B=!0,X9({category:"child_process",message:`Child process errored with '${J.message}'`,level:"error",data:Y})})}function V30(A,Q){let B;A.on("online",()=>{B=A.threadId}).on("error",(Y)=>{if(Q.captureWorkerErrors!==!1)jB(Y,{mechanism:{type:"instrument",handled:!1,data:{threadId:String(B)}}});else X9({category:"worker_thread",message:`Worker thread errored with '${Y.message}'`,level:"error",data:{threadId:B}})})}var I30=["trace","debug","info","warn","error","fatal"],XLQ=Symbol.for("level"),H30=Symbol.for("message"),D30=Symbol.for("splat");function GLQ(A,Q){class B extends A{constructor(Y){super(Y);this._levels=new Set(Q?.levels??I30)}log(Y,J){try{if(setImmediate(()=>{this.emit("logged",Y)}),!N30(Y))return;let C=Y[XLQ],{level:X,message:G,timestamp:F,...W}=Y;W[XLQ]=void 0,W[H30]=void 0,W[D30]=void 0;let Z=L30[C]??"info";if(this._levels.has(Z))oG(Z,G,{...W,"sentry.origin":"auto.logging.winston"})}catch{}if(J)J()}}return B}function N30(A){return typeof A==="object"&&A!=null}var L30={silly:"trace",debug:"debug",verbose:"debug",http:"debug",info:"info",notice:"info",warn:"warn",warning:"warn",error:"error",emerg:"fatal",alert:"fatal",crit:"fatal"};var LLQ=qA(NLQ(),1);var HT=aZQ(LLQ.AsyncLocalStorageContextManager);var _30="ProcessSession",qLQ=wA(()=>{return{name:_30,setupOnce(){KN(),process.on("beforeExit",()=>{if(RQ().getSession()?.status!=="ok")SZ()})}}});function DT(){return[HP(),jP(),SP(),vP(),gP(),xP(),bP(),uP(),pP(),nP(),oP(),AT(),BT(),FT(),WT(),kP(),UT(),_P(),KT()]}function MLQ(){return[qi,fi,bi,tn,ai,ri,aP,Jn,nn,Cn,Zn,En,Hn,Mn,gn,aP,Yn,On,Qs,Ys,Fs,Ws]}import*as y30 from"node:http";import*as g30 from"node:https";import{Readable as h30}from"node:stream";import{createGzip as x30}from"node:zlib";import*as q6 from"node:net";import*as Ks from"node:tls";import*as Us from"node:http";var UX=Symbol("AgentBaseInternalState");class Es extends Us.Agent{constructor(A){super(A);this[UX]={}}isSecureEndpoint(A){if(A){if(typeof A.secureEndpoint==="boolean")return A.secureEndpoint;if(typeof A.protocol==="string")return A.protocol==="https:"}let{stack:Q}=Error();if(typeof Q!=="string")return!1;return Q.split(` -`).some((B)=>B.indexOf("(https.js:")!==-1||B.indexOf("node:https:")!==-1)}createSocket(A,Q,B){let Y={...Q,secureEndpoint:this.isSecureEndpoint(Q)};Promise.resolve().then(()=>this.connect(A,Y)).then((J)=>{if(J instanceof Us.Agent)return J.addRequest(A,Y);this[UX].currentSocket=J,super.createSocket(A,Q,B)},B)}createConnection(){let A=this[UX].currentSocket;if(this[UX].currentSocket=void 0,!A)throw Error("No socket was returned in the `connect()` function");return A}get defaultPort(){return this[UX].defaultPort??(this.protocol==="https:"?443:80)}set defaultPort(A){if(this[UX])this[UX].defaultPort=A}get protocol(){return this[UX].protocol??(this.isSecureEndpoint()?"https:":"http:")}set protocol(A){if(this[UX])this[UX].protocol=A}}function NT(...A){e.log("[https-proxy-agent:parse-proxy-response]",...A)}function zLQ(A){return new Promise((Q,B)=>{let Y=0,J=[];function C(){let Z=A.read();if(Z)W(Z);else A.once("readable",C)}function X(){A.removeListener("end",G),A.removeListener("error",F),A.removeListener("readable",C)}function G(){X(),NT("onend"),B(Error("Proxy connection ended before receiving CONNECT response"))}function F(Z){X(),NT("onerror %o",Z),B(Z)}function W(Z){J.push(Z),Y+=Z.length;let U=Buffer.concat(J,Y),$=U.indexOf(`\r +`),typeof G==="string"||G instanceof Uint8Array)J(G);else{let F;try{F=JSON.stringify(G)}catch(W){F=JSON.stringify(wJ(G))}J(F)}}return typeof Y==="string"?Y:hZB(Y)}function hZB(A){let Q=A.reduce((J,C)=>J+C.length,0),B=new Uint8Array(Q),Y=0;for(let J of A)B.set(J,Y),Y+=J.length;return B}function bu(A){return[{type:"span"},A]}function mu(A){let Q=typeof A.data==="string"?xu(A.data):A.data;return[{type:"attachment",length:Q.length,filename:A.filename,content_type:A.contentType,attachment_type:A.attachmentType},Q]}var gZB={session:"session",sessions:"session",attachment:"attachment",transaction:"transaction",event:"error",client_report:"internal",user_report:"default",profile:"profile",profile_chunk:"profile",replay_event:"replay",replay_recording:"replay",check_in:"monitor",feedback:"feedback",span:"span",raw_security:"security",log:"log_item"};function Wj(A){return gZB[A]}function Zj(A){if(!A?.sdk)return;let{name:Q,version:B}=A.sdk;return{name:Q,version:B}}function uu(A,Q,B,Y){let J=A.sdkProcessingMetadata?.dynamicSamplingContext;return{event_id:A.event_id,sent_at:new Date().toISOString(),...Q&&{sdk:Q},...!!B&&Y&&{dsn:nC(Y)},...J&&{trace:J}}}function xZB(A,Q){if(!Q)return A;return A.sdk=A.sdk||{},A.sdk.name=A.sdk.name||Q.name,A.sdk.version=A.sdk.version||Q.version,A.sdk.integrations=[...A.sdk.integrations||[],...Q.integrations||[]],A.sdk.packages=[...A.sdk.packages||[],...Q.packages||[]],A}function bDA(A,Q,B,Y){let J=Zj(B),C={sent_at:new Date().toISOString(),...J&&{sdk:J},...!!Y&&Q&&{dsn:nC(Q)}},X="aggregates"in A?[{type:"sessions"},A]:[{type:"session"},A.toJSON()];return S8(C,[X])}function mDA(A,Q,B,Y){let J=Zj(B),C=A.type&&A.type!=="replay_event"?A.type:"event";xZB(A,B?.sdk);let X=uu(A,J,Y,Q);return delete A.sdkProcessingMetadata,S8(X,[[{type:C},A]])}function uDA(A,Q){function B(Z){return!!Z.trace_id&&!!Z.public_key}let Y=c0(A[0]),J=Q?.getDsn(),C=Q?.getOptions().tunnel,X={sent_at:new Date().toISOString(),...B(Y)&&{trace:Y},...!!C&&J&&{dsn:nC(J)}},G=Q?.getOptions().beforeSendSpan,F=G?(Z)=>{let U=eA(Z),$=G(U);if(!$)return JN(),U;return $}:eA,W=[];for(let Z of A){let U=F(Z);if(U)W.push(bu(U))}return S8(X,W)}function du(A,Q,B,Y=iC()){let J=Y&&$0(Y);if(J)OA&&e.log(`[Measurement] Setting measurement on root span: ${A} = ${Q} ${B}`),J.addEvent(A,{[ew]:Q,[tw]:B})}function kZ(A){if(!A||A.length===0)return;let Q={};return A.forEach((B)=>{let Y=B.attributes||{},J=Y[tw],C=Y[ew];if(typeof J==="string"&&typeof C==="number")Q[B.name]={value:C,unit:J}}),Q}var dDA=1000;class ZN{constructor(A={}){if(this._traceId=A.traceId||j8(),this._spanId=A.spanId||O8(),this._startTime=A.startTimestamp||w8(),this._links=A.links,this._attributes={},this.setAttributes({[DQ]:"manual",[YQ]:A.op,...A.attributes}),this._name=A.name,A.parentSpanId)this._parentSpanId=A.parentSpanId;if("sampled"in A)this._sampled=A.sampled;if(A.endTimestamp)this._endTime=A.endTimestamp;if(this._events=[],this._isStandaloneSpan=A.isStandalone,this._endTime)this._onSpanEnded()}addLink(A){if(this._links)this._links.push(A);else this._links=[A];return this}addLinks(A){if(this._links)this._links.push(...A);else this._links=A;return this}recordException(A,Q){}spanContext(){let{_spanId:A,_traceId:Q,_sampled:B}=this;return{spanId:A,traceId:Q,traceFlags:B?Bj:Qj}}setAttribute(A,Q){if(Q===void 0)delete this._attributes[A];else this._attributes[A]=Q;return this}setAttributes(A){return Object.keys(A).forEach((Q)=>this.setAttribute(Q,A[Q])),this}updateStartTime(A){this._startTime=u9(A)}setStatus(A){return this._status=A,this}updateName(A){return this._name=A,this.setAttribute(A0,"custom"),this}end(A){if(this._endTime)return;this._endTime=u9(A),GN(this),this._onSpanEnded()}getSpanJSON(){return{data:this._attributes,description:this._name,op:this._attributes[YQ],parent_span_id:this._parentSpanId,span_id:this._spanId,start_timestamp:this._startTime,status:PZ(this._status),timestamp:this._endTime,trace_id:this._traceId,origin:this._attributes[DQ],profile_id:this._attributes[TE],exclusive_time:this._attributes[SE],measurements:kZ(this._events),is_segment:this._isStandaloneSpan&&$0(this)===this||void 0,segment_id:this._isStandaloneSpan?$0(this).spanContext().spanId:void 0,links:OZ(this._links)}}isRecording(){return!this._endTime&&!!this._sampled}addEvent(A,Q,B){OA&&e.log("[Tracing] Adding an event to span:",A);let Y=cDA(Q)?Q:B||w8(),J=cDA(Q)?{}:Q||{},C={name:A,time:u9(Y),attributes:J};return this._events.push(C),this}isStandaloneSpan(){return!!this._isStandaloneSpan}_onSpanEnded(){let A=hA();if(A)A.emit("spanEnd",this);if(!(this._isStandaloneSpan||this===$0(this)))return;if(this._isStandaloneSpan){if(this._sampled)bZB(uDA([this],A));else if(OA&&e.log("[Tracing] Discarding standalone span because its trace was not chosen to be sampled."),A)A.recordDroppedEvent("sample_rate","span");return}let B=this._convertSpanToTransaction();if(B)(pC(this).scope||sQ()).captureEvent(B)}_convertSpanToTransaction(){if(!lDA(eA(this)))return;if(!this._name)OA&&e.warn("Transaction has no name, falling back to ``."),this._name="";let{scope:A,isolationScope:Q}=pC(this),B=A?.getScopeData().sdkProcessingMetadata?.normalizedRequest;if(this._sampled!==!0)return;let J=YN(this).filter((W)=>W!==this&&!fZB(W)).map((W)=>eA(W)).filter(lDA),C=this._attributes[A0];delete this._attributes[lC],J.forEach((W)=>{delete W.data[lC]});let X={contexts:{trace:jDA(this)},spans:J.length>dDA?J.sort((W,Z)=>W.start_timestamp-Z.start_timestamp).slice(0,dDA):J,start_timestamp:this._startTime,timestamp:this._endTime,transaction:this._name,type:"transaction",sdkProcessingMetadata:{capturedSpanScope:A,capturedSpanIsolationScope:Q,dynamicSamplingContext:c0(this)},request:B,...C&&{transaction_info:{source:C}}},G=kZ(this._events);if(G&&Object.keys(G).length)OA&&e.log("[Measurements] Adding measurements to transaction event",JSON.stringify(G,void 0,2)),X.measurements=G;return X}}function cDA(A){return A&&typeof A==="number"||A instanceof Date||Array.isArray(A)}function lDA(A){return!!A.start_timestamp&&!!A.timestamp&&!!A.span_id&&!!A.trace_id}function fZB(A){return A instanceof ZN&&A.isStandaloneSpan()}function bZB(A){let Q=hA();if(!Q)return;let B=A[1];if(!B||B.length===0){Q.recordDroppedEvent("before_send","span");return}Q.sendEnvelope(A)}var cu="__SENTRY_SUPPRESS_TRACING__";function k8(A,Q){let B=EN();if(B.startSpan)return B.startSpan(A,Q);let Y=su(A),{forceTransaction:J,parentSpan:C,scope:X}=A,G=X?.clone();return P8(G,()=>{return iDA(C)(()=>{let W=sQ(),Z=ru(W),$=A.onlyIfParent&&!Z?new TZ:nu({parentSpan:Z,spanArguments:Y,forceTransaction:J,scope:W});return RZ(W,$),SZ(()=>Q($),()=>{let{status:E}=eA($);if($.isRecording()&&(!E||E==="ok"))$.setStatus({code:m9,message:"internal_error"})},()=>{$.end()})})})}function $N(A,Q){let B=EN();if(B.startSpanManual)return B.startSpanManual(A,Q);let Y=su(A),{forceTransaction:J,parentSpan:C,scope:X}=A,G=X?.clone();return P8(G,()=>{return iDA(C)(()=>{let W=sQ(),Z=ru(W),$=A.onlyIfParent&&!Z?new TZ:nu({parentSpan:Z,spanArguments:Y,forceTransaction:J,scope:W});return RZ(W,$),SZ(()=>Q($,()=>$.end()),()=>{let{status:E}=eA($);if($.isRecording()&&(!E||E==="ok"))$.setStatus({code:m9,message:"internal_error"})})})})}function lu(A){let Q=EN();if(Q.startInactiveSpan)return Q.startInactiveSpan(A);let B=su(A),{forceTransaction:Y,parentSpan:J}=A;return(A.scope?(X)=>P8(A.scope,X):J!==void 0?(X)=>e7(J,X):(X)=>X())(()=>{let X=sQ(),G=ru(X);if(A.onlyIfParent&&!G)return new TZ;return nu({parentSpan:G,spanArguments:B,forceTransaction:Y,scope:X})})}var pu=(A,Q)=>{let B=RJ(),Y=w5(B);if(Y.continueTrace)return Y.continueTrace(A,Q);let{sentryTrace:J,baggage:C}=A;return P8((X)=>{let G=jZ(J,C);return X.setPropagationContext(G),Q()})};function e7(A,Q){let B=EN();if(B.withActiveSpan)return B.withActiveSpan(A,Q);return P8((Y)=>{return RZ(Y,A||void 0),Q(Y)})}function UN(A){let Q=EN();if(Q.suppressTracing)return Q.suppressTracing(A);return P8((B)=>{return B.setSDKProcessingMetadata({[cu]:!0}),A()})}function iu(A){return P8((Q)=>{return Q.setPropagationContext({traceId:j8(),sampleRand:Math.random()}),OA&&e.info(`Starting a new trace with id ${Q.getPropagationContext().traceId}`),e7(null,A)})}function nu({parentSpan:A,spanArguments:Q,forceTransaction:B,scope:Y}){if(!X9()){let X=new TZ;if(B||!A){let G={sampled:"false",sample_rate:"0",transaction:Q.name,...c0(X)};Gj(X,G)}return X}let J=RQ(),C;if(A&&!B)C=mZB(A,Y,Q),vE(A,C);else if(A){let X=c0(A),{traceId:G,spanId:F}=A.spanContext(),W=o1(A);C=pDA({traceId:G,parentSpanId:F,...Q},Y,W),Gj(C,X)}else{let{traceId:X,dsc:G,parentSpanId:F,sampled:W}={...J.getPropagationContext(),...Y.getPropagationContext()};if(C=pDA({traceId:X,parentSpanId:F,...Q},Y,W),G)Gj(C,G)}return XN(C),tD(C,Y,J),C}function su(A){let B={isStandalone:(A.experimental||{}).standalone,...A};if(A.startTime){let Y={...B};return Y.startTimestamp=u9(A.startTime),delete Y.startTime,Y}return B}function EN(){let A=RJ();return w5(A)}function pDA(A,Q,B){let Y=hA(),J=Y?.getOptions()||{},{name:C=""}=A,X={spanAttributes:{...A.attributes},spanName:C,parentSampled:B};Y?.emit("beforeSampling",X,{decision:!1});let G=X.parentSampled??B,F=X.spanAttributes,W=Q.getPropagationContext(),[Z,U,$]=Q.getScopeData().sdkProcessingMetadata[cu]?[!1]:FN(J,{name:C,parentSampled:G,attributes:F,parentSampleRate:T8(W.dsc?.sample_rate)},W.sampleRand),E=new ZN({...A,attributes:{[A0]:"custom",[j5]:U!==void 0&&$?U:void 0,...F},sampled:Z});if(!Z&&Y)OA&&e.log("[Tracing] Discarding root span because its trace was not chosen to be sampled."),Y.recordDroppedEvent("sample_rate","transaction");if(Y)Y.emit("spanStart",E);return E}function mZB(A,Q,B){let{spanId:Y,traceId:J}=A.spanContext(),C=Q.getScopeData().sdkProcessingMetadata[cu]?!1:o1(A),X=C?new ZN({...B,parentSpanId:Y,traceId:J,sampled:C}):new TZ({traceId:J});vE(A,X);let G=hA();if(G){if(G.emit("spanStart",X),B.endTimestamp)G.emit("spanEnd",X)}return X}function ru(A){let Q=cC(A);if(!Q)return;let B=hA();if((B?B.getOptions():{}).parentSpanIsAlwaysRootSpan)return $0(Q);return Q}function iDA(A){return A!==void 0?(Q)=>{return e7(A,Q)}:(Q)=>Q()}var aX;(function(A){A[A.PENDING=0]="PENDING";let B=1;A[A.RESOLVED=B]="RESOLVED";let Y=2;A[A.REJECTED=Y]="REJECTED"})(aX||(aX={}));function rC(A){return new sC((Q)=>{Q(A)})}function $j(A){return new sC((Q,B)=>{B(A)})}class sC{constructor(A){this._state=aX.PENDING,this._handlers=[],this._runExecutor(A)}then(A,Q){return new sC((B,Y)=>{this._handlers.push([!1,(J)=>{if(!A)B(J);else try{B(A(J))}catch(C){Y(C)}},(J)=>{if(!Q)Y(J);else try{B(Q(J))}catch(C){Y(C)}}]),this._executeHandlers()})}catch(A){return this.then((Q)=>Q,A)}finally(A){return new sC((Q,B)=>{let Y,J;return this.then((C)=>{if(J=!1,Y=C,A)A()},(C)=>{if(J=!0,Y=C,A)A()}).then(()=>{if(J){B(Y);return}Q(Y)})})}_executeHandlers(){if(this._state===aX.PENDING)return;let A=this._handlers.slice();this._handlers=[],A.forEach((Q)=>{if(Q[0])return;if(this._state===aX.RESOLVED)Q[1](this._value);if(this._state===aX.REJECTED)Q[2](this._value);Q[0]=!0})}_runExecutor(A){let Q=(J,C)=>{if(this._state!==aX.PENDING)return;if(z5(C)){C.then(B,Y);return}this._state=J,this._value=C,this._executeHandlers()},B=(J)=>{Q(aX.RESOLVED,J)},Y=(J)=>{Q(aX.REJECTED,J)};try{A(B,Y)}catch(J){Y(J)}}}function Uj(A,Q,B,Y=0){return new sC((J,C)=>{let X=A[Y];if(Q===null||typeof X!=="function")J(Q);else{let G=X({...Q},B);if(OA&&X.id&&G===null&&e.log(`Event processor "${X.id}" dropped event`),z5(G))G.then((F)=>Uj(A,F,B,Y+1).then(J)).then(null,C);else Uj(A,G,B,Y+1).then(J).then(null,C)}})}var Ej,nDA,Kj;function KN(A){let Q=AQ._sentryDebugIds;if(!Q)return{};let B=Object.keys(Q);if(Kj&&B.length===nDA)return Kj;return nDA=B.length,Kj=B.reduce((Y,J)=>{if(!Ej)Ej={};let C=Ej[J];if(C)Y[C[0]]=C[1];else{let X=A(J);for(let G=X.length-1;G>=0;G--){let W=X[G]?.filename,Z=Q[J];if(W&&Z){Y[W]=Z,Ej[J]=[W,Z];break}}}return Y},{}),Kj}function au(A,Q){let{fingerprint:B,span:Y,breadcrumbs:J,sdkProcessingMetadata:C}=Q;if(uZB(A,Q),Y)lZB(A,Y);pZB(A,B),dZB(A,J),cZB(A,C)}function _Z(A,Q){let{extra:B,tags:Y,user:J,contexts:C,level:X,sdkProcessingMetadata:G,breadcrumbs:F,fingerprint:W,eventProcessors:Z,attachments:U,propagationContext:$,transactionName:E,span:K}=Q;if(Vj(A,"extra",B),Vj(A,"tags",Y),Vj(A,"user",J),Vj(A,"contexts",C),A.sdkProcessingMetadata=n7(A.sdkProcessingMetadata,G,2),X)A.level=X;if(E)A.transactionName=E;if(K)A.span=K;if(F.length)A.breadcrumbs=[...A.breadcrumbs,...F];if(W.length)A.fingerprint=[...A.fingerprint,...W];if(Z.length)A.eventProcessors=[...A.eventProcessors,...Z];if(U.length)A.attachments=[...A.attachments,...U];A.propagationContext={...A.propagationContext,...$}}function Vj(A,Q,B){A[Q]=n7(A[Q],B,1)}function uZB(A,Q){let{extra:B,tags:Y,user:J,contexts:C,level:X,transactionName:G}=Q;if(Object.keys(B).length)A.extra={...B,...A.extra};if(Object.keys(Y).length)A.tags={...Y,...A.tags};if(Object.keys(J).length)A.user={...J,...A.user};if(Object.keys(C).length)A.contexts={...C,...A.contexts};if(X)A.level=X;if(G&&A.type!=="transaction")A.transaction=G}function dZB(A,Q){let B=[...A.breadcrumbs||[],...Q];A.breadcrumbs=B.length?B:void 0}function cZB(A,Q){A.sdkProcessingMetadata={...A.sdkProcessingMetadata,...Q}}function lZB(A,Q){A.contexts={trace:t7(Q),...A.contexts},A.sdkProcessingMetadata={dynamicSamplingContext:c0(Q),...A.sdkProcessingMetadata};let B=$0(Q),Y=eA(B).description;if(Y&&!A.transaction&&A.type==="transaction")A.transaction=Y}function pZB(A,Q){if(A.fingerprint=A.fingerprint?Array.isArray(A.fingerprint)?A.fingerprint:[A.fingerprint]:[],Q)A.fingerprint=A.fingerprint.concat(Q);if(!A.fingerprint.length)delete A.fingerprint}function sDA(A,Q,B,Y,J,C){let{normalizeDepth:X=3,normalizeMaxBreadth:G=1000}=A,F={...Q,event_id:Q.event_id||B.event_id||FY(),timestamp:Q.timestamp||pX()},W=B.integrations||A.integrations.map((V)=>V.name);if(iZB(F,A),rZB(F,W),J)J.emit("applyFrameMetadata",Q);if(Q.type===void 0)nZB(F,A.stackParser);let Z=oZB(Y,B.captureContext);if(B.mechanism)i7(F,B.mechanism);let U=J?J.getEventProcessors():[],$=nX().getScopeData();if(C){let V=C.getScopeData();_Z($,V)}if(Z){let V=Z.getScopeData();_Z($,V)}let E=[...B.attachments||[],...$.attachments];if(E.length)B.attachments=E;au(F,$);let K=[...U,...$.eventProcessors];return Uj(K,F,B).then((V)=>{if(V)sZB(V);if(typeof X==="number"&&X>0)return aZB(V,X,G);return V})}function iZB(A,Q){let{environment:B,release:Y,dist:J,maxValueLength:C=250}=Q;if(A.environment=A.environment||B||xE,!A.release&&Y)A.release=Y;if(!A.dist&&J)A.dist=J;let X=A.request;if(X?.url)X.url=b9(X.url,C)}function nZB(A,Q){let B=KN(Q);A.exception?.values?.forEach((Y)=>{Y.stacktrace?.frames?.forEach((J)=>{if(J.filename)J.debug_id=B[J.filename]})})}function sZB(A){let Q={};if(A.exception?.values?.forEach((Y)=>{Y.stacktrace?.frames?.forEach((J)=>{if(J.debug_id){if(J.abs_path)Q[J.abs_path]=J.debug_id;else if(J.filename)Q[J.filename]=J.debug_id;delete J.debug_id}})}),Object.keys(Q).length===0)return;A.debug_meta=A.debug_meta||{},A.debug_meta.images=A.debug_meta.images||[];let B=A.debug_meta.images;Object.entries(Q).forEach(([Y,J])=>{B.push({type:"sourcemap",code_file:Y,debug_id:J})})}function rZB(A,Q){if(Q.length>0)A.sdk=A.sdk||{},A.sdk.integrations=[...A.sdk.integrations||[],...Q]}function aZB(A,Q,B){if(!A)return null;let Y={...A,...A.breadcrumbs&&{breadcrumbs:A.breadcrumbs.map((J)=>({...J,...J.data&&{data:wJ(J.data,Q,B)}}))},...A.user&&{user:wJ(A.user,Q,B)},...A.contexts&&{contexts:wJ(A.contexts,Q,B)},...A.extra&&{extra:wJ(A.extra,Q,B)}};if(A.contexts?.trace&&Y.contexts){if(Y.contexts.trace=A.contexts.trace,A.contexts.trace.data)Y.contexts.trace.data=wJ(A.contexts.trace.data,Q,B)}if(A.spans)Y.spans=A.spans.map((J)=>{return{...J,...J.data&&{data:wJ(J.data,Q,B)}}});if(A.contexts?.flags&&Y.contexts)Y.contexts.flags=wJ(A.contexts.flags,3,B);return Y}function oZB(A,Q){if(!Q)return A;let B=A?A.clone():new GJ;return B.update(Q),B}function rDA(A){if(!A)return;if(tZB(A))return{captureContext:A};if(A$B(A))return{captureContext:A};return A}function tZB(A){return A instanceof GJ||typeof A==="function"}var eZB=["user","level","extra","contexts","tags","fingerprint","propagationContext"];function A$B(A){return Object.keys(A).some((Q)=>eZB.includes(Q))}function jB(A,Q){return sQ().captureException(A,rDA(Q))}function fE(A,Q){let B=typeof Q==="string"?Q:void 0,Y=typeof Q!=="string"?{captureContext:Q}:void 0;return sQ().captureMessage(A,B,Y)}function IN(A,Q){return sQ().captureEvent(A,Q)}function ou(A,Q){RQ().setContext(A,Q)}function tu(A){RQ().setExtras(A)}function eu(A,Q){RQ().setExtra(A,Q)}function Ad(A){RQ().setTags(A)}function Qd(A,Q){RQ().setTag(A,Q)}function Bd(A){RQ().setUser(A)}function Yd(){return RQ().lastEventId()}function VN(A,Q){let B=sQ(),Y=hA();if(!Y)OA&&e.warn("Cannot capture check-in. No client defined.");else if(!Y.captureCheckIn)OA&&e.warn("Cannot capture check-in. Client does not support sending check-ins.");else return Y.captureCheckIn(A,Q,B);return FY()}function t1(A,Q,B){let Y=VN({monitorSlug:A,status:"in_progress"},B),J=w8();function C(X){VN({monitorSlug:A,status:X,checkInId:Y,duration:w8()-J})}return sX(()=>{let X;try{X=Q()}catch(G){throw C("error"),G}if(z5(X))Promise.resolve(X).then(()=>{C("ok")},(G)=>{throw C("error"),G});else C("ok");return X})}async function Jd(A){let Q=hA();if(Q)return Q.flush(A);return OA&&e.warn("Cannot flush events. No client defined."),Promise.resolve(!1)}async function Cd(A){let Q=hA();if(Q)return Q.close(A);return OA&&e.warn("Cannot flush events and disable SDK. No client defined."),Promise.resolve(!1)}function vZ(){return!!hA()}function HN(){let A=hA();return A?.getOptions().enabled!==!1&&!!A?.getTransport()}function Xd(A){RQ().addEventProcessor(A)}function DN(A){let Q=RQ(),B=sQ(),{userAgent:Y}=AQ.navigator||{},J=EDA({user:B.getUser()||Q.getUser(),...Y&&{userAgent:Y},...A}),C=Q.getSession();if(C?.status==="ok")iX(C,{status:"exited"});return yZ(),Q.setSession(J),J}function yZ(){let A=RQ(),B=sQ().getSession()||A.getSession();if(B)KDA(B);aDA(),A.setSession()}function aDA(){let A=RQ(),Q=hA(),B=A.getSession();if(B&&Q)Q.captureSession(B)}function Gd(A=!1){if(A){yZ();return}aDA()}var Q$B="7";function B$B(A){let Q=A.protocol?`${A.protocol}:`:"",B=A.port?`:${A.port}`:"";return`${Q}//${A.host}${B}${A.path?`/${A.path}`:""}/api/`}function Y$B(A){return`${B$B(A)}${A.projectId}/envelope/`}function J$B(A,Q){let B={sentry_version:Q$B};if(A.publicKey)B.sentry_key=A.publicKey;if(Q)B.sentry_client=`${Q.name}/${Q.version}`;return new URLSearchParams(B).toString()}function oDA(A,Q,B){return Q?Q:`${Y$B(A)}?${J$B(A,B)}`}var tDA=[];function C$B(A){let Q={};return A.forEach((B)=>{let{name:Y}=B,J=Q[Y];if(J&&!J.isDefaultInstance&&B.isDefaultInstance)return;Q[Y]=B}),Object.values(Q)}function Fd(A){let Q=A.defaultIntegrations||[],B=A.integrations;Q.forEach((J)=>{J.isDefaultInstance=!0});let Y;if(Array.isArray(B))Y=[...Q,...B];else if(typeof B==="function"){let J=B(Q);Y=Array.isArray(J)?J:[J]}else Y=Q;return C$B(Y)}function eDA(A,Q){let B={};return Q.forEach((Y)=>{if(Y)Zd(A,Y,B)}),B}function Wd(A,Q){for(let B of Q)if(B?.afterAllSetup)B.afterAllSetup(A)}function Zd(A,Q,B){if(B[Q.name]){OA&&e.log(`Integration skipped because it was already installed: ${Q.name}`);return}if(B[Q.name]=Q,tDA.indexOf(Q.name)===-1&&typeof Q.setupOnce==="function")Q.setupOnce(),tDA.push(Q.name);if(Q.setup&&typeof Q.setup==="function")Q.setup(A);if(typeof Q.preprocessEvent==="function"){let Y=Q.preprocessEvent.bind(Q);A.on("preprocessEvent",(J,C)=>Y(J,C,A))}if(typeof Q.processEvent==="function"){let Y=Q.processEvent.bind(Q),J=Object.assign((C,X)=>Y(C,X,A),{id:Q.name});A.addEventProcessor(J)}OA&&e.log(`Integration installed: ${Q.name}`)}function $d(A){let Q=hA();if(!Q){OA&&e.warn(`Cannot add integration "${A.name}" because no SDK Client is available.`);return}Q.addIntegration(A)}function wA(A){return A}function Ij(A){let Q=[];if(A.message)Q.push(A.message);try{let B=A.exception.values[A.exception.values.length-1];if(B?.value){if(Q.push(B.value),B.type)Q.push(`${B.type}: ${B.value}`)}}catch(B){}return Q}function ANA(A){let{trace_id:Q,parent_span_id:B,span_id:Y,status:J,origin:C,data:X,op:G}=A.contexts?.trace??{};return{data:X??{},description:A.transaction,op:G,parent_span_id:B,span_id:Y??"",start_timestamp:A.start_timestamp??0,status:J,timestamp:A.timestamp,trace_id:Q??"",origin:C,profile_id:X?.[TE],exclusive_time:X?.[SE],measurements:A.measurements,is_segment:!0}}function QNA(A){return{type:"transaction",timestamp:A.timestamp,start_timestamp:A.start_timestamp,transaction:A.description,contexts:{trace:{trace_id:A.trace_id,span_id:A.span_id,parent_span_id:A.parent_span_id,op:A.op,status:A.status,origin:A.origin,data:{...A.data,...A.profile_id&&{[TE]:A.profile_id},...A.exclusive_time&&{[SE]:A.exclusive_time}}}},measurements:A.measurements}}function BNA(A,Q,B){let Y=[{type:"client_report"},{timestamp:B||pX(),discarded_events:A}];return S8(Q?{dsn:Q}:{},[Y])}var YNA="Not capturing exception because it's already been captured.",JNA="Discarded session because of missing or non-string release",GNA=Symbol.for("SentryInternalError"),FNA=Symbol.for("SentryDoNotSendEventError");function Hj(A){return{message:A,[GNA]:!0}}function Ud(A){return{message:A,[FNA]:!0}}function CNA(A){return!!A&&typeof A==="object"&&GNA in A}function XNA(A){return!!A&&typeof A==="object"&&FNA in A}class Kd{constructor(A){if(this._options=A,this._integrations={},this._numProcessing=0,this._outcomes={},this._hooks={},this._eventProcessors=[],A.dsn)this._dsn=xDA(A.dsn);else OA&&e.warn("No DSN provided, client will not send events.");if(this._dsn){let Q=oDA(this._dsn,A.tunnel,A._metadata?A._metadata.sdk:void 0);this._transport=A.transport({tunnel:this._options.tunnel,recordDroppedEvent:this.recordDroppedEvent.bind(this),...A.transportOptions,url:Q})}}captureException(A,Q,B){let Y=FY();if(ow(A))return OA&&e.log(YNA),Y;let J={event_id:Y,...Q};return this._process(this.eventFromException(A,J).then((C)=>this._captureEvent(C,J,B))),J.event_id}captureMessage(A,Q,B,Y){let J={event_id:FY(),...B},C=zZ(A)?A:String(A),X=oD(A)?this.eventFromMessage(C,Q,J):this.eventFromException(A,J);return this._process(X.then((G)=>this._captureEvent(G,J,Y))),J.event_id}captureEvent(A,Q,B){let Y=FY();if(Q?.originalException&&ow(Q.originalException))return OA&&e.log(YNA),Y;let J={event_id:Y,...Q},C=A.sdkProcessingMetadata||{},X=C.capturedSpanScope,G=C.capturedSpanIsolationScope;return this._process(this._captureEvent(A,J,X||B,G)),J.event_id}captureSession(A){this.sendSession(A),iX(A,{init:!1})}getDsn(){return this._dsn}getOptions(){return this._options}getSdkMetadata(){return this._options._metadata}getTransport(){return this._transport}flush(A){let Q=this._transport;if(Q)return this.emit("flush"),this._isClientDoneProcessing(A).then((B)=>{return Q.flush(A).then((Y)=>B&&Y)});else return rC(!0)}close(A){return this.flush(A).then((Q)=>{return this.getOptions().enabled=!1,this.emit("close"),Q})}getEventProcessors(){return this._eventProcessors}addEventProcessor(A){this._eventProcessors.push(A)}init(){if(this._isEnabled()||this._options.integrations.some(({name:A})=>A.startsWith("Spotlight")))this._setupIntegrations()}getIntegrationByName(A){return this._integrations[A]}addIntegration(A){let Q=this._integrations[A.name];if(Zd(this,A,this._integrations),!Q)Wd(this,[A])}sendEvent(A,Q={}){this.emit("beforeSendEvent",A,Q);let B=mDA(A,this._dsn,this._options._metadata,this._options.tunnel);for(let J of Q.attachments||[])B=fu(B,mu(J));let Y=this.sendEnvelope(B);if(Y)Y.then((J)=>this.emit("afterSendEvent",A,J),null)}sendSession(A){let{release:Q,environment:B=xE}=this._options;if("aggregates"in A){let J=A.attrs||{};if(!J.release&&!Q){OA&&e.warn(JNA);return}J.release=J.release||Q,J.environment=J.environment||B,A.attrs=J}else{if(!A.release&&!Q){OA&&e.warn(JNA);return}A.release=A.release||Q,A.environment=A.environment||B}this.emit("beforeSendSession",A);let Y=bDA(A,this._dsn,this._options._metadata,this._options.tunnel);this.sendEnvelope(Y)}recordDroppedEvent(A,Q,B=1){if(this._options.sendClientReports){let Y=`${A}:${Q}`;OA&&e.log(`Recording outcome: "${Y}"${B>1?` (${B} times)`:""}`),this._outcomes[Y]=(this._outcomes[Y]||0)+B}}on(A,Q){let B=this._hooks[A]=this._hooks[A]||[];return B.push(Q),()=>{let Y=B.indexOf(Q);if(Y>-1)B.splice(Y,1)}}emit(A,...Q){let B=this._hooks[A];if(B)B.forEach((Y)=>Y(...Q))}sendEnvelope(A){if(this.emit("beforeEnvelope",A),this._isEnabled()&&this._transport)return this._transport.send(A).then(null,(Q)=>{return OA&&e.error("Error while sending envelope:",Q),Q});return OA&&e.error("Transport disabled"),rC({})}_setupIntegrations(){let{integrations:A}=this._options;this._integrations=eDA(this,A),Wd(this,A)}_updateSessionFromEvent(A,Q){let B=Q.level==="fatal",Y=!1,J=Q.exception?.values;if(J){Y=!0;for(let G of J)if(G.mechanism?.handled===!1){B=!0;break}}let C=A.status==="ok";if(C&&A.errors===0||C&&B)iX(A,{...B&&{status:"crashed"},errors:A.errors||Number(Y||B)}),this.captureSession(A)}_isClientDoneProcessing(A){return new sC((Q)=>{let B=0,Y=1,J=setInterval(()=>{if(this._numProcessing==0)clearInterval(J),Q(!0);else if(B+=Y,A&&B>=A)clearInterval(J),Q(!1)},Y)})}_isEnabled(){return this.getOptions().enabled!==!1&&this._transport!==void 0}_prepareEvent(A,Q,B,Y){let J=this.getOptions(),C=Object.keys(this._integrations);if(!Q.integrations&&C?.length)Q.integrations=C;if(this.emit("preprocessEvent",A,Q),!A.type)Y.setLastEventId(A.event_id||Q.event_id);return sDA(J,A,Q,B,this,Y).then((X)=>{if(X===null)return X;this.emit("postprocessEvent",X,Q),X.contexts={trace:PE(B),...X.contexts};let G=rX(this,B);return X.sdkProcessingMetadata={dynamicSamplingContext:G,...X.sdkProcessingMetadata},X})}_captureEvent(A,Q={},B=sQ(),Y=RQ()){if(OA&&Ed(A))e.log(`Captured error event \`${Ij(A)[0]||""}\``);return this._processEvent(A,Q,B,Y).then((J)=>{return J.event_id},(J)=>{if(OA)if(XNA(J))e.log(J.message);else if(CNA(J))e.warn(J.message);else e.warn(J);return})}_processEvent(A,Q,B,Y){let J=this.getOptions(),{sampleRate:C}=J,X=WNA(A),G=Ed(A),F=A.type||"error",W=`before send for type \`${F}\``,Z=typeof C>"u"?void 0:T8(C);if(G&&typeof Z==="number"&&Math.random()>Z)return this.recordDroppedEvent("sample_rate","error"),$j(Ud(`Discarding event because it's not included in the random sample (sampling rate = ${C})`));let U=F==="replay_event"?"replay":F;return this._prepareEvent(A,Q,B,Y).then(($)=>{if($===null)throw this.recordDroppedEvent("event_processor",U),Ud("An event processor returned `null`, will not send event.");if(Q.data&&Q.data.__sentry__===!0)return $;let K=G$B(this,J,$,Q);return X$B(K,W)}).then(($)=>{if($===null){if(this.recordDroppedEvent("before_send",U),X){let V=1+(A.spans||[]).length;this.recordDroppedEvent("before_send","span",V)}throw Ud(`${W} returned \`null\`, will not send event.`)}let E=B.getSession()||Y.getSession();if(G&&E)this._updateSessionFromEvent(E,$);if(X){let I=$.sdkProcessingMetadata?.spanCountBeforeProcessing||0,V=$.spans?$.spans.length:0,H=I-V;if(H>0)this.recordDroppedEvent("before_send","span",H)}let K=$.transaction_info;if(X&&K&&$.transaction!==A.transaction)$.transaction_info={...K,source:"custom"};return this.sendEvent($,Q),$}).then(null,($)=>{if(XNA($)||CNA($))throw $;throw this.captureException($,{data:{__sentry__:!0},originalException:$}),Hj(`Event processing pipeline threw an error, original event will not be sent. Details have been sent as a new event. +Reason: ${$}`)})}_process(A){this._numProcessing++,A.then((Q)=>{return this._numProcessing--,Q},(Q)=>{return this._numProcessing--,Q})}_clearOutcomes(){let A=this._outcomes;return this._outcomes={},Object.entries(A).map(([Q,B])=>{let[Y,J]=Q.split(":");return{reason:Y,category:J,quantity:B}})}_flushOutcomes(){OA&&e.log("Flushing outcomes...");let A=this._clearOutcomes();if(A.length===0){OA&&e.log("No outcomes to send");return}if(!this._dsn){OA&&e.log("No dsn provided, will not send outcomes");return}OA&&e.log("Sending outcomes:",A);let Q=BNA(A,this._options.tunnel&&nC(this._dsn));this.sendEnvelope(Q)}}function X$B(A,Q){let B=`${Q} must return \`null\` or a valid event.`;if(z5(A))return A.then((Y)=>{if(!M5(Y)&&Y!==null)throw Hj(B);return Y},(Y)=>{throw Hj(`${Q} rejected with ${Y}`)});else if(!M5(A)&&A!==null)throw Hj(B);return A}function G$B(A,Q,B,Y){let{beforeSend:J,beforeSendTransaction:C,beforeSendSpan:X}=Q,G=B;if(Ed(G)&&J)return J(G,Y);if(WNA(G)){if(X){let F=X(ANA(G));if(!F)JN();else G=n7(B,QNA(F));if(G.spans){let W=[];for(let Z of G.spans){let U=X(Z);if(!U)JN(),W.push(Z);else W.push(U)}G.spans=W}}if(C){if(G.spans){let F=G.spans.length;G.sdkProcessingMetadata={...B.sdkProcessingMetadata,spanCountBeforeProcessing:F}}return C(G,Y)}}return G}function Ed(A){return A.type===void 0}function WNA(A){return A.type==="transaction"}function Dj(A,Q){if(!Q)return[void 0,void 0];let B=cC(Q),Y=B?t7(B):PE(Q);return[B?c0(B):rX(A,Q),Y]}function ZNA(A,Q,B,Y,J){let C={sent_at:new Date().toISOString()};if(B?.sdk)C.sdk={name:B.sdk.name,version:B.sdk.version};if(!!Y&&!!J)C.dsn=nC(J);if(Q)C.trace=Q;let X=F$B(A);return S8(C,[X])}function F$B(A){return[{type:"check_in"},A]}var $NA={trace:1,debug:5,info:9,warn:13,error:17,fatal:21};function W$B(A){return[{type:"log",item_count:A.length,content_type:"application/vnd.sentry.items.log+json"},{items:A}]}function UNA(A,Q,B,Y){let J={};if(Q?.sdk)J.sdk={name:Q.sdk.name,version:Q.sdk.version};if(!!B&&!!Y)J.dsn=nC(Y);return S8(J,[W$B(A)])}var Z$B=100;AQ._sentryClientToLogBufferMap=new WeakMap;function $$B(A){switch(typeof A){case"number":if(Number.isInteger(A))return{value:A,type:"integer"};return{value:A,type:"double"};case"boolean":return{value:A,type:"boolean"};case"string":return{value:A,type:"string"};default:{let Q="";try{Q=JSON.stringify(A)??""}catch{}return{value:Q,type:"string"}}}}function hZ(A,Q=hA(),B=sQ()){if(!Q){OA&&e.warn("No client available to capture log.");return}let{_experiments:Y,release:J,environment:C}=Q.getOptions(),{enableLogs:X=!1,beforeSendLog:G}=Y??{};if(!X){OA&&e.warn("logging option not enabled, log will not be captured.");return}let[,F]=Dj(Q,B),W={...A.attributes};if(J)W["sentry.release"]=J;if(C)W["sentry.environment"]=C;let{sdk:Z}=Q.getSdkMetadata()??{};if(Z)W["sentry.sdk.name"]=Z.name,W["sentry.sdk.version"]=Z.version;let U=A.message;if(zZ(U)){let{__sentry_template_string__:M,__sentry_template_values__:N=[]}=U;W["sentry.message.template"]=M,N.forEach((q,w)=>{W[`sentry.message.parameter.${w}`]=q})}let $=cC(B);if($)W["sentry.trace.parent_span_id"]=$.spanContext().spanId;let E={...A,attributes:W};Q.emit("beforeCaptureLog",E);let K=G?G(E):E;if(!K){Q.recordDroppedEvent("before_send","log_item",1),OA&&e.warn("beforeSendLog returned null, log will not be captured.");return}let{level:I,message:V,attributes:H={},severityNumber:D}=K,L={timestamp:w8(),level:I,body:V,trace_id:F?.trace_id,severity_number:D??$NA[I],attributes:Object.keys(H).reduce((M,N)=>{return M[N]=$$B(H[N]),M},{})},z=ENA(Q);if(z===void 0)AQ._sentryClientToLogBufferMap?.set(Q,[L]);else if(AQ._sentryClientToLogBufferMap?.set(Q,[...z,L]),z.length>=Z$B)AF(Q,z);Q.emit("afterCaptureLog",K)}function AF(A,Q){let B=Q??ENA(A)??[];if(B.length===0)return;let Y=A.getOptions(),J=UNA(B,Y._metadata,Y.tunnel,A.getDsn());AQ._sentryClientToLogBufferMap?.set(A,[]),A.emit("flushLogs"),A.sendEnvelope(J)}function ENA(A){return AQ._sentryClientToLogBufferMap?.get(A)}function KNA(A,Q){return A(Q.stack||"",1)}function Vd(A,Q){let B={type:Q.name||Q.constructor.name,value:Q.message},Y=KNA(A,Q);if(Y.length)B.stacktrace={frames:Y};return B}function U$B(A){for(let Q in A)if(Object.prototype.hasOwnProperty.call(A,Q)){let B=A[Q];if(B instanceof Error)return B}return}function E$B(A){if("name"in A&&typeof A.name==="string"){let Y=`'${A.name}' captured as exception`;if("message"in A&&typeof A.message==="string")Y+=` with message '${A.message}'`;return Y}else if("message"in A&&typeof A.message==="string")return A.message;let Q=Ku(A);if(QDA(A))return`Event \`ErrorEvent\` captured as exception with message \`${A.message}\``;let B=K$B(A);return`${B&&B!=="Object"?`'${B}'`:"Object"} captured as exception with keys: ${Q}`}function K$B(A){try{let Q=Object.getPrototypeOf(A);return Q?Q.constructor.name:void 0}catch(Q){}}function V$B(A,Q,B,Y){if(uC(B))return[B,void 0];if(Q.synthetic=!0,M5(B)){let C=A?.getOptions().normalizeDepth,X={["__serialized__"]:gu(B,C)},G=U$B(B);if(G)return[G,X];let F=E$B(B),W=Y?.syntheticException||Error(F);return W.message=F,[W,X]}let J=Y?.syntheticException||Error(B);return J.message=`${B}`,[J,void 0]}function VNA(A,Q,B,Y){let C=Y?.data&&Y.data.mechanism||{handled:!0,type:"generic"},[X,G]=V$B(A,C,B,Y),F={exception:{values:[Vd(Q,X)]}};if(G)F.extra=G;return Iu(F,void 0,void 0),i7(F,C),{...F,event_id:Y?.event_id}}function INA(A,Q,B="info",Y,J){let C={event_id:Y?.event_id,level:B};if(J&&Y?.syntheticException){let X=KNA(A,Y.syntheticException);if(X.length)C.exception={values:[{value:Q,stacktrace:{frames:X}}]},i7(C,{synthetic:!0})}if(zZ(Q)){let{__sentry_template_string__:X,__sentry_template_values__:G}=Q;return C.logentry={message:X,params:G},C}return C.message=Q,C}var I$B=5000;class Nj extends Kd{constructor(A){yDA();super(A);if(this._logWeight=0,this._options._experiments?.enableLogs){let Q=this;Q.on("flushLogs",()=>{Q._logWeight=0,clearTimeout(Q._logFlushIdleTimeout)}),Q.on("afterCaptureLog",(B)=>{if(Q._logWeight+=H$B(B),Q._logWeight>=800000)AF(Q);else Q._logFlushIdleTimeout=setTimeout(()=>{AF(Q)},I$B)}),Q.on("flush",()=>{AF(Q)})}}eventFromException(A,Q){let B=VNA(this,this._options.stackParser,A,Q);return B.level="error",rC(B)}eventFromMessage(A,Q="info",B){return rC(INA(this._options.stackParser,A,Q,B,this._options.attachStacktrace))}captureException(A,Q,B){return HNA(Q),super.captureException(A,Q,B)}captureEvent(A,Q,B){if(!A.type&&A.exception?.values&&A.exception.values.length>0)HNA(Q);return super.captureEvent(A,Q,B)}captureCheckIn(A,Q,B){let Y="checkInId"in A&&A.checkInId?A.checkInId:FY();if(!this._isEnabled())return OA&&e.warn("SDK not enabled, will not capture check-in."),Y;let J=this.getOptions(),{release:C,environment:X,tunnel:G}=J,F={check_in_id:Y,monitor_slug:A.monitorSlug,status:A.status,release:C,environment:X};if("duration"in A)F.duration=A.duration;if(Q)F.monitor_config={schedule:Q.schedule,checkin_margin:Q.checkinMargin,max_runtime:Q.maxRuntime,timezone:Q.timezone,failure_issue_threshold:Q.failureIssueThreshold,recovery_threshold:Q.recoveryThreshold};let[W,Z]=Dj(this,B);if(Z)F.contexts={trace:Z};let U=ZNA(F,W,this.getSdkMetadata(),G,this.getDsn());return OA&&e.info("Sending checkin:",A.monitorSlug,A.status),this.sendEnvelope(U),Y}_prepareEvent(A,Q,B,Y){if(this._options.platform)A.platform=A.platform||this._options.platform;if(this._options.runtime)A.contexts={...A.contexts,runtime:A.contexts?.runtime||this._options.runtime};if(this._options.serverName)A.server_name=A.server_name||this._options.serverName;return super._prepareEvent(A,Q,B,Y)}}function HNA(A){let Q=RQ().getScopeData().sdkProcessingMetadata.requestSession;if(Q){let B=A?.mechanism?.handled??!0;if(B&&Q.status!=="crashed")Q.status="errored";else if(!B)Q.status="crashed"}}function H$B(A){let Q=0;if(A.message)Q+=A.message.length*2;if(A.attributes)Object.values(A.attributes).forEach((B)=>{if(Array.isArray(B))Q+=B.length*DNA(B[0]);else if(oD(B))Q+=DNA(B);else Q+=100});return Q}function DNA(A){if(typeof A==="string")return A.length*2;else if(typeof A==="number")return 8;else if(typeof A==="boolean")return 4;return 0}function Id(A){sQ().setClient(A)}var Hd=Symbol.for("SentryBufferFullError");function NNA(A){let Q=[];function B(){return A===void 0||Q.lengthY(G)).then(null,()=>Y(G).then(null,()=>{})),G}function C(X){return new sC((G,F)=>{let W=Q.length;if(!W)return G(!0);let Z=setTimeout(()=>{if(X&&X>0)G(!1)},X);Q.forEach((U)=>{rC(U).then(()=>{if(!--W)clearTimeout(Z),G(!0)},F)})})}return{$:Q,add:J,drain:C}}function D$B(A,Q=Date.now()){let B=parseInt(`${A}`,10);if(!isNaN(B))return B*1000;let Y=Date.parse(`${A}`);if(!isNaN(Y))return Y-Q;return 60000}function N$B(A,Q){return A[Q]||A.all||0}function LNA(A,Q,B=Date.now()){return N$B(A,Q)>B}function qNA(A,{statusCode:Q,headers:B},Y=Date.now()){let J={...A},C=B?.["x-sentry-rate-limits"],X=B?.["retry-after"];if(C)for(let G of C.trim().split(",")){let[F,W,,,Z]=G.split(":",5),U=parseInt(F,10),$=(!isNaN(U)?U:60)*1000;if(!W)J.all=Y+$;else for(let E of W.split(";"))if(E==="metric_bucket"){if(!Z||Z.split(";").includes("custom"))J[E]=Y+$}else J[E]=Y+$}else if(X)J.all=Y+D$B(X,Y);else if(Q===429)J.all=Y+60000;return J}var L$B=64;function bE(A,Q,B=NNA(A.bufferSize||L$B)){let Y={},J=(X)=>B.drain(X);function C(X){let G=[];if(Fj(X,(U,$)=>{let E=Wj($);if(LNA(Y,E))A.recordDroppedEvent("ratelimit_backoff",E);else G.push(U)}),G.length===0)return rC({});let F=S8(X[0],G),W=(U)=>{Fj(F,($,E)=>{A.recordDroppedEvent(U,Wj(E))})},Z=()=>Q({body:WN(F)}).then((U)=>{if(U.statusCode!==void 0&&(U.statusCode<200||U.statusCode>=300))OA&&e.warn(`Sentry responded with status code ${U.statusCode} to sent event.`);return Y=qNA(Y,U),U},(U)=>{throw W("network_error"),OA&&e.error("Encountered error running transport request:",U),U});return B.add(Z).then((U)=>U,(U)=>{if(U===Hd)return OA&&e.error("Skipped sending event because buffer is full."),W("queue_overflow"),rC({});else throw U})}return{send:C,flush:J}}function Lj(A,...Q){let B=new String(String.raw(A,...Q));return B.__sentry_template_string__=A.join("\x00").replace(/%/g,"%%").replace(/\0/g,"%s"),B.__sentry_template_values__=Q,B}var Dd=Lj;function Nd(A,Q,B=[Q],Y="npm"){let J=A._metadata||{};if(!J.sdk)J.sdk={name:`sentry.javascript.${Q}`,packages:B.map((C)=>({name:`${Y}:@sentry/${C}`,version:u0})),version:u0};A._metadata=J}function oX(A={}){let Q=hA();if(!HN()||!Q)return{};let B=RJ(),Y=w5(B);if(Y.getTraceData)return Y.getTraceData(A);let J=sQ(),C=A.span||iC(),X=C?BN(C):q$B(J),G=C?c0(C):rX(Q,J),F=a7(G);if(!AN.test(X))return e.warn("Invalid sentry-trace data. Cannot generate trace data"),{};return{"sentry-trace":X,baggage:F}}function q$B(A){let{traceId:Q,sampled:B,propagationSpanId:Y}=A.getPropagationContext();return o7(Q,Y,B)}function Ld(){return Object.entries(oX()).map(([A,Q])=>``).join(` +`)}function MNA(A){let Q=Object.create(null);try{Object.entries(A).forEach(([B,Y])=>{if(typeof Y==="string")Q[B]=Y})}catch{}return Q}function mE(A){let Q=A.headers||{},B=typeof Q.host==="string"?Q.host:void 0,Y=A.protocol||(A.socket?.encrypted?"https":"http"),J=A.url||"",C=M$B({url:J,host:B,protocol:Y}),X=A.body||void 0,G=A.cookies;return{url:C,method:A.method,query_string:zNA(J),headers:MNA(Q),cookies:G,data:X}}function M$B({url:A,protocol:Q,host:B}){if(A?.startsWith("http"))return A;if(A&&B)return`${Q}://${B}${A}`;return}function zNA(A){if(!A)return;try{let Q=new URL(A,"http://s.io").search.slice(1);return Q.length?Q:void 0}catch{return}}var z$B=100;function G9(A,Q){let B=hA(),Y=RQ();if(!B)return;let{beforeBreadcrumb:J=null,maxBreadcrumbs:C=z$B}=B.getOptions();if(C<=0)return;let G={timestamp:pX(),...A},F=J?h0(()=>J(G,Q)):G;if(F===null)return;if(B.emit)B.emit("beforeAddBreadcrumb",F,Q);Y.addBreadcrumb(F,C)}var RNA,R$B="FunctionToString",wNA=new WeakMap,w$B=()=>{return{name:R$B,setupOnce(){RNA=Function.prototype.toString;try{Function.prototype.toString=function(...A){let Q=Eu(this),B=wNA.has(hA())&&Q!==void 0?Q:this;return RNA.apply(B,A)}}catch{}},setup(A){wNA.set(A,!0)}}},NN=wA(w$B);var j$B=[/^Script error\.?$/,/^Javascript error: Script error\.? on line 0$/,/^ResizeObserver loop completed with undelivered notifications.$/,/^Cannot redefine property: googletag$/,/^Can't find variable: gmo$/,/^undefined is not an object \(evaluating 'a\.[A-Z]'\)$/,`can't redefine non-configurable property "solana"`,"vv().getRestrictions is not a function. (In 'vv().getRestrictions(1,a)', 'vv().getRestrictions' is undefined)","Can't find variable: _AutofillCallbackHandler",/^Non-Error promise rejection captured with value: Object Not Found Matching Id:\d+, MethodName:simulateEvent, ParamCount:\d+$/,/^Java exception was raised during method invocation$/],O$B="EventFilters",Mj=wA((A={})=>{let Q;return{name:O$B,setup(B){let Y=B.getOptions();Q=jNA(A,Y)},processEvent(B,Y,J){if(!Q){let C=J.getOptions();Q=jNA(A,C)}return P$B(B,Q)?null:B}}}),LN=wA((A={})=>{return{...Mj(A),name:"InboundFilters"}});function jNA(A={},Q={}){return{allowUrls:[...A.allowUrls||[],...Q.allowUrls||[]],denyUrls:[...A.denyUrls||[],...Q.denyUrls||[]],ignoreErrors:[...A.ignoreErrors||[],...Q.ignoreErrors||[],...A.disableErrorDefaults?[]:j$B],ignoreTransactions:[...A.ignoreTransactions||[],...Q.ignoreTransactions||[]]}}function P$B(A,Q){if(!A.type){if(T$B(A,Q.ignoreErrors))return OA&&e.warn(`Event dropped due to being matched by \`ignoreErrors\` option. +Event: ${p7(A)}`),!0;if(y$B(A))return OA&&e.warn(`Event dropped due to not having an error message, error type or stacktrace. +Event: ${p7(A)}`),!0;if(k$B(A,Q.denyUrls))return OA&&e.warn(`Event dropped due to being matched by \`denyUrls\` option. +Event: ${p7(A)}. +Url: ${qj(A)}`),!0;if(!_$B(A,Q.allowUrls))return OA&&e.warn(`Event dropped due to not being matched by \`allowUrls\` option. +Event: ${p7(A)}. +Url: ${qj(A)}`),!0}else if(A.type==="transaction"){if(S$B(A,Q.ignoreTransactions))return OA&&e.warn(`Event dropped due to being matched by \`ignoreTransactions\` option. +Event: ${p7(A)}`),!0}return!1}function T$B(A,Q){if(!Q?.length)return!1;return Ij(A).some((B)=>l7(B,Q))}function S$B(A,Q){if(!Q?.length)return!1;let B=A.transaction;return B?l7(B,Q):!1}function k$B(A,Q){if(!Q?.length)return!1;let B=qj(A);return!B?!1:l7(B,Q)}function _$B(A,Q){if(!Q?.length)return!0;let B=qj(A);return!B?!0:l7(B,Q)}function v$B(A=[]){for(let Q=A.length-1;Q>=0;Q--){let B=A[Q];if(B&&B.filename!==""&&B.filename!=="[native code]")return B.filename||null}return null}function qj(A){try{let B=[...A.exception?.values??[]].reverse().find((Y)=>Y.mechanism?.parent_id===void 0&&Y.stacktrace?.frames?.length)?.stacktrace?.frames;return B?v$B(B):null}catch(Q){return OA&&e.error(`Cannot extract url for event ${p7(A)}`),null}}function y$B(A){if(!A.exception?.values?.length)return!1;return!A.message&&!A.exception.values.some((Q)=>Q.stacktrace||Q.type&&Q.type!=="Error"||Q.value)}function TNA(A,Q,B,Y,J,C){if(!J.exception?.values||!C||!lX(C.originalException,Error))return;let X=J.exception.values.length>0?J.exception.values[J.exception.values.length-1]:void 0;if(X)J.exception.values=qd(A,Q,Y,C.originalException,B,J.exception.values,X,0)}function qd(A,Q,B,Y,J,C,X,G){if(C.length>=B+1)return C;let F=[...C];if(lX(Y[J],Error)){ONA(X,G);let W=A(Q,Y[J]),Z=F.length;PNA(W,J,Z,G),F=qd(A,Q,B,Y[J],J,[W,...F],W,Z)}if(Array.isArray(Y.errors))Y.errors.forEach((W,Z)=>{if(lX(W,Error)){ONA(X,G);let U=A(Q,W),$=F.length;PNA(U,`errors[${Z}]`,$,G),F=qd(A,Q,B,W,J,[U,...F],U,$)}});return F}function ONA(A,Q){A.mechanism=A.mechanism||{type:"generic",handled:!0},A.mechanism={...A.mechanism,...A.type==="AggregateError"&&{is_exception_group:!0},exception_id:Q}}function PNA(A,Q,B,Y){A.mechanism=A.mechanism||{type:"generic",handled:!0},A.mechanism={...A.mechanism,type:"chained",source:Q,exception_id:B,parent_id:Y}}var h$B="cause",g$B=5,x$B="LinkedErrors",f$B=(A={})=>{let Q=A.limit||g$B,B=A.key||h$B;return{name:x$B,preprocessEvent(Y,J,C){let X=C.getOptions();TNA(Vd,X.stackParser,B,Q,Y,J)}}},qN=wA(f$B);function SNA(A){let Q={},B=0;while(B{let C=A[J],X=Array.isArray(C)?C.join(";"):C;if(J==="Forwarded")return b$B(X);return X?.split(",").map((G)=>G.trim())}).reduce((J,C)=>{if(!C)return J;return J.concat(C)},[]).find((J)=>J!==null&&m$B(J))||null}function b$B(A){if(!A)return null;for(let Q of A.split(";"))if(Q.startsWith("for="))return Q.slice(4);return null}function m$B(A){return/(?:^(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}$)|(?:^(?:(?:[a-fA-F\d]{1,4}:){7}(?:[a-fA-F\d]{1,4}|:)|(?:[a-fA-F\d]{1,4}:){6}(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|:[a-fA-F\d]{1,4}|:)|(?:[a-fA-F\d]{1,4}:){5}(?::(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,2}|:)|(?:[a-fA-F\d]{1,4}:){4}(?:(?::[a-fA-F\d]{1,4}){0,1}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,3}|:)|(?:[a-fA-F\d]{1,4}:){3}(?:(?::[a-fA-F\d]{1,4}){0,2}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,4}|:)|(?:[a-fA-F\d]{1,4}:){2}(?:(?::[a-fA-F\d]{1,4}){0,3}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,5}|:)|(?:[a-fA-F\d]{1,4}:){1}(?:(?::[a-fA-F\d]{1,4}){0,4}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,6}|:)|(?::(?:(?::[a-fA-F\d]{1,4}){0,5}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,7}|:)))(?:%[0-9a-zA-Z]{1,})?$)/.test(A)}var u$B={cookies:!0,data:!0,headers:!0,query_string:!0,url:!0},d$B="RequestData",c$B=(A={})=>{let Q={...u$B,...A.include};return{name:d$B,processEvent(B,Y,J){let{sdkProcessingMetadata:C={}}=B,{normalizedRequest:X,ipAddress:G}=C,F={...Q,ip:Q.ip??J.getOptions().sendDefaultPii};if(X)l$B(B,X,{ipAddress:G},F);return B}}},MN=wA(c$B);function l$B(A,Q,B,Y){if(A.request={...A.request,...p$B(Q,Y)},Y.ip){let J=Q.headers&&kNA(Q.headers)||B.ipAddress;if(J)A.user={...A.user,ip_address:J}}}function p$B(A,Q){let B={},Y={...A.headers};if(Q.headers){if(B.headers=Y,!Q.cookies)delete Y.cookie;if(!Q.ip)Md.forEach((J)=>{delete Y[J]})}if(B.method=A.method,Q.url)B.url=A.url;if(Q.cookies){let J=A.cookies||(Y?.cookie?SNA(Y.cookie):void 0);B.cookies=J||{}}if(Q.query_string)B.query_string=A.query_string;if(Q.data)B.data=A.data;return B}function uE(A){yE("console",A),hE("console",i$B)}function i$B(){if(!("console"in AQ))return;dC.forEach(function(A){if(!(A in AQ.console))return;Uu(AQ.console,A,function(Q){return wE[A]=Q,function(...B){gE("console",{args:B,level:A}),wE[A]?.apply(AQ.console,B)}})})}function zj(A){return A==="warn"?"warning":["fatal","error","warning","log","info","debug"].includes(A)?A:"log"}var n$B="CaptureConsole",s$B=(A={})=>{let Q=A.levels||dC,B=A.handled??!0;return{name:n$B,setup(Y){if(!("console"in AQ))return;uE(({args:J,level:C})=>{if(hA()!==Y||!Q.includes(C))return;r$B(J,C,B)})}}},zd=wA(s$B);function r$B(A,Q,B){let Y={level:zj(Q),extra:{arguments:A}};P8((J)=>{if(J.addEventProcessor((G)=>{return G.logger="console",i7(G,{handled:B,type:"console"}),G}),Q==="assert"){if(!A[0]){let G=`Assertion failed: ${c7(A.slice(1)," ")||"console.assert"}`;J.setExtra("arguments",A.slice(1)),fE(G,Y)}return}let C=A.find((G)=>G instanceof Error);if(C){jB(C,Y);return}let X=c7(A," ");fE(X,Y)})}var a$B="Dedupe",o$B=()=>{let A;return{name:a$B,processEvent(Q){if(Q.type)return Q;try{if(t$B(Q,A))return OA&&e.warn("Event dropped due to being a duplicate of previously captured event."),null}catch(B){}return A=Q}}},Rd=wA(o$B);function t$B(A,Q){if(!Q)return!1;if(e$B(A,Q))return!0;if(A4B(A,Q))return!0;return!1}function e$B(A,Q){let B=A.message,Y=Q.message;if(!B&&!Y)return!1;if(B&&!Y||!B&&Y)return!1;if(B!==Y)return!1;if(!yNA(A,Q))return!1;if(!vNA(A,Q))return!1;return!0}function A4B(A,Q){let B=_NA(Q),Y=_NA(A);if(!B||!Y)return!1;if(B.type!==Y.type||B.value!==Y.value)return!1;if(!yNA(A,Q))return!1;if(!vNA(A,Q))return!1;return!0}function vNA(A,Q){let B=Cj(A),Y=Cj(Q);if(!B&&!Y)return!0;if(B&&!Y||!B&&Y)return!1;if(B=B,Y=Y,Y.length!==B.length)return!1;for(let J=0;J{let{depth:Q=3,captureErrorCause:B=!0}=A;return{name:Q4B,processEvent(Y,J,C){let{maxValueLength:X=250}=C.getOptions();return Y4B(Y,J,Q,B,X)}}},wd=wA(B4B);function Y4B(A,Q={},B,Y,J){if(!Q.originalException||!uC(Q.originalException))return A;let C=Q.originalException.name||Q.originalException.constructor.name,X=J4B(Q.originalException,Y,J);if(X){let G={...A.contexts},F=wJ(X,B);if(M5(F))d0(F,"__sentry_skip_normalization__",!0),G[C]=F;return{...A,contexts:G}}return A}function J4B(A,Q,B){try{let Y=["name","message","stack","line","column","fileName","lineNumber","columnNumber","toJSON"],J={};for(let C of Object.keys(A)){if(Y.indexOf(C)!==-1)continue;let X=A[C];J[C]=uC(X)||typeof X==="string"?b9(`${X}`,B):X}if(Q&&A.cause!==void 0)J.cause=uC(A.cause)?A.cause.toString():A.cause;if(typeof A.toJSON==="function"){let C=A.toJSON();for(let X of Object.keys(C)){let G=C[X];J[X]=uC(G)?G.toString():G}}return J}catch(Y){OA&&e.error("Unable to extract extra data from the Error object:",Y)}return null}function C4B(A,Q){let B=0;for(let Y=A.length-1;Y>=0;Y--){let J=A[Y];if(J===".")A.splice(Y,1);else if(J==="..")A.splice(Y,1),B++;else if(B)A.splice(Y,1),B--}if(Q)for(;B--;B)A.unshift("..");return A}var X4B=/^(\S+:\\|\/?)([\s\S]*?)((?:\.{1,2}|[^/\\]+?|)(\.[^./\\]*|))(?:[/\\]*)$/;function gNA(A){let Q=A.length>1024?`${A.slice(-1024)}`:A,B=X4B.exec(Q);return B?B.slice(1):[]}function jd(...A){let Q="",B=!1;for(let Y=A.length-1;Y>=-1&&!B;Y--){let J=Y>=0?A[Y]:"/";if(!J)continue;Q=`${J}/${Q}`,B=J.charAt(0)==="/"}return Q=C4B(Q.split("/").filter((Y)=>!!Y),!B).join("/"),(B?"/":"")+Q||"."}function hNA(A){let Q=0;for(;Q=0;B--)if(A[B]!=="")break;if(Q>B)return[];return A.slice(Q,B-Q+1)}function Od(A,Q){A=jd(A).slice(1),Q=jd(Q).slice(1);let B=hNA(A.split("/")),Y=hNA(Q.split("/")),J=Math.min(B.length,Y.length),C=J;for(let G=0;G{let Q=A.root,B=A.prefix||"app:///",Y="window"in AQ&&!!AQ.window,J=A.iteratee||F4B({isBrowser:Y,root:Q,prefix:B});function C(G){try{return{...G,exception:{...G.exception,values:G.exception.values.map((F)=>({...F,...F.stacktrace&&{stacktrace:X(F.stacktrace)}}))}}}catch(F){return G}}function X(G){return{...G,frames:G?.frames&&G.frames.map((F)=>J(F))}}return{name:G4B,processEvent(G){let F=G;if(G.exception&&Array.isArray(G.exception.values))F=C(F);return F}}});function F4B({isBrowser:A,root:Q,prefix:B}){return(Y)=>{if(!Y.filename)return Y;let J=/^[a-zA-Z]:\\/.test(Y.filename)||Y.filename.includes("\\")&&!Y.filename.includes("/"),C=/^\//.test(Y.filename);if(A){if(Q){let X=Y.filename;if(X.indexOf(Q)===0)Y.filename=X.replace(Q,B)}}else if(J||C){let X=J?Y.filename.replace(/^[a-zA-Z]:/,"").replace(/\\/g,"/"):Y.filename,G=Q?Od(Q,X):Td(X);Y.filename=`${B}${G}`}return Y}}var W4B=["reauthenticate","signInAnonymously","signInWithOAuth","signInWithIdToken","signInWithOtp","signInWithPassword","signInWithSSO","signOut","signUp","verifyOtp"],Z4B=["createUser","deleteUser","listUsers","getUserById","updateUserById","inviteUserByEmail"],$4B={eq:"eq",neq:"neq",gt:"gt",gte:"gte",lt:"lt",lte:"lte",like:"like","like(all)":"likeAllOf","like(any)":"likeAnyOf",ilike:"ilike","ilike(all)":"ilikeAllOf","ilike(any)":"ilikeAnyOf",is:"is",in:"in",cs:"contains",cd:"containedBy",sr:"rangeGt",nxl:"rangeGte",sl:"rangeLt",nxr:"rangeLte",adj:"rangeAdjacent",ov:"overlaps",fts:"",plfts:"plain",phfts:"phrase",wfts:"websearch",not:"not"},fNA=["select","insert","upsert","update","delete"];function Rj(A){try{A.__SENTRY_INSTRUMENTED__=!0}catch{}}function wj(A){try{return A.__SENTRY_INSTRUMENTED__}catch{return!1}}function U4B(A,Q={}){switch(A){case"GET":return"select";case"POST":if(Q.Prefer?.includes("resolution="))return"upsert";else return"insert";case"PATCH":return"update";case"DELETE":return"delete";default:return""}}function E4B(A,Q){if(Q===""||Q==="*")return"select(*)";if(A==="select")return`select(${Q})`;if(A==="or"||A.endsWith(".or"))return`${A}${Q}`;let[B,...Y]=Q.split("."),J;if(B?.startsWith("fts"))J="textSearch";else if(B?.startsWith("plfts"))J="textSearch[plain]";else if(B?.startsWith("phfts"))J="textSearch[phrase]";else if(B?.startsWith("wfts"))J="textSearch[websearch]";else J=B&&$4B[B]||"filter";return`${J}(${A}, ${Y.join(".")})`}function xNA(A,Q=!1){return new Proxy(A,{apply(B,Y,J){return k8({name:A.name,attributes:{[DQ]:"auto.db.supabase",[YQ]:`db.auth.${Q?"admin.":""}${A.name}`}},(C)=>{return Reflect.apply(B,Y,J).then((X)=>{if(X&&typeof X==="object"&&"error"in X&&X.error)C.setStatus({code:m9}),jB(X.error,{mechanism:{handled:!1}});else C.setStatus({code:s7});return C.end(),X}).catch((X)=>{throw C.setStatus({code:m9}),C.end(),jB(X,{mechanism:{handled:!1}}),X}).then(...J)})}})}function K4B(A){let Q=A.auth;if(!Q||wj(A.auth))return;for(let B of W4B){let Y=Q[B];if(!Y)continue;if(typeof A.auth[B]==="function")A.auth[B]=xNA(Y)}for(let B of Z4B){let Y=Q.admin[B];if(!Y)continue;if(typeof A.auth.admin[B]==="function")A.auth.admin[B]=xNA(Y,!0)}Rj(A.auth)}function V4B(A){if(wj(A.prototype.from))return;A.prototype.from=new Proxy(A.prototype.from,{apply(Q,B,Y){let J=Reflect.apply(Q,B,Y),C=J.constructor;return H4B(C),J}}),Rj(A.prototype.from)}function I4B(A){if(wj(A.prototype.then))return;A.prototype.then=new Proxy(A.prototype.then,{apply(Q,B,Y){let J=fNA,C=B,X=U4B(C.method,C.headers);if(!J.includes(X))return Reflect.apply(Q,B,Y);if(!C?.url?.pathname||typeof C.url.pathname!=="string")return Reflect.apply(Q,B,Y);let G=C.url.pathname.split("/"),F=G.length>0?G[G.length-1]:"",W=`from(${F})`,Z=[];for(let[E,K]of C.url.searchParams.entries())Z.push(E4B(E,K));let U=Object.create(null);if(M5(C.body))for(let[E,K]of Object.entries(C.body))U[E]=K;let $={"db.table":F,"db.schema":C.schema,"db.url":C.url.origin,"db.sdk":C.headers["X-Client-Info"],"db.system":"postgresql",[DQ]:"auto.db.supabase",[YQ]:`db.${X}`};if(Z.length)$["db.query"]=Z;if(Object.keys(U).length)$["db.body"]=U;return k8({name:W,attributes:$},(E)=>{return Reflect.apply(Q,B,[]).then((K)=>{if(E){if(K&&typeof K==="object"&&"status"in K)_E(E,K.status||500);E.end()}if(K.error){let H=Error(K.error.message);if(K.error.code)H.code=K.error.code;if(K.error.details)H.details=K.error.details;let D={};if(Z.length)D.query=Z;if(Object.keys(U).length)D.body=U;jB(H,{contexts:{supabase:D}})}let I={type:"supabase",category:`db.${X}`,message:W},V={};if(Z.length)V.query=Z;if(Object.keys(U).length)V.body=U;if(Object.keys(V).length)I.data=V;return G9(I),K},(K)=>{if(E)_E(E,500),E.end();throw K}).then(...Y)})}}),Rj(A.prototype.then)}function H4B(A){for(let Q of fNA){if(wj(A.prototype[Q]))continue;A.prototype[Q]=new Proxy(A.prototype[Q],{apply(B,Y,J){let C=Reflect.apply(B,Y,J),X=C.constructor;return OA&&e.log(`Instrumenting ${Q} operation's PostgRESTFilterBuilder`),I4B(X),C}}),Rj(A.prototype[Q])}}var jj=(A)=>{if(!A){OA&&e.warn("Supabase integration was not installed because no Supabase client was provided.");return}let Q=A.constructor===Function?A:A.constructor;V4B(Q),K4B(A)},D4B="Supabase",N4B=(A)=>{return{setupOnce(){jj(A)},name:D4B}},kd=wA((A)=>{return N4B(A.supabaseClient)});var L4B=10,q4B="ZodErrors";function M4B(A){return uC(A)&&A.name==="ZodError"&&Array.isArray(A.issues)}function z4B(A){return{...A,path:"path"in A&&Array.isArray(A.path)?A.path.join("."):void 0,keys:"keys"in A?JSON.stringify(A.keys):void 0,unionErrors:"unionErrors"in A?JSON.stringify(A.unionErrors):void 0}}function R4B(A){return A.map((Q)=>{if(typeof Q==="number")return"";else return Q}).join(".")}function w4B(A){let Q=new Set;for(let Y of A.issues){let J=R4B(Y.path);if(J.length>0)Q.add(J)}let B=Array.from(Q);if(B.length===0){let Y="variable";if(A.issues.length>0){let J=A.issues[0];if(J!==void 0&&"expected"in J&&typeof J.expected==="string")Y=J.expected}return`Failed to validate ${Y}`}return`Failed to validate keys: ${b9(B.join(", "),100)}`}function j4B(A,Q=!1,B,Y){if(!B.exception?.values||!Y.originalException||!M4B(Y.originalException)||Y.originalException.issues.length===0)return B;try{let C=(Q?Y.originalException.issues:Y.originalException.issues.slice(0,A)).map(z4B);if(Q){if(!Array.isArray(Y.attachments))Y.attachments=[];Y.attachments.push({filename:"zod_issues.json",data:JSON.stringify({issues:C})})}return{...B,exception:{...B.exception,values:[{...B.exception.values[0],value:w4B(Y.originalException)},...B.exception.values.slice(1)]},extra:{...B.extra,"zoderror.issues":C.slice(0,A)}}}catch(J){return{...B,extra:{...B.extra,"zoderrors sentry integration parse error":{message:"an exception was thrown while processing ZodError within applyZodErrorsToEvent()",error:J instanceof Error?`${J.name}: ${J.message} +${J.stack}`:"unknown"}}}}}var O4B=(A={})=>{let Q=A.limit??L4B;return{name:q4B,processEvent(B,Y){return j4B(Q,A.saveZodIssuesAsAttachment,B,Y)}}},_d=wA(O4B);var P4B="Console",zN=wA((A={})=>{let Q=new Set(A.levels||dC);return{name:P4B,setup(B){uE(({args:Y,level:J})=>{if(hA()!==B||!Q.has(J))return;T4B(J,Y)})}}});function T4B(A,Q){let B={category:"console",data:{arguments:Q,logger:"console"},level:zj(A),message:bNA(Q)};if(A==="assert")if(Q[0]===!1){let Y=Q.slice(1);B.message=Y.length>0?`Assertion failed: ${bNA(Y)}`:"Assertion failed",B.data.arguments=Y}else return;G9(B,{input:Q,level:A})}function bNA(A){return"util"in AQ&&typeof AQ.util.format==="function"?AQ.util.format(...A):c7(A," ")}function mNA(A){return!!A&&typeof A._profiler<"u"&&typeof A._profiler.start==="function"&&typeof A._profiler.stop==="function"}function S4B(){let A=hA();if(!A){OA&&e.warn("No Sentry client available, profiling is not started");return}let Q=A.getIntegrationByName("ProfilingIntegration");if(!Q){OA&&e.warn("ProfilingIntegration is not available");return}if(!mNA(Q)){OA&&e.warn("Profiler is not available on profiling integration.");return}Q._profiler.start()}function k4B(){let A=hA();if(!A){OA&&e.warn("No Sentry client available, profiling is not started");return}let Q=A.getIntegrationByName("ProfilingIntegration");if(!Q){OA&&e.warn("ProfilingIntegration is not available");return}if(!mNA(Q)){OA&&e.warn("Profiler is not available on profiling integration.");return}Q._profiler.stop()}var vd={startProfiler:S4B,stopProfiler:k4B};function QF(A){if(!A)return{};let Q=A.match(/^(([^:/?#]+):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?$/);if(!Q)return{};let B=Q[6]||"",Y=Q[8]||"";return{host:Q[4],path:Q[5],protocol:Q[2],search:B,hash:Y,relative:Q[5]+B+Y}}function dE(A){return A.split(/[?#]/,1)[0]}function BF(A){let{protocol:Q,host:B,path:Y}=A,J=B?.replace(/^.*@/,"[filtered]:[filtered]@").replace(/(:80)$/,"").replace(/(:443)$/,"")||"";return`${Q?`${Q}://`:""}${J}${Y}`}var uNA={mechanism:{handled:!1,data:{function:"trpcMiddleware"}}};function _4B(A){if(typeof A==="object"&&A!==null&&"ok"in A&&!A.ok&&"error"in A)jB(A.error,uNA)}function yd(A={}){return async function(Q){let{path:B,type:Y,next:J,rawInput:C,getRawInput:X}=Q,F=hA()?.getOptions(),W={procedure_path:B,procedure_type:Y};if(d0(W,"__sentry_override_normalization_depth__",1+(F?.normalizeDepth??5)),A.attachRpcInput!==void 0?A.attachRpcInput:F?.sendDefaultPii){if(C!==void 0)W.input=wJ(C);if(X!==void 0&&typeof X==="function")try{let Z=await X();W.input=wJ(Z)}catch(Z){}}return sX((Z)=>{return Z.setContext("trpc",W),$N({name:`trpc/${B}`,op:"rpc.server",attributes:{[A0]:"route",[DQ]:"auto.rpc.trpc"},forceTransaction:!!A.forceTransaction},async(U)=>{try{let $=await J();return _4B($),U.end(),$}catch($){throw jB($,uNA),U.end(),$}})})}}var dNA=new WeakSet;function xd(A){if(dNA.has(A))return A;if(!v4B(A))return OA&&e.warn("Did not patch MCP server. Interface is incompatible."),A;return A.connect=new Proxy(A.connect,{apply(Q,B,Y){let[J,...C]=Y;if(!J.onclose)J.onclose=()=>{if(J.sessionId)lNA(J.sessionId)};if(!J.onmessage)J.onmessage=(G)=>{if(J.sessionId&&cNA(G))pNA(J.sessionId,G.id)};let X=new Proxy(J,{set(G,F,W){if(F==="onmessage")G[F]=new Proxy(W,{apply(Z,U,$){let[E]=$;if(J.sessionId&&cNA(E))pNA(J.sessionId,E.id);return Reflect.apply(Z,U,$)}});else if(F==="onclose")G[F]=new Proxy(W,{apply(Z,U,$){if(J.sessionId)lNA(J.sessionId);return Reflect.apply(Z,U,$)}});else G[F]=W;return!0}});return Reflect.apply(Q,B,[X,...C])}}),A.resource=new Proxy(A.resource,{apply(Q,B,Y){let J=Y[0],C=Y[Y.length-1];if(typeof J!=="string"||typeof C!=="function")return Q.apply(B,Y);let X=new Proxy(C,{apply(G,F,W){let Z=W.find(hd);return gd(Z,()=>{return k8({name:`mcp-server/resource:${J}`,forceTransaction:!0,attributes:{[YQ]:"auto.function.mcp-server",[DQ]:"auto.function.mcp-server",[A0]:"route","mcp_server.resource":J}},()=>G.apply(F,W))})}});return Reflect.apply(Q,B,[...Y.slice(0,-1),X])}}),A.tool=new Proxy(A.tool,{apply(Q,B,Y){let J=Y[0],C=Y[Y.length-1];if(typeof J!=="string"||typeof C!=="function")return Q.apply(B,Y);let X=new Proxy(C,{apply(G,F,W){let Z=W.find(hd);return gd(Z,()=>{return k8({name:`mcp-server/tool:${J}`,forceTransaction:!0,attributes:{[YQ]:"auto.function.mcp-server",[DQ]:"auto.function.mcp-server",[A0]:"route","mcp_server.tool":J}},()=>G.apply(F,W))})}});return Reflect.apply(Q,B,[...Y.slice(0,-1),X])}}),A.prompt=new Proxy(A.prompt,{apply(Q,B,Y){let J=Y[0],C=Y[Y.length-1];if(typeof J!=="string"||typeof C!=="function")return Q.apply(B,Y);let X=new Proxy(C,{apply(G,F,W){let Z=W.find(hd);return gd(Z,()=>{return k8({name:`mcp-server/prompt:${J}`,forceTransaction:!0,attributes:{[YQ]:"auto.function.mcp-server",[DQ]:"auto.function.mcp-server",[A0]:"route","mcp_server.prompt":J}},()=>G.apply(F,W))})}});return Reflect.apply(Q,B,[...Y.slice(0,-1),X])}}),dNA.add(A),A}function v4B(A){return typeof A==="object"&&A!==null&&"resource"in A&&typeof A.resource==="function"&&"tool"in A&&typeof A.tool==="function"&&"prompt"in A&&typeof A.prompt==="function"&&"connect"in A&&typeof A.connect==="function"}function cNA(A){return typeof A==="object"&&A!==null&&"id"in A&&(typeof A.id==="number"||typeof A.id==="string")}function hd(A){return typeof A==="object"&&A!==null&&"sessionId"in A&&typeof A.sessionId==="string"&&"requestId"in A&&(typeof A.requestId==="number"||typeof A.requestId==="string")}var Oj=new Map;function lNA(A){Oj.delete(A)}function pNA(A,Q){let B=iC();if(B){let Y=Oj.get(A)??new Map;Y.set(Q,B),Oj.set(A,Y)}}function gd(A,Q){if(A){let{sessionId:B,requestId:Y}=A,J=Oj.get(B);if(!J)return Q();let C=J.get(Y);if(!C)return Q();return J.delete(Y),e7(C,()=>{return Q()})}return Q()}function fd(A,Q={},B=sQ()){let{message:Y,name:J,email:C,url:X,source:G,associatedEventId:F,tags:W}=A,Z={contexts:{feedback:{contact_email:C,name:J,message:Y,url:X,source:G,associated_event_id:F}},type:"feedback",level:"info",tags:W},U=B?.getClient()||hA();if(U)U.emit("beforeSendFeedback",Z,Q);return B.captureEvent(Z,Q)}var y4B="ConsoleLogs",iNA={[DQ]:"auto.console.logging"},h4B=(A={})=>{let Q=A.levels||dC;return{name:y4B,setup(B){if(!B.getOptions()._experiments?.enableLogs){OA&&e.warn("`_experiments.enableLogs` is not enabled, ConsoleLogs integration disabled");return}uE(({args:Y,level:J})=>{if(hA()!==B||!Q.includes(J))return;if(J==="assert"){if(!Y[0]){let X=Y.slice(1),G=X.length>0?`Assertion failed: ${nNA(X)}`:"Assertion failed";hZ({level:"error",message:G,attributes:iNA})}return}let C=J==="log";hZ({level:C?"info":J,message:nNA(Y),severityNumber:C?10:void 0,attributes:iNA})})}}},bd=wA(h4B);function nNA(A){return"util"in AQ&&typeof AQ.util.format==="function"?AQ.util.format(...A):c7(A," ")}function RN(A){if(A===void 0)return;else if(A>=400&&A<500)return"warning";else if(A>=500)return"error";else return}function rNA(A,Q=!1){return!(Q||A&&!A.startsWith("/")&&!A.match(/^[A-Z]:/)&&!A.startsWith(".")&&!A.match(/^[a-zA-Z]([a-zA-Z0-9.\-+])*:\/\//))&&A!==void 0&&!A.includes("node_modules/")}function aNA(A){let Q=/^\s*[-]{4,}$/,B=/at (?:async )?(?:(.+?)\s+\()?(?:(.+):(\d+):(\d+)?|([^)]+))\)?/;return(Y)=>{let J=Y.match(B);if(J){let C,X,G,F,W;if(J[1]){G=J[1];let $=G.lastIndexOf(".");if(G[$-1]===".")$--;if($>0){C=G.slice(0,$),X=G.slice($+1);let E=C.indexOf(".Module");if(E>0)G=G.slice(E+1),C=C.slice(0,E)}F=void 0}if(X)F=C,W=X;if(X==="")W=void 0,G=void 0;if(G===void 0)W=W||Pu,G=F?`${F}.${W}`:W;let Z=J[2]?.startsWith("file://")?J[2].slice(7):J[2],U=J[5]==="native";if(Z?.match(/\/[A-Z]:/))Z=Z.slice(1);if(!Z&&J[5]&&!U)Z=J[5];return{filename:Z?decodeURI(Z):void 0,module:A?A(Z):void 0,function:G,lineno:sNA(J[3]),colno:sNA(J[4]),in_app:rNA(Z||"",U)}}if(Y.match(Q))return{filename:Y};return}}function md(A){return[90,aNA(A)]}function sNA(A){return parseInt(A||"",10)||void 0}class _8{constructor(A){this._maxSize=A,this._cache=new Map}get size(){return this._cache.size}get(A){let Q=this._cache.get(A);if(Q===void 0)return;return this._cache.delete(A),this._cache.set(A,Q),Q}set(A,Q){if(this._cache.size>=this._maxSize)this._cache.delete(this._cache.keys().next().value);this._cache.set(A,Q)}remove(A){let Q=this._cache.get(A);if(Q)this._cache.delete(A);return Q}clear(){this._cache.clear()}keys(){return Array.from(this._cache.keys())}values(){let A=[];return this._cache.forEach((Q)=>A.push(Q)),A}}function tX(A,...Q){let[B,Y,J]=Q;if(Array.isArray(Y)){let C={...J};C["sentry.message.template"]=B,Y.forEach((G,F)=>{C[`sentry.message.parameter.${F}`]=G});let X=g4B(B,...Y);hZ({level:A,message:X,attributes:C})}else hZ({level:A,message:B,attributes:Y})}function x4B(...A){tX("trace",...A)}function f4B(...A){tX("debug",...A)}function b4B(...A){tX("info",...A)}function m4B(...A){tX("warn",...A)}function u4B(...A){tX("error",...A)}function d4B(...A){tX("fatal",...A)}var L$Q=qA(yA(),1),q$Q=qA(fpA(),1);var vp=qA(NB(),1),hO={};function EQ(A,Q,B){if(B)return tlB(A,Q,B);return olB(A,Q)}function olB(A,Q){return Object.assign((B)=>{let Y=hO[A];if(Y){if(B)Y.setConfig(B);return Y}let J=Q(B);return hO[A]=J,vp.registerInstrumentations({instrumentations:[J]}),J},{id:A})}function tlB(A,Q,B){return Object.assign((Y)=>{let J=B(Y),C=hO[A];if(C)return C.setConfig(J),C;let X=new Q(J);return hO[A]=X,vp.registerInstrumentations({instrumentations:[X]}),X},{id:A})}function GF(A){let Q=!1,B=[];if(!elB(A))Q=!0;else{let J=A._wrap;A._wrap=(...C)=>{return Q=!0,B.forEach((X)=>X()),B=[],J(...C)}}return(J)=>{if(Q)J();else B.push(J)}}function elB(A){return typeof A._wrap==="function"}function p0(A,Q){A.setAttribute(DQ,Q)}function $L(A){let Q=A.protocol||"",B=A.hostname||A.host||"",Y=!A.port||A.port===80||A.port===443||/^(.*):(\d+)$/.test(B)?"":`:${A.port}`,J=A.path?A.path:"/";return`${Q}//${B}${Y}${J}`}var NK=qA(yA(),1),QP=qA(MB(),1),HL=qA(NB(),1);import{subscribe as eO,unsubscribe as AP}from"node:diagnostics_channel";var oQ=qA(uB(),1);var l9=qA(yA(),1),bA=qA(yA(),1),m5=qA(MB(),1),ZF=qA(Wi(),1),Hi="sentry.parentIsRemote",HK="sentry.graphql.operation";function Di(A){if("parentSpanId"in A)return A.parentSpanId;else if("parentSpanContext"in A)return A.parentSpanContext?.spanId;return}function Ni(A){let Q=A;return!!Q.attributes&&typeof Q.attributes==="object"}function KI0(A){return typeof A.kind==="number"}function VI0(A){return!!A.status}function sZQ(A){return!!A.name}function II0(A){if(!Ni(A))return{};let Q=A.attributes[oQ.ATTR_URL_FULL]||A.attributes[oQ.SEMATTRS_HTTP_URL],B={url:Q,"http.method":A.attributes[oQ.ATTR_HTTP_REQUEST_METHOD]||A.attributes[oQ.SEMATTRS_HTTP_METHOD]};if(!B["http.method"]&&B.url)B["http.method"]="GET";try{if(typeof Q==="string"){let Y=QF(Q);if(B.url=BF(Y),Y.search)B["http.query"]=Y.search;if(Y.hash)B["http.fragment"]=Y.hash}}catch{}return B}function HI0(A){if(KI0(A))return A.kind;return bA.SpanKind.INTERNAL}var Zi="sentry-trace",$i="baggage",Li="sentry.dsc",qi="sentry.sampled_not_recording",rZQ="sentry.url",DI0="sentry.sample_rand",NI0="sentry.sample_rate",aZQ=bA.createContextKey("sentry_scopes"),Ui=bA.createContextKey("sentry_fork_isolation_scope"),Ei=bA.createContextKey("sentry_fork_set_scope"),Ki=bA.createContextKey("sentry_fork_set_isolation_scope"),oZQ="_scopeContext";function DK(A){return A.getValue(aZQ)}function tZQ(A,Q){return A.setValue(aZQ,Q)}function LI0(A,Q){d0(A,oZQ,Q)}function Mi(A){return A[oZQ]}function IK(A){let{traceFlags:Q,traceState:B}=A,Y=B?B.get(qi)==="1":!1;if(Q===bA.TraceFlags.SAMPLED)return!0;if(Y)return!1;let J=B?B.get(Li):void 0,C=J?r7(J):void 0;if(C?.sampled==="true")return!0;if(C?.sampled==="false")return!1;return}function eZQ(A,Q,B){let Y=Q[oQ.ATTR_HTTP_REQUEST_METHOD]||Q[oQ.SEMATTRS_HTTP_METHOD];if(Y)return MI0({attributes:Q,name:A,kind:B},Y);let J=Q[oQ.SEMATTRS_DB_SYSTEM],C=typeof Q[YQ]==="string"&&Q[YQ].startsWith("cache.");if(J&&!C)return qI0({attributes:Q,name:A});let X=Q[A0]==="custom"?"custom":"route";if(Q[oQ.SEMATTRS_RPC_SERVICE])return{...KL(A,Q,"route"),op:"rpc"};if(Q[oQ.SEMATTRS_MESSAGING_SYSTEM])return{...KL(A,Q,X),op:"message"};let W=Q[oQ.SEMATTRS_FAAS_TRIGGER];if(W)return{...KL(A,Q,X),op:W.toString()};return{op:void 0,description:A,source:"custom"}}function A$Q(A){let Q=Ni(A)?A.attributes:{},B=sZQ(A)?A.name:"",Y=HI0(A);return eZQ(B,Q,Y)}function qI0({attributes:A,name:Q}){let B=A[lC];if(typeof B==="string")return{op:"db",description:B,source:A[A0]||"custom"};if(A[A0]==="custom")return{op:"db",description:Q,source:"custom"};let Y=A[oQ.SEMATTRS_DB_STATEMENT];return{op:"db",description:Y?Y.toString():Q,source:"task"}}function MI0({name:A,kind:Q,attributes:B},Y){let J=["http"];switch(Q){case bA.SpanKind.CLIENT:J.push("client");break;case bA.SpanKind.SERVER:J.push("server");break}if(B["sentry.http.prefetch"])J.push("prefetch");let{urlPath:C,url:X,query:G,fragment:F,hasRoute:W}=RI0(B,Q);if(!C)return{...KL(A,B),op:J.join(".")};let Z=B[HK],U=`${Y} ${C}`,$=Z?`${U} (${zI0(Z)})`:U,E=W||C==="/"?"route":"url",K={};if(X)K.url=X;if(G)K["http.query"]=G;if(F)K["http.fragment"]=F;let I=Q===bA.SpanKind.CLIENT||Q===bA.SpanKind.SERVER,H=!`${B[DQ]||"manual"}`.startsWith("auto"),D=B[A0]==="custom",L=B[lC],z=!D&&L==null&&(I||!H),{description:M,source:N}=z?{description:$,source:E}:KL(A,B);return{op:J.join("."),description:M,source:N,data:K}}function zI0(A){if(Array.isArray(A)){let Q=A.slice().sort();if(Q.length<=5)return Q.join(", ");else return`${Q.slice(0,5).join(", ")}, +${Q.length-5}`}return`${A}`}function RI0(A,Q){let B=A[oQ.SEMATTRS_HTTP_TARGET],Y=A[oQ.SEMATTRS_HTTP_URL]||A[oQ.ATTR_URL_FULL],J=A[oQ.ATTR_HTTP_ROUTE],C=typeof Y==="string"?QF(Y):void 0,X=C?BF(C):void 0,G=C?.search||void 0,F=C?.hash||void 0;if(typeof J==="string")return{urlPath:J,url:X,query:G,fragment:F,hasRoute:!0};if(Q===bA.SpanKind.SERVER&&typeof B==="string")return{urlPath:dE(B),url:X,query:G,fragment:F,hasRoute:!1};if(C)return{urlPath:X,url:X,query:G,fragment:F,hasRoute:!1};if(typeof B==="string")return{urlPath:dE(B),url:X,query:G,fragment:F,hasRoute:!1};return{urlPath:void 0,url:X,query:G,fragment:F,hasRoute:!1}}function KL(A,Q,B="custom"){let Y=Q[A0]||B,J=Q[lC];if(J&&typeof J==="string")return{description:J,source:Y};return{description:A,source:Y}}function Q$Q(A){A.on("createDsc",(Q,B)=>{if(!B)return;let C=eA(B).data[A0],{description:X}=sZQ(B)?A$Q(B):{description:void 0};if(C!=="url"&&X)Q.transaction=X;if(X9()){let G=IK(B.spanContext());Q.sampled=G==null?void 0:String(G)}})}function B$Q(){return bA.trace.getActiveSpan()}var F6=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__;function Y$Q({dsc:A,sampled:Q}){let B=A?a7(A):void 0,Y=new m5.TraceState,J=B?Y.set(Li,B):Y;return Q===!1?J.set(qi,"1"):J}var J$Q=new Set;function C$Q(){return Array.from(J$Q)}function oO(A){J$Q.add(A)}class zi extends m5.W3CBaggagePropagator{constructor(){super();oO("SentryPropagator"),this._urlMatchesTargetsMap=new _8(100)}inject(A,Q,B){if(m5.isTracingSuppressed(A)){F6&&e.log("[Tracing] Not injecting trace data for url because tracing is suppressed.");return}let Y=bA.trace.getSpan(A),J=Y&&OI0(Y),C=hA()?.getOptions()?.tracePropagationTargets;if(!VL(J,C,this._urlMatchesTargetsMap)){F6&&e.log("[Tracing] Not injecting trace data for url because it does not match tracePropagationTargets:",J);return}let X=jI0(Q),G=bA.propagation.getBaggage(A)||bA.propagation.createBaggage({}),{dynamicSamplingContext:F,traceId:W,spanId:Z,sampled:U}=X$Q(A);if(X){let $=wZ(X);if($)Object.entries($).forEach(([E,K])=>{G=G.setEntry(E,{value:K})})}if(F)G=Object.entries(F).reduce(($,[E,K])=>{if(K)return $.setEntry(`${eD}${E}`,{value:K});return $},G);if(W&&W!==bA.INVALID_TRACEID)B.set(Q,Zi,o7(W,Z,U));super.inject(bA.propagation.setBaggage(A,G),Q,B)}extract(A,Q,B){let Y=B.get(Q,Zi),J=B.get(Q,$i),C=Y?Array.isArray(Y)?Y[0]:Y:void 0;return F$Q(G$Q(A,{sentryTrace:C,baggage:J}))}fields(){return[Zi,$i]}}var pZQ="[Tracing] Not injecting trace data for url because it does not match tracePropagationTargets:";function VL(A,Q,B){if(typeof A!=="string"||!Q)return!0;let Y=B?.get(A);if(Y!==void 0)return F6&&!Y&&e.log(pZQ,A),Y;let J=l7(A,Q);return B?.set(A,J),F6&&!J&&e.log(pZQ,A),J}function X$Q(A){let Q=bA.trace.getSpan(A);if(Q?.spanContext().isRemote){let X=Q.spanContext();return{dynamicSamplingContext:c0(Q),traceId:X.traceId,spanId:void 0,sampled:IK(X)}}if(Q){let X=Q.spanContext();return{dynamicSamplingContext:c0(Q),traceId:X.traceId,spanId:X.spanId,sampled:IK(X)}}let B=DK(A)?.scope||sQ(),Y=hA(),J=B.getPropagationContext();return{dynamicSamplingContext:Y?rX(Y,B):void 0,traceId:J.traceId,spanId:J.propagationSpanId,sampled:J.sampled}}function G$Q(A,{sentryTrace:Q,baggage:B}){let Y=jZ(Q,B),{traceId:J,parentSpanId:C,sampled:X,dsc:G}=Y;if(!C)return A;let F=PI0({traceId:J,spanId:C,sampled:X,dsc:G});return bA.trace.setSpanContext(A,F)}function wI0(A,Q,B){let Y=F$Q(G$Q(A,Q));return bA.context.with(Y,B)}function F$Q(A){let Q=DK(A),B={scope:Q?Q.scope:sQ().clone(),isolationScope:Q?Q.isolationScope:RQ()};return tZQ(A,B)}function jI0(A){try{let Q=A[$i];return Array.isArray(Q)?Q.join(","):Q}catch{return}}function OI0(A){let Q=eA(A).data,B=Q[oQ.SEMATTRS_HTTP_URL]||Q[oQ.ATTR_URL_FULL];if(typeof B==="string")return B;let Y=A.spanContext().traceState?.get(rZQ);if(Y)return Y;return}function PI0({spanId:A,traceId:Q,sampled:B,dsc:Y}){let J=Y$Q({dsc:Y,sampled:B});return{traceId:Q,spanId:A,isRemote:!0,traceFlags:B?bA.TraceFlags.SAMPLED:bA.TraceFlags.NONE,traceState:J}}function TI0(A,Q){let B=Ri(),{name:Y,parentSpan:J}=A;return Oi(J)(()=>{let X=ji(A.scope,A.forceTransaction),F=A.onlyIfParent&&!bA.trace.getSpan(X)?m5.suppressTracing(X):X,W=wi(A);return B.startActiveSpan(Y,W,F,(Z)=>{return SZ(()=>Q(Z),()=>{if(eA(Z).status===void 0)Z.setStatus({code:bA.SpanStatusCode.ERROR})},()=>Z.end())})})}function SI0(A,Q){let B=Ri(),{name:Y,parentSpan:J}=A;return Oi(J)(()=>{let X=ji(A.scope,A.forceTransaction),F=A.onlyIfParent&&!bA.trace.getSpan(X)?m5.suppressTracing(X):X,W=wi(A);return B.startActiveSpan(Y,W,F,(Z)=>{return SZ(()=>Q(Z,()=>Z.end()),()=>{if(eA(Z).status===void 0)Z.setStatus({code:bA.SpanStatusCode.ERROR})})})})}function kI0(A){let Q=Ri(),{name:B,parentSpan:Y}=A;return Oi(Y)(()=>{let C=ji(A.scope,A.forceTransaction),G=A.onlyIfParent&&!bA.trace.getSpan(C)?m5.suppressTracing(C):C,F=wi(A);return Q.startSpan(B,F,G)})}function W$Q(A,Q){let B=A?bA.trace.setSpan(bA.context.active(),A):bA.trace.deleteSpan(bA.context.active());return bA.context.with(B,()=>Q(sQ()))}function Ri(){return hA()?.tracer||bA.trace.getTracer("@sentry/opentelemetry",u0)}function wi(A){let{startTime:Q,attributes:B,kind:Y,op:J,links:C}=A,X=typeof Q==="number"?_I0(Q):Q;return{attributes:J?{[YQ]:J,...B}:B,kind:Y,links:C,startTime:X}}function _I0(A){return A<9999999999?A*1000:A}function ji(A,Q){let B=vI0(A),Y=bA.trace.getSpan(B);if(!Y)return B;if(!Q)return B;let J=bA.trace.deleteSpan(B),{spanId:C,traceId:X}=Y.spanContext(),G=IK(Y.spanContext()),F=$0(Y),W=c0(F),Z=Y$Q({dsc:W,sampled:G}),U={traceId:X,spanId:C,isRemote:!0,traceFlags:G?bA.TraceFlags.SAMPLED:bA.TraceFlags.NONE,traceState:Z};return bA.trace.setSpanContext(J,U)}function vI0(A){if(A){let Q=Mi(A);if(Q)return Q}return bA.context.active()}function yI0(A,Q){return wI0(bA.context.active(),A,Q)}function Z$Q(A,Q){let B=Mi(Q),Y=B&&bA.trace.getSpan(B),J=Y?t7(Y):PE(Q);return[Y?c0(Y):rX(A,Q),J]}function Oi(A){return A!==void 0?(Q)=>{return W$Q(A,Q)}:(Q)=>Q()}function hI0(A){let Q=m5.suppressTracing(bA.context.active());return bA.context.with(Q,A)}function $$Q(A){A.on("preprocessEvent",(Q)=>{let B=B$Q();if(!B||Q.type==="transaction")return;Q.contexts={trace:t7(B),...Q.contexts};let Y=$0(B);return Q.sdkProcessingMetadata={dynamicSamplingContext:c0(Y),...Q.sdkProcessingMetadata},Q})}function gI0({span:A}={}){let Q=l9.context.active();if(A){let{scope:X}=pC(A);Q=X&&Mi(X)||l9.trace.setSpan(l9.context.active(),A)}let{traceId:B,spanId:Y,sampled:J,dynamicSamplingContext:C}=X$Q(Q);return{"sentry-trace":o7(B,Y,J),baggage:a7(C)}}function tO(){function A(){let G=l9.context.active(),F=DK(G);if(F)return F;return{scope:jE(),isolationScope:R5()}}function Q(G){let F=l9.context.active();return l9.context.with(F,()=>{return G(C())})}function B(G,F){let W=l9.context.active();return l9.context.with(W.setValue(Ei,G),()=>{return F(G)})}function Y(G){let F=l9.context.active();return l9.context.with(F.setValue(Ui,!0),()=>{return G(X())})}function J(G,F){let W=l9.context.active();return l9.context.with(W.setValue(Ki,G),()=>{return F(X())})}function C(){return A().scope}function X(){return A().isolationScope}Nu({withScope:Q,withSetScope:B,withSetIsolationScope:J,withIsolationScope:Y,getCurrentScope:C,getIsolationScope:X,startSpan:TI0,startSpanManual:SI0,startInactiveSpan:kI0,getActiveSpan:B$Q,suppressTracing:hI0,getTraceData:gI0,continueTrace:yI0,withActiveSpan:W$Q})}function U$Q(A){class Q extends A{constructor(...B){super(...B);oO("SentryContextManager")}with(B,Y,J,...C){let X=DK(B),G=X?.scope||sQ(),F=X?.isolationScope||RQ(),W=B.getValue(Ui)===!0,Z=B.getValue(Ei),U=B.getValue(Ki),$=Z||G.clone(),E=U||(W?F.clone():F),V=tZQ(B,{scope:$,isolationScope:E}).deleteValue(Ui).deleteValue(Ei).deleteValue(Ki);return LI0($,V),super.with(V,Y,J,...C)}}return Q}function xI0(A){let Q=new Map;for(let B of A)fI0(Q,B);return Array.from(Q,function([B,Y]){return Y})}function E$Q(A){return A.attributes[Hi]!==!0?Di(A):void 0}function fI0(A,Q){let B=Q.spanContext().spanId,Y=E$Q(Q);if(!Y){Vi(A,{id:B,span:Q,children:[]});return}let J=bI0(A,Y),C=Vi(A,{id:B,span:Q,parentNode:J,children:[]});J.children.push(C)}function bI0(A,Q){let B=A.get(Q);if(B)return B;return Vi(A,{id:Q,children:[]})}function Vi(A,Q){let B=A.get(Q.id);if(B?.span)return B;if(B&&!B.span)return B.span=Q.span,B.parentNode=Q.parentNode,B;return A.set(Q.id,Q),Q}var K$Q={"1":"cancelled","2":"unknown_error","3":"invalid_argument","4":"deadline_exceeded","5":"not_found","6":"already_exists","7":"permission_denied","8":"resource_exhausted","9":"failed_precondition","10":"aborted","11":"out_of_range","12":"unimplemented","13":"internal_error","14":"unavailable","15":"data_loss","16":"unauthenticated"},mI0=(A)=>{return Object.values(K$Q).includes(A)};function V$Q(A){let Q=Ni(A)?A.attributes:{},B=VI0(A)?A.status:void 0;if(B){if(B.code===bA.SpanStatusCode.OK)return{code:s7};else if(B.code===bA.SpanStatusCode.ERROR){if(typeof B.message>"u"){let J=iZQ(Q);if(J)return J}if(B.message&&mI0(B.message))return{code:m9,message:B.message};else return{code:m9,message:"unknown_error"}}}let Y=iZQ(Q);if(Y)return Y;if(B?.code===bA.SpanStatusCode.UNSET)return{code:s7};else return{code:m9,message:"unknown_error"}}function iZQ(A){let Q=A[oQ.ATTR_HTTP_RESPONSE_STATUS_CODE]||A[oQ.SEMATTRS_HTTP_STATUS_CODE],B=A[oQ.SEMATTRS_RPC_GRPC_STATUS_CODE],Y=typeof Q==="number"?Q:typeof Q==="string"?parseInt(Q):void 0;if(typeof Y==="number")return kE(Y);if(typeof B==="string")return{code:m9,message:K$Q[B]||"unknown_error"};return}var nZQ=1000,uI0=300;class I$Q{constructor(A){this._finishedSpanBucketSize=A?.timeout||uI0,this._finishedSpanBuckets=Array(this._finishedSpanBucketSize).fill(void 0),this._lastCleanupTimestampInS=Math.floor(Date.now()/1000),this._spansToBucketEntry=new WeakMap}export(A){let Q=Math.floor(Date.now()/1000);if(this._lastCleanupTimestampInS!==Q){let J=0;if(this._finishedSpanBuckets.forEach((C,X)=>{if(C&&C.timestampInS<=Q-this._finishedSpanBucketSize)J+=C.spans.size,this._finishedSpanBuckets[X]=void 0}),J>0)F6&&e.log(`SpanExporter dropped ${J} spans because they were pending for more than ${this._finishedSpanBucketSize} seconds.`);this._lastCleanupTimestampInS=Q}let B=Q%this._finishedSpanBucketSize,Y=this._finishedSpanBuckets[B]||{timestampInS:Q,spans:new Set};if(this._finishedSpanBuckets[B]=Y,Y.spans.add(A),this._spansToBucketEntry.set(A,Y),!E$Q(A))this._clearTimeout(),this._flushTimeout=setTimeout(()=>{this.flush()},1)}flush(){this._clearTimeout();let A=[];this._finishedSpanBuckets.forEach((J)=>{if(J)A.push(...J.spans)});let Q=dI0(A),B=Q.size,Y=A.length-B;F6&&e.log(`SpanExporter exported ${B} spans, ${Y} spans are waiting for their parent spans to finish`),Q.forEach((J)=>{let C=this._spansToBucketEntry.get(J);if(C)C.spans.delete(J)})}clear(){this._finishedSpanBuckets=this._finishedSpanBuckets.fill(void 0),this._clearTimeout()}_clearTimeout(){if(this._flushTimeout)clearTimeout(this._flushTimeout),this._flushTimeout=void 0}}function dI0(A){let Q=xI0(A),B=new Set;return lI0(Q).forEach((J)=>{let C=J.span;B.add(C);let X=iI0(C),G=X.spans||[];J.children.forEach((W)=>{Ii(W,G,B)}),X.spans=G.length>nZQ?G.sort((W,Z)=>W.start_timestamp-Z.start_timestamp).slice(0,nZQ):G;let F=kZ(C.events);if(F)X.measurements=F;IN(X)}),B}function cI0(A){return!!A.span&&!A.parentNode}function lI0(A){return A.filter(cI0)}function pI0(A){let Q=A.attributes,B=Q[DQ],Y=Q[YQ],J=Q[A0];return{origin:B,op:Y,source:J}}function iI0(A){let{op:Q,description:B,data:Y,origin:J="manual",source:C}=H$Q(A),X=pC(A),G=A.attributes[j5],F={[A0]:C,[j5]:G,[YQ]:Q,[DQ]:J,...Y,...D$Q(A.attributes)},{links:W}=A,{traceId:Z,spanId:U}=A.spanContext(),$=Di(A),E=V$Q(A),K={parent_span_id:$,span_id:U,trace_id:Z,data:F,origin:J,op:Q,status:PZ(E),links:OZ(W)},I=F[oQ.ATTR_HTTP_RESPONSE_STATUS_CODE],V=typeof I==="number"?{response:{status_code:I}}:void 0;return{contexts:{trace:K,otel:{resource:A.resource.attributes},...V},spans:[],start_timestamp:u9(A.startTime),timestamp:u9(A.endTime),transaction:B,type:"transaction",sdkProcessingMetadata:{capturedSpanScope:X.scope,capturedSpanIsolationScope:X.isolationScope,sampleRate:G,dynamicSamplingContext:c0(A)},...C&&{transaction_info:{source:C}}}}function Ii(A,Q,B){let Y=A.span;if(Y)B.add(Y);if(!Y){A.children.forEach((L)=>{Ii(L,Q,B)});return}let C=Y.spanContext().spanId,X=Y.spanContext().traceId,G=Di(Y),{attributes:F,startTime:W,endTime:Z,links:U}=Y,{op:$,description:E,data:K,origin:I="manual"}=H$Q(Y),V={[DQ]:I,[YQ]:$,...D$Q(F),...K},H=V$Q(Y),D={span_id:C,trace_id:X,data:V,description:E,parent_span_id:G,start_timestamp:u9(W),timestamp:u9(Z)||void 0,status:PZ(H),op:$,origin:I,measurements:kZ(Y.events),links:OZ(U)};Q.push(D),A.children.forEach((L)=>{Ii(L,Q,B)})}function H$Q(A){let{op:Q,source:B,origin:Y}=pI0(A),{op:J,description:C,source:X,data:G}=A$Q(A),F=Q||J,W=B||X,Z={...G,...nI0(A)};return{op:F,description:C,source:W,origin:Y,data:Z}}function D$Q(A){let Q={...A};return delete Q[j5],delete Q[Hi],delete Q[lC],Q}function nI0(A){let Q=A.attributes,B={};if(A.kind!==bA.SpanKind.INTERNAL)B["otel.kind"]=bA.SpanKind[A.kind];let Y=Q[oQ.SEMATTRS_HTTP_STATUS_CODE];if(Y)B[oQ.ATTR_HTTP_RESPONSE_STATUS_CODE]=Y;let J=II0(A);if(J.url)B.url=J.url;if(J["http.query"])B["http.query"]=J["http.query"].slice(1);if(J["http.fragment"])B["http.fragment"]=J["http.fragment"].slice(1);return B}function sI0(A,Q){let B=bA.trace.getSpan(Q),Y=DK(Q);if(B&&!B.spanContext().isRemote)vE(B,A);if(B?.spanContext().isRemote)A.setAttribute(Hi,!0);if(Q===bA.ROOT_CONTEXT)Y={scope:jE(),isolationScope:R5()};if(Y)tD(A,Y.scope,Y.isolationScope);XN(A),hA()?.emit("spanStart",A)}function rI0(A){GN(A),hA()?.emit("spanEnd",A)}class Pi{constructor(A){oO("SentrySpanProcessor"),this._exporter=new I$Q(A)}async forceFlush(){this._exporter.flush()}async shutdown(){this._exporter.clear()}onStart(A,Q){sI0(A,Q)}onEnd(A){rI0(A),this._exporter.export(A)}}class Ti{constructor(A){this._client=A,oO("SentrySampler")}shouldSample(A,Q,B,Y,J,C){let X=this._client.getOptions(),G=tI0(A),F=G?.spanContext();if(!X9(X))return VK({decision:void 0,context:A,spanAttributes:J});let W=J[oQ.SEMATTRS_HTTP_METHOD]||J[oQ.ATTR_HTTP_REQUEST_METHOD];if(Y===bA.SpanKind.CLIENT&&W&&(!G||F?.isRemote))return VK({decision:void 0,context:A,spanAttributes:J});let Z=G?aI0(G,Q,B):void 0;if(!(!G||F?.isRemote))return VK({decision:Z?ZF.SamplingDecision.RECORD_AND_SAMPLED:ZF.SamplingDecision.NOT_RECORD,context:A,spanAttributes:J});let{description:$,data:E,op:K}=eZQ(B,J,Y),I={...E,...J};if(K)I[YQ]=K;let V={decision:!0};if(this._client.emit("beforeSampling",{spanAttributes:I,spanName:$,parentSampled:Z,parentContext:F},V),!V.decision)return VK({decision:void 0,context:A,spanAttributes:J});let{isolationScope:H}=DK(A)??{},D=F?.traceState?F.traceState.get(Li):void 0,L=D?r7(D):void 0,z=T8(L?.sample_rand)??Math.random(),[M,N,q]=FN(X,{name:$,attributes:I,normalizedRequest:H?.getScopeData().sdkProcessingMetadata.normalizedRequest,parentSampled:Z,parentSampleRate:T8(L?.sample_rate)},z),w=`${W}`.toUpperCase();if(w==="OPTIONS"||w==="HEAD")return F6&&e.log(`[Tracing] Not sampling span because HTTP method is '${w}' for ${B}`),VK({decision:ZF.SamplingDecision.NOT_RECORD,context:A,spanAttributes:J,sampleRand:z,downstreamTraceSampleRate:0});if(!M&&Z===void 0)F6&&e.log("[Tracing] Discarding root span because its trace was not chosen to be sampled."),this._client.recordDroppedEvent("sample_rate","transaction");return{...VK({decision:M?ZF.SamplingDecision.RECORD_AND_SAMPLED:ZF.SamplingDecision.NOT_RECORD,context:A,spanAttributes:J,sampleRand:z,downstreamTraceSampleRate:q?N:void 0}),attributes:{[j5]:q?N:void 0}}}toString(){return"SentrySampler"}}function aI0(A,Q,B){let Y=A.spanContext();if(bA.isSpanContextValid(Y)&&Y.traceId===Q){if(Y.isRemote){let C=IK(A.spanContext());return F6&&e.log(`[Tracing] Inheriting remote parent's sampled decision for ${B}: ${C}`),C}let J=IK(Y);return F6&&e.log(`[Tracing] Inheriting parent's sampled decision for ${B}: ${J}`),J}return}function VK({decision:A,context:Q,spanAttributes:B,sampleRand:Y,downstreamTraceSampleRate:J}){let C=oI0(Q,B);if(J!==void 0)C=C.set(NI0,`${J}`);if(Y!==void 0)C=C.set(DI0,`${Y}`);if(A==null)return{decision:ZF.SamplingDecision.NOT_RECORD,traceState:C};if(A===ZF.SamplingDecision.NOT_RECORD)return{decision:A,traceState:C.set(qi,"1")};return{decision:A,traceState:C}}function oI0(A,Q){let J=bA.trace.getSpan(A)?.spanContext()?.traceState||new m5.TraceState,C=Q[oQ.SEMATTRS_HTTP_URL]||Q[oQ.ATTR_URL_FULL];if(C&&typeof C==="string")J=J.set(rZQ,C);return J}function tI0(A){let Q=bA.trace.getSpan(A);return Q&&bA.isSpanContextValid(Q.spanContext())?Q:void 0}var fQ=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__;function IL(A,Q){if(!A)return Q;let B=wZ(A),Y=wZ(Q);if(!Y)return A;let J={...B};return Object.entries(Y).forEach(([C,X])=>{if(!J[C])J[C]=X}),Aj(J)}var Q1="@sentry/instrumentation-http",eI0=1048576;class ki extends HL.InstrumentationBase{constructor(A={}){super(Q1,QP.VERSION,A);this._propagationDecisionMap=new _8(100),this._ignoreOutgoingRequestsMap=new WeakMap}init(){let A=!1,Q=(G)=>{let F=G;this._patchServerEmitOnce(F.server)},B=(G)=>{let F=G;this._onOutgoingRequestFinish(F.request,F.response)},Y=(G)=>{let F=G;this._onOutgoingRequestFinish(F.request,void 0)},J=(G)=>{let F=G;this._onOutgoingRequestCreated(F.request)},C=(G)=>{if(A)return G;if(A=!0,eO("http.server.request.start",Q),eO("http.client.response.finish",B),eO("http.client.request.error",Y),this.getConfig().propagateTraceInOutgoingRequests)eO("http.client.request.created",J);return G},X=()=>{AP("http.server.request.start",Q),AP("http.client.response.finish",B),AP("http.client.request.error",Y),AP("http.client.request.created",J)};return[new HL.InstrumentationNodeModuleDefinition("http",["*"],C,X),new HL.InstrumentationNodeModuleDefinition("https",["*"],C,X)]}_onOutgoingRequestFinish(A,Q){fQ&&e.log(Q1,"Handling finished outgoing request");let B=this.getConfig().breadcrumbs,Y=typeof B>"u"?!0:B,J=this._ignoreOutgoingRequestsMap.get(A)??this._shouldIgnoreOutgoingRequest(A);if(this._ignoreOutgoingRequestsMap.set(A,J),Y&&!J)AH0(A,Q)}_onOutgoingRequestCreated(A){let Q=this._ignoreOutgoingRequestsMap.get(A)??this._shouldIgnoreOutgoingRequest(A);if(this._ignoreOutgoingRequestsMap.set(A,Q),Q)return;let B=$L(A),Y=hA()?.getOptions().tracePropagationTargets,J=VL(B,Y,this._propagationDecisionMap)?oX():void 0;if(!J)return;let{"sentry-trace":C,baggage:X}=J;if(C&&!A.getHeader("sentry-trace"))A.setHeader("sentry-trace",C),e.log(Q1,"Added sentry-trace header to outgoing request");if(X){let G=IL(A.getHeader("baggage"),X);if(G)A.setHeader("baggage",G)}}_patchServerEmitOnce(A){let Q=A.emit;if(Q.__sentry_patched__)return;fQ&&e.log(Q1,"Patching server.emit");let B=this,{ignoreIncomingRequestBody:Y,maxIncomingRequestBodySize:J="medium"}=B.getConfig(),C=new Proxy(Q,{apply(X,G,F){if(F[0]!=="request")return X.apply(G,F);fQ&&e.log(Q1,"Handling incoming request");let W=RQ().clone(),Z=F[1],U=F[2],$=mE(Z),E=Z.ip||Z.socket?.remoteAddress,K=Z.url||"/";if(!Y?.(K,Z)&&J!=="none")BH0(Z,W,J);W.setSDKProcessingMetadata({normalizedRequest:$,ipAddress:E});let I=(Z.method||"GET").toUpperCase(),V=dE(K),H=`${I} ${V}`;if(W.setTransactionName(H),B.getConfig().trackIncomingRequestsAsSessions!==!1)JH0({requestIsolationScope:W,response:U,sessionFlushingDelayMS:B.getConfig().sessionFlushingDelayMS??60000});return sX(W,()=>{if(sQ().getPropagationContext().propagationSpanId=O8(),!B.getConfig().extractIncomingTraceFromHeader)return X.apply(G,F);let D=NK.propagation.extract(NK.context.active(),$.headers);return NK.context.with(D,()=>{return X.apply(G,F)})})}});d0(C,"__sentry_patched__",!0),A.emit=C}_shouldIgnoreOutgoingRequest(A){if(QP.isTracingSuppressed(NK.context.active()))return!0;let Q=this.getConfig().ignoreOutgoingRequests;if(!Q)return!1;let B=YH0(A),Y=$L(A);return Q(Y,B)}}function AH0(A,Q){let B=QH0(A),Y=Q?.statusCode,J=RN(Y);G9({category:"http",data:{status_code:Y,...B},type:"http",level:J},{event:"response",request:A,response:Q})}function QH0(A){try{let Q=A.getHeader("host")||A.host,B=new URL(A.path,`${A.protocol}//${Q}`),Y=QF(B.toString()),J={url:BF(Y),"http.method":A.method||"GET"};if(Y.search)J["http.query"]=Y.search;if(Y.hash)J["http.fragment"]=Y.hash;return J}catch{return{}}}function BH0(A,Q,B){let Y=0,J=[];fQ&&e.log(Q1,"Patching request.on");let C=new WeakMap,X=B==="small"?1000:B==="medium"?1e4:eI0;try{A.on=new Proxy(A.on,{apply:(G,F,W)=>{let[Z,U,...$]=W;if(Z==="data"){fQ&&e.log(Q1,`Handling request.on("data") with maximum body size of ${X}b`);let E=new Proxy(U,{apply:(K,I,V)=>{try{let H=V[0],D=Buffer.from(H);if(Y{let[,Z]=W,U=C.get(Z);if(U){C.delete(Z);let $=W.slice();return $[1]=U,Reflect.apply(G,F,$)}return Reflect.apply(G,F,W)}}),A.on("end",()=>{try{let G=Buffer.concat(J).toString("utf-8");if(G){let W=Buffer.byteLength(G,"utf-8")>X?`${Buffer.from(G).subarray(0,X-3).toString("utf-8")}...`:G;Q.setSDKProcessingMetadata({normalizedRequest:{data:W}})}}catch(G){if(fQ)e.error(Q1,"Error building captured request body",G)}})}catch(G){if(fQ)e.error(Q1,"Error patching request to capture body",G)}}function YH0(A){return{method:A.method,protocol:A.protocol,host:A.host,hostname:A.host,path:A.path,headers:A.getHeaders()}}function JH0({requestIsolationScope:A,response:Q,sessionFlushingDelayMS:B}){A.setSDKProcessingMetadata({requestSession:{status:"ok"}}),Q.once("close",()=>{let Y=hA(),J=A.getScopeData().sdkProcessingMetadata.requestSession;if(Y&&J){fQ&&e.debug(`Recorded request session with status: ${J.status}`);let C=new Date;C.setSeconds(0,0);let X=C.toISOString(),G=Si.get(Y),F=G?.[X]||{exited:0,crashed:0,errored:0};if(F[{ok:"exited",crashed:"crashed",errored:"errored"}[J.status]]++,G)G[X]=F;else{fQ&&e.debug("Opened new request session aggregate.");let W={[X]:F};Si.set(Y,W);let Z=()=>{clearTimeout($),U(),Si.delete(Y);let E=Object.entries(W).map(([K,I])=>({started:K,exited:I.exited,errored:I.errored,crashed:I.crashed}));Y.sendSession({aggregates:E})},U=Y.on("flush",()=>{fQ&&e.debug("Sending request session aggregate due to client flush"),Z()}),$=setTimeout(()=>{fQ&&e.debug("Sending request session aggregate due to flushing schedule"),Z()},B).unref()}}})}var Si=new Map;var _i="Http",N$Q="@opentelemetry_sentry-patched/instrumentation-http",CH0=EQ(`${_i}.sentry`,(A)=>{return new ki(A)}),vi=EQ(_i,(A)=>{let Q=new q$Q.HttpInstrumentation(A);try{Q._diag=L$Q.diag.createComponentLogger({namespace:N$Q}),Q.instrumentationName=N$Q}catch{}return Q});function XH0(A,Q={}){return typeof A.spans==="boolean"?A.spans:!Q.skipOpenTelemetrySetup}var BP=wA((A={})=>{let Q=A.dropSpansForIncomingRequestStatusCodes??[404];return{name:_i,setupOnce(){let B=XH0(A,hA()?.getOptions());if(CH0({...A,extractIncomingTraceFromHeader:!B,propagateTraceInOutgoingRequests:!B}),B){let Y=WH0(A);vi(Y)}},processEvent(B){if(B.type==="transaction"){let Y=B.contexts?.trace?.data?.["http.response.status_code"];if(typeof Y==="number"&&Q.some((J)=>{if(typeof J==="number")return J===Y;let[C,X]=J;return Y>=C&&Y<=X}))return null}return B}}});function GH0(A){return"outputData"in A&&"outputSize"in A&&!("client"in A)&&!("statusCode"in A)}function FH0(A){return A.headers["next-router-prefetch"]==="1"}function WH0(A={}){return{...A.instrumentation?._experimentalConfig,disableIncomingRequestInstrumentation:A.disableIncomingRequestSpans,ignoreOutgoingRequestHook:(B)=>{let Y=$L(B);if(!Y)return!1;let J=A.ignoreOutgoingRequests;if(J?.(Y,B))return!0;return!1},ignoreIncomingRequestHook:(B)=>{let Y=B.url,J=B.method?.toUpperCase();if(J==="OPTIONS"||J==="HEAD")return!0;let C=A.ignoreIncomingRequests;if(Y&&C?.(Y,B))return!0;return!1},requireParentforOutgoingSpans:!1,requireParentforIncomingSpans:!1,requestHook:(B,Y)=>{if(p0(B,"auto.http.otel.http"),!GH0(Y)&&FH0(Y))B.setAttribute("sentry.http.prefetch",!0);A.instrumentation?.requestHook?.(B,Y)},responseHook:(B,Y)=>{A.instrumentation?.responseHook?.(B,Y)},applyCustomAttributesOnSpan:(B,Y,J)=>{A.instrumentation?.applyCustomAttributesOnSpan?.(B,Y,J)}}}var u$Q=qA(g$Q(),1);var b$Q=qA(yA(),1),CP=qA(MB(),1),m$Q=qA(NB(),1);import*as LK from"diagnostics_channel";var UF=Hu(process.versions.node),LL=UF.major,x$Q=UF.minor;var JP="sentry-trace",yi="baggage",f$Q=/baggage: (.*)\r\n/;class gi extends m$Q.InstrumentationBase{constructor(A={}){super("@sentry/instrumentation-node-fetch",CP.VERSION,A);this._channelSubs=[],this._propagationDecisionMap=new _8(100),this._ignoreOutgoingRequestsMap=new WeakMap}init(){return}disable(){super.disable(),this._channelSubs.forEach((A)=>A.unsubscribe()),this._channelSubs=[]}enable(){if(super.enable(),this._channelSubs=this._channelSubs||[],this._channelSubs.length>0)return;this._subscribeToChannel("undici:request:create",this._onRequestCreated.bind(this)),this._subscribeToChannel("undici:request:headers",this._onResponseHeaders.bind(this))}_onRequestCreated({request:A}){if(this.getConfig().enabled===!1)return;let Y=this._shouldIgnoreOutgoingRequest(A);if(this._ignoreOutgoingRequestsMap.set(A,Y),Y)return;let J=hi(A.origin,A.path),C=hA()?.getOptions().tracePropagationTargets,X=VL(J,C,this._propagationDecisionMap)?oX():void 0;if(!X)return;let{"sentry-trace":G,baggage:F}=X;if(Array.isArray(A.headers)){let W=A.headers;if(G&&!W.includes(JP))W.push(JP,G);let Z=W.findIndex((U)=>U===yi);if(F&&Z===-1)W.push(yi,F);else if(F){let U=W[Z+1],$=IL(U,F);if($)W[Z+1]=$}}else{let W=A.headers;if(G&&!W.includes(`${JP}:`))A.headers+=`${JP}: ${G}\r +`;let Z=A.headers.match(f$Q)?.[1];if(F&&!Z)A.headers+=`${yi}: ${F}\r +`;else if(F){let U=IL(Z,F);if(U)A.headers=A.headers.replace(f$Q,`baggage: ${U}\r +`)}}}_onResponseHeaders({request:A,response:Q}){let B=this.getConfig();if(B.enabled===!1)return;let J=B.breadcrumbs,C=typeof J>"u"?!0:J,X=this._ignoreOutgoingRequestsMap.get(A);if(C&&!X)EH0(A,Q)}_subscribeToChannel(A,Q){let B=LL>18||LL===18&&x$Q>=19,Y;if(B)LK.subscribe?.(A,Q),Y=()=>LK.unsubscribe?.(A,Q);else{let J=LK.channel(A);J.subscribe(Q),Y=()=>J.unsubscribe(Q)}this._channelSubs.push({name:A,unsubscribe:Y})}_shouldIgnoreOutgoingRequest(A){if(CP.isTracingSuppressed(b$Q.context.active()))return!0;let Q=hi(A.origin,A.path),B=this.getConfig().ignoreOutgoingRequests;if(typeof B!=="function"||!Q)return!1;return B(Q)}}function EH0(A,Q){let B=KH0(A),Y=Q.statusCode,J=RN(Y);G9({category:"http",data:{status_code:Y,...B},type:"http",level:J},{event:"response",request:A,response:Q})}function KH0(A){try{let Q=hi(A.origin,A.path),B=QF(Q),Y={url:BF(B),"http.method":A.method||"GET"};if(B.search)Y["http.query"]=B.search;if(B.hash)Y["http.fragment"]=B.hash;return Y}catch{return{}}}function hi(A,Q="/"){try{return new URL(Q,A).toString()}catch{let B=`${A}`;if(B.endsWith("/")&&Q.startsWith("/"))return`${B}${Q.slice(1)}`;if(!B.endsWith("/")&&!Q.startsWith("/"))return`${B}/${Q.slice(1)}`;return`${B}${Q}`}}var d$Q="NodeFetch",VH0=EQ(d$Q,u$Q.UndiciInstrumentation,(A)=>{return LH0(A)}),IH0=EQ(`${d$Q}.sentry`,gi,(A)=>{return A}),HH0=(A={})=>{return{name:"NodeFetch",setupOnce(){if(NH0(A,hA()?.getOptions()))VH0(A);IH0(A)}}},XP=wA(HH0);function DH0(A,Q="/"){let B=`${A}`;if(B.endsWith("/")&&Q.startsWith("/"))return`${B}${Q.slice(1)}`;if(!B.endsWith("/")&&!Q.startsWith("/"))return`${B}/${Q.slice(1)}`;return`${B}${Q}`}function NH0(A,Q={}){return typeof A.spans==="boolean"?A.spans:!Q.skipOpenTelemetrySetup}function LH0(A={}){return{requireParentforSpans:!1,ignoreRequestHook:(B)=>{let Y=DH0(B.origin,B.path),J=A.ignoreOutgoingRequests;return!!(J&&Y&&J(Y))},startSpanHook:()=>{return{[DQ]:"auto.http.otel.node_fetch"}}}}var W4Q=qA(G4Q(),1);var F4Q="FileSystem",Z4Q=wA((A={})=>{return{name:F4Q,setupOnce(){EQ(F4Q,()=>new W4Q.FsInstrumentation({requireParentSpan:!0,endHook(Q,{args:B,span:Y,error:J}){if(Y.updateName(`fs.${Q}`),Y.setAttributes({[YQ]:"file",[DQ]:"auto.file.fs"}),A.recordErrorMessagesAsSpanAttributes){if(typeof B[0]==="string"&&vH0.includes(Q))Y.setAttribute("path_argument",B[0]);else if(typeof B[0]==="string"&&typeof B[1]==="string"&&_H0.includes(Q))Y.setAttribute("target_argument",B[0]),Y.setAttribute("path_argument",B[1]);else if(typeof B[0]==="string"&&kH0.includes(Q))Y.setAttribute("prefix_argument",B[0]);else if(typeof B[0]==="string"&&typeof B[1]==="string"&&SH0.includes(Q))Y.setAttribute("existing_path_argument",B[0]),Y.setAttribute("new_path_argument",B[1]);else if(typeof B[0]==="string"&&typeof B[1]==="string"&&TH0.includes(Q))Y.setAttribute("src_argument",B[0]),Y.setAttribute("dest_argument",B[1]);else if(typeof B[0]==="string"&&typeof B[1]==="string"&&PH0.includes(Q))Y.setAttribute("old_path_argument",B[0]),Y.setAttribute("new_path_argument",B[1])}if(J&&A.recordErrorMessagesAsSpanAttributes)Y.setAttribute("fs_error",J.message)}}))()}}}),PH0=["rename","renameSync"],TH0=["copyFile","cp","copyFileSync","cpSync"],SH0=["link","linkSync"],kH0=["mkdtemp","mkdtempSync"],_H0=["symlink","symlinkSync"],vH0=["access","appendFile","chmod","chown","exists","mkdir","lchown","lstat","lutimes","open","opendir","readdir","readFile","readlink","realpath","realpath.native","rm","rmdir","stat","truncate","unlink","utimes","writeFile","accessSync","appendFileSync","chmodSync","chownSync","existsSync","lchownSync","lstatSync","lutimesSync","opendirSync","mkdirSync","openSync","readdirSync","readFileSync","readlinkSync","realpathSync","realpathSync.native","rmdirSync","rmSync","statSync","truncateSync","unlinkSync","utimesSync","writeFileSync"];import{execFile as yH0}from"node:child_process";import{readFile as hH0,readdir as gH0}from"node:fs";import*as pY from"node:os";import{join as xH0}from"node:path";import{promisify as U4Q}from"node:util";var fH0=U4Q(hH0),bH0=U4Q(gH0),mH0="Context",uH0=(A={})=>{let Q,B={app:!0,os:!0,device:!0,culture:!0,cloudResource:!0,...A};async function Y(C){if(Q===void 0)Q=J();let X=dH0(await Q);return C.contexts={...C.contexts,app:{...X.app,...C.contexts?.app},os:{...X.os,...C.contexts?.os},device:{...X.device,...C.contexts?.device},culture:{...X.culture,...C.contexts?.culture},cloud_resource:{...X.cloud_resource,...C.contexts?.cloud_resource}},C}async function J(){let C={};if(B.os)C.os=await cH0();if(B.app)C.app=pH0();if(B.device)C.device=iH0(B.device);if(B.culture){let X=lH0();if(X)C.culture=X}if(B.cloudResource)C.cloud_resource=tH0();return C}return{name:mH0,processEvent(C){return Y(C)}}},WP=wA(uH0);function dH0(A){if(A.app?.app_memory)A.app.app_memory=process.memoryUsage().rss;if(A.app?.free_memory&&typeof process.availableMemory==="function"){let Q=process.availableMemory?.();if(Q!=null)A.app.free_memory=Q}if(A.device?.free_memory)A.device.free_memory=pY.freemem();return A}async function cH0(){let A=pY.platform();switch(A){case"darwin":return aH0();case"linux":return oH0();default:return{name:nH0[A]||A,version:pY.release()}}}function lH0(){try{if(typeof process.versions.icu!=="string")return;let A=new Date(900000000);if(new Intl.DateTimeFormat("es",{month:"long"}).format(A)==="enero"){let B=Intl.DateTimeFormat().resolvedOptions();return{locale:B.locale,timezone:B.timeZone}}}catch(A){}return}function pH0(){let A=process.memoryUsage().rss,B={app_start_time:new Date(Date.now()-process.uptime()*1000).toISOString(),app_memory:A};if(typeof process.availableMemory==="function"){let Y=process.availableMemory?.();if(Y!=null)B.free_memory=Y}return B}function iH0(A){let Q={},B;try{B=pY.uptime()}catch(Y){}if(typeof B==="number")Q.boot_time=new Date(Date.now()-B*1000).toISOString();if(Q.arch=pY.arch(),A===!0||A.memory)Q.memory_size=pY.totalmem(),Q.free_memory=pY.freemem();if(A===!0||A.cpu){let Y=pY.cpus(),J=Y?.[0];if(J)Q.processor_count=Y.length,Q.cpu_description=J.model,Q.processor_frequency=J.speed}return Q}var nH0={aix:"IBM AIX",freebsd:"FreeBSD",openbsd:"OpenBSD",sunos:"SunOS",win32:"Windows"},sH0=[{name:"fedora-release",distros:["Fedora"]},{name:"redhat-release",distros:["Red Hat Linux","Centos"]},{name:"redhat_version",distros:["Red Hat Linux"]},{name:"SuSE-release",distros:["SUSE Linux"]},{name:"lsb-release",distros:["Ubuntu Linux","Arch Linux"]},{name:"debian_version",distros:["Debian"]},{name:"debian_release",distros:["Debian"]},{name:"arch-release",distros:["Arch Linux"]},{name:"gentoo-release",distros:["Gentoo Linux"]},{name:"novell-release",distros:["SUSE Linux"]},{name:"alpine-release",distros:["Alpine Linux"]}],rH0={alpine:(A)=>A,arch:(A)=>W6(/distrib_release=(.*)/,A),centos:(A)=>W6(/release ([^ ]+)/,A),debian:(A)=>A,fedora:(A)=>W6(/release (..)/,A),mint:(A)=>W6(/distrib_release=(.*)/,A),red:(A)=>W6(/release ([^ ]+)/,A),suse:(A)=>W6(/VERSION = (.*)\n/,A),ubuntu:(A)=>W6(/distrib_release=(.*)/,A)};function W6(A,Q){let B=A.exec(Q);return B?B[1]:void 0}async function aH0(){let A={kernel_version:pY.release(),name:"Mac OS X",version:`10.${Number(pY.release().split(".")[0])-4}`};try{let Q=await new Promise((B,Y)=>{yH0("/usr/bin/sw_vers",(J,C)=>{if(J){Y(J);return}B(C)})});A.name=W6(/^ProductName:\s+(.*)$/m,Q),A.version=W6(/^ProductVersion:\s+(.*)$/m,Q),A.build=W6(/^BuildVersion:\s+(.*)$/m,Q)}catch(Q){}return A}function $4Q(A){return A.split(" ")[0].toLowerCase()}async function oH0(){let A={kernel_version:pY.release(),name:"Linux"};try{let Q=await bH0("/etc"),B=sH0.find((G)=>Q.includes(G.name));if(!B)return A;let Y=xH0("/etc",B.name),J=(await fH0(Y,{encoding:"utf-8"})).toLowerCase(),{distros:C}=B;A.name=C.find((G)=>J.indexOf($4Q(G))>=0)||C[0];let X=$4Q(A.name);A.version=rH0[X]?.(J)}catch(Q){}return A}function tH0(){if(process.env.VERCEL)return{"cloud.provider":"vercel","cloud.region":process.env.VERCEL_REGION};else if(process.env.AWS_REGION)return{"cloud.provider":"aws","cloud.region":process.env.AWS_REGION,"cloud.platform":process.env.AWS_EXECUTION_ENV};else if(process.env.GCP_PROJECT)return{"cloud.provider":"gcp"};else if(process.env.ALIYUN_REGION_ID)return{"cloud.provider":"alibaba_cloud","cloud.region":process.env.ALIYUN_REGION_ID};else if(process.env.WEBSITE_SITE_NAME&&process.env.REGION_NAME)return{"cloud.provider":"azure","cloud.region":process.env.REGION_NAME};else if(process.env.IBM_CLOUD_REGION)return{"cloud.provider":"ibm_cloud","cloud.region":process.env.IBM_CLOUD_REGION};else if(process.env.TENCENTCLOUD_REGION)return{"cloud.provider":"tencent_cloud","cloud.region":process.env.TENCENTCLOUD_REGION,"cloud.account.id":process.env.TENCENTCLOUD_APPID,"cloud.availability_zone":process.env.TENCENTCLOUD_ZONE};else if(process.env.NETLIFY)return{"cloud.provider":"netlify"};else if(process.env.FLY_REGION)return{"cloud.provider":"fly.io","cloud.region":process.env.FLY_REGION};else if(process.env.DYNO)return{"cloud.provider":"heroku"};else return}import{createReadStream as eH0}from"node:fs";import{createInterface as AD0}from"node:readline";var xi=new _8(10),V4Q=new _8(20),QD0=7,BD0="ContextLines",YD0=1000,JD0=1e4;function CD0(A,Q,B){let Y=A.get(Q);if(Y===void 0)return A.set(Q,B),B;return Y}function XD0(A){if(A.startsWith("node:"))return!0;if(A.endsWith(".min.js"))return!0;if(A.endsWith(".min.cjs"))return!0;if(A.endsWith(".min.mjs"))return!0;if(A.startsWith("data:"))return!0;return!1}function GD0(A){if(A.lineno!==void 0&&A.lineno>JD0)return!0;if(A.colno!==void 0&&A.colno>YD0)return!0;return!1}function FD0(A,Q){let B=xi.get(A);if(B===void 0)return!1;for(let Y=Q[0];Y<=Q[1];Y++)if(B[Y]===void 0)return!1;return!0}function WD0(A,Q){if(!A.length)return[];let B=0,Y=A[0];if(typeof Y!=="number")return[];let J=K4Q(Y,Q),C=[];while(!0){if(B===A.length-1){C.push(J);break}let X=A[B+1];if(typeof X!=="number")break;if(X<=J[1])J[1]=X+Q;else C.push(J),J=K4Q(X,Q);B++}return C}function ZD0(A,Q,B){return new Promise((Y,J)=>{let C=eH0(A),X=AD0({input:C});function G(){C.destroy(),Y()}let F=0,W=0,Z=Q[W];if(Z===void 0){G();return}let U=Z[0],$=Z[1];function E(K){V4Q.set(A,1),fQ&&e.error(`Failed to read file: ${A}. Error: ${K}`),X.close(),X.removeAllListeners(),G()}C.on("error",E),X.on("error",E),X.on("close",G),X.on("line",(K)=>{if(F++,F=$){if(W===Q.length-1){X.close(),X.removeAllListeners();return}W++;let I=Q[W];if(I===void 0){X.close(),X.removeAllListeners();return}U=I[0],$=I[1]}})})}async function $D0(A,Q){let B={};if(Q>0&&A.exception?.values)for(let C of A.exception.values){if(!C.stacktrace?.frames?.length)continue;for(let X=C.stacktrace.frames.length-1;X>=0;X--){let G=C.stacktrace.frames[X],F=G?.filename;if(!G||typeof F!=="string"||typeof G.lineno!=="number"||XD0(F)||GD0(G))continue;if(!B[F])B[F]=[];B[F].push(G.lineno)}}let Y=Object.keys(B);if(Y.length==0)return A;let J=[];for(let C of Y){if(V4Q.get(C))continue;let X=B[C];if(!X)continue;X.sort((W,Z)=>W-Z);let G=WD0(X,Q);if(G.every((W)=>FD0(C,W)))continue;let F=CD0(xi,C,{});J.push(ZD0(C,G,F))}if(await Promise.all(J).catch(()=>{fQ&&e.log("Failed to read one or more source files and resolve context lines")}),Q>0&&A.exception?.values){for(let C of A.exception.values)if(C.stacktrace?.frames&&C.stacktrace.frames.length>0)UD0(C.stacktrace.frames,Q,xi)}return A}function UD0(A,Q,B){for(let Y of A)if(Y.filename&&Y.context_line===void 0&&typeof Y.lineno==="number"){let J=B.get(Y.filename);if(J===void 0)continue;ED0(Y.lineno,Y,Q,J)}}function E4Q(A){delete A.pre_context,delete A.context_line,delete A.post_context}function ED0(A,Q,B,Y){if(Q.lineno===void 0||Y===void 0){fQ&&e.error("Cannot resolve context for frame with no lineno or file contents");return}Q.pre_context=[];for(let C=I4Q(A,B);C{let Q=A.frameContextLines!==void 0?A.frameContextLines:QD0;return{name:BD0,processEvent(B){return $D0(B,Q)}}},ZP=wA(KD0);import{Worker as VD0}from"node:worker_threads";var $P;async function qK(){if($P===void 0)try{$P=!!(await import("node:inspector")).url()}catch(A){$P=!1}return $P}var qL="__SENTRY_ERROR_LOCAL_VARIABLES__";function N4Q(A,Q,B){let Y=0,J=5,C=0;return setInterval(()=>{if(C===0){if(Y>A){if(J*=2,B(J),J>86400)J=86400;C=J}}else if(C-=1,C===0)Q();Y=0},1000).unref(),()=>{Y+=1}}function D4Q(A){return A!==void 0&&(A.length===0||A==="?"||A==="")}function UP(A,Q){return A===Q||D4Q(A)&&D4Q(Q)}var ID0="LyohIEBzZW50cnkvbm9kZSA5LjIyLjAgKGNjYWJmYzIpIHwgaHR0cHM6Ly9naXRodWIuY29tL2dldHNlbnRyeS9zZW50cnktamF2YXNjcmlwdCAqLwppbXBvcnR7U2Vzc2lvbiBhcyBlfWZyb20ibm9kZTppbnNwZWN0b3IvcHJvbWlzZXMiO2ltcG9ydHt3b3JrZXJEYXRhIGFzIHR9ZnJvbSJub2RlOndvcmtlcl90aHJlYWRzIjtjb25zdCBuPSJ1bmRlZmluZWQiPT10eXBlb2YgX19TRU5UUllfREVCVUdfX3x8X19TRU5UUllfREVCVUdfXyxvPSI5LjIyLjAiLGk9Z2xvYmFsVGhpcztjb25zdCBhPVsiZGVidWciLCJpbmZvIiwid2FybiIsImVycm9yIiwibG9nIiwiYXNzZXJ0IiwidHJhY2UiXSxzPXt9O2Z1bmN0aW9uIGMoZSl7aWYoISgiY29uc29sZSJpbiBpKSlyZXR1cm4gZSgpO2NvbnN0IHQ9aS5jb25zb2xlLG49e30sbz1PYmplY3Qua2V5cyhzKTtvLmZvckVhY2goKGU9Pntjb25zdCBvPXNbZV07bltlXT10W2VdLHRbZV09b30pKTt0cnl7cmV0dXJuIGUoKX1maW5hbGx5e28uZm9yRWFjaCgoZT0+e3RbZV09bltlXX0pKX19IWZ1bmN0aW9uKGUsdCxuPWkpe2NvbnN0IGE9bi5fX1NFTlRSWV9fPW4uX19TRU5UUllfX3x8e30scz1hW29dPWFbb118fHt9O3NbZV18fChzW2VdPXQoKSl9KCJsb2dnZXIiLChmdW5jdGlvbigpe2xldCBlPSExO2NvbnN0IHQ9e2VuYWJsZTooKT0+e2U9ITB9LGRpc2FibGU6KCk9PntlPSExfSxpc0VuYWJsZWQ6KCk9PmV9O3JldHVybiBuP2EuZm9yRWFjaCgobj0+e3Rbbl09KC4uLnQpPT57ZSYmYygoKCk9PntpLmNvbnNvbGVbbl0oYFNlbnRyeSBMb2dnZXIgWyR7bn1dOmAsLi4udCl9KSl9fSkpOmEuZm9yRWFjaCgoZT0+e3RbZV09KCk9Pnt9fSkpLHR9KSk7Y29uc3Qgcj0iX19TRU5UUllfRVJST1JfTE9DQUxfVkFSSUFCTEVTX18iO2NvbnN0IHU9dDtmdW5jdGlvbiBsKC4uLmUpe3UuZGVidWcmJmMoKCgpPT5jb25zb2xlLmxvZygiW0xvY2FsVmFyaWFibGVzIFdvcmtlcl0iLC4uLmUpKSl9YXN5bmMgZnVuY3Rpb24gZihlLHQsbixvKXtjb25zdCBpPWF3YWl0IGUucG9zdCgiUnVudGltZS5nZXRQcm9wZXJ0aWVzIix7b2JqZWN0SWQ6dCxvd25Qcm9wZXJ0aWVzOiEwfSk7b1tuXT1pLnJlc3VsdC5maWx0ZXIoKGU9PiJsZW5ndGgiIT09ZS5uYW1lJiYhaXNOYU4ocGFyc2VJbnQoZS5uYW1lLDEwKSkpKS5zb3J0KCgoZSx0KT0+cGFyc2VJbnQoZS5uYW1lLDEwKS1wYXJzZUludCh0Lm5hbWUsMTApKSkubWFwKChlPT5lLnZhbHVlPy52YWx1ZSkpfWFzeW5jIGZ1bmN0aW9uIGcoZSx0LG4sbyl7Y29uc3QgaT1hd2FpdCBlLnBvc3QoIlJ1bnRpbWUuZ2V0UHJvcGVydGllcyIse29iamVjdElkOnQsb3duUHJvcGVydGllczohMH0pO29bbl09aS5yZXN1bHQubWFwKChlPT5bZS5uYW1lLGUudmFsdWU/LnZhbHVlXSkpLnJlZHVjZSgoKGUsW3Qsbl0pPT4oZVt0XT1uLGUpKSx7fSl9ZnVuY3Rpb24gZChlLHQpe2UudmFsdWUmJigidmFsdWUiaW4gZS52YWx1ZT92b2lkIDA9PT1lLnZhbHVlLnZhbHVlfHxudWxsPT09ZS52YWx1ZS52YWx1ZT90W2UubmFtZV09YDwke2UudmFsdWUudmFsdWV9PmA6dFtlLm5hbWVdPWUudmFsdWUudmFsdWU6ImRlc2NyaXB0aW9uImluIGUudmFsdWUmJiJmdW5jdGlvbiIhPT1lLnZhbHVlLnR5cGU/dFtlLm5hbWVdPWA8JHtlLnZhbHVlLmRlc2NyaXB0aW9ufT5gOiJ1bmRlZmluZWQiPT09ZS52YWx1ZS50eXBlJiYodFtlLm5hbWVdPSI8dW5kZWZpbmVkPiIpKX1hc3luYyBmdW5jdGlvbiBiKGUsdCl7Y29uc3Qgbj1hd2FpdCBlLnBvc3QoIlJ1bnRpbWUuZ2V0UHJvcGVydGllcyIse29iamVjdElkOnQsb3duUHJvcGVydGllczohMH0pLG89e307Zm9yKGNvbnN0IHQgb2Ygbi5yZXN1bHQpaWYodC52YWx1ZT8ub2JqZWN0SWQmJiJBcnJheSI9PT10LnZhbHVlLmNsYXNzTmFtZSl7Y29uc3Qgbj10LnZhbHVlLm9iamVjdElkO2F3YWl0IGYoZSxuLHQubmFtZSxvKX1lbHNlIGlmKHQudmFsdWU/Lm9iamVjdElkJiYiT2JqZWN0Ij09PXQudmFsdWUuY2xhc3NOYW1lKXtjb25zdCBuPXQudmFsdWUub2JqZWN0SWQ7YXdhaXQgZyhlLG4sdC5uYW1lLG8pfWVsc2UgdC52YWx1ZSYmZCh0LG8pO3JldHVybiBvfWxldCBwOyhhc3luYyBmdW5jdGlvbigpe2NvbnN0IHQ9bmV3IGU7dC5jb25uZWN0VG9NYWluVGhyZWFkKCksbCgiQ29ubmVjdGVkIHRvIG1haW4gdGhyZWFkIik7bGV0IG49ITE7dC5vbigiRGVidWdnZXIucmVzdW1lZCIsKCgpPT57bj0hMX0pKSx0Lm9uKCJEZWJ1Z2dlci5wYXVzZWQiLChlPT57bj0hMCxhc3luYyBmdW5jdGlvbihlLHtyZWFzb246dCxkYXRhOntvYmplY3RJZDpufSxjYWxsRnJhbWVzOm99KXtpZigiZXhjZXB0aW9uIiE9PXQmJiJwcm9taXNlUmVqZWN0aW9uIiE9PXQpcmV0dXJuO2lmKHA/LigpLG51bGw9PW4pcmV0dXJuO2NvbnN0IGk9W107Zm9yKGxldCB0PTA7dDxvLmxlbmd0aDt0Kyspe2NvbnN0e3Njb3BlQ2hhaW46bixmdW5jdGlvbk5hbWU6YSx0aGlzOnN9PW9bdF0sYz1uLmZpbmQoKGU9PiJsb2NhbCI9PT1lLnR5cGUpKSxyPSJnbG9iYWwiIT09cy5jbGFzc05hbWUmJnMuY2xhc3NOYW1lP2Ake3MuY2xhc3NOYW1lfS4ke2F9YDphO2lmKHZvaWQgMD09PWM/Lm9iamVjdC5vYmplY3RJZClpW3RdPXtmdW5jdGlvbjpyfTtlbHNle2NvbnN0IG49YXdhaXQgYihlLGMub2JqZWN0Lm9iamVjdElkKTtpW3RdPXtmdW5jdGlvbjpyLHZhcnM6bn19fWF3YWl0IGUucG9zdCgiUnVudGltZS5jYWxsRnVuY3Rpb25PbiIse2Z1bmN0aW9uRGVjbGFyYXRpb246YGZ1bmN0aW9uKCkgeyB0aGlzLiR7cn0gPSB0aGlzLiR7cn0gfHwgJHtKU09OLnN0cmluZ2lmeShpKX07IH1gLHNpbGVudDohMCxvYmplY3RJZDpufSksYXdhaXQgZS5wb3N0KCJSdW50aW1lLnJlbGVhc2VPYmplY3QiLHtvYmplY3RJZDpufSl9KHQsZS5wYXJhbXMpLnRoZW4oKGFzeW5jKCk9PntuJiZhd2FpdCB0LnBvc3QoIkRlYnVnZ2VyLnJlc3VtZSIpfSksKGFzeW5jIGU9PntuJiZhd2FpdCB0LnBvc3QoIkRlYnVnZ2VyLnJlc3VtZSIpfSkpfSkpLGF3YWl0IHQucG9zdCgiRGVidWdnZXIuZW5hYmxlIik7Y29uc3Qgbz0hMSE9PXUuY2FwdHVyZUFsbEV4Y2VwdGlvbnM7aWYoYXdhaXQgdC5wb3N0KCJEZWJ1Z2dlci5zZXRQYXVzZU9uRXhjZXB0aW9ucyIse3N0YXRlOm8/ImFsbCI6InVuY2F1Z2h0In0pLG8pe2NvbnN0IGU9dS5tYXhFeGNlcHRpb25zUGVyU2Vjb25kfHw1MDtwPWZ1bmN0aW9uKGUsdCxuKXtsZXQgbz0wLGk9NSxhPTA7cmV0dXJuIHNldEludGVydmFsKCgoKT0+ezA9PT1hP28+ZSYmKGkqPTIsbihpKSxpPjg2NDAwJiYoaT04NjQwMCksYT1pKTooYS09MSwwPT09YSYmdCgpKSxvPTB9KSwxZTMpLnVucmVmKCksKCk9PntvKz0xfX0oZSwoYXN5bmMoKT0+e2woIlJhdGUtbGltaXQgbGlmdGVkLiIpLGF3YWl0IHQucG9zdCgiRGVidWdnZXIuc2V0UGF1c2VPbkV4Y2VwdGlvbnMiLHtzdGF0ZToiYWxsIn0pfSksKGFzeW5jIGU9PntsKGBSYXRlLWxpbWl0IGV4Y2VlZGVkLiBEaXNhYmxpbmcgY2FwdHVyaW5nIG9mIGNhdWdodCBleGNlcHRpb25zIGZvciAke2V9IHNlY29uZHMuYCksYXdhaXQgdC5wb3N0KCJEZWJ1Z2dlci5zZXRQYXVzZU9uRXhjZXB0aW9ucyIse3N0YXRlOiJ1bmNhdWdodCJ9KX0pKX19KSgpLmNhdGNoKChlPT57bCgiRmFpbGVkIHRvIHN0YXJ0IGRlYnVnZ2VyIixlKX0pKSxzZXRJbnRlcnZhbCgoKCk9Pnt9KSwxZTQpOw==";function L4Q(...A){e.log("[LocalVariables]",...A)}var q4Q=wA((A={})=>{function Q(C,X){let G=(C.stacktrace?.frames||[]).filter((F)=>F.function!=="new Promise");for(let F=0;F{X.terminate()}),X.once("error",(G)=>{L4Q("Worker error",G)}),X.once("exit",(G)=>{L4Q("Worker exit",G)}),X.unref()}return{name:"LocalVariablesAsync",async setup(C){if(!C.getOptions().includeLocalVariables)return;if(await qK()){e.warn("Local variables capture has been disabled because the debugger was already enabled");return}let G={...A,debug:e.isEnabled()};Y().then(()=>{try{J(G)}catch(F){e.error("Failed to start worker",F)}},(F)=>{e.error("Failed to start inspector",F)})},processEvent(C,X){return B(C,X)}}});function M4Q(A){if(A===void 0)return;return A.slice(-10).reduce((Q,B)=>`${Q},${B.function},${B.lineno},${B.colno}`,"")}function HD0(A,Q){if(Q===void 0)return;return M4Q(A(Q,1))}function z4Q(A){let Q=[],B=!1;function Y(X){if(Q=[],B)return;B=!0,A(X)}Q.push(Y);function J(X){Q.push(X)}function C(X){let G=Q.pop()||Y;try{G(X)}catch(F){Y(X)}}return{add:J,next:C}}class fi{constructor(A){this._session=A}static async create(A){if(A)return A;let Q=await import("node:inspector");return new fi(new Q.Session)}configureAndConnect(A,Q){this._session.connect(),this._session.on("Debugger.paused",(B)=>{A(B,()=>{this._session.post("Debugger.resume")})}),this._session.post("Debugger.enable"),this._session.post("Debugger.setPauseOnExceptions",{state:Q?"all":"uncaught"})}setPauseOnExceptions(A){this._session.post("Debugger.setPauseOnExceptions",{state:A?"all":"uncaught"})}getLocalVariables(A,Q){this._getProperties(A,(B)=>{let{add:Y,next:J}=z4Q(Q);for(let C of B)if(C.value?.objectId&&C.value.className==="Array"){let X=C.value.objectId;Y((G)=>this._unrollArray(X,C.name,G,J))}else if(C.value?.objectId&&C.value.className==="Object"){let X=C.value.objectId;Y((G)=>this._unrollObject(X,C.name,G,J))}else if(C.value)Y((X)=>this._unrollOther(C,X,J));J({})})}_getProperties(A,Q){this._session.post("Runtime.getProperties",{objectId:A,ownProperties:!0},(B,Y)=>{if(B)Q([]);else Q(Y.result)})}_unrollArray(A,Q,B,Y){this._getProperties(A,(J)=>{B[Q]=J.filter((C)=>C.name!=="length"&&!isNaN(parseInt(C.name,10))).sort((C,X)=>parseInt(C.name,10)-parseInt(X.name,10)).map((C)=>C.value?.value),Y(B)})}_unrollObject(A,Q,B,Y){this._getProperties(A,(J)=>{B[Q]=J.map((C)=>[C.name,C.value?.value]).reduce((C,[X,G])=>{return C[X]=G,C},{}),Y(B)})}_unrollOther(A,Q,B){if(A.value){if("value"in A.value)if(A.value.value===void 0||A.value.value===null)Q[A.name]=`<${A.value.value}>`;else Q[A.name]=A.value.value;else if("description"in A.value&&A.value.type!=="function")Q[A.name]=`<${A.value.description}>`;else if(A.value.type==="undefined")Q[A.name]=""}B(Q)}}var DD0="LocalVariables",ND0=(A={},Q)=>{let B=new _8(20),Y,J=!1;function C(G){let F=M4Q(G.stacktrace?.frames);if(F===void 0)return;let W=B.remove(F);if(W===void 0)return;let Z=(G.stacktrace?.frames||[]).filter((U)=>U.function!=="new Promise");for(let U=0;U= v18.");return}if(await qK()){e.warn("Local variables capture has been disabled because the debugger was already enabled");return}fi.create(Q).then((Z)=>{function U(E,{params:{reason:K,data:I,callFrames:V}},H){if(K!=="exception"&&K!=="promiseRejection"){H();return}Y?.();let D=HD0(E,I.description);if(D==null){H();return}let{add:L,next:z}=z4Q((M)=>{B.set(D,M),H()});for(let M=0;MO.type==="local"),_=w.className==="global"||!w.className?q:`${w.className}.${q}`;if(P?.object.objectId===void 0)L((O)=>{O[M]={function:_},z(O)});else{let O=P.object.objectId;L((k)=>Z.getLocalVariables(O,(T)=>{k[M]={function:_,vars:T},z(k)}))}}z([])}let $=A.captureAllExceptions!==!1;if(Z.configureAndConnect((E,K)=>U(F.stackParser,E,K),$),$){let E=A.maxExceptionsPerSecond||50;Y=N4Q(E,()=>{e.log("Local variables rate-limit lifted."),Z.setPauseOnExceptions(!0)},(K)=>{e.log(`Local variables rate-limit exceeded. Disabling capturing of caught exceptions for ${K} seconds.`),Z.setPauseOnExceptions(!1)})}J=!0},(Z)=>{e.log("The `LocalVariables` integration failed to start.",Z)})},processEvent(G){if(J)return X(G);return G},_getCachedFramesCount(){return B.size},_getFirstCachedFrame(){return B.values()[0]}}},R4Q=wA(ND0);var EP=(A={})=>{return UF.major<19?R4Q(A):q4Q(A)};import{existsSync as LD0,readFileSync as qD0}from"node:fs";import{dirname as MD0,join as zD0}from"node:path";function u5(){try{return typeof w4Q<"u"&&typeof sfY<"u"}catch{return!1}}var bi,j4Q="Modules",RD0=()=>{if(!u5())return fQ&&e.warn("modulesIntegration only works in CommonJS (CJS) environments. Remove this integration if you are using ESM."),{name:j4Q};return{name:j4Q,processEvent(A){return A.modules={...A.modules,...OD0()},A}}},KP=wA(RD0);function wD0(){try{return u.cache?Object.keys(u.cache):[]}catch(A){return[]}}function jD0(){let A=u.main?.paths||[],Q=wD0(),B={},Y={};return Q.forEach((J)=>{let C=J,X=()=>{let G=C;if(C=MD0(G),!C||G===C||Y[G])return;if(A.indexOf(C)<0)return X();let F=zD0(G,"package.json");if(Y[G]=!0,!LD0(F))return X();try{let W=JSON.parse(qD0(F,"utf8"));B[W.name]=W.version}catch(W){}};X()}),B}function OD0(){if(!bi)bi=jD0();return bi}var PD0=2000;function ML(A){h0(()=>{console.error(A)});let Q=hA();if(Q===void 0){fQ&&e.warn("No NodeClient was defined, we are exiting the process now."),global.process.exit(1);return}let B=Q.getOptions(),Y=B?.shutdownTimeout&&B.shutdownTimeout>0?B.shutdownTimeout:PD0;Q.close(Y).then((J)=>{if(!J)fQ&&e.warn("We reached the timeout for emptying the request buffer, still exiting now!");global.process.exit(1)},(J)=>{fQ&&e.error(J)})}var TD0="OnUncaughtException",VP=wA((A={})=>{let Q={exitEvenIfOtherHandlersAreRegistered:!1,...A};return{name:TD0,setup(B){global.process.on("uncaughtException",SD0(B,Q))}}});function SD0(A,Q){let Y=!1,J=!1,C=!1,X,G=A.getOptions();return Object.assign((F)=>{let W=ML;if(Q.onFatalError)W=Q.onFatalError;else if(G.onFatalError)W=G.onFatalError;let U=global.process.listeners("uncaughtException").filter((E)=>{return E.name!=="domainUncaughtExceptionClear"&&E.tag!=="sentry_tracingErrorCallback"&&E._errorHandler!==!0}).length===0,$=Q.exitEvenIfOtherHandlersAreRegistered||U;if(!Y){if(X=F,Y=!0,hA()===A)jB(F,{originalException:F,captureContext:{level:"fatal"},mechanism:{handled:!1,type:"onuncaughtexception"}});if(!C&&$)C=!0,W(F)}else if($){if(C)fQ&&e.warn("uncaught exception after calling fatal error shutdown callback - this is bad! forcing shutdown"),ML(F);else if(!J)J=!0,setTimeout(()=>{if(!C)C=!0,W(X,F)},2000)}},{_errorHandler:!0})}var kD0="OnUnhandledRejection",_D0=(A={})=>{let Q={mode:"warn",...A};return{name:kD0,setup(B){global.process.on("unhandledRejection",vD0(B,Q))}}},IP=wA(_D0);function vD0(A,Q){return function(Y,J){if(hA()!==A)return;let C=Q.mode==="strict"?"fatal":"error";jB(Y,{originalException:J,captureContext:{extra:{unhandledPromiseRejection:!0},level:C},mechanism:{handled:!1,type:"onunhandledrejection"}}),yD0(Y,Q.mode)}}function yD0(A,Q){let B="This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). The promise rejected with the reason:";if(Q==="warn")h0(()=>{console.warn(B),console.error(A&&typeof A==="object"&&"stack"in A?A.stack:A)});else if(Q==="strict")h0(()=>{console.warn(B)}),ML(A)}import{types as hD0}from"node:util";import{Worker as gD0}from"node:worker_threads";var{isPromise:xD0}=hD0,fD0="LyohIEBzZW50cnkvbm9kZSA5LjIyLjAgKGNjYWJmYzIpIHwgaHR0cHM6Ly9naXRodWIuY29tL2dldHNlbnRyeS9zZW50cnktamF2YXNjcmlwdCAqLwppbXBvcnR7U2Vzc2lvbiBhcyB0fWZyb20ibm9kZTppbnNwZWN0b3IiO2ltcG9ydHt3b3JrZXJEYXRhIGFzIG4scGFyZW50UG9ydCBhcyBlfWZyb20ibm9kZTp3b3JrZXJfdGhyZWFkcyI7aW1wb3J0e3Bvc2l4IGFzIHIsc2VwIGFzIG99ZnJvbSJub2RlOnBhdGgiO2ltcG9ydCphcyBzIGZyb20ibm9kZTpodHRwIjtpbXBvcnQqYXMgaSBmcm9tIm5vZGU6aHR0cHMiO2ltcG9ydHtSZWFkYWJsZSBhcyBjfWZyb20ibm9kZTpzdHJlYW0iO2ltcG9ydHtjcmVhdGVHemlwIGFzIHV9ZnJvbSJub2RlOnpsaWIiO2ltcG9ydCphcyBhIGZyb20ibm9kZTpuZXQiO2ltcG9ydCphcyBmIGZyb20ibm9kZTp0bHMiO2NvbnN0IGg9InVuZGVmaW5lZCI9PXR5cGVvZiBfX1NFTlRSWV9ERUJVR19ffHxfX1NFTlRSWV9ERUJVR19fLHA9IjkuMjIuMCIsbD1nbG9iYWxUaGlzO2Z1bmN0aW9uIGQoKXtyZXR1cm4gbShsKSxsfWZ1bmN0aW9uIG0odCl7Y29uc3Qgbj10Ll9fU0VOVFJZX189dC5fX1NFTlRSWV9ffHx7fTtyZXR1cm4gbi52ZXJzaW9uPW4udmVyc2lvbnx8cCxuW3BdPW5bcF18fHt9fWZ1bmN0aW9uIGcodCxuLGU9bCl7Y29uc3Qgcj1lLl9fU0VOVFJZX189ZS5fX1NFTlRSWV9ffHx7fSxvPXJbcF09cltwXXx8e307cmV0dXJuIG9bdF18fChvW3RdPW4oKSl9Y29uc3QgeT1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nO2Z1bmN0aW9uIGIodCxuKXtyZXR1cm4geS5jYWxsKHQpPT09YFtvYmplY3QgJHtufV1gfWZ1bmN0aW9uIF8odCl7cmV0dXJuIGIodCwiU3RyaW5nIil9ZnVuY3Rpb24gdih0KXtyZXR1cm4gYih0LCJPYmplY3QiKX1mdW5jdGlvbiB3KHQpe3JldHVybiBCb29sZWFuKHQ/LnRoZW4mJiJmdW5jdGlvbiI9PXR5cGVvZiB0LnRoZW4pfWZ1bmN0aW9uIFModCxuKXt0cnl7cmV0dXJuIHQgaW5zdGFuY2VvZiBufWNhdGNoKHQpe3JldHVybiExfX1jb25zdCAkPWwsRT04MDtmdW5jdGlvbiB4KHQsbil7Y29uc3QgZT10LHI9W107aWYoIWU/LnRhZ05hbWUpcmV0dXJuIiI7aWYoJC5IVE1MRWxlbWVudCYmZSBpbnN0YW5jZW9mIEhUTUxFbGVtZW50JiZlLmRhdGFzZXQpe2lmKGUuZGF0YXNldC5zZW50cnlDb21wb25lbnQpcmV0dXJuIGUuZGF0YXNldC5zZW50cnlDb21wb25lbnQ7aWYoZS5kYXRhc2V0LnNlbnRyeUVsZW1lbnQpcmV0dXJuIGUuZGF0YXNldC5zZW50cnlFbGVtZW50fXIucHVzaChlLnRhZ05hbWUudG9Mb3dlckNhc2UoKSk7Y29uc3Qgbz1uPy5sZW5ndGg/bi5maWx0ZXIoKHQ9PmUuZ2V0QXR0cmlidXRlKHQpKSkubWFwKCh0PT5bdCxlLmdldEF0dHJpYnV0ZSh0KV0pKTpudWxsO2lmKG8/Lmxlbmd0aClvLmZvckVhY2goKHQ9PntyLnB1c2goYFske3RbMF19PSIke3RbMV19Il1gKX0pKTtlbHNle2UuaWQmJnIucHVzaChgIyR7ZS5pZH1gKTtjb25zdCB0PWUuY2xhc3NOYW1lO2lmKHQmJl8odCkpe2NvbnN0IG49dC5zcGxpdCgvXHMrLyk7Zm9yKGNvbnN0IHQgb2YgbilyLnB1c2goYC4ke3R9YCl9fWNvbnN0IHM9WyJhcmlhLWxhYmVsIiwidHlwZSIsIm5hbWUiLCJ0aXRsZSIsImFsdCJdO2Zvcihjb25zdCB0IG9mIHMpe2NvbnN0IG49ZS5nZXRBdHRyaWJ1dGUodCk7biYmci5wdXNoKGBbJHt0fT0iJHtufSJdYCl9cmV0dXJuIHIuam9pbigiIil9Y29uc3QgTj1bImRlYnVnIiwiaW5mbyIsIndhcm4iLCJlcnJvciIsImxvZyIsImFzc2VydCIsInRyYWNlIl0sQz17fTtmdW5jdGlvbiBUKHQpe2lmKCEoImNvbnNvbGUiaW4gbCkpcmV0dXJuIHQoKTtjb25zdCBuPWwuY29uc29sZSxlPXt9LHI9T2JqZWN0LmtleXMoQyk7ci5mb3JFYWNoKCh0PT57Y29uc3Qgcj1DW3RdO2VbdF09blt0XSxuW3RdPXJ9KSk7dHJ5e3JldHVybiB0KCl9ZmluYWxseXtyLmZvckVhY2goKHQ9PntuW3RdPWVbdF19KSl9fWNvbnN0IGs9ZygibG9nZ2VyIiwoZnVuY3Rpb24oKXtsZXQgdD0hMTtjb25zdCBuPXtlbmFibGU6KCk9Pnt0PSEwfSxkaXNhYmxlOigpPT57dD0hMX0saXNFbmFibGVkOigpPT50fTtyZXR1cm4gaD9OLmZvckVhY2goKGU9PntuW2VdPSguLi5uKT0+e3QmJlQoKCgpPT57bC5jb25zb2xlW2VdKGBTZW50cnkgTG9nZ2VyIFske2V9XTpgLC4uLm4pfSkpfX0pKTpOLmZvckVhY2goKHQ9PntuW3RdPSgpPT57fX0pKSxufSkpO2Z1bmN0aW9uIGoodCxuPTApe3JldHVybiJzdHJpbmciIT10eXBlb2YgdHx8MD09PW58fHQubGVuZ3RoPD1uP3Q6YCR7dC5zbGljZSgwLG4pfS4uLmB9ZnVuY3Rpb24gUih0KXtpZihmdW5jdGlvbih0KXtzd2l0Y2goeS5jYWxsKHQpKXtjYXNlIltvYmplY3QgRXJyb3JdIjpjYXNlIltvYmplY3QgRXhjZXB0aW9uXSI6Y2FzZSJbb2JqZWN0IERPTUV4Y2VwdGlvbl0iOmNhc2UiW29iamVjdCBXZWJBc3NlbWJseS5FeGNlcHRpb25dIjpyZXR1cm4hMDtkZWZhdWx0OnJldHVybiBTKHQsRXJyb3IpfX0odCkpcmV0dXJue21lc3NhZ2U6dC5tZXNzYWdlLG5hbWU6dC5uYW1lLHN0YWNrOnQuc3RhY2ssLi4uTyh0KX07aWYobj10LCJ1bmRlZmluZWQiIT10eXBlb2YgRXZlbnQmJlMobixFdmVudCkpe2NvbnN0IG49e3R5cGU6dC50eXBlLHRhcmdldDpJKHQudGFyZ2V0KSxjdXJyZW50VGFyZ2V0OkkodC5jdXJyZW50VGFyZ2V0KSwuLi5PKHQpfTtyZXR1cm4idW5kZWZpbmVkIiE9dHlwZW9mIEN1c3RvbUV2ZW50JiZTKHQsQ3VzdG9tRXZlbnQpJiYobi5kZXRhaWw9dC5kZXRhaWwpLG59cmV0dXJuIHQ7dmFyIG59ZnVuY3Rpb24gSSh0KXt0cnl7cmV0dXJuIG49dCwidW5kZWZpbmVkIiE9dHlwZW9mIEVsZW1lbnQmJlMobixFbGVtZW50KT9mdW5jdGlvbih0LG49e30pe2lmKCF0KXJldHVybiI8dW5rbm93bj4iO3RyeXtsZXQgZT10O2NvbnN0IHI9NSxvPVtdO2xldCBzPTAsaT0wO2NvbnN0IGM9IiA+ICIsdT1jLmxlbmd0aDtsZXQgYTtjb25zdCBmPUFycmF5LmlzQXJyYXkobik/bjpuLmtleUF0dHJzLGg9IUFycmF5LmlzQXJyYXkobikmJm4ubWF4U3RyaW5nTGVuZ3RofHxFO2Zvcig7ZSYmcysrPHImJihhPXgoZSxmKSwhKCJodG1sIj09PWF8fHM+MSYmaStvLmxlbmd0aCp1K2EubGVuZ3RoPj1oKSk7KW8ucHVzaChhKSxpKz1hLmxlbmd0aCxlPWUucGFyZW50Tm9kZTtyZXR1cm4gby5yZXZlcnNlKCkuam9pbihjKX1jYXRjaCh0KXtyZXR1cm4iPHVua25vd24+In19KHQpOk9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbCh0KX1jYXRjaCh0KXtyZXR1cm4iPHVua25vd24+In12YXIgbn1mdW5jdGlvbiBPKHQpe2lmKCJvYmplY3QiPT10eXBlb2YgdCYmbnVsbCE9PXQpe2NvbnN0IG49e307Zm9yKGNvbnN0IGUgaW4gdClPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodCxlKSYmKG5bZV09dFtlXSk7cmV0dXJuIG59cmV0dXJue319ZnVuY3Rpb24gRCh0PWZ1bmN0aW9uKCl7Y29uc3QgdD1sO3JldHVybiB0LmNyeXB0b3x8dC5tc0NyeXB0b30oKSl7bGV0IG49KCk9PjE2Kk1hdGgucmFuZG9tKCk7dHJ5e2lmKHQ/LnJhbmRvbVVVSUQpcmV0dXJuIHQucmFuZG9tVVVJRCgpLnJlcGxhY2UoLy0vZywiIik7dD8uZ2V0UmFuZG9tVmFsdWVzJiYobj0oKT0+e2NvbnN0IG49bmV3IFVpbnQ4QXJyYXkoMSk7cmV0dXJuIHQuZ2V0UmFuZG9tVmFsdWVzKG4pLG5bMF19KX1jYXRjaCh0KXt9cmV0dXJuKFsxZTddKzFlMys0ZTMrOGUzKzFlMTEpLnJlcGxhY2UoL1swMThdL2csKHQ9Pih0XigxNSZuKCkpPj50LzQpLnRvU3RyaW5nKDE2KSkpfWNvbnN0IEE9MWUzO2Z1bmN0aW9uIFAoKXtyZXR1cm4gRGF0ZS5ub3coKS9BfWNvbnN0IFU9ZnVuY3Rpb24oKXtjb25zdHtwZXJmb3JtYW5jZTp0fT1sO2lmKCF0Py5ub3cpcmV0dXJuIFA7Y29uc3Qgbj1EYXRlLm5vdygpLXQubm93KCksZT1udWxsPT10LnRpbWVPcmlnaW4/bjp0LnRpbWVPcmlnaW47cmV0dXJuKCk9PihlK3Qubm93KCkpL0F9KCk7ZnVuY3Rpb24gTSh0KXtjb25zdCBuPVUoKSxlPXtzaWQ6RCgpLGluaXQ6ITAsdGltZXN0YW1wOm4sc3RhcnRlZDpuLGR1cmF0aW9uOjAsc3RhdHVzOiJvayIsZXJyb3JzOjAsaWdub3JlRHVyYXRpb246ITEsdG9KU09OOigpPT5mdW5jdGlvbih0KXtyZXR1cm57c2lkOmAke3Quc2lkfWAsaW5pdDp0LmluaXQsc3RhcnRlZDpuZXcgRGF0ZSgxZTMqdC5zdGFydGVkKS50b0lTT1N0cmluZygpLHRpbWVzdGFtcDpuZXcgRGF0ZSgxZTMqdC50aW1lc3RhbXApLnRvSVNPU3RyaW5nKCksc3RhdHVzOnQuc3RhdHVzLGVycm9yczp0LmVycm9ycyxkaWQ6Im51bWJlciI9PXR5cGVvZiB0LmRpZHx8InN0cmluZyI9PXR5cGVvZiB0LmRpZD9gJHt0LmRpZH1gOnZvaWQgMCxkdXJhdGlvbjp0LmR1cmF0aW9uLGFibm9ybWFsX21lY2hhbmlzbTp0LmFibm9ybWFsX21lY2hhbmlzbSxhdHRyczp7cmVsZWFzZTp0LnJlbGVhc2UsZW52aXJvbm1lbnQ6dC5lbnZpcm9ubWVudCxpcF9hZGRyZXNzOnQuaXBBZGRyZXNzLHVzZXJfYWdlbnQ6dC51c2VyQWdlbnR9fX0oZSl9O3JldHVybiB0JiZMKGUsdCksZX1mdW5jdGlvbiBMKHQsbj17fSl7aWYobi51c2VyJiYoIXQuaXBBZGRyZXNzJiZuLnVzZXIuaXBfYWRkcmVzcyYmKHQuaXBBZGRyZXNzPW4udXNlci5pcF9hZGRyZXNzKSx0LmRpZHx8bi5kaWR8fCh0LmRpZD1uLnVzZXIuaWR8fG4udXNlci5lbWFpbHx8bi51c2VyLnVzZXJuYW1lKSksdC50aW1lc3RhbXA9bi50aW1lc3RhbXB8fFUoKSxuLmFibm9ybWFsX21lY2hhbmlzbSYmKHQuYWJub3JtYWxfbWVjaGFuaXNtPW4uYWJub3JtYWxfbWVjaGFuaXNtKSxuLmlnbm9yZUR1cmF0aW9uJiYodC5pZ25vcmVEdXJhdGlvbj1uLmlnbm9yZUR1cmF0aW9uKSxuLnNpZCYmKHQuc2lkPTMyPT09bi5zaWQubGVuZ3RoP24uc2lkOkQoKSksdm9pZCAwIT09bi5pbml0JiYodC5pbml0PW4uaW5pdCksIXQuZGlkJiZuLmRpZCYmKHQuZGlkPWAke24uZGlkfWApLCJudW1iZXIiPT10eXBlb2Ygbi5zdGFydGVkJiYodC5zdGFydGVkPW4uc3RhcnRlZCksdC5pZ25vcmVEdXJhdGlvbil0LmR1cmF0aW9uPXZvaWQgMDtlbHNlIGlmKCJudW1iZXIiPT10eXBlb2Ygbi5kdXJhdGlvbil0LmR1cmF0aW9uPW4uZHVyYXRpb247ZWxzZXtjb25zdCBuPXQudGltZXN0YW1wLXQuc3RhcnRlZDt0LmR1cmF0aW9uPW4+PTA/bjowfW4ucmVsZWFzZSYmKHQucmVsZWFzZT1uLnJlbGVhc2UpLG4uZW52aXJvbm1lbnQmJih0LmVudmlyb25tZW50PW4uZW52aXJvbm1lbnQpLCF0LmlwQWRkcmVzcyYmbi5pcEFkZHJlc3MmJih0LmlwQWRkcmVzcz1uLmlwQWRkcmVzcyksIXQudXNlckFnZW50JiZuLnVzZXJBZ2VudCYmKHQudXNlckFnZW50PW4udXNlckFnZW50KSwibnVtYmVyIj09dHlwZW9mIG4uZXJyb3JzJiYodC5lcnJvcnM9bi5lcnJvcnMpLG4uc3RhdHVzJiYodC5zdGF0dXM9bi5zdGF0dXMpfWZ1bmN0aW9uIEIodCxuLGU9Mil7aWYoIW58fCJvYmplY3QiIT10eXBlb2Ygbnx8ZTw9MClyZXR1cm4gbjtpZih0JiYwPT09T2JqZWN0LmtleXMobikubGVuZ3RoKXJldHVybiB0O2NvbnN0IHI9ey4uLnR9O2Zvcihjb25zdCB0IGluIG4pT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG4sdCkmJihyW3RdPUIoclt0XSxuW3RdLGUtMSkpO3JldHVybiByfWNvbnN0IEc9Il9zZW50cnlTcGFuIjtmdW5jdGlvbiBKKHQsbil7bj9mdW5jdGlvbih0LG4sZSl7dHJ5e09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LG4se3ZhbHVlOmUsd3JpdGFibGU6ITAsY29uZmlndXJhYmxlOiEwfSl9Y2F0Y2goZSl7aCYmay5sb2coYEZhaWxlZCB0byBhZGQgbm9uLWVudW1lcmFibGUgcHJvcGVydHkgIiR7bn0iIHRvIG9iamVjdGAsdCl9fSh0LEcsbik6ZGVsZXRlIHRbR119ZnVuY3Rpb24geih0KXtyZXR1cm4gdFtHXX1mdW5jdGlvbiBIKCl7cmV0dXJuIEQoKX1mdW5jdGlvbiBGKCl7cmV0dXJuIEQoKS5zdWJzdHJpbmcoMTYpfWNsYXNzIFd7Y29uc3RydWN0b3IoKXt0aGlzLnQ9ITEsdGhpcy5vPVtdLHRoaXMuaT1bXSx0aGlzLnU9W10sdGhpcy5oPVtdLHRoaXMucD17fSx0aGlzLmw9e30sdGhpcy5tPXt9LHRoaXMuXz17fSx0aGlzLnY9e30sdGhpcy5TPXt0cmFjZUlkOkgoKSxzYW1wbGVSYW5kOk1hdGgucmFuZG9tKCl9fWNsb25lKCl7Y29uc3QgdD1uZXcgVztyZXR1cm4gdC51PVsuLi50aGlzLnVdLHQubD17Li4udGhpcy5sfSx0Lm09ey4uLnRoaXMubX0sdC5fPXsuLi50aGlzLl99LHRoaXMuXy5mbGFncyYmKHQuXy5mbGFncz17dmFsdWVzOlsuLi50aGlzLl8uZmxhZ3MudmFsdWVzXX0pLHQucD10aGlzLnAsdC5OPXRoaXMuTix0LkM9dGhpcy5DLHQuVD10aGlzLlQsdC5rPXRoaXMuayx0Lmk9Wy4uLnRoaXMuaV0sdC5oPVsuLi50aGlzLmhdLHQudj17Li4udGhpcy52fSx0LlM9ey4uLnRoaXMuU30sdC5qPXRoaXMuaix0LlI9dGhpcy5SLEoodCx6KHRoaXMpKSx0fXNldENsaWVudCh0KXt0aGlzLmo9dH1zZXRMYXN0RXZlbnRJZCh0KXt0aGlzLlI9dH1nZXRDbGllbnQoKXtyZXR1cm4gdGhpcy5qfWxhc3RFdmVudElkKCl7cmV0dXJuIHRoaXMuUn1hZGRTY29wZUxpc3RlbmVyKHQpe3RoaXMuby5wdXNoKHQpfWFkZEV2ZW50UHJvY2Vzc29yKHQpe3JldHVybiB0aGlzLmkucHVzaCh0KSx0aGlzfXNldFVzZXIodCl7cmV0dXJuIHRoaXMucD10fHx7ZW1haWw6dm9pZCAwLGlkOnZvaWQgMCxpcF9hZGRyZXNzOnZvaWQgMCx1c2VybmFtZTp2b2lkIDB9LHRoaXMuQyYmTCh0aGlzLkMse3VzZXI6dH0pLHRoaXMuSSgpLHRoaXN9Z2V0VXNlcigpe3JldHVybiB0aGlzLnB9c2V0VGFncyh0KXtyZXR1cm4gdGhpcy5sPXsuLi50aGlzLmwsLi4udH0sdGhpcy5JKCksdGhpc31zZXRUYWcodCxuKXtyZXR1cm4gdGhpcy5sPXsuLi50aGlzLmwsW3RdOm59LHRoaXMuSSgpLHRoaXN9c2V0RXh0cmFzKHQpe3JldHVybiB0aGlzLm09ey4uLnRoaXMubSwuLi50fSx0aGlzLkkoKSx0aGlzfXNldEV4dHJhKHQsbil7cmV0dXJuIHRoaXMubT17Li4udGhpcy5tLFt0XTpufSx0aGlzLkkoKSx0aGlzfXNldEZpbmdlcnByaW50KHQpe3JldHVybiB0aGlzLms9dCx0aGlzLkkoKSx0aGlzfXNldExldmVsKHQpe3JldHVybiB0aGlzLk49dCx0aGlzLkkoKSx0aGlzfXNldFRyYW5zYWN0aW9uTmFtZSh0KXtyZXR1cm4gdGhpcy5UPXQsdGhpcy5JKCksdGhpc31zZXRDb250ZXh0KHQsbil7cmV0dXJuIG51bGw9PT1uP2RlbGV0ZSB0aGlzLl9bdF06dGhpcy5fW3RdPW4sdGhpcy5JKCksdGhpc31zZXRTZXNzaW9uKHQpe3JldHVybiB0P3RoaXMuQz10OmRlbGV0ZSB0aGlzLkMsdGhpcy5JKCksdGhpc31nZXRTZXNzaW9uKCl7cmV0dXJuIHRoaXMuQ311cGRhdGUodCl7aWYoIXQpcmV0dXJuIHRoaXM7Y29uc3Qgbj0iZnVuY3Rpb24iPT10eXBlb2YgdD90KHRoaXMpOnQsZT1uIGluc3RhbmNlb2YgVz9uLmdldFNjb3BlRGF0YSgpOnYobik/dDp2b2lkIDAse3RhZ3M6cixleHRyYTpvLHVzZXI6cyxjb250ZXh0czppLGxldmVsOmMsZmluZ2VycHJpbnQ6dT1bXSxwcm9wYWdhdGlvbkNvbnRleHQ6YX09ZXx8e307cmV0dXJuIHRoaXMubD17Li4udGhpcy5sLC4uLnJ9LHRoaXMubT17Li4udGhpcy5tLC4uLm99LHRoaXMuXz17Li4udGhpcy5fLC4uLml9LHMmJk9iamVjdC5rZXlzKHMpLmxlbmd0aCYmKHRoaXMucD1zKSxjJiYodGhpcy5OPWMpLHUubGVuZ3RoJiYodGhpcy5rPXUpLGEmJih0aGlzLlM9YSksdGhpc31jbGVhcigpe3JldHVybiB0aGlzLnU9W10sdGhpcy5sPXt9LHRoaXMubT17fSx0aGlzLnA9e30sdGhpcy5fPXt9LHRoaXMuTj12b2lkIDAsdGhpcy5UPXZvaWQgMCx0aGlzLms9dm9pZCAwLHRoaXMuQz12b2lkIDAsSih0aGlzLHZvaWQgMCksdGhpcy5oPVtdLHRoaXMuc2V0UHJvcGFnYXRpb25Db250ZXh0KHt0cmFjZUlkOkgoKSxzYW1wbGVSYW5kOk1hdGgucmFuZG9tKCl9KSx0aGlzLkkoKSx0aGlzfWFkZEJyZWFkY3J1bWIodCxuKXtjb25zdCBlPSJudW1iZXIiPT10eXBlb2Ygbj9uOjEwMDtpZihlPD0wKXJldHVybiB0aGlzO2NvbnN0IHI9e3RpbWVzdGFtcDpQKCksLi4udCxtZXNzYWdlOnQubWVzc2FnZT9qKHQubWVzc2FnZSwyMDQ4KTp0Lm1lc3NhZ2V9O3JldHVybiB0aGlzLnUucHVzaChyKSx0aGlzLnUubGVuZ3RoPmUmJih0aGlzLnU9dGhpcy51LnNsaWNlKC1lKSx0aGlzLmo/LnJlY29yZERyb3BwZWRFdmVudCgiYnVmZmVyX292ZXJmbG93IiwibG9nX2l0ZW0iKSksdGhpcy5JKCksdGhpc31nZXRMYXN0QnJlYWRjcnVtYigpe3JldHVybiB0aGlzLnVbdGhpcy51Lmxlbmd0aC0xXX1jbGVhckJyZWFkY3J1bWJzKCl7cmV0dXJuIHRoaXMudT1bXSx0aGlzLkkoKSx0aGlzfWFkZEF0dGFjaG1lbnQodCl7cmV0dXJuIHRoaXMuaC5wdXNoKHQpLHRoaXN9Y2xlYXJBdHRhY2htZW50cygpe3JldHVybiB0aGlzLmg9W10sdGhpc31nZXRTY29wZURhdGEoKXtyZXR1cm57YnJlYWRjcnVtYnM6dGhpcy51LGF0dGFjaG1lbnRzOnRoaXMuaCxjb250ZXh0czp0aGlzLl8sdGFnczp0aGlzLmwsZXh0cmE6dGhpcy5tLHVzZXI6dGhpcy5wLGxldmVsOnRoaXMuTixmaW5nZXJwcmludDp0aGlzLmt8fFtdLGV2ZW50UHJvY2Vzc29yczp0aGlzLmkscHJvcGFnYXRpb25Db250ZXh0OnRoaXMuUyxzZGtQcm9jZXNzaW5nTWV0YWRhdGE6dGhpcy52LHRyYW5zYWN0aW9uTmFtZTp0aGlzLlQsc3Bhbjp6KHRoaXMpfX1zZXRTREtQcm9jZXNzaW5nTWV0YWRhdGEodCl7cmV0dXJuIHRoaXMudj1CKHRoaXMudix0LDIpLHRoaXN9c2V0UHJvcGFnYXRpb25Db250ZXh0KHQpe3JldHVybiB0aGlzLlM9dCx0aGlzfWdldFByb3BhZ2F0aW9uQ29udGV4dCgpe3JldHVybiB0aGlzLlN9Y2FwdHVyZUV4Y2VwdGlvbih0LG4pe2NvbnN0IGU9bj8uZXZlbnRfaWR8fEQoKTtpZighdGhpcy5qKXJldHVybiBrLndhcm4oIk5vIGNsaWVudCBjb25maWd1cmVkIG9uIHNjb3BlIC0gd2lsbCBub3QgY2FwdHVyZSBleGNlcHRpb24hIiksZTtjb25zdCByPW5ldyBFcnJvcigiU2VudHJ5IHN5bnRoZXRpY0V4Y2VwdGlvbiIpO3JldHVybiB0aGlzLmouY2FwdHVyZUV4Y2VwdGlvbih0LHtvcmlnaW5hbEV4Y2VwdGlvbjp0LHN5bnRoZXRpY0V4Y2VwdGlvbjpyLC4uLm4sZXZlbnRfaWQ6ZX0sdGhpcyksZX1jYXB0dXJlTWVzc2FnZSh0LG4sZSl7Y29uc3Qgcj1lPy5ldmVudF9pZHx8RCgpO2lmKCF0aGlzLmopcmV0dXJuIGsud2FybigiTm8gY2xpZW50IGNvbmZpZ3VyZWQgb24gc2NvcGUgLSB3aWxsIG5vdCBjYXB0dXJlIG1lc3NhZ2UhIikscjtjb25zdCBvPW5ldyBFcnJvcih0KTtyZXR1cm4gdGhpcy5qLmNhcHR1cmVNZXNzYWdlKHQsbix7b3JpZ2luYWxFeGNlcHRpb246dCxzeW50aGV0aWNFeGNlcHRpb246bywuLi5lLGV2ZW50X2lkOnJ9LHRoaXMpLHJ9Y2FwdHVyZUV2ZW50KHQsbil7Y29uc3QgZT1uPy5ldmVudF9pZHx8RCgpO3JldHVybiB0aGlzLmo/KHRoaXMuai5jYXB0dXJlRXZlbnQodCx7Li4ubixldmVudF9pZDplfSx0aGlzKSxlKTooay53YXJuKCJObyBjbGllbnQgY29uZmlndXJlZCBvbiBzY29wZSAtIHdpbGwgbm90IGNhcHR1cmUgZXZlbnQhIiksZSl9SSgpe3RoaXMudHx8KHRoaXMudD0hMCx0aGlzLm8uZm9yRWFjaCgodD0+e3QodGhpcyl9KSksdGhpcy50PSExKX19Y2xhc3MgWXtjb25zdHJ1Y3Rvcih0LG4pe2xldCBlLHI7ZT10fHxuZXcgVyxyPW58fG5ldyBXLHRoaXMuTz1be3Njb3BlOmV9XSx0aGlzLkQ9cn13aXRoU2NvcGUodCl7Y29uc3Qgbj10aGlzLkEoKTtsZXQgZTt0cnl7ZT10KG4pfWNhdGNoKHQpe3Rocm93IHRoaXMuUCgpLHR9cmV0dXJuIHcoZSk/ZS50aGVuKCh0PT4odGhpcy5QKCksdCkpLCh0PT57dGhyb3cgdGhpcy5QKCksdH0pKToodGhpcy5QKCksZSl9Z2V0Q2xpZW50KCl7cmV0dXJuIHRoaXMuZ2V0U3RhY2tUb3AoKS5jbGllbnR9Z2V0U2NvcGUoKXtyZXR1cm4gdGhpcy5nZXRTdGFja1RvcCgpLnNjb3BlfWdldElzb2xhdGlvblNjb3BlKCl7cmV0dXJuIHRoaXMuRH1nZXRTdGFja1RvcCgpe3JldHVybiB0aGlzLk9bdGhpcy5PLmxlbmd0aC0xXX1BKCl7Y29uc3QgdD10aGlzLmdldFNjb3BlKCkuY2xvbmUoKTtyZXR1cm4gdGhpcy5PLnB1c2goe2NsaWVudDp0aGlzLmdldENsaWVudCgpLHNjb3BlOnR9KSx0fVAoKXtyZXR1cm4hKHRoaXMuTy5sZW5ndGg8PTEpJiYhIXRoaXMuTy5wb3AoKX19ZnVuY3Rpb24gSygpe2NvbnN0IHQ9bShkKCkpO3JldHVybiB0LnN0YWNrPXQuc3RhY2t8fG5ldyBZKGcoImRlZmF1bHRDdXJyZW50U2NvcGUiLCgoKT0+bmV3IFcpKSxnKCJkZWZhdWx0SXNvbGF0aW9uU2NvcGUiLCgoKT0+bmV3IFcpKSl9ZnVuY3Rpb24gVih0KXtyZXR1cm4gSygpLndpdGhTY29wZSh0KX1mdW5jdGlvbiBaKHQsbil7Y29uc3QgZT1LKCk7cmV0dXJuIGUud2l0aFNjb3BlKCgoKT0+KGUuZ2V0U3RhY2tUb3AoKS5zY29wZT10LG4odCkpKSl9ZnVuY3Rpb24gcSh0KXtyZXR1cm4gSygpLndpdGhTY29wZSgoKCk9PnQoSygpLmdldElzb2xhdGlvblNjb3BlKCkpKSl9ZnVuY3Rpb24gUSh0KXtjb25zdCBuPW0odCk7cmV0dXJuIG4uYWNzP24uYWNzOnt3aXRoSXNvbGF0aW9uU2NvcGU6cSx3aXRoU2NvcGU6Vix3aXRoU2V0U2NvcGU6Wix3aXRoU2V0SXNvbGF0aW9uU2NvcGU6KHQsbik9PnEobiksZ2V0Q3VycmVudFNjb3BlOigpPT5LKCkuZ2V0U2NvcGUoKSxnZXRJc29sYXRpb25TY29wZTooKT0+SygpLmdldElzb2xhdGlvblNjb3BlKCl9fWZ1bmN0aW9uIFgoKXtyZXR1cm4gUShkKCkpLmdldEN1cnJlbnRTY29wZSgpLmdldENsaWVudCgpfWNvbnN0IHR0PSJzZW50cnkuc291cmNlIixudD0ic2VudHJ5LnNhbXBsZV9yYXRlIixldD0ic2VudHJ5LnByZXZpb3VzX3RyYWNlX3NhbXBsZV9yYXRlIixydD0ic2VudHJ5Lm9wIixvdD0ic2VudHJ5Lm9yaWdpbiIsc3Q9MCxpdD0xLGN0PSJfc2VudHJ5U2NvcGUiLHV0PSJfc2VudHJ5SXNvbGF0aW9uU2NvcGUiO2Z1bmN0aW9uIGF0KHQpe3JldHVybntzY29wZTp0W2N0XSxpc29sYXRpb25TY29wZTp0W3V0XX19Y29uc3QgZnQ9InNlbnRyeS0iLGh0PS9ec2VudHJ5LS87ZnVuY3Rpb24gcHQodCl7Y29uc3Qgbj1mdW5jdGlvbih0KXtpZighdHx8IV8odCkmJiFBcnJheS5pc0FycmF5KHQpKXJldHVybjtpZihBcnJheS5pc0FycmF5KHQpKXJldHVybiB0LnJlZHVjZSgoKHQsbik9Pntjb25zdCBlPWx0KG4pO3JldHVybiBPYmplY3QuZW50cmllcyhlKS5mb3JFYWNoKCgoW24sZV0pPT57dFtuXT1lfSkpLHR9KSx7fSk7cmV0dXJuIGx0KHQpfSh0KTtpZighbilyZXR1cm47Y29uc3QgZT1PYmplY3QuZW50cmllcyhuKS5yZWR1Y2UoKCh0LFtuLGVdKT0+e2lmKG4ubWF0Y2goaHQpKXt0W24uc2xpY2UoZnQubGVuZ3RoKV09ZX1yZXR1cm4gdH0pLHt9KTtyZXR1cm4gT2JqZWN0LmtleXMoZSkubGVuZ3RoPjA/ZTp2b2lkIDB9ZnVuY3Rpb24gbHQodCl7cmV0dXJuIHQuc3BsaXQoIiwiKS5tYXAoKHQ9PnQuc3BsaXQoIj0iKS5tYXAoKHQ9Pnt0cnl7cmV0dXJuIGRlY29kZVVSSUNvbXBvbmVudCh0LnRyaW0oKSl9Y2F0Y2h7cmV0dXJufX0pKSkpLnJlZHVjZSgoKHQsW24sZV0pPT4obiYmZSYmKHRbbl09ZSksdCkpLHt9KX1jb25zdCBkdD0xO2Z1bmN0aW9uIG10KHQpe2NvbnN0e3NwYW5JZDpuLHRyYWNlSWQ6ZSxpc1JlbW90ZTpyfT10LnNwYW5Db250ZXh0KCksbz1yP246X3QodCkucGFyZW50X3NwYW5faWQscz1hdCh0KS5zY29wZTtyZXR1cm57cGFyZW50X3NwYW5faWQ6byxzcGFuX2lkOnI/cz8uZ2V0UHJvcGFnYXRpb25Db250ZXh0KCkucHJvcGFnYXRpb25TcGFuSWR8fEYoKTpuLHRyYWNlX2lkOmV9fWZ1bmN0aW9uIGd0KHQpe3JldHVybiB0JiZ0Lmxlbmd0aD4wP3QubWFwKCgoe2NvbnRleHQ6e3NwYW5JZDp0LHRyYWNlSWQ6bix0cmFjZUZsYWdzOmUsLi4ucn0sYXR0cmlidXRlczpvfSk9Pih7c3Bhbl9pZDp0LHRyYWNlX2lkOm4sc2FtcGxlZDplPT09ZHQsYXR0cmlidXRlczpvLC4uLnJ9KSkpOnZvaWQgMH1mdW5jdGlvbiB5dCh0KXtyZXR1cm4ibnVtYmVyIj09dHlwZW9mIHQ/YnQodCk6QXJyYXkuaXNBcnJheSh0KT90WzBdK3RbMV0vMWU5OnQgaW5zdGFuY2VvZiBEYXRlP2J0KHQuZ2V0VGltZSgpKTpVKCl9ZnVuY3Rpb24gYnQodCl7cmV0dXJuIHQ+OTk5OTk5OTk5OT90LzFlMzp0fWZ1bmN0aW9uIF90KHQpe2lmKGZ1bmN0aW9uKHQpe3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiB0LmdldFNwYW5KU09OfSh0KSlyZXR1cm4gdC5nZXRTcGFuSlNPTigpO2NvbnN0e3NwYW5JZDpuLHRyYWNlSWQ6ZX09dC5zcGFuQ29udGV4dCgpO2lmKGZ1bmN0aW9uKHQpe2NvbnN0IG49dDtyZXR1cm4hIShuLmF0dHJpYnV0ZXMmJm4uc3RhcnRUaW1lJiZuLm5hbWUmJm4uZW5kVGltZSYmbi5zdGF0dXMpfSh0KSl7Y29uc3R7YXR0cmlidXRlczpyLHN0YXJ0VGltZTpvLG5hbWU6cyxlbmRUaW1lOmksc3RhdHVzOmMsbGlua3M6dX09dDtyZXR1cm57c3Bhbl9pZDpuLHRyYWNlX2lkOmUsZGF0YTpyLGRlc2NyaXB0aW9uOnMscGFyZW50X3NwYW5faWQ6InBhcmVudFNwYW5JZCJpbiB0P3QucGFyZW50U3BhbklkOiJwYXJlbnRTcGFuQ29udGV4dCJpbiB0P3QucGFyZW50U3BhbkNvbnRleHQ/LnNwYW5JZDp2b2lkIDAsc3RhcnRfdGltZXN0YW1wOnl0KG8pLHRpbWVzdGFtcDp5dChpKXx8dm9pZCAwLHN0YXR1czp2dChjKSxvcDpyW3J0XSxvcmlnaW46cltvdF0sbGlua3M6Z3QodSl9fXJldHVybntzcGFuX2lkOm4sdHJhY2VfaWQ6ZSxzdGFydF90aW1lc3RhbXA6MCxkYXRhOnt9fX1mdW5jdGlvbiB2dCh0KXtpZih0JiZ0LmNvZGUhPT1zdClyZXR1cm4gdC5jb2RlPT09aXQ/Im9rIjp0Lm1lc3NhZ2V8fCJ1bmtub3duX2Vycm9yIn1jb25zdCB3dD0iX3NlbnRyeVJvb3RTcGFuIjtmdW5jdGlvbiBTdCh0KXtyZXR1cm4gdFt3dF18fHR9Y29uc3QgJHQ9NTAsRXQ9Ij8iLHh0PS9jYXB0dXJlTWVzc2FnZXxjYXB0dXJlRXhjZXB0aW9uLztmdW5jdGlvbiBOdCh0KXtyZXR1cm4gdFt0Lmxlbmd0aC0xXXx8e319Y29uc3QgQ3Q9Ijxhbm9ueW1vdXM+Ijtjb25zdCBUdD0icHJvZHVjdGlvbiIsa3Q9L15vKFxkKylcLi87ZnVuY3Rpb24ganQodCxuPSExKXtjb25zdHtob3N0OmUscGF0aDpyLHBhc3M6byxwb3J0OnMscHJvamVjdElkOmkscHJvdG9jb2w6YyxwdWJsaWNLZXk6dX09dDtyZXR1cm5gJHtjfTovLyR7dX0ke24mJm8/YDoke299YDoiIn1AJHtlfSR7cz9gOiR7c31gOiIifS8ke3I/YCR7cn0vYDpyfSR7aX1gfWNvbnN0IFJ0PSJfZnJvemVuRHNjIjtmdW5jdGlvbiBJdCh0LG4pe2NvbnN0IGU9bi5nZXRPcHRpb25zKCkse3B1YmxpY0tleTpyLGhvc3Q6b309bi5nZXREc24oKXx8e307bGV0IHM7ZS5vcmdJZD9zPVN0cmluZyhlLm9yZ0lkKTpvJiYocz1mdW5jdGlvbih0KXtjb25zdCBuPXQubWF0Y2goa3QpO3JldHVybiBuPy5bMV19KG8pKTtjb25zdCBpPXtlbnZpcm9ubWVudDplLmVudmlyb25tZW50fHxUdCxyZWxlYXNlOmUucmVsZWFzZSxwdWJsaWNfa2V5OnIsdHJhY2VfaWQ6dCxvcmdfaWQ6c307cmV0dXJuIG4uZW1pdCgiY3JlYXRlRHNjIixpKSxpfWZ1bmN0aW9uIE90KHQpe2NvbnN0IG49WCgpO2lmKCFuKXJldHVybnt9O2NvbnN0IGU9U3QodCkscj1fdChlKSxvPXIuZGF0YSxzPWUuc3BhbkNvbnRleHQoKS50cmFjZVN0YXRlLGk9cz8uZ2V0KCJzZW50cnkuc2FtcGxlX3JhdGUiKT8/b1tudF0/P29bZXRdO2Z1bmN0aW9uIGModCl7cmV0dXJuIm51bWJlciIhPXR5cGVvZiBpJiYic3RyaW5nIiE9dHlwZW9mIGl8fCh0LnNhbXBsZV9yYXRlPWAke2l9YCksdH1jb25zdCB1PWVbUnRdO2lmKHUpcmV0dXJuIGModSk7Y29uc3QgYT1zPy5nZXQoInNlbnRyeS5kc2MiKSxmPWEmJnB0KGEpO2lmKGYpcmV0dXJuIGMoZik7Y29uc3QgaD1JdCh0LnNwYW5Db250ZXh0KCkudHJhY2VJZCxuKSxwPW9bdHRdLGw9ci5kZXNjcmlwdGlvbjtyZXR1cm4idXJsIiE9PXAmJmwmJihoLnRyYW5zYWN0aW9uPWwpLGZ1bmN0aW9uKHQpe2lmKCJib29sZWFuIj09dHlwZW9mIF9fU0VOVFJZX1RSQUNJTkdfXyYmIV9fU0VOVFJZX1RSQUNJTkdfXylyZXR1cm4hMTtjb25zdCBuPXR8fFgoKT8uZ2V0T3B0aW9ucygpO3JldHVybiEoIW58fG51bGw9PW4udHJhY2VzU2FtcGxlUmF0ZSYmIW4udHJhY2VzU2FtcGxlcil9KCkmJihoLnNhbXBsZWQ9U3RyaW5nKGZ1bmN0aW9uKHQpe2NvbnN0e3RyYWNlRmxhZ3M6bn09dC5zcGFuQ29udGV4dCgpO3JldHVybiBuPT09ZHR9KGUpKSxoLnNhbXBsZV9yYW5kPXM/LmdldCgic2VudHJ5LnNhbXBsZV9yYW5kIik/P2F0KGUpLnNjb3BlPy5nZXRQcm9wYWdhdGlvbkNvbnRleHQoKS5zYW1wbGVSYW5kLnRvU3RyaW5nKCkpLGMoaCksbi5lbWl0KCJjcmVhdGVEc2MiLGgsZSksaH1mdW5jdGlvbiBEdCh0LG49MTAwLGU9MS8wKXt0cnl7cmV0dXJuIEF0KCIiLHQsbixlKX1jYXRjaCh0KXtyZXR1cm57RVJST1I6YCoqbm9uLXNlcmlhbGl6YWJsZSoqICgke3R9KWB9fX1mdW5jdGlvbiBBdCh0LG4sZT0xLzAscj0xLzAsbz1mdW5jdGlvbigpe2NvbnN0IHQ9bmV3IFdlYWtTZXQ7ZnVuY3Rpb24gbihuKXtyZXR1cm4hIXQuaGFzKG4pfHwodC5hZGQobiksITEpfWZ1bmN0aW9uIGUobil7dC5kZWxldGUobil9cmV0dXJuW24sZV19KCkpe2NvbnN0W3MsaV09bztpZihudWxsPT1ufHxbImJvb2xlYW4iLCJzdHJpbmciXS5pbmNsdWRlcyh0eXBlb2Ygbil8fCJudW1iZXIiPT10eXBlb2YgbiYmTnVtYmVyLmlzRmluaXRlKG4pKXJldHVybiBuO2NvbnN0IGM9ZnVuY3Rpb24odCxuKXt0cnl7aWYoImRvbWFpbiI9PT10JiZuJiYib2JqZWN0Ij09dHlwZW9mIG4mJm4uVSlyZXR1cm4iW0RvbWFpbl0iO2lmKCJkb21haW5FbWl0dGVyIj09PXQpcmV0dXJuIltEb21haW5FbWl0dGVyXSI7aWYoInVuZGVmaW5lZCIhPXR5cGVvZiBnbG9iYWwmJm49PT1nbG9iYWwpcmV0dXJuIltHbG9iYWxdIjtpZigidW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdyYmbj09PXdpbmRvdylyZXR1cm4iW1dpbmRvd10iO2lmKCJ1bmRlZmluZWQiIT10eXBlb2YgZG9jdW1lbnQmJm49PT1kb2N1bWVudClyZXR1cm4iW0RvY3VtZW50XSI7aWYoIm9iamVjdCI9PXR5cGVvZihlPW4pJiZudWxsIT09ZSYmKGUuX19pc1Z1ZXx8ZS5NKSlyZXR1cm4iW1Z1ZVZpZXdNb2RlbF0iO2lmKGZ1bmN0aW9uKHQpe3JldHVybiB2KHQpJiYibmF0aXZlRXZlbnQiaW4gdCYmInByZXZlbnREZWZhdWx0ImluIHQmJiJzdG9wUHJvcGFnYXRpb24iaW4gdH0obikpcmV0dXJuIltTeW50aGV0aWNFdmVudF0iO2lmKCJudW1iZXIiPT10eXBlb2YgbiYmIU51bWJlci5pc0Zpbml0ZShuKSlyZXR1cm5gWyR7bn1dYDtpZigiZnVuY3Rpb24iPT10eXBlb2YgbilyZXR1cm5gW0Z1bmN0aW9uOiAke2Z1bmN0aW9uKHQpe3RyeXtyZXR1cm4gdCYmImZ1bmN0aW9uIj09dHlwZW9mIHQmJnQubmFtZXx8Q3R9Y2F0Y2godCl7cmV0dXJuIEN0fX0obil9XWA7aWYoInN5bWJvbCI9PXR5cGVvZiBuKXJldHVybmBbJHtTdHJpbmcobil9XWA7aWYoImJpZ2ludCI9PXR5cGVvZiBuKXJldHVybmBbQmlnSW50OiAke1N0cmluZyhuKX1dYDtjb25zdCByPWZ1bmN0aW9uKHQpe2NvbnN0IG49T2JqZWN0LmdldFByb3RvdHlwZU9mKHQpO3JldHVybiBuPy5jb25zdHJ1Y3Rvcj9uLmNvbnN0cnVjdG9yLm5hbWU6Im51bGwgcHJvdG90eXBlIn0obik7cmV0dXJuL15IVE1MKFx3KilFbGVtZW50JC8udGVzdChyKT9gW0hUTUxFbGVtZW50OiAke3J9XWA6YFtvYmplY3QgJHtyfV1gfWNhdGNoKHQpe3JldHVybmAqKm5vbi1zZXJpYWxpemFibGUqKiAoJHt0fSlgfXZhciBlfSh0LG4pO2lmKCFjLnN0YXJ0c1dpdGgoIltvYmplY3QgIikpcmV0dXJuIGM7aWYobi5fX3NlbnRyeV9za2lwX25vcm1hbGl6YXRpb25fXylyZXR1cm4gbjtjb25zdCB1PSJudW1iZXIiPT10eXBlb2Ygbi5fX3NlbnRyeV9vdmVycmlkZV9ub3JtYWxpemF0aW9uX2RlcHRoX18/bi5fX3NlbnRyeV9vdmVycmlkZV9ub3JtYWxpemF0aW9uX2RlcHRoX186ZTtpZigwPT09dSlyZXR1cm4gYy5yZXBsYWNlKCJvYmplY3QgIiwiIik7aWYocyhuKSlyZXR1cm4iW0NpcmN1bGFyIH5dIjtjb25zdCBhPW47aWYoYSYmImZ1bmN0aW9uIj09dHlwZW9mIGEudG9KU09OKXRyeXtyZXR1cm4gQXQoIiIsYS50b0pTT04oKSx1LTEscixvKX1jYXRjaCh0KXt9Y29uc3QgZj1BcnJheS5pc0FycmF5KG4pP1tdOnt9O2xldCBoPTA7Y29uc3QgcD1SKG4pO2Zvcihjb25zdCB0IGluIHApe2lmKCFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocCx0KSljb250aW51ZTtpZihoPj1yKXtmW3RdPSJbTWF4UHJvcGVydGllcyB+XSI7YnJlYWt9Y29uc3Qgbj1wW3RdO2ZbdF09QXQodCxuLHUtMSxyLG8pLGgrK31yZXR1cm4gaShuKSxmfWZ1bmN0aW9uIFB0KHQsbil7Y29uc3QgZT1uLnJlcGxhY2UoL1xcL2csIi8iKS5yZXBsYWNlKC9bfFxce30oKVtcXV4kKyo/Ll0vZywiXFwkJiIpO2xldCByPXQ7dHJ5e3I9ZGVjb2RlVVJJKHQpfWNhdGNoKHQpe31yZXR1cm4gci5yZXBsYWNlKC9cXC9nLCIvIikucmVwbGFjZSgvd2VicGFjazpcLz8vZywiIikucmVwbGFjZShuZXcgUmVnRXhwKGAoZmlsZTovLyk/Lyoke2V9LypgLCJpZyIpLCJhcHA6Ly8vIil9ZnVuY3Rpb24gVXQodCxuPVtdKXtyZXR1cm5bdCxuXX1mdW5jdGlvbiBNdCh0LG4pe2NvbnN0IGU9dFsxXTtmb3IoY29uc3QgdCBvZiBlKXtpZihuKHQsdFswXS50eXBlKSlyZXR1cm4hMH1yZXR1cm4hMX1mdW5jdGlvbiBMdCh0KXtjb25zdCBuPW0obCk7cmV0dXJuIG4uZW5jb2RlUG9seWZpbGw/bi5lbmNvZGVQb2x5ZmlsbCh0KToobmV3IFRleHRFbmNvZGVyKS5lbmNvZGUodCl9ZnVuY3Rpb24gQnQodCl7Y29uc3RbbixlXT10O2xldCByPUpTT04uc3RyaW5naWZ5KG4pO2Z1bmN0aW9uIG8odCl7InN0cmluZyI9PXR5cGVvZiByP3I9InN0cmluZyI9PXR5cGVvZiB0P3IrdDpbTHQociksdF06ci5wdXNoKCJzdHJpbmciPT10eXBlb2YgdD9MdCh0KTp0KX1mb3IoY29uc3QgdCBvZiBlKXtjb25zdFtuLGVdPXQ7aWYobyhgXG4ke0pTT04uc3RyaW5naWZ5KG4pfVxuYCksInN0cmluZyI9PXR5cGVvZiBlfHxlIGluc3RhbmNlb2YgVWludDhBcnJheSlvKGUpO2Vsc2V7bGV0IHQ7dHJ5e3Q9SlNPTi5zdHJpbmdpZnkoZSl9Y2F0Y2gobil7dD1KU09OLnN0cmluZ2lmeShEdChlKSl9byh0KX19cmV0dXJuInN0cmluZyI9PXR5cGVvZiByP3I6ZnVuY3Rpb24odCl7Y29uc3Qgbj10LnJlZHVjZSgoKHQsbik9PnQrbi5sZW5ndGgpLDApLGU9bmV3IFVpbnQ4QXJyYXkobik7bGV0IHI9MDtmb3IoY29uc3QgbiBvZiB0KWUuc2V0KG4scikscis9bi5sZW5ndGg7cmV0dXJuIGV9KHIpfWNvbnN0IEd0PXtzZXNzaW9uOiJzZXNzaW9uIixzZXNzaW9uczoic2Vzc2lvbiIsYXR0YWNobWVudDoiYXR0YWNobWVudCIsdHJhbnNhY3Rpb246InRyYW5zYWN0aW9uIixldmVudDoiZXJyb3IiLGNsaWVudF9yZXBvcnQ6ImludGVybmFsIix1c2VyX3JlcG9ydDoiZGVmYXVsdCIscHJvZmlsZToicHJvZmlsZSIscHJvZmlsZV9jaHVuazoicHJvZmlsZSIscmVwbGF5X2V2ZW50OiJyZXBsYXkiLHJlcGxheV9yZWNvcmRpbmc6InJlcGxheSIsY2hlY2tfaW46Im1vbml0b3IiLGZlZWRiYWNrOiJmZWVkYmFjayIsc3Bhbjoic3BhbiIscmF3X3NlY3VyaXR5OiJzZWN1cml0eSIsbG9nOiJsb2dfaXRlbSJ9O2Z1bmN0aW9uIEp0KHQpe2lmKCF0Py5zZGspcmV0dXJuO2NvbnN0e25hbWU6bix2ZXJzaW9uOmV9PXQuc2RrO3JldHVybntuYW1lOm4sdmVyc2lvbjplfX1mdW5jdGlvbiB6dCh0LG4sZSxyKXtjb25zdCBvPUp0KGUpLHM9dC50eXBlJiYicmVwbGF5X2V2ZW50IiE9PXQudHlwZT90LnR5cGU6ImV2ZW50IjshZnVuY3Rpb24odCxuKXtuJiYodC5zZGs9dC5zZGt8fHt9LHQuc2RrLm5hbWU9dC5zZGsubmFtZXx8bi5uYW1lLHQuc2RrLnZlcnNpb249dC5zZGsudmVyc2lvbnx8bi52ZXJzaW9uLHQuc2RrLmludGVncmF0aW9ucz1bLi4udC5zZGsuaW50ZWdyYXRpb25zfHxbXSwuLi5uLmludGVncmF0aW9uc3x8W11dLHQuc2RrLnBhY2thZ2VzPVsuLi50LnNkay5wYWNrYWdlc3x8W10sLi4ubi5wYWNrYWdlc3x8W11dKX0odCxlPy5zZGspO2NvbnN0IGk9ZnVuY3Rpb24odCxuLGUscil7Y29uc3Qgbz10LnNka1Byb2Nlc3NpbmdNZXRhZGF0YT8uZHluYW1pY1NhbXBsaW5nQ29udGV4dDtyZXR1cm57ZXZlbnRfaWQ6dC5ldmVudF9pZCxzZW50X2F0OihuZXcgRGF0ZSkudG9JU09TdHJpbmcoKSwuLi5uJiZ7c2RrOm59LC4uLiEhZSYmciYme2RzbjpqdChyKX0sLi4ubyYme3RyYWNlOm99fX0odCxvLHIsbik7ZGVsZXRlIHQuc2RrUHJvY2Vzc2luZ01ldGFkYXRhO3JldHVybiBVdChpLFtbe3R5cGU6c30sdF1dKX1jb25zdCBIdD0iX19TRU5UUllfU1VQUFJFU1NfVFJBQ0lOR19fIjtmdW5jdGlvbiBGdCh0KXtjb25zdCBuPVEoZCgpKTtyZXR1cm4gbi5zdXBwcmVzc1RyYWNpbmc/bi5zdXBwcmVzc1RyYWNpbmcodCk6ZnVuY3Rpb24oLi4udCl7Y29uc3Qgbj1RKGQoKSk7aWYoMj09PXQubGVuZ3RoKXtjb25zdFtlLHJdPXQ7cmV0dXJuIGU/bi53aXRoU2V0U2NvcGUoZSxyKTpuLndpdGhTY29wZShyKX1yZXR1cm4gbi53aXRoU2NvcGUodFswXSl9KChuPT4obi5zZXRTREtQcm9jZXNzaW5nTWV0YWRhdGEoe1tIdF06ITB9KSx0KCkpKSl9dmFyIFd0O2Z1bmN0aW9uIFl0KHQpe3JldHVybiBuZXcgS3QoKG49PntuKHQpfSkpfSFmdW5jdGlvbih0KXt0W3QuUEVORElORz0wXT0iUEVORElORyI7dFt0LlJFU09MVkVEPTFdPSJSRVNPTFZFRCI7dFt0LlJFSkVDVEVEPTJdPSJSRUpFQ1RFRCJ9KFd0fHwoV3Q9e30pKTtjbGFzcyBLdHtjb25zdHJ1Y3Rvcih0KXt0aGlzLkw9V3QuUEVORElORyx0aGlzLkI9W10sdGhpcy5HKHQpfXRoZW4odCxuKXtyZXR1cm4gbmV3IEt0KCgoZSxyKT0+e3RoaXMuQi5wdXNoKFshMSxuPT57aWYodCl0cnl7ZSh0KG4pKX1jYXRjaCh0KXtyKHQpfWVsc2UgZShuKX0sdD0+e2lmKG4pdHJ5e2Uobih0KSl9Y2F0Y2godCl7cih0KX1lbHNlIHIodCl9XSksdGhpcy5KKCl9KSl9Y2F0Y2godCl7cmV0dXJuIHRoaXMudGhlbigodD0+dCksdCl9ZmluYWxseSh0KXtyZXR1cm4gbmV3IEt0KCgobixlKT0+e2xldCByLG87cmV0dXJuIHRoaXMudGhlbigobj0+e289ITEscj1uLHQmJnQoKX0pLChuPT57bz0hMCxyPW4sdCYmdCgpfSkpLnRoZW4oKCgpPT57bz9lKHIpOm4ocil9KSl9KSl9Sigpe2lmKHRoaXMuTD09PVd0LlBFTkRJTkcpcmV0dXJuO2NvbnN0IHQ9dGhpcy5CLnNsaWNlKCk7dGhpcy5CPVtdLHQuZm9yRWFjaCgodD0+e3RbMF18fCh0aGlzLkw9PT1XdC5SRVNPTFZFRCYmdFsxXSh0aGlzLkgpLHRoaXMuTD09PVd0LlJFSkVDVEVEJiZ0WzJdKHRoaXMuSCksdFswXT0hMCl9KSl9Ryh0KXtjb25zdCBuPSh0LG4pPT57dGhpcy5MPT09V3QuUEVORElORyYmKHcobik/bi50aGVuKGUscik6KHRoaXMuTD10LHRoaXMuSD1uLHRoaXMuSigpKSl9LGU9dD0+e24oV3QuUkVTT0xWRUQsdCl9LHI9dD0+e24oV3QuUkVKRUNURUQsdCl9O3RyeXt0KGUscil9Y2F0Y2godCl7cih0KX19fWZ1bmN0aW9uIFZ0KHQsbil7Y29uc3R7ZmluZ2VycHJpbnQ6ZSxzcGFuOnIsYnJlYWRjcnVtYnM6byxzZGtQcm9jZXNzaW5nTWV0YWRhdGE6c309bjshZnVuY3Rpb24odCxuKXtjb25zdHtleHRyYTplLHRhZ3M6cix1c2VyOm8sY29udGV4dHM6cyxsZXZlbDppLHRyYW5zYWN0aW9uTmFtZTpjfT1uO09iamVjdC5rZXlzKGUpLmxlbmd0aCYmKHQuZXh0cmE9ey4uLmUsLi4udC5leHRyYX0pO09iamVjdC5rZXlzKHIpLmxlbmd0aCYmKHQudGFncz17Li4uciwuLi50LnRhZ3N9KTtPYmplY3Qua2V5cyhvKS5sZW5ndGgmJih0LnVzZXI9ey4uLm8sLi4udC51c2VyfSk7T2JqZWN0LmtleXMocykubGVuZ3RoJiYodC5jb250ZXh0cz17Li4ucywuLi50LmNvbnRleHRzfSk7aSYmKHQubGV2ZWw9aSk7YyYmInRyYW5zYWN0aW9uIiE9PXQudHlwZSYmKHQudHJhbnNhY3Rpb249Yyl9KHQsbiksciYmZnVuY3Rpb24odCxuKXt0LmNvbnRleHRzPXt0cmFjZTptdChuKSwuLi50LmNvbnRleHRzfSx0LnNka1Byb2Nlc3NpbmdNZXRhZGF0YT17ZHluYW1pY1NhbXBsaW5nQ29udGV4dDpPdChuKSwuLi50LnNka1Byb2Nlc3NpbmdNZXRhZGF0YX07Y29uc3QgZT1TdChuKSxyPV90KGUpLmRlc2NyaXB0aW9uO3ImJiF0LnRyYW5zYWN0aW9uJiYidHJhbnNhY3Rpb24iPT09dC50eXBlJiYodC50cmFuc2FjdGlvbj1yKX0odCxyKSxmdW5jdGlvbih0LG4pe3QuZmluZ2VycHJpbnQ9dC5maW5nZXJwcmludD9BcnJheS5pc0FycmF5KHQuZmluZ2VycHJpbnQpP3QuZmluZ2VycHJpbnQ6W3QuZmluZ2VycHJpbnRdOltdLG4mJih0LmZpbmdlcnByaW50PXQuZmluZ2VycHJpbnQuY29uY2F0KG4pKTt0LmZpbmdlcnByaW50Lmxlbmd0aHx8ZGVsZXRlIHQuZmluZ2VycHJpbnR9KHQsZSksZnVuY3Rpb24odCxuKXtjb25zdCBlPVsuLi50LmJyZWFkY3J1bWJzfHxbXSwuLi5uXTt0LmJyZWFkY3J1bWJzPWUubGVuZ3RoP2U6dm9pZCAwfSh0LG8pLGZ1bmN0aW9uKHQsbil7dC5zZGtQcm9jZXNzaW5nTWV0YWRhdGE9ey4uLnQuc2RrUHJvY2Vzc2luZ01ldGFkYXRhLC4uLm59fSh0LHMpfWNvbnN0IFp0PSI3Ijtjb25zdCBxdD1TeW1ib2wuZm9yKCJTZW50cnlCdWZmZXJGdWxsRXJyb3IiKTtmdW5jdGlvbiBRdCh0KXtjb25zdCBuPVtdO2Z1bmN0aW9uIGUodCl7cmV0dXJuIG4uc3BsaWNlKG4uaW5kZXhPZih0KSwxKVswXXx8UHJvbWlzZS5yZXNvbHZlKHZvaWQgMCl9cmV0dXJueyQ6bixhZGQ6ZnVuY3Rpb24ocil7aWYoISh2b2lkIDA9PT10fHxuLmxlbmd0aDx0KSlyZXR1cm4gbz1xdCxuZXcgS3QoKCh0LG4pPT57bihvKX0pKTt2YXIgbztjb25zdCBzPXIoKTtyZXR1cm4tMT09PW4uaW5kZXhPZihzKSYmbi5wdXNoKHMpLHMudGhlbigoKCk9PmUocykpKS50aGVuKG51bGwsKCgpPT5lKHMpLnRoZW4obnVsbCwoKCk9Pnt9KSkpKSxzfSxkcmFpbjpmdW5jdGlvbih0KXtyZXR1cm4gbmV3IEt0KCgoZSxyKT0+e2xldCBvPW4ubGVuZ3RoO2lmKCFvKXJldHVybiBlKCEwKTtjb25zdCBzPXNldFRpbWVvdXQoKCgpPT57dCYmdD4wJiZlKCExKX0pLHQpO24uZm9yRWFjaCgodD0+e1l0KHQpLnRoZW4oKCgpPT57LS1vfHwoY2xlYXJUaW1lb3V0KHMpLGUoITApKX0pLHIpfSkpfSkpfX19Y29uc3QgWHQ9NmU0O2Z1bmN0aW9uIHRuKHQse3N0YXR1c0NvZGU6bixoZWFkZXJzOmV9LHI9RGF0ZS5ub3coKSl7Y29uc3Qgbz17Li4udH0scz1lPy5bIngtc2VudHJ5LXJhdGUtbGltaXRzIl0saT1lPy5bInJldHJ5LWFmdGVyIl07aWYocylmb3IoY29uc3QgdCBvZiBzLnRyaW0oKS5zcGxpdCgiLCIpKXtjb25zdFtuLGUsLCxzXT10LnNwbGl0KCI6Iiw1KSxpPXBhcnNlSW50KG4sMTApLGM9MWUzKihpc05hTihpKT82MDppKTtpZihlKWZvcihjb25zdCB0IG9mIGUuc3BsaXQoIjsiKSkibWV0cmljX2J1Y2tldCI9PT10JiZzJiYhcy5zcGxpdCgiOyIpLmluY2x1ZGVzKCJjdXN0b20iKXx8KG9bdF09citjKTtlbHNlIG8uYWxsPXIrY31lbHNlIGk/by5hbGw9citmdW5jdGlvbih0LG49RGF0ZS5ub3coKSl7Y29uc3QgZT1wYXJzZUludChgJHt0fWAsMTApO2lmKCFpc05hTihlKSlyZXR1cm4gMWUzKmU7Y29uc3Qgcj1EYXRlLnBhcnNlKGAke3R9YCk7cmV0dXJuIGlzTmFOKHIpP1h0OnItbn0oaSxyKTo0Mjk9PT1uJiYoby5hbGw9cis2ZTQpO3JldHVybiBvfWNvbnN0IG5uPTY0O2Z1bmN0aW9uIGVuKHQsbixlPVF0KHQuYnVmZmVyU2l6ZXx8bm4pKXtsZXQgcj17fTtyZXR1cm57c2VuZDpmdW5jdGlvbih0KXtjb25zdCBvPVtdO2lmKE10KHQsKCh0LG4pPT57Y29uc3QgZT1mdW5jdGlvbih0KXtyZXR1cm4gR3RbdF19KG4pOyhmdW5jdGlvbih0LG4sZT1EYXRlLm5vdygpKXtyZXR1cm4gZnVuY3Rpb24odCxuKXtyZXR1cm4gdFtuXXx8dC5hbGx8fDB9KHQsbik+ZX0pKHIsZSl8fG8ucHVzaCh0KX0pKSwwPT09by5sZW5ndGgpcmV0dXJuIFl0KHt9KTtjb25zdCBzPVV0KHRbMF0sbyksaT10PT57TXQocywoKHQsbik9Pnt9KSl9O3JldHVybiBlLmFkZCgoKCk9Pm4oe2JvZHk6QnQocyl9KS50aGVuKCh0PT4odm9pZCAwIT09dC5zdGF0dXNDb2RlJiYodC5zdGF0dXNDb2RlPDIwMHx8dC5zdGF0dXNDb2RlPj0zMDApJiZoJiZrLndhcm4oYFNlbnRyeSByZXNwb25kZWQgd2l0aCBzdGF0dXMgY29kZSAke3Quc3RhdHVzQ29kZX0gdG8gc2VudCBldmVudC5gKSxyPXRuKHIsdCksdCkpLCh0PT57dGhyb3cgaSgpLGgmJmsuZXJyb3IoIkVuY291bnRlcmVkIGVycm9yIHJ1bm5pbmcgdHJhbnNwb3J0IHJlcXVlc3Q6Iix0KSx0fSkpKSkudGhlbigodD0+dCksKHQ9PntpZih0PT09cXQpcmV0dXJuIGgmJmsuZXJyb3IoIlNraXBwZWQgc2VuZGluZyBldmVudCBiZWNhdXNlIGJ1ZmZlciBpcyBmdWxsLiIpLGkoKSxZdCh7fSk7dGhyb3cgdH0pKX0sZmx1c2g6dD0+ZS5kcmFpbih0KX19Y29uc3Qgcm49L14oXFMrOlxcfFwvPykoW1xzXFNdKj8pKCg/OlwuezEsMn18W14vXFxdKz98KShcLlteLi9cXF0qfCkpKD86Wy9cXF0qKSQvO2Z1bmN0aW9uIG9uKHQpe2NvbnN0IG49ZnVuY3Rpb24odCl7Y29uc3Qgbj10Lmxlbmd0aD4xMDI0P2A8dHJ1bmNhdGVkPiR7dC5zbGljZSgtMTAyNCl9YDp0LGU9cm4uZXhlYyhuKTtyZXR1cm4gZT9lLnNsaWNlKDEpOltdfSh0KSxlPW5bMF18fCIiO2xldCByPW5bMV07cmV0dXJuIGV8fHI/KHImJihyPXIuc2xpY2UoMCxyLmxlbmd0aC0xKSksZStyKToiLiJ9ZnVuY3Rpb24gc24odCxuPSExKXtyZXR1cm4hKG58fHQmJiF0LnN0YXJ0c1dpdGgoIi8iKSYmIXQubWF0Y2goL15bQS1aXTovKSYmIXQuc3RhcnRzV2l0aCgiLiIpJiYhdC5tYXRjaCgvXlthLXpBLVpdKFthLXpBLVowLTkuXC0rXSkqOlwvXC8vKSkmJnZvaWQgMCE9PXQmJiF0LmluY2x1ZGVzKCJub2RlX21vZHVsZXMvIil9Y29uc3QgY249U3ltYm9sKCJBZ2VudEJhc2VJbnRlcm5hbFN0YXRlIik7Y2xhc3MgdW4gZXh0ZW5kcyBzLkFnZW50e2NvbnN0cnVjdG9yKHQpe3N1cGVyKHQpLHRoaXNbY25dPXt9fWlzU2VjdXJlRW5kcG9pbnQodCl7aWYodCl7aWYoImJvb2xlYW4iPT10eXBlb2YgdC5zZWN1cmVFbmRwb2ludClyZXR1cm4gdC5zZWN1cmVFbmRwb2ludDtpZigic3RyaW5nIj09dHlwZW9mIHQucHJvdG9jb2wpcmV0dXJuImh0dHBzOiI9PT10LnByb3RvY29sfWNvbnN0e3N0YWNrOm59PW5ldyBFcnJvcjtyZXR1cm4ic3RyaW5nIj09dHlwZW9mIG4mJm4uc3BsaXQoIlxuIikuc29tZSgodD0+LTEhPT10LmluZGV4T2YoIihodHRwcy5qczoiKXx8LTEhPT10LmluZGV4T2YoIm5vZGU6aHR0cHM6IikpKX1jcmVhdGVTb2NrZXQodCxuLGUpe2NvbnN0IHI9ey4uLm4sc2VjdXJlRW5kcG9pbnQ6dGhpcy5pc1NlY3VyZUVuZHBvaW50KG4pfTtQcm9taXNlLnJlc29sdmUoKS50aGVuKCgoKT0+dGhpcy5jb25uZWN0KHQscikpKS50aGVuKChvPT57aWYobyBpbnN0YW5jZW9mIHMuQWdlbnQpcmV0dXJuIG8uYWRkUmVxdWVzdCh0LHIpO3RoaXNbY25dLmN1cnJlbnRTb2NrZXQ9byxzdXBlci5jcmVhdGVTb2NrZXQodCxuLGUpfSksZSl9Y3JlYXRlQ29ubmVjdGlvbigpe2NvbnN0IHQ9dGhpc1tjbl0uY3VycmVudFNvY2tldDtpZih0aGlzW2NuXS5jdXJyZW50U29ja2V0PXZvaWQgMCwhdCl0aHJvdyBuZXcgRXJyb3IoIk5vIHNvY2tldCB3YXMgcmV0dXJuZWQgaW4gdGhlIGBjb25uZWN0KClgIGZ1bmN0aW9uIik7cmV0dXJuIHR9Z2V0IGRlZmF1bHRQb3J0KCl7cmV0dXJuIHRoaXNbY25dLmRlZmF1bHRQb3J0Pz8oImh0dHBzOiI9PT10aGlzLnByb3RvY29sPzQ0Mzo4MCl9c2V0IGRlZmF1bHRQb3J0KHQpe3RoaXNbY25dJiYodGhpc1tjbl0uZGVmYXVsdFBvcnQ9dCl9Z2V0IHByb3RvY29sKCl7cmV0dXJuIHRoaXNbY25dLnByb3RvY29sPz8odGhpcy5pc1NlY3VyZUVuZHBvaW50KCk/Imh0dHBzOiI6Imh0dHA6Iil9c2V0IHByb3RvY29sKHQpe3RoaXNbY25dJiYodGhpc1tjbl0ucHJvdG9jb2w9dCl9fWZ1bmN0aW9uIGFuKC4uLnQpe2subG9nKCJbaHR0cHMtcHJveHktYWdlbnQ6cGFyc2UtcHJveHktcmVzcG9uc2VdIiwuLi50KX1mdW5jdGlvbiBmbih0KXtyZXR1cm4gbmV3IFByb21pc2UoKChuLGUpPT57bGV0IHI9MDtjb25zdCBvPVtdO2Z1bmN0aW9uIHMoKXtjb25zdCBjPXQucmVhZCgpO2M/ZnVuY3Rpb24oYyl7by5wdXNoKGMpLHIrPWMubGVuZ3RoO2NvbnN0IHU9QnVmZmVyLmNvbmNhdChvLHIpLGE9dS5pbmRleE9mKCJcclxuXHJcbiIpO2lmKC0xPT09YSlyZXR1cm4gYW4oImhhdmUgbm90IHJlY2VpdmVkIGVuZCBvZiBIVFRQIGhlYWRlcnMgeWV0Li4uIiksdm9pZCBzKCk7Y29uc3QgZj11LnN1YmFycmF5KDAsYSkudG9TdHJpbmcoImFzY2lpIikuc3BsaXQoIlxyXG4iKSxoPWYuc2hpZnQoKTtpZighaClyZXR1cm4gdC5kZXN0cm95KCksZShuZXcgRXJyb3IoIk5vIGhlYWRlciByZWNlaXZlZCBmcm9tIHByb3h5IENPTk5FQ1QgcmVzcG9uc2UiKSk7Y29uc3QgcD1oLnNwbGl0KCIgIiksbD0rKHBbMV18fDApLGQ9cC5zbGljZSgyKS5qb2luKCIgIiksbT17fTtmb3IoY29uc3QgbiBvZiBmKXtpZighbiljb250aW51ZTtjb25zdCByPW4uaW5kZXhPZigiOiIpO2lmKC0xPT09cilyZXR1cm4gdC5kZXN0cm95KCksZShuZXcgRXJyb3IoYEludmFsaWQgaGVhZGVyIGZyb20gcHJveHkgQ09OTkVDVCByZXNwb25zZTogIiR7bn0iYCkpO2NvbnN0IG89bi5zbGljZSgwLHIpLnRvTG93ZXJDYXNlKCkscz1uLnNsaWNlKHIrMSkudHJpbVN0YXJ0KCksaT1tW29dOyJzdHJpbmciPT10eXBlb2YgaT9tW29dPVtpLHNdOkFycmF5LmlzQXJyYXkoaSk/aS5wdXNoKHMpOm1bb109c31hbigiZ290IHByb3h5IHNlcnZlciByZXNwb25zZTogJW8gJW8iLGgsbSksaSgpLG4oe2Nvbm5lY3Q6e3N0YXR1c0NvZGU6bCxzdGF0dXNUZXh0OmQsaGVhZGVyczptfSxidWZmZXJlZDp1fSl9KGMpOnQub25jZSgicmVhZGFibGUiLHMpfWZ1bmN0aW9uIGkoKXt0LnJlbW92ZUxpc3RlbmVyKCJlbmQiLGMpLHQucmVtb3ZlTGlzdGVuZXIoImVycm9yIix1KSx0LnJlbW92ZUxpc3RlbmVyKCJyZWFkYWJsZSIscyl9ZnVuY3Rpb24gYygpe2koKSxhbigib25lbmQiKSxlKG5ldyBFcnJvcigiUHJveHkgY29ubmVjdGlvbiBlbmRlZCBiZWZvcmUgcmVjZWl2aW5nIENPTk5FQ1QgcmVzcG9uc2UiKSl9ZnVuY3Rpb24gdSh0KXtpKCksYW4oIm9uZXJyb3IgJW8iLHQpLGUodCl9dC5vbigiZXJyb3IiLHUpLHQub24oImVuZCIsYykscygpfSkpfWZ1bmN0aW9uIGhuKC4uLnQpe2subG9nKCJbaHR0cHMtcHJveHktYWdlbnRdIiwuLi50KX1jbGFzcyBwbiBleHRlbmRzIHVue3N0YXRpYyBfX2luaXRTdGF0aWMoKXt0aGlzLnByb3RvY29scz1bImh0dHAiLCJodHRwcyJdfWNvbnN0cnVjdG9yKHQsbil7c3VwZXIobiksdGhpcy5vcHRpb25zPXt9LHRoaXMucHJveHk9InN0cmluZyI9PXR5cGVvZiB0P25ldyBVUkwodCk6dCx0aGlzLnByb3h5SGVhZGVycz1uPy5oZWFkZXJzPz97fSxobigiQ3JlYXRpbmcgbmV3IEh0dHBzUHJveHlBZ2VudCBpbnN0YW5jZTogJW8iLHRoaXMucHJveHkuaHJlZik7Y29uc3QgZT0odGhpcy5wcm94eS5ob3N0bmFtZXx8dGhpcy5wcm94eS5ob3N0KS5yZXBsYWNlKC9eXFt8XF0kL2csIiIpLHI9dGhpcy5wcm94eS5wb3J0P3BhcnNlSW50KHRoaXMucHJveHkucG9ydCwxMCk6Imh0dHBzOiI9PT10aGlzLnByb3h5LnByb3RvY29sPzQ0Mzo4MDt0aGlzLmNvbm5lY3RPcHRzPXtBTFBOUHJvdG9jb2xzOlsiaHR0cC8xLjEiXSwuLi5uP2RuKG4sImhlYWRlcnMiKTpudWxsLGhvc3Q6ZSxwb3J0OnJ9fWFzeW5jIGNvbm5lY3QodCxuKXtjb25zdHtwcm94eTplfT10aGlzO2lmKCFuLmhvc3QpdGhyb3cgbmV3IFR5cGVFcnJvcignTm8gImhvc3QiIHByb3ZpZGVkJyk7bGV0IHI7aWYoImh0dHBzOiI9PT1lLnByb3RvY29sKXtobigiQ3JlYXRpbmcgYHRscy5Tb2NrZXRgOiAlbyIsdGhpcy5jb25uZWN0T3B0cyk7Y29uc3QgdD10aGlzLmNvbm5lY3RPcHRzLnNlcnZlcm5hbWV8fHRoaXMuY29ubmVjdE9wdHMuaG9zdDtyPWYuY29ubmVjdCh7Li4udGhpcy5jb25uZWN0T3B0cyxzZXJ2ZXJuYW1lOnQmJmEuaXNJUCh0KT92b2lkIDA6dH0pfWVsc2UgaG4oIkNyZWF0aW5nIGBuZXQuU29ja2V0YDogJW8iLHRoaXMuY29ubmVjdE9wdHMpLHI9YS5jb25uZWN0KHRoaXMuY29ubmVjdE9wdHMpO2NvbnN0IG89ImZ1bmN0aW9uIj09dHlwZW9mIHRoaXMucHJveHlIZWFkZXJzP3RoaXMucHJveHlIZWFkZXJzKCk6ey4uLnRoaXMucHJveHlIZWFkZXJzfSxzPWEuaXNJUHY2KG4uaG9zdCk/YFske24uaG9zdH1dYDpuLmhvc3Q7bGV0IGk9YENPTk5FQ1QgJHtzfToke24ucG9ydH0gSFRUUC8xLjFcclxuYDtpZihlLnVzZXJuYW1lfHxlLnBhc3N3b3JkKXtjb25zdCB0PWAke2RlY29kZVVSSUNvbXBvbmVudChlLnVzZXJuYW1lKX06JHtkZWNvZGVVUklDb21wb25lbnQoZS5wYXNzd29yZCl9YDtvWyJQcm94eS1BdXRob3JpemF0aW9uIl09YEJhc2ljICR7QnVmZmVyLmZyb20odCkudG9TdHJpbmcoImJhc2U2NCIpfWB9by5Ib3N0PWAke3N9OiR7bi5wb3J0fWAsb1siUHJveHktQ29ubmVjdGlvbiJdfHwob1siUHJveHktQ29ubmVjdGlvbiJdPXRoaXMua2VlcEFsaXZlPyJLZWVwLUFsaXZlIjoiY2xvc2UiKTtmb3IoY29uc3QgdCBvZiBPYmplY3Qua2V5cyhvKSlpKz1gJHt0fTogJHtvW3RdfVxyXG5gO2NvbnN0IGM9Zm4ocik7ci53cml0ZShgJHtpfVxyXG5gKTtjb25zdHtjb25uZWN0OnUsYnVmZmVyZWQ6aH09YXdhaXQgYztpZih0LmVtaXQoInByb3h5Q29ubmVjdCIsdSksdGhpcy5lbWl0KCJwcm94eUNvbm5lY3QiLHUsdCksMjAwPT09dS5zdGF0dXNDb2RlKXtpZih0Lm9uY2UoInNvY2tldCIsbG4pLG4uc2VjdXJlRW5kcG9pbnQpe2huKCJVcGdyYWRpbmcgc29ja2V0IGNvbm5lY3Rpb24gdG8gVExTIik7Y29uc3QgdD1uLnNlcnZlcm5hbWV8fG4uaG9zdDtyZXR1cm4gZi5jb25uZWN0KHsuLi5kbihuLCJob3N0IiwicGF0aCIsInBvcnQiKSxzb2NrZXQ6cixzZXJ2ZXJuYW1lOmEuaXNJUCh0KT92b2lkIDA6dH0pfXJldHVybiByfXIuZGVzdHJveSgpO2NvbnN0IHA9bmV3IGEuU29ja2V0KHt3cml0YWJsZTohMX0pO3JldHVybiBwLnJlYWRhYmxlPSEwLHQub25jZSgic29ja2V0IiwodD0+e2huKCJSZXBsYXlpbmcgcHJveHkgYnVmZmVyIGZvciBmYWlsZWQgcmVxdWVzdCIpLHQucHVzaChoKSx0LnB1c2gobnVsbCl9KSkscH19ZnVuY3Rpb24gbG4odCl7dC5yZXN1bWUoKX1mdW5jdGlvbiBkbih0LC4uLm4pe2NvbnN0IGU9e307bGV0IHI7Zm9yKHIgaW4gdCluLmluY2x1ZGVzKHIpfHwoZVtyXT10W3JdKTtyZXR1cm4gZX1wbi5fX2luaXRTdGF0aWMoKTtjb25zdCBtbj0zMjc2ODtmdW5jdGlvbiBnbih0KXtyZXR1cm4gdC5yZXBsYWNlKC9eW0EtWl06LywiIikucmVwbGFjZSgvXFwvZywiLyIpfWNvbnN0IHluPW47bGV0IGJuLF9uPTAsdm49e307ZnVuY3Rpb24gd24odCl7eW4uZGVidWcmJmNvbnNvbGUubG9nKGBbQU5SIFdvcmtlcl0gJHt0fWApfXZhciBTbiwkbixFbjtjb25zdCB4bj1mdW5jdGlvbih0KXtsZXQgbjt0cnl7bj1uZXcgVVJMKHQudXJsKX1jYXRjaChuKXtyZXR1cm4gVCgoKCk9Pntjb25zb2xlLndhcm4oIltAc2VudHJ5L25vZGVdOiBJbnZhbGlkIGRzbiBvciB0dW5uZWwgb3B0aW9uLCB3aWxsIG5vdCBzZW5kIGFueSBldmVudHMuIFRoZSB0dW5uZWwgb3B0aW9uIG11c3QgYmUgYSBmdWxsIFVSTCB3aGVuIHVzZWQuIil9KSksZW4odCwoKCk9PlByb21pc2UucmVzb2x2ZSh7fSkpKX1jb25zdCBlPSJodHRwczoiPT09bi5wcm90b2NvbCxyPWZ1bmN0aW9uKHQsbil7Y29uc3R7bm9fcHJveHk6ZX09cHJvY2Vzcy5lbnYscj1lPy5zcGxpdCgiLCIpLnNvbWUoKG49PnQuaG9zdC5lbmRzV2l0aChuKXx8dC5ob3N0bmFtZS5lbmRzV2l0aChuKSkpO3JldHVybiByP3ZvaWQgMDpufShuLHQucHJveHl8fChlP3Byb2Nlc3MuZW52Lmh0dHBzX3Byb3h5OnZvaWQgMCl8fHByb2Nlc3MuZW52Lmh0dHBfcHJveHkpLG89ZT9pOnMsYT12b2lkIDAhPT10LmtlZXBBbGl2ZSYmdC5rZWVwQWxpdmUsZj1yP25ldyBwbihyKTpuZXcgby5BZ2VudCh7a2VlcEFsaXZlOmEsbWF4U29ja2V0czozMCx0aW1lb3V0OjJlM30pLGg9ZnVuY3Rpb24odCxuLGUpe2NvbnN0e2hvc3RuYW1lOnIscGF0aG5hbWU6byxwb3J0OnMscHJvdG9jb2w6aSxzZWFyY2g6YX09bmV3IFVSTCh0LnVybCk7cmV0dXJuIGZ1bmN0aW9uKGYpe3JldHVybiBuZXcgUHJvbWlzZSgoKGgscCk9PntGdCgoKCk9PntsZXQgbD1mdW5jdGlvbih0KXtyZXR1cm4gbmV3IGMoe3JlYWQoKXt0aGlzLnB1c2godCksdGhpcy5wdXNoKG51bGwpfX0pfShmLmJvZHkpO2NvbnN0IGQ9ey4uLnQuaGVhZGVyc307Zi5ib2R5Lmxlbmd0aD5tbiYmKGRbImNvbnRlbnQtZW5jb2RpbmciXT0iZ3ppcCIsbD1sLnBpcGUodSgpKSk7Y29uc3QgbT1uLnJlcXVlc3Qoe21ldGhvZDoiUE9TVCIsYWdlbnQ6ZSxoZWFkZXJzOmQsaG9zdG5hbWU6cixwYXRoOmAke299JHthfWAscG9ydDpzLHByb3RvY29sOmksY2E6dC5jYUNlcnRzfSwodD0+e3Qub24oImRhdGEiLCgoKT0+e30pKSx0Lm9uKCJlbmQiLCgoKT0+e30pKSx0LnNldEVuY29kaW5nKCJ1dGY4Iik7Y29uc3Qgbj10LmhlYWRlcnNbInJldHJ5LWFmdGVyIl0/P251bGwsZT10LmhlYWRlcnNbIngtc2VudHJ5LXJhdGUtbGltaXRzIl0/P251bGw7aCh7c3RhdHVzQ29kZTp0LnN0YXR1c0NvZGUsaGVhZGVyczp7InJldHJ5LWFmdGVyIjpuLCJ4LXNlbnRyeS1yYXRlLWxpbWl0cyI6QXJyYXkuaXNBcnJheShlKT9lWzBdfHxudWxsOmV9fSl9KSk7bS5vbigiZXJyb3IiLHApLGwucGlwZShtKX0pKX0pKX19KHQsdC5odHRwTW9kdWxlPz9vLGYpO3JldHVybiBlbih0LGgpfSh7dXJsOihTbj15bi5kc24sJG49eW4udHVubmVsLEVuPXluLnNka01ldGFkYXRhLnNkaywkbnx8YCR7ZnVuY3Rpb24odCl7cmV0dXJuYCR7ZnVuY3Rpb24odCl7Y29uc3Qgbj10LnByb3RvY29sP2Ake3QucHJvdG9jb2x9OmA6IiIsZT10LnBvcnQ/YDoke3QucG9ydH1gOiIiO3JldHVybmAke259Ly8ke3QuaG9zdH0ke2V9JHt0LnBhdGg/YC8ke3QucGF0aH1gOiIifS9hcGkvYH0odCl9JHt0LnByb2plY3RJZH0vZW52ZWxvcGUvYH0oU24pfT8ke2Z1bmN0aW9uKHQsbil7Y29uc3QgZT17c2VudHJ5X3ZlcnNpb246WnR9O3JldHVybiB0LnB1YmxpY0tleSYmKGUuc2VudHJ5X2tleT10LnB1YmxpY0tleSksbiYmKGUuc2VudHJ5X2NsaWVudD1gJHtuLm5hbWV9LyR7bi52ZXJzaW9ufWApLG5ldyBVUkxTZWFyY2hQYXJhbXMoZSkudG9TdHJpbmcoKX0oU24sRW4pfWApfSk7YXN5bmMgZnVuY3Rpb24gTm4oKXtpZihibil7d24oIlNlbmRpbmcgYWJub3JtYWwgc2Vzc2lvbiIpLEwoYm4se3N0YXR1czoiYWJub3JtYWwiLGFibm9ybWFsX21lY2hhbmlzbToiYW5yX2ZvcmVncm91bmQiLHJlbGVhc2U6eW4ucmVsZWFzZSxlbnZpcm9ubWVudDp5bi5lbnZpcm9ubWVudH0pO2NvbnN0IHQ9ZnVuY3Rpb24odCxuLGUscil7Y29uc3Qgbz1KdChlKTtyZXR1cm4gVXQoe3NlbnRfYXQ6KG5ldyBEYXRlKS50b0lTT1N0cmluZygpLC4uLm8mJntzZGs6b30sLi4uISFyJiZuJiZ7ZHNuOmp0KG4pfX0sWyJhZ2dyZWdhdGVzImluIHQ/W3t0eXBlOiJzZXNzaW9ucyJ9LHRdOlt7dHlwZToic2Vzc2lvbiJ9LHQudG9KU09OKCldXSl9KGJuLHluLmRzbix5bi5zZGtNZXRhZGF0YSx5bi50dW5uZWwpO3duKEpTT04uc3RyaW5naWZ5KHQpKSxhd2FpdCB4bi5zZW5kKHQpO3RyeXtlPy5wb3N0TWVzc2FnZSgic2Vzc2lvbi1lbmRlZCIpfWNhdGNoKHQpe319fWZ1bmN0aW9uIENuKHQpe2lmKCF0KXJldHVybjtjb25zdCBuPWZ1bmN0aW9uKHQpe2lmKCF0Lmxlbmd0aClyZXR1cm5bXTtjb25zdCBuPUFycmF5LmZyb20odCk7cmV0dXJuL3NlbnRyeVdyYXBwZWQvLnRlc3QoTnQobikuZnVuY3Rpb258fCIiKSYmbi5wb3AoKSxuLnJldmVyc2UoKSx4dC50ZXN0KE50KG4pLmZ1bmN0aW9ufHwiIikmJihuLnBvcCgpLHh0LnRlc3QoTnQobikuZnVuY3Rpb258fCIiKSYmbi5wb3AoKSksbi5zbGljZSgwLCR0KS5tYXAoKHQ9Pih7Li4udCxmaWxlbmFtZTp0LmZpbGVuYW1lfHxOdChuKS5maWxlbmFtZSxmdW5jdGlvbjp0LmZ1bmN0aW9ufHxFdH0pKSl9KHQpO2lmKHluLmFwcFJvb3RQYXRoKWZvcihjb25zdCB0IG9mIG4pdC5maWxlbmFtZSYmKHQuZmlsZW5hbWU9UHQodC5maWxlbmFtZSx5bi5hcHBSb290UGF0aCkpO3JldHVybiBufWFzeW5jIGZ1bmN0aW9uIFRuKHQsbil7aWYoX24+PXluLm1heEFuckV2ZW50cylyZXR1cm47X24rPTEsYXdhaXQgTm4oKSx3bigiU2VuZGluZyBldmVudCIpO2NvbnN0IGU9e2V2ZW50X2lkOkQoKSxjb250ZXh0czp5bi5jb250ZXh0cyxyZWxlYXNlOnluLnJlbGVhc2UsZW52aXJvbm1lbnQ6eW4uZW52aXJvbm1lbnQsZGlzdDp5bi5kaXN0LHBsYXRmb3JtOiJub2RlIixsZXZlbDoiZXJyb3IiLGV4Y2VwdGlvbjp7dmFsdWVzOlt7dHlwZToiQXBwbGljYXRpb25Ob3RSZXNwb25kaW5nIix2YWx1ZTpgQXBwbGljYXRpb24gTm90IFJlc3BvbmRpbmcgZm9yIGF0IGxlYXN0ICR7eW4uYW5yVGhyZXNob2xkfSBtc2Asc3RhY2t0cmFjZTp7ZnJhbWVzOkNuKHQpfSxtZWNoYW5pc206e3R5cGU6IkFOUiJ9fV19LHRhZ3M6eW4uc3RhdGljVGFnc307biYmZnVuY3Rpb24odCxuKXtpZihWdCh0LG4pLCF0LmNvbnRleHRzPy50cmFjZSl7Y29uc3R7dHJhY2VJZDplLHBhcmVudFNwYW5JZDpyLHByb3BhZ2F0aW9uU3BhbklkOm99PW4ucHJvcGFnYXRpb25Db250ZXh0O3QuY29udGV4dHM9e3RyYWNlOnt0cmFjZV9pZDplLHNwYW5faWQ6b3x8RigpLHBhcmVudF9zcGFuX2lkOnJ9LC4uLnQuY29udGV4dHN9fX0oZSxuKSxmdW5jdGlvbih0KXtpZigwPT09T2JqZWN0LmtleXModm4pLmxlbmd0aClyZXR1cm47Y29uc3Qgbj15bi5hcHBSb290UGF0aD97fTp2bjtpZih5bi5hcHBSb290UGF0aClmb3IoY29uc3RbdCxlXW9mIE9iamVjdC5lbnRyaWVzKHZuKSluW1B0KHQseW4uYXBwUm9vdFBhdGgpXT1lO2NvbnN0IGU9bmV3IE1hcDtmb3IoY29uc3QgciBvZiB0LmV4Y2VwdGlvbj8udmFsdWVzfHxbXSlmb3IoY29uc3QgdCBvZiByLnN0YWNrdHJhY2U/LmZyYW1lc3x8W10pe2NvbnN0IHI9dC5hYnNfcGF0aHx8dC5maWxlbmFtZTtyJiZuW3JdJiZlLnNldChyLG5bcl0pfWlmKGUuc2l6ZT4wKXtjb25zdCBuPVtdO2Zvcihjb25zdFt0LHJdb2YgZS5lbnRyaWVzKCkpbi5wdXNoKHt0eXBlOiJzb3VyY2VtYXAiLGNvZGVfZmlsZTp0LGRlYnVnX2lkOnJ9KTt0LmRlYnVnX21ldGE9e2ltYWdlczpufX19KGUpO2NvbnN0IHI9enQoZSx5bi5kc24seW4uc2RrTWV0YWRhdGEseW4udHVubmVsKTt3bihKU09OLnN0cmluZ2lmeShyKSksYXdhaXQgeG4uc2VuZChyKSxhd2FpdCB4bi5mbHVzaCgyZTMpLF9uPj15bi5tYXhBbnJFdmVudHMmJnNldFRpbWVvdXQoKCgpPT57cHJvY2Vzcy5leGl0KDApfSksNWUzKX1sZXQga247aWYod24oIlN0YXJ0ZWQiKSx5bi5jYXB0dXJlU3RhY2tUcmFjZSl7d24oIkNvbm5lY3RpbmcgdG8gZGVidWdnZXIiKTtjb25zdCBuPW5ldyB0O24uY29ubmVjdFRvTWFpblRocmVhZCgpLHduKCJDb25uZWN0ZWQgdG8gZGVidWdnZXIiKTtjb25zdCBlPW5ldyBNYXA7bi5vbigiRGVidWdnZXIuc2NyaXB0UGFyc2VkIiwodD0+e2Uuc2V0KHQucGFyYW1zLnNjcmlwdElkLHQucGFyYW1zLnVybCl9KSksbi5vbigiRGVidWdnZXIucGF1c2VkIiwodD0+e2lmKCJvdGhlciI9PT10LnBhcmFtcy5yZWFzb24pdHJ5e3duKCJEZWJ1Z2dlciBwYXVzZWQiKTtjb25zdCBzPVsuLi50LnBhcmFtcy5jYWxsRnJhbWVzXSxpPXluLmFwcFJvb3RQYXRoP2Z1bmN0aW9uKHQ9KHByb2Nlc3MuYXJndlsxXT9vbihwcm9jZXNzLmFyZ3ZbMV0pOnByb2Nlc3MuY3dkKCkpLG49IlxcIj09PW8pe2NvbnN0IGU9bj9nbih0KTp0O3JldHVybiB0PT57aWYoIXQpcmV0dXJuO2NvbnN0IG89bj9nbih0KTp0O2xldHtkaXI6cyxiYXNlOmksZXh0OmN9PXIucGFyc2Uobyk7Ii5qcyIhPT1jJiYiLm1qcyIhPT1jJiYiLmNqcyIhPT1jfHwoaT1pLnNsaWNlKDAsLTEqYy5sZW5ndGgpKTtjb25zdCB1PWRlY29kZVVSSUNvbXBvbmVudChpKTtzfHwocz0iLiIpO2NvbnN0IGE9cy5sYXN0SW5kZXhPZigiL25vZGVfbW9kdWxlcyIpO2lmKGE+LTEpcmV0dXJuYCR7cy5zbGljZShhKzE0KS5yZXBsYWNlKC9cLy9nLCIuIil9OiR7dX1gO2lmKHMuc3RhcnRzV2l0aChlKSl7Y29uc3QgdD1zLnNsaWNlKGUubGVuZ3RoKzEpLnJlcGxhY2UoL1wvL2csIi4iKTtyZXR1cm4gdD9gJHt0fToke3V9YDp1fXJldHVybiB1fX0oeW4uYXBwUm9vdFBhdGgpOigpPT57fSxjPXMubWFwKCh0PT5mdW5jdGlvbih0LG4sZSl7Y29uc3Qgcj1uP24ucmVwbGFjZSgvXmZpbGU6XC9cLy8sIiIpOnZvaWQgMCxvPXQubG9jYXRpb24uY29sdW1uTnVtYmVyP3QubG9jYXRpb24uY29sdW1uTnVtYmVyKzE6dm9pZCAwLHM9dC5sb2NhdGlvbi5saW5lTnVtYmVyP3QubG9jYXRpb24ubGluZU51bWJlcisxOnZvaWQgMDtyZXR1cm57ZmlsZW5hbWU6cixtb2R1bGU6ZShyKSxmdW5jdGlvbjp0LmZ1bmN0aW9uTmFtZXx8RXQsY29sbm86byxsaW5lbm86cyxpbl9hcHA6cj9zbihyKTp2b2lkIDB9fSh0LGUuZ2V0KHQubG9jYXRpb24uc2NyaXB0SWQpLGkpKSksdT1zZXRUaW1lb3V0KCgoKT0+e1RuKGMpLnRoZW4obnVsbCwoKCk9Pnt3bigiU2VuZGluZyBBTlIgZXZlbnQgZmFpbGVkLiIpfSkpfSksNWUzKTtuLnBvc3QoIlJ1bnRpbWUuZXZhbHVhdGUiLHtleHByZXNzaW9uOiJnbG9iYWwuX19TRU5UUllfR0VUX1NDT1BFU19fKCk7IixzaWxlbnQ6ITAscmV0dXJuQnlWYWx1ZTohMH0sKCh0LGUpPT57dCYmd24oYEVycm9yIGV4ZWN1dGluZyBzY3JpcHQ6ICcke3QubWVzc2FnZX0nYCksY2xlYXJUaW1lb3V0KHUpO2NvbnN0IHI9ZT8ucmVzdWx0P2UucmVzdWx0LnZhbHVlOnZvaWQgMDtuLnBvc3QoIkRlYnVnZ2VyLnJlc3VtZSIpLG4ucG9zdCgiRGVidWdnZXIuZGlzYWJsZSIpLFRuKGMscikudGhlbihudWxsLCgoKT0+e3duKCJTZW5kaW5nIEFOUiBldmVudCBmYWlsZWQuIil9KSl9KSl9Y2F0Y2godCl7dGhyb3cgbi5wb3N0KCJEZWJ1Z2dlci5yZXN1bWUiKSxuLnBvc3QoIkRlYnVnZ2VyLmRpc2FibGUiKSx0fX0pKSxrbj0oKT0+e3RyeXtuLnBvc3QoIkRlYnVnZ2VyLmVuYWJsZSIsKCgpPT57bi5wb3N0KCJEZWJ1Z2dlci5wYXVzZSIpfSkpfWNhdGNoKHQpe319fWNvbnN0e3BvbGw6am59PWZ1bmN0aW9uKHQsbixlLHIpe2NvbnN0IG89dCgpO2xldCBzPSExLGk9ITA7cmV0dXJuIHNldEludGVydmFsKCgoKT0+e2NvbnN0IHQ9by5nZXRUaW1lTXMoKTshMT09PXMmJnQ+bitlJiYocz0hMCxpJiZyKCkpLHQ8bitlJiYocz0hMSl9KSwyMCkse3BvbGw6KCk9PntvLnJlc2V0KCl9LGVuYWJsZWQ6dD0+e2k9dH19fSgoZnVuY3Rpb24oKXtsZXQgdD1wcm9jZXNzLmhydGltZSgpO3JldHVybntnZXRUaW1lTXM6KCk9Pntjb25zdFtuLGVdPXByb2Nlc3MuaHJ0aW1lKHQpO3JldHVybiBNYXRoLmZsb29yKDFlMypuK2UvMWU2KX0scmVzZXQ6KCk9Pnt0PXByb2Nlc3MuaHJ0aW1lKCl9fX0pLHluLnBvbGxJbnRlcnZhbCx5bi5hbnJUaHJlc2hvbGQsKGZ1bmN0aW9uKCl7d24oIldhdGNoZG9nIHRpbWVvdXQiKSxrbj8od24oIlBhdXNpbmcgZGVidWdnZXIgdG8gY2FwdHVyZSBzdGFjayB0cmFjZSIpLGtuKCkpOih3bigiQ2FwdHVyaW5nIGV2ZW50IHdpdGhvdXQgYSBzdGFjayB0cmFjZSIpLFRuKCkudGhlbihudWxsLCgoKT0+e3duKCJTZW5kaW5nIEFOUiBldmVudCBmYWlsZWQgb24gd2F0Y2hkb2cgdGltZW91dC4iKX0pKSl9KSk7ZT8ub24oIm1lc3NhZ2UiLCh0PT57dC5zZXNzaW9uJiYoYm49TSh0LnNlc3Npb24pKSx0LmRlYnVnSW1hZ2VzJiYodm49dC5kZWJ1Z0ltYWdlcyksam4oKX0pKTs=",bD0=50,mD0=5000;function mi(A,...Q){e.log(`[ANR] ${A}`,...Q)}function uD0(){return AQ}function dD0(){let A=nX().getScopeData();return _Z(A,RQ().getScopeData()),_Z(A,sQ().getScopeData()),A.attachments=[],A.eventProcessors=[],A}async function cD0(A){let Q={message:"ANR"},B={};for(let Y of A.getEventProcessors()){if(Q===null)break;Q=await Y(Q,B)}return Q?.contexts||{}}var O4Q="Anr",lD0=(A={})=>{if(UF.major<16||UF.major===16&&UF.minor<17)throw Error("ANR detection requires Node 16.17.0 or later");let Q,B,Y=uD0();return Y.__SENTRY_GET_SCOPES__=dD0,{name:O4Q,startWorker:()=>{if(Q)return;if(B)Q=pD0(B,A)},stopWorker:()=>{if(Q)Q.then((J)=>{J(),Q=void 0})},async setup(J){if(B=J,A.captureStackTrace&&await qK())e.warn("ANR captureStackTrace has been disabled because the debugger was already enabled"),A.captureStackTrace=!1;setImmediate(()=>this.startWorker())}}},P4Q=wA(lD0);async function pD0(A,Q){let B=A.getDsn();if(!B)return()=>{};let Y=await cD0(A);delete Y.app?.app_memory,delete Y.device?.free_memory;let J=A.getOptions(),C=A.getSdkMetadata()||{};if(C.sdk)C.sdk.integrations=J.integrations.map((W)=>W.name);let X={debug:e.isEnabled(),dsn:B,tunnel:J.tunnel,environment:J.environment||"production",release:J.release,dist:J.dist,sdkMetadata:C,appRootPath:Q.appRootPath,pollInterval:Q.pollInterval||bD0,anrThreshold:Q.anrThreshold||mD0,captureStackTrace:!!Q.captureStackTrace,maxAnrEvents:Q.maxAnrEvents||1,staticTags:Q.staticTags||{},contexts:Y};if(X.captureStackTrace){let W=await import("node:inspector");if(!W.url())W.open(0)}let G=new gD0(new URL(`data:application/javascript;base64,${fD0}`),{workerData:X,execArgv:[],env:{...process.env,NODE_OPTIONS:void 0}});process.on("exit",()=>{G.terminate()});let F=setInterval(()=>{try{let W=RQ().getSession(),Z=W?{...W,toJSON:void 0}:void 0;G.postMessage({session:Z,debugImages:KN(J.stackParser)})}catch(W){}},X.pollInterval);return F.unref(),G.on("message",(W)=>{if(W==="session-ended")mi("ANR event sent from ANR worker. Clearing session in this thread."),RQ().setSession(void 0)}),G.once("error",(W)=>{clearInterval(F),mi("ANR worker error",W)}),G.once("exit",(W)=>{clearInterval(F),mi("ANR worker exit",W)}),G.unref(),()=>{G.terminate(),clearInterval(F)}}function T4Q(A){let Q=hA()?.getIntegrationByName(O4Q);if(!Q)return A();Q.stopWorker();let B=A();if(xD0(B))return B.finally(()=>Q.startWorker());return Q.startWorker(),B}var XUQ=qA(o4Q(),1);var e4Q=qA(MB(),1);var t4Q=(A)=>({package:A,"javascript.is_cjs":u5()});function IF(A,Q){let B=hA()?.getOptions();if(!B?.disableInstrumentationWarnings&&!e4Q.isWrapped(A)&&HN()&&X9(B))h0(()=>{if(u5())console.warn(`[Sentry] ${Q} is not instrumented. This is likely because you required/imported ${Q} before calling \`Sentry.init()\`.`);else console.warn(`[Sentry] ${Q} is not instrumented. Please make sure to initialize Sentry in a separate file that you \`--import\` when running node, see: https://docs.sentry.io/platforms/javascript/guides/${Q}/install/esm/.`)}),nX().setContext("missing_instrumentation",t4Q(Q))}var Y1=qA(yA(),1),qP=qA(MB(),1),$6=qA(NB(),1),CUQ=qA(uB(),1);var d5;(function(A){A.EXPRESS_TYPE="express.type";let B="express.name";A.EXPRESS_NAME=B})(d5||(d5={}));var FG;(function(A){A.ROUTER="router";let B="middleware";A.MIDDLEWARE=B;let Y="request_handler";A.REQUEST_HANDLER=Y})(FG||(FG={}));var ni=Symbol("express-layer-patched"),HF="__ot_middlewares";var QUQ=(A,Q)=>{if(Array.isArray(A[HF])===!1)Object.defineProperty(A,HF,{enumerable:!1,value:[]});if(Q===void 0)return;A[HF].push(Q)},BUQ=(A,Q)=>{let B=Q.handle?.stack?.[0];if(B?.route?.path)return`${A}${B.route.path}`;if(B?.handle?.stack)return BUQ(A,B);return A},YUQ=(A,Q,B)=>{if(Q.name==="router"){let Y=BUQ("",Q),J=Y?Y:B||A||"/";return{attributes:{[d5.EXPRESS_NAME]:J,[d5.EXPRESS_TYPE]:FG.ROUTER},name:`router - ${J}`}}else if(Q.name==="bound dispatch"||Q.name==="handle")return{attributes:{[d5.EXPRESS_NAME]:(A||B)??"request handler",[d5.EXPRESS_TYPE]:FG.REQUEST_HANDLER},name:`request handler${Q.path?` - ${A||B}`:""}`};else return{attributes:{[d5.EXPRESS_NAME]:Q.name,[d5.EXPRESS_TYPE]:FG.MIDDLEWARE},name:`middleware - ${Q.name}`}},WN0=(A,Q)=>{if(typeof Q==="string")return Q===A;else if(Q instanceof RegExp)return Q.test(A);else if(typeof Q==="function")return Q(A);else throw TypeError("Pattern is in unsupported datatype")},JUQ=(A,Q,B)=>{if(Array.isArray(B?.ignoreLayersType)&&B?.ignoreLayersType?.includes(Q))return!0;if(Array.isArray(B?.ignoreLayers)===!1)return!1;try{for(let Y of B.ignoreLayers)if(WN0(A,Y))return!0}catch(Y){}return!1},si=(A)=>A instanceof Error?[A,A.message]:[String(A),String(A)],LP=(A)=>{let Q=A[0];if(Array.isArray(Q))return Q.map((B)=>AUQ(B)||"").join(",");return AUQ(Q)},AUQ=(A)=>{if(typeof A==="string")return A;if(A instanceof RegExp||typeof A==="number")return A.toString();return};var ZN0="0.1.0",$N0="@sentry/instrumentation-express-v5";class ri extends $6.InstrumentationBase{constructor(A={}){super($N0,ZN0,A)}init(){return[new $6.InstrumentationNodeModuleDefinition("express",[">=5.0.0"],(A)=>this._setup(A),(A)=>this._tearDown(A))]}_setup(A){let Q=A.Router.prototype;if($6.isWrapped(Q.route))this._unwrap(Q,"route");if(this._wrap(Q,"route",this._getRoutePatch()),$6.isWrapped(Q.use))this._unwrap(Q,"use");if(this._wrap(Q,"use",this._getRouterUsePatch()),$6.isWrapped(A.application.use))this._unwrap(A.application,"use");return this._wrap(A.application,"use",this._getAppUsePatch()),A}_tearDown(A){if(A===void 0)return;let Q=A.Router.prototype;this._unwrap(Q,"route"),this._unwrap(Q,"use"),this._unwrap(A.application,"use")}_getRoutePatch(){let A=this;return function(Q){return function(...Y){let J=Q.apply(this,Y),C=this.stack[this.stack.length-1];return A._applyPatch(C,LP(Y)),J}}}_getRouterUsePatch(){let A=this;return function(Q){return function(...Y){let J=Q.apply(this,Y),C=this.stack[this.stack.length-1];return A._applyPatch(C,LP(Y)),J}}}_getAppUsePatch(){let A=this;return function(Q){return function(...Y){let J=this.router,C=Q.apply(this,Y);if(J){let X=J.stack[J.stack.length-1];A._applyPatch(X,LP(Y))}return C}}}_applyPatch(A,Q){let B=this;if(A[ni]===!0)return;A[ni]=!0,this._wrap(A,"handle",(Y)=>{if(Y.length===4)return Y;let J=function(C,X){QUQ(C,Q);let G=C[HF].filter((z)=>z!=="/"&&z!=="/*").join("").replace(/\/{2,}/g,"/"),F=G.length>0?G:void 0,W={[CUQ.SEMATTRS_HTTP_ROUTE]:F},Z=YUQ(G,A,Q),U=Z.attributes[d5.EXPRESS_TYPE],$=qP.getRPCMetadata(Y1.context.active());if($?.type===qP.RPCType.HTTP)$.route=F;if(JUQ(Z.name,U,B.getConfig())){if(U===FG.MIDDLEWARE)C[HF].pop();return Y.apply(this,arguments)}if(Y1.trace.getSpan(Y1.context.active())===void 0)return Y.apply(this,arguments);let E=B._getSpanName({request:C,layerType:U,route:G},Z.name),K=B.tracer.startSpan(E,{attributes:Object.assign(W,Z.attributes)}),{requestHook:I}=B.getConfig();if(I)$6.safeExecuteInTheMiddle(()=>I(K,{request:C,layerType:U,route:G}),(z)=>{if(z)Y1.diag.error("express instrumentation: request hook failed",z)},!0);let V=!1;if(Z.attributes[d5.EXPRESS_TYPE]!==FG.MIDDLEWARE)K.end(),V=!0;let H=()=>{if(V===!1)V=!0,K.end()},D=Array.from(arguments),L=D.findIndex((z)=>typeof z==="function");if(L>=0)arguments[L]=function(){let z=arguments[0],M=![void 0,null,"route","router"].includes(z);if(!V&&M){let[q,w]=si(z);K.recordException(q),K.setStatus({code:Y1.SpanStatusCode.ERROR,message:w})}if(V===!1)V=!0,C.res?.removeListener("finish",H),K.end();if(!(C.route&&M))C[HF].pop();return D[L].apply(this,arguments)};try{return Y.apply(this,arguments)}catch(z){let[M,N]=si(z);throw K.recordException(M),K.setStatus({code:Y1.SpanStatusCode.ERROR,message:N}),z}finally{if(!V)X.once("finish",H)}};for(let C in Y)Object.defineProperty(J,C,{get(){return Y[C]},set(X){Y[C]=X}});return J})}_getSpanName(A,Q){let{spanNameHook:B}=this.getConfig();if(!(B instanceof Function))return Q;try{return B(A,Q)??Q}catch(Y){return Y1.diag.error("express instrumentation: error calling span name rewrite hook",Y),Q}}}var GUQ="Express",UN0="Express-V5";function FUQ(A){p0(A,"auto.http.otel.express");let Q=eA(A).data,B=Q["express.type"];if(B)A.setAttribute(YQ,`${B}.express`);let Y=Q["express.name"];if(typeof Y==="string")A.updateName(Y)}function WUQ(A,Q){if(RQ()===R5())return fQ&&e.warn("Isolation scope is still default isolation scope - skipping setting transactionName"),Q;if(A.layerType==="request_handler"){let B=A.request,Y=B.method?B.method.toUpperCase():"GET";RQ().setTransactionName(`${Y} ${A.route}`)}return Q}var ai=EQ(GUQ,()=>new XUQ.ExpressInstrumentation({requestHook:(A)=>FUQ(A),spanNameHook:(A,Q)=>WUQ(A,Q)})),oi=EQ(UN0,()=>new ri({requestHook:(A)=>FUQ(A),spanNameHook:(A,Q)=>WUQ(A,Q)})),EN0=()=>{return{name:GUQ,setupOnce(){ai(),oi()}}},MP=wA(EN0);function ti(A){return function(B,Y,J,C){let X=mE(Y);if(RQ().setSDKProcessingMetadata({normalizedRequest:X}),(A?.shouldHandleError||IN0)(B)){let F=jB(B,{mechanism:{type:"middleware",handled:!1}});J.sentry=F}C(B)}}function KN0(){return function(Q,B,Y){let J=mE(Q);RQ().setSDKProcessingMetadata({normalizedRequest:J}),Y()}}function ZUQ(A,Q){A.use(KN0()),A.use(ti(Q)),IF(A.use,"express")}function VN0(A){let Q=A.status||A.statusCode||A.status_code||A.output?.statusCode;return Q?parseInt(Q,10):500}function IN0(A){return VN0(A)>=500}import*as AEQ from"node:diagnostics_channel";var ZY=qA(yA(),1),PP=qA(MB(),1),nUQ=qA(NB(),1),NY=qA(uB(),1);import dUQ from"node:diagnostics_channel";var cUQ="@fastify/otel",LL0="0.8.0",qL0=">=4.0.0 <6",lUQ=["onRequest","preParsing","preValidation","preHandler","preSerialization","onSend","onResponse","onError"],K0={HOOK_NAME:"hook.name",FASTIFY_TYPE:"fastify.type",HOOK_CALLBACK_NAME:"hook.callback.name",ROOT:"fastify.root"},DF={ROUTE:"route-hook",INSTANCE:"hook",HANDLER:"request-handler"},WG="anonymous",E9=Symbol("fastify otel instance"),NF=Symbol("fastify otel request spans"),jL=Symbol("fastify otel request context"),pUQ=Symbol("fastify otel addhook original"),iUQ=Symbol("fastify otel setnotfound original"),OP=Symbol("fastify otel ignore path");class Jn extends nUQ.InstrumentationBase{constructor(A){super(cUQ,LL0,A);if(this.servername=A?.servername??process.env.OTEL_SERVICE_NAME??"fastify",this[OP]=null,this._logger=ZY.diag.createComponentLogger({namespace:cUQ}),A?.ignorePaths!=null||process.env.OTEL_FASTIFY_IGNORE_PATHS!=null){let Q=A?.ignorePaths??process.env.OTEL_FASTIFY_IGNORE_PATHS;if((typeof Q!=="string"||Q.length===0)&&typeof Q!=="function")throw TypeError("ignorePaths must be a string or a function");let B=null;this[OP]=(Y)=>{if(typeof Q==="function")return Q(Y);else{if(B==null)B=uUQ().minimatch;return B(Y.url,Q)}}}}enable(){if(this._handleInitialization===void 0&&this.getConfig().registerOnInitialization){let A=this.plugin();this._handleInitialization=(Q)=>{Q.fastify.register(A)},dUQ.subscribe("fastify.initialization",this._handleInitialization)}return super.enable()}disable(){if(this._handleInitialization)dUQ.unsubscribe("fastify.initialization",this._handleInitialization),this._handleInitialization=void 0;return super.disable()}init(){return[]}plugin(){let A=this;return Q[Symbol.for("skip-override")]=!0,Q[Symbol.for("fastify.display-name")]="@fastify/otel",Q[Symbol.for("plugin-meta")]={fastify:qL0,name:"@fastify/otel"},Q;function Q(B,Y,J){B.decorate(E9,A),B.decorate(pUQ,B.addHook),B.decorate(iUQ,B.setNotFoundHandler),B.decorateRequest("opentelemetry",function(){let U=this[jL];return{span:this[NF],tracer:A.tracer,context:U,inject:(E,K)=>{return ZY.propagation.inject(U,E,K)},extract:(E,K)=>{return ZY.propagation.extract(U,E,K)}}}),B.decorateRequest(NF,null),B.decorateRequest(jL,null),B.addHook("onRoute",function(Z){if(A[OP]?.(Z)===!0){A._logger.debug(`Ignoring route instrumentation ${Z.method} ${Z.url} because it matches the ignore path`);return}for(let U of lUQ)if(Z[U]!=null){let $=Z[U];if(typeof $==="function")Z[U]=W($,{[NY.ATTR_SERVICE_NAME]:B[E9].servername,[K0.HOOK_NAME]:`${this.pluginName} - route -> ${U}`,[K0.FASTIFY_TYPE]:DF.ROUTE,[NY.ATTR_HTTP_ROUTE]:Z.url,[K0.HOOK_CALLBACK_NAME]:$.name?.length>0?$.name:WG});else if(Array.isArray($)){let E=[];for(let K of $)E.push(W(K,{[NY.ATTR_SERVICE_NAME]:B[E9].servername,[K0.HOOK_NAME]:`${this.pluginName} - route -> ${U}`,[K0.FASTIFY_TYPE]:DF.ROUTE,[NY.ATTR_HTTP_ROUTE]:Z.url,[K0.HOOK_CALLBACK_NAME]:K.name?.length>0?K.name:WG}));Z[U]=E}}if(Z.onSend!=null)Z.onSend=Array.isArray(Z.onSend)?[...Z.onSend,C]:[Z.onSend,C];else Z.onSend=C;if(Z.onError!=null)Z.onError=Array.isArray(Z.onError)?[...Z.onError,X]:[Z.onError,X];else Z.onError=X;Z.handler=W(Z.handler,{[NY.ATTR_SERVICE_NAME]:B[E9].servername,[K0.HOOK_NAME]:`${this.pluginName} - route-handler`,[K0.FASTIFY_TYPE]:DF.HANDLER,[NY.ATTR_HTTP_ROUTE]:Z.url,[K0.HOOK_CALLBACK_NAME]:Z.handler.name.length>0?Z.handler.name:WG})}),B.addHook("onRequest",function(Z,U,$){if(this[E9].isEnabled()===!1)return $();else if(this[E9][OP]?.({url:Z.url,method:Z.method})===!0)return this[E9]._logger.debug(`Ignoring request ${Z.method} ${Z.url} because it matches the ignore path`),$();let E=ZY.context.active();if(ZY.trace.getSpan(E)==null)E=ZY.propagation.extract(E,Z.headers);let K=PP.getRPCMetadata(E);if(Z.routeOptions.url!=null&&K?.type===PP.RPCType.HTTP)K.route=Z.routeOptions.url;let I=this[E9].tracer.startSpan("request",{attributes:{[NY.ATTR_SERVICE_NAME]:B[E9].servername,[K0.ROOT]:"@fastify/otel",[NY.ATTR_HTTP_ROUTE]:Z.url,[NY.ATTR_HTTP_REQUEST_METHOD]:Z.method}},E);Z[jL]=ZY.trace.setSpan(E,I),Z[NF]=I,ZY.context.with(Z[jL],()=>{$()})}),B.addHook("onResponse",function(Z,U,$){let E=Z[NF];if(E!=null)E.setStatus({code:ZY.SpanStatusCode.OK,message:"OK"}),E.setAttributes({[NY.ATTR_HTTP_RESPONSE_STATUS_CODE]:404}),E.end();Z[NF]=null,$()}),B.addHook=G,B.setNotFoundHandler=F,J();function C(Z,U,$,E){let K=Z[NF];if(K!=null){if(U.statusCode<500)K.setStatus({code:ZY.SpanStatusCode.OK,message:"OK"});K.setAttributes({[NY.ATTR_HTTP_RESPONSE_STATUS_CODE]:U.statusCode}),K.end()}Z[NF]=null,E(null,$)}function X(Z,U,$,E){let K=Z[NF];if(K!=null)K.setStatus({code:ZY.SpanStatusCode.ERROR,message:$.message}),K.recordException($);E()}function G(Z,U){let $=this[pUQ];if(lUQ.includes(Z))return $.call(this,Z,W(U,{[NY.ATTR_SERVICE_NAME]:B[E9].servername,[K0.HOOK_NAME]:`${this.pluginName} - ${Z}`,[K0.FASTIFY_TYPE]:DF.INSTANCE,[K0.HOOK_CALLBACK_NAME]:U.name?.length>0?U.name:WG}));else return $.call(this,Z,U)}function F(Z,U){let $=this[iUQ];if(typeof Z==="function")U=W(Z,{[NY.ATTR_SERVICE_NAME]:B[E9].servername,[K0.HOOK_NAME]:`${this.pluginName} - not-found-handler`,[K0.FASTIFY_TYPE]:DF.INSTANCE,[K0.HOOK_CALLBACK_NAME]:Z.name?.length>0?Z.name:WG}),$.call(this,U);else{if(Z.preValidation!=null)Z.preValidation=W(Z.preValidation,{[NY.ATTR_SERVICE_NAME]:B[E9].servername,[K0.HOOK_NAME]:`${this.pluginName} - not-found-handler - preValidation`,[K0.FASTIFY_TYPE]:DF.INSTANCE,[K0.HOOK_CALLBACK_NAME]:Z.preValidation.name?.length>0?Z.preValidation.name:WG});if(Z.preHandler!=null)Z.preHandler=W(Z.preHandler,{[NY.ATTR_SERVICE_NAME]:B[E9].servername,[K0.HOOK_NAME]:`${this.pluginName} - not-found-handler - preHandler`,[K0.FASTIFY_TYPE]:DF.INSTANCE,[K0.HOOK_CALLBACK_NAME]:Z.preHandler.name?.length>0?Z.preHandler.name:WG});U=W(U,{[NY.ATTR_SERVICE_NAME]:B[E9].servername,[K0.HOOK_NAME]:`${this.pluginName} - not-found-handler`,[K0.FASTIFY_TYPE]:DF.INSTANCE,[K0.HOOK_CALLBACK_NAME]:U.name?.length>0?U.name:WG}),$.call(this,Z,U)}}function W(Z,U={}){return function(...E){let K=this[E9],[I]=E;if(K.isEnabled()===!1)return Z.call(this,...E);let V=I[jL]??ZY.context.active(),H=K.tracer.startSpan(`handler - ${Z.name?.length>0?Z.name:this.pluginName??WG}`,{attributes:U},V);return ZY.context.with(ZY.trace.setSpan(V,H),function(){try{let D=Z.call(this,...E);if(typeof D?.then==="function")return D.then((L)=>{return H.end(),L},(L)=>{return H.setStatus({code:ZY.SpanStatusCode.ERROR,message:L.message}),H.recordException(L),H.end(),Promise.reject(L)});return H.end(),D}catch(D){throw H.setStatus({code:ZY.SpanStatusCode.ERROR,message:D.message}),H.recordException(D),H.end(),D}},this)}}}}}var J1=qA(yA(),1),SP=qA(MB(),1),H$=qA(NB(),1),tUQ=qA(uB(),1);var ZG;(function(A){A.FASTIFY_NAME="fastify.name";let B="fastify.type";A.FASTIFY_TYPE=B;let Y="hook.name";A.HOOK_NAME=Y;let J="plugin.name";A.PLUGIN_NAME=J})(ZG||(ZG={}));var OL;(function(A){A.MIDDLEWARE="middleware";let B="request_handler";A.REQUEST_HANDLER=B})(OL||(OL={}));var PL;(function(A){A.MIDDLEWARE="middleware";let B="request handler";A.REQUEST_HANDLER=B})(PL||(PL={}));var rUQ=qA(yA(),1);var TL=Symbol("opentelemetry.instrumentation.fastify.request_active_span");function Cn(A,Q,B,Y={}){let J=Q.startSpan(B,{attributes:Y}),C=A[TL]||[];return C.push(J),Object.defineProperty(A,TL,{enumerable:!1,configurable:!0,value:C}),J}function TP(A,Q){let B=A[TL]||[];if(!B.length)return;B.forEach((Y)=>{if(Q)Y.setStatus({code:rUQ.SpanStatusCode.ERROR,message:Q.message}),Y.recordException(Q);Y.end()}),delete A[TL]}function aUQ(A,Q,B){let Y,J=void 0;try{if(J=A(),sUQ(J))J.then((C)=>Q(void 0,C),(C)=>Q(C))}catch(C){Y=C}finally{if(!sUQ(J)){if(Q(Y,J),Y)throw Y}return J}}function sUQ(A){return typeof A==="object"&&A&&typeof Object.getOwnPropertyDescriptor(A,"then")?.value==="function"||!1}var ML0="0.1.0",zL0="@sentry/instrumentation-fastify-v3",oUQ="anonymous",RL0=new Set(["onTimeout","onRequest","preParsing","preValidation","preSerialization","preHandler","onSend","onResponse","onError"]);class Xn extends H$.InstrumentationBase{constructor(A={}){super(zL0,ML0,A)}init(){return[new H$.InstrumentationNodeModuleDefinition("fastify",[">=3.0.0 <4"],(A)=>{return this._patchConstructor(A)})]}_hookOnRequest(){let A=this;return function(B,Y,J){if(!A.isEnabled())return J();A._wrap(Y,"send",A._patchSend());let C=B,X=SP.getRPCMetadata(J1.context.active()),G=C.routeOptions?C.routeOptions.url:B.routerPath;if(G&&X?.type===SP.RPCType.HTTP)X.route=G;let F=B.method||"GET";RQ().setTransactionName(`${F} ${G}`),J()}}_wrapHandler(A,Q,B,Y){let J=this;return this._diag.debug("Patching fastify route.handler function"),function(...C){if(!J.isEnabled())return B.apply(this,C);let X=B.name||A||oUQ,G=`${PL.MIDDLEWARE} - ${X}`,F=C[1],W=Cn(F,J.tracer,G,{[ZG.FASTIFY_TYPE]:OL.MIDDLEWARE,[ZG.PLUGIN_NAME]:A,[ZG.HOOK_NAME]:Q}),Z=Y&&C[C.length-1];if(Z)C[C.length-1]=function(...U){TP(F),Z.apply(this,U)};return J1.context.with(J1.trace.setSpan(J1.context.active(),W),()=>{return aUQ(()=>{return B.apply(this,C)},(U)=>{if(U instanceof Error)W.setStatus({code:J1.SpanStatusCode.ERROR,message:U.message}),W.recordException(U);if(!Y)TP(F)})})}}_wrapAddHook(){let A=this;return this._diag.debug("Patching fastify server.addHook function"),function(Q){return function(...Y){let J=Y[0],C=Y[1],X=this.pluginName;if(!RL0.has(J))return Q.apply(this,Y);let G=typeof Y[Y.length-1]==="function"&&C.constructor.name!=="AsyncFunction";return Q.apply(this,[J,A._wrapHandler(X,J,C,G)])}}}_patchConstructor(A){let Q=this;function B(...Y){let J=A.fastify.apply(this,Y);return J.addHook("onRequest",Q._hookOnRequest()),J.addHook("preHandler",Q._hookPreHandler()),wL0(),Q._wrap(J,"addHook",Q._wrapAddHook()),J}if(A.errorCodes!==void 0)B.errorCodes=A.errorCodes;return B.fastify=B,B.default=B,B}_patchSend(){let A=this;return this._diag.debug("Patching fastify reply.send function"),function(B){return function(...J){let C=J[0];if(!A.isEnabled())return B.apply(this,J);return H$.safeExecuteInTheMiddle(()=>{return B.apply(this,J)},(X)=>{if(!X&&C instanceof Error)X=C;TP(this,X)})}}}_hookPreHandler(){let A=this;return this._diag.debug("Patching fastify preHandler function"),function(B,Y,J){if(!A.isEnabled())return J();let C=B,X=C.routeOptions?.handler||C.context?.handler,G=X?.name.startsWith("bound ")?X.name.substring(6):X?.name,F=`${PL.REQUEST_HANDLER} - ${G||this.pluginName||oUQ}`,W={[ZG.PLUGIN_NAME]:this.pluginName,[ZG.FASTIFY_TYPE]:OL.REQUEST_HANDLER,[tUQ.SEMATTRS_HTTP_ROUTE]:C.routeOptions?C.routeOptions.url:B.routerPath};if(G)W[ZG.FASTIFY_NAME]=G;let Z=Cn(Y,A.tracer,F,W);eUQ(Z);let{requestHook:U}=A.getConfig();if(U)H$.safeExecuteInTheMiddle(()=>U(Z,{request:B}),($)=>{if($)A._diag.error("request hook failed",$)},!0);return J1.context.with(J1.trace.setSpan(J1.context.active(),Z),()=>{J()})}}}function wL0(){let A=hA();if(A)A.on("spanStart",(Q)=>{eUQ(Q)})}function eUQ(A){let Q=eA(A).data,B=Q["fastify.type"];if(Q[YQ]||!B)return;A.setAttributes({[DQ]:"auto.http.otel.fastify",[YQ]:`${B}.fastify`});let Y=Q["fastify.name"]||Q["plugin.name"]||Q["hook.name"];if(typeof Y==="string"){let J=Y.replace(/^fastify -> /,"").replace(/^@fastify\/otel -> /,"");A.updateName(J)}}var QEQ="Fastify",jL0="Fastify-V3",Gn=EQ(jL0,()=>new Xn),Fn=EQ(QEQ,()=>{let A=new Jn,Q=A.plugin();return AEQ.subscribe("fastify.initialization",(B)=>{let Y=B.fastify;Y?.register(Q).after((J)=>{if(J)fQ&&e.error("Failed to setup Fastify instrumentation",J);else if(TL0(),Y)SL0(Y)})}),A}),OL0=()=>{return{name:QEQ,setupOnce(){Gn(),Fn()}}},kP=wA(OL0);function PL0(A,Q,B){let Y=B.statusCode;return Y>=500||Y<=299}function BEQ(A,Q){let B=Q?.shouldHandleError||PL0,Y=Object.assign(function(J,C,X){J.addHook("onError",async(G,F,W)=>{if(B(W,G,F))jB(W)}),X()},{[Symbol.for("skip-override")]:!0,[Symbol.for("fastify.display-name")]:"sentry-fastify-error-handler"});A.register(Y)}function YEQ(A){let Q=eA(A),B=Q.description,Y=Q.data,J=Y["fastify.type"],C=J==="hook",X=J===B?.startsWith("handler -"),G=B==="request"||J==="request-handler";if(Y[YQ]||!X&&!G&&!C)return;let F=C?"hook":X?"middleware":G?"request-handler":"";A.setAttributes({[DQ]:"auto.http.otel.fastify",[YQ]:`${F}.fastify`});let W=Y["fastify.name"]||Y["plugin.name"]||Y["hook.name"];if(typeof W==="string"){let Z=W.replace(/^fastify -> /,"").replace(/^@fastify\/otel -> /,"");A.updateName(Z)}}function TL0(){let A=hA();if(A)A.on("spanStart",(Q)=>{YEQ(Q)})}function SL0(A){A.addHook("onRequest",async(Q,B)=>{if(Q.opentelemetry){let{span:C}=Q.opentelemetry();if(C)YEQ(C)}let Y=Q.routeOptions?.url,J=Q.method||"GET";RQ().setTransactionName(`${J} ${Y}`)})}var uEQ=qA(mEQ(),1);var dEQ="Graphql",Vn=EQ(dEQ,uEQ.GraphQLInstrumentation,(A)=>{let Q=cEQ(A);return{...Q,responseHook(B){p0(B,"auto.graphql.otel.graphql");let Y=eA(B).data,J=Y["graphql.operation.type"],C=Y["graphql.operation.name"];if(Q.useOperationNameForRootSpan&&J){let X=$0(B),F=eA(X).data[HK]||[],W=C?`${J} ${C}`:`${J}`;if(Array.isArray(F))F.push(W),X.setAttribute(HK,F);else if(typeof F==="string")X.setAttribute(HK,[F,W]);else X.setAttribute(HK,W);if(!eA(X).data["original-description"])X.setAttribute("original-description",eA(X).description);X.updateName(`${eA(X).data["original-description"]} (${Yq0(F)})`)}}}}),Bq0=(A={})=>{return{name:dEQ,setupOnce(){Vn(cEQ(A))}}},hP=wA(Bq0);function cEQ(A){return{ignoreResolveSpans:!0,ignoreTrivialResolveSpans:!0,useOperationNameForRootSpan:!0,...A}}function Yq0(A){if(Array.isArray(A)){let Q=A.slice().sort();if(Q.length<=5)return Q.join(", ");else return`${Q.slice(0,5).join(", ")}, +${Q.length-5}`}return`${A}`}var XKQ=qA(CKQ(),1);var GKQ="Kafka",In=EQ(GKQ,()=>new XKQ.KafkaJsInstrumentation({consumerHook(A){p0(A,"auto.kafkajs.otel.consumer")},producerHook(A){p0(A,"auto.kafkajs.otel.producer")}})),Xq0=()=>{return{name:GKQ,setupOnce(){In()}}},gP=wA(Xq0);var NKQ=qA(DKQ(),1);var LKQ="LruMemoizer",Hn=EQ(LKQ,()=>new NKQ.LruMemoizerInstrumentation),Zq0=()=>{return{name:LKQ,setupOnce(){Hn()}}},xP=wA(Zq0);var hKQ=qA(yKQ(),1);var gKQ="Mongo",Mn=EQ(gKQ,()=>new hKQ.MongoDBInstrumentation({dbStatementSerializer:Vq0,responseHook(A){p0(A,"auto.db.otel.mongo")}}));function Vq0(A){let Q=qn(A);return JSON.stringify(Q)}function qn(A){if(Array.isArray(A))return A.map((Q)=>qn(Q));if(Iq0(A)){let Q={};return Object.entries(A).map(([B,Y])=>[B,qn(Y)]).reduce((B,Y)=>{if(Dq0(Y))B[Y[0]]=Y[1];return B},Q)}return"?"}function Iq0(A){return typeof A==="object"&&A!==null&&!Hq0(A)}function Hq0(A){let Q=!1;if(typeof Buffer<"u")Q=Buffer.isBuffer(A);return Q}function Dq0(A){return Array.isArray(A)}var Nq0=()=>{return{name:gKQ,setupOnce(){Mn()}}},fP=wA(Nq0);var YVQ=qA(BVQ(),1);var JVQ="Mongoose",wn=EQ(JVQ,()=>new YVQ.MongooseInstrumentation({responseHook(A){p0(A,"auto.db.otel.mongoose")}})),_q0=()=>{return{name:JVQ,setupOnce(){wn()}}},mP=wA(_q0);var MVQ=qA(qVQ(),1);var zVQ="Mysql",Tn=EQ(zVQ,()=>new MVQ.MySQLInstrumentation({})),sq0=()=>{return{name:zVQ,setupOnce(){Tn()}}},dP=wA(sq0);var cVQ=qA(dVQ(),1);var lVQ="Mysql2",yn=EQ(lVQ,()=>new cVQ.MySQL2Instrumentation({responseHook(A){p0(A,"auto.db.otel.mysql2")}})),$M0=()=>{return{name:lVQ,setupOnce(){yn()}}},lP=wA($M0);var kIQ=qA(WIQ(),1),_IQ=qA(jIQ(),1);var wM0=["get","set","setex"],gn=["get","mget"],jM0=["set","setex"];function fL(A,Q){return A.includes(Q.toLowerCase())}function xn(A){if(fL(gn,A))return"cache.get";else if(fL(jM0,A))return"cache.put";else return}function OM0(A,Q){return Q.some((B)=>A.startsWith(B))}function PIQ(A,Q){try{if(Q.length===0)return;let B=(J)=>{if(typeof J==="string"||typeof J==="number"||Buffer.isBuffer(J))return[J.toString()];else if(Array.isArray(J))return OIQ(J.map((C)=>B(C)));else return[""]},Y=Q[0];if(fL(wM0,A)&&Y!=null)return B(Y);return OIQ(Q.map((J)=>B(J)))}catch(B){return}}function TIQ(A,Q,B){if(!xn(A))return!1;for(let Y of Q)if(OM0(Y,B))return!0;return!1}function SIQ(A){let Q=(B)=>{try{if(Buffer.isBuffer(B))return B.byteLength;else if(typeof B==="string")return B.length;else if(typeof B==="number")return B.toString().length;else if(B===null||B===void 0)return 0;return JSON.stringify(B).length}catch(Y){return}};return Array.isArray(A)?A.reduce((B,Y)=>{let J=Q(Y);return typeof J==="number"?B!==void 0?B+J:J:B},0):Q(A)}function OIQ(A){let Q=[],B=(Y)=>{Y.forEach((J)=>{if(Array.isArray(J))B(J);else Q.push(J)})};return B(A),Q}var vIQ="Redis",fn={},yIQ=(A,Q,B,Y)=>{A.setAttribute(DQ,"auto.db.otel.redis");let J=PIQ(Q,B),C=xn(Q);if(!J||!C||!fn.cachePrefixes||!TIQ(Q,J,fn.cachePrefixes))return;let X=eA(A).data["net.peer.name"],G=eA(A).data["net.peer.port"];if(G&&X)A.setAttributes({"network.peer.address":X,"network.peer.port":G});let F=SIQ(Y);if(F)A.setAttribute(zu,F);if(fL(gn,Q)&&F!==void 0)A.setAttribute(qu,F>0);A.setAttributes({[YQ]:C,[Mu]:J});let W=J.join(", ");A.updateName(b9(W,1024))},PM0=EQ("IORedis",()=>{return new kIQ.IORedisInstrumentation({responseHook:yIQ})}),TM0=EQ("Redis-4",()=>{return new _IQ.RedisInstrumentation({responseHook:yIQ})}),bn=Object.assign(()=>{PM0(),TM0()},{id:vIQ}),SM0=(A={})=>{return{name:vIQ,setupOnce(){fn=A,bn()}}},iP=wA(SM0);var UHQ=qA($HQ(),1);var EHQ="Postgres",sn=EQ(EHQ,()=>new UHQ.PgInstrumentation({requireParentSpan:!0,requestHook(A){p0(A,"auto.db.otel.postgres")}})),Kz0=()=>{return{name:EHQ,setupOnce(){sn()}}},aP=wA(Kz0);var IHQ=qA(yA(),1),oP=qA(NB(),1),yF=qA(yA(),1);var Vz0=process.env.PRISMA_SHOW_ALL_TRACES==="true",Iz0="00-10-10-00";function Hz0(A){switch(A){case"client":return yF.SpanKind.CLIENT;case"internal":default:return yF.SpanKind.INTERNAL}}var Dz0=class{traceMiddleware;tracerProvider;ignoreSpanTypes;constructor({traceMiddleware:A,tracerProvider:Q,ignoreSpanTypes:B}){this.traceMiddleware=A,this.tracerProvider=Q,this.ignoreSpanTypes=B}isEnabled(){return!0}getTraceParent(A){let Q=yF.trace.getSpanContext(A??yF.context.active());if(Q)return`00-${Q.traceId}-${Q.spanId}-0${Q.traceFlags}`;return Iz0}dispatchEngineSpans(A){let Q=this.tracerProvider.getTracer("prisma"),B=new Map,Y=A.filter((J)=>J.parentId===null);for(let J of Y)HHQ(Q,J,A,B,this.ignoreSpanTypes)}getActiveContext(){return yF.context.active()}runInChildSpan(A,Q){if(typeof A==="string")A={name:A};if(A.internal&&!Vz0)return Q();if(A.middleware&&!this.traceMiddleware)return Q();let B=this.tracerProvider.getTracer("prisma"),Y=A.context??this.getActiveContext(),J=`prisma:client:${A.name}`;if(DHQ(J,this.ignoreSpanTypes))return Q();if(A.active===!1){let C=B.startSpan(J,A,Y);return KHQ(C,Q(C,Y))}return B.startActiveSpan(J,A,(C)=>KHQ(C,Q(C,Y)))}};function HHQ(A,Q,B,Y,J){if(DHQ(Q.name,J))return;let C={attributes:Q.attributes,kind:Hz0(Q.kind),startTime:Q.startTime};A.startActiveSpan(Q.name,C,(X)=>{if(Y.set(Q.id,X.spanContext().spanId),Q.links)X.addLinks(Q.links.flatMap((F)=>{let W=Y.get(F);if(!W)return[];return{context:{spanId:W,traceId:X.spanContext().traceId,traceFlags:X.spanContext().traceFlags}}}));let G=B.filter((F)=>F.parentId===Q.id);for(let F of G)HHQ(A,F,B,Y,J);X.end(Q.endTime)})}function KHQ(A,Q){if(Nz0(Q))return Q.then((B)=>{return A.end(),B},(B)=>{throw A.end(),B});return A.end(),Q}function Nz0(A){return A!=null&&typeof A.then==="function"}function DHQ(A,Q){return Q.some((B)=>typeof B==="string"?B===A:B.test(A))}var NHQ={name:"@prisma/instrumentation",version:"6.7.0",description:"OpenTelemetry compliant instrumentation for Prisma Client",main:"dist/index.js",module:"dist/index.mjs",types:"dist/index.d.ts",exports:{".":{require:{types:"./dist/index.d.ts",default:"./dist/index.js"},import:{types:"./dist/index.d.ts",default:"./dist/index.mjs"}}},license:"Apache-2.0",homepage:"https://www.prisma.io",repository:{type:"git",url:"https://github.com/prisma/prisma.git",directory:"packages/instrumentation"},bugs:"https://github.com/prisma/prisma/issues",devDependencies:{"@prisma/internals":"workspace:*","@swc/core":"1.11.5","@types/jest":"29.5.14","@types/node":"18.19.76","@opentelemetry/api":"1.9.0",jest:"29.7.0","jest-junit":"16.0.0",typescript:"5.4.5"},dependencies:{"@opentelemetry/instrumentation":"^0.52.0 || ^0.53.0 || ^0.54.0 || ^0.55.0 || ^0.56.0 || ^0.57.0"},peerDependencies:{"@opentelemetry/api":"^1.8"},files:["dist"],keywords:["prisma","instrumentation","opentelemetry","otel"],scripts:{dev:"DEV=true tsx helpers/build.ts",build:"tsx helpers/build.ts",prepublishOnly:"pnpm run build",test:"jest"},sideEffects:!1},an=NHQ.version,Lz0=an.split(".")[0],VHQ="PRISMA_INSTRUMENTATION",rn=`V${Lz0}_PRISMA_INSTRUMENTATION`,qz0=NHQ.name,Mz0="@prisma/client",LHQ=class extends oP.InstrumentationBase{tracerProvider;constructor(A={}){super(qz0,an,A)}setTracerProvider(A){this.tracerProvider=A}init(){return[new oP.InstrumentationNodeModuleDefinition(Mz0,[an])]}enable(){let A=this._config,Q={helper:new Dz0({traceMiddleware:A.middleware??!1,tracerProvider:this.tracerProvider??IHQ.trace.getTracerProvider(),ignoreSpanTypes:A.ignoreSpanTypes??[]})};global[VHQ]=Q,global[rn]=Q}disable(){delete global[VHQ],delete global[rn]}isEnabled(){return Boolean(global[rn])}};var qHQ="Prisma";function zz0(A){return!!A&&typeof A==="object"&&"dispatchEngineSpans"in A}function MHQ(){let A=globalThis.PRISMA_INSTRUMENTATION;return A&&typeof A==="object"&&"helper"in A?A.helper:void 0}class zHQ extends LHQ{constructor(){super()}enable(){super.enable();let A=MHQ(),Q=!1;if(zz0(A))A.createEngineSpan=()=>{h0(()=>{if(!Q)Q=!0,console.warn("[Sentry] The Sentry SDK supports tracing with Prisma version 5 only with limited capabilities. For full tracing capabilities pass `prismaInstrumentation` for version 5 to the Sentry `prismaIntegration`. Read more: https://docs.sentry.io/platforms/javascript/guides/node/configuration/integrations/prisma/")})}}}var Rz0=EQ(qHQ,(A)=>{if(A?.prismaInstrumentation)return A.prismaInstrumentation;return new zHQ}),tP=wA(({prismaInstrumentation:A}={})=>{return{name:qHQ,setupOnce(){Rz0({prismaInstrumentation:A})},setup(Q){if(!MHQ())return;Q.on("spanStart",(B)=>{let Y=eA(B);if(Y.description?.startsWith("prisma:"))B.setAttribute(DQ,"auto.db.otel.prisma");if(Y.description==="prisma:engine:db_query"&&Y.data["db.query.text"])B.updateName(Y.data["db.query.text"]);if(Y.description==="prisma:engine:db_query"&&!Y.data["db.system"])B.setAttribute("db.system","prisma")})}}});var uHQ=qA(mHQ(),1);var dHQ="Hapi",QT=EQ(dHQ,()=>new uHQ.HapiInstrumentation),pz0=()=>{return{name:dHQ,setupOnce(){QT()}}},BT=wA(pz0);function iz0(A){return!!(A&&typeof A==="object"&&("error"in A)&&A.error)}function nz0(A){jB(A,{mechanism:{type:"hapi",handled:!1,data:{function:"hapiErrorPlugin"}}})}var sz0={name:"SentryHapiErrorPlugin",version:u0,register:async function(A){A.events.on({name:"request",channels:["error"]},(B,Y)=>{if(RQ()!==R5()){let J=B.route;if(J.path)RQ().setTransactionName(`${J.method.toUpperCase()} ${J.path}`)}else fQ&&e.warn("Isolation scope is still the default isolation scope - skipping setting transactionName");if(iz0(Y))nz0(Y.error)})}};async function cHQ(A){await A.register(sz0);let Q=hA();if(Q)Q.on("spanStart",(B)=>{rz0(B)});IF(A.register,"hapi")}function rz0(A){let Q=eA(A).data,B=Q["hapi.type"];if(Q[YQ]||!B)return;A.setAttributes({[DQ]:"auto.http.otel.hapi",[YQ]:`${B}.hapi`})}var UDQ=qA($DQ(),1),EDQ=qA(uB(),1);var KDQ="Koa",Cs=EQ(KDQ,()=>new UDQ.KoaInstrumentation({requestHook(A,Q){if(C20(A),RQ()===R5()){fQ&&e.warn("Isolation scope is default isolation scope - skipping setting transactionName");return}let Y=eA(A).data[EDQ.ATTR_HTTP_ROUTE],J=Q.context?.request?.method?.toUpperCase()||"GET";if(Y)RQ().setTransactionName(`${J} ${Y}`)}})),J20=()=>{return{name:KDQ,setupOnce(){Cs()}}},CT=wA(J20),VDQ=(A)=>{A.use(async(Q,B)=>{try{await B()}catch(Y){throw jB(Y),Y}}),IF(A.use,"koa")};function C20(A){A.setAttribute(DQ,"auto.http.otel.koa");let Q=eA(A).data,B=Q["koa.type"];if(B)A.setAttribute(YQ,`${B}.koa`);let Y=Q["koa.name"];if(typeof Y==="string")A.updateName(Y||"< unknown >")}var gDQ=qA(hDQ(),1);var xDQ="Connect",Zs=EQ(xDQ,()=>new gDQ.ConnectInstrumentation),N20=()=>{return{name:xDQ,setupOnce(){Zs()}}},GT=wA(N20);function L20(A,Q,B,Y){jB(A),Y(A)}var fDQ=(A)=>{A.use(L20);let Q=hA();if(Q)Q.on("spanStart",(B)=>{q20(B)});IF(A.use,"connect")};function q20(A){let Q=eA(A).data,B=Q["connect.type"];if(Q[YQ]||!B)return;A.setAttributes({[DQ]:"auto.http.otel.connect",[YQ]:`${B}.connect`});let Y=Q["connect.name"];if(typeof Y==="string")A.updateName(Y)}import*as M20 from"node:http";var $s="Spotlight",z20=(A={})=>{let Q={sidecarUrl:A.sidecarUrl||"http://localhost:8969/stream"};return{name:$s,setup(B){if(typeof process==="object"&&process.env&&process.env.NODE_ENV!=="development")e.warn("[Spotlight] It seems you're not in dev mode. Do you really want to have Spotlight enabled?");R20(B,Q)}}},FT=wA(z20);function R20(A,Q){let B=w20(Q.sidecarUrl);if(!B)return;let Y=0;A.on("beforeEnvelope",(J)=>{if(Y>3){e.warn("[Spotlight] Disabled Sentry -> Spotlight integration due to too many failed requests");return}let C=WN(J),G=j20()({method:"POST",path:B.pathname,hostname:B.hostname,port:B.port,headers:{"Content-Type":"application/x-sentry-envelope"}},(F)=>{if(F.statusCode&&F.statusCode>=200&&F.statusCode<400)Y=0;F.on("data",()=>{}),F.on("end",()=>{}),F.setEncoding("utf8")});G.on("error",()=>{Y++,e.warn("[Spotlight] Failed to send envelope to Spotlight Sidecar")}),G.write(C),G.end()})}function w20(A){try{return new URL(`${A}`)}catch{e.warn(`[Spotlight] Invalid sidecar URL: ${A}`);return}}function j20(){let{request:A}=M20;if(O20(A))return A.__sentry_original__;return A}function O20(A){return"__sentry_original__"in A}var CNQ=qA(JNQ(),1);var XNQ="Knex",c20=EQ(XNQ,()=>new CNQ.KnexInstrumentation({requireParentSpan:!0})),l20=()=>{let A;return{name:XNQ,setupOnce(){let Q=c20();A=GF(Q)},setup(Q){A?.(()=>Q.on("spanStart",(B)=>{let{data:Y}=eA(B);if("knex.version"in Y)B.setAttribute(DQ,"auto.db.otel.knex")}))}}},GNQ=wA(l20);var wNQ=qA(RNQ(),1);var o20=new Set(["callProcedure","execSql","execSqlBatch","execBulkLoad","prepare","execute"]),jNQ="Tedious",Es=EQ(jNQ,()=>new wNQ.TediousInstrumentation({})),t20=()=>{let A;return{name:jNQ,setupOnce(){let Q=Es();A=GF(Q)},setup(Q){A?.(()=>Q.on("spanStart",(B)=>{let{description:Y,data:J}=eA(B);if(!Y||J["db.system"]!=="mssql")return;let C=Y.split(" ")[0]||"";if(o20.has(C))B.setAttribute(DQ,"auto.db.otel.tedious")}))}}},ET=wA(t20);var gNQ=qA(hNQ(),1);var xNQ="GenericPool",Vs=EQ(xNQ,()=>new gNQ.GenericPoolInstrumentation({})),B30=()=>{let A;return{name:xNQ,setupOnce(){let Q=Vs();A=GF(Q)},setup(Q){A?.(()=>Q.on("spanStart",(B)=>{let J=eA(B).description;if(J==="generic-pool.aquire"||J==="generic-pool.acquire")B.setAttribute(DQ,"auto.db.otel.generic_pool")}))}}},KT=wA(B30);var aNQ=qA(rNQ(),1);var oNQ="Dataloader",C30=EQ(oNQ,()=>new aNQ.DataloaderInstrumentation({requireParentSpan:!0})),X30=()=>{let A;return{name:oNQ,setupOnce(){let Q=C30();A=GF(Q)},setup(Q){A?.(()=>{Q.on("spanStart",(B)=>{let Y=eA(B);if(Y.description?.startsWith("dataloader"))B.setAttribute(DQ,"auto.db.otel.dataloader");if(Y.description==="dataloader.load"||Y.description==="dataloader.loadMany"||Y.description==="dataloader.batch")B.setAttribute(YQ,"cache.get")})})}}},tNQ=wA(X30);var DLQ=qA(HLQ(),1);var NLQ="Amqplib",j30={consumeEndHook:(A)=>{p0(A,"auto.amqplib.otel.consumer")},publishHook:(A)=>{p0(A,"auto.amqplib.otel.publisher")}},Ls=EQ(NLQ,()=>new DLQ.AmqplibInstrumentation(j30)),O30=()=>{return{name:NLQ,setupOnce(){Ls()}}},HT=wA(O30);var DT=qA(NB(),1);var LLQ=["generateText","streamText","generateObject","streamObject","embed","embedMany"];class lL extends DT.InstrumentationBase{__init(){this._isPatched=!1}__init2(){this._callbacks=[]}constructor(A={}){super("@sentry/instrumentation-vercel-ai",u0,A);lL.prototype.__init.call(this),lL.prototype.__init2.call(this)}init(){return new DT.InstrumentationNodeModuleDefinition("ai",[">=3.0.0 <5"],this._patch.bind(this))}callWhenPatched(A){if(this._isPatched)A();else this._callbacks.push(A)}_patch(A){this._isPatched=!0,this._callbacks.forEach((B)=>B()),this._callbacks=[];function Q(B){return(...Y)=>{let J=Y[0].experimental_telemetry||{};if(J.isEnabled===void 0)Y[0].experimental_telemetry={isEnabled:!0,recordInputs:!1,recordOutputs:!1,...J};return B.apply(this,Y)}}if(Object.prototype.toString.call(A)==="[object Module]"){for(let B of LLQ)A[B]=Q(A[B]);return A}else{let B=LLQ.reduce((Y,J)=>{return Y[J]=Q(A[J]),Y},{});return{...A,...B}}}}var qLQ="VercelAI",qs=EQ(qLQ,()=>new lL({})),P30=()=>{let A;return{name:qLQ,setupOnce(){A=qs()},setup(Q){A?.callWhenPatched(()=>{Q.on("spanStart",(B)=>{let{data:Y,description:J}=eA(B);if(!J)return;let C=Y["ai.model.id"],X=Y["ai.model.provider"];if(typeof C!=="string"||typeof X!=="string"||!C||!X)return;let G=!1;switch(J){case"ai.generateText":{B.setAttribute(YQ,"ai.pipeline.generateText"),G=!0;break}case"ai.generateText.doGenerate":{B.setAttribute(YQ,"ai.run.doGenerate");break}case"ai.streamText":{B.setAttribute(YQ,"ai.pipeline.streamText"),G=!0;break}case"ai.streamText.doStream":{B.setAttribute(YQ,"ai.run.doStream");break}case"ai.generateObject":{B.setAttribute(YQ,"ai.pipeline.generateObject"),G=!0;break}case"ai.generateObject.doGenerate":{B.setAttribute(YQ,"ai.run.doGenerate");break}case"ai.streamObject":{B.setAttribute(YQ,"ai.pipeline.streamObject"),G=!0;break}case"ai.streamObject.doStream":{B.setAttribute(YQ,"ai.run.doStream");break}case"ai.embed":{B.setAttribute(YQ,"ai.pipeline.embed"),G=!0;break}case"ai.embed.doEmbed":{B.setAttribute(YQ,"ai.embeddings");break}case"ai.embedMany":{B.setAttribute(YQ,"ai.pipeline.embedMany"),G=!0;break}case"ai.embedMany.doEmbed":{B.setAttribute(YQ,"ai.embeddings");break}case"ai.toolCall":case"ai.stream.firstChunk":case"ai.stream.finish":B.setAttribute(YQ,"ai.run");break}p0(B,"auto.vercelai.otel");let F=J.replace("ai.","");B.setAttribute("ai.pipeline.name",F),B.updateName(F);let W=Y["ai.telemetry.functionId"];if(W&&typeof W==="string"&&G)B.updateName(W),B.setAttribute("ai.pipeline.name",W);if(Y["ai.prompt"])B.setAttribute("ai.input_messages",Y["ai.prompt"]);if(Y["ai.model.id"])B.setAttribute("ai.model_id",Y["ai.model.id"]);B.setAttribute("ai.streaming",J.includes("stream"))}),Q.addEventProcessor((B)=>{if(B.type==="transaction"&&B.spans?.length)for(let Y of B.spans){let{data:J,description:C}=Y;if(!C||Y.origin!=="auto.vercelai.otel")continue;if(J["ai.usage.completionTokens"]!=null)J["ai.completion_tokens.used"]=J["ai.usage.completionTokens"];if(J["ai.usage.promptTokens"]!=null)J["ai.prompt_tokens.used"]=J["ai.usage.promptTokens"];if(typeof J["ai.usage.completionTokens"]=="number"&&typeof J["ai.usage.promptTokens"]=="number")J["ai.total_tokens.used"]=J["ai.usage.completionTokens"]+J["ai.usage.promptTokens"]}return B})})}}},NT=wA(P30);import*as Ms from"node:diagnostics_channel";var T30="ChildProcess",LT=wA((A={})=>{return{name:T30,setup(){Ms.channel("child_process").subscribe((Q)=>{if(Q&&typeof Q==="object"&&"process"in Q)S30(Q.process,A)}),Ms.channel("worker_threads").subscribe((Q)=>{if(Q&&typeof Q==="object"&&"worker"in Q)k30(Q.worker,A)})}}});function S30(A,Q){let B=!1,Y;A.on("spawn",()=>{if(A.spawnfile==="/usr/bin/sw_vers"){B=!0;return}if(Y={spawnfile:A.spawnfile},Q.includeChildProcessArgs)Y.spawnargs=A.spawnargs}).on("exit",(J)=>{if(!B){if(B=!0,J!==null&&J!==0)G9({category:"child_process",message:`Child process exited with code '${J}'`,level:J===0?"info":"warning",data:Y})}}).on("error",(J)=>{if(!B)B=!0,G9({category:"child_process",message:`Child process errored with '${J.message}'`,level:"error",data:Y})})}function k30(A,Q){let B;A.on("online",()=>{B=A.threadId}).on("error",(Y)=>{if(Q.captureWorkerErrors!==!1)jB(Y,{mechanism:{type:"instrument",handled:!1,data:{threadId:String(B)}}});else G9({category:"worker_thread",message:`Worker thread errored with '${Y.message}'`,level:"error",data:{threadId:B}})})}var _30=["trace","debug","info","warn","error","fatal"],MLQ=Symbol.for("level"),v30=Symbol.for("message"),y30=Symbol.for("splat");function zLQ(A,Q){class B extends A{constructor(Y){super(Y);this._levels=new Set(Q?.levels??_30)}log(Y,J){try{if(setImmediate(()=>{this.emit("logged",Y)}),!h30(Y))return;let C=Y[MLQ],{level:X,message:G,timestamp:F,...W}=Y;W[MLQ]=void 0,W[v30]=void 0,W[y30]=void 0;let Z=g30[C]??"info";if(this._levels.has(Z))tX(Z,G,{...W,"sentry.origin":"auto.logging.winston"})}catch{}if(J)J()}}return B}function h30(A){return typeof A==="object"&&A!=null}var g30={silly:"trace",debug:"debug",verbose:"debug",http:"debug",info:"info",notice:"info",warn:"warn",warning:"warn",error:"error",emerg:"fatal",alert:"fatal",crit:"fatal"};var gLQ=qA(hLQ(),1);var MT=U$Q(gLQ.AsyncLocalStorageContextManager);var s30="ProcessSession",xLQ=wA(()=>{return{name:s30,setupOnce(){DN(),process.on("beforeExit",()=>{if(RQ().getSession()?.status!=="ok")yZ()})}}});function zT(){return[MP(),kP(),hP(),fP(),mP(),dP(),lP(),iP(),aP(),tP(),BT(),CT(),GT(),ET(),KT(),gP(),HT(),xP(),NT()]}function fLQ(){return[vi,ai,oi,Zs,Fn,Gn,QT,In,Cs,Hn,Mn,wn,Tn,yn,sn,QT,Vn,bn,Es,Vs,Ls,qs]}import*as a30 from"node:http";import*as o30 from"node:https";import{Readable as t30}from"node:stream";import{createGzip as e30}from"node:zlib";import*as MG from"node:net";import*as js from"node:tls";import*as Rs from"node:http";var E6=Symbol("AgentBaseInternalState");class ws extends Rs.Agent{constructor(A){super(A);this[E6]={}}isSecureEndpoint(A){if(A){if(typeof A.secureEndpoint==="boolean")return A.secureEndpoint;if(typeof A.protocol==="string")return A.protocol==="https:"}let{stack:Q}=Error();if(typeof Q!=="string")return!1;return Q.split(` +`).some((B)=>B.indexOf("(https.js:")!==-1||B.indexOf("node:https:")!==-1)}createSocket(A,Q,B){let Y={...Q,secureEndpoint:this.isSecureEndpoint(Q)};Promise.resolve().then(()=>this.connect(A,Y)).then((J)=>{if(J instanceof Rs.Agent)return J.addRequest(A,Y);this[E6].currentSocket=J,super.createSocket(A,Q,B)},B)}createConnection(){let A=this[E6].currentSocket;if(this[E6].currentSocket=void 0,!A)throw Error("No socket was returned in the `connect()` function");return A}get defaultPort(){return this[E6].defaultPort??(this.protocol==="https:"?443:80)}set defaultPort(A){if(this[E6])this[E6].defaultPort=A}get protocol(){return this[E6].protocol??(this.isSecureEndpoint()?"https:":"http:")}set protocol(A){if(this[E6])this[E6].protocol=A}}function RT(...A){e.log("[https-proxy-agent:parse-proxy-response]",...A)}function bLQ(A){return new Promise((Q,B)=>{let Y=0,J=[];function C(){let Z=A.read();if(Z)W(Z);else A.once("readable",C)}function X(){A.removeListener("end",G),A.removeListener("error",F),A.removeListener("readable",C)}function G(){X(),RT("onend"),B(Error("Proxy connection ended before receiving CONNECT response"))}function F(Z){X(),RT("onerror %o",Z),B(Z)}function W(Z){J.push(Z),Y+=Z.length;let U=Buffer.concat(J,Y),$=U.indexOf(`\r \r -`);if($===-1){NT("have not received end of HTTP headers yet..."),C();return}let E=U.subarray(0,$).toString("ascii").split(`\r -`),K=E.shift();if(!K)return A.destroy(),B(Error("No header received from proxy CONNECT response"));let I=K.split(" "),V=+(I[1]||0),H=I.slice(2).join(" "),D={};for(let L of E){if(!L)continue;let z=L.indexOf(":");if(z===-1)return A.destroy(),B(Error(`Invalid header from proxy CONNECT response: "${L}"`));let M=L.slice(0,z).toLowerCase(),N=L.slice(z+1).trimStart(),q=D[M];if(typeof q==="string")D[M]=[q,N];else if(Array.isArray(q))q.push(N);else D[M]=N}NT("got proxy server response: %o %o",K,D),X(),Q({connect:{statusCode:V,statusText:H,headers:D},buffered:U})}A.on("error",F),A.on("end",G),C()})}function uL(...A){e.log("[https-proxy-agent]",...A)}class LT extends Es{static __initStatic(){this.protocols=["http","https"]}constructor(A,Q){super(Q);this.options={},this.proxy=typeof A==="string"?new URL(A):A,this.proxyHeaders=Q?.headers??{},uL("Creating new HttpsProxyAgent instance: %o",this.proxy.href);let B=(this.proxy.hostname||this.proxy.host).replace(/^\[|\]$/g,""),Y=this.proxy.port?parseInt(this.proxy.port,10):this.proxy.protocol==="https:"?443:80;this.connectOpts={ALPNProtocols:["http/1.1"],...Q?RLQ(Q,"headers"):null,host:B,port:Y}}async connect(A,Q){let{proxy:B}=this;if(!Q.host)throw TypeError('No "host" provided');let Y;if(B.protocol==="https:"){uL("Creating `tls.Socket`: %o",this.connectOpts);let U=this.connectOpts.servername||this.connectOpts.host;Y=Ks.connect({...this.connectOpts,servername:U&&q6.isIP(U)?void 0:U})}else uL("Creating `net.Socket`: %o",this.connectOpts),Y=q6.connect(this.connectOpts);let J=typeof this.proxyHeaders==="function"?this.proxyHeaders():{...this.proxyHeaders},C=q6.isIPv6(Q.host)?`[${Q.host}]`:Q.host,X=`CONNECT ${C}:${Q.port} HTTP/1.1\r +`);if($===-1){RT("have not received end of HTTP headers yet..."),C();return}let E=U.subarray(0,$).toString("ascii").split(`\r +`),K=E.shift();if(!K)return A.destroy(),B(Error("No header received from proxy CONNECT response"));let I=K.split(" "),V=+(I[1]||0),H=I.slice(2).join(" "),D={};for(let L of E){if(!L)continue;let z=L.indexOf(":");if(z===-1)return A.destroy(),B(Error(`Invalid header from proxy CONNECT response: "${L}"`));let M=L.slice(0,z).toLowerCase(),N=L.slice(z+1).trimStart(),q=D[M];if(typeof q==="string")D[M]=[q,N];else if(Array.isArray(q))q.push(N);else D[M]=N}RT("got proxy server response: %o %o",K,D),X(),Q({connect:{statusCode:V,statusText:H,headers:D},buffered:U})}A.on("error",F),A.on("end",G),C()})}function pL(...A){e.log("[https-proxy-agent]",...A)}class wT extends ws{static __initStatic(){this.protocols=["http","https"]}constructor(A,Q){super(Q);this.options={},this.proxy=typeof A==="string"?new URL(A):A,this.proxyHeaders=Q?.headers??{},pL("Creating new HttpsProxyAgent instance: %o",this.proxy.href);let B=(this.proxy.hostname||this.proxy.host).replace(/^\[|\]$/g,""),Y=this.proxy.port?parseInt(this.proxy.port,10):this.proxy.protocol==="https:"?443:80;this.connectOpts={ALPNProtocols:["http/1.1"],...Q?mLQ(Q,"headers"):null,host:B,port:Y}}async connect(A,Q){let{proxy:B}=this;if(!Q.host)throw TypeError('No "host" provided');let Y;if(B.protocol==="https:"){pL("Creating `tls.Socket`: %o",this.connectOpts);let U=this.connectOpts.servername||this.connectOpts.host;Y=js.connect({...this.connectOpts,servername:U&&MG.isIP(U)?void 0:U})}else pL("Creating `net.Socket`: %o",this.connectOpts),Y=MG.connect(this.connectOpts);let J=typeof this.proxyHeaders==="function"?this.proxyHeaders():{...this.proxyHeaders},C=MG.isIPv6(Q.host)?`[${Q.host}]`:Q.host,X=`CONNECT ${C}:${Q.port} HTTP/1.1\r `;if(B.username||B.password){let U=`${decodeURIComponent(B.username)}:${decodeURIComponent(B.password)}`;J["Proxy-Authorization"]=`Basic ${Buffer.from(U).toString("base64")}`}if(J.Host=`${C}:${Q.port}`,!J["Proxy-Connection"])J["Proxy-Connection"]=this.keepAlive?"Keep-Alive":"close";for(let U of Object.keys(J))X+=`${U}: ${J[U]}\r -`;let G=zLQ(Y);Y.write(`${X}\r -`);let{connect:F,buffered:W}=await G;if(A.emit("proxyConnect",F),this.emit("proxyConnect",F,A),F.statusCode===200){if(A.once("socket",v30),Q.secureEndpoint){uL("Upgrading socket connection to TLS");let U=Q.servername||Q.host;return Ks.connect({...RLQ(Q,"host","path","port"),socket:Y,servername:q6.isIP(U)?void 0:U})}return Y}Y.destroy();let Z=new q6.Socket({writable:!1});return Z.readable=!0,A.once("socket",(U)=>{uL("Replaying proxy buffer for failed request"),U.push(W),U.push(null)}),Z}}LT.__initStatic();function v30(A){A.resume()}function RLQ(A,...Q){let B={},Y;for(Y in A)if(!Q.includes(Y))B[Y]=A[Y];return B}var f30=32768;function b30(A){return new h30({read(){this.push(A),this.push(null)}})}function qT(A){let Q;try{Q=new URL(A.url)}catch(F){return y0(()=>{console.warn("[@sentry/node]: Invalid dsn or tunnel option, will not send any events. The tunnel option must be a full URL when used.")}),gE(A,()=>Promise.resolve({}))}let B=Q.protocol==="https:",Y=m30(Q,A.proxy||(B?process.env.https_proxy:void 0)||process.env.http_proxy),J=B?g30:y30,C=A.keepAlive===void 0?!1:A.keepAlive,X=Y?new LT(Y):new J.Agent({keepAlive:C,maxSockets:30,timeout:2000}),G=u30(A,A.httpModule??J,X);return gE(A,G)}function m30(A,Q){let{no_proxy:B}=process.env;if(B?.split(",").some((J)=>A.host.endsWith(J)||A.hostname.endsWith(J)))return;else return Q}function u30(A,Q,B){let{hostname:Y,pathname:J,port:C,protocol:X,search:G}=new URL(A.url);return function(W){return new Promise((Z,U)=>{FN(()=>{let $=b30(W.body),E={...A.headers};if(W.body.length>f30)E["content-encoding"]="gzip",$=$.pipe(x30());let K=Q.request({method:"POST",agent:B,headers:E,hostname:Y,path:`${J}${G}`,port:C,protocol:X,ca:A.caCerts},(I)=>{I.on("data",()=>{}),I.on("end",()=>{}),I.setEncoding("utf8");let V=I.headers["retry-after"]??null,H=I.headers["x-sentry-rate-limits"]??null;Z({statusCode:I.statusCode,headers:{"retry-after":V,"x-sentry-rate-limits":Array.isArray(H)?H[0]||null:H}})});K.on("error",U),$.pipe(K)})})}}var d30=new Set(["false","f","n","no","off","0"]),c30=new Set(["true","t","y","yes","on","1"]);function MT(A,Q){let B=String(A).toLowerCase();if(d30.has(B))return!1;if(c30.has(B))return!0;return Q?.strict?null:Boolean(A)}import{posix as l30,sep as p30}from"node:path";function wLQ(A){return A.replace(/^[A-Z]:/,"").replace(/\\/g,"/")}function zT(A=process.argv[1]?Id(process.argv[1]):process.cwd(),Q=p30==="\\"){let B=Q?wLQ(A):A;return(Y)=>{if(!Y)return;let J=Q?wLQ(Y):Y,{dir:C,base:X,ext:G}=l30.parse(J);if(G===".js"||G===".mjs"||G===".cjs")X=X.slice(0,G.length*-1);let F=decodeURIComponent(X);if(!C)C=".";let W=C.lastIndexOf("/node_modules");if(W>-1)return`${C.slice(W+14).replace(/\//g,".")}:${F}`;if(C.startsWith(B)){let Z=C.slice(B.length+1).replace(/\//g,".");return Z?`${Z}:${F}`:F}return F}}function RT(A){if(process.env.SENTRY_RELEASE)return process.env.SENTRY_RELEASE;if(AQ.SENTRY_RELEASE?.id)return AQ.SENTRY_RELEASE.id;let Q=process.env.GITHUB_SHA||process.env.CI_MERGE_REQUEST_SOURCE_BRANCH_SHA||process.env.CI_BUILD_REF||process.env.CI_COMMIT_SHA||process.env.BITBUCKET_COMMIT,B=process.env.APPVEYOR_PULL_REQUEST_HEAD_COMMIT||process.env.APPVEYOR_REPO_COMMIT||process.env.CODEBUILD_RESOLVED_SOURCE_VERSION||process.env.AWS_COMMIT_ID||process.env.BUILD_SOURCEVERSION||process.env.GIT_CLONE_COMMIT_HASH||process.env.BUDDY_EXECUTION_REVISION||process.env.BUILDKITE_COMMIT||process.env.CIRCLE_SHA1||process.env.CIRRUS_CHANGE_IN_REPO||process.env.CF_REVISION||process.env.CM_COMMIT||process.env.CF_PAGES_COMMIT_SHA||process.env.DRONE_COMMIT_SHA||process.env.FC_GIT_COMMIT_SHA||process.env.HEROKU_TEST_RUN_COMMIT_VERSION||process.env.HEROKU_SLUG_COMMIT||process.env.RAILWAY_GIT_COMMIT_SHA||process.env.RENDER_GIT_COMMIT||process.env.SEMAPHORE_GIT_SHA||process.env.TRAVIS_PULL_REQUEST_SHA||process.env.VERCEL_GIT_COMMIT_SHA||process.env.VERCEL_GITHUB_COMMIT_SHA||process.env.VERCEL_GITLAB_COMMIT_SHA||process.env.VERCEL_BITBUCKET_COMMIT_SHA||process.env.ZEIT_GITHUB_COMMIT_SHA||process.env.ZEIT_GITLAB_COMMIT_SHA||process.env.ZEIT_BITBUCKET_COMMIT_SHA,Y=process.env.CI_COMMIT_ID||process.env.SOURCE_COMMIT||process.env.SOURCE_VERSION||process.env.GIT_COMMIT||process.env.COMMIT_REF||process.env.BUILD_VCS_NUMBER||process.env.CI_COMMIT_SHA;return Q||B||Y||A}var wT=ew(Pd(zT()));var OLQ=qA(yA(),1),PLQ=qA(NB(),1);import*as jLQ from"node:os";import{threadId as i30,isMainThread as n30}from"worker_threads";var s30=60000;class dL extends Kj{constructor(A){let Q=A.serverName||global.process.env.SENTRY_NAME||jLQ.hostname(),B={...A,platform:"node",runtime:{name:"node",version:global.process.version},serverName:Q};if(A.openTelemetryInstrumentations)PLQ.registerInstrumentations({instrumentations:A.openTelemetryInstrumentations});Gd(B,"node"),e.log(`Initializing Sentry: process: ${process.pid}, thread: ${n30?"main":`worker-${i30}`}.`);super(B);if(this.getOptions()._experiments?.enableLogs){if(this._logOnExitFlushListener=()=>{e7(this)},Q)this.on("beforeCaptureLog",(Y)=>{Y.attributes={...Y.attributes,"server.address":Q}});process.on("beforeExit",this._logOnExitFlushListener)}}get tracer(){if(this._tracer)return this._tracer;let A="@sentry/node",Q=u0,B=OLQ.trace.getTracer(A,Q);return this._tracer=B,B}async flush(A){let B=this.traceProvider?.activeSpanProcessor;if(B)await B.forceFlush();if(this.getOptions().sendClientReports)this._flushOutcomes();return super.flush(A)}close(A){if(this._clientReportInterval)clearInterval(this._clientReportInterval);if(this._clientReportOnExitFlushListener)process.off("beforeExit",this._clientReportOnExitFlushListener);if(this._logOnExitFlushListener)process.off("beforeExit",this._logOnExitFlushListener);return super.close(A)}startClientReportTracking(){let A=this.getOptions();if(A.sendClientReports)this._clientReportOnExitFlushListener=()=>{this._flushOutcomes()},this._clientReportInterval=setInterval(()=>{fQ&&e.log("Flushing client reports based on interval."),this._flushOutcomes()},A.clientReportFlushInterval??s30).unref(),process.on("beforeExit",this._clientReportOnExitFlushListener)}_getTraceInfoFromScope(A){if(!A)return[void 0,void 0];return sZQ(this,A)}}var C1=qA(yA(),1),TLQ=qA(sp(),1),SLQ=qA(op(),1),SK=qA(uB(),1);var kLQ=qA(Xp(),1);import r30 from"module";var Vs=1e6;function jT(A,Q={}){if(A.getOptions().debug)vLQ();let B=o30(A,Q);A.traceProvider=B}function Is(){let[A=0,Q=0]=process.versions.node.split(".").map(Number);if(A>=21||A===20&&Q>=6||A===18&&Q>=19){if(!AQ._sentryEsmLoaderHookRegistered)try{let{addHookMessagePort:B}=kLQ.createAddHookMessageChannel();r30.register("import-in-the-middle/hook.mjs",import.meta.url,{data:{addHookMessagePort:B,include:[]},transferList:[B]})}catch(B){e.warn("Failed to register ESM hook",B)}}else y0(()=>{console.warn(`[Sentry] You are using Node.js v${process.versions.node} in ESM mode ("import syntax"). The Sentry Node.js SDK is not compatible with ESM in Node.js versions before 18.19.0 or before 20.6.0. Please either build your application with CommonJS ("require() syntax"), or upgrade your Node.js version.`)})}function _LQ(A={}){let{debug:Q}=A;if(Q)e.enable(),vLQ();if(!m5())Is();a30(A.integrations).forEach((B)=>{if(B(),Q)e.log(`[Sentry] Preloaded ${B.id} instrumentation`)})}function a30(A){let Q=MLQ();if(!A)return Q;return Q.filter((B)=>A.includes(B.id))}function o30(A,Q={}){let B=new SLQ.BasicTracerProvider({sampler:new Hi(A),resource:new TLQ.Resource({[SK.ATTR_SERVICE_NAME]:"node",[SK.SEMRESATTRS_SERVICE_NAMESPACE]:"sentry",[SK.ATTR_SERVICE_VERSION]:u0}),forceFlushTimeoutMillis:500,spanProcessors:[new Ii({timeout:t30(A.getOptions().maxSpanWaitDuration)}),...Q.spanProcessors||[]]});return C1.trace.setGlobalTracerProvider(B),C1.propagation.setGlobalPropagator(new $i),C1.context.setGlobalContextManager(new HT),B}function t30(A){if(A==null)return;if(A>Vs)return fQ&&e.warn(`\`maxSpanWaitDuration\` is too high, using the maximum value of ${Vs}`),Vs;else if(A<=0||Number.isNaN(A)){fQ&&e.warn("`maxSpanWaitDuration` must be a positive number, using default value instead.");return}return A}function vLQ(){let A=new Proxy(e,{get(Q,B,Y){return Reflect.get(Q,B==="verbose"?"debug":B,Y)}});C1.diag.disable(),C1.diag.setLogger(A,C1.DiagLogLevel.DEBUG)}function e30(){return m5()?[WP()]:[]}function Hs(){return[IN(),VN(),HN(),DN(),NN(),oO(),QP(),ZP(),$P(),CP(),FP(),JP(),VT(),qLQ(),...e30()]}function Ds(A){return[...Hs(),...C9(A)?DT():[]]}function OT(A={}){return gLQ(A,Ds)}function yLQ(A={}){return gLQ(A,()=>[])}function gLQ(A={},Q){let B=AR0(A,Q);if(B.debug===!0)if(fQ)e.enable();else y0(()=>{console.warn("[Sentry] Cannot initialize SDK with `debug` option using a non-debug bundle.")});if(!m5()&&B.registerEsmLoaderHooks!==!1)Is();if(nO(),sQ().update(B.initialScope),B.spotlight&&!B.integrations.some(({name:C})=>C===en))B.integrations.push(YT({sidecarUrl:typeof B.spotlight==="string"?B.spotlight:void 0}));let J=new dL(B);if(sQ().setClient(J),J.init(),e.log(`Running in ${m5()?"CommonJS":"ESM"} mode.`),J.startClientReportTracking(),YR0(),!B.skipOpenTelemetrySetup)jT(J,{spanProcessors:B.openTelemetrySpanProcessors}),Ns();return bZQ(J),rZQ(J),J}function Ns(){if(!fQ)return;let A=cZQ(),Q=["SentryContextManager","SentryPropagator"];if(C9())Q.push("SentrySpanProcessor");for(let B of Q)if(!A.includes(B))e.error(`You have to set up the ${B}. Without this, the OpenTelemetry & Sentry integration will not work properly.`);if(!A.includes("SentrySampler"))e.warn("You have to set up the SentrySampler. Without this, the OpenTelemetry & Sentry integration may still work, but sample rates set for the Sentry SDK will not be respected. If you use a custom sampler, make sure to use `wrapSamplingDecision`.")}function AR0(A,Q){let B=QR0(A.release),Y=A.spotlight??MT(process.env.SENTRY_SPOTLIGHT,{strict:!0})??process.env.SENTRY_SPOTLIGHT,J=BR0(A.tracesSampleRate),C={...A,dsn:A.dsn??process.env.SENTRY_DSN,environment:A.environment??process.env.SENTRY_ENVIRONMENT,sendClientReports:A.sendClientReports??!0,transport:A.transport??qT,stackParser:Hu(A.stackParser||wT),release:B,tracesSampleRate:J,spotlight:Y,debug:MT(A.debug??process.env.SENTRY_DEBUG)},X=A.integrations,G=A.defaultIntegrations??Q(C);return{...C,integrations:au({defaultIntegrations:G,integrations:X})}}function QR0(A){if(A!==void 0)return A;let Q=RT();if(Q!==void 0)return Q;return}function BR0(A){if(A!==void 0)return A;let Q=process.env.SENTRY_TRACES_SAMPLE_RATE;if(!Q)return;let B=parseFloat(Q);return isFinite(B)?B:void 0}function YR0(){if(MT(process.env.SENTRY_USE_ENVIRONMENT)!==!1){let A=process.env.SENTRY_TRACE,Q=process.env.SENTRY_BAGGAGE,B=zZ(A,Q);sQ().setPropagationContext(B)}}var JR0=[["january","1"],["february","2"],["march","3"],["april","4"],["may","5"],["june","6"],["july","7"],["august","8"],["september","9"],["october","10"],["november","11"],["december","12"],["jan","1"],["feb","2"],["mar","3"],["apr","4"],["may","5"],["jun","6"],["jul","7"],["aug","8"],["sep","9"],["oct","10"],["nov","11"],["dec","12"],["sunday","0"],["monday","1"],["tuesday","2"],["wednesday","3"],["thursday","4"],["friday","5"],["saturday","6"],["sun","0"],["mon","1"],["tue","2"],["wed","3"],["thu","4"],["fri","5"],["sat","6"]];function q$(A){return JR0.reduce((Q,[B,Y])=>Q.replace(new RegExp(B,"gi"),Y),A)}var hLQ="Automatic instrumentation of CronJob only supports crontab string";function xLQ(A,Q){let B=!1;return new Proxy(A,{construct(Y,J){let[C,X,G,F,W,...Z]=J;if(typeof C!=="string")throw Error(hLQ);if(B)throw Error(`A job named '${Q}' has already been scheduled`);B=!0;let U=q$(C);async function $(E,K){return o1(Q,async()=>{try{await X(E,K)}catch(I){throw jB(I),I}},{schedule:{type:"crontab",value:U},timezone:W||void 0})}return new Y(C,$,G,F,W,...Z)},get(Y,J){if(J==="from")return(C)=>{let{cronTime:X,onTick:G,timeZone:F}=C;if(typeof X!=="string")throw Error(hLQ);if(B)throw Error(`A job named '${Q}' has already been scheduled`);B=!0;let W=q$(X);return C.onTick=async(Z,U)=>{return o1(Q,async()=>{try{await G(Z,U)}catch($){throw jB($),$}},{schedule:{type:"crontab",value:W},timezone:F||void 0})},Y.from(C)};else return Y[J]}})}function fLQ(A){return new Proxy(A,{get(Q,B){if(B==="schedule"&&Q.schedule)return new Proxy(Q.schedule,{apply(Y,J,C){let[X,G,F]=C,W=F?.name,Z=F?.timezone;if(!W)throw Error('Missing "name" for scheduled job. A name is required for Sentry check-in monitoring.');let U=async()=>{return o1(W,async()=>{try{return await G()}catch($){throw jB($),$}},{schedule:{type:"crontab",value:q$(X)},timezone:Z})};return Y.apply(J,[X,U,F])}});else return Q[B]}})}function bLQ(A){return new Proxy(A,{get(Q,B){if(B==="scheduleJob")return new Proxy(Q.scheduleJob,{apply(Y,J,C){let[X,G,F]=C;if(typeof X!=="string"||typeof G!=="string"||typeof F!=="function")throw Error("Automatic instrumentation of 'node-schedule' requires the first parameter of 'scheduleJob' to be a job name string and the second parameter to be a crontab string");let W=X,Z=G;async function U(){return o1(W,async()=>{await F?.()},{schedule:{type:"crontab",value:q$(Z)}})}return Y.apply(J,[W,Z,U])}});return Q[B]}})}var mLQ={instrumentCron:xLQ,instrumentNodeCron:fLQ,instrumentNodeSchedule:bLQ};import BTQ from"fs";import hf0 from"http2";import Eo from"path";var ynY=y$(),Kf0=iL(),gnY=iK(),hnY=A3Q(),Vf0=x$(),xnY=vr(),fnY=O3Q(),bnY=y3Q(),mnY=f3Q(),If0=QB(),Wk=lQ(),{InvalidArgumentError:Fk}=If0,DV=jRQ(),unY=sL(),dnY=Ca(),{MockCallHistory:cnY,MockCallHistoryLog:lnY}=Fa(),pnY=Va(),inY=$a(),nnY=kwQ(),snY=pr(),rnY=KS(),{getGlobalDispatcher:Hf0,setGlobalDispatcher:Df0}=OS(),anY=BV(),onY=Ra();Object.assign(Kf0.prototype,DV);var $o=Vf0;var Mf0={redirect:dwQ(),responseError:pwQ(),retry:nwQ(),dump:awQ(),dns:AjQ(),cache:LjQ(),decompress:OjQ()},QTQ={MemoryCacheStore:ja()};var Nf0=TjQ();QTQ.SqliteCacheStore=Nf0;var zf0={parseHeaders:Wk.parseHeaders,headerNameToString:Wk.headerNameToString};function lq(A){return(Q,B,Y)=>{if(typeof B==="function")Y=B,B=null;if(!Q||typeof Q!=="string"&&typeof Q!=="object"&&!(Q instanceof URL))throw new Fk("invalid url");if(B!=null&&typeof B!=="object")throw new Fk("invalid opts");if(B&&B.path!=null){if(typeof B.path!=="string")throw new Fk("invalid opts.path");let X=B.path;if(!B.path.startsWith("/"))X=`/${X}`;Q=new URL(Wk.parseOrigin(Q).origin+X)}else{if(!B)B=typeof Q==="object"?Q:{};Q=Wk.parseURL(Q)}let{agent:J,dispatcher:C=Hf0()}=B;if(J)throw new Fk("unsupported opts.agent. Did you mean opts.client?");return A.call(C,{...B,origin:Q.origin,path:Q.search?`${Q.pathname}${Q.search}`:Q.pathname,method:B.method||(B.body?"PUT":"GET")},Y)}}var Uo=Df0;var tnY=hq().fetch;var Rf0=c$().Headers,wf0=yq().Response,jf0=GV().Request,Of0=lT().FormData;var{setGlobalOrigin:enY,getGlobalOrigin:AsY}=rs();var{CacheStorage:Lf0}=xOQ(),{kConstruct:qf0}=Q0();var Pf0=new Lf0(qf0);var{deleteCookie:QsY,getCookies:BsY,getSetCookies:YsY,setCookie:JsY,parseCookie:CsY}=aOQ();var{parseMIMEType:XsY,serializeAMimeType:GsY}=y8();var{CloseEvent:FsY,ErrorEvent:WsY,MessageEvent:ZsY}=oS(),{WebSocket:$sY,ping:UsY}=kPQ();var Tf0=bPQ().WebSocketStream,Sf0=Xo().WebSocketError,kf0=lq(DV.request),_f0=lq(DV.stream),vf0=lq(DV.pipeline),yf0=lq(DV.connect),gf0=lq(DV.upgrade);var{EventSource:EsY}=ATQ();var Zk=`-----BEGIN CERTIFICATE----- +`;let G=bLQ(Y);Y.write(`${X}\r +`);let{connect:F,buffered:W}=await G;if(A.emit("proxyConnect",F),this.emit("proxyConnect",F,A),F.statusCode===200){if(A.once("socket",r30),Q.secureEndpoint){pL("Upgrading socket connection to TLS");let U=Q.servername||Q.host;return js.connect({...mLQ(Q,"host","path","port"),socket:Y,servername:MG.isIP(U)?void 0:U})}return Y}Y.destroy();let Z=new MG.Socket({writable:!1});return Z.readable=!0,A.once("socket",(U)=>{pL("Replaying proxy buffer for failed request"),U.push(W),U.push(null)}),Z}}wT.__initStatic();function r30(A){A.resume()}function mLQ(A,...Q){let B={},Y;for(Y in A)if(!Q.includes(Y))B[Y]=A[Y];return B}var AR0=32768;function QR0(A){return new t30({read(){this.push(A),this.push(null)}})}function jT(A){let Q;try{Q=new URL(A.url)}catch(F){return h0(()=>{console.warn("[@sentry/node]: Invalid dsn or tunnel option, will not send any events. The tunnel option must be a full URL when used.")}),bE(A,()=>Promise.resolve({}))}let B=Q.protocol==="https:",Y=BR0(Q,A.proxy||(B?process.env.https_proxy:void 0)||process.env.http_proxy),J=B?o30:a30,C=A.keepAlive===void 0?!1:A.keepAlive,X=Y?new wT(Y):new J.Agent({keepAlive:C,maxSockets:30,timeout:2000}),G=YR0(A,A.httpModule??J,X);return bE(A,G)}function BR0(A,Q){let{no_proxy:B}=process.env;if(B?.split(",").some((J)=>A.host.endsWith(J)||A.hostname.endsWith(J)))return;else return Q}function YR0(A,Q,B){let{hostname:Y,pathname:J,port:C,protocol:X,search:G}=new URL(A.url);return function(W){return new Promise((Z,U)=>{UN(()=>{let $=QR0(W.body),E={...A.headers};if(W.body.length>AR0)E["content-encoding"]="gzip",$=$.pipe(e30());let K=Q.request({method:"POST",agent:B,headers:E,hostname:Y,path:`${J}${G}`,port:C,protocol:X,ca:A.caCerts},(I)=>{I.on("data",()=>{}),I.on("end",()=>{}),I.setEncoding("utf8");let V=I.headers["retry-after"]??null,H=I.headers["x-sentry-rate-limits"]??null;Z({statusCode:I.statusCode,headers:{"retry-after":V,"x-sentry-rate-limits":Array.isArray(H)?H[0]||null:H}})});K.on("error",U),$.pipe(K)})})}}var JR0=new Set(["false","f","n","no","off","0"]),CR0=new Set(["true","t","y","yes","on","1"]);function OT(A,Q){let B=String(A).toLowerCase();if(JR0.has(B))return!1;if(CR0.has(B))return!0;return Q?.strict?null:Boolean(A)}import{posix as XR0,sep as GR0}from"node:path";function uLQ(A){return A.replace(/^[A-Z]:/,"").replace(/\\/g,"/")}function PT(A=process.argv[1]?Pd(process.argv[1]):process.cwd(),Q=GR0==="\\"){let B=Q?uLQ(A):A;return(Y)=>{if(!Y)return;let J=Q?uLQ(Y):Y,{dir:C,base:X,ext:G}=XR0.parse(J);if(G===".js"||G===".mjs"||G===".cjs")X=X.slice(0,G.length*-1);let F=decodeURIComponent(X);if(!C)C=".";let W=C.lastIndexOf("/node_modules");if(W>-1)return`${C.slice(W+14).replace(/\//g,".")}:${F}`;if(C.startsWith(B)){let Z=C.slice(B.length+1).replace(/\//g,".");return Z?`${Z}:${F}`:F}return F}}function TT(A){if(process.env.SENTRY_RELEASE)return process.env.SENTRY_RELEASE;if(AQ.SENTRY_RELEASE?.id)return AQ.SENTRY_RELEASE.id;let Q=process.env.GITHUB_SHA||process.env.CI_MERGE_REQUEST_SOURCE_BRANCH_SHA||process.env.CI_BUILD_REF||process.env.CI_COMMIT_SHA||process.env.BITBUCKET_COMMIT,B=process.env.APPVEYOR_PULL_REQUEST_HEAD_COMMIT||process.env.APPVEYOR_REPO_COMMIT||process.env.CODEBUILD_RESOLVED_SOURCE_VERSION||process.env.AWS_COMMIT_ID||process.env.BUILD_SOURCEVERSION||process.env.GIT_CLONE_COMMIT_HASH||process.env.BUDDY_EXECUTION_REVISION||process.env.BUILDKITE_COMMIT||process.env.CIRCLE_SHA1||process.env.CIRRUS_CHANGE_IN_REPO||process.env.CF_REVISION||process.env.CM_COMMIT||process.env.CF_PAGES_COMMIT_SHA||process.env.DRONE_COMMIT_SHA||process.env.FC_GIT_COMMIT_SHA||process.env.HEROKU_TEST_RUN_COMMIT_VERSION||process.env.HEROKU_SLUG_COMMIT||process.env.RAILWAY_GIT_COMMIT_SHA||process.env.RENDER_GIT_COMMIT||process.env.SEMAPHORE_GIT_SHA||process.env.TRAVIS_PULL_REQUEST_SHA||process.env.VERCEL_GIT_COMMIT_SHA||process.env.VERCEL_GITHUB_COMMIT_SHA||process.env.VERCEL_GITLAB_COMMIT_SHA||process.env.VERCEL_BITBUCKET_COMMIT_SHA||process.env.ZEIT_GITHUB_COMMIT_SHA||process.env.ZEIT_GITLAB_COMMIT_SHA||process.env.ZEIT_BITBUCKET_COMMIT_SHA,Y=process.env.CI_COMMIT_ID||process.env.SOURCE_COMMIT||process.env.SOURCE_VERSION||process.env.GIT_COMMIT||process.env.COMMIT_REF||process.env.BUILD_VCS_NUMBER||process.env.CI_COMMIT_SHA;return Q||B||Y||A}var ST=Jj(md(PT()));var cLQ=qA(yA(),1),lLQ=qA(NB(),1);import*as dLQ from"node:os";import{threadId as FR0,isMainThread as WR0}from"worker_threads";var ZR0=60000;class iL extends Nj{constructor(A){let Q=A.serverName||global.process.env.SENTRY_NAME||dLQ.hostname(),B={...A,platform:"node",runtime:{name:"node",version:global.process.version},serverName:Q};if(A.openTelemetryInstrumentations)lLQ.registerInstrumentations({instrumentations:A.openTelemetryInstrumentations});Nd(B,"node"),e.log(`Initializing Sentry: process: ${process.pid}, thread: ${WR0?"main":`worker-${FR0}`}.`);super(B);if(this.getOptions()._experiments?.enableLogs){if(this._logOnExitFlushListener=()=>{AF(this)},Q)this.on("beforeCaptureLog",(Y)=>{Y.attributes={...Y.attributes,"server.address":Q}});process.on("beforeExit",this._logOnExitFlushListener)}}get tracer(){if(this._tracer)return this._tracer;let A="@sentry/node",Q=u0,B=cLQ.trace.getTracer(A,Q);return this._tracer=B,B}async flush(A){let B=this.traceProvider?.activeSpanProcessor;if(B)await B.forceFlush();if(this.getOptions().sendClientReports)this._flushOutcomes();return super.flush(A)}close(A){if(this._clientReportInterval)clearInterval(this._clientReportInterval);if(this._clientReportOnExitFlushListener)process.off("beforeExit",this._clientReportOnExitFlushListener);if(this._logOnExitFlushListener)process.off("beforeExit",this._logOnExitFlushListener);return super.close(A)}startClientReportTracking(){let A=this.getOptions();if(A.sendClientReports)this._clientReportOnExitFlushListener=()=>{this._flushOutcomes()},this._clientReportInterval=setInterval(()=>{fQ&&e.log("Flushing client reports based on interval."),this._flushOutcomes()},A.clientReportFlushInterval??ZR0).unref(),process.on("beforeExit",this._clientReportOnExitFlushListener)}_getTraceInfoFromScope(A){if(!A)return[void 0,void 0];return Z$Q(this,A)}}var X1=qA(yA(),1),pLQ=qA(Xi(),1),iLQ=qA(Wi(),1),yK=qA(uB(),1);var nLQ=qA(Dp(),1);import $R0 from"module";var Os=1e6;function kT(A,Q={}){if(A.getOptions().debug)rLQ();let B=ER0(A,Q);A.traceProvider=B}function Ps(){let[A=0,Q=0]=process.versions.node.split(".").map(Number);if(A>=21||A===20&&Q>=6||A===18&&Q>=19){if(!AQ._sentryEsmLoaderHookRegistered)try{let{addHookMessagePort:B}=nLQ.createAddHookMessageChannel();$R0.register("import-in-the-middle/hook.mjs",import.meta.url,{data:{addHookMessagePort:B,include:[]},transferList:[B]})}catch(B){e.warn("Failed to register ESM hook",B)}}else h0(()=>{console.warn(`[Sentry] You are using Node.js v${process.versions.node} in ESM mode ("import syntax"). The Sentry Node.js SDK is not compatible with ESM in Node.js versions before 18.19.0 or before 20.6.0. Please either build your application with CommonJS ("require() syntax"), or upgrade your Node.js version.`)})}function sLQ(A={}){let{debug:Q}=A;if(Q)e.enable(),rLQ();if(!u5())Ps();UR0(A.integrations).forEach((B)=>{if(B(),Q)e.log(`[Sentry] Preloaded ${B.id} instrumentation`)})}function UR0(A){let Q=fLQ();if(!A)return Q;return Q.filter((B)=>A.includes(B.id))}function ER0(A,Q={}){let B=new iLQ.BasicTracerProvider({sampler:new Ti(A),resource:new pLQ.Resource({[yK.ATTR_SERVICE_NAME]:"node",[yK.SEMRESATTRS_SERVICE_NAMESPACE]:"sentry",[yK.ATTR_SERVICE_VERSION]:u0}),forceFlushTimeoutMillis:500,spanProcessors:[new Pi({timeout:KR0(A.getOptions().maxSpanWaitDuration)}),...Q.spanProcessors||[]]});return X1.trace.setGlobalTracerProvider(B),X1.propagation.setGlobalPropagator(new zi),X1.context.setGlobalContextManager(new MT),B}function KR0(A){if(A==null)return;if(A>Os)return fQ&&e.warn(`\`maxSpanWaitDuration\` is too high, using the maximum value of ${Os}`),Os;else if(A<=0||Number.isNaN(A)){fQ&&e.warn("`maxSpanWaitDuration` must be a positive number, using default value instead.");return}return A}function rLQ(){let A=new Proxy(e,{get(Q,B,Y){return Reflect.get(Q,B==="verbose"?"debug":B,Y)}});X1.diag.disable(),X1.diag.setLogger(A,X1.DiagLogLevel.DEBUG)}function VR0(){return u5()?[KP()]:[]}function Ts(){return[LN(),NN(),qN(),MN(),zN(),BP(),XP(),VP(),IP(),ZP(),EP(),WP(),LT(),xLQ(),...VR0()]}function Ss(A){return[...Ts(),...X9(A)?zT():[]]}function _T(A={}){return oLQ(A,Ss)}function aLQ(A={}){return oLQ(A,()=>[])}function oLQ(A={},Q){let B=IR0(A,Q);if(B.debug===!0)if(fQ)e.enable();else h0(()=>{console.warn("[Sentry] Cannot initialize SDK with `debug` option using a non-debug bundle.")});if(!u5()&&B.registerEsmLoaderHooks!==!1)Ps();if(tO(),sQ().update(B.initialScope),B.spotlight&&!B.integrations.some(({name:C})=>C===$s))B.integrations.push(FT({sidecarUrl:typeof B.spotlight==="string"?B.spotlight:void 0}));let J=new iL(B);if(sQ().setClient(J),J.init(),e.log(`Running in ${u5()?"CommonJS":"ESM"} mode.`),J.startClientReportTracking(),NR0(),!B.skipOpenTelemetrySetup)kT(J,{spanProcessors:B.openTelemetrySpanProcessors}),ks();return Q$Q(J),$$Q(J),J}function ks(){if(!fQ)return;let A=C$Q(),Q=["SentryContextManager","SentryPropagator"];if(X9())Q.push("SentrySpanProcessor");for(let B of Q)if(!A.includes(B))e.error(`You have to set up the ${B}. Without this, the OpenTelemetry & Sentry integration will not work properly.`);if(!A.includes("SentrySampler"))e.warn("You have to set up the SentrySampler. Without this, the OpenTelemetry & Sentry integration may still work, but sample rates set for the Sentry SDK will not be respected. If you use a custom sampler, make sure to use `wrapSamplingDecision`.")}function IR0(A,Q){let B=HR0(A.release),Y=A.spotlight??OT(process.env.SENTRY_SPOTLIGHT,{strict:!0})??process.env.SENTRY_SPOTLIGHT,J=DR0(A.tracesSampleRate),C={...A,dsn:A.dsn??process.env.SENTRY_DSN,environment:A.environment??process.env.SENTRY_ENVIRONMENT,sendClientReports:A.sendClientReports??!0,transport:A.transport??jT,stackParser:Tu(A.stackParser||ST),release:B,tracesSampleRate:J,spotlight:Y,debug:OT(A.debug??process.env.SENTRY_DEBUG)},X=A.integrations,G=A.defaultIntegrations??Q(C);return{...C,integrations:Fd({defaultIntegrations:G,integrations:X})}}function HR0(A){if(A!==void 0)return A;let Q=TT();if(Q!==void 0)return Q;return}function DR0(A){if(A!==void 0)return A;let Q=process.env.SENTRY_TRACES_SAMPLE_RATE;if(!Q)return;let B=parseFloat(Q);return isFinite(B)?B:void 0}function NR0(){if(OT(process.env.SENTRY_USE_ENVIRONMENT)!==!1){let A=process.env.SENTRY_TRACE,Q=process.env.SENTRY_BAGGAGE,B=jZ(A,Q);sQ().setPropagationContext(B)}}var LR0=[["january","1"],["february","2"],["march","3"],["april","4"],["may","5"],["june","6"],["july","7"],["august","8"],["september","9"],["october","10"],["november","11"],["december","12"],["jan","1"],["feb","2"],["mar","3"],["apr","4"],["may","5"],["jun","6"],["jul","7"],["aug","8"],["sep","9"],["oct","10"],["nov","11"],["dec","12"],["sunday","0"],["monday","1"],["tuesday","2"],["wednesday","3"],["thursday","4"],["friday","5"],["saturday","6"],["sun","0"],["mon","1"],["tue","2"],["wed","3"],["thu","4"],["fri","5"],["sat","6"]];function w$(A){return LR0.reduce((Q,[B,Y])=>Q.replace(new RegExp(B,"gi"),Y),A)}var tLQ="Automatic instrumentation of CronJob only supports crontab string";function eLQ(A,Q){let B=!1;return new Proxy(A,{construct(Y,J){let[C,X,G,F,W,...Z]=J;if(typeof C!=="string")throw Error(tLQ);if(B)throw Error(`A job named '${Q}' has already been scheduled`);B=!0;let U=w$(C);async function $(E,K){return t1(Q,async()=>{try{await X(E,K)}catch(I){throw jB(I),I}},{schedule:{type:"crontab",value:U},timezone:W||void 0})}return new Y(C,$,G,F,W,...Z)},get(Y,J){if(J==="from")return(C)=>{let{cronTime:X,onTick:G,timeZone:F}=C;if(typeof X!=="string")throw Error(tLQ);if(B)throw Error(`A job named '${Q}' has already been scheduled`);B=!0;let W=w$(X);return C.onTick=async(Z,U)=>{return t1(Q,async()=>{try{await G(Z,U)}catch($){throw jB($),$}},{schedule:{type:"crontab",value:W},timezone:F||void 0})},Y.from(C)};else return Y[J]}})}function AqQ(A){return new Proxy(A,{get(Q,B){if(B==="schedule"&&Q.schedule)return new Proxy(Q.schedule,{apply(Y,J,C){let[X,G,F]=C,W=F?.name,Z=F?.timezone;if(!W)throw Error('Missing "name" for scheduled job. A name is required for Sentry check-in monitoring.');let U=async()=>{return t1(W,async()=>{try{return await G()}catch($){throw jB($),$}},{schedule:{type:"crontab",value:w$(X)},timezone:Z})};return Y.apply(J,[X,U,F])}});else return Q[B]}})}function QqQ(A){return new Proxy(A,{get(Q,B){if(B==="scheduleJob")return new Proxy(Q.scheduleJob,{apply(Y,J,C){let[X,G,F]=C;if(typeof X!=="string"||typeof G!=="string"||typeof F!=="function")throw Error("Automatic instrumentation of 'node-schedule' requires the first parameter of 'scheduleJob' to be a job name string and the second parameter to be a crontab string");let W=X,Z=G;async function U(){return t1(W,async()=>{await F?.()},{schedule:{type:"crontab",value:w$(Z)}})}return Y.apply(J,[W,Z,U])}});return Q[B]}})}var BqQ={instrumentCron:eLQ,instrumentNodeCron:AqQ,instrumentNodeSchedule:QqQ};import DTQ from"fs";import tf0 from"http2";import wo from"path";var NsY=f$(),Sf0=aL(),LsY=aK(),qsY=I3Q(),kf0=u$(),MsY=pr(),zsY=c3Q(),RsY=a3Q(),wsY=ARQ(),_f0=QB(),Kk=lQ(),{InvalidArgumentError:Ek}=_f0,MV=dRQ(),jsY=tL(),OsY=Ha(),{MockCallHistory:PsY,MockCallHistoryLog:TsY}=La(),SsY=Oa(),ksY=za(),_sY=nwQ(),vsY=Ya(),ysY=NS(),{getGlobalDispatcher:vf0,setGlobalDispatcher:yf0}=_S(),hsY=XV(),gsY=ga();Object.assign(Sf0.prototype,MV);var zo=kf0;var ff0={redirect:JjQ(),responseError:GjQ(),retry:WjQ(),dump:UjQ(),dns:IjQ(),cache:gjQ(),decompress:cjQ()},HTQ={MemoryCacheStore:fa()};var hf0=pjQ();HTQ.SqliteCacheStore=hf0;var bf0={parseHeaders:Kk.parseHeaders,headerNameToString:Kk.headerNameToString};function sq(A){return(Q,B,Y)=>{if(typeof B==="function")Y=B,B=null;if(!Q||typeof Q!=="string"&&typeof Q!=="object"&&!(Q instanceof URL))throw new Ek("invalid url");if(B!=null&&typeof B!=="object")throw new Ek("invalid opts");if(B&&B.path!=null){if(typeof B.path!=="string")throw new Ek("invalid opts.path");let X=B.path;if(!B.path.startsWith("/"))X=`/${X}`;Q=new URL(Kk.parseOrigin(Q).origin+X)}else{if(!B)B=typeof Q==="object"?Q:{};Q=Kk.parseURL(Q)}let{agent:J,dispatcher:C=vf0()}=B;if(J)throw new Ek("unsupported opts.agent. Did you mean opts.client?");return A.call(C,{...B,origin:Q.origin,path:Q.search?`${Q.pathname}${Q.search}`:Q.pathname,method:B.method||(B.body?"PUT":"GET")},Y)}}var Ro=yf0;var xsY=mq().fetch;var mf0=n$().Headers,uf0=fq().Response,df0=$V().Request,cf0=rT().FormData;var{setGlobalOrigin:fsY,getGlobalOrigin:bsY}=Gr();var{CacheStorage:gf0}=eOQ(),{kConstruct:xf0}=Q0();var lf0=new gf0(xf0);var{deleteCookie:msY,getCookies:usY,getSetCookies:dsY,setCookie:csY,parseCookie:lsY}=UPQ();var{parseMIMEType:psY,serializeAMimeType:isY}=g8();var{CloseEvent:nsY,ErrorEvent:ssY,MessageEvent:rsY}=Bk(),{WebSocket:asY,ping:osY}=nPQ();var pf0=QTQ().WebSocketStream,if0=Do().WebSocketError,nf0=sq(MV.request),sf0=sq(MV.stream),rf0=sq(MV.pipeline),af0=sq(MV.connect),of0=sq(MV.upgrade);var{EventSource:tsY}=ITQ();var Vk=`-----BEGIN CERTIFICATE----- MIIGBzCCBO+gAwIBAgIQA9LHaXW2UWQvBpWa4wqL9DANBgkqhkiG9w0BAQsFADA8 MQswCQYDVQQGEwJVUzEPMA0GA1UEChMGQW1hem9uMRwwGgYDVQQDExNBbWF6b24g UlNBIDIwNDggTTAxMB4XDTI1MTEyMDAwMDAwMFoXDTI2MTIxOTIzNTk1OVowIzEh @@ -373,7 +373,7 @@ eyKdpwAJfqxGF4PcnCZXmTA5YpaP7dreqsXMGz7KQ2hsVxa81Q4gLv7/wmpdLqBK bRRYh5TmOTFffHPLkIhqhBGWJ6bt2YFGpn6jcgAKUj6DiAdjd4lpFw85hdKrCEVN 0FE6/V1dN2RMfjCyVSRCnTawXZwXgWHxyvkQAiSr6w10kY17RSlQOYiypok1JR4U akcjMS9cmvqtmg5iUaQqqcT5NJ0hGA== ------END CERTIFICATE-----`,$k=`-----BEGIN PRIVATE KEY----- +-----END CERTIFICATE-----`,Ik=`-----BEGIN PRIVATE KEY----- MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCI5r4r3cbPEAD8 3pJat30j5Jkd0ovxNafy9oO5Sd1slsFHNwJoLD/AfBg3nYjDMpt8HlSiIjH5ixg8 /rbLyq4wmN8/z7DRcyrOuv7rqtU9Enm2wlcGjYUypZFv/heTutGmDE2RA9daEfEk @@ -400,4 +400,4 @@ wzUfQXDpZndkqxHilERgvPXLEsTTCMF/W+C8gsO9AoGAZWt+CU6zQhqMBB5MMGZf UE5WUS/oOd4jHBqwVxBTLOAPlmnQSp1uiTu2K0NrnnvZ6Zi/+tIsjbtxhomeOmnH +wsk9n+Bif4P7VTvwqc9FY4Ya79PEJK+J/xx/mldUEz3R63RiRXZAaDddO7yCQFX W8eeuIMLKU6dSq0yu22+nyU= ------END PRIVATE KEY-----`;Uo(new $o({connections:50,pipelining:1,keepAliveTimeout:30000,keepAliveMaxTimeout:60000,connect:{timeout:1e4},headersTimeout:15000,bodyTimeout:30000}));var Uk=process.env.PORT??8080,Ko="0.15.2",Vo;((J)=>{J.READY="WEBSERVER.READY";J.STOPPED="WEBSERVER.STOPPED";J.ERROR="WEBSERVER.ERROR";J.UPGRADE="WEBSERVER.UPGRADE"})(Vo||={});var xf0={"access-control-allow-origin":"*"},ff0={".html":"text/html",".css":"text/css",".js":"text/javascript",".mjs":"text/javascript",".json":"application/json",".gltf":"model/gltf+json",".glb":"model/gltf-binary",".png":"image/png",".jpg":"image/jpeg",".jpeg":"image/jpeg",".webp":"image/webp",".gif":"image/gif",".svg":"image/svg+xml",".ico":"image/x-icon",".ktx2":"image/ktx2",".mp3":"audio/mpeg",".ogg":"audio/ogg",".wav":"audio/wav",".mp4":"video/mp4",".webm":"video/webm",".woff":"font/woff",".woff2":"font/woff2",".ttf":"font/ttf",".bin":"application/octet-stream",".wasm":"application/wasm"};class NV extends FQ{static instance=new NV;_server;_assetCache=new Map;_assetDirs=[];constructor(){super();this._assetDirs.push(Eo.resolve("assets"));let A=zY.assetsLibraryPath;if(A)this._assetDirs.push(A)}start(){if(this._server)return n.warning("WebServer.start(): already started");this._server=hf0.createSecureServer({key:$k,cert:Zk,allowHTTP1:!0}),this._server.on("request",this._onRequest),this._server.on("upgrade",this._onUpgrade),this._server.on("error",this._onError),this._server.on("close",this._onStopped),this._server.listen(Uk,this._onStarted),console.info(`WebServer.start(): Server running on port ${Uk}`)}stop(){if(!this._server)return n.warning("WebServer.stop(): not started"),Promise.resolve(!1);return new Promise((A,Q)=>{this._server.close((B)=>B?Q(B):A(!0))})}_onStarted=()=>this.emitWithGlobal("WEBSERVER.READY",{});_onStopped=()=>this.emitWithGlobal("WEBSERVER.STOPPED",{});_onError=(A)=>{n.error(`WebServer._onError(): ${A.message}`),this.emitWithGlobal("WEBSERVER.ERROR",{error:A})};_onRequest=(A,Q)=>{Q.on("error",()=>{});let B=A.url||"/",J=(A.method||"GET")==="HEAD",C=(G,F={})=>{Q.writeHead(G,{...F,...xf0})};if(B==="/"){C(200,{"content-type":"application/json"}),Q.end(!J?JSON.stringify({status:"OK",version:Ko,runtime:"node",playerCount:u8.instance.playerCount}):void 0);return}let X=decodeURIComponent(B.split("?")[0]);if(X.includes("..")){C(400),Q.end();return}for(let G of this._assetDirs){let F=Eo.join(G,X);if(!F.startsWith(G))continue;let W=zY.assetsLibraryPath;if(W&&F.startsWith(W)&&!B.includes("noSync"))zY.instance.syncAsset(F);let Z=this._assetCache.get(F);if(!Z)try{let E=BTQ.statSync(F);if(!E.isFile())continue;Z={size:E.size,etag:`"${E.mtimeMs.toString(36)}-${E.size.toString(36)}"`},this._assetCache.set(F,Z)}catch{continue}if(A.headers["if-none-match"]===Z.etag){C(304),Q.end();return}let U={"content-type":ff0[Eo.extname(F).toLowerCase()]||"application/octet-stream","content-length":Z.size,etag:Z.etag,"cache-control":"public, max-age=0, must-revalidate"};if(J){C(200,U),Q.end();return}C(200,U);let $=BTQ.createReadStream(F);Q.on("close",()=>$.destroy()),$.on("error",()=>Q.destroy()),$.pipe(Q);return}C(404),Q.end()};_onUpgrade=(A,Q,B)=>{this.emitWithGlobal("WEBSERVER.UPGRADE",{req:A,socket:Q,head:B})}}var e$;((I)=>{I.BUILD_PACKETS="build_packets";I.ENTITIES_EMIT_UPDATES="entities_emit_updates";I.ENTITIES_TICK="entities_tick";I.NETWORK_SYNCHRONIZE="network_synchronize";I.NETWORK_SYNCHRONIZE_CLEANUP="network_synchronize_cleanup";I.PHYSICS_CLEANUP="physics_cleanup";I.PHYSICS_STEP="physics_step";I.SEND_ALL_PACKETS="send_all_packets";I.SEND_PACKETS="send_packets";I.SERIALIZE_FREE_BUFFERS="serialize_free_buffers";I.SERIALIZE_PACKETS="serialize_packets";I.SERIALIZE_PACKETS_ENCODE="serialize_packets_encode";I.SIMULATION_STEP="simulation_step";I.TICKER_TICK="ticker_tick";I.WORLD_TICK="world_tick"})(e$||={});class o0{static getProcessStats(A=!1){let Q=process.memoryUsage(),B={jsHeapSizeMb:{value:Q.heapUsed/1024/1024,unit:"megabyte"},jsHeapCapacityMb:{value:Q.heapTotal/1024/1024,unit:"megabyte"},jsHeapUsagePercent:{value:Q.heapUsed/Q.heapTotal,unit:"percent"},processHeapSizeMb:{value:Q.heapUsed/1024/1024,unit:"megabyte"},rssSizeMb:{value:Q.rss/1024/1024,unit:"megabyte"}};if(A)return B;return Object.fromEntries(Object.entries(B).map(([Y,J])=>[Y,J.value]))}static initializeSentry(A,Q=50){if(yE())return;OT({dsn:A,release:Ko,environment:process.env.NODE_ENV||"development",tracesSampleRate:1,initialScope:{tags:{gameId:process.env.HYTOPIA_GAME_ID??"unknown",gameSlug:process.env.HYTOPIA_GAME_SLUG??"unknown",lobbyId:process.env.HYTOPIA_LOBBY_ID??"unknown",region:process.env.REGION??"unknown"}},beforeSend:(B)=>{return B.extra=o0.getProcessStats(),B},beforeSendTransaction:(B)=>{if(B.contexts?.trace?.op==="ticker_tick"){let J=B?.start_timestamp,C=B?.timestamp;if(!J||!C)return null;if((C-J)*1000>Q)return B.measurements=o0.getProcessStats(!0),B}return null}})}static startSpan(A,Q){if(yE())return w5({attributes:A.attributes,name:A.operation,op:A.operation},Q);else return Q()}static sentry(){return Ls}}if(!gw)console.warn("Connection: msgpackr native acceleration is not enabled, using fallback implementation.");var YTQ=new IZ({useFloat32:cD.ALWAYS}),mf0=30000;class $1 extends FQ{static _cachedPacketsSerializedBuffer=new Map;_closeTimeout=null;_isDuplicate=!1;_ws;_wsBinding=!1;_wt;_wtBinding=!1;_wtReliableReader;_wtReliableWriter;_wtUnreliableReader;_wtUnreliableWriter;id;initialConnectionParams;constructor(A,Q,B,Y){super();this.id=dIA(),this.initialConnectionParams=B,this.onPacket(gQ.PacketId.HEARTBEAT,this._onHeartbeatPacket);let J=()=>{FQ.globalInstance.emit("CONNECTION.OPENED",{connection:this,session:Y})};if(A)this.bindWs(A),J();else if(Q)this.bindWt(Q).then(J).catch((C)=>{this._onClose(),n.error(`Connection.constructor(): Failed to bind WebTransport. Error: ${C}`)})}get isDuplicate(){return this._isDuplicate}static clearCachedPacketsSerializedBuffers(){if($1._cachedPacketsSerializedBuffer.size>0)$1._cachedPacketsSerializedBuffer.clear()}static serializePackets(A){for(let B of A)if(!gQ.isValidPacket(B))return n.error(`Connection.serializePackets(): Invalid packet payload: ${JSON.stringify(B)}`);let Q=$1._cachedPacketsSerializedBuffer.get(A);if(Q)return Q;return o0.startSpan({operation:"serialize_packets",attributes:{packets:A.length,packetIds:A.map((B)=>B[0]).join(",")}},(B)=>{let Y=YTQ.pack(A);if(Y.byteLength>65536)Y=bf0(Y,{level:1});return B?.setAttribute("serializedBytes",Y.byteLength),$1._cachedPacketsSerializedBuffer.set(A,Y),Y})}bindWs(A){this._wsBinding=!0;let Q=this._handleReconnect();if(this._cleanupConnections(),this._ws=A,this._ws.binaryType="nodebuffer",this._ws.onmessage=(B)=>this._onMessage(B.data),this._ws.onclose=this._onClose,this._ws.onerror=this._onError,this._wsBinding=!1,this._signalConnectionId(),Q)this.emitWithGlobal("CONNECTION.RECONNECTED",{connection:this})}async bindWt(A){this._wtBinding=!0;let Q=this._handleReconnect();this._cleanupConnections(),A.userData.onclose=this._onClose,A.closed.catch(()=>{}).finally(()=>A.userData.onclose?.()),this._wt=A;try{await A.ready;let B=A.incomingBidirectionalStreams.getReader();try{let{value:Y}=await B.read();if(Y)this._wtReliableReader=Y.readable,this._wtReliableWriter=Y.writable.getWriter()}finally{B.releaseLock()}this._wtUnreliableReader=A.datagrams.readable,this._wtUnreliableWriter=A.datagrams.createWritable().getWriter()}catch{this._wtBinding=!1;return}if(this._wtBinding=!1,this._wt!==A)return;if((async()=>{if(!this._wtReliableReader)throw Error("Connection.bindWt(): Reliable reader not found.");let B=gQ.createPacketBufferUnframer((Y)=>{this._onMessage(Y)});for await(let Y of this._wtReliableReader){if(A!==this._wt)return;B(Y)}})().catch(()=>{try{A?.close()}catch{}}),(async()=>{if(!this._wtUnreliableReader)throw Error("Connection.bindWt(): Unreliable reader not found.");for await(let B of this._wtUnreliableReader){if(A!==this._wt)return;this._onMessage(B)}})().catch(()=>{try{A?.close()}catch{}}),this._signalConnectionId(),Q)this.emitWithGlobal("CONNECTION.RECONNECTED",{connection:this})}disconnect(){try{this._ws?.close(),this._wt?.close()}catch(A){n.error(`Connection.disconnect(): Connection disconnect failed. Error: ${A}`)}}killDuplicateConnection(){this._isDuplicate=!0,this._cleanupConnections(),this.emitWithGlobal("CONNECTION.DISCONNECTED",{connection:this}),this._finalizeClose()}onPacket(A,Q){this.on("CONNECTION.PACKET_RECEIVED",({packet:B})=>{if(B[0]===A)Q(B)})}send(A,Q=!0){if(this._closeTimeout||this._wsBinding||this._wtBinding)return;if(!this._ws&&!this._wt)return;let B=this._ws&&this._ws.readyState===UE.default.OPEN,Y=this._wt&&this._wt.state==="connected";if(!B&&!Y)return;o0.startSpan({operation:"send_packets"},()=>{try{let J=$1.serializePackets(A);if(!J)return;if(Y)if(Q||J.byteLength>1200)this._wtReliableWriter?.write(gQ.framePacketBuffer(J)).catch(()=>{n.error("Connection.send(): WebTransport reliable write failed, connection closing?")});else this._wtUnreliableWriter?.write(J).catch(()=>{n.error("Connection.send(): WebTransport unreliable write failed, connection closing?")});else this._ws.send(J);this.emitWithGlobal("CONNECTION.PACKETS_SENT",{connection:this,packets:A})}catch(J){n.error(`Connection.send(): Packet send failed. Error: ${J}`)}})}_onHeartbeatPacket=()=>{this.send([gQ.createPacket(gQ.bidirectionalPackets.heartbeatPacketDefinition,null)],!0)};_onMessage=(A)=>{try{let Q=this._deserialize(A);if(!Q)return;this.emitWithGlobal("CONNECTION.PACKET_RECEIVED",{connection:this,packet:Q})}catch(Q){n.error(`Connection._ws.onmessage(): Error: ${Q}`)}};_onClose=()=>{this.emitWithGlobal("CONNECTION.DISCONNECTED",{connection:this}),this._closeTimeout=setTimeout(()=>this._finalizeClose(),mf0)};_onError=(A)=>{this.emitWithGlobal("CONNECTION.ERROR",{connection:this,error:A})};_cleanupConnections(){if(this._ws)this._ws.onmessage=()=>{},this._ws.onclose=()=>{},this._ws.onerror=()=>{};if(this._wt)this._wt.userData.onclose=()=>{};this._signalKill();try{this._ws?.close()}catch{}let A=this._wt;if(A)setTimeout(()=>{try{A.close()}catch{}},50);this._ws=void 0,this._wt=void 0,this._wtReliableReader=void 0,this._wtReliableWriter=void 0,this._wtUnreliableReader=void 0,this._wtUnreliableWriter=void 0}_deserialize(A){let Q=YTQ.unpack(A);if(!Q||typeof Q!=="object"||typeof Q[0]!=="number")return n.error(`Connection._deserialize(): Invalid packet format. Packet: ${JSON.stringify(Q)}`);if(!gQ.isValidPacket(Q))return n.error(`Connection._deserialize(): Invalid packet payload. Packet: ${JSON.stringify(Q)}`);return Q}_finalizeClose(){this.emitWithGlobal("CONNECTION.CLOSED",{connection:this}),this.offAll()}_handleReconnect(){let A=!!this._ws||!!this._wt;if(A&&this._closeTimeout)clearTimeout(this._closeTimeout),this._closeTimeout=null;return A}_signalConnectionId(){this.send([gQ.createPacket(gQ.bidirectionalPackets.connectionPacketDefinition,{i:this.id})])}_signalKill(){this.send([gQ.createPacket(gQ.bidirectionalPackets.connectionPacketDefinition,{k:!0})])}}class bB{_map=new Map;_values=[];_isDirty=!1;get size(){return this._map.size}get valuesArray(){if(this._isDirty)this._syncArray();return this._values}get(A){return this._map.get(A)}set(A,Q){let B=this._map.has(A);if(this._map.set(A,Q),!B)this._values.push(Q);else this._isDirty=!0;return this}has(A){return this._map.has(A)}delete(A){let Q=this._map.delete(A);if(Q)this._isDirty=!0;return Q}clear(){this._map.clear(),this._values.length=0,this._isDirty=!1}forEach(A,Q){this._map.forEach((B,Y)=>{A.call(Q,B,Y,this)})}keys(){return this._map.keys()}values(){return this._map.values()}entries(){return this._map.entries()}[Symbol.iterator](){return this._map[Symbol.iterator]()}_syncArray(){this._values.length=0;for(let A of this._map.values())this._values.push(A);this._isDirty=!1}}var uf0={x:0,y:-32,z:0},pq=60,Io;((J)=>{J.STEP_START="SIMULATION.STEP_START";J.STEP_END="SIMULATION.STEP_END";J.DEBUG_RAYCAST="SIMULATION.DEBUG_RAYCAST";J.DEBUG_RENDER="SIMULATION.DEBUG_RENDER"})(Io||={});class iq extends FQ{_colliderMap=new hD;_debugRaycastingEnabled=!1;_debugRenderingEnabled=!1;_debugRenderingFilterFlags;_rapierEventQueue;_rapierSimulation;_world;constructor(A,Q=pq,B=uf0){super();this._rapierEventQueue=new WB.EventQueue(!0),this._rapierSimulation=new WB.World(B),this._rapierSimulation.timestep=Math.fround(1/Q),this._world=A}get colliderMap(){return this._colliderMap}get isDebugRaycastingEnabled(){return this._debugRaycastingEnabled}get isDebugRenderingEnabled(){return this._debugRenderingEnabled}get gravity(){return this._rapierSimulation.gravity}get timestepS(){return this._rapierSimulation.timestep}get world(){return this._world}createRawCollider(A,Q){return this._rapierSimulation.createCollider(A,Q)}createRawRigidBody(A){return this._rapierSimulation.createRigidBody(A)}enableDebugRaycasting(A){this._debugRaycastingEnabled=A}enableDebugRendering(A,Q=WB.QueryFilterFlags.EXCLUDE_FIXED){this._debugRenderingEnabled=A,this._debugRenderingFilterFlags=Q}getContactManifolds(A,Q){let B=[];return this._rapierSimulation.narrowPhase.contactPair(A,Q,(Y,J)=>{if(Y.numContacts()===0)return;let C=Y.normal(),X=[];for(let G=0;G{let G=this._colliderMap.getColliderHandleBlockType(X.handle);if(G&&!J.has(G))return J.add(G),C.push({intersectedBlockType:G}),!0;let F=this._colliderMap.getColliderHandleEntity(X.handle);if(F&&!J.has(F))return J.add(F),C.push({intersectedEntity:F}),!0;return!0},Y.filterFlags,Y.filterGroups,Y.filterExcludeCollider,Y.filterExcludeRigidBody,Y.filterPredicate),C}raycast(A,Q,B,Y={}){let J=new WB.Ray(A,Q),C=this._rapierSimulation.castRay(J,B,Y.solidMode??!0,Y.filterFlags,Y.filterGroups,Y.filterExcludeCollider,Y.filterExcludeRigidBody,Y.filterPredicate);if(this._debugRaycastingEnabled)this.emitWithWorld(this._world,"SIMULATION.DEBUG_RAYCAST",{simulation:this,origin:A,direction:Q,length:B,hit:!!C});if(!C)return null;let X=J.pointAt(C.timeOfImpact),G=C.timeOfImpact,F=C.collider,W=this._colliderMap.getColliderHandleBlockType(F.handle);if(W)return{hitBlock:G4.fromGlobalCoordinate({x:Math.floor(X.x-(J.dir.x<0?0.0001:-0.0001)),y:Math.floor(X.y-(J.dir.y<0?0.0001:-0.0001)),z:Math.floor(X.z-(J.dir.z<0?0.0001:-0.0001))},W),hitPoint:X,hitDistance:G,origin:A,originDirection:Q};let Z=this._colliderMap.getColliderHandleEntity(F.handle);if(Z)return{hitEntity:Z,hitPoint:X,hitDistance:G,origin:A,originDirection:Q};return null}removeRawCollider(A){this._colliderMap.queueColliderHandleForCleanup(A.handle),this._rapierSimulation.removeCollider(A,!1)}removeRawRigidBody(A){this._rapierSimulation.removeRigidBody(A)}setGravity(A){this._rapierSimulation.gravity=A}step=(A)=>{this.emitWithWorld(this._world,"SIMULATION.STEP_START",{simulation:this,tickDeltaMs:A});let Q=performance.now();if(o0.startSpan({operation:"physics_step"},()=>{this._rapierSimulation.step(this._rapierEventQueue)}),o0.startSpan({operation:"physics_cleanup"},()=>{this._rapierEventQueue.drainContactForceEvents(this._onContactForceEvent),this._rapierEventQueue.drainCollisionEvents(this._onCollisionEvent),this._colliderMap.cleanup()}),this.emitWithWorld(this._world,"SIMULATION.STEP_END",{simulation:this,stepDurationMs:performance.now()-Q}),this._debugRenderingEnabled)this.emitWithWorld(this._world,"SIMULATION.DEBUG_RENDER",{simulation:this,...this._rapierSimulation.debugRender(this._debugRenderingFilterFlags)})};_onCollisionEvent=(A,Q,B)=>{let[Y,J]=this._getCollisionObjects(A,Q);if(!Y||!J)return;let C=(X,G)=>{if(X instanceof D8&&G instanceof m0&&X.hasListeners("BLOCK_TYPE.ENTITY_COLLISION"))X.emit("BLOCK_TYPE.ENTITY_COLLISION",{blockType:X,entity:G,started:B,colliderHandleA:A,colliderHandleB:Q});else if(X instanceof m0&&G instanceof D8&&X.hasListeners("ENTITY.BLOCK_COLLISION"))X.emit("ENTITY.BLOCK_COLLISION",{entity:X,blockType:G,started:B,colliderHandleA:A,colliderHandleB:Q});else if(X instanceof m0&&G instanceof m0&&X.hasListeners("ENTITY.ENTITY_COLLISION"))X.emit("ENTITY.ENTITY_COLLISION",{entity:X,otherEntity:G,started:B,colliderHandleA:A,colliderHandleB:Q});else if(typeof X==="function"&&(G instanceof m0||G instanceof D8))X(G,B,A,Q)};C(Y,J),C(J,Y)};_onContactForceEvent=(A)=>{let[Q,B]=this._getCollisionObjects(A.collider1(),A.collider2());if(!Q||typeof Q==="function"||!B||typeof B==="function")return;let Y={totalForce:A.totalForce(),totalForceMagnitude:A.totalForceMagnitude(),maxForceDirection:A.maxForceDirection(),maxForceMagnitude:A.maxForceMagnitude()},J=(C,X)=>{if(C instanceof D8&&X instanceof m0&&C.hasListeners("BLOCK_TYPE.ENTITY_CONTACT_FORCE"))C.emit("BLOCK_TYPE.ENTITY_CONTACT_FORCE",{blockType:C,entity:X,contactForceData:Y});else if(C instanceof m0&&X instanceof D8&&C.hasListeners("ENTITY.BLOCK_CONTACT_FORCE"))C.emit("ENTITY.BLOCK_CONTACT_FORCE",{entity:C,blockType:X,contactForceData:Y});else if(C instanceof m0&&X instanceof m0&&C.hasListeners("ENTITY.ENTITY_CONTACT_FORCE"))C.emit("ENTITY.ENTITY_CONTACT_FORCE",{entity:C,otherEntity:X,contactForceData:Y})};J(Q,B),J(B,Q)};_getCollisionObjects(A,Q){let B=this._colliderMap.getColliderHandleBlockType(A)??this._colliderMap.getColliderHandleCollisionCallback(A)??this._colliderMap.getColliderHandleEntity(A),Y=this._colliderMap.getColliderHandleBlockType(Q)??this._colliderMap.getColliderHandleCollisionCallback(Q)??this._colliderMap.getColliderHandleEntity(Q);return[B,Y]}}var Ho;((l)=>{l.BURST="PARTICLE_EMITTER.BURST";l.DESPAWN="PARTICLE_EMITTER.DESPAWN";l.SET_ALPHA_TEST="PARTICLE_EMITTER.SET_ALPHA_TEST";l.SET_ATTACHED_TO_ENTITY="PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY";l.SET_ATTACHED_TO_ENTITY_NODE_NAME="PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY_NODE_NAME";l.SET_COLOR_END="PARTICLE_EMITTER.SET_COLOR_END";l.SET_COLOR_END_VARIANCE="PARTICLE_EMITTER.SET_COLOR_END_VARIANCE";l.SET_COLOR_INTENSITY_END="PARTICLE_EMITTER.SET_COLOR_INTENSITY_END";l.SET_COLOR_INTENSITY_END_VARIANCE="PARTICLE_EMITTER.SET_COLOR_INTENSITY_END_VARIANCE";l.SET_COLOR_INTENSITY_START="PARTICLE_EMITTER.SET_COLOR_INTENSITY_START";l.SET_COLOR_INTENSITY_START_VARIANCE="PARTICLE_EMITTER.SET_COLOR_INTENSITY_START_VARIANCE";l.SET_COLOR_START="PARTICLE_EMITTER.SET_COLOR_START";l.SET_COLOR_START_VARIANCE="PARTICLE_EMITTER.SET_COLOR_START_VARIANCE";l.SET_GRAVITY="PARTICLE_EMITTER.SET_GRAVITY";l.SET_LIFETIME="PARTICLE_EMITTER.SET_LIFETIME";l.SET_LIFETIME_VARIANCE="PARTICLE_EMITTER.SET_LIFETIME_VARIANCE";l.SET_MAX_PARTICLES="PARTICLE_EMITTER.SET_MAX_PARTICLES";l.SET_OFFSET="PARTICLE_EMITTER.SET_OFFSET";l.SET_ORIENTATION="PARTICLE_EMITTER.SET_ORIENTATION";l.SET_ORIENTATION_FIXED_ROTATION="PARTICLE_EMITTER.SET_ORIENTATION_FIXED_ROTATION";l.SET_OPACITY_END="PARTICLE_EMITTER.SET_OPACITY_END";l.SET_OPACITY_END_VARIANCE="PARTICLE_EMITTER.SET_OPACITY_END_VARIANCE";l.SET_OPACITY_START="PARTICLE_EMITTER.SET_OPACITY_START";l.SET_OPACITY_START_VARIANCE="PARTICLE_EMITTER.SET_OPACITY_START_VARIANCE";l.SET_PAUSED="PARTICLE_EMITTER.SET_PAUSED";l.SET_POSITION="PARTICLE_EMITTER.SET_POSITION";l.SET_POSITION_VARIANCE="PARTICLE_EMITTER.SET_POSITION_VARIANCE";l.SET_RATE="PARTICLE_EMITTER.SET_RATE";l.SET_RATE_VARIANCE="PARTICLE_EMITTER.SET_RATE_VARIANCE";l.SET_SIZE_END="PARTICLE_EMITTER.SET_SIZE_END";l.SET_SIZE_END_VARIANCE="PARTICLE_EMITTER.SET_SIZE_END_VARIANCE";l.SET_SIZE_START="PARTICLE_EMITTER.SET_SIZE_START";l.SET_SIZE_START_VARIANCE="PARTICLE_EMITTER.SET_SIZE_START_VARIANCE";l.SET_TEXTURE_URI="PARTICLE_EMITTER.SET_TEXTURE_URI";l.SET_TRANSPARENT="PARTICLE_EMITTER.SET_TRANSPARENT";l.SET_VELOCITY="PARTICLE_EMITTER.SET_VELOCITY";l.SET_VELOCITY_VARIANCE="PARTICLE_EMITTER.SET_VELOCITY_VARIANCE";l.SPAWN="PARTICLE_EMITTER.SPAWN"})(Ho||={});class Do extends FQ{_id;_alphaTest;_attachedToEntity;_attachedToEntityNodeName;_colorEnd;_colorEndVariance;_colorIntensityEnd;_colorIntensityEndVariance;_colorIntensityStart;_colorIntensityStartVariance;_colorStart;_colorStartVariance;_gravity;_lifetime;_lifetimeVariance;_lockToEmitter;_maxParticles;_offset;_orientation;_orientationFixedRotation;_opacityEnd;_opacityEndVariance;_opacityStart;_opacityStartVariance;_paused;_position;_positionVariance;_rate;_rateVariance;_sizeEnd;_sizeEndVariance;_sizeStart;_sizeStartVariance;_sizeVariance;_textureUri;_transparent;_velocity;_velocityVariance;_world;constructor(A){if(!!A.attachedToEntity===!!A.position)n.fatalError("Either attachedToEntity or position must be set, but not both.");if(!A.textureUri)n.fatalError("ParticleEmitter.constructor(): textureUri must be provided.");super();this._alphaTest=A.alphaTest??0.05,this._attachedToEntity=A.attachedToEntity,this._attachedToEntityNodeName=A.attachedToEntityNodeName,this._colorEnd=A.colorEnd,this._colorEndVariance=A.colorEndVariance,this._colorIntensityEnd=A.colorIntensityEnd,this._colorIntensityEndVariance=A.colorIntensityEndVariance,this._colorIntensityStart=A.colorIntensityStart,this._colorIntensityStartVariance=A.colorIntensityStartVariance,this._colorStart=A.colorStart,this._colorStartVariance=A.colorStartVariance,this._gravity=A.gravity,this._lifetime=A.lifetime,this._lifetimeVariance=A.lifetimeVariance,this._lockToEmitter=A.lockToEmitter??!1,this._maxParticles=A.maxParticles,this._offset=A.offset,this._orientation=A.orientation,this._orientationFixedRotation=A.orientationFixedRotation,this._opacityEnd=A.opacityEnd,this._opacityEndVariance=A.opacityEndVariance,this._opacityStart=A.opacityStart,this._opacityStartVariance=A.opacityStartVariance,this._paused=!1,this._position=A.position,this._positionVariance=A.positionVariance,this._rate=A.rate,this._rateVariance=A.rateVariance,this._sizeEnd=A.sizeEnd,this._sizeEndVariance=A.sizeEndVariance,this._sizeStart=A.sizeStart,this._sizeStartVariance=A.sizeStartVariance,this._textureUri=A.textureUri,this._transparent=A.transparent,this._velocity=A.velocity,this._velocityVariance=A.velocityVariance}get id(){return this._id}get alphaTest(){return this._alphaTest}get attachedToEntity(){return this._attachedToEntity}get attachedToEntityNodeName(){return this._attachedToEntityNodeName}get colorEnd(){return this._colorEnd}get colorEndVariance(){return this._colorEndVariance}get colorIntensityEnd(){return this._colorIntensityEnd}get colorIntensityEndVariance(){return this._colorIntensityEndVariance}get colorIntensityStart(){return this._colorIntensityStart}get colorIntensityStartVariance(){return this._colorIntensityStartVariance}get colorStart(){return this._colorStart}get colorStartVariance(){return this._colorStartVariance}get gravity(){return this._gravity}get isSpawned(){return this._id!==void 0}get lifetime(){return this._lifetime}get lifetimeVariance(){return this._lifetimeVariance}get lockToEmitter(){return this._lockToEmitter}get maxParticles(){return this._maxParticles}get offset(){return this._offset}get orientation(){return this._orientation}get orientationFixedRotation(){return this._orientationFixedRotation}get opacityEnd(){return this._opacityEnd}get opacityEndVariance(){return this._opacityEndVariance}get opacityStart(){return this._opacityStart}get opacityStartVariance(){return this._opacityStartVariance}get paused(){return this._paused}get position(){return this._position}get positionVariance(){return this._positionVariance}get rate(){return this._rate}get rateVariance(){return this._rateVariance}get sizeEnd(){return this._sizeEnd}get sizeEndVariance(){return this._sizeEndVariance}get sizeStart(){return this._sizeStart}get sizeStartVariance(){return this._sizeStartVariance}get sizeVariance(){return this._sizeVariance}get textureUri(){return this._textureUri}get transparent(){return this._transparent}get velocity(){return this._velocity}get velocityVariance(){return this._velocityVariance}get world(){return this._world}setAlphaTest(A){if(this._alphaTest===A)return;if(this._alphaTest=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_ALPHA_TEST",{particleEmitter:this,alphaTest:A})}setAttachedToEntity(A){if(!A.isSpawned)return n.error(`ParticleEmitter.setAttachedToEntity(): Entity ${A.id} is not spawned!`);if(this._attachedToEntity===A)return;if(this._attachedToEntity=A,this._position=void 0,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY",{particleEmitter:this,entity:A})}setAttachedToEntityNodeName(A){if(this._attachedToEntityNodeName===A)return;if(this._attachedToEntityNodeName=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY_NODE_NAME",{particleEmitter:this,attachedToEntityNodeName:A})}setColorEnd(A){if(this._colorEnd&&this._colorEnd.r===A.r&&this._colorEnd.g===A.g&&this._colorEnd.b===A.b)return;if(this._colorEnd=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_END",{particleEmitter:this,colorEnd:A})}setColorEndVariance(A){if(this._colorEndVariance&&this._colorEndVariance.r===A.r&&this._colorEndVariance.g===A.g&&this._colorEndVariance.b===A.b)return;if(this._colorEndVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_END_VARIANCE",{particleEmitter:this,colorEndVariance:A})}setColorIntensityEnd(A){if(this._colorIntensityEnd===A)return;if(this._colorIntensityEnd=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_INTENSITY_END",{particleEmitter:this,colorIntensityEnd:A})}setColorIntensityEndVariance(A){if(this._colorIntensityEndVariance===A)return;if(this._colorIntensityEndVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_INTENSITY_END_VARIANCE",{particleEmitter:this,colorIntensityEndVariance:A})}setColorIntensityStart(A){if(this._colorIntensityStart===A)return;if(this._colorIntensityStart=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_INTENSITY_START",{particleEmitter:this,colorIntensityStart:A})}setColorIntensityStartVariance(A){if(this._colorIntensityStartVariance===A)return;if(this._colorIntensityStartVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_INTENSITY_START_VARIANCE",{particleEmitter:this,colorIntensityStartVariance:A})}setColorStart(A){if(this._colorStart&&this._colorStart.r===A.r&&this._colorStart.g===A.g&&this._colorStart.b===A.b)return;if(this._colorStart=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_START",{particleEmitter:this,colorStart:A})}setColorStartVariance(A){if(this._colorStartVariance&&this._colorStartVariance.r===A.r&&this._colorStartVariance.g===A.g&&this._colorStartVariance.b===A.b)return;if(this._colorStartVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_START_VARIANCE",{particleEmitter:this,colorStartVariance:A})}setGravity(A){if(this._gravity&&this._gravity.x===A.x&&this._gravity.y===A.y&&this._gravity.z===A.z)return;if(this._gravity=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_GRAVITY",{particleEmitter:this,gravity:A})}setLifetime(A){if(this._lifetime===A)return;if(this._lifetime=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_LIFETIME",{particleEmitter:this,lifetime:A})}setLifetimeVariance(A){if(this._lifetimeVariance===A)return;if(this._lifetimeVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_LIFETIME_VARIANCE",{particleEmitter:this,lifetimeVariance:A})}setMaxParticles(A){if(this._maxParticles===A)return;if(this._maxParticles=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_MAX_PARTICLES",{particleEmitter:this,maxParticles:A})}setOffset(A){if(this._offset&&this._offset.x===A.x&&this._offset.y===A.y&&this._offset.z===A.z)return;if(this._offset=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_OFFSET",{particleEmitter:this,offset:A})}setOrientation(A){if(this._orientation===A)return;if(this._orientation=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_ORIENTATION",{particleEmitter:this,orientation:A})}setOrientationFixedRotation(A){if(this._orientationFixedRotation&&this._orientationFixedRotation.x===A.x&&this._orientationFixedRotation.y===A.y&&this._orientationFixedRotation.z===A.z)return;if(this._orientationFixedRotation=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_ORIENTATION_FIXED_ROTATION",{particleEmitter:this,orientationFixedRotation:A})}setOpacityEnd(A){if(this._opacityEnd===A)return;if(this._opacityEnd=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_OPACITY_END",{particleEmitter:this,opacityEnd:A})}setOpacityEndVariance(A){if(this._opacityEndVariance===A)return;if(this._opacityEndVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_OPACITY_END_VARIANCE",{particleEmitter:this,opacityEndVariance:A})}setOpacityStart(A){if(this._opacityStart===A)return;if(this._opacityStart=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_OPACITY_START",{particleEmitter:this,opacityStart:A})}setOpacityStartVariance(A){if(this._opacityStartVariance===A)return;if(this._opacityStartVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_OPACITY_START_VARIANCE",{particleEmitter:this,opacityStartVariance:A})}setPosition(A){if(this._position&&this._position.x===A.x&&this._position.y===A.y&&this._position.z===A.z)return;if(this._position=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_POSITION",{particleEmitter:this,position:A})}setPositionVariance(A){if(this._positionVariance&&this._positionVariance.x===A.x&&this._positionVariance.y===A.y&&this._positionVariance.z===A.z)return;if(this._positionVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_POSITION_VARIANCE",{particleEmitter:this,positionVariance:A})}setRate(A){if(this._rate===A)return;if(this._rate=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_RATE",{particleEmitter:this,rate:A})}setRateVariance(A){if(this._rateVariance===A)return;if(this._rateVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_RATE_VARIANCE",{particleEmitter:this,rateVariance:A})}setSizeEnd(A){if(this._sizeEnd===A)return;if(this._sizeEnd=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_SIZE_END",{particleEmitter:this,sizeEnd:A})}setSizeEndVariance(A){if(this._sizeEndVariance===A)return;if(this._sizeEndVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_SIZE_END_VARIANCE",{particleEmitter:this,sizeEndVariance:A})}setSizeStart(A){if(this._sizeStart===A)return;if(this._sizeStart=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_SIZE_START",{particleEmitter:this,sizeStart:A})}setSizeStartVariance(A){if(this._sizeStartVariance===A)return;if(this._sizeStartVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_SIZE_START_VARIANCE",{particleEmitter:this,sizeStartVariance:A})}setTextureUri(A){if(this._textureUri===A)return;if(this._textureUri=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_TEXTURE_URI",{particleEmitter:this,textureUri:A})}setTransparent(A){if(this._transparent===A)return;if(this._transparent=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_TRANSPARENT",{particleEmitter:this,transparent:A})}setVelocity(A){if(this._velocity&&this._velocity.x===A.x&&this._velocity.y===A.y&&this._velocity.z===A.z)return;if(this._velocity=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_VELOCITY",{particleEmitter:this,velocity:A})}setVelocityVariance(A){if(this._velocityVariance&&this._velocityVariance.x===A.x&&this._velocityVariance.y===A.y&&this._velocityVariance.z===A.z)return;if(this._velocityVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_VELOCITY_VARIANCE",{particleEmitter:this,velocityVariance:A})}burst(A){if(this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.BURST",{particleEmitter:this,count:A})}despawn(){if(!this.isSpawned||!this._world)return;this._world.particleEmitterManager.unregisterParticleEmitter(this),this.emitWithWorld(this._world,"PARTICLE_EMITTER.DESPAWN",{particleEmitter:this}),this._id=void 0,this._world=void 0}restart(){if(!this._paused)return;if(this._paused=!1,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_PAUSED",{particleEmitter:this,paused:this._paused})}stop(){if(this._paused)return;if(this._paused=!0,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_PAUSED",{particleEmitter:this,paused:this._paused})}spawn(A){if(this.isSpawned)return;if(this._attachedToEntity&&!this._attachedToEntity.isSpawned)return n.error(`ParticleEmitter.spawn(): Attached entity ${this._attachedToEntity.id} must be spawned before spawning ParticleEmitter!`);this._id=A.particleEmitterManager.registerParticleEmitter(this),this._world=A,this.emitWithWorld(A,"PARTICLE_EMITTER.SPAWN",{particleEmitter:this})}serialize(){return CQ.serializeParticleEmitter(this)}}var df0=30,cf0=Math.round(pq/df0);class Ek{_outboundPerPlayerReliablePackets=new bB;_outboundSharedReliablePackets=[];_outboundSharedUnreliablePackets=[];_queuedAudioSyncs={broadcast:new bB,perPlayer:new bB};_queuedBlockSyncs={broadcast:new bB,perPlayer:new bB};_queuedBlockTypeSyncs={broadcast:new bB,perPlayer:new bB};_queuedChunkSyncs={broadcast:new bB,perPlayer:new bB};_queuedEntitySyncs={broadcast:new bB,perPlayer:new bB};_queuedParticleEmitterSyncs={broadcast:new bB,perPlayer:new bB};_queuedPlayerSyncs={broadcast:new bB,perPlayer:new bB};_queuedSceneUISyncs={broadcast:new bB,perPlayer:new bB};_queuedCameraSyncs={broadcast:void 0,perPlayer:new bB};_queuedChatMessagesSyncs={broadcast:void 0,perPlayer:new bB};_queuedDebugRaycastsSyncs={broadcast:void 0,perPlayer:new bB};_queuedDebugRenderSyncs={broadcast:void 0,perPlayer:new bB};_queuedNotificationPermissionRequestSyncs={broadcast:void 0,perPlayer:new bB};_queuedUISyncs={broadcast:void 0,perPlayer:new bB};_queuedUIDatasSyncs={broadcast:void 0,perPlayer:new bB};_queuedWorldSyncs={broadcast:void 0,perPlayer:new bB};_loadedSceneUIs=new Set;_spawnedChunks=new Set;_spawnedEntities=new Set;_world;constructor(A){this._world=A,this._subscribeToAudioEvents(),this._subscribeToBlockTypeRegistryEvents(),this._subscribeToChatEvents(),this._subscribeToChunkLatticeEvents(),this._subscribeToEntityEvents(),this._subscribeToEntityModelAnimationEvents(),this._subscribeToEntityModelNodeOverrideEvents(),this._subscribeToParticleEmitterEvents(),this._subscribeToPlayerEvents(),this._subscribeToPlayerCameraEvents(),this._subscribeToPlayerUIEvents(),this._subscribeToSceneUIEvents(),this._subscribeToSimulationEvents(),this._subscribeToWorldEvents()}shouldSynchronize(){return this._world.loop.currentTick%cf0===0}synchronize(){let A=this._world.loop.currentTick;if(this._queuedEntitySyncs.broadcast.size>0){let Q=[],B=[];for(let Y of this._queuedEntitySyncs.broadcast.valuesArray){let J=!1;for(let C in Y)if(J=C!=="i"&&C!=="p"&&C!=="r",J)break;(J?Q:B).push(Y)}if(B.length>0){let Y=gQ.createPacket(gQ.outboundPackets.entitiesPacketDefinition,B,A);this._outboundSharedUnreliablePackets.push(Y)}if(Q.length>0){let Y=gQ.createPacket(gQ.outboundPackets.entitiesPacketDefinition,Q,A);this._outboundSharedReliablePackets.push(Y);for(let J of this._outboundPerPlayerReliablePackets.valuesArray)J.push(Y)}}if(this._queuedEntitySyncs.perPlayer.size>0)for(let[Q,B]of this._queuedEntitySyncs.perPlayer.entries())this._outboundPerPlayerReliablePackets.get(Q)?.push(gQ.createPacket(gQ.outboundPackets.entitiesPacketDefinition,B.valuesArray,A));this._collectSingletonSyncToOutboundPackets(this._queuedCameraSyncs,gQ.outboundPackets.cameraPacketDefinition),this._collectSyncToOutboundPackets(this._queuedAudioSyncs,gQ.outboundPackets.audiosPacketDefinition),this._collectSyncToOutboundPackets(this._queuedBlockTypeSyncs,gQ.outboundPackets.blockTypesPacketDefinition),this._collectSyncToOutboundPackets(this._queuedChunkSyncs,gQ.outboundPackets.chunksPacketDefinition),this._collectSyncToOutboundPackets(this._queuedBlockSyncs,gQ.outboundPackets.blocksPacketDefinition),this._collectSyncToOutboundPackets(this._queuedParticleEmitterSyncs,gQ.outboundPackets.particleEmittersPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedUISyncs,gQ.outboundPackets.uiPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedUIDatasSyncs,gQ.outboundPackets.uiDatasPacketDefinition),this._collectSyncToOutboundPackets(this._queuedSceneUISyncs,gQ.outboundPackets.sceneUIsPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedWorldSyncs,gQ.outboundPackets.worldPacketDefinition),this._collectSyncToOutboundPackets(this._queuedPlayerSyncs,gQ.outboundPackets.playersPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedChatMessagesSyncs,gQ.outboundPackets.chatMessagesPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedNotificationPermissionRequestSyncs,gQ.outboundPackets.notificationPermissionRequestPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedDebugRenderSyncs,gQ.outboundPackets.physicsDebugRenderPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedDebugRaycastsSyncs,gQ.outboundPackets.physicsDebugRaycastsPacketDefinition),o0.startSpan({operation:"send_all_packets"},()=>{for(let Q of u8.instance.getConnectedPlayersByWorld(this._world)){let B=this._outboundPerPlayerReliablePackets.get(Q)??this._outboundSharedReliablePackets;if(B.length>0)Q.connection.send(B);if(this._outboundSharedUnreliablePackets.length>0)Q.connection.send(this._outboundSharedUnreliablePackets,!1)}}),o0.startSpan({operation:"network_synchronize_cleanup"},()=>{if(this._outboundPerPlayerReliablePackets.size>0)this._outboundPerPlayerReliablePackets.clear();if(this._outboundSharedReliablePackets.length>0)this._outboundSharedReliablePackets.length=0;if(this._outboundSharedUnreliablePackets.length>0)this._outboundSharedUnreliablePackets.length=0;if(this._loadedSceneUIs.size>0)this._loadedSceneUIs.clear();if(this._spawnedChunks.size>0)this._spawnedChunks.clear();if(this._spawnedEntities.size>0)this._spawnedEntities.clear();this._clearSyncQueue(this._queuedAudioSyncs),this._clearSyncQueue(this._queuedBlockSyncs),this._clearSyncQueue(this._queuedBlockTypeSyncs),this._clearSyncQueue(this._queuedChunkSyncs),this._clearSyncQueue(this._queuedEntitySyncs),this._clearSyncQueue(this._queuedParticleEmitterSyncs),this._clearSyncQueue(this._queuedPlayerSyncs),this._clearSyncQueue(this._queuedSceneUISyncs),this._clearSingletonSyncQueue(this._queuedCameraSyncs),this._clearSingletonSyncQueue(this._queuedChatMessagesSyncs),this._clearSingletonSyncQueue(this._queuedDebugRaycastsSyncs),this._clearSingletonSyncQueue(this._queuedDebugRenderSyncs),this._clearSingletonSyncQueue(this._queuedNotificationPermissionRequestSyncs),this._clearSingletonSyncQueue(this._queuedUISyncs),this._clearSingletonSyncQueue(this._queuedUIDatasSyncs),this._clearSingletonSyncQueue(this._queuedWorldSyncs),$1.clearCachedPacketsSerializedBuffers()})}_subscribeToAudioEvents(){this._world.final("AUDIO.PAUSE",this._onAudioPause),this._world.final("AUDIO.PLAY",this._onAudioPlay),this._world.final("AUDIO.PLAY_RESTART",this._onAudioPlayRestart),this._world.final("AUDIO.SET_ATTACHED_TO_ENTITY",this._onAudioSetAttachedToEntity),this._world.final("AUDIO.SET_CUTOFF_DISTANCE",this._onAudioSetCutoffDistance),this._world.final("AUDIO.SET_DETUNE",this._onAudioSetDetune),this._world.final("AUDIO.SET_DISTORTION",this._onAudioSetDistortion),this._world.final("AUDIO.SET_POSITION",this._onAudioSetPosition),this._world.final("AUDIO.SET_PLAYBACK_RATE",this._onAudioSetPlaybackRate),this._world.final("AUDIO.SET_REFERENCE_DISTANCE",this._onAudioSetReferenceDistance),this._world.final("AUDIO.SET_VOLUME",this._onAudioSetVolume)}_subscribeToBlockTypeRegistryEvents(){this._world.final("BLOCK_TYPE_REGISTRY.REGISTER_BLOCK_TYPE",this._onBlockTypeRegistryRegisterBlockType)}_subscribeToChatEvents(){this._world.final("CHAT.BROADCAST_MESSAGE",this._onChatSendBroadcastMessage),this._world.final("CHAT.PLAYER_MESSAGE",this._onChatSendPlayerMessage)}_subscribeToChunkLatticeEvents(){this._world.final("CHUNK_LATTICE.ADD_CHUNK",this._onChunkLatticeAddChunk),this._world.final("CHUNK_LATTICE.REMOVE_CHUNK",this._onChunkLatticeRemoveChunk),this._world.final("CHUNK_LATTICE.SET_BLOCK",this._onChunkLatticeSetBlock)}_subscribeToEntityEvents(){this._world.final("ENTITY.SPAWN",this._onEntitySpawn),this._world.final("ENTITY.DESPAWN",this._onEntityDespawn),this._world.final("ENTITY.REMOVE_MODEL_NODE_OVERRIDE",this._onEntityRemoveModelNodeOverride),this._world.final("ENTITY.SET_BLOCK_TEXTURE_URI",this._onEntitySetBlockTextureUri),this._world.final("ENTITY.SET_EMISSIVE_COLOR",this._onEntitySetEmissiveColor),this._world.final("ENTITY.SET_EMISSIVE_INTENSITY",this._onEntitySetEmissiveIntensity),this._world.final("ENTITY.SET_MODEL_SCALE",this._onEntitySetModelScale),this._world.final("ENTITY.SET_MODEL_SCALE_INTERPOLATION_MS",this._onEntitySetModelScaleInterpolationMs),this._world.final("ENTITY.SET_MODEL_TEXTURE_URI",this._onEntitySetModelTextureUri),this._world.final("ENTITY.SET_OPACITY",this._onEntitySetOpacity),this._world.final("ENTITY.SET_OUTLINE",this._onEntitySetOutline),this._world.final("ENTITY.SET_PARENT",this._onEntitySetParent),this._world.final("ENTITY.SET_POSITION_INTERPOLATION_MS",this._onEntitySetPositionInterpolationMs),this._world.final("ENTITY.SET_ROTATION_INTERPOLATION_MS",this._onEntitySetRotationInterpolationMs),this._world.final("ENTITY.SET_TINT_COLOR",this._onEntitySetTintColor),this._world.final("ENTITY.UPDATE_POSITION",this._onEntityUpdatePosition),this._world.final("ENTITY.UPDATE_ROTATION",this._onEntityUpdateRotation)}_subscribeToEntityModelAnimationEvents(){this._world.final("ENTITY_MODEL_ANIMATION.PAUSE",this._onEntityModelAnimationPause),this._world.final("ENTITY_MODEL_ANIMATION.PLAY",this._onEntityModelAnimationPlay),this._world.final("ENTITY_MODEL_ANIMATION.RESTART",this._onEntityModelAnimationRestart),this._world.final("ENTITY_MODEL_ANIMATION.SET_BLEND_MODE",this._onEntityModelAnimationSetBlendMode),this._world.final("ENTITY_MODEL_ANIMATION.SET_CLAMP_WHEN_FINISHED",this._onEntityModelAnimationSetClampWhenFinished),this._world.final("ENTITY_MODEL_ANIMATION.SET_FADES_IN",this._onEntityModelAnimationSetFadesIn),this._world.final("ENTITY_MODEL_ANIMATION.SET_FADES_OUT",this._onEntityModelAnimationSetFadesOut),this._world.final("ENTITY_MODEL_ANIMATION.SET_LOOP_MODE",this._onEntityModelAnimationSetLoopMode),this._world.final("ENTITY_MODEL_ANIMATION.SET_PLAYBACK_RATE",this._onEntityModelAnimationSetPlaybackRate),this._world.final("ENTITY_MODEL_ANIMATION.SET_WEIGHT",this._onEntityModelAnimationSetWeight),this._world.final("ENTITY_MODEL_ANIMATION.STOP",this._onEntityModelAnimationStop)}_subscribeToEntityModelNodeOverrideEvents(){this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_COLOR",this._onEntityModelNodeOverrideSetEmissiveColor),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_INTENSITY",this._onEntityModelNodeOverrideSetEmissiveIntensity),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_HIDDEN",this._onEntityModelNodeOverrideSetHidden),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION",this._onEntityModelNodeOverrideSetLocalPosition),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION_INTERPOLATION_MS",this._onEntityModelNodeOverrideSetLocalPositionInterpolationMs),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION",this._onEntityModelNodeOverrideSetLocalRotation),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION_INTERPOLATION_MS",this._onEntityModelNodeOverrideSetLocalRotationInterpolationMs),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE",this._onEntityModelNodeOverrideSetLocalScale),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE_INTERPOLATION_MS",this._onEntityModelNodeOverrideSetLocalScaleInterpolationMs)}_subscribeToParticleEmitterEvents(){this._world.final("PARTICLE_EMITTER.DESPAWN",this._onParticleEmitterDespawn),this._world.final("PARTICLE_EMITTER.BURST",this._onParticleEmitterBurst),this._world.final("PARTICLE_EMITTER.SET_ALPHA_TEST",this._onParticleEmitterSetAlphaTest),this._world.final("PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY",this._onParticleEmitterSetAttachedToEntity),this._world.final("PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY_NODE_NAME",this._onParticleEmitterSetAttachedToEntityNodeName),this._world.final("PARTICLE_EMITTER.SET_COLOR_END",this._onParticleEmitterSetColorEnd),this._world.final("PARTICLE_EMITTER.SET_COLOR_END_VARIANCE",this._onParticleEmitterSetColorEndVariance),this._world.final("PARTICLE_EMITTER.SET_COLOR_INTENSITY_END",this._onParticleEmitterSetColorIntensityEnd),this._world.final("PARTICLE_EMITTER.SET_COLOR_INTENSITY_END_VARIANCE",this._onParticleEmitterSetColorIntensityEndVariance),this._world.final("PARTICLE_EMITTER.SET_COLOR_INTENSITY_START",this._onParticleEmitterSetColorIntensityStart),this._world.final("PARTICLE_EMITTER.SET_COLOR_INTENSITY_START_VARIANCE",this._onParticleEmitterSetColorIntensityStartVariance),this._world.final("PARTICLE_EMITTER.SET_COLOR_START",this._onParticleEmitterSetColorStart),this._world.final("PARTICLE_EMITTER.SET_COLOR_START_VARIANCE",this._onParticleEmitterSetColorStartVariance),this._world.final("PARTICLE_EMITTER.SET_GRAVITY",this._onParticleEmitterSetGravity),this._world.final("PARTICLE_EMITTER.SET_LIFETIME",this._onParticleEmitterSetLifetime),this._world.final("PARTICLE_EMITTER.SET_LIFETIME_VARIANCE",this._onParticleEmitterSetLifetimeVariance),this._world.final("PARTICLE_EMITTER.SET_MAX_PARTICLES",this._onParticleEmitterSetMaxParticles),this._world.final("PARTICLE_EMITTER.SET_OFFSET",this._onParticleEmitterSetOffset),this._world.final("PARTICLE_EMITTER.SET_OPACITY_END",this._onParticleEmitterSetOpacityEnd),this._world.final("PARTICLE_EMITTER.SET_OPACITY_END_VARIANCE",this._onParticleEmitterSetOpacityEndVariance),this._world.final("PARTICLE_EMITTER.SET_OPACITY_START",this._onParticleEmitterSetOpacityStart),this._world.final("PARTICLE_EMITTER.SET_OPACITY_START_VARIANCE",this._onParticleEmitterSetOpacityStartVariance),this._world.final("PARTICLE_EMITTER.SET_PAUSED",this._onParticleEmitterSetPaused),this._world.final("PARTICLE_EMITTER.SET_POSITION",this._onParticleEmitterSetPosition),this._world.final("PARTICLE_EMITTER.SET_POSITION_VARIANCE",this._onParticleEmitterSetPositionVariance),this._world.final("PARTICLE_EMITTER.SET_RATE",this._onParticleEmitterSetRate),this._world.final("PARTICLE_EMITTER.SET_RATE_VARIANCE",this._onParticleEmitterSetRateVariance),this._world.final("PARTICLE_EMITTER.SET_SIZE_END",this._onParticleEmitterSetSizeEnd),this._world.final("PARTICLE_EMITTER.SET_SIZE_END_VARIANCE",this._onParticleEmitterSetSizeEndVariance),this._world.final("PARTICLE_EMITTER.SET_SIZE_START",this._onParticleEmitterSetSizeStart),this._world.final("PARTICLE_EMITTER.SET_SIZE_START_VARIANCE",this._onParticleEmitterSetSizeStartVariance),this._world.final("PARTICLE_EMITTER.SET_TEXTURE_URI",this._onParticleEmitterSetTextureUri),this._world.final("PARTICLE_EMITTER.SET_TRANSPARENT",this._onParticleEmitterSetTransparent),this._world.final("PARTICLE_EMITTER.SET_VELOCITY",this._onParticleEmitterSetVelocity),this._world.final("PARTICLE_EMITTER.SET_VELOCITY_VARIANCE",this._onParticleEmitterSetVelocityVariance),this._world.final("PARTICLE_EMITTER.SPAWN",this._onParticleEmitterSpawn)}_subscribeToPlayerEvents(){this._world.final("PLAYER.JOINED_WORLD",this._onPlayerJoinedWorld),this._world.final("PLAYER.LEFT_WORLD",this._onPlayerLeftWorld),this._world.final("PLAYER.RECONNECTED_WORLD",this._onPlayerReconnectedWorld),this._world.final("PLAYER.REQUEST_NOTIFICATION_PERMISSION",this._onPlayerRequestNotificationPermission),this._world.final("PLAYER.REQUEST_SYNC",this._onPlayerRequestSync)}_subscribeToPlayerCameraEvents(){this._world.final("PLAYER_CAMERA.FACE_ENTITY",this._onPlayerCameraFaceEntity),this._world.final("PLAYER_CAMERA.FACE_POSITION",this._onPlayerCameraFacePosition),this._world.final("PLAYER_CAMERA.SET_ATTACHED_TO_ENTITY",this._onPlayerCameraSetAttachedToEntity),this._world.final("PLAYER_CAMERA.SET_ATTACHED_TO_POSITION",this._onPlayerCameraSetAttachedToPosition),this._world.final("PLAYER_CAMERA.SET_COLLIDES_WITH_BLOCKS",this._onPlayerCameraSetCollidesWithBlocks),this._world.final("PLAYER_CAMERA.SET_FILM_OFFSET",this._onPlayerCameraSetFilmOffset),this._world.final("PLAYER_CAMERA.SET_FORWARD_OFFSET",this._onPlayerCameraSetForwardOffset),this._world.final("PLAYER_CAMERA.SET_FOV",this._onPlayerCameraSetFov),this._world.final("PLAYER_CAMERA.SET_MODE",this._onPlayerCameraSetMode),this._world.final("PLAYER_CAMERA.SET_OFFSET",this._onPlayerCameraSetOffset),this._world.final("PLAYER_CAMERA.SET_SHOULDER_ANGLE",this._onPlayerCameraSetShoulderAngle),this._world.final("PLAYER_CAMERA.SET_TARGET_ENTITY",this._onPlayerCameraSetTargetEntity),this._world.final("PLAYER_CAMERA.SET_TARGET_POSITION",this._onPlayerCameraSetTargetPosition),this._world.final("PLAYER_CAMERA.SET_VIEW_MODEL",this._onPlayerCameraSetViewModel),this._world.final("PLAYER_CAMERA.SET_VIEW_MODEL_HIDDEN_NODES",this._onPlayerCameraSetViewModelHiddenNodes),this._world.final("PLAYER_CAMERA.SET_VIEW_MODEL_PITCHES_WITH_CAMERA",this._onPlayerCameraSetViewModelPitchesWithCamera),this._world.final("PLAYER_CAMERA.SET_VIEW_MODEL_SHOWN_NODES",this._onPlayerCameraSetViewModelShownNodes),this._world.final("PLAYER_CAMERA.SET_VIEW_MODEL_YAWS_WITH_CAMERA",this._onPlayerCameraSetViewModelYawsWithCamera),this._world.final("PLAYER_CAMERA.SET_ZOOM",this._onPlayerCameraSetZoom)}_subscribeToPlayerUIEvents(){this._world.final("PLAYER_UI.APPEND",this._onPlayerUIAppend),this._world.final("PLAYER_UI.FREEZE_POINTER_LOCK",this._onPlayerUIFreezePointerLock),this._world.final("PLAYER_UI.LOAD",this._onPlayerUILoad),this._world.final("PLAYER_UI.LOCK_POINTER",this._onPlayerUILockPointer),this._world.final("PLAYER_UI.SEND_DATA",this._onPlayerUISendData)}_subscribeToSceneUIEvents(){this._world.final("SCENE_UI.LOAD",this._onSceneUILoad),this._world.final("SCENE_UI.SET_ATTACHED_TO_ENTITY",this._onSceneUISetAttachedToEntity),this._world.final("SCENE_UI.SET_OFFSET",this._onSceneUISetOffset),this._world.final("SCENE_UI.SET_POSITION",this._onSceneUISetPosition),this._world.final("SCENE_UI.SET_STATE",this._onSceneUISetState),this._world.final("SCENE_UI.SET_VIEW_DISTANCE",this._onSceneUISetViewDistance),this._world.final("SCENE_UI.UNLOAD",this._onSceneUIUnload)}_subscribeToSimulationEvents(){this._world.final("SIMULATION.DEBUG_RAYCAST",this._onSimulationDebugRaycast),this._world.final("SIMULATION.DEBUG_RENDER",this._onSimulationDebugRender)}_subscribeToWorldEvents(){this._world.final("WORLD.SET_AMBIENT_LIGHT_COLOR",this._onWorldSetAmbientLightColor),this._world.final("WORLD.SET_AMBIENT_LIGHT_INTENSITY",this._onWorldSetAmbientLightIntensity),this._world.final("WORLD.SET_DIRECTIONAL_LIGHT_COLOR",this._onWorldSetDirectionalLightColor),this._world.final("WORLD.SET_DIRECTIONAL_LIGHT_INTENSITY",this._onWorldSetDirectionalLightIntensity),this._world.final("WORLD.SET_DIRECTIONAL_LIGHT_POSITION",this._onWorldSetDirectionalLightPosition),this._world.final("WORLD.SET_FOG_COLOR",this._onWorldSetFogColor),this._world.final("WORLD.SET_FOG_FAR",this._onWorldSetFogFar),this._world.final("WORLD.SET_FOG_NEAR",this._onWorldSetFogNear),this._world.final("WORLD.SET_SKYBOX_INTENSITY",this._onWorldSetSkyboxIntensity),this._world.final("WORLD.SET_SKYBOX_URI",this._onWorldSetSkyboxUri)}_onAudioPause=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.pa=!0,delete Q.pl,delete Q.r};_onAudioPlay=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Object.assign(Q,A.audio.serialize()),Q.pl=!0,delete Q.pa,delete Q.r};_onAudioPlayRestart=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Object.assign(Q,A.audio.serialize()),Q.r=!0,delete Q.pa,delete Q.pl};_onAudioSetAttachedToEntity=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.e=A.entity?A.entity.id:void 0,Q.p=A.entity?void 0:Q.p};_onAudioSetCutoffDistance=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.cd=A.cutoffDistance};_onAudioSetDetune=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.de=A.detune};_onAudioSetDistortion=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.di=A.distortion};_onAudioSetPosition=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.e=A.position?void 0:Q.e,Q.p=A.position?CQ.serializeVector(A.position):void 0};_onAudioSetPlaybackRate=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.pr=A.playbackRate};_onAudioSetReferenceDistance=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.rd=A.referenceDistance};_onAudioSetVolume=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.v=A.volume};_onBlockTypeRegistryRegisterBlockType=(A)=>{let Q=this._createOrGetQueuedBlockTypeSync(A.blockType);Object.assign(Q,A.blockType.serialize())};_onChatSendBroadcastMessage=(A)=>{this._createOrGetQueuedChatMessagesSync().push({m:A.message,c:A.color,p:A.player?.id})};_onChatSendPlayerMessage=(A)=>{this._createOrGetQueuedChatMessagesSync(A.player).push({m:A.message,c:A.color})};_onChunkLatticeAddChunk=(A)=>{let Q=this._createOrGetQueuedChunkSync(A.chunk);Object.assign(Q,A.chunk.serialize()),Q.rm=void 0,this._spawnedChunks.add(Q.c.join(","))};_onChunkLatticeRemoveChunk=(A)=>{let Q=this._createOrGetQueuedChunkSync(A.chunk),B=Q.c.join(",");if(this._spawnedChunks.has(B))this._queuedChunkSyncs.broadcast.delete(B),this._spawnedChunks.delete(B);else Q.rm=!0};_onChunkLatticeSetBlock=(A)=>{let Q=this._createOrGetQueuedBlockSync(A.globalCoordinate);Q.i=A.blockTypeId,Q.r=A.blockRotation?.enumIndex};_onEntitySpawn=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Object.assign(Q,A.entity.serialize()),this._spawnedEntities.add(Q.i)};_onEntityDespawn=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);if(this._spawnedEntities.has(Q.i))this._queuedEntitySyncs.broadcast.delete(Q.i),this._spawnedEntities.delete(Q.i);else Q.rm=!0};_onEntityRemoveModelNodeOverride=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.rm=!0};_onEntitySetBlockTextureUri=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.bt=A.blockTextureUri};_onEntitySetEmissiveColor=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.ec=A.emissiveColor?CQ.serializeRgbColor(A.emissiveColor):void 0};_onEntitySetEmissiveIntensity=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.ei=A.emissiveIntensity};_onEntitySetModelScale=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.sv=A.modelScale?CQ.serializeVector(A.modelScale):void 0};_onEntitySetModelScaleInterpolationMs=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.si=A.interpolationMs};_onEntitySetModelTextureUri=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.mt=A.modelTextureUri};_onEntitySetOpacity=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.o=A.opacity};_onEntitySetOutline=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity,A.forPlayer);Q.ol=A.outline?CQ.serializeOutline(A.outline):void 0};_onEntitySetParent=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.pe=A.parent?A.parent.id:void 0,Q.pn=A.parentNodeName};_onEntitySetPositionInterpolationMs=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.pi=A.interpolationMs};_onEntitySetRotationInterpolationMs=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.ri=A.interpolationMs};_onEntitySetTintColor=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.t=A.tintColor?CQ.serializeRgbColor(A.tintColor):void 0};_onEntityUpdatePosition=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.p=[A.position.x,A.position.y,A.position.z]};_onEntityUpdateRotation=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.r=[A.rotation.x,A.rotation.y,A.rotation.z,A.rotation.w]};_onEntityModelAnimationPause=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.pa=!0,delete Q.p,delete Q.r,delete Q.s};_onEntityModelAnimationPlay=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.p=!0,delete Q.pa,delete Q.r,delete Q.s};_onEntityModelAnimationRestart=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.r=!0,delete Q.pa,delete Q.p,delete Q.s};_onEntityModelAnimationSetBlendMode=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.b=A.blendMode};_onEntityModelAnimationSetClampWhenFinished=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.c=A.clampWhenFinished};_onEntityModelAnimationSetFadesIn=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.fi=A.fadesIn};_onEntityModelAnimationSetFadesOut=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.fo=A.fadesOut};_onEntityModelAnimationSetLoopMode=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.l=A.loopMode};_onEntityModelAnimationSetPlaybackRate=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.pr=A.playbackRate};_onEntityModelAnimationSetWeight=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.w=A.weight};_onEntityModelAnimationStop=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.s=!0,delete Q.p,delete Q.pa,delete Q.r};_onEntityModelNodeOverrideSetEmissiveColor=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.ec=A.emissiveColor?CQ.serializeRgbColor(A.emissiveColor):void 0,delete Q.rm};_onEntityModelNodeOverrideSetEmissiveIntensity=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.ei=A.emissiveIntensity,delete Q.rm};_onEntityModelNodeOverrideSetHidden=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.h=A.hidden,delete Q.rm};_onEntityModelNodeOverrideSetLocalPosition=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.p=A.localPosition?CQ.serializeVector(A.localPosition):void 0,delete Q.rm};_onEntityModelNodeOverrideSetLocalPositionInterpolationMs=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.pi=A.interpolationMs,delete Q.rm};_onEntityModelNodeOverrideSetLocalRotation=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.r=A.localRotation?CQ.serializeQuaternion(A.localRotation):void 0,delete Q.rm};_onEntityModelNodeOverrideSetLocalRotationInterpolationMs=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.ri=A.interpolationMs,delete Q.rm};_onEntityModelNodeOverrideSetLocalScale=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.s=A.localScale?CQ.serializeVector(A.localScale):void 0,delete Q.rm};_onEntityModelNodeOverrideSetLocalScaleInterpolationMs=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.si=A.interpolationMs,delete Q.rm};_onParticleEmitterBurst=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.b=A.count};_onParticleEmitterDespawn=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.rm=!0};_onParticleEmitterSetAlphaTest=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.at=A.alphaTest};_onParticleEmitterSetAttachedToEntity=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.e=A.entity?A.entity.id:void 0,Q.p=A.entity?void 0:Q.p};_onParticleEmitterSetAttachedToEntityNodeName=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.en=A.attachedToEntityNodeName};_onParticleEmitterSetColorEnd=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.ce=A.colorEnd?CQ.serializeRgbColor(A.colorEnd):void 0};_onParticleEmitterSetColorEndVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.cev=A.colorEndVariance?CQ.serializeRgbColor(A.colorEndVariance):void 0};_onParticleEmitterSetColorIntensityEnd=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.cie=A.colorIntensityEnd};_onParticleEmitterSetColorIntensityEndVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.ciev=A.colorIntensityEndVariance};_onParticleEmitterSetColorIntensityStart=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.cis=A.colorIntensityStart};_onParticleEmitterSetColorIntensityStartVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.cisv=A.colorIntensityStartVariance};_onParticleEmitterSetColorStart=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.cs=A.colorStart?CQ.serializeRgbColor(A.colorStart):void 0};_onParticleEmitterSetColorStartVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.csv=A.colorStartVariance?CQ.serializeRgbColor(A.colorStartVariance):void 0};_onParticleEmitterSetGravity=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.g=A.gravity?CQ.serializeVector(A.gravity):void 0};_onParticleEmitterSetLifetime=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.l=A.lifetime};_onParticleEmitterSetLifetimeVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.lv=A.lifetimeVariance};_onParticleEmitterSetMaxParticles=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.mp=A.maxParticles};_onParticleEmitterSetOffset=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.o=A.offset?CQ.serializeVector(A.offset):void 0};_onParticleEmitterSetOpacityEnd=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.oe=A.opacityEnd};_onParticleEmitterSetOpacityEndVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.oev=A.opacityEndVariance};_onParticleEmitterSetOpacityStart=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.os=A.opacityStart};_onParticleEmitterSetOpacityStartVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.osv=A.opacityStartVariance};_onParticleEmitterSetPaused=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.pa=A.paused};_onParticleEmitterSetPosition=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.p=A.position?CQ.serializeVector(A.position):void 0,Q.e=A.position?void 0:Q.e,Q.en=A.position?void 0:Q.en};_onParticleEmitterSetPositionVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.pv=A.positionVariance?CQ.serializeVector(A.positionVariance):void 0};_onParticleEmitterSetRate=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.r=A.rate};_onParticleEmitterSetRateVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.rv=A.rateVariance};_onParticleEmitterSetSizeEnd=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.se=A.sizeEnd};_onParticleEmitterSetSizeEndVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.sev=A.sizeEndVariance};_onParticleEmitterSetSizeStart=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.ss=A.sizeStart};_onParticleEmitterSetSizeStartVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.ssv=A.sizeStartVariance};_onParticleEmitterSetTextureUri=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.tu=A.textureUri};_onParticleEmitterSetTransparent=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.t=A.transparent};_onParticleEmitterSetVelocity=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.v=A.velocity?CQ.serializeVector(A.velocity):void 0};_onParticleEmitterSetVelocityVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.vv=A.velocityVariance?CQ.serializeVector(A.velocityVariance):void 0};_onParticleEmitterSpawn=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Object.assign(Q,A.particleEmitter.serialize())};_onPlayerCameraFaceEntity=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.pl=CQ.serializeVector(A.entity.position),delete Q.et,delete Q.pt};_onPlayerCameraFacePosition=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.pl=A.position?CQ.serializeVector(A.position):void 0,delete Q.et,delete Q.pt};_onPlayerCameraSetAttachedToEntity=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.e=A.entity.id,delete Q.p,this._syncPlayerCameraAttachedEntityModel(A.playerCamera)};_onPlayerCameraSetAttachedToPosition=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.p=A.position?CQ.serializeVector(A.position):void 0,delete Q.e};_onPlayerCameraSetCollidesWithBlocks=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.cb=A.collidesWithBlocks};_onPlayerCameraSetFilmOffset=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.fo=A.filmOffset};_onPlayerCameraSetForwardOffset=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.ffo=A.forwardOffset};_onPlayerCameraSetFov=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.fv=A.fov};_onPlayerCameraSetMode=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.m=A.mode,this._syncPlayerCameraAttachedEntityModel(A.playerCamera)};_onPlayerCameraSetOffset=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.o=A.offset?CQ.serializeVector(A.offset):void 0};_onPlayerCameraSetShoulderAngle=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.sa=A.shoulderAngle};_onPlayerCameraSetTargetEntity=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.et=A.entity?A.entity.id:void 0,delete Q.pl,delete Q.pt};_onPlayerCameraSetTargetPosition=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.pt=A.position?CQ.serializeVector(A.position):void 0,delete Q.et,delete Q.pl};_onPlayerCameraSetZoom=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.z=A.zoom};_onPlayerCameraSetViewModel=(A)=>{this._syncPlayerCameraAttachedEntityModel(A.playerCamera)};_onPlayerCameraSetViewModelHiddenNodes=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.h=Array.from(A.viewModelHiddenNodes)};_onPlayerCameraSetViewModelPitchesWithCamera=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.mp=A.viewModelPitchesWithCamera};_onPlayerCameraSetViewModelShownNodes=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.s=Array.from(A.viewModelShownNodes)};_onPlayerCameraSetViewModelYawsWithCamera=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.my=A.viewModelYawsWithCamera};_onPlayerJoinedWorld=(A)=>{let{player:Q}=A;for(let C of this._world.audioManager.getAllAudios()){let X=this._createOrGetQueuedAudioSync(C,Q);this._assignUndefined(X,C.serialize())}for(let C of this._world.blockTypeRegistry.getAllBlockTypes()){let X=this._createOrGetQueuedBlockTypeSync(C,Q);this._assignUndefined(X,C.serialize())}let B=this._createOrGetQueuedCameraSync(Q);this._assignUndefined(B,Q.camera.serialize());for(let C of this._world.chunkLattice.getAllChunks()){let X=this._createOrGetQueuedChunkSync(C,Q);this._assignUndefined(X,C.serialize())}for(let C of this._world.entityManager.getAllEntities()){if(Q.camera.attachedToEntity===void 0&&C instanceof i1&&C.player===Q)Q.camera.setAttachedToEntity(C);let X=this._createOrGetQueuedEntitySync(C,Q);this._assignUndefined(X,C.serialize())}this._syncPlayerCameraAttachedEntityModel(Q.camera);for(let C of this._world.particleEmitterManager.getAllParticleEmitters()){let X=this._createOrGetQueuedParticleEmitterSync(C,Q);this._assignUndefined(X,C.serialize())}for(let C of u8.instance.getConnectedPlayers()){let X=this._createOrGetQueuedPlayerSync(C,Q);this._assignUndefined(X,C.serialize())}for(let C of this._world.sceneUIManager.getAllSceneUIs()){let X=this._createOrGetQueuedSceneUISync(C,Q);this._assignUndefined(X,C.serialize())}let Y=this._createOrGetQueuedWorldSync(this._world,Q);this._assignUndefined(Y,this._world.serialize());let J=this._createOrGetQueuedPlayerSync(Q);this._assignUndefined(J,Q.serialize())};_onPlayerLeftWorld=(A)=>{let Q=this._createOrGetQueuedPlayerSync(A.player);Q.rm=!0};_onPlayerReconnectedWorld=(A)=>{this._onPlayerJoinedWorld(A)};_onPlayerRequestNotificationPermission=(A)=>{this._createOrGetQueuedNotificationPermissionRequestSync(A.player)};_onPlayerRequestSync=(A)=>{A.player.connection.send([gQ.createPacket(gQ.outboundPackets.syncResponsePacketDefinition,{r:A.receivedAt,s:Date.now(),p:performance.now()-A.receivedAtMs,n:this._world.loop.nextTickMs},this._world.loop.currentTick)])};_onPlayerUIAppend=(A)=>{let Q=this._createOrGetQueuedUISync(A.playerUI.player);Q.ua??=[],Q.ua.push(A.htmlUri)};_onPlayerUIFreezePointerLock=(A)=>{let Q=this._createOrGetQueuedUISync(A.playerUI.player);Q.pf=A.freeze};_onPlayerUILoad=(A)=>{let Q=this._createOrGetQueuedUISync(A.playerUI.player);Q.u=A.htmlUri};_onPlayerUILockPointer=(A)=>{let Q=this._createOrGetQueuedUISync(A.playerUI.player);Q.p=A.lock};_onPlayerUISendData=(A)=>{this._createOrGetQueuedUIDatasSync(A.playerUI.player).push(A.data)};_onSceneUILoad=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);Object.assign(Q,A.sceneUI.serialize()),this._loadedSceneUIs.add(Q.i)};_onSceneUISetAttachedToEntity=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);Q.e=A.entity?A.entity.id:void 0,Q.p=A.entity?void 0:Q.p};_onSceneUISetOffset=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);Q.o=A.offset?CQ.serializeVector(A.offset):void 0};_onSceneUISetPosition=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);Q.p=A.position?CQ.serializeVector(A.position):void 0,Q.e=A.position?void 0:Q.e};_onSceneUISetState=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);Q.s=A.state};_onSceneUISetViewDistance=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);Q.v=A.viewDistance};_onSceneUIUnload=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);if(this._loadedSceneUIs.has(Q.i))this._queuedSceneUISyncs.broadcast.delete(Q.i),this._loadedSceneUIs.delete(Q.i);else Q.rm=!0};_onSimulationDebugRaycast=(A)=>{this._createOrGetDebugRaycastsSync().push(CQ.serializePhysicsDebugRaycast(A))};_onSimulationDebugRender=(A)=>{let Q=this._createOrGetDebugRenderSync();Q.v=Array.from(A.vertices),Q.c=Array.from(A.colors)};_onWorldSetAmbientLightColor=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.ac=CQ.serializeRgbColor(A.color)};_onWorldSetAmbientLightIntensity=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.ai=A.intensity};_onWorldSetDirectionalLightColor=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.dc=CQ.serializeRgbColor(A.color)};_onWorldSetDirectionalLightIntensity=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.di=A.intensity};_onWorldSetDirectionalLightPosition=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.dp=CQ.serializeVector(A.position)};_onWorldSetFogColor=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.fc=CQ.serializeRgbColor(A.color)};_onWorldSetFogFar=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.ff=A.far};_onWorldSetFogNear=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.fn=A.near};_onWorldSetSkyboxIntensity=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.si=A.intensity};_onWorldSetSkyboxUri=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.s=A.uri};_assignUndefined(A,Q){for(let B in Q)if(A[B]===void 0)A[B]=Q[B];return A}_createAudioSync=(A)=>({i:A.id});_createOrGetQueuedAudioSync(A,Q){if(A.id===void 0)n.fatalError("NetworkSynchronizer._createOrGetQueuedAudioSync(): Audio has no id!");return this._createOrGetQueuedSync(this._queuedAudioSyncs,A.id,this._createAudioSync,A,Q)}_createBlockSync=(A)=>({i:0,c:[A.x,A.y,A.z]});_createOrGetQueuedBlockSync(A,Q){let B=`${A.x},${A.y},${A.z}`;return this._createOrGetQueuedSync(this._queuedBlockSyncs,B,this._createBlockSync,A,Q)}_createBlockTypeSync=(A)=>({i:A.id});_createOrGetQueuedBlockTypeSync(A,Q){return this._createOrGetQueuedSync(this._queuedBlockTypeSyncs,A.id,this._createBlockTypeSync,A,Q)}_createCameraSync=()=>({});_createOrGetQueuedCameraSync(A){return this._createOrGetQueuedSingletonSync(this._queuedCameraSyncs,this._createCameraSync,void 0,A)}_createChatMessagesSync=()=>[];_createOrGetQueuedChatMessagesSync(A){return this._createOrGetQueuedSingletonSync(this._queuedChatMessagesSyncs,this._createChatMessagesSync,void 0,A)}_createChunkSync=(A)=>({c:[A.originCoordinate.x,A.originCoordinate.y,A.originCoordinate.z]});_createOrGetQueuedChunkSync(A,Q){if(!A.originCoordinate)n.fatalError("NetworkSynchronizer._createOrGetQueuedChunkSync(): Chunk has no origin coordinate!");let B=`${A.originCoordinate.x},${A.originCoordinate.y},${A.originCoordinate.z}`;return this._createOrGetQueuedSync(this._queuedChunkSyncs,B,this._createChunkSync,A,Q)}_createDebugRaycastsSync=()=>[];_createOrGetDebugRaycastsSync(A){return this._createOrGetQueuedSingletonSync(this._queuedDebugRaycastsSyncs,this._createDebugRaycastsSync,void 0,A)}_createDebugRenderSync=()=>({v:[],c:[]});_createOrGetDebugRenderSync(A){return this._createOrGetQueuedSingletonSync(this._queuedDebugRenderSyncs,this._createDebugRenderSync,void 0,A)}_createEntitySync=(A)=>({i:A.id});_createOrGetQueuedEntitySync(A,Q){if(A.id===void 0)n.fatalError("NetworkSynchronizer._createOrGetQueuedEntitySync(): Entity has no id!");return this._createOrGetQueuedSync(this._queuedEntitySyncs,A.id,this._createEntitySync,A,Q)}_createEntityModelAnimationSync=(A)=>({n:A.name});_createOrGetQueuedEntityModelAnimationSync(A,Q){if(A.entity.id===void 0)n.fatalError("NetworkSynchronizer._createOrGetQueuedEntityModelAnimationSync(): EntityModelAnimation entity has no id!");let B=this._createOrGetQueuedEntitySync(A.entity,Q);B.ma??=[];let Y=B.ma.find((J)=>J.n===A.name);if(!Y)Y=this._createEntityModelAnimationSync(A),B.ma.push(Y);return Y}_createEntityModelNodeOverrideSync=(A)=>({n:A.nameMatch});_createOrGetQueuedEntityModelNodeOverrideSync(A,Q){if(A.entity.id===void 0)n.fatalError("NetworkSynchronizer._createOrGetQueuedEntityModelNodeOverrideSync(): EntityModelNodeOverride entity has no id!");let B=this._createOrGetQueuedEntitySync(A.entity,Q);B.mo??=[];let Y=B.mo.find((J)=>J.n===A.nameMatch);if(!Y)Y=this._createEntityModelNodeOverrideSync(A),B.mo.push(Y);return Y}_createNotificationPermissionRequestSync=()=>null;_createOrGetQueuedNotificationPermissionRequestSync(A){return this._createOrGetQueuedSingletonSync(this._queuedNotificationPermissionRequestSyncs,this._createNotificationPermissionRequestSync,void 0,A)}_createParticleEmitterSync=(A)=>({i:A.id});_createOrGetQueuedParticleEmitterSync(A,Q){if(A.id===void 0)n.fatalError("NetworkSynchronizer._createOrGetQueuedParticleEmitterSync(): ParticleEmitter has no id!");return this._createOrGetQueuedSync(this._queuedParticleEmitterSyncs,A.id,this._createParticleEmitterSync,A,Q)}_createPlayerSync=(A)=>({i:A.id});_createOrGetQueuedPlayerSync(A,Q){return this._createOrGetQueuedSync(this._queuedPlayerSyncs,A.id,this._createPlayerSync,A,Q)}_createSceneUISync=(A)=>({i:A.id});_createOrGetQueuedSceneUISync(A,Q){if(A.id===void 0)n.fatalError("NetworkSynchronizer._createOrGetQueuedSceneUISync(): SceneUI has no id!");return this._createOrGetQueuedSync(this._queuedSceneUISyncs,A.id,this._createSceneUISync,A,Q)}_createUISync=()=>({});_createOrGetQueuedUISync(A){return this._createOrGetQueuedSingletonSync(this._queuedUISyncs,this._createUISync,void 0,A)}_createUIDatasSync=()=>[];_createOrGetQueuedUIDatasSync(A){return this._createOrGetQueuedSingletonSync(this._queuedUIDatasSyncs,this._createUIDatasSync,void 0,A)}_createWorldSync=(A)=>({i:A.id});_createOrGetQueuedWorldSync(A,Q){if(A.id!==this._world.id)n.fatalError("NetworkSynchronizer._createOrGetQueuedWorldSync(): World does not match this network synchronizer world!");return this._createOrGetQueuedSingletonSync(this._queuedWorldSyncs,this._createWorldSync,A,Q)}_createOrGetQueuedSync(A,Q,B,Y,J){let C,X;if(J){if(X=A.perPlayer.get(J),!X)X=new bB,A.perPlayer.set(J,X);if(!this._outboundPerPlayerReliablePackets.has(J))this._outboundPerPlayerReliablePackets.set(J,[])}else X=A.broadcast;if(C=X.get(Q),C===void 0)C=B(Y),X.set(Q,C);return C}_createOrGetQueuedSingletonSync(A,Q,B,Y){let J=Y?A.perPlayer.get(Y):A.broadcast;if(J===void 0)if(J=Q(B),Y){if(A.perPlayer.set(Y,J),!this._outboundPerPlayerReliablePackets.has(Y))this._outboundPerPlayerReliablePackets.set(Y,[])}else A.broadcast=J;return J}_clearSyncQueue(A){if(A.broadcast.size>0)A.broadcast.clear();if(A.perPlayer.size>0)A.perPlayer.clear()}_clearSingletonSyncQueue(A){if(A.broadcast!==void 0)A.broadcast=void 0;if(A.perPlayer.size>0)A.perPlayer.clear()}_collectSingletonSyncToOutboundPackets(A,Q){if(A.broadcast!==void 0){let B=gQ.createPacket(Q,A.broadcast,this._world.loop.currentTick);this._outboundSharedReliablePackets.push(B);for(let Y of this._outboundPerPlayerReliablePackets.valuesArray)Y.push(B)}if(A.perPlayer.size>0)for(let[B,Y]of A.perPlayer.entries())this._outboundPerPlayerReliablePackets.get(B)?.push(gQ.createPacket(Q,Y,this._world.loop.currentTick))}_collectSyncToOutboundPackets(A,Q){if(A.broadcast.size>0){let B=gQ.createPacket(Q,A.broadcast.valuesArray,this._world.loop.currentTick);this._outboundSharedReliablePackets.push(B);for(let Y of this._outboundPerPlayerReliablePackets.valuesArray)Y.push(B)}if(A.perPlayer.size>0)for(let[B,Y]of A.perPlayer.entries())this._outboundPerPlayerReliablePackets.get(B)?.push(gQ.createPacket(Q,Y.valuesArray,this._world.loop.currentTick))}_syncPlayerCameraAttachedEntityModel(A){let Q=A.attachedToEntity,B=Q&&(A.mode===0?A.viewModelUri:Q.modelUri);if(Q&&B)this._createOrGetQueuedEntitySync(Q,A.player).m=B}}class nq{_particleEmitters=new Map;_nextParticleEmitterId=1;_world;constructor(A){this._world=A}get world(){return this._world}despawnEntityAttachedParticleEmitters(A){this.getAllEntityAttachedParticleEmitters(A).forEach((Q)=>{Q.despawn()})}getAllParticleEmitters(){return Array.from(this._particleEmitters.values())}getAllEntityAttachedParticleEmitters(A){return this.getAllParticleEmitters().filter((Q)=>Q.attachedToEntity===A)}registerParticleEmitter(A){if(A.id!==void 0)return A.id;let Q=this._nextParticleEmitterId;return this._particleEmitters.set(Q,A),this._nextParticleEmitterId++,Q}unregisterParticleEmitter(A){if(A.id===void 0)return;this._particleEmitters.delete(A.id)}}class sq{_sceneUIs=new Map;_nextSceneUIId=1;_world;constructor(A){this._world=A}get world(){return this._world}getAllSceneUIs(){return Array.from(this._sceneUIs.values())}getAllEntityAttachedSceneUIs(A){return this.getAllSceneUIs().filter((Q)=>Q.attachedToEntity===A)}getSceneUIById(A){return this._sceneUIs.get(A)}registerSceneUI(A){if(A.id!==void 0)return A.id;let Q=this._nextSceneUIId;return this._sceneUIs.set(Q,A),this._nextSceneUIId++,Q}unloadEntityAttachedSceneUIs(A){this.getAllEntityAttachedSceneUIs(A).forEach((Q)=>{Q.unload()})}unregisterSceneUI(A){if(A.id===void 0)return;this._sceneUIs.delete(A.id)}}var lf0=2,pf0=3;class rq{_accumulatorMs=0;_targetTicksPerSecond;_fixedTimestepMs;_fixedTimestepS;_maxAccumulatorMs;_nextTickMs=0;_lastLoopTimeMs=0;_tickFunction;_tickErrorCallback;_tickHandle=null;constructor(A,Q,B){this._targetTicksPerSecond=A,this._fixedTimestepS=Math.fround(1/A),this._fixedTimestepMs=Math.fround(this._fixedTimestepS*1000),this._maxAccumulatorMs=this._fixedTimestepMs*pf0,this._tickFunction=Q,this._tickErrorCallback=B}get targetTicksPerSecond(){return this._targetTicksPerSecond}get fixedTimestepMs(){return this._fixedTimestepMs}get fixedTimestepS(){return this._fixedTimestepS}get isStarted(){return!!this._tickHandle}get nextTickMs(){return this._nextTickMs}start(){if(this._tickHandle)return;this._lastLoopTimeMs=performance.now();let A=()=>{let Q=performance.now(),B=Q-this._lastLoopTimeMs;if(this._lastLoopTimeMs=Q,this._accumulatorMs+=B,this._accumulatorMs>this._maxAccumulatorMs)this._accumulatorMs=this._maxAccumulatorMs;if(this._accumulatorMs>=this._fixedTimestepMs)o0.startSpan({operation:"ticker_tick"},()=>{let Y=0;while(this._accumulatorMs>=this._fixedTimestepMs&&Y{C.START="WORLD_LOOP.START";C.STOP="WORLD_LOOP.STOP";C.TICK_START="WORLD_LOOP.TICK_START";C.TICK_END="WORLD_LOOP.TICK_END";C.TICK_ERROR="WORLD_LOOP.TICK_ERROR"})(JTQ||={});class aq extends FQ{_currentTick=0;_ticker;_world;constructor(A,Q=pq){super();this._ticker=new rq(Q,this._tick,this._onTickError),this._world=A}get currentTick(){return this._currentTick}get isStarted(){return this._ticker.isStarted}get nextTickMs(){return this._ticker.nextTickMs}get timestepS(){return this._ticker.fixedTimestepS}get world(){return this._world}start(){this._ticker.start(),this.emitWithWorld(this._world,"WORLD_LOOP.START",{worldLoop:this})}stop(){this._ticker.stop(),this.emitWithWorld(this._world,"WORLD_LOOP.STOP",{worldLoop:this})}_tick=(A)=>{this.emitWithWorld(this._world,"WORLD_LOOP.TICK_START",{worldLoop:this,tickDeltaMs:A});let Q=performance.now();o0.startSpan({operation:"world_tick",attributes:{serverPlayerCount:u8.instance.playerCount,targetTickRate:this._ticker.targetTicksPerSecond,targetTickRateMs:this._ticker.fixedTimestepMs,worldId:this._world.id,worldName:this._world.name,worldChunkCount:this._world.chunkLattice.chunkCount,worldEntityCount:this._world.entityManager.entityCount,worldLoopTick:this._currentTick}},()=>{if(o0.startSpan({operation:"entities_tick"},()=>this._world.entityManager.tickEntities(A)),o0.startSpan({operation:"simulation_step"},()=>this._world.simulation.step(A)),o0.startSpan({operation:"entities_emit_updates"},()=>this._world.entityManager.checkAndEmitUpdates()),this._world.networkSynchronizer.shouldSynchronize())o0.startSpan({operation:"network_synchronize"},()=>this._world.networkSynchronizer.synchronize())}),this._currentTick++,this.emitWithWorld(this._world,"WORLD_LOOP.TICK_END",{worldLoop:this,tickDurationMs:performance.now()-Q})};_onTickError=(A)=>{n.error(`WorldLoop._onTickError(): Error: ${A}`),this.emitWithWorld(this._world,"WORLD_LOOP.TICK_ERROR",{worldLoop:this,error:A})}}var No;(($)=>{$.SET_AMBIENT_LIGHT_COLOR="WORLD.SET_AMBIENT_LIGHT_COLOR";$.SET_AMBIENT_LIGHT_INTENSITY="WORLD.SET_AMBIENT_LIGHT_INTENSITY";$.SET_DIRECTIONAL_LIGHT_COLOR="WORLD.SET_DIRECTIONAL_LIGHT_COLOR";$.SET_DIRECTIONAL_LIGHT_INTENSITY="WORLD.SET_DIRECTIONAL_LIGHT_INTENSITY";$.SET_DIRECTIONAL_LIGHT_POSITION="WORLD.SET_DIRECTIONAL_LIGHT_POSITION";$.SET_FOG_COLOR="WORLD.SET_FOG_COLOR";$.SET_FOG_FAR="WORLD.SET_FOG_FAR";$.SET_FOG_NEAR="WORLD.SET_FOG_NEAR";$.SET_SKYBOX_INTENSITY="WORLD.SET_SKYBOX_INTENSITY";$.SET_SKYBOX_URI="WORLD.SET_SKYBOX_URI";$.START="WORLD.START";$.STOP="WORLD.STOP"})(No||={});class oq extends FQ{_id;_ambientLightColor;_ambientLightIntensity;_audioManager;_blockTypeRegistry;_chatManager;_chunkLattice;_directionalLightColor;_directionalLightIntensity;_directionalLightPosition;_entityManager;_fogColor;_fogFar;_fogNear;_loop;_name;_networkSynchronizer;_particleEmitterManager;_sceneUIManager;_simulation;_skyboxIntensity;_skyboxUri;_tag;constructor(A){super();if(this._id=A.id,this._ambientLightColor=A.ambientLightColor??{r:255,g:255,b:255},this._ambientLightIntensity=A.ambientLightIntensity??1,this._directionalLightColor=A.directionalLightColor??{r:255,g:255,b:255},this._directionalLightIntensity=A.directionalLightIntensity??3,this._directionalLightPosition=A.directionalLightPosition??{x:100,y:150,z:100},this._fogColor=A.fogColor,this._fogFar=A.fogFar??550,this._fogNear=A.fogNear??500,this._name=A.name,this._skyboxIntensity=A.skyboxIntensity??1,this._skyboxUri=A.skyboxUri,this._tag=A.tag,this._audioManager=new PV(this),this._blockTypeRegistry=new nH(this),this._chatManager=new vD(this),this._chunkLattice=new gD(this),this._entityManager=new bD(this),this._loop=new aq(this,A.tickRate),this._networkSynchronizer=new Ek(this),this._particleEmitterManager=new nq(this),this._sceneUIManager=new sq(this),this._simulation=new iq(this,A.tickRate,A.gravity),A.map)this.loadMap(A.map)}get id(){return this._id}get ambientLightColor(){return this._ambientLightColor}get ambientLightIntensity(){return this._ambientLightIntensity}get blockTypeRegistry(){return this._blockTypeRegistry}get chatManager(){return this._chatManager}get chunkLattice(){return this._chunkLattice}get directionalLightColor(){return this._directionalLightColor}get directionalLightIntensity(){return this._directionalLightIntensity}get directionalLightPosition(){return this._directionalLightPosition}get entityManager(){return this._entityManager}get fogColor(){return this._fogColor}get fogFar(){return this._fogFar}get fogNear(){return this._fogNear}get loop(){return this._loop}get name(){return this._name}get networkSynchronizer(){return this._networkSynchronizer}get particleEmitterManager(){return this._particleEmitterManager}get sceneUIManager(){return this._sceneUIManager}get simulation(){return this._simulation}get skyboxIntensity(){return this._skyboxIntensity}get skyboxUri(){return this._skyboxUri}get audioManager(){return this._audioManager}get tag(){return this._tag}loadMap(A){this.chunkLattice.clear();let Q=Object.values(yX).sort((B,Y)=>B.enumIndex-Y.enumIndex);if(A.blockTypes)for(let B of A.blockTypes)this.blockTypeRegistry.registerGenericBlockType({id:B.id,isLiquid:B.isLiquid,lightLevel:B.lightLevel,name:B.name,textureUri:B.textureUri,customColliderOptions:B.customColliderOptions});if(A.blocks){let B=A.blocks,Y=function*(){for(let J in B){let C=B[J],X=typeof C==="number"?C:C.i,G=typeof C==="number"?void 0:C.r,F=J.indexOf(","),W=J.indexOf(",",F+1);yield{globalCoordinate:{x:Number(J.slice(0,F)),y:Number(J.slice(F+1,W)),z:Number(J.slice(W+1))},blockTypeId:X,blockRotation:G!==void 0?Q[G]:void 0}}};this.chunkLattice.initializeBlockEntries(Y())}if(A.entities)for(let B in A.entities){let Y=A.entities[B],J=B.indexOf(","),C=B.indexOf(",",J+1),X=Number(B.slice(0,J)),G=Number(B.slice(J+1,C)),F=Number(B.slice(C+1));new m0({isEnvironmental:!0,...Y}).spawn(this,{x:X,y:G,z:F})}}setAmbientLightColor(A){this._ambientLightColor=A,this.emit("WORLD.SET_AMBIENT_LIGHT_COLOR",{world:this,color:A})}setAmbientLightIntensity(A){this._ambientLightIntensity=A,this.emit("WORLD.SET_AMBIENT_LIGHT_INTENSITY",{world:this,intensity:A})}setDirectionalLightColor(A){this._directionalLightColor=A,this.emit("WORLD.SET_DIRECTIONAL_LIGHT_COLOR",{world:this,color:A})}setDirectionalLightIntensity(A){this._directionalLightIntensity=A,this.emit("WORLD.SET_DIRECTIONAL_LIGHT_INTENSITY",{world:this,intensity:A})}setDirectionalLightPosition(A){this._directionalLightPosition=A,this.emit("WORLD.SET_DIRECTIONAL_LIGHT_POSITION",{world:this,position:A})}setFogColor(A){this._fogColor=A,this.emit("WORLD.SET_FOG_COLOR",{world:this,color:A})}setFogFar(A){this._fogFar=A,this.emit("WORLD.SET_FOG_FAR",{world:this,far:A})}setFogNear(A){this._fogNear=A,this.emit("WORLD.SET_FOG_NEAR",{world:this,near:A})}setSkyboxIntensity(A){this._skyboxIntensity=A,this.emit("WORLD.SET_SKYBOX_INTENSITY",{world:this,intensity:A})}setSkyboxUri(A){this._skyboxUri=A,this.emit("WORLD.SET_SKYBOX_URI",{world:this,uri:A})}start(){if(this._loop.isStarted)return;this._loop.start(),this.emit("WORLD.START",{world:this,startedAtMs:Date.now()})}stop(){if(!this._loop.isStarted)return;this._loop.stop(),this.emit("WORLD.STOP",{world:this,stoppedAtMs:Date.now()})}serialize(){return CQ.serializeWorld(this)}}var CTQ;((Q)=>Q.WORLD_CREATED="WORLD_MANAGER.WORLD_CREATED")(CTQ||={});class GW{static instance=new GW;_defaultWorld;_nextWorldId=1;_worlds=new Map;createWorld(A){let Q=new oq({...A,id:this._nextWorldId++});return Q.start(),this._worlds.set(Q.id,Q),FQ.globalInstance.emit("WORLD_MANAGER.WORLD_CREATED",{world:Q}),Q}getAllWorlds(){return Array.from(this._worlds.values())}getDefaultWorld(){return this._defaultWorld??=this.createWorld({name:"Default World",skyboxUri:"skyboxes/partly-cloudy"}),this._defaultWorld}getWorldsByTag(A){let Q=[];return this._worlds.forEach((B)=>{if(B.tag===A)Q.push(B)}),Q}getWorld(A){return this._worlds.get(A)}setDefaultWorld(A){this._defaultWorld=A}}var XTQ;((Y)=>{Y.PLAYER_CONNECTED="PLAYER_MANAGER.PLAYER_CONNECTED";Y.PLAYER_DISCONNECTED="PLAYER_MANAGER.PLAYER_DISCONNECTED";Y.PLAYER_RECONNECTED="PLAYER_MANAGER.PLAYER_RECONNECTED"})(XTQ||={});class u8{static instance=new u8;worldSelectionHandler;_connectionPlayers=new Map;constructor(){FQ.globalInstance.on("CONNECTION.OPENED",({connection:A,session:Q})=>{this._onConnectionOpened(A,Q)}),FQ.globalInstance.on("CONNECTION.DISCONNECTED",({connection:A})=>{this._onConnectionDisconnected(A)}),FQ.globalInstance.on("CONNECTION.RECONNECTED",({connection:A})=>{this._onConnectionReconnected(A)}),FQ.globalInstance.on("CONNECTION.CLOSED",({connection:A})=>{this._onConnectionClosed(A)})}get playerCount(){return this._connectionPlayers.size}getConnectedPlayers(){return Array.from(this._connectionPlayers.values())}getConnectedPlayersByWorld(A){return this.getConnectedPlayers().filter((Q)=>Q.world===A)}getConnectedPlayerByUsername(A){return Array.from(this._connectionPlayers.values()).find((Q)=>{return Q.username.toLowerCase()===A.toLowerCase()})}async _onConnectionOpened(A,Q){let B=new KE(A,Q);await B.loadInitialPersistedData(),FQ.globalInstance.emit("PLAYER_MANAGER.PLAYER_CONNECTED",{player:B,connectionParams:A.initialConnectionParams});let Y=await this.worldSelectionHandler?.(B);B.joinWorld(Y??GW.instance.getDefaultWorld()),this._connectionPlayers.set(A,B)}_onConnectionDisconnected(A){let Q=this._connectionPlayers.get(A);if(Q)Q.resetInputs(),Q.camera.reset()}_onConnectionReconnected(A){let Q=this._connectionPlayers.get(A);if(Q)Q.reconnected(),FQ.globalInstance.emit("PLAYER_MANAGER.PLAYER_RECONNECTED",{player:Q});else n.warning(`PlayerManager._onConnectionReconnected(): Connection ${A.id} not in the PlayerManager._connectionPlayers map.`)}_onConnectionClosed(A){let Q=this._connectionPlayers.get(A);if(Q){if(Q.disconnect(),this._connectionPlayers.delete(A),!A.isDuplicate)b7.instance.unloadPlayerData(Q).catch((B)=>{n.warning(`PlayerManager._onConnectionClosed(): Failed to unload player data for player ${Q.id}. Error: ${B}`)});FQ.globalInstance.emit("PLAYER_MANAGER.PLAYER_DISCONNECTED",{player:Q})}else n.warning(`PlayerManager._onConnectionClosed(): Connection ${A.id} not in the PlayerManager._connectionPlayers map.`)}}import{randomBytes as nf0}from"crypto";import{Http3Server as sf0}from"@fails-components/webtransport";class tq extends FQ{static instance=new tq;_connectionIdConnections=new Map;_userIdConnections=new Map;_wss;_wts;constructor(){super();this._wss=new $m.default({noServer:!0}),this._wss.on("connection",(A,Q)=>this._onConnection(A,void 0,Q.connectionId,Q.connectionParams,Q.session)),this._wts=new sf0({port:Uk,host:"0.0.0.0",secret:nf0(32).toString("hex"),cert:Zk,privKey:$k,defaultDatagramsReadableMode:"bytes",initialStreamFlowControlWindow:1048576,streamShouldAutoTuneReceiveWindow:!0,streamFlowControlWindowSizeLimit:6291456,initialSessionFlowControlWindow:2097152,sessionShouldAutoTuneReceiveWindow:!0,sessionFlowControlWindowSizeLimit:15728640}),this._wts.setRequestCallback(this._onWebTransportRequest),this._startWebTransport().catch((A)=>{n.error(`Socket: WebTransport server failed to start or crashed while listening for sessions. Error: ${A}`)}),FQ.globalInstance.on("WEBSERVER.UPGRADE",async({req:A,socket:Q,head:B})=>{Q.on("error",()=>{}),await this._authorizeAndConnectWebsocket(A,Q,B)})}async _authorizeAndConnectWebsocket(A,Q,B){let Y=await this._authorizeConnection(A.url??"");if(Y.error){Q.end();return}A.connectionId=Y.connectionId,A.connectionParams=Y.connectionParams,A.session=Y.session,Q.setNoDelay(!0),this._wss.handleUpgrade(A,Q,B,(J)=>{if(J.readyState!==UE.default.OPEN)J.once("open",()=>this._wss.emit("connection",J,A));else this._wss.emit("connection",J,A)})}async _authorizeConnection(A){let Q=A.includes("?")?A.slice(A.indexOf("?")):"",B=new URLSearchParams(Q),Y=B.get("connectionId")??void 0,J=B.get("sessionToken")??"";if(Y&&this._isValidConnectionId(Y))return{connectionId:Y,connectionParams:B};else{let C=await D5.instance.getPlayerSession(J);if(C?.error)return{error:C.error};else if(C)return{connectionParams:B,session:C}}return{connectionParams:B}}_isValidConnectionId(A){return this._connectionIdConnections.has(A)}_onConnection=(A,Q,B,Y,J)=>{let C=J?.user.id,X=B&&this._connectionIdConnections.get(B),G=C&&this._userIdConnections.get(C);if(!X&&G)G.killDuplicateConnection();if(X){if(A)X.bindWs(A);if(Q)X.bindWt(Q).catch((F)=>{n.error(`Socket._onConnection(): WebTransport binding failed. Error: ${F}`)})}else{let F=new $1(A,Q,Y,J);if(F.on("CONNECTION.CLOSED",()=>{if(this._connectionIdConnections.delete(F.id),C&&this._userIdConnections.get(C)===F)this._userIdConnections.delete(C)}),this._connectionIdConnections.set(F.id,F),C)this._userIdConnections.set(C,F)}};_onWebTransportRequest=async({header:A})=>{let{connectionId:Q,connectionParams:B,session:Y,error:J}=await this._authorizeConnection(A[":path"]??"");return{status:J?401:200,path:"/",userData:{connectionId:Q,connectionParams:B,session:Y}}};async _startWebTransport(){this._wts.startServer();for await(let A of this._wts.sessionStream("/"))try{let{connectionId:Q,connectionParams:B,session:Y}=A.userData;this._onConnection(void 0,A,Q,B,Y)}catch(Q){n.error(`Socket._startWebTransport(): WebTransport connection failed. Error: ${Q}`)}}}var GTQ;((B)=>{B.START="GAMESERVER.START";B.STOP="GAMESERVER.STOP"})(GTQ||={});function rf0(A){WB.init().then(()=>{return FW.instance.blockTextureRegistry.preloadAtlas()}).then(()=>{return FW.instance.modelRegistry.preloadModels()}).then(()=>{let Q;if(A.length>0)Q=A(FW.instance.worldManager.getDefaultWorld());else Q=A();return Promise.resolve(Q)}).then(()=>{FW.instance.start()}).catch((Q)=>{n.fatalError(`Failed to initialize the game engine, exiting. Error: ${Q}`)})}class FW{static _instance;_blockTextureRegistry=U7.instance;_modelRegistry=TY.instance;_playerManager=u8.instance;_socket=tq.instance;_worldManager=GW.instance;_webServer=NV.instance;constructor(){}static get instance(){if(!this._instance)this._instance=new FW;return this._instance}get blockTextureRegistry(){return this._blockTextureRegistry}get modelRegistry(){return this._modelRegistry}get playerManager(){return this._playerManager}get socket(){return this._socket}get webServer(){return this._webServer}get worldManager(){return this._worldManager}start(){if(FQ.globalInstance.emit("GAMESERVER.START",{startedAtMs:performance.now()}),this._webServer.start(),process.env.NODE_ENV!=="production")console.log("---"),console.log("\uD83D\uDFE2 Server Running: You can test & play it at: https://hytopia.com/play");n.enableCrashProtection()}}var sY=qA(B4(),1);class Y4 extends Float32Array{constructor(A,Q,B,Y){super([A,Q,B,Y])}get determinant(){return sY.mat2.determinant(this)}get frobeniusNorm(){return sY.mat2.frob(this)}static create(){let A=new Y4(0,0,0,0);return sY.mat2.identity(A),A}static fromRotation(A){let Q=Y4.create();return sY.mat2.fromRotation(Q,A),Q}static fromScaling(A){let Q=Y4.create();return sY.mat2.fromScaling(Q,A),Q}add(A){return sY.mat2.add(this,this,A),this}adjoint(){return sY.mat2.adjoint(this,this),this}clone(){return new Y4(this[0],this[1],this[2],this[3])}copy(A){return sY.mat2.copy(this,A),this}equals(A){return sY.mat2.equals(this,A)}exactEquals(A){return sY.mat2.exactEquals(this,A)}identity(){return sY.mat2.identity(this),this}invert(){return sY.mat2.invert(this,this),this}multiply(A){return sY.mat2.mul(this,this,A),this}multiplyScalar(A){return sY.mat2.multiplyScalar(this,this,A),this}rotate(A){return sY.mat2.rotate(this,this,A),this}subtract(A){return sY.mat2.sub(this,this,A),this}toString(){return`[${this[0]},${this[1]}][${this[2]},${this[3]}]`}transpose(){return sY.mat2.transpose(this,this),this}}var t0=qA(B4(),1);class SX extends Float32Array{constructor(A,Q,B,Y,J,C,X,G,F){super([A,Q,B,Y,J,C,X,G,F])}get determinant(){return t0.mat3.determinant(this)}get frobeniusNorm(){return t0.mat3.frob(this)}static create(){let A=new SX(0,0,0,0,0,0,0,0,0);return t0.mat3.identity(A),A}static fromMatrix4(A){let Q=SX.create();return t0.mat3.fromMat4(Q,A),Q}static fromQuaternion(A){let Q=SX.create();return t0.mat3.fromQuat(Q,A),Q}static fromRotation(A){let Q=SX.create();return t0.mat3.fromRotation(Q,A),Q}static fromScaling(A){let Q=SX.create();return t0.mat3.fromScaling(Q,A),Q}static fromTranslation(A){let Q=SX.create();return t0.mat3.fromTranslation(Q,A),Q}add(A){return t0.mat3.add(this,this,A),this}adjoint(){return t0.mat3.adjoint(this,this),this}clone(){return new SX(this[0],this[1],this[2],this[3],this[4],this[5],this[6],this[7],this[8])}copy(A){return t0.mat3.copy(this,A),this}equals(A){return t0.mat3.equals(this,A)}exactEquals(A){return t0.mat3.exactEquals(this,A)}identity(){return t0.mat3.identity(this),this}invert(){return t0.mat3.invert(this,this),this}multiply(A){return t0.mat3.mul(this,this,A),this}multiplyScalar(A){return t0.mat3.multiplyScalar(this,this,A),this}transformVector(A){return A.transformMatrix3(this)}projection(A,Q){return t0.mat3.projection(this,A,Q),this}rotate(A){return t0.mat3.rotate(this,this,A),this}subtract(A){return t0.mat3.sub(this,this,A),this}toString(){return`[${this[0]},${this[1]},${this[2]}][${this[3]},${this[4]},${this[5]}][${this[6]},${this[7]},${this[8]}]`}transpose(){return t0.mat3.transpose(this,this),this}}var EB=qA(B4(),1);class L9 extends Float32Array{constructor(A,Q,B,Y,J,C,X,G,F,W,Z,U,$,E,K,I){super([A,Q,B,Y,J,C,X,G,F,W,Z,U,$,E,K,I])}get determinant(){return EB.mat4.determinant(this)}get frobeniusNorm(){return EB.mat4.frob(this)}static create(){let A=new L9(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);return EB.mat4.identity(A),A}static fromQuaternion(A){let Q=L9.create();return EB.mat4.fromQuat(Q,A),Q}static fromRotation(A,Q){let B=L9.create();return EB.mat4.fromRotation(B,A,Q),B}static fromRotationTranslation(A,Q){let B=L9.create();return EB.mat4.fromRotationTranslation(B,A,Q),B}static fromRotationTranslationScale(A,Q,B){let Y=L9.create();return EB.mat4.fromRotationTranslationScale(Y,A,Q,B),Y}static fromRotationTranslationScaleOrigin(A,Q,B,Y){let J=L9.create();return EB.mat4.fromRotationTranslationScaleOrigin(J,A,Q,B,Y),J}static fromScaling(A){let Q=L9.create();return EB.mat4.fromScaling(Q,A),Q}static fromTranslation(A){let Q=L9.create();return EB.mat4.fromTranslation(Q,A),Q}static fromXRotation(A){let Q=L9.create();return EB.mat4.fromXRotation(Q,A),Q}static fromYRotation(A){let Q=L9.create();return EB.mat4.fromYRotation(Q,A),Q}static fromZRotation(A){let Q=L9.create();return EB.mat4.fromZRotation(Q,A),Q}add(A){return EB.mat4.add(this,this,A),this}adjoint(){return EB.mat4.adjoint(this,this),this}clone(){return new L9(this[0],this[1],this[2],this[3],this[4],this[5],this[6],this[7],this[8],this[9],this[10],this[11],this[12],this[13],this[14],this[15])}copy(A){return EB.mat4.copy(this,A),this}equals(A){return EB.mat4.equals(this,A)}exactEquals(A){return EB.mat4.exactEquals(this,A)}frustrum(A,Q,B,Y,J,C){return EB.mat4.frustum(this,A,Q,B,Y,J,C),this}identity(){return EB.mat4.identity(this),this}invert(){return EB.mat4.invert(this,this),this}lookAt(A,Q,B){return EB.mat4.lookAt(this,A,Q,B),this}multiply(A){return EB.mat4.mul(this,this,A),this}multiplyScalar(A){return EB.mat4.multiplyScalar(this,this,A),this}orthographic(A,Q,B,Y,J,C){return EB.mat4.ortho(this,A,Q,B,Y,J,C),this}perspective(A,Q,B,Y){return EB.mat4.perspective(this,A,Q,B,Y),this}rotate(A,Q){return EB.mat4.rotate(this,this,A,Q),this}rotateX(A){return EB.mat4.rotateX(this,this,A),this}rotateY(A){return EB.mat4.rotateY(this,this,A),this}rotateZ(A){return EB.mat4.rotateZ(this,this,A),this}scale(A){return EB.mat4.scale(this,this,A),this}subtract(A){return EB.mat4.sub(this,this,A),this}targetTo(A,Q,B){return EB.mat4.targetTo(this,A,Q,B),this}toString(){return`[${this[0]},${this[1]},${this[2]},${this[3]}][${this[4]},${this[5]},${this[6]},${this[7]}][${this[8]},${this[9]},${this[10]},${this[11]}][${this[12]},${this[13]},${this[14]},${this[15]}]`}translate(A){return EB.mat4.translate(this,this,A),this}transpose(){return EB.mat4.transpose(this,this),this}}var Y0=qA(B4(),1);class LV extends Float32Array{constructor(A,Q,B,Y){super([A,Q,B,Y])}get length(){return Y0.quat.length(this)}get squaredLength(){return Y0.quat.squaredLength(this)}get magnitude(){return Y0.quat.length(this)}get squaredMagnitude(){return Y0.quat.squaredLength(this)}get x(){return this[0]}set x(A){this[0]=A}get y(){return this[1]}set y(A){this[1]=A}get z(){return this[2]}set z(A){this[2]=A}get w(){return this[3]}set w(A){this[3]=A}static fromEuler(A,Q,B){let Y=Y0.quat.fromEuler(new Float32Array(4),A,Q,B);return new LV(Y[0],Y[1],Y[2],Y[3])}static fromQuaternionLike(A){return new LV(A.x,A.y,A.z,A.w)}clone(){return new LV(this.x,this.y,this.z,this.w)}conjugate(){return Y0.quat.conjugate(this,this),this}copy(A){return Y0.quat.copy(this,A),this}dot(A){return Y0.quat.dot(this,A)}exponential(){return Y0.quat.exp(this,this),this}equals(A){return Y0.quat.equals(this,A)}exactEquals(A){return Y0.quat.exactEquals(this,A)}getAngle(A){return Y0.quat.getAngle(this,A)}identity(){return Y0.quat.identity(this),this}invert(){return Y0.quat.invert(this,this),this}lerp(A,Q){return Y0.quat.lerp(this,this,A,Q),this}logarithm(){return Y0.quat.ln(this,this),this}multiply(A){return Y0.quat.multiply(this,this,A),this}transformVector(A){return A.transformQuaternion(this)}normalize(){return Y0.quat.normalize(this,this),this}power(A){return Y0.quat.pow(this,this,A),this}randomize(){return Y0.quat.random(this),this}rotateX(A){return Y0.quat.rotateX(this,this,A),this}rotateY(A){return Y0.quat.rotateY(this,this,A),this}rotateZ(A){return Y0.quat.rotateZ(this,this,A),this}scale(A){return Y0.quat.scale(this,this,A),this}setAxisAngle(A,Q){return Y0.quat.setAxisAngle(this,A,Q),this}slerp(A,Q){return Y0.quat.slerp(this,this,A,Q),this}toString(){return`${this.x},${this.y},${this.z},${this.w}`}}var vB=qA(B4(),1);class eq extends Float32Array{constructor(A,Q){super([A,Q])}get length(){return vB.vec2.length(this)}get squaredLength(){return vB.vec2.squaredLength(this)}get magnitude(){return vB.vec2.length(this)}get squaredMagnitude(){return vB.vec2.squaredLength(this)}get x(){return this[0]}set x(A){this[0]=A}get y(){return this[1]}set y(A){this[1]=A}static create(){return new eq(0,0)}add(A){return vB.vec2.add(this,this,A),this}angle(A){return vB.vec2.angle(this,A)}ceil(){return vB.vec2.ceil(this,this),this}clone(){return new eq(this.x,this.y)}copy(A){return vB.vec2.copy(this,A),this}distance(A){return vB.vec2.distance(this,A)}divide(A){return vB.vec2.divide(this,this,A),this}dot(A){return vB.vec2.dot(this,A)}equals(A){return vB.vec2.equals(this,A)}exactEquals(A){return vB.vec2.exactEquals(this,A)}floor(){return vB.vec2.floor(this,this),this}invert(){return vB.vec2.inverse(this,this),this}lerp(A,Q){return vB.vec2.lerp(this,this,A,Q),this}max(A){return vB.vec2.max(this,this,A),this}min(A){return vB.vec2.min(this,this,A),this}multiply(A){return vB.vec2.mul(this,this,A),this}negate(){return vB.vec2.negate(this,this),this}normalize(){return vB.vec2.normalize(this,this),this}randomize(A){return vB.vec2.random(this,A),this}rotate(A,Q){return vB.vec2.rotate(this,this,A,Q),this}round(){return vB.vec2.round(this,this),this}scale(A){return vB.vec2.scale(this,this,A),this}scaleAndAdd(A,Q){return vB.vec2.scaleAndAdd(this,this,A,Q),this}subtract(A){return vB.vec2.sub(this,this,A),this}toString(){return`${this.x},${this.y}`}transformMatrix2(A){return vB.vec2.transformMat2(this,this,A),this}transformMatrix3(A){return vB.vec2.transformMat3(this,this,A),this}transformMatrix4(A){return vB.vec2.transformMat4(this,this,A),this}zero(){return vB.vec2.zero(this),this}}var RB=qA(B4(),1);class qV extends Float32Array{constructor(A,Q,B){super([A,Q,B])}get length(){return RB.vec3.length(this)}get squaredLength(){return RB.vec3.squaredLength(this)}get magnitude(){return RB.vec3.length(this)}get squaredMagnitude(){return RB.vec3.squaredLength(this)}get x(){return this[0]}set x(A){this[0]=A}get y(){return this[1]}set y(A){this[1]=A}get z(){return this[2]}set z(A){this[2]=A}static create(){return new qV(0,0,0)}static fromVector3Like(A){return new qV(A.x,A.y,A.z)}add(A){return RB.vec3.add(this,this,A),this}ceil(){return RB.vec3.ceil(this,this),this}clone(){return new qV(this.x,this.y,this.z)}copy(A){return RB.vec3.copy(this,A),this}cross(A){return RB.vec3.cross(this,this,A),this}distance(A){return RB.vec3.distance(this,A)}divide(A){return RB.vec3.div(this,this,A),this}dot(A){return RB.vec3.dot(this,A)}equals(A){return RB.vec3.equals(this,A)}exactEquals(A){return RB.vec3.exactEquals(this,A)}floor(){return RB.vec3.floor(this,this),this}invert(){return RB.vec3.inverse(this,this),this}lerp(A,Q){return RB.vec3.lerp(this,this,A,Q),this}max(A){return RB.vec3.max(this,this,A),this}min(A){return RB.vec3.min(this,this,A),this}multiply(A){return RB.vec3.mul(this,this,A),this}negate(){return RB.vec3.negate(this,this),this}normalize(){return RB.vec3.normalize(this,this),this}randomize(A){return RB.vec3.random(this,A),this}rotateX(A,Q){return RB.vec3.rotateX(this,this,A,Q),this}rotateY(A,Q){return RB.vec3.rotateY(this,this,A,Q),this}rotateZ(A,Q){return RB.vec3.rotateZ(this,this,A,Q),this}round(){return RB.vec3.round(this,this),this}scale(A){return RB.vec3.scale(this,this,A),this}scaleAndAdd(A,Q){return RB.vec3.scaleAndAdd(this,this,A,Q),this}subtract(A){return RB.vec3.sub(this,this,A),this}toString(){return`${this.x},${this.y},${this.z}`}transformMatrix3(A){return RB.vec3.transformMat3(this,this,A),this}transformMatrix4(A){return RB.vec3.transformMat4(this,this,A),this}transformQuaternion(A){return RB.vec3.transformQuat(this,this,A),this}zero(){return RB.vec3.zero(this),this}}var rSQ=qA(nSQ(),1);var sSQ=0.099856;class AM extends KW{faceSpeed=0;idleLoopedAnimations=[];idleLoopedAnimationsSpeed;jumpOneshotAnimations=[];moveLoopedAnimations=[];moveLoopedAnimationsSpeed;moveSpeed=0;_faceTarget;_jumpHeight=0;_moveCompletesWhenStuck=!1;_moveIgnoreAxes={};_moveStartMoveAnimations=!1;_moveStartIdleAnimationsOnCompletion=!0;_moveStoppingDistanceSquared=sSQ;_moveStuckAccumulatorMs=0;_moveStuckLastPosition;_moveTarget;_onFace;_onFaceComplete;_onMove;_onMoveComplete;_stopFaceRequested=!1;_stopMoveRequested=!1;constructor(A={}){super();this.idleLoopedAnimations=A.idleLoopedAnimations??this.idleLoopedAnimations,this.idleLoopedAnimationsSpeed=A.idleLoopedAnimationsSpeed??this.idleLoopedAnimationsSpeed,this.jumpOneshotAnimations=A.jumpOneshotAnimations??this.jumpOneshotAnimations,this.moveLoopedAnimations=A.moveLoopedAnimations??this.moveLoopedAnimations,this.moveLoopedAnimationsSpeed=A.moveLoopedAnimationsSpeed??this.moveLoopedAnimationsSpeed}spawn(A){super.spawn(A),this._startIdleAnimations(A)}face(A,Q,B){this._faceTarget=A,this.faceSpeed=Q,this._onFace=B?.faceCallback,this._onFaceComplete=B?.faceCompleteCallback}jump(A){this._jumpHeight=A}move(A,Q,B){this.moveSpeed=Q,this._moveCompletesWhenStuck=B?.moveCompletesWhenStuck??!1,this._moveIgnoreAxes=B?.moveIgnoreAxes??{},this._moveStartIdleAnimationsOnCompletion=B?.moveStartIdleAnimationsOnCompletion??!0,this._moveStartMoveAnimations=!0,this._moveStoppingDistanceSquared=B?.moveStoppingDistance?B.moveStoppingDistance**2:sSQ,this._moveTarget=A,this._onMove=B?.moveCallback,this._onMoveComplete=B?.moveCompleteCallback,this._moveStuckAccumulatorMs=0,this._moveStuckLastPosition=void 0}stopFace(){this._stopFaceRequested=!0}stopMove(){this._stopMoveRequested=!0}tick(A,Q){if(super.tick(A,Q),!this._moveTarget&&!this._faceTarget&&!this._jumpHeight)return;if(this._moveStartMoveAnimations)this._startMoveAnimations(A),this._moveStartMoveAnimations=!1;let B=Q/1000,Y=A.position;if(A.isDynamic&&this._jumpHeight>0){let J=Math.abs(A.world.simulation.gravity.y),C=Math.sqrt(2*J*this._jumpHeight);A.applyImpulse({x:0,y:C*A.mass,z:0}),this._jumpHeight=0,this._startJumpAnimations(A)}if(this._moveTarget){let J={x:this._moveIgnoreAxes.x?0:this._moveTarget.x-Y.x,y:this._moveIgnoreAxes.y?0:this._moveTarget.y-Y.y,z:this._moveIgnoreAxes.z?0:this._moveTarget.z-Y.z},C=J.x*J.x+J.y*J.y+J.z*J.z,X=!1;if(this._moveCompletesWhenStuck){if(this._moveStuckAccumulatorMs+=Q,this._moveStuckAccumulatorMs>=500){if(this._moveStuckLastPosition){let G=Y.x-this._moveStuckLastPosition.x,F=Y.y-this._moveStuckLastPosition.y,W=Y.z-this._moveStuckLastPosition.z;X=Math.sqrt(G*G+F*F+W*W)this._moveStoppingDistanceSquared&&!this._stopMoveRequested&&!X){let G=Math.sqrt(C),F=this.moveSpeed*B,Z=Math.min(G,F)/G,U={x:Y.x+J.x*Z,y:Y.y+J.y*Z,z:Y.z+J.z*Z};if(A.setPosition(U),this._onMove)this._onMove(U,this._moveTarget)}else{if(this._moveStuckAccumulatorMs=0,this._moveStuckLastPosition=void 0,this._moveTarget=void 0,this._stopMoveRequested=!1,this._moveStartIdleAnimationsOnCompletion)this._startIdleAnimations(A);if(this._onMoveComplete){let G=this._onMoveComplete;this._onMove=void 0,this._onMoveComplete=void 0,G(Y)}}}if(this._faceTarget){let J={x:this._faceTarget.x-Y.x,z:this._faceTarget.z-Y.z},C=Math.atan2(-J.x,-J.z),X=A.rotation,G=Math.atan2(2*(X.w*X.y),1-2*(X.y*X.y)),F=C-G;while(F>Math.PI)F-=2*Math.PI;while(F<-Math.PI)F+=2*Math.PI;if(Math.abs(F)>0.01&&!this._stopFaceRequested){let W=this.faceSpeed*B,Z=Math.abs(F){let M=Z.get(L[0])??1/0,N=Z.get(z[0])??1/0;return M-N});$.push([G,Q]);let E=[{x:0,y:0,z:1},{x:1,y:0,z:0},{x:0,y:0,z:-1},{x:-1,y:0,z:0},{x:1,y:0,z:1},{x:1,y:0,z:-1},{x:-1,y:0,z:1},{x:-1,y:0,z:-1}],K=[];for(let L=this._maxJump;L>=this._maxFall;L--){if(L===0)continue;let z=Math.abs(Q.y+L-B.y);K.push({y:L,distanceToTargetY:z})}K.sort((L,z)=>L.distanceToTargetY-z.distanceToTargetY);let I=[...E,...K.flatMap(({y:L})=>E.map((z)=>({...z,y:L})))],V=0,H=Math.abs(B.x-Q.x)+Math.abs(B.y-Q.y)+Math.abs(B.z-Q.z),D=Math.min(this._maxOpenSetIterations,H*20);while(!$.isEmpty()&&V({x:w.x+0.5,y:w.y+A/2,z:w.z+0.5})),this._debug)console.log(`PathfindingEntityController._calculatePath: Path found after ${V} open set iterations. Start: ${this._coordinateToKey(Q)}, Target: ${this._coordinateToKey(this._target)}`);return!0}U.add(L);let M=W.get(L),N=new Map;for(let q of I){let w=`${q.x},${q.z}`,P=q.y<0;if(P&&N.has(w))continue;let _={x:z.x+q.x,y:z.y+q.y,z:z.z+q.z};if(Math.abs(B.x-_.x)+Math.abs(B.y-_.y)+Math.abs(B.z-_.z)>H*1.5)continue;let k=this._coordinateToKey(_);if(U.has(k))continue;let T=this._isNeighborCoordinateBlocked(z,_,this._entity.height);if(P&&T){N.set(w,!0);continue}if(T)continue;let S=Math.abs(q.x),v=Math.abs(q.y),y=Math.abs(q.z),h=v===0?0:this._verticalPenalty,g=(Math.max(S,v,y)===1&&S+v+y>1?1.4:1)+h,m=M+g,i=W.get(k)??1/0;if(m>=i)continue;F.set(k,z),W.set(k,m);let p=m+this._pathfindingHeuristic(_,B);Z.set(k,p),$.push([k,_])}}if(V>=D){if(this._onPathfindAbort?.(),this._debug)n.warning(`PathfindingEntityController._calculatePath: Maximum open set iterations reached (${D}), path search aborted. Start: ${this._coordinateToKey(Q)}, Target: ${this._coordinateToKey(this._target)}`)}else if(this._debug)n.warning(`PathfindingEntityController._calculatePath: No valid path found. Start: ${this._coordinateToKey(Q)}, Target: ${this._coordinateToKey(this._target)}`);return this._target=void 0,this._waypoints=[],!1}_reconstructPath(A,Q){let B=[Q],Y=Q;while(A.has(this._coordinateToKey(Y)))Y=A.get(this._coordinateToKey(Y)),B.unshift(Y);return B}_coordinateToKey(A){return`${A.x},${A.y},${A.z}`}_moveToNextWaypoint(){let A=this._waypointNextIndex>0?this._waypoints[this._waypointNextIndex-1]:void 0,Q=this._waypoints[this._waypointNextIndex];if(!Q||!this._entity)return;let B=0;if(this._entity.isDynamic&&A&&Q.y>A.y){let Y=Q.y-A.y,J=Math.min(Y,this._maxJump)+0.75;this.jump(J);let C=Math.abs(this._entity.world.simulation.gravity.y),X=Math.sqrt(2*C*J),G=A.x+0.5,F=A.z+0.5,W=Q.x+0.5,Z=Q.z+0.5,U=W-G,$=Z-F,E=Math.sqrt(U*U+$*$),K=X/C,I=E/this._speed;B=Math.min(K*0.8,I)*1000}setTimeout(()=>{if(!this._entity)return;let Y=Date.now();this.face(Q,this._speed),this.move(Q,this._speed,{moveCompletesWhenStuck:!0,moveIgnoreAxes:{y:this._entity.isDynamic},moveStartIdleAnimationsOnCompletion:this._waypointNextIndex===this._waypoints.length-1,moveStoppingDistance:this._waypointStoppingDistance,moveCallback:()=>{if(Date.now()-Y>this._waypointTimeoutMs&&this._waypointNextIndex{if(this._waypointNextIndex{J.READY="WEBSERVER.READY";J.STOPPED="WEBSERVER.STOPPED";J.ERROR="WEBSERVER.ERROR";J.UPGRADE="WEBSERVER.UPGRADE"})(Oo||={});var ef0={"access-control-allow-origin":"*"},Ab0={".html":"text/html",".css":"text/css",".js":"text/javascript",".mjs":"text/javascript",".json":"application/json",".gltf":"model/gltf+json",".glb":"model/gltf-binary",".png":"image/png",".jpg":"image/jpeg",".jpeg":"image/jpeg",".webp":"image/webp",".gif":"image/gif",".svg":"image/svg+xml",".ico":"image/x-icon",".ktx2":"image/ktx2",".mp3":"audio/mpeg",".ogg":"audio/ogg",".wav":"audio/wav",".mp4":"video/mp4",".webm":"video/webm",".woff":"font/woff",".woff2":"font/woff2",".ttf":"font/ttf",".bin":"application/octet-stream",".wasm":"application/wasm"};class zV extends BQ{static instance=new zV;_server;_assetCache=new Map;_assetDirs=[];constructor(){super();this._assetDirs.push(wo.resolve("assets"));let A=zY.assetsLibraryPath;if(A)this._assetDirs.push(A)}start(){if(this._server)return n.warning("WebServer.start(): already started");this._server=tf0.createSecureServer({key:Ik,cert:Vk,allowHTTP1:!0}),this._server.on("request",this._onRequest),this._server.on("upgrade",this._onUpgrade),this._server.on("error",this._onError),this._server.on("close",this._onStopped),this._server.listen(Hk,this._onStarted),console.info(`WebServer.start(): Server running on port ${Hk}`)}stop(){if(!this._server)return n.warning("WebServer.stop(): not started"),Promise.resolve(!1);return new Promise((A,Q)=>{this._server.close((B)=>B?Q(B):A(!0))})}_onStarted=()=>this.emitWithGlobal("WEBSERVER.READY",{});_onStopped=()=>this.emitWithGlobal("WEBSERVER.STOPPED",{});_onError=(A)=>{n.error(`WebServer._onError(): ${A.message}`),this.emitWithGlobal("WEBSERVER.ERROR",{error:A})};_onRequest=(A,Q)=>{Q.on("error",()=>{});let B=A.url||"/",J=(A.method||"GET")==="HEAD",C=(G,F={})=>{Q.writeHead(G,{...F,...ef0})};if(B==="/"){C(200,{"content-type":"application/json"}),Q.end(!J?JSON.stringify({status:"OK",version:jo,runtime:"node",playerCount:e9.instance.playerCount}):void 0);return}let X=decodeURIComponent(B.split("?")[0]);if(X.includes("..")){C(400),Q.end();return}for(let G of this._assetDirs){let F=wo.join(G,X);if(!F.startsWith(G))continue;let W=zY.assetsLibraryPath;if(W&&F.startsWith(W)&&!B.includes("noSync"))zY.instance.syncAsset(F);let Z=this._assetCache.get(F);if(!Z)try{let E=DTQ.statSync(F);if(!E.isFile())continue;Z={size:E.size,etag:`"${E.mtimeMs.toString(36)}-${E.size.toString(36)}"`},this._assetCache.set(F,Z)}catch{continue}if(A.headers["if-none-match"]===Z.etag){C(304),Q.end();return}let U={"content-type":Ab0[wo.extname(F).toLowerCase()]||"application/octet-stream","content-length":Z.size,etag:Z.etag,"cache-control":"public, max-age=0, must-revalidate"};if(J){C(200,U),Q.end();return}C(200,U);let $=DTQ.createReadStream(F);Q.on("close",()=>$.destroy()),$.on("error",()=>Q.destroy()),$.pipe(Q);return}C(404),Q.end()};_onUpgrade=(A,Q,B)=>{this.emitWithGlobal("WEBSERVER.UPGRADE",{req:A,socket:Q,head:B})}}var Y4;((I)=>{I.BUILD_PACKETS="build_packets";I.ENTITIES_EMIT_UPDATES="entities_emit_updates";I.ENTITIES_TICK="entities_tick";I.NETWORK_SYNCHRONIZE="network_synchronize";I.NETWORK_SYNCHRONIZE_CLEANUP="network_synchronize_cleanup";I.PHYSICS_CLEANUP="physics_cleanup";I.PHYSICS_STEP="physics_step";I.SEND_ALL_PACKETS="send_all_packets";I.SEND_PACKETS="send_packets";I.SERIALIZE_FREE_BUFFERS="serialize_free_buffers";I.SERIALIZE_PACKETS="serialize_packets";I.SERIALIZE_PACKETS_ENCODE="serialize_packets_encode";I.SIMULATION_STEP="simulation_step";I.TICKER_TICK="ticker_tick";I.WORLD_TICK="world_tick"})(Y4||={});class o0{static getProcessStats(A=!1){let Q=process.memoryUsage(),B={jsHeapSizeMb:{value:Q.heapUsed/1024/1024,unit:"megabyte"},jsHeapCapacityMb:{value:Q.heapTotal/1024/1024,unit:"megabyte"},jsHeapUsagePercent:{value:Q.heapUsed/Q.heapTotal,unit:"percent"},processHeapSizeMb:{value:Q.heapUsed/1024/1024,unit:"megabyte"},rssSizeMb:{value:Q.rss/1024/1024,unit:"megabyte"}};if(A)return B;return Object.fromEntries(Object.entries(B).map(([Y,J])=>[Y,J.value]))}static initializeSentry(A,Q=50){if(vZ())return;_T({dsn:A,release:jo,environment:process.env.NODE_ENV||"development",tracesSampleRate:1,initialScope:{tags:{gameId:process.env.HYTOPIA_GAME_ID??"unknown",gameSlug:process.env.HYTOPIA_GAME_SLUG??"unknown",lobbyId:process.env.HYTOPIA_LOBBY_ID??"unknown",region:process.env.REGION??"unknown"}},beforeSend:(B)=>{return B.extra=o0.getProcessStats(),B},beforeSendTransaction:(B)=>{if(B.contexts?.trace?.op==="ticker_tick"){let J=B?.start_timestamp,C=B?.timestamp;if(!J||!C)return null;if((C-J)*1000>Q)return B.measurements=o0.getProcessStats(!0),B}return null}})}static startSpan(A,Q){let B=cY.instance;if(B.isEnabled){if(vZ())return B.measure(A.operation,()=>k8({attributes:A.attributes,name:A.operation,op:A.operation},Q));return B.measure(A.operation,()=>Q())}if(vZ())return k8({attributes:A.attributes,name:A.operation,op:A.operation},Q);return Q()}static sentry(){return _s}}var Bb0=30000;class U1 extends BQ{static _cachedPacketsSerializedBuffer=new Map;_closeTimeout=null;_isDuplicate=!1;_ws;_wsBinding=!1;_wt;_wtBinding=!1;_wtReliableReader;_wtReliableWriter;_wtUnreliableReader;_wtUnreliableWriter;id;initialConnectionParams;constructor(A,Q,B,Y){super();this.id=JHA(),this.initialConnectionParams=B,this.onPacket(hQ.PacketId.HEARTBEAT,this._onHeartbeatPacket);let J=()=>{BQ.globalInstance.emit("CONNECTION.OPENED",{connection:this,session:Y})};if(A)this.bindWs(A),J();else if(Q)this.bindWt(Q).then(J).catch((C)=>{this._onClose(),n.error(`Connection.constructor(): Failed to bind WebTransport. Error: ${C}`)})}get isDuplicate(){return this._isDuplicate}static clearCachedPacketsSerializedBuffers(){if(U1._cachedPacketsSerializedBuffer.size>0)U1._cachedPacketsSerializedBuffer.clear()}static serializePackets(A){for(let B of A)if(!hQ.isValidPacket(B))return n.error(`Connection.serializePackets(): Invalid packet payload: ${JSON.stringify(B)}`);let Q=U1._cachedPacketsSerializedBuffer.get(A);if(Q)return Q;return o0.startSpan({operation:"serialize_packets",attributes:{packets:A.length,packetIds:A.map((B)=>B[0]).join(",")}},(B)=>{let Y=Zu.pack(A);if(Y.byteLength>65536)Y=Qb0(Y,{level:1});return B?.setAttribute("serializedBytes",Y.byteLength),U1._cachedPacketsSerializedBuffer.set(A,Y),Y})}bindWs(A){this._wsBinding=!0;let Q=this._handleReconnect();if(this._cleanupConnections(),this._ws=A,this._ws.binaryType="nodebuffer",this._ws.onmessage=(B)=>this._onMessage(B.data),this._ws.onclose=this._onClose,this._ws.onerror=this._onError,this._wsBinding=!1,this._signalConnectionId(),Q)this.emitWithGlobal("CONNECTION.RECONNECTED",{connection:this})}async bindWt(A){this._wtBinding=!0;let Q=this._handleReconnect();this._cleanupConnections(),A.userData.onclose=this._onClose,A.closed.catch(()=>{}).finally(()=>A.userData.onclose?.()),this._wt=A;try{await A.ready;let B=A.incomingBidirectionalStreams.getReader();try{let{value:Y}=await B.read();if(Y)this._wtReliableReader=Y.readable,this._wtReliableWriter=Y.writable.getWriter()}finally{B.releaseLock()}this._wtUnreliableReader=A.datagrams.readable,this._wtUnreliableWriter=A.datagrams.createWritable().getWriter()}catch{this._wtBinding=!1;return}if(this._wtBinding=!1,this._wt!==A)return;if((async()=>{if(!this._wtReliableReader)throw Error("Connection.bindWt(): Reliable reader not found.");let B=hQ.createPacketBufferUnframer((Y)=>{this._onMessage(Y)});for await(let Y of this._wtReliableReader){if(A!==this._wt)return;B(Y)}})().catch(()=>{try{A?.close()}catch{}}),(async()=>{if(!this._wtUnreliableReader)throw Error("Connection.bindWt(): Unreliable reader not found.");for await(let B of this._wtUnreliableReader){if(A!==this._wt)return;this._onMessage(B)}})().catch(()=>{try{A?.close()}catch{}}),this._signalConnectionId(),Q)this.emitWithGlobal("CONNECTION.RECONNECTED",{connection:this})}disconnect(){try{this._ws?.close(),this._wt?.close()}catch(A){n.error(`Connection.disconnect(): Connection disconnect failed. Error: ${A}`)}}killDuplicateConnection(){this._isDuplicate=!0,this._cleanupConnections(),this.emitWithGlobal("CONNECTION.DISCONNECTED",{connection:this}),this._finalizeClose()}onPacket(A,Q){this.on("CONNECTION.PACKET_RECEIVED",({packet:B})=>{if(B[0]===A)Q(B)})}send(A,Q=!0){if(this._closeTimeout||this._wsBinding||this._wtBinding)return;if(!this._ws&&!this._wt)return;let B=this._ws&&this._ws.readyState===NE.default.OPEN,Y=this._wt&&this._wt.state==="connected";if(!B&&!Y)return;o0.startSpan({operation:"send_packets"},()=>{try{let J=U1.serializePackets(A);if(!J)return;if(Y)if(Q||J.byteLength>1200)this._wtReliableWriter?.write(hQ.framePacketBuffer(J)).catch(()=>{n.error("Connection.send(): WebTransport reliable write failed, connection closing?")});else this._wtUnreliableWriter?.write(J).catch(()=>{n.error("Connection.send(): WebTransport unreliable write failed, connection closing?")});else this._ws.send(J);this.emitWithGlobal("CONNECTION.PACKETS_SENT",{connection:this,packets:A})}catch(J){n.error(`Connection.send(): Packet send failed. Error: ${J}`)}})}_onHeartbeatPacket=()=>{this.send([hQ.createPacket(hQ.bidirectionalPackets.heartbeatPacketDefinition,null)],!0)};_onMessage=(A)=>{try{let Q=this._deserialize(A);if(!Q)return;this.emitWithGlobal("CONNECTION.PACKET_RECEIVED",{connection:this,packet:Q})}catch(Q){n.error(`Connection._ws.onmessage(): Error: ${Q}`)}};_onClose=()=>{this.emitWithGlobal("CONNECTION.DISCONNECTED",{connection:this}),this._closeTimeout=setTimeout(()=>this._finalizeClose(),Bb0)};_onError=(A)=>{this.emitWithGlobal("CONNECTION.ERROR",{connection:this,error:A})};_cleanupConnections(){if(this._ws)this._ws.onmessage=()=>{},this._ws.onclose=()=>{},this._ws.onerror=()=>{};if(this._wt)this._wt.userData.onclose=()=>{};this._signalKill();try{this._ws?.close()}catch{}let A=this._wt;if(A)setTimeout(()=>{try{A.close()}catch{}},50);this._ws=void 0,this._wt=void 0,this._wtReliableReader=void 0,this._wtReliableWriter=void 0,this._wtUnreliableReader=void 0,this._wtUnreliableWriter=void 0}_deserialize(A){let Q=Zu.unpack(A);if(!Q||typeof Q!=="object"||typeof Q[0]!=="number")return n.error(`Connection._deserialize(): Invalid packet format. Packet: ${JSON.stringify(Q)}`);if(!hQ.isValidPacket(Q))return n.error(`Connection._deserialize(): Invalid packet payload. Packet: ${JSON.stringify(Q)}`);return Q}_finalizeClose(){this.emitWithGlobal("CONNECTION.CLOSED",{connection:this}),this.offAll()}_handleReconnect(){let A=!!this._ws||!!this._wt;if(A&&this._closeTimeout)clearTimeout(this._closeTimeout),this._closeTimeout=null;return A}_signalConnectionId(){this.send([hQ.createPacket(hQ.bidirectionalPackets.connectionPacketDefinition,{i:this.id})])}_signalKill(){this.send([hQ.createPacket(hQ.bidirectionalPackets.connectionPacketDefinition,{k:!0})])}}class bB{_map=new Map;_values=[];_isDirty=!1;get size(){return this._map.size}get valuesArray(){if(this._isDirty)this._syncArray();return this._values}get(A){return this._map.get(A)}set(A,Q){let B=this._map.has(A);if(this._map.set(A,Q),!B)this._values.push(Q);else this._isDirty=!0;return this}has(A){return this._map.has(A)}delete(A){let Q=this._map.delete(A);if(Q)this._isDirty=!0;return Q}clear(){this._map.clear(),this._values.length=0,this._isDirty=!1}forEach(A,Q){this._map.forEach((B,Y)=>{A.call(Q,B,Y,this)})}keys(){return this._map.keys()}values(){return this._map.values()}entries(){return this._map.entries()}[Symbol.iterator](){return this._map[Symbol.iterator]()}_syncArray(){this._values.length=0;for(let A of this._map.values())this._values.push(A);this._isDirty=!1}}var Yb0={x:0,y:-32,z:0},rq=60,Po;((J)=>{J.STEP_START="SIMULATION.STEP_START";J.STEP_END="SIMULATION.STEP_END";J.DEBUG_RAYCAST="SIMULATION.DEBUG_RAYCAST";J.DEBUG_RENDER="SIMULATION.DEBUG_RENDER"})(Po||={});class aq extends BQ{_colliderMap=new uD;_debugRaycastingEnabled=!1;_debugRenderingEnabled=!1;_debugRenderingFilterFlags;_rapierEventQueue;_rapierSimulation;_world;constructor(A,Q=rq,B=Yb0){super();this._rapierEventQueue=new FB.EventQueue(!0),this._rapierSimulation=new FB.World(B),this._rapierSimulation.timestep=Math.fround(1/Q),this._world=A}get colliderMap(){return this._colliderMap}get isDebugRaycastingEnabled(){return this._debugRaycastingEnabled}get isDebugRenderingEnabled(){return this._debugRenderingEnabled}get gravity(){return this._rapierSimulation.gravity}get timestepS(){return this._rapierSimulation.timestep}get world(){return this._world}createRawCollider(A,Q){return this._rapierSimulation.createCollider(A,Q)}createRawRigidBody(A){return this._rapierSimulation.createRigidBody(A)}enableDebugRaycasting(A){this._debugRaycastingEnabled=A}enableDebugRendering(A,Q=FB.QueryFilterFlags.EXCLUDE_FIXED){this._debugRenderingEnabled=A,this._debugRenderingFilterFlags=Q}getContactManifolds(A,Q){let B=[];return this._rapierSimulation.narrowPhase.contactPair(A,Q,(Y,J)=>{if(Y.numContacts()===0)return;let C=Y.normal(),X=[];for(let G=0;G{let G=this._colliderMap.getColliderHandleBlockType(X.handle);if(G&&!J.has(G))return J.add(G),C.push({intersectedBlockType:G}),!0;let F=this._colliderMap.getColliderHandleEntity(X.handle);if(F&&!J.has(F))return J.add(F),C.push({intersectedEntity:F}),!0;return!0},Y.filterFlags,Y.filterGroups,Y.filterExcludeCollider,Y.filterExcludeRigidBody,Y.filterPredicate),C}raycast(A,Q,B,Y={}){let J=new FB.Ray(A,Q),C=this._rapierSimulation.castRay(J,B,Y.solidMode??!0,Y.filterFlags,Y.filterGroups,Y.filterExcludeCollider,Y.filterExcludeRigidBody,Y.filterPredicate);if(this._debugRaycastingEnabled)this.emitWithWorld(this._world,"SIMULATION.DEBUG_RAYCAST",{simulation:this,origin:A,direction:Q,length:B,hit:!!C});if(!C)return null;let X=J.pointAt(C.timeOfImpact),G=C.timeOfImpact,F=C.collider,W=this._colliderMap.getColliderHandleBlockType(F.handle);if(W)return{hitBlock:AE.fromGlobalCoordinate({x:Math.floor(X.x-(J.dir.x<0?0.0001:-0.0001)),y:Math.floor(X.y-(J.dir.y<0?0.0001:-0.0001)),z:Math.floor(X.z-(J.dir.z<0?0.0001:-0.0001))},W),hitPoint:X,hitDistance:G,origin:A,originDirection:Q};let Z=this._colliderMap.getColliderHandleEntity(F.handle);if(Z)return{hitEntity:Z,hitPoint:X,hitDistance:G,origin:A,originDirection:Q};return null}removeRawCollider(A){this._colliderMap.queueColliderHandleForCleanup(A.handle),this._rapierSimulation.removeCollider(A,!1)}removeRawRigidBody(A){this._rapierSimulation.removeRigidBody(A)}setGravity(A){this._rapierSimulation.gravity=A}step=(A)=>{this.emitWithWorld(this._world,"SIMULATION.STEP_START",{simulation:this,tickDeltaMs:A});let Q=performance.now();if(o0.startSpan({operation:"physics_step"},()=>{this._rapierSimulation.step(this._rapierEventQueue)}),o0.startSpan({operation:"physics_cleanup"},()=>{this._rapierEventQueue.drainContactForceEvents(this._onContactForceEvent),this._rapierEventQueue.drainCollisionEvents(this._onCollisionEvent),this._colliderMap.cleanup()}),this.emitWithWorld(this._world,"SIMULATION.STEP_END",{simulation:this,stepDurationMs:performance.now()-Q}),this._debugRenderingEnabled)this.emitWithWorld(this._world,"SIMULATION.DEBUG_RENDER",{simulation:this,...this._rapierSimulation.debugRender(this._debugRenderingFilterFlags)})};_onCollisionEvent=(A,Q,B)=>{let[Y,J]=this._getCollisionObjects(A,Q);if(!Y||!J)return;let C=(X,G)=>{if(X instanceof N8&&G instanceof R0&&X.hasListeners("BLOCK_TYPE.ENTITY_COLLISION"))X.emit("BLOCK_TYPE.ENTITY_COLLISION",{blockType:X,entity:G,started:B,colliderHandleA:A,colliderHandleB:Q});else if(X instanceof R0&&G instanceof N8&&X.hasListeners("ENTITY.BLOCK_COLLISION"))X.emit("ENTITY.BLOCK_COLLISION",{entity:X,blockType:G,started:B,colliderHandleA:A,colliderHandleB:Q});else if(X instanceof R0&&G instanceof R0&&X.hasListeners("ENTITY.ENTITY_COLLISION"))X.emit("ENTITY.ENTITY_COLLISION",{entity:X,otherEntity:G,started:B,colliderHandleA:A,colliderHandleB:Q});else if(typeof X==="function"&&(G instanceof R0||G instanceof N8))X(G,B,A,Q)};C(Y,J),C(J,Y)};_onContactForceEvent=(A)=>{let[Q,B]=this._getCollisionObjects(A.collider1(),A.collider2());if(!Q||typeof Q==="function"||!B||typeof B==="function")return;let Y={totalForce:A.totalForce(),totalForceMagnitude:A.totalForceMagnitude(),maxForceDirection:A.maxForceDirection(),maxForceMagnitude:A.maxForceMagnitude()},J=(C,X)=>{if(C instanceof N8&&X instanceof R0&&C.hasListeners("BLOCK_TYPE.ENTITY_CONTACT_FORCE"))C.emit("BLOCK_TYPE.ENTITY_CONTACT_FORCE",{blockType:C,entity:X,contactForceData:Y});else if(C instanceof R0&&X instanceof N8&&C.hasListeners("ENTITY.BLOCK_CONTACT_FORCE"))C.emit("ENTITY.BLOCK_CONTACT_FORCE",{entity:C,blockType:X,contactForceData:Y});else if(C instanceof R0&&X instanceof R0&&C.hasListeners("ENTITY.ENTITY_CONTACT_FORCE"))C.emit("ENTITY.ENTITY_CONTACT_FORCE",{entity:C,otherEntity:X,contactForceData:Y})};J(Q,B),J(B,Q)};_getCollisionObjects(A,Q){let B=this._colliderMap.getColliderHandleBlockType(A)??this._colliderMap.getColliderHandleCollisionCallback(A)??this._colliderMap.getColliderHandleEntity(A),Y=this._colliderMap.getColliderHandleBlockType(Q)??this._colliderMap.getColliderHandleCollisionCallback(Q)??this._colliderMap.getColliderHandleEntity(Q);return[B,Y]}}var To;((l)=>{l.BURST="PARTICLE_EMITTER.BURST";l.DESPAWN="PARTICLE_EMITTER.DESPAWN";l.SET_ALPHA_TEST="PARTICLE_EMITTER.SET_ALPHA_TEST";l.SET_ATTACHED_TO_ENTITY="PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY";l.SET_ATTACHED_TO_ENTITY_NODE_NAME="PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY_NODE_NAME";l.SET_COLOR_END="PARTICLE_EMITTER.SET_COLOR_END";l.SET_COLOR_END_VARIANCE="PARTICLE_EMITTER.SET_COLOR_END_VARIANCE";l.SET_COLOR_INTENSITY_END="PARTICLE_EMITTER.SET_COLOR_INTENSITY_END";l.SET_COLOR_INTENSITY_END_VARIANCE="PARTICLE_EMITTER.SET_COLOR_INTENSITY_END_VARIANCE";l.SET_COLOR_INTENSITY_START="PARTICLE_EMITTER.SET_COLOR_INTENSITY_START";l.SET_COLOR_INTENSITY_START_VARIANCE="PARTICLE_EMITTER.SET_COLOR_INTENSITY_START_VARIANCE";l.SET_COLOR_START="PARTICLE_EMITTER.SET_COLOR_START";l.SET_COLOR_START_VARIANCE="PARTICLE_EMITTER.SET_COLOR_START_VARIANCE";l.SET_GRAVITY="PARTICLE_EMITTER.SET_GRAVITY";l.SET_LIFETIME="PARTICLE_EMITTER.SET_LIFETIME";l.SET_LIFETIME_VARIANCE="PARTICLE_EMITTER.SET_LIFETIME_VARIANCE";l.SET_MAX_PARTICLES="PARTICLE_EMITTER.SET_MAX_PARTICLES";l.SET_OFFSET="PARTICLE_EMITTER.SET_OFFSET";l.SET_ORIENTATION="PARTICLE_EMITTER.SET_ORIENTATION";l.SET_ORIENTATION_FIXED_ROTATION="PARTICLE_EMITTER.SET_ORIENTATION_FIXED_ROTATION";l.SET_OPACITY_END="PARTICLE_EMITTER.SET_OPACITY_END";l.SET_OPACITY_END_VARIANCE="PARTICLE_EMITTER.SET_OPACITY_END_VARIANCE";l.SET_OPACITY_START="PARTICLE_EMITTER.SET_OPACITY_START";l.SET_OPACITY_START_VARIANCE="PARTICLE_EMITTER.SET_OPACITY_START_VARIANCE";l.SET_PAUSED="PARTICLE_EMITTER.SET_PAUSED";l.SET_POSITION="PARTICLE_EMITTER.SET_POSITION";l.SET_POSITION_VARIANCE="PARTICLE_EMITTER.SET_POSITION_VARIANCE";l.SET_RATE="PARTICLE_EMITTER.SET_RATE";l.SET_RATE_VARIANCE="PARTICLE_EMITTER.SET_RATE_VARIANCE";l.SET_SIZE_END="PARTICLE_EMITTER.SET_SIZE_END";l.SET_SIZE_END_VARIANCE="PARTICLE_EMITTER.SET_SIZE_END_VARIANCE";l.SET_SIZE_START="PARTICLE_EMITTER.SET_SIZE_START";l.SET_SIZE_START_VARIANCE="PARTICLE_EMITTER.SET_SIZE_START_VARIANCE";l.SET_TEXTURE_URI="PARTICLE_EMITTER.SET_TEXTURE_URI";l.SET_TRANSPARENT="PARTICLE_EMITTER.SET_TRANSPARENT";l.SET_VELOCITY="PARTICLE_EMITTER.SET_VELOCITY";l.SET_VELOCITY_VARIANCE="PARTICLE_EMITTER.SET_VELOCITY_VARIANCE";l.SPAWN="PARTICLE_EMITTER.SPAWN"})(To||={});class So extends BQ{_id;_alphaTest;_attachedToEntity;_attachedToEntityNodeName;_colorEnd;_colorEndVariance;_colorIntensityEnd;_colorIntensityEndVariance;_colorIntensityStart;_colorIntensityStartVariance;_colorStart;_colorStartVariance;_gravity;_lifetime;_lifetimeVariance;_lockToEmitter;_maxParticles;_offset;_orientation;_orientationFixedRotation;_opacityEnd;_opacityEndVariance;_opacityStart;_opacityStartVariance;_paused;_position;_positionVariance;_rate;_rateVariance;_sizeEnd;_sizeEndVariance;_sizeStart;_sizeStartVariance;_sizeVariance;_textureUri;_transparent;_velocity;_velocityVariance;_world;constructor(A){if(!!A.attachedToEntity===!!A.position)n.fatalError("Either attachedToEntity or position must be set, but not both.");if(!A.textureUri)n.fatalError("ParticleEmitter.constructor(): textureUri must be provided.");super();this._alphaTest=A.alphaTest??0.05,this._attachedToEntity=A.attachedToEntity,this._attachedToEntityNodeName=A.attachedToEntityNodeName,this._colorEnd=A.colorEnd,this._colorEndVariance=A.colorEndVariance,this._colorIntensityEnd=A.colorIntensityEnd,this._colorIntensityEndVariance=A.colorIntensityEndVariance,this._colorIntensityStart=A.colorIntensityStart,this._colorIntensityStartVariance=A.colorIntensityStartVariance,this._colorStart=A.colorStart,this._colorStartVariance=A.colorStartVariance,this._gravity=A.gravity,this._lifetime=A.lifetime,this._lifetimeVariance=A.lifetimeVariance,this._lockToEmitter=A.lockToEmitter??!1,this._maxParticles=A.maxParticles,this._offset=A.offset,this._orientation=A.orientation,this._orientationFixedRotation=A.orientationFixedRotation,this._opacityEnd=A.opacityEnd,this._opacityEndVariance=A.opacityEndVariance,this._opacityStart=A.opacityStart,this._opacityStartVariance=A.opacityStartVariance,this._paused=!1,this._position=A.position,this._positionVariance=A.positionVariance,this._rate=A.rate,this._rateVariance=A.rateVariance,this._sizeEnd=A.sizeEnd,this._sizeEndVariance=A.sizeEndVariance,this._sizeStart=A.sizeStart,this._sizeStartVariance=A.sizeStartVariance,this._textureUri=A.textureUri,this._transparent=A.transparent,this._velocity=A.velocity,this._velocityVariance=A.velocityVariance}get id(){return this._id}get alphaTest(){return this._alphaTest}get attachedToEntity(){return this._attachedToEntity}get attachedToEntityNodeName(){return this._attachedToEntityNodeName}get colorEnd(){return this._colorEnd}get colorEndVariance(){return this._colorEndVariance}get colorIntensityEnd(){return this._colorIntensityEnd}get colorIntensityEndVariance(){return this._colorIntensityEndVariance}get colorIntensityStart(){return this._colorIntensityStart}get colorIntensityStartVariance(){return this._colorIntensityStartVariance}get colorStart(){return this._colorStart}get colorStartVariance(){return this._colorStartVariance}get gravity(){return this._gravity}get isSpawned(){return this._id!==void 0}get lifetime(){return this._lifetime}get lifetimeVariance(){return this._lifetimeVariance}get lockToEmitter(){return this._lockToEmitter}get maxParticles(){return this._maxParticles}get offset(){return this._offset}get orientation(){return this._orientation}get orientationFixedRotation(){return this._orientationFixedRotation}get opacityEnd(){return this._opacityEnd}get opacityEndVariance(){return this._opacityEndVariance}get opacityStart(){return this._opacityStart}get opacityStartVariance(){return this._opacityStartVariance}get paused(){return this._paused}get position(){return this._position}get positionVariance(){return this._positionVariance}get rate(){return this._rate}get rateVariance(){return this._rateVariance}get sizeEnd(){return this._sizeEnd}get sizeEndVariance(){return this._sizeEndVariance}get sizeStart(){return this._sizeStart}get sizeStartVariance(){return this._sizeStartVariance}get sizeVariance(){return this._sizeVariance}get textureUri(){return this._textureUri}get transparent(){return this._transparent}get velocity(){return this._velocity}get velocityVariance(){return this._velocityVariance}get world(){return this._world}setAlphaTest(A){if(this._alphaTest===A)return;if(this._alphaTest=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_ALPHA_TEST",{particleEmitter:this,alphaTest:A})}setAttachedToEntity(A){if(!A.isSpawned)return n.error(`ParticleEmitter.setAttachedToEntity(): Entity ${A.id} is not spawned!`);if(this._attachedToEntity===A)return;if(this._attachedToEntity=A,this._position=void 0,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY",{particleEmitter:this,entity:A})}setAttachedToEntityNodeName(A){if(this._attachedToEntityNodeName===A)return;if(this._attachedToEntityNodeName=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY_NODE_NAME",{particleEmitter:this,attachedToEntityNodeName:A})}setColorEnd(A){if(this._colorEnd&&this._colorEnd.r===A.r&&this._colorEnd.g===A.g&&this._colorEnd.b===A.b)return;if(this._colorEnd=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_END",{particleEmitter:this,colorEnd:A})}setColorEndVariance(A){if(this._colorEndVariance&&this._colorEndVariance.r===A.r&&this._colorEndVariance.g===A.g&&this._colorEndVariance.b===A.b)return;if(this._colorEndVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_END_VARIANCE",{particleEmitter:this,colorEndVariance:A})}setColorIntensityEnd(A){if(this._colorIntensityEnd===A)return;if(this._colorIntensityEnd=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_INTENSITY_END",{particleEmitter:this,colorIntensityEnd:A})}setColorIntensityEndVariance(A){if(this._colorIntensityEndVariance===A)return;if(this._colorIntensityEndVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_INTENSITY_END_VARIANCE",{particleEmitter:this,colorIntensityEndVariance:A})}setColorIntensityStart(A){if(this._colorIntensityStart===A)return;if(this._colorIntensityStart=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_INTENSITY_START",{particleEmitter:this,colorIntensityStart:A})}setColorIntensityStartVariance(A){if(this._colorIntensityStartVariance===A)return;if(this._colorIntensityStartVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_INTENSITY_START_VARIANCE",{particleEmitter:this,colorIntensityStartVariance:A})}setColorStart(A){if(this._colorStart&&this._colorStart.r===A.r&&this._colorStart.g===A.g&&this._colorStart.b===A.b)return;if(this._colorStart=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_START",{particleEmitter:this,colorStart:A})}setColorStartVariance(A){if(this._colorStartVariance&&this._colorStartVariance.r===A.r&&this._colorStartVariance.g===A.g&&this._colorStartVariance.b===A.b)return;if(this._colorStartVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_START_VARIANCE",{particleEmitter:this,colorStartVariance:A})}setGravity(A){if(this._gravity&&this._gravity.x===A.x&&this._gravity.y===A.y&&this._gravity.z===A.z)return;if(this._gravity=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_GRAVITY",{particleEmitter:this,gravity:A})}setLifetime(A){if(this._lifetime===A)return;if(this._lifetime=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_LIFETIME",{particleEmitter:this,lifetime:A})}setLifetimeVariance(A){if(this._lifetimeVariance===A)return;if(this._lifetimeVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_LIFETIME_VARIANCE",{particleEmitter:this,lifetimeVariance:A})}setMaxParticles(A){if(this._maxParticles===A)return;if(this._maxParticles=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_MAX_PARTICLES",{particleEmitter:this,maxParticles:A})}setOffset(A){if(this._offset&&this._offset.x===A.x&&this._offset.y===A.y&&this._offset.z===A.z)return;if(this._offset=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_OFFSET",{particleEmitter:this,offset:A})}setOrientation(A){if(this._orientation===A)return;if(this._orientation=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_ORIENTATION",{particleEmitter:this,orientation:A})}setOrientationFixedRotation(A){if(this._orientationFixedRotation&&this._orientationFixedRotation.x===A.x&&this._orientationFixedRotation.y===A.y&&this._orientationFixedRotation.z===A.z)return;if(this._orientationFixedRotation=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_ORIENTATION_FIXED_ROTATION",{particleEmitter:this,orientationFixedRotation:A})}setOpacityEnd(A){if(this._opacityEnd===A)return;if(this._opacityEnd=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_OPACITY_END",{particleEmitter:this,opacityEnd:A})}setOpacityEndVariance(A){if(this._opacityEndVariance===A)return;if(this._opacityEndVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_OPACITY_END_VARIANCE",{particleEmitter:this,opacityEndVariance:A})}setOpacityStart(A){if(this._opacityStart===A)return;if(this._opacityStart=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_OPACITY_START",{particleEmitter:this,opacityStart:A})}setOpacityStartVariance(A){if(this._opacityStartVariance===A)return;if(this._opacityStartVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_OPACITY_START_VARIANCE",{particleEmitter:this,opacityStartVariance:A})}setPosition(A){if(this._position&&this._position.x===A.x&&this._position.y===A.y&&this._position.z===A.z)return;if(this._position=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_POSITION",{particleEmitter:this,position:A})}setPositionVariance(A){if(this._positionVariance&&this._positionVariance.x===A.x&&this._positionVariance.y===A.y&&this._positionVariance.z===A.z)return;if(this._positionVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_POSITION_VARIANCE",{particleEmitter:this,positionVariance:A})}setRate(A){if(this._rate===A)return;if(this._rate=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_RATE",{particleEmitter:this,rate:A})}setRateVariance(A){if(this._rateVariance===A)return;if(this._rateVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_RATE_VARIANCE",{particleEmitter:this,rateVariance:A})}setSizeEnd(A){if(this._sizeEnd===A)return;if(this._sizeEnd=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_SIZE_END",{particleEmitter:this,sizeEnd:A})}setSizeEndVariance(A){if(this._sizeEndVariance===A)return;if(this._sizeEndVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_SIZE_END_VARIANCE",{particleEmitter:this,sizeEndVariance:A})}setSizeStart(A){if(this._sizeStart===A)return;if(this._sizeStart=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_SIZE_START",{particleEmitter:this,sizeStart:A})}setSizeStartVariance(A){if(this._sizeStartVariance===A)return;if(this._sizeStartVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_SIZE_START_VARIANCE",{particleEmitter:this,sizeStartVariance:A})}setTextureUri(A){if(this._textureUri===A)return;if(this._textureUri=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_TEXTURE_URI",{particleEmitter:this,textureUri:A})}setTransparent(A){if(this._transparent===A)return;if(this._transparent=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_TRANSPARENT",{particleEmitter:this,transparent:A})}setVelocity(A){if(this._velocity&&this._velocity.x===A.x&&this._velocity.y===A.y&&this._velocity.z===A.z)return;if(this._velocity=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_VELOCITY",{particleEmitter:this,velocity:A})}setVelocityVariance(A){if(this._velocityVariance&&this._velocityVariance.x===A.x&&this._velocityVariance.y===A.y&&this._velocityVariance.z===A.z)return;if(this._velocityVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_VELOCITY_VARIANCE",{particleEmitter:this,velocityVariance:A})}burst(A){if(this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.BURST",{particleEmitter:this,count:A})}despawn(){if(!this.isSpawned||!this._world)return;this._world.particleEmitterManager.unregisterParticleEmitter(this),this.emitWithWorld(this._world,"PARTICLE_EMITTER.DESPAWN",{particleEmitter:this}),this._id=void 0,this._world=void 0}restart(){if(!this._paused)return;if(this._paused=!1,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_PAUSED",{particleEmitter:this,paused:this._paused})}stop(){if(this._paused)return;if(this._paused=!0,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_PAUSED",{particleEmitter:this,paused:this._paused})}spawn(A){if(this.isSpawned)return;if(this._attachedToEntity&&!this._attachedToEntity.isSpawned)return n.error(`ParticleEmitter.spawn(): Attached entity ${this._attachedToEntity.id} must be spawned before spawning ParticleEmitter!`);this._id=A.particleEmitterManager.registerParticleEmitter(this),this._world=A,this.emitWithWorld(A,"PARTICLE_EMITTER.SPAWN",{particleEmitter:this})}serialize(){return GQ.serializeParticleEmitter(this)}}var Jb0=30,Cb0=Math.round(rq/Jb0);class Dk{_outboundPerPlayerReliablePackets=new bB;_outboundSharedReliablePackets=[];_outboundSharedUnreliablePackets=[];_queuedAudioSyncs={broadcast:new bB,perPlayer:new bB};_queuedBlockSyncs={broadcast:new bB,perPlayer:new bB};_queuedBlockTypeSyncs={broadcast:new bB,perPlayer:new bB};_queuedChunkSyncs={broadcast:new bB,perPlayer:new bB};_queuedEntitySyncs={broadcast:new bB,perPlayer:new bB};_queuedParticleEmitterSyncs={broadcast:new bB,perPlayer:new bB};_queuedPlayerSyncs={broadcast:new bB,perPlayer:new bB};_queuedSceneUISyncs={broadcast:new bB,perPlayer:new bB};_queuedCameraSyncs={broadcast:void 0,perPlayer:new bB};_queuedChatMessagesSyncs={broadcast:void 0,perPlayer:new bB};_queuedDebugRaycastsSyncs={broadcast:void 0,perPlayer:new bB};_queuedDebugRenderSyncs={broadcast:void 0,perPlayer:new bB};_queuedNotificationPermissionRequestSyncs={broadcast:void 0,perPlayer:new bB};_queuedUISyncs={broadcast:void 0,perPlayer:new bB};_queuedUIDatasSyncs={broadcast:void 0,perPlayer:new bB};_queuedWorldSyncs={broadcast:void 0,perPlayer:new bB};_loadedSceneUIs=new Set;_spawnedChunks=new Set;_spawnedEntities=new Set;_world;constructor(A){this._world=A,this._subscribeToAudioEvents(),this._subscribeToBlockTypeRegistryEvents(),this._subscribeToChatEvents(),this._subscribeToChunkLatticeEvents(),this._subscribeToEntityEvents(),this._subscribeToEntityModelAnimationEvents(),this._subscribeToEntityModelNodeOverrideEvents(),this._subscribeToParticleEmitterEvents(),this._subscribeToPlayerEvents(),this._subscribeToPlayerCameraEvents(),this._subscribeToPlayerUIEvents(),this._subscribeToSceneUIEvents(),this._subscribeToSimulationEvents(),this._subscribeToWorldEvents()}shouldSynchronize(){return this._world.loop.currentTick%Cb0===0}synchronize(){let A=this._world.loop.currentTick;if(this._queuedEntitySyncs.broadcast.size>0){let Q=[],B=[];for(let Y of this._queuedEntitySyncs.broadcast.valuesArray){let J=!1;for(let C in Y)if(J=C!=="i"&&C!=="p"&&C!=="r",J)break;(J?Q:B).push(Y)}if(B.length>0){let Y=hQ.createPacket(hQ.outboundPackets.entitiesPacketDefinition,B,A);this._outboundSharedUnreliablePackets.push(Y)}if(Q.length>0){let Y=hQ.createPacket(hQ.outboundPackets.entitiesPacketDefinition,Q,A);this._outboundSharedReliablePackets.push(Y);for(let J of this._outboundPerPlayerReliablePackets.valuesArray)J.push(Y)}}if(this._queuedEntitySyncs.perPlayer.size>0)for(let[Q,B]of this._queuedEntitySyncs.perPlayer.entries())this._outboundPerPlayerReliablePackets.get(Q)?.push(hQ.createPacket(hQ.outboundPackets.entitiesPacketDefinition,B.valuesArray,A));this._collectSingletonSyncToOutboundPackets(this._queuedCameraSyncs,hQ.outboundPackets.cameraPacketDefinition),this._collectSyncToOutboundPackets(this._queuedAudioSyncs,hQ.outboundPackets.audiosPacketDefinition),this._collectSyncToOutboundPackets(this._queuedBlockTypeSyncs,hQ.outboundPackets.blockTypesPacketDefinition),this._collectSyncToOutboundPackets(this._queuedChunkSyncs,hQ.outboundPackets.chunksPacketDefinition),this._collectSyncToOutboundPackets(this._queuedBlockSyncs,hQ.outboundPackets.blocksPacketDefinition),this._collectSyncToOutboundPackets(this._queuedParticleEmitterSyncs,hQ.outboundPackets.particleEmittersPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedUISyncs,hQ.outboundPackets.uiPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedUIDatasSyncs,hQ.outboundPackets.uiDatasPacketDefinition),this._collectSyncToOutboundPackets(this._queuedSceneUISyncs,hQ.outboundPackets.sceneUIsPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedWorldSyncs,hQ.outboundPackets.worldPacketDefinition),this._collectSyncToOutboundPackets(this._queuedPlayerSyncs,hQ.outboundPackets.playersPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedChatMessagesSyncs,hQ.outboundPackets.chatMessagesPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedNotificationPermissionRequestSyncs,hQ.outboundPackets.notificationPermissionRequestPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedDebugRenderSyncs,hQ.outboundPackets.physicsDebugRenderPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedDebugRaycastsSyncs,hQ.outboundPackets.physicsDebugRaycastsPacketDefinition),o0.startSpan({operation:"send_all_packets"},()=>{for(let Q of e9.instance.getConnectedPlayersByWorld(this._world)){let B=this._outboundPerPlayerReliablePackets.get(Q)??this._outboundSharedReliablePackets;if(B.length>0)Q.connection.send(B);if(this._outboundSharedUnreliablePackets.length>0)Q.connection.send(this._outboundSharedUnreliablePackets,!1)}}),o0.startSpan({operation:"network_synchronize_cleanup"},()=>{if(this._outboundPerPlayerReliablePackets.size>0)this._outboundPerPlayerReliablePackets.clear();if(this._outboundSharedReliablePackets.length>0)this._outboundSharedReliablePackets.length=0;if(this._outboundSharedUnreliablePackets.length>0)this._outboundSharedUnreliablePackets.length=0;if(this._loadedSceneUIs.size>0)this._loadedSceneUIs.clear();if(this._spawnedChunks.size>0)this._spawnedChunks.clear();if(this._spawnedEntities.size>0)this._spawnedEntities.clear();this._clearSyncQueue(this._queuedAudioSyncs),this._clearSyncQueue(this._queuedBlockSyncs),this._clearSyncQueue(this._queuedBlockTypeSyncs),this._clearSyncQueue(this._queuedChunkSyncs),this._clearSyncQueue(this._queuedEntitySyncs),this._clearSyncQueue(this._queuedParticleEmitterSyncs),this._clearSyncQueue(this._queuedPlayerSyncs),this._clearSyncQueue(this._queuedSceneUISyncs),this._clearSingletonSyncQueue(this._queuedCameraSyncs),this._clearSingletonSyncQueue(this._queuedChatMessagesSyncs),this._clearSingletonSyncQueue(this._queuedDebugRaycastsSyncs),this._clearSingletonSyncQueue(this._queuedDebugRenderSyncs),this._clearSingletonSyncQueue(this._queuedNotificationPermissionRequestSyncs),this._clearSingletonSyncQueue(this._queuedUISyncs),this._clearSingletonSyncQueue(this._queuedUIDatasSyncs),this._clearSingletonSyncQueue(this._queuedWorldSyncs),U1.clearCachedPacketsSerializedBuffers()})}_subscribeToAudioEvents(){this._world.final("AUDIO.PAUSE",this._onAudioPause),this._world.final("AUDIO.PLAY",this._onAudioPlay),this._world.final("AUDIO.PLAY_RESTART",this._onAudioPlayRestart),this._world.final("AUDIO.SET_ATTACHED_TO_ENTITY",this._onAudioSetAttachedToEntity),this._world.final("AUDIO.SET_CUTOFF_DISTANCE",this._onAudioSetCutoffDistance),this._world.final("AUDIO.SET_DETUNE",this._onAudioSetDetune),this._world.final("AUDIO.SET_DISTORTION",this._onAudioSetDistortion),this._world.final("AUDIO.SET_POSITION",this._onAudioSetPosition),this._world.final("AUDIO.SET_PLAYBACK_RATE",this._onAudioSetPlaybackRate),this._world.final("AUDIO.SET_REFERENCE_DISTANCE",this._onAudioSetReferenceDistance),this._world.final("AUDIO.SET_VOLUME",this._onAudioSetVolume)}_subscribeToBlockTypeRegistryEvents(){this._world.final("BLOCK_TYPE_REGISTRY.REGISTER_BLOCK_TYPE",this._onBlockTypeRegistryRegisterBlockType)}_subscribeToChatEvents(){this._world.final("CHAT.BROADCAST_MESSAGE",this._onChatSendBroadcastMessage),this._world.final("CHAT.PLAYER_MESSAGE",this._onChatSendPlayerMessage)}_subscribeToChunkLatticeEvents(){this._world.final("CHUNK_LATTICE.ADD_CHUNK",this._onChunkLatticeAddChunk),this._world.final("CHUNK_LATTICE.REMOVE_CHUNK",this._onChunkLatticeRemoveChunk),this._world.final("CHUNK_LATTICE.SET_BLOCK",this._onChunkLatticeSetBlock)}_subscribeToEntityEvents(){this._world.final("ENTITY.SPAWN",this._onEntitySpawn),this._world.final("ENTITY.DESPAWN",this._onEntityDespawn),this._world.final("ENTITY.REMOVE_MODEL_NODE_OVERRIDE",this._onEntityRemoveModelNodeOverride),this._world.final("ENTITY.SET_BLOCK_TEXTURE_URI",this._onEntitySetBlockTextureUri),this._world.final("ENTITY.SET_EMISSIVE_COLOR",this._onEntitySetEmissiveColor),this._world.final("ENTITY.SET_EMISSIVE_INTENSITY",this._onEntitySetEmissiveIntensity),this._world.final("ENTITY.SET_MODEL_SCALE",this._onEntitySetModelScale),this._world.final("ENTITY.SET_MODEL_SCALE_INTERPOLATION_MS",this._onEntitySetModelScaleInterpolationMs),this._world.final("ENTITY.SET_MODEL_TEXTURE_URI",this._onEntitySetModelTextureUri),this._world.final("ENTITY.SET_OPACITY",this._onEntitySetOpacity),this._world.final("ENTITY.SET_OUTLINE",this._onEntitySetOutline),this._world.final("ENTITY.SET_PARENT",this._onEntitySetParent),this._world.final("ENTITY.SET_POSITION_INTERPOLATION_MS",this._onEntitySetPositionInterpolationMs),this._world.final("ENTITY.SET_ROTATION_INTERPOLATION_MS",this._onEntitySetRotationInterpolationMs),this._world.final("ENTITY.SET_TINT_COLOR",this._onEntitySetTintColor),this._world.final("ENTITY.UPDATE_POSITION",this._onEntityUpdatePosition),this._world.final("ENTITY.UPDATE_ROTATION",this._onEntityUpdateRotation)}_subscribeToEntityModelAnimationEvents(){this._world.final("ENTITY_MODEL_ANIMATION.PAUSE",this._onEntityModelAnimationPause),this._world.final("ENTITY_MODEL_ANIMATION.PLAY",this._onEntityModelAnimationPlay),this._world.final("ENTITY_MODEL_ANIMATION.RESTART",this._onEntityModelAnimationRestart),this._world.final("ENTITY_MODEL_ANIMATION.SET_BLEND_MODE",this._onEntityModelAnimationSetBlendMode),this._world.final("ENTITY_MODEL_ANIMATION.SET_CLAMP_WHEN_FINISHED",this._onEntityModelAnimationSetClampWhenFinished),this._world.final("ENTITY_MODEL_ANIMATION.SET_FADES_IN",this._onEntityModelAnimationSetFadesIn),this._world.final("ENTITY_MODEL_ANIMATION.SET_FADES_OUT",this._onEntityModelAnimationSetFadesOut),this._world.final("ENTITY_MODEL_ANIMATION.SET_LOOP_MODE",this._onEntityModelAnimationSetLoopMode),this._world.final("ENTITY_MODEL_ANIMATION.SET_PLAYBACK_RATE",this._onEntityModelAnimationSetPlaybackRate),this._world.final("ENTITY_MODEL_ANIMATION.SET_WEIGHT",this._onEntityModelAnimationSetWeight),this._world.final("ENTITY_MODEL_ANIMATION.STOP",this._onEntityModelAnimationStop)}_subscribeToEntityModelNodeOverrideEvents(){this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_COLOR",this._onEntityModelNodeOverrideSetEmissiveColor),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_INTENSITY",this._onEntityModelNodeOverrideSetEmissiveIntensity),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_HIDDEN",this._onEntityModelNodeOverrideSetHidden),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION",this._onEntityModelNodeOverrideSetLocalPosition),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION_INTERPOLATION_MS",this._onEntityModelNodeOverrideSetLocalPositionInterpolationMs),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION",this._onEntityModelNodeOverrideSetLocalRotation),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION_INTERPOLATION_MS",this._onEntityModelNodeOverrideSetLocalRotationInterpolationMs),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE",this._onEntityModelNodeOverrideSetLocalScale),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE_INTERPOLATION_MS",this._onEntityModelNodeOverrideSetLocalScaleInterpolationMs)}_subscribeToParticleEmitterEvents(){this._world.final("PARTICLE_EMITTER.DESPAWN",this._onParticleEmitterDespawn),this._world.final("PARTICLE_EMITTER.BURST",this._onParticleEmitterBurst),this._world.final("PARTICLE_EMITTER.SET_ALPHA_TEST",this._onParticleEmitterSetAlphaTest),this._world.final("PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY",this._onParticleEmitterSetAttachedToEntity),this._world.final("PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY_NODE_NAME",this._onParticleEmitterSetAttachedToEntityNodeName),this._world.final("PARTICLE_EMITTER.SET_COLOR_END",this._onParticleEmitterSetColorEnd),this._world.final("PARTICLE_EMITTER.SET_COLOR_END_VARIANCE",this._onParticleEmitterSetColorEndVariance),this._world.final("PARTICLE_EMITTER.SET_COLOR_INTENSITY_END",this._onParticleEmitterSetColorIntensityEnd),this._world.final("PARTICLE_EMITTER.SET_COLOR_INTENSITY_END_VARIANCE",this._onParticleEmitterSetColorIntensityEndVariance),this._world.final("PARTICLE_EMITTER.SET_COLOR_INTENSITY_START",this._onParticleEmitterSetColorIntensityStart),this._world.final("PARTICLE_EMITTER.SET_COLOR_INTENSITY_START_VARIANCE",this._onParticleEmitterSetColorIntensityStartVariance),this._world.final("PARTICLE_EMITTER.SET_COLOR_START",this._onParticleEmitterSetColorStart),this._world.final("PARTICLE_EMITTER.SET_COLOR_START_VARIANCE",this._onParticleEmitterSetColorStartVariance),this._world.final("PARTICLE_EMITTER.SET_GRAVITY",this._onParticleEmitterSetGravity),this._world.final("PARTICLE_EMITTER.SET_LIFETIME",this._onParticleEmitterSetLifetime),this._world.final("PARTICLE_EMITTER.SET_LIFETIME_VARIANCE",this._onParticleEmitterSetLifetimeVariance),this._world.final("PARTICLE_EMITTER.SET_MAX_PARTICLES",this._onParticleEmitterSetMaxParticles),this._world.final("PARTICLE_EMITTER.SET_OFFSET",this._onParticleEmitterSetOffset),this._world.final("PARTICLE_EMITTER.SET_OPACITY_END",this._onParticleEmitterSetOpacityEnd),this._world.final("PARTICLE_EMITTER.SET_OPACITY_END_VARIANCE",this._onParticleEmitterSetOpacityEndVariance),this._world.final("PARTICLE_EMITTER.SET_OPACITY_START",this._onParticleEmitterSetOpacityStart),this._world.final("PARTICLE_EMITTER.SET_OPACITY_START_VARIANCE",this._onParticleEmitterSetOpacityStartVariance),this._world.final("PARTICLE_EMITTER.SET_PAUSED",this._onParticleEmitterSetPaused),this._world.final("PARTICLE_EMITTER.SET_POSITION",this._onParticleEmitterSetPosition),this._world.final("PARTICLE_EMITTER.SET_POSITION_VARIANCE",this._onParticleEmitterSetPositionVariance),this._world.final("PARTICLE_EMITTER.SET_RATE",this._onParticleEmitterSetRate),this._world.final("PARTICLE_EMITTER.SET_RATE_VARIANCE",this._onParticleEmitterSetRateVariance),this._world.final("PARTICLE_EMITTER.SET_SIZE_END",this._onParticleEmitterSetSizeEnd),this._world.final("PARTICLE_EMITTER.SET_SIZE_END_VARIANCE",this._onParticleEmitterSetSizeEndVariance),this._world.final("PARTICLE_EMITTER.SET_SIZE_START",this._onParticleEmitterSetSizeStart),this._world.final("PARTICLE_EMITTER.SET_SIZE_START_VARIANCE",this._onParticleEmitterSetSizeStartVariance),this._world.final("PARTICLE_EMITTER.SET_TEXTURE_URI",this._onParticleEmitterSetTextureUri),this._world.final("PARTICLE_EMITTER.SET_TRANSPARENT",this._onParticleEmitterSetTransparent),this._world.final("PARTICLE_EMITTER.SET_VELOCITY",this._onParticleEmitterSetVelocity),this._world.final("PARTICLE_EMITTER.SET_VELOCITY_VARIANCE",this._onParticleEmitterSetVelocityVariance),this._world.final("PARTICLE_EMITTER.SPAWN",this._onParticleEmitterSpawn)}_subscribeToPlayerEvents(){this._world.final("PLAYER.JOINED_WORLD",this._onPlayerJoinedWorld),this._world.final("PLAYER.LEFT_WORLD",this._onPlayerLeftWorld),this._world.final("PLAYER.RECONNECTED_WORLD",this._onPlayerReconnectedWorld),this._world.final("PLAYER.REQUEST_NOTIFICATION_PERMISSION",this._onPlayerRequestNotificationPermission),this._world.final("PLAYER.REQUEST_SYNC",this._onPlayerRequestSync)}_subscribeToPlayerCameraEvents(){this._world.final("PLAYER_CAMERA.FACE_ENTITY",this._onPlayerCameraFaceEntity),this._world.final("PLAYER_CAMERA.FACE_POSITION",this._onPlayerCameraFacePosition),this._world.final("PLAYER_CAMERA.SET_ATTACHED_TO_ENTITY",this._onPlayerCameraSetAttachedToEntity),this._world.final("PLAYER_CAMERA.SET_ATTACHED_TO_POSITION",this._onPlayerCameraSetAttachedToPosition),this._world.final("PLAYER_CAMERA.SET_COLLIDES_WITH_BLOCKS",this._onPlayerCameraSetCollidesWithBlocks),this._world.final("PLAYER_CAMERA.SET_FILM_OFFSET",this._onPlayerCameraSetFilmOffset),this._world.final("PLAYER_CAMERA.SET_FORWARD_OFFSET",this._onPlayerCameraSetForwardOffset),this._world.final("PLAYER_CAMERA.SET_FOV",this._onPlayerCameraSetFov),this._world.final("PLAYER_CAMERA.SET_MODE",this._onPlayerCameraSetMode),this._world.final("PLAYER_CAMERA.SET_OFFSET",this._onPlayerCameraSetOffset),this._world.final("PLAYER_CAMERA.SET_SHOULDER_ANGLE",this._onPlayerCameraSetShoulderAngle),this._world.final("PLAYER_CAMERA.SET_TARGET_ENTITY",this._onPlayerCameraSetTargetEntity),this._world.final("PLAYER_CAMERA.SET_TARGET_POSITION",this._onPlayerCameraSetTargetPosition),this._world.final("PLAYER_CAMERA.SET_VIEW_MODEL",this._onPlayerCameraSetViewModel),this._world.final("PLAYER_CAMERA.SET_VIEW_MODEL_HIDDEN_NODES",this._onPlayerCameraSetViewModelHiddenNodes),this._world.final("PLAYER_CAMERA.SET_VIEW_MODEL_PITCHES_WITH_CAMERA",this._onPlayerCameraSetViewModelPitchesWithCamera),this._world.final("PLAYER_CAMERA.SET_VIEW_MODEL_SHOWN_NODES",this._onPlayerCameraSetViewModelShownNodes),this._world.final("PLAYER_CAMERA.SET_VIEW_MODEL_YAWS_WITH_CAMERA",this._onPlayerCameraSetViewModelYawsWithCamera),this._world.final("PLAYER_CAMERA.SET_ZOOM",this._onPlayerCameraSetZoom)}_subscribeToPlayerUIEvents(){this._world.final("PLAYER_UI.APPEND",this._onPlayerUIAppend),this._world.final("PLAYER_UI.FREEZE_POINTER_LOCK",this._onPlayerUIFreezePointerLock),this._world.final("PLAYER_UI.LOAD",this._onPlayerUILoad),this._world.final("PLAYER_UI.LOCK_POINTER",this._onPlayerUILockPointer),this._world.final("PLAYER_UI.SEND_DATA",this._onPlayerUISendData)}_subscribeToSceneUIEvents(){this._world.final("SCENE_UI.LOAD",this._onSceneUILoad),this._world.final("SCENE_UI.SET_ATTACHED_TO_ENTITY",this._onSceneUISetAttachedToEntity),this._world.final("SCENE_UI.SET_OFFSET",this._onSceneUISetOffset),this._world.final("SCENE_UI.SET_POSITION",this._onSceneUISetPosition),this._world.final("SCENE_UI.SET_STATE",this._onSceneUISetState),this._world.final("SCENE_UI.SET_VIEW_DISTANCE",this._onSceneUISetViewDistance),this._world.final("SCENE_UI.UNLOAD",this._onSceneUIUnload)}_subscribeToSimulationEvents(){this._world.final("SIMULATION.DEBUG_RAYCAST",this._onSimulationDebugRaycast),this._world.final("SIMULATION.DEBUG_RENDER",this._onSimulationDebugRender)}_subscribeToWorldEvents(){this._world.final("WORLD.SET_AMBIENT_LIGHT_COLOR",this._onWorldSetAmbientLightColor),this._world.final("WORLD.SET_AMBIENT_LIGHT_INTENSITY",this._onWorldSetAmbientLightIntensity),this._world.final("WORLD.SET_DIRECTIONAL_LIGHT_COLOR",this._onWorldSetDirectionalLightColor),this._world.final("WORLD.SET_DIRECTIONAL_LIGHT_INTENSITY",this._onWorldSetDirectionalLightIntensity),this._world.final("WORLD.SET_DIRECTIONAL_LIGHT_POSITION",this._onWorldSetDirectionalLightPosition),this._world.final("WORLD.SET_FOG_COLOR",this._onWorldSetFogColor),this._world.final("WORLD.SET_FOG_FAR",this._onWorldSetFogFar),this._world.final("WORLD.SET_FOG_NEAR",this._onWorldSetFogNear),this._world.final("WORLD.SET_SKYBOX_INTENSITY",this._onWorldSetSkyboxIntensity),this._world.final("WORLD.SET_SKYBOX_URI",this._onWorldSetSkyboxUri)}_onAudioPause=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.pa=!0,delete Q.pl,delete Q.r};_onAudioPlay=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Object.assign(Q,A.audio.serialize()),Q.pl=!0,delete Q.pa,delete Q.r};_onAudioPlayRestart=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Object.assign(Q,A.audio.serialize()),Q.r=!0,delete Q.pa,delete Q.pl};_onAudioSetAttachedToEntity=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.e=A.entity?A.entity.id:void 0,Q.p=A.entity?void 0:Q.p};_onAudioSetCutoffDistance=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.cd=A.cutoffDistance};_onAudioSetDetune=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.de=A.detune};_onAudioSetDistortion=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.di=A.distortion};_onAudioSetPosition=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.e=A.position?void 0:Q.e,Q.p=A.position?GQ.serializeVector(A.position):void 0};_onAudioSetPlaybackRate=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.pr=A.playbackRate};_onAudioSetReferenceDistance=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.rd=A.referenceDistance};_onAudioSetVolume=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.v=A.volume};_onBlockTypeRegistryRegisterBlockType=(A)=>{let Q=this._createOrGetQueuedBlockTypeSync(A.blockType);Object.assign(Q,A.blockType.serialize())};_onChatSendBroadcastMessage=(A)=>{this._createOrGetQueuedChatMessagesSync().push({m:A.message,c:A.color,p:A.player?.id})};_onChatSendPlayerMessage=(A)=>{this._createOrGetQueuedChatMessagesSync(A.player).push({m:A.message,c:A.color})};_onChunkLatticeAddChunk=(A)=>{let Q=this._createOrGetQueuedChunkSync(A.chunk);Object.assign(Q,A.chunk.serialize()),Q.rm=void 0,this._spawnedChunks.add(Q.c.join(","))};_onChunkLatticeRemoveChunk=(A)=>{let Q=this._createOrGetQueuedChunkSync(A.chunk),B=Q.c.join(",");if(this._spawnedChunks.has(B))this._queuedChunkSyncs.broadcast.delete(B),this._spawnedChunks.delete(B);else Q.rm=!0};_onChunkLatticeSetBlock=(A)=>{let Q=this._createOrGetQueuedBlockSync(A.globalCoordinate);Q.i=A.blockTypeId,Q.r=A.blockRotation?.enumIndex};_onEntitySpawn=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Object.assign(Q,A.entity.serialize()),this._spawnedEntities.add(Q.i)};_onEntityDespawn=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);if(this._spawnedEntities.has(Q.i))this._queuedEntitySyncs.broadcast.delete(Q.i),this._spawnedEntities.delete(Q.i);else Q.rm=!0};_onEntityRemoveModelNodeOverride=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.rm=!0};_onEntitySetBlockTextureUri=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.bt=A.blockTextureUri};_onEntitySetEmissiveColor=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.ec=A.emissiveColor?GQ.serializeRgbColor(A.emissiveColor):void 0};_onEntitySetEmissiveIntensity=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.ei=A.emissiveIntensity};_onEntitySetModelScale=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.sv=A.modelScale?GQ.serializeVector(A.modelScale):void 0};_onEntitySetModelScaleInterpolationMs=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.si=A.interpolationMs};_onEntitySetModelTextureUri=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.mt=A.modelTextureUri};_onEntitySetOpacity=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.o=A.opacity};_onEntitySetOutline=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity,A.forPlayer);Q.ol=A.outline?GQ.serializeOutline(A.outline):void 0};_onEntitySetParent=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.pe=A.parent?A.parent.id:void 0,Q.pn=A.parentNodeName};_onEntitySetPositionInterpolationMs=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.pi=A.interpolationMs};_onEntitySetRotationInterpolationMs=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.ri=A.interpolationMs};_onEntitySetTintColor=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.t=A.tintColor?GQ.serializeRgbColor(A.tintColor):void 0};_onEntityUpdatePosition=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.p=[A.position.x,A.position.y,A.position.z]};_onEntityUpdateRotation=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.r=[A.rotation.x,A.rotation.y,A.rotation.z,A.rotation.w]};_onEntityModelAnimationPause=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.pa=!0,delete Q.p,delete Q.r,delete Q.s};_onEntityModelAnimationPlay=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.p=!0,delete Q.pa,delete Q.r,delete Q.s};_onEntityModelAnimationRestart=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.r=!0,delete Q.pa,delete Q.p,delete Q.s};_onEntityModelAnimationSetBlendMode=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.b=A.blendMode};_onEntityModelAnimationSetClampWhenFinished=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.c=A.clampWhenFinished};_onEntityModelAnimationSetFadesIn=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.fi=A.fadesIn};_onEntityModelAnimationSetFadesOut=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.fo=A.fadesOut};_onEntityModelAnimationSetLoopMode=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.l=A.loopMode};_onEntityModelAnimationSetPlaybackRate=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.pr=A.playbackRate};_onEntityModelAnimationSetWeight=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.w=A.weight};_onEntityModelAnimationStop=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.s=!0,delete Q.p,delete Q.pa,delete Q.r};_onEntityModelNodeOverrideSetEmissiveColor=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.ec=A.emissiveColor?GQ.serializeRgbColor(A.emissiveColor):void 0,delete Q.rm};_onEntityModelNodeOverrideSetEmissiveIntensity=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.ei=A.emissiveIntensity,delete Q.rm};_onEntityModelNodeOverrideSetHidden=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.h=A.hidden,delete Q.rm};_onEntityModelNodeOverrideSetLocalPosition=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.p=A.localPosition?GQ.serializeVector(A.localPosition):void 0,delete Q.rm};_onEntityModelNodeOverrideSetLocalPositionInterpolationMs=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.pi=A.interpolationMs,delete Q.rm};_onEntityModelNodeOverrideSetLocalRotation=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.r=A.localRotation?GQ.serializeQuaternion(A.localRotation):void 0,delete Q.rm};_onEntityModelNodeOverrideSetLocalRotationInterpolationMs=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.ri=A.interpolationMs,delete Q.rm};_onEntityModelNodeOverrideSetLocalScale=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.s=A.localScale?GQ.serializeVector(A.localScale):void 0,delete Q.rm};_onEntityModelNodeOverrideSetLocalScaleInterpolationMs=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.si=A.interpolationMs,delete Q.rm};_onParticleEmitterBurst=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.b=A.count};_onParticleEmitterDespawn=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.rm=!0};_onParticleEmitterSetAlphaTest=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.at=A.alphaTest};_onParticleEmitterSetAttachedToEntity=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.e=A.entity?A.entity.id:void 0,Q.p=A.entity?void 0:Q.p};_onParticleEmitterSetAttachedToEntityNodeName=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.en=A.attachedToEntityNodeName};_onParticleEmitterSetColorEnd=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.ce=A.colorEnd?GQ.serializeRgbColor(A.colorEnd):void 0};_onParticleEmitterSetColorEndVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.cev=A.colorEndVariance?GQ.serializeRgbColor(A.colorEndVariance):void 0};_onParticleEmitterSetColorIntensityEnd=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.cie=A.colorIntensityEnd};_onParticleEmitterSetColorIntensityEndVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.ciev=A.colorIntensityEndVariance};_onParticleEmitterSetColorIntensityStart=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.cis=A.colorIntensityStart};_onParticleEmitterSetColorIntensityStartVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.cisv=A.colorIntensityStartVariance};_onParticleEmitterSetColorStart=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.cs=A.colorStart?GQ.serializeRgbColor(A.colorStart):void 0};_onParticleEmitterSetColorStartVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.csv=A.colorStartVariance?GQ.serializeRgbColor(A.colorStartVariance):void 0};_onParticleEmitterSetGravity=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.g=A.gravity?GQ.serializeVector(A.gravity):void 0};_onParticleEmitterSetLifetime=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.l=A.lifetime};_onParticleEmitterSetLifetimeVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.lv=A.lifetimeVariance};_onParticleEmitterSetMaxParticles=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.mp=A.maxParticles};_onParticleEmitterSetOffset=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.o=A.offset?GQ.serializeVector(A.offset):void 0};_onParticleEmitterSetOpacityEnd=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.oe=A.opacityEnd};_onParticleEmitterSetOpacityEndVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.oev=A.opacityEndVariance};_onParticleEmitterSetOpacityStart=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.os=A.opacityStart};_onParticleEmitterSetOpacityStartVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.osv=A.opacityStartVariance};_onParticleEmitterSetPaused=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.pa=A.paused};_onParticleEmitterSetPosition=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.p=A.position?GQ.serializeVector(A.position):void 0,Q.e=A.position?void 0:Q.e,Q.en=A.position?void 0:Q.en};_onParticleEmitterSetPositionVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.pv=A.positionVariance?GQ.serializeVector(A.positionVariance):void 0};_onParticleEmitterSetRate=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.r=A.rate};_onParticleEmitterSetRateVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.rv=A.rateVariance};_onParticleEmitterSetSizeEnd=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.se=A.sizeEnd};_onParticleEmitterSetSizeEndVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.sev=A.sizeEndVariance};_onParticleEmitterSetSizeStart=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.ss=A.sizeStart};_onParticleEmitterSetSizeStartVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.ssv=A.sizeStartVariance};_onParticleEmitterSetTextureUri=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.tu=A.textureUri};_onParticleEmitterSetTransparent=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.t=A.transparent};_onParticleEmitterSetVelocity=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.v=A.velocity?GQ.serializeVector(A.velocity):void 0};_onParticleEmitterSetVelocityVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.vv=A.velocityVariance?GQ.serializeVector(A.velocityVariance):void 0};_onParticleEmitterSpawn=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Object.assign(Q,A.particleEmitter.serialize())};_onPlayerCameraFaceEntity=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.pl=GQ.serializeVector(A.entity.position),delete Q.et,delete Q.pt};_onPlayerCameraFacePosition=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.pl=A.position?GQ.serializeVector(A.position):void 0,delete Q.et,delete Q.pt};_onPlayerCameraSetAttachedToEntity=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.e=A.entity.id,delete Q.p,this._syncPlayerCameraAttachedEntityModel(A.playerCamera)};_onPlayerCameraSetAttachedToPosition=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.p=A.position?GQ.serializeVector(A.position):void 0,delete Q.e};_onPlayerCameraSetCollidesWithBlocks=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.cb=A.collidesWithBlocks};_onPlayerCameraSetFilmOffset=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.fo=A.filmOffset};_onPlayerCameraSetForwardOffset=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.ffo=A.forwardOffset};_onPlayerCameraSetFov=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.fv=A.fov};_onPlayerCameraSetMode=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.m=A.mode,this._syncPlayerCameraAttachedEntityModel(A.playerCamera)};_onPlayerCameraSetOffset=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.o=A.offset?GQ.serializeVector(A.offset):void 0};_onPlayerCameraSetShoulderAngle=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.sa=A.shoulderAngle};_onPlayerCameraSetTargetEntity=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.et=A.entity?A.entity.id:void 0,delete Q.pl,delete Q.pt};_onPlayerCameraSetTargetPosition=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.pt=A.position?GQ.serializeVector(A.position):void 0,delete Q.et,delete Q.pl};_onPlayerCameraSetZoom=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.z=A.zoom};_onPlayerCameraSetViewModel=(A)=>{this._syncPlayerCameraAttachedEntityModel(A.playerCamera)};_onPlayerCameraSetViewModelHiddenNodes=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.h=Array.from(A.viewModelHiddenNodes)};_onPlayerCameraSetViewModelPitchesWithCamera=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.mp=A.viewModelPitchesWithCamera};_onPlayerCameraSetViewModelShownNodes=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.s=Array.from(A.viewModelShownNodes)};_onPlayerCameraSetViewModelYawsWithCamera=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.my=A.viewModelYawsWithCamera};_onPlayerJoinedWorld=(A)=>{let{player:Q}=A;for(let C of this._world.audioManager.getAllAudios()){let X=this._createOrGetQueuedAudioSync(C,Q);this._assignUndefined(X,C.serialize())}for(let C of this._world.blockTypeRegistry.getAllBlockTypes()){let X=this._createOrGetQueuedBlockTypeSync(C,Q);this._assignUndefined(X,C.serialize())}let B=this._createOrGetQueuedCameraSync(Q);this._assignUndefined(B,Q.camera.serialize());for(let C of this._world.chunkLattice.getAllChunks()){let X=this._createOrGetQueuedChunkSync(C,Q);this._assignUndefined(X,C.serialize())}for(let C of this._world.entityManager.getAllEntities()){if(Q.camera.attachedToEntity===void 0&&C instanceof n1&&C.player===Q)Q.camera.setAttachedToEntity(C);let X=this._createOrGetQueuedEntitySync(C,Q);this._assignUndefined(X,C.serialize())}this._syncPlayerCameraAttachedEntityModel(Q.camera);for(let C of this._world.particleEmitterManager.getAllParticleEmitters()){let X=this._createOrGetQueuedParticleEmitterSync(C,Q);this._assignUndefined(X,C.serialize())}for(let C of e9.instance.getConnectedPlayers()){let X=this._createOrGetQueuedPlayerSync(C,Q);this._assignUndefined(X,C.serialize())}for(let C of this._world.sceneUIManager.getAllSceneUIs()){let X=this._createOrGetQueuedSceneUISync(C,Q);this._assignUndefined(X,C.serialize())}let Y=this._createOrGetQueuedWorldSync(this._world,Q);this._assignUndefined(Y,this._world.serialize());let J=this._createOrGetQueuedPlayerSync(Q);this._assignUndefined(J,Q.serialize())};_onPlayerLeftWorld=(A)=>{let Q=this._createOrGetQueuedPlayerSync(A.player);Q.rm=!0};_onPlayerReconnectedWorld=(A)=>{this._onPlayerJoinedWorld(A)};_onPlayerRequestNotificationPermission=(A)=>{this._createOrGetQueuedNotificationPermissionRequestSync(A.player)};_onPlayerRequestSync=(A)=>{A.player.connection.send([hQ.createPacket(hQ.outboundPackets.syncResponsePacketDefinition,{r:A.receivedAt,s:Date.now(),p:performance.now()-A.receivedAtMs,n:this._world.loop.nextTickMs},this._world.loop.currentTick)])};_onPlayerUIAppend=(A)=>{let Q=this._createOrGetQueuedUISync(A.playerUI.player);Q.ua??=[],Q.ua.push(A.htmlUri)};_onPlayerUIFreezePointerLock=(A)=>{let Q=this._createOrGetQueuedUISync(A.playerUI.player);Q.pf=A.freeze};_onPlayerUILoad=(A)=>{let Q=this._createOrGetQueuedUISync(A.playerUI.player);Q.u=A.htmlUri};_onPlayerUILockPointer=(A)=>{let Q=this._createOrGetQueuedUISync(A.playerUI.player);Q.p=A.lock};_onPlayerUISendData=(A)=>{this._createOrGetQueuedUIDatasSync(A.playerUI.player).push(A.data)};_onSceneUILoad=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);Object.assign(Q,A.sceneUI.serialize()),this._loadedSceneUIs.add(Q.i)};_onSceneUISetAttachedToEntity=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);Q.e=A.entity?A.entity.id:void 0,Q.p=A.entity?void 0:Q.p};_onSceneUISetOffset=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);Q.o=A.offset?GQ.serializeVector(A.offset):void 0};_onSceneUISetPosition=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);Q.p=A.position?GQ.serializeVector(A.position):void 0,Q.e=A.position?void 0:Q.e};_onSceneUISetState=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);Q.s=A.state};_onSceneUISetViewDistance=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);Q.v=A.viewDistance};_onSceneUIUnload=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);if(this._loadedSceneUIs.has(Q.i))this._queuedSceneUISyncs.broadcast.delete(Q.i),this._loadedSceneUIs.delete(Q.i);else Q.rm=!0};_onSimulationDebugRaycast=(A)=>{this._createOrGetDebugRaycastsSync().push(GQ.serializePhysicsDebugRaycast(A))};_onSimulationDebugRender=(A)=>{let Q=this._createOrGetDebugRenderSync();Q.v=Array.from(A.vertices),Q.c=Array.from(A.colors)};_onWorldSetAmbientLightColor=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.ac=GQ.serializeRgbColor(A.color)};_onWorldSetAmbientLightIntensity=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.ai=A.intensity};_onWorldSetDirectionalLightColor=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.dc=GQ.serializeRgbColor(A.color)};_onWorldSetDirectionalLightIntensity=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.di=A.intensity};_onWorldSetDirectionalLightPosition=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.dp=GQ.serializeVector(A.position)};_onWorldSetFogColor=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.fc=GQ.serializeRgbColor(A.color)};_onWorldSetFogFar=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.ff=A.far};_onWorldSetFogNear=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.fn=A.near};_onWorldSetSkyboxIntensity=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.si=A.intensity};_onWorldSetSkyboxUri=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.s=A.uri};_assignUndefined(A,Q){for(let B in Q)if(A[B]===void 0)A[B]=Q[B];return A}_createAudioSync=(A)=>({i:A.id});_createOrGetQueuedAudioSync(A,Q){if(A.id===void 0)n.fatalError("NetworkSynchronizer._createOrGetQueuedAudioSync(): Audio has no id!");return this._createOrGetQueuedSync(this._queuedAudioSyncs,A.id,this._createAudioSync,A,Q)}_createBlockSync=(A)=>({i:0,c:[A.x,A.y,A.z]});_createOrGetQueuedBlockSync(A,Q){let B=`${A.x},${A.y},${A.z}`;return this._createOrGetQueuedSync(this._queuedBlockSyncs,B,this._createBlockSync,A,Q)}_createBlockTypeSync=(A)=>({i:A.id});_createOrGetQueuedBlockTypeSync(A,Q){return this._createOrGetQueuedSync(this._queuedBlockTypeSyncs,A.id,this._createBlockTypeSync,A,Q)}_createCameraSync=()=>({});_createOrGetQueuedCameraSync(A){return this._createOrGetQueuedSingletonSync(this._queuedCameraSyncs,this._createCameraSync,void 0,A)}_createChatMessagesSync=()=>[];_createOrGetQueuedChatMessagesSync(A){return this._createOrGetQueuedSingletonSync(this._queuedChatMessagesSyncs,this._createChatMessagesSync,void 0,A)}_createChunkSync=(A)=>({c:[A.originCoordinate.x,A.originCoordinate.y,A.originCoordinate.z]});_createOrGetQueuedChunkSync(A,Q){if(!A.originCoordinate)n.fatalError("NetworkSynchronizer._createOrGetQueuedChunkSync(): Chunk has no origin coordinate!");let B=`${A.originCoordinate.x},${A.originCoordinate.y},${A.originCoordinate.z}`;return this._createOrGetQueuedSync(this._queuedChunkSyncs,B,this._createChunkSync,A,Q)}_createDebugRaycastsSync=()=>[];_createOrGetDebugRaycastsSync(A){return this._createOrGetQueuedSingletonSync(this._queuedDebugRaycastsSyncs,this._createDebugRaycastsSync,void 0,A)}_createDebugRenderSync=()=>({v:[],c:[]});_createOrGetDebugRenderSync(A){return this._createOrGetQueuedSingletonSync(this._queuedDebugRenderSyncs,this._createDebugRenderSync,void 0,A)}_createEntitySync=(A)=>({i:A.id});_createOrGetQueuedEntitySync(A,Q){if(A.id===void 0)n.fatalError("NetworkSynchronizer._createOrGetQueuedEntitySync(): Entity has no id!");return this._createOrGetQueuedSync(this._queuedEntitySyncs,A.id,this._createEntitySync,A,Q)}_createEntityModelAnimationSync=(A)=>({n:A.name});_createOrGetQueuedEntityModelAnimationSync(A,Q){if(A.entity.id===void 0)n.fatalError("NetworkSynchronizer._createOrGetQueuedEntityModelAnimationSync(): EntityModelAnimation entity has no id!");let B=this._createOrGetQueuedEntitySync(A.entity,Q);B.ma??=[];let Y=B.ma.find((J)=>J.n===A.name);if(!Y)Y=this._createEntityModelAnimationSync(A),B.ma.push(Y);return Y}_createEntityModelNodeOverrideSync=(A)=>({n:A.nameMatch});_createOrGetQueuedEntityModelNodeOverrideSync(A,Q){if(A.entity.id===void 0)n.fatalError("NetworkSynchronizer._createOrGetQueuedEntityModelNodeOverrideSync(): EntityModelNodeOverride entity has no id!");let B=this._createOrGetQueuedEntitySync(A.entity,Q);B.mo??=[];let Y=B.mo.find((J)=>J.n===A.nameMatch);if(!Y)Y=this._createEntityModelNodeOverrideSync(A),B.mo.push(Y);return Y}_createNotificationPermissionRequestSync=()=>null;_createOrGetQueuedNotificationPermissionRequestSync(A){return this._createOrGetQueuedSingletonSync(this._queuedNotificationPermissionRequestSyncs,this._createNotificationPermissionRequestSync,void 0,A)}_createParticleEmitterSync=(A)=>({i:A.id});_createOrGetQueuedParticleEmitterSync(A,Q){if(A.id===void 0)n.fatalError("NetworkSynchronizer._createOrGetQueuedParticleEmitterSync(): ParticleEmitter has no id!");return this._createOrGetQueuedSync(this._queuedParticleEmitterSyncs,A.id,this._createParticleEmitterSync,A,Q)}_createPlayerSync=(A)=>({i:A.id});_createOrGetQueuedPlayerSync(A,Q){return this._createOrGetQueuedSync(this._queuedPlayerSyncs,A.id,this._createPlayerSync,A,Q)}_createSceneUISync=(A)=>({i:A.id});_createOrGetQueuedSceneUISync(A,Q){if(A.id===void 0)n.fatalError("NetworkSynchronizer._createOrGetQueuedSceneUISync(): SceneUI has no id!");return this._createOrGetQueuedSync(this._queuedSceneUISyncs,A.id,this._createSceneUISync,A,Q)}_createUISync=()=>({});_createOrGetQueuedUISync(A){return this._createOrGetQueuedSingletonSync(this._queuedUISyncs,this._createUISync,void 0,A)}_createUIDatasSync=()=>[];_createOrGetQueuedUIDatasSync(A){return this._createOrGetQueuedSingletonSync(this._queuedUIDatasSyncs,this._createUIDatasSync,void 0,A)}_createWorldSync=(A)=>({i:A.id});_createOrGetQueuedWorldSync(A,Q){if(A.id!==this._world.id)n.fatalError("NetworkSynchronizer._createOrGetQueuedWorldSync(): World does not match this network synchronizer world!");return this._createOrGetQueuedSingletonSync(this._queuedWorldSyncs,this._createWorldSync,A,Q)}_createOrGetQueuedSync(A,Q,B,Y,J){let C,X;if(J){if(X=A.perPlayer.get(J),!X)X=new bB,A.perPlayer.set(J,X);if(!this._outboundPerPlayerReliablePackets.has(J))this._outboundPerPlayerReliablePackets.set(J,[])}else X=A.broadcast;if(C=X.get(Q),C===void 0)C=B(Y),X.set(Q,C);return C}_createOrGetQueuedSingletonSync(A,Q,B,Y){let J=Y?A.perPlayer.get(Y):A.broadcast;if(J===void 0)if(J=Q(B),Y){if(A.perPlayer.set(Y,J),!this._outboundPerPlayerReliablePackets.has(Y))this._outboundPerPlayerReliablePackets.set(Y,[])}else A.broadcast=J;return J}_clearSyncQueue(A){if(A.broadcast.size>0)A.broadcast.clear();if(A.perPlayer.size>0)A.perPlayer.clear()}_clearSingletonSyncQueue(A){if(A.broadcast!==void 0)A.broadcast=void 0;if(A.perPlayer.size>0)A.perPlayer.clear()}_collectSingletonSyncToOutboundPackets(A,Q){if(A.broadcast!==void 0){let B=hQ.createPacket(Q,A.broadcast,this._world.loop.currentTick);this._outboundSharedReliablePackets.push(B);for(let Y of this._outboundPerPlayerReliablePackets.valuesArray)Y.push(B)}if(A.perPlayer.size>0)for(let[B,Y]of A.perPlayer.entries())this._outboundPerPlayerReliablePackets.get(B)?.push(hQ.createPacket(Q,Y,this._world.loop.currentTick))}_collectSyncToOutboundPackets(A,Q){if(A.broadcast.size>0){let B=hQ.createPacket(Q,A.broadcast.valuesArray,this._world.loop.currentTick);this._outboundSharedReliablePackets.push(B);for(let Y of this._outboundPerPlayerReliablePackets.valuesArray)Y.push(B)}if(A.perPlayer.size>0)for(let[B,Y]of A.perPlayer.entries())this._outboundPerPlayerReliablePackets.get(B)?.push(hQ.createPacket(Q,Y.valuesArray,this._world.loop.currentTick))}_syncPlayerCameraAttachedEntityModel(A){let Q=A.attachedToEntity,B=Q&&(A.mode===0?A.viewModelUri:Q.modelUri);if(Q&&B)this._createOrGetQueuedEntitySync(Q,A.player).m=B}}class oq{_particleEmitters=new Map;_nextParticleEmitterId=1;_world;constructor(A){this._world=A}get world(){return this._world}despawnEntityAttachedParticleEmitters(A){this.getAllEntityAttachedParticleEmitters(A).forEach((Q)=>{Q.despawn()})}getAllParticleEmitters(){return Array.from(this._particleEmitters.values())}getAllEntityAttachedParticleEmitters(A){return this.getAllParticleEmitters().filter((Q)=>Q.attachedToEntity===A)}registerParticleEmitter(A){if(A.id!==void 0)return A.id;let Q=this._nextParticleEmitterId;return this._particleEmitters.set(Q,A),this._nextParticleEmitterId++,Q}unregisterParticleEmitter(A){if(A.id===void 0)return;this._particleEmitters.delete(A.id)}}class tq{_sceneUIs=new Map;_nextSceneUIId=1;_world;constructor(A){this._world=A}get world(){return this._world}getAllSceneUIs(){return Array.from(this._sceneUIs.values())}getAllEntityAttachedSceneUIs(A){return this.getAllSceneUIs().filter((Q)=>Q.attachedToEntity===A)}getSceneUIById(A){return this._sceneUIs.get(A)}registerSceneUI(A){if(A.id!==void 0)return A.id;let Q=this._nextSceneUIId;return this._sceneUIs.set(Q,A),this._nextSceneUIId++,Q}unloadEntityAttachedSceneUIs(A){this.getAllEntityAttachedSceneUIs(A).forEach((Q)=>{Q.unload()})}unregisterSceneUI(A){if(A.id===void 0)return;this._sceneUIs.delete(A.id)}}var Xb0=2,Gb0=3;class eq{_accumulatorMs=0;_targetTicksPerSecond;_fixedTimestepMs;_fixedTimestepS;_maxAccumulatorMs;_nextTickMs=0;_lastLoopTimeMs=0;_tickFunction;_tickErrorCallback;_tickHandle=null;constructor(A,Q,B){this._targetTicksPerSecond=A,this._fixedTimestepS=Math.fround(1/A),this._fixedTimestepMs=Math.fround(this._fixedTimestepS*1000),this._maxAccumulatorMs=this._fixedTimestepMs*Gb0,this._tickFunction=Q,this._tickErrorCallback=B}get targetTicksPerSecond(){return this._targetTicksPerSecond}get fixedTimestepMs(){return this._fixedTimestepMs}get fixedTimestepS(){return this._fixedTimestepS}get isStarted(){return!!this._tickHandle}get nextTickMs(){return this._nextTickMs}start(){if(this._tickHandle)return;this._lastLoopTimeMs=performance.now();let A=()=>{let Q=performance.now(),B=Q-this._lastLoopTimeMs;if(this._lastLoopTimeMs=Q,this._accumulatorMs+=B,this._accumulatorMs>this._maxAccumulatorMs)this._accumulatorMs=this._maxAccumulatorMs;if(this._accumulatorMs>=this._fixedTimestepMs)o0.startSpan({operation:"ticker_tick"},()=>{let Y=0;while(this._accumulatorMs>=this._fixedTimestepMs&&Y{C.START="WORLD_LOOP.START";C.STOP="WORLD_LOOP.STOP";C.TICK_START="WORLD_LOOP.TICK_START";C.TICK_END="WORLD_LOOP.TICK_END";C.TICK_ERROR="WORLD_LOOP.TICK_ERROR"})(NTQ||={});class AM extends BQ{_currentTick=0;_ticker;_world;constructor(A,Q=rq){super();this._ticker=new eq(Q,this._tick,this._onTickError),this._world=A}get currentTick(){return this._currentTick}get isStarted(){return this._ticker.isStarted}get nextTickMs(){return this._ticker.nextTickMs}get timestepS(){return this._ticker.fixedTimestepS}get world(){return this._world}start(){this._ticker.start(),this.emitWithWorld(this._world,"WORLD_LOOP.START",{worldLoop:this})}stop(){this._ticker.stop(),this.emitWithWorld(this._world,"WORLD_LOOP.STOP",{worldLoop:this})}_tick=(A)=>{this.emitWithWorld(this._world,"WORLD_LOOP.TICK_START",{worldLoop:this,tickDeltaMs:A});let Q=performance.now(),B=cY.instance,Y=B.isEnabled;if(Y)B.beginTick(this._currentTick,this._world.entityManager.entityCount,e9.instance.playerCount);if(o0.startSpan({operation:"world_tick",attributes:{serverPlayerCount:e9.instance.playerCount,targetTickRate:this._ticker.targetTicksPerSecond,targetTickRateMs:this._ticker.fixedTimestepMs,worldId:this._world.id,worldName:this._world.name,worldChunkCount:this._world.chunkLattice.chunkCount,worldEntityCount:this._world.entityManager.entityCount,worldLoopTick:this._currentTick}},()=>{let J;if(J=Y?performance.now():0,o0.startSpan({operation:"entities_tick"},()=>this._world.entityManager.tickEntities(A)),Y)B.recordPhase("entities_tick",performance.now()-J);if(J=Y?performance.now():0,o0.startSpan({operation:"simulation_step"},()=>this._world.simulation.step(A)),Y)B.recordPhase("simulation_step",performance.now()-J);if(J=Y?performance.now():0,o0.startSpan({operation:"entities_emit_updates"},()=>this._world.entityManager.checkAndEmitUpdates()),Y)B.recordPhase("entities_emit_updates",performance.now()-J);if(this._world.networkSynchronizer.shouldSynchronize()){if(J=Y?performance.now():0,o0.startSpan({operation:"network_synchronize"},()=>this._world.networkSynchronizer.synchronize()),Y)B.recordPhase("network_synchronize",performance.now()-J)}}),Y)B.endTick();this._currentTick++,this.emitWithWorld(this._world,"WORLD_LOOP.TICK_END",{worldLoop:this,tickDurationMs:performance.now()-Q})};_onTickError=(A)=>{n.error(`WorldLoop._onTickError(): Error: ${A}`),this.emitWithWorld(this._world,"WORLD_LOOP.TICK_ERROR",{worldLoop:this,error:A})}}var ko;(($)=>{$.SET_AMBIENT_LIGHT_COLOR="WORLD.SET_AMBIENT_LIGHT_COLOR";$.SET_AMBIENT_LIGHT_INTENSITY="WORLD.SET_AMBIENT_LIGHT_INTENSITY";$.SET_DIRECTIONAL_LIGHT_COLOR="WORLD.SET_DIRECTIONAL_LIGHT_COLOR";$.SET_DIRECTIONAL_LIGHT_INTENSITY="WORLD.SET_DIRECTIONAL_LIGHT_INTENSITY";$.SET_DIRECTIONAL_LIGHT_POSITION="WORLD.SET_DIRECTIONAL_LIGHT_POSITION";$.SET_FOG_COLOR="WORLD.SET_FOG_COLOR";$.SET_FOG_FAR="WORLD.SET_FOG_FAR";$.SET_FOG_NEAR="WORLD.SET_FOG_NEAR";$.SET_SKYBOX_INTENSITY="WORLD.SET_SKYBOX_INTENSITY";$.SET_SKYBOX_URI="WORLD.SET_SKYBOX_URI";$.START="WORLD.START";$.STOP="WORLD.STOP"})(ko||={});class QM extends BQ{_id;_ambientLightColor;_ambientLightIntensity;_audioManager;_blockTypeRegistry;_chatManager;_chunkLattice;_directionalLightColor;_directionalLightIntensity;_directionalLightPosition;_entityManager;_fogColor;_fogFar;_fogNear;_loop;_name;_networkSynchronizer;_particleEmitterManager;_sceneUIManager;_simulation;_skyboxIntensity;_skyboxUri;_tag;constructor(A){super();if(this._id=A.id,this._ambientLightColor=A.ambientLightColor??{r:255,g:255,b:255},this._ambientLightIntensity=A.ambientLightIntensity??1,this._directionalLightColor=A.directionalLightColor??{r:255,g:255,b:255},this._directionalLightIntensity=A.directionalLightIntensity??3,this._directionalLightPosition=A.directionalLightPosition??{x:100,y:150,z:100},this._fogColor=A.fogColor,this._fogFar=A.fogFar??550,this._fogNear=A.fogNear??500,this._name=A.name,this._skyboxIntensity=A.skyboxIntensity??1,this._skyboxUri=A.skyboxUri,this._tag=A.tag,this._audioManager=new oH(this),this._blockTypeRegistry=new tH(this),this._chatManager=new fD(this),this._chunkLattice=new mD(this),this._entityManager=new cD(this),this._loop=new AM(this,A.tickRate),this._networkSynchronizer=new Dk(this),this._particleEmitterManager=new oq(this),this._sceneUIManager=new tq(this),this._simulation=new aq(this,A.tickRate,A.gravity),A.map)this.loadMap(A.map)}get id(){return this._id}get ambientLightColor(){return this._ambientLightColor}get ambientLightIntensity(){return this._ambientLightIntensity}get blockTypeRegistry(){return this._blockTypeRegistry}get chatManager(){return this._chatManager}get chunkLattice(){return this._chunkLattice}get directionalLightColor(){return this._directionalLightColor}get directionalLightIntensity(){return this._directionalLightIntensity}get directionalLightPosition(){return this._directionalLightPosition}get entityManager(){return this._entityManager}get fogColor(){return this._fogColor}get fogFar(){return this._fogFar}get fogNear(){return this._fogNear}get loop(){return this._loop}get name(){return this._name}get networkSynchronizer(){return this._networkSynchronizer}get particleEmitterManager(){return this._particleEmitterManager}get sceneUIManager(){return this._sceneUIManager}get simulation(){return this._simulation}get skyboxIntensity(){return this._skyboxIntensity}get skyboxUri(){return this._skyboxUri}get audioManager(){return this._audioManager}get tag(){return this._tag}loadMap(A){this.chunkLattice.clear();let Q=Object.values(kX).sort((B,Y)=>B.enumIndex-Y.enumIndex);if(A.blockTypes)for(let B of A.blockTypes)this.blockTypeRegistry.registerGenericBlockType({id:B.id,isLiquid:B.isLiquid,lightLevel:B.lightLevel,name:B.name,textureUri:B.textureUri,customColliderOptions:B.customColliderOptions});if(A.blocks){let B=A.blocks,Y=function*(){for(let J in B){let C=B[J],X=typeof C==="number"?C:C.i,G=typeof C==="number"?void 0:C.r,F=J.indexOf(","),W=J.indexOf(",",F+1);yield{globalCoordinate:{x:Number(J.slice(0,F)),y:Number(J.slice(F+1,W)),z:Number(J.slice(W+1))},blockTypeId:X,blockRotation:G!==void 0?Q[G]:void 0}}};this.chunkLattice.initializeBlockEntries(Y())}if(A.entities)for(let B in A.entities){let Y=A.entities[B],J=B.indexOf(","),C=B.indexOf(",",J+1),X=Number(B.slice(0,J)),G=Number(B.slice(J+1,C)),F=Number(B.slice(C+1));new R0({isEnvironmental:!0,...Y}).spawn(this,{x:X,y:G,z:F})}}setAmbientLightColor(A){this._ambientLightColor=A,this.emit("WORLD.SET_AMBIENT_LIGHT_COLOR",{world:this,color:A})}setAmbientLightIntensity(A){this._ambientLightIntensity=A,this.emit("WORLD.SET_AMBIENT_LIGHT_INTENSITY",{world:this,intensity:A})}setDirectionalLightColor(A){this._directionalLightColor=A,this.emit("WORLD.SET_DIRECTIONAL_LIGHT_COLOR",{world:this,color:A})}setDirectionalLightIntensity(A){this._directionalLightIntensity=A,this.emit("WORLD.SET_DIRECTIONAL_LIGHT_INTENSITY",{world:this,intensity:A})}setDirectionalLightPosition(A){this._directionalLightPosition=A,this.emit("WORLD.SET_DIRECTIONAL_LIGHT_POSITION",{world:this,position:A})}setFogColor(A){this._fogColor=A,this.emit("WORLD.SET_FOG_COLOR",{world:this,color:A})}setFogFar(A){this._fogFar=A,this.emit("WORLD.SET_FOG_FAR",{world:this,far:A})}setFogNear(A){this._fogNear=A,this.emit("WORLD.SET_FOG_NEAR",{world:this,near:A})}setSkyboxIntensity(A){this._skyboxIntensity=A,this.emit("WORLD.SET_SKYBOX_INTENSITY",{world:this,intensity:A})}setSkyboxUri(A){this._skyboxUri=A,this.emit("WORLD.SET_SKYBOX_URI",{world:this,uri:A})}start(){if(this._loop.isStarted)return;this._loop.start(),this.emit("WORLD.START",{world:this,startedAtMs:Date.now()})}stop(){if(!this._loop.isStarted)return;this._loop.stop(),this.emit("WORLD.STOP",{world:this,stoppedAtMs:Date.now()})}serialize(){return GQ.serializeWorld(this)}}var LTQ;((Q)=>Q.WORLD_CREATED="WORLD_MANAGER.WORLD_CREATED")(LTQ||={});class FW{static instance=new FW;_defaultWorld;_nextWorldId=1;_worlds=new Map;createWorld(A){let Q=new QM({...A,id:this._nextWorldId++});return Q.start(),this._worlds.set(Q.id,Q),BQ.globalInstance.emit("WORLD_MANAGER.WORLD_CREATED",{world:Q}),Q}getAllWorlds(){return Array.from(this._worlds.values())}getDefaultWorld(){return this._defaultWorld??=this.createWorld({name:"Default World",skyboxUri:"skyboxes/partly-cloudy"}),this._defaultWorld}getWorldsByTag(A){let Q=[];return this._worlds.forEach((B)=>{if(B.tag===A)Q.push(B)}),Q}getWorld(A){return this._worlds.get(A)}setDefaultWorld(A){this._defaultWorld=A}}var qTQ;((Y)=>{Y.PLAYER_CONNECTED="PLAYER_MANAGER.PLAYER_CONNECTED";Y.PLAYER_DISCONNECTED="PLAYER_MANAGER.PLAYER_DISCONNECTED";Y.PLAYER_RECONNECTED="PLAYER_MANAGER.PLAYER_RECONNECTED"})(qTQ||={});class e9{static instance=new e9;worldSelectionHandler;_connectionPlayers=new Map;constructor(){BQ.globalInstance.on("CONNECTION.OPENED",({connection:A,session:Q})=>{this._onConnectionOpened(A,Q)}),BQ.globalInstance.on("CONNECTION.DISCONNECTED",({connection:A})=>{this._onConnectionDisconnected(A)}),BQ.globalInstance.on("CONNECTION.RECONNECTED",({connection:A})=>{this._onConnectionReconnected(A)}),BQ.globalInstance.on("CONNECTION.CLOSED",({connection:A})=>{this._onConnectionClosed(A)})}get playerCount(){return this._connectionPlayers.size}getConnectedPlayers(){return Array.from(this._connectionPlayers.values())}getConnectedPlayersByWorld(A){return this.getConnectedPlayers().filter((Q)=>Q.world===A)}getConnectedPlayerByUsername(A){return Array.from(this._connectionPlayers.values()).find((Q)=>{return Q.username.toLowerCase()===A.toLowerCase()})}async _onConnectionOpened(A,Q){let B=new qE(A,Q);await B.loadInitialPersistedData(),BQ.globalInstance.emit("PLAYER_MANAGER.PLAYER_CONNECTED",{player:B,connectionParams:A.initialConnectionParams});let Y=await this.worldSelectionHandler?.(B);B.joinWorld(Y??FW.instance.getDefaultWorld()),this._connectionPlayers.set(A,B)}_onConnectionDisconnected(A){let Q=this._connectionPlayers.get(A);if(Q)Q.resetInputs(),Q.camera.reset()}_onConnectionReconnected(A){let Q=this._connectionPlayers.get(A);if(Q)Q.reconnected(),BQ.globalInstance.emit("PLAYER_MANAGER.PLAYER_RECONNECTED",{player:Q});else n.warning(`PlayerManager._onConnectionReconnected(): Connection ${A.id} not in the PlayerManager._connectionPlayers map.`)}_onConnectionClosed(A){let Q=this._connectionPlayers.get(A);if(Q){if(Q.disconnect(),this._connectionPlayers.delete(A),!A.isDuplicate)m7.instance.unloadPlayerData(Q).catch((B)=>{n.warning(`PlayerManager._onConnectionClosed(): Failed to unload player data for player ${Q.id}. Error: ${B}`)});BQ.globalInstance.emit("PLAYER_MANAGER.PLAYER_DISCONNECTED",{player:Q})}else n.warning(`PlayerManager._onConnectionClosed(): Connection ${A.id} not in the PlayerManager._connectionPlayers map.`)}}import{randomBytes as Wb0}from"crypto";import{Http3Server as Zb0}from"@fails-components/webtransport";class BM extends BQ{static instance=new BM;_connectionIdConnections=new Map;_userIdConnections=new Map;_wss;_wts;constructor(){super();this._wss=new Mm.default({noServer:!0}),this._wss.on("connection",(A,Q)=>this._onConnection(A,void 0,Q.connectionId,Q.connectionParams,Q.session)),this._wts=new Zb0({port:Hk,host:"0.0.0.0",secret:Wb0(32).toString("hex"),cert:Vk,privKey:Ik,defaultDatagramsReadableMode:"bytes",initialStreamFlowControlWindow:1048576,streamShouldAutoTuneReceiveWindow:!0,streamFlowControlWindowSizeLimit:6291456,initialSessionFlowControlWindow:2097152,sessionShouldAutoTuneReceiveWindow:!0,sessionFlowControlWindowSizeLimit:15728640}),this._wts.setRequestCallback(this._onWebTransportRequest),this._startWebTransport().catch((A)=>{n.error(`Socket: WebTransport server failed to start or crashed while listening for sessions. Error: ${A}`)}),BQ.globalInstance.on("WEBSERVER.UPGRADE",async({req:A,socket:Q,head:B})=>{Q.on("error",()=>{}),await this._authorizeAndConnectWebsocket(A,Q,B)})}async _authorizeAndConnectWebsocket(A,Q,B){let Y=await this._authorizeConnection(A.url??"");if(Y.error){Q.end();return}A.connectionId=Y.connectionId,A.connectionParams=Y.connectionParams,A.session=Y.session,Q.setNoDelay(!0),this._wss.handleUpgrade(A,Q,B,(J)=>{if(J.readyState!==NE.default.OPEN)J.once("open",()=>this._wss.emit("connection",J,A));else this._wss.emit("connection",J,A)})}async _authorizeConnection(A){let Q=A.includes("?")?A.slice(A.indexOf("?")):"",B=new URLSearchParams(Q),Y=B.get("connectionId")??void 0,J=B.get("sessionToken")??"";if(Y&&this._isValidConnectionId(Y))return{connectionId:Y,connectionParams:B};else{let C=await N5.instance.getPlayerSession(J);if(C?.error)return{error:C.error};else if(C)return{connectionParams:B,session:C}}return{connectionParams:B}}_isValidConnectionId(A){return this._connectionIdConnections.has(A)}_onConnection=(A,Q,B,Y,J)=>{let C=J?.user.id,X=B&&this._connectionIdConnections.get(B),G=C&&this._userIdConnections.get(C);if(!X&&G)G.killDuplicateConnection();if(X){if(A)X.bindWs(A);if(Q)X.bindWt(Q).catch((F)=>{n.error(`Socket._onConnection(): WebTransport binding failed. Error: ${F}`)})}else{let F=new U1(A,Q,Y,J);if(F.on("CONNECTION.CLOSED",()=>{if(this._connectionIdConnections.delete(F.id),C&&this._userIdConnections.get(C)===F)this._userIdConnections.delete(C)}),this._connectionIdConnections.set(F.id,F),C)this._userIdConnections.set(C,F)}};_onWebTransportRequest=async({header:A})=>{let{connectionId:Q,connectionParams:B,session:Y,error:J}=await this._authorizeConnection(A[":path"]??"");return{status:J?401:200,path:"/",userData:{connectionId:Q,connectionParams:B,session:Y}}};async _startWebTransport(){this._wts.startServer();for await(let A of this._wts.sessionStream("/"))try{let{connectionId:Q,connectionParams:B,session:Y}=A.userData;this._onConnection(void 0,A,Q,B,Y)}catch(Q){n.error(`Socket._startWebTransport(): WebTransport connection failed. Error: ${Q}`)}}}var MTQ;((B)=>{B.START="GAMESERVER.START";B.STOP="GAMESERVER.STOP"})(MTQ||={});function $b0(A){FB.init().then(()=>{return WW.instance.blockTextureRegistry.preloadAtlas()}).then(()=>{return WW.instance.modelRegistry.preloadModels()}).then(()=>{let Q;if(A.length>0)Q=A(WW.instance.worldManager.getDefaultWorld());else Q=A();return Promise.resolve(Q)}).then(()=>{WW.instance.start()}).catch((Q)=>{n.fatalError(`Failed to initialize the game engine, exiting. Error: ${Q}`)})}class WW{static _instance;_blockTextureRegistry=P7.instance;_modelRegistry=TY.instance;_playerManager=e9.instance;_socket=BM.instance;_worldManager=FW.instance;_webServer=zV.instance;constructor(){}static get instance(){if(!this._instance)this._instance=new WW;return this._instance}get blockTextureRegistry(){return this._blockTextureRegistry}get modelRegistry(){return this._modelRegistry}get playerManager(){return this._playerManager}get socket(){return this._socket}get webServer(){return this._webServer}get worldManager(){return this._worldManager}start(){if(BQ.globalInstance.emit("GAMESERVER.START",{startedAtMs:performance.now()}),this._webServer.start(),process.env.NODE_ENV!=="production")console.log("---"),console.log("\uD83D\uDFE2 Server Running: You can test & play it at: https://hytopia.com/play");n.enableCrashProtection()}}var rY=qA(X4(),1);class G4 extends Float32Array{constructor(A,Q,B,Y){super([A,Q,B,Y])}get determinant(){return rY.mat2.determinant(this)}get frobeniusNorm(){return rY.mat2.frob(this)}static create(){let A=new G4(0,0,0,0);return rY.mat2.identity(A),A}static fromRotation(A){let Q=G4.create();return rY.mat2.fromRotation(Q,A),Q}static fromScaling(A){let Q=G4.create();return rY.mat2.fromScaling(Q,A),Q}add(A){return rY.mat2.add(this,this,A),this}adjoint(){return rY.mat2.adjoint(this,this),this}clone(){return new G4(this[0],this[1],this[2],this[3])}copy(A){return rY.mat2.copy(this,A),this}equals(A){return rY.mat2.equals(this,A)}exactEquals(A){return rY.mat2.exactEquals(this,A)}identity(){return rY.mat2.identity(this),this}invert(){return rY.mat2.invert(this,this),this}multiply(A){return rY.mat2.mul(this,this,A),this}multiplyScalar(A){return rY.mat2.multiplyScalar(this,this,A),this}rotate(A){return rY.mat2.rotate(this,this,A),this}subtract(A){return rY.mat2.sub(this,this,A),this}toString(){return`[${this[0]},${this[1]}][${this[2]},${this[3]}]`}transpose(){return rY.mat2.transpose(this,this),this}}var t0=qA(X4(),1);class k6 extends Float32Array{constructor(A,Q,B,Y,J,C,X,G,F){super([A,Q,B,Y,J,C,X,G,F])}get determinant(){return t0.mat3.determinant(this)}get frobeniusNorm(){return t0.mat3.frob(this)}static create(){let A=new k6(0,0,0,0,0,0,0,0,0);return t0.mat3.identity(A),A}static fromMatrix4(A){let Q=k6.create();return t0.mat3.fromMat4(Q,A),Q}static fromQuaternion(A){let Q=k6.create();return t0.mat3.fromQuat(Q,A),Q}static fromRotation(A){let Q=k6.create();return t0.mat3.fromRotation(Q,A),Q}static fromScaling(A){let Q=k6.create();return t0.mat3.fromScaling(Q,A),Q}static fromTranslation(A){let Q=k6.create();return t0.mat3.fromTranslation(Q,A),Q}add(A){return t0.mat3.add(this,this,A),this}adjoint(){return t0.mat3.adjoint(this,this),this}clone(){return new k6(this[0],this[1],this[2],this[3],this[4],this[5],this[6],this[7],this[8])}copy(A){return t0.mat3.copy(this,A),this}equals(A){return t0.mat3.equals(this,A)}exactEquals(A){return t0.mat3.exactEquals(this,A)}identity(){return t0.mat3.identity(this),this}invert(){return t0.mat3.invert(this,this),this}multiply(A){return t0.mat3.mul(this,this,A),this}multiplyScalar(A){return t0.mat3.multiplyScalar(this,this,A),this}transformVector(A){return A.transformMatrix3(this)}projection(A,Q){return t0.mat3.projection(this,A,Q),this}rotate(A){return t0.mat3.rotate(this,this,A),this}subtract(A){return t0.mat3.sub(this,this,A),this}toString(){return`[${this[0]},${this[1]},${this[2]}][${this[3]},${this[4]},${this[5]}][${this[6]},${this[7]},${this[8]}]`}transpose(){return t0.mat3.transpose(this,this),this}}var EB=qA(X4(),1);class q9 extends Float32Array{constructor(A,Q,B,Y,J,C,X,G,F,W,Z,U,$,E,K,I){super([A,Q,B,Y,J,C,X,G,F,W,Z,U,$,E,K,I])}get determinant(){return EB.mat4.determinant(this)}get frobeniusNorm(){return EB.mat4.frob(this)}static create(){let A=new q9(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);return EB.mat4.identity(A),A}static fromQuaternion(A){let Q=q9.create();return EB.mat4.fromQuat(Q,A),Q}static fromRotation(A,Q){let B=q9.create();return EB.mat4.fromRotation(B,A,Q),B}static fromRotationTranslation(A,Q){let B=q9.create();return EB.mat4.fromRotationTranslation(B,A,Q),B}static fromRotationTranslationScale(A,Q,B){let Y=q9.create();return EB.mat4.fromRotationTranslationScale(Y,A,Q,B),Y}static fromRotationTranslationScaleOrigin(A,Q,B,Y){let J=q9.create();return EB.mat4.fromRotationTranslationScaleOrigin(J,A,Q,B,Y),J}static fromScaling(A){let Q=q9.create();return EB.mat4.fromScaling(Q,A),Q}static fromTranslation(A){let Q=q9.create();return EB.mat4.fromTranslation(Q,A),Q}static fromXRotation(A){let Q=q9.create();return EB.mat4.fromXRotation(Q,A),Q}static fromYRotation(A){let Q=q9.create();return EB.mat4.fromYRotation(Q,A),Q}static fromZRotation(A){let Q=q9.create();return EB.mat4.fromZRotation(Q,A),Q}add(A){return EB.mat4.add(this,this,A),this}adjoint(){return EB.mat4.adjoint(this,this),this}clone(){return new q9(this[0],this[1],this[2],this[3],this[4],this[5],this[6],this[7],this[8],this[9],this[10],this[11],this[12],this[13],this[14],this[15])}copy(A){return EB.mat4.copy(this,A),this}equals(A){return EB.mat4.equals(this,A)}exactEquals(A){return EB.mat4.exactEquals(this,A)}frustrum(A,Q,B,Y,J,C){return EB.mat4.frustum(this,A,Q,B,Y,J,C),this}identity(){return EB.mat4.identity(this),this}invert(){return EB.mat4.invert(this,this),this}lookAt(A,Q,B){return EB.mat4.lookAt(this,A,Q,B),this}multiply(A){return EB.mat4.mul(this,this,A),this}multiplyScalar(A){return EB.mat4.multiplyScalar(this,this,A),this}orthographic(A,Q,B,Y,J,C){return EB.mat4.ortho(this,A,Q,B,Y,J,C),this}perspective(A,Q,B,Y){return EB.mat4.perspective(this,A,Q,B,Y),this}rotate(A,Q){return EB.mat4.rotate(this,this,A,Q),this}rotateX(A){return EB.mat4.rotateX(this,this,A),this}rotateY(A){return EB.mat4.rotateY(this,this,A),this}rotateZ(A){return EB.mat4.rotateZ(this,this,A),this}scale(A){return EB.mat4.scale(this,this,A),this}subtract(A){return EB.mat4.sub(this,this,A),this}targetTo(A,Q,B){return EB.mat4.targetTo(this,A,Q,B),this}toString(){return`[${this[0]},${this[1]},${this[2]},${this[3]}][${this[4]},${this[5]},${this[6]},${this[7]}][${this[8]},${this[9]},${this[10]},${this[11]}][${this[12]},${this[13]},${this[14]},${this[15]}]`}translate(A){return EB.mat4.translate(this,this,A),this}transpose(){return EB.mat4.transpose(this,this),this}}var Y0=qA(X4(),1);class RV extends Float32Array{constructor(A,Q,B,Y){super([A,Q,B,Y])}get length(){return Y0.quat.length(this)}get squaredLength(){return Y0.quat.squaredLength(this)}get magnitude(){return Y0.quat.length(this)}get squaredMagnitude(){return Y0.quat.squaredLength(this)}get x(){return this[0]}set x(A){this[0]=A}get y(){return this[1]}set y(A){this[1]=A}get z(){return this[2]}set z(A){this[2]=A}get w(){return this[3]}set w(A){this[3]=A}static fromEuler(A,Q,B){let Y=Y0.quat.fromEuler(new Float32Array(4),A,Q,B);return new RV(Y[0],Y[1],Y[2],Y[3])}static fromQuaternionLike(A){return new RV(A.x,A.y,A.z,A.w)}clone(){return new RV(this.x,this.y,this.z,this.w)}conjugate(){return Y0.quat.conjugate(this,this),this}copy(A){return Y0.quat.copy(this,A),this}dot(A){return Y0.quat.dot(this,A)}exponential(){return Y0.quat.exp(this,this),this}equals(A){return Y0.quat.equals(this,A)}exactEquals(A){return Y0.quat.exactEquals(this,A)}getAngle(A){return Y0.quat.getAngle(this,A)}identity(){return Y0.quat.identity(this),this}invert(){return Y0.quat.invert(this,this),this}lerp(A,Q){return Y0.quat.lerp(this,this,A,Q),this}logarithm(){return Y0.quat.ln(this,this),this}multiply(A){return Y0.quat.multiply(this,this,A),this}transformVector(A){return A.transformQuaternion(this)}normalize(){return Y0.quat.normalize(this,this),this}power(A){return Y0.quat.pow(this,this,A),this}randomize(){return Y0.quat.random(this),this}rotateX(A){return Y0.quat.rotateX(this,this,A),this}rotateY(A){return Y0.quat.rotateY(this,this,A),this}rotateZ(A){return Y0.quat.rotateZ(this,this,A),this}scale(A){return Y0.quat.scale(this,this,A),this}setAxisAngle(A,Q){return Y0.quat.setAxisAngle(this,A,Q),this}slerp(A,Q){return Y0.quat.slerp(this,this,A,Q),this}toString(){return`${this.x},${this.y},${this.z},${this.w}`}}var vB=qA(X4(),1);class YM extends Float32Array{constructor(A,Q){super([A,Q])}get length(){return vB.vec2.length(this)}get squaredLength(){return vB.vec2.squaredLength(this)}get magnitude(){return vB.vec2.length(this)}get squaredMagnitude(){return vB.vec2.squaredLength(this)}get x(){return this[0]}set x(A){this[0]=A}get y(){return this[1]}set y(A){this[1]=A}static create(){return new YM(0,0)}add(A){return vB.vec2.add(this,this,A),this}angle(A){return vB.vec2.angle(this,A)}ceil(){return vB.vec2.ceil(this,this),this}clone(){return new YM(this.x,this.y)}copy(A){return vB.vec2.copy(this,A),this}distance(A){return vB.vec2.distance(this,A)}divide(A){return vB.vec2.divide(this,this,A),this}dot(A){return vB.vec2.dot(this,A)}equals(A){return vB.vec2.equals(this,A)}exactEquals(A){return vB.vec2.exactEquals(this,A)}floor(){return vB.vec2.floor(this,this),this}invert(){return vB.vec2.inverse(this,this),this}lerp(A,Q){return vB.vec2.lerp(this,this,A,Q),this}max(A){return vB.vec2.max(this,this,A),this}min(A){return vB.vec2.min(this,this,A),this}multiply(A){return vB.vec2.mul(this,this,A),this}negate(){return vB.vec2.negate(this,this),this}normalize(){return vB.vec2.normalize(this,this),this}randomize(A){return vB.vec2.random(this,A),this}rotate(A,Q){return vB.vec2.rotate(this,this,A,Q),this}round(){return vB.vec2.round(this,this),this}scale(A){return vB.vec2.scale(this,this,A),this}scaleAndAdd(A,Q){return vB.vec2.scaleAndAdd(this,this,A,Q),this}subtract(A){return vB.vec2.sub(this,this,A),this}toString(){return`${this.x},${this.y}`}transformMatrix2(A){return vB.vec2.transformMat2(this,this,A),this}transformMatrix3(A){return vB.vec2.transformMat3(this,this,A),this}transformMatrix4(A){return vB.vec2.transformMat4(this,this,A),this}zero(){return vB.vec2.zero(this),this}}var RB=qA(X4(),1);class wV extends Float32Array{constructor(A,Q,B){super([A,Q,B])}get length(){return RB.vec3.length(this)}get squaredLength(){return RB.vec3.squaredLength(this)}get magnitude(){return RB.vec3.length(this)}get squaredMagnitude(){return RB.vec3.squaredLength(this)}get x(){return this[0]}set x(A){this[0]=A}get y(){return this[1]}set y(A){this[1]=A}get z(){return this[2]}set z(A){this[2]=A}static create(){return new wV(0,0,0)}static fromVector3Like(A){return new wV(A.x,A.y,A.z)}add(A){return RB.vec3.add(this,this,A),this}ceil(){return RB.vec3.ceil(this,this),this}clone(){return new wV(this.x,this.y,this.z)}copy(A){return RB.vec3.copy(this,A),this}cross(A){return RB.vec3.cross(this,this,A),this}distance(A){return RB.vec3.distance(this,A)}divide(A){return RB.vec3.div(this,this,A),this}dot(A){return RB.vec3.dot(this,A)}equals(A){return RB.vec3.equals(this,A)}exactEquals(A){return RB.vec3.exactEquals(this,A)}floor(){return RB.vec3.floor(this,this),this}invert(){return RB.vec3.inverse(this,this),this}lerp(A,Q){return RB.vec3.lerp(this,this,A,Q),this}max(A){return RB.vec3.max(this,this,A),this}min(A){return RB.vec3.min(this,this,A),this}multiply(A){return RB.vec3.mul(this,this,A),this}negate(){return RB.vec3.negate(this,this),this}normalize(){return RB.vec3.normalize(this,this),this}randomize(A){return RB.vec3.random(this,A),this}rotateX(A,Q){return RB.vec3.rotateX(this,this,A,Q),this}rotateY(A,Q){return RB.vec3.rotateY(this,this,A,Q),this}rotateZ(A,Q){return RB.vec3.rotateZ(this,this,A,Q),this}round(){return RB.vec3.round(this,this),this}scale(A){return RB.vec3.scale(this,this,A),this}scaleAndAdd(A,Q){return RB.vec3.scaleAndAdd(this,this,A,Q),this}subtract(A){return RB.vec3.sub(this,this,A),this}toString(){return`${this.x},${this.y},${this.z}`}transformMatrix3(A){return RB.vec3.transformMat3(this,this,A),this}transformMatrix4(A){return RB.vec3.transformMat4(this,this,A),this}transformQuaternion(A){return RB.vec3.transformQuat(this,this,A),this}zero(){return RB.vec3.zero(this),this}}function GkQ(A){return function(Q,B,Y){let J=Y.value,C=Q.constructor.name,X=A??`${C}.${B}`;if(J.constructor.name==="AsyncFunction")Y.value=async function(...G){return cY.instance.measureAsync(X,()=>J.apply(this,G))};else Y.value=function(...G){return cY.instance.measure(X,()=>J.apply(this,G))};return Y}}function Oo0(A){return function(Q){let B=Q.prototype,Y=A??Q.name;for(let J of Object.getOwnPropertyNames(B)){if(J==="constructor")continue;let C=Object.getOwnPropertyDescriptor(B,J);if(C&&typeof C.value==="function")GkQ(`${Y}.${J}`)(B,J,C),Object.defineProperty(B,J,C)}return Q}}function Po0(A,Q){return cY.instance.measure(A,Q)}async function To0(A,Q){return cY.instance.measureAsync(A,Q)}class F4{static _instance;static get instance(){if(!F4._instance)F4._instance=new F4;return F4._instance}_enabled=!1;_bytesSentTotal=0;_bytesReceivedTotal=0;_packetsSentTotal=0;_packetsReceivedTotal=0;_compressionCount=0;_serializationTotalMs=0;_serializationCount=0;_lastSnapshotTime=0;_lastBytesSent=0;_lastBytesReceived=0;_lastPacketsSent=0;_lastPacketsReceived=0;_connectedPlayers=0;get isEnabled(){return this._enabled}enable(){this._enabled=!0,this._lastSnapshotTime=performance.now(),this._reset()}disable(){this._enabled=!1}setConnectedPlayers(A){this._connectedPlayers=A}recordBytesSent(A){if(!this._enabled)return;this._bytesSentTotal+=A}recordBytesReceived(A){if(!this._enabled)return;this._bytesReceivedTotal+=A}recordPacketSent(){if(!this._enabled)return;this._packetsSentTotal++}recordPacketReceived(){if(!this._enabled)return;this._packetsReceivedTotal++}recordSerialization(A){if(!this._enabled)return;this._serializationTotalMs+=A,this._serializationCount++}recordCompression(){if(!this._enabled)return;this._compressionCount++}getSnapshot(){let A=performance.now(),Q=Math.max((A-this._lastSnapshotTime)/1000,0.001),B={connectedPlayers:this._connectedPlayers,bytesSentTotal:this._bytesSentTotal,bytesReceivedTotal:this._bytesReceivedTotal,bytesSentPerSecond:(this._bytesSentTotal-this._lastBytesSent)/Q,bytesReceivedPerSecond:(this._bytesReceivedTotal-this._lastBytesReceived)/Q,packetsSentPerSecond:(this._packetsSentTotal-this._lastPacketsSent)/Q,packetsReceivedPerSecond:(this._packetsReceivedTotal-this._lastPacketsReceived)/Q,avgSerializationMs:this._serializationCount>0?this._serializationTotalMs/this._serializationCount:0,compressionCount:this._compressionCount};return this._lastSnapshotTime=A,this._lastBytesSent=this._bytesSentTotal,this._lastBytesReceived=this._bytesReceivedTotal,this._lastPacketsSent=this._packetsSentTotal,this._lastPacketsReceived=this._packetsReceivedTotal,B}_reset(){this._bytesSentTotal=0,this._bytesReceivedTotal=0,this._packetsSentTotal=0,this._packetsReceivedTotal=0,this._compressionCount=0,this._serializationTotalMs=0,this._serializationCount=0,this._lastBytesSent=0,this._lastBytesReceived=0,this._lastPacketsSent=0,this._lastPacketsReceived=0}}var ZkQ=qA(WkQ(),1);class mo extends BZ{_debug=!1;_entity;_maxFall=0;_maxJump=0;_maxOpenSetIterations=200;_onPathfindAbort;_onPathfindComplete;_onWaypointMoveComplete;_onWaypointMoveSkipped;_speed=0;_target;_verticalPenalty=0;_waypoints=[];_waypointNextIndex=0;_waypointStoppingDistance;_waypointTimeoutMs=2000;constructor(A={}){super(A)}get debug(){return this._debug}get maxFall(){return this._maxFall}get maxJump(){return this._maxJump}get maxOpenSetIterations(){return this._maxOpenSetIterations}get speed(){return this._speed}get target(){return this._target}get verticalPenalty(){return this._verticalPenalty}get waypoints(){return this._waypoints}get waypointNextIndex(){return this._waypointNextIndex}get waypointTimeoutMs(){return this._waypointTimeoutMs}pathfind(A,Q,B){if(this._target=A,this._speed=Q,this._debug=B?.debug??!1,this._maxFall=B?.maxFall?-Math.abs(B.maxFall):0,this._maxJump=B?.maxJump?Math.abs(B.maxJump):0,this._maxOpenSetIterations=B?.maxOpenSetIterations??200,this._onPathfindAbort=B?.pathfindAbortCallback,this._onPathfindComplete=B?.pathfindCompleteCallback,this._onWaypointMoveComplete=B?.waypointMoveCompleteCallback,this._onWaypointMoveSkipped=B?.waypointMoveSkippedCallback,this._verticalPenalty=B?.verticalPenalty??0,this._waypoints=[],this._waypointNextIndex=0,this._waypointStoppingDistance=B?.waypointStoppingDistance,this._waypointTimeoutMs=B?.waypointTimeoutMs??2000/Q,!this._calculatePath())return!1;return this._moveToNextWaypoint(),!0}attach(A){super.attach(A),this._entity=A}detach(A){super.detach(A),this._entity=void 0}_calculatePath(){if(!this._target||!this._entity?.world)return n.error("PathfindingEntityController._calculatePath: No target or world"),!1;let A=this._entity.height,Q=this._findGroundedStart();if(!Q){if(this._debug)n.warning(`PathfindingEntityController._calculatePath: No valid grounded start found within maxFall distance, path search aborted. Start: ${this._coordinateToKey(this._target)}, Target: ${this._coordinateToKey(this._target)}`);return!1}let B={x:Math.floor(this._target.x),y:Math.floor(this._target.y),z:Math.floor(this._target.z)},Y=Math.abs(B.x-Q.x),J=Math.abs(B.y-Q.y),C=Math.abs(B.z-Q.z);if(Y<=2&&J<=2&&C<=2&&!this._isNeighborCoordinateBlocked(Q,B,this._entity.height))return this._waypoints=[{x:Q.x+0.5,y:Q.y+A/2,z:Q.z+0.5},{x:B.x+0.5,y:B.y+A/2,z:B.z+0.5}],!0;if(Q.x===B.x&&Q.y===B.y&&Q.z===B.z)return this._waypoints=[{x:Q.x+0.5,y:Q.y+A/2,z:Q.z+0.5}],!0;let G=this._coordinateToKey(Q),F=new Map,W=new Map([[G,0]]),Z=new Map([[G,this._pathfindingHeuristic(Q,B)]]),U=new Set,$=new ZkQ.Heap((L,z)=>{let M=Z.get(L[0])??1/0,N=Z.get(z[0])??1/0;return M-N});$.push([G,Q]);let E=[{x:0,y:0,z:1},{x:1,y:0,z:0},{x:0,y:0,z:-1},{x:-1,y:0,z:0},{x:1,y:0,z:1},{x:1,y:0,z:-1},{x:-1,y:0,z:1},{x:-1,y:0,z:-1}],K=[];for(let L=this._maxJump;L>=this._maxFall;L--){if(L===0)continue;let z=Math.abs(Q.y+L-B.y);K.push({y:L,distanceToTargetY:z})}K.sort((L,z)=>L.distanceToTargetY-z.distanceToTargetY);let I=[...E,...K.flatMap(({y:L})=>E.map((z)=>({...z,y:L})))],V=0,H=Math.abs(B.x-Q.x)+Math.abs(B.y-Q.y)+Math.abs(B.z-Q.z),D=Math.min(this._maxOpenSetIterations,H*20);while(!$.isEmpty()&&V({x:w.x+0.5,y:w.y+A/2,z:w.z+0.5})),this._debug)console.log(`PathfindingEntityController._calculatePath: Path found after ${V} open set iterations. Start: ${this._coordinateToKey(Q)}, Target: ${this._coordinateToKey(this._target)}`);return!0}U.add(L);let M=W.get(L),N=new Map;for(let q of I){let w=`${q.x},${q.z}`,P=q.y<0;if(P&&N.has(w))continue;let _={x:z.x+q.x,y:z.y+q.y,z:z.z+q.z};if(Math.abs(B.x-_.x)+Math.abs(B.y-_.y)+Math.abs(B.z-_.z)>H*1.5)continue;let k=this._coordinateToKey(_);if(U.has(k))continue;let T=this._isNeighborCoordinateBlocked(z,_,this._entity.height);if(P&&T){N.set(w,!0);continue}if(T)continue;let S=Math.abs(q.x),v=Math.abs(q.y),y=Math.abs(q.z),g=v===0?0:this._verticalPenalty,h=(Math.max(S,v,y)===1&&S+v+y>1?1.4:1)+g,m=M+h,i=W.get(k)??1/0;if(m>=i)continue;F.set(k,z),W.set(k,m);let p=m+this._pathfindingHeuristic(_,B);Z.set(k,p),$.push([k,_])}}if(V>=D){if(this._onPathfindAbort?.(),this._debug)n.warning(`PathfindingEntityController._calculatePath: Maximum open set iterations reached (${D}), path search aborted. Start: ${this._coordinateToKey(Q)}, Target: ${this._coordinateToKey(this._target)}`)}else if(this._debug)n.warning(`PathfindingEntityController._calculatePath: No valid path found. Start: ${this._coordinateToKey(Q)}, Target: ${this._coordinateToKey(this._target)}`);return this._target=void 0,this._waypoints=[],!1}_reconstructPath(A,Q){let B=[Q],Y=Q;while(A.has(this._coordinateToKey(Y)))Y=A.get(this._coordinateToKey(Y)),B.unshift(Y);return B}_coordinateToKey(A){return`${A.x},${A.y},${A.z}`}_moveToNextWaypoint(){let A=this._waypointNextIndex>0?this._waypoints[this._waypointNextIndex-1]:void 0,Q=this._waypoints[this._waypointNextIndex];if(!Q||!this._entity)return;let B=0;if(this._entity.isDynamic&&A&&Q.y>A.y){let Y=Q.y-A.y,J=Math.min(Y,this._maxJump)+0.75;this.jump(J);let C=Math.abs(this._entity.world.simulation.gravity.y),X=Math.sqrt(2*C*J),G=A.x+0.5,F=A.z+0.5,W=Q.x+0.5,Z=Q.z+0.5,U=W-G,$=Z-F,E=Math.sqrt(U*U+$*$),K=X/C,I=E/this._speed;B=Math.min(K*0.8,I)*1000}setTimeout(()=>{if(!this._entity)return;let Y=Date.now();this.face(Q,this._speed),this.move(Q,this._speed,{moveCompletesWhenStuck:!0,moveIgnoreAxes:{y:this._entity.isDynamic},moveStartIdleAnimationsOnCompletion:this._waypointNextIndex===this._waypoints.length-1,moveStoppingDistance:this._waypointStoppingDistance,moveCallback:()=>{if(Date.now()-Y>this._waypointTimeoutMs&&this._waypointNextIndex{if(this._waypointNextIndex; + // (undocumented) + static captureProfile(durationMs: number, outputPath?: string): Promise; +} + // @public export interface CylinderColliderOptions extends BaseColliderOptions { halfHeight?: number; @@ -1608,6 +1704,33 @@ export interface GameServerEventPayloads { }; } +// @public (undocumented) +export class IdleBehavior implements BotBehavior { + // (undocumented) + readonly name = "idle"; + // (undocumented) + tick(_bot: BotPlayer, _world: World, _deltaTimeMs: number): void; +} + +// @public (undocumented) +export class InteractBehavior implements BotBehavior { + constructor(options?: InteractBehaviorOptions); + // (undocumented) + readonly name = "interact"; + // (undocumented) + tick(bot: BotPlayer, world: World, deltaTimeMs: number): void; +} + +// @public (undocumented) +export interface InteractBehaviorOptions { + // (undocumented) + actionIntervalMs?: number; + // (undocumented) + interactRadius?: number; + // (undocumented) + moveSpeed?: number; +} + // @public export type IntersectionResult = { intersectedBlockType?: BlockType; @@ -1780,6 +1903,20 @@ export type ModelTrimesh = { indices: Uint32Array; }; +// @public (undocumented) +export function Monitor(operationName?: string): (target: any, propertyKey: string, descriptor: PropertyDescriptor) => PropertyDescriptor; + +// @public (undocumented) +export function monitorAsyncBlock(name: string, fn: () => Promise): Promise; + +// @public (undocumented) +export function monitorBlock(name: string, fn: () => T): T; + +// @public (undocumented) +export function MonitorClass(prefix?: string): (constructor: T) => T; + // @public export type MoveCallback = (currentPosition: Vector3Like, targetPosition: Vector3Like) => void; @@ -1800,12 +1937,84 @@ export type MoveOptions = { moveCompletesWhenStuck?: boolean; }; +// @public (undocumented) +export class NetworkMetrics { + // (undocumented) + disable(): void; + // (undocumented) + enable(): void; + // (undocumented) + getSnapshot(): NetworkMetricsSnapshot; + // (undocumented) + static get instance(): NetworkMetrics; + // (undocumented) + get isEnabled(): boolean; + // (undocumented) + recordBytesReceived(bytes: number): void; + // (undocumented) + recordBytesSent(bytes: number): void; + // (undocumented) + recordCompression(): void; + // (undocumented) + recordPacketReceived(): void; + // (undocumented) + recordPacketSent(): void; + // (undocumented) + recordSerialization(durationMs: number): void; + // (undocumented) + setConnectedPlayers(count: number): void; +} + +// @public (undocumented) +export interface NetworkMetricsSnapshot { + // (undocumented) + avgSerializationMs: number; + // (undocumented) + bytesReceivedPerSecond: number; + // (undocumented) + bytesReceivedTotal: number; + // (undocumented) + bytesSentPerSecond: number; + // (undocumented) + bytesSentTotal: number; + // (undocumented) + compressionCount: number; + // (undocumented) + connectedPlayers: number; + // (undocumented) + packetsReceivedPerSecond: number; + // (undocumented) + packetsSentPerSecond: number; +} + // @public export interface NoneColliderOptions extends BaseColliderOptions { // (undocumented) shape: ColliderShape.NONE; } +// @public (undocumented) +export interface OperationStats { + // (undocumented) + avgMs: number; + // (undocumented) + count: number; + // (undocumented) + lastMs: number; + // (undocumented) + maxMs: number; + // (undocumented) + minMs: number; + // (undocumented) + p50Ms: number; + // (undocumented) + p95Ms: number; + // (undocumented) + p99Ms: number; + // (undocumented) + totalMs: number; +} + // @public export interface Outline { color?: RgbColor; @@ -2234,6 +2443,107 @@ export type PathfindingOptions = { waypointTimeoutMs?: number; }; +// @public (undocumented) +export class PerformanceMonitor extends EventRouter { + // (undocumented) + beginTick(tick: number, entityCount: number, playerCount: number): void; + // (undocumented) + disable(): void; + // (undocumented) + enable(options?: PerformanceMonitorOptions): void; + // (undocumented) + enableEntityProfiling(enabled: boolean): void; + // (undocumented) + endTick(): void; + // (undocumented) + getEntityCosts(): Map; + // (undocumented) + getSnapshot(): PerformanceSnapshot; + // (undocumented) + static get instance(): PerformanceMonitor; + // (undocumented) + get isEnabled(): boolean; + // (undocumented) + get isEntityProfilingEnabled(): boolean; + // (undocumented) + measure(name: string, fn: () => T): T; + // (undocumented) + measureAsync(name: string, fn: () => Promise): Promise; + // (undocumented) + recordEntityCost(entityId: number, name: string, tickMs: number): void; + // (undocumented) + recordPhase(phaseName: string, durationMs: number): void; + // (undocumented) + resetStats(): void; + // (undocumented) + startTiming(name: string): () => void; +} + +// @public (undocumented) +export enum PerformanceMonitorEvent { + // (undocumented) + SNAPSHOT = "PERFORMANCE_MONITOR.SNAPSHOT", + // (undocumented) + SPIKE_DETECTED = "PERFORMANCE_MONITOR.SPIKE_DETECTED", + // (undocumented) + TICK_REPORT = "PERFORMANCE_MONITOR.TICK_REPORT" +} + +// @public (undocumented) +export interface PerformanceMonitorEventPayloads { + // (undocumented) + [PerformanceMonitorEvent.SNAPSHOT]: PerformanceSnapshot; + // (undocumented) + [PerformanceMonitorEvent.SPIKE_DETECTED]: TickReport; + // (undocumented) + [PerformanceMonitorEvent.TICK_REPORT]: TickReport; +} + +// @public (undocumented) +export interface PerformanceMonitorOptions { + // (undocumented) + historySize?: number; + // (undocumented) + snapshotIntervalMs?: number; + // (undocumented) + spikeThresholdMs?: number; + // (undocumented) + tickBudgetMs?: number; +} + +// @public (undocumented) +export interface PerformanceSnapshot { + // (undocumented) + avgTickMs: number; + // (undocumented) + budgetMs: number; + // (undocumented) + maxTickMs: number; + // (undocumented) + memory: { + heapUsedMb: number; + heapTotalMb: number; + rssMb: number; + }; + // (undocumented) + operations: Record; + // (undocumented) + p95TickMs: number; + // (undocumented) + p99TickMs: number; + // (undocumented) + tickRate: number; + // (undocumented) + ticksOverBudget: number; + // (undocumented) + totalTicks: number; + // (undocumented) + uptimeMs: number; +} + // @public export class PersistenceManager { getGlobalData(key: string, maxRetries?: number): Promise | undefined>; @@ -2727,6 +3037,25 @@ export interface QuaternionLike { z: number; } +// @public (undocumented) +export class RandomWalkBehavior implements BotBehavior { + constructor(options?: RandomWalkOptions); + // (undocumented) + readonly name = "random_walk"; + // (undocumented) + tick(bot: BotPlayer, _world: World, deltaTimeMs: number): void; +} + +// @public (undocumented) +export interface RandomWalkOptions { + // (undocumented) + changeDirectionIntervalMs?: number; + // (undocumented) + moveRadius?: number; + // (undocumented) + moveSpeed?: number; +} + // @public export type RawCollider = RAPIER.Collider; @@ -3135,6 +3464,26 @@ export class Ticker { get targetTicksPerSecond(): number; } +// @public (undocumented) +export interface TickReport { + // (undocumented) + budgetMs: number; + // (undocumented) + budgetPercent: number; + // (undocumented) + durationMs: number; + // (undocumented) + entityCount: number; + // (undocumented) + heapUsedMb: number; + // (undocumented) + phases: Record; + // (undocumented) + playerCount: number; + // (undocumented) + tick: number; +} + // @public export interface TrimeshColliderOptions extends BaseColliderOptions { indices?: Uint32Array; diff --git a/server/src/bots/BotManager.ts b/server/src/bots/BotManager.ts new file mode 100644 index 00000000..85b53ea4 --- /dev/null +++ b/server/src/bots/BotManager.ts @@ -0,0 +1,70 @@ +import BotPlayer from '@/bots/BotPlayer'; +import type { BotPlayerOptions } from '@/bots/BotPlayer'; +import type World from '@/worlds/World'; + +export default class BotManager { + private static _instance: BotManager; + + public static get instance(): BotManager { + if (!BotManager._instance) { + BotManager._instance = new BotManager(); + } + + return BotManager._instance; + } + + private _bots: Map = new Map(); + + public get botCount(): number { + return this._bots.size; + } + + public spawnBot(world: World, options?: BotPlayerOptions): BotPlayer { + const bot = new BotPlayer(world, options); + + bot.spawn(options?.spawnPosition); + this._bots.set(bot.id, bot); + + return bot; + } + + public spawnBots(world: World, count: number, options?: BotPlayerOptions): BotPlayer[] { + const bots: BotPlayer[] = []; + + for (let i = 0; i < count; i++) { + const botOptions: BotPlayerOptions = { + ...options, + name: options?.name ? `${options.name}-${i + 1}` : undefined, + }; + + bots.push(this.spawnBot(world, botOptions)); + } + + return bots; + } + + public getBot(id: number): BotPlayer | undefined { + return this._bots.get(id); + } + + public getAllBots(): BotPlayer[] { + return Array.from(this._bots.values()); + } + + public despawnBot(id: number): void { + const bot = this._bots.get(id); + + if (bot) { + bot.despawn(); + this._bots.delete(id); + } + } + + public despawnAll(): void { + for (const bot of this._bots.values()) { + bot.despawn(); + } + + this._bots.clear(); + } +} diff --git a/server/src/bots/BotPlayer.ts b/server/src/bots/BotPlayer.ts new file mode 100644 index 00000000..2eed5c48 --- /dev/null +++ b/server/src/bots/BotPlayer.ts @@ -0,0 +1,95 @@ +import Entity from '@/worlds/entities/Entity'; +import SimpleEntityController from '@/worlds/entities/controllers/SimpleEntityController'; +import { RigidBodyType } from '@/worlds/physics/RigidBody'; +import type World from '@/worlds/World'; +import type Vector3Like from '@/shared/types/math/Vector3Like'; + +export interface BotBehavior { + name: string; + tick(bot: BotPlayer, world: World, deltaTimeMs: number): void; +} + +export interface BotPlayerOptions { + name?: string; + behavior?: BotBehavior; + spawnPosition?: Vector3Like; + modelUri?: string; + modelScale?: number; + rigidBodyType?: RigidBodyType; +} + +let botIdCounter = 0; + +export default class BotPlayer { + public readonly id: number; + public readonly entity: Entity; + public readonly name: string; + + private _behavior: BotBehavior | null; + private _world: World; + private _spawned: boolean = false; + + constructor(world: World, options?: BotPlayerOptions) { + this.id = ++botIdCounter; + this.name = options?.name ?? `Bot-${this.id}`; + this._world = world; + this._behavior = options?.behavior ?? null; + + const controller = new SimpleEntityController(); + + this.entity = new Entity({ + name: this.name, + modelUri: options?.modelUri ?? 'models/players/player.gltf', + modelScale: options?.modelScale ?? 1, + controller, + rigidBodyOptions: { + type: options?.rigidBodyType ?? RigidBodyType.KINEMATIC_POSITION, + enabledRotations: { x: false, y: true, z: false }, + }, + }); + + this.entity.on('ENTITY.TICK', ({ tickDeltaMs }: { tickDeltaMs: number }) => { + if (this._behavior) { + this._behavior.tick(this, this._world, tickDeltaMs); + } + }); + } + + public get isSpawned(): boolean { + return this._spawned; + } + + public get world(): World { + return this._world; + } + + public get controller(): SimpleEntityController { + return this.entity.controller as SimpleEntityController; + } + + public setBehavior(behavior: BotBehavior): void { + this._behavior = behavior; + } + + public spawn(position?: Vector3Like): void { + if (this._spawned) return; + + const pos = position ?? { x: 0, y: 10, z: 0 }; + + this.entity.spawn(this._world, pos); + this._spawned = true; + } + + public teleport(position: Vector3Like): void { + if (!this._spawned) return; + + this.entity.setPosition(position); + } + + public despawn(): void { + if (!this._spawned) return; + + this.entity.despawn(); + this._spawned = false; + } +} diff --git a/server/src/bots/behaviors/ChaseBehavior.ts b/server/src/bots/behaviors/ChaseBehavior.ts new file mode 100644 index 00000000..fe6a51f8 --- /dev/null +++ b/server/src/bots/behaviors/ChaseBehavior.ts @@ -0,0 +1,59 @@ +import type { BotBehavior } from '@/bots/BotPlayer'; +import type BotPlayer from '@/bots/BotPlayer'; +import type World from '@/worlds/World'; + +export interface ChaseBehaviorOptions { + chaseSpeed?: number; + detectionRadius?: number; + updateIntervalMs?: number; +} + +export default class ChaseBehavior implements BotBehavior { + public readonly name = 'chase'; + + private _chaseSpeed: number; + private _detectionRadius: number; + private _updateIntervalMs: number; + + private _elapsed: number = 0; + + constructor(options?: ChaseBehaviorOptions) { + this._chaseSpeed = options?.chaseSpeed ?? 5; + this._detectionRadius = options?.detectionRadius ?? 50; + this._updateIntervalMs = options?.updateIntervalMs ?? 500; + } + + public tick(bot: BotPlayer, world: World, deltaTimeMs: number): void { + if (!bot.isSpawned) return; + + this._elapsed += deltaTimeMs; + + if (this._elapsed < this._updateIntervalMs) return; + + this._elapsed = 0; + + const botPos = bot.entity.position; + let closestDist = this._detectionRadius * this._detectionRadius; + let closestPos: { x: number; y: number; z: number } | null = null; + + for (const entity of world.entityManager.getAllEntities()) { + if (entity === bot.entity) continue; + if (!entity.isSpawned) continue; + + const pos = entity.position; + const dx = pos.x - botPos.x; + const dz = pos.z - botPos.z; + const distSq = dx * dx + dz * dz; + + if (distSq < closestDist) { + closestDist = distSq; + closestPos = { x: pos.x, y: pos.y, z: pos.z }; + } + } + + if (closestPos) { + bot.controller.move(closestPos, this._chaseSpeed); + bot.controller.face(closestPos, 8); + } + } +} diff --git a/server/src/bots/behaviors/IdleBehavior.ts b/server/src/bots/behaviors/IdleBehavior.ts new file mode 100644 index 00000000..17a151af --- /dev/null +++ b/server/src/bots/behaviors/IdleBehavior.ts @@ -0,0 +1,11 @@ +import type { BotBehavior } from '@/bots/BotPlayer'; +import type BotPlayer from '@/bots/BotPlayer'; +import type World from '@/worlds/World'; + +export default class IdleBehavior implements BotBehavior { + public readonly name = 'idle'; + + public tick(_bot: BotPlayer, _world: World, _deltaTimeMs: number): void { + // no-op: bot stands still, used for baseline load testing + } +} diff --git a/server/src/bots/behaviors/InteractBehavior.ts b/server/src/bots/behaviors/InteractBehavior.ts new file mode 100644 index 00000000..854cd9cc --- /dev/null +++ b/server/src/bots/behaviors/InteractBehavior.ts @@ -0,0 +1,92 @@ +import type { BotBehavior } from '@/bots/BotPlayer'; +import type BotPlayer from '@/bots/BotPlayer'; +import type World from '@/worlds/World'; + +export interface InteractBehaviorOptions { + interactRadius?: number; + actionIntervalMs?: number; + moveSpeed?: number; +} + +export default class InteractBehavior implements BotBehavior { + public readonly name = 'interact'; + + private _interactRadius: number; + private _actionIntervalMs: number; + private _moveSpeed: number; + + private _elapsed: number = 0; + private _moveElapsed: number = 0; + private _originX: number = 0; + private _originZ: number = 0; + private _originSet: boolean = false; + + constructor(options?: InteractBehaviorOptions) { + this._interactRadius = options?.interactRadius ?? 15; + this._actionIntervalMs = options?.actionIntervalMs ?? 2000; + this._moveSpeed = options?.moveSpeed ?? 3; + } + + public tick(bot: BotPlayer, world: World, deltaTimeMs: number): void { + if (!bot.isSpawned) return; + + if (!this._originSet) { + const pos = bot.entity.position; + + this._originX = pos.x; + this._originZ = pos.z; + this._originSet = true; + } + + this._moveElapsed += deltaTimeMs; + + if (this._moveElapsed >= 3000) { + this._moveElapsed = 0; + this._moveToRandom(bot); + } + + this._elapsed += deltaTimeMs; + + if (this._elapsed < this._actionIntervalMs) return; + + this._elapsed = 0; + + const pos = bot.entity.position; + const offsetX = Math.floor((Math.random() - 0.5) * 4); + const offsetZ = Math.floor((Math.random() - 0.5) * 4); + const targetX = Math.floor(pos.x) + offsetX; + const targetZ = Math.floor(pos.z) + offsetZ; + const targetY = Math.floor(pos.y) - 1; + + const action = Math.random(); + + if (action < 0.5) { + try { + world.chunkLattice.setBlock({ x: targetX, y: targetY + 2, z: targetZ }, 1); + } catch { + // block placement may fail if invalid position + } + } else { + try { + world.chunkLattice.setBlock({ x: targetX, y: targetY + 2, z: targetZ }, 0); + } catch { + // block removal may fail + } + } + } + + private _moveToRandom(bot: BotPlayer): void { + const angle = Math.random() * Math.PI * 2; + const distance = Math.random() * this._interactRadius; + const pos = bot.entity.position; + + bot.controller.move( + { + x: this._originX + Math.cos(angle) * distance, + y: pos.y, + z: this._originZ + Math.sin(angle) * distance, + }, + this._moveSpeed, + ); + } +} diff --git a/server/src/bots/behaviors/RandomWalkBehavior.ts b/server/src/bots/behaviors/RandomWalkBehavior.ts new file mode 100644 index 00000000..6300b369 --- /dev/null +++ b/server/src/bots/behaviors/RandomWalkBehavior.ts @@ -0,0 +1,67 @@ +import type { BotBehavior } from '@/bots/BotPlayer'; +import type BotPlayer from '@/bots/BotPlayer'; +import type World from '@/worlds/World'; + +export interface RandomWalkOptions { + moveRadius?: number; + moveSpeed?: number; + changeDirectionIntervalMs?: number; +} + +export default class RandomWalkBehavior implements BotBehavior { + public readonly name = 'random_walk'; + + private _moveRadius: number; + private _moveSpeed: number; + private _changeIntervalMs: number; + + private _elapsed: number = 0; + private _originX: number = 0; + private _originZ: number = 0; + private _originSet: boolean = false; + + constructor(options?: RandomWalkOptions) { + this._moveRadius = options?.moveRadius ?? 20; + this._moveSpeed = options?.moveSpeed ?? 4; + this._changeIntervalMs = options?.changeDirectionIntervalMs ?? 3000; + } + + public tick(bot: BotPlayer, _world: World, deltaTimeMs: number): void { + if (!bot.isSpawned) return; + + if (!this._originSet) { + const pos = bot.entity.position; + + this._originX = pos.x; + this._originZ = pos.z; + this._originSet = true; + this._pickNewTarget(bot); + } + + this._elapsed += deltaTimeMs; + + if (this._elapsed >= this._changeIntervalMs) { + this._elapsed = 0; + this._pickNewTarget(bot); + } + } + + private _pickNewTarget(bot: BotPlayer): void { + const angle = Math.random() * Math.PI * 2; + const distance = Math.random() * this._moveRadius; + + const targetX = this._originX + Math.cos(angle) * distance; + const targetZ = this._originZ + Math.sin(angle) * distance; + const pos = bot.entity.position; + + bot.controller.move( + { x: targetX, y: pos.y, z: targetZ }, + this._moveSpeed, + ); + + bot.controller.face( + { x: targetX, y: pos.y, z: targetZ }, + 5, + ); + } +} diff --git a/server/src/index.ts b/server/src/index.ts index 7907e93a..e8acf627 100644 --- a/server/src/index.ts +++ b/server/src/index.ts @@ -1,6 +1,25 @@ // AssetsLibrary export { default as AssetsLibrary } from '@/assets/AssetsLibrary'; +// BotManager +export { default as BotManager } from '@/bots/BotManager'; + +// BotPlayer +export { default as BotPlayer } from '@/bots/BotPlayer'; +export type { BotBehavior, BotPlayerOptions } from '@/bots/BotPlayer'; + +// Bot Behaviors +export { default as IdleBehavior } from '@/bots/behaviors/IdleBehavior'; +export { default as RandomWalkBehavior } from '@/bots/behaviors/RandomWalkBehavior'; +export type { RandomWalkOptions } from '@/bots/behaviors/RandomWalkBehavior'; +export { default as ChaseBehavior } from '@/bots/behaviors/ChaseBehavior'; +export type { ChaseBehaviorOptions } from '@/bots/behaviors/ChaseBehavior'; +export { default as InteractBehavior } from '@/bots/behaviors/InteractBehavior'; +export type { InteractBehaviorOptions } from '@/bots/behaviors/InteractBehavior'; + +// CpuProfiler +export { default as CpuProfiler } from '@/metrics/CpuProfiler'; + // Audio export { default as Audio, AudioEvent } from '@/worlds/audios/Audio'; export type { AudioEventPayloads, AudioOptions } from '@/worlds/audios/Audio'; @@ -112,6 +131,13 @@ export type { default as Vector3Like } from '@/shared/types/math/Vector3Like'; export { default as ModelRegistry } from '@/models/ModelRegistry'; export type { ModelBoundingBox, ModelTrimesh } from '@/models/ModelRegistry'; +// Monitor (Performance Decorators) +export { Monitor, MonitorClass, monitorBlock, monitorAsyncBlock } from '@/metrics/Monitor'; + +// NetworkMetrics +export { default as NetworkMetrics } from '@/metrics/NetworkMetrics'; +export type { NetworkMetricsSnapshot } from '@/metrics/NetworkMetrics'; + // ParticleEmitter export { default as ParticleEmitter, ParticleEmitterEvent } from '@/worlds/particles/ParticleEmitter'; export type { ParticleEmitterEventPayloads, ParticleEmitterOptions, ParticleEmitterOrientation } from '@/worlds/particles/ParticleEmitter'; @@ -123,6 +149,10 @@ export { default as ParticleEmitterManager } from '@/worlds/particles/ParticleEm export { default as PathfindingEntityController } from '@/worlds/entities/controllers/PathfindingEntityController'; export type { PathfindAbortCallback, PathfindCompleteCallback, PathfindingOptions, WaypointMoveCompleteCallback, WaypointMoveSkippedCallback } from '@/worlds/entities/controllers/PathfindingEntityController'; +// PerformanceMonitor +export { default as PerformanceMonitor, PerformanceMonitorEvent } from '@/metrics/PerformanceMonitor'; +export type { OperationStats, TickReport, PerformanceSnapshot, PerformanceMonitorOptions, PerformanceMonitorEventPayloads } from '@/metrics/PerformanceMonitor'; + // PersistenceManager export { default as PersistenceManager } from '@/persistence/PersistenceManager'; diff --git a/server/src/metrics/CpuProfiler.ts b/server/src/metrics/CpuProfiler.ts new file mode 100644 index 00000000..80ddf1cf --- /dev/null +++ b/server/src/metrics/CpuProfiler.ts @@ -0,0 +1,94 @@ +import { writeFileSync } from 'fs'; + +let inspectorModule: typeof import('node:inspector') | null = null; + +async function getInspector(): Promise { + if (inspectorModule) return inspectorModule; + + try { + inspectorModule = await import('node:inspector'); + + return inspectorModule; + } catch { + return null; + } +} + +export default class CpuProfiler { + public static async captureProfile(durationMs: number, outputPath?: string): Promise { + const inspector = await getInspector(); + + if (!inspector) { + console.warn('CpuProfiler: node:inspector not available in this runtime'); + + return null; + } + + const session = new inspector.Session(); + + session.connect(); + + return new Promise((resolve, reject) => { + session.post('Profiler.enable', () => { + session.post('Profiler.start', () => { + setTimeout(() => { + session.post('Profiler.stop', (err, { profile }) => { + session.post('Profiler.disable'); + session.disconnect(); + + if (err) { + reject(err); + + return; + } + + if (outputPath) { + writeFileSync(outputPath, JSON.stringify(profile)); + } + + resolve(profile); + }); + }, durationMs); + }); + }); + }); + } + + public static async captureHeapSnapshot(outputPath?: string): Promise { + const inspector = await getInspector(); + + if (!inspector) { + console.warn('CpuProfiler: node:inspector not available in this runtime'); + + return ''; + } + + const session = new inspector.Session(); + + session.connect(); + + let chunks = ''; + + session.on('HeapProfiler.addHeapSnapshotChunk', (m: any) => { + chunks += m.params.chunk; + }); + + return new Promise((resolve, reject) => { + session.post('HeapProfiler.takeHeapSnapshot', undefined, (err: Error | null) => { + session.disconnect(); + + if (err) { + reject(err); + + return; + } + + if (outputPath) { + writeFileSync(outputPath, chunks); + } + + resolve(chunks); + }); + }); + } +} diff --git a/server/src/metrics/Monitor.ts b/server/src/metrics/Monitor.ts new file mode 100644 index 00000000..6f09f650 --- /dev/null +++ b/server/src/metrics/Monitor.ts @@ -0,0 +1,59 @@ +import PerformanceMonitor from '@/metrics/PerformanceMonitor'; + +export function Monitor(operationName?: string) { + return function ( + target: any, + propertyKey: string, + descriptor: PropertyDescriptor, + ) { + const originalMethod = descriptor.value; + const className = target.constructor.name; + const name = operationName ?? `${className}.${propertyKey}`; + + if (originalMethod.constructor.name === 'AsyncFunction') { + descriptor.value = async function (...args: any[]) { + return PerformanceMonitor.instance.measureAsync( + name, + () => originalMethod.apply(this, args), + ); + }; + } else { + descriptor.value = function (...args: any[]) { + return PerformanceMonitor.instance.measure( + name, + () => originalMethod.apply(this, args), + ); + }; + } + + return descriptor; + }; +} + +export function MonitorClass(prefix?: string) { + return function (constructor: T) { + const prototype = constructor.prototype; + const classPrefix = prefix ?? constructor.name; + + for (const name of Object.getOwnPropertyNames(prototype)) { + if (name === 'constructor') continue; + + const descriptor = Object.getOwnPropertyDescriptor(prototype, name); + + if (descriptor && typeof descriptor.value === 'function') { + Monitor(`${classPrefix}.${name}`)(prototype, name, descriptor); + Object.defineProperty(prototype, name, descriptor); + } + } + + return constructor; + }; +} + +export function monitorBlock(name: string, fn: () => T): T { + return PerformanceMonitor.instance.measure(name, fn); +} + +export async function monitorAsyncBlock(name: string, fn: () => Promise): Promise { + return PerformanceMonitor.instance.measureAsync(name, fn); +} diff --git a/server/src/metrics/NetworkMetrics.ts b/server/src/metrics/NetworkMetrics.ts new file mode 100644 index 00000000..877b8aad --- /dev/null +++ b/server/src/metrics/NetworkMetrics.ts @@ -0,0 +1,132 @@ +export interface NetworkMetricsSnapshot { + connectedPlayers: number; + bytesSentTotal: number; + bytesReceivedTotal: number; + bytesSentPerSecond: number; + bytesReceivedPerSecond: number; + packetsSentPerSecond: number; + packetsReceivedPerSecond: number; + avgSerializationMs: number; + compressionCount: number; +} + +export default class NetworkMetrics { + private static _instance: NetworkMetrics; + + public static get instance(): NetworkMetrics { + if (!NetworkMetrics._instance) { + NetworkMetrics._instance = new NetworkMetrics(); + } + + return NetworkMetrics._instance; + } + + private _enabled: boolean = false; + + private _bytesSentTotal: number = 0; + private _bytesReceivedTotal: number = 0; + private _packetsSentTotal: number = 0; + private _packetsReceivedTotal: number = 0; + private _compressionCount: number = 0; + + private _serializationTotalMs: number = 0; + private _serializationCount: number = 0; + + private _lastSnapshotTime: number = 0; + private _lastBytesSent: number = 0; + private _lastBytesReceived: number = 0; + private _lastPacketsSent: number = 0; + private _lastPacketsReceived: number = 0; + + private _connectedPlayers: number = 0; + + public get isEnabled(): boolean { + return this._enabled; + } + + public enable(): void { + this._enabled = true; + this._lastSnapshotTime = performance.now(); + this._reset(); + } + + public disable(): void { + this._enabled = false; + } + + public setConnectedPlayers(count: number): void { + this._connectedPlayers = count; + } + + public recordBytesSent(bytes: number): void { + if (!this._enabled) return; + this._bytesSentTotal += bytes; + } + + public recordBytesReceived(bytes: number): void { + if (!this._enabled) return; + this._bytesReceivedTotal += bytes; + } + + public recordPacketSent(): void { + if (!this._enabled) return; + this._packetsSentTotal++; + } + + public recordPacketReceived(): void { + if (!this._enabled) return; + this._packetsReceivedTotal++; + } + + public recordSerialization(durationMs: number): void { + if (!this._enabled) return; + this._serializationTotalMs += durationMs; + this._serializationCount++; + } + + public recordCompression(): void { + if (!this._enabled) return; + this._compressionCount++; + } + + public getSnapshot(): NetworkMetricsSnapshot { + const now = performance.now(); + const elapsedS = Math.max((now - this._lastSnapshotTime) / 1000, 0.001); + + const snapshot: NetworkMetricsSnapshot = { + connectedPlayers: this._connectedPlayers, + bytesSentTotal: this._bytesSentTotal, + bytesReceivedTotal: this._bytesReceivedTotal, + bytesSentPerSecond: (this._bytesSentTotal - this._lastBytesSent) / elapsedS, + bytesReceivedPerSecond: (this._bytesReceivedTotal - this._lastBytesReceived) / elapsedS, + packetsSentPerSecond: (this._packetsSentTotal - this._lastPacketsSent) / elapsedS, + packetsReceivedPerSecond: (this._packetsReceivedTotal - this._lastPacketsReceived) / elapsedS, + avgSerializationMs: this._serializationCount > 0 + ? this._serializationTotalMs / this._serializationCount + : 0, + compressionCount: this._compressionCount, + }; + + this._lastSnapshotTime = now; + this._lastBytesSent = this._bytesSentTotal; + this._lastBytesReceived = this._bytesReceivedTotal; + this._lastPacketsSent = this._packetsSentTotal; + this._lastPacketsReceived = this._packetsReceivedTotal; + + return snapshot; + } + + private _reset(): void { + this._bytesSentTotal = 0; + this._bytesReceivedTotal = 0; + this._packetsSentTotal = 0; + this._packetsReceivedTotal = 0; + this._compressionCount = 0; + this._serializationTotalMs = 0; + this._serializationCount = 0; + this._lastBytesSent = 0; + this._lastBytesReceived = 0; + this._lastPacketsSent = 0; + this._lastPacketsReceived = 0; + } +} diff --git a/server/src/metrics/PerformanceMonitor.ts b/server/src/metrics/PerformanceMonitor.ts new file mode 100644 index 00000000..157685e5 --- /dev/null +++ b/server/src/metrics/PerformanceMonitor.ts @@ -0,0 +1,360 @@ +import EventRouter from '@/events/EventRouter'; + +export enum PerformanceMonitorEvent { + TICK_REPORT = 'PERFORMANCE_MONITOR.TICK_REPORT', + SPIKE_DETECTED = 'PERFORMANCE_MONITOR.SPIKE_DETECTED', + SNAPSHOT = 'PERFORMANCE_MONITOR.SNAPSHOT', +} + +export interface PerformanceMonitorEventPayloads { + [PerformanceMonitorEvent.TICK_REPORT]: TickReport; + [PerformanceMonitorEvent.SPIKE_DETECTED]: TickReport; + [PerformanceMonitorEvent.SNAPSHOT]: PerformanceSnapshot; +} + +export interface OperationStats { + count: number; + totalMs: number; + avgMs: number; + minMs: number; + maxMs: number; + lastMs: number; + p50Ms: number; + p95Ms: number; + p99Ms: number; +} + +export interface TickReport { + tick: number; + durationMs: number; + budgetMs: number; + budgetPercent: number; + phases: Record; + entityCount: number; + playerCount: number; + heapUsedMb: number; +} + +export interface PerformanceSnapshot { + uptimeMs: number; + tickRate: number; + avgTickMs: number; + maxTickMs: number; + p95TickMs: number; + p99TickMs: number; + ticksOverBudget: number; + totalTicks: number; + budgetMs: number; + operations: Record; + memory: { heapUsedMb: number; heapTotalMb: number; rssMb: number }; +} + +export interface PerformanceMonitorOptions { + spikeThresholdMs?: number; + tickBudgetMs?: number; + snapshotIntervalMs?: number; + historySize?: number; +} + +interface OperationAccumulator { + count: number; + totalMs: number; + minMs: number; + maxMs: number; + lastMs: number; + samples: Float64Array; + sampleIndex: number; + sampleCount: number; +} + +export default class PerformanceMonitor extends EventRouter { + private static _instance: PerformanceMonitor; + + public static get instance(): PerformanceMonitor { + if (!PerformanceMonitor._instance) { + PerformanceMonitor._instance = new PerformanceMonitor(); + } + + return PerformanceMonitor._instance; + } + + private _enabled: boolean = false; + private _entityProfilingEnabled: boolean = false; + private _spikeThresholdMs: number = 50; + private _tickBudgetMs: number = 16.67; + private _snapshotIntervalMs: number = 5000; + private _startTime: number = 0; + + private _operations: Map = new Map(); + + private _tickDurations: Float64Array; + private _tickIndex: number = 0; + private _tickCount: number = 0; + private _ticksOverBudget: number = 0; + private _maxTickMs: number = 0; + private _totalTicks: number = 0; + + private _currentTick: number = 0; + private _currentTickStart: number = 0; + private _currentPhases: Record = {}; + private _currentEntityCount: number = 0; + private _currentPlayerCount: number = 0; + + private _entityCosts: Map = new Map(); + + private _snapshotTimer: ReturnType | null = null; + + private constructor() { + super(); + this._tickDurations = new Float64Array(3600); + } + + public get isEnabled(): boolean { + return this._enabled; + } + + public get isEntityProfilingEnabled(): boolean { + return this._enabled && this._entityProfilingEnabled; + } + + public enable(options?: PerformanceMonitorOptions): void { + if (this._enabled) return; + + this._enabled = true; + this._startTime = performance.now(); + this._spikeThresholdMs = options?.spikeThresholdMs ?? 50; + this._tickBudgetMs = options?.tickBudgetMs ?? 16.67; + this._snapshotIntervalMs = options?.snapshotIntervalMs ?? 5000; + + const historySize = options?.historySize ?? 3600; + + this._tickDurations = new Float64Array(historySize); + this._tickIndex = 0; + this._tickCount = 0; + this._ticksOverBudget = 0; + this._maxTickMs = 0; + this._totalTicks = 0; + this._operations.clear(); + this._entityCosts.clear(); + + if (this._snapshotIntervalMs > 0) { + this._snapshotTimer = setInterval(() => { + const snapshot = this.getSnapshot(); + + this.emit(PerformanceMonitorEvent.SNAPSHOT, snapshot); + }, this._snapshotIntervalMs); + } + } + + public disable(): void { + this._enabled = false; + this._entityProfilingEnabled = false; + + if (this._snapshotTimer) { + clearInterval(this._snapshotTimer); + this._snapshotTimer = null; + } + } + + public enableEntityProfiling(enabled: boolean): void { + this._entityProfilingEnabled = enabled; + + if (!enabled) { + this._entityCosts.clear(); + } + } + + public measure(name: string, fn: () => T): T { + if (!this._enabled) return fn(); + + const start = performance.now(); + const result = fn(); + const durationMs = performance.now() - start; + + this._recordOperation(name, durationMs); + + return result; + } + + public async measureAsync(name: string, fn: () => Promise): Promise { + if (!this._enabled) return fn(); + + const start = performance.now(); + const result = await fn(); + const durationMs = performance.now() - start; + + this._recordOperation(name, durationMs); + + return result; + } + + public startTiming(name: string): () => void { + if (!this._enabled) return () => {}; + + const start = performance.now(); + + return () => { + this._recordOperation(name, performance.now() - start); + }; + } + + public beginTick(tick: number, entityCount: number, playerCount: number): void { + this._currentTick = tick; + this._currentTickStart = performance.now(); + this._currentPhases = {}; + this._currentEntityCount = entityCount; + this._currentPlayerCount = playerCount; + } + + public recordPhase(phaseName: string, durationMs: number): void { + this._currentPhases[phaseName] = durationMs; + this._recordOperation(phaseName, durationMs); + } + + public endTick(): void { + const durationMs = performance.now() - this._currentTickStart; + + this._tickDurations[this._tickIndex] = durationMs; + this._tickIndex = (this._tickIndex + 1) % this._tickDurations.length; + this._tickCount = Math.min(this._tickCount + 1, this._tickDurations.length); + this._totalTicks++; + + if (durationMs > this._maxTickMs) { + this._maxTickMs = durationMs; + } + + if (durationMs > this._tickBudgetMs) { + this._ticksOverBudget++; + } + + const heapUsedMb = process.memoryUsage().heapUsed / 1048576; + + const report: TickReport = { + tick: this._currentTick, + durationMs, + budgetMs: this._tickBudgetMs, + budgetPercent: (durationMs / this._tickBudgetMs) * 100, + phases: { ...this._currentPhases }, + entityCount: this._currentEntityCount, + playerCount: this._currentPlayerCount, + heapUsedMb, + }; + + this.emit(PerformanceMonitorEvent.TICK_REPORT, report); + + if (durationMs > this._spikeThresholdMs) { + this.emit(PerformanceMonitorEvent.SPIKE_DETECTED, report); + } + } + + public recordEntityCost(entityId: number, name: string, tickMs: number): void { + this._entityCosts.set(entityId, { tickMs, name }); + } + + public getEntityCosts(): Map { + return new Map(this._entityCosts); + } + + public getSnapshot(): PerformanceSnapshot { + const mem = process.memoryUsage(); + const tickSamples = this._getTickSamples(); + const sorted = tickSamples.slice().sort((a, b) => a - b); + + return { + uptimeMs: performance.now() - this._startTime, + tickRate: 60, + avgTickMs: sorted.length > 0 ? sorted.reduce((a, b) => a + b, 0) / sorted.length : 0, + maxTickMs: this._maxTickMs, + p95TickMs: sorted.length > 0 ? sorted[Math.floor(sorted.length * 0.95)] : 0, + p99TickMs: sorted.length > 0 ? sorted[Math.floor(sorted.length * 0.99)] : 0, + ticksOverBudget: this._ticksOverBudget, + totalTicks: this._totalTicks, + budgetMs: this._tickBudgetMs, + operations: this._getOperationStats(), + memory: { + heapUsedMb: mem.heapUsed / 1048576, + heapTotalMb: mem.heapTotal / 1048576, + rssMb: mem.rss / 1048576, + }, + }; + } + + public resetStats(): void { + this._tickIndex = 0; + this._tickCount = 0; + this._ticksOverBudget = 0; + this._maxTickMs = 0; + this._totalTicks = 0; + this._operations.clear(); + this._entityCosts.clear(); + } + + private _recordOperation(name: string, durationMs: number): void { + let acc = this._operations.get(name); + + if (!acc) { + acc = { + count: 0, + totalMs: 0, + minMs: Infinity, + maxMs: 0, + lastMs: 0, + samples: new Float64Array(1000), + sampleIndex: 0, + sampleCount: 0, + }; + this._operations.set(name, acc); + } + + acc.count++; + acc.totalMs += durationMs; + acc.lastMs = durationMs; + + if (durationMs < acc.minMs) acc.minMs = durationMs; + if (durationMs > acc.maxMs) acc.maxMs = durationMs; + + acc.samples[acc.sampleIndex] = durationMs; + acc.sampleIndex = (acc.sampleIndex + 1) % acc.samples.length; + acc.sampleCount = Math.min(acc.sampleCount + 1, acc.samples.length); + } + + private _getTickSamples(): number[] { + if (this._tickCount === 0) return []; + + const result: number[] = []; + + for (let i = 0; i < this._tickCount; i++) { + result.push(this._tickDurations[i]); + } + + return result; + } + + private _getOperationStats(): Record { + const result: Record = {}; + + for (const [name, acc] of this._operations) { + const samples: number[] = []; + + for (let i = 0; i < acc.sampleCount; i++) { + samples.push(acc.samples[i]); + } + + samples.sort((a, b) => a - b); + + result[name] = { + count: acc.count, + totalMs: acc.totalMs, + avgMs: acc.count > 0 ? acc.totalMs / acc.count : 0, + minMs: acc.minMs === Infinity ? 0 : acc.minMs, + maxMs: acc.maxMs, + lastMs: acc.lastMs, + p50Ms: samples.length > 0 ? samples[Math.floor(samples.length * 0.5)] : 0, + p95Ms: samples.length > 0 ? samples[Math.floor(samples.length * 0.95)] : 0, + p99Ms: samples.length > 0 ? samples[Math.floor(samples.length * 0.99)] : 0, + }; + } + + return result; + } +} diff --git a/server/src/metrics/Telemetry.ts b/server/src/metrics/Telemetry.ts index 7cf81a8b..fe37e1db 100644 --- a/server/src/metrics/Telemetry.ts +++ b/server/src/metrics/Telemetry.ts @@ -1,4 +1,5 @@ import * as Sentry from '@sentry/node'; +import PerformanceMonitor from '@/metrics/PerformanceMonitor'; import { SDK_VERSION } from '@/networking/WebServer'; /** @@ -222,15 +223,31 @@ export default class Telemetry { * **Category:** Telemetry */ public static startSpan(options: TelemetrySpanOptions, callback: (span?: Sentry.Span) => T): T { + const perfMon = PerformanceMonitor.instance; + + if (perfMon.isEnabled) { + if (Sentry.isInitialized()) { + return perfMon.measure(options.operation, () => + Sentry.startSpan({ + attributes: options.attributes, + name: options.operation, + op: options.operation, + }, callback), + ); + } + + return perfMon.measure(options.operation, () => callback()); + } + if (Sentry.isInitialized()) { return Sentry.startSpan({ attributes: options.attributes, name: options.operation, op: options.operation, }, callback); - } else { - return callback(); } + + return callback(); } /** diff --git a/server/src/worlds/WorldLoop.ts b/server/src/worlds/WorldLoop.ts index 3e6c90ca..162e4a1d 100644 --- a/server/src/worlds/WorldLoop.ts +++ b/server/src/worlds/WorldLoop.ts @@ -1,5 +1,6 @@ import ErrorHandler from '@/errors/ErrorHandler'; import EventRouter from '@/events/EventRouter'; +import PerformanceMonitor from '@/metrics/PerformanceMonitor'; import PlayerManager from '@/players/PlayerManager'; import Telemetry, { TelemetrySpanOperation } from '@/metrics/Telemetry'; import Ticker from '@/shared/classes/Ticker'; @@ -153,6 +154,16 @@ export default class WorldLoop extends EventRouter { }); const tickStart = performance.now(); + const perfMon = PerformanceMonitor.instance; + const profiling = perfMon.isEnabled; + + if (profiling) { + perfMon.beginTick( + this._currentTick, + this._world.entityManager.entityCount, + PlayerManager.instance.playerCount, + ); + } Telemetry.startSpan({ operation: TelemetrySpanOperation.WORLD_TICK, @@ -167,25 +178,39 @@ export default class WorldLoop extends EventRouter { worldLoopTick: this._currentTick, }, }, () => { + let phaseStart: number; + + phaseStart = profiling ? performance.now() : 0; Telemetry.startSpan({ operation: TelemetrySpanOperation.ENTITIES_TICK, }, () => this._world.entityManager.tickEntities(tickDeltaMs)); - + if (profiling) perfMon.recordPhase('entities_tick', performance.now() - phaseStart); + + phaseStart = profiling ? performance.now() : 0; Telemetry.startSpan({ operation: TelemetrySpanOperation.SIMULATION_STEP, }, () => this._world.simulation.step(tickDeltaMs)); - + if (profiling) perfMon.recordPhase('simulation_step', performance.now() - phaseStart); + + phaseStart = profiling ? performance.now() : 0; Telemetry.startSpan({ operation: TelemetrySpanOperation.ENTITIES_EMIT_UPDATES, }, () => this._world.entityManager.checkAndEmitUpdates()); - + if (profiling) perfMon.recordPhase('entities_emit_updates', performance.now() - phaseStart); + if (this._world.networkSynchronizer.shouldSynchronize()) { + phaseStart = profiling ? performance.now() : 0; Telemetry.startSpan({ operation: TelemetrySpanOperation.NETWORK_SYNCHRONIZE, }, () => this._world.networkSynchronizer.synchronize()); + if (profiling) perfMon.recordPhase('network_synchronize', performance.now() - phaseStart); } }); + if (profiling) { + perfMon.endTick(); + } + this._currentTick++; this.emitWithWorld(this._world, WorldLoopEvent.TICK_END, { diff --git a/server/src/worlds/entities/EntityManager.ts b/server/src/worlds/entities/EntityManager.ts index 707cd745..58021b68 100644 --- a/server/src/worlds/entities/EntityManager.ts +++ b/server/src/worlds/entities/EntityManager.ts @@ -1,4 +1,5 @@ import ErrorHandler from '@/errors/ErrorHandler'; +import PerformanceMonitor from '@/metrics/PerformanceMonitor'; import PlayerEntity from '@/worlds/entities/PlayerEntity'; import type Entity from '@/worlds/entities/Entity'; import type Player from '@/players/Player'; @@ -214,8 +215,17 @@ export default class EntityManager { /** @internal */ public tickEntities(tickDeltaMs: number): void { + const perfMon = PerformanceMonitor.instance; + const entityProfiling = perfMon.isEntityProfilingEnabled; + for (const entity of this._activeEntities) { - entity.tick(tickDeltaMs); + if (entityProfiling) { + const start = performance.now(); + entity.tick(tickDeltaMs); + perfMon.recordEntityCost(entity.id ?? 0, entity.name, performance.now() - start); + } else { + entity.tick(tickDeltaMs); + } } } From 74ed819a96b5d04b35f6ccfc61da04eaddb7ce3b Mon Sep 17 00:00:00 2001 From: web3dev1337 <160291380+web3dev1337@users.noreply.github.com> Date: Thu, 5 Mar 2026 16:57:45 +1100 Subject: [PATCH 04/40] chore: add perf final report + clean up notes --- CLAUDE.md | 2 +- CODEBASE_DOCUMENTATION.md | 2 +- README.md | 2 +- ai-memory/docs/perf-final-2026-03-05/FINAL.md | 451 ++++++++++++++++++ .../SYNTHESIS-perf-framework-spec.md | 0 .../headless-automation-research.md | 0 .../hyfire2-feature-perf-branches.md | 0 .../hyfire2-master-perf-code.md | 0 .../hyfire2-perf-analysis-branches.md | 0 .../hyfire2-perf-fix-branches.md | 0 .../hytopia-sdk-perf-systems.md | 0 .../raw/COLLIDER_ARCHITECTURE_RESEARCH.md | 0 ...NTITY_SYNC_DELTA_COMPRESSION_DESIGN (1).md | 0 .../ENTITY_SYNC_DELTA_COMPRESSION_DESIGN.md | 0 .../GREEDY_MESHING_IMPLEMENTATION_GUIDE.md | 0 .../raw/MAP_ENGINE_ARCHITECTURE (1).md | 0 .../raw/MAP_ENGINE_ARCHITECTURE.md | 0 .../raw/MINECRAFT_ARCHITECTURE_RESEARCH.md | 0 .../raw/NETWORK_PROTOCOL_2026_RESEARCH.md | 0 ...MOOTH_WORLD_STREAMING_REFACTOR_PLAN (1).md | 0 .../SMOOTH_WORLD_STREAMING_REFACTOR_PLAN.md | 0 .../raw/VOXEL_ENGINE_2026_MASTER_PLAN (1).md | 0 .../raw/VOXEL_ENGINE_2026_MASTER_PLAN.md | 0 .../raw/VOXEL_PERFORMANCE_MASTER_PLAN.md | 0 .../raw/VOXEL_RENDERING_RESEARCH.md | 0 .../init.md | 0 .../progress.md | 0 server/src/metrics/CpuProfiler.ts | 8 +- server/src/metrics/Monitor.ts | 79 +-- server/src/metrics/PerformanceMonitor.ts | 2 +- 30 files changed, 513 insertions(+), 33 deletions(-) create mode 100644 ai-memory/docs/perf-final-2026-03-05/FINAL.md rename ai-memory/docs/{perf-amateur-notes-2026-03-05 => perf-framework-research-2026-03-05}/SYNTHESIS-perf-framework-spec.md (100%) rename ai-memory/docs/{perf-amateur-notes-2026-03-05 => perf-framework-research-2026-03-05}/headless-automation-research.md (100%) rename ai-memory/docs/{perf-amateur-notes-2026-03-05 => perf-framework-research-2026-03-05}/hyfire2-feature-perf-branches.md (100%) rename ai-memory/docs/{perf-amateur-notes-2026-03-05 => perf-framework-research-2026-03-05}/hyfire2-master-perf-code.md (100%) rename ai-memory/docs/{perf-amateur-notes-2026-03-05 => perf-framework-research-2026-03-05}/hyfire2-perf-analysis-branches.md (100%) rename ai-memory/docs/{perf-amateur-notes-2026-03-05 => perf-framework-research-2026-03-05}/hyfire2-perf-fix-branches.md (100%) rename ai-memory/docs/{perf-amateur-notes-2026-03-05 => perf-framework-research-2026-03-05}/hytopia-sdk-perf-systems.md (100%) rename ai-memory/docs/{perf-amateur-notes-2026-03-05 => perf-framework-research-2026-03-05}/raw/COLLIDER_ARCHITECTURE_RESEARCH.md (100%) rename ai-memory/docs/{perf-amateur-notes-2026-03-05 => perf-framework-research-2026-03-05}/raw/ENTITY_SYNC_DELTA_COMPRESSION_DESIGN (1).md (100%) rename ai-memory/docs/{perf-amateur-notes-2026-03-05 => perf-framework-research-2026-03-05}/raw/ENTITY_SYNC_DELTA_COMPRESSION_DESIGN.md (100%) rename ai-memory/docs/{perf-amateur-notes-2026-03-05 => perf-framework-research-2026-03-05}/raw/GREEDY_MESHING_IMPLEMENTATION_GUIDE.md (100%) rename ai-memory/docs/{perf-amateur-notes-2026-03-05 => perf-framework-research-2026-03-05}/raw/MAP_ENGINE_ARCHITECTURE (1).md (100%) rename ai-memory/docs/{perf-amateur-notes-2026-03-05 => perf-framework-research-2026-03-05}/raw/MAP_ENGINE_ARCHITECTURE.md (100%) rename ai-memory/docs/{perf-amateur-notes-2026-03-05 => perf-framework-research-2026-03-05}/raw/MINECRAFT_ARCHITECTURE_RESEARCH.md (100%) rename ai-memory/docs/{perf-amateur-notes-2026-03-05 => perf-framework-research-2026-03-05}/raw/NETWORK_PROTOCOL_2026_RESEARCH.md (100%) rename ai-memory/docs/{perf-amateur-notes-2026-03-05 => perf-framework-research-2026-03-05}/raw/SMOOTH_WORLD_STREAMING_REFACTOR_PLAN (1).md (100%) rename ai-memory/docs/{perf-amateur-notes-2026-03-05 => perf-framework-research-2026-03-05}/raw/SMOOTH_WORLD_STREAMING_REFACTOR_PLAN.md (100%) rename ai-memory/docs/{perf-amateur-notes-2026-03-05 => perf-framework-research-2026-03-05}/raw/VOXEL_ENGINE_2026_MASTER_PLAN (1).md (100%) rename ai-memory/docs/{perf-amateur-notes-2026-03-05 => perf-framework-research-2026-03-05}/raw/VOXEL_ENGINE_2026_MASTER_PLAN.md (100%) rename ai-memory/docs/{perf-amateur-notes-2026-03-05 => perf-framework-research-2026-03-05}/raw/VOXEL_PERFORMANCE_MASTER_PLAN.md (100%) rename ai-memory/docs/{perf-amateur-notes-2026-03-05 => perf-framework-research-2026-03-05}/raw/VOXEL_RENDERING_RESEARCH.md (100%) rename ai-memory/feature/{perf-notes-amateur-review-24a295d => perf-notes-external-review-24a295d}/init.md (100%) rename ai-memory/feature/{perf-notes-amateur-review-24a295d => perf-notes-external-review-24a295d}/progress.md (100%) diff --git a/CLAUDE.md b/CLAUDE.md index 3a1ae8a1..d672221a 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -20,7 +20,7 @@ HYTOPIA is a multiplayer voxel game engine monorepo. The **server** (TypeScript/ - **Physics**: Rapier3D (`@dimforge/rapier3d-simd-compat`) at 60 Hz, default gravity `y = -32` - **Networking**: WebTransport (QUIC) preferred, WebSocket fallback. Packets serialized with msgpackr, large payloads gzip-compressed - **Protocol**: `protocol/` defines all packet schemas (AJV-validated). Published as `@hytopia.com/server-protocol` -- **Rendering**: Three.js `WebGLRenderer` + `MeshBasicMaterial` (no dynamic lights). Post-processing: SMAA, bloom, outline. Chunk meshes built in Web Worker via greedy meshing + AO +- **Rendering**: Three.js `WebGLRenderer` + `MeshBasicMaterial` (no dynamic lights). Post-processing: SMAA, bloom, outline. Chunk meshes built in a Web Worker with face culling + AO (no greedy quad merging) - **Persistence**: `@hytopia.com/save-states` for player/global KV data - **Singleton pattern**: Most server systems use `ClassName.instance`; client systems owned by `Game` singleton diff --git a/CODEBASE_DOCUMENTATION.md b/CODEBASE_DOCUMENTATION.md index d19d5bf8..143c5d64 100644 --- a/CODEBASE_DOCUMENTATION.md +++ b/CODEBASE_DOCUMENTATION.md @@ -423,4 +423,4 @@ zombies-fps/ - Zombie FPS - **Dual transport** — WebTransport (QUIC) preferred, WebSocket fallback. Reliable stream + unreliable datagrams - **msgpackr serialization** — All packets serialized with msgpackr, large payloads gzip-compressed - **60 Hz physics / 30 Hz network** — Server physics ticks at 60 Hz, network sync flushes every 2 ticks -- **Web Worker meshing** — Client offloads greedy meshing + AO to a dedicated Web Worker +- **Web Worker meshing** — Client offloads face-culling meshing + AO to a dedicated Web Worker (no greedy quad merging) diff --git a/README.md b/README.md index 30d19f0f..66d9feed 100644 --- a/README.md +++ b/README.md @@ -48,7 +48,7 @@ The `Game` singleton owns all subsystem managers. Key systems: |---|---| | `NetworkManager` | WebTransport (HTTP/3) with WebSocket fallback. Deserializes msgpack packets and dispatches typed events | | `Renderer` | Three.js `WebGLRenderer` + `EffectComposer`. Post-processing: SMAA, selective bloom, outline pass, `CSS2DRenderer` for in-world UI | -| `ChunkMeshManager` + `ChunkWorkerClient` | Voxel mesh generation via greedy meshing with ambient occlusion, offloaded to a Web Worker | +| `ChunkMeshManager` + `ChunkWorkerClient` | Voxel mesh generation with face culling + ambient occlusion, offloaded to a Web Worker (no greedy quad merging) | | `EntityManager` | Entity lifecycle and GLTF model rendering | | `InputManager` + `MobileManager` | Keyboard/mouse/gamepad input and touch/joystick for mobile | | `UIManager` | HTML/CSS overlay UI system for game developer UIs and in-world `SceneUI` elements | diff --git a/ai-memory/docs/perf-final-2026-03-05/FINAL.md b/ai-memory/docs/perf-final-2026-03-05/FINAL.md new file mode 100644 index 00000000..24fd8f4c --- /dev/null +++ b/ai-memory/docs/perf-final-2026-03-05/FINAL.md @@ -0,0 +1,451 @@ +# HYTOPIA Performance (Client + Server) — Consolidated Findings (2026-03-05) + +Base code reference for all “Verified” statements in this report: + +- `origin/master` @ `24a295d` (2026-03-05) +- Repo: `web3dev1337/hytopia-source` (fork of `hytopiagg/hytopia-source`) + +This is a synthesis of: + +- **Code-verified findings** (client, server, protocol) +- **Your open performance PRs** on the fork +- **Imported third‑party notes** from Windows Downloads (`/mnt/c/Users/AB/Downloads`) captured on **2026-03-05 14:09–14:25** (local time) and stored under: + - `ai-memory/docs/perf-external-notes-2026-03-05/raw/` + - Cross-check doc: `ai-memory/docs/perf-external-notes-2026-03-05/FINDINGS.md` + +--- + +## Executive Summary (What’s Actually Hurting Performance Today) + +### P0 (highest impact, verified in code) + +1) **Server → client chunk delivery is bursty and unbounded** + - On **player join/reconnect**, the server queues **every chunk in the world** for that player (`NetworkSynchronizer._onPlayerJoinedWorld` loops `chunkLattice.getAllChunks()`), then sends them as chunk packets with **no pacing/segmentation**. + - Every chunk is serialized with `Array.from(chunk.blocks)` (4096 numbers) which is extremely allocation-heavy and inflates payload sizes. + +2) **Client chunk meshing is “per visible face”, not greedy** + - Face culling exists, but there is **no quad merging / greedy meshing**, so vertex counts are much higher than necessary in common terrain. + - This increases worker CPU, transfer sizes, main-thread mesh apply costs, GPU memory, and draw overhead. + +3) **Client network decoding can block the main thread** + - Incoming packets are synchronously gzip-decompressed (`gunzipSync`) and msgpack-decoded on the main thread. + - Large chunk packets + sync decompression/decoding are a direct path to visible stutter. + +4) **Client creates/destroys GPU geometry frequently** + - Chunk batch updates replace `BufferGeometry` objects and dispose old ones rather than updating attributes in place (no pooling/reuse). + +### P1 (medium/high impact, verified in code) + +5) **Entity sync bandwidth is larger than it needs to be** + - Entity pos/rot updates are float vectors/quaternions (float32) with no quantization or delta compression. + - The server already routes pos/rot‑only updates to the unreliable channel, which is good, but payload size is still high. + +6) **Protocol + serializer choices force avoidable copying** + - `protocol/schemas/Chunk.ts`’s AJV JSON schema only accepts `b` as `number[]` (4096 entries), so the server serializes chunk blocks via `Array.from`. + - The client then always does `new Uint8Array(chunk.b)`, which **copies** again. + +### P2 (lower impact or situational, verified in code) + +7) **View-distance culling work is O(batches) every frame** + - Each frame, the client iterates all batch IDs and computes distances to decide scene membership. + +8) **MEDIUM/LOW presets have no FPS cap; DPR is unbounded** + - Only `POWER_SAVING` has an `fpsCap` on `master`. + - Renderer pixel ratio uses `window.devicePixelRatio * resolution.multiplier` with no cap. + +--- + +## Verified Issues (with Evidence + Recommended Fixes) + +### 1) Server chunk sync: “full world on join” + no pacing (P0) + +**Evidence (verified):** + +- `server/src/networking/NetworkSynchronizer.ts` + - `_onPlayerJoinedWorld`: queues chunk sync for **all chunks**: + - `for (const chunk of this._world.chunkLattice.getAllChunks()) { ... chunk.serialize() ... }` + - `_collectSyncToOutboundPackets`: turns queued chunk syncs into one packet per sync without pacing: + - `protocol.createPacket(..., sync.valuesArray, tick)` + +**Impact:** + +- Server CPU + memory spikes on join/reconnect (serialize + validate + msgpack pack + gzip). +- Client stutters on receipt (sync gunzip + unpack + per-chunk registry + worker messages + mesh builds). +- Networking bursts can increase packet loss / HOL blocking (and increases likelihood of gzip work). + +**Fix direction:** + +- Implement **per-player chunk streaming**: + - Maintain `playerVisibleChunkSet` (or batch set) derived from player position + view distance. + - Queue only *newly visible* chunks; send removals when leaving range. +- Add **pacing/segmentation**: + - Enforce a per-player per-tick budget (chunks, bytes, or ms). + - Never enqueue “all chunks” into one `Chunks` packet; emit multiple smaller packets across ticks. + +**Related (your PRs):** + +- None directly address server chunk pacing today. +- PR #6 (map compression) reduces disk/map load size but does not solve network pacing. + +**Related (external notes):** + +- `VOXEL_PERFORMANCE_MASTER_PLAN.md`, `SMOOTH_WORLD_STREAMING_REFACTOR_PLAN.md` correctly push “chunk send pacing” as a requirement, but reference constants/systems that do not exist on `master`. + +--- + +### 2) Server chunk serialization allocates huge arrays (P0) + +**Evidence (verified):** + +- `server/src/networking/Serializer.ts` + - `serializeChunk()` does: + - `b: Array.from(chunk.blocks)` + - `r: Array.from(chunk.blockRotations).flatMap(...)` + +**Impact:** + +- For each chunk sent, allocates a 4096-element `number[]` (and then msgpack serializes it). +- For join sync, this multiplies by total chunk count and happens per joining player. + +**Fix direction (high leverage):** + +- Align protocol schema + serialization to allow `Uint8Array` “bin” payloads: + - Update protocol schema validation to accept `Uint8Array` for `ChunkSchema.b` (and ideally send it). + - Update client deserializer to **avoid copying** when `b` is already `Uint8Array`. + - Goal: `ChunkSchema.b` transmitted as msgpack “bin” (compact, fast) instead of an array of numbers. + +--- + +### 3) Server gzip is synchronous in the hot path (P0/P1) + +**Evidence (verified):** + +- `server/src/networking/Connection.ts` + - `Connection.serializePackets()` uses `gzipSync` for payloads > 64KB. + +**Impact:** + +- Compression runs on the server main thread, causing tick spikes during large chunk flushes. + +**Fix direction:** + +- Reduce the need for gzip by shrinking payloads first (typed arrays for chunks, pacing). +- If gzip remains necessary: + - Consider async compression (worker thread) or a different framing strategy. + +--- + +### 4) Server validates packets with AJV before every send (P1) + +**Evidence (verified):** + +- `server/src/networking/Connection.ts` + - `serializePackets()` calls `protocol.isValidPacket(packet)` for every packet, every send. + +**Impact:** + +- AJV validation of large payload packets (especially chunks) is CPU-expensive. + +**Fix direction (safer than “turn it off”):** + +- Cache validation results per packet object identity for the duration of a sync tick (similar to the serialization cache). +- Consider skipping deep validation for the heaviest, most-constructed packets in production builds, but only with strong safeguards (tests, feature flag). + +--- + +### 5) Client chunk meshing lacks greedy quad merging (P0) + +**Evidence (verified):** + +- `client/src/workers/ChunkWorker.ts` + - Per block → per face → if visible → emit quad. + - Face culling exists (neighbor check); no 2D “merge rectangles” pass. +- External note cross-check: `ai-memory/docs/perf-external-notes-2026-03-05/FINDINGS.md` + +**Impact:** + +- Greatly increases: + - Worker compute time + - Geometry transfer sizes + - Main thread BufferGeometry creation cost + - GPU vertex processing and memory pressure + +**Fix direction:** + +- Implement greedy meshing for opaque solids first: + - See external guide: `ai-memory/docs/perf-external-notes-2026-03-05/raw/GREEDY_MESHING_IMPLEMENTATION_GUIDE.md` + - Keep transparent/liquid/trimesh paths per-face initially if needed. + +**Notes on third-party docs:** + +- The greedy meshing guidance is generally sound, but some example metrics and some “Implemented (Hytopia)” claims in `VOXEL_RENDERING_RESEARCH.md` do **not** match this repo’s `master`. + +--- + +### 6) Client builds new BufferGeometry per update (P0/P1) + +**Evidence (verified):** + +- `client/src/chunks/ChunkMeshManager.ts` + - `_createOrUpdateMesh()` always creates `new BufferGeometry()`. + - On update, disposes old geometry and swaps in the new one. + +**Impact:** + +- GPU buffer churn + JS allocations during chunk streaming and block edits. + +**Fix direction:** + +- Reuse geometries: + - Keep one `BufferGeometry` per batch mesh and update `BufferAttribute` arrays in place. + - If size changes frequently, pool common sizes or chunk updates into fixed “slabs”. + +--- + +### 7) Client network decode is synchronous on main thread (P0) + +**Evidence (verified):** + +- `client/src/network/NetworkManager.ts` + - `gunzipSync` (fflate) used for gzip payloads before `packr.unpack`. + +**Impact:** + +- Large chunk packets can block the render thread causing frame hitches. + +**Fix direction:** + +- Move decompression + unpacking off the main thread (net worker). +- Reduce/avoid gzip by shrinking chunk payloads (typed arrays, pacing). + +--- + +### 8) Client deserialization does extra copying + allocations (P1) + +**Evidence (verified):** + +- `client/src/network/Deserializer.ts` + - `deserializeChunk`: `blocks: chunk.b ? new Uint8Array(chunk.b) : undefined` → always copies. + - `deserializeVector` / `deserializeQuaternion`: allocate new objects per update. + +**Impact:** + +- Additional CPU/GC pressure on the main thread during frequent updates. + +**Fix direction:** + +- Avoid copying `Uint8Array` when already typed. +- For hot-path entity updates, consider: + - Updating existing entity objects in place with primitives/typed arrays + - A new bulk packet format (structure-of-arrays) for pos/rot + +--- + +### 9) Client view-distance culling does per-frame full scans (P2) + +**Evidence (verified):** + +- `client/src/chunks/ChunkManager.ts` + - Each `RendererEventType.Animate` iterates all batch IDs and computes distance. + - Comment notes it may be costly and suggests caching/partitioning. + +**Impact:** + +- Becomes noticeable as batch count grows (CPU time per frame). + +**Fix direction:** + +- Cache visibility and recompute only when: + - camera moves across coarse “cells” + - settings change (view distance) + - batch set changes +- Your PR #9 (upstream mirror) targets this area. + +--- + +### 10) FPS cap + DPR cap missing on `master` (P2 quick wins) + +**Evidence (verified):** + +- `client/src/settings/SettingsManager.ts` + - Only `POWER_SAVING` has `fpsCap: 30`. + - `MEDIUM` / `LOW` have none. +- `client/src/core/Renderer.ts` + - pixel ratio uses `window.devicePixelRatio * resolution.multiplier` with no cap. + +**Fix direction (already in your PRs):** + +- PR #4: adds `fpsCap: 60` for `MEDIUM`/`LOW`. +- PR #5: caps mobile `devicePixelRatio` before applying multiplier. + +--- + +## Entity Sync: What’s Right + What’s Missing (Verified) + +### What’s already good + +- `server/src/networking/NetworkSynchronizer.ts`: + - Pos/rot-only entity updates are identified and sent on the **unreliable** channel. + - This reduces HOL blocking under packet loss. + +### What’s missing (main opportunities) + +- No quantized or delta formats exist in the protocol today (`protocol/schemas/Entity.ts` only has `p` and `r`). +- No distance-based sync LOD. + +### External note accuracy + +- `ENTITY_SYNC_DELTA_COMPRESSION_DESIGN.md` contains good direction (quantize/distance-LOD), but its **int16 range math is wrong** when using a 1/256 quantization factor. + - If you store `round(x * 256)` in int16, the representable range is roughly **±128 blocks**, not ±32768. + - If you want large-world range and fine precision, use chunk-relative encoding and/or wider ints (int32) and/or a different quant. + +--- + +## Colliders / Physics: What’s Real vs. What’s Assumed + +### Verified current collider model + +- `server/src/worlds/blocks/ChunkLattice.ts` + - Maintains colliders per **block type** (voxel or trimesh). + - Voxel updates use `collider.setVoxel(...)` + `propagateVoxelChange(...)`. + - Trimesh block types trigger full collider rebuild on changes (`_recreateTrimeshCollider`). +- `server/src/worlds/physics/Collider.ts` + - `combineVoxelStates` / `propagateVoxelChange` are Rapier-specific voxel-collider edge/transition requirements, not “merge placements” loops. + +### What the external notes get right + +- Trimesh rebuilds can be expensive as block counts grow. +- “Collider locality” (only simulate nearby blocks) is a valid scaling approach for very large worlds, but it is **not implemented** in this repo today. + +### What the external notes get wrong (relative to this repo) + +- Multiple notes reference systems/constants that do not exist on `master`: + - `CHUNKS_PER_TICK`, `MAX_CHUNKS_PER_SYNC`, `TerrainWorkerPool`, `PersistenceChunkProvider`, `RegionFileFormat.ts`, `COLLIDER_MAX_CHUNK_DISTANCE`, `processPendingColliderChunks`, etc. + +--- + +## Your Performance PRs (Fork) — What They Address + +All PRs below are on `web3dev1337/hytopia-source` as of **2026-03-05**. + +- **#4** “cap FPS on MEDIUM/LOW presets” (OPEN) — adds `fpsCap: 60` to `MEDIUM`/`LOW`. +- **#5** “cap mobile devicePixelRatio” (OPEN) — clamps mobile DPR before applying resolution multiplier. +- **#6** “compressed world maps” (OPEN) — reduces map disk size + load time for JSON-map games; not a direct fix for chunk networking. +- **#7–#9** upstream mirrors (OPEN) — prediction/camera smoothing/client perf pass (chunk visibility caching + outline improvements in #9). +- **#2–#3** analysis docs (OPEN) — large audits and device-specific performance writeups. + +This consolidated report focuses on the *root* hot paths on `master` (#4/#5/#9/#6 are relevant solutions for specific slices). + +--- + +## Third-Party Notes: What’s Correct vs Incorrect (Index) + +All files referenced below are imported under `ai-memory/docs/perf-external-notes-2026-03-05/raw/`. + +### Mostly correct about THIS repo (good signal) + +- `MAP_ENGINE_ARCHITECTURE.md` — accurately describes the JSON map → `World.loadMap` → `ChunkLattice` → `NetworkSynchronizer` flow. +- `GREEDY_MESHING_IMPLEMENTATION_GUIDE.md` — sound generic greedy meshing guidance (implementation work remains). +- `NETWORK_PROTOCOL_2026_RESEARCH.md` — good general direction, but contains quantization math errors (see above). + +### Mixed (some correct observations + some incorrect assumptions) + +- `VOXEL_RENDERING_RESEARCH.md` — correct on face culling present / greedy meshing absent; incorrect “Implemented (Hytopia)” section that does not match `master`. +- `COLLIDER_ARCHITECTURE_RESEARCH.md` — correct high-level collider structure (per block type); incorrect about some “critical path” details and assumes locality/pipelines not present. +- `ENTITY_SYNC_DELTA_COMPRESSION_DESIGN.md` — correct about current entity sync shape; useful ideas; incorrect numeric range claims for int16@1/256. + +### Mostly not about THIS repo (assumes systems not present) + +- `VOXEL_PERFORMANCE_MASTER_PLAN.md` +- `SMOOTH_WORLD_STREAMING_REFACTOR_PLAN.md` +- `VOXEL_ENGINE_2026_MASTER_PLAN.md` +- `MINECRAFT_ARCHITECTURE_RESEARCH.md` (Minecraft info is fine; claims about Hytopia’s procedural systems don’t match this repo) + +--- + +## Recommended Plan (Grounded in Current Code) + +### Phase A — immediate wins (days) + +1) Merge **PR #4** (FPS cap) and **PR #5** (mobile DPR cap). +2) Stop copying chunk blocks twice: + - Update client `Deserializer.deserializeChunk` to avoid `new Uint8Array(...)` when `b` is already `Uint8Array`. + - Update protocol + server serializer to send chunk blocks as `Uint8Array` (bin). +3) Implement chunk pacing on join: + - Replace “queue all chunks” join behavior with a time/byte budget. + +### Phase B — largest structural wins (1–2 weeks) + +4) Implement per-player chunk streaming by view distance (server side). +5) Move client decompress+unpack off main thread (or reduce gzip needs enough that it rarely triggers). + +### Phase C — rendering ceiling (2–4+ weeks) + +6) Implement greedy meshing for opaque solids in `ChunkWorker`. +7) Geometry reuse / pooling in `ChunkMeshManager`. +8) Improve view-distance culling algorithm (or merge upstream PR #11 mirror if acceptable). + +--- + +## Where to Find the “Proof / Verification” Doc + +- Verification of external-note claims against `origin/master` lives in: + - `ai-memory/docs/perf-external-notes-2026-03-05/FINDINGS.md` + +--- + +## Performance Framework (this PR branch) — Review + Merge Blockers + +This section reviews the “performance framework” implementation added in PR #11 (server module + `packages/perf-tools/` + GitHub Actions). + +### What’s real and useful today (server-side) + +- **`PerformanceMonitor` exists and is integrated** into the tick loop: + - `server/src/metrics/PerformanceMonitor.ts` implements tick history, per-operation stats (p50/p95/p99), spike detection, and periodic snapshots. + - `server/src/worlds/WorldLoop.ts` calls `beginTick()` / `recordPhase()` / `endTick()` when enabled. +- **Decorators/helpers exist**: + - `server/src/metrics/Monitor.ts` adds `@Monitor` / `@MonitorClass` + `monitorBlock` helpers. +- **CPU/heap capture exists (debug tooling)**: + - `server/src/metrics/CpuProfiler.ts` uses `node:inspector` to capture `.cpuprofile` and heap snapshots. +- **Bots exist** (useful for stress testing once the harness is wired): + - `server/src/bots/*` exports `BotManager`, `BotPlayer`, and behaviors. + +### What’s missing / incorrect vs the PR summary (must fix) + +1) **Operation timings are currently double-counted** + - When `PerformanceMonitor` is enabled, `Telemetry.startSpan()` wraps operations in `perfMon.measure(...)`. + - `WorldLoop` also calls `perfMon.recordPhase(...)` for the same operation names (`entities_tick`, `simulation_step`, `network_synchronize`, etc.). + - Result: per-operation percentiles/averages in `PerformanceMonitor` are inflated and misleading. + +2) **`NetworkMetrics` is not actually integrated** + - `server/src/metrics/NetworkMetrics.ts` is exported, but nothing calls `recordBytesSent/Received`, `recordPacketSent/Received`, etc. + - As written, it stays at zero unless a game manually wires it into networking. + +3) **`packages/perf-tools/` is not runnable end-to-end yet** + - **CI will fail immediately**: workflows run `npm ci` in `packages/perf-tools/`, but there is no `package-lock.json`. + - **CLI preset loading likely breaks at runtime**: uses `import.meta.dirname` (Node uses `import.meta.url` + `fileURLToPath`). + - **Scenario actions are placeholders**: `spawn_bots`, `load_map`, etc. only log “would execute via server API”. + - **Server metrics aren’t collected**: `MetricCollector` supports server snapshots, but the runner never pulls them from the server. + - **Client metrics assume missing instrumentation**: `HeadlessClient` reads `window.__HYTOPIA_PERF__`, which the client does not currently define. + +4) **The GitHub Actions workflows aren’t a “gate” yet** + - Bench steps are `continue-on-error: true`, and compare uses `|| true`, so regressions won’t fail the job even if the tooling worked. + - Baseline update also treats benchmark failures as non-fatal, which risks caching empty/invalid baselines. + +### Minimal path to make this framework usable + +If you want this PR to be mergeable as a framework (not just scaffolding), the smallest concrete checklist is: + +- Fix the double-counting: pick **one** source of truth (either `recordPhase` or `Telemetry.startSpan` → `perfMon.measure`) for operation timing. +- Wire `NetworkMetrics` into `server/src/networking/Connection.ts` and/or `NetworkSynchronizer.ts`. +- Make `perf-tools` installable and runnable in CI: + - add a lockfile and keep `npm ci`, or switch workflows to `npm install`. + - fix preset path resolution (`import.meta.url`). +- Define a real metrics channel: + - either expose `PerformanceMonitor.getSnapshot()` via an HTTP debug endpoint, or log JSON snapshots to stdout and parse them. + - add a client-side hook for `HeadlessClient` (even a minimal `window.__HYTOPIA_PERF__ = { fps, ... }` populated from existing managers). +- Make the workflows enforce regressions (remove `continue-on-error` / `|| true` once results are trustworthy). + +### Naming/hygiene + +- This branch contains an internal notes folder name that should be renamed to a neutral label before merging. diff --git a/ai-memory/docs/perf-amateur-notes-2026-03-05/SYNTHESIS-perf-framework-spec.md b/ai-memory/docs/perf-framework-research-2026-03-05/SYNTHESIS-perf-framework-spec.md similarity index 100% rename from ai-memory/docs/perf-amateur-notes-2026-03-05/SYNTHESIS-perf-framework-spec.md rename to ai-memory/docs/perf-framework-research-2026-03-05/SYNTHESIS-perf-framework-spec.md diff --git a/ai-memory/docs/perf-amateur-notes-2026-03-05/headless-automation-research.md b/ai-memory/docs/perf-framework-research-2026-03-05/headless-automation-research.md similarity index 100% rename from ai-memory/docs/perf-amateur-notes-2026-03-05/headless-automation-research.md rename to ai-memory/docs/perf-framework-research-2026-03-05/headless-automation-research.md diff --git a/ai-memory/docs/perf-amateur-notes-2026-03-05/hyfire2-feature-perf-branches.md b/ai-memory/docs/perf-framework-research-2026-03-05/hyfire2-feature-perf-branches.md similarity index 100% rename from ai-memory/docs/perf-amateur-notes-2026-03-05/hyfire2-feature-perf-branches.md rename to ai-memory/docs/perf-framework-research-2026-03-05/hyfire2-feature-perf-branches.md diff --git a/ai-memory/docs/perf-amateur-notes-2026-03-05/hyfire2-master-perf-code.md b/ai-memory/docs/perf-framework-research-2026-03-05/hyfire2-master-perf-code.md similarity index 100% rename from ai-memory/docs/perf-amateur-notes-2026-03-05/hyfire2-master-perf-code.md rename to ai-memory/docs/perf-framework-research-2026-03-05/hyfire2-master-perf-code.md diff --git a/ai-memory/docs/perf-amateur-notes-2026-03-05/hyfire2-perf-analysis-branches.md b/ai-memory/docs/perf-framework-research-2026-03-05/hyfire2-perf-analysis-branches.md similarity index 100% rename from ai-memory/docs/perf-amateur-notes-2026-03-05/hyfire2-perf-analysis-branches.md rename to ai-memory/docs/perf-framework-research-2026-03-05/hyfire2-perf-analysis-branches.md diff --git a/ai-memory/docs/perf-amateur-notes-2026-03-05/hyfire2-perf-fix-branches.md b/ai-memory/docs/perf-framework-research-2026-03-05/hyfire2-perf-fix-branches.md similarity index 100% rename from ai-memory/docs/perf-amateur-notes-2026-03-05/hyfire2-perf-fix-branches.md rename to ai-memory/docs/perf-framework-research-2026-03-05/hyfire2-perf-fix-branches.md diff --git a/ai-memory/docs/perf-amateur-notes-2026-03-05/hytopia-sdk-perf-systems.md b/ai-memory/docs/perf-framework-research-2026-03-05/hytopia-sdk-perf-systems.md similarity index 100% rename from ai-memory/docs/perf-amateur-notes-2026-03-05/hytopia-sdk-perf-systems.md rename to ai-memory/docs/perf-framework-research-2026-03-05/hytopia-sdk-perf-systems.md diff --git a/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/COLLIDER_ARCHITECTURE_RESEARCH.md b/ai-memory/docs/perf-framework-research-2026-03-05/raw/COLLIDER_ARCHITECTURE_RESEARCH.md similarity index 100% rename from ai-memory/docs/perf-amateur-notes-2026-03-05/raw/COLLIDER_ARCHITECTURE_RESEARCH.md rename to ai-memory/docs/perf-framework-research-2026-03-05/raw/COLLIDER_ARCHITECTURE_RESEARCH.md diff --git a/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/ENTITY_SYNC_DELTA_COMPRESSION_DESIGN (1).md b/ai-memory/docs/perf-framework-research-2026-03-05/raw/ENTITY_SYNC_DELTA_COMPRESSION_DESIGN (1).md similarity index 100% rename from ai-memory/docs/perf-amateur-notes-2026-03-05/raw/ENTITY_SYNC_DELTA_COMPRESSION_DESIGN (1).md rename to ai-memory/docs/perf-framework-research-2026-03-05/raw/ENTITY_SYNC_DELTA_COMPRESSION_DESIGN (1).md diff --git a/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/ENTITY_SYNC_DELTA_COMPRESSION_DESIGN.md b/ai-memory/docs/perf-framework-research-2026-03-05/raw/ENTITY_SYNC_DELTA_COMPRESSION_DESIGN.md similarity index 100% rename from ai-memory/docs/perf-amateur-notes-2026-03-05/raw/ENTITY_SYNC_DELTA_COMPRESSION_DESIGN.md rename to ai-memory/docs/perf-framework-research-2026-03-05/raw/ENTITY_SYNC_DELTA_COMPRESSION_DESIGN.md diff --git a/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/GREEDY_MESHING_IMPLEMENTATION_GUIDE.md b/ai-memory/docs/perf-framework-research-2026-03-05/raw/GREEDY_MESHING_IMPLEMENTATION_GUIDE.md similarity index 100% rename from ai-memory/docs/perf-amateur-notes-2026-03-05/raw/GREEDY_MESHING_IMPLEMENTATION_GUIDE.md rename to ai-memory/docs/perf-framework-research-2026-03-05/raw/GREEDY_MESHING_IMPLEMENTATION_GUIDE.md diff --git a/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/MAP_ENGINE_ARCHITECTURE (1).md b/ai-memory/docs/perf-framework-research-2026-03-05/raw/MAP_ENGINE_ARCHITECTURE (1).md similarity index 100% rename from ai-memory/docs/perf-amateur-notes-2026-03-05/raw/MAP_ENGINE_ARCHITECTURE (1).md rename to ai-memory/docs/perf-framework-research-2026-03-05/raw/MAP_ENGINE_ARCHITECTURE (1).md diff --git a/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/MAP_ENGINE_ARCHITECTURE.md b/ai-memory/docs/perf-framework-research-2026-03-05/raw/MAP_ENGINE_ARCHITECTURE.md similarity index 100% rename from ai-memory/docs/perf-amateur-notes-2026-03-05/raw/MAP_ENGINE_ARCHITECTURE.md rename to ai-memory/docs/perf-framework-research-2026-03-05/raw/MAP_ENGINE_ARCHITECTURE.md diff --git a/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/MINECRAFT_ARCHITECTURE_RESEARCH.md b/ai-memory/docs/perf-framework-research-2026-03-05/raw/MINECRAFT_ARCHITECTURE_RESEARCH.md similarity index 100% rename from ai-memory/docs/perf-amateur-notes-2026-03-05/raw/MINECRAFT_ARCHITECTURE_RESEARCH.md rename to ai-memory/docs/perf-framework-research-2026-03-05/raw/MINECRAFT_ARCHITECTURE_RESEARCH.md diff --git a/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/NETWORK_PROTOCOL_2026_RESEARCH.md b/ai-memory/docs/perf-framework-research-2026-03-05/raw/NETWORK_PROTOCOL_2026_RESEARCH.md similarity index 100% rename from ai-memory/docs/perf-amateur-notes-2026-03-05/raw/NETWORK_PROTOCOL_2026_RESEARCH.md rename to ai-memory/docs/perf-framework-research-2026-03-05/raw/NETWORK_PROTOCOL_2026_RESEARCH.md diff --git a/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/SMOOTH_WORLD_STREAMING_REFACTOR_PLAN (1).md b/ai-memory/docs/perf-framework-research-2026-03-05/raw/SMOOTH_WORLD_STREAMING_REFACTOR_PLAN (1).md similarity index 100% rename from ai-memory/docs/perf-amateur-notes-2026-03-05/raw/SMOOTH_WORLD_STREAMING_REFACTOR_PLAN (1).md rename to ai-memory/docs/perf-framework-research-2026-03-05/raw/SMOOTH_WORLD_STREAMING_REFACTOR_PLAN (1).md diff --git a/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/SMOOTH_WORLD_STREAMING_REFACTOR_PLAN.md b/ai-memory/docs/perf-framework-research-2026-03-05/raw/SMOOTH_WORLD_STREAMING_REFACTOR_PLAN.md similarity index 100% rename from ai-memory/docs/perf-amateur-notes-2026-03-05/raw/SMOOTH_WORLD_STREAMING_REFACTOR_PLAN.md rename to ai-memory/docs/perf-framework-research-2026-03-05/raw/SMOOTH_WORLD_STREAMING_REFACTOR_PLAN.md diff --git a/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/VOXEL_ENGINE_2026_MASTER_PLAN (1).md b/ai-memory/docs/perf-framework-research-2026-03-05/raw/VOXEL_ENGINE_2026_MASTER_PLAN (1).md similarity index 100% rename from ai-memory/docs/perf-amateur-notes-2026-03-05/raw/VOXEL_ENGINE_2026_MASTER_PLAN (1).md rename to ai-memory/docs/perf-framework-research-2026-03-05/raw/VOXEL_ENGINE_2026_MASTER_PLAN (1).md diff --git a/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/VOXEL_ENGINE_2026_MASTER_PLAN.md b/ai-memory/docs/perf-framework-research-2026-03-05/raw/VOXEL_ENGINE_2026_MASTER_PLAN.md similarity index 100% rename from ai-memory/docs/perf-amateur-notes-2026-03-05/raw/VOXEL_ENGINE_2026_MASTER_PLAN.md rename to ai-memory/docs/perf-framework-research-2026-03-05/raw/VOXEL_ENGINE_2026_MASTER_PLAN.md diff --git a/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/VOXEL_PERFORMANCE_MASTER_PLAN.md b/ai-memory/docs/perf-framework-research-2026-03-05/raw/VOXEL_PERFORMANCE_MASTER_PLAN.md similarity index 100% rename from ai-memory/docs/perf-amateur-notes-2026-03-05/raw/VOXEL_PERFORMANCE_MASTER_PLAN.md rename to ai-memory/docs/perf-framework-research-2026-03-05/raw/VOXEL_PERFORMANCE_MASTER_PLAN.md diff --git a/ai-memory/docs/perf-amateur-notes-2026-03-05/raw/VOXEL_RENDERING_RESEARCH.md b/ai-memory/docs/perf-framework-research-2026-03-05/raw/VOXEL_RENDERING_RESEARCH.md similarity index 100% rename from ai-memory/docs/perf-amateur-notes-2026-03-05/raw/VOXEL_RENDERING_RESEARCH.md rename to ai-memory/docs/perf-framework-research-2026-03-05/raw/VOXEL_RENDERING_RESEARCH.md diff --git a/ai-memory/feature/perf-notes-amateur-review-24a295d/init.md b/ai-memory/feature/perf-notes-external-review-24a295d/init.md similarity index 100% rename from ai-memory/feature/perf-notes-amateur-review-24a295d/init.md rename to ai-memory/feature/perf-notes-external-review-24a295d/init.md diff --git a/ai-memory/feature/perf-notes-amateur-review-24a295d/progress.md b/ai-memory/feature/perf-notes-external-review-24a295d/progress.md similarity index 100% rename from ai-memory/feature/perf-notes-amateur-review-24a295d/progress.md rename to ai-memory/feature/perf-notes-external-review-24a295d/progress.md diff --git a/server/src/metrics/CpuProfiler.ts b/server/src/metrics/CpuProfiler.ts index 80ddf1cf..7776702f 100644 --- a/server/src/metrics/CpuProfiler.ts +++ b/server/src/metrics/CpuProfiler.ts @@ -69,8 +69,12 @@ export default class CpuProfiler { let chunks = ''; - session.on('HeapProfiler.addHeapSnapshotChunk', (m: any) => { - chunks += m.params.chunk; + session.on('HeapProfiler.addHeapSnapshotChunk', (message: unknown) => { + const chunk = (message as { params?: { chunk?: unknown } }).params?.chunk; + + if (typeof chunk === 'string') { + chunks += chunk; + } }); return new Promise((resolve, reject) => { diff --git a/server/src/metrics/Monitor.ts b/server/src/metrics/Monitor.ts index 6f09f650..4ce60790 100644 --- a/server/src/metrics/Monitor.ts +++ b/server/src/metrics/Monitor.ts @@ -1,38 +1,53 @@ import PerformanceMonitor from '@/metrics/PerformanceMonitor'; -export function Monitor(operationName?: string) { - return function ( - target: any, - propertyKey: string, - descriptor: PropertyDescriptor, - ) { - const originalMethod = descriptor.value; - const className = target.constructor.name; - const name = operationName ?? `${className}.${propertyKey}`; - - if (originalMethod.constructor.name === 'AsyncFunction') { - descriptor.value = async function (...args: any[]) { +type AnyMethod = (...args: unknown[]) => unknown; +type AnyConstructor = abstract new (...args: unknown[]) => unknown; + +export function Monitor(operationName?: string): MethodDecorator { + return function ( + target: object, + propertyKey: string | symbol, + descriptor: TypedPropertyDescriptor, + ): TypedPropertyDescriptor | void { + const original = descriptor.value; + + if (typeof original !== 'function') { + return descriptor; + } + + const className = (target as { constructor?: { name?: string } }).constructor?.name ?? 'Unknown'; + const name = operationName ?? `${className}.${String(propertyKey)}`; + const originalFn = original as unknown as AnyMethod; + const isAsync = originalFn.constructor.name === 'AsyncFunction'; + + const wrapped: AnyMethod = function (this: unknown, ...args: unknown[]) { + if (isAsync) { return PerformanceMonitor.instance.measureAsync( name, - () => originalMethod.apply(this, args), + () => (originalFn as (...fnArgs: unknown[]) => Promise).apply(this, args), ); - }; - } else { - descriptor.value = function (...args: any[]) { - return PerformanceMonitor.instance.measure( - name, - () => originalMethod.apply(this, args), - ); - }; - } + } + + return PerformanceMonitor.instance.measure( + name, + () => originalFn.apply(this, args), + ); + }; + + descriptor.value = wrapped as unknown as T; return descriptor; }; } export function MonitorClass(prefix?: string) { - return function (constructor: T) { - const prototype = constructor.prototype; + return function (constructor: TConstructor): TConstructor { + const prototype = (constructor as { prototype?: object }).prototype; + + if (!prototype) { + return constructor; + } + const classPrefix = prefix ?? constructor.name; for (const name of Object.getOwnPropertyNames(prototype)) { @@ -40,10 +55,20 @@ export function MonitorClass(prefix?: string) { const descriptor = Object.getOwnPropertyDescriptor(prototype, name); - if (descriptor && typeof descriptor.value === 'function') { - Monitor(`${classPrefix}.${name}`)(prototype, name, descriptor); - Object.defineProperty(prototype, name, descriptor); + if (!descriptor) { + continue; } + + const value: unknown = descriptor.value; + + if (typeof value !== 'function') { + continue; + } + + const typedDescriptor = descriptor as TypedPropertyDescriptor; + + Monitor(`${classPrefix}.${name}`)(prototype, name, typedDescriptor); + Object.defineProperty(prototype, name, typedDescriptor); } return constructor; diff --git a/server/src/metrics/PerformanceMonitor.ts b/server/src/metrics/PerformanceMonitor.ts index 157685e5..320222ac 100644 --- a/server/src/metrics/PerformanceMonitor.ts +++ b/server/src/metrics/PerformanceMonitor.ts @@ -333,7 +333,7 @@ export default class PerformanceMonitor extends EventRouter { private _getOperationStats(): Record { const result: Record = {}; - for (const [name, acc] of this._operations) { + for (const [ name, acc ] of this._operations) { const samples: number[] = []; for (let i = 0; i < acc.sampleCount; i++) { From 99669316326a4782ba807340eb5d4aa553a867c5 Mon Sep 17 00:00:00 2001 From: web3dev1337 <160291380+web3dev1337@users.noreply.github.com> Date: Thu, 5 Mar 2026 17:13:49 +1100 Subject: [PATCH 05/40] fix: bot rigid body rotation options --- server/src/bots/BotPlayer.ts | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/server/src/bots/BotPlayer.ts b/server/src/bots/BotPlayer.ts index 2eed5c48..e89c0a43 100644 --- a/server/src/bots/BotPlayer.ts +++ b/server/src/bots/BotPlayer.ts @@ -36,6 +36,7 @@ export default class BotPlayer { this._behavior = options?.behavior ?? null; const controller = new SimpleEntityController(); + const rigidBodyType = options?.rigidBodyType ?? RigidBodyType.KINEMATIC_POSITION; this.entity = new Entity({ name: this.name, @@ -43,8 +44,10 @@ export default class BotPlayer { modelScale: options?.modelScale ?? 1, controller, rigidBodyOptions: { - type: options?.rigidBodyType ?? RigidBodyType.KINEMATIC_POSITION, - enabledRotations: { x: false, y: true, z: false }, + type: rigidBodyType, + ...(rigidBodyType === RigidBodyType.DYNAMIC + ? { enabledRotations: { x: false, y: true, z: false } } + : {}), }, }); From cb5186e921938ba58cf549834980f33f6d900c32 Mon Sep 17 00:00:00 2001 From: web3dev1337 <160291380+web3dev1337@users.noreply.github.com> Date: Thu, 5 Mar 2026 17:18:29 +1100 Subject: [PATCH 06/40] fix: unblock client build --- client/src/network/NetworkManager.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/client/src/network/NetworkManager.ts b/client/src/network/NetworkManager.ts index 361281ef..4599af68 100644 --- a/client/src/network/NetworkManager.ts +++ b/client/src/network/NetworkManager.ts @@ -572,7 +572,7 @@ export default class NetworkManager { private async _reconnect(): Promise { // Check if server is still up - if not, it's an unexpected disconnect (crash) - const serverHealthy = await Servers.isCurrentServerHealthy().catch(() => false); + await Servers.isCurrentServerHealthy().catch(() => false); const url = new URL(window.location.href); @@ -593,4 +593,4 @@ export default class NetworkManager { this._syncStartTimeS = performance.now() / 1000; this.sendPacket(protocol.createPacket(protocol.syncRequestPacketDefinition, null)); } -} \ No newline at end of file +} From 37be314ded916e59d581799107bb648406fea6d2 Mon Sep 17 00:00:00 2001 From: web3dev1337 <160291380+web3dev1337@users.noreply.github.com> Date: Thu, 5 Mar 2026 18:07:30 +1100 Subject: [PATCH 07/40] docs: record perf framework smoke test coverage --- ai-memory/docs/perf-final-2026-03-05/FINAL.md | 36 +++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/ai-memory/docs/perf-final-2026-03-05/FINAL.md b/ai-memory/docs/perf-final-2026-03-05/FINAL.md index 24fd8f4c..d6c881cf 100644 --- a/ai-memory/docs/perf-final-2026-03-05/FINAL.md +++ b/ai-memory/docs/perf-final-2026-03-05/FINAL.md @@ -449,3 +449,39 @@ If you want this PR to be mergeable as a framework (not just scaffolding), the s ### Naming/hygiene - This branch contains an internal notes folder name that should be renamed to a neutral label before merging. + +--- + +## Test Coverage (What Was Actually Run) + +This section is a factual log of what was executed against the current PR #11 branch state. + +### Server runtime smoke test (engine boot + tick + bots) + +- Built `server/src/index.ts` with Bun and executed it with Node (local dev runtime). +- Started the engine via `startServer(...)`. +- Loaded `assets/release/maps/boilerplate-small.json`. +- Enabled profiling with one line: `PerformanceMonitor.instance.enable({ snapshotIntervalMs: 0 })`. +- Enabled per-entity profiling: `PerformanceMonitor.instance.enableEntityProfiling(true)`. +- Spawned **25 bots** using `BotManager.instance.spawnBots(...)` with `RandomWalkBehavior`. +- Observed ongoing `PerformanceMonitorEvent.TICK_REPORT` events and captured a snapshot after ~5s post-start: + - `avgTickMs=0.252`, `p95TickMs=0.382`, `p99TickMs=0.550`, `maxTickMs=12.509`, `ticksOverBudget=0`, `totalTicks=301` (0 players connected). + +### Bugs found during the smoke test + +- Bot spawning triggered recoverable runtime errors from `RigidBody.setEnabledRotations()` when bots use a non-dynamic rigid body type. + - Fixed by only applying `enabledRotations` when the bot rigid body type is `DYNAMIC`. + +### Client build check + +- `client` production build passed (`tsc` + `vite build`) after removing an unused local in `client/src/network/NetworkManager.ts`. + +### Not tested / not runnable end-to-end yet + +- No `sdk-examples/*` games were run. +- No real client gameplay session was connected to the server (so join/reconnect chunk streaming and networking hot paths were not exercised). +- `packages/perf-tools` CLI and GitHub Actions “perf gate” workflows were **not** run successfully as an end-to-end benchmark, because the tooling does not yet collect real server/client metrics and has install/runtime issues described above. + +### Environment limitations observed + +- WebTransport http3-quiche native addon was not available in this environment, so WebTransport/QUIC wasn’t exercised (server still started with fallback behavior). From adb7561f54237c80dfb08a06207c3297aa6b93b9 Mon Sep 17 00:00:00 2001 From: web3dev1337 <160291380+web3dev1337@users.noreply.github.com> Date: Thu, 5 Mar 2026 19:13:16 +1100 Subject: [PATCH 08/40] feat: wire perf-tools benchmarks end-to-end --- .github/workflows/perf-baseline-update.yml | 5 +- .github/workflows/perf-gate.yml | 5 +- .gitignore | 5 +- CODEBASE_DOCUMENTATION.md | 8 + ai-memory/docs/perf-final-2026-03-05/FINAL.md | 116 +- .../perf-final-2026-03-05/results/idle.json | 73 + .../perf-final-2026-03-05/results/stress.json | 78 + packages/perf-tools/package-lock.json | 1286 +++++++++++++++++ packages/perf-tools/package.json | 6 +- packages/perf-tools/scripts/copy-assets.mjs | 20 + packages/perf-tools/src/cli.ts | 13 +- packages/perf-tools/src/presets/combined.yaml | 2 +- .../perf-tools/src/presets/large-world.yaml | 2 +- packages/perf-tools/src/presets/stress.yaml | 4 +- .../perf-tools/src/runners/BenchmarkRunner.ts | 179 ++- .../perf-tools/src/runners/ServerApiClient.ts | 138 ++ packages/perf-tools/src/runners/WsClient.ts | 60 + server/eslint.config.js | 6 +- server/package.json | 1 + server/src/metrics/NetworkMetrics.ts | 5 + server/src/metrics/PerformanceMonitor.ts | 1 - server/src/networking/Connection.ts | 41 +- server/src/networking/WebServer.ts | 7 + server/src/perf/PerfHarness.ts | 299 ++++ server/src/perf/perf-harness.ts | 8 + server/src/players/PlayerManager.ts | 3 + 26 files changed, 2253 insertions(+), 118 deletions(-) create mode 100644 ai-memory/docs/perf-final-2026-03-05/results/idle.json create mode 100644 ai-memory/docs/perf-final-2026-03-05/results/stress.json create mode 100644 packages/perf-tools/package-lock.json create mode 100644 packages/perf-tools/scripts/copy-assets.mjs create mode 100644 packages/perf-tools/src/runners/ServerApiClient.ts create mode 100644 packages/perf-tools/src/runners/WsClient.ts create mode 100644 server/src/perf/PerfHarness.ts create mode 100644 server/src/perf/perf-harness.ts diff --git a/.github/workflows/perf-baseline-update.yml b/.github/workflows/perf-baseline-update.yml index ad1c4731..2a03558d 100644 --- a/.github/workflows/perf-baseline-update.yml +++ b/.github/workflows/perf-baseline-update.yml @@ -26,6 +26,9 @@ jobs: with: node-version: '20' + - name: Map local.hytopiahosting.com to localhost + run: echo "127.0.0.1 local.hytopiahosting.com" | sudo tee -a /etc/hosts + - name: Install server dependencies run: cd server && npm ci @@ -33,7 +36,7 @@ jobs: run: cd server && npm run build - name: Install perf-tools - run: cd packages/perf-tools && npm ci && npm run build + run: cd packages/perf-tools && PUPPETEER_SKIP_DOWNLOAD=true npm ci && npm run build - name: Run benchmarks (3 rounds, averaged) run: | diff --git a/.github/workflows/perf-gate.yml b/.github/workflows/perf-gate.yml index c4dce2cf..f4fc4d2c 100644 --- a/.github/workflows/perf-gate.yml +++ b/.github/workflows/perf-gate.yml @@ -24,6 +24,9 @@ jobs: with: node-version: '20' + - name: Map local.hytopiahosting.com to localhost + run: echo "127.0.0.1 local.hytopiahosting.com" | sudo tee -a /etc/hosts + - name: Install server dependencies run: cd server && npm ci @@ -31,7 +34,7 @@ jobs: run: cd server && npm run build - name: Install perf-tools - run: cd packages/perf-tools && npm ci && npm run build + run: cd packages/perf-tools && PUPPETEER_SKIP_DOWNLOAD=true npm ci && npm run build - name: Restore baseline cache id: cache-baseline diff --git a/.gitignore b/.gitignore index 40b878db..82552e74 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,4 @@ -node_modules/ \ No newline at end of file +node_modules/ +server/src/playground.mjs +server/src/perf-harness.mjs +packages/*/dist/ diff --git a/CODEBASE_DOCUMENTATION.md b/CODEBASE_DOCUMENTATION.md index 143c5d64..1f7854c8 100644 --- a/CODEBASE_DOCUMENTATION.md +++ b/CODEBASE_DOCUMENTATION.md @@ -16,6 +16,7 @@ PROTOCOL: protocol/ - Packet schemas + definitions (@hytopia.com/server-protocol SDK: sdk/ - Git submodule → hytopiagg/sdk (build output lands here) EXAMPLES: sdk-examples/ - Reference games built with the SDK ASSETS: assets/release/ - Default game assets (audio, blocks, maps, models, particles, skyboxes, ui) +PERF: packages/perf-tools/ - Benchmark CLI + trace analysis (`hytopia-bench`) CONFIG: package.json - Monorepo root (npm workspaces) server/package.json - Server deps + build scripts server/tsconfig.json - Strict TS, path alias @/* → ./src/* @@ -140,9 +141,16 @@ shared/types/math/Vector3Like.ts - Vector3 interface errors/ErrorHandler.ts - Fatal error handling + crash protection events/EventRouter.ts - Typed event emitter (eventemitter3) events/Events.ts - Event payload type definitions +bots/BotManager.ts, bots/BotPlayer.ts - Server-side bot players for perf/stress tests +metrics/Monitor.ts - @Monitor decorators + helper wrappers +metrics/CpuProfiler.ts - V8 CPU profile + heap snapshot capture (debug tooling) +metrics/PerformanceMonitor.ts - Tick profiler + operation percentiles + spikes +metrics/NetworkMetrics.ts - Byte/packet/serialization counters metrics/Telemetry.ts - Span-based performance profiling models/ModelRegistry.ts - GLTF model preloading + bounding box extraction persistence/PersistenceManager.ts - Player/global KV storage via @hytopia.com/save-states +perf/PerfHarness.ts - Env-gated /__perf endpoints for perf-tools +perf/perf-harness.ts - Benchmark server entry (build:perf-harness → src/perf-harness.mjs) server/src/assets/AssetsLibrary.ts - Asset path resolution ``` diff --git a/ai-memory/docs/perf-final-2026-03-05/FINAL.md b/ai-memory/docs/perf-final-2026-03-05/FINAL.md index d6c881cf..f4c83be6 100644 --- a/ai-memory/docs/perf-final-2026-03-05/FINAL.md +++ b/ai-memory/docs/perf-final-2026-03-05/FINAL.md @@ -394,61 +394,42 @@ All files referenced below are imported under `ai-memory/docs/perf-external-note --- -## Performance Framework (this PR branch) — Review + Merge Blockers +## Performance Framework (this PR branch) — Review + Current State This section reviews the “performance framework” implementation added in PR #11 (server module + `packages/perf-tools/` + GitHub Actions). ### What’s real and useful today (server-side) - **`PerformanceMonitor` exists and is integrated** into the tick loop: - - `server/src/metrics/PerformanceMonitor.ts` implements tick history, per-operation stats (p50/p95/p99), spike detection, and periodic snapshots. + - `server/src/metrics/PerformanceMonitor.ts` implements tick history, per-operation stats (p50/p95/p99), spike detection, and snapshots. - `server/src/worlds/WorldLoop.ts` calls `beginTick()` / `recordPhase()` / `endTick()` when enabled. -- **Decorators/helpers exist**: - - `server/src/metrics/Monitor.ts` adds `@Monitor` / `@MonitorClass` + `monitorBlock` helpers. -- **CPU/heap capture exists (debug tooling)**: - - `server/src/metrics/CpuProfiler.ts` uses `node:inspector` to capture `.cpuprofile` and heap snapshots. -- **Bots exist** (useful for stress testing once the harness is wired): - - `server/src/bots/*` exports `BotManager`, `BotPlayer`, and behaviors. - -### What’s missing / incorrect vs the PR summary (must fix) - -1) **Operation timings are currently double-counted** - - When `PerformanceMonitor` is enabled, `Telemetry.startSpan()` wraps operations in `perfMon.measure(...)`. - - `WorldLoop` also calls `perfMon.recordPhase(...)` for the same operation names (`entities_tick`, `simulation_step`, `network_synchronize`, etc.). - - Result: per-operation percentiles/averages in `PerformanceMonitor` are inflated and misleading. - -2) **`NetworkMetrics` is not actually integrated** - - `server/src/metrics/NetworkMetrics.ts` is exported, but nothing calls `recordBytesSent/Received`, `recordPacketSent/Received`, etc. - - As written, it stays at zero unless a game manually wires it into networking. - -3) **`packages/perf-tools/` is not runnable end-to-end yet** - - **CI will fail immediately**: workflows run `npm ci` in `packages/perf-tools/`, but there is no `package-lock.json`. - - **CLI preset loading likely breaks at runtime**: uses `import.meta.dirname` (Node uses `import.meta.url` + `fileURLToPath`). - - **Scenario actions are placeholders**: `spawn_bots`, `load_map`, etc. only log “would execute via server API”. - - **Server metrics aren’t collected**: `MetricCollector` supports server snapshots, but the runner never pulls them from the server. - - **Client metrics assume missing instrumentation**: `HeadlessClient` reads `window.__HYTOPIA_PERF__`, which the client does not currently define. - -4) **The GitHub Actions workflows aren’t a “gate” yet** - - Bench steps are `continue-on-error: true`, and compare uses `|| true`, so regressions won’t fail the job even if the tooling worked. - - Baseline update also treats benchmark failures as non-fatal, which risks caching empty/invalid baselines. - -### Minimal path to make this framework usable - -If you want this PR to be mergeable as a framework (not just scaffolding), the smallest concrete checklist is: - -- Fix the double-counting: pick **one** source of truth (either `recordPhase` or `Telemetry.startSpan` → `perfMon.measure`) for operation timing. -- Wire `NetworkMetrics` into `server/src/networking/Connection.ts` and/or `NetworkSynchronizer.ts`. -- Make `perf-tools` installable and runnable in CI: - - add a lockfile and keep `npm ci`, or switch workflows to `npm install`. - - fix preset path resolution (`import.meta.url`). -- Define a real metrics channel: - - either expose `PerformanceMonitor.getSnapshot()` via an HTTP debug endpoint, or log JSON snapshots to stdout and parse them. - - add a client-side hook for `HeadlessClient` (even a minimal `window.__HYTOPIA_PERF__ = { fps, ... }` populated from existing managers). -- Make the workflows enforce regressions (remove `continue-on-error` / `|| true` once results are trustworthy). - -### Naming/hygiene - -- This branch contains an internal notes folder name that should be renamed to a neutral label before merging. +- **Operation double-counting is fixed** + - `WorldLoop.recordPhase(...)` now only records per-tick phase breakdown (not per-operation stats), so `Telemetry.startSpan(...)` + `perfMon.measure(...)` remains the single source of truth for operation timings. +- **`NetworkMetrics` is now integrated** + - Wired into `server/src/networking/Connection.ts` (bytes/packets + serialization/compression) and `server/src/players/PlayerManager.ts` (connected player count). +- **Perf harness endpoints are wired** (internal, env-gated): + - When `HYTOPIA_PERF_TOOLS=1`, the server exposes: + - `GET /__perf/snapshot` + - `POST /__perf/reset` + - `POST /__perf/action` (`spawn_bots`, `despawn_bots`, `load_map`, `reset`) +- **A dedicated perf harness server entry exists** + - `server/src/perf/perf-harness.ts` → built via `server` script `build:perf-harness` to `server/src/perf-harness.mjs`. +- **`packages/perf-tools/` runs end-to-end for server benchmarks** + - Lockfile added (so `npm ci` works in CI). + - Preset loading fixed (`import.meta.url` → real dirname) and presets are copied into `dist/`. + - The runner starts the perf harness server, executes scenario actions via `/__perf/action`, and polls `/__perf/snapshot` to produce baselines. + +### Remaining gaps / limitations + +- **Client-side metrics are not collected yet** + - `HeadlessClient` (Puppeteer) still expects `window.__HYTOPIA_PERF__`, which the client does not currently define. + - The current runner focuses on **server** metrics (tick + memory + ops). The optional `scenario.clients` setting creates WebSocket connections (server-side “players”), but no FPS stats are collected. +- **No per-tick event stream yet** + - `MetricCollector` supports tick reports/spikes, but `perf-tools` currently collects periodic snapshots only. +- **Network metrics are collected but not surfaced in reports** + - Server tracks bytes/packets/serialization/compression via `NetworkMetrics`, but the perf-tools baseline/report format doesn’t include it yet. +- **The GitHub Actions workflows aren’t a hard gate yet** + - Bench steps remain `continue-on-error: true`, and compare uses `|| true`. --- @@ -458,30 +439,47 @@ This section is a factual log of what was executed against the current PR #11 br ### Server runtime smoke test (engine boot + tick + bots) -- Built `server/src/index.ts` with Bun and executed it with Node (local dev runtime). - Started the engine via `startServer(...)`. - Loaded `assets/release/maps/boilerplate-small.json`. -- Enabled profiling with one line: `PerformanceMonitor.instance.enable({ snapshotIntervalMs: 0 })`. +- Enabled profiling: `PerformanceMonitor.instance.enable({ snapshotIntervalMs: 0 })`. - Enabled per-entity profiling: `PerformanceMonitor.instance.enableEntityProfiling(true)`. -- Spawned **25 bots** using `BotManager.instance.spawnBots(...)` with `RandomWalkBehavior`. -- Observed ongoing `PerformanceMonitorEvent.TICK_REPORT` events and captured a snapshot after ~5s post-start: +- Spawned **25 bots** (`RandomWalkBehavior`). +- Captured a snapshot after ~5s post-start: - `avgTickMs=0.252`, `p95TickMs=0.382`, `p99TickMs=0.550`, `maxTickMs=12.509`, `ticksOverBudget=0`, `totalTicks=301` (0 players connected). -### Bugs found during the smoke test +### perf-tools end-to-end benchmarks (server-only snapshots) + +Results JSON (generated by `packages/perf-tools`): + +- `ai-memory/docs/perf-final-2026-03-05/results/idle.json` +- `ai-memory/docs/perf-final-2026-03-05/results/stress.json` + +#### Idle preset (`idle-baseline`) + +- Warmup: 5s, Measure: 30s +- No real browser clients connected, no bots +- Baseline: + - `avgTickMs=0.04`, `p99TickMs=0.13`, `maxTickMs=0.88`, `avgHeap=40.5MB` + +#### Stress preset (`stress-test`) -- Bot spawning triggered recoverable runtime errors from `RigidBody.setEnabledRotations()` when bots use a non-dynamic rigid body type. - - Fixed by only applying `enabledRotations` when the bot rigid body type is `DYNAMIC`. +- Warmup: 5s +- Actions: + - Load map: `assets/maps/boilerplate-small.json` + - Spawn bots: 50 `random_walk`, 30 `chase`, 20 `interact` (100 total) +- Stabilize: 5s, Measure: 60s +- Baseline: + - `avgTickMs=0.28`, `p99TickMs=1.37`, `maxTickMs=2.68`, `avgHeap=47.3MB` ### Client build check - `client` production build passed (`tsc` + `vite build`) after removing an unused local in `client/src/network/NetworkManager.ts`. -### Not tested / not runnable end-to-end yet +### Not tested - No `sdk-examples/*` games were run. -- No real client gameplay session was connected to the server (so join/reconnect chunk streaming and networking hot paths were not exercised). -- `packages/perf-tools` CLI and GitHub Actions “perf gate” workflows were **not** run successfully as an end-to-end benchmark, because the tooling does not yet collect real server/client metrics and has install/runtime issues described above. +- No real browser gameplay session was used for these benchmarks (no FPS numbers; networking is only exercised if presets specify `clients`). ### Environment limitations observed -- WebTransport http3-quiche native addon was not available in this environment, so WebTransport/QUIC wasn’t exercised (server still started with fallback behavior). +- WebTransport http3-quiche native addon was not available in this environment, so WebTransport/QUIC wasn’t exercised (server used WebSocket transport). diff --git a/ai-memory/docs/perf-final-2026-03-05/results/idle.json b/ai-memory/docs/perf-final-2026-03-05/results/idle.json new file mode 100644 index 00000000..10529062 --- /dev/null +++ b/ai-memory/docs/perf-final-2026-03-05/results/idle.json @@ -0,0 +1,73 @@ +{ + "timestamp": "2026-03-05T08:02:48.070Z", + "scenario": "idle-baseline", + "durationMs": 34422, + "baseline": { + "avgTickMs": 0.04203972943437319, + "maxTickMs": 0.8820090000008349, + "p95TickMs": 0.07541519999955805, + "p99TickMs": 0.1272069999999682, + "ticksOverBudgetPct": 0, + "avgMemoryMb": 40.52041803995768, + "operations": { + "entities_tick": { + "avgMs": 0.001114420389146293, + "p95Ms": 0.0017866333328129258 + }, + "physics_step": { + "avgMs": 0.02166873620451, + "p95Ms": 0.03330013333309883 + }, + "physics_cleanup": { + "avgMs": 0.0027704908231093355, + "p95Ms": 0.0042436666669649035 + }, + "simulation_step": { + "avgMs": 0.02700019616574194, + "p95Ms": 0.045443866666695004 + }, + "entities_emit_updates": { + "avgMs": 0.0005000602500278144, + "p95Ms": 0.000681066666766128 + }, + "send_all_packets": { + "avgMs": 0.0030847504849194677, + "p95Ms": 0.004832866666977982 + }, + "network_synchronize_cleanup": { + "avgMs": 0.001912261431047877, + "p95Ms": 0.0025155333334320553 + }, + "network_synchronize": { + "avgMs": 0.011556394492309798, + "p95Ms": 0.017829233333516943 + }, + "world_tick": { + "avgMs": 0.04017091732958176, + "p95Ms": 0.07022670000002715 + }, + "ticker_tick": { + "avgMs": 0.07093715680076258, + "p95Ms": 0.11399493333340918 + } + } + }, + "phases": [ + { + "name": "warmup", + "durationMs": 4286, + "collected": false + }, + { + "name": "measure", + "durationMs": 29458, + "collected": true + } + ], + "metrics": { + "tickReportCount": 0, + "spikeCount": 0, + "serverSnapshotCount": 30, + "clientSnapshotCount": 0 + } +} \ No newline at end of file diff --git a/ai-memory/docs/perf-final-2026-03-05/results/stress.json b/ai-memory/docs/perf-final-2026-03-05/results/stress.json new file mode 100644 index 00000000..f19eb4e1 --- /dev/null +++ b/ai-memory/docs/perf-final-2026-03-05/results/stress.json @@ -0,0 +1,78 @@ +{ + "timestamp": "2026-03-05T08:01:45.447Z", + "scenario": "stress-test", + "durationMs": 69030, + "baseline": { + "avgTickMs": 0.28009925822367465, + "maxTickMs": 2.6815829999995913, + "p95TickMs": 0.509387966666903, + "p99TickMs": 1.36716114999878, + "ticksOverBudgetPct": 0, + "avgMemoryMb": 47.33492266337077, + "operations": { + "entities_tick": { + "avgMs": 0.09836481498719789, + "p95Ms": 0.17189514999993966 + }, + "physics_step": { + "avgMs": 0.08848512477855072, + "p95Ms": 0.13091213333324656 + }, + "physics_cleanup": { + "avgMs": 0.0024844723019437636, + "p95Ms": 0.0038924333331124216 + }, + "simulation_step": { + "avgMs": 0.0939048234995409, + "p95Ms": 0.1399285166665019 + }, + "entities_emit_updates": { + "avgMs": 0.06352046163705007, + "p95Ms": 0.10200356666649289 + }, + "send_all_packets": { + "avgMs": 0.0033960986983894987, + "p95Ms": 0.004926683333330099 + }, + "network_synchronize_cleanup": { + "avgMs": 0.004555222046177986, + "p95Ms": 0.0062584500012235365 + }, + "network_synchronize": { + "avgMs": 0.030553736266935718, + "p95Ms": 0.04717741666654547 + }, + "world_tick": { + "avgMs": 0.2782939949050557, + "p95Ms": 0.4805952166670068 + }, + "ticker_tick": { + "avgMs": 0.313649066318864, + "p95Ms": 0.5370763499999157 + } + } + }, + "phases": [ + { + "name": "spawn-entities", + "durationMs": 174, + "collected": false + }, + { + "name": "stabilize", + "durationMs": 5001, + "collected": false + }, + { + "name": "measure", + "durationMs": 58912, + "collected": true + } + ], + "metrics": { + "tickReportCount": 0, + "spikeCount": 0, + "serverSnapshotCount": 60, + "clientSnapshotCount": 0 + } +} \ No newline at end of file diff --git a/packages/perf-tools/package-lock.json b/packages/perf-tools/package-lock.json new file mode 100644 index 00000000..d2395e0c --- /dev/null +++ b/packages/perf-tools/package-lock.json @@ -0,0 +1,1286 @@ +{ + "name": "@hytopia/perf-tools", + "version": "0.1.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "@hytopia/perf-tools", + "version": "0.1.0", + "license": "MIT", + "dependencies": { + "chalk": "^5.3.0", + "commander": "^12.0.0", + "js-yaml": "^4.1.0", + "puppeteer": "^23.0.0", + "ws": "^8.18.3" + }, + "bin": { + "hytopia-bench": "dist/cli.js" + }, + "devDependencies": { + "@types/js-yaml": "^4.0.9", + "@types/node": "^20.0.0", + "@types/ws": "^8.18.1", + "typescript": "^5.4.0" + }, + "engines": { + "node": ">=18.0.0" + }, + "peerDependencies": { + "hytopia": "*" + }, + "peerDependenciesMeta": { + "hytopia": { + "optional": true + } + } + }, + "node_modules/@babel/code-frame": { + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.29.0.tgz", + "integrity": "sha512-9NhCeYjq9+3uxgdtp20LSiJXJvN0FeCtNGpJxuMFZ1Kv3cWUNb6DOhJwUvcVCzKGR66cw4njwM6hrJLqgOwbcw==", + "license": "MIT", + "dependencies": { + "@babel/helper-validator-identifier": "^7.28.5", + "js-tokens": "^4.0.0", + "picocolors": "^1.1.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.28.5.tgz", + "integrity": "sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@puppeteer/browsers": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/@puppeteer/browsers/-/browsers-2.6.1.tgz", + "integrity": "sha512-aBSREisdsGH890S2rQqK82qmQYU3uFpSH8wcZWHgHzl3LfzsxAKbLNiAG9mO8v1Y0UICBeClICxPJvyr0rcuxg==", + "license": "Apache-2.0", + "dependencies": { + "debug": "^4.4.0", + "extract-zip": "^2.0.1", + "progress": "^2.0.3", + "proxy-agent": "^6.5.0", + "semver": "^7.6.3", + "tar-fs": "^3.0.6", + "unbzip2-stream": "^1.4.3", + "yargs": "^17.7.2" + }, + "bin": { + "browsers": "lib/cjs/main-cli.js" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@tootallnate/quickjs-emscripten": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@tootallnate/quickjs-emscripten/-/quickjs-emscripten-0.23.0.tgz", + "integrity": "sha512-C5Mc6rdnsaJDjO3UpGW/CQTHtCKaYlScZTly4JIu97Jxo/odCiH0ITnDXSJPTOrEKk/ycSZ0AOgTmkDtkOsvIA==", + "license": "MIT" + }, + "node_modules/@types/js-yaml": { + "version": "4.0.9", + "resolved": "https://registry.npmjs.org/@types/js-yaml/-/js-yaml-4.0.9.tgz", + "integrity": "sha512-k4MGaQl5TGo/iipqb2UDG2UwjXziSWkh0uysQelTlJpX1qGlpUZYm8PnO4DxG1qBomtJUdYJ6qR6xdIah10JLg==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/node": { + "version": "20.19.35", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.19.35.tgz", + "integrity": "sha512-Uarfe6J91b9HAUXxjvSOdiO2UPOKLm07Q1oh0JHxoZ1y8HoqxDAu3gVrsrOHeiio0kSsoVBt4wFrKOm0dKxVPQ==", + "devOptional": true, + "license": "MIT", + "dependencies": { + "undici-types": "~6.21.0" + } + }, + "node_modules/@types/ws": { + "version": "8.18.1", + "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.18.1.tgz", + "integrity": "sha512-ThVF6DCVhA8kUGy+aazFQ4kXQ7E1Ty7A3ypFOe0IcJV8O/M511G99AW24irKrW56Wt44yG9+ij8FaqoBGkuBXg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/yauzl": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.10.3.tgz", + "integrity": "sha512-oJoftv0LSuaDZE3Le4DbKX+KS9G36NzOeSap90UIK0yMA/NhKJhqlSGtNDORNRaIbQfzjXDrQa0ytJ6mNRGz/Q==", + "license": "MIT", + "optional": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/agent-base": { + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz", + "integrity": "sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==", + "license": "MIT", + "engines": { + "node": ">= 14" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "license": "Python-2.0" + }, + "node_modules/ast-types": { + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.13.4.tgz", + "integrity": "sha512-x1FCFnFifvYDDzTaLII71vG5uvDwgtmDTEVWAxrgeiR8VjMONcCXJx7E+USjDtHlwFmt9MysbqgF9b9Vjr6w+w==", + "license": "MIT", + "dependencies": { + "tslib": "^2.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/b4a": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/b4a/-/b4a-1.8.0.tgz", + "integrity": "sha512-qRuSmNSkGQaHwNbM7J78Wwy+ghLEYF1zNrSeMxj4Kgw6y33O3mXcQ6Ie9fRvfU/YnxWkOchPXbaLb73TkIsfdg==", + "license": "Apache-2.0", + "peerDependencies": { + "react-native-b4a": "*" + }, + "peerDependenciesMeta": { + "react-native-b4a": { + "optional": true + } + } + }, + "node_modules/bare-events": { + "version": "2.8.2", + "resolved": "https://registry.npmjs.org/bare-events/-/bare-events-2.8.2.tgz", + "integrity": "sha512-riJjyv1/mHLIPX4RwiK+oW9/4c3TEUeORHKefKAKnZ5kyslbN+HXowtbaVEqt4IMUB7OXlfixcs6gsFeo/jhiQ==", + "license": "Apache-2.0", + "peerDependencies": { + "bare-abort-controller": "*" + }, + "peerDependenciesMeta": { + "bare-abort-controller": { + "optional": true + } + } + }, + "node_modules/bare-fs": { + "version": "4.5.5", + "resolved": "https://registry.npmjs.org/bare-fs/-/bare-fs-4.5.5.tgz", + "integrity": "sha512-XvwYM6VZqKoqDll8BmSww5luA5eflDzY0uEFfBJtFKe4PAAtxBjU3YIxzIBzhyaEQBy1VXEQBto4cpN5RZJw+w==", + "license": "Apache-2.0", + "dependencies": { + "bare-events": "^2.5.4", + "bare-path": "^3.0.0", + "bare-stream": "^2.6.4", + "bare-url": "^2.2.2", + "fast-fifo": "^1.3.2" + }, + "engines": { + "bare": ">=1.16.0" + }, + "peerDependencies": { + "bare-buffer": "*" + }, + "peerDependenciesMeta": { + "bare-buffer": { + "optional": true + } + } + }, + "node_modules/bare-os": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/bare-os/-/bare-os-3.7.1.tgz", + "integrity": "sha512-ebvMaS5BgZKmJlvuWh14dg9rbUI84QeV3WlWn6Ph6lFI8jJoh7ADtVTyD2c93euwbe+zgi0DVrl4YmqXeM9aIA==", + "license": "Apache-2.0", + "engines": { + "bare": ">=1.14.0" + } + }, + "node_modules/bare-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bare-path/-/bare-path-3.0.0.tgz", + "integrity": "sha512-tyfW2cQcB5NN8Saijrhqn0Zh7AnFNsnczRcuWODH0eYAXBsJ5gVxAUuNr7tsHSC6IZ77cA0SitzT+s47kot8Mw==", + "license": "Apache-2.0", + "dependencies": { + "bare-os": "^3.0.1" + } + }, + "node_modules/bare-stream": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/bare-stream/-/bare-stream-2.8.0.tgz", + "integrity": "sha512-reUN0M2sHRqCdG4lUK3Fw8w98eeUIZHL5c3H7Mbhk2yVBL+oofgaIp0ieLfD5QXwPCypBpmEEKU2WZKzbAk8GA==", + "license": "Apache-2.0", + "dependencies": { + "streamx": "^2.21.0", + "teex": "^1.0.1" + }, + "peerDependencies": { + "bare-buffer": "*", + "bare-events": "*" + }, + "peerDependenciesMeta": { + "bare-buffer": { + "optional": true + }, + "bare-events": { + "optional": true + } + } + }, + "node_modules/bare-url": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/bare-url/-/bare-url-2.3.2.tgz", + "integrity": "sha512-ZMq4gd9ngV5aTMa5p9+UfY0b3skwhHELaDkhEHetMdX0LRkW9kzaym4oo/Eh+Ghm0CCDuMTsRIGM/ytUc1ZYmw==", + "license": "Apache-2.0", + "dependencies": { + "bare-path": "^3.0.0" + } + }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/basic-ftp": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/basic-ftp/-/basic-ftp-5.2.0.tgz", + "integrity": "sha512-VoMINM2rqJwJgfdHq6RiUudKt2BV+FY5ZFezP/ypmwayk68+NzzAQy4XXLlqsGD4MCzq3DrmNFD/uUmBJuGoXw==", + "license": "MIT", + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "node_modules/buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", + "license": "MIT", + "engines": { + "node": "*" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/chalk": { + "version": "5.6.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.6.2.tgz", + "integrity": "sha512-7NzBL0rN6fMUW+f7A6Io4h40qQlG+xGmtMxfbnH/K7TAtt8JQWVQK+6g0UXKMeVJoyV5EkkNsErQ8pVD3bLHbA==", + "license": "MIT", + "engines": { + "node": "^12.17.0 || ^14.13 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/chromium-bidi": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/chromium-bidi/-/chromium-bidi-0.11.0.tgz", + "integrity": "sha512-6CJWHkNRoyZyjV9Rwv2lYONZf1Xm0IuDyNq97nwSsxxP3wf5Bwy15K5rOvVKMtJ127jJBmxFUanSAOjgFRxgrA==", + "license": "Apache-2.0", + "dependencies": { + "mitt": "3.0.1", + "zod": "3.23.8" + }, + "peerDependencies": { + "devtools-protocol": "*" + } + }, + "node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "license": "ISC", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "license": "MIT" + }, + "node_modules/commander": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-12.1.0.tgz", + "integrity": "sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==", + "license": "MIT", + "engines": { + "node": ">=18" + } + }, + "node_modules/cosmiconfig": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-9.0.1.tgz", + "integrity": "sha512-hr4ihw+DBqcvrsEDioRO31Z17x71pUYoNe/4h6Z0wB72p7MU7/9gH8Q3s12NFhHPfYBBOV3qyfUxmr/Yn3shnQ==", + "license": "MIT", + "dependencies": { + "env-paths": "^2.2.1", + "import-fresh": "^3.3.0", + "js-yaml": "^4.1.0", + "parse-json": "^5.2.0" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/d-fischer" + }, + "peerDependencies": { + "typescript": ">=4.9.5" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/data-uri-to-buffer": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-6.0.2.tgz", + "integrity": "sha512-7hvf7/GW8e86rW0ptuwS3OcBGDjIi6SZva7hCyWC0yYry2cOPmLIjXAUHI6DK2HsnwJd9ifmt57i8eV2n4YNpw==", + "license": "MIT", + "engines": { + "node": ">= 14" + } + }, + "node_modules/debug": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/degenerator": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/degenerator/-/degenerator-5.0.1.tgz", + "integrity": "sha512-TllpMR/t0M5sqCXfj85i4XaAzxmS5tVA16dqvdkMwGmzI+dXLXnw3J+3Vdv7VKw+ThlTMboK6i9rnZ6Nntj5CQ==", + "license": "MIT", + "dependencies": { + "ast-types": "^0.13.4", + "escodegen": "^2.1.0", + "esprima": "^4.0.1" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/devtools-protocol": { + "version": "0.0.1367902", + "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1367902.tgz", + "integrity": "sha512-XxtPuC3PGakY6PD7dG66/o8KwJ/LkH2/EKe19Dcw58w53dv4/vSQEkn/SzuyhHE2q4zPgCkxQBxus3VV4ql+Pg==", + "license": "BSD-3-Clause", + "peer": true + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "license": "MIT" + }, + "node_modules/end-of-stream": { + "version": "1.4.5", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.5.tgz", + "integrity": "sha512-ooEGc6HP26xXq/N+GCGOT0JKCLDGrq2bQUZrQ7gyrJiZANJ/8YDTxTpQBXGMn+WbIQXNVpyWymm7KYVICQnyOg==", + "license": "MIT", + "dependencies": { + "once": "^1.4.0" + } + }, + "node_modules/env-paths": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/error-ex": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.4.tgz", + "integrity": "sha512-sqQamAnR14VgCr1A618A3sGrygcpK+HEbenA/HiEAkkUwcZIIB/tgWqHFxWgOyDh4nB4JCRimh79dR5Ywc9MDQ==", + "license": "MIT", + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/escodegen": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.1.0.tgz", + "integrity": "sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==", + "license": "BSD-2-Clause", + "dependencies": { + "esprima": "^4.0.1", + "estraverse": "^5.2.0", + "esutils": "^2.0.2" + }, + "bin": { + "escodegen": "bin/escodegen.js", + "esgenerate": "bin/esgenerate.js" + }, + "engines": { + "node": ">=6.0" + }, + "optionalDependencies": { + "source-map": "~0.6.1" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "license": "BSD-2-Clause", + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "license": "BSD-2-Clause", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/events-universal": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/events-universal/-/events-universal-1.0.1.tgz", + "integrity": "sha512-LUd5euvbMLpwOF8m6ivPCbhQeSiYVNb8Vs0fQ8QjXo0JTkEHpz8pxdQf0gStltaPpw0Cca8b39KxvK9cfKRiAw==", + "license": "Apache-2.0", + "dependencies": { + "bare-events": "^2.7.0" + } + }, + "node_modules/extract-zip": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz", + "integrity": "sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==", + "license": "BSD-2-Clause", + "dependencies": { + "debug": "^4.1.1", + "get-stream": "^5.1.0", + "yauzl": "^2.10.0" + }, + "bin": { + "extract-zip": "cli.js" + }, + "engines": { + "node": ">= 10.17.0" + }, + "optionalDependencies": { + "@types/yauzl": "^2.9.1" + } + }, + "node_modules/fast-fifo": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/fast-fifo/-/fast-fifo-1.3.2.tgz", + "integrity": "sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ==", + "license": "MIT" + }, + "node_modules/fd-slicer": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", + "integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==", + "license": "MIT", + "dependencies": { + "pend": "~1.2.0" + } + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "license": "ISC", + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "license": "MIT", + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/get-uri": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/get-uri/-/get-uri-6.0.5.tgz", + "integrity": "sha512-b1O07XYq8eRuVzBNgJLstU6FYc1tS6wnMtF1I1D9lE8LxZSOGZ7LhxN54yPP6mGw5f2CkXY2BQUL9Fx41qvcIg==", + "license": "MIT", + "dependencies": { + "basic-ftp": "^5.0.2", + "data-uri-to-buffer": "^6.0.2", + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/http-proxy-agent": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz", + "integrity": "sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==", + "license": "MIT", + "dependencies": { + "agent-base": "^7.1.0", + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/https-proxy-agent": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", + "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", + "license": "MIT", + "dependencies": { + "agent-base": "^7.1.2", + "debug": "4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "BSD-3-Clause" + }, + "node_modules/import-fresh": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz", + "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==", + "license": "MIT", + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ip-address": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-10.1.0.tgz", + "integrity": "sha512-XXADHxXmvT9+CRxhXg56LJovE+bmWnEWB78LB83VZTprKTmaC5QfruXocxzTZ2Kl0DNwKuBdlIhjL8LeY8Sf8Q==", + "license": "MIT", + "engines": { + "node": ">= 12" + } + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "license": "MIT" + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "license": "MIT" + }, + "node_modules/js-yaml": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.1.tgz", + "integrity": "sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==", + "license": "MIT", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "license": "MIT" + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "license": "MIT" + }, + "node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/mitt": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/mitt/-/mitt-3.0.1.tgz", + "integrity": "sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==", + "license": "MIT" + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "license": "MIT" + }, + "node_modules/netmask": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/netmask/-/netmask-2.0.2.tgz", + "integrity": "sha512-dBpDMdxv9Irdq66304OLfEmQ9tbNRFnFTuZiLo+bD+r332bBmMJ8GBLXklIXXgxd3+v9+KUnZaUR5PJMa75Gsg==", + "license": "MIT", + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "license": "ISC", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/pac-proxy-agent": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/pac-proxy-agent/-/pac-proxy-agent-7.2.0.tgz", + "integrity": "sha512-TEB8ESquiLMc0lV8vcd5Ql/JAKAoyzHFXaStwjkzpOpC5Yv+pIzLfHvjTSdf3vpa2bMiUQrg9i6276yn8666aA==", + "license": "MIT", + "dependencies": { + "@tootallnate/quickjs-emscripten": "^0.23.0", + "agent-base": "^7.1.2", + "debug": "^4.3.4", + "get-uri": "^6.0.1", + "http-proxy-agent": "^7.0.0", + "https-proxy-agent": "^7.0.6", + "pac-resolver": "^7.0.1", + "socks-proxy-agent": "^8.0.5" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/pac-resolver": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/pac-resolver/-/pac-resolver-7.0.1.tgz", + "integrity": "sha512-5NPgf87AT2STgwa2ntRMr45jTKrYBGkVU36yT0ig/n/GMAa3oPqhZfIQ2kMEimReg0+t9kZViDVZ83qfVUlckg==", + "license": "MIT", + "dependencies": { + "degenerator": "^5.0.0", + "netmask": "^2.0.2" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "license": "MIT", + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pend": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", + "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==", + "license": "MIT" + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "license": "ISC" + }, + "node_modules/progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "license": "MIT", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/proxy-agent": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/proxy-agent/-/proxy-agent-6.5.0.tgz", + "integrity": "sha512-TmatMXdr2KlRiA2CyDu8GqR8EjahTG3aY3nXjdzFyoZbmB8hrBsTyMezhULIXKnC0jpfjlmiZ3+EaCzoInSu/A==", + "license": "MIT", + "dependencies": { + "agent-base": "^7.1.2", + "debug": "^4.3.4", + "http-proxy-agent": "^7.0.1", + "https-proxy-agent": "^7.0.6", + "lru-cache": "^7.14.1", + "pac-proxy-agent": "^7.1.0", + "proxy-from-env": "^1.1.0", + "socks-proxy-agent": "^8.0.5" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==", + "license": "MIT" + }, + "node_modules/pump": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.4.tgz", + "integrity": "sha512-VS7sjc6KR7e1ukRFhQSY5LM2uBWAUPiOPa/A3mkKmiMwSmRFUITt0xuj+/lesgnCv+dPIEYlkzrcyXgquIHMcA==", + "license": "MIT", + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/puppeteer": { + "version": "23.11.1", + "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-23.11.1.tgz", + "integrity": "sha512-53uIX3KR5en8l7Vd8n5DUv90Ae9QDQsyIthaUFVzwV6yU750RjqRznEtNMBT20VthqAdemnJN+hxVdmMHKt7Zw==", + "deprecated": "< 24.15.0 is no longer supported", + "hasInstallScript": true, + "license": "Apache-2.0", + "dependencies": { + "@puppeteer/browsers": "2.6.1", + "chromium-bidi": "0.11.0", + "cosmiconfig": "^9.0.0", + "devtools-protocol": "0.0.1367902", + "puppeteer-core": "23.11.1", + "typed-query-selector": "^2.12.0" + }, + "bin": { + "puppeteer": "lib/cjs/puppeteer/node/cli.js" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/puppeteer-core": { + "version": "23.11.1", + "resolved": "https://registry.npmjs.org/puppeteer-core/-/puppeteer-core-23.11.1.tgz", + "integrity": "sha512-3HZ2/7hdDKZvZQ7dhhITOUg4/wOrDRjyK2ZBllRB0ZCOi9u0cwq1ACHDjBB+nX+7+kltHjQvBRdeY7+W0T+7Gg==", + "license": "Apache-2.0", + "dependencies": { + "@puppeteer/browsers": "2.6.1", + "chromium-bidi": "0.11.0", + "debug": "^4.4.0", + "devtools-protocol": "0.0.1367902", + "typed-query-selector": "^2.12.0", + "ws": "^8.18.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/semver": { + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz", + "integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==", + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/smart-buffer": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", + "license": "MIT", + "engines": { + "node": ">= 6.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socks": { + "version": "2.8.7", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.7.tgz", + "integrity": "sha512-HLpt+uLy/pxB+bum/9DzAgiKS8CX1EvbWxI4zlmgGCExImLdiad2iCwXT5Z4c9c3Eq8rP2318mPW2c+QbtjK8A==", + "license": "MIT", + "dependencies": { + "ip-address": "^10.0.1", + "smart-buffer": "^4.2.0" + }, + "engines": { + "node": ">= 10.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socks-proxy-agent": { + "version": "8.0.5", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.5.tgz", + "integrity": "sha512-HehCEsotFqbPW9sJ8WVYB6UbmIMv7kUUORIF2Nncq4VQvBfNBLibW9YZR5dlYCSUhwcD628pRllm7n+E+YTzJw==", + "license": "MIT", + "dependencies": { + "agent-base": "^7.1.2", + "debug": "^4.3.4", + "socks": "^2.8.3" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "license": "BSD-3-Clause", + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/streamx": { + "version": "2.23.0", + "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.23.0.tgz", + "integrity": "sha512-kn+e44esVfn2Fa/O0CPFcex27fjIL6MkVae0Mm6q+E6f0hWv578YCERbv+4m02cjxvDsPKLnmxral/rR6lBMAg==", + "license": "MIT", + "dependencies": { + "events-universal": "^1.0.0", + "fast-fifo": "^1.3.2", + "text-decoder": "^1.1.0" + } + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tar-fs": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-3.1.2.tgz", + "integrity": "sha512-QGxxTxxyleAdyM3kpFs14ymbYmNFrfY+pHj7Z8FgtbZ7w2//VAgLMac7sT6nRpIHjppXO2AwwEOg0bPFVRcmXw==", + "license": "MIT", + "dependencies": { + "pump": "^3.0.0", + "tar-stream": "^3.1.5" + }, + "optionalDependencies": { + "bare-fs": "^4.0.1", + "bare-path": "^3.0.0" + } + }, + "node_modules/tar-stream": { + "version": "3.1.8", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-3.1.8.tgz", + "integrity": "sha512-U6QpVRyCGHva435KoNWy9PRoi2IFYCgtEhq9nmrPPpbRacPs9IH4aJ3gbrFC8dPcXvdSZ4XXfXT5Fshbp2MtlQ==", + "license": "MIT", + "dependencies": { + "b4a": "^1.6.4", + "bare-fs": "^4.5.5", + "fast-fifo": "^1.2.0", + "streamx": "^2.15.0" + } + }, + "node_modules/teex": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/teex/-/teex-1.0.1.tgz", + "integrity": "sha512-eYE6iEI62Ni1H8oIa7KlDU6uQBtqr4Eajni3wX7rpfXD8ysFx8z0+dri+KWEPWpBsxXfxu58x/0jvTVT1ekOSg==", + "license": "MIT", + "dependencies": { + "streamx": "^2.12.5" + } + }, + "node_modules/text-decoder": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/text-decoder/-/text-decoder-1.2.7.tgz", + "integrity": "sha512-vlLytXkeP4xvEq2otHeJfSQIRyWxo/oZGEbXrtEEF9Hnmrdly59sUbzZ/QgyWuLYHctCHxFF4tRQZNQ9k60ExQ==", + "license": "Apache-2.0", + "dependencies": { + "b4a": "^1.6.4" + } + }, + "node_modules/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", + "license": "MIT" + }, + "node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", + "license": "0BSD" + }, + "node_modules/typed-query-selector": { + "version": "2.12.1", + "resolved": "https://registry.npmjs.org/typed-query-selector/-/typed-query-selector-2.12.1.tgz", + "integrity": "sha512-uzR+FzI8qrUEIu96oaeBJmd9E7CFEiQ3goA5qCVgc4s5llSubcfGHq9yUstZx/k4s9dXHVKsE35YWoFyvEqEHA==", + "license": "MIT" + }, + "node_modules/typescript": { + "version": "5.9.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz", + "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", + "devOptional": true, + "license": "Apache-2.0", + "peer": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/unbzip2-stream": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/unbzip2-stream/-/unbzip2-stream-1.4.3.tgz", + "integrity": "sha512-mlExGW4w71ebDJviH16lQLtZS32VKqsSfk80GCfUlwT/4/hNRFsoscrF/c++9xinkMzECL1uL9DDwXqFWkruPg==", + "license": "MIT", + "dependencies": { + "buffer": "^5.2.1", + "through": "^2.3.8" + } + }, + "node_modules/undici-types": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz", + "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==", + "devOptional": true, + "license": "MIT" + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "license": "ISC" + }, + "node_modules/ws": { + "version": "8.19.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.19.0.tgz", + "integrity": "sha512-blAT2mjOEIi0ZzruJfIhb3nps74PRWTCz1IjglWEEpQl5XS/UNama6u2/rjFkDDouqr4L67ry+1aGIALViWjDg==", + "license": "MIT", + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "license": "ISC", + "engines": { + "node": ">=10" + } + }, + "node_modules/yargs": { + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", + "license": "MIT", + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/yauzl": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", + "integrity": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==", + "license": "MIT", + "dependencies": { + "buffer-crc32": "~0.2.3", + "fd-slicer": "~1.1.0" + } + }, + "node_modules/zod": { + "version": "3.23.8", + "resolved": "https://registry.npmjs.org/zod/-/zod-3.23.8.tgz", + "integrity": "sha512-XBx9AXhXktjUqnepgTiE5flcKIYWi/rme0Eaj+5Y0lftuGBq+jyRu/md4WnuxqgP1ubdpNCsYEYPxrzVHD8d6g==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/colinhacks" + } + } + } +} diff --git a/packages/perf-tools/package.json b/packages/perf-tools/package.json index 74826c07..50a18098 100644 --- a/packages/perf-tools/package.json +++ b/packages/perf-tools/package.json @@ -9,7 +9,7 @@ "hytopia-bench": "dist/cli.js" }, "scripts": { - "build": "tsc", + "build": "tsc && node scripts/copy-assets.mjs", "dev": "tsc --watch", "lint": "eslint src/" }, @@ -17,11 +17,13 @@ "js-yaml": "^4.1.0", "puppeteer": "^23.0.0", "commander": "^12.0.0", - "chalk": "^5.3.0" + "chalk": "^5.3.0", + "ws": "^8.18.3" }, "devDependencies": { "@types/js-yaml": "^4.0.9", "@types/node": "^20.0.0", + "@types/ws": "^8.18.1", "typescript": "^5.4.0" }, "peerDependencies": { diff --git a/packages/perf-tools/scripts/copy-assets.mjs b/packages/perf-tools/scripts/copy-assets.mjs new file mode 100644 index 00000000..3a13edd2 --- /dev/null +++ b/packages/perf-tools/scripts/copy-assets.mjs @@ -0,0 +1,20 @@ +import * as fs from 'node:fs'; +import * as path from 'node:path'; +import { fileURLToPath } from 'node:url'; + +const __dirname = path.dirname(fileURLToPath(import.meta.url)); +const pkgRoot = path.resolve(__dirname, '..'); +const srcPresets = path.join(pkgRoot, 'src', 'presets'); +const distPresets = path.join(pkgRoot, 'dist', 'presets'); + +fs.mkdirSync(distPresets, { recursive: true }); + +for (const file of fs.readdirSync(srcPresets)) { + if (!file.endsWith('.yaml') && !file.endsWith('.yml')) continue; + + fs.copyFileSync( + path.join(srcPresets, file), + path.join(distPresets, file), + ); +} + diff --git a/packages/perf-tools/src/cli.ts b/packages/perf-tools/src/cli.ts index 76e8d324..6d90e764 100644 --- a/packages/perf-tools/src/cli.ts +++ b/packages/perf-tools/src/cli.ts @@ -2,6 +2,7 @@ import * as fs from 'node:fs'; import * as path from 'node:path'; +import { fileURLToPath } from 'node:url'; import { Command } from 'commander'; import { loadScenario } from './runners/ScenarioLoader.js'; import BenchmarkRunner from './runners/BenchmarkRunner.js'; @@ -9,6 +10,8 @@ import BaselineComparer from './runners/BaselineComparer.js'; import ConsoleReporter from './reporters/ConsoleReporter.js'; import JsonReporter from './reporters/JsonReporter.js'; +const __dirname = path.dirname(fileURLToPath(import.meta.url)); + const program = new Command(); program @@ -24,16 +27,16 @@ program .option('--output ', 'Write results to JSON file') .option('--full-data', 'Include raw metric data in output') .option('--baseline ', 'Compare results against a baseline JSON') - .option('--server-cmd ', 'Command to start the game server', 'npm run dev') - .option('--server-cwd ', 'Working directory for server', '.') - .option('--client-url ', 'Client URL', 'http://localhost:8080') + .option('--server-cmd ', 'Command to start the game server') + .option('--server-cwd ', 'Working directory for server') + .option('--client-url ', 'Server base URL (used for health + perf endpoints)', 'https://local.hytopiahosting.com:8080') .option('--no-headless', 'Run browser in visible mode') .option('--verbose', 'Enable verbose logging') .action(async (scenarioPath, options) => { let scenario; if (options.preset) { - const presetPath = path.join(import.meta.dirname, 'presets', `${options.preset}.yaml`); + const presetPath = path.join(__dirname, 'presets', `${options.preset}.yaml`); if (!fs.existsSync(presetPath)) { console.error(`Unknown preset: ${options.preset}. Available: idle, stress, large-world, many-players, combined`); @@ -123,7 +126,7 @@ program .command('presets') .description('List available built-in presets') .action(() => { - const presetsDir = path.join(import.meta.dirname, 'presets'); + const presetsDir = path.join(__dirname, 'presets'); if (!fs.existsSync(presetsDir)) { console.log('No presets directory found'); diff --git a/packages/perf-tools/src/presets/combined.yaml b/packages/perf-tools/src/presets/combined.yaml index f896bb05..ef3a3d84 100644 --- a/packages/perf-tools/src/presets/combined.yaml +++ b/packages/perf-tools/src/presets/combined.yaml @@ -6,7 +6,7 @@ phases: - name: load-world actions: - type: load_map - mapPath: "assets/maps/large-test-world.json" + mapPath: "assets/maps/boilerplate.json" - name: spawn-all actions: - type: spawn_bots diff --git a/packages/perf-tools/src/presets/large-world.yaml b/packages/perf-tools/src/presets/large-world.yaml index 40baa3d1..fa235bad 100644 --- a/packages/perf-tools/src/presets/large-world.yaml +++ b/packages/perf-tools/src/presets/large-world.yaml @@ -5,7 +5,7 @@ phases: - name: load-world actions: - type: load_map - mapPath: "assets/maps/large-test-world.json" + mapPath: "assets/maps/boilerplate.json" - name: spawn-bots actions: - type: spawn_bots diff --git a/packages/perf-tools/src/presets/stress.yaml b/packages/perf-tools/src/presets/stress.yaml index 9eb2b0ce..4034e9d0 100644 --- a/packages/perf-tools/src/presets/stress.yaml +++ b/packages/perf-tools/src/presets/stress.yaml @@ -1,9 +1,11 @@ name: "stress-test" -description: "Stress test with 500 entities and 100 bots performing various actions" +description: "Stress test with 100 bots performing various actions" warmupMs: 5000 phases: - name: spawn-entities actions: + - type: load_map + mapPath: "assets/maps/boilerplate-small.json" - type: spawn_bots count: 50 behavior: random_walk diff --git a/packages/perf-tools/src/runners/BenchmarkRunner.ts b/packages/perf-tools/src/runners/BenchmarkRunner.ts index dd7986a2..e6dfead6 100644 --- a/packages/perf-tools/src/runners/BenchmarkRunner.ts +++ b/packages/perf-tools/src/runners/BenchmarkRunner.ts @@ -1,6 +1,10 @@ +import * as fs from 'node:fs'; +import * as path from 'node:path'; +import * as net from 'node:net'; import { spawn, type ChildProcess } from 'node:child_process'; import MetricCollector, { type CollectedMetrics } from './MetricCollector.js'; -import HeadlessClient from './HeadlessClient.js'; +import ServerApiClient from './ServerApiClient.js'; +import WsClient from './WsClient.js'; import { type Scenario, type ScenarioPhase, parseDuration } from './ScenarioLoader.js'; import type { BaselineResult } from './BaselineComparer.js'; @@ -30,19 +34,20 @@ export default class BenchmarkRunner { private _options: Required; private _collector: MetricCollector; private _serverProcess: ChildProcess | null = null; - private _clients: HeadlessClient[] = []; + private _serverApi: ServerApiClient; + private _wsClients: WsClient[] = []; private _log: (msg: string) => void; constructor(options?: BenchmarkRunnerOptions) { this._options = { - serverCommand: 'npm run dev', - serverCwd: '.', - clientUrl: 'http://localhost:8080', - headless: true, - verbose: false, - ...options, + serverCommand: options?.serverCommand ?? 'npm run build:perf-harness && node src/perf-harness.mjs', + serverCwd: options?.serverCwd ?? resolveDefaultServerCwd(process.cwd()), + clientUrl: options?.clientUrl ?? 'https://local.hytopiahosting.com:8080', + headless: options?.headless ?? true, + verbose: options?.verbose ?? false, }; this._collector = new MetricCollector(); + this._serverApi = new ServerApiClient(this._options.clientUrl); this._log = this._options.verbose ? console.log : () => {}; } @@ -53,12 +58,11 @@ export default class BenchmarkRunner { this._log(`[bench] Starting scenario: ${scenario.name}`); try { - if (scenario.serverScript) { - await this._startServer(scenario.serverScript); - } + await this._startServer(); + await this._serverApi.waitForHealthy(); if (scenario.clients && scenario.clients > 0) { - await this._launchClients(scenario.clients); + await this._launchWsClients(scenario.clients); } if (scenario.warmupMs) { @@ -93,6 +97,7 @@ export default class BenchmarkRunner { this._log(`[bench] Phase: ${phase.name}`); if (phase.collect) { + await this._serverApi.reset(); this._collector.startCollecting(); } @@ -107,11 +112,27 @@ export default class BenchmarkRunner { } break; case 'spawn_bots': + await this._serverApi.action({ + type: 'spawn_bots', + count: action.count ?? 0, + behavior: action.behavior, + }); + break; case 'despawn_bots': - case 'spawn_entities': + await this._serverApi.action({ + type: 'despawn_bots', + count: action.count, + }); + break; case 'load_map': + await this._serverApi.action({ + type: 'load_map', + mapPath: action.mapPath ?? '', + }); + break; + case 'spawn_entities': case 'custom': - this._log(`[bench] Action ${action.type} - would execute via server API`); + throw new Error(`Action not supported yet: ${action.type}`); break; } } @@ -132,6 +153,11 @@ export default class BenchmarkRunner { } private async _collectDuring(durationMs: number): Promise { + if (!this._collector.isCollecting) { + await this._wait(durationMs); + return; + } + const intervalMs = 1000; const intervals = Math.ceil(durationMs / intervalMs); @@ -140,54 +166,70 @@ export default class BenchmarkRunner { await this._wait(remaining); - for (const client of this._clients) { - const snapshot = await client.collectClientMetrics(); - - if (snapshot) { - this._collector.addClientSnapshot(snapshot); - } - } + const snapshot = await this._serverApi.snapshot(); + this._collector.addServerSnapshot(snapshot); } } - private async _startServer(scriptPath: string): Promise { - this._log(`[bench] Starting server: ${scriptPath}`); + private async _startServer(): Promise { + const baseUrl = new URL(this._options.clientUrl); + const startPort = baseUrl.port ? Number(baseUrl.port) : (baseUrl.protocol === 'https:' ? 443 : 80); + const port = await pickAvailablePort(startPort); + const finalUrl = new URL(this._options.clientUrl); + + finalUrl.port = String(port); + this._options.clientUrl = finalUrl.toString(); + this._serverApi = new ServerApiClient(this._options.clientUrl); - const [cmd, ...args] = this._options.serverCommand.split(' '); + this._log(`[bench] Starting server (cwd=${this._options.serverCwd}): ${this._options.serverCommand}`); + this._log(`[bench] Using server URL: ${this._options.clientUrl}`); - this._serverProcess = spawn(cmd, args, { + this._serverProcess = spawn(this._options.serverCommand, { cwd: this._options.serverCwd, + shell: true, + detached: true, stdio: this._options.verbose ? 'inherit' : 'pipe', - env: { ...process.env, PERF_SCRIPT: scriptPath }, + env: { + ...process.env, + HYTOPIA_PERF_TOOLS: '1', + NODE_ENV: 'production', + PORT: String(port), + }, }); - - await this._wait(3000); } - private async _launchClients(count: number): Promise { - this._log(`[bench] Launching ${count} headless client(s)`); + private async _launchWsClients(count: number): Promise { + const wsUrl = toWebSocketUrl(this._options.clientUrl); + + this._log(`[bench] Launching ${count} WebSocket client(s): ${wsUrl}`); for (let i = 0; i < count; i++) { - const client = new HeadlessClient({ - url: this._options.clientUrl, - headless: this._options.headless, - }); - - await client.launch(); - await client.navigate(); - this._clients.push(client); + const client = new WsClient({ url: wsUrl }); + await client.connect(); + this._wsClients.push(client); } } private async _cleanup(): Promise { - for (const client of this._clients) { + for (const client of this._wsClients) { await client.close(); } - this._clients = []; + this._wsClients = []; if (this._serverProcess) { - this._serverProcess.kill('SIGTERM'); + const pid = this._serverProcess.pid; + + try { + if (pid) { + process.kill(-pid, 'SIGTERM'); + } else { + this._serverProcess.kill('SIGTERM'); + } + } catch { + this._serverProcess.kill('SIGTERM'); + } + this._serverProcess = null; } } @@ -250,3 +292,58 @@ export default class BenchmarkRunner { return new Promise(resolve => setTimeout(resolve, ms)); } } + +function resolveDefaultServerCwd(startDir: string): string { + let dir = startDir; + + for (let i = 0; i < 8; i++) { + const serverPkg = path.join(dir, 'server', 'package.json'); + + if (fs.existsSync(serverPkg)) { + return path.join(dir, 'server'); + } + + const parent = path.dirname(dir); + if (parent === dir) break; + dir = parent; + } + + return path.join(startDir, 'server'); +} + +function toWebSocketUrl(baseUrl: string): string { + const url = new URL(baseUrl); + url.protocol = url.protocol === 'https:' ? 'wss:' : 'ws:'; + url.pathname = '/'; + url.search = ''; + url.hash = ''; + return url.toString(); +} + +async function pickAvailablePort(startPort: number): Promise { + const minPort = Math.max(1, Math.floor(startPort)); + + for (let port = minPort; port < minPort + 50; port++) { + // eslint-disable-next-line no-await-in-loop + const available = await canListen(port); + if (available) return port; + } + + throw new Error(`No available port found (starting from ${startPort})`); +} + +async function canListen(port: number): Promise { + return await new Promise(resolve => { + const server = net.createServer(); + + server.unref(); + + server.once('error', () => { + resolve(false); + }); + + server.listen(port, '127.0.0.1', () => { + server.close(() => resolve(true)); + }); + }); +} diff --git a/packages/perf-tools/src/runners/ServerApiClient.ts b/packages/perf-tools/src/runners/ServerApiClient.ts new file mode 100644 index 00000000..f0ca619d --- /dev/null +++ b/packages/perf-tools/src/runners/ServerApiClient.ts @@ -0,0 +1,138 @@ +import type { ServerSnapshot } from './MetricCollector.js'; + +interface HealthResponse { + status?: string; + version?: string; + runtime?: string; + playerCount?: number; +} + +interface PerfSnapshotResponse { + timestamp: number; + avgTickMs: number; + maxTickMs: number; + p95TickMs: number; + p99TickMs: number; + ticksOverBudget: number; + totalTicks: number; + budgetMs: number; + operations: Record; + memory: { heapUsedMb: number; heapTotalMb: number; rssMb: number }; +} + +export type ServerAction = + | { type: 'spawn_bots'; count: number; behavior?: string } + | { type: 'despawn_bots'; count?: number } + | { type: 'load_map'; mapPath: string } + | { type: 'reset' }; + +export default class ServerApiClient { + private _baseUrl: URL; + private _token: string | undefined; + + constructor(baseUrl: string, options?: { token?: string }) { + this._baseUrl = new URL(baseUrl); + this._token = options?.token; + } + + public async waitForHealthy(timeoutMs: number = 90_000): Promise { + const start = Date.now(); + let lastError: unknown; + + while (Date.now() - start < timeoutMs) { + try { + const health = await this.health(); + + if (health.status === 'OK') { + return health; + } + } catch (error) { + lastError = error; + } + + await new Promise(resolve => setTimeout(resolve, 500)); + } + + const message = lastError instanceof Error ? lastError.message : String(lastError ?? 'unknown'); + throw new Error(`Server not healthy after ${timeoutMs}ms: ${message}`); + } + + public async health(): Promise { + const url = new URL('/', this._baseUrl); + const res = await fetch(url, { method: 'GET' }); + + if (!res.ok) { + throw new Error(`Health check failed: ${res.status} ${res.statusText}`); + } + + return await res.json() as HealthResponse; + } + + public async reset(): Promise { + const url = new URL('/__perf/reset', this._baseUrl); + const res = await fetch(url, { + method: 'POST', + headers: this._headers(), + }); + + if (!res.ok) { + throw new Error(`Reset failed: ${res.status} ${res.statusText}`); + } + } + + public async action(action: ServerAction): Promise { + const url = new URL('/__perf/action', this._baseUrl); + const res = await fetch(url, { + method: 'POST', + headers: { + ...this._headers(), + 'content-type': 'application/json', + }, + body: JSON.stringify(action), + }); + + if (!res.ok) { + const text = await res.text().catch(() => ''); + throw new Error(`Action failed: ${res.status} ${res.statusText}${text ? ` - ${text}` : ''}`); + } + } + + public async snapshot(): Promise { + const url = new URL('/__perf/snapshot', this._baseUrl); + const res = await fetch(url, { method: 'GET', headers: this._headers() }); + + if (!res.ok) { + throw new Error(`Snapshot failed: ${res.status} ${res.statusText}`); + } + + const data = await res.json() as PerfSnapshotResponse; + + return { + timestamp: data.timestamp, + avgTickMs: data.avgTickMs, + maxTickMs: data.maxTickMs, + p95TickMs: data.p95TickMs, + p99TickMs: data.p99TickMs, + ticksOverBudget: data.ticksOverBudget, + totalTicks: data.totalTicks, + budgetMs: data.budgetMs, + operations: data.operations, + memory: data.memory, + }; + } + + private _headers(): Record { + if (!this._token) return {}; + + return { + 'x-hytopia-perf-token': this._token, + }; + } +} + diff --git a/packages/perf-tools/src/runners/WsClient.ts b/packages/perf-tools/src/runners/WsClient.ts new file mode 100644 index 00000000..30b302c9 --- /dev/null +++ b/packages/perf-tools/src/runners/WsClient.ts @@ -0,0 +1,60 @@ +import { WebSocket } from 'ws'; + +export interface WsClientOptions { + url: string; +} + +export default class WsClient { + private _ws: WebSocket | null = null; + private _options: WsClientOptions; + + constructor(options: WsClientOptions) { + this._options = options; + } + + public async connect(): Promise { + if (this._ws) return; + + await new Promise((resolve, reject) => { + const ws = new WebSocket(this._options.url); + + const cleanup = () => { + ws.off('open', onOpen); + ws.off('error', onError); + }; + + const onOpen = () => { + cleanup(); + this._ws = ws; + resolve(); + }; + + const onError = (err: unknown) => { + cleanup(); + try { ws.close(); } catch { /* NOOP */ } + reject(err); + }; + + ws.on('open', onOpen); + ws.on('error', onError); + ws.on('message', () => {}); + }); + } + + public async close(): Promise { + const ws = this._ws; + this._ws = null; + + if (!ws) return; + + await new Promise(resolve => { + ws.once('close', () => resolve()); + try { + ws.close(); + } catch { + resolve(); + } + }); + } +} + diff --git a/server/eslint.config.js b/server/eslint.config.js index 6b477021..94e352c3 100644 --- a/server/eslint.config.js +++ b/server/eslint.config.js @@ -3,10 +3,12 @@ import tseslint from 'typescript-eslint'; import tsdoc from 'eslint-plugin-tsdoc'; export default tseslint.config( + { + ignores: ['./build/**/*', './dist/**/*', './src/**/*.mjs'], + }, eslint.configs.recommended, ...tseslint.configs.recommendedTypeChecked, { - ignores: ['./build/**/*', './dist/**/*'], languageOptions: { ecmaVersion: 'latest', sourceType: 'module', @@ -50,4 +52,4 @@ export default tseslint.config( 'tsdoc/syntax': 'warn', }, }, -); \ No newline at end of file +); diff --git a/server/package.json b/server/package.json index 2da25a97..fa641408 100644 --- a/server/package.json +++ b/server/package.json @@ -8,6 +8,7 @@ "dev": "nodemon -q --watch src --ext ts,json --ignore src/playground.mjs -x \"npm run build:playground && node src/playground.mjs\"", "build": "npm run build:server && npm run build:declaration && npm run build:api && npm run build:docs", "build:playground": "bun build src/playground.ts --minify --legal-comments=inline --target=node --format=esm --sourcemap=none --outfile=./src/playground.mjs --env=disable --external=@fails-components/webtransport --external=@fails-components/webtransport-transport-http3-quiche", + "build:perf-harness": "bun build src/perf/perf-harness.ts --minify --legal-comments=inline --target=node --format=esm --sourcemap=none --outfile=./src/perf-harness.mjs --env=disable --external=@fails-components/webtransport --external=@fails-components/webtransport-transport-http3-quiche", "build:server": "bun build src/index.ts --minify --legal-comments=inline --target=node --format=esm --sourcemap=none --outfile=../sdk/server.mjs --env=disable --external=@fails-components/webtransport --external=@fails-components/webtransport-transport-http3-quiche", "build:declaration": "tsc --emitDeclarationOnly --project tsconfig.json || true && tsc-alias", "build:docs": "npx api-documenter markdown --input-folder=../sdk --output-folder ../sdk/docs", diff --git a/server/src/metrics/NetworkMetrics.ts b/server/src/metrics/NetworkMetrics.ts index 877b8aad..608c59f1 100644 --- a/server/src/metrics/NetworkMetrics.ts +++ b/server/src/metrics/NetworkMetrics.ts @@ -54,6 +54,11 @@ export default class NetworkMetrics { this._enabled = false; } + public reset(): void { + this._lastSnapshotTime = performance.now(); + this._reset(); + } + public setConnectedPlayers(count: number): void { this._connectedPlayers = count; } diff --git a/server/src/metrics/PerformanceMonitor.ts b/server/src/metrics/PerformanceMonitor.ts index 320222ac..73d5e9bb 100644 --- a/server/src/metrics/PerformanceMonitor.ts +++ b/server/src/metrics/PerformanceMonitor.ts @@ -208,7 +208,6 @@ export default class PerformanceMonitor extends EventRouter { public recordPhase(phaseName: string, durationMs: number): void { this._currentPhases[phaseName] = durationMs; - this._recordOperation(phaseName, durationMs); } public endTick(): void { diff --git a/server/src/networking/Connection.ts b/server/src/networking/Connection.ts index 7fb8c0b7..b6f60831 100644 --- a/server/src/networking/Connection.ts +++ b/server/src/networking/Connection.ts @@ -5,6 +5,7 @@ import protocol from '@hytopia.com/server-protocol'; import ErrorHandler from '@/errors/ErrorHandler'; import EventRouter from '@/events/EventRouter'; import msgpackr from '@/shared/helpers/msgpackr'; +import NetworkMetrics from '@/metrics/NetworkMetrics'; import Telemetry, { TelemetrySpanOperation } from '@/metrics/Telemetry'; import type { AnyPacket } from '@hytopia.com/server-protocol'; import type { MessageEvent, ErrorEvent } from 'ws'; @@ -177,9 +178,15 @@ export default class Connection extends EventRouter { 'packetIds': packets.map(p => p[0]).join(','), }, }, span => { + const netMetrics = NetworkMetrics.instance; + const recordNetwork = netMetrics.isEnabled; + const start = recordNetwork ? performance.now() : 0; + let outputBuffer = msgpackr.pack(packets); - if (outputBuffer.byteLength > 64 * 1024) { // Compress packets larger than 64kb, mainly chunks. + const shouldCompress = outputBuffer.byteLength > 64 * 1024; + + if (shouldCompress) { // Compress packets larger than 64kb, mainly chunks. outputBuffer = gzipSync(outputBuffer, { level: 1 }); } @@ -187,6 +194,13 @@ export default class Connection extends EventRouter { Connection._cachedPacketsSerializedBuffer.set(packets, outputBuffer); + if (recordNetwork) { + netMetrics.recordSerialization(performance.now() - start); + if (shouldCompress) { + netMetrics.recordCompression(); + } + } + return outputBuffer; }); } @@ -406,10 +420,18 @@ export default class Connection extends EventRouter { if (!serializedBuffer) return; // failed to serialize. + const netMetrics = NetworkMetrics.instance; + const recordNetwork = netMetrics.isEnabled; + + let bytesSent = serializedBuffer.byteLength; + if (wtConnected) { if (reliable || serializedBuffer.byteLength > 1200) { // Unreliable Datagram cannot handle > 1200 bytes, we should make this dynamic based on session. // Webtransport reliable streams don't frame and will chunk data we MUST frame packets ourselves. - this._wtReliableWriter?.write(protocol.framePacketBuffer(serializedBuffer)).catch(() => { + const framed = protocol.framePacketBuffer(serializedBuffer); + bytesSent = framed.byteLength; + + this._wtReliableWriter?.write(framed).catch(() => { ErrorHandler.error('Connection.send(): WebTransport reliable write failed, connection closing?'); }); } else { @@ -421,6 +443,13 @@ export default class Connection extends EventRouter { this._ws!.send(serializedBuffer); } + if (recordNetwork) { + netMetrics.recordBytesSent(bytesSent); + for (let i = 0; i < packets.length; i++) { + netMetrics.recordPacketSent(); + } + } + this.emitWithGlobal(ConnectionEvent.PACKETS_SENT, { connection: this, packets, @@ -439,6 +468,14 @@ export default class Connection extends EventRouter { }; private _onMessage = (data: Buffer): void => { + const netMetrics = NetworkMetrics.instance; + const recordNetwork = netMetrics.isEnabled; + + if (recordNetwork) { + netMetrics.recordBytesReceived(data.byteLength); + netMetrics.recordPacketReceived(); + } + try { const packet = this._deserialize(data); diff --git a/server/src/networking/WebServer.ts b/server/src/networking/WebServer.ts index 9effada1..bc526d1c 100644 --- a/server/src/networking/WebServer.ts +++ b/server/src/networking/WebServer.ts @@ -7,6 +7,7 @@ import AssetsLibrary from '@/assets/AssetsLibrary'; import ErrorHandler from '@/errors/ErrorHandler'; import EventRouter from '@/events/EventRouter'; import PlayerManager from '@/players/PlayerManager'; +import PerfHarness from '@/perf/PerfHarness'; import { SSL_CERT, SSL_KEY } from '@/networking/ssl/certs'; import type { Socket as RawSocket } from 'net'; import type { Session } from '@/networking/PlatformGateway'; @@ -150,6 +151,8 @@ export default class WebServer extends EventRouter { return ErrorHandler.warning('WebServer.start(): already started'); } + PerfHarness.enableIfConfigured(); + this._server = http2.createSecureServer({ key: SSL_KEY, cert: SSL_CERT, allowHTTP1: true }); this._server.on('request', this._onRequest); // Works for both HTTP/1.1 and HTTP/2 (via compat layer) this._server.on('upgrade', this._onUpgrade); @@ -216,6 +219,10 @@ export default class WebServer extends EventRouter { return; } + if (PerfHarness.handleWebRequest(req, res)) { + return; + } + // Validate path const urlPath = decodeURIComponent(reqPath.split('?')[0]); if (urlPath.includes('..')) { diff --git a/server/src/perf/PerfHarness.ts b/server/src/perf/PerfHarness.ts new file mode 100644 index 00000000..8c05d6f4 --- /dev/null +++ b/server/src/perf/PerfHarness.ts @@ -0,0 +1,299 @@ +import fs from 'fs'; +import path from 'path'; +import BotManager from '@/bots/BotManager'; +import ChaseBehavior from '@/bots/behaviors/ChaseBehavior'; +import IdleBehavior from '@/bots/behaviors/IdleBehavior'; +import InteractBehavior from '@/bots/behaviors/InteractBehavior'; +import RandomWalkBehavior from '@/bots/behaviors/RandomWalkBehavior'; +import ErrorHandler from '@/errors/ErrorHandler'; +import NetworkMetrics from '@/metrics/NetworkMetrics'; +import PerformanceMonitor from '@/metrics/PerformanceMonitor'; +import PlayerManager from '@/players/PlayerManager'; +import WorldManager from '@/worlds/WorldManager'; +import type { BotBehavior } from '@/bots/BotPlayer'; +import type { WorldMap } from '@/worlds/World'; +import type http from 'http'; + +const PERF_PREFIX = '/__perf'; +const MAX_BODY_BYTES = 1024 * 1024; + +type PerfAction = + | { type: 'spawn_bots'; count: number; behavior?: string } + | { type: 'despawn_bots'; count?: number } + | { type: 'load_map'; mapPath: string } + | { type: 'reset' }; + +function isPerfToolsEnabled(): boolean { + const v = process.env.HYTOPIA_PERF_TOOLS; + + return v === '1' || v === 'true'; +} + +function isAuthorized(req: http.IncomingMessage): boolean { + const token = process.env.HYTOPIA_PERF_TOOLS_TOKEN; + if (!token) { + return true; + } + + const header = req.headers['x-hytopia-perf-token']; + + return header === token; +} + +function respondJson(res: http.ServerResponse, status: number, body: unknown): void { + res.writeHead(status, { + 'content-type': 'application/json', + 'cache-control': 'no-store', + 'access-control-allow-origin': '*', + }); + res.end(JSON.stringify(body)); +} + +function readJsonBody( + req: http.IncomingMessage, + res: http.ServerResponse, + onBody: (body: unknown) => void, +): void { + let received = 0; + const chunks: Buffer[] = []; + + req.on('data', (chunk: Buffer) => { + received += chunk.length; + + if (received > MAX_BODY_BYTES) { + respondJson(res, 413, { ok: false, error: 'Request body too large' }); + req.destroy(); + + return; + } + + chunks.push(chunk); + }); + + req.on('error', () => { + respondJson(res, 400, { ok: false, error: 'Failed to read request body' }); + }); + + req.on('end', () => { + try { + const raw = Buffer.concat(chunks).toString('utf-8'); + const json: unknown = raw.length > 0 ? JSON.parse(raw) as unknown : {}; + onBody(json); + } catch { + respondJson(res, 400, { ok: false, error: 'Invalid JSON body' }); + } + }); +} + +function resolveMapPath(mapPath: string): string | null { + const assetRoot = path.resolve('assets'); + + const normalized = mapPath + .trim() + .replace(/^\/+/, '') + .replace(/^assets[\\/]/, ''); + + const absolute = path.resolve(assetRoot, normalized); + + if (!absolute.startsWith(assetRoot)) { + return null; + } + + return absolute; +} + +function createBehavior(name: string | undefined): BotBehavior | null { + switch ((name ?? '').toLowerCase()) { + case '': + case 'idle': + return new IdleBehavior(); + case 'random_walk': + case 'randomwalk': + return new RandomWalkBehavior(); + case 'chase': + return new ChaseBehavior(); + case 'interact': + return new InteractBehavior(); + default: + return null; + } +} + +function spawnBots(count: number, behaviorName: string | undefined): { spawned: number } { + const world = WorldManager.instance.getDefaultWorld(); + const spawnedBots = Math.max(0, Math.floor(count)); + const origin = { x: 0, y: 10, z: 0 }; + const radius = Math.ceil(Math.sqrt(spawnedBots)) * 2; + + for (let i = 0; i < spawnedBots; i++) { + const angle = (i / Math.max(1, spawnedBots)) * Math.PI * 2; + const dist = (i % Math.max(1, radius)) * 0.8; + const behavior = createBehavior(behaviorName) ?? new IdleBehavior(); + + BotManager.instance.spawnBot(world, { + behavior, + spawnPosition: { + x: origin.x + Math.cos(angle) * dist, + y: origin.y, + z: origin.z + Math.sin(angle) * dist, + }, + }); + } + + return { spawned: spawnedBots }; +} + +function despawnBots(count?: number): { despawned: number; remaining: number } { + const bots = BotManager.instance.getAllBots(); + + if (count === undefined) { + const despawned = bots.length; + BotManager.instance.despawnAll(); + + return { despawned, remaining: 0 }; + } + + const target = Math.max(0, Math.floor(count)); + let despawned = 0; + + for (let i = bots.length - 1; i >= 0 && despawned < target; i--) { + BotManager.instance.despawnBot(bots[i].id); + despawned++; + } + + return { despawned, remaining: BotManager.instance.botCount }; +} + +function loadMapFromAssets(mapPath: string): { loaded: boolean; mapPath: string } { + const world = WorldManager.instance.getDefaultWorld(); + const resolved = resolveMapPath(mapPath); + + if (!resolved) { + throw new Error('Invalid mapPath'); + } + + if (!fs.existsSync(resolved)) { + throw new Error(`Map not found: ${mapPath}`); + } + + const raw = fs.readFileSync(resolved, 'utf-8'); + const map = JSON.parse(raw) as WorldMap; + world.loadMap(map); + + return { loaded: true, mapPath }; +} + +export default class PerfHarness { + public static enableIfConfigured(): void { + if (!isPerfToolsEnabled()) { + return; + } + + try { + if (!PerformanceMonitor.instance.isEnabled) { + PerformanceMonitor.instance.enable({ + snapshotIntervalMs: 0, + }); + } + + if (!NetworkMetrics.instance.isEnabled) { + NetworkMetrics.instance.enable(); + } + } catch (error) { + ErrorHandler.warning(`PerfHarness.enableIfConfigured(): Failed to enable perf tools. Error: ${String(error)}`); + } + } + + public static handleWebRequest(req: http.IncomingMessage, res: http.ServerResponse): boolean { + if (!isPerfToolsEnabled()) return false; + + const reqPath = req.url?.split('?')[0] ?? '/'; + + if (!reqPath.startsWith(`${PERF_PREFIX}/`)) return false; + + if (!isAuthorized(req)) { + respondJson(res, 401, { ok: false, error: 'Unauthorized' }); + + return true; + } + + const method = req.method ?? 'GET'; + + if (method === 'GET' && reqPath === `${PERF_PREFIX}/snapshot`) { + const perf = PerformanceMonitor.instance.getSnapshot(); + const network = NetworkMetrics.instance.isEnabled ? NetworkMetrics.instance.getSnapshot() : undefined; + + respondJson(res, 200, { + ...perf, + timestamp: Date.now(), + players: PlayerManager.instance.playerCount, + bots: BotManager.instance.botCount, + network, + }); + + return true; + } + + if (method === 'POST' && reqPath === `${PERF_PREFIX}/reset`) { + PerformanceMonitor.instance.resetStats(); + NetworkMetrics.instance.reset(); + respondJson(res, 200, { ok: true }); + + return true; + } + + if (method === 'POST' && reqPath === `${PERF_PREFIX}/action`) { + readJsonBody(req, res, body => { + try { + const action = body as Partial; + + switch (action.type) { + case 'spawn_bots': { + if (typeof action.count !== 'number') { + return respondJson(res, 400, { ok: false, error: '"count" is required' }); + } + + const result = spawnBots(action.count, typeof action.behavior === 'string' ? action.behavior : undefined); + respondJson(res, 200, { ok: true, result }); + + return; + } + case 'despawn_bots': { + const result = despawnBots(typeof action.count === 'number' ? action.count : undefined); + respondJson(res, 200, { ok: true, result }); + + return; + } + case 'load_map': { + if (typeof action.mapPath !== 'string') { + return respondJson(res, 400, { ok: false, error: '"mapPath" is required' }); + } + + const result = loadMapFromAssets(action.mapPath); + respondJson(res, 200, { ok: true, result }); + + return; + } + case 'reset': { + PerformanceMonitor.instance.resetStats(); + NetworkMetrics.instance.reset(); + respondJson(res, 200, { ok: true }); + + return; + } + default: + respondJson(res, 400, { ok: false, error: `Unsupported action: ${String(action.type)}` }); + } + } catch (error) { + respondJson(res, 500, { ok: false, error: (error as Error).message }); + } + }); + + return true; + } + + respondJson(res, 404, { ok: false, error: 'Not found' }); + + return true; + } +} diff --git a/server/src/perf/perf-harness.ts b/server/src/perf/perf-harness.ts new file mode 100644 index 00000000..3c64a6ae --- /dev/null +++ b/server/src/perf/perf-harness.ts @@ -0,0 +1,8 @@ +import { startServer } from '@/GameServer'; +import PerfHarness from '@/perf/PerfHarness'; + +startServer(world => { + PerfHarness.enableIfConfigured(); + world.simulation.enableDebugRendering(false); +}); + diff --git a/server/src/players/PlayerManager.ts b/server/src/players/PlayerManager.ts index 4f0a453f..58a32437 100644 --- a/server/src/players/PlayerManager.ts +++ b/server/src/players/PlayerManager.ts @@ -1,6 +1,7 @@ import { ConnectionEvent } from '@/networking/Connection'; import EventRouter from '@/events/EventRouter'; import ErrorHandler from '@/errors/ErrorHandler'; +import NetworkMetrics from '@/metrics/NetworkMetrics'; import PersistenceManager from '@/persistence/PersistenceManager'; import Player from '@/players/Player'; import WorldManager from '@/worlds/WorldManager'; @@ -167,6 +168,7 @@ export default class PlayerManager { player.joinWorld(world ?? WorldManager.instance.getDefaultWorld()); this._connectionPlayers.set(connection, player); + NetworkMetrics.instance.setConnectedPlayers(this.playerCount); } /** @internal */ @@ -207,6 +209,7 @@ export default class PlayerManager { } EventRouter.globalInstance.emit(PlayerManagerEvent.PLAYER_DISCONNECTED, { player }); + NetworkMetrics.instance.setConnectedPlayers(this.playerCount); } else { ErrorHandler.warning(`PlayerManager._onConnectionClosed(): Connection ${connection.id} not in the PlayerManager._connectionPlayers map.`); } From aa6f47b30afd6930d9e30c75a0ab2ed4f93ac321 Mon Sep 17 00:00:00 2001 From: web3dev1337 <160291380+web3dev1337@users.noreply.github.com> Date: Thu, 5 Mar 2026 19:36:14 +1100 Subject: [PATCH 09/40] docs: add remaining perf preset results --- ai-memory/docs/perf-final-2026-03-05/FINAL.md | 37 ++++++++ .../results/combined.json | 91 +++++++++++++++++++ .../results/large-world.json | 83 +++++++++++++++++ .../results/many-players.json | 86 ++++++++++++++++++ 4 files changed, 297 insertions(+) create mode 100644 ai-memory/docs/perf-final-2026-03-05/results/combined.json create mode 100644 ai-memory/docs/perf-final-2026-03-05/results/large-world.json create mode 100644 ai-memory/docs/perf-final-2026-03-05/results/many-players.json diff --git a/ai-memory/docs/perf-final-2026-03-05/FINAL.md b/ai-memory/docs/perf-final-2026-03-05/FINAL.md index f4c83be6..bcb6342c 100644 --- a/ai-memory/docs/perf-final-2026-03-05/FINAL.md +++ b/ai-memory/docs/perf-final-2026-03-05/FINAL.md @@ -428,6 +428,9 @@ This section reviews the “performance framework” implementation added in PR - `MetricCollector` supports tick reports/spikes, but `perf-tools` currently collects periodic snapshots only. - **Network metrics are collected but not surfaced in reports** - Server tracks bytes/packets/serialization/compression via `NetworkMetrics`, but the perf-tools baseline/report format doesn’t include it yet. +- **Join-storm chunk sync is not directly benchmarked yet** + - `perf-tools` currently connects WebSocket clients at scenario start, before phase actions run. + - This means scenarios that `load_map` in a later phase do not fully exercise the real “player join → send every chunk” burst path described earlier. - **The GitHub Actions workflows aren’t a hard gate yet** - Bench steps remain `continue-on-error: true`, and compare uses `|| true`. @@ -453,6 +456,9 @@ Results JSON (generated by `packages/perf-tools`): - `ai-memory/docs/perf-final-2026-03-05/results/idle.json` - `ai-memory/docs/perf-final-2026-03-05/results/stress.json` +- `ai-memory/docs/perf-final-2026-03-05/results/large-world.json` +- `ai-memory/docs/perf-final-2026-03-05/results/many-players.json` +- `ai-memory/docs/perf-final-2026-03-05/results/combined.json` #### Idle preset (`idle-baseline`) @@ -471,6 +477,37 @@ Results JSON (generated by `packages/perf-tools`): - Baseline: - `avgTickMs=0.28`, `p99TickMs=1.37`, `maxTickMs=2.68`, `avgHeap=47.3MB` +#### Large-world preset (`large-world`) + +- Warmup: 10s +- Actions: + - Load map: `assets/maps/boilerplate.json` + - Spawn bots: 20 `random_walk` +- Stabilize: 10s, Measure: 60s +- Baseline: + - `avgTickMs=0.27`, `p99TickMs=0.54`, `maxTickMs=0.99`, `avgHeap=88.8MB` + +#### Many-players preset (`many-players`) + +- Warmup: 10s +- Clients: 50 WebSocket connections (server-side “players”) +- Actions: + - Spawn bots: 50 `random_walk` +- Measure: 60s +- Baseline: + - `avgTickMs=0.65`, `p99TickMs=2.11`, `maxTickMs=4.20`, `avgHeap=43.3MB` + +#### Combined preset (`combined-stress`) + +- Warmup: 10s +- Clients: 10 WebSocket connections (server-side “players”) +- Actions: + - Load map: `assets/maps/boilerplate.json` + - Spawn bots: 50 `random_walk`, 30 `chase`, 20 `interact` (100 total) +- Stabilize: 10s, Measure: 120s +- Baseline: + - `avgTickMs=1.62`, `p99TickMs=4.32`, `maxTickMs=117.65`, `overBudgetPct=0.85%`, `avgHeap=64.2MB` + ### Client build check - `client` production build passed (`tsc` + `vite build`) after removing an unused local in `client/src/network/NetworkManager.ts`. diff --git a/ai-memory/docs/perf-final-2026-03-05/results/combined.json b/ai-memory/docs/perf-final-2026-03-05/results/combined.json new file mode 100644 index 00000000..02301a7b --- /dev/null +++ b/ai-memory/docs/perf-final-2026-03-05/results/combined.json @@ -0,0 +1,91 @@ +{ + "timestamp": "2026-03-05T08:33:27.416Z", + "scenario": "combined-stress", + "durationMs": 148543, + "baseline": { + "avgTickMs": 1.6246458165157687, + "maxTickMs": 117.65480500000558, + "p95TickMs": 1.1247772083339138, + "p99TickMs": 4.320444258331311, + "ticksOverBudgetPct": 0.8500557413600892, + "avgMemoryMb": 64.21133410135904, + "operations": { + "entities_tick": { + "avgMs": 0.06023534214868161, + "p95Ms": 0.09285301666759552 + }, + "physics_step": { + "avgMs": 1.314700189717483, + "p95Ms": 0.5700750083333029 + }, + "physics_cleanup": { + "avgMs": 0.002085650584596271, + "p95Ms": 0.0030714333330858303 + }, + "simulation_step": { + "avgMs": 1.3197706446445352, + "p95Ms": 0.5771322249997259 + }, + "entities_emit_updates": { + "avgMs": 0.05804956685453903, + "p95Ms": 0.08771780000139794 + }, + "world_tick": { + "avgMs": 1.6331770308059, + "p95Ms": 1.1152968916647297 + }, + "ticker_tick": { + "avgMs": 1.676339860219361, + "p95Ms": 1.174580299999828 + }, + "serialize_packets": { + "avgMs": 0.018518397704499326, + "p95Ms": 0.028155433331782356 + }, + "send_packets": { + "avgMs": 0.03408368015064002, + "p95Ms": 0.09443360000065391 + }, + "send_all_packets": { + "avgMs": 0.35896385172022055, + "p95Ms": 0.5381129500002619 + }, + "network_synchronize_cleanup": { + "avgMs": 0.003422776250948875, + "p95Ms": 0.004683658332063108 + }, + "network_synchronize": { + "avgMs": 0.37832787548255975, + "p95Ms": 0.5595540250004282 + } + } + }, + "phases": [ + { + "name": "load-world", + "durationMs": 6054, + "collected": false + }, + { + "name": "spawn-all", + "durationMs": 689, + "collected": false + }, + { + "name": "stabilize", + "durationMs": 9133, + "collected": false + }, + { + "name": "measure", + "durationMs": 121159, + "collected": true + } + ], + "metrics": { + "tickReportCount": 0, + "spikeCount": 0, + "serverSnapshotCount": 120, + "clientSnapshotCount": 0 + } +} \ No newline at end of file diff --git a/ai-memory/docs/perf-final-2026-03-05/results/large-world.json b/ai-memory/docs/perf-final-2026-03-05/results/large-world.json new file mode 100644 index 00000000..441b4603 --- /dev/null +++ b/ai-memory/docs/perf-final-2026-03-05/results/large-world.json @@ -0,0 +1,83 @@ +{ + "timestamp": "2026-03-05T08:29:15.218Z", + "scenario": "large-world", + "durationMs": 84907, + "baseline": { + "avgTickMs": 0.27393310057401493, + "maxTickMs": 0.9869840000028489, + "p95TickMs": 0.3828831500003313, + "p99TickMs": 0.5447322499994698, + "ticksOverBudgetPct": 0, + "avgMemoryMb": 88.77384020487467, + "operations": { + "entities_tick": { + "avgMs": 0.02464061749755326, + "p95Ms": 0.04236551666575299 + }, + "physics_step": { + "avgMs": 0.2065711943411591, + "p95Ms": 0.2736408833337919 + }, + "physics_cleanup": { + "avgMs": 0.002082314511966274, + "p95Ms": 0.0030974166671512648 + }, + "simulation_step": { + "avgMs": 0.2116222404007795, + "p95Ms": 0.28152733333299695 + }, + "entities_emit_updates": { + "avgMs": 0.021980974957498556, + "p95Ms": 0.03847450000030221 + }, + "world_tick": { + "avgMs": 0.272743909880828, + "p95Ms": 0.3734315500005929 + }, + "ticker_tick": { + "avgMs": 0.30299386042646737, + "p95Ms": 0.4100281333328894 + }, + "send_all_packets": { + "avgMs": 0.0017612591724411868, + "p95Ms": 0.002773616668431108 + }, + "network_synchronize_cleanup": { + "avgMs": 0.0033801205431956945, + "p95Ms": 0.00522951666625886 + }, + "network_synchronize": { + "avgMs": 0.016153427484475177, + "p95Ms": 0.024212966666467158 + } + } + }, + "phases": [ + { + "name": "load-world", + "durationMs": 6103, + "collected": false + }, + { + "name": "spawn-bots", + "durationMs": 179, + "collected": false + }, + { + "name": "stabilize", + "durationMs": 9163, + "collected": false + }, + { + "name": "measure", + "durationMs": 58773, + "collected": true + } + ], + "metrics": { + "tickReportCount": 0, + "spikeCount": 0, + "serverSnapshotCount": 60, + "clientSnapshotCount": 0 + } +} \ No newline at end of file diff --git a/ai-memory/docs/perf-final-2026-03-05/results/many-players.json b/ai-memory/docs/perf-final-2026-03-05/results/many-players.json new file mode 100644 index 00000000..ba307069 --- /dev/null +++ b/ai-memory/docs/perf-final-2026-03-05/results/many-players.json @@ -0,0 +1,86 @@ +{ + "timestamp": "2026-03-05T08:30:48.908Z", + "scenario": "many-players", + "durationMs": 83093, + "baseline": { + "avgTickMs": 0.6470265995516347, + "maxTickMs": 4.203389000002062, + "p95TickMs": 1.6269400499999391, + "p99TickMs": 2.1103549333337166, + "ticksOverBudgetPct": 0, + "avgMemoryMb": 43.294999567667645, + "operations": { + "entities_tick": { + "avgMs": 0.04735350895084237, + "p95Ms": 0.08498573333278424 + }, + "physics_step": { + "avgMs": 0.03551447968858303, + "p95Ms": 0.05286774999998064 + }, + "physics_cleanup": { + "avgMs": 0.0017913868605565167, + "p95Ms": 0.002568766666505932 + }, + "simulation_step": { + "avgMs": 0.03923516544657127, + "p95Ms": 0.05986169999917668 + }, + "entities_emit_updates": { + "avgMs": 0.03855938052634314, + "p95Ms": 0.06088985000048221 + }, + "world_tick": { + "avgMs": 0.6457899452704966, + "p95Ms": 1.640317100000478 + }, + "ticker_tick": { + "avgMs": 0.675227684528368, + "p95Ms": 1.6709995000013198 + }, + "serialize_packets": { + "avgMs": 0.018892928437028597, + "p95Ms": 0.0341168166673621 + }, + "send_packets": { + "avgMs": 0.01959014294244713, + "p95Ms": 0.04560398333281531 + }, + "send_all_packets": { + "avgMs": 1.010612902026956, + "p95Ms": 1.657106016666997 + }, + "network_synchronize_cleanup": { + "avgMs": 0.0036523557310532053, + "p95Ms": 0.005459899999793075 + }, + "network_synchronize": { + "avgMs": 1.0305746473852164, + "p95Ms": 1.6906612666663325 + } + } + }, + "phases": [ + { + "name": "connect-clients", + "durationMs": 9150, + "collected": false + }, + { + "name": "spawn-bots", + "durationMs": 80, + "collected": false + }, + { + "name": "measure", + "durationMs": 59452, + "collected": true + } + ], + "metrics": { + "tickReportCount": 0, + "spikeCount": 0, + "serverSnapshotCount": 60, + "clientSnapshotCount": 0 + } +} \ No newline at end of file From 6ec796dedd167979c7426b5251e6dc20614cd1fa Mon Sep 17 00:00:00 2001 From: web3dev1337 <160291380+web3dev1337@users.noreply.github.com> Date: Thu, 5 Mar 2026 21:30:07 +1100 Subject: [PATCH 10/40] feat: expand perf harness and benchmark scenarios --- CODEBASE_DOCUMENTATION.md | 1 + packages/perf-tools/package.json | 2 +- packages/perf-tools/src/cli.ts | 4 +- .../perf-tools/src/presets/block-churn.yaml | 30 ++ .../src/presets/entity-density.yaml | 30 ++ .../perf-tools/src/presets/join-storm.yaml | 26 ++ .../perf-tools/src/presets/multi-world.yaml | 20 + .../src/reporters/ConsoleReporter.ts | 16 + .../src/runners/BaselineComparer.ts | 21 + .../perf-tools/src/runners/BenchmarkRunner.ts | 143 ++++++- .../perf-tools/src/runners/MetricCollector.ts | 11 + .../perf-tools/src/runners/ScenarioLoader.ts | 33 +- .../perf-tools/src/runners/ServerApiClient.ts | 24 +- server/src/metrics/PerformanceMonitor.ts | 189 ++++++--- server/src/perf/PerfBlockChurner.ts | 113 ++++++ server/src/perf/PerfHarness.ts | 380 +++++++++++++++++- server/src/worlds/WorldLoop.ts | 11 +- 17 files changed, 977 insertions(+), 77 deletions(-) create mode 100644 packages/perf-tools/src/presets/block-churn.yaml create mode 100644 packages/perf-tools/src/presets/entity-density.yaml create mode 100644 packages/perf-tools/src/presets/join-storm.yaml create mode 100644 packages/perf-tools/src/presets/multi-world.yaml create mode 100644 server/src/perf/PerfBlockChurner.ts diff --git a/CODEBASE_DOCUMENTATION.md b/CODEBASE_DOCUMENTATION.md index 1f7854c8..8afcf9df 100644 --- a/CODEBASE_DOCUMENTATION.md +++ b/CODEBASE_DOCUMENTATION.md @@ -150,6 +150,7 @@ metrics/Telemetry.ts - Span-based performance profiling models/ModelRegistry.ts - GLTF model preloading + bounding box extraction persistence/PersistenceManager.ts - Player/global KV storage via @hytopia.com/save-states perf/PerfHarness.ts - Env-gated /__perf endpoints for perf-tools +perf/PerfBlockChurner.ts - Tick-driven block churn stressor (perf-tools) perf/perf-harness.ts - Benchmark server entry (build:perf-harness → src/perf-harness.mjs) server/src/assets/AssetsLibrary.ts - Asset path resolution ``` diff --git a/packages/perf-tools/package.json b/packages/perf-tools/package.json index 50a18098..abafc8e1 100644 --- a/packages/perf-tools/package.json +++ b/packages/perf-tools/package.json @@ -11,7 +11,7 @@ "scripts": { "build": "tsc && node scripts/copy-assets.mjs", "dev": "tsc --watch", - "lint": "eslint src/" + "lint": "tsc --noEmit" }, "dependencies": { "js-yaml": "^4.1.0", diff --git a/packages/perf-tools/src/cli.ts b/packages/perf-tools/src/cli.ts index 6d90e764..a04e9d42 100644 --- a/packages/perf-tools/src/cli.ts +++ b/packages/perf-tools/src/cli.ts @@ -23,7 +23,7 @@ program .command('run') .description('Run a benchmark scenario') .argument('[scenario]', 'Path to scenario YAML/JSON file') - .option('--preset ', 'Use a built-in preset (idle, stress, large-world, many-players, combined)') + .option('--preset ', 'Use a built-in preset (idle, stress, large-world, many-players, combined, join-storm, block-churn, entity-density, multi-world)') .option('--output ', 'Write results to JSON file') .option('--full-data', 'Include raw metric data in output') .option('--baseline ', 'Compare results against a baseline JSON') @@ -39,7 +39,7 @@ program const presetPath = path.join(__dirname, 'presets', `${options.preset}.yaml`); if (!fs.existsSync(presetPath)) { - console.error(`Unknown preset: ${options.preset}. Available: idle, stress, large-world, many-players, combined`); + console.error(`Unknown preset: ${options.preset}. Available: idle, stress, large-world, many-players, combined, join-storm, block-churn, entity-density, multi-world`); process.exit(1); } diff --git a/packages/perf-tools/src/presets/block-churn.yaml b/packages/perf-tools/src/presets/block-churn.yaml new file mode 100644 index 00000000..dd94f5f7 --- /dev/null +++ b/packages/perf-tools/src/presets/block-churn.yaml @@ -0,0 +1,30 @@ +name: "block-churn" +description: "Continuous block edits to stress colliders + block sync packets" +warmupMs: 5000 +phases: + - name: setup + actions: + - type: clear_world + - type: load_map + mapPath: "assets/maps/boilerplate-small.json" + - type: connect_clients + count: 10 + - name: churn-and-measure + collect: true + actions: + - type: start_block_churn + blocksPerTick: 200 + blockTypeId: 1 + mode: toggle + min: { x: -16, y: 1, z: -16 } + max: { x: 16, y: 5, z: 16 } + duration: 60s +thresholds: + tick_duration_ms: + avg: 14 + p99: 30 + network: + maxBytesPerSecond: 15000000 + memory_mb: + max: 1500 + diff --git a/packages/perf-tools/src/presets/entity-density.yaml b/packages/perf-tools/src/presets/entity-density.yaml new file mode 100644 index 00000000..17047cb6 --- /dev/null +++ b/packages/perf-tools/src/presets/entity-density.yaml @@ -0,0 +1,30 @@ +name: "entity-density" +description: "500 dynamic block entities (colliders) to stress physics broadphase + entity update scanning" +warmupMs: 5000 +phases: + - name: setup + actions: + - type: clear_world + - type: load_map + mapPath: "assets/maps/boilerplate-small.json" + - type: spawn_entities + count: 500 + kind: block + tag: "perf-tools.entities" + options: + blockTextureUri: "blocks/bricks.png" + blockHalfExtents: { x: 0.5, y: 0.5, z: 0.5 } + rigidBodyOptions: + type: dynamic + - name: stabilize + duration: 10s + - name: measure + collect: true + duration: 60s +thresholds: + tick_duration_ms: + avg: 14 + p99: 30 + memory_mb: + max: 2000 + diff --git a/packages/perf-tools/src/presets/join-storm.yaml b/packages/perf-tools/src/presets/join-storm.yaml new file mode 100644 index 00000000..4b2f9965 --- /dev/null +++ b/packages/perf-tools/src/presets/join-storm.yaml @@ -0,0 +1,26 @@ +name: "join-storm" +description: "Preload a large map, then connect many clients at once to stress join chunk sync + serialization" +warmupMs: 5000 +phases: + - name: preload-world + actions: + - type: clear_world + - type: load_map + mapPath: "assets/maps/boilerplate.json" + - name: stabilize + duration: 10s + - name: join-and-measure + collect: true + actions: + - type: connect_clients + count: 100 + duration: 60s +thresholds: + tick_duration_ms: + avg: 14 + p99: 30 + network: + maxBytesPerSecond: 80000000 + memory_mb: + max: 2000 + diff --git a/packages/perf-tools/src/presets/multi-world.yaml b/packages/perf-tools/src/presets/multi-world.yaml new file mode 100644 index 00000000..4d04b29f --- /dev/null +++ b/packages/perf-tools/src/presets/multi-world.yaml @@ -0,0 +1,20 @@ +name: "multi-world" +description: "4 concurrent worlds (default + 3) with boilerplate-small to gauge scaling" +warmupMs: 5000 +phases: + - name: setup + actions: + - type: clear_world + - type: create_worlds + count: 3 + mapPath: "assets/maps/boilerplate-small.json" + - name: measure + collect: true + duration: 60s +thresholds: + tick_duration_ms: + avg: 14 + p99: 30 + memory_mb: + max: 4000 + diff --git a/packages/perf-tools/src/reporters/ConsoleReporter.ts b/packages/perf-tools/src/reporters/ConsoleReporter.ts index b8597f00..88e12cbe 100644 --- a/packages/perf-tools/src/reporters/ConsoleReporter.ts +++ b/packages/perf-tools/src/reporters/ConsoleReporter.ts @@ -24,6 +24,15 @@ export default class ConsoleReporter { console.log(`Client FPS: ${b.avgFps.toFixed(1)} avg`); } + if (b.network) { + console.log(''); + console.log('Network (server):'); + console.log(` bytes sent: avg=${(b.network.avgBytesSentPerSecond / 1_000_000).toFixed(2)}MB/s max=${(b.network.maxBytesSentPerSecond / 1_000_000).toFixed(2)}MB/s`); + console.log(` bytes recv: avg=${(b.network.avgBytesReceivedPerSecond / 1_000_000).toFixed(2)}MB/s max=${(b.network.maxBytesReceivedPerSecond / 1_000_000).toFixed(2)}MB/s`); + console.log(` totals: sent=${(b.network.totalBytesSent / 1_000_000).toFixed(1)}MB recv=${(b.network.totalBytesReceived / 1_000_000).toFixed(1)}MB players=${b.network.maxConnectedPlayers}`); + console.log(` serialize: avg=${b.network.avgSerializationMs.toFixed(2)}ms compressTotal=${b.network.compressionCountTotal}`); + } + const opNames = Object.keys(b.operations); if (opNames.length > 0) { @@ -102,6 +111,13 @@ export default class ConsoleReporter { console.log(` ${pass ? 'PASS' : 'FAIL'} memory ${b.avgMemoryMb.toFixed(1)}MB <= ${t.memory_mb.max}MB`); } + if (t.network?.maxBytesPerSecond !== undefined && b.network) { + const pass = b.network.maxBytesSentPerSecond <= t.network.maxBytesPerSecond; + + allPass = allPass && pass; + console.log(` ${pass ? 'PASS' : 'FAIL'} net maxBytesSent ${(b.network.maxBytesSentPerSecond / 1_000_000).toFixed(2)}MB/s <= ${(t.network.maxBytesPerSecond / 1_000_000).toFixed(2)}MB/s`); + } + console.log(` Overall: ${allPass ? 'ALL PASS' : 'SOME FAILED'}`); console.log(''); } diff --git a/packages/perf-tools/src/runners/BaselineComparer.ts b/packages/perf-tools/src/runners/BaselineComparer.ts index 2d3fcec7..0ec49501 100644 --- a/packages/perf-tools/src/runners/BaselineComparer.ts +++ b/packages/perf-tools/src/runners/BaselineComparer.ts @@ -9,6 +9,21 @@ export interface BaselineResult { avgMemoryMb: number; avgFps?: number; operations: Record; + network?: { + totalBytesSent: number; + totalBytesReceived: number; + maxConnectedPlayers: number; + avgBytesSentPerSecond: number; + maxBytesSentPerSecond: number; + avgBytesReceivedPerSecond: number; + maxBytesReceivedPerSecond: number; + avgPacketsSentPerSecond: number; + maxPacketsSentPerSecond: number; + avgPacketsReceivedPerSecond: number; + maxPacketsReceivedPerSecond: number; + avgSerializationMs: number; + compressionCountTotal: number; + }; } export interface ComparisonEntry { @@ -55,6 +70,12 @@ export default class BaselineComparer { entries.push(this._compareMetric('avgFps', baseline.avgFps, current.avgFps, true)); } + if (baseline.network && current.network) { + entries.push(this._compareMetric('net.maxBytesSentPerSecond', baseline.network.maxBytesSentPerSecond, current.network.maxBytesSentPerSecond)); + entries.push(this._compareMetric('net.avgBytesSentPerSecond', baseline.network.avgBytesSentPerSecond, current.network.avgBytesSentPerSecond)); + entries.push(this._compareMetric('net.avgSerializationMs', baseline.network.avgSerializationMs, current.network.avgSerializationMs)); + } + const allBaselineOps = new Set([...Object.keys(baseline.operations), ...Object.keys(current.operations)]); for (const op of allBaselineOps) { diff --git a/packages/perf-tools/src/runners/BenchmarkRunner.ts b/packages/perf-tools/src/runners/BenchmarkRunner.ts index e6dfead6..22093eb8 100644 --- a/packages/perf-tools/src/runners/BenchmarkRunner.ts +++ b/packages/perf-tools/src/runners/BenchmarkRunner.ts @@ -128,12 +128,66 @@ export default class BenchmarkRunner { await this._serverApi.action({ type: 'load_map', mapPath: action.mapPath ?? '', + worldId: typeof action.worldId === 'number' ? action.worldId : undefined, }); break; case 'spawn_entities': + await this._serverApi.action({ + type: 'spawn_entities', + count: action.count ?? 0, + kind: action.kind, + options: action.options, + tag: action.tag, + }); + break; + case 'despawn_entities': + await this._serverApi.action({ + type: 'despawn_entities', + tag: action.tag, + }); + break; + case 'start_block_churn': + await this._serverApi.action({ + type: 'start_block_churn', + blocksPerTick: action.blocksPerTick ?? 0, + blockTypeId: action.blockTypeId ?? 0, + mode: action.mode, + min: action.min, + max: action.max, + }); + break; + case 'stop_block_churn': + await this._serverApi.action({ + type: 'stop_block_churn', + }); + break; + case 'create_worlds': + await this._serverApi.action({ + type: 'create_worlds', + count: action.count ?? 0, + mapPath: action.mapPath, + setDefault: action.setDefault, + }); + break; + case 'set_default_world': + await this._serverApi.action({ + type: 'set_default_world', + worldId: action.worldId ?? 0, + }); + break; + case 'clear_world': + await this._serverApi.action({ + type: 'clear_world', + }); + break; + case 'connect_clients': + await this._launchWsClients(action.count ?? 0, action.staggerMs); + break; + case 'disconnect_clients': + await this._disconnectWsClients(action.count); + break; case 'custom': throw new Error(`Action not supported yet: ${action.type}`); - break; } } } @@ -198,15 +252,60 @@ export default class BenchmarkRunner { }); } - private async _launchWsClients(count: number): Promise { + private async _launchWsClients(count: number, staggerMs?: number): Promise { const wsUrl = toWebSocketUrl(this._options.clientUrl); this._log(`[bench] Launching ${count} WebSocket client(s): ${wsUrl}`); - for (let i = 0; i < count; i++) { - const client = new WsClient({ url: wsUrl }); - await client.connect(); - this._wsClients.push(client); + const delayMs = typeof staggerMs === 'number' ? Math.max(0, Math.floor(staggerMs)) : 0; + + if (delayMs > 0) { + for (let i = 0; i < count; i++) { + const client = new WsClient({ url: wsUrl }); + await client.connect(); + this._wsClients.push(client); + + if (i < count - 1) { + // eslint-disable-next-line no-await-in-loop + await this._wait(delayMs); + } + } + + return; + } + + const batchSize = 25; + + for (let offset = 0; offset < count; offset += batchSize) { + const batchCount = Math.min(batchSize, count - offset); + const batchClients: WsClient[] = []; + + for (let i = 0; i < batchCount; i++) { + batchClients.push(new WsClient({ url: wsUrl })); + } + + await Promise.all(batchClients.map(async client => { + await client.connect(); + this._wsClients.push(client); + })); + } + } + + private async _disconnectWsClients(count?: number): Promise { + if (count === undefined) { + for (const client of this._wsClients) { + await client.close(); + } + + this._wsClients = []; + return; + } + + const target = Math.max(0, Math.floor(count)); + + for (let i = 0; i < target && this._wsClients.length > 0; i++) { + const client = this._wsClients.pop()!; + await client.close(); } } @@ -276,6 +375,25 @@ export default class BenchmarkRunner { ? clientSnapshots.reduce((s, v) => s + v.fps, 0) / clientSnapshots.length : undefined; + const networkSnapshots = snapshots.flatMap(s => (s.network ? [ s.network ] : [])); + const network = networkSnapshots.length > 0 + ? { + totalBytesSent: Math.max(...networkSnapshots.map(s => s.bytesSentTotal)), + totalBytesReceived: Math.max(...networkSnapshots.map(s => s.bytesReceivedTotal)), + maxConnectedPlayers: Math.max(...networkSnapshots.map(s => s.connectedPlayers)), + avgBytesSentPerSecond: average(networkSnapshots, s => s.bytesSentPerSecond), + maxBytesSentPerSecond: max(networkSnapshots, s => s.bytesSentPerSecond), + avgBytesReceivedPerSecond: average(networkSnapshots, s => s.bytesReceivedPerSecond), + maxBytesReceivedPerSecond: max(networkSnapshots, s => s.bytesReceivedPerSecond), + avgPacketsSentPerSecond: average(networkSnapshots, s => s.packetsSentPerSecond), + maxPacketsSentPerSecond: max(networkSnapshots, s => s.packetsSentPerSecond), + avgPacketsReceivedPerSecond: average(networkSnapshots, s => s.packetsReceivedPerSecond), + maxPacketsReceivedPerSecond: max(networkSnapshots, s => s.packetsReceivedPerSecond), + avgSerializationMs: average(networkSnapshots, s => s.avgSerializationMs), + compressionCountTotal: Math.max(...networkSnapshots.map(s => s.compressionCount)), + } + : undefined; + return { avgTickMs, maxTickMs, @@ -285,6 +403,7 @@ export default class BenchmarkRunner { avgMemoryMb, avgFps, operations, + network, }; } @@ -293,6 +412,18 @@ export default class BenchmarkRunner { } } +function average(items: T[], get: (item: T) => number): number { + if (items.length === 0) return 0; + + return items.reduce((s, v) => s + get(v), 0) / items.length; +} + +function max(items: T[], get: (item: T) => number): number { + if (items.length === 0) return 0; + + return Math.max(...items.map(get)); +} + function resolveDefaultServerCwd(startDir: string): string { let dir = startDir; diff --git a/packages/perf-tools/src/runners/MetricCollector.ts b/packages/perf-tools/src/runners/MetricCollector.ts index f338d4db..2667f7b1 100644 --- a/packages/perf-tools/src/runners/MetricCollector.ts +++ b/packages/perf-tools/src/runners/MetricCollector.ts @@ -18,6 +18,17 @@ export interface ServerSnapshot { budgetMs: number; operations: Record; memory: { heapUsedMb: number; heapTotalMb: number; rssMb: number }; + network?: { + connectedPlayers: number; + bytesSentTotal: number; + bytesReceivedTotal: number; + bytesSentPerSecond: number; + bytesReceivedPerSecond: number; + packetsSentPerSecond: number; + packetsReceivedPerSecond: number; + avgSerializationMs: number; + compressionCount: number; + }; } export interface OperationSnapshot { diff --git a/packages/perf-tools/src/runners/ScenarioLoader.ts b/packages/perf-tools/src/runners/ScenarioLoader.ts index 360a9dc4..12e2ad78 100644 --- a/packages/perf-tools/src/runners/ScenarioLoader.ts +++ b/packages/perf-tools/src/runners/ScenarioLoader.ts @@ -1,12 +1,43 @@ import * as fs from 'node:fs'; import * as yaml from 'js-yaml'; +export interface ScenarioVector3 { + x: number; + y: number; + z: number; +} + export interface ScenarioAction { - type: 'spawn_bots' | 'despawn_bots' | 'spawn_entities' | 'load_map' | 'wait' | 'custom'; + type: + | 'spawn_bots' + | 'despawn_bots' + | 'load_map' + | 'spawn_entities' + | 'despawn_entities' + | 'start_block_churn' + | 'stop_block_churn' + | 'create_worlds' + | 'set_default_world' + | 'clear_world' + | 'connect_clients' + | 'disconnect_clients' + | 'wait' + | 'custom'; count?: number; behavior?: string; durationMs?: number; mapPath?: string; + worldId?: number; + kind?: 'model' | 'block'; + tag?: string; + options?: Record; + blocksPerTick?: number; + blockTypeId?: number; + mode?: 'toggle' | 'place' | 'remove'; + min?: ScenarioVector3; + max?: ScenarioVector3; + setDefault?: boolean; + staggerMs?: number; script?: string; } diff --git a/packages/perf-tools/src/runners/ServerApiClient.ts b/packages/perf-tools/src/runners/ServerApiClient.ts index f0ca619d..527b6d25 100644 --- a/packages/perf-tools/src/runners/ServerApiClient.ts +++ b/packages/perf-tools/src/runners/ServerApiClient.ts @@ -7,6 +7,18 @@ interface HealthResponse { playerCount?: number; } +export interface NetworkSnapshot { + connectedPlayers: number; + bytesSentTotal: number; + bytesReceivedTotal: number; + bytesSentPerSecond: number; + bytesReceivedPerSecond: number; + packetsSentPerSecond: number; + packetsReceivedPerSecond: number; + avgSerializationMs: number; + compressionCount: number; +} + interface PerfSnapshotResponse { timestamp: number; avgTickMs: number; @@ -24,12 +36,20 @@ interface PerfSnapshotResponse { maxMs: number; }>; memory: { heapUsedMb: number; heapTotalMb: number; rssMb: number }; + network?: NetworkSnapshot; } export type ServerAction = | { type: 'spawn_bots'; count: number; behavior?: string } | { type: 'despawn_bots'; count?: number } - | { type: 'load_map'; mapPath: string } + | { type: 'load_map'; mapPath: string; worldId?: number } + | { type: 'spawn_entities'; count: number; kind?: 'model' | 'block'; options?: Record; tag?: string } + | { type: 'despawn_entities'; tag?: string } + | { type: 'start_block_churn'; blocksPerTick: number; blockTypeId: number; mode?: 'toggle' | 'place' | 'remove'; min?: { x: number; y: number; z: number }; max?: { x: number; y: number; z: number } } + | { type: 'stop_block_churn' } + | { type: 'create_worlds'; count: number; mapPath?: string; setDefault?: boolean } + | { type: 'set_default_world'; worldId: number } + | { type: 'clear_world' } | { type: 'reset' }; export default class ServerApiClient { @@ -124,6 +144,7 @@ export default class ServerApiClient { budgetMs: data.budgetMs, operations: data.operations, memory: data.memory, + network: data.network, }; } @@ -135,4 +156,3 @@ export default class ServerApiClient { }; } } - diff --git a/server/src/metrics/PerformanceMonitor.ts b/server/src/metrics/PerformanceMonitor.ts index 73d5e9bb..b204dd9f 100644 --- a/server/src/metrics/PerformanceMonitor.ts +++ b/server/src/metrics/PerformanceMonitor.ts @@ -25,6 +25,7 @@ export interface OperationStats { } export interface TickReport { + worldId: number; tick: number; durationMs: number; budgetMs: number; @@ -67,6 +68,21 @@ interface OperationAccumulator { sampleCount: number; } +interface WorldTickState { + tickDurations: Float64Array; + tickIndex: number; + tickCount: number; + ticksOverBudget: number; + maxTickMs: number; + totalTicks: number; + + currentTick: number; + currentTickStart: number; + currentPhases: Record; + currentEntityCount: number; + currentPlayerCount: number; +} + export default class PerformanceMonitor extends EventRouter { private static _instance: PerformanceMonitor; @@ -83,22 +99,12 @@ export default class PerformanceMonitor extends EventRouter { private _spikeThresholdMs: number = 50; private _tickBudgetMs: number = 16.67; private _snapshotIntervalMs: number = 5000; + private _historySize: number = 3600; private _startTime: number = 0; private _operations: Map = new Map(); - private _tickDurations: Float64Array; - private _tickIndex: number = 0; - private _tickCount: number = 0; - private _ticksOverBudget: number = 0; - private _maxTickMs: number = 0; - private _totalTicks: number = 0; - - private _currentTick: number = 0; - private _currentTickStart: number = 0; - private _currentPhases: Record = {}; - private _currentEntityCount: number = 0; - private _currentPlayerCount: number = 0; + private _worldTicks: Map = new Map(); private _entityCosts: Map = new Map(); @@ -106,7 +112,6 @@ export default class PerformanceMonitor extends EventRouter { private constructor() { super(); - this._tickDurations = new Float64Array(3600); } public get isEnabled(): boolean { @@ -126,14 +131,9 @@ export default class PerformanceMonitor extends EventRouter { this._tickBudgetMs = options?.tickBudgetMs ?? 16.67; this._snapshotIntervalMs = options?.snapshotIntervalMs ?? 5000; - const historySize = options?.historySize ?? 3600; + this._historySize = options?.historySize ?? 3600; - this._tickDurations = new Float64Array(historySize); - this._tickIndex = 0; - this._tickCount = 0; - this._ticksOverBudget = 0; - this._maxTickMs = 0; - this._totalTicks = 0; + this._worldTicks.clear(); this._operations.clear(); this._entityCosts.clear(); @@ -198,44 +198,59 @@ export default class PerformanceMonitor extends EventRouter { }; } - public beginTick(tick: number, entityCount: number, playerCount: number): void { - this._currentTick = tick; - this._currentTickStart = performance.now(); - this._currentPhases = {}; - this._currentEntityCount = entityCount; - this._currentPlayerCount = playerCount; + public beginTick(tick: number, entityCount: number, playerCount: number, worldId: number = 0): void { + const state = this._getOrCreateWorldTickState(worldId); + + state.currentTick = tick; + state.currentTickStart = performance.now(); + state.currentPhases = {}; + state.currentEntityCount = entityCount; + state.currentPlayerCount = playerCount; } - public recordPhase(phaseName: string, durationMs: number): void { - this._currentPhases[phaseName] = durationMs; + public recordPhase(phaseName: string, durationMs: number, worldId: number = 0): void { + const state = this._worldTicks.get(worldId); + + if (!state) { + return; + } + + state.currentPhases[phaseName] = durationMs; } - public endTick(): void { - const durationMs = performance.now() - this._currentTickStart; + public endTick(worldId: number = 0): void { + const state = this._worldTicks.get(worldId); + + if (!state) { + return; + } - this._tickDurations[this._tickIndex] = durationMs; - this._tickIndex = (this._tickIndex + 1) % this._tickDurations.length; - this._tickCount = Math.min(this._tickCount + 1, this._tickDurations.length); - this._totalTicks++; + const durationMs = performance.now() - state.currentTickStart; - if (durationMs > this._maxTickMs) { - this._maxTickMs = durationMs; + state.tickDurations[state.tickIndex] = durationMs; + state.tickIndex = (state.tickIndex + 1) % state.tickDurations.length; + state.tickCount = Math.min(state.tickCount + 1, state.tickDurations.length); + state.totalTicks++; + + if (durationMs > state.maxTickMs) { + state.maxTickMs = durationMs; } if (durationMs > this._tickBudgetMs) { - this._ticksOverBudget++; + state.ticksOverBudget++; } const heapUsedMb = process.memoryUsage().heapUsed / 1048576; const report: TickReport = { - tick: this._currentTick, + worldId, + tick: state.currentTick, durationMs, budgetMs: this._tickBudgetMs, budgetPercent: (durationMs / this._tickBudgetMs) * 100, - phases: { ...this._currentPhases }, - entityCount: this._currentEntityCount, - playerCount: this._currentPlayerCount, + phases: { ...state.currentPhases }, + entityCount: state.currentEntityCount, + playerCount: state.currentPlayerCount, heapUsedMb, }; @@ -254,20 +269,26 @@ export default class PerformanceMonitor extends EventRouter { return new Map(this._entityCosts); } - public getSnapshot(): PerformanceSnapshot { + public getSnapshot(worldId?: number): PerformanceSnapshot { const mem = process.memoryUsage(); - const tickSamples = this._getTickSamples(); + const tickSamples = typeof worldId === 'number' + ? this._getTickSamples(worldId) + : this._getAllTickSamples(); const sorted = tickSamples.slice().sort((a, b) => a - b); + const rollup = typeof worldId === 'number' + ? this._getRollup(worldId) + : this._getGlobalRollup(); + return { uptimeMs: performance.now() - this._startTime, tickRate: 60, avgTickMs: sorted.length > 0 ? sorted.reduce((a, b) => a + b, 0) / sorted.length : 0, - maxTickMs: this._maxTickMs, + maxTickMs: rollup.maxTickMs, p95TickMs: sorted.length > 0 ? sorted[Math.floor(sorted.length * 0.95)] : 0, p99TickMs: sorted.length > 0 ? sorted[Math.floor(sorted.length * 0.99)] : 0, - ticksOverBudget: this._ticksOverBudget, - totalTicks: this._totalTicks, + ticksOverBudget: rollup.ticksOverBudget, + totalTicks: rollup.totalTicks, budgetMs: this._tickBudgetMs, operations: this._getOperationStats(), memory: { @@ -279,11 +300,7 @@ export default class PerformanceMonitor extends EventRouter { } public resetStats(): void { - this._tickIndex = 0; - this._tickCount = 0; - this._ticksOverBudget = 0; - this._maxTickMs = 0; - this._totalTicks = 0; + this._worldTicks.clear(); this._operations.clear(); this._entityCosts.clear(); } @@ -317,18 +334,80 @@ export default class PerformanceMonitor extends EventRouter { acc.sampleCount = Math.min(acc.sampleCount + 1, acc.samples.length); } - private _getTickSamples(): number[] { - if (this._tickCount === 0) return []; + private _getOrCreateWorldTickState(worldId: number): WorldTickState { + const id = Math.floor(worldId); + let state = this._worldTicks.get(id); + + if (!state) { + state = { + tickDurations: new Float64Array(this._historySize), + tickIndex: 0, + tickCount: 0, + ticksOverBudget: 0, + maxTickMs: 0, + totalTicks: 0, + currentTick: 0, + currentTickStart: 0, + currentPhases: {}, + currentEntityCount: 0, + currentPlayerCount: 0, + }; + this._worldTicks.set(id, state); + } + + return state; + } + + private _getTickSamples(worldId: number): number[] { + const state = this._worldTicks.get(Math.floor(worldId)); + if (!state || state.tickCount === 0) return []; + + const result: number[] = []; + + for (let i = 0; i < state.tickCount; i++) { + result.push(state.tickDurations[i]); + } + + return result; + } + + private _getAllTickSamples(): number[] { const result: number[] = []; - for (let i = 0; i < this._tickCount; i++) { - result.push(this._tickDurations[i]); + for (const state of this._worldTicks.values()) { + for (let i = 0; i < state.tickCount; i++) { + result.push(state.tickDurations[i]); + } } return result; } + private _getRollup(worldId: number): { maxTickMs: number; ticksOverBudget: number; totalTicks: number } { + const state = this._worldTicks.get(Math.floor(worldId)); + + return { + maxTickMs: state?.maxTickMs ?? 0, + ticksOverBudget: state?.ticksOverBudget ?? 0, + totalTicks: state?.totalTicks ?? 0, + }; + } + + private _getGlobalRollup(): { maxTickMs: number; ticksOverBudget: number; totalTicks: number } { + let maxTickMs = 0; + let ticksOverBudget = 0; + let totalTicks = 0; + + for (const state of this._worldTicks.values()) { + maxTickMs = Math.max(maxTickMs, state.maxTickMs); + ticksOverBudget += state.ticksOverBudget; + totalTicks += state.totalTicks; + } + + return { maxTickMs, ticksOverBudget, totalTicks }; + } + private _getOperationStats(): Record { const result: Record = {}; diff --git a/server/src/perf/PerfBlockChurner.ts b/server/src/perf/PerfBlockChurner.ts new file mode 100644 index 00000000..735fe3cd --- /dev/null +++ b/server/src/perf/PerfBlockChurner.ts @@ -0,0 +1,113 @@ +import { WorldLoopEvent, type WorldLoopEventPayloads } from '@/worlds/WorldLoop'; +import type World from '@/worlds/World'; +import type Vector3Like from '@/shared/types/math/Vector3Like'; + +export type PerfBlockChurnMode = 'toggle' | 'place' | 'remove'; + +export interface PerfBlockChurnOptions { + blocksPerTick: number; + blockTypeId: number; + mode?: PerfBlockChurnMode; + min?: Vector3Like; + max?: Vector3Like; +} + +export default class PerfBlockChurner { + private _world: World | null = null; + private _options: PerfBlockChurnOptions | null = null; + private _tickFn: ((payload: WorldLoopEventPayloads[WorldLoopEvent.TICK_START]) => void) | null = null; + private _toggleParity: boolean = false; + + public get isRunning(): boolean { + return !!this._tickFn; + } + + public start(world: World, options: PerfBlockChurnOptions): void { + this.stop(); + + const blocksPerTick = Math.max(0, Math.floor(options.blocksPerTick)); + const blockTypeId = Math.max(0, Math.floor(options.blockTypeId)); + + const min = options.min ?? { x: -32, y: 0, z: -32 }; + const max = options.max ?? { x: 32, y: 16, z: 32 }; + const bounds = normalizeBounds(min, max); + const mode: PerfBlockChurnMode = options.mode ?? 'toggle'; + + this._world = world; + this._options = { + blocksPerTick, + blockTypeId, + mode, + min: bounds.min, + max: bounds.max, + }; + this._toggleParity = false; + + this._tickFn = () => { + this._tick(); + }; + + world.loop.on(WorldLoopEvent.TICK_START, this._tickFn); + } + + public stop(): void { + if (this._world && this._tickFn) { + this._world.loop.off(WorldLoopEvent.TICK_START, this._tickFn); + } + + this._world = null; + this._options = null; + this._tickFn = null; + this._toggleParity = false; + } + + private _tick(): void { + if (!this._world || !this._options) return; + + const { blocksPerTick, blockTypeId, min, max, mode } = this._options; + if (!min || !max) return; + + const rangeX = max.x - min.x + 1; + const rangeY = max.y - min.y + 1; + const rangeZ = max.z - min.z + 1; + + if (rangeX <= 0 || rangeY <= 0 || rangeZ <= 0) return; + + const toggleOn = this._toggleParity; + this._toggleParity = !this._toggleParity; + + for (let i = 0; i < blocksPerTick; i++) { + const x = min.x + randomInt(rangeX); + const y = min.y + randomInt(rangeY); + const z = min.z + randomInt(rangeZ); + + const nextId = mode === 'toggle' + ? (toggleOn ? blockTypeId : 0) + : mode === 'place' + ? blockTypeId + : 0; + + this._world.chunkLattice.setBlock({ x, y, z }, nextId); + } + } +} + +function randomInt(maxExclusive: number): number { + return Math.floor(Math.random() * maxExclusive); +} + +function normalizeBounds(a: Vector3Like, b: Vector3Like): { min: Vector3Like; max: Vector3Like } { + return { + min: { + x: Math.min(a.x, b.x), + y: Math.min(a.y, b.y), + z: Math.min(a.z, b.z), + }, + max: { + x: Math.max(a.x, b.x), + y: Math.max(a.y, b.y), + z: Math.max(a.z, b.z), + }, + }; +} + diff --git a/server/src/perf/PerfHarness.ts b/server/src/perf/PerfHarness.ts index 8c05d6f4..2628d9a7 100644 --- a/server/src/perf/PerfHarness.ts +++ b/server/src/perf/PerfHarness.ts @@ -9,20 +9,38 @@ import ErrorHandler from '@/errors/ErrorHandler'; import NetworkMetrics from '@/metrics/NetworkMetrics'; import PerformanceMonitor from '@/metrics/PerformanceMonitor'; import PlayerManager from '@/players/PlayerManager'; +import PerfBlockChurner from '@/perf/PerfBlockChurner'; +import type { PerfBlockChurnMode } from '@/perf/PerfBlockChurner'; import WorldManager from '@/worlds/WorldManager'; +import Entity from '@/worlds/entities/Entity'; +import { ColliderShape } from '@/worlds/physics/Collider'; +import { RigidBodyType } from '@/worlds/physics/RigidBody'; import type { BotBehavior } from '@/bots/BotPlayer'; +import type { EntityOptions } from '@/worlds/entities/Entity'; import type { WorldMap } from '@/worlds/World'; import type http from 'http'; +import type Vector3Like from '@/shared/types/math/Vector3Like'; +import type World from '@/worlds/World'; const PERF_PREFIX = '/__perf'; const MAX_BODY_BYTES = 1024 * 1024; +const DEFAULT_PERF_ENTITY_TAG = 'perf-tools'; type PerfAction = | { type: 'spawn_bots'; count: number; behavior?: string } | { type: 'despawn_bots'; count?: number } - | { type: 'load_map'; mapPath: string } + | { type: 'load_map'; mapPath: string; worldId?: number } + | { type: 'spawn_entities'; count: number; kind?: 'model' | 'block'; options?: Record; tag?: string } + | { type: 'despawn_entities'; tag?: string } + | { type: 'start_block_churn'; blocksPerTick: number; blockTypeId: number; mode?: PerfBlockChurnMode; min?: Vector3Like; max?: Vector3Like } + | { type: 'stop_block_churn' } + | { type: 'create_worlds'; count: number; mapPath?: string; setDefault?: boolean } + | { type: 'set_default_world'; worldId: number } + | { type: 'clear_world' } | { type: 'reset' }; +const blockChurner = new PerfBlockChurner(); + function isPerfToolsEnabled(): boolean { const v = process.env.HYTOPIA_PERF_TOOLS; @@ -143,6 +161,15 @@ function spawnBots(count: number, behaviorName: string | undefined): { spawned: return { spawned: spawnedBots }; } +function getWorldOrDefault(worldId: number | undefined): World { + if (typeof worldId === 'number') { + const w = WorldManager.instance.getWorld(Math.floor(worldId)); + if (w) return w; + } + + return WorldManager.instance.getDefaultWorld(); +} + function despawnBots(count?: number): { despawned: number; remaining: number } { const bots = BotManager.instance.getAllBots(); @@ -164,8 +191,8 @@ function despawnBots(count?: number): { despawned: number; remaining: number } { return { despawned, remaining: BotManager.instance.botCount }; } -function loadMapFromAssets(mapPath: string): { loaded: boolean; mapPath: string } { - const world = WorldManager.instance.getDefaultWorld(); +function loadMapFromAssets(mapPath: string, worldId?: number): { loaded: boolean; mapPath: string; worldId: number } { + const world = getWorldOrDefault(worldId); const resolved = resolveMapPath(mapPath); if (!resolved) { @@ -180,7 +207,260 @@ function loadMapFromAssets(mapPath: string): { loaded: boolean; mapPath: string const map = JSON.parse(raw) as WorldMap; world.loadMap(map); - return { loaded: true, mapPath }; + return { loaded: true, mapPath, worldId: world.id }; +} + +function spawnEntities( + count: number, + kind: 'model' | 'block' | undefined, + options: Record | undefined, + tag: string | undefined, +): { spawned: number; tag: string } { + const world = WorldManager.instance.getDefaultWorld(); + const total = Math.max(0, Math.floor(count)); + const resolvedTag = (tag ?? DEFAULT_PERF_ENTITY_TAG).trim() || DEFAULT_PERF_ENTITY_TAG; + const parsedOptions = options ?? {}; + const entityKind: 'model' | 'block' = kind ?? (typeof parsedOptions.modelUri === 'string' ? 'model' : 'block'); + + const origin = { x: 0, y: 10, z: 0 }; + const spacing = 2; + const grid = Math.ceil(Math.sqrt(total)); + + for (let i = 0; i < total; i++) { + const gx = i % grid; + const gz = Math.floor(i / grid); + const position = { + x: origin.x + (gx - grid / 2) * spacing, + y: origin.y, + z: origin.z + (gz - grid / 2) * spacing, + }; + + let entityOptions: EntityOptions; + + if (entityKind === 'model') { + const modelUri = getString(parsedOptions, 'modelUri') ?? 'models/npcs/wumpus.gltf'; + const modelScale = parseModelScale(getUnknown(parsedOptions, 'modelScale')); + const modelPreferredShape = parseColliderShape(getUnknown(parsedOptions, 'modelPreferredShape')); + const rigidBodyType = parseRigidBodyType(getRecord(parsedOptions, 'rigidBodyOptions')?.type); + const disableAutoCollider = getBoolean(parsedOptions, 'disableAutoCollider'); + + entityOptions = { + modelUri, + modelScale, + modelPreferredShape: disableAutoCollider ? ColliderShape.NONE : modelPreferredShape, + rigidBodyOptions: rigidBodyType ? { type: rigidBodyType } : undefined, + isEnvironmental: getBoolean(parsedOptions, 'isEnvironmental'), + name: getString(parsedOptions, 'name'), + tag: resolvedTag, + }; + } else { + const blockTextureUri = getString(parsedOptions, 'blockTextureUri') ?? 'blocks/bricks.png'; + const blockHalfExtents = parseVector3Like(getUnknown(parsedOptions, 'blockHalfExtents')) ?? { x: 0.5, y: 0.5, z: 0.5 }; + const rigidBodyType = parseRigidBodyType(getRecord(parsedOptions, 'rigidBodyOptions')?.type); + + entityOptions = { + blockTextureUri, + blockHalfExtents, + rigidBodyOptions: rigidBodyType ? { type: rigidBodyType } : undefined, + isEnvironmental: getBoolean(parsedOptions, 'isEnvironmental'), + name: getString(parsedOptions, 'name'), + tag: resolvedTag, + }; + } + + const entity = new Entity(entityOptions); + entity.spawn(world, position); + } + + return { spawned: total, tag: resolvedTag }; +} + +function despawnEntities(tag?: string): { despawned: number; tag: string } { + const world = WorldManager.instance.getDefaultWorld(); + const resolvedTag = (tag ?? DEFAULT_PERF_ENTITY_TAG).trim() || DEFAULT_PERF_ENTITY_TAG; + + const entities = world.entityManager.getEntitiesByTag(resolvedTag); + + for (const entity of entities) { + entity.despawn(); + } + + return { despawned: entities.length, tag: resolvedTag }; +} + +function parseRigidBodyType(raw: unknown): RigidBodyType | undefined { + if (typeof raw !== 'string') return undefined; + + const v = raw.toLowerCase(); + + switch (v) { + case 'dynamic': return RigidBodyType.DYNAMIC; + case 'fixed': return RigidBodyType.FIXED; + case 'kinematic_position': return RigidBodyType.KINEMATIC_POSITION; + case 'kinematic_velocity': return RigidBodyType.KINEMATIC_VELOCITY; + default: return undefined; + } +} + +function parseColliderShape(raw: unknown): ColliderShape | undefined { + if (typeof raw !== 'string') return undefined; + + const v = raw.toLowerCase(); + + switch (v) { + case 'none': return ColliderShape.NONE; + case 'ball': return ColliderShape.BALL; + case 'block': return ColliderShape.BLOCK; + case 'capsule': return ColliderShape.CAPSULE; + case 'cone': return ColliderShape.CONE; + case 'cylinder': return ColliderShape.CYLINDER; + case 'round-cylinder': return ColliderShape.ROUND_CYLINDER; + case 'trimesh': return ColliderShape.TRIMESH; + case 'voxels': return ColliderShape.VOXELS; + case 'wedge': return ColliderShape.WEDGE; + default: return undefined; + } +} + +function parseVector3Like(raw: unknown): Vector3Like | undefined { + const obj = getUnknownRecord(raw); + if (!obj) return undefined; + + const x = getNumber(obj, 'x'); + const y = getNumber(obj, 'y'); + const z = getNumber(obj, 'z'); + + if (x === undefined || y === undefined || z === undefined) return undefined; + + return { x, y, z }; +} + +function parseModelScale(raw: unknown): Vector3Like | number | undefined { + if (typeof raw === 'number') return raw; + + return parseVector3Like(raw); +} + +function getUnknown(record: Record, key: string): unknown { + return record[key]; +} + +function getUnknownRecord(raw: unknown): Record | undefined { + if (!raw || typeof raw !== 'object') return undefined; + if (Array.isArray(raw)) return undefined; + + return raw as Record; +} + +function getRecord(record: Record, key: string): Record | undefined { + return getUnknownRecord(record[key]); +} + +function getString(record: Record, key: string): string | undefined { + const v = record[key]; + + return typeof v === 'string' ? v : undefined; +} + +function getNumber(record: Record, key: string): number | undefined { + const v = record[key]; + + return typeof v === 'number' ? v : undefined; +} + +function getBoolean(record: Record, key: string): boolean | undefined { + const v = record[key]; + + return typeof v === 'boolean' ? v : undefined; +} + +function startBlockChurn( + blocksPerTick: number, + blockTypeId: number, + mode: PerfBlockChurnMode | undefined, + min: Vector3Like | undefined, + max: Vector3Like | undefined, +): { started: boolean; blocksPerTick: number; blockTypeId: number } { + const world = WorldManager.instance.getDefaultWorld(); + + blockChurner.start(world, { + blocksPerTick, + blockTypeId, + mode, + min, + max, + }); + + return { + started: true, + blocksPerTick: Math.max(0, Math.floor(blocksPerTick)), + blockTypeId: Math.max(0, Math.floor(blockTypeId)), + }; +} + +function stopBlockChurn(): { stopped: boolean } { + blockChurner.stop(); + + return { stopped: true }; +} + +function createWorlds(count: number, mapPath: string | undefined, setDefault: boolean | undefined): { created: number; defaultWorldId: number } { + const total = Math.max(0, Math.floor(count)); + let mapRaw: string | undefined; + + if (typeof mapPath === 'string' && mapPath.trim().length > 0) { + const resolved = resolveMapPath(mapPath); + if (!resolved) throw new Error('Invalid mapPath'); + if (!fs.existsSync(resolved)) throw new Error(`Map not found: ${mapPath}`); + mapRaw = fs.readFileSync(resolved, 'utf-8'); + } + + const created: World[] = []; + + for (let i = 0; i < total; i++) { + const map = mapRaw ? JSON.parse(mapRaw) as WorldMap : undefined; + + created.push(WorldManager.instance.createWorld({ + name: `Perf World ${i + 1}`, + skyboxUri: 'skyboxes/partly-cloudy', + tag: DEFAULT_PERF_ENTITY_TAG, + map, + })); + } + + if (setDefault && created.length > 0) { + WorldManager.instance.setDefaultWorld(created[0]); + } + + return { created: created.length, defaultWorldId: WorldManager.instance.getDefaultWorld().id }; +} + +function setDefaultWorld(worldId: number): { ok: boolean; defaultWorldId: number } { + const id = Math.floor(worldId); + const world = WorldManager.instance.getWorld(id); + + if (!world) { + throw new Error(`World not found: ${id}`); + } + + WorldManager.instance.setDefaultWorld(world); + + return { ok: true, defaultWorldId: world.id }; +} + +function clearDefaultWorld(): { ok: boolean } { + const world = WorldManager.instance.getDefaultWorld(); + + stopBlockChurn(); + BotManager.instance.despawnAll(); + + for (const entity of world.entityManager.getEntitiesByTagSubstring(DEFAULT_PERF_ENTITY_TAG)) { + entity.despawn(); + } + + world.chunkLattice.clear(); + + return { ok: true }; } export default class PerfHarness { @@ -222,12 +502,25 @@ export default class PerfHarness { if (method === 'GET' && reqPath === `${PERF_PREFIX}/snapshot`) { const perf = PerformanceMonitor.instance.getSnapshot(); const network = NetworkMetrics.instance.isEnabled ? NetworkMetrics.instance.getSnapshot() : undefined; + const defaultWorld = WorldManager.instance.getDefaultWorld(); respondJson(res, 200, { ...perf, timestamp: Date.now(), players: PlayerManager.instance.playerCount, bots: BotManager.instance.botCount, + worlds: { + count: WorldManager.instance.getAllWorlds().length, + defaultWorldId: defaultWorld.id, + }, + world: { + id: defaultWorld.id, + chunkCount: defaultWorld.chunkLattice.chunkCount, + entityCount: defaultWorld.entityManager.entityCount, + }, + blockChurn: { + running: blockChurner.isRunning, + }, network, }); @@ -269,7 +562,84 @@ export default class PerfHarness { return respondJson(res, 400, { ok: false, error: '"mapPath" is required' }); } - const result = loadMapFromAssets(action.mapPath); + const result = loadMapFromAssets(action.mapPath, typeof action.worldId === 'number' ? action.worldId : undefined); + respondJson(res, 200, { ok: true, result }); + + return; + } + case 'spawn_entities': { + if (typeof action.count !== 'number') { + return respondJson(res, 400, { ok: false, error: '"count" is required' }); + } + + const result = spawnEntities( + action.count, + action.kind === 'model' || action.kind === 'block' ? action.kind : undefined, + typeof action.options === 'object' && action.options ? action.options : undefined, + typeof action.tag === 'string' ? action.tag : undefined, + ); + respondJson(res, 200, { ok: true, result }); + + return; + } + case 'despawn_entities': { + const result = despawnEntities(typeof action.tag === 'string' ? action.tag : undefined); + respondJson(res, 200, { ok: true, result }); + + return; + } + case 'start_block_churn': { + if (typeof action.blocksPerTick !== 'number') { + return respondJson(res, 400, { ok: false, error: '"blocksPerTick" is required' }); + } + + if (typeof action.blockTypeId !== 'number') { + return respondJson(res, 400, { ok: false, error: '"blockTypeId" is required' }); + } + + const result = startBlockChurn( + action.blocksPerTick, + action.blockTypeId, + action.mode, + action.min, + action.max, + ); + respondJson(res, 200, { ok: true, result }); + + return; + } + case 'stop_block_churn': { + const result = stopBlockChurn(); + respondJson(res, 200, { ok: true, result }); + + return; + } + case 'create_worlds': { + if (typeof action.count !== 'number') { + return respondJson(res, 400, { ok: false, error: '"count" is required' }); + } + + const result = createWorlds( + action.count, + typeof action.mapPath === 'string' ? action.mapPath : undefined, + typeof action.setDefault === 'boolean' ? action.setDefault : undefined, + ); + respondJson(res, 200, { ok: true, result }); + + return; + } + case 'set_default_world': { + if (typeof action.worldId !== 'number') { + return respondJson(res, 400, { ok: false, error: '"worldId" is required' }); + } + + const result = setDefaultWorld(action.worldId); + respondJson(res, 200, { ok: true, result }); + + return; + } + case 'clear_world': { + const result = clearDefaultWorld(); respondJson(res, 200, { ok: true, result }); return; diff --git a/server/src/worlds/WorldLoop.ts b/server/src/worlds/WorldLoop.ts index 162e4a1d..c3a7d39a 100644 --- a/server/src/worlds/WorldLoop.ts +++ b/server/src/worlds/WorldLoop.ts @@ -162,6 +162,7 @@ export default class WorldLoop extends EventRouter { this._currentTick, this._world.entityManager.entityCount, PlayerManager.instance.playerCount, + this._world.id, ); } @@ -184,31 +185,31 @@ export default class WorldLoop extends EventRouter { Telemetry.startSpan({ operation: TelemetrySpanOperation.ENTITIES_TICK, }, () => this._world.entityManager.tickEntities(tickDeltaMs)); - if (profiling) perfMon.recordPhase('entities_tick', performance.now() - phaseStart); + if (profiling) perfMon.recordPhase('entities_tick', performance.now() - phaseStart, this._world.id); phaseStart = profiling ? performance.now() : 0; Telemetry.startSpan({ operation: TelemetrySpanOperation.SIMULATION_STEP, }, () => this._world.simulation.step(tickDeltaMs)); - if (profiling) perfMon.recordPhase('simulation_step', performance.now() - phaseStart); + if (profiling) perfMon.recordPhase('simulation_step', performance.now() - phaseStart, this._world.id); phaseStart = profiling ? performance.now() : 0; Telemetry.startSpan({ operation: TelemetrySpanOperation.ENTITIES_EMIT_UPDATES, }, () => this._world.entityManager.checkAndEmitUpdates()); - if (profiling) perfMon.recordPhase('entities_emit_updates', performance.now() - phaseStart); + if (profiling) perfMon.recordPhase('entities_emit_updates', performance.now() - phaseStart, this._world.id); if (this._world.networkSynchronizer.shouldSynchronize()) { phaseStart = profiling ? performance.now() : 0; Telemetry.startSpan({ operation: TelemetrySpanOperation.NETWORK_SYNCHRONIZE, }, () => this._world.networkSynchronizer.synchronize()); - if (profiling) perfMon.recordPhase('network_synchronize', performance.now() - phaseStart); + if (profiling) perfMon.recordPhase('network_synchronize', performance.now() - phaseStart, this._world.id); } }); if (profiling) { - perfMon.endTick(); + perfMon.endTick(this._world.id); } this._currentTick++; From f2762fe61693aea91f887c96f98bbe48180cf065 Mon Sep 17 00:00:00 2001 From: web3dev1337 <160291380+web3dev1337@users.noreply.github.com> Date: Thu, 5 Mar 2026 21:30:14 +1100 Subject: [PATCH 11/40] docs: record new perf benchmarks and results --- ai-memory/docs/perf-final-2026-03-05/FINAL.md | 69 ++++++++++-- .../results/block-churn.json | 96 +++++++++++++++++ .../results/combined.json | 95 +++++++++------- .../results/entity-density.json | 93 ++++++++++++++++ .../perf-final-2026-03-05/results/idle.json | 81 ++++++++------ .../results/join-storm.json | 101 ++++++++++++++++++ .../results/large-world.json | 77 +++++++------ .../results/many-players.json | 83 ++++++++------ .../results/multi-world.json | 88 +++++++++++++++ .../perf-final-2026-03-05/results/stress.json | 73 ++++++++----- 10 files changed, 678 insertions(+), 178 deletions(-) create mode 100644 ai-memory/docs/perf-final-2026-03-05/results/block-churn.json create mode 100644 ai-memory/docs/perf-final-2026-03-05/results/entity-density.json create mode 100644 ai-memory/docs/perf-final-2026-03-05/results/join-storm.json create mode 100644 ai-memory/docs/perf-final-2026-03-05/results/multi-world.json diff --git a/ai-memory/docs/perf-final-2026-03-05/FINAL.md b/ai-memory/docs/perf-final-2026-03-05/FINAL.md index bcb6342c..e638fa44 100644 --- a/ai-memory/docs/perf-final-2026-03-05/FINAL.md +++ b/ai-memory/docs/perf-final-2026-03-05/FINAL.md @@ -411,7 +411,7 @@ This section reviews the “performance framework” implementation added in PR - When `HYTOPIA_PERF_TOOLS=1`, the server exposes: - `GET /__perf/snapshot` - `POST /__perf/reset` - - `POST /__perf/action` (`spawn_bots`, `despawn_bots`, `load_map`, `reset`) + - `POST /__perf/action` (subset: `spawn_bots`, `despawn_bots`, `load_map`, `spawn_entities`, `despawn_entities`, `start_block_churn`, `stop_block_churn`, `create_worlds`, `set_default_world`, `clear_world`, `reset`) - **A dedicated perf harness server entry exists** - `server/src/perf/perf-harness.ts` → built via `server` script `build:perf-harness` to `server/src/perf-harness.mjs`. - **`packages/perf-tools/` runs end-to-end for server benchmarks** @@ -426,11 +426,10 @@ This section reviews the “performance framework” implementation added in PR - The current runner focuses on **server** metrics (tick + memory + ops). The optional `scenario.clients` setting creates WebSocket connections (server-side “players”), but no FPS stats are collected. - **No per-tick event stream yet** - `MetricCollector` supports tick reports/spikes, but `perf-tools` currently collects periodic snapshots only. -- **Network metrics are collected but not surfaced in reports** - - Server tracks bytes/packets/serialization/compression via `NetworkMetrics`, but the perf-tools baseline/report format doesn’t include it yet. -- **Join-storm chunk sync is not directly benchmarked yet** - - `perf-tools` currently connects WebSocket clients at scenario start, before phase actions run. - - This means scenarios that `load_map` in a later phase do not fully exercise the real “player join → send every chunk” burst path described earlier. +- **Network metrics are collected and included in baselines** + - Server tracks bytes/packets/serialization/compression via `NetworkMetrics` and `perf-tools` records them in results JSON. +- **Client-side join stutter is not measured yet** + - We now benchmark the **server-side** join burst (“join-storm”), but we still do not capture client main-thread stutters from gzip+msgpack decode or chunk meshing cost. - **The GitHub Actions workflows aren’t a hard gate yet** - Bench steps remain `continue-on-error: true`, and compare uses `|| true`. @@ -459,13 +458,17 @@ Results JSON (generated by `packages/perf-tools`): - `ai-memory/docs/perf-final-2026-03-05/results/large-world.json` - `ai-memory/docs/perf-final-2026-03-05/results/many-players.json` - `ai-memory/docs/perf-final-2026-03-05/results/combined.json` +- `ai-memory/docs/perf-final-2026-03-05/results/join-storm.json` +- `ai-memory/docs/perf-final-2026-03-05/results/block-churn.json` +- `ai-memory/docs/perf-final-2026-03-05/results/entity-density.json` +- `ai-memory/docs/perf-final-2026-03-05/results/multi-world.json` #### Idle preset (`idle-baseline`) - Warmup: 5s, Measure: 30s - No real browser clients connected, no bots - Baseline: - - `avgTickMs=0.04`, `p99TickMs=0.13`, `maxTickMs=0.88`, `avgHeap=40.5MB` + - `avgTickMs=0.05`, `p99TickMs=0.14`, `maxTickMs=0.76`, `avgHeap=40.7MB` #### Stress preset (`stress-test`) @@ -475,7 +478,7 @@ Results JSON (generated by `packages/perf-tools`): - Spawn bots: 50 `random_walk`, 30 `chase`, 20 `interact` (100 total) - Stabilize: 5s, Measure: 60s - Baseline: - - `avgTickMs=0.28`, `p99TickMs=1.37`, `maxTickMs=2.68`, `avgHeap=47.3MB` + - `avgTickMs=0.26`, `p99TickMs=1.27`, `maxTickMs=2.33`, `avgHeap=47.0MB` #### Large-world preset (`large-world`) @@ -485,7 +488,7 @@ Results JSON (generated by `packages/perf-tools`): - Spawn bots: 20 `random_walk` - Stabilize: 10s, Measure: 60s - Baseline: - - `avgTickMs=0.27`, `p99TickMs=0.54`, `maxTickMs=0.99`, `avgHeap=88.8MB` + - `avgTickMs=0.27`, `p99TickMs=0.52`, `maxTickMs=0.81`, `avgHeap=88.8MB` #### Many-players preset (`many-players`) @@ -495,7 +498,7 @@ Results JSON (generated by `packages/perf-tools`): - Spawn bots: 50 `random_walk` - Measure: 60s - Baseline: - - `avgTickMs=0.65`, `p99TickMs=2.11`, `maxTickMs=4.20`, `avgHeap=43.3MB` + - `avgTickMs=0.87`, `p99TickMs=3.22`, `maxTickMs=4.22`, `avgHeap=42.0MB` #### Combined preset (`combined-stress`) @@ -506,7 +509,51 @@ Results JSON (generated by `packages/perf-tools`): - Spawn bots: 50 `random_walk`, 30 `chase`, 20 `interact` (100 total) - Stabilize: 10s, Measure: 120s - Baseline: - - `avgTickMs=1.62`, `p99TickMs=4.32`, `maxTickMs=117.65`, `overBudgetPct=0.85%`, `avgHeap=64.2MB` + - `avgTickMs=1.77`, `p99TickMs=4.68`, `maxTickMs=119.11`, `overBudgetPct=0.8%`, `avgHeap=63.6MB` + +#### Join-storm preset (`join-storm`) + +- Warmup: 5s +- Actions: + - Load map: `assets/maps/boilerplate.json` + - Connect clients: 100 WebSocket connections (server-side “players”) +- Stabilize: 10s, Measure: 60s +- Baseline: + - `avgTickMs=3.84`, `p99TickMs=77.47`, `maxTickMs=112.95`, `overBudgetPct=3.7%` + - `avgSerializePacketsMs=14.84`, `p95SerializePacketsMs=44.25` + - `bytesSentTotal=37.0MB`, `compressTotal=100` + +#### Block-churn preset (`block-churn`) + +- Warmup: 5s +- Clients: 10 WebSocket connections +- Actions: + - Load map: `assets/maps/boilerplate-small.json` + - Start churn: `blocksPerTick=200` within `x/z [-16..16], y [1..5]` +- Measure: 60s +- Baseline: + - `avgTickMs=0.68`, `p99TickMs=1.36`, `maxTickMs=2.75` + - `bytesSentTotal=32.2MB` (block updates to clients) + +#### Entity-density preset (`entity-density`) + +- Warmup: 5s +- Actions: + - Load map: `assets/maps/boilerplate-small.json` + - Spawn: 500 dynamic block entities +- Stabilize: 10s, Measure: 60s +- Baseline: + - `avgTickMs=0.35`, `p99TickMs=0.65`, `maxTickMs=1.22` + - `entities_emit_updates avg=0.18ms` + +#### Multi-world preset (`multi-world`) + +- Warmup: 5s +- Actions: + - Create worlds: default world + 3 additional worlds, each loading `assets/maps/boilerplate-small.json` +- Measure: 60s +- Baseline: + - `avgTickMs=0.03`, `p99TickMs=0.09`, `maxTickMs=1.25` ### Client build check diff --git a/ai-memory/docs/perf-final-2026-03-05/results/block-churn.json b/ai-memory/docs/perf-final-2026-03-05/results/block-churn.json new file mode 100644 index 00000000..ff0af3e2 --- /dev/null +++ b/ai-memory/docs/perf-final-2026-03-05/results/block-churn.json @@ -0,0 +1,96 @@ +{ + "timestamp": "2026-03-05T10:10:38.634Z", + "scenario": "block-churn", + "durationMs": 64135, + "baseline": { + "avgTickMs": 0.6849331709943677, + "maxTickMs": 2.745523999999932, + "p95TickMs": 1.0772681333333822, + "p99TickMs": 1.3614075166666983, + "ticksOverBudgetPct": 0, + "avgMemoryMb": 53.00004514058431, + "operations": { + "entities_tick": { + "avgMs": 0.0011016425849722223, + "p95Ms": 0.0017433833341632028 + }, + "physics_step": { + "avgMs": 0.4908600910006157, + "p95Ms": 0.6150475666666807 + }, + "physics_cleanup": { + "avgMs": 0.003169533204346628, + "p95Ms": 0.00507628333351325 + }, + "simulation_step": { + "avgMs": 0.49752787563245937, + "p95Ms": 0.625502483332654 + }, + "entities_emit_updates": { + "avgMs": 0.0005685967802767758, + "p95Ms": 0.0008665333331767518 + }, + "serialize_packets": { + "avgMs": 0.0540394719882092, + "p95Ms": 0.0907738000004277 + }, + "send_packets": { + "avgMs": 0.031098482472493673, + "p95Ms": 0.1263187999997778 + }, + "send_all_packets": { + "avgMs": 0.328743960390142, + "p95Ms": 0.5316539666670754 + }, + "network_synchronize_cleanup": { + "avgMs": 0.004660384153499193, + "p95Ms": 0.006042183333102002 + }, + "network_synchronize": { + "avgMs": 0.3520175592994608, + "p95Ms": 0.562322033333506 + }, + "world_tick": { + "avgMs": 0.682740707841139, + "p95Ms": 1.0147215833332364 + }, + "ticker_tick": { + "avgMs": 1.0084807833297353, + "p95Ms": 1.4116792833336906 + } + }, + "network": { + "totalBytesSent": 32210193, + "totalBytesReceived": 0, + "maxConnectedPlayers": 10, + "avgBytesSentPerSecond": 535222.3882152817, + "maxBytesSentPerSecond": 559391.8169551987, + "avgBytesReceivedPerSecond": 0, + "maxBytesReceivedPerSecond": 0, + "avgPacketsSentPerSecond": 300.2943947891586, + "maxPacketsSentPerSecond": 310.75611660367906, + "avgPacketsReceivedPerSecond": 0, + "maxPacketsReceivedPerSecond": 0, + "avgSerializationMs": 0.051713485794082574, + "compressionCountTotal": 2 + } + }, + "phases": [ + { + "name": "setup", + "durationMs": 510, + "collected": false + }, + { + "name": "churn-and-measure", + "durationMs": 59116, + "collected": true + } + ], + "metrics": { + "tickReportCount": 0, + "spikeCount": 0, + "serverSnapshotCount": 60, + "clientSnapshotCount": 0 + } +} \ No newline at end of file diff --git a/ai-memory/docs/perf-final-2026-03-05/results/combined.json b/ai-memory/docs/perf-final-2026-03-05/results/combined.json index 02301a7b..e62d5252 100644 --- a/ai-memory/docs/perf-final-2026-03-05/results/combined.json +++ b/ai-memory/docs/perf-final-2026-03-05/results/combined.json @@ -1,84 +1,99 @@ { - "timestamp": "2026-03-05T08:33:27.416Z", + "timestamp": "2026-03-05T10:19:41.066Z", "scenario": "combined-stress", - "durationMs": 148543, + "durationMs": 146434, "baseline": { - "avgTickMs": 1.6246458165157687, - "maxTickMs": 117.65480500000558, - "p95TickMs": 1.1247772083339138, - "p99TickMs": 4.320444258331311, - "ticksOverBudgetPct": 0.8500557413600892, - "avgMemoryMb": 64.21133410135904, + "avgTickMs": 1.7669154759255734, + "maxTickMs": 119.1145120000001, + "p95TickMs": 1.315517916666431, + "p99TickMs": 4.684417033333982, + "ticksOverBudgetPct": 0.8499649331407365, + "avgMemoryMb": 63.636258125305176, "operations": { "entities_tick": { - "avgMs": 0.06023534214868161, - "p95Ms": 0.09285301666759552 + "avgMs": 0.0728528046739081, + "p95Ms": 0.1221807416680349 }, "physics_step": { - "avgMs": 1.314700189717483, - "p95Ms": 0.5700750083333029 + "avgMs": 1.408065831620104, + "p95Ms": 0.6354630583336378 }, "physics_cleanup": { - "avgMs": 0.002085650584596271, - "p95Ms": 0.0030714333330858303 + "avgMs": 0.0030421108487570497, + "p95Ms": 0.00449195000016213 }, "simulation_step": { - "avgMs": 1.3197706446445352, - "p95Ms": 0.5771322249997259 + "avgMs": 1.414739001908914, + "p95Ms": 0.645052208334073 }, "entities_emit_updates": { - "avgMs": 0.05804956685453903, - "p95Ms": 0.08771780000139794 - }, - "world_tick": { - "avgMs": 1.6331770308059, - "p95Ms": 1.1152968916647297 - }, - "ticker_tick": { - "avgMs": 1.676339860219361, - "p95Ms": 1.174580299999828 + "avgMs": 0.06617845378886872, + "p95Ms": 0.10611717500141822 }, "serialize_packets": { - "avgMs": 0.018518397704499326, - "p95Ms": 0.028155433331782356 + "avgMs": 0.02305844670776388, + "p95Ms": 0.03494735000109964 }, "send_packets": { - "avgMs": 0.03408368015064002, - "p95Ms": 0.09443360000065391 + "avgMs": 0.03796243016453969, + "p95Ms": 0.11168594166689824 }, "send_all_packets": { - "avgMs": 0.35896385172022055, - "p95Ms": 0.5381129500002619 + "avgMs": 0.40120493518422384, + "p95Ms": 0.6376426833339792 }, "network_synchronize_cleanup": { - "avgMs": 0.003422776250948875, - "p95Ms": 0.004683658332063108 + "avgMs": 0.00435136068161182, + "p95Ms": 0.00610366666696791 }, "network_synchronize": { - "avgMs": 0.37832787548255975, - "p95Ms": 0.5595540250004282 + "avgMs": 0.4263879479175249, + "p95Ms": 0.6685033583338736 + }, + "world_tick": { + "avgMs": 1.7746799205055102, + "p95Ms": 1.3021827249979347 + }, + "ticker_tick": { + "avgMs": 1.8245079275256666, + "p95Ms": 1.3848611416666852 } + }, + "network": { + "totalBytesSent": 32907550, + "totalBytesReceived": 0, + "maxConnectedPlayers": 10, + "avgBytesSentPerSecond": 266178.4396486531, + "maxBytesSentPerSecond": 396740.41631734296, + "avgBytesReceivedPerSecond": 0, + "maxBytesReceivedPerSecond": 0, + "avgPacketsSentPerSecond": 294.4515047767222, + "maxPacketsSentPerSecond": 329.0251711324992, + "avgPacketsReceivedPerSecond": 0, + "maxPacketsReceivedPerSecond": 0, + "avgSerializationMs": 0.02127565248229243, + "compressionCountTotal": 0 } }, "phases": [ { "name": "load-world", - "durationMs": 6054, + "durationMs": 5110, "collected": false }, { "name": "spawn-all", - "durationMs": 689, + "durationMs": 760, "collected": false }, { "name": "stabilize", - "durationMs": 9133, + "durationMs": 10001, "collected": false }, { "name": "measure", - "durationMs": 121159, + "durationMs": 119529, "collected": true } ], diff --git a/ai-memory/docs/perf-final-2026-03-05/results/entity-density.json b/ai-memory/docs/perf-final-2026-03-05/results/entity-density.json new file mode 100644 index 00000000..7c7c1f4c --- /dev/null +++ b/ai-memory/docs/perf-final-2026-03-05/results/entity-density.json @@ -0,0 +1,93 @@ +{ + "timestamp": "2026-03-05T10:28:40.896Z", + "scenario": "entity-density", + "durationMs": 74447, + "baseline": { + "avgTickMs": 0.35446141580684515, + "maxTickMs": 1.217609999992419, + "p95TickMs": 0.49880955000010846, + "p99TickMs": 0.6524828166667854, + "ticksOverBudgetPct": 0, + "avgMemoryMb": 44.66063092549642, + "operations": { + "entities_tick": { + "avgMs": 0.016547232843148327, + "p95Ms": 0.025251083333538798 + }, + "physics_step": { + "avgMs": 0.13449901648284898, + "p95Ms": 0.18499565000129223 + }, + "physics_cleanup": { + "avgMs": 0.002322116057727884, + "p95Ms": 0.0033113166655918272 + }, + "simulation_step": { + "avgMs": 0.1396163369787168, + "p95Ms": 0.19289864999897569 + }, + "entities_emit_updates": { + "avgMs": 0.1810740421472613, + "p95Ms": 0.2781539166659362 + }, + "send_all_packets": { + "avgMs": 0.0023587110905412306, + "p95Ms": 0.0033070833336751094 + }, + "network_synchronize_cleanup": { + "avgMs": 0.004359490449905124, + "p95Ms": 0.005840849999397809 + }, + "network_synchronize": { + "avgMs": 0.01736202156468164, + "p95Ms": 0.024285166667020044 + }, + "world_tick": { + "avgMs": 0.35252660842303335, + "p95Ms": 0.4856061166657431 + }, + "ticker_tick": { + "avgMs": 0.3828609000750609, + "p95Ms": 0.5241929000011017 + } + }, + "network": { + "totalBytesSent": 0, + "totalBytesReceived": 0, + "maxConnectedPlayers": 0, + "avgBytesSentPerSecond": 0, + "maxBytesSentPerSecond": 0, + "avgBytesReceivedPerSecond": 0, + "maxBytesReceivedPerSecond": 0, + "avgPacketsSentPerSecond": 0, + "maxPacketsSentPerSecond": 0, + "avgPacketsReceivedPerSecond": 0, + "maxPacketsReceivedPerSecond": 0, + "avgSerializationMs": 0, + "compressionCountTotal": 0 + } + }, + "phases": [ + { + "name": "setup", + "durationMs": 181, + "collected": false + }, + { + "name": "stabilize", + "durationMs": 10008, + "collected": false + }, + { + "name": "measure", + "durationMs": 58586, + "collected": true + } + ], + "metrics": { + "tickReportCount": 0, + "spikeCount": 0, + "serverSnapshotCount": 60, + "clientSnapshotCount": 0 + } +} \ No newline at end of file diff --git a/ai-memory/docs/perf-final-2026-03-05/results/idle.json b/ai-memory/docs/perf-final-2026-03-05/results/idle.json index 10529062..9e29d32c 100644 --- a/ai-memory/docs/perf-final-2026-03-05/results/idle.json +++ b/ai-memory/docs/perf-final-2026-03-05/results/idle.json @@ -1,66 +1,81 @@ { - "timestamp": "2026-03-05T08:02:48.070Z", + "timestamp": "2026-03-05T10:12:51.999Z", "scenario": "idle-baseline", - "durationMs": 34422, + "durationMs": 34964, "baseline": { - "avgTickMs": 0.04203972943437319, - "maxTickMs": 0.8820090000008349, - "p95TickMs": 0.07541519999955805, - "p99TickMs": 0.1272069999999682, + "avgTickMs": 0.04679685049276594, + "maxTickMs": 0.7618509999992966, + "p95TickMs": 0.08563006666624157, + "p99TickMs": 0.14175990000006397, "ticksOverBudgetPct": 0, - "avgMemoryMb": 40.52041803995768, + "avgMemoryMb": 40.66230392456055, "operations": { "entities_tick": { - "avgMs": 0.001114420389146293, - "p95Ms": 0.0017866333328129258 + "avgMs": 0.0013375285718636284, + "p95Ms": 0.0020908666665794347 }, "physics_step": { - "avgMs": 0.02166873620451, - "p95Ms": 0.03330013333309883 + "avgMs": 0.02362913038497697, + "p95Ms": 0.037648333333769796 }, "physics_cleanup": { - "avgMs": 0.0027704908231093355, - "p95Ms": 0.0042436666669649035 + "avgMs": 0.0029344255942972772, + "p95Ms": 0.004569666666156991 }, "simulation_step": { - "avgMs": 0.02700019616574194, - "p95Ms": 0.045443866666695004 + "avgMs": 0.02947926233473994, + "p95Ms": 0.04859916666643282 }, "entities_emit_updates": { - "avgMs": 0.0005000602500278144, - "p95Ms": 0.000681066666766128 + "avgMs": 0.0004343184789922846, + "p95Ms": 0.0007068999998409708 + }, + "world_tick": { + "avgMs": 0.04458446096775077, + "p95Ms": 0.07784126666668574 + }, + "ticker_tick": { + "avgMs": 0.07767732243819857, + "p95Ms": 0.125281199999669 }, "send_all_packets": { - "avgMs": 0.0030847504849194677, - "p95Ms": 0.004832866666977982 + "avgMs": 0.003018038009964449, + "p95Ms": 0.005092800000026424 }, "network_synchronize_cleanup": { - "avgMs": 0.001912261431047877, - "p95Ms": 0.0025155333334320553 + "avgMs": 0.0021036462653031196, + "p95Ms": 0.003053333333173214 }, "network_synchronize": { - "avgMs": 0.011556394492309798, - "p95Ms": 0.017829233333516943 - }, - "world_tick": { - "avgMs": 0.04017091732958176, - "p95Ms": 0.07022670000002715 - }, - "ticker_tick": { - "avgMs": 0.07093715680076258, - "p95Ms": 0.11399493333340918 + "avgMs": 0.012486877813969597, + "p95Ms": 0.020697799999864704 } + }, + "network": { + "totalBytesSent": 0, + "totalBytesReceived": 0, + "maxConnectedPlayers": 0, + "avgBytesSentPerSecond": 0, + "maxBytesSentPerSecond": 0, + "avgBytesReceivedPerSecond": 0, + "maxBytesReceivedPerSecond": 0, + "avgPacketsSentPerSecond": 0, + "maxPacketsSentPerSecond": 0, + "avgPacketsReceivedPerSecond": 0, + "maxPacketsReceivedPerSecond": 0, + "avgSerializationMs": 0, + "compressionCountTotal": 0 } }, "phases": [ { "name": "warmup", - "durationMs": 4286, + "durationMs": 5002, "collected": false }, { "name": "measure", - "durationMs": 29458, + "durationMs": 29290, "collected": true } ], diff --git a/ai-memory/docs/perf-final-2026-03-05/results/join-storm.json b/ai-memory/docs/perf-final-2026-03-05/results/join-storm.json new file mode 100644 index 00000000..e04a1590 --- /dev/null +++ b/ai-memory/docs/perf-final-2026-03-05/results/join-storm.json @@ -0,0 +1,101 @@ +{ + "timestamp": "2026-03-05T10:09:09.199Z", + "scenario": "join-storm", + "durationMs": 91105, + "baseline": { + "avgTickMs": 3.8439880739882892, + "maxTickMs": 112.95012900000074, + "p95TickMs": 19.94523724999999, + "p99TickMs": 77.46513353333297, + "ticksOverBudgetPct": 3.7425877320890444, + "avgMemoryMb": 48.09654210408529, + "operations": { + "entities_tick": { + "avgMs": 0.0009194323091604177, + "p95Ms": 0.0014065166675209183 + }, + "physics_step": { + "avgMs": 0.1250473523586698, + "p95Ms": 0.16052406666658497 + }, + "physics_cleanup": { + "avgMs": 0.002340173183884654, + "p95Ms": 0.00359716666728976 + }, + "simulation_step": { + "avgMs": 0.1303260057996392, + "p95Ms": 0.16916449999947267 + }, + "entities_emit_updates": { + "avgMs": 0.0004420220462453582, + "p95Ms": 0.0007175666659046935 + }, + "send_all_packets": { + "avgMs": 6.925752767111098, + "p95Ms": 32.30038794999982 + }, + "network_synchronize_cleanup": { + "avgMs": 0.0034105134230800684, + "p95Ms": 0.0070909166668570835 + }, + "network_synchronize": { + "avgMs": 7.512317285671764, + "p95Ms": 35.00766645000058 + }, + "world_tick": { + "avgMs": 3.8963345294500464, + "p95Ms": 14.466868366666798 + }, + "ticker_tick": { + "avgMs": 4.646949241996682, + "p95Ms": 17.103415033332507 + }, + "serialize_packets": { + "avgMs": 14.845185557970833, + "p95Ms": 44.2485400000005 + }, + "send_packets": { + "avgMs": 1.0592896467176869, + "p95Ms": 0.037754999997559935 + } + }, + "network": { + "totalBytesSent": 37004083, + "totalBytesReceived": 0, + "maxConnectedPlayers": 100, + "avgBytesSentPerSecond": 47830.810050770735, + "maxBytesSentPerSecond": 2869848.603046244, + "avgBytesReceivedPerSecond": 0, + "maxBytesReceivedPerSecond": 0, + "avgPacketsSentPerSecond": 6.217319217022814, + "maxPacketsSentPerSecond": 373.0391530213688, + "avgPacketsReceivedPerSecond": 0, + "maxPacketsReceivedPerSecond": 0, + "avgSerializationMs": 14.841901460144893, + "compressionCountTotal": 100 + } + }, + "phases": [ + { + "name": "preload-world", + "durationMs": 6441, + "collected": false + }, + { + "name": "stabilize", + "durationMs": 10007, + "collected": false + }, + { + "name": "join-and-measure", + "durationMs": 68940, + "collected": true + } + ], + "metrics": { + "tickReportCount": 0, + "spikeCount": 0, + "serverSnapshotCount": 60, + "clientSnapshotCount": 0 + } +} \ No newline at end of file diff --git a/ai-memory/docs/perf-final-2026-03-05/results/large-world.json b/ai-memory/docs/perf-final-2026-03-05/results/large-world.json index 441b4603..f020520d 100644 --- a/ai-memory/docs/perf-final-2026-03-05/results/large-world.json +++ b/ai-memory/docs/perf-final-2026-03-05/results/large-world.json @@ -1,76 +1,91 @@ { - "timestamp": "2026-03-05T08:29:15.218Z", + "timestamp": "2026-03-05T10:15:38.029Z", "scenario": "large-world", - "durationMs": 84907, + "durationMs": 83958, "baseline": { - "avgTickMs": 0.27393310057401493, - "maxTickMs": 0.9869840000028489, - "p95TickMs": 0.3828831500003313, - "p99TickMs": 0.5447322499994698, + "avgTickMs": 0.27312384526383476, + "maxTickMs": 0.8103859999973793, + "p95TickMs": 0.3799384999991768, + "p99TickMs": 0.5230436666655199, "ticksOverBudgetPct": 0, - "avgMemoryMb": 88.77384020487467, + "avgMemoryMb": 88.8380968729655, "operations": { "entities_tick": { - "avgMs": 0.02464061749755326, - "p95Ms": 0.04236551666575299 + "avgMs": 0.025279676413873416, + "p95Ms": 0.04658946666756189 }, "physics_step": { - "avgMs": 0.2065711943411591, - "p95Ms": 0.2736408833337919 + "avgMs": 0.20503839756718564, + "p95Ms": 0.28973085000009935 }, "physics_cleanup": { - "avgMs": 0.002082314511966274, - "p95Ms": 0.0030974166671512648 + "avgMs": 0.002534760739664471, + "p95Ms": 0.004096933333312336 }, "simulation_step": { - "avgMs": 0.2116222404007795, - "p95Ms": 0.28152733333299695 + "avgMs": 0.21045242650494736, + "p95Ms": 0.2990760833338451 }, "entities_emit_updates": { - "avgMs": 0.021980974957498556, - "p95Ms": 0.03847450000030221 + "avgMs": 0.020149946157692927, + "p95Ms": 0.03197119999967981 }, "world_tick": { - "avgMs": 0.272743909880828, - "p95Ms": 0.3734315500005929 + "avgMs": 0.271353897934955, + "p95Ms": 0.3954721666663318 }, "ticker_tick": { - "avgMs": 0.30299386042646737, - "p95Ms": 0.4100281333328894 + "avgMs": 0.3032136743891168, + "p95Ms": 0.4411740833342265 }, "send_all_packets": { - "avgMs": 0.0017612591724411868, - "p95Ms": 0.002773616668431108 + "avgMs": 0.0018746731203238406, + "p95Ms": 0.0033366166666382925 }, "network_synchronize_cleanup": { - "avgMs": 0.0033801205431956945, - "p95Ms": 0.00522951666625886 + "avgMs": 0.0035733975726565527, + "p95Ms": 0.00537756666635687 }, "network_synchronize": { - "avgMs": 0.016153427484475177, - "p95Ms": 0.024212966666467158 + "avgMs": 0.017516659663546427, + "p95Ms": 0.026397666666161966 } + }, + "network": { + "totalBytesSent": 0, + "totalBytesReceived": 0, + "maxConnectedPlayers": 0, + "avgBytesSentPerSecond": 0, + "maxBytesSentPerSecond": 0, + "avgBytesReceivedPerSecond": 0, + "maxBytesReceivedPerSecond": 0, + "avgPacketsSentPerSecond": 0, + "maxPacketsSentPerSecond": 0, + "avgPacketsReceivedPerSecond": 0, + "maxPacketsReceivedPerSecond": 0, + "avgSerializationMs": 0, + "compressionCountTotal": 0 } }, "phases": [ { "name": "load-world", - "durationMs": 6103, + "durationMs": 6114, "collected": false }, { "name": "spawn-bots", - "durationMs": 179, + "durationMs": 197, "collected": false }, { "name": "stabilize", - "durationMs": 9163, + "durationMs": 10006, "collected": false }, { "name": "measure", - "durationMs": 58773, + "durationMs": 58006, "collected": true } ], diff --git a/ai-memory/docs/perf-final-2026-03-05/results/many-players.json b/ai-memory/docs/perf-final-2026-03-05/results/many-players.json index ba307069..66877308 100644 --- a/ai-memory/docs/perf-final-2026-03-05/results/many-players.json +++ b/ai-memory/docs/perf-final-2026-03-05/results/many-players.json @@ -1,79 +1,94 @@ { - "timestamp": "2026-03-05T08:30:48.908Z", + "timestamp": "2026-03-05T10:17:05.112Z", "scenario": "many-players", - "durationMs": 83093, + "durationMs": 80745, "baseline": { - "avgTickMs": 0.6470265995516347, - "maxTickMs": 4.203389000002062, - "p95TickMs": 1.6269400499999391, - "p99TickMs": 2.1103549333337166, + "avgTickMs": 0.8746872841378011, + "maxTickMs": 4.222443999999086, + "p95TickMs": 2.5081412666680385, + "p99TickMs": 3.219694016666593, "ticksOverBudgetPct": 0, - "avgMemoryMb": 43.294999567667645, + "avgMemoryMb": 42.02790768941244, "operations": { "entities_tick": { - "avgMs": 0.04735350895084237, - "p95Ms": 0.08498573333278424 + "avgMs": 0.05138953384694122, + "p95Ms": 0.09260073333268035 }, "physics_step": { - "avgMs": 0.03551447968858303, - "p95Ms": 0.05286774999998064 + "avgMs": 0.041260081827029095, + "p95Ms": 0.0621942666659379 }, "physics_cleanup": { - "avgMs": 0.0017913868605565167, - "p95Ms": 0.002568766666505932 + "avgMs": 0.0019546326687081284, + "p95Ms": 0.0029245166662803966 }, "simulation_step": { - "avgMs": 0.03923516544657127, - "p95Ms": 0.05986169999917668 + "avgMs": 0.045355334968446834, + "p95Ms": 0.06857985000048454 }, "entities_emit_updates": { - "avgMs": 0.03855938052634314, - "p95Ms": 0.06088985000048221 + "avgMs": 0.04189781307972324, + "p95Ms": 0.06619103333323437 }, "world_tick": { - "avgMs": 0.6457899452704966, - "p95Ms": 1.640317100000478 + "avgMs": 0.8729773269334782, + "p95Ms": 2.462780899999537 }, "ticker_tick": { - "avgMs": 0.675227684528368, - "p95Ms": 1.6709995000013198 + "avgMs": 0.9051501613199358, + "p95Ms": 2.5023866833339223 }, "serialize_packets": { - "avgMs": 0.018892928437028597, - "p95Ms": 0.0341168166673621 + "avgMs": 0.022628722083128678, + "p95Ms": 0.041281666666994475 }, "send_packets": { - "avgMs": 0.01959014294244713, - "p95Ms": 0.04560398333281531 + "avgMs": 0.027797208580608634, + "p95Ms": 0.06443991666637885 }, "send_all_packets": { - "avgMs": 1.010612902026956, - "p95Ms": 1.657106016666997 + "avgMs": 1.4330436181876212, + "p95Ms": 2.59864774999866 }, "network_synchronize_cleanup": { - "avgMs": 0.0036523557310532053, - "p95Ms": 0.005459899999793075 + "avgMs": 0.004993326950873297, + "p95Ms": 0.007568166666715115 }, "network_synchronize": { - "avgMs": 1.0305746473852164, - "p95Ms": 1.6906612666663325 + "avgMs": 1.456699282547033, + "p95Ms": 2.6258489500005453 } + }, + "network": { + "totalBytesSent": 60403050, + "totalBytesReceived": 0, + "maxConnectedPlayers": 50, + "avgBytesSentPerSecond": 1003501.3912498938, + "maxBytesSentPerSecond": 1417933.0762851927, + "avgBytesReceivedPerSecond": 0, + "maxBytesReceivedPerSecond": 0, + "avgPacketsSentPerSecond": 1500.1696318543493, + "maxPacketsSentPerSecond": 1546.4201008697064, + "avgPacketsReceivedPerSecond": 0, + "maxPacketsReceivedPerSecond": 0, + "avgSerializationMs": 0.020653985255427998, + "compressionCountTotal": 0 } }, "phases": [ { "name": "connect-clients", - "durationMs": 9150, + "durationMs": 10004, "collected": false }, { "name": "spawn-bots", - "durationMs": 80, + "durationMs": 81, "collected": false }, { "name": "measure", - "durationMs": 59452, + "durationMs": 57993, "collected": true } ], diff --git a/ai-memory/docs/perf-final-2026-03-05/results/multi-world.json b/ai-memory/docs/perf-final-2026-03-05/results/multi-world.json new file mode 100644 index 00000000..0f52515e --- /dev/null +++ b/ai-memory/docs/perf-final-2026-03-05/results/multi-world.json @@ -0,0 +1,88 @@ +{ + "timestamp": "2026-03-05T10:07:04.188Z", + "scenario": "multi-world", + "durationMs": 64049, + "baseline": { + "avgTickMs": 0.03324289287861414, + "maxTickMs": 1.2527769999996963, + "p95TickMs": 0.056213900000072196, + "p99TickMs": 0.09321036666650191, + "ticksOverBudgetPct": 0, + "avgMemoryMb": 40.977216720581055, + "operations": { + "entities_tick": { + "avgMs": 0.000647179935009268, + "p95Ms": 0.001016316666058022 + }, + "physics_step": { + "avgMs": 0.01958448665007442, + "p95Ms": 0.03103574999987965 + }, + "physics_cleanup": { + "avgMs": 0.0014549152493084315, + "p95Ms": 0.002296966666881417 + }, + "simulation_step": { + "avgMs": 0.022994598524021994, + "p95Ms": 0.036961799999562575 + }, + "entities_emit_updates": { + "avgMs": 0.00029909848248830335, + "p95Ms": 0.0004827166661774148 + }, + "send_all_packets": { + "avgMs": 0.00160899185917926, + "p95Ms": 0.002542850000084703 + }, + "network_synchronize_cleanup": { + "avgMs": 0.0016132861723190263, + "p95Ms": 0.002282100000168915 + }, + "network_synchronize": { + "avgMs": 0.007937750397640869, + "p95Ms": 0.009497916667047928 + }, + "world_tick": { + "avgMs": 0.03205459396199441, + "p95Ms": 0.051640333333701466 + }, + "ticker_tick": { + "avgMs": 0.05589747594833992, + "p95Ms": 0.08802360000042124 + } + }, + "network": { + "totalBytesSent": 0, + "totalBytesReceived": 0, + "maxConnectedPlayers": 0, + "avgBytesSentPerSecond": 0, + "maxBytesSentPerSecond": 0, + "avgBytesReceivedPerSecond": 0, + "maxBytesReceivedPerSecond": 0, + "avgPacketsSentPerSecond": 0, + "maxPacketsSentPerSecond": 0, + "avgPacketsReceivedPerSecond": 0, + "maxPacketsReceivedPerSecond": 0, + "avgSerializationMs": 0, + "compressionCountTotal": 0 + } + }, + "phases": [ + { + "name": "setup", + "durationMs": 204, + "collected": false + }, + { + "name": "measure", + "durationMs": 58174, + "collected": true + } + ], + "metrics": { + "tickReportCount": 0, + "spikeCount": 0, + "serverSnapshotCount": 60, + "clientSnapshotCount": 0 + } +} \ No newline at end of file diff --git a/ai-memory/docs/perf-final-2026-03-05/results/stress.json b/ai-memory/docs/perf-final-2026-03-05/results/stress.json index f19eb4e1..b132f65a 100644 --- a/ai-memory/docs/perf-final-2026-03-05/results/stress.json +++ b/ai-memory/docs/perf-final-2026-03-05/results/stress.json @@ -1,61 +1,76 @@ { - "timestamp": "2026-03-05T08:01:45.447Z", + "timestamp": "2026-03-05T10:14:08.480Z", "scenario": "stress-test", - "durationMs": 69030, + "durationMs": 68941, "baseline": { - "avgTickMs": 0.28009925822367465, - "maxTickMs": 2.6815829999995913, - "p95TickMs": 0.509387966666903, - "p99TickMs": 1.36716114999878, + "avgTickMs": 0.25662994207978596, + "maxTickMs": 2.328760999998849, + "p95TickMs": 0.43224216666612847, + "p99TickMs": 1.2698941333335219, "ticksOverBudgetPct": 0, - "avgMemoryMb": 47.33492266337077, + "avgMemoryMb": 46.99844512939453, "operations": { "entities_tick": { - "avgMs": 0.09836481498719789, - "p95Ms": 0.17189514999993966 + "avgMs": 0.08646684851703983, + "p95Ms": 0.1446740333327701 }, "physics_step": { - "avgMs": 0.08848512477855072, - "p95Ms": 0.13091213333324656 + "avgMs": 0.08340307568625353, + "p95Ms": 0.12420135000017278 }, "physics_cleanup": { - "avgMs": 0.0024844723019437636, - "p95Ms": 0.0038924333331124216 + "avgMs": 0.00210539873287511, + "p95Ms": 0.0033580500001638334 }, "simulation_step": { - "avgMs": 0.0939048234995409, - "p95Ms": 0.1399285166665019 + "avgMs": 0.08810355751048535, + "p95Ms": 0.13298310000024383 }, "entities_emit_updates": { - "avgMs": 0.06352046163705007, - "p95Ms": 0.10200356666649289 + "avgMs": 0.05982602447784044, + "p95Ms": 0.09787540000033915 }, "send_all_packets": { - "avgMs": 0.0033960986983894987, - "p95Ms": 0.004926683333330099 + "avgMs": 0.0026767473524755537, + "p95Ms": 0.0041315499996623355 }, "network_synchronize_cleanup": { - "avgMs": 0.004555222046177986, - "p95Ms": 0.0062584500012235365 + "avgMs": 0.004177543891797372, + "p95Ms": 0.005747166666393847 }, "network_synchronize": { - "avgMs": 0.030553736266935718, - "p95Ms": 0.04717741666654547 + "avgMs": 0.02764730996719078, + "p95Ms": 0.04289294999938041 }, "world_tick": { - "avgMs": 0.2782939949050557, - "p95Ms": 0.4805952166670068 + "avgMs": 0.2544640216211446, + "p95Ms": 0.4325516666674048 }, "ticker_tick": { - "avgMs": 0.313649066318864, - "p95Ms": 0.5370763499999157 + "avgMs": 0.28816852412366506, + "p95Ms": 0.4896158333333915 } + }, + "network": { + "totalBytesSent": 0, + "totalBytesReceived": 0, + "maxConnectedPlayers": 0, + "avgBytesSentPerSecond": 0, + "maxBytesSentPerSecond": 0, + "avgBytesReceivedPerSecond": 0, + "maxBytesReceivedPerSecond": 0, + "avgPacketsSentPerSecond": 0, + "maxPacketsSentPerSecond": 0, + "avgPacketsReceivedPerSecond": 0, + "maxPacketsReceivedPerSecond": 0, + "avgSerializationMs": 0, + "compressionCountTotal": 0 } }, "phases": [ { "name": "spawn-entities", - "durationMs": 174, + "durationMs": 180, "collected": false }, { @@ -65,7 +80,7 @@ }, { "name": "measure", - "durationMs": 58912, + "durationMs": 58086, "collected": true } ], From 00da22b7c08a28171b03a29fc53363538b00a3f7 Mon Sep 17 00:00:00 2001 From: web3dev1337 <160291380+web3dev1337@users.noreply.github.com> Date: Thu, 5 Mar 2026 23:00:40 +1100 Subject: [PATCH 12/40] feat: add block-count perf benchmarks --- CODEBASE_DOCUMENTATION.md | 1 + ai-memory/docs/perf-final-2026-03-05/FINAL.md | 64 ++++++- .../results/blocks-10k-dense.json | 101 +++++++++++ .../results/blocks-10m-dense.json | 101 +++++++++++ .../results/blocks-1m-dense.json | 101 +++++++++++ .../results/blocks-1m-multi-world.json | 101 +++++++++++ .../results/blocks-500k-dense.json | 101 +++++++++++ packages/perf-tools/src/cli.ts | 4 +- .../src/presets/blocks-10k-dense.yaml | 26 +++ .../src/presets/blocks-10m-dense.yaml | 28 +++ .../src/presets/blocks-1m-dense.yaml | 28 +++ .../src/presets/blocks-1m-multi-world.yaml | 66 +++++++ .../src/presets/blocks-500k-dense.yaml | 28 +++ .../perf-tools/src/runners/BenchmarkRunner.ts | 12 ++ .../perf-tools/src/runners/ScenarioLoader.ts | 6 + .../perf-tools/src/runners/ServerApiClient.ts | 1 + server/src/networking/NetworkSynchronizer.ts | 19 ++ server/src/perf/PerfHarness.ts | 44 +++++ server/src/perf/PerfWorldGenerator.ts | 163 ++++++++++++++++++ 19 files changed, 992 insertions(+), 3 deletions(-) create mode 100644 ai-memory/docs/perf-final-2026-03-05/results/blocks-10k-dense.json create mode 100644 ai-memory/docs/perf-final-2026-03-05/results/blocks-10m-dense.json create mode 100644 ai-memory/docs/perf-final-2026-03-05/results/blocks-1m-dense.json create mode 100644 ai-memory/docs/perf-final-2026-03-05/results/blocks-1m-multi-world.json create mode 100644 ai-memory/docs/perf-final-2026-03-05/results/blocks-500k-dense.json create mode 100644 packages/perf-tools/src/presets/blocks-10k-dense.yaml create mode 100644 packages/perf-tools/src/presets/blocks-10m-dense.yaml create mode 100644 packages/perf-tools/src/presets/blocks-1m-dense.yaml create mode 100644 packages/perf-tools/src/presets/blocks-1m-multi-world.yaml create mode 100644 packages/perf-tools/src/presets/blocks-500k-dense.yaml create mode 100644 server/src/perf/PerfWorldGenerator.ts diff --git a/CODEBASE_DOCUMENTATION.md b/CODEBASE_DOCUMENTATION.md index 8afcf9df..331c7218 100644 --- a/CODEBASE_DOCUMENTATION.md +++ b/CODEBASE_DOCUMENTATION.md @@ -151,6 +151,7 @@ models/ModelRegistry.ts - GLTF model preloading + bounding box extraction persistence/PersistenceManager.ts - Player/global KV storage via @hytopia.com/save-states perf/PerfHarness.ts - Env-gated /__perf endpoints for perf-tools perf/PerfBlockChurner.ts - Tick-driven block churn stressor (perf-tools) +perf/PerfWorldGenerator.ts - Synthetic block-world generator for perf-tools scenarios perf/perf-harness.ts - Benchmark server entry (build:perf-harness → src/perf-harness.mjs) server/src/assets/AssetsLibrary.ts - Asset path resolution ``` diff --git a/ai-memory/docs/perf-final-2026-03-05/FINAL.md b/ai-memory/docs/perf-final-2026-03-05/FINAL.md index e638fa44..8339d071 100644 --- a/ai-memory/docs/perf-final-2026-03-05/FINAL.md +++ b/ai-memory/docs/perf-final-2026-03-05/FINAL.md @@ -73,6 +73,11 @@ This is a synthesis of: - Client stutters on receipt (sync gunzip + unpack + per-chunk registry + worker messages + mesh builds). - Networking bursts can increase packet loss / HOL blocking (and increases likelihood of gzip work). +**Measured (perf-tools, this branch):** + +- `join-storm` (`boilerplate.json` + 100 joins): `p99TickMs=77.47`, `maxTickMs=112.95`, `serialize_packets avg=14.84ms` +- `blocks-10m-dense` (synthetic ~2442 chunks + 1 join): `maxTickMs=86.36`, `serialize_packets avg=33.13ms` (highly gzip-compressible payload) + **Fix direction:** - Implement **per-player chunk streaming**: @@ -411,7 +416,9 @@ This section reviews the “performance framework” implementation added in PR - When `HYTOPIA_PERF_TOOLS=1`, the server exposes: - `GET /__perf/snapshot` - `POST /__perf/reset` - - `POST /__perf/action` (subset: `spawn_bots`, `despawn_bots`, `load_map`, `spawn_entities`, `despawn_entities`, `start_block_churn`, `stop_block_churn`, `create_worlds`, `set_default_world`, `clear_world`, `reset`) + - `POST /__perf/action` (subset: `spawn_bots`, `despawn_bots`, `load_map`, `generate_blocks`, `spawn_entities`, `despawn_entities`, `start_block_churn`, `stop_block_churn`, `create_worlds`, `set_default_world`, `clear_world`, `reset`) +- **Preload/setup work no longer serializes chunk deltas when no players are present** + - `NetworkSynchronizer` skips queueing expensive block/chunk/block-type sync work until at least one player has joined the world (join burst is still unbounded). - **A dedicated perf harness server entry exists** - `server/src/perf/perf-harness.ts` → built via `server` script `build:perf-harness` to `server/src/perf-harness.mjs`. - **`packages/perf-tools/` runs end-to-end for server benchmarks** @@ -462,6 +469,11 @@ Results JSON (generated by `packages/perf-tools`): - `ai-memory/docs/perf-final-2026-03-05/results/block-churn.json` - `ai-memory/docs/perf-final-2026-03-05/results/entity-density.json` - `ai-memory/docs/perf-final-2026-03-05/results/multi-world.json` +- `ai-memory/docs/perf-final-2026-03-05/results/blocks-10k-dense.json` +- `ai-memory/docs/perf-final-2026-03-05/results/blocks-500k-dense.json` +- `ai-memory/docs/perf-final-2026-03-05/results/blocks-1m-dense.json` +- `ai-memory/docs/perf-final-2026-03-05/results/blocks-10m-dense.json` +- `ai-memory/docs/perf-final-2026-03-05/results/blocks-1m-multi-world.json` #### Idle preset (`idle-baseline`) @@ -555,6 +567,56 @@ Results JSON (generated by `packages/perf-tools`): - Baseline: - `avgTickMs=0.03`, `p99TickMs=0.09`, `maxTickMs=1.25` +#### Blocks-10k-dense preset (`blocks-10k-dense`) + +- World: synthetic dense fill, `blockCount=10_000` (~3 chunks) +- Clients: 50 WebSocket connections +- Measure: 30s +- Baseline: + - `avgTickMs=0.08`, `p99TickMs=1.07`, `maxTickMs=3.52`, `avgHeap=42.1MB` + - `bytesSentTotal=0.7MB`, `compressTotal=0` + +#### Blocks-500k-dense preset (`blocks-500k-dense`) + +- World: synthetic dense fill, `blockCount=500_000` (~123 chunks) +- Clients: 20 WebSocket connections +- Measure: 60s +- Baseline: + - `avgTickMs=0.14`, `p99TickMs=2.43`, `maxTickMs=17.66`, `avgHeap=48.4MB` + - `serialize_packets avg=1.20ms`, `compressTotal=20` + +#### Blocks-1m-dense preset (`blocks-1m-dense`) + +- World: synthetic dense fill, `blockCount=1_000_000` (~245 chunks) +- Clients: 10 WebSocket connections +- Measure: 60s +- Baseline: + - `avgTickMs=0.13`, `p99TickMs=2.04`, `maxTickMs=24.70`, `avgHeap=54.6MB` + - `serialize_packets avg=2.68ms`, `compressTotal=10` + +#### Blocks-10m-dense preset (`blocks-10m-dense`) + +- World: synthetic dense fill, `blockCount=10_000_000` (~2442 chunks) +- Clients: 1 WebSocket connection +- Measure: 60s +- Baseline: + - `avgTickMs=0.15`, `p99TickMs=1.52`, `maxTickMs=86.36`, `avgHeap=55.6MB` + - `serialize_packets avg=33.13ms` (`p95=65.63ms`), `compressTotal=1` + +#### Blocks-1m-multi-world preset (`blocks-1m-multi-world`) + +- Worlds: 4 worlds × `blockCount=1_000_000` each (~245 chunks per world) +- Clients: connect 10 per world in 4 bursts (40 total) +- Measure: 90s +- Baseline: + - `avgTickMs=0.04`, `p99TickMs=0.06`, `maxTickMs=28.31`, `avgHeap=39.9MB` + - `serialize_packets avg=2.15ms`, `compressTotal=40` + +**Notes on synthetic block-count tests** + +- These presets fill chunks with a single repeated block ID, so gzip makes bandwidth look unrealistically good. The bottleneck still shows up as `serialize_packets` time and max tick spikes. +- For a more realistic multi-block map join burst, compare `join-storm` (`boilerplate.json`), which sent `37.0MB` total for 100 joins and hit `p99TickMs=77.47`. + ### Client build check - `client` production build passed (`tsc` + `vite build`) after removing an unused local in `client/src/network/NetworkManager.ts`. diff --git a/ai-memory/docs/perf-final-2026-03-05/results/blocks-10k-dense.json b/ai-memory/docs/perf-final-2026-03-05/results/blocks-10k-dense.json new file mode 100644 index 00000000..cef71ad6 --- /dev/null +++ b/ai-memory/docs/perf-final-2026-03-05/results/blocks-10k-dense.json @@ -0,0 +1,101 @@ +{ + "timestamp": "2026-03-05T11:47:34.121Z", + "scenario": "blocks-10k-dense", + "durationMs": 40964, + "baseline": { + "avgTickMs": 0.0768966646045384, + "maxTickMs": 3.521280000000843, + "p95TickMs": 0.2584854000000026, + "p99TickMs": 1.070374300000185, + "ticksOverBudgetPct": 0, + "avgMemoryMb": 42.14106089274089, + "operations": { + "entities_tick": { + "avgMs": 0.0008413928855368853, + "p95Ms": 0.0011327000000164844 + }, + "physics_step": { + "avgMs": 0.016747402696686193, + "p95Ms": 0.02549669999971229 + }, + "physics_cleanup": { + "avgMs": 0.0019017873539182513, + "p95Ms": 0.0028274666673799706 + }, + "simulation_step": { + "avgMs": 0.02085331523004515, + "p95Ms": 0.03292626666655754 + }, + "entities_emit_updates": { + "avgMs": 0.0003370778280886417, + "p95Ms": 0.0005439999994753937 + }, + "send_all_packets": { + "avgMs": 0.07660242520250063, + "p95Ms": 0.42700786666658436 + }, + "network_synchronize_cleanup": { + "avgMs": 0.0027183606324976367, + "p95Ms": 0.004674099999950461 + }, + "network_synchronize": { + "avgMs": 0.09494421419603762, + "p95Ms": 0.4786903333333006 + }, + "world_tick": { + "avgMs": 0.07466210413063806, + "p95Ms": 0.25193186666753414 + }, + "ticker_tick": { + "avgMs": 0.10742549861440716, + "p95Ms": 0.293796333333133 + }, + "serialize_packets": { + "avgMs": 0.05803172000001357, + "p95Ms": 0.1558759999988979 + }, + "send_packets": { + "avgMs": 0.03413209769328384, + "p95Ms": 0.14359399999921152 + } + }, + "network": { + "totalBytesSent": 703270, + "totalBytesReceived": 0, + "maxConnectedPlayers": 50, + "avgBytesSentPerSecond": 8365.059304885883, + "maxBytesSentPerSecond": 250951.7791465765, + "avgBytesReceivedPerSecond": 0, + "maxBytesReceivedPerSecond": 0, + "avgPacketsSentPerSecond": 11.727997034734143, + "maxPacketsSentPerSecond": 351.8399110420243, + "avgPacketsReceivedPerSecond": 0, + "maxPacketsReceivedPerSecond": 0, + "avgSerializationMs": 0.05609737600015065, + "compressionCountTotal": 0 + } + }, + "phases": [ + { + "name": "setup-world", + "durationMs": 147, + "collected": false + }, + { + "name": "stabilize", + "durationMs": 3645, + "collected": false + }, + { + "name": "join-and-measure", + "durationMs": 30721, + "collected": true + } + ], + "metrics": { + "tickReportCount": 0, + "spikeCount": 0, + "serverSnapshotCount": 30, + "clientSnapshotCount": 0 + } +} \ No newline at end of file diff --git a/ai-memory/docs/perf-final-2026-03-05/results/blocks-10m-dense.json b/ai-memory/docs/perf-final-2026-03-05/results/blocks-10m-dense.json new file mode 100644 index 00000000..ae093e01 --- /dev/null +++ b/ai-memory/docs/perf-final-2026-03-05/results/blocks-10m-dense.json @@ -0,0 +1,101 @@ +{ + "timestamp": "2026-03-05T11:53:33.437Z", + "scenario": "blocks-10m-dense", + "durationMs": 78455, + "baseline": { + "avgTickMs": 0.14864898569747675, + "maxTickMs": 86.35801799999899, + "p95TickMs": 0.055144733333327166, + "p99TickMs": 1.5178473999989364, + "ticksOverBudgetPct": 0.05465775138010822, + "avgMemoryMb": 55.64536577860515, + "operations": { + "entities_tick": { + "avgMs": 0.0008150408151551575, + "p95Ms": 0.0011980499996449604 + }, + "physics_step": { + "avgMs": 0.016692221987835716, + "p95Ms": 0.026579683333693538 + }, + "physics_cleanup": { + "avgMs": 0.001609191176044596, + "p95Ms": 0.002377500000936076 + }, + "simulation_step": { + "avgMs": 0.0203698639435968, + "p95Ms": 0.033004716666679694 + }, + "entities_emit_updates": { + "avgMs": 0.0003852133996061862, + "p95Ms": 0.0006210500000330891 + }, + "world_tick": { + "avgMs": 0.14744808298771073, + "p95Ms": 0.051459149999755024 + }, + "ticker_tick": { + "avgMs": 0.17897410487854548, + "p95Ms": 0.09315956666638764 + }, + "send_all_packets": { + "avgMs": 0.19983364054329575, + "p95Ms": 0.005290416667169969 + }, + "network_synchronize_cleanup": { + "avgMs": 0.0021870705358342005, + "p95Ms": 0.0028079666664173903 + }, + "network_synchronize": { + "avgMs": 0.24119330498536626, + "p95Ms": 0.013638766666675413 + }, + "serialize_packets": { + "avgMs": 33.12660199999846, + "p95Ms": 65.62818299999708 + }, + "send_packets": { + "avgMs": 36.930843500000265, + "p95Ms": 72.85814300000129 + } + }, + "network": { + "totalBytesSent": 57477, + "totalBytesReceived": 0, + "maxConnectedPlayers": 1, + "avgBytesSentPerSecond": 890.4162553454629, + "maxBytesSentPerSecond": 53424.975320727775, + "avgBytesReceivedPerSecond": 0, + "maxBytesReceivedPerSecond": 0, + "avgPacketsSentPerSecond": 0.09295018063003946, + "maxPacketsSentPerSecond": 5.5770108378023675, + "avgPacketsReceivedPerSecond": 0, + "maxPacketsReceivedPerSecond": 0, + "avgSerializationMs": 33.0944240000008, + "compressionCountTotal": 1 + } + }, + "phases": [ + { + "name": "setup-world", + "durationMs": 151, + "collected": false + }, + { + "name": "stabilize", + "durationMs": 15012, + "collected": false + }, + { + "name": "join-and-measure", + "durationMs": 57607, + "collected": true + } + ], + "metrics": { + "tickReportCount": 0, + "spikeCount": 0, + "serverSnapshotCount": 60, + "clientSnapshotCount": 0 + } +} \ No newline at end of file diff --git a/ai-memory/docs/perf-final-2026-03-05/results/blocks-1m-dense.json b/ai-memory/docs/perf-final-2026-03-05/results/blocks-1m-dense.json new file mode 100644 index 00000000..91ec3279 --- /dev/null +++ b/ai-memory/docs/perf-final-2026-03-05/results/blocks-1m-dense.json @@ -0,0 +1,101 @@ +{ + "timestamp": "2026-03-05T11:52:07.868Z", + "scenario": "blocks-1m-dense", + "durationMs": 73802, + "baseline": { + "avgTickMs": 0.13430407329589647, + "maxTickMs": 24.70325799999955, + "p95TickMs": 0.2974614166668895, + "p99TickMs": 2.0355113833333536, + "ticksOverBudgetPct": 0.10762428362586213, + "avgMemoryMb": 54.630763880411784, + "operations": { + "entities_tick": { + "avgMs": 0.0006639741925769103, + "p95Ms": 0.0011167333337046633 + }, + "physics_step": { + "avgMs": 0.017991068591225012, + "p95Ms": 0.02801933333330453 + }, + "physics_cleanup": { + "avgMs": 0.0017506892953392905, + "p95Ms": 0.002781599998858534 + }, + "simulation_step": { + "avgMs": 0.021922096450537373, + "p95Ms": 0.03478115000013228 + }, + "entities_emit_updates": { + "avgMs": 0.00032803052653561355, + "p95Ms": 0.0004783166663097897 + }, + "send_all_packets": { + "avgMs": 0.17240404918693603, + "p95Ms": 0.4584230833332488 + }, + "network_synchronize_cleanup": { + "avgMs": 0.002145039332288079, + "p95Ms": 0.003171766666703964 + }, + "network_synchronize": { + "avgMs": 0.20826236343561627, + "p95Ms": 0.514821783333961 + }, + "world_tick": { + "avgMs": 0.1326782217833507, + "p95Ms": 0.2922409500009053 + }, + "ticker_tick": { + "avgMs": 0.16740631090351493, + "p95Ms": 0.3400438333335842 + }, + "serialize_packets": { + "avgMs": 2.6806935833329444, + "p95Ms": 8.010051000001113 + }, + "send_packets": { + "avgMs": 1.8336511000000408, + "p95Ms": 8.723202000001038 + } + }, + "network": { + "totalBytesSent": 63923, + "totalBytesReceived": 0, + "maxConnectedPlayers": 10, + "avgBytesSentPerSecond": 785.8555772119179, + "maxBytesSentPerSecond": 47151.33463271507, + "avgBytesReceivedPerSecond": 0, + "maxBytesReceivedPerSecond": 0, + "avgPacketsSentPerSecond": 1.0941468074380223, + "maxPacketsSentPerSecond": 65.64880844628134, + "avgPacketsReceivedPerSecond": 0, + "maxPacketsReceivedPerSecond": 0, + "avgSerializationMs": 2.6758092916665337, + "compressionCountTotal": 10 + } + }, + "phases": [ + { + "name": "setup-world", + "durationMs": 152, + "collected": false + }, + { + "name": "stabilize", + "durationMs": 10007, + "collected": false + }, + { + "name": "join-and-measure", + "durationMs": 57947, + "collected": true + } + ], + "metrics": { + "tickReportCount": 0, + "spikeCount": 0, + "serverSnapshotCount": 60, + "clientSnapshotCount": 0 + } +} \ No newline at end of file diff --git a/ai-memory/docs/perf-final-2026-03-05/results/blocks-1m-multi-world.json b/ai-memory/docs/perf-final-2026-03-05/results/blocks-1m-multi-world.json new file mode 100644 index 00000000..7dcda2fb --- /dev/null +++ b/ai-memory/docs/perf-final-2026-03-05/results/blocks-1m-multi-world.json @@ -0,0 +1,101 @@ +{ + "timestamp": "2026-03-05T11:55:42.705Z", + "scenario": "blocks-1m-multi-world", + "durationMs": 116960, + "baseline": { + "avgTickMs": 0.03945141325865762, + "maxTickMs": 28.31015599999955, + "p95TickMs": 0.03559149999980744, + "p99TickMs": 0.05915101111196337, + "ticksOverBudgetPct": 0.02001912939030629, + "avgMemoryMb": 39.942650519477, + "operations": { + "entities_tick": { + "avgMs": 0.0004684072115782438, + "p95Ms": 0.0006511222216229524 + }, + "physics_step": { + "avgMs": 0.009574272374033969, + "p95Ms": 0.01620499999985946 + }, + "physics_cleanup": { + "avgMs": 0.0009659701342487121, + "p95Ms": 0.0014869777783234085 + }, + "simulation_step": { + "avgMs": 0.011896159795362076, + "p95Ms": 0.019827333332634426 + }, + "entities_emit_updates": { + "avgMs": 0.00020322640959405248, + "p95Ms": 0.00029830000037489097 + }, + "send_all_packets": { + "avgMs": 0.04838580351200127, + "p95Ms": 0.0037267777780167913 + }, + "network_synchronize_cleanup": { + "avgMs": 0.0014979463776519976, + "p95Ms": 0.002417411110582179 + }, + "network_synchronize": { + "avgMs": 0.059486937447321045, + "p95Ms": 0.009280888888760172 + }, + "world_tick": { + "avgMs": 0.045497917225274076, + "p95Ms": 0.032147288889609625 + }, + "ticker_tick": { + "avgMs": 0.063352809372313, + "p95Ms": 0.06255761111145451 + }, + "serialize_packets": { + "avgMs": 2.1547827037037237, + "p95Ms": 5.93796199999997 + }, + "send_packets": { + "avgMs": 1.2724785467290045, + "p95Ms": 6.439845000000787 + } + }, + "network": { + "totalBytesSent": 261503, + "totalBytesReceived": 0, + "maxConnectedPlayers": 40, + "avgBytesSentPerSecond": 163.75788743479205, + "maxBytesSentPerSecond": 14738.209869131286, + "avgBytesReceivedPerSecond": 0, + "maxBytesReceivedPerSecond": 0, + "avgPacketsSentPerSecond": 0.2586280368124615, + "maxPacketsSentPerSecond": 23.276523313121537, + "avgPacketsReceivedPerSecond": 0, + "maxPacketsReceivedPerSecond": 0, + "avgSerializationMs": 2.152255296296462, + "compressionCountTotal": 40 + } + }, + "phases": [ + { + "name": "setup-worlds", + "durationMs": 152, + "collected": false + }, + { + "name": "stabilize", + "durationMs": 10007, + "collected": false + }, + { + "name": "joins-and-measure", + "durationMs": 102500, + "collected": true + } + ], + "metrics": { + "tickReportCount": 0, + "spikeCount": 0, + "serverSnapshotCount": 90, + "clientSnapshotCount": 0 + } +} \ No newline at end of file diff --git a/ai-memory/docs/perf-final-2026-03-05/results/blocks-500k-dense.json b/ai-memory/docs/perf-final-2026-03-05/results/blocks-500k-dense.json new file mode 100644 index 00000000..5f86d997 --- /dev/null +++ b/ai-memory/docs/perf-final-2026-03-05/results/blocks-500k-dense.json @@ -0,0 +1,101 @@ +{ + "timestamp": "2026-03-05T11:48:56.811Z", + "scenario": "blocks-500k-dense", + "durationMs": 74184, + "baseline": { + "avgTickMs": 0.14140416256201357, + "maxTickMs": 17.655299999998533, + "p95TickMs": 0.37285456666710765, + "p99TickMs": 2.4301144666666006, + "ticksOverBudgetPct": 0.053255225669018774, + "avgMemoryMb": 48.43299166361491, + "operations": { + "entities_tick": { + "avgMs": 0.0007039452957370873, + "p95Ms": 0.0010677333336388984 + }, + "physics_step": { + "avgMs": 0.01850606042002969, + "p95Ms": 0.028902466667204862 + }, + "physics_cleanup": { + "avgMs": 0.0017545602051715224, + "p95Ms": 0.0029788333332362526 + }, + "simulation_step": { + "avgMs": 0.022470014284345127, + "p95Ms": 0.03584373333363449 + }, + "entities_emit_updates": { + "avgMs": 0.0003423013221541184, + "p95Ms": 0.0005583499998768578 + }, + "world_tick": { + "avgMs": 0.13978336091750282, + "p95Ms": 0.3656250500001382 + }, + "ticker_tick": { + "avgMs": 0.17294758232436494, + "p95Ms": 0.4071851166677637 + }, + "send_all_packets": { + "avgMs": 0.1719061867245776, + "p95Ms": 0.6893992500004666 + }, + "network_synchronize_cleanup": { + "avgMs": 0.002408139111171516, + "p95Ms": 0.003817999999955646 + }, + "network_synchronize": { + "avgMs": 0.22191345575921226, + "p95Ms": 0.772945300000265 + }, + "serialize_packets": { + "avgMs": 1.198182509803827, + "p95Ms": 3.3448520000019926 + }, + "send_packets": { + "avgMs": 0.5832188880595591, + "p95Ms": 3.2410930000005465 + } + }, + "network": { + "totalBytesSent": 74510, + "totalBytesReceived": 0, + "maxConnectedPlayers": 20, + "avgBytesSentPerSecond": 733.0014737876572, + "maxBytesSentPerSecond": 43980.088427259434, + "avgBytesReceivedPerSecond": 0, + "maxBytesReceivedPerSecond": 0, + "avgPacketsSentPerSecond": 2.292166734566154, + "maxPacketsSentPerSecond": 137.53000407396925, + "avgPacketsReceivedPerSecond": 0, + "maxPacketsReceivedPerSecond": 0, + "avgSerializationMs": 1.1953125294117746, + "compressionCountTotal": 20 + } + }, + "phases": [ + { + "name": "setup-world", + "durationMs": 148, + "collected": false + }, + { + "name": "stabilize", + "durationMs": 10005, + "collected": false + }, + { + "name": "join-and-measure", + "durationMs": 58223, + "collected": true + } + ], + "metrics": { + "tickReportCount": 0, + "spikeCount": 0, + "serverSnapshotCount": 60, + "clientSnapshotCount": 0 + } +} \ No newline at end of file diff --git a/packages/perf-tools/src/cli.ts b/packages/perf-tools/src/cli.ts index a04e9d42..2828d833 100644 --- a/packages/perf-tools/src/cli.ts +++ b/packages/perf-tools/src/cli.ts @@ -23,7 +23,7 @@ program .command('run') .description('Run a benchmark scenario') .argument('[scenario]', 'Path to scenario YAML/JSON file') - .option('--preset ', 'Use a built-in preset (idle, stress, large-world, many-players, combined, join-storm, block-churn, entity-density, multi-world)') + .option('--preset ', 'Use a built-in preset (idle, stress, large-world, many-players, combined, join-storm, block-churn, entity-density, multi-world, blocks-10k-dense, blocks-500k-dense, blocks-1m-dense, blocks-10m-dense, blocks-1m-multi-world)') .option('--output ', 'Write results to JSON file') .option('--full-data', 'Include raw metric data in output') .option('--baseline ', 'Compare results against a baseline JSON') @@ -39,7 +39,7 @@ program const presetPath = path.join(__dirname, 'presets', `${options.preset}.yaml`); if (!fs.existsSync(presetPath)) { - console.error(`Unknown preset: ${options.preset}. Available: idle, stress, large-world, many-players, combined, join-storm, block-churn, entity-density, multi-world`); + console.error('Unknown preset: %s. Available: idle, stress, large-world, many-players, combined, join-storm, block-churn, entity-density, multi-world, blocks-10k-dense, blocks-500k-dense, blocks-1m-dense, blocks-10m-dense, blocks-1m-multi-world', options.preset); process.exit(1); } diff --git a/packages/perf-tools/src/presets/blocks-10k-dense.yaml b/packages/perf-tools/src/presets/blocks-10k-dense.yaml new file mode 100644 index 00000000..76991998 --- /dev/null +++ b/packages/perf-tools/src/presets/blocks-10k-dense.yaml @@ -0,0 +1,26 @@ +name: "blocks-10k-dense" +description: "Generate ~10k blocks (dense fill) and connect clients to measure join chunk sync overhead" +warmupMs: 5000 +phases: + - name: setup-world + actions: + - type: clear_world + - type: generate_blocks + blockCount: 10000 + blockTypeId: 1 + layout: dense + - name: stabilize + duration: 5s + - name: join-and-measure + collect: true + actions: + - type: connect_clients + count: 50 + duration: 30s +thresholds: + tick_duration_ms: + avg: 14 + p99: 30 + memory_mb: + max: 2000 + diff --git a/packages/perf-tools/src/presets/blocks-10m-dense.yaml b/packages/perf-tools/src/presets/blocks-10m-dense.yaml new file mode 100644 index 00000000..edc918f1 --- /dev/null +++ b/packages/perf-tools/src/presets/blocks-10m-dense.yaml @@ -0,0 +1,28 @@ +name: "blocks-10m-dense" +description: "Generate ~10M blocks (dense fill) and connect a client to measure join chunk sync overhead" +warmupMs: 5000 +phases: + - name: setup-world + actions: + - type: clear_world + - type: generate_blocks + blockCount: 10000000 + blockTypeId: 1 + layout: dense + - name: stabilize + duration: 15s + - name: join-and-measure + collect: true + actions: + - type: connect_clients + count: 1 + duration: 60s +thresholds: + tick_duration_ms: + avg: 14 + p99: 30 + network: + maxBytesPerSecond: 80000000 + memory_mb: + max: 4000 + diff --git a/packages/perf-tools/src/presets/blocks-1m-dense.yaml b/packages/perf-tools/src/presets/blocks-1m-dense.yaml new file mode 100644 index 00000000..5d3234c8 --- /dev/null +++ b/packages/perf-tools/src/presets/blocks-1m-dense.yaml @@ -0,0 +1,28 @@ +name: "blocks-1m-dense" +description: "Generate ~1M blocks (dense fill) and connect clients to measure join chunk sync overhead" +warmupMs: 5000 +phases: + - name: setup-world + actions: + - type: clear_world + - type: generate_blocks + blockCount: 1000000 + blockTypeId: 1 + layout: dense + - name: stabilize + duration: 10s + - name: join-and-measure + collect: true + actions: + - type: connect_clients + count: 10 + duration: 60s +thresholds: + tick_duration_ms: + avg: 14 + p99: 30 + network: + maxBytesPerSecond: 80000000 + memory_mb: + max: 3000 + diff --git a/packages/perf-tools/src/presets/blocks-1m-multi-world.yaml b/packages/perf-tools/src/presets/blocks-1m-multi-world.yaml new file mode 100644 index 00000000..03bf6c77 --- /dev/null +++ b/packages/perf-tools/src/presets/blocks-1m-multi-world.yaml @@ -0,0 +1,66 @@ +name: "blocks-1m-multi-world" +description: "Create 4 worlds with ~1M blocks each, then connect clients in bursts per world" +warmupMs: 5000 +phases: + - name: setup-worlds + actions: + - type: clear_world + - type: create_worlds + count: 3 + - type: generate_blocks + worldId: 1 + blockCount: 1000000 + blockTypeId: 1 + layout: dense + - type: generate_blocks + worldId: 2 + blockCount: 1000000 + blockTypeId: 1 + layout: dense + - type: generate_blocks + worldId: 3 + blockCount: 1000000 + blockTypeId: 1 + layout: dense + - type: generate_blocks + worldId: 4 + blockCount: 1000000 + blockTypeId: 1 + layout: dense + - name: stabilize + duration: 10s + - name: joins-and-measure + collect: true + actions: + - type: set_default_world + worldId: 1 + - type: connect_clients + count: 10 + - type: wait + durationMs: 5000 + - type: set_default_world + worldId: 2 + - type: connect_clients + count: 10 + - type: wait + durationMs: 5000 + - type: set_default_world + worldId: 3 + - type: connect_clients + count: 10 + - type: wait + durationMs: 5000 + - type: set_default_world + worldId: 4 + - type: connect_clients + count: 10 + duration: 90s +thresholds: + tick_duration_ms: + avg: 14 + p99: 30 + network: + maxBytesPerSecond: 80000000 + memory_mb: + max: 4000 + diff --git a/packages/perf-tools/src/presets/blocks-500k-dense.yaml b/packages/perf-tools/src/presets/blocks-500k-dense.yaml new file mode 100644 index 00000000..c16b4168 --- /dev/null +++ b/packages/perf-tools/src/presets/blocks-500k-dense.yaml @@ -0,0 +1,28 @@ +name: "blocks-500k-dense" +description: "Generate ~500k blocks (dense fill) and connect clients to measure join chunk sync overhead" +warmupMs: 5000 +phases: + - name: setup-world + actions: + - type: clear_world + - type: generate_blocks + blockCount: 500000 + blockTypeId: 1 + layout: dense + - name: stabilize + duration: 10s + - name: join-and-measure + collect: true + actions: + - type: connect_clients + count: 20 + duration: 60s +thresholds: + tick_duration_ms: + avg: 14 + p99: 30 + network: + maxBytesPerSecond: 80000000 + memory_mb: + max: 2500 + diff --git a/packages/perf-tools/src/runners/BenchmarkRunner.ts b/packages/perf-tools/src/runners/BenchmarkRunner.ts index 22093eb8..2b448921 100644 --- a/packages/perf-tools/src/runners/BenchmarkRunner.ts +++ b/packages/perf-tools/src/runners/BenchmarkRunner.ts @@ -131,6 +131,18 @@ export default class BenchmarkRunner { worldId: typeof action.worldId === 'number' ? action.worldId : undefined, }); break; + case 'generate_blocks': + await this._serverApi.action({ + type: 'generate_blocks', + blockCount: action.blockCount ?? 0, + blockTypeId: action.blockTypeId ?? 1, + worldId: typeof action.worldId === 'number' ? action.worldId : undefined, + layout: action.layout, + slabHeight: action.slabHeight, + origin: action.origin, + clear: action.clear, + }); + break; case 'spawn_entities': await this._serverApi.action({ type: 'spawn_entities', diff --git a/packages/perf-tools/src/runners/ScenarioLoader.ts b/packages/perf-tools/src/runners/ScenarioLoader.ts index 12e2ad78..bef23661 100644 --- a/packages/perf-tools/src/runners/ScenarioLoader.ts +++ b/packages/perf-tools/src/runners/ScenarioLoader.ts @@ -12,6 +12,7 @@ export interface ScenarioAction { | 'spawn_bots' | 'despawn_bots' | 'load_map' + | 'generate_blocks' | 'spawn_entities' | 'despawn_entities' | 'start_block_churn' @@ -31,6 +32,11 @@ export interface ScenarioAction { kind?: 'model' | 'block'; tag?: string; options?: Record; + blockCount?: number; + layout?: 'dense' | 'slab'; + slabHeight?: number; + origin?: ScenarioVector3; + clear?: boolean; blocksPerTick?: number; blockTypeId?: number; mode?: 'toggle' | 'place' | 'remove'; diff --git a/packages/perf-tools/src/runners/ServerApiClient.ts b/packages/perf-tools/src/runners/ServerApiClient.ts index 527b6d25..8120ae91 100644 --- a/packages/perf-tools/src/runners/ServerApiClient.ts +++ b/packages/perf-tools/src/runners/ServerApiClient.ts @@ -43,6 +43,7 @@ export type ServerAction = | { type: 'spawn_bots'; count: number; behavior?: string } | { type: 'despawn_bots'; count?: number } | { type: 'load_map'; mapPath: string; worldId?: number } + | { type: 'generate_blocks'; blockCount: number; blockTypeId: number; worldId?: number; layout?: 'dense' | 'slab'; slabHeight?: number; origin?: { x: number; y: number; z: number }; clear?: boolean } | { type: 'spawn_entities'; count: number; kind?: 'model' | 'block'; options?: Record; tag?: string } | { type: 'despawn_entities'; tag?: string } | { type: 'start_block_churn'; blocksPerTick: number; blockTypeId: number; mode?: 'toggle' | 'place' | 'remove'; min?: { x: number; y: number; z: number }; max?: { x: number; y: number; z: number } } diff --git a/server/src/networking/NetworkSynchronizer.ts b/server/src/networking/NetworkSynchronizer.ts index 0c64e071..13d786fa 100644 --- a/server/src/networking/NetworkSynchronizer.ts +++ b/server/src/networking/NetworkSynchronizer.ts @@ -91,6 +91,7 @@ export default class NetworkSynchronizer { private _loadedSceneUIs: Set = new Set(); private _spawnedChunks: Set = new Set(); private _spawnedEntities: Set = new Set(); + private _playersInWorld: Set = new Set(); private _world: World; @@ -538,6 +539,10 @@ export default class NetworkSynchronizer { }; private _onBlockTypeRegistryRegisterBlockType = (payload: EventPayloads[BlockTypeRegistryEvent.REGISTER_BLOCK_TYPE]) => { + if (this._playersInWorld.size === 0) { + return; + } + const blockTypeSync = this._createOrGetQueuedBlockTypeSync(payload.blockType); Object.assign(blockTypeSync, payload.blockType.serialize()); }; @@ -553,6 +558,10 @@ export default class NetworkSynchronizer { }; private _onChunkLatticeAddChunk = (payload: EventPayloads[ChunkLatticeEvent.ADD_CHUNK]) => { + if (this._playersInWorld.size === 0) { + return; + } + const chunkSync = this._createOrGetQueuedChunkSync(payload.chunk); Object.assign(chunkSync, payload.chunk.serialize()); chunkSync.rm = undefined; @@ -561,6 +570,10 @@ export default class NetworkSynchronizer { }; private _onChunkLatticeRemoveChunk = (payload: EventPayloads[ChunkLatticeEvent.REMOVE_CHUNK]) => { + if (this._playersInWorld.size === 0) { + return; + } + const chunkSync = this._createOrGetQueuedChunkSync(payload.chunk); const chunkKey = chunkSync.c.join(','); @@ -573,6 +586,10 @@ export default class NetworkSynchronizer { }; private _onChunkLatticeSetBlock = (payload: EventPayloads[ChunkLatticeEvent.SET_BLOCK]) => { + if (this._playersInWorld.size === 0) { + return; + } + const blockSync = this._createOrGetQueuedBlockSync(payload.globalCoordinate); blockSync.i = payload.blockTypeId; blockSync.r = payload.blockRotation?.enumIndex; @@ -1083,6 +1100,7 @@ export default class NetworkSynchronizer { private _onPlayerJoinedWorld = (payload: EventPayloads[PlayerEvent.JOINED_WORLD]) => { const { player } = payload; + this._playersInWorld.add(player); // Order doesn't matter here - synchronize() handles send order. // Use _assignUndefined to avoid overwriting properties already set by other event handlers. @@ -1149,6 +1167,7 @@ export default class NetworkSynchronizer { }; private _onPlayerLeftWorld = (payload: EventPayloads[PlayerEvent.LEFT_WORLD]) => { + this._playersInWorld.delete(payload.player); const playerSync = this._createOrGetQueuedPlayerSync(payload.player); playerSync.rm = true; }; diff --git a/server/src/perf/PerfHarness.ts b/server/src/perf/PerfHarness.ts index 2628d9a7..340d4ce2 100644 --- a/server/src/perf/PerfHarness.ts +++ b/server/src/perf/PerfHarness.ts @@ -11,6 +11,7 @@ import PerformanceMonitor from '@/metrics/PerformanceMonitor'; import PlayerManager from '@/players/PlayerManager'; import PerfBlockChurner from '@/perf/PerfBlockChurner'; import type { PerfBlockChurnMode } from '@/perf/PerfBlockChurner'; +import PerfWorldGenerator from '@/perf/PerfWorldGenerator'; import WorldManager from '@/worlds/WorldManager'; import Entity from '@/worlds/entities/Entity'; import { ColliderShape } from '@/worlds/physics/Collider'; @@ -30,6 +31,7 @@ type PerfAction = | { type: 'spawn_bots'; count: number; behavior?: string } | { type: 'despawn_bots'; count?: number } | { type: 'load_map'; mapPath: string; worldId?: number } + | { type: 'generate_blocks'; blockCount: number; blockTypeId: number; worldId?: number; layout?: 'dense' | 'slab'; slabHeight?: number; origin?: Vector3Like; clear?: boolean } | { type: 'spawn_entities'; count: number; kind?: 'model' | 'block'; options?: Record; tag?: string } | { type: 'despawn_entities'; tag?: string } | { type: 'start_block_churn'; blocksPerTick: number; blockTypeId: number; mode?: PerfBlockChurnMode; min?: Vector3Like; max?: Vector3Like } @@ -210,6 +212,26 @@ function loadMapFromAssets(mapPath: string, worldId?: number): { loaded: boolean return { loaded: true, mapPath, worldId: world.id }; } +function generateBlocks( + blockCount: number, + blockTypeId: number, + worldId: number | undefined, + layout: 'dense' | 'slab' | undefined, + slabHeight: number | undefined, + origin: Vector3Like | undefined, + clear: boolean | undefined, +) { + return PerfWorldGenerator.generateBlocks({ + worldId, + blockCount, + blockTypeId, + layout, + slabHeight, + origin, + clear, + }); +} + function spawnEntities( count: number, kind: 'model' | 'block' | undefined, @@ -567,6 +589,28 @@ export default class PerfHarness { return; } + case 'generate_blocks': { + if (typeof action.blockCount !== 'number') { + return respondJson(res, 400, { ok: false, error: '"blockCount" is required' }); + } + + if (typeof action.blockTypeId !== 'number') { + return respondJson(res, 400, { ok: false, error: '"blockTypeId" is required' }); + } + + const result = generateBlocks( + action.blockCount, + action.blockTypeId, + typeof action.worldId === 'number' ? action.worldId : undefined, + action.layout === 'dense' || action.layout === 'slab' ? action.layout : undefined, + typeof action.slabHeight === 'number' ? action.slabHeight : undefined, + parseVector3Like(action.origin), + typeof action.clear === 'boolean' ? action.clear : undefined, + ); + respondJson(res, 200, { ok: true, result }); + + return; + } case 'spawn_entities': { if (typeof action.count !== 'number') { return respondJson(res, 400, { ok: false, error: '"count" is required' }); diff --git a/server/src/perf/PerfWorldGenerator.ts b/server/src/perf/PerfWorldGenerator.ts new file mode 100644 index 00000000..95d2dbda --- /dev/null +++ b/server/src/perf/PerfWorldGenerator.ts @@ -0,0 +1,163 @@ +import { CHUNK_SIZE, CHUNK_SIZE_BITS, CHUNK_VOLUME } from '@/worlds/blocks/Chunk'; +import WorldManager from '@/worlds/WorldManager'; +import type Vector3Like from '@/shared/types/math/Vector3Like'; +import type World from '@/worlds/World'; + +export type PerfWorldLayout = 'dense' | 'slab'; + +export interface PerfGenerateBlocksOptions { + worldId?: number; + blockCount: number; + blockTypeId: number; + layout?: PerfWorldLayout; + slabHeight?: number; + origin?: Vector3Like; + clear?: boolean; +} + +export interface PerfGenerateBlocksResult { + worldId: number; + layout: PerfWorldLayout; + blockTypeId: number; + requestedBlocks: number; + placedBlocks: number; + chunkCount: number; + blocksPerChunk: number; + durationMs: number; + origin: Vector3Like; +} + +function clampInt(value: number, min: number, max: number): number { + return Math.max(min, Math.min(max, Math.floor(value))); +} + +function ensureBlockTypeRegistered(world: World, blockTypeId: number): void { + const existing = world.blockTypeRegistry.getAllBlockTypes().some(bt => bt.id === blockTypeId); + if (existing) return; + + world.blockTypeRegistry.registerGenericBlockType({ + id: blockTypeId, + name: `perf-block-${blockTypeId}`, + textureUri: 'blocks/stone.png', + }); +} + +function getWorld(worldId?: number): World { + if (typeof worldId === 'number') { + const world = WorldManager.instance.getWorld(Math.floor(worldId)); + if (world) return world; + } + + return WorldManager.instance.getDefaultWorld(); +} + +function computeGridSize(chunkCount: number): number { + return Math.max(1, Math.ceil(Math.sqrt(chunkCount))); +} + +function fillDenseChunk( + blocks: Uint8Array, + blockTypeId: number, + fillCount: number, +): void { + if (fillCount <= 0) return; + + if (fillCount >= CHUNK_VOLUME) { + blocks.fill(blockTypeId); + + return; + } + + blocks.fill(0); + blocks.fill(blockTypeId, 0, fillCount); +} + +function fillSlabChunk( + blocks: Uint8Array, + blockTypeId: number, + slabHeight: number, + fillCount: number, +): void { + blocks.fill(0); + + const perChunk = CHUNK_SIZE * slabHeight * CHUNK_SIZE; + const target = Math.max(0, Math.min(perChunk, fillCount)); + if (target === 0) return; + + let remaining = target; + + for (let y = 0; y < slabHeight && remaining > 0; y++) { + const yOffset = y << CHUNK_SIZE_BITS; + + for (let z = 0; z < CHUNK_SIZE && remaining > 0; z++) { + const start = yOffset + (z << (CHUNK_SIZE_BITS * 2)); + const run = Math.min(CHUNK_SIZE, remaining); + + blocks.fill(blockTypeId, start, start + run); + remaining -= run; + } + } +} + +export default class PerfWorldGenerator { + public static generateBlocks(options: PerfGenerateBlocksOptions): PerfGenerateBlocksResult { + const start = performance.now(); + + const requestedBlocks = clampInt(options.blockCount, 0, Number.MAX_SAFE_INTEGER); + const blockTypeId = clampInt(options.blockTypeId, 1, 255); + const layout: PerfWorldLayout = options.layout === 'slab' ? 'slab' : 'dense'; + const origin: Vector3Like = options.origin ?? { x: 0, y: 0, z: 0 }; + const clear = options.clear !== false; + + const world = getWorld(options.worldId); + + ensureBlockTypeRegistered(world, blockTypeId); + + if (clear) { + world.chunkLattice.clear(); + } + + const slabHeight = layout === 'slab' ? clampInt(options.slabHeight ?? 1, 1, CHUNK_SIZE) : CHUNK_SIZE; + const blocksPerChunk = layout === 'slab' ? CHUNK_SIZE * slabHeight * CHUNK_SIZE : CHUNK_VOLUME; + const chunkCount = requestedBlocks === 0 ? 0 : Math.ceil(requestedBlocks / blocksPerChunk); + const grid = computeGridSize(chunkCount); + + let placedBlocks = 0; + + for (let i = 0; i < chunkCount; i++) { + const remaining = requestedBlocks - placedBlocks; + const fillCount = Math.min(blocksPerChunk, remaining); + + const gx = i % grid; + const gz = Math.floor(i / grid); + + const chunk = world.chunkLattice.getOrCreateChunk({ + x: origin.x + gx * CHUNK_SIZE, + y: origin.y, + z: origin.z + gz * CHUNK_SIZE, + }); + + const blocks = chunk.blocks as Uint8Array; + + if (layout === 'slab') { + fillSlabChunk(blocks, blockTypeId, slabHeight, fillCount); + } else { + fillDenseChunk(blocks, blockTypeId, fillCount); + } + + placedBlocks += fillCount; + } + + return { + worldId: world.id, + layout, + blockTypeId, + requestedBlocks, + placedBlocks, + chunkCount, + blocksPerChunk, + durationMs: performance.now() - start, + origin, + }; + } +} From 029d0d5d2b86617de4560b9a2d8fb822a4447292 Mon Sep 17 00:00:00 2001 From: web3dev1337 <160291380+web3dev1337@users.noreply.github.com> Date: Fri, 6 Mar 2026 00:34:12 +1100 Subject: [PATCH 13/40] perf: baseline benchmark results for 6 test scenarios All benchmarks PASS on all thresholds. Results: - idle: avg=0.05ms p99=0.15ms mem=40.7MB (empty server) - stress: avg=0.26ms p99=1.34ms mem=47.0MB (100 bots: walk/chase/interact) - entity-density: avg=0.39ms p99=0.79ms mem=43.7MB (500 dynamic entities) - block-churn: avg=0.75ms p99=1.66ms mem=53.6MB (10 clients, continuous edits) - large-world: avg=0.35ms p99=0.60ms mem=43.5MB (boilerplate map + 20 bots) - blocks-500k: avg=0.16ms p99=1.60ms mem=51.6MB (500K blocks, 20 WS clients) Co-Authored-By: Claude Opus 4.6 --- perf-results/block-churn.json | 96 ++++++++++++++++++++++++++ perf-results/blocks-500k-dense.json | 101 ++++++++++++++++++++++++++++ perf-results/entity-density.json | 93 +++++++++++++++++++++++++ perf-results/idle.json | 88 ++++++++++++++++++++++++ perf-results/large-world.json | 98 +++++++++++++++++++++++++++ perf-results/stress.json | 93 +++++++++++++++++++++++++ 6 files changed, 569 insertions(+) create mode 100644 perf-results/block-churn.json create mode 100644 perf-results/blocks-500k-dense.json create mode 100644 perf-results/entity-density.json create mode 100644 perf-results/idle.json create mode 100644 perf-results/large-world.json create mode 100644 perf-results/stress.json diff --git a/perf-results/block-churn.json b/perf-results/block-churn.json new file mode 100644 index 00000000..927cc0f2 --- /dev/null +++ b/perf-results/block-churn.json @@ -0,0 +1,96 @@ +{ + "timestamp": "2026-03-05T13:33:14.607Z", + "scenario": "block-churn", + "durationMs": 63725, + "baseline": { + "avgTickMs": 0.7478451288708664, + "maxTickMs": 2.4919690000006085, + "p95TickMs": 1.2697642666665616, + "p99TickMs": 1.6568233499997405, + "ticksOverBudgetPct": 0, + "avgMemoryMb": 53.592525227864584, + "operations": { + "entities_tick": { + "avgMs": 0.0013408276736730962, + "p95Ms": 0.0021010333335349666 + }, + "physics_step": { + "avgMs": 0.5195412378673131, + "p95Ms": 0.687410099999958 + }, + "physics_cleanup": { + "avgMs": 0.004241948672423851, + "p95Ms": 0.006812216666670186 + }, + "simulation_step": { + "avgMs": 0.5280920586234846, + "p95Ms": 0.7004179999999602 + }, + "entities_emit_updates": { + "avgMs": 0.0007233812045910356, + "p95Ms": 0.0011036666669042461 + }, + "world_tick": { + "avgMs": 0.744934013290529, + "p95Ms": 1.2329469999999978 + }, + "serialize_packets": { + "avgMs": 0.05616502495925675, + "p95Ms": 0.08697479999981018 + }, + "send_packets": { + "avgMs": 0.036419154585375105, + "p95Ms": 0.14526188333349335 + }, + "send_all_packets": { + "avgMs": 0.38529490651853676, + "p95Ms": 0.6914354499996382 + }, + "network_synchronize_cleanup": { + "avgMs": 0.005455039610011175, + "p95Ms": 0.007534549999945739 + }, + "network_synchronize": { + "avgMs": 0.412380600656741, + "p95Ms": 0.7254833166664867 + }, + "ticker_tick": { + "avgMs": 1.1041424130552329, + "p95Ms": 1.7002290999999938 + } + }, + "network": { + "totalBytesSent": 32296320, + "totalBytesReceived": 0, + "maxConnectedPlayers": 10, + "avgBytesSentPerSecond": 536648.3619004155, + "maxBytesSentPerSecond": 553833.8316077758, + "avgBytesReceivedPerSecond": 0, + "maxBytesReceivedPerSecond": 0, + "avgPacketsSentPerSecond": 300.09213658368157, + "maxPacketsSentPerSecond": 309.1758247479803, + "avgPacketsReceivedPerSecond": 0, + "maxPacketsReceivedPerSecond": 0, + "avgSerializationMs": 0.053296203268412, + "compressionCountTotal": 0 + } + }, + "phases": [ + { + "name": "setup", + "durationMs": 80, + "collected": false + }, + { + "name": "churn-and-measure", + "durationMs": 59107, + "collected": true + } + ], + "metrics": { + "tickReportCount": 0, + "spikeCount": 0, + "serverSnapshotCount": 60, + "clientSnapshotCount": 0 + } +} \ No newline at end of file diff --git a/perf-results/blocks-500k-dense.json b/perf-results/blocks-500k-dense.json new file mode 100644 index 00000000..8e0efbd1 --- /dev/null +++ b/perf-results/blocks-500k-dense.json @@ -0,0 +1,101 @@ +{ + "timestamp": "2026-03-05T13:33:26.233Z", + "scenario": "blocks-500k-dense", + "durationMs": 72841, + "baseline": { + "avgTickMs": 0.1631674734917104, + "maxTickMs": 72.8982930000002, + "p95TickMs": 0.10288778333360823, + "p99TickMs": 1.5982031666683119, + "ticksOverBudgetPct": 0.05428488708743486, + "avgMemoryMb": 51.6248166402181, + "operations": { + "entities_tick": { + "avgMs": 0.0011274534396748448, + "p95Ms": 0.0017713833337135536 + }, + "physics_step": { + "avgMs": 0.034213811505710776, + "p95Ms": 0.0527195333330989 + }, + "physics_cleanup": { + "avgMs": 0.0037263208330111795, + "p95Ms": 0.005419000000044131 + }, + "simulation_step": { + "avgMs": 0.04138255903810552, + "p95Ms": 0.06454301666659983 + }, + "entities_emit_updates": { + "avgMs": 0.0006063593384779239, + "p95Ms": 0.0009713166658912087 + }, + "send_all_packets": { + "avgMs": 0.16913427650803953, + "p95Ms": 0.11162658333226622 + }, + "network_synchronize_cleanup": { + "avgMs": 0.003721956903819125, + "p95Ms": 0.004957583333119449 + }, + "network_synchronize": { + "avgMs": 0.2159241547183823, + "p95Ms": 0.14127511666714174 + }, + "world_tick": { + "avgMs": 0.16040858436057095, + "p95Ms": 0.09963781666616948 + }, + "ticker_tick": { + "avgMs": 0.20196307873702138, + "p95Ms": 0.15624794999924538 + }, + "serialize_packets": { + "avgMs": 1.365306317073015, + "p95Ms": 2.832683000000543 + }, + "send_packets": { + "avgMs": 1.1494577413793416, + "p95Ms": 3.2994650000000547 + } + }, + "network": { + "totalBytesSent": 71027, + "totalBytesReceived": 0, + "maxConnectedPlayers": 20, + "avgBytesSentPerSecond": 864.3487947089699, + "maxBytesSentPerSecond": 51860.92768253819, + "avgBytesReceivedPerSecond": 0, + "maxBytesReceivedPerSecond": 0, + "avgPacketsSentPerSecond": 1.9105799311432028, + "maxPacketsSentPerSecond": 114.63479586859216, + "avgPacketsReceivedPerSecond": 0, + "maxPacketsReceivedPerSecond": 0, + "avgSerializationMs": 1.3619142926828531, + "compressionCountTotal": 20 + } + }, + "phases": [ + { + "name": "setup-world", + "durationMs": 11, + "collected": false + }, + { + "name": "stabilize", + "durationMs": 10004, + "collected": false + }, + { + "name": "join-and-measure", + "durationMs": 58286, + "collected": true + } + ], + "metrics": { + "tickReportCount": 0, + "spikeCount": 0, + "serverSnapshotCount": 60, + "clientSnapshotCount": 0 + } +} \ No newline at end of file diff --git a/perf-results/entity-density.json b/perf-results/entity-density.json new file mode 100644 index 00000000..d15822c3 --- /dev/null +++ b/perf-results/entity-density.json @@ -0,0 +1,93 @@ +{ + "timestamp": "2026-03-05T13:32:02.575Z", + "scenario": "entity-density", + "durationMs": 73977, + "baseline": { + "avgTickMs": 0.3924285878918189, + "maxTickMs": 1.970153999995091, + "p95TickMs": 0.5939613166672036, + "p99TickMs": 0.7920050833331819, + "ticksOverBudgetPct": 0, + "avgMemoryMb": 43.67034441630046, + "operations": { + "entities_tick": { + "avgMs": 0.020244843751854383, + "p95Ms": 0.03560461666662983 + }, + "physics_step": { + "avgMs": 0.1488405374272718, + "p95Ms": 0.21693571666686087 + }, + "physics_cleanup": { + "avgMs": 0.002849293828988602, + "p95Ms": 0.003773400000560893 + }, + "simulation_step": { + "avgMs": 0.15477759287683973, + "p95Ms": 0.22579720000024583 + }, + "entities_emit_updates": { + "avgMs": 0.19779759032391983, + "p95Ms": 0.3156859999987925 + }, + "world_tick": { + "avgMs": 0.3903471358062624, + "p95Ms": 0.5898788333338719 + }, + "ticker_tick": { + "avgMs": 0.4233709562050146, + "p95Ms": 0.6320953999998286 + }, + "send_all_packets": { + "avgMs": 0.0029213276313554246, + "p95Ms": 0.0035241833331080366 + }, + "network_synchronize_cleanup": { + "avgMs": 0.004256742413836006, + "p95Ms": 0.005522016666509444 + }, + "network_synchronize": { + "avgMs": 0.020431206791100387, + "p95Ms": 0.03007198333358853 + } + }, + "network": { + "totalBytesSent": 0, + "totalBytesReceived": 0, + "maxConnectedPlayers": 0, + "avgBytesSentPerSecond": 0, + "maxBytesSentPerSecond": 0, + "avgBytesReceivedPerSecond": 0, + "maxBytesReceivedPerSecond": 0, + "avgPacketsSentPerSecond": 0, + "maxPacketsSentPerSecond": 0, + "avgPacketsReceivedPerSecond": 0, + "maxPacketsReceivedPerSecond": 0, + "avgSerializationMs": 0, + "compressionCountTotal": 0 + } + }, + "phases": [ + { + "name": "setup", + "durationMs": 53, + "collected": false + }, + { + "name": "stabilize", + "durationMs": 8835, + "collected": false + }, + { + "name": "measure", + "durationMs": 59042, + "collected": true + } + ], + "metrics": { + "tickReportCount": 0, + "spikeCount": 0, + "serverSnapshotCount": 60, + "clientSnapshotCount": 0 + } +} \ No newline at end of file diff --git a/perf-results/idle.json b/perf-results/idle.json new file mode 100644 index 00000000..49dcdf1e --- /dev/null +++ b/perf-results/idle.json @@ -0,0 +1,88 @@ +{ + "timestamp": "2026-03-05T13:31:11.934Z", + "scenario": "idle-baseline", + "durationMs": 34982, + "baseline": { + "avgTickMs": 0.04719115960534945, + "maxTickMs": 0.6909230000019306, + "p95TickMs": 0.08715813333368108, + "p99TickMs": 0.14540096666669342, + "ticksOverBudgetPct": 0, + "avgMemoryMb": 40.678313700358075, + "operations": { + "entities_tick": { + "avgMs": 0.001102290221576149, + "p95Ms": 0.0018749000001662352 + }, + "physics_step": { + "avgMs": 0.02373388734481303, + "p95Ms": 0.03907096666656192 + }, + "physics_cleanup": { + "avgMs": 0.003181443150410741, + "p95Ms": 0.005339933333289082 + }, + "simulation_step": { + "avgMs": 0.02967492297315783, + "p95Ms": 0.049755566666711576 + }, + "entities_emit_updates": { + "avgMs": 0.0004899452923573849, + "p95Ms": 0.0008204333329255557 + }, + "send_all_packets": { + "avgMs": 0.003244902913314326, + "p95Ms": 0.0050246999998307725 + }, + "network_synchronize_cleanup": { + "avgMs": 0.0025102745460807542, + "p95Ms": 0.0034839666665902767 + }, + "network_synchronize": { + "avgMs": 0.013592855373576471, + "p95Ms": 0.021785066666476876 + }, + "world_tick": { + "avgMs": 0.044920792441284045, + "p95Ms": 0.07788763333304208 + }, + "ticker_tick": { + "avgMs": 0.07728472066898213, + "p95Ms": 0.12599726666652108 + } + }, + "network": { + "totalBytesSent": 0, + "totalBytesReceived": 0, + "maxConnectedPlayers": 0, + "avgBytesSentPerSecond": 0, + "maxBytesSentPerSecond": 0, + "avgBytesReceivedPerSecond": 0, + "maxBytesReceivedPerSecond": 0, + "avgPacketsSentPerSecond": 0, + "maxPacketsSentPerSecond": 0, + "avgPacketsReceivedPerSecond": 0, + "maxPacketsReceivedPerSecond": 0, + "avgSerializationMs": 0, + "compressionCountTotal": 0 + } + }, + "phases": [ + { + "name": "warmup", + "durationMs": 5004, + "collected": false + }, + { + "name": "measure", + "durationMs": 28938, + "collected": true + } + ], + "metrics": { + "tickReportCount": 0, + "spikeCount": 0, + "serverSnapshotCount": 30, + "clientSnapshotCount": 0 + } +} \ No newline at end of file diff --git a/perf-results/large-world.json b/perf-results/large-world.json new file mode 100644 index 00000000..f9690ed9 --- /dev/null +++ b/perf-results/large-world.json @@ -0,0 +1,98 @@ +{ + "timestamp": "2026-03-05T13:33:35.440Z", + "scenario": "large-world", + "durationMs": 83198, + "baseline": { + "avgTickMs": 0.3502514052795173, + "maxTickMs": 0.9146570000011707, + "p95TickMs": 0.5091090999991744, + "p99TickMs": 0.598821266665982, + "ticksOverBudgetPct": 0, + "avgMemoryMb": 43.48845672607422, + "operations": { + "entities_tick": { + "avgMs": 0.041368946448760026, + "p95Ms": 0.06814049999908699 + }, + "physics_step": { + "avgMs": 0.24694364356640122, + "p95Ms": 0.3470961333325249 + }, + "physics_cleanup": { + "avgMs": 0.0038016709050663227, + "p95Ms": 0.005615016666342854 + }, + "simulation_step": { + "avgMs": 0.2549660947558462, + "p95Ms": 0.35964101666668286 + }, + "entities_emit_updates": { + "avgMs": 0.02854657873016627, + "p95Ms": 0.04696543333381366 + }, + "send_all_packets": { + "avgMs": 0.0028167214646624707, + "p95Ms": 0.004112333333857047 + }, + "network_synchronize_cleanup": { + "avgMs": 0.005738166117265033, + "p95Ms": 0.007642583333169265 + }, + "network_synchronize": { + "avgMs": 0.026373561114945786, + "p95Ms": 0.040851699998953946 + }, + "world_tick": { + "avgMs": 0.34763314835848064, + "p95Ms": 0.49770978333429716 + }, + "ticker_tick": { + "avgMs": 0.38605935829633026, + "p95Ms": 0.549840633333406 + } + }, + "network": { + "totalBytesSent": 0, + "totalBytesReceived": 0, + "maxConnectedPlayers": 0, + "avgBytesSentPerSecond": 0, + "maxBytesSentPerSecond": 0, + "avgBytesReceivedPerSecond": 0, + "maxBytesReceivedPerSecond": 0, + "avgPacketsSentPerSecond": 0, + "maxPacketsSentPerSecond": 0, + "avgPacketsReceivedPerSecond": 0, + "maxPacketsReceivedPerSecond": 0, + "avgSerializationMs": 0, + "compressionCountTotal": 0 + } + }, + "phases": [ + { + "name": "load-world", + "durationMs": 5579, + "collected": false + }, + { + "name": "spawn-bots", + "durationMs": 152, + "collected": false + }, + { + "name": "stabilize", + "durationMs": 10004, + "collected": false + }, + { + "name": "measure", + "durationMs": 57934, + "collected": true + } + ], + "metrics": { + "tickReportCount": 0, + "spikeCount": 0, + "serverSnapshotCount": 60, + "clientSnapshotCount": 0 + } +} \ No newline at end of file diff --git a/perf-results/stress.json b/perf-results/stress.json new file mode 100644 index 00000000..8ea32124 --- /dev/null +++ b/perf-results/stress.json @@ -0,0 +1,93 @@ +{ + "timestamp": "2026-03-05T13:31:52.170Z", + "scenario": "stress-test", + "durationMs": 68948, + "baseline": { + "avgTickMs": 0.2595655961719306, + "maxTickMs": 2.327634000001126, + "p95TickMs": 0.4197937500005234, + "p99TickMs": 1.3410269000005732, + "ticksOverBudgetPct": 0, + "avgMemoryMb": 47.012769317626955, + "operations": { + "entities_tick": { + "avgMs": 0.0797661296938092, + "p95Ms": 0.11473178333332422 + }, + "physics_step": { + "avgMs": 0.08759558901160559, + "p95Ms": 0.12878991666675574 + }, + "physics_cleanup": { + "avgMs": 0.0023959388187931724, + "p95Ms": 0.003491416666535467 + }, + "simulation_step": { + "avgMs": 0.09300718503222376, + "p95Ms": 0.13865256666616307 + }, + "entities_emit_updates": { + "avgMs": 0.06381610782518951, + "p95Ms": 0.10084328333332451 + }, + "send_all_packets": { + "avgMs": 0.0024664665928586663, + "p95Ms": 0.003504566666651954 + }, + "network_synchronize_cleanup": { + "avgMs": 0.004384639747884721, + "p95Ms": 0.0057560833345633 + }, + "network_synchronize": { + "avgMs": 0.028199720105262952, + "p95Ms": 0.0410169166661035 + }, + "world_tick": { + "avgMs": 0.25732274811424377, + "p95Ms": 0.42134193333279957 + }, + "ticker_tick": { + "avgMs": 0.29024768527190165, + "p95Ms": 0.4716848000004272 + } + }, + "network": { + "totalBytesSent": 0, + "totalBytesReceived": 0, + "maxConnectedPlayers": 0, + "avgBytesSentPerSecond": 0, + "maxBytesSentPerSecond": 0, + "avgBytesReceivedPerSecond": 0, + "maxBytesReceivedPerSecond": 0, + "avgPacketsSentPerSecond": 0, + "maxPacketsSentPerSecond": 0, + "avgPacketsReceivedPerSecond": 0, + "maxPacketsReceivedPerSecond": 0, + "avgSerializationMs": 0, + "compressionCountTotal": 0 + } + }, + "phases": [ + { + "name": "spawn-entities", + "durationMs": 44, + "collected": false + }, + { + "name": "stabilize", + "durationMs": 5002, + "collected": false + }, + { + "name": "measure", + "durationMs": 57850, + "collected": true + } + ], + "metrics": { + "tickReportCount": 0, + "spikeCount": 0, + "serverSnapshotCount": 60, + "clientSnapshotCount": 0 + } +} \ No newline at end of file From f365c3032c88f12b47c1109361f81d0f245d029f Mon Sep 17 00:00:00 2001 From: web3dev1337 <160291380+web3dev1337@users.noreply.github.com> Date: Fri, 6 Mar 2026 00:48:36 +1100 Subject: [PATCH 14/40] =?UTF-8?q?perf:=20heavy=20benchmark=20results=20?= =?UTF-8?q?=E2=80=94=20found=20join-storm=20serialization=20bottleneck?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Results from 5 heavy stress tests: - combined (100 bots + 10 clients): ALL PASS, avg 1.73ms tick - many-players (50 WS + 50 bots): ALL PASS, avg 0.96ms tick - join-storm (100 clients at once): FAIL p99 71.54ms — serialize_packets bottleneck - blocks-1m-multi-world (4x1M blocks + 40 clients): ALL PASS, avg 0.04ms tick - blocks-10m-dense (10M blocks + 1 client): ALL PASS, avg 0.16ms tick Key finding: join-storm exposes a chunk serialization bottleneck when 100+ clients connect simultaneously. serialize_packets avg=16.15ms, p95=45.91ms with a max tick spike of 1253ms. This is the only scenario that exceeded thresholds (p99 71.54ms vs 30ms limit). Co-Authored-By: Claude Opus 4.6 --- .../perf-results/blocks-10m-dense.json | 101 +++++++++++++++++ .../perf-results/blocks-1m-multi-world.json | 101 +++++++++++++++++ .../perf-tools/perf-results/combined.json | 106 ++++++++++++++++++ .../perf-tools/perf-results/join-storm.json | 101 +++++++++++++++++ .../perf-tools/perf-results/many-players.json | 101 +++++++++++++++++ 5 files changed, 510 insertions(+) create mode 100644 packages/perf-tools/perf-results/blocks-10m-dense.json create mode 100644 packages/perf-tools/perf-results/blocks-1m-multi-world.json create mode 100644 packages/perf-tools/perf-results/combined.json create mode 100644 packages/perf-tools/perf-results/join-storm.json create mode 100644 packages/perf-tools/perf-results/many-players.json diff --git a/packages/perf-tools/perf-results/blocks-10m-dense.json b/packages/perf-tools/perf-results/blocks-10m-dense.json new file mode 100644 index 00000000..a42f9a10 --- /dev/null +++ b/packages/perf-tools/perf-results/blocks-10m-dense.json @@ -0,0 +1,101 @@ +{ + "timestamp": "2026-03-05T13:47:23.411Z", + "scenario": "blocks-10m-dense", + "durationMs": 77309, + "baseline": { + "avgTickMs": 0.16117925346605497, + "maxTickMs": 87.1524989999998, + "p95TickMs": 0.06417813333331045, + "p99TickMs": 1.5407672000005428, + "ticksOverBudgetPct": 0.054851124905153266, + "avgMemoryMb": 55.660138575236004, + "operations": { + "serialize_packets": { + "avgMs": 33.65801499999907, + "p95Ms": 66.72433100000126 + }, + "send_packets": { + "avgMs": 37.353925499999605, + "p95Ms": 73.78263700000025 + }, + "entities_tick": { + "avgMs": 0.0009822978624383662, + "p95Ms": 0.0014590499999030727 + }, + "physics_step": { + "avgMs": 0.01972773740296246, + "p95Ms": 0.03086626666554366 + }, + "physics_cleanup": { + "avgMs": 0.002075294411069032, + "p95Ms": 0.0030863499998304176 + }, + "simulation_step": { + "avgMs": 0.024010915136226423, + "p95Ms": 0.03764851666649823 + }, + "entities_emit_updates": { + "avgMs": 0.00041965276066853566, + "p95Ms": 0.0006702166658821322 + }, + "send_all_packets": { + "avgMs": 0.21162622516955648, + "p95Ms": 0.00613846666644046 + }, + "network_synchronize_cleanup": { + "avgMs": 0.002881797564949829, + "p95Ms": 0.0038139000006898035 + }, + "network_synchronize": { + "avgMs": 0.2561948408059067, + "p95Ms": 0.017406783333050648 + }, + "world_tick": { + "avgMs": 0.15971886314477954, + "p95Ms": 0.05990831666737601 + }, + "ticker_tick": { + "avgMs": 0.19212393717690157, + "p95Ms": 0.1026831833337686 + } + }, + "network": { + "totalBytesSent": 57474, + "totalBytesReceived": 0, + "maxConnectedPlayers": 1, + "avgBytesSentPerSecond": 949.4818163586549, + "maxBytesSentPerSecond": 56968.90898151929, + "avgBytesReceivedPerSecond": 0, + "maxBytesReceivedPerSecond": 0, + "avgPacketsSentPerSecond": 0.0991211834595109, + "maxPacketsSentPerSecond": 5.947271007570654, + "avgPacketsReceivedPerSecond": 0, + "maxPacketsReceivedPerSecond": 0, + "avgSerializationMs": 33.62722399999984, + "compressionCountTotal": 1 + } + }, + "phases": [ + { + "name": "setup-world", + "durationMs": 16, + "collected": false + }, + { + "name": "stabilize", + "durationMs": 13686, + "collected": false + }, + { + "name": "join-and-measure", + "durationMs": 57562, + "collected": true + } + ], + "metrics": { + "tickReportCount": 0, + "spikeCount": 0, + "serverSnapshotCount": 60, + "clientSnapshotCount": 0 + } +} \ No newline at end of file diff --git a/packages/perf-tools/perf-results/blocks-1m-multi-world.json b/packages/perf-tools/perf-results/blocks-1m-multi-world.json new file mode 100644 index 00000000..c3905e83 --- /dev/null +++ b/packages/perf-tools/perf-results/blocks-1m-multi-world.json @@ -0,0 +1,101 @@ +{ + "timestamp": "2026-03-05T13:48:01.634Z", + "scenario": "blocks-1m-multi-world", + "durationMs": 116725, + "baseline": { + "avgTickMs": 0.03921316894355409, + "maxTickMs": 76.47973099999945, + "p95TickMs": 0.0397304555555618, + "p99TickMs": 0.059530444444761896, + "ticksOverBudgetPct": 0.02738469332566562, + "avgMemoryMb": 43.984555901421444, + "operations": { + "entities_tick": { + "avgMs": 0.0004325694904328935, + "p95Ms": 0.0006662222222480017 + }, + "physics_step": { + "avgMs": 0.009219510851331304, + "p95Ms": 0.01768245555568784 + }, + "physics_cleanup": { + "avgMs": 0.0009630207720016963, + "p95Ms": 0.0015721999998883499 + }, + "simulation_step": { + "avgMs": 0.011594284617616978, + "p95Ms": 0.021482744445772067 + }, + "entities_emit_updates": { + "avgMs": 0.0001926413783360981, + "p95Ms": 0.00031212222214283735 + }, + "world_tick": { + "avgMs": 0.04490596976384134, + "p95Ms": 0.036641233332961244 + }, + "ticker_tick": { + "avgMs": 0.061596693273831084, + "p95Ms": 0.06615804444477867 + }, + "serialize_packets": { + "avgMs": 2.617033107142953, + "p95Ms": 5.835788000000321 + }, + "send_packets": { + "avgMs": 2.2704686874998288, + "p95Ms": 6.619578999998339 + }, + "send_all_packets": { + "avgMs": 0.046972241007496744, + "p95Ms": 0.004221966667157378 + }, + "network_synchronize_cleanup": { + "avgMs": 0.0013214479156872455, + "p95Ms": 0.0029271222212426235 + }, + "network_synchronize": { + "avgMs": 0.05924993211701668, + "p95Ms": 0.011533511111136048 + } + }, + "network": { + "totalBytesSent": 257844, + "totalBytesReceived": 0, + "maxConnectedPlayers": 40, + "avgBytesSentPerSecond": 171.30217136836123, + "maxBytesSentPerSecond": 15417.19542315251, + "avgBytesReceivedPerSecond": 0, + "maxBytesReceivedPerSecond": 0, + "avgPacketsSentPerSecond": 0.20661708356820535, + "maxPacketsSentPerSecond": 18.595537521138482, + "avgPacketsReceivedPerSecond": 0, + "maxPacketsReceivedPerSecond": 0, + "avgSerializationMs": 2.614322202380663, + "compressionCountTotal": 40 + } + }, + "phases": [ + { + "name": "setup-worlds", + "durationMs": 17, + "collected": false + }, + { + "name": "stabilize", + "durationMs": 8685, + "collected": false + }, + { + "name": "joins-and-measure", + "durationMs": 101959, + "collected": true + } + ], + "metrics": { + "tickReportCount": 0, + "spikeCount": 0, + "serverSnapshotCount": 90, + "clientSnapshotCount": 0 + } +} \ No newline at end of file diff --git a/packages/perf-tools/perf-results/combined.json b/packages/perf-tools/perf-results/combined.json new file mode 100644 index 00000000..435e3935 --- /dev/null +++ b/packages/perf-tools/perf-results/combined.json @@ -0,0 +1,106 @@ +{ + "timestamp": "2026-03-05T13:45:43.688Z", + "scenario": "combined-stress", + "durationMs": 146785, + "baseline": { + "avgTickMs": 1.7280708450244475, + "maxTickMs": 123.70900199999596, + "p95TickMs": 1.3665292583329878, + "p99TickMs": 4.8515477750025635, + "ticksOverBudgetPct": 0.8491702029423979, + "avgMemoryMb": 63.49357452392578, + "operations": { + "entities_tick": { + "avgMs": 0.0708545694069393, + "p95Ms": 0.10835589166660307 + }, + "physics_step": { + "avgMs": 1.391738573064377, + "p95Ms": 0.6263938333336228 + }, + "physics_cleanup": { + "avgMs": 0.0032384939332779903, + "p95Ms": 0.004199883332967147 + }, + "simulation_step": { + "avgMs": 1.3982958194776118, + "p95Ms": 0.6345872500000345 + }, + "entities_emit_updates": { + "avgMs": 0.06155322409601348, + "p95Ms": 0.09060742500081082 + }, + "world_tick": { + "avgMs": 1.7484909096397752, + "p95Ms": 1.310201499998766 + }, + "ticker_tick": { + "avgMs": 1.7966917024387188, + "p95Ms": 1.3858299083341081 + }, + "serialize_packets": { + "avgMs": 0.023483883889599252, + "p95Ms": 0.03418720000039078 + }, + "send_packets": { + "avgMs": 0.03744001242885334, + "p95Ms": 0.09914118333338896 + }, + "send_all_packets": { + "avgMs": 0.39571000627088804, + "p95Ms": 0.6249327583315486 + }, + "network_synchronize_cleanup": { + "avgMs": 0.0041347866884364525, + "p95Ms": 0.005549675000141482 + }, + "network_synchronize": { + "avgMs": 0.4210369733809286, + "p95Ms": 0.6538261250005538 + } + }, + "network": { + "totalBytesSent": 32854240, + "totalBytesReceived": 0, + "maxConnectedPlayers": 10, + "avgBytesSentPerSecond": 265666.37092414434, + "maxBytesSentPerSecond": 390981.65550306404, + "avgBytesReceivedPerSecond": 0, + "maxBytesReceivedPerSecond": 0, + "avgPacketsSentPerSecond": 294.44562784679397, + "maxPacketsSentPerSecond": 309.40488476594874, + "avgPacketsReceivedPerSecond": 0, + "maxPacketsReceivedPerSecond": 0, + "avgSerializationMs": 0.021366040567236247, + "compressionCountTotal": 0 + } + }, + "phases": [ + { + "name": "load-world", + "durationMs": 6592, + "collected": false + }, + { + "name": "spawn-all", + "durationMs": 743, + "collected": false + }, + { + "name": "stabilize", + "durationMs": 8470, + "collected": false + }, + { + "name": "measure", + "durationMs": 119889, + "collected": true + } + ], + "metrics": { + "tickReportCount": 0, + "spikeCount": 0, + "serverSnapshotCount": 120, + "clientSnapshotCount": 0 + } +} \ No newline at end of file diff --git a/packages/perf-tools/perf-results/join-storm.json b/packages/perf-tools/perf-results/join-storm.json new file mode 100644 index 00000000..cb745ec8 --- /dev/null +++ b/packages/perf-tools/perf-results/join-storm.json @@ -0,0 +1,101 @@ +{ + "timestamp": "2026-03-05T13:44:51.781Z", + "scenario": "join-storm", + "durationMs": 89392, + "baseline": { + "avgTickMs": 4.398019454782057, + "maxTickMs": 1253.5548879999988, + "p95TickMs": 16.257491950000077, + "p99TickMs": 71.5386668666663, + "ticksOverBudgetPct": 3.0303795550392687, + "avgMemoryMb": 54.052302551269534, + "operations": { + "entities_tick": { + "avgMs": 0.0008242613497229731, + "p95Ms": 0.0014116666662327285 + }, + "physics_step": { + "avgMs": 0.13038264330007215, + "p95Ms": 0.1911503000019972 + }, + "physics_cleanup": { + "avgMs": 0.002381567335808261, + "p95Ms": 0.0037820333329364074 + }, + "simulation_step": { + "avgMs": 0.1356069471166377, + "p95Ms": 0.1999653000001975 + }, + "entities_emit_updates": { + "avgMs": 0.0004993073215346867, + "p95Ms": 0.0008000000009512102 + }, + "world_tick": { + "avgMs": 4.443075425890186, + "p95Ms": 13.897077450000506 + }, + "ticker_tick": { + "avgMs": 5.278235663595949, + "p95Ms": 16.3232648166689 + }, + "serialize_packets": { + "avgMs": 16.157164799227957, + "p95Ms": 45.913698000000295 + }, + "send_packets": { + "avgMs": 1.1252793703437065, + "p95Ms": 0.03624300000228686 + }, + "send_all_packets": { + "avgMs": 7.966924639559886, + "p95Ms": 30.552953049999026 + }, + "network_synchronize_cleanup": { + "avgMs": 0.0042317085845608535, + "p95Ms": 0.00900646666668763 + }, + "network_synchronize": { + "avgMs": 8.605954788672712, + "p95Ms": 32.88858343333292 + } + }, + "network": { + "totalBytesSent": 36996784, + "totalBytesReceived": 0, + "maxConnectedPlayers": 100, + "avgBytesSentPerSecond": 46894.35447301847, + "maxBytesSentPerSecond": 2813661.2683811085, + "avgBytesReceivedPerSecond": 0, + "maxBytesReceivedPerSecond": 0, + "avgPacketsSentPerSecond": 5.906667234759272, + "maxPacketsSentPerSecond": 354.40003408555634, + "avgPacketsReceivedPerSecond": 0, + "maxPacketsReceivedPerSecond": 0, + "avgSerializationMs": 16.153889374517483, + "compressionCountTotal": 100 + } + }, + "phases": [ + { + "name": "preload-world", + "durationMs": 5149, + "collected": false + }, + { + "name": "stabilize", + "durationMs": 8476, + "collected": false + }, + { + "name": "join-and-measure", + "durationMs": 69669, + "collected": true + } + ], + "metrics": { + "tickReportCount": 0, + "spikeCount": 0, + "serverSnapshotCount": 60, + "clientSnapshotCount": 0 + } +} \ No newline at end of file diff --git a/packages/perf-tools/perf-results/many-players.json b/packages/perf-tools/perf-results/many-players.json new file mode 100644 index 00000000..6f6609c1 --- /dev/null +++ b/packages/perf-tools/perf-results/many-players.json @@ -0,0 +1,101 @@ +{ + "timestamp": "2026-03-05T13:44:36.247Z", + "scenario": "many-players", + "durationMs": 78465, + "baseline": { + "avgTickMs": 0.9632497683267228, + "maxTickMs": 9.146430999997392, + "p95TickMs": 2.5837638333334327, + "p99TickMs": 3.5789994000003085, + "ticksOverBudgetPct": 0, + "avgMemoryMb": 48.73876393636068, + "operations": { + "entities_tick": { + "avgMs": 0.060091419729391554, + "p95Ms": 0.10528306666619755 + }, + "physics_step": { + "avgMs": 0.04613177805421052, + "p95Ms": 0.06573823333195226 + }, + "physics_cleanup": { + "avgMs": 0.0029735286044631827, + "p95Ms": 0.004278350000034455 + }, + "simulation_step": { + "avgMs": 0.0518406738490113, + "p95Ms": 0.07411623333373427 + }, + "entities_emit_updates": { + "avgMs": 0.04731222575373152, + "p95Ms": 0.0767718000009457 + }, + "serialize_packets": { + "avgMs": 0.025321724149494487, + "p95Ms": 0.04465421666639789 + }, + "send_packets": { + "avgMs": 0.03014869914520092, + "p95Ms": 0.06580306666583055 + }, + "send_all_packets": { + "avgMs": 1.5563268080091588, + "p95Ms": 2.601990399999583 + }, + "network_synchronize_cleanup": { + "avgMs": 0.005281785766588462, + "p95Ms": 0.0080505999999635 + }, + "network_synchronize": { + "avgMs": 1.5889405909843992, + "p95Ms": 2.64567691666701 + }, + "world_tick": { + "avgMs": 0.9611789836723366, + "p95Ms": 2.437558566666788 + }, + "ticker_tick": { + "avgMs": 0.9942680602057624, + "p95Ms": 2.46962699999937 + } + }, + "network": { + "totalBytesSent": 61868350, + "totalBytesReceived": 0, + "maxConnectedPlayers": 50, + "avgBytesSentPerSecond": 1028137.2208681963, + "maxBytesSentPerSecond": 1463934.4796269767, + "avgBytesReceivedPerSecond": 0, + "maxBytesReceivedPerSecond": 0, + "avgPacketsSentPerSecond": 1499.7729670304736, + "maxPacketsSentPerSecond": 1546.7655600840778, + "avgPacketsReceivedPerSecond": 0, + "maxPacketsReceivedPerSecond": 0, + "avgSerializationMs": 0.02314558385562619, + "compressionCountTotal": 0 + } + }, + "phases": [ + { + "name": "connect-clients", + "durationMs": 10004, + "collected": false + }, + { + "name": "spawn-bots", + "durationMs": 14, + "collected": false + }, + { + "name": "measure", + "durationMs": 57278, + "collected": true + } + ], + "metrics": { + "tickReportCount": 0, + "spikeCount": 0, + "serverSnapshotCount": 60, + "clientSnapshotCount": 0 + } +} \ No newline at end of file From 22490944ca9966bb94fc411027e1a6e5274c6a70 Mon Sep 17 00:00:00 2001 From: web3dev1337 <160291380+web3dev1337@users.noreply.github.com> Date: Fri, 6 Mar 2026 09:18:44 +1100 Subject: [PATCH 15/40] =?UTF-8?q?perf:=20throttled=20benchmark=20results?= =?UTF-8?q?=20=E2=80=94=20simulating=20cheap=20cloud=20VM=20(30%=20single?= =?UTF-8?q?=20core)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit CPU throttled to 30% of 1 core via taskset + cpulimit, simulating a ~1.5GHz single-vCPU cloud VM (vs dev machine: 9800X3D 16-thread 5GHz). Throttled results vs unthrottled: - idle: 0.07ms avg (was 0.05ms) — PASS - stress (100 bots): 0.47ms avg (was 0.26ms) — PASS - combined (100 bots + 10 clients): 2.22ms avg (was 1.73ms) — PASS - many-players (50 WS + 50 bots): 1.46ms/11.73ms p99 (was 0.96ms/3.58ms) — PASS - block-churn (10 clients + edits): 1.79ms/32.30ms p99 (was 0.75ms/1.66ms) — FAIL p99 - blocks-10m-dense (10M blocks): 0.37ms avg (was 0.16ms) — PASS - join-storm (100 clients): 14.46ms avg/376ms p99 (was 4.40ms/71ms) — FAIL avg+p99 Key findings on weak hardware: 1. join-storm is catastrophic: avg tick=14.46ms (basically at budget), p99=376ms, serialize_packets p95=633ms. 100 concurrent joins on a weak server = unplayable for everyone. 2. block-churn now fails p99 (32ms vs 30ms threshold) — on-the-edge. 3. combined/stress/many-players still pass comfortably. 4. Serialization is the #1 bottleneck across all failing tests. Co-Authored-By: Claude Opus 4.6 --- .../perf-results/throttled/block-churn.json | 96 ++++++++++++++++ .../throttled/blocks-10m-dense.json | 101 +++++++++++++++++ .../perf-results/throttled/combined.json | 106 ++++++++++++++++++ .../perf-results/throttled/idle.json | 88 +++++++++++++++ .../perf-results/throttled/join-storm.json | 101 +++++++++++++++++ .../perf-results/throttled/many-players.json | 101 +++++++++++++++++ .../perf-results/throttled/stress.json | 93 +++++++++++++++ 7 files changed, 686 insertions(+) create mode 100644 packages/perf-tools/perf-results/throttled/block-churn.json create mode 100644 packages/perf-tools/perf-results/throttled/blocks-10m-dense.json create mode 100644 packages/perf-tools/perf-results/throttled/combined.json create mode 100644 packages/perf-tools/perf-results/throttled/idle.json create mode 100644 packages/perf-tools/perf-results/throttled/join-storm.json create mode 100644 packages/perf-tools/perf-results/throttled/many-players.json create mode 100644 packages/perf-tools/perf-results/throttled/stress.json diff --git a/packages/perf-tools/perf-results/throttled/block-churn.json b/packages/perf-tools/perf-results/throttled/block-churn.json new file mode 100644 index 00000000..b9b0d130 --- /dev/null +++ b/packages/perf-tools/perf-results/throttled/block-churn.json @@ -0,0 +1,96 @@ +{ + "timestamp": "2026-03-05T22:17:19.107Z", + "scenario": "block-churn", + "durationMs": 60704, + "baseline": { + "avgTickMs": 1.7920962972298742, + "maxTickMs": 818.4425780000001, + "p95TickMs": 15.938466400000395, + "p99TickMs": 32.30030700000055, + "ticksOverBudgetPct": 0.08977197917290083, + "avgMemoryMb": 59.6778865814209, + "operations": { + "entities_tick": { + "avgMs": 0.0017992915526633703, + "p95Ms": 0.00264800000007502 + }, + "physics_step": { + "avgMs": 0.07971446459713513, + "p95Ms": 0.21731668333321372 + }, + "physics_cleanup": { + "avgMs": 0.006041949423665551, + "p95Ms": 0.00842779999996613 + }, + "simulation_step": { + "avgMs": 0.09204405101249048, + "p95Ms": 0.23842736666712577 + }, + "entities_emit_updates": { + "avgMs": 0.0007704882554027713, + "p95Ms": 0.0011542333334394546 + }, + "world_tick": { + "avgMs": 1.7866339137612697, + "p95Ms": 15.922663583332769 + }, + "ticker_tick": { + "avgMs": 2.0766720433910724, + "p95Ms": 16.25997188333313 + }, + "serialize_packets": { + "avgMs": 35.30756422500021, + "p95Ms": 215.65989150000087 + }, + "send_packets": { + "avgMs": 8.101761554166256, + "p95Ms": 74.23772149999877 + }, + "send_all_packets": { + "avgMs": 3.170143889461697, + "p95Ms": 14.861828183333076 + }, + "network_synchronize_cleanup": { + "avgMs": 0.005061964011218121, + "p95Ms": 0.005593783333127552 + }, + "network_synchronize": { + "avgMs": 3.4166130860493653, + "p95Ms": 15.827658950000462 + } + }, + "network": { + "totalBytesSent": 700074, + "totalBytesReceived": 0, + "maxConnectedPlayers": 11, + "avgBytesSentPerSecond": 7203.236313753144, + "maxBytesSentPerSecond": 371429.9225781149, + "avgBytesReceivedPerSecond": 0, + "maxBytesReceivedPerSecond": 0, + "avgPacketsSentPerSecond": 1.1557572928010482, + "maxPacketsSentPerSecond": 50.93357640406447, + "avgPacketsReceivedPerSecond": 0, + "maxPacketsReceivedPerSecond": 0, + "avgSerializationMs": 35.302880750000625, + "compressionCountTotal": 2 + } + }, + "phases": [ + { + "name": "setup", + "durationMs": 391, + "collected": false + }, + { + "name": "churn-and-measure", + "durationMs": 54738, + "collected": true + } + ], + "metrics": { + "tickReportCount": 0, + "spikeCount": 0, + "serverSnapshotCount": 60, + "clientSnapshotCount": 0 + } +} \ No newline at end of file diff --git a/packages/perf-tools/perf-results/throttled/blocks-10m-dense.json b/packages/perf-tools/perf-results/throttled/blocks-10m-dense.json new file mode 100644 index 00000000..293953a4 --- /dev/null +++ b/packages/perf-tools/perf-results/throttled/blocks-10m-dense.json @@ -0,0 +1,101 @@ +{ + "timestamp": "2026-03-05T22:17:31.467Z", + "scenario": "blocks-10m-dense", + "durationMs": 74631, + "baseline": { + "avgTickMs": 0.3678607531131963, + "maxTickMs": 122.04515399999946, + "p95TickMs": 2.1842488333336103, + "p99TickMs": 4.440352749999935, + "ticksOverBudgetPct": 0.055807204710128074, + "avgMemoryMb": 50.483299255371094, + "operations": { + "serialize_packets": { + "avgMs": 26.083742666666982, + "p95Ms": 78.19489600000088 + }, + "send_packets": { + "avgMs": 7.842397916666117, + "p95Ms": 93.62325499999861 + }, + "entities_tick": { + "avgMs": 0.0017024739391461282, + "p95Ms": 0.0024962333337195256 + }, + "physics_step": { + "avgMs": 0.04807215796251588, + "p95Ms": 0.06922056666602051 + }, + "physics_cleanup": { + "avgMs": 0.004988607348668802, + "p95Ms": 0.0073067333335833 + }, + "simulation_step": { + "avgMs": 0.0587658567192885, + "p95Ms": 0.08550433333281642 + }, + "entities_emit_updates": { + "avgMs": 0.0007269236479577146, + "p95Ms": 0.0011208500004916762 + }, + "send_all_packets": { + "avgMs": 0.4331703633853387, + "p95Ms": 1.5901372000000265 + }, + "network_synchronize_cleanup": { + "avgMs": 0.004934105890258781, + "p95Ms": 0.00476849999983339 + }, + "network_synchronize": { + "avgMs": 0.5776717590318386, + "p95Ms": 2.082377566667007 + }, + "world_tick": { + "avgMs": 0.3630098159640884, + "p95Ms": 2.169407649999812 + }, + "ticker_tick": { + "avgMs": 0.45042879628732363, + "p95Ms": 2.2408463999991 + } + }, + "network": { + "totalBytesSent": 59405, + "totalBytesReceived": 0, + "maxConnectedPlayers": 11, + "avgBytesSentPerSecond": 0, + "maxBytesSentPerSecond": 0, + "avgBytesReceivedPerSecond": 0, + "maxBytesReceivedPerSecond": 0, + "avgPacketsSentPerSecond": 0, + "maxPacketsSentPerSecond": 0, + "avgPacketsReceivedPerSecond": 0, + "maxPacketsReceivedPerSecond": 0, + "avgSerializationMs": 26.07868633333419, + "compressionCountTotal": 1 + } + }, + "phases": [ + { + "name": "setup-world", + "durationMs": 829, + "collected": false + }, + { + "name": "stabilize", + "durationMs": 11063, + "collected": false + }, + { + "name": "join-and-measure", + "durationMs": 54952, + "collected": true + } + ], + "metrics": { + "tickReportCount": 0, + "spikeCount": 0, + "serverSnapshotCount": 60, + "clientSnapshotCount": 0 + } +} \ No newline at end of file diff --git a/packages/perf-tools/perf-results/throttled/combined.json b/packages/perf-tools/perf-results/throttled/combined.json new file mode 100644 index 00000000..fab4ed57 --- /dev/null +++ b/packages/perf-tools/perf-results/throttled/combined.json @@ -0,0 +1,106 @@ +{ + "timestamp": "2026-03-05T22:15:59.694Z", + "scenario": "combined-stress", + "durationMs": 159407, + "baseline": { + "avgTickMs": 2.2210433833768275, + "maxTickMs": 244.87248999997973, + "p95TickMs": 2.0417600833325804, + "p99TickMs": 5.831250199999583, + "ticksOverBudgetPct": 0.8563761521409403, + "avgMemoryMb": 54.1039103825887, + "operations": { + "entities_tick": { + "avgMs": 0.13170391823024324, + "p95Ms": 0.3108036583330128 + }, + "physics_step": { + "avgMs": 1.6669555470551904, + "p95Ms": 0.9186607750001107 + }, + "physics_cleanup": { + "avgMs": 0.004834618755810993, + "p95Ms": 0.007338025000596341 + }, + "simulation_step": { + "avgMs": 1.6767478551536559, + "p95Ms": 0.9357361166668852 + }, + "entities_emit_updates": { + "avgMs": 0.09113548881103865, + "p95Ms": 0.1698119666651716 + }, + "world_tick": { + "avgMs": 2.1868956408808007, + "p95Ms": 2.1068056583339057 + }, + "ticker_tick": { + "avgMs": 2.2532712923935927, + "p95Ms": 2.2136142833334818 + }, + "serialize_packets": { + "avgMs": 0.03149973891560877, + "p95Ms": 0.048125941667240116 + }, + "send_packets": { + "avgMs": 0.047645785149837215, + "p95Ms": 0.14509697499943286 + }, + "send_all_packets": { + "avgMs": 0.5059881515560963, + "p95Ms": 0.9331871166657948 + }, + "network_synchronize_cleanup": { + "avgMs": 0.00815659531033403, + "p95Ms": 0.009510408334305491 + }, + "network_synchronize": { + "avgMs": 0.5519809230840689, + "p95Ms": 1.0122887249999621 + } + }, + "network": { + "totalBytesSent": 32793740, + "totalBytesReceived": 0, + "maxConnectedPlayers": 10, + "avgBytesSentPerSecond": 263583.04981156316, + "maxBytesSentPerSecond": 395882.4175598577, + "avgBytesReceivedPerSecond": 0, + "maxBytesReceivedPerSecond": 0, + "avgPacketsSentPerSecond": 289.8093361202148, + "maxPacketsSentPerSecond": 309.3024036889567, + "avgPacketsReceivedPerSecond": 0, + "maxPacketsReceivedPerSecond": 0, + "avgSerializationMs": 0.02869727538360874, + "compressionCountTotal": 0 + } + }, + "phases": [ + { + "name": "load-world", + "durationMs": 20610, + "collected": false + }, + { + "name": "spawn-all", + "durationMs": 3261, + "collected": false + }, + { + "name": "stabilize", + "durationMs": 10001, + "collected": false + }, + { + "name": "measure", + "durationMs": 113673, + "collected": true + } + ], + "metrics": { + "tickReportCount": 0, + "spikeCount": 0, + "serverSnapshotCount": 120, + "clientSnapshotCount": 0 + } +} \ No newline at end of file diff --git a/packages/perf-tools/perf-results/throttled/idle.json b/packages/perf-tools/perf-results/throttled/idle.json new file mode 100644 index 00000000..5e749365 --- /dev/null +++ b/packages/perf-tools/perf-results/throttled/idle.json @@ -0,0 +1,88 @@ +{ + "timestamp": "2026-03-05T22:13:14.135Z", + "scenario": "idle-baseline", + "durationMs": 34499, + "baseline": { + "avgTickMs": 0.06873839472150463, + "maxTickMs": 2.656435999997484, + "p95TickMs": 0.10843789999983831, + "p99TickMs": 0.23720813333302432, + "ticksOverBudgetPct": 0, + "avgMemoryMb": 40.57544199625651, + "operations": { + "entities_tick": { + "avgMs": 0.0014293007559212406, + "p95Ms": 0.0024829333336735242 + }, + "physics_step": { + "avgMs": 0.03581650559019222, + "p95Ms": 0.054915733333261114 + }, + "physics_cleanup": { + "avgMs": 0.004280903038759899, + "p95Ms": 0.006948233333302293 + }, + "simulation_step": { + "avgMs": 0.043721700564098104, + "p95Ms": 0.0693393666666149 + }, + "entities_emit_updates": { + "avgMs": 0.0004996976603057125, + "p95Ms": 0.0008938333335208881 + }, + "world_tick": { + "avgMs": 0.0653713565377379, + "p95Ms": 0.10413693333333261 + }, + "ticker_tick": { + "avgMs": 0.11021069374160467, + "p95Ms": 0.17285916666666404 + }, + "send_all_packets": { + "avgMs": 0.004280311159438012, + "p95Ms": 0.005457633333298873 + }, + "network_synchronize_cleanup": { + "avgMs": 0.0027704331924936795, + "p95Ms": 0.0036384666669619036 + }, + "network_synchronize": { + "avgMs": 0.019889677746238336, + "p95Ms": 0.02417540000005829 + } + }, + "network": { + "totalBytesSent": 0, + "totalBytesReceived": 0, + "maxConnectedPlayers": 0, + "avgBytesSentPerSecond": 0, + "maxBytesSentPerSecond": 0, + "avgBytesReceivedPerSecond": 0, + "maxBytesReceivedPerSecond": 0, + "avgPacketsSentPerSecond": 0, + "maxPacketsSentPerSecond": 0, + "avgPacketsReceivedPerSecond": 0, + "maxPacketsReceivedPerSecond": 0, + "avgSerializationMs": 0, + "compressionCountTotal": 0 + } + }, + "phases": [ + { + "name": "warmup", + "durationMs": 5002, + "collected": false + }, + { + "name": "measure", + "durationMs": 27445, + "collected": true + } + ], + "metrics": { + "tickReportCount": 0, + "spikeCount": 0, + "serverSnapshotCount": 30, + "clientSnapshotCount": 0 + } +} \ No newline at end of file diff --git a/packages/perf-tools/perf-results/throttled/join-storm.json b/packages/perf-tools/perf-results/throttled/join-storm.json new file mode 100644 index 00000000..64896598 --- /dev/null +++ b/packages/perf-tools/perf-results/throttled/join-storm.json @@ -0,0 +1,101 @@ +{ + "timestamp": "2026-03-05T22:18:21.680Z", + "scenario": "join-storm", + "durationMs": 127100, + "baseline": { + "avgTickMs": 14.464908799974616, + "maxTickMs": 889.6479410000029, + "p95TickMs": 52.32250618333346, + "p99TickMs": 376.2388852000005, + "ticksOverBudgetPct": 4.134977479140516, + "avgMemoryMb": 172.07372512817383, + "operations": { + "entities_tick": { + "avgMs": 0.0007735137187064894, + "p95Ms": 0.0012794166645714237 + }, + "physics_step": { + "avgMs": 0.17200653391165643, + "p95Ms": 0.22557224999909523 + }, + "physics_cleanup": { + "avgMs": 0.0034315212480463086, + "p95Ms": 0.004959150000164906 + }, + "simulation_step": { + "avgMs": 0.18072331332917793, + "p95Ms": 0.23946373333443868 + }, + "entities_emit_updates": { + "avgMs": 0.0005254315965799393, + "p95Ms": 0.0008232833320410767 + }, + "send_all_packets": { + "avgMs": 25.83929444550733, + "p95Ms": 115.75569449999979 + }, + "network_synchronize_cleanup": { + "avgMs": 0.007352429604151781, + "p95Ms": 0.010367683332515299 + }, + "network_synchronize": { + "avgMs": 28.901835215490784, + "p95Ms": 131.68631768333398 + }, + "world_tick": { + "avgMs": 14.652898023898821, + "p95Ms": 42.212484316668636 + }, + "ticker_tick": { + "avgMs": 17.626167811172035, + "p95Ms": 65.38415256666667 + }, + "serialize_packets": { + "avgMs": 53.38229595035458, + "p95Ms": 633.5850970000029 + }, + "send_packets": { + "avgMs": 3.546311573742193, + "p95Ms": 0.07468499999959022 + } + }, + "network": { + "totalBytesSent": 37009296, + "totalBytesReceived": 0, + "maxConnectedPlayers": 100, + "avgBytesSentPerSecond": 13743.984988798014, + "maxBytesSentPerSecond": 824639.0993278809, + "avgBytesReceivedPerSecond": 0, + "maxBytesReceivedPerSecond": 0, + "avgPacketsSentPerSecond": 1.9051063006584565, + "maxPacketsSentPerSecond": 114.3063780395074, + "avgPacketsReceivedPerSecond": 0, + "maxPacketsReceivedPerSecond": 0, + "avgSerializationMs": 53.37751157801402, + "compressionCountTotal": 100 + } + }, + "phases": [ + { + "name": "preload-world", + "durationMs": 13599, + "collected": false + }, + { + "name": "stabilize", + "durationMs": 10007, + "collected": false + }, + { + "name": "join-and-measure", + "durationMs": 96112, + "collected": true + } + ], + "metrics": { + "tickReportCount": 0, + "spikeCount": 0, + "serverSnapshotCount": 60, + "clientSnapshotCount": 0 + } +} \ No newline at end of file diff --git a/packages/perf-tools/perf-results/throttled/many-players.json b/packages/perf-tools/perf-results/throttled/many-players.json new file mode 100644 index 00000000..92dd592f --- /dev/null +++ b/packages/perf-tools/perf-results/throttled/many-players.json @@ -0,0 +1,101 @@ +{ + "timestamp": "2026-03-05T22:14:39.001Z", + "scenario": "many-players", + "durationMs": 77087, + "baseline": { + "avgTickMs": 1.4590587241113593, + "maxTickMs": 95.00327599999946, + "p95TickMs": 4.452570316666727, + "p99TickMs": 11.73098763333328, + "ticksOverBudgetPct": 0.4448811375856328, + "avgMemoryMb": 42.65193405151367, + "operations": { + "entities_tick": { + "avgMs": 0.10576290050770412, + "p95Ms": 0.20400351666661057 + }, + "physics_step": { + "avgMs": 0.07345848340204558, + "p95Ms": 0.08515465000091353 + }, + "physics_cleanup": { + "avgMs": 0.004846111421254792, + "p95Ms": 0.006297650000366654 + }, + "simulation_step": { + "avgMs": 0.08184788601875806, + "p95Ms": 0.09878523333360742 + }, + "entities_emit_updates": { + "avgMs": 0.13243129281036803, + "p95Ms": 0.14672096666636208 + }, + "world_tick": { + "avgMs": 1.4560245726125276, + "p95Ms": 3.954584216665838 + }, + "serialize_packets": { + "avgMs": 0.055834169535996514, + "p95Ms": 0.06272613333373253 + }, + "send_packets": { + "avgMs": 0.042127080877416165, + "p95Ms": 0.07195404999990083 + }, + "send_all_packets": { + "avgMs": 2.194892022245168, + "p95Ms": 5.136805466666313 + }, + "network_synchronize_cleanup": { + "avgMs": 0.027337910491300656, + "p95Ms": 0.010607350000282168 + }, + "network_synchronize": { + "avgMs": 2.2545784772858304, + "p95Ms": 5.270788466666393 + }, + "ticker_tick": { + "avgMs": 1.6182136562381628, + "p95Ms": 4.45939291666679 + } + }, + "network": { + "totalBytesSent": 59247050, + "totalBytesReceived": 0, + "maxConnectedPlayers": 50, + "avgBytesSentPerSecond": 981925.7710636476, + "maxBytesSentPerSecond": 1481842.24530106, + "avgBytesReceivedPerSecond": 0, + "maxBytesReceivedPerSecond": 0, + "avgPacketsSentPerSecond": 1495.9960818070504, + "maxPacketsSentPerSecond": 1545.8347297706246, + "avgPacketsReceivedPerSecond": 0, + "maxPacketsReceivedPerSecond": 0, + "avgSerializationMs": 0.05209213276093013, + "compressionCountTotal": 0 + } + }, + "phases": [ + { + "name": "connect-clients", + "durationMs": 10004, + "collected": false + }, + { + "name": "spawn-bots", + "durationMs": 26, + "collected": false + }, + { + "name": "measure", + "durationMs": 54810, + "collected": true + } + ], + "metrics": { + "tickReportCount": 0, + "spikeCount": 0, + "serverSnapshotCount": 60, + "clientSnapshotCount": 0 + } +} \ No newline at end of file diff --git a/packages/perf-tools/perf-results/throttled/stress.json b/packages/perf-tools/perf-results/throttled/stress.json new file mode 100644 index 00000000..c5ab5ad9 --- /dev/null +++ b/packages/perf-tools/perf-results/throttled/stress.json @@ -0,0 +1,93 @@ +{ + "timestamp": "2026-03-05T22:14:25.417Z", + "scenario": "stress-test", + "durationMs": 67064, + "baseline": { + "avgTickMs": 0.4664462714793657, + "maxTickMs": 124.68226300000242, + "p95TickMs": 1.0065098166666455, + "p99TickMs": 3.230148583333236, + "ticksOverBudgetPct": 0.03895386232074429, + "avgMemoryMb": 47.25280558268229, + "operations": { + "entities_tick": { + "avgMs": 0.15120736404654064, + "p95Ms": 0.317036599999877 + }, + "physics_step": { + "avgMs": 0.16594821015365768, + "p95Ms": 0.16640125000015663 + }, + "physics_cleanup": { + "avgMs": 0.004367642500187419, + "p95Ms": 0.006311950000751191 + }, + "simulation_step": { + "avgMs": 0.1754781371539642, + "p95Ms": 0.18472536666664988 + }, + "entities_emit_updates": { + "avgMs": 0.09463284273395711, + "p95Ms": 0.14569283333321437 + }, + "send_all_packets": { + "avgMs": 0.00472118470044643, + "p95Ms": 0.005706349999460751 + }, + "network_synchronize_cleanup": { + "avgMs": 0.017371922555600192, + "p95Ms": 0.009056049999981042 + }, + "network_synchronize": { + "avgMs": 0.060705054480927854, + "p95Ms": 0.06329793333370617 + }, + "world_tick": { + "avgMs": 0.4628283030346499, + "p95Ms": 0.8850007000005462 + }, + "ticker_tick": { + "avgMs": 0.5156509428049243, + "p95Ms": 0.9869928500000545 + } + }, + "network": { + "totalBytesSent": 0, + "totalBytesReceived": 0, + "maxConnectedPlayers": 0, + "avgBytesSentPerSecond": 0, + "maxBytesSentPerSecond": 0, + "avgBytesReceivedPerSecond": 0, + "maxBytesReceivedPerSecond": 0, + "avgPacketsSentPerSecond": 0, + "maxPacketsSentPerSecond": 0, + "avgPacketsReceivedPerSecond": 0, + "maxPacketsReceivedPerSecond": 0, + "avgSerializationMs": 0, + "compressionCountTotal": 0 + } + }, + "phases": [ + { + "name": "spawn-entities", + "durationMs": 67, + "collected": false + }, + { + "name": "stabilize", + "durationMs": 5035, + "collected": false + }, + { + "name": "measure", + "durationMs": 54910, + "collected": true + } + ], + "metrics": { + "tickReportCount": 0, + "spikeCount": 0, + "serverSnapshotCount": 60, + "clientSnapshotCount": 0 + } +} \ No newline at end of file From 0793124cd6686490f0bb5562c6eaa2de01a0eefe Mon Sep 17 00:00:00 2001 From: web3dev1337 <160291380+web3dev1337@users.noreply.github.com> Date: Fri, 6 Mar 2026 11:46:37 +1100 Subject: [PATCH 16/40] feat: add OS-level process monitoring and real game benchmark presets - ProcessMonitor: reads /proc//stat + status for CPU%, RSS, threads, FDs - BenchmarkRunner: integrates ProcessMonitor, graceful PerfHarness fallback, log capture - MetricCollector: process snapshot collection support - ConsoleReporter: process metrics display with CPU% threshold warnings - CLI: --no-perf-api and --log-file options - Scripts: link-sdk.sh and setup-game.sh for external game SDK linkage - Presets: hyfire2-bots.yaml and zoo-game-bots.yaml Co-Authored-By: Claude Opus 4.6 --- .../init.md | 4 + .../plan.md | 12 ++ .../progress.md | 13 ++ packages/perf-tools/scripts/link-sdk.sh | 19 +++ packages/perf-tools/scripts/setup-game.sh | 28 +++ packages/perf-tools/src/cli.ts | 8 +- .../perf-tools/src/presets/hyfire2-bots.yaml | 13 ++ .../perf-tools/src/presets/zoo-game-bots.yaml | 13 ++ .../src/reporters/ConsoleReporter.ts | 10 ++ .../perf-tools/src/runners/BenchmarkRunner.ts | 80 ++++++++- .../perf-tools/src/runners/MetricCollector.ts | 18 ++ .../perf-tools/src/runners/ProcessMonitor.ts | 161 ++++++++++++++++++ 12 files changed, 374 insertions(+), 5 deletions(-) create mode 100644 ai-memory/feature/perf-external-notes-verification-20260305-2249094/init.md create mode 100644 ai-memory/feature/perf-external-notes-verification-20260305-2249094/plan.md create mode 100644 ai-memory/feature/perf-external-notes-verification-20260305-2249094/progress.md create mode 100755 packages/perf-tools/scripts/link-sdk.sh create mode 100755 packages/perf-tools/scripts/setup-game.sh create mode 100644 packages/perf-tools/src/presets/hyfire2-bots.yaml create mode 100644 packages/perf-tools/src/presets/zoo-game-bots.yaml create mode 100644 packages/perf-tools/src/runners/ProcessMonitor.ts diff --git a/ai-memory/feature/perf-external-notes-verification-20260305-2249094/init.md b/ai-memory/feature/perf-external-notes-verification-20260305-2249094/init.md new file mode 100644 index 00000000..8c32d9e1 --- /dev/null +++ b/ai-memory/feature/perf-external-notes-verification-20260305-2249094/init.md @@ -0,0 +1,4 @@ +# Real Game Benchmarking + OS-Level Monitoring + +Add OS-level CPU/memory/GC monitoring to benchmark runner (works without PerfHarness). +Benchmark real games (HyFire2 + Zoo Game) against modified SDK. diff --git a/ai-memory/feature/perf-external-notes-verification-20260305-2249094/plan.md b/ai-memory/feature/perf-external-notes-verification-20260305-2249094/plan.md new file mode 100644 index 00000000..f1740040 --- /dev/null +++ b/ai-memory/feature/perf-external-notes-verification-20260305-2249094/plan.md @@ -0,0 +1,12 @@ +# Plan + +1. ProcessMonitor.ts — OS-level CPU/RSS/FD monitoring +2. MetricCollector — add process snapshot support +3. BenchmarkRunner — integrate ProcessMonitor, graceful PerfHarness fallback, log capture +4. ConsoleReporter — display process metrics with CPU% thresholds +5. CLI — new options (--no-perf-api, --log-file) +6. Scripts — link-sdk.sh, setup-game.sh +7. Presets — hyfire2-bots.yaml, zoo-game-bots.yaml +8. HyFire2 setup — npm link, test launch, fix API breaks +9. Zoo game setup — extract loadtest files, npm link, test launch +10. Run benchmarks — both games, native + throttled diff --git a/ai-memory/feature/perf-external-notes-verification-20260305-2249094/progress.md b/ai-memory/feature/perf-external-notes-verification-20260305-2249094/progress.md new file mode 100644 index 00000000..60457beb --- /dev/null +++ b/ai-memory/feature/perf-external-notes-verification-20260305-2249094/progress.md @@ -0,0 +1,13 @@ +# Progress + +- [x] ProcessMonitor.ts — reads /proc//stat + status for CPU%, RSS, threads, FDs +- [x] MetricCollector — ProcessSnapshotEntry type + addProcessSnapshot method +- [x] BenchmarkRunner — ProcessMonitor integration, PerfHarness fallback, log capture +- [x] ConsoleReporter — process metrics section with CPU% threshold warnings +- [x] CLI — --no-perf-api, --log-file options +- [x] Scripts — link-sdk.sh, setup-game.sh (chmod +x) +- [x] Presets — hyfire2-bots.yaml, zoo-game-bots.yaml +- [x] Build verification — tsc passes clean +- [ ] HyFire2 setup — npm link, test launch +- [ ] Zoo game setup — extract loadtest files, npm link, test launch +- [ ] Run benchmarks diff --git a/packages/perf-tools/scripts/link-sdk.sh b/packages/perf-tools/scripts/link-sdk.sh new file mode 100755 index 00000000..a8ca68d5 --- /dev/null +++ b/packages/perf-tools/scripts/link-sdk.sh @@ -0,0 +1,19 @@ +#!/bin/bash +# Build modified SDK and npm-link it for use by external games +set -e + +SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)" +REPO_ROOT="$(cd "$SCRIPT_DIR/../../.." && pwd)" + +echo "Building SDK from $REPO_ROOT/server ..." +cd "$REPO_ROOT/server" +npm run build + +echo "Linking SDK from $REPO_ROOT/sdk ..." +cd "$REPO_ROOT/sdk" +npm link + +SDK_VERSION=$(node -e "console.log(require('./package.json').version)") +echo "" +echo "SDK v${SDK_VERSION} linked globally." +echo "In game directories, run: npm link hytopia" diff --git a/packages/perf-tools/scripts/setup-game.sh b/packages/perf-tools/scripts/setup-game.sh new file mode 100755 index 00000000..d1652bca --- /dev/null +++ b/packages/perf-tools/scripts/setup-game.sh @@ -0,0 +1,28 @@ +#!/bin/bash +# Usage: ./setup-game.sh +# Links our modified SDK into a game directory +set -e + +if [ -z "$1" ]; then + echo "Usage: $0 " + echo "Example: $0 ~/GitHub/games/hytopia/games/HyFire2/work1" + exit 1 +fi + +GAME_DIR="$(cd "$1" && pwd)" + +if [ ! -f "$GAME_DIR/package.json" ]; then + echo "Error: No package.json found in $GAME_DIR" + exit 1 +fi + +echo "Linking hytopia SDK into $GAME_DIR ..." +cd "$GAME_DIR" +npm link hytopia + +SDK_VERSION=$(node -e "console.log(require('hytopia/package.json').version)") +echo "" +echo "Game at $GAME_DIR now using local SDK v${SDK_VERSION}" +echo "" +echo "Launch with:" +echo " HYTOPIA_PERF_TOOLS=1 hytopia start" diff --git a/packages/perf-tools/src/cli.ts b/packages/perf-tools/src/cli.ts index 2828d833..53209244 100644 --- a/packages/perf-tools/src/cli.ts +++ b/packages/perf-tools/src/cli.ts @@ -23,7 +23,7 @@ program .command('run') .description('Run a benchmark scenario') .argument('[scenario]', 'Path to scenario YAML/JSON file') - .option('--preset ', 'Use a built-in preset (idle, stress, large-world, many-players, combined, join-storm, block-churn, entity-density, multi-world, blocks-10k-dense, blocks-500k-dense, blocks-1m-dense, blocks-10m-dense, blocks-1m-multi-world)') + .option('--preset ', 'Use a built-in preset (idle, stress, large-world, many-players, combined, join-storm, block-churn, entity-density, multi-world, blocks-10k-dense, blocks-500k-dense, blocks-1m-dense, blocks-10m-dense, blocks-1m-multi-world, hyfire2-bots, zoo-game-bots)') .option('--output ', 'Write results to JSON file') .option('--full-data', 'Include raw metric data in output') .option('--baseline ', 'Compare results against a baseline JSON') @@ -31,6 +31,8 @@ program .option('--server-cwd ', 'Working directory for server') .option('--client-url ', 'Server base URL (used for health + perf endpoints)', 'https://local.hytopiahosting.com:8080') .option('--no-headless', 'Run browser in visible mode') + .option('--no-perf-api', 'Skip PerfHarness API, use only OS-level monitoring') + .option('--log-file ', 'Capture server stdout/stderr to file') .option('--verbose', 'Enable verbose logging') .action(async (scenarioPath, options) => { let scenario; @@ -39,7 +41,7 @@ program const presetPath = path.join(__dirname, 'presets', `${options.preset}.yaml`); if (!fs.existsSync(presetPath)) { - console.error('Unknown preset: %s. Available: idle, stress, large-world, many-players, combined, join-storm, block-churn, entity-density, multi-world, blocks-10k-dense, blocks-500k-dense, blocks-1m-dense, blocks-10m-dense, blocks-1m-multi-world', options.preset); + console.error('Unknown preset: %s. Available: idle, stress, large-world, many-players, combined, join-storm, block-churn, entity-density, multi-world, blocks-10k-dense, blocks-500k-dense, blocks-1m-dense, blocks-10m-dense, blocks-1m-multi-world, hyfire2-bots, zoo-game-bots', options.preset); process.exit(1); } @@ -57,6 +59,8 @@ program clientUrl: options.clientUrl, headless: options.headless !== false, verbose: options.verbose, + noPerfApi: options.perfApi === false, + logFile: options.logFile, }); console.log(`Running benchmark: ${scenario.name}`); diff --git a/packages/perf-tools/src/presets/hyfire2-bots.yaml b/packages/perf-tools/src/presets/hyfire2-bots.yaml new file mode 100644 index 00000000..4a2814e6 --- /dev/null +++ b/packages/perf-tools/src/presets/hyfire2-bots.yaml @@ -0,0 +1,13 @@ +name: "hyfire2-5v5-bots" +description: "HyFire2 5v5 bot match — full combat AI, pathfinding, weapons, economy" +warmupMs: 15000 +phases: + - name: gameplay + collect: true + duration: 120s +thresholds: + tick_duration_ms: + avg: 10 + p99: 25 + memory_mb: + max: 500 diff --git a/packages/perf-tools/src/presets/zoo-game-bots.yaml b/packages/perf-tools/src/presets/zoo-game-bots.yaml new file mode 100644 index 00000000..59d30413 --- /dev/null +++ b/packages/perf-tools/src/presets/zoo-game-bots.yaml @@ -0,0 +1,13 @@ +name: "zoo-game-18-bots" +description: "Zoo Game with 18 bots across 3 worlds, plots unlocked, animals placed" +warmupMs: 20000 +phases: + - name: gameplay + collect: true + duration: 120s +thresholds: + tick_duration_ms: + avg: 12 + p99: 30 + memory_mb: + max: 1500 diff --git a/packages/perf-tools/src/reporters/ConsoleReporter.ts b/packages/perf-tools/src/reporters/ConsoleReporter.ts index 88e12cbe..c5159831 100644 --- a/packages/perf-tools/src/reporters/ConsoleReporter.ts +++ b/packages/perf-tools/src/reporters/ConsoleReporter.ts @@ -20,6 +20,16 @@ export default class ConsoleReporter { console.log(`Memory: ${b.avgMemoryMb.toFixed(1)}MB avg heap`); + if (result.processMetrics && result.processMetrics.snapshots.length > 0) { + const pm = result.processMetrics; + console.log(''); + console.log('Process Metrics (OS-level):'); + console.log(` CPU: avg=${pm.avgCpuPct.toFixed(1)}% max=${pm.maxCpuPct.toFixed(1)}%${pm.maxCpuPct > 90 ? ' FAIL' : pm.maxCpuPct > 70 ? ' WARN' : ''}`); + console.log(` RSS: avg=${pm.avgRssMb.toFixed(1)}MB max=${pm.maxRssMb.toFixed(1)}MB`); + console.log(` Threads: max=${pm.maxThreads}`); + console.log(` FDs: max=${pm.maxFds}`); + } + if (b.avgFps !== undefined) { console.log(`Client FPS: ${b.avgFps.toFixed(1)} avg`); } diff --git a/packages/perf-tools/src/runners/BenchmarkRunner.ts b/packages/perf-tools/src/runners/BenchmarkRunner.ts index 2b448921..c90a602e 100644 --- a/packages/perf-tools/src/runners/BenchmarkRunner.ts +++ b/packages/perf-tools/src/runners/BenchmarkRunner.ts @@ -3,6 +3,7 @@ import * as path from 'node:path'; import * as net from 'node:net'; import { spawn, type ChildProcess } from 'node:child_process'; import MetricCollector, { type CollectedMetrics } from './MetricCollector.js'; +import ProcessMonitor, { type ProcessMetrics } from './ProcessMonitor.js'; import ServerApiClient from './ServerApiClient.js'; import WsClient from './WsClient.js'; import { type Scenario, type ScenarioPhase, parseDuration } from './ScenarioLoader.js'; @@ -14,12 +15,15 @@ export interface BenchmarkRunnerOptions { clientUrl?: string; headless?: boolean; verbose?: boolean; + noPerfApi?: boolean; + logFile?: string; } export interface BenchmarkResult { scenario: Scenario; metrics: CollectedMetrics; baseline: BaselineResult; + processMetrics?: ProcessMetrics; durationMs: number; phaseResults: PhaseResult[]; } @@ -33,9 +37,12 @@ export interface PhaseResult { export default class BenchmarkRunner { private _options: Required; private _collector: MetricCollector; + private _processMonitor: ProcessMonitor; private _serverProcess: ChildProcess | null = null; private _serverApi: ServerApiClient; private _wsClients: WsClient[] = []; + private _perfApiAvailable: boolean = true; + private _logStream: fs.WriteStream | null = null; private _log: (msg: string) => void; constructor(options?: BenchmarkRunnerOptions) { @@ -45,9 +52,13 @@ export default class BenchmarkRunner { clientUrl: options?.clientUrl ?? 'https://local.hytopiahosting.com:8080', headless: options?.headless ?? true, verbose: options?.verbose ?? false, + noPerfApi: options?.noPerfApi ?? false, + logFile: options?.logFile ?? '', }; this._collector = new MetricCollector(); + this._processMonitor = new ProcessMonitor(); this._serverApi = new ServerApiClient(this._options.clientUrl); + this._perfApiAvailable = !this._options.noPerfApi; this._log = this._options.verbose ? console.log : () => {}; } @@ -57,10 +68,27 @@ export default class BenchmarkRunner { this._log(`[bench] Starting scenario: ${scenario.name}`); + let processMetrics: ProcessMetrics | undefined; + try { await this._startServer(); + + // start process monitor as soon as server PID is available + if (this._serverProcess?.pid) { + this._log(`[bench] Starting process monitor (pid=${this._serverProcess.pid})`); + this._processMonitor.start(this._serverProcess.pid); + } + await this._serverApi.waitForHealthy(); + // probe PerfHarness availability unless explicitly disabled + if (this._perfApiAvailable) { + this._perfApiAvailable = await this._probePerfApi(); + if (!this._perfApiAvailable) { + this._log('[bench] PerfHarness API unavailable — using OS-level monitoring only'); + } + } + if (scenario.clients && scenario.clients > 0) { await this._launchWsClients(scenario.clients); } @@ -76,6 +104,7 @@ export default class BenchmarkRunner { phaseResults.push(phaseResult); } } finally { + processMetrics = this._processMonitor.stop(); await this._cleanup(); } @@ -86,6 +115,7 @@ export default class BenchmarkRunner { scenario, metrics, baseline, + processMetrics, durationMs: Date.now() - startTime, phaseResults, }; @@ -97,7 +127,14 @@ export default class BenchmarkRunner { this._log(`[bench] Phase: ${phase.name}`); if (phase.collect) { - await this._serverApi.reset(); + if (this._perfApiAvailable) { + try { + await this._serverApi.reset(); + } catch { + this._log('[bench] PerfHarness reset failed — continuing without it'); + this._perfApiAvailable = false; + } + } this._collector.startCollecting(); } @@ -232,8 +269,15 @@ export default class BenchmarkRunner { await this._wait(remaining); - const snapshot = await this._serverApi.snapshot(); - this._collector.addServerSnapshot(snapshot); + if (this._perfApiAvailable) { + try { + const snapshot = await this._serverApi.snapshot(); + this._collector.addServerSnapshot(snapshot); + } catch { + this._log('[bench] PerfHarness snapshot failed — falling back to OS-only'); + this._perfApiAvailable = false; + } + } } } @@ -250,6 +294,14 @@ export default class BenchmarkRunner { this._log(`[bench] Starting server (cwd=${this._options.serverCwd}): ${this._options.serverCommand}`); this._log(`[bench] Using server URL: ${this._options.clientUrl}`); + const useLogFile = this._options.logFile && !this._options.verbose; + + if (useLogFile) { + const logDir = path.dirname(this._options.logFile); + if (!fs.existsSync(logDir)) fs.mkdirSync(logDir, { recursive: true }); + this._logStream = fs.createWriteStream(this._options.logFile, { flags: 'w' }); + } + this._serverProcess = spawn(this._options.serverCommand, { cwd: this._options.serverCwd, shell: true, @@ -262,6 +314,14 @@ export default class BenchmarkRunner { PORT: String(port), }, }); + + if (this._logStream && this._serverProcess.stdout) { + this._serverProcess.stdout.pipe(this._logStream); + } + + if (this._logStream && this._serverProcess.stderr) { + this._serverProcess.stderr.pipe(this._logStream); + } } private async _launchWsClients(count: number, staggerMs?: number): Promise { @@ -321,6 +381,15 @@ export default class BenchmarkRunner { } } + private async _probePerfApi(): Promise { + try { + await this._serverApi.snapshot(); + return true; + } catch { + return false; + } + } + private async _cleanup(): Promise { for (const client of this._wsClients) { await client.close(); @@ -343,6 +412,11 @@ export default class BenchmarkRunner { this._serverProcess = null; } + + if (this._logStream) { + this._logStream.end(); + this._logStream = null; + } } private _buildBaseline(metrics: CollectedMetrics): BaselineResult { diff --git a/packages/perf-tools/src/runners/MetricCollector.ts b/packages/perf-tools/src/runners/MetricCollector.ts index 2667f7b1..8aff4c81 100644 --- a/packages/perf-tools/src/runners/MetricCollector.ts +++ b/packages/perf-tools/src/runners/MetricCollector.ts @@ -1,8 +1,17 @@ +export interface ProcessSnapshotEntry { + timestamp: number; + cpuPct: number; + rssMb: number; + threads: number; + fds: number; +} + export interface CollectedMetrics { serverSnapshots: ServerSnapshot[]; clientSnapshots: ClientSnapshot[]; tickReports: TickReportEntry[]; spikes: SpikeEntry[]; + processSnapshots: ProcessSnapshotEntry[]; startTime: number; endTime: number; } @@ -71,6 +80,7 @@ export default class MetricCollector { private _clientSnapshots: ClientSnapshot[] = []; private _tickReports: TickReportEntry[] = []; private _spikes: SpikeEntry[] = []; + private _processSnapshots: ProcessSnapshotEntry[] = []; private _startTime: number = 0; private _collecting: boolean = false; @@ -81,6 +91,7 @@ export default class MetricCollector { this._clientSnapshots = []; this._tickReports = []; this._spikes = []; + this._processSnapshots = []; } public stopCollecting(): CollectedMetrics { @@ -91,6 +102,7 @@ export default class MetricCollector { clientSnapshots: this._clientSnapshots, tickReports: this._tickReports, spikes: this._spikes, + processSnapshots: this._processSnapshots, startTime: this._startTime, endTime: Date.now(), }; @@ -123,4 +135,10 @@ export default class MetricCollector { this._spikes.push(spike); } + + public addProcessSnapshot(snapshot: ProcessSnapshotEntry): void { + if (!this._collecting) return; + + this._processSnapshots.push(snapshot); + } } diff --git a/packages/perf-tools/src/runners/ProcessMonitor.ts b/packages/perf-tools/src/runners/ProcessMonitor.ts new file mode 100644 index 00000000..10f515d0 --- /dev/null +++ b/packages/perf-tools/src/runners/ProcessMonitor.ts @@ -0,0 +1,161 @@ +import * as fs from 'node:fs'; +import * as path from 'node:path'; + +export interface ProcessSnapshot { + timestamp: number; + cpuPct: number; + rssMb: number; + threads: number; + fds: number; +} + +export interface ProcessMetrics { + snapshots: ProcessSnapshot[]; + avgCpuPct: number; + maxCpuPct: number; + avgRssMb: number; + maxRssMb: number; + maxThreads: number; + maxFds: number; +} + +interface ProcStatSample { + utime: number; + stime: number; + wallMs: number; +} + +export default class ProcessMonitor { + private _pid: number = 0; + private _interval: ReturnType | null = null; + private _snapshots: ProcessSnapshot[] = []; + private _lastSample: ProcStatSample | null = null; + private _clockTick: number; + + constructor() { + this._clockTick = 100; // sysconf(_SC_CLK_TCK) default on Linux + } + + public start(pid: number, intervalMs: number = 1000): void { + this._pid = pid; + this._snapshots = []; + this._lastSample = null; + + this._takeSample(); // prime the CPU delta baseline + + this._interval = setInterval(() => { + try { + const snapshot = this._collect(); + if (snapshot) this._snapshots.push(snapshot); + } catch { + // process may have exited + } + }, intervalMs); + } + + public stop(): ProcessMetrics { + if (this._interval) { + clearInterval(this._interval); + this._interval = null; + } + + // one final collection + try { + const snapshot = this._collect(); + if (snapshot) this._snapshots.push(snapshot); + } catch { + // ignore + } + + return this._summarize(); + } + + private _collect(): ProcessSnapshot | null { + const stat = this._takeSample(); + if (!stat || !this._lastSample) return null; + + const cpuPct = this._calcCpuPct(this._lastSample, stat); + const rssMb = this._readRssMb(); + const threads = this._readThreads(); + const fds = this._countFds(); + + this._lastSample = stat; + + return { timestamp: Date.now(), cpuPct, rssMb, threads, fds }; + } + + private _takeSample(): ProcStatSample | null { + try { + const raw = fs.readFileSync(`/proc/${this._pid}/stat`, 'utf-8'); + // fields: pid (comm) state ppid ... utime(14) stime(15) + // comm can contain spaces/parens, so find the closing ')' first + const closeParen = raw.lastIndexOf(')'); + const fields = raw.slice(closeParen + 2).split(' '); + // fields[0] = state, fields[11] = utime (index 13 in full, but 11 after state) + const utime = parseInt(fields[11], 10); + const stime = parseInt(fields[12], 10); + + const sample: ProcStatSample = { utime, stime, wallMs: Date.now() }; + if (!this._lastSample) this._lastSample = sample; + return sample; + } catch { + return null; + } + } + + private _calcCpuPct(prev: ProcStatSample, cur: ProcStatSample): number { + const wallDeltaS = (cur.wallMs - prev.wallMs) / 1000; + if (wallDeltaS <= 0) return 0; + + const cpuDeltaTicks = (cur.utime + cur.stime) - (prev.utime + prev.stime); + const cpuDeltaS = cpuDeltaTicks / this._clockTick; + + return (cpuDeltaS / wallDeltaS) * 100; + } + + private _readRssMb(): number { + try { + const raw = fs.readFileSync(`/proc/${this._pid}/status`, 'utf-8'); + const match = raw.match(/VmRSS:\s+(\d+)\s+kB/); + return match ? parseInt(match[1], 10) / 1024 : 0; + } catch { + return 0; + } + } + + private _readThreads(): number { + try { + const raw = fs.readFileSync(`/proc/${this._pid}/status`, 'utf-8'); + const match = raw.match(/Threads:\s+(\d+)/); + return match ? parseInt(match[1], 10) : 0; + } catch { + return 0; + } + } + + private _countFds(): number { + try { + return fs.readdirSync(`/proc/${this._pid}/fd`).length; + } catch { + return 0; + } + } + + private _summarize(): ProcessMetrics { + const snapshots = this._snapshots; + + if (snapshots.length === 0) { + return { snapshots: [], avgCpuPct: 0, maxCpuPct: 0, avgRssMb: 0, maxRssMb: 0, maxThreads: 0, maxFds: 0 }; + } + + return { + snapshots, + avgCpuPct: snapshots.reduce((s, v) => s + v.cpuPct, 0) / snapshots.length, + maxCpuPct: Math.max(...snapshots.map(s => s.cpuPct)), + avgRssMb: snapshots.reduce((s, v) => s + v.rssMb, 0) / snapshots.length, + maxRssMb: Math.max(...snapshots.map(s => s.rssMb)), + maxThreads: Math.max(...snapshots.map(s => s.threads)), + maxFds: Math.max(...snapshots.map(s => s.fds)), + }; + } +} From b745521d80061c2df9d5aafb293ed95655b301e2 Mon Sep 17 00:00:00 2001 From: web3dev1337 <160291380+web3dev1337@users.noreply.github.com> Date: Fri, 6 Mar 2026 12:01:24 +1100 Subject: [PATCH 17/40] fix: ProcessMonitor aggregates all child processes in process group The server spawns with shell=true+detached=true, so the PID is the shell process, not the actual node worker. Fixed by scanning /proc for all PIDs sharing the same process group and summing their CPU/RSS/threads/FDs. Co-Authored-By: Claude Opus 4.6 --- .../perf-tools/src/runners/ProcessMonitor.ts | 108 +++++++++++++----- 1 file changed, 80 insertions(+), 28 deletions(-) diff --git a/packages/perf-tools/src/runners/ProcessMonitor.ts b/packages/perf-tools/src/runners/ProcessMonitor.ts index 10f515d0..6b5c2e8d 100644 --- a/packages/perf-tools/src/runners/ProcessMonitor.ts +++ b/packages/perf-tools/src/runners/ProcessMonitor.ts @@ -1,5 +1,4 @@ import * as fs from 'node:fs'; -import * as path from 'node:path'; export interface ProcessSnapshot { timestamp: number; @@ -29,7 +28,7 @@ export default class ProcessMonitor { private _pid: number = 0; private _interval: ReturnType | null = null; private _snapshots: ProcessSnapshot[] = []; - private _lastSample: ProcStatSample | null = null; + private _lastSamples: Map = new Map(); private _clockTick: number; constructor() { @@ -39,9 +38,9 @@ export default class ProcessMonitor { public start(pid: number, intervalMs: number = 1000): void { this._pid = pid; this._snapshots = []; - this._lastSample = null; + this._lastSamples.clear(); - this._takeSample(); // prime the CPU delta baseline + this._primeBaseline(); // prime the CPU delta baseline this._interval = setInterval(() => { try { @@ -70,34 +69,87 @@ export default class ProcessMonitor { return this._summarize(); } + /** Discover all PIDs in the process group (leader + children). */ + private _getGroupPids(): number[] { + const pids: number[] = []; + try { + const entries = fs.readdirSync('/proc'); + for (const entry of entries) { + const pid = parseInt(entry, 10); + if (isNaN(pid)) continue; + try { + const raw = fs.readFileSync(`/proc/${pid}/stat`, 'utf-8'); + const closeParen = raw.lastIndexOf(')'); + const fields = raw.slice(closeParen + 2).split(' '); + const pgid = parseInt(fields[2], 10); // pgrp is field index 4 in stat (0-based after comm) + if (pgid === this._pid) pids.push(pid); + } catch { + // process vanished + } + } + } catch { + // fallback to just the leader + pids.push(this._pid); + } + if (pids.length === 0) pids.push(this._pid); + return pids; + } + + private _primeBaseline(): void { + const pids = this._getGroupPids(); + for (const pid of pids) { + const sample = this._readProcStat(pid); + if (sample) this._lastSamples.set(pid, sample); + } + } + private _collect(): ProcessSnapshot | null { - const stat = this._takeSample(); - if (!stat || !this._lastSample) return null; + const pids = this._getGroupPids(); + let totalCpuPct = 0; + let totalRssKb = 0; + let totalThreads = 0; + let totalFds = 0; + + for (const pid of pids) { + const curSample = this._readProcStat(pid); + if (!curSample) continue; + + const prevSample = this._lastSamples.get(pid); + if (prevSample) { + totalCpuPct += this._calcCpuPct(prevSample, curSample); + } + this._lastSamples.set(pid, curSample); + + totalRssKb += this._readRssKb(pid); + totalThreads += this._readThreadCount(pid); + totalFds += this._countFds(pid); + } - const cpuPct = this._calcCpuPct(this._lastSample, stat); - const rssMb = this._readRssMb(); - const threads = this._readThreads(); - const fds = this._countFds(); + // prune stale PIDs + for (const pid of this._lastSamples.keys()) { + if (!pids.includes(pid)) this._lastSamples.delete(pid); + } - this._lastSample = stat; + if (pids.length === 0) return null; - return { timestamp: Date.now(), cpuPct, rssMb, threads, fds }; + return { + timestamp: Date.now(), + cpuPct: totalCpuPct, + rssMb: totalRssKb / 1024, + threads: totalThreads, + fds: totalFds, + }; } - private _takeSample(): ProcStatSample | null { + private _readProcStat(pid: number): ProcStatSample | null { try { - const raw = fs.readFileSync(`/proc/${this._pid}/stat`, 'utf-8'); - // fields: pid (comm) state ppid ... utime(14) stime(15) - // comm can contain spaces/parens, so find the closing ')' first + const raw = fs.readFileSync(`/proc/${pid}/stat`, 'utf-8'); const closeParen = raw.lastIndexOf(')'); const fields = raw.slice(closeParen + 2).split(' '); - // fields[0] = state, fields[11] = utime (index 13 in full, but 11 after state) + // fields[11] = utime, fields[12] = stime (after state, which is fields[0]) const utime = parseInt(fields[11], 10); const stime = parseInt(fields[12], 10); - - const sample: ProcStatSample = { utime, stime, wallMs: Date.now() }; - if (!this._lastSample) this._lastSample = sample; - return sample; + return { utime, stime, wallMs: Date.now() }; } catch { return null; } @@ -113,19 +165,19 @@ export default class ProcessMonitor { return (cpuDeltaS / wallDeltaS) * 100; } - private _readRssMb(): number { + private _readRssKb(pid: number): number { try { - const raw = fs.readFileSync(`/proc/${this._pid}/status`, 'utf-8'); + const raw = fs.readFileSync(`/proc/${pid}/status`, 'utf-8'); const match = raw.match(/VmRSS:\s+(\d+)\s+kB/); - return match ? parseInt(match[1], 10) / 1024 : 0; + return match ? parseInt(match[1], 10) : 0; } catch { return 0; } } - private _readThreads(): number { + private _readThreadCount(pid: number): number { try { - const raw = fs.readFileSync(`/proc/${this._pid}/status`, 'utf-8'); + const raw = fs.readFileSync(`/proc/${pid}/status`, 'utf-8'); const match = raw.match(/Threads:\s+(\d+)/); return match ? parseInt(match[1], 10) : 0; } catch { @@ -133,9 +185,9 @@ export default class ProcessMonitor { } } - private _countFds(): number { + private _countFds(pid: number): number { try { - return fs.readdirSync(`/proc/${this._pid}/fd`).length; + return fs.readdirSync(`/proc/${pid}/fd`).length; } catch { return 0; } From 2935dfb290d46b0294f87bda5ba43df5f925ece1 Mon Sep 17 00:00:00 2001 From: web3dev1337 <160291380+web3dev1337@users.noreply.github.com> Date: Fri, 6 Mar 2026 12:03:16 +1100 Subject: [PATCH 18/40] docs: update memory files with verification results and SDK decisions Co-Authored-By: Claude Opus 4.6 --- .../decisions.md | 15 +++++++++++++++ .../progress.md | 11 ++++++++--- 2 files changed, 23 insertions(+), 3 deletions(-) create mode 100644 ai-memory/feature/perf-external-notes-verification-20260305-2249094/decisions.md diff --git a/ai-memory/feature/perf-external-notes-verification-20260305-2249094/decisions.md b/ai-memory/feature/perf-external-notes-verification-20260305-2249094/decisions.md new file mode 100644 index 00000000..1244219a --- /dev/null +++ b/ai-memory/feature/perf-external-notes-verification-20260305-2249094/decisions.md @@ -0,0 +1,15 @@ +# Decisions + +## Game SDK Compatibility +Both HyFire2 and Zoo Game have API breaks with our local SDK build: +- **HyFire2** (0.14.27): uses `WorldMapChunkCacheCodec`, `WorldMapFileLoader` — removed in 0.15.2 +- **Zoo Game** (^0.15.2): uses `setModelAnimationsPlaybackRate` — doesn't exist in published or local 0.15.2 + +Root cause: our fork has diverged from published SDK. Games developed against published versions. +Resolution: SDK version alignment needed upstream before game benchmarks can run. +Workaround: `--no-perf-api` mode gives OS-level monitoring even without PerfHarness. + +## ProcessMonitor Design +Initially monitored single PID. But `spawn(cmd, {shell:true, detached:true})` creates a shell +process — the actual node server is a child. Fixed by scanning `/proc` for all PIDs in the +same process group (PGID) and aggregating CPU/RSS/threads/FDs across all of them. diff --git a/ai-memory/feature/perf-external-notes-verification-20260305-2249094/progress.md b/ai-memory/feature/perf-external-notes-verification-20260305-2249094/progress.md index 60457beb..19356995 100644 --- a/ai-memory/feature/perf-external-notes-verification-20260305-2249094/progress.md +++ b/ai-memory/feature/perf-external-notes-verification-20260305-2249094/progress.md @@ -1,6 +1,7 @@ # Progress - [x] ProcessMonitor.ts — reads /proc//stat + status for CPU%, RSS, threads, FDs +- [x] ProcessMonitor fix — aggregate all child processes in process group (shell=true+detached) - [x] MetricCollector — ProcessSnapshotEntry type + addProcessSnapshot method - [x] BenchmarkRunner — ProcessMonitor integration, PerfHarness fallback, log capture - [x] ConsoleReporter — process metrics section with CPU% threshold warnings @@ -8,6 +9,10 @@ - [x] Scripts — link-sdk.sh, setup-game.sh (chmod +x) - [x] Presets — hyfire2-bots.yaml, zoo-game-bots.yaml - [x] Build verification — tsc passes clean -- [ ] HyFire2 setup — npm link, test launch -- [ ] Zoo game setup — extract loadtest files, npm link, test launch -- [ ] Run benchmarks +- [x] Verified: idle benchmark — CPU avg=1.3%, RSS 168MB, 12 threads, 37 FDs +- [x] Verified: stress benchmark — CPU avg=2.9% max=13%, RSS 196MB +- [x] Verified: --no-perf-api mode — OS-only monitoring works +- [x] Verified: --log-file option — server output captured to file +- [x] HyFire2 — API breaks (WorldMapChunkCacheCodec/WorldMapFileLoader removed in 0.15.2) +- [x] Zoo game — API breaks (setModelAnimationsPlaybackRate not in published 0.15.2) +- [ ] Game benchmarks blocked — both games need SDK version alignment (upstream issue) From b757df9949c050b38695e9e86f97f9cc6f689420 Mon Sep 17 00:00:00 2001 From: web3dev1337 <160291380+web3dev1337@users.noreply.github.com> Date: Fri, 6 Mar 2026 12:57:18 +1100 Subject: [PATCH 19/40] feat: restore map compression codecs + real game benchmark results Server changes: - Restore WorldMapCodec, WorldMapChunkCacheCodec, WorldMapFileLoader, WorldMapArtifactsGenerator from feature/map-compression branch - Export all map codec types from SDK barrel (index.ts) - World.loadMap() accepts string paths + compressed formats with auto-detect Benchmark results: - HyFire2 5v5 bots: avg tick 0.61ms, p99 1.34ms, 431MB heap, 1.2GB RSS - Zoo Game (OS-only): avg CPU 7.3%, 746MB RSS, 24 threads Co-Authored-By: Claude Opus 4.6 --- .../perf-tools/perf-results/hyfire2-bots.json | 83 + .../perf-results/zoo-game-bots.json | 27 + sdk/docs/server.anyworldmap.md | 13 + .../server.compressedworldmap.algorithm.md | 11 + .../server.compressedworldmap.blocktypes.md | 11 + sdk/docs/server.compressedworldmap.bounds.md | 11 + .../server.compressedworldmap.codecversion.md | 11 + sdk/docs/server.compressedworldmap.data.md | 11 + .../server.compressedworldmap.entities.md | 11 + sdk/docs/server.compressedworldmap.format.md | 11 + .../server.compressedworldmap.mapversion.md | 11 + sdk/docs/server.compressedworldmap.md | 241 ++ .../server.compressedworldmap.metadata.md | 11 + sdk/docs/server.compressedworldmap.options.md | 11 + sdk/docs/server.compressedworldmap.version.md | 11 + .../server.compressedworldmapalgorithm.md | 11 + ...erver.compressworldmapoptions.algorithm.md | 11 + ...ompressworldmapoptions.includerotations.md | 11 + .../server.compressworldmapoptions.level.md | 11 + sdk/docs/server.compressworldmapoptions.md | 93 + ...eateworldmapchunkcacheoptions.algorithm.md | 11 + ...ldmapchunkcacheoptions.includerotations.md | 11 + ...r.createworldmapchunkcacheoptions.level.md | 11 + .../server.createworldmapchunkcacheoptions.md | 112 + ...eworldmapchunkcacheoptions.sourcesha256.md | 11 + sdk/docs/server.md | 126 + sdk/docs/server.monitor.md | 4 +- sdk/docs/server.monitorclass.md | 6 +- sdk/docs/server.networkmetrics.md | 12 + sdk/docs/server.networkmetrics.reset.md | 15 + .../server.performancemonitor.begintick.md | 18 +- sdk/docs/server.performancemonitor.endtick.md | 38 +- .../server.performancemonitor.getsnapshot.md | 38 +- sdk/docs/server.performancemonitor.md | 8 +- .../server.performancemonitor.recordphase.md | 18 +- sdk/docs/server.tickreport.md | 17 + sdk/docs/server.tickreport.worldid.md | 11 + sdk/docs/server.world.loadmap.md | 25 +- sdk/docs/server.world.md | 2 +- sdk/docs/server.worldmapartifacts.md | 19 + ...erver.worldmapartifactsgenerator.create.md | 68 + sdk/docs/server.worldmapartifactsgenerator.md | 45 + .../server.worldmapchunkcache.algorithm.md | 11 + .../server.worldmapchunkcache.blocktypes.md | 11 + .../server.worldmapchunkcache.codecversion.md | 11 + sdk/docs/server.worldmapchunkcache.data.md | 11 + .../server.worldmapchunkcache.entities.md | 11 + sdk/docs/server.worldmapchunkcache.format.md | 11 + sdk/docs/server.worldmapchunkcache.md | 167 ++ sdk/docs/server.worldmapchunkcache.version.md | 11 + .../server.worldmapchunkcachealgorithm.md | 11 + .../server.worldmapchunkcachecodec.create.md | 65 + .../server.worldmapchunkcachecodec.decode.md | 52 + ...er.worldmapchunkcachecodec.decodechunks.md | 49 + ....worldmapchunkcachecodec.decodemetadata.md | 49 + ...mapchunkcachecodec.decompresstoworldmap.md | 49 + ...mapchunkcachecodec.isworldmapchunkcache.md | 49 + sdk/docs/server.worldmapchunkcachecodec.md | 115 + ...r.worldmapchunkcachemetadata.blocktypes.md | 11 + ...ver.worldmapchunkcachemetadata.entities.md | 11 + ...r.worldmapchunkcachemetadata.mapversion.md | 11 + sdk/docs/server.worldmapchunkcachemetadata.md | 150 + ...ver.worldmapchunkcachemetadata.metadata.md | 11 + ...rver.worldmapchunkcachemetadata.options.md | 11 + ...erver.worldmapchunkcachemetadata.source.md | 13 + sdk/docs/server.worldmapchunkcacheoptions.md | 55 + ...ver.worldmapchunkcacheoptions.rotations.md | 11 + sdk/docs/server.worldmapcodec.compress.md | 65 + ...server.worldmapcodec.decodeblockentries.md | 53 + ...rver.worldmapcodec.decompresstoworldmap.md | 49 + ...rver.worldmapcodec.iscompressedworldmap.md | 49 + sdk/docs/server.worldmapcodec.md | 87 + sdk/docs/server.worldmapfileloader.load.md | 68 + sdk/docs/server.worldmapfileloader.md | 45 + sdk/docs/server.worldoptions.map.md | 2 +- sdk/docs/server.worldoptions.md | 2 +- sdk/server.api.json | 2493 ++++++++++++++++- sdk/server.d.ts | 175 +- sdk/server.mjs | 236 +- server/etc/server.api.md | 196 +- server/src/index.ts | 22 + server/src/worlds/World.ts | 45 +- server/src/worlds/maps/WorldMapArtifacts.ts | 48 + .../worlds/maps/WorldMapChunkCacheCodec.ts | 525 ++++ .../worlds/maps/WorldMapChunkCacheFormat.ts | 24 + server/src/worlds/maps/WorldMapCodec.ts | 381 +++ server/src/worlds/maps/WorldMapFileLoader.ts | 231 ++ 87 files changed, 6705 insertions(+), 306 deletions(-) create mode 100644 packages/perf-tools/perf-results/hyfire2-bots.json create mode 100644 packages/perf-tools/perf-results/zoo-game-bots.json create mode 100644 sdk/docs/server.anyworldmap.md create mode 100644 sdk/docs/server.compressedworldmap.algorithm.md create mode 100644 sdk/docs/server.compressedworldmap.blocktypes.md create mode 100644 sdk/docs/server.compressedworldmap.bounds.md create mode 100644 sdk/docs/server.compressedworldmap.codecversion.md create mode 100644 sdk/docs/server.compressedworldmap.data.md create mode 100644 sdk/docs/server.compressedworldmap.entities.md create mode 100644 sdk/docs/server.compressedworldmap.format.md create mode 100644 sdk/docs/server.compressedworldmap.mapversion.md create mode 100644 sdk/docs/server.compressedworldmap.md create mode 100644 sdk/docs/server.compressedworldmap.metadata.md create mode 100644 sdk/docs/server.compressedworldmap.options.md create mode 100644 sdk/docs/server.compressedworldmap.version.md create mode 100644 sdk/docs/server.compressedworldmapalgorithm.md create mode 100644 sdk/docs/server.compressworldmapoptions.algorithm.md create mode 100644 sdk/docs/server.compressworldmapoptions.includerotations.md create mode 100644 sdk/docs/server.compressworldmapoptions.level.md create mode 100644 sdk/docs/server.compressworldmapoptions.md create mode 100644 sdk/docs/server.createworldmapchunkcacheoptions.algorithm.md create mode 100644 sdk/docs/server.createworldmapchunkcacheoptions.includerotations.md create mode 100644 sdk/docs/server.createworldmapchunkcacheoptions.level.md create mode 100644 sdk/docs/server.createworldmapchunkcacheoptions.md create mode 100644 sdk/docs/server.createworldmapchunkcacheoptions.sourcesha256.md create mode 100644 sdk/docs/server.networkmetrics.reset.md create mode 100644 sdk/docs/server.tickreport.worldid.md create mode 100644 sdk/docs/server.worldmapartifacts.md create mode 100644 sdk/docs/server.worldmapartifactsgenerator.create.md create mode 100644 sdk/docs/server.worldmapartifactsgenerator.md create mode 100644 sdk/docs/server.worldmapchunkcache.algorithm.md create mode 100644 sdk/docs/server.worldmapchunkcache.blocktypes.md create mode 100644 sdk/docs/server.worldmapchunkcache.codecversion.md create mode 100644 sdk/docs/server.worldmapchunkcache.data.md create mode 100644 sdk/docs/server.worldmapchunkcache.entities.md create mode 100644 sdk/docs/server.worldmapchunkcache.format.md create mode 100644 sdk/docs/server.worldmapchunkcache.md create mode 100644 sdk/docs/server.worldmapchunkcache.version.md create mode 100644 sdk/docs/server.worldmapchunkcachealgorithm.md create mode 100644 sdk/docs/server.worldmapchunkcachecodec.create.md create mode 100644 sdk/docs/server.worldmapchunkcachecodec.decode.md create mode 100644 sdk/docs/server.worldmapchunkcachecodec.decodechunks.md create mode 100644 sdk/docs/server.worldmapchunkcachecodec.decodemetadata.md create mode 100644 sdk/docs/server.worldmapchunkcachecodec.decompresstoworldmap.md create mode 100644 sdk/docs/server.worldmapchunkcachecodec.isworldmapchunkcache.md create mode 100644 sdk/docs/server.worldmapchunkcachecodec.md create mode 100644 sdk/docs/server.worldmapchunkcachemetadata.blocktypes.md create mode 100644 sdk/docs/server.worldmapchunkcachemetadata.entities.md create mode 100644 sdk/docs/server.worldmapchunkcachemetadata.mapversion.md create mode 100644 sdk/docs/server.worldmapchunkcachemetadata.md create mode 100644 sdk/docs/server.worldmapchunkcachemetadata.metadata.md create mode 100644 sdk/docs/server.worldmapchunkcachemetadata.options.md create mode 100644 sdk/docs/server.worldmapchunkcachemetadata.source.md create mode 100644 sdk/docs/server.worldmapchunkcacheoptions.md create mode 100644 sdk/docs/server.worldmapchunkcacheoptions.rotations.md create mode 100644 sdk/docs/server.worldmapcodec.compress.md create mode 100644 sdk/docs/server.worldmapcodec.decodeblockentries.md create mode 100644 sdk/docs/server.worldmapcodec.decompresstoworldmap.md create mode 100644 sdk/docs/server.worldmapcodec.iscompressedworldmap.md create mode 100644 sdk/docs/server.worldmapcodec.md create mode 100644 sdk/docs/server.worldmapfileloader.load.md create mode 100644 sdk/docs/server.worldmapfileloader.md create mode 100644 server/src/worlds/maps/WorldMapArtifacts.ts create mode 100644 server/src/worlds/maps/WorldMapChunkCacheCodec.ts create mode 100644 server/src/worlds/maps/WorldMapChunkCacheFormat.ts create mode 100644 server/src/worlds/maps/WorldMapCodec.ts create mode 100644 server/src/worlds/maps/WorldMapFileLoader.ts diff --git a/packages/perf-tools/perf-results/hyfire2-bots.json b/packages/perf-tools/perf-results/hyfire2-bots.json new file mode 100644 index 00000000..db980d54 --- /dev/null +++ b/packages/perf-tools/perf-results/hyfire2-bots.json @@ -0,0 +1,83 @@ +{ + "timestamp": "2026-03-06T01:53:07.938Z", + "scenario": "hyfire2-5v5-bots", + "durationMs": 127350, + "baseline": { + "avgTickMs": 0.6116902903423317, + "maxTickMs": 4.948454999997921, + "p95TickMs": 0.9835920000003474, + "p99TickMs": 1.344567283334133, + "ticksOverBudgetPct": 0, + "avgMemoryMb": 431.2618334452311, + "operations": { + "entities_tick": { + "avgMs": 0.12454038554854553, + "p95Ms": 0.2443331750001562 + }, + "physics_step": { + "avgMs": 0.3350736570206461, + "p95Ms": 0.5066266583330313 + }, + "physics_cleanup": { + "avgMs": 0.027295186411969395, + "p95Ms": 0.0715296166665515 + }, + "simulation_step": { + "avgMs": 0.3755244878669753, + "p95Ms": 0.5872315416670669 + }, + "entities_emit_updates": { + "avgMs": 0.060598101468648656, + "p95Ms": 0.12497561666705223 + }, + "world_tick": { + "avgMs": 0.60986325870331, + "p95Ms": 0.9896887249994203 + }, + "ticker_tick": { + "avgMs": 0.7101404462850199, + "p95Ms": 1.1395172916672587 + }, + "send_all_packets": { + "avgMs": 0.010002776939347363, + "p95Ms": 0.046211291667653615 + }, + "network_synchronize_cleanup": { + "avgMs": 0.009550561731046783, + "p95Ms": 0.022571483332770488 + }, + "network_synchronize": { + "avgMs": 0.058481402331304756, + "p95Ms": 0.11953782499943676 + } + }, + "network": { + "totalBytesSent": 0, + "totalBytesReceived": 0, + "maxConnectedPlayers": 0, + "avgBytesSentPerSecond": 0, + "maxBytesSentPerSecond": 0, + "avgBytesReceivedPerSecond": 0, + "maxBytesReceivedPerSecond": 0, + "avgPacketsSentPerSecond": 0, + "maxPacketsSentPerSecond": 0, + "avgPacketsReceivedPerSecond": 0, + "maxPacketsReceivedPerSecond": 0, + "avgSerializationMs": 0, + "compressionCountTotal": 0 + } + }, + "phases": [ + { + "name": "gameplay", + "durationMs": 108694, + "collected": true + } + ], + "metrics": { + "tickReportCount": 0, + "spikeCount": 0, + "serverSnapshotCount": 120, + "clientSnapshotCount": 0 + } +} \ No newline at end of file diff --git a/packages/perf-tools/perf-results/zoo-game-bots.json b/packages/perf-tools/perf-results/zoo-game-bots.json new file mode 100644 index 00000000..16bfcaf2 --- /dev/null +++ b/packages/perf-tools/perf-results/zoo-game-bots.json @@ -0,0 +1,27 @@ +{ + "timestamp": "2026-03-06T01:56:48.515Z", + "scenario": "zoo-game-18-bots", + "durationMs": 128451, + "baseline": { + "avgTickMs": 0, + "maxTickMs": 0, + "p95TickMs": 0, + "p99TickMs": 0, + "ticksOverBudgetPct": 0, + "avgMemoryMb": 0, + "operations": {} + }, + "phases": [ + { + "name": "gameplay", + "durationMs": 108389, + "collected": true + } + ], + "metrics": { + "tickReportCount": 0, + "spikeCount": 0, + "serverSnapshotCount": 0, + "clientSnapshotCount": 0 + } +} \ No newline at end of file diff --git a/sdk/docs/server.anyworldmap.md b/sdk/docs/server.anyworldmap.md new file mode 100644 index 00000000..467b8608 --- /dev/null +++ b/sdk/docs/server.anyworldmap.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [server](./server.md) > [AnyWorldMap](./server.anyworldmap.md) + +## AnyWorldMap type + +**Signature:** + +```typescript +export type AnyWorldMap = WorldMap | CompressedWorldMap | WorldMapChunkCache; +``` +**References:** [WorldMap](./server.worldmap.md), [CompressedWorldMap](./server.compressedworldmap.md), [WorldMapChunkCache](./server.worldmapchunkcache.md) + diff --git a/sdk/docs/server.compressedworldmap.algorithm.md b/sdk/docs/server.compressedworldmap.algorithm.md new file mode 100644 index 00000000..f9053090 --- /dev/null +++ b/sdk/docs/server.compressedworldmap.algorithm.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [CompressedWorldMap](./server.compressedworldmap.md) > [algorithm](./server.compressedworldmap.algorithm.md) + +## CompressedWorldMap.algorithm property + +**Signature:** + +```typescript +algorithm?: CompressedWorldMapAlgorithm; +``` diff --git a/sdk/docs/server.compressedworldmap.blocktypes.md b/sdk/docs/server.compressedworldmap.blocktypes.md new file mode 100644 index 00000000..714e1614 --- /dev/null +++ b/sdk/docs/server.compressedworldmap.blocktypes.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [CompressedWorldMap](./server.compressedworldmap.md) > [blockTypes](./server.compressedworldmap.blocktypes.md) + +## CompressedWorldMap.blockTypes property + +**Signature:** + +```typescript +blockTypes?: BlockTypeOptions[] | Record; +``` diff --git a/sdk/docs/server.compressedworldmap.bounds.md b/sdk/docs/server.compressedworldmap.bounds.md new file mode 100644 index 00000000..7742476c --- /dev/null +++ b/sdk/docs/server.compressedworldmap.bounds.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [CompressedWorldMap](./server.compressedworldmap.md) > [bounds](./server.compressedworldmap.bounds.md) + +## CompressedWorldMap.bounds property + +**Signature:** + +```typescript +bounds: CompressedWorldMapBounds; +``` diff --git a/sdk/docs/server.compressedworldmap.codecversion.md b/sdk/docs/server.compressedworldmap.codecversion.md new file mode 100644 index 00000000..79fb5233 --- /dev/null +++ b/sdk/docs/server.compressedworldmap.codecversion.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [CompressedWorldMap](./server.compressedworldmap.md) > [codecVersion](./server.compressedworldmap.codecversion.md) + +## CompressedWorldMap.codecVersion property + +**Signature:** + +```typescript +codecVersion?: number; +``` diff --git a/sdk/docs/server.compressedworldmap.data.md b/sdk/docs/server.compressedworldmap.data.md new file mode 100644 index 00000000..b61b393d --- /dev/null +++ b/sdk/docs/server.compressedworldmap.data.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [CompressedWorldMap](./server.compressedworldmap.md) > [data](./server.compressedworldmap.data.md) + +## CompressedWorldMap.data property + +**Signature:** + +```typescript +data: string; +``` diff --git a/sdk/docs/server.compressedworldmap.entities.md b/sdk/docs/server.compressedworldmap.entities.md new file mode 100644 index 00000000..30be0137 --- /dev/null +++ b/sdk/docs/server.compressedworldmap.entities.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [CompressedWorldMap](./server.compressedworldmap.md) > [entities](./server.compressedworldmap.entities.md) + +## CompressedWorldMap.entities property + +**Signature:** + +```typescript +entities?: WorldMap['entities']; +``` diff --git a/sdk/docs/server.compressedworldmap.format.md b/sdk/docs/server.compressedworldmap.format.md new file mode 100644 index 00000000..58f07e26 --- /dev/null +++ b/sdk/docs/server.compressedworldmap.format.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [CompressedWorldMap](./server.compressedworldmap.md) > [format](./server.compressedworldmap.format.md) + +## CompressedWorldMap.format property + +**Signature:** + +```typescript +format?: 'hytopia.worldmap.compressed'; +``` diff --git a/sdk/docs/server.compressedworldmap.mapversion.md b/sdk/docs/server.compressedworldmap.mapversion.md new file mode 100644 index 00000000..e9bffd89 --- /dev/null +++ b/sdk/docs/server.compressedworldmap.mapversion.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [CompressedWorldMap](./server.compressedworldmap.md) > [mapVersion](./server.compressedworldmap.mapversion.md) + +## CompressedWorldMap.mapVersion property + +**Signature:** + +```typescript +mapVersion?: unknown; +``` diff --git a/sdk/docs/server.compressedworldmap.md b/sdk/docs/server.compressedworldmap.md new file mode 100644 index 00000000..e2528f80 --- /dev/null +++ b/sdk/docs/server.compressedworldmap.md @@ -0,0 +1,241 @@ + + +[Home](./index.md) > [server](./server.md) > [CompressedWorldMap](./server.compressedworldmap.md) + +## CompressedWorldMap interface + +**Signature:** + +```typescript +export interface CompressedWorldMap +``` + +## Properties + + + + + + + + + + + + + +
+ +Property + + + + +Modifiers + + + + +Type + + + + +Description + + +
+ +[algorithm?](./server.compressedworldmap.algorithm.md) + + + + + + + +[CompressedWorldMapAlgorithm](./server.compressedworldmapalgorithm.md) + + + + +_(Optional)_ + + +
+ +[blockTypes?](./server.compressedworldmap.blocktypes.md) + + + + + + + +[BlockTypeOptions](./server.blocktypeoptions.md)\[\] \| Record<string, [BlockTypeOptions](./server.blocktypeoptions.md)> + + + + +_(Optional)_ + + +
+ +[bounds](./server.compressedworldmap.bounds.md) + + + + + + + +CompressedWorldMapBounds + + + + + +
+ +[codecVersion?](./server.compressedworldmap.codecversion.md) + + + + + + + +number + + + + +_(Optional)_ + + +
+ +[data](./server.compressedworldmap.data.md) + + + + + + + +string + + + + + +
+ +[entities?](./server.compressedworldmap.entities.md) + + + + + + + +[WorldMap](./server.worldmap.md)\['entities'\] + + + + +_(Optional)_ + + +
+ +[format?](./server.compressedworldmap.format.md) + + + + + + + +'hytopia.worldmap.compressed' + + + + +_(Optional)_ + + +
+ +[mapVersion?](./server.compressedworldmap.mapversion.md) + + + + + + + +unknown + + + + +_(Optional)_ + + +
+ +[metadata?](./server.compressedworldmap.metadata.md) + + + + + + + +unknown + + + + +_(Optional)_ + + +
+ +[options?](./server.compressedworldmap.options.md) + + + + + + + +CompressedWorldMapOptions + + + + +_(Optional)_ + + +
+ +[version?](./server.compressedworldmap.version.md) + + + + + + + +string + + + + +_(Optional)_ + + +
diff --git a/sdk/docs/server.compressedworldmap.metadata.md b/sdk/docs/server.compressedworldmap.metadata.md new file mode 100644 index 00000000..0a7500a1 --- /dev/null +++ b/sdk/docs/server.compressedworldmap.metadata.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [CompressedWorldMap](./server.compressedworldmap.md) > [metadata](./server.compressedworldmap.metadata.md) + +## CompressedWorldMap.metadata property + +**Signature:** + +```typescript +metadata?: unknown; +``` diff --git a/sdk/docs/server.compressedworldmap.options.md b/sdk/docs/server.compressedworldmap.options.md new file mode 100644 index 00000000..c498ee92 --- /dev/null +++ b/sdk/docs/server.compressedworldmap.options.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [CompressedWorldMap](./server.compressedworldmap.md) > [options](./server.compressedworldmap.options.md) + +## CompressedWorldMap.options property + +**Signature:** + +```typescript +options?: CompressedWorldMapOptions; +``` diff --git a/sdk/docs/server.compressedworldmap.version.md b/sdk/docs/server.compressedworldmap.version.md new file mode 100644 index 00000000..7a156434 --- /dev/null +++ b/sdk/docs/server.compressedworldmap.version.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [CompressedWorldMap](./server.compressedworldmap.md) > [version](./server.compressedworldmap.version.md) + +## CompressedWorldMap.version property + +**Signature:** + +```typescript +version?: string; +``` diff --git a/sdk/docs/server.compressedworldmapalgorithm.md b/sdk/docs/server.compressedworldmapalgorithm.md new file mode 100644 index 00000000..45f64dce --- /dev/null +++ b/sdk/docs/server.compressedworldmapalgorithm.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [CompressedWorldMapAlgorithm](./server.compressedworldmapalgorithm.md) + +## CompressedWorldMapAlgorithm type + +**Signature:** + +```typescript +export type CompressedWorldMapAlgorithm = 'brotli' | 'gzip' | 'none'; +``` diff --git a/sdk/docs/server.compressworldmapoptions.algorithm.md b/sdk/docs/server.compressworldmapoptions.algorithm.md new file mode 100644 index 00000000..894dae9b --- /dev/null +++ b/sdk/docs/server.compressworldmapoptions.algorithm.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [CompressWorldMapOptions](./server.compressworldmapoptions.md) > [algorithm](./server.compressworldmapoptions.algorithm.md) + +## CompressWorldMapOptions.algorithm property + +**Signature:** + +```typescript +algorithm?: CompressedWorldMapAlgorithm; +``` diff --git a/sdk/docs/server.compressworldmapoptions.includerotations.md b/sdk/docs/server.compressworldmapoptions.includerotations.md new file mode 100644 index 00000000..c7a1236b --- /dev/null +++ b/sdk/docs/server.compressworldmapoptions.includerotations.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [CompressWorldMapOptions](./server.compressworldmapoptions.md) > [includeRotations](./server.compressworldmapoptions.includerotations.md) + +## CompressWorldMapOptions.includeRotations property + +**Signature:** + +```typescript +includeRotations?: boolean; +``` diff --git a/sdk/docs/server.compressworldmapoptions.level.md b/sdk/docs/server.compressworldmapoptions.level.md new file mode 100644 index 00000000..2aba2619 --- /dev/null +++ b/sdk/docs/server.compressworldmapoptions.level.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [CompressWorldMapOptions](./server.compressworldmapoptions.md) > [level](./server.compressworldmapoptions.level.md) + +## CompressWorldMapOptions.level property + +**Signature:** + +```typescript +level?: number; +``` diff --git a/sdk/docs/server.compressworldmapoptions.md b/sdk/docs/server.compressworldmapoptions.md new file mode 100644 index 00000000..489258ad --- /dev/null +++ b/sdk/docs/server.compressworldmapoptions.md @@ -0,0 +1,93 @@ + + +[Home](./index.md) > [server](./server.md) > [CompressWorldMapOptions](./server.compressworldmapoptions.md) + +## CompressWorldMapOptions interface + +**Signature:** + +```typescript +export interface CompressWorldMapOptions +``` + +## Properties + + + + + +
+ +Property + + + + +Modifiers + + + + +Type + + + + +Description + + +
+ +[algorithm?](./server.compressworldmapoptions.algorithm.md) + + + + + + + +[CompressedWorldMapAlgorithm](./server.compressedworldmapalgorithm.md) + + + + +_(Optional)_ + + +
+ +[includeRotations?](./server.compressworldmapoptions.includerotations.md) + + + + + + + +boolean + + + + +_(Optional)_ + + +
+ +[level?](./server.compressworldmapoptions.level.md) + + + + + + + +number + + + + +_(Optional)_ + + +
diff --git a/sdk/docs/server.createworldmapchunkcacheoptions.algorithm.md b/sdk/docs/server.createworldmapchunkcacheoptions.algorithm.md new file mode 100644 index 00000000..7c66ab09 --- /dev/null +++ b/sdk/docs/server.createworldmapchunkcacheoptions.algorithm.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [CreateWorldMapChunkCacheOptions](./server.createworldmapchunkcacheoptions.md) > [algorithm](./server.createworldmapchunkcacheoptions.algorithm.md) + +## CreateWorldMapChunkCacheOptions.algorithm property + +**Signature:** + +```typescript +algorithm?: WorldMapChunkCacheAlgorithm; +``` diff --git a/sdk/docs/server.createworldmapchunkcacheoptions.includerotations.md b/sdk/docs/server.createworldmapchunkcacheoptions.includerotations.md new file mode 100644 index 00000000..8190e0b7 --- /dev/null +++ b/sdk/docs/server.createworldmapchunkcacheoptions.includerotations.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [CreateWorldMapChunkCacheOptions](./server.createworldmapchunkcacheoptions.md) > [includeRotations](./server.createworldmapchunkcacheoptions.includerotations.md) + +## CreateWorldMapChunkCacheOptions.includeRotations property + +**Signature:** + +```typescript +includeRotations?: boolean; +``` diff --git a/sdk/docs/server.createworldmapchunkcacheoptions.level.md b/sdk/docs/server.createworldmapchunkcacheoptions.level.md new file mode 100644 index 00000000..a0cf9b43 --- /dev/null +++ b/sdk/docs/server.createworldmapchunkcacheoptions.level.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [CreateWorldMapChunkCacheOptions](./server.createworldmapchunkcacheoptions.md) > [level](./server.createworldmapchunkcacheoptions.level.md) + +## CreateWorldMapChunkCacheOptions.level property + +**Signature:** + +```typescript +level?: number; +``` diff --git a/sdk/docs/server.createworldmapchunkcacheoptions.md b/sdk/docs/server.createworldmapchunkcacheoptions.md new file mode 100644 index 00000000..133898d2 --- /dev/null +++ b/sdk/docs/server.createworldmapchunkcacheoptions.md @@ -0,0 +1,112 @@ + + +[Home](./index.md) > [server](./server.md) > [CreateWorldMapChunkCacheOptions](./server.createworldmapchunkcacheoptions.md) + +## CreateWorldMapChunkCacheOptions interface + +**Signature:** + +```typescript +export interface CreateWorldMapChunkCacheOptions +``` + +## Properties + + + + + + +
+ +Property + + + + +Modifiers + + + + +Type + + + + +Description + + +
+ +[algorithm?](./server.createworldmapchunkcacheoptions.algorithm.md) + + + + + + + +[WorldMapChunkCacheAlgorithm](./server.worldmapchunkcachealgorithm.md) + + + + +_(Optional)_ + + +
+ +[includeRotations?](./server.createworldmapchunkcacheoptions.includerotations.md) + + + + + + + +boolean + + + + +_(Optional)_ + + +
+ +[level?](./server.createworldmapchunkcacheoptions.level.md) + + + + + + + +number + + + + +_(Optional)_ + + +
+ +[sourceSha256?](./server.createworldmapchunkcacheoptions.sourcesha256.md) + + + + + + + +string + + + + +_(Optional)_ + + +
diff --git a/sdk/docs/server.createworldmapchunkcacheoptions.sourcesha256.md b/sdk/docs/server.createworldmapchunkcacheoptions.sourcesha256.md new file mode 100644 index 00000000..f54f9a0d --- /dev/null +++ b/sdk/docs/server.createworldmapchunkcacheoptions.sourcesha256.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [CreateWorldMapChunkCacheOptions](./server.createworldmapchunkcacheoptions.md) > [sourceSha256](./server.createworldmapchunkcacheoptions.sourcesha256.md) + +## CreateWorldMapChunkCacheOptions.sourceSha256 property + +**Signature:** + +```typescript +sourceSha256?: string; +``` diff --git a/sdk/docs/server.md b/sdk/docs/server.md index 8aad8a85..318d3e23 100644 --- a/sdk/docs/server.md +++ b/sdk/docs/server.md @@ -702,6 +702,42 @@ Manages all worlds in a game server. When to use: creating additional worlds, routing players, or querying the active world set. Do NOT use for: instantiating `World` directly for gameplay; use `WorldManager.createWorld` to ensure IDs and lifecycle are managed consistently. + + + +[WorldMapArtifactsGenerator](./server.worldmapartifactsgenerator.md) + + + + + + + + +[WorldMapChunkCacheCodec](./server.worldmapchunkcachecodec.md) + + + + + + + + +[WorldMapCodec](./server.worldmapcodec.md) + + + + + + + + +[WorldMapFileLoader](./server.worldmapfileloader.md) + + + + + @@ -1503,6 +1539,24 @@ Event payloads for ChunkLattice emitted events. \*\*Category:\*\* Events + + + +[CompressedWorldMap](./server.compressedworldmap.md) + + + + + + + + +[CompressWorldMapOptions](./server.compressworldmapoptions.md) + + + + + @@ -1518,6 +1572,15 @@ Use for: cone-shaped colliders. Do NOT use for: other shapes; use the matching c \*\*Category:\*\* Physics + + + +[CreateWorldMapChunkCacheOptions](./server.createworldmapchunkcacheoptions.md) + + + + + @@ -2138,6 +2201,33 @@ A map representation for initializing a world. Use for: importing static maps or tooling exports via `World.loadMap`. Do NOT use for: incremental edits while a world is live; use chunk/block APIs instead. + + + +[WorldMapChunkCache](./server.worldmapchunkcache.md) + + + + + + + + +[WorldMapChunkCacheMetadata](./server.worldmapchunkcachemetadata.md) + + + + + + + + +[WorldMapChunkCacheOptions](./server.worldmapchunkcacheoptions.md) + + + + + @@ -2225,6 +2315,15 @@ Description +[AnyWorldMap](./server.anyworldmap.md) + + + + + + + + [BlockRotation](./server.blockrotation.md) @@ -2298,6 +2397,15 @@ A set of collision groups. A callback function for a chat command. + + + +[CompressedWorldMapAlgorithm](./server.compressedworldmapalgorithm.md) + + + + + @@ -2761,5 +2869,23 @@ Callback invoked when the entity finishes moving to a waypoint. Callback invoked when a waypoint is skipped due to timeout. + + + +[WorldMapArtifacts](./server.worldmapartifacts.md) + + + + + + + + +[WorldMapChunkCacheAlgorithm](./server.worldmapchunkcachealgorithm.md) + + + + + diff --git a/sdk/docs/server.monitor.md b/sdk/docs/server.monitor.md index bb37bc71..4ed6314e 100644 --- a/sdk/docs/server.monitor.md +++ b/sdk/docs/server.monitor.md @@ -7,7 +7,7 @@ **Signature:** ```typescript -export declare function Monitor(operationName?: string): (target: any, propertyKey: string, descriptor: PropertyDescriptor) => PropertyDescriptor; +export declare function Monitor(operationName?: string): MethodDecorator; ``` ## Parameters @@ -47,5 +47,5 @@ _(Optional)_ **Returns:** -(target: any, propertyKey: string, descriptor: PropertyDescriptor) => PropertyDescriptor +MethodDecorator diff --git a/sdk/docs/server.monitorclass.md b/sdk/docs/server.monitorclass.md index b5965f85..b41cdc78 100644 --- a/sdk/docs/server.monitorclass.md +++ b/sdk/docs/server.monitorclass.md @@ -7,9 +7,7 @@ **Signature:** ```typescript -export declare function MonitorClass(prefix?: string): (constructor: T) => T; +export declare function MonitorClass(prefix?: string): (constructor: TConstructor) => TConstructor; ``` ## Parameters @@ -49,5 +47,5 @@ _(Optional)_ **Returns:** -<T extends { new (...args: any\[\]): {}; }>(constructor: T) => T +<TConstructor extends AnyConstructor>(constructor: TConstructor) => TConstructor diff --git a/sdk/docs/server.networkmetrics.md b/sdk/docs/server.networkmetrics.md index 8006319b..5e5eeba5 100644 --- a/sdk/docs/server.networkmetrics.md +++ b/sdk/docs/server.networkmetrics.md @@ -200,6 +200,18 @@ Description + + + +[reset()](./server.networkmetrics.reset.md) + + + + + + + + diff --git a/sdk/docs/server.networkmetrics.reset.md b/sdk/docs/server.networkmetrics.reset.md new file mode 100644 index 00000000..d89791fd --- /dev/null +++ b/sdk/docs/server.networkmetrics.reset.md @@ -0,0 +1,15 @@ + + +[Home](./index.md) > [server](./server.md) > [NetworkMetrics](./server.networkmetrics.md) > [reset](./server.networkmetrics.reset.md) + +## NetworkMetrics.reset() method + +**Signature:** + +```typescript +reset(): void; +``` +**Returns:** + +void + diff --git a/sdk/docs/server.performancemonitor.begintick.md b/sdk/docs/server.performancemonitor.begintick.md index b3dc1c1f..a2544e83 100644 --- a/sdk/docs/server.performancemonitor.begintick.md +++ b/sdk/docs/server.performancemonitor.begintick.md @@ -7,7 +7,7 @@ **Signature:** ```typescript -beginTick(tick: number, entityCount: number, playerCount: number): void; +beginTick(tick: number, entityCount: number, playerCount: number, worldId?: number): void; ``` ## Parameters @@ -69,6 +69,22 @@ number + + + +worldId + + + + +number + + + + +_(Optional)_ + + **Returns:** diff --git a/sdk/docs/server.performancemonitor.endtick.md b/sdk/docs/server.performancemonitor.endtick.md index e9f40f4f..6cda9824 100644 --- a/sdk/docs/server.performancemonitor.endtick.md +++ b/sdk/docs/server.performancemonitor.endtick.md @@ -7,8 +7,44 @@ **Signature:** ```typescript -endTick(): void; +endTick(worldId?: number): void; ``` + +## Parameters + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +worldId + + + + +number + + + + +_(Optional)_ + + +
**Returns:** void diff --git a/sdk/docs/server.performancemonitor.getsnapshot.md b/sdk/docs/server.performancemonitor.getsnapshot.md index 262af570..ad8b371d 100644 --- a/sdk/docs/server.performancemonitor.getsnapshot.md +++ b/sdk/docs/server.performancemonitor.getsnapshot.md @@ -7,8 +7,44 @@ **Signature:** ```typescript -getSnapshot(): PerformanceSnapshot; +getSnapshot(worldId?: number): PerformanceSnapshot; ``` + +## Parameters + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +worldId + + + + +number + + + + +_(Optional)_ + + +
**Returns:** [PerformanceSnapshot](./server.performancesnapshot.md) diff --git a/sdk/docs/server.performancemonitor.md b/sdk/docs/server.performancemonitor.md index 8f0bfc1b..802e7c42 100644 --- a/sdk/docs/server.performancemonitor.md +++ b/sdk/docs/server.performancemonitor.md @@ -115,7 +115,7 @@ Description -[beginTick(tick, entityCount, playerCount)](./server.performancemonitor.begintick.md) +[beginTick(tick, entityCount, playerCount, worldId)](./server.performancemonitor.begintick.md) @@ -163,7 +163,7 @@ Description -[endTick()](./server.performancemonitor.endtick.md) +[endTick(worldId)](./server.performancemonitor.endtick.md) @@ -187,7 +187,7 @@ Description -[getSnapshot()](./server.performancemonitor.getsnapshot.md) +[getSnapshot(worldId)](./server.performancemonitor.getsnapshot.md) @@ -235,7 +235,7 @@ Description -[recordPhase(phaseName, durationMs)](./server.performancemonitor.recordphase.md) +[recordPhase(phaseName, durationMs, worldId)](./server.performancemonitor.recordphase.md) diff --git a/sdk/docs/server.performancemonitor.recordphase.md b/sdk/docs/server.performancemonitor.recordphase.md index 14b4ddd4..25d74151 100644 --- a/sdk/docs/server.performancemonitor.recordphase.md +++ b/sdk/docs/server.performancemonitor.recordphase.md @@ -7,7 +7,7 @@ **Signature:** ```typescript -recordPhase(phaseName: string, durationMs: number): void; +recordPhase(phaseName: string, durationMs: number, worldId?: number): void; ``` ## Parameters @@ -55,6 +55,22 @@ number + + + +worldId + + + + +number + + + + +_(Optional)_ + + **Returns:** diff --git a/sdk/docs/server.tickreport.md b/sdk/docs/server.tickreport.md index 5008f106..f8084e12 100644 --- a/sdk/docs/server.tickreport.md +++ b/sdk/docs/server.tickreport.md @@ -168,5 +168,22 @@ number + + + +[worldId](./server.tickreport.worldid.md) + + + + + + + +number + + + + + diff --git a/sdk/docs/server.tickreport.worldid.md b/sdk/docs/server.tickreport.worldid.md new file mode 100644 index 00000000..043e2e90 --- /dev/null +++ b/sdk/docs/server.tickreport.worldid.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [TickReport](./server.tickreport.md) > [worldId](./server.tickreport.worldid.md) + +## TickReport.worldId property + +**Signature:** + +```typescript +worldId: number; +``` diff --git a/sdk/docs/server.world.loadmap.md b/sdk/docs/server.world.loadmap.md index 7bdf2333..249ddc06 100644 --- a/sdk/docs/server.world.loadmap.md +++ b/sdk/docs/server.world.loadmap.md @@ -11,7 +11,10 @@ Use for: initializing or fully resetting a world from serialized map data. Do NO **Signature:** ```typescript -loadMap(map: WorldMap): void; +loadMap(map: WorldMap | CompressedWorldMap | WorldMapChunkCache | string, options?: { + spawnEntities?: boolean; + preferMapArtifacts?: boolean; + }): void; ``` ## Parameters @@ -39,18 +42,34 @@ map -[WorldMap](./server.worldmap.md) +[WorldMap](./server.worldmap.md) \| [CompressedWorldMap](./server.compressedworldmap.md) \| [WorldMapChunkCache](./server.worldmapchunkcache.md) \| string -The map to load. +The map to load. Can be a map object (WorldMap, CompressedWorldMap, WorldMapChunkCache) or a string file path. When a string is provided, WorldMapFileLoader auto-detects the best available format. \*\*Side effects:\*\* Clears the chunk lattice, registers block types, and spawns entities. \*\*Category:\*\* Core + + + +options + + + + +{ spawnEntities?: boolean; preferMapArtifacts?: boolean; } + + + + +_(Optional)_ + + **Returns:** diff --git a/sdk/docs/server.world.md b/sdk/docs/server.world.md index e9016bed..685847dc 100644 --- a/sdk/docs/server.world.md +++ b/sdk/docs/server.world.md @@ -623,7 +623,7 @@ Description -[loadMap(map)](./server.world.loadmap.md) +[loadMap(map, options)](./server.world.loadmap.md) diff --git a/sdk/docs/server.worldmapartifacts.md b/sdk/docs/server.worldmapartifacts.md new file mode 100644 index 00000000..6c44f8cb --- /dev/null +++ b/sdk/docs/server.worldmapartifacts.md @@ -0,0 +1,19 @@ + + +[Home](./index.md) > [server](./server.md) > [WorldMapArtifacts](./server.worldmapartifacts.md) + +## WorldMapArtifacts type + +**Signature:** + +```typescript +export type WorldMapArtifacts = { + compressedMap: CompressedWorldMap; + compressedMapJson: string; + compressedMapSha256: string; + chunkCache: WorldMapChunkCache; + chunkCacheBuffer: Buffer; +}; +``` +**References:** [CompressedWorldMap](./server.compressedworldmap.md), [WorldMapChunkCache](./server.worldmapchunkcache.md) + diff --git a/sdk/docs/server.worldmapartifactsgenerator.create.md b/sdk/docs/server.worldmapartifactsgenerator.create.md new file mode 100644 index 00000000..ee54a311 --- /dev/null +++ b/sdk/docs/server.worldmapartifactsgenerator.create.md @@ -0,0 +1,68 @@ + + +[Home](./index.md) > [server](./server.md) > [WorldMapArtifactsGenerator](./server.worldmapartifactsgenerator.md) > [create](./server.worldmapartifactsgenerator.create.md) + +## WorldMapArtifactsGenerator.create() method + +**Signature:** + +```typescript +static create(worldMap: WorldMap, options?: { + compressed?: CompressWorldMapOptions; + chunkCache?: Omit; + }): WorldMapArtifacts; +``` + +## Parameters + + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +worldMap + + + + +[WorldMap](./server.worldmap.md) + + + + + +
+ +options + + + + +{ compressed?: [CompressWorldMapOptions](./server.compressworldmapoptions.md); chunkCache?: Omit<[CreateWorldMapChunkCacheOptions](./server.createworldmapchunkcacheoptions.md), 'sourceSha256'>; } + + + + +_(Optional)_ + + +
+**Returns:** + +[WorldMapArtifacts](./server.worldmapartifacts.md) + diff --git a/sdk/docs/server.worldmapartifactsgenerator.md b/sdk/docs/server.worldmapartifactsgenerator.md new file mode 100644 index 00000000..2c0466db --- /dev/null +++ b/sdk/docs/server.worldmapartifactsgenerator.md @@ -0,0 +1,45 @@ + + +[Home](./index.md) > [server](./server.md) > [WorldMapArtifactsGenerator](./server.worldmapartifactsgenerator.md) + +## WorldMapArtifactsGenerator class + +**Signature:** + +```typescript +export default class WorldMapArtifactsGenerator +``` + +## Methods + + + +
+ +Method + + + + +Modifiers + + + + +Description + + +
+ +[create(worldMap, options)](./server.worldmapartifactsgenerator.create.md) + + + + +`static` + + + + + +
diff --git a/sdk/docs/server.worldmapchunkcache.algorithm.md b/sdk/docs/server.worldmapchunkcache.algorithm.md new file mode 100644 index 00000000..30ae32d6 --- /dev/null +++ b/sdk/docs/server.worldmapchunkcache.algorithm.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [WorldMapChunkCache](./server.worldmapchunkcache.md) > [algorithm](./server.worldmapchunkcache.algorithm.md) + +## WorldMapChunkCache.algorithm property + +**Signature:** + +```typescript +algorithm?: WorldMapChunkCacheAlgorithm; +``` diff --git a/sdk/docs/server.worldmapchunkcache.blocktypes.md b/sdk/docs/server.worldmapchunkcache.blocktypes.md new file mode 100644 index 00000000..594eb988 --- /dev/null +++ b/sdk/docs/server.worldmapchunkcache.blocktypes.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [WorldMapChunkCache](./server.worldmapchunkcache.md) > [blockTypes](./server.worldmapchunkcache.blocktypes.md) + +## WorldMapChunkCache.blockTypes property + +**Signature:** + +```typescript +blockTypes?: BlockTypeOptions[] | Record; +``` diff --git a/sdk/docs/server.worldmapchunkcache.codecversion.md b/sdk/docs/server.worldmapchunkcache.codecversion.md new file mode 100644 index 00000000..9d31567e --- /dev/null +++ b/sdk/docs/server.worldmapchunkcache.codecversion.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [WorldMapChunkCache](./server.worldmapchunkcache.md) > [codecVersion](./server.worldmapchunkcache.codecversion.md) + +## WorldMapChunkCache.codecVersion property + +**Signature:** + +```typescript +codecVersion?: number; +``` diff --git a/sdk/docs/server.worldmapchunkcache.data.md b/sdk/docs/server.worldmapchunkcache.data.md new file mode 100644 index 00000000..c7f24d07 --- /dev/null +++ b/sdk/docs/server.worldmapchunkcache.data.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [WorldMapChunkCache](./server.worldmapchunkcache.md) > [data](./server.worldmapchunkcache.data.md) + +## WorldMapChunkCache.data property + +**Signature:** + +```typescript +data: string; +``` diff --git a/sdk/docs/server.worldmapchunkcache.entities.md b/sdk/docs/server.worldmapchunkcache.entities.md new file mode 100644 index 00000000..e0f673ee --- /dev/null +++ b/sdk/docs/server.worldmapchunkcache.entities.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [WorldMapChunkCache](./server.worldmapchunkcache.md) > [entities](./server.worldmapchunkcache.entities.md) + +## WorldMapChunkCache.entities property + +**Signature:** + +```typescript +entities?: WorldMap['entities']; +``` diff --git a/sdk/docs/server.worldmapchunkcache.format.md b/sdk/docs/server.worldmapchunkcache.format.md new file mode 100644 index 00000000..7e026c7e --- /dev/null +++ b/sdk/docs/server.worldmapchunkcache.format.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [WorldMapChunkCache](./server.worldmapchunkcache.md) > [format](./server.worldmapchunkcache.format.md) + +## WorldMapChunkCache.format property + +**Signature:** + +```typescript +format?: 'hytopia.worldmap.chunk-cache'; +``` diff --git a/sdk/docs/server.worldmapchunkcache.md b/sdk/docs/server.worldmapchunkcache.md new file mode 100644 index 00000000..89c78ddf --- /dev/null +++ b/sdk/docs/server.worldmapchunkcache.md @@ -0,0 +1,167 @@ + + +[Home](./index.md) > [server](./server.md) > [WorldMapChunkCache](./server.worldmapchunkcache.md) + +## WorldMapChunkCache interface + +**Signature:** + +```typescript +export interface WorldMapChunkCache +``` + +## Properties + + + + + + + + + +
+ +Property + + + + +Modifiers + + + + +Type + + + + +Description + + +
+ +[algorithm?](./server.worldmapchunkcache.algorithm.md) + + + + + + + +[WorldMapChunkCacheAlgorithm](./server.worldmapchunkcachealgorithm.md) + + + + +_(Optional)_ + + +
+ +[blockTypes?](./server.worldmapchunkcache.blocktypes.md) + + + + + + + +[BlockTypeOptions](./server.blocktypeoptions.md)\[\] \| Record<string, [BlockTypeOptions](./server.blocktypeoptions.md)> + + + + +_(Optional)_ + + +
+ +[codecVersion?](./server.worldmapchunkcache.codecversion.md) + + + + + + + +number + + + + +_(Optional)_ + + +
+ +[data](./server.worldmapchunkcache.data.md) + + + + + + + +string + + + + + +
+ +[entities?](./server.worldmapchunkcache.entities.md) + + + + + + + +[WorldMap](./server.worldmap.md)\['entities'\] + + + + +_(Optional)_ + + +
+ +[format?](./server.worldmapchunkcache.format.md) + + + + + + + +'hytopia.worldmap.chunk-cache' + + + + +_(Optional)_ + + +
+ +[version?](./server.worldmapchunkcache.version.md) + + + + + + + +string + + + + +_(Optional)_ + + +
diff --git a/sdk/docs/server.worldmapchunkcache.version.md b/sdk/docs/server.worldmapchunkcache.version.md new file mode 100644 index 00000000..cacefed9 --- /dev/null +++ b/sdk/docs/server.worldmapchunkcache.version.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [WorldMapChunkCache](./server.worldmapchunkcache.md) > [version](./server.worldmapchunkcache.version.md) + +## WorldMapChunkCache.version property + +**Signature:** + +```typescript +version?: string; +``` diff --git a/sdk/docs/server.worldmapchunkcachealgorithm.md b/sdk/docs/server.worldmapchunkcachealgorithm.md new file mode 100644 index 00000000..c95568a1 --- /dev/null +++ b/sdk/docs/server.worldmapchunkcachealgorithm.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [WorldMapChunkCacheAlgorithm](./server.worldmapchunkcachealgorithm.md) + +## WorldMapChunkCacheAlgorithm type + +**Signature:** + +```typescript +export type WorldMapChunkCacheAlgorithm = 'brotli' | 'gzip' | 'none'; +``` diff --git a/sdk/docs/server.worldmapchunkcachecodec.create.md b/sdk/docs/server.worldmapchunkcachecodec.create.md new file mode 100644 index 00000000..62920c9c --- /dev/null +++ b/sdk/docs/server.worldmapchunkcachecodec.create.md @@ -0,0 +1,65 @@ + + +[Home](./index.md) > [server](./server.md) > [WorldMapChunkCacheCodec](./server.worldmapchunkcachecodec.md) > [create](./server.worldmapchunkcachecodec.create.md) + +## WorldMapChunkCacheCodec.create() method + +**Signature:** + +```typescript +static create(map: WorldMap | CompressedWorldMap, options?: CreateWorldMapChunkCacheOptions): WorldMapChunkCache; +``` + +## Parameters + + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +map + + + + +[WorldMap](./server.worldmap.md) \| [CompressedWorldMap](./server.compressedworldmap.md) + + + + + +
+ +options + + + + +[CreateWorldMapChunkCacheOptions](./server.createworldmapchunkcacheoptions.md) + + + + +_(Optional)_ + + +
+**Returns:** + +[WorldMapChunkCache](./server.worldmapchunkcache.md) + diff --git a/sdk/docs/server.worldmapchunkcachecodec.decode.md b/sdk/docs/server.worldmapchunkcachecodec.decode.md new file mode 100644 index 00000000..0492d0b4 --- /dev/null +++ b/sdk/docs/server.worldmapchunkcachecodec.decode.md @@ -0,0 +1,52 @@ + + +[Home](./index.md) > [server](./server.md) > [WorldMapChunkCacheCodec](./server.worldmapchunkcachecodec.md) > [decode](./server.worldmapchunkcachecodec.decode.md) + +## WorldMapChunkCacheCodec.decode() method + +**Signature:** + +```typescript +static decode(cache: WorldMapChunkCache): { + metadata: WorldMapChunkCacheMetadata; + chunks: Iterable; + }; +``` + +## Parameters + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +cache + + + + +[WorldMapChunkCache](./server.worldmapchunkcache.md) + + + + + +
+**Returns:** + +{ metadata: [WorldMapChunkCacheMetadata](./server.worldmapchunkcachemetadata.md); chunks: Iterable<ChunkCacheChunk>; } + diff --git a/sdk/docs/server.worldmapchunkcachecodec.decodechunks.md b/sdk/docs/server.worldmapchunkcachecodec.decodechunks.md new file mode 100644 index 00000000..9bfee60e --- /dev/null +++ b/sdk/docs/server.worldmapchunkcachecodec.decodechunks.md @@ -0,0 +1,49 @@ + + +[Home](./index.md) > [server](./server.md) > [WorldMapChunkCacheCodec](./server.worldmapchunkcachecodec.md) > [decodeChunks](./server.worldmapchunkcachecodec.decodechunks.md) + +## WorldMapChunkCacheCodec.decodeChunks() method + +**Signature:** + +```typescript +static decodeChunks(cache: WorldMapChunkCache): Iterable; +``` + +## Parameters + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +cache + + + + +[WorldMapChunkCache](./server.worldmapchunkcache.md) + + + + + +
+**Returns:** + +Iterable<ChunkCacheChunk> + diff --git a/sdk/docs/server.worldmapchunkcachecodec.decodemetadata.md b/sdk/docs/server.worldmapchunkcachecodec.decodemetadata.md new file mode 100644 index 00000000..3abbd91c --- /dev/null +++ b/sdk/docs/server.worldmapchunkcachecodec.decodemetadata.md @@ -0,0 +1,49 @@ + + +[Home](./index.md) > [server](./server.md) > [WorldMapChunkCacheCodec](./server.worldmapchunkcachecodec.md) > [decodeMetadata](./server.worldmapchunkcachecodec.decodemetadata.md) + +## WorldMapChunkCacheCodec.decodeMetadata() method + +**Signature:** + +```typescript +static decodeMetadata(cache: WorldMapChunkCache): WorldMapChunkCacheMetadata; +``` + +## Parameters + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +cache + + + + +[WorldMapChunkCache](./server.worldmapchunkcache.md) + + + + + +
+**Returns:** + +[WorldMapChunkCacheMetadata](./server.worldmapchunkcachemetadata.md) + diff --git a/sdk/docs/server.worldmapchunkcachecodec.decompresstoworldmap.md b/sdk/docs/server.worldmapchunkcachecodec.decompresstoworldmap.md new file mode 100644 index 00000000..1d42c6ad --- /dev/null +++ b/sdk/docs/server.worldmapchunkcachecodec.decompresstoworldmap.md @@ -0,0 +1,49 @@ + + +[Home](./index.md) > [server](./server.md) > [WorldMapChunkCacheCodec](./server.worldmapchunkcachecodec.md) > [decompressToWorldMap](./server.worldmapchunkcachecodec.decompresstoworldmap.md) + +## WorldMapChunkCacheCodec.decompressToWorldMap() method + +**Signature:** + +```typescript +static decompressToWorldMap(cache: WorldMapChunkCache): WorldMap; +``` + +## Parameters + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +cache + + + + +[WorldMapChunkCache](./server.worldmapchunkcache.md) + + + + + +
+**Returns:** + +[WorldMap](./server.worldmap.md) + diff --git a/sdk/docs/server.worldmapchunkcachecodec.isworldmapchunkcache.md b/sdk/docs/server.worldmapchunkcachecodec.isworldmapchunkcache.md new file mode 100644 index 00000000..f067858a --- /dev/null +++ b/sdk/docs/server.worldmapchunkcachecodec.isworldmapchunkcache.md @@ -0,0 +1,49 @@ + + +[Home](./index.md) > [server](./server.md) > [WorldMapChunkCacheCodec](./server.worldmapchunkcachecodec.md) > [isWorldMapChunkCache](./server.worldmapchunkcachecodec.isworldmapchunkcache.md) + +## WorldMapChunkCacheCodec.isWorldMapChunkCache() method + +**Signature:** + +```typescript +static isWorldMapChunkCache(value: unknown): value is WorldMapChunkCache; +``` + +## Parameters + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +value + + + + +unknown + + + + + +
+**Returns:** + +value is [WorldMapChunkCache](./server.worldmapchunkcache.md) + diff --git a/sdk/docs/server.worldmapchunkcachecodec.md b/sdk/docs/server.worldmapchunkcachecodec.md new file mode 100644 index 00000000..f96b9ea3 --- /dev/null +++ b/sdk/docs/server.worldmapchunkcachecodec.md @@ -0,0 +1,115 @@ + + +[Home](./index.md) > [server](./server.md) > [WorldMapChunkCacheCodec](./server.worldmapchunkcachecodec.md) + +## WorldMapChunkCacheCodec class + +**Signature:** + +```typescript +export default class WorldMapChunkCacheCodec +``` + +## Methods + + + + + + + + +
+ +Method + + + + +Modifiers + + + + +Description + + +
+ +[create(map, options)](./server.worldmapchunkcachecodec.create.md) + + + + +`static` + + + + + +
+ +[decode(cache)](./server.worldmapchunkcachecodec.decode.md) + + + + +`static` + + + + + +
+ +[decodeChunks(cache)](./server.worldmapchunkcachecodec.decodechunks.md) + + + + +`static` + + + + + +
+ +[decodeMetadata(cache)](./server.worldmapchunkcachecodec.decodemetadata.md) + + + + +`static` + + + + + +
+ +[decompressToWorldMap(cache)](./server.worldmapchunkcachecodec.decompresstoworldmap.md) + + + + +`static` + + + + + +
+ +[isWorldMapChunkCache(value)](./server.worldmapchunkcachecodec.isworldmapchunkcache.md) + + + + +`static` + + + + + +
diff --git a/sdk/docs/server.worldmapchunkcachemetadata.blocktypes.md b/sdk/docs/server.worldmapchunkcachemetadata.blocktypes.md new file mode 100644 index 00000000..80d22118 --- /dev/null +++ b/sdk/docs/server.worldmapchunkcachemetadata.blocktypes.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [WorldMapChunkCacheMetadata](./server.worldmapchunkcachemetadata.md) > [blockTypes](./server.worldmapchunkcachemetadata.blocktypes.md) + +## WorldMapChunkCacheMetadata.blockTypes property + +**Signature:** + +```typescript +blockTypes?: BlockTypeOptions[]; +``` diff --git a/sdk/docs/server.worldmapchunkcachemetadata.entities.md b/sdk/docs/server.worldmapchunkcachemetadata.entities.md new file mode 100644 index 00000000..ee99c6eb --- /dev/null +++ b/sdk/docs/server.worldmapchunkcachemetadata.entities.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [WorldMapChunkCacheMetadata](./server.worldmapchunkcachemetadata.md) > [entities](./server.worldmapchunkcachemetadata.entities.md) + +## WorldMapChunkCacheMetadata.entities property + +**Signature:** + +```typescript +entities?: WorldMap['entities']; +``` diff --git a/sdk/docs/server.worldmapchunkcachemetadata.mapversion.md b/sdk/docs/server.worldmapchunkcachemetadata.mapversion.md new file mode 100644 index 00000000..60f5a785 --- /dev/null +++ b/sdk/docs/server.worldmapchunkcachemetadata.mapversion.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [WorldMapChunkCacheMetadata](./server.worldmapchunkcachemetadata.md) > [mapVersion](./server.worldmapchunkcachemetadata.mapversion.md) + +## WorldMapChunkCacheMetadata.mapVersion property + +**Signature:** + +```typescript +mapVersion?: unknown; +``` diff --git a/sdk/docs/server.worldmapchunkcachemetadata.md b/sdk/docs/server.worldmapchunkcachemetadata.md new file mode 100644 index 00000000..f351607f --- /dev/null +++ b/sdk/docs/server.worldmapchunkcachemetadata.md @@ -0,0 +1,150 @@ + + +[Home](./index.md) > [server](./server.md) > [WorldMapChunkCacheMetadata](./server.worldmapchunkcachemetadata.md) + +## WorldMapChunkCacheMetadata interface + +**Signature:** + +```typescript +export interface WorldMapChunkCacheMetadata +``` + +## Properties + + + + + + + + +
+ +Property + + + + +Modifiers + + + + +Type + + + + +Description + + +
+ +[blockTypes?](./server.worldmapchunkcachemetadata.blocktypes.md) + + + + + + + +[BlockTypeOptions](./server.blocktypeoptions.md)\[\] + + + + +_(Optional)_ + + +
+ +[entities?](./server.worldmapchunkcachemetadata.entities.md) + + + + + + + +[WorldMap](./server.worldmap.md)\['entities'\] + + + + +_(Optional)_ + + +
+ +[mapVersion?](./server.worldmapchunkcachemetadata.mapversion.md) + + + + + + + +unknown + + + + +_(Optional)_ + + +
+ +[metadata?](./server.worldmapchunkcachemetadata.metadata.md) + + + + + + + +unknown + + + + +_(Optional)_ + + +
+ +[options?](./server.worldmapchunkcachemetadata.options.md) + + + + + + + +[WorldMapChunkCacheOptions](./server.worldmapchunkcacheoptions.md) + + + + +_(Optional)_ + + +
+ +[source?](./server.worldmapchunkcachemetadata.source.md) + + + + + + + +{ sha256?: string; } + + + + +_(Optional)_ + + +
diff --git a/sdk/docs/server.worldmapchunkcachemetadata.metadata.md b/sdk/docs/server.worldmapchunkcachemetadata.metadata.md new file mode 100644 index 00000000..90e9cf05 --- /dev/null +++ b/sdk/docs/server.worldmapchunkcachemetadata.metadata.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [WorldMapChunkCacheMetadata](./server.worldmapchunkcachemetadata.md) > [metadata](./server.worldmapchunkcachemetadata.metadata.md) + +## WorldMapChunkCacheMetadata.metadata property + +**Signature:** + +```typescript +metadata?: unknown; +``` diff --git a/sdk/docs/server.worldmapchunkcachemetadata.options.md b/sdk/docs/server.worldmapchunkcachemetadata.options.md new file mode 100644 index 00000000..e551d6b8 --- /dev/null +++ b/sdk/docs/server.worldmapchunkcachemetadata.options.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [WorldMapChunkCacheMetadata](./server.worldmapchunkcachemetadata.md) > [options](./server.worldmapchunkcachemetadata.options.md) + +## WorldMapChunkCacheMetadata.options property + +**Signature:** + +```typescript +options?: WorldMapChunkCacheOptions; +``` diff --git a/sdk/docs/server.worldmapchunkcachemetadata.source.md b/sdk/docs/server.worldmapchunkcachemetadata.source.md new file mode 100644 index 00000000..8964183a --- /dev/null +++ b/sdk/docs/server.worldmapchunkcachemetadata.source.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [server](./server.md) > [WorldMapChunkCacheMetadata](./server.worldmapchunkcachemetadata.md) > [source](./server.worldmapchunkcachemetadata.source.md) + +## WorldMapChunkCacheMetadata.source property + +**Signature:** + +```typescript +source?: { + sha256?: string; + }; +``` diff --git a/sdk/docs/server.worldmapchunkcacheoptions.md b/sdk/docs/server.worldmapchunkcacheoptions.md new file mode 100644 index 00000000..24340617 --- /dev/null +++ b/sdk/docs/server.worldmapchunkcacheoptions.md @@ -0,0 +1,55 @@ + + +[Home](./index.md) > [server](./server.md) > [WorldMapChunkCacheOptions](./server.worldmapchunkcacheoptions.md) + +## WorldMapChunkCacheOptions interface + +**Signature:** + +```typescript +export interface WorldMapChunkCacheOptions +``` + +## Properties + + + +
+ +Property + + + + +Modifiers + + + + +Type + + + + +Description + + +
+ +[rotations?](./server.worldmapchunkcacheoptions.rotations.md) + + + + + + + +boolean + + + + +_(Optional)_ + + +
diff --git a/sdk/docs/server.worldmapchunkcacheoptions.rotations.md b/sdk/docs/server.worldmapchunkcacheoptions.rotations.md new file mode 100644 index 00000000..81e5fc3e --- /dev/null +++ b/sdk/docs/server.worldmapchunkcacheoptions.rotations.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [server](./server.md) > [WorldMapChunkCacheOptions](./server.worldmapchunkcacheoptions.md) > [rotations](./server.worldmapchunkcacheoptions.rotations.md) + +## WorldMapChunkCacheOptions.rotations property + +**Signature:** + +```typescript +rotations?: boolean; +``` diff --git a/sdk/docs/server.worldmapcodec.compress.md b/sdk/docs/server.worldmapcodec.compress.md new file mode 100644 index 00000000..f9b93da4 --- /dev/null +++ b/sdk/docs/server.worldmapcodec.compress.md @@ -0,0 +1,65 @@ + + +[Home](./index.md) > [server](./server.md) > [WorldMapCodec](./server.worldmapcodec.md) > [compress](./server.worldmapcodec.compress.md) + +## WorldMapCodec.compress() method + +**Signature:** + +```typescript +static compress(map: WorldMap, options?: CompressWorldMapOptions): CompressedWorldMap; +``` + +## Parameters + + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +map + + + + +[WorldMap](./server.worldmap.md) + + + + + +
+ +options + + + + +[CompressWorldMapOptions](./server.compressworldmapoptions.md) + + + + +_(Optional)_ + + +
+**Returns:** + +[CompressedWorldMap](./server.compressedworldmap.md) + diff --git a/sdk/docs/server.worldmapcodec.decodeblockentries.md b/sdk/docs/server.worldmapcodec.decodeblockentries.md new file mode 100644 index 00000000..cceac58f --- /dev/null +++ b/sdk/docs/server.worldmapcodec.decodeblockentries.md @@ -0,0 +1,53 @@ + + +[Home](./index.md) > [server](./server.md) > [WorldMapCodec](./server.worldmapcodec.md) > [decodeBlockEntries](./server.worldmapcodec.decodeblockentries.md) + +## WorldMapCodec.decodeBlockEntries() method + +**Signature:** + +```typescript +static decodeBlockEntries(map: CompressedWorldMap): Iterable<{ + globalCoordinate: Vector3Like; + blockTypeId: number; + blockRotation?: BlockRotation; + }>; +``` + +## Parameters + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +map + + + + +[CompressedWorldMap](./server.compressedworldmap.md) + + + + + +
+**Returns:** + +Iterable<{ globalCoordinate: [Vector3Like](./server.vector3like.md); blockTypeId: number; blockRotation?: [BlockRotation](./server.blockrotation.md); }> + diff --git a/sdk/docs/server.worldmapcodec.decompresstoworldmap.md b/sdk/docs/server.worldmapcodec.decompresstoworldmap.md new file mode 100644 index 00000000..aa220fea --- /dev/null +++ b/sdk/docs/server.worldmapcodec.decompresstoworldmap.md @@ -0,0 +1,49 @@ + + +[Home](./index.md) > [server](./server.md) > [WorldMapCodec](./server.worldmapcodec.md) > [decompressToWorldMap](./server.worldmapcodec.decompresstoworldmap.md) + +## WorldMapCodec.decompressToWorldMap() method + +**Signature:** + +```typescript +static decompressToWorldMap(map: CompressedWorldMap): WorldMap; +``` + +## Parameters + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +map + + + + +[CompressedWorldMap](./server.compressedworldmap.md) + + + + + +
+**Returns:** + +[WorldMap](./server.worldmap.md) + diff --git a/sdk/docs/server.worldmapcodec.iscompressedworldmap.md b/sdk/docs/server.worldmapcodec.iscompressedworldmap.md new file mode 100644 index 00000000..3362375d --- /dev/null +++ b/sdk/docs/server.worldmapcodec.iscompressedworldmap.md @@ -0,0 +1,49 @@ + + +[Home](./index.md) > [server](./server.md) > [WorldMapCodec](./server.worldmapcodec.md) > [isCompressedWorldMap](./server.worldmapcodec.iscompressedworldmap.md) + +## WorldMapCodec.isCompressedWorldMap() method + +**Signature:** + +```typescript +static isCompressedWorldMap(value: unknown): value is CompressedWorldMap; +``` + +## Parameters + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +value + + + + +unknown + + + + + +
+**Returns:** + +value is [CompressedWorldMap](./server.compressedworldmap.md) + diff --git a/sdk/docs/server.worldmapcodec.md b/sdk/docs/server.worldmapcodec.md new file mode 100644 index 00000000..32b4234b --- /dev/null +++ b/sdk/docs/server.worldmapcodec.md @@ -0,0 +1,87 @@ + + +[Home](./index.md) > [server](./server.md) > [WorldMapCodec](./server.worldmapcodec.md) + +## WorldMapCodec class + +**Signature:** + +```typescript +export default class WorldMapCodec +``` + +## Methods + + + + + + +
+ +Method + + + + +Modifiers + + + + +Description + + +
+ +[compress(map, options)](./server.worldmapcodec.compress.md) + + + + +`static` + + + + + +
+ +[decodeBlockEntries(map)](./server.worldmapcodec.decodeblockentries.md) + + + + +`static` + + + + + +
+ +[decompressToWorldMap(map)](./server.worldmapcodec.decompresstoworldmap.md) + + + + +`static` + + + + + +
+ +[isCompressedWorldMap(value)](./server.worldmapcodec.iscompressedworldmap.md) + + + + +`static` + + + + + +
diff --git a/sdk/docs/server.worldmapfileloader.load.md b/sdk/docs/server.worldmapfileloader.load.md new file mode 100644 index 00000000..e4443aa4 --- /dev/null +++ b/sdk/docs/server.worldmapfileloader.load.md @@ -0,0 +1,68 @@ + + +[Home](./index.md) > [server](./server.md) > [WorldMapFileLoader](./server.worldmapfileloader.md) > [load](./server.worldmapfileloader.load.md) + +## WorldMapFileLoader.load() method + +**Signature:** + +```typescript +static load(mapPath: string, options?: { + preferChunkCache?: boolean; + warnings?: 'auto' | 'always' | 'never'; + }): AnyWorldMap; +``` + +## Parameters + + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +mapPath + + + + +string + + + + + +
+ +options + + + + +{ preferChunkCache?: boolean; warnings?: 'auto' \| 'always' \| 'never'; } + + + + +_(Optional)_ + + +
+**Returns:** + +[AnyWorldMap](./server.anyworldmap.md) + diff --git a/sdk/docs/server.worldmapfileloader.md b/sdk/docs/server.worldmapfileloader.md new file mode 100644 index 00000000..1281321c --- /dev/null +++ b/sdk/docs/server.worldmapfileloader.md @@ -0,0 +1,45 @@ + + +[Home](./index.md) > [server](./server.md) > [WorldMapFileLoader](./server.worldmapfileloader.md) + +## WorldMapFileLoader class + +**Signature:** + +```typescript +export default class WorldMapFileLoader +``` + +## Methods + + + +
+ +Method + + + + +Modifiers + + + + +Description + + +
+ +[load(mapPath, options)](./server.worldmapfileloader.load.md) + + + + +`static` + + + + + +
diff --git a/sdk/docs/server.worldoptions.map.md b/sdk/docs/server.worldoptions.map.md index 8707c113..77b009d1 100644 --- a/sdk/docs/server.worldoptions.map.md +++ b/sdk/docs/server.worldoptions.map.md @@ -9,5 +9,5 @@ The map of the world. **Signature:** ```typescript -map?: WorldMap; +map?: WorldMap | CompressedWorldMap | WorldMapChunkCache | string; ``` diff --git a/sdk/docs/server.worldoptions.md b/sdk/docs/server.worldoptions.md index de1b151f..901a31c3 100644 --- a/sdk/docs/server.worldoptions.md +++ b/sdk/docs/server.worldoptions.md @@ -243,7 +243,7 @@ The unique ID of the world. -[WorldMap](./server.worldmap.md) +[WorldMap](./server.worldmap.md) \| [CompressedWorldMap](./server.compressedworldmap.md) \| [WorldMapChunkCache](./server.worldmapchunkcache.md) \| string diff --git a/sdk/server.api.json b/sdk/server.api.json index ce872fcc..65857012 100644 --- a/sdk/server.api.json +++ b/sdk/server.api.json @@ -173,6 +173,51 @@ "name": "", "preserveMemberOrder": false, "members": [ + { + "kind": "TypeAlias", + "canonicalReference": "server!AnyWorldMap:type", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "export type AnyWorldMap = " + }, + { + "kind": "Reference", + "text": "WorldMap", + "canonicalReference": "server!WorldMap:interface" + }, + { + "kind": "Content", + "text": " | " + }, + { + "kind": "Reference", + "text": "CompressedWorldMap", + "canonicalReference": "server!CompressedWorldMap:interface" + }, + { + "kind": "Content", + "text": " | " + }, + { + "kind": "Reference", + "text": "WorldMapChunkCache", + "canonicalReference": "server!WorldMapChunkCache:interface" + }, + { + "kind": "Content", + "text": ";" + } + ], + "fileUrlPath": "src/worlds/maps/WorldMapFileLoader.ts", + "releaseTag": "Public", + "name": "AnyWorldMap", + "typeTokenRange": { + "startIndex": 1, + "endIndex": 6 + } + }, { "kind": "Class", "canonicalReference": "server!AssetsLibrary:class", @@ -13475,6 +13520,478 @@ "endIndex": 4 } }, + { + "kind": "Interface", + "canonicalReference": "server!CompressedWorldMap:interface", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "export interface CompressedWorldMap " + } + ], + "fileUrlPath": "src/worlds/maps/WorldMapCodec.ts", + "releaseTag": "Public", + "name": "CompressedWorldMap", + "preserveMemberOrder": false, + "members": [ + { + "kind": "PropertySignature", + "canonicalReference": "server!CompressedWorldMap#algorithm:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "algorithm?: " + }, + { + "kind": "Reference", + "text": "CompressedWorldMapAlgorithm", + "canonicalReference": "server!CompressedWorldMapAlgorithm:type" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "algorithm", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!CompressedWorldMap#blockTypes:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "blockTypes?: " + }, + { + "kind": "Reference", + "text": "BlockTypeOptions", + "canonicalReference": "server!BlockTypeOptions:interface" + }, + { + "kind": "Content", + "text": "[] | " + }, + { + "kind": "Reference", + "text": "Record", + "canonicalReference": "!Record:type" + }, + { + "kind": "Content", + "text": "" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "blockTypes", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 7 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!CompressedWorldMap#bounds:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "bounds: " + }, + { + "kind": "Reference", + "text": "CompressedWorldMapBounds", + "canonicalReference": "server!~CompressedWorldMapBounds:interface" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": false, + "releaseTag": "Public", + "name": "bounds", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!CompressedWorldMap#codecVersion:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "codecVersion?: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "codecVersion", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!CompressedWorldMap#data:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "data: " + }, + { + "kind": "Content", + "text": "string" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": false, + "releaseTag": "Public", + "name": "data", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!CompressedWorldMap#entities:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "entities?: " + }, + { + "kind": "Reference", + "text": "WorldMap", + "canonicalReference": "server!WorldMap:interface" + }, + { + "kind": "Content", + "text": "['entities']" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "entities", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 3 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!CompressedWorldMap#format:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "format?: " + }, + { + "kind": "Content", + "text": "'hytopia.worldmap.compressed'" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "format", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!CompressedWorldMap#mapVersion:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "mapVersion?: " + }, + { + "kind": "Content", + "text": "unknown" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "mapVersion", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!CompressedWorldMap#metadata:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "metadata?: " + }, + { + "kind": "Content", + "text": "unknown" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "metadata", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!CompressedWorldMap#options:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "options?: " + }, + { + "kind": "Reference", + "text": "CompressedWorldMapOptions", + "canonicalReference": "server!~CompressedWorldMapOptions:interface" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "options", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!CompressedWorldMap#version:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "version?: " + }, + { + "kind": "Content", + "text": "string" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "version", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + } + ], + "extendsTokenRanges": [] + }, + { + "kind": "TypeAlias", + "canonicalReference": "server!CompressedWorldMapAlgorithm:type", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "export type CompressedWorldMapAlgorithm = " + }, + { + "kind": "Content", + "text": "'brotli' | 'gzip' | 'none'" + }, + { + "kind": "Content", + "text": ";" + } + ], + "fileUrlPath": "src/worlds/maps/WorldMapCodec.ts", + "releaseTag": "Public", + "name": "CompressedWorldMapAlgorithm", + "typeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "Interface", + "canonicalReference": "server!CompressWorldMapOptions:interface", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "export interface CompressWorldMapOptions " + } + ], + "fileUrlPath": "src/worlds/maps/WorldMapCodec.ts", + "releaseTag": "Public", + "name": "CompressWorldMapOptions", + "preserveMemberOrder": false, + "members": [ + { + "kind": "PropertySignature", + "canonicalReference": "server!CompressWorldMapOptions#algorithm:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "algorithm?: " + }, + { + "kind": "Reference", + "text": "CompressedWorldMapAlgorithm", + "canonicalReference": "server!CompressedWorldMapAlgorithm:type" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "algorithm", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!CompressWorldMapOptions#includeRotations:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "includeRotations?: " + }, + { + "kind": "Content", + "text": "boolean" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "includeRotations", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!CompressWorldMapOptions#level:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "level?: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "level", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + } + ], + "extendsTokenRanges": [] + }, { "kind": "Interface", "canonicalReference": "server!ConeColliderOptions:interface", @@ -13836,6 +14353,133 @@ ], "implementsTokenRanges": [] }, + { + "kind": "Interface", + "canonicalReference": "server!CreateWorldMapChunkCacheOptions:interface", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "export interface CreateWorldMapChunkCacheOptions " + } + ], + "fileUrlPath": "src/worlds/maps/WorldMapChunkCacheCodec.ts", + "releaseTag": "Public", + "name": "CreateWorldMapChunkCacheOptions", + "preserveMemberOrder": false, + "members": [ + { + "kind": "PropertySignature", + "canonicalReference": "server!CreateWorldMapChunkCacheOptions#algorithm:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "algorithm?: " + }, + { + "kind": "Reference", + "text": "WorldMapChunkCacheAlgorithm", + "canonicalReference": "server!WorldMapChunkCacheAlgorithm:type" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "algorithm", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!CreateWorldMapChunkCacheOptions#includeRotations:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "includeRotations?: " + }, + { + "kind": "Content", + "text": "boolean" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "includeRotations", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!CreateWorldMapChunkCacheOptions#level:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "level?: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "level", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!CreateWorldMapChunkCacheOptions#sourceSha256:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "sourceSha256?: " + }, + { + "kind": "Content", + "text": "string" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "sourceSha256", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + } + ], + "extendsTokenRanges": [] + }, { "kind": "Interface", "canonicalReference": "server!CylinderColliderOptions:interface", @@ -34470,23 +35114,10 @@ "kind": "Content", "text": "): " }, - { - "kind": "Content", - "text": "(target: any, propertyKey: string, descriptor: " - }, - { - "kind": "Reference", - "text": "PropertyDescriptor", - "canonicalReference": "!PropertyDescriptor:interface" - }, - { - "kind": "Content", - "text": ") => " - }, { "kind": "Reference", - "text": "PropertyDescriptor", - "canonicalReference": "!PropertyDescriptor:interface" + "text": "MethodDecorator", + "canonicalReference": "!MethodDecorator:type" }, { "kind": "Content", @@ -34496,7 +35127,7 @@ "fileUrlPath": "src/metrics/Monitor.ts", "returnTypeTokenRange": { "startIndex": 3, - "endIndex": 7 + "endIndex": 4 }, "releaseTag": "Public", "overloadIndex": 1, @@ -34693,7 +35324,16 @@ }, { "kind": "Content", - "text": "(constructor: T) => T" + "text": "(constructor: TConstructor) => TConstructor" }, { "kind": "Content", @@ -34703,7 +35343,7 @@ "fileUrlPath": "src/metrics/Monitor.ts", "returnTypeTokenRange": { "startIndex": 3, - "endIndex": 4 + "endIndex": 6 }, "releaseTag": "Public", "overloadIndex": 1, @@ -35250,6 +35890,37 @@ "isAbstract": false, "name": "recordSerialization" }, + { + "kind": "Method", + "canonicalReference": "server!NetworkMetrics#reset:member(1)", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "reset(): " + }, + { + "kind": "Content", + "text": "void" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [], + "isOptional": false, + "isAbstract": false, + "name": "reset" + }, { "kind": "Method", "canonicalReference": "server!NetworkMetrics#setConnectedPlayers:member(1)", @@ -43648,6 +44319,14 @@ "kind": "Content", "text": "number" }, + { + "kind": "Content", + "text": ", worldId?: " + }, + { + "kind": "Content", + "text": "number" + }, { "kind": "Content", "text": "): " @@ -43663,8 +44342,8 @@ ], "isStatic": false, "returnTypeTokenRange": { - "startIndex": 7, - "endIndex": 8 + "startIndex": 9, + "endIndex": 10 }, "releaseTag": "Public", "isProtected": false, @@ -43693,6 +44372,14 @@ "endIndex": 6 }, "isOptional": false + }, + { + "parameterName": "worldId", + "parameterTypeTokenRange": { + "startIndex": 7, + "endIndex": 8 + }, + "isOptional": true } ], "isOptional": false, @@ -43834,7 +44521,15 @@ "excerptTokens": [ { "kind": "Content", - "text": "endTick(): " + "text": "endTick(worldId?: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": "): " }, { "kind": "Content", @@ -43847,13 +44542,22 @@ ], "isStatic": false, "returnTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 + "startIndex": 3, + "endIndex": 4 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, - "parameters": [], + "parameters": [ + { + "parameterName": "worldId", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": true + } + ], "isOptional": false, "isAbstract": false, "name": "endTick" @@ -43901,7 +44605,15 @@ "excerptTokens": [ { "kind": "Content", - "text": "getSnapshot(): " + "text": "getSnapshot(worldId?: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": "): " }, { "kind": "Reference", @@ -43915,13 +44627,22 @@ ], "isStatic": false, "returnTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 + "startIndex": 3, + "endIndex": 4 }, "releaseTag": "Public", "isProtected": false, "overloadIndex": 1, - "parameters": [], + "parameters": [ + { + "parameterName": "worldId", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": true + } + ], "isOptional": false, "isAbstract": false, "name": "getSnapshot" @@ -44286,6 +45007,14 @@ "kind": "Content", "text": "number" }, + { + "kind": "Content", + "text": ", worldId?: " + }, + { + "kind": "Content", + "text": "number" + }, { "kind": "Content", "text": "): " @@ -44301,8 +45030,8 @@ ], "isStatic": false, "returnTypeTokenRange": { - "startIndex": 5, - "endIndex": 6 + "startIndex": 7, + "endIndex": 8 }, "releaseTag": "Public", "isProtected": false, @@ -44323,6 +45052,14 @@ "endIndex": 4 }, "isOptional": false + }, + { + "parameterName": "worldId", + "parameterTypeTokenRange": { + "startIndex": 5, + "endIndex": 6 + }, + "isOptional": true } ], "isOptional": false, @@ -61417,6 +62154,33 @@ "startIndex": 1, "endIndex": 2 } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!TickReport#worldId:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "worldId: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": false, + "releaseTag": "Public", + "name": "worldId", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } } ], "extendsTokenRanges": [] @@ -66157,7 +66921,7 @@ { "kind": "Method", "canonicalReference": "server!World#loadMap:member(1)", - "docComment": "/**\n * Loads a map into the world, replacing any prior map contents.\n *\n * Use for: initializing or fully resetting a world from serialized map data. Do NOT use for: incremental edits while players are actively interacting with the world.\n *\n * @remarks\n *\n * - Clears existing blocks and colliders via `ChunkLattice.clear`. - Registers block types from the map into `World.blockTypeRegistry`. - Spawns map entities as `isEnvironmental: true` by default.\n *\n * @param map - The map to load.\n *\n * **Side effects:** Clears the chunk lattice, registers block types, and spawns entities.\n *\n * **Category:** Core\n */\n", + "docComment": "/**\n * Loads a map into the world, replacing any prior map contents.\n *\n * Use for: initializing or fully resetting a world from serialized map data. Do NOT use for: incremental edits while players are actively interacting with the world.\n *\n * @remarks\n *\n * - Clears existing blocks and colliders via `ChunkLattice.clear`. - Registers block types from the map into `World.blockTypeRegistry`. - Spawns map entities as `isEnvironmental: true` by default.\n *\n * @param map - The map to load. Can be a map object (WorldMap, CompressedWorldMap, WorldMapChunkCache) or a string file path. When a string is provided, WorldMapFileLoader auto-detects the best available format.\n *\n * **Side effects:** Clears the chunk lattice, registers block types, and spawns entities.\n *\n * **Category:** Core\n */\n", "excerptTokens": [ { "kind": "Content", @@ -66168,6 +66932,36 @@ "text": "WorldMap", "canonicalReference": "server!WorldMap:interface" }, + { + "kind": "Content", + "text": " | " + }, + { + "kind": "Reference", + "text": "CompressedWorldMap", + "canonicalReference": "server!CompressedWorldMap:interface" + }, + { + "kind": "Content", + "text": " | " + }, + { + "kind": "Reference", + "text": "WorldMapChunkCache", + "canonicalReference": "server!WorldMapChunkCache:interface" + }, + { + "kind": "Content", + "text": " | string" + }, + { + "kind": "Content", + "text": ", options?: " + }, + { + "kind": "Content", + "text": "{\n spawnEntities?: boolean;\n preferMapArtifacts?: boolean;\n }" + }, { "kind": "Content", "text": "): " @@ -66183,8 +66977,8 @@ ], "isStatic": false, "returnTypeTokenRange": { - "startIndex": 3, - "endIndex": 4 + "startIndex": 10, + "endIndex": 11 }, "releaseTag": "Public", "isProtected": false, @@ -66194,9 +66988,17 @@ "parameterName": "map", "parameterTypeTokenRange": { "startIndex": 1, - "endIndex": 2 + "endIndex": 7 }, "isOptional": false + }, + { + "parameterName": "options", + "parameterTypeTokenRange": { + "startIndex": 8, + "endIndex": 9 + }, + "isOptional": true } ], "isOptional": false, @@ -69016,60 +69818,198 @@ "extendsTokenRanges": [] }, { - "kind": "Interface", - "canonicalReference": "server!WorldOptions:interface", - "docComment": "/**\n * Options for creating a World instance.\n *\n * Use for: initializing a world and its environment at construction time. Do NOT use for: runtime changes; use the corresponding `set*` methods on `World`.\n *\n * @remarks\n *\n * Options are applied once at construction time. For runtime changes, use the corresponding `set*` methods on `World`.\n *\n * **Category:** Core\n *\n * @public\n */\n", + "kind": "TypeAlias", + "canonicalReference": "server!WorldMapArtifacts:type", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "export interface WorldOptions " + "text": "export type WorldMapArtifacts = " + }, + { + "kind": "Content", + "text": "{\n compressedMap: " + }, + { + "kind": "Reference", + "text": "CompressedWorldMap", + "canonicalReference": "server!CompressedWorldMap:interface" + }, + { + "kind": "Content", + "text": ";\n compressedMapJson: string;\n compressedMapSha256: string;\n chunkCache: " + }, + { + "kind": "Reference", + "text": "WorldMapChunkCache", + "canonicalReference": "server!WorldMapChunkCache:interface" + }, + { + "kind": "Content", + "text": ";\n chunkCacheBuffer: " + }, + { + "kind": "Reference", + "text": "Buffer", + "canonicalReference": "!\"\\\"buffer\\\"\".__global.Buffer:interface" + }, + { + "kind": "Content", + "text": ";\n}" + }, + { + "kind": "Content", + "text": ";" } ], - "fileUrlPath": "src/worlds/World.ts", + "fileUrlPath": "src/worlds/maps/WorldMapArtifacts.ts", "releaseTag": "Public", - "name": "WorldOptions", + "name": "WorldMapArtifacts", + "typeTokenRange": { + "startIndex": 1, + "endIndex": 8 + } + }, + { + "kind": "Class", + "canonicalReference": "server!WorldMapArtifactsGenerator:class", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "export default class WorldMapArtifactsGenerator " + } + ], + "fileUrlPath": "src/worlds/maps/WorldMapArtifacts.ts", + "releaseTag": "Public", + "isAbstract": false, + "name": "WorldMapArtifactsGenerator", "preserveMemberOrder": false, "members": [ { - "kind": "PropertySignature", - "canonicalReference": "server!WorldOptions#ambientLightColor:member", - "docComment": "/**\n * The color of the ambient light for the world.\n */\n", + "kind": "Method", + "canonicalReference": "server!WorldMapArtifactsGenerator.create:member(1)", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "ambientLightColor?: " + "text": "static create(worldMap: " }, { "kind": "Reference", - "text": "RgbColor", - "canonicalReference": "server!RgbColor:interface" + "text": "WorldMap", + "canonicalReference": "server!WorldMap:interface" + }, + { + "kind": "Content", + "text": ", options?: " + }, + { + "kind": "Content", + "text": "{\n compressed?: " + }, + { + "kind": "Reference", + "text": "CompressWorldMapOptions", + "canonicalReference": "server!CompressWorldMapOptions:interface" + }, + { + "kind": "Content", + "text": ";\n chunkCache?: " + }, + { + "kind": "Reference", + "text": "Omit", + "canonicalReference": "!Omit:type" + }, + { + "kind": "Content", + "text": "<" + }, + { + "kind": "Reference", + "text": "CreateWorldMapChunkCacheOptions", + "canonicalReference": "server!CreateWorldMapChunkCacheOptions:interface" + }, + { + "kind": "Content", + "text": ", 'sourceSha256'>;\n }" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "WorldMapArtifacts", + "canonicalReference": "server!WorldMapArtifacts:type" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": true, + "isStatic": true, + "returnTypeTokenRange": { + "startIndex": 11, + "endIndex": 12 + }, "releaseTag": "Public", - "name": "ambientLightColor", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } - }, + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "worldMap", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + }, + { + "parameterName": "options", + "parameterTypeTokenRange": { + "startIndex": 3, + "endIndex": 10 + }, + "isOptional": true + } + ], + "isOptional": false, + "isAbstract": false, + "name": "create" + } + ], + "implementsTokenRanges": [] + }, + { + "kind": "Interface", + "canonicalReference": "server!WorldMapChunkCache:interface", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "export interface WorldMapChunkCache " + } + ], + "fileUrlPath": "src/worlds/maps/WorldMapChunkCacheCodec.ts", + "releaseTag": "Public", + "name": "WorldMapChunkCache", + "preserveMemberOrder": false, + "members": [ { "kind": "PropertySignature", - "canonicalReference": "server!WorldOptions#ambientLightIntensity:member", - "docComment": "/**\n * The intensity of the ambient light for the world. 0 to 1+\n */\n", + "canonicalReference": "server!WorldMapChunkCache#algorithm:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "ambientLightIntensity?: " + "text": "algorithm?: " }, { - "kind": "Content", - "text": "number" + "kind": "Reference", + "text": "WorldMapChunkCacheAlgorithm", + "canonicalReference": "server!WorldMapChunkCacheAlgorithm:type" }, { "kind": "Content", @@ -69079,7 +70019,7 @@ "isReadonly": false, "isOptional": true, "releaseTag": "Public", - "name": "ambientLightIntensity", + "name": "algorithm", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -69087,17 +70027,39 @@ }, { "kind": "PropertySignature", - "canonicalReference": "server!WorldOptions#directionalLightColor:member", - "docComment": "/**\n * The color of the directional light for the world.\n */\n", + "canonicalReference": "server!WorldMapChunkCache#blockTypes:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "directionalLightColor?: " + "text": "blockTypes?: " }, { "kind": "Reference", - "text": "RgbColor", - "canonicalReference": "server!RgbColor:interface" + "text": "BlockTypeOptions", + "canonicalReference": "server!BlockTypeOptions:interface" + }, + { + "kind": "Content", + "text": "[] | " + }, + { + "kind": "Reference", + "text": "Record", + "canonicalReference": "!Record:type" + }, + { + "kind": "Content", + "text": "" }, { "kind": "Content", @@ -69107,20 +70069,20 @@ "isReadonly": false, "isOptional": true, "releaseTag": "Public", - "name": "directionalLightColor", + "name": "blockTypes", "propertyTypeTokenRange": { "startIndex": 1, - "endIndex": 2 + "endIndex": 7 } }, { "kind": "PropertySignature", - "canonicalReference": "server!WorldOptions#directionalLightIntensity:member", - "docComment": "/**\n * The intensity of the directional light for the world. 0 to 1+\n */\n", + "canonicalReference": "server!WorldMapChunkCache#codecVersion:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "directionalLightIntensity?: " + "text": "codecVersion?: " }, { "kind": "Content", @@ -69134,7 +70096,7 @@ "isReadonly": false, "isOptional": true, "releaseTag": "Public", - "name": "directionalLightIntensity", + "name": "codecVersion", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -69142,17 +70104,16 @@ }, { "kind": "PropertySignature", - "canonicalReference": "server!WorldOptions#directionalLightPosition:member", - "docComment": "/**\n * The position the directional light originates from for the world.\n */\n", + "canonicalReference": "server!WorldMapChunkCache#data:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "directionalLightPosition?: " + "text": "data: " }, { - "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "kind": "Content", + "text": "string" }, { "kind": "Content", @@ -69160,9 +70121,9 @@ } ], "isReadonly": false, - "isOptional": true, + "isOptional": false, "releaseTag": "Public", - "name": "directionalLightPosition", + "name": "data", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -69170,17 +70131,21 @@ }, { "kind": "PropertySignature", - "canonicalReference": "server!WorldOptions#fogColor:member", - "docComment": "/**\n * The color of the fog for the world. Defaults to ambient light color.\n */\n", + "canonicalReference": "server!WorldMapChunkCache#entities:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "fogColor?: " + "text": "entities?: " }, { "kind": "Reference", - "text": "RgbColor", - "canonicalReference": "server!RgbColor:interface" + "text": "WorldMap", + "canonicalReference": "server!WorldMap:interface" + }, + { + "kind": "Content", + "text": "['entities']" }, { "kind": "Content", @@ -69190,24 +70155,24 @@ "isReadonly": false, "isOptional": true, "releaseTag": "Public", - "name": "fogColor", + "name": "entities", "propertyTypeTokenRange": { "startIndex": 1, - "endIndex": 2 + "endIndex": 3 } }, { "kind": "PropertySignature", - "canonicalReference": "server!WorldOptions#fogFar:member", - "docComment": "/**\n * The maximum distance from the camera at which fog stops being applied.\n */\n", + "canonicalReference": "server!WorldMapChunkCache#format:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "fogFar?: " + "text": "format?: " }, { "kind": "Content", - "text": "number" + "text": "'hytopia.worldmap.chunk-cache'" }, { "kind": "Content", @@ -69217,7 +70182,7 @@ "isReadonly": false, "isOptional": true, "releaseTag": "Public", - "name": "fogFar", + "name": "format", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 @@ -69225,16 +70190,16 @@ }, { "kind": "PropertySignature", - "canonicalReference": "server!WorldOptions#fogNear:member", - "docComment": "/**\n * The minimum distance from the camera to start applying fog.\n */\n", + "canonicalReference": "server!WorldMapChunkCache#version:member", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "fogNear?: " + "text": "version?: " }, { "kind": "Content", - "text": "number" + "text": "string" }, { "kind": "Content", @@ -69244,93 +70209,1357 @@ "isReadonly": false, "isOptional": true, "releaseTag": "Public", - "name": "fogNear", + "name": "version", "propertyTypeTokenRange": { "startIndex": 1, "endIndex": 2 } + } + ], + "extendsTokenRanges": [] + }, + { + "kind": "TypeAlias", + "canonicalReference": "server!WorldMapChunkCacheAlgorithm:type", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "export type WorldMapChunkCacheAlgorithm = " }, { - "kind": "PropertySignature", - "canonicalReference": "server!WorldOptions#gravity:member", - "docComment": "/**\n * The gravity vector for the world.\n */\n", + "kind": "Content", + "text": "'brotli' | 'gzip' | 'none'" + }, + { + "kind": "Content", + "text": ";" + } + ], + "fileUrlPath": "src/worlds/maps/WorldMapChunkCacheCodec.ts", + "releaseTag": "Public", + "name": "WorldMapChunkCacheAlgorithm", + "typeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "Class", + "canonicalReference": "server!WorldMapChunkCacheCodec:class", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "export default class WorldMapChunkCacheCodec " + } + ], + "fileUrlPath": "src/worlds/maps/WorldMapChunkCacheCodec.ts", + "releaseTag": "Public", + "isAbstract": false, + "name": "WorldMapChunkCacheCodec", + "preserveMemberOrder": false, + "members": [ + { + "kind": "Method", + "canonicalReference": "server!WorldMapChunkCacheCodec.create:member(1)", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "gravity?: " + "text": "static create(map: " }, { "kind": "Reference", - "text": "Vector3Like", - "canonicalReference": "server!Vector3Like:interface" + "text": "WorldMap", + "canonicalReference": "server!WorldMap:interface" + }, + { + "kind": "Content", + "text": " | " + }, + { + "kind": "Reference", + "text": "CompressedWorldMap", + "canonicalReference": "server!CompressedWorldMap:interface" + }, + { + "kind": "Content", + "text": ", options?: " + }, + { + "kind": "Reference", + "text": "CreateWorldMapChunkCacheOptions", + "canonicalReference": "server!CreateWorldMapChunkCacheOptions:interface" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "WorldMapChunkCache", + "canonicalReference": "server!WorldMapChunkCache:interface" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": true, + "isStatic": true, + "returnTypeTokenRange": { + "startIndex": 7, + "endIndex": 8 + }, "releaseTag": "Public", - "name": "gravity", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "map", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 4 + }, + "isOptional": false + }, + { + "parameterName": "options", + "parameterTypeTokenRange": { + "startIndex": 5, + "endIndex": 6 + }, + "isOptional": true + } + ], + "isOptional": false, + "isAbstract": false, + "name": "create" }, { - "kind": "PropertySignature", - "canonicalReference": "server!WorldOptions#id:member", - "docComment": "/**\n * The unique ID of the world.\n */\n", + "kind": "Method", + "canonicalReference": "server!WorldMapChunkCacheCodec.decode:member(1)", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "id: " + "text": "static decode(cache: " + }, + { + "kind": "Reference", + "text": "WorldMapChunkCache", + "canonicalReference": "server!WorldMapChunkCache:interface" }, { "kind": "Content", - "text": "number" + "text": "): " + }, + { + "kind": "Content", + "text": "{\n metadata: " + }, + { + "kind": "Reference", + "text": "WorldMapChunkCacheMetadata", + "canonicalReference": "server!WorldMapChunkCacheMetadata:interface" + }, + { + "kind": "Content", + "text": ";\n chunks: " + }, + { + "kind": "Reference", + "text": "Iterable", + "canonicalReference": "!Iterable:interface" + }, + { + "kind": "Content", + "text": "<" + }, + { + "kind": "Reference", + "text": "ChunkCacheChunk", + "canonicalReference": "server!~ChunkCacheChunk:interface" + }, + { + "kind": "Content", + "text": ">;\n }" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, + "isStatic": true, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 10 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "cache", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], "isOptional": false, + "isAbstract": false, + "name": "decode" + }, + { + "kind": "Method", + "canonicalReference": "server!WorldMapChunkCacheCodec.decodeChunks:member(1)", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "static decodeChunks(cache: " + }, + { + "kind": "Reference", + "text": "WorldMapChunkCache", + "canonicalReference": "server!WorldMapChunkCache:interface" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "Iterable", + "canonicalReference": "!Iterable:interface" + }, + { + "kind": "Content", + "text": "<" + }, + { + "kind": "Reference", + "text": "ChunkCacheChunk", + "canonicalReference": "server!~ChunkCacheChunk:interface" + }, + { + "kind": "Content", + "text": ">" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": true, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 7 + }, "releaseTag": "Public", - "name": "id", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 - } + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "cache", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "decodeChunks" }, { - "kind": "PropertySignature", - "canonicalReference": "server!WorldOptions#map:member", - "docComment": "/**\n * The map of the world.\n */\n", + "kind": "Method", + "canonicalReference": "server!WorldMapChunkCacheCodec.decodeMetadata:member(1)", + "docComment": "", "excerptTokens": [ { "kind": "Content", - "text": "map?: " + "text": "static decodeMetadata(cache: " }, { "kind": "Reference", - "text": "WorldMap", - "canonicalReference": "server!WorldMap:interface" + "text": "WorldMapChunkCache", + "canonicalReference": "server!WorldMapChunkCache:interface" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "WorldMapChunkCacheMetadata", + "canonicalReference": "server!WorldMapChunkCacheMetadata:interface" }, { "kind": "Content", "text": ";" } ], - "isReadonly": false, - "isOptional": true, + "isStatic": true, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, "releaseTag": "Public", - "name": "map", - "propertyTypeTokenRange": { - "startIndex": 1, - "endIndex": 2 + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "cache", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "decodeMetadata" + }, + { + "kind": "Method", + "canonicalReference": "server!WorldMapChunkCacheCodec.decompressToWorldMap:member(1)", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "static decompressToWorldMap(cache: " + }, + { + "kind": "Reference", + "text": "WorldMapChunkCache", + "canonicalReference": "server!WorldMapChunkCache:interface" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "WorldMap", + "canonicalReference": "server!WorldMap:interface" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": true, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "cache", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "decompressToWorldMap" + }, + { + "kind": "Method", + "canonicalReference": "server!WorldMapChunkCacheCodec.isWorldMapChunkCache:member(1)", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "static isWorldMapChunkCache(value: " + }, + { + "kind": "Content", + "text": "unknown" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "value", + "canonicalReference": "server!~value" + }, + { + "kind": "Content", + "text": " is " + }, + { + "kind": "Reference", + "text": "WorldMapChunkCache", + "canonicalReference": "server!WorldMapChunkCache:interface" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": true, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 6 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "value", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "isWorldMapChunkCache" + } + ], + "implementsTokenRanges": [] + }, + { + "kind": "Interface", + "canonicalReference": "server!WorldMapChunkCacheMetadata:interface", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "export interface WorldMapChunkCacheMetadata " + } + ], + "fileUrlPath": "src/worlds/maps/WorldMapChunkCacheCodec.ts", + "releaseTag": "Public", + "name": "WorldMapChunkCacheMetadata", + "preserveMemberOrder": false, + "members": [ + { + "kind": "PropertySignature", + "canonicalReference": "server!WorldMapChunkCacheMetadata#blockTypes:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "blockTypes?: " + }, + { + "kind": "Reference", + "text": "BlockTypeOptions", + "canonicalReference": "server!BlockTypeOptions:interface" + }, + { + "kind": "Content", + "text": "[]" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "blockTypes", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 3 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!WorldMapChunkCacheMetadata#entities:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "entities?: " + }, + { + "kind": "Reference", + "text": "WorldMap", + "canonicalReference": "server!WorldMap:interface" + }, + { + "kind": "Content", + "text": "['entities']" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "entities", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 3 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!WorldMapChunkCacheMetadata#mapVersion:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "mapVersion?: " + }, + { + "kind": "Content", + "text": "unknown" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "mapVersion", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!WorldMapChunkCacheMetadata#metadata:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "metadata?: " + }, + { + "kind": "Content", + "text": "unknown" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "metadata", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!WorldMapChunkCacheMetadata#options:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "options?: " + }, + { + "kind": "Reference", + "text": "WorldMapChunkCacheOptions", + "canonicalReference": "server!WorldMapChunkCacheOptions:interface" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "options", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!WorldMapChunkCacheMetadata#source:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "source?: " + }, + { + "kind": "Content", + "text": "{\n sha256?: string;\n }" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "source", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + } + ], + "extendsTokenRanges": [] + }, + { + "kind": "Interface", + "canonicalReference": "server!WorldMapChunkCacheOptions:interface", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "export interface WorldMapChunkCacheOptions " + } + ], + "fileUrlPath": "src/worlds/maps/WorldMapChunkCacheCodec.ts", + "releaseTag": "Public", + "name": "WorldMapChunkCacheOptions", + "preserveMemberOrder": false, + "members": [ + { + "kind": "PropertySignature", + "canonicalReference": "server!WorldMapChunkCacheOptions#rotations:member", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "rotations?: " + }, + { + "kind": "Content", + "text": "boolean" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "rotations", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + } + ], + "extendsTokenRanges": [] + }, + { + "kind": "Class", + "canonicalReference": "server!WorldMapCodec:class", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "export default class WorldMapCodec " + } + ], + "fileUrlPath": "src/worlds/maps/WorldMapCodec.ts", + "releaseTag": "Public", + "isAbstract": false, + "name": "WorldMapCodec", + "preserveMemberOrder": false, + "members": [ + { + "kind": "Method", + "canonicalReference": "server!WorldMapCodec.compress:member(1)", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "static compress(map: " + }, + { + "kind": "Reference", + "text": "WorldMap", + "canonicalReference": "server!WorldMap:interface" + }, + { + "kind": "Content", + "text": ", options?: " + }, + { + "kind": "Reference", + "text": "CompressWorldMapOptions", + "canonicalReference": "server!CompressWorldMapOptions:interface" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "CompressedWorldMap", + "canonicalReference": "server!CompressedWorldMap:interface" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": true, + "returnTypeTokenRange": { + "startIndex": 5, + "endIndex": 6 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "map", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + }, + { + "parameterName": "options", + "parameterTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "isOptional": true + } + ], + "isOptional": false, + "isAbstract": false, + "name": "compress" + }, + { + "kind": "Method", + "canonicalReference": "server!WorldMapCodec.decodeBlockEntries:member(1)", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "static decodeBlockEntries(map: " + }, + { + "kind": "Reference", + "text": "CompressedWorldMap", + "canonicalReference": "server!CompressedWorldMap:interface" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "Iterable", + "canonicalReference": "!Iterable:interface" + }, + { + "kind": "Content", + "text": "<{\n globalCoordinate: " + }, + { + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" + }, + { + "kind": "Content", + "text": ";\n blockTypeId: number;\n blockRotation?: " + }, + { + "kind": "Reference", + "text": "BlockRotation", + "canonicalReference": "server!BlockRotation:type" + }, + { + "kind": "Content", + "text": ";\n }>" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": true, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 9 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "map", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "decodeBlockEntries" + }, + { + "kind": "Method", + "canonicalReference": "server!WorldMapCodec.decompressToWorldMap:member(1)", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "static decompressToWorldMap(map: " + }, + { + "kind": "Reference", + "text": "CompressedWorldMap", + "canonicalReference": "server!CompressedWorldMap:interface" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "WorldMap", + "canonicalReference": "server!WorldMap:interface" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": true, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "map", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "decompressToWorldMap" + }, + { + "kind": "Method", + "canonicalReference": "server!WorldMapCodec.isCompressedWorldMap:member(1)", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "static isCompressedWorldMap(value: " + }, + { + "kind": "Content", + "text": "unknown" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "value", + "canonicalReference": "server!~value" + }, + { + "kind": "Content", + "text": " is " + }, + { + "kind": "Reference", + "text": "CompressedWorldMap", + "canonicalReference": "server!CompressedWorldMap:interface" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": true, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 6 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "value", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "isCompressedWorldMap" + } + ], + "implementsTokenRanges": [] + }, + { + "kind": "Class", + "canonicalReference": "server!WorldMapFileLoader:class", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "export default class WorldMapFileLoader " + } + ], + "fileUrlPath": "src/worlds/maps/WorldMapFileLoader.ts", + "releaseTag": "Public", + "isAbstract": false, + "name": "WorldMapFileLoader", + "preserveMemberOrder": false, + "members": [ + { + "kind": "Method", + "canonicalReference": "server!WorldMapFileLoader.load:member(1)", + "docComment": "", + "excerptTokens": [ + { + "kind": "Content", + "text": "static load(mapPath: " + }, + { + "kind": "Content", + "text": "string" + }, + { + "kind": "Content", + "text": ", options?: " + }, + { + "kind": "Content", + "text": "{\n preferChunkCache?: boolean;\n warnings?: 'auto' | 'always' | 'never';\n }" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Reference", + "text": "AnyWorldMap", + "canonicalReference": "server!AnyWorldMap:type" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": true, + "returnTypeTokenRange": { + "startIndex": 5, + "endIndex": 6 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "mapPath", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + }, + { + "parameterName": "options", + "parameterTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "isOptional": true + } + ], + "isOptional": false, + "isAbstract": false, + "name": "load" + } + ], + "implementsTokenRanges": [] + }, + { + "kind": "Interface", + "canonicalReference": "server!WorldOptions:interface", + "docComment": "/**\n * Options for creating a World instance.\n *\n * Use for: initializing a world and its environment at construction time. Do NOT use for: runtime changes; use the corresponding `set*` methods on `World`.\n *\n * @remarks\n *\n * Options are applied once at construction time. For runtime changes, use the corresponding `set*` methods on `World`.\n *\n * **Category:** Core\n *\n * @public\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "export interface WorldOptions " + } + ], + "fileUrlPath": "src/worlds/World.ts", + "releaseTag": "Public", + "name": "WorldOptions", + "preserveMemberOrder": false, + "members": [ + { + "kind": "PropertySignature", + "canonicalReference": "server!WorldOptions#ambientLightColor:member", + "docComment": "/**\n * The color of the ambient light for the world.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "ambientLightColor?: " + }, + { + "kind": "Reference", + "text": "RgbColor", + "canonicalReference": "server!RgbColor:interface" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "ambientLightColor", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!WorldOptions#ambientLightIntensity:member", + "docComment": "/**\n * The intensity of the ambient light for the world. 0 to 1+\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "ambientLightIntensity?: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "ambientLightIntensity", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!WorldOptions#directionalLightColor:member", + "docComment": "/**\n * The color of the directional light for the world.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "directionalLightColor?: " + }, + { + "kind": "Reference", + "text": "RgbColor", + "canonicalReference": "server!RgbColor:interface" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "directionalLightColor", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!WorldOptions#directionalLightIntensity:member", + "docComment": "/**\n * The intensity of the directional light for the world. 0 to 1+\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "directionalLightIntensity?: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "directionalLightIntensity", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!WorldOptions#directionalLightPosition:member", + "docComment": "/**\n * The position the directional light originates from for the world.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "directionalLightPosition?: " + }, + { + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "directionalLightPosition", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!WorldOptions#fogColor:member", + "docComment": "/**\n * The color of the fog for the world. Defaults to ambient light color.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "fogColor?: " + }, + { + "kind": "Reference", + "text": "RgbColor", + "canonicalReference": "server!RgbColor:interface" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "fogColor", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!WorldOptions#fogFar:member", + "docComment": "/**\n * The maximum distance from the camera at which fog stops being applied.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "fogFar?: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "fogFar", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!WorldOptions#fogNear:member", + "docComment": "/**\n * The minimum distance from the camera to start applying fog.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "fogNear?: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "fogNear", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!WorldOptions#gravity:member", + "docComment": "/**\n * The gravity vector for the world.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "gravity?: " + }, + { + "kind": "Reference", + "text": "Vector3Like", + "canonicalReference": "server!Vector3Like:interface" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "gravity", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!WorldOptions#id:member", + "docComment": "/**\n * The unique ID of the world.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "id: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": false, + "releaseTag": "Public", + "name": "id", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + } + }, + { + "kind": "PropertySignature", + "canonicalReference": "server!WorldOptions#map:member", + "docComment": "/**\n * The map of the world.\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "map?: " + }, + { + "kind": "Reference", + "text": "WorldMap", + "canonicalReference": "server!WorldMap:interface" + }, + { + "kind": "Content", + "text": " | " + }, + { + "kind": "Reference", + "text": "CompressedWorldMap", + "canonicalReference": "server!CompressedWorldMap:interface" + }, + { + "kind": "Content", + "text": " | " + }, + { + "kind": "Reference", + "text": "WorldMapChunkCache", + "canonicalReference": "server!WorldMapChunkCache:interface" + }, + { + "kind": "Content", + "text": " | string" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isReadonly": false, + "isOptional": true, + "releaseTag": "Public", + "name": "map", + "propertyTypeTokenRange": { + "startIndex": 1, + "endIndex": 7 } }, { diff --git a/sdk/server.d.ts b/sdk/server.d.ts index e0650e9e..dfc98ae1 100644 --- a/sdk/server.d.ts +++ b/sdk/server.d.ts @@ -12,6 +12,10 @@ import type { Socket } from 'net'; import { WebSocket as WebSocket_2 } from 'ws'; import type { WebTransportSessionImpl } from '@fails-components/webtransport/dist/lib/types'; +declare type AnyConstructor = abstract new (...args: unknown[]) => unknown; + +export declare type AnyWorldMap = WorldMap | CompressedWorldMap | WorldMapChunkCache; + /** * Manages the assets library and synchronization of assets * to the local assets directory in development. @@ -1809,6 +1813,12 @@ export declare class Chunk implements protocol.Serializable { +} + +declare interface ChunkCacheChunk { + originCoordinate: Vector3Like; + blocks: Uint8Array; + blockRotations: Map; } /** @@ -2649,6 +2659,43 @@ export declare class CollisionGroupsBuilder { */ export declare type CommandCallback = (player: Player, args: string[], message: string) => void; +export declare interface CompressedWorldMap { + format?: 'hytopia.worldmap.compressed'; + codecVersion?: number; + version?: string; + algorithm?: CompressedWorldMapAlgorithm; + data: string; + bounds: CompressedWorldMapBounds; + blockTypes?: BlockTypeOptions[] | Record; + entities?: WorldMap['entities']; + options?: CompressedWorldMapOptions; + metadata?: unknown; + mapVersion?: unknown; +} + +export declare type CompressedWorldMapAlgorithm = 'brotli' | 'gzip' | 'none'; + +declare interface CompressedWorldMapBounds { + minX: number; + minY: number; + minZ: number; + maxX: number; + maxY: number; + maxZ: number; +} + +declare interface CompressedWorldMapOptions { + rotations?: boolean; + useDelta?: boolean; + useVarint?: boolean; +} + +export declare interface CompressWorldMapOptions { + algorithm?: CompressedWorldMapAlgorithm; + level?: number; + includeRotations?: boolean; +} + /** * The options for a cone collider. @public * @@ -2712,6 +2759,13 @@ export declare class CpuProfiler { static captureHeapSnapshot(outputPath?: string): Promise; } +export declare interface CreateWorldMapChunkCacheOptions { + algorithm?: WorldMapChunkCacheAlgorithm; + level?: number; + includeRotations?: boolean; + sourceSha256?: string; +} + /** * The options for a cylinder collider. @public * @@ -6212,15 +6266,13 @@ export declare type ModelTrimesh = { indices: Uint32Array; }; -export declare function Monitor(operationName?: string): (target: any, propertyKey: string, descriptor: PropertyDescriptor) => PropertyDescriptor; +export declare function Monitor(operationName?: string): MethodDecorator; export declare function monitorAsyncBlock(name: string, fn: () => Promise): Promise; export declare function monitorBlock(name: string, fn: () => T): T; -export declare function MonitorClass(prefix?: string): (constructor: T) => T; +export declare function MonitorClass(prefix?: string): (constructor: TConstructor) => TConstructor; /** * Callback invoked as the entity moves toward a target coordinate. @@ -6291,6 +6343,7 @@ export declare class NetworkMetrics { get isEnabled(): boolean; enable(): void; disable(): void; + reset(): void; setConnectedPlayers(count: number): void; recordBytesSent(bytes: number): void; recordBytesReceived(bytes: number): void; @@ -7348,19 +7401,10 @@ export declare class PerformanceMonitor extends EventRouter { private _spikeThresholdMs; private _tickBudgetMs; private _snapshotIntervalMs; + private _historySize; private _startTime; private _operations; - private _tickDurations; - private _tickIndex; - private _tickCount; - private _ticksOverBudget; - private _maxTickMs; - private _totalTicks; - private _currentTick; - private _currentTickStart; - private _currentPhases; - private _currentEntityCount; - private _currentPlayerCount; + private _worldTicks; private _entityCosts; private _snapshotTimer; private constructor(); @@ -7372,18 +7416,22 @@ export declare class PerformanceMonitor extends EventRouter { measure(name: string, fn: () => T): T; measureAsync(name: string, fn: () => Promise): Promise; startTiming(name: string): () => void; - beginTick(tick: number, entityCount: number, playerCount: number): void; - recordPhase(phaseName: string, durationMs: number): void; - endTick(): void; + beginTick(tick: number, entityCount: number, playerCount: number, worldId?: number): void; + recordPhase(phaseName: string, durationMs: number, worldId?: number): void; + endTick(worldId?: number): void; recordEntityCost(entityId: number, name: string, tickMs: number): void; getEntityCosts(): Map; - getSnapshot(): PerformanceSnapshot; + getSnapshot(worldId?: number): PerformanceSnapshot; resetStats(): void; private _recordOperation; + private _getOrCreateWorldTickState; private _getTickSamples; + private _getAllTickSamples; + private _getRollup; + private _getGlobalRollup; private _getOperationStats; } @@ -10753,6 +10801,7 @@ export declare type TelemetrySpanOptions = { }; export declare interface TickReport { + worldId: number; tick: number; durationMs: number; budgetMs: number; @@ -11614,13 +11663,18 @@ export declare class World extends EventRouter implements protocol.Serializable * - Registers block types from the map into `World.blockTypeRegistry`. * - Spawns map entities as `isEnvironmental: true` by default. * - * @param map - The map to load. + * @param map - The map to load. Can be a map object (WorldMap, CompressedWorldMap, + * WorldMapChunkCache) or a string file path. When a string is provided, + * WorldMapFileLoader auto-detects the best available format. * * **Side effects:** Clears the chunk lattice, registers block types, and spawns entities. * * **Category:** Core */ - loadMap(map: WorldMap): void; + loadMap(map: WorldMap | CompressedWorldMap | WorldMapChunkCache | string, options?: { + spawnEntities?: boolean; + preferMapArtifacts?: boolean; + }): void; /** * Sets the color of the world's ambient light. * @@ -12123,6 +12177,83 @@ export declare interface WorldMap { }; } +export declare type WorldMapArtifacts = { + compressedMap: CompressedWorldMap; + compressedMapJson: string; + compressedMapSha256: string; + chunkCache: WorldMapChunkCache; + chunkCacheBuffer: Buffer; +}; + +export declare class WorldMapArtifactsGenerator { + static create(worldMap: WorldMap, options?: { + compressed?: CompressWorldMapOptions; + chunkCache?: Omit; + }): WorldMapArtifacts; +} + +export declare interface WorldMapChunkCache { + format?: 'hytopia.worldmap.chunk-cache'; + codecVersion?: number; + version?: string; + algorithm?: WorldMapChunkCacheAlgorithm; + data: string; + blockTypes?: BlockTypeOptions[] | Record; + entities?: WorldMap['entities']; +} + +export declare type WorldMapChunkCacheAlgorithm = 'brotli' | 'gzip' | 'none'; + +export declare class WorldMapChunkCacheCodec { + private static _writeHeader; + static isWorldMapChunkCache(value: unknown): value is WorldMapChunkCache; + static create(map: WorldMap | CompressedWorldMap, options?: CreateWorldMapChunkCacheOptions): WorldMapChunkCache; + static decode(cache: WorldMapChunkCache): { + metadata: WorldMapChunkCacheMetadata; + chunks: Iterable; + }; + static decodeMetadata(cache: WorldMapChunkCache): WorldMapChunkCacheMetadata; + static decodeChunks(cache: WorldMapChunkCache): Iterable; + static decompressToWorldMap(cache: WorldMapChunkCache): WorldMap; + private static _decodeFile; + private static _decodeMetadata; + private static _decodeChunks; + private static _encodeBody; +} + +export declare interface WorldMapChunkCacheMetadata { + blockTypes?: BlockTypeOptions[]; + entities?: WorldMap['entities']; + options?: WorldMapChunkCacheOptions; + source?: { + sha256?: string; + }; + metadata?: unknown; + mapVersion?: unknown; +} + +export declare interface WorldMapChunkCacheOptions { + rotations?: boolean; +} + +export declare class WorldMapCodec { + static isCompressedWorldMap(value: unknown): value is CompressedWorldMap; + static compress(map: WorldMap, options?: CompressWorldMapOptions): CompressedWorldMap; + static decodeBlockEntries(map: CompressedWorldMap): Iterable<{ + globalCoordinate: Vector3Like; + blockTypeId: number; + blockRotation?: BlockRotation; + }>; + static decompressToWorldMap(map: CompressedWorldMap): WorldMap; +} + +export declare class WorldMapFileLoader { + static load(mapPath: string, options?: { + preferChunkCache?: boolean; + warnings?: 'auto' | 'always' | 'never'; + }): AnyWorldMap; +} + /** * Options for creating a World instance. * @@ -12156,7 +12287,7 @@ export declare interface WorldOptions { /** The minimum distance from the camera to start applying fog. */ fogNear?: number; /** The map of the world. */ - map?: WorldMap; + map?: WorldMap | CompressedWorldMap | WorldMapChunkCache | string; /** The name of the world. */ name: string; /** The intensity of the skybox brightness for the world. 0 is black, 1 is full brightness, 1+ is brighter. */ diff --git a/sdk/server.mjs b/sdk/server.mjs index ffa7e7ec..87fa1ca4 100644 --- a/sdk/server.mjs +++ b/sdk/server.mjs @@ -1,97 +1,97 @@ -import{createRequire as VkQ}from"node:module";var $kQ=Object.create;var{getPrototypeOf:UkQ,defineProperty:yk,getOwnPropertyNames:EkQ}=Object;var KkQ=Object.prototype.hasOwnProperty;var qA=(A,Q,B)=>{B=A!=null?$kQ(UkQ(A)):{};let Y=Q||!A||!A.__esModule?yk(B,"default",{value:A,enumerable:!0}):B;for(let J of EkQ(A))if(!KkQ.call(Y,J))yk(Y,J,{get:()=>A[J],enumerable:!0});return Y};var R=(A,Q)=>()=>(Q||A((Q={exports:{}}).exports,Q),Q.exports);var fG=(A,Q)=>{for(var B in Q)yk(A,B,{get:Q[B],enumerable:!0,configurable:!0,set:(Y)=>Q[B]=()=>Y})};var u=VkQ(import.meta.url);var _t=R((uo0,u_)=>{var MkQ=Object.prototype.hasOwnProperty,bJ="~";function sV(){}if(Object.create){if(sV.prototype=Object.create(null),!new sV().__proto__)bJ=!1}function zkQ(A,Q,B){this.fn=A,this.context=Q,this.once=B||!1}function kt(A,Q,B,Y,J){if(typeof B!=="function")throw TypeError("The listener must be a function");var C=new zkQ(B,Y||A,J),X=bJ?bJ+Q:Q;if(!A._events[X])A._events[X]=C,A._eventsCount++;else if(!A._events[X].fn)A._events[X].push(C);else A._events[X]=[A._events[X],C];return A}function pM(A,Q){if(--A._eventsCount===0)A._events=new sV;else delete A._events[Q]}function EJ(){this._events=new sV,this._eventsCount=0}EJ.prototype.eventNames=function(){var Q=[],B,Y;if(this._eventsCount===0)return Q;for(Y in B=this._events)if(MkQ.call(B,Y))Q.push(bJ?Y.slice(1):Y);if(Object.getOwnPropertySymbols)return Q.concat(Object.getOwnPropertySymbols(B));return Q};EJ.prototype.listeners=function(Q){var B=bJ?bJ+Q:Q,Y=this._events[B];if(!Y)return[];if(Y.fn)return[Y.fn];for(var J=0,C=Y.length,X=Array(C);J{$e.exports=Ze;Ze.sync=R_Q;var Fe=u("fs");function z_Q(A,Q){var B=Q.pathExt!==void 0?Q.pathExt:process.env.PATHEXT;if(!B)return!0;if(B=B.split(";"),B.indexOf("")!==-1)return!0;for(var Y=0;Y{Ie.exports=Ke;Ke.sync=w_Q;var Ee=u("fs");function Ke(A,Q,B){Ee.stat(A,function(Y,J){B(Y,Y?!1:Ve(J,Q))})}function w_Q(A,Q){return Ve(Ee.statSync(A),Q)}function Ve(A,Q){return A.isFile()&&j_Q(A,Q)}function j_Q(A,Q){var{mode:B,uid:Y,gid:J}=A,C=Q.uid!==void 0?Q.uid:process.getuid&&process.getuid(),X=Q.gid!==void 0?Q.gid:process.getgid&&process.getgid(),G=parseInt("100",8),F=parseInt("010",8),W=parseInt("001",8),Z=G|F,U=B&W||B&F&&J===X||B&G&&Y===C||B&Z&&C===0;return U}});var Ne=R((ke0,De)=>{var Se0=u("fs"),Jz;if(process.platform==="win32"||global.TESTING_WINDOWS)Jz=Ue();else Jz=He();De.exports=t_;t_.sync=O_Q;function t_(A,Q,B){if(typeof Q==="function")B=Q,Q={};if(!B){if(typeof Promise!=="function")throw TypeError("callback not provided");return new Promise(function(Y,J){t_(A,Q||{},function(C,X){if(C)J(C);else Y(X)})})}Jz(A,Q||{},function(Y,J){if(Y){if(Y.code==="EACCES"||Q&&Q.ignoreErrors)Y=null,J=!1}B(Y,J)})}function O_Q(A,Q){try{return Jz.sync(A,Q||{})}catch(B){if(Q&&Q.ignoreErrors||B.code==="EACCES")return!1;else throw B}}});var je=R((_e0,we)=>{var I4=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",Le=u("path"),P_Q=I4?";":":",qe=Ne(),Me=(A)=>Object.assign(Error(`not found: ${A}`),{code:"ENOENT"}),ze=(A,Q)=>{let B=Q.colon||P_Q,Y=A.match(/\//)||I4&&A.match(/\\/)?[""]:[...I4?[process.cwd()]:[],...(Q.path||process.env.PATH||"").split(B)],J=I4?Q.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",C=I4?J.split(B):[""];if(I4){if(A.indexOf(".")!==-1&&C[0]!=="")C.unshift("")}return{pathEnv:Y,pathExt:C,pathExtExe:J}},Re=(A,Q,B)=>{if(typeof Q==="function")B=Q,Q={};if(!Q)Q={};let{pathEnv:Y,pathExt:J,pathExtExe:C}=ze(A,Q),X=[],G=(W)=>new Promise((Z,U)=>{if(W===Y.length)return Q.all&&X.length?Z(X):U(Me(A));let $=Y[W],E=/^".*"$/.test($)?$.slice(1,-1):$,K=Le.join(E,A),I=!E&&/^\.[\\\/]/.test(A)?A.slice(0,2)+K:K;Z(F(I,W,0))}),F=(W,Z,U)=>new Promise(($,E)=>{if(U===J.length)return $(G(Z+1));let K=J[U];qe(W+K,{pathExt:C},(I,V)=>{if(!I&&V)if(Q.all)X.push(W+K);else return $(W+K);return $(F(W,Z,U+1))})});return B?G(0).then((W)=>B(null,W),B):G(0)},T_Q=(A,Q)=>{Q=Q||{};let{pathEnv:B,pathExt:Y,pathExtExe:J}=ze(A,Q),C=[];for(let X=0;X{var Oe=(A={})=>{let Q=A.env||process.env;if((A.platform||process.platform)!=="win32")return"PATH";return Object.keys(Q).reverse().find((Y)=>Y.toUpperCase()==="PATH")||"Path"};e_.exports=Oe;e_.exports.default=Oe});var _e=R((ye0,ke)=>{var Te=u("path"),S_Q=je(),k_Q=Pe();function Se(A,Q){let B=A.options.env||process.env,Y=process.cwd(),J=A.options.cwd!=null,C=J&&process.chdir!==void 0&&!process.chdir.disabled;if(C)try{process.chdir(A.options.cwd)}catch(G){}let X;try{X=S_Q.sync(A.command,{path:B[k_Q({env:B})],pathExt:Q?Te.delimiter:void 0})}catch(G){}finally{if(C)process.chdir(Y)}if(X)X=Te.resolve(J?A.options.cwd:"",X);return X}function __Q(A){return Se(A)||Se(A,!0)}ke.exports=__Q});var ve=R((h_Q,Qv)=>{var Av=/([()\][%!^"`<>&|;, *?])/g;function v_Q(A){return A=A.replace(Av,"^$1"),A}function y_Q(A,Q){if(A=`${A}`,A=A.replace(/(?=(\\+?)?)\1"/g,"$1$1\\\""),A=A.replace(/(?=(\\+?)?)\1$/,"$1$1"),A=`"${A}"`,A=A.replace(Av,"^$1"),Q)A=A.replace(Av,"^$1");return A}h_Q.command=v_Q;h_Q.argument=y_Q});var he=R((he0,ye)=>{ye.exports=/^#!(.*)/});var xe=R((ge0,ge)=>{var f_Q=he();ge.exports=(A="")=>{let Q=A.match(f_Q);if(!Q)return null;let[B,Y]=Q[0].replace(/#! ?/,"").split(" "),J=B.split("/").pop();if(J==="env")return Y;return Y?`${J} ${Y}`:J}});var be=R((xe0,fe)=>{var Bv=u("fs"),b_Q=xe();function m_Q(A){let B=Buffer.alloc(150),Y;try{Y=Bv.openSync(A,"r"),Bv.readSync(Y,B,0,150,0),Bv.closeSync(Y)}catch(J){}return b_Q(B.toString())}fe.exports=m_Q});var ce=R((fe0,de)=>{var u_Q=u("path"),me=_e(),ue=ve(),d_Q=be(),c_Q=process.platform==="win32",l_Q=/\.(?:com|exe)$/i,p_Q=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function i_Q(A){A.file=me(A);let Q=A.file&&d_Q(A.file);if(Q)return A.args.unshift(A.file),A.command=Q,me(A);return A.file}function n_Q(A){if(!c_Q)return A;let Q=i_Q(A),B=!l_Q.test(Q);if(A.options.forceShell||B){let Y=p_Q.test(Q);A.command=u_Q.normalize(A.command),A.command=ue.command(A.command),A.args=A.args.map((C)=>ue.argument(C,Y));let J=[A.command].concat(A.args).join(" ");A.args=["/d","/s","/c",`"${J}"`],A.command=process.env.comspec||"cmd.exe",A.options.windowsVerbatimArguments=!0}return A}function s_Q(A,Q,B){if(Q&&!Array.isArray(Q))B=Q,Q=null;Q=Q?Q.slice(0):[],B=Object.assign({},B);let Y={command:A,args:Q,options:B,file:void 0,original:{command:A,args:Q}};return B.shell?Y:n_Q(Y)}de.exports=s_Q});var ie=R((be0,pe)=>{var Yv=process.platform==="win32";function Jv(A,Q){return Object.assign(Error(`${Q} ${A.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${Q} ${A.command}`,path:A.command,spawnargs:A.args})}function r_Q(A,Q){if(!Yv)return;let B=A.emit;A.emit=function(Y,J){if(Y==="exit"){let C=le(J,Q);if(C)return B.call(A,"error",C)}return B.apply(A,arguments)}}function le(A,Q){if(Yv&&A===1&&!Q.file)return Jv(Q.original,"spawn");return null}function a_Q(A,Q){if(Yv&&A===1&&!Q.file)return Jv(Q.original,"spawnSync");return null}pe.exports={hookChildProcess:r_Q,verifyENOENT:le,verifyENOENTSync:a_Q,notFoundError:Jv}});var re=R((me0,H4)=>{var ne=u("child_process"),Cv=ce(),Xv=ie();function se(A,Q,B){let Y=Cv(A,Q,B),J=ne.spawn(Y.command,Y.args,Y.options);return Xv.hookChildProcess(J,Y),J}function o_Q(A,Q,B){let Y=Cv(A,Q,B),J=ne.spawnSync(Y.command,Y.args,Y.options);return J.error=J.error||Xv.verifyENOENTSync(J.status,Y),J}H4.exports=se;H4.exports.spawn=se;H4.exports.sync=o_Q;H4.exports._parse=Cv;H4.exports._enoent=Xv});var Iy=R((p5Y,i0A)=>{i0A.exports=l0A;function l0A(A,Q,B){if(A instanceof RegExp)A=c0A(A,B);if(Q instanceof RegExp)Q=c0A(Q,B);var Y=p0A(A,Q,B);return Y&&{start:Y[0],end:Y[1],pre:B.slice(0,Y[0]),body:B.slice(Y[0]+A.length,Y[1]),post:B.slice(Y[1]+Q.length)}}function c0A(A,Q){var B=Q.match(A);return B?B[0]:null}l0A.range=p0A;function p0A(A,Q,B){var Y,J,C,X,G,F=B.indexOf(A),W=B.indexOf(Q,F+1),Z=F;if(F>=0&&W>0){if(A===Q)return[F,W];Y=[],C=B.length;while(Z>=0&&!G){if(Z==F)Y.push(Z),F=B.indexOf(A,Z+1);else if(Y.length==1)G=[Y.pop(),W];else{if(J=Y.pop(),J=0?F:W}if(Y.length)G=[C,X]}return G}});var AYA=R((i5Y,e0A)=>{var n0A=Iy();e0A.exports=AbQ;var s0A="\x00SLASH"+Math.random()+"\x00",r0A="\x00OPEN"+Math.random()+"\x00",Dy="\x00CLOSE"+Math.random()+"\x00",a0A="\x00COMMA"+Math.random()+"\x00",o0A="\x00PERIOD"+Math.random()+"\x00";function Hy(A){return parseInt(A,10)==A?parseInt(A,10):A.charCodeAt(0)}function tfQ(A){return A.split("\\\\").join(s0A).split("\\{").join(r0A).split("\\}").join(Dy).split("\\,").join(a0A).split("\\.").join(o0A)}function efQ(A){return A.split(s0A).join("\\").split(r0A).join("{").split(Dy).join("}").split(a0A).join(",").split(o0A).join(".")}function t0A(A){if(!A)return[""];var Q=[],B=n0A("{","}",A);if(!B)return A.split(",");var{pre:Y,body:J,post:C}=B,X=Y.split(",");X[X.length-1]+="{"+J+"}";var G=t0A(C);if(C.length)X[X.length-1]+=G.shift(),X.push.apply(X,G);return Q.push.apply(Q,X),Q}function AbQ(A){if(!A)return[];if(A.substr(0,2)==="{}")A="\\{\\}"+A.substr(2);return ZI(tfQ(A),!0).map(efQ)}function QbQ(A){return"{"+A+"}"}function BbQ(A){return/^-?0\d/.test(A)}function YbQ(A,Q){return A<=Q}function JbQ(A,Q){return A>=Q}function ZI(A,Q){var B=[],Y=n0A("{","}",A);if(!Y)return[A];var J=Y.pre,C=Y.post.length?ZI(Y.post,!1):[""];if(/\$$/.test(Y.pre))for(var X=0;X=0;if(!Z&&!U){if(Y.post.match(/,.*\}/))return A=Y.pre+"{"+Y.body+Dy+Y.post,ZI(A);return[A]}var $;if(Z)$=Y.body.split(/\.\./);else if($=t0A(Y.body),$.length===1){if($=ZI($[0],!1).map(QbQ),$.length===1)return C.map(function(_){return Y.pre+$[0]+_})}var E;if(Z){var K=Hy($[0]),I=Hy($[1]),V=Math.max($[0].length,$[1].length),H=$.length==3?Math.abs(Hy($[2])):1,D=YbQ,L=I0){var w=Array(q+1).join("0");if(M<0)N="-"+w+N.slice(1);else N=w+N}}E.push(N)}}else{E=[];for(var P=0;P<$.length;P++)E.push.apply(E,ZI($[P],!1))}for(var P=0;P{function uuQ(A){var Q=Array(A);for(var B=0;B{/*! +import{createRequire as I_Q}from"node:module";var U_Q=Object.create;var{getPrototypeOf:E_Q,defineProperty:F_,getOwnPropertyNames:K_Q}=Object;var V_Q=Object.prototype.hasOwnProperty;var qA=(A,Q,B)=>{B=A!=null?U_Q(E_Q(A)):{};let Y=Q||!A||!A.__esModule?F_(B,"default",{value:A,enumerable:!0}):B;for(let J of K_Q(A))if(!V_Q.call(Y,J))F_(Y,J,{get:()=>A[J],enumerable:!0});return Y};var R=(A,Q)=>()=>(Q||A((Q={exports:{}}).exports,Q),Q.exports);var iG=(A,Q)=>{for(var B in Q)F_(A,B,{get:Q[B],enumerable:!0,configurable:!0,set:(Y)=>Q[B]=()=>Y})};var u=I_Q(import.meta.url);var Ne=R((ye0,Iv)=>{var z_Q=Object.prototype.hasOwnProperty,pJ="~";function XI(){}if(Object.create){if(XI.prototype=Object.create(null),!new XI().__proto__)pJ=!1}function R_Q(A,Q,B){this.fn=A,this.context=Q,this.once=B||!1}function De(A,Q,B,Y,J){if(typeof B!=="function")throw TypeError("The listener must be a function");var C=new R_Q(B,Y||A,J),X=pJ?pJ+Q:Q;if(!A._events[X])A._events[X]=C,A._eventsCount++;else if(!A._events[X].fn)A._events[X].push(C);else A._events[X]=[A._events[X],C];return A}function Kz(A,Q){if(--A._eventsCount===0)A._events=new XI;else delete A._events[Q]}function DJ(){this._events=new XI,this._eventsCount=0}DJ.prototype.eventNames=function(){var Q=[],B,Y;if(this._eventsCount===0)return Q;for(Y in B=this._events)if(z_Q.call(B,Y))Q.push(pJ?Y.slice(1):Y);if(Object.getOwnPropertySymbols)return Q.concat(Object.getOwnPropertySymbols(B));return Q};DJ.prototype.listeners=function(Q){var B=pJ?pJ+Q:Q,Y=this._events[B];if(!Y)return[];if(Y.fn)return[Y.fn];for(var J=0,C=Y.length,X=Array(C);J{te.exports=oe;oe.sync=wvQ;var re=u("fs");function RvQ(A,Q){var B=Q.pathExt!==void 0?Q.pathExt:process.env.PATHEXT;if(!B)return!0;if(B=B.split(";"),B.indexOf("")!==-1)return!0;for(var Y=0;Y{YAA.exports=QAA;QAA.sync=jvQ;var AAA=u("fs");function QAA(A,Q,B){AAA.stat(A,function(Y,J){B(Y,Y?!1:BAA(J,Q))})}function jvQ(A,Q){return BAA(AAA.statSync(A),Q)}function BAA(A,Q){return A.isFile()&&OvQ(A,Q)}function OvQ(A,Q){var{mode:B,uid:Y,gid:J}=A,C=Q.uid!==void 0?Q.uid:process.getuid&&process.getuid(),X=Q.gid!==void 0?Q.gid:process.getgid&&process.getgid(),G=parseInt("100",8),W=parseInt("010",8),F=parseInt("001",8),Z=G|W,U=B&F||B&W&&J===X||B&G&&Y===C||B&Z&&C===0;return U}});var XAA=R((RQY,CAA)=>{var zQY=u("fs"),Oz;if(process.platform==="win32"||global.TESTING_WINDOWS)Oz=ee();else Oz=JAA();CAA.exports=Ov;Ov.sync=PvQ;function Ov(A,Q,B){if(typeof Q==="function")B=Q,Q={};if(!B){if(typeof Promise!=="function")throw TypeError("callback not provided");return new Promise(function(Y,J){Ov(A,Q||{},function(C,X){if(C)J(C);else Y(X)})})}Oz(A,Q||{},function(Y,J){if(Y){if(Y.code==="EACCES"||Q&&Q.ignoreErrors)Y=null,J=!1}B(Y,J)})}function PvQ(A,Q){try{return Oz.sync(A,Q||{})}catch(B){if(Q&&Q.ignoreErrors||B.code==="EACCES")return!1;else throw B}}});var EAA=R((wQY,UAA)=>{var w4=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",GAA=u("path"),TvQ=w4?";":":",WAA=XAA(),FAA=(A)=>Object.assign(Error(`not found: ${A}`),{code:"ENOENT"}),ZAA=(A,Q)=>{let B=Q.colon||TvQ,Y=A.match(/\//)||w4&&A.match(/\\/)?[""]:[...w4?[process.cwd()]:[],...(Q.path||process.env.PATH||"").split(B)],J=w4?Q.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",C=w4?J.split(B):[""];if(w4){if(A.indexOf(".")!==-1&&C[0]!=="")C.unshift("")}return{pathEnv:Y,pathExt:C,pathExtExe:J}},$AA=(A,Q,B)=>{if(typeof Q==="function")B=Q,Q={};if(!Q)Q={};let{pathEnv:Y,pathExt:J,pathExtExe:C}=ZAA(A,Q),X=[],G=(F)=>new Promise((Z,U)=>{if(F===Y.length)return Q.all&&X.length?Z(X):U(FAA(A));let $=Y[F],E=/^".*"$/.test($)?$.slice(1,-1):$,K=GAA.join(E,A),I=!E&&/^\.[\\\/]/.test(A)?A.slice(0,2)+K:K;Z(W(I,F,0))}),W=(F,Z,U)=>new Promise(($,E)=>{if(U===J.length)return $(G(Z+1));let K=J[U];WAA(F+K,{pathExt:C},(I,V)=>{if(!I&&V)if(Q.all)X.push(F+K);else return $(F+K);return $(W(F,Z,U+1))})});return B?G(0).then((F)=>B(null,F),B):G(0)},SvQ=(A,Q)=>{Q=Q||{};let{pathEnv:B,pathExt:Y,pathExtExe:J}=ZAA(A,Q),C=[];for(let X=0;X{var KAA=(A={})=>{let Q=A.env||process.env;if((A.platform||process.platform)!=="win32")return"PATH";return Object.keys(Q).reverse().find((Y)=>Y.toUpperCase()==="PATH")||"Path"};Pv.exports=KAA;Pv.exports.default=KAA});var NAA=R((OQY,DAA)=>{var IAA=u("path"),kvQ=EAA(),_vQ=VAA();function HAA(A,Q){let B=A.options.env||process.env,Y=process.cwd(),J=A.options.cwd!=null,C=J&&process.chdir!==void 0&&!process.chdir.disabled;if(C)try{process.chdir(A.options.cwd)}catch(G){}let X;try{X=kvQ.sync(A.command,{path:B[_vQ({env:B})],pathExt:Q?IAA.delimiter:void 0})}catch(G){}finally{if(C)process.chdir(Y)}if(X)X=IAA.resolve(J?A.options.cwd:"",X);return X}function vvQ(A){return HAA(A)||HAA(A,!0)}DAA.exports=vvQ});var LAA=R((hvQ,Sv)=>{var Tv=/([()\][%!^"`<>&|;, *?])/g;function yvQ(A){return A=A.replace(Tv,"^$1"),A}function gvQ(A,Q){if(A=`${A}`,A=A.replace(/(?=(\\+?)?)\1"/g,"$1$1\\\""),A=A.replace(/(?=(\\+?)?)\1$/,"$1$1"),A=`"${A}"`,A=A.replace(Tv,"^$1"),Q)A=A.replace(Tv,"^$1");return A}hvQ.command=yvQ;hvQ.argument=gvQ});var MAA=R((PQY,qAA)=>{qAA.exports=/^#!(.*)/});var RAA=R((TQY,zAA)=>{var bvQ=MAA();zAA.exports=(A="")=>{let Q=A.match(bvQ);if(!Q)return null;let[B,Y]=Q[0].replace(/#! ?/,"").split(" "),J=B.split("/").pop();if(J==="env")return Y;return Y?`${J} ${Y}`:J}});var jAA=R((SQY,wAA)=>{var kv=u("fs"),mvQ=RAA();function uvQ(A){let B=Buffer.alloc(150),Y;try{Y=kv.openSync(A,"r"),kv.readSync(Y,B,0,150,0),kv.closeSync(Y)}catch(J){}return mvQ(B.toString())}wAA.exports=uvQ});var SAA=R((kQY,TAA)=>{var dvQ=u("path"),OAA=NAA(),PAA=LAA(),cvQ=jAA(),lvQ=process.platform==="win32",pvQ=/\.(?:com|exe)$/i,ivQ=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function nvQ(A){A.file=OAA(A);let Q=A.file&&cvQ(A.file);if(Q)return A.args.unshift(A.file),A.command=Q,OAA(A);return A.file}function svQ(A){if(!lvQ)return A;let Q=nvQ(A),B=!pvQ.test(Q);if(A.options.forceShell||B){let Y=ivQ.test(Q);A.command=dvQ.normalize(A.command),A.command=PAA.command(A.command),A.args=A.args.map((C)=>PAA.argument(C,Y));let J=[A.command].concat(A.args).join(" ");A.args=["/d","/s","/c",`"${J}"`],A.command=process.env.comspec||"cmd.exe",A.options.windowsVerbatimArguments=!0}return A}function rvQ(A,Q,B){if(Q&&!Array.isArray(Q))B=Q,Q=null;Q=Q?Q.slice(0):[],B=Object.assign({},B);let Y={command:A,args:Q,options:B,file:void 0,original:{command:A,args:Q}};return B.shell?Y:svQ(Y)}TAA.exports=rvQ});var vAA=R((_QY,_AA)=>{var _v=process.platform==="win32";function vv(A,Q){return Object.assign(Error(`${Q} ${A.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${Q} ${A.command}`,path:A.command,spawnargs:A.args})}function avQ(A,Q){if(!_v)return;let B=A.emit;A.emit=function(Y,J){if(Y==="exit"){let C=kAA(J,Q);if(C)return B.call(A,"error",C)}return B.apply(A,arguments)}}function kAA(A,Q){if(_v&&A===1&&!Q.file)return vv(Q.original,"spawn");return null}function ovQ(A,Q){if(_v&&A===1&&!Q.file)return vv(Q.original,"spawnSync");return null}_AA.exports={hookChildProcess:avQ,verifyENOENT:kAA,verifyENOENTSync:ovQ,notFoundError:vv}});var hAA=R((vQY,j4)=>{var yAA=u("child_process"),yv=SAA(),gv=vAA();function gAA(A,Q,B){let Y=yv(A,Q,B),J=yAA.spawn(Y.command,Y.args,Y.options);return gv.hookChildProcess(J,Y),J}function tvQ(A,Q,B){let Y=yv(A,Q,B),J=yAA.spawnSync(Y.command,Y.args,Y.options);return J.error=J.error||gv.verifyENOENTSync(J.status,Y),J}j4.exports=gAA;j4.exports.spawn=gAA;j4.exports.sync=tvQ;j4.exports._parse=yv;j4.exports._enoent=gv});var py=R((f1Y,vYA)=>{vYA.exports=kYA;function kYA(A,Q,B){if(A instanceof RegExp)A=SYA(A,B);if(Q instanceof RegExp)Q=SYA(Q,B);var Y=_YA(A,Q,B);return Y&&{start:Y[0],end:Y[1],pre:B.slice(0,Y[0]),body:B.slice(Y[0]+A.length,Y[1]),post:B.slice(Y[1]+Q.length)}}function SYA(A,Q){var B=Q.match(A);return B?B[0]:null}kYA.range=_YA;function _YA(A,Q,B){var Y,J,C,X,G,W=B.indexOf(A),F=B.indexOf(Q,W+1),Z=W;if(W>=0&&F>0){if(A===Q)return[W,F];Y=[],C=B.length;while(Z>=0&&!G){if(Z==W)Y.push(Z),W=B.indexOf(A,Z+1);else if(Y.length==1)G=[Y.pop(),F];else{if(J=Y.pop(),J=0?W:F}if(Y.length)G=[C,X]}return G}});var uYA=R((b1Y,mYA)=>{var yYA=py();mYA.exports=QmQ;var gYA="\x00SLASH"+Math.random()+"\x00",hYA="\x00OPEN"+Math.random()+"\x00",ny="\x00CLOSE"+Math.random()+"\x00",xYA="\x00COMMA"+Math.random()+"\x00",fYA="\x00PERIOD"+Math.random()+"\x00";function iy(A){return parseInt(A,10)==A?parseInt(A,10):A.charCodeAt(0)}function ebQ(A){return A.split("\\\\").join(gYA).split("\\{").join(hYA).split("\\}").join(ny).split("\\,").join(xYA).split("\\.").join(fYA)}function AmQ(A){return A.split(gYA).join("\\").split(hYA).join("{").split(ny).join("}").split(xYA).join(",").split(fYA).join(".")}function bYA(A){if(!A)return[""];var Q=[],B=yYA("{","}",A);if(!B)return A.split(",");var{pre:Y,body:J,post:C}=B,X=Y.split(",");X[X.length-1]+="{"+J+"}";var G=bYA(C);if(C.length)X[X.length-1]+=G.shift(),X.push.apply(X,G);return Q.push.apply(Q,X),Q}function QmQ(A){if(!A)return[];if(A.substr(0,2)==="{}")A="\\{\\}"+A.substr(2);return MI(ebQ(A),!0).map(AmQ)}function BmQ(A){return"{"+A+"}"}function YmQ(A){return/^-?0\d/.test(A)}function JmQ(A,Q){return A<=Q}function CmQ(A,Q){return A>=Q}function MI(A,Q){var B=[],Y=yYA("{","}",A);if(!Y)return[A];var J=Y.pre,C=Y.post.length?MI(Y.post,!1):[""];if(/\$$/.test(Y.pre))for(var X=0;X=0;if(!Z&&!U){if(Y.post.match(/,.*\}/))return A=Y.pre+"{"+Y.body+ny+Y.post,MI(A);return[A]}var $;if(Z)$=Y.body.split(/\.\./);else if($=bYA(Y.body),$.length===1){if($=MI($[0],!1).map(BmQ),$.length===1)return C.map(function(_){return Y.pre+$[0]+_})}var E;if(Z){var K=iy($[0]),I=iy($[1]),V=Math.max($[0].length,$[1].length),H=$.length==3?Math.abs(iy($[2])):1,D=JmQ,L=I0){var w=Array(q+1).join("0");if(M<0)N="-"+w+N.slice(1);else N=w+N}}E.push(N)}}else{E=[];for(var P=0;P<$.length;P++)E.push.apply(E,MI($[P],!1))}for(var P=0;P{function ddQ(A){var Q=Array(A);for(var B=0;B{/*! * Determine if an object is a Buffer * * @author Feross Aboukhadijeh * @license MIT - */kJA.exports=function(A){return A!=null&&(SJA(A)||duQ(A)||!!A._isBuffer)};function SJA(A){return!!A.constructor&&typeof A.constructor.isBuffer==="function"&&A.constructor.isBuffer(A)}function duQ(A){return typeof A.readFloatLE==="function"&&typeof A.slice==="function"&&SJA(A.slice(0,0))}});var jh=R((G1Y,vJA)=>{var cuQ=TJA(),luQ=_JA(),puQ=typeof Float64Array<"u";function iuQ(A,Q){return A[0]-Q[0]}function nuQ(){var A=this.stride,Q=Array(A.length),B;for(B=0;BMath.abs(this.stride[1]))?[1,0]:[0,1]}})");else if(Q===3)J.push("var s0=Math.abs(this.stride[0]),s1=Math.abs(this.stride[1]),s2=Math.abs(this.stride[2]);if(s0>s1){if(s1>s2){return [2,1,0];}else if(s0>s2){return [1,2,0];}else{return [1,0,2];}}else if(s0>s2){return [2,0,1];}else if(s2>s1){return [0,1,2];}else{return [0,2,1];}}})")}else J.push("ORDER})");if(J.push("proto.set=function "+B+"_set("+X.join(",")+",v){"),Y)J.push("return this.data.set("+G+",v)}");else J.push("return this.data["+G+"]=v}");if(J.push("proto.get=function "+B+"_get("+X.join(",")+"){"),Y)J.push("return this.data.get("+G+")}");else J.push("return this.data["+G+"]}");J.push("proto.index=function "+B+"_index(",X.join(),"){return "+G+"}"),J.push("proto.hi=function "+B+"_hi("+X.join(",")+"){return new "+B+"(this.data,"+C.map(function(V){return["(typeof i",V,"!=='number'||i",V,"<0)?this.shape[",V,"]:i",V,"|0"].join("")}).join(",")+","+C.map(function(V){return"this.stride["+V+"]"}).join(",")+",this.offset)}");var Z=C.map(function(V){return"a"+V+"=this.shape["+V+"]"}),U=C.map(function(V){return"c"+V+"=this.stride["+V+"]"});J.push("proto.lo=function "+B+"_lo("+X.join(",")+"){var b=this.offset,d=0,"+Z.join(",")+","+U.join(","));for(var $=0;$=0){d=i"+$+"|0;b+=c"+$+"*d;a"+$+"-=d}");J.push("return new "+B+"(this.data,"+C.map(function(V){return"a"+V}).join(",")+","+C.map(function(V){return"c"+V}).join(",")+",b)}"),J.push("proto.step=function "+B+"_step("+X.join(",")+"){var "+C.map(function(V){return"a"+V+"=this.shape["+V+"]"}).join(",")+","+C.map(function(V){return"b"+V+"=this.stride["+V+"]"}).join(",")+",c=this.offset,d=0,ceil=Math.ceil");for(var $=0;$=0){c=(c+this.stride["+$+"]*i"+$+")|0}else{a.push(this.shape["+$+"]);b.push(this.stride["+$+"])}");J.push("var ctor=CTOR_LIST[a.length+1];return ctor(this.data,a,b,c)}"),J.push("return function construct_"+B+"(data,shape,stride,offset){return new "+B+"(data,"+C.map(function(V){return"shape["+V+"]"}).join(",")+","+C.map(function(V){return"stride["+V+"]"}).join(",")+",offset)}");var I=Function("CTOR_LIST","ORDER",J.join(` -`));return I(u2[A],nuQ)}function ruQ(A){if(luQ(A))return"buffer";if(puQ)switch(Object.prototype.toString.call(A)){case"[object Float64Array]":return"float64";case"[object Float32Array]":return"float32";case"[object Int8Array]":return"int8";case"[object Int16Array]":return"int16";case"[object Int32Array]":return"int32";case"[object Uint8Array]":return"uint8";case"[object Uint16Array]":return"uint16";case"[object Uint32Array]":return"uint32";case"[object Uint8ClampedArray]":return"uint8_clamped";case"[object BigInt64Array]":return"bigint64";case"[object BigUint64Array]":return"biguint64"}if(Array.isArray(A))return"array";return"generic"}var u2={float32:[],float64:[],int8:[],int16:[],int32:[],uint8:[],uint16:[],uint32:[],array:[],uint8_clamped:[],bigint64:[],biguint64:[],buffer:[],generic:[]};function auQ(A,Q,B,Y){if(A===void 0){var W=u2.array[0];return W([])}else if(typeof A==="number")A=[A];if(Q===void 0)Q=[A.length];var J=Q.length;if(B===void 0){B=Array(J);for(var C=J-1,X=1;C>=0;--C)B[C]=X,X*=Q[C]}if(Y===void 0){Y=0;for(var C=0;C{var yJA=function(A){return typeof A<"u"&&A!==null},ouQ=function(A){return typeof A==="object"},tuQ=function(A){return Object.prototype.toString.call(A)==="[object Object]"},euQ=function(A){return typeof A==="function"},AdQ=function(A){return typeof A==="boolean"},QdQ=function(A){return A instanceof Buffer},BdQ=function(A){if(yJA(A))switch(A.constructor){case Uint8Array:case Uint8ClampedArray:case Int8Array:case Uint16Array:case Int16Array:case Uint32Array:case Int32Array:case Float32Array:case Float64Array:return!0}return!1},YdQ=function(A){return A instanceof ArrayBuffer},JdQ=function(A){return typeof A==="string"&&A.length>0},CdQ=function(A){return typeof A==="number"&&!Number.isNaN(A)},XdQ=function(A){return Number.isInteger(A)},GdQ=function(A,Q,B){return A>=Q&&A<=B},FdQ=function(A,Q){return Q.includes(A)},WdQ=function(A,Q,B){return Error(`Expected ${Q} for ${A} but received ${B} of type ${typeof B}`)},ZdQ=function(A,Q){return Q.message=A.message,Q};hJA.exports={defined:yJA,object:ouQ,plainObject:tuQ,fn:euQ,bool:AdQ,buffer:QdQ,typedArray:BdQ,arrayBuffer:YdQ,string:JdQ,number:CdQ,integer:XdQ,inRange:GdQ,inArray:FdQ,invalidParameterError:WdQ,nativeError:ZdQ}});var fJA=R((W1Y,xJA)=>{var gJA=()=>process.platform==="linux",d2=null,$dQ=()=>{if(!d2)if(gJA()&&process.report){let A=process.report.excludeNetwork;process.report.excludeNetwork=!0,d2=process.report.getReport(),process.report.excludeNetwork=A}else d2={};return d2};xJA.exports={isLinux:gJA,getReport:$dQ}});var uJA=R((Z1Y,mJA)=>{var bJA=u("fs"),UdQ=(A)=>bJA.readFileSync(A,"utf-8"),EdQ=(A)=>new Promise((Q,B)=>{bJA.readFile(A,"utf-8",(Y,J)=>{if(Y)B(Y);else Q(J)})});mJA.exports={LDD_PATH:"/usr/bin/ldd",readFileSync:UdQ,readFile:EdQ}});var dI=R(($1Y,Y9A)=>{var cJA=u("child_process"),{isLinux:d4,getReport:lJA}=fJA(),{LDD_PATH:c2,readFile:pJA,readFileSync:iJA}=uJA(),O1,P1,eG="",nJA=()=>{if(!eG)return new Promise((A)=>{cJA.exec("getconf GNU_LIBC_VERSION 2>&1 || true; ldd --version 2>&1 || true",(Q,B)=>{eG=Q?" ":B,A(eG)})});return eG},sJA=()=>{if(!eG)try{eG=cJA.execSync("getconf GNU_LIBC_VERSION 2>&1 || true; ldd --version 2>&1 || true",{encoding:"utf8"})}catch(A){eG=" "}return eG},A7="glibc",rJA=/LIBC[a-z0-9 \-).]*?(\d+\.\d+)/i,u4="musl",KdQ=(A)=>A.includes("libc.musl-")||A.includes("ld-musl-"),aJA=()=>{let A=lJA();if(A.header&&A.header.glibcVersionRuntime)return A7;if(Array.isArray(A.sharedObjects)){if(A.sharedObjects.some(KdQ))return u4}return null},oJA=(A)=>{let[Q,B]=A.split(/[\r\n]+/);if(Q&&Q.includes(A7))return A7;if(B&&B.includes(u4))return u4;return null},tJA=(A)=>{if(A.includes("musl"))return u4;if(A.includes("GNU C Library"))return A7;return null},VdQ=async()=>{if(O1!==void 0)return O1;O1=null;try{let A=await pJA(c2);O1=tJA(A)}catch(A){}return O1},IdQ=()=>{if(O1!==void 0)return O1;O1=null;try{let A=iJA(c2);O1=tJA(A)}catch(A){}return O1},eJA=async()=>{let A=null;if(d4()){if(A=await VdQ(),!A)A=aJA();if(!A){let Q=await nJA();A=oJA(Q)}}return A},A9A=()=>{let A=null;if(d4()){if(A=IdQ(),!A)A=aJA();if(!A){let Q=sJA();A=oJA(Q)}}return A},HdQ=async()=>d4()&&await eJA()!==A7,DdQ=()=>d4()&&A9A()!==A7,NdQ=async()=>{if(P1!==void 0)return P1;P1=null;try{let Q=(await pJA(c2)).match(rJA);if(Q)P1=Q[1]}catch(A){}return P1},LdQ=()=>{if(P1!==void 0)return P1;P1=null;try{let Q=iJA(c2).match(rJA);if(Q)P1=Q[1]}catch(A){}return P1},Q9A=()=>{let A=lJA();if(A.header&&A.header.glibcVersionRuntime)return A.header.glibcVersionRuntime;return null},dJA=(A)=>A.trim().split(/\s+/)[1],B9A=(A)=>{let[Q,B,Y]=A.split(/[\r\n]+/);if(Q&&Q.includes(A7))return dJA(Q);if(B&&Y&&B.includes(u4))return dJA(Y);return null},qdQ=async()=>{let A=null;if(d4()){if(A=await NdQ(),!A)A=Q9A();if(!A){let Q=await nJA();A=B9A(Q)}}return A},MdQ=()=>{let A=null;if(d4()){if(A=LdQ(),!A)A=Q9A();if(!A){let Q=sJA();A=B9A(Q)}}return A};Y9A.exports={GLIBC:A7,MUSL:u4,family:eJA,familySync:A9A,isNonGlibcLinux:HdQ,isNonGlibcLinuxSync:DdQ,version:qdQ,versionSync:MdQ}});var cI=R((U1Y,J9A)=>{var zdQ=typeof process==="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...A)=>console.error("SEMVER",...A):()=>{};J9A.exports=zdQ});var l2=R((E1Y,C9A)=>{var RdQ=Number.MAX_SAFE_INTEGER||9007199254740991,wdQ=["major","premajor","minor","preminor","patch","prepatch","prerelease"];C9A.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:16,MAX_SAFE_BUILD_LENGTH:250,MAX_SAFE_INTEGER:RdQ,RELEASE_TYPES:wdQ,SEMVER_SPEC_VERSION:"2.0.0",FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var lI=R((T1,X9A)=>{var{MAX_SAFE_COMPONENT_LENGTH:Oh,MAX_SAFE_BUILD_LENGTH:jdQ,MAX_LENGTH:OdQ}=l2(),PdQ=cI();T1=X9A.exports={};var TdQ=T1.re=[],SdQ=T1.safeRe=[],dA=T1.src=[],kdQ=T1.safeSrc=[],cA=T1.t={},_dQ=0,Ph="[a-zA-Z0-9-]",vdQ=[["\\s",1],["\\d",OdQ],[Ph,jdQ]],ydQ=(A)=>{for(let[Q,B]of vdQ)A=A.split(`${Q}*`).join(`${Q}{0,${B}}`).split(`${Q}+`).join(`${Q}{1,${B}}`);return A},uQ=(A,Q,B)=>{let Y=ydQ(Q),J=_dQ++;PdQ(A,J,Q),cA[A]=J,dA[J]=Q,kdQ[J]=Y,TdQ[J]=new RegExp(Q,B?"g":void 0),SdQ[J]=new RegExp(Y,B?"g":void 0)};uQ("NUMERICIDENTIFIER","0|[1-9]\\d*");uQ("NUMERICIDENTIFIERLOOSE","\\d+");uQ("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${Ph}*`);uQ("MAINVERSION",`(${dA[cA.NUMERICIDENTIFIER]})\\.(${dA[cA.NUMERICIDENTIFIER]})\\.(${dA[cA.NUMERICIDENTIFIER]})`);uQ("MAINVERSIONLOOSE",`(${dA[cA.NUMERICIDENTIFIERLOOSE]})\\.(${dA[cA.NUMERICIDENTIFIERLOOSE]})\\.(${dA[cA.NUMERICIDENTIFIERLOOSE]})`);uQ("PRERELEASEIDENTIFIER",`(?:${dA[cA.NONNUMERICIDENTIFIER]}|${dA[cA.NUMERICIDENTIFIER]})`);uQ("PRERELEASEIDENTIFIERLOOSE",`(?:${dA[cA.NONNUMERICIDENTIFIER]}|${dA[cA.NUMERICIDENTIFIERLOOSE]})`);uQ("PRERELEASE",`(?:-(${dA[cA.PRERELEASEIDENTIFIER]}(?:\\.${dA[cA.PRERELEASEIDENTIFIER]})*))`);uQ("PRERELEASELOOSE",`(?:-?(${dA[cA.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${dA[cA.PRERELEASEIDENTIFIERLOOSE]})*))`);uQ("BUILDIDENTIFIER",`${Ph}+`);uQ("BUILD",`(?:\\+(${dA[cA.BUILDIDENTIFIER]}(?:\\.${dA[cA.BUILDIDENTIFIER]})*))`);uQ("FULLPLAIN",`v?${dA[cA.MAINVERSION]}${dA[cA.PRERELEASE]}?${dA[cA.BUILD]}?`);uQ("FULL",`^${dA[cA.FULLPLAIN]}$`);uQ("LOOSEPLAIN",`[v=\\s]*${dA[cA.MAINVERSIONLOOSE]}${dA[cA.PRERELEASELOOSE]}?${dA[cA.BUILD]}?`);uQ("LOOSE",`^${dA[cA.LOOSEPLAIN]}$`);uQ("GTLT","((?:<|>)?=?)");uQ("XRANGEIDENTIFIERLOOSE",`${dA[cA.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);uQ("XRANGEIDENTIFIER",`${dA[cA.NUMERICIDENTIFIER]}|x|X|\\*`);uQ("XRANGEPLAIN",`[v=\\s]*(${dA[cA.XRANGEIDENTIFIER]})(?:\\.(${dA[cA.XRANGEIDENTIFIER]})(?:\\.(${dA[cA.XRANGEIDENTIFIER]})(?:${dA[cA.PRERELEASE]})?${dA[cA.BUILD]}?)?)?`);uQ("XRANGEPLAINLOOSE",`[v=\\s]*(${dA[cA.XRANGEIDENTIFIERLOOSE]})(?:\\.(${dA[cA.XRANGEIDENTIFIERLOOSE]})(?:\\.(${dA[cA.XRANGEIDENTIFIERLOOSE]})(?:${dA[cA.PRERELEASELOOSE]})?${dA[cA.BUILD]}?)?)?`);uQ("XRANGE",`^${dA[cA.GTLT]}\\s*${dA[cA.XRANGEPLAIN]}$`);uQ("XRANGELOOSE",`^${dA[cA.GTLT]}\\s*${dA[cA.XRANGEPLAINLOOSE]}$`);uQ("COERCEPLAIN",`(^|[^\\d])(\\d{1,${Oh}})(?:\\.(\\d{1,${Oh}}))?(?:\\.(\\d{1,${Oh}}))?`);uQ("COERCE",`${dA[cA.COERCEPLAIN]}(?:$|[^\\d])`);uQ("COERCEFULL",dA[cA.COERCEPLAIN]+`(?:${dA[cA.PRERELEASE]})?(?:${dA[cA.BUILD]})?(?:$|[^\\d])`);uQ("COERCERTL",dA[cA.COERCE],!0);uQ("COERCERTLFULL",dA[cA.COERCEFULL],!0);uQ("LONETILDE","(?:~>?)");uQ("TILDETRIM",`(\\s*)${dA[cA.LONETILDE]}\\s+`,!0);T1.tildeTrimReplace="$1~";uQ("TILDE",`^${dA[cA.LONETILDE]}${dA[cA.XRANGEPLAIN]}$`);uQ("TILDELOOSE",`^${dA[cA.LONETILDE]}${dA[cA.XRANGEPLAINLOOSE]}$`);uQ("LONECARET","(?:\\^)");uQ("CARETTRIM",`(\\s*)${dA[cA.LONECARET]}\\s+`,!0);T1.caretTrimReplace="$1^";uQ("CARET",`^${dA[cA.LONECARET]}${dA[cA.XRANGEPLAIN]}$`);uQ("CARETLOOSE",`^${dA[cA.LONECARET]}${dA[cA.XRANGEPLAINLOOSE]}$`);uQ("COMPARATORLOOSE",`^${dA[cA.GTLT]}\\s*(${dA[cA.LOOSEPLAIN]})$|^$`);uQ("COMPARATOR",`^${dA[cA.GTLT]}\\s*(${dA[cA.FULLPLAIN]})$|^$`);uQ("COMPARATORTRIM",`(\\s*)${dA[cA.GTLT]}\\s*(${dA[cA.LOOSEPLAIN]}|${dA[cA.XRANGEPLAIN]})`,!0);T1.comparatorTrimReplace="$1$2$3";uQ("HYPHENRANGE",`^\\s*(${dA[cA.XRANGEPLAIN]})\\s+-\\s+(${dA[cA.XRANGEPLAIN]})\\s*$`);uQ("HYPHENRANGELOOSE",`^\\s*(${dA[cA.XRANGEPLAINLOOSE]})\\s+-\\s+(${dA[cA.XRANGEPLAINLOOSE]})\\s*$`);uQ("STAR","(<|>)?=?\\s*\\*");uQ("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");uQ("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var p2=R((K1Y,G9A)=>{var hdQ=Object.freeze({loose:!0}),gdQ=Object.freeze({}),xdQ=(A)=>{if(!A)return gdQ;if(typeof A!=="object")return hdQ;return A};G9A.exports=xdQ});var $9A=R((V1Y,Z9A)=>{var F9A=/^[0-9]+$/,W9A=(A,Q)=>{let B=F9A.test(A),Y=F9A.test(Q);if(B&&Y)A=+A,Q=+Q;return A===Q?0:B&&!Y?-1:Y&&!B?1:AW9A(Q,A);Z9A.exports={compareIdentifiers:W9A,rcompareIdentifiers:fdQ}});var l4=R((I1Y,E9A)=>{var i2=cI(),{MAX_LENGTH:U9A,MAX_SAFE_INTEGER:n2}=l2(),{safeRe:s2,t:r2}=lI(),bdQ=p2(),{compareIdentifiers:c4}=$9A();class NC{constructor(A,Q){if(Q=bdQ(Q),A instanceof NC)if(A.loose===!!Q.loose&&A.includePrerelease===!!Q.includePrerelease)return A;else A=A.version;else if(typeof A!=="string")throw TypeError(`Invalid version. Must be a string. Got type "${typeof A}".`);if(A.length>U9A)throw TypeError(`version is longer than ${U9A} characters`);i2("SemVer",A,Q),this.options=Q,this.loose=!!Q.loose,this.includePrerelease=!!Q.includePrerelease;let B=A.trim().match(Q.loose?s2[r2.LOOSE]:s2[r2.FULL]);if(!B)throw TypeError(`Invalid Version: ${A}`);if(this.raw=A,this.major=+B[1],this.minor=+B[2],this.patch=+B[3],this.major>n2||this.major<0)throw TypeError("Invalid major version");if(this.minor>n2||this.minor<0)throw TypeError("Invalid minor version");if(this.patch>n2||this.patch<0)throw TypeError("Invalid patch version");if(!B[4])this.prerelease=[];else this.prerelease=B[4].split(".").map((Y)=>{if(/^[0-9]+$/.test(Y)){let J=+Y;if(J>=0&&J=0)if(typeof this.prerelease[J]==="number")this.prerelease[J]++,J=-2;if(J===-1){if(Q===this.prerelease.join(".")&&B===!1)throw Error("invalid increment argument: identifier already exists");this.prerelease.push(Y)}}if(Q){let J=[Q,Y];if(B===!1)J=[Q];if(c4(this.prerelease[0],Q)===0){if(isNaN(this.prerelease[1]))this.prerelease=J}else this.prerelease=J}break}default:throw Error(`invalid increment argument: ${A}`)}if(this.raw=this.format(),this.build.length)this.raw+=`+${this.build.join(".")}`;return this}}E9A.exports=NC});var I9A=R((H1Y,V9A)=>{var K9A=l4(),mdQ=(A,Q,B=!1)=>{if(A instanceof K9A)return A;try{return new K9A(A,Q)}catch(Y){if(!B)return null;throw Y}};V9A.exports=mdQ});var D9A=R((D1Y,H9A)=>{var udQ=l4(),ddQ=I9A(),{safeRe:a2,t:o2}=lI(),cdQ=(A,Q)=>{if(A instanceof udQ)return A;if(typeof A==="number")A=String(A);if(typeof A!=="string")return null;Q=Q||{};let B=null;if(!Q.rtl)B=A.match(Q.includePrerelease?a2[o2.COERCEFULL]:a2[o2.COERCE]);else{let F=Q.includePrerelease?a2[o2.COERCERTLFULL]:a2[o2.COERCERTL],W;while((W=F.exec(A))&&(!B||B.index+B[0].length!==A.length)){if(!B||W.index+W[0].length!==B.index+B[0].length)B=W;F.lastIndex=W.index+W[1].length+W[2].length}F.lastIndex=-1}if(B===null)return null;let Y=B[2],J=B[3]||"0",C=B[4]||"0",X=Q.includePrerelease&&B[5]?`-${B[5]}`:"",G=Q.includePrerelease&&B[6]?`+${B[6]}`:"";return ddQ(`${Y}.${J}.${C}${X}${G}`,Q)};H9A.exports=cdQ});var vW=R((N1Y,L9A)=>{var N9A=l4(),ldQ=(A,Q,B)=>new N9A(A,B).compare(new N9A(Q,B));L9A.exports=ldQ});var Th=R((L1Y,q9A)=>{var pdQ=vW(),idQ=(A,Q,B)=>pdQ(A,Q,B)>=0;q9A.exports=idQ});var R9A=R((q1Y,z9A)=>{class M9A{constructor(){this.max=1000,this.map=new Map}get(A){let Q=this.map.get(A);if(Q===void 0)return;else return this.map.delete(A),this.map.set(A,Q),Q}delete(A){return this.map.delete(A)}set(A,Q){if(!this.delete(A)&&Q!==void 0){if(this.map.size>=this.max){let Y=this.map.keys().next().value;this.delete(Y)}this.map.set(A,Q)}return this}}z9A.exports=M9A});var j9A=R((M1Y,w9A)=>{var ndQ=vW(),sdQ=(A,Q,B)=>ndQ(A,Q,B)===0;w9A.exports=sdQ});var P9A=R((z1Y,O9A)=>{var rdQ=vW(),adQ=(A,Q,B)=>rdQ(A,Q,B)!==0;O9A.exports=adQ});var S9A=R((R1Y,T9A)=>{var odQ=vW(),tdQ=(A,Q,B)=>odQ(A,Q,B)>0;T9A.exports=tdQ});var _9A=R((w1Y,k9A)=>{var edQ=vW(),AcQ=(A,Q,B)=>edQ(A,Q,B)<0;k9A.exports=AcQ});var y9A=R((j1Y,v9A)=>{var QcQ=vW(),BcQ=(A,Q,B)=>QcQ(A,Q,B)<=0;v9A.exports=BcQ});var g9A=R((O1Y,h9A)=>{var YcQ=j9A(),JcQ=P9A(),CcQ=S9A(),XcQ=Th(),GcQ=_9A(),FcQ=y9A(),WcQ=(A,Q,B,Y)=>{switch(Q){case"===":if(typeof A==="object")A=A.version;if(typeof B==="object")B=B.version;return A===B;case"!==":if(typeof A==="object")A=A.version;if(typeof B==="object")B=B.version;return A!==B;case"":case"=":case"==":return YcQ(A,B,Y);case"!=":return JcQ(A,B,Y);case">":return CcQ(A,B,Y);case">=":return XcQ(A,B,Y);case"<":return GcQ(A,B,Y);case"<=":return FcQ(A,B,Y);default:throw TypeError(`Invalid operator: ${Q}`)}};h9A.exports=WcQ});var c9A=R((P1Y,d9A)=>{var pI=Symbol("SemVer ANY");class t2{static get ANY(){return pI}constructor(A,Q){if(Q=x9A(Q),A instanceof t2)if(A.loose===!!Q.loose)return A;else A=A.value;if(A=A.trim().split(/\s+/).join(" "),kh("comparator",A,Q),this.options=Q,this.loose=!!Q.loose,this.parse(A),this.semver===pI)this.value="";else this.value=this.operator+this.semver.version;kh("comp",this)}parse(A){let Q=this.options.loose?f9A[b9A.COMPARATORLOOSE]:f9A[b9A.COMPARATOR],B=A.match(Q);if(!B)throw TypeError(`Invalid comparator: ${A}`);if(this.operator=B[1]!==void 0?B[1]:"",this.operator==="=")this.operator="";if(!B[2])this.semver=pI;else this.semver=new m9A(B[2],this.options.loose)}toString(){return this.value}test(A){if(kh("Comparator.test",A,this.options.loose),this.semver===pI||A===pI)return!0;if(typeof A==="string")try{A=new m9A(A,this.options)}catch(Q){return!1}return Sh(A,this.operator,this.semver,this.options)}intersects(A,Q){if(!(A instanceof t2))throw TypeError("a Comparator is required");if(this.operator===""){if(this.value==="")return!0;return new u9A(A.value,Q).test(this.value)}else if(A.operator===""){if(A.value==="")return!0;return new u9A(this.value,Q).test(A.semver)}if(Q=x9A(Q),Q.includePrerelease&&(this.value==="<0.0.0-0"||A.value==="<0.0.0-0"))return!1;if(!Q.includePrerelease&&(this.value.startsWith("<0.0.0")||A.value.startsWith("<0.0.0")))return!1;if(this.operator.startsWith(">")&&A.operator.startsWith(">"))return!0;if(this.operator.startsWith("<")&&A.operator.startsWith("<"))return!0;if(this.semver.version===A.semver.version&&this.operator.includes("=")&&A.operator.includes("="))return!0;if(Sh(this.semver,"<",A.semver,Q)&&this.operator.startsWith(">")&&A.operator.startsWith("<"))return!0;if(Sh(this.semver,">",A.semver,Q)&&this.operator.startsWith("<")&&A.operator.startsWith(">"))return!0;return!1}}d9A.exports=t2;var x9A=p2(),{safeRe:f9A,t:b9A}=lI(),Sh=g9A(),kh=cI(),m9A=l4(),u9A=_h()});var _h=R((T1Y,n9A)=>{var ZcQ=/\s+/g;class iI{constructor(A,Q){if(Q=UcQ(Q),A instanceof iI)if(A.loose===!!Q.loose&&A.includePrerelease===!!Q.includePrerelease)return A;else return new iI(A.raw,Q);if(A instanceof vh)return this.raw=A.value,this.set=[[A]],this.formatted=void 0,this;if(this.options=Q,this.loose=!!Q.loose,this.includePrerelease=!!Q.includePrerelease,this.raw=A.trim().replace(ZcQ," "),this.set=this.raw.split("||").map((B)=>this.parseRange(B.trim())).filter((B)=>B.length),!this.set.length)throw TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let B=this.set[0];if(this.set=this.set.filter((Y)=>!p9A(Y[0])),this.set.length===0)this.set=[B];else if(this.set.length>1){for(let Y of this.set)if(Y.length===1&&NcQ(Y[0])){this.set=[Y];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let A=0;A0)this.formatted+="||";let Q=this.set[A];for(let B=0;B0)this.formatted+=" ";this.formatted+=Q[B].toString().trim()}}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(A){let B=((this.options.includePrerelease&&HcQ)|(this.options.loose&&DcQ))+":"+A,Y=l9A.get(B);if(Y)return Y;let J=this.options.loose,C=J?j9[iJ.HYPHENRANGELOOSE]:j9[iJ.HYPHENRANGE];A=A.replace(C,TcQ(this.options.includePrerelease)),F0("hyphen replace",A),A=A.replace(j9[iJ.COMPARATORTRIM],KcQ),F0("comparator trim",A),A=A.replace(j9[iJ.TILDETRIM],VcQ),F0("tilde trim",A),A=A.replace(j9[iJ.CARETTRIM],IcQ),F0("caret trim",A);let X=A.split(" ").map((Z)=>LcQ(Z,this.options)).join(" ").split(/\s+/).map((Z)=>PcQ(Z,this.options));if(J)X=X.filter((Z)=>{return F0("loose invalid filter",Z,this.options),!!Z.match(j9[iJ.COMPARATORLOOSE])});F0("range list",X);let G=new Map,F=X.map((Z)=>new vh(Z,this.options));for(let Z of F){if(p9A(Z))return[Z];G.set(Z.value,Z)}if(G.size>1&&G.has(""))G.delete("");let W=[...G.values()];return l9A.set(B,W),W}intersects(A,Q){if(!(A instanceof iI))throw TypeError("a Range is required");return this.set.some((B)=>{return i9A(B,Q)&&A.set.some((Y)=>{return i9A(Y,Q)&&B.every((J)=>{return Y.every((C)=>{return J.intersects(C,Q)})})})})}test(A){if(!A)return!1;if(typeof A==="string")try{A=new EcQ(A,this.options)}catch(Q){return!1}for(let Q=0;QA.value==="<0.0.0-0",NcQ=(A)=>A.value==="",i9A=(A,Q)=>{let B=!0,Y=A.slice(),J=Y.pop();while(B&&Y.length)B=Y.every((C)=>{return J.intersects(C,Q)}),J=Y.pop();return B},LcQ=(A,Q)=>{return F0("comp",A,Q),A=zcQ(A,Q),F0("caret",A),A=qcQ(A,Q),F0("tildes",A),A=wcQ(A,Q),F0("xrange",A),A=OcQ(A,Q),F0("stars",A),A},nJ=(A)=>!A||A.toLowerCase()==="x"||A==="*",qcQ=(A,Q)=>{return A.trim().split(/\s+/).map((B)=>McQ(B,Q)).join(" ")},McQ=(A,Q)=>{let B=Q.loose?j9[iJ.TILDELOOSE]:j9[iJ.TILDE];return A.replace(B,(Y,J,C,X,G)=>{F0("tilde",A,Y,J,C,X,G);let F;if(nJ(J))F="";else if(nJ(C))F=`>=${J}.0.0 <${+J+1}.0.0-0`;else if(nJ(X))F=`>=${J}.${C}.0 <${J}.${+C+1}.0-0`;else if(G)F0("replaceTilde pr",G),F=`>=${J}.${C}.${X}-${G} <${J}.${+C+1}.0-0`;else F=`>=${J}.${C}.${X} <${J}.${+C+1}.0-0`;return F0("tilde return",F),F})},zcQ=(A,Q)=>{return A.trim().split(/\s+/).map((B)=>RcQ(B,Q)).join(" ")},RcQ=(A,Q)=>{F0("caret",A,Q);let B=Q.loose?j9[iJ.CARETLOOSE]:j9[iJ.CARET],Y=Q.includePrerelease?"-0":"";return A.replace(B,(J,C,X,G,F)=>{F0("caret",A,J,C,X,G,F);let W;if(nJ(C))W="";else if(nJ(X))W=`>=${C}.0.0${Y} <${+C+1}.0.0-0`;else if(nJ(G))if(C==="0")W=`>=${C}.${X}.0${Y} <${C}.${+X+1}.0-0`;else W=`>=${C}.${X}.0${Y} <${+C+1}.0.0-0`;else if(F)if(F0("replaceCaret pr",F),C==="0")if(X==="0")W=`>=${C}.${X}.${G}-${F} <${C}.${X}.${+G+1}-0`;else W=`>=${C}.${X}.${G}-${F} <${C}.${+X+1}.0-0`;else W=`>=${C}.${X}.${G}-${F} <${+C+1}.0.0-0`;else if(F0("no pr"),C==="0")if(X==="0")W=`>=${C}.${X}.${G}${Y} <${C}.${X}.${+G+1}-0`;else W=`>=${C}.${X}.${G}${Y} <${C}.${+X+1}.0-0`;else W=`>=${C}.${X}.${G} <${+C+1}.0.0-0`;return F0("caret return",W),W})},wcQ=(A,Q)=>{return F0("replaceXRanges",A,Q),A.split(/\s+/).map((B)=>jcQ(B,Q)).join(" ")},jcQ=(A,Q)=>{A=A.trim();let B=Q.loose?j9[iJ.XRANGELOOSE]:j9[iJ.XRANGE];return A.replace(B,(Y,J,C,X,G,F)=>{F0("xRange",A,Y,J,C,X,G,F);let W=nJ(C),Z=W||nJ(X),U=Z||nJ(G),$=U;if(J==="="&&$)J="";if(F=Q.includePrerelease?"-0":"",W)if(J===">"||J==="<")Y="<0.0.0-0";else Y="*";else if(J&&$){if(Z)X=0;if(G=0,J===">")if(J=">=",Z)C=+C+1,X=0,G=0;else X=+X+1,G=0;else if(J==="<=")if(J="<",Z)C=+C+1;else X=+X+1;if(J==="<")F="-0";Y=`${J+C}.${X}.${G}${F}`}else if(Z)Y=`>=${C}.0.0${F} <${+C+1}.0.0-0`;else if(U)Y=`>=${C}.${X}.0${F} <${C}.${+X+1}.0-0`;return F0("xRange return",Y),Y})},OcQ=(A,Q)=>{return F0("replaceStars",A,Q),A.trim().replace(j9[iJ.STAR],"")},PcQ=(A,Q)=>{return F0("replaceGTE0",A,Q),A.trim().replace(j9[Q.includePrerelease?iJ.GTE0PRE:iJ.GTE0],"")},TcQ=(A)=>(Q,B,Y,J,C,X,G,F,W,Z,U,$)=>{if(nJ(Y))B="";else if(nJ(J))B=`>=${Y}.0.0${A?"-0":""}`;else if(nJ(C))B=`>=${Y}.${J}.0${A?"-0":""}`;else if(X)B=`>=${B}`;else B=`>=${B}${A?"-0":""}`;if(nJ(W))F="";else if(nJ(Z))F=`<${+W+1}.0.0-0`;else if(nJ(U))F=`<${W}.${+Z+1}.0-0`;else if($)F=`<=${W}.${Z}.${U}-${$}`;else if(A)F=`<${W}.${Z}.${+U+1}-0`;else F=`<=${F}`;return`${B} ${F}`.trim()},ScQ=(A,Q,B)=>{for(let Y=0;Y0){let J=A[Y].semver;if(J.major===Q.major&&J.minor===Q.minor&&J.patch===Q.patch)return!0}}return!1}return!0}});var r9A=R((S1Y,s9A)=>{var kcQ=_h(),_cQ=(A,Q,B)=>{try{Q=new kcQ(Q,B)}catch(Y){return!1}return Q.test(A)};s9A.exports=_cQ});var yh=R((k1Y,vcQ)=>{vcQ.exports={name:"sharp",description:"High performance Node.js image processing, the fastest module to resize JPEG, PNG, WebP, GIF, AVIF and TIFF images",version:"0.34.3",author:"Lovell Fuller ",homepage:"https://sharp.pixelplumbing.com",contributors:["Pierre Inglebert ","Jonathan Ong ","Chanon Sajjamanochai ","Juliano Julio ","Daniel Gasienica ","Julian Walker ","Amit Pitaru ","Brandon Aaron ","Andreas Lind ","Maurus Cuelenaere ","Linus Unnebäck ","Victor Mateevitsi ","Alaric Holloway ","Bernhard K. Weisshuhn ","Chris Riley ","David Carley ","John Tobin ","Kenton Gray ","Felix Bünemann ","Samy Al Zahrani ","Chintan Thakkar ","F. Orlando Galashan ","Kleis Auke Wolthuizen ","Matt Hirsch ","Matthias Thoemmes ","Patrick Paskaris ","Jérémy Lal ","Rahul Nanwani ","Alice Monday ","Kristo Jorgenson ","YvesBos ","Guy Maliar ","Nicolas Coden ","Matt Parrish ","Marcel Bretschneider ","Matthew McEachen ","Jarda Kotěšovec ","Kenric D'Souza ","Oleh Aleinyk ","Marcel Bretschneider ","Andrea Bianco ","Rik Heywood ","Thomas Parisot ","Nathan Graves ","Tom Lokhorst ","Espen Hovlandsdal ","Sylvain Dumont ","Alun Davies ","Aidan Hoolachan ","Axel Eirola ","Freezy ","Daiz ","Julian Aubourg ","Keith Belovay ","Michael B. Klein ","Jordan Prudhomme ","Ilya Ovdin ","Andargor ","Paul Neave ","Brendan Kennedy ","Brychan Bennett-Odlum ","Edward Silverton ","Roman Malieiev ","Tomas Szabo ","Robert O'Rourke ","Guillermo Alfonso Varela Chouciño ","Christian Flintrup ","Manan Jadhav ","Leon Radley ","alza54 ","Jacob Smith ","Michael Nutt ","Brad Parham ","Taneli Vatanen ","Joris Dugué ","Chris Banks ","Ompal Singh ","Brodan ","Ankur Parihar ","Brahim Ait elhaj ","Mart Jansink ","Lachlan Newman ","Dennis Beatty ","Ingvar Stepanyan ","Don Denton "],scripts:{install:"node install/check.js",clean:"rm -rf src/build/ .nyc_output/ coverage/ test/fixtures/output.*",test:"npm run test-lint && npm run test-unit && npm run test-licensing && npm run test-types","test-lint":"semistandard && cpplint","test-unit":"nyc --reporter=lcov --reporter=text --check-coverage --branches=100 mocha","test-licensing":'license-checker --production --summary --onlyAllow="Apache-2.0;BSD;ISC;LGPL-3.0-or-later;MIT"',"test-leak":"./test/leak/leak.sh","test-types":"tsd","package-from-local-build":"node npm/from-local-build.js","docs-build":"node docs/build.mjs","docs-serve":"cd docs && npm start","docs-publish":"cd docs && npm run build && npx firebase-tools deploy --project pixelplumbing --only hosting:pixelplumbing-sharp"},type:"commonjs",main:"lib/index.js",types:"lib/index.d.ts",files:["install","lib","src/*.{cc,h,gyp}"],repository:{type:"git",url:"git://github.com/lovell/sharp.git"},keywords:["jpeg","png","webp","avif","tiff","gif","svg","jp2","dzi","image","resize","thumbnail","crop","embed","libvips","vips"],dependencies:{color:"^4.2.3","detect-libc":"^2.0.4",semver:"^7.7.2"},optionalDependencies:{"@img/sharp-darwin-arm64":"0.34.3","@img/sharp-darwin-x64":"0.34.3","@img/sharp-libvips-darwin-arm64":"1.2.0","@img/sharp-libvips-darwin-x64":"1.2.0","@img/sharp-libvips-linux-arm":"1.2.0","@img/sharp-libvips-linux-arm64":"1.2.0","@img/sharp-libvips-linux-ppc64":"1.2.0","@img/sharp-libvips-linux-s390x":"1.2.0","@img/sharp-libvips-linux-x64":"1.2.0","@img/sharp-libvips-linuxmusl-arm64":"1.2.0","@img/sharp-libvips-linuxmusl-x64":"1.2.0","@img/sharp-linux-arm":"0.34.3","@img/sharp-linux-arm64":"0.34.3","@img/sharp-linux-ppc64":"0.34.3","@img/sharp-linux-s390x":"0.34.3","@img/sharp-linux-x64":"0.34.3","@img/sharp-linuxmusl-arm64":"0.34.3","@img/sharp-linuxmusl-x64":"0.34.3","@img/sharp-wasm32":"0.34.3","@img/sharp-win32-arm64":"0.34.3","@img/sharp-win32-ia32":"0.34.3","@img/sharp-win32-x64":"0.34.3"},devDependencies:{"@emnapi/runtime":"^1.4.4","@img/sharp-libvips-dev":"1.2.0","@img/sharp-libvips-dev-wasm32":"1.2.0","@img/sharp-libvips-win32-arm64":"1.2.0","@img/sharp-libvips-win32-ia32":"1.2.0","@img/sharp-libvips-win32-x64":"1.2.0","@types/node":"*",cc:"^3.0.1",emnapi:"^1.4.4","exif-reader":"^2.0.2","extract-zip":"^2.0.1",icc:"^3.0.0","jsdoc-to-markdown":"^9.1.1","license-checker":"^25.0.1",mocha:"^11.7.1","node-addon-api":"^8.4.0","node-gyp":"^11.2.0",nyc:"^17.1.0",semistandard:"^17.0.0","tar-fs":"^3.1.0",tsd:"^0.32.0"},license:"Apache-2.0",engines:{node:"^18.17.0 || ^20.3.0 || >=21.0.0"},config:{libvips:">=8.17.1"},funding:{url:"https://opencollective.com/libvips"},semistandard:{env:["mocha"]},cc:{linelength:"120",filter:["build/include"]},nyc:{include:["lib"]},tsd:{directory:"test/types/"}}});var gh=R((_1Y,C8A)=>{var{spawnSync:e2}=u("node:child_process"),{createHash:ycQ}=u("node:crypto"),e9A=D9A(),hcQ=Th(),gcQ=r9A(),a9A=dI(),{config:xcQ,engines:o9A,optionalDependencies:fcQ}=yh(),bcQ=process.env.npm_package_config_libvips||xcQ.libvips,A8A=e9A(bcQ).version,mcQ=["darwin-arm64","darwin-x64","linux-arm","linux-arm64","linux-ppc64","linux-s390x","linux-x64","linuxmusl-arm64","linuxmusl-x64","win32-arm64","win32-ia32","win32-x64"],A3={encoding:"utf8",shell:!0},ucQ=(A)=>{if(A instanceof Error)console.error(`sharp: Installation error: ${A.message}`);else console.log(`sharp: ${A}`)},Q8A=()=>a9A.isNonGlibcLinuxSync()?a9A.familySync():"",dcQ=()=>`${process.platform}${Q8A()}-${process.arch}`,p4=()=>{if(B8A())return"wasm32";let{npm_config_arch:A,npm_config_platform:Q,npm_config_libc:B}=process.env,Y=typeof B==="string"?B:Q8A();return`${Q||process.platform}${Y}-${A||process.arch}`},ccQ=()=>{try{return u(`@img/sharp-libvips-dev-${p4()}/include`)}catch{try{return (()=>{throw new Error("Cannot require module "+"@img/sharp-libvips-dev/include");})()}catch{}}return""},lcQ=()=>{try{return (()=>{throw new Error("Cannot require module "+"@img/sharp-libvips-dev/cplusplus");})()}catch{}return""},pcQ=()=>{try{return u(`@img/sharp-libvips-dev-${p4()}/lib`)}catch{try{return u(`@img/sharp-libvips-${p4()}/lib`)}catch{}}return""},icQ=()=>{if(process.release?.name==="node"&&process.versions){if(!gcQ(process.versions.node,o9A.node))return{found:process.versions.node,expected:o9A.node}}},B8A=()=>{let{CC:A}=process.env;return Boolean(A&&A.endsWith("/emcc"))},ncQ=()=>{if(process.platform==="darwin"&&process.arch==="x64")return(e2("sysctl sysctl.proc_translated",A3).stdout||"").trim()==="sysctl.proc_translated: 1";return!1},t9A=(A)=>ycQ("sha512").update(A).digest("hex"),scQ=()=>{try{let A=t9A(`imgsharp-libvips-${p4()}`),Q=e9A(fcQ[`@img/sharp-libvips-${p4()}`],{includePrerelease:!0}).version;return t9A(`${A}npm:${Q}`).slice(0,10)}catch{}return""},rcQ=()=>e2(`node-gyp rebuild --directory=src ${B8A()?"--nodedir=emscripten":""}`,{...A3,stdio:"inherit"}).status,Y8A=()=>{if(process.platform!=="win32")return(e2("pkg-config --modversion vips-cpp",{...A3,env:{...process.env,PKG_CONFIG_PATH:J8A()}}).stdout||"").trim();else return""},J8A=()=>{if(process.platform!=="win32")return[(e2('which brew >/dev/null 2>&1 && brew environment --plain | grep PKG_CONFIG_LIBDIR | cut -d" " -f2',A3).stdout||"").trim(),process.env.PKG_CONFIG_PATH,"/usr/local/lib/pkgconfig","/usr/lib/pkgconfig","/usr/local/libdata/pkgconfig","/usr/libdata/pkgconfig"].filter(Boolean).join(":");else return""},hh=(A,Q,B)=>{if(B)B(`Detected ${Q}, skipping search for globally-installed libvips`);return A},acQ=(A)=>{if(Boolean(process.env.SHARP_IGNORE_GLOBAL_LIBVIPS)===!0)return hh(!1,"SHARP_IGNORE_GLOBAL_LIBVIPS",A);if(Boolean(process.env.SHARP_FORCE_GLOBAL_LIBVIPS)===!0)return hh(!0,"SHARP_FORCE_GLOBAL_LIBVIPS",A);if(ncQ())return hh(!1,"Rosetta",A);let Q=Y8A();return!!Q&&hcQ(Q,A8A)};C8A.exports={minimumLibvipsVersion:A8A,prebuiltPlatforms:mcQ,buildPlatformArch:p4,buildSharpLibvipsIncludeDir:ccQ,buildSharpLibvipsCPlusPlusDir:lcQ,buildSharpLibvipsLibDir:pcQ,isUnsupportedNodeRuntime:icQ,runtimePlatformArch:dcQ,log:ucQ,yarnLocator:scQ,spawnRebuild:rcQ,globalLibvipsVersion:Y8A,pkgConfigPath:J8A,useGlobalLibvips:acQ}});var sI=R((y1Y,G8A)=>{var{familySync:ocQ,versionSync:tcQ}=dI(),{runtimePlatformArch:ecQ,isUnsupportedNodeRuntime:X8A,prebuiltPlatforms:AlQ,minimumLibvipsVersion:QlQ}=gh(),yW=ecQ(),BlQ=[`../src/build/Release/sharp-${yW}.node`,"../src/build/Release/sharp-wasm32.node",`@img/sharp-${yW}/sharp.node`,"@img/sharp-wasm32/sharp.node"],xh,i4,nI=[];for(xh of BlQ)try{i4=u(xh);break}catch(A){nI.push(A)}if(i4&&xh.startsWith("@img/sharp-linux-x64")&&!i4._isUsingX64V2()){let A=Error("Prebuilt binaries for linux-x64 require v2 microarchitecture");A.code="Unsupported CPU",nI.push(A),i4=null}if(i4)G8A.exports=i4;else{let[A,Q,B]=["linux","darwin","win32"].map((C)=>yW.startsWith(C)),Y=[`Could not load the "sharp" module using the ${yW} runtime`];nI.forEach((C)=>{if(C.code!=="MODULE_NOT_FOUND")Y.push(`${C.code}: ${C.message}`)});let J=nI.map((C)=>C.message).join(" ");if(Y.push("Possible solutions:"),X8A()){let{found:C,expected:X}=X8A();Y.push("- Please upgrade Node.js:",` Found ${C}`,` Requires ${X}`)}else if(AlQ.includes(yW)){let[C,X]=yW.split("-"),G=C.endsWith("musl")?" --libc=musl":"";Y.push("- Ensure optional dependencies can be installed:"," npm install --include=optional sharp","- Ensure your package manager supports multi-platform installation:"," See https://sharp.pixelplumbing.com/install#cross-platform","- Add platform-specific dependencies:",` npm install --os=${C.replace("musl","")}${G} --cpu=${X} sharp`)}else Y.push(`- Manually install libvips >= ${QlQ}`,"- Add experimental WebAssembly-based dependencies:"," npm install --cpu=wasm32 sharp"," npm install @img/sharp-wasm32");if(A&&/(symbol not found|CXXABI_)/i.test(J))try{let{config:C}=u(`@img/sharp-libvips-${yW}/package`),X=`${ocQ()} ${tcQ()}`,G=`${C.musl?"musl":"glibc"} ${C.musl||C.glibc}`;Y.push("- Update your OS:",` Found ${X}`,` Requires ${G}`)}catch(C){}if(A&&/\/snap\/core[0-9]{2}/.test(J))Y.push("- Remove the Node.js Snap, which does not support native modules"," snap remove node");if(Q&&/Incompatible library version/.test(J))Y.push("- Update Homebrew:"," brew update && brew upgrade vips");if(nI.some((C)=>C.code==="ERR_DLOPEN_DISABLED"))Y.push("- Run Node.js without using the --no-addons flag");if(B&&/The specified procedure could not be found/.test(J))Y.push("- Using the canvas package on Windows?"," See https://sharp.pixelplumbing.com/install#canvas-and-windows","- Check for outdated versions of sharp in the dependency tree:"," npm ls sharp");throw Y.push("- Consult the installation documentation:"," See https://sharp.pixelplumbing.com/install"),Error(Y.join(` -`))}});var W8A=R((g1Y,F8A)=>{var YlQ=u("node:util"),fh=u("node:stream"),JlQ=j1();sI();var ClQ=YlQ.debuglog("sharp"),hW=function(A,Q){if(arguments.length===1&&!JlQ.defined(A))throw Error("Invalid input");if(!(this instanceof hW))return new hW(A,Q);return fh.Duplex.call(this),this.options={topOffsetPre:-1,leftOffsetPre:-1,widthPre:-1,heightPre:-1,topOffsetPost:-1,leftOffsetPost:-1,widthPost:-1,heightPost:-1,width:-1,height:-1,canvas:"crop",position:0,resizeBackground:[0,0,0,255],angle:0,rotationAngle:0,rotationBackground:[0,0,0,255],rotateBeforePreExtract:!1,flip:!1,flop:!1,extendTop:0,extendBottom:0,extendLeft:0,extendRight:0,extendBackground:[0,0,0,255],extendWith:"background",withoutEnlargement:!1,withoutReduction:!1,affineMatrix:[],affineBackground:[0,0,0,255],affineIdx:0,affineIdy:0,affineOdx:0,affineOdy:0,affineInterpolator:this.constructor.interpolators.bilinear,kernel:"lanczos3",fastShrinkOnLoad:!0,tint:[-1,0,0,0],flatten:!1,flattenBackground:[0,0,0],unflatten:!1,negate:!1,negateAlpha:!0,medianSize:0,blurSigma:0,precision:"integer",minAmpl:0.2,sharpenSigma:0,sharpenM1:1,sharpenM2:2,sharpenX1:2,sharpenY2:10,sharpenY3:20,threshold:0,thresholdGrayscale:!0,trimBackground:[],trimThreshold:-1,trimLineArt:!1,dilateWidth:0,erodeWidth:0,gamma:0,gammaOut:0,greyscale:!1,normalise:!1,normaliseLower:1,normaliseUpper:99,claheWidth:0,claheHeight:0,claheMaxSlope:3,brightness:1,saturation:1,hue:0,lightness:0,booleanBufferIn:null,booleanFileIn:"",joinChannelIn:[],extractChannel:-1,removeAlpha:!1,ensureAlpha:-1,colourspace:"srgb",colourspacePipeline:"last",composite:[],fileOut:"",formatOut:"input",streamOut:!1,keepMetadata:0,withMetadataOrientation:-1,withMetadataDensity:0,withIccProfile:"",withExif:{},withExifMerge:!0,withXmp:"",resolveWithObject:!1,loop:-1,delay:[],jpegQuality:80,jpegProgressive:!1,jpegChromaSubsampling:"4:2:0",jpegTrellisQuantisation:!1,jpegOvershootDeringing:!1,jpegOptimiseScans:!1,jpegOptimiseCoding:!0,jpegQuantisationTable:0,pngProgressive:!1,pngCompressionLevel:6,pngAdaptiveFiltering:!1,pngPalette:!1,pngQuality:100,pngEffort:7,pngBitdepth:8,pngDither:1,jp2Quality:80,jp2TileHeight:512,jp2TileWidth:512,jp2Lossless:!1,jp2ChromaSubsampling:"4:4:4",webpQuality:80,webpAlphaQuality:100,webpLossless:!1,webpNearLossless:!1,webpSmartSubsample:!1,webpSmartDeblock:!1,webpPreset:"default",webpEffort:4,webpMinSize:!1,webpMixed:!1,gifBitdepth:8,gifEffort:7,gifDither:1,gifInterFrameMaxError:0,gifInterPaletteMaxError:3,gifKeepDuplicateFrames:!1,gifReuse:!0,gifProgressive:!1,tiffQuality:80,tiffCompression:"jpeg",tiffPredictor:"horizontal",tiffPyramid:!1,tiffMiniswhite:!1,tiffBitdepth:8,tiffTile:!1,tiffTileHeight:256,tiffTileWidth:256,tiffXres:1,tiffYres:1,tiffResolutionUnit:"inch",heifQuality:50,heifLossless:!1,heifCompression:"av1",heifEffort:4,heifChromaSubsampling:"4:4:4",heifBitdepth:8,jxlDistance:1,jxlDecodingTier:0,jxlEffort:7,jxlLossless:!1,rawDepth:"uchar",tileSize:256,tileOverlap:0,tileContainer:"fs",tileLayout:"dz",tileFormat:"last",tileDepth:"last",tileAngle:0,tileSkipBlanks:-1,tileBackground:[255,255,255,255],tileCentre:!1,tileId:"https://example.com/iiif",tileBasename:"",timeoutSeconds:0,linearA:[],linearB:[],pdfBackground:[255,255,255,255],debuglog:(B)=>{this.emit("warning",B),ClQ(B)},queueListener:function(B){hW.queue.emit("change",B)}},this.options.input=this._createInputDescriptor(A,Q,{allowStream:!0}),this};Object.setPrototypeOf(hW.prototype,fh.Duplex.prototype);Object.setPrototypeOf(hW,fh.Duplex);function XlQ(){let A=this.constructor.call(),{debuglog:Q,queueListener:B,...Y}=this.options;if(A.options=structuredClone(Y),A.options.debuglog=Q,A.options.queueListener=B,this._isStreamInput())this.on("finish",()=>{this._flattenBufferIn(),A.options.input.buffer=this.options.input.buffer,A.emit("finish")});return A}Object.assign(hW.prototype,{clone:XlQ});F8A.exports=hW});var U8A=R((x1Y,$8A)=>{var AA=j1(),Q7=sI(),GlQ={left:"low",top:"low",low:"low",center:"centre",centre:"centre",right:"high",bottom:"high",high:"high"},FlQ=["failOn","limitInputPixels","unlimited","animated","autoOrient","density","ignoreIcc","page","pages","sequentialRead","jp2","openSlide","pdf","raw","svg","tiff","failOnError","openSlideLevel","pdfBackground","tiffSubifd"];function Z8A(A){let Q=FlQ.filter((B)=>AA.defined(A[B])).map((B)=>[B,A[B]]);return Q.length?Object.fromEntries(Q):void 0}function WlQ(A,Q,B){let Y={autoOrient:!1,failOn:"warning",limitInputPixels:Math.pow(16383,2),ignoreIcc:!1,unlimited:!1,sequentialRead:!0};if(AA.string(A))Y.file=A;else if(AA.buffer(A)){if(A.length===0)throw Error("Input Buffer is empty");Y.buffer=A}else if(AA.arrayBuffer(A)){if(A.byteLength===0)throw Error("Input bit Array is empty");Y.buffer=Buffer.from(A,0,A.byteLength)}else if(AA.typedArray(A)){if(A.length===0)throw Error("Input Bit Array is empty");Y.buffer=Buffer.from(A.buffer,A.byteOffset,A.byteLength)}else if(AA.plainObject(A)&&!AA.defined(Q)){if(Q=A,Z8A(Q))Y.buffer=[]}else if(!AA.defined(A)&&!AA.defined(Q)&&AA.object(B)&&B.allowStream)Y.buffer=[];else if(Array.isArray(A))if(A.length>1)if(!this.options.joining)this.options.joining=!0,this.options.join=A.map((J)=>this._createInputDescriptor(J));else throw Error("Recursive join is unsupported");else throw Error("Expected at least two images to join");else throw Error(`Unsupported input '${A}' of type ${typeof A}${AA.defined(Q)?` when also providing options of type ${typeof Q}`:""}`);if(AA.object(Q)){if(AA.defined(Q.failOnError))if(AA.bool(Q.failOnError))Y.failOn=Q.failOnError?"warning":"none";else throw AA.invalidParameterError("failOnError","boolean",Q.failOnError);if(AA.defined(Q.failOn))if(AA.string(Q.failOn)&&AA.inArray(Q.failOn,["none","truncated","error","warning"]))Y.failOn=Q.failOn;else throw AA.invalidParameterError("failOn","one of: none, truncated, error, warning",Q.failOn);if(AA.defined(Q.autoOrient))if(AA.bool(Q.autoOrient))Y.autoOrient=Q.autoOrient;else throw AA.invalidParameterError("autoOrient","boolean",Q.autoOrient);if(AA.defined(Q.density))if(AA.inRange(Q.density,1,1e5))Y.density=Q.density;else throw AA.invalidParameterError("density","number between 1 and 100000",Q.density);if(AA.defined(Q.ignoreIcc))if(AA.bool(Q.ignoreIcc))Y.ignoreIcc=Q.ignoreIcc;else throw AA.invalidParameterError("ignoreIcc","boolean",Q.ignoreIcc);if(AA.defined(Q.limitInputPixels))if(AA.bool(Q.limitInputPixels))Y.limitInputPixels=Q.limitInputPixels?Math.pow(16383,2):0;else if(AA.integer(Q.limitInputPixels)&&AA.inRange(Q.limitInputPixels,0,Number.MAX_SAFE_INTEGER))Y.limitInputPixels=Q.limitInputPixels;else throw AA.invalidParameterError("limitInputPixels","positive integer",Q.limitInputPixels);if(AA.defined(Q.unlimited))if(AA.bool(Q.unlimited))Y.unlimited=Q.unlimited;else throw AA.invalidParameterError("unlimited","boolean",Q.unlimited);if(AA.defined(Q.sequentialRead))if(AA.bool(Q.sequentialRead))Y.sequentialRead=Q.sequentialRead;else throw AA.invalidParameterError("sequentialRead","boolean",Q.sequentialRead);if(AA.defined(Q.raw)){if(AA.object(Q.raw)&&AA.integer(Q.raw.width)&&Q.raw.width>0&&AA.integer(Q.raw.height)&&Q.raw.height>0&&AA.integer(Q.raw.channels)&&AA.inRange(Q.raw.channels,1,4))switch(Y.rawWidth=Q.raw.width,Y.rawHeight=Q.raw.height,Y.rawChannels=Q.raw.channels,A.constructor){case Uint8Array:case Uint8ClampedArray:Y.rawDepth="uchar";break;case Int8Array:Y.rawDepth="char";break;case Uint16Array:Y.rawDepth="ushort";break;case Int16Array:Y.rawDepth="short";break;case Uint32Array:Y.rawDepth="uint";break;case Int32Array:Y.rawDepth="int";break;case Float32Array:Y.rawDepth="float";break;case Float64Array:Y.rawDepth="double";break;default:Y.rawDepth="uchar";break}else throw Error("Expected width, height and channels for raw pixel input");if(Y.rawPremultiplied=!1,AA.defined(Q.raw.premultiplied))if(AA.bool(Q.raw.premultiplied))Y.rawPremultiplied=Q.raw.premultiplied;else throw AA.invalidParameterError("raw.premultiplied","boolean",Q.raw.premultiplied);if(Y.rawPageHeight=0,AA.defined(Q.raw.pageHeight))if(AA.integer(Q.raw.pageHeight)&&Q.raw.pageHeight>0&&Q.raw.pageHeight<=Q.raw.height){if(Q.raw.height%Q.raw.pageHeight!==0)throw Error(`Expected raw.height ${Q.raw.height} to be a multiple of raw.pageHeight ${Q.raw.pageHeight}`);Y.rawPageHeight=Q.raw.pageHeight}else throw AA.invalidParameterError("raw.pageHeight","positive integer",Q.raw.pageHeight)}if(AA.defined(Q.animated))if(AA.bool(Q.animated))Y.pages=Q.animated?-1:1;else throw AA.invalidParameterError("animated","boolean",Q.animated);if(AA.defined(Q.pages))if(AA.integer(Q.pages)&&AA.inRange(Q.pages,-1,1e5))Y.pages=Q.pages;else throw AA.invalidParameterError("pages","integer between -1 and 100000",Q.pages);if(AA.defined(Q.page))if(AA.integer(Q.page)&&AA.inRange(Q.page,0,1e5))Y.page=Q.page;else throw AA.invalidParameterError("page","integer between 0 and 100000",Q.page);if(AA.object(Q.openSlide)&&AA.defined(Q.openSlide.level))if(AA.integer(Q.openSlide.level)&&AA.inRange(Q.openSlide.level,0,256))Y.openSlideLevel=Q.openSlide.level;else throw AA.invalidParameterError("openSlide.level","integer between 0 and 256",Q.openSlide.level);else if(AA.defined(Q.level))if(AA.integer(Q.level)&&AA.inRange(Q.level,0,256))Y.openSlideLevel=Q.level;else throw AA.invalidParameterError("level","integer between 0 and 256",Q.level);if(AA.object(Q.tiff)&&AA.defined(Q.tiff.subifd))if(AA.integer(Q.tiff.subifd)&&AA.inRange(Q.tiff.subifd,-1,1e5))Y.tiffSubifd=Q.tiff.subifd;else throw AA.invalidParameterError("tiff.subifd","integer between -1 and 100000",Q.tiff.subifd);else if(AA.defined(Q.subifd))if(AA.integer(Q.subifd)&&AA.inRange(Q.subifd,-1,1e5))Y.tiffSubifd=Q.subifd;else throw AA.invalidParameterError("subifd","integer between -1 and 100000",Q.subifd);if(AA.object(Q.svg)){if(AA.defined(Q.svg.stylesheet))if(AA.string(Q.svg.stylesheet))Y.svgStylesheet=Q.svg.stylesheet;else throw AA.invalidParameterError("svg.stylesheet","string",Q.svg.stylesheet);if(AA.defined(Q.svg.highBitdepth))if(AA.bool(Q.svg.highBitdepth))Y.svgHighBitdepth=Q.svg.highBitdepth;else throw AA.invalidParameterError("svg.highBitdepth","boolean",Q.svg.highBitdepth)}if(AA.object(Q.pdf)&&AA.defined(Q.pdf.background))Y.pdfBackground=this._getBackgroundColourOption(Q.pdf.background);else if(AA.defined(Q.pdfBackground))Y.pdfBackground=this._getBackgroundColourOption(Q.pdfBackground);if(AA.object(Q.jp2)&&AA.defined(Q.jp2.oneshot))if(AA.bool(Q.jp2.oneshot))Y.jp2Oneshot=Q.jp2.oneshot;else throw AA.invalidParameterError("jp2.oneshot","boolean",Q.jp2.oneshot);if(AA.defined(Q.create))if(AA.object(Q.create)&&AA.integer(Q.create.width)&&Q.create.width>0&&AA.integer(Q.create.height)&&Q.create.height>0&&AA.integer(Q.create.channels)){if(Y.createWidth=Q.create.width,Y.createHeight=Q.create.height,Y.createChannels=Q.create.channels,Y.createPageHeight=0,AA.defined(Q.create.pageHeight))if(AA.integer(Q.create.pageHeight)&&Q.create.pageHeight>0&&Q.create.pageHeight<=Q.create.height){if(Q.create.height%Q.create.pageHeight!==0)throw Error(`Expected create.height ${Q.create.height} to be a multiple of create.pageHeight ${Q.create.pageHeight}`);Y.createPageHeight=Q.create.pageHeight}else throw AA.invalidParameterError("create.pageHeight","positive integer",Q.create.pageHeight);if(AA.defined(Q.create.noise)){if(!AA.object(Q.create.noise))throw Error("Expected noise to be an object");if(Q.create.noise.type!=="gaussian")throw Error("Only gaussian noise is supported at the moment");if(Y.createNoiseType=Q.create.noise.type,!AA.inRange(Q.create.channels,1,4))throw AA.invalidParameterError("create.channels","number between 1 and 4",Q.create.channels);if(Y.createNoiseMean=128,AA.defined(Q.create.noise.mean))if(AA.number(Q.create.noise.mean)&&AA.inRange(Q.create.noise.mean,0,1e4))Y.createNoiseMean=Q.create.noise.mean;else throw AA.invalidParameterError("create.noise.mean","number between 0 and 10000",Q.create.noise.mean);if(Y.createNoiseSigma=30,AA.defined(Q.create.noise.sigma))if(AA.number(Q.create.noise.sigma)&&AA.inRange(Q.create.noise.sigma,0,1e4))Y.createNoiseSigma=Q.create.noise.sigma;else throw AA.invalidParameterError("create.noise.sigma","number between 0 and 10000",Q.create.noise.sigma)}else if(AA.defined(Q.create.background)){if(!AA.inRange(Q.create.channels,3,4))throw AA.invalidParameterError("create.channels","number between 3 and 4",Q.create.channels);Y.createBackground=this._getBackgroundColourOption(Q.create.background)}else throw Error("Expected valid noise or background to create a new input image");delete Y.buffer}else throw Error("Expected valid width, height and channels to create a new input image");if(AA.defined(Q.text))if(AA.object(Q.text)&&AA.string(Q.text.text)){if(Y.textValue=Q.text.text,AA.defined(Q.text.height)&&AA.defined(Q.text.dpi))throw Error("Expected only one of dpi or height");if(AA.defined(Q.text.font))if(AA.string(Q.text.font))Y.textFont=Q.text.font;else throw AA.invalidParameterError("text.font","string",Q.text.font);if(AA.defined(Q.text.fontfile))if(AA.string(Q.text.fontfile))Y.textFontfile=Q.text.fontfile;else throw AA.invalidParameterError("text.fontfile","string",Q.text.fontfile);if(AA.defined(Q.text.width))if(AA.integer(Q.text.width)&&Q.text.width>0)Y.textWidth=Q.text.width;else throw AA.invalidParameterError("text.width","positive integer",Q.text.width);if(AA.defined(Q.text.height))if(AA.integer(Q.text.height)&&Q.text.height>0)Y.textHeight=Q.text.height;else throw AA.invalidParameterError("text.height","positive integer",Q.text.height);if(AA.defined(Q.text.align))if(AA.string(Q.text.align)&&AA.string(this.constructor.align[Q.text.align]))Y.textAlign=this.constructor.align[Q.text.align];else throw AA.invalidParameterError("text.align","valid alignment",Q.text.align);if(AA.defined(Q.text.justify))if(AA.bool(Q.text.justify))Y.textJustify=Q.text.justify;else throw AA.invalidParameterError("text.justify","boolean",Q.text.justify);if(AA.defined(Q.text.dpi))if(AA.integer(Q.text.dpi)&&AA.inRange(Q.text.dpi,1,1e6))Y.textDpi=Q.text.dpi;else throw AA.invalidParameterError("text.dpi","integer between 1 and 1000000",Q.text.dpi);if(AA.defined(Q.text.rgba))if(AA.bool(Q.text.rgba))Y.textRgba=Q.text.rgba;else throw AA.invalidParameterError("text.rgba","bool",Q.text.rgba);if(AA.defined(Q.text.spacing))if(AA.integer(Q.text.spacing)&&AA.inRange(Q.text.spacing,-1e6,1e6))Y.textSpacing=Q.text.spacing;else throw AA.invalidParameterError("text.spacing","integer between -1000000 and 1000000",Q.text.spacing);if(AA.defined(Q.text.wrap))if(AA.string(Q.text.wrap)&&AA.inArray(Q.text.wrap,["word","char","word-char","none"]))Y.textWrap=Q.text.wrap;else throw AA.invalidParameterError("text.wrap","one of: word, char, word-char, none",Q.text.wrap);delete Y.buffer}else throw Error("Expected a valid string to create an image with text.");if(AA.defined(Q.join))if(AA.defined(this.options.join)){if(AA.defined(Q.join.animated))if(AA.bool(Q.join.animated))Y.joinAnimated=Q.join.animated;else throw AA.invalidParameterError("join.animated","boolean",Q.join.animated);if(AA.defined(Q.join.across))if(AA.integer(Q.join.across)&&AA.inRange(Q.join.across,1,1e6))Y.joinAcross=Q.join.across;else throw AA.invalidParameterError("join.across","integer between 1 and 100000",Q.join.across);if(AA.defined(Q.join.shim))if(AA.integer(Q.join.shim)&&AA.inRange(Q.join.shim,0,1e6))Y.joinShim=Q.join.shim;else throw AA.invalidParameterError("join.shim","integer between 0 and 100000",Q.join.shim);if(AA.defined(Q.join.background))Y.joinBackground=this._getBackgroundColourOption(Q.join.background);if(AA.defined(Q.join.halign))if(AA.string(Q.join.halign)&&AA.string(this.constructor.align[Q.join.halign]))Y.joinHalign=this.constructor.align[Q.join.halign];else throw AA.invalidParameterError("join.halign","valid alignment",Q.join.halign);if(AA.defined(Q.join.valign))if(AA.string(Q.join.valign)&&AA.string(this.constructor.align[Q.join.valign]))Y.joinValign=this.constructor.align[Q.join.valign];else throw AA.invalidParameterError("join.valign","valid alignment",Q.join.valign)}else throw Error("Expected input to be an array of images to join")}else if(AA.defined(Q))throw Error("Invalid input options "+Q);return Y}function ZlQ(A,Q,B){if(Array.isArray(this.options.input.buffer))if(AA.buffer(A)){if(this.options.input.buffer.length===0)this.on("finish",()=>{this.streamInFinished=!0});this.options.input.buffer.push(A),B()}else B(Error("Non-Buffer data on Writable Stream"));else B(Error("Unexpected data on Writable Stream"))}function $lQ(){if(this._isStreamInput())this.options.input.buffer=Buffer.concat(this.options.input.buffer)}function UlQ(){return Array.isArray(this.options.input.buffer)}function ElQ(A){let Q=Error();if(AA.fn(A)){if(this._isStreamInput())this.on("finish",()=>{this._flattenBufferIn(),Q7.metadata(this.options,(B,Y)=>{if(B)A(AA.nativeError(B,Q));else A(null,Y)})});else Q7.metadata(this.options,(B,Y)=>{if(B)A(AA.nativeError(B,Q));else A(null,Y)});return this}else if(this._isStreamInput())return new Promise((B,Y)=>{let J=()=>{this._flattenBufferIn(),Q7.metadata(this.options,(C,X)=>{if(C)Y(AA.nativeError(C,Q));else B(X)})};if(this.writableFinished)J();else this.once("finish",J)});else return new Promise((B,Y)=>{Q7.metadata(this.options,(J,C)=>{if(J)Y(AA.nativeError(J,Q));else B(C)})})}function KlQ(A){let Q=Error();if(AA.fn(A)){if(this._isStreamInput())this.on("finish",()=>{this._flattenBufferIn(),Q7.stats(this.options,(B,Y)=>{if(B)A(AA.nativeError(B,Q));else A(null,Y)})});else Q7.stats(this.options,(B,Y)=>{if(B)A(AA.nativeError(B,Q));else A(null,Y)});return this}else if(this._isStreamInput())return new Promise((B,Y)=>{this.on("finish",function(){this._flattenBufferIn(),Q7.stats(this.options,(J,C)=>{if(J)Y(AA.nativeError(J,Q));else B(C)})})});else return new Promise((B,Y)=>{Q7.stats(this.options,(J,C)=>{if(J)Y(AA.nativeError(J,Q));else B(C)})})}$8A.exports=function(A){Object.assign(A.prototype,{_inputOptionsFromObject:Z8A,_createInputDescriptor:WlQ,_write:ZlQ,_flattenBufferIn:$lQ,_isStreamInput:UlQ,metadata:ElQ,stats:KlQ}),A.align=GlQ}});var D8A=R((f1Y,H8A)=>{var XQ=j1(),K8A={center:0,centre:0,north:1,east:2,south:3,west:4,northeast:5,southeast:6,southwest:7,northwest:8},V8A={top:1,right:2,bottom:3,left:4,"right top":5,"right bottom":6,"left bottom":7,"left top":8},E8A={background:"background",copy:"copy",repeat:"repeat",mirror:"mirror"},I8A={entropy:16,attention:17},bh={nearest:"nearest",linear:"linear",cubic:"cubic",mitchell:"mitchell",lanczos2:"lanczos2",lanczos3:"lanczos3",mks2013:"mks2013",mks2021:"mks2021"},VlQ={contain:"contain",cover:"cover",fill:"fill",inside:"inside",outside:"outside"},IlQ={contain:"embed",cover:"crop",fill:"ignore_aspect",inside:"max",outside:"min"};function mh(A){return A.angle%360!==0||A.input.autoOrient===!0||A.rotationAngle!==0}function Q3(A){return A.width!==-1||A.height!==-1}function HlQ(A,Q,B){if(Q3(this.options))this.options.debuglog("ignoring previous resize options");if(this.options.widthPost!==-1)this.options.debuglog("operation order will be: extract, resize, extract");if(XQ.defined(A))if(XQ.object(A)&&!XQ.defined(B))B=A;else if(XQ.integer(A)&&A>0)this.options.width=A;else throw XQ.invalidParameterError("width","positive integer",A);else this.options.width=-1;if(XQ.defined(Q))if(XQ.integer(Q)&&Q>0)this.options.height=Q;else throw XQ.invalidParameterError("height","positive integer",Q);else this.options.height=-1;if(XQ.object(B)){if(XQ.defined(B.width))if(XQ.integer(B.width)&&B.width>0)this.options.width=B.width;else throw XQ.invalidParameterError("width","positive integer",B.width);if(XQ.defined(B.height))if(XQ.integer(B.height)&&B.height>0)this.options.height=B.height;else throw XQ.invalidParameterError("height","positive integer",B.height);if(XQ.defined(B.fit)){let Y=IlQ[B.fit];if(XQ.string(Y))this.options.canvas=Y;else throw XQ.invalidParameterError("fit","valid fit",B.fit)}if(XQ.defined(B.position)){let Y=XQ.integer(B.position)?B.position:I8A[B.position]||V8A[B.position]||K8A[B.position];if(XQ.integer(Y)&&(XQ.inRange(Y,0,8)||XQ.inRange(Y,16,17)))this.options.position=Y;else throw XQ.invalidParameterError("position","valid position/gravity/strategy",B.position)}if(this._setBackgroundColourOption("resizeBackground",B.background),XQ.defined(B.kernel))if(XQ.string(bh[B.kernel]))this.options.kernel=bh[B.kernel];else throw XQ.invalidParameterError("kernel","valid kernel name",B.kernel);if(XQ.defined(B.withoutEnlargement))this._setBooleanOption("withoutEnlargement",B.withoutEnlargement);if(XQ.defined(B.withoutReduction))this._setBooleanOption("withoutReduction",B.withoutReduction);if(XQ.defined(B.fastShrinkOnLoad))this._setBooleanOption("fastShrinkOnLoad",B.fastShrinkOnLoad)}if(mh(this.options)&&Q3(this.options))this.options.rotateBeforePreExtract=!0;return this}function DlQ(A){if(XQ.integer(A)&&A>0)this.options.extendTop=A,this.options.extendBottom=A,this.options.extendLeft=A,this.options.extendRight=A;else if(XQ.object(A)){if(XQ.defined(A.top))if(XQ.integer(A.top)&&A.top>=0)this.options.extendTop=A.top;else throw XQ.invalidParameterError("top","positive integer",A.top);if(XQ.defined(A.bottom))if(XQ.integer(A.bottom)&&A.bottom>=0)this.options.extendBottom=A.bottom;else throw XQ.invalidParameterError("bottom","positive integer",A.bottom);if(XQ.defined(A.left))if(XQ.integer(A.left)&&A.left>=0)this.options.extendLeft=A.left;else throw XQ.invalidParameterError("left","positive integer",A.left);if(XQ.defined(A.right))if(XQ.integer(A.right)&&A.right>=0)this.options.extendRight=A.right;else throw XQ.invalidParameterError("right","positive integer",A.right);if(this._setBackgroundColourOption("extendBackground",A.background),XQ.defined(A.extendWith))if(XQ.string(E8A[A.extendWith]))this.options.extendWith=E8A[A.extendWith];else throw XQ.invalidParameterError("extendWith","one of: background, copy, repeat, mirror",A.extendWith)}else throw XQ.invalidParameterError("extend","integer or object",A);return this}function NlQ(A){let Q=Q3(this.options)||this.options.widthPre!==-1?"Post":"Pre";if(this.options[`width${Q}`]!==-1)this.options.debuglog("ignoring previous extract options");if(["left","top","width","height"].forEach(function(B){let Y=A[B];if(XQ.integer(Y)&&Y>=0)this.options[B+(B==="left"||B==="top"?"Offset":"")+Q]=Y;else throw XQ.invalidParameterError(B,"integer",Y)},this),mh(this.options)&&!Q3(this.options)){if(this.options.widthPre===-1||this.options.widthPost===-1)this.options.rotateBeforePreExtract=!0}return this}function LlQ(A){if(this.options.trimThreshold=10,XQ.defined(A))if(XQ.object(A)){if(XQ.defined(A.background))this._setBackgroundColourOption("trimBackground",A.background);if(XQ.defined(A.threshold))if(XQ.number(A.threshold)&&A.threshold>=0)this.options.trimThreshold=A.threshold;else throw XQ.invalidParameterError("threshold","positive number",A.threshold);if(XQ.defined(A.lineArt))this._setBooleanOption("trimLineArt",A.lineArt)}else throw XQ.invalidParameterError("trim","object",A);if(mh(this.options))this.options.rotateBeforePreExtract=!0;return this}H8A.exports=function(A){Object.assign(A.prototype,{resize:HlQ,extend:DlQ,extract:NlQ,trim:LlQ}),A.gravity=K8A,A.strategy=I8A,A.kernel=bh,A.fit=VlQ,A.position=V8A}});var L8A=R((b1Y,N8A)=>{var iB=j1(),uh={clear:"clear",source:"source",over:"over",in:"in",out:"out",atop:"atop",dest:"dest","dest-over":"dest-over","dest-in":"dest-in","dest-out":"dest-out","dest-atop":"dest-atop",xor:"xor",add:"add",saturate:"saturate",multiply:"multiply",screen:"screen",overlay:"overlay",darken:"darken",lighten:"lighten","colour-dodge":"colour-dodge","color-dodge":"colour-dodge","colour-burn":"colour-burn","color-burn":"colour-burn","hard-light":"hard-light","soft-light":"soft-light",difference:"difference",exclusion:"exclusion"};function qlQ(A){if(!Array.isArray(A))throw iB.invalidParameterError("images to composite","array",A);return this.options.composite=A.map((Q)=>{if(!iB.object(Q))throw iB.invalidParameterError("image to composite","object",Q);let B=this._inputOptionsFromObject(Q),Y={input:this._createInputDescriptor(Q.input,B,{allowStream:!1}),blend:"over",tile:!1,left:0,top:0,hasOffset:!1,gravity:0,premultiplied:!1};if(iB.defined(Q.blend))if(iB.string(uh[Q.blend]))Y.blend=uh[Q.blend];else throw iB.invalidParameterError("blend","valid blend name",Q.blend);if(iB.defined(Q.tile))if(iB.bool(Q.tile))Y.tile=Q.tile;else throw iB.invalidParameterError("tile","boolean",Q.tile);if(iB.defined(Q.left))if(iB.integer(Q.left))Y.left=Q.left;else throw iB.invalidParameterError("left","integer",Q.left);if(iB.defined(Q.top))if(iB.integer(Q.top))Y.top=Q.top;else throw iB.invalidParameterError("top","integer",Q.top);if(iB.defined(Q.top)!==iB.defined(Q.left))throw Error("Expected both left and top to be set");else Y.hasOffset=iB.integer(Q.top)&&iB.integer(Q.left);if(iB.defined(Q.gravity))if(iB.integer(Q.gravity)&&iB.inRange(Q.gravity,0,8))Y.gravity=Q.gravity;else if(iB.string(Q.gravity)&&iB.integer(this.constructor.gravity[Q.gravity]))Y.gravity=this.constructor.gravity[Q.gravity];else throw iB.invalidParameterError("gravity","valid gravity",Q.gravity);if(iB.defined(Q.premultiplied))if(iB.bool(Q.premultiplied))Y.premultiplied=Q.premultiplied;else throw iB.invalidParameterError("premultiplied","boolean",Q.premultiplied);return Y}),this}N8A.exports=function(A){A.prototype.composite=qlQ,A.blend=uh}});var w8A=R((m1Y,R8A)=>{var FA=j1(),q8A={integer:"integer",float:"float",approximate:"approximate"};function MlQ(A,Q){if(!FA.defined(A))return this.autoOrient();if(this.options.angle||this.options.rotationAngle)this.options.debuglog("ignoring previous rotate options"),this.options.angle=0,this.options.rotationAngle=0;if(FA.integer(A)&&!(A%90))this.options.angle=A;else if(FA.number(A)){if(this.options.rotationAngle=A,FA.object(Q)&&Q.background)this._setBackgroundColourOption("rotationBackground",Q.background)}else throw FA.invalidParameterError("angle","numeric",A);return this}function zlQ(){return this.options.input.autoOrient=!0,this}function RlQ(A){return this.options.flip=FA.bool(A)?A:!0,this}function wlQ(A){return this.options.flop=FA.bool(A)?A:!0,this}function jlQ(A,Q){let B=[].concat(...A);if(B.length===4&&B.every(FA.number))this.options.affineMatrix=B;else throw FA.invalidParameterError("matrix","1x4 or 2x2 array",A);if(FA.defined(Q))if(FA.object(Q)){if(this._setBackgroundColourOption("affineBackground",Q.background),FA.defined(Q.idx))if(FA.number(Q.idx))this.options.affineIdx=Q.idx;else throw FA.invalidParameterError("options.idx","number",Q.idx);if(FA.defined(Q.idy))if(FA.number(Q.idy))this.options.affineIdy=Q.idy;else throw FA.invalidParameterError("options.idy","number",Q.idy);if(FA.defined(Q.odx))if(FA.number(Q.odx))this.options.affineOdx=Q.odx;else throw FA.invalidParameterError("options.odx","number",Q.odx);if(FA.defined(Q.ody))if(FA.number(Q.ody))this.options.affineOdy=Q.ody;else throw FA.invalidParameterError("options.ody","number",Q.ody);if(FA.defined(Q.interpolator))if(FA.inArray(Q.interpolator,Object.values(this.constructor.interpolators)))this.options.affineInterpolator=Q.interpolator;else throw FA.invalidParameterError("options.interpolator","valid interpolator name",Q.interpolator)}else throw FA.invalidParameterError("options","object",Q);return this}function OlQ(A,Q,B){if(!FA.defined(A))this.options.sharpenSigma=-1;else if(FA.bool(A))this.options.sharpenSigma=A?-1:0;else if(FA.number(A)&&FA.inRange(A,0.01,1e4)){if(this.options.sharpenSigma=A,FA.defined(Q))if(FA.number(Q)&&FA.inRange(Q,0,1e4))this.options.sharpenM1=Q;else throw FA.invalidParameterError("flat","number between 0 and 10000",Q);if(FA.defined(B))if(FA.number(B)&&FA.inRange(B,0,1e4))this.options.sharpenM2=B;else throw FA.invalidParameterError("jagged","number between 0 and 10000",B)}else if(FA.plainObject(A)){if(FA.number(A.sigma)&&FA.inRange(A.sigma,0.000001,10))this.options.sharpenSigma=A.sigma;else throw FA.invalidParameterError("options.sigma","number between 0.000001 and 10",A.sigma);if(FA.defined(A.m1))if(FA.number(A.m1)&&FA.inRange(A.m1,0,1e6))this.options.sharpenM1=A.m1;else throw FA.invalidParameterError("options.m1","number between 0 and 1000000",A.m1);if(FA.defined(A.m2))if(FA.number(A.m2)&&FA.inRange(A.m2,0,1e6))this.options.sharpenM2=A.m2;else throw FA.invalidParameterError("options.m2","number between 0 and 1000000",A.m2);if(FA.defined(A.x1))if(FA.number(A.x1)&&FA.inRange(A.x1,0,1e6))this.options.sharpenX1=A.x1;else throw FA.invalidParameterError("options.x1","number between 0 and 1000000",A.x1);if(FA.defined(A.y2))if(FA.number(A.y2)&&FA.inRange(A.y2,0,1e6))this.options.sharpenY2=A.y2;else throw FA.invalidParameterError("options.y2","number between 0 and 1000000",A.y2);if(FA.defined(A.y3))if(FA.number(A.y3)&&FA.inRange(A.y3,0,1e6))this.options.sharpenY3=A.y3;else throw FA.invalidParameterError("options.y3","number between 0 and 1000000",A.y3)}else throw FA.invalidParameterError("sigma","number between 0.01 and 10000",A);return this}function PlQ(A){if(!FA.defined(A))this.options.medianSize=3;else if(FA.integer(A)&&FA.inRange(A,1,1000))this.options.medianSize=A;else throw FA.invalidParameterError("size","integer between 1 and 1000",A);return this}function TlQ(A){let Q;if(FA.number(A))Q=A;else if(FA.plainObject(A)){if(!FA.number(A.sigma))throw FA.invalidParameterError("options.sigma","number between 0.3 and 1000",Q);if(Q=A.sigma,"precision"in A)if(FA.string(q8A[A.precision]))this.options.precision=q8A[A.precision];else throw FA.invalidParameterError("precision","one of: integer, float, approximate",A.precision);if("minAmplitude"in A)if(FA.number(A.minAmplitude)&&FA.inRange(A.minAmplitude,0.001,1))this.options.minAmpl=A.minAmplitude;else throw FA.invalidParameterError("minAmplitude","number between 0.001 and 1",A.minAmplitude)}if(!FA.defined(A))this.options.blurSigma=-1;else if(FA.bool(A))this.options.blurSigma=A?-1:0;else if(FA.number(Q)&&FA.inRange(Q,0.3,1000))this.options.blurSigma=Q;else throw FA.invalidParameterError("sigma","number between 0.3 and 1000",Q);return this}function M8A(A){if(!FA.defined(A))this.options.dilateWidth=1;else if(FA.integer(A)&&A>0)this.options.dilateWidth=A;else throw FA.invalidParameterError("dilate","positive integer",M8A);return this}function z8A(A){if(!FA.defined(A))this.options.erodeWidth=1;else if(FA.integer(A)&&A>0)this.options.erodeWidth=A;else throw FA.invalidParameterError("erode","positive integer",z8A);return this}function SlQ(A){if(this.options.flatten=FA.bool(A)?A:!0,FA.object(A))this._setBackgroundColourOption("flattenBackground",A.background);return this}function klQ(){return this.options.unflatten=!0,this}function _lQ(A,Q){if(!FA.defined(A))this.options.gamma=2.2;else if(FA.number(A)&&FA.inRange(A,1,3))this.options.gamma=A;else throw FA.invalidParameterError("gamma","number between 1.0 and 3.0",A);if(!FA.defined(Q))this.options.gammaOut=this.options.gamma;else if(FA.number(Q)&&FA.inRange(Q,1,3))this.options.gammaOut=Q;else throw FA.invalidParameterError("gammaOut","number between 1.0 and 3.0",Q);return this}function vlQ(A){if(this.options.negate=FA.bool(A)?A:!0,FA.plainObject(A)&&"alpha"in A)if(!FA.bool(A.alpha))throw FA.invalidParameterError("alpha","should be boolean value",A.alpha);else this.options.negateAlpha=A.alpha;return this}function ylQ(A){if(FA.plainObject(A)){if(FA.defined(A.lower))if(FA.number(A.lower)&&FA.inRange(A.lower,0,99))this.options.normaliseLower=A.lower;else throw FA.invalidParameterError("lower","number between 0 and 99",A.lower);if(FA.defined(A.upper))if(FA.number(A.upper)&&FA.inRange(A.upper,1,100))this.options.normaliseUpper=A.upper;else throw FA.invalidParameterError("upper","number between 1 and 100",A.upper)}if(this.options.normaliseLower>=this.options.normaliseUpper)throw FA.invalidParameterError("range","lower to be less than upper",`${this.options.normaliseLower} >= ${this.options.normaliseUpper}`);return this.options.normalise=!0,this}function hlQ(A){return this.normalise(A)}function glQ(A){if(FA.plainObject(A)){if(FA.integer(A.width)&&A.width>0)this.options.claheWidth=A.width;else throw FA.invalidParameterError("width","integer greater than zero",A.width);if(FA.integer(A.height)&&A.height>0)this.options.claheHeight=A.height;else throw FA.invalidParameterError("height","integer greater than zero",A.height);if(FA.defined(A.maxSlope))if(FA.integer(A.maxSlope)&&FA.inRange(A.maxSlope,0,100))this.options.claheMaxSlope=A.maxSlope;else throw FA.invalidParameterError("maxSlope","integer between 0 and 100",A.maxSlope)}else throw FA.invalidParameterError("options","plain object",A);return this}function xlQ(A){if(!FA.object(A)||!Array.isArray(A.kernel)||!FA.integer(A.width)||!FA.integer(A.height)||!FA.inRange(A.width,3,1001)||!FA.inRange(A.height,3,1001)||A.height*A.width!==A.kernel.length)throw Error("Invalid convolution kernel");if(!FA.integer(A.scale))A.scale=A.kernel.reduce(function(Q,B){return Q+B},0);if(A.scale<1)A.scale=1;if(!FA.integer(A.offset))A.offset=0;return this.options.convKernel=A,this}function flQ(A,Q){if(!FA.defined(A))this.options.threshold=128;else if(FA.bool(A))this.options.threshold=A?128:0;else if(FA.integer(A)&&FA.inRange(A,0,255))this.options.threshold=A;else throw FA.invalidParameterError("threshold","integer between 0 and 255",A);if(!FA.object(Q)||Q.greyscale===!0||Q.grayscale===!0)this.options.thresholdGrayscale=!0;else this.options.thresholdGrayscale=!1;return this}function blQ(A,Q,B){if(this.options.boolean=this._createInputDescriptor(A,B),FA.string(Q)&&FA.inArray(Q,["and","or","eor"]))this.options.booleanOp=Q;else throw FA.invalidParameterError("operator","one of: and, or, eor",Q);return this}function mlQ(A,Q){if(!FA.defined(A)&&FA.number(Q))A=1;else if(FA.number(A)&&!FA.defined(Q))Q=0;if(!FA.defined(A))this.options.linearA=[];else if(FA.number(A))this.options.linearA=[A];else if(Array.isArray(A)&&A.length&&A.every(FA.number))this.options.linearA=A;else throw FA.invalidParameterError("a","number or array of numbers",A);if(!FA.defined(Q))this.options.linearB=[];else if(FA.number(Q))this.options.linearB=[Q];else if(Array.isArray(Q)&&Q.length&&Q.every(FA.number))this.options.linearB=Q;else throw FA.invalidParameterError("b","number or array of numbers",Q);if(this.options.linearA.length!==this.options.linearB.length)throw Error("Expected a and b to be arrays of the same length");return this}function ulQ(A){if(!Array.isArray(A))throw FA.invalidParameterError("inputMatrix","array",A);if(A.length!==3&&A.length!==4)throw FA.invalidParameterError("inputMatrix","3x3 or 4x4 array",A.length);let Q=A.flat().map(Number);if(Q.length!==9&&Q.length!==16)throw FA.invalidParameterError("inputMatrix","cardinality of 9 or 16",Q.length);return this.options.recombMatrix=Q,this}function dlQ(A){if(!FA.plainObject(A))throw FA.invalidParameterError("options","plain object",A);if("brightness"in A)if(FA.number(A.brightness)&&A.brightness>=0)this.options.brightness=A.brightness;else throw FA.invalidParameterError("brightness","number above zero",A.brightness);if("saturation"in A)if(FA.number(A.saturation)&&A.saturation>=0)this.options.saturation=A.saturation;else throw FA.invalidParameterError("saturation","number above zero",A.saturation);if("hue"in A)if(FA.integer(A.hue))this.options.hue=A.hue%360;else throw FA.invalidParameterError("hue","number",A.hue);if("lightness"in A)if(FA.number(A.lightness))this.options.lightness=A.lightness;else throw FA.invalidParameterError("lightness","number",A.lightness);return this}R8A.exports=function(A){Object.assign(A.prototype,{autoOrient:zlQ,rotate:MlQ,flip:RlQ,flop:wlQ,affine:jlQ,sharpen:OlQ,erode:z8A,dilate:M8A,median:PlQ,blur:TlQ,flatten:SlQ,unflatten:klQ,gamma:_lQ,negate:vlQ,normalise:ylQ,normalize:hlQ,clahe:glQ,convolve:xlQ,threshold:flQ,boolean:blQ,linear:mlQ,recomb:ulQ,modulate:dlQ})}});var dh=R((u1Y,j8A)=>{j8A.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}});var P8A=R((d1Y,O8A)=>{O8A.exports=function(Q){if(!Q||typeof Q==="string")return!1;return Q instanceof Array||Array.isArray(Q)||Q.length>=0&&(Q.splice instanceof Function||Object.getOwnPropertyDescriptor(Q,Q.length-1)&&Q.constructor.name!=="String")}});var k8A=R((c1Y,S8A)=>{var clQ=P8A(),llQ=Array.prototype.concat,plQ=Array.prototype.slice,T8A=S8A.exports=function(Q){var B=[];for(var Y=0,J=Q.length;Y{var aI=dh(),oI=k8A(),_8A=Object.hasOwnProperty,v8A=Object.create(null);for(rI in aI)if(_8A.call(aI,rI))v8A[aI[rI]]=rI;var rI,J8=y8A.exports={to:{},get:{}};J8.get=function(A){var Q=A.substring(0,3).toLowerCase(),B,Y;switch(Q){case"hsl":B=J8.get.hsl(A),Y="hsl";break;case"hwb":B=J8.get.hwb(A),Y="hwb";break;default:B=J8.get.rgb(A),Y="rgb";break}if(!B)return null;return{model:Y,value:B}};J8.get.rgb=function(A){if(!A)return null;var Q=/^#([a-f0-9]{3,4})$/i,B=/^#([a-f0-9]{6})([a-f0-9]{2})?$/i,Y=/^rgba?\(\s*([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/,J=/^rgba?\(\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/,C=/^(\w+)$/,X=[0,0,0,1],G,F,W;if(G=A.match(B)){W=G[2],G=G[1];for(F=0;F<3;F++){var Z=F*2;X[F]=parseInt(G.slice(Z,Z+2),16)}if(W)X[3]=parseInt(W,16)/255}else if(G=A.match(Q)){G=G[1],W=G[3];for(F=0;F<3;F++)X[F]=parseInt(G[F]+G[F],16);if(W)X[3]=parseInt(W+W,16)/255}else if(G=A.match(Y)){for(F=0;F<3;F++)X[F]=parseInt(G[F+1],0);if(G[4])if(G[5])X[3]=parseFloat(G[4])*0.01;else X[3]=parseFloat(G[4])}else if(G=A.match(J)){for(F=0;F<3;F++)X[F]=Math.round(parseFloat(G[F+1])*2.55);if(G[4])if(G[5])X[3]=parseFloat(G[4])*0.01;else X[3]=parseFloat(G[4])}else if(G=A.match(C)){if(G[1]==="transparent")return[0,0,0,0];if(!_8A.call(aI,G[1]))return null;return X=aI[G[1]],X[3]=1,X}else return null;for(F=0;F<3;F++)X[F]=B7(X[F],0,255);return X[3]=B7(X[3],0,1),X};J8.get.hsl=function(A){if(!A)return null;var Q=/^hsla?\(\s*([+-]?(?:\d{0,3}\.)?\d+)(?:deg)?\s*,?\s*([+-]?[\d\.]+)%\s*,?\s*([+-]?[\d\.]+)%\s*(?:[,|\/]\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:[eE][+-]?\d+)?)\s*)?\)$/,B=A.match(Q);if(B){var Y=parseFloat(B[4]),J=(parseFloat(B[1])%360+360)%360,C=B7(parseFloat(B[2]),0,100),X=B7(parseFloat(B[3]),0,100),G=B7(isNaN(Y)?1:Y,0,1);return[J,C,X,G]}return null};J8.get.hwb=function(A){if(!A)return null;var Q=/^hwb\(\s*([+-]?\d{0,3}(?:\.\d+)?)(?:deg)?\s*,\s*([+-]?[\d\.]+)%\s*,\s*([+-]?[\d\.]+)%\s*(?:,\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:[eE][+-]?\d+)?)\s*)?\)$/,B=A.match(Q);if(B){var Y=parseFloat(B[4]),J=(parseFloat(B[1])%360+360)%360,C=B7(parseFloat(B[2]),0,100),X=B7(parseFloat(B[3]),0,100),G=B7(isNaN(Y)?1:Y,0,1);return[J,C,X,G]}return null};J8.to.hex=function(){var A=oI(arguments);return"#"+B3(A[0])+B3(A[1])+B3(A[2])+(A[3]<1?B3(Math.round(A[3]*255)):"")};J8.to.rgb=function(){var A=oI(arguments);return A.length<4||A[3]===1?"rgb("+Math.round(A[0])+", "+Math.round(A[1])+", "+Math.round(A[2])+")":"rgba("+Math.round(A[0])+", "+Math.round(A[1])+", "+Math.round(A[2])+", "+A[3]+")"};J8.to.rgb.percent=function(){var A=oI(arguments),Q=Math.round(A[0]/255*100),B=Math.round(A[1]/255*100),Y=Math.round(A[2]/255*100);return A.length<4||A[3]===1?"rgb("+Q+"%, "+B+"%, "+Y+"%)":"rgba("+Q+"%, "+B+"%, "+Y+"%, "+A[3]+")"};J8.to.hsl=function(){var A=oI(arguments);return A.length<4||A[3]===1?"hsl("+A[0]+", "+A[1]+"%, "+A[2]+"%)":"hsla("+A[0]+", "+A[1]+"%, "+A[2]+"%, "+A[3]+")"};J8.to.hwb=function(){var A=oI(arguments),Q="";if(A.length>=4&&A[3]!==1)Q=", "+A[3];return"hwb("+A[0]+", "+A[1]+"%, "+A[2]+"%"+Q+")"};J8.to.keyword=function(A){return v8A[A.slice(0,3)]};function B7(A,Q,B){return Math.min(Math.max(Q,A),B)}function B3(A){var Q=Math.round(A).toString(16).toUpperCase();return Q.length<2?"0"+Q:Q}});var ch=R((p1Y,x8A)=>{var tI=dh(),g8A={};for(let A of Object.keys(tI))g8A[tI[A]]=A;var aA={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},lch:{channels:3,labels:"lch"},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}};x8A.exports=aA;for(let A of Object.keys(aA)){if(!("channels"in aA[A]))throw Error("missing channels property: "+A);if(!("labels"in aA[A]))throw Error("missing channel labels property: "+A);if(aA[A].labels.length!==aA[A].channels)throw Error("channel and label counts mismatch: "+A);let{channels:Q,labels:B}=aA[A];delete aA[A].channels,delete aA[A].labels,Object.defineProperty(aA[A],"channels",{value:Q}),Object.defineProperty(aA[A],"labels",{value:B})}aA.rgb.hsl=function(A){let Q=A[0]/255,B=A[1]/255,Y=A[2]/255,J=Math.min(Q,B,Y),C=Math.max(Q,B,Y),X=C-J,G,F;if(C===J)G=0;else if(Q===C)G=(B-Y)/X;else if(B===C)G=2+(Y-Q)/X;else if(Y===C)G=4+(Q-B)/X;if(G=Math.min(G*60,360),G<0)G+=360;let W=(J+C)/2;if(C===J)F=0;else if(W<=0.5)F=X/(C+J);else F=X/(2-C-J);return[G,F*100,W*100]};aA.rgb.hsv=function(A){let Q,B,Y,J,C,X=A[0]/255,G=A[1]/255,F=A[2]/255,W=Math.max(X,G,F),Z=W-Math.min(X,G,F),U=function($){return(W-$)/6/Z+0.5};if(Z===0)J=0,C=0;else{if(C=Z/W,Q=U(X),B=U(G),Y=U(F),X===W)J=Y-B;else if(G===W)J=0.3333333333333333+Q-Y;else if(F===W)J=0.6666666666666666+B-Q;if(J<0)J+=1;else if(J>1)J-=1}return[J*360,C*100,W*100]};aA.rgb.hwb=function(A){let Q=A[0],B=A[1],Y=A[2],J=aA.rgb.hsl(A)[0],C=0.00392156862745098*Math.min(Q,Math.min(B,Y));return Y=1-0.00392156862745098*Math.max(Q,Math.max(B,Y)),[J,C*100,Y*100]};aA.rgb.cmyk=function(A){let Q=A[0]/255,B=A[1]/255,Y=A[2]/255,J=Math.min(1-Q,1-B,1-Y),C=(1-Q-J)/(1-J)||0,X=(1-B-J)/(1-J)||0,G=(1-Y-J)/(1-J)||0;return[C*100,X*100,G*100,J*100]};function ilQ(A,Q){return(A[0]-Q[0])**2+(A[1]-Q[1])**2+(A[2]-Q[2])**2}aA.rgb.keyword=function(A){let Q=g8A[A];if(Q)return Q;let B=1/0,Y;for(let J of Object.keys(tI)){let C=tI[J],X=ilQ(A,C);if(X0.04045?((Q+0.055)/1.055)**2.4:Q/12.92,B=B>0.04045?((B+0.055)/1.055)**2.4:B/12.92,Y=Y>0.04045?((Y+0.055)/1.055)**2.4:Y/12.92;let J=Q*0.4124+B*0.3576+Y*0.1805,C=Q*0.2126+B*0.7152+Y*0.0722,X=Q*0.0193+B*0.1192+Y*0.9505;return[J*100,C*100,X*100]};aA.rgb.lab=function(A){let Q=aA.rgb.xyz(A),B=Q[0],Y=Q[1],J=Q[2];B/=95.047,Y/=100,J/=108.883,B=B>0.008856?B**0.3333333333333333:7.787*B+0.13793103448275862,Y=Y>0.008856?Y**0.3333333333333333:7.787*Y+0.13793103448275862,J=J>0.008856?J**0.3333333333333333:7.787*J+0.13793103448275862;let C=116*Y-16,X=500*(B-Y),G=200*(Y-J);return[C,X,G]};aA.hsl.rgb=function(A){let Q=A[0]/360,B=A[1]/100,Y=A[2]/100,J,C,X;if(B===0)return X=Y*255,[X,X,X];if(Y<0.5)J=Y*(1+B);else J=Y+B-Y*B;let G=2*Y-J,F=[0,0,0];for(let W=0;W<3;W++){if(C=Q+0.3333333333333333*-(W-1),C<0)C++;if(C>1)C--;if(6*C<1)X=G+(J-G)*6*C;else if(2*C<1)X=J;else if(3*C<2)X=G+(J-G)*(0.6666666666666666-C)*6;else X=G;F[W]=X*255}return F};aA.hsl.hsv=function(A){let Q=A[0],B=A[1]/100,Y=A[2]/100,J=B,C=Math.max(Y,0.01);Y*=2,B*=Y<=1?Y:2-Y,J*=C<=1?C:2-C;let X=(Y+B)/2,G=Y===0?2*J/(C+J):2*B/(Y+B);return[Q,G*100,X*100]};aA.hsv.rgb=function(A){let Q=A[0]/60,B=A[1]/100,Y=A[2]/100,J=Math.floor(Q)%6,C=Q-Math.floor(Q),X=255*Y*(1-B),G=255*Y*(1-B*C),F=255*Y*(1-B*(1-C));switch(Y*=255,J){case 0:return[Y,F,X];case 1:return[G,Y,X];case 2:return[X,Y,F];case 3:return[X,G,Y];case 4:return[F,X,Y];case 5:return[Y,X,G]}};aA.hsv.hsl=function(A){let Q=A[0],B=A[1]/100,Y=A[2]/100,J=Math.max(Y,0.01),C,X;X=(2-B)*Y;let G=(2-B)*J;return C=B*J,C/=G<=1?G:2-G,C=C||0,X/=2,[Q,C*100,X*100]};aA.hwb.rgb=function(A){let Q=A[0]/360,B=A[1]/100,Y=A[2]/100,J=B+Y,C;if(J>1)B/=J,Y/=J;let X=Math.floor(6*Q),G=1-Y;if(C=6*Q-X,(X&1)!==0)C=1-C;let F=B+C*(G-B),W,Z,U;switch(X){default:case 6:case 0:W=G,Z=F,U=B;break;case 1:W=F,Z=G,U=B;break;case 2:W=B,Z=G,U=F;break;case 3:W=B,Z=F,U=G;break;case 4:W=F,Z=B,U=G;break;case 5:W=G,Z=B,U=F;break}return[W*255,Z*255,U*255]};aA.cmyk.rgb=function(A){let Q=A[0]/100,B=A[1]/100,Y=A[2]/100,J=A[3]/100,C=1-Math.min(1,Q*(1-J)+J),X=1-Math.min(1,B*(1-J)+J),G=1-Math.min(1,Y*(1-J)+J);return[C*255,X*255,G*255]};aA.xyz.rgb=function(A){let Q=A[0]/100,B=A[1]/100,Y=A[2]/100,J,C,X;return J=Q*3.2406+B*-1.5372+Y*-0.4986,C=Q*-0.9689+B*1.8758+Y*0.0415,X=Q*0.0557+B*-0.204+Y*1.057,J=J>0.0031308?1.055*J**0.4166666666666667-0.055:J*12.92,C=C>0.0031308?1.055*C**0.4166666666666667-0.055:C*12.92,X=X>0.0031308?1.055*X**0.4166666666666667-0.055:X*12.92,J=Math.min(Math.max(0,J),1),C=Math.min(Math.max(0,C),1),X=Math.min(Math.max(0,X),1),[J*255,C*255,X*255]};aA.xyz.lab=function(A){let Q=A[0],B=A[1],Y=A[2];Q/=95.047,B/=100,Y/=108.883,Q=Q>0.008856?Q**0.3333333333333333:7.787*Q+0.13793103448275862,B=B>0.008856?B**0.3333333333333333:7.787*B+0.13793103448275862,Y=Y>0.008856?Y**0.3333333333333333:7.787*Y+0.13793103448275862;let J=116*B-16,C=500*(Q-B),X=200*(B-Y);return[J,C,X]};aA.lab.xyz=function(A){let Q=A[0],B=A[1],Y=A[2],J,C,X;C=(Q+16)/116,J=B/500+C,X=C-Y/200;let G=C**3,F=J**3,W=X**3;return C=G>0.008856?G:(C-0.13793103448275862)/7.787,J=F>0.008856?F:(J-0.13793103448275862)/7.787,X=W>0.008856?W:(X-0.13793103448275862)/7.787,J*=95.047,C*=100,X*=108.883,[J,C,X]};aA.lab.lch=function(A){let Q=A[0],B=A[1],Y=A[2],J;if(J=Math.atan2(Y,B)*360/2/Math.PI,J<0)J+=360;let X=Math.sqrt(B*B+Y*Y);return[Q,X,J]};aA.lch.lab=function(A){let Q=A[0],B=A[1],J=A[2]/360*2*Math.PI,C=B*Math.cos(J),X=B*Math.sin(J);return[Q,C,X]};aA.rgb.ansi16=function(A,Q=null){let[B,Y,J]=A,C=Q===null?aA.rgb.hsv(A)[2]:Q;if(C=Math.round(C/50),C===0)return 30;let X=30+(Math.round(J/255)<<2|Math.round(Y/255)<<1|Math.round(B/255));if(C===2)X+=60;return X};aA.hsv.ansi16=function(A){return aA.rgb.ansi16(aA.hsv.rgb(A),A[2])};aA.rgb.ansi256=function(A){let Q=A[0],B=A[1],Y=A[2];if(Q===B&&B===Y){if(Q<8)return 16;if(Q>248)return 231;return Math.round((Q-8)/247*24)+232}return 16+36*Math.round(Q/255*5)+6*Math.round(B/255*5)+Math.round(Y/255*5)};aA.ansi16.rgb=function(A){let Q=A%10;if(Q===0||Q===7){if(A>50)Q+=3.5;return Q=Q/10.5*255,[Q,Q,Q]}let B=(~~(A>50)+1)*0.5,Y=(Q&1)*B*255,J=(Q>>1&1)*B*255,C=(Q>>2&1)*B*255;return[Y,J,C]};aA.ansi256.rgb=function(A){if(A>=232){let C=(A-232)*10+8;return[C,C,C]}A-=16;let Q,B=Math.floor(A/36)/5*255,Y=Math.floor((Q=A%36)/6)/5*255,J=Q%6/5*255;return[B,Y,J]};aA.rgb.hex=function(A){let B=(((Math.round(A[0])&255)<<16)+((Math.round(A[1])&255)<<8)+(Math.round(A[2])&255)).toString(16).toUpperCase();return"000000".substring(B.length)+B};aA.hex.rgb=function(A){let Q=A.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!Q)return[0,0,0];let B=Q[0];if(Q[0].length===3)B=B.split("").map((G)=>{return G+G}).join("");let Y=parseInt(B,16),J=Y>>16&255,C=Y>>8&255,X=Y&255;return[J,C,X]};aA.rgb.hcg=function(A){let Q=A[0]/255,B=A[1]/255,Y=A[2]/255,J=Math.max(Math.max(Q,B),Y),C=Math.min(Math.min(Q,B),Y),X=J-C,G,F;if(X<1)G=C/(1-X);else G=0;if(X<=0)F=0;else if(J===Q)F=(B-Y)/X%6;else if(J===B)F=2+(Y-Q)/X;else F=4+(Q-B)/X;return F/=6,F%=1,[F*360,X*100,G*100]};aA.hsl.hcg=function(A){let Q=A[1]/100,B=A[2]/100,Y=B<0.5?2*Q*B:2*Q*(1-B),J=0;if(Y<1)J=(B-0.5*Y)/(1-Y);return[A[0],Y*100,J*100]};aA.hsv.hcg=function(A){let Q=A[1]/100,B=A[2]/100,Y=Q*B,J=0;if(Y<1)J=(B-Y)/(1-Y);return[A[0],Y*100,J*100]};aA.hcg.rgb=function(A){let Q=A[0]/360,B=A[1]/100,Y=A[2]/100;if(B===0)return[Y*255,Y*255,Y*255];let J=[0,0,0],C=Q%1*6,X=C%1,G=1-X,F=0;switch(Math.floor(C)){case 0:J[0]=1,J[1]=X,J[2]=0;break;case 1:J[0]=G,J[1]=1,J[2]=0;break;case 2:J[0]=0,J[1]=1,J[2]=X;break;case 3:J[0]=0,J[1]=G,J[2]=1;break;case 4:J[0]=X,J[1]=0,J[2]=1;break;default:J[0]=1,J[1]=0,J[2]=G}return F=(1-B)*Y,[(B*J[0]+F)*255,(B*J[1]+F)*255,(B*J[2]+F)*255]};aA.hcg.hsv=function(A){let Q=A[1]/100,B=A[2]/100,Y=Q+B*(1-Q),J=0;if(Y>0)J=Q/Y;return[A[0],J*100,Y*100]};aA.hcg.hsl=function(A){let Q=A[1]/100,Y=A[2]/100*(1-Q)+0.5*Q,J=0;if(Y>0&&Y<0.5)J=Q/(2*Y);else if(Y>=0.5&&Y<1)J=Q/(2*(1-Y));return[A[0],J*100,Y*100]};aA.hcg.hwb=function(A){let Q=A[1]/100,B=A[2]/100,Y=Q+B*(1-Q);return[A[0],(Y-Q)*100,(1-Y)*100]};aA.hwb.hcg=function(A){let Q=A[1]/100,Y=1-A[2]/100,J=Y-Q,C=0;if(J<1)C=(Y-J)/(1-J);return[A[0],J*100,C*100]};aA.apple.rgb=function(A){return[A[0]/65535*255,A[1]/65535*255,A[2]/65535*255]};aA.rgb.apple=function(A){return[A[0]/255*65535,A[1]/255*65535,A[2]/255*65535]};aA.gray.rgb=function(A){return[A[0]/100*255,A[0]/100*255,A[0]/100*255]};aA.gray.hsl=function(A){return[0,0,A[0]]};aA.gray.hsv=aA.gray.hsl;aA.gray.hwb=function(A){return[0,100,A[0]]};aA.gray.cmyk=function(A){return[0,0,0,A[0]]};aA.gray.lab=function(A){return[A[0],0,0]};aA.gray.hex=function(A){let Q=Math.round(A[0]/100*255)&255,Y=((Q<<16)+(Q<<8)+Q).toString(16).toUpperCase();return"000000".substring(Y.length)+Y};aA.rgb.gray=function(A){return[(A[0]+A[1]+A[2])/3/255*100]}});var b8A=R((i1Y,f8A)=>{var Y3=ch();function nlQ(){let A={},Q=Object.keys(Y3);for(let B=Q.length,Y=0;Y{var lh=ch(),olQ=b8A(),n4={},tlQ=Object.keys(lh);function elQ(A){let Q=function(...B){let Y=B[0];if(Y===void 0||Y===null)return Y;if(Y.length>1)B=Y;return A(B)};if("conversion"in A)Q.conversion=A.conversion;return Q}function ApQ(A){let Q=function(...B){let Y=B[0];if(Y===void 0||Y===null)return Y;if(Y.length>1)B=Y;let J=A(B);if(typeof J==="object")for(let C=J.length,X=0;X{n4[A]={},Object.defineProperty(n4[A],"channels",{value:lh[A].channels}),Object.defineProperty(n4[A],"labels",{value:lh[A].labels});let Q=olQ(A);Object.keys(Q).forEach((Y)=>{let J=Q[Y];n4[A][Y]=ApQ(J),n4[A][Y].raw=elQ(J)})});m8A.exports=n4});var l8A=R((s1Y,c8A)=>{var s4=h8A(),C8=u8A(),d8A=["keyword","gray","hex"],ph={};for(let A of Object.keys(C8))ph[[...C8[A].labels].sort().join("")]=A;var J3={};function mY(A,Q){if(!(this instanceof mY))return new mY(A,Q);if(Q&&Q in d8A)Q=null;if(Q&&!(Q in C8))throw Error("Unknown model: "+Q);let B,Y;if(A==null)this.model="rgb",this.color=[0,0,0],this.valpha=1;else if(A instanceof mY)this.model=A.model,this.color=[...A.color],this.valpha=A.valpha;else if(typeof A==="string"){let J=s4.get(A);if(J===null)throw Error("Unable to parse color from string: "+A);this.model=J.model,Y=C8[this.model].channels,this.color=J.value.slice(0,Y),this.valpha=typeof J.value[Y]==="number"?J.value[Y]:1}else if(A.length>0){this.model=Q||"rgb",Y=C8[this.model].channels;let J=Array.prototype.slice.call(A,0,Y);this.color=ih(J,Y),this.valpha=typeof A[Y]==="number"?A[Y]:1}else if(typeof A==="number")this.model="rgb",this.color=[A>>16&255,A>>8&255,A&255],this.valpha=1;else{this.valpha=1;let J=Object.keys(A);if("alpha"in A)J.splice(J.indexOf("alpha"),1),this.valpha=typeof A.alpha==="number"?A.alpha:0;let C=J.sort().join("");if(!(C in ph))throw Error("Unable to parse color from object: "+JSON.stringify(A));this.model=ph[C];let{labels:X}=C8[this.model],G=[];for(B=0;B(A%360+360)%360),saturationl:m0("hsl",1,jY(100)),lightness:m0("hsl",2,jY(100)),saturationv:m0("hsv",1,jY(100)),value:m0("hsv",2,jY(100)),chroma:m0("hcg",1,jY(100)),gray:m0("hcg",2,jY(100)),white:m0("hwb",1,jY(100)),wblack:m0("hwb",2,jY(100)),cyan:m0("cmyk",0,jY(100)),magenta:m0("cmyk",1,jY(100)),yellow:m0("cmyk",2,jY(100)),black:m0("cmyk",3,jY(100)),x:m0("xyz",0,jY(95.047)),y:m0("xyz",1,jY(100)),z:m0("xyz",2,jY(108.833)),l:m0("lab",0,jY(100)),a:m0("lab",1),b:m0("lab",2),keyword(A){if(A!==void 0)return new mY(A);return C8[this.model].keyword(this.color)},hex(A){if(A!==void 0)return new mY(A);return s4.to.hex(this.rgb().round().color)},hexa(A){if(A!==void 0)return new mY(A);let Q=this.rgb().round().color,B=Math.round(this.valpha*255).toString(16).toUpperCase();if(B.length===1)B="0"+B;return s4.to.hex(Q)+B},rgbNumber(){let A=this.rgb().color;return(A[0]&255)<<16|(A[1]&255)<<8|A[2]&255},luminosity(){let A=this.rgb().color,Q=[];for(let[B,Y]of A.entries()){let J=Y/255;Q[B]=J<=0.04045?J/12.92:((J+0.055)/1.055)**2.4}return 0.2126*Q[0]+0.7152*Q[1]+0.0722*Q[2]},contrast(A){let Q=this.luminosity(),B=A.luminosity();if(Q>B)return(Q+0.05)/(B+0.05);return(B+0.05)/(Q+0.05)},level(A){let Q=this.contrast(A);if(Q>=7)return"AAA";return Q>=4.5?"AA":""},isDark(){let A=this.rgb().color;return(A[0]*2126+A[1]*7152+A[2]*722)/1e4<128},isLight(){return!this.isDark()},negate(){let A=this.rgb();for(let Q=0;Q<3;Q++)A.color[Q]=255-A.color[Q];return A},lighten(A){let Q=this.hsl();return Q.color[2]+=Q.color[2]*A,Q},darken(A){let Q=this.hsl();return Q.color[2]-=Q.color[2]*A,Q},saturate(A){let Q=this.hsl();return Q.color[1]+=Q.color[1]*A,Q},desaturate(A){let Q=this.hsl();return Q.color[1]-=Q.color[1]*A,Q},whiten(A){let Q=this.hwb();return Q.color[1]+=Q.color[1]*A,Q},blacken(A){let Q=this.hwb();return Q.color[2]+=Q.color[2]*A,Q},grayscale(){let A=this.rgb().color,Q=A[0]*0.3+A[1]*0.59+A[2]*0.11;return mY.rgb(Q,Q,Q)},fade(A){return this.alpha(this.valpha-this.valpha*A)},opaquer(A){return this.alpha(this.valpha+this.valpha*A)},rotate(A){let Q=this.hsl(),B=Q.color[0];return B=(B+A)%360,B=B<0?360+B:B,Q.color[0]=B,Q},mix(A,Q){if(!A||!A.rgb)throw Error('Argument to "mix" was not a Color instance, but rather an instance of '+typeof A);let B=A.rgb(),Y=this.rgb(),J=Q===void 0?0.5:Q,C=2*J-1,X=B.alpha()-Y.alpha(),G=((C*X===-1?C:(C+X)/(1+C*X))+1)/2,F=1-G;return mY.rgb(G*B.red()+F*Y.red(),G*B.green()+F*Y.green(),G*B.blue()+F*Y.blue(),B.alpha()*J+Y.alpha()*(1-J))}};for(let A of Object.keys(C8)){if(d8A.includes(A))continue;let{channels:Q}=C8[A];mY.prototype[A]=function(...B){if(this.model===A)return new mY(this);if(B.length>0)return new mY(B,A);return new mY([...YpQ(C8[this.model][A].raw(this.color)),this.valpha],A)},mY[A]=function(...B){let Y=B[0];if(typeof Y==="number")Y=ih(B,Q);return new mY(Y,A)}}function QpQ(A,Q){return Number(A.toFixed(Q))}function BpQ(A){return function(Q){return QpQ(Q,A)}}function m0(A,Q,B){A=Array.isArray(A)?A:[A];for(let Y of A)(J3[Y]||(J3[Y]=[]))[Q]=B;return A=A[0],function(Y){let J;if(Y!==void 0){if(B)Y=B(Y);return J=this[A](),J.color[Q]=Y,J}if(J=this[A]().color[Q],B)J=B(J);return J}}function jY(A){return function(Q){return Math.max(0,Math.min(A,Q))}}function YpQ(A){return Array.isArray(A)?A:[A]}function ih(A,Q){for(let B=0;B{var JpQ=l8A(),UX=j1(),p8A={multiband:"multiband","b-w":"b-w",bw:"b-w",cmyk:"cmyk",srgb:"srgb"};function CpQ(A){return this._setBackgroundColourOption("tint",A),this}function XpQ(A){return this.options.greyscale=UX.bool(A)?A:!0,this}function GpQ(A){return this.greyscale(A)}function FpQ(A){if(!UX.string(A))throw UX.invalidParameterError("colourspace","string",A);return this.options.colourspacePipeline=A,this}function WpQ(A){return this.pipelineColourspace(A)}function ZpQ(A){if(!UX.string(A))throw UX.invalidParameterError("colourspace","string",A);return this.options.colourspace=A,this}function $pQ(A){return this.toColourspace(A)}function i8A(A){if(UX.object(A)||UX.string(A)){let Q=JpQ(A);return[Q.red(),Q.green(),Q.blue(),Math.round(Q.alpha()*255)]}else throw UX.invalidParameterError("background","object or string",A)}function UpQ(A,Q){if(UX.defined(Q))this.options[A]=i8A(Q)}n8A.exports=function(A){Object.assign(A.prototype,{tint:CpQ,greyscale:XpQ,grayscale:GpQ,pipelineColourspace:FpQ,pipelineColorspace:WpQ,toColourspace:ZpQ,toColorspace:$pQ,_getBackgroundColourOption:i8A,_setBackgroundColourOption:UpQ}),A.colourspace=p8A,A.colorspace=p8A}});var a8A=R((a1Y,r8A)=>{var S1=j1(),EpQ={and:"and",or:"or",eor:"eor"};function KpQ(){return this.options.removeAlpha=!0,this}function VpQ(A){if(S1.defined(A))if(S1.number(A)&&S1.inRange(A,0,1))this.options.ensureAlpha=A;else throw S1.invalidParameterError("alpha","number between 0 and 1",A);else this.options.ensureAlpha=1;return this}function IpQ(A){let Q={red:0,green:1,blue:2,alpha:3};if(Object.keys(Q).includes(A))A=Q[A];if(S1.integer(A)&&S1.inRange(A,0,4))this.options.extractChannel=A;else throw S1.invalidParameterError("channel","integer or one of: red, green, blue, alpha",A);return this}function HpQ(A,Q){if(Array.isArray(A))A.forEach(function(B){this.options.joinChannelIn.push(this._createInputDescriptor(B,Q))},this);else this.options.joinChannelIn.push(this._createInputDescriptor(A,Q));return this}function DpQ(A){if(S1.string(A)&&S1.inArray(A,["and","or","eor"]))this.options.bandBoolOp=A;else throw S1.invalidParameterError("boolOp","one of: and, or, eor",A);return this}r8A.exports=function(A){Object.assign(A.prototype,{removeAlpha:KpQ,ensureAlpha:VpQ,extractChannel:IpQ,joinChannel:HpQ,bandbool:DpQ}),A.bool=EpQ}});var Q5A=R((o1Y,A5A)=>{var nh=u("node:path"),f=j1(),r4=sI(),o8A=new Map([["heic","heif"],["heif","heif"],["avif","avif"],["jpeg","jpeg"],["jpg","jpeg"],["jpe","jpeg"],["tile","tile"],["dz","tile"],["png","png"],["raw","raw"],["tiff","tiff"],["tif","tiff"],["webp","webp"],["gif","gif"],["jp2","jp2"],["jpx","jp2"],["j2k","jp2"],["j2c","jp2"],["jxl","jxl"]]),NpQ=/\.(jp[2x]|j2[kc])$/i,t8A=()=>Error("JP2 output requires libvips with support for OpenJPEG"),e8A=(A)=>1<<31-Math.clz32(Math.ceil(Math.log2(A)));function LpQ(A,Q){let B;if(!f.string(A))B=Error("Missing output file path");else if(f.string(this.options.input.file)&&nh.resolve(this.options.input.file)===nh.resolve(A))B=Error("Cannot use same file for input and output");else if(NpQ.test(nh.extname(A))&&!this.constructor.format.jp2k.output.file)B=t8A();if(B)if(f.fn(Q))Q(B);else return Promise.reject(B);else{this.options.fileOut=A;let Y=Error();return this._pipeline(Q,Y)}return this}function qpQ(A,Q){if(f.object(A))this._setBooleanOption("resolveWithObject",A.resolveWithObject);else if(this.options.resolveWithObject)this.options.resolveWithObject=!1;this.options.fileOut="";let B=Error();return this._pipeline(f.fn(A)?A:Q,B)}function MpQ(){return this.options.keepMetadata|=1,this}function zpQ(A){if(f.object(A))for(let[Q,B]of Object.entries(A))if(f.object(B))for(let[Y,J]of Object.entries(B))if(f.string(J))this.options.withExif[`exif-${Q.toLowerCase()}-${Y}`]=J;else throw f.invalidParameterError(`${Q}.${Y}`,"string",J);else throw f.invalidParameterError(Q,"object",B);else throw f.invalidParameterError("exif","object",A);return this.options.withExifMerge=!1,this.keepExif()}function RpQ(A){return this.withExif(A),this.options.withExifMerge=!0,this}function wpQ(){return this.options.keepMetadata|=8,this}function jpQ(A,Q){if(f.string(A))this.options.withIccProfile=A;else throw f.invalidParameterError("icc","string",A);if(this.keepIccProfile(),f.object(Q)){if(f.defined(Q.attach))if(f.bool(Q.attach)){if(!Q.attach)this.options.keepMetadata&=-9}else throw f.invalidParameterError("attach","boolean",Q.attach)}return this}function OpQ(){return this.options.keepMetadata|=2,this}function PpQ(A){if(f.string(A)&&A.length>0)this.options.withXmp=A,this.options.keepMetadata|=2;else throw f.invalidParameterError("xmp","non-empty string",A);return this}function TpQ(){return this.options.keepMetadata=31,this}function SpQ(A){if(this.keepMetadata(),this.withIccProfile("srgb"),f.object(A)){if(f.defined(A.orientation))if(f.integer(A.orientation)&&f.inRange(A.orientation,1,8))this.options.withMetadataOrientation=A.orientation;else throw f.invalidParameterError("orientation","integer between 1 and 8",A.orientation);if(f.defined(A.density))if(f.number(A.density)&&A.density>0)this.options.withMetadataDensity=A.density;else throw f.invalidParameterError("density","positive number",A.density);if(f.defined(A.icc))this.withIccProfile(A.icc);if(f.defined(A.exif))this.withExifMerge(A.exif)}return this}function kpQ(A,Q){let B=o8A.get((f.object(A)&&f.string(A.id)?A.id:A).toLowerCase());if(!B)throw f.invalidParameterError("format",`one of: ${[...o8A.keys()].join(", ")}`,A);return this[B](Q)}function _pQ(A){if(f.object(A)){if(f.defined(A.quality))if(f.integer(A.quality)&&f.inRange(A.quality,1,100))this.options.jpegQuality=A.quality;else throw f.invalidParameterError("quality","integer between 1 and 100",A.quality);if(f.defined(A.progressive))this._setBooleanOption("jpegProgressive",A.progressive);if(f.defined(A.chromaSubsampling))if(f.string(A.chromaSubsampling)&&f.inArray(A.chromaSubsampling,["4:2:0","4:4:4"]))this.options.jpegChromaSubsampling=A.chromaSubsampling;else throw f.invalidParameterError("chromaSubsampling","one of: 4:2:0, 4:4:4",A.chromaSubsampling);let Q=f.bool(A.optimizeCoding)?A.optimizeCoding:A.optimiseCoding;if(f.defined(Q))this._setBooleanOption("jpegOptimiseCoding",Q);if(f.defined(A.mozjpeg))if(f.bool(A.mozjpeg)){if(A.mozjpeg)this.options.jpegTrellisQuantisation=!0,this.options.jpegOvershootDeringing=!0,this.options.jpegOptimiseScans=!0,this.options.jpegProgressive=!0,this.options.jpegQuantisationTable=3}else throw f.invalidParameterError("mozjpeg","boolean",A.mozjpeg);let B=f.bool(A.trellisQuantization)?A.trellisQuantization:A.trellisQuantisation;if(f.defined(B))this._setBooleanOption("jpegTrellisQuantisation",B);if(f.defined(A.overshootDeringing))this._setBooleanOption("jpegOvershootDeringing",A.overshootDeringing);let Y=f.bool(A.optimizeScans)?A.optimizeScans:A.optimiseScans;if(f.defined(Y)){if(this._setBooleanOption("jpegOptimiseScans",Y),Y)this.options.jpegProgressive=!0}let J=f.number(A.quantizationTable)?A.quantizationTable:A.quantisationTable;if(f.defined(J))if(f.integer(J)&&f.inRange(J,0,8))this.options.jpegQuantisationTable=J;else throw f.invalidParameterError("quantisationTable","integer between 0 and 8",J)}return this._updateFormatOut("jpeg",A)}function vpQ(A){if(f.object(A)){if(f.defined(A.progressive))this._setBooleanOption("pngProgressive",A.progressive);if(f.defined(A.compressionLevel))if(f.integer(A.compressionLevel)&&f.inRange(A.compressionLevel,0,9))this.options.pngCompressionLevel=A.compressionLevel;else throw f.invalidParameterError("compressionLevel","integer between 0 and 9",A.compressionLevel);if(f.defined(A.adaptiveFiltering))this._setBooleanOption("pngAdaptiveFiltering",A.adaptiveFiltering);let Q=A.colours||A.colors;if(f.defined(Q))if(f.integer(Q)&&f.inRange(Q,2,256))this.options.pngBitdepth=e8A(Q);else throw f.invalidParameterError("colours","integer between 2 and 256",Q);if(f.defined(A.palette))this._setBooleanOption("pngPalette",A.palette);else if([A.quality,A.effort,A.colours,A.colors,A.dither].some(f.defined))this._setBooleanOption("pngPalette",!0);if(this.options.pngPalette){if(f.defined(A.quality))if(f.integer(A.quality)&&f.inRange(A.quality,0,100))this.options.pngQuality=A.quality;else throw f.invalidParameterError("quality","integer between 0 and 100",A.quality);if(f.defined(A.effort))if(f.integer(A.effort)&&f.inRange(A.effort,1,10))this.options.pngEffort=A.effort;else throw f.invalidParameterError("effort","integer between 1 and 10",A.effort);if(f.defined(A.dither))if(f.number(A.dither)&&f.inRange(A.dither,0,1))this.options.pngDither=A.dither;else throw f.invalidParameterError("dither","number between 0.0 and 1.0",A.dither)}}return this._updateFormatOut("png",A)}function ypQ(A){if(f.object(A)){if(f.defined(A.quality))if(f.integer(A.quality)&&f.inRange(A.quality,1,100))this.options.webpQuality=A.quality;else throw f.invalidParameterError("quality","integer between 1 and 100",A.quality);if(f.defined(A.alphaQuality))if(f.integer(A.alphaQuality)&&f.inRange(A.alphaQuality,0,100))this.options.webpAlphaQuality=A.alphaQuality;else throw f.invalidParameterError("alphaQuality","integer between 0 and 100",A.alphaQuality);if(f.defined(A.lossless))this._setBooleanOption("webpLossless",A.lossless);if(f.defined(A.nearLossless))this._setBooleanOption("webpNearLossless",A.nearLossless);if(f.defined(A.smartSubsample))this._setBooleanOption("webpSmartSubsample",A.smartSubsample);if(f.defined(A.smartDeblock))this._setBooleanOption("webpSmartDeblock",A.smartDeblock);if(f.defined(A.preset))if(f.string(A.preset)&&f.inArray(A.preset,["default","photo","picture","drawing","icon","text"]))this.options.webpPreset=A.preset;else throw f.invalidParameterError("preset","one of: default, photo, picture, drawing, icon, text",A.preset);if(f.defined(A.effort))if(f.integer(A.effort)&&f.inRange(A.effort,0,6))this.options.webpEffort=A.effort;else throw f.invalidParameterError("effort","integer between 0 and 6",A.effort);if(f.defined(A.minSize))this._setBooleanOption("webpMinSize",A.minSize);if(f.defined(A.mixed))this._setBooleanOption("webpMixed",A.mixed)}return sh(A,this.options),this._updateFormatOut("webp",A)}function hpQ(A){if(f.object(A)){if(f.defined(A.reuse))this._setBooleanOption("gifReuse",A.reuse);if(f.defined(A.progressive))this._setBooleanOption("gifProgressive",A.progressive);let Q=A.colours||A.colors;if(f.defined(Q))if(f.integer(Q)&&f.inRange(Q,2,256))this.options.gifBitdepth=e8A(Q);else throw f.invalidParameterError("colours","integer between 2 and 256",Q);if(f.defined(A.effort))if(f.number(A.effort)&&f.inRange(A.effort,1,10))this.options.gifEffort=A.effort;else throw f.invalidParameterError("effort","integer between 1 and 10",A.effort);if(f.defined(A.dither))if(f.number(A.dither)&&f.inRange(A.dither,0,1))this.options.gifDither=A.dither;else throw f.invalidParameterError("dither","number between 0.0 and 1.0",A.dither);if(f.defined(A.interFrameMaxError))if(f.number(A.interFrameMaxError)&&f.inRange(A.interFrameMaxError,0,32))this.options.gifInterFrameMaxError=A.interFrameMaxError;else throw f.invalidParameterError("interFrameMaxError","number between 0.0 and 32.0",A.interFrameMaxError);if(f.defined(A.interPaletteMaxError))if(f.number(A.interPaletteMaxError)&&f.inRange(A.interPaletteMaxError,0,256))this.options.gifInterPaletteMaxError=A.interPaletteMaxError;else throw f.invalidParameterError("interPaletteMaxError","number between 0.0 and 256.0",A.interPaletteMaxError);if(f.defined(A.keepDuplicateFrames))if(f.bool(A.keepDuplicateFrames))this._setBooleanOption("gifKeepDuplicateFrames",A.keepDuplicateFrames);else throw f.invalidParameterError("keepDuplicateFrames","boolean",A.keepDuplicateFrames)}return sh(A,this.options),this._updateFormatOut("gif",A)}function gpQ(A){if(!this.constructor.format.jp2k.output.buffer)throw t8A();if(f.object(A)){if(f.defined(A.quality))if(f.integer(A.quality)&&f.inRange(A.quality,1,100))this.options.jp2Quality=A.quality;else throw f.invalidParameterError("quality","integer between 1 and 100",A.quality);if(f.defined(A.lossless))if(f.bool(A.lossless))this.options.jp2Lossless=A.lossless;else throw f.invalidParameterError("lossless","boolean",A.lossless);if(f.defined(A.tileWidth))if(f.integer(A.tileWidth)&&f.inRange(A.tileWidth,1,32768))this.options.jp2TileWidth=A.tileWidth;else throw f.invalidParameterError("tileWidth","integer between 1 and 32768",A.tileWidth);if(f.defined(A.tileHeight))if(f.integer(A.tileHeight)&&f.inRange(A.tileHeight,1,32768))this.options.jp2TileHeight=A.tileHeight;else throw f.invalidParameterError("tileHeight","integer between 1 and 32768",A.tileHeight);if(f.defined(A.chromaSubsampling))if(f.string(A.chromaSubsampling)&&f.inArray(A.chromaSubsampling,["4:2:0","4:4:4"]))this.options.jp2ChromaSubsampling=A.chromaSubsampling;else throw f.invalidParameterError("chromaSubsampling","one of: 4:2:0, 4:4:4",A.chromaSubsampling)}return this._updateFormatOut("jp2",A)}function sh(A,Q){if(f.object(A)&&f.defined(A.loop))if(f.integer(A.loop)&&f.inRange(A.loop,0,65535))Q.loop=A.loop;else throw f.invalidParameterError("loop","integer between 0 and 65535",A.loop);if(f.object(A)&&f.defined(A.delay))if(f.integer(A.delay)&&f.inRange(A.delay,0,65535))Q.delay=[A.delay];else if(Array.isArray(A.delay)&&A.delay.every(f.integer)&&A.delay.every((B)=>f.inRange(B,0,65535)))Q.delay=A.delay;else throw f.invalidParameterError("delay","integer or an array of integers between 0 and 65535",A.delay)}function xpQ(A){if(f.object(A)){if(f.defined(A.quality))if(f.integer(A.quality)&&f.inRange(A.quality,1,100))this.options.tiffQuality=A.quality;else throw f.invalidParameterError("quality","integer between 1 and 100",A.quality);if(f.defined(A.bitdepth))if(f.integer(A.bitdepth)&&f.inArray(A.bitdepth,[1,2,4,8]))this.options.tiffBitdepth=A.bitdepth;else throw f.invalidParameterError("bitdepth","1, 2, 4 or 8",A.bitdepth);if(f.defined(A.tile))this._setBooleanOption("tiffTile",A.tile);if(f.defined(A.tileWidth))if(f.integer(A.tileWidth)&&A.tileWidth>0)this.options.tiffTileWidth=A.tileWidth;else throw f.invalidParameterError("tileWidth","integer greater than zero",A.tileWidth);if(f.defined(A.tileHeight))if(f.integer(A.tileHeight)&&A.tileHeight>0)this.options.tiffTileHeight=A.tileHeight;else throw f.invalidParameterError("tileHeight","integer greater than zero",A.tileHeight);if(f.defined(A.miniswhite))this._setBooleanOption("tiffMiniswhite",A.miniswhite);if(f.defined(A.pyramid))this._setBooleanOption("tiffPyramid",A.pyramid);if(f.defined(A.xres))if(f.number(A.xres)&&A.xres>0)this.options.tiffXres=A.xres;else throw f.invalidParameterError("xres","number greater than zero",A.xres);if(f.defined(A.yres))if(f.number(A.yres)&&A.yres>0)this.options.tiffYres=A.yres;else throw f.invalidParameterError("yres","number greater than zero",A.yres);if(f.defined(A.compression))if(f.string(A.compression)&&f.inArray(A.compression,["none","jpeg","deflate","packbits","ccittfax4","lzw","webp","zstd","jp2k"]))this.options.tiffCompression=A.compression;else throw f.invalidParameterError("compression","one of: none, jpeg, deflate, packbits, ccittfax4, lzw, webp, zstd, jp2k",A.compression);if(f.defined(A.predictor))if(f.string(A.predictor)&&f.inArray(A.predictor,["none","horizontal","float"]))this.options.tiffPredictor=A.predictor;else throw f.invalidParameterError("predictor","one of: none, horizontal, float",A.predictor);if(f.defined(A.resolutionUnit))if(f.string(A.resolutionUnit)&&f.inArray(A.resolutionUnit,["inch","cm"]))this.options.tiffResolutionUnit=A.resolutionUnit;else throw f.invalidParameterError("resolutionUnit","one of: inch, cm",A.resolutionUnit)}return this._updateFormatOut("tiff",A)}function fpQ(A){return this.heif({...A,compression:"av1"})}function bpQ(A){if(f.object(A)){if(f.string(A.compression)&&f.inArray(A.compression,["av1","hevc"]))this.options.heifCompression=A.compression;else throw f.invalidParameterError("compression","one of: av1, hevc",A.compression);if(f.defined(A.quality))if(f.integer(A.quality)&&f.inRange(A.quality,1,100))this.options.heifQuality=A.quality;else throw f.invalidParameterError("quality","integer between 1 and 100",A.quality);if(f.defined(A.lossless))if(f.bool(A.lossless))this.options.heifLossless=A.lossless;else throw f.invalidParameterError("lossless","boolean",A.lossless);if(f.defined(A.effort))if(f.integer(A.effort)&&f.inRange(A.effort,0,9))this.options.heifEffort=A.effort;else throw f.invalidParameterError("effort","integer between 0 and 9",A.effort);if(f.defined(A.chromaSubsampling))if(f.string(A.chromaSubsampling)&&f.inArray(A.chromaSubsampling,["4:2:0","4:4:4"]))this.options.heifChromaSubsampling=A.chromaSubsampling;else throw f.invalidParameterError("chromaSubsampling","one of: 4:2:0, 4:4:4",A.chromaSubsampling);if(f.defined(A.bitdepth))if(f.integer(A.bitdepth)&&f.inArray(A.bitdepth,[8,10,12])){if(A.bitdepth!==8&&this.constructor.versions.heif)throw f.invalidParameterError("bitdepth when using prebuilt binaries",8,A.bitdepth);this.options.heifBitdepth=A.bitdepth}else throw f.invalidParameterError("bitdepth","8, 10 or 12",A.bitdepth)}else throw f.invalidParameterError("options","Object",A);return this._updateFormatOut("heif",A)}function mpQ(A){if(f.object(A)){if(f.defined(A.quality))if(f.integer(A.quality)&&f.inRange(A.quality,1,100))this.options.jxlDistance=A.quality>=30?0.1+(100-A.quality)*0.09:0.017666666666666667*A.quality*A.quality-1.15*A.quality+25;else throw f.invalidParameterError("quality","integer between 1 and 100",A.quality);else if(f.defined(A.distance))if(f.number(A.distance)&&f.inRange(A.distance,0,15))this.options.jxlDistance=A.distance;else throw f.invalidParameterError("distance","number between 0.0 and 15.0",A.distance);if(f.defined(A.decodingTier))if(f.integer(A.decodingTier)&&f.inRange(A.decodingTier,0,4))this.options.jxlDecodingTier=A.decodingTier;else throw f.invalidParameterError("decodingTier","integer between 0 and 4",A.decodingTier);if(f.defined(A.lossless))if(f.bool(A.lossless))this.options.jxlLossless=A.lossless;else throw f.invalidParameterError("lossless","boolean",A.lossless);if(f.defined(A.effort))if(f.integer(A.effort)&&f.inRange(A.effort,1,9))this.options.jxlEffort=A.effort;else throw f.invalidParameterError("effort","integer between 1 and 9",A.effort)}return sh(A,this.options),this._updateFormatOut("jxl",A)}function upQ(A){if(f.object(A)){if(f.defined(A.depth))if(f.string(A.depth)&&f.inArray(A.depth,["char","uchar","short","ushort","int","uint","float","complex","double","dpcomplex"]))this.options.rawDepth=A.depth;else throw f.invalidParameterError("depth","one of: char, uchar, short, ushort, int, uint, float, complex, double, dpcomplex",A.depth)}return this._updateFormatOut("raw")}function dpQ(A){if(f.object(A)){if(f.defined(A.size))if(f.integer(A.size)&&f.inRange(A.size,1,8192))this.options.tileSize=A.size;else throw f.invalidParameterError("size","integer between 1 and 8192",A.size);if(f.defined(A.overlap))if(f.integer(A.overlap)&&f.inRange(A.overlap,0,8192)){if(A.overlap>this.options.tileSize)throw f.invalidParameterError("overlap",`<= size (${this.options.tileSize})`,A.overlap);this.options.tileOverlap=A.overlap}else throw f.invalidParameterError("overlap","integer between 0 and 8192",A.overlap);if(f.defined(A.container))if(f.string(A.container)&&f.inArray(A.container,["fs","zip"]))this.options.tileContainer=A.container;else throw f.invalidParameterError("container","one of: fs, zip",A.container);if(f.defined(A.layout))if(f.string(A.layout)&&f.inArray(A.layout,["dz","google","iiif","iiif3","zoomify"]))this.options.tileLayout=A.layout;else throw f.invalidParameterError("layout","one of: dz, google, iiif, iiif3, zoomify",A.layout);if(f.defined(A.angle))if(f.integer(A.angle)&&!(A.angle%90))this.options.tileAngle=A.angle;else throw f.invalidParameterError("angle","positive/negative multiple of 90",A.angle);if(this._setBackgroundColourOption("tileBackground",A.background),f.defined(A.depth))if(f.string(A.depth)&&f.inArray(A.depth,["onepixel","onetile","one"]))this.options.tileDepth=A.depth;else throw f.invalidParameterError("depth","one of: onepixel, onetile, one",A.depth);if(f.defined(A.skipBlanks))if(f.integer(A.skipBlanks)&&f.inRange(A.skipBlanks,-1,65535))this.options.tileSkipBlanks=A.skipBlanks;else throw f.invalidParameterError("skipBlanks","integer between -1 and 255/65535",A.skipBlanks);else if(f.defined(A.layout)&&A.layout==="google")this.options.tileSkipBlanks=5;let Q=f.bool(A.center)?A.center:A.centre;if(f.defined(Q))this._setBooleanOption("tileCentre",Q);if(f.defined(A.id))if(f.string(A.id))this.options.tileId=A.id;else throw f.invalidParameterError("id","string",A.id);if(f.defined(A.basename))if(f.string(A.basename))this.options.tileBasename=A.basename;else throw f.invalidParameterError("basename","string",A.basename)}if(f.inArray(this.options.formatOut,["jpeg","png","webp"]))this.options.tileFormat=this.options.formatOut;else if(this.options.formatOut!=="input")throw f.invalidParameterError("format","one of: jpeg, png, webp",this.options.formatOut);return this._updateFormatOut("dz")}function cpQ(A){if(!f.plainObject(A))throw f.invalidParameterError("options","object",A);if(f.integer(A.seconds)&&f.inRange(A.seconds,0,3600))this.options.timeoutSeconds=A.seconds;else throw f.invalidParameterError("seconds","integer between 0 and 3600",A.seconds);return this}function lpQ(A,Q){if(!(f.object(Q)&&Q.force===!1))this.options.formatOut=A;return this}function ppQ(A,Q){if(f.bool(Q))this.options[A]=Q;else throw f.invalidParameterError(A,"boolean",Q)}function ipQ(){if(!this.options.streamOut){this.options.streamOut=!0;let A=Error();this._pipeline(void 0,A)}}function npQ(A,Q){if(typeof A==="function"){if(this._isStreamInput())this.on("finish",()=>{this._flattenBufferIn(),r4.pipeline(this.options,(B,Y,J)=>{if(B)A(f.nativeError(B,Q));else A(null,Y,J)})});else r4.pipeline(this.options,(B,Y,J)=>{if(B)A(f.nativeError(B,Q));else A(null,Y,J)});return this}else if(this.options.streamOut){if(this._isStreamInput()){if(this.once("finish",()=>{this._flattenBufferIn(),r4.pipeline(this.options,(B,Y,J)=>{if(B)this.emit("error",f.nativeError(B,Q));else this.emit("info",J),this.push(Y);this.push(null),this.on("end",()=>this.emit("close"))})}),this.streamInFinished)this.emit("finish")}else r4.pipeline(this.options,(B,Y,J)=>{if(B)this.emit("error",f.nativeError(B,Q));else this.emit("info",J),this.push(Y);this.push(null),this.on("end",()=>this.emit("close"))});return this}else if(this._isStreamInput())return new Promise((B,Y)=>{this.once("finish",()=>{this._flattenBufferIn(),r4.pipeline(this.options,(J,C,X)=>{if(J)Y(f.nativeError(J,Q));else if(this.options.resolveWithObject)B({data:C,info:X});else B(C)})})});else return new Promise((B,Y)=>{r4.pipeline(this.options,(J,C,X)=>{if(J)Y(f.nativeError(J,Q));else if(this.options.resolveWithObject)B({data:C,info:X});else B(C)})})}A5A.exports=function(A){Object.assign(A.prototype,{toFile:LpQ,toBuffer:qpQ,keepExif:MpQ,withExif:zpQ,withExifMerge:RpQ,keepIccProfile:wpQ,withIccProfile:jpQ,keepXmp:OpQ,withXmp:PpQ,keepMetadata:TpQ,withMetadata:SpQ,toFormat:kpQ,jpeg:_pQ,jp2:gpQ,png:vpQ,webp:ypQ,tiff:xpQ,avif:fpQ,heif:bpQ,jxl:mpQ,gif:hpQ,raw:upQ,tile:dpQ,timeout:cpQ,_updateFormatOut:lpQ,_setBooleanOption:ppQ,_read:ipQ,_pipeline:npQ})}});var C5A=R((t1Y,J5A)=>{var spQ=u("node:events"),C3=dI(),J5=j1(),{runtimePlatformArch:rpQ}=gh(),sJ=sI(),B5A=rpQ(),rh=sJ.libvipsVersion(),Y7=sJ.format();Y7.heif.output.alias=["avif","heic"];Y7.jpeg.output.alias=["jpe","jpg"];Y7.tiff.output.alias=["tif"];Y7.jp2k.output.alias=["j2c","j2k","jp2","jpx"];var apQ={nearest:"nearest",bilinear:"bilinear",bicubic:"bicubic",locallyBoundedBicubic:"lbb",nohalo:"nohalo",vertexSplitQuadraticBasisSpline:"vsqbs"},a4={vips:rh.semver};if(!rh.isGlobal)if(!rh.isWasm)try{a4=u(`@img/sharp-${B5A}/versions`)}catch(A){try{a4=u(`@img/sharp-libvips-${B5A}/versions`)}catch(Q){}}else try{a4=(()=>{throw new Error("Cannot require module "+"@img/sharp-wasm32/versions");})()}catch(A){}a4.sharp=yh().version;if(a4.heif&&Y7.heif)Y7.heif.input.fileSuffix=[".avif"],Y7.heif.output.alias=["avif"];function Y5A(A){if(J5.bool(A))if(A)return sJ.cache(50,20,100);else return sJ.cache(0,0,0);else if(J5.object(A))return sJ.cache(A.memory,A.files,A.items);else return sJ.cache()}Y5A(!0);function opQ(A){return sJ.concurrency(J5.integer(A)?A:null)}if(C3.familySync()===C3.GLIBC&&!sJ._isUsingJemalloc())sJ.concurrency(1);else if(C3.familySync()===C3.MUSL&&sJ.concurrency()===1024)sJ.concurrency(u("node:os").availableParallelism());var tpQ=new spQ.EventEmitter;function epQ(){return sJ.counters()}function AiQ(A){return sJ.simd(J5.bool(A)?A:null)}function QiQ(A){if(J5.object(A))if(Array.isArray(A.operation)&&A.operation.every(J5.string))sJ.block(A.operation,!0);else throw J5.invalidParameterError("operation","Array",A.operation);else throw J5.invalidParameterError("options","object",A)}function BiQ(A){if(J5.object(A))if(Array.isArray(A.operation)&&A.operation.every(J5.string))sJ.block(A.operation,!1);else throw J5.invalidParameterError("operation","Array",A.operation);else throw J5.invalidParameterError("options","object",A)}J5A.exports=function(A){A.cache=Y5A,A.concurrency=opQ,A.counters=epQ,A.simd=AiQ,A.format=Y7,A.interpolators=apQ,A.versions=a4,A.queue=tpQ,A.block=QiQ,A.unblock=BiQ}});var G5A=R((A6Y,X5A)=>{var EX=W8A();U8A()(EX);D8A()(EX);L8A()(EX);w8A()(EX);s8A()(EX);a8A()(EX);Q5A()(EX);C5A()(EX);X5A.exports=EX});var W5A=R((Q6Y,F5A)=>{function YiQ(A,Q){var B=1,Y=A.length,J=A[0],C=A[0];for(var X=1;X{var XiQ=W5A();function Z5A(A,Q,B){var Y=A.length,J=Q.arrayArgs.length,C=Q.indexArgs.length>0,X=[],G=[],F=0,W=0,Z,U;for(Z=0;Z0)X.push("var "+G.join(","));for(Z=Y-1;Z>=0;--Z)F=A[Z],X.push(["for(i",Z,"=0;i",Z,"0)X.push(["index[",W,"]-=s",W].join(""));X.push(["++index[",F,"]"].join(""))}X.push("}")}return X.join(` -`)}function GiQ(A,Q,B,Y){var J=Q.length,C=B.arrayArgs.length,X=B.blockSize,G=B.indexArgs.length>0,F=[];for(var W=0;W0;){"].join("")),F.push(["if(j",W,"<",X,"){"].join("")),F.push(["s",Q[W],"=j",W].join("")),F.push(["j",W,"=0"].join("")),F.push(["}else{s",Q[W],"=",X].join("")),F.push(["j",W,"-=",X,"}"].join("")),G)F.push(["index[",Q[W],"]=j",W].join(""));for(var W=0;W{var ldQ=I9A(),pdQ=N9A(),idQ=typeof Float64Array<"u";function ndQ(A,Q){return A[0]-Q[0]}function sdQ(){var A=this.stride,Q=Array(A.length),B;for(B=0;BMath.abs(this.stride[1]))?[1,0]:[0,1]}})");else if(Q===3)J.push("var s0=Math.abs(this.stride[0]),s1=Math.abs(this.stride[1]),s2=Math.abs(this.stride[2]);if(s0>s1){if(s1>s2){return [2,1,0];}else if(s0>s2){return [1,2,0];}else{return [1,0,2];}}else if(s0>s2){return [2,0,1];}else if(s2>s1){return [0,1,2];}else{return [0,2,1];}}})")}else J.push("ORDER})");if(J.push("proto.set=function "+B+"_set("+X.join(",")+",v){"),Y)J.push("return this.data.set("+G+",v)}");else J.push("return this.data["+G+"]=v}");if(J.push("proto.get=function "+B+"_get("+X.join(",")+"){"),Y)J.push("return this.data.get("+G+")}");else J.push("return this.data["+G+"]}");J.push("proto.index=function "+B+"_index(",X.join(),"){return "+G+"}"),J.push("proto.hi=function "+B+"_hi("+X.join(",")+"){return new "+B+"(this.data,"+C.map(function(V){return["(typeof i",V,"!=='number'||i",V,"<0)?this.shape[",V,"]:i",V,"|0"].join("")}).join(",")+","+C.map(function(V){return"this.stride["+V+"]"}).join(",")+",this.offset)}");var Z=C.map(function(V){return"a"+V+"=this.shape["+V+"]"}),U=C.map(function(V){return"c"+V+"=this.stride["+V+"]"});J.push("proto.lo=function "+B+"_lo("+X.join(",")+"){var b=this.offset,d=0,"+Z.join(",")+","+U.join(","));for(var $=0;$=0){d=i"+$+"|0;b+=c"+$+"*d;a"+$+"-=d}");J.push("return new "+B+"(this.data,"+C.map(function(V){return"a"+V}).join(",")+","+C.map(function(V){return"c"+V}).join(",")+",b)}"),J.push("proto.step=function "+B+"_step("+X.join(",")+"){var "+C.map(function(V){return"a"+V+"=this.shape["+V+"]"}).join(",")+","+C.map(function(V){return"b"+V+"=this.stride["+V+"]"}).join(",")+",c=this.offset,d=0,ceil=Math.ceil");for(var $=0;$=0){c=(c+this.stride["+$+"]*i"+$+")|0}else{a.push(this.shape["+$+"]);b.push(this.stride["+$+"])}");J.push("var ctor=CTOR_LIST[a.length+1];return ctor(this.data,a,b,c)}"),J.push("return function construct_"+B+"(data,shape,stride,offset){return new "+B+"(data,"+C.map(function(V){return"shape["+V+"]"}).join(",")+","+C.map(function(V){return"stride["+V+"]"}).join(",")+",offset)}");var I=Function("CTOR_LIST","ORDER",J.join(` +`));return I(Z3[A],sdQ)}function adQ(A){if(pdQ(A))return"buffer";if(idQ)switch(Object.prototype.toString.call(A)){case"[object Float64Array]":return"float64";case"[object Float32Array]":return"float32";case"[object Int8Array]":return"int8";case"[object Int16Array]":return"int16";case"[object Int32Array]":return"int32";case"[object Uint8Array]":return"uint8";case"[object Uint16Array]":return"uint16";case"[object Uint32Array]":return"uint32";case"[object Uint8ClampedArray]":return"uint8_clamped";case"[object BigInt64Array]":return"bigint64";case"[object BigUint64Array]":return"biguint64"}if(Array.isArray(A))return"array";return"generic"}var Z3={float32:[],float64:[],int8:[],int16:[],int32:[],uint8:[],uint16:[],uint32:[],array:[],uint8_clamped:[],bigint64:[],biguint64:[],buffer:[],generic:[]};function odQ(A,Q,B,Y){if(A===void 0){var F=Z3.array[0];return F([])}else if(typeof A==="number")A=[A];if(Q===void 0)Q=[A.length];var J=Q.length;if(B===void 0){B=Array(J);for(var C=J-1,X=1;C>=0;--C)B[C]=X,X*=Q[C]}if(Y===void 0){Y=0;for(var C=0;C{var q9A=function(A){return typeof A<"u"&&A!==null},tdQ=function(A){return typeof A==="object"},edQ=function(A){return Object.prototype.toString.call(A)==="[object Object]"},AcQ=function(A){return typeof A==="function"},QcQ=function(A){return typeof A==="boolean"},BcQ=function(A){return A instanceof Buffer},YcQ=function(A){if(q9A(A))switch(A.constructor){case Uint8Array:case Uint8ClampedArray:case Int8Array:case Uint16Array:case Int16Array:case Uint32Array:case Int32Array:case Float32Array:case Float64Array:return!0}return!1},JcQ=function(A){return A instanceof ArrayBuffer},CcQ=function(A){return typeof A==="string"&&A.length>0},XcQ=function(A){return typeof A==="number"&&!Number.isNaN(A)},GcQ=function(A){return Number.isInteger(A)},WcQ=function(A,Q,B){return A>=Q&&A<=B},FcQ=function(A,Q){return Q.includes(A)},ZcQ=function(A,Q,B){return Error(`Expected ${Q} for ${A} but received ${B} of type ${typeof B}`)},$cQ=function(A,Q){return Q.message=A.message,Q};M9A.exports={defined:q9A,object:tdQ,plainObject:edQ,fn:AcQ,bool:QcQ,buffer:BcQ,typedArray:YcQ,arrayBuffer:JcQ,string:CcQ,number:XcQ,integer:GcQ,inRange:WcQ,inArray:FcQ,invalidParameterError:ZcQ,nativeError:$cQ}});var w9A=R((B6Y,R9A)=>{var z9A=()=>process.platform==="linux",$3=null,UcQ=()=>{if(!$3)if(z9A()&&process.report){let A=process.report.excludeNetwork;process.report.excludeNetwork=!0,$3=process.report.getReport(),process.report.excludeNetwork=A}else $3={};return $3};R9A.exports={isLinux:z9A,getReport:UcQ}});var P9A=R((Y6Y,O9A)=>{var j9A=u("fs"),EcQ=(A)=>j9A.readFileSync(A,"utf-8"),KcQ=(A)=>new Promise((Q,B)=>{j9A.readFile(A,"utf-8",(Y,J)=>{if(Y)B(Y);else Q(J)})});O9A.exports={LDD_PATH:"/usr/bin/ldd",readFileSync:EcQ,readFile:KcQ}});var AH=R((J6Y,l9A)=>{var S9A=u("child_process"),{isLinux:o4,getReport:k9A}=w9A(),{LDD_PATH:U3,readFile:_9A,readFileSync:v9A}=P9A(),h1,x1,G7="",y9A=()=>{if(!G7)return new Promise((A)=>{S9A.exec("getconf GNU_LIBC_VERSION 2>&1 || true; ldd --version 2>&1 || true",(Q,B)=>{G7=Q?" ":B,A(G7)})});return G7},g9A=()=>{if(!G7)try{G7=S9A.execSync("getconf GNU_LIBC_VERSION 2>&1 || true; ldd --version 2>&1 || true",{encoding:"utf8"})}catch(A){G7=" "}return G7},W7="glibc",h9A=/LIBC[a-z0-9 \-).]*?(\d+\.\d+)/i,a4="musl",VcQ=(A)=>A.includes("libc.musl-")||A.includes("ld-musl-"),x9A=()=>{let A=k9A();if(A.header&&A.header.glibcVersionRuntime)return W7;if(Array.isArray(A.sharedObjects)){if(A.sharedObjects.some(VcQ))return a4}return null},f9A=(A)=>{let[Q,B]=A.split(/[\r\n]+/);if(Q&&Q.includes(W7))return W7;if(B&&B.includes(a4))return a4;return null},b9A=(A)=>{if(A.includes("musl"))return a4;if(A.includes("GNU C Library"))return W7;return null},IcQ=async()=>{if(h1!==void 0)return h1;h1=null;try{let A=await _9A(U3);h1=b9A(A)}catch(A){}return h1},HcQ=()=>{if(h1!==void 0)return h1;h1=null;try{let A=v9A(U3);h1=b9A(A)}catch(A){}return h1},m9A=async()=>{let A=null;if(o4()){if(A=await IcQ(),!A)A=x9A();if(!A){let Q=await y9A();A=f9A(Q)}}return A},u9A=()=>{let A=null;if(o4()){if(A=HcQ(),!A)A=x9A();if(!A){let Q=g9A();A=f9A(Q)}}return A},DcQ=async()=>o4()&&await m9A()!==W7,NcQ=()=>o4()&&u9A()!==W7,LcQ=async()=>{if(x1!==void 0)return x1;x1=null;try{let Q=(await _9A(U3)).match(h9A);if(Q)x1=Q[1]}catch(A){}return x1},qcQ=()=>{if(x1!==void 0)return x1;x1=null;try{let Q=v9A(U3).match(h9A);if(Q)x1=Q[1]}catch(A){}return x1},d9A=()=>{let A=k9A();if(A.header&&A.header.glibcVersionRuntime)return A.header.glibcVersionRuntime;return null},T9A=(A)=>A.trim().split(/\s+/)[1],c9A=(A)=>{let[Q,B,Y]=A.split(/[\r\n]+/);if(Q&&Q.includes(W7))return T9A(Q);if(B&&Y&&B.includes(a4))return T9A(Y);return null},McQ=async()=>{let A=null;if(o4()){if(A=await LcQ(),!A)A=d9A();if(!A){let Q=await y9A();A=c9A(Q)}}return A},zcQ=()=>{let A=null;if(o4()){if(A=qcQ(),!A)A=d9A();if(!A){let Q=g9A();A=c9A(Q)}}return A};l9A.exports={GLIBC:W7,MUSL:a4,family:m9A,familySync:u9A,isNonGlibcLinux:DcQ,isNonGlibcLinuxSync:NcQ,version:McQ,versionSync:zcQ}});var QH=R((C6Y,p9A)=>{var RcQ=typeof process==="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...A)=>console.error("SEMVER",...A):()=>{};p9A.exports=RcQ});var E3=R((X6Y,i9A)=>{var wcQ=Number.MAX_SAFE_INTEGER||9007199254740991,jcQ=["major","premajor","minor","preminor","patch","prepatch","prerelease"];i9A.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:16,MAX_SAFE_BUILD_LENGTH:250,MAX_SAFE_INTEGER:wcQ,RELEASE_TYPES:jcQ,SEMVER_SPEC_VERSION:"2.0.0",FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var BH=R((f1,n9A)=>{var{MAX_SAFE_COMPONENT_LENGTH:Bh,MAX_SAFE_BUILD_LENGTH:OcQ,MAX_LENGTH:PcQ}=E3(),TcQ=QH();f1=n9A.exports={};var ScQ=f1.re=[],kcQ=f1.safeRe=[],dA=f1.src=[],_cQ=f1.safeSrc=[],cA=f1.t={},vcQ=0,Yh="[a-zA-Z0-9-]",ycQ=[["\\s",1],["\\d",PcQ],[Yh,OcQ]],gcQ=(A)=>{for(let[Q,B]of ycQ)A=A.split(`${Q}*`).join(`${Q}{0,${B}}`).split(`${Q}+`).join(`${Q}{1,${B}}`);return A},uQ=(A,Q,B)=>{let Y=gcQ(Q),J=vcQ++;TcQ(A,J,Q),cA[A]=J,dA[J]=Q,_cQ[J]=Y,ScQ[J]=new RegExp(Q,B?"g":void 0),kcQ[J]=new RegExp(Y,B?"g":void 0)};uQ("NUMERICIDENTIFIER","0|[1-9]\\d*");uQ("NUMERICIDENTIFIERLOOSE","\\d+");uQ("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${Yh}*`);uQ("MAINVERSION",`(${dA[cA.NUMERICIDENTIFIER]})\\.(${dA[cA.NUMERICIDENTIFIER]})\\.(${dA[cA.NUMERICIDENTIFIER]})`);uQ("MAINVERSIONLOOSE",`(${dA[cA.NUMERICIDENTIFIERLOOSE]})\\.(${dA[cA.NUMERICIDENTIFIERLOOSE]})\\.(${dA[cA.NUMERICIDENTIFIERLOOSE]})`);uQ("PRERELEASEIDENTIFIER",`(?:${dA[cA.NONNUMERICIDENTIFIER]}|${dA[cA.NUMERICIDENTIFIER]})`);uQ("PRERELEASEIDENTIFIERLOOSE",`(?:${dA[cA.NONNUMERICIDENTIFIER]}|${dA[cA.NUMERICIDENTIFIERLOOSE]})`);uQ("PRERELEASE",`(?:-(${dA[cA.PRERELEASEIDENTIFIER]}(?:\\.${dA[cA.PRERELEASEIDENTIFIER]})*))`);uQ("PRERELEASELOOSE",`(?:-?(${dA[cA.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${dA[cA.PRERELEASEIDENTIFIERLOOSE]})*))`);uQ("BUILDIDENTIFIER",`${Yh}+`);uQ("BUILD",`(?:\\+(${dA[cA.BUILDIDENTIFIER]}(?:\\.${dA[cA.BUILDIDENTIFIER]})*))`);uQ("FULLPLAIN",`v?${dA[cA.MAINVERSION]}${dA[cA.PRERELEASE]}?${dA[cA.BUILD]}?`);uQ("FULL",`^${dA[cA.FULLPLAIN]}$`);uQ("LOOSEPLAIN",`[v=\\s]*${dA[cA.MAINVERSIONLOOSE]}${dA[cA.PRERELEASELOOSE]}?${dA[cA.BUILD]}?`);uQ("LOOSE",`^${dA[cA.LOOSEPLAIN]}$`);uQ("GTLT","((?:<|>)?=?)");uQ("XRANGEIDENTIFIERLOOSE",`${dA[cA.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);uQ("XRANGEIDENTIFIER",`${dA[cA.NUMERICIDENTIFIER]}|x|X|\\*`);uQ("XRANGEPLAIN",`[v=\\s]*(${dA[cA.XRANGEIDENTIFIER]})(?:\\.(${dA[cA.XRANGEIDENTIFIER]})(?:\\.(${dA[cA.XRANGEIDENTIFIER]})(?:${dA[cA.PRERELEASE]})?${dA[cA.BUILD]}?)?)?`);uQ("XRANGEPLAINLOOSE",`[v=\\s]*(${dA[cA.XRANGEIDENTIFIERLOOSE]})(?:\\.(${dA[cA.XRANGEIDENTIFIERLOOSE]})(?:\\.(${dA[cA.XRANGEIDENTIFIERLOOSE]})(?:${dA[cA.PRERELEASELOOSE]})?${dA[cA.BUILD]}?)?)?`);uQ("XRANGE",`^${dA[cA.GTLT]}\\s*${dA[cA.XRANGEPLAIN]}$`);uQ("XRANGELOOSE",`^${dA[cA.GTLT]}\\s*${dA[cA.XRANGEPLAINLOOSE]}$`);uQ("COERCEPLAIN",`(^|[^\\d])(\\d{1,${Bh}})(?:\\.(\\d{1,${Bh}}))?(?:\\.(\\d{1,${Bh}}))?`);uQ("COERCE",`${dA[cA.COERCEPLAIN]}(?:$|[^\\d])`);uQ("COERCEFULL",dA[cA.COERCEPLAIN]+`(?:${dA[cA.PRERELEASE]})?(?:${dA[cA.BUILD]})?(?:$|[^\\d])`);uQ("COERCERTL",dA[cA.COERCE],!0);uQ("COERCERTLFULL",dA[cA.COERCEFULL],!0);uQ("LONETILDE","(?:~>?)");uQ("TILDETRIM",`(\\s*)${dA[cA.LONETILDE]}\\s+`,!0);f1.tildeTrimReplace="$1~";uQ("TILDE",`^${dA[cA.LONETILDE]}${dA[cA.XRANGEPLAIN]}$`);uQ("TILDELOOSE",`^${dA[cA.LONETILDE]}${dA[cA.XRANGEPLAINLOOSE]}$`);uQ("LONECARET","(?:\\^)");uQ("CARETTRIM",`(\\s*)${dA[cA.LONECARET]}\\s+`,!0);f1.caretTrimReplace="$1^";uQ("CARET",`^${dA[cA.LONECARET]}${dA[cA.XRANGEPLAIN]}$`);uQ("CARETLOOSE",`^${dA[cA.LONECARET]}${dA[cA.XRANGEPLAINLOOSE]}$`);uQ("COMPARATORLOOSE",`^${dA[cA.GTLT]}\\s*(${dA[cA.LOOSEPLAIN]})$|^$`);uQ("COMPARATOR",`^${dA[cA.GTLT]}\\s*(${dA[cA.FULLPLAIN]})$|^$`);uQ("COMPARATORTRIM",`(\\s*)${dA[cA.GTLT]}\\s*(${dA[cA.LOOSEPLAIN]}|${dA[cA.XRANGEPLAIN]})`,!0);f1.comparatorTrimReplace="$1$2$3";uQ("HYPHENRANGE",`^\\s*(${dA[cA.XRANGEPLAIN]})\\s+-\\s+(${dA[cA.XRANGEPLAIN]})\\s*$`);uQ("HYPHENRANGELOOSE",`^\\s*(${dA[cA.XRANGEPLAINLOOSE]})\\s+-\\s+(${dA[cA.XRANGEPLAINLOOSE]})\\s*$`);uQ("STAR","(<|>)?=?\\s*\\*");uQ("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");uQ("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var K3=R((G6Y,s9A)=>{var hcQ=Object.freeze({loose:!0}),xcQ=Object.freeze({}),fcQ=(A)=>{if(!A)return xcQ;if(typeof A!=="object")return hcQ;return A};s9A.exports=fcQ});var t9A=R((W6Y,o9A)=>{var r9A=/^[0-9]+$/,a9A=(A,Q)=>{let B=r9A.test(A),Y=r9A.test(Q);if(B&&Y)A=+A,Q=+Q;return A===Q?0:B&&!Y?-1:Y&&!B?1:Aa9A(Q,A);o9A.exports={compareIdentifiers:a9A,rcompareIdentifiers:bcQ}});var e4=R((F6Y,A8A)=>{var V3=QH(),{MAX_LENGTH:e9A,MAX_SAFE_INTEGER:I3}=E3(),{safeRe:H3,t:D3}=BH(),mcQ=K3(),{compareIdentifiers:t4}=t9A();class PC{constructor(A,Q){if(Q=mcQ(Q),A instanceof PC)if(A.loose===!!Q.loose&&A.includePrerelease===!!Q.includePrerelease)return A;else A=A.version;else if(typeof A!=="string")throw TypeError(`Invalid version. Must be a string. Got type "${typeof A}".`);if(A.length>e9A)throw TypeError(`version is longer than ${e9A} characters`);V3("SemVer",A,Q),this.options=Q,this.loose=!!Q.loose,this.includePrerelease=!!Q.includePrerelease;let B=A.trim().match(Q.loose?H3[D3.LOOSE]:H3[D3.FULL]);if(!B)throw TypeError(`Invalid Version: ${A}`);if(this.raw=A,this.major=+B[1],this.minor=+B[2],this.patch=+B[3],this.major>I3||this.major<0)throw TypeError("Invalid major version");if(this.minor>I3||this.minor<0)throw TypeError("Invalid minor version");if(this.patch>I3||this.patch<0)throw TypeError("Invalid patch version");if(!B[4])this.prerelease=[];else this.prerelease=B[4].split(".").map((Y)=>{if(/^[0-9]+$/.test(Y)){let J=+Y;if(J>=0&&J=0)if(typeof this.prerelease[J]==="number")this.prerelease[J]++,J=-2;if(J===-1){if(Q===this.prerelease.join(".")&&B===!1)throw Error("invalid increment argument: identifier already exists");this.prerelease.push(Y)}}if(Q){let J=[Q,Y];if(B===!1)J=[Q];if(t4(this.prerelease[0],Q)===0){if(isNaN(this.prerelease[1]))this.prerelease=J}else this.prerelease=J}break}default:throw Error(`invalid increment argument: ${A}`)}if(this.raw=this.format(),this.build.length)this.raw+=`+${this.build.join(".")}`;return this}}A8A.exports=PC});var Y8A=R((Z6Y,B8A)=>{var Q8A=e4(),ucQ=(A,Q,B=!1)=>{if(A instanceof Q8A)return A;try{return new Q8A(A,Q)}catch(Y){if(!B)return null;throw Y}};B8A.exports=ucQ});var C8A=R(($6Y,J8A)=>{var dcQ=e4(),ccQ=Y8A(),{safeRe:N3,t:L3}=BH(),lcQ=(A,Q)=>{if(A instanceof dcQ)return A;if(typeof A==="number")A=String(A);if(typeof A!=="string")return null;Q=Q||{};let B=null;if(!Q.rtl)B=A.match(Q.includePrerelease?N3[L3.COERCEFULL]:N3[L3.COERCE]);else{let W=Q.includePrerelease?N3[L3.COERCERTLFULL]:N3[L3.COERCERTL],F;while((F=W.exec(A))&&(!B||B.index+B[0].length!==A.length)){if(!B||F.index+F[0].length!==B.index+B[0].length)B=F;W.lastIndex=F.index+F[1].length+F[2].length}W.lastIndex=-1}if(B===null)return null;let Y=B[2],J=B[3]||"0",C=B[4]||"0",X=Q.includePrerelease&&B[5]?`-${B[5]}`:"",G=Q.includePrerelease&&B[6]?`+${B[6]}`:"";return ccQ(`${Y}.${J}.${C}${X}${G}`,Q)};J8A.exports=lcQ});var uF=R((U6Y,G8A)=>{var X8A=e4(),pcQ=(A,Q,B)=>new X8A(A,B).compare(new X8A(Q,B));G8A.exports=pcQ});var Jh=R((E6Y,W8A)=>{var icQ=uF(),ncQ=(A,Q,B)=>icQ(A,Q,B)>=0;W8A.exports=ncQ});var $8A=R((K6Y,Z8A)=>{class F8A{constructor(){this.max=1000,this.map=new Map}get(A){let Q=this.map.get(A);if(Q===void 0)return;else return this.map.delete(A),this.map.set(A,Q),Q}delete(A){return this.map.delete(A)}set(A,Q){if(!this.delete(A)&&Q!==void 0){if(this.map.size>=this.max){let Y=this.map.keys().next().value;this.delete(Y)}this.map.set(A,Q)}return this}}Z8A.exports=F8A});var E8A=R((V6Y,U8A)=>{var scQ=uF(),rcQ=(A,Q,B)=>scQ(A,Q,B)===0;U8A.exports=rcQ});var V8A=R((I6Y,K8A)=>{var acQ=uF(),ocQ=(A,Q,B)=>acQ(A,Q,B)!==0;K8A.exports=ocQ});var H8A=R((H6Y,I8A)=>{var tcQ=uF(),ecQ=(A,Q,B)=>tcQ(A,Q,B)>0;I8A.exports=ecQ});var N8A=R((D6Y,D8A)=>{var AlQ=uF(),QlQ=(A,Q,B)=>AlQ(A,Q,B)<0;D8A.exports=QlQ});var q8A=R((N6Y,L8A)=>{var BlQ=uF(),YlQ=(A,Q,B)=>BlQ(A,Q,B)<=0;L8A.exports=YlQ});var z8A=R((L6Y,M8A)=>{var JlQ=E8A(),ClQ=V8A(),XlQ=H8A(),GlQ=Jh(),WlQ=N8A(),FlQ=q8A(),ZlQ=(A,Q,B,Y)=>{switch(Q){case"===":if(typeof A==="object")A=A.version;if(typeof B==="object")B=B.version;return A===B;case"!==":if(typeof A==="object")A=A.version;if(typeof B==="object")B=B.version;return A!==B;case"":case"=":case"==":return JlQ(A,B,Y);case"!=":return ClQ(A,B,Y);case">":return XlQ(A,B,Y);case">=":return GlQ(A,B,Y);case"<":return WlQ(A,B,Y);case"<=":return FlQ(A,B,Y);default:throw TypeError(`Invalid operator: ${Q}`)}};M8A.exports=ZlQ});var S8A=R((q6Y,T8A)=>{var YH=Symbol("SemVer ANY");class q3{static get ANY(){return YH}constructor(A,Q){if(Q=R8A(Q),A instanceof q3)if(A.loose===!!Q.loose)return A;else A=A.value;if(A=A.trim().split(/\s+/).join(" "),Xh("comparator",A,Q),this.options=Q,this.loose=!!Q.loose,this.parse(A),this.semver===YH)this.value="";else this.value=this.operator+this.semver.version;Xh("comp",this)}parse(A){let Q=this.options.loose?w8A[j8A.COMPARATORLOOSE]:w8A[j8A.COMPARATOR],B=A.match(Q);if(!B)throw TypeError(`Invalid comparator: ${A}`);if(this.operator=B[1]!==void 0?B[1]:"",this.operator==="=")this.operator="";if(!B[2])this.semver=YH;else this.semver=new O8A(B[2],this.options.loose)}toString(){return this.value}test(A){if(Xh("Comparator.test",A,this.options.loose),this.semver===YH||A===YH)return!0;if(typeof A==="string")try{A=new O8A(A,this.options)}catch(Q){return!1}return Ch(A,this.operator,this.semver,this.options)}intersects(A,Q){if(!(A instanceof q3))throw TypeError("a Comparator is required");if(this.operator===""){if(this.value==="")return!0;return new P8A(A.value,Q).test(this.value)}else if(A.operator===""){if(A.value==="")return!0;return new P8A(this.value,Q).test(A.semver)}if(Q=R8A(Q),Q.includePrerelease&&(this.value==="<0.0.0-0"||A.value==="<0.0.0-0"))return!1;if(!Q.includePrerelease&&(this.value.startsWith("<0.0.0")||A.value.startsWith("<0.0.0")))return!1;if(this.operator.startsWith(">")&&A.operator.startsWith(">"))return!0;if(this.operator.startsWith("<")&&A.operator.startsWith("<"))return!0;if(this.semver.version===A.semver.version&&this.operator.includes("=")&&A.operator.includes("="))return!0;if(Ch(this.semver,"<",A.semver,Q)&&this.operator.startsWith(">")&&A.operator.startsWith("<"))return!0;if(Ch(this.semver,">",A.semver,Q)&&this.operator.startsWith("<")&&A.operator.startsWith(">"))return!0;return!1}}T8A.exports=q3;var R8A=K3(),{safeRe:w8A,t:j8A}=BH(),Ch=z8A(),Xh=QH(),O8A=e4(),P8A=Gh()});var Gh=R((M6Y,y8A)=>{var $lQ=/\s+/g;class JH{constructor(A,Q){if(Q=ElQ(Q),A instanceof JH)if(A.loose===!!Q.loose&&A.includePrerelease===!!Q.includePrerelease)return A;else return new JH(A.raw,Q);if(A instanceof Wh)return this.raw=A.value,this.set=[[A]],this.formatted=void 0,this;if(this.options=Q,this.loose=!!Q.loose,this.includePrerelease=!!Q.includePrerelease,this.raw=A.trim().replace($lQ," "),this.set=this.raw.split("||").map((B)=>this.parseRange(B.trim())).filter((B)=>B.length),!this.set.length)throw TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let B=this.set[0];if(this.set=this.set.filter((Y)=>!_8A(Y[0])),this.set.length===0)this.set=[B];else if(this.set.length>1){for(let Y of this.set)if(Y.length===1&&LlQ(Y[0])){this.set=[Y];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let A=0;A0)this.formatted+="||";let Q=this.set[A];for(let B=0;B0)this.formatted+=" ";this.formatted+=Q[B].toString().trim()}}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(A){let B=((this.options.includePrerelease&&DlQ)|(this.options.loose&&NlQ))+":"+A,Y=k8A.get(B);if(Y)return Y;let J=this.options.loose,C=J?_9[tJ.HYPHENRANGELOOSE]:_9[tJ.HYPHENRANGE];A=A.replace(C,SlQ(this.options.includePrerelease)),$0("hyphen replace",A),A=A.replace(_9[tJ.COMPARATORTRIM],VlQ),$0("comparator trim",A),A=A.replace(_9[tJ.TILDETRIM],IlQ),$0("tilde trim",A),A=A.replace(_9[tJ.CARETTRIM],HlQ),$0("caret trim",A);let X=A.split(" ").map((Z)=>qlQ(Z,this.options)).join(" ").split(/\s+/).map((Z)=>TlQ(Z,this.options));if(J)X=X.filter((Z)=>{return $0("loose invalid filter",Z,this.options),!!Z.match(_9[tJ.COMPARATORLOOSE])});$0("range list",X);let G=new Map,W=X.map((Z)=>new Wh(Z,this.options));for(let Z of W){if(_8A(Z))return[Z];G.set(Z.value,Z)}if(G.size>1&&G.has(""))G.delete("");let F=[...G.values()];return k8A.set(B,F),F}intersects(A,Q){if(!(A instanceof JH))throw TypeError("a Range is required");return this.set.some((B)=>{return v8A(B,Q)&&A.set.some((Y)=>{return v8A(Y,Q)&&B.every((J)=>{return Y.every((C)=>{return J.intersects(C,Q)})})})})}test(A){if(!A)return!1;if(typeof A==="string")try{A=new KlQ(A,this.options)}catch(Q){return!1}for(let Q=0;QA.value==="<0.0.0-0",LlQ=(A)=>A.value==="",v8A=(A,Q)=>{let B=!0,Y=A.slice(),J=Y.pop();while(B&&Y.length)B=Y.every((C)=>{return J.intersects(C,Q)}),J=Y.pop();return B},qlQ=(A,Q)=>{return $0("comp",A,Q),A=RlQ(A,Q),$0("caret",A),A=MlQ(A,Q),$0("tildes",A),A=jlQ(A,Q),$0("xrange",A),A=PlQ(A,Q),$0("stars",A),A},eJ=(A)=>!A||A.toLowerCase()==="x"||A==="*",MlQ=(A,Q)=>{return A.trim().split(/\s+/).map((B)=>zlQ(B,Q)).join(" ")},zlQ=(A,Q)=>{let B=Q.loose?_9[tJ.TILDELOOSE]:_9[tJ.TILDE];return A.replace(B,(Y,J,C,X,G)=>{$0("tilde",A,Y,J,C,X,G);let W;if(eJ(J))W="";else if(eJ(C))W=`>=${J}.0.0 <${+J+1}.0.0-0`;else if(eJ(X))W=`>=${J}.${C}.0 <${J}.${+C+1}.0-0`;else if(G)$0("replaceTilde pr",G),W=`>=${J}.${C}.${X}-${G} <${J}.${+C+1}.0-0`;else W=`>=${J}.${C}.${X} <${J}.${+C+1}.0-0`;return $0("tilde return",W),W})},RlQ=(A,Q)=>{return A.trim().split(/\s+/).map((B)=>wlQ(B,Q)).join(" ")},wlQ=(A,Q)=>{$0("caret",A,Q);let B=Q.loose?_9[tJ.CARETLOOSE]:_9[tJ.CARET],Y=Q.includePrerelease?"-0":"";return A.replace(B,(J,C,X,G,W)=>{$0("caret",A,J,C,X,G,W);let F;if(eJ(C))F="";else if(eJ(X))F=`>=${C}.0.0${Y} <${+C+1}.0.0-0`;else if(eJ(G))if(C==="0")F=`>=${C}.${X}.0${Y} <${C}.${+X+1}.0-0`;else F=`>=${C}.${X}.0${Y} <${+C+1}.0.0-0`;else if(W)if($0("replaceCaret pr",W),C==="0")if(X==="0")F=`>=${C}.${X}.${G}-${W} <${C}.${X}.${+G+1}-0`;else F=`>=${C}.${X}.${G}-${W} <${C}.${+X+1}.0-0`;else F=`>=${C}.${X}.${G}-${W} <${+C+1}.0.0-0`;else if($0("no pr"),C==="0")if(X==="0")F=`>=${C}.${X}.${G}${Y} <${C}.${X}.${+G+1}-0`;else F=`>=${C}.${X}.${G}${Y} <${C}.${+X+1}.0-0`;else F=`>=${C}.${X}.${G} <${+C+1}.0.0-0`;return $0("caret return",F),F})},jlQ=(A,Q)=>{return $0("replaceXRanges",A,Q),A.split(/\s+/).map((B)=>OlQ(B,Q)).join(" ")},OlQ=(A,Q)=>{A=A.trim();let B=Q.loose?_9[tJ.XRANGELOOSE]:_9[tJ.XRANGE];return A.replace(B,(Y,J,C,X,G,W)=>{$0("xRange",A,Y,J,C,X,G,W);let F=eJ(C),Z=F||eJ(X),U=Z||eJ(G),$=U;if(J==="="&&$)J="";if(W=Q.includePrerelease?"-0":"",F)if(J===">"||J==="<")Y="<0.0.0-0";else Y="*";else if(J&&$){if(Z)X=0;if(G=0,J===">")if(J=">=",Z)C=+C+1,X=0,G=0;else X=+X+1,G=0;else if(J==="<=")if(J="<",Z)C=+C+1;else X=+X+1;if(J==="<")W="-0";Y=`${J+C}.${X}.${G}${W}`}else if(Z)Y=`>=${C}.0.0${W} <${+C+1}.0.0-0`;else if(U)Y=`>=${C}.${X}.0${W} <${C}.${+X+1}.0-0`;return $0("xRange return",Y),Y})},PlQ=(A,Q)=>{return $0("replaceStars",A,Q),A.trim().replace(_9[tJ.STAR],"")},TlQ=(A,Q)=>{return $0("replaceGTE0",A,Q),A.trim().replace(_9[Q.includePrerelease?tJ.GTE0PRE:tJ.GTE0],"")},SlQ=(A)=>(Q,B,Y,J,C,X,G,W,F,Z,U,$)=>{if(eJ(Y))B="";else if(eJ(J))B=`>=${Y}.0.0${A?"-0":""}`;else if(eJ(C))B=`>=${Y}.${J}.0${A?"-0":""}`;else if(X)B=`>=${B}`;else B=`>=${B}${A?"-0":""}`;if(eJ(F))W="";else if(eJ(Z))W=`<${+F+1}.0.0-0`;else if(eJ(U))W=`<${F}.${+Z+1}.0-0`;else if($)W=`<=${F}.${Z}.${U}-${$}`;else if(A)W=`<${F}.${Z}.${+U+1}-0`;else W=`<=${W}`;return`${B} ${W}`.trim()},klQ=(A,Q,B)=>{for(let Y=0;Y0){let J=A[Y].semver;if(J.major===Q.major&&J.minor===Q.minor&&J.patch===Q.patch)return!0}}return!1}return!0}});var h8A=R((z6Y,g8A)=>{var _lQ=Gh(),vlQ=(A,Q,B)=>{try{Q=new _lQ(Q,B)}catch(Y){return!1}return Q.test(A)};g8A.exports=vlQ});var Fh=R((R6Y,ylQ)=>{ylQ.exports={name:"sharp",description:"High performance Node.js image processing, the fastest module to resize JPEG, PNG, WebP, GIF, AVIF and TIFF images",version:"0.34.3",author:"Lovell Fuller ",homepage:"https://sharp.pixelplumbing.com",contributors:["Pierre Inglebert ","Jonathan Ong ","Chanon Sajjamanochai ","Juliano Julio ","Daniel Gasienica ","Julian Walker ","Amit Pitaru ","Brandon Aaron ","Andreas Lind ","Maurus Cuelenaere ","Linus Unnebäck ","Victor Mateevitsi ","Alaric Holloway ","Bernhard K. Weisshuhn ","Chris Riley ","David Carley ","John Tobin ","Kenton Gray ","Felix Bünemann ","Samy Al Zahrani ","Chintan Thakkar ","F. Orlando Galashan ","Kleis Auke Wolthuizen ","Matt Hirsch ","Matthias Thoemmes ","Patrick Paskaris ","Jérémy Lal ","Rahul Nanwani ","Alice Monday ","Kristo Jorgenson ","YvesBos ","Guy Maliar ","Nicolas Coden ","Matt Parrish ","Marcel Bretschneider ","Matthew McEachen ","Jarda Kotěšovec ","Kenric D'Souza ","Oleh Aleinyk ","Marcel Bretschneider ","Andrea Bianco ","Rik Heywood ","Thomas Parisot ","Nathan Graves ","Tom Lokhorst ","Espen Hovlandsdal ","Sylvain Dumont ","Alun Davies ","Aidan Hoolachan ","Axel Eirola ","Freezy ","Daiz ","Julian Aubourg ","Keith Belovay ","Michael B. Klein ","Jordan Prudhomme ","Ilya Ovdin ","Andargor ","Paul Neave ","Brendan Kennedy ","Brychan Bennett-Odlum ","Edward Silverton ","Roman Malieiev ","Tomas Szabo ","Robert O'Rourke ","Guillermo Alfonso Varela Chouciño ","Christian Flintrup ","Manan Jadhav ","Leon Radley ","alza54 ","Jacob Smith ","Michael Nutt ","Brad Parham ","Taneli Vatanen ","Joris Dugué ","Chris Banks ","Ompal Singh ","Brodan ","Ankur Parihar ","Brahim Ait elhaj ","Mart Jansink ","Lachlan Newman ","Dennis Beatty ","Ingvar Stepanyan ","Don Denton "],scripts:{install:"node install/check.js",clean:"rm -rf src/build/ .nyc_output/ coverage/ test/fixtures/output.*",test:"npm run test-lint && npm run test-unit && npm run test-licensing && npm run test-types","test-lint":"semistandard && cpplint","test-unit":"nyc --reporter=lcov --reporter=text --check-coverage --branches=100 mocha","test-licensing":'license-checker --production --summary --onlyAllow="Apache-2.0;BSD;ISC;LGPL-3.0-or-later;MIT"',"test-leak":"./test/leak/leak.sh","test-types":"tsd","package-from-local-build":"node npm/from-local-build.js","docs-build":"node docs/build.mjs","docs-serve":"cd docs && npm start","docs-publish":"cd docs && npm run build && npx firebase-tools deploy --project pixelplumbing --only hosting:pixelplumbing-sharp"},type:"commonjs",main:"lib/index.js",types:"lib/index.d.ts",files:["install","lib","src/*.{cc,h,gyp}"],repository:{type:"git",url:"git://github.com/lovell/sharp.git"},keywords:["jpeg","png","webp","avif","tiff","gif","svg","jp2","dzi","image","resize","thumbnail","crop","embed","libvips","vips"],dependencies:{color:"^4.2.3","detect-libc":"^2.0.4",semver:"^7.7.2"},optionalDependencies:{"@img/sharp-darwin-arm64":"0.34.3","@img/sharp-darwin-x64":"0.34.3","@img/sharp-libvips-darwin-arm64":"1.2.0","@img/sharp-libvips-darwin-x64":"1.2.0","@img/sharp-libvips-linux-arm":"1.2.0","@img/sharp-libvips-linux-arm64":"1.2.0","@img/sharp-libvips-linux-ppc64":"1.2.0","@img/sharp-libvips-linux-s390x":"1.2.0","@img/sharp-libvips-linux-x64":"1.2.0","@img/sharp-libvips-linuxmusl-arm64":"1.2.0","@img/sharp-libvips-linuxmusl-x64":"1.2.0","@img/sharp-linux-arm":"0.34.3","@img/sharp-linux-arm64":"0.34.3","@img/sharp-linux-ppc64":"0.34.3","@img/sharp-linux-s390x":"0.34.3","@img/sharp-linux-x64":"0.34.3","@img/sharp-linuxmusl-arm64":"0.34.3","@img/sharp-linuxmusl-x64":"0.34.3","@img/sharp-wasm32":"0.34.3","@img/sharp-win32-arm64":"0.34.3","@img/sharp-win32-ia32":"0.34.3","@img/sharp-win32-x64":"0.34.3"},devDependencies:{"@emnapi/runtime":"^1.4.4","@img/sharp-libvips-dev":"1.2.0","@img/sharp-libvips-dev-wasm32":"1.2.0","@img/sharp-libvips-win32-arm64":"1.2.0","@img/sharp-libvips-win32-ia32":"1.2.0","@img/sharp-libvips-win32-x64":"1.2.0","@types/node":"*",cc:"^3.0.1",emnapi:"^1.4.4","exif-reader":"^2.0.2","extract-zip":"^2.0.1",icc:"^3.0.0","jsdoc-to-markdown":"^9.1.1","license-checker":"^25.0.1",mocha:"^11.7.1","node-addon-api":"^8.4.0","node-gyp":"^11.2.0",nyc:"^17.1.0",semistandard:"^17.0.0","tar-fs":"^3.1.0",tsd:"^0.32.0"},license:"Apache-2.0",engines:{node:"^18.17.0 || ^20.3.0 || >=21.0.0"},config:{libvips:">=8.17.1"},funding:{url:"https://opencollective.com/libvips"},semistandard:{env:["mocha"]},cc:{linelength:"120",filter:["build/include"]},nyc:{include:["lib"]},tsd:{directory:"test/types/"}}});var $h=R((w6Y,i8A)=>{var{spawnSync:M3}=u("node:child_process"),{createHash:glQ}=u("node:crypto"),m8A=C8A(),hlQ=Jh(),xlQ=h8A(),x8A=AH(),{config:flQ,engines:f8A,optionalDependencies:blQ}=Fh(),mlQ=process.env.npm_package_config_libvips||flQ.libvips,u8A=m8A(mlQ).version,ulQ=["darwin-arm64","darwin-x64","linux-arm","linux-arm64","linux-ppc64","linux-s390x","linux-x64","linuxmusl-arm64","linuxmusl-x64","win32-arm64","win32-ia32","win32-x64"],z3={encoding:"utf8",shell:!0},dlQ=(A)=>{if(A instanceof Error)console.error(`sharp: Installation error: ${A.message}`);else console.log(`sharp: ${A}`)},d8A=()=>x8A.isNonGlibcLinuxSync()?x8A.familySync():"",clQ=()=>`${process.platform}${d8A()}-${process.arch}`,AU=()=>{if(c8A())return"wasm32";let{npm_config_arch:A,npm_config_platform:Q,npm_config_libc:B}=process.env,Y=typeof B==="string"?B:d8A();return`${Q||process.platform}${Y}-${A||process.arch}`},llQ=()=>{try{return u(`@img/sharp-libvips-dev-${AU()}/include`)}catch{try{return (()=>{throw new Error("Cannot require module "+"@img/sharp-libvips-dev/include");})()}catch{}}return""},plQ=()=>{try{return (()=>{throw new Error("Cannot require module "+"@img/sharp-libvips-dev/cplusplus");})()}catch{}return""},ilQ=()=>{try{return u(`@img/sharp-libvips-dev-${AU()}/lib`)}catch{try{return u(`@img/sharp-libvips-${AU()}/lib`)}catch{}}return""},nlQ=()=>{if(process.release?.name==="node"&&process.versions){if(!xlQ(process.versions.node,f8A.node))return{found:process.versions.node,expected:f8A.node}}},c8A=()=>{let{CC:A}=process.env;return Boolean(A&&A.endsWith("/emcc"))},slQ=()=>{if(process.platform==="darwin"&&process.arch==="x64")return(M3("sysctl sysctl.proc_translated",z3).stdout||"").trim()==="sysctl.proc_translated: 1";return!1},b8A=(A)=>glQ("sha512").update(A).digest("hex"),rlQ=()=>{try{let A=b8A(`imgsharp-libvips-${AU()}`),Q=m8A(blQ[`@img/sharp-libvips-${AU()}`],{includePrerelease:!0}).version;return b8A(`${A}npm:${Q}`).slice(0,10)}catch{}return""},alQ=()=>M3(`node-gyp rebuild --directory=src ${c8A()?"--nodedir=emscripten":""}`,{...z3,stdio:"inherit"}).status,l8A=()=>{if(process.platform!=="win32")return(M3("pkg-config --modversion vips-cpp",{...z3,env:{...process.env,PKG_CONFIG_PATH:p8A()}}).stdout||"").trim();else return""},p8A=()=>{if(process.platform!=="win32")return[(M3('which brew >/dev/null 2>&1 && brew environment --plain | grep PKG_CONFIG_LIBDIR | cut -d" " -f2',z3).stdout||"").trim(),process.env.PKG_CONFIG_PATH,"/usr/local/lib/pkgconfig","/usr/lib/pkgconfig","/usr/local/libdata/pkgconfig","/usr/libdata/pkgconfig"].filter(Boolean).join(":");else return""},Zh=(A,Q,B)=>{if(B)B(`Detected ${Q}, skipping search for globally-installed libvips`);return A},olQ=(A)=>{if(Boolean(process.env.SHARP_IGNORE_GLOBAL_LIBVIPS)===!0)return Zh(!1,"SHARP_IGNORE_GLOBAL_LIBVIPS",A);if(Boolean(process.env.SHARP_FORCE_GLOBAL_LIBVIPS)===!0)return Zh(!0,"SHARP_FORCE_GLOBAL_LIBVIPS",A);if(slQ())return Zh(!1,"Rosetta",A);let Q=l8A();return!!Q&&hlQ(Q,u8A)};i8A.exports={minimumLibvipsVersion:u8A,prebuiltPlatforms:ulQ,buildPlatformArch:AU,buildSharpLibvipsIncludeDir:llQ,buildSharpLibvipsCPlusPlusDir:plQ,buildSharpLibvipsLibDir:ilQ,isUnsupportedNodeRuntime:nlQ,runtimePlatformArch:clQ,log:dlQ,yarnLocator:rlQ,spawnRebuild:alQ,globalLibvipsVersion:l8A,pkgConfigPath:p8A,useGlobalLibvips:olQ}});var XH=R((O6Y,s8A)=>{var{familySync:tlQ,versionSync:elQ}=AH(),{runtimePlatformArch:ApQ,isUnsupportedNodeRuntime:n8A,prebuiltPlatforms:QpQ,minimumLibvipsVersion:BpQ}=$h(),dF=ApQ(),YpQ=[`../src/build/Release/sharp-${dF}.node`,"../src/build/Release/sharp-wasm32.node",`@img/sharp-${dF}/sharp.node`,"@img/sharp-wasm32/sharp.node"],Uh,QU,CH=[];for(Uh of YpQ)try{QU=u(Uh);break}catch(A){CH.push(A)}if(QU&&Uh.startsWith("@img/sharp-linux-x64")&&!QU._isUsingX64V2()){let A=Error("Prebuilt binaries for linux-x64 require v2 microarchitecture");A.code="Unsupported CPU",CH.push(A),QU=null}if(QU)s8A.exports=QU;else{let[A,Q,B]=["linux","darwin","win32"].map((C)=>dF.startsWith(C)),Y=[`Could not load the "sharp" module using the ${dF} runtime`];CH.forEach((C)=>{if(C.code!=="MODULE_NOT_FOUND")Y.push(`${C.code}: ${C.message}`)});let J=CH.map((C)=>C.message).join(" ");if(Y.push("Possible solutions:"),n8A()){let{found:C,expected:X}=n8A();Y.push("- Please upgrade Node.js:",` Found ${C}`,` Requires ${X}`)}else if(QpQ.includes(dF)){let[C,X]=dF.split("-"),G=C.endsWith("musl")?" --libc=musl":"";Y.push("- Ensure optional dependencies can be installed:"," npm install --include=optional sharp","- Ensure your package manager supports multi-platform installation:"," See https://sharp.pixelplumbing.com/install#cross-platform","- Add platform-specific dependencies:",` npm install --os=${C.replace("musl","")}${G} --cpu=${X} sharp`)}else Y.push(`- Manually install libvips >= ${BpQ}`,"- Add experimental WebAssembly-based dependencies:"," npm install --cpu=wasm32 sharp"," npm install @img/sharp-wasm32");if(A&&/(symbol not found|CXXABI_)/i.test(J))try{let{config:C}=u(`@img/sharp-libvips-${dF}/package`),X=`${tlQ()} ${elQ()}`,G=`${C.musl?"musl":"glibc"} ${C.musl||C.glibc}`;Y.push("- Update your OS:",` Found ${X}`,` Requires ${G}`)}catch(C){}if(A&&/\/snap\/core[0-9]{2}/.test(J))Y.push("- Remove the Node.js Snap, which does not support native modules"," snap remove node");if(Q&&/Incompatible library version/.test(J))Y.push("- Update Homebrew:"," brew update && brew upgrade vips");if(CH.some((C)=>C.code==="ERR_DLOPEN_DISABLED"))Y.push("- Run Node.js without using the --no-addons flag");if(B&&/The specified procedure could not be found/.test(J))Y.push("- Using the canvas package on Windows?"," See https://sharp.pixelplumbing.com/install#canvas-and-windows","- Check for outdated versions of sharp in the dependency tree:"," npm ls sharp");throw Y.push("- Consult the installation documentation:"," See https://sharp.pixelplumbing.com/install"),Error(Y.join(` +`))}});var a8A=R((T6Y,r8A)=>{var JpQ=u("node:util"),Eh=u("node:stream"),CpQ=g1();XH();var XpQ=JpQ.debuglog("sharp"),cF=function(A,Q){if(arguments.length===1&&!CpQ.defined(A))throw Error("Invalid input");if(!(this instanceof cF))return new cF(A,Q);return Eh.Duplex.call(this),this.options={topOffsetPre:-1,leftOffsetPre:-1,widthPre:-1,heightPre:-1,topOffsetPost:-1,leftOffsetPost:-1,widthPost:-1,heightPost:-1,width:-1,height:-1,canvas:"crop",position:0,resizeBackground:[0,0,0,255],angle:0,rotationAngle:0,rotationBackground:[0,0,0,255],rotateBeforePreExtract:!1,flip:!1,flop:!1,extendTop:0,extendBottom:0,extendLeft:0,extendRight:0,extendBackground:[0,0,0,255],extendWith:"background",withoutEnlargement:!1,withoutReduction:!1,affineMatrix:[],affineBackground:[0,0,0,255],affineIdx:0,affineIdy:0,affineOdx:0,affineOdy:0,affineInterpolator:this.constructor.interpolators.bilinear,kernel:"lanczos3",fastShrinkOnLoad:!0,tint:[-1,0,0,0],flatten:!1,flattenBackground:[0,0,0],unflatten:!1,negate:!1,negateAlpha:!0,medianSize:0,blurSigma:0,precision:"integer",minAmpl:0.2,sharpenSigma:0,sharpenM1:1,sharpenM2:2,sharpenX1:2,sharpenY2:10,sharpenY3:20,threshold:0,thresholdGrayscale:!0,trimBackground:[],trimThreshold:-1,trimLineArt:!1,dilateWidth:0,erodeWidth:0,gamma:0,gammaOut:0,greyscale:!1,normalise:!1,normaliseLower:1,normaliseUpper:99,claheWidth:0,claheHeight:0,claheMaxSlope:3,brightness:1,saturation:1,hue:0,lightness:0,booleanBufferIn:null,booleanFileIn:"",joinChannelIn:[],extractChannel:-1,removeAlpha:!1,ensureAlpha:-1,colourspace:"srgb",colourspacePipeline:"last",composite:[],fileOut:"",formatOut:"input",streamOut:!1,keepMetadata:0,withMetadataOrientation:-1,withMetadataDensity:0,withIccProfile:"",withExif:{},withExifMerge:!0,withXmp:"",resolveWithObject:!1,loop:-1,delay:[],jpegQuality:80,jpegProgressive:!1,jpegChromaSubsampling:"4:2:0",jpegTrellisQuantisation:!1,jpegOvershootDeringing:!1,jpegOptimiseScans:!1,jpegOptimiseCoding:!0,jpegQuantisationTable:0,pngProgressive:!1,pngCompressionLevel:6,pngAdaptiveFiltering:!1,pngPalette:!1,pngQuality:100,pngEffort:7,pngBitdepth:8,pngDither:1,jp2Quality:80,jp2TileHeight:512,jp2TileWidth:512,jp2Lossless:!1,jp2ChromaSubsampling:"4:4:4",webpQuality:80,webpAlphaQuality:100,webpLossless:!1,webpNearLossless:!1,webpSmartSubsample:!1,webpSmartDeblock:!1,webpPreset:"default",webpEffort:4,webpMinSize:!1,webpMixed:!1,gifBitdepth:8,gifEffort:7,gifDither:1,gifInterFrameMaxError:0,gifInterPaletteMaxError:3,gifKeepDuplicateFrames:!1,gifReuse:!0,gifProgressive:!1,tiffQuality:80,tiffCompression:"jpeg",tiffPredictor:"horizontal",tiffPyramid:!1,tiffMiniswhite:!1,tiffBitdepth:8,tiffTile:!1,tiffTileHeight:256,tiffTileWidth:256,tiffXres:1,tiffYres:1,tiffResolutionUnit:"inch",heifQuality:50,heifLossless:!1,heifCompression:"av1",heifEffort:4,heifChromaSubsampling:"4:4:4",heifBitdepth:8,jxlDistance:1,jxlDecodingTier:0,jxlEffort:7,jxlLossless:!1,rawDepth:"uchar",tileSize:256,tileOverlap:0,tileContainer:"fs",tileLayout:"dz",tileFormat:"last",tileDepth:"last",tileAngle:0,tileSkipBlanks:-1,tileBackground:[255,255,255,255],tileCentre:!1,tileId:"https://example.com/iiif",tileBasename:"",timeoutSeconds:0,linearA:[],linearB:[],pdfBackground:[255,255,255,255],debuglog:(B)=>{this.emit("warning",B),XpQ(B)},queueListener:function(B){cF.queue.emit("change",B)}},this.options.input=this._createInputDescriptor(A,Q,{allowStream:!0}),this};Object.setPrototypeOf(cF.prototype,Eh.Duplex.prototype);Object.setPrototypeOf(cF,Eh.Duplex);function GpQ(){let A=this.constructor.call(),{debuglog:Q,queueListener:B,...Y}=this.options;if(A.options=structuredClone(Y),A.options.debuglog=Q,A.options.queueListener=B,this._isStreamInput())this.on("finish",()=>{this._flattenBufferIn(),A.options.input.buffer=this.options.input.buffer,A.emit("finish")});return A}Object.assign(cF.prototype,{clone:GpQ});r8A.exports=cF});var e8A=R((S6Y,t8A)=>{var AA=g1(),F7=XH(),WpQ={left:"low",top:"low",low:"low",center:"centre",centre:"centre",right:"high",bottom:"high",high:"high"},FpQ=["failOn","limitInputPixels","unlimited","animated","autoOrient","density","ignoreIcc","page","pages","sequentialRead","jp2","openSlide","pdf","raw","svg","tiff","failOnError","openSlideLevel","pdfBackground","tiffSubifd"];function o8A(A){let Q=FpQ.filter((B)=>AA.defined(A[B])).map((B)=>[B,A[B]]);return Q.length?Object.fromEntries(Q):void 0}function ZpQ(A,Q,B){let Y={autoOrient:!1,failOn:"warning",limitInputPixels:Math.pow(16383,2),ignoreIcc:!1,unlimited:!1,sequentialRead:!0};if(AA.string(A))Y.file=A;else if(AA.buffer(A)){if(A.length===0)throw Error("Input Buffer is empty");Y.buffer=A}else if(AA.arrayBuffer(A)){if(A.byteLength===0)throw Error("Input bit Array is empty");Y.buffer=Buffer.from(A,0,A.byteLength)}else if(AA.typedArray(A)){if(A.length===0)throw Error("Input Bit Array is empty");Y.buffer=Buffer.from(A.buffer,A.byteOffset,A.byteLength)}else if(AA.plainObject(A)&&!AA.defined(Q)){if(Q=A,o8A(Q))Y.buffer=[]}else if(!AA.defined(A)&&!AA.defined(Q)&&AA.object(B)&&B.allowStream)Y.buffer=[];else if(Array.isArray(A))if(A.length>1)if(!this.options.joining)this.options.joining=!0,this.options.join=A.map((J)=>this._createInputDescriptor(J));else throw Error("Recursive join is unsupported");else throw Error("Expected at least two images to join");else throw Error(`Unsupported input '${A}' of type ${typeof A}${AA.defined(Q)?` when also providing options of type ${typeof Q}`:""}`);if(AA.object(Q)){if(AA.defined(Q.failOnError))if(AA.bool(Q.failOnError))Y.failOn=Q.failOnError?"warning":"none";else throw AA.invalidParameterError("failOnError","boolean",Q.failOnError);if(AA.defined(Q.failOn))if(AA.string(Q.failOn)&&AA.inArray(Q.failOn,["none","truncated","error","warning"]))Y.failOn=Q.failOn;else throw AA.invalidParameterError("failOn","one of: none, truncated, error, warning",Q.failOn);if(AA.defined(Q.autoOrient))if(AA.bool(Q.autoOrient))Y.autoOrient=Q.autoOrient;else throw AA.invalidParameterError("autoOrient","boolean",Q.autoOrient);if(AA.defined(Q.density))if(AA.inRange(Q.density,1,1e5))Y.density=Q.density;else throw AA.invalidParameterError("density","number between 1 and 100000",Q.density);if(AA.defined(Q.ignoreIcc))if(AA.bool(Q.ignoreIcc))Y.ignoreIcc=Q.ignoreIcc;else throw AA.invalidParameterError("ignoreIcc","boolean",Q.ignoreIcc);if(AA.defined(Q.limitInputPixels))if(AA.bool(Q.limitInputPixels))Y.limitInputPixels=Q.limitInputPixels?Math.pow(16383,2):0;else if(AA.integer(Q.limitInputPixels)&&AA.inRange(Q.limitInputPixels,0,Number.MAX_SAFE_INTEGER))Y.limitInputPixels=Q.limitInputPixels;else throw AA.invalidParameterError("limitInputPixels","positive integer",Q.limitInputPixels);if(AA.defined(Q.unlimited))if(AA.bool(Q.unlimited))Y.unlimited=Q.unlimited;else throw AA.invalidParameterError("unlimited","boolean",Q.unlimited);if(AA.defined(Q.sequentialRead))if(AA.bool(Q.sequentialRead))Y.sequentialRead=Q.sequentialRead;else throw AA.invalidParameterError("sequentialRead","boolean",Q.sequentialRead);if(AA.defined(Q.raw)){if(AA.object(Q.raw)&&AA.integer(Q.raw.width)&&Q.raw.width>0&&AA.integer(Q.raw.height)&&Q.raw.height>0&&AA.integer(Q.raw.channels)&&AA.inRange(Q.raw.channels,1,4))switch(Y.rawWidth=Q.raw.width,Y.rawHeight=Q.raw.height,Y.rawChannels=Q.raw.channels,A.constructor){case Uint8Array:case Uint8ClampedArray:Y.rawDepth="uchar";break;case Int8Array:Y.rawDepth="char";break;case Uint16Array:Y.rawDepth="ushort";break;case Int16Array:Y.rawDepth="short";break;case Uint32Array:Y.rawDepth="uint";break;case Int32Array:Y.rawDepth="int";break;case Float32Array:Y.rawDepth="float";break;case Float64Array:Y.rawDepth="double";break;default:Y.rawDepth="uchar";break}else throw Error("Expected width, height and channels for raw pixel input");if(Y.rawPremultiplied=!1,AA.defined(Q.raw.premultiplied))if(AA.bool(Q.raw.premultiplied))Y.rawPremultiplied=Q.raw.premultiplied;else throw AA.invalidParameterError("raw.premultiplied","boolean",Q.raw.premultiplied);if(Y.rawPageHeight=0,AA.defined(Q.raw.pageHeight))if(AA.integer(Q.raw.pageHeight)&&Q.raw.pageHeight>0&&Q.raw.pageHeight<=Q.raw.height){if(Q.raw.height%Q.raw.pageHeight!==0)throw Error(`Expected raw.height ${Q.raw.height} to be a multiple of raw.pageHeight ${Q.raw.pageHeight}`);Y.rawPageHeight=Q.raw.pageHeight}else throw AA.invalidParameterError("raw.pageHeight","positive integer",Q.raw.pageHeight)}if(AA.defined(Q.animated))if(AA.bool(Q.animated))Y.pages=Q.animated?-1:1;else throw AA.invalidParameterError("animated","boolean",Q.animated);if(AA.defined(Q.pages))if(AA.integer(Q.pages)&&AA.inRange(Q.pages,-1,1e5))Y.pages=Q.pages;else throw AA.invalidParameterError("pages","integer between -1 and 100000",Q.pages);if(AA.defined(Q.page))if(AA.integer(Q.page)&&AA.inRange(Q.page,0,1e5))Y.page=Q.page;else throw AA.invalidParameterError("page","integer between 0 and 100000",Q.page);if(AA.object(Q.openSlide)&&AA.defined(Q.openSlide.level))if(AA.integer(Q.openSlide.level)&&AA.inRange(Q.openSlide.level,0,256))Y.openSlideLevel=Q.openSlide.level;else throw AA.invalidParameterError("openSlide.level","integer between 0 and 256",Q.openSlide.level);else if(AA.defined(Q.level))if(AA.integer(Q.level)&&AA.inRange(Q.level,0,256))Y.openSlideLevel=Q.level;else throw AA.invalidParameterError("level","integer between 0 and 256",Q.level);if(AA.object(Q.tiff)&&AA.defined(Q.tiff.subifd))if(AA.integer(Q.tiff.subifd)&&AA.inRange(Q.tiff.subifd,-1,1e5))Y.tiffSubifd=Q.tiff.subifd;else throw AA.invalidParameterError("tiff.subifd","integer between -1 and 100000",Q.tiff.subifd);else if(AA.defined(Q.subifd))if(AA.integer(Q.subifd)&&AA.inRange(Q.subifd,-1,1e5))Y.tiffSubifd=Q.subifd;else throw AA.invalidParameterError("subifd","integer between -1 and 100000",Q.subifd);if(AA.object(Q.svg)){if(AA.defined(Q.svg.stylesheet))if(AA.string(Q.svg.stylesheet))Y.svgStylesheet=Q.svg.stylesheet;else throw AA.invalidParameterError("svg.stylesheet","string",Q.svg.stylesheet);if(AA.defined(Q.svg.highBitdepth))if(AA.bool(Q.svg.highBitdepth))Y.svgHighBitdepth=Q.svg.highBitdepth;else throw AA.invalidParameterError("svg.highBitdepth","boolean",Q.svg.highBitdepth)}if(AA.object(Q.pdf)&&AA.defined(Q.pdf.background))Y.pdfBackground=this._getBackgroundColourOption(Q.pdf.background);else if(AA.defined(Q.pdfBackground))Y.pdfBackground=this._getBackgroundColourOption(Q.pdfBackground);if(AA.object(Q.jp2)&&AA.defined(Q.jp2.oneshot))if(AA.bool(Q.jp2.oneshot))Y.jp2Oneshot=Q.jp2.oneshot;else throw AA.invalidParameterError("jp2.oneshot","boolean",Q.jp2.oneshot);if(AA.defined(Q.create))if(AA.object(Q.create)&&AA.integer(Q.create.width)&&Q.create.width>0&&AA.integer(Q.create.height)&&Q.create.height>0&&AA.integer(Q.create.channels)){if(Y.createWidth=Q.create.width,Y.createHeight=Q.create.height,Y.createChannels=Q.create.channels,Y.createPageHeight=0,AA.defined(Q.create.pageHeight))if(AA.integer(Q.create.pageHeight)&&Q.create.pageHeight>0&&Q.create.pageHeight<=Q.create.height){if(Q.create.height%Q.create.pageHeight!==0)throw Error(`Expected create.height ${Q.create.height} to be a multiple of create.pageHeight ${Q.create.pageHeight}`);Y.createPageHeight=Q.create.pageHeight}else throw AA.invalidParameterError("create.pageHeight","positive integer",Q.create.pageHeight);if(AA.defined(Q.create.noise)){if(!AA.object(Q.create.noise))throw Error("Expected noise to be an object");if(Q.create.noise.type!=="gaussian")throw Error("Only gaussian noise is supported at the moment");if(Y.createNoiseType=Q.create.noise.type,!AA.inRange(Q.create.channels,1,4))throw AA.invalidParameterError("create.channels","number between 1 and 4",Q.create.channels);if(Y.createNoiseMean=128,AA.defined(Q.create.noise.mean))if(AA.number(Q.create.noise.mean)&&AA.inRange(Q.create.noise.mean,0,1e4))Y.createNoiseMean=Q.create.noise.mean;else throw AA.invalidParameterError("create.noise.mean","number between 0 and 10000",Q.create.noise.mean);if(Y.createNoiseSigma=30,AA.defined(Q.create.noise.sigma))if(AA.number(Q.create.noise.sigma)&&AA.inRange(Q.create.noise.sigma,0,1e4))Y.createNoiseSigma=Q.create.noise.sigma;else throw AA.invalidParameterError("create.noise.sigma","number between 0 and 10000",Q.create.noise.sigma)}else if(AA.defined(Q.create.background)){if(!AA.inRange(Q.create.channels,3,4))throw AA.invalidParameterError("create.channels","number between 3 and 4",Q.create.channels);Y.createBackground=this._getBackgroundColourOption(Q.create.background)}else throw Error("Expected valid noise or background to create a new input image");delete Y.buffer}else throw Error("Expected valid width, height and channels to create a new input image");if(AA.defined(Q.text))if(AA.object(Q.text)&&AA.string(Q.text.text)){if(Y.textValue=Q.text.text,AA.defined(Q.text.height)&&AA.defined(Q.text.dpi))throw Error("Expected only one of dpi or height");if(AA.defined(Q.text.font))if(AA.string(Q.text.font))Y.textFont=Q.text.font;else throw AA.invalidParameterError("text.font","string",Q.text.font);if(AA.defined(Q.text.fontfile))if(AA.string(Q.text.fontfile))Y.textFontfile=Q.text.fontfile;else throw AA.invalidParameterError("text.fontfile","string",Q.text.fontfile);if(AA.defined(Q.text.width))if(AA.integer(Q.text.width)&&Q.text.width>0)Y.textWidth=Q.text.width;else throw AA.invalidParameterError("text.width","positive integer",Q.text.width);if(AA.defined(Q.text.height))if(AA.integer(Q.text.height)&&Q.text.height>0)Y.textHeight=Q.text.height;else throw AA.invalidParameterError("text.height","positive integer",Q.text.height);if(AA.defined(Q.text.align))if(AA.string(Q.text.align)&&AA.string(this.constructor.align[Q.text.align]))Y.textAlign=this.constructor.align[Q.text.align];else throw AA.invalidParameterError("text.align","valid alignment",Q.text.align);if(AA.defined(Q.text.justify))if(AA.bool(Q.text.justify))Y.textJustify=Q.text.justify;else throw AA.invalidParameterError("text.justify","boolean",Q.text.justify);if(AA.defined(Q.text.dpi))if(AA.integer(Q.text.dpi)&&AA.inRange(Q.text.dpi,1,1e6))Y.textDpi=Q.text.dpi;else throw AA.invalidParameterError("text.dpi","integer between 1 and 1000000",Q.text.dpi);if(AA.defined(Q.text.rgba))if(AA.bool(Q.text.rgba))Y.textRgba=Q.text.rgba;else throw AA.invalidParameterError("text.rgba","bool",Q.text.rgba);if(AA.defined(Q.text.spacing))if(AA.integer(Q.text.spacing)&&AA.inRange(Q.text.spacing,-1e6,1e6))Y.textSpacing=Q.text.spacing;else throw AA.invalidParameterError("text.spacing","integer between -1000000 and 1000000",Q.text.spacing);if(AA.defined(Q.text.wrap))if(AA.string(Q.text.wrap)&&AA.inArray(Q.text.wrap,["word","char","word-char","none"]))Y.textWrap=Q.text.wrap;else throw AA.invalidParameterError("text.wrap","one of: word, char, word-char, none",Q.text.wrap);delete Y.buffer}else throw Error("Expected a valid string to create an image with text.");if(AA.defined(Q.join))if(AA.defined(this.options.join)){if(AA.defined(Q.join.animated))if(AA.bool(Q.join.animated))Y.joinAnimated=Q.join.animated;else throw AA.invalidParameterError("join.animated","boolean",Q.join.animated);if(AA.defined(Q.join.across))if(AA.integer(Q.join.across)&&AA.inRange(Q.join.across,1,1e6))Y.joinAcross=Q.join.across;else throw AA.invalidParameterError("join.across","integer between 1 and 100000",Q.join.across);if(AA.defined(Q.join.shim))if(AA.integer(Q.join.shim)&&AA.inRange(Q.join.shim,0,1e6))Y.joinShim=Q.join.shim;else throw AA.invalidParameterError("join.shim","integer between 0 and 100000",Q.join.shim);if(AA.defined(Q.join.background))Y.joinBackground=this._getBackgroundColourOption(Q.join.background);if(AA.defined(Q.join.halign))if(AA.string(Q.join.halign)&&AA.string(this.constructor.align[Q.join.halign]))Y.joinHalign=this.constructor.align[Q.join.halign];else throw AA.invalidParameterError("join.halign","valid alignment",Q.join.halign);if(AA.defined(Q.join.valign))if(AA.string(Q.join.valign)&&AA.string(this.constructor.align[Q.join.valign]))Y.joinValign=this.constructor.align[Q.join.valign];else throw AA.invalidParameterError("join.valign","valid alignment",Q.join.valign)}else throw Error("Expected input to be an array of images to join")}else if(AA.defined(Q))throw Error("Invalid input options "+Q);return Y}function $pQ(A,Q,B){if(Array.isArray(this.options.input.buffer))if(AA.buffer(A)){if(this.options.input.buffer.length===0)this.on("finish",()=>{this.streamInFinished=!0});this.options.input.buffer.push(A),B()}else B(Error("Non-Buffer data on Writable Stream"));else B(Error("Unexpected data on Writable Stream"))}function UpQ(){if(this._isStreamInput())this.options.input.buffer=Buffer.concat(this.options.input.buffer)}function EpQ(){return Array.isArray(this.options.input.buffer)}function KpQ(A){let Q=Error();if(AA.fn(A)){if(this._isStreamInput())this.on("finish",()=>{this._flattenBufferIn(),F7.metadata(this.options,(B,Y)=>{if(B)A(AA.nativeError(B,Q));else A(null,Y)})});else F7.metadata(this.options,(B,Y)=>{if(B)A(AA.nativeError(B,Q));else A(null,Y)});return this}else if(this._isStreamInput())return new Promise((B,Y)=>{let J=()=>{this._flattenBufferIn(),F7.metadata(this.options,(C,X)=>{if(C)Y(AA.nativeError(C,Q));else B(X)})};if(this.writableFinished)J();else this.once("finish",J)});else return new Promise((B,Y)=>{F7.metadata(this.options,(J,C)=>{if(J)Y(AA.nativeError(J,Q));else B(C)})})}function VpQ(A){let Q=Error();if(AA.fn(A)){if(this._isStreamInput())this.on("finish",()=>{this._flattenBufferIn(),F7.stats(this.options,(B,Y)=>{if(B)A(AA.nativeError(B,Q));else A(null,Y)})});else F7.stats(this.options,(B,Y)=>{if(B)A(AA.nativeError(B,Q));else A(null,Y)});return this}else if(this._isStreamInput())return new Promise((B,Y)=>{this.on("finish",function(){this._flattenBufferIn(),F7.stats(this.options,(J,C)=>{if(J)Y(AA.nativeError(J,Q));else B(C)})})});else return new Promise((B,Y)=>{F7.stats(this.options,(J,C)=>{if(J)Y(AA.nativeError(J,Q));else B(C)})})}t8A.exports=function(A){Object.assign(A.prototype,{_inputOptionsFromObject:o8A,_createInputDescriptor:ZpQ,_write:$pQ,_flattenBufferIn:UpQ,_isStreamInput:EpQ,metadata:KpQ,stats:VpQ}),A.align=WpQ}});var C5A=R((k6Y,J5A)=>{var XQ=g1(),Q5A={center:0,centre:0,north:1,east:2,south:3,west:4,northeast:5,southeast:6,southwest:7,northwest:8},B5A={top:1,right:2,bottom:3,left:4,"right top":5,"right bottom":6,"left bottom":7,"left top":8},A5A={background:"background",copy:"copy",repeat:"repeat",mirror:"mirror"},Y5A={entropy:16,attention:17},Kh={nearest:"nearest",linear:"linear",cubic:"cubic",mitchell:"mitchell",lanczos2:"lanczos2",lanczos3:"lanczos3",mks2013:"mks2013",mks2021:"mks2021"},IpQ={contain:"contain",cover:"cover",fill:"fill",inside:"inside",outside:"outside"},HpQ={contain:"embed",cover:"crop",fill:"ignore_aspect",inside:"max",outside:"min"};function Vh(A){return A.angle%360!==0||A.input.autoOrient===!0||A.rotationAngle!==0}function R3(A){return A.width!==-1||A.height!==-1}function DpQ(A,Q,B){if(R3(this.options))this.options.debuglog("ignoring previous resize options");if(this.options.widthPost!==-1)this.options.debuglog("operation order will be: extract, resize, extract");if(XQ.defined(A))if(XQ.object(A)&&!XQ.defined(B))B=A;else if(XQ.integer(A)&&A>0)this.options.width=A;else throw XQ.invalidParameterError("width","positive integer",A);else this.options.width=-1;if(XQ.defined(Q))if(XQ.integer(Q)&&Q>0)this.options.height=Q;else throw XQ.invalidParameterError("height","positive integer",Q);else this.options.height=-1;if(XQ.object(B)){if(XQ.defined(B.width))if(XQ.integer(B.width)&&B.width>0)this.options.width=B.width;else throw XQ.invalidParameterError("width","positive integer",B.width);if(XQ.defined(B.height))if(XQ.integer(B.height)&&B.height>0)this.options.height=B.height;else throw XQ.invalidParameterError("height","positive integer",B.height);if(XQ.defined(B.fit)){let Y=HpQ[B.fit];if(XQ.string(Y))this.options.canvas=Y;else throw XQ.invalidParameterError("fit","valid fit",B.fit)}if(XQ.defined(B.position)){let Y=XQ.integer(B.position)?B.position:Y5A[B.position]||B5A[B.position]||Q5A[B.position];if(XQ.integer(Y)&&(XQ.inRange(Y,0,8)||XQ.inRange(Y,16,17)))this.options.position=Y;else throw XQ.invalidParameterError("position","valid position/gravity/strategy",B.position)}if(this._setBackgroundColourOption("resizeBackground",B.background),XQ.defined(B.kernel))if(XQ.string(Kh[B.kernel]))this.options.kernel=Kh[B.kernel];else throw XQ.invalidParameterError("kernel","valid kernel name",B.kernel);if(XQ.defined(B.withoutEnlargement))this._setBooleanOption("withoutEnlargement",B.withoutEnlargement);if(XQ.defined(B.withoutReduction))this._setBooleanOption("withoutReduction",B.withoutReduction);if(XQ.defined(B.fastShrinkOnLoad))this._setBooleanOption("fastShrinkOnLoad",B.fastShrinkOnLoad)}if(Vh(this.options)&&R3(this.options))this.options.rotateBeforePreExtract=!0;return this}function NpQ(A){if(XQ.integer(A)&&A>0)this.options.extendTop=A,this.options.extendBottom=A,this.options.extendLeft=A,this.options.extendRight=A;else if(XQ.object(A)){if(XQ.defined(A.top))if(XQ.integer(A.top)&&A.top>=0)this.options.extendTop=A.top;else throw XQ.invalidParameterError("top","positive integer",A.top);if(XQ.defined(A.bottom))if(XQ.integer(A.bottom)&&A.bottom>=0)this.options.extendBottom=A.bottom;else throw XQ.invalidParameterError("bottom","positive integer",A.bottom);if(XQ.defined(A.left))if(XQ.integer(A.left)&&A.left>=0)this.options.extendLeft=A.left;else throw XQ.invalidParameterError("left","positive integer",A.left);if(XQ.defined(A.right))if(XQ.integer(A.right)&&A.right>=0)this.options.extendRight=A.right;else throw XQ.invalidParameterError("right","positive integer",A.right);if(this._setBackgroundColourOption("extendBackground",A.background),XQ.defined(A.extendWith))if(XQ.string(A5A[A.extendWith]))this.options.extendWith=A5A[A.extendWith];else throw XQ.invalidParameterError("extendWith","one of: background, copy, repeat, mirror",A.extendWith)}else throw XQ.invalidParameterError("extend","integer or object",A);return this}function LpQ(A){let Q=R3(this.options)||this.options.widthPre!==-1?"Post":"Pre";if(this.options[`width${Q}`]!==-1)this.options.debuglog("ignoring previous extract options");if(["left","top","width","height"].forEach(function(B){let Y=A[B];if(XQ.integer(Y)&&Y>=0)this.options[B+(B==="left"||B==="top"?"Offset":"")+Q]=Y;else throw XQ.invalidParameterError(B,"integer",Y)},this),Vh(this.options)&&!R3(this.options)){if(this.options.widthPre===-1||this.options.widthPost===-1)this.options.rotateBeforePreExtract=!0}return this}function qpQ(A){if(this.options.trimThreshold=10,XQ.defined(A))if(XQ.object(A)){if(XQ.defined(A.background))this._setBackgroundColourOption("trimBackground",A.background);if(XQ.defined(A.threshold))if(XQ.number(A.threshold)&&A.threshold>=0)this.options.trimThreshold=A.threshold;else throw XQ.invalidParameterError("threshold","positive number",A.threshold);if(XQ.defined(A.lineArt))this._setBooleanOption("trimLineArt",A.lineArt)}else throw XQ.invalidParameterError("trim","object",A);if(Vh(this.options))this.options.rotateBeforePreExtract=!0;return this}J5A.exports=function(A){Object.assign(A.prototype,{resize:DpQ,extend:NpQ,extract:LpQ,trim:qpQ}),A.gravity=Q5A,A.strategy=Y5A,A.kernel=Kh,A.fit=IpQ,A.position=B5A}});var G5A=R((_6Y,X5A)=>{var nB=g1(),Ih={clear:"clear",source:"source",over:"over",in:"in",out:"out",atop:"atop",dest:"dest","dest-over":"dest-over","dest-in":"dest-in","dest-out":"dest-out","dest-atop":"dest-atop",xor:"xor",add:"add",saturate:"saturate",multiply:"multiply",screen:"screen",overlay:"overlay",darken:"darken",lighten:"lighten","colour-dodge":"colour-dodge","color-dodge":"colour-dodge","colour-burn":"colour-burn","color-burn":"colour-burn","hard-light":"hard-light","soft-light":"soft-light",difference:"difference",exclusion:"exclusion"};function MpQ(A){if(!Array.isArray(A))throw nB.invalidParameterError("images to composite","array",A);return this.options.composite=A.map((Q)=>{if(!nB.object(Q))throw nB.invalidParameterError("image to composite","object",Q);let B=this._inputOptionsFromObject(Q),Y={input:this._createInputDescriptor(Q.input,B,{allowStream:!1}),blend:"over",tile:!1,left:0,top:0,hasOffset:!1,gravity:0,premultiplied:!1};if(nB.defined(Q.blend))if(nB.string(Ih[Q.blend]))Y.blend=Ih[Q.blend];else throw nB.invalidParameterError("blend","valid blend name",Q.blend);if(nB.defined(Q.tile))if(nB.bool(Q.tile))Y.tile=Q.tile;else throw nB.invalidParameterError("tile","boolean",Q.tile);if(nB.defined(Q.left))if(nB.integer(Q.left))Y.left=Q.left;else throw nB.invalidParameterError("left","integer",Q.left);if(nB.defined(Q.top))if(nB.integer(Q.top))Y.top=Q.top;else throw nB.invalidParameterError("top","integer",Q.top);if(nB.defined(Q.top)!==nB.defined(Q.left))throw Error("Expected both left and top to be set");else Y.hasOffset=nB.integer(Q.top)&&nB.integer(Q.left);if(nB.defined(Q.gravity))if(nB.integer(Q.gravity)&&nB.inRange(Q.gravity,0,8))Y.gravity=Q.gravity;else if(nB.string(Q.gravity)&&nB.integer(this.constructor.gravity[Q.gravity]))Y.gravity=this.constructor.gravity[Q.gravity];else throw nB.invalidParameterError("gravity","valid gravity",Q.gravity);if(nB.defined(Q.premultiplied))if(nB.bool(Q.premultiplied))Y.premultiplied=Q.premultiplied;else throw nB.invalidParameterError("premultiplied","boolean",Q.premultiplied);return Y}),this}X5A.exports=function(A){A.prototype.composite=MpQ,A.blend=Ih}});var U5A=R((v6Y,$5A)=>{var WA=g1(),W5A={integer:"integer",float:"float",approximate:"approximate"};function zpQ(A,Q){if(!WA.defined(A))return this.autoOrient();if(this.options.angle||this.options.rotationAngle)this.options.debuglog("ignoring previous rotate options"),this.options.angle=0,this.options.rotationAngle=0;if(WA.integer(A)&&!(A%90))this.options.angle=A;else if(WA.number(A)){if(this.options.rotationAngle=A,WA.object(Q)&&Q.background)this._setBackgroundColourOption("rotationBackground",Q.background)}else throw WA.invalidParameterError("angle","numeric",A);return this}function RpQ(){return this.options.input.autoOrient=!0,this}function wpQ(A){return this.options.flip=WA.bool(A)?A:!0,this}function jpQ(A){return this.options.flop=WA.bool(A)?A:!0,this}function OpQ(A,Q){let B=[].concat(...A);if(B.length===4&&B.every(WA.number))this.options.affineMatrix=B;else throw WA.invalidParameterError("matrix","1x4 or 2x2 array",A);if(WA.defined(Q))if(WA.object(Q)){if(this._setBackgroundColourOption("affineBackground",Q.background),WA.defined(Q.idx))if(WA.number(Q.idx))this.options.affineIdx=Q.idx;else throw WA.invalidParameterError("options.idx","number",Q.idx);if(WA.defined(Q.idy))if(WA.number(Q.idy))this.options.affineIdy=Q.idy;else throw WA.invalidParameterError("options.idy","number",Q.idy);if(WA.defined(Q.odx))if(WA.number(Q.odx))this.options.affineOdx=Q.odx;else throw WA.invalidParameterError("options.odx","number",Q.odx);if(WA.defined(Q.ody))if(WA.number(Q.ody))this.options.affineOdy=Q.ody;else throw WA.invalidParameterError("options.ody","number",Q.ody);if(WA.defined(Q.interpolator))if(WA.inArray(Q.interpolator,Object.values(this.constructor.interpolators)))this.options.affineInterpolator=Q.interpolator;else throw WA.invalidParameterError("options.interpolator","valid interpolator name",Q.interpolator)}else throw WA.invalidParameterError("options","object",Q);return this}function PpQ(A,Q,B){if(!WA.defined(A))this.options.sharpenSigma=-1;else if(WA.bool(A))this.options.sharpenSigma=A?-1:0;else if(WA.number(A)&&WA.inRange(A,0.01,1e4)){if(this.options.sharpenSigma=A,WA.defined(Q))if(WA.number(Q)&&WA.inRange(Q,0,1e4))this.options.sharpenM1=Q;else throw WA.invalidParameterError("flat","number between 0 and 10000",Q);if(WA.defined(B))if(WA.number(B)&&WA.inRange(B,0,1e4))this.options.sharpenM2=B;else throw WA.invalidParameterError("jagged","number between 0 and 10000",B)}else if(WA.plainObject(A)){if(WA.number(A.sigma)&&WA.inRange(A.sigma,0.000001,10))this.options.sharpenSigma=A.sigma;else throw WA.invalidParameterError("options.sigma","number between 0.000001 and 10",A.sigma);if(WA.defined(A.m1))if(WA.number(A.m1)&&WA.inRange(A.m1,0,1e6))this.options.sharpenM1=A.m1;else throw WA.invalidParameterError("options.m1","number between 0 and 1000000",A.m1);if(WA.defined(A.m2))if(WA.number(A.m2)&&WA.inRange(A.m2,0,1e6))this.options.sharpenM2=A.m2;else throw WA.invalidParameterError("options.m2","number between 0 and 1000000",A.m2);if(WA.defined(A.x1))if(WA.number(A.x1)&&WA.inRange(A.x1,0,1e6))this.options.sharpenX1=A.x1;else throw WA.invalidParameterError("options.x1","number between 0 and 1000000",A.x1);if(WA.defined(A.y2))if(WA.number(A.y2)&&WA.inRange(A.y2,0,1e6))this.options.sharpenY2=A.y2;else throw WA.invalidParameterError("options.y2","number between 0 and 1000000",A.y2);if(WA.defined(A.y3))if(WA.number(A.y3)&&WA.inRange(A.y3,0,1e6))this.options.sharpenY3=A.y3;else throw WA.invalidParameterError("options.y3","number between 0 and 1000000",A.y3)}else throw WA.invalidParameterError("sigma","number between 0.01 and 10000",A);return this}function TpQ(A){if(!WA.defined(A))this.options.medianSize=3;else if(WA.integer(A)&&WA.inRange(A,1,1000))this.options.medianSize=A;else throw WA.invalidParameterError("size","integer between 1 and 1000",A);return this}function SpQ(A){let Q;if(WA.number(A))Q=A;else if(WA.plainObject(A)){if(!WA.number(A.sigma))throw WA.invalidParameterError("options.sigma","number between 0.3 and 1000",Q);if(Q=A.sigma,"precision"in A)if(WA.string(W5A[A.precision]))this.options.precision=W5A[A.precision];else throw WA.invalidParameterError("precision","one of: integer, float, approximate",A.precision);if("minAmplitude"in A)if(WA.number(A.minAmplitude)&&WA.inRange(A.minAmplitude,0.001,1))this.options.minAmpl=A.minAmplitude;else throw WA.invalidParameterError("minAmplitude","number between 0.001 and 1",A.minAmplitude)}if(!WA.defined(A))this.options.blurSigma=-1;else if(WA.bool(A))this.options.blurSigma=A?-1:0;else if(WA.number(Q)&&WA.inRange(Q,0.3,1000))this.options.blurSigma=Q;else throw WA.invalidParameterError("sigma","number between 0.3 and 1000",Q);return this}function F5A(A){if(!WA.defined(A))this.options.dilateWidth=1;else if(WA.integer(A)&&A>0)this.options.dilateWidth=A;else throw WA.invalidParameterError("dilate","positive integer",F5A);return this}function Z5A(A){if(!WA.defined(A))this.options.erodeWidth=1;else if(WA.integer(A)&&A>0)this.options.erodeWidth=A;else throw WA.invalidParameterError("erode","positive integer",Z5A);return this}function kpQ(A){if(this.options.flatten=WA.bool(A)?A:!0,WA.object(A))this._setBackgroundColourOption("flattenBackground",A.background);return this}function _pQ(){return this.options.unflatten=!0,this}function vpQ(A,Q){if(!WA.defined(A))this.options.gamma=2.2;else if(WA.number(A)&&WA.inRange(A,1,3))this.options.gamma=A;else throw WA.invalidParameterError("gamma","number between 1.0 and 3.0",A);if(!WA.defined(Q))this.options.gammaOut=this.options.gamma;else if(WA.number(Q)&&WA.inRange(Q,1,3))this.options.gammaOut=Q;else throw WA.invalidParameterError("gammaOut","number between 1.0 and 3.0",Q);return this}function ypQ(A){if(this.options.negate=WA.bool(A)?A:!0,WA.plainObject(A)&&"alpha"in A)if(!WA.bool(A.alpha))throw WA.invalidParameterError("alpha","should be boolean value",A.alpha);else this.options.negateAlpha=A.alpha;return this}function gpQ(A){if(WA.plainObject(A)){if(WA.defined(A.lower))if(WA.number(A.lower)&&WA.inRange(A.lower,0,99))this.options.normaliseLower=A.lower;else throw WA.invalidParameterError("lower","number between 0 and 99",A.lower);if(WA.defined(A.upper))if(WA.number(A.upper)&&WA.inRange(A.upper,1,100))this.options.normaliseUpper=A.upper;else throw WA.invalidParameterError("upper","number between 1 and 100",A.upper)}if(this.options.normaliseLower>=this.options.normaliseUpper)throw WA.invalidParameterError("range","lower to be less than upper",`${this.options.normaliseLower} >= ${this.options.normaliseUpper}`);return this.options.normalise=!0,this}function hpQ(A){return this.normalise(A)}function xpQ(A){if(WA.plainObject(A)){if(WA.integer(A.width)&&A.width>0)this.options.claheWidth=A.width;else throw WA.invalidParameterError("width","integer greater than zero",A.width);if(WA.integer(A.height)&&A.height>0)this.options.claheHeight=A.height;else throw WA.invalidParameterError("height","integer greater than zero",A.height);if(WA.defined(A.maxSlope))if(WA.integer(A.maxSlope)&&WA.inRange(A.maxSlope,0,100))this.options.claheMaxSlope=A.maxSlope;else throw WA.invalidParameterError("maxSlope","integer between 0 and 100",A.maxSlope)}else throw WA.invalidParameterError("options","plain object",A);return this}function fpQ(A){if(!WA.object(A)||!Array.isArray(A.kernel)||!WA.integer(A.width)||!WA.integer(A.height)||!WA.inRange(A.width,3,1001)||!WA.inRange(A.height,3,1001)||A.height*A.width!==A.kernel.length)throw Error("Invalid convolution kernel");if(!WA.integer(A.scale))A.scale=A.kernel.reduce(function(Q,B){return Q+B},0);if(A.scale<1)A.scale=1;if(!WA.integer(A.offset))A.offset=0;return this.options.convKernel=A,this}function bpQ(A,Q){if(!WA.defined(A))this.options.threshold=128;else if(WA.bool(A))this.options.threshold=A?128:0;else if(WA.integer(A)&&WA.inRange(A,0,255))this.options.threshold=A;else throw WA.invalidParameterError("threshold","integer between 0 and 255",A);if(!WA.object(Q)||Q.greyscale===!0||Q.grayscale===!0)this.options.thresholdGrayscale=!0;else this.options.thresholdGrayscale=!1;return this}function mpQ(A,Q,B){if(this.options.boolean=this._createInputDescriptor(A,B),WA.string(Q)&&WA.inArray(Q,["and","or","eor"]))this.options.booleanOp=Q;else throw WA.invalidParameterError("operator","one of: and, or, eor",Q);return this}function upQ(A,Q){if(!WA.defined(A)&&WA.number(Q))A=1;else if(WA.number(A)&&!WA.defined(Q))Q=0;if(!WA.defined(A))this.options.linearA=[];else if(WA.number(A))this.options.linearA=[A];else if(Array.isArray(A)&&A.length&&A.every(WA.number))this.options.linearA=A;else throw WA.invalidParameterError("a","number or array of numbers",A);if(!WA.defined(Q))this.options.linearB=[];else if(WA.number(Q))this.options.linearB=[Q];else if(Array.isArray(Q)&&Q.length&&Q.every(WA.number))this.options.linearB=Q;else throw WA.invalidParameterError("b","number or array of numbers",Q);if(this.options.linearA.length!==this.options.linearB.length)throw Error("Expected a and b to be arrays of the same length");return this}function dpQ(A){if(!Array.isArray(A))throw WA.invalidParameterError("inputMatrix","array",A);if(A.length!==3&&A.length!==4)throw WA.invalidParameterError("inputMatrix","3x3 or 4x4 array",A.length);let Q=A.flat().map(Number);if(Q.length!==9&&Q.length!==16)throw WA.invalidParameterError("inputMatrix","cardinality of 9 or 16",Q.length);return this.options.recombMatrix=Q,this}function cpQ(A){if(!WA.plainObject(A))throw WA.invalidParameterError("options","plain object",A);if("brightness"in A)if(WA.number(A.brightness)&&A.brightness>=0)this.options.brightness=A.brightness;else throw WA.invalidParameterError("brightness","number above zero",A.brightness);if("saturation"in A)if(WA.number(A.saturation)&&A.saturation>=0)this.options.saturation=A.saturation;else throw WA.invalidParameterError("saturation","number above zero",A.saturation);if("hue"in A)if(WA.integer(A.hue))this.options.hue=A.hue%360;else throw WA.invalidParameterError("hue","number",A.hue);if("lightness"in A)if(WA.number(A.lightness))this.options.lightness=A.lightness;else throw WA.invalidParameterError("lightness","number",A.lightness);return this}$5A.exports=function(A){Object.assign(A.prototype,{autoOrient:RpQ,rotate:zpQ,flip:wpQ,flop:jpQ,affine:OpQ,sharpen:PpQ,erode:Z5A,dilate:F5A,median:TpQ,blur:SpQ,flatten:kpQ,unflatten:_pQ,gamma:vpQ,negate:ypQ,normalise:gpQ,normalize:hpQ,clahe:xpQ,convolve:fpQ,threshold:bpQ,boolean:mpQ,linear:upQ,recomb:dpQ,modulate:cpQ})}});var Hh=R((y6Y,E5A)=>{E5A.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}});var V5A=R((g6Y,K5A)=>{K5A.exports=function(Q){if(!Q||typeof Q==="string")return!1;return Q instanceof Array||Array.isArray(Q)||Q.length>=0&&(Q.splice instanceof Function||Object.getOwnPropertyDescriptor(Q,Q.length-1)&&Q.constructor.name!=="String")}});var D5A=R((h6Y,H5A)=>{var lpQ=V5A(),ppQ=Array.prototype.concat,ipQ=Array.prototype.slice,I5A=H5A.exports=function(Q){var B=[];for(var Y=0,J=Q.length;Y{var WH=Hh(),FH=D5A(),N5A=Object.hasOwnProperty,L5A=Object.create(null);for(GH in WH)if(N5A.call(WH,GH))L5A[WH[GH]]=GH;var GH,$8=q5A.exports={to:{},get:{}};$8.get=function(A){var Q=A.substring(0,3).toLowerCase(),B,Y;switch(Q){case"hsl":B=$8.get.hsl(A),Y="hsl";break;case"hwb":B=$8.get.hwb(A),Y="hwb";break;default:B=$8.get.rgb(A),Y="rgb";break}if(!B)return null;return{model:Y,value:B}};$8.get.rgb=function(A){if(!A)return null;var Q=/^#([a-f0-9]{3,4})$/i,B=/^#([a-f0-9]{6})([a-f0-9]{2})?$/i,Y=/^rgba?\(\s*([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/,J=/^rgba?\(\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/,C=/^(\w+)$/,X=[0,0,0,1],G,W,F;if(G=A.match(B)){F=G[2],G=G[1];for(W=0;W<3;W++){var Z=W*2;X[W]=parseInt(G.slice(Z,Z+2),16)}if(F)X[3]=parseInt(F,16)/255}else if(G=A.match(Q)){G=G[1],F=G[3];for(W=0;W<3;W++)X[W]=parseInt(G[W]+G[W],16);if(F)X[3]=parseInt(F+F,16)/255}else if(G=A.match(Y)){for(W=0;W<3;W++)X[W]=parseInt(G[W+1],0);if(G[4])if(G[5])X[3]=parseFloat(G[4])*0.01;else X[3]=parseFloat(G[4])}else if(G=A.match(J)){for(W=0;W<3;W++)X[W]=Math.round(parseFloat(G[W+1])*2.55);if(G[4])if(G[5])X[3]=parseFloat(G[4])*0.01;else X[3]=parseFloat(G[4])}else if(G=A.match(C)){if(G[1]==="transparent")return[0,0,0,0];if(!N5A.call(WH,G[1]))return null;return X=WH[G[1]],X[3]=1,X}else return null;for(W=0;W<3;W++)X[W]=Z7(X[W],0,255);return X[3]=Z7(X[3],0,1),X};$8.get.hsl=function(A){if(!A)return null;var Q=/^hsla?\(\s*([+-]?(?:\d{0,3}\.)?\d+)(?:deg)?\s*,?\s*([+-]?[\d\.]+)%\s*,?\s*([+-]?[\d\.]+)%\s*(?:[,|\/]\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:[eE][+-]?\d+)?)\s*)?\)$/,B=A.match(Q);if(B){var Y=parseFloat(B[4]),J=(parseFloat(B[1])%360+360)%360,C=Z7(parseFloat(B[2]),0,100),X=Z7(parseFloat(B[3]),0,100),G=Z7(isNaN(Y)?1:Y,0,1);return[J,C,X,G]}return null};$8.get.hwb=function(A){if(!A)return null;var Q=/^hwb\(\s*([+-]?\d{0,3}(?:\.\d+)?)(?:deg)?\s*,\s*([+-]?[\d\.]+)%\s*,\s*([+-]?[\d\.]+)%\s*(?:,\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:[eE][+-]?\d+)?)\s*)?\)$/,B=A.match(Q);if(B){var Y=parseFloat(B[4]),J=(parseFloat(B[1])%360+360)%360,C=Z7(parseFloat(B[2]),0,100),X=Z7(parseFloat(B[3]),0,100),G=Z7(isNaN(Y)?1:Y,0,1);return[J,C,X,G]}return null};$8.to.hex=function(){var A=FH(arguments);return"#"+w3(A[0])+w3(A[1])+w3(A[2])+(A[3]<1?w3(Math.round(A[3]*255)):"")};$8.to.rgb=function(){var A=FH(arguments);return A.length<4||A[3]===1?"rgb("+Math.round(A[0])+", "+Math.round(A[1])+", "+Math.round(A[2])+")":"rgba("+Math.round(A[0])+", "+Math.round(A[1])+", "+Math.round(A[2])+", "+A[3]+")"};$8.to.rgb.percent=function(){var A=FH(arguments),Q=Math.round(A[0]/255*100),B=Math.round(A[1]/255*100),Y=Math.round(A[2]/255*100);return A.length<4||A[3]===1?"rgb("+Q+"%, "+B+"%, "+Y+"%)":"rgba("+Q+"%, "+B+"%, "+Y+"%, "+A[3]+")"};$8.to.hsl=function(){var A=FH(arguments);return A.length<4||A[3]===1?"hsl("+A[0]+", "+A[1]+"%, "+A[2]+"%)":"hsla("+A[0]+", "+A[1]+"%, "+A[2]+"%, "+A[3]+")"};$8.to.hwb=function(){var A=FH(arguments),Q="";if(A.length>=4&&A[3]!==1)Q=", "+A[3];return"hwb("+A[0]+", "+A[1]+"%, "+A[2]+"%"+Q+")"};$8.to.keyword=function(A){return L5A[A.slice(0,3)]};function Z7(A,Q,B){return Math.min(Math.max(Q,A),B)}function w3(A){var Q=Math.round(A).toString(16).toUpperCase();return Q.length<2?"0"+Q:Q}});var Dh=R((f6Y,R5A)=>{var ZH=Hh(),z5A={};for(let A of Object.keys(ZH))z5A[ZH[A]]=A;var aA={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},lch:{channels:3,labels:"lch"},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}};R5A.exports=aA;for(let A of Object.keys(aA)){if(!("channels"in aA[A]))throw Error("missing channels property: "+A);if(!("labels"in aA[A]))throw Error("missing channel labels property: "+A);if(aA[A].labels.length!==aA[A].channels)throw Error("channel and label counts mismatch: "+A);let{channels:Q,labels:B}=aA[A];delete aA[A].channels,delete aA[A].labels,Object.defineProperty(aA[A],"channels",{value:Q}),Object.defineProperty(aA[A],"labels",{value:B})}aA.rgb.hsl=function(A){let Q=A[0]/255,B=A[1]/255,Y=A[2]/255,J=Math.min(Q,B,Y),C=Math.max(Q,B,Y),X=C-J,G,W;if(C===J)G=0;else if(Q===C)G=(B-Y)/X;else if(B===C)G=2+(Y-Q)/X;else if(Y===C)G=4+(Q-B)/X;if(G=Math.min(G*60,360),G<0)G+=360;let F=(J+C)/2;if(C===J)W=0;else if(F<=0.5)W=X/(C+J);else W=X/(2-C-J);return[G,W*100,F*100]};aA.rgb.hsv=function(A){let Q,B,Y,J,C,X=A[0]/255,G=A[1]/255,W=A[2]/255,F=Math.max(X,G,W),Z=F-Math.min(X,G,W),U=function($){return(F-$)/6/Z+0.5};if(Z===0)J=0,C=0;else{if(C=Z/F,Q=U(X),B=U(G),Y=U(W),X===F)J=Y-B;else if(G===F)J=0.3333333333333333+Q-Y;else if(W===F)J=0.6666666666666666+B-Q;if(J<0)J+=1;else if(J>1)J-=1}return[J*360,C*100,F*100]};aA.rgb.hwb=function(A){let Q=A[0],B=A[1],Y=A[2],J=aA.rgb.hsl(A)[0],C=0.00392156862745098*Math.min(Q,Math.min(B,Y));return Y=1-0.00392156862745098*Math.max(Q,Math.max(B,Y)),[J,C*100,Y*100]};aA.rgb.cmyk=function(A){let Q=A[0]/255,B=A[1]/255,Y=A[2]/255,J=Math.min(1-Q,1-B,1-Y),C=(1-Q-J)/(1-J)||0,X=(1-B-J)/(1-J)||0,G=(1-Y-J)/(1-J)||0;return[C*100,X*100,G*100,J*100]};function npQ(A,Q){return(A[0]-Q[0])**2+(A[1]-Q[1])**2+(A[2]-Q[2])**2}aA.rgb.keyword=function(A){let Q=z5A[A];if(Q)return Q;let B=1/0,Y;for(let J of Object.keys(ZH)){let C=ZH[J],X=npQ(A,C);if(X0.04045?((Q+0.055)/1.055)**2.4:Q/12.92,B=B>0.04045?((B+0.055)/1.055)**2.4:B/12.92,Y=Y>0.04045?((Y+0.055)/1.055)**2.4:Y/12.92;let J=Q*0.4124+B*0.3576+Y*0.1805,C=Q*0.2126+B*0.7152+Y*0.0722,X=Q*0.0193+B*0.1192+Y*0.9505;return[J*100,C*100,X*100]};aA.rgb.lab=function(A){let Q=aA.rgb.xyz(A),B=Q[0],Y=Q[1],J=Q[2];B/=95.047,Y/=100,J/=108.883,B=B>0.008856?B**0.3333333333333333:7.787*B+0.13793103448275862,Y=Y>0.008856?Y**0.3333333333333333:7.787*Y+0.13793103448275862,J=J>0.008856?J**0.3333333333333333:7.787*J+0.13793103448275862;let C=116*Y-16,X=500*(B-Y),G=200*(Y-J);return[C,X,G]};aA.hsl.rgb=function(A){let Q=A[0]/360,B=A[1]/100,Y=A[2]/100,J,C,X;if(B===0)return X=Y*255,[X,X,X];if(Y<0.5)J=Y*(1+B);else J=Y+B-Y*B;let G=2*Y-J,W=[0,0,0];for(let F=0;F<3;F++){if(C=Q+0.3333333333333333*-(F-1),C<0)C++;if(C>1)C--;if(6*C<1)X=G+(J-G)*6*C;else if(2*C<1)X=J;else if(3*C<2)X=G+(J-G)*(0.6666666666666666-C)*6;else X=G;W[F]=X*255}return W};aA.hsl.hsv=function(A){let Q=A[0],B=A[1]/100,Y=A[2]/100,J=B,C=Math.max(Y,0.01);Y*=2,B*=Y<=1?Y:2-Y,J*=C<=1?C:2-C;let X=(Y+B)/2,G=Y===0?2*J/(C+J):2*B/(Y+B);return[Q,G*100,X*100]};aA.hsv.rgb=function(A){let Q=A[0]/60,B=A[1]/100,Y=A[2]/100,J=Math.floor(Q)%6,C=Q-Math.floor(Q),X=255*Y*(1-B),G=255*Y*(1-B*C),W=255*Y*(1-B*(1-C));switch(Y*=255,J){case 0:return[Y,W,X];case 1:return[G,Y,X];case 2:return[X,Y,W];case 3:return[X,G,Y];case 4:return[W,X,Y];case 5:return[Y,X,G]}};aA.hsv.hsl=function(A){let Q=A[0],B=A[1]/100,Y=A[2]/100,J=Math.max(Y,0.01),C,X;X=(2-B)*Y;let G=(2-B)*J;return C=B*J,C/=G<=1?G:2-G,C=C||0,X/=2,[Q,C*100,X*100]};aA.hwb.rgb=function(A){let Q=A[0]/360,B=A[1]/100,Y=A[2]/100,J=B+Y,C;if(J>1)B/=J,Y/=J;let X=Math.floor(6*Q),G=1-Y;if(C=6*Q-X,(X&1)!==0)C=1-C;let W=B+C*(G-B),F,Z,U;switch(X){default:case 6:case 0:F=G,Z=W,U=B;break;case 1:F=W,Z=G,U=B;break;case 2:F=B,Z=G,U=W;break;case 3:F=B,Z=W,U=G;break;case 4:F=W,Z=B,U=G;break;case 5:F=G,Z=B,U=W;break}return[F*255,Z*255,U*255]};aA.cmyk.rgb=function(A){let Q=A[0]/100,B=A[1]/100,Y=A[2]/100,J=A[3]/100,C=1-Math.min(1,Q*(1-J)+J),X=1-Math.min(1,B*(1-J)+J),G=1-Math.min(1,Y*(1-J)+J);return[C*255,X*255,G*255]};aA.xyz.rgb=function(A){let Q=A[0]/100,B=A[1]/100,Y=A[2]/100,J,C,X;return J=Q*3.2406+B*-1.5372+Y*-0.4986,C=Q*-0.9689+B*1.8758+Y*0.0415,X=Q*0.0557+B*-0.204+Y*1.057,J=J>0.0031308?1.055*J**0.4166666666666667-0.055:J*12.92,C=C>0.0031308?1.055*C**0.4166666666666667-0.055:C*12.92,X=X>0.0031308?1.055*X**0.4166666666666667-0.055:X*12.92,J=Math.min(Math.max(0,J),1),C=Math.min(Math.max(0,C),1),X=Math.min(Math.max(0,X),1),[J*255,C*255,X*255]};aA.xyz.lab=function(A){let Q=A[0],B=A[1],Y=A[2];Q/=95.047,B/=100,Y/=108.883,Q=Q>0.008856?Q**0.3333333333333333:7.787*Q+0.13793103448275862,B=B>0.008856?B**0.3333333333333333:7.787*B+0.13793103448275862,Y=Y>0.008856?Y**0.3333333333333333:7.787*Y+0.13793103448275862;let J=116*B-16,C=500*(Q-B),X=200*(B-Y);return[J,C,X]};aA.lab.xyz=function(A){let Q=A[0],B=A[1],Y=A[2],J,C,X;C=(Q+16)/116,J=B/500+C,X=C-Y/200;let G=C**3,W=J**3,F=X**3;return C=G>0.008856?G:(C-0.13793103448275862)/7.787,J=W>0.008856?W:(J-0.13793103448275862)/7.787,X=F>0.008856?F:(X-0.13793103448275862)/7.787,J*=95.047,C*=100,X*=108.883,[J,C,X]};aA.lab.lch=function(A){let Q=A[0],B=A[1],Y=A[2],J;if(J=Math.atan2(Y,B)*360/2/Math.PI,J<0)J+=360;let X=Math.sqrt(B*B+Y*Y);return[Q,X,J]};aA.lch.lab=function(A){let Q=A[0],B=A[1],J=A[2]/360*2*Math.PI,C=B*Math.cos(J),X=B*Math.sin(J);return[Q,C,X]};aA.rgb.ansi16=function(A,Q=null){let[B,Y,J]=A,C=Q===null?aA.rgb.hsv(A)[2]:Q;if(C=Math.round(C/50),C===0)return 30;let X=30+(Math.round(J/255)<<2|Math.round(Y/255)<<1|Math.round(B/255));if(C===2)X+=60;return X};aA.hsv.ansi16=function(A){return aA.rgb.ansi16(aA.hsv.rgb(A),A[2])};aA.rgb.ansi256=function(A){let Q=A[0],B=A[1],Y=A[2];if(Q===B&&B===Y){if(Q<8)return 16;if(Q>248)return 231;return Math.round((Q-8)/247*24)+232}return 16+36*Math.round(Q/255*5)+6*Math.round(B/255*5)+Math.round(Y/255*5)};aA.ansi16.rgb=function(A){let Q=A%10;if(Q===0||Q===7){if(A>50)Q+=3.5;return Q=Q/10.5*255,[Q,Q,Q]}let B=(~~(A>50)+1)*0.5,Y=(Q&1)*B*255,J=(Q>>1&1)*B*255,C=(Q>>2&1)*B*255;return[Y,J,C]};aA.ansi256.rgb=function(A){if(A>=232){let C=(A-232)*10+8;return[C,C,C]}A-=16;let Q,B=Math.floor(A/36)/5*255,Y=Math.floor((Q=A%36)/6)/5*255,J=Q%6/5*255;return[B,Y,J]};aA.rgb.hex=function(A){let B=(((Math.round(A[0])&255)<<16)+((Math.round(A[1])&255)<<8)+(Math.round(A[2])&255)).toString(16).toUpperCase();return"000000".substring(B.length)+B};aA.hex.rgb=function(A){let Q=A.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!Q)return[0,0,0];let B=Q[0];if(Q[0].length===3)B=B.split("").map((G)=>{return G+G}).join("");let Y=parseInt(B,16),J=Y>>16&255,C=Y>>8&255,X=Y&255;return[J,C,X]};aA.rgb.hcg=function(A){let Q=A[0]/255,B=A[1]/255,Y=A[2]/255,J=Math.max(Math.max(Q,B),Y),C=Math.min(Math.min(Q,B),Y),X=J-C,G,W;if(X<1)G=C/(1-X);else G=0;if(X<=0)W=0;else if(J===Q)W=(B-Y)/X%6;else if(J===B)W=2+(Y-Q)/X;else W=4+(Q-B)/X;return W/=6,W%=1,[W*360,X*100,G*100]};aA.hsl.hcg=function(A){let Q=A[1]/100,B=A[2]/100,Y=B<0.5?2*Q*B:2*Q*(1-B),J=0;if(Y<1)J=(B-0.5*Y)/(1-Y);return[A[0],Y*100,J*100]};aA.hsv.hcg=function(A){let Q=A[1]/100,B=A[2]/100,Y=Q*B,J=0;if(Y<1)J=(B-Y)/(1-Y);return[A[0],Y*100,J*100]};aA.hcg.rgb=function(A){let Q=A[0]/360,B=A[1]/100,Y=A[2]/100;if(B===0)return[Y*255,Y*255,Y*255];let J=[0,0,0],C=Q%1*6,X=C%1,G=1-X,W=0;switch(Math.floor(C)){case 0:J[0]=1,J[1]=X,J[2]=0;break;case 1:J[0]=G,J[1]=1,J[2]=0;break;case 2:J[0]=0,J[1]=1,J[2]=X;break;case 3:J[0]=0,J[1]=G,J[2]=1;break;case 4:J[0]=X,J[1]=0,J[2]=1;break;default:J[0]=1,J[1]=0,J[2]=G}return W=(1-B)*Y,[(B*J[0]+W)*255,(B*J[1]+W)*255,(B*J[2]+W)*255]};aA.hcg.hsv=function(A){let Q=A[1]/100,B=A[2]/100,Y=Q+B*(1-Q),J=0;if(Y>0)J=Q/Y;return[A[0],J*100,Y*100]};aA.hcg.hsl=function(A){let Q=A[1]/100,Y=A[2]/100*(1-Q)+0.5*Q,J=0;if(Y>0&&Y<0.5)J=Q/(2*Y);else if(Y>=0.5&&Y<1)J=Q/(2*(1-Y));return[A[0],J*100,Y*100]};aA.hcg.hwb=function(A){let Q=A[1]/100,B=A[2]/100,Y=Q+B*(1-Q);return[A[0],(Y-Q)*100,(1-Y)*100]};aA.hwb.hcg=function(A){let Q=A[1]/100,Y=1-A[2]/100,J=Y-Q,C=0;if(J<1)C=(Y-J)/(1-J);return[A[0],J*100,C*100]};aA.apple.rgb=function(A){return[A[0]/65535*255,A[1]/65535*255,A[2]/65535*255]};aA.rgb.apple=function(A){return[A[0]/255*65535,A[1]/255*65535,A[2]/255*65535]};aA.gray.rgb=function(A){return[A[0]/100*255,A[0]/100*255,A[0]/100*255]};aA.gray.hsl=function(A){return[0,0,A[0]]};aA.gray.hsv=aA.gray.hsl;aA.gray.hwb=function(A){return[0,100,A[0]]};aA.gray.cmyk=function(A){return[0,0,0,A[0]]};aA.gray.lab=function(A){return[A[0],0,0]};aA.gray.hex=function(A){let Q=Math.round(A[0]/100*255)&255,Y=((Q<<16)+(Q<<8)+Q).toString(16).toUpperCase();return"000000".substring(Y.length)+Y};aA.rgb.gray=function(A){return[(A[0]+A[1]+A[2])/3/255*100]}});var j5A=R((b6Y,w5A)=>{var j3=Dh();function spQ(){let A={},Q=Object.keys(j3);for(let B=Q.length,Y=0;Y{var Nh=Dh(),tpQ=j5A(),BU={},epQ=Object.keys(Nh);function AiQ(A){let Q=function(...B){let Y=B[0];if(Y===void 0||Y===null)return Y;if(Y.length>1)B=Y;return A(B)};if("conversion"in A)Q.conversion=A.conversion;return Q}function QiQ(A){let Q=function(...B){let Y=B[0];if(Y===void 0||Y===null)return Y;if(Y.length>1)B=Y;let J=A(B);if(typeof J==="object")for(let C=J.length,X=0;X{BU[A]={},Object.defineProperty(BU[A],"channels",{value:Nh[A].channels}),Object.defineProperty(BU[A],"labels",{value:Nh[A].labels});let Q=tpQ(A);Object.keys(Q).forEach((Y)=>{let J=Q[Y];BU[A][Y]=QiQ(J),BU[A][Y].raw=AiQ(J)})});O5A.exports=BU});var k5A=R((u6Y,S5A)=>{var YU=M5A(),U8=P5A(),T5A=["keyword","gray","hex"],Lh={};for(let A of Object.keys(U8))Lh[[...U8[A].labels].sort().join("")]=A;var O3={};function pY(A,Q){if(!(this instanceof pY))return new pY(A,Q);if(Q&&Q in T5A)Q=null;if(Q&&!(Q in U8))throw Error("Unknown model: "+Q);let B,Y;if(A==null)this.model="rgb",this.color=[0,0,0],this.valpha=1;else if(A instanceof pY)this.model=A.model,this.color=[...A.color],this.valpha=A.valpha;else if(typeof A==="string"){let J=YU.get(A);if(J===null)throw Error("Unable to parse color from string: "+A);this.model=J.model,Y=U8[this.model].channels,this.color=J.value.slice(0,Y),this.valpha=typeof J.value[Y]==="number"?J.value[Y]:1}else if(A.length>0){this.model=Q||"rgb",Y=U8[this.model].channels;let J=Array.prototype.slice.call(A,0,Y);this.color=qh(J,Y),this.valpha=typeof A[Y]==="number"?A[Y]:1}else if(typeof A==="number")this.model="rgb",this.color=[A>>16&255,A>>8&255,A&255],this.valpha=1;else{this.valpha=1;let J=Object.keys(A);if("alpha"in A)J.splice(J.indexOf("alpha"),1),this.valpha=typeof A.alpha==="number"?A.alpha:0;let C=J.sort().join("");if(!(C in Lh))throw Error("Unable to parse color from object: "+JSON.stringify(A));this.model=Lh[C];let{labels:X}=U8[this.model],G=[];for(B=0;B(A%360+360)%360),saturationl:c0("hsl",1,kY(100)),lightness:c0("hsl",2,kY(100)),saturationv:c0("hsv",1,kY(100)),value:c0("hsv",2,kY(100)),chroma:c0("hcg",1,kY(100)),gray:c0("hcg",2,kY(100)),white:c0("hwb",1,kY(100)),wblack:c0("hwb",2,kY(100)),cyan:c0("cmyk",0,kY(100)),magenta:c0("cmyk",1,kY(100)),yellow:c0("cmyk",2,kY(100)),black:c0("cmyk",3,kY(100)),x:c0("xyz",0,kY(95.047)),y:c0("xyz",1,kY(100)),z:c0("xyz",2,kY(108.833)),l:c0("lab",0,kY(100)),a:c0("lab",1),b:c0("lab",2),keyword(A){if(A!==void 0)return new pY(A);return U8[this.model].keyword(this.color)},hex(A){if(A!==void 0)return new pY(A);return YU.to.hex(this.rgb().round().color)},hexa(A){if(A!==void 0)return new pY(A);let Q=this.rgb().round().color,B=Math.round(this.valpha*255).toString(16).toUpperCase();if(B.length===1)B="0"+B;return YU.to.hex(Q)+B},rgbNumber(){let A=this.rgb().color;return(A[0]&255)<<16|(A[1]&255)<<8|A[2]&255},luminosity(){let A=this.rgb().color,Q=[];for(let[B,Y]of A.entries()){let J=Y/255;Q[B]=J<=0.04045?J/12.92:((J+0.055)/1.055)**2.4}return 0.2126*Q[0]+0.7152*Q[1]+0.0722*Q[2]},contrast(A){let Q=this.luminosity(),B=A.luminosity();if(Q>B)return(Q+0.05)/(B+0.05);return(B+0.05)/(Q+0.05)},level(A){let Q=this.contrast(A);if(Q>=7)return"AAA";return Q>=4.5?"AA":""},isDark(){let A=this.rgb().color;return(A[0]*2126+A[1]*7152+A[2]*722)/1e4<128},isLight(){return!this.isDark()},negate(){let A=this.rgb();for(let Q=0;Q<3;Q++)A.color[Q]=255-A.color[Q];return A},lighten(A){let Q=this.hsl();return Q.color[2]+=Q.color[2]*A,Q},darken(A){let Q=this.hsl();return Q.color[2]-=Q.color[2]*A,Q},saturate(A){let Q=this.hsl();return Q.color[1]+=Q.color[1]*A,Q},desaturate(A){let Q=this.hsl();return Q.color[1]-=Q.color[1]*A,Q},whiten(A){let Q=this.hwb();return Q.color[1]+=Q.color[1]*A,Q},blacken(A){let Q=this.hwb();return Q.color[2]+=Q.color[2]*A,Q},grayscale(){let A=this.rgb().color,Q=A[0]*0.3+A[1]*0.59+A[2]*0.11;return pY.rgb(Q,Q,Q)},fade(A){return this.alpha(this.valpha-this.valpha*A)},opaquer(A){return this.alpha(this.valpha+this.valpha*A)},rotate(A){let Q=this.hsl(),B=Q.color[0];return B=(B+A)%360,B=B<0?360+B:B,Q.color[0]=B,Q},mix(A,Q){if(!A||!A.rgb)throw Error('Argument to "mix" was not a Color instance, but rather an instance of '+typeof A);let B=A.rgb(),Y=this.rgb(),J=Q===void 0?0.5:Q,C=2*J-1,X=B.alpha()-Y.alpha(),G=((C*X===-1?C:(C+X)/(1+C*X))+1)/2,W=1-G;return pY.rgb(G*B.red()+W*Y.red(),G*B.green()+W*Y.green(),G*B.blue()+W*Y.blue(),B.alpha()*J+Y.alpha()*(1-J))}};for(let A of Object.keys(U8)){if(T5A.includes(A))continue;let{channels:Q}=U8[A];pY.prototype[A]=function(...B){if(this.model===A)return new pY(this);if(B.length>0)return new pY(B,A);return new pY([...JiQ(U8[this.model][A].raw(this.color)),this.valpha],A)},pY[A]=function(...B){let Y=B[0];if(typeof Y==="number")Y=qh(B,Q);return new pY(Y,A)}}function BiQ(A,Q){return Number(A.toFixed(Q))}function YiQ(A){return function(Q){return BiQ(Q,A)}}function c0(A,Q,B){A=Array.isArray(A)?A:[A];for(let Y of A)(O3[Y]||(O3[Y]=[]))[Q]=B;return A=A[0],function(Y){let J;if(Y!==void 0){if(B)Y=B(Y);return J=this[A](),J.color[Q]=Y,J}if(J=this[A]().color[Q],B)J=B(J);return J}}function kY(A){return function(Q){return Math.max(0,Math.min(A,Q))}}function JiQ(A){return Array.isArray(A)?A:[A]}function qh(A,Q){for(let B=0;B{var CiQ=k5A(),q6=g1(),_5A={multiband:"multiband","b-w":"b-w",bw:"b-w",cmyk:"cmyk",srgb:"srgb"};function XiQ(A){return this._setBackgroundColourOption("tint",A),this}function GiQ(A){return this.options.greyscale=q6.bool(A)?A:!0,this}function WiQ(A){return this.greyscale(A)}function FiQ(A){if(!q6.string(A))throw q6.invalidParameterError("colourspace","string",A);return this.options.colourspacePipeline=A,this}function ZiQ(A){return this.pipelineColourspace(A)}function $iQ(A){if(!q6.string(A))throw q6.invalidParameterError("colourspace","string",A);return this.options.colourspace=A,this}function UiQ(A){return this.toColourspace(A)}function v5A(A){if(q6.object(A)||q6.string(A)){let Q=CiQ(A);return[Q.red(),Q.green(),Q.blue(),Math.round(Q.alpha()*255)]}else throw q6.invalidParameterError("background","object or string",A)}function EiQ(A,Q){if(q6.defined(Q))this.options[A]=v5A(Q)}y5A.exports=function(A){Object.assign(A.prototype,{tint:XiQ,greyscale:GiQ,grayscale:WiQ,pipelineColourspace:FiQ,pipelineColorspace:ZiQ,toColourspace:$iQ,toColorspace:UiQ,_getBackgroundColourOption:v5A,_setBackgroundColourOption:EiQ}),A.colourspace=_5A,A.colorspace=_5A}});var x5A=R((c6Y,h5A)=>{var b1=g1(),KiQ={and:"and",or:"or",eor:"eor"};function ViQ(){return this.options.removeAlpha=!0,this}function IiQ(A){if(b1.defined(A))if(b1.number(A)&&b1.inRange(A,0,1))this.options.ensureAlpha=A;else throw b1.invalidParameterError("alpha","number between 0 and 1",A);else this.options.ensureAlpha=1;return this}function HiQ(A){let Q={red:0,green:1,blue:2,alpha:3};if(Object.keys(Q).includes(A))A=Q[A];if(b1.integer(A)&&b1.inRange(A,0,4))this.options.extractChannel=A;else throw b1.invalidParameterError("channel","integer or one of: red, green, blue, alpha",A);return this}function DiQ(A,Q){if(Array.isArray(A))A.forEach(function(B){this.options.joinChannelIn.push(this._createInputDescriptor(B,Q))},this);else this.options.joinChannelIn.push(this._createInputDescriptor(A,Q));return this}function NiQ(A){if(b1.string(A)&&b1.inArray(A,["and","or","eor"]))this.options.bandBoolOp=A;else throw b1.invalidParameterError("boolOp","one of: and, or, eor",A);return this}h5A.exports=function(A){Object.assign(A.prototype,{removeAlpha:ViQ,ensureAlpha:IiQ,extractChannel:HiQ,joinChannel:DiQ,bandbool:NiQ}),A.bool=KiQ}});var d5A=R((l6Y,u5A)=>{var Mh=u("node:path"),f=g1(),JU=XH(),f5A=new Map([["heic","heif"],["heif","heif"],["avif","avif"],["jpeg","jpeg"],["jpg","jpeg"],["jpe","jpeg"],["tile","tile"],["dz","tile"],["png","png"],["raw","raw"],["tiff","tiff"],["tif","tiff"],["webp","webp"],["gif","gif"],["jp2","jp2"],["jpx","jp2"],["j2k","jp2"],["j2c","jp2"],["jxl","jxl"]]),LiQ=/\.(jp[2x]|j2[kc])$/i,b5A=()=>Error("JP2 output requires libvips with support for OpenJPEG"),m5A=(A)=>1<<31-Math.clz32(Math.ceil(Math.log2(A)));function qiQ(A,Q){let B;if(!f.string(A))B=Error("Missing output file path");else if(f.string(this.options.input.file)&&Mh.resolve(this.options.input.file)===Mh.resolve(A))B=Error("Cannot use same file for input and output");else if(LiQ.test(Mh.extname(A))&&!this.constructor.format.jp2k.output.file)B=b5A();if(B)if(f.fn(Q))Q(B);else return Promise.reject(B);else{this.options.fileOut=A;let Y=Error();return this._pipeline(Q,Y)}return this}function MiQ(A,Q){if(f.object(A))this._setBooleanOption("resolveWithObject",A.resolveWithObject);else if(this.options.resolveWithObject)this.options.resolveWithObject=!1;this.options.fileOut="";let B=Error();return this._pipeline(f.fn(A)?A:Q,B)}function ziQ(){return this.options.keepMetadata|=1,this}function RiQ(A){if(f.object(A))for(let[Q,B]of Object.entries(A))if(f.object(B))for(let[Y,J]of Object.entries(B))if(f.string(J))this.options.withExif[`exif-${Q.toLowerCase()}-${Y}`]=J;else throw f.invalidParameterError(`${Q}.${Y}`,"string",J);else throw f.invalidParameterError(Q,"object",B);else throw f.invalidParameterError("exif","object",A);return this.options.withExifMerge=!1,this.keepExif()}function wiQ(A){return this.withExif(A),this.options.withExifMerge=!0,this}function jiQ(){return this.options.keepMetadata|=8,this}function OiQ(A,Q){if(f.string(A))this.options.withIccProfile=A;else throw f.invalidParameterError("icc","string",A);if(this.keepIccProfile(),f.object(Q)){if(f.defined(Q.attach))if(f.bool(Q.attach)){if(!Q.attach)this.options.keepMetadata&=-9}else throw f.invalidParameterError("attach","boolean",Q.attach)}return this}function PiQ(){return this.options.keepMetadata|=2,this}function TiQ(A){if(f.string(A)&&A.length>0)this.options.withXmp=A,this.options.keepMetadata|=2;else throw f.invalidParameterError("xmp","non-empty string",A);return this}function SiQ(){return this.options.keepMetadata=31,this}function kiQ(A){if(this.keepMetadata(),this.withIccProfile("srgb"),f.object(A)){if(f.defined(A.orientation))if(f.integer(A.orientation)&&f.inRange(A.orientation,1,8))this.options.withMetadataOrientation=A.orientation;else throw f.invalidParameterError("orientation","integer between 1 and 8",A.orientation);if(f.defined(A.density))if(f.number(A.density)&&A.density>0)this.options.withMetadataDensity=A.density;else throw f.invalidParameterError("density","positive number",A.density);if(f.defined(A.icc))this.withIccProfile(A.icc);if(f.defined(A.exif))this.withExifMerge(A.exif)}return this}function _iQ(A,Q){let B=f5A.get((f.object(A)&&f.string(A.id)?A.id:A).toLowerCase());if(!B)throw f.invalidParameterError("format",`one of: ${[...f5A.keys()].join(", ")}`,A);return this[B](Q)}function viQ(A){if(f.object(A)){if(f.defined(A.quality))if(f.integer(A.quality)&&f.inRange(A.quality,1,100))this.options.jpegQuality=A.quality;else throw f.invalidParameterError("quality","integer between 1 and 100",A.quality);if(f.defined(A.progressive))this._setBooleanOption("jpegProgressive",A.progressive);if(f.defined(A.chromaSubsampling))if(f.string(A.chromaSubsampling)&&f.inArray(A.chromaSubsampling,["4:2:0","4:4:4"]))this.options.jpegChromaSubsampling=A.chromaSubsampling;else throw f.invalidParameterError("chromaSubsampling","one of: 4:2:0, 4:4:4",A.chromaSubsampling);let Q=f.bool(A.optimizeCoding)?A.optimizeCoding:A.optimiseCoding;if(f.defined(Q))this._setBooleanOption("jpegOptimiseCoding",Q);if(f.defined(A.mozjpeg))if(f.bool(A.mozjpeg)){if(A.mozjpeg)this.options.jpegTrellisQuantisation=!0,this.options.jpegOvershootDeringing=!0,this.options.jpegOptimiseScans=!0,this.options.jpegProgressive=!0,this.options.jpegQuantisationTable=3}else throw f.invalidParameterError("mozjpeg","boolean",A.mozjpeg);let B=f.bool(A.trellisQuantization)?A.trellisQuantization:A.trellisQuantisation;if(f.defined(B))this._setBooleanOption("jpegTrellisQuantisation",B);if(f.defined(A.overshootDeringing))this._setBooleanOption("jpegOvershootDeringing",A.overshootDeringing);let Y=f.bool(A.optimizeScans)?A.optimizeScans:A.optimiseScans;if(f.defined(Y)){if(this._setBooleanOption("jpegOptimiseScans",Y),Y)this.options.jpegProgressive=!0}let J=f.number(A.quantizationTable)?A.quantizationTable:A.quantisationTable;if(f.defined(J))if(f.integer(J)&&f.inRange(J,0,8))this.options.jpegQuantisationTable=J;else throw f.invalidParameterError("quantisationTable","integer between 0 and 8",J)}return this._updateFormatOut("jpeg",A)}function yiQ(A){if(f.object(A)){if(f.defined(A.progressive))this._setBooleanOption("pngProgressive",A.progressive);if(f.defined(A.compressionLevel))if(f.integer(A.compressionLevel)&&f.inRange(A.compressionLevel,0,9))this.options.pngCompressionLevel=A.compressionLevel;else throw f.invalidParameterError("compressionLevel","integer between 0 and 9",A.compressionLevel);if(f.defined(A.adaptiveFiltering))this._setBooleanOption("pngAdaptiveFiltering",A.adaptiveFiltering);let Q=A.colours||A.colors;if(f.defined(Q))if(f.integer(Q)&&f.inRange(Q,2,256))this.options.pngBitdepth=m5A(Q);else throw f.invalidParameterError("colours","integer between 2 and 256",Q);if(f.defined(A.palette))this._setBooleanOption("pngPalette",A.palette);else if([A.quality,A.effort,A.colours,A.colors,A.dither].some(f.defined))this._setBooleanOption("pngPalette",!0);if(this.options.pngPalette){if(f.defined(A.quality))if(f.integer(A.quality)&&f.inRange(A.quality,0,100))this.options.pngQuality=A.quality;else throw f.invalidParameterError("quality","integer between 0 and 100",A.quality);if(f.defined(A.effort))if(f.integer(A.effort)&&f.inRange(A.effort,1,10))this.options.pngEffort=A.effort;else throw f.invalidParameterError("effort","integer between 1 and 10",A.effort);if(f.defined(A.dither))if(f.number(A.dither)&&f.inRange(A.dither,0,1))this.options.pngDither=A.dither;else throw f.invalidParameterError("dither","number between 0.0 and 1.0",A.dither)}}return this._updateFormatOut("png",A)}function giQ(A){if(f.object(A)){if(f.defined(A.quality))if(f.integer(A.quality)&&f.inRange(A.quality,1,100))this.options.webpQuality=A.quality;else throw f.invalidParameterError("quality","integer between 1 and 100",A.quality);if(f.defined(A.alphaQuality))if(f.integer(A.alphaQuality)&&f.inRange(A.alphaQuality,0,100))this.options.webpAlphaQuality=A.alphaQuality;else throw f.invalidParameterError("alphaQuality","integer between 0 and 100",A.alphaQuality);if(f.defined(A.lossless))this._setBooleanOption("webpLossless",A.lossless);if(f.defined(A.nearLossless))this._setBooleanOption("webpNearLossless",A.nearLossless);if(f.defined(A.smartSubsample))this._setBooleanOption("webpSmartSubsample",A.smartSubsample);if(f.defined(A.smartDeblock))this._setBooleanOption("webpSmartDeblock",A.smartDeblock);if(f.defined(A.preset))if(f.string(A.preset)&&f.inArray(A.preset,["default","photo","picture","drawing","icon","text"]))this.options.webpPreset=A.preset;else throw f.invalidParameterError("preset","one of: default, photo, picture, drawing, icon, text",A.preset);if(f.defined(A.effort))if(f.integer(A.effort)&&f.inRange(A.effort,0,6))this.options.webpEffort=A.effort;else throw f.invalidParameterError("effort","integer between 0 and 6",A.effort);if(f.defined(A.minSize))this._setBooleanOption("webpMinSize",A.minSize);if(f.defined(A.mixed))this._setBooleanOption("webpMixed",A.mixed)}return zh(A,this.options),this._updateFormatOut("webp",A)}function hiQ(A){if(f.object(A)){if(f.defined(A.reuse))this._setBooleanOption("gifReuse",A.reuse);if(f.defined(A.progressive))this._setBooleanOption("gifProgressive",A.progressive);let Q=A.colours||A.colors;if(f.defined(Q))if(f.integer(Q)&&f.inRange(Q,2,256))this.options.gifBitdepth=m5A(Q);else throw f.invalidParameterError("colours","integer between 2 and 256",Q);if(f.defined(A.effort))if(f.number(A.effort)&&f.inRange(A.effort,1,10))this.options.gifEffort=A.effort;else throw f.invalidParameterError("effort","integer between 1 and 10",A.effort);if(f.defined(A.dither))if(f.number(A.dither)&&f.inRange(A.dither,0,1))this.options.gifDither=A.dither;else throw f.invalidParameterError("dither","number between 0.0 and 1.0",A.dither);if(f.defined(A.interFrameMaxError))if(f.number(A.interFrameMaxError)&&f.inRange(A.interFrameMaxError,0,32))this.options.gifInterFrameMaxError=A.interFrameMaxError;else throw f.invalidParameterError("interFrameMaxError","number between 0.0 and 32.0",A.interFrameMaxError);if(f.defined(A.interPaletteMaxError))if(f.number(A.interPaletteMaxError)&&f.inRange(A.interPaletteMaxError,0,256))this.options.gifInterPaletteMaxError=A.interPaletteMaxError;else throw f.invalidParameterError("interPaletteMaxError","number between 0.0 and 256.0",A.interPaletteMaxError);if(f.defined(A.keepDuplicateFrames))if(f.bool(A.keepDuplicateFrames))this._setBooleanOption("gifKeepDuplicateFrames",A.keepDuplicateFrames);else throw f.invalidParameterError("keepDuplicateFrames","boolean",A.keepDuplicateFrames)}return zh(A,this.options),this._updateFormatOut("gif",A)}function xiQ(A){if(!this.constructor.format.jp2k.output.buffer)throw b5A();if(f.object(A)){if(f.defined(A.quality))if(f.integer(A.quality)&&f.inRange(A.quality,1,100))this.options.jp2Quality=A.quality;else throw f.invalidParameterError("quality","integer between 1 and 100",A.quality);if(f.defined(A.lossless))if(f.bool(A.lossless))this.options.jp2Lossless=A.lossless;else throw f.invalidParameterError("lossless","boolean",A.lossless);if(f.defined(A.tileWidth))if(f.integer(A.tileWidth)&&f.inRange(A.tileWidth,1,32768))this.options.jp2TileWidth=A.tileWidth;else throw f.invalidParameterError("tileWidth","integer between 1 and 32768",A.tileWidth);if(f.defined(A.tileHeight))if(f.integer(A.tileHeight)&&f.inRange(A.tileHeight,1,32768))this.options.jp2TileHeight=A.tileHeight;else throw f.invalidParameterError("tileHeight","integer between 1 and 32768",A.tileHeight);if(f.defined(A.chromaSubsampling))if(f.string(A.chromaSubsampling)&&f.inArray(A.chromaSubsampling,["4:2:0","4:4:4"]))this.options.jp2ChromaSubsampling=A.chromaSubsampling;else throw f.invalidParameterError("chromaSubsampling","one of: 4:2:0, 4:4:4",A.chromaSubsampling)}return this._updateFormatOut("jp2",A)}function zh(A,Q){if(f.object(A)&&f.defined(A.loop))if(f.integer(A.loop)&&f.inRange(A.loop,0,65535))Q.loop=A.loop;else throw f.invalidParameterError("loop","integer between 0 and 65535",A.loop);if(f.object(A)&&f.defined(A.delay))if(f.integer(A.delay)&&f.inRange(A.delay,0,65535))Q.delay=[A.delay];else if(Array.isArray(A.delay)&&A.delay.every(f.integer)&&A.delay.every((B)=>f.inRange(B,0,65535)))Q.delay=A.delay;else throw f.invalidParameterError("delay","integer or an array of integers between 0 and 65535",A.delay)}function fiQ(A){if(f.object(A)){if(f.defined(A.quality))if(f.integer(A.quality)&&f.inRange(A.quality,1,100))this.options.tiffQuality=A.quality;else throw f.invalidParameterError("quality","integer between 1 and 100",A.quality);if(f.defined(A.bitdepth))if(f.integer(A.bitdepth)&&f.inArray(A.bitdepth,[1,2,4,8]))this.options.tiffBitdepth=A.bitdepth;else throw f.invalidParameterError("bitdepth","1, 2, 4 or 8",A.bitdepth);if(f.defined(A.tile))this._setBooleanOption("tiffTile",A.tile);if(f.defined(A.tileWidth))if(f.integer(A.tileWidth)&&A.tileWidth>0)this.options.tiffTileWidth=A.tileWidth;else throw f.invalidParameterError("tileWidth","integer greater than zero",A.tileWidth);if(f.defined(A.tileHeight))if(f.integer(A.tileHeight)&&A.tileHeight>0)this.options.tiffTileHeight=A.tileHeight;else throw f.invalidParameterError("tileHeight","integer greater than zero",A.tileHeight);if(f.defined(A.miniswhite))this._setBooleanOption("tiffMiniswhite",A.miniswhite);if(f.defined(A.pyramid))this._setBooleanOption("tiffPyramid",A.pyramid);if(f.defined(A.xres))if(f.number(A.xres)&&A.xres>0)this.options.tiffXres=A.xres;else throw f.invalidParameterError("xres","number greater than zero",A.xres);if(f.defined(A.yres))if(f.number(A.yres)&&A.yres>0)this.options.tiffYres=A.yres;else throw f.invalidParameterError("yres","number greater than zero",A.yres);if(f.defined(A.compression))if(f.string(A.compression)&&f.inArray(A.compression,["none","jpeg","deflate","packbits","ccittfax4","lzw","webp","zstd","jp2k"]))this.options.tiffCompression=A.compression;else throw f.invalidParameterError("compression","one of: none, jpeg, deflate, packbits, ccittfax4, lzw, webp, zstd, jp2k",A.compression);if(f.defined(A.predictor))if(f.string(A.predictor)&&f.inArray(A.predictor,["none","horizontal","float"]))this.options.tiffPredictor=A.predictor;else throw f.invalidParameterError("predictor","one of: none, horizontal, float",A.predictor);if(f.defined(A.resolutionUnit))if(f.string(A.resolutionUnit)&&f.inArray(A.resolutionUnit,["inch","cm"]))this.options.tiffResolutionUnit=A.resolutionUnit;else throw f.invalidParameterError("resolutionUnit","one of: inch, cm",A.resolutionUnit)}return this._updateFormatOut("tiff",A)}function biQ(A){return this.heif({...A,compression:"av1"})}function miQ(A){if(f.object(A)){if(f.string(A.compression)&&f.inArray(A.compression,["av1","hevc"]))this.options.heifCompression=A.compression;else throw f.invalidParameterError("compression","one of: av1, hevc",A.compression);if(f.defined(A.quality))if(f.integer(A.quality)&&f.inRange(A.quality,1,100))this.options.heifQuality=A.quality;else throw f.invalidParameterError("quality","integer between 1 and 100",A.quality);if(f.defined(A.lossless))if(f.bool(A.lossless))this.options.heifLossless=A.lossless;else throw f.invalidParameterError("lossless","boolean",A.lossless);if(f.defined(A.effort))if(f.integer(A.effort)&&f.inRange(A.effort,0,9))this.options.heifEffort=A.effort;else throw f.invalidParameterError("effort","integer between 0 and 9",A.effort);if(f.defined(A.chromaSubsampling))if(f.string(A.chromaSubsampling)&&f.inArray(A.chromaSubsampling,["4:2:0","4:4:4"]))this.options.heifChromaSubsampling=A.chromaSubsampling;else throw f.invalidParameterError("chromaSubsampling","one of: 4:2:0, 4:4:4",A.chromaSubsampling);if(f.defined(A.bitdepth))if(f.integer(A.bitdepth)&&f.inArray(A.bitdepth,[8,10,12])){if(A.bitdepth!==8&&this.constructor.versions.heif)throw f.invalidParameterError("bitdepth when using prebuilt binaries",8,A.bitdepth);this.options.heifBitdepth=A.bitdepth}else throw f.invalidParameterError("bitdepth","8, 10 or 12",A.bitdepth)}else throw f.invalidParameterError("options","Object",A);return this._updateFormatOut("heif",A)}function uiQ(A){if(f.object(A)){if(f.defined(A.quality))if(f.integer(A.quality)&&f.inRange(A.quality,1,100))this.options.jxlDistance=A.quality>=30?0.1+(100-A.quality)*0.09:0.017666666666666667*A.quality*A.quality-1.15*A.quality+25;else throw f.invalidParameterError("quality","integer between 1 and 100",A.quality);else if(f.defined(A.distance))if(f.number(A.distance)&&f.inRange(A.distance,0,15))this.options.jxlDistance=A.distance;else throw f.invalidParameterError("distance","number between 0.0 and 15.0",A.distance);if(f.defined(A.decodingTier))if(f.integer(A.decodingTier)&&f.inRange(A.decodingTier,0,4))this.options.jxlDecodingTier=A.decodingTier;else throw f.invalidParameterError("decodingTier","integer between 0 and 4",A.decodingTier);if(f.defined(A.lossless))if(f.bool(A.lossless))this.options.jxlLossless=A.lossless;else throw f.invalidParameterError("lossless","boolean",A.lossless);if(f.defined(A.effort))if(f.integer(A.effort)&&f.inRange(A.effort,1,9))this.options.jxlEffort=A.effort;else throw f.invalidParameterError("effort","integer between 1 and 9",A.effort)}return zh(A,this.options),this._updateFormatOut("jxl",A)}function diQ(A){if(f.object(A)){if(f.defined(A.depth))if(f.string(A.depth)&&f.inArray(A.depth,["char","uchar","short","ushort","int","uint","float","complex","double","dpcomplex"]))this.options.rawDepth=A.depth;else throw f.invalidParameterError("depth","one of: char, uchar, short, ushort, int, uint, float, complex, double, dpcomplex",A.depth)}return this._updateFormatOut("raw")}function ciQ(A){if(f.object(A)){if(f.defined(A.size))if(f.integer(A.size)&&f.inRange(A.size,1,8192))this.options.tileSize=A.size;else throw f.invalidParameterError("size","integer between 1 and 8192",A.size);if(f.defined(A.overlap))if(f.integer(A.overlap)&&f.inRange(A.overlap,0,8192)){if(A.overlap>this.options.tileSize)throw f.invalidParameterError("overlap",`<= size (${this.options.tileSize})`,A.overlap);this.options.tileOverlap=A.overlap}else throw f.invalidParameterError("overlap","integer between 0 and 8192",A.overlap);if(f.defined(A.container))if(f.string(A.container)&&f.inArray(A.container,["fs","zip"]))this.options.tileContainer=A.container;else throw f.invalidParameterError("container","one of: fs, zip",A.container);if(f.defined(A.layout))if(f.string(A.layout)&&f.inArray(A.layout,["dz","google","iiif","iiif3","zoomify"]))this.options.tileLayout=A.layout;else throw f.invalidParameterError("layout","one of: dz, google, iiif, iiif3, zoomify",A.layout);if(f.defined(A.angle))if(f.integer(A.angle)&&!(A.angle%90))this.options.tileAngle=A.angle;else throw f.invalidParameterError("angle","positive/negative multiple of 90",A.angle);if(this._setBackgroundColourOption("tileBackground",A.background),f.defined(A.depth))if(f.string(A.depth)&&f.inArray(A.depth,["onepixel","onetile","one"]))this.options.tileDepth=A.depth;else throw f.invalidParameterError("depth","one of: onepixel, onetile, one",A.depth);if(f.defined(A.skipBlanks))if(f.integer(A.skipBlanks)&&f.inRange(A.skipBlanks,-1,65535))this.options.tileSkipBlanks=A.skipBlanks;else throw f.invalidParameterError("skipBlanks","integer between -1 and 255/65535",A.skipBlanks);else if(f.defined(A.layout)&&A.layout==="google")this.options.tileSkipBlanks=5;let Q=f.bool(A.center)?A.center:A.centre;if(f.defined(Q))this._setBooleanOption("tileCentre",Q);if(f.defined(A.id))if(f.string(A.id))this.options.tileId=A.id;else throw f.invalidParameterError("id","string",A.id);if(f.defined(A.basename))if(f.string(A.basename))this.options.tileBasename=A.basename;else throw f.invalidParameterError("basename","string",A.basename)}if(f.inArray(this.options.formatOut,["jpeg","png","webp"]))this.options.tileFormat=this.options.formatOut;else if(this.options.formatOut!=="input")throw f.invalidParameterError("format","one of: jpeg, png, webp",this.options.formatOut);return this._updateFormatOut("dz")}function liQ(A){if(!f.plainObject(A))throw f.invalidParameterError("options","object",A);if(f.integer(A.seconds)&&f.inRange(A.seconds,0,3600))this.options.timeoutSeconds=A.seconds;else throw f.invalidParameterError("seconds","integer between 0 and 3600",A.seconds);return this}function piQ(A,Q){if(!(f.object(Q)&&Q.force===!1))this.options.formatOut=A;return this}function iiQ(A,Q){if(f.bool(Q))this.options[A]=Q;else throw f.invalidParameterError(A,"boolean",Q)}function niQ(){if(!this.options.streamOut){this.options.streamOut=!0;let A=Error();this._pipeline(void 0,A)}}function siQ(A,Q){if(typeof A==="function"){if(this._isStreamInput())this.on("finish",()=>{this._flattenBufferIn(),JU.pipeline(this.options,(B,Y,J)=>{if(B)A(f.nativeError(B,Q));else A(null,Y,J)})});else JU.pipeline(this.options,(B,Y,J)=>{if(B)A(f.nativeError(B,Q));else A(null,Y,J)});return this}else if(this.options.streamOut){if(this._isStreamInput()){if(this.once("finish",()=>{this._flattenBufferIn(),JU.pipeline(this.options,(B,Y,J)=>{if(B)this.emit("error",f.nativeError(B,Q));else this.emit("info",J),this.push(Y);this.push(null),this.on("end",()=>this.emit("close"))})}),this.streamInFinished)this.emit("finish")}else JU.pipeline(this.options,(B,Y,J)=>{if(B)this.emit("error",f.nativeError(B,Q));else this.emit("info",J),this.push(Y);this.push(null),this.on("end",()=>this.emit("close"))});return this}else if(this._isStreamInput())return new Promise((B,Y)=>{this.once("finish",()=>{this._flattenBufferIn(),JU.pipeline(this.options,(J,C,X)=>{if(J)Y(f.nativeError(J,Q));else if(this.options.resolveWithObject)B({data:C,info:X});else B(C)})})});else return new Promise((B,Y)=>{JU.pipeline(this.options,(J,C,X)=>{if(J)Y(f.nativeError(J,Q));else if(this.options.resolveWithObject)B({data:C,info:X});else B(C)})})}u5A.exports=function(A){Object.assign(A.prototype,{toFile:qiQ,toBuffer:MiQ,keepExif:ziQ,withExif:RiQ,withExifMerge:wiQ,keepIccProfile:jiQ,withIccProfile:OiQ,keepXmp:PiQ,withXmp:TiQ,keepMetadata:SiQ,withMetadata:kiQ,toFormat:_iQ,jpeg:viQ,jp2:xiQ,png:yiQ,webp:giQ,tiff:fiQ,avif:biQ,heif:miQ,jxl:uiQ,gif:hiQ,raw:diQ,tile:ciQ,timeout:liQ,_updateFormatOut:piQ,_setBooleanOption:iiQ,_read:niQ,_pipeline:siQ})}});var i5A=R((p6Y,p5A)=>{var riQ=u("node:events"),P3=AH(),E5=g1(),{runtimePlatformArch:aiQ}=$h(),A9=XH(),c5A=aiQ(),Rh=A9.libvipsVersion(),$7=A9.format();$7.heif.output.alias=["avif","heic"];$7.jpeg.output.alias=["jpe","jpg"];$7.tiff.output.alias=["tif"];$7.jp2k.output.alias=["j2c","j2k","jp2","jpx"];var oiQ={nearest:"nearest",bilinear:"bilinear",bicubic:"bicubic",locallyBoundedBicubic:"lbb",nohalo:"nohalo",vertexSplitQuadraticBasisSpline:"vsqbs"},CU={vips:Rh.semver};if(!Rh.isGlobal)if(!Rh.isWasm)try{CU=u(`@img/sharp-${c5A}/versions`)}catch(A){try{CU=u(`@img/sharp-libvips-${c5A}/versions`)}catch(Q){}}else try{CU=(()=>{throw new Error("Cannot require module "+"@img/sharp-wasm32/versions");})()}catch(A){}CU.sharp=Fh().version;if(CU.heif&&$7.heif)$7.heif.input.fileSuffix=[".avif"],$7.heif.output.alias=["avif"];function l5A(A){if(E5.bool(A))if(A)return A9.cache(50,20,100);else return A9.cache(0,0,0);else if(E5.object(A))return A9.cache(A.memory,A.files,A.items);else return A9.cache()}l5A(!0);function tiQ(A){return A9.concurrency(E5.integer(A)?A:null)}if(P3.familySync()===P3.GLIBC&&!A9._isUsingJemalloc())A9.concurrency(1);else if(P3.familySync()===P3.MUSL&&A9.concurrency()===1024)A9.concurrency(u("node:os").availableParallelism());var eiQ=new riQ.EventEmitter;function AnQ(){return A9.counters()}function QnQ(A){return A9.simd(E5.bool(A)?A:null)}function BnQ(A){if(E5.object(A))if(Array.isArray(A.operation)&&A.operation.every(E5.string))A9.block(A.operation,!0);else throw E5.invalidParameterError("operation","Array",A.operation);else throw E5.invalidParameterError("options","object",A)}function YnQ(A){if(E5.object(A))if(Array.isArray(A.operation)&&A.operation.every(E5.string))A9.block(A.operation,!1);else throw E5.invalidParameterError("operation","Array",A.operation);else throw E5.invalidParameterError("options","object",A)}p5A.exports=function(A){A.cache=l5A,A.concurrency=tiQ,A.counters=AnQ,A.simd=QnQ,A.format=$7,A.interpolators=oiQ,A.versions=CU,A.queue=eiQ,A.block=BnQ,A.unblock=YnQ}});var s5A=R((n6Y,n5A)=>{var M6=a8A();e8A()(M6);C5A()(M6);G5A()(M6);U5A()(M6);g5A()(M6);x5A()(M6);d5A()(M6);i5A()(M6);n5A.exports=M6});var a5A=R((s6Y,r5A)=>{function JnQ(A,Q){var B=1,Y=A.length,J=A[0],C=A[0];for(var X=1;X{var GnQ=a5A();function o5A(A,Q,B){var Y=A.length,J=Q.arrayArgs.length,C=Q.indexArgs.length>0,X=[],G=[],W=0,F=0,Z,U;for(Z=0;Z0)X.push("var "+G.join(","));for(Z=Y-1;Z>=0;--Z)W=A[Z],X.push(["for(i",Z,"=0;i",Z,"0)X.push(["index[",F,"]-=s",F].join(""));X.push(["++index[",W,"]"].join(""))}X.push("}")}return X.join(` +`)}function WnQ(A,Q,B,Y){var J=Q.length,C=B.arrayArgs.length,X=B.blockSize,G=B.indexArgs.length>0,W=[];for(var F=0;F0;){"].join("")),W.push(["if(j",F,"<",X,"){"].join("")),W.push(["s",Q[F],"=j",F].join("")),W.push(["j",F,"=0"].join("")),W.push(["}else{s",Q[F],"=",X].join("")),W.push(["j",F,"-=",X,"}"].join("")),G)W.push(["index[",Q[F],"]=j",F].join(""));for(var F=0;F0)B=B&&Q[Y]===Q[Y-1]}if(B)return Q[0];return Q.join("")}function ZiQ(A,Q){var B=Q[1].length-Math.abs(A.arrayBlockIndices[0])|0,Y=Array(A.arrayArgs.length),J=Array(A.arrayArgs.length);for(var C=0;C0)I.push("shape=SS.slice(0)");if(A.indexArgs.length>0){var V=Array(B);for(var C=0;C0)K.push("var "+I.join(","));for(var C=0;C3)K.push(ah(A.pre,A,J));var z=ah(A.body,A,J),M=FiQ(Z);if(M3)K.push(ah(A.post,A,J));if(A.debug)console.log("-----Generated cwise routine for ",Q,`: +`).trim()}function ZnQ(A){var Q=Array(A.length),B=!0;for(var Y=0;Y0)B=B&&Q[Y]===Q[Y-1]}if(B)return Q[0];return Q.join("")}function $nQ(A,Q){var B=Q[1].length-Math.abs(A.arrayBlockIndices[0])|0,Y=Array(A.arrayArgs.length),J=Array(A.arrayArgs.length);for(var C=0;C0)I.push("shape=SS.slice(0)");if(A.indexArgs.length>0){var V=Array(B);for(var C=0;C0)K.push("var "+I.join(","));for(var C=0;C3)K.push(wh(A.pre,A,J));var z=wh(A.body,A,J),M=FnQ(Z);if(M3)K.push(wh(A.post,A,J));if(A.debug)console.log("-----Generated cwise routine for ",Q,`: `+K.join(` `)+` -----------`);var N=[A.funcName||"unnamed","_cwise_loop_",Y[0].join("s"),"m",M,WiQ(J)].join(""),q=Function(["function ",N,"(",E.join(","),"){",K.join(` -`),"} return ",N].join(""));return q()}$5A.exports=ZiQ});var K5A=R((Y6Y,E5A)=>{var $iQ=U5A();function UiQ(A){var Q=["'use strict'","var CACHED={}"],B=[],Y=A.funcName+"_cwise_thunk";Q.push(["return function ",Y,"(",A.shimArgs.join(","),"){"].join(""));var J=[],C=[],X=[["array",A.arrayArgs[0],".shape.slice(",Math.max(0,A.arrayBlockIndices[0]),A.arrayBlockIndices[0]<0?","+A.arrayBlockIndices[0]+")":")"].join("")],G=[],F=[];for(var W=0;W0)G.push("array"+A.arrayArgs[0]+".shape.length===array"+Z+".shape.length+"+(Math.abs(A.arrayBlockIndices[0])-Math.abs(A.arrayBlockIndices[W]))),F.push("array"+A.arrayArgs[0]+".shape[shapeIndex+"+Math.max(0,A.arrayBlockIndices[0])+"]===array"+Z+".shape[shapeIndex+"+Math.max(0,A.arrayBlockIndices[W])+"]")}if(A.arrayArgs.length>1)Q.push("if (!("+G.join(" && ")+")) throw new Error('cwise: Arrays do not all have the same dimensionality!')"),Q.push("for(var shapeIndex=array"+A.arrayArgs[0]+".shape.length-"+Math.abs(A.arrayBlockIndices[0])+"; shapeIndex-->0;) {"),Q.push("if (!("+F.join(" && ")+")) throw new Error('cwise: Arrays do not all have the same shape!')"),Q.push("}");for(var W=0;W{var UnQ=e5A();function EnQ(A){var Q=["'use strict'","var CACHED={}"],B=[],Y=A.funcName+"_cwise_thunk";Q.push(["return function ",Y,"(",A.shimArgs.join(","),"){"].join(""));var J=[],C=[],X=[["array",A.arrayArgs[0],".shape.slice(",Math.max(0,A.arrayBlockIndices[0]),A.arrayBlockIndices[0]<0?","+A.arrayBlockIndices[0]+")":")"].join("")],G=[],W=[];for(var F=0;F0)G.push("array"+A.arrayArgs[0]+".shape.length===array"+Z+".shape.length+"+(Math.abs(A.arrayBlockIndices[0])-Math.abs(A.arrayBlockIndices[F]))),W.push("array"+A.arrayArgs[0]+".shape[shapeIndex+"+Math.max(0,A.arrayBlockIndices[0])+"]===array"+Z+".shape[shapeIndex+"+Math.max(0,A.arrayBlockIndices[F])+"]")}if(A.arrayArgs.length>1)Q.push("if (!("+G.join(" && ")+")) throw new Error('cwise: Arrays do not all have the same dimensionality!')"),Q.push("for(var shapeIndex=array"+A.arrayArgs[0]+".shape.length-"+Math.abs(A.arrayBlockIndices[0])+"; shapeIndex-->0;) {"),Q.push("if (!("+W.join(" && ")+")) throw new Error('cwise: Arrays do not all have the same shape!')"),Q.push("}");for(var F=0;F{var EiQ=K5A();function KiQ(){this.argTypes=[],this.shimArgs=[],this.arrayArgs=[],this.arrayBlockIndices=[],this.scalarArgs=[],this.offsetArgs=[],this.offsetArgIndex=[],this.indexArgs=[],this.shapeArgs=[],this.funcName="",this.pre=null,this.body=null,this.post=null,this.debug=!1}function ViQ(A){var Q=new KiQ;Q.pre=A.pre,Q.body=A.body,Q.post=A.post;var B=A.args.slice(0);Q.argTypes=B;for(var Y=0;Y0)throw Error("cwise: pre() block may not reference array args");if(Y0)throw Error("cwise: post() block may not reference array args")}else if(J==="scalar")Q.scalarArgs.push(Y),Q.shimArgs.push("scalar"+Y);else if(J==="index"){if(Q.indexArgs.push(Y),Y0)throw Error("cwise: pre() block may not reference array index");if(Y0)throw Error("cwise: post() block may not reference array index")}else if(J==="shape"){if(Q.shapeArgs.push(Y),YB.length)throw Error("cwise: Too many arguments in pre() block");if(Q.body.args.length>B.length)throw Error("cwise: Too many arguments in body() block");if(Q.post.args.length>B.length)throw Error("cwise: Too many arguments in post() block");return Q.debug=!!A.printCode||!!A.debug,Q.funcName=A.funcName||"cwise",Q.blockSize=A.blockSize||64,EiQ(Q)}V5A.exports=ViQ});var z5A=R((JY)=>{var O9=I5A(),X3={body:"",args:[],thisVars:[],localVars:[]};function oh(A){if(!A)return X3;for(var Q=0;Q>",rrshift:">>>"};(function(){for(var A in H5A){var Q=H5A[A];JY[A]=P0({args:["array","array","array"],body:{args:["a","b","c"],body:"a=b"+Q+"c"},funcName:A}),JY[A+"eq"]=P0({args:["array","array"],body:{args:["a","b"],body:"a"+Q+"=b"},rvalue:!0,funcName:A+"eq"}),JY[A+"s"]=P0({args:["array","array","scalar"],body:{args:["a","b","s"],body:"a=b"+Q+"s"},funcName:A+"s"}),JY[A+"seq"]=P0({args:["array","scalar"],body:{args:["a","s"],body:"a"+Q+"=s"},rvalue:!0,funcName:A+"seq"})}})();var D5A={not:"!",bnot:"~",neg:"-",recip:"1.0/"};(function(){for(var A in D5A){var Q=D5A[A];JY[A]=P0({args:["array","array"],body:{args:["a","b"],body:"a="+Q+"b"},funcName:A}),JY[A+"eq"]=P0({args:["array"],body:{args:["a"],body:"a="+Q+"a"},rvalue:!0,count:2,funcName:A+"eq"})}})();var N5A={and:"&&",or:"||",eq:"===",neq:"!==",lt:"<",gt:">",leq:"<=",geq:">="};(function(){for(var A in N5A){var Q=N5A[A];JY[A]=P0({args:["array","array","array"],body:{args:["a","b","c"],body:"a=b"+Q+"c"},funcName:A}),JY[A+"s"]=P0({args:["array","array","scalar"],body:{args:["a","b","s"],body:"a=b"+Q+"s"},funcName:A+"s"}),JY[A+"eq"]=P0({args:["array","array"],body:{args:["a","b"],body:"a=a"+Q+"b"},rvalue:!0,count:2,funcName:A+"eq"}),JY[A+"seq"]=P0({args:["array","scalar"],body:{args:["a","s"],body:"a=a"+Q+"s"},rvalue:!0,count:2,funcName:A+"seq"})}})();var L5A=["abs","acos","asin","atan","ceil","cos","exp","floor","log","round","sin","sqrt","tan"];(function(){for(var A=0;Athis_s){this_s=-a}else if(a>this_s){this_s=a}",localVars:[],thisVars:["this_s"]},post:{args:[],localVars:[],thisVars:["this_s"],body:"return this_s"},funcName:"norminf"});JY.norm1=O9({args:["array"],pre:{args:[],localVars:[],thisVars:["this_s"],body:"this_s=0"},body:{args:[{name:"a",lvalue:!1,rvalue:!0,count:3}],body:"this_s+=a<0?-a:a",localVars:[],thisVars:["this_s"]},post:{args:[],localVars:[],thisVars:["this_s"],body:"return this_s"},funcName:"norm1"});JY.sup=O9({args:["array"],pre:{body:"this_h=-Infinity",args:[],thisVars:["this_h"],localVars:[]},body:{body:"if(_inline_1_arg0_>this_h)this_h=_inline_1_arg0_",args:[{name:"_inline_1_arg0_",lvalue:!1,rvalue:!0,count:2}],thisVars:["this_h"],localVars:[]},post:{body:"return this_h",args:[],thisVars:["this_h"],localVars:[]}});JY.inf=O9({args:["array"],pre:{body:"this_h=Infinity",args:[],thisVars:["this_h"],localVars:[]},body:{body:"if(_inline_1_arg0_this_v){this_v=_inline_1_arg1_;for(var _inline_1_k=0;_inline_1_k<_inline_1_arg0_.length;++_inline_1_k){this_i[_inline_1_k]=_inline_1_arg0_[_inline_1_k]}}}",args:[{name:"_inline_1_arg0_",lvalue:!1,rvalue:!0,count:2},{name:"_inline_1_arg1_",lvalue:!1,rvalue:!0,count:2}],thisVars:["this_i","this_v"],localVars:["_inline_1_k"]},post:{body:"{return this_i}",args:[],thisVars:["this_i"],localVars:[]}});JY.random=P0({args:["array"],pre:{args:[],body:"this_f=Math.random",thisVars:["this_f"]},body:{args:["a"],body:"a=this_f()",thisVars:["this_f"]},funcName:"random"});JY.assign=P0({args:["array","array"],body:{args:["a","b"],body:"a=b"},funcName:"assign"});JY.assigns=P0({args:["array","scalar"],body:{args:["a","b"],body:"a=b"},funcName:"assigns"});JY.equals=O9({args:["array","array"],pre:X3,body:{args:[{name:"x",lvalue:!1,rvalue:!0,count:1},{name:"y",lvalue:!1,rvalue:!0,count:1}],body:"if(x!==y){return false}",localVars:[],thisVars:[]},post:{args:[],localVars:[],thisVars:[],body:"return true"},funcName:"equals"})});var HCA=R((QH,Eg)=>{var D3=function(){var A="b9H79Tebbbe9ok9Geueu9Geub9Gbb9Gruuuuuuueu9Gvuuuuueu9Gduueu9Gluuuueu9Gvuuuuub9Gouuuuuub9Gluuuub9Giuuueui8AYdilveoveovrrwrrDDoDrbqqbelve9Weiiviebeoweuec;G:Qdkr:nlAo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bb8F9TW79O9V9Wt9FW9U9J9V9KW9wWVtW949c919M9MWV9mW4W2be8A9TW79O9V9Wt9FW9U9J9V9KW9wWVtW949c919M9MWVbd8F9TW79O9V9Wt9FW9U9J9V9KW9wWVtW949c919M9MWV9c9V919U9KbiE9TW79O9V9Wt9FW9U9J9V9KW9wWVtW949wWV79P9V9UblY9TW79O9V9Wt9FW9U9J9V9KW69U9KW949c919M9MWVbv8E9TW79O9V9Wt9FW9U9J9V9KW69U9KW949c919M9MWV9c9V919U9Kbo8A9TW79O9V9Wt9FW9U9J9V9KW69U9KW949wWV79P9V9UbrE9TW79O9V9Wt9FW9U9J9V9KW69U9KW949tWG91W9U9JWbwa9TW79O9V9Wt9FW9U9J9V9KW69U9KW949tWG91W9U9JW9c9V919U9KbDL9TW79O9V9Wt9FW9U9J9V9KWS9P2tWV9p9JtbqK9TW79O9V9Wt9FW9U9J9V9KWS9P2tWV9r919HtbkL9TW79O9V9Wt9FW9U9J9V9KWS9P2tWVT949WbxE9TW79O9V9Wt9F9V9Wt9P9T9P96W9wWVtW94J9H9J9OWbsa9TW79O9V9Wt9F9V9Wt9P9T9P96W9wWVtW94J9H9J9OW9ttV9P9Wbza9TW79O9V9Wt9F9V9Wt9P9T9P96W9wWVtW94SWt9J9O9sW9T9H9WbHK9TW79O9V9Wt9F79W9Ht9P9H29t9VVt9sW9T9H9WbOl79IV9RbCDwebcekdKLqN9OYdbk:Bhdhud9:8Jjjjjbc;qw9Rgr8KjjjjbcbhwdnaeTmbabcbyd;C:kjjbaoaocb9iEgDc:GeV86bbarc;adfcbcjdz:wjjjb8AdnaiTmbarc;adfadalz:vjjjb8Akarc;abfalfcbcbcjdal9RalcFe0Ez:wjjjb8Aarc;abfarc;adfalz:vjjjb8AarcUf9cb83ibarc8Wf9cb83ibarcyf9cb83ibarcaf9cb83ibarcKf9cb83ibarczf9cb83ibar9cb83iwar9cb83ibcj;abal9Uc;WFbGcjdalca0Ehqdnaicd6mbavcd9imbaDTmbadcefhkaqci2gxal2hmarc;alfclfhParc;qlfceVhsarc;qofclVhzarc;qofcKfhHarc;qofczfhOcbhAincdhCcbhodnavci6mbaH9cb83ibaO9cb83ibar9cb83i;yoar9cb83i;qoadaAfgoybbhXcbhQincbhwcbhLdninaoalfhKaoybbgYaX7aLVhLawcP0meaKhoaYhXawcefgwaQfai6mbkkcbhXarc;qofhwincwh8AcwhEdnaLaX93gocFeGg3cs0mbclhEa3ci0mba3cb9hcethEkdnaocw4cFeGg3cs0mbclh8Aa3ci0mba3cb9hceth8Aka8AaEfh3awydbh5cwh8AcwhEdnaocz4cFeGg8Ecs0mbclhEa8Eci0mba8Ecb9hcethEka3a5fh3dnaocFFFFb0mbclh8AaocFFF8F0mbaocFFFr0ceth8Akawa3aEfa8AfBdbawclfhwaXcefgXcw9hmbkaKhoaYhXaQczfgQai6mbkcbhocehwazhLinawaoaLydbarc;qofaocdtfydb6EhoaLclfhLawcefgwcw9hmbkcihCkcbh3arc;qlfcbcjdz:wjjjb8Aarc;alfcwfcbBdbar9cb83i;alaoclth8Fadhaaqhhakh5inarc;qlfadcba3cufgoaoa30Eal2falz:vjjjb8Aaiahaiah6Ehgdnaqaia39Ra3aqfai6EgYcsfc9WGgoaY9nmbarc;qofaYfcbaoaY9Rz:wjjjb8Akada3al2fh8Jcbh8Kina8Ka8FVcl4hQarc;alfa8Kcdtfh8LaAh8Mcbh8Nina8NaAfhwdndndndndndna8KPldebidkasa8Mc98GgLfhoa5aLfh8Aarc;qlfawc98GgLfRbbhXcwhwinaoRbbawtaXVhXaocefhoawcwfgwca9hmbkaYTmla8Ncith8Ea8JaLfhEcbhKinaERbbhLcwhoa8AhwinawRbbaotaLVhLawcefhwaocwfgoca9hmbkarc;qofaKfaLaX7aQ93a8E486bba8Aalfh8AaEalfhEaLhXaKcefgKaY9hmbxlkkaYTmia8Mc9:Ghoa8NcitcwGhEarc;qlfawceVfRbbcwtarc;qlfawc9:GfRbbVhLarc;qofhwaghXinawa5aofRbbcwtaaaofRbbVg8AaL9RgLcetaLcztcz91cs47cFFiGaE486bbaoalfhoawcefhwa8AhLa3aXcufgX9hmbxikkaYTmda8Jawfhoarc;qlfawfRbbhLarc;qofhwaghXinawaoRbbg8AaL9RgLcetaLcKtcK91cr4786bbawcefhwaoalfhoa8AhLa3aXcufgX9hmbxdkkaYTmeka8LydbhEcbhKarc;qofhoincdhLcbhwinaLaoawfRbbcb9hfhLawcefgwcz9hmbkclhXcbhwinaXaoawfRbbcd0fhXawcefgwcz9hmbkcwh8Acbhwina8AaoawfRbbcP0fh8Aawcefgwcz9hmbkaLaXaLaX6Egwa8Aawa8A6Egwczawcz6EaEfhEaoczfhoaKczfgKaY6mbka8LaEBdbka8Mcefh8Ma8Ncefg8Ncl9hmbka8Kcefg8KaC9hmbkaaamfhaahaxfhha5amfh5a3axfg3ai6mbkcbhocehwaPhLinawaoaLydbarc;alfaocdtfydb6EhoaLclfhLawcefgXhwaCaX9hmbkaraAcd4fa8FcdVaoaocdSE86bbaAclfgAal6mbkkabaefh8Kabcefhoalcd4gecbaDEhkadcefhOarc;abfceVhHcbhmdndninaiam9nmearc;qofcbcjdz:wjjjb8Aa8Kao9Rak6mdadamal2gwfhxcbh8JaOawfhzaocbakz:wjjjbghakfh5aqaiam9Ramaqfai6Egscsfgocl4cifcd4hCaoc9WGg8LThPindndndndndndndndndndnaDTmbara8Jcd4fRbbgLciGPlbedlbkasTmdaxa8Jfhoarc;abfa8JfRbbhLarc;qofhwashXinawaoRbbg8AaL9RgLcetaLcKtcK91cr4786bbawcefhwaoalfhoa8AhLaXcufgXmbxikkasTmia8JcitcwGhEarc;abfa8JceVfRbbcwtarc;abfa8Jc9:GgofRbbVhLaxaofhoarc;qofhwashXinawao8Vbbg8AaL9RgLcetaLcztcz91cs47cFFiGaE486bbawcefhwaoalfhoa8AhLaXcufgXmbxdkkaHa8Jc98GgEfhoazaEfh8Aarc;abfaEfRbbhXcwhwinaoRbbawtaXVhXaocefhoawcwfgwca9hmbkasTmbaLcl4hYa8JcitcKGh3axaEfhEcbhKinaERbbhLcwhoa8AhwinawRbbaotaLVhLawcefhwaocwfgoca9hmbkarc;qofaKfaLaX7aY93a3486bba8Aalfh8AaEalfhEaLhXaKcefgKas9hmbkkaDmbcbhoxlka8LTmbcbhodninarc;qofaofgwcwf8Pibaw8Pib:e9qTmeaoczfgoa8L9pmdxbkkdnavmbcehoxikcbhEaChKaChYinarc;qofaEfgocwf8Pibhyao8Pibh8PcdhLcbhwinaLaoawfRbbcb9hfhLawcefgwcz9hmbkclhXcbhwinaXaoawfRbbcd0fhXawcefgwcz9hmbkcwh8Acbhwina8AaoawfRbbcP0fh8Aawcefgwcz9hmbkaLaXaLaX6Egoa8Aaoa8A6Egoczaocz6EaYfhYaocucbaya8P:e9cb9sEgwaoaw6EaKfhKaEczfgEa8L9pmdxbkkaha8Jcd4fgoaoRbbcda8JcetcoGtV86bbxikdnaKas6mbaYas6mbaha8Jcd4fgoaoRbbcia8JcetcoGtV86bba8Ka59Ras6mra5arc;qofasz:vjjjbasfh5xikaKaY9phokaha8Jcd4fgwawRbbaoa8JcetcoGtV86bbka8Ka59RaC6mla5cbaCz:wjjjbgAaCfhYdndna8LmbaPhoxekdna8KaY9RcK9pmbaPhoxekaocdtc:q1jjbfcj1jjbaDEg5ydxggcetc;:FFFeGh8Fcuh3cuagtcu7cFeGhacbh8Marc;qofhLinarc;qofa8MfhQczhEdndndnagPDbeeeeeeedekcucbaQcwf8PibaQ8Pib:e9cb9sEhExekcbhoa8FhEinaEaaaLaofRbb9nfhEaocefgocz9hmbkkcih8Ecbh8Ainczhwdndndna5a8AcdtfydbgKPDbeeeeeeedekcucbaQcwf8PibaQ8Pib:e9cb9sEhwxekaKcetc;:FFFeGhwcuaKtcu7cFeGhXcbhoinawaXaLaofRbb9nfhwaocefgocz9hmbkkdndnawaE6mbaKa39hmeawaE9hmea5a8EcdtfydbcwSmeka8Ah8EawhEka8Acefg8Aci9hmbkaAa8Mco4fgoaoRbba8Ea8Mci4coGtV86bbdndndna5a8Ecdtfydbg3PDdbbbbbbbebkdncwa39Tg8ETmbcua3tcu7hwdndna3ceSmbcbh8NaLhQinaQhoa8Eh8AcbhXinaoRbbgEawcFeGgKaEaK6EaXa3tVhXaocefhoa8Acufg8AmbkaYaX86bbaQa8EfhQaYcefhYa8Na8Efg8Ncz6mbxdkkcbh8NaLhQinaQhoa8Eh8AcbhXinaoRbbgEawcFeGgKaEaK6EaXcetVhXaocefhoa8Acufg8AmbkaYaX:T9cFe:d9c:c:qj:bw9:9c:q;c1:I1e:d9c:b:c:e1z9:9ca188bbaQa8EfhQaYcefhYa8Na8Efg8Ncz6mbkkcbhoinaYaLaofRbbgX86bbaYaXawcFeG9pfhYaocefgocz9hmbxikkdna3ceSmbinaYcb86bbaYcefhYxbkkinaYcb86bbaYcefhYxbkkaYaQ8Pbb83bbaYcwfaQcwf8Pbb83bbaYczfhYka8Mczfg8Ma8L9pgomeaLczfhLa8KaY9RcK9pmbkkaoTmlaYh5aYTmlka8Jcefg8Jal9hmbkarc;abfaxascufal2falz:vjjjb8Aasamfhma5hoa5mbkcbhwxdkdna8Kao9RakalfgwcKcaaDEgLawaL0EgX9pmbcbhwxdkdnawaL9pmbaocbaXaw9Rgwz:wjjjbawfhokaoarc;adfalz:vjjjbalfhodnaDTmbaoaraez:vjjjbaefhokaoab9Rhwxekcbhwkarc;qwf8Kjjjjbawk5babaeadaialcdcbyd;C:kjjbz:bjjjbk9reduaecd4gdaefgicaaica0Eabcj;abae9Uc;WFbGcjdaeca0Egifcufai9Uae2aiadfaicl4cifcd4f2fcefkmbcbabBd;C:kjjbk:Ese5u8Jjjjjbc;ae9Rgl8Kjjjjbcbhvdnaici9UgocHfae0mbabcbyd;m:kjjbgrc;GeV86bbalc;abfcFecjez:wjjjb8AalcUfgw9cu83ibalc8WfgD9cu83ibalcyfgq9cu83ibalcafgk9cu83ibalcKfgx9cu83ibalczfgm9cu83ibal9cu83iwal9cu83ibabaefc9WfhPabcefgsaofhednaiTmbcmcsarcb9kgzEhHcbhOcbhAcbhCcbhXcbhQindnaeaP9nmbcbhvxikaQcufhvadaCcdtfgLydbhKaLcwfydbhYaLclfydbh8AcbhEdndndninalc;abfavcsGcitfgoydlh3dndndnaoydbgoaK9hmba3a8ASmekdnaoa8A9hmba3aY9hmbaEcefhExekaoaY9hmea3aK9hmeaEcdfhEkaEc870mdaXcufhvaLaEciGcx2goc;i1jjbfydbcdtfydbh3aLaoc;e1jjbfydbcdtfydbh8AaLaoc;a1jjbfydbcdtfydbhKcbhodnindnalavcsGcdtfydba39hmbaohYxdkcuhYavcufhvaocefgocz9hmbkkaOa3aOSgvaYce9iaYaH9oVgoGfhOdndndncbcsavEaYaoEgvcs9hmbarce9imba3a3aAa3cefaASgvEgAcefSmecmcsavEhvkasavaEcdtc;WeGV86bbavcs9hmea3aA9Rgvcetavc8F917hvinaeavcFb0crtavcFbGV86bbaecefheavcje6hoavcr4hvaoTmbka3hAxvkcPhvasaEcdtcPV86bba3hAkavTmiavaH9omicdhocehEaQhYxlkavcufhvaEclfgEc;ab9hmbkkdnaLceaYaOSceta8AaOSEcx2gvc;a1jjbfydbcdtfydbgKTaLavc;e1jjbfydbcdtfydbg8AceSGaLavc;i1jjbfydbcdtfydbg3cdSGaOcb9hGazGg5ce9hmbaw9cu83ibaD9cu83ibaq9cu83ibak9cu83ibax9cu83ibam9cu83ibal9cu83iwal9cu83ibcbhOkcbhEaXcufgvhodnindnalaocsGcdtfydba8A9hmbaEhYxdkcuhYaocufhoaEcefgEcz9hmbkkcbhodnindnalavcsGcdtfydba39hmbaohExdkcuhEavcufhvaocefgocz9hmbkkaOaKaOSg8EfhLdndnaYcm0mbaYcefhYxekcbcsa8AaLSgvEhYaLavfhLkdndnaEcm0mbaEcefhExekcbcsa3aLSgvEhEaLavfhLkc9:cua8EEh8FcbhvaEaYcltVgacFeGhodndndninavc:W1jjbfRbbaoSmeavcefgvcz9hmbxdkka5aKaO9havcm0VVmbasavc;WeV86bbxekasa8F86bbaeaa86bbaecefhekdna8EmbaKaA9Rgvcetavc8F917hvinaeavcFb0gocrtavcFbGV86bbavcr4hvaecefheaombkaKhAkdnaYcs9hmba8AaA9Rgvcetavc8F917hvinaeavcFb0gocrtavcFbGV86bbavcr4hvaecefheaombka8AhAkdnaEcs9hmba3aA9Rgvcetavc8F917hvinaeavcFb0gocrtavcFbGV86bbavcr4hvaecefheaombka3hAkalaXcdtfaKBdbaXcefcsGhvdndnaYPzbeeeeeeeeeeeeeebekalavcdtfa8ABdbaXcdfcsGhvkdndnaEPzbeeeeeeeeeeeeeebekalavcdtfa3BdbavcefcsGhvkcihoalc;abfaQcitfgEaKBdlaEa8ABdbaQcefcsGhYcdhEavhXaLhOxekcdhoalaXcdtfa3BdbcehEaXcefcsGhXaQhYkalc;abfaYcitfgva8ABdlava3Bdbalc;abfaQaEfcsGcitfgva3BdlavaKBdbascefhsaQaofcsGhQaCcifgCai6mbkkdnaeaP9nmbcbhvxekcbhvinaeavfavc:W1jjbfRbb86bbavcefgvcz9hmbkaeab9Ravfhvkalc;aef8KjjjjbavkZeeucbhddninadcefgdc8F0meceadtae6mbkkadcrfcFeGcr9Uci2cdfabci9U2cHfkmbcbabBd;m:kjjbk:Adewu8Jjjjjbcz9Rhlcbhvdnaicvfae0mbcbhvabcbRb;m:kjjbc;qeV86bbal9cb83iwabcefhoabaefc98fhrdnaiTmbcbhwcbhDindnaoar6mbcbskadaDcdtfydbgqalcwfawaqav9Rgvavc8F91gv7av9Rc507gwcdtfgkydb9Rgvc8E91c9:Gavcdt7awVhvinaoavcFb0gecrtavcFbGV86bbavcr4hvaocefhoaembkakaqBdbaqhvaDcefgDai9hmbkkdnaoar9nmbcbskaocbBbbaoab9RclfhvkavkBeeucbhddninadcefgdc8F0meceadtae6mbkkadcwfcFeGcr9Uab2cvfk:bvli99dui99ludnaeTmbcuadcetcuftcu7:Zhvdndncuaicuftcu7:ZgoJbbbZMgr:lJbbb9p9DTmbar:Ohwxekcjjjj94hwkcbhicbhDinalclfIdbgrJbbbbJbbjZalIdbgq:lar:lMalcwfIdbgk:lMgr:varJbbbb9BEgrNhxaqarNhrdndnakJbbbb9GTmbaxhqxekJbbjZar:l:tgqaq:maxJbbbb9GEhqJbbjZax:l:tgxax:marJbbbb9GEhrkdndnalcxfIdbgxJbbj:;axJbbj:;9GEgkJbbjZakJbbjZ9FEavNJbbbZJbbb:;axJbbbb9GEMgx:lJbbb9p9DTmbax:Ohmxekcjjjj94hmkdndnaqJbbj:;aqJbbj:;9GEgxJbbjZaxJbbjZ9FEaoNJbbbZJbbb:;aqJbbbb9GEMgq:lJbbb9p9DTmbaq:OhPxekcjjjj94hPkdndnarJbbj:;arJbbj:;9GEgqJbbjZaqJbbjZ9FEaoNJbbbZJbbb:;arJbbbb9GEMgr:lJbbb9p9DTmbar:Ohsxekcjjjj94hskdndnadcl9hmbabaifgzas86bbazcifam86bbazcdfaw86bbazcefaP86bbxekabaDfgzas87ebazcofam87ebazclfaw87ebazcdfaP87ebkalczfhlaiclfhiaDcwfhDaecufgembkkk;hlld99eud99eudnaeTmbdndncuaicuftcu7:ZgvJbbbZMgo:lJbbb9p9DTmbao:Ohixekcjjjj94hikaic;8FiGhrinabcofcicdalclfIdb:lalIdb:l9EgialcwfIdb:lalaicdtfIdb:l9EEgialcxfIdb:lalaicdtfIdb:l9EEgiarV87ebdndnJbbj:;JbbjZalaicdtfIdbJbbbb9DEgoalaicd7cdtfIdbJ;Zl:1ZNNgwJbbj:;awJbbj:;9GEgDJbbjZaDJbbjZ9FEavNJbbbZJbbb:;awJbbbb9GEMgw:lJbbb9p9DTmbaw:Ohqxekcjjjj94hqkabcdfaq87ebdndnalaicefciGcdtfIdbJ;Zl:1ZNaoNgwJbbj:;awJbbj:;9GEgDJbbjZaDJbbjZ9FEavNJbbbZJbbb:;awJbbbb9GEMgw:lJbbb9p9DTmbaw:Ohqxekcjjjj94hqkabaq87ebdndnaoalaicufciGcdtfIdbJ;Zl:1ZNNgoJbbj:;aoJbbj:;9GEgwJbbjZawJbbjZ9FEavNJbbbZJbbb:;aoJbbbb9GEMgo:lJbbb9p9DTmbao:Ohixekcjjjj94hikabclfai87ebabcwfhbalczfhlaecufgembkkk;3viDue99eu8Jjjjjbcjd9Rgo8Kjjjjbadcd4hrdndndndnavcd9hmbadcl6meaohwarhDinawc:CuBdbawclfhwaDcufgDmbkaeTmiadcl6mdarcdthqalhkcbhxinaohwakhDarhminawawydbgPcbaDIdbgs:8cL4cFeGc:cufasJbbbb9BEgzaPaz9kEBdbaDclfhDawclfhwamcufgmmbkakaqfhkaxcefgxaeSmixbkkaeTmdxekaeTmekarcdthkavce9hhqadcl6hdcbhxindndndnaqmbadmdc:CuhDalhwarhminaDcbawIdbgs:8cL4cFeGc:cufasJbbbb9BEgPaDaP9kEhDawclfhwamcufgmmbxdkkc:CuhDdndnavPleddbdkadmdaohwalhmarhPinawcbamIdbgs:8cL4cFeGgzc;:bazc;:b0Ec:cufasJbbbb9BEBdbamclfhmawclfhwaPcufgPmbxdkkadmecbhwarhminaoawfcbalawfIdbgs:8cL4cFeGgPc8AaPc8A0Ec:cufasJbbbb9BEBdbawclfhwamcufgmmbkkadmbcbhwarhPinaDhmdnavceSmbaoawfydbhmkdndnalawfIdbgscjjj;8iamai9RcefgmcLt9R::NJbbbZJbbb:;asJbbbb9GEMgs:lJbbb9p9DTmbas:Ohzxekcjjjj94hzkabawfazcFFFrGamcKtVBdbawclfhwaPcufgPmbkkabakfhbalakfhlaxcefgxae9hmbkkaocjdf8Kjjjjbk;YqdXui998Jjjjjbc:qd9Rgv8Kjjjjbavc:Sefcbc;Kbz:wjjjb8AcbhodnadTmbcbhoaiTmbdndnabaeSmbaehrxekavcuadcdtgwadcFFFFi0Ecbyd;u:kjjbHjjjjbbgrBd:SeavceBd:mdaraeawz:vjjjb8Akavc:GefcwfcbBdbav9cb83i:Geavc:Gefaradaiavc:Sefz:ojjjbavyd:GehDadci9Ugqcbyd;u:kjjbHjjjjbbheavc:Sefavyd:mdgkcdtfaeBdbavakcefgwBd:mdaecbaqz:wjjjbhxavc:SefawcdtfcuaicdtaicFFFFi0Ecbyd;u:kjjbHjjjjbbgmBdbavakcdfgPBd:mdalc;ebfhsaDheamhwinawalIdbasaeydbgzcwazcw6EcdtfIdbMUdbaeclfheawclfhwaicufgimbkavc:SefaPcdtfcuaqcdtadcFFFF970Ecbyd;u:kjjbHjjjjbbgPBdbdnadci6mbarheaPhwaqhiinawamaeydbcdtfIdbamaeclfydbcdtfIdbMamaecwfydbcdtfIdbMUdbaecxfheawclfhwaicufgimbkkakcifhoalc;ebfhHavc;qbfhOavheavyd:KehAavyd:OehCcbhzcbhwcbhXcehQinaehLcihkarawci2gKcdtfgeydbhsaeclfydbhdabaXcx2fgicwfaecwfydbgYBdbaiclfadBdbaiasBdbaxawfce86bbaOaYBdwaOadBdlaOasBdbaPawcdtfcbBdbdnazTmbcihkaLhiinaOakcdtfaiydbgeBdbakaeaY9haeas9haead9hGGfhkaiclfhiazcufgzmbkkaXcefhXcbhzinaCaAarazaKfcdtfydbcdtgifydbcdtfgYheaDaifgdydbgshidnasTmbdninaeydbawSmeaeclfheaicufgiTmdxbkkaeaYascdtfc98fydbBdbadadydbcufBdbkazcefgzci9hmbkdndnakTmbcuhwJbbbbh8Acbhdavyd:KehYavyd:OehKindndnaDaOadcdtfydbcdtgzfydbgembadcefhdxekadcs0hiamazfgsIdbhEasalcbadcefgdaiEcdtfIdbaHaecwaecw6EcdtfIdbMg3Udba3aE:th3aecdthiaKaYazfydbcdtfheinaPaeydbgzcdtfgsa3asIdbMgEUdbaEa8Aa8AaE9DgsEh8AazawasEhwaeclfheaic98fgimbkkadak9hmbkawcu9hmekaQaq9pmdindnaxaQfRbbmbaQhwxdkaqaQcefgQ9hmbxikkakczakcz6EhzaOheaLhOawcu9hmbkkaocdtavc:Seffc98fhedninaoTmeaeydbcbyd;q:kjjbH:bjjjbbaec98fheaocufhoxbkkavc:qdf8Kjjjjbk;IlevucuaicdtgvaicFFFFi0Egocbyd;u:kjjbHjjjjbbhralalyd9GgwcdtfarBdbalawcefBd9GabarBdbaocbyd;u:kjjbHjjjjbbhralalyd9GgocdtfarBdbalaocefBd9GabarBdlcuadcdtadcFFFFi0Ecbyd;u:kjjbHjjjjbbhralalyd9GgocdtfarBdbalaocefBd9GabarBdwabydbcbavz:wjjjb8Aadci9UhDdnadTmbabydbhoaehladhrinaoalydbcdtfgvavydbcefBdbalclfhlarcufgrmbkkdnaiTmbabydbhlabydlhrcbhvaihoinaravBdbarclfhralydbavfhvalclfhlaocufgombkkdnadci6mbabydlhrabydwhvcbhlinaecwfydbhoaeclfydbhdaraeydbcdtfgwawydbgwcefBdbavawcdtfalBdbaradcdtfgdadydbgdcefBdbavadcdtfalBdbaraocdtfgoaoydbgocefBdbavaocdtfalBdbaecxfheaDalcefgl9hmbkkdnaiTmbabydlheabydbhlinaeaeydbalydb9RBdbalclfhlaeclfheaicufgimbkkkQbabaeadaic;K1jjbz:njjjbkQbabaeadaic;m:jjjbz:njjjbk9DeeuabcFeaicdtz:wjjjbhlcbhbdnadTmbindnalaeydbcdtfgiydbcu9hmbaiabBdbabcefhbkaeclfheadcufgdmbkkabk:Vvioud9:du8Jjjjjbc;Wa9Rgl8Kjjjjbcbhvalcxfcbc;Kbz:wjjjb8AalcuadcitgoadcFFFFe0Ecbyd;u:kjjbHjjjjbbgrBdxalceBd2araeadaicez:tjjjbalcuaoadcjjjjoGEcbyd;u:kjjbHjjjjbbgwBdzadcdthednadTmbabhiinaiavBdbaiclfhiadavcefgv9hmbkkawaefhDalabBdwalawBdl9cbhqindnadTmbaq9cq9:hkarhvaDhiadheinaiav8Pibak1:NcFrG87ebavcwfhvaicdfhiaecufgembkkalclfaq:NceGcdtfydbhxalclfaq9ce98gq:NceGcdtfydbhmalc;Wbfcbcjaz:wjjjb8AaDhvadhidnadTmbinalc;Wbfav8VebcdtfgeaeydbcefBdbavcdfhvaicufgimbkkcbhvcbhiinalc;WbfavfgeydbhoaeaiBdbaoaifhiavclfgvcja9hmbkadhvdndnadTmbinalc;WbfaDamydbgicetf8VebcdtfgeaeydbgecefBdbaxaecdtfaiBdbamclfhmavcufgvmbkaq9cv9smdcbhvinabawydbcdtfavBdbawclfhwadavcefgv9hmbxdkkaq9cv9smekkclhvdninavc98Smealcxfavfydbcbyd;q:kjjbH:bjjjbbavc98fhvxbkkalc;Waf8Kjjjjbk:Jwliuo99iud9:cbhv8Jjjjjbca9Rgoczfcwfcbyd:8:kjjbBdbaocb8Pd:0:kjjb83izaocwfcbyd;i:kjjbBdbaocb8Pd;a:kjjb83ibaicd4hrdndnadmbJFFuFhwJFFuuhDJFFuuhqJFFuFhkJFFuuhxJFFuFhmxekarcdthPaehsincbhiinaoczfaifgzasaifIdbgwazIdbgDaDaw9EEUdbaoaifgzawazIdbgDaDaw9DEUdbaiclfgicx9hmbkasaPfhsavcefgvad9hmbkaoIdKhDaoIdwhwaoIdChqaoIdlhkaoIdzhxaoIdbhmkdnadTmbJbbbbJbFu9hJbbbbamax:tgmamJbbbb9DEgmakaq:tgkakam9DEgkawaD:tgwawak9DEgw:vawJbbbb9BEhwdnalmbarcdthoindndnaeclfIdbaq:tawNJbbbZMgk:lJbbb9p9DTmbak:Ohixekcjjjj94hikai:S9cC:ghHdndnaeIdbax:tawNJbbbZMgk:lJbbb9p9DTmbak:Ohixekcjjjj94hikaHai:S:ehHdndnaecwfIdbaD:tawNJbbbZMgk:lJbbb9p9DTmbak:Ohixekcjjjj94hikabaHai:T9cy:g:e83ibaeaofheabcwfhbadcufgdmbxdkkarcdthoindndnaeIdbax:tawNJbbbZMgk:lJbbb9p9DTmbak:Ohixekcjjjj94hikai:SgH9ca:gaH9cz:g9cjjj;4s:d:eaH9cFe:d:e9cF:bj;4:pj;ar:d9c:bd9:9c:p;G:d;4j:E;ar:d9cH9:9c;d;H:W:y:m:g;d;Hb:d9cv9:9c;j:KM;j:KM;j:Kd:dhOdndnaeclfIdbaq:tawNJbbbZMgk:lJbbb9p9DTmbak:Ohixekcjjjj94hikai:SgH9ca:gaH9cz:g9cjjj;4s:d:eaH9cFe:d:e9cF:bj;4:pj;ar:d9c:bd9:9c:p;G:d;4j:E;ar:d9cH9:9c;d;H:W:y:m:g;d;Hb:d9cq9:9cM;j:KM;j:KM;jl:daO:ehOdndnaecwfIdbaD:tawNJbbbZMgk:lJbbb9p9DTmbak:Ohixekcjjjj94hikabaOai:SgH9ca:gaH9cz:g9cjjj;4s:d:eaH9cFe:d:e9cF:bj;4:pj;ar:d9c:bd9:9c:p;G:d;4j:E;ar:d9cH9:9c;d;H:W:y:m:g;d;Hb:d9cC9:9c:KM;j:KM;j:KMD:d:e83ibaeaofheabcwfhbadcufgdmbkkk9teiucbcbyd;y:kjjbgeabcifc98GfgbBd;y:kjjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik;teeeudndnaeabVciGTmbabhixekdndnadcz9pmbabhixekabhiinaiaeydbBdbaiaeydlBdlaiaeydwBdwaiaeydxBdxaeczfheaiczfhiadc9Wfgdcs0mbkkadcl6mbinaiaeydbBdbaeclfheaiclfhiadc98fgdci0mbkkdnadTmbinaiaeRbb86bbaicefhiaecefheadcufgdmbkkabk:3eedudndnabciGTmbabhixekaecFeGc:b:c:ew2hldndnadcz9pmbabhixekabhiinaialBdxaialBdwaialBdlaialBdbaiczfhiadc9Wfgdcs0mbkkadcl6mbinaialBdbaiclfhiadc98fgdci0mbkkdnadTmbinaiae86bbaicefhiadcufgdmbkkabk9teiucbcbyd;y:kjjbgeabcrfc94GfgbBd;y:kjjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik9:eiuZbhedndncbyd;y:kjjbgdaecztgi9nmbcuheadai9RcFFifcz4nbcuSmekadhekcbabae9Rcifc98Gcbyd;y:kjjbfgdBd;y:kjjbdnadZbcztge9nmbadae9RcFFifcz4nb8Akkk;Qddbcjwk;mdbbbbdbbblbbbwbbbbbbbebbbdbbblbbbwbbbbbbbbbbbbbbbb4:h9w9N94:P:gW:j9O:ye9Pbbbbbbebbbdbbbebbbdbbbbbbbdbbbbbbbebbbbbbb:l29hZ;69:9kZ;N;76Z;rg97Z;z;o9xZ8J;B85Z;:;u9yZ;b;k9HZ:2;Z9DZ9e:l9mZ59A8KZ:r;T3Z:A:zYZ79OHZ;j4::8::Y:D9V8:bbbb9s:49:Z8R:hBZ9M9M;M8:L;z;o8:;8:PG89q;x:J878R:hQ8::M:B;e87bbbbbbjZbbjZbbjZ:E;V;N8::Y:DsZ9i;H;68:xd;R8:;h0838:;W:NoZbbbb:WV9O8:uf888:9i;H;68:9c9G;L89;n;m9m89;D8Ko8:bbbbf:8tZ9m836ZS:2AZL;zPZZ818EZ9e:lxZ;U98F8:819E;68:FFuuFFuuFFuuFFuFFFuFFFuFbc;mqkzebbbebbbdbbb9G:vbb",Q=new Uint8Array([32,0,65,2,1,106,34,33,3,128,11,4,13,64,6,253,10,7,15,116,127,5,8,12,40,16,19,54,20,9,27,255,113,17,42,67,24,23,146,148,18,14,22,45,70,69,56,114,101,21,25,63,75,136,108,28,118,29,73,115]);if(typeof WebAssembly!=="object")return{supported:!1};var B,Y=WebAssembly.instantiate(J(A),{}).then(function(E){B=E.instance,B.exports.__wasm_call_ctors(),B.exports.meshopt_encodeVertexVersion(0),B.exports.meshopt_encodeIndexVersion(1)});function J(E){var K=new Uint8Array(E.length);for(var I=0;I96?V-97:V>64?V-39:V+4}var H=0;for(var I=0;I=3),F(B.exports.meshopt_spatialSortRemap,E,E.length/K,K*4)},encodeVertexBuffer:function(E,K,I){C(I>0&&I<=256),C(I%4==0);var V=B.exports.meshopt_encodeVertexBufferBound(K,I);return W(B.exports.meshopt_encodeVertexBuffer,V,E,K,I)},encodeIndexBuffer:function(E,K,I){C(I==2||I==4),C(K%3==0);var V=U(E,I),H=B.exports.meshopt_encodeIndexBufferBound(K,Z(V)+1);return W(B.exports.meshopt_encodeIndexBuffer,H,V,K,4)},encodeIndexSequence:function(E,K,I){C(I==2||I==4);var V=U(E,I),H=B.exports.meshopt_encodeIndexSequenceBound(K,Z(V)+1);return W(B.exports.meshopt_encodeIndexSequence,H,V,K,4)},encodeGltfBuffer:function(E,K,I,V){var H={ATTRIBUTES:this.encodeVertexBuffer,TRIANGLES:this.encodeIndexBuffer,INDICES:this.encodeIndexSequence};return C(H[V]),H[V](E,K,I)},encodeFilterOct:function(E,K,I,V){return C(I==4||I==8),C(V>=1&&V<=16),$(B.exports.meshopt_encodeFilterOct,E,K,I,V,16)},encodeFilterQuat:function(E,K,I,V){return C(I==8),C(V>=4&&V<=16),$(B.exports.meshopt_encodeFilterQuat,E,K,I,V,16)},encodeFilterExp:function(E,K,I,V,H){C(I>0&&I%4==0),C(V>=1&&V<=24);var D={Separate:0,SharedVector:1,SharedComponent:2,Clamped:3};return $(B.exports.meshopt_encodeFilterExp,E,K,I,V,I,H?D[H]:1)}}}();if(typeof QH==="object"&&typeof Eg==="object")Eg.exports=D3;else if(typeof define==="function"&&define.amd)define([],function(){return D3});else if(typeof QH==="object")QH.MeshoptEncoder=D3;else(typeof self<"u"?self:QH).MeshoptEncoder=D3});var DCA=R((BH,Kg)=>{var N3=function(){var A="b9H79Tebbbe8Fv9Gbb9Gvuuuuueu9Giuuub9Geueu9Giuuueuikqbeeedddillviebeoweuec:W:Odkr;leDo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bb8A9TW79O9V9Wt9F9KW9J9V9KW9wWVtW949c919M9MWVbeY9TW79O9V9Wt9F9KW9J9V9KW69U9KW949c919M9MWVbdE9TW79O9V9Wt9F9KW9J9V9KW69U9KW949tWG91W9U9JWbiL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9p9JtblK9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9r919HtbvL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWVT949Wbol79IV9Rbrq:S86qdbk;jYi5ud9:du8Jjjjjbcj;kb9Rgv8Kjjjjbc9:hodnalTmbcuhoaiRbbgrc;WeGc:Ge9hmbarcsGgwce0mbc9:hoalcufadcd4cbawEgDadfgrcKcaawEgqaraq0Egk6mbaicefhxcj;abad9Uc;WFbGcjdadca0EhmaialfgPar9Rgoadfhsavaoadz1jjjbgzceVhHcbhOdndninaeaO9nmeaPax9RaD6mdamaeaO9RaOamfgoae6EgAcsfglc9WGhCabaOad2fhXaAcethQaxaDfhiaOaeaoaeao6E9RhLalcl4cifcd4hKazcj;cbfaAfhYcbh8AazcjdfhEaHh3incbhodnawTmbaxa8Acd4fRbbhokaocFeGh5cbh8Eazcj;cbfhqinaih8Fdndndndna5a8Ecet4ciGgoc9:fPdebdkaPa8F9RaA6mrazcj;cbfa8EaA2fa8FaAz1jjjb8Aa8FaAfhixdkazcj;cbfa8EaA2fcbaAz:jjjjb8Aa8FhixekaPa8F9RaK6mva8FaKfhidnaCTmbaPai9RcK6mbaocdtc:q1jjbfcj1jjbawEhaczhrcbhlinargoc9Wfghaqfhrdndndndndndnaaa8Fahco4fRbbalcoG4ciGcdtfydbPDbedvivvvlvkar9cb83bbarcwf9cb83bbxlkarcbaiRbdai8Xbb9c:c:qj:bw9:9c:q;c1:I1e:d9c:b:c:e1z9:gg9cjjjjjz:dg8J9qE86bbaqaofgrcGfag9c8F1:NghcKtc8F91aicdfa8J9c8N1:Nfg8KRbbG86bbarcVfcba8KahcjeGcr4fghRbbag9cjjjjjl:dg8J9qE86bbarc7fcbaha8J9c8L1:NfghRbbag9cjjjjjd:dg8J9qE86bbarctfcbaha8J9c8K1:NfghRbbag9cjjjjje:dg8J9qE86bbarc91fcbaha8J9c8J1:NfghRbbag9cjjjj;ab:dg8J9qE86bbarc4fcbaha8J9cg1:NfghRbbag9cjjjja:dg8J9qE86bbarc93fcbaha8J9ch1:NfghRbbag9cjjjjz:dgg9qE86bbarc94fcbahag9ca1:NfghRbbai8Xbe9c:c:qj:bw9:9c:q;c1:I1e:d9c:b:c:e1z9:gg9cjjjjjz:dg8J9qE86bbarc95fag9c8F1:NgicKtc8F91aha8J9c8N1:NfghRbbG86bbarc96fcbahaicjeGcr4fgiRbbag9cjjjjjl:dg8J9qE86bbarc97fcbaia8J9c8L1:NfgiRbbag9cjjjjjd:dg8J9qE86bbarc98fcbaia8J9c8K1:NfgiRbbag9cjjjjje:dg8J9qE86bbarc99fcbaia8J9c8J1:NfgiRbbag9cjjjj;ab:dg8J9qE86bbarc9:fcbaia8J9cg1:NfgiRbbag9cjjjja:dg8J9qE86bbarcufcbaia8J9ch1:NfgiRbbag9cjjjjz:dgg9qE86bbaiag9ca1:NfhixikaraiRblaiRbbghco4g8Ka8KciSg8KE86bbaqaofgrcGfaiclfa8Kfg8KRbbahcl4ciGg8La8LciSg8LE86bbarcVfa8Ka8Lfg8KRbbahcd4ciGg8La8LciSg8LE86bbarc7fa8Ka8Lfg8KRbbahciGghahciSghE86bbarctfa8Kahfg8KRbbaiRbeghco4g8La8LciSg8LE86bbarc91fa8Ka8Lfg8KRbbahcl4ciGg8La8LciSg8LE86bbarc4fa8Ka8Lfg8KRbbahcd4ciGg8La8LciSg8LE86bbarc93fa8Ka8Lfg8KRbbahciGghahciSghE86bbarc94fa8Kahfg8KRbbaiRbdghco4g8La8LciSg8LE86bbarc95fa8Ka8Lfg8KRbbahcl4ciGg8La8LciSg8LE86bbarc96fa8Ka8Lfg8KRbbahcd4ciGg8La8LciSg8LE86bbarc97fa8Ka8Lfg8KRbbahciGghahciSghE86bbarc98fa8KahfghRbbaiRbigico4g8Ka8KciSg8KE86bbarc99faha8KfghRbbaicl4ciGg8Ka8KciSg8KE86bbarc9:faha8KfghRbbaicd4ciGg8Ka8KciSg8KE86bbarcufaha8KfgrRbbaiciGgiaiciSgiE86bbaraifhixdkaraiRbwaiRbbghcl4g8Ka8KcsSg8KE86bbaqaofgrcGfaicwfa8Kfg8KRbbahcsGghahcsSghE86bbarcVfa8KahfghRbbaiRbeg8Kcl4g8La8LcsSg8LE86bbarc7faha8LfghRbba8KcsGg8Ka8KcsSg8KE86bbarctfaha8KfghRbbaiRbdg8Kcl4g8La8LcsSg8LE86bbarc91faha8LfghRbba8KcsGg8Ka8KcsSg8KE86bbarc4faha8KfghRbbaiRbig8Kcl4g8La8LcsSg8LE86bbarc93faha8LfghRbba8KcsGg8Ka8KcsSg8KE86bbarc94faha8KfghRbbaiRblg8Kcl4g8La8LcsSg8LE86bbarc95faha8LfghRbba8KcsGg8Ka8KcsSg8KE86bbarc96faha8KfghRbbaiRbvg8Kcl4g8La8LcsSg8LE86bbarc97faha8LfghRbba8KcsGg8Ka8KcsSg8KE86bbarc98faha8KfghRbbaiRbog8Kcl4g8La8LcsSg8LE86bbarc99faha8LfghRbba8KcsGg8Ka8KcsSg8KE86bbarc9:faha8KfghRbbaiRbrgicl4g8Ka8KcsSg8KE86bbarcufaha8KfgrRbbaicsGgiaicsSgiE86bbaraifhixekarai8Pbb83bbarcwfaicwf8Pbb83bbaiczfhikdnaoaC9pmbalcdfhlaoczfhraPai9RcL0mekkaoaC6moaimexokaCmva8FTmvkaqaAfhqa8Ecefg8Ecl9hmbkdndndndnawTmbasa8Acd4fRbbgociGPlbedrbkaATmdaza8Afh8Fazcj;cbfhhcbh8EaEhaina8FRbbhraahocbhlinaoahalfRbbgqce4cbaqceG9R7arfgr86bbaoadfhoaAalcefgl9hmbkaacefhaa8Fcefh8FahaAfhha8Ecefg8Ecl9hmbxikkaATmeaza8Afhaazcj;cbfhhcbhoceh8EaYh8FinaEaofhlaa8Vbbhrcbhoinala8FaofRbbcwtahaofRbbgqVc;:FiGce4cbaqceG9R7arfgr87bbaladfhlaLaocefgofmbka8FaQfh8FcdhoaacdfhaahaQfhha8EceGhlcbh8EalmbxdkkaATmbcbaocl49Rh8Eaza8AfRbbhqcwhoa3hlinalRbbaotaqVhqalcefhlaocwfgoca9hmbkcbhhaEh8FaYhainazcj;cbfahfRbbhrcwhoaahlinalRbbaotarVhralaAfhlaocwfgoca9hmbkara8E93aq7hqcbhoa8Fhlinalaqao486bbalcefhlaocwfgoca9hmbka8Fadfh8FaacefhaahcefghaA9hmbkkaEclfhEa3clfh3a8Aclfg8Aad6mbkaXazcjdfaAad2z1jjjb8AazazcjdfaAcufad2fadz1jjjb8AaAaOfhOaihxaimbkc9:hoxdkcbc99aPax9RakSEhoxekc9:hokavcj;kbf8Kjjjjbaok:XseHu8Jjjjjbc;ae9Rgv8Kjjjjbc9:hodnaeci9UgrcHfal0mbcuhoaiRbbgwc;WeGc;Ge9hmbawcsGgDce0mbavc;abfcFecjez:jjjjb8AavcUf9cu83ibavc8Wf9cu83ibavcyf9cu83ibavcaf9cu83ibavcKf9cu83ibavczf9cu83ibav9cu83iwav9cu83ibaialfc9WfhqaicefgwarfhldnaeTmbcmcsaDceSEhkcbhxcbhmcbhrcbhicbhoindnalaq9nmbc9:hoxikdndnawRbbgDc;Ve0mbavc;abfaoaDcu7gPcl4fcsGcitfgsydlhzasydbhHdndnaDcsGgsak9pmbavaiaPfcsGcdtfydbaxasEhDaxasTgOfhxxekdndnascsSmbcehOasc987asamffcefhDxekalcefhDal8SbbgscFeGhPdndnascu9mmbaDhlxekalcvfhlaPcFbGhPcrhsdninaD8SbbgOcFbGastaPVhPaOcu9kmeaDcefhDascrfgsc8J9hmbxdkkaDcefhlkcehOaPce4cbaPceG9R7amfhDkaDhmkavc;abfaocitfgsaDBdbasazBdlavaicdtfaDBdbavc;abfaocefcsGcitfgsaHBdbasaDBdlaocdfhoaOaifhidnadcd9hmbabarcetfgsaH87ebasclfaD87ebascdfaz87ebxdkabarcdtfgsaHBdbascwfaDBdbasclfazBdbxekdnaDcpe0mbaxcefgOavaiaqaDcsGfRbbgscl49RcsGcdtfydbascz6gPEhDavaias9RcsGcdtfydbaOaPfgzascsGgOEhsaOThOdndnadcd9hmbabarcetfgHax87ebaHclfas87ebaHcdfaD87ebxekabarcdtfgHaxBdbaHcwfasBdbaHclfaDBdbkavaicdtfaxBdbavc;abfaocitfgHaDBdbaHaxBdlavaicefgicsGcdtfaDBdbavc;abfaocefcsGcitfgHasBdbaHaDBdlavaiaPfgicsGcdtfasBdbavc;abfaocdfcsGcitfgDaxBdbaDasBdlaocifhoaiaOfhiazaOfhxxekaxcbalRbbgHEgAaDc;:eSgDfhzaHcsGhCaHcl4hXdndnaHcs0mbazcefhOxekazhOavaiaX9RcsGcdtfydbhzkdndnaCmbaOcefhxxekaOhxavaiaH9RcsGcdtfydbhOkdndnaDTmbalcefhDxekalcdfhDal8SbegPcFeGhsdnaPcu9kmbalcofhAascFbGhscrhldninaD8SbbgPcFbGaltasVhsaPcu9kmeaDcefhDalcrfglc8J9hmbkaAhDxekaDcefhDkasce4cbasceG9R7amfgmhAkdndnaXcsSmbaDhsxekaDcefhsaD8SbbglcFeGhPdnalcu9kmbaDcvfhzaPcFbGhPcrhldninas8SbbgDcFbGaltaPVhPaDcu9kmeascefhsalcrfglc8J9hmbkazhsxekascefhskaPce4cbaPceG9R7amfgmhzkdndnaCcsSmbashlxekascefhlas8SbbgDcFeGhPdnaDcu9kmbascvfhOaPcFbGhPcrhDdninal8SbbgscFbGaDtaPVhPascu9kmealcefhlaDcrfgDc8J9hmbkaOhlxekalcefhlkaPce4cbaPceG9R7amfgmhOkdndnadcd9hmbabarcetfgDaA87ebaDclfaO87ebaDcdfaz87ebxekabarcdtfgDaABdbaDcwfaOBdbaDclfazBdbkavc;abfaocitfgDazBdbaDaABdlavaicdtfaABdbavc;abfaocefcsGcitfgDaOBdbaDazBdlavaicefgicsGcdtfazBdbavc;abfaocdfcsGcitfgDaABdbaDaOBdlavaiaHcz6aXcsSVfgicsGcdtfaOBdbaiaCTaCcsSVfhiaocifhokawcefhwaocsGhoaicsGhiarcifgrae6mbkkcbc99alaqSEhokavc;aef8Kjjjjbaok:clevu8Jjjjjbcz9Rhvdnaecvfal9nmbc9:skdnaiRbbc;:eGc;qeSmbcuskav9cb83iwaicefhoaialfc98fhrdnaeTmbdnadcdSmbcbhwindnaoar6mbc9:skaocefhlao8SbbgicFeGhddndnaicu9mmbalhoxekaocvfhoadcFbGhdcrhidninal8SbbgDcFbGaitadVhdaDcu9kmealcefhlaicrfgic8J9hmbxdkkalcefhokabawcdtfadc8Etc8F91adcd47avcwfadceGcdtVglydbfgiBdbalaiBdbawcefgwae9hmbxdkkcbhwindnaoar6mbc9:skaocefhlao8SbbgicFeGhddndnaicu9mmbalhoxekaocvfhoadcFbGhdcrhidninal8SbbgDcFbGaitadVhdaDcu9kmealcefhlaicrfgic8J9hmbxdkkalcefhokabawcetfadc8Etc8F91adcd47avcwfadceGcdtVglydbfgi87ebalaiBdbawcefgwae9hmbkkcbc99aoarSEk:Lvoeue99dud99eud99dndnadcl9hmbaeTmeindndnabcdfgd8Sbb:Yab8Sbbgi:Ygl:l:tabcefgv8Sbbgo:Ygr:l:tgwJbb;:9cawawNJbbbbawawJbbbb9GgDEgq:mgkaqaicb9iEalMgwawNakaqaocb9iEarMgqaqNMM:r:vglNJbbbZJbbb:;aDEMgr:lJbbb9p9DTmbar:Ohixekcjjjj94hikadai86bbdndnaqalNJbbbZJbbb:;aqJbbbb9GEMgq:lJbbb9p9DTmbaq:Ohdxekcjjjj94hdkavad86bbdndnawalNJbbbZJbbb:;awJbbbb9GEMgw:lJbbb9p9DTmbaw:Ohdxekcjjjj94hdkabad86bbabclfhbaecufgembxdkkaeTmbindndnabclfgd8Ueb:Yab8Uebgi:Ygl:l:tabcdfgv8Uebgo:Ygr:l:tgwJb;:FSawawNJbbbbawawJbbbb9GgDEgq:mgkaqaicb9iEalMgwawNakaqaocb9iEarMgqaqNMM:r:vglNJbbbZJbbb:;aDEMgr:lJbbb9p9DTmbar:Ohixekcjjjj94hikadai87ebdndnaqalNJbbbZJbbb:;aqJbbbb9GEMgq:lJbbb9p9DTmbaq:Ohdxekcjjjj94hdkavad87ebdndnawalNJbbbZJbbb:;awJbbbb9GEMgw:lJbbb9p9DTmbaw:Ohdxekcjjjj94hdkabad87ebabcwfhbaecufgembkkk;oiliui99iue99dnaeTmbcbhiabhlindndnJ;Zl81Zalcof8UebgvciV:Y:vgoal8Ueb:YNgrJb;:FSNJbbbZJbbb:;arJbbbb9GEMgw:lJbbb9p9DTmbaw:OhDxekcjjjj94hDkalclf8Uebhqalcdf8UebhkabaiavcefciGfcetfaD87ebdndnaoak:YNgwJb;:FSNJbbbZJbbb:;awJbbbb9GEMgx:lJbbb9p9DTmbax:OhDxekcjjjj94hDkabaiavciGfgkcd7cetfaD87ebdndnaoaq:YNgoJb;:FSNJbbbZJbbb:;aoJbbbb9GEMgx:lJbbb9p9DTmbax:OhDxekcjjjj94hDkabaiavcufciGfcetfaD87ebdndnJbbjZararN:tawawN:taoaoN:tgrJbbbbarJbbbb9GE:rJb;:FSNJbbbZMgr:lJbbb9p9DTmbar:Ohvxekcjjjj94hvkabakcetfav87ebalcwfhlaiclfhiaecufgembkkk9mbdnadcd4ae2gdTmbinababydbgecwtcw91:Yaece91cjjj98Gcjjj;8if::NUdbabclfhbadcufgdmbkkk9teiucbcbyd:K1jjbgeabcifc98GfgbBd:K1jjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik;teeeudndnaeabVciGTmbabhixekdndnadcz9pmbabhixekabhiinaiaeydbBdbaiaeydlBdlaiaeydwBdwaiaeydxBdxaeczfheaiczfhiadc9Wfgdcs0mbkkadcl6mbinaiaeydbBdbaeclfheaiclfhiadc98fgdci0mbkkdnadTmbinaiaeRbb86bbaicefhiaecefheadcufgdmbkkabk:3eedudndnabciGTmbabhixekaecFeGc:b:c:ew2hldndnadcz9pmbabhixekabhiinaialBdxaialBdwaialBdlaialBdbaiczfhiadc9Wfgdcs0mbkkadcl6mbinaialBdbaiclfhiadc98fgdci0mbkkdnadTmbinaiae86bbaicefhiadcufgdmbkkabkk81dbcjwk8Kbbbbdbbblbbbwbbbbbbbebbbdbbblbbbwbbbbc:Kwkl8WNbb",Q="b9H79TebbbeKl9Gbb9Gvuuuuueu9Giuuub9Geueuikqbbebeedddilve9Weeeviebeoweuec:q:6dkr;leDo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bb8A9TW79O9V9Wt9F9KW9J9V9KW9wWVtW949c919M9MWVbdY9TW79O9V9Wt9F9KW9J9V9KW69U9KW949c919M9MWVblE9TW79O9V9Wt9F9KW9J9V9KW69U9KW949tWG91W9U9JWbvL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9p9JtboK9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9r919HtbrL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWVT949Wbwl79IV9RbDq;G9Mqlbzik9:evu8Jjjjjbcz9Rhbcbheincbhdcbhiinabcwfadfaicjuaead4ceGglE86bbaialfhiadcefgdcw9hmbkaec:q:yjjbfai86bbaecitc:q1jjbfab8Piw83ibaecefgecjd9hmbkk:183lYud97dur978Jjjjjbcj;kb9Rgv8Kjjjjbc9:hodnalTmbcuhoaiRbbgrc;WeGc:Ge9hmbarcsGgwce0mbc9:hoalcufadcd4cbawEgDadfgrcKcaawEgqaraq0Egk6mbaicefhxavaialfgmar9Rgoad;8qbbcj;abad9Uc;WFbGcjdadca0EhPdndndnadTmbaoadfhscbhzinaeaz9nmdamax9RaD6miabazad2fhHaxaDfhOaPaeaz9RazaPfae6EgAcsfgocl4cifcd4hCavcj;cbfaoc9WGgXcetfhQavcj;cbfaXci2fhLavcj;cbfaXfhKcbhYaoc;ab6h8AincbhodnawTmbaxaYcd4fRbbhokaocFeGhEcbh3avcj;cbfh5indndndndnaEa3cet4ciGgoc9:fPdebdkamaO9RaX6mwavcj;cbfa3aX2faOaX;8qbbaOaAfhOxdkavcj;cbfa3aX2fcbaX;8kbxekamaO9RaC6moaoclVcbawEhraOaCfhocbhidna8Ambamao9Rc;Gb6mbcbhlina5alfhidndndndndndnaOalco4fRbbgqciGarfPDbedibledibkaipxbbbbbbbbbbbbbbbbpklbxlkaiaopbblaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLg8Ecdp:mea8EpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9og8Fpxiiiiiiiiiiiiiiiip8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaaaoclffahc:q:yjjbfRbbfhoxikaiaopbbwaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9og8Fpxssssssssssssssssp8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaaaocwffahc:q:yjjbfRbbfhoxdkaiaopbbbpklbaoczfhoxekaiaopbbdaoRbbgacitc:q1jjbfpbibaac:q:yjjbfRbbgapsaoRbeghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPpklbaaaocdffahc:q:yjjbfRbbfhokdndndndndndnaqcd4ciGarfPDbedibledibkaiczfpxbbbbbbbbbbbbbbbbpklbxlkaiczfaopbblaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLg8Ecdp:mea8EpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9og8Fpxiiiiiiiiiiiiiiiip8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaaaoclffahc:q:yjjbfRbbfhoxikaiczfaopbbwaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9og8Fpxssssssssssssssssp8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaaaocwffahc:q:yjjbfRbbfhoxdkaiczfaopbbbpklbaoczfhoxekaiczfaopbbdaoRbbgacitc:q1jjbfpbibaac:q:yjjbfRbbgapsaoRbeghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPpklbaaaocdffahc:q:yjjbfRbbfhokdndndndndndnaqcl4ciGarfPDbedibledibkaicafpxbbbbbbbbbbbbbbbbpklbxlkaicafaopbblaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLg8Ecdp:mea8EpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9og8Fpxiiiiiiiiiiiiiiiip8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaaaoclffahc:q:yjjbfRbbfhoxikaicafaopbbwaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9og8Fpxssssssssssssssssp8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaaaocwffahc:q:yjjbfRbbfhoxdkaicafaopbbbpklbaoczfhoxekaicafaopbbdaoRbbgacitc:q1jjbfpbibaac:q:yjjbfRbbgapsaoRbeghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPpklbaaaocdffahc:q:yjjbfRbbfhokdndndndndndnaqco4arfPDbedibledibkaic8Wfpxbbbbbbbbbbbbbbbbpklbxlkaic8Wfaopbblaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLg8Ecdp:mea8EpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9og8Fpxiiiiiiiiiiiiiiiip8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngicitc:q1jjbfpbibaic:q:yjjbfRbbgipsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Ngqcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaiaoclffaqc:q:yjjbfRbbfhoxikaic8Wfaopbbwaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9og8Fpxssssssssssssssssp8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngicitc:q1jjbfpbibaic:q:yjjbfRbbgipsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Ngqcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaiaocwffaqc:q:yjjbfRbbfhoxdkaic8Wfaopbbbpklbaoczfhoxekaic8WfaopbbdaoRbbgicitc:q1jjbfpbibaic:q:yjjbfRbbgipsaoRbegqcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPpklbaiaocdffaqc:q:yjjbfRbbfhokalc;abfhialcjefaX0meaihlamao9Rc;Fb0mbkkdnaiaX9pmbaici4hlinamao9RcK6mwa5aifhqdndndndndndnaOaico4fRbbalcoG4ciGarfPDbedibledibkaqpxbbbbbbbbbbbbbbbbpkbbxlkaqaopbblaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLg8Ecdp:mea8EpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9og8Fpxiiiiiiiiiiiiiiiip8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spkbbaaaoclffahc:q:yjjbfRbbfhoxikaqaopbbwaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9og8Fpxssssssssssssssssp8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spkbbaaaocwffahc:q:yjjbfRbbfhoxdkaqaopbbbpkbbaoczfhoxekaqaopbbdaoRbbgacitc:q1jjbfpbibaac:q:yjjbfRbbgapsaoRbeghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPpkbbaaaocdffahc:q:yjjbfRbbfhokalcdfhlaiczfgiaX6mbkkaohOaoTmoka5aXfh5a3cefg3cl9hmbkdndndndnawTmbasaYcd4fRbbglciGPlbedwbkaXTmdavcjdfaYfhlavaYfpbdbhgcbhoinalavcj;cbfaofpblbg8JaKaofpblbg8KpmbzeHdOiAlCvXoQrLg8LaQaofpblbg8MaLaofpblbg8NpmbzeHdOiAlCvXoQrLgypmbezHdiOAlvCXorQLg8Ecep9Ta8Epxeeeeeeeeeeeeeeeeg8Fp9op9Hp9rg8Eagp9Uggp9Abbbaladfglaga8Ea8Epmlvorlvorlvorlvorp9Uggp9Abbbaladfglaga8Ea8EpmwDqkwDqkwDqkwDqkp9Uggp9Abbbaladfglaga8Ea8EpmxmPsxmPsxmPsxmPsp9Uggp9Abbbaladfglaga8LaypmwDKYqk8AExm35Ps8E8Fg8Ecep9Ta8Ea8Fp9op9Hp9rg8Ep9Uggp9Abbbaladfglaga8Ea8Epmlvorlvorlvorlvorp9Uggp9Abbbaladfglaga8Ea8EpmwDqkwDqkwDqkwDqkp9Uggp9Abbbaladfglaga8Ea8EpmxmPsxmPsxmPsxmPsp9Uggp9Abbbaladfglaga8Ja8KpmwKDYq8AkEx3m5P8Es8Fg8Ja8Ma8NpmwKDYq8AkEx3m5P8Es8Fg8KpmbezHdiOAlvCXorQLg8Ecep9Ta8Ea8Fp9op9Hp9rg8Ep9Uggp9Abbbaladfglaga8Ea8Epmlvorlvorlvorlvorp9Uggp9Abbbaladfglaga8Ea8EpmwDqkwDqkwDqkwDqkp9Uggp9Abbbaladfglaga8Ea8EpmxmPsxmPsxmPsxmPsp9Uggp9Abbbaladfglaga8Ja8KpmwDKYqk8AExm35Ps8E8Fg8Ecep9Ta8Ea8Fp9op9Hp9rg8Ep9Ug8Fp9Abbbaladfgla8Fa8Ea8Epmlvorlvorlvorlvorp9Ug8Fp9Abbbaladfgla8Fa8Ea8EpmwDqkwDqkwDqkwDqkp9Ug8Fp9Abbbaladfgla8Fa8Ea8EpmxmPsxmPsxmPsxmPsp9Uggp9AbbbaladfhlaoczfgoaX6mbxikkaXTmeavcjdfaYfhlavaYfpbdbhgcbhoinalavcj;cbfaofpblbg8JaKaofpblbg8KpmbzeHdOiAlCvXoQrLg8LaQaofpblbg8MaLaofpblbg8NpmbzeHdOiAlCvXoQrLgypmbezHdiOAlvCXorQLg8Ecep:nea8Epxebebebebebebebebg8Fp9op:bep9rg8Eagp:oeggp9Abbbaladfglaga8Ea8Epmlvorlvorlvorlvorp:oeggp9Abbbaladfglaga8Ea8EpmwDqkwDqkwDqkwDqkp:oeggp9Abbbaladfglaga8Ea8EpmxmPsxmPsxmPsxmPsp:oeggp9Abbbaladfglaga8LaypmwDKYqk8AExm35Ps8E8Fg8Ecep:nea8Ea8Fp9op:bep9rg8Ep:oeggp9Abbbaladfglaga8Ea8Epmlvorlvorlvorlvorp:oeggp9Abbbaladfglaga8Ea8EpmwDqkwDqkwDqkwDqkp:oeggp9Abbbaladfglaga8Ea8EpmxmPsxmPsxmPsxmPsp:oeggp9Abbbaladfglaga8Ja8KpmwKDYq8AkEx3m5P8Es8Fg8Ja8Ma8NpmwKDYq8AkEx3m5P8Es8Fg8KpmbezHdiOAlvCXorQLg8Ecep:nea8Ea8Fp9op:bep9rg8Ep:oeggp9Abbbaladfglaga8Ea8Epmlvorlvorlvorlvorp:oeggp9Abbbaladfglaga8Ea8EpmwDqkwDqkwDqkwDqkp:oeggp9Abbbaladfglaga8Ea8EpmxmPsxmPsxmPsxmPsp:oeggp9Abbbaladfglaga8Ja8KpmwDKYqk8AExm35Ps8E8Fg8Ecep:nea8Ea8Fp9op:bep9rg8Ep:oeg8Fp9Abbbaladfgla8Fa8Ea8Epmlvorlvorlvorlvorp:oeg8Fp9Abbbaladfgla8Fa8Ea8EpmwDqkwDqkwDqkwDqkp:oeg8Fp9Abbbaladfgla8Fa8Ea8EpmxmPsxmPsxmPsxmPsp:oeggp9AbbbaladfhlaoczfgoaX6mbxdkkaXTmbcbhocbalcl4gl9Rc8FGhiavcjdfaYfhravaYfpbdbh8Finaravcj;cbfaofpblbggaKaofpblbg8JpmbzeHdOiAlCvXoQrLg8KaQaofpblbg8LaLaofpblbg8MpmbzeHdOiAlCvXoQrLg8NpmbezHdiOAlvCXorQLg8Eaip:Rea8Ealp:Sep9qg8Ea8Fp9rg8Fp9Abbbaradfgra8Fa8Ea8Epmlvorlvorlvorlvorp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmwDqkwDqkwDqkwDqkp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmxmPsxmPsxmPsxmPsp9rg8Fp9Abbbaradfgra8Fa8Ka8NpmwDKYqk8AExm35Ps8E8Fg8Eaip:Rea8Ealp:Sep9qg8Ep9rg8Fp9Abbbaradfgra8Fa8Ea8Epmlvorlvorlvorlvorp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmwDqkwDqkwDqkwDqkp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmxmPsxmPsxmPsxmPsp9rg8Fp9Abbbaradfgra8Faga8JpmwKDYq8AkEx3m5P8Es8Fgga8La8MpmwKDYq8AkEx3m5P8Es8Fg8JpmbezHdiOAlvCXorQLg8Eaip:Rea8Ealp:Sep9qg8Ep9rg8Fp9Abbbaradfgra8Fa8Ea8Epmlvorlvorlvorlvorp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmwDqkwDqkwDqkwDqkp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmxmPsxmPsxmPsxmPsp9rg8Fp9Abbbaradfgra8Faga8JpmwDKYqk8AExm35Ps8E8Fg8Eaip:Rea8Ealp:Sep9qg8Ep9rg8Fp9Abbbaradfgra8Fa8Ea8Epmlvorlvorlvorlvorp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmwDqkwDqkwDqkwDqkp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmxmPsxmPsxmPsxmPsp9rg8Fp9AbbbaradfhraoczfgoaX6mbkkaYclfgYad6mbkaHavcjdfaAad2;8qbbavavcjdfaAcufad2fad;8qbbaAazfhzc9:hoaOhxaOmbxlkkaeTmbaDalfhrcbhocuhlinaralaD9RglfaD6mdaPaeao9RaoaPfae6Eaofgoae6mbkaial9Rhxkcbc99amax9RakSEhoxekc9:hokavcj;kbf8Kjjjjbaokwbz:bjjjbk:TseHu8Jjjjjbc;ae9Rgv8Kjjjjbc9:hodnaeci9UgrcHfal0mbcuhoaiRbbgwc;WeGc;Ge9hmbawcsGgDce0mbavc;abfcFecje;8kbavcUf9cu83ibavc8Wf9cu83ibavcyf9cu83ibavcaf9cu83ibavcKf9cu83ibavczf9cu83ibav9cu83iwav9cu83ibaialfc9WfhqaicefgwarfhldnaeTmbcmcsaDceSEhkcbhxcbhmcbhrcbhicbhoindnalaq9nmbc9:hoxikdndnawRbbgDc;Ve0mbavc;abfaoaDcu7gPcl4fcsGcitfgsydlhzasydbhHdndnaDcsGgsak9pmbavaiaPfcsGcdtfydbaxasEhDaxasTgOfhxxekdndnascsSmbcehOasc987asamffcefhDxekalcefhDal8SbbgscFeGhPdndnascu9mmbaDhlxekalcvfhlaPcFbGhPcrhsdninaD8SbbgOcFbGastaPVhPaOcu9kmeaDcefhDascrfgsc8J9hmbxdkkaDcefhlkcehOaPce4cbaPceG9R7amfhDkaDhmkavc;abfaocitfgsaDBdbasazBdlavaicdtfaDBdbavc;abfaocefcsGcitfgsaHBdbasaDBdlaocdfhoaOaifhidnadcd9hmbabarcetfgsaH87ebasclfaD87ebascdfaz87ebxdkabarcdtfgsaHBdbascwfaDBdbasclfazBdbxekdnaDcpe0mbaxcefgOavaiaqaDcsGfRbbgscl49RcsGcdtfydbascz6gPEhDavaias9RcsGcdtfydbaOaPfgzascsGgOEhsaOThOdndnadcd9hmbabarcetfgHax87ebaHclfas87ebaHcdfaD87ebxekabarcdtfgHaxBdbaHcwfasBdbaHclfaDBdbkavaicdtfaxBdbavc;abfaocitfgHaDBdbaHaxBdlavaicefgicsGcdtfaDBdbavc;abfaocefcsGcitfgHasBdbaHaDBdlavaiaPfgicsGcdtfasBdbavc;abfaocdfcsGcitfgDaxBdbaDasBdlaocifhoaiaOfhiazaOfhxxekaxcbalRbbgHEgAaDc;:eSgDfhzaHcsGhCaHcl4hXdndnaHcs0mbazcefhOxekazhOavaiaX9RcsGcdtfydbhzkdndnaCmbaOcefhxxekaOhxavaiaH9RcsGcdtfydbhOkdndnaDTmbalcefhDxekalcdfhDal8SbegPcFeGhsdnaPcu9kmbalcofhAascFbGhscrhldninaD8SbbgPcFbGaltasVhsaPcu9kmeaDcefhDalcrfglc8J9hmbkaAhDxekaDcefhDkasce4cbasceG9R7amfgmhAkdndnaXcsSmbaDhsxekaDcefhsaD8SbbglcFeGhPdnalcu9kmbaDcvfhzaPcFbGhPcrhldninas8SbbgDcFbGaltaPVhPaDcu9kmeascefhsalcrfglc8J9hmbkazhsxekascefhskaPce4cbaPceG9R7amfgmhzkdndnaCcsSmbashlxekascefhlas8SbbgDcFeGhPdnaDcu9kmbascvfhOaPcFbGhPcrhDdninal8SbbgscFbGaDtaPVhPascu9kmealcefhlaDcrfgDc8J9hmbkaOhlxekalcefhlkaPce4cbaPceG9R7amfgmhOkdndnadcd9hmbabarcetfgDaA87ebaDclfaO87ebaDcdfaz87ebxekabarcdtfgDaABdbaDcwfaOBdbaDclfazBdbkavc;abfaocitfgDazBdbaDaABdlavaicdtfaABdbavc;abfaocefcsGcitfgDaOBdbaDazBdlavaicefgicsGcdtfazBdbavc;abfaocdfcsGcitfgDaABdbaDaOBdlavaiaHcz6aXcsSVfgicsGcdtfaOBdbaiaCTaCcsSVfhiaocifhokawcefhwaocsGhoaicsGhiarcifgrae6mbkkcbc99alaqSEhokavc;aef8Kjjjjbaok:clevu8Jjjjjbcz9Rhvdnaecvfal9nmbc9:skdnaiRbbc;:eGc;qeSmbcuskav9cb83iwaicefhoaialfc98fhrdnaeTmbdnadcdSmbcbhwindnaoar6mbc9:skaocefhlao8SbbgicFeGhddndnaicu9mmbalhoxekaocvfhoadcFbGhdcrhidninal8SbbgDcFbGaitadVhdaDcu9kmealcefhlaicrfgic8J9hmbxdkkalcefhokabawcdtfadc8Etc8F91adcd47avcwfadceGcdtVglydbfgiBdbalaiBdbawcefgwae9hmbxdkkcbhwindnaoar6mbc9:skaocefhlao8SbbgicFeGhddndnaicu9mmbalhoxekaocvfhoadcFbGhdcrhidninal8SbbgDcFbGaitadVhdaDcu9kmealcefhlaicrfgic8J9hmbxdkkalcefhokabawcetfadc8Etc8F91adcd47avcwfadceGcdtVglydbfgi87ebalaiBdbawcefgwae9hmbkkcbc99aoarSEk:SPliuo97eue978Jjjjjbca9Rhiaec98Ghldndnadcl9hmbdnalTmbcbhvabhdinadadpbbbgocKp:RecKp:Sep;6egraocwp:RecKp:Sep;6earp;Geaoczp:RecKp:Sep;6egwp;Gep;Kep;LegDpxbbbbbbbbbbbbbbbbp:2egqarpxbbbjbbbjbbbjbbbjgkp9op9rp;Kegrpxbb;:9cbb;:9cbb;:9cbb;:9cararp;MeaDaDp;Meawaqawakp9op9rp;Kegrarp;Mep;Kep;Kep;Jep;Negwp;Mepxbbn0bbn0bbn0bbn0gqp;KepxFbbbFbbbFbbbFbbbp9oaopxbbbFbbbFbbbFbbbFp9op9qarawp;Meaqp;Kecwp:RepxbFbbbFbbbFbbbFbbp9op9qaDawp;Meaqp;Keczp:RepxbbFbbbFbbbFbbbFbp9op9qpkbbadczfhdavclfgval6mbkkalaeSmeaipxbbbbbbbbbbbbbbbbgqpklbaiabalcdtfgdaeciGglcdtgv;8qbbdnalTmbaiaipblbgocKp:RecKp:Sep;6egraocwp:RecKp:Sep;6earp;Geaoczp:RecKp:Sep;6egwp;Gep;Kep;LegDaqp:2egqarpxbbbjbbbjbbbjbbbjgkp9op9rp;Kegrpxbb;:9cbb;:9cbb;:9cbb;:9cararp;MeaDaDp;Meawaqawakp9op9rp;Kegrarp;Mep;Kep;Kep;Jep;Negwp;Mepxbbn0bbn0bbn0bbn0gqp;KepxFbbbFbbbFbbbFbbbp9oaopxbbbFbbbFbbbFbbbFp9op9qarawp;Meaqp;Kecwp:RepxbFbbbFbbbFbbbFbbp9op9qaDawp;Meaqp;Keczp:RepxbbFbbbFbbbFbbbFbp9op9qpklbkadaiav;8qbbskdnalTmbcbhvabhdinadczfgxaxpbbbgopxbbbbbbFFbbbbbbFFgkp9oadpbbbgDaopmbediwDqkzHOAKY8AEgwczp:Reczp:Sep;6egraDaopmlvorxmPsCXQL358E8FpxFubbFubbFubbFubbp9op;7eawczp:Sep;6egwp;Gearp;Gep;Kep;Legopxbbbbbbbbbbbbbbbbp:2egqarpxbbbjbbbjbbbjbbbjgmp9op9rp;Kegrpxb;:FSb;:FSb;:FSb;:FSararp;Meaoaop;Meawaqawamp9op9rp;Kegrarp;Mep;Kep;Kep;Jep;Negwp;Mepxbbn0bbn0bbn0bbn0gqp;KepxFFbbFFbbFFbbFFbbp9oaoawp;Meaqp;Keczp:Rep9qgoarawp;Meaqp;KepxFFbbFFbbFFbbFFbbp9ogrpmwDKYqk8AExm35Ps8E8Fp9qpkbbadaDakp9oaoarpmbezHdiOAlvCXorQLp9qpkbbadcafhdavclfgval6mbkkalaeSmbaiczfpxbbbbbbbbbbbbbbbbgopklbaiaopklbaiabalcitfgdaeciGglcitgv;8qbbdnalTmbaiaipblzgopxbbbbbbFFbbbbbbFFgkp9oaipblbgDaopmbediwDqkzHOAKY8AEgwczp:Reczp:Sep;6egraDaopmlvorxmPsCXQL358E8FpxFubbFubbFubbFubbp9op;7eawczp:Sep;6egwp;Gearp;Gep;Kep;Legopxbbbbbbbbbbbbbbbbp:2egqarpxbbbjbbbjbbbjbbbjgmp9op9rp;Kegrpxb;:FSb;:FSb;:FSb;:FSararp;Meaoaop;Meawaqawamp9op9rp;Kegrarp;Mep;Kep;Kep;Jep;Negwp;Mepxbbn0bbn0bbn0bbn0gqp;KepxFFbbFFbbFFbbFFbbp9oaoawp;Meaqp;Keczp:Rep9qgoarawp;Meaqp;KepxFFbbFFbbFFbbFFbbp9ogrpmwDKYqk8AExm35Ps8E8Fp9qpklzaiaDakp9oaoarpmbezHdiOAlvCXorQLp9qpklbkadaiav;8qbbkk:oDllue97euv978Jjjjjbc8W9Rhidnaec98GglTmbcbhvabhoinaiaopbbbgraoczfgwpbbbgDpmlvorxmPsCXQL358E8Fgqczp:Segkclp:RepklbaopxbbjZbbjZbbjZbbjZpx;Zl81Z;Zl81Z;Zl81Z;Zl81Zakpxibbbibbbibbbibbbp9qp;6ep;NegkaraDpmbediwDqkzHOAKY8AEgrczp:Reczp:Sep;6ep;MegDaDp;Meakarczp:Sep;6ep;Megxaxp;Meakaqczp:Reczp:Sep;6ep;Megqaqp;Mep;Kep;Kep;Lepxbbbbbbbbbbbbbbbbp:4ep;Jepxb;:FSb;:FSb;:FSb;:FSgkp;Mepxbbn0bbn0bbn0bbn0grp;KepxFFbbFFbbFFbbFFbbgmp9oaxakp;Mearp;Keczp:Rep9qgxaDakp;Mearp;Keamp9oaqakp;Mearp;Keczp:Rep9qgkpmbezHdiOAlvCXorQLgrp5baipblbpEb:T:j83ibaocwfarp5eaipblbpEe:T:j83ibawaxakpmwDKYqk8AExm35Ps8E8Fgkp5baipblbpEd:T:j83ibaocKfakp5eaipblbpEi:T:j83ibaocafhoavclfgval6mbkkdnalaeSmbaiczfpxbbbbbbbbbbbbbbbbgkpklbaiakpklbaiabalcitfgoaeciGgvcitgw;8qbbdnavTmbaiaipblbgraipblzgDpmlvorxmPsCXQL358E8Fgqczp:Segkclp:RepklaaipxbbjZbbjZbbjZbbjZpx;Zl81Z;Zl81Z;Zl81Z;Zl81Zakpxibbbibbbibbbibbbp9qp;6ep;NegkaraDpmbediwDqkzHOAKY8AEgrczp:Reczp:Sep;6ep;MegDaDp;Meakarczp:Sep;6ep;Megxaxp;Meakaqczp:Reczp:Sep;6ep;Megqaqp;Mep;Kep;Kep;Lepxbbbbbbbbbbbbbbbbp:4ep;Jepxb;:FSb;:FSb;:FSb;:FSgkp;Mepxbbn0bbn0bbn0bbn0grp;KepxFFbbFFbbFFbbFFbbgmp9oaxakp;Mearp;Keczp:Rep9qgxaDakp;Mearp;Keamp9oaqakp;Mearp;Keczp:Rep9qgkpmbezHdiOAlvCXorQLgrp5baipblapEb:T:j83ibaiarp5eaipblapEe:T:j83iwaiaxakpmwDKYqk8AExm35Ps8E8Fgkp5baipblapEd:T:j83izaiakp5eaipblapEi:T:j83iKkaoaiaw;8qbbkk;uddiue978Jjjjjbc;ab9Rhidnadcd4ae2glc98GgvTmbcbheabhdinadadpbbbgocwp:Recwp:Sep;6eaocep:SepxbbjFbbjFbbjFbbjFp9opxbbjZbbjZbbjZbbjZp:Uep;Mepkbbadczfhdaeclfgeav6mbkkdnavalSmbaic8WfpxbbbbbbbbbbbbbbbbgopklbaicafaopklbaiczfaopklbaiaopklbaiabavcdtfgdalciGgecdtgv;8qbbdnaeTmbaiaipblbgocwp:Recwp:Sep;6eaocep:SepxbbjFbbjFbbjFbbjFp9opxbbjZbbjZbbjZbbjZp:Uep;Mepklbkadaiav;8qbbkk9teiucbcbydj1jjbgeabcifc98GfgbBdj1jjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaikkkebcjwklz:Dbb",B=new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,3,2,0,0,5,3,1,0,1,12,1,0,10,22,2,12,0,65,0,65,0,65,0,252,10,0,0,11,7,0,65,0,253,15,26,11]),Y=new Uint8Array([32,0,65,2,1,106,34,33,3,128,11,4,13,64,6,253,10,7,15,116,127,5,8,12,40,16,19,54,20,9,27,255,113,17,42,67,24,23,146,148,18,14,22,45,70,69,56,114,101,21,25,63,75,136,108,28,118,29,73,115]);if(typeof WebAssembly!=="object")return{supported:!1};var J=WebAssembly.validate(B)?G(Q):G(A),C,X=WebAssembly.instantiate(J,{}).then(function(H){C=H.instance,C.exports.__wasm_call_ctors()});function G(H){var D=new Uint8Array(H.length);for(var L=0;L96?z-97:z>64?z-39:z+4}var M=0;for(var L=0;L0)return I(H,D,L,Z[z],W[M]);return X.then(function(){var N=new Uint8Array(H*D);return F(C,C.exports[Z[z]],N,H,D,L,C.exports[W[M]]),N})}}}();if(typeof BH==="object"&&typeof Kg==="object")Kg.exports=N3;else if(typeof define==="function"&&define.amd)define([],function(){return N3});else if(typeof BH==="object")BH.MeshoptDecoder=N3;else(typeof self<"u"?self:BH).MeshoptDecoder=N3});var NCA=R((YH,Vg)=>{var L3=function(){var A="b9H79Tebbbetm9Geueu9Geub9Gbb9Gsuuuuuuuuuuuu99uueu9Gvuuuuub9Gruuuuuuub9Gvuuuuue999Gvuuuuueu9Gquuuuuuu99uueu9Gwuuuuuu99ueu9Giuuue999Gluuuueu9GiuuueuiOHdilvorlwiDqkbxxbelve9Weiiviebeoweuec:G:Pdkr:Tewo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bbz9TW79O9V9Wt9F79P9T9W29P9M95br8E9TW79O9V9Wt9F79P9T9W29P9M959x9Pt9OcttV9P9I91tW7bwQ9TW79O9V9Wt9F79P9T9W29P9M959q9V9P9Ut7bDX9TW79O9V9Wt9F79P9T9W29P9M959t9J9H2Wbqa9TW79O9V9Wt9F9V9Wt9P9T9P96W9wWVtW94SWt9J9O9sW9T9H9Wbkl79IV9RbxDwebcekdzsq;B:xeHdbkM9Hi8Au8A99Au8Jjjjjbc;W;qb9Rgs8Kjjjjbcbhzascxfcbc;Kbz:ojjjb8AdnabaeSmbabaeadcdtz:njjjb8AkdndnamcdGmbascxfhHcbhOxekasalcrfci4gecbyd:m:jjjbHjjjjbbgABdxasceBd2aAcbaez:ojjjbhCcbhlcbhednadTmbcbhlabheadhAinaCaeydbgXci4fgQaQRbbgQceaXcrGgXtV86bbaQcu7aX4ceGalfhlaeclfheaAcufgAmbkcualcdtalcFFFFi0EhekascCfhHasaecbyd:m:jjjbHjjjjbbgOBdzascdBd2alcd4alfhXcehAinaAgecethAaeaX6mbkcdhzcbhLascuaecdtgAaecFFFFi0Ecbyd:m:jjjbHjjjjbbgXBdCasciBd2aXcFeaAz:ojjjbhKdnadTmbaecufhYcbh8AindndnaKabaLcdtfgEydbgQc:v;t;h;Ev2aYGgXcdtfgCydbgAcuSmbceheinaOaAcdtfydbaQSmdaXaefhAaecefheaKaAaYGgXcdtfgCydbgAcu9hmbkkaOa8AcdtfaQBdbaCa8ABdba8AhAa8Acefh8AkaEaABdbaLcefgLad9hmbkkaKcbyd1:jjjbH:bjjjbbascdBd2kcbh3aHcualcefgecdtaecFFFFi0Ecbyd:m:jjjbHjjjjbbg5Bdbasa5BdlasazceVgeBd2ascxfaecdtfcuadcitadcFFFFe0Ecbyd:m:jjjbHjjjjbbg8EBdbasa8EBdwasazcdfgeBd2asclfabadalcbz:cjjjbascxfaecdtfcualcdtgealcFFFFi0Eg8Fcbyd:m:jjjbHjjjjbbgABdbasazcifgXBd2ascxfaXcdtfa8Fcbyd:m:jjjbHjjjjbbgaBdbasazclVBd2aAaaaialavaOascxfz:djjjbalcbyd:m:jjjbHjjjjbbhCascxfasyd2ghcdtfaCBdbasahcefgXBd2ascxfaXcdtfa8Fcbyd:m:jjjbHjjjjbbgXBdbasahcdfgQBd2ascxfaQcdtfa8Fcbyd:m:jjjbHjjjjbbgQBdbasahcifggBd2aXcFeaez:ojjjbh8JaQcFeaez:ojjjbh8KdnalTmba8Ecwfh8Lindna5a3gQcefg3cdtfydbgKa5aQcdtgefydbgXSmbaKaX9Rhza8EaXcitfhHa8Kaefh8Ma8JaefhEcbhYindndnaHaYcitfydbg8AaQ9hmbaEaQBdba8MaQBdbxekdna5a8Acdtg8NfgeclfydbgXaeydbgeSmba8EaecitgKfydbaQSmeaXae9Rhyaecu7aXfhLa8LaKfhXcbheinaLaeSmeaecefheaXydbhKaXcwfhXaKaQ9hmbkaeay6meka8Ka8NfgeaQa8AaeydbcuSEBdbaEa8AaQaEydbcuSEBdbkaYcefgYaz9hmbkka3al9hmbkaAhXaahQa8KhKa8JhYcbheindndnaeaXydbg8A9hmbdnaeaQydbg8A9hmbaYydbh8AdnaKydbgLcu9hmba8Acu9hmbaCaefcb86bbxikaCaefhEdnaeaLSmbaea8ASmbaEce86bbxikaEcl86bbxdkdnaeaaa8AcdtgLfydb9hmbdnaKydbgEcuSmbaeaESmbaYydbgzcuSmbaeazSmba8KaLfydbgHcuSmbaHa8ASmba8JaLfydbgLcuSmbaLa8ASmbdnaAaEcdtfydbg8AaAaLcdtfydb9hmba8AaAazcdtfydbgLSmbaLaAaHcdtfydb9hmbaCaefcd86bbxlkaCaefcl86bbxikaCaefcl86bbxdkaCaefcl86bbxekaCaefaCa8AfRbb86bbkaXclfhXaQclfhQaKclfhKaYclfhYalaecefge9hmbkdnaqTmbdndnaOTmbaOheaAhXalhQindnaqaeydbfRbbTmbaCaXydbfcl86bbkaeclfheaXclfhXaQcufgQmbxdkkaAhealhXindnaqRbbTmbaCaeydbfcl86bbkaqcefhqaeclfheaXcufgXmbkkaAhealhQaChXindnaCaeydbfRbbcl9hmbaXcl86bbkaeclfheaXcefhXaQcufgQmbkkamceGTmbaChealhXindnaeRbbce9hmbaecl86bbkaecefheaXcufgXmbkkascxfagcdtfcualcx2alc;v:Q;v:Qe0Ecbyd:m:jjjbHjjjjbbg3BdbasahclfgHBd2a3aialavaOz:ejjjbh8PdndnaDmbcbhgcbh8Lxekcbh8LawhecbhXindnaeIdbJbbbb9ETmbasc;Wbfa8LcdtfaXBdba8Lcefh8LkaeclfheaDaXcefgX9hmbkascxfaHcdtfcua8Lal2gecdtaecFFFFi0Ecbyd:m:jjjbHjjjjbbggBdbasahcvfgHBd2alTmba8LTmbarcd4hEdnaOTmba8Lcdthzcbh8AaghLinaoaOa8AcdtfydbaE2cdtfhYasc;WbfheaLhXa8LhQinaXaYaeydbcdtgKfIdbawaKfIdbNUdbaeclfheaXclfhXaQcufgQmbkaLazfhLa8Acefg8Aal9hmbxdkka8Lcdthzcbh8AaghLinaoa8AaE2cdtfhYasc;WbfheaLhXa8LhQinaXaYaeydbcdtgKfIdbawaKfIdbNUdbaeclfheaXclfhXaQcufgQmbkaLazfhLa8Acefg8Aal9hmbkkascxfaHcdtfcualc8S2gealc;D;O;f8U0EgQcbyd:m:jjjbHjjjjbbgXBdbasaHcefgKBd2aXcbaez:ojjjbhqdndndna8LTmbascxfaKcdtfaQcbyd:m:jjjbHjjjjbbgvBdbasaHcdfgXBd2avcbaez:ojjjb8AascxfaXcdtfcua8Lal2gecltgXaecFFFFb0Ecbyd:m:jjjbHjjjjbbgiBdbasaHcifBd2aicbaXz:ojjjb8AadmexdkcbhvcbhiadTmekcbhYabhXindna3aXclfydbg8Acx2fgeIdba3aXydbgLcx2fgQIdbgI:tg8Ra3aXcwfydbgEcx2fgKIdlaQIdlg8S:tgRNaKIdbaI:tg8UaeIdla8S:tg8VN:tg8Wa8WNa8VaKIdwaQIdwg8X:tg8YNaRaeIdwa8X:tg8VN:tgRaRNa8Va8UNa8Ya8RN:tg8Ra8RNMM:rg8UJbbbb9ETmba8Wa8U:vh8Wa8Ra8U:vh8RaRa8U:vhRkaqaAaLcdtfydbc8S2fgeaRa8U:rg8UaRNNg8VaeIdbMUdbaea8Ra8Ua8RNg8ZNg8YaeIdlMUdlaea8Wa8Ua8WNg80Ng81aeIdwMUdwaea8ZaRNg8ZaeIdxMUdxaea80aRNgBaeIdzMUdzaea80a8RNg80aeIdCMUdCaeaRa8Ua8Wa8XNaRaINa8Sa8RNMM:mg8SNgINgRaeIdKMUdKaea8RaINg8RaeId3MUd3aea8WaINg8WaeIdaMUdaaeaIa8SNgIaeId8KMUd8Kaea8UaeIdyMUdyaqaAa8Acdtfydbc8S2fgea8VaeIdbMUdbaea8YaeIdlMUdlaea81aeIdwMUdwaea8ZaeIdxMUdxaeaBaeIdzMUdzaea80aeIdCMUdCaeaRaeIdKMUdKaea8RaeId3MUd3aea8WaeIdaMUdaaeaIaeId8KMUd8Kaea8UaeIdyMUdyaqaAaEcdtfydbc8S2fgea8VaeIdbMUdbaea8YaeIdlMUdlaea81aeIdwMUdwaea8ZaeIdxMUdxaeaBaeIdzMUdzaea80aeIdCMUdCaeaRaeIdKMUdKaea8RaeId3MUd3aea8WaeIdaMUdaaeaIaeId8KMUd8Kaea8UaeIdyMUdyaXcxfhXaYcifgYad6mbkcbhzabhLinabazcdtfh8AcbhXinaCa8AaXc;a1jjbfydbcdtfydbgQfRbbhedndnaCaLaXfydbgKfRbbgYc99fcFeGcpe0mbaec99fcFeGc;:e6mekdnaYcufcFeGce0mba8JaKcdtfydbaQ9hmekdnaecufcFeGce0mba8KaQcdtfydbaK9hmekdnaYcv2aefc:G1jjbfRbbTmbaAaQcdtfydbaAaKcdtfydb0mekJbbacJbbacJbbjZaecFeGceSEaYceSEh80dna3a8AaXc;e1jjbfydbcdtfydbcx2fgeIdwa3aKcx2fgYIdwg8S:tg8Wa3aQcx2fgEIdwa8S:tgRaRNaEIdbaYIdbg8X:tg8Ra8RNaEIdlaYIdlg8V:tg8Ua8UNMMgINa8WaRNaeIdba8X:tg81a8RNa8UaeIdla8V:tg8ZNMMg8YaRN:tg8Wa8WNa81aINa8Ya8RN:tgRaRNa8ZaINa8Ya8UN:tg8Ra8RNMM:rg8UJbbbb9ETmba8Wa8U:vh8Wa8Ra8U:vh8RaRa8U:vhRkaqaAaKcdtfydbc8S2fgeaRa80aI:rNg8UaRNNg8YaeIdbMUdbaea8Ra8Ua8RNg80Ng81aeIdlMUdlaea8Wa8Ua8WNgINg8ZaeIdwMUdwaea80aRNg80aeIdxMUdxaeaIaRNgBaeIdzMUdzaeaIa8RNg83aeIdCMUdCaeaRa8Ua8Wa8SNaRa8XNa8Va8RNMM:mg8SNgINgRaeIdKMUdKaea8RaINg8RaeId3MUd3aea8WaINg8WaeIdaMUdaaeaIa8SNgIaeId8KMUd8Kaea8UaeIdyMUdyaqaAaQcdtfydbc8S2fgea8YaeIdbMUdbaea81aeIdlMUdlaea8ZaeIdwMUdwaea80aeIdxMUdxaeaBaeIdzMUdzaea83aeIdCMUdCaeaRaeIdKMUdKaea8RaeId3MUd3aea8WaeIdaMUdaaeaIaeId8KMUd8Kaea8UaeIdyMUdykaXclfgXcx9hmbkaLcxfhLazcifgzad6mbka8LTmbcbhLinJbbbbh8Xa3abaLcdtfgeclfydbgEcx2fgXIdwa3aeydbgzcx2fgQIdwg8Z:tg8Ra8RNaXIdbaQIdbgB:tg8Wa8WNaXIdlaQIdlg83:tg8Ua8UNMMg80a3aecwfydbgHcx2fgeIdwa8Z:tgINa8Ra8RaINa8WaeIdbaB:tg8SNa8UaeIdla83:tg8VNMMgRN:tJbbbbJbbjZa80aIaINa8Sa8SNa8Va8VNMMg81NaRaRN:tg8Y:va8YJbbbb9BEg8YNhUa81a8RNaIaRN:ta8YNh85a80a8VNa8UaRN:ta8YNh86a81a8UNa8VaRN:ta8YNh87a80a8SNa8WaRN:ta8YNh88a81a8WNa8SaRN:ta8YNh89a8Wa8VNa8Sa8UN:tgRaRNa8UaINa8Va8RN:tgRaRNa8Ra8SNaIa8WN:tgRaRNMM:rJbbbZNhRagaza8L2gwcdtfhXagaHa8L2g8NcdtfhQagaEa8L2g5cdtfhKa8Z:mh8:a83:mhZaB:mhncbhYa8Lh8AJbbbbh8VJbbbbh8YJbbbbh80Jbbbbh81Jbbbbh8ZJbbbbhBJbbbbh83JbbbbhcJbbbbh9cinasc;WbfaYfgecwfaRa85aKIdbaXIdbgI:tg8UNaUaQIdbaI:tg8SNMg8RNUdbaeclfaRa87a8UNa86a8SNMg8WNUdbaeaRa89a8UNa88a8SNMg8UNUdbaecxfaRa8:a8RNaZa8WNaIana8UNMMMgINUdbaRa8Ra8WNNa81Mh81aRa8Ra8UNNa8ZMh8ZaRa8Wa8UNNaBMhBaRaIaINNa8XMh8XaRa8RaINNa8VMh8VaRa8WaINNa8YMh8YaRa8UaINNa80Mh80aRa8Ra8RNNa83Mh83aRa8Wa8WNNacMhcaRa8Ua8UNNa9cMh9caXclfhXaKclfhKaQclfhQaYczfhYa8Acufg8Ambkavazc8S2fgea9caeIdbMUdbaeacaeIdlMUdlaea83aeIdwMUdwaeaBaeIdxMUdxaea8ZaeIdzMUdzaea81aeIdCMUdCaea80aeIdKMUdKaea8YaeId3MUd3aea8VaeIdaMUdaaea8XaeId8KMUd8KaeaRaeIdyMUdyavaEc8S2fgea9caeIdbMUdbaeacaeIdlMUdlaea83aeIdwMUdwaeaBaeIdxMUdxaea8ZaeIdzMUdzaea81aeIdCMUdCaea80aeIdKMUdKaea8YaeId3MUd3aea8VaeIdaMUdaaea8XaeId8KMUd8KaeaRaeIdyMUdyavaHc8S2fgea9caeIdbMUdbaeacaeIdlMUdlaea83aeIdwMUdwaeaBaeIdxMUdxaea8ZaeIdzMUdzaea81aeIdCMUdCaea80aeIdKMUdKaea8YaeId3MUd3aea8VaeIdaMUdaaea8XaeId8KMUd8KaeaRaeIdyMUdyaiawcltfh8AcbhXa8LhKina8AaXfgeasc;WbfaXfgQIdbaeIdbMUdbaeclfgYaQclfIdbaYIdbMUdbaecwfgYaQcwfIdbaYIdbMUdbaecxfgeaQcxfIdbaeIdbMUdbaXczfhXaKcufgKmbkaia5cltfh8AcbhXa8LhKina8AaXfgeasc;WbfaXfgQIdbaeIdbMUdbaeclfgYaQclfIdbaYIdbMUdbaecwfgYaQcwfIdbaYIdbMUdbaecxfgeaQcxfIdbaeIdbMUdbaXczfhXaKcufgKmbkaia8Ncltfh8AcbhXa8LhKina8AaXfgeasc;WbfaXfgQIdbaeIdbMUdbaeclfgYaQclfIdbaYIdbMUdbaecwfgYaQcwfIdbaYIdbMUdbaecxfgeaQcxfIdbaeIdbMUdbaXczfhXaKcufgKmbkaLcifgLad6mbkkcbhQdndnamcwGgJmbJbbbbh8Vcbh9ecbhocbhhxekcbh9ea8Fcbyd:m:jjjbHjjjjbbhhascxfasyd2gecdtfahBdbasaecefgXBd2ascxfaXcdtfcuahalabadaAz:fjjjbgKcltaKcjjjjiGEcbyd:m:jjjbHjjjjbbgoBdbasaecdfBd2aoaKaha3alz:gjjjbJFFuuh8VaKTmbaoheaKhXinaeIdbgRa8Va8VaR9EEh8VaeclfheaXcufgXmbkaKh9ekasydlhTdnalTmbaTclfheaTydbhKaChXalhYcbhQincbaeydbg8AaK9RaXRbbcpeGEaQfhQaXcefhXaeclfhea8AhKaYcufgYmbkaQce4hQkcuadaQ9RcifgScx2aSc;v:Q;v:Qe0Ecbyd:m:jjjbHjjjjbbhDascxfasyd2g9hcdtfaDBdbasa9hcefgeBd2ascxfaecdtfcuaScdtaScFFFFi0Ecbyd:m:jjjbHjjjjbbgrBdbasa9hcdfgeBd2ascxfaecdtfa8Fcbyd:m:jjjbHjjjjbbgyBdbasa9hcifgeBd2ascxfaecdtfalcbyd:m:jjjbHjjjjbbg9iBdbasa9hclfg6Bd2axaxNa8PJbbjZamclGEgUaUN:vh9cJbbbbhcdnadak9nmbdnaSci6mba8Lclth9kaDcwfh0Jbbbbh83JbbbbhcinasclfabadalaAz:cjjjbabhzcbh8Ecbh8Finaba8FcdtfhHcbheindnaAazaefydbgQcdtgEfydbgYaAaHaec;q1jjbfydbcdtfydbgXcdtgwfydbg8ASmbaCaXfRbbgLcv2aCaQfRbbgKfc;G1jjbfRbbg5aKcv2aLfg8Nc;G1jjbfRbbg8MVcFeGTmbdna8AaY9nmba8Nc:G1jjbfRbbcFeGmekaKcufhYdnaKaL9hmbaYcFeGce0mba8JaEfydbaX9hmekdndnaKclSmbaLcl9hmekdnaYcFeGce0mba8JaEfydbaX9hmdkaLcufcFeGce0mba8KawfydbaQ9hmekaDa8Ecx2fgKaXaQa8McFeGgYEBdlaKaQaXaYEBdbaKaYa5Gcb9hBdwa8Ecefh8Ekaeclfgecx9hmbkdna8Fcifg8Fad9pmbazcxfhza8EcifaS9nmekka8ETmdcbhLinaqaAaDaLcx2fgKydbgYcdtgzfydbc8S2fgeIdwa3aKydlg8Acx2fgXIdwg8WNaeIdzaXIdbg8UNaeIdaMgRaRMMa8WNaeIdlaXIdlgINaeIdCa8WNaeId3MgRaRMMaINaeIdba8UNaeIdxaINaeIdKMgRaRMMa8UNaeId8KMMM:lhRJbbbbJbbjZaeIdyg8R:va8RJbbbb9BEh8RdndnaKydwgEmbJFFuuh8YxekJbbbbJbbjZaqaAa8Acdtfydbc8S2fgeIdyg8S:va8SJbbbb9BEaeIdwa3aYcx2fgXIdwg8SNaeIdzaXIdbg8XNaeIdaMg8Ya8YMMa8SNaeIdlaXIdlg8YNaeIdCa8SNaeId3Mg8Sa8SMMa8YNaeIdba8XNaeIdxa8YNaeIdKMg8Sa8SMMa8XNaeId8KMMM:lNh8Yka8RaRNh80dna8LTmbavaYc8S2fgQIdwa8WNaQIdza8UNaQIdaMgRaRMMa8WNaQIdlaINaQIdCa8WNaQId3MgRaRMMaINaQIdba8UNaQIdxaINaQIdKMgRaRMMa8UNaQId8KMMMhRaga8Aa8L2gHcdtfhXaiaYa8L2gwcltfheaQIdyh8Sa8LhQinaXIdbg8Ra8Ra8SNaecxfIdba8WaecwfIdbNa8UaeIdbNaIaeclfIdbNMMMg8Ra8RM:tNaRMhRaXclfhXaeczfheaQcufgQmbkdndnaEmbJbbbbh8Rxekava8Ac8S2fgQIdwa3aYcx2fgeIdwg8UNaQIdzaeIdbgINaQIdaMg8Ra8RMMa8UNaQIdlaeIdlg8SNaQIdCa8UNaQId3Mg8Ra8RMMa8SNaQIdbaINaQIdxa8SNaQIdKMg8Ra8RMMaINaQId8KMMMh8RagawcdtfhXaiaHcltfheaQIdyh8Xa8LhQinaXIdbg8Wa8Wa8XNaecxfIdba8UaecwfIdbNaIaeIdbNa8SaeclfIdbNMMMg8Wa8WM:tNa8RMh8RaXclfhXaeczfheaQcufgQmbka8R:lh8Rka80aR:lMh80a8Ya8RMh8YaCaYfRbbcd9hmbdna8Ka8Ja8Jazfydba8ASEaaazfydbgHcdtfydbgzcu9hmbaaa8AcdtfydbhzkavaHc8S2fgQIdwa3azcx2fgeIdwg8WNaQIdzaeIdbg8UNaQIdaMgRaRMMa8WNaQIdlaeIdlgINaQIdCa8WNaQId3MgRaRMMaINaQIdba8UNaQIdxaINaQIdKMgRaRMMa8UNaQId8KMMMhRagaza8L2gwcdtfhXaiaHa8L2g8NcltfheaQIdyh8Sa8LhQinaXIdbg8Ra8Ra8SNaecxfIdba8WaecwfIdbNa8UaeIdbNaIaeclfIdbNMMMg8Ra8RM:tNaRMhRaXclfhXaeczfheaQcufgQmbkdndnaEmbJbbbbh8Rxekavazc8S2fgQIdwa3aHcx2fgeIdwg8UNaQIdzaeIdbgINaQIdaMg8Ra8RMMa8UNaQIdlaeIdlg8SNaQIdCa8UNaQId3Mg8Ra8RMMa8SNaQIdbaINaQIdxa8SNaQIdKMg8Ra8RMMaINaQId8KMMMh8Raga8NcdtfhXaiawcltfheaQIdyh8Xa8LhQinaXIdbg8Wa8Wa8XNaecxfIdba8UaecwfIdbNaIaeIdbNa8SaeclfIdbNMMMg8Wa8WM:tNa8RMh8RaXclfhXaeczfheaQcufgQmbka8R:lh8Rka80aR:lMh80a8Ya8RMh8YkaKa80a8Ya80a8Y9FgeEUdwaKa8AaYaeaETVgeEBdlaKaYa8AaeEBdbaLcefgLa8E9hmbkasc;Wbfcbcj;qbz:ojjjb8Aa0hea8EhXinasc;WbfaeydbcA4cF8FGgQcFAaQcFA6EcdtfgQaQydbcefBdbaecxfheaXcufgXmbkcbhecbhXinasc;WbfaefgQydbhKaQaXBdbaKaXfhXaeclfgecj;qb9hmbkcbhea0hXinasc;WbfaXydbcA4cF8FGgQcFAaQcFA6EcdtfgQaQydbgQcefBdbaraQcdtfaeBdbaXcxfhXa8Eaecefge9hmbkadak9RgQci9Uh9mdnalTmbcbheayhXinaXaeBdbaXclfhXalaecefge9hmbkkcbh9na9icbalz:ojjjbh8FaQcO9Uh9oa9mce4h9pasydwh9qcbh8Mcbh5dninaDara5cdtfydbcx2fg8NIdwgRa9c9Emea8Ma9m9pmeJFFuuh8Rdna9pa8E9pmbaDara9pcdtfydbcx2fIdwJbb;aZNh8RkdnaRa8R9ETmbaRac9ETmba8Ma9o0mdkdna8FaAa8NydlgHcdtg9rfydbgKfg9sRbba8FaAa8Nydbgzcdtg9tfydbgefg9uRbbVmbaCazfRbbh9vdnaTaecdtfgXclfydbgQaXydbgXSmbaQaX9RhYa3aKcx2fhLa3aecx2fhEa9qaXcitfhecbhXcehwdnindnayaeydbcdtfydbgQaKSmbayaeclfydbcdtfydbg8AaKSmbaQa8ASmba3a8Acx2fg8AIdba3aQcx2fgQIdbg8W:tgRaEIdlaQIdlg8U:tg8XNaEIdba8W:tg8Ya8AIdla8U:tg8RN:tgIaRaLIdla8U:tg80NaLIdba8W:tg81a8RN:tg8UNa8RaEIdwaQIdwg8S:tg8ZNa8Xa8AIdwa8S:tg8WN:tg8Xa8RaLIdwa8S:tgBNa80a8WN:tg8RNa8Wa8YNa8ZaRN:tg8Sa8Wa81NaBaRN:tgRNMMaIaINa8Xa8XNa8Sa8SNMMa8Ua8UNa8Ra8RNaRaRNMMN:rJbbj8:N9FmdkaecwfheaXcefgXaY6hwaYaX9hmbkkawceGTmba9pcefh9pxekdndndndna9vc9:fPdebdkazheinayaecdtgefaHBdbaaaefydbgeaz9hmbxikkdna8Ka8Ja8Ja9tfydbaHSEaaa9tfydbgzcdtfydbgecu9hmbaaa9rfydbhekaya9tfaHBdbaehHkayazcdtfaHBdbka9uce86bba9sce86bba8NIdwgRacacaR9DEhca9ncefh9ncecda9vceSEa8Mfh8Mka5cefg5a8E9hmbkka9nTmddnalTmbcbh8AcbhEindnayaEcdtgefydbgQaESmbaAaQcdtfydbhzdnaEaAaefydb9hgHmbaqazc8S2fgeaqaEc8S2fgXIdbaeIdbMUdbaeaXIdlaeIdlMUdlaeaXIdwaeIdwMUdwaeaXIdxaeIdxMUdxaeaXIdzaeIdzMUdzaeaXIdCaeIdCMUdCaeaXIdKaeIdKMUdKaeaXId3aeId3MUd3aeaXIdaaeIdaMUdaaeaXId8KaeId8KMUd8KaeaXIdyaeIdyMUdyka8LTmbavaQc8S2fgeavaEc8S2gwfgXIdbaeIdbMUdbaeaXIdlaeIdlMUdlaeaXIdwaeIdwMUdwaeaXIdxaeIdxMUdxaeaXIdzaeIdzMUdzaeaXIdCaeIdCMUdCaeaXIdKaeIdKMUdKaeaXId3aeId3MUd3aeaXIdaaeIdaMUdaaeaXId8KaeId8KMUd8KaeaXIdyaeIdyMUdya9kaQ2hLaihXa8LhKinaXaLfgeaXa8AfgQIdbaeIdbMUdbaeclfgYaQclfIdbaYIdbMUdbaecwfgYaQcwfIdbaYIdbMUdbaecxfgeaQcxfIdbaeIdbMUdbaXczfhXaKcufgKmbkaHmbJbbbbJbbjZaqawfgeIdygR:vaRJbbbb9BEaeIdwa3azcx2fgXIdwgRNaeIdzaXIdbg8RNaeIdaMg8Wa8WMMaRNaeIdlaXIdlg8WNaeIdCaRNaeId3MgRaRMMa8WNaeIdba8RNaeIdxa8WNaeIdKMgRaRMMa8RNaeId8KMMM:lNgRa83a83aR9DEh83ka8Aa9kfh8AaEcefgEal9hmbkcbhXa8JheindnaeydbgQcuSmbdnaXayaQcdtgKfydbgQ9hmbcuhQa8JaKfydbgKcuSmbayaKcdtfydbhQkaeaQBdbkaeclfhealaXcefgX9hmbkcbhXa8KheindnaeydbgQcuSmbdnaXayaQcdtgKfydbgQ9hmbcuhQa8KaKfydbgKcuSmbayaKcdtfydbhQkaeaQBdbkaeclfhealaXcefgX9hmbkka83aca8LEh83cbhKabhecbhYindnayaeydbcdtfydbgXayaeclfydbcdtfydbgQSmbaXayaecwfydbcdtfydbg8ASmbaQa8ASmbabaKcdtfgLaXBdbaLcwfa8ABdbaLclfaQBdbaKcifhKkaecxfheaYcifgYad6mbkdndnaJTmbaKak9nmba8Va839FTmbcbhdabhecbhXindnaoahaeydbgQcdtfydbcdtfIdba839ETmbabadcdtfgYaQBdbaYclfaeclfydbBdbaYcwfaecwfydbBdbadcifhdkaecxfheaXcifgXaK6mbkJFFuuh8Va9eTmeaohea9ehXJFFuuhRinaeIdbg8RaRaRa8R9EEg8WaRa8Ra839EgQEhRa8Wa8VaQEh8VaeclfheaXcufgXmbxdkkaKhdkadak0mbxdkkasclfabadalaAz:cjjjbkdndnadak0mbadhXxekdnaJmbadhXxekdna8Va9c9FmbadhXxekina8VJbb;aZNgRa9caRa9c9DEh8WJbbbbhRdna9eTmbaohea9ehAinaeIdbg8RaRa8Ra8W9FEaRa8RaR9EEhRaeclfheaAcufgAmbkkcbhXabhecbhAindnaoahaeydbgQcdtfydbcdtfIdba8W9ETmbabaXcdtfgKaQBdbaKclfaeclfydbBdbaKcwfaecwfydbBdbaXcifhXkaecxfheaAcifgAad6mbkJFFuuh8Vdna9eTmbaohea9ehAJFFuuh8RinaeIdbg8Ua8Ra8Ra8U9EEgIa8Ra8Ua8W9EgQEh8RaIa8VaQEh8VaeclfheaAcufgAmbkkdnaXad9hmbadhXxdkaRacacaR9DEhcaXak9nmeaXhda8Va9c9FmbkkdnamcjjjjlGTmbaOmbaXTmbcbh8AabheinaCaeydbgKfRbbc3thLaecwfgEydbhAdndna8JaKcdtgHfydbaeclfgzydbgQSmbcbhYa8KaQcdtfydbaK9hmekcjjjj94hYkaeaLaYVaKVBdbaCaQfRbbc3thLdndna8JaQcdtfydbaASmbcbhYa8KaAcdtfydbaQ9hmekcjjjj94hYkazaLaYVaQVBdbaCaAfRbbc3thYdndna8JaAcdtfydbaKSmbcbhQa8KaHfydbaA9hmekcjjjj94hQkaEaYaQVaAVBdbaecxfhea8Acifg8AaX6mbkkdnaOTmbaXTmbaXheinabaOabydbcdtfydbBdbabclfhbaecufgembkkdnaPTmbaPaUac:rNUdbka9hcdtascxffcxfhednina6Tmeaeydbcbyd1:jjjbH:bjjjbbaec98fhea6cufh6xbkkasc;W;qbf8KjjjjbaXk;Yieouabydlhvabydbclfcbaicdtz:ojjjbhoadci9UhrdnadTmbdnalTmbaehwadhDinaoalawydbcdtfydbcdtfgqaqydbcefBdbawclfhwaDcufgDmbxdkkaehwadhDinaoawydbcdtfgqaqydbcefBdbawclfhwaDcufgDmbkkdnaiTmbcbhDaohwinawydbhqawaDBdbawclfhwaqaDfhDaicufgimbkkdnadci6mbinaecwfydbhwaeclfydbhDaeydbhidnalTmbalawcdtfydbhwalaDcdtfydbhDalaicdtfydbhikavaoaicdtfgqydbcitfaDBdbavaqydbcitfawBdlaqaqydbcefBdbavaoaDcdtfgqydbcitfawBdbavaqydbcitfaiBdlaqaqydbcefBdbavaoawcdtfgwydbcitfaiBdbavawydbcitfaDBdlawawydbcefBdbaecxfhearcufgrmbkkabydbcbBdbk:todDue99aicd4aifhrcehwinawgDcethwaDar6mbkcuaDcdtgraDcFFFFi0Ecbyd:m:jjjbHjjjjbbhwaoaoyd9GgqcefBd9GaoaqcdtfawBdbawcFearz:ojjjbhkdnaiTmbalcd4hlaDcufhxcbhminamhDdnavTmbavamcdtfydbhDkcbadaDal2cdtfgDydlgwawcjjjj94SEgwcH4aw7c:F:b:DD2cbaDydbgwawcjjjj94SEgwcH4aw7c;D;O:B8J27cbaDydwgDaDcjjjj94SEgDcH4aD7c:3F;N8N27axGhwamcdthPdndndnavTmbakawcdtfgrydbgDcuSmeadavaPfydbal2cdtfgsIdbhzcehqinaqhrdnadavaDcdtfydbal2cdtfgqIdbaz9CmbaqIdlasIdl9CmbaqIdwasIdw9BmlkarcefhqakawarfaxGgwcdtfgrydbgDcu9hmbxdkkakawcdtfgrydbgDcuSmbadamal2cdtfgsIdbhzcehqinaqhrdnadaDal2cdtfgqIdbaz9CmbaqIdlasIdl9CmbaqIdwasIdw9BmikarcefhqakawarfaxGgwcdtfgrydbgDcu9hmbkkaramBdbamhDkabaPfaDBdbamcefgmai9hmbkkakcbyd1:jjjbH:bjjjbbaoaoyd9GcufBd9GdnaeTmbaiTmbcbhDaehwinawaDBdbawclfhwaiaDcefgD9hmbkcbhDaehwindnaDabydbgrSmbawaearcdtfgrydbBdbaraDBdbkawclfhwabclfhbaiaDcefgD9hmbkkk;Qodvuv998Jjjjjbca9Rgvczfcwfcbyd11jjbBdbavcb8Pdj1jjb83izavcwfcbydN1jjbBdbavcb8Pd:m1jjb83ibdnadTmbaicd4hodnabmbdnalTmbcbhrinaealarcdtfydbao2cdtfhwcbhiinavczfaifgDawaifIdbgqaDIdbgkakaq9EEUdbavaifgDaqaDIdbgkakaq9DEUdbaiclfgicx9hmbkarcefgrad9hmbxikkaocdthrcbhwincbhiinavczfaifgDaeaifIdbgqaDIdbgkakaq9EEUdbavaifgDaqaDIdbgkakaq9DEUdbaiclfgicx9hmbkaearfheawcefgwad9hmbxdkkdnalTmbcbhrinabarcx2fgiaealarcdtfydbao2cdtfgwIdbUdbaiawIdlUdlaiawIdwUdwcbhiinavczfaifgDawaifIdbgqaDIdbgkakaq9EEUdbavaifgDaqaDIdbgkakaq9DEUdbaiclfgicx9hmbkarcefgrad9hmbxdkkaocdthlcbhraehwinabarcx2fgiaearao2cdtfgDIdbUdbaiaDIdlUdlaiaDIdwUdwcbhiinavczfaifgDawaifIdbgqaDIdbgkakaq9EEUdbavaifgDaqaDIdbgkakaq9DEUdbaiclfgicx9hmbkawalfhwarcefgrad9hmbkkJbbbbavIdbavIdzgk:tgqaqJbbbb9DEgqavIdlavIdCgx:tgmamaq9DEgqavIdwavIdKgm:tgPaPaq9DEhPdnabTmbadTmbJbbbbJbbjZaP:vaPJbbbb9BEhqinabaqabIdbak:tNUdbabclfgvaqavIdbax:tNUdbabcwfgvaqavIdbam:tNUdbabcxfhbadcufgdmbkkaPk:ZlewudnaeTmbcbhvabhoinaoavBdbaoclfhoaeavcefgv9hmbkkdnaiTmbcbhrinadarcdtfhwcbhDinalawaDcdtgvc;a1jjbfydbcdtfydbcdtfydbhodnabalawavfydbcdtfydbgqcdtfgkydbgvaqSmbinakabavgqcdtfgxydbgvBdbaxhkaqav9hmbkkdnabaocdtfgkydbgvaoSmbinakabavgocdtfgxydbgvBdbaxhkaoav9hmbkkdnaqaoSmbabaqaoaqao0Ecdtfaqaoaqao6EBdbkaDcefgDci9hmbkarcifgrai6mbkkdnaembcbskcbhxindnalaxcdtgvfydbax9hmbaxhodnabavfgDydbgvaxSmbaDhqinaqabavgocdtfgkydbgvBdbakhqaoav9hmbkkaDaoBdbkaxcefgxae9hmbkcbhvabhocbhkindndnavalydbgq9hmbdnavaoydbgq9hmbaoakBdbakcefhkxdkaoabaqcdtfydbBdbxekaoabaqcdtfydbBdbkaoclfhoalclfhlaeavcefgv9hmbkakk;Jiilud99duabcbaecltz:ojjjbhvdnalTmbadhoaihralhwinarcwfIdbhDarclfIdbhqavaoydbcltfgkarIdbakIdbMUdbakclfgxaqaxIdbMUdbakcwfgxaDaxIdbMUdbakcxfgkakIdbJbbjZMUdbaoclfhoarcxfhrawcufgwmbkkdnaeTmbavhraehkinarcxfgoIdbhDaocbBdbararIdbJbbbbJbbjZaD:vaDJbbbb9BEgDNUdbarclfgoaDaoIdbNUdbarcwfgoaDaoIdbNUdbarczfhrakcufgkmbkkdnalTmbinavadydbcltfgrcxfgkaicwfIdbarcwfIdb:tgDaDNaiIdbarIdb:tgDaDNaiclfIdbarclfIdb:tgDaDNMMgDakIdbgqaqaD9DEUdbadclfhdaicxfhialcufglmbkkdnaeTmbavcxfhrinabarIdbUdbarczfhrabclfhbaecufgembkkk8MbabaeadaialavcbcbcbcbcbaoarawaDz:bjjjbk8MbabaeadaialavaoarawaDaqakaxamaPz:bjjjbk:DCoDud99rue99iul998Jjjjjbc;Wb9Rgw8KjjjjbdndnarmbcbhDxekawcxfcbc;Kbz:ojjjb8Aawcuadcx2adc;v:Q;v:Qe0Ecbyd:m:jjjbHjjjjbbgqBdxawceBd2aqaeadaicbz:ejjjb8AawcuadcdtadcFFFFi0Egkcbyd:m:jjjbHjjjjbbgxBdzawcdBd2adcd4adfhmceheinaegicetheaiam6mbkcbhPawcuaicdtgsaicFFFFi0Ecbyd:m:jjjbHjjjjbbgzBdCawciBd2dndnar:ZgH:rJbbbZMgO:lJbbb9p9DTmbaO:Ohexekcjjjj94hekaicufhAc:bwhmcbhCadhXcbhQinaChLaeamgKcufaeaK9iEaPgDcefaeaD9kEhYdndnadTmbaYcuf:YhOaqhiaxheadhmindndnaiIdbaONJbbbZMg8A:lJbbb9p9DTmba8A:OhCxekcjjjj94hCkaCcCthCdndnaiclfIdbaONJbbbZMg8A:lJbbb9p9DTmba8A:OhExekcjjjj94hEkaEcqtaCVhCdndnaicwfIdbaONJbbbZMg8A:lJbbb9p9DTmba8A:OhExekcjjjj94hEkaeaCaEVBdbaicxfhiaeclfheamcufgmmbkazcFeasz:ojjjbh3cbh5cbhPindna3axaPcdtfydbgCcm4aC7c:v;t;h;Ev2gics4ai7aAGgmcdtfgEydbgecuSmbaeaCSmbcehiina3amaifaAGgmcdtfgEydbgecuSmeaicefhiaeaC9hmbkkaEaCBdba5aecuSfh5aPcefgPad9hmbxdkkazcFeasz:ojjjb8Acbh5kaDaYa5ar0giEhPaLa5aiEhCdna5arSmbaYaKaiEgmaP9Rcd9imbdndnaQcl0mbdnaX:ZgOaL:Zg8A:taY:Yg8EaD:Y:tg8Fa8EaK:Y:tgaa5:ZghaH:tNNNaOaH:taaNa8Aah:tNa8AaH:ta8FNahaO:tNM:va8EMJbbbZMgO:lJbbb9p9DTmbaO:Ohexdkcjjjj94hexekaPamfcd9Theka5aXaiEhXaQcefgQcs9hmekkdndnaCmbcihicbhDxekcbhiawakcbyd:m:jjjbHjjjjbbg5BdKawclBd2aPcuf:Yh8AdndnadTmbaqhiaxheadhmindndnaiIdba8ANJbbbZMgO:lJbbb9p9DTmbaO:OhCxekcjjjj94hCkaCcCthCdndnaiclfIdba8ANJbbbZMgO:lJbbb9p9DTmbaO:OhExekcjjjj94hEkaEcqtaCVhCdndnaicwfIdba8ANJbbbZMgO:lJbbb9p9DTmbaO:OhExekcjjjj94hEkaeaCaEVBdbaicxfhiaeclfheamcufgmmbkazcFeasz:ojjjbh3cbhDcbhYindndndna3axaYcdtgKfydbgCcm4aC7c:v;t;h;Ev2gics4ai7aAGgmcdtfgEydbgecuSmbcehiinaxaecdtgefydbaCSmdamaifheaicefhia3aeaAGgmcdtfgEydbgecu9hmbkkaEaYBdbaDhiaDcefhDxeka5aefydbhika5aKfaiBdbaYcefgYad9hmbkcuaDc32giaDc;j:KM;jb0EhexekazcFeasz:ojjjb8AcbhDcbhekawaecbyd:m:jjjbHjjjjbbgeBd3awcvBd2aecbaiz:ojjjbhEavcd4hKdnadTmbdnalTmbaKcdth3a5hCaqhealhmadhAinaEaCydbc32fgiaeIdbaiIdbMUdbaiaeclfIdbaiIdlMUdlaiaecwfIdbaiIdwMUdwaiamIdbaiIdxMUdxaiamclfIdbaiIdzMUdzaiamcwfIdbaiIdCMUdCaiaiIdKJbbjZMUdKaCclfhCaecxfheama3fhmaAcufgAmbxdkka5hmaqheadhCinaEamydbc32fgiaeIdbaiIdbMUdbaiaeclfIdbaiIdlMUdlaiaecwfIdbaiIdwMUdwaiaiIdxJbbbbMUdxaiaiIdzJbbbbMUdzaiaiIdCJbbbbMUdCaiaiIdKJbbjZMUdKamclfhmaecxfheaCcufgCmbkkdnaDTmbaEhiaDheinaiaiIdbJbbbbJbbjZaicKfIdbgO:vaOJbbbb9BEgONUdbaiclfgmaOamIdbNUdbaicwfgmaOamIdbNUdbaicxfgmaOamIdbNUdbaiczfgmaOamIdbNUdbaicCfgmaOamIdbNUdbaic3fhiaecufgembkkcbhCawcuaDcdtgYaDcFFFFi0Egicbyd:m:jjjbHjjjjbbgeBdaawcoBd2awaicbyd:m:jjjbHjjjjbbg3Bd8KaecFeaYz:ojjjbhxdnadTmbJbbjZJbbjZa8A:vaPceSEaoNgOaONh8AaKcdthPalheina8Aaec;81jjbalEgmIdwaEa5ydbgAc32fgiIdC:tgOaONamIdbaiIdx:tgOaONamIdlaiIdz:tgOaONMMNaqcwfIdbaiIdw:tgOaONaqIdbaiIdb:tgOaONaqclfIdbaiIdl:tgOaONMMMhOdndnaxaAcdtgifgmydbcuSmba3aifIdbaO9ETmekamaCBdba3aifaOUdbka5clfh5aqcxfhqaeaPfheadaCcefgC9hmbkkabaxaYz:njjjb8AcrhikaicdthiinaiTmeaic98fgiawcxffydbcbyd1:jjjbH:bjjjbbxbkkawc;Wbf8KjjjjbaDk:Ydidui99ducbhi8Jjjjjbca9Rglczfcwfcbyd11jjbBdbalcb8Pdj1jjb83izalcwfcbydN1jjbBdbalcb8Pd:m1jjb83ibdndnaembJbbjFhvJbbjFhoJbbjFhrxekadcd4cdthwincbhdinalczfadfgDabadfIdbgvaDIdbgoaoav9EEUdbaladfgDavaDIdbgoaoav9DEUdbadclfgdcx9hmbkabawfhbaicefgiae9hmbkalIdwalIdK:thralIdlalIdC:thoalIdbalIdz:thvkJbbbbavavJbbbb9DEgvaoaoav9DEgvararav9DEk9DeeuabcFeaicdtz:ojjjbhlcbhbdnadTmbindnalaeydbcdtfgiydbcu9hmbaiabBdbabcefhbkaeclfheadcufgdmbkkabk9teiucbcbyd:q:jjjbgeabcifc98GfgbBd:q:jjjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik;teeeudndnaeabVciGTmbabhixekdndnadcz9pmbabhixekabhiinaiaeydbBdbaiaeydlBdlaiaeydwBdwaiaeydxBdxaeczfheaiczfhiadc9Wfgdcs0mbkkadcl6mbinaiaeydbBdbaeclfheaiclfhiadc98fgdci0mbkkdnadTmbinaiaeRbb86bbaicefhiaecefheadcufgdmbkkabk:3eedudndnabciGTmbabhixekaecFeGc:b:c:ew2hldndnadcz9pmbabhixekabhiinaialBdxaialBdwaialBdlaialBdbaiczfhiadc9Wfgdcs0mbkkadcl6mbinaialBdbaiclfhiadc98fgdci0mbkkdnadTmbinaiae86bbaicefhiadcufgdmbkkabk9teiucbcbyd:q:jjjbgeabcrfc94GfgbBd:q:jjjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik9:eiuZbhedndncbyd:q:jjjbgdaecztgi9nmbcuheadai9RcFFifcz4nbcuSmekadhekcbabae9Rcifc98Gcbyd:q:jjjbfgdBd:q:jjjbdnadZbcztge9nmbadae9RcFFifcz4nb8Akkk:Iedbcjwk1eFFuuFFuuFFuuFFuFFFuFFFuFbbbbbbbbeeebeebebbeeebebbbbbebebbbbbbbbbebbbdbbbbbbbebbbebbbdbbbbbbbbbbbeeeeebebbebbebebbbeebbbbbbbbbbbbbbbbbbbbbc1Dkxebbbdbbb:GNbb",Q=new Uint8Array([32,0,65,2,1,106,34,33,3,128,11,4,13,64,6,253,10,7,15,116,127,5,8,12,40,16,19,54,20,9,27,255,113,17,42,67,24,23,146,148,18,14,22,45,70,69,56,114,101,21,25,63,75,136,108,28,118,29,73,115]);if(typeof WebAssembly!=="object")return{supported:!1};var B,Y=WebAssembly.instantiate(J(A),{}).then(function(K){B=K.instance,B.exports.__wasm_call_ctors()});function J(K){var I=new Uint8Array(K.length);for(var V=0;V96?H-97:H>64?H-39:H+4}var D=0;for(var V=0;V=3),C(H>=0&&H<=K.length),C(H%3==0),C(D>=0);var z=0;for(var M=0;M<(L?L.length:0);++M)C(L[M]in E),z|=E[L[M]];var N=K.BYTES_PER_ELEMENT==4?K:new Uint32Array(K),q=W(B.exports.meshopt_simplify,N,K.length,I,I.length/V,V*4,H,D,z);return q[0]=K instanceof Uint32Array?q[0]:new K.constructor(q[0]),q},simplifyWithAttributes:function(K,I,V,H,D,L,z,M,N,q){C(K instanceof Uint32Array||K instanceof Int32Array||K instanceof Uint16Array||K instanceof Int16Array),C(K.length%3==0),C(I instanceof Float32Array),C(I.length%V==0),C(V>=3),C(H instanceof Float32Array),C(H.length%D==0),C(D>=0),C(z==null||z instanceof Uint8Array),C(z==null||z.length==I.length/V),C(M>=0&&M<=K.length),C(M%3==0),C(N>=0),C(Array.isArray(L)),C(D>=L.length),C(L.length<=32);for(var w=0;w=0);var P=0;for(var w=0;w<(q?q.length:0);++w)C(q[w]in E),P|=E[q[w]];var _=K.BYTES_PER_ELEMENT==4?K:new Uint32Array(K),O=Z(B.exports.meshopt_simplifyWithAttributes,_,K.length,I,I.length/V,V*4,H,D*4,new Float32Array(L),z?new Uint8Array(z):null,M,N,P);return O[0]=K instanceof Uint32Array?O[0]:new K.constructor(O[0]),O},getScale:function(K,I){return C(K instanceof Float32Array),C(K.length%I==0),C(I>=3),U(B.exports.meshopt_simplifyScale,K,K.length/I,I*4)},simplifyPoints:function(K,I,V,H,D,L){if(C(K instanceof Float32Array),C(K.length%I==0),C(I>=3),C(V>=0&&V<=K.length/I),H)return C(H instanceof Float32Array),C(H.length%D==0),C(D>=3),C(K.length/I==H.length/D),$(B.exports.meshopt_simplifyPoints,K,K.length/I,I*4,H,D*4,L,V);else return $(B.exports.meshopt_simplifyPoints,K,K.length/I,I*4,void 0,0,0,V)}}}();if(typeof YH==="object"&&typeof Vg==="object")Vg.exports=L3;else if(typeof define==="function"&&define.amd)define([],function(){return L3});else if(typeof YH==="object")YH.MeshoptSimplifier=L3;else(typeof self<"u"?self:YH).MeshoptSimplifier=L3});var LCA=R((JH,Ig)=>{var q3=function(){var A="b9H79TebbbeVx9Geueu9Geub9Gbb9Giuuueu9Gmuuuuuuuuuuu9999eu9Gvuuuuueu9Gwuuuuuuuub9Gxuuuuuuuuuuuueu9Gkuuuuuuuuuu99eu9Gouuuuuub9Gruuuuuuub9GluuuubiOHdilvorwDqqkbiibeilve9Weiiviebeoweuec;G:Odkr:Yewo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bb8A9TW79O9V9Wt9F9I919P29K9nW79O2Wt79c9V919U9KbeX9TW79O9V9Wt9F9I919P29K9nW79O2Wt7bo39TW79O9V9Wt9F9J9V9T9W91tWJ2917tWV9c9V919U9K7br39TW79O9V9Wt9F9J9V9T9W91tW9nW79O2Wt9c9V919U9K7bDL9TW79O9V9Wt9F9V9Wt9P9T9P96W9nW79O2Wtbql79IV9RbkDwebcekdsPq;Q9BHdbkIbabaec9:fgefcufae9Ugeabci9Uadfcufad9Ugbaeab0Ek:w8KDPue99eux99dui99euo99iu8Jjjjjbc:WD9Rgm8KjjjjbdndnalmbcbhPxekamc:Cwfcbc;Kbz:njjjb8Adndnalcb9imbaoal9nmbamcuaocdtaocFFFFi0Egscbyd;y1jjbHjjjjbbgzBd:CwamceBd;8wamascbyd;y1jjbHjjjjbbgHBd:GwamcdBd;8wamcualcdtalcFFFFi0Ecbyd;y1jjbHjjjjbbgOBd:KwamciBd;8waihsalhAinazasydbcdtfcbBdbasclfhsaAcufgAmbkaihsalhAinazasydbcdtfgCaCydbcefBdbasclfhsaAcufgAmbkaihsalhCcbhXindnazasydbcdtgQfgAydbcb9imbaHaQfaXBdbaAaAydbgQcjjjj94VBdbaQaXfhXkasclfhsaCcufgCmbkalci9UhLdnalci6mbcbhsaihAinaAcwfydbhCaAclfydbhXaHaAydbcdtfgQaQydbgQcefBdbaOaQcdtfasBdbaHaXcdtfgXaXydbgXcefBdbaOaXcdtfasBdbaHaCcdtfgCaCydbgCcefBdbaOaCcdtfasBdbaAcxfhAaLascefgs9hmbkkaihsalhAindnazasydbcdtgCfgXydbgQcu9kmbaXaQcFFFFrGgQBdbaHaCfgCaCydbaQ9RBdbkasclfhsaAcufgAmbxdkkamcuaocdtgsaocFFFFi0EgAcbyd;y1jjbHjjjjbbgzBd:CwamceBd;8wamaAcbyd;y1jjbHjjjjbbgHBd:GwamcdBd;8wamcualcdtalcFFFFi0Ecbyd;y1jjbHjjjjbbgOBd:KwamciBd;8wazcbasz:njjjbhXalci9UhLaihsalhAinaXasydbcdtfgCaCydbcefBdbasclfhsaAcufgAmbkdnaoTmbcbhsaHhAaXhCaohQinaAasBdbaAclfhAaCydbasfhsaCclfhCaQcufgQmbkkdnalci6mbcbhsaihAinaAcwfydbhCaAclfydbhQaHaAydbcdtfgKaKydbgKcefBdbaOaKcdtfasBdbaHaQcdtfgQaQydbgQcefBdbaOaQcdtfasBdbaHaCcdtfgCaCydbgCcefBdbaOaCcdtfasBdbaAcxfhAaLascefgs9hmbkkaoTmbcbhsaohAinaHasfgCaCydbaXasfydb9RBdbasclfhsaAcufgAmbkkamaLcbyd;y1jjbHjjjjbbgsBd:OwamclBd;8wascbaLz:njjjbhYamcuaLcK2alcjjjjd0Ecbyd;y1jjbHjjjjbbg8ABd:SwamcvBd;8wJbbbbhEdnalci6g3mbarcd4hKaihAa8AhsaLhrJbbbbh5inavaAclfydbaK2cdtfgCIdlh8EavaAydbaK2cdtfgXIdlhEavaAcwfydbaK2cdtfgQIdlh8FaCIdwhaaXIdwhhaQIdwhgasaCIdbg8JaXIdbg8KMaQIdbg8LMJbbnn:vUdbasclfaXIdlaCIdlMaQIdlMJbbnn:vUdbaQIdwh8MaCIdwh8NaXIdwhyascxfa8EaE:tg8Eagah:tggNa8FaE:tg8Faaah:tgaN:tgEJbbbbJbbjZa8Ja8K:tg8Ja8FNa8La8K:tg8Ka8EN:tghahNaEaENaaa8KNaga8JN:tgEaENMM:rg8K:va8KJbbbb9BEg8ENUdbasczfaEa8ENUdbascCfaha8ENUdbascwfa8Maya8NMMJbbnn:vUdba5a8KMh5aAcxfhAascKfhsarcufgrmbka5aL:Z:vJbbbZNhEkamcuaLcdtalcFFFF970Ecbyd;y1jjbHjjjjbbgCBd:WwamcoBd;8waEaq:ZNhEdna3mbcbhsaChAinaAasBdbaAclfhAaLascefgs9hmbkkaE:rhhcuh8PamcuaLcltalcFFFFd0Ecbyd;y1jjbHjjjjbbgIBd:0wamcrBd;8wcbaIa8AaCaLz:djjjb8AJFFuuhyJFFuuh8RJFFuuh8Sdnalci6gXmbJFFuuh8Sa8AhsaLhAJFFuuh8RJFFuuhyinascwfIdbgEayayaE9EEhyasclfIdbgEa8Ra8RaE9EEh8RasIdbgEa8Sa8SaE9EEh8SascKfhsaAcufgAmbkkahJbbbZNhgamaocetgscuaocu9kEcbyd;y1jjbHjjjjbbgABd:4waAcFeasz:njjjbhCdnaXmbcbhAJFFuuhEa8Ahscuh8PinascwfIdbay:tghahNasIdba8S:tghahNasclfIdba8R:tghahNMM:rghaEa8PcuSahaE9DVgXEhEaAa8PaXEh8PascKfhsaLaAcefgA9hmbkkamczfcbcjwz:njjjb8Aamcwf9cb83ibam9cb83ibagaxNhRJbbjZak:th8Ncbh8UJbbbbh8VJbbbbh8WJbbbbh8XJbbbbh8YJbbbbh8ZJbbbbh80cbh81cbhPinJbbbbhEdna8UTmbJbbjZa8U:Z:vhEkJbbbbhhdna80a80Na8Ya8YNa8Za8ZNMMg8KJbbbb9BmbJbbjZa8K:r:vhhka8XaENh5a8WaENh8Fa8VaENhaa8PhQdndndndndna8UaPVTmbamydwgBTmea80ahNh8Ja8ZahNh8La8YahNh8Maeamydbcdtfh83cbh3JFFuuhEcvhXcuhQindnaza83a3cdtfydbcdtgsfydbgvTmbaOaHasfydbcdtfhAindndnaCaiaAydbgKcx2fgsclfydbgrcetf8Vebcs4aCasydbgLcetf8Vebcs4faCascwfydbglcetf8Vebcs4fgombcbhsxekcehsazaLcdtfydbgLceSmbcehsazarcdtfydbgrceSmbcehsazalcdtfydbglceSmbdnarcdSaLcdSfalcdSfcd6mbaocefhsxekaocdfhskdnasaX9kmba8AaKcK2fgLIdwa5:thhaLIdla8F:th8KaLIdbaa:th8EdndnakJbbbb9DTmba8E:lg8Ea8K:lg8Ka8Ea8K9EEg8Kah:lgha8Kah9EEag:vJbbjZMhhxekahahNa8Ea8ENa8Ka8KNMM:rag:va8NNJbbjZMJ9VO:d86JbbjZaLIdCa8JNaLIdxa8MNa8LaLIdzNMMakN:tghahJ9VO:d869DENhhkaKaQasaX6ahaE9DVgLEhQasaXaLEhXahaEaLEhEkaAclfhAavcufgvmbkka3cefg3aB9hmbkkaQcu9hmekama5Ud:ODama8FUd:KDamaaUd:GDamcuBd:qDamcFFF;7rBdjDaIcba8AaYamc:GDfakJbbbb9Damc:qDfamcjDfz:ejjjbamyd:qDhQdndnaxJbbbb9ETmba8UaD6mbaQcuSmeceh3amIdjDaR9EmixdkaQcu9hmekdna8UTmbdnamydlgza8Uci2fgsciGTmbadasfcba8Uazcu7fciGcefz:njjjb8AkabaPcltfgzam8Pib83dbazcwfamcwf8Pib83dbaPcefhPkc3hzinazc98Smvamc:Cwfazfydbcbyd;u1jjbH:bjjjbbazc98fhzxbkkcbh3a8Uaq9pmbamydwaCaiaQcx2fgsydbcetf8Vebcs4aCascwfydbcetf8Vebcs4faCasclfydbcetf8Vebcs4ffaw9nmekcbhscbhAdna81TmbcbhAamczfhXinamczfaAcdtfaXydbgLBdbaXclfhXaAaYaLfRbbTfhAa81cufg81mbkkamydwhlamydbhXam9cu83i:GDam9cu83i:ODam9cu83i:qDam9cu83i:yDaAc;8eaAclfc:bd6Eh81inamcjDfasfcFFF;7rBdbasclfgscz9hmbka81cdthBdnalTmbaeaXcdtfhocbhrindnazaoarcdtfydbcdtgsfydbgvTmbaOaHasfydbcdtfhAcuhLcuhsinazaiaAydbgKcx2fgXclfydbcdtfydbazaXydbcdtfydbfazaXcwfydbcdtfydbfgXasaXas6gXEhsaKaLaXEhLaAclfhAavcufgvmbkaLcuSmba8AaLcK2fgAIdway:tgEaENaAIdba8S:tgEaENaAIdla8R:tgEaENMM:rhEcbhAindndnasamc:qDfaAfgvydbgX6mbasaX9hmeaEamcjDfaAfIdb9FTmekavasBdbamc:GDfaAfaLBdbamcjDfaAfaEUdbxdkaAclfgAcz9hmbkkarcefgral9hmbkkamczfaBfhLcbhscbhAindnamc:GDfasfydbgXcuSmbaLaAcdtfaXBdbaAcefhAkasclfgscz9hmbkaAa81fg81TmbJFFuuhhcuhKamczfhsa81hvcuhLina8AasydbgXcK2fgAIdway:tgEaENaAIdba8S:tgEaENaAIdla8R:tgEaENMM:rhEdndnazaiaXcx2fgAclfydbcdtfydbazaAydbcdtfydbfazaAcwfydbcdtfydbfgAaL6mbaAaL9hmeaEah9DTmekaEhhaAhLaXhKkasclfhsavcufgvmbkaKcuSmbaKhQkdnamaiaQcx2fgrydbarclfydbarcwfydbaCabaeadaPawaqa3z:fjjjbTmbaPcefhPJbbbbh8VJbbbbh8WJbbbbh8XJbbbbh8YJbbbbh8ZJbbbbh80kcbhXinaOaHaraXcdtfydbcdtgAfydbcdtfgKhsazaAfgvydbgLhAdnaLTmbdninasydbaQSmeasclfhsaAcufgATmdxbkkasaKaLcdtfc98fydbBdbavavydbcufBdbkaXcefgXci9hmbka8AaQcK2fgsIdbhEasIdlhhasIdwh8KasIdxh8EasIdzh5asIdCh8FaYaQfce86bba80a8FMh80a8Za5Mh8Za8Ya8EMh8Ya8Xa8KMh8Xa8WahMh8Wa8VaEMh8Vamydxh8Uxbkkamc:WDf8KjjjjbaPk;Vvivuv99lu8Jjjjjbca9Rgv8Kjjjjbdndnalcw0mbaiydbhoaeabcitfgralcdtcufBdlaraoBdbdnalcd6mbaiclfhoalcufhwarcxfhrinaoydbhDarcuBdbarc98faDBdbarcwfhraoclfhoawcufgwmbkkalabfhrxekcbhDavczfcwfcbBdbav9cb83izavcwfcbBdbav9cb83ibJbbjZhqJbbjZhkinadaiaDcdtfydbcK2fhwcbhrinavczfarfgoawarfIdbgxaoIdbgm:tgPakNamMgmUdbavarfgoaPaxam:tNaoIdbMUdbarclfgrcx9hmbkJbbjZaqJbbjZMgq:vhkaDcefgDal9hmbkcbhoadcbcecdavIdlgxavIdwgm9GEgravIdbgPam9GEaraPax9GEgscdtgrfhzavczfarfIdbhxaihralhwinaiaocdtfgDydbhHaDarydbgOBdbaraHBdbarclfhraoazaOcK2fIdbax9Dfhoawcufgwmbkaeabcitfhrdndnaocv6mbaoalc98f6mekaraiydbBdbaralcdtcufBdlaiclfhoalcufhwarcxfhrinaoydbhDarcuBdbarc98faDBdbarcwfhraoclfhoawcufgwmbkalabfhrxekaraxUdbararydlc98GasVBdlabcefaeadaiaoz:djjjbhwararydlciGawabcu7fcdtVBdlawaeadaiaocdtfalao9Rz:djjjbhrkavcaf8Kjjjjbark:;idiud99dndnabaecitfgwydlgDciGgqciSmbinabcbaDcd4gDalaqcdtfIdbawIdb:tgkJbbbb9FEgwaecefgefadaialavaoarz:ejjjbak:larIdb9FTmdabawaD7aefgecitfgwydlgDciGgqci9hmbkkabaecitfgeclfhbdnavmbcuhwindnaiaeydbgDfRbbmbadaDcK2fgqIdwalIdw:tgkakNaqIdbalIdb:tgkakNaqIdlalIdl:tgkakNMM:rgkarIdb9DTmbarakUdbaoaDBdbkaecwfheawcefgwabydbcd46mbxdkkcuhwindnaiaeydbgDfRbbmbadaDcK2fgqIdbalIdb:t:lgkaqIdlalIdl:t:lgxakax9EEgkaqIdwalIdw:t:lgxakax9EEgkarIdb9DTmbarakUdbaoaDBdbkaecwfheawcefgwabydbcd46mbkkk;llevudnabydwgxaladcetfgm8Vebcs4alaecetfgP8Vebgscs4falaicetfgz8Vebcs4ffaD0abydxaq9pVakVgDce9hmbavawcltfgxab8Pdb83dbaxcwfabcwfgx8Pdb83dbdnaxydbgqTmbaoabydbcdtfhxaqhsinalaxydbcetfcFFi87ebaxclfhxascufgsmbkkdnabydxglci2gsabydlgxfgkciGTmbarakfcbalaxcu7fciGcefz:njjjb8Aabydxci2hsabydlhxabydwhqkab9cb83dwababydbaqfBdbabascifc98GaxfBdlaP8Vebhscbhxkdnascztcz91cu9kmbabaxcefBdwaPax87ebaoabydbcdtfaxcdtfaeBdbkdnam8Uebcu9kmbababydwgxcefBdwamax87ebaoabydbcdtfaxcdtfadBdbkdnaz8Uebcu9kmbababydwgxcefBdwazax87ebaoabydbcdtfaxcdtfaiBdbkarabydlfabydxci2faPRbb86bbarabydlfabydxci2fcefamRbb86bbarabydlfabydxci2fcdfazRbb86bbababydxcefBdxaDk8LbabaeadaialavaoarawaDaDaqJbbbbz:cjjjbk;Nkovud99euv99eul998Jjjjjbc:W;ae9Rgo8KjjjjbdndnadTmbavcd4hrcbhwcbhDindnaiaeclfydbar2cdtfgvIdbaiaeydbar2cdtfgqIdbgk:tgxaiaecwfydbar2cdtfgmIdlaqIdlgP:tgsNamIdbak:tgzavIdlaP:tgPN:tgkakNaPamIdwaqIdwgH:tgONasavIdwaH:tgHN:tgPaPNaHazNaOaxN:tgxaxNMM:rgsJbbbb9Bmbaoc:W:qefawcx2fgAakas:vUdwaAaxas:vUdlaAaPas:vUdbaoc8Wfawc8K2fgAaq8Pdb83dbaAav8Pdb83dxaAam8Pdb83dKaAcwfaqcwfydbBdbaAcCfavcwfydbBdbaAcafamcwfydbBdbawcefhwkaecxfheaDcifgDad6mbkab9cb83dbabcyf9cb83dbabcaf9cb83dbabcKf9cb83dbabczf9cb83dbabcwf9cb83dbawTmeaocbBd8Sao9cb83iKao9cb83izaoczfaoc8Wfawci2cxaoc8Sfcbcrz1jjjbaoIdKhCaoIdChXaoIdzhQao9cb83iwao9cb83ibaoaoc:W:qefawcxaoc8Sfcbciz1jjjbJbbjZhkaoIdwgPJbbbbJbbjZaPaPNaoIdbgPaPNaoIdlgsasNMM:rgx:vaxJbbbb9BEgzNhxasazNhsaPazNhzaoc:W:qefheawhvinaecwfIdbaxNaeIdbazNasaeclfIdbNMMgPakaPak9DEhkaecxfheavcufgvmbkabaCUdwabaXUdlabaQUdbabaoId3UdxdndnakJ;n;m;m899FmbJbbbbhPaoc:W:qefheaoc8WfhvinaCavcwfIdb:taecwfIdbgHNaQavIdb:taeIdbgONaXavclfIdb:taeclfIdbgLNMMaxaHNazaONasaLNMM:vgHaPaHaP9EEhPavc8KfhvaecxfheawcufgwmbkabaxUd8KabasUdaabazUd3abaCaxaPN:tUdKabaXasaPN:tUdCabaQazaPN:tUdzabJbbjZakakN:t:rgkUdydndnaxJbbj:;axJbbj:;9GEgPJbbjZaPJbbjZ9FEJbb;:9cNJbbbZJbbb:;axJbbbb9GEMgP:lJbbb9p9DTmbaP:Ohexekcjjjj94hekabae86b8UdndnasJbbj:;asJbbj:;9GEgPJbbjZaPJbbjZ9FEJbb;:9cNJbbbZJbbb:;asJbbbb9GEMgP:lJbbb9p9DTmbaP:Ohvxekcjjjj94hvkabav86bRdndnazJbbj:;azJbbj:;9GEgPJbbjZaPJbbjZ9FEJbb;:9cNJbbbZJbbb:;azJbbbb9GEMgP:lJbbb9p9DTmbaP:Ohqxekcjjjj94hqkabaq86b8SdndnaecKtcK91:YJbb;:9c:vax:t:lavcKtcK91:YJbb;:9c:vas:t:laqcKtcK91:YJbb;:9c:vaz:t:lakMMMJbb;:9cNJbbjZMgk:lJbbb9p9DTmbak:Ohexekcjjjj94hekaecFbaecFb9iEhexekabcjjj;8iBdycFbhekabae86b8Vxekab9cb83dbabcyf9cb83dbabcaf9cb83dbabcKf9cb83dbabczf9cb83dbabcwf9cb83dbkaoc:W;aef8Kjjjjbk;Iwwvul99iud99eue99eul998Jjjjjbcje9Rgr8Kjjjjbavcd4hwaicd4hDdndnaoTmbarc;abfcbaocdtgvz:njjjb8Aarc;Gbfcbavz:njjjb8AarhvarcafhiaohqinavcFFF97BdbaicFFF;7rBdbaiclfhiavclfhvaqcufgqmbkdnadTmbcbhkinaeakaD2cdtfgvIdwhxavIdlhmavIdbhPalakaw2cdtfIdbhsarc;abfhzarhiarc;GbfhHarcafhqcj1jjbhvaohOinasavcwfIdbaxNavIdbaPNavclfIdbamNMMgAMhCakhXdnaAas:tgAaqIdbgQ9DgLmbaHydbhXkaHaXBdbakhXdnaCaiIdbgK9EmbazydbhXaKhCkazaXBdbaiaCUdbaqaAaQaLEUdbavcxfhvaqclfhqaHclfhHaiclfhiazclfhzaOcufgOmbkakcefgkad9hmbkkadThkJbbbbhCcbhXarc;abfhvarc;Gbfhicbhqinalavydbgzaw2cdtfIdbalaiydbgHaw2cdtfIdbaeazaD2cdtfgzIdwaeaHaD2cdtfgHIdw:tgsasNazIdbaHIdb:tgsasNazIdlaHIdl:tgsasNMM:rMMgsaCasaC9EgzEhCaqaXazEhXaiclfhiavclfhvaoaqcefgq9hmbkaCJbbbZNhKxekadThkcbhXJbbbbhKkJbbbbhCdnaearc;abfaXcdtgifydbgqaD2cdtfgvIdwaearc;GbfaifydbgzaD2cdtfgiIdwgm:tgsasNavIdbaiIdbgY:tgAaANavIdlaiIdlgP:tgQaQNMM:rgxJbbbb9ETmbaxalaqaw2cdtfIdbMalazaw2cdtfIdb:taxaxM:vhCkasaCNamMhmaQaCNaPMhPaAaCNaYMhYdnakmbaDcdthvawcdthiindnalIdbg8AaecwfIdbam:tgCaCNaeIdbaY:tgsasNaeclfIdbaP:tgAaANMM:rgQMgEaK9ETmbJbbbbhxdnaQJbbbb9ETmbaEaK:taQaQM:vhxkaxaCNamMhmaxaANaPMhPaxasNaYMhYa8AaKaQMMJbbbZNhKkaeavfhealaifhladcufgdmbkkabaKUdxabamUdwabaPUdlabaYUdbarcjef8Kjjjjbkjeeiu8Jjjjjbcj8W9Rgr8Kjjjjbaici2hwdnaiTmbawceawce0EhDarhiinaiaeadRbbcdtfydbBdbadcefhdaiclfhiaDcufgDmbkkabarawaladaoz:hjjjbarcj8Wf8Kjjjjbk:3lequ8JjjjjbcjP9Rgl8Kjjjjbcbhvalcjxfcbaiz:njjjb8AdndnadTmbcjehoaehrincuhwarhDcuhqavhkdninawakaoalcjxfaDcefRbbfRbb9RcFeGci6aoalcjxfaDRbbfRbb9RcFeGci6faoalcjxfaDcdfRbbfRbb9RcFeGci6fgxaq9mgmEhwdnammbaxce0mdkaxaqaxaq9kEhqaDcifhDadakcefgk9hmbkkaeawci2fgDcdfRbbhqaDcefRbbhxaDRbbhkaeavci2fgDcifaDawav9Rci2z:qjjjb8Aakalcjxffaocefgo86bbaxalcjxffao86bbaDcdfaq86bbaDcefax86bbaDak86bbaqalcjxffao86bbarcifhravcefgvad9hmbkalcFeaicetz:njjjbhoadci2gDceaDce0EhqcbhxindnaoaeRbbgkcetfgw8UebgDcu9kmbawax87ebaocjlfaxcdtfabakcdtfydbBdbaxhDaxcefhxkaeaD86bbaecefheaqcufgqmbkaxcdthDxekcbhDkabalcjlfaDz:mjjjb8AalcjPf8Kjjjjbk9teiucbcbyd;C1jjbgeabcifc98GfgbBd;C1jjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik;teeeudndnaeabVciGTmbabhixekdndnadcz9pmbabhixekabhiinaiaeydbBdbaiaeydlBdlaiaeydwBdwaiaeydxBdxaeczfheaiczfhiadc9Wfgdcs0mbkkadcl6mbinaiaeydbBdbaeclfheaiclfhiadc98fgdci0mbkkdnadTmbinaiaeRbb86bbaicefhiaecefheadcufgdmbkkabk:3eedudndnabciGTmbabhixekaecFeGc:b:c:ew2hldndnadcz9pmbabhixekabhiinaialBdxaialBdwaialBdlaialBdbaiczfhiadc9Wfgdcs0mbkkadcl6mbinaialBdbaiclfhiadc98fgdci0mbkkdnadTmbinaiae86bbaicefhiadcufgdmbkkabk9teiucbcbyd;C1jjbgeabcrfc94GfgbBd;C1jjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik9:eiuZbhedndncbyd;C1jjbgdaecztgi9nmbcuheadai9RcFFifcz4nbcuSmekadhekcbabae9Rcifc98Gcbyd;C1jjbfgdBd;C1jjbdnadZbcztge9nmbadae9RcFFifcz4nb8Akk:;Deludndndnadch9pmbabaeSmdaeabadfgi9Rcbadcet9R0mekabaead;8qbbxekaeab7ciGhldndndnabae9pmbdnalTmbadhvabhixikdnabciGmbadhvabhixdkadTmiabaeRbb86bbadcufhvdnabcefgiciGmbaecefhexdkavTmiabaeRbe86beadc9:fhvdnabcdfgiciGmbaecdfhexdkavTmiabaeRbd86bdadc99fhvdnabcifgiciGmbaecifhexdkavTmiabaeRbi86biabclfhiaeclfheadc98fhvxekdnalmbdnaiciGTmbadTmlabadcufgifglaeaifRbb86bbdnalciGmbaihdxekaiTmlabadc9:fgifglaeaifRbb86bbdnalciGmbaihdxekaiTmlabadc99fgifglaeaifRbb86bbdnalciGmbaihdxekaiTmlabadc98fgdfaeadfRbb86bbkadcl6mbdnadc98fgocd4cefciGgiTmbaec98fhlabc98fhvinavadfaladfydbBdbadc98fhdaicufgimbkkaocx6mbaec9Wfhvabc9WfhoinaoadfgicxfavadfglcxfydbBdbaicwfalcwfydbBdbaiclfalclfydbBdbaialydbBdbadc9Wfgdci0mbkkadTmdadhidnadciGglTmbaecufhvabcufhoadhiinaoaifavaifRbb86bbaicufhialcufglmbkkadcl6mdaec98fhlabc98fhvinavaifgecifalaifgdcifRbb86bbaecdfadcdfRbb86bbaecefadcefRbb86bbaeadRbb86bbaic98fgimbxikkavcl6mbdnavc98fglcd4cefcrGgdTmbavadcdt9RhvinaiaeydbBdbaeclfheaiclfhiadcufgdmbkkalc36mbinaiaeydbBdbaiaeydlBdlaiaeydwBdwaiaeydxBdxaiaeydzBdzaiaeydCBdCaiaeydKBdKaiaeyd3Bd3aecafheaicafhiavc9Gfgvci0mbkkavTmbdndnavcrGgdmbavhlxekavc94GhlinaiaeRbb86bbaicefhiaecefheadcufgdmbkkavcw6mbinaiaeRbb86bbaiaeRbe86beaiaeRbd86bdaiaeRbi86biaiaeRbl86blaiaeRbv86bvaiaeRbo86boaiaeRbr86braicwfhiaecwfhealc94fglmbkkabkk9Tdbcjwk9ubbjZbbbbbbbbbbbbbbjZbbbbbbbbbbbbbbjZ86;nAZ86;nAZ86;nAZ86;nA:;86;nAZ86;nAZ86;nAZ86;nA:;86;nAZ86;nAZ86;nAZ86;nA:;bc;uwkxebbbdbbb9GNbb",Q=new Uint8Array([32,0,65,2,1,106,34,33,3,128,11,4,13,64,6,253,10,7,15,116,127,5,8,12,40,16,19,54,20,9,27,255,113,17,42,67,24,23,146,148,18,14,22,45,70,69,56,114,101,21,25,63,75,136,108,28,118,29,73,115]);if(typeof WebAssembly!=="object")return{supported:!1};var B,Y=WebAssembly.instantiate(J(A),{}).then(function(K){B=K.instance,B.exports.__wasm_call_ctors()});function J(K){var I=new Uint8Array(K.length);for(var V=0;V96?H-97:H>64?H-39:H+4}var D=0;for(var V=0;V=3),C(H<=256||H>0),C(D<=512),C(D%4==0),L=L||0;var z=K.BYTES_PER_ELEMENT==4?K:new Uint32Array(K);return Z(z,I,I.length/V,V*4,H,D,L)},computeClusterBounds:function(K,I,V){C(K.length%3==0),C(K.length/3<=512),C(I instanceof Float32Array),C(I.length%V==0),C(V>=3);var H=K.BYTES_PER_ELEMENT==4?K:new Uint32Array(K);return E(H,I,I.length/V,V*4)},computeMeshletBounds:function(K,I,V){return C(K.meshletCount!=0),C(I instanceof Float32Array),C(I.length%V==0),C(V>=3),$(K,I,I.length/V,V*4)},extractMeshlet:function(K,I){return C(I>=0&&I{var IsQ=HCA(),HsQ=DCA(),DsQ=NCA(),NsQ=LCA();qCA.exports={MeshoptEncoder:IsQ,MeshoptDecoder:HsQ,MeshoptSimplifier:DsQ,MeshoptClusterizer:NsQ}});var qg=R((ssQ)=>{function psQ(A,Q,B,C){var J=0,C=C===void 0?{}:C,X=C.loop===void 0?null:C.loop,G=C.palette===void 0?null:C.palette;if(Q<=0||B<=0||Q>65535||B>65535)throw Error("Width/Height invalid.");function F(V){var H=V.length;if(H<2||H>256||H&H-1)throw Error("Invalid code/color length, must be power of 2 and 2 .. 256.");return H}A[J++]=71,A[J++]=73,A[J++]=70,A[J++]=56,A[J++]=57,A[J++]=97;var W=0,Z=0;if(G!==null){var U=F(G);while(U>>=1)++W;if(U=1<=U)throw Error("Background index out of range.");if(Z===0)throw Error("Background index explicitly passed as 0.")}}if(A[J++]=Q&255,A[J++]=Q>>8&255,A[J++]=B&255,A[J++]=B>>8&255,A[J++]=(G!==null?128:0)|W,A[J++]=Z,A[J++]=0,G!==null)for(var $=0,E=G.length;$>16&255,A[J++]=K>>8&255,A[J++]=K&255}if(X!==null){if(X<0||X>65535)throw Error("Loop count invalid.");A[J++]=33,A[J++]=255,A[J++]=11,A[J++]=78,A[J++]=69,A[J++]=84,A[J++]=83,A[J++]=67,A[J++]=65,A[J++]=80,A[J++]=69,A[J++]=50,A[J++]=46,A[J++]=48,A[J++]=3,A[J++]=1,A[J++]=X&255,A[J++]=X>>8&255,A[J++]=0}var I=!1;this.addFrame=function(V,H,D,L,z,M){if(I===!0)--J,I=!1;if(M=M===void 0?{}:M,V<0||H<0||V>65535||H>65535)throw Error("x/y invalid.");if(D<=0||L<=0||D>65535||L>65535)throw Error("Width/Height invalid.");if(z.length>=1)++P;w=1<3)throw Error("Disposal out of range.");var k=!1,T=0;if(M.transparent!==void 0&&M.transparent!==null){if(k=!0,T=M.transparent,T<0||T>=w)throw Error("Transparent color index.")}if(O!==0||k||_!==0)A[J++]=33,A[J++]=249,A[J++]=4,A[J++]=O<<2|(k===!0?1:0),A[J++]=_&255,A[J++]=_>>8&255,A[J++]=T,A[J++]=0;if(A[J++]=44,A[J++]=V&255,A[J++]=V>>8&255,A[J++]=H&255,A[J++]=H>>8&255,A[J++]=D&255,A[J++]=D>>8&255,A[J++]=L&255,A[J++]=L>>8&255,A[J++]=N===!0?128|P-1:0,N===!0)for(var S=0,v=q.length;S>16&255,A[J++]=y>>8&255,A[J++]=y&255}return J=isQ(A,J,P<2?2:P,z),J},this.end=function(){if(I===!1)A[J++]=59,I=!0;return J},this.getOutputBuffer=function(){return A},this.setOutputBuffer=function(V){A=V},this.getOutputBufferPosition=function(){return J},this.setOutputBufferPosition=function(V){J=V}}function isQ(A,Q,B,Y){A[Q++]=B;var J=Q++,C=1<=M)if(A[Q++]=U&255,U>>=8,Z-=8,Q===J+256)A[J]=255,J=Q++}function E(M){U|=M<=8)if(A[Q++]=U&255,U>>=8,Z-=8,Q===J+256)A[J]=255,J=Q++;if(F===4096)E(C),F=G+1,W=B+1,I={};else{if(F>=1<>7,X=J&7,G=1<=0))throw Error("Invalid block size");if(H===0)break;Q+=H}}break;case 249:if(A[Q++]!==4||A[Q+4]!==0)throw Error("Invalid graphics extension block.");var D=A[Q++];if(E=A[Q++]|A[Q++]<<8,K=A[Q++],(D&1)===0)K=null;I=D>>2&7,Q++;break;case 254:while(!0){var H=A[Q++];if(!(H>=0))throw Error("Invalid block size");if(H===0)break;Q+=H}break;default:throw Error("Unknown graphic control label: 0x"+A[Q-1].toString(16))}break;case 44:var L=A[Q++]|A[Q++]<<8,z=A[Q++]|A[Q++]<<8,M=A[Q++]|A[Q++]<<8,N=A[Q++]|A[Q++]<<8,q=A[Q++],w=q>>7,P=q>>6&1,_=q&7,O=1<<_+1,k=W,T=Z,S=!1;if(w){var S=!0;k=Q,T=O,Q+=O*3}var v=Q;Q++;while(!0){var H=A[Q++];if(!(H>=0))throw Error("Invalid block size");if(H===0)break;Q+=H}$.push({x:L,y:z,width:M,height:N,has_local_palette:S,palette_offset:k,palette_size:T,data_offset:v,data_length:Q-v,transparent_index:K,interlaced:!!P,delay:E,disposal:I});break;case 59:U=!1;break;default:throw Error("Unknown gif block: 0x"+A[Q-1].toString(16))}this.numFrames=function(){return $.length},this.loopCount=function(){return V},this.frameInfo=function(y){if(y<0||y>=$.length)throw Error("Frame index out of range.");return $[y]},this.decodeAndBlitFrameBGRA=function(y,g){var h=this.frameInfo(y),m=h.width*h.height,i=new Uint8Array(m);bCA(A,h.data_offset,i,m);var{palette_offset:p,transparent_index:l}=h;if(l===null)l=256;var d=h.width,x=B-d,b=d,o=(h.y*B+h.x)*4,GA=((h.y+h.height)*B+h.x)*4,VA=o,EA=x*4;if(h.interlaced===!0)EA+=B*4*7;var UA=8;for(var CA=0,QA=i.length;CA=GA)EA=x*4+B*4*(UA-1),VA=o+(d+x)*(UA<<1),UA>>=1}if(KA===l)VA+=4;else{var HA=A[p+KA*3],DA=A[p+KA*3+1],gA=A[p+KA*3+2];g[VA++]=gA,g[VA++]=DA,g[VA++]=HA,g[VA++]=255}--b}},this.decodeAndBlitFrameRGBA=function(y,g){var h=this.frameInfo(y),m=h.width*h.height,i=new Uint8Array(m);bCA(A,h.data_offset,i,m);var{palette_offset:p,transparent_index:l}=h;if(l===null)l=256;var d=h.width,x=B-d,b=d,o=(h.y*B+h.x)*4,GA=((h.y+h.height)*B+h.x)*4,VA=o,EA=x*4;if(h.interlaced===!0)EA+=B*4*7;var UA=8;for(var CA=0,QA=i.length;CA=GA)EA=x*4+B*4*(UA-1),VA=o+(d+x)*(UA<<1),UA>>=1}if(KA===l)VA+=4;else{var HA=A[p+KA*3],DA=A[p+KA*3+1],gA=A[p+KA*3+2];g[VA++]=HA,g[VA++]=DA,g[VA++]=gA,g[VA++]=255}--b}}}function bCA(A,Q,B,Y){var J=A[Q++],C=1<>=F,Z-=F,V===C){G=X+1,F=J+1,W=(1<C)L=K[L]>>8,++D;var z=L,M=$+D+(H!==V?1:0);if(M>Y){console.log("Warning, gif stream longer than expected.");return}B[$++]=z,$+=D;var N=$;if(H!==V)B[$++]=z;L=H;while(D--)L=K[L],B[--N]=L&255,L>>=8;if(I!==null&&G<4096){if(K[G++]=I<<8|z,G>=W+1&&F<12)++F,W=W<<1|1}I=V}if($!==Y)console.log("Warning, gif stream shorter than expected.");return B}try{ssQ.GifWriter=psQ,ssQ.GifReader=nsQ}catch(A){}});var O3=R((l6Y,mCA)=>{class GH{constructor(...A){if(A.length===0)throw Error("constructor requires parameters");let Q=A[0];if(Q!==null&&typeof Q==="object")if(Q instanceof GH){let B=Q.bitmap;this.bitmap={width:B.width,height:B.height,data:new Buffer(B.width*B.height*4)},B.data.copy(this.bitmap.data)}else if(Q.width&&Q.height&&Q.data)this.bitmap=Q;else throw Error("unrecognized constructor parameters");else if(typeof Q==="number"&&typeof A[1]==="number"){let B=Q,Y=A[1],J=A[2];if(this.bitmap={width:B,height:Y},Buffer.isBuffer(J))this.bitmap.data=J;else if(this.bitmap.data=new Buffer(B*Y*4),typeof J==="number")this.fillRGBA(J)}else throw Error("unrecognized constructor parameters")}blit(A,Q,B,Y,J,C,X){if(Y+C>this.bitmap.width)throw Error("copy exceeds width of source bitmap");if(Q+C>A.bitmap.width)throw Error("copy exceeds width of target bitmap");if(J+X>this.bitmap.height)throw Error("copy exceeds height of source bitmap");if(B+X>A.bitmap.height)throw new Erro("copy exceeds height of target bitmap");let G=this.bitmap.data,F=A.bitmap.data,W=this.bitmap.width*4,Z=A.bitmap.width*4,U=C*4,$=J*W+Y*4,E=B*Z+Q*4;while(--X>=0)G.copy(F,E,$,$+U),$+=W,E+=Z;return this}fillRGBA(A){let Q=this.bitmap.data,B=this.bitmap.height*4,Y=0;while(Y{let J=Math.round(0.299*A[Y]+0.587*A[Y+1]+0.114*A[Y+2]);A[Y]=J,A[Y+1]=J,A[Y+2]=J}),this}reframe(A,Q,B,Y,J){let C=A<0?0:A,X=Q<0?0:Q,G=B+C>this.bitmap.width?this.bitmap.width-C:B,F=Y+X>this.bitmap.height?this.bitmap.height-X:Y,W=A<0?-A:0,Z=Q<0?-Q:0,U;if(J===void 0){if(C!==A||X!=Q||G!==B||F!==Y)throw new GifError("fillRGBA required for this reframing");U=new GH(B,Y)}else U=new GH(B,Y,J);return this.blit(U,W,Z,C,X,G,F),this.bitmap=U.bitmap,this}scale(A){if(A===1)return;if(!Number.isInteger(A)||A<1)throw Error("the scale must be an integer >= 1");let Q=this.bitmap.width,B=this.bitmap.height,Y=Q*A*4,J=this.bitmap.data,C=new Buffer(B*Y*A),X=0,G,F=0;for(let W=0;W{class FH{constructor(A,Q,B){this.width=B.width,this.height=B.height,this.loops=B.loops,this.usesTransparency=B.usesTransparency,this.colorScope=B.colorScope,this.frames=Q,this.buffer=A}}FH.GlobalColorsPreferred=0;FH.GlobalColorsOnly=1;FH.LocalColorsOnly=2;class uCA extends Error{constructor(A){super(A);if(A instanceof Error)this.stack="Gif"+A.stack}}rsQ.Gif=FH;rsQ.GifError=uCA});var S1A=R((i6Y,T1A)=>{var{defineProperty:S3,getOwnPropertyDescriptor:tsQ,getOwnPropertyNames:esQ}=Object,ArQ=Object.prototype.hasOwnProperty,QrQ=(A,Q,B)=>(Q in A)?S3(A,Q,{enumerable:!0,configurable:!0,writable:!0,value:B}):A[Q]=B,BrQ=(A)=>S3(A,"__esModule",{value:!0}),_1=(A,Q)=>{for(var B in Q)S3(A,B,{get:Q[B],enumerable:!0})},YrQ=(A,Q,B,Y)=>{if(Q&&typeof Q==="object"||typeof Q==="function"){for(let J of esQ(Q))if(!ArQ.call(A,J)&&(B||J!=="default"))S3(A,J,{get:()=>Q[J],enumerable:!(Y=tsQ(Q,J))||Y.enumerable})}return A},JrQ=((A)=>{return(Q,B)=>{return A&&A.get(Q)||(B=YrQ(BrQ({}),Q,1),A&&A.set(Q,B),B)}})(typeof WeakMap<"u"?new WeakMap:0),WA=(A,Q,B)=>{return QrQ(A,typeof Q!=="symbol"?Q+"":Q,B),B},pCA={};_1(pCA,{applyPalette:()=>wrQ,applyPaletteSync:()=>RrQ,buildPalette:()=>zrQ,buildPaletteSync:()=>MrQ,constants:()=>iCA,conversion:()=>oCA,distance:()=>C1A,image:()=>z1A,palette:()=>H1A,quality:()=>j1A,utils:()=>D1A});var iCA={};_1(iCA,{bt709:()=>nCA});var nCA={};_1(nCA,{Y:()=>sCA,x:()=>rCA,y:()=>aCA});var sCA=((A)=>{return A[A.RED=0.2126]="RED",A[A.GREEN=0.7152]="GREEN",A[A.BLUE=0.0722]="BLUE",A[A.WHITE=1]="WHITE",A})(sCA||{}),rCA=((A)=>{return A[A.RED=0.64]="RED",A[A.GREEN=0.3]="GREEN",A[A.BLUE=0.15]="BLUE",A[A.WHITE=0.3127]="WHITE",A})(rCA||{}),aCA=((A)=>{return A[A.RED=0.33]="RED",A[A.GREEN=0.6]="GREEN",A[A.BLUE=0.06]="BLUE",A[A.WHITE=0.329]="WHITE",A})(aCA||{}),oCA={};_1(oCA,{lab2rgb:()=>UrQ,lab2xyz:()=>Y1A,rgb2hsl:()=>P3,rgb2lab:()=>$H,rgb2xyz:()=>tCA,xyz2lab:()=>B1A,xyz2rgb:()=>J1A});function Mg(A){return A>0.04045?((A+0.055)/1.055)**2.4:A/12.92}function tCA(A,Q,B){return A=Mg(A/255),Q=Mg(Q/255),B=Mg(B/255),{x:A*0.4124+Q*0.3576+B*0.1805,y:A*0.2126+Q*0.7152+B*0.0722,z:A*0.0193+Q*0.1192+B*0.9505}}var eCA={};_1(eCA,{degrees2radians:()=>C7,inRange0to255:()=>W8,inRange0to255Rounded:()=>F5,intInRange:()=>CrQ,max3:()=>A1A,min3:()=>Q1A,stableSort:()=>Og});function C7(A){return A*(Math.PI/180)}function A1A(A,Q,B){let Y=A;if(YQ)Y=Q;if(Y>B)Y=B;return Y}function CrQ(A,Q,B){if(A>B)A=B;if(A255)A=255;else if(A<0)A=0;return A}function W8(A){if(A>255)A=255;else if(A<0)A=0;return A}function Og(A,Q){let B=typeof A[0],Y;if(B==="number"||B==="string"){let J=Object.create(null);for(let C=0,X=A.length;CQ(C,X)||J[C]-J[X])}else{let J=A.slice(0);Y=A.sort((C,X)=>Q(C,X)||J.indexOf(C)-J.indexOf(X))}return Y}function P3(A,Q,B){let Y=Q1A(A,Q,B),J=A1A(A,Q,B),C=J-Y,X=(Y+J)/510,G=0;if(X>0&&X<1)G=C/(X<0.5?J+Y:510-J-Y);let F=0;if(C>0){if(J===A)F=(Q-B)/C;else if(J===Q)F=2+(B-A)/C;else F=4+(A-Q)/C;if(F*=60,F<0)F+=360}return{h:F,s:G,l:X}}var XrQ=0.95047,GrQ=1,FrQ=1.08883;function zg(A){return A>0.008856?A**0.3333333333333333:7.787*A+0.13793103448275862}function B1A(A,Q,B){if(A=zg(A/XrQ),Q=zg(Q/GrQ),B=zg(B/FrQ),116*Q-16<0)throw Error("xxx");return{L:Math.max(0,116*Q-16),a:500*(A-Q),b:200*(Q-B)}}function $H(A,Q,B){let Y=tCA(A,Q,B);return B1A(Y.x,Y.y,Y.z)}var WrQ=0.95047,ZrQ=1,$rQ=1.08883;function Rg(A){return A>0.206893034?A**3:(A-0.13793103448275862)/7.787}function Y1A(A,Q,B){let Y=(A+16)/116,J=Q/500+Y,C=Y-B/200;return{x:WrQ*Rg(J),y:ZrQ*Rg(Y),z:$rQ*Rg(C)}}function wg(A){return A>0.0031308?1.055*A**0.4166666666666667-0.055:12.92*A}function J1A(A,Q,B){let Y=wg(A*3.2406+Q*-1.5372+B*-0.4986),J=wg(A*-0.9689+Q*1.8758+B*0.0415),C=wg(A*0.0557+Q*-0.204+B*1.057);return{r:F5(Y*255),g:F5(J*255),b:F5(C*255)}}function UrQ(A,Q,B){let Y=Y1A(A,Q,B);return J1A(Y.x,Y.y,Y.z)}var C1A={};_1(C1A,{AbstractDistanceCalculator:()=>bW,AbstractEuclidean:()=>k3,AbstractManhattan:()=>_3,CIE94GraphicArts:()=>F1A,CIE94Textiles:()=>G1A,CIEDE2000:()=>MC,CMetric:()=>W1A,Euclidean:()=>Z1A,EuclideanBT709:()=>$1A,EuclideanBT709NoAlpha:()=>U1A,Manhattan:()=>E1A,ManhattanBT709:()=>V1A,ManhattanNommyde:()=>K1A,PNGQuant:()=>I1A});var bW=class{constructor(){WA(this,"_maxDistance"),WA(this,"_whitePoint"),this._setDefaults(),this.setWhitePoint(255,255,255,255)}setWhitePoint(A,Q,B,Y){this._whitePoint={r:A>0?255/A:0,g:Q>0?255/Q:0,b:B>0?255/B:0,a:Y>0?255/Y:0},this._maxDistance=this.calculateRaw(A,Q,B,Y,0,0,0,0)}calculateNormalized(A,Q){return this.calculateRaw(A.r,A.g,A.b,A.a,Q.r,Q.g,Q.b,Q.a)/this._maxDistance}},X1A=class extends bW{calculateRaw(A,Q,B,Y,J,C,X,G){let F=$H(W8(A*this._whitePoint.r),W8(Q*this._whitePoint.g),W8(B*this._whitePoint.b)),W=$H(W8(J*this._whitePoint.r),W8(C*this._whitePoint.g),W8(X*this._whitePoint.b)),Z=F.L-W.L,U=F.a-W.a,$=F.b-W.b,E=Math.sqrt(F.a*F.a+F.b*F.b),K=Math.sqrt(W.a*W.a+W.b*W.b),I=E-K,V=U*U+$*$-I*I;V=V<0?0:Math.sqrt(V);let H=(G-Y)*this._whitePoint.a*this._kA;return Math.sqrt((Z/this._Kl)**2+(I/(1+this._K1*E))**2+(V/(1+this._K2*E))**2+H**2)}},G1A=class extends X1A{_setDefaults(){this._Kl=2,this._K1=0.048,this._K2=0.014,this._kA=0.049019607843137254}},F1A=class extends X1A{_setDefaults(){this._Kl=1,this._K1=0.045,this._K2=0.015,this._kA=0.09803921568627451}},q0=class extends bW{_setDefaults(){}static _calculatehp(A,Q){let B=Math.atan2(A,Q);if(B>=0)return B;return B+q0._deg360InRad}static _calculateRT(A,Q){let B=Q**7,Y=2*Math.sqrt(B/(B+q0._pow25to7)),J=q0._deg30InRad*Math.exp(-(((A-q0._deg275InRad)/q0._deg25InRad)**2));return-Math.sin(2*J)*Y}static _calculateT(A){return 1-0.17*Math.cos(A-q0._deg30InRad)+0.24*Math.cos(A*2)+0.32*Math.cos(A*3+q0._deg6InRad)-0.2*Math.cos(A*4-q0._deg63InRad)}static _calculate_ahp(A,Q,B,Y){let J=B+Y;if(A===0)return J;if(Q<=q0._deg180InRad)return J/2;if(J>8)+4*Z*Z+((767-F)*U*U>>8),E=(G-Y)*this._whitePoint.a;return Math.sqrt($+E*E)}_setDefaults(){}},k3=class extends bW{calculateRaw(A,Q,B,Y,J,C,X,G){let F=J-A,W=C-Q,Z=X-B,U=G-Y;return Math.sqrt(this._kR*F*F+this._kG*W*W+this._kB*Z*Z+this._kA*U*U)}},Z1A=class extends k3{_setDefaults(){this._kR=1,this._kG=1,this._kB=1,this._kA=1}},$1A=class extends k3{_setDefaults(){this._kR=0.2126,this._kG=0.7152,this._kB=0.0722,this._kA=1}},U1A=class extends k3{_setDefaults(){this._kR=0.2126,this._kG=0.7152,this._kB=0.0722,this._kA=0}},_3=class extends bW{calculateRaw(A,Q,B,Y,J,C,X,G){let F=J-A,W=C-Q,Z=X-B,U=G-Y;if(F<0)F=0-F;if(W<0)W=0-W;if(Z<0)Z=0-Z;if(U<0)U=0-U;return this._kR*F+this._kG*W+this._kB*Z+this._kA*U}},E1A=class extends _3{_setDefaults(){this._kR=1,this._kG=1,this._kB=1,this._kA=1}},K1A=class extends _3{_setDefaults(){this._kR=0.4984,this._kG=0.8625,this._kB=0.2979,this._kA=1}},V1A=class extends _3{_setDefaults(){this._kR=0.2126,this._kG=0.7152,this._kB=0.0722,this._kA=1}},I1A=class extends bW{calculateRaw(A,Q,B,Y,J,C,X,G){let F=(G-Y)*this._whitePoint.a;return this._colordifferenceCh(A*this._whitePoint.r,J*this._whitePoint.r,F)+this._colordifferenceCh(Q*this._whitePoint.g,C*this._whitePoint.g,F)+this._colordifferenceCh(B*this._whitePoint.b,X*this._whitePoint.b,F)}_colordifferenceCh(A,Q,B){let Y=A-Q,J=Y+B;return Y*Y+J*J}_setDefaults(){}},H1A={};_1(H1A,{AbstractPaletteQuantizer:()=>UH,ColorHistogram:()=>KH,NeuQuant:()=>T0,NeuQuantFloat:()=>S0,RGBQuant:()=>q1A,WuColorCube:()=>M1A,WuQuant:()=>GU});var UH=class{quantizeSync(){for(let A of this.quantize())if(A.palette)return A.palette;throw Error("unreachable")}},Z8=class{constructor(){WA(this,"r"),WA(this,"g"),WA(this,"b"),WA(this,"a"),WA(this,"uint32"),WA(this,"rgba"),this.uint32=4294967295,this.r=this.g=this.b=this.a=0,this.rgba=[,,,,],this.rgba[0]=0,this.rgba[1]=0,this.rgba[2]=0,this.rgba[3]=0}static createByQuadruplet(A){let Q=new Z8;return Q.r=A[0]|0,Q.g=A[1]|0,Q.b=A[2]|0,Q.a=A[3]|0,Q._loadUINT32(),Q._loadQuadruplet(),Q}static createByRGBA(A,Q,B,Y){let J=new Z8;return J.r=A|0,J.g=Q|0,J.b=B|0,J.a=Y|0,J._loadUINT32(),J._loadQuadruplet(),J}static createByUint32(A){let Q=new Z8;return Q.uint32=A>>>0,Q._loadRGBA(),Q._loadQuadruplet(),Q}from(A){this.r=A.r,this.g=A.g,this.b=A.b,this.a=A.a,this.uint32=A.uint32,this.rgba[0]=A.r,this.rgba[1]=A.g,this.rgba[2]=A.b,this.rgba[3]=A.a}getLuminosity(A){let Q=this.r,B=this.g,Y=this.b;if(A)Q=Math.min(255,255-this.a+this.a*Q/255),B=Math.min(255,255-this.a+this.a*B/255),Y=Math.min(255,255-this.a+this.a*Y/255);return Q*0.2126+B*0.7152+Y*0.0722}_loadUINT32(){this.uint32=(this.a<<24|this.b<<16|this.g<<8|this.r)>>>0}_loadRGBA(){this.r=this.uint32&255,this.g=this.uint32>>>8&255,this.b=this.uint32>>>16&255,this.a=this.uint32>>>24&255}_loadQuadruplet(){this.rgba[0]=this.r,this.rgba[1]=this.g,this.rgba[2]=this.b,this.rgba[3]=this.a}},DX=class{constructor(){WA(this,"_pointArray"),WA(this,"_width"),WA(this,"_height"),this._width=0,this._height=0,this._pointArray=[]}getWidth(){return this._width}getHeight(){return this._height}setWidth(A){this._width=A}setHeight(A){this._height=A}getPointArray(){return this._pointArray}clone(){let A=new DX;A._width=this._width,A._height=this._height;for(let Q=0,B=this._pointArray.length;Q=X&&A=0;Q--)if(A.uint32===this._pointArray[Q].uint32)return!0;return!1}getNearestColor(A,Q){return this._pointArray[this._getNearestIndex(A,Q)|0]}getPointContainer(){return this._pointContainer}_nearestPointFromCache(A){return typeof this._i32idx[A]==="number"?this._i32idx[A]:-1}_getNearestIndex(A,Q){let B=this._nearestPointFromCache(""+Q.uint32);if(B>=0)return B;let Y=Number.MAX_VALUE;B=0;for(let J=0,C=this._pointArray.length;J{let B=P3(A.r,A.g,A.b),Y=P3(Q.r,Q.g,Q.b),J=A.r===A.g&&A.g===A.b?0:1+jg(B.h,dCA),X=(Q.r===Q.g&&Q.g===Q.b?0:1+jg(Y.h,dCA))-J;if(X)return-X;let G=A.getLuminosity(!0),F=Q.getLuminosity(!0);if(F-G!==0)return F-G;let W=(Y.s*100|0)-(B.s*100|0);if(W)return-W;return 0})}},D1A={};_1(D1A,{HueStatistics:()=>N1A,Palette:()=>EH,Point:()=>Z8,PointContainer:()=>DX,ProgressTracker:()=>NX,arithmetic:()=>eCA});var ErQ=class{constructor(){WA(this,"num",0),WA(this,"cols",[])}},N1A=class{constructor(A,Q){WA(this,"_numGroups"),WA(this,"_minCols"),WA(this,"_stats"),WA(this,"_groupsFull"),this._numGroups=A,this._minCols=Q,this._stats=[];for(let B=0;B<=A;B++)this._stats[B]=new ErQ;this._groupsFull=0}check(A){if(this._groupsFull===this._numGroups+1)this.check=()=>{};let Q=A&255,B=A>>>8&255,Y=A>>>16&255,J=Q===B&&B===Y?0:1+jg(P3(Q,B,Y).h,this._numGroups),C=this._stats[J],X=this._minCols;if(C.num++,C.num>X)return;if(C.num===X)this._groupsFull++;if(C.num<=X)this._stats[J].cols.push(A)}injectIntoDictionary(A){for(let Q=0;Q<=this._numGroups;Q++)if(this._stats[Q].num<=this._minCols)this._stats[Q].cols.forEach((B)=>{if(!A[B])A[B]=1;else A[B]++})}injectIntoArray(A){for(let Q=0;Q<=this._numGroups;Q++)if(this._stats[Q].num<=this._minCols)this._stats[Q].cols.forEach((B)=>{if(A.indexOf(B)===-1)A.push(B)})}},L1A=class{constructor(A,Q){WA(this,"progress"),WA(this,"_step"),WA(this,"_range"),WA(this,"_last"),WA(this,"_progressRange"),this._range=A,this._progressRange=Q,this._step=Math.max(1,this._range/(L1A.steps+1)|0),this._last=-this._step,this.progress=0}shouldNotify(A){if(A-this._last>=this._step)return this._last=A,this.progress=Math.min(this._progressRange*this._last/this._range,this._progressRange),!0;return!1}},NX=L1A;WA(NX,"steps",100);var rJ=3,KrQ=class{constructor(A){WA(this,"r"),WA(this,"g"),WA(this,"b"),WA(this,"a"),this.r=this.g=this.b=this.a=A}toPoint(){return Z8.createByRGBA(this.r>>rJ,this.g>>rJ,this.b>>rJ,this.a>>rJ)}subtract(A,Q,B,Y){this.r-=A|0,this.g-=Q|0,this.b-=B|0,this.a-=Y|0}},BB=class extends UH{constructor(A,Q=256){super();WA(this,"_pointArray"),WA(this,"_networkSize"),WA(this,"_network"),WA(this,"_sampleFactor"),WA(this,"_radPower"),WA(this,"_freq"),WA(this,"_bias"),WA(this,"_distance"),this._distance=A,this._pointArray=[],this._sampleFactor=1,this._networkSize=Q,this._distance.setWhitePoint(255<>3)*BB._radiusBias,G=X>>BB._radiusBiasShift;if(G<=1)G=0;for(let Z=0;Z>>0;let F;if(Q=Q)U-=Q;if(Z++,J===0)J=1;if(Z%J===0){if(C-=C/B|0,X-=X/BB._radiusDecrease|0,G=X>>BB._radiusBiasShift,G<=1)G=0;for(let D=0;D>>0}}}_buildPalette(){let A=new EH;return this._network.forEach((Q)=>{A.add(Q.toPoint())}),A.sort(),A}_alterNeighbour(A,Q,B,Y,J,C){let X=Q-A;if(X<-1)X=-1;let G=Q+A;if(G>this._networkSize)G=this._networkSize;let F=Q+1,W=Q-1,Z=1;while(FX){let U=this._radPower[Z++]/BB._alphaRadBias;if(FX){let $=this._network[W--];$.subtract(U*($.r-J),U*($.g-Y),U*($.b-B),U*($.a-C))}}}_alterSingle(A,Q,B,Y,J,C){A/=BB._initAlpha;let X=this._network[Q];X.subtract(A*(X.r-J),A*(X.g-Y),A*(X.b-B),A*(X.a-C))}_contest(A,Q,B,Y){let J=1020<>BB._initialBiasShift-rJ);if($>BB._betaShift;this._freq[W]-=E,this._bias[W]+=E<>BB._betaShift);WA(T0,"_betaGamma",BB._initialBias<>aJ,this.g>>aJ,this.b>>aJ,this.a>>aJ)}subtract(A,Q,B,Y){this.r-=A,this.g-=Q,this.b-=B,this.a-=Y}},YB=class extends UH{constructor(A,Q=256){super();WA(this,"_pointArray"),WA(this,"_networkSize"),WA(this,"_network"),WA(this,"_sampleFactor"),WA(this,"_radPower"),WA(this,"_freq"),WA(this,"_bias"),WA(this,"_distance"),this._distance=A,this._pointArray=[],this._sampleFactor=1,this._networkSize=Q,this._distance.setWhitePoint(255<>3)*YB._radiusBias,G=X>>YB._radiusBiasShift;if(G<=1)G=0;for(let Z=0;Z=Q)U-=Q;if(Z++,J===0)J=1;if(Z%J===0){if(C-=C/B,X-=X/YB._radiusDecrease,G=X>>YB._radiusBiasShift,G<=1)G=0;for(let D=0;D{A.add(Q.toPoint())}),A.sort(),A}_alterNeighbour(A,Q,B,Y,J,C){let X=Q-A;if(X<-1)X=-1;let G=Q+A;if(G>this._networkSize)G=this._networkSize;let F=Q+1,W=Q-1,Z=1;while(FX){let U=this._radPower[Z++]/YB._alphaRadBias;if(FX){let $=this._network[W--];$.subtract(U*($.r-J),U*($.g-Y),U*($.b-B),U*($.a-C))}}}_alterSingle(A,Q,B,Y,J,C){A/=YB._initAlpha;let X=this._network[Q];X.subtract(A*(X.r-J),A*(X.g-Y),A*(X.b-B),A*(X.a-C))}_contest(A,Q,B,Y){let J=1020<>YB._initialBiasShift-aJ);if($>YB._betaShift;this._freq[W]-=E,this._bias[W]+=E<>YB._betaShift);WA(S0,"_betaGamma",YB._initialBias<this._histogram[Y]-this._histogram[B]);if(A.length===0)return[];let Q;switch(this._method){case 1:let B=Math.min(A.length,this._initColors),Y=A[B-1],J=this._histogram[Y];Q=A.slice(0,B);let C=B,X=A.length;while(C+B)}_colorStats1D(A){let Q=this._histogram,B=A.getPointArray(),Y=B.length;for(let J=0;J{let Z=Math.round(W.w*W.h/X)*ZH._boxPixels;if(Z<2)Z=2;let U={};this._iterateBox(W,Q,($)=>{let E=Y[$].uint32;if(this._hueStats.check(E),E in F)F[E]++;else if(E in U){if(++U[E]>=Z)F[E]=U[E]}else U[E]=1})}),this._hueStats.injectIntoDictionary(F)}_iterateBox(A,Q,B){let Y=A,J=Y.y*Q+Y.x,C=(Y.y+Y.h-1)*Q+(Y.x+Y.w-1),X=Q-Y.w+1,G=0,F=J;do B.call(this,F),F+=++G%Y.w===0?X:1;while(F<=C)}_makeBoxes(A,Q,B,Y){let J=A%B,C=Q%Y,X=A-J,G=Q-C,F=[];for(let W=0;Wthis._colors){C.length=0;for(let Z=0;Zthis._colors*3?this._initialDistance:this._distanceIncrement}if(X$.distance-U.distance);let Z=0;while(X=0;Z--)if(Y[Z]===0){if(Z!==W-1)B[Z]=B[W-1];--W}B.length=W,Q.sort(),yield{palette:Q,progress:100}}};function BU(A){let Q=[];for(let B=0;B0){let B=this._sums[Q],Y=this._reds[Q]/B,J=this._greens[Q]/B,C=this._blues[Q]/B,X=this._alphas[Q]/B,G=Z8.createByRGBA(Y|0,J|0,C|0,X|0);A.add(G)}A.sort(),yield{palette:A,progress:100}}*_preparePalette(){yield*this._calculateMoments();let A=0,Q=BU(this._colors);for(let X=1;X1?this._calculateVariance(this._cubes[A]):0,Q[X]=this._cubes[X].volume>1?this._calculateVariance(this._cubes[X]):0;else Q[A]=0,X--;A=0;let G=Q[0];for(let F=1;F<=X;++F)if(Q[F]>G)G=Q[F],A=F;if(G<=0){this._colors=X+1;break}}let B=[],Y=[],J=[],C=[];for(let X=0;X0)B[X]=OQ._volume(this._cubes[X],this._momentsRed)/G|0,Y[X]=OQ._volume(this._cubes[X],this._momentsGreen)/G|0,J[X]=OQ._volume(this._cubes[X],this._momentsBlue)/G|0,C[X]=OQ._volume(this._cubes[X],this._momentsAlpha)/G|0;else B[X]=0,Y[X]=0,J[X]=0,C[X]=0}this._reds=BU(this._colors+1),this._greens=BU(this._colors+1),this._blues=BU(this._colors+1),this._alphas=BU(this._colors+1),this._sums=BU(this._colors+1);for(let X=0,G=this._pixels.length;X>Q)+1,Y=(A.g>>Q)+1,J=(A.b>>Q)+1,C=(A.a>>Q)+1;this._weights[C][B][Y][J]++,this._momentsRed[C][B][Y][J]+=A.r,this._momentsGreen[C][B][Y][J]+=A.g,this._momentsBlue[C][B][Y][J]+=A.b,this._momentsAlpha[C][B][Y][J]+=A.a,this._moments[C][B][Y][J]+=this._table[A.r]+this._table[A.g]+this._table[A.b]+this._table[A.a]}*_calculateMoments(){let A=[],Q=[],B=[],Y=[],J=[],C=[],X=JU(this._sideSize,this._sideSize,this._sideSize),G=JU(this._sideSize,this._sideSize,this._sideSize),F=JU(this._sideSize,this._sideSize,this._sideSize),W=JU(this._sideSize,this._sideSize,this._sideSize),Z=JU(this._sideSize,this._sideSize,this._sideSize),U=JU(this._sideSize,this._sideSize,this._sideSize),$=0,E=new NX(this._alphaMaxSideIndex*this._maxSideIndex,99);for(let K=1;K<=this._alphaMaxSideIndex;++K){CU(X,this._sideSize,this._sideSize,this._sideSize,0),CU(G,this._sideSize,this._sideSize,this._sideSize,0),CU(F,this._sideSize,this._sideSize,this._sideSize,0),CU(W,this._sideSize,this._sideSize,this._sideSize,0),CU(Z,this._sideSize,this._sideSize,this._sideSize,0),CU(U,this._sideSize,this._sideSize,this._sideSize,0);for(let I=1;I<=this._maxSideIndex;++I,++$){if(E.shouldNotify($))yield{progress:E.progress};XU(A,this._sideSize,0),XU(Q,this._sideSize,0),XU(B,this._sideSize,0),XU(Y,this._sideSize,0),XU(J,this._sideSize,0),XU(C,this._sideSize,0);for(let V=1;V<=this._maxSideIndex;++V){let H=0,D=0,L=0,z=0,M=0,N=0;for(let q=1;q<=this._maxSideIndex;++q)H+=this._weights[K][I][V][q],D+=this._momentsRed[K][I][V][q],L+=this._momentsGreen[K][I][V][q],z+=this._momentsBlue[K][I][V][q],M+=this._momentsAlpha[K][I][V][q],N+=this._moments[K][I][V][q],A[q]+=H,Q[q]+=D,B[q]+=L,Y[q]+=z,J[q]+=M,C[q]+=N,X[I][V][q]=X[I-1][V][q]+A[q],G[I][V][q]=G[I-1][V][q]+Q[q],F[I][V][q]=F[I-1][V][q]+B[q],W[I][V][q]=W[I-1][V][q]+Y[q],Z[I][V][q]=Z[I-1][V][q]+J[q],U[I][V][q]=U[I-1][V][q]+C[q],this._weights[K][I][V][q]=this._weights[K-1][I][V][q]+X[I][V][q],this._momentsRed[K][I][V][q]=this._momentsRed[K-1][I][V][q]+G[I][V][q],this._momentsGreen[K][I][V][q]=this._momentsGreen[K-1][I][V][q]+F[I][V][q],this._momentsBlue[K][I][V][q]=this._momentsBlue[K-1][I][V][q]+W[I][V][q],this._momentsAlpha[K][I][V][q]=this._momentsAlpha[K-1][I][V][q]+Z[I][V][q],this._moments[K][I][V][q]=this._moments[K-1][I][V][q]+U[I][V][q]}}}}static _volumeFloat(A,Q){return Q[A.alphaMaximum][A.redMaximum][A.greenMaximum][A.blueMaximum]-Q[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMaximum]-Q[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMaximum]+Q[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMaximum]-Q[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMaximum]+Q[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMaximum]+Q[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMaximum]-Q[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(Q[A.alphaMaximum][A.redMaximum][A.greenMaximum][A.blueMinimum]-Q[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMinimum]-Q[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMinimum]+Q[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]-Q[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMinimum]+Q[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]+Q[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]-Q[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum])}static _volume(A,Q){return OQ._volumeFloat(A,Q)|0}static _top(A,Q,B,Y){let J;switch(Q){case OQ._alpha:J=Y[B][A.redMaximum][A.greenMaximum][A.blueMaximum]-Y[B][A.redMaximum][A.greenMinimum][A.blueMaximum]-Y[B][A.redMinimum][A.greenMaximum][A.blueMaximum]+Y[B][A.redMinimum][A.greenMinimum][A.blueMaximum]-(Y[B][A.redMaximum][A.greenMaximum][A.blueMinimum]-Y[B][A.redMaximum][A.greenMinimum][A.blueMinimum]-Y[B][A.redMinimum][A.greenMaximum][A.blueMinimum]+Y[B][A.redMinimum][A.greenMinimum][A.blueMinimum]);break;case OQ._red:J=Y[A.alphaMaximum][B][A.greenMaximum][A.blueMaximum]-Y[A.alphaMaximum][B][A.greenMinimum][A.blueMaximum]-Y[A.alphaMinimum][B][A.greenMaximum][A.blueMaximum]+Y[A.alphaMinimum][B][A.greenMinimum][A.blueMaximum]-(Y[A.alphaMaximum][B][A.greenMaximum][A.blueMinimum]-Y[A.alphaMaximum][B][A.greenMinimum][A.blueMinimum]-Y[A.alphaMinimum][B][A.greenMaximum][A.blueMinimum]+Y[A.alphaMinimum][B][A.greenMinimum][A.blueMinimum]);break;case OQ._green:J=Y[A.alphaMaximum][A.redMaximum][B][A.blueMaximum]-Y[A.alphaMaximum][A.redMinimum][B][A.blueMaximum]-Y[A.alphaMinimum][A.redMaximum][B][A.blueMaximum]+Y[A.alphaMinimum][A.redMinimum][B][A.blueMaximum]-(Y[A.alphaMaximum][A.redMaximum][B][A.blueMinimum]-Y[A.alphaMaximum][A.redMinimum][B][A.blueMinimum]-Y[A.alphaMinimum][A.redMaximum][B][A.blueMinimum]+Y[A.alphaMinimum][A.redMinimum][B][A.blueMinimum]);break;case OQ._blue:J=Y[A.alphaMaximum][A.redMaximum][A.greenMaximum][B]-Y[A.alphaMaximum][A.redMaximum][A.greenMinimum][B]-Y[A.alphaMaximum][A.redMinimum][A.greenMaximum][B]+Y[A.alphaMaximum][A.redMinimum][A.greenMinimum][B]-(Y[A.alphaMinimum][A.redMaximum][A.greenMaximum][B]-Y[A.alphaMinimum][A.redMaximum][A.greenMinimum][B]-Y[A.alphaMinimum][A.redMinimum][A.greenMaximum][B]+Y[A.alphaMinimum][A.redMinimum][A.greenMinimum][B]);break;default:throw Error("impossible")}return J|0}static _bottom(A,Q,B){switch(Q){case OQ._alpha:return-B[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMaximum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMaximum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMaximum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(-B[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMinimum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);case OQ._red:return-B[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMaximum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMaximum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMaximum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(-B[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMinimum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);case OQ._green:return-B[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMaximum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMaximum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMaximum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(-B[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);case OQ._blue:return-B[A.alphaMaximum][A.redMaximum][A.greenMaximum][A.blueMinimum]+B[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]-(-B[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMinimum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);default:return 0}}_calculateVariance(A){let Q=OQ._volume(A,this._momentsRed),B=OQ._volume(A,this._momentsGreen),Y=OQ._volume(A,this._momentsBlue),J=OQ._volume(A,this._momentsAlpha),C=OQ._volumeFloat(A,this._moments),X=OQ._volume(A,this._weights),G=Q*Q+B*B+Y*Y+J*J;return C-G/X}_maximize(A,Q,B,Y,J,C,X,G,F){let W=OQ._bottom(A,Q,this._momentsRed)|0,Z=OQ._bottom(A,Q,this._momentsGreen)|0,U=OQ._bottom(A,Q,this._momentsBlue)|0,$=OQ._bottom(A,Q,this._momentsAlpha)|0,E=OQ._bottom(A,Q,this._weights)|0,K=0,I=-1;for(let V=B;VK)K=q,I=V}}}return{max:K,position:I}}_cut(A,Q){let B,Y=OQ._volume(A,this._momentsRed),J=OQ._volume(A,this._momentsGreen),C=OQ._volume(A,this._momentsBlue),X=OQ._volume(A,this._momentsAlpha),G=OQ._volume(A,this._weights),F=this._maximize(A,OQ._red,A.redMinimum+1,A.redMaximum,Y,J,C,X,G),W=this._maximize(A,OQ._green,A.greenMinimum+1,A.greenMaximum,Y,J,C,X,G),Z=this._maximize(A,OQ._blue,A.blueMinimum+1,A.blueMaximum,Y,J,C,X,G),U=this._maximize(A,OQ._alpha,A.alphaMinimum+1,A.alphaMaximum,Y,J,C,X,G);if(U.max>=F.max&&U.max>=W.max&&U.max>=Z.max){if(B=OQ._alpha,U.position<0)return!1}else if(F.max>=U.max&&F.max>=W.max&&F.max>=Z.max)B=OQ._red;else if(W.max>=U.max&&W.max>=F.max&&W.max>=Z.max)B=OQ._green;else B=OQ._blue;switch(Q.redMaximum=A.redMaximum,Q.greenMaximum=A.greenMaximum,Q.blueMaximum=A.blueMaximum,Q.alphaMaximum=A.alphaMaximum,B){case OQ._red:Q.redMinimum=A.redMaximum=F.position,Q.greenMinimum=A.greenMinimum,Q.blueMinimum=A.blueMinimum,Q.alphaMinimum=A.alphaMinimum;break;case OQ._green:Q.greenMinimum=A.greenMaximum=W.position,Q.redMinimum=A.redMinimum,Q.blueMinimum=A.blueMinimum,Q.alphaMinimum=A.alphaMinimum;break;case OQ._blue:Q.blueMinimum=A.blueMaximum=Z.position,Q.redMinimum=A.redMinimum,Q.greenMinimum=A.greenMinimum,Q.alphaMinimum=A.alphaMinimum;break;case OQ._alpha:Q.alphaMinimum=A.alphaMaximum=U.position,Q.blueMinimum=A.blueMinimum,Q.redMinimum=A.redMinimum,Q.greenMinimum=A.greenMinimum;break}return A.volume=(A.redMaximum-A.redMinimum)*(A.greenMaximum-A.greenMinimum)*(A.blueMaximum-A.blueMinimum)*(A.alphaMaximum-A.alphaMinimum),Q.volume=(Q.redMaximum-Q.redMinimum)*(Q.greenMaximum-Q.greenMinimum)*(Q.blueMaximum-Q.blueMinimum)*(Q.alphaMaximum-Q.alphaMinimum),!0}_initialize(A){this._colors=A,this._cubes=[];for(let Q=0;Qv3,ErrorDiffusionArray:()=>k1,ErrorDiffusionArrayKernel:()=>w1A,ErrorDiffusionRiemersma:()=>Pg,NearestColor:()=>R1A});var v3=class{quantizeSync(A,Q){for(let B of this.quantize(A,Q))if(B.pointContainer)return B.pointContainer;throw Error("unreachable")}},R1A=class extends v3{constructor(A){super();WA(this,"_distance"),this._distance=A}*quantize(A,Q){let B=A.getPointArray(),Y=A.getWidth(),J=A.getHeight(),C=new NX(J,99);for(let X=0;X{return A[A.FloydSteinberg=0]="FloydSteinberg",A[A.FalseFloydSteinberg=1]="FalseFloydSteinberg",A[A.Stucki=2]="Stucki",A[A.Atkinson=3]="Atkinson",A[A.Jarvis=4]="Jarvis",A[A.Burkes=5]="Burkes",A[A.Sierra=6]="Sierra",A[A.TwoSierra=7]="TwoSierra",A[A.SierraLite=8]="SierraLite",A})(w1A||{}),k1=class extends v3{constructor(A,Q,B=!0,Y=0,J=!1){super();WA(this,"_minColorDistance"),WA(this,"_serpentine"),WA(this,"_kernel"),WA(this,"_calculateErrorLikeGIMP"),WA(this,"_distance"),this._setKernel(Q),this._distance=A,this._minColorDistance=Y,this._serpentine=B,this._calculateErrorLikeGIMP=J}*quantize(A,Q){let B=A.getPointArray(),Y=new Z8,J=A.getWidth(),C=A.getHeight(),X=[],G=1,F=1;for(let Z of this._kernel){let U=Z[2]+1;if(F=0&&k+I=0&&T+ZQ)A.length=Q;let B=A.length;for(let Y=0;Y=0&&A.x=0&&A.y{let W=B[G+F*Y],{r:Z,g:U,b:$,a:E}=W;for(let H=0;HLrQ});var DrQ=0.01,NrQ=0.03;function LrQ(A,Q){if(A.getHeight()!==Q.getHeight()||A.getWidth()!==Q.getWidth())throw Error("Images have different sizes!");let Y=255,J=(DrQ*Y)**2,C=(NrQ*Y)**2,X=0,G=0;return qrQ(A,Q,(F,W,Z,U)=>{let $=0,E=0,K=0;for(let L=0;Lprocess.nextTick(A):(A)=>setTimeout(A,0);function MrQ(A,{colorDistanceFormula:Q,paletteQuantization:B,colors:Y}={}){let J=y3(Q),C=P1A(J,B,Y);return A.forEach((X)=>C.sample(X)),C.quantizeSync()}async function zrQ(A,{colorDistanceFormula:Q,paletteQuantization:B,colors:Y,onProgress:J}={}){return new Promise((C,X)=>{let G=y3(Q),F=P1A(G,B,Y);A.forEach(($)=>F.sample($));let W,Z=F.quantize(),U=()=>{try{let $=Z.next();if($.done)C(W);else{if($.value.palette)W=$.value.palette;if(J)J($.value.progress);T3(U)}}catch($){X($)}};T3(U)})}function RrQ(A,Q,{colorDistanceFormula:B,imageQuantization:Y}={}){let J=y3(B);return O1A(J,Y).quantizeSync(A,Q)}async function wrQ(A,Q,{colorDistanceFormula:B,imageQuantization:Y,onProgress:J}={}){return new Promise((C,X)=>{let G=y3(B),F=O1A(G,Y),W,Z=F.quantize(A,Q),U=()=>{try{let $=Z.next();if($.done)C(W);else{if($.value.pointContainer)W=$.value.pointContainer;if(J)J($.value.progress);T3(U)}}catch($){X($)}};T3(U)})}function y3(A="euclidean-bt709"){switch(A){case"cie94-graphic-arts":return new F1A;case"cie94-textiles":return new G1A;case"ciede2000":return new MC;case"color-metric":return new W1A;case"euclidean":return new Z1A;case"euclidean-bt709":return new $1A;case"euclidean-bt709-noalpha":return new U1A;case"manhattan":return new E1A;case"manhattan-bt709":return new V1A;case"manhattan-nommyde":return new K1A;case"pngquant":return new I1A;default:throw Error(`Unknown colorDistanceFormula ${A}`)}}function O1A(A,Q="floyd-steinberg"){switch(Q){case"nearest":return new R1A(A);case"riemersma":return new Pg(A);case"floyd-steinberg":return new k1(A,0);case"false-floyd-steinberg":return new k1(A,1);case"stucki":return new k1(A,2);case"atkinson":return new k1(A,3);case"jarvis":return new k1(A,4);case"burkes":return new k1(A,5);case"sierra":return new k1(A,6);case"two-sierra":return new k1(A,7);case"sierra-lite":return new k1(A,8);default:throw Error(`Unknown imageQuantization ${Q}`)}}function P1A(A,Q="wuquant",B=256){switch(Q){case"neuquant":return new T0(A,B);case"rgbquant":return new q1A(A,B);case"wuquant":return new GU(A,B);case"neuquant-float":return new S0(A,B);default:throw Error(`Unknown paletteQuantization ${Q}`)}}T1A.exports=JrQ(pCA)});var h3=R((jrQ)=>{var k1A=O3(),{GifError:PXY}=WH();class X7 extends k1A{constructor(...A){super(...A);if(A[0]instanceof X7){let Q=A[0];this.xOffset=Q.xOffset,this.yOffset=Q.yOffset,this.disposalMethod=Q.disposalMethod,this.delayCentisecs=Q.delayCentisecs,this.interlaced=Q.interlaced}else{let Q=A[A.length-1],B={};if(typeof Q==="object"&&!(Q instanceof k1A))B=Q;this.xOffset=B.xOffset||0,this.yOffset=B.yOffset||0,this.disposalMethod=B.disposalMethod!==void 0?B.disposalMethod:X7.DisposeToBackgroundColor,this.delayCentisecs=B.delayCentisecs||8,this.interlaced=B.interlaced||!1}}getPalette(){let A=new Set,Q=this.bitmap.data,B=0,Y=!1;while(B>8&16777215;A.add(G)}B+=4}let J=Array(A.size),C=A.values();for(B=0;BG-F);let X=J.length;if(Y)++X;return{colors:J,usesTransparency:Y,indexCount:X}}}X7.DisposeToAnything=0;X7.DisposeNothing=1;X7.DisposeToBackgroundColor=2;X7.DisposeToPrevious=3;jrQ.GifFrame=X7});var Sg=R((hrQ)=>{var _1A=u("fs"),FU=S1A(),PrQ=O3(),{GifFrame:TrQ}=h3(),{GifError:SrQ}=WH(),{GifCodec:krQ}=kg(),_rQ=[".jpg",".jpeg",".png",".bmp"],v1A=new krQ;hrQ.cloneFrames=function(A){let Q=[];return A.forEach((B)=>{Q.push(new TrQ(B))}),Q};hrQ.getColorInfo=function(A,Q){let B=!1,Y=[];for(let F=0;F256)throw new SrQ(`Frame ${F} uses more than 256 color indexes`);Y.push(W)}if(Q===0)return{usesTransparency:B,palettes:Y};let J=new Set;Y.forEach((F)=>{F.colors.forEach((W)=>{J.add(W)})});let C=J.size;if(B)++C;if(Q&&C>Q)return{usesTransparency:B,palettes:Y};let X=Array(J.size),G=J.values();for(let F=0;FF-W),{colors:X,indexCount:C,usesTransparency:B,palettes:Y}};hrQ.copyAsJimp=function(A,Q){return hrQ.shareAsJimp(A,new PrQ(Q))};hrQ.getMaxDimensions=function(A){let Q=0,B=0;return A.forEach((Y)=>{let J=Y.xOffset+Y.bitmap.width;if(J>Q)Q=J;let C=Y.yOffset+Y.bitmap.height;if(C>B)B=C}),{maxWidth:Q,maxHeight:B}};hrQ.quantizeDekker=function(A,Q,B){Q=Q||256,Tg(A,"NeuQuantFloat",Q,0,B)};hrQ.quantizeSorokin=function(A,Q,B,Y){Q=Q||256,B=B||"min-pop";let J;switch(B){case"min-pop":J=2;break;case"top-pop":J=1;break;default:throw Error(`Invalid quantizeSorokin histogram '${B}'`)}Tg(A,"RGBQuant",Q,J,Y)};hrQ.quantizeWu=function(A,Q,B,Y){if(Q=Q||256,B=B||5,B<1||B>8)throw Error("Invalid quantization quality");Tg(A,"WuQuant",Q,B,Y)};hrQ.read=function(A,Q){if(Q=Q||v1A,Buffer.isBuffer(A))return Q.decodeGif(A);return vrQ(A).then((B)=>{return Q.decodeGif(B)})};hrQ.shareAsJimp=function(A,Q){let B=new A(Q.bitmap.width,Q.bitmap.height,0);return B.bitmap.data=Q.bitmap.data,B};hrQ.write=function(A,Q,B,Y){Y=Y||v1A;let J=A.match(/\.[a-zA-Z]+$/);if(J!==null&&_rQ.includes(J[0].toLowerCase()))throw Error(`GIF '${A}' has an unexpected suffix`);return Y.encodeGif(Q,B).then((C)=>{return yrQ(A,C.buffer).then(()=>{return C})})};function Tg(A,Q,B,Y,J){let C=Array.isArray(A)?A:[A],X=["FloydSteinberg","FalseFloydSteinberg","Stucki","Atkinson","Jarvis","Burkes","Sierra","TwoSierra","SierraLite"];if(J){if(X.indexOf(J.ditherAlgorithm)<0)throw Error(`Invalid ditherAlgorithm '${J.ditherAlgorithm}'`);if(J.serpentine===void 0)J.serpentine=!0;if(J.minimumColorDistanceToDither===void 0)J.minimumColorDistanceToDither=0;if(J.calculateErrorLikeGIMP===void 0)J.calculateErrorLikeGIMP=!1}let G=new FU.distance.Euclidean,F=new FU.palette[Q](G,B,Y),W;if(J)W=new FU.image.ErrorDiffusionArray(G,FU.image.ErrorDiffusionArrayKernel[J.ditherAlgorithm],J.serpentine,J.minimumColorDistanceToDither,J.calculateErrorLikeGIMP);else W=new FU.image.NearestColor(G);let Z=[];C.forEach(($)=>{let E=$.bitmap.data,K=new ArrayBuffer(E.length),I=new Uint32Array(K);for(let H=0,D=0;H{_1A.readFile(A,(Y,J)=>{if(Y)return B(Y);return Q(J)})})}function yrQ(A,Q){return new Promise((B,Y)=>{_1A.writeFile(A,Q,(J)=>{if(J)return Y(J);return B()})})}});var kg=R((erQ)=>{var _g=qg(),{Gif:G7,GifError:LX}=WH();function g3(){let A=Sg();return g3=function(){return A},A}var{GifFrame:irQ}=h3(),y1A=200,nrQ=100;class x1A{constructor(A={}){if(this._transparentRGB=null,typeof A.transparentRGB==="number"&&A.transparentRGB!==0)this._transparentRGBA=A.transparentRGB*256;this._testInitialBufferSize=0}decodeGif(A){try{let Q;try{Q=new _g.GifReader(A)}catch(C){throw new LX(C)}let B=Q.numFrames(),Y=[],J={width:Q.width,height:Q.height,loops:Q.loopCount()};J.usesTransparency=!1;for(let C=0;CY.width)for(let G=0;G0)return this._testInitialBufferSize;let B=y1A+768,Y=g1A(A);return Q.forEach((J)=>{B+=h1A(J,Y)}),B}_getSizeEstimateLocal(A,Q){if(this._testInitialBufferSize>0)return this._testInitialBufferSize;let B=y1A;for(let Y=0;YQ)Y=J-1;else if(A[J]Y)Y<<=1;Q.length=Y,Q.fill(0,B)}function h1A(A,Q){let B=A.bitmap.width*A.bitmap.height;return B=Math.ceil(B*Q/8),B+=Math.ceil(B/255),nrQ+B+768}function trQ(A,Q,B){let Y=B.colors,J=Y.length<=8?srQ:rrQ,C=Q.bitmap.data,X=new Buffer(C.length/4),G=Y.length,F=0,W=0;while(F>8&16777215;X[W]=J(Y,Z)}else X[W]=G;F+=4,++W}if(B.usesTransparency){if(G===256)throw new LX(`Frame ${A} already has 256 colorsand so can't use transparency`)}else G=null;return{buffer:X,transparentIndex:G}}function g1A(A){let Q=A.indexCount,B=0;--Q;while(Q)++B,Q>>=1;return B>0?B:1}function b1A(A,Q,B,Y,J){if(B.interlaced)throw new LX("writing interlaced GIFs is not supported");let C=trQ(Q,B,Y),X={delay:B.delayCentisecs,disposal:B.disposalMethod,transparent:C.transparentIndex};if(J)f1A(Y),X.palette=Y.colors;try{let G=A.getOutputBuffer(),F=A.getOutputBufferPosition(),W,Z=!0;while(Z)if(W=A.addFrame(B.xOffset,B.yOffset,B.bitmap.width,B.bitmap.height,C.buffer,X),Z=!1,W>=G.length-1){let U=new Buffer(G.length*1.5);G.copy(U),A.setOutputBuffer(U),A.setOutputBufferPosition(F),G=U,Z=!0}return G}catch(G){throw new LX(G)}}});var u1A=R((_XY,m1A)=>{var QaQ=O3(),{Gif:BaQ,GifError:YaQ}=WH(),{GifCodec:JaQ}=kg(),{GifFrame:CaQ}=h3(),XaQ=Sg();m1A.exports={BitmapImage:QaQ,Gif:BaQ,GifCodec:JaQ,GifFrame:CaQ,GifUtil:XaQ,GifError:YaQ}});var p1A=R((yXY,f3)=>{var l1A=l1A||function(A){return Buffer.from(A).toString("base64")};function GaQ(A){var Q=this,B=Math.round,Y=Math.floor,J=Array(64),C=Array(64),X=Array(64),G=Array(64),F,W,Z,U,$=Array(65535),E=Array(65535),K=Array(64),I=Array(64),V=[],H=0,D=7,L=Array(64),z=Array(64),M=Array(64),N=Array(256),q=Array(2048),w,P=[0,1,5,6,14,15,27,28,2,4,7,13,16,26,29,42,3,8,12,17,25,30,41,43,9,11,18,24,31,40,44,53,10,19,23,32,39,45,52,54,20,22,33,38,46,51,55,60,21,34,37,47,50,56,59,61,35,36,48,49,57,58,62,63],_=[0,0,1,5,1,1,1,1,1,1,0,0,0,0,0,0,0],O=[0,1,2,3,4,5,6,7,8,9,10,11],k=[0,0,2,1,3,3,2,4,3,5,5,4,4,0,0,1,125],T=[1,2,3,0,4,17,5,18,33,49,65,6,19,81,97,7,34,113,20,50,129,145,161,8,35,66,177,193,21,82,209,240,36,51,98,114,130,9,10,22,23,24,25,26,37,38,39,40,41,42,52,53,54,55,56,57,58,67,68,69,70,71,72,73,74,83,84,85,86,87,88,89,90,99,100,101,102,103,104,105,106,115,116,117,118,119,120,121,122,131,132,133,134,135,136,137,138,146,147,148,149,150,151,152,153,154,162,163,164,165,166,167,168,169,170,178,179,180,181,182,183,184,185,186,194,195,196,197,198,199,200,201,202,210,211,212,213,214,215,216,217,218,225,226,227,228,229,230,231,232,233,234,241,242,243,244,245,246,247,248,249,250],S=[0,0,3,1,1,1,1,1,1,1,1,1,0,0,0,0,0],v=[0,1,2,3,4,5,6,7,8,9,10,11],y=[0,0,2,1,2,4,4,3,4,7,5,4,4,0,1,2,119],g=[0,1,2,3,17,4,5,33,49,6,18,65,81,7,97,113,19,34,50,129,8,20,66,145,161,177,193,9,35,51,82,240,21,98,114,209,10,22,36,52,225,37,241,23,24,25,26,38,39,40,41,42,53,54,55,56,57,58,67,68,69,70,71,72,73,74,83,84,85,86,87,88,89,90,99,100,101,102,103,104,105,106,115,116,117,118,119,120,121,122,130,131,132,133,134,135,136,137,138,146,147,148,149,150,151,152,153,154,162,163,164,165,166,167,168,169,170,178,179,180,181,182,183,184,185,186,194,195,196,197,198,199,200,201,202,210,211,212,213,214,215,216,217,218,226,227,228,229,230,231,232,233,234,242,243,244,245,246,247,248,249,250];function h(XA){var PA=[16,11,10,16,24,40,51,61,12,12,14,19,26,58,60,55,14,13,16,24,40,57,69,56,14,17,22,29,51,87,80,62,18,22,37,56,68,109,103,77,24,35,55,64,81,104,113,92,49,64,78,87,103,121,120,101,72,92,95,98,112,100,103,99];for(var NA=0;NA<64;NA++){var TA=Y((PA[NA]*XA+50)/100);if(TA<1)TA=1;else if(TA>255)TA=255;J[P[NA]]=TA}var vA=[17,18,24,47,99,99,99,99,18,21,26,66,99,99,99,99,24,26,56,99,99,99,99,99,47,66,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99];for(var mA=0;mA<64;mA++){var ZQ=Y((vA[mA]*XA+50)/100);if(ZQ<1)ZQ=1;else if(ZQ>255)ZQ=255;C[P[mA]]=ZQ}var NQ=[1,1.387039845,1.306562965,1.175875602,1,0.785694958,0.5411961,0.275899379],CQ=0;for(var SQ=0;SQ<8;SQ++)for(var LA=0;LA<8;LA++)X[CQ]=1/(J[P[CQ]]*NQ[SQ]*NQ[LA]*8),G[CQ]=1/(C[P[CQ]]*NQ[SQ]*NQ[LA]*8),CQ++}function m(XA,PA){var NA=0,TA=0,vA=[];for(var mA=1;mA<=16;mA++){for(var ZQ=1;ZQ<=XA[mA];ZQ++)vA[PA[TA]]=[],vA[PA[TA]][0]=NA,vA[PA[TA]][1]=mA,TA++,NA++;NA*=2}return vA}function i(){F=m(_,O),W=m(S,v),Z=m(k,T),U=m(y,g)}function p(){var XA=1,PA=2;for(var NA=1;NA<=15;NA++){for(var TA=XA;TA>0]=38470*XA,q[XA+512>>0]=7471*XA+32768,q[XA+768>>0]=-11059*XA,q[XA+1024>>0]=-21709*XA,q[XA+1280>>0]=32768*XA+8421375,q[XA+1536>>0]=-27439*XA,q[XA+1792>>0]=-5329*XA}function d(XA){var PA=XA[0],NA=XA[1]-1;while(NA>=0){if(PA&1<>8&255),x(XA&255)}function o(XA,PA){var NA,TA,vA,mA,ZQ,NQ,CQ,SQ,LA=0,IA,jA=8,tQ=64;for(IA=0;IA0?GM+0.5|0:GM-0.5|0;return K}function GA(){b(65504),b(16),x(74),x(70),x(73),x(70),x(0),x(1),x(1),x(0),b(1),b(1),x(0),x(0)}function VA(XA){if(!XA)return;if(b(65505),XA[0]===69&&XA[1]===120&&XA[2]===105&&XA[3]===102)b(XA.length+2);else b(XA.length+5+2),x(69),x(120),x(105),x(102),x(0);for(var PA=0;PA"u"||XA.constructor!==Array)return;XA.forEach((PA)=>{if(typeof PA!=="string")return;b(65534);var NA=PA.length;b(NA+2);var TA;for(TA=0;TA0&&I[IQ]==0;IQ--);if(IQ==0)return d(mA),NA;var vQ=1,KB;while(vQ<=IQ){var zA=vQ;for(;I[vQ]==0&&vQ<=IQ;++vQ);var uA=vQ-zA;if(uA>=CQ){KB=uA>>4;for(var MQ=1;MQ<=KB;++MQ)d(ZQ);uA=uA&15}NQ=32767+I[vQ],d(vA[(uA<<4)+E[NQ]]),d($[NQ]),vQ++}if(IQ!=SQ)d(mA);return NA}function DA(){var XA=String.fromCharCode;for(var PA=0;PA<256;PA++)N[PA]=XA(PA)}this.encode=function(XA,PA){var NA=new Date().getTime();if(PA)gA(PA);V=[],H=0,D=7,b(65496),GA(),QA(XA.comments),VA(XA.exifBuffer),UA(),EA(XA.width,XA.height),CA(),KA();var TA=0,vA=0,mA=0;H=0,D=7,this.encode.displayName="_encode_";var{data:ZQ,width:NQ,height:CQ}=XA,SQ=NQ*4,LA=NQ*3,IA,jA=0,tQ,IQ,vQ,KB,zA,uA,MQ,bQ;while(jA>3,uA=(bQ&7)*4,zA=KB+MQ*SQ+uA,jA+MQ>=CQ)zA-=SQ*(jA+1+MQ-CQ);if(IA+uA>=SQ)zA-=IA+uA-SQ+4;tQ=ZQ[zA++],IQ=ZQ[zA++],vQ=ZQ[zA++],L[bQ]=(q[tQ]+q[IQ+256>>0]+q[vQ+512>>0]>>16)-128,z[bQ]=(q[tQ+768>>0]+q[IQ+1024>>0]+q[vQ+1280>>0]>>16)-128,M[bQ]=(q[tQ+1280>>0]+q[IQ+1536>>0]+q[vQ+1792>>0]>>16)-128}TA=HA(L,X,TA,F,Z),vA=HA(z,G,vA,W,U),mA=HA(M,G,mA,W,U),IA+=32}jA+=8}if(D>=0){var eQ=[];eQ[1]=D+1,eQ[0]=(1<"u")return new Uint8Array(V);return Buffer.from(V);var cB,mQ};function gA(XA){if(XA<=0)XA=1;if(XA>100)XA=100;if(w==XA)return;var PA=0;if(XA<50)PA=Math.floor(5000/XA);else PA=Math.floor(200-XA*2);h(PA),w=XA}function QQ(){var XA=new Date().getTime();if(!A)A=50;DA(),i(),p(),l(),gA(A);var PA=new Date().getTime()-XA}QQ()}if(typeof f3<"u")f3.exports=c1A;else if(typeof window<"u")window["jpeg-js"]=window["jpeg-js"]||{},window["jpeg-js"].encode=c1A;function c1A(A,Q){if(typeof Q>"u")Q=50;var B=new GaQ(Q),Y=B.encode(A,Q);return{data:Y,width:A.width,height:A.height}}});var n1A=R((hXY,yg)=>{var vg=function(){var Q=new Int32Array([0,1,8,16,9,2,3,10,17,24,32,25,18,11,4,5,12,19,26,33,40,48,41,34,27,20,13,6,7,14,21,28,35,42,49,56,57,50,43,36,29,22,15,23,30,37,44,51,58,59,52,45,38,31,39,46,53,60,61,54,47,55,62,63]),B=4017,Y=799,J=3406,C=2276,X=1567,G=3784,F=5793,W=2896;function Z(){}function U(D,L){var z=0,M=[],N,q,w=16;while(w>0&&!D[w-1])w--;M.push({children:[],index:0});var P=M[0],_;for(N=0;N0){if(M.length===0)throw Error("Could not recreate Huffman Table");P=M.pop()}P.index++,M.push(P);while(M.length<=N)M.push(_={children:[],index:0}),P.children[P.index]=_.children,P=_;z++}if(N+10)return p--,i>>p&1;if(i=D[L++],i==255){var LA=D[L++];if(LA)throw Error("unexpected marker: "+(i<<8|LA).toString(16))}return p=7,i>>>7}function d(LA){var IA=LA,jA;while((jA=l())!==null){if(IA=IA[jA],typeof IA==="number")return IA;if(typeof IA!=="object")throw Error("invalid huffman sequence")}return null}function x(LA){var IA=0;while(LA>0){var jA=l();if(jA===null)return;IA=IA<<1|jA,LA--}return IA}function b(LA){var IA=x(LA);if(IA>=1<>4;if(KB===0){if(zA<15)break;IQ+=16;continue}IQ+=zA;var uA=Q[IQ];IA[uA]=b(KB),IQ++}}function GA(LA,IA){var jA=d(LA.huffmanTableDC),tQ=jA===0?0:b(jA)<<_;IA[0]=LA.pred+=tQ}function VA(LA,IA){IA[0]|=l()<<_}var EA=0;function UA(LA,IA){if(EA>0){EA--;return}var jA=q,tQ=w;while(jA<=tQ){var IQ=d(LA.huffmanTableAC),vQ=IQ&15,KB=IQ>>4;if(vQ===0){if(KB<15){EA=x(KB)+(1<>4;if(uA===0)if(IQ<15)EA=x(IQ)+(1<=65488&&ZQ<=65495)L+=2;else break}return L-m}function E(D,L){var z=[],M=L.blocksPerLine,N=L.blocksPerColumn,q=M<<3,w=new Int32Array(64),P=new Uint8Array(64);function _(m,i,p){var l=L.quantizationTable,d,x,b,o,GA,VA,EA,UA,CA,QA=p,KA;for(KA=0;KA<64;KA++)QA[KA]=m[KA]*l[KA];for(KA=0;KA<8;++KA){var HA=8*KA;if(QA[1+HA]==0&&QA[2+HA]==0&&QA[3+HA]==0&&QA[4+HA]==0&&QA[5+HA]==0&&QA[6+HA]==0&&QA[7+HA]==0){CA=F*QA[0+HA]+512>>10,QA[0+HA]=CA,QA[1+HA]=CA,QA[2+HA]=CA,QA[3+HA]=CA,QA[4+HA]=CA,QA[5+HA]=CA,QA[6+HA]=CA,QA[7+HA]=CA;continue}d=F*QA[0+HA]+128>>8,x=F*QA[4+HA]+128>>8,b=QA[2+HA],o=QA[6+HA],GA=W*(QA[1+HA]-QA[7+HA])+128>>8,UA=W*(QA[1+HA]+QA[7+HA])+128>>8,VA=QA[3+HA]<<4,EA=QA[5+HA]<<4,CA=d-x+1>>1,d=d+x+1>>1,x=CA,CA=b*G+o*X+128>>8,b=b*X-o*G+128>>8,o=CA,CA=GA-EA+1>>1,GA=GA+EA+1>>1,EA=CA,CA=UA+VA+1>>1,VA=UA-VA+1>>1,UA=CA,CA=d-o+1>>1,d=d+o+1>>1,o=CA,CA=x-b+1>>1,x=x+b+1>>1,b=CA,CA=GA*C+UA*J+2048>>12,GA=GA*J-UA*C+2048>>12,UA=CA,CA=VA*Y+EA*B+2048>>12,VA=VA*B-EA*Y+2048>>12,EA=CA,QA[0+HA]=d+UA,QA[7+HA]=d-UA,QA[1+HA]=x+EA,QA[6+HA]=x-EA,QA[2+HA]=b+VA,QA[5+HA]=b-VA,QA[3+HA]=o+GA,QA[4+HA]=o-GA}for(KA=0;KA<8;++KA){var DA=KA;if(QA[8+DA]==0&&QA[16+DA]==0&&QA[24+DA]==0&&QA[32+DA]==0&&QA[40+DA]==0&&QA[48+DA]==0&&QA[56+DA]==0){CA=F*p[KA+0]+8192>>14,QA[0+DA]=CA,QA[8+DA]=CA,QA[16+DA]=CA,QA[24+DA]=CA,QA[32+DA]=CA,QA[40+DA]=CA,QA[48+DA]=CA,QA[56+DA]=CA;continue}d=F*QA[0+DA]+2048>>12,x=F*QA[32+DA]+2048>>12,b=QA[16+DA],o=QA[48+DA],GA=W*(QA[8+DA]-QA[56+DA])+2048>>12,UA=W*(QA[8+DA]+QA[56+DA])+2048>>12,VA=QA[24+DA],EA=QA[40+DA],CA=d-x+1>>1,d=d+x+1>>1,x=CA,CA=b*G+o*X+2048>>12,b=b*X-o*G+2048>>12,o=CA,CA=GA-EA+1>>1,GA=GA+EA+1>>1,EA=CA,CA=UA+VA+1>>1,VA=UA-VA+1>>1,UA=CA,CA=d-o+1>>1,d=d+o+1>>1,o=CA,CA=x-b+1>>1,x=x+b+1>>1,b=CA,CA=GA*C+UA*J+2048>>12,GA=GA*J-UA*C+2048>>12,UA=CA,CA=VA*Y+EA*B+2048>>12,VA=VA*B-EA*Y+2048>>12,EA=CA,QA[0+DA]=d+UA,QA[56+DA]=d-UA,QA[8+DA]=x+EA,QA[48+DA]=x-EA,QA[16+DA]=b+VA,QA[40+DA]=b-VA,QA[24+DA]=o+GA,QA[32+DA]=o-GA}for(KA=0;KA<64;++KA){var gA=128+(QA[KA]+8>>4);i[KA]=gA<0?0:gA>255?255:gA}}H(q*N*8);var O,k;for(var T=0;T255?255:D}Z.prototype={load:function(L){var z=new XMLHttpRequest;z.open("GET",L,!0),z.responseType="arraybuffer",z.onload=function(){var M=new Uint8Array(z.response||z.mozResponseArrayBuffer);if(this.parse(M),this.onload)this.onload()}.bind(this),z.send(null)},parse:function(L){var z=this.opts.maxResolutionInMP*1000*1000,M=0,N=L.length;function q(){var zA=L[M]<<8|L[M+1];return M+=2,zA}function w(){var zA=q(),uA=L.subarray(M,M+zA-2);return M+=uA.length,uA}function P(zA){var uA=1,MQ=1,bQ,eQ;for(eQ in zA.components)if(zA.components.hasOwnProperty(eQ)){if(bQ=zA.components[eQ],uA>4===0)for(l=0;l<64;l++){var UA=Q[l];EA[UA]=L[M++]}else if(VA>>4===1)for(l=0;l<64;l++){var UA=Q[l];EA[UA]=q()}else throw Error("DQT: invalid table spec");v[VA&15]=EA}break;case 65472:case 65473:case 65474:q(),T={},T.extended=m===65473,T.progressive=m===65474,T.precision=L[M++],T.scanLines=q(),T.samplesPerLine=q(),T.components={},T.componentsOrder=[];var CA=T.scanLines*T.samplesPerLine;if(CA>z){var QA=Math.ceil((CA-z)/1e6);throw Error(`maxResolutionInMP limit exceeded by ${QA}MP`)}var KA=L[M++],HA,DA=0,gA=0;for(p=0;p>4,XA=L[M+1]&15,PA=L[M+2];if(QQ<=0||XA<=0)throw Error("Invalid sampling factor, expected values above 0");T.componentsOrder.push(HA),T.components[HA]={h:QQ,v:XA,quantizationIdx:PA},M+=3}P(T),y.push(T);break;case 65476:var NA=q();for(p=2;p>4===0?h:g)[TA&15]=U(vA,ZQ)}break;case 65501:q(),S=q();break;case 65500:q(),q();break;case 65498:var NQ=q(),CQ=L[M++],SQ=[],LA;for(p=0;p>4],LA.huffmanTableAC=g[IA&15],SQ.push(LA)}var jA=L[M++],tQ=L[M++],IQ=L[M++],vQ=$(L,M,T,SQ,S,jA,tQ,IQ>>4,IQ&15,this.opts);M+=vQ;break;case 65535:if(L[M]!==255)M--;break;default:if(L[M-3]==255&&L[M-2]>=192&&L[M-2]<=254){M-=3;break}else if(m===224||m==225){if(i!==-1)throw Error(`first unknown JPEG marker at offset ${i.toString(16)}, second unknown JPEG marker ${m.toString(16)} at offset ${(M-1).toString(16)}`);i=M-1;let zA=q();if(L[M+zA-2]===255){M+=zA-2;break}}throw Error("unknown JPEG marker "+m.toString(16))}m=q()}if(y.length!=1)throw Error("only single frame JPEGs supported");for(var p=0;pV){var z=Math.ceil((L-V)/1024/1024);throw Error(`maxMemoryUsageInMB limit exceeded by at least ${z}MB`)}I=L}return Z.resetMaxMemoryUsage=function(D){I=0,V=D},Z.getBytesAllocated=function(){return I},Z.requestMemoryAllocation=H,Z}();if(typeof yg<"u")yg.exports=i1A;else if(typeof window<"u")window["jpeg-js"]=window["jpeg-js"]||{},window["jpeg-js"].decode=i1A;function i1A(A,Q={}){var B={colorTransform:void 0,useTArray:!1,formatAsRGBA:!0,tolerantDecoding:!0,maxResolutionInMP:100,maxMemoryUsageInMB:512},Y={...B,...Q},J=new Uint8Array(A),C=new vg;C.opts=Y,vg.resetMaxMemoryUsage(Y.maxMemoryUsageInMB*1024*1024),C.parse(J);var X=Y.formatAsRGBA?4:3,G=C.width*C.height*X;try{vg.requestMemoryAllocation(G);var F={width:C.width,height:C.height,exifBuffer:C.exifBuffer,data:Y.useTArray?new Uint8Array(G):Buffer.alloc(G)};if(C.comments.length>0)F.comments=C.comments}catch(W){if(W instanceof RangeError)throw Error("Could not allocate enough memory for the image. Required: "+G);if(W instanceof ReferenceError){if(W.message==="Buffer is not defined")throw Error("Buffer is not globally defined in this environment. Consider setting useTArray to true")}throw W}return C.copyToImageData(F,Y.formatAsRGBA),F}});var r1A=R((gXY,s1A)=>{var FaQ=p1A(),WaQ=n1A();s1A.exports={encode:FaQ,decode:WaQ}});var gg=R((fXY,o1A)=>{var ZaQ=u("util"),a1A=u("stream"),zC=o1A.exports=function(){a1A.call(this),this._buffers=[],this._buffered=0,this._reads=[],this._paused=!1,this._encoding="utf8",this.writable=!0};ZaQ.inherits(zC,a1A);zC.prototype.read=function(A,Q){this._reads.push({length:Math.abs(A),allowLess:A<0,func:Q}),process.nextTick(function(){if(this._process(),this._paused&&this._reads&&this._reads.length>0)this._paused=!1,this.emit("drain")}.bind(this))};zC.prototype.write=function(A,Q){if(!this.writable)return this.emit("error",Error("Stream not writable")),!1;let B;if(Buffer.isBuffer(A))B=A;else B=Buffer.from(A,Q||this._encoding);if(this._buffers.push(B),this._buffered+=B.length,this._process(),this._reads&&this._reads.length===0)this._paused=!0;return this.writable&&!this._paused};zC.prototype.end=function(A,Q){if(A)this.write(A,Q);if(this.writable=!1,!this._buffers)return;if(this._buffers.length===0)this._end();else this._buffers.push(null),this._process()};zC.prototype.destroySoon=zC.prototype.end;zC.prototype._end=function(){if(this._reads.length>0)this.emit("error",Error("Unexpected end of input"));this.destroy()};zC.prototype.destroy=function(){if(!this._buffers)return;this.writable=!1,this._reads=null,this._buffers=null,this.emit("close")};zC.prototype._processReadAllowingLess=function(A){this._reads.shift();let Q=this._buffers[0];if(Q.length>A.length)this._buffered-=A.length,this._buffers[0]=Q.slice(A.length),A.func.call(this,Q.slice(0,A.length));else this._buffered-=Q.length,this._buffers.shift(),A.func.call(this,Q)};zC.prototype._processRead=function(A){this._reads.shift();let Q=0,B=0,Y=Buffer.alloc(A.length);while(Q0)this._buffers.splice(0,B);this._buffered-=A.length,A.func.call(this,Y)};zC.prototype._process=function(){try{while(this._buffered>0&&this._reads&&this._reads.length>0){let A=this._reads[0];if(A.allowLess)this._processReadAllowingLess(A);else if(this._buffered>=A.length)this._processRead(A);else break}if(this._buffers&&!this.writable)this._end()}catch(A){this.emit("error",A)}}});var xg=R(($aQ)=>{var W7=[{x:[0],y:[0]},{x:[4],y:[0]},{x:[0,4],y:[4]},{x:[2,6],y:[0,4]},{x:[0,2,4,6],y:[2,6]},{x:[1,3,5,7],y:[0,2,4,6]},{x:[0,1,2,3,4,5,6,7],y:[1,3,5,7]}];$aQ.getImagePasses=function(A,Q){let B=[],Y=A%8,J=Q%8,C=(A-Y)/8,X=(Q-J)/8;for(let G=0;G0&&Z>0)B.push({width:W,height:Z,index:G})}return B};$aQ.getInterlaceIterator=function(A){return function(Q,B,Y){let J=Q%W7[Y].x.length,C=(Q-J)/W7[Y].x.length*8+W7[Y].x[J],X=B%W7[Y].y.length,G=(B-X)/W7[Y].y.length*8+W7[Y].y[X];return C*4+G*A*4}}});var fg=R((mXY,t1A)=>{t1A.exports=function(Q,B,Y){let J=Q+B-Y,C=Math.abs(J-Q),X=Math.abs(J-B),G=Math.abs(J-Y);if(C<=X&&C<=G)return Q;if(X<=G)return B;return Y}});var bg=R((uXY,A6A)=>{var KaQ=xg(),VaQ=fg();function e1A(A,Q,B){let Y=A*Q;if(B!==8)Y=Math.ceil(Y/(8/B));return Y}var WU=A6A.exports=function(A,Q){let{width:B,height:Y,interlace:J,bpp:C,depth:X}=A;if(this.read=Q.read,this.write=Q.write,this.complete=Q.complete,this._imageIndex=0,this._images=[],J){let G=KaQ.getImagePasses(B,Y);for(let F=0;FJ?Q[C-Y]:0;Q[C]=X+G}};WU.prototype._unFilterType2=function(A,Q,B){let Y=this._lastLine;for(let J=0;JJ?Q[X-Y]:0,Z=Math.floor((W+F)/2);Q[X]=G+Z}};WU.prototype._unFilterType4=function(A,Q,B){let Y=this._xComparison,J=Y-1,C=this._lastLine;for(let X=0;XJ?Q[X-Y]:0,Z=X>J&&C?C[X-Y]:0,U=VaQ(W,F,Z);Q[X]=G+U}};WU.prototype._reverseFilterLine=function(A){let Q=A[0],B,Y=this._images[this._imageIndex],J=Y.byteWidth;if(Q===0)B=A.slice(1,J+1);else switch(B=Buffer.alloc(J),Q){case 1:this._unFilterType1(A,B,J);break;case 2:this._unFilterType2(A,B,J);break;case 3:this._unFilterType3(A,B,J);break;case 4:this._unFilterType4(A,B,J);break;default:throw Error("Unrecognised filter type - "+Q)}if(this.write(B),Y.lineIndex++,Y.lineIndex>=Y.height)this._lastLine=null,this._imageIndex++,Y=this._images[this._imageIndex];else this._lastLine=B;if(Y)this.read(Y.byteWidth+1,this._reverseFilterLine.bind(this));else this._lastLine=null,this.complete()}});var Y6A=R((dXY,B6A)=>{var IaQ=u("util"),Q6A=gg(),HaQ=bg(),DaQ=B6A.exports=function(A){Q6A.call(this);let Q=[],B=this;this._filter=new HaQ(A,{read:this.read.bind(this),write:function(Y){Q.push(Y)},complete:function(){B.emit("complete",Buffer.concat(Q))}}),this._filter.start()};IaQ.inherits(DaQ,Q6A)});var ZU=R((cXY,J6A)=>{J6A.exports={PNG_SIGNATURE:[137,80,78,71,13,10,26,10],TYPE_IHDR:1229472850,TYPE_IEND:1229278788,TYPE_IDAT:1229209940,TYPE_PLTE:1347179589,TYPE_tRNS:1951551059,TYPE_gAMA:1732332865,COLORTYPE_GRAYSCALE:0,COLORTYPE_PALETTE:1,COLORTYPE_COLOR:2,COLORTYPE_ALPHA:4,COLORTYPE_PALETTE_COLOR:3,COLORTYPE_COLOR_ALPHA:6,COLORTYPE_TO_BPP_MAP:{0:1,2:3,3:1,4:2,6:4},GAMMA_DIVISION:1e5}});var dg=R((lXY,C6A)=>{var mg=[];(function(){for(let A=0;A<256;A++){let Q=A;for(let B=0;B<8;B++)if(Q&1)Q=3988292384^Q>>>1;else Q=Q>>>1;mg[A]=Q}})();var ug=C6A.exports=function(){this._crc=-1};ug.prototype.write=function(A){for(let Q=0;Q>>8;return!0};ug.prototype.crc32=function(){return this._crc^-1};ug.crc32=function(A){let Q=-1;for(let B=0;B>>8;return Q^-1}});var cg=R((pXY,X6A)=>{var OY=ZU(),NaQ=dg(),uY=X6A.exports=function(A,Q){this._options=A,A.checkCRC=A.checkCRC!==!1,this._hasIHDR=!1,this._hasIEND=!1,this._emittedHeadersFinished=!1,this._palette=[],this._colorType=0,this._chunks={},this._chunks[OY.TYPE_IHDR]=this._handleIHDR.bind(this),this._chunks[OY.TYPE_IEND]=this._handleIEND.bind(this),this._chunks[OY.TYPE_IDAT]=this._handleIDAT.bind(this),this._chunks[OY.TYPE_PLTE]=this._handlePLTE.bind(this),this._chunks[OY.TYPE_tRNS]=this._handleTRNS.bind(this),this._chunks[OY.TYPE_gAMA]=this._handleGAMA.bind(this),this.read=Q.read,this.error=Q.error,this.metadata=Q.metadata,this.gamma=Q.gamma,this.transColor=Q.transColor,this.palette=Q.palette,this.parsed=Q.parsed,this.inflateData=Q.inflateData,this.finished=Q.finished,this.simpleTransparency=Q.simpleTransparency,this.headersFinished=Q.headersFinished||function(){}};uY.prototype.start=function(){this.read(OY.PNG_SIGNATURE.length,this._parseSignature.bind(this))};uY.prototype._parseSignature=function(A){let Q=OY.PNG_SIGNATURE;for(let B=0;Bthis._palette.length){this.error(Error("More transparent colors than palette size"));return}for(let Q=0;Q0)this._handleIDAT(B);else this._handleChunkEnd()};uY.prototype._handleIEND=function(A){this.read(A,this._parseIEND.bind(this))};uY.prototype._parseIEND=function(A){if(this._crc.write(A),this._hasIEND=!0,this._handleChunkEnd(),this.finished)this.finished()}});var lg=R((waQ)=>{var G6A=xg(),LaQ=[function(){},function(A,Q,B,Y){if(Y===Q.length)throw Error("Ran out of data");let J=Q[Y];A[B]=J,A[B+1]=J,A[B+2]=J,A[B+3]=255},function(A,Q,B,Y){if(Y+1>=Q.length)throw Error("Ran out of data");let J=Q[Y];A[B]=J,A[B+1]=J,A[B+2]=J,A[B+3]=Q[Y+1]},function(A,Q,B,Y){if(Y+2>=Q.length)throw Error("Ran out of data");A[B]=Q[Y],A[B+1]=Q[Y+1],A[B+2]=Q[Y+2],A[B+3]=255},function(A,Q,B,Y){if(Y+3>=Q.length)throw Error("Ran out of data");A[B]=Q[Y],A[B+1]=Q[Y+1],A[B+2]=Q[Y+2],A[B+3]=Q[Y+3]}],qaQ=[function(){},function(A,Q,B,Y){let J=Q[0];A[B]=J,A[B+1]=J,A[B+2]=J,A[B+3]=Y},function(A,Q,B){let Y=Q[0];A[B]=Y,A[B+1]=Y,A[B+2]=Y,A[B+3]=Q[1]},function(A,Q,B,Y){A[B]=Q[0],A[B+1]=Q[1],A[B+2]=Q[2],A[B+3]=Y},function(A,Q,B){A[B]=Q[0],A[B+1]=Q[1],A[B+2]=Q[2],A[B+3]=Q[3]}];function MaQ(A,Q){let B=[],Y=0;function J(){if(Y===A.length)throw Error("Ran out of data");let C=A[Y];Y++;let X,G,F,W,Z,U,$,E;switch(Q){default:throw Error("unrecognised depth");case 16:$=A[Y],Y++,B.push((C<<8)+$);break;case 4:$=C&15,E=C>>4,B.push(E,$);break;case 2:Z=C&3,U=C>>2&3,$=C>>4&3,E=C>>6&3,B.push(E,$,U,Z);break;case 1:X=C&1,G=C>>1&1,F=C>>2&1,W=C>>3&1,Z=C>>4&1,U=C>>5&1,$=C>>6&1,E=C>>7&1,B.push(E,$,U,Z,W,F,G,X);break}}return{get:function(C){while(B.length{function OaQ(A,Q,B,Y,J){let C=0;for(let X=0;X{var SaQ=u("util"),ig=u("zlib"),W6A=gg(),kaQ=Y6A(),_aQ=cg(),vaQ=lg(),yaQ=pg(),v1=Z6A.exports=function(A){W6A.call(this),this._parser=new _aQ(A,{read:this.read.bind(this),error:this._handleError.bind(this),metadata:this._handleMetaData.bind(this),gamma:this.emit.bind(this,"gamma"),palette:this._handlePalette.bind(this),transColor:this._handleTransColor.bind(this),finished:this._finished.bind(this),inflateData:this._inflateData.bind(this),simpleTransparency:this._simpleTransparency.bind(this),headersFinished:this._headersFinished.bind(this)}),this._options=A,this.writable=!0,this._parser.start()};SaQ.inherits(v1,W6A);v1.prototype._handleError=function(A){if(this.emit("error",A),this.writable=!1,this.destroy(),this._inflate&&this._inflate.destroy)this._inflate.destroy();if(this._filter)this._filter.destroy(),this._filter.on("error",function(){});this.errord=!0};v1.prototype._inflateData=function(A){if(!this._inflate)if(this._bitmapInfo.interlace)this._inflate=ig.createInflate(),this._inflate.on("error",this.emit.bind(this,"error")),this._filter.on("complete",this._complete.bind(this)),this._inflate.pipe(this._filter);else{let B=((this._bitmapInfo.width*this._bitmapInfo.bpp*this._bitmapInfo.depth+7>>3)+1)*this._bitmapInfo.height,Y=Math.max(B,ig.Z_MIN_CHUNK);this._inflate=ig.createInflate({chunkSize:Y});let J=B,C=this.emit.bind(this,"error");this._inflate.on("error",function(G){if(!J)return;C(G)}),this._filter.on("complete",this._complete.bind(this));let X=this._filter.write.bind(this._filter);this._inflate.on("data",function(G){if(!J)return;if(G.length>J)G=G.slice(0,J);J-=G.length,X(G)}),this._inflate.on("end",this._filter.end.bind(this._filter))}this._inflate.write(A)};v1.prototype._handleMetaData=function(A){this._metaData=A,this._bitmapInfo=Object.create(A),this._filter=new kaQ(this._bitmapInfo)};v1.prototype._handleTransColor=function(A){this._bitmapInfo.transColor=A};v1.prototype._handlePalette=function(A){this._bitmapInfo.palette=A};v1.prototype._simpleTransparency=function(){this._metaData.alpha=!0};v1.prototype._headersFinished=function(){this.emit("metadata",this._metaData)};v1.prototype._finished=function(){if(this.errord)return;if(!this._inflate)this.emit("error","No Inflate block");else this._inflate.end()};v1.prototype._complete=function(A){if(this.errord)return;let Q;try{let B=vaQ.dataToBitMap(A,this._bitmapInfo);Q=yaQ(B,this._bitmapInfo,this._options.skipRescale),B=null}catch(B){this._handleError(B);return}this.emit("parsed",Q)}});var E6A=R((rXY,U6A)=>{var W5=ZU();U6A.exports=function(A,Q,B,Y){let J=[W5.COLORTYPE_COLOR_ALPHA,W5.COLORTYPE_ALPHA].indexOf(Y.colorType)!==-1;if(Y.colorType===Y.inputColorType){let K=function(){let I=new ArrayBuffer(2);return new DataView(I).setInt16(0,256,!0),new Int16Array(I)[0]!==256}();if(Y.bitDepth===8||Y.bitDepth===16&&K)return A}let C=Y.bitDepth!==16?A:new Uint16Array(A.buffer),X=255,G=W5.COLORTYPE_TO_BPP_MAP[Y.inputColorType];if(G===4&&!Y.inputHasAlpha)G=3;let F=W5.COLORTYPE_TO_BPP_MAP[Y.colorType];if(Y.bitDepth===16)X=65535,F*=2;let W=Buffer.alloc(Q*B*F),Z=0,U=0,$=Y.bgColor||{};if($.red===void 0)$.red=X;if($.green===void 0)$.green=X;if($.blue===void 0)$.blue=X;function E(){let K,I,V,H=X;switch(Y.inputColorType){case W5.COLORTYPE_COLOR_ALPHA:H=C[Z+3],K=C[Z],I=C[Z+1],V=C[Z+2];break;case W5.COLORTYPE_COLOR:K=C[Z],I=C[Z+1],V=C[Z+2];break;case W5.COLORTYPE_ALPHA:H=C[Z+1],K=C[Z],I=K,V=K;break;case W5.COLORTYPE_GRAYSCALE:K=C[Z],I=K,V=K;break;default:throw Error("input color type:"+Y.inputColorType+" is not supported at present")}if(Y.inputHasAlpha){if(!J)H/=X,K=Math.min(Math.max(Math.round((1-H)*$.red+H*K),0),X),I=Math.min(Math.max(Math.round((1-H)*$.green+H*I),0),X),V=Math.min(Math.max(Math.round((1-H)*$.blue+H*V),0),X)}return{red:K,green:I,blue:V,alpha:H}}for(let K=0;K{var K6A=fg();function haQ(A,Q,B,Y,J){for(let C=0;C=C?A[Q+X-C]:0,F=A[Q+X]-G;Y[J+X]=F}}function faQ(A,Q,B,Y){let J=0;for(let C=0;C=Y?A[Q+C-Y]:0,G=A[Q+C]-X;J+=Math.abs(G)}return J}function baQ(A,Q,B,Y,J){for(let C=0;C0?A[Q+C-B]:0,G=A[Q+C]-X;Y[J+C]=G}}function maQ(A,Q,B){let Y=0,J=Q+B;for(let C=Q;C0?A[C-B]:0,G=A[C]-X;Y+=Math.abs(G)}return Y}function uaQ(A,Q,B,Y,J,C){for(let X=0;X=C?A[Q+X-C]:0,F=Q>0?A[Q+X-B]:0,W=A[Q+X]-(G+F>>1);Y[J+X]=W}}function daQ(A,Q,B,Y){let J=0;for(let C=0;C=Y?A[Q+C-Y]:0,G=Q>0?A[Q+C-B]:0,F=A[Q+C]-(X+G>>1);J+=Math.abs(F)}return J}function caQ(A,Q,B,Y,J,C){for(let X=0;X=C?A[Q+X-C]:0,F=Q>0?A[Q+X-B]:0,W=Q>0&&X>=C?A[Q+X-(B+C)]:0,Z=A[Q+X]-K6A(G,F,W);Y[J+X]=Z}}function laQ(A,Q,B,Y){let J=0;for(let C=0;C=Y?A[Q+C-Y]:0,G=Q>0?A[Q+C-B]:0,F=Q>0&&C>=Y?A[Q+C-(B+Y)]:0,W=A[Q+C]-K6A(X,G,F);J+=Math.abs(W)}return J}var paQ={0:haQ,1:xaQ,2:baQ,3:uaQ,4:caQ},iaQ={0:gaQ,1:faQ,2:maQ,3:daQ,4:laQ};V6A.exports=function(A,Q,B,Y,J){let C;if(!("filterType"in Y)||Y.filterType===-1)C=[0,1,2,3,4];else if(typeof Y.filterType==="number")C=[Y.filterType];else throw Error("unrecognised filter types");if(Y.bitDepth===16)J*=2;let X=Q*J,G=0,F=0,W=Buffer.alloc((X+1)*B),Z=C[0];for(let U=0;U1){let $=1/0;for(let E=0;E{var NJ=ZU(),naQ=dg(),saQ=E6A(),raQ=I6A(),aaQ=u("zlib"),Z7=H6A.exports=function(A){if(this._options=A,A.deflateChunkSize=A.deflateChunkSize||32768,A.deflateLevel=A.deflateLevel!=null?A.deflateLevel:9,A.deflateStrategy=A.deflateStrategy!=null?A.deflateStrategy:3,A.inputHasAlpha=A.inputHasAlpha!=null?A.inputHasAlpha:!0,A.deflateFactory=A.deflateFactory||aaQ.createDeflate,A.bitDepth=A.bitDepth||8,A.colorType=typeof A.colorType==="number"?A.colorType:NJ.COLORTYPE_COLOR_ALPHA,A.inputColorType=typeof A.inputColorType==="number"?A.inputColorType:NJ.COLORTYPE_COLOR_ALPHA,[NJ.COLORTYPE_GRAYSCALE,NJ.COLORTYPE_COLOR,NJ.COLORTYPE_COLOR_ALPHA,NJ.COLORTYPE_ALPHA].indexOf(A.colorType)===-1)throw Error("option color type:"+A.colorType+" is not supported at present");if([NJ.COLORTYPE_GRAYSCALE,NJ.COLORTYPE_COLOR,NJ.COLORTYPE_COLOR_ALPHA,NJ.COLORTYPE_ALPHA].indexOf(A.inputColorType)===-1)throw Error("option input color type:"+A.inputColorType+" is not supported at present");if(A.bitDepth!==8&&A.bitDepth!==16)throw Error("option bit depth:"+A.bitDepth+" is not supported at present")};Z7.prototype.getDeflateOptions=function(){return{chunkSize:this._options.deflateChunkSize,level:this._options.deflateLevel,strategy:this._options.deflateStrategy}};Z7.prototype.createDeflate=function(){return this._options.deflateFactory(this.getDeflateOptions())};Z7.prototype.filterData=function(A,Q,B){let Y=saQ(A,Q,B,this._options),J=NJ.COLORTYPE_TO_BPP_MAP[this._options.colorType];return raQ(Y,Q,B,this._options,J)};Z7.prototype._packChunk=function(A,Q){let B=Q?Q.length:0,Y=Buffer.alloc(B+12);if(Y.writeUInt32BE(B,0),Y.writeUInt32BE(A,4),Q)Q.copy(Y,8);return Y.writeInt32BE(naQ.crc32(Y.slice(4,Y.length-4)),Y.length-4),Y};Z7.prototype.packGAMA=function(A){let Q=Buffer.alloc(4);return Q.writeUInt32BE(Math.floor(A*NJ.GAMMA_DIVISION),0),this._packChunk(NJ.TYPE_gAMA,Q)};Z7.prototype.packIHDR=function(A,Q){let B=Buffer.alloc(13);return B.writeUInt32BE(A,0),B.writeUInt32BE(Q,4),B[8]=this._options.bitDepth,B[9]=this._options.colorType,B[10]=0,B[11]=0,B[12]=0,this._packChunk(NJ.TYPE_IHDR,B)};Z7.prototype.packIDAT=function(A){return this._packChunk(NJ.TYPE_IDAT,A)};Z7.prototype.packIEND=function(){return this._packChunk(NJ.TYPE_IEND,null)}});var q6A=R((tXY,L6A)=>{var oaQ=u("util"),D6A=u("stream"),taQ=ZU(),eaQ=ng(),N6A=L6A.exports=function(A){D6A.call(this);let Q=A||{};this._packer=new eaQ(Q),this._deflate=this._packer.createDeflate(),this.readable=!0};oaQ.inherits(N6A,D6A);N6A.prototype.pack=function(A,Q,B,Y){if(this.emit("data",Buffer.from(taQ.PNG_SIGNATURE)),this.emit("data",this._packer.packIHDR(Q,B)),Y)this.emit("data",this._packer.packGAMA(Y));let J=this._packer.filterData(A,Q,B);this._deflate.on("error",this.emit.bind(this,"error")),this._deflate.on("data",function(C){this.emit("data",this._packer.packIDAT(C))}.bind(this)),this._deflate.on("end",function(){this.emit("data",this._packer.packIEND()),this.emit("end")}.bind(this)),this._deflate.end(J)}});var O6A=R((VH,j6A)=>{var M6A=u("assert").ok,$U=u("zlib"),AoQ=u("util"),z6A=u("buffer").kMaxLength;function mW(A){if(!(this instanceof mW))return new mW(A);if(A&&A.chunkSize<$U.Z_MIN_CHUNK)A.chunkSize=$U.Z_MIN_CHUNK;if($U.Inflate.call(this,A),this._offset=this._offset===void 0?this._outOffset:this._offset,this._buffer=this._buffer||this._outBuffer,A&&A.maxLength!=null)this._maxLength=A.maxLength}function QoQ(A){return new mW(A)}function R6A(A,Q){if(Q)process.nextTick(Q);if(!A._handle)return;A._handle.close(),A._handle=null}mW.prototype._processChunk=function(A,Q,B){if(typeof B==="function")return $U.Inflate._processChunk.call(this,A,Q,B);let Y=this,J=A&&A.length,C=this._chunkSize-this._offset,X=this._maxLength,G=0,F=[],W=0,Z;this.on("error",function(K){Z=K});function U(K,I){if(Y._hadError)return;let V=C-I;if(M6A(V>=0,"have should not go down"),V>0){let H=Y._buffer.slice(Y._offset,Y._offset+V);if(Y._offset+=V,H.length>X)H=H.slice(0,X);if(F.push(H),W+=H.length,X-=H.length,X===0)return!1}if(I===0||Y._offset>=Y._chunkSize)C=Y._chunkSize,Y._offset=0,Y._buffer=Buffer.allocUnsafe(Y._chunkSize);if(I===0)return G+=J-K,J=K,!0;return!1}M6A(this._handle,"zlib binding closed");let $;do $=this._handle.writeSync(Q,A,G,J,this._buffer,this._offset,C),$=$||this._writeState;while(!this._hadError&&U($[0],$[1]));if(this._hadError)throw Z;if(W>=z6A)throw R6A(this),RangeError("Cannot create final Buffer. It would be larger than 0x"+z6A.toString(16)+" bytes");let E=Buffer.concat(F,W);return R6A(this),E};AoQ.inherits(mW,$U.Inflate);function BoQ(A,Q){if(typeof Q==="string")Q=Buffer.from(Q);if(!(Q instanceof Buffer))throw TypeError("Not a string or buffer");let B=A._finishFlushFlag;if(B==null)B=$U.Z_FINISH;return A._processChunk(Q,B)}function w6A(A,Q){return BoQ(new mW(Q),A)}j6A.exports=VH=w6A;VH.Inflate=mW;VH.createInflate=QoQ;VH.inflateSync=w6A});var sg=R((eXY,T6A)=>{var P6A=T6A.exports=function(A){this._buffer=A,this._reads=[]};P6A.prototype.read=function(A,Q){this._reads.push({length:Math.abs(A),allowLess:A<0,func:Q})};P6A.prototype.process=function(){while(this._reads.length>0&&this._buffer.length){let A=this._reads[0];if(this._buffer.length&&(this._buffer.length>=A.length||A.allowLess)){this._reads.shift();let Q=this._buffer;this._buffer=Q.slice(A.length),A.func.call(this,Q.slice(0,A.length))}else break}if(this._reads.length>0)throw Error("There are some read requests waitng on finished stream");if(this._buffer.length>0)throw Error("unrecognised content at end of stream")}});var S6A=R((CoQ)=>{var YoQ=sg(),JoQ=bg();CoQ.process=function(A,Q){let B=[],Y=new YoQ(A);return new JoQ(Q,{read:Y.read.bind(Y),write:function(C){B.push(C)},complete:function(){}}).start(),Y.process(),Buffer.concat(B)}});var y6A=R((QGY,v6A)=>{var k6A=!0,_6A=u("zlib"),GoQ=O6A();if(!_6A.deflateSync)k6A=!1;var FoQ=sg(),WoQ=S6A(),ZoQ=cg(),$oQ=lg(),UoQ=pg();v6A.exports=function(A,Q){if(!k6A)throw Error("To use the sync capability of this library in old node versions, please pin pngjs to v2.3.0");let B;function Y(z){B=z}let J;function C(z){J=z}function X(z){J.transColor=z}function G(z){J.palette=z}function F(){J.alpha=!0}let W;function Z(z){W=z}let U=[];function $(z){U.push(z)}let E=new FoQ(A);if(new ZoQ(Q,{read:E.read.bind(E),error:Y,metadata:C,gamma:Z,palette:G,transColor:X,inflateData:$,simpleTransparency:F}).start(),E.process(),B)throw B;let I=Buffer.concat(U);U.length=0;let V;if(J.interlace)V=_6A.inflateSync(I);else{let M=((J.width*J.bpp*J.depth+7>>3)+1)*J.height;V=GoQ(I,{chunkSize:M,maxLength:M})}if(I=null,!V||!V.length)throw Error("bad png - invalid inflate data response");let H=WoQ.process(V,J);I=null;let D=$oQ.dataToBitMap(H,J);H=null;let L=UoQ(D,J,Q.skipRescale);return J.data=L,J.gamma=W||0,J}});var f6A=R((BGY,x6A)=>{var h6A=!0,g6A=u("zlib");if(!g6A.deflateSync)h6A=!1;var EoQ=ZU(),KoQ=ng();x6A.exports=function(A,Q){if(!h6A)throw Error("To use the sync capability of this library in old node versions, please pin pngjs to v2.3.0");let Y=new KoQ(Q||{}),J=[];if(J.push(Buffer.from(EoQ.PNG_SIGNATURE)),J.push(Y.packIHDR(A.width,A.height)),A.gamma)J.push(Y.packGAMA(A.gamma));let C=Y.filterData(A.data,A.width,A.height),X=g6A.deflateSync(C,Y.getDeflateOptions());if(C=null,!X||!X.length)throw Error("bad png - invalid compressed data response");return J.push(Y.packIDAT(X)),J.push(Y.packIEND()),Buffer.concat(J)}});var b6A=R((HoQ)=>{var VoQ=y6A(),IoQ=f6A();HoQ.read=function(A,Q){return VoQ(A,Q||{})};HoQ.write=function(A,Q){return IoQ(A,Q)}});var u6A=R((RoQ)=>{var LoQ=u("util"),m6A=u("stream"),qoQ=$6A(),MoQ=q6A(),zoQ=b6A(),oJ=RoQ.PNG=function(A){if(m6A.call(this),A=A||{},this.width=A.width|0,this.height=A.height|0,this.data=this.width>0&&this.height>0?Buffer.alloc(4*this.width*this.height):null,A.fill&&this.data)this.data.fill(0);this.gamma=0,this.readable=this.writable=!0,this._parser=new qoQ(A),this._parser.on("error",this.emit.bind(this,"error")),this._parser.on("close",this._handleClose.bind(this)),this._parser.on("metadata",this._metadata.bind(this)),this._parser.on("gamma",this._gamma.bind(this)),this._parser.on("parsed",function(Q){this.data=Q,this.emit("parsed",Q)}.bind(this)),this._packer=new MoQ(A),this._packer.on("data",this.emit.bind(this,"data")),this._packer.on("end",this.emit.bind(this,"end")),this._parser.on("close",this._handleClose.bind(this)),this._packer.on("error",this.emit.bind(this,"error"))};LoQ.inherits(oJ,m6A);oJ.sync=zoQ;oJ.prototype.pack=function(){if(!this.data||!this.data.length)return this.emit("error","No data provided"),this;return process.nextTick(function(){this._packer.pack(this.data,this.width,this.height,this.gamma)}.bind(this)),this};oJ.prototype.parse=function(A,Q){if(Q){let B,Y;B=function(J){this.removeListener("error",Y),this.data=J,Q(null,this)}.bind(this),Y=function(J){this.removeListener("parsed",B),Q(J,null)}.bind(this),this.once("parsed",B),this.once("error",Y)}return this.end(A),this};oJ.prototype.write=function(A){return this._parser.write(A),!0};oJ.prototype.end=function(A){this._parser.end(A)};oJ.prototype._metadata=function(A){this.width=A.width,this.height=A.height,this.emit("metadata",A)};oJ.prototype._gamma=function(A){this.gamma=A};oJ.prototype._handleClose=function(){if(!this._parser.writable&&!this._packer.readable)this.emit("close")};oJ.bitblt=function(A,Q,B,Y,J,C,X,G){if(B|=0,Y|=0,J|=0,C|=0,X|=0,G|=0,B>A.width||Y>A.height||B+J>A.width||Y+C>A.height)throw Error("bitblt reading outside image");if(X>Q.width||G>Q.height||X+J>Q.width||G+C>Q.height)throw Error("bitblt writing outside image");for(let F=0;F{var PoQ=typeof Uint8Array<"u"&&typeof Uint16Array<"u"&&typeof Int32Array<"u";function ToQ(A,Q){return Object.prototype.hasOwnProperty.call(A,Q)}rg.assign=function(A){var Q=Array.prototype.slice.call(arguments,1);while(Q.length){var B=Q.shift();if(!B)continue;if(typeof B!=="object")throw TypeError(B+"must be non-object");for(var Y in B)if(ToQ(B,Y))A[Y]=B[Y]}return A};rg.shrinkBuf=function(A,Q){if(A.length===Q)return A;if(A.subarray)return A.subarray(0,Q);return A.length=Q,A};var SoQ={arraySet:function(A,Q,B,Y,J){if(Q.subarray&&A.subarray){A.set(Q.subarray(B,B+Y),J);return}for(var C=0;C{var voQ=qX(),yoQ=4,c6A=0,l6A=1,hoQ=2;function EU(A){var Q=A.length;while(--Q>=0)A[Q]=0}var goQ=0,a6A=1,xoQ=2,foQ=3,boQ=258,Yx=29,MH=256,DH=MH+1+Yx,UU=30,Jx=19,o6A=2*DH+1,uW=15,og=16,moQ=7,Cx=256,t6A=16,e6A=17,AXA=18,Qx=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],c3=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],uoQ=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],QXA=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],doQ=512,MX=Array((DH+2)*2);EU(MX);var HH=Array(UU*2);EU(HH);var NH=Array(doQ);EU(NH);var LH=Array(boQ-foQ+1);EU(LH);var Xx=Array(Yx);EU(Xx);var l3=Array(UU);EU(l3);function tg(A,Q,B,Y,J){this.static_tree=A,this.extra_bits=Q,this.extra_base=B,this.elems=Y,this.max_length=J,this.has_stree=A&&A.length}var BXA,YXA,JXA;function eg(A,Q){this.dyn_tree=A,this.max_code=0,this.stat_desc=Q}function CXA(A){return A<256?NH[A]:NH[256+(A>>>7)]}function qH(A,Q){A.pending_buf[A.pending++]=Q&255,A.pending_buf[A.pending++]=Q>>>8&255}function P9(A,Q,B){if(A.bi_valid>og-B)A.bi_buf|=Q<>og-A.bi_valid,A.bi_valid+=B-og;else A.bi_buf|=Q<>>=1,B<<=1;while(--Q>0);return B>>>1}function coQ(A){if(A.bi_valid===16)qH(A,A.bi_buf),A.bi_buf=0,A.bi_valid=0;else if(A.bi_valid>=8)A.pending_buf[A.pending++]=A.bi_buf&255,A.bi_buf>>=8,A.bi_valid-=8}function loQ(A,Q){var{dyn_tree:B,max_code:Y}=Q,J=Q.stat_desc.static_tree,C=Q.stat_desc.has_stree,X=Q.stat_desc.extra_bits,G=Q.stat_desc.extra_base,F=Q.stat_desc.max_length,W,Z,U,$,E,K,I=0;for($=0;$<=uW;$++)A.bl_count[$]=0;B[A.heap[A.heap_max]*2+1]=0;for(W=A.heap_max+1;WF)$=F,I++;if(B[Z*2+1]=$,Z>Y)continue;if(A.bl_count[$]++,E=0,Z>=G)E=X[Z-G];if(K=B[Z*2],A.opt_len+=K*($+E),C)A.static_len+=K*(J[Z*2+1]+E)}if(I===0)return;do{$=F-1;while(A.bl_count[$]===0)$--;A.bl_count[$]--,A.bl_count[$+1]+=2,A.bl_count[F]--,I-=2}while(I>0);for($=F;$!==0;$--){Z=A.bl_count[$];while(Z!==0){if(U=A.heap[--W],U>Y)continue;if(B[U*2+1]!==$)A.opt_len+=($-B[U*2+1])*B[U*2],B[U*2+1]=$;Z--}}}function GXA(A,Q,B){var Y=Array(uW+1),J=0,C,X;for(C=1;C<=uW;C++)Y[C]=J=J+B[C-1]<<1;for(X=0;X<=Q;X++){var G=A[X*2+1];if(G===0)continue;A[X*2]=XXA(Y[G]++,G)}}function poQ(){var A,Q,B,Y,J,C=Array(uW+1);B=0;for(Y=0;Y>=7;for(;Y8)qH(A,A.bi_buf);else if(A.bi_valid>0)A.pending_buf[A.pending++]=A.bi_buf;A.bi_buf=0,A.bi_valid=0}function ioQ(A,Q,B,Y){if(WXA(A),Y)qH(A,B),qH(A,~B);voQ.arraySet(A.pending_buf,A.window,Q,B,A.pending),A.pending+=B}function p6A(A,Q,B,Y){var J=Q*2,C=B*2;return A[J]>1;X>=1;X--)Ax(A,B,X);W=C;do X=A.heap[1],A.heap[1]=A.heap[A.heap_len--],Ax(A,B,1),G=A.heap[1],A.heap[--A.heap_max]=X,A.heap[--A.heap_max]=G,B[W*2]=B[X*2]+B[G*2],A.depth[W]=(A.depth[X]>=A.depth[G]?A.depth[X]:A.depth[G])+1,B[X*2+1]=B[G*2+1]=W,A.heap[1]=W++,Ax(A,B,1);while(A.heap_len>=2);A.heap[--A.heap_max]=A.heap[1],loQ(A,Q),GXA(B,F,A.bl_count)}function n6A(A,Q,B){var Y,J=-1,C,X=Q[1],G=0,F=7,W=4;if(X===0)F=138,W=3;Q[(B+1)*2+1]=65535;for(Y=0;Y<=B;Y++){if(C=X,X=Q[(Y+1)*2+1],++G=3;Q--)if(A.bl_tree[QXA[Q]*2+1]!==0)break;return A.opt_len+=3*(Q+1)+5+5+4,Q}function soQ(A,Q,B,Y){var J;P9(A,Q-257,5),P9(A,B-1,5),P9(A,Y-4,4);for(J=0;J>>=1)if(Q&1&&A.dyn_ltree[B*2]!==0)return c6A;if(A.dyn_ltree[18]!==0||A.dyn_ltree[20]!==0||A.dyn_ltree[26]!==0)return l6A;for(B=32;B0){if(A.strm.data_type===hoQ)A.strm.data_type=roQ(A);if(Bx(A,A.l_desc),Bx(A,A.d_desc),X=noQ(A),J=A.opt_len+3+7>>>3,C=A.static_len+3+7>>>3,C<=J)J=C}else J=C=B+5;if(B+4<=J&&Q!==-1)ZXA(A,Q,B,Y);else if(A.strategy===yoQ||C===J)P9(A,(a6A<<1)+(Y?1:0),3),i6A(A,MX,HH);else P9(A,(xoQ<<1)+(Y?1:0),3),soQ(A,A.l_desc.max_code+1,A.d_desc.max_code+1,X+1),i6A(A,A.dyn_ltree,A.dyn_dtree);if(FXA(A),Y)WXA(A)}function eoQ(A,Q,B){if(A.pending_buf[A.d_buf+A.last_lit*2]=Q>>>8&255,A.pending_buf[A.d_buf+A.last_lit*2+1]=Q&255,A.pending_buf[A.l_buf+A.last_lit]=B&255,A.last_lit++,Q===0)A.dyn_ltree[B*2]++;else A.matches++,Q--,A.dyn_ltree[(LH[B]+MH+1)*2]++,A.dyn_dtree[CXA(Q)*2]++;return A.last_lit===A.lit_bufsize-1}AtQ._tr_init=aoQ;AtQ._tr_stored_block=ZXA;AtQ._tr_flush_block=toQ;AtQ._tr_tally=eoQ;AtQ._tr_align=ooQ});var Gx=R((UGY,UXA)=>{function XtQ(A,Q,B,Y){var J=A&65535|0,C=A>>>16&65535|0,X=0;while(B!==0){X=B>2000?2000:B,B-=X;do J=J+Q[Y++]|0,C=C+J|0;while(--X);J%=65521,C%=65521}return J|C<<16|0}UXA.exports=XtQ});var Fx=R((EGY,EXA)=>{function GtQ(){var A,Q=[];for(var B=0;B<256;B++){A=B;for(var Y=0;Y<8;Y++)A=A&1?3988292384^A>>>1:A>>>1;Q[B]=A}return Q}var FtQ=GtQ();function WtQ(A,Q,B,Y){var J=FtQ,C=Y+B;A^=-1;for(var X=Y;X>>8^J[(A^Q[X])&255];return A^-1}EXA.exports=WtQ});var p3=R((KGY,KXA)=>{KXA.exports={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}});var zXA=R((dtQ)=>{var tJ=qX(),Z5=$XA(),DXA=Gx(),$7=Fx(),ZtQ=p3(),pW=0,$tQ=1,UtQ=3,I7=4,VXA=5,g1=0,IXA=1,$5=-2,EtQ=-3,Wx=-5,KtQ=-1,VtQ=1,i3=2,ItQ=3,HtQ=4,DtQ=0,NtQ=2,a3=8,LtQ=9,qtQ=15,MtQ=8,ztQ=29,RtQ=256,$x=RtQ+1+ztQ,wtQ=30,jtQ=19,OtQ=2*$x+1,PtQ=15,IB=3,K7=258,RC=K7+IB+1,TtQ=32,o3=42,Ux=69,n3=73,s3=91,r3=103,dW=113,RH=666,PY=1,wH=2,cW=3,IU=4,StQ=3;function V7(A,Q){return A.msg=ZtQ[Q],Q}function HXA(A){return(A<<1)-(A>4?9:0)}function E7(A){var Q=A.length;while(--Q>=0)A[Q]=0}function U7(A){var Q=A.state,B=Q.pending;if(B>A.avail_out)B=A.avail_out;if(B===0)return;if(tJ.arraySet(A.output,Q.pending_buf,Q.pending_out,B,A.next_out),A.next_out+=B,Q.pending_out+=B,A.total_out+=B,A.avail_out-=B,Q.pending-=B,Q.pending===0)Q.pending_out=0}function BJ(A,Q){Z5._tr_flush_block(A,A.block_start>=0?A.block_start:-1,A.strstart-A.block_start,Q),A.block_start=A.strstart,U7(A.strm)}function TB(A,Q){A.pending_buf[A.pending++]=Q}function zH(A,Q){A.pending_buf[A.pending++]=Q>>>8&255,A.pending_buf[A.pending++]=Q&255}function ktQ(A,Q,B,Y){var J=A.avail_in;if(J>Y)J=Y;if(J===0)return 0;if(A.avail_in-=J,tJ.arraySet(Q,A.input,A.next_in,J,B),A.state.wrap===1)A.adler=DXA(A.adler,Q,J,B);else if(A.state.wrap===2)A.adler=$7(A.adler,Q,J,B);return A.next_in+=J,A.total_in+=J,J}function NXA(A,Q){var{max_chain_length:B,strstart:Y}=A,J,C,X=A.prev_length,G=A.nice_match,F=A.strstart>A.w_size-RC?A.strstart-(A.w_size-RC):0,W=A.window,Z=A.w_mask,U=A.prev,$=A.strstart+K7,E=W[Y+X-1],K=W[Y+X];if(A.prev_length>=A.good_match)B>>=2;if(G>A.lookahead)G=A.lookahead;do{if(J=Q,W[J+X]!==K||W[J+X-1]!==E||W[J]!==W[Y]||W[++J]!==W[Y+1])continue;Y+=2,J++;do;while(W[++Y]===W[++J]&&W[++Y]===W[++J]&&W[++Y]===W[++J]&&W[++Y]===W[++J]&&W[++Y]===W[++J]&&W[++Y]===W[++J]&&W[++Y]===W[++J]&&W[++Y]===W[++J]&&Y<$);if(C=K7-($-Y),Y=$-K7,C>X){if(A.match_start=Q,X=C,C>=G)break;E=W[Y+X-1],K=W[Y+X]}}while((Q=U[Q&Z])>F&&--B!==0);if(X<=A.lookahead)return X;return A.lookahead}function lW(A){var Q=A.w_size,B,Y,J,C,X;do{if(C=A.window_size-A.lookahead-A.strstart,A.strstart>=Q+(Q-RC)){tJ.arraySet(A.window,A.window,Q,Q,0),A.match_start-=Q,A.strstart-=Q,A.block_start-=Q,Y=A.hash_size,B=Y;do J=A.head[--B],A.head[B]=J>=Q?J-Q:0;while(--Y);Y=Q,B=Y;do J=A.prev[--B],A.prev[B]=J>=Q?J-Q:0;while(--Y);C+=Q}if(A.strm.avail_in===0)break;if(Y=ktQ(A.strm,A.window,A.strstart+A.lookahead,C),A.lookahead+=Y,A.lookahead+A.insert>=IB){X=A.strstart-A.insert,A.ins_h=A.window[X],A.ins_h=(A.ins_h<A.pending_buf_size-5)B=A.pending_buf_size-5;for(;;){if(A.lookahead<=1){if(lW(A),A.lookahead===0&&Q===pW)return PY;if(A.lookahead===0)break}A.strstart+=A.lookahead,A.lookahead=0;var Y=A.block_start+B;if(A.strstart===0||A.strstart>=Y){if(A.lookahead=A.strstart-Y,A.strstart=Y,BJ(A,!1),A.strm.avail_out===0)return PY}if(A.strstart-A.block_start>=A.w_size-RC){if(BJ(A,!1),A.strm.avail_out===0)return PY}}if(A.insert=0,Q===I7){if(BJ(A,!0),A.strm.avail_out===0)return cW;return IU}if(A.strstart>A.block_start){if(BJ(A,!1),A.strm.avail_out===0)return PY}return PY}function Zx(A,Q){var B,Y;for(;;){if(A.lookahead=IB)A.ins_h=(A.ins_h<=IB)if(Y=Z5._tr_tally(A,A.strstart-A.match_start,A.match_length-IB),A.lookahead-=A.match_length,A.match_length<=A.max_lazy_match&&A.lookahead>=IB){A.match_length--;do A.strstart++,A.ins_h=(A.ins_h<=IB)A.ins_h=(A.ins_h<4096))A.match_length=IB-1}if(A.prev_length>=IB&&A.match_length<=A.prev_length){J=A.strstart+A.lookahead-IB,Y=Z5._tr_tally(A,A.strstart-1-A.prev_match,A.prev_length-IB),A.lookahead-=A.prev_length-1,A.prev_length-=2;do if(++A.strstart<=J)A.ins_h=(A.ins_h<=IB&&A.strstart>0){if(J=A.strstart-1,Y=X[J],Y===X[++J]&&Y===X[++J]&&Y===X[++J]){C=A.strstart+K7;do;while(Y===X[++J]&&Y===X[++J]&&Y===X[++J]&&Y===X[++J]&&Y===X[++J]&&Y===X[++J]&&Y===X[++J]&&Y===X[++J]&&JA.lookahead)A.match_length=A.lookahead}}if(A.match_length>=IB)B=Z5._tr_tally(A,1,A.match_length-IB),A.lookahead-=A.match_length,A.strstart+=A.match_length,A.match_length=0;else B=Z5._tr_tally(A,0,A.window[A.strstart]),A.lookahead--,A.strstart++;if(B){if(BJ(A,!1),A.strm.avail_out===0)return PY}}if(A.insert=0,Q===I7){if(BJ(A,!0),A.strm.avail_out===0)return cW;return IU}if(A.last_lit){if(BJ(A,!1),A.strm.avail_out===0)return PY}return wH}function ytQ(A,Q){var B;for(;;){if(A.lookahead===0){if(lW(A),A.lookahead===0){if(Q===pW)return PY;break}}if(A.match_length=0,B=Z5._tr_tally(A,0,A.window[A.strstart]),A.lookahead--,A.strstart++,B){if(BJ(A,!1),A.strm.avail_out===0)return PY}}if(A.insert=0,Q===I7){if(BJ(A,!0),A.strm.avail_out===0)return cW;return IU}if(A.last_lit){if(BJ(A,!1),A.strm.avail_out===0)return PY}return wH}function h1(A,Q,B,Y,J){this.good_length=A,this.max_lazy=Q,this.nice_length=B,this.max_chain=Y,this.func=J}var VU;VU=[new h1(0,0,0,0,_tQ),new h1(4,4,8,4,Zx),new h1(4,5,16,8,Zx),new h1(4,6,32,32,Zx),new h1(4,4,16,16,KU),new h1(8,16,32,32,KU),new h1(8,16,128,128,KU),new h1(8,32,128,256,KU),new h1(32,128,258,1024,KU),new h1(32,258,258,4096,KU)];function htQ(A){A.window_size=2*A.w_size,E7(A.head),A.max_lazy_match=VU[A.level].max_lazy,A.good_match=VU[A.level].good_length,A.nice_match=VU[A.level].nice_length,A.max_chain_length=VU[A.level].max_chain,A.strstart=0,A.block_start=0,A.lookahead=0,A.insert=0,A.match_length=A.prev_length=IB-1,A.match_available=0,A.ins_h=0}function gtQ(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=a3,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new tJ.Buf16(OtQ*2),this.dyn_dtree=new tJ.Buf16((2*wtQ+1)*2),this.bl_tree=new tJ.Buf16((2*jtQ+1)*2),E7(this.dyn_ltree),E7(this.dyn_dtree),E7(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new tJ.Buf16(PtQ+1),this.heap=new tJ.Buf16(2*$x+1),E7(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new tJ.Buf16(2*$x+1),E7(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function LXA(A){var Q;if(!A||!A.state)return V7(A,$5);if(A.total_in=A.total_out=0,A.data_type=NtQ,Q=A.state,Q.pending=0,Q.pending_out=0,Q.wrap<0)Q.wrap=-Q.wrap;return Q.status=Q.wrap?o3:dW,A.adler=Q.wrap===2?0:1,Q.last_flush=pW,Z5._tr_init(Q),g1}function qXA(A){var Q=LXA(A);if(Q===g1)htQ(A.state);return Q}function xtQ(A,Q){if(!A||!A.state)return $5;if(A.state.wrap!==2)return $5;return A.state.gzhead=Q,g1}function MXA(A,Q,B,Y,J,C){if(!A)return $5;var X=1;if(Q===KtQ)Q=6;if(Y<0)X=0,Y=-Y;else if(Y>15)X=2,Y-=16;if(J<1||J>LtQ||B!==a3||Y<8||Y>15||Q<0||Q>9||C<0||C>HtQ)return V7(A,$5);if(Y===8)Y=9;var G=new gtQ;return A.state=G,G.strm=A,G.wrap=X,G.gzhead=null,G.w_bits=Y,G.w_size=1<VXA||Q<0)return A?V7(A,$5):$5;if(Y=A.state,!A.output||!A.input&&A.avail_in!==0||Y.status===RH&&Q!==I7)return V7(A,A.avail_out===0?Wx:$5);if(Y.strm=A,B=Y.last_flush,Y.last_flush=Q,Y.status===o3)if(Y.wrap===2)if(A.adler=0,TB(Y,31),TB(Y,139),TB(Y,8),!Y.gzhead)TB(Y,0),TB(Y,0),TB(Y,0),TB(Y,0),TB(Y,0),TB(Y,Y.level===9?2:Y.strategy>=i3||Y.level<2?4:0),TB(Y,StQ),Y.status=dW;else{if(TB(Y,(Y.gzhead.text?1:0)+(Y.gzhead.hcrc?2:0)+(!Y.gzhead.extra?0:4)+(!Y.gzhead.name?0:8)+(!Y.gzhead.comment?0:16)),TB(Y,Y.gzhead.time&255),TB(Y,Y.gzhead.time>>8&255),TB(Y,Y.gzhead.time>>16&255),TB(Y,Y.gzhead.time>>24&255),TB(Y,Y.level===9?2:Y.strategy>=i3||Y.level<2?4:0),TB(Y,Y.gzhead.os&255),Y.gzhead.extra&&Y.gzhead.extra.length)TB(Y,Y.gzhead.extra.length&255),TB(Y,Y.gzhead.extra.length>>8&255);if(Y.gzhead.hcrc)A.adler=$7(A.adler,Y.pending_buf,Y.pending,0);Y.gzindex=0,Y.status=Ux}else{var X=a3+(Y.w_bits-8<<4)<<8,G=-1;if(Y.strategy>=i3||Y.level<2)G=0;else if(Y.level<6)G=1;else if(Y.level===6)G=2;else G=3;if(X|=G<<6,Y.strstart!==0)X|=TtQ;if(X+=31-X%31,Y.status=dW,zH(Y,X),Y.strstart!==0)zH(Y,A.adler>>>16),zH(Y,A.adler&65535);A.adler=1}if(Y.status===Ux)if(Y.gzhead.extra){J=Y.pending;while(Y.gzindex<(Y.gzhead.extra.length&65535)){if(Y.pending===Y.pending_buf_size){if(Y.gzhead.hcrc&&Y.pending>J)A.adler=$7(A.adler,Y.pending_buf,Y.pending-J,J);if(U7(A),J=Y.pending,Y.pending===Y.pending_buf_size)break}TB(Y,Y.gzhead.extra[Y.gzindex]&255),Y.gzindex++}if(Y.gzhead.hcrc&&Y.pending>J)A.adler=$7(A.adler,Y.pending_buf,Y.pending-J,J);if(Y.gzindex===Y.gzhead.extra.length)Y.gzindex=0,Y.status=n3}else Y.status=n3;if(Y.status===n3)if(Y.gzhead.name){J=Y.pending;do{if(Y.pending===Y.pending_buf_size){if(Y.gzhead.hcrc&&Y.pending>J)A.adler=$7(A.adler,Y.pending_buf,Y.pending-J,J);if(U7(A),J=Y.pending,Y.pending===Y.pending_buf_size){C=1;break}}if(Y.gzindexJ)A.adler=$7(A.adler,Y.pending_buf,Y.pending-J,J);if(C===0)Y.gzindex=0,Y.status=s3}else Y.status=s3;if(Y.status===s3)if(Y.gzhead.comment){J=Y.pending;do{if(Y.pending===Y.pending_buf_size){if(Y.gzhead.hcrc&&Y.pending>J)A.adler=$7(A.adler,Y.pending_buf,Y.pending-J,J);if(U7(A),J=Y.pending,Y.pending===Y.pending_buf_size){C=1;break}}if(Y.gzindexJ)A.adler=$7(A.adler,Y.pending_buf,Y.pending-J,J);if(C===0)Y.status=r3}else Y.status=r3;if(Y.status===r3)if(Y.gzhead.hcrc){if(Y.pending+2>Y.pending_buf_size)U7(A);if(Y.pending+2<=Y.pending_buf_size)TB(Y,A.adler&255),TB(Y,A.adler>>8&255),A.adler=0,Y.status=dW}else Y.status=dW;if(Y.pending!==0){if(U7(A),A.avail_out===0)return Y.last_flush=-1,g1}else if(A.avail_in===0&&HXA(Q)<=HXA(B)&&Q!==I7)return V7(A,Wx);if(Y.status===RH&&A.avail_in!==0)return V7(A,Wx);if(A.avail_in!==0||Y.lookahead!==0||Q!==pW&&Y.status!==RH){var F=Y.strategy===i3?ytQ(Y,Q):Y.strategy===ItQ?vtQ(Y,Q):VU[Y.level].func(Y,Q);if(F===cW||F===IU)Y.status=RH;if(F===PY||F===cW){if(A.avail_out===0)Y.last_flush=-1;return g1}if(F===wH){if(Q===$tQ)Z5._tr_align(Y);else if(Q!==VXA){if(Z5._tr_stored_block(Y,0,0,!1),Q===UtQ){if(E7(Y.head),Y.lookahead===0)Y.strstart=0,Y.block_start=0,Y.insert=0}}if(U7(A),A.avail_out===0)return Y.last_flush=-1,g1}}if(Q!==I7)return g1;if(Y.wrap<=0)return IXA;if(Y.wrap===2)TB(Y,A.adler&255),TB(Y,A.adler>>8&255),TB(Y,A.adler>>16&255),TB(Y,A.adler>>24&255),TB(Y,A.total_in&255),TB(Y,A.total_in>>8&255),TB(Y,A.total_in>>16&255),TB(Y,A.total_in>>24&255);else zH(Y,A.adler>>>16),zH(Y,A.adler&65535);if(U7(A),Y.wrap>0)Y.wrap=-Y.wrap;return Y.pending!==0?g1:IXA}function mtQ(A){var Q;if(!A||!A.state)return $5;if(Q=A.state.status,Q!==o3&&Q!==Ux&&Q!==n3&&Q!==s3&&Q!==r3&&Q!==dW&&Q!==RH)return V7(A,$5);return A.state=null,Q===dW?V7(A,EtQ):g1}function utQ(A,Q){var B=Q.length,Y,J,C,X,G,F,W,Z;if(!A||!A.state)return $5;if(Y=A.state,X=Y.wrap,X===2||X===1&&Y.status!==o3||Y.lookahead)return $5;if(X===1)A.adler=DXA(A.adler,Q,B,0);if(Y.wrap=0,B>=Y.w_size){if(X===0)E7(Y.head),Y.strstart=0,Y.block_start=0,Y.insert=0;Z=new tJ.Buf8(Y.w_size),tJ.arraySet(Z,Q,B-Y.w_size,Y.w_size,0),Q=Z,B=Y.w_size}G=A.avail_in,F=A.next_in,W=A.input,A.avail_in=B,A.next_in=0,A.input=Q,lW(Y);while(Y.lookahead>=IB){J=Y.strstart,C=Y.lookahead-(IB-1);do Y.ins_h=(Y.ins_h<{var t3=qX(),RXA=!0,wXA=!0;try{String.fromCharCode.apply(null,[0])}catch(A){RXA=!1}try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(A){wXA=!1}var jH=new t3.Buf8(256);for(x1=0;x1<256;x1++)jH[x1]=x1>=252?6:x1>=248?5:x1>=240?4:x1>=224?3:x1>=192?2:1;var x1;jH[254]=jH[254]=1;ttQ.string2buf=function(A){var Q,B,Y,J,C,X=A.length,G=0;for(J=0;J>>6,Q[C++]=128|B&63;else if(B<65536)Q[C++]=224|B>>>12,Q[C++]=128|B>>>6&63,Q[C++]=128|B&63;else Q[C++]=240|B>>>18,Q[C++]=128|B>>>12&63,Q[C++]=128|B>>>6&63,Q[C++]=128|B&63}return Q};function jXA(A,Q){if(Q<65534){if(A.subarray&&wXA||!A.subarray&&RXA)return String.fromCharCode.apply(null,t3.shrinkBuf(A,Q))}var B="";for(var Y=0;Y4){G[Y++]=65533,B+=C-1;continue}J&=C===2?31:C===3?15:7;while(C>1&&B1){G[Y++]=65533;continue}if(J<65536)G[Y++]=J;else J-=65536,G[Y++]=55296|J>>10&1023,G[Y++]=56320|J&1023}return jXA(G,Y)};ttQ.utf8border=function(A,Q){var B;if(Q=Q||A.length,Q>A.length)Q=A.length;B=Q-1;while(B>=0&&(A[B]&192)===128)B--;if(B<0)return Q;if(B===0)return Q;return B+jH[A[B]]>Q?B:Q}});var Kx=R((HGY,OXA)=>{function JeQ(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}OXA.exports=JeQ});var kXA=R((UeQ)=>{var OH=zXA(),PH=qX(),Ix=Ex(),Hx=p3(),CeQ=Kx(),SXA=Object.prototype.toString,XeQ=0,Vx=4,HU=0,PXA=1,TXA=2,GeQ=-1,FeQ=0,WeQ=8;function iW(A){if(!(this instanceof iW))return new iW(A);this.options=PH.assign({level:GeQ,method:WeQ,chunkSize:16384,windowBits:15,memLevel:8,strategy:FeQ,to:""},A||{});var Q=this.options;if(Q.raw&&Q.windowBits>0)Q.windowBits=-Q.windowBits;else if(Q.gzip&&Q.windowBits>0&&Q.windowBits<16)Q.windowBits+=16;this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new CeQ,this.strm.avail_out=0;var B=OH.deflateInit2(this.strm,Q.level,Q.method,Q.windowBits,Q.memLevel,Q.strategy);if(B!==HU)throw Error(Hx[B]);if(Q.header)OH.deflateSetHeader(this.strm,Q.header);if(Q.dictionary){var Y;if(typeof Q.dictionary==="string")Y=Ix.string2buf(Q.dictionary);else if(SXA.call(Q.dictionary)==="[object ArrayBuffer]")Y=new Uint8Array(Q.dictionary);else Y=Q.dictionary;if(B=OH.deflateSetDictionary(this.strm,Y),B!==HU)throw Error(Hx[B]);this._dict_set=!0}}iW.prototype.push=function(A,Q){var B=this.strm,Y=this.options.chunkSize,J,C;if(this.ended)return!1;if(C=Q===~~Q?Q:Q===!0?Vx:XeQ,typeof A==="string")B.input=Ix.string2buf(A);else if(SXA.call(A)==="[object ArrayBuffer]")B.input=new Uint8Array(A);else B.input=A;B.next_in=0,B.avail_in=B.input.length;do{if(B.avail_out===0)B.output=new PH.Buf8(Y),B.next_out=0,B.avail_out=Y;if(J=OH.deflate(B,C),J!==PXA&&J!==HU)return this.onEnd(J),this.ended=!0,!1;if(B.avail_out===0||B.avail_in===0&&(C===Vx||C===TXA))if(this.options.to==="string")this.onData(Ix.buf2binstring(PH.shrinkBuf(B.output,B.next_out)));else this.onData(PH.shrinkBuf(B.output,B.next_out))}while((B.avail_in>0||B.avail_out===0)&&J!==PXA);if(C===Vx)return J=OH.deflateEnd(this.strm),this.onEnd(J),this.ended=!0,J===HU;if(C===TXA)return this.onEnd(HU),B.avail_out=0,!0;return!0};iW.prototype.onData=function(A){this.chunks.push(A)};iW.prototype.onEnd=function(A){if(A===HU)if(this.options.to==="string")this.result=this.chunks.join("");else this.result=PH.flattenChunks(this.chunks);this.chunks=[],this.err=A,this.msg=this.strm.msg};function Dx(A,Q){var B=new iW(Q);if(B.push(A,!0),B.err)throw B.msg||Hx[B.err];return B.result}function ZeQ(A,Q){return Q=Q||{},Q.raw=!0,Dx(A,Q)}function $eQ(A,Q){return Q=Q||{},Q.gzip=!0,Dx(A,Q)}UeQ.Deflate=iW;UeQ.deflate=Dx;UeQ.deflateRaw=ZeQ;UeQ.gzip=$eQ});var vXA=R((NGY,_XA)=>{var e3=30,HeQ=12;_XA.exports=function(Q,B){var Y,J,C,X,G,F,W,Z,U,$,E,K,I,V,H,D,L,z,M,N,q,w,P,_,O;Y=Q.state,J=Q.next_in,_=Q.input,C=J+(Q.avail_in-5),X=Q.next_out,O=Q.output,G=X-(B-Q.avail_out),F=X+(Q.avail_out-257),W=Y.dmax,Z=Y.wsize,U=Y.whave,$=Y.wnext,E=Y.window,K=Y.hold,I=Y.bits,V=Y.lencode,H=Y.distcode,D=(1<>>24,K>>>=M,I-=M,M=z>>>16&255,M===0)O[X++]=z&65535;else if(M&16){if(N=z&65535,M&=15,M){if(I>>=M,I-=M}if(I<15)K+=_[J++]<>>24,K>>>=M,I-=M,M=z>>>16&255,M&16){if(q=z&65535,M&=15,IW){Q.msg="invalid distance too far back",Y.mode=e3;break A}if(K>>>=M,I-=M,M=X-G,q>M){if(M=q-M,M>U){if(Y.sane){Q.msg="invalid distance too far back",Y.mode=e3;break A}}if(w=0,P=E,$===0){if(w+=Z-M,M2)O[X++]=P[w++],O[X++]=P[w++],O[X++]=P[w++],N-=3;if(N){if(O[X++]=P[w++],N>1)O[X++]=P[w++]}}else{w=X-q;do O[X++]=O[w++],O[X++]=O[w++],O[X++]=O[w++],N-=3;while(N>2);if(N){if(O[X++]=O[w++],N>1)O[X++]=O[w++]}}}else if((M&64)===0){z=H[(z&65535)+(K&(1<>3,J-=N,I-=N<<3,K&=(1<{var yXA=qX(),DU=15,hXA=852,gXA=592,xXA=0,Nx=1,fXA=2,DeQ=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],NeQ=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78],LeQ=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],qeQ=[16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];bXA.exports=function(Q,B,Y,J,C,X,G,F){var W=F.bits,Z=0,U=0,$=0,E=0,K=0,I=0,V=0,H=0,D=0,L=0,z,M,N,q,w,P=null,_=0,O,k=new yXA.Buf16(DU+1),T=new yXA.Buf16(DU+1),S=null,v=0,y,g,h;for(Z=0;Z<=DU;Z++)k[Z]=0;for(U=0;U=1;E--)if(k[E]!==0)break;if(K>E)K=E;if(E===0)return C[X++]=20971520,C[X++]=20971520,F.bits=1,0;for($=1;$0&&(Q===xXA||E!==1))return-1;T[1]=0;for(Z=1;ZhXA||Q===fXA&&D>gXA)return 1;for(;;){if(y=Z-V,G[U]O)g=S[v+G[U]],h=P[_+G[U]];else g=96,h=0;z=1<>V)+M]=y<<24|g<<16|h|0;while(M!==0);z=1<>=1;if(z!==0)L&=z-1,L+=z;else L=0;if(U++,--k[Z]===0){if(Z===E)break;Z=B[Y+G[U]]}if(Z>K&&(L&q)!==N){if(V===0)V=K;w+=$,I=Z-V,H=1<hXA||Q===fXA&&D>gXA)return 1;N=L&q,C[N]=K<<24|I<<16|w-X|0}}if(L!==0)C[w+L]=Z-V<<24|4194304|0;return F.bits=K,0}});var qGA=R((meQ)=>{var $8=qX(),wx=Gx(),f1=Fx(),MeQ=vXA(),TH=mXA(),zeQ=0,UGA=1,EGA=2,uXA=4,ReQ=5,AR=6,nW=0,weQ=1,jeQ=2,U5=-2,KGA=-3,jx=-4,OeQ=-5,dXA=8,VGA=1,cXA=2,lXA=3,pXA=4,iXA=5,nXA=6,sXA=7,rXA=8,aXA=9,oXA=10,YR=11,zX=12,Lx=13,tXA=14,qx=15,eXA=16,AGA=17,QGA=18,BGA=19,QR=20,BR=21,YGA=22,JGA=23,CGA=24,XGA=25,GGA=26,Mx=27,FGA=28,WGA=29,M0=30,Ox=31,PeQ=32,TeQ=852,SeQ=592,keQ=15,_eQ=keQ;function ZGA(A){return(A>>>24&255)+(A>>>8&65280)+((A&65280)<<8)+((A&255)<<24)}function veQ(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new $8.Buf16(320),this.work=new $8.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function IGA(A){var Q;if(!A||!A.state)return U5;if(Q=A.state,A.total_in=A.total_out=Q.total=0,A.msg="",Q.wrap)A.adler=Q.wrap&1;return Q.mode=VGA,Q.last=0,Q.havedict=0,Q.dmax=32768,Q.head=null,Q.hold=0,Q.bits=0,Q.lencode=Q.lendyn=new $8.Buf32(TeQ),Q.distcode=Q.distdyn=new $8.Buf32(SeQ),Q.sane=1,Q.back=-1,nW}function HGA(A){var Q;if(!A||!A.state)return U5;return Q=A.state,Q.wsize=0,Q.whave=0,Q.wnext=0,IGA(A)}function DGA(A,Q){var B,Y;if(!A||!A.state)return U5;if(Y=A.state,Q<0)B=0,Q=-Q;else if(B=(Q>>4)+1,Q<48)Q&=15;if(Q&&(Q<8||Q>15))return U5;if(Y.window!==null&&Y.wbits!==Q)Y.window=null;return Y.wrap=B,Y.wbits=Q,HGA(A)}function NGA(A,Q){var B,Y;if(!A)return U5;if(Y=new veQ,A.state=Y,Y.window=null,B=DGA(A,Q),B!==nW)A.state=null;return B}function yeQ(A){return NGA(A,_eQ)}var $GA=!0,zx,Rx;function heQ(A){if($GA){var Q;zx=new $8.Buf32(512),Rx=new $8.Buf32(32),Q=0;while(Q<144)A.lens[Q++]=8;while(Q<256)A.lens[Q++]=9;while(Q<280)A.lens[Q++]=7;while(Q<288)A.lens[Q++]=8;TH(UGA,A.lens,0,288,zx,0,A.work,{bits:9}),Q=0;while(Q<32)A.lens[Q++]=5;TH(EGA,A.lens,0,32,Rx,0,A.work,{bits:5}),$GA=!1}A.lencode=zx,A.lenbits=9,A.distcode=Rx,A.distbits=5}function LGA(A,Q,B,Y){var J,C=A.state;if(C.window===null)C.wsize=1<=C.wsize)$8.arraySet(C.window,Q,B-C.wsize,C.wsize,0),C.wnext=0,C.whave=C.wsize;else{if(J=C.wsize-C.wnext,J>Y)J=Y;if($8.arraySet(C.window,Q,B-Y,J,C.wnext),Y-=J,Y)$8.arraySet(C.window,Q,B-Y,Y,0),C.wnext=Y,C.whave=C.wsize;else{if(C.wnext+=J,C.wnext===C.wsize)C.wnext=0;if(C.whave>>8&255,B.check=f1(B.check,P,2,0),W=0,Z=0,B.mode=cXA;break}if(B.flags=0,B.head)B.head.done=!1;if(!(B.wrap&1)||(((W&255)<<8)+(W>>8))%31){A.msg="incorrect header check",B.mode=M0;break}if((W&15)!==dXA){A.msg="unknown compression method",B.mode=M0;break}if(W>>>=4,Z-=4,q=(W&15)+8,B.wbits===0)B.wbits=q;else if(q>B.wbits){A.msg="invalid window size",B.mode=M0;break}B.dmax=1<>8&1;if(B.flags&512)P[0]=W&255,P[1]=W>>>8&255,B.check=f1(B.check,P,2,0);W=0,Z=0,B.mode=lXA;case lXA:while(Z<32){if(G===0)break A;G--,W+=Y[C++]<>>8&255,P[2]=W>>>16&255,P[3]=W>>>24&255,B.check=f1(B.check,P,4,0);W=0,Z=0,B.mode=pXA;case pXA:while(Z<16){if(G===0)break A;G--,W+=Y[C++]<>8;if(B.flags&512)P[0]=W&255,P[1]=W>>>8&255,B.check=f1(B.check,P,2,0);W=0,Z=0,B.mode=iXA;case iXA:if(B.flags&1024){while(Z<16){if(G===0)break A;G--,W+=Y[C++]<>>8&255,B.check=f1(B.check,P,2,0);W=0,Z=0}else if(B.head)B.head.extra=null;B.mode=nXA;case nXA:if(B.flags&1024){if(E=B.length,E>G)E=G;if(E){if(B.head){if(q=B.head.extra_len-B.length,!B.head.extra)B.head.extra=Array(B.head.extra_len);$8.arraySet(B.head.extra,Y,C,E,q)}if(B.flags&512)B.check=f1(B.check,Y,E,C);G-=E,C+=E,B.length-=E}if(B.length)break A}B.length=0,B.mode=sXA;case sXA:if(B.flags&2048){if(G===0)break A;E=0;do if(q=Y[C+E++],B.head&&q&&B.length<65536)B.head.name+=String.fromCharCode(q);while(q&&E>9&1,B.head.done=!0;A.adler=B.check=0,B.mode=zX;break;case oXA:while(Z<32){if(G===0)break A;G--,W+=Y[C++]<>>=Z&7,Z-=Z&7,B.mode=Mx;break}while(Z<3){if(G===0)break A;G--,W+=Y[C++]<>>=1,Z-=1,W&3){case 0:B.mode=tXA;break;case 1:if(heQ(B),B.mode=QR,Q===AR){W>>>=2,Z-=2;break A}break;case 2:B.mode=AGA;break;case 3:A.msg="invalid block type",B.mode=M0}W>>>=2,Z-=2;break;case tXA:W>>>=Z&7,Z-=Z&7;while(Z<32){if(G===0)break A;G--,W+=Y[C++]<>>16^65535)){A.msg="invalid stored block lengths",B.mode=M0;break}if(B.length=W&65535,W=0,Z=0,B.mode=qx,Q===AR)break A;case qx:B.mode=eXA;case eXA:if(E=B.length,E){if(E>G)E=G;if(E>F)E=F;if(E===0)break A;$8.arraySet(J,Y,C,E,X),G-=E,C+=E,F-=E,X+=E,B.length-=E;break}B.mode=zX;break;case AGA:while(Z<14){if(G===0)break A;G--,W+=Y[C++]<>>=5,Z-=5,B.ndist=(W&31)+1,W>>>=5,Z-=5,B.ncode=(W&15)+4,W>>>=4,Z-=4,B.nlen>286||B.ndist>30){A.msg="too many length or distance symbols",B.mode=M0;break}B.have=0,B.mode=QGA;case QGA:while(B.have>>=3,Z-=3}while(B.have<19)B.lens[k[B.have++]]=0;if(B.lencode=B.lendyn,B.lenbits=7,_={bits:B.lenbits},w=TH(zeQ,B.lens,0,19,B.lencode,0,B.work,_),B.lenbits=_.bits,w){A.msg="invalid code lengths set",B.mode=M0;break}B.have=0,B.mode=BGA;case BGA:while(B.have>>24,D=V>>>16&255,L=V&65535,H<=Z)break;if(G===0)break A;G--,W+=Y[C++]<>>=H,Z-=H,B.lens[B.have++]=L;else{if(L===16){O=H+2;while(Z>>=H,Z-=H,B.have===0){A.msg="invalid bit length repeat",B.mode=M0;break}q=B.lens[B.have-1],E=3+(W&3),W>>>=2,Z-=2}else if(L===17){O=H+3;while(Z>>=H,Z-=H,q=0,E=3+(W&7),W>>>=3,Z-=3}else{O=H+7;while(Z>>=H,Z-=H,q=0,E=11+(W&127),W>>>=7,Z-=7}if(B.have+E>B.nlen+B.ndist){A.msg="invalid bit length repeat",B.mode=M0;break}while(E--)B.lens[B.have++]=q}}if(B.mode===M0)break;if(B.lens[256]===0){A.msg="invalid code -- missing end-of-block",B.mode=M0;break}if(B.lenbits=9,_={bits:B.lenbits},w=TH(UGA,B.lens,0,B.nlen,B.lencode,0,B.work,_),B.lenbits=_.bits,w){A.msg="invalid literal/lengths set",B.mode=M0;break}if(B.distbits=6,B.distcode=B.distdyn,_={bits:B.distbits},w=TH(EGA,B.lens,B.nlen,B.ndist,B.distcode,0,B.work,_),B.distbits=_.bits,w){A.msg="invalid distances set",B.mode=M0;break}if(B.mode=QR,Q===AR)break A;case QR:B.mode=BR;case BR:if(G>=6&&F>=258){if(A.next_out=X,A.avail_out=F,A.next_in=C,A.avail_in=G,B.hold=W,B.bits=Z,MeQ(A,$),X=A.next_out,J=A.output,F=A.avail_out,C=A.next_in,Y=A.input,G=A.avail_in,W=B.hold,Z=B.bits,B.mode===zX)B.back=-1;break}B.back=0;for(;;){if(V=B.lencode[W&(1<>>24,D=V>>>16&255,L=V&65535,H<=Z)break;if(G===0)break A;G--,W+=Y[C++]<>z)],H=V>>>24,D=V>>>16&255,L=V&65535,z+H<=Z)break;if(G===0)break A;G--,W+=Y[C++]<>>=z,Z-=z,B.back+=z}if(W>>>=H,Z-=H,B.back+=H,B.length=L,D===0){B.mode=GGA;break}if(D&32){B.back=-1,B.mode=zX;break}if(D&64){A.msg="invalid literal/length code",B.mode=M0;break}B.extra=D&15,B.mode=YGA;case YGA:if(B.extra){O=B.extra;while(Z>>=B.extra,Z-=B.extra,B.back+=B.extra}B.was=B.length,B.mode=JGA;case JGA:for(;;){if(V=B.distcode[W&(1<>>24,D=V>>>16&255,L=V&65535,H<=Z)break;if(G===0)break A;G--,W+=Y[C++]<>z)],H=V>>>24,D=V>>>16&255,L=V&65535,z+H<=Z)break;if(G===0)break A;G--,W+=Y[C++]<>>=z,Z-=z,B.back+=z}if(W>>>=H,Z-=H,B.back+=H,D&64){A.msg="invalid distance code",B.mode=M0;break}B.offset=L,B.extra=D&15,B.mode=CGA;case CGA:if(B.extra){O=B.extra;while(Z>>=B.extra,Z-=B.extra,B.back+=B.extra}if(B.offset>B.dmax){A.msg="invalid distance too far back",B.mode=M0;break}B.mode=XGA;case XGA:if(F===0)break A;if(E=$-F,B.offset>E){if(E=B.offset-E,E>B.whave){if(B.sane){A.msg="invalid distance too far back",B.mode=M0;break}}if(E>B.wnext)E-=B.wnext,K=B.wsize-E;else K=B.wnext-E;if(E>B.length)E=B.length;I=B.window}else I=J,K=X-B.offset,E=B.length;if(E>F)E=F;F-=E,B.length-=E;do J[X++]=I[K++];while(--E);if(B.length===0)B.mode=BR;break;case GGA:if(F===0)break A;J[X++]=B.length,F--,B.mode=BR;break;case Mx:if(B.wrap){while(Z<32){if(G===0)break A;G--,W|=Y[C++]<{MGA.exports={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8}});var RGA=R((zGY,zGA)=>{function oeQ(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}zGA.exports=oeQ});var jGA=R((QAB)=>{var NU=qGA(),SH=qX(),JR=Ex(),CY=Px(),Tx=p3(),teQ=Kx(),eeQ=RGA(),wGA=Object.prototype.toString;function sW(A){if(!(this instanceof sW))return new sW(A);this.options=SH.assign({chunkSize:16384,windowBits:0,to:""},A||{});var Q=this.options;if(Q.raw&&Q.windowBits>=0&&Q.windowBits<16){if(Q.windowBits=-Q.windowBits,Q.windowBits===0)Q.windowBits=-15}if(Q.windowBits>=0&&Q.windowBits<16&&!(A&&A.windowBits))Q.windowBits+=32;if(Q.windowBits>15&&Q.windowBits<48){if((Q.windowBits&15)===0)Q.windowBits|=15}this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new teQ,this.strm.avail_out=0;var B=NU.inflateInit2(this.strm,Q.windowBits);if(B!==CY.Z_OK)throw Error(Tx[B]);if(this.header=new eeQ,NU.inflateGetHeader(this.strm,this.header),Q.dictionary){if(typeof Q.dictionary==="string")Q.dictionary=JR.string2buf(Q.dictionary);else if(wGA.call(Q.dictionary)==="[object ArrayBuffer]")Q.dictionary=new Uint8Array(Q.dictionary);if(Q.raw){if(B=NU.inflateSetDictionary(this.strm,Q.dictionary),B!==CY.Z_OK)throw Error(Tx[B])}}}sW.prototype.push=function(A,Q){var B=this.strm,Y=this.options.chunkSize,J=this.options.dictionary,C,X,G,F,W,Z=!1;if(this.ended)return!1;if(X=Q===~~Q?Q:Q===!0?CY.Z_FINISH:CY.Z_NO_FLUSH,typeof A==="string")B.input=JR.binstring2buf(A);else if(wGA.call(A)==="[object ArrayBuffer]")B.input=new Uint8Array(A);else B.input=A;B.next_in=0,B.avail_in=B.input.length;do{if(B.avail_out===0)B.output=new SH.Buf8(Y),B.next_out=0,B.avail_out=Y;if(C=NU.inflate(B,CY.Z_NO_FLUSH),C===CY.Z_NEED_DICT&&J)C=NU.inflateSetDictionary(this.strm,J);if(C===CY.Z_BUF_ERROR&&Z===!0)C=CY.Z_OK,Z=!1;if(C!==CY.Z_STREAM_END&&C!==CY.Z_OK)return this.onEnd(C),this.ended=!0,!1;if(B.next_out){if(B.avail_out===0||C===CY.Z_STREAM_END||B.avail_in===0&&(X===CY.Z_FINISH||X===CY.Z_SYNC_FLUSH))if(this.options.to==="string"){if(G=JR.utf8border(B.output,B.next_out),F=B.next_out-G,W=JR.buf2string(B.output,G),B.next_out=F,B.avail_out=Y-F,F)SH.arraySet(B.output,B.output,G,F,0);this.onData(W)}else this.onData(SH.shrinkBuf(B.output,B.next_out))}if(B.avail_in===0&&B.avail_out===0)Z=!0}while((B.avail_in>0||B.avail_out===0)&&C!==CY.Z_STREAM_END);if(C===CY.Z_STREAM_END)X=CY.Z_FINISH;if(X===CY.Z_FINISH)return C=NU.inflateEnd(this.strm),this.onEnd(C),this.ended=!0,C===CY.Z_OK;if(X===CY.Z_SYNC_FLUSH)return this.onEnd(CY.Z_OK),B.avail_out=0,!0;return!0};sW.prototype.onData=function(A){this.chunks.push(A)};sW.prototype.onEnd=function(A){if(A===CY.Z_OK)if(this.options.to==="string")this.result=this.chunks.join("");else this.result=SH.flattenChunks(this.chunks);this.chunks=[],this.err=A,this.msg=this.strm.msg};function Sx(A,Q){var B=new sW(Q);if(B.push(A,!0),B.err)throw B.msg||Tx[B.err];return B.result}function AAB(A,Q){return Q=Q||{},Q.raw=!0,Sx(A,Q)}QAB.Inflate=sW;QAB.inflate=Sx;QAB.inflateRaw=AAB;QAB.ungzip=Sx});var TGA=R((wGY,PGA)=>{var XAB=qX().assign,GAB=kXA(),FAB=jGA(),WAB=Px(),OGA={};XAB(OGA,GAB,FAB,WAB);PGA.exports=OGA});var SGA=R((jGY,kx)=>{(function(){var A={};if(typeof kx=="object")kx.exports=A;else self.UTIF=A;var Q=TGA();function B(){if(typeof process>"u"||process.env.NODE_ENV=="development")console.log.apply(console,arguments)}(function(Y,J){(function(){var C=function(){function U($){this.message="JPEG error: "+$}return U.prototype=Error(),U.prototype.name="JpegError",U.constructor=U,U}(),X=function(){var U=new Uint8Array([0,1,8,16,9,2,3,10,17,24,32,25,18,11,4,5,12,19,26,33,40,48,41,34,27,20,13,6,7,14,21,28,35,42,49,56,57,50,43,36,29,22,15,23,30,37,44,51,58,59,52,45,38,31,39,46,53,60,61,54,47,55,62,63]),$=4017,E=799,K=3406,I=2276,V=1567,H=3784,D=5793,L=2896;function z(O){if(O==null)O={};if(O.w==null)O.w=-1;this.V=O.n,this.N=O.w}function M(O,k){var T=0,S=[],v,y,g=16,h;while(g>0&&!O[g-1])g--;S.push({children:[],index:0});var m=S[0];for(v=0;v0)m=S.pop();m.index++,S.push(m);while(S.length<=v)S.push(h={children:[],index:0}),m.children[m.index]=h.children,m=h;T++}if(v+10)return b--,x>>b&1;if(x=O[k++],x===255){var zA=O[k++];if(zA){if(zA===220&&i){k+=2;var uA=F(O,k);if(k+=2,uA>0&&uA!==T.s)throw new DNLMarkerError("Found DNL marker (0xFFDC) while parsing scan data",uA)}else if(zA===217){if(i){var MQ=EA*8;if(MQ>0&&MQ>>7}function vA(zA){var uA=zA;while(!0){switch(uA=uA[TA()],typeof uA){case"number":return uA;case"object":continue}throw new C("invalid huffman sequence")}}function mA(zA){var uA=0;while(zA>0)uA=uA<<1|TA(),zA--;return uA}function ZQ(zA){if(zA===1)return TA()===1?1:-1;var uA=mA(zA);if(uA>=1<>4;if(mQ===0){if(yB<15)break;eQ+=16;continue}eQ+=yB;var H0=U[eQ];zA.D[uA+H0]=ZQ(mQ),eQ++}}function CQ(zA,uA){var MQ=vA(zA.J),bQ=MQ===0?0:ZQ(MQ)<0){o--;return}var MQ=y,bQ=g;while(MQ<=bQ){var eQ=vA(zA.i),cB=eQ&15,mQ=eQ>>4;if(cB===0){if(mQ<15){o=mA(mQ)+(1<>4,cB===0)if(eQ<15)o=mA(eQ)+(1<0){for(CA=0;CA0?"unexpected":"excessive";k=QQ.offset}if(QQ.M>=65488&&QQ.M<=65495)k+=2;else break}return k-d}function w(O,k,T){var{$:S,D:v}=O,y,g,h,m,i,p,l,d,x,b,o,GA,VA,EA,UA,CA,QA;if(!S)throw new C("missing required Quantization Table.");for(var KA=0;KA<64;KA+=8){if(x=v[k+KA],b=v[k+KA+1],o=v[k+KA+2],GA=v[k+KA+3],VA=v[k+KA+4],EA=v[k+KA+5],UA=v[k+KA+6],CA=v[k+KA+7],x*=S[KA],(b|o|GA|VA|EA|UA|CA)===0){QA=D*x+512>>10,T[KA]=QA,T[KA+1]=QA,T[KA+2]=QA,T[KA+3]=QA,T[KA+4]=QA,T[KA+5]=QA,T[KA+6]=QA,T[KA+7]=QA;continue}b*=S[KA+1],o*=S[KA+2],GA*=S[KA+3],VA*=S[KA+4],EA*=S[KA+5],UA*=S[KA+6],CA*=S[KA+7],y=D*x+128>>8,g=D*VA+128>>8,h=o,m=UA,i=L*(b-CA)+128>>8,d=L*(b+CA)+128>>8,p=GA<<4,l=EA<<4,y=y+g+1>>1,g=y-g,QA=h*H+m*V+128>>8,h=h*V-m*H+128>>8,m=QA,i=i+l+1>>1,l=i-l,d=d+p+1>>1,p=d-p,y=y+m+1>>1,m=y-m,g=g+h+1>>1,h=g-h,QA=i*I+d*K+2048>>12,i=i*K-d*I+2048>>12,d=QA,QA=p*E+l*$+2048>>12,p=p*$-l*E+2048>>12,l=QA,T[KA]=y+d,T[KA+7]=y-d,T[KA+1]=g+l,T[KA+6]=g-l,T[KA+2]=h+p,T[KA+5]=h-p,T[KA+3]=m+i,T[KA+4]=m-i}for(var HA=0;HA<8;++HA){if(x=T[HA],b=T[HA+8],o=T[HA+16],GA=T[HA+24],VA=T[HA+32],EA=T[HA+40],UA=T[HA+48],CA=T[HA+56],(b|o|GA|VA|EA|UA|CA)===0){if(QA=D*x+8192>>14,QA<-2040)QA=0;else if(QA>=2024)QA=255;else QA=QA+2056>>4;v[k+HA]=QA,v[k+HA+8]=QA,v[k+HA+16]=QA,v[k+HA+24]=QA,v[k+HA+32]=QA,v[k+HA+40]=QA,v[k+HA+48]=QA,v[k+HA+56]=QA;continue}if(y=D*x+2048>>12,g=D*VA+2048>>12,h=o,m=UA,i=L*(b-CA)+2048>>12,d=L*(b+CA)+2048>>12,p=GA,l=EA,y=(y+g+1>>1)+4112,g=y-g,QA=h*H+m*V+2048>>12,h=h*V-m*H+2048>>12,m=QA,i=i+l+1>>1,l=i-l,d=d+p+1>>1,p=d-p,y=y+m+1>>1,m=y-m,g=g+h+1>>1,h=g-h,QA=i*I+d*K+2048>>12,i=i*K-d*I+2048>>12,d=QA,QA=p*E+l*$+2048>>12,p=p*$-l*E+2048>>12,l=QA,x=y+d,CA=y-d,b=g+l,UA=g-l,o=h+p,EA=h-p,GA=m+i,VA=m-i,x<16)x=0;else if(x>=4080)x=255;else x>>=4;if(b<16)b=0;else if(b>=4080)b=255;else b>>=4;if(o<16)o=0;else if(o>=4080)o=255;else o>>=4;if(GA<16)GA=0;else if(GA>=4080)GA=255;else GA>>=4;if(VA<16)VA=0;else if(VA>=4080)VA=255;else VA>>=4;if(EA<16)EA=0;else if(EA>=4080)EA=255;else EA>>=4;if(UA<16)UA=0;else if(UA>=4080)UA=255;else UA>>=4;if(CA<16)CA=0;else if(CA>=4080)CA=255;else CA>>=4;v[k+HA]=x,v[k+HA+8]=b,v[k+HA+16]=o,v[k+HA+24]=GA,v[k+HA+32]=VA,v[k+HA+40]=EA,v[k+HA+48]=UA,v[k+HA+56]=CA}}function P(O,k){var{P:T,c:S}=k,v=new Int16Array(64);for(var y=0;y=S)return null;var y=F(O,k);if(y>=65472&&y<=65534)return{u:null,M:y,offset:k};var g=F(O,v);while(!(g>=65472&&g<=65534)){if(++v>=S)return null;g=F(O,v)}return{u:y.toString(16),M:g,offset:v}}return z.prototype={parse(O,k){if(k==null)k={};var T=k.F,S=0,v=null,y=null,g,h,m=0;function i(){var mQ=F(O,S);S+=2;var yB=S+mQ-2,H0=_(O,yB,S);if(H0&&H0.u)yB=H0.offset;var xJ=O.subarray(S,yB);return S+=xJ.length,xJ}function p(mQ){var yB=Math.ceil(mQ.o/8/mQ.X),H0=Math.ceil(mQ.s/8/mQ.B);for(var xJ=0;xJ>4===0)for(GA=0;GA<64;GA++)CA=U[GA],HA[CA]=O[S++];else if(KA>>4===1)for(GA=0;GA<64;GA++)CA=U[GA],HA[CA]=F(O,S),S+=2;else throw new C("DQT - invalid table spec");l[KA&15]=HA}break;case 65472:case 65473:case 65474:if(g)throw new C("Only single frame JPEGs supported");S+=2,g={},g.G=b===65473,g.Z=b===65474,g.precision=O[S++];var DA=F(O,S),gA,QQ=0,XA=0;S+=2,g.s=T||DA,g.o=F(O,S),S+=2,g.W=[],g._={};var PA=O[S++];for(o=0;o>4,TA=O[S+1]&15;if(QQ>4===0?x:d)[ZQ&15]=M(NQ,SQ)}break;case 65501:S+=2,h=F(O,S),S+=2;break;case 65498:var LA=++m===1&&!T,IA;S+=2;var jA=O[S++],tQ=[];for(o=0;o>4],IA.i=d[KB&15],tQ.push(IA)}var zA=O[S++],uA=O[S++],MQ=O[S++];try{var bQ=q(O,S,g,tQ,h,zA,uA,MQ>>4,MQ&15,LA);S+=bQ}catch(mQ){if(mQ instanceof DNLMarkerError)return this.parse(O,{F:mQ.s});else if(mQ instanceof EOIMarkerError)break A;throw mQ}break;case 65500:S+=4;break;case 65535:if(O[S]!==255)S--;break;default:var eQ=_(O,S-2,S-3);if(eQ&&eQ.u){S=eQ.offset;break}if(S>=O.length-1)break A;throw new C("JpegImage.parse - unknown marker: "+b.toString(16))}b=F(O,S),S+=2}this.width=g.o,this.height=g.s,this.g=v,this.b=y,this.W=[];for(o=0;o>8)+HA[x+1];return UA},get f(){if(this.b)return!!this.b.a;if(this.p===3){if(this.N===0)return!1;else if(this.W[0].index===82&&this.W[1].index===71&&this.W[2].index===66)return!1;return!0}if(this.N===1)return!0;return!1},z:function(k){var T,S,v;for(var y=0,g=k.length;y4)throw new C("Unsupported color mode");var y=this.Y(k,T,v);if(this.p===1&&S){var g=y.length,h=new Uint8ClampedArray(g*3),m=0;for(var i=0;i>24}function F(Z,U){return Z[U]<<8|Z[U+1]}function W(Z,U){return(Z[U]<<24|Z[U+1]<<16|Z[U+2]<<8|Z[U+3])>>>0}Y.JpegDecoder=X})(),Y.encodeImage=function(C,X,G,F){var W={t256:[X],t257:[G],t258:[8,8,8,8],t259:[1],t262:[2],t273:[1000],t277:[4],t278:[G],t279:[X*G*4],t282:[[72,1]],t283:[[72,1]],t284:[1],t286:[[0,1]],t287:[[0,1]],t296:[1],t305:["Photopea (UTIF.js)"],t338:[1]};if(F)for(var Z in F)W[Z]=F[Z];var U=new Uint8Array(Y.encode([W])),$=new Uint8Array(C),E=new Uint8Array(1000+X*G*4);for(var Z=0;Z3)X.t258=X.t258.slice(0,3);var $=X.t277?X.t277[0]:1,E=X.t258?X.t258[0]:1,K=E*$;if(Z==1&&X.t279!=null&&X.t278&&X.t262[0]==32803)K=Math.round(X.t279[0]*8/(X.width*X.t278[0]));if(X.t50885&&X.t50885[0]==4)K=X.t258[0]*3;var I=Math.ceil(X.width*K/8)*8,V=X.t273;if(V==null||X.t322)V=X.t324;var H=X.t279;if(Z==1&&V.length==1)H=[X.height*(I>>>3)];if(H==null||X.t322)H=X.t325;var D=new Uint8Array(X.height*(I>>>3)),L=0;if(X.t322!=null){var z=X.t322[0],M=X.t323[0],N=Math.floor((X.width+z-1)/z),q=Math.floor((X.height+M-1)/M),w=new Uint8Array(Math.ceil(z*M*K/8)|0);console.log("====",N,q);for(var P=0;P>>3,N=Math.ceil(L*z*K/8);if(L==16&&!C.isLE&&C.t33422==null)for(var q=0;q>>8&255}else if(z==3)for(var V=3;V>3^16368,(h[L]|h[L+1]<<8)>>(D&7)&~(-1<>2,N[1]=((p(1)&3)<<12|p(2)<<4|p(3)>>4)&16383,N[2]=p(3)>>2&3,N[3]=(p(3)&3)<<8|p(4),N[4]=p(5)<<2|p(6)>>6,N[5]=(p(6)&63)<<4|p(7)>>4,N[6]=p(7)>>2&3,N[7]=(p(7)&3)<<8|p(8),N[8]=p(9)<<2&1020|p(10)>>6,N[9]=(p(10)<<4|p(11)>>4)&1023,N[10]=p(11)>>2&3,N[11]=(p(11)&3)<<8|p(12),N[12]=(p(13)<<2&1020|p(14)>>6)&1023,N[13]=(p(14)<<4|p(15)>>4)&1023,D+=16,L=0}function d(){N[0]=p(0)<<4|p(1)>>4,N[1]=((p(1)&15)<<8|p(2))&4095,N[2]=p(3)>>6&3,N[3]=(p(3)&63)<<2|p(4)>>6,N[4]=(p(4)&63)<<2|p(5)>>6,N[5]=(p(5)&63)<<2|p(6)>>6,N[6]=p(6)>>4&3,N[7]=(p(6)&15)<<4|p(7)>>4,N[8]=(p(7)&15)<<4|p(8)>>4,N[9]=(p(8)&15)<<4|p(9)>>4,N[10]=p(9)>>2&3,N[11]=(p(9)&3)<<6|p(10)>>2,N[12]=(p(10)&3)<<6|p(11)>>2,N[13]=(p(11)&3)<<6|p(12)>>2,N[14]=p(12)&3,N[15]=p(13),N[16]=p(14),N[17]=p(15),D+=16,L=0}function x(){_[0]=0,_[1]=0,O[0]=0,O[1]=0}if(I==7)throw I;else if(I==6){var b=K==12,o=b?d:l,GA=b?14:11,VA=b?128:512,EA=b?2048:8192,UA=b?16383:65535,CA=b?4095:16383,QA=$/GA,KA=QA*16,HA=b?18:14;for(v=0;vS)PA+=O[k]-S;O[k]=PA}else if(_[k]=PA,PA)O[k]=PA;else PA=O[k];m[T+y++]=PA-15<=UA?PA-15&UA:PA+2147483633>>31&CA}}}}}else if(I==5){var NA=K==12?10:9;for(v=0;v>4),m[T++]=((N[4]&15)<<8)+N[3],m[T++]=16*N[5]+(N[4]>>4),m[T++]=((N[7]&15)<<8)+N[6],m[T++]=16*N[8]+(N[7]>>4),m[T++]=((N[10]&15)<<8)+N[9],m[T++]=16*N[11]+(N[10]>>4),m[T++]=((N[13]&15)<<8)+N[12],m[T++]=16*N[14]+(N[13]>>4);else if(K==14)m[T++]=N[0]+((N[1]&63)<<8),m[T++]=(N[1]>>6)+4*N[2]+((N[3]&15)<<10),m[T++]=(N[3]>>4)+16*N[4]+((N[5]&3)<<12),m[T++]=((N[5]&252)>>2)+(N[6]<<6),m[T++]=N[7]+((N[8]&63)<<8),m[T++]=(N[8]>>6)+4*N[9]+((N[10]&15)<<10),m[T++]=(N[10]>>4)+16*N[11]+((N[12]&3)<<12),m[T++]=((N[12]&252)>>2)+(N[13]<<6),m[T++]=N[14]+((N[15]&63)<<8)}else if(I==4)for(v=0;v>3-i(2);if(O[k]){if(w=i(8),w!=0){if(_[k]-=128<11)_[k]=O[k]<<4|i(4);m[T++]=_[y&1]}else throw I},Y.decode._decodeVC5=function(){var C=[1,0,1,0,2,2,1,1,3,7,1,2,5,25,1,3,6,48,1,4,6,54,1,5,7,111,1,8,7,99,1,6,7,105,12,0,7,107,1,7,8,209,20,0,8,212,1,9,8,220,1,10,9,393,1,11,9,394,32,0,9,416,1,12,9,427,1,13,10,887,1,18,10,784,1,14,10,790,1,15,10,835,60,0,10,852,1,16,10,885,1,17,11,1571,1,19,11,1668,1,20,11,1669,100,0,11,1707,1,21,11,1772,1,22,12,3547,1,29,12,3164,1,24,12,3166,1,25,12,3140,1,23,12,3413,1,26,12,3537,1,27,12,3539,1,28,13,7093,1,35,13,6283,1,30,13,6331,1,31,13,6335,180,0,13,6824,1,32,13,7072,1,33,13,7077,320,0,13,7076,1,34,14,12565,1,36,14,12661,1,37,14,12669,1,38,14,13651,1,39,14,14184,1,40,15,28295,1,46,15,28371,1,47,15,25320,1,42,15,25336,1,43,15,25128,1,41,15,27300,1,44,15,28293,1,45,16,50259,1,48,16,50643,1,49,16,50675,1,50,16,56740,1,53,16,56584,1,51,16,56588,1,52,17,113483,1,61,17,113482,1,60,17,101285,1,55,17,101349,1,56,17,109205,1,57,17,109207,1,58,17,100516,1,54,17,113171,1,59,18,202568,1,62,18,202696,1,63,18,218408,1,64,18,218412,1,65,18,226340,1,66,18,226356,1,67,18,226358,1,68,19,402068,1,69,19,405138,1,70,19,405394,1,71,19,436818,1,72,19,436826,1,73,19,452714,1,75,19,452718,1,76,19,452682,1,74,20,804138,1,77,20,810279,1,78,20,810790,1,79,20,873638,1,80,20,873654,1,81,20,905366,1,82,20,905430,1,83,20,905438,1,84,21,1608278,1,85,21,1620557,1,86,21,1621582,1,87,21,1621583,1,88,21,1747310,1,89,21,1810734,1,90,21,1810735,1,91,21,1810863,1,92,21,1810879,1,93,22,3621725,1,99,22,3621757,1,100,22,3241112,1,94,22,3494556,1,95,22,3494557,1,96,22,3494622,1,97,22,3494623,1,98,23,6482227,1,102,23,6433117,1,101,23,6989117,1,103,23,6989119,1,105,23,6989118,1,104,23,7243449,1,106,23,7243512,1,107,24,13978233,1,111,24,12964453,1,109,24,12866232,1,108,24,14486897,1,113,24,13978232,1,110,24,14486896,1,112,24,14487026,1,114,24,14487027,1,115,25,25732598,1,225,25,25732597,1,189,25,25732596,1,188,25,25732595,1,203,25,25732594,1,202,25,25732593,1,197,25,25732592,1,207,25,25732591,1,169,25,25732590,1,223,25,25732589,1,159,25,25732522,1,235,25,25732579,1,152,25,25732575,1,192,25,25732489,1,179,25,25732573,1,201,25,25732472,1,172,25,25732576,1,149,25,25732488,1,178,25,25732566,1,120,25,25732571,1,219,25,25732577,1,150,25,25732487,1,127,25,25732506,1,211,25,25732548,1,125,25,25732588,1,158,25,25732486,1,247,25,25732467,1,238,25,25732508,1,163,25,25732552,1,228,25,25732603,1,183,25,25732513,1,217,25,25732587,1,168,25,25732520,1,122,25,25732484,1,128,25,25732562,1,249,25,25732505,1,187,25,25732504,1,186,25,25732483,1,136,25,25928905,1,181,25,25732560,1,255,25,25732500,1,230,25,25732482,1,135,25,25732555,1,233,25,25732568,1,222,25,25732583,1,145,25,25732481,1,134,25,25732586,1,167,25,25732521,1,248,25,25732518,1,209,25,25732480,1,243,25,25732512,1,216,25,25732509,1,164,25,25732547,1,140,25,25732479,1,157,25,25732544,1,239,25,25732574,1,191,25,25732564,1,251,25,25732478,1,156,25,25732546,1,139,25,25732498,1,242,25,25732557,1,133,25,25732477,1,162,25,25732515,1,213,25,25732584,1,165,25,25732514,1,212,25,25732476,1,227,25,25732494,1,198,25,25732531,1,236,25,25732530,1,234,25,25732529,1,117,25,25732528,1,215,25,25732527,1,124,25,25732526,1,123,25,25732525,1,254,25,25732524,1,253,25,25732523,1,148,25,25732570,1,218,25,25732580,1,146,25,25732581,1,147,25,25732569,1,224,25,25732533,1,143,25,25732540,1,184,25,25732541,1,185,25,25732585,1,166,25,25732556,1,132,25,25732485,1,129,25,25732563,1,250,25,25732578,1,151,25,25732501,1,119,25,25732502,1,193,25,25732536,1,176,25,25732496,1,245,25,25732553,1,229,25,25732516,1,206,25,25732582,1,144,25,25732517,1,208,25,25732558,1,137,25,25732543,1,241,25,25732466,1,237,25,25732507,1,190,25,25732542,1,240,25,25732551,1,131,25,25732554,1,232,25,25732565,1,252,25,25732475,1,171,25,25732493,1,205,25,25732492,1,204,25,25732491,1,118,25,25732490,1,214,25,25928904,1,180,25,25732549,1,126,25,25732602,1,182,25,25732539,1,175,25,25732545,1,141,25,25732559,1,138,25,25732537,1,177,25,25732534,1,153,25,25732503,1,194,25,25732606,1,160,25,25732567,1,121,25,25732538,1,174,25,25732497,1,246,25,25732550,1,130,25,25732572,1,200,25,25732474,1,170,25,25732511,1,221,25,25732601,1,196,25,25732532,1,142,25,25732519,1,210,25,25732495,1,199,25,25732605,1,155,25,25732535,1,154,25,25732499,1,244,25,25732510,1,220,25,25732600,1,195,25,25732607,1,161,25,25732604,1,231,25,25732473,1,173,25,25732599,1,226,26,51465122,1,116,26,51465123,0,1],X,G,F,W=[3,3,3,3,2,2,2,1,1,1],Z=24576,U=16384,$=8192,E=U|$;function K(q){var w=q[1],P=q[0][w>>>3]>>>7-(w&7)&1;return q[1]++,P}function I(q,w){if(X==null){X={};for(var P=0;P>>1}return q}function H(q,w){return q>>w}function D(q,w,P,_,O,k){w[P]=H(H(11*q[O]-4*q[O+k]+q[O+k+k]+4,3)+q[_],1),w[P+k]=H(H(5*q[O]+4*q[O+k]-q[O+k+k]+4,3)-q[_],1)}function L(q,w,P,_,O,k){var T=q[O-k]-q[O+k],S=q[O],v=q[_];w[P]=H(H(T+4,3)+S+v,1),w[P+k]=H(H(-T+4,3)+S-v,1)}function z(q,w,P,_,O,k){w[P]=H(H(5*q[O]+4*q[O-k]-q[O-k-k]+4,3)+q[_],1),w[P+k]=H(H(11*q[O]-4*q[O-k]+q[O-k-k]+4,3)-q[_],1)}function M(q){return q=q<0?0:q>4095?4095:q,q=F[q]>>>2,q}function N(q,w,P,_,O,k){_=new Uint16Array(_.buffer);var T=Date.now(),S=Y._binBE,v=w+P,y,g,h,m,i,p,l,d,x,b,o,GA,VA,EA,UA,CA,QA,KA;w+=4;var HA=k[0]==1;while(w>>1)*(h>>>1));KA=new Int16Array((g>>>1)*(h>>>1)),G=new Int16Array(1024);for(var NA=0;NA<1024;NA++){var TA=NA-512,vA=Math.abs(TA),y=Math.floor(768*vA*vA*vA/16581375)+vA;G[NA]=Math.sign(TA)*y}F=new Uint16Array(4096);var mA=65535;for(var NA=0;NA<4096;NA++){var ZQ=NA,NQ=mA*(Math.pow(113,ZQ/4095)-1)/112;F[NA]=Math.min(NQ,mA)}}var CQ=QA[l],SQ=V(g,1+W[m]),LA=V(h,1+W[m]);if(m==0)for(var IA=0;IA>>1)+jA]=q[tQ]<<8|q[tQ+1]}else{var IQ=[q,w*8],vQ=[],KB=0,zA=SQ*LA,uA=[0,0],MQ=0,gA=0;while(KB0)vQ[KB++]=gA,MQ--}var bQ=(m-1)%3,eQ=bQ!=1?SQ:0,cB=bQ!=0?LA:0;for(var IA=0;IA>>1)+eQ,yB=IA*SQ;for(var jA=0;jA>>1,H0=SQ*2,xJ=LA*2;for(var IA=0;IA>14-V1*2&3;var jV=K1[_6];if(jV!=0)for(var IA=0;IA>>1)*(g>>>1)+(jA>>>1),$W=OV[tQ],vk=JM[tQ]-2048,UW=CM[tQ]-2048,W4=XM[tQ]-2048,EW=(vk<<1)+$W,KW=(UW<<1)+$W,PV=$W+W4,TV=$W-W4;if(HA)_[GC]=M(PV),_[GC+1]=M(KW),_[GC+g]=M(EW),_[GC+g+1]=M(TV);else _[GC]=M(EW),_[GC+1]=M(PV),_[GC+g]=M(TV),_[GC+g+1]=M(KW)}}w+=PA*4}else if(QQ==16388)w+=PA*4;else if(XA==8192||XA==8448||XA==9216);else throw QQ.toString(16)}}console.log(Date.now()-T)}return N}(),Y.decode._decodeLogLuv32=function(C,X,G,F,W,Z){var U=C.width,$=U*4,E=0,K=new Uint8Array($);while(E>>(D[l]>>>8);for(var L=0;L>>4,W[Z+l+1]=P<<4|O>>>4,W[Z+l+2]=O<<4|_>>>4}return}var k=new Uint16Array(16),T,S,v,y,g,h,m,i,p,l,d,x=new Uint8Array(U+1);for(T=0;T<$;T++){for(var b=0;b>>11,h=15&v>>>22,m=15&v>>>26;for(i=0;i<4&&128<>3))>>>(p&7)&127)<2047)k[l]=2047;p+=7}for(l=0;l<16;l++,S+=2){var w=k[l]<<1;Y.decode._putsF(W,(T*U+S)*E,w<<16-E)}S-=S&1?1:31}}},Y.decode._decodeNikon=function(C,X,G,F,W,Z,U){var $=[[0,0,1,5,1,1,1,1,1,1,2,0,0,0,0,0,0,5,4,3,6,2,7,1,0,8,9,11,10,12],[0,0,1,5,1,1,1,1,1,1,2,0,0,0,0,0,0,57,90,56,39,22,5,4,3,2,1,0,11,12,12],[0,0,1,4,2,3,1,2,0,0,0,0,0,0,0,0,0,5,4,6,3,7,2,8,1,9,0,10,11,12],[0,0,1,4,3,1,1,1,1,1,2,0,0,0,0,0,0,5,6,4,7,8,3,9,2,1,0,10,11,12,13,14],[0,0,1,5,1,1,1,1,1,1,1,2,0,0,0,0,0,8,92,75,58,41,7,6,5,4,3,2,1,0,13,14],[0,0,1,4,2,2,3,1,2,0,0,0,0,0,0,0,0,7,6,8,5,9,4,10,3,11,12,2,0,1,13,14]],E=C.t256[0],K=C.t257[0],I=C.t258[0],V=0,H=0,D=Y.decode._make_decoder,L=Y.decode._getbithuff,z=X[0].exifIFD.makerNote,M=z.t150?z.t150:z.t140,N=0,q=M[N++],w=M[N++];if(q==73||w==88)N+=2110;if(q==70)V=2;if(I==14)V+=3;var P=[[0,0],[0,0]],_=C.isLE?Y._binLE:Y._binBE;for(var v=0;v<2;v++)for(var O=0;O<2;O++)P[v][O]=_.readShort(M,N),N+=2;var k=1<1)T=Math.floor(k/(S-1));if(q==68&&w==32&&T>0)H=_.readShort(M,562);var v,y,g,h,m,i,p=0,l=[0,0],d=D($[V]),x=[F,0,0,0];for(p=y=0;y>>4,i=(L(G,x,h-m,0)<<1)+1<>>1,(i&1<>>3;C[F]|=G>>>16,C[F+1]|=G>>>8,C[F+2]|=G},Y.decode._getbithuff=function(C,X,G,F){var W=0,Z=Y.decode._get_byte,U,$=X[0],E=X[1],K=X[2],I=X[3];if(G==0||K<0)return 0;while(!I&&K>>32-G,F)K-=F[U+1]>>>8,U=F[U+1]&255;else K-=G;if(K<0)throw"e";return X[0]=$,X[1]=E,X[2]=K,X[3]=I,U},Y.decode._make_decoder=function(C){var X,G,F,W,Z,U=[];for(X=16;X!=0&&!C[X];X--);var $=17;U[0]=X;for(F=G=1;G<=X;G++)for(W=0;W>>8;else for(var H=0;H>>8,W[Z+(H<<1)+1]=M[H]&255;else if(z==14||z==12||z==10){var q=16-z;for(var H=0;H1;if(!z){if(X[G]==255&&X[G+1]==W)return{jpegOffset:G};if(w!=null){if(X[G+P]==255&&X[G+P+1]==W)V=G+P;else B("JPEGInterchangeFormat does not point to SOI");if(_==null)B("JPEGInterchangeFormatLength field is missing");else if(P>=H||P+O<=H)B("JPEGInterchangeFormatLength field value is invalid");if(V!=null)return{jpegOffset:V}}}if(T!=null)S=T[0],v=T[1];if(w!=null){if(_!=null)if(O>=2&&P+O<=H){if(X[G+P+O-2]==255&&X[G+P+O-1]==W)D=new Uint8Array(O-2);else D=new Uint8Array(O);for(M=0;M offset to first strip or tile")}if(D==null){var h=0,m=[];m[h++]=255,m[h++]=W;var i=C.t519;if(i==null)throw Error("JPEGQTables tag is missing");for(M=0;M>>8,m[h++]=l&255,m[h++]=M|q<<4;for(N=0;N<16;N++)m[h++]=X[G+p[M]+N];for(N=0;N>>8&255,m[h++]=C.height&255,m[h++]=C.width>>>8&255,m[h++]=C.width&255,m[h++]=y,y==1)m[h++]=1,m[h++]=17,m[h++]=0;else for(M=0;M<3;M++)m[h++]=M+1,m[h++]=M!=0?17:(S&15)<<4|v&15,m[h++]=M;if(g!=null&&g[0]!=0)m[h++]=255,m[h++]=E,m[h++]=0,m[h++]=4,m[h++]=g[0]>>>8&255,m[h++]=g[0]&255;D=new Uint8Array(m)}var d=-1;M=0;while(M>>8&255,D[b++]=C.height&255,D[b++]=C.width>>>8&255,D[b++]=C.width&255,D[b++]=y,y==1)D[b++]=1,D[b++]=17,D[b++]=0;else for(M=0;M<3;M++)D[b++]=M+1,D[b++]=M!=0?17:(S&15)<<4|v&15,D[b++]=M}if(X[H]==255&&X[H+1]==I){var o=X[H+2]<<8|X[H+3];L=new Uint8Array(o+2),L[0]=X[H],L[1]=X[H+1],L[2]=X[H+2],L[3]=X[H+3];for(M=0;M>>8&255,K[V.sofPosition+6]=C.height&255,K[V.sofPosition+7]=C.width>>>8&255,K[V.sofPosition+8]=C.width&255,X[G]!=255||X[G+1]!=SOS)K.set(V.sosMarker,I),I+=sosMarker.length;for(U=0;U=0&&E<128)for(var K=0;K=-127&&E<0){for(var K=0;K<-E+1;K++)U[W]=Z[X],W++;X++}}return W},Y.decode._decodeThunder=function(C,X,G,F,W){var Z=[0,1,0,-1],U=[0,1,2,3,0,-3,-2,-1],$=X+G,E=W*2,K=0;while(X<$){var I=C[X],V=I>>>6,H=I&63;if(X++,V==3)K=H&15,F[E>>>1]|=K<<4*(1-E&1),E++;if(V==0)for(var D=0;D>>1]|=K<<4*(1-E&1),E++;if(V==2)for(var D=0;D<2;D++){var L=H>>>3*(1-D)&7;if(L!=4)K+=U[L],F[E>>>1]|=K<<4*(1-E&1),E++}if(V==1)for(var D=0;D<3;D++){var L=H>>>2*(2-D)&3;if(L!=2)K+=Z[L],F[E>>>1]|=K<<4*(1-E&1),E++}}},Y.decode._dmap={"1":0,"011":1,"000011":2,"0000011":3,"010":-1,"000010":-2,"0000010":-3},Y.decode._lens=function(){var C=function(E,K,I,V){for(var H=0;H>>3>>3]>>>7-(E&7)&1;if(U==2)T=C[E>>>3]>>>(E&7)&1;if(E++,I+=T,_=="H"){if($._lens[w][I]!=null){var S=$._lens[w][I];if(I="",K+=S,S<64){if($._addNtimes(V,K,w),L+=K,w=1-w,K=0,O--,O==0)_=""}}}else{if(I=="0001")I="",$._addNtimes(V,q-L,w),L=q;if(I=="001")I="",_="H",O=2;if($._dmap[I]!=null)z=N+$._dmap[I],$._addNtimes(V,z-L,w),L=z,I="",w=1-w}if(V.length==Z&&_=="")$._writeBits(V,F,W*8+P*k),w=0,P++,L=0,H=$._makeDiff(V),V=[]}},Y.decode._findDiff=function(C,X,G){for(var F=0;F=X&&C[F+1]==G)return C[F]},Y.decode._makeDiff=function(C){var X=[];if(C[0]==1)X.push(0,1);for(var G=1;G>>3>>3]>>>7-(E&7)&1;if(U==2)z=C[E>>>3]>>>(E&7)&1;if(E++,I+=z,K=$._lens[H][I],K!=null){if($._addNtimes(V,K,H),I="",K<64)H=1-H;if(V.length==Z){if($._writeBits(V,F,W*8+D*L),V=[],D++,H=0,(E&7)!=0)E+=8-(E&7);if(K>=64)E+=8}}}},Y.decode._decodeG3=function(C,X,G,F,W,Z,U,$){var E=Y.decode,K=X<<3,I=0,V="",H=[],D=[];for(var L=0;L>>3>>3]>>>7-(K&7)&1;if(U==2)v=C[K>>>3]>>>(K&7)&1;if(K++,V+=v,T){if(E._lens[P][V]!=null){var y=E._lens[P][V];if(V="",I+=y,y<64)E._addNtimes(H,I,P),P=1-P,I=0}}else if(O=="H"){if(E._lens[P][V]!=null){var y=E._lens[P][V];if(V="",I+=y,y<64){if(E._addNtimes(H,I,P),z+=I,P=1-P,I=0,k--,k==0)O=""}}}else{if(V=="0001")V="",E._addNtimes(H,w-z,P),z=w;if(V=="001")V="",O="H",k=2;if(E._dmap[V]!=null)M=q+E._dmap[V],E._addNtimes(H,M-z,P),z=M,V="",P=1-P}if(V.endsWith("000000000001")){if(_>=0)E._writeBits(H,F,W*8+_*S);if($){if(U==1)T=(C[K>>>3]>>>7-(K&7)&1)==1;if(U==2)T=(C[K>>>3]>>>(K&7)&1)==1;K++}V="",P=0,_++,z=0,D=E._makeDiff(H),H=[]}}if(H.length==Z)E._writeBits(H,F,W*8+_*S)},Y.decode._addNtimes=function(C,X,G){for(var F=0;F>>3]|=C[F]<<7-(G+F&7)},Y.decode._decodeLZW=Y.decode._decodeLZW=function(){var C,X,G,F,W=0,Z=0,U=0,$=0,E=function(){var M=C>>>3,N=X[M]<<16|X[M+1]<<8|X[M+2],q=N>>>24-(C&7)-Z&(1<>>----------------");for(var E=0;EX.buffer.byteLength)V=X.buffer.byteLength-L;D=new Uint8Array(X.buffer,L,V)}if(I==2){var z=V<5?G-4:H,M=X[z],N=Math.max(0,Math.min(V-1,X.length-z));if(M<128||N==0)D.push(C.readASCII(X,z,N));else D=new Uint8Array(X.buffer,z,N)}if(I==3)for(var q=0;q4)C.writeUint(G,F,$),M=$;if(V==1||V==7)for(var N=0;N4)z+=z&1,$+=z;F+=4}return[F,$]},Y.toRGBA8=function(C,X){function G(CQ){return CQ<0.0031308?12.92*CQ:1.055*Math.pow(CQ,0.4166666666666667)-0.055}var{width:F,height:W}=C,Z=F*W,U=Z*4,$=C.data,E=new Uint8Array(Z*4),K=C.t262?C.t262[0]:2,I=C.t258?Math.min(32,C.t258[0]):1;if(C.t262==null&&I==1)K=0;var V=C.t277?C.t277[0]:C.t258?C.t258.length:[1,1,3,1,1,4,3][K],H=C.t339?C.t339[0]:null;if(K==1&&I==32&&H!=3)throw"e";var D=Math.ceil(V*I*F/8);if(K==0){X=0.00390625;for(var L=0;L>3)]>>7-(N&7)&1;E[q]=E[q+1]=E[q+2]=(1-w)*255,E[q+3]=255}if(I==4)for(var N=0;N>1)]>>4-4*(N&1)&15;E[q]=E[q+1]=E[q+2]=(15-w)*17,E[q+3]=255}if(I==8)for(var N=0;N>3)]>>7-(N&7)&1;E[q]=E[q+1]=E[q+2]=w*255,E[q+3]=255}if(I==2)for(var N=0;N>2)]>>6-2*(N&3)&3;E[q]=E[q+1]=E[q+2]=w*85,E[q+3]=255}if(I==8)for(var N=0;N>>2)+N,w=_[P];E[q]=E[q+1]=E[q+2]=~~(0.5+255*w),E[q+3]=255}}}else if(K==2)if(I==8){if(V==1)for(var N=0;N=4)for(var N=0;N1&&C.t338&&C.t338[0]!=0;for(var L=0;L>>3)]>>>7-(i&7)&1;else if(I==2)p=$[l+(i>>>2)]>>>6-2*(i&3)&3;else if(I==4)p=$[l+(i>>>1)]>>>4-4*(i&1)&15;else if(I==8)p=$[l+i*V];else throw I;E[q]=g[p]>>8,E[q+1]=g[h+p]>>8,E[q+2]=g[h+h+p]>>8,E[q+3]=m?$[l+i*V+1]:255}}else if(K==5){var d=V>4?1:0;for(var N=0;N>>1),GA=$[x+(QA&1)],KA=$[x+2]-128,HA=$[x+3]-128,DA=GA+((HA>>2)+(HA>>3)+(HA>>5)),gA=GA-((KA>>2)+(KA>>4)+(KA>>5))-((HA>>1)+(HA>>3)+(HA>>4)+(HA>>5)),QQ=GA+(KA+(KA>>1)+(KA>>2)+(KA>>6));E[q]=Math.max(0,Math.min(255,DA)),E[q+1]=Math.max(0,Math.min(255,gA)),E[q+2]=Math.max(0,Math.min(255,QQ)),E[q+3]=255}}}else if(K==32845)for(var L=0;LF)F=$,W=U}Y.decodeImage(C,W,X);var E=Y.toRGBA8(W),K=W.width,I=W.height,V=document.createElement("canvas");V.width=K,V.height=I;var H=V.getContext("2d"),D=new ImageData(new Uint8ClampedArray(E.buffer),K,I);return H.putImageData(D,0,0),V.toDataURL()},Y._binBE={nextZero:function(C,X){while(C[X]!=0)X++;return X},readUshort:function(C,X){return C[X]<<8|C[X+1]},readShort:function(C,X){var G=Y._binBE.ui8;return G[0]=C[X+1],G[1]=C[X+0],Y._binBE.i16[0]},readInt:function(C,X){var G=Y._binBE.ui8;return G[0]=C[X+3],G[1]=C[X+2],G[2]=C[X+1],G[3]=C[X+0],Y._binBE.i32[0]},readUint:function(C,X){var G=Y._binBE.ui8;return G[0]=C[X+3],G[1]=C[X+2],G[2]=C[X+1],G[3]=C[X+0],Y._binBE.ui32[0]},readASCII:function(C,X,G){var F="";for(var W=0;W>8&255,C[X+1]=G&255},writeInt:function(C,X,G){var F=Y._binBE.ui8;Y._binBE.i32[0]=G,C[X+3]=F[0],C[X+2]=F[1],C[X+1]=F[2],C[X+0]=F[3]},writeUint:function(C,X,G){C[X]=G>>24&255,C[X+1]=G>>16&255,C[X+2]=G>>8&255,C[X+3]=G>>0&255},writeASCII:function(C,X,G){for(var F=0;F>8&255},writeInt:function(C,X,G){var F=Y._binBE.ui8;Y._binBE.i32[0]=G,C[X+0]=F[0],C[X+1]=F[1],C[X+2]=F[2],C[X+3]=F[3]},writeUint:function(C,X,G){C[X]=G>>>0&255,C[X+1]=G>>>8&255,C[X+2]=G>>>16&255,C[X+3]=G>>>24&255},writeASCII:Y._binBE.writeASCII},Y._copyTile=function(C,X,G,F,W,Z,U,$){var E=Math.min(X,W-U),K=Math.min(G,Z-$);for(var I=0;I>--S&1,y=q[y+g];T[_]=y}}function Z(M,N,q,w){if(M[N+3]!=255)return 0;if(q==0)return N;for(var P=0;P<2;P++){if(M[N+P]==0)M[N+P]=M.length,M.push(0,0,w,255);var _=Z(M,M[N+P],q-1,w+1);if(_!=0)return _}return 0}function U(M){var{b:N,f:q}=M;while(N<25&&M.a>(N.b-=M)&65535>>16-M}function E(M,N){var q=M[0],w=0,P=255,_=0;if(N.b<16)U(N);var O=N.f>>N.b-8&255;w=M[1][O],P=q[w+3],N.b-=q[w+2];while(P==255)_=N.f>>--N.b&1,w=q[w+_],P=q[w+3];return P}function K(M,N){if(M<32768>>16-N)M+=-(1<>4,i&15]}}else if(y==65476){var l=X+g-2;while(X>>4],_[x[0]]=x.slice(1)}q=G(),X+=2;break}else if(y==65501)P=F();else X+=g-2}var b=w>8?Uint16Array:Uint8Array,o=new b(S*v*T),GA={b:0,f:0,c:q==8,a:X,data:C,d:C.length,e:P};if(GA.c)D(o,v*T,GA,k[0],S);else{var VA=[],EA=0,UA=0;for(var h=0;hEA)EA=QA;if(KA>UA)UA=KA;VA.push(QA*KA)}if(EA!=1||UA!=1){if(T!=3||VA[1]!=1||VA[2]!=1)throw"e";if(EA!=2||UA!=1&&UA!=2)throw"e";var HA=[],DA=0;for(var h=0;h>>1)*QQ+(QA>>>1))*DA,ZQ=(KA&1)*2+(QA&1);o[vA]=TA[mA+ZQ],o[vA+1]=TA[mA+4],o[vA+2]=TA[mA+5]}else for(var QA=0;QA>>1))*DA,ZQ=QA&1;o[vA]=TA[mA+ZQ],o[vA+1]=TA[mA+2],o[vA+2]=TA[mA+3]}}else if(V(o,v*T,GA,k,T,S),P==0)z(o,q,v,S,0,T,T,w);else{var NQ=Math.floor(P/v);for(var KA=0;KA>>1);else if(N==6)p=M[m]+(i-M[m-O]>>>1);else if(N==7)p=i+M[m]>>>1;else throw N;M[h]+=p}}}return L}(),function(){var C=0,X=1,G=2,F=3,W=4,Z=5,U=6,$=7,E=8,K=9,I=10,V=11,H=12,D=13,L=14,z=15,M=16,N=17,q=18;function w(d){var x=Y._binBE.readUshort,b={b:x(d,0),i:d[2],C:d[3],u:d[4],q:x(d,5),k:x(d,7),e:x(d,9),l:x(d,11),s:d[13],d:x(d,14)};if(b.b!=18771||b.i>1||b.q<6||b.q%6||b.e<768||b.e%24||b.l!=768||b.k=b.l||b.s>16||b.s!=b.k/b.l||b.s!=Math.ceil(b.e/b.l)||b.d!=b.q/6||b.u!=12&&b.u!=14&&b.u!=16||b.C!=16&&b.C!=0)throw"Invalid data";if(b.i==0)throw"Not implemented. We need this file!";return b.h=b.C==16,b.m=(b.h?b.l*2/3:b.l>>>1)|0,b.A=b.m+2,b.f=64,b.g=(1<>>6);for(var o=0;o<3;o++)for(var GA=0;GA<41;GA++)x[o][GA]=[b,1];return x}function S(d){for(var x=-1,b=0;!b;x++)if(b=d[d.j]>>>7-d.a&1,d.a++,d.a&=7,!d.a)d.j++;return x}function v(d,x){var b=0,o=8-d.a,GA=d.j,VA=d.a;if(x){if(x>=o)do b<<=o,x-=o,b|=d[d.j]&(1<=8);if(x)b<<=x,o-=x,b|=d[d.j]>>>o&(1<IA&&LA>>2,UA){XA[CA]=jA;return}gA=x.t*x.c[d.g+vA-NA]+x.c[d.g+TA-vA]}else jA=vA>TA&&vA>mA||vA>>2:ZQ+NQ>>>1,gA=x.t*x.c[d.g+vA-TA]+x.c[d.g+TA-ZQ];QQ=CQ(gA);var tQ=S(b);if(tQ>>1):DA>>>1,EA[QQ][0]+=CQ(DA),EA[QQ][1]==d.f)EA[QQ][0]>>>=1,EA[QQ][1]>>>=1;if(EA[QQ][1]++,jA=gA<0?jA-DA:jA+DA,d.i){if(jA<0)jA+=x.w;else if(jA>d.g)jA-=x.w}XA[CA]=jA>=0?Math.min(jA,d.g):0}function h(d,x,b){var o=d[0].length;for(var GA=x;GA<=b;GA++)d[GA][0]=d[GA-1][1],d[GA][o-1]=d[GA-1][o-2]}function m(d){h(d,$,H),h(d,G,W),h(d,z,N)}function i(d,x,b,o,GA,VA,EA,UA,CA,QA,KA,HA,DA){var gA=0,QQ=1,XA=GAW;while(QQ8)g(d,x,b,o,GA,QQ,UA[CA]),g(d,x,b,o,VA,QQ,UA[CA]),QQ+=2}m(o)}function p(d,x,b,o,GA,VA){i(d,x,b,o,G,$,GA,VA,0,0,1,0,8),i(d,x,b,o,E,z,GA,VA,1,0,1,0,8),i(d,x,b,o,F,K,GA,VA,2,1,0,3,0),i(d,x,b,o,I,M,GA,VA,0,0,0,3,2),i(d,x,b,o,W,V,GA,VA,1,0,0,3,2),i(d,x,b,o,H,N,GA,VA,2,1,0,3,0)}function l(d,x,b,o,GA,VA){var EA=VA.length,UA=d.l;if(GA+1==d.s)UA=d.e-GA*d.l;var CA=6*d.e*o+GA*d.l;for(var QA=0;QA<6;QA++){for(var KA=0;KA>>1);else if(HA==2)DA=z+(QA>>>1);else DA=$+QA;var gA=d.h?(KA*2/3&2147483646|KA%3&1)+(KA%3>>>1):KA>>>1;x[CA+KA]=b[DA][gA+1]}CA+=d.e}}Y._decompressRAF=function(d,x){var b=w(d),o=P(d,b),GA=k(b),VA=new Int16Array(b.e*b.q);if(x==null)x=b.h?[[1,1,0,1,1,2],[1,1,2,1,1,0],[2,0,1,0,2,1],[1,1,2,1,1,0],[1,1,0,1,1,2],[0,2,1,2,0,1]]:[[0,1],[3,2]];var EA=[[C,F],[X,W],[Z,V],[U,H],[D,M],[L,N]],UA=[];for(var CA=0;CA{/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh */aQB.read=function(A,Q,B,Y,J){var C,X,G=J*8-Y-1,F=(1<>1,Z=-7,U=B?J-1:0,$=B?-1:1,E=A[Q+U];U+=$,C=E&(1<<-Z)-1,E>>=-Z,Z+=G;for(;Z>0;C=C*256+A[Q+U],U+=$,Z-=8);X=C&(1<<-Z)-1,C>>=-Z,Z+=Y;for(;Z>0;X=X*256+A[Q+U],U+=$,Z-=8);if(C===0)C=1-W;else if(C===F)return X?NaN:(E?-1:1)*(1/0);else X=X+Math.pow(2,Y),C=C-W;return(E?-1:1)*X*Math.pow(2,C-Y)};aQB.write=function(A,Q,B,Y,J,C){var X,G,F,W=C*8-J-1,Z=(1<>1,$=J===23?Math.pow(2,-24)-Math.pow(2,-77):0,E=Y?0:C-1,K=Y?1:-1,I=Q<0||Q===0&&1/Q<0?1:0;if(Q=Math.abs(Q),isNaN(Q)||Q===1/0)G=isNaN(Q)?1:0,X=Z;else{if(X=Math.floor(Math.log(Q)/Math.LN2),Q*(F=Math.pow(2,-X))<1)X--,F*=2;if(X+U>=1)Q+=$/F;else Q+=$*Math.pow(2,1-U);if(Q*F>=2)X++,F/=2;if(X+U>=Z)G=0,X=Z;else if(X+U>=1)G=(Q*F-1)*Math.pow(2,J),X=X+U;else G=Q*Math.pow(2,U-1)*Math.pow(2,J),X=0}for(;J>=8;A[B+E]=G&255,E+=K,G/=256,J-=8);X=X<0;A[B+E]=X&255,E+=K,X/=256,W-=8);A[B+E-K]|=I*128}});var J7A=R((A7A)=>{Object.defineProperty(A7A,"__esModule",{value:!0});A7A.AnsiStringType=A7A.StringType=A7A.BufferType=A7A.Uint8ArrayType=A7A.IgnoreType=A7A.Float80_LE=A7A.Float80_BE=A7A.Float64_LE=A7A.Float64_BE=A7A.Float32_LE=A7A.Float32_BE=A7A.Float16_LE=A7A.Float16_BE=A7A.INT64_BE=A7A.UINT64_BE=A7A.INT64_LE=A7A.UINT64_LE=A7A.INT32_LE=A7A.INT32_BE=A7A.INT24_BE=A7A.INT24_LE=A7A.INT16_LE=A7A.INT16_BE=A7A.INT8=A7A.UINT32_BE=A7A.UINT32_LE=A7A.UINT24_BE=A7A.UINT24_LE=A7A.UINT16_BE=A7A.UINT16_LE=A7A.UINT8=void 0;var R7=rGA();function iQ(A){return new DataView(A.buffer,A.byteOffset)}A7A.UINT8={len:1,get(A,Q){return iQ(A).getUint8(Q)},put(A,Q,B){return iQ(A).setUint8(Q,B),Q+1}};A7A.UINT16_LE={len:2,get(A,Q){return iQ(A).getUint16(Q,!0)},put(A,Q,B){return iQ(A).setUint16(Q,B,!0),Q+2}};A7A.UINT16_BE={len:2,get(A,Q){return iQ(A).getUint16(Q)},put(A,Q,B){return iQ(A).setUint16(Q,B),Q+2}};A7A.UINT24_LE={len:3,get(A,Q){let B=iQ(A);return B.getUint8(Q)+(B.getUint16(Q+1,!0)<<8)},put(A,Q,B){let Y=iQ(A);return Y.setUint8(Q,B&255),Y.setUint16(Q+1,B>>8,!0),Q+3}};A7A.UINT24_BE={len:3,get(A,Q){let B=iQ(A);return(B.getUint16(Q)<<8)+B.getUint8(Q+2)},put(A,Q,B){let Y=iQ(A);return Y.setUint16(Q,B>>8),Y.setUint8(Q+2,B&255),Q+3}};A7A.UINT32_LE={len:4,get(A,Q){return iQ(A).getUint32(Q,!0)},put(A,Q,B){return iQ(A).setUint32(Q,B,!0),Q+4}};A7A.UINT32_BE={len:4,get(A,Q){return iQ(A).getUint32(Q)},put(A,Q,B){return iQ(A).setUint32(Q,B),Q+4}};A7A.INT8={len:1,get(A,Q){return iQ(A).getInt8(Q)},put(A,Q,B){return iQ(A).setInt8(Q,B),Q+1}};A7A.INT16_BE={len:2,get(A,Q){return iQ(A).getInt16(Q)},put(A,Q,B){return iQ(A).setInt16(Q,B),Q+2}};A7A.INT16_LE={len:2,get(A,Q){return iQ(A).getInt16(Q,!0)},put(A,Q,B){return iQ(A).setInt16(Q,B,!0),Q+2}};A7A.INT24_LE={len:3,get(A,Q){let B=A7A.UINT24_LE.get(A,Q);return B>8388607?B-16777216:B},put(A,Q,B){let Y=iQ(A);return Y.setUint8(Q,B&255),Y.setUint16(Q+1,B>>8,!0),Q+3}};A7A.INT24_BE={len:3,get(A,Q){let B=A7A.UINT24_BE.get(A,Q);return B>8388607?B-16777216:B},put(A,Q,B){let Y=iQ(A);return Y.setUint16(Q,B>>8),Y.setUint8(Q+2,B&255),Q+3}};A7A.INT32_BE={len:4,get(A,Q){return iQ(A).getInt32(Q)},put(A,Q,B){return iQ(A).setInt32(Q,B),Q+4}};A7A.INT32_LE={len:4,get(A,Q){return iQ(A).getInt32(Q,!0)},put(A,Q,B){return iQ(A).setInt32(Q,B,!0),Q+4}};A7A.UINT64_LE={len:8,get(A,Q){return iQ(A).getBigUint64(Q,!0)},put(A,Q,B){return iQ(A).setBigUint64(Q,B,!0),Q+8}};A7A.INT64_LE={len:8,get(A,Q){return iQ(A).getBigInt64(Q,!0)},put(A,Q,B){return iQ(A).setBigInt64(Q,B,!0),Q+8}};A7A.UINT64_BE={len:8,get(A,Q){return iQ(A).getBigUint64(Q)},put(A,Q,B){return iQ(A).setBigUint64(Q,B),Q+8}};A7A.INT64_BE={len:8,get(A,Q){return iQ(A).getBigInt64(Q)},put(A,Q,B){return iQ(A).setBigInt64(Q,B),Q+8}};A7A.Float16_BE={len:2,get(A,Q){return R7.read(A,Q,!1,10,this.len)},put(A,Q,B){return R7.write(A,B,Q,!1,10,this.len),Q+this.len}};A7A.Float16_LE={len:2,get(A,Q){return R7.read(A,Q,!0,10,this.len)},put(A,Q,B){return R7.write(A,B,Q,!0,10,this.len),Q+this.len}};A7A.Float32_BE={len:4,get(A,Q){return iQ(A).getFloat32(Q)},put(A,Q,B){return iQ(A).setFloat32(Q,B),Q+4}};A7A.Float32_LE={len:4,get(A,Q){return iQ(A).getFloat32(Q,!0)},put(A,Q,B){return iQ(A).setFloat32(Q,B,!0),Q+4}};A7A.Float64_BE={len:8,get(A,Q){return iQ(A).getFloat64(Q)},put(A,Q,B){return iQ(A).setFloat64(Q,B),Q+8}};A7A.Float64_LE={len:8,get(A,Q){return iQ(A).getFloat64(Q,!0)},put(A,Q,B){return iQ(A).setFloat64(Q,B,!0),Q+8}};A7A.Float80_BE={len:10,get(A,Q){return R7.read(A,Q,!1,63,this.len)},put(A,Q,B){return R7.write(A,B,Q,!1,63,this.len),Q+this.len}};A7A.Float80_LE={len:10,get(A,Q){return R7.read(A,Q,!0,63,this.len)},put(A,Q,B){return R7.write(A,B,Q,!0,63,this.len),Q+this.len}};class aGA{constructor(A){this.len=A}get(A,Q){}}A7A.IgnoreType=aGA;class oGA{constructor(A){this.len=A}get(A,Q){return A.subarray(Q,Q+this.len)}}A7A.Uint8ArrayType=oGA;class tGA{constructor(A){this.len=A}get(A,Q){return Buffer.from(A.subarray(Q,Q+this.len))}}A7A.BufferType=tGA;class eGA{constructor(A,Q){this.len=A,this.encoding=Q}get(A,Q){return Buffer.from(A).toString(this.encoding,Q,Q+this.len)}}A7A.StringType=eGA;class z7{constructor(A){this.len=A}static decode(A,Q,B){let Y="";for(let J=Q;J>10)+55296,(A&1023)+56320)}static singleByteDecoder(A){if(z7.inRange(A,0,127))return A;let Q=z7.windows1252[A-128];if(Q===null)throw Error("invaliding encoding");return Q}get(A,Q=0){return z7.decode(A,Q,Q+this.len)}}A7A.AnsiStringType=z7;z7.windows1252=[8364,129,8218,402,8222,8230,8224,8225,710,8240,352,8249,338,141,381,143,144,8216,8217,8220,8221,8226,8211,8212,732,8482,353,8250,339,157,382,376,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255]});var $R=R((X7A)=>{Object.defineProperty(X7A,"__esModule",{value:!0});X7A.EndOfStreamError=X7A.defaultMessages=void 0;X7A.defaultMessages="End-Of-Stream";class C7A extends Error{constructor(){super(X7A.defaultMessages)}}X7A.EndOfStreamError=C7A});var U7A=R((Z7A)=>{Object.defineProperty(Z7A,"__esModule",{value:!0});Z7A.Deferred=void 0;class W7A{constructor(){this.resolve=()=>null,this.reject=()=>null,this.promise=new Promise((A,Q)=>{this.reject=Q,this.resolve=A})}}Z7A.Deferred=W7A});var I7A=R((bx)=>{Object.defineProperty(bx,"__esModule",{value:!0});bx.StreamReader=bx.EndOfStreamError=void 0;var E7A=$R(),OBB=U7A(),PBB=$R();Object.defineProperty(bx,"EndOfStreamError",{enumerable:!0,get:function(){return PBB.EndOfStreamError}});var TBB=1048576;class K7A{constructor(A){if(this.s=A,this.deferred=null,this.endOfStream=!1,this.peekQueue=[],!A.read||!A.once)throw Error("Expected an instance of stream.Readable");this.s.once("end",()=>this.reject(new E7A.EndOfStreamError)),this.s.once("error",(Q)=>this.reject(Q)),this.s.once("close",()=>this.reject(Error("Stream closed")))}async peek(A,Q,B){let Y=await this.read(A,Q,B);return this.peekQueue.push(A.subarray(Q,Q+Y)),Y}async read(A,Q,B){if(B===0)return 0;if(this.peekQueue.length===0&&this.endOfStream)throw new E7A.EndOfStreamError;let Y=B,J=0;while(this.peekQueue.length>0&&Y>0){let C=this.peekQueue.pop();if(!C)throw Error("peekData should be defined");let X=Math.min(C.length,Y);if(A.set(C.subarray(0,X),Q+J),J+=X,Y-=X,X0&&!this.endOfStream){let C=Math.min(Y,TBB),X=await this.readFromStream(A,Q+J,C);if(J+=X,X{this.readDeferred(J)}),J.deferred.promise}}readDeferred(A){let Q=this.s.read(A.length);if(Q)A.buffer.set(Q,A.offset),A.deferred.resolve(Q.length),this.deferred=null;else this.s.once("readable",()=>{this.readDeferred(A)})}reject(A){if(this.endOfStream=!0,this.deferred)this.deferred.reject(A),this.deferred=null}}bx.StreamReader=K7A});var bH=R((UR)=>{Object.defineProperty(UR,"__esModule",{value:!0});UR.StreamReader=UR.EndOfStreamError=void 0;var SBB=$R();Object.defineProperty(UR,"EndOfStreamError",{enumerable:!0,get:function(){return SBB.EndOfStreamError}});var kBB=I7A();Object.defineProperty(UR,"StreamReader",{enumerable:!0,get:function(){return kBB.StreamReader}})});var mx=R((D7A)=>{Object.defineProperty(D7A,"__esModule",{value:!0});D7A.AbstractTokenizer=void 0;var ER=bH();class H7A{constructor(A){this.position=0,this.numBuffer=new Uint8Array(8),this.fileInfo=A?A:{}}async readToken(A,Q=this.position){let B=Buffer.alloc(A.len);if(await this.readBuffer(B,{position:Q})Q)return this.position+=Q,Q}return this.position+=A,A}async close(){}normalizeOptions(A,Q){if(Q&&Q.position!==void 0&&Q.position{Object.defineProperty(q7A,"__esModule",{value:!0});q7A.ReadStreamTokenizer=void 0;var vBB=mx(),KR=bH(),yBB=256000;class L7A extends vBB.AbstractTokenizer{constructor(A,Q){super(Q);this.streamReader=new KR.StreamReader(A)}async getFileInfo(){return this.fileInfo}async readBuffer(A,Q){let B=this.normalizeOptions(A,Q),Y=B.position-this.position;if(Y>0)return await this.ignore(Y),this.readBuffer(A,Q);else if(Y<0)throw Error("`options.position` must be equal or greater than `tokenizer.position`");if(B.length===0)return 0;let J=await this.streamReader.read(A,B.offset,B.length);if(this.position+=J,(!Q||!Q.mayBeLess)&&J0){let C=new Uint8Array(B.length+J);return Y=await this.peekBuffer(C,{mayBeLess:B.mayBeLess}),A.set(C.subarray(J),B.offset),Y-J}else if(J<0)throw Error("Cannot peek from a negative offset in a stream")}if(B.length>0){try{Y=await this.streamReader.peek(A,B.offset,B.length)}catch(J){if(Q&&Q.mayBeLess&&J instanceof KR.EndOfStreamError)return 0;throw J}if(!B.mayBeLess&&Y{Object.defineProperty(w7A,"__esModule",{value:!0});w7A.BufferTokenizer=void 0;var hBB=bH(),gBB=mx();class R7A extends gBB.AbstractTokenizer{constructor(A,Q){super(Q);this.uint8Array=A,this.fileInfo.size=this.fileInfo.size?this.fileInfo.size:A.length}async readBuffer(A,Q){if(Q&&Q.position){if(Q.position{Object.defineProperty(ux,"__esModule",{value:!0});ux.fromBuffer=ux.fromStream=ux.EndOfStreamError=void 0;var xBB=z7A(),fBB=O7A(),bBB=bH();Object.defineProperty(ux,"EndOfStreamError",{enumerable:!0,get:function(){return bBB.EndOfStreamError}});function mBB(A,Q){return Q=Q?Q:{},new xBB.ReadStreamTokenizer(A,Q)}ux.fromStream=mBB;function uBB(A,Q){return new fBB.BufferTokenizer(A,Q)}ux.fromBuffer=uBB});var S7A=R((cBB)=>{cBB.stringToBytes=(A)=>[...A].map((Q)=>Q.charCodeAt(0));cBB.tarHeaderChecksumMatches=(A,Q=0)=>{let B=parseInt(A.toString("utf8",148,154).replace(/\0.*$/,"").trim(),8);if(isNaN(B))return!1;let Y=256;for(let J=Q;J{return A[Q+3]&127|A[Q+2]<<7|A[Q+1]<<14|A[Q]<<21},len:4}});var _7A=R((T7Y,k7A)=>{k7A.exports={extensions:["jpg","png","apng","gif","webp","flif","xcf","cr2","cr3","orf","arw","dng","nef","rw2","raf","tif","bmp","icns","jxr","psd","indd","zip","tar","rar","gz","bz2","7z","dmg","mp4","mid","mkv","webm","mov","avi","mpg","mp2","mp3","m4a","oga","ogg","ogv","opus","flac","wav","spx","amr","pdf","epub","exe","swf","rtf","wasm","woff","woff2","eot","ttf","otf","ico","flv","ps","xz","sqlite","nes","crx","xpi","cab","deb","ar","rpm","Z","lz","cfb","mxf","mts","blend","bpg","docx","pptx","xlsx","3gp","3g2","jp2","jpm","jpx","mj2","aif","qcp","odt","ods","odp","xml","mobi","heic","cur","ktx","ape","wv","dcm","ics","glb","pcap","dsf","lnk","alias","voc","ac3","m4v","m4p","m4b","f4v","f4p","f4b","f4a","mie","asf","ogm","ogx","mpc","arrow","shp","aac","mp1","it","s3m","xm","ai","skp","avif","eps","lzh","pgp","asar","stl","chm","3mf","zst","jxl","vcf"],mimeTypes:["image/jpeg","image/png","image/gif","image/webp","image/flif","image/x-xcf","image/x-canon-cr2","image/x-canon-cr3","image/tiff","image/bmp","image/vnd.ms-photo","image/vnd.adobe.photoshop","application/x-indesign","application/epub+zip","application/x-xpinstall","application/vnd.oasis.opendocument.text","application/vnd.oasis.opendocument.spreadsheet","application/vnd.oasis.opendocument.presentation","application/vnd.openxmlformats-officedocument.wordprocessingml.document","application/vnd.openxmlformats-officedocument.presentationml.presentation","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet","application/zip","application/x-tar","application/x-rar-compressed","application/gzip","application/x-bzip2","application/x-7z-compressed","application/x-apple-diskimage","application/x-apache-arrow","video/mp4","audio/midi","video/x-matroska","video/webm","video/quicktime","video/vnd.avi","audio/vnd.wave","audio/qcelp","audio/x-ms-asf","video/x-ms-asf","application/vnd.ms-asf","video/mpeg","video/3gpp","audio/mpeg","audio/mp4","audio/opus","video/ogg","audio/ogg","application/ogg","audio/x-flac","audio/ape","audio/wavpack","audio/amr","application/pdf","application/x-msdownload","application/x-shockwave-flash","application/rtf","application/wasm","font/woff","font/woff2","application/vnd.ms-fontobject","font/ttf","font/otf","image/x-icon","video/x-flv","application/postscript","application/eps","application/x-xz","application/x-sqlite3","application/x-nintendo-nes-rom","application/x-google-chrome-extension","application/vnd.ms-cab-compressed","application/x-deb","application/x-unix-archive","application/x-rpm","application/x-compress","application/x-lzip","application/x-cfb","application/x-mie","application/mxf","video/mp2t","application/x-blender","image/bpg","image/jp2","image/jpx","image/jpm","image/mj2","audio/aiff","application/xml","application/x-mobipocket-ebook","image/heif","image/heif-sequence","image/heic","image/heic-sequence","image/icns","image/ktx","application/dicom","audio/x-musepack","text/calendar","text/vcard","model/gltf-binary","application/vnd.tcpdump.pcap","audio/x-dsf","application/x.ms.shortcut","application/x.apple.alias","audio/x-voc","audio/vnd.dolby.dd-raw","audio/x-m4a","image/apng","image/x-olympus-orf","image/x-sony-arw","image/x-adobe-dng","image/x-nikon-nef","image/x-panasonic-rw2","image/x-fujifilm-raf","video/x-m4v","video/3gpp2","application/x-esri-shape","audio/aac","audio/x-it","audio/x-s3m","audio/x-xm","video/MP1S","video/MP2P","application/vnd.sketchup.skp","image/avif","application/x-lzh-compressed","application/pgp-encrypted","application/x-asar","model/stl","application/vnd.ms-htmlhelp","model/3mf","image/jxl","application/zstd"]}});var g7A=R((h7A,cx)=>{var OX=J7A(),VR=T7A(),{stringToBytes:nBB,tarHeaderChecksumMatches:sBB,uint32SyncSafeToken:rBB}=S7A(),v7A=_7A(),S7Y=4100;async function aBB(A){let Q=await VR.fromStream(A);try{return await IR(Q)}finally{await Q.close()}}async function y7A(A){if(!(A instanceof Uint8Array||A instanceof ArrayBuffer||Buffer.isBuffer(A)))throw TypeError(`Expected the \`input\` argument to be of type \`Uint8Array\` or \`Buffer\` or \`ArrayBuffer\`, got \`${typeof A}\``);let Q=A instanceof Buffer?A:Buffer.from(A);if(!(Q&&Q.length>1))return;let B=VR.fromBuffer(Q);return IR(B)}function d1(A,Q,B){B={offset:0,...B};for(let[Y,J]of Q.entries())if(B.mask){if(J!==(B.mask[Y]&A[Y+B.offset]))return!1}else if(J!==A[Y+B.offset])return!1;return!0}async function IR(A){try{return oBB(A)}catch(Q){if(!(Q instanceof VR.EndOfStreamError))throw Q}}async function oBB(A){let Q=Buffer.alloc(4100),B=12,Y=(C,X)=>d1(Q,C,X),J=(C,X)=>Y(nBB(C),X);if(!A.fileInfo.size)A.fileInfo.size=Number.MAX_SAFE_INTEGER;if(await A.peekBuffer(Q,{length:B,mayBeLess:!0}),Y([66,77]))return{ext:"bmp",mime:"image/bmp"};if(Y([11,119]))return{ext:"ac3",mime:"audio/vnd.dolby.dd-raw"};if(Y([120,1]))return{ext:"dmg",mime:"application/x-apple-diskimage"};if(Y([77,90]))return{ext:"exe",mime:"application/x-msdownload"};if(Y([37,33])){if(await A.peekBuffer(Q,{length:24,mayBeLess:!0}),J("PS-Adobe-",{offset:2})&&J(" EPSF-",{offset:14}))return{ext:"eps",mime:"application/eps"};return{ext:"ps",mime:"application/postscript"}}if(Y([31,160])||Y([31,157]))return{ext:"Z",mime:"application/x-compress"};if(Y([255,216,255]))return{ext:"jpg",mime:"image/jpeg"};if(Y([73,73,188]))return{ext:"jxr",mime:"image/vnd.ms-photo"};if(Y([31,139,8]))return{ext:"gz",mime:"application/gzip"};if(Y([66,90,104]))return{ext:"bz2",mime:"application/x-bzip2"};if(J("ID3")){await A.ignore(6);let C=await A.readToken(rBB);if(A.position+C>A.fileInfo.size)return{ext:"mp3",mime:"audio/mpeg"};return await A.ignore(C),IR(A)}if(J("MP+"))return{ext:"mpc",mime:"audio/x-musepack"};if((Q[0]===67||Q[0]===70)&&Y([87,83],{offset:1}))return{ext:"swf",mime:"application/x-shockwave-flash"};if(Y([71,73,70]))return{ext:"gif",mime:"image/gif"};if(J("FLIF"))return{ext:"flif",mime:"image/flif"};if(J("8BPS"))return{ext:"psd",mime:"image/vnd.adobe.photoshop"};if(J("WEBP",{offset:8}))return{ext:"webp",mime:"image/webp"};if(J("MPCK"))return{ext:"mpc",mime:"audio/x-musepack"};if(J("FORM"))return{ext:"aif",mime:"audio/aiff"};if(J("icns",{offset:0}))return{ext:"icns",mime:"image/icns"};if(Y([80,75,3,4])){try{while(A.position+30=0?X:Q.length)}else await A.ignore(C.compressedSize)}}catch(C){if(!(C instanceof VR.EndOfStreamError))throw C}return{ext:"zip",mime:"application/zip"}}if(J("OggS")){await A.ignore(28);let C=Buffer.alloc(8);if(await A.readBuffer(C),d1(C,[79,112,117,115,72,101,97,100]))return{ext:"opus",mime:"audio/opus"};if(d1(C,[128,116,104,101,111,114,97]))return{ext:"ogv",mime:"video/ogg"};if(d1(C,[1,118,105,100,101,111,0]))return{ext:"ogm",mime:"video/ogg"};if(d1(C,[127,70,76,65,67]))return{ext:"oga",mime:"audio/ogg"};if(d1(C,[83,112,101,101,120,32,32]))return{ext:"spx",mime:"audio/ogg"};if(d1(C,[1,118,111,114,98,105,115]))return{ext:"ogg",mime:"audio/ogg"};return{ext:"ogx",mime:"application/ogg"}}if(Y([80,75])&&(Q[2]===3||Q[2]===5||Q[2]===7)&&(Q[3]===4||Q[3]===6||Q[3]===8))return{ext:"zip",mime:"application/zip"};if(J("ftyp",{offset:4})&&(Q[8]&96)!==0){let C=Q.toString("binary",8,12).replace("\x00"," ").trim();switch(C){case"avif":return{ext:"avif",mime:"image/avif"};case"mif1":return{ext:"heic",mime:"image/heif"};case"msf1":return{ext:"heic",mime:"image/heif-sequence"};case"heic":case"heix":return{ext:"heic",mime:"image/heic"};case"hevc":case"hevx":return{ext:"heic",mime:"image/heic-sequence"};case"qt":return{ext:"mov",mime:"video/quicktime"};case"M4V":case"M4VH":case"M4VP":return{ext:"m4v",mime:"video/x-m4v"};case"M4P":return{ext:"m4p",mime:"video/mp4"};case"M4B":return{ext:"m4b",mime:"audio/mp4"};case"M4A":return{ext:"m4a",mime:"audio/x-m4a"};case"F4V":return{ext:"f4v",mime:"video/mp4"};case"F4P":return{ext:"f4p",mime:"video/mp4"};case"F4A":return{ext:"f4a",mime:"audio/mp4"};case"F4B":return{ext:"f4b",mime:"audio/mp4"};case"crx":return{ext:"cr3",mime:"image/x-canon-cr3"};default:if(C.startsWith("3g")){if(C.startsWith("3g2"))return{ext:"3g2",mime:"video/3gpp2"};return{ext:"3gp",mime:"video/3gpp"}}return{ext:"mp4",mime:"video/mp4"}}}if(J("MThd"))return{ext:"mid",mime:"audio/midi"};if(J("wOFF")&&(Y([0,1,0,0],{offset:4})||J("OTTO",{offset:4})))return{ext:"woff",mime:"font/woff"};if(J("wOF2")&&(Y([0,1,0,0],{offset:4})||J("OTTO",{offset:4})))return{ext:"woff2",mime:"font/woff2"};if(Y([212,195,178,161])||Y([161,178,195,212]))return{ext:"pcap",mime:"application/vnd.tcpdump.pcap"};if(J("DSD "))return{ext:"dsf",mime:"audio/x-dsf"};if(J("LZIP"))return{ext:"lz",mime:"application/x-lzip"};if(J("fLaC"))return{ext:"flac",mime:"audio/x-flac"};if(Y([66,80,71,251]))return{ext:"bpg",mime:"image/bpg"};if(J("wvpk"))return{ext:"wv",mime:"audio/wavpack"};if(J("%PDF")){await A.ignore(1350);let C=10485760,X=Buffer.alloc(Math.min(C,A.fileInfo.size));if(await A.readBuffer(X,{mayBeLess:!0}),X.includes(Buffer.from("AIPrivateData")))return{ext:"ai",mime:"application/postscript"};return{ext:"pdf",mime:"application/pdf"}}if(Y([0,97,115,109]))return{ext:"wasm",mime:"application/wasm"};if(Y([73,73,42,0])){if(J("CR",{offset:8}))return{ext:"cr2",mime:"image/x-canon-cr2"};if(Y([28,0,254,0],{offset:8})||Y([31,0,11,0],{offset:8}))return{ext:"nef",mime:"image/x-nikon-nef"};if(Y([8,0,0,0],{offset:4})&&(Y([45,0,254,0],{offset:8})||Y([39,0,254,0],{offset:8})))return{ext:"dng",mime:"image/x-adobe-dng"};if(Q=Buffer.alloc(24),await A.peekBuffer(Q),(Y([16,251,134,1],{offset:4})||Y([8,0,0,0],{offset:4}))&&Y([0,254,0,4,0,1,0,0,0,1,0,0,0,3,1],{offset:9}))return{ext:"arw",mime:"image/x-sony-arw"};return{ext:"tif",mime:"image/tiff"}}if(Y([77,77,0,42]))return{ext:"tif",mime:"image/tiff"};if(J("MAC "))return{ext:"ape",mime:"audio/ape"};if(Y([26,69,223,163])){async function C(){let Z=await A.peekNumber(OX.UINT8),U=128,$=0;while((Z&U)===0&&U!==0)++$,U>>=1;let E=Buffer.alloc($+1);return await A.readBuffer(E),E}async function X(){let Z=await C(),U=await C();U[0]^=128>>U.length-1;let $=Math.min(6,U.length);return{id:Z.readUIntBE(0,Z.length),len:U.readUIntBE(U.length-$,$)}}async function G(Z,U){while(U>0){let $=await X();if($.id===17026)return A.readToken(new OX.StringType($.len,"utf-8"));await A.ignore($.len),--U}}let F=await X();switch(await G(1,F.len)){case"webm":return{ext:"webm",mime:"video/webm"};case"matroska":return{ext:"mkv",mime:"video/x-matroska"};default:return}}if(Y([82,73,70,70])){if(Y([65,86,73],{offset:8}))return{ext:"avi",mime:"video/vnd.avi"};if(Y([87,65,86,69],{offset:8}))return{ext:"wav",mime:"audio/vnd.wave"};if(Y([81,76,67,77],{offset:8}))return{ext:"qcp",mime:"audio/qcelp"}}if(J("SQLi"))return{ext:"sqlite",mime:"application/x-sqlite3"};if(Y([78,69,83,26]))return{ext:"nes",mime:"application/x-nintendo-nes-rom"};if(J("Cr24"))return{ext:"crx",mime:"application/x-google-chrome-extension"};if(J("MSCF")||J("ISc("))return{ext:"cab",mime:"application/vnd.ms-cab-compressed"};if(Y([237,171,238,219]))return{ext:"rpm",mime:"application/x-rpm"};if(Y([197,208,211,198]))return{ext:"eps",mime:"application/eps"};if(Y([40,181,47,253]))return{ext:"zst",mime:"application/zstd"};if(Y([79,84,84,79,0]))return{ext:"otf",mime:"font/otf"};if(J("#!AMR"))return{ext:"amr",mime:"audio/amr"};if(J("{\\rtf"))return{ext:"rtf",mime:"application/rtf"};if(Y([70,76,86,1]))return{ext:"flv",mime:"video/x-flv"};if(J("IMPM"))return{ext:"it",mime:"audio/x-it"};if(J("-lh0-",{offset:2})||J("-lh1-",{offset:2})||J("-lh2-",{offset:2})||J("-lh3-",{offset:2})||J("-lh4-",{offset:2})||J("-lh5-",{offset:2})||J("-lh6-",{offset:2})||J("-lh7-",{offset:2})||J("-lzs-",{offset:2})||J("-lz4-",{offset:2})||J("-lz5-",{offset:2})||J("-lhd-",{offset:2}))return{ext:"lzh",mime:"application/x-lzh-compressed"};if(Y([0,0,1,186])){if(Y([33],{offset:4,mask:[241]}))return{ext:"mpg",mime:"video/MP1S"};if(Y([68],{offset:4,mask:[196]}))return{ext:"mpg",mime:"video/MP2P"}}if(J("ITSF"))return{ext:"chm",mime:"application/vnd.ms-htmlhelp"};if(Y([253,55,122,88,90,0]))return{ext:"xz",mime:"application/x-xz"};if(J("")){if(await A.ignore(8),await A.readToken(new OX.StringType(13,"ascii"))==="debian-binary")return{ext:"deb",mime:"application/x-deb"};return{ext:"ar",mime:"application/x-unix-archive"}}if(Y([137,80,78,71,13,10,26,10])){await A.ignore(8);async function C(){return{length:await A.readToken(OX.INT32_BE),type:await A.readToken(new OX.StringType(4,"binary"))}}do{let X=await C();if(X.length<0)return;switch(X.type){case"IDAT":return{ext:"png",mime:"image/png"};case"acTL":return{ext:"apng",mime:"image/apng"};default:await A.ignore(X.length+4)}}while(A.position+8=16){let C=Q.readUInt32LE(12);if(C>12&&Q.length>=C+16)try{let X=Q.slice(16,C+16).toString();if(JSON.parse(X).files)return{ext:"asar",mime:"application/x-asar"}}catch(X){}}if(Y([6,14,43,52,2,5,1,1,13,1,2,1,1,2]))return{ext:"mxf",mime:"application/mxf"};if(J("SCRM",{offset:44}))return{ext:"s3m",mime:"audio/x-s3m"};if(Y([71],{offset:4})&&(Y([71],{offset:192})||Y([71],{offset:196})))return{ext:"mts",mime:"video/mp2t"};if(Y([66,79,79,75,77,79,66,73],{offset:60}))return{ext:"mobi",mime:"application/x-mobipocket-ebook"};if(Y([68,73,67,77],{offset:128}))return{ext:"dcm",mime:"application/dicom"};if(Y([76,0,0,0,1,20,2,0,0,0,0,0,192,0,0,0,0,0,0,70]))return{ext:"lnk",mime:"application/x.ms.shortcut"};if(Y([98,111,111,107,0,0,0,0,109,97,114,107,0,0,0,0]))return{ext:"alias",mime:"application/x.apple.alias"};if(Y([76,80],{offset:34})&&(Y([0,0,1],{offset:8})||Y([1,0,2],{offset:8})||Y([2,0,2],{offset:8})))return{ext:"eot",mime:"application/vnd.ms-fontobject"};if(Y([6,6,237,245,216,29,70,229,189,49,239,231,254,116,183,29]))return{ext:"indd",mime:"application/x-indesign"};if(await A.peekBuffer(Q,{length:Math.min(512,A.fileInfo.size),mayBeLess:!0}),sBB(Q))return{ext:"tar",mime:"application/x-tar"};if(Y([255,254,255,14,83,0,107,0,101,0,116,0,99,0,104,0,85,0,112,0,32,0,77,0,111,0,100,0,101,0,108,0]))return{ext:"skp",mime:"application/vnd.sketchup.skp"};if(J("-----BEGIN PGP MESSAGE-----"))return{ext:"pgp",mime:"application/pgp-encrypted"};if(Q.length>=2&&Y([255,224],{offset:0,mask:[255,224]})){if(Y([16],{offset:1,mask:[22]})){if(Y([8],{offset:1,mask:[8]}))return{ext:"aac",mime:"audio/aac"};return{ext:"aac",mime:"audio/aac"}}if(Y([2],{offset:1,mask:[6]}))return{ext:"mp3",mime:"audio/mpeg"};if(Y([4],{offset:1,mask:[6]}))return{ext:"mp2",mime:"audio/mpeg"};if(Y([6],{offset:1,mask:[6]}))return{ext:"mp1",mime:"audio/mpeg"}}}var tBB=(readableStream)=>new Promise((resolve,reject)=>{let stream=eval("require")("stream");readableStream.on("error",reject),readableStream.once("readable",async()=>{let A=new stream.PassThrough,Q;if(stream.pipeline)Q=stream.pipeline(readableStream,A,()=>{});else Q=readableStream.pipe(A);let B=readableStream.read(4100)||readableStream.read()||Buffer.alloc(0);try{let Y=await y7A(B);A.fileType=Y}catch(Y){reject(Y)}resolve(Q)})}),dx={fromStream:aBB,fromTokenizer:IR,fromBuffer:y7A,stream:tBB};Object.defineProperty(dx,"extensions",{get(){return new Set(v7A.extensions)}});Object.defineProperty(dx,"mimeTypes",{get(){return new Set(v7A.mimeTypes)}});cx.exports=dx});var f7A=R((HR,x7A)=>{(function(A,Q){typeof HR==="object"&&typeof x7A<"u"?Q(HR):typeof define==="function"&&define.amd?define(["exports"],Q):Q(A.awaitToJs={})})(HR,function(A){function Q(B,Y){return B.then(function(J){return[null,J]}).catch(function(J){if(Y)Object.assign(J,Y);return[J,void 0]})}A.to=Q,A.default=Q,Object.defineProperty(A,"__esModule",{value:!0})})});var l7A=R((y7Y,c7A)=>{function DR(){this._types=Object.create(null),this._extensions=Object.create(null);for(let A=0;A{p7A.exports={"application/andrew-inset":["ez"],"application/applixware":["aw"],"application/atom+xml":["atom"],"application/atomcat+xml":["atomcat"],"application/atomdeleted+xml":["atomdeleted"],"application/atomsvc+xml":["atomsvc"],"application/atsc-dwd+xml":["dwd"],"application/atsc-held+xml":["held"],"application/atsc-rsat+xml":["rsat"],"application/bdoc":["bdoc"],"application/calendar+xml":["xcs"],"application/ccxml+xml":["ccxml"],"application/cdfx+xml":["cdfx"],"application/cdmi-capability":["cdmia"],"application/cdmi-container":["cdmic"],"application/cdmi-domain":["cdmid"],"application/cdmi-object":["cdmio"],"application/cdmi-queue":["cdmiq"],"application/cu-seeme":["cu"],"application/dash+xml":["mpd"],"application/davmount+xml":["davmount"],"application/docbook+xml":["dbk"],"application/dssc+der":["dssc"],"application/dssc+xml":["xdssc"],"application/ecmascript":["es","ecma"],"application/emma+xml":["emma"],"application/emotionml+xml":["emotionml"],"application/epub+zip":["epub"],"application/exi":["exi"],"application/express":["exp"],"application/fdt+xml":["fdt"],"application/font-tdpfr":["pfr"],"application/geo+json":["geojson"],"application/gml+xml":["gml"],"application/gpx+xml":["gpx"],"application/gxf":["gxf"],"application/gzip":["gz"],"application/hjson":["hjson"],"application/hyperstudio":["stk"],"application/inkml+xml":["ink","inkml"],"application/ipfix":["ipfix"],"application/its+xml":["its"],"application/java-archive":["jar","war","ear"],"application/java-serialized-object":["ser"],"application/java-vm":["class"],"application/javascript":["js","mjs"],"application/json":["json","map"],"application/json5":["json5"],"application/jsonml+json":["jsonml"],"application/ld+json":["jsonld"],"application/lgr+xml":["lgr"],"application/lost+xml":["lostxml"],"application/mac-binhex40":["hqx"],"application/mac-compactpro":["cpt"],"application/mads+xml":["mads"],"application/manifest+json":["webmanifest"],"application/marc":["mrc"],"application/marcxml+xml":["mrcx"],"application/mathematica":["ma","nb","mb"],"application/mathml+xml":["mathml"],"application/mbox":["mbox"],"application/mediaservercontrol+xml":["mscml"],"application/metalink+xml":["metalink"],"application/metalink4+xml":["meta4"],"application/mets+xml":["mets"],"application/mmt-aei+xml":["maei"],"application/mmt-usd+xml":["musd"],"application/mods+xml":["mods"],"application/mp21":["m21","mp21"],"application/mp4":["mp4s","m4p"],"application/msword":["doc","dot"],"application/mxf":["mxf"],"application/n-quads":["nq"],"application/n-triples":["nt"],"application/node":["cjs"],"application/octet-stream":["bin","dms","lrf","mar","so","dist","distz","pkg","bpk","dump","elc","deploy","exe","dll","deb","dmg","iso","img","msi","msp","msm","buffer"],"application/oda":["oda"],"application/oebps-package+xml":["opf"],"application/ogg":["ogx"],"application/omdoc+xml":["omdoc"],"application/onenote":["onetoc","onetoc2","onetmp","onepkg"],"application/oxps":["oxps"],"application/p2p-overlay+xml":["relo"],"application/patch-ops-error+xml":["xer"],"application/pdf":["pdf"],"application/pgp-encrypted":["pgp"],"application/pgp-signature":["asc","sig"],"application/pics-rules":["prf"],"application/pkcs10":["p10"],"application/pkcs7-mime":["p7m","p7c"],"application/pkcs7-signature":["p7s"],"application/pkcs8":["p8"],"application/pkix-attr-cert":["ac"],"application/pkix-cert":["cer"],"application/pkix-crl":["crl"],"application/pkix-pkipath":["pkipath"],"application/pkixcmp":["pki"],"application/pls+xml":["pls"],"application/postscript":["ai","eps","ps"],"application/provenance+xml":["provx"],"application/pskc+xml":["pskcxml"],"application/raml+yaml":["raml"],"application/rdf+xml":["rdf","owl"],"application/reginfo+xml":["rif"],"application/relax-ng-compact-syntax":["rnc"],"application/resource-lists+xml":["rl"],"application/resource-lists-diff+xml":["rld"],"application/rls-services+xml":["rs"],"application/route-apd+xml":["rapd"],"application/route-s-tsid+xml":["sls"],"application/route-usd+xml":["rusd"],"application/rpki-ghostbusters":["gbr"],"application/rpki-manifest":["mft"],"application/rpki-roa":["roa"],"application/rsd+xml":["rsd"],"application/rss+xml":["rss"],"application/rtf":["rtf"],"application/sbml+xml":["sbml"],"application/scvp-cv-request":["scq"],"application/scvp-cv-response":["scs"],"application/scvp-vp-request":["spq"],"application/scvp-vp-response":["spp"],"application/sdp":["sdp"],"application/senml+xml":["senmlx"],"application/sensml+xml":["sensmlx"],"application/set-payment-initiation":["setpay"],"application/set-registration-initiation":["setreg"],"application/shf+xml":["shf"],"application/sieve":["siv","sieve"],"application/smil+xml":["smi","smil"],"application/sparql-query":["rq"],"application/sparql-results+xml":["srx"],"application/srgs":["gram"],"application/srgs+xml":["grxml"],"application/sru+xml":["sru"],"application/ssdl+xml":["ssdl"],"application/ssml+xml":["ssml"],"application/swid+xml":["swidtag"],"application/tei+xml":["tei","teicorpus"],"application/thraud+xml":["tfi"],"application/timestamped-data":["tsd"],"application/toml":["toml"],"application/trig":["trig"],"application/ttml+xml":["ttml"],"application/ubjson":["ubj"],"application/urc-ressheet+xml":["rsheet"],"application/urc-targetdesc+xml":["td"],"application/voicexml+xml":["vxml"],"application/wasm":["wasm"],"application/widget":["wgt"],"application/winhlp":["hlp"],"application/wsdl+xml":["wsdl"],"application/wspolicy+xml":["wspolicy"],"application/xaml+xml":["xaml"],"application/xcap-att+xml":["xav"],"application/xcap-caps+xml":["xca"],"application/xcap-diff+xml":["xdf"],"application/xcap-el+xml":["xel"],"application/xcap-ns+xml":["xns"],"application/xenc+xml":["xenc"],"application/xhtml+xml":["xhtml","xht"],"application/xliff+xml":["xlf"],"application/xml":["xml","xsl","xsd","rng"],"application/xml-dtd":["dtd"],"application/xop+xml":["xop"],"application/xproc+xml":["xpl"],"application/xslt+xml":["*xsl","xslt"],"application/xspf+xml":["xspf"],"application/xv+xml":["mxml","xhvml","xvml","xvm"],"application/yang":["yang"],"application/yin+xml":["yin"],"application/zip":["zip"],"audio/3gpp":["*3gpp"],"audio/adpcm":["adp"],"audio/amr":["amr"],"audio/basic":["au","snd"],"audio/midi":["mid","midi","kar","rmi"],"audio/mobile-xmf":["mxmf"],"audio/mp3":["*mp3"],"audio/mp4":["m4a","mp4a"],"audio/mpeg":["mpga","mp2","mp2a","mp3","m2a","m3a"],"audio/ogg":["oga","ogg","spx","opus"],"audio/s3m":["s3m"],"audio/silk":["sil"],"audio/wav":["wav"],"audio/wave":["*wav"],"audio/webm":["weba"],"audio/xm":["xm"],"font/collection":["ttc"],"font/otf":["otf"],"font/ttf":["ttf"],"font/woff":["woff"],"font/woff2":["woff2"],"image/aces":["exr"],"image/apng":["apng"],"image/avif":["avif"],"image/bmp":["bmp"],"image/cgm":["cgm"],"image/dicom-rle":["drle"],"image/emf":["emf"],"image/fits":["fits"],"image/g3fax":["g3"],"image/gif":["gif"],"image/heic":["heic"],"image/heic-sequence":["heics"],"image/heif":["heif"],"image/heif-sequence":["heifs"],"image/hej2k":["hej2"],"image/hsj2":["hsj2"],"image/ief":["ief"],"image/jls":["jls"],"image/jp2":["jp2","jpg2"],"image/jpeg":["jpeg","jpg","jpe"],"image/jph":["jph"],"image/jphc":["jhc"],"image/jpm":["jpm"],"image/jpx":["jpx","jpf"],"image/jxr":["jxr"],"image/jxra":["jxra"],"image/jxrs":["jxrs"],"image/jxs":["jxs"],"image/jxsc":["jxsc"],"image/jxsi":["jxsi"],"image/jxss":["jxss"],"image/ktx":["ktx"],"image/ktx2":["ktx2"],"image/png":["png"],"image/sgi":["sgi"],"image/svg+xml":["svg","svgz"],"image/t38":["t38"],"image/tiff":["tif","tiff"],"image/tiff-fx":["tfx"],"image/webp":["webp"],"image/wmf":["wmf"],"message/disposition-notification":["disposition-notification"],"message/global":["u8msg"],"message/global-delivery-status":["u8dsn"],"message/global-disposition-notification":["u8mdn"],"message/global-headers":["u8hdr"],"message/rfc822":["eml","mime"],"model/3mf":["3mf"],"model/gltf+json":["gltf"],"model/gltf-binary":["glb"],"model/iges":["igs","iges"],"model/mesh":["msh","mesh","silo"],"model/mtl":["mtl"],"model/obj":["obj"],"model/step+xml":["stpx"],"model/step+zip":["stpz"],"model/step-xml+zip":["stpxz"],"model/stl":["stl"],"model/vrml":["wrl","vrml"],"model/x3d+binary":["*x3db","x3dbz"],"model/x3d+fastinfoset":["x3db"],"model/x3d+vrml":["*x3dv","x3dvz"],"model/x3d+xml":["x3d","x3dz"],"model/x3d-vrml":["x3dv"],"text/cache-manifest":["appcache","manifest"],"text/calendar":["ics","ifb"],"text/coffeescript":["coffee","litcoffee"],"text/css":["css"],"text/csv":["csv"],"text/html":["html","htm","shtml"],"text/jade":["jade"],"text/jsx":["jsx"],"text/less":["less"],"text/markdown":["markdown","md"],"text/mathml":["mml"],"text/mdx":["mdx"],"text/n3":["n3"],"text/plain":["txt","text","conf","def","list","log","in","ini"],"text/richtext":["rtx"],"text/rtf":["*rtf"],"text/sgml":["sgml","sgm"],"text/shex":["shex"],"text/slim":["slim","slm"],"text/spdx":["spdx"],"text/stylus":["stylus","styl"],"text/tab-separated-values":["tsv"],"text/troff":["t","tr","roff","man","me","ms"],"text/turtle":["ttl"],"text/uri-list":["uri","uris","urls"],"text/vcard":["vcard"],"text/vtt":["vtt"],"text/xml":["*xml"],"text/yaml":["yaml","yml"],"video/3gpp":["3gp","3gpp"],"video/3gpp2":["3g2"],"video/h261":["h261"],"video/h263":["h263"],"video/h264":["h264"],"video/iso.segment":["m4s"],"video/jpeg":["jpgv"],"video/jpm":["*jpm","jpgm"],"video/mj2":["mj2","mjp2"],"video/mp2t":["ts"],"video/mp4":["mp4","mp4v","mpg4"],"video/mpeg":["mpeg","mpg","mpe","m1v","m2v"],"video/ogg":["ogv"],"video/quicktime":["qt","mov"],"video/webm":["webm"]}});var s7A=R((g7Y,n7A)=>{var eBB=l7A();n7A.exports=new eBB(i7A())});var GFA=R((d7Y,XFA)=>{XFA.exports={parseSections:function(A,Q){var B,Y;A.setBigEndian(!0);while(A.remainingLength()>0&&Y!==218){if(A.nextUInt8()!==255)throw Error("Invalid JPEG section offset");if(Y=A.nextUInt8(),Y>=208&&Y<=217||Y===218)B=0;else B=A.nextUInt16()-2;Q(Y,A.branch(0,B)),A.skip(B)}},getSizeFromSOFSection:function(A){return A.skip(1),{height:A.nextUInt16(),width:A.nextUInt16()}},getSectionName:function(A){var Q,B;switch(A){case 216:Q="SOI";break;case 196:Q="DHT";break;case 219:Q="DQT";break;case 221:Q="DRI";break;case 218:Q="SOS";break;case 254:Q="COM";break;case 217:Q="EOI";break;default:if(A>=224&&A<=239)Q="APP",B=A-224;else if(A>=192&&A<=207&&A!==196&&A!==200&&A!==204)Q="SOF",B=A-192;else if(A>=208&&A<=215)Q="RST",B=A-208;break}var Y={name:Q};if(typeof B==="number")Y.index=B;return Y}}});var px=R((c7Y,FFA)=>{function Q0B(A,Q){switch(A){case 1:return Q.nextUInt8();case 3:return Q.nextUInt16();case 4:return Q.nextUInt32();case 5:return[Q.nextUInt32(),Q.nextUInt32()];case 6:return Q.nextInt8();case 8:return Q.nextUInt16();case 9:return Q.nextUInt32();case 10:return[Q.nextInt32(),Q.nextInt32()];case 11:return Q.nextFloat();case 12:return Q.nextDouble();default:throw Error("Invalid format while decoding: "+A)}}function B0B(A){switch(A){case 1:case 2:case 6:case 7:return 1;case 3:case 8:return 2;case 4:case 9:case 11:return 4;case 5:case 10:case 12:return 8;default:return 0}}function Y0B(A,Q){var B=Q.nextUInt16(),Y=Q.nextUInt16(),J=B0B(Y),C=Q.nextUInt32(),X=J*C,G,F,W;if(X>4)Q=A.openWithOffset(Q.nextUInt32());if(Y===2){G=Q.nextString(C);var Z=G.indexOf("\x00");if(Z!==-1)G=G.substr(0,Z)}else if(Y===7)G=Q.nextBuffer(C);else if(Y!==0){G=[];for(W=0;W{function ix(A){return parseInt(A,10)}var C0B=3600,X0B=60;function WFA(A,Q){A=A.map(ix),Q=Q.map(ix);var B=A[0],Y=A[1]-1,J=A[2],C=Q[0],X=Q[1],G=Q[2],F=Date.UTC(B,Y,J,C,X,G,0),W=F/1000;return W}function ZFA(A){var Q=A.substr(0,10).split("-"),B=A.substr(11,8).split(":"),Y=A.substr(19,6),J=Y.split(":").map(ix),C=J[0]*C0B+J[1]*X0B,X=WFA(Q,B);if(X-=C,typeof X==="number"&&!isNaN(X))return X}function $FA(A){var Q=A.split(" "),B=Q[0].split(":"),Y=Q[1].split(":"),J=WFA(B,Y);if(typeof J==="number"&&!isNaN(J))return J}function G0B(A){var Q=A.length===19&&A.charAt(4)===":",B=A.length===25&&A.charAt(10)==="T",Y;if(B)return ZFA(A);else if(Q)return $FA(A)}UFA.exports={parseDateWithSpecFormat:$FA,parseDateWithTimezoneFormat:ZFA,parseExifDate:G0B}});var VFA=R((p7Y,KFA)=>{var fU=px(),F0B=EFA(),W0B=[{section:fU.GPSIFD,type:2,name:"GPSLatitude",refType:1,refName:"GPSLatitudeRef",posVal:"N"},{section:fU.GPSIFD,type:4,name:"GPSLongitude",refType:3,refName:"GPSLongitudeRef",posVal:"E"}],Z0B=[{section:fU.SubIFD,type:306,name:"ModifyDate"},{section:fU.SubIFD,type:36867,name:"DateTimeOriginal"},{section:fU.SubIFD,type:36868,name:"CreateDate"},{section:fU.SubIFD,type:306,name:"ModifyDate"}];KFA.exports={castDegreeValues:function(A,Q){W0B.forEach(function(B){var Y=A(B);if(Y){var J=A({section:B.section,type:B.refType,name:B.refName}),C=J===B.posVal?1:-1,X=(Y[0]+Y[1]/60+Y[2]/3600)*C;Q(B,X)}})},castDateValues:function(A,Q){Z0B.forEach(function(B){var Y=A(B);if(Y){var J=F0B.parseExifDate(Y);if(typeof J<"u")Q(B,J)}})},simplifyValue:function(A,Q){if(Array.isArray(A)){if(A=A.map(function(B){if(Q===10||Q===5)return B[0]/B[1];return B}),A.length===1)A=A[0]}return A}}});var HFA=R((i7Y,IFA)=>{IFA.exports={exif:{1:"InteropIndex",2:"InteropVersion",11:"ProcessingSoftware",254:"SubfileType",255:"OldSubfileType",256:"ImageWidth",257:"ImageHeight",258:"BitsPerSample",259:"Compression",262:"PhotometricInterpretation",263:"Thresholding",264:"CellWidth",265:"CellLength",266:"FillOrder",269:"DocumentName",270:"ImageDescription",271:"Make",272:"Model",273:"StripOffsets",274:"Orientation",277:"SamplesPerPixel",278:"RowsPerStrip",279:"StripByteCounts",280:"MinSampleValue",281:"MaxSampleValue",282:"XResolution",283:"YResolution",284:"PlanarConfiguration",285:"PageName",286:"XPosition",287:"YPosition",288:"FreeOffsets",289:"FreeByteCounts",290:"GrayResponseUnit",291:"GrayResponseCurve",292:"T4Options",293:"T6Options",296:"ResolutionUnit",297:"PageNumber",300:"ColorResponseUnit",301:"TransferFunction",305:"Software",306:"ModifyDate",315:"Artist",316:"HostComputer",317:"Predictor",318:"WhitePoint",319:"PrimaryChromaticities",320:"ColorMap",321:"HalftoneHints",322:"TileWidth",323:"TileLength",324:"TileOffsets",325:"TileByteCounts",326:"BadFaxLines",327:"CleanFaxData",328:"ConsecutiveBadFaxLines",330:"SubIFD",332:"InkSet",333:"InkNames",334:"NumberofInks",336:"DotRange",337:"TargetPrinter",338:"ExtraSamples",339:"SampleFormat",340:"SMinSampleValue",341:"SMaxSampleValue",342:"TransferRange",343:"ClipPath",344:"XClipPathUnits",345:"YClipPathUnits",346:"Indexed",347:"JPEGTables",351:"OPIProxy",400:"GlobalParametersIFD",401:"ProfileType",402:"FaxProfile",403:"CodingMethods",404:"VersionYear",405:"ModeNumber",433:"Decode",434:"DefaultImageColor",435:"T82Options",437:"JPEGTables",512:"JPEGProc",513:"ThumbnailOffset",514:"ThumbnailLength",515:"JPEGRestartInterval",517:"JPEGLosslessPredictors",518:"JPEGPointTransforms",519:"JPEGQTables",520:"JPEGDCTables",521:"JPEGACTables",529:"YCbCrCoefficients",530:"YCbCrSubSampling",531:"YCbCrPositioning",532:"ReferenceBlackWhite",559:"StripRowCounts",700:"ApplicationNotes",999:"USPTOMiscellaneous",4096:"RelatedImageFileFormat",4097:"RelatedImageWidth",4098:"RelatedImageHeight",18246:"Rating",18247:"XP_DIP_XML",18248:"StitchInfo",18249:"RatingPercent",32781:"ImageID",32931:"WangTag1",32932:"WangAnnotation",32933:"WangTag3",32934:"WangTag4",32995:"Matteing",32996:"DataType",32997:"ImageDepth",32998:"TileDepth",33405:"Model2",33421:"CFARepeatPatternDim",33422:"CFAPattern2",33423:"BatteryLevel",33424:"KodakIFD",33432:"Copyright",33434:"ExposureTime",33437:"FNumber",33445:"MDFileTag",33446:"MDScalePixel",33447:"MDColorTable",33448:"MDLabName",33449:"MDSampleInfo",33450:"MDPrepDate",33451:"MDPrepTime",33452:"MDFileUnits",33550:"PixelScale",33589:"AdventScale",33590:"AdventRevision",33628:"UIC1Tag",33629:"UIC2Tag",33630:"UIC3Tag",33631:"UIC4Tag",33723:"IPTC-NAA",33918:"IntergraphPacketData",33919:"IntergraphFlagRegisters",33920:"IntergraphMatrix",33921:"INGRReserved",33922:"ModelTiePoint",34016:"Site",34017:"ColorSequence",34018:"IT8Header",34019:"RasterPadding",34020:"BitsPerRunLength",34021:"BitsPerExtendedRunLength",34022:"ColorTable",34023:"ImageColorIndicator",34024:"BackgroundColorIndicator",34025:"ImageColorValue",34026:"BackgroundColorValue",34027:"PixelIntensityRange",34028:"TransparencyIndicator",34029:"ColorCharacterization",34030:"HCUsage",34031:"TrapIndicator",34032:"CMYKEquivalent",34118:"SEMInfo",34152:"AFCP_IPTC",34232:"PixelMagicJBIGOptions",34264:"ModelTransform",34306:"WB_GRGBLevels",34310:"LeafData",34377:"PhotoshopSettings",34665:"ExifOffset",34675:"ICC_Profile",34687:"TIFF_FXExtensions",34688:"MultiProfiles",34689:"SharedData",34690:"T88Options",34732:"ImageLayer",34735:"GeoTiffDirectory",34736:"GeoTiffDoubleParams",34737:"GeoTiffAsciiParams",34850:"ExposureProgram",34852:"SpectralSensitivity",34853:"GPSInfo",34855:"ISO",34856:"Opto-ElectricConvFactor",34857:"Interlace",34858:"TimeZoneOffset",34859:"SelfTimerMode",34864:"SensitivityType",34865:"StandardOutputSensitivity",34866:"RecommendedExposureIndex",34867:"ISOSpeed",34868:"ISOSpeedLatitudeyyy",34869:"ISOSpeedLatitudezzz",34908:"FaxRecvParams",34909:"FaxSubAddress",34910:"FaxRecvTime",34954:"LeafSubIFD",36864:"ExifVersion",36867:"DateTimeOriginal",36868:"CreateDate",37121:"ComponentsConfiguration",37122:"CompressedBitsPerPixel",37377:"ShutterSpeedValue",37378:"ApertureValue",37379:"BrightnessValue",37380:"ExposureCompensation",37381:"MaxApertureValue",37382:"SubjectDistance",37383:"MeteringMode",37384:"LightSource",37385:"Flash",37386:"FocalLength",37387:"FlashEnergy",37388:"SpatialFrequencyResponse",37389:"Noise",37390:"FocalPlaneXResolution",37391:"FocalPlaneYResolution",37392:"FocalPlaneResolutionUnit",37393:"ImageNumber",37394:"SecurityClassification",37395:"ImageHistory",37396:"SubjectArea",37397:"ExposureIndex",37398:"TIFF-EPStandardID",37399:"SensingMethod",37434:"CIP3DataFile",37435:"CIP3Sheet",37436:"CIP3Side",37439:"StoNits",37500:"MakerNote",37510:"UserComment",37520:"SubSecTime",37521:"SubSecTimeOriginal",37522:"SubSecTimeDigitized",37679:"MSDocumentText",37680:"MSPropertySetStorage",37681:"MSDocumentTextPosition",37724:"ImageSourceData",40091:"XPTitle",40092:"XPComment",40093:"XPAuthor",40094:"XPKeywords",40095:"XPSubject",40960:"FlashpixVersion",40961:"ColorSpace",40962:"ExifImageWidth",40963:"ExifImageHeight",40964:"RelatedSoundFile",40965:"InteropOffset",41483:"FlashEnergy",41484:"SpatialFrequencyResponse",41485:"Noise",41486:"FocalPlaneXResolution",41487:"FocalPlaneYResolution",41488:"FocalPlaneResolutionUnit",41489:"ImageNumber",41490:"SecurityClassification",41491:"ImageHistory",41492:"SubjectLocation",41493:"ExposureIndex",41494:"TIFF-EPStandardID",41495:"SensingMethod",41728:"FileSource",41729:"SceneType",41730:"CFAPattern",41985:"CustomRendered",41986:"ExposureMode",41987:"WhiteBalance",41988:"DigitalZoomRatio",41989:"FocalLengthIn35mmFormat",41990:"SceneCaptureType",41991:"GainControl",41992:"Contrast",41993:"Saturation",41994:"Sharpness",41995:"DeviceSettingDescription",41996:"SubjectDistanceRange",42016:"ImageUniqueID",42032:"OwnerName",42033:"SerialNumber",42034:"LensInfo",42035:"LensMake",42036:"LensModel",42037:"LensSerialNumber",42112:"GDALMetadata",42113:"GDALNoData",42240:"Gamma",44992:"ExpandSoftware",44993:"ExpandLens",44994:"ExpandFilm",44995:"ExpandFilterLens",44996:"ExpandScanner",44997:"ExpandFlashLamp",48129:"PixelFormat",48130:"Transformation",48131:"Uncompressed",48132:"ImageType",48256:"ImageWidth",48257:"ImageHeight",48258:"WidthResolution",48259:"HeightResolution",48320:"ImageOffset",48321:"ImageByteCount",48322:"AlphaOffset",48323:"AlphaByteCount",48324:"ImageDataDiscard",48325:"AlphaDataDiscard",50215:"OceScanjobDesc",50216:"OceApplicationSelector",50217:"OceIDNumber",50218:"OceImageLogic",50255:"Annotations",50341:"PrintIM",50560:"USPTOOriginalContentType",50706:"DNGVersion",50707:"DNGBackwardVersion",50708:"UniqueCameraModel",50709:"LocalizedCameraModel",50710:"CFAPlaneColor",50711:"CFALayout",50712:"LinearizationTable",50713:"BlackLevelRepeatDim",50714:"BlackLevel",50715:"BlackLevelDeltaH",50716:"BlackLevelDeltaV",50717:"WhiteLevel",50718:"DefaultScale",50719:"DefaultCropOrigin",50720:"DefaultCropSize",50721:"ColorMatrix1",50722:"ColorMatrix2",50723:"CameraCalibration1",50724:"CameraCalibration2",50725:"ReductionMatrix1",50726:"ReductionMatrix2",50727:"AnalogBalance",50728:"AsShotNeutral",50729:"AsShotWhiteXY",50730:"BaselineExposure",50731:"BaselineNoise",50732:"BaselineSharpness",50733:"BayerGreenSplit",50734:"LinearResponseLimit",50735:"CameraSerialNumber",50736:"DNGLensInfo",50737:"ChromaBlurRadius",50738:"AntiAliasStrength",50739:"ShadowScale",50740:"DNGPrivateData",50741:"MakerNoteSafety",50752:"RawImageSegmentation",50778:"CalibrationIlluminant1",50779:"CalibrationIlluminant2",50780:"BestQualityScale",50781:"RawDataUniqueID",50784:"AliasLayerMetadata",50827:"OriginalRawFileName",50828:"OriginalRawFileData",50829:"ActiveArea",50830:"MaskedAreas",50831:"AsShotICCProfile",50832:"AsShotPreProfileMatrix",50833:"CurrentICCProfile",50834:"CurrentPreProfileMatrix",50879:"ColorimetricReference",50898:"PanasonicTitle",50899:"PanasonicTitle2",50931:"CameraCalibrationSig",50932:"ProfileCalibrationSig",50933:"ProfileIFD",50934:"AsShotProfileName",50935:"NoiseReductionApplied",50936:"ProfileName",50937:"ProfileHueSatMapDims",50938:"ProfileHueSatMapData1",50939:"ProfileHueSatMapData2",50940:"ProfileToneCurve",50941:"ProfileEmbedPolicy",50942:"ProfileCopyright",50964:"ForwardMatrix1",50965:"ForwardMatrix2",50966:"PreviewApplicationName",50967:"PreviewApplicationVersion",50968:"PreviewSettingsName",50969:"PreviewSettingsDigest",50970:"PreviewColorSpace",50971:"PreviewDateTime",50972:"RawImageDigest",50973:"OriginalRawFileDigest",50974:"SubTileBlockSize",50975:"RowInterleaveFactor",50981:"ProfileLookTableDims",50982:"ProfileLookTableData",51008:"OpcodeList1",51009:"OpcodeList2",51022:"OpcodeList3",51041:"NoiseProfile",51043:"TimeCodes",51044:"FrameRate",51058:"TStop",51081:"ReelName",51089:"OriginalDefaultFinalSize",51090:"OriginalBestQualitySize",51091:"OriginalDefaultCropSize",51105:"CameraLabel",51107:"ProfileHueSatMapEncoding",51108:"ProfileLookTableEncoding",51109:"BaselineExposureOffset",51110:"DefaultBlackRender",51111:"NewRawImageDigest",51112:"RawToPreviewGain",51125:"DefaultUserCrop",59932:"Padding",59933:"OffsetSchema",65000:"OwnerName",65001:"SerialNumber",65002:"Lens",65024:"KDC_IFD",65100:"RawFile",65101:"Converter",65102:"WhiteBalance",65105:"Exposure",65106:"Shadows",65107:"Brightness",65108:"Contrast",65109:"Saturation",65110:"Sharpness",65111:"Smoothness",65112:"MoireFilter"},gps:{0:"GPSVersionID",1:"GPSLatitudeRef",2:"GPSLatitude",3:"GPSLongitudeRef",4:"GPSLongitude",5:"GPSAltitudeRef",6:"GPSAltitude",7:"GPSTimeStamp",8:"GPSSatellites",9:"GPSStatus",10:"GPSMeasureMode",11:"GPSDOP",12:"GPSSpeedRef",13:"GPSSpeed",14:"GPSTrackRef",15:"GPSTrack",16:"GPSImgDirectionRef",17:"GPSImgDirection",18:"GPSMapDatum",19:"GPSDestLatitudeRef",20:"GPSDestLatitude",21:"GPSDestLongitudeRef",22:"GPSDestLongitude",23:"GPSDestBearingRef",24:"GPSDestBearing",25:"GPSDestDistanceRef",26:"GPSDestDistance",27:"GPSProcessingMethod",28:"GPSAreaInformation",29:"GPSDateStamp",30:"GPSDifferential",31:"GPSHPositioningError"}}});var MFA=R((n7Y,qFA)=>{var bU=GFA(),DFA=px(),nx=VFA();function NFA(A,Q,B,Y,J,C,X){this.startMarker=A,this.tags=Q,this.imageSize=B,this.thumbnailOffset=Y,this.thumbnailLength=J,this.thumbnailType=C,this.app1Offset=X}NFA.prototype={hasThumbnail:function(A){if(!this.thumbnailOffset||!this.thumbnailLength)return!1;if(typeof A!=="string")return!0;if(A.toLowerCase().trim()==="image/jpeg")return this.thumbnailType===6;if(A.toLowerCase().trim()==="image/tiff")return this.thumbnailType===1;return!1},getThumbnailOffset:function(){return this.app1Offset+6+this.thumbnailOffset},getThumbnailLength:function(){return this.thumbnailLength},getThumbnailBuffer:function(){return this._getThumbnailStream().nextBuffer(this.thumbnailLength)},_getThumbnailStream:function(){return this.startMarker.openWithOffset(this.getThumbnailOffset())},getImageSize:function(){return this.imageSize},getThumbnailSize:function(){var A=this._getThumbnailStream(),Q;return bU.parseSections(A,function(B,Y){if(bU.getSectionName(B).name==="SOF")Q=bU.getSizeFromSOFSection(Y)}),Q}};function LFA(A){this.stream=A,this.flags={readBinaryTags:!1,resolveTagNames:!0,simplifyValues:!0,imageSize:!0,hidePointers:!0,returnTags:!0}}LFA.prototype={enableBinaryFields:function(A){return this.flags.readBinaryTags=!!A,this},enablePointers:function(A){return this.flags.hidePointers=!A,this},enableTagNames:function(A){return this.flags.resolveTagNames=!!A,this},enableImageSize:function(A){return this.flags.imageSize=!!A,this},enableReturnTags:function(A){return this.flags.returnTags=!!A,this},enableSimpleValues:function(A){return this.flags.simplifyValues=!!A,this},parse:function(){var A=this.stream.mark(),Q=A.openWithOffset(0),B=this.flags,Y,J,C,X,G,F,W,Z,U;if(B.resolveTagNames)W=HFA();if(B.resolveTagNames)Y={},Z=function($){return Y[$.name]},U=function($,E){Y[$.name]=E};else Y=[],Z=function($){var E;for(E=0;E{function LR(A,Q,B,Y,J,C){this.global=J,Q=Q||0,B=B||A.byteLength-Q,this.arrayBuffer=A.slice(Q,Q+B),this.view=new J.DataView(this.arrayBuffer,0,this.arrayBuffer.byteLength),this.setBigEndian(Y),this.offset=0,this.parentOffset=(C||0)+Q}LR.prototype={setBigEndian:function(A){this.littleEndian=!A},nextUInt8:function(){var A=this.view.getUint8(this.offset);return this.offset+=1,A},nextInt8:function(){var A=this.view.getInt8(this.offset);return this.offset+=1,A},nextUInt16:function(){var A=this.view.getUint16(this.offset,this.littleEndian);return this.offset+=2,A},nextUInt32:function(){var A=this.view.getUint32(this.offset,this.littleEndian);return this.offset+=4,A},nextInt16:function(){var A=this.view.getInt16(this.offset,this.littleEndian);return this.offset+=2,A},nextInt32:function(){var A=this.view.getInt32(this.offset,this.littleEndian);return this.offset+=4,A},nextFloat:function(){var A=this.view.getFloat32(this.offset,this.littleEndian);return this.offset+=4,A},nextDouble:function(){var A=this.view.getFloat64(this.offset,this.littleEndian);return this.offset+=8,A},nextBuffer:function(A){var Q=this.arrayBuffer.slice(this.offset,this.offset+A);return this.offset+=A,Q},remainingLength:function(){return this.arrayBuffer.byteLength-this.offset},nextString:function(A){var Q=this.arrayBuffer.slice(this.offset,this.offset+A);return Q=String.fromCharCode.apply(null,new this.global.Uint8Array(Q)),this.offset+=A,Q},mark:function(){var A=this;return{openWithOffset:function(Q){return Q=(Q||0)+this.offset,new LR(A.arrayBuffer,Q,A.arrayBuffer.byteLength-Q,!A.littleEndian,A.global,A.parentOffset)},offset:this.offset,getParentOffset:function(){return A.parentOffset}}},offsetFrom:function(A){return this.parentOffset+this.offset-(A.offset+A.getParentOffset())},skip:function(A){this.offset+=A},branch:function(A,Q){return Q=typeof Q==="number"?Q:this.arrayBuffer.byteLength-(this.offset+A),new LR(this.arrayBuffer,this.offset+A,Q,!this.littleEndian,this.global,this.parentOffset)}};zFA.exports=LR});var jFA=R((r7Y,wFA)=>{function qR(A,Q,B,Y){this.buffer=A,this.offset=Q||0,B=typeof B==="number"?B:A.length,this.endPosition=this.offset+B,this.setBigEndian(Y)}qR.prototype={setBigEndian:function(A){this.bigEndian=!!A},nextUInt8:function(){var A=this.buffer.readUInt8(this.offset);return this.offset+=1,A},nextInt8:function(){var A=this.buffer.readInt8(this.offset);return this.offset+=1,A},nextUInt16:function(){var A=this.bigEndian?this.buffer.readUInt16BE(this.offset):this.buffer.readUInt16LE(this.offset);return this.offset+=2,A},nextUInt32:function(){var A=this.bigEndian?this.buffer.readUInt32BE(this.offset):this.buffer.readUInt32LE(this.offset);return this.offset+=4,A},nextInt16:function(){var A=this.bigEndian?this.buffer.readInt16BE(this.offset):this.buffer.readInt16LE(this.offset);return this.offset+=2,A},nextInt32:function(){var A=this.bigEndian?this.buffer.readInt32BE(this.offset):this.buffer.readInt32LE(this.offset);return this.offset+=4,A},nextFloat:function(){var A=this.bigEndian?this.buffer.readFloatBE(this.offset):this.buffer.readFloatLE(this.offset);return this.offset+=4,A},nextDouble:function(){var A=this.bigEndian?this.buffer.readDoubleBE(this.offset):this.buffer.readDoubleLE(this.offset);return this.offset+=8,A},nextBuffer:function(A){var Q=this.buffer.slice(this.offset,this.offset+A);return this.offset+=A,Q},remainingLength:function(){return this.endPosition-this.offset},nextString:function(A){var Q=this.buffer.toString("utf8",this.offset,this.offset+A);return this.offset+=A,Q},mark:function(){var A=this;return{openWithOffset:function(Q){return Q=(Q||0)+this.offset,new qR(A.buffer,Q,A.endPosition-Q,A.bigEndian)},offset:this.offset}},offsetFrom:function(A){return this.offset-A.offset},skip:function(A){this.offset+=A},branch:function(A,Q){return Q=typeof Q==="number"?Q:this.endPosition-(this.offset+A),new qR(this.buffer,this.offset+A,Q,this.bigEndian)}};wFA.exports=qR});var TFA=R((a7Y,PFA)=>{var OFA=MFA();function $0B(){return(0,eval)("this")}PFA.exports={create:function(A,Q){if(Q=Q||$0B(),A instanceof Q.ArrayBuffer){var B=RFA();return new OFA(new B(A,0,A.byteLength,!0,Q))}else{var Y=jFA();return new OFA(new Y(A,0,A.length,!0))}}}});var lFA=R((kFY,cFA)=>{function tx(A,Q){if(!A||!Q||!A.length||!Q.length)throw Error("Bad alphabet");this.srcAlphabet=A,this.dstAlphabet=Q}tx.prototype.convert=function(A){var Q,B,Y,J={},C=this.srcAlphabet.length,X=this.dstAlphabet.length,G=A.length,F=typeof A==="string"?"":[];if(!this.isValid(A))throw Error('Number "'+A+'" contains of non-alphabetic digits ('+this.srcAlphabet+")");if(this.srcAlphabet===this.dstAlphabet)return A;for(Q=0;Q=X)J[Y++]=parseInt(B/X,10),B=B%X;else if(Y>0)J[Y++]=0;G=Y,F=this.dstAlphabet.slice(B,B+1).concat(F)}while(Y!==0);return F};tx.prototype.isValid=function(A){var Q=0;for(;Q{var v0B=lFA();function uH(A,Q){var B=new v0B(A,Q);return function(Y){return B.convert(Y)}}uH.BIN="01";uH.OCT="01234567";uH.DEC="0123456789";uH.HEX="0123456789abcdef";pFA.exports=uH});var AD=R((tWA)=>{Object.defineProperty(tWA,"__esModule",{value:!0});tWA.regexpCode=tWA.getEsmExportName=tWA.getProperty=tWA.safeStringify=tWA.stringify=tWA.strConcat=tWA.addCodeArg=tWA.str=tWA._=tWA.nil=tWA._Code=tWA.Name=tWA.IDENTIFIER=tWA._CodeOrName=void 0;class TR{}tWA._CodeOrName=TR;tWA.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;class QE extends TR{constructor(A){super();if(!tWA.IDENTIFIER.test(A))throw Error("CodeGen: name must be a valid identifier");this.str=A}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}}tWA.Name=QE;class vC extends TR{constructor(A){super();this._items=typeof A==="string"?[A]:A}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let A=this._items[0];return A===""||A==='""'}get str(){var A;return(A=this._str)!==null&&A!==void 0?A:this._str=this._items.reduce((Q,B)=>`${Q}${B}`,"")}get names(){var A;return(A=this._names)!==null&&A!==void 0?A:this._names=this._items.reduce((Q,B)=>{if(B instanceof QE)Q[B.str]=(Q[B.str]||0)+1;return Q},{})}}tWA._Code=vC;tWA.nil=new vC("");function aWA(A,...Q){let B=[A[0]],Y=0;while(Y{Object.defineProperty(BZA,"__esModule",{value:!0});BZA.ValueScope=BZA.ValueScopeName=BZA.Scope=BZA.varKinds=BZA.UsedValueState=void 0;var k9=AD();class AZA extends Error{constructor(A){super(`CodeGen: "code" for ${A} not defined`);this.value=A.value}}var kR;(function(A){A[A.Started=0]="Started",A[A.Completed=1]="Completed"})(kR||(BZA.UsedValueState=kR={}));BZA.varKinds={const:new k9.Name("const"),let:new k9.Name("let"),var:new k9.Name("var")};class jf{constructor({prefixes:A,parent:Q}={}){this._names={},this._prefixes=A,this._parent=Q}toName(A){return A instanceof k9.Name?A:this.name(A)}name(A){return new k9.Name(this._newName(A))}_newName(A){let Q=this._names[A]||this._nameGroup(A);return`${A}${Q.index++}`}_nameGroup(A){var Q,B;if(((B=(Q=this._parent)===null||Q===void 0?void 0:Q._prefixes)===null||B===void 0?void 0:B.has(A))||this._prefixes&&!this._prefixes.has(A))throw Error(`CodeGen: prefix "${A}" is not allowed in this scope`);return this._names[A]={prefix:A,index:0}}}BZA.Scope=jf;class Of extends k9.Name{constructor(A,Q){super(Q);this.prefix=A}setValue(A,{property:Q,itemIndex:B}){this.value=A,this.scopePath=k9._`.${new k9.Name(Q)}[${B}]`}}BZA.ValueScopeName=Of;var tYB=k9._`\n`;class QZA extends jf{constructor(A){super(A);this._values={},this._scope=A.scope,this.opts={...A,_n:A.lines?tYB:k9.nil}}get(){return this._scope}name(A){return new Of(A,this._newName(A))}value(A,Q){var B;if(Q.ref===void 0)throw Error("CodeGen: ref must be passed in value");let Y=this.toName(A),{prefix:J}=Y,C=(B=Q.key)!==null&&B!==void 0?B:Q.ref,X=this._values[J];if(X){let W=X.get(C);if(W)return W}else X=this._values[J]=new Map;X.set(C,Y);let G=this._scope[J]||(this._scope[J]=[]),F=G.length;return G[F]=Q.ref,Y.setValue(Q,{property:J,itemIndex:F}),Y}getValue(A,Q){let B=this._values[A];if(!B)return;return B.get(Q)}scopeRefs(A,Q=this._values){return this._reduceValues(Q,(B)=>{if(B.scopePath===void 0)throw Error(`CodeGen: name "${B}" has no value`);return k9._`${A}${B.scopePath}`})}scopeCode(A=this._values,Q,B){return this._reduceValues(A,(Y)=>{if(Y.value===void 0)throw Error(`CodeGen: name "${Y}" has no value`);return Y.value.code},Q,B)}_reduceValues(A,Q,B={},Y){let J=k9.nil;for(let C in A){let X=A[C];if(!X)continue;let G=B[C]=B[C]||new Map;X.forEach((F)=>{if(G.has(F))return;G.set(F,kR.Started);let W=Q(F);if(W){let Z=this.opts.es5?BZA.varKinds.var:BZA.varKinds.const;J=k9._`${J}${Z} ${F} = ${W};${this.opts._n}`}else if(W=Y===null||Y===void 0?void 0:Y(F))J=k9._`${J}${W}${this.opts._n}`;else throw new AZA(F);G.set(F,kR.Completed)})}return J}}BZA.ValueScope=QZA});var GB=R((_9)=>{Object.defineProperty(_9,"__esModule",{value:!0});_9.or=_9.and=_9.not=_9.CodeGen=_9.operators=_9.varKinds=_9.ValueScopeName=_9.ValueScope=_9.Scope=_9.Name=_9.regexpCode=_9.stringify=_9.getProperty=_9.nil=_9.strConcat=_9.str=_9._=void 0;var HB=AD(),yC=Pf(),T7=AD();Object.defineProperty(_9,"_",{enumerable:!0,get:function(){return T7._}});Object.defineProperty(_9,"str",{enumerable:!0,get:function(){return T7.str}});Object.defineProperty(_9,"strConcat",{enumerable:!0,get:function(){return T7.strConcat}});Object.defineProperty(_9,"nil",{enumerable:!0,get:function(){return T7.nil}});Object.defineProperty(_9,"getProperty",{enumerable:!0,get:function(){return T7.getProperty}});Object.defineProperty(_9,"stringify",{enumerable:!0,get:function(){return T7.stringify}});Object.defineProperty(_9,"regexpCode",{enumerable:!0,get:function(){return T7.regexpCode}});Object.defineProperty(_9,"Name",{enumerable:!0,get:function(){return T7.Name}});var xR=Pf();Object.defineProperty(_9,"Scope",{enumerable:!0,get:function(){return xR.Scope}});Object.defineProperty(_9,"ValueScope",{enumerable:!0,get:function(){return xR.ValueScope}});Object.defineProperty(_9,"ValueScopeName",{enumerable:!0,get:function(){return xR.ValueScopeName}});Object.defineProperty(_9,"varKinds",{enumerable:!0,get:function(){return xR.varKinds}});_9.operators={GT:new HB._Code(">"),GTE:new HB._Code(">="),LT:new HB._Code("<"),LTE:new HB._Code("<="),EQ:new HB._Code("==="),NEQ:new HB._Code("!=="),NOT:new HB._Code("!"),OR:new HB._Code("||"),AND:new HB._Code("&&"),ADD:new HB._Code("+")};class S7{optimizeNodes(){return this}optimizeNames(A,Q){return this}}class JZA extends S7{constructor(A,Q,B){super();this.varKind=A,this.name=Q,this.rhs=B}render({es5:A,_n:Q}){let B=A?yC.varKinds.var:this.varKind,Y=this.rhs===void 0?"":` = ${this.rhs}`;return`${B} ${this.name}${Y};`+Q}optimizeNames(A,Q){if(!A[this.name.str])return;if(this.rhs)this.rhs=YE(this.rhs,A,Q);return this}get names(){return this.rhs instanceof HB._CodeOrName?this.rhs.names:{}}}class kf extends S7{constructor(A,Q,B){super();this.lhs=A,this.rhs=Q,this.sideEffects=B}render({_n:A}){return`${this.lhs} = ${this.rhs};`+A}optimizeNames(A,Q){if(this.lhs instanceof HB.Name&&!A[this.lhs.str]&&!this.sideEffects)return;return this.rhs=YE(this.rhs,A,Q),this}get names(){let A=this.lhs instanceof HB.Name?{}:{...this.lhs.names};return gR(A,this.rhs)}}class CZA extends kf{constructor(A,Q,B,Y){super(A,B,Y);this.op=Q}render({_n:A}){return`${this.lhs} ${this.op}= ${this.rhs};`+A}}class XZA extends S7{constructor(A){super();this.label=A,this.names={}}render({_n:A}){return`${this.label}:`+A}}class GZA extends S7{constructor(A){super();this.label=A,this.names={}}render({_n:A}){return`break${this.label?` ${this.label}`:""};`+A}}class FZA extends S7{constructor(A){super();this.error=A}render({_n:A}){return`throw ${this.error};`+A}get names(){return this.error.names}}class WZA extends S7{constructor(A){super();this.code=A}render({_n:A}){return`${this.code};`+A}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(A,Q){return this.code=YE(this.code,A,Q),this}get names(){return this.code instanceof HB._CodeOrName?this.code.names:{}}}class fR extends S7{constructor(A=[]){super();this.nodes=A}render(A){return this.nodes.reduce((Q,B)=>Q+B.render(A),"")}optimizeNodes(){let{nodes:A}=this,Q=A.length;while(Q--){let B=A[Q].optimizeNodes();if(Array.isArray(B))A.splice(Q,1,...B);else if(B)A[Q]=B;else A.splice(Q,1)}return A.length>0?this:void 0}optimizeNames(A,Q){let{nodes:B}=this,Y=B.length;while(Y--){let J=B[Y];if(J.optimizeNames(A,Q))continue;BJB(A,J.names),B.splice(Y,1)}return B.length>0?this:void 0}get names(){return this.nodes.reduce((A,Q)=>JZ(A,Q.names),{})}}class k7 extends fR{render(A){return"{"+A._n+super.render(A)+"}"+A._n}}class ZZA extends fR{}class QD extends k7{}QD.kind="else";class _X extends k7{constructor(A,Q){super(Q);this.condition=A}render(A){let Q=`if(${this.condition})`+super.render(A);if(this.else)Q+="else "+this.else.render(A);return Q}optimizeNodes(){super.optimizeNodes();let A=this.condition;if(A===!0)return this.nodes;let Q=this.else;if(Q){let B=Q.optimizeNodes();Q=this.else=Array.isArray(B)?new QD(B):B}if(Q){if(A===!1)return Q instanceof _X?Q:Q.nodes;if(this.nodes.length)return this;return new _X(VZA(A),Q instanceof _X?[Q]:Q.nodes)}if(A===!1||!this.nodes.length)return;return this}optimizeNames(A,Q){var B;if(this.else=(B=this.else)===null||B===void 0?void 0:B.optimizeNames(A,Q),!(super.optimizeNames(A,Q)||this.else))return;return this.condition=YE(this.condition,A,Q),this}get names(){let A=super.names;if(gR(A,this.condition),this.else)JZ(A,this.else.names);return A}}_X.kind="if";class BE extends k7{}BE.kind="for";class $ZA extends BE{constructor(A){super();this.iteration=A}render(A){return`for(${this.iteration})`+super.render(A)}optimizeNames(A,Q){if(!super.optimizeNames(A,Q))return;return this.iteration=YE(this.iteration,A,Q),this}get names(){return JZ(super.names,this.iteration.names)}}class UZA extends BE{constructor(A,Q,B,Y){super();this.varKind=A,this.name=Q,this.from=B,this.to=Y}render(A){let Q=A.es5?yC.varKinds.var:this.varKind,{name:B,from:Y,to:J}=this;return`for(${Q} ${B}=${Y}; ${B}<${J}; ${B}++)`+super.render(A)}get names(){let A=gR(super.names,this.from);return gR(A,this.to)}}class Tf extends BE{constructor(A,Q,B,Y){super();this.loop=A,this.varKind=Q,this.name=B,this.iterable=Y}render(A){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(A)}optimizeNames(A,Q){if(!super.optimizeNames(A,Q))return;return this.iterable=YE(this.iterable,A,Q),this}get names(){return JZ(super.names,this.iterable.names)}}class _R extends k7{constructor(A,Q,B){super();this.name=A,this.args=Q,this.async=B}render(A){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(A)}}_R.kind="func";class vR extends fR{render(A){return"return "+super.render(A)}}vR.kind="return";class EZA extends k7{render(A){let Q="try"+super.render(A);if(this.catch)Q+=this.catch.render(A);if(this.finally)Q+=this.finally.render(A);return Q}optimizeNodes(){var A,Q;return super.optimizeNodes(),(A=this.catch)===null||A===void 0||A.optimizeNodes(),(Q=this.finally)===null||Q===void 0||Q.optimizeNodes(),this}optimizeNames(A,Q){var B,Y;return super.optimizeNames(A,Q),(B=this.catch)===null||B===void 0||B.optimizeNames(A,Q),(Y=this.finally)===null||Y===void 0||Y.optimizeNames(A,Q),this}get names(){let A=super.names;if(this.catch)JZ(A,this.catch.names);if(this.finally)JZ(A,this.finally.names);return A}}class yR extends k7{constructor(A){super();this.error=A}render(A){return`catch(${this.error})`+super.render(A)}}yR.kind="catch";class hR extends k7{render(A){return"finally"+super.render(A)}}hR.kind="finally";class KZA{constructor(A,Q={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...Q,_n:Q.lines?` -`:""},this._extScope=A,this._scope=new yC.Scope({parent:A}),this._nodes=[new ZZA]}toString(){return this._root.render(this.opts)}name(A){return this._scope.name(A)}scopeName(A){return this._extScope.name(A)}scopeValue(A,Q){let B=this._extScope.value(A,Q);return(this._values[B.prefix]||(this._values[B.prefix]=new Set)).add(B),B}getScopeValue(A,Q){return this._extScope.getValue(A,Q)}scopeRefs(A){return this._extScope.scopeRefs(A,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(A,Q,B,Y){let J=this._scope.toName(Q);if(B!==void 0&&Y)this._constants[J.str]=B;return this._leafNode(new JZA(A,J,B)),J}const(A,Q,B){return this._def(yC.varKinds.const,A,Q,B)}let(A,Q,B){return this._def(yC.varKinds.let,A,Q,B)}var(A,Q,B){return this._def(yC.varKinds.var,A,Q,B)}assign(A,Q,B){return this._leafNode(new kf(A,Q,B))}add(A,Q){return this._leafNode(new CZA(A,_9.operators.ADD,Q))}code(A){if(typeof A=="function")A();else if(A!==HB.nil)this._leafNode(new WZA(A));return this}object(...A){let Q=["{"];for(let[B,Y]of A){if(Q.length>1)Q.push(",");if(Q.push(B),B!==Y||this.opts.es5)Q.push(":"),(0,HB.addCodeArg)(Q,Y)}return Q.push("}"),new HB._Code(Q)}if(A,Q,B){if(this._blockNode(new _X(A)),Q&&B)this.code(Q).else().code(B).endIf();else if(Q)this.code(Q).endIf();else if(B)throw Error('CodeGen: "else" body without "then" body');return this}elseIf(A){return this._elseNode(new _X(A))}else(){return this._elseNode(new QD)}endIf(){return this._endBlockNode(_X,QD)}_for(A,Q){if(this._blockNode(A),Q)this.code(Q).endFor();return this}for(A,Q){return this._for(new $ZA(A),Q)}forRange(A,Q,B,Y,J=this.opts.es5?yC.varKinds.var:yC.varKinds.let){let C=this._scope.toName(A);return this._for(new UZA(J,C,Q,B),()=>Y(C))}forOf(A,Q,B,Y=yC.varKinds.const){let J=this._scope.toName(A);if(this.opts.es5){let C=Q instanceof HB.Name?Q:this.var("_arr",Q);return this.forRange("_i",0,HB._`${C}.length`,(X)=>{this.var(J,HB._`${C}[${X}]`),B(J)})}return this._for(new Tf("of",Y,J,Q),()=>B(J))}forIn(A,Q,B,Y=this.opts.es5?yC.varKinds.var:yC.varKinds.const){if(this.opts.ownProperties)return this.forOf(A,HB._`Object.keys(${Q})`,B);let J=this._scope.toName(A);return this._for(new Tf("in",Y,J,Q),()=>B(J))}endFor(){return this._endBlockNode(BE)}label(A){return this._leafNode(new XZA(A))}break(A){return this._leafNode(new GZA(A))}return(A){let Q=new vR;if(this._blockNode(Q),this.code(A),Q.nodes.length!==1)throw Error('CodeGen: "return" should have one node');return this._endBlockNode(vR)}try(A,Q,B){if(!Q&&!B)throw Error('CodeGen: "try" without "catch" and "finally"');let Y=new EZA;if(this._blockNode(Y),this.code(A),Q){let J=this.name("e");this._currNode=Y.catch=new yR(J),Q(J)}if(B)this._currNode=Y.finally=new hR,this.code(B);return this._endBlockNode(yR,hR)}throw(A){return this._leafNode(new FZA(A))}block(A,Q){if(this._blockStarts.push(this._nodes.length),A)this.code(A).endBlock(Q);return this}endBlock(A){let Q=this._blockStarts.pop();if(Q===void 0)throw Error("CodeGen: not in self-balancing block");let B=this._nodes.length-Q;if(B<0||A!==void 0&&B!==A)throw Error(`CodeGen: wrong number of nodes: ${B} vs ${A} expected`);return this._nodes.length=Q,this}func(A,Q=HB.nil,B,Y){if(this._blockNode(new _R(A,Q,B)),Y)this.code(Y).endFunc();return this}endFunc(){return this._endBlockNode(_R)}optimize(A=1){while(A-- >0)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(A){return this._currNode.nodes.push(A),this}_blockNode(A){this._currNode.nodes.push(A),this._nodes.push(A)}_endBlockNode(A,Q){let B=this._currNode;if(B instanceof A||Q&&B instanceof Q)return this._nodes.pop(),this;throw Error(`CodeGen: not in block "${Q?`${A.kind}/${Q.kind}`:A.kind}"`)}_elseNode(A){let Q=this._currNode;if(!(Q instanceof _X))throw Error('CodeGen: "else" without "if"');return this._currNode=Q.else=A,this}get _root(){return this._nodes[0]}get _currNode(){let A=this._nodes;return A[A.length-1]}set _currNode(A){let Q=this._nodes;Q[Q.length-1]=A}}_9.CodeGen=KZA;function JZ(A,Q){for(let B in Q)A[B]=(A[B]||0)+(Q[B]||0);return A}function gR(A,Q){return Q instanceof HB._CodeOrName?JZ(A,Q.names):A}function YE(A,Q,B){if(A instanceof HB.Name)return Y(A);if(!J(A))return A;return new HB._Code(A._items.reduce((C,X)=>{if(X instanceof HB.Name)X=Y(X);if(X instanceof HB._Code)C.push(...X._items);else C.push(X);return C},[]));function Y(C){let X=B[C.str];if(X===void 0||Q[C.str]!==1)return C;return delete Q[C.str],X}function J(C){return C instanceof HB._Code&&C._items.some((X)=>X instanceof HB.Name&&Q[X.str]===1&&B[X.str]!==void 0)}}function BJB(A,Q){for(let B in Q)A[B]=(A[B]||0)-(Q[B]||0)}function VZA(A){return typeof A=="boolean"||typeof A=="number"||A===null?!A:HB._`!${Sf(A)}`}_9.not=VZA;var YJB=IZA(_9.operators.AND);function JJB(...A){return A.reduce(YJB)}_9.and=JJB;var CJB=IZA(_9.operators.OR);function XJB(...A){return A.reduce(CJB)}_9.or=XJB;function IZA(A){return(Q,B)=>Q===HB.nil?B:B===HB.nil?Q:HB._`${Sf(Q)} ${A} ${Sf(B)}`}function Sf(A){return A instanceof HB.Name?A:HB._`(${A})`}});var wB=R((wZA)=>{Object.defineProperty(wZA,"__esModule",{value:!0});wZA.checkStrictMode=wZA.getErrorPath=wZA.Type=wZA.useFunc=wZA.setEvaluated=wZA.evaluatedPropsToName=wZA.mergeEvaluated=wZA.eachItem=wZA.unescapeJsonPointer=wZA.escapeJsonPointer=wZA.escapeFragment=wZA.unescapeFragment=wZA.schemaRefOrVal=wZA.schemaHasRulesButRef=wZA.schemaHasRules=wZA.checkUnknownRules=wZA.alwaysValidSchema=wZA.toHash=void 0;var tB=GB(),ZJB=AD();function $JB(A){let Q={};for(let B of A)Q[B]=!0;return Q}wZA.toHash=$JB;function UJB(A,Q){if(typeof Q=="boolean")return Q;if(Object.keys(Q).length===0)return!0;return LZA(A,Q),!qZA(Q,A.self.RULES.all)}wZA.alwaysValidSchema=UJB;function LZA(A,Q=A.schema){let{opts:B,self:Y}=A;if(!B.strictSchema)return;if(typeof Q==="boolean")return;let J=Y.RULES.keywords;for(let C in Q)if(!J[C])RZA(A,`unknown keyword: "${C}"`)}wZA.checkUnknownRules=LZA;function qZA(A,Q){if(typeof A=="boolean")return!A;for(let B in A)if(Q[B])return!0;return!1}wZA.schemaHasRules=qZA;function EJB(A,Q){if(typeof A=="boolean")return!A;for(let B in A)if(B!=="$ref"&&Q.all[B])return!0;return!1}wZA.schemaHasRulesButRef=EJB;function KJB({topSchemaRef:A,schemaPath:Q},B,Y,J){if(!J){if(typeof B=="number"||typeof B=="boolean")return B;if(typeof B=="string")return tB._`${B}`}return tB._`${A}${Q}${(0,tB.getProperty)(Y)}`}wZA.schemaRefOrVal=KJB;function VJB(A){return MZA(decodeURIComponent(A))}wZA.unescapeFragment=VJB;function IJB(A){return encodeURIComponent(vf(A))}wZA.escapeFragment=IJB;function vf(A){if(typeof A=="number")return`${A}`;return A.replace(/~/g,"~0").replace(/\//g,"~1")}wZA.escapeJsonPointer=vf;function MZA(A){return A.replace(/~1/g,"/").replace(/~0/g,"~")}wZA.unescapeJsonPointer=MZA;function HJB(A,Q){if(Array.isArray(A))for(let B of A)Q(B);else Q(A)}wZA.eachItem=HJB;function DZA({mergeNames:A,mergeToName:Q,mergeValues:B,resultToName:Y}){return(J,C,X,G)=>{let F=X===void 0?C:X instanceof tB.Name?(C instanceof tB.Name?A(J,C,X):Q(J,C,X),X):C instanceof tB.Name?(Q(J,X,C),C):B(C,X);return G===tB.Name&&!(F instanceof tB.Name)?Y(J,F):F}}wZA.mergeEvaluated={props:DZA({mergeNames:(A,Q,B)=>A.if(tB._`${B} !== true && ${Q} !== undefined`,()=>{A.if(tB._`${Q} === true`,()=>A.assign(B,!0),()=>A.assign(B,tB._`${B} || {}`).code(tB._`Object.assign(${B}, ${Q})`))}),mergeToName:(A,Q,B)=>A.if(tB._`${B} !== true`,()=>{if(Q===!0)A.assign(B,!0);else A.assign(B,tB._`${B} || {}`),yf(A,B,Q)}),mergeValues:(A,Q)=>A===!0?!0:{...A,...Q},resultToName:zZA}),items:DZA({mergeNames:(A,Q,B)=>A.if(tB._`${B} !== true && ${Q} !== undefined`,()=>A.assign(B,tB._`${Q} === true ? true : ${B} > ${Q} ? ${B} : ${Q}`)),mergeToName:(A,Q,B)=>A.if(tB._`${B} !== true`,()=>A.assign(B,Q===!0?!0:tB._`${B} > ${Q} ? ${B} : ${Q}`)),mergeValues:(A,Q)=>A===!0?!0:Math.max(A,Q),resultToName:(A,Q)=>A.var("items",Q)})};function zZA(A,Q){if(Q===!0)return A.var("props",!0);let B=A.var("props",tB._`{}`);if(Q!==void 0)yf(A,B,Q);return B}wZA.evaluatedPropsToName=zZA;function yf(A,Q,B){Object.keys(B).forEach((Y)=>A.assign(tB._`${Q}${(0,tB.getProperty)(Y)}`,!0))}wZA.setEvaluated=yf;var NZA={};function DJB(A,Q){return A.scopeValue("func",{ref:Q,code:NZA[Q.code]||(NZA[Q.code]=new ZJB._Code(Q.code))})}wZA.useFunc=DJB;var _f;(function(A){A[A.Num=0]="Num",A[A.Str=1]="Str"})(_f||(wZA.Type=_f={}));function NJB(A,Q,B){if(A instanceof tB.Name){let Y=Q===_f.Num;return B?Y?tB._`"[" + ${A} + "]"`:tB._`"['" + ${A} + "']"`:Y?tB._`"/" + ${A}`:tB._`"/" + ${A}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return B?(0,tB.getProperty)(A).toString():"/"+vf(A)}wZA.getErrorPath=NJB;function RZA(A,Q,B=A.opts.strictSchema){if(!B)return;if(Q=`strict mode: ${Q}`,B===!0)throw Error(Q);A.self.logger.warn(Q)}wZA.checkStrictMode=RZA});var vX=R((OZA)=>{Object.defineProperty(OZA,"__esModule",{value:!0});var MJ=GB(),xJB={data:new MJ.Name("data"),valCxt:new MJ.Name("valCxt"),instancePath:new MJ.Name("instancePath"),parentData:new MJ.Name("parentData"),parentDataProperty:new MJ.Name("parentDataProperty"),rootData:new MJ.Name("rootData"),dynamicAnchors:new MJ.Name("dynamicAnchors"),vErrors:new MJ.Name("vErrors"),errors:new MJ.Name("errors"),this:new MJ.Name("this"),self:new MJ.Name("self"),scope:new MJ.Name("scope"),json:new MJ.Name("json"),jsonPos:new MJ.Name("jsonPos"),jsonLen:new MJ.Name("jsonLen"),jsonPart:new MJ.Name("jsonPart")};OZA.default=xJB});var BD=R((kZA)=>{Object.defineProperty(kZA,"__esModule",{value:!0});kZA.extendErrors=kZA.resetErrorsCount=kZA.reportExtraError=kZA.reportError=kZA.keyword$DataError=kZA.keywordError=void 0;var qB=GB(),mR=wB(),Q9=vX();kZA.keywordError={message:({keyword:A})=>qB.str`must pass "${A}" keyword validation`};kZA.keyword$DataError={message:({keyword:A,schemaType:Q})=>Q?qB.str`"${A}" keyword must be ${Q} ($data)`:qB.str`"${A}" keyword is invalid ($data)`};function bJB(A,Q=kZA.keywordError,B,Y){let{it:J}=A,{gen:C,compositeRule:X,allErrors:G}=J,F=SZA(A,Q,B);if(Y!==null&&Y!==void 0?Y:X||G)PZA(C,F);else TZA(J,qB._`[${F}]`)}kZA.reportError=bJB;function mJB(A,Q=kZA.keywordError,B){let{it:Y}=A,{gen:J,compositeRule:C,allErrors:X}=Y,G=SZA(A,Q,B);if(PZA(J,G),!(C||X))TZA(Y,Q9.default.vErrors)}kZA.reportExtraError=mJB;function uJB(A,Q){A.assign(Q9.default.errors,Q),A.if(qB._`${Q9.default.vErrors} !== null`,()=>A.if(Q,()=>A.assign(qB._`${Q9.default.vErrors}.length`,Q),()=>A.assign(Q9.default.vErrors,null)))}kZA.resetErrorsCount=uJB;function dJB({gen:A,keyword:Q,schemaValue:B,data:Y,errsCount:J,it:C}){if(J===void 0)throw Error("ajv implementation error");let X=A.name("err");A.forRange("i",J,Q9.default.errors,(G)=>{if(A.const(X,qB._`${Q9.default.vErrors}[${G}]`),A.if(qB._`${X}.instancePath === undefined`,()=>A.assign(qB._`${X}.instancePath`,(0,qB.strConcat)(Q9.default.instancePath,C.errorPath))),A.assign(qB._`${X}.schemaPath`,qB.str`${C.errSchemaPath}/${Q}`),C.opts.verbose)A.assign(qB._`${X}.schema`,B),A.assign(qB._`${X}.data`,Y)})}kZA.extendErrors=dJB;function PZA(A,Q){let B=A.const("err",Q);A.if(qB._`${Q9.default.vErrors} === null`,()=>A.assign(Q9.default.vErrors,qB._`[${B}]`),qB._`${Q9.default.vErrors}.push(${B})`),A.code(qB._`${Q9.default.errors}++`)}function TZA(A,Q){let{gen:B,validateName:Y,schemaEnv:J}=A;if(J.$async)B.throw(qB._`new ${A.ValidationError}(${Q})`);else B.assign(qB._`${Y}.errors`,Q),B.return(!1)}var CZ={keyword:new qB.Name("keyword"),schemaPath:new qB.Name("schemaPath"),params:new qB.Name("params"),propertyName:new qB.Name("propertyName"),message:new qB.Name("message"),schema:new qB.Name("schema"),parentSchema:new qB.Name("parentSchema")};function SZA(A,Q,B){let{createErrors:Y}=A.it;if(Y===!1)return qB._`{}`;return cJB(A,Q,B)}function cJB(A,Q,B={}){let{gen:Y,it:J}=A,C=[lJB(J,B),pJB(A,B)];return iJB(A,Q,C),Y.object(...C)}function lJB({errorPath:A},{instancePath:Q}){let B=Q?qB.str`${A}${(0,mR.getErrorPath)(Q,mR.Type.Str)}`:A;return[Q9.default.instancePath,(0,qB.strConcat)(Q9.default.instancePath,B)]}function pJB({keyword:A,it:{errSchemaPath:Q}},{schemaPath:B,parentSchema:Y}){let J=Y?Q:qB.str`${Q}/${A}`;if(B)J=qB.str`${J}${(0,mR.getErrorPath)(B,mR.Type.Str)}`;return[CZ.schemaPath,J]}function iJB(A,{params:Q,message:B},Y){let{keyword:J,data:C,schemaValue:X,it:G}=A,{opts:F,propertyName:W,topSchemaRef:Z,schemaPath:U}=G;if(Y.push([CZ.keyword,J],[CZ.params,typeof Q=="function"?Q(A):Q||qB._`{}`]),F.messages)Y.push([CZ.message,typeof B=="function"?B(A):B]);if(F.verbose)Y.push([CZ.schema,X],[CZ.parentSchema,qB._`${Z}${U}`],[Q9.default.data,C]);if(W)Y.push([CZ.propertyName,W])}});var gZA=R((yZA)=>{Object.defineProperty(yZA,"__esModule",{value:!0});yZA.boolOrEmptySchema=yZA.topBoolOrEmptySchema=void 0;var oJB=BD(),tJB=GB(),eJB=vX(),A9B={message:"boolean schema is false"};function Q9B(A){let{gen:Q,schema:B,validateName:Y}=A;if(B===!1)vZA(A,!1);else if(typeof B=="object"&&B.$async===!0)Q.return(eJB.default.data);else Q.assign(tJB._`${Y}.errors`,null),Q.return(!0)}yZA.topBoolOrEmptySchema=Q9B;function B9B(A,Q){let{gen:B,schema:Y}=A;if(Y===!1)B.var(Q,!1),vZA(A);else B.var(Q,!0)}yZA.boolOrEmptySchema=B9B;function vZA(A,Q){let{gen:B,data:Y}=A,J={gen:B,keyword:"false schema",data:Y,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:A};(0,oJB.reportError)(J,A9B,void 0,Q)}});var gf=R((xZA)=>{Object.defineProperty(xZA,"__esModule",{value:!0});xZA.getRules=xZA.isJSONType=void 0;var J9B=["string","number","integer","boolean","null","object","array"],C9B=new Set(J9B);function X9B(A){return typeof A=="string"&&C9B.has(A)}xZA.isJSONType=X9B;function G9B(){let A={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...A,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},A.number,A.string,A.array,A.object],post:{rules:[]},all:{},keywords:{}}}xZA.getRules=G9B});var xf=R((uZA)=>{Object.defineProperty(uZA,"__esModule",{value:!0});uZA.shouldUseRule=uZA.shouldUseGroup=uZA.schemaHasRulesForType=void 0;function W9B({schema:A,self:Q},B){let Y=Q.RULES.types[B];return Y&&Y!==!0&&bZA(A,Y)}uZA.schemaHasRulesForType=W9B;function bZA(A,Q){return Q.rules.some((B)=>mZA(A,B))}uZA.shouldUseGroup=bZA;function mZA(A,Q){var B;return A[Q.keyword]!==void 0||((B=Q.definition.implements)===null||B===void 0?void 0:B.some((Y)=>A[Y]!==void 0))}uZA.shouldUseRule=mZA});var YD=R((iZA)=>{Object.defineProperty(iZA,"__esModule",{value:!0});iZA.reportTypeError=iZA.checkDataTypes=iZA.checkDataType=iZA.coerceAndCheckDataType=iZA.getJSONTypes=iZA.getSchemaTypes=iZA.DataType=void 0;var U9B=gf(),E9B=xf(),K9B=BD(),aQ=GB(),cZA=wB(),JE;(function(A){A[A.Correct=0]="Correct",A[A.Wrong=1]="Wrong"})(JE||(iZA.DataType=JE={}));function V9B(A){let Q=lZA(A.type);if(Q.includes("null")){if(A.nullable===!1)throw Error("type: null contradicts nullable: false")}else{if(!Q.length&&A.nullable!==void 0)throw Error('"nullable" cannot be used without "type"');if(A.nullable===!0)Q.push("null")}return Q}iZA.getSchemaTypes=V9B;function lZA(A){let Q=Array.isArray(A)?A:A?[A]:[];if(Q.every(U9B.isJSONType))return Q;throw Error("type must be JSONType or JSONType[]: "+Q.join(","))}iZA.getJSONTypes=lZA;function I9B(A,Q){let{gen:B,data:Y,opts:J}=A,C=H9B(Q,J.coerceTypes),X=Q.length>0&&!(C.length===0&&Q.length===1&&(0,E9B.schemaHasRulesForType)(A,Q[0]));if(X){let G=bf(Q,Y,J.strictNumbers,JE.Wrong);B.if(G,()=>{if(C.length)D9B(A,Q,C);else mf(A)})}return X}iZA.coerceAndCheckDataType=I9B;var pZA=new Set(["string","number","integer","boolean","null"]);function H9B(A,Q){return Q?A.filter((B)=>pZA.has(B)||Q==="array"&&B==="array"):[]}function D9B(A,Q,B){let{gen:Y,data:J,opts:C}=A,X=Y.let("dataType",aQ._`typeof ${J}`),G=Y.let("coerced",aQ._`undefined`);if(C.coerceTypes==="array")Y.if(aQ._`${X} == 'object' && Array.isArray(${J}) && ${J}.length == 1`,()=>Y.assign(J,aQ._`${J}[0]`).assign(X,aQ._`typeof ${J}`).if(bf(Q,J,C.strictNumbers),()=>Y.assign(G,J)));Y.if(aQ._`${G} !== undefined`);for(let W of B)if(pZA.has(W)||W==="array"&&C.coerceTypes==="array")F(W);Y.else(),mf(A),Y.endIf(),Y.if(aQ._`${G} !== undefined`,()=>{Y.assign(J,G),N9B(A,G)});function F(W){switch(W){case"string":Y.elseIf(aQ._`${X} == "number" || ${X} == "boolean"`).assign(G,aQ._`"" + ${J}`).elseIf(aQ._`${J} === null`).assign(G,aQ._`""`);return;case"number":Y.elseIf(aQ._`${X} == "boolean" || ${J} === null +`));return U(UnQ.bind(void 0,A))}ACA.exports=EnQ});var YCA=R((o6Y,BCA)=>{var KnQ=QCA();function VnQ(){this.argTypes=[],this.shimArgs=[],this.arrayArgs=[],this.arrayBlockIndices=[],this.scalarArgs=[],this.offsetArgs=[],this.offsetArgIndex=[],this.indexArgs=[],this.shapeArgs=[],this.funcName="",this.pre=null,this.body=null,this.post=null,this.debug=!1}function InQ(A){var Q=new VnQ;Q.pre=A.pre,Q.body=A.body,Q.post=A.post;var B=A.args.slice(0);Q.argTypes=B;for(var Y=0;Y0)throw Error("cwise: pre() block may not reference array args");if(Y0)throw Error("cwise: post() block may not reference array args")}else if(J==="scalar")Q.scalarArgs.push(Y),Q.shimArgs.push("scalar"+Y);else if(J==="index"){if(Q.indexArgs.push(Y),Y0)throw Error("cwise: pre() block may not reference array index");if(Y0)throw Error("cwise: post() block may not reference array index")}else if(J==="shape"){if(Q.shapeArgs.push(Y),YB.length)throw Error("cwise: Too many arguments in pre() block");if(Q.body.args.length>B.length)throw Error("cwise: Too many arguments in body() block");if(Q.post.args.length>B.length)throw Error("cwise: Too many arguments in post() block");return Q.debug=!!A.printCode||!!A.debug,Q.funcName=A.funcName||"cwise",Q.blockSize=A.blockSize||64,KnQ(Q)}BCA.exports=InQ});var ZCA=R((GY)=>{var v9=YCA(),T3={body:"",args:[],thisVars:[],localVars:[]};function jh(A){if(!A)return T3;for(var Q=0;Q>",rrshift:">>>"};(function(){for(var A in JCA){var Q=JCA[A];GY[A]=k0({args:["array","array","array"],body:{args:["a","b","c"],body:"a=b"+Q+"c"},funcName:A}),GY[A+"eq"]=k0({args:["array","array"],body:{args:["a","b"],body:"a"+Q+"=b"},rvalue:!0,funcName:A+"eq"}),GY[A+"s"]=k0({args:["array","array","scalar"],body:{args:["a","b","s"],body:"a=b"+Q+"s"},funcName:A+"s"}),GY[A+"seq"]=k0({args:["array","scalar"],body:{args:["a","s"],body:"a"+Q+"=s"},rvalue:!0,funcName:A+"seq"})}})();var CCA={not:"!",bnot:"~",neg:"-",recip:"1.0/"};(function(){for(var A in CCA){var Q=CCA[A];GY[A]=k0({args:["array","array"],body:{args:["a","b"],body:"a="+Q+"b"},funcName:A}),GY[A+"eq"]=k0({args:["array"],body:{args:["a"],body:"a="+Q+"a"},rvalue:!0,count:2,funcName:A+"eq"})}})();var XCA={and:"&&",or:"||",eq:"===",neq:"!==",lt:"<",gt:">",leq:"<=",geq:">="};(function(){for(var A in XCA){var Q=XCA[A];GY[A]=k0({args:["array","array","array"],body:{args:["a","b","c"],body:"a=b"+Q+"c"},funcName:A}),GY[A+"s"]=k0({args:["array","array","scalar"],body:{args:["a","b","s"],body:"a=b"+Q+"s"},funcName:A+"s"}),GY[A+"eq"]=k0({args:["array","array"],body:{args:["a","b"],body:"a=a"+Q+"b"},rvalue:!0,count:2,funcName:A+"eq"}),GY[A+"seq"]=k0({args:["array","scalar"],body:{args:["a","s"],body:"a=a"+Q+"s"},rvalue:!0,count:2,funcName:A+"seq"})}})();var GCA=["abs","acos","asin","atan","ceil","cos","exp","floor","log","round","sin","sqrt","tan"];(function(){for(var A=0;Athis_s){this_s=-a}else if(a>this_s){this_s=a}",localVars:[],thisVars:["this_s"]},post:{args:[],localVars:[],thisVars:["this_s"],body:"return this_s"},funcName:"norminf"});GY.norm1=v9({args:["array"],pre:{args:[],localVars:[],thisVars:["this_s"],body:"this_s=0"},body:{args:[{name:"a",lvalue:!1,rvalue:!0,count:3}],body:"this_s+=a<0?-a:a",localVars:[],thisVars:["this_s"]},post:{args:[],localVars:[],thisVars:["this_s"],body:"return this_s"},funcName:"norm1"});GY.sup=v9({args:["array"],pre:{body:"this_h=-Infinity",args:[],thisVars:["this_h"],localVars:[]},body:{body:"if(_inline_1_arg0_>this_h)this_h=_inline_1_arg0_",args:[{name:"_inline_1_arg0_",lvalue:!1,rvalue:!0,count:2}],thisVars:["this_h"],localVars:[]},post:{body:"return this_h",args:[],thisVars:["this_h"],localVars:[]}});GY.inf=v9({args:["array"],pre:{body:"this_h=Infinity",args:[],thisVars:["this_h"],localVars:[]},body:{body:"if(_inline_1_arg0_this_v){this_v=_inline_1_arg1_;for(var _inline_1_k=0;_inline_1_k<_inline_1_arg0_.length;++_inline_1_k){this_i[_inline_1_k]=_inline_1_arg0_[_inline_1_k]}}}",args:[{name:"_inline_1_arg0_",lvalue:!1,rvalue:!0,count:2},{name:"_inline_1_arg1_",lvalue:!1,rvalue:!0,count:2}],thisVars:["this_i","this_v"],localVars:["_inline_1_k"]},post:{body:"{return this_i}",args:[],thisVars:["this_i"],localVars:[]}});GY.random=k0({args:["array"],pre:{args:[],body:"this_f=Math.random",thisVars:["this_f"]},body:{args:["a"],body:"a=this_f()",thisVars:["this_f"]},funcName:"random"});GY.assign=k0({args:["array","array"],body:{args:["a","b"],body:"a=b"},funcName:"assign"});GY.assigns=k0({args:["array","scalar"],body:{args:["a","b"],body:"a=b"},funcName:"assigns"});GY.equals=v9({args:["array","array"],pre:T3,body:{args:[{name:"x",lvalue:!1,rvalue:!0,count:1},{name:"y",lvalue:!1,rvalue:!0,count:1}],body:"if(x!==y){return false}",localVars:[],thisVars:[]},post:{args:[],localVars:[],thisVars:[],body:"return true"},funcName:"equals"})});var J1A=R((EH,dh)=>{var u3=function(){var A="b9H79Tebbbe9ok9Geueu9Geub9Gbb9Gruuuuuuueu9Gvuuuuueu9Gduueu9Gluuuueu9Gvuuuuub9Gouuuuuub9Gluuuub9Giuuueui8AYdilveoveovrrwrrDDoDrbqqbelve9Weiiviebeoweuec;G:Qdkr:nlAo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bb8F9TW79O9V9Wt9FW9U9J9V9KW9wWVtW949c919M9MWV9mW4W2be8A9TW79O9V9Wt9FW9U9J9V9KW9wWVtW949c919M9MWVbd8F9TW79O9V9Wt9FW9U9J9V9KW9wWVtW949c919M9MWV9c9V919U9KbiE9TW79O9V9Wt9FW9U9J9V9KW9wWVtW949wWV79P9V9UblY9TW79O9V9Wt9FW9U9J9V9KW69U9KW949c919M9MWVbv8E9TW79O9V9Wt9FW9U9J9V9KW69U9KW949c919M9MWV9c9V919U9Kbo8A9TW79O9V9Wt9FW9U9J9V9KW69U9KW949wWV79P9V9UbrE9TW79O9V9Wt9FW9U9J9V9KW69U9KW949tWG91W9U9JWbwa9TW79O9V9Wt9FW9U9J9V9KW69U9KW949tWG91W9U9JW9c9V919U9KbDL9TW79O9V9Wt9FW9U9J9V9KWS9P2tWV9p9JtbqK9TW79O9V9Wt9FW9U9J9V9KWS9P2tWV9r919HtbkL9TW79O9V9Wt9FW9U9J9V9KWS9P2tWVT949WbxE9TW79O9V9Wt9F9V9Wt9P9T9P96W9wWVtW94J9H9J9OWbsa9TW79O9V9Wt9F9V9Wt9P9T9P96W9wWVtW94J9H9J9OW9ttV9P9Wbza9TW79O9V9Wt9F9V9Wt9P9T9P96W9wWVtW94SWt9J9O9sW9T9H9WbHK9TW79O9V9Wt9F79W9Ht9P9H29t9VVt9sW9T9H9WbOl79IV9RbCDwebcekdKLqN9OYdbk:Bhdhud9:8Jjjjjbc;qw9Rgr8KjjjjbcbhwdnaeTmbabcbyd;C:kjjbaoaocb9iEgDc:GeV86bbarc;adfcbcjdz:wjjjb8AdnaiTmbarc;adfadalz:vjjjb8Akarc;abfalfcbcbcjdal9RalcFe0Ez:wjjjb8Aarc;abfarc;adfalz:vjjjb8AarcUf9cb83ibarc8Wf9cb83ibarcyf9cb83ibarcaf9cb83ibarcKf9cb83ibarczf9cb83ibar9cb83iwar9cb83ibcj;abal9Uc;WFbGcjdalca0Ehqdnaicd6mbavcd9imbaDTmbadcefhkaqci2gxal2hmarc;alfclfhParc;qlfceVhsarc;qofclVhzarc;qofcKfhHarc;qofczfhOcbhAincdhCcbhodnavci6mbaH9cb83ibaO9cb83ibar9cb83i;yoar9cb83i;qoadaAfgoybbhXcbhQincbhwcbhLdninaoalfhKaoybbgYaX7aLVhLawcP0meaKhoaYhXawcefgwaQfai6mbkkcbhXarc;qofhwincwh8AcwhEdnaLaX93gocFeGg3cs0mbclhEa3ci0mba3cb9hcethEkdnaocw4cFeGg3cs0mbclh8Aa3ci0mba3cb9hceth8Aka8AaEfh3awydbh5cwh8AcwhEdnaocz4cFeGg8Ecs0mbclhEa8Eci0mba8Ecb9hcethEka3a5fh3dnaocFFFFb0mbclh8AaocFFF8F0mbaocFFFr0ceth8Akawa3aEfa8AfBdbawclfhwaXcefgXcw9hmbkaKhoaYhXaQczfgQai6mbkcbhocehwazhLinawaoaLydbarc;qofaocdtfydb6EhoaLclfhLawcefgwcw9hmbkcihCkcbh3arc;qlfcbcjdz:wjjjb8Aarc;alfcwfcbBdbar9cb83i;alaoclth8Fadhaaqhhakh5inarc;qlfadcba3cufgoaoa30Eal2falz:vjjjb8Aaiahaiah6Ehgdnaqaia39Ra3aqfai6EgYcsfc9WGgoaY9nmbarc;qofaYfcbaoaY9Rz:wjjjb8Akada3al2fh8Jcbh8Kina8Ka8FVcl4hQarc;alfa8Kcdtfh8LaAh8Mcbh8Nina8NaAfhwdndndndndndna8KPldebidkasa8Mc98GgLfhoa5aLfh8Aarc;qlfawc98GgLfRbbhXcwhwinaoRbbawtaXVhXaocefhoawcwfgwca9hmbkaYTmla8Ncith8Ea8JaLfhEcbhKinaERbbhLcwhoa8AhwinawRbbaotaLVhLawcefhwaocwfgoca9hmbkarc;qofaKfaLaX7aQ93a8E486bba8Aalfh8AaEalfhEaLhXaKcefgKaY9hmbxlkkaYTmia8Mc9:Ghoa8NcitcwGhEarc;qlfawceVfRbbcwtarc;qlfawc9:GfRbbVhLarc;qofhwaghXinawa5aofRbbcwtaaaofRbbVg8AaL9RgLcetaLcztcz91cs47cFFiGaE486bbaoalfhoawcefhwa8AhLa3aXcufgX9hmbxikkaYTmda8Jawfhoarc;qlfawfRbbhLarc;qofhwaghXinawaoRbbg8AaL9RgLcetaLcKtcK91cr4786bbawcefhwaoalfhoa8AhLa3aXcufgX9hmbxdkkaYTmeka8LydbhEcbhKarc;qofhoincdhLcbhwinaLaoawfRbbcb9hfhLawcefgwcz9hmbkclhXcbhwinaXaoawfRbbcd0fhXawcefgwcz9hmbkcwh8Acbhwina8AaoawfRbbcP0fh8Aawcefgwcz9hmbkaLaXaLaX6Egwa8Aawa8A6Egwczawcz6EaEfhEaoczfhoaKczfgKaY6mbka8LaEBdbka8Mcefh8Ma8Ncefg8Ncl9hmbka8Kcefg8KaC9hmbkaaamfhaahaxfhha5amfh5a3axfg3ai6mbkcbhocehwaPhLinawaoaLydbarc;alfaocdtfydb6EhoaLclfhLawcefgXhwaCaX9hmbkaraAcd4fa8FcdVaoaocdSE86bbaAclfgAal6mbkkabaefh8Kabcefhoalcd4gecbaDEhkadcefhOarc;abfceVhHcbhmdndninaiam9nmearc;qofcbcjdz:wjjjb8Aa8Kao9Rak6mdadamal2gwfhxcbh8JaOawfhzaocbakz:wjjjbghakfh5aqaiam9Ramaqfai6Egscsfgocl4cifcd4hCaoc9WGg8LThPindndndndndndndndndndnaDTmbara8Jcd4fRbbgLciGPlbedlbkasTmdaxa8Jfhoarc;abfa8JfRbbhLarc;qofhwashXinawaoRbbg8AaL9RgLcetaLcKtcK91cr4786bbawcefhwaoalfhoa8AhLaXcufgXmbxikkasTmia8JcitcwGhEarc;abfa8JceVfRbbcwtarc;abfa8Jc9:GgofRbbVhLaxaofhoarc;qofhwashXinawao8Vbbg8AaL9RgLcetaLcztcz91cs47cFFiGaE486bbawcefhwaoalfhoa8AhLaXcufgXmbxdkkaHa8Jc98GgEfhoazaEfh8Aarc;abfaEfRbbhXcwhwinaoRbbawtaXVhXaocefhoawcwfgwca9hmbkasTmbaLcl4hYa8JcitcKGh3axaEfhEcbhKinaERbbhLcwhoa8AhwinawRbbaotaLVhLawcefhwaocwfgoca9hmbkarc;qofaKfaLaX7aY93a3486bba8Aalfh8AaEalfhEaLhXaKcefgKas9hmbkkaDmbcbhoxlka8LTmbcbhodninarc;qofaofgwcwf8Pibaw8Pib:e9qTmeaoczfgoa8L9pmdxbkkdnavmbcehoxikcbhEaChKaChYinarc;qofaEfgocwf8Pibhyao8Pibh8PcdhLcbhwinaLaoawfRbbcb9hfhLawcefgwcz9hmbkclhXcbhwinaXaoawfRbbcd0fhXawcefgwcz9hmbkcwh8Acbhwina8AaoawfRbbcP0fh8Aawcefgwcz9hmbkaLaXaLaX6Egoa8Aaoa8A6Egoczaocz6EaYfhYaocucbaya8P:e9cb9sEgwaoaw6EaKfhKaEczfgEa8L9pmdxbkkaha8Jcd4fgoaoRbbcda8JcetcoGtV86bbxikdnaKas6mbaYas6mbaha8Jcd4fgoaoRbbcia8JcetcoGtV86bba8Ka59Ras6mra5arc;qofasz:vjjjbasfh5xikaKaY9phokaha8Jcd4fgwawRbbaoa8JcetcoGtV86bbka8Ka59RaC6mla5cbaCz:wjjjbgAaCfhYdndna8LmbaPhoxekdna8KaY9RcK9pmbaPhoxekaocdtc:q1jjbfcj1jjbaDEg5ydxggcetc;:FFFeGh8Fcuh3cuagtcu7cFeGhacbh8Marc;qofhLinarc;qofa8MfhQczhEdndndnagPDbeeeeeeedekcucbaQcwf8PibaQ8Pib:e9cb9sEhExekcbhoa8FhEinaEaaaLaofRbb9nfhEaocefgocz9hmbkkcih8Ecbh8Ainczhwdndndna5a8AcdtfydbgKPDbeeeeeeedekcucbaQcwf8PibaQ8Pib:e9cb9sEhwxekaKcetc;:FFFeGhwcuaKtcu7cFeGhXcbhoinawaXaLaofRbb9nfhwaocefgocz9hmbkkdndnawaE6mbaKa39hmeawaE9hmea5a8EcdtfydbcwSmeka8Ah8EawhEka8Acefg8Aci9hmbkaAa8Mco4fgoaoRbba8Ea8Mci4coGtV86bbdndndna5a8Ecdtfydbg3PDdbbbbbbbebkdncwa39Tg8ETmbcua3tcu7hwdndna3ceSmbcbh8NaLhQinaQhoa8Eh8AcbhXinaoRbbgEawcFeGgKaEaK6EaXa3tVhXaocefhoa8Acufg8AmbkaYaX86bbaQa8EfhQaYcefhYa8Na8Efg8Ncz6mbxdkkcbh8NaLhQinaQhoa8Eh8AcbhXinaoRbbgEawcFeGgKaEaK6EaXcetVhXaocefhoa8Acufg8AmbkaYaX:T9cFe:d9c:c:qj:bw9:9c:q;c1:I1e:d9c:b:c:e1z9:9ca188bbaQa8EfhQaYcefhYa8Na8Efg8Ncz6mbkkcbhoinaYaLaofRbbgX86bbaYaXawcFeG9pfhYaocefgocz9hmbxikkdna3ceSmbinaYcb86bbaYcefhYxbkkinaYcb86bbaYcefhYxbkkaYaQ8Pbb83bbaYcwfaQcwf8Pbb83bbaYczfhYka8Mczfg8Ma8L9pgomeaLczfhLa8KaY9RcK9pmbkkaoTmlaYh5aYTmlka8Jcefg8Jal9hmbkarc;abfaxascufal2falz:vjjjb8Aasamfhma5hoa5mbkcbhwxdkdna8Kao9RakalfgwcKcaaDEgLawaL0EgX9pmbcbhwxdkdnawaL9pmbaocbaXaw9Rgwz:wjjjbawfhokaoarc;adfalz:vjjjbalfhodnaDTmbaoaraez:vjjjbaefhokaoab9Rhwxekcbhwkarc;qwf8Kjjjjbawk5babaeadaialcdcbyd;C:kjjbz:bjjjbk9reduaecd4gdaefgicaaica0Eabcj;abae9Uc;WFbGcjdaeca0Egifcufai9Uae2aiadfaicl4cifcd4f2fcefkmbcbabBd;C:kjjbk:Ese5u8Jjjjjbc;ae9Rgl8Kjjjjbcbhvdnaici9UgocHfae0mbabcbyd;m:kjjbgrc;GeV86bbalc;abfcFecjez:wjjjb8AalcUfgw9cu83ibalc8WfgD9cu83ibalcyfgq9cu83ibalcafgk9cu83ibalcKfgx9cu83ibalczfgm9cu83ibal9cu83iwal9cu83ibabaefc9WfhPabcefgsaofhednaiTmbcmcsarcb9kgzEhHcbhOcbhAcbhCcbhXcbhQindnaeaP9nmbcbhvxikaQcufhvadaCcdtfgLydbhKaLcwfydbhYaLclfydbh8AcbhEdndndninalc;abfavcsGcitfgoydlh3dndndnaoydbgoaK9hmba3a8ASmekdnaoa8A9hmba3aY9hmbaEcefhExekaoaY9hmea3aK9hmeaEcdfhEkaEc870mdaXcufhvaLaEciGcx2goc;i1jjbfydbcdtfydbh3aLaoc;e1jjbfydbcdtfydbh8AaLaoc;a1jjbfydbcdtfydbhKcbhodnindnalavcsGcdtfydba39hmbaohYxdkcuhYavcufhvaocefgocz9hmbkkaOa3aOSgvaYce9iaYaH9oVgoGfhOdndndncbcsavEaYaoEgvcs9hmbarce9imba3a3aAa3cefaASgvEgAcefSmecmcsavEhvkasavaEcdtc;WeGV86bbavcs9hmea3aA9Rgvcetavc8F917hvinaeavcFb0crtavcFbGV86bbaecefheavcje6hoavcr4hvaoTmbka3hAxvkcPhvasaEcdtcPV86bba3hAkavTmiavaH9omicdhocehEaQhYxlkavcufhvaEclfgEc;ab9hmbkkdnaLceaYaOSceta8AaOSEcx2gvc;a1jjbfydbcdtfydbgKTaLavc;e1jjbfydbcdtfydbg8AceSGaLavc;i1jjbfydbcdtfydbg3cdSGaOcb9hGazGg5ce9hmbaw9cu83ibaD9cu83ibaq9cu83ibak9cu83ibax9cu83ibam9cu83ibal9cu83iwal9cu83ibcbhOkcbhEaXcufgvhodnindnalaocsGcdtfydba8A9hmbaEhYxdkcuhYaocufhoaEcefgEcz9hmbkkcbhodnindnalavcsGcdtfydba39hmbaohExdkcuhEavcufhvaocefgocz9hmbkkaOaKaOSg8EfhLdndnaYcm0mbaYcefhYxekcbcsa8AaLSgvEhYaLavfhLkdndnaEcm0mbaEcefhExekcbcsa3aLSgvEhEaLavfhLkc9:cua8EEh8FcbhvaEaYcltVgacFeGhodndndninavc:W1jjbfRbbaoSmeavcefgvcz9hmbxdkka5aKaO9havcm0VVmbasavc;WeV86bbxekasa8F86bbaeaa86bbaecefhekdna8EmbaKaA9Rgvcetavc8F917hvinaeavcFb0gocrtavcFbGV86bbavcr4hvaecefheaombkaKhAkdnaYcs9hmba8AaA9Rgvcetavc8F917hvinaeavcFb0gocrtavcFbGV86bbavcr4hvaecefheaombka8AhAkdnaEcs9hmba3aA9Rgvcetavc8F917hvinaeavcFb0gocrtavcFbGV86bbavcr4hvaecefheaombka3hAkalaXcdtfaKBdbaXcefcsGhvdndnaYPzbeeeeeeeeeeeeeebekalavcdtfa8ABdbaXcdfcsGhvkdndnaEPzbeeeeeeeeeeeeeebekalavcdtfa3BdbavcefcsGhvkcihoalc;abfaQcitfgEaKBdlaEa8ABdbaQcefcsGhYcdhEavhXaLhOxekcdhoalaXcdtfa3BdbcehEaXcefcsGhXaQhYkalc;abfaYcitfgva8ABdlava3Bdbalc;abfaQaEfcsGcitfgva3BdlavaKBdbascefhsaQaofcsGhQaCcifgCai6mbkkdnaeaP9nmbcbhvxekcbhvinaeavfavc:W1jjbfRbb86bbavcefgvcz9hmbkaeab9Ravfhvkalc;aef8KjjjjbavkZeeucbhddninadcefgdc8F0meceadtae6mbkkadcrfcFeGcr9Uci2cdfabci9U2cHfkmbcbabBd;m:kjjbk:Adewu8Jjjjjbcz9Rhlcbhvdnaicvfae0mbcbhvabcbRb;m:kjjbc;qeV86bbal9cb83iwabcefhoabaefc98fhrdnaiTmbcbhwcbhDindnaoar6mbcbskadaDcdtfydbgqalcwfawaqav9Rgvavc8F91gv7av9Rc507gwcdtfgkydb9Rgvc8E91c9:Gavcdt7awVhvinaoavcFb0gecrtavcFbGV86bbavcr4hvaocefhoaembkakaqBdbaqhvaDcefgDai9hmbkkdnaoar9nmbcbskaocbBbbaoab9RclfhvkavkBeeucbhddninadcefgdc8F0meceadtae6mbkkadcwfcFeGcr9Uab2cvfk:bvli99dui99ludnaeTmbcuadcetcuftcu7:Zhvdndncuaicuftcu7:ZgoJbbbZMgr:lJbbb9p9DTmbar:Ohwxekcjjjj94hwkcbhicbhDinalclfIdbgrJbbbbJbbjZalIdbgq:lar:lMalcwfIdbgk:lMgr:varJbbbb9BEgrNhxaqarNhrdndnakJbbbb9GTmbaxhqxekJbbjZar:l:tgqaq:maxJbbbb9GEhqJbbjZax:l:tgxax:marJbbbb9GEhrkdndnalcxfIdbgxJbbj:;axJbbj:;9GEgkJbbjZakJbbjZ9FEavNJbbbZJbbb:;axJbbbb9GEMgx:lJbbb9p9DTmbax:Ohmxekcjjjj94hmkdndnaqJbbj:;aqJbbj:;9GEgxJbbjZaxJbbjZ9FEaoNJbbbZJbbb:;aqJbbbb9GEMgq:lJbbb9p9DTmbaq:OhPxekcjjjj94hPkdndnarJbbj:;arJbbj:;9GEgqJbbjZaqJbbjZ9FEaoNJbbbZJbbb:;arJbbbb9GEMgr:lJbbb9p9DTmbar:Ohsxekcjjjj94hskdndnadcl9hmbabaifgzas86bbazcifam86bbazcdfaw86bbazcefaP86bbxekabaDfgzas87ebazcofam87ebazclfaw87ebazcdfaP87ebkalczfhlaiclfhiaDcwfhDaecufgembkkk;hlld99eud99eudnaeTmbdndncuaicuftcu7:ZgvJbbbZMgo:lJbbb9p9DTmbao:Ohixekcjjjj94hikaic;8FiGhrinabcofcicdalclfIdb:lalIdb:l9EgialcwfIdb:lalaicdtfIdb:l9EEgialcxfIdb:lalaicdtfIdb:l9EEgiarV87ebdndnJbbj:;JbbjZalaicdtfIdbJbbbb9DEgoalaicd7cdtfIdbJ;Zl:1ZNNgwJbbj:;awJbbj:;9GEgDJbbjZaDJbbjZ9FEavNJbbbZJbbb:;awJbbbb9GEMgw:lJbbb9p9DTmbaw:Ohqxekcjjjj94hqkabcdfaq87ebdndnalaicefciGcdtfIdbJ;Zl:1ZNaoNgwJbbj:;awJbbj:;9GEgDJbbjZaDJbbjZ9FEavNJbbbZJbbb:;awJbbbb9GEMgw:lJbbb9p9DTmbaw:Ohqxekcjjjj94hqkabaq87ebdndnaoalaicufciGcdtfIdbJ;Zl:1ZNNgoJbbj:;aoJbbj:;9GEgwJbbjZawJbbjZ9FEavNJbbbZJbbb:;aoJbbbb9GEMgo:lJbbb9p9DTmbao:Ohixekcjjjj94hikabclfai87ebabcwfhbalczfhlaecufgembkkk;3viDue99eu8Jjjjjbcjd9Rgo8Kjjjjbadcd4hrdndndndnavcd9hmbadcl6meaohwarhDinawc:CuBdbawclfhwaDcufgDmbkaeTmiadcl6mdarcdthqalhkcbhxinaohwakhDarhminawawydbgPcbaDIdbgs:8cL4cFeGc:cufasJbbbb9BEgzaPaz9kEBdbaDclfhDawclfhwamcufgmmbkakaqfhkaxcefgxaeSmixbkkaeTmdxekaeTmekarcdthkavce9hhqadcl6hdcbhxindndndnaqmbadmdc:CuhDalhwarhminaDcbawIdbgs:8cL4cFeGc:cufasJbbbb9BEgPaDaP9kEhDawclfhwamcufgmmbxdkkc:CuhDdndnavPleddbdkadmdaohwalhmarhPinawcbamIdbgs:8cL4cFeGgzc;:bazc;:b0Ec:cufasJbbbb9BEBdbamclfhmawclfhwaPcufgPmbxdkkadmecbhwarhminaoawfcbalawfIdbgs:8cL4cFeGgPc8AaPc8A0Ec:cufasJbbbb9BEBdbawclfhwamcufgmmbkkadmbcbhwarhPinaDhmdnavceSmbaoawfydbhmkdndnalawfIdbgscjjj;8iamai9RcefgmcLt9R::NJbbbZJbbb:;asJbbbb9GEMgs:lJbbb9p9DTmbas:Ohzxekcjjjj94hzkabawfazcFFFrGamcKtVBdbawclfhwaPcufgPmbkkabakfhbalakfhlaxcefgxae9hmbkkaocjdf8Kjjjjbk;YqdXui998Jjjjjbc:qd9Rgv8Kjjjjbavc:Sefcbc;Kbz:wjjjb8AcbhodnadTmbcbhoaiTmbdndnabaeSmbaehrxekavcuadcdtgwadcFFFFi0Ecbyd;u:kjjbHjjjjbbgrBd:SeavceBd:mdaraeawz:vjjjb8Akavc:GefcwfcbBdbav9cb83i:Geavc:Gefaradaiavc:Sefz:ojjjbavyd:GehDadci9Ugqcbyd;u:kjjbHjjjjbbheavc:Sefavyd:mdgkcdtfaeBdbavakcefgwBd:mdaecbaqz:wjjjbhxavc:SefawcdtfcuaicdtaicFFFFi0Ecbyd;u:kjjbHjjjjbbgmBdbavakcdfgPBd:mdalc;ebfhsaDheamhwinawalIdbasaeydbgzcwazcw6EcdtfIdbMUdbaeclfheawclfhwaicufgimbkavc:SefaPcdtfcuaqcdtadcFFFF970Ecbyd;u:kjjbHjjjjbbgPBdbdnadci6mbarheaPhwaqhiinawamaeydbcdtfIdbamaeclfydbcdtfIdbMamaecwfydbcdtfIdbMUdbaecxfheawclfhwaicufgimbkkakcifhoalc;ebfhHavc;qbfhOavheavyd:KehAavyd:OehCcbhzcbhwcbhXcehQinaehLcihkarawci2gKcdtfgeydbhsaeclfydbhdabaXcx2fgicwfaecwfydbgYBdbaiclfadBdbaiasBdbaxawfce86bbaOaYBdwaOadBdlaOasBdbaPawcdtfcbBdbdnazTmbcihkaLhiinaOakcdtfaiydbgeBdbakaeaY9haeas9haead9hGGfhkaiclfhiazcufgzmbkkaXcefhXcbhzinaCaAarazaKfcdtfydbcdtgifydbcdtfgYheaDaifgdydbgshidnasTmbdninaeydbawSmeaeclfheaicufgiTmdxbkkaeaYascdtfc98fydbBdbadadydbcufBdbkazcefgzci9hmbkdndnakTmbcuhwJbbbbh8Acbhdavyd:KehYavyd:OehKindndnaDaOadcdtfydbcdtgzfydbgembadcefhdxekadcs0hiamazfgsIdbhEasalcbadcefgdaiEcdtfIdbaHaecwaecw6EcdtfIdbMg3Udba3aE:th3aecdthiaKaYazfydbcdtfheinaPaeydbgzcdtfgsa3asIdbMgEUdbaEa8Aa8AaE9DgsEh8AazawasEhwaeclfheaic98fgimbkkadak9hmbkawcu9hmekaQaq9pmdindnaxaQfRbbmbaQhwxdkaqaQcefgQ9hmbxikkakczakcz6EhzaOheaLhOawcu9hmbkkaocdtavc:Seffc98fhedninaoTmeaeydbcbyd;q:kjjbH:bjjjbbaec98fheaocufhoxbkkavc:qdf8Kjjjjbk;IlevucuaicdtgvaicFFFFi0Egocbyd;u:kjjbHjjjjbbhralalyd9GgwcdtfarBdbalawcefBd9GabarBdbaocbyd;u:kjjbHjjjjbbhralalyd9GgocdtfarBdbalaocefBd9GabarBdlcuadcdtadcFFFFi0Ecbyd;u:kjjbHjjjjbbhralalyd9GgocdtfarBdbalaocefBd9GabarBdwabydbcbavz:wjjjb8Aadci9UhDdnadTmbabydbhoaehladhrinaoalydbcdtfgvavydbcefBdbalclfhlarcufgrmbkkdnaiTmbabydbhlabydlhrcbhvaihoinaravBdbarclfhralydbavfhvalclfhlaocufgombkkdnadci6mbabydlhrabydwhvcbhlinaecwfydbhoaeclfydbhdaraeydbcdtfgwawydbgwcefBdbavawcdtfalBdbaradcdtfgdadydbgdcefBdbavadcdtfalBdbaraocdtfgoaoydbgocefBdbavaocdtfalBdbaecxfheaDalcefgl9hmbkkdnaiTmbabydlheabydbhlinaeaeydbalydb9RBdbalclfhlaeclfheaicufgimbkkkQbabaeadaic;K1jjbz:njjjbkQbabaeadaic;m:jjjbz:njjjbk9DeeuabcFeaicdtz:wjjjbhlcbhbdnadTmbindnalaeydbcdtfgiydbcu9hmbaiabBdbabcefhbkaeclfheadcufgdmbkkabk:Vvioud9:du8Jjjjjbc;Wa9Rgl8Kjjjjbcbhvalcxfcbc;Kbz:wjjjb8AalcuadcitgoadcFFFFe0Ecbyd;u:kjjbHjjjjbbgrBdxalceBd2araeadaicez:tjjjbalcuaoadcjjjjoGEcbyd;u:kjjbHjjjjbbgwBdzadcdthednadTmbabhiinaiavBdbaiclfhiadavcefgv9hmbkkawaefhDalabBdwalawBdl9cbhqindnadTmbaq9cq9:hkarhvaDhiadheinaiav8Pibak1:NcFrG87ebavcwfhvaicdfhiaecufgembkkalclfaq:NceGcdtfydbhxalclfaq9ce98gq:NceGcdtfydbhmalc;Wbfcbcjaz:wjjjb8AaDhvadhidnadTmbinalc;Wbfav8VebcdtfgeaeydbcefBdbavcdfhvaicufgimbkkcbhvcbhiinalc;WbfavfgeydbhoaeaiBdbaoaifhiavclfgvcja9hmbkadhvdndnadTmbinalc;WbfaDamydbgicetf8VebcdtfgeaeydbgecefBdbaxaecdtfaiBdbamclfhmavcufgvmbkaq9cv9smdcbhvinabawydbcdtfavBdbawclfhwadavcefgv9hmbxdkkaq9cv9smekkclhvdninavc98Smealcxfavfydbcbyd;q:kjjbH:bjjjbbavc98fhvxbkkalc;Waf8Kjjjjbk:Jwliuo99iud9:cbhv8Jjjjjbca9Rgoczfcwfcbyd:8:kjjbBdbaocb8Pd:0:kjjb83izaocwfcbyd;i:kjjbBdbaocb8Pd;a:kjjb83ibaicd4hrdndnadmbJFFuFhwJFFuuhDJFFuuhqJFFuFhkJFFuuhxJFFuFhmxekarcdthPaehsincbhiinaoczfaifgzasaifIdbgwazIdbgDaDaw9EEUdbaoaifgzawazIdbgDaDaw9DEUdbaiclfgicx9hmbkasaPfhsavcefgvad9hmbkaoIdKhDaoIdwhwaoIdChqaoIdlhkaoIdzhxaoIdbhmkdnadTmbJbbbbJbFu9hJbbbbamax:tgmamJbbbb9DEgmakaq:tgkakam9DEgkawaD:tgwawak9DEgw:vawJbbbb9BEhwdnalmbarcdthoindndnaeclfIdbaq:tawNJbbbZMgk:lJbbb9p9DTmbak:Ohixekcjjjj94hikai:S9cC:ghHdndnaeIdbax:tawNJbbbZMgk:lJbbb9p9DTmbak:Ohixekcjjjj94hikaHai:S:ehHdndnaecwfIdbaD:tawNJbbbZMgk:lJbbb9p9DTmbak:Ohixekcjjjj94hikabaHai:T9cy:g:e83ibaeaofheabcwfhbadcufgdmbxdkkarcdthoindndnaeIdbax:tawNJbbbZMgk:lJbbb9p9DTmbak:Ohixekcjjjj94hikai:SgH9ca:gaH9cz:g9cjjj;4s:d:eaH9cFe:d:e9cF:bj;4:pj;ar:d9c:bd9:9c:p;G:d;4j:E;ar:d9cH9:9c;d;H:W:y:m:g;d;Hb:d9cv9:9c;j:KM;j:KM;j:Kd:dhOdndnaeclfIdbaq:tawNJbbbZMgk:lJbbb9p9DTmbak:Ohixekcjjjj94hikai:SgH9ca:gaH9cz:g9cjjj;4s:d:eaH9cFe:d:e9cF:bj;4:pj;ar:d9c:bd9:9c:p;G:d;4j:E;ar:d9cH9:9c;d;H:W:y:m:g;d;Hb:d9cq9:9cM;j:KM;j:KM;jl:daO:ehOdndnaecwfIdbaD:tawNJbbbZMgk:lJbbb9p9DTmbak:Ohixekcjjjj94hikabaOai:SgH9ca:gaH9cz:g9cjjj;4s:d:eaH9cFe:d:e9cF:bj;4:pj;ar:d9c:bd9:9c:p;G:d;4j:E;ar:d9cH9:9c;d;H:W:y:m:g;d;Hb:d9cC9:9c:KM;j:KM;j:KMD:d:e83ibaeaofheabcwfhbadcufgdmbkkk9teiucbcbyd;y:kjjbgeabcifc98GfgbBd;y:kjjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik;teeeudndnaeabVciGTmbabhixekdndnadcz9pmbabhixekabhiinaiaeydbBdbaiaeydlBdlaiaeydwBdwaiaeydxBdxaeczfheaiczfhiadc9Wfgdcs0mbkkadcl6mbinaiaeydbBdbaeclfheaiclfhiadc98fgdci0mbkkdnadTmbinaiaeRbb86bbaicefhiaecefheadcufgdmbkkabk:3eedudndnabciGTmbabhixekaecFeGc:b:c:ew2hldndnadcz9pmbabhixekabhiinaialBdxaialBdwaialBdlaialBdbaiczfhiadc9Wfgdcs0mbkkadcl6mbinaialBdbaiclfhiadc98fgdci0mbkkdnadTmbinaiae86bbaicefhiadcufgdmbkkabk9teiucbcbyd;y:kjjbgeabcrfc94GfgbBd;y:kjjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik9:eiuZbhedndncbyd;y:kjjbgdaecztgi9nmbcuheadai9RcFFifcz4nbcuSmekadhekcbabae9Rcifc98Gcbyd;y:kjjbfgdBd;y:kjjbdnadZbcztge9nmbadae9RcFFifcz4nb8Akkk;Qddbcjwk;mdbbbbdbbblbbbwbbbbbbbebbbdbbblbbbwbbbbbbbbbbbbbbbb4:h9w9N94:P:gW:j9O:ye9Pbbbbbbebbbdbbbebbbdbbbbbbbdbbbbbbbebbbbbbb:l29hZ;69:9kZ;N;76Z;rg97Z;z;o9xZ8J;B85Z;:;u9yZ;b;k9HZ:2;Z9DZ9e:l9mZ59A8KZ:r;T3Z:A:zYZ79OHZ;j4::8::Y:D9V8:bbbb9s:49:Z8R:hBZ9M9M;M8:L;z;o8:;8:PG89q;x:J878R:hQ8::M:B;e87bbbbbbjZbbjZbbjZ:E;V;N8::Y:DsZ9i;H;68:xd;R8:;h0838:;W:NoZbbbb:WV9O8:uf888:9i;H;68:9c9G;L89;n;m9m89;D8Ko8:bbbbf:8tZ9m836ZS:2AZL;zPZZ818EZ9e:lxZ;U98F8:819E;68:FFuuFFuuFFuuFFuFFFuFFFuFbc;mqkzebbbebbbdbbb9G:vbb",Q=new Uint8Array([32,0,65,2,1,106,34,33,3,128,11,4,13,64,6,253,10,7,15,116,127,5,8,12,40,16,19,54,20,9,27,255,113,17,42,67,24,23,146,148,18,14,22,45,70,69,56,114,101,21,25,63,75,136,108,28,118,29,73,115]);if(typeof WebAssembly!=="object")return{supported:!1};var B,Y=WebAssembly.instantiate(J(A),{}).then(function(E){B=E.instance,B.exports.__wasm_call_ctors(),B.exports.meshopt_encodeVertexVersion(0),B.exports.meshopt_encodeIndexVersion(1)});function J(E){var K=new Uint8Array(E.length);for(var I=0;I96?V-97:V>64?V-39:V+4}var H=0;for(var I=0;I=3),W(B.exports.meshopt_spatialSortRemap,E,E.length/K,K*4)},encodeVertexBuffer:function(E,K,I){C(I>0&&I<=256),C(I%4==0);var V=B.exports.meshopt_encodeVertexBufferBound(K,I);return F(B.exports.meshopt_encodeVertexBuffer,V,E,K,I)},encodeIndexBuffer:function(E,K,I){C(I==2||I==4),C(K%3==0);var V=U(E,I),H=B.exports.meshopt_encodeIndexBufferBound(K,Z(V)+1);return F(B.exports.meshopt_encodeIndexBuffer,H,V,K,4)},encodeIndexSequence:function(E,K,I){C(I==2||I==4);var V=U(E,I),H=B.exports.meshopt_encodeIndexSequenceBound(K,Z(V)+1);return F(B.exports.meshopt_encodeIndexSequence,H,V,K,4)},encodeGltfBuffer:function(E,K,I,V){var H={ATTRIBUTES:this.encodeVertexBuffer,TRIANGLES:this.encodeIndexBuffer,INDICES:this.encodeIndexSequence};return C(H[V]),H[V](E,K,I)},encodeFilterOct:function(E,K,I,V){return C(I==4||I==8),C(V>=1&&V<=16),$(B.exports.meshopt_encodeFilterOct,E,K,I,V,16)},encodeFilterQuat:function(E,K,I,V){return C(I==8),C(V>=4&&V<=16),$(B.exports.meshopt_encodeFilterQuat,E,K,I,V,16)},encodeFilterExp:function(E,K,I,V,H){C(I>0&&I%4==0),C(V>=1&&V<=24);var D={Separate:0,SharedVector:1,SharedComponent:2,Clamped:3};return $(B.exports.meshopt_encodeFilterExp,E,K,I,V,I,H?D[H]:1)}}}();if(typeof EH==="object"&&typeof dh==="object")dh.exports=u3;else if(typeof define==="function"&&define.amd)define([],function(){return u3});else if(typeof EH==="object")EH.MeshoptEncoder=u3;else(typeof self<"u"?self:EH).MeshoptEncoder=u3});var C1A=R((KH,ch)=>{var d3=function(){var A="b9H79Tebbbe8Fv9Gbb9Gvuuuuueu9Giuuub9Geueu9Giuuueuikqbeeedddillviebeoweuec:W:Odkr;leDo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bb8A9TW79O9V9Wt9F9KW9J9V9KW9wWVtW949c919M9MWVbeY9TW79O9V9Wt9F9KW9J9V9KW69U9KW949c919M9MWVbdE9TW79O9V9Wt9F9KW9J9V9KW69U9KW949tWG91W9U9JWbiL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9p9JtblK9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9r919HtbvL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWVT949Wbol79IV9Rbrq:S86qdbk;jYi5ud9:du8Jjjjjbcj;kb9Rgv8Kjjjjbc9:hodnalTmbcuhoaiRbbgrc;WeGc:Ge9hmbarcsGgwce0mbc9:hoalcufadcd4cbawEgDadfgrcKcaawEgqaraq0Egk6mbaicefhxcj;abad9Uc;WFbGcjdadca0EhmaialfgPar9Rgoadfhsavaoadz1jjjbgzceVhHcbhOdndninaeaO9nmeaPax9RaD6mdamaeaO9RaOamfgoae6EgAcsfglc9WGhCabaOad2fhXaAcethQaxaDfhiaOaeaoaeao6E9RhLalcl4cifcd4hKazcj;cbfaAfhYcbh8AazcjdfhEaHh3incbhodnawTmbaxa8Acd4fRbbhokaocFeGh5cbh8Eazcj;cbfhqinaih8Fdndndndna5a8Ecet4ciGgoc9:fPdebdkaPa8F9RaA6mrazcj;cbfa8EaA2fa8FaAz1jjjb8Aa8FaAfhixdkazcj;cbfa8EaA2fcbaAz:jjjjb8Aa8FhixekaPa8F9RaK6mva8FaKfhidnaCTmbaPai9RcK6mbaocdtc:q1jjbfcj1jjbawEhaczhrcbhlinargoc9Wfghaqfhrdndndndndndnaaa8Fahco4fRbbalcoG4ciGcdtfydbPDbedvivvvlvkar9cb83bbarcwf9cb83bbxlkarcbaiRbdai8Xbb9c:c:qj:bw9:9c:q;c1:I1e:d9c:b:c:e1z9:gg9cjjjjjz:dg8J9qE86bbaqaofgrcGfag9c8F1:NghcKtc8F91aicdfa8J9c8N1:Nfg8KRbbG86bbarcVfcba8KahcjeGcr4fghRbbag9cjjjjjl:dg8J9qE86bbarc7fcbaha8J9c8L1:NfghRbbag9cjjjjjd:dg8J9qE86bbarctfcbaha8J9c8K1:NfghRbbag9cjjjjje:dg8J9qE86bbarc91fcbaha8J9c8J1:NfghRbbag9cjjjj;ab:dg8J9qE86bbarc4fcbaha8J9cg1:NfghRbbag9cjjjja:dg8J9qE86bbarc93fcbaha8J9ch1:NfghRbbag9cjjjjz:dgg9qE86bbarc94fcbahag9ca1:NfghRbbai8Xbe9c:c:qj:bw9:9c:q;c1:I1e:d9c:b:c:e1z9:gg9cjjjjjz:dg8J9qE86bbarc95fag9c8F1:NgicKtc8F91aha8J9c8N1:NfghRbbG86bbarc96fcbahaicjeGcr4fgiRbbag9cjjjjjl:dg8J9qE86bbarc97fcbaia8J9c8L1:NfgiRbbag9cjjjjjd:dg8J9qE86bbarc98fcbaia8J9c8K1:NfgiRbbag9cjjjjje:dg8J9qE86bbarc99fcbaia8J9c8J1:NfgiRbbag9cjjjj;ab:dg8J9qE86bbarc9:fcbaia8J9cg1:NfgiRbbag9cjjjja:dg8J9qE86bbarcufcbaia8J9ch1:NfgiRbbag9cjjjjz:dgg9qE86bbaiag9ca1:NfhixikaraiRblaiRbbghco4g8Ka8KciSg8KE86bbaqaofgrcGfaiclfa8Kfg8KRbbahcl4ciGg8La8LciSg8LE86bbarcVfa8Ka8Lfg8KRbbahcd4ciGg8La8LciSg8LE86bbarc7fa8Ka8Lfg8KRbbahciGghahciSghE86bbarctfa8Kahfg8KRbbaiRbeghco4g8La8LciSg8LE86bbarc91fa8Ka8Lfg8KRbbahcl4ciGg8La8LciSg8LE86bbarc4fa8Ka8Lfg8KRbbahcd4ciGg8La8LciSg8LE86bbarc93fa8Ka8Lfg8KRbbahciGghahciSghE86bbarc94fa8Kahfg8KRbbaiRbdghco4g8La8LciSg8LE86bbarc95fa8Ka8Lfg8KRbbahcl4ciGg8La8LciSg8LE86bbarc96fa8Ka8Lfg8KRbbahcd4ciGg8La8LciSg8LE86bbarc97fa8Ka8Lfg8KRbbahciGghahciSghE86bbarc98fa8KahfghRbbaiRbigico4g8Ka8KciSg8KE86bbarc99faha8KfghRbbaicl4ciGg8Ka8KciSg8KE86bbarc9:faha8KfghRbbaicd4ciGg8Ka8KciSg8KE86bbarcufaha8KfgrRbbaiciGgiaiciSgiE86bbaraifhixdkaraiRbwaiRbbghcl4g8Ka8KcsSg8KE86bbaqaofgrcGfaicwfa8Kfg8KRbbahcsGghahcsSghE86bbarcVfa8KahfghRbbaiRbeg8Kcl4g8La8LcsSg8LE86bbarc7faha8LfghRbba8KcsGg8Ka8KcsSg8KE86bbarctfaha8KfghRbbaiRbdg8Kcl4g8La8LcsSg8LE86bbarc91faha8LfghRbba8KcsGg8Ka8KcsSg8KE86bbarc4faha8KfghRbbaiRbig8Kcl4g8La8LcsSg8LE86bbarc93faha8LfghRbba8KcsGg8Ka8KcsSg8KE86bbarc94faha8KfghRbbaiRblg8Kcl4g8La8LcsSg8LE86bbarc95faha8LfghRbba8KcsGg8Ka8KcsSg8KE86bbarc96faha8KfghRbbaiRbvg8Kcl4g8La8LcsSg8LE86bbarc97faha8LfghRbba8KcsGg8Ka8KcsSg8KE86bbarc98faha8KfghRbbaiRbog8Kcl4g8La8LcsSg8LE86bbarc99faha8LfghRbba8KcsGg8Ka8KcsSg8KE86bbarc9:faha8KfghRbbaiRbrgicl4g8Ka8KcsSg8KE86bbarcufaha8KfgrRbbaicsGgiaicsSgiE86bbaraifhixekarai8Pbb83bbarcwfaicwf8Pbb83bbaiczfhikdnaoaC9pmbalcdfhlaoczfhraPai9RcL0mekkaoaC6moaimexokaCmva8FTmvkaqaAfhqa8Ecefg8Ecl9hmbkdndndndnawTmbasa8Acd4fRbbgociGPlbedrbkaATmdaza8Afh8Fazcj;cbfhhcbh8EaEhaina8FRbbhraahocbhlinaoahalfRbbgqce4cbaqceG9R7arfgr86bbaoadfhoaAalcefgl9hmbkaacefhaa8Fcefh8FahaAfhha8Ecefg8Ecl9hmbxikkaATmeaza8Afhaazcj;cbfhhcbhoceh8EaYh8FinaEaofhlaa8Vbbhrcbhoinala8FaofRbbcwtahaofRbbgqVc;:FiGce4cbaqceG9R7arfgr87bbaladfhlaLaocefgofmbka8FaQfh8FcdhoaacdfhaahaQfhha8EceGhlcbh8EalmbxdkkaATmbcbaocl49Rh8Eaza8AfRbbhqcwhoa3hlinalRbbaotaqVhqalcefhlaocwfgoca9hmbkcbhhaEh8FaYhainazcj;cbfahfRbbhrcwhoaahlinalRbbaotarVhralaAfhlaocwfgoca9hmbkara8E93aq7hqcbhoa8Fhlinalaqao486bbalcefhlaocwfgoca9hmbka8Fadfh8FaacefhaahcefghaA9hmbkkaEclfhEa3clfh3a8Aclfg8Aad6mbkaXazcjdfaAad2z1jjjb8AazazcjdfaAcufad2fadz1jjjb8AaAaOfhOaihxaimbkc9:hoxdkcbc99aPax9RakSEhoxekc9:hokavcj;kbf8Kjjjjbaok:XseHu8Jjjjjbc;ae9Rgv8Kjjjjbc9:hodnaeci9UgrcHfal0mbcuhoaiRbbgwc;WeGc;Ge9hmbawcsGgDce0mbavc;abfcFecjez:jjjjb8AavcUf9cu83ibavc8Wf9cu83ibavcyf9cu83ibavcaf9cu83ibavcKf9cu83ibavczf9cu83ibav9cu83iwav9cu83ibaialfc9WfhqaicefgwarfhldnaeTmbcmcsaDceSEhkcbhxcbhmcbhrcbhicbhoindnalaq9nmbc9:hoxikdndnawRbbgDc;Ve0mbavc;abfaoaDcu7gPcl4fcsGcitfgsydlhzasydbhHdndnaDcsGgsak9pmbavaiaPfcsGcdtfydbaxasEhDaxasTgOfhxxekdndnascsSmbcehOasc987asamffcefhDxekalcefhDal8SbbgscFeGhPdndnascu9mmbaDhlxekalcvfhlaPcFbGhPcrhsdninaD8SbbgOcFbGastaPVhPaOcu9kmeaDcefhDascrfgsc8J9hmbxdkkaDcefhlkcehOaPce4cbaPceG9R7amfhDkaDhmkavc;abfaocitfgsaDBdbasazBdlavaicdtfaDBdbavc;abfaocefcsGcitfgsaHBdbasaDBdlaocdfhoaOaifhidnadcd9hmbabarcetfgsaH87ebasclfaD87ebascdfaz87ebxdkabarcdtfgsaHBdbascwfaDBdbasclfazBdbxekdnaDcpe0mbaxcefgOavaiaqaDcsGfRbbgscl49RcsGcdtfydbascz6gPEhDavaias9RcsGcdtfydbaOaPfgzascsGgOEhsaOThOdndnadcd9hmbabarcetfgHax87ebaHclfas87ebaHcdfaD87ebxekabarcdtfgHaxBdbaHcwfasBdbaHclfaDBdbkavaicdtfaxBdbavc;abfaocitfgHaDBdbaHaxBdlavaicefgicsGcdtfaDBdbavc;abfaocefcsGcitfgHasBdbaHaDBdlavaiaPfgicsGcdtfasBdbavc;abfaocdfcsGcitfgDaxBdbaDasBdlaocifhoaiaOfhiazaOfhxxekaxcbalRbbgHEgAaDc;:eSgDfhzaHcsGhCaHcl4hXdndnaHcs0mbazcefhOxekazhOavaiaX9RcsGcdtfydbhzkdndnaCmbaOcefhxxekaOhxavaiaH9RcsGcdtfydbhOkdndnaDTmbalcefhDxekalcdfhDal8SbegPcFeGhsdnaPcu9kmbalcofhAascFbGhscrhldninaD8SbbgPcFbGaltasVhsaPcu9kmeaDcefhDalcrfglc8J9hmbkaAhDxekaDcefhDkasce4cbasceG9R7amfgmhAkdndnaXcsSmbaDhsxekaDcefhsaD8SbbglcFeGhPdnalcu9kmbaDcvfhzaPcFbGhPcrhldninas8SbbgDcFbGaltaPVhPaDcu9kmeascefhsalcrfglc8J9hmbkazhsxekascefhskaPce4cbaPceG9R7amfgmhzkdndnaCcsSmbashlxekascefhlas8SbbgDcFeGhPdnaDcu9kmbascvfhOaPcFbGhPcrhDdninal8SbbgscFbGaDtaPVhPascu9kmealcefhlaDcrfgDc8J9hmbkaOhlxekalcefhlkaPce4cbaPceG9R7amfgmhOkdndnadcd9hmbabarcetfgDaA87ebaDclfaO87ebaDcdfaz87ebxekabarcdtfgDaABdbaDcwfaOBdbaDclfazBdbkavc;abfaocitfgDazBdbaDaABdlavaicdtfaABdbavc;abfaocefcsGcitfgDaOBdbaDazBdlavaicefgicsGcdtfazBdbavc;abfaocdfcsGcitfgDaABdbaDaOBdlavaiaHcz6aXcsSVfgicsGcdtfaOBdbaiaCTaCcsSVfhiaocifhokawcefhwaocsGhoaicsGhiarcifgrae6mbkkcbc99alaqSEhokavc;aef8Kjjjjbaok:clevu8Jjjjjbcz9Rhvdnaecvfal9nmbc9:skdnaiRbbc;:eGc;qeSmbcuskav9cb83iwaicefhoaialfc98fhrdnaeTmbdnadcdSmbcbhwindnaoar6mbc9:skaocefhlao8SbbgicFeGhddndnaicu9mmbalhoxekaocvfhoadcFbGhdcrhidninal8SbbgDcFbGaitadVhdaDcu9kmealcefhlaicrfgic8J9hmbxdkkalcefhokabawcdtfadc8Etc8F91adcd47avcwfadceGcdtVglydbfgiBdbalaiBdbawcefgwae9hmbxdkkcbhwindnaoar6mbc9:skaocefhlao8SbbgicFeGhddndnaicu9mmbalhoxekaocvfhoadcFbGhdcrhidninal8SbbgDcFbGaitadVhdaDcu9kmealcefhlaicrfgic8J9hmbxdkkalcefhokabawcetfadc8Etc8F91adcd47avcwfadceGcdtVglydbfgi87ebalaiBdbawcefgwae9hmbkkcbc99aoarSEk:Lvoeue99dud99eud99dndnadcl9hmbaeTmeindndnabcdfgd8Sbb:Yab8Sbbgi:Ygl:l:tabcefgv8Sbbgo:Ygr:l:tgwJbb;:9cawawNJbbbbawawJbbbb9GgDEgq:mgkaqaicb9iEalMgwawNakaqaocb9iEarMgqaqNMM:r:vglNJbbbZJbbb:;aDEMgr:lJbbb9p9DTmbar:Ohixekcjjjj94hikadai86bbdndnaqalNJbbbZJbbb:;aqJbbbb9GEMgq:lJbbb9p9DTmbaq:Ohdxekcjjjj94hdkavad86bbdndnawalNJbbbZJbbb:;awJbbbb9GEMgw:lJbbb9p9DTmbaw:Ohdxekcjjjj94hdkabad86bbabclfhbaecufgembxdkkaeTmbindndnabclfgd8Ueb:Yab8Uebgi:Ygl:l:tabcdfgv8Uebgo:Ygr:l:tgwJb;:FSawawNJbbbbawawJbbbb9GgDEgq:mgkaqaicb9iEalMgwawNakaqaocb9iEarMgqaqNMM:r:vglNJbbbZJbbb:;aDEMgr:lJbbb9p9DTmbar:Ohixekcjjjj94hikadai87ebdndnaqalNJbbbZJbbb:;aqJbbbb9GEMgq:lJbbb9p9DTmbaq:Ohdxekcjjjj94hdkavad87ebdndnawalNJbbbZJbbb:;awJbbbb9GEMgw:lJbbb9p9DTmbaw:Ohdxekcjjjj94hdkabad87ebabcwfhbaecufgembkkk;oiliui99iue99dnaeTmbcbhiabhlindndnJ;Zl81Zalcof8UebgvciV:Y:vgoal8Ueb:YNgrJb;:FSNJbbbZJbbb:;arJbbbb9GEMgw:lJbbb9p9DTmbaw:OhDxekcjjjj94hDkalclf8Uebhqalcdf8UebhkabaiavcefciGfcetfaD87ebdndnaoak:YNgwJb;:FSNJbbbZJbbb:;awJbbbb9GEMgx:lJbbb9p9DTmbax:OhDxekcjjjj94hDkabaiavciGfgkcd7cetfaD87ebdndnaoaq:YNgoJb;:FSNJbbbZJbbb:;aoJbbbb9GEMgx:lJbbb9p9DTmbax:OhDxekcjjjj94hDkabaiavcufciGfcetfaD87ebdndnJbbjZararN:tawawN:taoaoN:tgrJbbbbarJbbbb9GE:rJb;:FSNJbbbZMgr:lJbbb9p9DTmbar:Ohvxekcjjjj94hvkabakcetfav87ebalcwfhlaiclfhiaecufgembkkk9mbdnadcd4ae2gdTmbinababydbgecwtcw91:Yaece91cjjj98Gcjjj;8if::NUdbabclfhbadcufgdmbkkk9teiucbcbyd:K1jjbgeabcifc98GfgbBd:K1jjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik;teeeudndnaeabVciGTmbabhixekdndnadcz9pmbabhixekabhiinaiaeydbBdbaiaeydlBdlaiaeydwBdwaiaeydxBdxaeczfheaiczfhiadc9Wfgdcs0mbkkadcl6mbinaiaeydbBdbaeclfheaiclfhiadc98fgdci0mbkkdnadTmbinaiaeRbb86bbaicefhiaecefheadcufgdmbkkabk:3eedudndnabciGTmbabhixekaecFeGc:b:c:ew2hldndnadcz9pmbabhixekabhiinaialBdxaialBdwaialBdlaialBdbaiczfhiadc9Wfgdcs0mbkkadcl6mbinaialBdbaiclfhiadc98fgdci0mbkkdnadTmbinaiae86bbaicefhiadcufgdmbkkabkk81dbcjwk8Kbbbbdbbblbbbwbbbbbbbebbbdbbblbbbwbbbbc:Kwkl8WNbb",Q="b9H79TebbbeKl9Gbb9Gvuuuuueu9Giuuub9Geueuikqbbebeedddilve9Weeeviebeoweuec:q:6dkr;leDo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bb8A9TW79O9V9Wt9F9KW9J9V9KW9wWVtW949c919M9MWVbdY9TW79O9V9Wt9F9KW9J9V9KW69U9KW949c919M9MWVblE9TW79O9V9Wt9F9KW9J9V9KW69U9KW949tWG91W9U9JWbvL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9p9JtboK9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9r919HtbrL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWVT949Wbwl79IV9RbDq;G9Mqlbzik9:evu8Jjjjjbcz9Rhbcbheincbhdcbhiinabcwfadfaicjuaead4ceGglE86bbaialfhiadcefgdcw9hmbkaec:q:yjjbfai86bbaecitc:q1jjbfab8Piw83ibaecefgecjd9hmbkk:183lYud97dur978Jjjjjbcj;kb9Rgv8Kjjjjbc9:hodnalTmbcuhoaiRbbgrc;WeGc:Ge9hmbarcsGgwce0mbc9:hoalcufadcd4cbawEgDadfgrcKcaawEgqaraq0Egk6mbaicefhxavaialfgmar9Rgoad;8qbbcj;abad9Uc;WFbGcjdadca0EhPdndndnadTmbaoadfhscbhzinaeaz9nmdamax9RaD6miabazad2fhHaxaDfhOaPaeaz9RazaPfae6EgAcsfgocl4cifcd4hCavcj;cbfaoc9WGgXcetfhQavcj;cbfaXci2fhLavcj;cbfaXfhKcbhYaoc;ab6h8AincbhodnawTmbaxaYcd4fRbbhokaocFeGhEcbh3avcj;cbfh5indndndndnaEa3cet4ciGgoc9:fPdebdkamaO9RaX6mwavcj;cbfa3aX2faOaX;8qbbaOaAfhOxdkavcj;cbfa3aX2fcbaX;8kbxekamaO9RaC6moaoclVcbawEhraOaCfhocbhidna8Ambamao9Rc;Gb6mbcbhlina5alfhidndndndndndnaOalco4fRbbgqciGarfPDbedibledibkaipxbbbbbbbbbbbbbbbbpklbxlkaiaopbblaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLg8Ecdp:mea8EpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9og8Fpxiiiiiiiiiiiiiiiip8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaaaoclffahc:q:yjjbfRbbfhoxikaiaopbbwaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9og8Fpxssssssssssssssssp8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaaaocwffahc:q:yjjbfRbbfhoxdkaiaopbbbpklbaoczfhoxekaiaopbbdaoRbbgacitc:q1jjbfpbibaac:q:yjjbfRbbgapsaoRbeghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPpklbaaaocdffahc:q:yjjbfRbbfhokdndndndndndnaqcd4ciGarfPDbedibledibkaiczfpxbbbbbbbbbbbbbbbbpklbxlkaiczfaopbblaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLg8Ecdp:mea8EpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9og8Fpxiiiiiiiiiiiiiiiip8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaaaoclffahc:q:yjjbfRbbfhoxikaiczfaopbbwaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9og8Fpxssssssssssssssssp8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaaaocwffahc:q:yjjbfRbbfhoxdkaiczfaopbbbpklbaoczfhoxekaiczfaopbbdaoRbbgacitc:q1jjbfpbibaac:q:yjjbfRbbgapsaoRbeghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPpklbaaaocdffahc:q:yjjbfRbbfhokdndndndndndnaqcl4ciGarfPDbedibledibkaicafpxbbbbbbbbbbbbbbbbpklbxlkaicafaopbblaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLg8Ecdp:mea8EpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9og8Fpxiiiiiiiiiiiiiiiip8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaaaoclffahc:q:yjjbfRbbfhoxikaicafaopbbwaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9og8Fpxssssssssssssssssp8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaaaocwffahc:q:yjjbfRbbfhoxdkaicafaopbbbpklbaoczfhoxekaicafaopbbdaoRbbgacitc:q1jjbfpbibaac:q:yjjbfRbbgapsaoRbeghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPpklbaaaocdffahc:q:yjjbfRbbfhokdndndndndndnaqco4arfPDbedibledibkaic8Wfpxbbbbbbbbbbbbbbbbpklbxlkaic8Wfaopbblaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLg8Ecdp:mea8EpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9og8Fpxiiiiiiiiiiiiiiiip8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngicitc:q1jjbfpbibaic:q:yjjbfRbbgipsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Ngqcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaiaoclffaqc:q:yjjbfRbbfhoxikaic8Wfaopbbwaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9og8Fpxssssssssssssssssp8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngicitc:q1jjbfpbibaic:q:yjjbfRbbgipsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Ngqcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaiaocwffaqc:q:yjjbfRbbfhoxdkaic8Wfaopbbbpklbaoczfhoxekaic8WfaopbbdaoRbbgicitc:q1jjbfpbibaic:q:yjjbfRbbgipsaoRbegqcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPpklbaiaocdffaqc:q:yjjbfRbbfhokalc;abfhialcjefaX0meaihlamao9Rc;Fb0mbkkdnaiaX9pmbaici4hlinamao9RcK6mwa5aifhqdndndndndndnaOaico4fRbbalcoG4ciGarfPDbedibledibkaqpxbbbbbbbbbbbbbbbbpkbbxlkaqaopbblaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLg8Ecdp:mea8EpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9og8Fpxiiiiiiiiiiiiiiiip8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spkbbaaaoclffahc:q:yjjbfRbbfhoxikaqaopbbwaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9og8Fpxssssssssssssssssp8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spkbbaaaocwffahc:q:yjjbfRbbfhoxdkaqaopbbbpkbbaoczfhoxekaqaopbbdaoRbbgacitc:q1jjbfpbibaac:q:yjjbfRbbgapsaoRbeghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPpkbbaaaocdffahc:q:yjjbfRbbfhokalcdfhlaiczfgiaX6mbkkaohOaoTmoka5aXfh5a3cefg3cl9hmbkdndndndnawTmbasaYcd4fRbbglciGPlbedwbkaXTmdavcjdfaYfhlavaYfpbdbhgcbhoinalavcj;cbfaofpblbg8JaKaofpblbg8KpmbzeHdOiAlCvXoQrLg8LaQaofpblbg8MaLaofpblbg8NpmbzeHdOiAlCvXoQrLgypmbezHdiOAlvCXorQLg8Ecep9Ta8Epxeeeeeeeeeeeeeeeeg8Fp9op9Hp9rg8Eagp9Uggp9Abbbaladfglaga8Ea8Epmlvorlvorlvorlvorp9Uggp9Abbbaladfglaga8Ea8EpmwDqkwDqkwDqkwDqkp9Uggp9Abbbaladfglaga8Ea8EpmxmPsxmPsxmPsxmPsp9Uggp9Abbbaladfglaga8LaypmwDKYqk8AExm35Ps8E8Fg8Ecep9Ta8Ea8Fp9op9Hp9rg8Ep9Uggp9Abbbaladfglaga8Ea8Epmlvorlvorlvorlvorp9Uggp9Abbbaladfglaga8Ea8EpmwDqkwDqkwDqkwDqkp9Uggp9Abbbaladfglaga8Ea8EpmxmPsxmPsxmPsxmPsp9Uggp9Abbbaladfglaga8Ja8KpmwKDYq8AkEx3m5P8Es8Fg8Ja8Ma8NpmwKDYq8AkEx3m5P8Es8Fg8KpmbezHdiOAlvCXorQLg8Ecep9Ta8Ea8Fp9op9Hp9rg8Ep9Uggp9Abbbaladfglaga8Ea8Epmlvorlvorlvorlvorp9Uggp9Abbbaladfglaga8Ea8EpmwDqkwDqkwDqkwDqkp9Uggp9Abbbaladfglaga8Ea8EpmxmPsxmPsxmPsxmPsp9Uggp9Abbbaladfglaga8Ja8KpmwDKYqk8AExm35Ps8E8Fg8Ecep9Ta8Ea8Fp9op9Hp9rg8Ep9Ug8Fp9Abbbaladfgla8Fa8Ea8Epmlvorlvorlvorlvorp9Ug8Fp9Abbbaladfgla8Fa8Ea8EpmwDqkwDqkwDqkwDqkp9Ug8Fp9Abbbaladfgla8Fa8Ea8EpmxmPsxmPsxmPsxmPsp9Uggp9AbbbaladfhlaoczfgoaX6mbxikkaXTmeavcjdfaYfhlavaYfpbdbhgcbhoinalavcj;cbfaofpblbg8JaKaofpblbg8KpmbzeHdOiAlCvXoQrLg8LaQaofpblbg8MaLaofpblbg8NpmbzeHdOiAlCvXoQrLgypmbezHdiOAlvCXorQLg8Ecep:nea8Epxebebebebebebebebg8Fp9op:bep9rg8Eagp:oeggp9Abbbaladfglaga8Ea8Epmlvorlvorlvorlvorp:oeggp9Abbbaladfglaga8Ea8EpmwDqkwDqkwDqkwDqkp:oeggp9Abbbaladfglaga8Ea8EpmxmPsxmPsxmPsxmPsp:oeggp9Abbbaladfglaga8LaypmwDKYqk8AExm35Ps8E8Fg8Ecep:nea8Ea8Fp9op:bep9rg8Ep:oeggp9Abbbaladfglaga8Ea8Epmlvorlvorlvorlvorp:oeggp9Abbbaladfglaga8Ea8EpmwDqkwDqkwDqkwDqkp:oeggp9Abbbaladfglaga8Ea8EpmxmPsxmPsxmPsxmPsp:oeggp9Abbbaladfglaga8Ja8KpmwKDYq8AkEx3m5P8Es8Fg8Ja8Ma8NpmwKDYq8AkEx3m5P8Es8Fg8KpmbezHdiOAlvCXorQLg8Ecep:nea8Ea8Fp9op:bep9rg8Ep:oeggp9Abbbaladfglaga8Ea8Epmlvorlvorlvorlvorp:oeggp9Abbbaladfglaga8Ea8EpmwDqkwDqkwDqkwDqkp:oeggp9Abbbaladfglaga8Ea8EpmxmPsxmPsxmPsxmPsp:oeggp9Abbbaladfglaga8Ja8KpmwDKYqk8AExm35Ps8E8Fg8Ecep:nea8Ea8Fp9op:bep9rg8Ep:oeg8Fp9Abbbaladfgla8Fa8Ea8Epmlvorlvorlvorlvorp:oeg8Fp9Abbbaladfgla8Fa8Ea8EpmwDqkwDqkwDqkwDqkp:oeg8Fp9Abbbaladfgla8Fa8Ea8EpmxmPsxmPsxmPsxmPsp:oeggp9AbbbaladfhlaoczfgoaX6mbxdkkaXTmbcbhocbalcl4gl9Rc8FGhiavcjdfaYfhravaYfpbdbh8Finaravcj;cbfaofpblbggaKaofpblbg8JpmbzeHdOiAlCvXoQrLg8KaQaofpblbg8LaLaofpblbg8MpmbzeHdOiAlCvXoQrLg8NpmbezHdiOAlvCXorQLg8Eaip:Rea8Ealp:Sep9qg8Ea8Fp9rg8Fp9Abbbaradfgra8Fa8Ea8Epmlvorlvorlvorlvorp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmwDqkwDqkwDqkwDqkp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmxmPsxmPsxmPsxmPsp9rg8Fp9Abbbaradfgra8Fa8Ka8NpmwDKYqk8AExm35Ps8E8Fg8Eaip:Rea8Ealp:Sep9qg8Ep9rg8Fp9Abbbaradfgra8Fa8Ea8Epmlvorlvorlvorlvorp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmwDqkwDqkwDqkwDqkp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmxmPsxmPsxmPsxmPsp9rg8Fp9Abbbaradfgra8Faga8JpmwKDYq8AkEx3m5P8Es8Fgga8La8MpmwKDYq8AkEx3m5P8Es8Fg8JpmbezHdiOAlvCXorQLg8Eaip:Rea8Ealp:Sep9qg8Ep9rg8Fp9Abbbaradfgra8Fa8Ea8Epmlvorlvorlvorlvorp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmwDqkwDqkwDqkwDqkp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmxmPsxmPsxmPsxmPsp9rg8Fp9Abbbaradfgra8Faga8JpmwDKYqk8AExm35Ps8E8Fg8Eaip:Rea8Ealp:Sep9qg8Ep9rg8Fp9Abbbaradfgra8Fa8Ea8Epmlvorlvorlvorlvorp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmwDqkwDqkwDqkwDqkp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmxmPsxmPsxmPsxmPsp9rg8Fp9AbbbaradfhraoczfgoaX6mbkkaYclfgYad6mbkaHavcjdfaAad2;8qbbavavcjdfaAcufad2fad;8qbbaAazfhzc9:hoaOhxaOmbxlkkaeTmbaDalfhrcbhocuhlinaralaD9RglfaD6mdaPaeao9RaoaPfae6Eaofgoae6mbkaial9Rhxkcbc99amax9RakSEhoxekc9:hokavcj;kbf8Kjjjjbaokwbz:bjjjbk:TseHu8Jjjjjbc;ae9Rgv8Kjjjjbc9:hodnaeci9UgrcHfal0mbcuhoaiRbbgwc;WeGc;Ge9hmbawcsGgDce0mbavc;abfcFecje;8kbavcUf9cu83ibavc8Wf9cu83ibavcyf9cu83ibavcaf9cu83ibavcKf9cu83ibavczf9cu83ibav9cu83iwav9cu83ibaialfc9WfhqaicefgwarfhldnaeTmbcmcsaDceSEhkcbhxcbhmcbhrcbhicbhoindnalaq9nmbc9:hoxikdndnawRbbgDc;Ve0mbavc;abfaoaDcu7gPcl4fcsGcitfgsydlhzasydbhHdndnaDcsGgsak9pmbavaiaPfcsGcdtfydbaxasEhDaxasTgOfhxxekdndnascsSmbcehOasc987asamffcefhDxekalcefhDal8SbbgscFeGhPdndnascu9mmbaDhlxekalcvfhlaPcFbGhPcrhsdninaD8SbbgOcFbGastaPVhPaOcu9kmeaDcefhDascrfgsc8J9hmbxdkkaDcefhlkcehOaPce4cbaPceG9R7amfhDkaDhmkavc;abfaocitfgsaDBdbasazBdlavaicdtfaDBdbavc;abfaocefcsGcitfgsaHBdbasaDBdlaocdfhoaOaifhidnadcd9hmbabarcetfgsaH87ebasclfaD87ebascdfaz87ebxdkabarcdtfgsaHBdbascwfaDBdbasclfazBdbxekdnaDcpe0mbaxcefgOavaiaqaDcsGfRbbgscl49RcsGcdtfydbascz6gPEhDavaias9RcsGcdtfydbaOaPfgzascsGgOEhsaOThOdndnadcd9hmbabarcetfgHax87ebaHclfas87ebaHcdfaD87ebxekabarcdtfgHaxBdbaHcwfasBdbaHclfaDBdbkavaicdtfaxBdbavc;abfaocitfgHaDBdbaHaxBdlavaicefgicsGcdtfaDBdbavc;abfaocefcsGcitfgHasBdbaHaDBdlavaiaPfgicsGcdtfasBdbavc;abfaocdfcsGcitfgDaxBdbaDasBdlaocifhoaiaOfhiazaOfhxxekaxcbalRbbgHEgAaDc;:eSgDfhzaHcsGhCaHcl4hXdndnaHcs0mbazcefhOxekazhOavaiaX9RcsGcdtfydbhzkdndnaCmbaOcefhxxekaOhxavaiaH9RcsGcdtfydbhOkdndnaDTmbalcefhDxekalcdfhDal8SbegPcFeGhsdnaPcu9kmbalcofhAascFbGhscrhldninaD8SbbgPcFbGaltasVhsaPcu9kmeaDcefhDalcrfglc8J9hmbkaAhDxekaDcefhDkasce4cbasceG9R7amfgmhAkdndnaXcsSmbaDhsxekaDcefhsaD8SbbglcFeGhPdnalcu9kmbaDcvfhzaPcFbGhPcrhldninas8SbbgDcFbGaltaPVhPaDcu9kmeascefhsalcrfglc8J9hmbkazhsxekascefhskaPce4cbaPceG9R7amfgmhzkdndnaCcsSmbashlxekascefhlas8SbbgDcFeGhPdnaDcu9kmbascvfhOaPcFbGhPcrhDdninal8SbbgscFbGaDtaPVhPascu9kmealcefhlaDcrfgDc8J9hmbkaOhlxekalcefhlkaPce4cbaPceG9R7amfgmhOkdndnadcd9hmbabarcetfgDaA87ebaDclfaO87ebaDcdfaz87ebxekabarcdtfgDaABdbaDcwfaOBdbaDclfazBdbkavc;abfaocitfgDazBdbaDaABdlavaicdtfaABdbavc;abfaocefcsGcitfgDaOBdbaDazBdlavaicefgicsGcdtfazBdbavc;abfaocdfcsGcitfgDaABdbaDaOBdlavaiaHcz6aXcsSVfgicsGcdtfaOBdbaiaCTaCcsSVfhiaocifhokawcefhwaocsGhoaicsGhiarcifgrae6mbkkcbc99alaqSEhokavc;aef8Kjjjjbaok:clevu8Jjjjjbcz9Rhvdnaecvfal9nmbc9:skdnaiRbbc;:eGc;qeSmbcuskav9cb83iwaicefhoaialfc98fhrdnaeTmbdnadcdSmbcbhwindnaoar6mbc9:skaocefhlao8SbbgicFeGhddndnaicu9mmbalhoxekaocvfhoadcFbGhdcrhidninal8SbbgDcFbGaitadVhdaDcu9kmealcefhlaicrfgic8J9hmbxdkkalcefhokabawcdtfadc8Etc8F91adcd47avcwfadceGcdtVglydbfgiBdbalaiBdbawcefgwae9hmbxdkkcbhwindnaoar6mbc9:skaocefhlao8SbbgicFeGhddndnaicu9mmbalhoxekaocvfhoadcFbGhdcrhidninal8SbbgDcFbGaitadVhdaDcu9kmealcefhlaicrfgic8J9hmbxdkkalcefhokabawcetfadc8Etc8F91adcd47avcwfadceGcdtVglydbfgi87ebalaiBdbawcefgwae9hmbkkcbc99aoarSEk:SPliuo97eue978Jjjjjbca9Rhiaec98Ghldndnadcl9hmbdnalTmbcbhvabhdinadadpbbbgocKp:RecKp:Sep;6egraocwp:RecKp:Sep;6earp;Geaoczp:RecKp:Sep;6egwp;Gep;Kep;LegDpxbbbbbbbbbbbbbbbbp:2egqarpxbbbjbbbjbbbjbbbjgkp9op9rp;Kegrpxbb;:9cbb;:9cbb;:9cbb;:9cararp;MeaDaDp;Meawaqawakp9op9rp;Kegrarp;Mep;Kep;Kep;Jep;Negwp;Mepxbbn0bbn0bbn0bbn0gqp;KepxFbbbFbbbFbbbFbbbp9oaopxbbbFbbbFbbbFbbbFp9op9qarawp;Meaqp;Kecwp:RepxbFbbbFbbbFbbbFbbp9op9qaDawp;Meaqp;Keczp:RepxbbFbbbFbbbFbbbFbp9op9qpkbbadczfhdavclfgval6mbkkalaeSmeaipxbbbbbbbbbbbbbbbbgqpklbaiabalcdtfgdaeciGglcdtgv;8qbbdnalTmbaiaipblbgocKp:RecKp:Sep;6egraocwp:RecKp:Sep;6earp;Geaoczp:RecKp:Sep;6egwp;Gep;Kep;LegDaqp:2egqarpxbbbjbbbjbbbjbbbjgkp9op9rp;Kegrpxbb;:9cbb;:9cbb;:9cbb;:9cararp;MeaDaDp;Meawaqawakp9op9rp;Kegrarp;Mep;Kep;Kep;Jep;Negwp;Mepxbbn0bbn0bbn0bbn0gqp;KepxFbbbFbbbFbbbFbbbp9oaopxbbbFbbbFbbbFbbbFp9op9qarawp;Meaqp;Kecwp:RepxbFbbbFbbbFbbbFbbp9op9qaDawp;Meaqp;Keczp:RepxbbFbbbFbbbFbbbFbp9op9qpklbkadaiav;8qbbskdnalTmbcbhvabhdinadczfgxaxpbbbgopxbbbbbbFFbbbbbbFFgkp9oadpbbbgDaopmbediwDqkzHOAKY8AEgwczp:Reczp:Sep;6egraDaopmlvorxmPsCXQL358E8FpxFubbFubbFubbFubbp9op;7eawczp:Sep;6egwp;Gearp;Gep;Kep;Legopxbbbbbbbbbbbbbbbbp:2egqarpxbbbjbbbjbbbjbbbjgmp9op9rp;Kegrpxb;:FSb;:FSb;:FSb;:FSararp;Meaoaop;Meawaqawamp9op9rp;Kegrarp;Mep;Kep;Kep;Jep;Negwp;Mepxbbn0bbn0bbn0bbn0gqp;KepxFFbbFFbbFFbbFFbbp9oaoawp;Meaqp;Keczp:Rep9qgoarawp;Meaqp;KepxFFbbFFbbFFbbFFbbp9ogrpmwDKYqk8AExm35Ps8E8Fp9qpkbbadaDakp9oaoarpmbezHdiOAlvCXorQLp9qpkbbadcafhdavclfgval6mbkkalaeSmbaiczfpxbbbbbbbbbbbbbbbbgopklbaiaopklbaiabalcitfgdaeciGglcitgv;8qbbdnalTmbaiaipblzgopxbbbbbbFFbbbbbbFFgkp9oaipblbgDaopmbediwDqkzHOAKY8AEgwczp:Reczp:Sep;6egraDaopmlvorxmPsCXQL358E8FpxFubbFubbFubbFubbp9op;7eawczp:Sep;6egwp;Gearp;Gep;Kep;Legopxbbbbbbbbbbbbbbbbp:2egqarpxbbbjbbbjbbbjbbbjgmp9op9rp;Kegrpxb;:FSb;:FSb;:FSb;:FSararp;Meaoaop;Meawaqawamp9op9rp;Kegrarp;Mep;Kep;Kep;Jep;Negwp;Mepxbbn0bbn0bbn0bbn0gqp;KepxFFbbFFbbFFbbFFbbp9oaoawp;Meaqp;Keczp:Rep9qgoarawp;Meaqp;KepxFFbbFFbbFFbbFFbbp9ogrpmwDKYqk8AExm35Ps8E8Fp9qpklzaiaDakp9oaoarpmbezHdiOAlvCXorQLp9qpklbkadaiav;8qbbkk:oDllue97euv978Jjjjjbc8W9Rhidnaec98GglTmbcbhvabhoinaiaopbbbgraoczfgwpbbbgDpmlvorxmPsCXQL358E8Fgqczp:Segkclp:RepklbaopxbbjZbbjZbbjZbbjZpx;Zl81Z;Zl81Z;Zl81Z;Zl81Zakpxibbbibbbibbbibbbp9qp;6ep;NegkaraDpmbediwDqkzHOAKY8AEgrczp:Reczp:Sep;6ep;MegDaDp;Meakarczp:Sep;6ep;Megxaxp;Meakaqczp:Reczp:Sep;6ep;Megqaqp;Mep;Kep;Kep;Lepxbbbbbbbbbbbbbbbbp:4ep;Jepxb;:FSb;:FSb;:FSb;:FSgkp;Mepxbbn0bbn0bbn0bbn0grp;KepxFFbbFFbbFFbbFFbbgmp9oaxakp;Mearp;Keczp:Rep9qgxaDakp;Mearp;Keamp9oaqakp;Mearp;Keczp:Rep9qgkpmbezHdiOAlvCXorQLgrp5baipblbpEb:T:j83ibaocwfarp5eaipblbpEe:T:j83ibawaxakpmwDKYqk8AExm35Ps8E8Fgkp5baipblbpEd:T:j83ibaocKfakp5eaipblbpEi:T:j83ibaocafhoavclfgval6mbkkdnalaeSmbaiczfpxbbbbbbbbbbbbbbbbgkpklbaiakpklbaiabalcitfgoaeciGgvcitgw;8qbbdnavTmbaiaipblbgraipblzgDpmlvorxmPsCXQL358E8Fgqczp:Segkclp:RepklaaipxbbjZbbjZbbjZbbjZpx;Zl81Z;Zl81Z;Zl81Z;Zl81Zakpxibbbibbbibbbibbbp9qp;6ep;NegkaraDpmbediwDqkzHOAKY8AEgrczp:Reczp:Sep;6ep;MegDaDp;Meakarczp:Sep;6ep;Megxaxp;Meakaqczp:Reczp:Sep;6ep;Megqaqp;Mep;Kep;Kep;Lepxbbbbbbbbbbbbbbbbp:4ep;Jepxb;:FSb;:FSb;:FSb;:FSgkp;Mepxbbn0bbn0bbn0bbn0grp;KepxFFbbFFbbFFbbFFbbgmp9oaxakp;Mearp;Keczp:Rep9qgxaDakp;Mearp;Keamp9oaqakp;Mearp;Keczp:Rep9qgkpmbezHdiOAlvCXorQLgrp5baipblapEb:T:j83ibaiarp5eaipblapEe:T:j83iwaiaxakpmwDKYqk8AExm35Ps8E8Fgkp5baipblapEd:T:j83izaiakp5eaipblapEi:T:j83iKkaoaiaw;8qbbkk;uddiue978Jjjjjbc;ab9Rhidnadcd4ae2glc98GgvTmbcbheabhdinadadpbbbgocwp:Recwp:Sep;6eaocep:SepxbbjFbbjFbbjFbbjFp9opxbbjZbbjZbbjZbbjZp:Uep;Mepkbbadczfhdaeclfgeav6mbkkdnavalSmbaic8WfpxbbbbbbbbbbbbbbbbgopklbaicafaopklbaiczfaopklbaiaopklbaiabavcdtfgdalciGgecdtgv;8qbbdnaeTmbaiaipblbgocwp:Recwp:Sep;6eaocep:SepxbbjFbbjFbbjFbbjFp9opxbbjZbbjZbbjZbbjZp:Uep;Mepklbkadaiav;8qbbkk9teiucbcbydj1jjbgeabcifc98GfgbBdj1jjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaikkkebcjwklz:Dbb",B=new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,3,2,0,0,5,3,1,0,1,12,1,0,10,22,2,12,0,65,0,65,0,65,0,252,10,0,0,11,7,0,65,0,253,15,26,11]),Y=new Uint8Array([32,0,65,2,1,106,34,33,3,128,11,4,13,64,6,253,10,7,15,116,127,5,8,12,40,16,19,54,20,9,27,255,113,17,42,67,24,23,146,148,18,14,22,45,70,69,56,114,101,21,25,63,75,136,108,28,118,29,73,115]);if(typeof WebAssembly!=="object")return{supported:!1};var J=WebAssembly.validate(B)?G(Q):G(A),C,X=WebAssembly.instantiate(J,{}).then(function(H){C=H.instance,C.exports.__wasm_call_ctors()});function G(H){var D=new Uint8Array(H.length);for(var L=0;L96?z-97:z>64?z-39:z+4}var M=0;for(var L=0;L0)return I(H,D,L,Z[z],F[M]);return X.then(function(){var N=new Uint8Array(H*D);return W(C,C.exports[Z[z]],N,H,D,L,C.exports[F[M]]),N})}}}();if(typeof KH==="object"&&typeof ch==="object")ch.exports=d3;else if(typeof define==="function"&&define.amd)define([],function(){return d3});else if(typeof KH==="object")KH.MeshoptDecoder=d3;else(typeof self<"u"?self:KH).MeshoptDecoder=d3});var X1A=R((VH,lh)=>{var c3=function(){var A="b9H79Tebbbetm9Geueu9Geub9Gbb9Gsuuuuuuuuuuuu99uueu9Gvuuuuub9Gruuuuuuub9Gvuuuuue999Gvuuuuueu9Gquuuuuuu99uueu9Gwuuuuuu99ueu9Giuuue999Gluuuueu9GiuuueuiOHdilvorlwiDqkbxxbelve9Weiiviebeoweuec:G:Pdkr:Tewo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bbz9TW79O9V9Wt9F79P9T9W29P9M95br8E9TW79O9V9Wt9F79P9T9W29P9M959x9Pt9OcttV9P9I91tW7bwQ9TW79O9V9Wt9F79P9T9W29P9M959q9V9P9Ut7bDX9TW79O9V9Wt9F79P9T9W29P9M959t9J9H2Wbqa9TW79O9V9Wt9F9V9Wt9P9T9P96W9wWVtW94SWt9J9O9sW9T9H9Wbkl79IV9RbxDwebcekdzsq;B:xeHdbkM9Hi8Au8A99Au8Jjjjjbc;W;qb9Rgs8Kjjjjbcbhzascxfcbc;Kbz:ojjjb8AdnabaeSmbabaeadcdtz:njjjb8AkdndnamcdGmbascxfhHcbhOxekasalcrfci4gecbyd:m:jjjbHjjjjbbgABdxasceBd2aAcbaez:ojjjbhCcbhlcbhednadTmbcbhlabheadhAinaCaeydbgXci4fgQaQRbbgQceaXcrGgXtV86bbaQcu7aX4ceGalfhlaeclfheaAcufgAmbkcualcdtalcFFFFi0EhekascCfhHasaecbyd:m:jjjbHjjjjbbgOBdzascdBd2alcd4alfhXcehAinaAgecethAaeaX6mbkcdhzcbhLascuaecdtgAaecFFFFi0Ecbyd:m:jjjbHjjjjbbgXBdCasciBd2aXcFeaAz:ojjjbhKdnadTmbaecufhYcbh8AindndnaKabaLcdtfgEydbgQc:v;t;h;Ev2aYGgXcdtfgCydbgAcuSmbceheinaOaAcdtfydbaQSmdaXaefhAaecefheaKaAaYGgXcdtfgCydbgAcu9hmbkkaOa8AcdtfaQBdbaCa8ABdba8AhAa8Acefh8AkaEaABdbaLcefgLad9hmbkkaKcbyd1:jjjbH:bjjjbbascdBd2kcbh3aHcualcefgecdtaecFFFFi0Ecbyd:m:jjjbHjjjjbbg5Bdbasa5BdlasazceVgeBd2ascxfaecdtfcuadcitadcFFFFe0Ecbyd:m:jjjbHjjjjbbg8EBdbasa8EBdwasazcdfgeBd2asclfabadalcbz:cjjjbascxfaecdtfcualcdtgealcFFFFi0Eg8Fcbyd:m:jjjbHjjjjbbgABdbasazcifgXBd2ascxfaXcdtfa8Fcbyd:m:jjjbHjjjjbbgaBdbasazclVBd2aAaaaialavaOascxfz:djjjbalcbyd:m:jjjbHjjjjbbhCascxfasyd2ghcdtfaCBdbasahcefgXBd2ascxfaXcdtfa8Fcbyd:m:jjjbHjjjjbbgXBdbasahcdfgQBd2ascxfaQcdtfa8Fcbyd:m:jjjbHjjjjbbgQBdbasahcifggBd2aXcFeaez:ojjjbh8JaQcFeaez:ojjjbh8KdnalTmba8Ecwfh8Lindna5a3gQcefg3cdtfydbgKa5aQcdtgefydbgXSmbaKaX9Rhza8EaXcitfhHa8Kaefh8Ma8JaefhEcbhYindndnaHaYcitfydbg8AaQ9hmbaEaQBdba8MaQBdbxekdna5a8Acdtg8NfgeclfydbgXaeydbgeSmba8EaecitgKfydbaQSmeaXae9Rhyaecu7aXfhLa8LaKfhXcbheinaLaeSmeaecefheaXydbhKaXcwfhXaKaQ9hmbkaeay6meka8Ka8NfgeaQa8AaeydbcuSEBdbaEa8AaQaEydbcuSEBdbkaYcefgYaz9hmbkka3al9hmbkaAhXaahQa8KhKa8JhYcbheindndnaeaXydbg8A9hmbdnaeaQydbg8A9hmbaYydbh8AdnaKydbgLcu9hmba8Acu9hmbaCaefcb86bbxikaCaefhEdnaeaLSmbaea8ASmbaEce86bbxikaEcl86bbxdkdnaeaaa8AcdtgLfydb9hmbdnaKydbgEcuSmbaeaESmbaYydbgzcuSmbaeazSmba8KaLfydbgHcuSmbaHa8ASmba8JaLfydbgLcuSmbaLa8ASmbdnaAaEcdtfydbg8AaAaLcdtfydb9hmba8AaAazcdtfydbgLSmbaLaAaHcdtfydb9hmbaCaefcd86bbxlkaCaefcl86bbxikaCaefcl86bbxdkaCaefcl86bbxekaCaefaCa8AfRbb86bbkaXclfhXaQclfhQaKclfhKaYclfhYalaecefge9hmbkdnaqTmbdndnaOTmbaOheaAhXalhQindnaqaeydbfRbbTmbaCaXydbfcl86bbkaeclfheaXclfhXaQcufgQmbxdkkaAhealhXindnaqRbbTmbaCaeydbfcl86bbkaqcefhqaeclfheaXcufgXmbkkaAhealhQaChXindnaCaeydbfRbbcl9hmbaXcl86bbkaeclfheaXcefhXaQcufgQmbkkamceGTmbaChealhXindnaeRbbce9hmbaecl86bbkaecefheaXcufgXmbkkascxfagcdtfcualcx2alc;v:Q;v:Qe0Ecbyd:m:jjjbHjjjjbbg3BdbasahclfgHBd2a3aialavaOz:ejjjbh8PdndnaDmbcbhgcbh8Lxekcbh8LawhecbhXindnaeIdbJbbbb9ETmbasc;Wbfa8LcdtfaXBdba8Lcefh8LkaeclfheaDaXcefgX9hmbkascxfaHcdtfcua8Lal2gecdtaecFFFFi0Ecbyd:m:jjjbHjjjjbbggBdbasahcvfgHBd2alTmba8LTmbarcd4hEdnaOTmba8Lcdthzcbh8AaghLinaoaOa8AcdtfydbaE2cdtfhYasc;WbfheaLhXa8LhQinaXaYaeydbcdtgKfIdbawaKfIdbNUdbaeclfheaXclfhXaQcufgQmbkaLazfhLa8Acefg8Aal9hmbxdkka8Lcdthzcbh8AaghLinaoa8AaE2cdtfhYasc;WbfheaLhXa8LhQinaXaYaeydbcdtgKfIdbawaKfIdbNUdbaeclfheaXclfhXaQcufgQmbkaLazfhLa8Acefg8Aal9hmbkkascxfaHcdtfcualc8S2gealc;D;O;f8U0EgQcbyd:m:jjjbHjjjjbbgXBdbasaHcefgKBd2aXcbaez:ojjjbhqdndndna8LTmbascxfaKcdtfaQcbyd:m:jjjbHjjjjbbgvBdbasaHcdfgXBd2avcbaez:ojjjb8AascxfaXcdtfcua8Lal2gecltgXaecFFFFb0Ecbyd:m:jjjbHjjjjbbgiBdbasaHcifBd2aicbaXz:ojjjb8AadmexdkcbhvcbhiadTmekcbhYabhXindna3aXclfydbg8Acx2fgeIdba3aXydbgLcx2fgQIdbgI:tg8Ra3aXcwfydbgEcx2fgKIdlaQIdlg8S:tgRNaKIdbaI:tg8UaeIdla8S:tg8VN:tg8Wa8WNa8VaKIdwaQIdwg8X:tg8YNaRaeIdwa8X:tg8VN:tgRaRNa8Va8UNa8Ya8RN:tg8Ra8RNMM:rg8UJbbbb9ETmba8Wa8U:vh8Wa8Ra8U:vh8RaRa8U:vhRkaqaAaLcdtfydbc8S2fgeaRa8U:rg8UaRNNg8VaeIdbMUdbaea8Ra8Ua8RNg8ZNg8YaeIdlMUdlaea8Wa8Ua8WNg80Ng81aeIdwMUdwaea8ZaRNg8ZaeIdxMUdxaea80aRNgBaeIdzMUdzaea80a8RNg80aeIdCMUdCaeaRa8Ua8Wa8XNaRaINa8Sa8RNMM:mg8SNgINgRaeIdKMUdKaea8RaINg8RaeId3MUd3aea8WaINg8WaeIdaMUdaaeaIa8SNgIaeId8KMUd8Kaea8UaeIdyMUdyaqaAa8Acdtfydbc8S2fgea8VaeIdbMUdbaea8YaeIdlMUdlaea81aeIdwMUdwaea8ZaeIdxMUdxaeaBaeIdzMUdzaea80aeIdCMUdCaeaRaeIdKMUdKaea8RaeId3MUd3aea8WaeIdaMUdaaeaIaeId8KMUd8Kaea8UaeIdyMUdyaqaAaEcdtfydbc8S2fgea8VaeIdbMUdbaea8YaeIdlMUdlaea81aeIdwMUdwaea8ZaeIdxMUdxaeaBaeIdzMUdzaea80aeIdCMUdCaeaRaeIdKMUdKaea8RaeId3MUd3aea8WaeIdaMUdaaeaIaeId8KMUd8Kaea8UaeIdyMUdyaXcxfhXaYcifgYad6mbkcbhzabhLinabazcdtfh8AcbhXinaCa8AaXc;a1jjbfydbcdtfydbgQfRbbhedndnaCaLaXfydbgKfRbbgYc99fcFeGcpe0mbaec99fcFeGc;:e6mekdnaYcufcFeGce0mba8JaKcdtfydbaQ9hmekdnaecufcFeGce0mba8KaQcdtfydbaK9hmekdnaYcv2aefc:G1jjbfRbbTmbaAaQcdtfydbaAaKcdtfydb0mekJbbacJbbacJbbjZaecFeGceSEaYceSEh80dna3a8AaXc;e1jjbfydbcdtfydbcx2fgeIdwa3aKcx2fgYIdwg8S:tg8Wa3aQcx2fgEIdwa8S:tgRaRNaEIdbaYIdbg8X:tg8Ra8RNaEIdlaYIdlg8V:tg8Ua8UNMMgINa8WaRNaeIdba8X:tg81a8RNa8UaeIdla8V:tg8ZNMMg8YaRN:tg8Wa8WNa81aINa8Ya8RN:tgRaRNa8ZaINa8Ya8UN:tg8Ra8RNMM:rg8UJbbbb9ETmba8Wa8U:vh8Wa8Ra8U:vh8RaRa8U:vhRkaqaAaKcdtfydbc8S2fgeaRa80aI:rNg8UaRNNg8YaeIdbMUdbaea8Ra8Ua8RNg80Ng81aeIdlMUdlaea8Wa8Ua8WNgINg8ZaeIdwMUdwaea80aRNg80aeIdxMUdxaeaIaRNgBaeIdzMUdzaeaIa8RNg83aeIdCMUdCaeaRa8Ua8Wa8SNaRa8XNa8Va8RNMM:mg8SNgINgRaeIdKMUdKaea8RaINg8RaeId3MUd3aea8WaINg8WaeIdaMUdaaeaIa8SNgIaeId8KMUd8Kaea8UaeIdyMUdyaqaAaQcdtfydbc8S2fgea8YaeIdbMUdbaea81aeIdlMUdlaea8ZaeIdwMUdwaea80aeIdxMUdxaeaBaeIdzMUdzaea83aeIdCMUdCaeaRaeIdKMUdKaea8RaeId3MUd3aea8WaeIdaMUdaaeaIaeId8KMUd8Kaea8UaeIdyMUdykaXclfgXcx9hmbkaLcxfhLazcifgzad6mbka8LTmbcbhLinJbbbbh8Xa3abaLcdtfgeclfydbgEcx2fgXIdwa3aeydbgzcx2fgQIdwg8Z:tg8Ra8RNaXIdbaQIdbgB:tg8Wa8WNaXIdlaQIdlg83:tg8Ua8UNMMg80a3aecwfydbgHcx2fgeIdwa8Z:tgINa8Ra8RaINa8WaeIdbaB:tg8SNa8UaeIdla83:tg8VNMMgRN:tJbbbbJbbjZa80aIaINa8Sa8SNa8Va8VNMMg81NaRaRN:tg8Y:va8YJbbbb9BEg8YNhUa81a8RNaIaRN:ta8YNh85a80a8VNa8UaRN:ta8YNh86a81a8UNa8VaRN:ta8YNh87a80a8SNa8WaRN:ta8YNh88a81a8WNa8SaRN:ta8YNh89a8Wa8VNa8Sa8UN:tgRaRNa8UaINa8Va8RN:tgRaRNa8Ra8SNaIa8WN:tgRaRNMM:rJbbbZNhRagaza8L2gwcdtfhXagaHa8L2g8NcdtfhQagaEa8L2g5cdtfhKa8Z:mh8:a83:mhZaB:mhncbhYa8Lh8AJbbbbh8VJbbbbh8YJbbbbh80Jbbbbh81Jbbbbh8ZJbbbbhBJbbbbh83JbbbbhcJbbbbh9cinasc;WbfaYfgecwfaRa85aKIdbaXIdbgI:tg8UNaUaQIdbaI:tg8SNMg8RNUdbaeclfaRa87a8UNa86a8SNMg8WNUdbaeaRa89a8UNa88a8SNMg8UNUdbaecxfaRa8:a8RNaZa8WNaIana8UNMMMgINUdbaRa8Ra8WNNa81Mh81aRa8Ra8UNNa8ZMh8ZaRa8Wa8UNNaBMhBaRaIaINNa8XMh8XaRa8RaINNa8VMh8VaRa8WaINNa8YMh8YaRa8UaINNa80Mh80aRa8Ra8RNNa83Mh83aRa8Wa8WNNacMhcaRa8Ua8UNNa9cMh9caXclfhXaKclfhKaQclfhQaYczfhYa8Acufg8Ambkavazc8S2fgea9caeIdbMUdbaeacaeIdlMUdlaea83aeIdwMUdwaeaBaeIdxMUdxaea8ZaeIdzMUdzaea81aeIdCMUdCaea80aeIdKMUdKaea8YaeId3MUd3aea8VaeIdaMUdaaea8XaeId8KMUd8KaeaRaeIdyMUdyavaEc8S2fgea9caeIdbMUdbaeacaeIdlMUdlaea83aeIdwMUdwaeaBaeIdxMUdxaea8ZaeIdzMUdzaea81aeIdCMUdCaea80aeIdKMUdKaea8YaeId3MUd3aea8VaeIdaMUdaaea8XaeId8KMUd8KaeaRaeIdyMUdyavaHc8S2fgea9caeIdbMUdbaeacaeIdlMUdlaea83aeIdwMUdwaeaBaeIdxMUdxaea8ZaeIdzMUdzaea81aeIdCMUdCaea80aeIdKMUdKaea8YaeId3MUd3aea8VaeIdaMUdaaea8XaeId8KMUd8KaeaRaeIdyMUdyaiawcltfh8AcbhXa8LhKina8AaXfgeasc;WbfaXfgQIdbaeIdbMUdbaeclfgYaQclfIdbaYIdbMUdbaecwfgYaQcwfIdbaYIdbMUdbaecxfgeaQcxfIdbaeIdbMUdbaXczfhXaKcufgKmbkaia5cltfh8AcbhXa8LhKina8AaXfgeasc;WbfaXfgQIdbaeIdbMUdbaeclfgYaQclfIdbaYIdbMUdbaecwfgYaQcwfIdbaYIdbMUdbaecxfgeaQcxfIdbaeIdbMUdbaXczfhXaKcufgKmbkaia8Ncltfh8AcbhXa8LhKina8AaXfgeasc;WbfaXfgQIdbaeIdbMUdbaeclfgYaQclfIdbaYIdbMUdbaecwfgYaQcwfIdbaYIdbMUdbaecxfgeaQcxfIdbaeIdbMUdbaXczfhXaKcufgKmbkaLcifgLad6mbkkcbhQdndnamcwGgJmbJbbbbh8Vcbh9ecbhocbhhxekcbh9ea8Fcbyd:m:jjjbHjjjjbbhhascxfasyd2gecdtfahBdbasaecefgXBd2ascxfaXcdtfcuahalabadaAz:fjjjbgKcltaKcjjjjiGEcbyd:m:jjjbHjjjjbbgoBdbasaecdfBd2aoaKaha3alz:gjjjbJFFuuh8VaKTmbaoheaKhXinaeIdbgRa8Va8VaR9EEh8VaeclfheaXcufgXmbkaKh9ekasydlhTdnalTmbaTclfheaTydbhKaChXalhYcbhQincbaeydbg8AaK9RaXRbbcpeGEaQfhQaXcefhXaeclfhea8AhKaYcufgYmbkaQce4hQkcuadaQ9RcifgScx2aSc;v:Q;v:Qe0Ecbyd:m:jjjbHjjjjbbhDascxfasyd2g9hcdtfaDBdbasa9hcefgeBd2ascxfaecdtfcuaScdtaScFFFFi0Ecbyd:m:jjjbHjjjjbbgrBdbasa9hcdfgeBd2ascxfaecdtfa8Fcbyd:m:jjjbHjjjjbbgyBdbasa9hcifgeBd2ascxfaecdtfalcbyd:m:jjjbHjjjjbbg9iBdbasa9hclfg6Bd2axaxNa8PJbbjZamclGEgUaUN:vh9cJbbbbhcdnadak9nmbdnaSci6mba8Lclth9kaDcwfh0Jbbbbh83JbbbbhcinasclfabadalaAz:cjjjbabhzcbh8Ecbh8Finaba8FcdtfhHcbheindnaAazaefydbgQcdtgEfydbgYaAaHaec;q1jjbfydbcdtfydbgXcdtgwfydbg8ASmbaCaXfRbbgLcv2aCaQfRbbgKfc;G1jjbfRbbg5aKcv2aLfg8Nc;G1jjbfRbbg8MVcFeGTmbdna8AaY9nmba8Nc:G1jjbfRbbcFeGmekaKcufhYdnaKaL9hmbaYcFeGce0mba8JaEfydbaX9hmekdndnaKclSmbaLcl9hmekdnaYcFeGce0mba8JaEfydbaX9hmdkaLcufcFeGce0mba8KawfydbaQ9hmekaDa8Ecx2fgKaXaQa8McFeGgYEBdlaKaQaXaYEBdbaKaYa5Gcb9hBdwa8Ecefh8Ekaeclfgecx9hmbkdna8Fcifg8Fad9pmbazcxfhza8EcifaS9nmekka8ETmdcbhLinaqaAaDaLcx2fgKydbgYcdtgzfydbc8S2fgeIdwa3aKydlg8Acx2fgXIdwg8WNaeIdzaXIdbg8UNaeIdaMgRaRMMa8WNaeIdlaXIdlgINaeIdCa8WNaeId3MgRaRMMaINaeIdba8UNaeIdxaINaeIdKMgRaRMMa8UNaeId8KMMM:lhRJbbbbJbbjZaeIdyg8R:va8RJbbbb9BEh8RdndnaKydwgEmbJFFuuh8YxekJbbbbJbbjZaqaAa8Acdtfydbc8S2fgeIdyg8S:va8SJbbbb9BEaeIdwa3aYcx2fgXIdwg8SNaeIdzaXIdbg8XNaeIdaMg8Ya8YMMa8SNaeIdlaXIdlg8YNaeIdCa8SNaeId3Mg8Sa8SMMa8YNaeIdba8XNaeIdxa8YNaeIdKMg8Sa8SMMa8XNaeId8KMMM:lNh8Yka8RaRNh80dna8LTmbavaYc8S2fgQIdwa8WNaQIdza8UNaQIdaMgRaRMMa8WNaQIdlaINaQIdCa8WNaQId3MgRaRMMaINaQIdba8UNaQIdxaINaQIdKMgRaRMMa8UNaQId8KMMMhRaga8Aa8L2gHcdtfhXaiaYa8L2gwcltfheaQIdyh8Sa8LhQinaXIdbg8Ra8Ra8SNaecxfIdba8WaecwfIdbNa8UaeIdbNaIaeclfIdbNMMMg8Ra8RM:tNaRMhRaXclfhXaeczfheaQcufgQmbkdndnaEmbJbbbbh8Rxekava8Ac8S2fgQIdwa3aYcx2fgeIdwg8UNaQIdzaeIdbgINaQIdaMg8Ra8RMMa8UNaQIdlaeIdlg8SNaQIdCa8UNaQId3Mg8Ra8RMMa8SNaQIdbaINaQIdxa8SNaQIdKMg8Ra8RMMaINaQId8KMMMh8RagawcdtfhXaiaHcltfheaQIdyh8Xa8LhQinaXIdbg8Wa8Wa8XNaecxfIdba8UaecwfIdbNaIaeIdbNa8SaeclfIdbNMMMg8Wa8WM:tNa8RMh8RaXclfhXaeczfheaQcufgQmbka8R:lh8Rka80aR:lMh80a8Ya8RMh8YaCaYfRbbcd9hmbdna8Ka8Ja8Jazfydba8ASEaaazfydbgHcdtfydbgzcu9hmbaaa8AcdtfydbhzkavaHc8S2fgQIdwa3azcx2fgeIdwg8WNaQIdzaeIdbg8UNaQIdaMgRaRMMa8WNaQIdlaeIdlgINaQIdCa8WNaQId3MgRaRMMaINaQIdba8UNaQIdxaINaQIdKMgRaRMMa8UNaQId8KMMMhRagaza8L2gwcdtfhXaiaHa8L2g8NcltfheaQIdyh8Sa8LhQinaXIdbg8Ra8Ra8SNaecxfIdba8WaecwfIdbNa8UaeIdbNaIaeclfIdbNMMMg8Ra8RM:tNaRMhRaXclfhXaeczfheaQcufgQmbkdndnaEmbJbbbbh8Rxekavazc8S2fgQIdwa3aHcx2fgeIdwg8UNaQIdzaeIdbgINaQIdaMg8Ra8RMMa8UNaQIdlaeIdlg8SNaQIdCa8UNaQId3Mg8Ra8RMMa8SNaQIdbaINaQIdxa8SNaQIdKMg8Ra8RMMaINaQId8KMMMh8Raga8NcdtfhXaiawcltfheaQIdyh8Xa8LhQinaXIdbg8Wa8Wa8XNaecxfIdba8UaecwfIdbNaIaeIdbNa8SaeclfIdbNMMMg8Wa8WM:tNa8RMh8RaXclfhXaeczfheaQcufgQmbka8R:lh8Rka80aR:lMh80a8Ya8RMh8YkaKa80a8Ya80a8Y9FgeEUdwaKa8AaYaeaETVgeEBdlaKaYa8AaeEBdbaLcefgLa8E9hmbkasc;Wbfcbcj;qbz:ojjjb8Aa0hea8EhXinasc;WbfaeydbcA4cF8FGgQcFAaQcFA6EcdtfgQaQydbcefBdbaecxfheaXcufgXmbkcbhecbhXinasc;WbfaefgQydbhKaQaXBdbaKaXfhXaeclfgecj;qb9hmbkcbhea0hXinasc;WbfaXydbcA4cF8FGgQcFAaQcFA6EcdtfgQaQydbgQcefBdbaraQcdtfaeBdbaXcxfhXa8Eaecefge9hmbkadak9RgQci9Uh9mdnalTmbcbheayhXinaXaeBdbaXclfhXalaecefge9hmbkkcbh9na9icbalz:ojjjbh8FaQcO9Uh9oa9mce4h9pasydwh9qcbh8Mcbh5dninaDara5cdtfydbcx2fg8NIdwgRa9c9Emea8Ma9m9pmeJFFuuh8Rdna9pa8E9pmbaDara9pcdtfydbcx2fIdwJbb;aZNh8RkdnaRa8R9ETmbaRac9ETmba8Ma9o0mdkdna8FaAa8NydlgHcdtg9rfydbgKfg9sRbba8FaAa8Nydbgzcdtg9tfydbgefg9uRbbVmbaCazfRbbh9vdnaTaecdtfgXclfydbgQaXydbgXSmbaQaX9RhYa3aKcx2fhLa3aecx2fhEa9qaXcitfhecbhXcehwdnindnayaeydbcdtfydbgQaKSmbayaeclfydbcdtfydbg8AaKSmbaQa8ASmba3a8Acx2fg8AIdba3aQcx2fgQIdbg8W:tgRaEIdlaQIdlg8U:tg8XNaEIdba8W:tg8Ya8AIdla8U:tg8RN:tgIaRaLIdla8U:tg80NaLIdba8W:tg81a8RN:tg8UNa8RaEIdwaQIdwg8S:tg8ZNa8Xa8AIdwa8S:tg8WN:tg8Xa8RaLIdwa8S:tgBNa80a8WN:tg8RNa8Wa8YNa8ZaRN:tg8Sa8Wa81NaBaRN:tgRNMMaIaINa8Xa8XNa8Sa8SNMMa8Ua8UNa8Ra8RNaRaRNMMN:rJbbj8:N9FmdkaecwfheaXcefgXaY6hwaYaX9hmbkkawceGTmba9pcefh9pxekdndndndna9vc9:fPdebdkazheinayaecdtgefaHBdbaaaefydbgeaz9hmbxikkdna8Ka8Ja8Ja9tfydbaHSEaaa9tfydbgzcdtfydbgecu9hmbaaa9rfydbhekaya9tfaHBdbaehHkayazcdtfaHBdbka9uce86bba9sce86bba8NIdwgRacacaR9DEhca9ncefh9ncecda9vceSEa8Mfh8Mka5cefg5a8E9hmbkka9nTmddnalTmbcbh8AcbhEindnayaEcdtgefydbgQaESmbaAaQcdtfydbhzdnaEaAaefydb9hgHmbaqazc8S2fgeaqaEc8S2fgXIdbaeIdbMUdbaeaXIdlaeIdlMUdlaeaXIdwaeIdwMUdwaeaXIdxaeIdxMUdxaeaXIdzaeIdzMUdzaeaXIdCaeIdCMUdCaeaXIdKaeIdKMUdKaeaXId3aeId3MUd3aeaXIdaaeIdaMUdaaeaXId8KaeId8KMUd8KaeaXIdyaeIdyMUdyka8LTmbavaQc8S2fgeavaEc8S2gwfgXIdbaeIdbMUdbaeaXIdlaeIdlMUdlaeaXIdwaeIdwMUdwaeaXIdxaeIdxMUdxaeaXIdzaeIdzMUdzaeaXIdCaeIdCMUdCaeaXIdKaeIdKMUdKaeaXId3aeId3MUd3aeaXIdaaeIdaMUdaaeaXId8KaeId8KMUd8KaeaXIdyaeIdyMUdya9kaQ2hLaihXa8LhKinaXaLfgeaXa8AfgQIdbaeIdbMUdbaeclfgYaQclfIdbaYIdbMUdbaecwfgYaQcwfIdbaYIdbMUdbaecxfgeaQcxfIdbaeIdbMUdbaXczfhXaKcufgKmbkaHmbJbbbbJbbjZaqawfgeIdygR:vaRJbbbb9BEaeIdwa3azcx2fgXIdwgRNaeIdzaXIdbg8RNaeIdaMg8Wa8WMMaRNaeIdlaXIdlg8WNaeIdCaRNaeId3MgRaRMMa8WNaeIdba8RNaeIdxa8WNaeIdKMgRaRMMa8RNaeId8KMMM:lNgRa83a83aR9DEh83ka8Aa9kfh8AaEcefgEal9hmbkcbhXa8JheindnaeydbgQcuSmbdnaXayaQcdtgKfydbgQ9hmbcuhQa8JaKfydbgKcuSmbayaKcdtfydbhQkaeaQBdbkaeclfhealaXcefgX9hmbkcbhXa8KheindnaeydbgQcuSmbdnaXayaQcdtgKfydbgQ9hmbcuhQa8KaKfydbgKcuSmbayaKcdtfydbhQkaeaQBdbkaeclfhealaXcefgX9hmbkka83aca8LEh83cbhKabhecbhYindnayaeydbcdtfydbgXayaeclfydbcdtfydbgQSmbaXayaecwfydbcdtfydbg8ASmbaQa8ASmbabaKcdtfgLaXBdbaLcwfa8ABdbaLclfaQBdbaKcifhKkaecxfheaYcifgYad6mbkdndnaJTmbaKak9nmba8Va839FTmbcbhdabhecbhXindnaoahaeydbgQcdtfydbcdtfIdba839ETmbabadcdtfgYaQBdbaYclfaeclfydbBdbaYcwfaecwfydbBdbadcifhdkaecxfheaXcifgXaK6mbkJFFuuh8Va9eTmeaohea9ehXJFFuuhRinaeIdbg8RaRaRa8R9EEg8WaRa8Ra839EgQEhRa8Wa8VaQEh8VaeclfheaXcufgXmbxdkkaKhdkadak0mbxdkkasclfabadalaAz:cjjjbkdndnadak0mbadhXxekdnaJmbadhXxekdna8Va9c9FmbadhXxekina8VJbb;aZNgRa9caRa9c9DEh8WJbbbbhRdna9eTmbaohea9ehAinaeIdbg8RaRa8Ra8W9FEaRa8RaR9EEhRaeclfheaAcufgAmbkkcbhXabhecbhAindnaoahaeydbgQcdtfydbcdtfIdba8W9ETmbabaXcdtfgKaQBdbaKclfaeclfydbBdbaKcwfaecwfydbBdbaXcifhXkaecxfheaAcifgAad6mbkJFFuuh8Vdna9eTmbaohea9ehAJFFuuh8RinaeIdbg8Ua8Ra8Ra8U9EEgIa8Ra8Ua8W9EgQEh8RaIa8VaQEh8VaeclfheaAcufgAmbkkdnaXad9hmbadhXxdkaRacacaR9DEhcaXak9nmeaXhda8Va9c9FmbkkdnamcjjjjlGTmbaOmbaXTmbcbh8AabheinaCaeydbgKfRbbc3thLaecwfgEydbhAdndna8JaKcdtgHfydbaeclfgzydbgQSmbcbhYa8KaQcdtfydbaK9hmekcjjjj94hYkaeaLaYVaKVBdbaCaQfRbbc3thLdndna8JaQcdtfydbaASmbcbhYa8KaAcdtfydbaQ9hmekcjjjj94hYkazaLaYVaQVBdbaCaAfRbbc3thYdndna8JaAcdtfydbaKSmbcbhQa8KaHfydbaA9hmekcjjjj94hQkaEaYaQVaAVBdbaecxfhea8Acifg8AaX6mbkkdnaOTmbaXTmbaXheinabaOabydbcdtfydbBdbabclfhbaecufgembkkdnaPTmbaPaUac:rNUdbka9hcdtascxffcxfhednina6Tmeaeydbcbyd1:jjjbH:bjjjbbaec98fhea6cufh6xbkkasc;W;qbf8KjjjjbaXk;Yieouabydlhvabydbclfcbaicdtz:ojjjbhoadci9UhrdnadTmbdnalTmbaehwadhDinaoalawydbcdtfydbcdtfgqaqydbcefBdbawclfhwaDcufgDmbxdkkaehwadhDinaoawydbcdtfgqaqydbcefBdbawclfhwaDcufgDmbkkdnaiTmbcbhDaohwinawydbhqawaDBdbawclfhwaqaDfhDaicufgimbkkdnadci6mbinaecwfydbhwaeclfydbhDaeydbhidnalTmbalawcdtfydbhwalaDcdtfydbhDalaicdtfydbhikavaoaicdtfgqydbcitfaDBdbavaqydbcitfawBdlaqaqydbcefBdbavaoaDcdtfgqydbcitfawBdbavaqydbcitfaiBdlaqaqydbcefBdbavaoawcdtfgwydbcitfaiBdbavawydbcitfaDBdlawawydbcefBdbaecxfhearcufgrmbkkabydbcbBdbk:todDue99aicd4aifhrcehwinawgDcethwaDar6mbkcuaDcdtgraDcFFFFi0Ecbyd:m:jjjbHjjjjbbhwaoaoyd9GgqcefBd9GaoaqcdtfawBdbawcFearz:ojjjbhkdnaiTmbalcd4hlaDcufhxcbhminamhDdnavTmbavamcdtfydbhDkcbadaDal2cdtfgDydlgwawcjjjj94SEgwcH4aw7c:F:b:DD2cbaDydbgwawcjjjj94SEgwcH4aw7c;D;O:B8J27cbaDydwgDaDcjjjj94SEgDcH4aD7c:3F;N8N27axGhwamcdthPdndndnavTmbakawcdtfgrydbgDcuSmeadavaPfydbal2cdtfgsIdbhzcehqinaqhrdnadavaDcdtfydbal2cdtfgqIdbaz9CmbaqIdlasIdl9CmbaqIdwasIdw9BmlkarcefhqakawarfaxGgwcdtfgrydbgDcu9hmbxdkkakawcdtfgrydbgDcuSmbadamal2cdtfgsIdbhzcehqinaqhrdnadaDal2cdtfgqIdbaz9CmbaqIdlasIdl9CmbaqIdwasIdw9BmikarcefhqakawarfaxGgwcdtfgrydbgDcu9hmbkkaramBdbamhDkabaPfaDBdbamcefgmai9hmbkkakcbyd1:jjjbH:bjjjbbaoaoyd9GcufBd9GdnaeTmbaiTmbcbhDaehwinawaDBdbawclfhwaiaDcefgD9hmbkcbhDaehwindnaDabydbgrSmbawaearcdtfgrydbBdbaraDBdbkawclfhwabclfhbaiaDcefgD9hmbkkk;Qodvuv998Jjjjjbca9Rgvczfcwfcbyd11jjbBdbavcb8Pdj1jjb83izavcwfcbydN1jjbBdbavcb8Pd:m1jjb83ibdnadTmbaicd4hodnabmbdnalTmbcbhrinaealarcdtfydbao2cdtfhwcbhiinavczfaifgDawaifIdbgqaDIdbgkakaq9EEUdbavaifgDaqaDIdbgkakaq9DEUdbaiclfgicx9hmbkarcefgrad9hmbxikkaocdthrcbhwincbhiinavczfaifgDaeaifIdbgqaDIdbgkakaq9EEUdbavaifgDaqaDIdbgkakaq9DEUdbaiclfgicx9hmbkaearfheawcefgwad9hmbxdkkdnalTmbcbhrinabarcx2fgiaealarcdtfydbao2cdtfgwIdbUdbaiawIdlUdlaiawIdwUdwcbhiinavczfaifgDawaifIdbgqaDIdbgkakaq9EEUdbavaifgDaqaDIdbgkakaq9DEUdbaiclfgicx9hmbkarcefgrad9hmbxdkkaocdthlcbhraehwinabarcx2fgiaearao2cdtfgDIdbUdbaiaDIdlUdlaiaDIdwUdwcbhiinavczfaifgDawaifIdbgqaDIdbgkakaq9EEUdbavaifgDaqaDIdbgkakaq9DEUdbaiclfgicx9hmbkawalfhwarcefgrad9hmbkkJbbbbavIdbavIdzgk:tgqaqJbbbb9DEgqavIdlavIdCgx:tgmamaq9DEgqavIdwavIdKgm:tgPaPaq9DEhPdnabTmbadTmbJbbbbJbbjZaP:vaPJbbbb9BEhqinabaqabIdbak:tNUdbabclfgvaqavIdbax:tNUdbabcwfgvaqavIdbam:tNUdbabcxfhbadcufgdmbkkaPk:ZlewudnaeTmbcbhvabhoinaoavBdbaoclfhoaeavcefgv9hmbkkdnaiTmbcbhrinadarcdtfhwcbhDinalawaDcdtgvc;a1jjbfydbcdtfydbcdtfydbhodnabalawavfydbcdtfydbgqcdtfgkydbgvaqSmbinakabavgqcdtfgxydbgvBdbaxhkaqav9hmbkkdnabaocdtfgkydbgvaoSmbinakabavgocdtfgxydbgvBdbaxhkaoav9hmbkkdnaqaoSmbabaqaoaqao0Ecdtfaqaoaqao6EBdbkaDcefgDci9hmbkarcifgrai6mbkkdnaembcbskcbhxindnalaxcdtgvfydbax9hmbaxhodnabavfgDydbgvaxSmbaDhqinaqabavgocdtfgkydbgvBdbakhqaoav9hmbkkaDaoBdbkaxcefgxae9hmbkcbhvabhocbhkindndnavalydbgq9hmbdnavaoydbgq9hmbaoakBdbakcefhkxdkaoabaqcdtfydbBdbxekaoabaqcdtfydbBdbkaoclfhoalclfhlaeavcefgv9hmbkakk;Jiilud99duabcbaecltz:ojjjbhvdnalTmbadhoaihralhwinarcwfIdbhDarclfIdbhqavaoydbcltfgkarIdbakIdbMUdbakclfgxaqaxIdbMUdbakcwfgxaDaxIdbMUdbakcxfgkakIdbJbbjZMUdbaoclfhoarcxfhrawcufgwmbkkdnaeTmbavhraehkinarcxfgoIdbhDaocbBdbararIdbJbbbbJbbjZaD:vaDJbbbb9BEgDNUdbarclfgoaDaoIdbNUdbarcwfgoaDaoIdbNUdbarczfhrakcufgkmbkkdnalTmbinavadydbcltfgrcxfgkaicwfIdbarcwfIdb:tgDaDNaiIdbarIdb:tgDaDNaiclfIdbarclfIdb:tgDaDNMMgDakIdbgqaqaD9DEUdbadclfhdaicxfhialcufglmbkkdnaeTmbavcxfhrinabarIdbUdbarczfhrabclfhbaecufgembkkk8MbabaeadaialavcbcbcbcbcbaoarawaDz:bjjjbk8MbabaeadaialavaoarawaDaqakaxamaPz:bjjjbk:DCoDud99rue99iul998Jjjjjbc;Wb9Rgw8KjjjjbdndnarmbcbhDxekawcxfcbc;Kbz:ojjjb8Aawcuadcx2adc;v:Q;v:Qe0Ecbyd:m:jjjbHjjjjbbgqBdxawceBd2aqaeadaicbz:ejjjb8AawcuadcdtadcFFFFi0Egkcbyd:m:jjjbHjjjjbbgxBdzawcdBd2adcd4adfhmceheinaegicetheaiam6mbkcbhPawcuaicdtgsaicFFFFi0Ecbyd:m:jjjbHjjjjbbgzBdCawciBd2dndnar:ZgH:rJbbbZMgO:lJbbb9p9DTmbaO:Ohexekcjjjj94hekaicufhAc:bwhmcbhCadhXcbhQinaChLaeamgKcufaeaK9iEaPgDcefaeaD9kEhYdndnadTmbaYcuf:YhOaqhiaxheadhmindndnaiIdbaONJbbbZMg8A:lJbbb9p9DTmba8A:OhCxekcjjjj94hCkaCcCthCdndnaiclfIdbaONJbbbZMg8A:lJbbb9p9DTmba8A:OhExekcjjjj94hEkaEcqtaCVhCdndnaicwfIdbaONJbbbZMg8A:lJbbb9p9DTmba8A:OhExekcjjjj94hEkaeaCaEVBdbaicxfhiaeclfheamcufgmmbkazcFeasz:ojjjbh3cbh5cbhPindna3axaPcdtfydbgCcm4aC7c:v;t;h;Ev2gics4ai7aAGgmcdtfgEydbgecuSmbaeaCSmbcehiina3amaifaAGgmcdtfgEydbgecuSmeaicefhiaeaC9hmbkkaEaCBdba5aecuSfh5aPcefgPad9hmbxdkkazcFeasz:ojjjb8Acbh5kaDaYa5ar0giEhPaLa5aiEhCdna5arSmbaYaKaiEgmaP9Rcd9imbdndnaQcl0mbdnaX:ZgOaL:Zg8A:taY:Yg8EaD:Y:tg8Fa8EaK:Y:tgaa5:ZghaH:tNNNaOaH:taaNa8Aah:tNa8AaH:ta8FNahaO:tNM:va8EMJbbbZMgO:lJbbb9p9DTmbaO:Ohexdkcjjjj94hexekaPamfcd9Theka5aXaiEhXaQcefgQcs9hmekkdndnaCmbcihicbhDxekcbhiawakcbyd:m:jjjbHjjjjbbg5BdKawclBd2aPcuf:Yh8AdndnadTmbaqhiaxheadhmindndnaiIdba8ANJbbbZMgO:lJbbb9p9DTmbaO:OhCxekcjjjj94hCkaCcCthCdndnaiclfIdba8ANJbbbZMgO:lJbbb9p9DTmbaO:OhExekcjjjj94hEkaEcqtaCVhCdndnaicwfIdba8ANJbbbZMgO:lJbbb9p9DTmbaO:OhExekcjjjj94hEkaeaCaEVBdbaicxfhiaeclfheamcufgmmbkazcFeasz:ojjjbh3cbhDcbhYindndndna3axaYcdtgKfydbgCcm4aC7c:v;t;h;Ev2gics4ai7aAGgmcdtfgEydbgecuSmbcehiinaxaecdtgefydbaCSmdamaifheaicefhia3aeaAGgmcdtfgEydbgecu9hmbkkaEaYBdbaDhiaDcefhDxeka5aefydbhika5aKfaiBdbaYcefgYad9hmbkcuaDc32giaDc;j:KM;jb0EhexekazcFeasz:ojjjb8AcbhDcbhekawaecbyd:m:jjjbHjjjjbbgeBd3awcvBd2aecbaiz:ojjjbhEavcd4hKdnadTmbdnalTmbaKcdth3a5hCaqhealhmadhAinaEaCydbc32fgiaeIdbaiIdbMUdbaiaeclfIdbaiIdlMUdlaiaecwfIdbaiIdwMUdwaiamIdbaiIdxMUdxaiamclfIdbaiIdzMUdzaiamcwfIdbaiIdCMUdCaiaiIdKJbbjZMUdKaCclfhCaecxfheama3fhmaAcufgAmbxdkka5hmaqheadhCinaEamydbc32fgiaeIdbaiIdbMUdbaiaeclfIdbaiIdlMUdlaiaecwfIdbaiIdwMUdwaiaiIdxJbbbbMUdxaiaiIdzJbbbbMUdzaiaiIdCJbbbbMUdCaiaiIdKJbbjZMUdKamclfhmaecxfheaCcufgCmbkkdnaDTmbaEhiaDheinaiaiIdbJbbbbJbbjZaicKfIdbgO:vaOJbbbb9BEgONUdbaiclfgmaOamIdbNUdbaicwfgmaOamIdbNUdbaicxfgmaOamIdbNUdbaiczfgmaOamIdbNUdbaicCfgmaOamIdbNUdbaic3fhiaecufgembkkcbhCawcuaDcdtgYaDcFFFFi0Egicbyd:m:jjjbHjjjjbbgeBdaawcoBd2awaicbyd:m:jjjbHjjjjbbg3Bd8KaecFeaYz:ojjjbhxdnadTmbJbbjZJbbjZa8A:vaPceSEaoNgOaONh8AaKcdthPalheina8Aaec;81jjbalEgmIdwaEa5ydbgAc32fgiIdC:tgOaONamIdbaiIdx:tgOaONamIdlaiIdz:tgOaONMMNaqcwfIdbaiIdw:tgOaONaqIdbaiIdb:tgOaONaqclfIdbaiIdl:tgOaONMMMhOdndnaxaAcdtgifgmydbcuSmba3aifIdbaO9ETmekamaCBdba3aifaOUdbka5clfh5aqcxfhqaeaPfheadaCcefgC9hmbkkabaxaYz:njjjb8AcrhikaicdthiinaiTmeaic98fgiawcxffydbcbyd1:jjjbH:bjjjbbxbkkawc;Wbf8KjjjjbaDk:Ydidui99ducbhi8Jjjjjbca9Rglczfcwfcbyd11jjbBdbalcb8Pdj1jjb83izalcwfcbydN1jjbBdbalcb8Pd:m1jjb83ibdndnaembJbbjFhvJbbjFhoJbbjFhrxekadcd4cdthwincbhdinalczfadfgDabadfIdbgvaDIdbgoaoav9EEUdbaladfgDavaDIdbgoaoav9DEUdbadclfgdcx9hmbkabawfhbaicefgiae9hmbkalIdwalIdK:thralIdlalIdC:thoalIdbalIdz:thvkJbbbbavavJbbbb9DEgvaoaoav9DEgvararav9DEk9DeeuabcFeaicdtz:ojjjbhlcbhbdnadTmbindnalaeydbcdtfgiydbcu9hmbaiabBdbabcefhbkaeclfheadcufgdmbkkabk9teiucbcbyd:q:jjjbgeabcifc98GfgbBd:q:jjjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik;teeeudndnaeabVciGTmbabhixekdndnadcz9pmbabhixekabhiinaiaeydbBdbaiaeydlBdlaiaeydwBdwaiaeydxBdxaeczfheaiczfhiadc9Wfgdcs0mbkkadcl6mbinaiaeydbBdbaeclfheaiclfhiadc98fgdci0mbkkdnadTmbinaiaeRbb86bbaicefhiaecefheadcufgdmbkkabk:3eedudndnabciGTmbabhixekaecFeGc:b:c:ew2hldndnadcz9pmbabhixekabhiinaialBdxaialBdwaialBdlaialBdbaiczfhiadc9Wfgdcs0mbkkadcl6mbinaialBdbaiclfhiadc98fgdci0mbkkdnadTmbinaiae86bbaicefhiadcufgdmbkkabk9teiucbcbyd:q:jjjbgeabcrfc94GfgbBd:q:jjjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik9:eiuZbhedndncbyd:q:jjjbgdaecztgi9nmbcuheadai9RcFFifcz4nbcuSmekadhekcbabae9Rcifc98Gcbyd:q:jjjbfgdBd:q:jjjbdnadZbcztge9nmbadae9RcFFifcz4nb8Akkk:Iedbcjwk1eFFuuFFuuFFuuFFuFFFuFFFuFbbbbbbbbeeebeebebbeeebebbbbbebebbbbbbbbbebbbdbbbbbbbebbbebbbdbbbbbbbbbbbeeeeebebbebbebebbbeebbbbbbbbbbbbbbbbbbbbbc1Dkxebbbdbbb:GNbb",Q=new Uint8Array([32,0,65,2,1,106,34,33,3,128,11,4,13,64,6,253,10,7,15,116,127,5,8,12,40,16,19,54,20,9,27,255,113,17,42,67,24,23,146,148,18,14,22,45,70,69,56,114,101,21,25,63,75,136,108,28,118,29,73,115]);if(typeof WebAssembly!=="object")return{supported:!1};var B,Y=WebAssembly.instantiate(J(A),{}).then(function(K){B=K.instance,B.exports.__wasm_call_ctors()});function J(K){var I=new Uint8Array(K.length);for(var V=0;V96?H-97:H>64?H-39:H+4}var D=0;for(var V=0;V=3),C(H>=0&&H<=K.length),C(H%3==0),C(D>=0);var z=0;for(var M=0;M<(L?L.length:0);++M)C(L[M]in E),z|=E[L[M]];var N=K.BYTES_PER_ELEMENT==4?K:new Uint32Array(K),q=F(B.exports.meshopt_simplify,N,K.length,I,I.length/V,V*4,H,D,z);return q[0]=K instanceof Uint32Array?q[0]:new K.constructor(q[0]),q},simplifyWithAttributes:function(K,I,V,H,D,L,z,M,N,q){C(K instanceof Uint32Array||K instanceof Int32Array||K instanceof Uint16Array||K instanceof Int16Array),C(K.length%3==0),C(I instanceof Float32Array),C(I.length%V==0),C(V>=3),C(H instanceof Float32Array),C(H.length%D==0),C(D>=0),C(z==null||z instanceof Uint8Array),C(z==null||z.length==I.length/V),C(M>=0&&M<=K.length),C(M%3==0),C(N>=0),C(Array.isArray(L)),C(D>=L.length),C(L.length<=32);for(var w=0;w=0);var P=0;for(var w=0;w<(q?q.length:0);++w)C(q[w]in E),P|=E[q[w]];var _=K.BYTES_PER_ELEMENT==4?K:new Uint32Array(K),j=Z(B.exports.meshopt_simplifyWithAttributes,_,K.length,I,I.length/V,V*4,H,D*4,new Float32Array(L),z?new Uint8Array(z):null,M,N,P);return j[0]=K instanceof Uint32Array?j[0]:new K.constructor(j[0]),j},getScale:function(K,I){return C(K instanceof Float32Array),C(K.length%I==0),C(I>=3),U(B.exports.meshopt_simplifyScale,K,K.length/I,I*4)},simplifyPoints:function(K,I,V,H,D,L){if(C(K instanceof Float32Array),C(K.length%I==0),C(I>=3),C(V>=0&&V<=K.length/I),H)return C(H instanceof Float32Array),C(H.length%D==0),C(D>=3),C(K.length/I==H.length/D),$(B.exports.meshopt_simplifyPoints,K,K.length/I,I*4,H,D*4,L,V);else return $(B.exports.meshopt_simplifyPoints,K,K.length/I,I*4,void 0,0,0,V)}}}();if(typeof VH==="object"&&typeof lh==="object")lh.exports=c3;else if(typeof define==="function"&&define.amd)define([],function(){return c3});else if(typeof VH==="object")VH.MeshoptSimplifier=c3;else(typeof self<"u"?self:VH).MeshoptSimplifier=c3});var G1A=R((IH,ph)=>{var l3=function(){var A="b9H79TebbbeVx9Geueu9Geub9Gbb9Giuuueu9Gmuuuuuuuuuuu9999eu9Gvuuuuueu9Gwuuuuuuuub9Gxuuuuuuuuuuuueu9Gkuuuuuuuuuu99eu9Gouuuuuub9Gruuuuuuub9GluuuubiOHdilvorwDqqkbiibeilve9Weiiviebeoweuec;G:Odkr:Yewo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bb8A9TW79O9V9Wt9F9I919P29K9nW79O2Wt79c9V919U9KbeX9TW79O9V9Wt9F9I919P29K9nW79O2Wt7bo39TW79O9V9Wt9F9J9V9T9W91tWJ2917tWV9c9V919U9K7br39TW79O9V9Wt9F9J9V9T9W91tW9nW79O2Wt9c9V919U9K7bDL9TW79O9V9Wt9F9V9Wt9P9T9P96W9nW79O2Wtbql79IV9RbkDwebcekdsPq;Q9BHdbkIbabaec9:fgefcufae9Ugeabci9Uadfcufad9Ugbaeab0Ek:w8KDPue99eux99dui99euo99iu8Jjjjjbc:WD9Rgm8KjjjjbdndnalmbcbhPxekamc:Cwfcbc;Kbz:njjjb8Adndnalcb9imbaoal9nmbamcuaocdtaocFFFFi0Egscbyd;y1jjbHjjjjbbgzBd:CwamceBd;8wamascbyd;y1jjbHjjjjbbgHBd:GwamcdBd;8wamcualcdtalcFFFFi0Ecbyd;y1jjbHjjjjbbgOBd:KwamciBd;8waihsalhAinazasydbcdtfcbBdbasclfhsaAcufgAmbkaihsalhAinazasydbcdtfgCaCydbcefBdbasclfhsaAcufgAmbkaihsalhCcbhXindnazasydbcdtgQfgAydbcb9imbaHaQfaXBdbaAaAydbgQcjjjj94VBdbaQaXfhXkasclfhsaCcufgCmbkalci9UhLdnalci6mbcbhsaihAinaAcwfydbhCaAclfydbhXaHaAydbcdtfgQaQydbgQcefBdbaOaQcdtfasBdbaHaXcdtfgXaXydbgXcefBdbaOaXcdtfasBdbaHaCcdtfgCaCydbgCcefBdbaOaCcdtfasBdbaAcxfhAaLascefgs9hmbkkaihsalhAindnazasydbcdtgCfgXydbgQcu9kmbaXaQcFFFFrGgQBdbaHaCfgCaCydbaQ9RBdbkasclfhsaAcufgAmbxdkkamcuaocdtgsaocFFFFi0EgAcbyd;y1jjbHjjjjbbgzBd:CwamceBd;8wamaAcbyd;y1jjbHjjjjbbgHBd:GwamcdBd;8wamcualcdtalcFFFFi0Ecbyd;y1jjbHjjjjbbgOBd:KwamciBd;8wazcbasz:njjjbhXalci9UhLaihsalhAinaXasydbcdtfgCaCydbcefBdbasclfhsaAcufgAmbkdnaoTmbcbhsaHhAaXhCaohQinaAasBdbaAclfhAaCydbasfhsaCclfhCaQcufgQmbkkdnalci6mbcbhsaihAinaAcwfydbhCaAclfydbhQaHaAydbcdtfgKaKydbgKcefBdbaOaKcdtfasBdbaHaQcdtfgQaQydbgQcefBdbaOaQcdtfasBdbaHaCcdtfgCaCydbgCcefBdbaOaCcdtfasBdbaAcxfhAaLascefgs9hmbkkaoTmbcbhsaohAinaHasfgCaCydbaXasfydb9RBdbasclfhsaAcufgAmbkkamaLcbyd;y1jjbHjjjjbbgsBd:OwamclBd;8wascbaLz:njjjbhYamcuaLcK2alcjjjjd0Ecbyd;y1jjbHjjjjbbg8ABd:SwamcvBd;8wJbbbbhEdnalci6g3mbarcd4hKaihAa8AhsaLhrJbbbbh5inavaAclfydbaK2cdtfgCIdlh8EavaAydbaK2cdtfgXIdlhEavaAcwfydbaK2cdtfgQIdlh8FaCIdwhaaXIdwhhaQIdwhgasaCIdbg8JaXIdbg8KMaQIdbg8LMJbbnn:vUdbasclfaXIdlaCIdlMaQIdlMJbbnn:vUdbaQIdwh8MaCIdwh8NaXIdwhyascxfa8EaE:tg8Eagah:tggNa8FaE:tg8Faaah:tgaN:tgEJbbbbJbbjZa8Ja8K:tg8Ja8FNa8La8K:tg8Ka8EN:tghahNaEaENaaa8KNaga8JN:tgEaENMM:rg8K:va8KJbbbb9BEg8ENUdbasczfaEa8ENUdbascCfaha8ENUdbascwfa8Maya8NMMJbbnn:vUdba5a8KMh5aAcxfhAascKfhsarcufgrmbka5aL:Z:vJbbbZNhEkamcuaLcdtalcFFFF970Ecbyd;y1jjbHjjjjbbgCBd:WwamcoBd;8waEaq:ZNhEdna3mbcbhsaChAinaAasBdbaAclfhAaLascefgs9hmbkkaE:rhhcuh8PamcuaLcltalcFFFFd0Ecbyd;y1jjbHjjjjbbgIBd:0wamcrBd;8wcbaIa8AaCaLz:djjjb8AJFFuuhyJFFuuh8RJFFuuh8Sdnalci6gXmbJFFuuh8Sa8AhsaLhAJFFuuh8RJFFuuhyinascwfIdbgEayayaE9EEhyasclfIdbgEa8Ra8RaE9EEh8RasIdbgEa8Sa8SaE9EEh8SascKfhsaAcufgAmbkkahJbbbZNhgamaocetgscuaocu9kEcbyd;y1jjbHjjjjbbgABd:4waAcFeasz:njjjbhCdnaXmbcbhAJFFuuhEa8Ahscuh8PinascwfIdbay:tghahNasIdba8S:tghahNasclfIdba8R:tghahNMM:rghaEa8PcuSahaE9DVgXEhEaAa8PaXEh8PascKfhsaLaAcefgA9hmbkkamczfcbcjwz:njjjb8Aamcwf9cb83ibam9cb83ibagaxNhRJbbjZak:th8Ncbh8UJbbbbh8VJbbbbh8WJbbbbh8XJbbbbh8YJbbbbh8ZJbbbbh80cbh81cbhPinJbbbbhEdna8UTmbJbbjZa8U:Z:vhEkJbbbbhhdna80a80Na8Ya8YNa8Za8ZNMMg8KJbbbb9BmbJbbjZa8K:r:vhhka8XaENh5a8WaENh8Fa8VaENhaa8PhQdndndndndna8UaPVTmbamydwgBTmea80ahNh8Ja8ZahNh8La8YahNh8Maeamydbcdtfh83cbh3JFFuuhEcvhXcuhQindnaza83a3cdtfydbcdtgsfydbgvTmbaOaHasfydbcdtfhAindndnaCaiaAydbgKcx2fgsclfydbgrcetf8Vebcs4aCasydbgLcetf8Vebcs4faCascwfydbglcetf8Vebcs4fgombcbhsxekcehsazaLcdtfydbgLceSmbcehsazarcdtfydbgrceSmbcehsazalcdtfydbglceSmbdnarcdSaLcdSfalcdSfcd6mbaocefhsxekaocdfhskdnasaX9kmba8AaKcK2fgLIdwa5:thhaLIdla8F:th8KaLIdbaa:th8EdndnakJbbbb9DTmba8E:lg8Ea8K:lg8Ka8Ea8K9EEg8Kah:lgha8Kah9EEag:vJbbjZMhhxekahahNa8Ea8ENa8Ka8KNMM:rag:va8NNJbbjZMJ9VO:d86JbbjZaLIdCa8JNaLIdxa8MNa8LaLIdzNMMakN:tghahJ9VO:d869DENhhkaKaQasaX6ahaE9DVgLEhQasaXaLEhXahaEaLEhEkaAclfhAavcufgvmbkka3cefg3aB9hmbkkaQcu9hmekama5Ud:ODama8FUd:KDamaaUd:GDamcuBd:qDamcFFF;7rBdjDaIcba8AaYamc:GDfakJbbbb9Damc:qDfamcjDfz:ejjjbamyd:qDhQdndnaxJbbbb9ETmba8UaD6mbaQcuSmeceh3amIdjDaR9EmixdkaQcu9hmekdna8UTmbdnamydlgza8Uci2fgsciGTmbadasfcba8Uazcu7fciGcefz:njjjb8AkabaPcltfgzam8Pib83dbazcwfamcwf8Pib83dbaPcefhPkc3hzinazc98Smvamc:Cwfazfydbcbyd;u1jjbH:bjjjbbazc98fhzxbkkcbh3a8Uaq9pmbamydwaCaiaQcx2fgsydbcetf8Vebcs4aCascwfydbcetf8Vebcs4faCasclfydbcetf8Vebcs4ffaw9nmekcbhscbhAdna81TmbcbhAamczfhXinamczfaAcdtfaXydbgLBdbaXclfhXaAaYaLfRbbTfhAa81cufg81mbkkamydwhlamydbhXam9cu83i:GDam9cu83i:ODam9cu83i:qDam9cu83i:yDaAc;8eaAclfc:bd6Eh81inamcjDfasfcFFF;7rBdbasclfgscz9hmbka81cdthBdnalTmbaeaXcdtfhocbhrindnazaoarcdtfydbcdtgsfydbgvTmbaOaHasfydbcdtfhAcuhLcuhsinazaiaAydbgKcx2fgXclfydbcdtfydbazaXydbcdtfydbfazaXcwfydbcdtfydbfgXasaXas6gXEhsaKaLaXEhLaAclfhAavcufgvmbkaLcuSmba8AaLcK2fgAIdway:tgEaENaAIdba8S:tgEaENaAIdla8R:tgEaENMM:rhEcbhAindndnasamc:qDfaAfgvydbgX6mbasaX9hmeaEamcjDfaAfIdb9FTmekavasBdbamc:GDfaAfaLBdbamcjDfaAfaEUdbxdkaAclfgAcz9hmbkkarcefgral9hmbkkamczfaBfhLcbhscbhAindnamc:GDfasfydbgXcuSmbaLaAcdtfaXBdbaAcefhAkasclfgscz9hmbkaAa81fg81TmbJFFuuhhcuhKamczfhsa81hvcuhLina8AasydbgXcK2fgAIdway:tgEaENaAIdba8S:tgEaENaAIdla8R:tgEaENMM:rhEdndnazaiaXcx2fgAclfydbcdtfydbazaAydbcdtfydbfazaAcwfydbcdtfydbfgAaL6mbaAaL9hmeaEah9DTmekaEhhaAhLaXhKkasclfhsavcufgvmbkaKcuSmbaKhQkdnamaiaQcx2fgrydbarclfydbarcwfydbaCabaeadaPawaqa3z:fjjjbTmbaPcefhPJbbbbh8VJbbbbh8WJbbbbh8XJbbbbh8YJbbbbh8ZJbbbbh80kcbhXinaOaHaraXcdtfydbcdtgAfydbcdtfgKhsazaAfgvydbgLhAdnaLTmbdninasydbaQSmeasclfhsaAcufgATmdxbkkasaKaLcdtfc98fydbBdbavavydbcufBdbkaXcefgXci9hmbka8AaQcK2fgsIdbhEasIdlhhasIdwh8KasIdxh8EasIdzh5asIdCh8FaYaQfce86bba80a8FMh80a8Za5Mh8Za8Ya8EMh8Ya8Xa8KMh8Xa8WahMh8Wa8VaEMh8Vamydxh8Uxbkkamc:WDf8KjjjjbaPk;Vvivuv99lu8Jjjjjbca9Rgv8Kjjjjbdndnalcw0mbaiydbhoaeabcitfgralcdtcufBdlaraoBdbdnalcd6mbaiclfhoalcufhwarcxfhrinaoydbhDarcuBdbarc98faDBdbarcwfhraoclfhoawcufgwmbkkalabfhrxekcbhDavczfcwfcbBdbav9cb83izavcwfcbBdbav9cb83ibJbbjZhqJbbjZhkinadaiaDcdtfydbcK2fhwcbhrinavczfarfgoawarfIdbgxaoIdbgm:tgPakNamMgmUdbavarfgoaPaxam:tNaoIdbMUdbarclfgrcx9hmbkJbbjZaqJbbjZMgq:vhkaDcefgDal9hmbkcbhoadcbcecdavIdlgxavIdwgm9GEgravIdbgPam9GEaraPax9GEgscdtgrfhzavczfarfIdbhxaihralhwinaiaocdtfgDydbhHaDarydbgOBdbaraHBdbarclfhraoazaOcK2fIdbax9Dfhoawcufgwmbkaeabcitfhrdndnaocv6mbaoalc98f6mekaraiydbBdbaralcdtcufBdlaiclfhoalcufhwarcxfhrinaoydbhDarcuBdbarc98faDBdbarcwfhraoclfhoawcufgwmbkalabfhrxekaraxUdbararydlc98GasVBdlabcefaeadaiaoz:djjjbhwararydlciGawabcu7fcdtVBdlawaeadaiaocdtfalao9Rz:djjjbhrkavcaf8Kjjjjbark:;idiud99dndnabaecitfgwydlgDciGgqciSmbinabcbaDcd4gDalaqcdtfIdbawIdb:tgkJbbbb9FEgwaecefgefadaialavaoarz:ejjjbak:larIdb9FTmdabawaD7aefgecitfgwydlgDciGgqci9hmbkkabaecitfgeclfhbdnavmbcuhwindnaiaeydbgDfRbbmbadaDcK2fgqIdwalIdw:tgkakNaqIdbalIdb:tgkakNaqIdlalIdl:tgkakNMM:rgkarIdb9DTmbarakUdbaoaDBdbkaecwfheawcefgwabydbcd46mbxdkkcuhwindnaiaeydbgDfRbbmbadaDcK2fgqIdbalIdb:t:lgkaqIdlalIdl:t:lgxakax9EEgkaqIdwalIdw:t:lgxakax9EEgkarIdb9DTmbarakUdbaoaDBdbkaecwfheawcefgwabydbcd46mbkkk;llevudnabydwgxaladcetfgm8Vebcs4alaecetfgP8Vebgscs4falaicetfgz8Vebcs4ffaD0abydxaq9pVakVgDce9hmbavawcltfgxab8Pdb83dbaxcwfabcwfgx8Pdb83dbdnaxydbgqTmbaoabydbcdtfhxaqhsinalaxydbcetfcFFi87ebaxclfhxascufgsmbkkdnabydxglci2gsabydlgxfgkciGTmbarakfcbalaxcu7fciGcefz:njjjb8Aabydxci2hsabydlhxabydwhqkab9cb83dwababydbaqfBdbabascifc98GaxfBdlaP8Vebhscbhxkdnascztcz91cu9kmbabaxcefBdwaPax87ebaoabydbcdtfaxcdtfaeBdbkdnam8Uebcu9kmbababydwgxcefBdwamax87ebaoabydbcdtfaxcdtfadBdbkdnaz8Uebcu9kmbababydwgxcefBdwazax87ebaoabydbcdtfaxcdtfaiBdbkarabydlfabydxci2faPRbb86bbarabydlfabydxci2fcefamRbb86bbarabydlfabydxci2fcdfazRbb86bbababydxcefBdxaDk8LbabaeadaialavaoarawaDaDaqJbbbbz:cjjjbk;Nkovud99euv99eul998Jjjjjbc:W;ae9Rgo8KjjjjbdndnadTmbavcd4hrcbhwcbhDindnaiaeclfydbar2cdtfgvIdbaiaeydbar2cdtfgqIdbgk:tgxaiaecwfydbar2cdtfgmIdlaqIdlgP:tgsNamIdbak:tgzavIdlaP:tgPN:tgkakNaPamIdwaqIdwgH:tgONasavIdwaH:tgHN:tgPaPNaHazNaOaxN:tgxaxNMM:rgsJbbbb9Bmbaoc:W:qefawcx2fgAakas:vUdwaAaxas:vUdlaAaPas:vUdbaoc8Wfawc8K2fgAaq8Pdb83dbaAav8Pdb83dxaAam8Pdb83dKaAcwfaqcwfydbBdbaAcCfavcwfydbBdbaAcafamcwfydbBdbawcefhwkaecxfheaDcifgDad6mbkab9cb83dbabcyf9cb83dbabcaf9cb83dbabcKf9cb83dbabczf9cb83dbabcwf9cb83dbawTmeaocbBd8Sao9cb83iKao9cb83izaoczfaoc8Wfawci2cxaoc8Sfcbcrz1jjjbaoIdKhCaoIdChXaoIdzhQao9cb83iwao9cb83ibaoaoc:W:qefawcxaoc8Sfcbciz1jjjbJbbjZhkaoIdwgPJbbbbJbbjZaPaPNaoIdbgPaPNaoIdlgsasNMM:rgx:vaxJbbbb9BEgzNhxasazNhsaPazNhzaoc:W:qefheawhvinaecwfIdbaxNaeIdbazNasaeclfIdbNMMgPakaPak9DEhkaecxfheavcufgvmbkabaCUdwabaXUdlabaQUdbabaoId3UdxdndnakJ;n;m;m899FmbJbbbbhPaoc:W:qefheaoc8WfhvinaCavcwfIdb:taecwfIdbgHNaQavIdb:taeIdbgONaXavclfIdb:taeclfIdbgLNMMaxaHNazaONasaLNMM:vgHaPaHaP9EEhPavc8KfhvaecxfheawcufgwmbkabaxUd8KabasUdaabazUd3abaCaxaPN:tUdKabaXasaPN:tUdCabaQazaPN:tUdzabJbbjZakakN:t:rgkUdydndnaxJbbj:;axJbbj:;9GEgPJbbjZaPJbbjZ9FEJbb;:9cNJbbbZJbbb:;axJbbbb9GEMgP:lJbbb9p9DTmbaP:Ohexekcjjjj94hekabae86b8UdndnasJbbj:;asJbbj:;9GEgPJbbjZaPJbbjZ9FEJbb;:9cNJbbbZJbbb:;asJbbbb9GEMgP:lJbbb9p9DTmbaP:Ohvxekcjjjj94hvkabav86bRdndnazJbbj:;azJbbj:;9GEgPJbbjZaPJbbjZ9FEJbb;:9cNJbbbZJbbb:;azJbbbb9GEMgP:lJbbb9p9DTmbaP:Ohqxekcjjjj94hqkabaq86b8SdndnaecKtcK91:YJbb;:9c:vax:t:lavcKtcK91:YJbb;:9c:vas:t:laqcKtcK91:YJbb;:9c:vaz:t:lakMMMJbb;:9cNJbbjZMgk:lJbbb9p9DTmbak:Ohexekcjjjj94hekaecFbaecFb9iEhexekabcjjj;8iBdycFbhekabae86b8Vxekab9cb83dbabcyf9cb83dbabcaf9cb83dbabcKf9cb83dbabczf9cb83dbabcwf9cb83dbkaoc:W;aef8Kjjjjbk;Iwwvul99iud99eue99eul998Jjjjjbcje9Rgr8Kjjjjbavcd4hwaicd4hDdndnaoTmbarc;abfcbaocdtgvz:njjjb8Aarc;Gbfcbavz:njjjb8AarhvarcafhiaohqinavcFFF97BdbaicFFF;7rBdbaiclfhiavclfhvaqcufgqmbkdnadTmbcbhkinaeakaD2cdtfgvIdwhxavIdlhmavIdbhPalakaw2cdtfIdbhsarc;abfhzarhiarc;GbfhHarcafhqcj1jjbhvaohOinasavcwfIdbaxNavIdbaPNavclfIdbamNMMgAMhCakhXdnaAas:tgAaqIdbgQ9DgLmbaHydbhXkaHaXBdbakhXdnaCaiIdbgK9EmbazydbhXaKhCkazaXBdbaiaCUdbaqaAaQaLEUdbavcxfhvaqclfhqaHclfhHaiclfhiazclfhzaOcufgOmbkakcefgkad9hmbkkadThkJbbbbhCcbhXarc;abfhvarc;Gbfhicbhqinalavydbgzaw2cdtfIdbalaiydbgHaw2cdtfIdbaeazaD2cdtfgzIdwaeaHaD2cdtfgHIdw:tgsasNazIdbaHIdb:tgsasNazIdlaHIdl:tgsasNMM:rMMgsaCasaC9EgzEhCaqaXazEhXaiclfhiavclfhvaoaqcefgq9hmbkaCJbbbZNhKxekadThkcbhXJbbbbhKkJbbbbhCdnaearc;abfaXcdtgifydbgqaD2cdtfgvIdwaearc;GbfaifydbgzaD2cdtfgiIdwgm:tgsasNavIdbaiIdbgY:tgAaANavIdlaiIdlgP:tgQaQNMM:rgxJbbbb9ETmbaxalaqaw2cdtfIdbMalazaw2cdtfIdb:taxaxM:vhCkasaCNamMhmaQaCNaPMhPaAaCNaYMhYdnakmbaDcdthvawcdthiindnalIdbg8AaecwfIdbam:tgCaCNaeIdbaY:tgsasNaeclfIdbaP:tgAaANMM:rgQMgEaK9ETmbJbbbbhxdnaQJbbbb9ETmbaEaK:taQaQM:vhxkaxaCNamMhmaxaANaPMhPaxasNaYMhYa8AaKaQMMJbbbZNhKkaeavfhealaifhladcufgdmbkkabaKUdxabamUdwabaPUdlabaYUdbarcjef8Kjjjjbkjeeiu8Jjjjjbcj8W9Rgr8Kjjjjbaici2hwdnaiTmbawceawce0EhDarhiinaiaeadRbbcdtfydbBdbadcefhdaiclfhiaDcufgDmbkkabarawaladaoz:hjjjbarcj8Wf8Kjjjjbk:3lequ8JjjjjbcjP9Rgl8Kjjjjbcbhvalcjxfcbaiz:njjjb8AdndnadTmbcjehoaehrincuhwarhDcuhqavhkdninawakaoalcjxfaDcefRbbfRbb9RcFeGci6aoalcjxfaDRbbfRbb9RcFeGci6faoalcjxfaDcdfRbbfRbb9RcFeGci6fgxaq9mgmEhwdnammbaxce0mdkaxaqaxaq9kEhqaDcifhDadakcefgk9hmbkkaeawci2fgDcdfRbbhqaDcefRbbhxaDRbbhkaeavci2fgDcifaDawav9Rci2z:qjjjb8Aakalcjxffaocefgo86bbaxalcjxffao86bbaDcdfaq86bbaDcefax86bbaDak86bbaqalcjxffao86bbarcifhravcefgvad9hmbkalcFeaicetz:njjjbhoadci2gDceaDce0EhqcbhxindnaoaeRbbgkcetfgw8UebgDcu9kmbawax87ebaocjlfaxcdtfabakcdtfydbBdbaxhDaxcefhxkaeaD86bbaecefheaqcufgqmbkaxcdthDxekcbhDkabalcjlfaDz:mjjjb8AalcjPf8Kjjjjbk9teiucbcbyd;C1jjbgeabcifc98GfgbBd;C1jjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik;teeeudndnaeabVciGTmbabhixekdndnadcz9pmbabhixekabhiinaiaeydbBdbaiaeydlBdlaiaeydwBdwaiaeydxBdxaeczfheaiczfhiadc9Wfgdcs0mbkkadcl6mbinaiaeydbBdbaeclfheaiclfhiadc98fgdci0mbkkdnadTmbinaiaeRbb86bbaicefhiaecefheadcufgdmbkkabk:3eedudndnabciGTmbabhixekaecFeGc:b:c:ew2hldndnadcz9pmbabhixekabhiinaialBdxaialBdwaialBdlaialBdbaiczfhiadc9Wfgdcs0mbkkadcl6mbinaialBdbaiclfhiadc98fgdci0mbkkdnadTmbinaiae86bbaicefhiadcufgdmbkkabk9teiucbcbyd;C1jjbgeabcrfc94GfgbBd;C1jjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik9:eiuZbhedndncbyd;C1jjbgdaecztgi9nmbcuheadai9RcFFifcz4nbcuSmekadhekcbabae9Rcifc98Gcbyd;C1jjbfgdBd;C1jjbdnadZbcztge9nmbadae9RcFFifcz4nb8Akk:;Deludndndnadch9pmbabaeSmdaeabadfgi9Rcbadcet9R0mekabaead;8qbbxekaeab7ciGhldndndnabae9pmbdnalTmbadhvabhixikdnabciGmbadhvabhixdkadTmiabaeRbb86bbadcufhvdnabcefgiciGmbaecefhexdkavTmiabaeRbe86beadc9:fhvdnabcdfgiciGmbaecdfhexdkavTmiabaeRbd86bdadc99fhvdnabcifgiciGmbaecifhexdkavTmiabaeRbi86biabclfhiaeclfheadc98fhvxekdnalmbdnaiciGTmbadTmlabadcufgifglaeaifRbb86bbdnalciGmbaihdxekaiTmlabadc9:fgifglaeaifRbb86bbdnalciGmbaihdxekaiTmlabadc99fgifglaeaifRbb86bbdnalciGmbaihdxekaiTmlabadc98fgdfaeadfRbb86bbkadcl6mbdnadc98fgocd4cefciGgiTmbaec98fhlabc98fhvinavadfaladfydbBdbadc98fhdaicufgimbkkaocx6mbaec9Wfhvabc9WfhoinaoadfgicxfavadfglcxfydbBdbaicwfalcwfydbBdbaiclfalclfydbBdbaialydbBdbadc9Wfgdci0mbkkadTmdadhidnadciGglTmbaecufhvabcufhoadhiinaoaifavaifRbb86bbaicufhialcufglmbkkadcl6mdaec98fhlabc98fhvinavaifgecifalaifgdcifRbb86bbaecdfadcdfRbb86bbaecefadcefRbb86bbaeadRbb86bbaic98fgimbxikkavcl6mbdnavc98fglcd4cefcrGgdTmbavadcdt9RhvinaiaeydbBdbaeclfheaiclfhiadcufgdmbkkalc36mbinaiaeydbBdbaiaeydlBdlaiaeydwBdwaiaeydxBdxaiaeydzBdzaiaeydCBdCaiaeydKBdKaiaeyd3Bd3aecafheaicafhiavc9Gfgvci0mbkkavTmbdndnavcrGgdmbavhlxekavc94GhlinaiaeRbb86bbaicefhiaecefheadcufgdmbkkavcw6mbinaiaeRbb86bbaiaeRbe86beaiaeRbd86bdaiaeRbi86biaiaeRbl86blaiaeRbv86bvaiaeRbo86boaiaeRbr86braicwfhiaecwfhealc94fglmbkkabkk9Tdbcjwk9ubbjZbbbbbbbbbbbbbbjZbbbbbbbbbbbbbbjZ86;nAZ86;nAZ86;nAZ86;nA:;86;nAZ86;nAZ86;nAZ86;nA:;86;nAZ86;nAZ86;nAZ86;nA:;bc;uwkxebbbdbbb9GNbb",Q=new Uint8Array([32,0,65,2,1,106,34,33,3,128,11,4,13,64,6,253,10,7,15,116,127,5,8,12,40,16,19,54,20,9,27,255,113,17,42,67,24,23,146,148,18,14,22,45,70,69,56,114,101,21,25,63,75,136,108,28,118,29,73,115]);if(typeof WebAssembly!=="object")return{supported:!1};var B,Y=WebAssembly.instantiate(J(A),{}).then(function(K){B=K.instance,B.exports.__wasm_call_ctors()});function J(K){var I=new Uint8Array(K.length);for(var V=0;V96?H-97:H>64?H-39:H+4}var D=0;for(var V=0;V=3),C(H<=256||H>0),C(D<=512),C(D%4==0),L=L||0;var z=K.BYTES_PER_ELEMENT==4?K:new Uint32Array(K);return Z(z,I,I.length/V,V*4,H,D,L)},computeClusterBounds:function(K,I,V){C(K.length%3==0),C(K.length/3<=512),C(I instanceof Float32Array),C(I.length%V==0),C(V>=3);var H=K.BYTES_PER_ELEMENT==4?K:new Uint32Array(K);return E(H,I,I.length/V,V*4)},computeMeshletBounds:function(K,I,V){return C(K.meshletCount!=0),C(I instanceof Float32Array),C(I.length%V==0),C(V>=3),$(K,I,I.length/V,V*4)},extractMeshlet:function(K,I){return C(I>=0&&I{var HrQ=J1A(),DrQ=C1A(),NrQ=X1A(),LrQ=G1A();W1A.exports={MeshoptEncoder:HrQ,MeshoptDecoder:DrQ,MeshoptSimplifier:NrQ,MeshoptClusterizer:LrQ}});var ah=R((rrQ)=>{function irQ(A,Q,B,C){var J=0,C=C===void 0?{}:C,X=C.loop===void 0?null:C.loop,G=C.palette===void 0?null:C.palette;if(Q<=0||B<=0||Q>65535||B>65535)throw Error("Width/Height invalid.");function W(V){var H=V.length;if(H<2||H>256||H&H-1)throw Error("Invalid code/color length, must be power of 2 and 2 .. 256.");return H}A[J++]=71,A[J++]=73,A[J++]=70,A[J++]=56,A[J++]=57,A[J++]=97;var F=0,Z=0;if(G!==null){var U=W(G);while(U>>=1)++F;if(U=1<=U)throw Error("Background index out of range.");if(Z===0)throw Error("Background index explicitly passed as 0.")}}if(A[J++]=Q&255,A[J++]=Q>>8&255,A[J++]=B&255,A[J++]=B>>8&255,A[J++]=(G!==null?128:0)|F,A[J++]=Z,A[J++]=0,G!==null)for(var $=0,E=G.length;$>16&255,A[J++]=K>>8&255,A[J++]=K&255}if(X!==null){if(X<0||X>65535)throw Error("Loop count invalid.");A[J++]=33,A[J++]=255,A[J++]=11,A[J++]=78,A[J++]=69,A[J++]=84,A[J++]=83,A[J++]=67,A[J++]=65,A[J++]=80,A[J++]=69,A[J++]=50,A[J++]=46,A[J++]=48,A[J++]=3,A[J++]=1,A[J++]=X&255,A[J++]=X>>8&255,A[J++]=0}var I=!1;this.addFrame=function(V,H,D,L,z,M){if(I===!0)--J,I=!1;if(M=M===void 0?{}:M,V<0||H<0||V>65535||H>65535)throw Error("x/y invalid.");if(D<=0||L<=0||D>65535||L>65535)throw Error("Width/Height invalid.");if(z.length>=1)++P;w=1<3)throw Error("Disposal out of range.");var k=!1,T=0;if(M.transparent!==void 0&&M.transparent!==null){if(k=!0,T=M.transparent,T<0||T>=w)throw Error("Transparent color index.")}if(j!==0||k||_!==0)A[J++]=33,A[J++]=249,A[J++]=4,A[J++]=j<<2|(k===!0?1:0),A[J++]=_&255,A[J++]=_>>8&255,A[J++]=T,A[J++]=0;if(A[J++]=44,A[J++]=V&255,A[J++]=V>>8&255,A[J++]=H&255,A[J++]=H>>8&255,A[J++]=D&255,A[J++]=D>>8&255,A[J++]=L&255,A[J++]=L>>8&255,A[J++]=N===!0?128|P-1:0,N===!0)for(var S=0,v=q.length;S>16&255,A[J++]=y>>8&255,A[J++]=y&255}return J=nrQ(A,J,P<2?2:P,z),J},this.end=function(){if(I===!1)A[J++]=59,I=!0;return J},this.getOutputBuffer=function(){return A},this.setOutputBuffer=function(V){A=V},this.getOutputBufferPosition=function(){return J},this.setOutputBufferPosition=function(V){J=V}}function nrQ(A,Q,B,Y){A[Q++]=B;var J=Q++,C=1<=M)if(A[Q++]=U&255,U>>=8,Z-=8,Q===J+256)A[J]=255,J=Q++}function E(M){U|=M<=8)if(A[Q++]=U&255,U>>=8,Z-=8,Q===J+256)A[J]=255,J=Q++;if(W===4096)E(C),W=G+1,F=B+1,I={};else{if(W>=1<>7,X=J&7,G=1<=0))throw Error("Invalid block size");if(H===0)break;Q+=H}}break;case 249:if(A[Q++]!==4||A[Q+4]!==0)throw Error("Invalid graphics extension block.");var D=A[Q++];if(E=A[Q++]|A[Q++]<<8,K=A[Q++],(D&1)===0)K=null;I=D>>2&7,Q++;break;case 254:while(!0){var H=A[Q++];if(!(H>=0))throw Error("Invalid block size");if(H===0)break;Q+=H}break;default:throw Error("Unknown graphic control label: 0x"+A[Q-1].toString(16))}break;case 44:var L=A[Q++]|A[Q++]<<8,z=A[Q++]|A[Q++]<<8,M=A[Q++]|A[Q++]<<8,N=A[Q++]|A[Q++]<<8,q=A[Q++],w=q>>7,P=q>>6&1,_=q&7,j=1<<_+1,k=F,T=Z,S=!1;if(w){var S=!0;k=Q,T=j,Q+=j*3}var v=Q;Q++;while(!0){var H=A[Q++];if(!(H>=0))throw Error("Invalid block size");if(H===0)break;Q+=H}$.push({x:L,y:z,width:M,height:N,has_local_palette:S,palette_offset:k,palette_size:T,data_offset:v,data_length:Q-v,transparent_index:K,interlaced:!!P,delay:E,disposal:I});break;case 59:U=!1;break;default:throw Error("Unknown gif block: 0x"+A[Q-1].toString(16))}this.numFrames=function(){return $.length},this.loopCount=function(){return V},this.frameInfo=function(y){if(y<0||y>=$.length)throw Error("Frame index out of range.");return $[y]},this.decodeAndBlitFrameBGRA=function(y,h){var g=this.frameInfo(y),m=g.width*g.height,n=new Uint8Array(m);j1A(A,g.data_offset,n,m);var{palette_offset:i,transparent_index:p}=g;if(p===null)p=256;var d=g.width,x=B-d,b=d,o=(g.y*B+g.x)*4,GA=((g.y+g.height)*B+g.x)*4,VA=o,EA=x*4;if(g.interlaced===!0)EA+=B*4*7;var UA=8;for(var CA=0,QA=n.length;CA=GA)EA=x*4+B*4*(UA-1),VA=o+(d+x)*(UA<<1),UA>>=1}if(KA===p)VA+=4;else{var HA=A[i+KA*3],DA=A[i+KA*3+1],hA=A[i+KA*3+2];h[VA++]=hA,h[VA++]=DA,h[VA++]=HA,h[VA++]=255}--b}},this.decodeAndBlitFrameRGBA=function(y,h){var g=this.frameInfo(y),m=g.width*g.height,n=new Uint8Array(m);j1A(A,g.data_offset,n,m);var{palette_offset:i,transparent_index:p}=g;if(p===null)p=256;var d=g.width,x=B-d,b=d,o=(g.y*B+g.x)*4,GA=((g.y+g.height)*B+g.x)*4,VA=o,EA=x*4;if(g.interlaced===!0)EA+=B*4*7;var UA=8;for(var CA=0,QA=n.length;CA=GA)EA=x*4+B*4*(UA-1),VA=o+(d+x)*(UA<<1),UA>>=1}if(KA===p)VA+=4;else{var HA=A[i+KA*3],DA=A[i+KA*3+1],hA=A[i+KA*3+2];h[VA++]=HA,h[VA++]=DA,h[VA++]=hA,h[VA++]=255}--b}}}function j1A(A,Q,B,Y){var J=A[Q++],C=1<>=W,Z-=W,V===C){G=X+1,W=J+1,F=(1<C)L=K[L]>>8,++D;var z=L,M=$+D+(H!==V?1:0);if(M>Y){console.log("Warning, gif stream longer than expected.");return}B[$++]=z,$+=D;var N=$;if(H!==V)B[$++]=z;L=H;while(D--)L=K[L],B[--N]=L&255,L>>=8;if(I!==null&&G<4096){if(K[G++]=I<<8|z,G>=F+1&&W<12)++W,F=F<<1|1}I=V}if($!==Y)console.log("Warning, gif stream shorter than expected.");return B}try{rrQ.GifWriter=irQ,rrQ.GifReader=srQ}catch(A){}});var a3=R((xGY,O1A)=>{class NH{constructor(...A){if(A.length===0)throw Error("constructor requires parameters");let Q=A[0];if(Q!==null&&typeof Q==="object")if(Q instanceof NH){let B=Q.bitmap;this.bitmap={width:B.width,height:B.height,data:new Buffer(B.width*B.height*4)},B.data.copy(this.bitmap.data)}else if(Q.width&&Q.height&&Q.data)this.bitmap=Q;else throw Error("unrecognized constructor parameters");else if(typeof Q==="number"&&typeof A[1]==="number"){let B=Q,Y=A[1],J=A[2];if(this.bitmap={width:B,height:Y},Buffer.isBuffer(J))this.bitmap.data=J;else if(this.bitmap.data=new Buffer(B*Y*4),typeof J==="number")this.fillRGBA(J)}else throw Error("unrecognized constructor parameters")}blit(A,Q,B,Y,J,C,X){if(Y+C>this.bitmap.width)throw Error("copy exceeds width of source bitmap");if(Q+C>A.bitmap.width)throw Error("copy exceeds width of target bitmap");if(J+X>this.bitmap.height)throw Error("copy exceeds height of source bitmap");if(B+X>A.bitmap.height)throw new Erro("copy exceeds height of target bitmap");let G=this.bitmap.data,W=A.bitmap.data,F=this.bitmap.width*4,Z=A.bitmap.width*4,U=C*4,$=J*F+Y*4,E=B*Z+Q*4;while(--X>=0)G.copy(W,E,$,$+U),$+=F,E+=Z;return this}fillRGBA(A){let Q=this.bitmap.data,B=this.bitmap.height*4,Y=0;while(Y{let J=Math.round(0.299*A[Y]+0.587*A[Y+1]+0.114*A[Y+2]);A[Y]=J,A[Y+1]=J,A[Y+2]=J}),this}reframe(A,Q,B,Y,J){let C=A<0?0:A,X=Q<0?0:Q,G=B+C>this.bitmap.width?this.bitmap.width-C:B,W=Y+X>this.bitmap.height?this.bitmap.height-X:Y,F=A<0?-A:0,Z=Q<0?-Q:0,U;if(J===void 0){if(C!==A||X!=Q||G!==B||W!==Y)throw new GifError("fillRGBA required for this reframing");U=new NH(B,Y)}else U=new NH(B,Y,J);return this.blit(U,F,Z,C,X,G,W),this.bitmap=U.bitmap,this}scale(A){if(A===1)return;if(!Number.isInteger(A)||A<1)throw Error("the scale must be an integer >= 1");let Q=this.bitmap.width,B=this.bitmap.height,Y=Q*A*4,J=this.bitmap.data,C=new Buffer(B*Y*A),X=0,G,W=0;for(let F=0;F{class LH{constructor(A,Q,B){this.width=B.width,this.height=B.height,this.loops=B.loops,this.usesTransparency=B.usesTransparency,this.colorScope=B.colorScope,this.frames=Q,this.buffer=A}}LH.GlobalColorsPreferred=0;LH.GlobalColorsOnly=1;LH.LocalColorsOnly=2;class P1A extends Error{constructor(A){super(A);if(A instanceof Error)this.stack="Gif"+A.stack}}arQ.Gif=LH;arQ.GifError=P1A});var HXA=R((bGY,IXA)=>{var{defineProperty:e3,getOwnPropertyDescriptor:erQ,getOwnPropertyNames:AaQ}=Object,QaQ=Object.prototype.hasOwnProperty,BaQ=(A,Q,B)=>(Q in A)?e3(A,Q,{enumerable:!0,configurable:!0,writable:!0,value:B}):A[Q]=B,YaQ=(A)=>e3(A,"__esModule",{value:!0}),u1=(A,Q)=>{for(var B in Q)e3(A,B,{get:Q[B],enumerable:!0})},JaQ=(A,Q,B,Y)=>{if(Q&&typeof Q==="object"||typeof Q==="function"){for(let J of AaQ(Q))if(!QaQ.call(A,J)&&(B||J!=="default"))e3(A,J,{get:()=>Q[J],enumerable:!(Y=erQ(Q,J))||Y.enumerable})}return A},CaQ=((A)=>{return(Q,B)=>{return A&&A.get(Q)||(B=JaQ(YaQ({}),Q,1),A&&A.set(Q,B),B)}})(typeof WeakMap<"u"?new WeakMap:0),FA=(A,Q,B)=>{return BaQ(A,typeof Q!=="symbol"?Q+"":Q,B),B},_1A={};u1(_1A,{applyPalette:()=>jaQ,applyPaletteSync:()=>waQ,buildPalette:()=>RaQ,buildPaletteSync:()=>zaQ,constants:()=>v1A,conversion:()=>f1A,distance:()=>i1A,image:()=>ZXA,palette:()=>JXA,quality:()=>EXA,utils:()=>CXA});var v1A={};u1(v1A,{bt709:()=>y1A});var y1A={};u1(y1A,{Y:()=>g1A,x:()=>h1A,y:()=>x1A});var g1A=((A)=>{return A[A.RED=0.2126]="RED",A[A.GREEN=0.7152]="GREEN",A[A.BLUE=0.0722]="BLUE",A[A.WHITE=1]="WHITE",A})(g1A||{}),h1A=((A)=>{return A[A.RED=0.64]="RED",A[A.GREEN=0.3]="GREEN",A[A.BLUE=0.15]="BLUE",A[A.WHITE=0.3127]="WHITE",A})(h1A||{}),x1A=((A)=>{return A[A.RED=0.33]="RED",A[A.GREEN=0.6]="GREEN",A[A.BLUE=0.06]="BLUE",A[A.WHITE=0.329]="WHITE",A})(x1A||{}),f1A={};u1(f1A,{lab2rgb:()=>EaQ,lab2xyz:()=>l1A,rgb2hsl:()=>o3,rgb2lab:()=>zH,rgb2xyz:()=>b1A,xyz2lab:()=>c1A,xyz2rgb:()=>p1A});function oh(A){return A>0.04045?((A+0.055)/1.055)**2.4:A/12.92}function b1A(A,Q,B){return A=oh(A/255),Q=oh(Q/255),B=oh(B/255),{x:A*0.4124+Q*0.3576+B*0.1805,y:A*0.2126+Q*0.7152+B*0.0722,z:A*0.0193+Q*0.1192+B*0.9505}}var m1A={};u1(m1A,{degrees2radians:()=>E7,inRange0to255:()=>I8,inRange0to255Rounded:()=>H5,intInRange:()=>XaQ,max3:()=>u1A,min3:()=>d1A,stableSort:()=>Bx});function E7(A){return A*(Math.PI/180)}function u1A(A,Q,B){let Y=A;if(YQ)Y=Q;if(Y>B)Y=B;return Y}function XaQ(A,Q,B){if(A>B)A=B;if(A255)A=255;else if(A<0)A=0;return A}function I8(A){if(A>255)A=255;else if(A<0)A=0;return A}function Bx(A,Q){let B=typeof A[0],Y;if(B==="number"||B==="string"){let J=Object.create(null);for(let C=0,X=A.length;CQ(C,X)||J[C]-J[X])}else{let J=A.slice(0);Y=A.sort((C,X)=>Q(C,X)||J.indexOf(C)-J.indexOf(X))}return Y}function o3(A,Q,B){let Y=d1A(A,Q,B),J=u1A(A,Q,B),C=J-Y,X=(Y+J)/510,G=0;if(X>0&&X<1)G=C/(X<0.5?J+Y:510-J-Y);let W=0;if(C>0){if(J===A)W=(Q-B)/C;else if(J===Q)W=2+(B-A)/C;else W=4+(A-Q)/C;if(W*=60,W<0)W+=360}return{h:W,s:G,l:X}}var GaQ=0.95047,WaQ=1,FaQ=1.08883;function th(A){return A>0.008856?A**0.3333333333333333:7.787*A+0.13793103448275862}function c1A(A,Q,B){if(A=th(A/GaQ),Q=th(Q/WaQ),B=th(B/FaQ),116*Q-16<0)throw Error("xxx");return{L:Math.max(0,116*Q-16),a:500*(A-Q),b:200*(Q-B)}}function zH(A,Q,B){let Y=b1A(A,Q,B);return c1A(Y.x,Y.y,Y.z)}var ZaQ=0.95047,$aQ=1,UaQ=1.08883;function eh(A){return A>0.206893034?A**3:(A-0.13793103448275862)/7.787}function l1A(A,Q,B){let Y=(A+16)/116,J=Q/500+Y,C=Y-B/200;return{x:ZaQ*eh(J),y:$aQ*eh(Y),z:UaQ*eh(C)}}function Ax(A){return A>0.0031308?1.055*A**0.4166666666666667-0.055:12.92*A}function p1A(A,Q,B){let Y=Ax(A*3.2406+Q*-1.5372+B*-0.4986),J=Ax(A*-0.9689+Q*1.8758+B*0.0415),C=Ax(A*0.0557+Q*-0.204+B*1.057);return{r:H5(Y*255),g:H5(J*255),b:H5(C*255)}}function EaQ(A,Q,B){let Y=l1A(A,Q,B);return p1A(Y.x,Y.y,Y.z)}var i1A={};u1(i1A,{AbstractDistanceCalculator:()=>nF,AbstractEuclidean:()=>AR,AbstractManhattan:()=>QR,CIE94GraphicArts:()=>r1A,CIE94Textiles:()=>s1A,CIEDE2000:()=>kC,CMetric:()=>a1A,Euclidean:()=>o1A,EuclideanBT709:()=>t1A,EuclideanBT709NoAlpha:()=>e1A,Manhattan:()=>AXA,ManhattanBT709:()=>BXA,ManhattanNommyde:()=>QXA,PNGQuant:()=>YXA});var nF=class{constructor(){FA(this,"_maxDistance"),FA(this,"_whitePoint"),this._setDefaults(),this.setWhitePoint(255,255,255,255)}setWhitePoint(A,Q,B,Y){this._whitePoint={r:A>0?255/A:0,g:Q>0?255/Q:0,b:B>0?255/B:0,a:Y>0?255/Y:0},this._maxDistance=this.calculateRaw(A,Q,B,Y,0,0,0,0)}calculateNormalized(A,Q){return this.calculateRaw(A.r,A.g,A.b,A.a,Q.r,Q.g,Q.b,Q.a)/this._maxDistance}},n1A=class extends nF{calculateRaw(A,Q,B,Y,J,C,X,G){let W=zH(I8(A*this._whitePoint.r),I8(Q*this._whitePoint.g),I8(B*this._whitePoint.b)),F=zH(I8(J*this._whitePoint.r),I8(C*this._whitePoint.g),I8(X*this._whitePoint.b)),Z=W.L-F.L,U=W.a-F.a,$=W.b-F.b,E=Math.sqrt(W.a*W.a+W.b*W.b),K=Math.sqrt(F.a*F.a+F.b*F.b),I=E-K,V=U*U+$*$-I*I;V=V<0?0:Math.sqrt(V);let H=(G-Y)*this._whitePoint.a*this._kA;return Math.sqrt((Z/this._Kl)**2+(I/(1+this._K1*E))**2+(V/(1+this._K2*E))**2+H**2)}},s1A=class extends n1A{_setDefaults(){this._Kl=2,this._K1=0.048,this._K2=0.014,this._kA=0.049019607843137254}},r1A=class extends n1A{_setDefaults(){this._Kl=1,this._K1=0.045,this._K2=0.015,this._kA=0.09803921568627451}},R0=class extends nF{_setDefaults(){}static _calculatehp(A,Q){let B=Math.atan2(A,Q);if(B>=0)return B;return B+R0._deg360InRad}static _calculateRT(A,Q){let B=Q**7,Y=2*Math.sqrt(B/(B+R0._pow25to7)),J=R0._deg30InRad*Math.exp(-(((A-R0._deg275InRad)/R0._deg25InRad)**2));return-Math.sin(2*J)*Y}static _calculateT(A){return 1-0.17*Math.cos(A-R0._deg30InRad)+0.24*Math.cos(A*2)+0.32*Math.cos(A*3+R0._deg6InRad)-0.2*Math.cos(A*4-R0._deg63InRad)}static _calculate_ahp(A,Q,B,Y){let J=B+Y;if(A===0)return J;if(Q<=R0._deg180InRad)return J/2;if(J>8)+4*Z*Z+((767-W)*U*U>>8),E=(G-Y)*this._whitePoint.a;return Math.sqrt($+E*E)}_setDefaults(){}},AR=class extends nF{calculateRaw(A,Q,B,Y,J,C,X,G){let W=J-A,F=C-Q,Z=X-B,U=G-Y;return Math.sqrt(this._kR*W*W+this._kG*F*F+this._kB*Z*Z+this._kA*U*U)}},o1A=class extends AR{_setDefaults(){this._kR=1,this._kG=1,this._kB=1,this._kA=1}},t1A=class extends AR{_setDefaults(){this._kR=0.2126,this._kG=0.7152,this._kB=0.0722,this._kA=1}},e1A=class extends AR{_setDefaults(){this._kR=0.2126,this._kG=0.7152,this._kB=0.0722,this._kA=0}},QR=class extends nF{calculateRaw(A,Q,B,Y,J,C,X,G){let W=J-A,F=C-Q,Z=X-B,U=G-Y;if(W<0)W=0-W;if(F<0)F=0-F;if(Z<0)Z=0-Z;if(U<0)U=0-U;return this._kR*W+this._kG*F+this._kB*Z+this._kA*U}},AXA=class extends QR{_setDefaults(){this._kR=1,this._kG=1,this._kB=1,this._kA=1}},QXA=class extends QR{_setDefaults(){this._kR=0.4984,this._kG=0.8625,this._kB=0.2979,this._kA=1}},BXA=class extends QR{_setDefaults(){this._kR=0.2126,this._kG=0.7152,this._kB=0.0722,this._kA=1}},YXA=class extends nF{calculateRaw(A,Q,B,Y,J,C,X,G){let W=(G-Y)*this._whitePoint.a;return this._colordifferenceCh(A*this._whitePoint.r,J*this._whitePoint.r,W)+this._colordifferenceCh(Q*this._whitePoint.g,C*this._whitePoint.g,W)+this._colordifferenceCh(B*this._whitePoint.b,X*this._whitePoint.b,W)}_colordifferenceCh(A,Q,B){let Y=A-Q,J=Y+B;return Y*Y+J*J}_setDefaults(){}},JXA={};u1(JXA,{AbstractPaletteQuantizer:()=>RH,ColorHistogram:()=>jH,NeuQuant:()=>_0,NeuQuantFloat:()=>v0,RGBQuant:()=>WXA,WuColorCube:()=>FXA,WuQuant:()=>IU});var RH=class{quantizeSync(){for(let A of this.quantize())if(A.palette)return A.palette;throw Error("unreachable")}},H8=class{constructor(){FA(this,"r"),FA(this,"g"),FA(this,"b"),FA(this,"a"),FA(this,"uint32"),FA(this,"rgba"),this.uint32=4294967295,this.r=this.g=this.b=this.a=0,this.rgba=[,,,,],this.rgba[0]=0,this.rgba[1]=0,this.rgba[2]=0,this.rgba[3]=0}static createByQuadruplet(A){let Q=new H8;return Q.r=A[0]|0,Q.g=A[1]|0,Q.b=A[2]|0,Q.a=A[3]|0,Q._loadUINT32(),Q._loadQuadruplet(),Q}static createByRGBA(A,Q,B,Y){let J=new H8;return J.r=A|0,J.g=Q|0,J.b=B|0,J.a=Y|0,J._loadUINT32(),J._loadQuadruplet(),J}static createByUint32(A){let Q=new H8;return Q.uint32=A>>>0,Q._loadRGBA(),Q._loadQuadruplet(),Q}from(A){this.r=A.r,this.g=A.g,this.b=A.b,this.a=A.a,this.uint32=A.uint32,this.rgba[0]=A.r,this.rgba[1]=A.g,this.rgba[2]=A.b,this.rgba[3]=A.a}getLuminosity(A){let Q=this.r,B=this.g,Y=this.b;if(A)Q=Math.min(255,255-this.a+this.a*Q/255),B=Math.min(255,255-this.a+this.a*B/255),Y=Math.min(255,255-this.a+this.a*Y/255);return Q*0.2126+B*0.7152+Y*0.0722}_loadUINT32(){this.uint32=(this.a<<24|this.b<<16|this.g<<8|this.r)>>>0}_loadRGBA(){this.r=this.uint32&255,this.g=this.uint32>>>8&255,this.b=this.uint32>>>16&255,this.a=this.uint32>>>24&255}_loadQuadruplet(){this.rgba[0]=this.r,this.rgba[1]=this.g,this.rgba[2]=this.b,this.rgba[3]=this.a}},O6=class{constructor(){FA(this,"_pointArray"),FA(this,"_width"),FA(this,"_height"),this._width=0,this._height=0,this._pointArray=[]}getWidth(){return this._width}getHeight(){return this._height}setWidth(A){this._width=A}setHeight(A){this._height=A}getPointArray(){return this._pointArray}clone(){let A=new O6;A._width=this._width,A._height=this._height;for(let Q=0,B=this._pointArray.length;Q=X&&A=0;Q--)if(A.uint32===this._pointArray[Q].uint32)return!0;return!1}getNearestColor(A,Q){return this._pointArray[this._getNearestIndex(A,Q)|0]}getPointContainer(){return this._pointContainer}_nearestPointFromCache(A){return typeof this._i32idx[A]==="number"?this._i32idx[A]:-1}_getNearestIndex(A,Q){let B=this._nearestPointFromCache(""+Q.uint32);if(B>=0)return B;let Y=Number.MAX_VALUE;B=0;for(let J=0,C=this._pointArray.length;J{let B=o3(A.r,A.g,A.b),Y=o3(Q.r,Q.g,Q.b),J=A.r===A.g&&A.g===A.b?0:1+Qx(B.h,T1A),X=(Q.r===Q.g&&Q.g===Q.b?0:1+Qx(Y.h,T1A))-J;if(X)return-X;let G=A.getLuminosity(!0),W=Q.getLuminosity(!0);if(W-G!==0)return W-G;let F=(Y.s*100|0)-(B.s*100|0);if(F)return-F;return 0})}},CXA={};u1(CXA,{HueStatistics:()=>XXA,Palette:()=>wH,Point:()=>H8,PointContainer:()=>O6,ProgressTracker:()=>P6,arithmetic:()=>m1A});var KaQ=class{constructor(){FA(this,"num",0),FA(this,"cols",[])}},XXA=class{constructor(A,Q){FA(this,"_numGroups"),FA(this,"_minCols"),FA(this,"_stats"),FA(this,"_groupsFull"),this._numGroups=A,this._minCols=Q,this._stats=[];for(let B=0;B<=A;B++)this._stats[B]=new KaQ;this._groupsFull=0}check(A){if(this._groupsFull===this._numGroups+1)this.check=()=>{};let Q=A&255,B=A>>>8&255,Y=A>>>16&255,J=Q===B&&B===Y?0:1+Qx(o3(Q,B,Y).h,this._numGroups),C=this._stats[J],X=this._minCols;if(C.num++,C.num>X)return;if(C.num===X)this._groupsFull++;if(C.num<=X)this._stats[J].cols.push(A)}injectIntoDictionary(A){for(let Q=0;Q<=this._numGroups;Q++)if(this._stats[Q].num<=this._minCols)this._stats[Q].cols.forEach((B)=>{if(!A[B])A[B]=1;else A[B]++})}injectIntoArray(A){for(let Q=0;Q<=this._numGroups;Q++)if(this._stats[Q].num<=this._minCols)this._stats[Q].cols.forEach((B)=>{if(A.indexOf(B)===-1)A.push(B)})}},GXA=class{constructor(A,Q){FA(this,"progress"),FA(this,"_step"),FA(this,"_range"),FA(this,"_last"),FA(this,"_progressRange"),this._range=A,this._progressRange=Q,this._step=Math.max(1,this._range/(GXA.steps+1)|0),this._last=-this._step,this.progress=0}shouldNotify(A){if(A-this._last>=this._step)return this._last=A,this.progress=Math.min(this._progressRange*this._last/this._range,this._progressRange),!0;return!1}},P6=GXA;FA(P6,"steps",100);var Q9=3,VaQ=class{constructor(A){FA(this,"r"),FA(this,"g"),FA(this,"b"),FA(this,"a"),this.r=this.g=this.b=this.a=A}toPoint(){return H8.createByRGBA(this.r>>Q9,this.g>>Q9,this.b>>Q9,this.a>>Q9)}subtract(A,Q,B,Y){this.r-=A|0,this.g-=Q|0,this.b-=B|0,this.a-=Y|0}},BB=class extends RH{constructor(A,Q=256){super();FA(this,"_pointArray"),FA(this,"_networkSize"),FA(this,"_network"),FA(this,"_sampleFactor"),FA(this,"_radPower"),FA(this,"_freq"),FA(this,"_bias"),FA(this,"_distance"),this._distance=A,this._pointArray=[],this._sampleFactor=1,this._networkSize=Q,this._distance.setWhitePoint(255<>3)*BB._radiusBias,G=X>>BB._radiusBiasShift;if(G<=1)G=0;for(let Z=0;Z>>0;let W;if(Q=Q)U-=Q;if(Z++,J===0)J=1;if(Z%J===0){if(C-=C/B|0,X-=X/BB._radiusDecrease|0,G=X>>BB._radiusBiasShift,G<=1)G=0;for(let D=0;D>>0}}}_buildPalette(){let A=new wH;return this._network.forEach((Q)=>{A.add(Q.toPoint())}),A.sort(),A}_alterNeighbour(A,Q,B,Y,J,C){let X=Q-A;if(X<-1)X=-1;let G=Q+A;if(G>this._networkSize)G=this._networkSize;let W=Q+1,F=Q-1,Z=1;while(WX){let U=this._radPower[Z++]/BB._alphaRadBias;if(WX){let $=this._network[F--];$.subtract(U*($.r-J),U*($.g-Y),U*($.b-B),U*($.a-C))}}}_alterSingle(A,Q,B,Y,J,C){A/=BB._initAlpha;let X=this._network[Q];X.subtract(A*(X.r-J),A*(X.g-Y),A*(X.b-B),A*(X.a-C))}_contest(A,Q,B,Y){let J=1020<>BB._initialBiasShift-Q9);if($>BB._betaShift;this._freq[F]-=E,this._bias[F]+=E<>BB._betaShift);FA(_0,"_betaGamma",BB._initialBias<>B9,this.g>>B9,this.b>>B9,this.a>>B9)}subtract(A,Q,B,Y){this.r-=A,this.g-=Q,this.b-=B,this.a-=Y}},YB=class extends RH{constructor(A,Q=256){super();FA(this,"_pointArray"),FA(this,"_networkSize"),FA(this,"_network"),FA(this,"_sampleFactor"),FA(this,"_radPower"),FA(this,"_freq"),FA(this,"_bias"),FA(this,"_distance"),this._distance=A,this._pointArray=[],this._sampleFactor=1,this._networkSize=Q,this._distance.setWhitePoint(255<>3)*YB._radiusBias,G=X>>YB._radiusBiasShift;if(G<=1)G=0;for(let Z=0;Z=Q)U-=Q;if(Z++,J===0)J=1;if(Z%J===0){if(C-=C/B,X-=X/YB._radiusDecrease,G=X>>YB._radiusBiasShift,G<=1)G=0;for(let D=0;D{A.add(Q.toPoint())}),A.sort(),A}_alterNeighbour(A,Q,B,Y,J,C){let X=Q-A;if(X<-1)X=-1;let G=Q+A;if(G>this._networkSize)G=this._networkSize;let W=Q+1,F=Q-1,Z=1;while(WX){let U=this._radPower[Z++]/YB._alphaRadBias;if(WX){let $=this._network[F--];$.subtract(U*($.r-J),U*($.g-Y),U*($.b-B),U*($.a-C))}}}_alterSingle(A,Q,B,Y,J,C){A/=YB._initAlpha;let X=this._network[Q];X.subtract(A*(X.r-J),A*(X.g-Y),A*(X.b-B),A*(X.a-C))}_contest(A,Q,B,Y){let J=1020<>YB._initialBiasShift-B9);if($>YB._betaShift;this._freq[F]-=E,this._bias[F]+=E<>YB._betaShift);FA(v0,"_betaGamma",YB._initialBias<this._histogram[Y]-this._histogram[B]);if(A.length===0)return[];let Q;switch(this._method){case 1:let B=Math.min(A.length,this._initColors),Y=A[B-1],J=this._histogram[Y];Q=A.slice(0,B);let C=B,X=A.length;while(C+B)}_colorStats1D(A){let Q=this._histogram,B=A.getPointArray(),Y=B.length;for(let J=0;J{let Z=Math.round(F.w*F.h/X)*MH._boxPixels;if(Z<2)Z=2;let U={};this._iterateBox(F,Q,($)=>{let E=Y[$].uint32;if(this._hueStats.check(E),E in W)W[E]++;else if(E in U){if(++U[E]>=Z)W[E]=U[E]}else U[E]=1})}),this._hueStats.injectIntoDictionary(W)}_iterateBox(A,Q,B){let Y=A,J=Y.y*Q+Y.x,C=(Y.y+Y.h-1)*Q+(Y.x+Y.w-1),X=Q-Y.w+1,G=0,W=J;do B.call(this,W),W+=++G%Y.w===0?X:1;while(W<=C)}_makeBoxes(A,Q,B,Y){let J=A%B,C=Q%Y,X=A-J,G=Q-C,W=[];for(let F=0;Fthis._colors){C.length=0;for(let Z=0;Zthis._colors*3?this._initialDistance:this._distanceIncrement}if(X$.distance-U.distance);let Z=0;while(X=0;Z--)if(Y[Z]===0){if(Z!==F-1)B[Z]=B[F-1];--F}B.length=F,Q.sort(),yield{palette:Q,progress:100}}};function $U(A){let Q=[];for(let B=0;B0){let B=this._sums[Q],Y=this._reds[Q]/B,J=this._greens[Q]/B,C=this._blues[Q]/B,X=this._alphas[Q]/B,G=H8.createByRGBA(Y|0,J|0,C|0,X|0);A.add(G)}A.sort(),yield{palette:A,progress:100}}*_preparePalette(){yield*this._calculateMoments();let A=0,Q=$U(this._colors);for(let X=1;X1?this._calculateVariance(this._cubes[A]):0,Q[X]=this._cubes[X].volume>1?this._calculateVariance(this._cubes[X]):0;else Q[A]=0,X--;A=0;let G=Q[0];for(let W=1;W<=X;++W)if(Q[W]>G)G=Q[W],A=W;if(G<=0){this._colors=X+1;break}}let B=[],Y=[],J=[],C=[];for(let X=0;X0)B[X]=OQ._volume(this._cubes[X],this._momentsRed)/G|0,Y[X]=OQ._volume(this._cubes[X],this._momentsGreen)/G|0,J[X]=OQ._volume(this._cubes[X],this._momentsBlue)/G|0,C[X]=OQ._volume(this._cubes[X],this._momentsAlpha)/G|0;else B[X]=0,Y[X]=0,J[X]=0,C[X]=0}this._reds=$U(this._colors+1),this._greens=$U(this._colors+1),this._blues=$U(this._colors+1),this._alphas=$U(this._colors+1),this._sums=$U(this._colors+1);for(let X=0,G=this._pixels.length;X>Q)+1,Y=(A.g>>Q)+1,J=(A.b>>Q)+1,C=(A.a>>Q)+1;this._weights[C][B][Y][J]++,this._momentsRed[C][B][Y][J]+=A.r,this._momentsGreen[C][B][Y][J]+=A.g,this._momentsBlue[C][B][Y][J]+=A.b,this._momentsAlpha[C][B][Y][J]+=A.a,this._moments[C][B][Y][J]+=this._table[A.r]+this._table[A.g]+this._table[A.b]+this._table[A.a]}*_calculateMoments(){let A=[],Q=[],B=[],Y=[],J=[],C=[],X=EU(this._sideSize,this._sideSize,this._sideSize),G=EU(this._sideSize,this._sideSize,this._sideSize),W=EU(this._sideSize,this._sideSize,this._sideSize),F=EU(this._sideSize,this._sideSize,this._sideSize),Z=EU(this._sideSize,this._sideSize,this._sideSize),U=EU(this._sideSize,this._sideSize,this._sideSize),$=0,E=new P6(this._alphaMaxSideIndex*this._maxSideIndex,99);for(let K=1;K<=this._alphaMaxSideIndex;++K){KU(X,this._sideSize,this._sideSize,this._sideSize,0),KU(G,this._sideSize,this._sideSize,this._sideSize,0),KU(W,this._sideSize,this._sideSize,this._sideSize,0),KU(F,this._sideSize,this._sideSize,this._sideSize,0),KU(Z,this._sideSize,this._sideSize,this._sideSize,0),KU(U,this._sideSize,this._sideSize,this._sideSize,0);for(let I=1;I<=this._maxSideIndex;++I,++$){if(E.shouldNotify($))yield{progress:E.progress};VU(A,this._sideSize,0),VU(Q,this._sideSize,0),VU(B,this._sideSize,0),VU(Y,this._sideSize,0),VU(J,this._sideSize,0),VU(C,this._sideSize,0);for(let V=1;V<=this._maxSideIndex;++V){let H=0,D=0,L=0,z=0,M=0,N=0;for(let q=1;q<=this._maxSideIndex;++q)H+=this._weights[K][I][V][q],D+=this._momentsRed[K][I][V][q],L+=this._momentsGreen[K][I][V][q],z+=this._momentsBlue[K][I][V][q],M+=this._momentsAlpha[K][I][V][q],N+=this._moments[K][I][V][q],A[q]+=H,Q[q]+=D,B[q]+=L,Y[q]+=z,J[q]+=M,C[q]+=N,X[I][V][q]=X[I-1][V][q]+A[q],G[I][V][q]=G[I-1][V][q]+Q[q],W[I][V][q]=W[I-1][V][q]+B[q],F[I][V][q]=F[I-1][V][q]+Y[q],Z[I][V][q]=Z[I-1][V][q]+J[q],U[I][V][q]=U[I-1][V][q]+C[q],this._weights[K][I][V][q]=this._weights[K-1][I][V][q]+X[I][V][q],this._momentsRed[K][I][V][q]=this._momentsRed[K-1][I][V][q]+G[I][V][q],this._momentsGreen[K][I][V][q]=this._momentsGreen[K-1][I][V][q]+W[I][V][q],this._momentsBlue[K][I][V][q]=this._momentsBlue[K-1][I][V][q]+F[I][V][q],this._momentsAlpha[K][I][V][q]=this._momentsAlpha[K-1][I][V][q]+Z[I][V][q],this._moments[K][I][V][q]=this._moments[K-1][I][V][q]+U[I][V][q]}}}}static _volumeFloat(A,Q){return Q[A.alphaMaximum][A.redMaximum][A.greenMaximum][A.blueMaximum]-Q[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMaximum]-Q[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMaximum]+Q[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMaximum]-Q[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMaximum]+Q[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMaximum]+Q[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMaximum]-Q[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(Q[A.alphaMaximum][A.redMaximum][A.greenMaximum][A.blueMinimum]-Q[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMinimum]-Q[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMinimum]+Q[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]-Q[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMinimum]+Q[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]+Q[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]-Q[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum])}static _volume(A,Q){return OQ._volumeFloat(A,Q)|0}static _top(A,Q,B,Y){let J;switch(Q){case OQ._alpha:J=Y[B][A.redMaximum][A.greenMaximum][A.blueMaximum]-Y[B][A.redMaximum][A.greenMinimum][A.blueMaximum]-Y[B][A.redMinimum][A.greenMaximum][A.blueMaximum]+Y[B][A.redMinimum][A.greenMinimum][A.blueMaximum]-(Y[B][A.redMaximum][A.greenMaximum][A.blueMinimum]-Y[B][A.redMaximum][A.greenMinimum][A.blueMinimum]-Y[B][A.redMinimum][A.greenMaximum][A.blueMinimum]+Y[B][A.redMinimum][A.greenMinimum][A.blueMinimum]);break;case OQ._red:J=Y[A.alphaMaximum][B][A.greenMaximum][A.blueMaximum]-Y[A.alphaMaximum][B][A.greenMinimum][A.blueMaximum]-Y[A.alphaMinimum][B][A.greenMaximum][A.blueMaximum]+Y[A.alphaMinimum][B][A.greenMinimum][A.blueMaximum]-(Y[A.alphaMaximum][B][A.greenMaximum][A.blueMinimum]-Y[A.alphaMaximum][B][A.greenMinimum][A.blueMinimum]-Y[A.alphaMinimum][B][A.greenMaximum][A.blueMinimum]+Y[A.alphaMinimum][B][A.greenMinimum][A.blueMinimum]);break;case OQ._green:J=Y[A.alphaMaximum][A.redMaximum][B][A.blueMaximum]-Y[A.alphaMaximum][A.redMinimum][B][A.blueMaximum]-Y[A.alphaMinimum][A.redMaximum][B][A.blueMaximum]+Y[A.alphaMinimum][A.redMinimum][B][A.blueMaximum]-(Y[A.alphaMaximum][A.redMaximum][B][A.blueMinimum]-Y[A.alphaMaximum][A.redMinimum][B][A.blueMinimum]-Y[A.alphaMinimum][A.redMaximum][B][A.blueMinimum]+Y[A.alphaMinimum][A.redMinimum][B][A.blueMinimum]);break;case OQ._blue:J=Y[A.alphaMaximum][A.redMaximum][A.greenMaximum][B]-Y[A.alphaMaximum][A.redMaximum][A.greenMinimum][B]-Y[A.alphaMaximum][A.redMinimum][A.greenMaximum][B]+Y[A.alphaMaximum][A.redMinimum][A.greenMinimum][B]-(Y[A.alphaMinimum][A.redMaximum][A.greenMaximum][B]-Y[A.alphaMinimum][A.redMaximum][A.greenMinimum][B]-Y[A.alphaMinimum][A.redMinimum][A.greenMaximum][B]+Y[A.alphaMinimum][A.redMinimum][A.greenMinimum][B]);break;default:throw Error("impossible")}return J|0}static _bottom(A,Q,B){switch(Q){case OQ._alpha:return-B[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMaximum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMaximum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMaximum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(-B[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMinimum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);case OQ._red:return-B[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMaximum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMaximum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMaximum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(-B[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMinimum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);case OQ._green:return-B[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMaximum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMaximum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMaximum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(-B[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);case OQ._blue:return-B[A.alphaMaximum][A.redMaximum][A.greenMaximum][A.blueMinimum]+B[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]-(-B[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMinimum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);default:return 0}}_calculateVariance(A){let Q=OQ._volume(A,this._momentsRed),B=OQ._volume(A,this._momentsGreen),Y=OQ._volume(A,this._momentsBlue),J=OQ._volume(A,this._momentsAlpha),C=OQ._volumeFloat(A,this._moments),X=OQ._volume(A,this._weights),G=Q*Q+B*B+Y*Y+J*J;return C-G/X}_maximize(A,Q,B,Y,J,C,X,G,W){let F=OQ._bottom(A,Q,this._momentsRed)|0,Z=OQ._bottom(A,Q,this._momentsGreen)|0,U=OQ._bottom(A,Q,this._momentsBlue)|0,$=OQ._bottom(A,Q,this._momentsAlpha)|0,E=OQ._bottom(A,Q,this._weights)|0,K=0,I=-1;for(let V=B;VK)K=q,I=V}}}return{max:K,position:I}}_cut(A,Q){let B,Y=OQ._volume(A,this._momentsRed),J=OQ._volume(A,this._momentsGreen),C=OQ._volume(A,this._momentsBlue),X=OQ._volume(A,this._momentsAlpha),G=OQ._volume(A,this._weights),W=this._maximize(A,OQ._red,A.redMinimum+1,A.redMaximum,Y,J,C,X,G),F=this._maximize(A,OQ._green,A.greenMinimum+1,A.greenMaximum,Y,J,C,X,G),Z=this._maximize(A,OQ._blue,A.blueMinimum+1,A.blueMaximum,Y,J,C,X,G),U=this._maximize(A,OQ._alpha,A.alphaMinimum+1,A.alphaMaximum,Y,J,C,X,G);if(U.max>=W.max&&U.max>=F.max&&U.max>=Z.max){if(B=OQ._alpha,U.position<0)return!1}else if(W.max>=U.max&&W.max>=F.max&&W.max>=Z.max)B=OQ._red;else if(F.max>=U.max&&F.max>=W.max&&F.max>=Z.max)B=OQ._green;else B=OQ._blue;switch(Q.redMaximum=A.redMaximum,Q.greenMaximum=A.greenMaximum,Q.blueMaximum=A.blueMaximum,Q.alphaMaximum=A.alphaMaximum,B){case OQ._red:Q.redMinimum=A.redMaximum=W.position,Q.greenMinimum=A.greenMinimum,Q.blueMinimum=A.blueMinimum,Q.alphaMinimum=A.alphaMinimum;break;case OQ._green:Q.greenMinimum=A.greenMaximum=F.position,Q.redMinimum=A.redMinimum,Q.blueMinimum=A.blueMinimum,Q.alphaMinimum=A.alphaMinimum;break;case OQ._blue:Q.blueMinimum=A.blueMaximum=Z.position,Q.redMinimum=A.redMinimum,Q.greenMinimum=A.greenMinimum,Q.alphaMinimum=A.alphaMinimum;break;case OQ._alpha:Q.alphaMinimum=A.alphaMaximum=U.position,Q.blueMinimum=A.blueMinimum,Q.redMinimum=A.redMinimum,Q.greenMinimum=A.greenMinimum;break}return A.volume=(A.redMaximum-A.redMinimum)*(A.greenMaximum-A.greenMinimum)*(A.blueMaximum-A.blueMinimum)*(A.alphaMaximum-A.alphaMinimum),Q.volume=(Q.redMaximum-Q.redMinimum)*(Q.greenMaximum-Q.greenMinimum)*(Q.blueMaximum-Q.blueMinimum)*(Q.alphaMaximum-Q.alphaMinimum),!0}_initialize(A){this._colors=A,this._cubes=[];for(let Q=0;QBR,ErrorDiffusionArray:()=>m1,ErrorDiffusionArrayKernel:()=>UXA,ErrorDiffusionRiemersma:()=>Yx,NearestColor:()=>$XA});var BR=class{quantizeSync(A,Q){for(let B of this.quantize(A,Q))if(B.pointContainer)return B.pointContainer;throw Error("unreachable")}},$XA=class extends BR{constructor(A){super();FA(this,"_distance"),this._distance=A}*quantize(A,Q){let B=A.getPointArray(),Y=A.getWidth(),J=A.getHeight(),C=new P6(J,99);for(let X=0;X{return A[A.FloydSteinberg=0]="FloydSteinberg",A[A.FalseFloydSteinberg=1]="FalseFloydSteinberg",A[A.Stucki=2]="Stucki",A[A.Atkinson=3]="Atkinson",A[A.Jarvis=4]="Jarvis",A[A.Burkes=5]="Burkes",A[A.Sierra=6]="Sierra",A[A.TwoSierra=7]="TwoSierra",A[A.SierraLite=8]="SierraLite",A})(UXA||{}),m1=class extends BR{constructor(A,Q,B=!0,Y=0,J=!1){super();FA(this,"_minColorDistance"),FA(this,"_serpentine"),FA(this,"_kernel"),FA(this,"_calculateErrorLikeGIMP"),FA(this,"_distance"),this._setKernel(Q),this._distance=A,this._minColorDistance=Y,this._serpentine=B,this._calculateErrorLikeGIMP=J}*quantize(A,Q){let B=A.getPointArray(),Y=new H8,J=A.getWidth(),C=A.getHeight(),X=[],G=1,W=1;for(let Z of this._kernel){let U=Z[2]+1;if(W=0&&k+I=0&&T+ZQ)A.length=Q;let B=A.length;for(let Y=0;Y=0&&A.x=0&&A.y{let F=B[G+W*Y],{r:Z,g:U,b:$,a:E}=F;for(let H=0;HqaQ});var NaQ=0.01,LaQ=0.03;function qaQ(A,Q){if(A.getHeight()!==Q.getHeight()||A.getWidth()!==Q.getWidth())throw Error("Images have different sizes!");let Y=255,J=(NaQ*Y)**2,C=(LaQ*Y)**2,X=0,G=0;return MaQ(A,Q,(W,F,Z,U)=>{let $=0,E=0,K=0;for(let L=0;Lprocess.nextTick(A):(A)=>setTimeout(A,0);function zaQ(A,{colorDistanceFormula:Q,paletteQuantization:B,colors:Y}={}){let J=YR(Q),C=VXA(J,B,Y);return A.forEach((X)=>C.sample(X)),C.quantizeSync()}async function RaQ(A,{colorDistanceFormula:Q,paletteQuantization:B,colors:Y,onProgress:J}={}){return new Promise((C,X)=>{let G=YR(Q),W=VXA(G,B,Y);A.forEach(($)=>W.sample($));let F,Z=W.quantize(),U=()=>{try{let $=Z.next();if($.done)C(F);else{if($.value.palette)F=$.value.palette;if(J)J($.value.progress);t3(U)}}catch($){X($)}};t3(U)})}function waQ(A,Q,{colorDistanceFormula:B,imageQuantization:Y}={}){let J=YR(B);return KXA(J,Y).quantizeSync(A,Q)}async function jaQ(A,Q,{colorDistanceFormula:B,imageQuantization:Y,onProgress:J}={}){return new Promise((C,X)=>{let G=YR(B),W=KXA(G,Y),F,Z=W.quantize(A,Q),U=()=>{try{let $=Z.next();if($.done)C(F);else{if($.value.pointContainer)F=$.value.pointContainer;if(J)J($.value.progress);t3(U)}}catch($){X($)}};t3(U)})}function YR(A="euclidean-bt709"){switch(A){case"cie94-graphic-arts":return new r1A;case"cie94-textiles":return new s1A;case"ciede2000":return new kC;case"color-metric":return new a1A;case"euclidean":return new o1A;case"euclidean-bt709":return new t1A;case"euclidean-bt709-noalpha":return new e1A;case"manhattan":return new AXA;case"manhattan-bt709":return new BXA;case"manhattan-nommyde":return new QXA;case"pngquant":return new YXA;default:throw Error(`Unknown colorDistanceFormula ${A}`)}}function KXA(A,Q="floyd-steinberg"){switch(Q){case"nearest":return new $XA(A);case"riemersma":return new Yx(A);case"floyd-steinberg":return new m1(A,0);case"false-floyd-steinberg":return new m1(A,1);case"stucki":return new m1(A,2);case"atkinson":return new m1(A,3);case"jarvis":return new m1(A,4);case"burkes":return new m1(A,5);case"sierra":return new m1(A,6);case"two-sierra":return new m1(A,7);case"sierra-lite":return new m1(A,8);default:throw Error(`Unknown imageQuantization ${Q}`)}}function VXA(A,Q="wuquant",B=256){switch(Q){case"neuquant":return new _0(A,B);case"rgbquant":return new WXA(A,B);case"wuquant":return new IU(A,B);case"neuquant-float":return new v0(A,B);default:throw Error(`Unknown paletteQuantization ${Q}`)}}IXA.exports=CaQ(_1A)});var JR=R((OaQ)=>{var DXA=a3(),{GifError:q7Y}=qH();class K7 extends DXA{constructor(...A){super(...A);if(A[0]instanceof K7){let Q=A[0];this.xOffset=Q.xOffset,this.yOffset=Q.yOffset,this.disposalMethod=Q.disposalMethod,this.delayCentisecs=Q.delayCentisecs,this.interlaced=Q.interlaced}else{let Q=A[A.length-1],B={};if(typeof Q==="object"&&!(Q instanceof DXA))B=Q;this.xOffset=B.xOffset||0,this.yOffset=B.yOffset||0,this.disposalMethod=B.disposalMethod!==void 0?B.disposalMethod:K7.DisposeToBackgroundColor,this.delayCentisecs=B.delayCentisecs||8,this.interlaced=B.interlaced||!1}}getPalette(){let A=new Set,Q=this.bitmap.data,B=0,Y=!1;while(B>8&16777215;A.add(G)}B+=4}let J=Array(A.size),C=A.values();for(B=0;BG-W);let X=J.length;if(Y)++X;return{colors:J,usesTransparency:Y,indexCount:X}}}K7.DisposeToAnything=0;K7.DisposeNothing=1;K7.DisposeToBackgroundColor=2;K7.DisposeToPrevious=3;OaQ.GifFrame=K7});var Cx=R((haQ)=>{var NXA=u("fs"),HU=HXA(),TaQ=a3(),{GifFrame:SaQ}=JR(),{GifError:kaQ}=qH(),{GifCodec:_aQ}=Xx(),vaQ=[".jpg",".jpeg",".png",".bmp"],LXA=new _aQ;haQ.cloneFrames=function(A){let Q=[];return A.forEach((B)=>{Q.push(new SaQ(B))}),Q};haQ.getColorInfo=function(A,Q){let B=!1,Y=[];for(let W=0;W256)throw new kaQ(`Frame ${W} uses more than 256 color indexes`);Y.push(F)}if(Q===0)return{usesTransparency:B,palettes:Y};let J=new Set;Y.forEach((W)=>{W.colors.forEach((F)=>{J.add(F)})});let C=J.size;if(B)++C;if(Q&&C>Q)return{usesTransparency:B,palettes:Y};let X=Array(J.size),G=J.values();for(let W=0;WW-F),{colors:X,indexCount:C,usesTransparency:B,palettes:Y}};haQ.copyAsJimp=function(A,Q){return haQ.shareAsJimp(A,new TaQ(Q))};haQ.getMaxDimensions=function(A){let Q=0,B=0;return A.forEach((Y)=>{let J=Y.xOffset+Y.bitmap.width;if(J>Q)Q=J;let C=Y.yOffset+Y.bitmap.height;if(C>B)B=C}),{maxWidth:Q,maxHeight:B}};haQ.quantizeDekker=function(A,Q,B){Q=Q||256,Jx(A,"NeuQuantFloat",Q,0,B)};haQ.quantizeSorokin=function(A,Q,B,Y){Q=Q||256,B=B||"min-pop";let J;switch(B){case"min-pop":J=2;break;case"top-pop":J=1;break;default:throw Error(`Invalid quantizeSorokin histogram '${B}'`)}Jx(A,"RGBQuant",Q,J,Y)};haQ.quantizeWu=function(A,Q,B,Y){if(Q=Q||256,B=B||5,B<1||B>8)throw Error("Invalid quantization quality");Jx(A,"WuQuant",Q,B,Y)};haQ.read=function(A,Q){if(Q=Q||LXA,Buffer.isBuffer(A))return Q.decodeGif(A);return yaQ(A).then((B)=>{return Q.decodeGif(B)})};haQ.shareAsJimp=function(A,Q){let B=new A(Q.bitmap.width,Q.bitmap.height,0);return B.bitmap.data=Q.bitmap.data,B};haQ.write=function(A,Q,B,Y){Y=Y||LXA;let J=A.match(/\.[a-zA-Z]+$/);if(J!==null&&vaQ.includes(J[0].toLowerCase()))throw Error(`GIF '${A}' has an unexpected suffix`);return Y.encodeGif(Q,B).then((C)=>{return gaQ(A,C.buffer).then(()=>{return C})})};function Jx(A,Q,B,Y,J){let C=Array.isArray(A)?A:[A],X=["FloydSteinberg","FalseFloydSteinberg","Stucki","Atkinson","Jarvis","Burkes","Sierra","TwoSierra","SierraLite"];if(J){if(X.indexOf(J.ditherAlgorithm)<0)throw Error(`Invalid ditherAlgorithm '${J.ditherAlgorithm}'`);if(J.serpentine===void 0)J.serpentine=!0;if(J.minimumColorDistanceToDither===void 0)J.minimumColorDistanceToDither=0;if(J.calculateErrorLikeGIMP===void 0)J.calculateErrorLikeGIMP=!1}let G=new HU.distance.Euclidean,W=new HU.palette[Q](G,B,Y),F;if(J)F=new HU.image.ErrorDiffusionArray(G,HU.image.ErrorDiffusionArrayKernel[J.ditherAlgorithm],J.serpentine,J.minimumColorDistanceToDither,J.calculateErrorLikeGIMP);else F=new HU.image.NearestColor(G);let Z=[];C.forEach(($)=>{let E=$.bitmap.data,K=new ArrayBuffer(E.length),I=new Uint32Array(K);for(let H=0,D=0;H{NXA.readFile(A,(Y,J)=>{if(Y)return B(Y);return Q(J)})})}function gaQ(A,Q){return new Promise((B,Y)=>{NXA.writeFile(A,Q,(J)=>{if(J)return Y(J);return B()})})}});var Xx=R((AoQ)=>{var Gx=ah(),{Gif:V7,GifError:T6}=qH();function CR(){let A=Cx();return CR=function(){return A},A}var{GifFrame:naQ}=JR(),qXA=200,saQ=100;class RXA{constructor(A={}){if(this._transparentRGB=null,typeof A.transparentRGB==="number"&&A.transparentRGB!==0)this._transparentRGBA=A.transparentRGB*256;this._testInitialBufferSize=0}decodeGif(A){try{let Q;try{Q=new Gx.GifReader(A)}catch(C){throw new T6(C)}let B=Q.numFrames(),Y=[],J={width:Q.width,height:Q.height,loops:Q.loopCount()};J.usesTransparency=!1;for(let C=0;CY.width)for(let G=0;G0)return this._testInitialBufferSize;let B=qXA+768,Y=zXA(A);return Q.forEach((J)=>{B+=MXA(J,Y)}),B}_getSizeEstimateLocal(A,Q){if(this._testInitialBufferSize>0)return this._testInitialBufferSize;let B=qXA;for(let Y=0;YQ)Y=J-1;else if(A[J]Y)Y<<=1;Q.length=Y,Q.fill(0,B)}function MXA(A,Q){let B=A.bitmap.width*A.bitmap.height;return B=Math.ceil(B*Q/8),B+=Math.ceil(B/255),saQ+B+768}function eaQ(A,Q,B){let Y=B.colors,J=Y.length<=8?raQ:aaQ,C=Q.bitmap.data,X=new Buffer(C.length/4),G=Y.length,W=0,F=0;while(W>8&16777215;X[F]=J(Y,Z)}else X[F]=G;W+=4,++F}if(B.usesTransparency){if(G===256)throw new T6(`Frame ${A} already has 256 colorsand so can't use transparency`)}else G=null;return{buffer:X,transparentIndex:G}}function zXA(A){let Q=A.indexCount,B=0;--Q;while(Q)++B,Q>>=1;return B>0?B:1}function jXA(A,Q,B,Y,J){if(B.interlaced)throw new T6("writing interlaced GIFs is not supported");let C=eaQ(Q,B,Y),X={delay:B.delayCentisecs,disposal:B.disposalMethod,transparent:C.transparentIndex};if(J)wXA(Y),X.palette=Y.colors;try{let G=A.getOutputBuffer(),W=A.getOutputBufferPosition(),F,Z=!0;while(Z)if(F=A.addFrame(B.xOffset,B.yOffset,B.bitmap.width,B.bitmap.height,C.buffer,X),Z=!1,F>=G.length-1){let U=new Buffer(G.length*1.5);G.copy(U),A.setOutputBuffer(U),A.setOutputBufferPosition(W),G=U,Z=!0}return G}catch(G){throw new T6(G)}}});var PXA=R((w7Y,OXA)=>{var BoQ=a3(),{Gif:YoQ,GifError:JoQ}=qH(),{GifCodec:CoQ}=Xx(),{GifFrame:XoQ}=JR(),GoQ=Cx();OXA.exports={BitmapImage:BoQ,Gif:YoQ,GifCodec:CoQ,GifFrame:XoQ,GifUtil:GoQ,GifError:JoQ}});var _XA=R((O7Y,GR)=>{var kXA=kXA||function(A){return Buffer.from(A).toString("base64")};function WoQ(A){var Q=this,B=Math.round,Y=Math.floor,J=Array(64),C=Array(64),X=Array(64),G=Array(64),W,F,Z,U,$=Array(65535),E=Array(65535),K=Array(64),I=Array(64),V=[],H=0,D=7,L=Array(64),z=Array(64),M=Array(64),N=Array(256),q=Array(2048),w,P=[0,1,5,6,14,15,27,28,2,4,7,13,16,26,29,42,3,8,12,17,25,30,41,43,9,11,18,24,31,40,44,53,10,19,23,32,39,45,52,54,20,22,33,38,46,51,55,60,21,34,37,47,50,56,59,61,35,36,48,49,57,58,62,63],_=[0,0,1,5,1,1,1,1,1,1,0,0,0,0,0,0,0],j=[0,1,2,3,4,5,6,7,8,9,10,11],k=[0,0,2,1,3,3,2,4,3,5,5,4,4,0,0,1,125],T=[1,2,3,0,4,17,5,18,33,49,65,6,19,81,97,7,34,113,20,50,129,145,161,8,35,66,177,193,21,82,209,240,36,51,98,114,130,9,10,22,23,24,25,26,37,38,39,40,41,42,52,53,54,55,56,57,58,67,68,69,70,71,72,73,74,83,84,85,86,87,88,89,90,99,100,101,102,103,104,105,106,115,116,117,118,119,120,121,122,131,132,133,134,135,136,137,138,146,147,148,149,150,151,152,153,154,162,163,164,165,166,167,168,169,170,178,179,180,181,182,183,184,185,186,194,195,196,197,198,199,200,201,202,210,211,212,213,214,215,216,217,218,225,226,227,228,229,230,231,232,233,234,241,242,243,244,245,246,247,248,249,250],S=[0,0,3,1,1,1,1,1,1,1,1,1,0,0,0,0,0],v=[0,1,2,3,4,5,6,7,8,9,10,11],y=[0,0,2,1,2,4,4,3,4,7,5,4,4,0,1,2,119],h=[0,1,2,3,17,4,5,33,49,6,18,65,81,7,97,113,19,34,50,129,8,20,66,145,161,177,193,9,35,51,82,240,21,98,114,209,10,22,36,52,225,37,241,23,24,25,26,38,39,40,41,42,53,54,55,56,57,58,67,68,69,70,71,72,73,74,83,84,85,86,87,88,89,90,99,100,101,102,103,104,105,106,115,116,117,118,119,120,121,122,130,131,132,133,134,135,136,137,138,146,147,148,149,150,151,152,153,154,162,163,164,165,166,167,168,169,170,178,179,180,181,182,183,184,185,186,194,195,196,197,198,199,200,201,202,210,211,212,213,214,215,216,217,218,226,227,228,229,230,231,232,233,234,242,243,244,245,246,247,248,249,250];function g(XA){var PA=[16,11,10,16,24,40,51,61,12,12,14,19,26,58,60,55,14,13,16,24,40,57,69,56,14,17,22,29,51,87,80,62,18,22,37,56,68,109,103,77,24,35,55,64,81,104,113,92,49,64,78,87,103,121,120,101,72,92,95,98,112,100,103,99];for(var NA=0;NA<64;NA++){var TA=Y((PA[NA]*XA+50)/100);if(TA<1)TA=1;else if(TA>255)TA=255;J[P[NA]]=TA}var vA=[17,18,24,47,99,99,99,99,18,21,26,66,99,99,99,99,24,26,56,99,99,99,99,99,47,66,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99];for(var mA=0;mA<64;mA++){var ZQ=Y((vA[mA]*XA+50)/100);if(ZQ<1)ZQ=1;else if(ZQ>255)ZQ=255;C[P[mA]]=ZQ}var NQ=[1,1.387039845,1.306562965,1.175875602,1,0.785694958,0.5411961,0.275899379],CQ=0;for(var SQ=0;SQ<8;SQ++)for(var LA=0;LA<8;LA++)X[CQ]=1/(J[P[CQ]]*NQ[SQ]*NQ[LA]*8),G[CQ]=1/(C[P[CQ]]*NQ[SQ]*NQ[LA]*8),CQ++}function m(XA,PA){var NA=0,TA=0,vA=[];for(var mA=1;mA<=16;mA++){for(var ZQ=1;ZQ<=XA[mA];ZQ++)vA[PA[TA]]=[],vA[PA[TA]][0]=NA,vA[PA[TA]][1]=mA,TA++,NA++;NA*=2}return vA}function n(){W=m(_,j),F=m(S,v),Z=m(k,T),U=m(y,h)}function i(){var XA=1,PA=2;for(var NA=1;NA<=15;NA++){for(var TA=XA;TA>0]=38470*XA,q[XA+512>>0]=7471*XA+32768,q[XA+768>>0]=-11059*XA,q[XA+1024>>0]=-21709*XA,q[XA+1280>>0]=32768*XA+8421375,q[XA+1536>>0]=-27439*XA,q[XA+1792>>0]=-5329*XA}function d(XA){var PA=XA[0],NA=XA[1]-1;while(NA>=0){if(PA&1<>8&255),x(XA&255)}function o(XA,PA){var NA,TA,vA,mA,ZQ,NQ,CQ,SQ,LA=0,IA,jA=8,tQ=64;for(IA=0;IA0?SM+0.5|0:SM-0.5|0;return K}function GA(){b(65504),b(16),x(74),x(70),x(73),x(70),x(0),x(1),x(1),x(0),b(1),b(1),x(0),x(0)}function VA(XA){if(!XA)return;if(b(65505),XA[0]===69&&XA[1]===120&&XA[2]===105&&XA[3]===102)b(XA.length+2);else b(XA.length+5+2),x(69),x(120),x(105),x(102),x(0);for(var PA=0;PA"u"||XA.constructor!==Array)return;XA.forEach((PA)=>{if(typeof PA!=="string")return;b(65534);var NA=PA.length;b(NA+2);var TA;for(TA=0;TA0&&I[IQ]==0;IQ--);if(IQ==0)return d(mA),NA;var vQ=1,KB;while(vQ<=IQ){var zA=vQ;for(;I[vQ]==0&&vQ<=IQ;++vQ);var uA=vQ-zA;if(uA>=CQ){KB=uA>>4;for(var MQ=1;MQ<=KB;++MQ)d(ZQ);uA=uA&15}NQ=32767+I[vQ],d(vA[(uA<<4)+E[NQ]]),d($[NQ]),vQ++}if(IQ!=SQ)d(mA);return NA}function DA(){var XA=String.fromCharCode;for(var PA=0;PA<256;PA++)N[PA]=XA(PA)}this.encode=function(XA,PA){var NA=new Date().getTime();if(PA)hA(PA);V=[],H=0,D=7,b(65496),GA(),QA(XA.comments),VA(XA.exifBuffer),UA(),EA(XA.width,XA.height),CA(),KA();var TA=0,vA=0,mA=0;H=0,D=7,this.encode.displayName="_encode_";var{data:ZQ,width:NQ,height:CQ}=XA,SQ=NQ*4,LA=NQ*3,IA,jA=0,tQ,IQ,vQ,KB,zA,uA,MQ,bQ;while(jA>3,uA=(bQ&7)*4,zA=KB+MQ*SQ+uA,jA+MQ>=CQ)zA-=SQ*(jA+1+MQ-CQ);if(IA+uA>=SQ)zA-=IA+uA-SQ+4;tQ=ZQ[zA++],IQ=ZQ[zA++],vQ=ZQ[zA++],L[bQ]=(q[tQ]+q[IQ+256>>0]+q[vQ+512>>0]>>16)-128,z[bQ]=(q[tQ+768>>0]+q[IQ+1024>>0]+q[vQ+1280>>0]>>16)-128,M[bQ]=(q[tQ+1280>>0]+q[IQ+1536>>0]+q[vQ+1792>>0]>>16)-128}TA=HA(L,X,TA,W,Z),vA=HA(z,G,vA,F,U),mA=HA(M,G,mA,F,U),IA+=32}jA+=8}if(D>=0){var eQ=[];eQ[1]=D+1,eQ[0]=(1<"u")return new Uint8Array(V);return Buffer.from(V);var lB,mQ};function hA(XA){if(XA<=0)XA=1;if(XA>100)XA=100;if(w==XA)return;var PA=0;if(XA<50)PA=Math.floor(5000/XA);else PA=Math.floor(200-XA*2);g(PA),w=XA}function QQ(){var XA=new Date().getTime();if(!A)A=50;DA(),n(),i(),p(),hA(A);var PA=new Date().getTime()-XA}QQ()}if(typeof GR<"u")GR.exports=SXA;else if(typeof window<"u")window["jpeg-js"]=window["jpeg-js"]||{},window["jpeg-js"].encode=SXA;function SXA(A,Q){if(typeof Q>"u")Q=50;var B=new WoQ(Q),Y=B.encode(A,Q);return{data:Y,width:A.width,height:A.height}}});var yXA=R((P7Y,Fx)=>{var Wx=function(){var Q=new Int32Array([0,1,8,16,9,2,3,10,17,24,32,25,18,11,4,5,12,19,26,33,40,48,41,34,27,20,13,6,7,14,21,28,35,42,49,56,57,50,43,36,29,22,15,23,30,37,44,51,58,59,52,45,38,31,39,46,53,60,61,54,47,55,62,63]),B=4017,Y=799,J=3406,C=2276,X=1567,G=3784,W=5793,F=2896;function Z(){}function U(D,L){var z=0,M=[],N,q,w=16;while(w>0&&!D[w-1])w--;M.push({children:[],index:0});var P=M[0],_;for(N=0;N0){if(M.length===0)throw Error("Could not recreate Huffman Table");P=M.pop()}P.index++,M.push(P);while(M.length<=N)M.push(_={children:[],index:0}),P.children[P.index]=_.children,P=_;z++}if(N+10)return i--,n>>i&1;if(n=D[L++],n==255){var LA=D[L++];if(LA)throw Error("unexpected marker: "+(n<<8|LA).toString(16))}return i=7,n>>>7}function d(LA){var IA=LA,jA;while((jA=p())!==null){if(IA=IA[jA],typeof IA==="number")return IA;if(typeof IA!=="object")throw Error("invalid huffman sequence")}return null}function x(LA){var IA=0;while(LA>0){var jA=p();if(jA===null)return;IA=IA<<1|jA,LA--}return IA}function b(LA){var IA=x(LA);if(IA>=1<>4;if(KB===0){if(zA<15)break;IQ+=16;continue}IQ+=zA;var uA=Q[IQ];IA[uA]=b(KB),IQ++}}function GA(LA,IA){var jA=d(LA.huffmanTableDC),tQ=jA===0?0:b(jA)<<_;IA[0]=LA.pred+=tQ}function VA(LA,IA){IA[0]|=p()<<_}var EA=0;function UA(LA,IA){if(EA>0){EA--;return}var jA=q,tQ=w;while(jA<=tQ){var IQ=d(LA.huffmanTableAC),vQ=IQ&15,KB=IQ>>4;if(vQ===0){if(KB<15){EA=x(KB)+(1<>4;if(uA===0)if(IQ<15)EA=x(IQ)+(1<=65488&&ZQ<=65495)L+=2;else break}return L-m}function E(D,L){var z=[],M=L.blocksPerLine,N=L.blocksPerColumn,q=M<<3,w=new Int32Array(64),P=new Uint8Array(64);function _(m,n,i){var p=L.quantizationTable,d,x,b,o,GA,VA,EA,UA,CA,QA=i,KA;for(KA=0;KA<64;KA++)QA[KA]=m[KA]*p[KA];for(KA=0;KA<8;++KA){var HA=8*KA;if(QA[1+HA]==0&&QA[2+HA]==0&&QA[3+HA]==0&&QA[4+HA]==0&&QA[5+HA]==0&&QA[6+HA]==0&&QA[7+HA]==0){CA=W*QA[0+HA]+512>>10,QA[0+HA]=CA,QA[1+HA]=CA,QA[2+HA]=CA,QA[3+HA]=CA,QA[4+HA]=CA,QA[5+HA]=CA,QA[6+HA]=CA,QA[7+HA]=CA;continue}d=W*QA[0+HA]+128>>8,x=W*QA[4+HA]+128>>8,b=QA[2+HA],o=QA[6+HA],GA=F*(QA[1+HA]-QA[7+HA])+128>>8,UA=F*(QA[1+HA]+QA[7+HA])+128>>8,VA=QA[3+HA]<<4,EA=QA[5+HA]<<4,CA=d-x+1>>1,d=d+x+1>>1,x=CA,CA=b*G+o*X+128>>8,b=b*X-o*G+128>>8,o=CA,CA=GA-EA+1>>1,GA=GA+EA+1>>1,EA=CA,CA=UA+VA+1>>1,VA=UA-VA+1>>1,UA=CA,CA=d-o+1>>1,d=d+o+1>>1,o=CA,CA=x-b+1>>1,x=x+b+1>>1,b=CA,CA=GA*C+UA*J+2048>>12,GA=GA*J-UA*C+2048>>12,UA=CA,CA=VA*Y+EA*B+2048>>12,VA=VA*B-EA*Y+2048>>12,EA=CA,QA[0+HA]=d+UA,QA[7+HA]=d-UA,QA[1+HA]=x+EA,QA[6+HA]=x-EA,QA[2+HA]=b+VA,QA[5+HA]=b-VA,QA[3+HA]=o+GA,QA[4+HA]=o-GA}for(KA=0;KA<8;++KA){var DA=KA;if(QA[8+DA]==0&&QA[16+DA]==0&&QA[24+DA]==0&&QA[32+DA]==0&&QA[40+DA]==0&&QA[48+DA]==0&&QA[56+DA]==0){CA=W*i[KA+0]+8192>>14,QA[0+DA]=CA,QA[8+DA]=CA,QA[16+DA]=CA,QA[24+DA]=CA,QA[32+DA]=CA,QA[40+DA]=CA,QA[48+DA]=CA,QA[56+DA]=CA;continue}d=W*QA[0+DA]+2048>>12,x=W*QA[32+DA]+2048>>12,b=QA[16+DA],o=QA[48+DA],GA=F*(QA[8+DA]-QA[56+DA])+2048>>12,UA=F*(QA[8+DA]+QA[56+DA])+2048>>12,VA=QA[24+DA],EA=QA[40+DA],CA=d-x+1>>1,d=d+x+1>>1,x=CA,CA=b*G+o*X+2048>>12,b=b*X-o*G+2048>>12,o=CA,CA=GA-EA+1>>1,GA=GA+EA+1>>1,EA=CA,CA=UA+VA+1>>1,VA=UA-VA+1>>1,UA=CA,CA=d-o+1>>1,d=d+o+1>>1,o=CA,CA=x-b+1>>1,x=x+b+1>>1,b=CA,CA=GA*C+UA*J+2048>>12,GA=GA*J-UA*C+2048>>12,UA=CA,CA=VA*Y+EA*B+2048>>12,VA=VA*B-EA*Y+2048>>12,EA=CA,QA[0+DA]=d+UA,QA[56+DA]=d-UA,QA[8+DA]=x+EA,QA[48+DA]=x-EA,QA[16+DA]=b+VA,QA[40+DA]=b-VA,QA[24+DA]=o+GA,QA[32+DA]=o-GA}for(KA=0;KA<64;++KA){var hA=128+(QA[KA]+8>>4);n[KA]=hA<0?0:hA>255?255:hA}}H(q*N*8);var j,k;for(var T=0;T255?255:D}Z.prototype={load:function(L){var z=new XMLHttpRequest;z.open("GET",L,!0),z.responseType="arraybuffer",z.onload=function(){var M=new Uint8Array(z.response||z.mozResponseArrayBuffer);if(this.parse(M),this.onload)this.onload()}.bind(this),z.send(null)},parse:function(L){var z=this.opts.maxResolutionInMP*1000*1000,M=0,N=L.length;function q(){var zA=L[M]<<8|L[M+1];return M+=2,zA}function w(){var zA=q(),uA=L.subarray(M,M+zA-2);return M+=uA.length,uA}function P(zA){var uA=1,MQ=1,bQ,eQ;for(eQ in zA.components)if(zA.components.hasOwnProperty(eQ)){if(bQ=zA.components[eQ],uA>4===0)for(p=0;p<64;p++){var UA=Q[p];EA[UA]=L[M++]}else if(VA>>4===1)for(p=0;p<64;p++){var UA=Q[p];EA[UA]=q()}else throw Error("DQT: invalid table spec");v[VA&15]=EA}break;case 65472:case 65473:case 65474:q(),T={},T.extended=m===65473,T.progressive=m===65474,T.precision=L[M++],T.scanLines=q(),T.samplesPerLine=q(),T.components={},T.componentsOrder=[];var CA=T.scanLines*T.samplesPerLine;if(CA>z){var QA=Math.ceil((CA-z)/1e6);throw Error(`maxResolutionInMP limit exceeded by ${QA}MP`)}var KA=L[M++],HA,DA=0,hA=0;for(i=0;i>4,XA=L[M+1]&15,PA=L[M+2];if(QQ<=0||XA<=0)throw Error("Invalid sampling factor, expected values above 0");T.componentsOrder.push(HA),T.components[HA]={h:QQ,v:XA,quantizationIdx:PA},M+=3}P(T),y.push(T);break;case 65476:var NA=q();for(i=2;i>4===0?g:h)[TA&15]=U(vA,ZQ)}break;case 65501:q(),S=q();break;case 65500:q(),q();break;case 65498:var NQ=q(),CQ=L[M++],SQ=[],LA;for(i=0;i>4],LA.huffmanTableAC=h[IA&15],SQ.push(LA)}var jA=L[M++],tQ=L[M++],IQ=L[M++],vQ=$(L,M,T,SQ,S,jA,tQ,IQ>>4,IQ&15,this.opts);M+=vQ;break;case 65535:if(L[M]!==255)M--;break;default:if(L[M-3]==255&&L[M-2]>=192&&L[M-2]<=254){M-=3;break}else if(m===224||m==225){if(n!==-1)throw Error(`first unknown JPEG marker at offset ${n.toString(16)}, second unknown JPEG marker ${m.toString(16)} at offset ${(M-1).toString(16)}`);n=M-1;let zA=q();if(L[M+zA-2]===255){M+=zA-2;break}}throw Error("unknown JPEG marker "+m.toString(16))}m=q()}if(y.length!=1)throw Error("only single frame JPEGs supported");for(var i=0;iV){var z=Math.ceil((L-V)/1024/1024);throw Error(`maxMemoryUsageInMB limit exceeded by at least ${z}MB`)}I=L}return Z.resetMaxMemoryUsage=function(D){I=0,V=D},Z.getBytesAllocated=function(){return I},Z.requestMemoryAllocation=H,Z}();if(typeof Fx<"u")Fx.exports=vXA;else if(typeof window<"u")window["jpeg-js"]=window["jpeg-js"]||{},window["jpeg-js"].decode=vXA;function vXA(A,Q={}){var B={colorTransform:void 0,useTArray:!1,formatAsRGBA:!0,tolerantDecoding:!0,maxResolutionInMP:100,maxMemoryUsageInMB:512},Y={...B,...Q},J=new Uint8Array(A),C=new Wx;C.opts=Y,Wx.resetMaxMemoryUsage(Y.maxMemoryUsageInMB*1024*1024),C.parse(J);var X=Y.formatAsRGBA?4:3,G=C.width*C.height*X;try{Wx.requestMemoryAllocation(G);var W={width:C.width,height:C.height,exifBuffer:C.exifBuffer,data:Y.useTArray?new Uint8Array(G):Buffer.alloc(G)};if(C.comments.length>0)W.comments=C.comments}catch(F){if(F instanceof RangeError)throw Error("Could not allocate enough memory for the image. Required: "+G);if(F instanceof ReferenceError){if(F.message==="Buffer is not defined")throw Error("Buffer is not globally defined in this environment. Consider setting useTArray to true")}throw F}return C.copyToImageData(W,Y.formatAsRGBA),W}});var hXA=R((T7Y,gXA)=>{var FoQ=_XA(),ZoQ=yXA();gXA.exports={encode:FoQ,decode:ZoQ}});var $x=R((k7Y,fXA)=>{var $oQ=u("util"),xXA=u("stream"),_C=fXA.exports=function(){xXA.call(this),this._buffers=[],this._buffered=0,this._reads=[],this._paused=!1,this._encoding="utf8",this.writable=!0};$oQ.inherits(_C,xXA);_C.prototype.read=function(A,Q){this._reads.push({length:Math.abs(A),allowLess:A<0,func:Q}),process.nextTick(function(){if(this._process(),this._paused&&this._reads&&this._reads.length>0)this._paused=!1,this.emit("drain")}.bind(this))};_C.prototype.write=function(A,Q){if(!this.writable)return this.emit("error",Error("Stream not writable")),!1;let B;if(Buffer.isBuffer(A))B=A;else B=Buffer.from(A,Q||this._encoding);if(this._buffers.push(B),this._buffered+=B.length,this._process(),this._reads&&this._reads.length===0)this._paused=!0;return this.writable&&!this._paused};_C.prototype.end=function(A,Q){if(A)this.write(A,Q);if(this.writable=!1,!this._buffers)return;if(this._buffers.length===0)this._end();else this._buffers.push(null),this._process()};_C.prototype.destroySoon=_C.prototype.end;_C.prototype._end=function(){if(this._reads.length>0)this.emit("error",Error("Unexpected end of input"));this.destroy()};_C.prototype.destroy=function(){if(!this._buffers)return;this.writable=!1,this._reads=null,this._buffers=null,this.emit("close")};_C.prototype._processReadAllowingLess=function(A){this._reads.shift();let Q=this._buffers[0];if(Q.length>A.length)this._buffered-=A.length,this._buffers[0]=Q.slice(A.length),A.func.call(this,Q.slice(0,A.length));else this._buffered-=Q.length,this._buffers.shift(),A.func.call(this,Q)};_C.prototype._processRead=function(A){this._reads.shift();let Q=0,B=0,Y=Buffer.alloc(A.length);while(Q0)this._buffers.splice(0,B);this._buffered-=A.length,A.func.call(this,Y)};_C.prototype._process=function(){try{while(this._buffered>0&&this._reads&&this._reads.length>0){let A=this._reads[0];if(A.allowLess)this._processReadAllowingLess(A);else if(this._buffered>=A.length)this._processRead(A);else break}if(this._buffers&&!this.writable)this._end()}catch(A){this.emit("error",A)}}});var Ux=R((UoQ)=>{var H7=[{x:[0],y:[0]},{x:[4],y:[0]},{x:[0,4],y:[4]},{x:[2,6],y:[0,4]},{x:[0,2,4,6],y:[2,6]},{x:[1,3,5,7],y:[0,2,4,6]},{x:[0,1,2,3,4,5,6,7],y:[1,3,5,7]}];UoQ.getImagePasses=function(A,Q){let B=[],Y=A%8,J=Q%8,C=(A-Y)/8,X=(Q-J)/8;for(let G=0;G0&&Z>0)B.push({width:F,height:Z,index:G})}return B};UoQ.getInterlaceIterator=function(A){return function(Q,B,Y){let J=Q%H7[Y].x.length,C=(Q-J)/H7[Y].x.length*8+H7[Y].x[J],X=B%H7[Y].y.length,G=(B-X)/H7[Y].y.length*8+H7[Y].y[X];return C*4+G*A*4}}});var Ex=R((v7Y,bXA)=>{bXA.exports=function(Q,B,Y){let J=Q+B-Y,C=Math.abs(J-Q),X=Math.abs(J-B),G=Math.abs(J-Y);if(C<=X&&C<=G)return Q;if(X<=G)return B;return Y}});var Kx=R((y7Y,uXA)=>{var VoQ=Ux(),IoQ=Ex();function mXA(A,Q,B){let Y=A*Q;if(B!==8)Y=Math.ceil(Y/(8/B));return Y}var DU=uXA.exports=function(A,Q){let{width:B,height:Y,interlace:J,bpp:C,depth:X}=A;if(this.read=Q.read,this.write=Q.write,this.complete=Q.complete,this._imageIndex=0,this._images=[],J){let G=VoQ.getImagePasses(B,Y);for(let W=0;WJ?Q[C-Y]:0;Q[C]=X+G}};DU.prototype._unFilterType2=function(A,Q,B){let Y=this._lastLine;for(let J=0;JJ?Q[X-Y]:0,Z=Math.floor((F+W)/2);Q[X]=G+Z}};DU.prototype._unFilterType4=function(A,Q,B){let Y=this._xComparison,J=Y-1,C=this._lastLine;for(let X=0;XJ?Q[X-Y]:0,Z=X>J&&C?C[X-Y]:0,U=IoQ(F,W,Z);Q[X]=G+U}};DU.prototype._reverseFilterLine=function(A){let Q=A[0],B,Y=this._images[this._imageIndex],J=Y.byteWidth;if(Q===0)B=A.slice(1,J+1);else switch(B=Buffer.alloc(J),Q){case 1:this._unFilterType1(A,B,J);break;case 2:this._unFilterType2(A,B,J);break;case 3:this._unFilterType3(A,B,J);break;case 4:this._unFilterType4(A,B,J);break;default:throw Error("Unrecognised filter type - "+Q)}if(this.write(B),Y.lineIndex++,Y.lineIndex>=Y.height)this._lastLine=null,this._imageIndex++,Y=this._images[this._imageIndex];else this._lastLine=B;if(Y)this.read(Y.byteWidth+1,this._reverseFilterLine.bind(this));else this._lastLine=null,this.complete()}});var lXA=R((g7Y,cXA)=>{var HoQ=u("util"),dXA=$x(),DoQ=Kx(),NoQ=cXA.exports=function(A){dXA.call(this);let Q=[],B=this;this._filter=new DoQ(A,{read:this.read.bind(this),write:function(Y){Q.push(Y)},complete:function(){B.emit("complete",Buffer.concat(Q))}}),this._filter.start()};HoQ.inherits(NoQ,dXA)});var NU=R((h7Y,pXA)=>{pXA.exports={PNG_SIGNATURE:[137,80,78,71,13,10,26,10],TYPE_IHDR:1229472850,TYPE_IEND:1229278788,TYPE_IDAT:1229209940,TYPE_PLTE:1347179589,TYPE_tRNS:1951551059,TYPE_gAMA:1732332865,COLORTYPE_GRAYSCALE:0,COLORTYPE_PALETTE:1,COLORTYPE_COLOR:2,COLORTYPE_ALPHA:4,COLORTYPE_PALETTE_COLOR:3,COLORTYPE_COLOR_ALPHA:6,COLORTYPE_TO_BPP_MAP:{0:1,2:3,3:1,4:2,6:4},GAMMA_DIVISION:1e5}});var Hx=R((x7Y,iXA)=>{var Vx=[];(function(){for(let A=0;A<256;A++){let Q=A;for(let B=0;B<8;B++)if(Q&1)Q=3988292384^Q>>>1;else Q=Q>>>1;Vx[A]=Q}})();var Ix=iXA.exports=function(){this._crc=-1};Ix.prototype.write=function(A){for(let Q=0;Q>>8;return!0};Ix.prototype.crc32=function(){return this._crc^-1};Ix.crc32=function(A){let Q=-1;for(let B=0;B>>8;return Q^-1}});var Dx=R((f7Y,nXA)=>{var _Y=NU(),LoQ=Hx(),iY=nXA.exports=function(A,Q){this._options=A,A.checkCRC=A.checkCRC!==!1,this._hasIHDR=!1,this._hasIEND=!1,this._emittedHeadersFinished=!1,this._palette=[],this._colorType=0,this._chunks={},this._chunks[_Y.TYPE_IHDR]=this._handleIHDR.bind(this),this._chunks[_Y.TYPE_IEND]=this._handleIEND.bind(this),this._chunks[_Y.TYPE_IDAT]=this._handleIDAT.bind(this),this._chunks[_Y.TYPE_PLTE]=this._handlePLTE.bind(this),this._chunks[_Y.TYPE_tRNS]=this._handleTRNS.bind(this),this._chunks[_Y.TYPE_gAMA]=this._handleGAMA.bind(this),this.read=Q.read,this.error=Q.error,this.metadata=Q.metadata,this.gamma=Q.gamma,this.transColor=Q.transColor,this.palette=Q.palette,this.parsed=Q.parsed,this.inflateData=Q.inflateData,this.finished=Q.finished,this.simpleTransparency=Q.simpleTransparency,this.headersFinished=Q.headersFinished||function(){}};iY.prototype.start=function(){this.read(_Y.PNG_SIGNATURE.length,this._parseSignature.bind(this))};iY.prototype._parseSignature=function(A){let Q=_Y.PNG_SIGNATURE;for(let B=0;Bthis._palette.length){this.error(Error("More transparent colors than palette size"));return}for(let Q=0;Q0)this._handleIDAT(B);else this._handleChunkEnd()};iY.prototype._handleIEND=function(A){this.read(A,this._parseIEND.bind(this))};iY.prototype._parseIEND=function(A){if(this._crc.write(A),this._hasIEND=!0,this._handleChunkEnd(),this.finished)this.finished()}});var Nx=R((joQ)=>{var sXA=Ux(),qoQ=[function(){},function(A,Q,B,Y){if(Y===Q.length)throw Error("Ran out of data");let J=Q[Y];A[B]=J,A[B+1]=J,A[B+2]=J,A[B+3]=255},function(A,Q,B,Y){if(Y+1>=Q.length)throw Error("Ran out of data");let J=Q[Y];A[B]=J,A[B+1]=J,A[B+2]=J,A[B+3]=Q[Y+1]},function(A,Q,B,Y){if(Y+2>=Q.length)throw Error("Ran out of data");A[B]=Q[Y],A[B+1]=Q[Y+1],A[B+2]=Q[Y+2],A[B+3]=255},function(A,Q,B,Y){if(Y+3>=Q.length)throw Error("Ran out of data");A[B]=Q[Y],A[B+1]=Q[Y+1],A[B+2]=Q[Y+2],A[B+3]=Q[Y+3]}],MoQ=[function(){},function(A,Q,B,Y){let J=Q[0];A[B]=J,A[B+1]=J,A[B+2]=J,A[B+3]=Y},function(A,Q,B){let Y=Q[0];A[B]=Y,A[B+1]=Y,A[B+2]=Y,A[B+3]=Q[1]},function(A,Q,B,Y){A[B]=Q[0],A[B+1]=Q[1],A[B+2]=Q[2],A[B+3]=Y},function(A,Q,B){A[B]=Q[0],A[B+1]=Q[1],A[B+2]=Q[2],A[B+3]=Q[3]}];function zoQ(A,Q){let B=[],Y=0;function J(){if(Y===A.length)throw Error("Ran out of data");let C=A[Y];Y++;let X,G,W,F,Z,U,$,E;switch(Q){default:throw Error("unrecognised depth");case 16:$=A[Y],Y++,B.push((C<<8)+$);break;case 4:$=C&15,E=C>>4,B.push(E,$);break;case 2:Z=C&3,U=C>>2&3,$=C>>4&3,E=C>>6&3,B.push(E,$,U,Z);break;case 1:X=C&1,G=C>>1&1,W=C>>2&1,F=C>>3&1,Z=C>>4&1,U=C>>5&1,$=C>>6&1,E=C>>7&1,B.push(E,$,U,Z,F,W,G,X);break}}return{get:function(C){while(B.length{function PoQ(A,Q,B,Y,J){let C=0;for(let X=0;X{var koQ=u("util"),qx=u("zlib"),aXA=$x(),_oQ=lXA(),voQ=Dx(),yoQ=Nx(),goQ=Lx(),d1=oXA.exports=function(A){aXA.call(this),this._parser=new voQ(A,{read:this.read.bind(this),error:this._handleError.bind(this),metadata:this._handleMetaData.bind(this),gamma:this.emit.bind(this,"gamma"),palette:this._handlePalette.bind(this),transColor:this._handleTransColor.bind(this),finished:this._finished.bind(this),inflateData:this._inflateData.bind(this),simpleTransparency:this._simpleTransparency.bind(this),headersFinished:this._headersFinished.bind(this)}),this._options=A,this.writable=!0,this._parser.start()};koQ.inherits(d1,aXA);d1.prototype._handleError=function(A){if(this.emit("error",A),this.writable=!1,this.destroy(),this._inflate&&this._inflate.destroy)this._inflate.destroy();if(this._filter)this._filter.destroy(),this._filter.on("error",function(){});this.errord=!0};d1.prototype._inflateData=function(A){if(!this._inflate)if(this._bitmapInfo.interlace)this._inflate=qx.createInflate(),this._inflate.on("error",this.emit.bind(this,"error")),this._filter.on("complete",this._complete.bind(this)),this._inflate.pipe(this._filter);else{let B=((this._bitmapInfo.width*this._bitmapInfo.bpp*this._bitmapInfo.depth+7>>3)+1)*this._bitmapInfo.height,Y=Math.max(B,qx.Z_MIN_CHUNK);this._inflate=qx.createInflate({chunkSize:Y});let J=B,C=this.emit.bind(this,"error");this._inflate.on("error",function(G){if(!J)return;C(G)}),this._filter.on("complete",this._complete.bind(this));let X=this._filter.write.bind(this._filter);this._inflate.on("data",function(G){if(!J)return;if(G.length>J)G=G.slice(0,J);J-=G.length,X(G)}),this._inflate.on("end",this._filter.end.bind(this._filter))}this._inflate.write(A)};d1.prototype._handleMetaData=function(A){this._metaData=A,this._bitmapInfo=Object.create(A),this._filter=new _oQ(this._bitmapInfo)};d1.prototype._handleTransColor=function(A){this._bitmapInfo.transColor=A};d1.prototype._handlePalette=function(A){this._bitmapInfo.palette=A};d1.prototype._simpleTransparency=function(){this._metaData.alpha=!0};d1.prototype._headersFinished=function(){this.emit("metadata",this._metaData)};d1.prototype._finished=function(){if(this.errord)return;if(!this._inflate)this.emit("error","No Inflate block");else this._inflate.end()};d1.prototype._complete=function(A){if(this.errord)return;let Q;try{let B=yoQ.dataToBitMap(A,this._bitmapInfo);Q=goQ(B,this._bitmapInfo,this._options.skipRescale),B=null}catch(B){this._handleError(B);return}this.emit("parsed",Q)}});var A6A=R((d7Y,eXA)=>{var D5=NU();eXA.exports=function(A,Q,B,Y){let J=[D5.COLORTYPE_COLOR_ALPHA,D5.COLORTYPE_ALPHA].indexOf(Y.colorType)!==-1;if(Y.colorType===Y.inputColorType){let K=function(){let I=new ArrayBuffer(2);return new DataView(I).setInt16(0,256,!0),new Int16Array(I)[0]!==256}();if(Y.bitDepth===8||Y.bitDepth===16&&K)return A}let C=Y.bitDepth!==16?A:new Uint16Array(A.buffer),X=255,G=D5.COLORTYPE_TO_BPP_MAP[Y.inputColorType];if(G===4&&!Y.inputHasAlpha)G=3;let W=D5.COLORTYPE_TO_BPP_MAP[Y.colorType];if(Y.bitDepth===16)X=65535,W*=2;let F=Buffer.alloc(Q*B*W),Z=0,U=0,$=Y.bgColor||{};if($.red===void 0)$.red=X;if($.green===void 0)$.green=X;if($.blue===void 0)$.blue=X;function E(){let K,I,V,H=X;switch(Y.inputColorType){case D5.COLORTYPE_COLOR_ALPHA:H=C[Z+3],K=C[Z],I=C[Z+1],V=C[Z+2];break;case D5.COLORTYPE_COLOR:K=C[Z],I=C[Z+1],V=C[Z+2];break;case D5.COLORTYPE_ALPHA:H=C[Z+1],K=C[Z],I=K,V=K;break;case D5.COLORTYPE_GRAYSCALE:K=C[Z],I=K,V=K;break;default:throw Error("input color type:"+Y.inputColorType+" is not supported at present")}if(Y.inputHasAlpha){if(!J)H/=X,K=Math.min(Math.max(Math.round((1-H)*$.red+H*K),0),X),I=Math.min(Math.max(Math.round((1-H)*$.green+H*I),0),X),V=Math.min(Math.max(Math.round((1-H)*$.blue+H*V),0),X)}return{red:K,green:I,blue:V,alpha:H}}for(let K=0;K{var Q6A=Ex();function hoQ(A,Q,B,Y,J){for(let C=0;C=C?A[Q+X-C]:0,W=A[Q+X]-G;Y[J+X]=W}}function boQ(A,Q,B,Y){let J=0;for(let C=0;C=Y?A[Q+C-Y]:0,G=A[Q+C]-X;J+=Math.abs(G)}return J}function moQ(A,Q,B,Y,J){for(let C=0;C0?A[Q+C-B]:0,G=A[Q+C]-X;Y[J+C]=G}}function uoQ(A,Q,B){let Y=0,J=Q+B;for(let C=Q;C0?A[C-B]:0,G=A[C]-X;Y+=Math.abs(G)}return Y}function doQ(A,Q,B,Y,J,C){for(let X=0;X=C?A[Q+X-C]:0,W=Q>0?A[Q+X-B]:0,F=A[Q+X]-(G+W>>1);Y[J+X]=F}}function coQ(A,Q,B,Y){let J=0;for(let C=0;C=Y?A[Q+C-Y]:0,G=Q>0?A[Q+C-B]:0,W=A[Q+C]-(X+G>>1);J+=Math.abs(W)}return J}function loQ(A,Q,B,Y,J,C){for(let X=0;X=C?A[Q+X-C]:0,W=Q>0?A[Q+X-B]:0,F=Q>0&&X>=C?A[Q+X-(B+C)]:0,Z=A[Q+X]-Q6A(G,W,F);Y[J+X]=Z}}function poQ(A,Q,B,Y){let J=0;for(let C=0;C=Y?A[Q+C-Y]:0,G=Q>0?A[Q+C-B]:0,W=Q>0&&C>=Y?A[Q+C-(B+Y)]:0,F=A[Q+C]-Q6A(X,G,W);J+=Math.abs(F)}return J}var ioQ={0:hoQ,1:foQ,2:moQ,3:doQ,4:loQ},noQ={0:xoQ,1:boQ,2:uoQ,3:coQ,4:poQ};B6A.exports=function(A,Q,B,Y,J){let C;if(!("filterType"in Y)||Y.filterType===-1)C=[0,1,2,3,4];else if(typeof Y.filterType==="number")C=[Y.filterType];else throw Error("unrecognised filter types");if(Y.bitDepth===16)J*=2;let X=Q*J,G=0,W=0,F=Buffer.alloc((X+1)*B),Z=C[0];for(let U=0;U1){let $=1/0;for(let E=0;E{var RJ=NU(),soQ=Hx(),roQ=A6A(),aoQ=Y6A(),ooQ=u("zlib"),D7=J6A.exports=function(A){if(this._options=A,A.deflateChunkSize=A.deflateChunkSize||32768,A.deflateLevel=A.deflateLevel!=null?A.deflateLevel:9,A.deflateStrategy=A.deflateStrategy!=null?A.deflateStrategy:3,A.inputHasAlpha=A.inputHasAlpha!=null?A.inputHasAlpha:!0,A.deflateFactory=A.deflateFactory||ooQ.createDeflate,A.bitDepth=A.bitDepth||8,A.colorType=typeof A.colorType==="number"?A.colorType:RJ.COLORTYPE_COLOR_ALPHA,A.inputColorType=typeof A.inputColorType==="number"?A.inputColorType:RJ.COLORTYPE_COLOR_ALPHA,[RJ.COLORTYPE_GRAYSCALE,RJ.COLORTYPE_COLOR,RJ.COLORTYPE_COLOR_ALPHA,RJ.COLORTYPE_ALPHA].indexOf(A.colorType)===-1)throw Error("option color type:"+A.colorType+" is not supported at present");if([RJ.COLORTYPE_GRAYSCALE,RJ.COLORTYPE_COLOR,RJ.COLORTYPE_COLOR_ALPHA,RJ.COLORTYPE_ALPHA].indexOf(A.inputColorType)===-1)throw Error("option input color type:"+A.inputColorType+" is not supported at present");if(A.bitDepth!==8&&A.bitDepth!==16)throw Error("option bit depth:"+A.bitDepth+" is not supported at present")};D7.prototype.getDeflateOptions=function(){return{chunkSize:this._options.deflateChunkSize,level:this._options.deflateLevel,strategy:this._options.deflateStrategy}};D7.prototype.createDeflate=function(){return this._options.deflateFactory(this.getDeflateOptions())};D7.prototype.filterData=function(A,Q,B){let Y=roQ(A,Q,B,this._options),J=RJ.COLORTYPE_TO_BPP_MAP[this._options.colorType];return aoQ(Y,Q,B,this._options,J)};D7.prototype._packChunk=function(A,Q){let B=Q?Q.length:0,Y=Buffer.alloc(B+12);if(Y.writeUInt32BE(B,0),Y.writeUInt32BE(A,4),Q)Q.copy(Y,8);return Y.writeInt32BE(soQ.crc32(Y.slice(4,Y.length-4)),Y.length-4),Y};D7.prototype.packGAMA=function(A){let Q=Buffer.alloc(4);return Q.writeUInt32BE(Math.floor(A*RJ.GAMMA_DIVISION),0),this._packChunk(RJ.TYPE_gAMA,Q)};D7.prototype.packIHDR=function(A,Q){let B=Buffer.alloc(13);return B.writeUInt32BE(A,0),B.writeUInt32BE(Q,4),B[8]=this._options.bitDepth,B[9]=this._options.colorType,B[10]=0,B[11]=0,B[12]=0,this._packChunk(RJ.TYPE_IHDR,B)};D7.prototype.packIDAT=function(A){return this._packChunk(RJ.TYPE_IDAT,A)};D7.prototype.packIEND=function(){return this._packChunk(RJ.TYPE_IEND,null)}});var W6A=R((p7Y,G6A)=>{var toQ=u("util"),C6A=u("stream"),eoQ=NU(),AtQ=Mx(),X6A=G6A.exports=function(A){C6A.call(this);let Q=A||{};this._packer=new AtQ(Q),this._deflate=this._packer.createDeflate(),this.readable=!0};toQ.inherits(X6A,C6A);X6A.prototype.pack=function(A,Q,B,Y){if(this.emit("data",Buffer.from(eoQ.PNG_SIGNATURE)),this.emit("data",this._packer.packIHDR(Q,B)),Y)this.emit("data",this._packer.packGAMA(Y));let J=this._packer.filterData(A,Q,B);this._deflate.on("error",this.emit.bind(this,"error")),this._deflate.on("data",function(C){this.emit("data",this._packer.packIDAT(C))}.bind(this)),this._deflate.on("end",function(){this.emit("data",this._packer.packIEND()),this.emit("end")}.bind(this)),this._deflate.end(J)}});var K6A=R((OH,E6A)=>{var F6A=u("assert").ok,LU=u("zlib"),QtQ=u("util"),Z6A=u("buffer").kMaxLength;function sF(A){if(!(this instanceof sF))return new sF(A);if(A&&A.chunkSize=0,"have should not go down"),V>0){let H=Y._buffer.slice(Y._offset,Y._offset+V);if(Y._offset+=V,H.length>X)H=H.slice(0,X);if(W.push(H),F+=H.length,X-=H.length,X===0)return!1}if(I===0||Y._offset>=Y._chunkSize)C=Y._chunkSize,Y._offset=0,Y._buffer=Buffer.allocUnsafe(Y._chunkSize);if(I===0)return G+=J-K,J=K,!0;return!1}F6A(this._handle,"zlib binding closed");let $;do $=this._handle.writeSync(Q,A,G,J,this._buffer,this._offset,C),$=$||this._writeState;while(!this._hadError&&U($[0],$[1]));if(this._hadError)throw Z;if(F>=Z6A)throw $6A(this),RangeError("Cannot create final Buffer. It would be larger than 0x"+Z6A.toString(16)+" bytes");let E=Buffer.concat(W,F);return $6A(this),E};QtQ.inherits(sF,LU.Inflate);function YtQ(A,Q){if(typeof Q==="string")Q=Buffer.from(Q);if(!(Q instanceof Buffer))throw TypeError("Not a string or buffer");let B=A._finishFlushFlag;if(B==null)B=LU.Z_FINISH;return A._processChunk(Q,B)}function U6A(A,Q){return YtQ(new sF(Q),A)}E6A.exports=OH=U6A;OH.Inflate=sF;OH.createInflate=BtQ;OH.inflateSync=U6A});var zx=R((i7Y,I6A)=>{var V6A=I6A.exports=function(A){this._buffer=A,this._reads=[]};V6A.prototype.read=function(A,Q){this._reads.push({length:Math.abs(A),allowLess:A<0,func:Q})};V6A.prototype.process=function(){while(this._reads.length>0&&this._buffer.length){let A=this._reads[0];if(this._buffer.length&&(this._buffer.length>=A.length||A.allowLess)){this._reads.shift();let Q=this._buffer;this._buffer=Q.slice(A.length),A.func.call(this,Q.slice(0,A.length))}else break}if(this._reads.length>0)throw Error("There are some read requests waitng on finished stream");if(this._buffer.length>0)throw Error("unrecognised content at end of stream")}});var H6A=R((XtQ)=>{var JtQ=zx(),CtQ=Kx();XtQ.process=function(A,Q){let B=[],Y=new JtQ(A);return new CtQ(Q,{read:Y.read.bind(Y),write:function(C){B.push(C)},complete:function(){}}).start(),Y.process(),Buffer.concat(B)}});var q6A=R((s7Y,L6A)=>{var D6A=!0,N6A=u("zlib"),WtQ=K6A();if(!N6A.deflateSync)D6A=!1;var FtQ=zx(),ZtQ=H6A(),$tQ=Dx(),UtQ=Nx(),EtQ=Lx();L6A.exports=function(A,Q){if(!D6A)throw Error("To use the sync capability of this library in old node versions, please pin pngjs to v2.3.0");let B;function Y(z){B=z}let J;function C(z){J=z}function X(z){J.transColor=z}function G(z){J.palette=z}function W(){J.alpha=!0}let F;function Z(z){F=z}let U=[];function $(z){U.push(z)}let E=new FtQ(A);if(new $tQ(Q,{read:E.read.bind(E),error:Y,metadata:C,gamma:Z,palette:G,transColor:X,inflateData:$,simpleTransparency:W}).start(),E.process(),B)throw B;let I=Buffer.concat(U);U.length=0;let V;if(J.interlace)V=N6A.inflateSync(I);else{let M=((J.width*J.bpp*J.depth+7>>3)+1)*J.height;V=WtQ(I,{chunkSize:M,maxLength:M})}if(I=null,!V||!V.length)throw Error("bad png - invalid inflate data response");let H=ZtQ.process(V,J);I=null;let D=UtQ.dataToBitMap(H,J);H=null;let L=EtQ(D,J,Q.skipRescale);return J.data=L,J.gamma=F||0,J}});var w6A=R((r7Y,R6A)=>{var M6A=!0,z6A=u("zlib");if(!z6A.deflateSync)M6A=!1;var KtQ=NU(),VtQ=Mx();R6A.exports=function(A,Q){if(!M6A)throw Error("To use the sync capability of this library in old node versions, please pin pngjs to v2.3.0");let Y=new VtQ(Q||{}),J=[];if(J.push(Buffer.from(KtQ.PNG_SIGNATURE)),J.push(Y.packIHDR(A.width,A.height)),A.gamma)J.push(Y.packGAMA(A.gamma));let C=Y.filterData(A.data,A.width,A.height),X=z6A.deflateSync(C,Y.getDeflateOptions());if(C=null,!X||!X.length)throw Error("bad png - invalid compressed data response");return J.push(Y.packIDAT(X)),J.push(Y.packIEND()),Buffer.concat(J)}});var j6A=R((DtQ)=>{var ItQ=q6A(),HtQ=w6A();DtQ.read=function(A,Q){return ItQ(A,Q||{})};DtQ.write=function(A,Q){return HtQ(A,Q)}});var P6A=R((wtQ)=>{var qtQ=u("util"),O6A=u("stream"),MtQ=tXA(),ztQ=W6A(),RtQ=j6A(),Y9=wtQ.PNG=function(A){if(O6A.call(this),A=A||{},this.width=A.width|0,this.height=A.height|0,this.data=this.width>0&&this.height>0?Buffer.alloc(4*this.width*this.height):null,A.fill&&this.data)this.data.fill(0);this.gamma=0,this.readable=this.writable=!0,this._parser=new MtQ(A),this._parser.on("error",this.emit.bind(this,"error")),this._parser.on("close",this._handleClose.bind(this)),this._parser.on("metadata",this._metadata.bind(this)),this._parser.on("gamma",this._gamma.bind(this)),this._parser.on("parsed",function(Q){this.data=Q,this.emit("parsed",Q)}.bind(this)),this._packer=new ztQ(A),this._packer.on("data",this.emit.bind(this,"data")),this._packer.on("end",this.emit.bind(this,"end")),this._parser.on("close",this._handleClose.bind(this)),this._packer.on("error",this.emit.bind(this,"error"))};qtQ.inherits(Y9,O6A);Y9.sync=RtQ;Y9.prototype.pack=function(){if(!this.data||!this.data.length)return this.emit("error","No data provided"),this;return process.nextTick(function(){this._packer.pack(this.data,this.width,this.height,this.gamma)}.bind(this)),this};Y9.prototype.parse=function(A,Q){if(Q){let B,Y;B=function(J){this.removeListener("error",Y),this.data=J,Q(null,this)}.bind(this),Y=function(J){this.removeListener("parsed",B),Q(J,null)}.bind(this),this.once("parsed",B),this.once("error",Y)}return this.end(A),this};Y9.prototype.write=function(A){return this._parser.write(A),!0};Y9.prototype.end=function(A){this._parser.end(A)};Y9.prototype._metadata=function(A){this.width=A.width,this.height=A.height,this.emit("metadata",A)};Y9.prototype._gamma=function(A){this.gamma=A};Y9.prototype._handleClose=function(){if(!this._parser.writable&&!this._packer.readable)this.emit("close")};Y9.bitblt=function(A,Q,B,Y,J,C,X,G){if(B|=0,Y|=0,J|=0,C|=0,X|=0,G|=0,B>A.width||Y>A.height||B+J>A.width||Y+C>A.height)throw Error("bitblt reading outside image");if(X>Q.width||G>Q.height||X+J>Q.width||G+C>Q.height)throw Error("bitblt writing outside image");for(let W=0;W{var TtQ=typeof Uint8Array<"u"&&typeof Uint16Array<"u"&&typeof Int32Array<"u";function StQ(A,Q){return Object.prototype.hasOwnProperty.call(A,Q)}Rx.assign=function(A){var Q=Array.prototype.slice.call(arguments,1);while(Q.length){var B=Q.shift();if(!B)continue;if(typeof B!=="object")throw TypeError(B+"must be non-object");for(var Y in B)if(StQ(B,Y))A[Y]=B[Y]}return A};Rx.shrinkBuf=function(A,Q){if(A.length===Q)return A;if(A.subarray)return A.subarray(0,Q);return A.length=Q,A};var ktQ={arraySet:function(A,Q,B,Y,J){if(Q.subarray&&A.subarray){A.set(Q.subarray(B,B+Y),J);return}for(var C=0;C{var ytQ=S6(),gtQ=4,S6A=0,k6A=1,htQ=2;function MU(A){var Q=A.length;while(--Q>=0)A[Q]=0}var xtQ=0,x6A=1,ftQ=2,btQ=3,mtQ=258,_x=29,yH=256,SH=yH+1+_x,qU=30,vx=19,f6A=2*SH+1,rF=15,jx=16,utQ=7,yx=256,b6A=16,m6A=17,u6A=18,Sx=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],UR=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],dtQ=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],d6A=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],ctQ=512,k6=Array((SH+2)*2);MU(k6);var TH=Array(qU*2);MU(TH);var kH=Array(ctQ);MU(kH);var _H=Array(mtQ-btQ+1);MU(_H);var gx=Array(_x);MU(gx);var ER=Array(qU);MU(ER);function Ox(A,Q,B,Y,J){this.static_tree=A,this.extra_bits=Q,this.extra_base=B,this.elems=Y,this.max_length=J,this.has_stree=A&&A.length}var c6A,l6A,p6A;function Px(A,Q){this.dyn_tree=A,this.max_code=0,this.stat_desc=Q}function i6A(A){return A<256?kH[A]:kH[256+(A>>>7)]}function vH(A,Q){A.pending_buf[A.pending++]=Q&255,A.pending_buf[A.pending++]=Q>>>8&255}function y9(A,Q,B){if(A.bi_valid>jx-B)A.bi_buf|=Q<>jx-A.bi_valid,A.bi_valid+=B-jx;else A.bi_buf|=Q<>>=1,B<<=1;while(--Q>0);return B>>>1}function ltQ(A){if(A.bi_valid===16)vH(A,A.bi_buf),A.bi_buf=0,A.bi_valid=0;else if(A.bi_valid>=8)A.pending_buf[A.pending++]=A.bi_buf&255,A.bi_buf>>=8,A.bi_valid-=8}function ptQ(A,Q){var{dyn_tree:B,max_code:Y}=Q,J=Q.stat_desc.static_tree,C=Q.stat_desc.has_stree,X=Q.stat_desc.extra_bits,G=Q.stat_desc.extra_base,W=Q.stat_desc.max_length,F,Z,U,$,E,K,I=0;for($=0;$<=rF;$++)A.bl_count[$]=0;B[A.heap[A.heap_max]*2+1]=0;for(F=A.heap_max+1;FW)$=W,I++;if(B[Z*2+1]=$,Z>Y)continue;if(A.bl_count[$]++,E=0,Z>=G)E=X[Z-G];if(K=B[Z*2],A.opt_len+=K*($+E),C)A.static_len+=K*(J[Z*2+1]+E)}if(I===0)return;do{$=W-1;while(A.bl_count[$]===0)$--;A.bl_count[$]--,A.bl_count[$+1]+=2,A.bl_count[W]--,I-=2}while(I>0);for($=W;$!==0;$--){Z=A.bl_count[$];while(Z!==0){if(U=A.heap[--F],U>Y)continue;if(B[U*2+1]!==$)A.opt_len+=($-B[U*2+1])*B[U*2],B[U*2+1]=$;Z--}}}function s6A(A,Q,B){var Y=Array(rF+1),J=0,C,X;for(C=1;C<=rF;C++)Y[C]=J=J+B[C-1]<<1;for(X=0;X<=Q;X++){var G=A[X*2+1];if(G===0)continue;A[X*2]=n6A(Y[G]++,G)}}function itQ(){var A,Q,B,Y,J,C=Array(rF+1);B=0;for(Y=0;Y<_x-1;Y++){gx[Y]=B;for(A=0;A<1<>=7;for(;Y8)vH(A,A.bi_buf);else if(A.bi_valid>0)A.pending_buf[A.pending++]=A.bi_buf;A.bi_buf=0,A.bi_valid=0}function ntQ(A,Q,B,Y){if(a6A(A),Y)vH(A,B),vH(A,~B);ytQ.arraySet(A.pending_buf,A.window,Q,B,A.pending),A.pending+=B}function _6A(A,Q,B,Y){var J=Q*2,C=B*2;return A[J]>1;X>=1;X--)Tx(A,B,X);F=C;do X=A.heap[1],A.heap[1]=A.heap[A.heap_len--],Tx(A,B,1),G=A.heap[1],A.heap[--A.heap_max]=X,A.heap[--A.heap_max]=G,B[F*2]=B[X*2]+B[G*2],A.depth[F]=(A.depth[X]>=A.depth[G]?A.depth[X]:A.depth[G])+1,B[X*2+1]=B[G*2+1]=F,A.heap[1]=F++,Tx(A,B,1);while(A.heap_len>=2);A.heap[--A.heap_max]=A.heap[1],ptQ(A,Q),s6A(B,W,A.bl_count)}function y6A(A,Q,B){var Y,J=-1,C,X=Q[1],G=0,W=7,F=4;if(X===0)W=138,F=3;Q[(B+1)*2+1]=65535;for(Y=0;Y<=B;Y++){if(C=X,X=Q[(Y+1)*2+1],++G=3;Q--)if(A.bl_tree[d6A[Q]*2+1]!==0)break;return A.opt_len+=3*(Q+1)+5+5+4,Q}function rtQ(A,Q,B,Y){var J;y9(A,Q-257,5),y9(A,B-1,5),y9(A,Y-4,4);for(J=0;J>>=1)if(Q&1&&A.dyn_ltree[B*2]!==0)return S6A;if(A.dyn_ltree[18]!==0||A.dyn_ltree[20]!==0||A.dyn_ltree[26]!==0)return k6A;for(B=32;B0){if(A.strm.data_type===htQ)A.strm.data_type=atQ(A);if(kx(A,A.l_desc),kx(A,A.d_desc),X=stQ(A),J=A.opt_len+3+7>>>3,C=A.static_len+3+7>>>3,C<=J)J=C}else J=C=B+5;if(B+4<=J&&Q!==-1)o6A(A,Q,B,Y);else if(A.strategy===gtQ||C===J)y9(A,(x6A<<1)+(Y?1:0),3),v6A(A,k6,TH);else y9(A,(ftQ<<1)+(Y?1:0),3),rtQ(A,A.l_desc.max_code+1,A.d_desc.max_code+1,X+1),v6A(A,A.dyn_ltree,A.dyn_dtree);if(r6A(A),Y)a6A(A)}function AeQ(A,Q,B){if(A.pending_buf[A.d_buf+A.last_lit*2]=Q>>>8&255,A.pending_buf[A.d_buf+A.last_lit*2+1]=Q&255,A.pending_buf[A.l_buf+A.last_lit]=B&255,A.last_lit++,Q===0)A.dyn_ltree[B*2]++;else A.matches++,Q--,A.dyn_ltree[(_H[B]+yH+1)*2]++,A.dyn_dtree[i6A(Q)*2]++;return A.last_lit===A.lit_bufsize-1}QeQ._tr_init=otQ;QeQ._tr_stored_block=o6A;QeQ._tr_flush_block=etQ;QeQ._tr_tally=AeQ;QeQ._tr_align=ttQ});var hx=R((CWY,e6A)=>{function GeQ(A,Q,B,Y){var J=A&65535|0,C=A>>>16&65535|0,X=0;while(B!==0){X=B>2000?2000:B,B-=X;do J=J+Q[Y++]|0,C=C+J|0;while(--X);J%=65521,C%=65521}return J|C<<16|0}e6A.exports=GeQ});var xx=R((XWY,AGA)=>{function WeQ(){var A,Q=[];for(var B=0;B<256;B++){A=B;for(var Y=0;Y<8;Y++)A=A&1?3988292384^A>>>1:A>>>1;Q[B]=A}return Q}var FeQ=WeQ();function ZeQ(A,Q,B,Y){var J=FeQ,C=Y+B;A^=-1;for(var X=Y;X>>8^J[(A^Q[X])&255];return A^-1}AGA.exports=ZeQ});var KR=R((GWY,QGA)=>{QGA.exports={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}});var ZGA=R((ceQ)=>{var J9=S6(),N5=t6A(),CGA=hx(),N7=xx(),$eQ=KR(),eF=0,UeQ=1,EeQ=3,R7=4,BGA=5,p1=0,YGA=1,L5=-2,KeQ=-3,fx=-5,VeQ=-1,IeQ=1,VR=2,HeQ=3,DeQ=4,NeQ=0,LeQ=2,NR=8,qeQ=9,MeQ=15,zeQ=8,ReQ=29,weQ=256,mx=weQ+1+ReQ,jeQ=30,OeQ=19,PeQ=2*mx+1,TeQ=15,IB=3,M7=258,vC=M7+IB+1,SeQ=32,LR=42,ux=69,IR=73,HR=91,DR=103,aF=113,hH=666,vY=1,xH=2,oF=3,wU=4,keQ=3;function z7(A,Q){return A.msg=$eQ[Q],Q}function JGA(A){return(A<<1)-(A>4?9:0)}function q7(A){var Q=A.length;while(--Q>=0)A[Q]=0}function L7(A){var Q=A.state,B=Q.pending;if(B>A.avail_out)B=A.avail_out;if(B===0)return;if(J9.arraySet(A.output,Q.pending_buf,Q.pending_out,B,A.next_out),A.next_out+=B,Q.pending_out+=B,A.total_out+=B,A.avail_out-=B,Q.pending-=B,Q.pending===0)Q.pending_out=0}function GJ(A,Q){N5._tr_flush_block(A,A.block_start>=0?A.block_start:-1,A.strstart-A.block_start,Q),A.block_start=A.strstart,L7(A.strm)}function TB(A,Q){A.pending_buf[A.pending++]=Q}function gH(A,Q){A.pending_buf[A.pending++]=Q>>>8&255,A.pending_buf[A.pending++]=Q&255}function _eQ(A,Q,B,Y){var J=A.avail_in;if(J>Y)J=Y;if(J===0)return 0;if(A.avail_in-=J,J9.arraySet(Q,A.input,A.next_in,J,B),A.state.wrap===1)A.adler=CGA(A.adler,Q,J,B);else if(A.state.wrap===2)A.adler=N7(A.adler,Q,J,B);return A.next_in+=J,A.total_in+=J,J}function XGA(A,Q){var{max_chain_length:B,strstart:Y}=A,J,C,X=A.prev_length,G=A.nice_match,W=A.strstart>A.w_size-vC?A.strstart-(A.w_size-vC):0,F=A.window,Z=A.w_mask,U=A.prev,$=A.strstart+M7,E=F[Y+X-1],K=F[Y+X];if(A.prev_length>=A.good_match)B>>=2;if(G>A.lookahead)G=A.lookahead;do{if(J=Q,F[J+X]!==K||F[J+X-1]!==E||F[J]!==F[Y]||F[++J]!==F[Y+1])continue;Y+=2,J++;do;while(F[++Y]===F[++J]&&F[++Y]===F[++J]&&F[++Y]===F[++J]&&F[++Y]===F[++J]&&F[++Y]===F[++J]&&F[++Y]===F[++J]&&F[++Y]===F[++J]&&F[++Y]===F[++J]&&Y<$);if(C=M7-($-Y),Y=$-M7,C>X){if(A.match_start=Q,X=C,C>=G)break;E=F[Y+X-1],K=F[Y+X]}}while((Q=U[Q&Z])>W&&--B!==0);if(X<=A.lookahead)return X;return A.lookahead}function tF(A){var Q=A.w_size,B,Y,J,C,X;do{if(C=A.window_size-A.lookahead-A.strstart,A.strstart>=Q+(Q-vC)){J9.arraySet(A.window,A.window,Q,Q,0),A.match_start-=Q,A.strstart-=Q,A.block_start-=Q,Y=A.hash_size,B=Y;do J=A.head[--B],A.head[B]=J>=Q?J-Q:0;while(--Y);Y=Q,B=Y;do J=A.prev[--B],A.prev[B]=J>=Q?J-Q:0;while(--Y);C+=Q}if(A.strm.avail_in===0)break;if(Y=_eQ(A.strm,A.window,A.strstart+A.lookahead,C),A.lookahead+=Y,A.lookahead+A.insert>=IB){X=A.strstart-A.insert,A.ins_h=A.window[X],A.ins_h=(A.ins_h<A.pending_buf_size-5)B=A.pending_buf_size-5;for(;;){if(A.lookahead<=1){if(tF(A),A.lookahead===0&&Q===eF)return vY;if(A.lookahead===0)break}A.strstart+=A.lookahead,A.lookahead=0;var Y=A.block_start+B;if(A.strstart===0||A.strstart>=Y){if(A.lookahead=A.strstart-Y,A.strstart=Y,GJ(A,!1),A.strm.avail_out===0)return vY}if(A.strstart-A.block_start>=A.w_size-vC){if(GJ(A,!1),A.strm.avail_out===0)return vY}}if(A.insert=0,Q===R7){if(GJ(A,!0),A.strm.avail_out===0)return oF;return wU}if(A.strstart>A.block_start){if(GJ(A,!1),A.strm.avail_out===0)return vY}return vY}function bx(A,Q){var B,Y;for(;;){if(A.lookahead=IB)A.ins_h=(A.ins_h<=IB)if(Y=N5._tr_tally(A,A.strstart-A.match_start,A.match_length-IB),A.lookahead-=A.match_length,A.match_length<=A.max_lazy_match&&A.lookahead>=IB){A.match_length--;do A.strstart++,A.ins_h=(A.ins_h<=IB)A.ins_h=(A.ins_h<4096))A.match_length=IB-1}if(A.prev_length>=IB&&A.match_length<=A.prev_length){J=A.strstart+A.lookahead-IB,Y=N5._tr_tally(A,A.strstart-1-A.prev_match,A.prev_length-IB),A.lookahead-=A.prev_length-1,A.prev_length-=2;do if(++A.strstart<=J)A.ins_h=(A.ins_h<=IB&&A.strstart>0){if(J=A.strstart-1,Y=X[J],Y===X[++J]&&Y===X[++J]&&Y===X[++J]){C=A.strstart+M7;do;while(Y===X[++J]&&Y===X[++J]&&Y===X[++J]&&Y===X[++J]&&Y===X[++J]&&Y===X[++J]&&Y===X[++J]&&Y===X[++J]&&JA.lookahead)A.match_length=A.lookahead}}if(A.match_length>=IB)B=N5._tr_tally(A,1,A.match_length-IB),A.lookahead-=A.match_length,A.strstart+=A.match_length,A.match_length=0;else B=N5._tr_tally(A,0,A.window[A.strstart]),A.lookahead--,A.strstart++;if(B){if(GJ(A,!1),A.strm.avail_out===0)return vY}}if(A.insert=0,Q===R7){if(GJ(A,!0),A.strm.avail_out===0)return oF;return wU}if(A.last_lit){if(GJ(A,!1),A.strm.avail_out===0)return vY}return xH}function geQ(A,Q){var B;for(;;){if(A.lookahead===0){if(tF(A),A.lookahead===0){if(Q===eF)return vY;break}}if(A.match_length=0,B=N5._tr_tally(A,0,A.window[A.strstart]),A.lookahead--,A.strstart++,B){if(GJ(A,!1),A.strm.avail_out===0)return vY}}if(A.insert=0,Q===R7){if(GJ(A,!0),A.strm.avail_out===0)return oF;return wU}if(A.last_lit){if(GJ(A,!1),A.strm.avail_out===0)return vY}return xH}function l1(A,Q,B,Y,J){this.good_length=A,this.max_lazy=Q,this.nice_length=B,this.max_chain=Y,this.func=J}var RU;RU=[new l1(0,0,0,0,veQ),new l1(4,4,8,4,bx),new l1(4,5,16,8,bx),new l1(4,6,32,32,bx),new l1(4,4,16,16,zU),new l1(8,16,32,32,zU),new l1(8,16,128,128,zU),new l1(8,32,128,256,zU),new l1(32,128,258,1024,zU),new l1(32,258,258,4096,zU)];function heQ(A){A.window_size=2*A.w_size,q7(A.head),A.max_lazy_match=RU[A.level].max_lazy,A.good_match=RU[A.level].good_length,A.nice_match=RU[A.level].nice_length,A.max_chain_length=RU[A.level].max_chain,A.strstart=0,A.block_start=0,A.lookahead=0,A.insert=0,A.match_length=A.prev_length=IB-1,A.match_available=0,A.ins_h=0}function xeQ(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=NR,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new J9.Buf16(PeQ*2),this.dyn_dtree=new J9.Buf16((2*jeQ+1)*2),this.bl_tree=new J9.Buf16((2*OeQ+1)*2),q7(this.dyn_ltree),q7(this.dyn_dtree),q7(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new J9.Buf16(TeQ+1),this.heap=new J9.Buf16(2*mx+1),q7(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new J9.Buf16(2*mx+1),q7(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function GGA(A){var Q;if(!A||!A.state)return z7(A,L5);if(A.total_in=A.total_out=0,A.data_type=LeQ,Q=A.state,Q.pending=0,Q.pending_out=0,Q.wrap<0)Q.wrap=-Q.wrap;return Q.status=Q.wrap?LR:aF,A.adler=Q.wrap===2?0:1,Q.last_flush=eF,N5._tr_init(Q),p1}function WGA(A){var Q=GGA(A);if(Q===p1)heQ(A.state);return Q}function feQ(A,Q){if(!A||!A.state)return L5;if(A.state.wrap!==2)return L5;return A.state.gzhead=Q,p1}function FGA(A,Q,B,Y,J,C){if(!A)return L5;var X=1;if(Q===VeQ)Q=6;if(Y<0)X=0,Y=-Y;else if(Y>15)X=2,Y-=16;if(J<1||J>qeQ||B!==NR||Y<8||Y>15||Q<0||Q>9||C<0||C>DeQ)return z7(A,L5);if(Y===8)Y=9;var G=new xeQ;return A.state=G,G.strm=A,G.wrap=X,G.gzhead=null,G.w_bits=Y,G.w_size=1<BGA||Q<0)return A?z7(A,L5):L5;if(Y=A.state,!A.output||!A.input&&A.avail_in!==0||Y.status===hH&&Q!==R7)return z7(A,A.avail_out===0?fx:L5);if(Y.strm=A,B=Y.last_flush,Y.last_flush=Q,Y.status===LR)if(Y.wrap===2)if(A.adler=0,TB(Y,31),TB(Y,139),TB(Y,8),!Y.gzhead)TB(Y,0),TB(Y,0),TB(Y,0),TB(Y,0),TB(Y,0),TB(Y,Y.level===9?2:Y.strategy>=VR||Y.level<2?4:0),TB(Y,keQ),Y.status=aF;else{if(TB(Y,(Y.gzhead.text?1:0)+(Y.gzhead.hcrc?2:0)+(!Y.gzhead.extra?0:4)+(!Y.gzhead.name?0:8)+(!Y.gzhead.comment?0:16)),TB(Y,Y.gzhead.time&255),TB(Y,Y.gzhead.time>>8&255),TB(Y,Y.gzhead.time>>16&255),TB(Y,Y.gzhead.time>>24&255),TB(Y,Y.level===9?2:Y.strategy>=VR||Y.level<2?4:0),TB(Y,Y.gzhead.os&255),Y.gzhead.extra&&Y.gzhead.extra.length)TB(Y,Y.gzhead.extra.length&255),TB(Y,Y.gzhead.extra.length>>8&255);if(Y.gzhead.hcrc)A.adler=N7(A.adler,Y.pending_buf,Y.pending,0);Y.gzindex=0,Y.status=ux}else{var X=NR+(Y.w_bits-8<<4)<<8,G=-1;if(Y.strategy>=VR||Y.level<2)G=0;else if(Y.level<6)G=1;else if(Y.level===6)G=2;else G=3;if(X|=G<<6,Y.strstart!==0)X|=SeQ;if(X+=31-X%31,Y.status=aF,gH(Y,X),Y.strstart!==0)gH(Y,A.adler>>>16),gH(Y,A.adler&65535);A.adler=1}if(Y.status===ux)if(Y.gzhead.extra){J=Y.pending;while(Y.gzindex<(Y.gzhead.extra.length&65535)){if(Y.pending===Y.pending_buf_size){if(Y.gzhead.hcrc&&Y.pending>J)A.adler=N7(A.adler,Y.pending_buf,Y.pending-J,J);if(L7(A),J=Y.pending,Y.pending===Y.pending_buf_size)break}TB(Y,Y.gzhead.extra[Y.gzindex]&255),Y.gzindex++}if(Y.gzhead.hcrc&&Y.pending>J)A.adler=N7(A.adler,Y.pending_buf,Y.pending-J,J);if(Y.gzindex===Y.gzhead.extra.length)Y.gzindex=0,Y.status=IR}else Y.status=IR;if(Y.status===IR)if(Y.gzhead.name){J=Y.pending;do{if(Y.pending===Y.pending_buf_size){if(Y.gzhead.hcrc&&Y.pending>J)A.adler=N7(A.adler,Y.pending_buf,Y.pending-J,J);if(L7(A),J=Y.pending,Y.pending===Y.pending_buf_size){C=1;break}}if(Y.gzindexJ)A.adler=N7(A.adler,Y.pending_buf,Y.pending-J,J);if(C===0)Y.gzindex=0,Y.status=HR}else Y.status=HR;if(Y.status===HR)if(Y.gzhead.comment){J=Y.pending;do{if(Y.pending===Y.pending_buf_size){if(Y.gzhead.hcrc&&Y.pending>J)A.adler=N7(A.adler,Y.pending_buf,Y.pending-J,J);if(L7(A),J=Y.pending,Y.pending===Y.pending_buf_size){C=1;break}}if(Y.gzindexJ)A.adler=N7(A.adler,Y.pending_buf,Y.pending-J,J);if(C===0)Y.status=DR}else Y.status=DR;if(Y.status===DR)if(Y.gzhead.hcrc){if(Y.pending+2>Y.pending_buf_size)L7(A);if(Y.pending+2<=Y.pending_buf_size)TB(Y,A.adler&255),TB(Y,A.adler>>8&255),A.adler=0,Y.status=aF}else Y.status=aF;if(Y.pending!==0){if(L7(A),A.avail_out===0)return Y.last_flush=-1,p1}else if(A.avail_in===0&&JGA(Q)<=JGA(B)&&Q!==R7)return z7(A,fx);if(Y.status===hH&&A.avail_in!==0)return z7(A,fx);if(A.avail_in!==0||Y.lookahead!==0||Q!==eF&&Y.status!==hH){var W=Y.strategy===VR?geQ(Y,Q):Y.strategy===HeQ?yeQ(Y,Q):RU[Y.level].func(Y,Q);if(W===oF||W===wU)Y.status=hH;if(W===vY||W===oF){if(A.avail_out===0)Y.last_flush=-1;return p1}if(W===xH){if(Q===UeQ)N5._tr_align(Y);else if(Q!==BGA){if(N5._tr_stored_block(Y,0,0,!1),Q===EeQ){if(q7(Y.head),Y.lookahead===0)Y.strstart=0,Y.block_start=0,Y.insert=0}}if(L7(A),A.avail_out===0)return Y.last_flush=-1,p1}}if(Q!==R7)return p1;if(Y.wrap<=0)return YGA;if(Y.wrap===2)TB(Y,A.adler&255),TB(Y,A.adler>>8&255),TB(Y,A.adler>>16&255),TB(Y,A.adler>>24&255),TB(Y,A.total_in&255),TB(Y,A.total_in>>8&255),TB(Y,A.total_in>>16&255),TB(Y,A.total_in>>24&255);else gH(Y,A.adler>>>16),gH(Y,A.adler&65535);if(L7(A),Y.wrap>0)Y.wrap=-Y.wrap;return Y.pending!==0?p1:YGA}function ueQ(A){var Q;if(!A||!A.state)return L5;if(Q=A.state.status,Q!==LR&&Q!==ux&&Q!==IR&&Q!==HR&&Q!==DR&&Q!==aF&&Q!==hH)return z7(A,L5);return A.state=null,Q===aF?z7(A,KeQ):p1}function deQ(A,Q){var B=Q.length,Y,J,C,X,G,W,F,Z;if(!A||!A.state)return L5;if(Y=A.state,X=Y.wrap,X===2||X===1&&Y.status!==LR||Y.lookahead)return L5;if(X===1)A.adler=CGA(A.adler,Q,B,0);if(Y.wrap=0,B>=Y.w_size){if(X===0)q7(Y.head),Y.strstart=0,Y.block_start=0,Y.insert=0;Z=new J9.Buf8(Y.w_size),J9.arraySet(Z,Q,B-Y.w_size,Y.w_size,0),Q=Z,B=Y.w_size}G=A.avail_in,W=A.next_in,F=A.input,A.avail_in=B,A.next_in=0,A.input=Q,tF(Y);while(Y.lookahead>=IB){J=Y.strstart,C=Y.lookahead-(IB-1);do Y.ins_h=(Y.ins_h<{var qR=S6(),$GA=!0,UGA=!0;try{String.fromCharCode.apply(null,[0])}catch(A){$GA=!1}try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(A){UGA=!1}var fH=new qR.Buf8(256);for(i1=0;i1<256;i1++)fH[i1]=i1>=252?6:i1>=248?5:i1>=240?4:i1>=224?3:i1>=192?2:1;var i1;fH[254]=fH[254]=1;eeQ.string2buf=function(A){var Q,B,Y,J,C,X=A.length,G=0;for(J=0;J>>6,Q[C++]=128|B&63;else if(B<65536)Q[C++]=224|B>>>12,Q[C++]=128|B>>>6&63,Q[C++]=128|B&63;else Q[C++]=240|B>>>18,Q[C++]=128|B>>>12&63,Q[C++]=128|B>>>6&63,Q[C++]=128|B&63}return Q};function EGA(A,Q){if(Q<65534){if(A.subarray&&UGA||!A.subarray&&$GA)return String.fromCharCode.apply(null,qR.shrinkBuf(A,Q))}var B="";for(var Y=0;Y4){G[Y++]=65533,B+=C-1;continue}J&=C===2?31:C===3?15:7;while(C>1&&B1){G[Y++]=65533;continue}if(J<65536)G[Y++]=J;else J-=65536,G[Y++]=55296|J>>10&1023,G[Y++]=56320|J&1023}return EGA(G,Y)};eeQ.utf8border=function(A,Q){var B;if(Q=Q||A.length,Q>A.length)Q=A.length;B=Q-1;while(B>=0&&(A[B]&192)===128)B--;if(B<0)return Q;if(B===0)return Q;return B+fH[A[B]]>Q?B:Q}});var cx=R((ZWY,KGA)=>{function CAB(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}KGA.exports=CAB});var DGA=R((EAB)=>{var bH=ZGA(),mH=S6(),px=dx(),ix=KR(),XAB=cx(),HGA=Object.prototype.toString,GAB=0,lx=4,jU=0,VGA=1,IGA=2,WAB=-1,FAB=0,ZAB=8;function AZ(A){if(!(this instanceof AZ))return new AZ(A);this.options=mH.assign({level:WAB,method:ZAB,chunkSize:16384,windowBits:15,memLevel:8,strategy:FAB,to:""},A||{});var Q=this.options;if(Q.raw&&Q.windowBits>0)Q.windowBits=-Q.windowBits;else if(Q.gzip&&Q.windowBits>0&&Q.windowBits<16)Q.windowBits+=16;this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new XAB,this.strm.avail_out=0;var B=bH.deflateInit2(this.strm,Q.level,Q.method,Q.windowBits,Q.memLevel,Q.strategy);if(B!==jU)throw Error(ix[B]);if(Q.header)bH.deflateSetHeader(this.strm,Q.header);if(Q.dictionary){var Y;if(typeof Q.dictionary==="string")Y=px.string2buf(Q.dictionary);else if(HGA.call(Q.dictionary)==="[object ArrayBuffer]")Y=new Uint8Array(Q.dictionary);else Y=Q.dictionary;if(B=bH.deflateSetDictionary(this.strm,Y),B!==jU)throw Error(ix[B]);this._dict_set=!0}}AZ.prototype.push=function(A,Q){var B=this.strm,Y=this.options.chunkSize,J,C;if(this.ended)return!1;if(C=Q===~~Q?Q:Q===!0?lx:GAB,typeof A==="string")B.input=px.string2buf(A);else if(HGA.call(A)==="[object ArrayBuffer]")B.input=new Uint8Array(A);else B.input=A;B.next_in=0,B.avail_in=B.input.length;do{if(B.avail_out===0)B.output=new mH.Buf8(Y),B.next_out=0,B.avail_out=Y;if(J=bH.deflate(B,C),J!==VGA&&J!==jU)return this.onEnd(J),this.ended=!0,!1;if(B.avail_out===0||B.avail_in===0&&(C===lx||C===IGA))if(this.options.to==="string")this.onData(px.buf2binstring(mH.shrinkBuf(B.output,B.next_out)));else this.onData(mH.shrinkBuf(B.output,B.next_out))}while((B.avail_in>0||B.avail_out===0)&&J!==VGA);if(C===lx)return J=bH.deflateEnd(this.strm),this.onEnd(J),this.ended=!0,J===jU;if(C===IGA)return this.onEnd(jU),B.avail_out=0,!0;return!0};AZ.prototype.onData=function(A){this.chunks.push(A)};AZ.prototype.onEnd=function(A){if(A===jU)if(this.options.to==="string")this.result=this.chunks.join("");else this.result=mH.flattenChunks(this.chunks);this.chunks=[],this.err=A,this.msg=this.strm.msg};function nx(A,Q){var B=new AZ(Q);if(B.push(A,!0),B.err)throw B.msg||ix[B.err];return B.result}function $AB(A,Q){return Q=Q||{},Q.raw=!0,nx(A,Q)}function UAB(A,Q){return Q=Q||{},Q.gzip=!0,nx(A,Q)}EAB.Deflate=AZ;EAB.deflate=nx;EAB.deflateRaw=$AB;EAB.gzip=UAB});var LGA=R((UWY,NGA)=>{var MR=30,DAB=12;NGA.exports=function(Q,B){var Y,J,C,X,G,W,F,Z,U,$,E,K,I,V,H,D,L,z,M,N,q,w,P,_,j;Y=Q.state,J=Q.next_in,_=Q.input,C=J+(Q.avail_in-5),X=Q.next_out,j=Q.output,G=X-(B-Q.avail_out),W=X+(Q.avail_out-257),F=Y.dmax,Z=Y.wsize,U=Y.whave,$=Y.wnext,E=Y.window,K=Y.hold,I=Y.bits,V=Y.lencode,H=Y.distcode,D=(1<>>24,K>>>=M,I-=M,M=z>>>16&255,M===0)j[X++]=z&65535;else if(M&16){if(N=z&65535,M&=15,M){if(I>>=M,I-=M}if(I<15)K+=_[J++]<>>24,K>>>=M,I-=M,M=z>>>16&255,M&16){if(q=z&65535,M&=15,IF){Q.msg="invalid distance too far back",Y.mode=MR;break A}if(K>>>=M,I-=M,M=X-G,q>M){if(M=q-M,M>U){if(Y.sane){Q.msg="invalid distance too far back",Y.mode=MR;break A}}if(w=0,P=E,$===0){if(w+=Z-M,M2)j[X++]=P[w++],j[X++]=P[w++],j[X++]=P[w++],N-=3;if(N){if(j[X++]=P[w++],N>1)j[X++]=P[w++]}}else{w=X-q;do j[X++]=j[w++],j[X++]=j[w++],j[X++]=j[w++],N-=3;while(N>2);if(N){if(j[X++]=j[w++],N>1)j[X++]=j[w++]}}}else if((M&64)===0){z=H[(z&65535)+(K&(1<>3,J-=N,I-=N<<3,K&=(1<{var qGA=S6(),OU=15,MGA=852,zGA=592,RGA=0,sx=1,wGA=2,NAB=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],LAB=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78],qAB=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],MAB=[16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];jGA.exports=function(Q,B,Y,J,C,X,G,W){var F=W.bits,Z=0,U=0,$=0,E=0,K=0,I=0,V=0,H=0,D=0,L=0,z,M,N,q,w,P=null,_=0,j,k=new qGA.Buf16(OU+1),T=new qGA.Buf16(OU+1),S=null,v=0,y,h,g;for(Z=0;Z<=OU;Z++)k[Z]=0;for(U=0;U=1;E--)if(k[E]!==0)break;if(K>E)K=E;if(E===0)return C[X++]=20971520,C[X++]=20971520,W.bits=1,0;for($=1;$0&&(Q===RGA||E!==1))return-1;T[1]=0;for(Z=1;ZMGA||Q===wGA&&D>zGA)return 1;for(;;){if(y=Z-V,G[U]j)h=S[v+G[U]],g=P[_+G[U]];else h=96,g=0;z=1<>V)+M]=y<<24|h<<16|g|0;while(M!==0);z=1<>=1;if(z!==0)L&=z-1,L+=z;else L=0;if(U++,--k[Z]===0){if(Z===E)break;Z=B[Y+G[U]]}if(Z>K&&(L&q)!==N){if(V===0)V=K;w+=$,I=Z-V,H=1<MGA||Q===wGA&&D>zGA)return 1;N=L&q,C[N]=K<<24|I<<16|w-X|0}}if(L!==0)C[w+L]=Z-V<<24|4194304|0;return W.bits=K,0}});var W7A=R((uAB)=>{var D8=S6(),Af=hx(),n1=xx(),zAB=LGA(),uH=OGA(),RAB=0,eGA=1,A7A=2,PGA=4,wAB=5,zR=6,QZ=0,jAB=1,OAB=2,q5=-2,Q7A=-3,Qf=-4,PAB=-5,TGA=8,B7A=1,SGA=2,kGA=3,_GA=4,vGA=5,yGA=6,gGA=7,hGA=8,xGA=9,fGA=10,jR=11,_6=12,rx=13,bGA=14,ax=15,mGA=16,uGA=17,dGA=18,cGA=19,RR=20,wR=21,lGA=22,pGA=23,iGA=24,nGA=25,sGA=26,ox=27,rGA=28,aGA=29,w0=30,Bf=31,TAB=32,SAB=852,kAB=592,_AB=15,vAB=_AB;function oGA(A){return(A>>>24&255)+(A>>>8&65280)+((A&65280)<<8)+((A&255)<<24)}function yAB(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new D8.Buf16(320),this.work=new D8.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function Y7A(A){var Q;if(!A||!A.state)return q5;if(Q=A.state,A.total_in=A.total_out=Q.total=0,A.msg="",Q.wrap)A.adler=Q.wrap&1;return Q.mode=B7A,Q.last=0,Q.havedict=0,Q.dmax=32768,Q.head=null,Q.hold=0,Q.bits=0,Q.lencode=Q.lendyn=new D8.Buf32(SAB),Q.distcode=Q.distdyn=new D8.Buf32(kAB),Q.sane=1,Q.back=-1,QZ}function J7A(A){var Q;if(!A||!A.state)return q5;return Q=A.state,Q.wsize=0,Q.whave=0,Q.wnext=0,Y7A(A)}function C7A(A,Q){var B,Y;if(!A||!A.state)return q5;if(Y=A.state,Q<0)B=0,Q=-Q;else if(B=(Q>>4)+1,Q<48)Q&=15;if(Q&&(Q<8||Q>15))return q5;if(Y.window!==null&&Y.wbits!==Q)Y.window=null;return Y.wrap=B,Y.wbits=Q,J7A(A)}function X7A(A,Q){var B,Y;if(!A)return q5;if(Y=new yAB,A.state=Y,Y.window=null,B=C7A(A,Q),B!==QZ)A.state=null;return B}function gAB(A){return X7A(A,vAB)}var tGA=!0,tx,ex;function hAB(A){if(tGA){var Q;tx=new D8.Buf32(512),ex=new D8.Buf32(32),Q=0;while(Q<144)A.lens[Q++]=8;while(Q<256)A.lens[Q++]=9;while(Q<280)A.lens[Q++]=7;while(Q<288)A.lens[Q++]=8;uH(eGA,A.lens,0,288,tx,0,A.work,{bits:9}),Q=0;while(Q<32)A.lens[Q++]=5;uH(A7A,A.lens,0,32,ex,0,A.work,{bits:5}),tGA=!1}A.lencode=tx,A.lenbits=9,A.distcode=ex,A.distbits=5}function G7A(A,Q,B,Y){var J,C=A.state;if(C.window===null)C.wsize=1<=C.wsize)D8.arraySet(C.window,Q,B-C.wsize,C.wsize,0),C.wnext=0,C.whave=C.wsize;else{if(J=C.wsize-C.wnext,J>Y)J=Y;if(D8.arraySet(C.window,Q,B-Y,J,C.wnext),Y-=J,Y)D8.arraySet(C.window,Q,B-Y,Y,0),C.wnext=Y,C.whave=C.wsize;else{if(C.wnext+=J,C.wnext===C.wsize)C.wnext=0;if(C.whave>>8&255,B.check=n1(B.check,P,2,0),F=0,Z=0,B.mode=SGA;break}if(B.flags=0,B.head)B.head.done=!1;if(!(B.wrap&1)||(((F&255)<<8)+(F>>8))%31){A.msg="incorrect header check",B.mode=w0;break}if((F&15)!==TGA){A.msg="unknown compression method",B.mode=w0;break}if(F>>>=4,Z-=4,q=(F&15)+8,B.wbits===0)B.wbits=q;else if(q>B.wbits){A.msg="invalid window size",B.mode=w0;break}B.dmax=1<>8&1;if(B.flags&512)P[0]=F&255,P[1]=F>>>8&255,B.check=n1(B.check,P,2,0);F=0,Z=0,B.mode=kGA;case kGA:while(Z<32){if(G===0)break A;G--,F+=Y[C++]<>>8&255,P[2]=F>>>16&255,P[3]=F>>>24&255,B.check=n1(B.check,P,4,0);F=0,Z=0,B.mode=_GA;case _GA:while(Z<16){if(G===0)break A;G--,F+=Y[C++]<>8;if(B.flags&512)P[0]=F&255,P[1]=F>>>8&255,B.check=n1(B.check,P,2,0);F=0,Z=0,B.mode=vGA;case vGA:if(B.flags&1024){while(Z<16){if(G===0)break A;G--,F+=Y[C++]<>>8&255,B.check=n1(B.check,P,2,0);F=0,Z=0}else if(B.head)B.head.extra=null;B.mode=yGA;case yGA:if(B.flags&1024){if(E=B.length,E>G)E=G;if(E){if(B.head){if(q=B.head.extra_len-B.length,!B.head.extra)B.head.extra=Array(B.head.extra_len);D8.arraySet(B.head.extra,Y,C,E,q)}if(B.flags&512)B.check=n1(B.check,Y,E,C);G-=E,C+=E,B.length-=E}if(B.length)break A}B.length=0,B.mode=gGA;case gGA:if(B.flags&2048){if(G===0)break A;E=0;do if(q=Y[C+E++],B.head&&q&&B.length<65536)B.head.name+=String.fromCharCode(q);while(q&&E>9&1,B.head.done=!0;A.adler=B.check=0,B.mode=_6;break;case fGA:while(Z<32){if(G===0)break A;G--,F+=Y[C++]<>>=Z&7,Z-=Z&7,B.mode=ox;break}while(Z<3){if(G===0)break A;G--,F+=Y[C++]<>>=1,Z-=1,F&3){case 0:B.mode=bGA;break;case 1:if(hAB(B),B.mode=RR,Q===zR){F>>>=2,Z-=2;break A}break;case 2:B.mode=uGA;break;case 3:A.msg="invalid block type",B.mode=w0}F>>>=2,Z-=2;break;case bGA:F>>>=Z&7,Z-=Z&7;while(Z<32){if(G===0)break A;G--,F+=Y[C++]<>>16^65535)){A.msg="invalid stored block lengths",B.mode=w0;break}if(B.length=F&65535,F=0,Z=0,B.mode=ax,Q===zR)break A;case ax:B.mode=mGA;case mGA:if(E=B.length,E){if(E>G)E=G;if(E>W)E=W;if(E===0)break A;D8.arraySet(J,Y,C,E,X),G-=E,C+=E,W-=E,X+=E,B.length-=E;break}B.mode=_6;break;case uGA:while(Z<14){if(G===0)break A;G--,F+=Y[C++]<>>=5,Z-=5,B.ndist=(F&31)+1,F>>>=5,Z-=5,B.ncode=(F&15)+4,F>>>=4,Z-=4,B.nlen>286||B.ndist>30){A.msg="too many length or distance symbols",B.mode=w0;break}B.have=0,B.mode=dGA;case dGA:while(B.have>>=3,Z-=3}while(B.have<19)B.lens[k[B.have++]]=0;if(B.lencode=B.lendyn,B.lenbits=7,_={bits:B.lenbits},w=uH(RAB,B.lens,0,19,B.lencode,0,B.work,_),B.lenbits=_.bits,w){A.msg="invalid code lengths set",B.mode=w0;break}B.have=0,B.mode=cGA;case cGA:while(B.have>>24,D=V>>>16&255,L=V&65535,H<=Z)break;if(G===0)break A;G--,F+=Y[C++]<>>=H,Z-=H,B.lens[B.have++]=L;else{if(L===16){j=H+2;while(Z>>=H,Z-=H,B.have===0){A.msg="invalid bit length repeat",B.mode=w0;break}q=B.lens[B.have-1],E=3+(F&3),F>>>=2,Z-=2}else if(L===17){j=H+3;while(Z>>=H,Z-=H,q=0,E=3+(F&7),F>>>=3,Z-=3}else{j=H+7;while(Z>>=H,Z-=H,q=0,E=11+(F&127),F>>>=7,Z-=7}if(B.have+E>B.nlen+B.ndist){A.msg="invalid bit length repeat",B.mode=w0;break}while(E--)B.lens[B.have++]=q}}if(B.mode===w0)break;if(B.lens[256]===0){A.msg="invalid code -- missing end-of-block",B.mode=w0;break}if(B.lenbits=9,_={bits:B.lenbits},w=uH(eGA,B.lens,0,B.nlen,B.lencode,0,B.work,_),B.lenbits=_.bits,w){A.msg="invalid literal/lengths set",B.mode=w0;break}if(B.distbits=6,B.distcode=B.distdyn,_={bits:B.distbits},w=uH(A7A,B.lens,B.nlen,B.ndist,B.distcode,0,B.work,_),B.distbits=_.bits,w){A.msg="invalid distances set",B.mode=w0;break}if(B.mode=RR,Q===zR)break A;case RR:B.mode=wR;case wR:if(G>=6&&W>=258){if(A.next_out=X,A.avail_out=W,A.next_in=C,A.avail_in=G,B.hold=F,B.bits=Z,zAB(A,$),X=A.next_out,J=A.output,W=A.avail_out,C=A.next_in,Y=A.input,G=A.avail_in,F=B.hold,Z=B.bits,B.mode===_6)B.back=-1;break}B.back=0;for(;;){if(V=B.lencode[F&(1<>>24,D=V>>>16&255,L=V&65535,H<=Z)break;if(G===0)break A;G--,F+=Y[C++]<>z)],H=V>>>24,D=V>>>16&255,L=V&65535,z+H<=Z)break;if(G===0)break A;G--,F+=Y[C++]<>>=z,Z-=z,B.back+=z}if(F>>>=H,Z-=H,B.back+=H,B.length=L,D===0){B.mode=sGA;break}if(D&32){B.back=-1,B.mode=_6;break}if(D&64){A.msg="invalid literal/length code",B.mode=w0;break}B.extra=D&15,B.mode=lGA;case lGA:if(B.extra){j=B.extra;while(Z>>=B.extra,Z-=B.extra,B.back+=B.extra}B.was=B.length,B.mode=pGA;case pGA:for(;;){if(V=B.distcode[F&(1<>>24,D=V>>>16&255,L=V&65535,H<=Z)break;if(G===0)break A;G--,F+=Y[C++]<>z)],H=V>>>24,D=V>>>16&255,L=V&65535,z+H<=Z)break;if(G===0)break A;G--,F+=Y[C++]<>>=z,Z-=z,B.back+=z}if(F>>>=H,Z-=H,B.back+=H,D&64){A.msg="invalid distance code",B.mode=w0;break}B.offset=L,B.extra=D&15,B.mode=iGA;case iGA:if(B.extra){j=B.extra;while(Z>>=B.extra,Z-=B.extra,B.back+=B.extra}if(B.offset>B.dmax){A.msg="invalid distance too far back",B.mode=w0;break}B.mode=nGA;case nGA:if(W===0)break A;if(E=$-W,B.offset>E){if(E=B.offset-E,E>B.whave){if(B.sane){A.msg="invalid distance too far back",B.mode=w0;break}}if(E>B.wnext)E-=B.wnext,K=B.wsize-E;else K=B.wnext-E;if(E>B.length)E=B.length;I=B.window}else I=J,K=X-B.offset,E=B.length;if(E>W)E=W;W-=E,B.length-=E;do J[X++]=I[K++];while(--E);if(B.length===0)B.mode=wR;break;case sGA:if(W===0)break A;J[X++]=B.length,W--,B.mode=wR;break;case ox:if(B.wrap){while(Z<32){if(G===0)break A;G--,F|=Y[C++]<{F7A.exports={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8}});var $7A=R((IWY,Z7A)=>{function tAB(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}Z7A.exports=tAB});var E7A=R((BQB)=>{var PU=W7A(),dH=S6(),OR=dx(),WY=Yf(),Jf=KR(),eAB=cx(),AQB=$7A(),U7A=Object.prototype.toString;function BZ(A){if(!(this instanceof BZ))return new BZ(A);this.options=dH.assign({chunkSize:16384,windowBits:0,to:""},A||{});var Q=this.options;if(Q.raw&&Q.windowBits>=0&&Q.windowBits<16){if(Q.windowBits=-Q.windowBits,Q.windowBits===0)Q.windowBits=-15}if(Q.windowBits>=0&&Q.windowBits<16&&!(A&&A.windowBits))Q.windowBits+=32;if(Q.windowBits>15&&Q.windowBits<48){if((Q.windowBits&15)===0)Q.windowBits|=15}this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new eAB,this.strm.avail_out=0;var B=PU.inflateInit2(this.strm,Q.windowBits);if(B!==WY.Z_OK)throw Error(Jf[B]);if(this.header=new AQB,PU.inflateGetHeader(this.strm,this.header),Q.dictionary){if(typeof Q.dictionary==="string")Q.dictionary=OR.string2buf(Q.dictionary);else if(U7A.call(Q.dictionary)==="[object ArrayBuffer]")Q.dictionary=new Uint8Array(Q.dictionary);if(Q.raw){if(B=PU.inflateSetDictionary(this.strm,Q.dictionary),B!==WY.Z_OK)throw Error(Jf[B])}}}BZ.prototype.push=function(A,Q){var B=this.strm,Y=this.options.chunkSize,J=this.options.dictionary,C,X,G,W,F,Z=!1;if(this.ended)return!1;if(X=Q===~~Q?Q:Q===!0?WY.Z_FINISH:WY.Z_NO_FLUSH,typeof A==="string")B.input=OR.binstring2buf(A);else if(U7A.call(A)==="[object ArrayBuffer]")B.input=new Uint8Array(A);else B.input=A;B.next_in=0,B.avail_in=B.input.length;do{if(B.avail_out===0)B.output=new dH.Buf8(Y),B.next_out=0,B.avail_out=Y;if(C=PU.inflate(B,WY.Z_NO_FLUSH),C===WY.Z_NEED_DICT&&J)C=PU.inflateSetDictionary(this.strm,J);if(C===WY.Z_BUF_ERROR&&Z===!0)C=WY.Z_OK,Z=!1;if(C!==WY.Z_STREAM_END&&C!==WY.Z_OK)return this.onEnd(C),this.ended=!0,!1;if(B.next_out){if(B.avail_out===0||C===WY.Z_STREAM_END||B.avail_in===0&&(X===WY.Z_FINISH||X===WY.Z_SYNC_FLUSH))if(this.options.to==="string"){if(G=OR.utf8border(B.output,B.next_out),W=B.next_out-G,F=OR.buf2string(B.output,G),B.next_out=W,B.avail_out=Y-W,W)dH.arraySet(B.output,B.output,G,W,0);this.onData(F)}else this.onData(dH.shrinkBuf(B.output,B.next_out))}if(B.avail_in===0&&B.avail_out===0)Z=!0}while((B.avail_in>0||B.avail_out===0)&&C!==WY.Z_STREAM_END);if(C===WY.Z_STREAM_END)X=WY.Z_FINISH;if(X===WY.Z_FINISH)return C=PU.inflateEnd(this.strm),this.onEnd(C),this.ended=!0,C===WY.Z_OK;if(X===WY.Z_SYNC_FLUSH)return this.onEnd(WY.Z_OK),B.avail_out=0,!0;return!0};BZ.prototype.onData=function(A){this.chunks.push(A)};BZ.prototype.onEnd=function(A){if(A===WY.Z_OK)if(this.options.to==="string")this.result=this.chunks.join("");else this.result=dH.flattenChunks(this.chunks);this.chunks=[],this.err=A,this.msg=this.strm.msg};function Cf(A,Q){var B=new BZ(Q);if(B.push(A,!0),B.err)throw B.msg||Jf[B.err];return B.result}function QQB(A,Q){return Q=Q||{},Q.raw=!0,Cf(A,Q)}BQB.Inflate=BZ;BQB.inflate=Cf;BQB.inflateRaw=QQB;BQB.ungzip=Cf});var I7A=R((DWY,V7A)=>{var GQB=S6().assign,WQB=DGA(),FQB=E7A(),ZQB=Yf(),K7A={};GQB(K7A,WQB,FQB,ZQB);V7A.exports=K7A});var H7A=R((NWY,Xf)=>{(function(){var A={};if(typeof Xf=="object")Xf.exports=A;else self.UTIF=A;var Q=I7A();function B(){if(typeof process>"u"||process.env.NODE_ENV=="development")console.log.apply(console,arguments)}(function(Y,J){(function(){var C=function(){function U($){this.message="JPEG error: "+$}return U.prototype=Error(),U.prototype.name="JpegError",U.constructor=U,U}(),X=function(){var U=new Uint8Array([0,1,8,16,9,2,3,10,17,24,32,25,18,11,4,5,12,19,26,33,40,48,41,34,27,20,13,6,7,14,21,28,35,42,49,56,57,50,43,36,29,22,15,23,30,37,44,51,58,59,52,45,38,31,39,46,53,60,61,54,47,55,62,63]),$=4017,E=799,K=3406,I=2276,V=1567,H=3784,D=5793,L=2896;function z(j){if(j==null)j={};if(j.w==null)j.w=-1;this.V=j.n,this.N=j.w}function M(j,k){var T=0,S=[],v,y,h=16,g;while(h>0&&!j[h-1])h--;S.push({children:[],index:0});var m=S[0];for(v=0;v0)m=S.pop();m.index++,S.push(m);while(S.length<=v)S.push(g={children:[],index:0}),m.children[m.index]=g.children,m=g;T++}if(v+10)return b--,x>>b&1;if(x=j[k++],x===255){var zA=j[k++];if(zA){if(zA===220&&n){k+=2;var uA=W(j,k);if(k+=2,uA>0&&uA!==T.s)throw new DNLMarkerError("Found DNL marker (0xFFDC) while parsing scan data",uA)}else if(zA===217){if(n){var MQ=EA*8;if(MQ>0&&MQ>>7}function vA(zA){var uA=zA;while(!0){switch(uA=uA[TA()],typeof uA){case"number":return uA;case"object":continue}throw new C("invalid huffman sequence")}}function mA(zA){var uA=0;while(zA>0)uA=uA<<1|TA(),zA--;return uA}function ZQ(zA){if(zA===1)return TA()===1?1:-1;var uA=mA(zA);if(uA>=1<>4;if(mQ===0){if(yB<15)break;eQ+=16;continue}eQ+=yB;var L0=U[eQ];zA.D[uA+L0]=ZQ(mQ),eQ++}}function CQ(zA,uA){var MQ=vA(zA.J),bQ=MQ===0?0:ZQ(MQ)<0){o--;return}var MQ=y,bQ=h;while(MQ<=bQ){var eQ=vA(zA.i),lB=eQ&15,mQ=eQ>>4;if(lB===0){if(mQ<15){o=mA(mQ)+(1<>4,lB===0)if(eQ<15)o=mA(eQ)+(1<0){for(CA=0;CA0?"unexpected":"excessive";k=QQ.offset}if(QQ.M>=65488&&QQ.M<=65495)k+=2;else break}return k-d}function w(j,k,T){var{$:S,D:v}=j,y,h,g,m,n,i,p,d,x,b,o,GA,VA,EA,UA,CA,QA;if(!S)throw new C("missing required Quantization Table.");for(var KA=0;KA<64;KA+=8){if(x=v[k+KA],b=v[k+KA+1],o=v[k+KA+2],GA=v[k+KA+3],VA=v[k+KA+4],EA=v[k+KA+5],UA=v[k+KA+6],CA=v[k+KA+7],x*=S[KA],(b|o|GA|VA|EA|UA|CA)===0){QA=D*x+512>>10,T[KA]=QA,T[KA+1]=QA,T[KA+2]=QA,T[KA+3]=QA,T[KA+4]=QA,T[KA+5]=QA,T[KA+6]=QA,T[KA+7]=QA;continue}b*=S[KA+1],o*=S[KA+2],GA*=S[KA+3],VA*=S[KA+4],EA*=S[KA+5],UA*=S[KA+6],CA*=S[KA+7],y=D*x+128>>8,h=D*VA+128>>8,g=o,m=UA,n=L*(b-CA)+128>>8,d=L*(b+CA)+128>>8,i=GA<<4,p=EA<<4,y=y+h+1>>1,h=y-h,QA=g*H+m*V+128>>8,g=g*V-m*H+128>>8,m=QA,n=n+p+1>>1,p=n-p,d=d+i+1>>1,i=d-i,y=y+m+1>>1,m=y-m,h=h+g+1>>1,g=h-g,QA=n*I+d*K+2048>>12,n=n*K-d*I+2048>>12,d=QA,QA=i*E+p*$+2048>>12,i=i*$-p*E+2048>>12,p=QA,T[KA]=y+d,T[KA+7]=y-d,T[KA+1]=h+p,T[KA+6]=h-p,T[KA+2]=g+i,T[KA+5]=g-i,T[KA+3]=m+n,T[KA+4]=m-n}for(var HA=0;HA<8;++HA){if(x=T[HA],b=T[HA+8],o=T[HA+16],GA=T[HA+24],VA=T[HA+32],EA=T[HA+40],UA=T[HA+48],CA=T[HA+56],(b|o|GA|VA|EA|UA|CA)===0){if(QA=D*x+8192>>14,QA<-2040)QA=0;else if(QA>=2024)QA=255;else QA=QA+2056>>4;v[k+HA]=QA,v[k+HA+8]=QA,v[k+HA+16]=QA,v[k+HA+24]=QA,v[k+HA+32]=QA,v[k+HA+40]=QA,v[k+HA+48]=QA,v[k+HA+56]=QA;continue}if(y=D*x+2048>>12,h=D*VA+2048>>12,g=o,m=UA,n=L*(b-CA)+2048>>12,d=L*(b+CA)+2048>>12,i=GA,p=EA,y=(y+h+1>>1)+4112,h=y-h,QA=g*H+m*V+2048>>12,g=g*V-m*H+2048>>12,m=QA,n=n+p+1>>1,p=n-p,d=d+i+1>>1,i=d-i,y=y+m+1>>1,m=y-m,h=h+g+1>>1,g=h-g,QA=n*I+d*K+2048>>12,n=n*K-d*I+2048>>12,d=QA,QA=i*E+p*$+2048>>12,i=i*$-p*E+2048>>12,p=QA,x=y+d,CA=y-d,b=h+p,UA=h-p,o=g+i,EA=g-i,GA=m+n,VA=m-n,x<16)x=0;else if(x>=4080)x=255;else x>>=4;if(b<16)b=0;else if(b>=4080)b=255;else b>>=4;if(o<16)o=0;else if(o>=4080)o=255;else o>>=4;if(GA<16)GA=0;else if(GA>=4080)GA=255;else GA>>=4;if(VA<16)VA=0;else if(VA>=4080)VA=255;else VA>>=4;if(EA<16)EA=0;else if(EA>=4080)EA=255;else EA>>=4;if(UA<16)UA=0;else if(UA>=4080)UA=255;else UA>>=4;if(CA<16)CA=0;else if(CA>=4080)CA=255;else CA>>=4;v[k+HA]=x,v[k+HA+8]=b,v[k+HA+16]=o,v[k+HA+24]=GA,v[k+HA+32]=VA,v[k+HA+40]=EA,v[k+HA+48]=UA,v[k+HA+56]=CA}}function P(j,k){var{P:T,c:S}=k,v=new Int16Array(64);for(var y=0;y=S)return null;var y=W(j,k);if(y>=65472&&y<=65534)return{u:null,M:y,offset:k};var h=W(j,v);while(!(h>=65472&&h<=65534)){if(++v>=S)return null;h=W(j,v)}return{u:y.toString(16),M:h,offset:v}}return z.prototype={parse(j,k){if(k==null)k={};var T=k.F,S=0,v=null,y=null,h,g,m=0;function n(){var mQ=W(j,S);S+=2;var yB=S+mQ-2,L0=_(j,yB,S);if(L0&&L0.u)yB=L0.offset;var cJ=j.subarray(S,yB);return S+=cJ.length,cJ}function i(mQ){var yB=Math.ceil(mQ.o/8/mQ.X),L0=Math.ceil(mQ.s/8/mQ.B);for(var cJ=0;cJ>4===0)for(GA=0;GA<64;GA++)CA=U[GA],HA[CA]=j[S++];else if(KA>>4===1)for(GA=0;GA<64;GA++)CA=U[GA],HA[CA]=W(j,S),S+=2;else throw new C("DQT - invalid table spec");p[KA&15]=HA}break;case 65472:case 65473:case 65474:if(h)throw new C("Only single frame JPEGs supported");S+=2,h={},h.G=b===65473,h.Z=b===65474,h.precision=j[S++];var DA=W(j,S),hA,QQ=0,XA=0;S+=2,h.s=T||DA,h.o=W(j,S),S+=2,h.W=[],h._={};var PA=j[S++];for(o=0;o>4,TA=j[S+1]&15;if(QQ>4===0?x:d)[ZQ&15]=M(NQ,SQ)}break;case 65501:S+=2,g=W(j,S),S+=2;break;case 65498:var LA=++m===1&&!T,IA;S+=2;var jA=j[S++],tQ=[];for(o=0;o>4],IA.i=d[KB&15],tQ.push(IA)}var zA=j[S++],uA=j[S++],MQ=j[S++];try{var bQ=q(j,S,h,tQ,g,zA,uA,MQ>>4,MQ&15,LA);S+=bQ}catch(mQ){if(mQ instanceof DNLMarkerError)return this.parse(j,{F:mQ.s});else if(mQ instanceof EOIMarkerError)break A;throw mQ}break;case 65500:S+=4;break;case 65535:if(j[S]!==255)S--;break;default:var eQ=_(j,S-2,S-3);if(eQ&&eQ.u){S=eQ.offset;break}if(S>=j.length-1)break A;throw new C("JpegImage.parse - unknown marker: "+b.toString(16))}b=W(j,S),S+=2}this.width=h.o,this.height=h.s,this.g=v,this.b=y,this.W=[];for(o=0;o>8)+HA[x+1];return UA},get f(){if(this.b)return!!this.b.a;if(this.p===3){if(this.N===0)return!1;else if(this.W[0].index===82&&this.W[1].index===71&&this.W[2].index===66)return!1;return!0}if(this.N===1)return!0;return!1},z:function(k){var T,S,v;for(var y=0,h=k.length;y4)throw new C("Unsupported color mode");var y=this.Y(k,T,v);if(this.p===1&&S){var h=y.length,g=new Uint8ClampedArray(h*3),m=0;for(var n=0;n>24}function W(Z,U){return Z[U]<<8|Z[U+1]}function F(Z,U){return(Z[U]<<24|Z[U+1]<<16|Z[U+2]<<8|Z[U+3])>>>0}Y.JpegDecoder=X})(),Y.encodeImage=function(C,X,G,W){var F={t256:[X],t257:[G],t258:[8,8,8,8],t259:[1],t262:[2],t273:[1000],t277:[4],t278:[G],t279:[X*G*4],t282:[[72,1]],t283:[[72,1]],t284:[1],t286:[[0,1]],t287:[[0,1]],t296:[1],t305:["Photopea (UTIF.js)"],t338:[1]};if(W)for(var Z in W)F[Z]=W[Z];var U=new Uint8Array(Y.encode([F])),$=new Uint8Array(C),E=new Uint8Array(1000+X*G*4);for(var Z=0;Z3)X.t258=X.t258.slice(0,3);var $=X.t277?X.t277[0]:1,E=X.t258?X.t258[0]:1,K=E*$;if(Z==1&&X.t279!=null&&X.t278&&X.t262[0]==32803)K=Math.round(X.t279[0]*8/(X.width*X.t278[0]));if(X.t50885&&X.t50885[0]==4)K=X.t258[0]*3;var I=Math.ceil(X.width*K/8)*8,V=X.t273;if(V==null||X.t322)V=X.t324;var H=X.t279;if(Z==1&&V.length==1)H=[X.height*(I>>>3)];if(H==null||X.t322)H=X.t325;var D=new Uint8Array(X.height*(I>>>3)),L=0;if(X.t322!=null){var z=X.t322[0],M=X.t323[0],N=Math.floor((X.width+z-1)/z),q=Math.floor((X.height+M-1)/M),w=new Uint8Array(Math.ceil(z*M*K/8)|0);console.log("====",N,q);for(var P=0;P>>3,N=Math.ceil(L*z*K/8);if(L==16&&!C.isLE&&C.t33422==null)for(var q=0;q>>8&255}else if(z==3)for(var V=3;V>3^16368,(g[L]|g[L+1]<<8)>>(D&7)&~(-1<>2,N[1]=((i(1)&3)<<12|i(2)<<4|i(3)>>4)&16383,N[2]=i(3)>>2&3,N[3]=(i(3)&3)<<8|i(4),N[4]=i(5)<<2|i(6)>>6,N[5]=(i(6)&63)<<4|i(7)>>4,N[6]=i(7)>>2&3,N[7]=(i(7)&3)<<8|i(8),N[8]=i(9)<<2&1020|i(10)>>6,N[9]=(i(10)<<4|i(11)>>4)&1023,N[10]=i(11)>>2&3,N[11]=(i(11)&3)<<8|i(12),N[12]=(i(13)<<2&1020|i(14)>>6)&1023,N[13]=(i(14)<<4|i(15)>>4)&1023,D+=16,L=0}function d(){N[0]=i(0)<<4|i(1)>>4,N[1]=((i(1)&15)<<8|i(2))&4095,N[2]=i(3)>>6&3,N[3]=(i(3)&63)<<2|i(4)>>6,N[4]=(i(4)&63)<<2|i(5)>>6,N[5]=(i(5)&63)<<2|i(6)>>6,N[6]=i(6)>>4&3,N[7]=(i(6)&15)<<4|i(7)>>4,N[8]=(i(7)&15)<<4|i(8)>>4,N[9]=(i(8)&15)<<4|i(9)>>4,N[10]=i(9)>>2&3,N[11]=(i(9)&3)<<6|i(10)>>2,N[12]=(i(10)&3)<<6|i(11)>>2,N[13]=(i(11)&3)<<6|i(12)>>2,N[14]=i(12)&3,N[15]=i(13),N[16]=i(14),N[17]=i(15),D+=16,L=0}function x(){_[0]=0,_[1]=0,j[0]=0,j[1]=0}if(I==7)throw I;else if(I==6){var b=K==12,o=b?d:p,GA=b?14:11,VA=b?128:512,EA=b?2048:8192,UA=b?16383:65535,CA=b?4095:16383,QA=$/GA,KA=QA*16,HA=b?18:14;for(v=0;vS)PA+=j[k]-S;j[k]=PA}else if(_[k]=PA,PA)j[k]=PA;else PA=j[k];m[T+y++]=PA-15<=UA?PA-15&UA:PA+2147483633>>31&CA}}}}}else if(I==5){var NA=K==12?10:9;for(v=0;v>4),m[T++]=((N[4]&15)<<8)+N[3],m[T++]=16*N[5]+(N[4]>>4),m[T++]=((N[7]&15)<<8)+N[6],m[T++]=16*N[8]+(N[7]>>4),m[T++]=((N[10]&15)<<8)+N[9],m[T++]=16*N[11]+(N[10]>>4),m[T++]=((N[13]&15)<<8)+N[12],m[T++]=16*N[14]+(N[13]>>4);else if(K==14)m[T++]=N[0]+((N[1]&63)<<8),m[T++]=(N[1]>>6)+4*N[2]+((N[3]&15)<<10),m[T++]=(N[3]>>4)+16*N[4]+((N[5]&3)<<12),m[T++]=((N[5]&252)>>2)+(N[6]<<6),m[T++]=N[7]+((N[8]&63)<<8),m[T++]=(N[8]>>6)+4*N[9]+((N[10]&15)<<10),m[T++]=(N[10]>>4)+16*N[11]+((N[12]&3)<<12),m[T++]=((N[12]&252)>>2)+(N[13]<<6),m[T++]=N[14]+((N[15]&63)<<8)}else if(I==4)for(v=0;v>3-n(2);if(j[k]){if(w=n(8),w!=0){if(_[k]-=128<11)_[k]=j[k]<<4|n(4);m[T++]=_[y&1]}else throw I},Y.decode._decodeVC5=function(){var C=[1,0,1,0,2,2,1,1,3,7,1,2,5,25,1,3,6,48,1,4,6,54,1,5,7,111,1,8,7,99,1,6,7,105,12,0,7,107,1,7,8,209,20,0,8,212,1,9,8,220,1,10,9,393,1,11,9,394,32,0,9,416,1,12,9,427,1,13,10,887,1,18,10,784,1,14,10,790,1,15,10,835,60,0,10,852,1,16,10,885,1,17,11,1571,1,19,11,1668,1,20,11,1669,100,0,11,1707,1,21,11,1772,1,22,12,3547,1,29,12,3164,1,24,12,3166,1,25,12,3140,1,23,12,3413,1,26,12,3537,1,27,12,3539,1,28,13,7093,1,35,13,6283,1,30,13,6331,1,31,13,6335,180,0,13,6824,1,32,13,7072,1,33,13,7077,320,0,13,7076,1,34,14,12565,1,36,14,12661,1,37,14,12669,1,38,14,13651,1,39,14,14184,1,40,15,28295,1,46,15,28371,1,47,15,25320,1,42,15,25336,1,43,15,25128,1,41,15,27300,1,44,15,28293,1,45,16,50259,1,48,16,50643,1,49,16,50675,1,50,16,56740,1,53,16,56584,1,51,16,56588,1,52,17,113483,1,61,17,113482,1,60,17,101285,1,55,17,101349,1,56,17,109205,1,57,17,109207,1,58,17,100516,1,54,17,113171,1,59,18,202568,1,62,18,202696,1,63,18,218408,1,64,18,218412,1,65,18,226340,1,66,18,226356,1,67,18,226358,1,68,19,402068,1,69,19,405138,1,70,19,405394,1,71,19,436818,1,72,19,436826,1,73,19,452714,1,75,19,452718,1,76,19,452682,1,74,20,804138,1,77,20,810279,1,78,20,810790,1,79,20,873638,1,80,20,873654,1,81,20,905366,1,82,20,905430,1,83,20,905438,1,84,21,1608278,1,85,21,1620557,1,86,21,1621582,1,87,21,1621583,1,88,21,1747310,1,89,21,1810734,1,90,21,1810735,1,91,21,1810863,1,92,21,1810879,1,93,22,3621725,1,99,22,3621757,1,100,22,3241112,1,94,22,3494556,1,95,22,3494557,1,96,22,3494622,1,97,22,3494623,1,98,23,6482227,1,102,23,6433117,1,101,23,6989117,1,103,23,6989119,1,105,23,6989118,1,104,23,7243449,1,106,23,7243512,1,107,24,13978233,1,111,24,12964453,1,109,24,12866232,1,108,24,14486897,1,113,24,13978232,1,110,24,14486896,1,112,24,14487026,1,114,24,14487027,1,115,25,25732598,1,225,25,25732597,1,189,25,25732596,1,188,25,25732595,1,203,25,25732594,1,202,25,25732593,1,197,25,25732592,1,207,25,25732591,1,169,25,25732590,1,223,25,25732589,1,159,25,25732522,1,235,25,25732579,1,152,25,25732575,1,192,25,25732489,1,179,25,25732573,1,201,25,25732472,1,172,25,25732576,1,149,25,25732488,1,178,25,25732566,1,120,25,25732571,1,219,25,25732577,1,150,25,25732487,1,127,25,25732506,1,211,25,25732548,1,125,25,25732588,1,158,25,25732486,1,247,25,25732467,1,238,25,25732508,1,163,25,25732552,1,228,25,25732603,1,183,25,25732513,1,217,25,25732587,1,168,25,25732520,1,122,25,25732484,1,128,25,25732562,1,249,25,25732505,1,187,25,25732504,1,186,25,25732483,1,136,25,25928905,1,181,25,25732560,1,255,25,25732500,1,230,25,25732482,1,135,25,25732555,1,233,25,25732568,1,222,25,25732583,1,145,25,25732481,1,134,25,25732586,1,167,25,25732521,1,248,25,25732518,1,209,25,25732480,1,243,25,25732512,1,216,25,25732509,1,164,25,25732547,1,140,25,25732479,1,157,25,25732544,1,239,25,25732574,1,191,25,25732564,1,251,25,25732478,1,156,25,25732546,1,139,25,25732498,1,242,25,25732557,1,133,25,25732477,1,162,25,25732515,1,213,25,25732584,1,165,25,25732514,1,212,25,25732476,1,227,25,25732494,1,198,25,25732531,1,236,25,25732530,1,234,25,25732529,1,117,25,25732528,1,215,25,25732527,1,124,25,25732526,1,123,25,25732525,1,254,25,25732524,1,253,25,25732523,1,148,25,25732570,1,218,25,25732580,1,146,25,25732581,1,147,25,25732569,1,224,25,25732533,1,143,25,25732540,1,184,25,25732541,1,185,25,25732585,1,166,25,25732556,1,132,25,25732485,1,129,25,25732563,1,250,25,25732578,1,151,25,25732501,1,119,25,25732502,1,193,25,25732536,1,176,25,25732496,1,245,25,25732553,1,229,25,25732516,1,206,25,25732582,1,144,25,25732517,1,208,25,25732558,1,137,25,25732543,1,241,25,25732466,1,237,25,25732507,1,190,25,25732542,1,240,25,25732551,1,131,25,25732554,1,232,25,25732565,1,252,25,25732475,1,171,25,25732493,1,205,25,25732492,1,204,25,25732491,1,118,25,25732490,1,214,25,25928904,1,180,25,25732549,1,126,25,25732602,1,182,25,25732539,1,175,25,25732545,1,141,25,25732559,1,138,25,25732537,1,177,25,25732534,1,153,25,25732503,1,194,25,25732606,1,160,25,25732567,1,121,25,25732538,1,174,25,25732497,1,246,25,25732550,1,130,25,25732572,1,200,25,25732474,1,170,25,25732511,1,221,25,25732601,1,196,25,25732532,1,142,25,25732519,1,210,25,25732495,1,199,25,25732605,1,155,25,25732535,1,154,25,25732499,1,244,25,25732510,1,220,25,25732600,1,195,25,25732607,1,161,25,25732604,1,231,25,25732473,1,173,25,25732599,1,226,26,51465122,1,116,26,51465123,0,1],X,G,W,F=[3,3,3,3,2,2,2,1,1,1],Z=24576,U=16384,$=8192,E=U|$;function K(q){var w=q[1],P=q[0][w>>>3]>>>7-(w&7)&1;return q[1]++,P}function I(q,w){if(X==null){X={};for(var P=0;P>>1}return q}function H(q,w){return q>>w}function D(q,w,P,_,j,k){w[P]=H(H(11*q[j]-4*q[j+k]+q[j+k+k]+4,3)+q[_],1),w[P+k]=H(H(5*q[j]+4*q[j+k]-q[j+k+k]+4,3)-q[_],1)}function L(q,w,P,_,j,k){var T=q[j-k]-q[j+k],S=q[j],v=q[_];w[P]=H(H(T+4,3)+S+v,1),w[P+k]=H(H(-T+4,3)+S-v,1)}function z(q,w,P,_,j,k){w[P]=H(H(5*q[j]+4*q[j-k]-q[j-k-k]+4,3)+q[_],1),w[P+k]=H(H(11*q[j]-4*q[j-k]+q[j-k-k]+4,3)-q[_],1)}function M(q){return q=q<0?0:q>4095?4095:q,q=W[q]>>>2,q}function N(q,w,P,_,j,k){_=new Uint16Array(_.buffer);var T=Date.now(),S=Y._binBE,v=w+P,y,h,g,m,n,i,p,d,x,b,o,GA,VA,EA,UA,CA,QA,KA;w+=4;var HA=k[0]==1;while(w>>1)*(g>>>1));KA=new Int16Array((h>>>1)*(g>>>1)),G=new Int16Array(1024);for(var NA=0;NA<1024;NA++){var TA=NA-512,vA=Math.abs(TA),y=Math.floor(768*vA*vA*vA/16581375)+vA;G[NA]=Math.sign(TA)*y}W=new Uint16Array(4096);var mA=65535;for(var NA=0;NA<4096;NA++){var ZQ=NA,NQ=mA*(Math.pow(113,ZQ/4095)-1)/112;W[NA]=Math.min(NQ,mA)}}var CQ=QA[p],SQ=V(h,1+F[m]),LA=V(g,1+F[m]);if(m==0)for(var IA=0;IA>>1)+jA]=q[tQ]<<8|q[tQ+1]}else{var IQ=[q,w*8],vQ=[],KB=0,zA=SQ*LA,uA=[0,0],MQ=0,hA=0;while(KB0)vQ[KB++]=hA,MQ--}var bQ=(m-1)%3,eQ=bQ!=1?SQ:0,lB=bQ!=0?LA:0;for(var IA=0;IA>>1)+eQ,yB=IA*SQ;for(var jA=0;jA>>1,L0=SQ*2,cJ=LA*2;for(var IA=0;IA>14-R1*2&3;var fV=z1[uX];if(fV!=0)for(var IA=0;IA>>1)*(h>>>1)+(jA>>>1),NF=bV[tQ],W_=OM[tQ]-2048,LF=PM[tQ]-2048,D4=TM[tQ]-2048,qF=(W_<<1)+NF,MF=(LF<<1)+NF,mV=NF+D4,uV=NF-D4;if(HA)_[IC]=M(mV),_[IC+1]=M(MF),_[IC+h]=M(qF),_[IC+h+1]=M(uV);else _[IC]=M(qF),_[IC+1]=M(mV),_[IC+h]=M(uV),_[IC+h+1]=M(MF)}}w+=PA*4}else if(QQ==16388)w+=PA*4;else if(XA==8192||XA==8448||XA==9216);else throw QQ.toString(16)}}console.log(Date.now()-T)}return N}(),Y.decode._decodeLogLuv32=function(C,X,G,W,F,Z){var U=C.width,$=U*4,E=0,K=new Uint8Array($);while(E>>(D[p]>>>8);for(var L=0;L>>4,F[Z+p+1]=P<<4|j>>>4,F[Z+p+2]=j<<4|_>>>4}return}var k=new Uint16Array(16),T,S,v,y,h,g,m,n,i,p,d,x=new Uint8Array(U+1);for(T=0;T<$;T++){for(var b=0;b>>11,g=15&v>>>22,m=15&v>>>26;for(n=0;n<4&&128<>3))>>>(i&7)&127)<2047)k[p]=2047;i+=7}for(p=0;p<16;p++,S+=2){var w=k[p]<<1;Y.decode._putsF(F,(T*U+S)*E,w<<16-E)}S-=S&1?1:31}}},Y.decode._decodeNikon=function(C,X,G,W,F,Z,U){var $=[[0,0,1,5,1,1,1,1,1,1,2,0,0,0,0,0,0,5,4,3,6,2,7,1,0,8,9,11,10,12],[0,0,1,5,1,1,1,1,1,1,2,0,0,0,0,0,0,57,90,56,39,22,5,4,3,2,1,0,11,12,12],[0,0,1,4,2,3,1,2,0,0,0,0,0,0,0,0,0,5,4,6,3,7,2,8,1,9,0,10,11,12],[0,0,1,4,3,1,1,1,1,1,2,0,0,0,0,0,0,5,6,4,7,8,3,9,2,1,0,10,11,12,13,14],[0,0,1,5,1,1,1,1,1,1,1,2,0,0,0,0,0,8,92,75,58,41,7,6,5,4,3,2,1,0,13,14],[0,0,1,4,2,2,3,1,2,0,0,0,0,0,0,0,0,7,6,8,5,9,4,10,3,11,12,2,0,1,13,14]],E=C.t256[0],K=C.t257[0],I=C.t258[0],V=0,H=0,D=Y.decode._make_decoder,L=Y.decode._getbithuff,z=X[0].exifIFD.makerNote,M=z.t150?z.t150:z.t140,N=0,q=M[N++],w=M[N++];if(q==73||w==88)N+=2110;if(q==70)V=2;if(I==14)V+=3;var P=[[0,0],[0,0]],_=C.isLE?Y._binLE:Y._binBE;for(var v=0;v<2;v++)for(var j=0;j<2;j++)P[v][j]=_.readShort(M,N),N+=2;var k=1<1)T=Math.floor(k/(S-1));if(q==68&&w==32&&T>0)H=_.readShort(M,562);var v,y,h,g,m,n,i=0,p=[0,0],d=D($[V]),x=[W,0,0,0];for(i=y=0;y>>4,n=(L(G,x,g-m,0)<<1)+1<>>1,(n&1<>>3;C[W]|=G>>>16,C[W+1]|=G>>>8,C[W+2]|=G},Y.decode._getbithuff=function(C,X,G,W){var F=0,Z=Y.decode._get_byte,U,$=X[0],E=X[1],K=X[2],I=X[3];if(G==0||K<0)return 0;while(!I&&K>>32-G,W)K-=W[U+1]>>>8,U=W[U+1]&255;else K-=G;if(K<0)throw"e";return X[0]=$,X[1]=E,X[2]=K,X[3]=I,U},Y.decode._make_decoder=function(C){var X,G,W,F,Z,U=[];for(X=16;X!=0&&!C[X];X--);var $=17;U[0]=X;for(W=G=1;G<=X;G++)for(F=0;F>>8;else for(var H=0;H>>8,F[Z+(H<<1)+1]=M[H]&255;else if(z==14||z==12||z==10){var q=16-z;for(var H=0;H1;if(!z){if(X[G]==255&&X[G+1]==F)return{jpegOffset:G};if(w!=null){if(X[G+P]==255&&X[G+P+1]==F)V=G+P;else B("JPEGInterchangeFormat does not point to SOI");if(_==null)B("JPEGInterchangeFormatLength field is missing");else if(P>=H||P+j<=H)B("JPEGInterchangeFormatLength field value is invalid");if(V!=null)return{jpegOffset:V}}}if(T!=null)S=T[0],v=T[1];if(w!=null){if(_!=null)if(j>=2&&P+j<=H){if(X[G+P+j-2]==255&&X[G+P+j-1]==F)D=new Uint8Array(j-2);else D=new Uint8Array(j);for(M=0;M offset to first strip or tile")}if(D==null){var g=0,m=[];m[g++]=255,m[g++]=F;var n=C.t519;if(n==null)throw Error("JPEGQTables tag is missing");for(M=0;M>>8,m[g++]=p&255,m[g++]=M|q<<4;for(N=0;N<16;N++)m[g++]=X[G+i[M]+N];for(N=0;N>>8&255,m[g++]=C.height&255,m[g++]=C.width>>>8&255,m[g++]=C.width&255,m[g++]=y,y==1)m[g++]=1,m[g++]=17,m[g++]=0;else for(M=0;M<3;M++)m[g++]=M+1,m[g++]=M!=0?17:(S&15)<<4|v&15,m[g++]=M;if(h!=null&&h[0]!=0)m[g++]=255,m[g++]=E,m[g++]=0,m[g++]=4,m[g++]=h[0]>>>8&255,m[g++]=h[0]&255;D=new Uint8Array(m)}var d=-1;M=0;while(M>>8&255,D[b++]=C.height&255,D[b++]=C.width>>>8&255,D[b++]=C.width&255,D[b++]=y,y==1)D[b++]=1,D[b++]=17,D[b++]=0;else for(M=0;M<3;M++)D[b++]=M+1,D[b++]=M!=0?17:(S&15)<<4|v&15,D[b++]=M}if(X[H]==255&&X[H+1]==I){var o=X[H+2]<<8|X[H+3];L=new Uint8Array(o+2),L[0]=X[H],L[1]=X[H+1],L[2]=X[H+2],L[3]=X[H+3];for(M=0;M>>8&255,K[V.sofPosition+6]=C.height&255,K[V.sofPosition+7]=C.width>>>8&255,K[V.sofPosition+8]=C.width&255,X[G]!=255||X[G+1]!=SOS)K.set(V.sosMarker,I),I+=sosMarker.length;for(U=0;U=0&&E<128)for(var K=0;K=-127&&E<0){for(var K=0;K<-E+1;K++)U[F]=Z[X],F++;X++}}return F},Y.decode._decodeThunder=function(C,X,G,W,F){var Z=[0,1,0,-1],U=[0,1,2,3,0,-3,-2,-1],$=X+G,E=F*2,K=0;while(X<$){var I=C[X],V=I>>>6,H=I&63;if(X++,V==3)K=H&15,W[E>>>1]|=K<<4*(1-E&1),E++;if(V==0)for(var D=0;D>>1]|=K<<4*(1-E&1),E++;if(V==2)for(var D=0;D<2;D++){var L=H>>>3*(1-D)&7;if(L!=4)K+=U[L],W[E>>>1]|=K<<4*(1-E&1),E++}if(V==1)for(var D=0;D<3;D++){var L=H>>>2*(2-D)&3;if(L!=2)K+=Z[L],W[E>>>1]|=K<<4*(1-E&1),E++}}},Y.decode._dmap={"1":0,"011":1,"000011":2,"0000011":3,"010":-1,"000010":-2,"0000010":-3},Y.decode._lens=function(){var C=function(E,K,I,V){for(var H=0;H>>3>>3]>>>7-(E&7)&1;if(U==2)T=C[E>>>3]>>>(E&7)&1;if(E++,I+=T,_=="H"){if($._lens[w][I]!=null){var S=$._lens[w][I];if(I="",K+=S,S<64){if($._addNtimes(V,K,w),L+=K,w=1-w,K=0,j--,j==0)_=""}}}else{if(I=="0001")I="",$._addNtimes(V,q-L,w),L=q;if(I=="001")I="",_="H",j=2;if($._dmap[I]!=null)z=N+$._dmap[I],$._addNtimes(V,z-L,w),L=z,I="",w=1-w}if(V.length==Z&&_=="")$._writeBits(V,W,F*8+P*k),w=0,P++,L=0,H=$._makeDiff(V),V=[]}},Y.decode._findDiff=function(C,X,G){for(var W=0;W=X&&C[W+1]==G)return C[W]},Y.decode._makeDiff=function(C){var X=[];if(C[0]==1)X.push(0,1);for(var G=1;G>>3>>3]>>>7-(E&7)&1;if(U==2)z=C[E>>>3]>>>(E&7)&1;if(E++,I+=z,K=$._lens[H][I],K!=null){if($._addNtimes(V,K,H),I="",K<64)H=1-H;if(V.length==Z){if($._writeBits(V,W,F*8+D*L),V=[],D++,H=0,(E&7)!=0)E+=8-(E&7);if(K>=64)E+=8}}}},Y.decode._decodeG3=function(C,X,G,W,F,Z,U,$){var E=Y.decode,K=X<<3,I=0,V="",H=[],D=[];for(var L=0;L>>3>>3]>>>7-(K&7)&1;if(U==2)v=C[K>>>3]>>>(K&7)&1;if(K++,V+=v,T){if(E._lens[P][V]!=null){var y=E._lens[P][V];if(V="",I+=y,y<64)E._addNtimes(H,I,P),P=1-P,I=0}}else if(j=="H"){if(E._lens[P][V]!=null){var y=E._lens[P][V];if(V="",I+=y,y<64){if(E._addNtimes(H,I,P),z+=I,P=1-P,I=0,k--,k==0)j=""}}}else{if(V=="0001")V="",E._addNtimes(H,w-z,P),z=w;if(V=="001")V="",j="H",k=2;if(E._dmap[V]!=null)M=q+E._dmap[V],E._addNtimes(H,M-z,P),z=M,V="",P=1-P}if(V.endsWith("000000000001")){if(_>=0)E._writeBits(H,W,F*8+_*S);if($){if(U==1)T=(C[K>>>3]>>>7-(K&7)&1)==1;if(U==2)T=(C[K>>>3]>>>(K&7)&1)==1;K++}V="",P=0,_++,z=0,D=E._makeDiff(H),H=[]}}if(H.length==Z)E._writeBits(H,W,F*8+_*S)},Y.decode._addNtimes=function(C,X,G){for(var W=0;W>>3]|=C[W]<<7-(G+W&7)},Y.decode._decodeLZW=Y.decode._decodeLZW=function(){var C,X,G,W,F=0,Z=0,U=0,$=0,E=function(){var M=C>>>3,N=X[M]<<16|X[M+1]<<8|X[M+2],q=N>>>24-(C&7)-Z&(1<>>----------------");for(var E=0;EX.buffer.byteLength)V=X.buffer.byteLength-L;D=new Uint8Array(X.buffer,L,V)}if(I==2){var z=V<5?G-4:H,M=X[z],N=Math.max(0,Math.min(V-1,X.length-z));if(M<128||N==0)D.push(C.readASCII(X,z,N));else D=new Uint8Array(X.buffer,z,N)}if(I==3)for(var q=0;q4)C.writeUint(G,W,$),M=$;if(V==1||V==7)for(var N=0;N4)z+=z&1,$+=z;W+=4}return[W,$]},Y.toRGBA8=function(C,X){function G(CQ){return CQ<0.0031308?12.92*CQ:1.055*Math.pow(CQ,0.4166666666666667)-0.055}var{width:W,height:F}=C,Z=W*F,U=Z*4,$=C.data,E=new Uint8Array(Z*4),K=C.t262?C.t262[0]:2,I=C.t258?Math.min(32,C.t258[0]):1;if(C.t262==null&&I==1)K=0;var V=C.t277?C.t277[0]:C.t258?C.t258.length:[1,1,3,1,1,4,3][K],H=C.t339?C.t339[0]:null;if(K==1&&I==32&&H!=3)throw"e";var D=Math.ceil(V*I*W/8);if(K==0){X=0.00390625;for(var L=0;L>3)]>>7-(N&7)&1;E[q]=E[q+1]=E[q+2]=(1-w)*255,E[q+3]=255}if(I==4)for(var N=0;N>1)]>>4-4*(N&1)&15;E[q]=E[q+1]=E[q+2]=(15-w)*17,E[q+3]=255}if(I==8)for(var N=0;N>3)]>>7-(N&7)&1;E[q]=E[q+1]=E[q+2]=w*255,E[q+3]=255}if(I==2)for(var N=0;N>2)]>>6-2*(N&3)&3;E[q]=E[q+1]=E[q+2]=w*85,E[q+3]=255}if(I==8)for(var N=0;N>>2)+N,w=_[P];E[q]=E[q+1]=E[q+2]=~~(0.5+255*w),E[q+3]=255}}}else if(K==2)if(I==8){if(V==1)for(var N=0;N=4)for(var N=0;N1&&C.t338&&C.t338[0]!=0;for(var L=0;L>>3)]>>>7-(n&7)&1;else if(I==2)i=$[p+(n>>>2)]>>>6-2*(n&3)&3;else if(I==4)i=$[p+(n>>>1)]>>>4-4*(n&1)&15;else if(I==8)i=$[p+n*V];else throw I;E[q]=h[i]>>8,E[q+1]=h[g+i]>>8,E[q+2]=h[g+g+i]>>8,E[q+3]=m?$[p+n*V+1]:255}}else if(K==5){var d=V>4?1:0;for(var N=0;N>>1),GA=$[x+(QA&1)],KA=$[x+2]-128,HA=$[x+3]-128,DA=GA+((HA>>2)+(HA>>3)+(HA>>5)),hA=GA-((KA>>2)+(KA>>4)+(KA>>5))-((HA>>1)+(HA>>3)+(HA>>4)+(HA>>5)),QQ=GA+(KA+(KA>>1)+(KA>>2)+(KA>>6));E[q]=Math.max(0,Math.min(255,DA)),E[q+1]=Math.max(0,Math.min(255,hA)),E[q+2]=Math.max(0,Math.min(255,QQ)),E[q+3]=255}}}else if(K==32845)for(var L=0;LW)W=$,F=U}Y.decodeImage(C,F,X);var E=Y.toRGBA8(F),K=F.width,I=F.height,V=document.createElement("canvas");V.width=K,V.height=I;var H=V.getContext("2d"),D=new ImageData(new Uint8ClampedArray(E.buffer),K,I);return H.putImageData(D,0,0),V.toDataURL()},Y._binBE={nextZero:function(C,X){while(C[X]!=0)X++;return X},readUshort:function(C,X){return C[X]<<8|C[X+1]},readShort:function(C,X){var G=Y._binBE.ui8;return G[0]=C[X+1],G[1]=C[X+0],Y._binBE.i16[0]},readInt:function(C,X){var G=Y._binBE.ui8;return G[0]=C[X+3],G[1]=C[X+2],G[2]=C[X+1],G[3]=C[X+0],Y._binBE.i32[0]},readUint:function(C,X){var G=Y._binBE.ui8;return G[0]=C[X+3],G[1]=C[X+2],G[2]=C[X+1],G[3]=C[X+0],Y._binBE.ui32[0]},readASCII:function(C,X,G){var W="";for(var F=0;F>8&255,C[X+1]=G&255},writeInt:function(C,X,G){var W=Y._binBE.ui8;Y._binBE.i32[0]=G,C[X+3]=W[0],C[X+2]=W[1],C[X+1]=W[2],C[X+0]=W[3]},writeUint:function(C,X,G){C[X]=G>>24&255,C[X+1]=G>>16&255,C[X+2]=G>>8&255,C[X+3]=G>>0&255},writeASCII:function(C,X,G){for(var W=0;W>8&255},writeInt:function(C,X,G){var W=Y._binBE.ui8;Y._binBE.i32[0]=G,C[X+0]=W[0],C[X+1]=W[1],C[X+2]=W[2],C[X+3]=W[3]},writeUint:function(C,X,G){C[X]=G>>>0&255,C[X+1]=G>>>8&255,C[X+2]=G>>>16&255,C[X+3]=G>>>24&255},writeASCII:Y._binBE.writeASCII},Y._copyTile=function(C,X,G,W,F,Z,U,$){var E=Math.min(X,F-U),K=Math.min(G,Z-$);for(var I=0;I>--S&1,y=q[y+h];T[_]=y}}function Z(M,N,q,w){if(M[N+3]!=255)return 0;if(q==0)return N;for(var P=0;P<2;P++){if(M[N+P]==0)M[N+P]=M.length,M.push(0,0,w,255);var _=Z(M,M[N+P],q-1,w+1);if(_!=0)return _}return 0}function U(M){var{b:N,f:q}=M;while(N<25&&M.a>(N.b-=M)&65535>>16-M}function E(M,N){var q=M[0],w=0,P=255,_=0;if(N.b<16)U(N);var j=N.f>>N.b-8&255;w=M[1][j],P=q[w+3],N.b-=q[w+2];while(P==255)_=N.f>>--N.b&1,w=q[w+_],P=q[w+3];return P}function K(M,N){if(M<32768>>16-N)M+=-(1<>4,n&15]}}else if(y==65476){var p=X+h-2;while(X>>4],_[x[0]]=x.slice(1)}q=G(),X+=2;break}else if(y==65501)P=W();else X+=h-2}var b=w>8?Uint16Array:Uint8Array,o=new b(S*v*T),GA={b:0,f:0,c:q==8,a:X,data:C,d:C.length,e:P};if(GA.c)D(o,v*T,GA,k[0],S);else{var VA=[],EA=0,UA=0;for(var g=0;gEA)EA=QA;if(KA>UA)UA=KA;VA.push(QA*KA)}if(EA!=1||UA!=1){if(T!=3||VA[1]!=1||VA[2]!=1)throw"e";if(EA!=2||UA!=1&&UA!=2)throw"e";var HA=[],DA=0;for(var g=0;g>>1)*QQ+(QA>>>1))*DA,ZQ=(KA&1)*2+(QA&1);o[vA]=TA[mA+ZQ],o[vA+1]=TA[mA+4],o[vA+2]=TA[mA+5]}else for(var QA=0;QA>>1))*DA,ZQ=QA&1;o[vA]=TA[mA+ZQ],o[vA+1]=TA[mA+2],o[vA+2]=TA[mA+3]}}else if(V(o,v*T,GA,k,T,S),P==0)z(o,q,v,S,0,T,T,w);else{var NQ=Math.floor(P/v);for(var KA=0;KA>>1);else if(N==6)i=M[m]+(n-M[m-j]>>>1);else if(N==7)i=n+M[m]>>>1;else throw N;M[g]+=i}}}return L}(),function(){var C=0,X=1,G=2,W=3,F=4,Z=5,U=6,$=7,E=8,K=9,I=10,V=11,H=12,D=13,L=14,z=15,M=16,N=17,q=18;function w(d){var x=Y._binBE.readUshort,b={b:x(d,0),i:d[2],C:d[3],u:d[4],q:x(d,5),k:x(d,7),e:x(d,9),l:x(d,11),s:d[13],d:x(d,14)};if(b.b!=18771||b.i>1||b.q<6||b.q%6||b.e<768||b.e%24||b.l!=768||b.k=b.l||b.s>16||b.s!=b.k/b.l||b.s!=Math.ceil(b.e/b.l)||b.d!=b.q/6||b.u!=12&&b.u!=14&&b.u!=16||b.C!=16&&b.C!=0)throw"Invalid data";if(b.i==0)throw"Not implemented. We need this file!";return b.h=b.C==16,b.m=(b.h?b.l*2/3:b.l>>>1)|0,b.A=b.m+2,b.f=64,b.g=(1<>>6);for(var o=0;o<3;o++)for(var GA=0;GA<41;GA++)x[o][GA]=[b,1];return x}function S(d){for(var x=-1,b=0;!b;x++)if(b=d[d.j]>>>7-d.a&1,d.a++,d.a&=7,!d.a)d.j++;return x}function v(d,x){var b=0,o=8-d.a,GA=d.j,VA=d.a;if(x){if(x>=o)do b<<=o,x-=o,b|=d[d.j]&(1<=8);if(x)b<<=x,o-=x,b|=d[d.j]>>>o&(1<IA&&LA>>2,UA){XA[CA]=jA;return}hA=x.t*x.c[d.g+vA-NA]+x.c[d.g+TA-vA]}else jA=vA>TA&&vA>mA||vA>>2:ZQ+NQ>>>1,hA=x.t*x.c[d.g+vA-TA]+x.c[d.g+TA-ZQ];QQ=CQ(hA);var tQ=S(b);if(tQ>>1):DA>>>1,EA[QQ][0]+=CQ(DA),EA[QQ][1]==d.f)EA[QQ][0]>>>=1,EA[QQ][1]>>>=1;if(EA[QQ][1]++,jA=hA<0?jA-DA:jA+DA,d.i){if(jA<0)jA+=x.w;else if(jA>d.g)jA-=x.w}XA[CA]=jA>=0?Math.min(jA,d.g):0}function g(d,x,b){var o=d[0].length;for(var GA=x;GA<=b;GA++)d[GA][0]=d[GA-1][1],d[GA][o-1]=d[GA-1][o-2]}function m(d){g(d,$,H),g(d,G,F),g(d,z,N)}function n(d,x,b,o,GA,VA,EA,UA,CA,QA,KA,HA,DA){var hA=0,QQ=1,XA=GAF;while(QQ8)h(d,x,b,o,GA,QQ,UA[CA]),h(d,x,b,o,VA,QQ,UA[CA]),QQ+=2}m(o)}function i(d,x,b,o,GA,VA){n(d,x,b,o,G,$,GA,VA,0,0,1,0,8),n(d,x,b,o,E,z,GA,VA,1,0,1,0,8),n(d,x,b,o,W,K,GA,VA,2,1,0,3,0),n(d,x,b,o,I,M,GA,VA,0,0,0,3,2),n(d,x,b,o,F,V,GA,VA,1,0,0,3,2),n(d,x,b,o,H,N,GA,VA,2,1,0,3,0)}function p(d,x,b,o,GA,VA){var EA=VA.length,UA=d.l;if(GA+1==d.s)UA=d.e-GA*d.l;var CA=6*d.e*o+GA*d.l;for(var QA=0;QA<6;QA++){for(var KA=0;KA>>1);else if(HA==2)DA=z+(QA>>>1);else DA=$+QA;var hA=d.h?(KA*2/3&2147483646|KA%3&1)+(KA%3>>>1):KA>>>1;x[CA+KA]=b[DA][hA+1]}CA+=d.e}}Y._decompressRAF=function(d,x){var b=w(d),o=P(d,b),GA=k(b),VA=new Int16Array(b.e*b.q);if(x==null)x=b.h?[[1,1,0,1,1,2],[1,1,2,1,1,0],[2,0,1,0,2,1],[1,1,2,1,1,0],[1,1,0,1,1,2],[0,2,1,2,0,1]]:[[0,1],[3,2]];var EA=[[C,W],[X,F],[Z,V],[U,H],[D,M],[L,N]],UA=[];for(var CA=0;CA{/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh */oBB.read=function(A,Q,B,Y,J){var C,X,G=J*8-Y-1,W=(1<>1,Z=-7,U=B?J-1:0,$=B?-1:1,E=A[Q+U];U+=$,C=E&(1<<-Z)-1,E>>=-Z,Z+=G;for(;Z>0;C=C*256+A[Q+U],U+=$,Z-=8);X=C&(1<<-Z)-1,C>>=-Z,Z+=Y;for(;Z>0;X=X*256+A[Q+U],U+=$,Z-=8);if(C===0)C=1-F;else if(C===W)return X?NaN:(E?-1:1)*(1/0);else X=X+Math.pow(2,Y),C=C-F;return(E?-1:1)*X*Math.pow(2,C-Y)};oBB.write=function(A,Q,B,Y,J,C){var X,G,W,F=C*8-J-1,Z=(1<>1,$=J===23?Math.pow(2,-24)-Math.pow(2,-77):0,E=Y?0:C-1,K=Y?1:-1,I=Q<0||Q===0&&1/Q<0?1:0;if(Q=Math.abs(Q),isNaN(Q)||Q===1/0)G=isNaN(Q)?1:0,X=Z;else{if(X=Math.floor(Math.log(Q)/Math.LN2),Q*(W=Math.pow(2,-X))<1)X--,W*=2;if(X+U>=1)Q+=$/W;else Q+=$*Math.pow(2,1-U);if(Q*W>=2)X++,W/=2;if(X+U>=Z)G=0,X=Z;else if(X+U>=1)G=(Q*W-1)*Math.pow(2,J),X=X+U;else G=Q*Math.pow(2,U-1)*Math.pow(2,J),X=0}for(;J>=8;A[B+E]=G&255,E+=K,G/=256,J-=8);X=X<0;A[B+E]=X&255,E+=K,X/=256,F-=8);A[B+E-K]|=I*128}});var p7A=R((u7A)=>{Object.defineProperty(u7A,"__esModule",{value:!0});u7A.AnsiStringType=u7A.StringType=u7A.BufferType=u7A.Uint8ArrayType=u7A.IgnoreType=u7A.Float80_LE=u7A.Float80_BE=u7A.Float64_LE=u7A.Float64_BE=u7A.Float32_LE=u7A.Float32_BE=u7A.Float16_LE=u7A.Float16_BE=u7A.INT64_BE=u7A.UINT64_BE=u7A.INT64_LE=u7A.UINT64_LE=u7A.INT32_LE=u7A.INT32_BE=u7A.INT24_BE=u7A.INT24_LE=u7A.INT16_LE=u7A.INT16_BE=u7A.INT8=u7A.UINT32_BE=u7A.UINT32_LE=u7A.UINT24_BE=u7A.UINT24_LE=u7A.UINT16_BE=u7A.UINT16_LE=u7A.UINT8=void 0;var _7=h7A();function iQ(A){return new DataView(A.buffer,A.byteOffset)}u7A.UINT8={len:1,get(A,Q){return iQ(A).getUint8(Q)},put(A,Q,B){return iQ(A).setUint8(Q,B),Q+1}};u7A.UINT16_LE={len:2,get(A,Q){return iQ(A).getUint16(Q,!0)},put(A,Q,B){return iQ(A).setUint16(Q,B,!0),Q+2}};u7A.UINT16_BE={len:2,get(A,Q){return iQ(A).getUint16(Q)},put(A,Q,B){return iQ(A).setUint16(Q,B),Q+2}};u7A.UINT24_LE={len:3,get(A,Q){let B=iQ(A);return B.getUint8(Q)+(B.getUint16(Q+1,!0)<<8)},put(A,Q,B){let Y=iQ(A);return Y.setUint8(Q,B&255),Y.setUint16(Q+1,B>>8,!0),Q+3}};u7A.UINT24_BE={len:3,get(A,Q){let B=iQ(A);return(B.getUint16(Q)<<8)+B.getUint8(Q+2)},put(A,Q,B){let Y=iQ(A);return Y.setUint16(Q,B>>8),Y.setUint8(Q+2,B&255),Q+3}};u7A.UINT32_LE={len:4,get(A,Q){return iQ(A).getUint32(Q,!0)},put(A,Q,B){return iQ(A).setUint32(Q,B,!0),Q+4}};u7A.UINT32_BE={len:4,get(A,Q){return iQ(A).getUint32(Q)},put(A,Q,B){return iQ(A).setUint32(Q,B),Q+4}};u7A.INT8={len:1,get(A,Q){return iQ(A).getInt8(Q)},put(A,Q,B){return iQ(A).setInt8(Q,B),Q+1}};u7A.INT16_BE={len:2,get(A,Q){return iQ(A).getInt16(Q)},put(A,Q,B){return iQ(A).setInt16(Q,B),Q+2}};u7A.INT16_LE={len:2,get(A,Q){return iQ(A).getInt16(Q,!0)},put(A,Q,B){return iQ(A).setInt16(Q,B,!0),Q+2}};u7A.INT24_LE={len:3,get(A,Q){let B=u7A.UINT24_LE.get(A,Q);return B>8388607?B-16777216:B},put(A,Q,B){let Y=iQ(A);return Y.setUint8(Q,B&255),Y.setUint16(Q+1,B>>8,!0),Q+3}};u7A.INT24_BE={len:3,get(A,Q){let B=u7A.UINT24_BE.get(A,Q);return B>8388607?B-16777216:B},put(A,Q,B){let Y=iQ(A);return Y.setUint16(Q,B>>8),Y.setUint8(Q+2,B&255),Q+3}};u7A.INT32_BE={len:4,get(A,Q){return iQ(A).getInt32(Q)},put(A,Q,B){return iQ(A).setInt32(Q,B),Q+4}};u7A.INT32_LE={len:4,get(A,Q){return iQ(A).getInt32(Q,!0)},put(A,Q,B){return iQ(A).setInt32(Q,B,!0),Q+4}};u7A.UINT64_LE={len:8,get(A,Q){return iQ(A).getBigUint64(Q,!0)},put(A,Q,B){return iQ(A).setBigUint64(Q,B,!0),Q+8}};u7A.INT64_LE={len:8,get(A,Q){return iQ(A).getBigInt64(Q,!0)},put(A,Q,B){return iQ(A).setBigInt64(Q,B,!0),Q+8}};u7A.UINT64_BE={len:8,get(A,Q){return iQ(A).getBigUint64(Q)},put(A,Q,B){return iQ(A).setBigUint64(Q,B),Q+8}};u7A.INT64_BE={len:8,get(A,Q){return iQ(A).getBigInt64(Q)},put(A,Q,B){return iQ(A).setBigInt64(Q,B),Q+8}};u7A.Float16_BE={len:2,get(A,Q){return _7.read(A,Q,!1,10,this.len)},put(A,Q,B){return _7.write(A,B,Q,!1,10,this.len),Q+this.len}};u7A.Float16_LE={len:2,get(A,Q){return _7.read(A,Q,!0,10,this.len)},put(A,Q,B){return _7.write(A,B,Q,!0,10,this.len),Q+this.len}};u7A.Float32_BE={len:4,get(A,Q){return iQ(A).getFloat32(Q)},put(A,Q,B){return iQ(A).setFloat32(Q,B),Q+4}};u7A.Float32_LE={len:4,get(A,Q){return iQ(A).getFloat32(Q,!0)},put(A,Q,B){return iQ(A).setFloat32(Q,B,!0),Q+4}};u7A.Float64_BE={len:8,get(A,Q){return iQ(A).getFloat64(Q)},put(A,Q,B){return iQ(A).setFloat64(Q,B),Q+8}};u7A.Float64_LE={len:8,get(A,Q){return iQ(A).getFloat64(Q,!0)},put(A,Q,B){return iQ(A).setFloat64(Q,B,!0),Q+8}};u7A.Float80_BE={len:10,get(A,Q){return _7.read(A,Q,!1,63,this.len)},put(A,Q,B){return _7.write(A,B,Q,!1,63,this.len),Q+this.len}};u7A.Float80_LE={len:10,get(A,Q){return _7.read(A,Q,!0,63,this.len)},put(A,Q,B){return _7.write(A,B,Q,!0,63,this.len),Q+this.len}};class x7A{constructor(A){this.len=A}get(A,Q){}}u7A.IgnoreType=x7A;class f7A{constructor(A){this.len=A}get(A,Q){return A.subarray(Q,Q+this.len)}}u7A.Uint8ArrayType=f7A;class b7A{constructor(A){this.len=A}get(A,Q){return Buffer.from(A.subarray(Q,Q+this.len))}}u7A.BufferType=b7A;class m7A{constructor(A,Q){this.len=A,this.encoding=Q}get(A,Q){return Buffer.from(A).toString(this.encoding,Q,Q+this.len)}}u7A.StringType=m7A;class k7{constructor(A){this.len=A}static decode(A,Q,B){let Y="";for(let J=Q;J>10)+55296,(A&1023)+56320)}static singleByteDecoder(A){if(k7.inRange(A,0,127))return A;let Q=k7.windows1252[A-128];if(Q===null)throw Error("invaliding encoding");return Q}get(A,Q=0){return k7.decode(A,Q,Q+this.len)}}u7A.AnsiStringType=k7;k7.windows1252=[8364,129,8218,402,8222,8230,8224,8225,710,8240,352,8249,338,141,381,143,144,8216,8217,8220,8221,8226,8211,8212,732,8482,353,8250,339,157,382,376,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255]});var yR=R((n7A)=>{Object.defineProperty(n7A,"__esModule",{value:!0});n7A.EndOfStreamError=n7A.defaultMessages=void 0;n7A.defaultMessages="End-Of-Stream";class i7A extends Error{constructor(){super(n7A.defaultMessages)}}n7A.EndOfStreamError=i7A});var e7A=R((o7A)=>{Object.defineProperty(o7A,"__esModule",{value:!0});o7A.Deferred=void 0;class a7A{constructor(){this.resolve=()=>null,this.reject=()=>null,this.promise=new Promise((A,Q)=>{this.reject=Q,this.resolve=A})}}o7A.Deferred=a7A});var YWA=R((Kf)=>{Object.defineProperty(Kf,"__esModule",{value:!0});Kf.StreamReader=Kf.EndOfStreamError=void 0;var AWA=yR(),P0B=e7A(),T0B=yR();Object.defineProperty(Kf,"EndOfStreamError",{enumerable:!0,get:function(){return T0B.EndOfStreamError}});var S0B=1048576;class QWA{constructor(A){if(this.s=A,this.deferred=null,this.endOfStream=!1,this.peekQueue=[],!A.read||!A.once)throw Error("Expected an instance of stream.Readable");this.s.once("end",()=>this.reject(new AWA.EndOfStreamError)),this.s.once("error",(Q)=>this.reject(Q)),this.s.once("close",()=>this.reject(Error("Stream closed")))}async peek(A,Q,B){let Y=await this.read(A,Q,B);return this.peekQueue.push(A.subarray(Q,Q+Y)),Y}async read(A,Q,B){if(B===0)return 0;if(this.peekQueue.length===0&&this.endOfStream)throw new AWA.EndOfStreamError;let Y=B,J=0;while(this.peekQueue.length>0&&Y>0){let C=this.peekQueue.pop();if(!C)throw Error("peekData should be defined");let X=Math.min(C.length,Y);if(A.set(C.subarray(0,X),Q+J),J+=X,Y-=X,X0&&!this.endOfStream){let C=Math.min(Y,S0B),X=await this.readFromStream(A,Q+J,C);if(J+=X,X{this.readDeferred(J)}),J.deferred.promise}}readDeferred(A){let Q=this.s.read(A.length);if(Q)A.buffer.set(Q,A.offset),A.deferred.resolve(Q.length),this.deferred=null;else this.s.once("readable",()=>{this.readDeferred(A)})}reject(A){if(this.endOfStream=!0,this.deferred)this.deferred.reject(A),this.deferred=null}}Kf.StreamReader=QWA});var oH=R((gR)=>{Object.defineProperty(gR,"__esModule",{value:!0});gR.StreamReader=gR.EndOfStreamError=void 0;var k0B=yR();Object.defineProperty(gR,"EndOfStreamError",{enumerable:!0,get:function(){return k0B.EndOfStreamError}});var _0B=YWA();Object.defineProperty(gR,"StreamReader",{enumerable:!0,get:function(){return _0B.StreamReader}})});var Vf=R((CWA)=>{Object.defineProperty(CWA,"__esModule",{value:!0});CWA.AbstractTokenizer=void 0;var hR=oH();class JWA{constructor(A){this.position=0,this.numBuffer=new Uint8Array(8),this.fileInfo=A?A:{}}async readToken(A,Q=this.position){let B=Buffer.alloc(A.len);if(await this.readBuffer(B,{position:Q})Q)return this.position+=Q,Q}return this.position+=A,A}async close(){}normalizeOptions(A,Q){if(Q&&Q.position!==void 0&&Q.position{Object.defineProperty(WWA,"__esModule",{value:!0});WWA.ReadStreamTokenizer=void 0;var y0B=Vf(),xR=oH(),g0B=256000;class GWA extends y0B.AbstractTokenizer{constructor(A,Q){super(Q);this.streamReader=new xR.StreamReader(A)}async getFileInfo(){return this.fileInfo}async readBuffer(A,Q){let B=this.normalizeOptions(A,Q),Y=B.position-this.position;if(Y>0)return await this.ignore(Y),this.readBuffer(A,Q);else if(Y<0)throw Error("`options.position` must be equal or greater than `tokenizer.position`");if(B.length===0)return 0;let J=await this.streamReader.read(A,B.offset,B.length);if(this.position+=J,(!Q||!Q.mayBeLess)&&J0){let C=new Uint8Array(B.length+J);return Y=await this.peekBuffer(C,{mayBeLess:B.mayBeLess}),A.set(C.subarray(J),B.offset),Y-J}else if(J<0)throw Error("Cannot peek from a negative offset in a stream")}if(B.length>0){try{Y=await this.streamReader.peek(A,B.offset,B.length)}catch(J){if(Q&&Q.mayBeLess&&J instanceof xR.EndOfStreamError)return 0;throw J}if(!B.mayBeLess&&Y{Object.defineProperty(UWA,"__esModule",{value:!0});UWA.BufferTokenizer=void 0;var h0B=oH(),x0B=Vf();class $WA extends x0B.AbstractTokenizer{constructor(A,Q){super(Q);this.uint8Array=A,this.fileInfo.size=this.fileInfo.size?this.fileInfo.size:A.length}async readBuffer(A,Q){if(Q&&Q.position){if(Q.position{Object.defineProperty(If,"__esModule",{value:!0});If.fromBuffer=If.fromStream=If.EndOfStreamError=void 0;var f0B=ZWA(),b0B=KWA(),m0B=oH();Object.defineProperty(If,"EndOfStreamError",{enumerable:!0,get:function(){return m0B.EndOfStreamError}});function u0B(A,Q){return Q=Q?Q:{},new f0B.ReadStreamTokenizer(A,Q)}If.fromStream=u0B;function d0B(A,Q){return new b0B.BufferTokenizer(A,Q)}If.fromBuffer=d0B});var HWA=R((l0B)=>{l0B.stringToBytes=(A)=>[...A].map((Q)=>Q.charCodeAt(0));l0B.tarHeaderChecksumMatches=(A,Q=0)=>{let B=parseInt(A.toString("utf8",148,154).replace(/\0.*$/,"").trim(),8);if(isNaN(B))return!1;let Y=256;for(let J=Q;J{return A[Q+3]&127|A[Q+2]<<7|A[Q+1]<<14|A[Q]<<21},len:4}});var NWA=R((MFY,DWA)=>{DWA.exports={extensions:["jpg","png","apng","gif","webp","flif","xcf","cr2","cr3","orf","arw","dng","nef","rw2","raf","tif","bmp","icns","jxr","psd","indd","zip","tar","rar","gz","bz2","7z","dmg","mp4","mid","mkv","webm","mov","avi","mpg","mp2","mp3","m4a","oga","ogg","ogv","opus","flac","wav","spx","amr","pdf","epub","exe","swf","rtf","wasm","woff","woff2","eot","ttf","otf","ico","flv","ps","xz","sqlite","nes","crx","xpi","cab","deb","ar","rpm","Z","lz","cfb","mxf","mts","blend","bpg","docx","pptx","xlsx","3gp","3g2","jp2","jpm","jpx","mj2","aif","qcp","odt","ods","odp","xml","mobi","heic","cur","ktx","ape","wv","dcm","ics","glb","pcap","dsf","lnk","alias","voc","ac3","m4v","m4p","m4b","f4v","f4p","f4b","f4a","mie","asf","ogm","ogx","mpc","arrow","shp","aac","mp1","it","s3m","xm","ai","skp","avif","eps","lzh","pgp","asar","stl","chm","3mf","zst","jxl","vcf"],mimeTypes:["image/jpeg","image/png","image/gif","image/webp","image/flif","image/x-xcf","image/x-canon-cr2","image/x-canon-cr3","image/tiff","image/bmp","image/vnd.ms-photo","image/vnd.adobe.photoshop","application/x-indesign","application/epub+zip","application/x-xpinstall","application/vnd.oasis.opendocument.text","application/vnd.oasis.opendocument.spreadsheet","application/vnd.oasis.opendocument.presentation","application/vnd.openxmlformats-officedocument.wordprocessingml.document","application/vnd.openxmlformats-officedocument.presentationml.presentation","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet","application/zip","application/x-tar","application/x-rar-compressed","application/gzip","application/x-bzip2","application/x-7z-compressed","application/x-apple-diskimage","application/x-apache-arrow","video/mp4","audio/midi","video/x-matroska","video/webm","video/quicktime","video/vnd.avi","audio/vnd.wave","audio/qcelp","audio/x-ms-asf","video/x-ms-asf","application/vnd.ms-asf","video/mpeg","video/3gpp","audio/mpeg","audio/mp4","audio/opus","video/ogg","audio/ogg","application/ogg","audio/x-flac","audio/ape","audio/wavpack","audio/amr","application/pdf","application/x-msdownload","application/x-shockwave-flash","application/rtf","application/wasm","font/woff","font/woff2","application/vnd.ms-fontobject","font/ttf","font/otf","image/x-icon","video/x-flv","application/postscript","application/eps","application/x-xz","application/x-sqlite3","application/x-nintendo-nes-rom","application/x-google-chrome-extension","application/vnd.ms-cab-compressed","application/x-deb","application/x-unix-archive","application/x-rpm","application/x-compress","application/x-lzip","application/x-cfb","application/x-mie","application/mxf","video/mp2t","application/x-blender","image/bpg","image/jp2","image/jpx","image/jpm","image/mj2","audio/aiff","application/xml","application/x-mobipocket-ebook","image/heif","image/heif-sequence","image/heic","image/heic-sequence","image/icns","image/ktx","application/dicom","audio/x-musepack","text/calendar","text/vcard","model/gltf-binary","application/vnd.tcpdump.pcap","audio/x-dsf","application/x.ms.shortcut","application/x.apple.alias","audio/x-voc","audio/vnd.dolby.dd-raw","audio/x-m4a","image/apng","image/x-olympus-orf","image/x-sony-arw","image/x-adobe-dng","image/x-nikon-nef","image/x-panasonic-rw2","image/x-fujifilm-raf","video/x-m4v","video/3gpp2","application/x-esri-shape","audio/aac","audio/x-it","audio/x-s3m","audio/x-xm","video/MP1S","video/MP2P","application/vnd.sketchup.skp","image/avif","application/x-lzh-compressed","application/pgp-encrypted","application/x-asar","model/stl","application/vnd.ms-htmlhelp","model/3mf","image/jxl","application/zstd"]}});var zWA=R((MWA,Df)=>{var h6=p7A(),fR=IWA(),{stringToBytes:s0B,tarHeaderChecksumMatches:r0B,uint32SyncSafeToken:a0B}=HWA(),LWA=NWA(),zFY=4100;async function o0B(A){let Q=await fR.fromStream(A);try{return await bR(Q)}finally{await Q.close()}}async function qWA(A){if(!(A instanceof Uint8Array||A instanceof ArrayBuffer||Buffer.isBuffer(A)))throw TypeError(`Expected the \`input\` argument to be of type \`Uint8Array\` or \`Buffer\` or \`ArrayBuffer\`, got \`${typeof A}\``);let Q=A instanceof Buffer?A:Buffer.from(A);if(!(Q&&Q.length>1))return;let B=fR.fromBuffer(Q);return bR(B)}function o1(A,Q,B){B={offset:0,...B};for(let[Y,J]of Q.entries())if(B.mask){if(J!==(B.mask[Y]&A[Y+B.offset]))return!1}else if(J!==A[Y+B.offset])return!1;return!0}async function bR(A){try{return t0B(A)}catch(Q){if(!(Q instanceof fR.EndOfStreamError))throw Q}}async function t0B(A){let Q=Buffer.alloc(4100),B=12,Y=(C,X)=>o1(Q,C,X),J=(C,X)=>Y(s0B(C),X);if(!A.fileInfo.size)A.fileInfo.size=Number.MAX_SAFE_INTEGER;if(await A.peekBuffer(Q,{length:B,mayBeLess:!0}),Y([66,77]))return{ext:"bmp",mime:"image/bmp"};if(Y([11,119]))return{ext:"ac3",mime:"audio/vnd.dolby.dd-raw"};if(Y([120,1]))return{ext:"dmg",mime:"application/x-apple-diskimage"};if(Y([77,90]))return{ext:"exe",mime:"application/x-msdownload"};if(Y([37,33])){if(await A.peekBuffer(Q,{length:24,mayBeLess:!0}),J("PS-Adobe-",{offset:2})&&J(" EPSF-",{offset:14}))return{ext:"eps",mime:"application/eps"};return{ext:"ps",mime:"application/postscript"}}if(Y([31,160])||Y([31,157]))return{ext:"Z",mime:"application/x-compress"};if(Y([255,216,255]))return{ext:"jpg",mime:"image/jpeg"};if(Y([73,73,188]))return{ext:"jxr",mime:"image/vnd.ms-photo"};if(Y([31,139,8]))return{ext:"gz",mime:"application/gzip"};if(Y([66,90,104]))return{ext:"bz2",mime:"application/x-bzip2"};if(J("ID3")){await A.ignore(6);let C=await A.readToken(a0B);if(A.position+C>A.fileInfo.size)return{ext:"mp3",mime:"audio/mpeg"};return await A.ignore(C),bR(A)}if(J("MP+"))return{ext:"mpc",mime:"audio/x-musepack"};if((Q[0]===67||Q[0]===70)&&Y([87,83],{offset:1}))return{ext:"swf",mime:"application/x-shockwave-flash"};if(Y([71,73,70]))return{ext:"gif",mime:"image/gif"};if(J("FLIF"))return{ext:"flif",mime:"image/flif"};if(J("8BPS"))return{ext:"psd",mime:"image/vnd.adobe.photoshop"};if(J("WEBP",{offset:8}))return{ext:"webp",mime:"image/webp"};if(J("MPCK"))return{ext:"mpc",mime:"audio/x-musepack"};if(J("FORM"))return{ext:"aif",mime:"audio/aiff"};if(J("icns",{offset:0}))return{ext:"icns",mime:"image/icns"};if(Y([80,75,3,4])){try{while(A.position+30=0?X:Q.length)}else await A.ignore(C.compressedSize)}}catch(C){if(!(C instanceof fR.EndOfStreamError))throw C}return{ext:"zip",mime:"application/zip"}}if(J("OggS")){await A.ignore(28);let C=Buffer.alloc(8);if(await A.readBuffer(C),o1(C,[79,112,117,115,72,101,97,100]))return{ext:"opus",mime:"audio/opus"};if(o1(C,[128,116,104,101,111,114,97]))return{ext:"ogv",mime:"video/ogg"};if(o1(C,[1,118,105,100,101,111,0]))return{ext:"ogm",mime:"video/ogg"};if(o1(C,[127,70,76,65,67]))return{ext:"oga",mime:"audio/ogg"};if(o1(C,[83,112,101,101,120,32,32]))return{ext:"spx",mime:"audio/ogg"};if(o1(C,[1,118,111,114,98,105,115]))return{ext:"ogg",mime:"audio/ogg"};return{ext:"ogx",mime:"application/ogg"}}if(Y([80,75])&&(Q[2]===3||Q[2]===5||Q[2]===7)&&(Q[3]===4||Q[3]===6||Q[3]===8))return{ext:"zip",mime:"application/zip"};if(J("ftyp",{offset:4})&&(Q[8]&96)!==0){let C=Q.toString("binary",8,12).replace("\x00"," ").trim();switch(C){case"avif":return{ext:"avif",mime:"image/avif"};case"mif1":return{ext:"heic",mime:"image/heif"};case"msf1":return{ext:"heic",mime:"image/heif-sequence"};case"heic":case"heix":return{ext:"heic",mime:"image/heic"};case"hevc":case"hevx":return{ext:"heic",mime:"image/heic-sequence"};case"qt":return{ext:"mov",mime:"video/quicktime"};case"M4V":case"M4VH":case"M4VP":return{ext:"m4v",mime:"video/x-m4v"};case"M4P":return{ext:"m4p",mime:"video/mp4"};case"M4B":return{ext:"m4b",mime:"audio/mp4"};case"M4A":return{ext:"m4a",mime:"audio/x-m4a"};case"F4V":return{ext:"f4v",mime:"video/mp4"};case"F4P":return{ext:"f4p",mime:"video/mp4"};case"F4A":return{ext:"f4a",mime:"audio/mp4"};case"F4B":return{ext:"f4b",mime:"audio/mp4"};case"crx":return{ext:"cr3",mime:"image/x-canon-cr3"};default:if(C.startsWith("3g")){if(C.startsWith("3g2"))return{ext:"3g2",mime:"video/3gpp2"};return{ext:"3gp",mime:"video/3gpp"}}return{ext:"mp4",mime:"video/mp4"}}}if(J("MThd"))return{ext:"mid",mime:"audio/midi"};if(J("wOFF")&&(Y([0,1,0,0],{offset:4})||J("OTTO",{offset:4})))return{ext:"woff",mime:"font/woff"};if(J("wOF2")&&(Y([0,1,0,0],{offset:4})||J("OTTO",{offset:4})))return{ext:"woff2",mime:"font/woff2"};if(Y([212,195,178,161])||Y([161,178,195,212]))return{ext:"pcap",mime:"application/vnd.tcpdump.pcap"};if(J("DSD "))return{ext:"dsf",mime:"audio/x-dsf"};if(J("LZIP"))return{ext:"lz",mime:"application/x-lzip"};if(J("fLaC"))return{ext:"flac",mime:"audio/x-flac"};if(Y([66,80,71,251]))return{ext:"bpg",mime:"image/bpg"};if(J("wvpk"))return{ext:"wv",mime:"audio/wavpack"};if(J("%PDF")){await A.ignore(1350);let C=10485760,X=Buffer.alloc(Math.min(C,A.fileInfo.size));if(await A.readBuffer(X,{mayBeLess:!0}),X.includes(Buffer.from("AIPrivateData")))return{ext:"ai",mime:"application/postscript"};return{ext:"pdf",mime:"application/pdf"}}if(Y([0,97,115,109]))return{ext:"wasm",mime:"application/wasm"};if(Y([73,73,42,0])){if(J("CR",{offset:8}))return{ext:"cr2",mime:"image/x-canon-cr2"};if(Y([28,0,254,0],{offset:8})||Y([31,0,11,0],{offset:8}))return{ext:"nef",mime:"image/x-nikon-nef"};if(Y([8,0,0,0],{offset:4})&&(Y([45,0,254,0],{offset:8})||Y([39,0,254,0],{offset:8})))return{ext:"dng",mime:"image/x-adobe-dng"};if(Q=Buffer.alloc(24),await A.peekBuffer(Q),(Y([16,251,134,1],{offset:4})||Y([8,0,0,0],{offset:4}))&&Y([0,254,0,4,0,1,0,0,0,1,0,0,0,3,1],{offset:9}))return{ext:"arw",mime:"image/x-sony-arw"};return{ext:"tif",mime:"image/tiff"}}if(Y([77,77,0,42]))return{ext:"tif",mime:"image/tiff"};if(J("MAC "))return{ext:"ape",mime:"audio/ape"};if(Y([26,69,223,163])){async function C(){let Z=await A.peekNumber(h6.UINT8),U=128,$=0;while((Z&U)===0&&U!==0)++$,U>>=1;let E=Buffer.alloc($+1);return await A.readBuffer(E),E}async function X(){let Z=await C(),U=await C();U[0]^=128>>U.length-1;let $=Math.min(6,U.length);return{id:Z.readUIntBE(0,Z.length),len:U.readUIntBE(U.length-$,$)}}async function G(Z,U){while(U>0){let $=await X();if($.id===17026)return A.readToken(new h6.StringType($.len,"utf-8"));await A.ignore($.len),--U}}let W=await X();switch(await G(1,W.len)){case"webm":return{ext:"webm",mime:"video/webm"};case"matroska":return{ext:"mkv",mime:"video/x-matroska"};default:return}}if(Y([82,73,70,70])){if(Y([65,86,73],{offset:8}))return{ext:"avi",mime:"video/vnd.avi"};if(Y([87,65,86,69],{offset:8}))return{ext:"wav",mime:"audio/vnd.wave"};if(Y([81,76,67,77],{offset:8}))return{ext:"qcp",mime:"audio/qcelp"}}if(J("SQLi"))return{ext:"sqlite",mime:"application/x-sqlite3"};if(Y([78,69,83,26]))return{ext:"nes",mime:"application/x-nintendo-nes-rom"};if(J("Cr24"))return{ext:"crx",mime:"application/x-google-chrome-extension"};if(J("MSCF")||J("ISc("))return{ext:"cab",mime:"application/vnd.ms-cab-compressed"};if(Y([237,171,238,219]))return{ext:"rpm",mime:"application/x-rpm"};if(Y([197,208,211,198]))return{ext:"eps",mime:"application/eps"};if(Y([40,181,47,253]))return{ext:"zst",mime:"application/zstd"};if(Y([79,84,84,79,0]))return{ext:"otf",mime:"font/otf"};if(J("#!AMR"))return{ext:"amr",mime:"audio/amr"};if(J("{\\rtf"))return{ext:"rtf",mime:"application/rtf"};if(Y([70,76,86,1]))return{ext:"flv",mime:"video/x-flv"};if(J("IMPM"))return{ext:"it",mime:"audio/x-it"};if(J("-lh0-",{offset:2})||J("-lh1-",{offset:2})||J("-lh2-",{offset:2})||J("-lh3-",{offset:2})||J("-lh4-",{offset:2})||J("-lh5-",{offset:2})||J("-lh6-",{offset:2})||J("-lh7-",{offset:2})||J("-lzs-",{offset:2})||J("-lz4-",{offset:2})||J("-lz5-",{offset:2})||J("-lhd-",{offset:2}))return{ext:"lzh",mime:"application/x-lzh-compressed"};if(Y([0,0,1,186])){if(Y([33],{offset:4,mask:[241]}))return{ext:"mpg",mime:"video/MP1S"};if(Y([68],{offset:4,mask:[196]}))return{ext:"mpg",mime:"video/MP2P"}}if(J("ITSF"))return{ext:"chm",mime:"application/vnd.ms-htmlhelp"};if(Y([253,55,122,88,90,0]))return{ext:"xz",mime:"application/x-xz"};if(J("")){if(await A.ignore(8),await A.readToken(new h6.StringType(13,"ascii"))==="debian-binary")return{ext:"deb",mime:"application/x-deb"};return{ext:"ar",mime:"application/x-unix-archive"}}if(Y([137,80,78,71,13,10,26,10])){await A.ignore(8);async function C(){return{length:await A.readToken(h6.INT32_BE),type:await A.readToken(new h6.StringType(4,"binary"))}}do{let X=await C();if(X.length<0)return;switch(X.type){case"IDAT":return{ext:"png",mime:"image/png"};case"acTL":return{ext:"apng",mime:"image/apng"};default:await A.ignore(X.length+4)}}while(A.position+8=16){let C=Q.readUInt32LE(12);if(C>12&&Q.length>=C+16)try{let X=Q.slice(16,C+16).toString();if(JSON.parse(X).files)return{ext:"asar",mime:"application/x-asar"}}catch(X){}}if(Y([6,14,43,52,2,5,1,1,13,1,2,1,1,2]))return{ext:"mxf",mime:"application/mxf"};if(J("SCRM",{offset:44}))return{ext:"s3m",mime:"audio/x-s3m"};if(Y([71],{offset:4})&&(Y([71],{offset:192})||Y([71],{offset:196})))return{ext:"mts",mime:"video/mp2t"};if(Y([66,79,79,75,77,79,66,73],{offset:60}))return{ext:"mobi",mime:"application/x-mobipocket-ebook"};if(Y([68,73,67,77],{offset:128}))return{ext:"dcm",mime:"application/dicom"};if(Y([76,0,0,0,1,20,2,0,0,0,0,0,192,0,0,0,0,0,0,70]))return{ext:"lnk",mime:"application/x.ms.shortcut"};if(Y([98,111,111,107,0,0,0,0,109,97,114,107,0,0,0,0]))return{ext:"alias",mime:"application/x.apple.alias"};if(Y([76,80],{offset:34})&&(Y([0,0,1],{offset:8})||Y([1,0,2],{offset:8})||Y([2,0,2],{offset:8})))return{ext:"eot",mime:"application/vnd.ms-fontobject"};if(Y([6,6,237,245,216,29,70,229,189,49,239,231,254,116,183,29]))return{ext:"indd",mime:"application/x-indesign"};if(await A.peekBuffer(Q,{length:Math.min(512,A.fileInfo.size),mayBeLess:!0}),r0B(Q))return{ext:"tar",mime:"application/x-tar"};if(Y([255,254,255,14,83,0,107,0,101,0,116,0,99,0,104,0,85,0,112,0,32,0,77,0,111,0,100,0,101,0,108,0]))return{ext:"skp",mime:"application/vnd.sketchup.skp"};if(J("-----BEGIN PGP MESSAGE-----"))return{ext:"pgp",mime:"application/pgp-encrypted"};if(Q.length>=2&&Y([255,224],{offset:0,mask:[255,224]})){if(Y([16],{offset:1,mask:[22]})){if(Y([8],{offset:1,mask:[8]}))return{ext:"aac",mime:"audio/aac"};return{ext:"aac",mime:"audio/aac"}}if(Y([2],{offset:1,mask:[6]}))return{ext:"mp3",mime:"audio/mpeg"};if(Y([4],{offset:1,mask:[6]}))return{ext:"mp2",mime:"audio/mpeg"};if(Y([6],{offset:1,mask:[6]}))return{ext:"mp1",mime:"audio/mpeg"}}}var e0B=(readableStream)=>new Promise((resolve,reject)=>{let stream=eval("require")("stream");readableStream.on("error",reject),readableStream.once("readable",async()=>{let A=new stream.PassThrough,Q;if(stream.pipeline)Q=stream.pipeline(readableStream,A,()=>{});else Q=readableStream.pipe(A);let B=readableStream.read(4100)||readableStream.read()||Buffer.alloc(0);try{let Y=await qWA(B);A.fileType=Y}catch(Y){reject(Y)}resolve(Q)})}),Hf={fromStream:o0B,fromTokenizer:bR,fromBuffer:qWA,stream:e0B};Object.defineProperty(Hf,"extensions",{get(){return new Set(LWA.extensions)}});Object.defineProperty(Hf,"mimeTypes",{get(){return new Set(LWA.mimeTypes)}});Df.exports=Hf});var wWA=R((mR,RWA)=>{(function(A,Q){typeof mR==="object"&&typeof RWA<"u"?Q(mR):typeof define==="function"&&define.amd?define(["exports"],Q):Q(A.awaitToJs={})})(mR,function(A){function Q(B,Y){return B.then(function(J){return[null,J]}).catch(function(J){if(Y)Object.assign(J,Y);return[J,void 0]})}A.to=Q,A.default=Q,Object.defineProperty(A,"__esModule",{value:!0})})});var kWA=R((OFY,SWA)=>{function uR(){this._types=Object.create(null),this._extensions=Object.create(null);for(let A=0;A{_WA.exports={"application/andrew-inset":["ez"],"application/applixware":["aw"],"application/atom+xml":["atom"],"application/atomcat+xml":["atomcat"],"application/atomdeleted+xml":["atomdeleted"],"application/atomsvc+xml":["atomsvc"],"application/atsc-dwd+xml":["dwd"],"application/atsc-held+xml":["held"],"application/atsc-rsat+xml":["rsat"],"application/bdoc":["bdoc"],"application/calendar+xml":["xcs"],"application/ccxml+xml":["ccxml"],"application/cdfx+xml":["cdfx"],"application/cdmi-capability":["cdmia"],"application/cdmi-container":["cdmic"],"application/cdmi-domain":["cdmid"],"application/cdmi-object":["cdmio"],"application/cdmi-queue":["cdmiq"],"application/cu-seeme":["cu"],"application/dash+xml":["mpd"],"application/davmount+xml":["davmount"],"application/docbook+xml":["dbk"],"application/dssc+der":["dssc"],"application/dssc+xml":["xdssc"],"application/ecmascript":["es","ecma"],"application/emma+xml":["emma"],"application/emotionml+xml":["emotionml"],"application/epub+zip":["epub"],"application/exi":["exi"],"application/express":["exp"],"application/fdt+xml":["fdt"],"application/font-tdpfr":["pfr"],"application/geo+json":["geojson"],"application/gml+xml":["gml"],"application/gpx+xml":["gpx"],"application/gxf":["gxf"],"application/gzip":["gz"],"application/hjson":["hjson"],"application/hyperstudio":["stk"],"application/inkml+xml":["ink","inkml"],"application/ipfix":["ipfix"],"application/its+xml":["its"],"application/java-archive":["jar","war","ear"],"application/java-serialized-object":["ser"],"application/java-vm":["class"],"application/javascript":["js","mjs"],"application/json":["json","map"],"application/json5":["json5"],"application/jsonml+json":["jsonml"],"application/ld+json":["jsonld"],"application/lgr+xml":["lgr"],"application/lost+xml":["lostxml"],"application/mac-binhex40":["hqx"],"application/mac-compactpro":["cpt"],"application/mads+xml":["mads"],"application/manifest+json":["webmanifest"],"application/marc":["mrc"],"application/marcxml+xml":["mrcx"],"application/mathematica":["ma","nb","mb"],"application/mathml+xml":["mathml"],"application/mbox":["mbox"],"application/mediaservercontrol+xml":["mscml"],"application/metalink+xml":["metalink"],"application/metalink4+xml":["meta4"],"application/mets+xml":["mets"],"application/mmt-aei+xml":["maei"],"application/mmt-usd+xml":["musd"],"application/mods+xml":["mods"],"application/mp21":["m21","mp21"],"application/mp4":["mp4s","m4p"],"application/msword":["doc","dot"],"application/mxf":["mxf"],"application/n-quads":["nq"],"application/n-triples":["nt"],"application/node":["cjs"],"application/octet-stream":["bin","dms","lrf","mar","so","dist","distz","pkg","bpk","dump","elc","deploy","exe","dll","deb","dmg","iso","img","msi","msp","msm","buffer"],"application/oda":["oda"],"application/oebps-package+xml":["opf"],"application/ogg":["ogx"],"application/omdoc+xml":["omdoc"],"application/onenote":["onetoc","onetoc2","onetmp","onepkg"],"application/oxps":["oxps"],"application/p2p-overlay+xml":["relo"],"application/patch-ops-error+xml":["xer"],"application/pdf":["pdf"],"application/pgp-encrypted":["pgp"],"application/pgp-signature":["asc","sig"],"application/pics-rules":["prf"],"application/pkcs10":["p10"],"application/pkcs7-mime":["p7m","p7c"],"application/pkcs7-signature":["p7s"],"application/pkcs8":["p8"],"application/pkix-attr-cert":["ac"],"application/pkix-cert":["cer"],"application/pkix-crl":["crl"],"application/pkix-pkipath":["pkipath"],"application/pkixcmp":["pki"],"application/pls+xml":["pls"],"application/postscript":["ai","eps","ps"],"application/provenance+xml":["provx"],"application/pskc+xml":["pskcxml"],"application/raml+yaml":["raml"],"application/rdf+xml":["rdf","owl"],"application/reginfo+xml":["rif"],"application/relax-ng-compact-syntax":["rnc"],"application/resource-lists+xml":["rl"],"application/resource-lists-diff+xml":["rld"],"application/rls-services+xml":["rs"],"application/route-apd+xml":["rapd"],"application/route-s-tsid+xml":["sls"],"application/route-usd+xml":["rusd"],"application/rpki-ghostbusters":["gbr"],"application/rpki-manifest":["mft"],"application/rpki-roa":["roa"],"application/rsd+xml":["rsd"],"application/rss+xml":["rss"],"application/rtf":["rtf"],"application/sbml+xml":["sbml"],"application/scvp-cv-request":["scq"],"application/scvp-cv-response":["scs"],"application/scvp-vp-request":["spq"],"application/scvp-vp-response":["spp"],"application/sdp":["sdp"],"application/senml+xml":["senmlx"],"application/sensml+xml":["sensmlx"],"application/set-payment-initiation":["setpay"],"application/set-registration-initiation":["setreg"],"application/shf+xml":["shf"],"application/sieve":["siv","sieve"],"application/smil+xml":["smi","smil"],"application/sparql-query":["rq"],"application/sparql-results+xml":["srx"],"application/srgs":["gram"],"application/srgs+xml":["grxml"],"application/sru+xml":["sru"],"application/ssdl+xml":["ssdl"],"application/ssml+xml":["ssml"],"application/swid+xml":["swidtag"],"application/tei+xml":["tei","teicorpus"],"application/thraud+xml":["tfi"],"application/timestamped-data":["tsd"],"application/toml":["toml"],"application/trig":["trig"],"application/ttml+xml":["ttml"],"application/ubjson":["ubj"],"application/urc-ressheet+xml":["rsheet"],"application/urc-targetdesc+xml":["td"],"application/voicexml+xml":["vxml"],"application/wasm":["wasm"],"application/widget":["wgt"],"application/winhlp":["hlp"],"application/wsdl+xml":["wsdl"],"application/wspolicy+xml":["wspolicy"],"application/xaml+xml":["xaml"],"application/xcap-att+xml":["xav"],"application/xcap-caps+xml":["xca"],"application/xcap-diff+xml":["xdf"],"application/xcap-el+xml":["xel"],"application/xcap-ns+xml":["xns"],"application/xenc+xml":["xenc"],"application/xhtml+xml":["xhtml","xht"],"application/xliff+xml":["xlf"],"application/xml":["xml","xsl","xsd","rng"],"application/xml-dtd":["dtd"],"application/xop+xml":["xop"],"application/xproc+xml":["xpl"],"application/xslt+xml":["*xsl","xslt"],"application/xspf+xml":["xspf"],"application/xv+xml":["mxml","xhvml","xvml","xvm"],"application/yang":["yang"],"application/yin+xml":["yin"],"application/zip":["zip"],"audio/3gpp":["*3gpp"],"audio/adpcm":["adp"],"audio/amr":["amr"],"audio/basic":["au","snd"],"audio/midi":["mid","midi","kar","rmi"],"audio/mobile-xmf":["mxmf"],"audio/mp3":["*mp3"],"audio/mp4":["m4a","mp4a"],"audio/mpeg":["mpga","mp2","mp2a","mp3","m2a","m3a"],"audio/ogg":["oga","ogg","spx","opus"],"audio/s3m":["s3m"],"audio/silk":["sil"],"audio/wav":["wav"],"audio/wave":["*wav"],"audio/webm":["weba"],"audio/xm":["xm"],"font/collection":["ttc"],"font/otf":["otf"],"font/ttf":["ttf"],"font/woff":["woff"],"font/woff2":["woff2"],"image/aces":["exr"],"image/apng":["apng"],"image/avif":["avif"],"image/bmp":["bmp"],"image/cgm":["cgm"],"image/dicom-rle":["drle"],"image/emf":["emf"],"image/fits":["fits"],"image/g3fax":["g3"],"image/gif":["gif"],"image/heic":["heic"],"image/heic-sequence":["heics"],"image/heif":["heif"],"image/heif-sequence":["heifs"],"image/hej2k":["hej2"],"image/hsj2":["hsj2"],"image/ief":["ief"],"image/jls":["jls"],"image/jp2":["jp2","jpg2"],"image/jpeg":["jpeg","jpg","jpe"],"image/jph":["jph"],"image/jphc":["jhc"],"image/jpm":["jpm"],"image/jpx":["jpx","jpf"],"image/jxr":["jxr"],"image/jxra":["jxra"],"image/jxrs":["jxrs"],"image/jxs":["jxs"],"image/jxsc":["jxsc"],"image/jxsi":["jxsi"],"image/jxss":["jxss"],"image/ktx":["ktx"],"image/ktx2":["ktx2"],"image/png":["png"],"image/sgi":["sgi"],"image/svg+xml":["svg","svgz"],"image/t38":["t38"],"image/tiff":["tif","tiff"],"image/tiff-fx":["tfx"],"image/webp":["webp"],"image/wmf":["wmf"],"message/disposition-notification":["disposition-notification"],"message/global":["u8msg"],"message/global-delivery-status":["u8dsn"],"message/global-disposition-notification":["u8mdn"],"message/global-headers":["u8hdr"],"message/rfc822":["eml","mime"],"model/3mf":["3mf"],"model/gltf+json":["gltf"],"model/gltf-binary":["glb"],"model/iges":["igs","iges"],"model/mesh":["msh","mesh","silo"],"model/mtl":["mtl"],"model/obj":["obj"],"model/step+xml":["stpx"],"model/step+zip":["stpz"],"model/step-xml+zip":["stpxz"],"model/stl":["stl"],"model/vrml":["wrl","vrml"],"model/x3d+binary":["*x3db","x3dbz"],"model/x3d+fastinfoset":["x3db"],"model/x3d+vrml":["*x3dv","x3dvz"],"model/x3d+xml":["x3d","x3dz"],"model/x3d-vrml":["x3dv"],"text/cache-manifest":["appcache","manifest"],"text/calendar":["ics","ifb"],"text/coffeescript":["coffee","litcoffee"],"text/css":["css"],"text/csv":["csv"],"text/html":["html","htm","shtml"],"text/jade":["jade"],"text/jsx":["jsx"],"text/less":["less"],"text/markdown":["markdown","md"],"text/mathml":["mml"],"text/mdx":["mdx"],"text/n3":["n3"],"text/plain":["txt","text","conf","def","list","log","in","ini"],"text/richtext":["rtx"],"text/rtf":["*rtf"],"text/sgml":["sgml","sgm"],"text/shex":["shex"],"text/slim":["slim","slm"],"text/spdx":["spdx"],"text/stylus":["stylus","styl"],"text/tab-separated-values":["tsv"],"text/troff":["t","tr","roff","man","me","ms"],"text/turtle":["ttl"],"text/uri-list":["uri","uris","urls"],"text/vcard":["vcard"],"text/vtt":["vtt"],"text/xml":["*xml"],"text/yaml":["yaml","yml"],"video/3gpp":["3gp","3gpp"],"video/3gpp2":["3g2"],"video/h261":["h261"],"video/h263":["h263"],"video/h264":["h264"],"video/iso.segment":["m4s"],"video/jpeg":["jpgv"],"video/jpm":["*jpm","jpgm"],"video/mj2":["mj2","mjp2"],"video/mp2t":["ts"],"video/mp4":["mp4","mp4v","mpg4"],"video/mpeg":["mpeg","mpg","mpe","m1v","m2v"],"video/ogg":["ogv"],"video/quicktime":["qt","mov"],"video/webm":["webm"]}});var gWA=R((TFY,yWA)=>{var AYB=kWA();yWA.exports=new AYB(vWA())});var sWA=R((gFY,nWA)=>{nWA.exports={parseSections:function(A,Q){var B,Y;A.setBigEndian(!0);while(A.remainingLength()>0&&Y!==218){if(A.nextUInt8()!==255)throw Error("Invalid JPEG section offset");if(Y=A.nextUInt8(),Y>=208&&Y<=217||Y===218)B=0;else B=A.nextUInt16()-2;Q(Y,A.branch(0,B)),A.skip(B)}},getSizeFromSOFSection:function(A){return A.skip(1),{height:A.nextUInt16(),width:A.nextUInt16()}},getSectionName:function(A){var Q,B;switch(A){case 216:Q="SOI";break;case 196:Q="DHT";break;case 219:Q="DQT";break;case 221:Q="DRI";break;case 218:Q="SOS";break;case 254:Q="COM";break;case 217:Q="EOI";break;default:if(A>=224&&A<=239)Q="APP",B=A-224;else if(A>=192&&A<=207&&A!==196&&A!==200&&A!==204)Q="SOF",B=A-192;else if(A>=208&&A<=215)Q="RST",B=A-208;break}var Y={name:Q};if(typeof B==="number")Y.index=B;return Y}}});var Lf=R((hFY,rWA)=>{function BYB(A,Q){switch(A){case 1:return Q.nextUInt8();case 3:return Q.nextUInt16();case 4:return Q.nextUInt32();case 5:return[Q.nextUInt32(),Q.nextUInt32()];case 6:return Q.nextInt8();case 8:return Q.nextUInt16();case 9:return Q.nextUInt32();case 10:return[Q.nextInt32(),Q.nextInt32()];case 11:return Q.nextFloat();case 12:return Q.nextDouble();default:throw Error("Invalid format while decoding: "+A)}}function YYB(A){switch(A){case 1:case 2:case 6:case 7:return 1;case 3:case 8:return 2;case 4:case 9:case 11:return 4;case 5:case 10:case 12:return 8;default:return 0}}function JYB(A,Q){var B=Q.nextUInt16(),Y=Q.nextUInt16(),J=YYB(Y),C=Q.nextUInt32(),X=J*C,G,W,F;if(X>4)Q=A.openWithOffset(Q.nextUInt32());if(Y===2){G=Q.nextString(C);var Z=G.indexOf("\x00");if(Z!==-1)G=G.substr(0,Z)}else if(Y===7)G=Q.nextBuffer(C);else if(Y!==0){G=[];for(F=0;F{function qf(A){return parseInt(A,10)}var XYB=3600,GYB=60;function aWA(A,Q){A=A.map(qf),Q=Q.map(qf);var B=A[0],Y=A[1]-1,J=A[2],C=Q[0],X=Q[1],G=Q[2],W=Date.UTC(B,Y,J,C,X,G,0),F=W/1000;return F}function oWA(A){var Q=A.substr(0,10).split("-"),B=A.substr(11,8).split(":"),Y=A.substr(19,6),J=Y.split(":").map(qf),C=J[0]*XYB+J[1]*GYB,X=aWA(Q,B);if(X-=C,typeof X==="number"&&!isNaN(X))return X}function tWA(A){var Q=A.split(" "),B=Q[0].split(":"),Y=Q[1].split(":"),J=aWA(B,Y);if(typeof J==="number"&&!isNaN(J))return J}function WYB(A){var Q=A.length===19&&A.charAt(4)===":",B=A.length===25&&A.charAt(10)==="T",Y;if(B)return oWA(A);else if(Q)return tWA(A)}eWA.exports={parseDateWithSpecFormat:tWA,parseDateWithTimezoneFormat:oWA,parseExifDate:WYB}});var BFA=R((fFY,QFA)=>{var nU=Lf(),FYB=AFA(),ZYB=[{section:nU.GPSIFD,type:2,name:"GPSLatitude",refType:1,refName:"GPSLatitudeRef",posVal:"N"},{section:nU.GPSIFD,type:4,name:"GPSLongitude",refType:3,refName:"GPSLongitudeRef",posVal:"E"}],$YB=[{section:nU.SubIFD,type:306,name:"ModifyDate"},{section:nU.SubIFD,type:36867,name:"DateTimeOriginal"},{section:nU.SubIFD,type:36868,name:"CreateDate"},{section:nU.SubIFD,type:306,name:"ModifyDate"}];QFA.exports={castDegreeValues:function(A,Q){ZYB.forEach(function(B){var Y=A(B);if(Y){var J=A({section:B.section,type:B.refType,name:B.refName}),C=J===B.posVal?1:-1,X=(Y[0]+Y[1]/60+Y[2]/3600)*C;Q(B,X)}})},castDateValues:function(A,Q){$YB.forEach(function(B){var Y=A(B);if(Y){var J=FYB.parseExifDate(Y);if(typeof J<"u")Q(B,J)}})},simplifyValue:function(A,Q){if(Array.isArray(A)){if(A=A.map(function(B){if(Q===10||Q===5)return B[0]/B[1];return B}),A.length===1)A=A[0]}return A}}});var JFA=R((bFY,YFA)=>{YFA.exports={exif:{1:"InteropIndex",2:"InteropVersion",11:"ProcessingSoftware",254:"SubfileType",255:"OldSubfileType",256:"ImageWidth",257:"ImageHeight",258:"BitsPerSample",259:"Compression",262:"PhotometricInterpretation",263:"Thresholding",264:"CellWidth",265:"CellLength",266:"FillOrder",269:"DocumentName",270:"ImageDescription",271:"Make",272:"Model",273:"StripOffsets",274:"Orientation",277:"SamplesPerPixel",278:"RowsPerStrip",279:"StripByteCounts",280:"MinSampleValue",281:"MaxSampleValue",282:"XResolution",283:"YResolution",284:"PlanarConfiguration",285:"PageName",286:"XPosition",287:"YPosition",288:"FreeOffsets",289:"FreeByteCounts",290:"GrayResponseUnit",291:"GrayResponseCurve",292:"T4Options",293:"T6Options",296:"ResolutionUnit",297:"PageNumber",300:"ColorResponseUnit",301:"TransferFunction",305:"Software",306:"ModifyDate",315:"Artist",316:"HostComputer",317:"Predictor",318:"WhitePoint",319:"PrimaryChromaticities",320:"ColorMap",321:"HalftoneHints",322:"TileWidth",323:"TileLength",324:"TileOffsets",325:"TileByteCounts",326:"BadFaxLines",327:"CleanFaxData",328:"ConsecutiveBadFaxLines",330:"SubIFD",332:"InkSet",333:"InkNames",334:"NumberofInks",336:"DotRange",337:"TargetPrinter",338:"ExtraSamples",339:"SampleFormat",340:"SMinSampleValue",341:"SMaxSampleValue",342:"TransferRange",343:"ClipPath",344:"XClipPathUnits",345:"YClipPathUnits",346:"Indexed",347:"JPEGTables",351:"OPIProxy",400:"GlobalParametersIFD",401:"ProfileType",402:"FaxProfile",403:"CodingMethods",404:"VersionYear",405:"ModeNumber",433:"Decode",434:"DefaultImageColor",435:"T82Options",437:"JPEGTables",512:"JPEGProc",513:"ThumbnailOffset",514:"ThumbnailLength",515:"JPEGRestartInterval",517:"JPEGLosslessPredictors",518:"JPEGPointTransforms",519:"JPEGQTables",520:"JPEGDCTables",521:"JPEGACTables",529:"YCbCrCoefficients",530:"YCbCrSubSampling",531:"YCbCrPositioning",532:"ReferenceBlackWhite",559:"StripRowCounts",700:"ApplicationNotes",999:"USPTOMiscellaneous",4096:"RelatedImageFileFormat",4097:"RelatedImageWidth",4098:"RelatedImageHeight",18246:"Rating",18247:"XP_DIP_XML",18248:"StitchInfo",18249:"RatingPercent",32781:"ImageID",32931:"WangTag1",32932:"WangAnnotation",32933:"WangTag3",32934:"WangTag4",32995:"Matteing",32996:"DataType",32997:"ImageDepth",32998:"TileDepth",33405:"Model2",33421:"CFARepeatPatternDim",33422:"CFAPattern2",33423:"BatteryLevel",33424:"KodakIFD",33432:"Copyright",33434:"ExposureTime",33437:"FNumber",33445:"MDFileTag",33446:"MDScalePixel",33447:"MDColorTable",33448:"MDLabName",33449:"MDSampleInfo",33450:"MDPrepDate",33451:"MDPrepTime",33452:"MDFileUnits",33550:"PixelScale",33589:"AdventScale",33590:"AdventRevision",33628:"UIC1Tag",33629:"UIC2Tag",33630:"UIC3Tag",33631:"UIC4Tag",33723:"IPTC-NAA",33918:"IntergraphPacketData",33919:"IntergraphFlagRegisters",33920:"IntergraphMatrix",33921:"INGRReserved",33922:"ModelTiePoint",34016:"Site",34017:"ColorSequence",34018:"IT8Header",34019:"RasterPadding",34020:"BitsPerRunLength",34021:"BitsPerExtendedRunLength",34022:"ColorTable",34023:"ImageColorIndicator",34024:"BackgroundColorIndicator",34025:"ImageColorValue",34026:"BackgroundColorValue",34027:"PixelIntensityRange",34028:"TransparencyIndicator",34029:"ColorCharacterization",34030:"HCUsage",34031:"TrapIndicator",34032:"CMYKEquivalent",34118:"SEMInfo",34152:"AFCP_IPTC",34232:"PixelMagicJBIGOptions",34264:"ModelTransform",34306:"WB_GRGBLevels",34310:"LeafData",34377:"PhotoshopSettings",34665:"ExifOffset",34675:"ICC_Profile",34687:"TIFF_FXExtensions",34688:"MultiProfiles",34689:"SharedData",34690:"T88Options",34732:"ImageLayer",34735:"GeoTiffDirectory",34736:"GeoTiffDoubleParams",34737:"GeoTiffAsciiParams",34850:"ExposureProgram",34852:"SpectralSensitivity",34853:"GPSInfo",34855:"ISO",34856:"Opto-ElectricConvFactor",34857:"Interlace",34858:"TimeZoneOffset",34859:"SelfTimerMode",34864:"SensitivityType",34865:"StandardOutputSensitivity",34866:"RecommendedExposureIndex",34867:"ISOSpeed",34868:"ISOSpeedLatitudeyyy",34869:"ISOSpeedLatitudezzz",34908:"FaxRecvParams",34909:"FaxSubAddress",34910:"FaxRecvTime",34954:"LeafSubIFD",36864:"ExifVersion",36867:"DateTimeOriginal",36868:"CreateDate",37121:"ComponentsConfiguration",37122:"CompressedBitsPerPixel",37377:"ShutterSpeedValue",37378:"ApertureValue",37379:"BrightnessValue",37380:"ExposureCompensation",37381:"MaxApertureValue",37382:"SubjectDistance",37383:"MeteringMode",37384:"LightSource",37385:"Flash",37386:"FocalLength",37387:"FlashEnergy",37388:"SpatialFrequencyResponse",37389:"Noise",37390:"FocalPlaneXResolution",37391:"FocalPlaneYResolution",37392:"FocalPlaneResolutionUnit",37393:"ImageNumber",37394:"SecurityClassification",37395:"ImageHistory",37396:"SubjectArea",37397:"ExposureIndex",37398:"TIFF-EPStandardID",37399:"SensingMethod",37434:"CIP3DataFile",37435:"CIP3Sheet",37436:"CIP3Side",37439:"StoNits",37500:"MakerNote",37510:"UserComment",37520:"SubSecTime",37521:"SubSecTimeOriginal",37522:"SubSecTimeDigitized",37679:"MSDocumentText",37680:"MSPropertySetStorage",37681:"MSDocumentTextPosition",37724:"ImageSourceData",40091:"XPTitle",40092:"XPComment",40093:"XPAuthor",40094:"XPKeywords",40095:"XPSubject",40960:"FlashpixVersion",40961:"ColorSpace",40962:"ExifImageWidth",40963:"ExifImageHeight",40964:"RelatedSoundFile",40965:"InteropOffset",41483:"FlashEnergy",41484:"SpatialFrequencyResponse",41485:"Noise",41486:"FocalPlaneXResolution",41487:"FocalPlaneYResolution",41488:"FocalPlaneResolutionUnit",41489:"ImageNumber",41490:"SecurityClassification",41491:"ImageHistory",41492:"SubjectLocation",41493:"ExposureIndex",41494:"TIFF-EPStandardID",41495:"SensingMethod",41728:"FileSource",41729:"SceneType",41730:"CFAPattern",41985:"CustomRendered",41986:"ExposureMode",41987:"WhiteBalance",41988:"DigitalZoomRatio",41989:"FocalLengthIn35mmFormat",41990:"SceneCaptureType",41991:"GainControl",41992:"Contrast",41993:"Saturation",41994:"Sharpness",41995:"DeviceSettingDescription",41996:"SubjectDistanceRange",42016:"ImageUniqueID",42032:"OwnerName",42033:"SerialNumber",42034:"LensInfo",42035:"LensMake",42036:"LensModel",42037:"LensSerialNumber",42112:"GDALMetadata",42113:"GDALNoData",42240:"Gamma",44992:"ExpandSoftware",44993:"ExpandLens",44994:"ExpandFilm",44995:"ExpandFilterLens",44996:"ExpandScanner",44997:"ExpandFlashLamp",48129:"PixelFormat",48130:"Transformation",48131:"Uncompressed",48132:"ImageType",48256:"ImageWidth",48257:"ImageHeight",48258:"WidthResolution",48259:"HeightResolution",48320:"ImageOffset",48321:"ImageByteCount",48322:"AlphaOffset",48323:"AlphaByteCount",48324:"ImageDataDiscard",48325:"AlphaDataDiscard",50215:"OceScanjobDesc",50216:"OceApplicationSelector",50217:"OceIDNumber",50218:"OceImageLogic",50255:"Annotations",50341:"PrintIM",50560:"USPTOOriginalContentType",50706:"DNGVersion",50707:"DNGBackwardVersion",50708:"UniqueCameraModel",50709:"LocalizedCameraModel",50710:"CFAPlaneColor",50711:"CFALayout",50712:"LinearizationTable",50713:"BlackLevelRepeatDim",50714:"BlackLevel",50715:"BlackLevelDeltaH",50716:"BlackLevelDeltaV",50717:"WhiteLevel",50718:"DefaultScale",50719:"DefaultCropOrigin",50720:"DefaultCropSize",50721:"ColorMatrix1",50722:"ColorMatrix2",50723:"CameraCalibration1",50724:"CameraCalibration2",50725:"ReductionMatrix1",50726:"ReductionMatrix2",50727:"AnalogBalance",50728:"AsShotNeutral",50729:"AsShotWhiteXY",50730:"BaselineExposure",50731:"BaselineNoise",50732:"BaselineSharpness",50733:"BayerGreenSplit",50734:"LinearResponseLimit",50735:"CameraSerialNumber",50736:"DNGLensInfo",50737:"ChromaBlurRadius",50738:"AntiAliasStrength",50739:"ShadowScale",50740:"DNGPrivateData",50741:"MakerNoteSafety",50752:"RawImageSegmentation",50778:"CalibrationIlluminant1",50779:"CalibrationIlluminant2",50780:"BestQualityScale",50781:"RawDataUniqueID",50784:"AliasLayerMetadata",50827:"OriginalRawFileName",50828:"OriginalRawFileData",50829:"ActiveArea",50830:"MaskedAreas",50831:"AsShotICCProfile",50832:"AsShotPreProfileMatrix",50833:"CurrentICCProfile",50834:"CurrentPreProfileMatrix",50879:"ColorimetricReference",50898:"PanasonicTitle",50899:"PanasonicTitle2",50931:"CameraCalibrationSig",50932:"ProfileCalibrationSig",50933:"ProfileIFD",50934:"AsShotProfileName",50935:"NoiseReductionApplied",50936:"ProfileName",50937:"ProfileHueSatMapDims",50938:"ProfileHueSatMapData1",50939:"ProfileHueSatMapData2",50940:"ProfileToneCurve",50941:"ProfileEmbedPolicy",50942:"ProfileCopyright",50964:"ForwardMatrix1",50965:"ForwardMatrix2",50966:"PreviewApplicationName",50967:"PreviewApplicationVersion",50968:"PreviewSettingsName",50969:"PreviewSettingsDigest",50970:"PreviewColorSpace",50971:"PreviewDateTime",50972:"RawImageDigest",50973:"OriginalRawFileDigest",50974:"SubTileBlockSize",50975:"RowInterleaveFactor",50981:"ProfileLookTableDims",50982:"ProfileLookTableData",51008:"OpcodeList1",51009:"OpcodeList2",51022:"OpcodeList3",51041:"NoiseProfile",51043:"TimeCodes",51044:"FrameRate",51058:"TStop",51081:"ReelName",51089:"OriginalDefaultFinalSize",51090:"OriginalBestQualitySize",51091:"OriginalDefaultCropSize",51105:"CameraLabel",51107:"ProfileHueSatMapEncoding",51108:"ProfileLookTableEncoding",51109:"BaselineExposureOffset",51110:"DefaultBlackRender",51111:"NewRawImageDigest",51112:"RawToPreviewGain",51125:"DefaultUserCrop",59932:"Padding",59933:"OffsetSchema",65000:"OwnerName",65001:"SerialNumber",65002:"Lens",65024:"KDC_IFD",65100:"RawFile",65101:"Converter",65102:"WhiteBalance",65105:"Exposure",65106:"Shadows",65107:"Brightness",65108:"Contrast",65109:"Saturation",65110:"Sharpness",65111:"Smoothness",65112:"MoireFilter"},gps:{0:"GPSVersionID",1:"GPSLatitudeRef",2:"GPSLatitude",3:"GPSLongitudeRef",4:"GPSLongitude",5:"GPSAltitudeRef",6:"GPSAltitude",7:"GPSTimeStamp",8:"GPSSatellites",9:"GPSStatus",10:"GPSMeasureMode",11:"GPSDOP",12:"GPSSpeedRef",13:"GPSSpeed",14:"GPSTrackRef",15:"GPSTrack",16:"GPSImgDirectionRef",17:"GPSImgDirection",18:"GPSMapDatum",19:"GPSDestLatitudeRef",20:"GPSDestLatitude",21:"GPSDestLongitudeRef",22:"GPSDestLongitude",23:"GPSDestBearingRef",24:"GPSDestBearing",25:"GPSDestDistanceRef",26:"GPSDestDistance",27:"GPSProcessingMethod",28:"GPSAreaInformation",29:"GPSDateStamp",30:"GPSDifferential",31:"GPSHPositioningError"}}});var FFA=R((mFY,WFA)=>{var sU=sWA(),CFA=Lf(),Mf=BFA();function XFA(A,Q,B,Y,J,C,X){this.startMarker=A,this.tags=Q,this.imageSize=B,this.thumbnailOffset=Y,this.thumbnailLength=J,this.thumbnailType=C,this.app1Offset=X}XFA.prototype={hasThumbnail:function(A){if(!this.thumbnailOffset||!this.thumbnailLength)return!1;if(typeof A!=="string")return!0;if(A.toLowerCase().trim()==="image/jpeg")return this.thumbnailType===6;if(A.toLowerCase().trim()==="image/tiff")return this.thumbnailType===1;return!1},getThumbnailOffset:function(){return this.app1Offset+6+this.thumbnailOffset},getThumbnailLength:function(){return this.thumbnailLength},getThumbnailBuffer:function(){return this._getThumbnailStream().nextBuffer(this.thumbnailLength)},_getThumbnailStream:function(){return this.startMarker.openWithOffset(this.getThumbnailOffset())},getImageSize:function(){return this.imageSize},getThumbnailSize:function(){var A=this._getThumbnailStream(),Q;return sU.parseSections(A,function(B,Y){if(sU.getSectionName(B).name==="SOF")Q=sU.getSizeFromSOFSection(Y)}),Q}};function GFA(A){this.stream=A,this.flags={readBinaryTags:!1,resolveTagNames:!0,simplifyValues:!0,imageSize:!0,hidePointers:!0,returnTags:!0}}GFA.prototype={enableBinaryFields:function(A){return this.flags.readBinaryTags=!!A,this},enablePointers:function(A){return this.flags.hidePointers=!A,this},enableTagNames:function(A){return this.flags.resolveTagNames=!!A,this},enableImageSize:function(A){return this.flags.imageSize=!!A,this},enableReturnTags:function(A){return this.flags.returnTags=!!A,this},enableSimpleValues:function(A){return this.flags.simplifyValues=!!A,this},parse:function(){var A=this.stream.mark(),Q=A.openWithOffset(0),B=this.flags,Y,J,C,X,G,W,F,Z,U;if(B.resolveTagNames)F=JFA();if(B.resolveTagNames)Y={},Z=function($){return Y[$.name]},U=function($,E){Y[$.name]=E};else Y=[],Z=function($){var E;for(E=0;E{function cR(A,Q,B,Y,J,C){this.global=J,Q=Q||0,B=B||A.byteLength-Q,this.arrayBuffer=A.slice(Q,Q+B),this.view=new J.DataView(this.arrayBuffer,0,this.arrayBuffer.byteLength),this.setBigEndian(Y),this.offset=0,this.parentOffset=(C||0)+Q}cR.prototype={setBigEndian:function(A){this.littleEndian=!A},nextUInt8:function(){var A=this.view.getUint8(this.offset);return this.offset+=1,A},nextInt8:function(){var A=this.view.getInt8(this.offset);return this.offset+=1,A},nextUInt16:function(){var A=this.view.getUint16(this.offset,this.littleEndian);return this.offset+=2,A},nextUInt32:function(){var A=this.view.getUint32(this.offset,this.littleEndian);return this.offset+=4,A},nextInt16:function(){var A=this.view.getInt16(this.offset,this.littleEndian);return this.offset+=2,A},nextInt32:function(){var A=this.view.getInt32(this.offset,this.littleEndian);return this.offset+=4,A},nextFloat:function(){var A=this.view.getFloat32(this.offset,this.littleEndian);return this.offset+=4,A},nextDouble:function(){var A=this.view.getFloat64(this.offset,this.littleEndian);return this.offset+=8,A},nextBuffer:function(A){var Q=this.arrayBuffer.slice(this.offset,this.offset+A);return this.offset+=A,Q},remainingLength:function(){return this.arrayBuffer.byteLength-this.offset},nextString:function(A){var Q=this.arrayBuffer.slice(this.offset,this.offset+A);return Q=String.fromCharCode.apply(null,new this.global.Uint8Array(Q)),this.offset+=A,Q},mark:function(){var A=this;return{openWithOffset:function(Q){return Q=(Q||0)+this.offset,new cR(A.arrayBuffer,Q,A.arrayBuffer.byteLength-Q,!A.littleEndian,A.global,A.parentOffset)},offset:this.offset,getParentOffset:function(){return A.parentOffset}}},offsetFrom:function(A){return this.parentOffset+this.offset-(A.offset+A.getParentOffset())},skip:function(A){this.offset+=A},branch:function(A,Q){return Q=typeof Q==="number"?Q:this.arrayBuffer.byteLength-(this.offset+A),new cR(this.arrayBuffer,this.offset+A,Q,!this.littleEndian,this.global,this.parentOffset)}};ZFA.exports=cR});var EFA=R((dFY,UFA)=>{function lR(A,Q,B,Y){this.buffer=A,this.offset=Q||0,B=typeof B==="number"?B:A.length,this.endPosition=this.offset+B,this.setBigEndian(Y)}lR.prototype={setBigEndian:function(A){this.bigEndian=!!A},nextUInt8:function(){var A=this.buffer.readUInt8(this.offset);return this.offset+=1,A},nextInt8:function(){var A=this.buffer.readInt8(this.offset);return this.offset+=1,A},nextUInt16:function(){var A=this.bigEndian?this.buffer.readUInt16BE(this.offset):this.buffer.readUInt16LE(this.offset);return this.offset+=2,A},nextUInt32:function(){var A=this.bigEndian?this.buffer.readUInt32BE(this.offset):this.buffer.readUInt32LE(this.offset);return this.offset+=4,A},nextInt16:function(){var A=this.bigEndian?this.buffer.readInt16BE(this.offset):this.buffer.readInt16LE(this.offset);return this.offset+=2,A},nextInt32:function(){var A=this.bigEndian?this.buffer.readInt32BE(this.offset):this.buffer.readInt32LE(this.offset);return this.offset+=4,A},nextFloat:function(){var A=this.bigEndian?this.buffer.readFloatBE(this.offset):this.buffer.readFloatLE(this.offset);return this.offset+=4,A},nextDouble:function(){var A=this.bigEndian?this.buffer.readDoubleBE(this.offset):this.buffer.readDoubleLE(this.offset);return this.offset+=8,A},nextBuffer:function(A){var Q=this.buffer.slice(this.offset,this.offset+A);return this.offset+=A,Q},remainingLength:function(){return this.endPosition-this.offset},nextString:function(A){var Q=this.buffer.toString("utf8",this.offset,this.offset+A);return this.offset+=A,Q},mark:function(){var A=this;return{openWithOffset:function(Q){return Q=(Q||0)+this.offset,new lR(A.buffer,Q,A.endPosition-Q,A.bigEndian)},offset:this.offset}},offsetFrom:function(A){return this.offset-A.offset},skip:function(A){this.offset+=A},branch:function(A,Q){return Q=typeof Q==="number"?Q:this.endPosition-(this.offset+A),new lR(this.buffer,this.offset+A,Q,this.bigEndian)}};UFA.exports=lR});var IFA=R((cFY,VFA)=>{var KFA=FFA();function UYB(){return(0,eval)("this")}VFA.exports={create:function(A,Q){if(Q=Q||UYB(),A instanceof Q.ArrayBuffer){var B=$FA();return new KFA(new B(A,0,A.byteLength,!0,Q))}else{var Y=EFA();return new KFA(new Y(A,0,A.length,!0))}}}});var kFA=R((RZY,SFA)=>{function Of(A,Q){if(!A||!Q||!A.length||!Q.length)throw Error("Bad alphabet");this.srcAlphabet=A,this.dstAlphabet=Q}Of.prototype.convert=function(A){var Q,B,Y,J={},C=this.srcAlphabet.length,X=this.dstAlphabet.length,G=A.length,W=typeof A==="string"?"":[];if(!this.isValid(A))throw Error('Number "'+A+'" contains of non-alphabetic digits ('+this.srcAlphabet+")");if(this.srcAlphabet===this.dstAlphabet)return A;for(Q=0;Q=X)J[Y++]=parseInt(B/X,10),B=B%X;else if(Y>0)J[Y++]=0;G=Y,W=this.dstAlphabet.slice(B,B+1).concat(W)}while(Y!==0);return W};Of.prototype.isValid=function(A){var Q=0;for(;Q{var yYB=kFA();function eH(A,Q){var B=new yYB(A,Q);return function(Y){return B.convert(Y)}}eH.BIN="01";eH.OCT="01234567";eH.DEC="0123456789";eH.HEX="0123456789abcdef";_FA.exports=eH});var VD=R((bZA)=>{Object.defineProperty(bZA,"__esModule",{value:!0});bZA.regexpCode=bZA.getEsmExportName=bZA.getProperty=bZA.safeStringify=bZA.stringify=bZA.strConcat=bZA.addCodeArg=bZA.str=bZA._=bZA.nil=bZA._Code=bZA.Name=bZA.IDENTIFIER=bZA._CodeOrName=void 0;class tR{}bZA._CodeOrName=tR;bZA.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;class FE extends tR{constructor(A){super();if(!bZA.IDENTIFIER.test(A))throw Error("CodeGen: name must be a valid identifier");this.str=A}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}}bZA.Name=FE;class dC extends tR{constructor(A){super();this._items=typeof A==="string"?[A]:A}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let A=this._items[0];return A===""||A==='""'}get str(){var A;return(A=this._str)!==null&&A!==void 0?A:this._str=this._items.reduce((Q,B)=>`${Q}${B}`,"")}get names(){var A;return(A=this._names)!==null&&A!==void 0?A:this._names=this._items.reduce((Q,B)=>{if(B instanceof FE)Q[B.str]=(Q[B.str]||0)+1;return Q},{})}}bZA._Code=dC;bZA.nil=new dC("");function xZA(A,...Q){let B=[A[0]],Y=0;while(Y{Object.defineProperty(cZA,"__esModule",{value:!0});cZA.ValueScope=cZA.ValueScopeName=cZA.Scope=cZA.varKinds=cZA.UsedValueState=void 0;var x9=VD();class uZA extends Error{constructor(A){super(`CodeGen: "code" for ${A} not defined`);this.value=A.value}}var Aw;(function(A){A[A.Started=0]="Started",A[A.Completed=1]="Completed"})(Aw||(cZA.UsedValueState=Aw={}));cZA.varKinds={const:new x9.Name("const"),let:new x9.Name("let"),var:new x9.Name("var")};class tf{constructor({prefixes:A,parent:Q}={}){this._names={},this._prefixes=A,this._parent=Q}toName(A){return A instanceof x9.Name?A:this.name(A)}name(A){return new x9.Name(this._newName(A))}_newName(A){let Q=this._names[A]||this._nameGroup(A);return`${A}${Q.index++}`}_nameGroup(A){var Q,B;if(((B=(Q=this._parent)===null||Q===void 0?void 0:Q._prefixes)===null||B===void 0?void 0:B.has(A))||this._prefixes&&!this._prefixes.has(A))throw Error(`CodeGen: prefix "${A}" is not allowed in this scope`);return this._names[A]={prefix:A,index:0}}}cZA.Scope=tf;class ef extends x9.Name{constructor(A,Q){super(Q);this.prefix=A}setValue(A,{property:Q,itemIndex:B}){this.value=A,this.scopePath=x9._`.${new x9.Name(Q)}[${B}]`}}cZA.ValueScopeName=ef;var eJB=x9._`\n`;class dZA extends tf{constructor(A){super(A);this._values={},this._scope=A.scope,this.opts={...A,_n:A.lines?eJB:x9.nil}}get(){return this._scope}name(A){return new ef(A,this._newName(A))}value(A,Q){var B;if(Q.ref===void 0)throw Error("CodeGen: ref must be passed in value");let Y=this.toName(A),{prefix:J}=Y,C=(B=Q.key)!==null&&B!==void 0?B:Q.ref,X=this._values[J];if(X){let F=X.get(C);if(F)return F}else X=this._values[J]=new Map;X.set(C,Y);let G=this._scope[J]||(this._scope[J]=[]),W=G.length;return G[W]=Q.ref,Y.setValue(Q,{property:J,itemIndex:W}),Y}getValue(A,Q){let B=this._values[A];if(!B)return;return B.get(Q)}scopeRefs(A,Q=this._values){return this._reduceValues(Q,(B)=>{if(B.scopePath===void 0)throw Error(`CodeGen: name "${B}" has no value`);return x9._`${A}${B.scopePath}`})}scopeCode(A=this._values,Q,B){return this._reduceValues(A,(Y)=>{if(Y.value===void 0)throw Error(`CodeGen: name "${Y}" has no value`);return Y.value.code},Q,B)}_reduceValues(A,Q,B={},Y){let J=x9.nil;for(let C in A){let X=A[C];if(!X)continue;let G=B[C]=B[C]||new Map;X.forEach((W)=>{if(G.has(W))return;G.set(W,Aw.Started);let F=Q(W);if(F){let Z=this.opts.es5?cZA.varKinds.var:cZA.varKinds.const;J=x9._`${J}${Z} ${W} = ${F};${this.opts._n}`}else if(F=Y===null||Y===void 0?void 0:Y(W))J=x9._`${J}${F}${this.opts._n}`;else throw new uZA(W);G.set(W,Aw.Completed)})}return J}}cZA.ValueScope=dZA});var GB=R((f9)=>{Object.defineProperty(f9,"__esModule",{value:!0});f9.or=f9.and=f9.not=f9.CodeGen=f9.operators=f9.varKinds=f9.ValueScopeName=f9.ValueScope=f9.Scope=f9.Name=f9.regexpCode=f9.stringify=f9.getProperty=f9.nil=f9.strConcat=f9.str=f9._=void 0;var HB=VD(),cC=Ab(),x7=VD();Object.defineProperty(f9,"_",{enumerable:!0,get:function(){return x7._}});Object.defineProperty(f9,"str",{enumerable:!0,get:function(){return x7.str}});Object.defineProperty(f9,"strConcat",{enumerable:!0,get:function(){return x7.strConcat}});Object.defineProperty(f9,"nil",{enumerable:!0,get:function(){return x7.nil}});Object.defineProperty(f9,"getProperty",{enumerable:!0,get:function(){return x7.getProperty}});Object.defineProperty(f9,"stringify",{enumerable:!0,get:function(){return x7.stringify}});Object.defineProperty(f9,"regexpCode",{enumerable:!0,get:function(){return x7.regexpCode}});Object.defineProperty(f9,"Name",{enumerable:!0,get:function(){return x7.Name}});var Xw=Ab();Object.defineProperty(f9,"Scope",{enumerable:!0,get:function(){return Xw.Scope}});Object.defineProperty(f9,"ValueScope",{enumerable:!0,get:function(){return Xw.ValueScope}});Object.defineProperty(f9,"ValueScopeName",{enumerable:!0,get:function(){return Xw.ValueScopeName}});Object.defineProperty(f9,"varKinds",{enumerable:!0,get:function(){return Xw.varKinds}});f9.operators={GT:new HB._Code(">"),GTE:new HB._Code(">="),LT:new HB._Code("<"),LTE:new HB._Code("<="),EQ:new HB._Code("==="),NEQ:new HB._Code("!=="),NOT:new HB._Code("!"),OR:new HB._Code("||"),AND:new HB._Code("&&"),ADD:new HB._Code("+")};class f7{optimizeNodes(){return this}optimizeNames(A,Q){return this}}class pZA extends f7{constructor(A,Q,B){super();this.varKind=A,this.name=Q,this.rhs=B}render({es5:A,_n:Q}){let B=A?cC.varKinds.var:this.varKind,Y=this.rhs===void 0?"":` = ${this.rhs}`;return`${B} ${this.name}${Y};`+Q}optimizeNames(A,Q){if(!A[this.name.str])return;if(this.rhs)this.rhs=$E(this.rhs,A,Q);return this}get names(){return this.rhs instanceof HB._CodeOrName?this.rhs.names:{}}}class Yb extends f7{constructor(A,Q,B){super();this.lhs=A,this.rhs=Q,this.sideEffects=B}render({_n:A}){return`${this.lhs} = ${this.rhs};`+A}optimizeNames(A,Q){if(this.lhs instanceof HB.Name&&!A[this.lhs.str]&&!this.sideEffects)return;return this.rhs=$E(this.rhs,A,Q),this}get names(){let A=this.lhs instanceof HB.Name?{}:{...this.lhs.names};return Cw(A,this.rhs)}}class iZA extends Yb{constructor(A,Q,B,Y){super(A,B,Y);this.op=Q}render({_n:A}){return`${this.lhs} ${this.op}= ${this.rhs};`+A}}class nZA extends f7{constructor(A){super();this.label=A,this.names={}}render({_n:A}){return`${this.label}:`+A}}class sZA extends f7{constructor(A){super();this.label=A,this.names={}}render({_n:A}){return`break${this.label?` ${this.label}`:""};`+A}}class rZA extends f7{constructor(A){super();this.error=A}render({_n:A}){return`throw ${this.error};`+A}get names(){return this.error.names}}class aZA extends f7{constructor(A){super();this.code=A}render({_n:A}){return`${this.code};`+A}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(A,Q){return this.code=$E(this.code,A,Q),this}get names(){return this.code instanceof HB._CodeOrName?this.code.names:{}}}class Gw extends f7{constructor(A=[]){super();this.nodes=A}render(A){return this.nodes.reduce((Q,B)=>Q+B.render(A),"")}optimizeNodes(){let{nodes:A}=this,Q=A.length;while(Q--){let B=A[Q].optimizeNodes();if(Array.isArray(B))A.splice(Q,1,...B);else if(B)A[Q]=B;else A.splice(Q,1)}return A.length>0?this:void 0}optimizeNames(A,Q){let{nodes:B}=this,Y=B.length;while(Y--){let J=B[Y];if(J.optimizeNames(A,Q))continue;Y9B(A,J.names),B.splice(Y,1)}return B.length>0?this:void 0}get names(){return this.nodes.reduce((A,Q)=>EZ(A,Q.names),{})}}class b7 extends Gw{render(A){return"{"+A._n+super.render(A)+"}"+A._n}}class oZA extends Gw{}class ID extends b7{}ID.kind="else";class m6 extends b7{constructor(A,Q){super(Q);this.condition=A}render(A){let Q=`if(${this.condition})`+super.render(A);if(this.else)Q+="else "+this.else.render(A);return Q}optimizeNodes(){super.optimizeNodes();let A=this.condition;if(A===!0)return this.nodes;let Q=this.else;if(Q){let B=Q.optimizeNodes();Q=this.else=Array.isArray(B)?new ID(B):B}if(Q){if(A===!1)return Q instanceof m6?Q:Q.nodes;if(this.nodes.length)return this;return new m6(B$A(A),Q instanceof m6?[Q]:Q.nodes)}if(A===!1||!this.nodes.length)return;return this}optimizeNames(A,Q){var B;if(this.else=(B=this.else)===null||B===void 0?void 0:B.optimizeNames(A,Q),!(super.optimizeNames(A,Q)||this.else))return;return this.condition=$E(this.condition,A,Q),this}get names(){let A=super.names;if(Cw(A,this.condition),this.else)EZ(A,this.else.names);return A}}m6.kind="if";class ZE extends b7{}ZE.kind="for";class tZA extends ZE{constructor(A){super();this.iteration=A}render(A){return`for(${this.iteration})`+super.render(A)}optimizeNames(A,Q){if(!super.optimizeNames(A,Q))return;return this.iteration=$E(this.iteration,A,Q),this}get names(){return EZ(super.names,this.iteration.names)}}class eZA extends ZE{constructor(A,Q,B,Y){super();this.varKind=A,this.name=Q,this.from=B,this.to=Y}render(A){let Q=A.es5?cC.varKinds.var:this.varKind,{name:B,from:Y,to:J}=this;return`for(${Q} ${B}=${Y}; ${B}<${J}; ${B}++)`+super.render(A)}get names(){let A=Cw(super.names,this.from);return Cw(A,this.to)}}class Qb extends ZE{constructor(A,Q,B,Y){super();this.loop=A,this.varKind=Q,this.name=B,this.iterable=Y}render(A){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(A)}optimizeNames(A,Q){if(!super.optimizeNames(A,Q))return;return this.iterable=$E(this.iterable,A,Q),this}get names(){return EZ(super.names,this.iterable.names)}}class Qw extends b7{constructor(A,Q,B){super();this.name=A,this.args=Q,this.async=B}render(A){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(A)}}Qw.kind="func";class Bw extends Gw{render(A){return"return "+super.render(A)}}Bw.kind="return";class A$A extends b7{render(A){let Q="try"+super.render(A);if(this.catch)Q+=this.catch.render(A);if(this.finally)Q+=this.finally.render(A);return Q}optimizeNodes(){var A,Q;return super.optimizeNodes(),(A=this.catch)===null||A===void 0||A.optimizeNodes(),(Q=this.finally)===null||Q===void 0||Q.optimizeNodes(),this}optimizeNames(A,Q){var B,Y;return super.optimizeNames(A,Q),(B=this.catch)===null||B===void 0||B.optimizeNames(A,Q),(Y=this.finally)===null||Y===void 0||Y.optimizeNames(A,Q),this}get names(){let A=super.names;if(this.catch)EZ(A,this.catch.names);if(this.finally)EZ(A,this.finally.names);return A}}class Yw extends b7{constructor(A){super();this.error=A}render(A){return`catch(${this.error})`+super.render(A)}}Yw.kind="catch";class Jw extends b7{render(A){return"finally"+super.render(A)}}Jw.kind="finally";class Q$A{constructor(A,Q={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...Q,_n:Q.lines?` +`:""},this._extScope=A,this._scope=new cC.Scope({parent:A}),this._nodes=[new oZA]}toString(){return this._root.render(this.opts)}name(A){return this._scope.name(A)}scopeName(A){return this._extScope.name(A)}scopeValue(A,Q){let B=this._extScope.value(A,Q);return(this._values[B.prefix]||(this._values[B.prefix]=new Set)).add(B),B}getScopeValue(A,Q){return this._extScope.getValue(A,Q)}scopeRefs(A){return this._extScope.scopeRefs(A,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(A,Q,B,Y){let J=this._scope.toName(Q);if(B!==void 0&&Y)this._constants[J.str]=B;return this._leafNode(new pZA(A,J,B)),J}const(A,Q,B){return this._def(cC.varKinds.const,A,Q,B)}let(A,Q,B){return this._def(cC.varKinds.let,A,Q,B)}var(A,Q,B){return this._def(cC.varKinds.var,A,Q,B)}assign(A,Q,B){return this._leafNode(new Yb(A,Q,B))}add(A,Q){return this._leafNode(new iZA(A,f9.operators.ADD,Q))}code(A){if(typeof A=="function")A();else if(A!==HB.nil)this._leafNode(new aZA(A));return this}object(...A){let Q=["{"];for(let[B,Y]of A){if(Q.length>1)Q.push(",");if(Q.push(B),B!==Y||this.opts.es5)Q.push(":"),(0,HB.addCodeArg)(Q,Y)}return Q.push("}"),new HB._Code(Q)}if(A,Q,B){if(this._blockNode(new m6(A)),Q&&B)this.code(Q).else().code(B).endIf();else if(Q)this.code(Q).endIf();else if(B)throw Error('CodeGen: "else" body without "then" body');return this}elseIf(A){return this._elseNode(new m6(A))}else(){return this._elseNode(new ID)}endIf(){return this._endBlockNode(m6,ID)}_for(A,Q){if(this._blockNode(A),Q)this.code(Q).endFor();return this}for(A,Q){return this._for(new tZA(A),Q)}forRange(A,Q,B,Y,J=this.opts.es5?cC.varKinds.var:cC.varKinds.let){let C=this._scope.toName(A);return this._for(new eZA(J,C,Q,B),()=>Y(C))}forOf(A,Q,B,Y=cC.varKinds.const){let J=this._scope.toName(A);if(this.opts.es5){let C=Q instanceof HB.Name?Q:this.var("_arr",Q);return this.forRange("_i",0,HB._`${C}.length`,(X)=>{this.var(J,HB._`${C}[${X}]`),B(J)})}return this._for(new Qb("of",Y,J,Q),()=>B(J))}forIn(A,Q,B,Y=this.opts.es5?cC.varKinds.var:cC.varKinds.const){if(this.opts.ownProperties)return this.forOf(A,HB._`Object.keys(${Q})`,B);let J=this._scope.toName(A);return this._for(new Qb("in",Y,J,Q),()=>B(J))}endFor(){return this._endBlockNode(ZE)}label(A){return this._leafNode(new nZA(A))}break(A){return this._leafNode(new sZA(A))}return(A){let Q=new Bw;if(this._blockNode(Q),this.code(A),Q.nodes.length!==1)throw Error('CodeGen: "return" should have one node');return this._endBlockNode(Bw)}try(A,Q,B){if(!Q&&!B)throw Error('CodeGen: "try" without "catch" and "finally"');let Y=new A$A;if(this._blockNode(Y),this.code(A),Q){let J=this.name("e");this._currNode=Y.catch=new Yw(J),Q(J)}if(B)this._currNode=Y.finally=new Jw,this.code(B);return this._endBlockNode(Yw,Jw)}throw(A){return this._leafNode(new rZA(A))}block(A,Q){if(this._blockStarts.push(this._nodes.length),A)this.code(A).endBlock(Q);return this}endBlock(A){let Q=this._blockStarts.pop();if(Q===void 0)throw Error("CodeGen: not in self-balancing block");let B=this._nodes.length-Q;if(B<0||A!==void 0&&B!==A)throw Error(`CodeGen: wrong number of nodes: ${B} vs ${A} expected`);return this._nodes.length=Q,this}func(A,Q=HB.nil,B,Y){if(this._blockNode(new Qw(A,Q,B)),Y)this.code(Y).endFunc();return this}endFunc(){return this._endBlockNode(Qw)}optimize(A=1){while(A-- >0)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(A){return this._currNode.nodes.push(A),this}_blockNode(A){this._currNode.nodes.push(A),this._nodes.push(A)}_endBlockNode(A,Q){let B=this._currNode;if(B instanceof A||Q&&B instanceof Q)return this._nodes.pop(),this;throw Error(`CodeGen: not in block "${Q?`${A.kind}/${Q.kind}`:A.kind}"`)}_elseNode(A){let Q=this._currNode;if(!(Q instanceof m6))throw Error('CodeGen: "else" without "if"');return this._currNode=Q.else=A,this}get _root(){return this._nodes[0]}get _currNode(){let A=this._nodes;return A[A.length-1]}set _currNode(A){let Q=this._nodes;Q[Q.length-1]=A}}f9.CodeGen=Q$A;function EZ(A,Q){for(let B in Q)A[B]=(A[B]||0)+(Q[B]||0);return A}function Cw(A,Q){return Q instanceof HB._CodeOrName?EZ(A,Q.names):A}function $E(A,Q,B){if(A instanceof HB.Name)return Y(A);if(!J(A))return A;return new HB._Code(A._items.reduce((C,X)=>{if(X instanceof HB.Name)X=Y(X);if(X instanceof HB._Code)C.push(...X._items);else C.push(X);return C},[]));function Y(C){let X=B[C.str];if(X===void 0||Q[C.str]!==1)return C;return delete Q[C.str],X}function J(C){return C instanceof HB._Code&&C._items.some((X)=>X instanceof HB.Name&&Q[X.str]===1&&B[X.str]!==void 0)}}function Y9B(A,Q){for(let B in Q)A[B]=(A[B]||0)-(Q[B]||0)}function B$A(A){return typeof A=="boolean"||typeof A=="number"||A===null?!A:HB._`!${Bb(A)}`}f9.not=B$A;var J9B=Y$A(f9.operators.AND);function C9B(...A){return A.reduce(J9B)}f9.and=C9B;var X9B=Y$A(f9.operators.OR);function G9B(...A){return A.reduce(X9B)}f9.or=G9B;function Y$A(A){return(Q,B)=>Q===HB.nil?B:B===HB.nil?Q:HB._`${Bb(Q)} ${A} ${Bb(B)}`}function Bb(A){return A instanceof HB.Name?A:HB._`(${A})`}});var wB=R((U$A)=>{Object.defineProperty(U$A,"__esModule",{value:!0});U$A.checkStrictMode=U$A.getErrorPath=U$A.Type=U$A.useFunc=U$A.setEvaluated=U$A.evaluatedPropsToName=U$A.mergeEvaluated=U$A.eachItem=U$A.unescapeJsonPointer=U$A.escapeJsonPointer=U$A.escapeFragment=U$A.unescapeFragment=U$A.schemaRefOrVal=U$A.schemaHasRulesButRef=U$A.schemaHasRules=U$A.checkUnknownRules=U$A.alwaysValidSchema=U$A.toHash=void 0;var eB=GB(),$9B=VD();function U9B(A){let Q={};for(let B of A)Q[B]=!0;return Q}U$A.toHash=U9B;function E9B(A,Q){if(typeof Q=="boolean")return Q;if(Object.keys(Q).length===0)return!0;return G$A(A,Q),!W$A(Q,A.self.RULES.all)}U$A.alwaysValidSchema=E9B;function G$A(A,Q=A.schema){let{opts:B,self:Y}=A;if(!B.strictSchema)return;if(typeof Q==="boolean")return;let J=Y.RULES.keywords;for(let C in Q)if(!J[C])$$A(A,`unknown keyword: "${C}"`)}U$A.checkUnknownRules=G$A;function W$A(A,Q){if(typeof A=="boolean")return!A;for(let B in A)if(Q[B])return!0;return!1}U$A.schemaHasRules=W$A;function K9B(A,Q){if(typeof A=="boolean")return!A;for(let B in A)if(B!=="$ref"&&Q.all[B])return!0;return!1}U$A.schemaHasRulesButRef=K9B;function V9B({topSchemaRef:A,schemaPath:Q},B,Y,J){if(!J){if(typeof B=="number"||typeof B=="boolean")return B;if(typeof B=="string")return eB._`${B}`}return eB._`${A}${Q}${(0,eB.getProperty)(Y)}`}U$A.schemaRefOrVal=V9B;function I9B(A){return F$A(decodeURIComponent(A))}U$A.unescapeFragment=I9B;function H9B(A){return encodeURIComponent(Cb(A))}U$A.escapeFragment=H9B;function Cb(A){if(typeof A=="number")return`${A}`;return A.replace(/~/g,"~0").replace(/\//g,"~1")}U$A.escapeJsonPointer=Cb;function F$A(A){return A.replace(/~1/g,"/").replace(/~0/g,"~")}U$A.unescapeJsonPointer=F$A;function D9B(A,Q){if(Array.isArray(A))for(let B of A)Q(B);else Q(A)}U$A.eachItem=D9B;function C$A({mergeNames:A,mergeToName:Q,mergeValues:B,resultToName:Y}){return(J,C,X,G)=>{let W=X===void 0?C:X instanceof eB.Name?(C instanceof eB.Name?A(J,C,X):Q(J,C,X),X):C instanceof eB.Name?(Q(J,X,C),C):B(C,X);return G===eB.Name&&!(W instanceof eB.Name)?Y(J,W):W}}U$A.mergeEvaluated={props:C$A({mergeNames:(A,Q,B)=>A.if(eB._`${B} !== true && ${Q} !== undefined`,()=>{A.if(eB._`${Q} === true`,()=>A.assign(B,!0),()=>A.assign(B,eB._`${B} || {}`).code(eB._`Object.assign(${B}, ${Q})`))}),mergeToName:(A,Q,B)=>A.if(eB._`${B} !== true`,()=>{if(Q===!0)A.assign(B,!0);else A.assign(B,eB._`${B} || {}`),Xb(A,B,Q)}),mergeValues:(A,Q)=>A===!0?!0:{...A,...Q},resultToName:Z$A}),items:C$A({mergeNames:(A,Q,B)=>A.if(eB._`${B} !== true && ${Q} !== undefined`,()=>A.assign(B,eB._`${Q} === true ? true : ${B} > ${Q} ? ${B} : ${Q}`)),mergeToName:(A,Q,B)=>A.if(eB._`${B} !== true`,()=>A.assign(B,Q===!0?!0:eB._`${B} > ${Q} ? ${B} : ${Q}`)),mergeValues:(A,Q)=>A===!0?!0:Math.max(A,Q),resultToName:(A,Q)=>A.var("items",Q)})};function Z$A(A,Q){if(Q===!0)return A.var("props",!0);let B=A.var("props",eB._`{}`);if(Q!==void 0)Xb(A,B,Q);return B}U$A.evaluatedPropsToName=Z$A;function Xb(A,Q,B){Object.keys(B).forEach((Y)=>A.assign(eB._`${Q}${(0,eB.getProperty)(Y)}`,!0))}U$A.setEvaluated=Xb;var X$A={};function N9B(A,Q){return A.scopeValue("func",{ref:Q,code:X$A[Q.code]||(X$A[Q.code]=new $9B._Code(Q.code))})}U$A.useFunc=N9B;var Jb;(function(A){A[A.Num=0]="Num",A[A.Str=1]="Str"})(Jb||(U$A.Type=Jb={}));function L9B(A,Q,B){if(A instanceof eB.Name){let Y=Q===Jb.Num;return B?Y?eB._`"[" + ${A} + "]"`:eB._`"['" + ${A} + "']"`:Y?eB._`"/" + ${A}`:eB._`"/" + ${A}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return B?(0,eB.getProperty)(A).toString():"/"+Cb(A)}U$A.getErrorPath=L9B;function $$A(A,Q,B=A.opts.strictSchema){if(!B)return;if(Q=`strict mode: ${Q}`,B===!0)throw Error(Q);A.self.logger.warn(Q)}U$A.checkStrictMode=$$A});var u6=R((K$A)=>{Object.defineProperty(K$A,"__esModule",{value:!0});var OJ=GB(),f9B={data:new OJ.Name("data"),valCxt:new OJ.Name("valCxt"),instancePath:new OJ.Name("instancePath"),parentData:new OJ.Name("parentData"),parentDataProperty:new OJ.Name("parentDataProperty"),rootData:new OJ.Name("rootData"),dynamicAnchors:new OJ.Name("dynamicAnchors"),vErrors:new OJ.Name("vErrors"),errors:new OJ.Name("errors"),this:new OJ.Name("this"),self:new OJ.Name("self"),scope:new OJ.Name("scope"),json:new OJ.Name("json"),jsonPos:new OJ.Name("jsonPos"),jsonLen:new OJ.Name("jsonLen"),jsonPart:new OJ.Name("jsonPart")};K$A.default=f9B});var HD=R((D$A)=>{Object.defineProperty(D$A,"__esModule",{value:!0});D$A.extendErrors=D$A.resetErrorsCount=D$A.reportExtraError=D$A.reportError=D$A.keyword$DataError=D$A.keywordError=void 0;var qB=GB(),Fw=wB(),W9=u6();D$A.keywordError={message:({keyword:A})=>qB.str`must pass "${A}" keyword validation`};D$A.keyword$DataError={message:({keyword:A,schemaType:Q})=>Q?qB.str`"${A}" keyword must be ${Q} ($data)`:qB.str`"${A}" keyword is invalid ($data)`};function m9B(A,Q=D$A.keywordError,B,Y){let{it:J}=A,{gen:C,compositeRule:X,allErrors:G}=J,W=H$A(A,Q,B);if(Y!==null&&Y!==void 0?Y:X||G)V$A(C,W);else I$A(J,qB._`[${W}]`)}D$A.reportError=m9B;function u9B(A,Q=D$A.keywordError,B){let{it:Y}=A,{gen:J,compositeRule:C,allErrors:X}=Y,G=H$A(A,Q,B);if(V$A(J,G),!(C||X))I$A(Y,W9.default.vErrors)}D$A.reportExtraError=u9B;function d9B(A,Q){A.assign(W9.default.errors,Q),A.if(qB._`${W9.default.vErrors} !== null`,()=>A.if(Q,()=>A.assign(qB._`${W9.default.vErrors}.length`,Q),()=>A.assign(W9.default.vErrors,null)))}D$A.resetErrorsCount=d9B;function c9B({gen:A,keyword:Q,schemaValue:B,data:Y,errsCount:J,it:C}){if(J===void 0)throw Error("ajv implementation error");let X=A.name("err");A.forRange("i",J,W9.default.errors,(G)=>{if(A.const(X,qB._`${W9.default.vErrors}[${G}]`),A.if(qB._`${X}.instancePath === undefined`,()=>A.assign(qB._`${X}.instancePath`,(0,qB.strConcat)(W9.default.instancePath,C.errorPath))),A.assign(qB._`${X}.schemaPath`,qB.str`${C.errSchemaPath}/${Q}`),C.opts.verbose)A.assign(qB._`${X}.schema`,B),A.assign(qB._`${X}.data`,Y)})}D$A.extendErrors=c9B;function V$A(A,Q){let B=A.const("err",Q);A.if(qB._`${W9.default.vErrors} === null`,()=>A.assign(W9.default.vErrors,qB._`[${B}]`),qB._`${W9.default.vErrors}.push(${B})`),A.code(qB._`${W9.default.errors}++`)}function I$A(A,Q){let{gen:B,validateName:Y,schemaEnv:J}=A;if(J.$async)B.throw(qB._`new ${A.ValidationError}(${Q})`);else B.assign(qB._`${Y}.errors`,Q),B.return(!1)}var KZ={keyword:new qB.Name("keyword"),schemaPath:new qB.Name("schemaPath"),params:new qB.Name("params"),propertyName:new qB.Name("propertyName"),message:new qB.Name("message"),schema:new qB.Name("schema"),parentSchema:new qB.Name("parentSchema")};function H$A(A,Q,B){let{createErrors:Y}=A.it;if(Y===!1)return qB._`{}`;return l9B(A,Q,B)}function l9B(A,Q,B={}){let{gen:Y,it:J}=A,C=[p9B(J,B),i9B(A,B)];return n9B(A,Q,C),Y.object(...C)}function p9B({errorPath:A},{instancePath:Q}){let B=Q?qB.str`${A}${(0,Fw.getErrorPath)(Q,Fw.Type.Str)}`:A;return[W9.default.instancePath,(0,qB.strConcat)(W9.default.instancePath,B)]}function i9B({keyword:A,it:{errSchemaPath:Q}},{schemaPath:B,parentSchema:Y}){let J=Y?Q:qB.str`${Q}/${A}`;if(B)J=qB.str`${J}${(0,Fw.getErrorPath)(B,Fw.Type.Str)}`;return[KZ.schemaPath,J]}function n9B(A,{params:Q,message:B},Y){let{keyword:J,data:C,schemaValue:X,it:G}=A,{opts:W,propertyName:F,topSchemaRef:Z,schemaPath:U}=G;if(Y.push([KZ.keyword,J],[KZ.params,typeof Q=="function"?Q(A):Q||qB._`{}`]),W.messages)Y.push([KZ.message,typeof B=="function"?B(A):B]);if(W.verbose)Y.push([KZ.schema,X],[KZ.parentSchema,qB._`${Z}${U}`],[W9.default.data,C]);if(F)Y.push([KZ.propertyName,F])}});var z$A=R((q$A)=>{Object.defineProperty(q$A,"__esModule",{value:!0});q$A.boolOrEmptySchema=q$A.topBoolOrEmptySchema=void 0;var t9B=HD(),e9B=GB(),A8B=u6(),Q8B={message:"boolean schema is false"};function B8B(A){let{gen:Q,schema:B,validateName:Y}=A;if(B===!1)L$A(A,!1);else if(typeof B=="object"&&B.$async===!0)Q.return(A8B.default.data);else Q.assign(e9B._`${Y}.errors`,null),Q.return(!0)}q$A.topBoolOrEmptySchema=B8B;function Y8B(A,Q){let{gen:B,schema:Y}=A;if(Y===!1)B.var(Q,!1),L$A(A);else B.var(Q,!0)}q$A.boolOrEmptySchema=Y8B;function L$A(A,Q){let{gen:B,data:Y}=A,J={gen:B,keyword:"false schema",data:Y,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:A};(0,t9B.reportError)(J,Q8B,void 0,Q)}});var Wb=R((R$A)=>{Object.defineProperty(R$A,"__esModule",{value:!0});R$A.getRules=R$A.isJSONType=void 0;var C8B=["string","number","integer","boolean","null","object","array"],X8B=new Set(C8B);function G8B(A){return typeof A=="string"&&X8B.has(A)}R$A.isJSONType=G8B;function W8B(){let A={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...A,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},A.number,A.string,A.array,A.object],post:{rules:[]},all:{},keywords:{}}}R$A.getRules=W8B});var Fb=R((P$A)=>{Object.defineProperty(P$A,"__esModule",{value:!0});P$A.shouldUseRule=P$A.shouldUseGroup=P$A.schemaHasRulesForType=void 0;function Z8B({schema:A,self:Q},B){let Y=Q.RULES.types[B];return Y&&Y!==!0&&j$A(A,Y)}P$A.schemaHasRulesForType=Z8B;function j$A(A,Q){return Q.rules.some((B)=>O$A(A,B))}P$A.shouldUseGroup=j$A;function O$A(A,Q){var B;return A[Q.keyword]!==void 0||((B=Q.definition.implements)===null||B===void 0?void 0:B.some((Y)=>A[Y]!==void 0))}P$A.shouldUseRule=O$A});var DD=R((v$A)=>{Object.defineProperty(v$A,"__esModule",{value:!0});v$A.reportTypeError=v$A.checkDataTypes=v$A.checkDataType=v$A.coerceAndCheckDataType=v$A.getJSONTypes=v$A.getSchemaTypes=v$A.DataType=void 0;var E8B=Wb(),K8B=Fb(),V8B=HD(),aQ=GB(),S$A=wB(),UE;(function(A){A[A.Correct=0]="Correct",A[A.Wrong=1]="Wrong"})(UE||(v$A.DataType=UE={}));function I8B(A){let Q=k$A(A.type);if(Q.includes("null")){if(A.nullable===!1)throw Error("type: null contradicts nullable: false")}else{if(!Q.length&&A.nullable!==void 0)throw Error('"nullable" cannot be used without "type"');if(A.nullable===!0)Q.push("null")}return Q}v$A.getSchemaTypes=I8B;function k$A(A){let Q=Array.isArray(A)?A:A?[A]:[];if(Q.every(E8B.isJSONType))return Q;throw Error("type must be JSONType or JSONType[]: "+Q.join(","))}v$A.getJSONTypes=k$A;function H8B(A,Q){let{gen:B,data:Y,opts:J}=A,C=D8B(Q,J.coerceTypes),X=Q.length>0&&!(C.length===0&&Q.length===1&&(0,K8B.schemaHasRulesForType)(A,Q[0]));if(X){let G=$b(Q,Y,J.strictNumbers,UE.Wrong);B.if(G,()=>{if(C.length)N8B(A,Q,C);else Ub(A)})}return X}v$A.coerceAndCheckDataType=H8B;var _$A=new Set(["string","number","integer","boolean","null"]);function D8B(A,Q){return Q?A.filter((B)=>_$A.has(B)||Q==="array"&&B==="array"):[]}function N8B(A,Q,B){let{gen:Y,data:J,opts:C}=A,X=Y.let("dataType",aQ._`typeof ${J}`),G=Y.let("coerced",aQ._`undefined`);if(C.coerceTypes==="array")Y.if(aQ._`${X} == 'object' && Array.isArray(${J}) && ${J}.length == 1`,()=>Y.assign(J,aQ._`${J}[0]`).assign(X,aQ._`typeof ${J}`).if($b(Q,J,C.strictNumbers),()=>Y.assign(G,J)));Y.if(aQ._`${G} !== undefined`);for(let F of B)if(_$A.has(F)||F==="array"&&C.coerceTypes==="array")W(F);Y.else(),Ub(A),Y.endIf(),Y.if(aQ._`${G} !== undefined`,()=>{Y.assign(J,G),L8B(A,G)});function W(F){switch(F){case"string":Y.elseIf(aQ._`${X} == "number" || ${X} == "boolean"`).assign(G,aQ._`"" + ${J}`).elseIf(aQ._`${J} === null`).assign(G,aQ._`""`);return;case"number":Y.elseIf(aQ._`${X} == "boolean" || ${J} === null || (${X} == "string" && ${J} && ${J} == +${J})`).assign(G,aQ._`+${J}`);return;case"integer":Y.elseIf(aQ._`${X} === "boolean" || ${J} === null || (${X} === "string" && ${J} && ${J} == +${J} && !(${J} % 1))`).assign(G,aQ._`+${J}`);return;case"boolean":Y.elseIf(aQ._`${J} === "false" || ${J} === 0 || ${J} === null`).assign(G,!1).elseIf(aQ._`${J} === "true" || ${J} === 1`).assign(G,!0);return;case"null":Y.elseIf(aQ._`${J} === "" || ${J} === 0 || ${J} === false`),Y.assign(G,null);return;case"array":Y.elseIf(aQ._`${X} === "string" || ${X} === "number" - || ${X} === "boolean" || ${J} === null`).assign(G,aQ._`[${J}]`)}}}function N9B({gen:A,parentData:Q,parentDataProperty:B},Y){A.if(aQ._`${Q} !== undefined`,()=>A.assign(aQ._`${Q}[${B}]`,Y))}function ff(A,Q,B,Y=JE.Correct){let J=Y===JE.Correct?aQ.operators.EQ:aQ.operators.NEQ,C;switch(A){case"null":return aQ._`${Q} ${J} null`;case"array":C=aQ._`Array.isArray(${Q})`;break;case"object":C=aQ._`${Q} && typeof ${Q} == "object" && !Array.isArray(${Q})`;break;case"integer":C=X(aQ._`!(${Q} % 1) && !isNaN(${Q})`);break;case"number":C=X();break;default:return aQ._`typeof ${Q} ${J} ${A}`}return Y===JE.Correct?C:(0,aQ.not)(C);function X(G=aQ.nil){return(0,aQ.and)(aQ._`typeof ${Q} == "number"`,G,B?aQ._`isFinite(${Q})`:aQ.nil)}}iZA.checkDataType=ff;function bf(A,Q,B,Y){if(A.length===1)return ff(A[0],Q,B,Y);let J,C=(0,cZA.toHash)(A);if(C.array&&C.object){let X=aQ._`typeof ${Q} != "object"`;J=C.null?X:aQ._`!${Q} || ${X}`,delete C.null,delete C.array,delete C.object}else J=aQ.nil;if(C.number)delete C.integer;for(let X in C)J=(0,aQ.and)(J,ff(X,Q,B,Y));return J}iZA.checkDataTypes=bf;var L9B={message:({schema:A})=>`must be ${A}`,params:({schema:A,schemaValue:Q})=>typeof A=="string"?aQ._`{type: ${A}}`:aQ._`{type: ${Q}}`};function mf(A){let Q=q9B(A);(0,K9B.reportError)(Q,L9B)}iZA.reportTypeError=mf;function q9B(A){let{gen:Q,data:B,schema:Y}=A,J=(0,cZA.schemaRefOrVal)(A,Y,"type");return{gen:Q,keyword:"type",data:B,schema:Y.type,schemaCode:J,schemaValue:J,parentSchema:Y,params:{},it:A}}});var oZA=R((rZA)=>{Object.defineProperty(rZA,"__esModule",{value:!0});rZA.assignDefaults=void 0;var CE=GB(),P9B=wB();function T9B(A,Q){let{properties:B,items:Y}=A.schema;if(Q==="object"&&B)for(let J in B)sZA(A,J,B[J].default);else if(Q==="array"&&Array.isArray(Y))Y.forEach((J,C)=>sZA(A,C,J.default))}rZA.assignDefaults=T9B;function sZA(A,Q,B){let{gen:Y,compositeRule:J,data:C,opts:X}=A;if(B===void 0)return;let G=CE._`${C}${(0,CE.getProperty)(Q)}`;if(J){(0,P9B.checkStrictMode)(A,`default is ignored for: ${G}`);return}let F=CE._`${G} === undefined`;if(X.useDefaults==="empty")F=CE._`${F} || ${G} === null || ${G} === ""`;Y.if(F,CE._`${G} = ${(0,CE.stringify)(B)}`)}});var I5=R((A$A)=>{Object.defineProperty(A$A,"__esModule",{value:!0});A$A.validateUnion=A$A.validateArray=A$A.usePattern=A$A.callValidateCode=A$A.schemaProperties=A$A.allSchemaProperties=A$A.noPropertyInData=A$A.propertyInData=A$A.isOwnProperty=A$A.hasPropFunc=A$A.reportMissingProp=A$A.checkMissingProp=A$A.checkReportMissingProp=void 0;var Z0=GB(),uf=wB(),_7=vX(),S9B=wB();function k9B(A,Q){let{gen:B,data:Y,it:J}=A;B.if(cf(B,Y,Q,J.opts.ownProperties),()=>{A.setParams({missingProperty:Z0._`${Q}`},!0),A.error()})}A$A.checkReportMissingProp=k9B;function _9B({gen:A,data:Q,it:{opts:B}},Y,J){return(0,Z0.or)(...Y.map((C)=>(0,Z0.and)(cf(A,Q,C,B.ownProperties),Z0._`${J} = ${C}`)))}A$A.checkMissingProp=_9B;function v9B(A,Q){A.setParams({missingProperty:Q},!0),A.error()}A$A.reportMissingProp=v9B;function tZA(A){return A.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:Z0._`Object.prototype.hasOwnProperty`})}A$A.hasPropFunc=tZA;function df(A,Q,B){return Z0._`${tZA(A)}.call(${Q}, ${B})`}A$A.isOwnProperty=df;function y9B(A,Q,B,Y){let J=Z0._`${Q}${(0,Z0.getProperty)(B)} !== undefined`;return Y?Z0._`${J} && ${df(A,Q,B)}`:J}A$A.propertyInData=y9B;function cf(A,Q,B,Y){let J=Z0._`${Q}${(0,Z0.getProperty)(B)} === undefined`;return Y?(0,Z0.or)(J,(0,Z0.not)(df(A,Q,B))):J}A$A.noPropertyInData=cf;function eZA(A){return A?Object.keys(A).filter((Q)=>Q!=="__proto__"):[]}A$A.allSchemaProperties=eZA;function h9B(A,Q){return eZA(Q).filter((B)=>!(0,uf.alwaysValidSchema)(A,Q[B]))}A$A.schemaProperties=h9B;function g9B({schemaCode:A,data:Q,it:{gen:B,topSchemaRef:Y,schemaPath:J,errorPath:C},it:X},G,F,W){let Z=W?Z0._`${A}, ${Q}, ${Y}${J}`:Q,U=[[_7.default.instancePath,(0,Z0.strConcat)(_7.default.instancePath,C)],[_7.default.parentData,X.parentData],[_7.default.parentDataProperty,X.parentDataProperty],[_7.default.rootData,_7.default.rootData]];if(X.opts.dynamicRef)U.push([_7.default.dynamicAnchors,_7.default.dynamicAnchors]);let $=Z0._`${Z}, ${B.object(...U)}`;return F!==Z0.nil?Z0._`${G}.call(${F}, ${$})`:Z0._`${G}(${$})`}A$A.callValidateCode=g9B;var x9B=Z0._`new RegExp`;function f9B({gen:A,it:{opts:Q}},B){let Y=Q.unicodeRegExp?"u":"",{regExp:J}=Q.code,C=J(B,Y);return A.scopeValue("pattern",{key:C.toString(),ref:C,code:Z0._`${J.code==="new RegExp"?x9B:(0,S9B.useFunc)(A,J)}(${B}, ${Y})`})}A$A.usePattern=f9B;function b9B(A){let{gen:Q,data:B,keyword:Y,it:J}=A,C=Q.name("valid");if(J.allErrors){let G=Q.let("valid",!0);return X(()=>Q.assign(G,!1)),G}return Q.var(C,!0),X(()=>Q.break()),C;function X(G){let F=Q.const("len",Z0._`${B}.length`);Q.forRange("i",0,F,(W)=>{A.subschema({keyword:Y,dataProp:W,dataPropType:uf.Type.Num},C),Q.if((0,Z0.not)(C),G)})}}A$A.validateArray=b9B;function m9B(A){let{gen:Q,schema:B,keyword:Y,it:J}=A;if(!Array.isArray(B))throw Error("ajv implementation error");if(B.some((F)=>(0,uf.alwaysValidSchema)(J,F))&&!J.opts.unevaluated)return;let X=Q.let("valid",!1),G=Q.name("_valid");Q.block(()=>B.forEach((F,W)=>{let Z=A.subschema({keyword:Y,schemaProp:W,compositeRule:!0},G);if(Q.assign(X,Z0._`${X} || ${G}`),!A.mergeValidEvaluated(Z,G))Q.if((0,Z0.not)(X))})),A.result(X,()=>A.reset(),()=>A.error(!0))}A$A.validateUnion=m9B});var X$A=R((J$A)=>{Object.defineProperty(J$A,"__esModule",{value:!0});J$A.validateKeywordUsage=J$A.validSchemaType=J$A.funcKeywordCode=J$A.macroKeywordCode=void 0;var B9=GB(),XZ=vX(),e9B=I5(),A8B=BD();function Q8B(A,Q){let{gen:B,keyword:Y,schema:J,parentSchema:C,it:X}=A,G=Q.macro.call(X.self,J,C,X),F=Y$A(B,Y,G);if(X.opts.validateSchema!==!1)X.self.validateSchema(G,!0);let W=B.name("valid");A.subschema({schema:G,schemaPath:B9.nil,errSchemaPath:`${X.errSchemaPath}/${Y}`,topSchemaRef:F,compositeRule:!0},W),A.pass(W,()=>A.error(!0))}J$A.macroKeywordCode=Q8B;function B8B(A,Q){var B;let{gen:Y,keyword:J,schema:C,parentSchema:X,$data:G,it:F}=A;J8B(F,Q);let W=!G&&Q.compile?Q.compile.call(F.self,C,X,F):Q.validate,Z=Y$A(Y,J,W),U=Y.let("valid");A.block$data(U,$),A.ok((B=Q.valid)!==null&&B!==void 0?B:U);function $(){if(Q.errors===!1){if(I(),Q.modifying)B$A(A);V(()=>A.error())}else{let H=Q.async?E():K();if(Q.modifying)B$A(A);V(()=>Y8B(A,H))}}function E(){let H=Y.let("ruleErrs",null);return Y.try(()=>I(B9._`await `),(D)=>Y.assign(U,!1).if(B9._`${D} instanceof ${F.ValidationError}`,()=>Y.assign(H,B9._`${D}.errors`),()=>Y.throw(D))),H}function K(){let H=B9._`${Z}.errors`;return Y.assign(H,null),I(B9.nil),H}function I(H=Q.async?B9._`await `:B9.nil){let D=F.opts.passContext?XZ.default.this:XZ.default.self,L=!(("compile"in Q)&&!G||Q.schema===!1);Y.assign(U,B9._`${H}${(0,e9B.callValidateCode)(A,Z,D,L)}`,Q.modifying)}function V(H){var D;Y.if((0,B9.not)((D=Q.valid)!==null&&D!==void 0?D:U),H)}}J$A.funcKeywordCode=B8B;function B$A(A){let{gen:Q,data:B,it:Y}=A;Q.if(Y.parentData,()=>Q.assign(B,B9._`${Y.parentData}[${Y.parentDataProperty}]`))}function Y8B(A,Q){let{gen:B}=A;B.if(B9._`Array.isArray(${Q})`,()=>{B.assign(XZ.default.vErrors,B9._`${XZ.default.vErrors} === null ? ${Q} : ${XZ.default.vErrors}.concat(${Q})`).assign(XZ.default.errors,B9._`${XZ.default.vErrors}.length`),(0,A8B.extendErrors)(A)},()=>A.error())}function J8B({schemaEnv:A},Q){if(Q.async&&!A.$async)throw Error("async keyword in sync schema")}function Y$A(A,Q,B){if(B===void 0)throw Error(`keyword "${Q}" failed to compile`);return A.scopeValue("keyword",typeof B=="function"?{ref:B}:{ref:B,code:(0,B9.stringify)(B)})}function C8B(A,Q,B=!1){return!Q.length||Q.some((Y)=>Y==="array"?Array.isArray(A):Y==="object"?A&&typeof A=="object"&&!Array.isArray(A):typeof A==Y||B&&typeof A>"u")}J$A.validSchemaType=C8B;function X8B({schema:A,opts:Q,self:B,errSchemaPath:Y},J,C){if(Array.isArray(J.keyword)?!J.keyword.includes(C):J.keyword!==C)throw Error("ajv implementation error");let X=J.dependencies;if(X===null||X===void 0?void 0:X.some((G)=>!Object.prototype.hasOwnProperty.call(A,G)))throw Error(`parent schema must have dependencies of ${C}: ${X.join(",")}`);if(J.validateSchema){if(!J.validateSchema(A[C])){let F=`keyword "${C}" value is invalid at path "${Y}": `+B.errorsText(J.validateSchema.errors);if(Q.validateSchema==="log")B.logger.error(F);else throw Error(F)}}}J$A.validateKeywordUsage=X8B});var Z$A=R((F$A)=>{Object.defineProperty(F$A,"__esModule",{value:!0});F$A.extendSubschemaMode=F$A.extendSubschemaData=F$A.getSubschema=void 0;var l1=GB(),G$A=wB();function Z8B(A,{keyword:Q,schemaProp:B,schema:Y,schemaPath:J,errSchemaPath:C,topSchemaRef:X}){if(Q!==void 0&&Y!==void 0)throw Error('both "keyword" and "schema" passed, only one allowed');if(Q!==void 0){let G=A.schema[Q];return B===void 0?{schema:G,schemaPath:l1._`${A.schemaPath}${(0,l1.getProperty)(Q)}`,errSchemaPath:`${A.errSchemaPath}/${Q}`}:{schema:G[B],schemaPath:l1._`${A.schemaPath}${(0,l1.getProperty)(Q)}${(0,l1.getProperty)(B)}`,errSchemaPath:`${A.errSchemaPath}/${Q}/${(0,G$A.escapeFragment)(B)}`}}if(Y!==void 0){if(J===void 0||C===void 0||X===void 0)throw Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:Y,schemaPath:J,topSchemaRef:X,errSchemaPath:C}}throw Error('either "keyword" or "schema" must be passed')}F$A.getSubschema=Z8B;function $8B(A,Q,{dataProp:B,dataPropType:Y,data:J,dataTypes:C,propertyName:X}){if(J!==void 0&&B!==void 0)throw Error('both "data" and "dataProp" passed, only one allowed');let{gen:G}=Q;if(B!==void 0){let{errorPath:W,dataPathArr:Z,opts:U}=Q,$=G.let("data",l1._`${Q.data}${(0,l1.getProperty)(B)}`,!0);F($),A.errorPath=l1.str`${W}${(0,G$A.getErrorPath)(B,Y,U.jsPropertySyntax)}`,A.parentDataProperty=l1._`${B}`,A.dataPathArr=[...Z,A.parentDataProperty]}if(J!==void 0){let W=J instanceof l1.Name?J:G.let("data",J,!0);if(F(W),X!==void 0)A.propertyName=X}if(C)A.dataTypes=C;function F(W){A.data=W,A.dataLevel=Q.dataLevel+1,A.dataTypes=[],Q.definedProperties=new Set,A.parentData=Q.data,A.dataNames=[...Q.dataNames,W]}}F$A.extendSubschemaData=$8B;function U8B(A,{jtdDiscriminator:Q,jtdMetadata:B,compositeRule:Y,createErrors:J,allErrors:C}){if(Y!==void 0)A.compositeRule=Y;if(J!==void 0)A.createErrors=J;if(C!==void 0)A.allErrors=C;A.jtdDiscriminator=Q,A.jtdMetadata=B}F$A.extendSubschemaMode=U8B});var lf=R((t$Y,$$A)=>{$$A.exports=function A(Q,B){if(Q===B)return!0;if(Q&&B&&typeof Q=="object"&&typeof B=="object"){if(Q.constructor!==B.constructor)return!1;var Y,J,C;if(Array.isArray(Q)){if(Y=Q.length,Y!=B.length)return!1;for(J=Y;J--!==0;)if(!A(Q[J],B[J]))return!1;return!0}if(Q.constructor===RegExp)return Q.source===B.source&&Q.flags===B.flags;if(Q.valueOf!==Object.prototype.valueOf)return Q.valueOf()===B.valueOf();if(Q.toString!==Object.prototype.toString)return Q.toString()===B.toString();if(C=Object.keys(Q),Y=C.length,Y!==Object.keys(B).length)return!1;for(J=Y;J--!==0;)if(!Object.prototype.hasOwnProperty.call(B,C[J]))return!1;for(J=Y;J--!==0;){var X=C[J];if(!A(Q[X],B[X]))return!1}return!0}return Q!==Q&&B!==B}});var E$A=R((e$Y,U$A)=>{var v7=U$A.exports=function(A,Q,B){if(typeof Q=="function")B=Q,Q={};B=Q.cb||B;var Y=typeof B=="function"?B:B.pre||function(){},J=B.post||function(){};uR(Q,Y,J,A,"",A)};v7.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};v7.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};v7.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};v7.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function uR(A,Q,B,Y,J,C,X,G,F,W){if(Y&&typeof Y=="object"&&!Array.isArray(Y)){Q(Y,J,C,X,G,F,W);for(var Z in Y){var U=Y[Z];if(Array.isArray(U)){if(Z in v7.arrayKeywords)for(var $=0;${Object.defineProperty(H$A,"__esModule",{value:!0});H$A.getSchemaRefs=H$A.resolveUrl=H$A.normalizeId=H$A._getFullPath=H$A.getFullPath=H$A.inlineRef=void 0;var I8B=wB(),H8B=lf(),D8B=E$A(),N8B=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function L8B(A,Q=!0){if(typeof A=="boolean")return!0;if(Q===!0)return!pf(A);if(!Q)return!1;return K$A(A)<=Q}H$A.inlineRef=L8B;var q8B=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function pf(A){for(let Q in A){if(q8B.has(Q))return!0;let B=A[Q];if(Array.isArray(B)&&B.some(pf))return!0;if(typeof B=="object"&&pf(B))return!0}return!1}function K$A(A){let Q=0;for(let B in A){if(B==="$ref")return 1/0;if(Q++,N8B.has(B))continue;if(typeof A[B]=="object")(0,I8B.eachItem)(A[B],(Y)=>Q+=K$A(Y));if(Q===1/0)return 1/0}return Q}function V$A(A,Q="",B){if(B!==!1)Q=XE(Q);let Y=A.parse(Q);return I$A(A,Y)}H$A.getFullPath=V$A;function I$A(A,Q){return A.serialize(Q).split("#")[0]+"#"}H$A._getFullPath=I$A;var M8B=/#\/?$/;function XE(A){return A?A.replace(M8B,""):""}H$A.normalizeId=XE;function z8B(A,Q,B){return B=XE(B),A.resolve(Q,B)}H$A.resolveUrl=z8B;var R8B=/^[a-z_][-a-z0-9._]*$/i;function w8B(A,Q){if(typeof A=="boolean")return{};let{schemaId:B,uriResolver:Y}=this.opts,J=XE(A[B]||Q),C={"":J},X=V$A(Y,J,!1),G={},F=new Set;return D8B(A,{allKeys:!0},(U,$,E,K)=>{if(K===void 0)return;let I=X+$,V=C[K];if(typeof U[B]=="string")V=H.call(this,U[B]);D.call(this,U.$anchor),D.call(this,U.$dynamicAnchor),C[$]=V;function H(L){let z=this.opts.uriResolver.resolve;if(L=XE(V?z(V,L):L),F.has(L))throw Z(L);F.add(L);let M=this.refs[L];if(typeof M=="string")M=this.refs[M];if(typeof M=="object")W(U,M.schema,L);else if(L!==XE(I))if(L[0]==="#")W(U,G[L],L),G[L]=U;else this.refs[L]=I;return L}function D(L){if(typeof L=="string"){if(!R8B.test(L))throw Error(`invalid anchor "${L}"`);H.call(this,`#${L}`)}}}),G;function W(U,$,E){if($!==void 0&&!H8B(U,$))throw Z(E)}function Z(U){return Error(`reference "${U}" resolves to more than one schema`)}}H$A.getSchemaRefs=w8B});var GD=R((v$A)=>{Object.defineProperty(v$A,"__esModule",{value:!0});v$A.getData=v$A.KeywordCxt=v$A.validateFunctionCode=void 0;var z$A=gZA(),N$A=YD(),sf=xf(),dR=YD(),k8B=oZA(),XD=X$A(),nf=Z$A(),FQ=GB(),yQ=vX(),_8B=JD(),yX=wB(),CD=BD();function v8B(A){if(j$A(A)){if(O$A(A),w$A(A)){g8B(A);return}}R$A(A,()=>(0,z$A.topBoolOrEmptySchema)(A))}v$A.validateFunctionCode=v8B;function R$A({gen:A,validateName:Q,schema:B,schemaEnv:Y,opts:J},C){if(J.code.es5)A.func(Q,FQ._`${yQ.default.data}, ${yQ.default.valCxt}`,Y.$async,()=>{A.code(FQ._`"use strict"; ${L$A(B,J)}`),h8B(A,J),A.code(C)});else A.func(Q,FQ._`${yQ.default.data}, ${y8B(J)}`,Y.$async,()=>A.code(L$A(B,J)).code(C))}function y8B(A){return FQ._`{${yQ.default.instancePath}="", ${yQ.default.parentData}, ${yQ.default.parentDataProperty}, ${yQ.default.rootData}=${yQ.default.data}${A.dynamicRef?FQ._`, ${yQ.default.dynamicAnchors}={}`:FQ.nil}}={}`}function h8B(A,Q){A.if(yQ.default.valCxt,()=>{if(A.var(yQ.default.instancePath,FQ._`${yQ.default.valCxt}.${yQ.default.instancePath}`),A.var(yQ.default.parentData,FQ._`${yQ.default.valCxt}.${yQ.default.parentData}`),A.var(yQ.default.parentDataProperty,FQ._`${yQ.default.valCxt}.${yQ.default.parentDataProperty}`),A.var(yQ.default.rootData,FQ._`${yQ.default.valCxt}.${yQ.default.rootData}`),Q.dynamicRef)A.var(yQ.default.dynamicAnchors,FQ._`${yQ.default.valCxt}.${yQ.default.dynamicAnchors}`)},()=>{if(A.var(yQ.default.instancePath,FQ._`""`),A.var(yQ.default.parentData,FQ._`undefined`),A.var(yQ.default.parentDataProperty,FQ._`undefined`),A.var(yQ.default.rootData,yQ.default.data),Q.dynamicRef)A.var(yQ.default.dynamicAnchors,FQ._`{}`)})}function g8B(A){let{schema:Q,opts:B,gen:Y}=A;R$A(A,()=>{if(B.$comment&&Q.$comment)T$A(A);if(u8B(A),Y.let(yQ.default.vErrors,null),Y.let(yQ.default.errors,0),B.unevaluated)x8B(A);P$A(A),l8B(A)});return}function x8B(A){let{gen:Q,validateName:B}=A;A.evaluated=Q.const("evaluated",FQ._`${B}.evaluated`),Q.if(FQ._`${A.evaluated}.dynamicProps`,()=>Q.assign(FQ._`${A.evaluated}.props`,FQ._`undefined`)),Q.if(FQ._`${A.evaluated}.dynamicItems`,()=>Q.assign(FQ._`${A.evaluated}.items`,FQ._`undefined`))}function L$A(A,Q){let B=typeof A=="object"&&A[Q.schemaId];return B&&(Q.code.source||Q.code.process)?FQ._`/*# sourceURL=${B} */`:FQ.nil}function f8B(A,Q){if(j$A(A)){if(O$A(A),w$A(A)){b8B(A,Q);return}}(0,z$A.boolOrEmptySchema)(A,Q)}function w$A({schema:A,self:Q}){if(typeof A=="boolean")return!A;for(let B in A)if(Q.RULES.all[B])return!0;return!1}function j$A(A){return typeof A.schema!="boolean"}function b8B(A,Q){let{schema:B,gen:Y,opts:J}=A;if(J.$comment&&B.$comment)T$A(A);d8B(A),c8B(A);let C=Y.const("_errs",yQ.default.errors);P$A(A,C),Y.var(Q,FQ._`${C} === ${yQ.default.errors}`)}function O$A(A){(0,yX.checkUnknownRules)(A),m8B(A)}function P$A(A,Q){if(A.opts.jtd)return q$A(A,[],!1,Q);let B=(0,N$A.getSchemaTypes)(A.schema),Y=(0,N$A.coerceAndCheckDataType)(A,B);q$A(A,B,!Y,Q)}function m8B(A){let{schema:Q,errSchemaPath:B,opts:Y,self:J}=A;if(Q.$ref&&Y.ignoreKeywordsWithRef&&(0,yX.schemaHasRulesButRef)(Q,J.RULES))J.logger.warn(`$ref: keywords ignored in schema at path "${B}"`)}function u8B(A){let{schema:Q,opts:B}=A;if(Q.default!==void 0&&B.useDefaults&&B.strictSchema)(0,yX.checkStrictMode)(A,"default is ignored in the schema root")}function d8B(A){let Q=A.schema[A.opts.schemaId];if(Q)A.baseId=(0,_8B.resolveUrl)(A.opts.uriResolver,A.baseId,Q)}function c8B(A){if(A.schema.$async&&!A.schemaEnv.$async)throw Error("async schema in sync schema")}function T$A({gen:A,schemaEnv:Q,schema:B,errSchemaPath:Y,opts:J}){let C=B.$comment;if(J.$comment===!0)A.code(FQ._`${yQ.default.self}.logger.log(${C})`);else if(typeof J.$comment=="function"){let X=FQ.str`${Y}/$comment`,G=A.scopeValue("root",{ref:Q.root});A.code(FQ._`${yQ.default.self}.opts.$comment(${C}, ${X}, ${G}.schema)`)}}function l8B(A){let{gen:Q,schemaEnv:B,validateName:Y,ValidationError:J,opts:C}=A;if(B.$async)Q.if(FQ._`${yQ.default.errors} === 0`,()=>Q.return(yQ.default.data),()=>Q.throw(FQ._`new ${J}(${yQ.default.vErrors})`));else{if(Q.assign(FQ._`${Y}.errors`,yQ.default.vErrors),C.unevaluated)p8B(A);Q.return(FQ._`${yQ.default.errors} === 0`)}}function p8B({gen:A,evaluated:Q,props:B,items:Y}){if(B instanceof FQ.Name)A.assign(FQ._`${Q}.props`,B);if(Y instanceof FQ.Name)A.assign(FQ._`${Q}.items`,Y)}function q$A(A,Q,B,Y){let{gen:J,schema:C,data:X,allErrors:G,opts:F,self:W}=A,{RULES:Z}=W;if(C.$ref&&(F.ignoreKeywordsWithRef||!(0,yX.schemaHasRulesButRef)(C,Z))){J.block(()=>k$A(A,"$ref",Z.all.$ref.definition));return}if(!F.jtd)i8B(A,Q);J.block(()=>{for(let $ of Z.rules)U($);U(Z.post)});function U($){if(!(0,sf.shouldUseGroup)(C,$))return;if($.type){if(J.if((0,dR.checkDataType)($.type,X,F.strictNumbers)),M$A(A,$),Q.length===1&&Q[0]===$.type&&B)J.else(),(0,dR.reportTypeError)(A);J.endIf()}else M$A(A,$);if(!G)J.if(FQ._`${yQ.default.errors} === ${Y||0}`)}}function M$A(A,Q){let{gen:B,schema:Y,opts:{useDefaults:J}}=A;if(J)(0,k8B.assignDefaults)(A,Q.type);B.block(()=>{for(let C of Q.rules)if((0,sf.shouldUseRule)(Y,C))k$A(A,C.keyword,C.definition,Q.type)})}function i8B(A,Q){if(A.schemaEnv.meta||!A.opts.strictTypes)return;if(n8B(A,Q),!A.opts.allowUnionTypes)s8B(A,Q);r8B(A,A.dataTypes)}function n8B(A,Q){if(!Q.length)return;if(!A.dataTypes.length){A.dataTypes=Q;return}Q.forEach((B)=>{if(!S$A(A.dataTypes,B))rf(A,`type "${B}" not allowed by context "${A.dataTypes.join(",")}"`)}),o8B(A,Q)}function s8B(A,Q){if(Q.length>1&&!(Q.length===2&&Q.includes("null")))rf(A,"use allowUnionTypes to allow union type keyword")}function r8B(A,Q){let B=A.self.RULES.all;for(let Y in B){let J=B[Y];if(typeof J=="object"&&(0,sf.shouldUseRule)(A.schema,J)){let{type:C}=J.definition;if(C.length&&!C.some((X)=>a8B(Q,X)))rf(A,`missing type "${C.join(",")}" for keyword "${Y}"`)}}}function a8B(A,Q){return A.includes(Q)||Q==="number"&&A.includes("integer")}function S$A(A,Q){return A.includes(Q)||Q==="integer"&&A.includes("number")}function o8B(A,Q){let B=[];for(let Y of A.dataTypes)if(S$A(Q,Y))B.push(Y);else if(Q.includes("integer")&&Y==="number")B.push("integer");A.dataTypes=B}function rf(A,Q){let B=A.schemaEnv.baseId+A.errSchemaPath;Q+=` at "${B}" (strictTypes)`,(0,yX.checkStrictMode)(A,Q,A.opts.strictTypes)}class af{constructor(A,Q,B){if((0,XD.validateKeywordUsage)(A,Q,B),this.gen=A.gen,this.allErrors=A.allErrors,this.keyword=B,this.data=A.data,this.schema=A.schema[B],this.$data=Q.$data&&A.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,yX.schemaRefOrVal)(A,this.schema,B,this.$data),this.schemaType=Q.schemaType,this.parentSchema=A.schema,this.params={},this.it=A,this.def=Q,this.$data)this.schemaCode=A.gen.const("vSchema",_$A(this.$data,A));else if(this.schemaCode=this.schemaValue,!(0,XD.validSchemaType)(this.schema,Q.schemaType,Q.allowUndefined))throw Error(`${B} value must be ${JSON.stringify(Q.schemaType)}`);if("code"in Q?Q.trackErrors:Q.errors!==!1)this.errsCount=A.gen.const("_errs",yQ.default.errors)}result(A,Q,B){this.failResult((0,FQ.not)(A),Q,B)}failResult(A,Q,B){if(this.gen.if(A),B)B();else this.error();if(Q){if(this.gen.else(),Q(),this.allErrors)this.gen.endIf()}else if(this.allErrors)this.gen.endIf();else this.gen.else()}pass(A,Q){this.failResult((0,FQ.not)(A),void 0,Q)}fail(A){if(A===void 0){if(this.error(),!this.allErrors)this.gen.if(!1);return}if(this.gen.if(A),this.error(),this.allErrors)this.gen.endIf();else this.gen.else()}fail$data(A){if(!this.$data)return this.fail(A);let{schemaCode:Q}=this;this.fail(FQ._`${Q} !== undefined && (${(0,FQ.or)(this.invalid$data(),A)})`)}error(A,Q,B){if(Q){this.setParams(Q),this._error(A,B),this.setParams({});return}this._error(A,B)}_error(A,Q){(A?CD.reportExtraError:CD.reportError)(this,this.def.error,Q)}$dataError(){(0,CD.reportError)(this,this.def.$dataError||CD.keyword$DataError)}reset(){if(this.errsCount===void 0)throw Error('add "trackErrors" to keyword definition');(0,CD.resetErrorsCount)(this.gen,this.errsCount)}ok(A){if(!this.allErrors)this.gen.if(A)}setParams(A,Q){if(Q)Object.assign(this.params,A);else this.params=A}block$data(A,Q,B=FQ.nil){this.gen.block(()=>{this.check$data(A,B),Q()})}check$data(A=FQ.nil,Q=FQ.nil){if(!this.$data)return;let{gen:B,schemaCode:Y,schemaType:J,def:C}=this;if(B.if((0,FQ.or)(FQ._`${Y} === undefined`,Q)),A!==FQ.nil)B.assign(A,!0);if(J.length||C.validateSchema){if(B.elseIf(this.invalid$data()),this.$dataError(),A!==FQ.nil)B.assign(A,!1)}B.else()}invalid$data(){let{gen:A,schemaCode:Q,schemaType:B,def:Y,it:J}=this;return(0,FQ.or)(C(),X());function C(){if(B.length){if(!(Q instanceof FQ.Name))throw Error("ajv implementation error");let G=Array.isArray(B)?B:[B];return FQ._`${(0,dR.checkDataTypes)(G,Q,J.opts.strictNumbers,dR.DataType.Wrong)}`}return FQ.nil}function X(){if(Y.validateSchema){let G=A.scopeValue("validate$data",{ref:Y.validateSchema});return FQ._`!${G}(${Q})`}return FQ.nil}}subschema(A,Q){let B=(0,nf.getSubschema)(this.it,A);(0,nf.extendSubschemaData)(B,this.it,A),(0,nf.extendSubschemaMode)(B,A);let Y={...this.it,...B,items:void 0,props:void 0};return f8B(Y,Q),Y}mergeEvaluated(A,Q){let{it:B,gen:Y}=this;if(!B.opts.unevaluated)return;if(B.props!==!0&&A.props!==void 0)B.props=yX.mergeEvaluated.props(Y,A.props,B.props,Q);if(B.items!==!0&&A.items!==void 0)B.items=yX.mergeEvaluated.items(Y,A.items,B.items,Q)}mergeValidEvaluated(A,Q){let{it:B,gen:Y}=this;if(B.opts.unevaluated&&(B.props!==!0||B.items!==!0))return Y.if(Q,()=>this.mergeEvaluated(A,FQ.Name)),!0}}v$A.KeywordCxt=af;function k$A(A,Q,B,Y){let J=new af(A,B,Q);if("code"in B)B.code(J,Y);else if(J.$data&&B.validate)(0,XD.funcKeywordCode)(J,B);else if("macro"in B)(0,XD.macroKeywordCode)(J,B);else if(B.compile||B.validate)(0,XD.funcKeywordCode)(J,B)}var t8B=/^\/(?:[^~]|~0|~1)*$/,e8B=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function _$A(A,{dataLevel:Q,dataNames:B,dataPathArr:Y}){let J,C;if(A==="")return yQ.default.rootData;if(A[0]==="/"){if(!t8B.test(A))throw Error(`Invalid JSON-pointer: ${A}`);J=A,C=yQ.default.rootData}else{let W=e8B.exec(A);if(!W)throw Error(`Invalid JSON-pointer: ${A}`);let Z=+W[1];if(J=W[2],J==="#"){if(Z>=Q)throw Error(F("property/index",Z));return Y[Q-Z]}if(Z>Q)throw Error(F("data",Z));if(C=B[Q-Z],!J)return C}let X=C,G=J.split("/");for(let W of G)if(W)C=FQ._`${C}${(0,FQ.getProperty)((0,yX.unescapeJsonPointer)(W))}`,X=FQ._`${X} && ${C}`;return X;function F(W,Z){return`Cannot access ${W} ${Z} levels up, current level is ${Q}`}}v$A.getData=_$A});var cR=R((g$A)=>{Object.defineProperty(g$A,"__esModule",{value:!0});class h$A extends Error{constructor(A){super("validation failed");this.errors=A,this.ajv=this.validation=!0}}g$A.default=h$A});var FD=R((f$A)=>{Object.defineProperty(f$A,"__esModule",{value:!0});var of=JD();class x$A extends Error{constructor(A,Q,B,Y){super(Y||`can't resolve reference ${B} from id ${Q}`);this.missingRef=(0,of.resolveUrl)(A,Q,B),this.missingSchema=(0,of.normalizeId)((0,of.getFullPath)(A,this.missingRef))}}f$A.default=x$A});var pR=R((u$A)=>{Object.defineProperty(u$A,"__esModule",{value:!0});u$A.resolveSchema=u$A.getCompilingSchema=u$A.resolveRef=u$A.compileSchema=u$A.SchemaEnv=void 0;var hC=GB(),J5B=cR(),GZ=vX(),gC=JD(),b$A=wB(),C5B=GD();class WD{constructor(A){var Q;this.refs={},this.dynamicAnchors={};let B;if(typeof A.schema=="object")B=A.schema;this.schema=A.schema,this.schemaId=A.schemaId,this.root=A.root||this,this.baseId=(Q=A.baseId)!==null&&Q!==void 0?Q:(0,gC.normalizeId)(B===null||B===void 0?void 0:B[A.schemaId||"$id"]),this.schemaPath=A.schemaPath,this.localRefs=A.localRefs,this.meta=A.meta,this.$async=B===null||B===void 0?void 0:B.$async,this.refs={}}}u$A.SchemaEnv=WD;function ef(A){let Q=m$A.call(this,A);if(Q)return Q;let B=(0,gC.getFullPath)(this.opts.uriResolver,A.root.baseId),{es5:Y,lines:J}=this.opts.code,{ownProperties:C}=this.opts,X=new hC.CodeGen(this.scope,{es5:Y,lines:J,ownProperties:C}),G;if(A.$async)G=X.scopeValue("Error",{ref:J5B.default,code:hC._`require("ajv/dist/runtime/validation_error").default`});let F=X.scopeName("validate");A.validateName=F;let W={gen:X,allErrors:this.opts.allErrors,data:GZ.default.data,parentData:GZ.default.parentData,parentDataProperty:GZ.default.parentDataProperty,dataNames:[GZ.default.data],dataPathArr:[hC.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:X.scopeValue("schema",this.opts.code.source===!0?{ref:A.schema,code:(0,hC.stringify)(A.schema)}:{ref:A.schema}),validateName:F,ValidationError:G,schema:A.schema,schemaEnv:A,rootId:B,baseId:A.baseId||B,schemaPath:hC.nil,errSchemaPath:A.schemaPath||(this.opts.jtd?"":"#"),errorPath:hC._`""`,opts:this.opts,self:this},Z;try{this._compilations.add(A),(0,C5B.validateFunctionCode)(W),X.optimize(this.opts.code.optimize);let U=X.toString();if(Z=`${X.scopeRefs(GZ.default.scope)}return ${U}`,this.opts.code.process)Z=this.opts.code.process(Z,A);let E=Function(`${GZ.default.self}`,`${GZ.default.scope}`,Z)(this,this.scope.get());if(this.scope.value(F,{ref:E}),E.errors=null,E.schema=A.schema,E.schemaEnv=A,A.$async)E.$async=!0;if(this.opts.code.source===!0)E.source={validateName:F,validateCode:U,scopeValues:X._values};if(this.opts.unevaluated){let{props:K,items:I}=W;if(E.evaluated={props:K instanceof hC.Name?void 0:K,items:I instanceof hC.Name?void 0:I,dynamicProps:K instanceof hC.Name,dynamicItems:I instanceof hC.Name},E.source)E.source.evaluated=(0,hC.stringify)(E.evaluated)}return A.validate=E,A}catch(U){if(delete A.validate,delete A.validateName,Z)this.logger.error("Error compiling schema, function code:",Z);throw U}finally{this._compilations.delete(A)}}u$A.compileSchema=ef;function X5B(A,Q,B){var Y;B=(0,gC.resolveUrl)(this.opts.uriResolver,Q,B);let J=A.refs[B];if(J)return J;let C=W5B.call(this,A,B);if(C===void 0){let X=(Y=A.localRefs)===null||Y===void 0?void 0:Y[B],{schemaId:G}=this.opts;if(X)C=new WD({schema:X,schemaId:G,root:A,baseId:Q})}if(C===void 0)return;return A.refs[B]=G5B.call(this,C)}u$A.resolveRef=X5B;function G5B(A){if((0,gC.inlineRef)(A.schema,this.opts.inlineRefs))return A.schema;return A.validate?A:ef.call(this,A)}function m$A(A){for(let Q of this._compilations)if(F5B(Q,A))return Q}u$A.getCompilingSchema=m$A;function F5B(A,Q){return A.schema===Q.schema&&A.root===Q.root&&A.baseId===Q.baseId}function W5B(A,Q){let B;while(typeof(B=this.refs[Q])=="string")Q=B;return B||this.schemas[Q]||lR.call(this,A,Q)}function lR(A,Q){let B=this.opts.uriResolver.parse(Q),Y=(0,gC._getFullPath)(this.opts.uriResolver,B),J=(0,gC.getFullPath)(this.opts.uriResolver,A.baseId,void 0);if(Object.keys(A.schema).length>0&&Y===J)return tf.call(this,B,A);let C=(0,gC.normalizeId)(Y),X=this.refs[C]||this.schemas[C];if(typeof X=="string"){let G=lR.call(this,A,X);if(typeof(G===null||G===void 0?void 0:G.schema)!=="object")return;return tf.call(this,B,G)}if(typeof(X===null||X===void 0?void 0:X.schema)!=="object")return;if(!X.validate)ef.call(this,X);if(C===(0,gC.normalizeId)(Q)){let{schema:G}=X,{schemaId:F}=this.opts,W=G[F];if(W)J=(0,gC.resolveUrl)(this.opts.uriResolver,J,W);return new WD({schema:G,schemaId:F,root:A,baseId:J})}return tf.call(this,B,X)}u$A.resolveSchema=lR;var Z5B=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function tf(A,{baseId:Q,schema:B,root:Y}){var J;if(((J=A.fragment)===null||J===void 0?void 0:J[0])!=="/")return;for(let G of A.fragment.slice(1).split("/")){if(typeof B==="boolean")return;let F=B[(0,b$A.unescapeFragment)(G)];if(F===void 0)return;B=F;let W=typeof B==="object"&&B[this.opts.schemaId];if(!Z5B.has(G)&&W)Q=(0,gC.resolveUrl)(this.opts.uriResolver,Q,W)}let C;if(typeof B!="boolean"&&B.$ref&&!(0,b$A.schemaHasRulesButRef)(B,this.RULES)){let G=(0,gC.resolveUrl)(this.opts.uriResolver,Q,B.$ref);C=lR.call(this,Y,G)}let{schemaId:X}=this.opts;if(C=C||new WD({schema:B,schemaId:X,root:Y,baseId:Q}),C.schema!==C.root.schema)return C;return}});var c$A=R((C4Y,V5B)=>{V5B.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var p$A=R((X4Y,l$A)=>{var I5B={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,a:10,A:10,b:11,B:11,c:12,C:12,d:13,D:13,e:14,E:14,f:15,F:15};l$A.exports={HEX:I5B}});var e$A=R((G4Y,t$A)=>{var{HEX:H5B}=p$A(),D5B=/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u;function r$A(A){if(o$A(A,".")<3)return{host:A,isIPV4:!1};let Q=A.match(D5B)||[],[B]=Q;if(B)return{host:L5B(B,"."),isIPV4:!0};else return{host:A,isIPV4:!1}}function Ab(A,Q=!1){let B="",Y=!0;for(let J of A){if(H5B[J]===void 0)return;if(J!=="0"&&Y===!0)Y=!1;if(!Y)B+=J}if(Q&&B.length===0)B="0";return B}function N5B(A){let Q=0,B={error:!1,address:"",zone:""},Y=[],J=[],C=!1,X=!1,G=!1;function F(){if(J.length){if(C===!1){let W=Ab(J);if(W!==void 0)Y.push(W);else return B.error=!0,!1}J.length=0}return!0}for(let W=0;W7){B.error=!0;break}if(W-1>=0&&A[W-1]===":")X=!0;continue}else if(Z==="%"){if(!F())break;C=!0}else{J.push(Z);continue}}if(J.length)if(C)B.zone=J.join("");else if(G)Y.push(J.join(""));else Y.push(Ab(J));return B.address=Y.join(""),B}function a$A(A){if(o$A(A,":")<2)return{host:A,isIPV6:!1};let Q=N5B(A);if(!Q.error){let{address:B,address:Y}=Q;if(Q.zone)B+="%"+Q.zone,Y+="%25"+Q.zone;return{host:B,escapedHost:Y,isIPV6:!0}}else return{host:A,isIPV6:!1}}function L5B(A,Q){let B="",Y=!0,J=A.length;for(let C=0;C{var w5B=/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu,j5B=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu;function A4A(A){return typeof A.secure==="boolean"?A.secure:String(A.scheme).toLowerCase()==="wss"}function Q4A(A){if(!A.host)A.error=A.error||"HTTP URIs must have a host.";return A}function B4A(A){let Q=String(A.scheme).toLowerCase()==="https";if(A.port===(Q?443:80)||A.port==="")A.port=void 0;if(!A.path)A.path="/";return A}function O5B(A){return A.secure=A4A(A),A.resourceName=(A.path||"/")+(A.query?"?"+A.query:""),A.path=void 0,A.query=void 0,A}function P5B(A){if(A.port===(A4A(A)?443:80)||A.port==="")A.port=void 0;if(typeof A.secure==="boolean")A.scheme=A.secure?"wss":"ws",A.secure=void 0;if(A.resourceName){let[Q,B]=A.resourceName.split("?");A.path=Q&&Q!=="/"?Q:void 0,A.query=B,A.resourceName=void 0}return A.fragment=void 0,A}function T5B(A,Q){if(!A.path)return A.error="URN can not be parsed",A;let B=A.path.match(j5B);if(B){let Y=Q.scheme||A.scheme||"urn";A.nid=B[1].toLowerCase(),A.nss=B[2];let J=`${Y}:${Q.nid||A.nid}`,C=Qb[J];if(A.path=void 0,C)A=C.parse(A,Q)}else A.error=A.error||"URN can not be parsed.";return A}function S5B(A,Q){let B=Q.scheme||A.scheme||"urn",Y=A.nid.toLowerCase(),J=`${B}:${Q.nid||Y}`,C=Qb[J];if(C)A=C.serialize(A,Q);let X=A,G=A.nss;return X.path=`${Y||Q.nid}:${G}`,Q.skipEscape=!0,X}function k5B(A,Q){let B=A;if(B.uuid=B.nss,B.nss=void 0,!Q.tolerant&&(!B.uuid||!w5B.test(B.uuid)))B.error=B.error||"UUID is not valid.";return B}function _5B(A){let Q=A;return Q.nss=(A.uuid||"").toLowerCase(),Q}var Y4A={scheme:"http",domainHost:!0,parse:Q4A,serialize:B4A},v5B={scheme:"https",domainHost:Y4A.domainHost,parse:Q4A,serialize:B4A},iR={scheme:"ws",domainHost:!0,parse:O5B,serialize:P5B},y5B={scheme:"wss",domainHost:iR.domainHost,parse:iR.parse,serialize:iR.serialize},h5B={scheme:"urn",parse:T5B,serialize:S5B,skipNormalize:!0},g5B={scheme:"urn:uuid",parse:k5B,serialize:_5B,skipNormalize:!0},Qb={http:Y4A,https:v5B,ws:iR,wss:y5B,urn:h5B,"urn:uuid":g5B};J4A.exports=Qb});var G4A=R((W4Y,sR)=>{var{normalizeIPv6:x5B,normalizeIPv4:f5B,removeDotSegments:ZD,recomposeAuthority:b5B,normalizeComponentEncoding:nR}=e$A(),Bb=C4A();function m5B(A,Q){if(typeof A==="string")A=p1(hX(A,Q),Q);else if(typeof A==="object")A=hX(p1(A,Q),Q);return A}function u5B(A,Q,B){let Y=Object.assign({scheme:"null"},B),J=X4A(hX(A,Y),hX(Q,Y),Y,!0);return p1(J,{...Y,skipEscape:!0})}function X4A(A,Q,B,Y){let J={};if(!Y)A=hX(p1(A,B),B),Q=hX(p1(Q,B),B);if(B=B||{},!B.tolerant&&Q.scheme)J.scheme=Q.scheme,J.userinfo=Q.userinfo,J.host=Q.host,J.port=Q.port,J.path=ZD(Q.path||""),J.query=Q.query;else{if(Q.userinfo!==void 0||Q.host!==void 0||Q.port!==void 0)J.userinfo=Q.userinfo,J.host=Q.host,J.port=Q.port,J.path=ZD(Q.path||""),J.query=Q.query;else{if(!Q.path)if(J.path=A.path,Q.query!==void 0)J.query=Q.query;else J.query=A.query;else{if(Q.path.charAt(0)==="/")J.path=ZD(Q.path);else{if((A.userinfo!==void 0||A.host!==void 0||A.port!==void 0)&&!A.path)J.path="/"+Q.path;else if(!A.path)J.path=Q.path;else J.path=A.path.slice(0,A.path.lastIndexOf("/")+1)+Q.path;J.path=ZD(J.path)}J.query=Q.query}J.userinfo=A.userinfo,J.host=A.host,J.port=A.port}J.scheme=A.scheme}return J.fragment=Q.fragment,J}function d5B(A,Q,B){if(typeof A==="string")A=unescape(A),A=p1(nR(hX(A,B),!0),{...B,skipEscape:!0});else if(typeof A==="object")A=p1(nR(A,!0),{...B,skipEscape:!0});if(typeof Q==="string")Q=unescape(Q),Q=p1(nR(hX(Q,B),!0),{...B,skipEscape:!0});else if(typeof Q==="object")Q=p1(nR(Q,!0),{...B,skipEscape:!0});return A.toLowerCase()===Q.toLowerCase()}function p1(A,Q){let B={host:A.host,scheme:A.scheme,userinfo:A.userinfo,port:A.port,path:A.path,query:A.query,nid:A.nid,nss:A.nss,uuid:A.uuid,fragment:A.fragment,reference:A.reference,resourceName:A.resourceName,secure:A.secure,error:""},Y=Object.assign({},Q),J=[],C=Bb[(Y.scheme||B.scheme||"").toLowerCase()];if(C&&C.serialize)C.serialize(B,Y);if(B.path!==void 0)if(!Y.skipEscape){if(B.path=escape(B.path),B.scheme!==void 0)B.path=B.path.split("%3A").join(":")}else B.path=unescape(B.path);if(Y.reference!=="suffix"&&B.scheme)J.push(B.scheme,":");let X=b5B(B);if(X!==void 0){if(Y.reference!=="suffix")J.push("//");if(J.push(X),B.path&&B.path.charAt(0)!=="/")J.push("/")}if(B.path!==void 0){let G=B.path;if(!Y.absolutePath&&(!C||!C.absolutePath))G=ZD(G);if(X===void 0)G=G.replace(/^\/\//u,"/%2F");J.push(G)}if(B.query!==void 0)J.push("?",B.query);if(B.fragment!==void 0)J.push("#",B.fragment);return J.join("")}var c5B=Array.from({length:127},(A,Q)=>/[^!"$&'()*+,\-.;=_`a-z{}~]/u.test(String.fromCharCode(Q)));function l5B(A){let Q=0;for(let B=0,Y=A.length;B126||c5B[Q])return!0;return!1}var p5B=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function hX(A,Q){let B=Object.assign({},Q),Y={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},J=A.indexOf("%")!==-1,C=!1;if(B.reference==="suffix")A=(B.scheme?B.scheme+":":"")+"//"+A;let X=A.match(p5B);if(X){if(Y.scheme=X[1],Y.userinfo=X[3],Y.host=X[4],Y.port=parseInt(X[5],10),Y.path=X[6]||"",Y.query=X[7],Y.fragment=X[8],isNaN(Y.port))Y.port=X[5];if(Y.host){let F=f5B(Y.host);if(F.isIPV4===!1){let W=x5B(F.host);Y.host=W.host.toLowerCase(),C=W.isIPV6}else Y.host=F.host,C=!0}if(Y.scheme===void 0&&Y.userinfo===void 0&&Y.host===void 0&&Y.port===void 0&&Y.query===void 0&&!Y.path)Y.reference="same-document";else if(Y.scheme===void 0)Y.reference="relative";else if(Y.fragment===void 0)Y.reference="absolute";else Y.reference="uri";if(B.reference&&B.reference!=="suffix"&&B.reference!==Y.reference)Y.error=Y.error||"URI is not a "+B.reference+" reference.";let G=Bb[(B.scheme||Y.scheme||"").toLowerCase()];if(!B.unicodeSupport&&(!G||!G.unicodeSupport)){if(Y.host&&(B.domainHost||G&&G.domainHost)&&C===!1&&l5B(Y.host))try{Y.host=URL.domainToASCII(Y.host.toLowerCase())}catch(F){Y.error=Y.error||"Host's domain name can not be converted to ASCII: "+F}}if(!G||G&&!G.skipNormalize){if(J&&Y.scheme!==void 0)Y.scheme=unescape(Y.scheme);if(J&&Y.host!==void 0)Y.host=unescape(Y.host);if(Y.path)Y.path=escape(unescape(Y.path));if(Y.fragment)Y.fragment=encodeURI(decodeURIComponent(Y.fragment))}if(G&&G.parse)G.parse(Y,B)}else Y.error=Y.error||"URI can not be parsed.";return Y}var Yb={SCHEMES:Bb,normalize:m5B,resolve:u5B,resolveComponents:X4A,equal:d5B,serialize:p1,parse:hX};sR.exports=Yb;sR.exports.default=Yb;sR.exports.fastUri=Yb});var Z4A=R((W4A)=>{Object.defineProperty(W4A,"__esModule",{value:!0});var F4A=G4A();F4A.code='require("ajv/dist/runtime/uri").default';W4A.default=F4A});var D4A=R((gX)=>{Object.defineProperty(gX,"__esModule",{value:!0});gX.CodeGen=gX.Name=gX.nil=gX.stringify=gX.str=gX._=gX.KeywordCxt=void 0;var n5B=GD();Object.defineProperty(gX,"KeywordCxt",{enumerable:!0,get:function(){return n5B.KeywordCxt}});var GE=GB();Object.defineProperty(gX,"_",{enumerable:!0,get:function(){return GE._}});Object.defineProperty(gX,"str",{enumerable:!0,get:function(){return GE.str}});Object.defineProperty(gX,"stringify",{enumerable:!0,get:function(){return GE.stringify}});Object.defineProperty(gX,"nil",{enumerable:!0,get:function(){return GE.nil}});Object.defineProperty(gX,"Name",{enumerable:!0,get:function(){return GE.Name}});Object.defineProperty(gX,"CodeGen",{enumerable:!0,get:function(){return GE.CodeGen}});var s5B=cR(),V4A=FD(),r5B=gf(),$D=pR(),a5B=GB(),UD=JD(),rR=YD(),Cb=wB(),$4A=c$A(),o5B=Z4A(),I4A=(A,Q)=>new RegExp(A,Q);I4A.code="new RegExp";var t5B=["removeAdditional","useDefaults","coerceTypes"],e5B=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),ACB={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},QCB={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},U4A=200;function BCB(A){var Q,B,Y,J,C,X,G,F,W,Z,U,$,E,K,I,V,H,D,L,z,M,N,q,w,P;let _=A.strict,O=(Q=A.code)===null||Q===void 0?void 0:Q.optimize,k=O===!0||O===void 0?1:O||0,T=(Y=(B=A.code)===null||B===void 0?void 0:B.regExp)!==null&&Y!==void 0?Y:I4A,S=(J=A.uriResolver)!==null&&J!==void 0?J:o5B.default;return{strictSchema:(X=(C=A.strictSchema)!==null&&C!==void 0?C:_)!==null&&X!==void 0?X:!0,strictNumbers:(F=(G=A.strictNumbers)!==null&&G!==void 0?G:_)!==null&&F!==void 0?F:!0,strictTypes:(Z=(W=A.strictTypes)!==null&&W!==void 0?W:_)!==null&&Z!==void 0?Z:"log",strictTuples:($=(U=A.strictTuples)!==null&&U!==void 0?U:_)!==null&&$!==void 0?$:"log",strictRequired:(K=(E=A.strictRequired)!==null&&E!==void 0?E:_)!==null&&K!==void 0?K:!1,code:A.code?{...A.code,optimize:k,regExp:T}:{optimize:k,regExp:T},loopRequired:(I=A.loopRequired)!==null&&I!==void 0?I:U4A,loopEnum:(V=A.loopEnum)!==null&&V!==void 0?V:U4A,meta:(H=A.meta)!==null&&H!==void 0?H:!0,messages:(D=A.messages)!==null&&D!==void 0?D:!0,inlineRefs:(L=A.inlineRefs)!==null&&L!==void 0?L:!0,schemaId:(z=A.schemaId)!==null&&z!==void 0?z:"$id",addUsedSchema:(M=A.addUsedSchema)!==null&&M!==void 0?M:!0,validateSchema:(N=A.validateSchema)!==null&&N!==void 0?N:!0,validateFormats:(q=A.validateFormats)!==null&&q!==void 0?q:!0,unicodeRegExp:(w=A.unicodeRegExp)!==null&&w!==void 0?w:!0,int32range:(P=A.int32range)!==null&&P!==void 0?P:!0,uriResolver:S}}class aR{constructor(A={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,A=this.opts={...A,...BCB(A)};let{es5:Q,lines:B}=this.opts.code;this.scope=new a5B.ValueScope({scope:{},prefixes:e5B,es5:Q,lines:B}),this.logger=FCB(A.logger);let Y=A.validateFormats;if(A.validateFormats=!1,this.RULES=(0,r5B.getRules)(),E4A.call(this,ACB,A,"NOT SUPPORTED"),E4A.call(this,QCB,A,"DEPRECATED","warn"),this._metaOpts=XCB.call(this),A.formats)JCB.call(this);if(this._addVocabularies(),this._addDefaultMetaSchema(),A.keywords)CCB.call(this,A.keywords);if(typeof A.meta=="object")this.addMetaSchema(A.meta);YCB.call(this),A.validateFormats=Y}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:A,meta:Q,schemaId:B}=this.opts,Y=$4A;if(B==="id")Y={...$4A},Y.id=Y.$id,delete Y.$id;if(Q&&A)this.addMetaSchema(Y,Y[B],!1)}defaultMeta(){let{meta:A,schemaId:Q}=this.opts;return this.opts.defaultMeta=typeof A=="object"?A[Q]||A:void 0}validate(A,Q){let B;if(typeof A=="string"){if(B=this.getSchema(A),!B)throw Error(`no schema with key or ref "${A}"`)}else B=this.compile(A);let Y=B(Q);if(!("$async"in B))this.errors=B.errors;return Y}compile(A,Q){let B=this._addSchema(A,Q);return B.validate||this._compileSchemaEnv(B)}compileAsync(A,Q){if(typeof this.opts.loadSchema!="function")throw Error("options.loadSchema should be a function");let{loadSchema:B}=this.opts;return Y.call(this,A,Q);async function Y(W,Z){await J.call(this,W.$schema);let U=this._addSchema(W,Z);return U.validate||C.call(this,U)}async function J(W){if(W&&!this.getSchema(W))await Y.call(this,{$ref:W},!0)}async function C(W){try{return this._compileSchemaEnv(W)}catch(Z){if(!(Z instanceof V4A.default))throw Z;return X.call(this,Z),await G.call(this,Z.missingSchema),C.call(this,W)}}function X({missingSchema:W,missingRef:Z}){if(this.refs[W])throw Error(`AnySchema ${W} is loaded but ${Z} cannot be resolved`)}async function G(W){let Z=await F.call(this,W);if(!this.refs[W])await J.call(this,Z.$schema);if(!this.refs[W])this.addSchema(Z,W,Q)}async function F(W){let Z=this._loading[W];if(Z)return Z;try{return await(this._loading[W]=B(W))}finally{delete this._loading[W]}}}addSchema(A,Q,B,Y=this.opts.validateSchema){if(Array.isArray(A)){for(let C of A)this.addSchema(C,void 0,B,Y);return this}let J;if(typeof A==="object"){let{schemaId:C}=this.opts;if(J=A[C],J!==void 0&&typeof J!="string")throw Error(`schema ${C} must be string`)}return Q=(0,UD.normalizeId)(Q||J),this._checkUnique(Q),this.schemas[Q]=this._addSchema(A,B,Q,Y,!0),this}addMetaSchema(A,Q,B=this.opts.validateSchema){return this.addSchema(A,Q,!0,B),this}validateSchema(A,Q){if(typeof A=="boolean")return!0;let B;if(B=A.$schema,B!==void 0&&typeof B!="string")throw Error("$schema must be a string");if(B=B||this.opts.defaultMeta||this.defaultMeta(),!B)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let Y=this.validate(B,A);if(!Y&&Q){let J="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(J);else throw Error(J)}return Y}getSchema(A){let Q;while(typeof(Q=K4A.call(this,A))=="string")A=Q;if(Q===void 0){let{schemaId:B}=this.opts,Y=new $D.SchemaEnv({schema:{},schemaId:B});if(Q=$D.resolveSchema.call(this,Y,A),!Q)return;this.refs[A]=Q}return Q.validate||this._compileSchemaEnv(Q)}removeSchema(A){if(A instanceof RegExp)return this._removeAllSchemas(this.schemas,A),this._removeAllSchemas(this.refs,A),this;switch(typeof A){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let Q=K4A.call(this,A);if(typeof Q=="object")this._cache.delete(Q.schema);return delete this.schemas[A],delete this.refs[A],this}case"object":{let Q=A;this._cache.delete(Q);let B=A[this.opts.schemaId];if(B)B=(0,UD.normalizeId)(B),delete this.schemas[B],delete this.refs[B];return this}default:throw Error("ajv.removeSchema: invalid parameter")}}addVocabulary(A){for(let Q of A)this.addKeyword(Q);return this}addKeyword(A,Q){let B;if(typeof A=="string"){if(B=A,typeof Q=="object")this.logger.warn("these parameters are deprecated, see docs for addKeyword"),Q.keyword=B}else if(typeof A=="object"&&Q===void 0){if(Q=A,B=Q.keyword,Array.isArray(B)&&!B.length)throw Error("addKeywords: keyword must be string or non-empty array")}else throw Error("invalid addKeywords parameters");if(ZCB.call(this,B,Q),!Q)return(0,Cb.eachItem)(B,(J)=>Jb.call(this,J)),this;UCB.call(this,Q);let Y={...Q,type:(0,rR.getJSONTypes)(Q.type),schemaType:(0,rR.getJSONTypes)(Q.schemaType)};return(0,Cb.eachItem)(B,Y.type.length===0?(J)=>Jb.call(this,J,Y):(J)=>Y.type.forEach((C)=>Jb.call(this,J,Y,C))),this}getKeyword(A){let Q=this.RULES.all[A];return typeof Q=="object"?Q.definition:!!Q}removeKeyword(A){let{RULES:Q}=this;delete Q.keywords[A],delete Q.all[A];for(let B of Q.rules){let Y=B.rules.findIndex((J)=>J.keyword===A);if(Y>=0)B.rules.splice(Y,1)}return this}addFormat(A,Q){if(typeof Q=="string")Q=new RegExp(Q);return this.formats[A]=Q,this}errorsText(A=this.errors,{separator:Q=", ",dataVar:B="data"}={}){if(!A||A.length===0)return"No errors";return A.map((Y)=>`${B}${Y.instancePath} ${Y.message}`).reduce((Y,J)=>Y+Q+J)}$dataMetaSchema(A,Q){let B=this.RULES.all;A=JSON.parse(JSON.stringify(A));for(let Y of Q){let J=Y.split("/").slice(1),C=A;for(let X of J)C=C[X];for(let X in B){let G=B[X];if(typeof G!="object")continue;let{$data:F}=G.definition,W=C[X];if(F&&W)C[X]=H4A(W)}}return A}_removeAllSchemas(A,Q){for(let B in A){let Y=A[B];if(!Q||Q.test(B)){if(typeof Y=="string")delete A[B];else if(Y&&!Y.meta)this._cache.delete(Y.schema),delete A[B]}}}_addSchema(A,Q,B,Y=this.opts.validateSchema,J=this.opts.addUsedSchema){let C,{schemaId:X}=this.opts;if(typeof A=="object")C=A[X];else if(this.opts.jtd)throw Error("schema must be object");else if(typeof A!="boolean")throw Error("schema must be object or boolean");let G=this._cache.get(A);if(G!==void 0)return G;B=(0,UD.normalizeId)(C||B);let F=UD.getSchemaRefs.call(this,A,B);if(G=new $D.SchemaEnv({schema:A,schemaId:X,meta:Q,baseId:B,localRefs:F}),this._cache.set(G.schema,G),J&&!B.startsWith("#")){if(B)this._checkUnique(B);this.refs[B]=G}if(Y)this.validateSchema(A,!0);return G}_checkUnique(A){if(this.schemas[A]||this.refs[A])throw Error(`schema with key or id "${A}" already exists`)}_compileSchemaEnv(A){if(A.meta)this._compileMetaSchema(A);else $D.compileSchema.call(this,A);if(!A.validate)throw Error("ajv implementation error");return A.validate}_compileMetaSchema(A){let Q=this.opts;this.opts=this._metaOpts;try{$D.compileSchema.call(this,A)}finally{this.opts=Q}}}aR.ValidationError=s5B.default;aR.MissingRefError=V4A.default;gX.default=aR;function E4A(A,Q,B,Y="error"){for(let J in A){let C=J;if(C in Q)this.logger[Y](`${B}: option ${J}. ${A[C]}`)}}function K4A(A){return A=(0,UD.normalizeId)(A),this.schemas[A]||this.refs[A]}function YCB(){let A=this.opts.schemas;if(!A)return;if(Array.isArray(A))this.addSchema(A);else for(let Q in A)this.addSchema(A[Q],Q)}function JCB(){for(let A in this.opts.formats){let Q=this.opts.formats[A];if(Q)this.addFormat(A,Q)}}function CCB(A){if(Array.isArray(A)){this.addVocabulary(A);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let Q in A){let B=A[Q];if(!B.keyword)B.keyword=Q;this.addKeyword(B)}}function XCB(){let A={...this.opts};for(let Q of t5B)delete A[Q];return A}var GCB={log(){},warn(){},error(){}};function FCB(A){if(A===!1)return GCB;if(A===void 0)return console;if(A.log&&A.warn&&A.error)return A;throw Error("logger must implement log, warn and error methods")}var WCB=/^[a-z_$][a-z0-9_$:-]*$/i;function ZCB(A,Q){let{RULES:B}=this;if((0,Cb.eachItem)(A,(Y)=>{if(B.keywords[Y])throw Error(`Keyword ${Y} is already defined`);if(!WCB.test(Y))throw Error(`Keyword ${Y} has invalid name`)}),!Q)return;if(Q.$data&&!(("code"in Q)||("validate"in Q)))throw Error('$data keyword must have "code" or "validate" function')}function Jb(A,Q,B){var Y;let J=Q===null||Q===void 0?void 0:Q.post;if(B&&J)throw Error('keyword with "post" flag cannot have "type"');let{RULES:C}=this,X=J?C.post:C.rules.find(({type:F})=>F===B);if(!X)X={type:B,rules:[]},C.rules.push(X);if(C.keywords[A]=!0,!Q)return;let G={keyword:A,definition:{...Q,type:(0,rR.getJSONTypes)(Q.type),schemaType:(0,rR.getJSONTypes)(Q.schemaType)}};if(Q.before)$CB.call(this,X,G,Q.before);else X.rules.push(G);C.all[A]=G,(Y=Q.implements)===null||Y===void 0||Y.forEach((F)=>this.addKeyword(F))}function $CB(A,Q,B){let Y=A.rules.findIndex((J)=>J.keyword===B);if(Y>=0)A.rules.splice(Y,0,Q);else A.rules.push(Q),this.logger.warn(`rule ${B} is not defined`)}function UCB(A){let{metaSchema:Q}=A;if(Q===void 0)return;if(A.$data&&this.opts.$data)Q=H4A(Q);A.validateSchema=this.compile(Q,!0)}var ECB={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function H4A(A){return{anyOf:[A,ECB]}}});var L4A=R((N4A)=>{Object.defineProperty(N4A,"__esModule",{value:!0});var ICB={keyword:"id",code(){throw Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};N4A.default=ICB});var j4A=R((R4A)=>{Object.defineProperty(R4A,"__esModule",{value:!0});R4A.callRef=R4A.getValidate=void 0;var DCB=FD(),q4A=I5(),v9=GB(),FE=vX(),M4A=pR(),oR=wB(),NCB={keyword:"$ref",schemaType:"string",code(A){let{gen:Q,schema:B,it:Y}=A,{baseId:J,schemaEnv:C,validateName:X,opts:G,self:F}=Y,{root:W}=C;if((B==="#"||B==="#/")&&J===W.baseId)return U();let Z=M4A.resolveRef.call(F,W,J,B);if(Z===void 0)throw new DCB.default(Y.opts.uriResolver,J,B);if(Z instanceof M4A.SchemaEnv)return $(Z);return E(Z);function U(){if(C===W)return tR(A,X,C,C.$async);let K=Q.scopeValue("root",{ref:W});return tR(A,v9._`${K}.validate`,W,W.$async)}function $(K){let I=z4A(A,K);tR(A,I,K,K.$async)}function E(K){let I=Q.scopeValue("schema",G.code.source===!0?{ref:K,code:(0,v9.stringify)(K)}:{ref:K}),V=Q.name("valid"),H=A.subschema({schema:K,dataTypes:[],schemaPath:v9.nil,topSchemaRef:I,errSchemaPath:B},V);A.mergeEvaluated(H),A.ok(V)}}};function z4A(A,Q){let{gen:B}=A;return Q.validate?B.scopeValue("validate",{ref:Q.validate}):v9._`${B.scopeValue("wrapper",{ref:Q})}.validate`}R4A.getValidate=z4A;function tR(A,Q,B,Y){let{gen:J,it:C}=A,{allErrors:X,schemaEnv:G,opts:F}=C,W=F.passContext?FE.default.this:v9.nil;if(Y)Z();else U();function Z(){if(!G.$async)throw Error("async schema referenced by sync schema");let K=J.let("valid");J.try(()=>{if(J.code(v9._`await ${(0,q4A.callValidateCode)(A,Q,W)}`),E(Q),!X)J.assign(K,!0)},(I)=>{if(J.if(v9._`!(${I} instanceof ${C.ValidationError})`,()=>J.throw(I)),$(I),!X)J.assign(K,!1)}),A.ok(K)}function U(){A.result((0,q4A.callValidateCode)(A,Q,W),()=>E(Q),()=>$(Q))}function $(K){let I=v9._`${K}.errors`;J.assign(FE.default.vErrors,v9._`${FE.default.vErrors} === null ? ${I} : ${FE.default.vErrors}.concat(${I})`),J.assign(FE.default.errors,v9._`${FE.default.vErrors}.length`)}function E(K){var I;if(!C.opts.unevaluated)return;let V=(I=B===null||B===void 0?void 0:B.validate)===null||I===void 0?void 0:I.evaluated;if(C.props!==!0)if(V&&!V.dynamicProps){if(V.props!==void 0)C.props=oR.mergeEvaluated.props(J,V.props,C.props)}else{let H=J.var("props",v9._`${K}.evaluated.props`);C.props=oR.mergeEvaluated.props(J,H,C.props,v9.Name)}if(C.items!==!0)if(V&&!V.dynamicItems){if(V.items!==void 0)C.items=oR.mergeEvaluated.items(J,V.items,C.items)}else{let H=J.var("items",v9._`${K}.evaluated.items`);C.items=oR.mergeEvaluated.items(J,H,C.items,v9.Name)}}}R4A.callRef=tR;R4A.default=NCB});var P4A=R((O4A)=>{Object.defineProperty(O4A,"__esModule",{value:!0});var MCB=L4A(),zCB=j4A(),RCB=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",MCB.default,zCB.default];O4A.default=RCB});var S4A=R((T4A)=>{Object.defineProperty(T4A,"__esModule",{value:!0});var eR=GB(),y7=eR.operators,Aw={maximum:{okStr:"<=",ok:y7.LTE,fail:y7.GT},minimum:{okStr:">=",ok:y7.GTE,fail:y7.LT},exclusiveMaximum:{okStr:"<",ok:y7.LT,fail:y7.GTE},exclusiveMinimum:{okStr:">",ok:y7.GT,fail:y7.LTE}},jCB={message:({keyword:A,schemaCode:Q})=>eR.str`must be ${Aw[A].okStr} ${Q}`,params:({keyword:A,schemaCode:Q})=>eR._`{comparison: ${Aw[A].okStr}, limit: ${Q}}`},OCB={keyword:Object.keys(Aw),type:"number",schemaType:"number",$data:!0,error:jCB,code(A){let{keyword:Q,data:B,schemaCode:Y}=A;A.fail$data(eR._`${B} ${Aw[Q].fail} ${Y} || isNaN(${B})`)}};T4A.default=OCB});var _4A=R((k4A)=>{Object.defineProperty(k4A,"__esModule",{value:!0});var ED=GB(),TCB={message:({schemaCode:A})=>ED.str`must be multiple of ${A}`,params:({schemaCode:A})=>ED._`{multipleOf: ${A}}`},SCB={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:TCB,code(A){let{gen:Q,data:B,schemaCode:Y,it:J}=A,C=J.opts.multipleOfPrecision,X=Q.let("res"),G=C?ED._`Math.abs(Math.round(${X}) - ${X}) > 1e-${C}`:ED._`${X} !== parseInt(${X})`;A.fail$data(ED._`(${Y} === 0 || (${X} = ${B}/${Y}, ${G}))`)}};k4A.default=SCB});var h4A=R((y4A)=>{Object.defineProperty(y4A,"__esModule",{value:!0});function v4A(A){let Q=A.length,B=0,Y=0,J;while(Y=55296&&J<=56319&&Y{Object.defineProperty(g4A,"__esModule",{value:!0});var FZ=GB(),vCB=wB(),yCB=h4A(),hCB={message({keyword:A,schemaCode:Q}){let B=A==="maxLength"?"more":"fewer";return FZ.str`must NOT have ${B} than ${Q} characters`},params:({schemaCode:A})=>FZ._`{limit: ${A}}`},gCB={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:hCB,code(A){let{keyword:Q,data:B,schemaCode:Y,it:J}=A,C=Q==="maxLength"?FZ.operators.GT:FZ.operators.LT,X=J.opts.unicode===!1?FZ._`${B}.length`:FZ._`${(0,vCB.useFunc)(A.gen,yCB.default)}(${B})`;A.fail$data(FZ._`${X} ${C} ${Y}`)}};g4A.default=gCB});var b4A=R((f4A)=>{Object.defineProperty(f4A,"__esModule",{value:!0});var fCB=I5(),Qw=GB(),bCB={message:({schemaCode:A})=>Qw.str`must match pattern "${A}"`,params:({schemaCode:A})=>Qw._`{pattern: ${A}}`},mCB={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:bCB,code(A){let{data:Q,$data:B,schema:Y,schemaCode:J,it:C}=A,X=C.opts.unicodeRegExp?"u":"",G=B?Qw._`(new RegExp(${J}, ${X}))`:(0,fCB.usePattern)(A,Y);A.fail$data(Qw._`!${G}.test(${Q})`)}};f4A.default=mCB});var u4A=R((m4A)=>{Object.defineProperty(m4A,"__esModule",{value:!0});var KD=GB(),dCB={message({keyword:A,schemaCode:Q}){let B=A==="maxProperties"?"more":"fewer";return KD.str`must NOT have ${B} than ${Q} properties`},params:({schemaCode:A})=>KD._`{limit: ${A}}`},cCB={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:dCB,code(A){let{keyword:Q,data:B,schemaCode:Y}=A,J=Q==="maxProperties"?KD.operators.GT:KD.operators.LT;A.fail$data(KD._`Object.keys(${B}).length ${J} ${Y}`)}};m4A.default=cCB});var c4A=R((d4A)=>{Object.defineProperty(d4A,"__esModule",{value:!0});var VD=I5(),ID=GB(),pCB=wB(),iCB={message:({params:{missingProperty:A}})=>ID.str`must have required property '${A}'`,params:({params:{missingProperty:A}})=>ID._`{missingProperty: ${A}}`},nCB={keyword:"required",type:"object",schemaType:"array",$data:!0,error:iCB,code(A){let{gen:Q,schema:B,schemaCode:Y,data:J,$data:C,it:X}=A,{opts:G}=X;if(!C&&B.length===0)return;let F=B.length>=G.loopRequired;if(X.allErrors)W();else Z();if(G.strictRequired){let E=A.parentSchema.properties,{definedProperties:K}=A.it;for(let I of B)if((E===null||E===void 0?void 0:E[I])===void 0&&!K.has(I)){let V=X.schemaEnv.baseId+X.errSchemaPath,H=`required property "${I}" is not defined at "${V}" (strictRequired)`;(0,pCB.checkStrictMode)(X,H,X.opts.strictRequired)}}function W(){if(F||C)A.block$data(ID.nil,U);else for(let E of B)(0,VD.checkReportMissingProp)(A,E)}function Z(){let E=Q.let("missing");if(F||C){let K=Q.let("valid",!0);A.block$data(K,()=>$(E,K)),A.ok(K)}else Q.if((0,VD.checkMissingProp)(A,B,E)),(0,VD.reportMissingProp)(A,E),Q.else()}function U(){Q.forOf("prop",Y,(E)=>{A.setParams({missingProperty:E}),Q.if((0,VD.noPropertyInData)(Q,J,E,G.ownProperties),()=>A.error())})}function $(E,K){A.setParams({missingProperty:E}),Q.forOf(E,Y,()=>{Q.assign(K,(0,VD.propertyInData)(Q,J,E,G.ownProperties)),Q.if((0,ID.not)(K),()=>{A.error(),Q.break()})},ID.nil)}}};d4A.default=nCB});var p4A=R((l4A)=>{Object.defineProperty(l4A,"__esModule",{value:!0});var HD=GB(),rCB={message({keyword:A,schemaCode:Q}){let B=A==="maxItems"?"more":"fewer";return HD.str`must NOT have ${B} than ${Q} items`},params:({schemaCode:A})=>HD._`{limit: ${A}}`},aCB={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:rCB,code(A){let{keyword:Q,data:B,schemaCode:Y}=A,J=Q==="maxItems"?HD.operators.GT:HD.operators.LT;A.fail$data(HD._`${B}.length ${J} ${Y}`)}};l4A.default=aCB});var Bw=R((n4A)=>{Object.defineProperty(n4A,"__esModule",{value:!0});var i4A=lf();i4A.code='require("ajv/dist/runtime/equal").default';n4A.default=i4A});var r4A=R((s4A)=>{Object.defineProperty(s4A,"__esModule",{value:!0});var Xb=YD(),CJ=GB(),eCB=wB(),A1B=Bw(),Q1B={message:({params:{i:A,j:Q}})=>CJ.str`must NOT have duplicate items (items ## ${Q} and ${A} are identical)`,params:({params:{i:A,j:Q}})=>CJ._`{i: ${A}, j: ${Q}}`},B1B={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:Q1B,code(A){let{gen:Q,data:B,$data:Y,schema:J,parentSchema:C,schemaCode:X,it:G}=A;if(!Y&&!J)return;let F=Q.let("valid"),W=C.items?(0,Xb.getSchemaTypes)(C.items):[];A.block$data(F,Z,CJ._`${X} === false`),A.ok(F);function Z(){let K=Q.let("i",CJ._`${B}.length`),I=Q.let("j");A.setParams({i:K,j:I}),Q.assign(F,!0),Q.if(CJ._`${K} > 1`,()=>(U()?$:E)(K,I))}function U(){return W.length>0&&!W.some((K)=>K==="object"||K==="array")}function $(K,I){let V=Q.name("item"),H=(0,Xb.checkDataTypes)(W,V,G.opts.strictNumbers,Xb.DataType.Wrong),D=Q.const("indices",CJ._`{}`);Q.for(CJ._`;${K}--;`,()=>{if(Q.let(V,CJ._`${B}[${K}]`),Q.if(H,CJ._`continue`),W.length>1)Q.if(CJ._`typeof ${V} == "string"`,CJ._`${V} += "_"`);Q.if(CJ._`typeof ${D}[${V}] == "number"`,()=>{Q.assign(I,CJ._`${D}[${V}]`),A.error(),Q.assign(F,!1).break()}).code(CJ._`${D}[${V}] = ${K}`)})}function E(K,I){let V=(0,eCB.useFunc)(Q,A1B.default),H=Q.name("outer");Q.label(H).for(CJ._`;${K}--;`,()=>Q.for(CJ._`${I} = ${K}; ${I}--;`,()=>Q.if(CJ._`${V}(${B}[${K}], ${B}[${I}])`,()=>{A.error(),Q.assign(F,!1).break(H)})))}}};s4A.default=B1B});var o4A=R((a4A)=>{Object.defineProperty(a4A,"__esModule",{value:!0});var Gb=GB(),J1B=wB(),C1B=Bw(),X1B={message:"must be equal to constant",params:({schemaCode:A})=>Gb._`{allowedValue: ${A}}`},G1B={keyword:"const",$data:!0,error:X1B,code(A){let{gen:Q,data:B,$data:Y,schemaCode:J,schema:C}=A;if(Y||C&&typeof C=="object")A.fail$data(Gb._`!${(0,J1B.useFunc)(Q,C1B.default)}(${B}, ${J})`);else A.fail(Gb._`${C} !== ${B}`)}};a4A.default=G1B});var e4A=R((t4A)=>{Object.defineProperty(t4A,"__esModule",{value:!0});var DD=GB(),W1B=wB(),Z1B=Bw(),$1B={message:"must be equal to one of the allowed values",params:({schemaCode:A})=>DD._`{allowedValues: ${A}}`},U1B={keyword:"enum",schemaType:"array",$data:!0,error:$1B,code(A){let{gen:Q,data:B,$data:Y,schema:J,schemaCode:C,it:X}=A;if(!Y&&J.length===0)throw Error("enum must have non-empty array");let G=J.length>=X.opts.loopEnum,F,W=()=>F!==null&&F!==void 0?F:F=(0,W1B.useFunc)(Q,Z1B.default),Z;if(G||Y)Z=Q.let("valid"),A.block$data(Z,U);else{if(!Array.isArray(J))throw Error("ajv implementation error");let E=Q.const("vSchema",C);Z=(0,DD.or)(...J.map((K,I)=>$(E,I)))}A.pass(Z);function U(){Q.assign(Z,!1),Q.forOf("v",C,(E)=>Q.if(DD._`${W()}(${B}, ${E})`,()=>Q.assign(Z,!0).break()))}function $(E,K){let I=J[K];return typeof I==="object"&&I!==null?DD._`${W()}(${B}, ${E}[${K}])`:DD._`${B} === ${I}`}}};t4A.default=U1B});var QUA=R((AUA)=>{Object.defineProperty(AUA,"__esModule",{value:!0});var K1B=S4A(),V1B=_4A(),I1B=x4A(),H1B=b4A(),D1B=u4A(),N1B=c4A(),L1B=p4A(),q1B=r4A(),M1B=o4A(),z1B=e4A(),R1B=[K1B.default,V1B.default,I1B.default,H1B.default,D1B.default,N1B.default,L1B.default,q1B.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},M1B.default,z1B.default];AUA.default=R1B});var Wb=R((YUA)=>{Object.defineProperty(YUA,"__esModule",{value:!0});YUA.validateAdditionalItems=void 0;var WZ=GB(),Fb=wB(),j1B={message:({params:{len:A}})=>WZ.str`must NOT have more than ${A} items`,params:({params:{len:A}})=>WZ._`{limit: ${A}}`},O1B={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:j1B,code(A){let{parentSchema:Q,it:B}=A,{items:Y}=Q;if(!Array.isArray(Y)){(0,Fb.checkStrictMode)(B,'"additionalItems" is ignored when "items" is not an array of schemas');return}BUA(A,Y)}};function BUA(A,Q){let{gen:B,schema:Y,data:J,keyword:C,it:X}=A;X.items=!0;let G=B.const("len",WZ._`${J}.length`);if(Y===!1)A.setParams({len:Q.length}),A.pass(WZ._`${G} <= ${Q.length}`);else if(typeof Y=="object"&&!(0,Fb.alwaysValidSchema)(X,Y)){let W=B.var("valid",WZ._`${G} <= ${Q.length}`);B.if((0,WZ.not)(W),()=>F(W)),A.ok(W)}function F(W){B.forRange("i",Q.length,G,(Z)=>{if(A.subschema({keyword:C,dataProp:Z,dataPropType:Fb.Type.Num},W),!X.allErrors)B.if((0,WZ.not)(W),()=>B.break())})}}YUA.validateAdditionalItems=BUA;YUA.default=O1B});var Zb=R((GUA)=>{Object.defineProperty(GUA,"__esModule",{value:!0});GUA.validateTuple=void 0;var CUA=GB(),Yw=wB(),T1B=I5(),S1B={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(A){let{schema:Q,it:B}=A;if(Array.isArray(Q))return XUA(A,"additionalItems",Q);if(B.items=!0,(0,Yw.alwaysValidSchema)(B,Q))return;A.ok((0,T1B.validateArray)(A))}};function XUA(A,Q,B=A.schema){let{gen:Y,parentSchema:J,data:C,keyword:X,it:G}=A;if(Z(J),G.opts.unevaluated&&B.length&&G.items!==!0)G.items=Yw.mergeEvaluated.items(Y,B.length,G.items);let F=Y.name("valid"),W=Y.const("len",CUA._`${C}.length`);B.forEach((U,$)=>{if((0,Yw.alwaysValidSchema)(G,U))return;Y.if(CUA._`${W} > ${$}`,()=>A.subschema({keyword:X,schemaProp:$,dataProp:$},F)),A.ok(F)});function Z(U){let{opts:$,errSchemaPath:E}=G,K=B.length,I=K===U.minItems&&(K===U.maxItems||U[Q]===!1);if($.strictTuples&&!I){let V=`"${X}" is ${K}-tuple, but minItems or maxItems/${Q} are not specified or different at path "${E}"`;(0,Yw.checkStrictMode)(G,V,$.strictTuples)}}}GUA.validateTuple=XUA;GUA.default=S1B});var ZUA=R((WUA)=>{Object.defineProperty(WUA,"__esModule",{value:!0});var _1B=Zb(),v1B={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:(A)=>(0,_1B.validateTuple)(A,"items")};WUA.default=v1B});var EUA=R((UUA)=>{Object.defineProperty(UUA,"__esModule",{value:!0});var $UA=GB(),h1B=wB(),g1B=I5(),x1B=Wb(),f1B={message:({params:{len:A}})=>$UA.str`must NOT have more than ${A} items`,params:({params:{len:A}})=>$UA._`{limit: ${A}}`},b1B={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:f1B,code(A){let{schema:Q,parentSchema:B,it:Y}=A,{prefixItems:J}=B;if(Y.items=!0,(0,h1B.alwaysValidSchema)(Y,Q))return;if(J)(0,x1B.validateAdditionalItems)(A,J);else A.ok((0,g1B.validateArray)(A))}};UUA.default=b1B});var VUA=R((KUA)=>{Object.defineProperty(KUA,"__esModule",{value:!0});var H5=GB(),Jw=wB(),u1B={message:({params:{min:A,max:Q}})=>Q===void 0?H5.str`must contain at least ${A} valid item(s)`:H5.str`must contain at least ${A} and no more than ${Q} valid item(s)`,params:({params:{min:A,max:Q}})=>Q===void 0?H5._`{minContains: ${A}}`:H5._`{minContains: ${A}, maxContains: ${Q}}`},d1B={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:u1B,code(A){let{gen:Q,schema:B,parentSchema:Y,data:J,it:C}=A,X,G,{minContains:F,maxContains:W}=Y;if(C.opts.next)X=F===void 0?1:F,G=W;else X=1;let Z=Q.const("len",H5._`${J}.length`);if(A.setParams({min:X,max:G}),G===void 0&&X===0){(0,Jw.checkStrictMode)(C,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(G!==void 0&&X>G){(0,Jw.checkStrictMode)(C,'"minContains" > "maxContains" is always invalid'),A.fail();return}if((0,Jw.alwaysValidSchema)(C,B)){let I=H5._`${Z} >= ${X}`;if(G!==void 0)I=H5._`${I} && ${Z} <= ${G}`;A.pass(I);return}C.items=!0;let U=Q.name("valid");if(G===void 0&&X===1)E(U,()=>Q.if(U,()=>Q.break()));else if(X===0){if(Q.let(U,!0),G!==void 0)Q.if(H5._`${J}.length > 0`,$)}else Q.let(U,!1),$();A.result(U,()=>A.reset());function $(){let I=Q.name("_valid"),V=Q.let("count",0);E(I,()=>Q.if(I,()=>K(V)))}function E(I,V){Q.forRange("i",0,Z,(H)=>{A.subschema({keyword:"contains",dataProp:H,dataPropType:Jw.Type.Num,compositeRule:!0},I),V()})}function K(I){if(Q.code(H5._`${I}++`),G===void 0)Q.if(H5._`${I} >= ${X}`,()=>Q.assign(U,!0).break());else if(Q.if(H5._`${I} > ${G}`,()=>Q.assign(U,!1).break()),X===1)Q.assign(U,!0);else Q.if(H5._`${I} >= ${X}`,()=>Q.assign(U,!0))}}};KUA.default=d1B});var qUA=R((DUA)=>{Object.defineProperty(DUA,"__esModule",{value:!0});DUA.validateSchemaDeps=DUA.validatePropertyDeps=DUA.error=void 0;var $b=GB(),l1B=wB(),ND=I5();DUA.error={message:({params:{property:A,depsCount:Q,deps:B}})=>{let Y=Q===1?"property":"properties";return $b.str`must have ${Y} ${B} when property ${A} is present`},params:({params:{property:A,depsCount:Q,deps:B,missingProperty:Y}})=>$b._`{property: ${A}, + || ${X} === "boolean" || ${J} === null`).assign(G,aQ._`[${J}]`)}}}function L8B({gen:A,parentData:Q,parentDataProperty:B},Y){A.if(aQ._`${Q} !== undefined`,()=>A.assign(aQ._`${Q}[${B}]`,Y))}function Zb(A,Q,B,Y=UE.Correct){let J=Y===UE.Correct?aQ.operators.EQ:aQ.operators.NEQ,C;switch(A){case"null":return aQ._`${Q} ${J} null`;case"array":C=aQ._`Array.isArray(${Q})`;break;case"object":C=aQ._`${Q} && typeof ${Q} == "object" && !Array.isArray(${Q})`;break;case"integer":C=X(aQ._`!(${Q} % 1) && !isNaN(${Q})`);break;case"number":C=X();break;default:return aQ._`typeof ${Q} ${J} ${A}`}return Y===UE.Correct?C:(0,aQ.not)(C);function X(G=aQ.nil){return(0,aQ.and)(aQ._`typeof ${Q} == "number"`,G,B?aQ._`isFinite(${Q})`:aQ.nil)}}v$A.checkDataType=Zb;function $b(A,Q,B,Y){if(A.length===1)return Zb(A[0],Q,B,Y);let J,C=(0,S$A.toHash)(A);if(C.array&&C.object){let X=aQ._`typeof ${Q} != "object"`;J=C.null?X:aQ._`!${Q} || ${X}`,delete C.null,delete C.array,delete C.object}else J=aQ.nil;if(C.number)delete C.integer;for(let X in C)J=(0,aQ.and)(J,Zb(X,Q,B,Y));return J}v$A.checkDataTypes=$b;var q8B={message:({schema:A})=>`must be ${A}`,params:({schema:A,schemaValue:Q})=>typeof A=="string"?aQ._`{type: ${A}}`:aQ._`{type: ${Q}}`};function Ub(A){let Q=M8B(A);(0,V8B.reportError)(Q,q8B)}v$A.reportTypeError=Ub;function M8B(A){let{gen:Q,data:B,schema:Y}=A,J=(0,S$A.schemaRefOrVal)(A,Y,"type");return{gen:Q,keyword:"type",data:B,schema:Y.type,schemaCode:J,schemaValue:J,parentSchema:Y,params:{},it:A}}});var f$A=R((h$A)=>{Object.defineProperty(h$A,"__esModule",{value:!0});h$A.assignDefaults=void 0;var EE=GB(),T8B=wB();function S8B(A,Q){let{properties:B,items:Y}=A.schema;if(Q==="object"&&B)for(let J in B)g$A(A,J,B[J].default);else if(Q==="array"&&Array.isArray(Y))Y.forEach((J,C)=>g$A(A,C,J.default))}h$A.assignDefaults=S8B;function g$A(A,Q,B){let{gen:Y,compositeRule:J,data:C,opts:X}=A;if(B===void 0)return;let G=EE._`${C}${(0,EE.getProperty)(Q)}`;if(J){(0,T8B.checkStrictMode)(A,`default is ignored for: ${G}`);return}let W=EE._`${G} === undefined`;if(X.useDefaults==="empty")W=EE._`${W} || ${G} === null || ${G} === ""`;Y.if(W,EE._`${G} = ${(0,EE.stringify)(B)}`)}});var w5=R((u$A)=>{Object.defineProperty(u$A,"__esModule",{value:!0});u$A.validateUnion=u$A.validateArray=u$A.usePattern=u$A.callValidateCode=u$A.schemaProperties=u$A.allSchemaProperties=u$A.noPropertyInData=u$A.propertyInData=u$A.isOwnProperty=u$A.hasPropFunc=u$A.reportMissingProp=u$A.checkMissingProp=u$A.checkReportMissingProp=void 0;var E0=GB(),Eb=wB(),m7=u6(),k8B=wB();function _8B(A,Q){let{gen:B,data:Y,it:J}=A;B.if(Vb(B,Y,Q,J.opts.ownProperties),()=>{A.setParams({missingProperty:E0._`${Q}`},!0),A.error()})}u$A.checkReportMissingProp=_8B;function v8B({gen:A,data:Q,it:{opts:B}},Y,J){return(0,E0.or)(...Y.map((C)=>(0,E0.and)(Vb(A,Q,C,B.ownProperties),E0._`${J} = ${C}`)))}u$A.checkMissingProp=v8B;function y8B(A,Q){A.setParams({missingProperty:Q},!0),A.error()}u$A.reportMissingProp=y8B;function b$A(A){return A.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:E0._`Object.prototype.hasOwnProperty`})}u$A.hasPropFunc=b$A;function Kb(A,Q,B){return E0._`${b$A(A)}.call(${Q}, ${B})`}u$A.isOwnProperty=Kb;function g8B(A,Q,B,Y){let J=E0._`${Q}${(0,E0.getProperty)(B)} !== undefined`;return Y?E0._`${J} && ${Kb(A,Q,B)}`:J}u$A.propertyInData=g8B;function Vb(A,Q,B,Y){let J=E0._`${Q}${(0,E0.getProperty)(B)} === undefined`;return Y?(0,E0.or)(J,(0,E0.not)(Kb(A,Q,B))):J}u$A.noPropertyInData=Vb;function m$A(A){return A?Object.keys(A).filter((Q)=>Q!=="__proto__"):[]}u$A.allSchemaProperties=m$A;function h8B(A,Q){return m$A(Q).filter((B)=>!(0,Eb.alwaysValidSchema)(A,Q[B]))}u$A.schemaProperties=h8B;function x8B({schemaCode:A,data:Q,it:{gen:B,topSchemaRef:Y,schemaPath:J,errorPath:C},it:X},G,W,F){let Z=F?E0._`${A}, ${Q}, ${Y}${J}`:Q,U=[[m7.default.instancePath,(0,E0.strConcat)(m7.default.instancePath,C)],[m7.default.parentData,X.parentData],[m7.default.parentDataProperty,X.parentDataProperty],[m7.default.rootData,m7.default.rootData]];if(X.opts.dynamicRef)U.push([m7.default.dynamicAnchors,m7.default.dynamicAnchors]);let $=E0._`${Z}, ${B.object(...U)}`;return W!==E0.nil?E0._`${G}.call(${W}, ${$})`:E0._`${G}(${$})`}u$A.callValidateCode=x8B;var f8B=E0._`new RegExp`;function b8B({gen:A,it:{opts:Q}},B){let Y=Q.unicodeRegExp?"u":"",{regExp:J}=Q.code,C=J(B,Y);return A.scopeValue("pattern",{key:C.toString(),ref:C,code:E0._`${J.code==="new RegExp"?f8B:(0,k8B.useFunc)(A,J)}(${B}, ${Y})`})}u$A.usePattern=b8B;function m8B(A){let{gen:Q,data:B,keyword:Y,it:J}=A,C=Q.name("valid");if(J.allErrors){let G=Q.let("valid",!0);return X(()=>Q.assign(G,!1)),G}return Q.var(C,!0),X(()=>Q.break()),C;function X(G){let W=Q.const("len",E0._`${B}.length`);Q.forRange("i",0,W,(F)=>{A.subschema({keyword:Y,dataProp:F,dataPropType:Eb.Type.Num},C),Q.if((0,E0.not)(C),G)})}}u$A.validateArray=m8B;function u8B(A){let{gen:Q,schema:B,keyword:Y,it:J}=A;if(!Array.isArray(B))throw Error("ajv implementation error");if(B.some((W)=>(0,Eb.alwaysValidSchema)(J,W))&&!J.opts.unevaluated)return;let X=Q.let("valid",!1),G=Q.name("_valid");Q.block(()=>B.forEach((W,F)=>{let Z=A.subschema({keyword:Y,schemaProp:F,compositeRule:!0},G);if(Q.assign(X,E0._`${X} || ${G}`),!A.mergeValidEvaluated(Z,G))Q.if((0,E0.not)(X))})),A.result(X,()=>A.reset(),()=>A.error(!0))}u$A.validateUnion=u8B});var n$A=R((p$A)=>{Object.defineProperty(p$A,"__esModule",{value:!0});p$A.validateKeywordUsage=p$A.validSchemaType=p$A.funcKeywordCode=p$A.macroKeywordCode=void 0;var F9=GB(),VZ=u6(),A5B=w5(),Q5B=HD();function B5B(A,Q){let{gen:B,keyword:Y,schema:J,parentSchema:C,it:X}=A,G=Q.macro.call(X.self,J,C,X),W=l$A(B,Y,G);if(X.opts.validateSchema!==!1)X.self.validateSchema(G,!0);let F=B.name("valid");A.subschema({schema:G,schemaPath:F9.nil,errSchemaPath:`${X.errSchemaPath}/${Y}`,topSchemaRef:W,compositeRule:!0},F),A.pass(F,()=>A.error(!0))}p$A.macroKeywordCode=B5B;function Y5B(A,Q){var B;let{gen:Y,keyword:J,schema:C,parentSchema:X,$data:G,it:W}=A;C5B(W,Q);let F=!G&&Q.compile?Q.compile.call(W.self,C,X,W):Q.validate,Z=l$A(Y,J,F),U=Y.let("valid");A.block$data(U,$),A.ok((B=Q.valid)!==null&&B!==void 0?B:U);function $(){if(Q.errors===!1){if(I(),Q.modifying)c$A(A);V(()=>A.error())}else{let H=Q.async?E():K();if(Q.modifying)c$A(A);V(()=>J5B(A,H))}}function E(){let H=Y.let("ruleErrs",null);return Y.try(()=>I(F9._`await `),(D)=>Y.assign(U,!1).if(F9._`${D} instanceof ${W.ValidationError}`,()=>Y.assign(H,F9._`${D}.errors`),()=>Y.throw(D))),H}function K(){let H=F9._`${Z}.errors`;return Y.assign(H,null),I(F9.nil),H}function I(H=Q.async?F9._`await `:F9.nil){let D=W.opts.passContext?VZ.default.this:VZ.default.self,L=!(("compile"in Q)&&!G||Q.schema===!1);Y.assign(U,F9._`${H}${(0,A5B.callValidateCode)(A,Z,D,L)}`,Q.modifying)}function V(H){var D;Y.if((0,F9.not)((D=Q.valid)!==null&&D!==void 0?D:U),H)}}p$A.funcKeywordCode=Y5B;function c$A(A){let{gen:Q,data:B,it:Y}=A;Q.if(Y.parentData,()=>Q.assign(B,F9._`${Y.parentData}[${Y.parentDataProperty}]`))}function J5B(A,Q){let{gen:B}=A;B.if(F9._`Array.isArray(${Q})`,()=>{B.assign(VZ.default.vErrors,F9._`${VZ.default.vErrors} === null ? ${Q} : ${VZ.default.vErrors}.concat(${Q})`).assign(VZ.default.errors,F9._`${VZ.default.vErrors}.length`),(0,Q5B.extendErrors)(A)},()=>A.error())}function C5B({schemaEnv:A},Q){if(Q.async&&!A.$async)throw Error("async keyword in sync schema")}function l$A(A,Q,B){if(B===void 0)throw Error(`keyword "${Q}" failed to compile`);return A.scopeValue("keyword",typeof B=="function"?{ref:B}:{ref:B,code:(0,F9.stringify)(B)})}function X5B(A,Q,B=!1){return!Q.length||Q.some((Y)=>Y==="array"?Array.isArray(A):Y==="object"?A&&typeof A=="object"&&!Array.isArray(A):typeof A==Y||B&&typeof A>"u")}p$A.validSchemaType=X5B;function G5B({schema:A,opts:Q,self:B,errSchemaPath:Y},J,C){if(Array.isArray(J.keyword)?!J.keyword.includes(C):J.keyword!==C)throw Error("ajv implementation error");let X=J.dependencies;if(X===null||X===void 0?void 0:X.some((G)=>!Object.prototype.hasOwnProperty.call(A,G)))throw Error(`parent schema must have dependencies of ${C}: ${X.join(",")}`);if(J.validateSchema){if(!J.validateSchema(A[C])){let W=`keyword "${C}" value is invalid at path "${Y}": `+B.errorsText(J.validateSchema.errors);if(Q.validateSchema==="log")B.logger.error(W);else throw Error(W)}}}p$A.validateKeywordUsage=G5B});var o$A=R((r$A)=>{Object.defineProperty(r$A,"__esModule",{value:!0});r$A.extendSubschemaMode=r$A.extendSubschemaData=r$A.getSubschema=void 0;var e1=GB(),s$A=wB();function $5B(A,{keyword:Q,schemaProp:B,schema:Y,schemaPath:J,errSchemaPath:C,topSchemaRef:X}){if(Q!==void 0&&Y!==void 0)throw Error('both "keyword" and "schema" passed, only one allowed');if(Q!==void 0){let G=A.schema[Q];return B===void 0?{schema:G,schemaPath:e1._`${A.schemaPath}${(0,e1.getProperty)(Q)}`,errSchemaPath:`${A.errSchemaPath}/${Q}`}:{schema:G[B],schemaPath:e1._`${A.schemaPath}${(0,e1.getProperty)(Q)}${(0,e1.getProperty)(B)}`,errSchemaPath:`${A.errSchemaPath}/${Q}/${(0,s$A.escapeFragment)(B)}`}}if(Y!==void 0){if(J===void 0||C===void 0||X===void 0)throw Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:Y,schemaPath:J,topSchemaRef:X,errSchemaPath:C}}throw Error('either "keyword" or "schema" must be passed')}r$A.getSubschema=$5B;function U5B(A,Q,{dataProp:B,dataPropType:Y,data:J,dataTypes:C,propertyName:X}){if(J!==void 0&&B!==void 0)throw Error('both "data" and "dataProp" passed, only one allowed');let{gen:G}=Q;if(B!==void 0){let{errorPath:F,dataPathArr:Z,opts:U}=Q,$=G.let("data",e1._`${Q.data}${(0,e1.getProperty)(B)}`,!0);W($),A.errorPath=e1.str`${F}${(0,s$A.getErrorPath)(B,Y,U.jsPropertySyntax)}`,A.parentDataProperty=e1._`${B}`,A.dataPathArr=[...Z,A.parentDataProperty]}if(J!==void 0){let F=J instanceof e1.Name?J:G.let("data",J,!0);if(W(F),X!==void 0)A.propertyName=X}if(C)A.dataTypes=C;function W(F){A.data=F,A.dataLevel=Q.dataLevel+1,A.dataTypes=[],Q.definedProperties=new Set,A.parentData=Q.data,A.dataNames=[...Q.dataNames,F]}}r$A.extendSubschemaData=U5B;function E5B(A,{jtdDiscriminator:Q,jtdMetadata:B,compositeRule:Y,createErrors:J,allErrors:C}){if(Y!==void 0)A.compositeRule=Y;if(J!==void 0)A.createErrors=J;if(C!==void 0)A.allErrors=C;A.jtdDiscriminator=Q,A.jtdMetadata=B}r$A.extendSubschemaMode=E5B});var Ib=R((pUY,t$A)=>{t$A.exports=function A(Q,B){if(Q===B)return!0;if(Q&&B&&typeof Q=="object"&&typeof B=="object"){if(Q.constructor!==B.constructor)return!1;var Y,J,C;if(Array.isArray(Q)){if(Y=Q.length,Y!=B.length)return!1;for(J=Y;J--!==0;)if(!A(Q[J],B[J]))return!1;return!0}if(Q.constructor===RegExp)return Q.source===B.source&&Q.flags===B.flags;if(Q.valueOf!==Object.prototype.valueOf)return Q.valueOf()===B.valueOf();if(Q.toString!==Object.prototype.toString)return Q.toString()===B.toString();if(C=Object.keys(Q),Y=C.length,Y!==Object.keys(B).length)return!1;for(J=Y;J--!==0;)if(!Object.prototype.hasOwnProperty.call(B,C[J]))return!1;for(J=Y;J--!==0;){var X=C[J];if(!A(Q[X],B[X]))return!1}return!0}return Q!==Q&&B!==B}});var A4A=R((iUY,e$A)=>{var u7=e$A.exports=function(A,Q,B){if(typeof Q=="function")B=Q,Q={};B=Q.cb||B;var Y=typeof B=="function"?B:B.pre||function(){},J=B.post||function(){};Zw(Q,Y,J,A,"",A)};u7.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};u7.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};u7.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};u7.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function Zw(A,Q,B,Y,J,C,X,G,W,F){if(Y&&typeof Y=="object"&&!Array.isArray(Y)){Q(Y,J,C,X,G,W,F);for(var Z in Y){var U=Y[Z];if(Array.isArray(U)){if(Z in u7.arrayKeywords)for(var $=0;${Object.defineProperty(J4A,"__esModule",{value:!0});J4A.getSchemaRefs=J4A.resolveUrl=J4A.normalizeId=J4A._getFullPath=J4A.getFullPath=J4A.inlineRef=void 0;var H5B=wB(),D5B=Ib(),N5B=A4A(),L5B=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function q5B(A,Q=!0){if(typeof A=="boolean")return!0;if(Q===!0)return!Hb(A);if(!Q)return!1;return Q4A(A)<=Q}J4A.inlineRef=q5B;var M5B=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Hb(A){for(let Q in A){if(M5B.has(Q))return!0;let B=A[Q];if(Array.isArray(B)&&B.some(Hb))return!0;if(typeof B=="object"&&Hb(B))return!0}return!1}function Q4A(A){let Q=0;for(let B in A){if(B==="$ref")return 1/0;if(Q++,L5B.has(B))continue;if(typeof A[B]=="object")(0,H5B.eachItem)(A[B],(Y)=>Q+=Q4A(Y));if(Q===1/0)return 1/0}return Q}function B4A(A,Q="",B){if(B!==!1)Q=KE(Q);let Y=A.parse(Q);return Y4A(A,Y)}J4A.getFullPath=B4A;function Y4A(A,Q){return A.serialize(Q).split("#")[0]+"#"}J4A._getFullPath=Y4A;var z5B=/#\/?$/;function KE(A){return A?A.replace(z5B,""):""}J4A.normalizeId=KE;function R5B(A,Q,B){return B=KE(B),A.resolve(Q,B)}J4A.resolveUrl=R5B;var w5B=/^[a-z_][-a-z0-9._]*$/i;function j5B(A,Q){if(typeof A=="boolean")return{};let{schemaId:B,uriResolver:Y}=this.opts,J=KE(A[B]||Q),C={"":J},X=B4A(Y,J,!1),G={},W=new Set;return N5B(A,{allKeys:!0},(U,$,E,K)=>{if(K===void 0)return;let I=X+$,V=C[K];if(typeof U[B]=="string")V=H.call(this,U[B]);D.call(this,U.$anchor),D.call(this,U.$dynamicAnchor),C[$]=V;function H(L){let z=this.opts.uriResolver.resolve;if(L=KE(V?z(V,L):L),W.has(L))throw Z(L);W.add(L);let M=this.refs[L];if(typeof M=="string")M=this.refs[M];if(typeof M=="object")F(U,M.schema,L);else if(L!==KE(I))if(L[0]==="#")F(U,G[L],L),G[L]=U;else this.refs[L]=I;return L}function D(L){if(typeof L=="string"){if(!w5B.test(L))throw Error(`invalid anchor "${L}"`);H.call(this,`#${L}`)}}}),G;function F(U,$,E){if($!==void 0&&!D5B(U,$))throw Z(E)}function Z(U){return Error(`reference "${U}" resolves to more than one schema`)}}J4A.getSchemaRefs=j5B});var MD=R((L4A)=>{Object.defineProperty(L4A,"__esModule",{value:!0});L4A.getData=L4A.KeywordCxt=L4A.validateFunctionCode=void 0;var Z4A=z$A(),X4A=DD(),Nb=Fb(),$w=DD(),_5B=f$A(),qD=n$A(),Db=o$A(),WQ=GB(),yQ=u6(),v5B=ND(),d6=wB(),LD=HD();function y5B(A){if(E4A(A)){if(K4A(A),U4A(A)){x5B(A);return}}$4A(A,()=>(0,Z4A.topBoolOrEmptySchema)(A))}L4A.validateFunctionCode=y5B;function $4A({gen:A,validateName:Q,schema:B,schemaEnv:Y,opts:J},C){if(J.code.es5)A.func(Q,WQ._`${yQ.default.data}, ${yQ.default.valCxt}`,Y.$async,()=>{A.code(WQ._`"use strict"; ${G4A(B,J)}`),h5B(A,J),A.code(C)});else A.func(Q,WQ._`${yQ.default.data}, ${g5B(J)}`,Y.$async,()=>A.code(G4A(B,J)).code(C))}function g5B(A){return WQ._`{${yQ.default.instancePath}="", ${yQ.default.parentData}, ${yQ.default.parentDataProperty}, ${yQ.default.rootData}=${yQ.default.data}${A.dynamicRef?WQ._`, ${yQ.default.dynamicAnchors}={}`:WQ.nil}}={}`}function h5B(A,Q){A.if(yQ.default.valCxt,()=>{if(A.var(yQ.default.instancePath,WQ._`${yQ.default.valCxt}.${yQ.default.instancePath}`),A.var(yQ.default.parentData,WQ._`${yQ.default.valCxt}.${yQ.default.parentData}`),A.var(yQ.default.parentDataProperty,WQ._`${yQ.default.valCxt}.${yQ.default.parentDataProperty}`),A.var(yQ.default.rootData,WQ._`${yQ.default.valCxt}.${yQ.default.rootData}`),Q.dynamicRef)A.var(yQ.default.dynamicAnchors,WQ._`${yQ.default.valCxt}.${yQ.default.dynamicAnchors}`)},()=>{if(A.var(yQ.default.instancePath,WQ._`""`),A.var(yQ.default.parentData,WQ._`undefined`),A.var(yQ.default.parentDataProperty,WQ._`undefined`),A.var(yQ.default.rootData,yQ.default.data),Q.dynamicRef)A.var(yQ.default.dynamicAnchors,WQ._`{}`)})}function x5B(A){let{schema:Q,opts:B,gen:Y}=A;$4A(A,()=>{if(B.$comment&&Q.$comment)I4A(A);if(d5B(A),Y.let(yQ.default.vErrors,null),Y.let(yQ.default.errors,0),B.unevaluated)f5B(A);V4A(A),p5B(A)});return}function f5B(A){let{gen:Q,validateName:B}=A;A.evaluated=Q.const("evaluated",WQ._`${B}.evaluated`),Q.if(WQ._`${A.evaluated}.dynamicProps`,()=>Q.assign(WQ._`${A.evaluated}.props`,WQ._`undefined`)),Q.if(WQ._`${A.evaluated}.dynamicItems`,()=>Q.assign(WQ._`${A.evaluated}.items`,WQ._`undefined`))}function G4A(A,Q){let B=typeof A=="object"&&A[Q.schemaId];return B&&(Q.code.source||Q.code.process)?WQ._`/*# sourceURL=${B} */`:WQ.nil}function b5B(A,Q){if(E4A(A)){if(K4A(A),U4A(A)){m5B(A,Q);return}}(0,Z4A.boolOrEmptySchema)(A,Q)}function U4A({schema:A,self:Q}){if(typeof A=="boolean")return!A;for(let B in A)if(Q.RULES.all[B])return!0;return!1}function E4A(A){return typeof A.schema!="boolean"}function m5B(A,Q){let{schema:B,gen:Y,opts:J}=A;if(J.$comment&&B.$comment)I4A(A);c5B(A),l5B(A);let C=Y.const("_errs",yQ.default.errors);V4A(A,C),Y.var(Q,WQ._`${C} === ${yQ.default.errors}`)}function K4A(A){(0,d6.checkUnknownRules)(A),u5B(A)}function V4A(A,Q){if(A.opts.jtd)return W4A(A,[],!1,Q);let B=(0,X4A.getSchemaTypes)(A.schema),Y=(0,X4A.coerceAndCheckDataType)(A,B);W4A(A,B,!Y,Q)}function u5B(A){let{schema:Q,errSchemaPath:B,opts:Y,self:J}=A;if(Q.$ref&&Y.ignoreKeywordsWithRef&&(0,d6.schemaHasRulesButRef)(Q,J.RULES))J.logger.warn(`$ref: keywords ignored in schema at path "${B}"`)}function d5B(A){let{schema:Q,opts:B}=A;if(Q.default!==void 0&&B.useDefaults&&B.strictSchema)(0,d6.checkStrictMode)(A,"default is ignored in the schema root")}function c5B(A){let Q=A.schema[A.opts.schemaId];if(Q)A.baseId=(0,v5B.resolveUrl)(A.opts.uriResolver,A.baseId,Q)}function l5B(A){if(A.schema.$async&&!A.schemaEnv.$async)throw Error("async schema in sync schema")}function I4A({gen:A,schemaEnv:Q,schema:B,errSchemaPath:Y,opts:J}){let C=B.$comment;if(J.$comment===!0)A.code(WQ._`${yQ.default.self}.logger.log(${C})`);else if(typeof J.$comment=="function"){let X=WQ.str`${Y}/$comment`,G=A.scopeValue("root",{ref:Q.root});A.code(WQ._`${yQ.default.self}.opts.$comment(${C}, ${X}, ${G}.schema)`)}}function p5B(A){let{gen:Q,schemaEnv:B,validateName:Y,ValidationError:J,opts:C}=A;if(B.$async)Q.if(WQ._`${yQ.default.errors} === 0`,()=>Q.return(yQ.default.data),()=>Q.throw(WQ._`new ${J}(${yQ.default.vErrors})`));else{if(Q.assign(WQ._`${Y}.errors`,yQ.default.vErrors),C.unevaluated)i5B(A);Q.return(WQ._`${yQ.default.errors} === 0`)}}function i5B({gen:A,evaluated:Q,props:B,items:Y}){if(B instanceof WQ.Name)A.assign(WQ._`${Q}.props`,B);if(Y instanceof WQ.Name)A.assign(WQ._`${Q}.items`,Y)}function W4A(A,Q,B,Y){let{gen:J,schema:C,data:X,allErrors:G,opts:W,self:F}=A,{RULES:Z}=F;if(C.$ref&&(W.ignoreKeywordsWithRef||!(0,d6.schemaHasRulesButRef)(C,Z))){J.block(()=>D4A(A,"$ref",Z.all.$ref.definition));return}if(!W.jtd)n5B(A,Q);J.block(()=>{for(let $ of Z.rules)U($);U(Z.post)});function U($){if(!(0,Nb.shouldUseGroup)(C,$))return;if($.type){if(J.if((0,$w.checkDataType)($.type,X,W.strictNumbers)),F4A(A,$),Q.length===1&&Q[0]===$.type&&B)J.else(),(0,$w.reportTypeError)(A);J.endIf()}else F4A(A,$);if(!G)J.if(WQ._`${yQ.default.errors} === ${Y||0}`)}}function F4A(A,Q){let{gen:B,schema:Y,opts:{useDefaults:J}}=A;if(J)(0,_5B.assignDefaults)(A,Q.type);B.block(()=>{for(let C of Q.rules)if((0,Nb.shouldUseRule)(Y,C))D4A(A,C.keyword,C.definition,Q.type)})}function n5B(A,Q){if(A.schemaEnv.meta||!A.opts.strictTypes)return;if(s5B(A,Q),!A.opts.allowUnionTypes)r5B(A,Q);a5B(A,A.dataTypes)}function s5B(A,Q){if(!Q.length)return;if(!A.dataTypes.length){A.dataTypes=Q;return}Q.forEach((B)=>{if(!H4A(A.dataTypes,B))Lb(A,`type "${B}" not allowed by context "${A.dataTypes.join(",")}"`)}),t5B(A,Q)}function r5B(A,Q){if(Q.length>1&&!(Q.length===2&&Q.includes("null")))Lb(A,"use allowUnionTypes to allow union type keyword")}function a5B(A,Q){let B=A.self.RULES.all;for(let Y in B){let J=B[Y];if(typeof J=="object"&&(0,Nb.shouldUseRule)(A.schema,J)){let{type:C}=J.definition;if(C.length&&!C.some((X)=>o5B(Q,X)))Lb(A,`missing type "${C.join(",")}" for keyword "${Y}"`)}}}function o5B(A,Q){return A.includes(Q)||Q==="number"&&A.includes("integer")}function H4A(A,Q){return A.includes(Q)||Q==="integer"&&A.includes("number")}function t5B(A,Q){let B=[];for(let Y of A.dataTypes)if(H4A(Q,Y))B.push(Y);else if(Q.includes("integer")&&Y==="number")B.push("integer");A.dataTypes=B}function Lb(A,Q){let B=A.schemaEnv.baseId+A.errSchemaPath;Q+=` at "${B}" (strictTypes)`,(0,d6.checkStrictMode)(A,Q,A.opts.strictTypes)}class qb{constructor(A,Q,B){if((0,qD.validateKeywordUsage)(A,Q,B),this.gen=A.gen,this.allErrors=A.allErrors,this.keyword=B,this.data=A.data,this.schema=A.schema[B],this.$data=Q.$data&&A.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,d6.schemaRefOrVal)(A,this.schema,B,this.$data),this.schemaType=Q.schemaType,this.parentSchema=A.schema,this.params={},this.it=A,this.def=Q,this.$data)this.schemaCode=A.gen.const("vSchema",N4A(this.$data,A));else if(this.schemaCode=this.schemaValue,!(0,qD.validSchemaType)(this.schema,Q.schemaType,Q.allowUndefined))throw Error(`${B} value must be ${JSON.stringify(Q.schemaType)}`);if("code"in Q?Q.trackErrors:Q.errors!==!1)this.errsCount=A.gen.const("_errs",yQ.default.errors)}result(A,Q,B){this.failResult((0,WQ.not)(A),Q,B)}failResult(A,Q,B){if(this.gen.if(A),B)B();else this.error();if(Q){if(this.gen.else(),Q(),this.allErrors)this.gen.endIf()}else if(this.allErrors)this.gen.endIf();else this.gen.else()}pass(A,Q){this.failResult((0,WQ.not)(A),void 0,Q)}fail(A){if(A===void 0){if(this.error(),!this.allErrors)this.gen.if(!1);return}if(this.gen.if(A),this.error(),this.allErrors)this.gen.endIf();else this.gen.else()}fail$data(A){if(!this.$data)return this.fail(A);let{schemaCode:Q}=this;this.fail(WQ._`${Q} !== undefined && (${(0,WQ.or)(this.invalid$data(),A)})`)}error(A,Q,B){if(Q){this.setParams(Q),this._error(A,B),this.setParams({});return}this._error(A,B)}_error(A,Q){(A?LD.reportExtraError:LD.reportError)(this,this.def.error,Q)}$dataError(){(0,LD.reportError)(this,this.def.$dataError||LD.keyword$DataError)}reset(){if(this.errsCount===void 0)throw Error('add "trackErrors" to keyword definition');(0,LD.resetErrorsCount)(this.gen,this.errsCount)}ok(A){if(!this.allErrors)this.gen.if(A)}setParams(A,Q){if(Q)Object.assign(this.params,A);else this.params=A}block$data(A,Q,B=WQ.nil){this.gen.block(()=>{this.check$data(A,B),Q()})}check$data(A=WQ.nil,Q=WQ.nil){if(!this.$data)return;let{gen:B,schemaCode:Y,schemaType:J,def:C}=this;if(B.if((0,WQ.or)(WQ._`${Y} === undefined`,Q)),A!==WQ.nil)B.assign(A,!0);if(J.length||C.validateSchema){if(B.elseIf(this.invalid$data()),this.$dataError(),A!==WQ.nil)B.assign(A,!1)}B.else()}invalid$data(){let{gen:A,schemaCode:Q,schemaType:B,def:Y,it:J}=this;return(0,WQ.or)(C(),X());function C(){if(B.length){if(!(Q instanceof WQ.Name))throw Error("ajv implementation error");let G=Array.isArray(B)?B:[B];return WQ._`${(0,$w.checkDataTypes)(G,Q,J.opts.strictNumbers,$w.DataType.Wrong)}`}return WQ.nil}function X(){if(Y.validateSchema){let G=A.scopeValue("validate$data",{ref:Y.validateSchema});return WQ._`!${G}(${Q})`}return WQ.nil}}subschema(A,Q){let B=(0,Db.getSubschema)(this.it,A);(0,Db.extendSubschemaData)(B,this.it,A),(0,Db.extendSubschemaMode)(B,A);let Y={...this.it,...B,items:void 0,props:void 0};return b5B(Y,Q),Y}mergeEvaluated(A,Q){let{it:B,gen:Y}=this;if(!B.opts.unevaluated)return;if(B.props!==!0&&A.props!==void 0)B.props=d6.mergeEvaluated.props(Y,A.props,B.props,Q);if(B.items!==!0&&A.items!==void 0)B.items=d6.mergeEvaluated.items(Y,A.items,B.items,Q)}mergeValidEvaluated(A,Q){let{it:B,gen:Y}=this;if(B.opts.unevaluated&&(B.props!==!0||B.items!==!0))return Y.if(Q,()=>this.mergeEvaluated(A,WQ.Name)),!0}}L4A.KeywordCxt=qb;function D4A(A,Q,B,Y){let J=new qb(A,B,Q);if("code"in B)B.code(J,Y);else if(J.$data&&B.validate)(0,qD.funcKeywordCode)(J,B);else if("macro"in B)(0,qD.macroKeywordCode)(J,B);else if(B.compile||B.validate)(0,qD.funcKeywordCode)(J,B)}var e5B=/^\/(?:[^~]|~0|~1)*$/,ACB=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function N4A(A,{dataLevel:Q,dataNames:B,dataPathArr:Y}){let J,C;if(A==="")return yQ.default.rootData;if(A[0]==="/"){if(!e5B.test(A))throw Error(`Invalid JSON-pointer: ${A}`);J=A,C=yQ.default.rootData}else{let F=ACB.exec(A);if(!F)throw Error(`Invalid JSON-pointer: ${A}`);let Z=+F[1];if(J=F[2],J==="#"){if(Z>=Q)throw Error(W("property/index",Z));return Y[Q-Z]}if(Z>Q)throw Error(W("data",Z));if(C=B[Q-Z],!J)return C}let X=C,G=J.split("/");for(let F of G)if(F)C=WQ._`${C}${(0,WQ.getProperty)((0,d6.unescapeJsonPointer)(F))}`,X=WQ._`${X} && ${C}`;return X;function W(F,Z){return`Cannot access ${F} ${Z} levels up, current level is ${Q}`}}L4A.getData=N4A});var Uw=R((z4A)=>{Object.defineProperty(z4A,"__esModule",{value:!0});class M4A extends Error{constructor(A){super("validation failed");this.errors=A,this.ajv=this.validation=!0}}z4A.default=M4A});var zD=R((w4A)=>{Object.defineProperty(w4A,"__esModule",{value:!0});var Mb=ND();class R4A extends Error{constructor(A,Q,B,Y){super(Y||`can't resolve reference ${B} from id ${Q}`);this.missingRef=(0,Mb.resolveUrl)(A,Q,B),this.missingSchema=(0,Mb.normalizeId)((0,Mb.getFullPath)(A,this.missingRef))}}w4A.default=R4A});var Kw=R((P4A)=>{Object.defineProperty(P4A,"__esModule",{value:!0});P4A.resolveSchema=P4A.getCompilingSchema=P4A.resolveRef=P4A.compileSchema=P4A.SchemaEnv=void 0;var lC=GB(),CCB=Uw(),IZ=u6(),pC=ND(),j4A=wB(),XCB=MD();class RD{constructor(A){var Q;this.refs={},this.dynamicAnchors={};let B;if(typeof A.schema=="object")B=A.schema;this.schema=A.schema,this.schemaId=A.schemaId,this.root=A.root||this,this.baseId=(Q=A.baseId)!==null&&Q!==void 0?Q:(0,pC.normalizeId)(B===null||B===void 0?void 0:B[A.schemaId||"$id"]),this.schemaPath=A.schemaPath,this.localRefs=A.localRefs,this.meta=A.meta,this.$async=B===null||B===void 0?void 0:B.$async,this.refs={}}}P4A.SchemaEnv=RD;function Rb(A){let Q=O4A.call(this,A);if(Q)return Q;let B=(0,pC.getFullPath)(this.opts.uriResolver,A.root.baseId),{es5:Y,lines:J}=this.opts.code,{ownProperties:C}=this.opts,X=new lC.CodeGen(this.scope,{es5:Y,lines:J,ownProperties:C}),G;if(A.$async)G=X.scopeValue("Error",{ref:CCB.default,code:lC._`require("ajv/dist/runtime/validation_error").default`});let W=X.scopeName("validate");A.validateName=W;let F={gen:X,allErrors:this.opts.allErrors,data:IZ.default.data,parentData:IZ.default.parentData,parentDataProperty:IZ.default.parentDataProperty,dataNames:[IZ.default.data],dataPathArr:[lC.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:X.scopeValue("schema",this.opts.code.source===!0?{ref:A.schema,code:(0,lC.stringify)(A.schema)}:{ref:A.schema}),validateName:W,ValidationError:G,schema:A.schema,schemaEnv:A,rootId:B,baseId:A.baseId||B,schemaPath:lC.nil,errSchemaPath:A.schemaPath||(this.opts.jtd?"":"#"),errorPath:lC._`""`,opts:this.opts,self:this},Z;try{this._compilations.add(A),(0,XCB.validateFunctionCode)(F),X.optimize(this.opts.code.optimize);let U=X.toString();if(Z=`${X.scopeRefs(IZ.default.scope)}return ${U}`,this.opts.code.process)Z=this.opts.code.process(Z,A);let E=Function(`${IZ.default.self}`,`${IZ.default.scope}`,Z)(this,this.scope.get());if(this.scope.value(W,{ref:E}),E.errors=null,E.schema=A.schema,E.schemaEnv=A,A.$async)E.$async=!0;if(this.opts.code.source===!0)E.source={validateName:W,validateCode:U,scopeValues:X._values};if(this.opts.unevaluated){let{props:K,items:I}=F;if(E.evaluated={props:K instanceof lC.Name?void 0:K,items:I instanceof lC.Name?void 0:I,dynamicProps:K instanceof lC.Name,dynamicItems:I instanceof lC.Name},E.source)E.source.evaluated=(0,lC.stringify)(E.evaluated)}return A.validate=E,A}catch(U){if(delete A.validate,delete A.validateName,Z)this.logger.error("Error compiling schema, function code:",Z);throw U}finally{this._compilations.delete(A)}}P4A.compileSchema=Rb;function GCB(A,Q,B){var Y;B=(0,pC.resolveUrl)(this.opts.uriResolver,Q,B);let J=A.refs[B];if(J)return J;let C=ZCB.call(this,A,B);if(C===void 0){let X=(Y=A.localRefs)===null||Y===void 0?void 0:Y[B],{schemaId:G}=this.opts;if(X)C=new RD({schema:X,schemaId:G,root:A,baseId:Q})}if(C===void 0)return;return A.refs[B]=WCB.call(this,C)}P4A.resolveRef=GCB;function WCB(A){if((0,pC.inlineRef)(A.schema,this.opts.inlineRefs))return A.schema;return A.validate?A:Rb.call(this,A)}function O4A(A){for(let Q of this._compilations)if(FCB(Q,A))return Q}P4A.getCompilingSchema=O4A;function FCB(A,Q){return A.schema===Q.schema&&A.root===Q.root&&A.baseId===Q.baseId}function ZCB(A,Q){let B;while(typeof(B=this.refs[Q])=="string")Q=B;return B||this.schemas[Q]||Ew.call(this,A,Q)}function Ew(A,Q){let B=this.opts.uriResolver.parse(Q),Y=(0,pC._getFullPath)(this.opts.uriResolver,B),J=(0,pC.getFullPath)(this.opts.uriResolver,A.baseId,void 0);if(Object.keys(A.schema).length>0&&Y===J)return zb.call(this,B,A);let C=(0,pC.normalizeId)(Y),X=this.refs[C]||this.schemas[C];if(typeof X=="string"){let G=Ew.call(this,A,X);if(typeof(G===null||G===void 0?void 0:G.schema)!=="object")return;return zb.call(this,B,G)}if(typeof(X===null||X===void 0?void 0:X.schema)!=="object")return;if(!X.validate)Rb.call(this,X);if(C===(0,pC.normalizeId)(Q)){let{schema:G}=X,{schemaId:W}=this.opts,F=G[W];if(F)J=(0,pC.resolveUrl)(this.opts.uriResolver,J,F);return new RD({schema:G,schemaId:W,root:A,baseId:J})}return zb.call(this,B,X)}P4A.resolveSchema=Ew;var $CB=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function zb(A,{baseId:Q,schema:B,root:Y}){var J;if(((J=A.fragment)===null||J===void 0?void 0:J[0])!=="/")return;for(let G of A.fragment.slice(1).split("/")){if(typeof B==="boolean")return;let W=B[(0,j4A.unescapeFragment)(G)];if(W===void 0)return;B=W;let F=typeof B==="object"&&B[this.opts.schemaId];if(!$CB.has(G)&&F)Q=(0,pC.resolveUrl)(this.opts.uriResolver,Q,F)}let C;if(typeof B!="boolean"&&B.$ref&&!(0,j4A.schemaHasRulesButRef)(B,this.RULES)){let G=(0,pC.resolveUrl)(this.opts.uriResolver,Q,B.$ref);C=Ew.call(this,Y,G)}let{schemaId:X}=this.opts;if(C=C||new RD({schema:B,schemaId:X,root:Y,baseId:Q}),C.schema!==C.root.schema)return C;return}});var S4A=R((tUY,ICB)=>{ICB.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var _4A=R((eUY,k4A)=>{var HCB={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,a:10,A:10,b:11,B:11,c:12,C:12,d:13,D:13,e:14,E:14,f:15,F:15};k4A.exports={HEX:HCB}});var m4A=R((AEY,b4A)=>{var{HEX:DCB}=_4A(),NCB=/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u;function h4A(A){if(f4A(A,".")<3)return{host:A,isIPV4:!1};let Q=A.match(NCB)||[],[B]=Q;if(B)return{host:qCB(B,"."),isIPV4:!0};else return{host:A,isIPV4:!1}}function wb(A,Q=!1){let B="",Y=!0;for(let J of A){if(DCB[J]===void 0)return;if(J!=="0"&&Y===!0)Y=!1;if(!Y)B+=J}if(Q&&B.length===0)B="0";return B}function LCB(A){let Q=0,B={error:!1,address:"",zone:""},Y=[],J=[],C=!1,X=!1,G=!1;function W(){if(J.length){if(C===!1){let F=wb(J);if(F!==void 0)Y.push(F);else return B.error=!0,!1}J.length=0}return!0}for(let F=0;F7){B.error=!0;break}if(F-1>=0&&A[F-1]===":")X=!0;continue}else if(Z==="%"){if(!W())break;C=!0}else{J.push(Z);continue}}if(J.length)if(C)B.zone=J.join("");else if(G)Y.push(J.join(""));else Y.push(wb(J));return B.address=Y.join(""),B}function x4A(A){if(f4A(A,":")<2)return{host:A,isIPV6:!1};let Q=LCB(A);if(!Q.error){let{address:B,address:Y}=Q;if(Q.zone)B+="%"+Q.zone,Y+="%25"+Q.zone;return{host:B,escapedHost:Y,isIPV6:!0}}else return{host:A,isIPV6:!1}}function qCB(A,Q){let B="",Y=!0,J=A.length;for(let C=0;C{var jCB=/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu,OCB=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu;function u4A(A){return typeof A.secure==="boolean"?A.secure:String(A.scheme).toLowerCase()==="wss"}function d4A(A){if(!A.host)A.error=A.error||"HTTP URIs must have a host.";return A}function c4A(A){let Q=String(A.scheme).toLowerCase()==="https";if(A.port===(Q?443:80)||A.port==="")A.port=void 0;if(!A.path)A.path="/";return A}function PCB(A){return A.secure=u4A(A),A.resourceName=(A.path||"/")+(A.query?"?"+A.query:""),A.path=void 0,A.query=void 0,A}function TCB(A){if(A.port===(u4A(A)?443:80)||A.port==="")A.port=void 0;if(typeof A.secure==="boolean")A.scheme=A.secure?"wss":"ws",A.secure=void 0;if(A.resourceName){let[Q,B]=A.resourceName.split("?");A.path=Q&&Q!=="/"?Q:void 0,A.query=B,A.resourceName=void 0}return A.fragment=void 0,A}function SCB(A,Q){if(!A.path)return A.error="URN can not be parsed",A;let B=A.path.match(OCB);if(B){let Y=Q.scheme||A.scheme||"urn";A.nid=B[1].toLowerCase(),A.nss=B[2];let J=`${Y}:${Q.nid||A.nid}`,C=jb[J];if(A.path=void 0,C)A=C.parse(A,Q)}else A.error=A.error||"URN can not be parsed.";return A}function kCB(A,Q){let B=Q.scheme||A.scheme||"urn",Y=A.nid.toLowerCase(),J=`${B}:${Q.nid||Y}`,C=jb[J];if(C)A=C.serialize(A,Q);let X=A,G=A.nss;return X.path=`${Y||Q.nid}:${G}`,Q.skipEscape=!0,X}function _CB(A,Q){let B=A;if(B.uuid=B.nss,B.nss=void 0,!Q.tolerant&&(!B.uuid||!jCB.test(B.uuid)))B.error=B.error||"UUID is not valid.";return B}function vCB(A){let Q=A;return Q.nss=(A.uuid||"").toLowerCase(),Q}var l4A={scheme:"http",domainHost:!0,parse:d4A,serialize:c4A},yCB={scheme:"https",domainHost:l4A.domainHost,parse:d4A,serialize:c4A},Vw={scheme:"ws",domainHost:!0,parse:PCB,serialize:TCB},gCB={scheme:"wss",domainHost:Vw.domainHost,parse:Vw.parse,serialize:Vw.serialize},hCB={scheme:"urn",parse:SCB,serialize:kCB,skipNormalize:!0},xCB={scheme:"urn:uuid",parse:_CB,serialize:vCB,skipNormalize:!0},jb={http:l4A,https:yCB,ws:Vw,wss:gCB,urn:hCB,"urn:uuid":xCB};p4A.exports=jb});var s4A=R((BEY,Hw)=>{var{normalizeIPv6:fCB,normalizeIPv4:bCB,removeDotSegments:wD,recomposeAuthority:mCB,normalizeComponentEncoding:Iw}=m4A(),Ob=i4A();function uCB(A,Q){if(typeof A==="string")A=AX(c6(A,Q),Q);else if(typeof A==="object")A=c6(AX(A,Q),Q);return A}function dCB(A,Q,B){let Y=Object.assign({scheme:"null"},B),J=n4A(c6(A,Y),c6(Q,Y),Y,!0);return AX(J,{...Y,skipEscape:!0})}function n4A(A,Q,B,Y){let J={};if(!Y)A=c6(AX(A,B),B),Q=c6(AX(Q,B),B);if(B=B||{},!B.tolerant&&Q.scheme)J.scheme=Q.scheme,J.userinfo=Q.userinfo,J.host=Q.host,J.port=Q.port,J.path=wD(Q.path||""),J.query=Q.query;else{if(Q.userinfo!==void 0||Q.host!==void 0||Q.port!==void 0)J.userinfo=Q.userinfo,J.host=Q.host,J.port=Q.port,J.path=wD(Q.path||""),J.query=Q.query;else{if(!Q.path)if(J.path=A.path,Q.query!==void 0)J.query=Q.query;else J.query=A.query;else{if(Q.path.charAt(0)==="/")J.path=wD(Q.path);else{if((A.userinfo!==void 0||A.host!==void 0||A.port!==void 0)&&!A.path)J.path="/"+Q.path;else if(!A.path)J.path=Q.path;else J.path=A.path.slice(0,A.path.lastIndexOf("/")+1)+Q.path;J.path=wD(J.path)}J.query=Q.query}J.userinfo=A.userinfo,J.host=A.host,J.port=A.port}J.scheme=A.scheme}return J.fragment=Q.fragment,J}function cCB(A,Q,B){if(typeof A==="string")A=unescape(A),A=AX(Iw(c6(A,B),!0),{...B,skipEscape:!0});else if(typeof A==="object")A=AX(Iw(A,!0),{...B,skipEscape:!0});if(typeof Q==="string")Q=unescape(Q),Q=AX(Iw(c6(Q,B),!0),{...B,skipEscape:!0});else if(typeof Q==="object")Q=AX(Iw(Q,!0),{...B,skipEscape:!0});return A.toLowerCase()===Q.toLowerCase()}function AX(A,Q){let B={host:A.host,scheme:A.scheme,userinfo:A.userinfo,port:A.port,path:A.path,query:A.query,nid:A.nid,nss:A.nss,uuid:A.uuid,fragment:A.fragment,reference:A.reference,resourceName:A.resourceName,secure:A.secure,error:""},Y=Object.assign({},Q),J=[],C=Ob[(Y.scheme||B.scheme||"").toLowerCase()];if(C&&C.serialize)C.serialize(B,Y);if(B.path!==void 0)if(!Y.skipEscape){if(B.path=escape(B.path),B.scheme!==void 0)B.path=B.path.split("%3A").join(":")}else B.path=unescape(B.path);if(Y.reference!=="suffix"&&B.scheme)J.push(B.scheme,":");let X=mCB(B);if(X!==void 0){if(Y.reference!=="suffix")J.push("//");if(J.push(X),B.path&&B.path.charAt(0)!=="/")J.push("/")}if(B.path!==void 0){let G=B.path;if(!Y.absolutePath&&(!C||!C.absolutePath))G=wD(G);if(X===void 0)G=G.replace(/^\/\//u,"/%2F");J.push(G)}if(B.query!==void 0)J.push("?",B.query);if(B.fragment!==void 0)J.push("#",B.fragment);return J.join("")}var lCB=Array.from({length:127},(A,Q)=>/[^!"$&'()*+,\-.;=_`a-z{}~]/u.test(String.fromCharCode(Q)));function pCB(A){let Q=0;for(let B=0,Y=A.length;B126||lCB[Q])return!0;return!1}var iCB=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function c6(A,Q){let B=Object.assign({},Q),Y={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},J=A.indexOf("%")!==-1,C=!1;if(B.reference==="suffix")A=(B.scheme?B.scheme+":":"")+"//"+A;let X=A.match(iCB);if(X){if(Y.scheme=X[1],Y.userinfo=X[3],Y.host=X[4],Y.port=parseInt(X[5],10),Y.path=X[6]||"",Y.query=X[7],Y.fragment=X[8],isNaN(Y.port))Y.port=X[5];if(Y.host){let W=bCB(Y.host);if(W.isIPV4===!1){let F=fCB(W.host);Y.host=F.host.toLowerCase(),C=F.isIPV6}else Y.host=W.host,C=!0}if(Y.scheme===void 0&&Y.userinfo===void 0&&Y.host===void 0&&Y.port===void 0&&Y.query===void 0&&!Y.path)Y.reference="same-document";else if(Y.scheme===void 0)Y.reference="relative";else if(Y.fragment===void 0)Y.reference="absolute";else Y.reference="uri";if(B.reference&&B.reference!=="suffix"&&B.reference!==Y.reference)Y.error=Y.error||"URI is not a "+B.reference+" reference.";let G=Ob[(B.scheme||Y.scheme||"").toLowerCase()];if(!B.unicodeSupport&&(!G||!G.unicodeSupport)){if(Y.host&&(B.domainHost||G&&G.domainHost)&&C===!1&&pCB(Y.host))try{Y.host=URL.domainToASCII(Y.host.toLowerCase())}catch(W){Y.error=Y.error||"Host's domain name can not be converted to ASCII: "+W}}if(!G||G&&!G.skipNormalize){if(J&&Y.scheme!==void 0)Y.scheme=unescape(Y.scheme);if(J&&Y.host!==void 0)Y.host=unescape(Y.host);if(Y.path)Y.path=escape(unescape(Y.path));if(Y.fragment)Y.fragment=encodeURI(decodeURIComponent(Y.fragment))}if(G&&G.parse)G.parse(Y,B)}else Y.error=Y.error||"URI can not be parsed.";return Y}var Pb={SCHEMES:Ob,normalize:uCB,resolve:dCB,resolveComponents:n4A,equal:cCB,serialize:AX,parse:c6};Hw.exports=Pb;Hw.exports.default=Pb;Hw.exports.fastUri=Pb});var o4A=R((a4A)=>{Object.defineProperty(a4A,"__esModule",{value:!0});var r4A=s4A();r4A.code='require("ajv/dist/runtime/uri").default';a4A.default=r4A});var CUA=R((l6)=>{Object.defineProperty(l6,"__esModule",{value:!0});l6.CodeGen=l6.Name=l6.nil=l6.stringify=l6.str=l6._=l6.KeywordCxt=void 0;var sCB=MD();Object.defineProperty(l6,"KeywordCxt",{enumerable:!0,get:function(){return sCB.KeywordCxt}});var VE=GB();Object.defineProperty(l6,"_",{enumerable:!0,get:function(){return VE._}});Object.defineProperty(l6,"str",{enumerable:!0,get:function(){return VE.str}});Object.defineProperty(l6,"stringify",{enumerable:!0,get:function(){return VE.stringify}});Object.defineProperty(l6,"nil",{enumerable:!0,get:function(){return VE.nil}});Object.defineProperty(l6,"Name",{enumerable:!0,get:function(){return VE.Name}});Object.defineProperty(l6,"CodeGen",{enumerable:!0,get:function(){return VE.CodeGen}});var rCB=Uw(),BUA=zD(),aCB=Wb(),jD=Kw(),oCB=GB(),OD=ND(),Dw=DD(),Sb=wB(),t4A=S4A(),tCB=o4A(),YUA=(A,Q)=>new RegExp(A,Q);YUA.code="new RegExp";var eCB=["removeAdditional","useDefaults","coerceTypes"],A1B=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),Q1B={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},B1B={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},e4A=200;function Y1B(A){var Q,B,Y,J,C,X,G,W,F,Z,U,$,E,K,I,V,H,D,L,z,M,N,q,w,P;let _=A.strict,j=(Q=A.code)===null||Q===void 0?void 0:Q.optimize,k=j===!0||j===void 0?1:j||0,T=(Y=(B=A.code)===null||B===void 0?void 0:B.regExp)!==null&&Y!==void 0?Y:YUA,S=(J=A.uriResolver)!==null&&J!==void 0?J:tCB.default;return{strictSchema:(X=(C=A.strictSchema)!==null&&C!==void 0?C:_)!==null&&X!==void 0?X:!0,strictNumbers:(W=(G=A.strictNumbers)!==null&&G!==void 0?G:_)!==null&&W!==void 0?W:!0,strictTypes:(Z=(F=A.strictTypes)!==null&&F!==void 0?F:_)!==null&&Z!==void 0?Z:"log",strictTuples:($=(U=A.strictTuples)!==null&&U!==void 0?U:_)!==null&&$!==void 0?$:"log",strictRequired:(K=(E=A.strictRequired)!==null&&E!==void 0?E:_)!==null&&K!==void 0?K:!1,code:A.code?{...A.code,optimize:k,regExp:T}:{optimize:k,regExp:T},loopRequired:(I=A.loopRequired)!==null&&I!==void 0?I:e4A,loopEnum:(V=A.loopEnum)!==null&&V!==void 0?V:e4A,meta:(H=A.meta)!==null&&H!==void 0?H:!0,messages:(D=A.messages)!==null&&D!==void 0?D:!0,inlineRefs:(L=A.inlineRefs)!==null&&L!==void 0?L:!0,schemaId:(z=A.schemaId)!==null&&z!==void 0?z:"$id",addUsedSchema:(M=A.addUsedSchema)!==null&&M!==void 0?M:!0,validateSchema:(N=A.validateSchema)!==null&&N!==void 0?N:!0,validateFormats:(q=A.validateFormats)!==null&&q!==void 0?q:!0,unicodeRegExp:(w=A.unicodeRegExp)!==null&&w!==void 0?w:!0,int32range:(P=A.int32range)!==null&&P!==void 0?P:!0,uriResolver:S}}class Nw{constructor(A={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,A=this.opts={...A,...Y1B(A)};let{es5:Q,lines:B}=this.opts.code;this.scope=new oCB.ValueScope({scope:{},prefixes:A1B,es5:Q,lines:B}),this.logger=F1B(A.logger);let Y=A.validateFormats;if(A.validateFormats=!1,this.RULES=(0,aCB.getRules)(),AUA.call(this,Q1B,A,"NOT SUPPORTED"),AUA.call(this,B1B,A,"DEPRECATED","warn"),this._metaOpts=G1B.call(this),A.formats)C1B.call(this);if(this._addVocabularies(),this._addDefaultMetaSchema(),A.keywords)X1B.call(this,A.keywords);if(typeof A.meta=="object")this.addMetaSchema(A.meta);J1B.call(this),A.validateFormats=Y}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:A,meta:Q,schemaId:B}=this.opts,Y=t4A;if(B==="id")Y={...t4A},Y.id=Y.$id,delete Y.$id;if(Q&&A)this.addMetaSchema(Y,Y[B],!1)}defaultMeta(){let{meta:A,schemaId:Q}=this.opts;return this.opts.defaultMeta=typeof A=="object"?A[Q]||A:void 0}validate(A,Q){let B;if(typeof A=="string"){if(B=this.getSchema(A),!B)throw Error(`no schema with key or ref "${A}"`)}else B=this.compile(A);let Y=B(Q);if(!("$async"in B))this.errors=B.errors;return Y}compile(A,Q){let B=this._addSchema(A,Q);return B.validate||this._compileSchemaEnv(B)}compileAsync(A,Q){if(typeof this.opts.loadSchema!="function")throw Error("options.loadSchema should be a function");let{loadSchema:B}=this.opts;return Y.call(this,A,Q);async function Y(F,Z){await J.call(this,F.$schema);let U=this._addSchema(F,Z);return U.validate||C.call(this,U)}async function J(F){if(F&&!this.getSchema(F))await Y.call(this,{$ref:F},!0)}async function C(F){try{return this._compileSchemaEnv(F)}catch(Z){if(!(Z instanceof BUA.default))throw Z;return X.call(this,Z),await G.call(this,Z.missingSchema),C.call(this,F)}}function X({missingSchema:F,missingRef:Z}){if(this.refs[F])throw Error(`AnySchema ${F} is loaded but ${Z} cannot be resolved`)}async function G(F){let Z=await W.call(this,F);if(!this.refs[F])await J.call(this,Z.$schema);if(!this.refs[F])this.addSchema(Z,F,Q)}async function W(F){let Z=this._loading[F];if(Z)return Z;try{return await(this._loading[F]=B(F))}finally{delete this._loading[F]}}}addSchema(A,Q,B,Y=this.opts.validateSchema){if(Array.isArray(A)){for(let C of A)this.addSchema(C,void 0,B,Y);return this}let J;if(typeof A==="object"){let{schemaId:C}=this.opts;if(J=A[C],J!==void 0&&typeof J!="string")throw Error(`schema ${C} must be string`)}return Q=(0,OD.normalizeId)(Q||J),this._checkUnique(Q),this.schemas[Q]=this._addSchema(A,B,Q,Y,!0),this}addMetaSchema(A,Q,B=this.opts.validateSchema){return this.addSchema(A,Q,!0,B),this}validateSchema(A,Q){if(typeof A=="boolean")return!0;let B;if(B=A.$schema,B!==void 0&&typeof B!="string")throw Error("$schema must be a string");if(B=B||this.opts.defaultMeta||this.defaultMeta(),!B)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let Y=this.validate(B,A);if(!Y&&Q){let J="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(J);else throw Error(J)}return Y}getSchema(A){let Q;while(typeof(Q=QUA.call(this,A))=="string")A=Q;if(Q===void 0){let{schemaId:B}=this.opts,Y=new jD.SchemaEnv({schema:{},schemaId:B});if(Q=jD.resolveSchema.call(this,Y,A),!Q)return;this.refs[A]=Q}return Q.validate||this._compileSchemaEnv(Q)}removeSchema(A){if(A instanceof RegExp)return this._removeAllSchemas(this.schemas,A),this._removeAllSchemas(this.refs,A),this;switch(typeof A){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let Q=QUA.call(this,A);if(typeof Q=="object")this._cache.delete(Q.schema);return delete this.schemas[A],delete this.refs[A],this}case"object":{let Q=A;this._cache.delete(Q);let B=A[this.opts.schemaId];if(B)B=(0,OD.normalizeId)(B),delete this.schemas[B],delete this.refs[B];return this}default:throw Error("ajv.removeSchema: invalid parameter")}}addVocabulary(A){for(let Q of A)this.addKeyword(Q);return this}addKeyword(A,Q){let B;if(typeof A=="string"){if(B=A,typeof Q=="object")this.logger.warn("these parameters are deprecated, see docs for addKeyword"),Q.keyword=B}else if(typeof A=="object"&&Q===void 0){if(Q=A,B=Q.keyword,Array.isArray(B)&&!B.length)throw Error("addKeywords: keyword must be string or non-empty array")}else throw Error("invalid addKeywords parameters");if($1B.call(this,B,Q),!Q)return(0,Sb.eachItem)(B,(J)=>Tb.call(this,J)),this;E1B.call(this,Q);let Y={...Q,type:(0,Dw.getJSONTypes)(Q.type),schemaType:(0,Dw.getJSONTypes)(Q.schemaType)};return(0,Sb.eachItem)(B,Y.type.length===0?(J)=>Tb.call(this,J,Y):(J)=>Y.type.forEach((C)=>Tb.call(this,J,Y,C))),this}getKeyword(A){let Q=this.RULES.all[A];return typeof Q=="object"?Q.definition:!!Q}removeKeyword(A){let{RULES:Q}=this;delete Q.keywords[A],delete Q.all[A];for(let B of Q.rules){let Y=B.rules.findIndex((J)=>J.keyword===A);if(Y>=0)B.rules.splice(Y,1)}return this}addFormat(A,Q){if(typeof Q=="string")Q=new RegExp(Q);return this.formats[A]=Q,this}errorsText(A=this.errors,{separator:Q=", ",dataVar:B="data"}={}){if(!A||A.length===0)return"No errors";return A.map((Y)=>`${B}${Y.instancePath} ${Y.message}`).reduce((Y,J)=>Y+Q+J)}$dataMetaSchema(A,Q){let B=this.RULES.all;A=JSON.parse(JSON.stringify(A));for(let Y of Q){let J=Y.split("/").slice(1),C=A;for(let X of J)C=C[X];for(let X in B){let G=B[X];if(typeof G!="object")continue;let{$data:W}=G.definition,F=C[X];if(W&&F)C[X]=JUA(F)}}return A}_removeAllSchemas(A,Q){for(let B in A){let Y=A[B];if(!Q||Q.test(B)){if(typeof Y=="string")delete A[B];else if(Y&&!Y.meta)this._cache.delete(Y.schema),delete A[B]}}}_addSchema(A,Q,B,Y=this.opts.validateSchema,J=this.opts.addUsedSchema){let C,{schemaId:X}=this.opts;if(typeof A=="object")C=A[X];else if(this.opts.jtd)throw Error("schema must be object");else if(typeof A!="boolean")throw Error("schema must be object or boolean");let G=this._cache.get(A);if(G!==void 0)return G;B=(0,OD.normalizeId)(C||B);let W=OD.getSchemaRefs.call(this,A,B);if(G=new jD.SchemaEnv({schema:A,schemaId:X,meta:Q,baseId:B,localRefs:W}),this._cache.set(G.schema,G),J&&!B.startsWith("#")){if(B)this._checkUnique(B);this.refs[B]=G}if(Y)this.validateSchema(A,!0);return G}_checkUnique(A){if(this.schemas[A]||this.refs[A])throw Error(`schema with key or id "${A}" already exists`)}_compileSchemaEnv(A){if(A.meta)this._compileMetaSchema(A);else jD.compileSchema.call(this,A);if(!A.validate)throw Error("ajv implementation error");return A.validate}_compileMetaSchema(A){let Q=this.opts;this.opts=this._metaOpts;try{jD.compileSchema.call(this,A)}finally{this.opts=Q}}}Nw.ValidationError=rCB.default;Nw.MissingRefError=BUA.default;l6.default=Nw;function AUA(A,Q,B,Y="error"){for(let J in A){let C=J;if(C in Q)this.logger[Y](`${B}: option ${J}. ${A[C]}`)}}function QUA(A){return A=(0,OD.normalizeId)(A),this.schemas[A]||this.refs[A]}function J1B(){let A=this.opts.schemas;if(!A)return;if(Array.isArray(A))this.addSchema(A);else for(let Q in A)this.addSchema(A[Q],Q)}function C1B(){for(let A in this.opts.formats){let Q=this.opts.formats[A];if(Q)this.addFormat(A,Q)}}function X1B(A){if(Array.isArray(A)){this.addVocabulary(A);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let Q in A){let B=A[Q];if(!B.keyword)B.keyword=Q;this.addKeyword(B)}}function G1B(){let A={...this.opts};for(let Q of eCB)delete A[Q];return A}var W1B={log(){},warn(){},error(){}};function F1B(A){if(A===!1)return W1B;if(A===void 0)return console;if(A.log&&A.warn&&A.error)return A;throw Error("logger must implement log, warn and error methods")}var Z1B=/^[a-z_$][a-z0-9_$:-]*$/i;function $1B(A,Q){let{RULES:B}=this;if((0,Sb.eachItem)(A,(Y)=>{if(B.keywords[Y])throw Error(`Keyword ${Y} is already defined`);if(!Z1B.test(Y))throw Error(`Keyword ${Y} has invalid name`)}),!Q)return;if(Q.$data&&!(("code"in Q)||("validate"in Q)))throw Error('$data keyword must have "code" or "validate" function')}function Tb(A,Q,B){var Y;let J=Q===null||Q===void 0?void 0:Q.post;if(B&&J)throw Error('keyword with "post" flag cannot have "type"');let{RULES:C}=this,X=J?C.post:C.rules.find(({type:W})=>W===B);if(!X)X={type:B,rules:[]},C.rules.push(X);if(C.keywords[A]=!0,!Q)return;let G={keyword:A,definition:{...Q,type:(0,Dw.getJSONTypes)(Q.type),schemaType:(0,Dw.getJSONTypes)(Q.schemaType)}};if(Q.before)U1B.call(this,X,G,Q.before);else X.rules.push(G);C.all[A]=G,(Y=Q.implements)===null||Y===void 0||Y.forEach((W)=>this.addKeyword(W))}function U1B(A,Q,B){let Y=A.rules.findIndex((J)=>J.keyword===B);if(Y>=0)A.rules.splice(Y,0,Q);else A.rules.push(Q),this.logger.warn(`rule ${B} is not defined`)}function E1B(A){let{metaSchema:Q}=A;if(Q===void 0)return;if(A.$data&&this.opts.$data)Q=JUA(Q);A.validateSchema=this.compile(Q,!0)}var K1B={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function JUA(A){return{anyOf:[A,K1B]}}});var GUA=R((XUA)=>{Object.defineProperty(XUA,"__esModule",{value:!0});var H1B={keyword:"id",code(){throw Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};XUA.default=H1B});var EUA=R(($UA)=>{Object.defineProperty($UA,"__esModule",{value:!0});$UA.callRef=$UA.getValidate=void 0;var N1B=zD(),WUA=w5(),b9=GB(),IE=u6(),FUA=Kw(),Lw=wB(),L1B={keyword:"$ref",schemaType:"string",code(A){let{gen:Q,schema:B,it:Y}=A,{baseId:J,schemaEnv:C,validateName:X,opts:G,self:W}=Y,{root:F}=C;if((B==="#"||B==="#/")&&J===F.baseId)return U();let Z=FUA.resolveRef.call(W,F,J,B);if(Z===void 0)throw new N1B.default(Y.opts.uriResolver,J,B);if(Z instanceof FUA.SchemaEnv)return $(Z);return E(Z);function U(){if(C===F)return qw(A,X,C,C.$async);let K=Q.scopeValue("root",{ref:F});return qw(A,b9._`${K}.validate`,F,F.$async)}function $(K){let I=ZUA(A,K);qw(A,I,K,K.$async)}function E(K){let I=Q.scopeValue("schema",G.code.source===!0?{ref:K,code:(0,b9.stringify)(K)}:{ref:K}),V=Q.name("valid"),H=A.subschema({schema:K,dataTypes:[],schemaPath:b9.nil,topSchemaRef:I,errSchemaPath:B},V);A.mergeEvaluated(H),A.ok(V)}}};function ZUA(A,Q){let{gen:B}=A;return Q.validate?B.scopeValue("validate",{ref:Q.validate}):b9._`${B.scopeValue("wrapper",{ref:Q})}.validate`}$UA.getValidate=ZUA;function qw(A,Q,B,Y){let{gen:J,it:C}=A,{allErrors:X,schemaEnv:G,opts:W}=C,F=W.passContext?IE.default.this:b9.nil;if(Y)Z();else U();function Z(){if(!G.$async)throw Error("async schema referenced by sync schema");let K=J.let("valid");J.try(()=>{if(J.code(b9._`await ${(0,WUA.callValidateCode)(A,Q,F)}`),E(Q),!X)J.assign(K,!0)},(I)=>{if(J.if(b9._`!(${I} instanceof ${C.ValidationError})`,()=>J.throw(I)),$(I),!X)J.assign(K,!1)}),A.ok(K)}function U(){A.result((0,WUA.callValidateCode)(A,Q,F),()=>E(Q),()=>$(Q))}function $(K){let I=b9._`${K}.errors`;J.assign(IE.default.vErrors,b9._`${IE.default.vErrors} === null ? ${I} : ${IE.default.vErrors}.concat(${I})`),J.assign(IE.default.errors,b9._`${IE.default.vErrors}.length`)}function E(K){var I;if(!C.opts.unevaluated)return;let V=(I=B===null||B===void 0?void 0:B.validate)===null||I===void 0?void 0:I.evaluated;if(C.props!==!0)if(V&&!V.dynamicProps){if(V.props!==void 0)C.props=Lw.mergeEvaluated.props(J,V.props,C.props)}else{let H=J.var("props",b9._`${K}.evaluated.props`);C.props=Lw.mergeEvaluated.props(J,H,C.props,b9.Name)}if(C.items!==!0)if(V&&!V.dynamicItems){if(V.items!==void 0)C.items=Lw.mergeEvaluated.items(J,V.items,C.items)}else{let H=J.var("items",b9._`${K}.evaluated.items`);C.items=Lw.mergeEvaluated.items(J,H,C.items,b9.Name)}}}$UA.callRef=qw;$UA.default=L1B});var VUA=R((KUA)=>{Object.defineProperty(KUA,"__esModule",{value:!0});var z1B=GUA(),R1B=EUA(),w1B=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",z1B.default,R1B.default];KUA.default=w1B});var HUA=R((IUA)=>{Object.defineProperty(IUA,"__esModule",{value:!0});var Mw=GB(),d7=Mw.operators,zw={maximum:{okStr:"<=",ok:d7.LTE,fail:d7.GT},minimum:{okStr:">=",ok:d7.GTE,fail:d7.LT},exclusiveMaximum:{okStr:"<",ok:d7.LT,fail:d7.GTE},exclusiveMinimum:{okStr:">",ok:d7.GT,fail:d7.LTE}},O1B={message:({keyword:A,schemaCode:Q})=>Mw.str`must be ${zw[A].okStr} ${Q}`,params:({keyword:A,schemaCode:Q})=>Mw._`{comparison: ${zw[A].okStr}, limit: ${Q}}`},P1B={keyword:Object.keys(zw),type:"number",schemaType:"number",$data:!0,error:O1B,code(A){let{keyword:Q,data:B,schemaCode:Y}=A;A.fail$data(Mw._`${B} ${zw[Q].fail} ${Y} || isNaN(${B})`)}};IUA.default=P1B});var NUA=R((DUA)=>{Object.defineProperty(DUA,"__esModule",{value:!0});var PD=GB(),S1B={message:({schemaCode:A})=>PD.str`must be multiple of ${A}`,params:({schemaCode:A})=>PD._`{multipleOf: ${A}}`},k1B={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:S1B,code(A){let{gen:Q,data:B,schemaCode:Y,it:J}=A,C=J.opts.multipleOfPrecision,X=Q.let("res"),G=C?PD._`Math.abs(Math.round(${X}) - ${X}) > 1e-${C}`:PD._`${X} !== parseInt(${X})`;A.fail$data(PD._`(${Y} === 0 || (${X} = ${B}/${Y}, ${G}))`)}};DUA.default=k1B});var MUA=R((qUA)=>{Object.defineProperty(qUA,"__esModule",{value:!0});function LUA(A){let Q=A.length,B=0,Y=0,J;while(Y=55296&&J<=56319&&Y{Object.defineProperty(zUA,"__esModule",{value:!0});var HZ=GB(),y1B=wB(),g1B=MUA(),h1B={message({keyword:A,schemaCode:Q}){let B=A==="maxLength"?"more":"fewer";return HZ.str`must NOT have ${B} than ${Q} characters`},params:({schemaCode:A})=>HZ._`{limit: ${A}}`},x1B={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:h1B,code(A){let{keyword:Q,data:B,schemaCode:Y,it:J}=A,C=Q==="maxLength"?HZ.operators.GT:HZ.operators.LT,X=J.opts.unicode===!1?HZ._`${B}.length`:HZ._`${(0,y1B.useFunc)(A.gen,g1B.default)}(${B})`;A.fail$data(HZ._`${X} ${C} ${Y}`)}};zUA.default=x1B});var jUA=R((wUA)=>{Object.defineProperty(wUA,"__esModule",{value:!0});var b1B=w5(),Rw=GB(),m1B={message:({schemaCode:A})=>Rw.str`must match pattern "${A}"`,params:({schemaCode:A})=>Rw._`{pattern: ${A}}`},u1B={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:m1B,code(A){let{data:Q,$data:B,schema:Y,schemaCode:J,it:C}=A,X=C.opts.unicodeRegExp?"u":"",G=B?Rw._`(new RegExp(${J}, ${X}))`:(0,b1B.usePattern)(A,Y);A.fail$data(Rw._`!${G}.test(${Q})`)}};wUA.default=u1B});var PUA=R((OUA)=>{Object.defineProperty(OUA,"__esModule",{value:!0});var TD=GB(),c1B={message({keyword:A,schemaCode:Q}){let B=A==="maxProperties"?"more":"fewer";return TD.str`must NOT have ${B} than ${Q} properties`},params:({schemaCode:A})=>TD._`{limit: ${A}}`},l1B={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:c1B,code(A){let{keyword:Q,data:B,schemaCode:Y}=A,J=Q==="maxProperties"?TD.operators.GT:TD.operators.LT;A.fail$data(TD._`Object.keys(${B}).length ${J} ${Y}`)}};OUA.default=l1B});var SUA=R((TUA)=>{Object.defineProperty(TUA,"__esModule",{value:!0});var SD=w5(),kD=GB(),i1B=wB(),n1B={message:({params:{missingProperty:A}})=>kD.str`must have required property '${A}'`,params:({params:{missingProperty:A}})=>kD._`{missingProperty: ${A}}`},s1B={keyword:"required",type:"object",schemaType:"array",$data:!0,error:n1B,code(A){let{gen:Q,schema:B,schemaCode:Y,data:J,$data:C,it:X}=A,{opts:G}=X;if(!C&&B.length===0)return;let W=B.length>=G.loopRequired;if(X.allErrors)F();else Z();if(G.strictRequired){let E=A.parentSchema.properties,{definedProperties:K}=A.it;for(let I of B)if((E===null||E===void 0?void 0:E[I])===void 0&&!K.has(I)){let V=X.schemaEnv.baseId+X.errSchemaPath,H=`required property "${I}" is not defined at "${V}" (strictRequired)`;(0,i1B.checkStrictMode)(X,H,X.opts.strictRequired)}}function F(){if(W||C)A.block$data(kD.nil,U);else for(let E of B)(0,SD.checkReportMissingProp)(A,E)}function Z(){let E=Q.let("missing");if(W||C){let K=Q.let("valid",!0);A.block$data(K,()=>$(E,K)),A.ok(K)}else Q.if((0,SD.checkMissingProp)(A,B,E)),(0,SD.reportMissingProp)(A,E),Q.else()}function U(){Q.forOf("prop",Y,(E)=>{A.setParams({missingProperty:E}),Q.if((0,SD.noPropertyInData)(Q,J,E,G.ownProperties),()=>A.error())})}function $(E,K){A.setParams({missingProperty:E}),Q.forOf(E,Y,()=>{Q.assign(K,(0,SD.propertyInData)(Q,J,E,G.ownProperties)),Q.if((0,kD.not)(K),()=>{A.error(),Q.break()})},kD.nil)}}};TUA.default=s1B});var _UA=R((kUA)=>{Object.defineProperty(kUA,"__esModule",{value:!0});var _D=GB(),a1B={message({keyword:A,schemaCode:Q}){let B=A==="maxItems"?"more":"fewer";return _D.str`must NOT have ${B} than ${Q} items`},params:({schemaCode:A})=>_D._`{limit: ${A}}`},o1B={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:a1B,code(A){let{keyword:Q,data:B,schemaCode:Y}=A,J=Q==="maxItems"?_D.operators.GT:_D.operators.LT;A.fail$data(_D._`${B}.length ${J} ${Y}`)}};kUA.default=o1B});var ww=R((yUA)=>{Object.defineProperty(yUA,"__esModule",{value:!0});var vUA=Ib();vUA.code='require("ajv/dist/runtime/equal").default';yUA.default=vUA});var hUA=R((gUA)=>{Object.defineProperty(gUA,"__esModule",{value:!0});var kb=DD(),ZJ=GB(),AXB=wB(),QXB=ww(),BXB={message:({params:{i:A,j:Q}})=>ZJ.str`must NOT have duplicate items (items ## ${Q} and ${A} are identical)`,params:({params:{i:A,j:Q}})=>ZJ._`{i: ${A}, j: ${Q}}`},YXB={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:BXB,code(A){let{gen:Q,data:B,$data:Y,schema:J,parentSchema:C,schemaCode:X,it:G}=A;if(!Y&&!J)return;let W=Q.let("valid"),F=C.items?(0,kb.getSchemaTypes)(C.items):[];A.block$data(W,Z,ZJ._`${X} === false`),A.ok(W);function Z(){let K=Q.let("i",ZJ._`${B}.length`),I=Q.let("j");A.setParams({i:K,j:I}),Q.assign(W,!0),Q.if(ZJ._`${K} > 1`,()=>(U()?$:E)(K,I))}function U(){return F.length>0&&!F.some((K)=>K==="object"||K==="array")}function $(K,I){let V=Q.name("item"),H=(0,kb.checkDataTypes)(F,V,G.opts.strictNumbers,kb.DataType.Wrong),D=Q.const("indices",ZJ._`{}`);Q.for(ZJ._`;${K}--;`,()=>{if(Q.let(V,ZJ._`${B}[${K}]`),Q.if(H,ZJ._`continue`),F.length>1)Q.if(ZJ._`typeof ${V} == "string"`,ZJ._`${V} += "_"`);Q.if(ZJ._`typeof ${D}[${V}] == "number"`,()=>{Q.assign(I,ZJ._`${D}[${V}]`),A.error(),Q.assign(W,!1).break()}).code(ZJ._`${D}[${V}] = ${K}`)})}function E(K,I){let V=(0,AXB.useFunc)(Q,QXB.default),H=Q.name("outer");Q.label(H).for(ZJ._`;${K}--;`,()=>Q.for(ZJ._`${I} = ${K}; ${I}--;`,()=>Q.if(ZJ._`${V}(${B}[${K}], ${B}[${I}])`,()=>{A.error(),Q.assign(W,!1).break(H)})))}}};gUA.default=YXB});var fUA=R((xUA)=>{Object.defineProperty(xUA,"__esModule",{value:!0});var _b=GB(),CXB=wB(),XXB=ww(),GXB={message:"must be equal to constant",params:({schemaCode:A})=>_b._`{allowedValue: ${A}}`},WXB={keyword:"const",$data:!0,error:GXB,code(A){let{gen:Q,data:B,$data:Y,schemaCode:J,schema:C}=A;if(Y||C&&typeof C=="object")A.fail$data(_b._`!${(0,CXB.useFunc)(Q,XXB.default)}(${B}, ${J})`);else A.fail(_b._`${C} !== ${B}`)}};xUA.default=WXB});var mUA=R((bUA)=>{Object.defineProperty(bUA,"__esModule",{value:!0});var vD=GB(),ZXB=wB(),$XB=ww(),UXB={message:"must be equal to one of the allowed values",params:({schemaCode:A})=>vD._`{allowedValues: ${A}}`},EXB={keyword:"enum",schemaType:"array",$data:!0,error:UXB,code(A){let{gen:Q,data:B,$data:Y,schema:J,schemaCode:C,it:X}=A;if(!Y&&J.length===0)throw Error("enum must have non-empty array");let G=J.length>=X.opts.loopEnum,W,F=()=>W!==null&&W!==void 0?W:W=(0,ZXB.useFunc)(Q,$XB.default),Z;if(G||Y)Z=Q.let("valid"),A.block$data(Z,U);else{if(!Array.isArray(J))throw Error("ajv implementation error");let E=Q.const("vSchema",C);Z=(0,vD.or)(...J.map((K,I)=>$(E,I)))}A.pass(Z);function U(){Q.assign(Z,!1),Q.forOf("v",C,(E)=>Q.if(vD._`${F()}(${B}, ${E})`,()=>Q.assign(Z,!0).break()))}function $(E,K){let I=J[K];return typeof I==="object"&&I!==null?vD._`${F()}(${B}, ${E}[${K}])`:vD._`${B} === ${I}`}}};bUA.default=EXB});var dUA=R((uUA)=>{Object.defineProperty(uUA,"__esModule",{value:!0});var VXB=HUA(),IXB=NUA(),HXB=RUA(),DXB=jUA(),NXB=PUA(),LXB=SUA(),qXB=_UA(),MXB=hUA(),zXB=fUA(),RXB=mUA(),wXB=[VXB.default,IXB.default,HXB.default,DXB.default,NXB.default,LXB.default,qXB.default,MXB.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},zXB.default,RXB.default];uUA.default=wXB});var yb=R((lUA)=>{Object.defineProperty(lUA,"__esModule",{value:!0});lUA.validateAdditionalItems=void 0;var DZ=GB(),vb=wB(),OXB={message:({params:{len:A}})=>DZ.str`must NOT have more than ${A} items`,params:({params:{len:A}})=>DZ._`{limit: ${A}}`},PXB={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:OXB,code(A){let{parentSchema:Q,it:B}=A,{items:Y}=Q;if(!Array.isArray(Y)){(0,vb.checkStrictMode)(B,'"additionalItems" is ignored when "items" is not an array of schemas');return}cUA(A,Y)}};function cUA(A,Q){let{gen:B,schema:Y,data:J,keyword:C,it:X}=A;X.items=!0;let G=B.const("len",DZ._`${J}.length`);if(Y===!1)A.setParams({len:Q.length}),A.pass(DZ._`${G} <= ${Q.length}`);else if(typeof Y=="object"&&!(0,vb.alwaysValidSchema)(X,Y)){let F=B.var("valid",DZ._`${G} <= ${Q.length}`);B.if((0,DZ.not)(F),()=>W(F)),A.ok(F)}function W(F){B.forRange("i",Q.length,G,(Z)=>{if(A.subschema({keyword:C,dataProp:Z,dataPropType:vb.Type.Num},F),!X.allErrors)B.if((0,DZ.not)(F),()=>B.break())})}}lUA.validateAdditionalItems=cUA;lUA.default=PXB});var gb=R((sUA)=>{Object.defineProperty(sUA,"__esModule",{value:!0});sUA.validateTuple=void 0;var iUA=GB(),jw=wB(),SXB=w5(),kXB={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(A){let{schema:Q,it:B}=A;if(Array.isArray(Q))return nUA(A,"additionalItems",Q);if(B.items=!0,(0,jw.alwaysValidSchema)(B,Q))return;A.ok((0,SXB.validateArray)(A))}};function nUA(A,Q,B=A.schema){let{gen:Y,parentSchema:J,data:C,keyword:X,it:G}=A;if(Z(J),G.opts.unevaluated&&B.length&&G.items!==!0)G.items=jw.mergeEvaluated.items(Y,B.length,G.items);let W=Y.name("valid"),F=Y.const("len",iUA._`${C}.length`);B.forEach((U,$)=>{if((0,jw.alwaysValidSchema)(G,U))return;Y.if(iUA._`${F} > ${$}`,()=>A.subschema({keyword:X,schemaProp:$,dataProp:$},W)),A.ok(W)});function Z(U){let{opts:$,errSchemaPath:E}=G,K=B.length,I=K===U.minItems&&(K===U.maxItems||U[Q]===!1);if($.strictTuples&&!I){let V=`"${X}" is ${K}-tuple, but minItems or maxItems/${Q} are not specified or different at path "${E}"`;(0,jw.checkStrictMode)(G,V,$.strictTuples)}}}sUA.validateTuple=nUA;sUA.default=kXB});var oUA=R((aUA)=>{Object.defineProperty(aUA,"__esModule",{value:!0});var vXB=gb(),yXB={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:(A)=>(0,vXB.validateTuple)(A,"items")};aUA.default=yXB});var AEA=R((eUA)=>{Object.defineProperty(eUA,"__esModule",{value:!0});var tUA=GB(),hXB=wB(),xXB=w5(),fXB=yb(),bXB={message:({params:{len:A}})=>tUA.str`must NOT have more than ${A} items`,params:({params:{len:A}})=>tUA._`{limit: ${A}}`},mXB={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:bXB,code(A){let{schema:Q,parentSchema:B,it:Y}=A,{prefixItems:J}=B;if(Y.items=!0,(0,hXB.alwaysValidSchema)(Y,Q))return;if(J)(0,fXB.validateAdditionalItems)(A,J);else A.ok((0,xXB.validateArray)(A))}};eUA.default=mXB});var BEA=R((QEA)=>{Object.defineProperty(QEA,"__esModule",{value:!0});var j5=GB(),Ow=wB(),dXB={message:({params:{min:A,max:Q}})=>Q===void 0?j5.str`must contain at least ${A} valid item(s)`:j5.str`must contain at least ${A} and no more than ${Q} valid item(s)`,params:({params:{min:A,max:Q}})=>Q===void 0?j5._`{minContains: ${A}}`:j5._`{minContains: ${A}, maxContains: ${Q}}`},cXB={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:dXB,code(A){let{gen:Q,schema:B,parentSchema:Y,data:J,it:C}=A,X,G,{minContains:W,maxContains:F}=Y;if(C.opts.next)X=W===void 0?1:W,G=F;else X=1;let Z=Q.const("len",j5._`${J}.length`);if(A.setParams({min:X,max:G}),G===void 0&&X===0){(0,Ow.checkStrictMode)(C,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(G!==void 0&&X>G){(0,Ow.checkStrictMode)(C,'"minContains" > "maxContains" is always invalid'),A.fail();return}if((0,Ow.alwaysValidSchema)(C,B)){let I=j5._`${Z} >= ${X}`;if(G!==void 0)I=j5._`${I} && ${Z} <= ${G}`;A.pass(I);return}C.items=!0;let U=Q.name("valid");if(G===void 0&&X===1)E(U,()=>Q.if(U,()=>Q.break()));else if(X===0){if(Q.let(U,!0),G!==void 0)Q.if(j5._`${J}.length > 0`,$)}else Q.let(U,!1),$();A.result(U,()=>A.reset());function $(){let I=Q.name("_valid"),V=Q.let("count",0);E(I,()=>Q.if(I,()=>K(V)))}function E(I,V){Q.forRange("i",0,Z,(H)=>{A.subschema({keyword:"contains",dataProp:H,dataPropType:Ow.Type.Num,compositeRule:!0},I),V()})}function K(I){if(Q.code(j5._`${I}++`),G===void 0)Q.if(j5._`${I} >= ${X}`,()=>Q.assign(U,!0).break());else if(Q.if(j5._`${I} > ${G}`,()=>Q.assign(U,!1).break()),X===1)Q.assign(U,!0);else Q.if(j5._`${I} >= ${X}`,()=>Q.assign(U,!0))}}};QEA.default=cXB});var WEA=R((CEA)=>{Object.defineProperty(CEA,"__esModule",{value:!0});CEA.validateSchemaDeps=CEA.validatePropertyDeps=CEA.error=void 0;var hb=GB(),pXB=wB(),yD=w5();CEA.error={message:({params:{property:A,depsCount:Q,deps:B}})=>{let Y=Q===1?"property":"properties";return hb.str`must have ${Y} ${B} when property ${A} is present`},params:({params:{property:A,depsCount:Q,deps:B,missingProperty:Y}})=>hb._`{property: ${A}, missingProperty: ${Y}, depsCount: ${Q}, - deps: ${B}}`};var p1B={keyword:"dependencies",type:"object",schemaType:"object",error:DUA.error,code(A){let[Q,B]=i1B(A);IUA(A,Q),HUA(A,B)}};function i1B({schema:A}){let Q={},B={};for(let Y in A){if(Y==="__proto__")continue;let J=Array.isArray(A[Y])?Q:B;J[Y]=A[Y]}return[Q,B]}function IUA(A,Q=A.schema){let{gen:B,data:Y,it:J}=A;if(Object.keys(Q).length===0)return;let C=B.let("missing");for(let X in Q){let G=Q[X];if(G.length===0)continue;let F=(0,ND.propertyInData)(B,Y,X,J.opts.ownProperties);if(A.setParams({property:X,depsCount:G.length,deps:G.join(", ")}),J.allErrors)B.if(F,()=>{for(let W of G)(0,ND.checkReportMissingProp)(A,W)});else B.if($b._`${F} && (${(0,ND.checkMissingProp)(A,G,C)})`),(0,ND.reportMissingProp)(A,C),B.else()}}DUA.validatePropertyDeps=IUA;function HUA(A,Q=A.schema){let{gen:B,data:Y,keyword:J,it:C}=A,X=B.name("valid");for(let G in Q){if((0,l1B.alwaysValidSchema)(C,Q[G]))continue;B.if((0,ND.propertyInData)(B,Y,G,C.opts.ownProperties),()=>{let F=A.subschema({keyword:J,schemaProp:G},X);A.mergeValidEvaluated(F,X)},()=>B.var(X,!0)),A.ok(X)}}DUA.validateSchemaDeps=HUA;DUA.default=p1B});var RUA=R((zUA)=>{Object.defineProperty(zUA,"__esModule",{value:!0});var MUA=GB(),r1B=wB(),a1B={message:"property name must be valid",params:({params:A})=>MUA._`{propertyName: ${A.propertyName}}`},o1B={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:a1B,code(A){let{gen:Q,schema:B,data:Y,it:J}=A;if((0,r1B.alwaysValidSchema)(J,B))return;let C=Q.name("valid");Q.forIn("key",Y,(X)=>{A.setParams({propertyName:X}),A.subschema({keyword:"propertyNames",data:X,dataTypes:["string"],propertyName:X,compositeRule:!0},C),Q.if((0,MUA.not)(C),()=>{if(A.error(!0),!J.allErrors)Q.break()})}),A.ok(C)}};zUA.default=o1B});var Ub=R((wUA)=>{Object.defineProperty(wUA,"__esModule",{value:!0});var Cw=I5(),xC=GB(),e1B=vX(),Xw=wB(),A6B={message:"must NOT have additional properties",params:({params:A})=>xC._`{additionalProperty: ${A.additionalProperty}}`},Q6B={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:A6B,code(A){let{gen:Q,schema:B,parentSchema:Y,data:J,errsCount:C,it:X}=A;if(!C)throw Error("ajv implementation error");let{allErrors:G,opts:F}=X;if(X.props=!0,F.removeAdditional!=="all"&&(0,Xw.alwaysValidSchema)(X,B))return;let W=(0,Cw.allSchemaProperties)(Y.properties),Z=(0,Cw.allSchemaProperties)(Y.patternProperties);U(),A.ok(xC._`${C} === ${e1B.default.errors}`);function U(){Q.forIn("key",J,(V)=>{if(!W.length&&!Z.length)K(V);else Q.if($(V),()=>K(V))})}function $(V){let H;if(W.length>8){let D=(0,Xw.schemaRefOrVal)(X,Y.properties,"properties");H=(0,Cw.isOwnProperty)(Q,D,V)}else if(W.length)H=(0,xC.or)(...W.map((D)=>xC._`${V} === ${D}`));else H=xC.nil;if(Z.length)H=(0,xC.or)(H,...Z.map((D)=>xC._`${(0,Cw.usePattern)(A,D)}.test(${V})`));return(0,xC.not)(H)}function E(V){Q.code(xC._`delete ${J}[${V}]`)}function K(V){if(F.removeAdditional==="all"||F.removeAdditional&&B===!1){E(V);return}if(B===!1){if(A.setParams({additionalProperty:V}),A.error(),!G)Q.break();return}if(typeof B=="object"&&!(0,Xw.alwaysValidSchema)(X,B)){let H=Q.name("valid");if(F.removeAdditional==="failing")I(V,H,!1),Q.if((0,xC.not)(H),()=>{A.reset(),E(V)});else if(I(V,H),!G)Q.if((0,xC.not)(H),()=>Q.break())}}function I(V,H,D){let L={keyword:"additionalProperties",dataProp:V,dataPropType:Xw.Type.Str};if(D===!1)Object.assign(L,{compositeRule:!0,createErrors:!1,allErrors:!1});A.subschema(L,H)}}};wUA.default=Q6B});var TUA=R((PUA)=>{Object.defineProperty(PUA,"__esModule",{value:!0});var Y6B=GD(),jUA=I5(),Eb=wB(),OUA=Ub(),J6B={keyword:"properties",type:"object",schemaType:"object",code(A){let{gen:Q,schema:B,parentSchema:Y,data:J,it:C}=A;if(C.opts.removeAdditional==="all"&&Y.additionalProperties===void 0)OUA.default.code(new Y6B.KeywordCxt(C,OUA.default,"additionalProperties"));let X=(0,jUA.allSchemaProperties)(B);for(let U of X)C.definedProperties.add(U);if(C.opts.unevaluated&&X.length&&C.props!==!0)C.props=Eb.mergeEvaluated.props(Q,(0,Eb.toHash)(X),C.props);let G=X.filter((U)=>!(0,Eb.alwaysValidSchema)(C,B[U]));if(G.length===0)return;let F=Q.name("valid");for(let U of G){if(W(U))Z(U);else{if(Q.if((0,jUA.propertyInData)(Q,J,U,C.opts.ownProperties)),Z(U),!C.allErrors)Q.else().var(F,!0);Q.endIf()}A.it.definedProperties.add(U),A.ok(F)}function W(U){return C.opts.useDefaults&&!C.compositeRule&&B[U].default!==void 0}function Z(U){A.subschema({keyword:"properties",schemaProp:U,dataProp:U},F)}}};PUA.default=J6B});var yUA=R((vUA)=>{Object.defineProperty(vUA,"__esModule",{value:!0});var SUA=I5(),Gw=GB(),kUA=wB(),_UA=wB(),X6B={keyword:"patternProperties",type:"object",schemaType:"object",code(A){let{gen:Q,schema:B,data:Y,parentSchema:J,it:C}=A,{opts:X}=C,G=(0,SUA.allSchemaProperties)(B),F=G.filter((I)=>(0,kUA.alwaysValidSchema)(C,B[I]));if(G.length===0||F.length===G.length&&(!C.opts.unevaluated||C.props===!0))return;let W=X.strictSchema&&!X.allowMatchingProperties&&J.properties,Z=Q.name("valid");if(C.props!==!0&&!(C.props instanceof Gw.Name))C.props=(0,_UA.evaluatedPropsToName)(Q,C.props);let{props:U}=C;$();function $(){for(let I of G){if(W)E(I);if(C.allErrors)K(I);else Q.var(Z,!0),K(I),Q.if(Z)}}function E(I){for(let V in W)if(new RegExp(I).test(V))(0,kUA.checkStrictMode)(C,`property ${V} matches pattern ${I} (use allowMatchingProperties)`)}function K(I){Q.forIn("key",Y,(V)=>{Q.if(Gw._`${(0,SUA.usePattern)(A,I)}.test(${V})`,()=>{let H=F.includes(I);if(!H)A.subschema({keyword:"patternProperties",schemaProp:I,dataProp:V,dataPropType:_UA.Type.Str},Z);if(C.opts.unevaluated&&U!==!0)Q.assign(Gw._`${U}[${V}]`,!0);else if(!H&&!C.allErrors)Q.if((0,Gw.not)(Z),()=>Q.break())})})}}};vUA.default=X6B});var gUA=R((hUA)=>{Object.defineProperty(hUA,"__esModule",{value:!0});var F6B=wB(),W6B={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(A){let{gen:Q,schema:B,it:Y}=A;if((0,F6B.alwaysValidSchema)(Y,B)){A.fail();return}let J=Q.name("valid");A.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},J),A.failResult(J,()=>A.reset(),()=>A.error())},error:{message:"must NOT be valid"}};hUA.default=W6B});var fUA=R((xUA)=>{Object.defineProperty(xUA,"__esModule",{value:!0});var $6B=I5(),U6B={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:$6B.validateUnion,error:{message:"must match a schema in anyOf"}};xUA.default=U6B});var mUA=R((bUA)=>{Object.defineProperty(bUA,"__esModule",{value:!0});var Fw=GB(),K6B=wB(),V6B={message:"must match exactly one schema in oneOf",params:({params:A})=>Fw._`{passingSchemas: ${A.passing}}`},I6B={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:V6B,code(A){let{gen:Q,schema:B,parentSchema:Y,it:J}=A;if(!Array.isArray(B))throw Error("ajv implementation error");if(J.opts.discriminator&&Y.discriminator)return;let C=B,X=Q.let("valid",!1),G=Q.let("passing",null),F=Q.name("_valid");A.setParams({passing:G}),Q.block(W),A.result(X,()=>A.reset(),()=>A.error(!0));function W(){C.forEach((Z,U)=>{let $;if((0,K6B.alwaysValidSchema)(J,Z))Q.var(F,!0);else $=A.subschema({keyword:"oneOf",schemaProp:U,compositeRule:!0},F);if(U>0)Q.if(Fw._`${F} && ${X}`).assign(X,!1).assign(G,Fw._`[${G}, ${U}]`).else();Q.if(F,()=>{if(Q.assign(X,!0),Q.assign(G,U),$)A.mergeEvaluated($,Fw.Name)})})}}};bUA.default=I6B});var dUA=R((uUA)=>{Object.defineProperty(uUA,"__esModule",{value:!0});var D6B=wB(),N6B={keyword:"allOf",schemaType:"array",code(A){let{gen:Q,schema:B,it:Y}=A;if(!Array.isArray(B))throw Error("ajv implementation error");let J=Q.name("valid");B.forEach((C,X)=>{if((0,D6B.alwaysValidSchema)(Y,C))return;let G=A.subschema({keyword:"allOf",schemaProp:X},J);A.ok(J),A.mergeEvaluated(G)})}};uUA.default=N6B});var iUA=R((pUA)=>{Object.defineProperty(pUA,"__esModule",{value:!0});var Ww=GB(),lUA=wB(),q6B={message:({params:A})=>Ww.str`must match "${A.ifClause}" schema`,params:({params:A})=>Ww._`{failingKeyword: ${A.ifClause}}`},M6B={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:q6B,code(A){let{gen:Q,parentSchema:B,it:Y}=A;if(B.then===void 0&&B.else===void 0)(0,lUA.checkStrictMode)(Y,'"if" without "then" and "else" is ignored');let J=cUA(Y,"then"),C=cUA(Y,"else");if(!J&&!C)return;let X=Q.let("valid",!0),G=Q.name("_valid");if(F(),A.reset(),J&&C){let Z=Q.let("ifClause");A.setParams({ifClause:Z}),Q.if(G,W("then",Z),W("else",Z))}else if(J)Q.if(G,W("then"));else Q.if((0,Ww.not)(G),W("else"));A.pass(X,()=>A.error(!0));function F(){let Z=A.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},G);A.mergeEvaluated(Z)}function W(Z,U){return()=>{let $=A.subschema({keyword:Z},G);if(Q.assign(X,G),A.mergeValidEvaluated($,X),U)Q.assign(U,Ww._`${Z}`);else A.setParams({ifClause:Z})}}}};function cUA(A,Q){let B=A.schema[Q];return B!==void 0&&!(0,lUA.alwaysValidSchema)(A,B)}pUA.default=M6B});var sUA=R((nUA)=>{Object.defineProperty(nUA,"__esModule",{value:!0});var R6B=wB(),w6B={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:A,parentSchema:Q,it:B}){if(Q.if===void 0)(0,R6B.checkStrictMode)(B,`"${A}" without "if" is ignored`)}};nUA.default=w6B});var aUA=R((rUA)=>{Object.defineProperty(rUA,"__esModule",{value:!0});var O6B=Wb(),P6B=ZUA(),T6B=Zb(),S6B=EUA(),k6B=VUA(),_6B=qUA(),v6B=RUA(),y6B=Ub(),h6B=TUA(),g6B=yUA(),x6B=gUA(),f6B=fUA(),b6B=mUA(),m6B=dUA(),u6B=iUA(),d6B=sUA();function c6B(A=!1){let Q=[x6B.default,f6B.default,b6B.default,m6B.default,u6B.default,d6B.default,v6B.default,y6B.default,_6B.default,h6B.default,g6B.default];if(A)Q.push(P6B.default,S6B.default);else Q.push(O6B.default,T6B.default);return Q.push(k6B.default),Q}rUA.default=c6B});var tUA=R((oUA)=>{Object.defineProperty(oUA,"__esModule",{value:!0});var XY=GB(),p6B={message:({schemaCode:A})=>XY.str`must match format "${A}"`,params:({schemaCode:A})=>XY._`{format: ${A}}`},i6B={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:p6B,code(A,Q){let{gen:B,data:Y,$data:J,schema:C,schemaCode:X,it:G}=A,{opts:F,errSchemaPath:W,schemaEnv:Z,self:U}=G;if(!F.validateFormats)return;if(J)$();else E();function $(){let K=B.scopeValue("formats",{ref:U.formats,code:F.code.formats}),I=B.const("fDef",XY._`${K}[${X}]`),V=B.let("fType"),H=B.let("format");B.if(XY._`typeof ${I} == "object" && !(${I} instanceof RegExp)`,()=>B.assign(V,XY._`${I}.type || "string"`).assign(H,XY._`${I}.validate`),()=>B.assign(V,XY._`"string"`).assign(H,I)),A.fail$data((0,XY.or)(D(),L()));function D(){if(F.strictSchema===!1)return XY.nil;return XY._`${X} && !${H}`}function L(){let z=Z.$async?XY._`(${I}.async ? await ${H}(${Y}) : ${H}(${Y}))`:XY._`${H}(${Y})`,M=XY._`(typeof ${H} == "function" ? ${z} : ${H}.test(${Y}))`;return XY._`${H} && ${H} !== true && ${V} === ${Q} && !${M}`}}function E(){let K=U.formats[C];if(!K){D();return}if(K===!0)return;let[I,V,H]=L(K);if(I===Q)A.pass(z());function D(){if(F.strictSchema===!1){U.logger.warn(M());return}throw Error(M());function M(){return`unknown format "${C}" ignored in schema at path "${W}"`}}function L(M){let N=M instanceof RegExp?(0,XY.regexpCode)(M):F.code.formats?XY._`${F.code.formats}${(0,XY.getProperty)(C)}`:void 0,q=B.scopeValue("formats",{key:C,ref:M,code:N});if(typeof M=="object"&&!(M instanceof RegExp))return[M.type||"string",M.validate,XY._`${q}.validate`];return["string",M,q]}function z(){if(typeof K=="object"&&!(K instanceof RegExp)&&K.async){if(!Z.$async)throw Error("async format in sync schema");return XY._`await ${H}(${Y})`}return typeof V=="function"?XY._`${H}(${Y})`:XY._`${H}.test(${Y})`}}}};oUA.default=i6B});var AEA=R((eUA)=>{Object.defineProperty(eUA,"__esModule",{value:!0});var s6B=tUA(),r6B=[s6B.default];eUA.default=r6B});var YEA=R((QEA)=>{Object.defineProperty(QEA,"__esModule",{value:!0});QEA.contentVocabulary=QEA.metadataVocabulary=void 0;QEA.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];QEA.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var XEA=R((CEA)=>{Object.defineProperty(CEA,"__esModule",{value:!0});var t6B=P4A(),e6B=QUA(),AXB=aUA(),QXB=AEA(),JEA=YEA(),BXB=[t6B.default,e6B.default,(0,AXB.default)(),QXB.default,JEA.metadataVocabulary,JEA.contentVocabulary];CEA.default=BXB});var ZEA=R((FEA)=>{Object.defineProperty(FEA,"__esModule",{value:!0});FEA.DiscrError=void 0;var GEA;(function(A){A.Tag="tag",A.Mapping="mapping"})(GEA||(FEA.DiscrError=GEA={}))});var EEA=R((UEA)=>{Object.defineProperty(UEA,"__esModule",{value:!0});var WE=GB(),Kb=ZEA(),$EA=pR(),JXB=FD(),CXB=wB(),XXB={message:({params:{discrError:A,tagName:Q}})=>A===Kb.DiscrError.Tag?`tag "${Q}" must be string`:`value of tag "${Q}" must be in oneOf`,params:({params:{discrError:A,tag:Q,tagName:B}})=>WE._`{error: ${A}, tag: ${B}, tagValue: ${Q}}`},GXB={keyword:"discriminator",type:"object",schemaType:"object",error:XXB,code(A){let{gen:Q,data:B,schema:Y,parentSchema:J,it:C}=A,{oneOf:X}=J;if(!C.opts.discriminator)throw Error("discriminator: requires discriminator option");let G=Y.propertyName;if(typeof G!="string")throw Error("discriminator: requires propertyName");if(Y.mapping)throw Error("discriminator: mapping is not supported");if(!X)throw Error("discriminator: requires oneOf keyword");let F=Q.let("valid",!1),W=Q.const("tag",WE._`${B}${(0,WE.getProperty)(G)}`);Q.if(WE._`typeof ${W} == "string"`,()=>Z(),()=>A.error(!1,{discrError:Kb.DiscrError.Tag,tag:W,tagName:G})),A.ok(F);function Z(){let E=$();Q.if(!1);for(let K in E)Q.elseIf(WE._`${W} === ${K}`),Q.assign(F,U(E[K]));Q.else(),A.error(!1,{discrError:Kb.DiscrError.Mapping,tag:W,tagName:G}),Q.endIf()}function U(E){let K=Q.name("valid"),I=A.subschema({keyword:"oneOf",schemaProp:E},K);return A.mergeEvaluated(I,WE.Name),K}function $(){var E;let K={},I=H(J),V=!0;for(let z=0;z{WXB.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var IEA=R((y9,Vb)=>{Object.defineProperty(y9,"__esModule",{value:!0});y9.MissingRefError=y9.ValidationError=y9.CodeGen=y9.Name=y9.nil=y9.stringify=y9.str=y9._=y9.KeywordCxt=y9.Ajv=void 0;var ZXB=D4A(),$XB=XEA(),UXB=EEA(),VEA=KEA(),EXB=["/properties"],Zw="http://json-schema.org/draft-07/schema";class LD extends ZXB.default{_addVocabularies(){if(super._addVocabularies(),$XB.default.forEach((A)=>this.addVocabulary(A)),this.opts.discriminator)this.addKeyword(UXB.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let A=this.opts.$data?this.$dataMetaSchema(VEA,EXB):VEA;this.addMetaSchema(A,Zw,!1),this.refs["http://json-schema.org/schema"]=Zw}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(Zw)?Zw:void 0)}}y9.Ajv=LD;Vb.exports=y9=LD;Vb.exports.Ajv=LD;Object.defineProperty(y9,"__esModule",{value:!0});y9.default=LD;var KXB=GD();Object.defineProperty(y9,"KeywordCxt",{enumerable:!0,get:function(){return KXB.KeywordCxt}});var ZE=GB();Object.defineProperty(y9,"_",{enumerable:!0,get:function(){return ZE._}});Object.defineProperty(y9,"str",{enumerable:!0,get:function(){return ZE.str}});Object.defineProperty(y9,"stringify",{enumerable:!0,get:function(){return ZE.stringify}});Object.defineProperty(y9,"nil",{enumerable:!0,get:function(){return ZE.nil}});Object.defineProperty(y9,"Name",{enumerable:!0,get:function(){return ZE.Name}});Object.defineProperty(y9,"CodeGen",{enumerable:!0,get:function(){return ZE.CodeGen}});var VXB=cR();Object.defineProperty(y9,"ValidationError",{enumerable:!0,get:function(){return VXB.default}});var IXB=FD();Object.defineProperty(y9,"MissingRefError",{enumerable:!0,get:function(){return IXB.default}})});var iEA=R((pEA)=>{Object.defineProperty(pEA,"__esModule",{value:!0});pEA.fromEnv=jXB;var lEA="HYTOPIA_API_KEY";function wXB(A){let Q=process.env[lEA];if(!Q)throw Error(`Missing environment variable ${A}`);return Q}function jXB(){return{apiKey:wXB(lEA)}}});var nEA=R((Ym)=>{Object.defineProperty(Ym,"__esModule",{value:!0});Ym.fromEnv=void 0;var PXB=iEA();Object.defineProperty(Ym,"fromEnv",{enumerable:!0,get:function(){return PXB.fromEnv}})});var rEA=R(($E)=>{var Jm=$E&&$E.__importDefault||function(A){return A&&A.__esModule?A:{default:A}};Object.defineProperty($E,"__esModule",{value:!0});$E.LocalBackend=void 0;var Cm=Jm(u("fs")),SXB=Jm(u("path")),Xm=Jm(u("util")),kXB=Xm.default.promisify(Cm.default.mkdir),_XB=Xm.default.promisify(Cm.default.readFile),vXB=Xm.default.promisify(Cm.default.writeFile);class sEA{dataDir;constructor(A){this.dataDir=A}calculatePath(A,Q){return`${this.dataDir}/${A}/${Q}.json`}async load(A,Q){try{let B=await _XB(this.calculatePath(A,Q),"utf8"),Y=JSON.parse(B);if(!Y.__version)Y.__version=1;return Y}catch(B){return{__version:1}}}async upload(A,Q){await kXB(SXB.default.join(this.dataDir,A),{recursive:!0});var B=[];for(var[Y,J]of Object.entries(Q))B.push(vXB(this.calculatePath(A,Y),JSON.stringify(J)));await Promise.all(B)}}$E.LocalBackend=sEA});var Gm=R((oEA)=>{Object.defineProperty(oEA,"__esModule",{value:!0});oEA.proxifyObject=aEA;function aEA(A,Q){for(let[B,Y]of Object.entries(A))if(Y instanceof Object)A[B]=aEA(Y,Q);return new Proxy(A,Q)}});var AKA=R((eEA)=>{Object.defineProperty(eEA,"__esModule",{value:!0});eEA.load=hXB;var tEA=Gm();async function hXB(A){let Q=await this.backend.load(this.gameId,A),B=this.saveStatesManager,Y={set(C,X,G){if(typeof G==="function")return!1;if(G instanceof Object)C[X]=(0,tEA.proxifyObject)(G,Y);else C[X]=G;if(X!=="__version")B.incrementVersion(A);return!0},deleteProperty(C,X){if(X in C)delete C[X];return B.incrementVersion(A),!0}},J=(0,tEA.proxifyObject)(Q,Y);return B.setReference(A,J),J}});var CKA=R((YKA)=>{Object.defineProperty(YKA,"__esModule",{value:!0});YKA.SaveStatesManager=void 0;var QKA=Gm();class BKA{_stateReferences={};_pendingSaveQueue={};_hasQueuedSaves=!1;setReference(A,Q){this._stateReferences[A]=Q}getReference(A){return this._stateReferences[A]??null}dropReference(A){if(!this._stateReferences)return;delete this._stateReferences[A]}incrementVersion(A){if(!this._stateReferences[A])return;this._hasQueuedSaves=!0;let Q=this._stateReferences[A];Q.__version+=1,this._pendingSaveQueue[A]=Q}getPendingSaves(){if(!this._hasQueuedSaves)return null;let A=JSON.parse(JSON.stringify(this._pendingSaveQueue));return this._pendingSaveQueue={},this._hasQueuedSaves=!1,A}load(A,Q){let B=this.getReference(A);if(B)return{value:B.value};let Y=this,J={set(X,G,F){if(typeof F==="function")return!1;if(F instanceof Object)X[G]=(0,QKA.proxifyObject)(F,J);else X[G]=F;if(G!=="__version")Y.incrementVersion(A);return!0},deleteProperty(X,G){if(G in X)delete X[G];return Y.incrementVersion(A),!0}},C=(0,QKA.proxifyObject)(Q.value,J);return Y.setReference(A,C),{error:void 0,value:C}}}YKA.SaveStatesManager=BKA});var GKA=R((XKA)=>{Object.defineProperty(XKA,"__esModule",{value:!0});XKA.flush=xXB;async function xXB(){let A=this.saveStatesManager.getPendingSaves();if(!A)return;await this.backend.upload(this.gameId,A)}});var $KA=R((WKA)=>{Object.defineProperty(WKA,"__esModule",{value:!0});WKA.RemoteBackend=void 0;class FKA{baseUrl;credentials;constructor(A,Q,B){this.baseUrl=A,this.credentials=Q}async load(A,Q){while(!0){try{let B=await fetch(`${this.baseUrl}/play/kv/get/${A}/${Q}`,{headers:{"X-Api-Key":this.credentials.apiKey}}),Y=await B.json();if(B.ok){if(!Y.value.__version)Y.value.__version=1;return Y.value}if(Y&&Y.error){if(Y.error.code==="keyNotFound")return{__version:1};console.warn(`[SaveStates] Got an error loading remote state for key ${Q}: ${Y.error.code}, retrying in 1s...`),await new Promise((J)=>setTimeout(J,1000));continue}throw Error("Unexpected error body")}catch(B){console.warn(`[SaveStates] Could not load remote state for key ${Q} due to a connection issue, retrying in 1s...`)}await new Promise((B)=>setTimeout(B,1000))}}async upload(A,Q){while(!0){try{let B=await fetch(`${this.baseUrl}/play/kv/setbulk/${A}`,{method:"POST",headers:{"Content-Type":"application/json","X-Api-Key":this.credentials.apiKey},body:JSON.stringify(Q)}),Y=await B.json();if(B.ok)return;if(Y&&Y.error){console.warn(`[SaveStates] Could not upload state to remote due to an error (code '${Y.error.code}'), retrying in 1s...`),await new Promise((J)=>setTimeout(J,1000));continue}throw Error("Unexpected error body")}catch(B){console.warn("[SaveStates] Could not upload state to remote due to a connection issue, retrying in 1s...")}await new Promise((B)=>setTimeout(B,1000))}}}WKA.RemoteBackend=FKA});var EKA=R((UKA)=>{Object.defineProperty(UKA,"__esModule",{value:!0});UKA.unload=bXB;async function bXB(A){this.saveStatesManager.dropReference(A),await this.flush()}});var HKA=R((VKA)=>{Object.defineProperty(VKA,"__esModule",{value:!0});VKA.SaveStatesClient=void 0;var uXB=nEA(),dXB=rEA(),cXB=AKA(),lXB=CKA(),pXB=GKA(),iXB=$KA(),nXB=EKA();function sXB(A){if(A)return A;try{let Q=(0,uXB.fromEnv)(),B=process.env.HYTOPIA_PERSUADE_CREATIVE_GATEWAY_BASE_URL??"https://prod.persuade-creative.hytopia.com",Y=process.env.HYTOPIA_GAME_ID;if(!Y)throw Error("Missing HYTOPIA_GAME_ID environment variable");return new iXB.RemoteBackend(B,Q,Y)}catch{return console.warn("[SaveStates] Couldn't load credentials from environment variables, defaulting to local backend"),new dXB.LocalBackend("dev")}}class KKA{backend;gameId;saveStatesManager;constructor(A){this.backend=sXB(A?.backend),this.gameId=A?.gameId??process.env.HYTOPIA_GAME_ID??"persistence",this.saveStatesManager=new lXB.SaveStatesManager;async function Q(B){while(!0)await B.flush(),await new Promise((Y)=>{setTimeout(Y,1000).unref()})}Q(this)}load=cXB.load;unload=nXB.unload;flush=pXB.flush}VKA.SaveStatesClient=KKA});var xX=R((sIY,LKA)=>{var DKA=["nodebuffer","arraybuffer","fragments"],NKA=typeof Blob<"u";if(NKA)DKA.push("blob");LKA.exports={BINARY_TYPES:DKA,EMPTY_BUFFER:Buffer.alloc(0),GUID:"258EAFA5-E914-47DA-95CA-C5AB0DC85B11",hasBlob:NKA,kForOnEventAttribute:Symbol("kIsForOnEventAttribute"),kListener:Symbol("kListener"),kStatusCode:Symbol("status-code"),kWebSocket:Symbol("websocket"),NOOP:()=>{}}});var wD=R((rIY,Vw)=>{var{EMPTY_BUFFER:rXB}=xX(),Fm=Buffer[Symbol.species];function aXB(A,Q){if(A.length===0)return rXB;if(A.length===1)return A[0];let B=Buffer.allocUnsafe(Q),Y=0;for(let J=0;J{throw new Error("Cannot require module "+"bufferutil");})();Vw.exports.mask=function(Q,B,Y,J,C){if(C<48)qKA(Q,B,Y,J,C);else A.mask(Q,B,Y,J,C)},Vw.exports.unmask=function(Q,B){if(Q.length<32)MKA(Q,B);else A.unmask(Q,B)}}catch(A){}});var jKA=R((aIY,wKA)=>{var zKA=Symbol("kDone"),Zm=Symbol("kRun");class RKA{constructor(A){this[zKA]=()=>{this.pending--,this[Zm]()},this.concurrency=A||1/0,this.jobs=[],this.pending=0}add(A){this.jobs.push(A),this[Zm]()}[Zm](){if(this.pending===this.concurrency)return;if(this.jobs.length){let A=this.jobs.shift();this.pending++,A(this[zKA])}}}wKA.exports=RKA});var OD=R((oIY,kKA)=>{var jD=u("zlib"),OKA=wD(),tXB=jKA(),{kStatusCode:PKA}=xX(),eXB=Buffer[Symbol.species],AGB=Buffer.from([0,0,255,255]),Hw=Symbol("permessage-deflate"),fX=Symbol("total-length"),UE=Symbol("callback"),h7=Symbol("buffers"),EE=Symbol("error"),Iw;class TKA{constructor(A,Q,B){if(this._maxPayload=B|0,this._options=A||{},this._threshold=this._options.threshold!==void 0?this._options.threshold:1024,this._isServer=!!Q,this._deflate=null,this._inflate=null,this.params=null,!Iw){let Y=this._options.concurrencyLimit!==void 0?this._options.concurrencyLimit:10;Iw=new tXB(Y)}}static get extensionName(){return"permessage-deflate"}offer(){let A={};if(this._options.serverNoContextTakeover)A.server_no_context_takeover=!0;if(this._options.clientNoContextTakeover)A.client_no_context_takeover=!0;if(this._options.serverMaxWindowBits)A.server_max_window_bits=this._options.serverMaxWindowBits;if(this._options.clientMaxWindowBits)A.client_max_window_bits=this._options.clientMaxWindowBits;else if(this._options.clientMaxWindowBits==null)A.client_max_window_bits=!0;return A}accept(A){return A=this.normalizeParams(A),this.params=this._isServer?this.acceptAsServer(A):this.acceptAsClient(A),this.params}cleanup(){if(this._inflate)this._inflate.close(),this._inflate=null;if(this._deflate){let A=this._deflate[UE];if(this._deflate.close(),this._deflate=null,A)A(Error("The deflate stream was closed while data was being processed"))}}acceptAsServer(A){let Q=this._options,B=A.find((Y)=>{if(Q.serverNoContextTakeover===!1&&Y.server_no_context_takeover||Y.server_max_window_bits&&(Q.serverMaxWindowBits===!1||typeof Q.serverMaxWindowBits==="number"&&Q.serverMaxWindowBits>Y.server_max_window_bits)||typeof Q.clientMaxWindowBits==="number"&&!Y.client_max_window_bits)return!1;return!0});if(!B)throw Error("None of the extension offers can be accepted");if(Q.serverNoContextTakeover)B.server_no_context_takeover=!0;if(Q.clientNoContextTakeover)B.client_no_context_takeover=!0;if(typeof Q.serverMaxWindowBits==="number")B.server_max_window_bits=Q.serverMaxWindowBits;if(typeof Q.clientMaxWindowBits==="number")B.client_max_window_bits=Q.clientMaxWindowBits;else if(B.client_max_window_bits===!0||Q.clientMaxWindowBits===!1)delete B.client_max_window_bits;return B}acceptAsClient(A){let Q=A[0];if(this._options.clientNoContextTakeover===!1&&Q.client_no_context_takeover)throw Error('Unexpected parameter "client_no_context_takeover"');if(!Q.client_max_window_bits){if(typeof this._options.clientMaxWindowBits==="number")Q.client_max_window_bits=this._options.clientMaxWindowBits}else if(this._options.clientMaxWindowBits===!1||typeof this._options.clientMaxWindowBits==="number"&&Q.client_max_window_bits>this._options.clientMaxWindowBits)throw Error('Unexpected or invalid parameter "client_max_window_bits"');return Q}normalizeParams(A){return A.forEach((Q)=>{Object.keys(Q).forEach((B)=>{let Y=Q[B];if(Y.length>1)throw Error(`Parameter "${B}" must have only a single value`);if(Y=Y[0],B==="client_max_window_bits"){if(Y!==!0){let J=+Y;if(!Number.isInteger(J)||J<8||J>15)throw TypeError(`Invalid value for parameter "${B}": ${Y}`);Y=J}else if(!this._isServer)throw TypeError(`Invalid value for parameter "${B}": ${Y}`)}else if(B==="server_max_window_bits"){let J=+Y;if(!Number.isInteger(J)||J<8||J>15)throw TypeError(`Invalid value for parameter "${B}": ${Y}`);Y=J}else if(B==="client_no_context_takeover"||B==="server_no_context_takeover"){if(Y!==!0)throw TypeError(`Invalid value for parameter "${B}": ${Y}`)}else throw Error(`Unknown parameter "${B}"`);Q[B]=Y})}),A}decompress(A,Q,B){Iw.add((Y)=>{this._decompress(A,Q,(J,C)=>{Y(),B(J,C)})})}compress(A,Q,B){Iw.add((Y)=>{this._compress(A,Q,(J,C)=>{Y(),B(J,C)})})}_decompress(A,Q,B){let Y=this._isServer?"client":"server";if(!this._inflate){let J=`${Y}_max_window_bits`,C=typeof this.params[J]!=="number"?jD.Z_DEFAULT_WINDOWBITS:this.params[J];this._inflate=jD.createInflateRaw({...this._options.zlibInflateOptions,windowBits:C}),this._inflate[Hw]=this,this._inflate[fX]=0,this._inflate[h7]=[],this._inflate.on("error",BGB),this._inflate.on("data",SKA)}if(this._inflate[UE]=B,this._inflate.write(A),Q)this._inflate.write(AGB);this._inflate.flush(()=>{let J=this._inflate[EE];if(J){this._inflate.close(),this._inflate=null,B(J);return}let C=OKA.concat(this._inflate[h7],this._inflate[fX]);if(this._inflate._readableState.endEmitted)this._inflate.close(),this._inflate=null;else if(this._inflate[fX]=0,this._inflate[h7]=[],Q&&this.params[`${Y}_no_context_takeover`])this._inflate.reset();B(null,C)})}_compress(A,Q,B){let Y=this._isServer?"server":"client";if(!this._deflate){let J=`${Y}_max_window_bits`,C=typeof this.params[J]!=="number"?jD.Z_DEFAULT_WINDOWBITS:this.params[J];this._deflate=jD.createDeflateRaw({...this._options.zlibDeflateOptions,windowBits:C}),this._deflate[fX]=0,this._deflate[h7]=[],this._deflate.on("data",QGB)}this._deflate[UE]=B,this._deflate.write(A),this._deflate.flush(jD.Z_SYNC_FLUSH,()=>{if(!this._deflate)return;let J=OKA.concat(this._deflate[h7],this._deflate[fX]);if(Q)J=new eXB(J.buffer,J.byteOffset,J.length-4);if(this._deflate[UE]=null,this._deflate[fX]=0,this._deflate[h7]=[],Q&&this.params[`${Y}_no_context_takeover`])this._deflate.reset();B(null,J)})}}kKA.exports=TKA;function QGB(A){this[h7].push(A),this[fX]+=A.length}function SKA(A){if(this[fX]+=A.length,this[Hw]._maxPayload<1||this[fX]<=this[Hw]._maxPayload){this[h7].push(A);return}this[EE]=RangeError("Max payload size exceeded"),this[EE].code="WS_ERR_UNSUPPORTED_MESSAGE_LENGTH",this[EE][PKA]=1009,this.removeListener("data",SKA),this.reset()}function BGB(A){if(this[Hw]._inflate=null,this[EE]){this[UE](this[EE]);return}A[PKA]=1007,this[UE](A)}});var KE=R((tIY,Dw)=>{var{isUtf8:_KA}=u("buffer"),{hasBlob:YGB}=xX(),JGB=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,1,1,1,0,0,1,1,0,1,1,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,0,1,0];function CGB(A){return A>=1000&&A<=1014&&A!==1004&&A!==1005&&A!==1006||A>=3000&&A<=4999}function $m(A){let Q=A.length,B=0;while(B=Q||(A[B+1]&192)!==128||(A[B+2]&192)!==128||A[B]===224&&(A[B+1]&224)===128||A[B]===237&&(A[B+1]&224)===160)return!1;B+=3}else if((A[B]&248)===240){if(B+3>=Q||(A[B+1]&192)!==128||(A[B+2]&192)!==128||(A[B+3]&192)!==128||A[B]===240&&(A[B+1]&240)===128||A[B]===244&&A[B+1]>143||A[B]>244)return!1;B+=4}else return!1;return!0}function XGB(A){return YGB&&typeof A==="object"&&typeof A.arrayBuffer==="function"&&typeof A.type==="string"&&typeof A.stream==="function"&&(A[Symbol.toStringTag]==="Blob"||A[Symbol.toStringTag]==="File")}Dw.exports={isBlob:XGB,isValidStatusCode:CGB,isValidUTF8:$m,tokenChars:JGB};if(_KA)Dw.exports.isValidUTF8=function(A){return A.length<24?$m(A):_KA(A)};else if(!process.env.WS_NO_UTF_8_VALIDATE)try{let A=(()=>{throw new Error("Cannot require module "+"utf-8-validate");})();Dw.exports.isValidUTF8=function(Q){return Q.length<32?$m(Q):A(Q)}}catch(A){}});var Em=R((eIY,xKA)=>{var{Writable:GGB}=u("stream"),vKA=OD(),{BINARY_TYPES:FGB,EMPTY_BUFFER:yKA,kStatusCode:WGB,kWebSocket:ZGB}=xX(),{concat:Um,toArrayBuffer:$GB,unmask:UGB}=wD(),{isValidStatusCode:EGB,isValidUTF8:hKA}=KE(),Nw=Buffer[Symbol.species];class gKA extends GGB{constructor(A={}){super();this._allowSynchronousEvents=A.allowSynchronousEvents!==void 0?A.allowSynchronousEvents:!0,this._binaryType=A.binaryType||FGB[0],this._extensions=A.extensions||{},this._isServer=!!A.isServer,this._maxPayload=A.maxPayload|0,this._skipUTF8Validation=!!A.skipUTF8Validation,this[ZGB]=void 0,this._bufferedBytes=0,this._buffers=[],this._compressed=!1,this._payloadLength=0,this._mask=void 0,this._fragmented=0,this._masked=!1,this._fin=!1,this._opcode=0,this._totalPayloadLength=0,this._messageLength=0,this._fragments=[],this._errored=!1,this._loop=!1,this._state=0}_write(A,Q,B){if(this._opcode===8&&this._state==0)return B();this._bufferedBytes+=A.length,this._buffers.push(A),this.startLoop(B)}consume(A){if(this._bufferedBytes-=A,A===this._buffers[0].length)return this._buffers.shift();if(A=B.length)Q.set(this._buffers.shift(),Y);else Q.set(new Uint8Array(B.buffer,B.byteOffset,A),Y),this._buffers[0]=new Nw(B.buffer,B.byteOffset+A,B.length-A);A-=B.length}while(A>0);return Q}startLoop(A){this._loop=!0;do switch(this._state){case 0:this.getInfo(A);break;case 1:this.getPayloadLength16(A);break;case 2:this.getPayloadLength64(A);break;case 3:this.getMask();break;case 4:this.getData(A);break;case 5:case 6:this._loop=!1;return}while(this._loop);if(!this._errored)A()}getInfo(A){if(this._bufferedBytes<2){this._loop=!1;return}let Q=this.consume(2);if((Q[0]&48)!==0){let Y=this.createError(RangeError,"RSV2 and RSV3 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_2_3");A(Y);return}let B=(Q[0]&64)===64;if(B&&!this._extensions[vKA.extensionName]){let Y=this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");A(Y);return}if(this._fin=(Q[0]&128)===128,this._opcode=Q[0]&15,this._payloadLength=Q[1]&127,this._opcode===0){if(B){let Y=this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");A(Y);return}if(!this._fragmented){let Y=this.createError(RangeError,"invalid opcode 0",!0,1002,"WS_ERR_INVALID_OPCODE");A(Y);return}this._opcode=this._fragmented}else if(this._opcode===1||this._opcode===2){if(this._fragmented){let Y=this.createError(RangeError,`invalid opcode ${this._opcode}`,!0,1002,"WS_ERR_INVALID_OPCODE");A(Y);return}this._compressed=B}else if(this._opcode>7&&this._opcode<11){if(!this._fin){let Y=this.createError(RangeError,"FIN must be set",!0,1002,"WS_ERR_EXPECTED_FIN");A(Y);return}if(B){let Y=this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");A(Y);return}if(this._payloadLength>125||this._opcode===8&&this._payloadLength===1){let Y=this.createError(RangeError,`invalid payload length ${this._payloadLength}`,!0,1002,"WS_ERR_INVALID_CONTROL_PAYLOAD_LENGTH");A(Y);return}}else{let Y=this.createError(RangeError,`invalid opcode ${this._opcode}`,!0,1002,"WS_ERR_INVALID_OPCODE");A(Y);return}if(!this._fin&&!this._fragmented)this._fragmented=this._opcode;if(this._masked=(Q[1]&128)===128,this._isServer){if(!this._masked){let Y=this.createError(RangeError,"MASK must be set",!0,1002,"WS_ERR_EXPECTED_MASK");A(Y);return}}else if(this._masked){let Y=this.createError(RangeError,"MASK must be clear",!0,1002,"WS_ERR_UNEXPECTED_MASK");A(Y);return}if(this._payloadLength===126)this._state=1;else if(this._payloadLength===127)this._state=2;else this.haveLength(A)}getPayloadLength16(A){if(this._bufferedBytes<2){this._loop=!1;return}this._payloadLength=this.consume(2).readUInt16BE(0),this.haveLength(A)}getPayloadLength64(A){if(this._bufferedBytes<8){this._loop=!1;return}let Q=this.consume(8),B=Q.readUInt32BE(0);if(B>Math.pow(2,21)-1){let Y=this.createError(RangeError,"Unsupported WebSocket frame: payload length > 2^53 - 1",!1,1009,"WS_ERR_UNSUPPORTED_DATA_PAYLOAD_LENGTH");A(Y);return}this._payloadLength=B*Math.pow(2,32)+Q.readUInt32BE(4),this.haveLength(A)}haveLength(A){if(this._payloadLength&&this._opcode<8){if(this._totalPayloadLength+=this._payloadLength,this._totalPayloadLength>this._maxPayload&&this._maxPayload>0){let Q=this.createError(RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH");A(Q);return}}if(this._masked)this._state=3;else this._state=4}getMask(){if(this._bufferedBytes<4){this._loop=!1;return}this._mask=this.consume(4),this._state=4}getData(A){let Q=yKA;if(this._payloadLength){if(this._bufferedBytes7){this.controlMessage(Q,A);return}if(this._compressed){this._state=5,this.decompress(Q,A);return}if(Q.length)this._messageLength=this._totalPayloadLength,this._fragments.push(Q);this.dataMessage(A)}decompress(A,Q){this._extensions[vKA.extensionName].decompress(A,this._fin,(Y,J)=>{if(Y)return Q(Y);if(J.length){if(this._messageLength+=J.length,this._messageLength>this._maxPayload&&this._maxPayload>0){let C=this.createError(RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH");Q(C);return}this._fragments.push(J)}if(this.dataMessage(Q),this._state===0)this.startLoop(Q)})}dataMessage(A){if(!this._fin){this._state=0;return}let Q=this._messageLength,B=this._fragments;if(this._totalPayloadLength=0,this._messageLength=0,this._fragmented=0,this._fragments=[],this._opcode===2){let Y;if(this._binaryType==="nodebuffer")Y=Um(B,Q);else if(this._binaryType==="arraybuffer")Y=$GB(Um(B,Q));else if(this._binaryType==="blob")Y=new Blob(B);else Y=B;if(this._allowSynchronousEvents)this.emit("message",Y,!0),this._state=0;else this._state=6,setImmediate(()=>{this.emit("message",Y,!0),this._state=0,this.startLoop(A)})}else{let Y=Um(B,Q);if(!this._skipUTF8Validation&&!hKA(Y)){let J=this.createError(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8");A(J);return}if(this._state===5||this._allowSynchronousEvents)this.emit("message",Y,!1),this._state=0;else this._state=6,setImmediate(()=>{this.emit("message",Y,!1),this._state=0,this.startLoop(A)})}}controlMessage(A,Q){if(this._opcode===8){if(A.length===0)this._loop=!1,this.emit("conclude",1005,yKA),this.end();else{let B=A.readUInt16BE(0);if(!EGB(B)){let J=this.createError(RangeError,`invalid status code ${B}`,!0,1002,"WS_ERR_INVALID_CLOSE_CODE");Q(J);return}let Y=new Nw(A.buffer,A.byteOffset+2,A.length-2);if(!this._skipUTF8Validation&&!hKA(Y)){let J=this.createError(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8");Q(J);return}this._loop=!1,this.emit("conclude",B,Y),this.end()}this._state=0;return}if(this._allowSynchronousEvents)this.emit(this._opcode===9?"ping":"pong",A),this._state=0;else this._state=6,setImmediate(()=>{this.emit(this._opcode===9?"ping":"pong",A),this._state=0,this.startLoop(Q)})}createError(A,Q,B,Y,J){this._loop=!1,this._errored=!0;let C=new A(B?`Invalid WebSocket frame: ${Q}`:Q);return Error.captureStackTrace(C,this.createError),C.code=J,C[WGB]=Y,C}}xKA.exports=gKA});var Vm=R((QHY,mKA)=>{var{Duplex:AHY}=u("stream"),{randomFillSync:KGB}=u("crypto"),fKA=OD(),{EMPTY_BUFFER:VGB,kWebSocket:IGB,NOOP:HGB}=xX(),{isBlob:VE,isValidStatusCode:DGB}=KE(),{mask:bKA,toBuffer:ZZ}=wD(),D5=Symbol("kByteLength"),NGB=Buffer.alloc(4),$Z,IE=8192,fC=0,LGB=1,qGB=2;class g7{constructor(A,Q,B){if(this._extensions=Q||{},B)this._generateMask=B,this._maskBuffer=Buffer.alloc(4);this._socket=A,this._firstFragment=!0,this._compress=!1,this._bufferedBytes=0,this._queue=[],this._state=fC,this.onerror=HGB,this[IGB]=void 0}static frame(A,Q){let B,Y=!1,J=2,C=!1;if(Q.mask){if(B=Q.maskBuffer||NGB,Q.generateMask)Q.generateMask(B);else{if(IE===8192){if($Z===void 0)$Z=Buffer.alloc(8192);KGB($Z,0,8192),IE=0}B[0]=$Z[IE++],B[1]=$Z[IE++],B[2]=$Z[IE++],B[3]=$Z[IE++]}C=(B[0]|B[1]|B[2]|B[3])===0,J=6}let X;if(typeof A==="string")if((!Q.mask||C)&&Q[D5]!==void 0)X=Q[D5];else A=Buffer.from(A),X=A.length;else X=A.length,Y=Q.mask&&Q.readOnly&&!C;let G=X;if(X>=65536)J+=8,G=127;else if(X>125)J+=2,G=126;let F=Buffer.allocUnsafe(Y?X+J:J);if(F[0]=Q.fin?Q.opcode|128:Q.opcode,Q.rsv1)F[0]|=64;if(F[1]=G,G===126)F.writeUInt16BE(X,2);else if(G===127)F[2]=F[3]=0,F.writeUIntBE(X,4,6);if(!Q.mask)return[F,A];if(F[1]|=128,F[J-4]=B[0],F[J-3]=B[1],F[J-2]=B[2],F[J-1]=B[3],C)return[F,A];if(Y)return bKA(A,B,F,J,X),[F];return bKA(A,B,A,0,X),[F,A]}close(A,Q,B,Y){let J;if(A===void 0)J=VGB;else if(typeof A!=="number"||!DGB(A))throw TypeError("First argument must be a valid error code number");else if(Q===void 0||!Q.length)J=Buffer.allocUnsafe(2),J.writeUInt16BE(A,0);else{let X=Buffer.byteLength(Q);if(X>123)throw RangeError("The message must not be greater than 123 bytes");if(J=Buffer.allocUnsafe(2+X),J.writeUInt16BE(A,0),typeof Q==="string")J.write(Q,2);else J.set(Q,2)}let C={[D5]:J.length,fin:!0,generateMask:this._generateMask,mask:B,maskBuffer:this._maskBuffer,opcode:8,readOnly:!1,rsv1:!1};if(this._state!==fC)this.enqueue([this.dispatch,J,!1,C,Y]);else this.sendFrame(g7.frame(J,C),Y)}ping(A,Q,B){let Y,J;if(typeof A==="string")Y=Buffer.byteLength(A),J=!1;else if(VE(A))Y=A.size,J=!1;else A=ZZ(A),Y=A.length,J=ZZ.readOnly;if(Y>125)throw RangeError("The data size must not be greater than 125 bytes");let C={[D5]:Y,fin:!0,generateMask:this._generateMask,mask:Q,maskBuffer:this._maskBuffer,opcode:9,readOnly:J,rsv1:!1};if(VE(A))if(this._state!==fC)this.enqueue([this.getBlobData,A,!1,C,B]);else this.getBlobData(A,!1,C,B);else if(this._state!==fC)this.enqueue([this.dispatch,A,!1,C,B]);else this.sendFrame(g7.frame(A,C),B)}pong(A,Q,B){let Y,J;if(typeof A==="string")Y=Buffer.byteLength(A),J=!1;else if(VE(A))Y=A.size,J=!1;else A=ZZ(A),Y=A.length,J=ZZ.readOnly;if(Y>125)throw RangeError("The data size must not be greater than 125 bytes");let C={[D5]:Y,fin:!0,generateMask:this._generateMask,mask:Q,maskBuffer:this._maskBuffer,opcode:10,readOnly:J,rsv1:!1};if(VE(A))if(this._state!==fC)this.enqueue([this.getBlobData,A,!1,C,B]);else this.getBlobData(A,!1,C,B);else if(this._state!==fC)this.enqueue([this.dispatch,A,!1,C,B]);else this.sendFrame(g7.frame(A,C),B)}send(A,Q,B){let Y=this._extensions[fKA.extensionName],J=Q.binary?2:1,C=Q.compress,X,G;if(typeof A==="string")X=Buffer.byteLength(A),G=!1;else if(VE(A))X=A.size,G=!1;else A=ZZ(A),X=A.length,G=ZZ.readOnly;if(this._firstFragment){if(this._firstFragment=!1,C&&Y&&Y.params[Y._isServer?"server_no_context_takeover":"client_no_context_takeover"])C=X>=Y._threshold;this._compress=C}else C=!1,J=0;if(Q.fin)this._firstFragment=!0;let F={[D5]:X,fin:Q.fin,generateMask:this._generateMask,mask:Q.mask,maskBuffer:this._maskBuffer,opcode:J,readOnly:G,rsv1:C};if(VE(A))if(this._state!==fC)this.enqueue([this.getBlobData,A,this._compress,F,B]);else this.getBlobData(A,this._compress,F,B);else if(this._state!==fC)this.enqueue([this.dispatch,A,this._compress,F,B]);else this.dispatch(A,this._compress,F,B)}getBlobData(A,Q,B,Y){this._bufferedBytes+=B[D5],this._state=qGB,A.arrayBuffer().then((J)=>{if(this._socket.destroyed){let X=Error("The socket was closed while the blob was being read");process.nextTick(Km,this,X,Y);return}this._bufferedBytes-=B[D5];let C=ZZ(J);if(!Q)this._state=fC,this.sendFrame(g7.frame(C,B),Y),this.dequeue();else this.dispatch(C,Q,B,Y)}).catch((J)=>{process.nextTick(MGB,this,J,Y)})}dispatch(A,Q,B,Y){if(!Q){this.sendFrame(g7.frame(A,B),Y);return}let J=this._extensions[fKA.extensionName];this._bufferedBytes+=B[D5],this._state=LGB,J.compress(A,B.fin,(C,X)=>{if(this._socket.destroyed){let G=Error("The socket was closed while data was being compressed");Km(this,G,Y);return}this._bufferedBytes-=B[D5],this._state=fC,B.readOnly=!1,this.sendFrame(g7.frame(X,B),Y),this.dequeue()})}dequeue(){while(this._state===fC&&this._queue.length){let A=this._queue.shift();this._bufferedBytes-=A[3][D5],Reflect.apply(A[0],this,A.slice(1))}}enqueue(A){this._bufferedBytes+=A[3][D5],this._queue.push(A)}sendFrame(A,Q){if(A.length===2)this._socket.cork(),this._socket.write(A[0]),this._socket.write(A[1],Q),this._socket.uncork();else this._socket.write(A[0],Q)}}mKA.exports=g7;function Km(A,Q,B){if(typeof B==="function")B(Q);for(let Y=0;Y{var{kForOnEventAttribute:PD,kListener:Im}=xX(),uKA=Symbol("kCode"),dKA=Symbol("kData"),cKA=Symbol("kError"),lKA=Symbol("kMessage"),pKA=Symbol("kReason"),HE=Symbol("kTarget"),iKA=Symbol("kType"),nKA=Symbol("kWasClean");class x7{constructor(A){this[HE]=null,this[iKA]=A}get target(){return this[HE]}get type(){return this[iKA]}}Object.defineProperty(x7.prototype,"target",{enumerable:!0});Object.defineProperty(x7.prototype,"type",{enumerable:!0});class DE extends x7{constructor(A,Q={}){super(A);this[uKA]=Q.code===void 0?0:Q.code,this[pKA]=Q.reason===void 0?"":Q.reason,this[nKA]=Q.wasClean===void 0?!1:Q.wasClean}get code(){return this[uKA]}get reason(){return this[pKA]}get wasClean(){return this[nKA]}}Object.defineProperty(DE.prototype,"code",{enumerable:!0});Object.defineProperty(DE.prototype,"reason",{enumerable:!0});Object.defineProperty(DE.prototype,"wasClean",{enumerable:!0});class TD extends x7{constructor(A,Q={}){super(A);this[cKA]=Q.error===void 0?null:Q.error,this[lKA]=Q.message===void 0?"":Q.message}get error(){return this[cKA]}get message(){return this[lKA]}}Object.defineProperty(TD.prototype,"error",{enumerable:!0});Object.defineProperty(TD.prototype,"message",{enumerable:!0});class qw extends x7{constructor(A,Q={}){super(A);this[dKA]=Q.data===void 0?null:Q.data}get data(){return this[dKA]}}Object.defineProperty(qw.prototype,"data",{enumerable:!0});var zGB={addEventListener(A,Q,B={}){for(let J of this.listeners(A))if(!B[PD]&&J[Im]===Q&&!J[PD])return;let Y;if(A==="message")Y=function(C,X){let G=new qw("message",{data:X?C:C.toString()});G[HE]=this,Lw(Q,this,G)};else if(A==="close")Y=function(C,X){let G=new DE("close",{code:C,reason:X.toString(),wasClean:this._closeFrameReceived&&this._closeFrameSent});G[HE]=this,Lw(Q,this,G)};else if(A==="error")Y=function(C){let X=new TD("error",{error:C,message:C.message});X[HE]=this,Lw(Q,this,X)};else if(A==="open")Y=function(){let C=new x7("open");C[HE]=this,Lw(Q,this,C)};else return;if(Y[PD]=!!B[PD],Y[Im]=Q,B.once)this.once(A,Y);else this.on(A,Y)},removeEventListener(A,Q){for(let B of this.listeners(A))if(B[Im]===Q&&!B[PD]){this.removeListener(A,B);break}}};sKA.exports={CloseEvent:DE,ErrorEvent:TD,Event:x7,EventTarget:zGB,MessageEvent:qw};function Lw(A,Q,B){if(typeof A==="object"&&A.handleEvent)A.handleEvent.call(A,B);else A.call(Q,B)}});var Hm=R((YHY,aKA)=>{var{tokenChars:SD}=KE();function i1(A,Q,B){if(A[Q]===void 0)A[Q]=[B];else A[Q].push(B)}function RGB(A){let Q=Object.create(null),B=Object.create(null),Y=!1,J=!1,C=!1,X,G,F=-1,W=-1,Z=-1,U=0;for(;U{let B=A[Q];if(!Array.isArray(B))B=[B];return B.map((Y)=>{return[Q].concat(Object.keys(Y).map((J)=>{let C=Y[J];if(!Array.isArray(C))C=[C];return C.map((X)=>X===!0?J:`${J}=${X}`).join("; ")})).join("; ")}).join(", ")}).join(", ")}aKA.exports={format:wGB,parse:RGB}});var ww=R((XHY,FVA)=>{var jGB=u("events"),OGB=u("https"),PGB=u("http"),eKA=u("net"),TGB=u("tls"),{randomBytes:SGB,createHash:kGB}=u("crypto"),{Duplex:JHY,Readable:CHY}=u("stream"),{URL:Dm}=u("url"),f7=OD(),_GB=Em(),vGB=Vm(),{isBlob:yGB}=KE(),{BINARY_TYPES:oKA,EMPTY_BUFFER:Mw,GUID:hGB,kForOnEventAttribute:Nm,kListener:gGB,kStatusCode:xGB,kWebSocket:dY,NOOP:AVA}=xX(),{EventTarget:{addEventListener:fGB,removeEventListener:bGB}}=rKA(),{format:mGB,parse:uGB}=Hm(),{toBuffer:dGB}=wD(),QVA=Symbol("kAborted"),Lm=[8,13],bX=["CONNECTING","OPEN","CLOSING","CLOSED"],cGB=/^[!#$%&'*+\-.0-9A-Z^_`|a-z~]+$/;class xQ extends jGB{constructor(A,Q,B){super();if(this._binaryType=oKA[0],this._closeCode=1006,this._closeFrameReceived=!1,this._closeFrameSent=!1,this._closeMessage=Mw,this._closeTimer=null,this._errorEmitted=!1,this._extensions={},this._paused=!1,this._protocol="",this._readyState=xQ.CONNECTING,this._receiver=null,this._sender=null,this._socket=null,A!==null){if(this._bufferedAmount=0,this._isServer=!1,this._redirects=0,Q===void 0)Q=[];else if(!Array.isArray(Q))if(typeof Q==="object"&&Q!==null)B=Q,Q=[];else Q=[Q];BVA(this,A,Q,B)}else this._autoPong=B.autoPong,this._isServer=!0}get binaryType(){return this._binaryType}set binaryType(A){if(!oKA.includes(A))return;if(this._binaryType=A,this._receiver)this._receiver._binaryType=A}get bufferedAmount(){if(!this._socket)return this._bufferedAmount;return this._socket._writableState.length+this._sender._bufferedBytes}get extensions(){return Object.keys(this._extensions).join()}get isPaused(){return this._paused}get onclose(){return null}get onerror(){return null}get onopen(){return null}get onmessage(){return null}get protocol(){return this._protocol}get readyState(){return this._readyState}get url(){return this._url}setSocket(A,Q,B){let Y=new _GB({allowSynchronousEvents:B.allowSynchronousEvents,binaryType:this.binaryType,extensions:this._extensions,isServer:this._isServer,maxPayload:B.maxPayload,skipUTF8Validation:B.skipUTF8Validation}),J=new vGB(A,this._extensions,B.generateMask);if(this._receiver=Y,this._sender=J,this._socket=A,Y[dY]=this,J[dY]=this,A[dY]=this,Y.on("conclude",iGB),Y.on("drain",nGB),Y.on("error",sGB),Y.on("message",rGB),Y.on("ping",aGB),Y.on("pong",oGB),J.onerror=tGB,A.setTimeout)A.setTimeout(0);if(A.setNoDelay)A.setNoDelay();if(Q.length>0)A.unshift(Q);A.on("close",CVA),A.on("data",Rw),A.on("end",XVA),A.on("error",GVA),this._readyState=xQ.OPEN,this.emit("open")}emitClose(){if(!this._socket){this._readyState=xQ.CLOSED,this.emit("close",this._closeCode,this._closeMessage);return}if(this._extensions[f7.extensionName])this._extensions[f7.extensionName].cleanup();this._receiver.removeAllListeners(),this._readyState=xQ.CLOSED,this.emit("close",this._closeCode,this._closeMessage)}close(A,Q){if(this.readyState===xQ.CLOSED)return;if(this.readyState===xQ.CONNECTING){L8(this,this._req,"WebSocket was closed before the connection was established");return}if(this.readyState===xQ.CLOSING){if(this._closeFrameSent&&(this._closeFrameReceived||this._receiver._writableState.errorEmitted))this._socket.end();return}this._readyState=xQ.CLOSING,this._sender.close(A,Q,!this._isServer,(B)=>{if(B)return;if(this._closeFrameSent=!0,this._closeFrameReceived||this._receiver._writableState.errorEmitted)this._socket.end()}),JVA(this)}pause(){if(this.readyState===xQ.CONNECTING||this.readyState===xQ.CLOSED)return;this._paused=!0,this._socket.pause()}ping(A,Q,B){if(this.readyState===xQ.CONNECTING)throw Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof A==="function")B=A,A=Q=void 0;else if(typeof Q==="function")B=Q,Q=void 0;if(typeof A==="number")A=A.toString();if(this.readyState!==xQ.OPEN){qm(this,A,B);return}if(Q===void 0)Q=!this._isServer;this._sender.ping(A||Mw,Q,B)}pong(A,Q,B){if(this.readyState===xQ.CONNECTING)throw Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof A==="function")B=A,A=Q=void 0;else if(typeof Q==="function")B=Q,Q=void 0;if(typeof A==="number")A=A.toString();if(this.readyState!==xQ.OPEN){qm(this,A,B);return}if(Q===void 0)Q=!this._isServer;this._sender.pong(A||Mw,Q,B)}resume(){if(this.readyState===xQ.CONNECTING||this.readyState===xQ.CLOSED)return;if(this._paused=!1,!this._receiver._writableState.needDrain)this._socket.resume()}send(A,Q,B){if(this.readyState===xQ.CONNECTING)throw Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof Q==="function")B=Q,Q={};if(typeof A==="number")A=A.toString();if(this.readyState!==xQ.OPEN){qm(this,A,B);return}let Y={binary:typeof A!=="string",mask:!this._isServer,compress:!0,fin:!0,...Q};if(!this._extensions[f7.extensionName])Y.compress=!1;this._sender.send(A||Mw,Y,B)}terminate(){if(this.readyState===xQ.CLOSED)return;if(this.readyState===xQ.CONNECTING){L8(this,this._req,"WebSocket was closed before the connection was established");return}if(this._socket)this._readyState=xQ.CLOSING,this._socket.destroy()}}Object.defineProperty(xQ,"CONNECTING",{enumerable:!0,value:bX.indexOf("CONNECTING")});Object.defineProperty(xQ.prototype,"CONNECTING",{enumerable:!0,value:bX.indexOf("CONNECTING")});Object.defineProperty(xQ,"OPEN",{enumerable:!0,value:bX.indexOf("OPEN")});Object.defineProperty(xQ.prototype,"OPEN",{enumerable:!0,value:bX.indexOf("OPEN")});Object.defineProperty(xQ,"CLOSING",{enumerable:!0,value:bX.indexOf("CLOSING")});Object.defineProperty(xQ.prototype,"CLOSING",{enumerable:!0,value:bX.indexOf("CLOSING")});Object.defineProperty(xQ,"CLOSED",{enumerable:!0,value:bX.indexOf("CLOSED")});Object.defineProperty(xQ.prototype,"CLOSED",{enumerable:!0,value:bX.indexOf("CLOSED")});["binaryType","bufferedAmount","extensions","isPaused","protocol","readyState","url"].forEach((A)=>{Object.defineProperty(xQ.prototype,A,{enumerable:!0})});["open","error","close","message"].forEach((A)=>{Object.defineProperty(xQ.prototype,`on${A}`,{enumerable:!0,get(){for(let Q of this.listeners(A))if(Q[Nm])return Q[gGB];return null},set(Q){for(let B of this.listeners(A))if(B[Nm]){this.removeListener(A,B);break}if(typeof Q!=="function")return;this.addEventListener(A,Q,{[Nm]:!0})}})});xQ.prototype.addEventListener=fGB;xQ.prototype.removeEventListener=bGB;FVA.exports=xQ;function BVA(A,Q,B,Y){let J={allowSynchronousEvents:!0,autoPong:!0,protocolVersion:Lm[1],maxPayload:104857600,skipUTF8Validation:!1,perMessageDeflate:!0,followRedirects:!1,maxRedirects:10,...Y,socketPath:void 0,hostname:void 0,protocol:void 0,timeout:void 0,method:"GET",host:void 0,path:void 0,port:void 0};if(A._autoPong=J.autoPong,!Lm.includes(J.protocolVersion))throw RangeError(`Unsupported protocol version: ${J.protocolVersion} (supported versions: ${Lm.join(", ")})`);let C;if(Q instanceof Dm)C=Q;else try{C=new Dm(Q)}catch(I){throw SyntaxError(`Invalid URL: ${Q}`)}if(C.protocol==="http:")C.protocol="ws:";else if(C.protocol==="https:")C.protocol="wss:";A._url=C.href;let X=C.protocol==="wss:",G=C.protocol==="ws+unix:",F;if(C.protocol!=="ws:"&&!X&&!G)F=`The URL's protocol must be one of "ws:", "wss:", "http:", "https:", or "ws+unix:"`;else if(G&&!C.pathname)F="The URL's pathname is empty";else if(C.hash)F="The URL contains a fragment identifier";if(F){let I=SyntaxError(F);if(A._redirects===0)throw I;else{zw(A,I);return}}let W=X?443:80,Z=SGB(16).toString("base64"),U=X?OGB.request:PGB.request,$=new Set,E;if(J.createConnection=J.createConnection||(X?pGB:lGB),J.defaultPort=J.defaultPort||W,J.port=C.port||W,J.host=C.hostname.startsWith("[")?C.hostname.slice(1,-1):C.hostname,J.headers={...J.headers,"Sec-WebSocket-Version":J.protocolVersion,"Sec-WebSocket-Key":Z,Connection:"Upgrade",Upgrade:"websocket"},J.path=C.pathname+C.search,J.timeout=J.handshakeTimeout,J.perMessageDeflate)E=new f7(J.perMessageDeflate!==!0?J.perMessageDeflate:{},!1,J.maxPayload),J.headers["Sec-WebSocket-Extensions"]=mGB({[f7.extensionName]:E.offer()});if(B.length){for(let I of B){if(typeof I!=="string"||!cGB.test(I)||$.has(I))throw SyntaxError("An invalid or duplicated subprotocol was specified");$.add(I)}J.headers["Sec-WebSocket-Protocol"]=B.join(",")}if(J.origin)if(J.protocolVersion<13)J.headers["Sec-WebSocket-Origin"]=J.origin;else J.headers.Origin=J.origin;if(C.username||C.password)J.auth=`${C.username}:${C.password}`;if(G){let I=J.path.split(":");J.socketPath=I[0],J.path=I[1]}let K;if(J.followRedirects){if(A._redirects===0){A._originalIpc=G,A._originalSecure=X,A._originalHostOrSocketPath=G?J.socketPath:C.host;let I=Y&&Y.headers;if(Y={...Y,headers:{}},I)for(let[V,H]of Object.entries(I))Y.headers[V.toLowerCase()]=H}else if(A.listenerCount("redirect")===0){let I=G?A._originalIpc?J.socketPath===A._originalHostOrSocketPath:!1:A._originalIpc?!1:C.host===A._originalHostOrSocketPath;if(!I||A._originalSecure&&!X){if(delete J.headers.authorization,delete J.headers.cookie,!I)delete J.headers.host;J.auth=void 0}}if(J.auth&&!Y.headers.authorization)Y.headers.authorization="Basic "+Buffer.from(J.auth).toString("base64");if(K=A._req=U(J),A._redirects)A.emit("redirect",A.url,K)}else K=A._req=U(J);if(J.timeout)K.on("timeout",()=>{L8(A,K,"Opening handshake has timed out")});if(K.on("error",(I)=>{if(K===null||K[QVA])return;K=A._req=null,zw(A,I)}),K.on("response",(I)=>{let V=I.headers.location,H=I.statusCode;if(V&&J.followRedirects&&H>=300&&H<400){if(++A._redirects>J.maxRedirects){L8(A,K,"Maximum redirects exceeded");return}K.abort();let D;try{D=new Dm(V,Q)}catch(L){let z=SyntaxError(`Invalid URL: ${V}`);zw(A,z);return}BVA(A,D,B,Y)}else if(!A.emit("unexpected-response",K,I))L8(A,K,`Unexpected server response: ${I.statusCode}`)}),K.on("upgrade",(I,V,H)=>{if(A.emit("upgrade",I),A.readyState!==xQ.CONNECTING)return;K=A._req=null;let D=I.headers.upgrade;if(D===void 0||D.toLowerCase()!=="websocket"){L8(A,V,"Invalid Upgrade header");return}let L=kGB("sha1").update(Z+hGB).digest("base64");if(I.headers["sec-websocket-accept"]!==L){L8(A,V,"Invalid Sec-WebSocket-Accept header");return}let z=I.headers["sec-websocket-protocol"],M;if(z!==void 0){if(!$.size)M="Server sent a subprotocol but none was requested";else if(!$.has(z))M="Server sent an invalid subprotocol"}else if($.size)M="Server sent no subprotocol";if(M){L8(A,V,M);return}if(z)A._protocol=z;let N=I.headers["sec-websocket-extensions"];if(N!==void 0){if(!E){L8(A,V,"Server sent a Sec-WebSocket-Extensions header but no extension was requested");return}let q;try{q=uGB(N)}catch(P){L8(A,V,"Invalid Sec-WebSocket-Extensions header");return}let w=Object.keys(q);if(w.length!==1||w[0]!==f7.extensionName){L8(A,V,"Server indicated an extension that was not requested");return}try{E.accept(q[f7.extensionName])}catch(P){L8(A,V,"Invalid Sec-WebSocket-Extensions header");return}A._extensions[f7.extensionName]=E}A.setSocket(V,H,{allowSynchronousEvents:J.allowSynchronousEvents,generateMask:J.generateMask,maxPayload:J.maxPayload,skipUTF8Validation:J.skipUTF8Validation})}),J.finishRequest)J.finishRequest(K,A);else K.end()}function zw(A,Q){A._readyState=xQ.CLOSING,A._errorEmitted=!0,A.emit("error",Q),A.emitClose()}function lGB(A){return A.path=A.socketPath,eKA.connect(A)}function pGB(A){if(A.path=void 0,!A.servername&&A.servername!=="")A.servername=eKA.isIP(A.host)?"":A.host;return TGB.connect(A)}function L8(A,Q,B){A._readyState=xQ.CLOSING;let Y=Error(B);if(Error.captureStackTrace(Y,L8),Q.setHeader){if(Q[QVA]=!0,Q.abort(),Q.socket&&!Q.socket.destroyed)Q.socket.destroy();process.nextTick(zw,A,Y)}else Q.destroy(Y),Q.once("error",A.emit.bind(A,"error")),Q.once("close",A.emitClose.bind(A))}function qm(A,Q,B){if(Q){let Y=yGB(Q)?Q.size:dGB(Q).length;if(A._socket)A._sender._bufferedBytes+=Y;else A._bufferedAmount+=Y}if(B){let Y=Error(`WebSocket is not open: readyState ${A.readyState} (${bX[A.readyState]})`);process.nextTick(B,Y)}}function iGB(A,Q){let B=this[dY];if(B._closeFrameReceived=!0,B._closeMessage=Q,B._closeCode=A,B._socket[dY]===void 0)return;if(B._socket.removeListener("data",Rw),process.nextTick(YVA,B._socket),A===1005)B.close();else B.close(A,Q)}function nGB(){let A=this[dY];if(!A.isPaused)A._socket.resume()}function sGB(A){let Q=this[dY];if(Q._socket[dY]!==void 0)Q._socket.removeListener("data",Rw),process.nextTick(YVA,Q._socket),Q.close(A[xGB]);if(!Q._errorEmitted)Q._errorEmitted=!0,Q.emit("error",A)}function tKA(){this[dY].emitClose()}function rGB(A,Q){this[dY].emit("message",A,Q)}function aGB(A){let Q=this[dY];if(Q._autoPong)Q.pong(A,!this._isServer,AVA);Q.emit("ping",A)}function oGB(A){this[dY].emit("pong",A)}function YVA(A){A.resume()}function tGB(A){let Q=this[dY];if(Q.readyState===xQ.CLOSED)return;if(Q.readyState===xQ.OPEN)Q._readyState=xQ.CLOSING,JVA(Q);if(this._socket.end(),!Q._errorEmitted)Q._errorEmitted=!0,Q.emit("error",A)}function JVA(A){A._closeTimer=setTimeout(A._socket.destroy.bind(A._socket),30000)}function CVA(){let A=this[dY];this.removeListener("close",CVA),this.removeListener("data",Rw),this.removeListener("end",XVA),A._readyState=xQ.CLOSING;let Q;if(!this._readableState.endEmitted&&!A._closeFrameReceived&&!A._receiver._writableState.errorEmitted&&(Q=A._socket.read())!==null)A._receiver.write(Q);if(A._receiver.end(),this[dY]=void 0,clearTimeout(A._closeTimer),A._receiver._writableState.finished||A._receiver._writableState.errorEmitted)A.emitClose();else A._receiver.on("error",tKA),A._receiver.on("finish",tKA)}function Rw(A){if(!this[dY]._receiver.write(A))this.pause()}function XVA(){let A=this[dY];A._readyState=xQ.CLOSING,A._receiver.end(),this.end()}function GVA(){let A=this[dY];if(this.removeListener("error",GVA),this.on("error",AVA),A)A._readyState=xQ.CLOSING,this.destroy()}});var UVA=R((FHY,$VA)=>{var GHY=ww(),{Duplex:eGB}=u("stream");function WVA(A){A.emit("close")}function A7B(){if(!this.destroyed&&this._writableState.finished)this.destroy()}function ZVA(A){if(this.removeListener("error",ZVA),this.destroy(),this.listenerCount("error")===0)this.emit("error",A)}function Q7B(A,Q){let B=!0,Y=new eGB({...Q,autoDestroy:!1,emitClose:!1,objectMode:!1,writableObjectMode:!1});return A.on("message",function(C,X){let G=!X&&Y._readableState.objectMode?C.toString():C;if(!Y.push(G))A.pause()}),A.once("error",function(C){if(Y.destroyed)return;B=!1,Y.destroy(C)}),A.once("close",function(){if(Y.destroyed)return;Y.push(null)}),Y._destroy=function(J,C){if(A.readyState===A.CLOSED){C(J),process.nextTick(WVA,Y);return}let X=!1;if(A.once("error",function(F){X=!0,C(F)}),A.once("close",function(){if(!X)C(J);process.nextTick(WVA,Y)}),B)A.terminate()},Y._final=function(J){if(A.readyState===A.CONNECTING){A.once("open",function(){Y._final(J)});return}if(A._socket===null)return;if(A._socket._writableState.finished){if(J(),Y._readableState.endEmitted)Y.destroy()}else A._socket.once("finish",function(){J()}),A.close()},Y._read=function(){if(A.isPaused)A.resume()},Y._write=function(J,C,X){if(A.readyState===A.CONNECTING){A.once("open",function(){Y._write(J,C,X)});return}A.send(J,X)},Y.on("end",A7B),Y.on("error",ZVA),Y}$VA.exports=Q7B});var KVA=R((WHY,EVA)=>{var{tokenChars:B7B}=KE();function Y7B(A){let Q=new Set,B=-1,Y=-1,J=0;for(J;J{var J7B=u("events"),jw=u("http"),{Duplex:ZHY}=u("stream"),{createHash:C7B}=u("crypto"),VVA=Hm(),UZ=OD(),X7B=KVA(),G7B=ww(),{GUID:F7B,kWebSocket:W7B}=xX(),Z7B=/^[+/0-9A-Za-z]{22}==$/;class HVA extends J7B{constructor(A,Q){super();if(A={allowSynchronousEvents:!0,autoPong:!0,maxPayload:104857600,skipUTF8Validation:!1,perMessageDeflate:!1,handleProtocols:null,clientTracking:!0,verifyClient:null,noServer:!1,backlog:null,server:null,host:null,path:null,port:null,WebSocket:G7B,...A},A.port==null&&!A.server&&!A.noServer||A.port!=null&&(A.server||A.noServer)||A.server&&A.noServer)throw TypeError('One and only one of the "port", "server", or "noServer" options must be specified');if(A.port!=null)this._server=jw.createServer((B,Y)=>{let J=jw.STATUS_CODES[426];Y.writeHead(426,{"Content-Length":J.length,"Content-Type":"text/plain"}),Y.end(J)}),this._server.listen(A.port,A.host,A.backlog,Q);else if(A.server)this._server=A.server;if(this._server){let B=this.emit.bind(this,"connection");this._removeListeners=$7B(this._server,{listening:this.emit.bind(this,"listening"),error:this.emit.bind(this,"error"),upgrade:(Y,J,C)=>{this.handleUpgrade(Y,J,C,B)}})}if(A.perMessageDeflate===!0)A.perMessageDeflate={};if(A.clientTracking)this.clients=new Set,this._shouldEmitClose=!1;this.options=A,this._state=0}address(){if(this.options.noServer)throw Error('The server is operating in "noServer" mode');if(!this._server)return null;return this._server.address()}close(A){if(this._state===2){if(A)this.once("close",()=>{A(Error("The server is not running"))});process.nextTick(kD,this);return}if(A)this.once("close",A);if(this._state===1)return;if(this._state=1,this.options.noServer||this.options.server){if(this._server)this._removeListeners(),this._removeListeners=this._server=null;if(this.clients)if(!this.clients.size)process.nextTick(kD,this);else this._shouldEmitClose=!0;else process.nextTick(kD,this)}else{let Q=this._server;this._removeListeners(),this._removeListeners=this._server=null,Q.close(()=>{kD(this)})}}shouldHandle(A){if(this.options.path){let Q=A.url.indexOf("?");if((Q!==-1?A.url.slice(0,Q):A.url)!==this.options.path)return!1}return!0}handleUpgrade(A,Q,B,Y){Q.on("error",IVA);let J=A.headers["sec-websocket-key"],C=A.headers.upgrade,X=+A.headers["sec-websocket-version"];if(A.method!=="GET"){EZ(this,A,Q,405,"Invalid HTTP method");return}if(C===void 0||C.toLowerCase()!=="websocket"){EZ(this,A,Q,400,"Invalid Upgrade header");return}if(J===void 0||!Z7B.test(J)){EZ(this,A,Q,400,"Missing or invalid Sec-WebSocket-Key header");return}if(X!==13&&X!==8){EZ(this,A,Q,400,"Missing or invalid Sec-WebSocket-Version header",{"Sec-WebSocket-Version":"13, 8"});return}if(!this.shouldHandle(A)){_D(Q,400);return}let G=A.headers["sec-websocket-protocol"],F=new Set;if(G!==void 0)try{F=X7B.parse(G)}catch(U){EZ(this,A,Q,400,"Invalid Sec-WebSocket-Protocol header");return}let W=A.headers["sec-websocket-extensions"],Z={};if(this.options.perMessageDeflate&&W!==void 0){let U=new UZ(this.options.perMessageDeflate,!0,this.options.maxPayload);try{let $=VVA.parse(W);if($[UZ.extensionName])U.accept($[UZ.extensionName]),Z[UZ.extensionName]=U}catch($){EZ(this,A,Q,400,"Invalid or unacceptable Sec-WebSocket-Extensions header");return}}if(this.options.verifyClient){let U={origin:A.headers[`${X===8?"sec-websocket-origin":"origin"}`],secure:!!(A.socket.authorized||A.socket.encrypted),req:A};if(this.options.verifyClient.length===2){this.options.verifyClient(U,($,E,K,I)=>{if(!$)return _D(Q,E||401,K,I);this.completeUpgrade(Z,J,F,A,Q,B,Y)});return}if(!this.options.verifyClient(U))return _D(Q,401)}this.completeUpgrade(Z,J,F,A,Q,B,Y)}completeUpgrade(A,Q,B,Y,J,C,X){if(!J.readable||!J.writable)return J.destroy();if(J[W7B])throw Error("server.handleUpgrade() was called more than once with the same socket, possibly due to a misconfiguration");if(this._state>0)return _D(J,503);let F=["HTTP/1.1 101 Switching Protocols","Upgrade: websocket","Connection: Upgrade",`Sec-WebSocket-Accept: ${C7B("sha1").update(Q+F7B).digest("base64")}`],W=new this.options.WebSocket(null,void 0,this.options);if(B.size){let Z=this.options.handleProtocols?this.options.handleProtocols(B,Y):B.values().next().value;if(Z)F.push(`Sec-WebSocket-Protocol: ${Z}`),W._protocol=Z}if(A[UZ.extensionName]){let Z=A[UZ.extensionName].params,U=VVA.format({[UZ.extensionName]:[Z]});F.push(`Sec-WebSocket-Extensions: ${U}`),W._extensions=A}if(this.emit("headers",F,Y),J.write(F.concat(`\r + deps: ${B}}`};var iXB={keyword:"dependencies",type:"object",schemaType:"object",error:CEA.error,code(A){let[Q,B]=nXB(A);YEA(A,Q),JEA(A,B)}};function nXB({schema:A}){let Q={},B={};for(let Y in A){if(Y==="__proto__")continue;let J=Array.isArray(A[Y])?Q:B;J[Y]=A[Y]}return[Q,B]}function YEA(A,Q=A.schema){let{gen:B,data:Y,it:J}=A;if(Object.keys(Q).length===0)return;let C=B.let("missing");for(let X in Q){let G=Q[X];if(G.length===0)continue;let W=(0,yD.propertyInData)(B,Y,X,J.opts.ownProperties);if(A.setParams({property:X,depsCount:G.length,deps:G.join(", ")}),J.allErrors)B.if(W,()=>{for(let F of G)(0,yD.checkReportMissingProp)(A,F)});else B.if(hb._`${W} && (${(0,yD.checkMissingProp)(A,G,C)})`),(0,yD.reportMissingProp)(A,C),B.else()}}CEA.validatePropertyDeps=YEA;function JEA(A,Q=A.schema){let{gen:B,data:Y,keyword:J,it:C}=A,X=B.name("valid");for(let G in Q){if((0,pXB.alwaysValidSchema)(C,Q[G]))continue;B.if((0,yD.propertyInData)(B,Y,G,C.opts.ownProperties),()=>{let W=A.subschema({keyword:J,schemaProp:G},X);A.mergeValidEvaluated(W,X)},()=>B.var(X,!0)),A.ok(X)}}CEA.validateSchemaDeps=JEA;CEA.default=iXB});var $EA=R((ZEA)=>{Object.defineProperty(ZEA,"__esModule",{value:!0});var FEA=GB(),aXB=wB(),oXB={message:"property name must be valid",params:({params:A})=>FEA._`{propertyName: ${A.propertyName}}`},tXB={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:oXB,code(A){let{gen:Q,schema:B,data:Y,it:J}=A;if((0,aXB.alwaysValidSchema)(J,B))return;let C=Q.name("valid");Q.forIn("key",Y,(X)=>{A.setParams({propertyName:X}),A.subschema({keyword:"propertyNames",data:X,dataTypes:["string"],propertyName:X,compositeRule:!0},C),Q.if((0,FEA.not)(C),()=>{if(A.error(!0),!J.allErrors)Q.break()})}),A.ok(C)}};ZEA.default=tXB});var xb=R((UEA)=>{Object.defineProperty(UEA,"__esModule",{value:!0});var Pw=w5(),iC=GB(),A6B=u6(),Tw=wB(),Q6B={message:"must NOT have additional properties",params:({params:A})=>iC._`{additionalProperty: ${A.additionalProperty}}`},B6B={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:Q6B,code(A){let{gen:Q,schema:B,parentSchema:Y,data:J,errsCount:C,it:X}=A;if(!C)throw Error("ajv implementation error");let{allErrors:G,opts:W}=X;if(X.props=!0,W.removeAdditional!=="all"&&(0,Tw.alwaysValidSchema)(X,B))return;let F=(0,Pw.allSchemaProperties)(Y.properties),Z=(0,Pw.allSchemaProperties)(Y.patternProperties);U(),A.ok(iC._`${C} === ${A6B.default.errors}`);function U(){Q.forIn("key",J,(V)=>{if(!F.length&&!Z.length)K(V);else Q.if($(V),()=>K(V))})}function $(V){let H;if(F.length>8){let D=(0,Tw.schemaRefOrVal)(X,Y.properties,"properties");H=(0,Pw.isOwnProperty)(Q,D,V)}else if(F.length)H=(0,iC.or)(...F.map((D)=>iC._`${V} === ${D}`));else H=iC.nil;if(Z.length)H=(0,iC.or)(H,...Z.map((D)=>iC._`${(0,Pw.usePattern)(A,D)}.test(${V})`));return(0,iC.not)(H)}function E(V){Q.code(iC._`delete ${J}[${V}]`)}function K(V){if(W.removeAdditional==="all"||W.removeAdditional&&B===!1){E(V);return}if(B===!1){if(A.setParams({additionalProperty:V}),A.error(),!G)Q.break();return}if(typeof B=="object"&&!(0,Tw.alwaysValidSchema)(X,B)){let H=Q.name("valid");if(W.removeAdditional==="failing")I(V,H,!1),Q.if((0,iC.not)(H),()=>{A.reset(),E(V)});else if(I(V,H),!G)Q.if((0,iC.not)(H),()=>Q.break())}}function I(V,H,D){let L={keyword:"additionalProperties",dataProp:V,dataPropType:Tw.Type.Str};if(D===!1)Object.assign(L,{compositeRule:!0,createErrors:!1,allErrors:!1});A.subschema(L,H)}}};UEA.default=B6B});var IEA=R((VEA)=>{Object.defineProperty(VEA,"__esModule",{value:!0});var J6B=MD(),EEA=w5(),fb=wB(),KEA=xb(),C6B={keyword:"properties",type:"object",schemaType:"object",code(A){let{gen:Q,schema:B,parentSchema:Y,data:J,it:C}=A;if(C.opts.removeAdditional==="all"&&Y.additionalProperties===void 0)KEA.default.code(new J6B.KeywordCxt(C,KEA.default,"additionalProperties"));let X=(0,EEA.allSchemaProperties)(B);for(let U of X)C.definedProperties.add(U);if(C.opts.unevaluated&&X.length&&C.props!==!0)C.props=fb.mergeEvaluated.props(Q,(0,fb.toHash)(X),C.props);let G=X.filter((U)=>!(0,fb.alwaysValidSchema)(C,B[U]));if(G.length===0)return;let W=Q.name("valid");for(let U of G){if(F(U))Z(U);else{if(Q.if((0,EEA.propertyInData)(Q,J,U,C.opts.ownProperties)),Z(U),!C.allErrors)Q.else().var(W,!0);Q.endIf()}A.it.definedProperties.add(U),A.ok(W)}function F(U){return C.opts.useDefaults&&!C.compositeRule&&B[U].default!==void 0}function Z(U){A.subschema({keyword:"properties",schemaProp:U,dataProp:U},W)}}};VEA.default=C6B});var qEA=R((LEA)=>{Object.defineProperty(LEA,"__esModule",{value:!0});var HEA=w5(),Sw=GB(),DEA=wB(),NEA=wB(),G6B={keyword:"patternProperties",type:"object",schemaType:"object",code(A){let{gen:Q,schema:B,data:Y,parentSchema:J,it:C}=A,{opts:X}=C,G=(0,HEA.allSchemaProperties)(B),W=G.filter((I)=>(0,DEA.alwaysValidSchema)(C,B[I]));if(G.length===0||W.length===G.length&&(!C.opts.unevaluated||C.props===!0))return;let F=X.strictSchema&&!X.allowMatchingProperties&&J.properties,Z=Q.name("valid");if(C.props!==!0&&!(C.props instanceof Sw.Name))C.props=(0,NEA.evaluatedPropsToName)(Q,C.props);let{props:U}=C;$();function $(){for(let I of G){if(F)E(I);if(C.allErrors)K(I);else Q.var(Z,!0),K(I),Q.if(Z)}}function E(I){for(let V in F)if(new RegExp(I).test(V))(0,DEA.checkStrictMode)(C,`property ${V} matches pattern ${I} (use allowMatchingProperties)`)}function K(I){Q.forIn("key",Y,(V)=>{Q.if(Sw._`${(0,HEA.usePattern)(A,I)}.test(${V})`,()=>{let H=W.includes(I);if(!H)A.subschema({keyword:"patternProperties",schemaProp:I,dataProp:V,dataPropType:NEA.Type.Str},Z);if(C.opts.unevaluated&&U!==!0)Q.assign(Sw._`${U}[${V}]`,!0);else if(!H&&!C.allErrors)Q.if((0,Sw.not)(Z),()=>Q.break())})})}}};LEA.default=G6B});var zEA=R((MEA)=>{Object.defineProperty(MEA,"__esModule",{value:!0});var F6B=wB(),Z6B={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(A){let{gen:Q,schema:B,it:Y}=A;if((0,F6B.alwaysValidSchema)(Y,B)){A.fail();return}let J=Q.name("valid");A.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},J),A.failResult(J,()=>A.reset(),()=>A.error())},error:{message:"must NOT be valid"}};MEA.default=Z6B});var wEA=R((REA)=>{Object.defineProperty(REA,"__esModule",{value:!0});var U6B=w5(),E6B={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:U6B.validateUnion,error:{message:"must match a schema in anyOf"}};REA.default=E6B});var OEA=R((jEA)=>{Object.defineProperty(jEA,"__esModule",{value:!0});var kw=GB(),V6B=wB(),I6B={message:"must match exactly one schema in oneOf",params:({params:A})=>kw._`{passingSchemas: ${A.passing}}`},H6B={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:I6B,code(A){let{gen:Q,schema:B,parentSchema:Y,it:J}=A;if(!Array.isArray(B))throw Error("ajv implementation error");if(J.opts.discriminator&&Y.discriminator)return;let C=B,X=Q.let("valid",!1),G=Q.let("passing",null),W=Q.name("_valid");A.setParams({passing:G}),Q.block(F),A.result(X,()=>A.reset(),()=>A.error(!0));function F(){C.forEach((Z,U)=>{let $;if((0,V6B.alwaysValidSchema)(J,Z))Q.var(W,!0);else $=A.subschema({keyword:"oneOf",schemaProp:U,compositeRule:!0},W);if(U>0)Q.if(kw._`${W} && ${X}`).assign(X,!1).assign(G,kw._`[${G}, ${U}]`).else();Q.if(W,()=>{if(Q.assign(X,!0),Q.assign(G,U),$)A.mergeEvaluated($,kw.Name)})})}}};jEA.default=H6B});var TEA=R((PEA)=>{Object.defineProperty(PEA,"__esModule",{value:!0});var N6B=wB(),L6B={keyword:"allOf",schemaType:"array",code(A){let{gen:Q,schema:B,it:Y}=A;if(!Array.isArray(B))throw Error("ajv implementation error");let J=Q.name("valid");B.forEach((C,X)=>{if((0,N6B.alwaysValidSchema)(Y,C))return;let G=A.subschema({keyword:"allOf",schemaProp:X},J);A.ok(J),A.mergeEvaluated(G)})}};PEA.default=L6B});var vEA=R((_EA)=>{Object.defineProperty(_EA,"__esModule",{value:!0});var _w=GB(),kEA=wB(),M6B={message:({params:A})=>_w.str`must match "${A.ifClause}" schema`,params:({params:A})=>_w._`{failingKeyword: ${A.ifClause}}`},z6B={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:M6B,code(A){let{gen:Q,parentSchema:B,it:Y}=A;if(B.then===void 0&&B.else===void 0)(0,kEA.checkStrictMode)(Y,'"if" without "then" and "else" is ignored');let J=SEA(Y,"then"),C=SEA(Y,"else");if(!J&&!C)return;let X=Q.let("valid",!0),G=Q.name("_valid");if(W(),A.reset(),J&&C){let Z=Q.let("ifClause");A.setParams({ifClause:Z}),Q.if(G,F("then",Z),F("else",Z))}else if(J)Q.if(G,F("then"));else Q.if((0,_w.not)(G),F("else"));A.pass(X,()=>A.error(!0));function W(){let Z=A.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},G);A.mergeEvaluated(Z)}function F(Z,U){return()=>{let $=A.subschema({keyword:Z},G);if(Q.assign(X,G),A.mergeValidEvaluated($,X),U)Q.assign(U,_w._`${Z}`);else A.setParams({ifClause:Z})}}}};function SEA(A,Q){let B=A.schema[Q];return B!==void 0&&!(0,kEA.alwaysValidSchema)(A,B)}_EA.default=z6B});var gEA=R((yEA)=>{Object.defineProperty(yEA,"__esModule",{value:!0});var w6B=wB(),j6B={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:A,parentSchema:Q,it:B}){if(Q.if===void 0)(0,w6B.checkStrictMode)(B,`"${A}" without "if" is ignored`)}};yEA.default=j6B});var xEA=R((hEA)=>{Object.defineProperty(hEA,"__esModule",{value:!0});var P6B=yb(),T6B=oUA(),S6B=gb(),k6B=AEA(),_6B=BEA(),v6B=WEA(),y6B=$EA(),g6B=xb(),h6B=IEA(),x6B=qEA(),f6B=zEA(),b6B=wEA(),m6B=OEA(),u6B=TEA(),d6B=vEA(),c6B=gEA();function l6B(A=!1){let Q=[f6B.default,b6B.default,m6B.default,u6B.default,d6B.default,c6B.default,y6B.default,g6B.default,v6B.default,h6B.default,x6B.default];if(A)Q.push(T6B.default,k6B.default);else Q.push(P6B.default,S6B.default);return Q.push(_6B.default),Q}hEA.default=l6B});var bEA=R((fEA)=>{Object.defineProperty(fEA,"__esModule",{value:!0});var FY=GB(),i6B={message:({schemaCode:A})=>FY.str`must match format "${A}"`,params:({schemaCode:A})=>FY._`{format: ${A}}`},n6B={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:i6B,code(A,Q){let{gen:B,data:Y,$data:J,schema:C,schemaCode:X,it:G}=A,{opts:W,errSchemaPath:F,schemaEnv:Z,self:U}=G;if(!W.validateFormats)return;if(J)$();else E();function $(){let K=B.scopeValue("formats",{ref:U.formats,code:W.code.formats}),I=B.const("fDef",FY._`${K}[${X}]`),V=B.let("fType"),H=B.let("format");B.if(FY._`typeof ${I} == "object" && !(${I} instanceof RegExp)`,()=>B.assign(V,FY._`${I}.type || "string"`).assign(H,FY._`${I}.validate`),()=>B.assign(V,FY._`"string"`).assign(H,I)),A.fail$data((0,FY.or)(D(),L()));function D(){if(W.strictSchema===!1)return FY.nil;return FY._`${X} && !${H}`}function L(){let z=Z.$async?FY._`(${I}.async ? await ${H}(${Y}) : ${H}(${Y}))`:FY._`${H}(${Y})`,M=FY._`(typeof ${H} == "function" ? ${z} : ${H}.test(${Y}))`;return FY._`${H} && ${H} !== true && ${V} === ${Q} && !${M}`}}function E(){let K=U.formats[C];if(!K){D();return}if(K===!0)return;let[I,V,H]=L(K);if(I===Q)A.pass(z());function D(){if(W.strictSchema===!1){U.logger.warn(M());return}throw Error(M());function M(){return`unknown format "${C}" ignored in schema at path "${F}"`}}function L(M){let N=M instanceof RegExp?(0,FY.regexpCode)(M):W.code.formats?FY._`${W.code.formats}${(0,FY.getProperty)(C)}`:void 0,q=B.scopeValue("formats",{key:C,ref:M,code:N});if(typeof M=="object"&&!(M instanceof RegExp))return[M.type||"string",M.validate,FY._`${q}.validate`];return["string",M,q]}function z(){if(typeof K=="object"&&!(K instanceof RegExp)&&K.async){if(!Z.$async)throw Error("async format in sync schema");return FY._`await ${H}(${Y})`}return typeof V=="function"?FY._`${H}(${Y})`:FY._`${H}.test(${Y})`}}}};fEA.default=n6B});var uEA=R((mEA)=>{Object.defineProperty(mEA,"__esModule",{value:!0});var r6B=bEA(),a6B=[r6B.default];mEA.default=a6B});var lEA=R((dEA)=>{Object.defineProperty(dEA,"__esModule",{value:!0});dEA.contentVocabulary=dEA.metadataVocabulary=void 0;dEA.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];dEA.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var nEA=R((iEA)=>{Object.defineProperty(iEA,"__esModule",{value:!0});var e6B=VUA(),AGB=dUA(),QGB=xEA(),BGB=uEA(),pEA=lEA(),YGB=[e6B.default,AGB.default,(0,QGB.default)(),BGB.default,pEA.metadataVocabulary,pEA.contentVocabulary];iEA.default=YGB});var oEA=R((rEA)=>{Object.defineProperty(rEA,"__esModule",{value:!0});rEA.DiscrError=void 0;var sEA;(function(A){A.Tag="tag",A.Mapping="mapping"})(sEA||(rEA.DiscrError=sEA={}))});var AKA=R((eEA)=>{Object.defineProperty(eEA,"__esModule",{value:!0});var HE=GB(),bb=oEA(),tEA=Kw(),CGB=zD(),XGB=wB(),GGB={message:({params:{discrError:A,tagName:Q}})=>A===bb.DiscrError.Tag?`tag "${Q}" must be string`:`value of tag "${Q}" must be in oneOf`,params:({params:{discrError:A,tag:Q,tagName:B}})=>HE._`{error: ${A}, tag: ${B}, tagValue: ${Q}}`},WGB={keyword:"discriminator",type:"object",schemaType:"object",error:GGB,code(A){let{gen:Q,data:B,schema:Y,parentSchema:J,it:C}=A,{oneOf:X}=J;if(!C.opts.discriminator)throw Error("discriminator: requires discriminator option");let G=Y.propertyName;if(typeof G!="string")throw Error("discriminator: requires propertyName");if(Y.mapping)throw Error("discriminator: mapping is not supported");if(!X)throw Error("discriminator: requires oneOf keyword");let W=Q.let("valid",!1),F=Q.const("tag",HE._`${B}${(0,HE.getProperty)(G)}`);Q.if(HE._`typeof ${F} == "string"`,()=>Z(),()=>A.error(!1,{discrError:bb.DiscrError.Tag,tag:F,tagName:G})),A.ok(W);function Z(){let E=$();Q.if(!1);for(let K in E)Q.elseIf(HE._`${F} === ${K}`),Q.assign(W,U(E[K]));Q.else(),A.error(!1,{discrError:bb.DiscrError.Mapping,tag:F,tagName:G}),Q.endIf()}function U(E){let K=Q.name("valid"),I=A.subschema({keyword:"oneOf",schemaProp:E},K);return A.mergeEvaluated(I,HE.Name),K}function $(){var E;let K={},I=H(J),V=!0;for(let z=0;z{ZGB.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var YKA=R((m9,mb)=>{Object.defineProperty(m9,"__esModule",{value:!0});m9.MissingRefError=m9.ValidationError=m9.CodeGen=m9.Name=m9.nil=m9.stringify=m9.str=m9._=m9.KeywordCxt=m9.Ajv=void 0;var $GB=CUA(),UGB=nEA(),EGB=AKA(),BKA=QKA(),KGB=["/properties"],vw="http://json-schema.org/draft-07/schema";class gD extends $GB.default{_addVocabularies(){if(super._addVocabularies(),UGB.default.forEach((A)=>this.addVocabulary(A)),this.opts.discriminator)this.addKeyword(EGB.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let A=this.opts.$data?this.$dataMetaSchema(BKA,KGB):BKA;this.addMetaSchema(A,vw,!1),this.refs["http://json-schema.org/schema"]=vw}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(vw)?vw:void 0)}}m9.Ajv=gD;mb.exports=m9=gD;mb.exports.Ajv=gD;Object.defineProperty(m9,"__esModule",{value:!0});m9.default=gD;var VGB=MD();Object.defineProperty(m9,"KeywordCxt",{enumerable:!0,get:function(){return VGB.KeywordCxt}});var DE=GB();Object.defineProperty(m9,"_",{enumerable:!0,get:function(){return DE._}});Object.defineProperty(m9,"str",{enumerable:!0,get:function(){return DE.str}});Object.defineProperty(m9,"stringify",{enumerable:!0,get:function(){return DE.stringify}});Object.defineProperty(m9,"nil",{enumerable:!0,get:function(){return DE.nil}});Object.defineProperty(m9,"Name",{enumerable:!0,get:function(){return DE.Name}});Object.defineProperty(m9,"CodeGen",{enumerable:!0,get:function(){return DE.CodeGen}});var IGB=Uw();Object.defineProperty(m9,"ValidationError",{enumerable:!0,get:function(){return IGB.default}});var HGB=zD();Object.defineProperty(m9,"MissingRefError",{enumerable:!0,get:function(){return HGB.default}})});var vKA=R((_KA)=>{Object.defineProperty(_KA,"__esModule",{value:!0});_KA.fromEnv=OGB;var kKA="HYTOPIA_API_KEY";function jGB(A){let Q=process.env[kKA];if(!Q)throw Error(`Missing environment variable ${A}`);return Q}function OGB(){return{apiKey:jGB(kKA)}}});var yKA=R((Pm)=>{Object.defineProperty(Pm,"__esModule",{value:!0});Pm.fromEnv=void 0;var TGB=vKA();Object.defineProperty(Pm,"fromEnv",{enumerable:!0,get:function(){return TGB.fromEnv}})});var hKA=R((NE)=>{var Tm=NE&&NE.__importDefault||function(A){return A&&A.__esModule?A:{default:A}};Object.defineProperty(NE,"__esModule",{value:!0});NE.LocalBackend=void 0;var Sm=Tm(u("fs")),kGB=Tm(u("path")),km=Tm(u("util")),_GB=km.default.promisify(Sm.default.mkdir),vGB=km.default.promisify(Sm.default.readFile),yGB=km.default.promisify(Sm.default.writeFile);class gKA{dataDir;constructor(A){this.dataDir=A}calculatePath(A,Q){return`${this.dataDir}/${A}/${Q}.json`}async load(A,Q){try{let B=await vGB(this.calculatePath(A,Q),"utf8"),Y=JSON.parse(B);if(!Y.__version)Y.__version=1;return Y}catch(B){return{__version:1}}}async upload(A,Q){await _GB(kGB.default.join(this.dataDir,A),{recursive:!0});var B=[];for(var[Y,J]of Object.entries(Q))B.push(yGB(this.calculatePath(A,Y),JSON.stringify(J)));await Promise.all(B)}}NE.LocalBackend=gKA});var _m=R((fKA)=>{Object.defineProperty(fKA,"__esModule",{value:!0});fKA.proxifyObject=xKA;function xKA(A,Q){for(let[B,Y]of Object.entries(A))if(Y instanceof Object)A[B]=xKA(Y,Q);return new Proxy(A,Q)}});var uKA=R((mKA)=>{Object.defineProperty(mKA,"__esModule",{value:!0});mKA.load=hGB;var bKA=_m();async function hGB(A){let Q=await this.backend.load(this.gameId,A),B=this.saveStatesManager,Y={set(C,X,G){if(typeof G==="function")return!1;if(G instanceof Object)C[X]=(0,bKA.proxifyObject)(G,Y);else C[X]=G;if(X!=="__version")B.incrementVersion(A);return!0},deleteProperty(C,X){if(X in C)delete C[X];return B.incrementVersion(A),!0}},J=(0,bKA.proxifyObject)(Q,Y);return B.setReference(A,J),J}});var iKA=R((lKA)=>{Object.defineProperty(lKA,"__esModule",{value:!0});lKA.SaveStatesManager=void 0;var dKA=_m();class cKA{_stateReferences={};_pendingSaveQueue={};_hasQueuedSaves=!1;setReference(A,Q){this._stateReferences[A]=Q}getReference(A){return this._stateReferences[A]??null}dropReference(A){if(!this._stateReferences)return;delete this._stateReferences[A]}incrementVersion(A){if(!this._stateReferences[A])return;this._hasQueuedSaves=!0;let Q=this._stateReferences[A];Q.__version+=1,this._pendingSaveQueue[A]=Q}getPendingSaves(){if(!this._hasQueuedSaves)return null;let A=JSON.parse(JSON.stringify(this._pendingSaveQueue));return this._pendingSaveQueue={},this._hasQueuedSaves=!1,A}load(A,Q){let B=this.getReference(A);if(B)return{value:B.value};let Y=this,J={set(X,G,W){if(typeof W==="function")return!1;if(W instanceof Object)X[G]=(0,dKA.proxifyObject)(W,J);else X[G]=W;if(G!=="__version")Y.incrementVersion(A);return!0},deleteProperty(X,G){if(G in X)delete X[G];return Y.incrementVersion(A),!0}},C=(0,dKA.proxifyObject)(Q.value,J);return Y.setReference(A,C),{error:void 0,value:C}}}lKA.SaveStatesManager=cKA});var sKA=R((nKA)=>{Object.defineProperty(nKA,"__esModule",{value:!0});nKA.flush=fGB;async function fGB(){let A=this.saveStatesManager.getPendingSaves();if(!A)return;await this.backend.upload(this.gameId,A)}});var tKA=R((aKA)=>{Object.defineProperty(aKA,"__esModule",{value:!0});aKA.RemoteBackend=void 0;class rKA{baseUrl;credentials;constructor(A,Q,B){this.baseUrl=A,this.credentials=Q}async load(A,Q){while(!0){try{let B=await fetch(`${this.baseUrl}/play/kv/get/${A}/${Q}`,{headers:{"X-Api-Key":this.credentials.apiKey}}),Y=await B.json();if(B.ok){if(!Y.value.__version)Y.value.__version=1;return Y.value}if(Y&&Y.error){if(Y.error.code==="keyNotFound")return{__version:1};console.warn(`[SaveStates] Got an error loading remote state for key ${Q}: ${Y.error.code}, retrying in 1s...`),await new Promise((J)=>setTimeout(J,1000));continue}throw Error("Unexpected error body")}catch(B){console.warn(`[SaveStates] Could not load remote state for key ${Q} due to a connection issue, retrying in 1s...`)}await new Promise((B)=>setTimeout(B,1000))}}async upload(A,Q){while(!0){try{let B=await fetch(`${this.baseUrl}/play/kv/setbulk/${A}`,{method:"POST",headers:{"Content-Type":"application/json","X-Api-Key":this.credentials.apiKey},body:JSON.stringify(Q)}),Y=await B.json();if(B.ok)return;if(Y&&Y.error){console.warn(`[SaveStates] Could not upload state to remote due to an error (code '${Y.error.code}'), retrying in 1s...`),await new Promise((J)=>setTimeout(J,1000));continue}throw Error("Unexpected error body")}catch(B){console.warn("[SaveStates] Could not upload state to remote due to a connection issue, retrying in 1s...")}await new Promise((B)=>setTimeout(B,1000))}}}aKA.RemoteBackend=rKA});var AVA=R((eKA)=>{Object.defineProperty(eKA,"__esModule",{value:!0});eKA.unload=mGB;async function mGB(A){this.saveStatesManager.dropReference(A),await this.flush()}});var JVA=R((BVA)=>{Object.defineProperty(BVA,"__esModule",{value:!0});BVA.SaveStatesClient=void 0;var dGB=yKA(),cGB=hKA(),lGB=uKA(),pGB=iKA(),iGB=sKA(),nGB=tKA(),sGB=AVA();function rGB(A){if(A)return A;try{let Q=(0,dGB.fromEnv)(),B=process.env.HYTOPIA_PERSUADE_CREATIVE_GATEWAY_BASE_URL??"https://prod.persuade-creative.hytopia.com",Y=process.env.HYTOPIA_GAME_ID;if(!Y)throw Error("Missing HYTOPIA_GAME_ID environment variable");return new nGB.RemoteBackend(B,Q,Y)}catch{return console.warn("[SaveStates] Couldn't load credentials from environment variables, defaulting to local backend"),new cGB.LocalBackend("dev")}}class QVA{backend;gameId;saveStatesManager;constructor(A){this.backend=rGB(A?.backend),this.gameId=A?.gameId??process.env.HYTOPIA_GAME_ID??"persistence",this.saveStatesManager=new pGB.SaveStatesManager;async function Q(B){while(!0)await B.flush(),await new Promise((Y)=>{setTimeout(Y,1000).unref()})}Q(this)}load=lGB.load;unload=sGB.unload;flush=iGB.flush}BVA.SaveStatesClient=QVA});var p6=R((uDY,GVA)=>{var CVA=["nodebuffer","arraybuffer","fragments"],XVA=typeof Blob<"u";if(XVA)CVA.push("blob");GVA.exports={BINARY_TYPES:CVA,EMPTY_BUFFER:Buffer.alloc(0),GUID:"258EAFA5-E914-47DA-95CA-C5AB0DC85B11",hasBlob:XVA,kForOnEventAttribute:Symbol("kIsForOnEventAttribute"),kListener:Symbol("kListener"),kStatusCode:Symbol("status-code"),kWebSocket:Symbol("websocket"),NOOP:()=>{}}});var mD=R((dDY,fw)=>{var{EMPTY_BUFFER:aGB}=p6(),vm=Buffer[Symbol.species];function oGB(A,Q){if(A.length===0)return aGB;if(A.length===1)return A[0];let B=Buffer.allocUnsafe(Q),Y=0;for(let J=0;J{throw new Error("Cannot require module "+"bufferutil");})();fw.exports.mask=function(Q,B,Y,J,C){if(C<48)WVA(Q,B,Y,J,C);else A.mask(Q,B,Y,J,C)},fw.exports.unmask=function(Q,B){if(Q.length<32)FVA(Q,B);else A.unmask(Q,B)}}catch(A){}});var EVA=R((cDY,UVA)=>{var ZVA=Symbol("kDone"),gm=Symbol("kRun");class $VA{constructor(A){this[ZVA]=()=>{this.pending--,this[gm]()},this.concurrency=A||1/0,this.jobs=[],this.pending=0}add(A){this.jobs.push(A),this[gm]()}[gm](){if(this.pending===this.concurrency)return;if(this.jobs.length){let A=this.jobs.shift();this.pending++,A(this[ZVA])}}}UVA.exports=$VA});var dD=R((lDY,DVA)=>{var uD=u("zlib"),KVA=mD(),eGB=EVA(),{kStatusCode:VVA}=p6(),A7B=Buffer[Symbol.species],Q7B=Buffer.from([0,0,255,255]),mw=Symbol("permessage-deflate"),i6=Symbol("total-length"),LE=Symbol("callback"),c7=Symbol("buffers"),qE=Symbol("error"),bw;class IVA{constructor(A,Q,B){if(this._maxPayload=B|0,this._options=A||{},this._threshold=this._options.threshold!==void 0?this._options.threshold:1024,this._isServer=!!Q,this._deflate=null,this._inflate=null,this.params=null,!bw){let Y=this._options.concurrencyLimit!==void 0?this._options.concurrencyLimit:10;bw=new eGB(Y)}}static get extensionName(){return"permessage-deflate"}offer(){let A={};if(this._options.serverNoContextTakeover)A.server_no_context_takeover=!0;if(this._options.clientNoContextTakeover)A.client_no_context_takeover=!0;if(this._options.serverMaxWindowBits)A.server_max_window_bits=this._options.serverMaxWindowBits;if(this._options.clientMaxWindowBits)A.client_max_window_bits=this._options.clientMaxWindowBits;else if(this._options.clientMaxWindowBits==null)A.client_max_window_bits=!0;return A}accept(A){return A=this.normalizeParams(A),this.params=this._isServer?this.acceptAsServer(A):this.acceptAsClient(A),this.params}cleanup(){if(this._inflate)this._inflate.close(),this._inflate=null;if(this._deflate){let A=this._deflate[LE];if(this._deflate.close(),this._deflate=null,A)A(Error("The deflate stream was closed while data was being processed"))}}acceptAsServer(A){let Q=this._options,B=A.find((Y)=>{if(Q.serverNoContextTakeover===!1&&Y.server_no_context_takeover||Y.server_max_window_bits&&(Q.serverMaxWindowBits===!1||typeof Q.serverMaxWindowBits==="number"&&Q.serverMaxWindowBits>Y.server_max_window_bits)||typeof Q.clientMaxWindowBits==="number"&&!Y.client_max_window_bits)return!1;return!0});if(!B)throw Error("None of the extension offers can be accepted");if(Q.serverNoContextTakeover)B.server_no_context_takeover=!0;if(Q.clientNoContextTakeover)B.client_no_context_takeover=!0;if(typeof Q.serverMaxWindowBits==="number")B.server_max_window_bits=Q.serverMaxWindowBits;if(typeof Q.clientMaxWindowBits==="number")B.client_max_window_bits=Q.clientMaxWindowBits;else if(B.client_max_window_bits===!0||Q.clientMaxWindowBits===!1)delete B.client_max_window_bits;return B}acceptAsClient(A){let Q=A[0];if(this._options.clientNoContextTakeover===!1&&Q.client_no_context_takeover)throw Error('Unexpected parameter "client_no_context_takeover"');if(!Q.client_max_window_bits){if(typeof this._options.clientMaxWindowBits==="number")Q.client_max_window_bits=this._options.clientMaxWindowBits}else if(this._options.clientMaxWindowBits===!1||typeof this._options.clientMaxWindowBits==="number"&&Q.client_max_window_bits>this._options.clientMaxWindowBits)throw Error('Unexpected or invalid parameter "client_max_window_bits"');return Q}normalizeParams(A){return A.forEach((Q)=>{Object.keys(Q).forEach((B)=>{let Y=Q[B];if(Y.length>1)throw Error(`Parameter "${B}" must have only a single value`);if(Y=Y[0],B==="client_max_window_bits"){if(Y!==!0){let J=+Y;if(!Number.isInteger(J)||J<8||J>15)throw TypeError(`Invalid value for parameter "${B}": ${Y}`);Y=J}else if(!this._isServer)throw TypeError(`Invalid value for parameter "${B}": ${Y}`)}else if(B==="server_max_window_bits"){let J=+Y;if(!Number.isInteger(J)||J<8||J>15)throw TypeError(`Invalid value for parameter "${B}": ${Y}`);Y=J}else if(B==="client_no_context_takeover"||B==="server_no_context_takeover"){if(Y!==!0)throw TypeError(`Invalid value for parameter "${B}": ${Y}`)}else throw Error(`Unknown parameter "${B}"`);Q[B]=Y})}),A}decompress(A,Q,B){bw.add((Y)=>{this._decompress(A,Q,(J,C)=>{Y(),B(J,C)})})}compress(A,Q,B){bw.add((Y)=>{this._compress(A,Q,(J,C)=>{Y(),B(J,C)})})}_decompress(A,Q,B){let Y=this._isServer?"client":"server";if(!this._inflate){let J=`${Y}_max_window_bits`,C=typeof this.params[J]!=="number"?uD.Z_DEFAULT_WINDOWBITS:this.params[J];this._inflate=uD.createInflateRaw({...this._options.zlibInflateOptions,windowBits:C}),this._inflate[mw]=this,this._inflate[i6]=0,this._inflate[c7]=[],this._inflate.on("error",Y7B),this._inflate.on("data",HVA)}if(this._inflate[LE]=B,this._inflate.write(A),Q)this._inflate.write(Q7B);this._inflate.flush(()=>{let J=this._inflate[qE];if(J){this._inflate.close(),this._inflate=null,B(J);return}let C=KVA.concat(this._inflate[c7],this._inflate[i6]);if(this._inflate._readableState.endEmitted)this._inflate.close(),this._inflate=null;else if(this._inflate[i6]=0,this._inflate[c7]=[],Q&&this.params[`${Y}_no_context_takeover`])this._inflate.reset();B(null,C)})}_compress(A,Q,B){let Y=this._isServer?"server":"client";if(!this._deflate){let J=`${Y}_max_window_bits`,C=typeof this.params[J]!=="number"?uD.Z_DEFAULT_WINDOWBITS:this.params[J];this._deflate=uD.createDeflateRaw({...this._options.zlibDeflateOptions,windowBits:C}),this._deflate[i6]=0,this._deflate[c7]=[],this._deflate.on("data",B7B)}this._deflate[LE]=B,this._deflate.write(A),this._deflate.flush(uD.Z_SYNC_FLUSH,()=>{if(!this._deflate)return;let J=KVA.concat(this._deflate[c7],this._deflate[i6]);if(Q)J=new A7B(J.buffer,J.byteOffset,J.length-4);if(this._deflate[LE]=null,this._deflate[i6]=0,this._deflate[c7]=[],Q&&this.params[`${Y}_no_context_takeover`])this._deflate.reset();B(null,J)})}}DVA.exports=IVA;function B7B(A){this[c7].push(A),this[i6]+=A.length}function HVA(A){if(this[i6]+=A.length,this[mw]._maxPayload<1||this[i6]<=this[mw]._maxPayload){this[c7].push(A);return}this[qE]=RangeError("Max payload size exceeded"),this[qE].code="WS_ERR_UNSUPPORTED_MESSAGE_LENGTH",this[qE][VVA]=1009,this.removeListener("data",HVA),this.reset()}function Y7B(A){if(this[mw]._inflate=null,this[qE]){this[LE](this[qE]);return}A[VVA]=1007,this[LE](A)}});var ME=R((pDY,uw)=>{var{isUtf8:NVA}=u("buffer"),{hasBlob:J7B}=p6(),C7B=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,1,1,1,0,0,1,1,0,1,1,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,0,1,0];function X7B(A){return A>=1000&&A<=1014&&A!==1004&&A!==1005&&A!==1006||A>=3000&&A<=4999}function hm(A){let Q=A.length,B=0;while(B=Q||(A[B+1]&192)!==128||(A[B+2]&192)!==128||A[B]===224&&(A[B+1]&224)===128||A[B]===237&&(A[B+1]&224)===160)return!1;B+=3}else if((A[B]&248)===240){if(B+3>=Q||(A[B+1]&192)!==128||(A[B+2]&192)!==128||(A[B+3]&192)!==128||A[B]===240&&(A[B+1]&240)===128||A[B]===244&&A[B+1]>143||A[B]>244)return!1;B+=4}else return!1;return!0}function G7B(A){return J7B&&typeof A==="object"&&typeof A.arrayBuffer==="function"&&typeof A.type==="string"&&typeof A.stream==="function"&&(A[Symbol.toStringTag]==="Blob"||A[Symbol.toStringTag]==="File")}uw.exports={isBlob:G7B,isValidStatusCode:X7B,isValidUTF8:hm,tokenChars:C7B};if(NVA)uw.exports.isValidUTF8=function(A){return A.length<24?hm(A):NVA(A)};else if(!process.env.WS_NO_UTF_8_VALIDATE)try{let A=(()=>{throw new Error("Cannot require module "+"utf-8-validate");})();uw.exports.isValidUTF8=function(Q){return Q.length<32?hm(Q):A(Q)}}catch(A){}});var fm=R((iDY,RVA)=>{var{Writable:W7B}=u("stream"),LVA=dD(),{BINARY_TYPES:F7B,EMPTY_BUFFER:qVA,kStatusCode:Z7B,kWebSocket:$7B}=p6(),{concat:xm,toArrayBuffer:U7B,unmask:E7B}=mD(),{isValidStatusCode:K7B,isValidUTF8:MVA}=ME(),dw=Buffer[Symbol.species];class zVA extends W7B{constructor(A={}){super();this._allowSynchronousEvents=A.allowSynchronousEvents!==void 0?A.allowSynchronousEvents:!0,this._binaryType=A.binaryType||F7B[0],this._extensions=A.extensions||{},this._isServer=!!A.isServer,this._maxPayload=A.maxPayload|0,this._skipUTF8Validation=!!A.skipUTF8Validation,this[$7B]=void 0,this._bufferedBytes=0,this._buffers=[],this._compressed=!1,this._payloadLength=0,this._mask=void 0,this._fragmented=0,this._masked=!1,this._fin=!1,this._opcode=0,this._totalPayloadLength=0,this._messageLength=0,this._fragments=[],this._errored=!1,this._loop=!1,this._state=0}_write(A,Q,B){if(this._opcode===8&&this._state==0)return B();this._bufferedBytes+=A.length,this._buffers.push(A),this.startLoop(B)}consume(A){if(this._bufferedBytes-=A,A===this._buffers[0].length)return this._buffers.shift();if(A=B.length)Q.set(this._buffers.shift(),Y);else Q.set(new Uint8Array(B.buffer,B.byteOffset,A),Y),this._buffers[0]=new dw(B.buffer,B.byteOffset+A,B.length-A);A-=B.length}while(A>0);return Q}startLoop(A){this._loop=!0;do switch(this._state){case 0:this.getInfo(A);break;case 1:this.getPayloadLength16(A);break;case 2:this.getPayloadLength64(A);break;case 3:this.getMask();break;case 4:this.getData(A);break;case 5:case 6:this._loop=!1;return}while(this._loop);if(!this._errored)A()}getInfo(A){if(this._bufferedBytes<2){this._loop=!1;return}let Q=this.consume(2);if((Q[0]&48)!==0){let Y=this.createError(RangeError,"RSV2 and RSV3 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_2_3");A(Y);return}let B=(Q[0]&64)===64;if(B&&!this._extensions[LVA.extensionName]){let Y=this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");A(Y);return}if(this._fin=(Q[0]&128)===128,this._opcode=Q[0]&15,this._payloadLength=Q[1]&127,this._opcode===0){if(B){let Y=this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");A(Y);return}if(!this._fragmented){let Y=this.createError(RangeError,"invalid opcode 0",!0,1002,"WS_ERR_INVALID_OPCODE");A(Y);return}this._opcode=this._fragmented}else if(this._opcode===1||this._opcode===2){if(this._fragmented){let Y=this.createError(RangeError,`invalid opcode ${this._opcode}`,!0,1002,"WS_ERR_INVALID_OPCODE");A(Y);return}this._compressed=B}else if(this._opcode>7&&this._opcode<11){if(!this._fin){let Y=this.createError(RangeError,"FIN must be set",!0,1002,"WS_ERR_EXPECTED_FIN");A(Y);return}if(B){let Y=this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");A(Y);return}if(this._payloadLength>125||this._opcode===8&&this._payloadLength===1){let Y=this.createError(RangeError,`invalid payload length ${this._payloadLength}`,!0,1002,"WS_ERR_INVALID_CONTROL_PAYLOAD_LENGTH");A(Y);return}}else{let Y=this.createError(RangeError,`invalid opcode ${this._opcode}`,!0,1002,"WS_ERR_INVALID_OPCODE");A(Y);return}if(!this._fin&&!this._fragmented)this._fragmented=this._opcode;if(this._masked=(Q[1]&128)===128,this._isServer){if(!this._masked){let Y=this.createError(RangeError,"MASK must be set",!0,1002,"WS_ERR_EXPECTED_MASK");A(Y);return}}else if(this._masked){let Y=this.createError(RangeError,"MASK must be clear",!0,1002,"WS_ERR_UNEXPECTED_MASK");A(Y);return}if(this._payloadLength===126)this._state=1;else if(this._payloadLength===127)this._state=2;else this.haveLength(A)}getPayloadLength16(A){if(this._bufferedBytes<2){this._loop=!1;return}this._payloadLength=this.consume(2).readUInt16BE(0),this.haveLength(A)}getPayloadLength64(A){if(this._bufferedBytes<8){this._loop=!1;return}let Q=this.consume(8),B=Q.readUInt32BE(0);if(B>Math.pow(2,21)-1){let Y=this.createError(RangeError,"Unsupported WebSocket frame: payload length > 2^53 - 1",!1,1009,"WS_ERR_UNSUPPORTED_DATA_PAYLOAD_LENGTH");A(Y);return}this._payloadLength=B*Math.pow(2,32)+Q.readUInt32BE(4),this.haveLength(A)}haveLength(A){if(this._payloadLength&&this._opcode<8){if(this._totalPayloadLength+=this._payloadLength,this._totalPayloadLength>this._maxPayload&&this._maxPayload>0){let Q=this.createError(RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH");A(Q);return}}if(this._masked)this._state=3;else this._state=4}getMask(){if(this._bufferedBytes<4){this._loop=!1;return}this._mask=this.consume(4),this._state=4}getData(A){let Q=qVA;if(this._payloadLength){if(this._bufferedBytes7){this.controlMessage(Q,A);return}if(this._compressed){this._state=5,this.decompress(Q,A);return}if(Q.length)this._messageLength=this._totalPayloadLength,this._fragments.push(Q);this.dataMessage(A)}decompress(A,Q){this._extensions[LVA.extensionName].decompress(A,this._fin,(Y,J)=>{if(Y)return Q(Y);if(J.length){if(this._messageLength+=J.length,this._messageLength>this._maxPayload&&this._maxPayload>0){let C=this.createError(RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH");Q(C);return}this._fragments.push(J)}if(this.dataMessage(Q),this._state===0)this.startLoop(Q)})}dataMessage(A){if(!this._fin){this._state=0;return}let Q=this._messageLength,B=this._fragments;if(this._totalPayloadLength=0,this._messageLength=0,this._fragmented=0,this._fragments=[],this._opcode===2){let Y;if(this._binaryType==="nodebuffer")Y=xm(B,Q);else if(this._binaryType==="arraybuffer")Y=U7B(xm(B,Q));else if(this._binaryType==="blob")Y=new Blob(B);else Y=B;if(this._allowSynchronousEvents)this.emit("message",Y,!0),this._state=0;else this._state=6,setImmediate(()=>{this.emit("message",Y,!0),this._state=0,this.startLoop(A)})}else{let Y=xm(B,Q);if(!this._skipUTF8Validation&&!MVA(Y)){let J=this.createError(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8");A(J);return}if(this._state===5||this._allowSynchronousEvents)this.emit("message",Y,!1),this._state=0;else this._state=6,setImmediate(()=>{this.emit("message",Y,!1),this._state=0,this.startLoop(A)})}}controlMessage(A,Q){if(this._opcode===8){if(A.length===0)this._loop=!1,this.emit("conclude",1005,qVA),this.end();else{let B=A.readUInt16BE(0);if(!K7B(B)){let J=this.createError(RangeError,`invalid status code ${B}`,!0,1002,"WS_ERR_INVALID_CLOSE_CODE");Q(J);return}let Y=new dw(A.buffer,A.byteOffset+2,A.length-2);if(!this._skipUTF8Validation&&!MVA(Y)){let J=this.createError(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8");Q(J);return}this._loop=!1,this.emit("conclude",B,Y),this.end()}this._state=0;return}if(this._allowSynchronousEvents)this.emit(this._opcode===9?"ping":"pong",A),this._state=0;else this._state=6,setImmediate(()=>{this.emit(this._opcode===9?"ping":"pong",A),this._state=0,this.startLoop(Q)})}createError(A,Q,B,Y,J){this._loop=!1,this._errored=!0;let C=new A(B?`Invalid WebSocket frame: ${Q}`:Q);return Error.captureStackTrace(C,this.createError),C.code=J,C[Z7B]=Y,C}}RVA.exports=zVA});var mm=R((sDY,OVA)=>{var{Duplex:nDY}=u("stream"),{randomFillSync:V7B}=u("crypto"),wVA=dD(),{EMPTY_BUFFER:I7B,kWebSocket:H7B,NOOP:D7B}=p6(),{isBlob:zE,isValidStatusCode:N7B}=ME(),{mask:jVA,toBuffer:NZ}=mD(),O5=Symbol("kByteLength"),L7B=Buffer.alloc(4),LZ,RE=8192,nC=0,q7B=1,M7B=2;class l7{constructor(A,Q,B){if(this._extensions=Q||{},B)this._generateMask=B,this._maskBuffer=Buffer.alloc(4);this._socket=A,this._firstFragment=!0,this._compress=!1,this._bufferedBytes=0,this._queue=[],this._state=nC,this.onerror=D7B,this[H7B]=void 0}static frame(A,Q){let B,Y=!1,J=2,C=!1;if(Q.mask){if(B=Q.maskBuffer||L7B,Q.generateMask)Q.generateMask(B);else{if(RE===8192){if(LZ===void 0)LZ=Buffer.alloc(8192);V7B(LZ,0,8192),RE=0}B[0]=LZ[RE++],B[1]=LZ[RE++],B[2]=LZ[RE++],B[3]=LZ[RE++]}C=(B[0]|B[1]|B[2]|B[3])===0,J=6}let X;if(typeof A==="string")if((!Q.mask||C)&&Q[O5]!==void 0)X=Q[O5];else A=Buffer.from(A),X=A.length;else X=A.length,Y=Q.mask&&Q.readOnly&&!C;let G=X;if(X>=65536)J+=8,G=127;else if(X>125)J+=2,G=126;let W=Buffer.allocUnsafe(Y?X+J:J);if(W[0]=Q.fin?Q.opcode|128:Q.opcode,Q.rsv1)W[0]|=64;if(W[1]=G,G===126)W.writeUInt16BE(X,2);else if(G===127)W[2]=W[3]=0,W.writeUIntBE(X,4,6);if(!Q.mask)return[W,A];if(W[1]|=128,W[J-4]=B[0],W[J-3]=B[1],W[J-2]=B[2],W[J-1]=B[3],C)return[W,A];if(Y)return jVA(A,B,W,J,X),[W];return jVA(A,B,A,0,X),[W,A]}close(A,Q,B,Y){let J;if(A===void 0)J=I7B;else if(typeof A!=="number"||!N7B(A))throw TypeError("First argument must be a valid error code number");else if(Q===void 0||!Q.length)J=Buffer.allocUnsafe(2),J.writeUInt16BE(A,0);else{let X=Buffer.byteLength(Q);if(X>123)throw RangeError("The message must not be greater than 123 bytes");if(J=Buffer.allocUnsafe(2+X),J.writeUInt16BE(A,0),typeof Q==="string")J.write(Q,2);else J.set(Q,2)}let C={[O5]:J.length,fin:!0,generateMask:this._generateMask,mask:B,maskBuffer:this._maskBuffer,opcode:8,readOnly:!1,rsv1:!1};if(this._state!==nC)this.enqueue([this.dispatch,J,!1,C,Y]);else this.sendFrame(l7.frame(J,C),Y)}ping(A,Q,B){let Y,J;if(typeof A==="string")Y=Buffer.byteLength(A),J=!1;else if(zE(A))Y=A.size,J=!1;else A=NZ(A),Y=A.length,J=NZ.readOnly;if(Y>125)throw RangeError("The data size must not be greater than 125 bytes");let C={[O5]:Y,fin:!0,generateMask:this._generateMask,mask:Q,maskBuffer:this._maskBuffer,opcode:9,readOnly:J,rsv1:!1};if(zE(A))if(this._state!==nC)this.enqueue([this.getBlobData,A,!1,C,B]);else this.getBlobData(A,!1,C,B);else if(this._state!==nC)this.enqueue([this.dispatch,A,!1,C,B]);else this.sendFrame(l7.frame(A,C),B)}pong(A,Q,B){let Y,J;if(typeof A==="string")Y=Buffer.byteLength(A),J=!1;else if(zE(A))Y=A.size,J=!1;else A=NZ(A),Y=A.length,J=NZ.readOnly;if(Y>125)throw RangeError("The data size must not be greater than 125 bytes");let C={[O5]:Y,fin:!0,generateMask:this._generateMask,mask:Q,maskBuffer:this._maskBuffer,opcode:10,readOnly:J,rsv1:!1};if(zE(A))if(this._state!==nC)this.enqueue([this.getBlobData,A,!1,C,B]);else this.getBlobData(A,!1,C,B);else if(this._state!==nC)this.enqueue([this.dispatch,A,!1,C,B]);else this.sendFrame(l7.frame(A,C),B)}send(A,Q,B){let Y=this._extensions[wVA.extensionName],J=Q.binary?2:1,C=Q.compress,X,G;if(typeof A==="string")X=Buffer.byteLength(A),G=!1;else if(zE(A))X=A.size,G=!1;else A=NZ(A),X=A.length,G=NZ.readOnly;if(this._firstFragment){if(this._firstFragment=!1,C&&Y&&Y.params[Y._isServer?"server_no_context_takeover":"client_no_context_takeover"])C=X>=Y._threshold;this._compress=C}else C=!1,J=0;if(Q.fin)this._firstFragment=!0;let W={[O5]:X,fin:Q.fin,generateMask:this._generateMask,mask:Q.mask,maskBuffer:this._maskBuffer,opcode:J,readOnly:G,rsv1:C};if(zE(A))if(this._state!==nC)this.enqueue([this.getBlobData,A,this._compress,W,B]);else this.getBlobData(A,this._compress,W,B);else if(this._state!==nC)this.enqueue([this.dispatch,A,this._compress,W,B]);else this.dispatch(A,this._compress,W,B)}getBlobData(A,Q,B,Y){this._bufferedBytes+=B[O5],this._state=M7B,A.arrayBuffer().then((J)=>{if(this._socket.destroyed){let X=Error("The socket was closed while the blob was being read");process.nextTick(bm,this,X,Y);return}this._bufferedBytes-=B[O5];let C=NZ(J);if(!Q)this._state=nC,this.sendFrame(l7.frame(C,B),Y),this.dequeue();else this.dispatch(C,Q,B,Y)}).catch((J)=>{process.nextTick(z7B,this,J,Y)})}dispatch(A,Q,B,Y){if(!Q){this.sendFrame(l7.frame(A,B),Y);return}let J=this._extensions[wVA.extensionName];this._bufferedBytes+=B[O5],this._state=q7B,J.compress(A,B.fin,(C,X)=>{if(this._socket.destroyed){let G=Error("The socket was closed while data was being compressed");bm(this,G,Y);return}this._bufferedBytes-=B[O5],this._state=nC,B.readOnly=!1,this.sendFrame(l7.frame(X,B),Y),this.dequeue()})}dequeue(){while(this._state===nC&&this._queue.length){let A=this._queue.shift();this._bufferedBytes-=A[3][O5],Reflect.apply(A[0],this,A.slice(1))}}enqueue(A){this._bufferedBytes+=A[3][O5],this._queue.push(A)}sendFrame(A,Q){if(A.length===2)this._socket.cork(),this._socket.write(A[0]),this._socket.write(A[1],Q),this._socket.uncork();else this._socket.write(A[0],Q)}}OVA.exports=l7;function bm(A,Q,B){if(typeof B==="function")B(Q);for(let Y=0;Y{var{kForOnEventAttribute:cD,kListener:um}=p6(),PVA=Symbol("kCode"),TVA=Symbol("kData"),SVA=Symbol("kError"),kVA=Symbol("kMessage"),_VA=Symbol("kReason"),wE=Symbol("kTarget"),vVA=Symbol("kType"),yVA=Symbol("kWasClean");class p7{constructor(A){this[wE]=null,this[vVA]=A}get target(){return this[wE]}get type(){return this[vVA]}}Object.defineProperty(p7.prototype,"target",{enumerable:!0});Object.defineProperty(p7.prototype,"type",{enumerable:!0});class jE extends p7{constructor(A,Q={}){super(A);this[PVA]=Q.code===void 0?0:Q.code,this[_VA]=Q.reason===void 0?"":Q.reason,this[yVA]=Q.wasClean===void 0?!1:Q.wasClean}get code(){return this[PVA]}get reason(){return this[_VA]}get wasClean(){return this[yVA]}}Object.defineProperty(jE.prototype,"code",{enumerable:!0});Object.defineProperty(jE.prototype,"reason",{enumerable:!0});Object.defineProperty(jE.prototype,"wasClean",{enumerable:!0});class lD extends p7{constructor(A,Q={}){super(A);this[SVA]=Q.error===void 0?null:Q.error,this[kVA]=Q.message===void 0?"":Q.message}get error(){return this[SVA]}get message(){return this[kVA]}}Object.defineProperty(lD.prototype,"error",{enumerable:!0});Object.defineProperty(lD.prototype,"message",{enumerable:!0});class lw extends p7{constructor(A,Q={}){super(A);this[TVA]=Q.data===void 0?null:Q.data}get data(){return this[TVA]}}Object.defineProperty(lw.prototype,"data",{enumerable:!0});var R7B={addEventListener(A,Q,B={}){for(let J of this.listeners(A))if(!B[cD]&&J[um]===Q&&!J[cD])return;let Y;if(A==="message")Y=function(C,X){let G=new lw("message",{data:X?C:C.toString()});G[wE]=this,cw(Q,this,G)};else if(A==="close")Y=function(C,X){let G=new jE("close",{code:C,reason:X.toString(),wasClean:this._closeFrameReceived&&this._closeFrameSent});G[wE]=this,cw(Q,this,G)};else if(A==="error")Y=function(C){let X=new lD("error",{error:C,message:C.message});X[wE]=this,cw(Q,this,X)};else if(A==="open")Y=function(){let C=new p7("open");C[wE]=this,cw(Q,this,C)};else return;if(Y[cD]=!!B[cD],Y[um]=Q,B.once)this.once(A,Y);else this.on(A,Y)},removeEventListener(A,Q){for(let B of this.listeners(A))if(B[um]===Q&&!B[cD]){this.removeListener(A,B);break}}};gVA.exports={CloseEvent:jE,ErrorEvent:lD,Event:p7,EventTarget:R7B,MessageEvent:lw};function cw(A,Q,B){if(typeof A==="object"&&A.handleEvent)A.handleEvent.call(A,B);else A.call(Q,B)}});var dm=R((aDY,xVA)=>{var{tokenChars:pD}=ME();function QX(A,Q,B){if(A[Q]===void 0)A[Q]=[B];else A[Q].push(B)}function w7B(A){let Q=Object.create(null),B=Object.create(null),Y=!1,J=!1,C=!1,X,G,W=-1,F=-1,Z=-1,U=0;for(;U{let B=A[Q];if(!Array.isArray(B))B=[B];return B.map((Y)=>{return[Q].concat(Object.keys(Y).map((J)=>{let C=Y[J];if(!Array.isArray(C))C=[C];return C.map((X)=>X===!0?J:`${J}=${X}`).join("; ")})).join("; ")}).join(", ")}).join(", ")}xVA.exports={format:j7B,parse:w7B}});var sw=R((eDY,rVA)=>{var O7B=u("events"),P7B=u("https"),T7B=u("http"),mVA=u("net"),S7B=u("tls"),{randomBytes:k7B,createHash:_7B}=u("crypto"),{Duplex:oDY,Readable:tDY}=u("stream"),{URL:cm}=u("url"),i7=dD(),v7B=fm(),y7B=mm(),{isBlob:g7B}=ME(),{BINARY_TYPES:fVA,EMPTY_BUFFER:pw,GUID:h7B,kForOnEventAttribute:lm,kListener:x7B,kStatusCode:f7B,kWebSocket:nY,NOOP:uVA}=p6(),{EventTarget:{addEventListener:b7B,removeEventListener:m7B}}=hVA(),{format:u7B,parse:d7B}=dm(),{toBuffer:c7B}=mD(),dVA=Symbol("kAborted"),pm=[8,13],n6=["CONNECTING","OPEN","CLOSING","CLOSED"],l7B=/^[!#$%&'*+\-.0-9A-Z^_`|a-z~]+$/;class xQ extends O7B{constructor(A,Q,B){super();if(this._binaryType=fVA[0],this._closeCode=1006,this._closeFrameReceived=!1,this._closeFrameSent=!1,this._closeMessage=pw,this._closeTimer=null,this._errorEmitted=!1,this._extensions={},this._paused=!1,this._protocol="",this._readyState=xQ.CONNECTING,this._receiver=null,this._sender=null,this._socket=null,A!==null){if(this._bufferedAmount=0,this._isServer=!1,this._redirects=0,Q===void 0)Q=[];else if(!Array.isArray(Q))if(typeof Q==="object"&&Q!==null)B=Q,Q=[];else Q=[Q];cVA(this,A,Q,B)}else this._autoPong=B.autoPong,this._isServer=!0}get binaryType(){return this._binaryType}set binaryType(A){if(!fVA.includes(A))return;if(this._binaryType=A,this._receiver)this._receiver._binaryType=A}get bufferedAmount(){if(!this._socket)return this._bufferedAmount;return this._socket._writableState.length+this._sender._bufferedBytes}get extensions(){return Object.keys(this._extensions).join()}get isPaused(){return this._paused}get onclose(){return null}get onerror(){return null}get onopen(){return null}get onmessage(){return null}get protocol(){return this._protocol}get readyState(){return this._readyState}get url(){return this._url}setSocket(A,Q,B){let Y=new v7B({allowSynchronousEvents:B.allowSynchronousEvents,binaryType:this.binaryType,extensions:this._extensions,isServer:this._isServer,maxPayload:B.maxPayload,skipUTF8Validation:B.skipUTF8Validation}),J=new y7B(A,this._extensions,B.generateMask);if(this._receiver=Y,this._sender=J,this._socket=A,Y[nY]=this,J[nY]=this,A[nY]=this,Y.on("conclude",n7B),Y.on("drain",s7B),Y.on("error",r7B),Y.on("message",a7B),Y.on("ping",o7B),Y.on("pong",t7B),J.onerror=e7B,A.setTimeout)A.setTimeout(0);if(A.setNoDelay)A.setNoDelay();if(Q.length>0)A.unshift(Q);A.on("close",iVA),A.on("data",nw),A.on("end",nVA),A.on("error",sVA),this._readyState=xQ.OPEN,this.emit("open")}emitClose(){if(!this._socket){this._readyState=xQ.CLOSED,this.emit("close",this._closeCode,this._closeMessage);return}if(this._extensions[i7.extensionName])this._extensions[i7.extensionName].cleanup();this._receiver.removeAllListeners(),this._readyState=xQ.CLOSED,this.emit("close",this._closeCode,this._closeMessage)}close(A,Q){if(this.readyState===xQ.CLOSED)return;if(this.readyState===xQ.CONNECTING){P8(this,this._req,"WebSocket was closed before the connection was established");return}if(this.readyState===xQ.CLOSING){if(this._closeFrameSent&&(this._closeFrameReceived||this._receiver._writableState.errorEmitted))this._socket.end();return}this._readyState=xQ.CLOSING,this._sender.close(A,Q,!this._isServer,(B)=>{if(B)return;if(this._closeFrameSent=!0,this._closeFrameReceived||this._receiver._writableState.errorEmitted)this._socket.end()}),pVA(this)}pause(){if(this.readyState===xQ.CONNECTING||this.readyState===xQ.CLOSED)return;this._paused=!0,this._socket.pause()}ping(A,Q,B){if(this.readyState===xQ.CONNECTING)throw Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof A==="function")B=A,A=Q=void 0;else if(typeof Q==="function")B=Q,Q=void 0;if(typeof A==="number")A=A.toString();if(this.readyState!==xQ.OPEN){im(this,A,B);return}if(Q===void 0)Q=!this._isServer;this._sender.ping(A||pw,Q,B)}pong(A,Q,B){if(this.readyState===xQ.CONNECTING)throw Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof A==="function")B=A,A=Q=void 0;else if(typeof Q==="function")B=Q,Q=void 0;if(typeof A==="number")A=A.toString();if(this.readyState!==xQ.OPEN){im(this,A,B);return}if(Q===void 0)Q=!this._isServer;this._sender.pong(A||pw,Q,B)}resume(){if(this.readyState===xQ.CONNECTING||this.readyState===xQ.CLOSED)return;if(this._paused=!1,!this._receiver._writableState.needDrain)this._socket.resume()}send(A,Q,B){if(this.readyState===xQ.CONNECTING)throw Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof Q==="function")B=Q,Q={};if(typeof A==="number")A=A.toString();if(this.readyState!==xQ.OPEN){im(this,A,B);return}let Y={binary:typeof A!=="string",mask:!this._isServer,compress:!0,fin:!0,...Q};if(!this._extensions[i7.extensionName])Y.compress=!1;this._sender.send(A||pw,Y,B)}terminate(){if(this.readyState===xQ.CLOSED)return;if(this.readyState===xQ.CONNECTING){P8(this,this._req,"WebSocket was closed before the connection was established");return}if(this._socket)this._readyState=xQ.CLOSING,this._socket.destroy()}}Object.defineProperty(xQ,"CONNECTING",{enumerable:!0,value:n6.indexOf("CONNECTING")});Object.defineProperty(xQ.prototype,"CONNECTING",{enumerable:!0,value:n6.indexOf("CONNECTING")});Object.defineProperty(xQ,"OPEN",{enumerable:!0,value:n6.indexOf("OPEN")});Object.defineProperty(xQ.prototype,"OPEN",{enumerable:!0,value:n6.indexOf("OPEN")});Object.defineProperty(xQ,"CLOSING",{enumerable:!0,value:n6.indexOf("CLOSING")});Object.defineProperty(xQ.prototype,"CLOSING",{enumerable:!0,value:n6.indexOf("CLOSING")});Object.defineProperty(xQ,"CLOSED",{enumerable:!0,value:n6.indexOf("CLOSED")});Object.defineProperty(xQ.prototype,"CLOSED",{enumerable:!0,value:n6.indexOf("CLOSED")});["binaryType","bufferedAmount","extensions","isPaused","protocol","readyState","url"].forEach((A)=>{Object.defineProperty(xQ.prototype,A,{enumerable:!0})});["open","error","close","message"].forEach((A)=>{Object.defineProperty(xQ.prototype,`on${A}`,{enumerable:!0,get(){for(let Q of this.listeners(A))if(Q[lm])return Q[x7B];return null},set(Q){for(let B of this.listeners(A))if(B[lm]){this.removeListener(A,B);break}if(typeof Q!=="function")return;this.addEventListener(A,Q,{[lm]:!0})}})});xQ.prototype.addEventListener=b7B;xQ.prototype.removeEventListener=m7B;rVA.exports=xQ;function cVA(A,Q,B,Y){let J={allowSynchronousEvents:!0,autoPong:!0,protocolVersion:pm[1],maxPayload:104857600,skipUTF8Validation:!1,perMessageDeflate:!0,followRedirects:!1,maxRedirects:10,...Y,socketPath:void 0,hostname:void 0,protocol:void 0,timeout:void 0,method:"GET",host:void 0,path:void 0,port:void 0};if(A._autoPong=J.autoPong,!pm.includes(J.protocolVersion))throw RangeError(`Unsupported protocol version: ${J.protocolVersion} (supported versions: ${pm.join(", ")})`);let C;if(Q instanceof cm)C=Q;else try{C=new cm(Q)}catch(I){throw SyntaxError(`Invalid URL: ${Q}`)}if(C.protocol==="http:")C.protocol="ws:";else if(C.protocol==="https:")C.protocol="wss:";A._url=C.href;let X=C.protocol==="wss:",G=C.protocol==="ws+unix:",W;if(C.protocol!=="ws:"&&!X&&!G)W=`The URL's protocol must be one of "ws:", "wss:", "http:", "https:", or "ws+unix:"`;else if(G&&!C.pathname)W="The URL's pathname is empty";else if(C.hash)W="The URL contains a fragment identifier";if(W){let I=SyntaxError(W);if(A._redirects===0)throw I;else{iw(A,I);return}}let F=X?443:80,Z=k7B(16).toString("base64"),U=X?P7B.request:T7B.request,$=new Set,E;if(J.createConnection=J.createConnection||(X?i7B:p7B),J.defaultPort=J.defaultPort||F,J.port=C.port||F,J.host=C.hostname.startsWith("[")?C.hostname.slice(1,-1):C.hostname,J.headers={...J.headers,"Sec-WebSocket-Version":J.protocolVersion,"Sec-WebSocket-Key":Z,Connection:"Upgrade",Upgrade:"websocket"},J.path=C.pathname+C.search,J.timeout=J.handshakeTimeout,J.perMessageDeflate)E=new i7(J.perMessageDeflate!==!0?J.perMessageDeflate:{},!1,J.maxPayload),J.headers["Sec-WebSocket-Extensions"]=u7B({[i7.extensionName]:E.offer()});if(B.length){for(let I of B){if(typeof I!=="string"||!l7B.test(I)||$.has(I))throw SyntaxError("An invalid or duplicated subprotocol was specified");$.add(I)}J.headers["Sec-WebSocket-Protocol"]=B.join(",")}if(J.origin)if(J.protocolVersion<13)J.headers["Sec-WebSocket-Origin"]=J.origin;else J.headers.Origin=J.origin;if(C.username||C.password)J.auth=`${C.username}:${C.password}`;if(G){let I=J.path.split(":");J.socketPath=I[0],J.path=I[1]}let K;if(J.followRedirects){if(A._redirects===0){A._originalIpc=G,A._originalSecure=X,A._originalHostOrSocketPath=G?J.socketPath:C.host;let I=Y&&Y.headers;if(Y={...Y,headers:{}},I)for(let[V,H]of Object.entries(I))Y.headers[V.toLowerCase()]=H}else if(A.listenerCount("redirect")===0){let I=G?A._originalIpc?J.socketPath===A._originalHostOrSocketPath:!1:A._originalIpc?!1:C.host===A._originalHostOrSocketPath;if(!I||A._originalSecure&&!X){if(delete J.headers.authorization,delete J.headers.cookie,!I)delete J.headers.host;J.auth=void 0}}if(J.auth&&!Y.headers.authorization)Y.headers.authorization="Basic "+Buffer.from(J.auth).toString("base64");if(K=A._req=U(J),A._redirects)A.emit("redirect",A.url,K)}else K=A._req=U(J);if(J.timeout)K.on("timeout",()=>{P8(A,K,"Opening handshake has timed out")});if(K.on("error",(I)=>{if(K===null||K[dVA])return;K=A._req=null,iw(A,I)}),K.on("response",(I)=>{let V=I.headers.location,H=I.statusCode;if(V&&J.followRedirects&&H>=300&&H<400){if(++A._redirects>J.maxRedirects){P8(A,K,"Maximum redirects exceeded");return}K.abort();let D;try{D=new cm(V,Q)}catch(L){let z=SyntaxError(`Invalid URL: ${V}`);iw(A,z);return}cVA(A,D,B,Y)}else if(!A.emit("unexpected-response",K,I))P8(A,K,`Unexpected server response: ${I.statusCode}`)}),K.on("upgrade",(I,V,H)=>{if(A.emit("upgrade",I),A.readyState!==xQ.CONNECTING)return;K=A._req=null;let D=I.headers.upgrade;if(D===void 0||D.toLowerCase()!=="websocket"){P8(A,V,"Invalid Upgrade header");return}let L=_7B("sha1").update(Z+h7B).digest("base64");if(I.headers["sec-websocket-accept"]!==L){P8(A,V,"Invalid Sec-WebSocket-Accept header");return}let z=I.headers["sec-websocket-protocol"],M;if(z!==void 0){if(!$.size)M="Server sent a subprotocol but none was requested";else if(!$.has(z))M="Server sent an invalid subprotocol"}else if($.size)M="Server sent no subprotocol";if(M){P8(A,V,M);return}if(z)A._protocol=z;let N=I.headers["sec-websocket-extensions"];if(N!==void 0){if(!E){P8(A,V,"Server sent a Sec-WebSocket-Extensions header but no extension was requested");return}let q;try{q=d7B(N)}catch(P){P8(A,V,"Invalid Sec-WebSocket-Extensions header");return}let w=Object.keys(q);if(w.length!==1||w[0]!==i7.extensionName){P8(A,V,"Server indicated an extension that was not requested");return}try{E.accept(q[i7.extensionName])}catch(P){P8(A,V,"Invalid Sec-WebSocket-Extensions header");return}A._extensions[i7.extensionName]=E}A.setSocket(V,H,{allowSynchronousEvents:J.allowSynchronousEvents,generateMask:J.generateMask,maxPayload:J.maxPayload,skipUTF8Validation:J.skipUTF8Validation})}),J.finishRequest)J.finishRequest(K,A);else K.end()}function iw(A,Q){A._readyState=xQ.CLOSING,A._errorEmitted=!0,A.emit("error",Q),A.emitClose()}function p7B(A){return A.path=A.socketPath,mVA.connect(A)}function i7B(A){if(A.path=void 0,!A.servername&&A.servername!=="")A.servername=mVA.isIP(A.host)?"":A.host;return S7B.connect(A)}function P8(A,Q,B){A._readyState=xQ.CLOSING;let Y=Error(B);if(Error.captureStackTrace(Y,P8),Q.setHeader){if(Q[dVA]=!0,Q.abort(),Q.socket&&!Q.socket.destroyed)Q.socket.destroy();process.nextTick(iw,A,Y)}else Q.destroy(Y),Q.once("error",A.emit.bind(A,"error")),Q.once("close",A.emitClose.bind(A))}function im(A,Q,B){if(Q){let Y=g7B(Q)?Q.size:c7B(Q).length;if(A._socket)A._sender._bufferedBytes+=Y;else A._bufferedAmount+=Y}if(B){let Y=Error(`WebSocket is not open: readyState ${A.readyState} (${n6[A.readyState]})`);process.nextTick(B,Y)}}function n7B(A,Q){let B=this[nY];if(B._closeFrameReceived=!0,B._closeMessage=Q,B._closeCode=A,B._socket[nY]===void 0)return;if(B._socket.removeListener("data",nw),process.nextTick(lVA,B._socket),A===1005)B.close();else B.close(A,Q)}function s7B(){let A=this[nY];if(!A.isPaused)A._socket.resume()}function r7B(A){let Q=this[nY];if(Q._socket[nY]!==void 0)Q._socket.removeListener("data",nw),process.nextTick(lVA,Q._socket),Q.close(A[f7B]);if(!Q._errorEmitted)Q._errorEmitted=!0,Q.emit("error",A)}function bVA(){this[nY].emitClose()}function a7B(A,Q){this[nY].emit("message",A,Q)}function o7B(A){let Q=this[nY];if(Q._autoPong)Q.pong(A,!this._isServer,uVA);Q.emit("ping",A)}function t7B(A){this[nY].emit("pong",A)}function lVA(A){A.resume()}function e7B(A){let Q=this[nY];if(Q.readyState===xQ.CLOSED)return;if(Q.readyState===xQ.OPEN)Q._readyState=xQ.CLOSING,pVA(Q);if(this._socket.end(),!Q._errorEmitted)Q._errorEmitted=!0,Q.emit("error",A)}function pVA(A){A._closeTimer=setTimeout(A._socket.destroy.bind(A._socket),30000)}function iVA(){let A=this[nY];this.removeListener("close",iVA),this.removeListener("data",nw),this.removeListener("end",nVA),A._readyState=xQ.CLOSING;let Q;if(!this._readableState.endEmitted&&!A._closeFrameReceived&&!A._receiver._writableState.errorEmitted&&(Q=A._socket.read())!==null)A._receiver.write(Q);if(A._receiver.end(),this[nY]=void 0,clearTimeout(A._closeTimer),A._receiver._writableState.finished||A._receiver._writableState.errorEmitted)A.emitClose();else A._receiver.on("error",bVA),A._receiver.on("finish",bVA)}function nw(A){if(!this[nY]._receiver.write(A))this.pause()}function nVA(){let A=this[nY];A._readyState=xQ.CLOSING,A._receiver.end(),this.end()}function sVA(){let A=this[nY];if(this.removeListener("error",sVA),this.on("error",uVA),A)A._readyState=xQ.CLOSING,this.destroy()}});var eVA=R((QNY,tVA)=>{var ANY=sw(),{Duplex:AWB}=u("stream");function aVA(A){A.emit("close")}function QWB(){if(!this.destroyed&&this._writableState.finished)this.destroy()}function oVA(A){if(this.removeListener("error",oVA),this.destroy(),this.listenerCount("error")===0)this.emit("error",A)}function BWB(A,Q){let B=!0,Y=new AWB({...Q,autoDestroy:!1,emitClose:!1,objectMode:!1,writableObjectMode:!1});return A.on("message",function(C,X){let G=!X&&Y._readableState.objectMode?C.toString():C;if(!Y.push(G))A.pause()}),A.once("error",function(C){if(Y.destroyed)return;B=!1,Y.destroy(C)}),A.once("close",function(){if(Y.destroyed)return;Y.push(null)}),Y._destroy=function(J,C){if(A.readyState===A.CLOSED){C(J),process.nextTick(aVA,Y);return}let X=!1;if(A.once("error",function(W){X=!0,C(W)}),A.once("close",function(){if(!X)C(J);process.nextTick(aVA,Y)}),B)A.terminate()},Y._final=function(J){if(A.readyState===A.CONNECTING){A.once("open",function(){Y._final(J)});return}if(A._socket===null)return;if(A._socket._writableState.finished){if(J(),Y._readableState.endEmitted)Y.destroy()}else A._socket.once("finish",function(){J()}),A.close()},Y._read=function(){if(A.isPaused)A.resume()},Y._write=function(J,C,X){if(A.readyState===A.CONNECTING){A.once("open",function(){Y._write(J,C,X)});return}A.send(J,X)},Y.on("end",QWB),Y.on("error",oVA),Y}tVA.exports=BWB});var QIA=R((BNY,AIA)=>{var{tokenChars:YWB}=ME();function JWB(A){let Q=new Set,B=-1,Y=-1,J=0;for(J;J{var CWB=u("events"),rw=u("http"),{Duplex:YNY}=u("stream"),{createHash:XWB}=u("crypto"),BIA=dm(),qZ=dD(),GWB=QIA(),WWB=sw(),{GUID:FWB,kWebSocket:ZWB}=p6(),$WB=/^[+/0-9A-Za-z]{22}==$/;class JIA extends CWB{constructor(A,Q){super();if(A={allowSynchronousEvents:!0,autoPong:!0,maxPayload:104857600,skipUTF8Validation:!1,perMessageDeflate:!1,handleProtocols:null,clientTracking:!0,verifyClient:null,noServer:!1,backlog:null,server:null,host:null,path:null,port:null,WebSocket:WWB,...A},A.port==null&&!A.server&&!A.noServer||A.port!=null&&(A.server||A.noServer)||A.server&&A.noServer)throw TypeError('One and only one of the "port", "server", or "noServer" options must be specified');if(A.port!=null)this._server=rw.createServer((B,Y)=>{let J=rw.STATUS_CODES[426];Y.writeHead(426,{"Content-Length":J.length,"Content-Type":"text/plain"}),Y.end(J)}),this._server.listen(A.port,A.host,A.backlog,Q);else if(A.server)this._server=A.server;if(this._server){let B=this.emit.bind(this,"connection");this._removeListeners=UWB(this._server,{listening:this.emit.bind(this,"listening"),error:this.emit.bind(this,"error"),upgrade:(Y,J,C)=>{this.handleUpgrade(Y,J,C,B)}})}if(A.perMessageDeflate===!0)A.perMessageDeflate={};if(A.clientTracking)this.clients=new Set,this._shouldEmitClose=!1;this.options=A,this._state=0}address(){if(this.options.noServer)throw Error('The server is operating in "noServer" mode');if(!this._server)return null;return this._server.address()}close(A){if(this._state===2){if(A)this.once("close",()=>{A(Error("The server is not running"))});process.nextTick(iD,this);return}if(A)this.once("close",A);if(this._state===1)return;if(this._state=1,this.options.noServer||this.options.server){if(this._server)this._removeListeners(),this._removeListeners=this._server=null;if(this.clients)if(!this.clients.size)process.nextTick(iD,this);else this._shouldEmitClose=!0;else process.nextTick(iD,this)}else{let Q=this._server;this._removeListeners(),this._removeListeners=this._server=null,Q.close(()=>{iD(this)})}}shouldHandle(A){if(this.options.path){let Q=A.url.indexOf("?");if((Q!==-1?A.url.slice(0,Q):A.url)!==this.options.path)return!1}return!0}handleUpgrade(A,Q,B,Y){Q.on("error",YIA);let J=A.headers["sec-websocket-key"],C=A.headers.upgrade,X=+A.headers["sec-websocket-version"];if(A.method!=="GET"){MZ(this,A,Q,405,"Invalid HTTP method");return}if(C===void 0||C.toLowerCase()!=="websocket"){MZ(this,A,Q,400,"Invalid Upgrade header");return}if(J===void 0||!$WB.test(J)){MZ(this,A,Q,400,"Missing or invalid Sec-WebSocket-Key header");return}if(X!==13&&X!==8){MZ(this,A,Q,400,"Missing or invalid Sec-WebSocket-Version header",{"Sec-WebSocket-Version":"13, 8"});return}if(!this.shouldHandle(A)){nD(Q,400);return}let G=A.headers["sec-websocket-protocol"],W=new Set;if(G!==void 0)try{W=GWB.parse(G)}catch(U){MZ(this,A,Q,400,"Invalid Sec-WebSocket-Protocol header");return}let F=A.headers["sec-websocket-extensions"],Z={};if(this.options.perMessageDeflate&&F!==void 0){let U=new qZ(this.options.perMessageDeflate,!0,this.options.maxPayload);try{let $=BIA.parse(F);if($[qZ.extensionName])U.accept($[qZ.extensionName]),Z[qZ.extensionName]=U}catch($){MZ(this,A,Q,400,"Invalid or unacceptable Sec-WebSocket-Extensions header");return}}if(this.options.verifyClient){let U={origin:A.headers[`${X===8?"sec-websocket-origin":"origin"}`],secure:!!(A.socket.authorized||A.socket.encrypted),req:A};if(this.options.verifyClient.length===2){this.options.verifyClient(U,($,E,K,I)=>{if(!$)return nD(Q,E||401,K,I);this.completeUpgrade(Z,J,W,A,Q,B,Y)});return}if(!this.options.verifyClient(U))return nD(Q,401)}this.completeUpgrade(Z,J,W,A,Q,B,Y)}completeUpgrade(A,Q,B,Y,J,C,X){if(!J.readable||!J.writable)return J.destroy();if(J[ZWB])throw Error("server.handleUpgrade() was called more than once with the same socket, possibly due to a misconfiguration");if(this._state>0)return nD(J,503);let W=["HTTP/1.1 101 Switching Protocols","Upgrade: websocket","Connection: Upgrade",`Sec-WebSocket-Accept: ${XWB("sha1").update(Q+FWB).digest("base64")}`],F=new this.options.WebSocket(null,void 0,this.options);if(B.size){let Z=this.options.handleProtocols?this.options.handleProtocols(B,Y):B.values().next().value;if(Z)W.push(`Sec-WebSocket-Protocol: ${Z}`),F._protocol=Z}if(A[qZ.extensionName]){let Z=A[qZ.extensionName].params,U=BIA.format({[qZ.extensionName]:[Z]});W.push(`Sec-WebSocket-Extensions: ${U}`),F._extensions=A}if(this.emit("headers",W,Y),J.write(W.concat(`\r `).join(`\r -`)),J.removeListener("error",IVA),W.setSocket(J,C,{allowSynchronousEvents:this.options.allowSynchronousEvents,maxPayload:this.options.maxPayload,skipUTF8Validation:this.options.skipUTF8Validation}),this.clients)this.clients.add(W),W.on("close",()=>{if(this.clients.delete(W),this._shouldEmitClose&&!this.clients.size)process.nextTick(kD,this)});X(W,Y)}}DVA.exports=HVA;function $7B(A,Q){for(let B of Object.keys(Q))A.on(B,Q[B]);return function(){for(let Y of Object.keys(Q))A.removeListener(Y,Q[Y])}}function kD(A){A._state=2,A.emit("close")}function IVA(){this.destroy()}function _D(A,Q,B,Y){B=B||jw.STATUS_CODES[Q],Y={Connection:"close","Content-Type":"text/html","Content-Length":Buffer.byteLength(B),...Y},A.once("finish",A.destroy),A.end(`HTTP/1.1 ${Q} ${jw.STATUS_CODES[Q]}\r +`)),J.removeListener("error",YIA),F.setSocket(J,C,{allowSynchronousEvents:this.options.allowSynchronousEvents,maxPayload:this.options.maxPayload,skipUTF8Validation:this.options.skipUTF8Validation}),this.clients)this.clients.add(F),F.on("close",()=>{if(this.clients.delete(F),this._shouldEmitClose&&!this.clients.size)process.nextTick(iD,this)});X(F,Y)}}CIA.exports=JIA;function UWB(A,Q){for(let B of Object.keys(Q))A.on(B,Q[B]);return function(){for(let Y of Object.keys(Q))A.removeListener(Y,Q[Y])}}function iD(A){A._state=2,A.emit("close")}function YIA(){this.destroy()}function nD(A,Q,B,Y){B=B||rw.STATUS_CODES[Q],Y={Connection:"close","Content-Type":"text/html","Content-Length":Buffer.byteLength(B),...Y},A.once("finish",A.destroy),A.end(`HTTP/1.1 ${Q} ${rw.STATUS_CODES[Q]}\r `+Object.keys(Y).map((J)=>`${J}: ${Y[J]}`).join(`\r `)+`\r \r -`+B)}function EZ(A,Q,B,Y,J,C){if(A.listenerCount("wsClientError")){let X=Error(J);Error.captureStackTrace(X,EZ),A.emit("wsClientError",X,B,Q)}else _D(B,Y,J,C)}});var jm=R((RVA)=>{Object.defineProperty(RVA,"__esModule",{value:!0});RVA.buildDefaultCredentialsProvider=N7B;function N7B(){let A=process.env.HYTOPIA_API_KEY,Q=process.env.HYTOPIA_GAME_ID,B=process.env.HYTOPIA_LOBBY_ID;if(!A)throw Error("Missing environment variable HYTOPIA_API_KEY");if(!Q)throw Error("Missing environment variable HYTOPIA_GAME_ID");if(!B)throw Error("Missing environment variable HYTOPIA_LOBBY_ID");return async()=>({apiKey:A,gameId:Q,lobbyId:B})}});var jVA=R((wVA)=>{Object.defineProperty(wVA,"__esModule",{value:!0});wVA.getLoadout=q7B;async function q7B(A){return await fetch(`${this.context.baseUrl}/Locker/GetLoadoutForGameByUserId/${A}`).then((Q)=>Q.json()).then((Q)=>Q).catch(()=>({error:{code:"networkError",message:"A network error happened"}}))}});var TVA=R((PVA)=>{Object.defineProperty(PVA,"__esModule",{value:!0});PVA.default=OVA;function OVA(A){if(!A)return A;for(let[B,Y]of Object.entries(A))if(typeof Y==="string"){var Q=/^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2}(?:\.\d*))(?:Z|(\+|-)([\d|:]*))?$/;if(Q.test(Y))A[B]=new Date(Y)}else if(typeof Y==="object")OVA(Y);return A}});var SVA=R((vD)=>{var R7B=vD&&vD.__importDefault||function(A){return A&&A.__esModule?A:{default:A}};Object.defineProperty(vD,"__esModule",{value:!0});vD.getSession=j7B;var w7B=R7B(TVA());async function j7B(A){let Q=await this.context.credentialsProvider();return await fetch(`${this.context.baseUrl}/Play/Matchmaking/Lobbies/ValidateSession`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({lobbyId:Q.lobbyId,sessionToken:A})}).then((B)=>B.json()).then((B)=>(0,w7B.default)(B)).then((B)=>B).catch(()=>({error:{code:"networkError",message:"A network error happened"}}))}});var _VA=R((kVA)=>{Object.defineProperty(kVA,"__esModule",{value:!0});kVA.get=O7B;async function O7B(A){let Q=await this.context.credentialsProvider();return await fetch(`${this.context.baseUrl}/Play/KV/Get/${Q.gameId}/${A}`,{headers:{"X-Api-Key":Q.apiKey}}).then((B)=>B.json()).then((B)=>B).catch(()=>({error:{code:"networkError",message:"A network error happened"}}))}});var yVA=R((vVA)=>{Object.defineProperty(vVA,"__esModule",{value:!0});vVA.set=T7B;async function T7B(A,Q,B="merge"){let Y=await this.context.credentialsProvider();return await fetch(`${this.context.baseUrl}/Play/KV/Set/${Y.gameId}/${A}?mode=${B}`,{method:"POST",headers:{"Content-Type":"application/json","X-Api-Key":Y.apiKey},body:JSON.stringify(Q)}).then((J)=>J.json()).then((J)=>J).catch(()=>({error:{code:"networkError",message:"A network error happened"}}))}});var gVA=R((hVA)=>{Object.defineProperty(hVA,"__esModule",{value:!0});hVA.unset=k7B;async function k7B(A){let Q=await this.context.credentialsProvider();return await fetch(`${this.context.baseUrl}/Play/KV/Unset/${Q.gameId}/${A}`,{method:"DELETE",headers:{"X-Api-Key":Q.apiKey}}).then((B)=>B.json()).then((B)=>B).catch(()=>({error:{code:"networkError",message:"A network error happened"}}))}});var mVA=R((fVA)=>{Object.defineProperty(fVA,"__esModule",{value:!0});fVA.KVClient=void 0;var v7B=_VA(),y7B=yVA(),h7B=gVA();class xVA{context;constructor(A){this.context=A}get=v7B.get;set=y7B.set;unset=h7B.unset}fVA.KVClient=xVA});var pVA=R((dVA)=>{Object.defineProperty(dVA,"__esModule",{value:!0});dVA.CreativeGateway=dVA.DEFAULT_BASE_URL=void 0;var g7B=jm(),x7B=jVA(),f7B=SVA(),b7B=mVA();dVA.DEFAULT_BASE_URL="https://prod.creative.hytopia.com";class uVA{context;kv;constructor(A){if(A?.baseUrl){if(!A.baseUrl.startsWith("https://")&&!A.baseUrl.startsWith("http://"))throw Error("Base URL, if provided, must start with https:// or http://");if(A.baseUrl.endsWith("/"))throw Error("Base URL, if provided, must not end with '/'")}this.context={baseUrl:A?.baseUrl??process.env.HYTOPIA_CREATIVE_GATEWAY_BASE_URL??dVA.DEFAULT_BASE_URL,credentialsProvider:A?.credentialsProvider??(0,g7B.buildDefaultCredentialsProvider)()},this.kv=new b7B.KVClient(this.context)}getLoadout=x7B.getLoadout;getSession=f7B.getSession}dVA.CreativeGateway=uVA});var iVA=R((Pw)=>{Object.defineProperty(Pw,"__esModule",{value:!0});Pw.buildDefaultCredentialsProvider=Pw.CreativeGateway=void 0;var m7B=pVA();Object.defineProperty(Pw,"CreativeGateway",{enumerable:!0,get:function(){return m7B.CreativeGateway}});var u7B=jm();Object.defineProperty(Pw,"buildDefaultCredentialsProvider",{enumerable:!0,get:function(){return u7B.buildDefaultCredentialsProvider}})});var BIA=R((AIA)=>{Object.defineProperty(AIA,"__esModule",{value:!0});AIA.default=void 0;var iDY=AIA.default="ffffffff-ffff-ffff-ffff-ffffffffffff"});var CIA=R((YIA)=>{Object.defineProperty(YIA,"__esModule",{value:!0});YIA.default=void 0;var sDY=YIA.default="00000000-0000-0000-0000-000000000000"});var FIA=R((XIA)=>{Object.defineProperty(XIA,"__esModule",{value:!0});XIA.default=void 0;var aDY=XIA.default=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/i});var lD=R((WIA)=>{Object.defineProperty(WIA,"__esModule",{value:!0});WIA.default=void 0;var r7B=a7B(FIA());function a7B(A){return A&&A.__esModule?A:{default:A}}function o7B(A){return typeof A==="string"&&r7B.default.test(A)}var tDY=WIA.default=o7B});var pD=R(($IA)=>{Object.defineProperty($IA,"__esModule",{value:!0});$IA.default=void 0;var t7B=e7B(lD());function e7B(A){return A&&A.__esModule?A:{default:A}}function AFB(A){if(!(0,t7B.default)(A))throw TypeError("Invalid UUID");let Q,B=new Uint8Array(16);return B[0]=(Q=parseInt(A.slice(0,8),16))>>>24,B[1]=Q>>>16&255,B[2]=Q>>>8&255,B[3]=Q&255,B[4]=(Q=parseInt(A.slice(9,13),16))>>>8,B[5]=Q&255,B[6]=(Q=parseInt(A.slice(14,18),16))>>>8,B[7]=Q&255,B[8]=(Q=parseInt(A.slice(19,23),16))>>>8,B[9]=Q&255,B[10]=(Q=parseInt(A.slice(24,36),16))/1099511627776&255,B[11]=Q/4294967296&255,B[12]=Q>>>24&255,B[13]=Q>>>16&255,B[14]=Q>>>8&255,B[15]=Q&255,B}var ANY=$IA.default=AFB});var mX=R((KIA)=>{Object.defineProperty(KIA,"__esModule",{value:!0});KIA.default=void 0;KIA.unsafeStringify=EIA;var QFB=BFB(lD());function BFB(A){return A&&A.__esModule?A:{default:A}}var XJ=[];for(let A=0;A<256;++A)XJ.push((A+256).toString(16).slice(1));function EIA(A,Q=0){return(XJ[A[Q+0]]+XJ[A[Q+1]]+XJ[A[Q+2]]+XJ[A[Q+3]]+"-"+XJ[A[Q+4]]+XJ[A[Q+5]]+"-"+XJ[A[Q+6]]+XJ[A[Q+7]]+"-"+XJ[A[Q+8]]+XJ[A[Q+9]]+"-"+XJ[A[Q+10]]+XJ[A[Q+11]]+XJ[A[Q+12]]+XJ[A[Q+13]]+XJ[A[Q+14]]+XJ[A[Q+15]]).toLowerCase()}function YFB(A,Q=0){let B=EIA(A,Q);if(!(0,QFB.default)(B))throw TypeError("Stringified UUID is invalid");return B}var BNY=KIA.default=YFB});var yw=R((IIA)=>{Object.defineProperty(IIA,"__esModule",{value:!0});IIA.default=GFB;var CFB=XFB(u("node:crypto"));function XFB(A){return A&&A.__esModule?A:{default:A}}var vw=new Uint8Array(256),_w=vw.length;function GFB(){if(_w>vw.length-16)CFB.default.randomFillSync(vw),_w=0;return vw.slice(_w,_w+=16)}});var fm=R((HIA)=>{Object.defineProperty(HIA,"__esModule",{value:!0});HIA.default=void 0;var WFB=$FB(yw()),ZFB=mX();function $FB(A){return A&&A.__esModule?A:{default:A}}var hm,hw,gm=0,xm=0;function UFB(A,Q,B){let Y=Q&&B||0,J=Q||Array(16);A=A||{};let{node:C,clockseq:X}=A;if(!A._v6){if(!C)C=hm;if(X==null)X=hw}if(C==null||X==null){let $=A.random||(A.rng||WFB.default)();if(C==null){if(C=[$[0],$[1],$[2],$[3],$[4],$[5]],!hm&&!A._v6)C[0]|=1,hm=C}if(X==null){if(X=($[6]<<8|$[7])&16383,hw===void 0&&!A._v6)hw=X}}let G=A.msecs!==void 0?A.msecs:Date.now(),F=A.nsecs!==void 0?A.nsecs:xm+1,W=G-gm+(F-xm)/1e4;if(W<0&&A.clockseq===void 0)X=X+1&16383;if((W<0||G>gm)&&A.nsecs===void 0)F=0;if(F>=1e4)throw Error("uuid.v1(): Can't create more than 10M uuids/sec");gm=G,xm=F,hw=X,G+=12219292800000;let Z=((G&268435455)*1e4+F)%4294967296;J[Y++]=Z>>>24&255,J[Y++]=Z>>>16&255,J[Y++]=Z>>>8&255,J[Y++]=Z&255;let U=G/4294967296*1e4&268435455;J[Y++]=U>>>8&255,J[Y++]=U&255,J[Y++]=U>>>24&15|16,J[Y++]=U>>>16&255,J[Y++]=X>>>8|128,J[Y++]=X&255;for(let $=0;$<6;++$)J[Y+$]=C[$];return Q||(0,ZFB.unsafeStringify)(J)}var CNY=HIA.default=UFB});var bm=R((NIA)=>{Object.defineProperty(NIA,"__esModule",{value:!0});NIA.default=IFB;var EFB=VFB(pD()),KFB=mX();function VFB(A){return A&&A.__esModule?A:{default:A}}function IFB(A){let Q=typeof A==="string"?(0,EFB.default)(A):A,B=HFB(Q);return typeof A==="string"?(0,KFB.unsafeStringify)(B):B}function HFB(A,Q=!1){return Uint8Array.of((A[6]&15)<<4|A[7]>>4&15,(A[7]&15)<<4|(A[4]&240)>>4,(A[4]&15)<<4|(A[5]&240)>>4,(A[5]&15)<<4|(A[0]&240)>>4,(A[0]&15)<<4|(A[1]&240)>>4,(A[1]&15)<<4|(A[2]&240)>>4,96|A[2]&15,A[3],A[8],A[9],A[10],A[11],A[12],A[13],A[14],A[15])}});var mm=R((LIA)=>{Object.defineProperty(LIA,"__esModule",{value:!0});LIA.URL=LIA.DNS=void 0;LIA.default=wFB;var NFB=mX(),LFB=qFB(pD());function qFB(A){return A&&A.__esModule?A:{default:A}}function MFB(A){A=unescape(encodeURIComponent(A));let Q=[];for(let B=0;B{Object.defineProperty(MIA,"__esModule",{value:!0});MIA.default=void 0;var PFB=TFB(u("node:crypto"));function TFB(A){return A&&A.__esModule?A:{default:A}}function SFB(A){if(Array.isArray(A))A=Buffer.from(A);else if(typeof A==="string")A=Buffer.from(A,"utf8");return PFB.default.createHash("md5").update(A).digest()}var WNY=MIA.default=SFB});var PIA=R((jIA)=>{Object.defineProperty(jIA,"__esModule",{value:!0});jIA.default=void 0;var kFB=wIA(mm()),_FB=wIA(RIA());function wIA(A){return A&&A.__esModule?A:{default:A}}var vFB=(0,kFB.default)("v3",48,_FB.default),$NY=jIA.default=vFB});var kIA=R((TIA)=>{Object.defineProperty(TIA,"__esModule",{value:!0});TIA.default=void 0;var yFB=hFB(u("node:crypto"));function hFB(A){return A&&A.__esModule?A:{default:A}}var ENY=TIA.default={randomUUID:yFB.default.randomUUID}});var gIA=R((yIA)=>{Object.defineProperty(yIA,"__esModule",{value:!0});yIA.default=void 0;var _IA=vIA(kIA()),gFB=vIA(yw()),xFB=mX();function vIA(A){return A&&A.__esModule?A:{default:A}}function fFB(A,Q,B){if(_IA.default.randomUUID&&!Q&&!A)return _IA.default.randomUUID();A=A||{};let Y=A.random||(A.rng||gFB.default)();if(Y[6]=Y[6]&15|64,Y[8]=Y[8]&63|128,Q){B=B||0;for(let J=0;J<16;++J)Q[B+J]=Y[J];return Q}return(0,xFB.unsafeStringify)(Y)}var VNY=yIA.default=fFB});var bIA=R((xIA)=>{Object.defineProperty(xIA,"__esModule",{value:!0});xIA.default=void 0;var bFB=mFB(u("node:crypto"));function mFB(A){return A&&A.__esModule?A:{default:A}}function uFB(A){if(Array.isArray(A))A=Buffer.from(A);else if(typeof A==="string")A=Buffer.from(A,"utf8");return bFB.default.createHash("sha1").update(A).digest()}var HNY=xIA.default=uFB});var cIA=R((uIA)=>{Object.defineProperty(uIA,"__esModule",{value:!0});uIA.default=void 0;var dFB=mIA(mm()),cFB=mIA(bIA());function mIA(A){return A&&A.__esModule?A:{default:A}}var lFB=(0,dFB.default)("v5",80,cFB.default),NNY=uIA.default=lFB});var iIA=R((pIA)=>{Object.defineProperty(pIA,"__esModule",{value:!0});pIA.default=sFB;var pFB=mX(),iFB=lIA(fm()),nFB=lIA(bm());function lIA(A){return A&&A.__esModule?A:{default:A}}function sFB(A={},Q,B=0){let Y=(0,iFB.default)({...A,_v6:!0},new Uint8Array(16));if(Y=(0,nFB.default)(Y),Q){for(let J=0;J<16;J++)Q[B+J]=Y[J];return Q}return(0,pFB.unsafeStringify)(Y)}});var sIA=R((nIA)=>{Object.defineProperty(nIA,"__esModule",{value:!0});nIA.default=eFB;var aFB=tFB(pD()),oFB=mX();function tFB(A){return A&&A.__esModule?A:{default:A}}function eFB(A){let Q=typeof A==="string"?(0,aFB.default)(A):A,B=AWB(Q);return typeof A==="string"?(0,oFB.unsafeStringify)(B):B}function AWB(A){return Uint8Array.of((A[3]&15)<<4|A[4]>>4&15,(A[4]&15)<<4|(A[5]&240)>>4,(A[5]&15)<<4|A[6]&15,A[7],(A[1]&15)<<4|(A[2]&240)>>4,(A[2]&15)<<4|(A[3]&240)>>4,16|(A[0]&240)>>4,(A[0]&15)<<4|(A[1]&240)>>4,A[8],A[9],A[10],A[11],A[12],A[13],A[14],A[15])}});var eIA=R((oIA)=>{Object.defineProperty(oIA,"__esModule",{value:!0});oIA.default=void 0;var BWB=JWB(yw()),YWB=mX();function JWB(A){return A&&A.__esModule?A:{default:A}}var rIA=null,aIA=null,bC=0;function CWB(A,Q,B){A=A||{};let Y=Q&&B||0,J=Q||new Uint8Array(16),C=A.random||(A.rng||BWB.default)(),X=A.msecs!==void 0?A.msecs:Date.now(),G=A.seq!==void 0?A.seq:null,F=aIA,W=rIA;if(X>bC&&A.msecs===void 0){if(bC=X,G!==null)F=null,W=null}if(G!==null){if(G>2147483647)G=2147483647;F=G>>>19&4095,W=G&524287}if(F===null||W===null)F=C[6]&127,F=F<<8|C[7],W=C[8]&63,W=W<<8|C[9],W=W<<5|C[10]>>>3;if(X+1e4>bC&&G===null){if(++W>524287){if(W=0,++F>4095)F=0,bC++}}else bC=X;return aIA=F,rIA=W,J[Y++]=bC/1099511627776&255,J[Y++]=bC/4294967296&255,J[Y++]=bC/16777216&255,J[Y++]=bC/65536&255,J[Y++]=bC/256&255,J[Y++]=bC&255,J[Y++]=F>>>4&15|112,J[Y++]=F&255,J[Y++]=W>>>13&63|128,J[Y++]=W>>>5&255,J[Y++]=W<<3&255|C[10]&7,J[Y++]=C[11],J[Y++]=C[12],J[Y++]=C[13],J[Y++]=C[14],J[Y++]=C[15],Q||(0,YWB.unsafeStringify)(J)}var zNY=oIA.default=CWB});var BHA=R((AHA)=>{Object.defineProperty(AHA,"__esModule",{value:!0});AHA.default=void 0;var XWB=GWB(lD());function GWB(A){return A&&A.__esModule?A:{default:A}}function FWB(A){if(!(0,XWB.default)(A))throw TypeError("Invalid UUID");return parseInt(A.slice(14,15),16)}var wNY=AHA.default=FWB});var YHA=R((zJ)=>{Object.defineProperty(zJ,"__esModule",{value:!0});Object.defineProperty(zJ,"MAX",{enumerable:!0,get:function(){return WWB.default}});Object.defineProperty(zJ,"NIL",{enumerable:!0,get:function(){return ZWB.default}});Object.defineProperty(zJ,"parse",{enumerable:!0,get:function(){return $WB.default}});Object.defineProperty(zJ,"stringify",{enumerable:!0,get:function(){return UWB.default}});Object.defineProperty(zJ,"v1",{enumerable:!0,get:function(){return EWB.default}});Object.defineProperty(zJ,"v1ToV6",{enumerable:!0,get:function(){return KWB.default}});Object.defineProperty(zJ,"v3",{enumerable:!0,get:function(){return VWB.default}});Object.defineProperty(zJ,"v4",{enumerable:!0,get:function(){return IWB.default}});Object.defineProperty(zJ,"v5",{enumerable:!0,get:function(){return HWB.default}});Object.defineProperty(zJ,"v6",{enumerable:!0,get:function(){return DWB.default}});Object.defineProperty(zJ,"v6ToV1",{enumerable:!0,get:function(){return NWB.default}});Object.defineProperty(zJ,"v7",{enumerable:!0,get:function(){return LWB.default}});Object.defineProperty(zJ,"validate",{enumerable:!0,get:function(){return qWB.default}});Object.defineProperty(zJ,"version",{enumerable:!0,get:function(){return MWB.default}});var WWB=g9(BIA()),ZWB=g9(CIA()),$WB=g9(pD()),UWB=g9(mX()),EWB=g9(fm()),KWB=g9(bm()),VWB=g9(PIA()),IWB=g9(gIA()),HWB=g9(cIA()),DWB=g9(iIA()),NWB=g9(sIA()),LWB=g9(eIA()),qWB=g9(lD()),MWB=g9(BHA());function g9(A){return A&&A.__esModule?A:{default:A}}});var aHA=R((CLY,rHA)=>{var rWB=u("fs"),mC=u("path"),aWB=u("url"),bHA=u("os"),mHA=typeof __webpack_require__==="function"?__non_webpack_require__:u,oWB=process.config&&process.config.variables||{},tWB=!!process.env.PREBUILDS_ONLY,Gu=process.versions,Ju=Gu.modules;if(Gu.deno||process.isBun)Ju="unsupported";var Yu=QZB()?"electron":AZB()?"node-webkit":"node",iw=process.env.npm_config_arch||bHA.arch(),nw=process.env.npm_config_platform||bHA.platform(),uHA=process.env.LIBC||(BZB(nw)?"musl":"glibc"),Cu=process.env.ARM_VERSION||(iw==="arm64"?"8":oWB.arm_version)||"",dHA=(Gu.uv||"").split(".")[0];rHA.exports=a1;function a1(A){return mHA(a1.resolve(A))}a1.resolve=a1.path=function(A){A=mC.resolve(A||".");var Q="",B;try{Q=mHA(mC.join(A,"package.json")).name;var Y=Q.toUpperCase().replace(/-/g,"_");if(process.env[Y+"_PREBUILD"])A=process.env[Y+"_PREBUILD"]}catch(I){B=I}if(!tWB){var J=xHA(mC.join(A,"build/Release"),fHA);if(J)return J;var C=xHA(mC.join(A,"build/Debug"),fHA);if(C)return C}var X=E(A);if(X)return X;var G=E(mC.dirname(process.execPath));if(G)return G;var F=(Q[0]=="@"?"":"@"+Q+"/")+Q+"-"+nw+"-"+iw,W;try{var Z=mC.dirname(u("module").createRequire(aWB.pathToFileURL(mC.join(A,"package.json"))).resolve(F));return K(Z)}catch(I){W=I}var U=["platform="+nw,"arch="+iw,"runtime="+Yu,"abi="+Ju,"uv="+dHA,Cu?"armv="+Cu:"","libc="+uHA,"node="+process.versions.node,process.versions.electron?"electron="+process.versions.electron:"",typeof __webpack_require__==="function"?"webpack=true":""].filter(Boolean).join(" ");let $="No native build was found for "+U+` - attempted loading from: `+A+" and package: "+F+` +`+B)}function MZ(A,Q,B,Y,J,C){if(A.listenerCount("wsClientError")){let X=Error(J);Error.captureStackTrace(X,MZ),A.emit("wsClientError",X,B,Q)}else nD(B,Y,J,C)}});var om=R(($IA)=>{Object.defineProperty($IA,"__esModule",{value:!0});$IA.buildDefaultCredentialsProvider=LWB;function LWB(){let A=process.env.HYTOPIA_API_KEY,Q=process.env.HYTOPIA_GAME_ID,B=process.env.HYTOPIA_LOBBY_ID;if(!A)throw Error("Missing environment variable HYTOPIA_API_KEY");if(!Q)throw Error("Missing environment variable HYTOPIA_GAME_ID");if(!B)throw Error("Missing environment variable HYTOPIA_LOBBY_ID");return async()=>({apiKey:A,gameId:Q,lobbyId:B})}});var EIA=R((UIA)=>{Object.defineProperty(UIA,"__esModule",{value:!0});UIA.getLoadout=MWB;async function MWB(A){return await fetch(`${this.context.baseUrl}/Locker/GetLoadoutForGameByUserId/${A}`).then((Q)=>Q.json()).then((Q)=>Q).catch(()=>({error:{code:"networkError",message:"A network error happened"}}))}});var IIA=R((VIA)=>{Object.defineProperty(VIA,"__esModule",{value:!0});VIA.default=KIA;function KIA(A){if(!A)return A;for(let[B,Y]of Object.entries(A))if(typeof Y==="string"){var Q=/^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2}(?:\.\d*))(?:Z|(\+|-)([\d|:]*))?$/;if(Q.test(Y))A[B]=new Date(Y)}else if(typeof Y==="object")KIA(Y);return A}});var HIA=R((sD)=>{var wWB=sD&&sD.__importDefault||function(A){return A&&A.__esModule?A:{default:A}};Object.defineProperty(sD,"__esModule",{value:!0});sD.getSession=OWB;var jWB=wWB(IIA());async function OWB(A){let Q=await this.context.credentialsProvider();return await fetch(`${this.context.baseUrl}/Play/Matchmaking/Lobbies/ValidateSession`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({lobbyId:Q.lobbyId,sessionToken:A})}).then((B)=>B.json()).then((B)=>(0,jWB.default)(B)).then((B)=>B).catch(()=>({error:{code:"networkError",message:"A network error happened"}}))}});var NIA=R((DIA)=>{Object.defineProperty(DIA,"__esModule",{value:!0});DIA.get=PWB;async function PWB(A){let Q=await this.context.credentialsProvider();return await fetch(`${this.context.baseUrl}/Play/KV/Get/${Q.gameId}/${A}`,{headers:{"X-Api-Key":Q.apiKey}}).then((B)=>B.json()).then((B)=>B).catch(()=>({error:{code:"networkError",message:"A network error happened"}}))}});var qIA=R((LIA)=>{Object.defineProperty(LIA,"__esModule",{value:!0});LIA.set=SWB;async function SWB(A,Q,B="merge"){let Y=await this.context.credentialsProvider();return await fetch(`${this.context.baseUrl}/Play/KV/Set/${Y.gameId}/${A}?mode=${B}`,{method:"POST",headers:{"Content-Type":"application/json","X-Api-Key":Y.apiKey},body:JSON.stringify(Q)}).then((J)=>J.json()).then((J)=>J).catch(()=>({error:{code:"networkError",message:"A network error happened"}}))}});var zIA=R((MIA)=>{Object.defineProperty(MIA,"__esModule",{value:!0});MIA.unset=_WB;async function _WB(A){let Q=await this.context.credentialsProvider();return await fetch(`${this.context.baseUrl}/Play/KV/Unset/${Q.gameId}/${A}`,{method:"DELETE",headers:{"X-Api-Key":Q.apiKey}}).then((B)=>B.json()).then((B)=>B).catch(()=>({error:{code:"networkError",message:"A network error happened"}}))}});var OIA=R((wIA)=>{Object.defineProperty(wIA,"__esModule",{value:!0});wIA.KVClient=void 0;var yWB=NIA(),gWB=qIA(),hWB=zIA();class RIA{context;constructor(A){this.context=A}get=yWB.get;set=gWB.set;unset=hWB.unset}wIA.KVClient=RIA});var _IA=R((TIA)=>{Object.defineProperty(TIA,"__esModule",{value:!0});TIA.CreativeGateway=TIA.DEFAULT_BASE_URL=void 0;var xWB=om(),fWB=EIA(),bWB=HIA(),mWB=OIA();TIA.DEFAULT_BASE_URL="https://prod.creative.hytopia.com";class PIA{context;kv;constructor(A){if(A?.baseUrl){if(!A.baseUrl.startsWith("https://")&&!A.baseUrl.startsWith("http://"))throw Error("Base URL, if provided, must start with https:// or http://");if(A.baseUrl.endsWith("/"))throw Error("Base URL, if provided, must not end with '/'")}this.context={baseUrl:A?.baseUrl??process.env.HYTOPIA_CREATIVE_GATEWAY_BASE_URL??TIA.DEFAULT_BASE_URL,credentialsProvider:A?.credentialsProvider??(0,xWB.buildDefaultCredentialsProvider)()},this.kv=new mWB.KVClient(this.context)}getLoadout=fWB.getLoadout;getSession=bWB.getSession}TIA.CreativeGateway=PIA});var vIA=R((ow)=>{Object.defineProperty(ow,"__esModule",{value:!0});ow.buildDefaultCredentialsProvider=ow.CreativeGateway=void 0;var uWB=_IA();Object.defineProperty(ow,"CreativeGateway",{enumerable:!0,get:function(){return uWB.CreativeGateway}});var dWB=om();Object.defineProperty(ow,"buildDefaultCredentialsProvider",{enumerable:!0,get:function(){return dWB.buildDefaultCredentialsProvider}})});var cIA=R((uIA)=>{Object.defineProperty(uIA,"__esModule",{value:!0});uIA.default=void 0;var bLY=uIA.default="ffffffff-ffff-ffff-ffff-ffffffffffff"});var iIA=R((lIA)=>{Object.defineProperty(lIA,"__esModule",{value:!0});lIA.default=void 0;var uLY=lIA.default="00000000-0000-0000-0000-000000000000"});var rIA=R((nIA)=>{Object.defineProperty(nIA,"__esModule",{value:!0});nIA.default=void 0;var cLY=nIA.default=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/i});var CN=R((aIA)=>{Object.defineProperty(aIA,"__esModule",{value:!0});aIA.default=void 0;var aWB=oWB(rIA());function oWB(A){return A&&A.__esModule?A:{default:A}}function tWB(A){return typeof A==="string"&&aWB.default.test(A)}var pLY=aIA.default=tWB});var XN=R((tIA)=>{Object.defineProperty(tIA,"__esModule",{value:!0});tIA.default=void 0;var eWB=AFB(CN());function AFB(A){return A&&A.__esModule?A:{default:A}}function QFB(A){if(!(0,eWB.default)(A))throw TypeError("Invalid UUID");let Q,B=new Uint8Array(16);return B[0]=(Q=parseInt(A.slice(0,8),16))>>>24,B[1]=Q>>>16&255,B[2]=Q>>>8&255,B[3]=Q&255,B[4]=(Q=parseInt(A.slice(9,13),16))>>>8,B[5]=Q&255,B[6]=(Q=parseInt(A.slice(14,18),16))>>>8,B[7]=Q&255,B[8]=(Q=parseInt(A.slice(19,23),16))>>>8,B[9]=Q&255,B[10]=(Q=parseInt(A.slice(24,36),16))/1099511627776&255,B[11]=Q/4294967296&255,B[12]=Q>>>24&255,B[13]=Q>>>16&255,B[14]=Q>>>8&255,B[15]=Q&255,B}var nLY=tIA.default=QFB});var s6=R((QHA)=>{Object.defineProperty(QHA,"__esModule",{value:!0});QHA.default=void 0;QHA.unsafeStringify=AHA;var BFB=YFB(CN());function YFB(A){return A&&A.__esModule?A:{default:A}}var $J=[];for(let A=0;A<256;++A)$J.push((A+256).toString(16).slice(1));function AHA(A,Q=0){return($J[A[Q+0]]+$J[A[Q+1]]+$J[A[Q+2]]+$J[A[Q+3]]+"-"+$J[A[Q+4]]+$J[A[Q+5]]+"-"+$J[A[Q+6]]+$J[A[Q+7]]+"-"+$J[A[Q+8]]+$J[A[Q+9]]+"-"+$J[A[Q+10]]+$J[A[Q+11]]+$J[A[Q+12]]+$J[A[Q+13]]+$J[A[Q+14]]+$J[A[Q+15]]).toLowerCase()}function JFB(A,Q=0){let B=AHA(A,Q);if(!(0,BFB.default)(B))throw TypeError("Stringified UUID is invalid");return B}var rLY=QHA.default=JFB});var Bj=R((YHA)=>{Object.defineProperty(YHA,"__esModule",{value:!0});YHA.default=WFB;var XFB=GFB(u("node:crypto"));function GFB(A){return A&&A.__esModule?A:{default:A}}var Qj=new Uint8Array(256),Aj=Qj.length;function WFB(){if(Aj>Qj.length-16)XFB.default.randomFillSync(Qj),Aj=0;return Qj.slice(Aj,Aj+=16)}});var Gu=R((JHA)=>{Object.defineProperty(JHA,"__esModule",{value:!0});JHA.default=void 0;var ZFB=UFB(Bj()),$FB=s6();function UFB(A){return A&&A.__esModule?A:{default:A}}var Ju,Yj,Cu=0,Xu=0;function EFB(A,Q,B){let Y=Q&&B||0,J=Q||Array(16);A=A||{};let{node:C,clockseq:X}=A;if(!A._v6){if(!C)C=Ju;if(X==null)X=Yj}if(C==null||X==null){let $=A.random||(A.rng||ZFB.default)();if(C==null){if(C=[$[0],$[1],$[2],$[3],$[4],$[5]],!Ju&&!A._v6)C[0]|=1,Ju=C}if(X==null){if(X=($[6]<<8|$[7])&16383,Yj===void 0&&!A._v6)Yj=X}}let G=A.msecs!==void 0?A.msecs:Date.now(),W=A.nsecs!==void 0?A.nsecs:Xu+1,F=G-Cu+(W-Xu)/1e4;if(F<0&&A.clockseq===void 0)X=X+1&16383;if((F<0||G>Cu)&&A.nsecs===void 0)W=0;if(W>=1e4)throw Error("uuid.v1(): Can't create more than 10M uuids/sec");Cu=G,Xu=W,Yj=X,G+=12219292800000;let Z=((G&268435455)*1e4+W)%4294967296;J[Y++]=Z>>>24&255,J[Y++]=Z>>>16&255,J[Y++]=Z>>>8&255,J[Y++]=Z&255;let U=G/4294967296*1e4&268435455;J[Y++]=U>>>8&255,J[Y++]=U&255,J[Y++]=U>>>24&15|16,J[Y++]=U>>>16&255,J[Y++]=X>>>8|128,J[Y++]=X&255;for(let $=0;$<6;++$)J[Y+$]=C[$];return Q||(0,$FB.unsafeStringify)(J)}var tLY=JHA.default=EFB});var Wu=R((XHA)=>{Object.defineProperty(XHA,"__esModule",{value:!0});XHA.default=HFB;var KFB=IFB(XN()),VFB=s6();function IFB(A){return A&&A.__esModule?A:{default:A}}function HFB(A){let Q=typeof A==="string"?(0,KFB.default)(A):A,B=DFB(Q);return typeof A==="string"?(0,VFB.unsafeStringify)(B):B}function DFB(A,Q=!1){return Uint8Array.of((A[6]&15)<<4|A[7]>>4&15,(A[7]&15)<<4|(A[4]&240)>>4,(A[4]&15)<<4|(A[5]&240)>>4,(A[5]&15)<<4|(A[0]&240)>>4,(A[0]&15)<<4|(A[1]&240)>>4,(A[1]&15)<<4|(A[2]&240)>>4,96|A[2]&15,A[3],A[8],A[9],A[10],A[11],A[12],A[13],A[14],A[15])}});var Fu=R((GHA)=>{Object.defineProperty(GHA,"__esModule",{value:!0});GHA.URL=GHA.DNS=void 0;GHA.default=jFB;var LFB=s6(),qFB=MFB(XN());function MFB(A){return A&&A.__esModule?A:{default:A}}function zFB(A){A=unescape(encodeURIComponent(A));let Q=[];for(let B=0;B{Object.defineProperty(FHA,"__esModule",{value:!0});FHA.default=void 0;var TFB=SFB(u("node:crypto"));function SFB(A){return A&&A.__esModule?A:{default:A}}function kFB(A){if(Array.isArray(A))A=Buffer.from(A);else if(typeof A==="string")A=Buffer.from(A,"utf8");return TFB.default.createHash("md5").update(A).digest()}var BqY=FHA.default=kFB});var VHA=R((EHA)=>{Object.defineProperty(EHA,"__esModule",{value:!0});EHA.default=void 0;var _FB=UHA(Fu()),vFB=UHA($HA());function UHA(A){return A&&A.__esModule?A:{default:A}}var yFB=(0,_FB.default)("v3",48,vFB.default),JqY=EHA.default=yFB});var DHA=R((IHA)=>{Object.defineProperty(IHA,"__esModule",{value:!0});IHA.default=void 0;var gFB=hFB(u("node:crypto"));function hFB(A){return A&&A.__esModule?A:{default:A}}var XqY=IHA.default={randomUUID:gFB.default.randomUUID}});var zHA=R((qHA)=>{Object.defineProperty(qHA,"__esModule",{value:!0});qHA.default=void 0;var NHA=LHA(DHA()),xFB=LHA(Bj()),fFB=s6();function LHA(A){return A&&A.__esModule?A:{default:A}}function bFB(A,Q,B){if(NHA.default.randomUUID&&!Q&&!A)return NHA.default.randomUUID();A=A||{};let Y=A.random||(A.rng||xFB.default)();if(Y[6]=Y[6]&15|64,Y[8]=Y[8]&63|128,Q){B=B||0;for(let J=0;J<16;++J)Q[B+J]=Y[J];return Q}return(0,fFB.unsafeStringify)(Y)}var WqY=qHA.default=bFB});var jHA=R((RHA)=>{Object.defineProperty(RHA,"__esModule",{value:!0});RHA.default=void 0;var mFB=uFB(u("node:crypto"));function uFB(A){return A&&A.__esModule?A:{default:A}}function dFB(A){if(Array.isArray(A))A=Buffer.from(A);else if(typeof A==="string")A=Buffer.from(A,"utf8");return mFB.default.createHash("sha1").update(A).digest()}var ZqY=RHA.default=dFB});var SHA=R((PHA)=>{Object.defineProperty(PHA,"__esModule",{value:!0});PHA.default=void 0;var cFB=OHA(Fu()),lFB=OHA(jHA());function OHA(A){return A&&A.__esModule?A:{default:A}}var pFB=(0,cFB.default)("v5",80,lFB.default),UqY=PHA.default=pFB});var vHA=R((_HA)=>{Object.defineProperty(_HA,"__esModule",{value:!0});_HA.default=rFB;var iFB=s6(),nFB=kHA(Gu()),sFB=kHA(Wu());function kHA(A){return A&&A.__esModule?A:{default:A}}function rFB(A={},Q,B=0){let Y=(0,nFB.default)({...A,_v6:!0},new Uint8Array(16));if(Y=(0,sFB.default)(Y),Q){for(let J=0;J<16;J++)Q[B+J]=Y[J];return Q}return(0,iFB.unsafeStringify)(Y)}});var gHA=R((yHA)=>{Object.defineProperty(yHA,"__esModule",{value:!0});yHA.default=AZB;var oFB=eFB(XN()),tFB=s6();function eFB(A){return A&&A.__esModule?A:{default:A}}function AZB(A){let Q=typeof A==="string"?(0,oFB.default)(A):A,B=QZB(Q);return typeof A==="string"?(0,tFB.unsafeStringify)(B):B}function QZB(A){return Uint8Array.of((A[3]&15)<<4|A[4]>>4&15,(A[4]&15)<<4|(A[5]&240)>>4,(A[5]&15)<<4|A[6]&15,A[7],(A[1]&15)<<4|(A[2]&240)>>4,(A[2]&15)<<4|(A[3]&240)>>4,16|(A[0]&240)>>4,(A[0]&15)<<4|(A[1]&240)>>4,A[8],A[9],A[10],A[11],A[12],A[13],A[14],A[15])}});var mHA=R((fHA)=>{Object.defineProperty(fHA,"__esModule",{value:!0});fHA.default=void 0;var YZB=CZB(Bj()),JZB=s6();function CZB(A){return A&&A.__esModule?A:{default:A}}var hHA=null,xHA=null,sC=0;function XZB(A,Q,B){A=A||{};let Y=Q&&B||0,J=Q||new Uint8Array(16),C=A.random||(A.rng||YZB.default)(),X=A.msecs!==void 0?A.msecs:Date.now(),G=A.seq!==void 0?A.seq:null,W=xHA,F=hHA;if(X>sC&&A.msecs===void 0){if(sC=X,G!==null)W=null,F=null}if(G!==null){if(G>2147483647)G=2147483647;W=G>>>19&4095,F=G&524287}if(W===null||F===null)W=C[6]&127,W=W<<8|C[7],F=C[8]&63,F=F<<8|C[9],F=F<<5|C[10]>>>3;if(X+1e4>sC&&G===null){if(++F>524287){if(F=0,++W>4095)W=0,sC++}}else sC=X;return xHA=W,hHA=F,J[Y++]=sC/1099511627776&255,J[Y++]=sC/4294967296&255,J[Y++]=sC/16777216&255,J[Y++]=sC/65536&255,J[Y++]=sC/256&255,J[Y++]=sC&255,J[Y++]=W>>>4&15|112,J[Y++]=W&255,J[Y++]=F>>>13&63|128,J[Y++]=F>>>5&255,J[Y++]=F<<3&255|C[10]&7,J[Y++]=C[11],J[Y++]=C[12],J[Y++]=C[13],J[Y++]=C[14],J[Y++]=C[15],Q||(0,JZB.unsafeStringify)(J)}var IqY=fHA.default=XZB});var cHA=R((uHA)=>{Object.defineProperty(uHA,"__esModule",{value:!0});uHA.default=void 0;var GZB=WZB(CN());function WZB(A){return A&&A.__esModule?A:{default:A}}function FZB(A){if(!(0,GZB.default)(A))throw TypeError("Invalid UUID");return parseInt(A.slice(14,15),16)}var DqY=uHA.default=FZB});var lHA=R((PJ)=>{Object.defineProperty(PJ,"__esModule",{value:!0});Object.defineProperty(PJ,"MAX",{enumerable:!0,get:function(){return ZZB.default}});Object.defineProperty(PJ,"NIL",{enumerable:!0,get:function(){return $ZB.default}});Object.defineProperty(PJ,"parse",{enumerable:!0,get:function(){return UZB.default}});Object.defineProperty(PJ,"stringify",{enumerable:!0,get:function(){return EZB.default}});Object.defineProperty(PJ,"v1",{enumerable:!0,get:function(){return KZB.default}});Object.defineProperty(PJ,"v1ToV6",{enumerable:!0,get:function(){return VZB.default}});Object.defineProperty(PJ,"v3",{enumerable:!0,get:function(){return IZB.default}});Object.defineProperty(PJ,"v4",{enumerable:!0,get:function(){return HZB.default}});Object.defineProperty(PJ,"v5",{enumerable:!0,get:function(){return DZB.default}});Object.defineProperty(PJ,"v6",{enumerable:!0,get:function(){return NZB.default}});Object.defineProperty(PJ,"v6ToV1",{enumerable:!0,get:function(){return LZB.default}});Object.defineProperty(PJ,"v7",{enumerable:!0,get:function(){return qZB.default}});Object.defineProperty(PJ,"validate",{enumerable:!0,get:function(){return MZB.default}});Object.defineProperty(PJ,"version",{enumerable:!0,get:function(){return zZB.default}});var ZZB=l9(cIA()),$ZB=l9(iIA()),UZB=l9(XN()),EZB=l9(s6()),KZB=l9(Gu()),VZB=l9(Wu()),IZB=l9(VHA()),HZB=l9(zHA()),DZB=l9(SHA()),NZB=l9(vHA()),LZB=l9(gHA()),qZB=l9(mHA()),MZB=l9(CN()),zZB=l9(cHA());function l9(A){return A&&A.__esModule?A:{default:A}}});var xDA=R((tqY,hDA)=>{var aZB=u("fs"),rC=u("path"),oZB=u("url"),jDA=u("os"),ODA=typeof __webpack_require__==="function"?__non_webpack_require__:u,tZB=process.config&&process.config.variables||{},eZB=!!process.env.PREBUILDS_ONLY,Su=process.versions,Ou=Su.modules;if(Su.deno||process.isBun)Ou="unsupported";var ju=B$B()?"electron":Q$B()?"node-webkit":"node",Kj=process.env.npm_config_arch||jDA.arch(),Vj=process.env.npm_config_platform||jDA.platform(),PDA=process.env.LIBC||(Y$B(Vj)?"musl":"glibc"),Pu=process.env.ARM_VERSION||(Kj==="arm64"?"8":tZB.arm_version)||"",TDA=(Su.uv||"").split(".")[0];hDA.exports=CX;function CX(A){return ODA(CX.resolve(A))}CX.resolve=CX.path=function(A){A=rC.resolve(A||".");var Q="",B;try{Q=ODA(rC.join(A,"package.json")).name;var Y=Q.toUpperCase().replace(/-/g,"_");if(process.env[Y+"_PREBUILD"])A=process.env[Y+"_PREBUILD"]}catch(I){B=I}if(!eZB){var J=RDA(rC.join(A,"build/Release"),wDA);if(J)return J;var C=RDA(rC.join(A,"build/Debug"),wDA);if(C)return C}var X=E(A);if(X)return X;var G=E(rC.dirname(process.execPath));if(G)return G;var W=(Q[0]=="@"?"":"@"+Q+"/")+Q+"-"+Vj+"-"+Kj,F;try{var Z=rC.dirname(u("module").createRequire(oZB.pathToFileURL(rC.join(A,"package.json"))).resolve(W));return K(Z)}catch(I){F=I}var U=["platform="+Vj,"arch="+Kj,"runtime="+ju,"abi="+Ou,"uv="+TDA,Pu?"armv="+Pu:"","libc="+PDA,"node="+process.versions.node,process.versions.electron?"electron="+process.versions.electron:"",typeof __webpack_require__==="function"?"webpack=true":""].filter(Boolean).join(" ");let $="No native build was found for "+U+` + attempted loading from: `+A+" and package: "+W+` `;if(B)$+="Error finding package.json: "+B.message+` -`;if(W)$+="Error resolving package: "+W.message+` -`;throw Error($);function E(I){var V=Xu(mC.join(I,"prebuilds")).map(cHA),H=V.filter(lHA(nw,iw)).sort(pHA)[0];if(!H)return;return K(mC.join(I,"prebuilds",H.name))}function K(I){var V=Xu(I).map(iHA),H=V.filter(nHA(Yu,Ju)),D=H.sort(sHA(Yu))[0];if(D)return mC.join(I,D.file)}};function Xu(A){try{return rWB.readdirSync(A)}catch(Q){return[]}}function xHA(A,Q){var B=Xu(A).filter(Q);return B[0]&&mC.join(A,B[0])}function fHA(A){return/\.node$/.test(A)}function cHA(A){var Q=A.split("-");if(Q.length!==2)return;var B=Q[0],Y=Q[1].split("+");if(!B)return;if(!Y.length)return;if(!Y.every(Boolean))return;return{name:A,platform:B,architectures:Y}}function lHA(A,Q){return function(B){if(B==null)return!1;if(B.platform!==A)return!1;return B.architectures.includes(Q)}}function pHA(A,Q){return A.architectures.length-Q.architectures.length}function iHA(A){var Q=A.split("."),B=Q.pop(),Y={file:A,specificity:0};if(B!=="node")return;for(var J=0;JB.specificity?-1:1;else return 0}}function AZB(){return!!(process.versions&&process.versions.nw)}function QZB(){if(process.versions&&process.versions.electron)return!0;if(process.env.ELECTRON_RUN_AS_NODE)return!0;return typeof window<"u"&&window.process&&window.process.type==="renderer"}function BZB(A){if(A!=="linux")return!1;let{familySync:Q,MUSL:B}=dI();return Q()===B}a1.parseTags=iHA;a1.matchTags=nHA;a1.compareTags=sHA;a1.parseTuple=cHA;a1.matchTuple=lHA;a1.compareTuples=pHA});var oHA=R((GLY,Wu)=>{var Fu=typeof __webpack_require__==="function"?__non_webpack_require__:u;if(typeof Fu.addon==="function")Wu.exports=Fu.addon.bind(Fu);else Wu.exports=aHA()});var eHA=R((WLY,tHA)=>{var __dirname="/home/ab/GitHub/hytopia/work1/server/node_modules/msgpackr-extract";tHA.exports=oHA()(__dirname)});var eNA=R((oNA)=>{Object.defineProperty(oNA,"__esModule",{value:!0});oNA._globalThis=void 0;oNA._globalThis=typeof globalThis==="object"?globalThis:global});var ALA=R((gZ)=>{var c4B=gZ&&gZ.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),l4B=gZ&&gZ.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))c4B(Q,A,B)};Object.defineProperty(gZ,"__esModule",{value:!0});l4B(eNA(),gZ)});var QLA=R((xZ)=>{var p4B=xZ&&xZ.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),i4B=xZ&&xZ.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))p4B(Q,A,B)};Object.defineProperty(xZ,"__esModule",{value:!0});i4B(ALA(),xZ)});var dd=R((BLA)=>{Object.defineProperty(BLA,"__esModule",{value:!0});BLA.VERSION=void 0;BLA.VERSION="1.9.0"});var FLA=R((XLA)=>{Object.defineProperty(XLA,"__esModule",{value:!0});XLA.isCompatible=XLA._makeCompatibilityCheck=void 0;var n4B=dd(),JLA=/^(\d+)\.(\d+)\.(\d+)(-(.+))?$/;function CLA(A){let Q=new Set([A]),B=new Set,Y=A.match(JLA);if(!Y)return()=>!1;let J={major:+Y[1],minor:+Y[2],patch:+Y[3],prerelease:Y[4]};if(J.prerelease!=null)return function(F){return F===A};function C(G){return B.add(G),!1}function X(G){return Q.add(G),!0}return function(F){if(Q.has(F))return!0;if(B.has(F))return!1;let W=F.match(JLA);if(!W)return C(F);let Z={major:+W[1],minor:+W[2],patch:+W[3],prerelease:W[4]};if(Z.prerelease!=null)return C(F);if(J.major!==Z.major)return C(F);if(J.major===0){if(J.minor===Z.minor&&J.patch<=Z.patch)return X(F);return C(F)}if(J.minor<=Z.minor)return X(F);return C(F)}}XLA._makeCompatibilityCheck=CLA;XLA.isCompatible=CLA(n4B.VERSION)});var fZ=R((WLA)=>{Object.defineProperty(WLA,"__esModule",{value:!0});WLA.unregisterGlobal=WLA.getGlobal=WLA.registerGlobal=void 0;var r4B=QLA(),cE=dd(),a4B=FLA(),o4B=cE.VERSION.split(".")[0],wN=Symbol.for(`opentelemetry.js.api.${o4B}`),jN=r4B._globalThis;function t4B(A,Q,B,Y=!1){var J;let C=jN[wN]=(J=jN[wN])!==null&&J!==void 0?J:{version:cE.VERSION};if(!Y&&C[A]){let X=Error(`@opentelemetry/api: Attempted duplicate registration of API: ${A}`);return B.error(X.stack||X.message),!1}if(C.version!==cE.VERSION){let X=Error(`@opentelemetry/api: Registration of version v${C.version} for ${A} does not match previously registered API v${cE.VERSION}`);return B.error(X.stack||X.message),!1}return C[A]=Q,B.debug(`@opentelemetry/api: Registered a global for ${A} v${cE.VERSION}.`),!0}WLA.registerGlobal=t4B;function e4B(A){var Q,B;let Y=(Q=jN[wN])===null||Q===void 0?void 0:Q.version;if(!Y||!(0,a4B.isCompatible)(Y))return;return(B=jN[wN])===null||B===void 0?void 0:B[A]}WLA.getGlobal=e4B;function AUB(A,Q){Q.debug(`@opentelemetry/api: Unregistering a global for ${A} v${cE.VERSION}.`);let B=jN[wN];if(B)delete B[A]}WLA.unregisterGlobal=AUB});var KLA=R((ULA)=>{Object.defineProperty(ULA,"__esModule",{value:!0});ULA.DiagComponentLogger=void 0;var YUB=fZ();class $LA{constructor(A){this._namespace=A.namespace||"DiagComponentLogger"}debug(...A){return ON("debug",this._namespace,A)}error(...A){return ON("error",this._namespace,A)}info(...A){return ON("info",this._namespace,A)}warn(...A){return ON("warn",this._namespace,A)}verbose(...A){return ON("verbose",this._namespace,A)}}ULA.DiagComponentLogger=$LA;function ON(A,Q,B){let Y=(0,YUB.getGlobal)("diag");if(!Y)return;return B.unshift(Q),Y[A](...B)}});var Pj=R((VLA)=>{Object.defineProperty(VLA,"__esModule",{value:!0});VLA.DiagLogLevel=void 0;var JUB;(function(A){A[A.NONE=0]="NONE",A[A.ERROR=30]="ERROR",A[A.WARN=50]="WARN",A[A.INFO=60]="INFO",A[A.DEBUG=70]="DEBUG",A[A.VERBOSE=80]="VERBOSE",A[A.ALL=9999]="ALL"})(JUB=VLA.DiagLogLevel||(VLA.DiagLogLevel={}))});var DLA=R((ILA)=>{Object.defineProperty(ILA,"__esModule",{value:!0});ILA.createLogLevelDiagLogger=void 0;var eX=Pj();function CUB(A,Q){if(AeX.DiagLogLevel.ALL)A=eX.DiagLogLevel.ALL;Q=Q||{};function B(Y,J){let C=Q[Y];if(typeof C==="function"&&A>=J)return C.bind(Q);return function(){}}return{error:B("error",eX.DiagLogLevel.ERROR),warn:B("warn",eX.DiagLogLevel.WARN),info:B("info",eX.DiagLogLevel.INFO),debug:B("debug",eX.DiagLogLevel.DEBUG),verbose:B("verbose",eX.DiagLogLevel.VERBOSE)}}ILA.createLogLevelDiagLogger=CUB});var bZ=R((LLA)=>{Object.defineProperty(LLA,"__esModule",{value:!0});LLA.DiagAPI=void 0;var XUB=KLA(),GUB=DLA(),NLA=Pj(),Tj=fZ(),FUB="diag";class ld{constructor(){function A(Y){return function(...J){let C=(0,Tj.getGlobal)("diag");if(!C)return;return C[Y](...J)}}let Q=this,B=(Y,J={logLevel:NLA.DiagLogLevel.INFO})=>{var C,X,G;if(Y===Q){let Z=Error("Cannot use diag as the logger for itself. Please use a DiagLogger implementation like ConsoleDiagLogger or a custom implementation");return Q.error((C=Z.stack)!==null&&C!==void 0?C:Z.message),!1}if(typeof J==="number")J={logLevel:J};let F=(0,Tj.getGlobal)("diag"),W=(0,GUB.createLogLevelDiagLogger)((X=J.logLevel)!==null&&X!==void 0?X:NLA.DiagLogLevel.INFO,Y);if(F&&!J.suppressOverrideMessage){let Z=(G=Error().stack)!==null&&G!==void 0?G:"";F.warn(`Current logger will be overwritten from ${Z}`),W.warn(`Current logger will overwrite one already registered from ${Z}`)}return(0,Tj.registerGlobal)("diag",W,Q,!0)};Q.setLogger=B,Q.disable=()=>{(0,Tj.unregisterGlobal)(FUB,Q)},Q.createComponentLogger=(Y)=>{return new XUB.DiagComponentLogger(Y)},Q.verbose=A("verbose"),Q.debug=A("debug"),Q.info=A("info"),Q.warn=A("warn"),Q.error=A("error")}static instance(){if(!this._instance)this._instance=new ld;return this._instance}}LLA.DiagAPI=ld});var RLA=R((MLA)=>{Object.defineProperty(MLA,"__esModule",{value:!0});MLA.BaggageImpl=void 0;class lE{constructor(A){this._entries=A?new Map(A):new Map}getEntry(A){let Q=this._entries.get(A);if(!Q)return;return Object.assign({},Q)}getAllEntries(){return Array.from(this._entries.entries()).map(([A,Q])=>[A,Q])}setEntry(A,Q){let B=new lE(this._entries);return B._entries.set(A,Q),B}removeEntry(A){let Q=new lE(this._entries);return Q._entries.delete(A),Q}removeEntries(...A){let Q=new lE(this._entries);for(let B of A)Q._entries.delete(B);return Q}clear(){return new lE}}MLA.BaggageImpl=lE});var OLA=R((wLA)=>{Object.defineProperty(wLA,"__esModule",{value:!0});wLA.baggageEntryMetadataSymbol=void 0;wLA.baggageEntryMetadataSymbol=Symbol("BaggageEntryMetadata")});var pd=R((PLA)=>{Object.defineProperty(PLA,"__esModule",{value:!0});PLA.baggageEntryMetadataFromString=PLA.createBaggage=void 0;var WUB=bZ(),ZUB=RLA(),$UB=OLA(),UUB=WUB.DiagAPI.instance();function EUB(A={}){return new ZUB.BaggageImpl(new Map(Object.entries(A)))}PLA.createBaggage=EUB;function KUB(A){if(typeof A!=="string")UUB.error(`Cannot create baggage metadata from unknown type: ${typeof A}`),A="";return{__TYPE__:$UB.baggageEntryMetadataSymbol,toString(){return A}}}PLA.baggageEntryMetadataFromString=KUB});var PN=R((SLA)=>{Object.defineProperty(SLA,"__esModule",{value:!0});SLA.ROOT_CONTEXT=SLA.createContextKey=void 0;function IUB(A){return Symbol.for(A)}SLA.createContextKey=IUB;class Sj{constructor(A){let Q=this;Q._currentContext=A?new Map(A):new Map,Q.getValue=(B)=>Q._currentContext.get(B),Q.setValue=(B,Y)=>{let J=new Sj(Q._currentContext);return J._currentContext.set(B,Y),J},Q.deleteValue=(B)=>{let Y=new Sj(Q._currentContext);return Y._currentContext.delete(B),Y}}}SLA.ROOT_CONTEXT=new Sj});var hLA=R((vLA)=>{Object.defineProperty(vLA,"__esModule",{value:!0});vLA.DiagConsoleLogger=void 0;var id=[{n:"error",c:"error"},{n:"warn",c:"warn"},{n:"info",c:"info"},{n:"debug",c:"debug"},{n:"verbose",c:"trace"}];class _LA{constructor(){function A(Q){return function(...B){if(console){let Y=console[Q];if(typeof Y!=="function")Y=console.log;if(typeof Y==="function")return Y.apply(console,B)}}}for(let Q=0;Q{Object.defineProperty(gLA,"__esModule",{value:!0});gLA.createNoopMeter=gLA.NOOP_OBSERVABLE_UP_DOWN_COUNTER_METRIC=gLA.NOOP_OBSERVABLE_GAUGE_METRIC=gLA.NOOP_OBSERVABLE_COUNTER_METRIC=gLA.NOOP_UP_DOWN_COUNTER_METRIC=gLA.NOOP_HISTOGRAM_METRIC=gLA.NOOP_GAUGE_METRIC=gLA.NOOP_COUNTER_METRIC=gLA.NOOP_METER=gLA.NoopObservableUpDownCounterMetric=gLA.NoopObservableGaugeMetric=gLA.NoopObservableCounterMetric=gLA.NoopObservableMetric=gLA.NoopHistogramMetric=gLA.NoopGaugeMetric=gLA.NoopUpDownCounterMetric=gLA.NoopCounterMetric=gLA.NoopMetric=gLA.NoopMeter=void 0;class nd{constructor(){}createGauge(A,Q){return gLA.NOOP_GAUGE_METRIC}createHistogram(A,Q){return gLA.NOOP_HISTOGRAM_METRIC}createCounter(A,Q){return gLA.NOOP_COUNTER_METRIC}createUpDownCounter(A,Q){return gLA.NOOP_UP_DOWN_COUNTER_METRIC}createObservableGauge(A,Q){return gLA.NOOP_OBSERVABLE_GAUGE_METRIC}createObservableCounter(A,Q){return gLA.NOOP_OBSERVABLE_COUNTER_METRIC}createObservableUpDownCounter(A,Q){return gLA.NOOP_OBSERVABLE_UP_DOWN_COUNTER_METRIC}addBatchObservableCallback(A,Q){}removeBatchObservableCallback(A){}}gLA.NoopMeter=nd;class pE{}gLA.NoopMetric=pE;class sd extends pE{add(A,Q){}}gLA.NoopCounterMetric=sd;class rd extends pE{add(A,Q){}}gLA.NoopUpDownCounterMetric=rd;class ad extends pE{record(A,Q){}}gLA.NoopGaugeMetric=ad;class od extends pE{record(A,Q){}}gLA.NoopHistogramMetric=od;class TN{addCallback(A){}removeCallback(A){}}gLA.NoopObservableMetric=TN;class td extends TN{}gLA.NoopObservableCounterMetric=td;class ed extends TN{}gLA.NoopObservableGaugeMetric=ed;class Ac extends TN{}gLA.NoopObservableUpDownCounterMetric=Ac;gLA.NOOP_METER=new nd;gLA.NOOP_COUNTER_METRIC=new sd;gLA.NOOP_GAUGE_METRIC=new ad;gLA.NOOP_HISTOGRAM_METRIC=new od;gLA.NOOP_UP_DOWN_COUNTER_METRIC=new rd;gLA.NOOP_OBSERVABLE_COUNTER_METRIC=new td;gLA.NOOP_OBSERVABLE_GAUGE_METRIC=new ed;gLA.NOOP_OBSERVABLE_UP_DOWN_COUNTER_METRIC=new Ac;function DUB(){return gLA.NOOP_METER}gLA.createNoopMeter=DUB});var nLA=R((iLA)=>{Object.defineProperty(iLA,"__esModule",{value:!0});iLA.ValueType=void 0;var TUB;(function(A){A[A.INT=0]="INT",A[A.DOUBLE=1]="DOUBLE"})(TUB=iLA.ValueType||(iLA.ValueType={}))});var Yc=R((sLA)=>{Object.defineProperty(sLA,"__esModule",{value:!0});sLA.defaultTextMapSetter=sLA.defaultTextMapGetter=void 0;sLA.defaultTextMapGetter={get(A,Q){if(A==null)return;return A[Q]},keys(A){if(A==null)return[];return Object.keys(A)}};sLA.defaultTextMapSetter={set(A,Q,B){if(A==null)return;A[Q]=B}}});var eLA=R((oLA)=>{Object.defineProperty(oLA,"__esModule",{value:!0});oLA.NoopContextManager=void 0;var kUB=PN();class aLA{active(){return kUB.ROOT_CONTEXT}with(A,Q,B,...Y){return Q.call(B,...Y)}bind(A,Q){return Q}enable(){return this}disable(){return this}}oLA.NoopContextManager=aLA});var SN=R((QqA)=>{Object.defineProperty(QqA,"__esModule",{value:!0});QqA.ContextAPI=void 0;var _UB=eLA(),Jc=fZ(),AqA=bZ(),Cc="context",vUB=new _UB.NoopContextManager;class Xc{constructor(){}static getInstance(){if(!this._instance)this._instance=new Xc;return this._instance}setGlobalContextManager(A){return(0,Jc.registerGlobal)(Cc,A,AqA.DiagAPI.instance())}active(){return this._getContextManager().active()}with(A,Q,B,...Y){return this._getContextManager().with(A,Q,B,...Y)}bind(A,Q){return this._getContextManager().bind(A,Q)}_getContextManager(){return(0,Jc.getGlobal)(Cc)||vUB}disable(){this._getContextManager().disable(),(0,Jc.unregisterGlobal)(Cc,AqA.DiagAPI.instance())}}QqA.ContextAPI=Xc});var Fc=R((YqA)=>{Object.defineProperty(YqA,"__esModule",{value:!0});YqA.TraceFlags=void 0;var yUB;(function(A){A[A.NONE=0]="NONE",A[A.SAMPLED=1]="SAMPLED"})(yUB=YqA.TraceFlags||(YqA.TraceFlags={}))});var kj=R((JqA)=>{Object.defineProperty(JqA,"__esModule",{value:!0});JqA.INVALID_SPAN_CONTEXT=JqA.INVALID_TRACEID=JqA.INVALID_SPANID=void 0;var hUB=Fc();JqA.INVALID_SPANID="0000000000000000";JqA.INVALID_TRACEID="00000000000000000000000000000000";JqA.INVALID_SPAN_CONTEXT={traceId:JqA.INVALID_TRACEID,spanId:JqA.INVALID_SPANID,traceFlags:hUB.TraceFlags.NONE}});var _j=R((WqA)=>{Object.defineProperty(WqA,"__esModule",{value:!0});WqA.NonRecordingSpan=void 0;var gUB=kj();class FqA{constructor(A=gUB.INVALID_SPAN_CONTEXT){this._spanContext=A}spanContext(){return this._spanContext}setAttribute(A,Q){return this}setAttributes(A){return this}addEvent(A,Q){return this}addLink(A){return this}addLinks(A){return this}setStatus(A){return this}updateName(A){return this}end(A){}isRecording(){return!1}recordException(A,Q){}}WqA.NonRecordingSpan=FqA});var $c=R((UqA)=>{Object.defineProperty(UqA,"__esModule",{value:!0});UqA.getSpanContext=UqA.setSpanContext=UqA.deleteSpan=UqA.setSpan=UqA.getActiveSpan=UqA.getSpan=void 0;var xUB=PN(),fUB=_j(),bUB=SN(),Wc=(0,xUB.createContextKey)("OpenTelemetry Context Key SPAN");function Zc(A){return A.getValue(Wc)||void 0}UqA.getSpan=Zc;function mUB(){return Zc(bUB.ContextAPI.getInstance().active())}UqA.getActiveSpan=mUB;function $qA(A,Q){return A.setValue(Wc,Q)}UqA.setSpan=$qA;function uUB(A){return A.deleteValue(Wc)}UqA.deleteSpan=uUB;function dUB(A,Q){return $qA(A,new fUB.NonRecordingSpan(Q))}UqA.setSpanContext=dUB;function cUB(A){var Q;return(Q=Zc(A))===null||Q===void 0?void 0:Q.spanContext()}UqA.getSpanContext=cUB});var vj=R((HqA)=>{Object.defineProperty(HqA,"__esModule",{value:!0});HqA.wrapSpanContext=HqA.isSpanContextValid=HqA.isValidSpanId=HqA.isValidTraceId=void 0;var KqA=kj(),rUB=_j(),aUB=/^([0-9a-f]{32})$/i,oUB=/^[0-9a-f]{16}$/i;function VqA(A){return aUB.test(A)&&A!==KqA.INVALID_TRACEID}HqA.isValidTraceId=VqA;function IqA(A){return oUB.test(A)&&A!==KqA.INVALID_SPANID}HqA.isValidSpanId=IqA;function tUB(A){return VqA(A.traceId)&&IqA(A.spanId)}HqA.isSpanContextValid=tUB;function eUB(A){return new rUB.NonRecordingSpan(A)}HqA.wrapSpanContext=eUB});var Kc=R((qqA)=>{Object.defineProperty(qqA,"__esModule",{value:!0});qqA.NoopTracer=void 0;var YEB=SN(),NqA=$c(),Uc=_j(),JEB=vj(),Ec=YEB.ContextAPI.getInstance();class LqA{startSpan(A,Q,B=Ec.active()){if(Boolean(Q===null||Q===void 0?void 0:Q.root))return new Uc.NonRecordingSpan;let J=B&&(0,NqA.getSpanContext)(B);if(CEB(J)&&(0,JEB.isSpanContextValid)(J))return new Uc.NonRecordingSpan(J);else return new Uc.NonRecordingSpan}startActiveSpan(A,Q,B,Y){let J,C,X;if(arguments.length<2)return;else if(arguments.length===2)X=Q;else if(arguments.length===3)J=Q,X=B;else J=Q,C=B,X=Y;let G=C!==null&&C!==void 0?C:Ec.active(),F=this.startSpan(A,J,G),W=(0,NqA.setSpan)(G,F);return Ec.with(W,X,void 0,F)}}qqA.NoopTracer=LqA;function CEB(A){return typeof A==="object"&&typeof A.spanId==="string"&&typeof A.traceId==="string"&&typeof A.traceFlags==="number"}});var Vc=R((RqA)=>{Object.defineProperty(RqA,"__esModule",{value:!0});RqA.ProxyTracer=void 0;var XEB=Kc(),GEB=new XEB.NoopTracer;class zqA{constructor(A,Q,B,Y){this._provider=A,this.name=Q,this.version=B,this.options=Y}startSpan(A,Q,B){return this._getTracer().startSpan(A,Q,B)}startActiveSpan(A,Q,B,Y){let J=this._getTracer();return Reflect.apply(J.startActiveSpan,J,arguments)}_getTracer(){if(this._delegate)return this._delegate;let A=this._provider.getDelegateTracer(this.name,this.version,this.options);if(!A)return GEB;return this._delegate=A,this._delegate}}RqA.ProxyTracer=zqA});var TqA=R((OqA)=>{Object.defineProperty(OqA,"__esModule",{value:!0});OqA.NoopTracerProvider=void 0;var FEB=Kc();class jqA{getTracer(A,Q,B){return new FEB.NoopTracer}}OqA.NoopTracerProvider=jqA});var Ic=R((kqA)=>{Object.defineProperty(kqA,"__esModule",{value:!0});kqA.ProxyTracerProvider=void 0;var WEB=Vc(),ZEB=TqA(),$EB=new ZEB.NoopTracerProvider;class SqA{getTracer(A,Q,B){var Y;return(Y=this.getDelegateTracer(A,Q,B))!==null&&Y!==void 0?Y:new WEB.ProxyTracer(this,A,Q,B)}getDelegate(){var A;return(A=this._delegate)!==null&&A!==void 0?A:$EB}setDelegate(A){this._delegate=A}getDelegateTracer(A,Q,B){var Y;return(Y=this._delegate)===null||Y===void 0?void 0:Y.getTracer(A,Q,B)}}kqA.ProxyTracerProvider=SqA});var yqA=R((vqA)=>{Object.defineProperty(vqA,"__esModule",{value:!0});vqA.SamplingDecision=void 0;var UEB;(function(A){A[A.NOT_RECORD=0]="NOT_RECORD",A[A.RECORD=1]="RECORD",A[A.RECORD_AND_SAMPLED=2]="RECORD_AND_SAMPLED"})(UEB=vqA.SamplingDecision||(vqA.SamplingDecision={}))});var gqA=R((hqA)=>{Object.defineProperty(hqA,"__esModule",{value:!0});hqA.SpanKind=void 0;var EEB;(function(A){A[A.INTERNAL=0]="INTERNAL",A[A.SERVER=1]="SERVER",A[A.CLIENT=2]="CLIENT",A[A.PRODUCER=3]="PRODUCER",A[A.CONSUMER=4]="CONSUMER"})(EEB=hqA.SpanKind||(hqA.SpanKind={}))});var fqA=R((xqA)=>{Object.defineProperty(xqA,"__esModule",{value:!0});xqA.SpanStatusCode=void 0;var KEB;(function(A){A[A.UNSET=0]="UNSET",A[A.OK=1]="OK",A[A.ERROR=2]="ERROR"})(KEB=xqA.SpanStatusCode||(xqA.SpanStatusCode={}))});var uqA=R((bqA)=>{Object.defineProperty(bqA,"__esModule",{value:!0});bqA.validateValue=bqA.validateKey=void 0;var Lc="[_0-9a-z-*/]",VEB=`[a-z]${Lc}{0,255}`,IEB=`[a-z0-9]${Lc}{0,240}@[a-z]${Lc}{0,13}`,HEB=new RegExp(`^(?:${VEB}|${IEB})$`),DEB=/^[ -~]{0,255}[!-~]$/,NEB=/,|=/;function LEB(A){return HEB.test(A)}bqA.validateKey=LEB;function qEB(A){return DEB.test(A)&&!NEB.test(A)}bqA.validateValue=qEB});var sqA=R((iqA)=>{Object.defineProperty(iqA,"__esModule",{value:!0});iqA.TraceStateImpl=void 0;var dqA=uqA(),cqA=32,zEB=512,lqA=",",pqA="=";class qc{constructor(A){if(this._internalState=new Map,A)this._parse(A)}set(A,Q){let B=this._clone();if(B._internalState.has(A))B._internalState.delete(A);return B._internalState.set(A,Q),B}unset(A){let Q=this._clone();return Q._internalState.delete(A),Q}get(A){return this._internalState.get(A)}serialize(){return this._keys().reduce((A,Q)=>{return A.push(Q+pqA+this.get(Q)),A},[]).join(lqA)}_parse(A){if(A.length>zEB)return;if(this._internalState=A.split(lqA).reverse().reduce((Q,B)=>{let Y=B.trim(),J=Y.indexOf(pqA);if(J!==-1){let C=Y.slice(0,J),X=Y.slice(J+1,B.length);if((0,dqA.validateKey)(C)&&(0,dqA.validateValue)(X))Q.set(C,X)}return Q},new Map),this._internalState.size>cqA)this._internalState=new Map(Array.from(this._internalState.entries()).reverse().slice(0,cqA))}_keys(){return Array.from(this._internalState.keys()).reverse()}_clone(){let A=new qc;return A._internalState=new Map(this._internalState),A}}iqA.TraceStateImpl=qc});var oqA=R((rqA)=>{Object.defineProperty(rqA,"__esModule",{value:!0});rqA.createTraceState=void 0;var REB=sqA();function wEB(A){return new REB.TraceStateImpl(A)}rqA.createTraceState=wEB});var AMA=R((tqA)=>{Object.defineProperty(tqA,"__esModule",{value:!0});tqA.context=void 0;var jEB=SN();tqA.context=jEB.ContextAPI.getInstance()});var YMA=R((QMA)=>{Object.defineProperty(QMA,"__esModule",{value:!0});QMA.diag=void 0;var OEB=bZ();QMA.diag=OEB.DiagAPI.instance()});var XMA=R((JMA)=>{Object.defineProperty(JMA,"__esModule",{value:!0});JMA.NOOP_METER_PROVIDER=JMA.NoopMeterProvider=void 0;var PEB=Qc();class Mc{getMeter(A,Q,B){return PEB.NOOP_METER}}JMA.NoopMeterProvider=Mc;JMA.NOOP_METER_PROVIDER=new Mc});var ZMA=R((FMA)=>{Object.defineProperty(FMA,"__esModule",{value:!0});FMA.MetricsAPI=void 0;var SEB=XMA(),zc=fZ(),GMA=bZ(),Rc="metrics";class wc{constructor(){}static getInstance(){if(!this._instance)this._instance=new wc;return this._instance}setGlobalMeterProvider(A){return(0,zc.registerGlobal)(Rc,A,GMA.DiagAPI.instance())}getMeterProvider(){return(0,zc.getGlobal)(Rc)||SEB.NOOP_METER_PROVIDER}getMeter(A,Q,B){return this.getMeterProvider().getMeter(A,Q,B)}disable(){(0,zc.unregisterGlobal)(Rc,GMA.DiagAPI.instance())}}FMA.MetricsAPI=wc});var EMA=R(($MA)=>{Object.defineProperty($MA,"__esModule",{value:!0});$MA.metrics=void 0;var kEB=ZMA();$MA.metrics=kEB.MetricsAPI.getInstance()});var HMA=R((VMA)=>{Object.defineProperty(VMA,"__esModule",{value:!0});VMA.NoopTextMapPropagator=void 0;class KMA{inject(A,Q){}extract(A,Q){return A}fields(){return[]}}VMA.NoopTextMapPropagator=KMA});var qMA=R((NMA)=>{Object.defineProperty(NMA,"__esModule",{value:!0});NMA.deleteBaggage=NMA.setBaggage=NMA.getActiveBaggage=NMA.getBaggage=void 0;var _EB=SN(),vEB=PN(),jc=(0,vEB.createContextKey)("OpenTelemetry Baggage Key");function DMA(A){return A.getValue(jc)||void 0}NMA.getBaggage=DMA;function yEB(){return DMA(_EB.ContextAPI.getInstance().active())}NMA.getActiveBaggage=yEB;function hEB(A,Q){return A.setValue(jc,Q)}NMA.setBaggage=hEB;function gEB(A){return A.deleteValue(jc)}NMA.deleteBaggage=gEB});var jMA=R((RMA)=>{Object.defineProperty(RMA,"__esModule",{value:!0});RMA.PropagationAPI=void 0;var Oc=fZ(),mEB=HMA(),MMA=Yc(),yj=qMA(),uEB=pd(),zMA=bZ(),Pc="propagation",dEB=new mEB.NoopTextMapPropagator;class Tc{constructor(){this.createBaggage=uEB.createBaggage,this.getBaggage=yj.getBaggage,this.getActiveBaggage=yj.getActiveBaggage,this.setBaggage=yj.setBaggage,this.deleteBaggage=yj.deleteBaggage}static getInstance(){if(!this._instance)this._instance=new Tc;return this._instance}setGlobalPropagator(A){return(0,Oc.registerGlobal)(Pc,A,zMA.DiagAPI.instance())}inject(A,Q,B=MMA.defaultTextMapSetter){return this._getGlobalPropagator().inject(A,Q,B)}extract(A,Q,B=MMA.defaultTextMapGetter){return this._getGlobalPropagator().extract(A,Q,B)}fields(){return this._getGlobalPropagator().fields()}disable(){(0,Oc.unregisterGlobal)(Pc,zMA.DiagAPI.instance())}_getGlobalPropagator(){return(0,Oc.getGlobal)(Pc)||dEB}}RMA.PropagationAPI=Tc});var TMA=R((OMA)=>{Object.defineProperty(OMA,"__esModule",{value:!0});OMA.propagation=void 0;var cEB=jMA();OMA.propagation=cEB.PropagationAPI.getInstance()});var hMA=R((vMA)=>{Object.defineProperty(vMA,"__esModule",{value:!0});vMA.TraceAPI=void 0;var Sc=fZ(),SMA=Ic(),kMA=vj(),iE=$c(),_MA=bZ(),kc="trace";class _c{constructor(){this._proxyTracerProvider=new SMA.ProxyTracerProvider,this.wrapSpanContext=kMA.wrapSpanContext,this.isSpanContextValid=kMA.isSpanContextValid,this.deleteSpan=iE.deleteSpan,this.getSpan=iE.getSpan,this.getActiveSpan=iE.getActiveSpan,this.getSpanContext=iE.getSpanContext,this.setSpan=iE.setSpan,this.setSpanContext=iE.setSpanContext}static getInstance(){if(!this._instance)this._instance=new _c;return this._instance}setGlobalTracerProvider(A){let Q=(0,Sc.registerGlobal)(kc,this._proxyTracerProvider,_MA.DiagAPI.instance());if(Q)this._proxyTracerProvider.setDelegate(A);return Q}getTracerProvider(){return(0,Sc.getGlobal)(kc)||this._proxyTracerProvider}getTracer(A,Q){return this.getTracerProvider().getTracer(A,Q)}disable(){(0,Sc.unregisterGlobal)(kc,_MA.DiagAPI.instance()),this._proxyTracerProvider=new SMA.ProxyTracerProvider}}vMA.TraceAPI=_c});var fMA=R((gMA)=>{Object.defineProperty(gMA,"__esModule",{value:!0});gMA.trace=void 0;var lEB=hMA();gMA.trace=lEB.TraceAPI.getInstance()});var yA=R((mB)=>{Object.defineProperty(mB,"__esModule",{value:!0});mB.trace=mB.propagation=mB.metrics=mB.diag=mB.context=mB.INVALID_SPAN_CONTEXT=mB.INVALID_TRACEID=mB.INVALID_SPANID=mB.isValidSpanId=mB.isValidTraceId=mB.isSpanContextValid=mB.createTraceState=mB.TraceFlags=mB.SpanStatusCode=mB.SpanKind=mB.SamplingDecision=mB.ProxyTracerProvider=mB.ProxyTracer=mB.defaultTextMapSetter=mB.defaultTextMapGetter=mB.ValueType=mB.createNoopMeter=mB.DiagLogLevel=mB.DiagConsoleLogger=mB.ROOT_CONTEXT=mB.createContextKey=mB.baggageEntryMetadataFromString=void 0;var pEB=pd();Object.defineProperty(mB,"baggageEntryMetadataFromString",{enumerable:!0,get:function(){return pEB.baggageEntryMetadataFromString}});var bMA=PN();Object.defineProperty(mB,"createContextKey",{enumerable:!0,get:function(){return bMA.createContextKey}});Object.defineProperty(mB,"ROOT_CONTEXT",{enumerable:!0,get:function(){return bMA.ROOT_CONTEXT}});var iEB=hLA();Object.defineProperty(mB,"DiagConsoleLogger",{enumerable:!0,get:function(){return iEB.DiagConsoleLogger}});var nEB=Pj();Object.defineProperty(mB,"DiagLogLevel",{enumerable:!0,get:function(){return nEB.DiagLogLevel}});var sEB=Qc();Object.defineProperty(mB,"createNoopMeter",{enumerable:!0,get:function(){return sEB.createNoopMeter}});var rEB=nLA();Object.defineProperty(mB,"ValueType",{enumerable:!0,get:function(){return rEB.ValueType}});var mMA=Yc();Object.defineProperty(mB,"defaultTextMapGetter",{enumerable:!0,get:function(){return mMA.defaultTextMapGetter}});Object.defineProperty(mB,"defaultTextMapSetter",{enumerable:!0,get:function(){return mMA.defaultTextMapSetter}});var aEB=Vc();Object.defineProperty(mB,"ProxyTracer",{enumerable:!0,get:function(){return aEB.ProxyTracer}});var oEB=Ic();Object.defineProperty(mB,"ProxyTracerProvider",{enumerable:!0,get:function(){return oEB.ProxyTracerProvider}});var tEB=yqA();Object.defineProperty(mB,"SamplingDecision",{enumerable:!0,get:function(){return tEB.SamplingDecision}});var eEB=gqA();Object.defineProperty(mB,"SpanKind",{enumerable:!0,get:function(){return eEB.SpanKind}});var AKB=fqA();Object.defineProperty(mB,"SpanStatusCode",{enumerable:!0,get:function(){return AKB.SpanStatusCode}});var QKB=Fc();Object.defineProperty(mB,"TraceFlags",{enumerable:!0,get:function(){return QKB.TraceFlags}});var BKB=oqA();Object.defineProperty(mB,"createTraceState",{enumerable:!0,get:function(){return BKB.createTraceState}});var vc=vj();Object.defineProperty(mB,"isSpanContextValid",{enumerable:!0,get:function(){return vc.isSpanContextValid}});Object.defineProperty(mB,"isValidTraceId",{enumerable:!0,get:function(){return vc.isValidTraceId}});Object.defineProperty(mB,"isValidSpanId",{enumerable:!0,get:function(){return vc.isValidSpanId}});var yc=kj();Object.defineProperty(mB,"INVALID_SPANID",{enumerable:!0,get:function(){return yc.INVALID_SPANID}});Object.defineProperty(mB,"INVALID_TRACEID",{enumerable:!0,get:function(){return yc.INVALID_TRACEID}});Object.defineProperty(mB,"INVALID_SPAN_CONTEXT",{enumerable:!0,get:function(){return yc.INVALID_SPAN_CONTEXT}});var uMA=AMA();Object.defineProperty(mB,"context",{enumerable:!0,get:function(){return uMA.context}});var dMA=YMA();Object.defineProperty(mB,"diag",{enumerable:!0,get:function(){return dMA.diag}});var cMA=EMA();Object.defineProperty(mB,"metrics",{enumerable:!0,get:function(){return cMA.metrics}});var lMA=TMA();Object.defineProperty(mB,"propagation",{enumerable:!0,get:function(){return lMA.propagation}});var pMA=fMA();Object.defineProperty(mB,"trace",{enumerable:!0,get:function(){return pMA.trace}});mB.default={context:uMA.context,diag:dMA.diag,metrics:cMA.metrics,propagation:lMA.propagation,trace:pMA.trace}});var kN=R((iMA)=>{Object.defineProperty(iMA,"__esModule",{value:!0});iMA.isTracingSuppressed=iMA.unsuppressTracing=iMA.suppressTracing=void 0;var CKB=yA(),hc=(0,CKB.createContextKey)("OpenTelemetry SDK Context Key SUPPRESS_TRACING");function XKB(A){return A.setValue(hc,!0)}iMA.suppressTracing=XKB;function GKB(A){return A.deleteValue(hc)}iMA.unsuppressTracing=GKB;function FKB(A){return A.getValue(hc)===!0}iMA.isTracingSuppressed=FKB});var gc=R((sMA)=>{Object.defineProperty(sMA,"__esModule",{value:!0});sMA.BAGGAGE_MAX_TOTAL_LENGTH=sMA.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS=sMA.BAGGAGE_MAX_NAME_VALUE_PAIRS=sMA.BAGGAGE_HEADER=sMA.BAGGAGE_ITEMS_SEPARATOR=sMA.BAGGAGE_PROPERTIES_SEPARATOR=sMA.BAGGAGE_KEY_PAIR_SEPARATOR=void 0;sMA.BAGGAGE_KEY_PAIR_SEPARATOR="=";sMA.BAGGAGE_PROPERTIES_SEPARATOR=";";sMA.BAGGAGE_ITEMS_SEPARATOR=",";sMA.BAGGAGE_HEADER="baggage";sMA.BAGGAGE_MAX_NAME_VALUE_PAIRS=180;sMA.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS=4096;sMA.BAGGAGE_MAX_TOTAL_LENGTH=8192});var xc=R((oMA)=>{Object.defineProperty(oMA,"__esModule",{value:!0});oMA.parseKeyPairsIntoRecord=oMA.parsePairKeyValue=oMA.getKeyPairs=oMA.serializeKeyPairs=void 0;var HKB=yA(),mZ=gc();function DKB(A){return A.reduce((Q,B)=>{let Y=`${Q}${Q!==""?mZ.BAGGAGE_ITEMS_SEPARATOR:""}${B}`;return Y.length>mZ.BAGGAGE_MAX_TOTAL_LENGTH?Q:Y},"")}oMA.serializeKeyPairs=DKB;function NKB(A){return A.getAllEntries().map(([Q,B])=>{let Y=`${encodeURIComponent(Q)}=${encodeURIComponent(B.value)}`;if(B.metadata!==void 0)Y+=mZ.BAGGAGE_PROPERTIES_SEPARATOR+B.metadata.toString();return Y})}oMA.getKeyPairs=NKB;function aMA(A){let Q=A.split(mZ.BAGGAGE_PROPERTIES_SEPARATOR);if(Q.length<=0)return;let B=Q.shift();if(!B)return;let Y=B.indexOf(mZ.BAGGAGE_KEY_PAIR_SEPARATOR);if(Y<=0)return;let J=decodeURIComponent(B.substring(0,Y).trim()),C=decodeURIComponent(B.substring(Y+1).trim()),X;if(Q.length>0)X=(0,HKB.baggageEntryMetadataFromString)(Q.join(mZ.BAGGAGE_PROPERTIES_SEPARATOR));return{key:J,value:C,metadata:X}}oMA.parsePairKeyValue=aMA;function LKB(A){if(typeof A!=="string"||A.length===0)return{};return A.split(mZ.BAGGAGE_ITEMS_SEPARATOR).map((Q)=>{return aMA(Q)}).filter((Q)=>Q!==void 0&&Q.value.length>0).reduce((Q,B)=>{return Q[B.key]=B.value,Q},{})}oMA.parseKeyPairsIntoRecord=LKB});var BzA=R((AzA)=>{Object.defineProperty(AzA,"__esModule",{value:!0});AzA.W3CBaggagePropagator=void 0;var fc=yA(),RKB=kN(),uZ=gc(),bc=xc();class eMA{inject(A,Q,B){let Y=fc.propagation.getBaggage(A);if(!Y||(0,RKB.isTracingSuppressed)(A))return;let J=(0,bc.getKeyPairs)(Y).filter((X)=>{return X.length<=uZ.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS}).slice(0,uZ.BAGGAGE_MAX_NAME_VALUE_PAIRS),C=(0,bc.serializeKeyPairs)(J);if(C.length>0)B.set(Q,uZ.BAGGAGE_HEADER,C)}extract(A,Q,B){let Y=B.get(Q,uZ.BAGGAGE_HEADER),J=Array.isArray(Y)?Y.join(uZ.BAGGAGE_ITEMS_SEPARATOR):Y;if(!J)return A;let C={};if(J.length===0)return A;if(J.split(uZ.BAGGAGE_ITEMS_SEPARATOR).forEach((G)=>{let F=(0,bc.parsePairKeyValue)(G);if(F){let W={value:F.value};if(F.metadata)W.metadata=F.metadata;C[F.key]=W}}),Object.entries(C).length===0)return A;return fc.propagation.setBaggage(A,fc.propagation.createBaggage(C))}fields(){return[uZ.BAGGAGE_HEADER]}}AzA.W3CBaggagePropagator=eMA});var XzA=R((JzA)=>{Object.defineProperty(JzA,"__esModule",{value:!0});JzA.AnchoredClock=void 0;class YzA{constructor(A,Q){this._monotonicClock=Q,this._epochMillis=A.now(),this._performanceMillis=Q.now()}now(){let A=this._monotonicClock.now()-this._performanceMillis;return this._epochMillis+A}}JzA.AnchoredClock=YzA});var EzA=R(($zA)=>{Object.defineProperty($zA,"__esModule",{value:!0});$zA.isAttributeValue=$zA.isAttributeKey=$zA.sanitizeAttributes=void 0;var GzA=yA();function wKB(A){let Q={};if(typeof A!=="object"||A==null)return Q;for(let[B,Y]of Object.entries(A)){if(!FzA(B)){GzA.diag.warn(`Invalid attribute key: ${B}`);continue}if(!WzA(Y)){GzA.diag.warn(`Invalid attribute value set for key: ${B}`);continue}if(Array.isArray(Y))Q[B]=Y.slice();else Q[B]=Y}return Q}$zA.sanitizeAttributes=wKB;function FzA(A){return typeof A==="string"&&A.length>0}$zA.isAttributeKey=FzA;function WzA(A){if(A==null)return!0;if(Array.isArray(A))return jKB(A);return ZzA(A)}$zA.isAttributeValue=WzA;function jKB(A){let Q;for(let B of A){if(B==null)continue;if(!Q){if(ZzA(B)){Q=typeof B;continue}return!1}if(typeof B===Q)continue;return!1}return!0}function ZzA(A){switch(typeof A){case"number":case"boolean":case"string":return!0}return!1}});var mc=R((KzA)=>{Object.defineProperty(KzA,"__esModule",{value:!0});KzA.loggingErrorHandler=void 0;var TKB=yA();function SKB(){return(A)=>{TKB.diag.error(kKB(A))}}KzA.loggingErrorHandler=SKB;function kKB(A){if(typeof A==="string")return A;else return JSON.stringify(_KB(A))}function _KB(A){let Q={},B=A;while(B!==null)Object.getOwnPropertyNames(B).forEach((Y)=>{if(Q[Y])return;let J=B[Y];if(J)Q[Y]=String(J)}),B=Object.getPrototypeOf(B);return Q}});var uc=R((HzA)=>{Object.defineProperty(HzA,"__esModule",{value:!0});HzA.globalErrorHandler=HzA.setGlobalErrorHandler=void 0;var vKB=mc(),IzA=(0,vKB.loggingErrorHandler)();function yKB(A){IzA=A}HzA.setGlobalErrorHandler=yKB;function hKB(A){try{IzA(A)}catch(Q){}}HzA.globalErrorHandler=hKB});var cc=R((NzA)=>{Object.defineProperty(NzA,"__esModule",{value:!0});NzA.TracesSamplerValues=void 0;var xKB;(function(A){A.AlwaysOff="always_off",A.AlwaysOn="always_on",A.ParentBasedAlwaysOff="parentbased_always_off",A.ParentBasedAlwaysOn="parentbased_always_on",A.ParentBasedTraceIdRatio="parentbased_traceidratio",A.TraceIdRatio="traceidratio"})(xKB=NzA.TracesSamplerValues||(NzA.TracesSamplerValues={}))});var lc=R((LzA)=>{Object.defineProperty(LzA,"__esModule",{value:!0});LzA.parseEnvironment=LzA.DEFAULT_ENVIRONMENT=LzA.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=LzA.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=LzA.DEFAULT_ATTRIBUTE_COUNT_LIMIT=LzA.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=void 0;var YF=yA(),fKB=cc(),bKB=",",mKB=["OTEL_SDK_DISABLED"];function uKB(A){return mKB.indexOf(A)>-1}var dKB=["OTEL_BSP_EXPORT_TIMEOUT","OTEL_BSP_MAX_EXPORT_BATCH_SIZE","OTEL_BSP_MAX_QUEUE_SIZE","OTEL_BSP_SCHEDULE_DELAY","OTEL_BLRP_EXPORT_TIMEOUT","OTEL_BLRP_MAX_EXPORT_BATCH_SIZE","OTEL_BLRP_MAX_QUEUE_SIZE","OTEL_BLRP_SCHEDULE_DELAY","OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_ATTRIBUTE_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT","OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT","OTEL_SPAN_EVENT_COUNT_LIMIT","OTEL_SPAN_LINK_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT","OTEL_EXPORTER_OTLP_TIMEOUT","OTEL_EXPORTER_OTLP_TRACES_TIMEOUT","OTEL_EXPORTER_OTLP_METRICS_TIMEOUT","OTEL_EXPORTER_OTLP_LOGS_TIMEOUT","OTEL_EXPORTER_JAEGER_AGENT_PORT"];function cKB(A){return dKB.indexOf(A)>-1}var lKB=["OTEL_NO_PATCH_MODULES","OTEL_PROPAGATORS","OTEL_SEMCONV_STABILITY_OPT_IN"];function pKB(A){return lKB.indexOf(A)>-1}LzA.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=1/0;LzA.DEFAULT_ATTRIBUTE_COUNT_LIMIT=128;LzA.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=128;LzA.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=128;LzA.DEFAULT_ENVIRONMENT={OTEL_SDK_DISABLED:!1,CONTAINER_NAME:"",ECS_CONTAINER_METADATA_URI_V4:"",ECS_CONTAINER_METADATA_URI:"",HOSTNAME:"",KUBERNETES_SERVICE_HOST:"",NAMESPACE:"",OTEL_BSP_EXPORT_TIMEOUT:30000,OTEL_BSP_MAX_EXPORT_BATCH_SIZE:512,OTEL_BSP_MAX_QUEUE_SIZE:2048,OTEL_BSP_SCHEDULE_DELAY:5000,OTEL_BLRP_EXPORT_TIMEOUT:30000,OTEL_BLRP_MAX_EXPORT_BATCH_SIZE:512,OTEL_BLRP_MAX_QUEUE_SIZE:2048,OTEL_BLRP_SCHEDULE_DELAY:5000,OTEL_EXPORTER_JAEGER_AGENT_HOST:"",OTEL_EXPORTER_JAEGER_AGENT_PORT:6832,OTEL_EXPORTER_JAEGER_ENDPOINT:"",OTEL_EXPORTER_JAEGER_PASSWORD:"",OTEL_EXPORTER_JAEGER_USER:"",OTEL_EXPORTER_OTLP_ENDPOINT:"",OTEL_EXPORTER_OTLP_TRACES_ENDPOINT:"",OTEL_EXPORTER_OTLP_METRICS_ENDPOINT:"",OTEL_EXPORTER_OTLP_LOGS_ENDPOINT:"",OTEL_EXPORTER_OTLP_HEADERS:"",OTEL_EXPORTER_OTLP_TRACES_HEADERS:"",OTEL_EXPORTER_OTLP_METRICS_HEADERS:"",OTEL_EXPORTER_OTLP_LOGS_HEADERS:"",OTEL_EXPORTER_OTLP_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_TRACES_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_METRICS_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_LOGS_TIMEOUT:1e4,OTEL_EXPORTER_ZIPKIN_ENDPOINT:"http://localhost:9411/api/v2/spans",OTEL_LOG_LEVEL:YF.DiagLogLevel.INFO,OTEL_NO_PATCH_MODULES:[],OTEL_PROPAGATORS:["tracecontext","baggage"],OTEL_RESOURCE_ATTRIBUTES:"",OTEL_SERVICE_NAME:"",OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT:LzA.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_ATTRIBUTE_COUNT_LIMIT:LzA.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT:LzA.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT:LzA.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT:LzA.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT:LzA.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_SPAN_EVENT_COUNT_LIMIT:128,OTEL_SPAN_LINK_COUNT_LIMIT:128,OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT:LzA.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT,OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT:LzA.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT,OTEL_TRACES_EXPORTER:"",OTEL_TRACES_SAMPLER:fKB.TracesSamplerValues.ParentBasedAlwaysOn,OTEL_TRACES_SAMPLER_ARG:"",OTEL_LOGS_EXPORTER:"",OTEL_EXPORTER_OTLP_INSECURE:"",OTEL_EXPORTER_OTLP_TRACES_INSECURE:"",OTEL_EXPORTER_OTLP_METRICS_INSECURE:"",OTEL_EXPORTER_OTLP_LOGS_INSECURE:"",OTEL_EXPORTER_OTLP_CERTIFICATE:"",OTEL_EXPORTER_OTLP_TRACES_CERTIFICATE:"",OTEL_EXPORTER_OTLP_METRICS_CERTIFICATE:"",OTEL_EXPORTER_OTLP_LOGS_CERTIFICATE:"",OTEL_EXPORTER_OTLP_COMPRESSION:"",OTEL_EXPORTER_OTLP_TRACES_COMPRESSION:"",OTEL_EXPORTER_OTLP_METRICS_COMPRESSION:"",OTEL_EXPORTER_OTLP_LOGS_COMPRESSION:"",OTEL_EXPORTER_OTLP_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_TRACES_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_METRICS_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_LOGS_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_TRACES_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_METRICS_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_LOGS_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_TRACES_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_METRICS_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_LOGS_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_METRICS_TEMPORALITY_PREFERENCE:"cumulative",OTEL_SEMCONV_STABILITY_OPT_IN:[]};function iKB(A,Q,B){if(typeof B[A]>"u")return;let Y=String(B[A]);Q[A]=Y.toLowerCase()==="true"}function nKB(A,Q,B,Y=-1/0,J=1/0){if(typeof B[A]<"u"){let C=Number(B[A]);if(!isNaN(C))if(CJ)Q[A]=J;else Q[A]=C}}function sKB(A,Q,B,Y=bKB){let J=B[A];if(typeof J==="string")Q[A]=J.split(Y).map((C)=>C.trim())}var rKB={ALL:YF.DiagLogLevel.ALL,VERBOSE:YF.DiagLogLevel.VERBOSE,DEBUG:YF.DiagLogLevel.DEBUG,INFO:YF.DiagLogLevel.INFO,WARN:YF.DiagLogLevel.WARN,ERROR:YF.DiagLogLevel.ERROR,NONE:YF.DiagLogLevel.NONE};function aKB(A,Q,B){let Y=B[A];if(typeof Y==="string"){let J=rKB[Y.toUpperCase()];if(J!=null)Q[A]=J}}function oKB(A){let Q={};for(let B in LzA.DEFAULT_ENVIRONMENT){let Y=B;switch(Y){case"OTEL_LOG_LEVEL":aKB(Y,Q,A);break;default:if(uKB(Y))iKB(Y,Q,A);else if(cKB(Y))nKB(Y,Q,A);else if(pKB(Y))sKB(Y,Q,A);else{let J=A[Y];if(typeof J<"u"&&J!==null)Q[Y]=String(J)}}}return Q}LzA.parseEnvironment=oKB});var OzA=R((wzA)=>{Object.defineProperty(wzA,"__esModule",{value:!0});wzA.getEnvWithoutDefaults=wzA.getEnv=void 0;var pc=lc();function tKB(){let A=(0,pc.parseEnvironment)(process.env);return Object.assign({},pc.DEFAULT_ENVIRONMENT,A)}wzA.getEnv=tKB;function eKB(){return(0,pc.parseEnvironment)(process.env)}wzA.getEnvWithoutDefaults=eKB});var SzA=R((PzA)=>{Object.defineProperty(PzA,"__esModule",{value:!0});PzA._globalThis=void 0;PzA._globalThis=typeof globalThis==="object"?globalThis:global});var ic=R((_zA)=>{Object.defineProperty(_zA,"__esModule",{value:!0});_zA.hexToBinary=void 0;function kzA(A){if(A>=48&&A<=57)return A-48;if(A>=97&&A<=102)return A-87;return A-55}function QVB(A){let Q=new Uint8Array(A.length/2),B=0;for(let Y=0;Y{Object.defineProperty(yzA,"__esModule",{value:!0});yzA.hexToBase64=void 0;var BVB=ic();function YVB(A){return Buffer.from((0,BVB.hexToBinary)(A)).toString("base64")}yzA.hexToBase64=YVB});var dzA=R((mzA)=>{Object.defineProperty(mzA,"__esModule",{value:!0});mzA.RandomIdGenerator=void 0;var JVB=8,fzA=16;class bzA{constructor(){this.generateTraceId=xzA(fzA),this.generateSpanId=xzA(JVB)}}mzA.RandomIdGenerator=bzA;var xj=Buffer.allocUnsafe(fzA);function xzA(A){return function(){for(let B=0;B>>0,B*4);for(let B=0;B0)break;else if(B===A-1)xj[A-1]=1;return xj.toString("hex",0,A)}}});var pzA=R((czA)=>{Object.defineProperty(czA,"__esModule",{value:!0});czA.otperformance=void 0;var CVB=u("perf_hooks");czA.otperformance=CVB.performance});var nc=R((izA)=>{Object.defineProperty(izA,"__esModule",{value:!0});izA.VERSION=void 0;izA.VERSION="1.30.1"});var sc=R((szA)=>{Object.defineProperty(szA,"__esModule",{value:!0});szA.createConstMap=void 0;function XVB(A){let Q={},B=A.length;for(let Y=0;Y{Object.defineProperty(bjA,"__esModule",{value:!0});bjA.SEMATTRS_NET_HOST_CARRIER_ICC=bjA.SEMATTRS_NET_HOST_CARRIER_MNC=bjA.SEMATTRS_NET_HOST_CARRIER_MCC=bjA.SEMATTRS_NET_HOST_CARRIER_NAME=bjA.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=bjA.SEMATTRS_NET_HOST_CONNECTION_TYPE=bjA.SEMATTRS_NET_HOST_NAME=bjA.SEMATTRS_NET_HOST_PORT=bjA.SEMATTRS_NET_HOST_IP=bjA.SEMATTRS_NET_PEER_NAME=bjA.SEMATTRS_NET_PEER_PORT=bjA.SEMATTRS_NET_PEER_IP=bjA.SEMATTRS_NET_TRANSPORT=bjA.SEMATTRS_FAAS_INVOKED_REGION=bjA.SEMATTRS_FAAS_INVOKED_PROVIDER=bjA.SEMATTRS_FAAS_INVOKED_NAME=bjA.SEMATTRS_FAAS_COLDSTART=bjA.SEMATTRS_FAAS_CRON=bjA.SEMATTRS_FAAS_TIME=bjA.SEMATTRS_FAAS_DOCUMENT_NAME=bjA.SEMATTRS_FAAS_DOCUMENT_TIME=bjA.SEMATTRS_FAAS_DOCUMENT_OPERATION=bjA.SEMATTRS_FAAS_DOCUMENT_COLLECTION=bjA.SEMATTRS_FAAS_EXECUTION=bjA.SEMATTRS_FAAS_TRIGGER=bjA.SEMATTRS_EXCEPTION_ESCAPED=bjA.SEMATTRS_EXCEPTION_STACKTRACE=bjA.SEMATTRS_EXCEPTION_MESSAGE=bjA.SEMATTRS_EXCEPTION_TYPE=bjA.SEMATTRS_DB_SQL_TABLE=bjA.SEMATTRS_DB_MONGODB_COLLECTION=bjA.SEMATTRS_DB_REDIS_DATABASE_INDEX=bjA.SEMATTRS_DB_HBASE_NAMESPACE=bjA.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=bjA.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=bjA.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=bjA.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=bjA.SEMATTRS_DB_CASSANDRA_TABLE=bjA.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=bjA.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=bjA.SEMATTRS_DB_CASSANDRA_KEYSPACE=bjA.SEMATTRS_DB_MSSQL_INSTANCE_NAME=bjA.SEMATTRS_DB_OPERATION=bjA.SEMATTRS_DB_STATEMENT=bjA.SEMATTRS_DB_NAME=bjA.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=bjA.SEMATTRS_DB_USER=bjA.SEMATTRS_DB_CONNECTION_STRING=bjA.SEMATTRS_DB_SYSTEM=bjA.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=void 0;bjA.SEMATTRS_MESSAGING_DESTINATION_KIND=bjA.SEMATTRS_MESSAGING_DESTINATION=bjA.SEMATTRS_MESSAGING_SYSTEM=bjA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=bjA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=bjA.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=bjA.SEMATTRS_AWS_DYNAMODB_COUNT=bjA.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=bjA.SEMATTRS_AWS_DYNAMODB_SEGMENT=bjA.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=bjA.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=bjA.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=bjA.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=bjA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=bjA.SEMATTRS_AWS_DYNAMODB_SELECT=bjA.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=bjA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=bjA.SEMATTRS_AWS_DYNAMODB_LIMIT=bjA.SEMATTRS_AWS_DYNAMODB_PROJECTION=bjA.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=bjA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=bjA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=bjA.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=bjA.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=bjA.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=bjA.SEMATTRS_HTTP_CLIENT_IP=bjA.SEMATTRS_HTTP_ROUTE=bjA.SEMATTRS_HTTP_SERVER_NAME=bjA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=bjA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=bjA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=bjA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=bjA.SEMATTRS_HTTP_USER_AGENT=bjA.SEMATTRS_HTTP_FLAVOR=bjA.SEMATTRS_HTTP_STATUS_CODE=bjA.SEMATTRS_HTTP_SCHEME=bjA.SEMATTRS_HTTP_HOST=bjA.SEMATTRS_HTTP_TARGET=bjA.SEMATTRS_HTTP_URL=bjA.SEMATTRS_HTTP_METHOD=bjA.SEMATTRS_CODE_LINENO=bjA.SEMATTRS_CODE_FILEPATH=bjA.SEMATTRS_CODE_NAMESPACE=bjA.SEMATTRS_CODE_FUNCTION=bjA.SEMATTRS_THREAD_NAME=bjA.SEMATTRS_THREAD_ID=bjA.SEMATTRS_ENDUSER_SCOPE=bjA.SEMATTRS_ENDUSER_ROLE=bjA.SEMATTRS_ENDUSER_ID=bjA.SEMATTRS_PEER_SERVICE=void 0;bjA.DBSYSTEMVALUES_FILEMAKER=bjA.DBSYSTEMVALUES_DERBY=bjA.DBSYSTEMVALUES_FIREBIRD=bjA.DBSYSTEMVALUES_ADABAS=bjA.DBSYSTEMVALUES_CACHE=bjA.DBSYSTEMVALUES_EDB=bjA.DBSYSTEMVALUES_FIRSTSQL=bjA.DBSYSTEMVALUES_INGRES=bjA.DBSYSTEMVALUES_HANADB=bjA.DBSYSTEMVALUES_MAXDB=bjA.DBSYSTEMVALUES_PROGRESS=bjA.DBSYSTEMVALUES_HSQLDB=bjA.DBSYSTEMVALUES_CLOUDSCAPE=bjA.DBSYSTEMVALUES_HIVE=bjA.DBSYSTEMVALUES_REDSHIFT=bjA.DBSYSTEMVALUES_POSTGRESQL=bjA.DBSYSTEMVALUES_DB2=bjA.DBSYSTEMVALUES_ORACLE=bjA.DBSYSTEMVALUES_MYSQL=bjA.DBSYSTEMVALUES_MSSQL=bjA.DBSYSTEMVALUES_OTHER_SQL=bjA.SemanticAttributes=bjA.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=bjA.SEMATTRS_MESSAGE_COMPRESSED_SIZE=bjA.SEMATTRS_MESSAGE_ID=bjA.SEMATTRS_MESSAGE_TYPE=bjA.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=bjA.SEMATTRS_RPC_JSONRPC_ERROR_CODE=bjA.SEMATTRS_RPC_JSONRPC_REQUEST_ID=bjA.SEMATTRS_RPC_JSONRPC_VERSION=bjA.SEMATTRS_RPC_GRPC_STATUS_CODE=bjA.SEMATTRS_RPC_METHOD=bjA.SEMATTRS_RPC_SERVICE=bjA.SEMATTRS_RPC_SYSTEM=bjA.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=bjA.SEMATTRS_MESSAGING_KAFKA_PARTITION=bjA.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=bjA.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=bjA.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=bjA.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=bjA.SEMATTRS_MESSAGING_CONSUMER_ID=bjA.SEMATTRS_MESSAGING_OPERATION=bjA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=bjA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=bjA.SEMATTRS_MESSAGING_CONVERSATION_ID=bjA.SEMATTRS_MESSAGING_MESSAGE_ID=bjA.SEMATTRS_MESSAGING_URL=bjA.SEMATTRS_MESSAGING_PROTOCOL_VERSION=bjA.SEMATTRS_MESSAGING_PROTOCOL=bjA.SEMATTRS_MESSAGING_TEMP_DESTINATION=void 0;bjA.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=bjA.FaasDocumentOperationValues=bjA.FAASDOCUMENTOPERATIONVALUES_DELETE=bjA.FAASDOCUMENTOPERATIONVALUES_EDIT=bjA.FAASDOCUMENTOPERATIONVALUES_INSERT=bjA.FaasTriggerValues=bjA.FAASTRIGGERVALUES_OTHER=bjA.FAASTRIGGERVALUES_TIMER=bjA.FAASTRIGGERVALUES_PUBSUB=bjA.FAASTRIGGERVALUES_HTTP=bjA.FAASTRIGGERVALUES_DATASOURCE=bjA.DbCassandraConsistencyLevelValues=bjA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=bjA.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=bjA.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=bjA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=bjA.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=bjA.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=bjA.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=bjA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=bjA.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=bjA.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=bjA.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=bjA.DbSystemValues=bjA.DBSYSTEMVALUES_COCKROACHDB=bjA.DBSYSTEMVALUES_MEMCACHED=bjA.DBSYSTEMVALUES_ELASTICSEARCH=bjA.DBSYSTEMVALUES_GEODE=bjA.DBSYSTEMVALUES_NEO4J=bjA.DBSYSTEMVALUES_DYNAMODB=bjA.DBSYSTEMVALUES_COSMOSDB=bjA.DBSYSTEMVALUES_COUCHDB=bjA.DBSYSTEMVALUES_COUCHBASE=bjA.DBSYSTEMVALUES_REDIS=bjA.DBSYSTEMVALUES_MONGODB=bjA.DBSYSTEMVALUES_HBASE=bjA.DBSYSTEMVALUES_CASSANDRA=bjA.DBSYSTEMVALUES_COLDFUSION=bjA.DBSYSTEMVALUES_H2=bjA.DBSYSTEMVALUES_VERTICA=bjA.DBSYSTEMVALUES_TERADATA=bjA.DBSYSTEMVALUES_SYBASE=bjA.DBSYSTEMVALUES_SQLITE=bjA.DBSYSTEMVALUES_POINTBASE=bjA.DBSYSTEMVALUES_PERVASIVE=bjA.DBSYSTEMVALUES_NETEZZA=bjA.DBSYSTEMVALUES_MARIADB=bjA.DBSYSTEMVALUES_INTERBASE=bjA.DBSYSTEMVALUES_INSTANTDB=bjA.DBSYSTEMVALUES_INFORMIX=void 0;bjA.MESSAGINGOPERATIONVALUES_RECEIVE=bjA.MessagingDestinationKindValues=bjA.MESSAGINGDESTINATIONKINDVALUES_TOPIC=bjA.MESSAGINGDESTINATIONKINDVALUES_QUEUE=bjA.HttpFlavorValues=bjA.HTTPFLAVORVALUES_QUIC=bjA.HTTPFLAVORVALUES_SPDY=bjA.HTTPFLAVORVALUES_HTTP_2_0=bjA.HTTPFLAVORVALUES_HTTP_1_1=bjA.HTTPFLAVORVALUES_HTTP_1_0=bjA.NetHostConnectionSubtypeValues=bjA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=bjA.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=bjA.NETHOSTCONNECTIONSUBTYPEVALUES_NR=bjA.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=bjA.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=bjA.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=bjA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=bjA.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=bjA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=bjA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=bjA.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=bjA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=bjA.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=bjA.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=bjA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=bjA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=bjA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=bjA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=bjA.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=bjA.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=bjA.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=bjA.NetHostConnectionTypeValues=bjA.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=bjA.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=bjA.NETHOSTCONNECTIONTYPEVALUES_CELL=bjA.NETHOSTCONNECTIONTYPEVALUES_WIRED=bjA.NETHOSTCONNECTIONTYPEVALUES_WIFI=bjA.NetTransportValues=bjA.NETTRANSPORTVALUES_OTHER=bjA.NETTRANSPORTVALUES_INPROC=bjA.NETTRANSPORTVALUES_PIPE=bjA.NETTRANSPORTVALUES_UNIX=bjA.NETTRANSPORTVALUES_IP=bjA.NETTRANSPORTVALUES_IP_UDP=bjA.NETTRANSPORTVALUES_IP_TCP=bjA.FaasInvokedProviderValues=bjA.FAASINVOKEDPROVIDERVALUES_GCP=bjA.FAASINVOKEDPROVIDERVALUES_AZURE=bjA.FAASINVOKEDPROVIDERVALUES_AWS=void 0;bjA.MessageTypeValues=bjA.MESSAGETYPEVALUES_RECEIVED=bjA.MESSAGETYPEVALUES_SENT=bjA.RpcGrpcStatusCodeValues=bjA.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=bjA.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=bjA.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=bjA.RPCGRPCSTATUSCODEVALUES_INTERNAL=bjA.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=bjA.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=bjA.RPCGRPCSTATUSCODEVALUES_ABORTED=bjA.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=bjA.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=bjA.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=bjA.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=bjA.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=bjA.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=bjA.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=bjA.RPCGRPCSTATUSCODEVALUES_UNKNOWN=bjA.RPCGRPCSTATUSCODEVALUES_CANCELLED=bjA.RPCGRPCSTATUSCODEVALUES_OK=bjA.MessagingOperationValues=bjA.MESSAGINGOPERATIONVALUES_PROCESS=void 0;var O5=sc(),azA="aws.lambda.invoked_arn",ozA="db.system",tzA="db.connection_string",ezA="db.user",A2A="db.jdbc.driver_classname",Q2A="db.name",B2A="db.statement",Y2A="db.operation",J2A="db.mssql.instance_name",C2A="db.cassandra.keyspace",X2A="db.cassandra.page_size",G2A="db.cassandra.consistency_level",F2A="db.cassandra.table",W2A="db.cassandra.idempotence",Z2A="db.cassandra.speculative_execution_count",$2A="db.cassandra.coordinator.id",U2A="db.cassandra.coordinator.dc",E2A="db.hbase.namespace",K2A="db.redis.database_index",V2A="db.mongodb.collection",I2A="db.sql.table",H2A="exception.type",D2A="exception.message",N2A="exception.stacktrace",L2A="exception.escaped",q2A="faas.trigger",M2A="faas.execution",z2A="faas.document.collection",R2A="faas.document.operation",w2A="faas.document.time",j2A="faas.document.name",O2A="faas.time",P2A="faas.cron",T2A="faas.coldstart",S2A="faas.invoked_name",k2A="faas.invoked_provider",_2A="faas.invoked_region",v2A="net.transport",y2A="net.peer.ip",h2A="net.peer.port",g2A="net.peer.name",x2A="net.host.ip",f2A="net.host.port",b2A="net.host.name",m2A="net.host.connection.type",u2A="net.host.connection.subtype",d2A="net.host.carrier.name",c2A="net.host.carrier.mcc",l2A="net.host.carrier.mnc",p2A="net.host.carrier.icc",i2A="peer.service",n2A="enduser.id",s2A="enduser.role",r2A="enduser.scope",a2A="thread.id",o2A="thread.name",t2A="code.function",e2A="code.namespace",A3A="code.filepath",Q3A="code.lineno",B3A="http.method",Y3A="http.url",J3A="http.target",C3A="http.host",X3A="http.scheme",G3A="http.status_code",F3A="http.flavor",W3A="http.user_agent",Z3A="http.request_content_length",$3A="http.request_content_length_uncompressed",U3A="http.response_content_length",E3A="http.response_content_length_uncompressed",K3A="http.server_name",V3A="http.route",I3A="http.client_ip",H3A="aws.dynamodb.table_names",D3A="aws.dynamodb.consumed_capacity",N3A="aws.dynamodb.item_collection_metrics",L3A="aws.dynamodb.provisioned_read_capacity",q3A="aws.dynamodb.provisioned_write_capacity",M3A="aws.dynamodb.consistent_read",z3A="aws.dynamodb.projection",R3A="aws.dynamodb.limit",w3A="aws.dynamodb.attributes_to_get",j3A="aws.dynamodb.index_name",O3A="aws.dynamodb.select",P3A="aws.dynamodb.global_secondary_indexes",T3A="aws.dynamodb.local_secondary_indexes",S3A="aws.dynamodb.exclusive_start_table",k3A="aws.dynamodb.table_count",_3A="aws.dynamodb.scan_forward",v3A="aws.dynamodb.segment",y3A="aws.dynamodb.total_segments",h3A="aws.dynamodb.count",g3A="aws.dynamodb.scanned_count",x3A="aws.dynamodb.attribute_definitions",f3A="aws.dynamodb.global_secondary_index_updates",b3A="messaging.system",m3A="messaging.destination",u3A="messaging.destination_kind",d3A="messaging.temp_destination",c3A="messaging.protocol",l3A="messaging.protocol_version",p3A="messaging.url",i3A="messaging.message_id",n3A="messaging.conversation_id",s3A="messaging.message_payload_size_bytes",r3A="messaging.message_payload_compressed_size_bytes",a3A="messaging.operation",o3A="messaging.consumer_id",t3A="messaging.rabbitmq.routing_key",e3A="messaging.kafka.message_key",ARA="messaging.kafka.consumer_group",QRA="messaging.kafka.client_id",BRA="messaging.kafka.partition",YRA="messaging.kafka.tombstone",JRA="rpc.system",CRA="rpc.service",XRA="rpc.method",GRA="rpc.grpc.status_code",FRA="rpc.jsonrpc.version",WRA="rpc.jsonrpc.request_id",ZRA="rpc.jsonrpc.error_code",$RA="rpc.jsonrpc.error_message",URA="message.type",ERA="message.id",KRA="message.compressed_size",VRA="message.uncompressed_size";bjA.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=azA;bjA.SEMATTRS_DB_SYSTEM=ozA;bjA.SEMATTRS_DB_CONNECTION_STRING=tzA;bjA.SEMATTRS_DB_USER=ezA;bjA.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=A2A;bjA.SEMATTRS_DB_NAME=Q2A;bjA.SEMATTRS_DB_STATEMENT=B2A;bjA.SEMATTRS_DB_OPERATION=Y2A;bjA.SEMATTRS_DB_MSSQL_INSTANCE_NAME=J2A;bjA.SEMATTRS_DB_CASSANDRA_KEYSPACE=C2A;bjA.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=X2A;bjA.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=G2A;bjA.SEMATTRS_DB_CASSANDRA_TABLE=F2A;bjA.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=W2A;bjA.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=Z2A;bjA.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=$2A;bjA.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=U2A;bjA.SEMATTRS_DB_HBASE_NAMESPACE=E2A;bjA.SEMATTRS_DB_REDIS_DATABASE_INDEX=K2A;bjA.SEMATTRS_DB_MONGODB_COLLECTION=V2A;bjA.SEMATTRS_DB_SQL_TABLE=I2A;bjA.SEMATTRS_EXCEPTION_TYPE=H2A;bjA.SEMATTRS_EXCEPTION_MESSAGE=D2A;bjA.SEMATTRS_EXCEPTION_STACKTRACE=N2A;bjA.SEMATTRS_EXCEPTION_ESCAPED=L2A;bjA.SEMATTRS_FAAS_TRIGGER=q2A;bjA.SEMATTRS_FAAS_EXECUTION=M2A;bjA.SEMATTRS_FAAS_DOCUMENT_COLLECTION=z2A;bjA.SEMATTRS_FAAS_DOCUMENT_OPERATION=R2A;bjA.SEMATTRS_FAAS_DOCUMENT_TIME=w2A;bjA.SEMATTRS_FAAS_DOCUMENT_NAME=j2A;bjA.SEMATTRS_FAAS_TIME=O2A;bjA.SEMATTRS_FAAS_CRON=P2A;bjA.SEMATTRS_FAAS_COLDSTART=T2A;bjA.SEMATTRS_FAAS_INVOKED_NAME=S2A;bjA.SEMATTRS_FAAS_INVOKED_PROVIDER=k2A;bjA.SEMATTRS_FAAS_INVOKED_REGION=_2A;bjA.SEMATTRS_NET_TRANSPORT=v2A;bjA.SEMATTRS_NET_PEER_IP=y2A;bjA.SEMATTRS_NET_PEER_PORT=h2A;bjA.SEMATTRS_NET_PEER_NAME=g2A;bjA.SEMATTRS_NET_HOST_IP=x2A;bjA.SEMATTRS_NET_HOST_PORT=f2A;bjA.SEMATTRS_NET_HOST_NAME=b2A;bjA.SEMATTRS_NET_HOST_CONNECTION_TYPE=m2A;bjA.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=u2A;bjA.SEMATTRS_NET_HOST_CARRIER_NAME=d2A;bjA.SEMATTRS_NET_HOST_CARRIER_MCC=c2A;bjA.SEMATTRS_NET_HOST_CARRIER_MNC=l2A;bjA.SEMATTRS_NET_HOST_CARRIER_ICC=p2A;bjA.SEMATTRS_PEER_SERVICE=i2A;bjA.SEMATTRS_ENDUSER_ID=n2A;bjA.SEMATTRS_ENDUSER_ROLE=s2A;bjA.SEMATTRS_ENDUSER_SCOPE=r2A;bjA.SEMATTRS_THREAD_ID=a2A;bjA.SEMATTRS_THREAD_NAME=o2A;bjA.SEMATTRS_CODE_FUNCTION=t2A;bjA.SEMATTRS_CODE_NAMESPACE=e2A;bjA.SEMATTRS_CODE_FILEPATH=A3A;bjA.SEMATTRS_CODE_LINENO=Q3A;bjA.SEMATTRS_HTTP_METHOD=B3A;bjA.SEMATTRS_HTTP_URL=Y3A;bjA.SEMATTRS_HTTP_TARGET=J3A;bjA.SEMATTRS_HTTP_HOST=C3A;bjA.SEMATTRS_HTTP_SCHEME=X3A;bjA.SEMATTRS_HTTP_STATUS_CODE=G3A;bjA.SEMATTRS_HTTP_FLAVOR=F3A;bjA.SEMATTRS_HTTP_USER_AGENT=W3A;bjA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=Z3A;bjA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=$3A;bjA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=U3A;bjA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=E3A;bjA.SEMATTRS_HTTP_SERVER_NAME=K3A;bjA.SEMATTRS_HTTP_ROUTE=V3A;bjA.SEMATTRS_HTTP_CLIENT_IP=I3A;bjA.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=H3A;bjA.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=D3A;bjA.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=N3A;bjA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=L3A;bjA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=q3A;bjA.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=M3A;bjA.SEMATTRS_AWS_DYNAMODB_PROJECTION=z3A;bjA.SEMATTRS_AWS_DYNAMODB_LIMIT=R3A;bjA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=w3A;bjA.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=j3A;bjA.SEMATTRS_AWS_DYNAMODB_SELECT=O3A;bjA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=P3A;bjA.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=T3A;bjA.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=S3A;bjA.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=k3A;bjA.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=_3A;bjA.SEMATTRS_AWS_DYNAMODB_SEGMENT=v3A;bjA.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=y3A;bjA.SEMATTRS_AWS_DYNAMODB_COUNT=h3A;bjA.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=g3A;bjA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=x3A;bjA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=f3A;bjA.SEMATTRS_MESSAGING_SYSTEM=b3A;bjA.SEMATTRS_MESSAGING_DESTINATION=m3A;bjA.SEMATTRS_MESSAGING_DESTINATION_KIND=u3A;bjA.SEMATTRS_MESSAGING_TEMP_DESTINATION=d3A;bjA.SEMATTRS_MESSAGING_PROTOCOL=c3A;bjA.SEMATTRS_MESSAGING_PROTOCOL_VERSION=l3A;bjA.SEMATTRS_MESSAGING_URL=p3A;bjA.SEMATTRS_MESSAGING_MESSAGE_ID=i3A;bjA.SEMATTRS_MESSAGING_CONVERSATION_ID=n3A;bjA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=s3A;bjA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=r3A;bjA.SEMATTRS_MESSAGING_OPERATION=a3A;bjA.SEMATTRS_MESSAGING_CONSUMER_ID=o3A;bjA.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=t3A;bjA.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=e3A;bjA.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=ARA;bjA.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=QRA;bjA.SEMATTRS_MESSAGING_KAFKA_PARTITION=BRA;bjA.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=YRA;bjA.SEMATTRS_RPC_SYSTEM=JRA;bjA.SEMATTRS_RPC_SERVICE=CRA;bjA.SEMATTRS_RPC_METHOD=XRA;bjA.SEMATTRS_RPC_GRPC_STATUS_CODE=GRA;bjA.SEMATTRS_RPC_JSONRPC_VERSION=FRA;bjA.SEMATTRS_RPC_JSONRPC_REQUEST_ID=WRA;bjA.SEMATTRS_RPC_JSONRPC_ERROR_CODE=ZRA;bjA.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=$RA;bjA.SEMATTRS_MESSAGE_TYPE=URA;bjA.SEMATTRS_MESSAGE_ID=ERA;bjA.SEMATTRS_MESSAGE_COMPRESSED_SIZE=KRA;bjA.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=VRA;bjA.SemanticAttributes=(0,O5.createConstMap)([azA,ozA,tzA,ezA,A2A,Q2A,B2A,Y2A,J2A,C2A,X2A,G2A,F2A,W2A,Z2A,$2A,U2A,E2A,K2A,V2A,I2A,H2A,D2A,N2A,L2A,q2A,M2A,z2A,R2A,w2A,j2A,O2A,P2A,T2A,S2A,k2A,_2A,v2A,y2A,h2A,g2A,x2A,f2A,b2A,m2A,u2A,d2A,c2A,l2A,p2A,i2A,n2A,s2A,r2A,a2A,o2A,t2A,e2A,A3A,Q3A,B3A,Y3A,J3A,C3A,X3A,G3A,F3A,W3A,Z3A,$3A,U3A,E3A,K3A,V3A,I3A,H3A,D3A,N3A,L3A,q3A,M3A,z3A,R3A,w3A,j3A,O3A,P3A,T3A,S3A,k3A,_3A,v3A,y3A,h3A,g3A,x3A,f3A,b3A,m3A,u3A,d3A,c3A,l3A,p3A,i3A,n3A,s3A,r3A,a3A,o3A,t3A,e3A,ARA,QRA,BRA,YRA,JRA,CRA,XRA,GRA,FRA,WRA,ZRA,$RA,URA,ERA,KRA,VRA]);var IRA="other_sql",HRA="mssql",DRA="mysql",NRA="oracle",LRA="db2",qRA="postgresql",MRA="redshift",zRA="hive",RRA="cloudscape",wRA="hsqldb",jRA="progress",ORA="maxdb",PRA="hanadb",TRA="ingres",SRA="firstsql",kRA="edb",_RA="cache",vRA="adabas",yRA="firebird",hRA="derby",gRA="filemaker",xRA="informix",fRA="instantdb",bRA="interbase",mRA="mariadb",uRA="netezza",dRA="pervasive",cRA="pointbase",lRA="sqlite",pRA="sybase",iRA="teradata",nRA="vertica",sRA="h2",rRA="coldfusion",aRA="cassandra",oRA="hbase",tRA="mongodb",eRA="redis",AwA="couchbase",QwA="couchdb",BwA="cosmosdb",YwA="dynamodb",JwA="neo4j",CwA="geode",XwA="elasticsearch",GwA="memcached",FwA="cockroachdb";bjA.DBSYSTEMVALUES_OTHER_SQL=IRA;bjA.DBSYSTEMVALUES_MSSQL=HRA;bjA.DBSYSTEMVALUES_MYSQL=DRA;bjA.DBSYSTEMVALUES_ORACLE=NRA;bjA.DBSYSTEMVALUES_DB2=LRA;bjA.DBSYSTEMVALUES_POSTGRESQL=qRA;bjA.DBSYSTEMVALUES_REDSHIFT=MRA;bjA.DBSYSTEMVALUES_HIVE=zRA;bjA.DBSYSTEMVALUES_CLOUDSCAPE=RRA;bjA.DBSYSTEMVALUES_HSQLDB=wRA;bjA.DBSYSTEMVALUES_PROGRESS=jRA;bjA.DBSYSTEMVALUES_MAXDB=ORA;bjA.DBSYSTEMVALUES_HANADB=PRA;bjA.DBSYSTEMVALUES_INGRES=TRA;bjA.DBSYSTEMVALUES_FIRSTSQL=SRA;bjA.DBSYSTEMVALUES_EDB=kRA;bjA.DBSYSTEMVALUES_CACHE=_RA;bjA.DBSYSTEMVALUES_ADABAS=vRA;bjA.DBSYSTEMVALUES_FIREBIRD=yRA;bjA.DBSYSTEMVALUES_DERBY=hRA;bjA.DBSYSTEMVALUES_FILEMAKER=gRA;bjA.DBSYSTEMVALUES_INFORMIX=xRA;bjA.DBSYSTEMVALUES_INSTANTDB=fRA;bjA.DBSYSTEMVALUES_INTERBASE=bRA;bjA.DBSYSTEMVALUES_MARIADB=mRA;bjA.DBSYSTEMVALUES_NETEZZA=uRA;bjA.DBSYSTEMVALUES_PERVASIVE=dRA;bjA.DBSYSTEMVALUES_POINTBASE=cRA;bjA.DBSYSTEMVALUES_SQLITE=lRA;bjA.DBSYSTEMVALUES_SYBASE=pRA;bjA.DBSYSTEMVALUES_TERADATA=iRA;bjA.DBSYSTEMVALUES_VERTICA=nRA;bjA.DBSYSTEMVALUES_H2=sRA;bjA.DBSYSTEMVALUES_COLDFUSION=rRA;bjA.DBSYSTEMVALUES_CASSANDRA=aRA;bjA.DBSYSTEMVALUES_HBASE=oRA;bjA.DBSYSTEMVALUES_MONGODB=tRA;bjA.DBSYSTEMVALUES_REDIS=eRA;bjA.DBSYSTEMVALUES_COUCHBASE=AwA;bjA.DBSYSTEMVALUES_COUCHDB=QwA;bjA.DBSYSTEMVALUES_COSMOSDB=BwA;bjA.DBSYSTEMVALUES_DYNAMODB=YwA;bjA.DBSYSTEMVALUES_NEO4J=JwA;bjA.DBSYSTEMVALUES_GEODE=CwA;bjA.DBSYSTEMVALUES_ELASTICSEARCH=XwA;bjA.DBSYSTEMVALUES_MEMCACHED=GwA;bjA.DBSYSTEMVALUES_COCKROACHDB=FwA;bjA.DbSystemValues=(0,O5.createConstMap)([IRA,HRA,DRA,NRA,LRA,qRA,MRA,zRA,RRA,wRA,jRA,ORA,PRA,TRA,SRA,kRA,_RA,vRA,yRA,hRA,gRA,xRA,fRA,bRA,mRA,uRA,dRA,cRA,lRA,pRA,iRA,nRA,sRA,rRA,aRA,oRA,tRA,eRA,AwA,QwA,BwA,YwA,JwA,CwA,XwA,GwA,FwA]);var WwA="all",ZwA="each_quorum",$wA="quorum",UwA="local_quorum",EwA="one",KwA="two",VwA="three",IwA="local_one",HwA="any",DwA="serial",NwA="local_serial";bjA.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=WwA;bjA.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=ZwA;bjA.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=$wA;bjA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=UwA;bjA.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=EwA;bjA.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=KwA;bjA.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=VwA;bjA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=IwA;bjA.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=HwA;bjA.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=DwA;bjA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=NwA;bjA.DbCassandraConsistencyLevelValues=(0,O5.createConstMap)([WwA,ZwA,$wA,UwA,EwA,KwA,VwA,IwA,HwA,DwA,NwA]);var LwA="datasource",qwA="http",MwA="pubsub",zwA="timer",RwA="other";bjA.FAASTRIGGERVALUES_DATASOURCE=LwA;bjA.FAASTRIGGERVALUES_HTTP=qwA;bjA.FAASTRIGGERVALUES_PUBSUB=MwA;bjA.FAASTRIGGERVALUES_TIMER=zwA;bjA.FAASTRIGGERVALUES_OTHER=RwA;bjA.FaasTriggerValues=(0,O5.createConstMap)([LwA,qwA,MwA,zwA,RwA]);var wwA="insert",jwA="edit",OwA="delete";bjA.FAASDOCUMENTOPERATIONVALUES_INSERT=wwA;bjA.FAASDOCUMENTOPERATIONVALUES_EDIT=jwA;bjA.FAASDOCUMENTOPERATIONVALUES_DELETE=OwA;bjA.FaasDocumentOperationValues=(0,O5.createConstMap)([wwA,jwA,OwA]);var PwA="alibaba_cloud",TwA="aws",SwA="azure",kwA="gcp";bjA.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=PwA;bjA.FAASINVOKEDPROVIDERVALUES_AWS=TwA;bjA.FAASINVOKEDPROVIDERVALUES_AZURE=SwA;bjA.FAASINVOKEDPROVIDERVALUES_GCP=kwA;bjA.FaasInvokedProviderValues=(0,O5.createConstMap)([PwA,TwA,SwA,kwA]);var _wA="ip_tcp",vwA="ip_udp",ywA="ip",hwA="unix",gwA="pipe",xwA="inproc",fwA="other";bjA.NETTRANSPORTVALUES_IP_TCP=_wA;bjA.NETTRANSPORTVALUES_IP_UDP=vwA;bjA.NETTRANSPORTVALUES_IP=ywA;bjA.NETTRANSPORTVALUES_UNIX=hwA;bjA.NETTRANSPORTVALUES_PIPE=gwA;bjA.NETTRANSPORTVALUES_INPROC=xwA;bjA.NETTRANSPORTVALUES_OTHER=fwA;bjA.NetTransportValues=(0,O5.createConstMap)([_wA,vwA,ywA,hwA,gwA,xwA,fwA]);var bwA="wifi",mwA="wired",uwA="cell",dwA="unavailable",cwA="unknown";bjA.NETHOSTCONNECTIONTYPEVALUES_WIFI=bwA;bjA.NETHOSTCONNECTIONTYPEVALUES_WIRED=mwA;bjA.NETHOSTCONNECTIONTYPEVALUES_CELL=uwA;bjA.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=dwA;bjA.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=cwA;bjA.NetHostConnectionTypeValues=(0,O5.createConstMap)([bwA,mwA,uwA,dwA,cwA]);var lwA="gprs",pwA="edge",iwA="umts",nwA="cdma",swA="evdo_0",rwA="evdo_a",awA="cdma2000_1xrtt",owA="hsdpa",twA="hsupa",ewA="hspa",AjA="iden",QjA="evdo_b",BjA="lte",YjA="ehrpd",JjA="hspap",CjA="gsm",XjA="td_scdma",GjA="iwlan",FjA="nr",WjA="nrnsa",ZjA="lte_ca";bjA.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=lwA;bjA.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=pwA;bjA.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=iwA;bjA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=nwA;bjA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=swA;bjA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=rwA;bjA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=awA;bjA.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=owA;bjA.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=twA;bjA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=ewA;bjA.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=AjA;bjA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=QjA;bjA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=BjA;bjA.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=YjA;bjA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=JjA;bjA.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=CjA;bjA.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=XjA;bjA.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=GjA;bjA.NETHOSTCONNECTIONSUBTYPEVALUES_NR=FjA;bjA.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=WjA;bjA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=ZjA;bjA.NetHostConnectionSubtypeValues=(0,O5.createConstMap)([lwA,pwA,iwA,nwA,swA,rwA,awA,owA,twA,ewA,AjA,QjA,BjA,YjA,JjA,CjA,XjA,GjA,FjA,WjA,ZjA]);var $jA="1.0",UjA="1.1",EjA="2.0",KjA="SPDY",VjA="QUIC";bjA.HTTPFLAVORVALUES_HTTP_1_0=$jA;bjA.HTTPFLAVORVALUES_HTTP_1_1=UjA;bjA.HTTPFLAVORVALUES_HTTP_2_0=EjA;bjA.HTTPFLAVORVALUES_SPDY=KjA;bjA.HTTPFLAVORVALUES_QUIC=VjA;bjA.HttpFlavorValues={HTTP_1_0:$jA,HTTP_1_1:UjA,HTTP_2_0:EjA,SPDY:KjA,QUIC:VjA};var IjA="queue",HjA="topic";bjA.MESSAGINGDESTINATIONKINDVALUES_QUEUE=IjA;bjA.MESSAGINGDESTINATIONKINDVALUES_TOPIC=HjA;bjA.MessagingDestinationKindValues=(0,O5.createConstMap)([IjA,HjA]);var DjA="receive",NjA="process";bjA.MESSAGINGOPERATIONVALUES_RECEIVE=DjA;bjA.MESSAGINGOPERATIONVALUES_PROCESS=NjA;bjA.MessagingOperationValues=(0,O5.createConstMap)([DjA,NjA]);var LjA=0,qjA=1,MjA=2,zjA=3,RjA=4,wjA=5,jjA=6,OjA=7,PjA=8,TjA=9,SjA=10,kjA=11,_jA=12,vjA=13,yjA=14,hjA=15,gjA=16;bjA.RPCGRPCSTATUSCODEVALUES_OK=LjA;bjA.RPCGRPCSTATUSCODEVALUES_CANCELLED=qjA;bjA.RPCGRPCSTATUSCODEVALUES_UNKNOWN=MjA;bjA.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=zjA;bjA.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=RjA;bjA.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=wjA;bjA.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=jjA;bjA.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=OjA;bjA.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=PjA;bjA.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=TjA;bjA.RPCGRPCSTATUSCODEVALUES_ABORTED=SjA;bjA.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=kjA;bjA.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=_jA;bjA.RPCGRPCSTATUSCODEVALUES_INTERNAL=vjA;bjA.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=yjA;bjA.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=hjA;bjA.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=gjA;bjA.RpcGrpcStatusCodeValues={OK:LjA,CANCELLED:qjA,UNKNOWN:MjA,INVALID_ARGUMENT:zjA,DEADLINE_EXCEEDED:RjA,NOT_FOUND:wjA,ALREADY_EXISTS:jjA,PERMISSION_DENIED:OjA,RESOURCE_EXHAUSTED:PjA,FAILED_PRECONDITION:TjA,ABORTED:SjA,OUT_OF_RANGE:kjA,UNIMPLEMENTED:_jA,INTERNAL:vjA,UNAVAILABLE:yjA,DATA_LOSS:hjA,UNAUTHENTICATED:gjA};var xjA="SENT",fjA="RECEIVED";bjA.MESSAGETYPEVALUES_SENT=xjA;bjA.MESSAGETYPEVALUES_RECEIVED=fjA;bjA.MessageTypeValues=(0,O5.createConstMap)([xjA,fjA])});var njA=R((dZ)=>{var JLB=dZ&&dZ.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),CLB=dZ&&dZ.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))JLB(Q,A,B)};Object.defineProperty(dZ,"__esModule",{value:!0});CLB(ijA(),dZ)});var MTA=R((DTA)=>{Object.defineProperty(DTA,"__esModule",{value:!0});DTA.SEMRESATTRS_K8S_STATEFULSET_NAME=DTA.SEMRESATTRS_K8S_STATEFULSET_UID=DTA.SEMRESATTRS_K8S_DEPLOYMENT_NAME=DTA.SEMRESATTRS_K8S_DEPLOYMENT_UID=DTA.SEMRESATTRS_K8S_REPLICASET_NAME=DTA.SEMRESATTRS_K8S_REPLICASET_UID=DTA.SEMRESATTRS_K8S_CONTAINER_NAME=DTA.SEMRESATTRS_K8S_POD_NAME=DTA.SEMRESATTRS_K8S_POD_UID=DTA.SEMRESATTRS_K8S_NAMESPACE_NAME=DTA.SEMRESATTRS_K8S_NODE_UID=DTA.SEMRESATTRS_K8S_NODE_NAME=DTA.SEMRESATTRS_K8S_CLUSTER_NAME=DTA.SEMRESATTRS_HOST_IMAGE_VERSION=DTA.SEMRESATTRS_HOST_IMAGE_ID=DTA.SEMRESATTRS_HOST_IMAGE_NAME=DTA.SEMRESATTRS_HOST_ARCH=DTA.SEMRESATTRS_HOST_TYPE=DTA.SEMRESATTRS_HOST_NAME=DTA.SEMRESATTRS_HOST_ID=DTA.SEMRESATTRS_FAAS_MAX_MEMORY=DTA.SEMRESATTRS_FAAS_INSTANCE=DTA.SEMRESATTRS_FAAS_VERSION=DTA.SEMRESATTRS_FAAS_ID=DTA.SEMRESATTRS_FAAS_NAME=DTA.SEMRESATTRS_DEVICE_MODEL_NAME=DTA.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=DTA.SEMRESATTRS_DEVICE_ID=DTA.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=DTA.SEMRESATTRS_CONTAINER_IMAGE_TAG=DTA.SEMRESATTRS_CONTAINER_IMAGE_NAME=DTA.SEMRESATTRS_CONTAINER_RUNTIME=DTA.SEMRESATTRS_CONTAINER_ID=DTA.SEMRESATTRS_CONTAINER_NAME=DTA.SEMRESATTRS_AWS_LOG_STREAM_ARNS=DTA.SEMRESATTRS_AWS_LOG_STREAM_NAMES=DTA.SEMRESATTRS_AWS_LOG_GROUP_ARNS=DTA.SEMRESATTRS_AWS_LOG_GROUP_NAMES=DTA.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=DTA.SEMRESATTRS_AWS_ECS_TASK_REVISION=DTA.SEMRESATTRS_AWS_ECS_TASK_FAMILY=DTA.SEMRESATTRS_AWS_ECS_TASK_ARN=DTA.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=DTA.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=DTA.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=DTA.SEMRESATTRS_CLOUD_PLATFORM=DTA.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=DTA.SEMRESATTRS_CLOUD_REGION=DTA.SEMRESATTRS_CLOUD_ACCOUNT_ID=DTA.SEMRESATTRS_CLOUD_PROVIDER=void 0;DTA.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=DTA.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=DTA.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=DTA.CLOUDPLATFORMVALUES_AZURE_AKS=DTA.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=DTA.CLOUDPLATFORMVALUES_AZURE_VM=DTA.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=DTA.CLOUDPLATFORMVALUES_AWS_LAMBDA=DTA.CLOUDPLATFORMVALUES_AWS_EKS=DTA.CLOUDPLATFORMVALUES_AWS_ECS=DTA.CLOUDPLATFORMVALUES_AWS_EC2=DTA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=DTA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=DTA.CloudProviderValues=DTA.CLOUDPROVIDERVALUES_GCP=DTA.CLOUDPROVIDERVALUES_AZURE=DTA.CLOUDPROVIDERVALUES_AWS=DTA.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=DTA.SemanticResourceAttributes=DTA.SEMRESATTRS_WEBENGINE_DESCRIPTION=DTA.SEMRESATTRS_WEBENGINE_VERSION=DTA.SEMRESATTRS_WEBENGINE_NAME=DTA.SEMRESATTRS_TELEMETRY_AUTO_VERSION=DTA.SEMRESATTRS_TELEMETRY_SDK_VERSION=DTA.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=DTA.SEMRESATTRS_TELEMETRY_SDK_NAME=DTA.SEMRESATTRS_SERVICE_VERSION=DTA.SEMRESATTRS_SERVICE_INSTANCE_ID=DTA.SEMRESATTRS_SERVICE_NAMESPACE=DTA.SEMRESATTRS_SERVICE_NAME=DTA.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=DTA.SEMRESATTRS_PROCESS_RUNTIME_VERSION=DTA.SEMRESATTRS_PROCESS_RUNTIME_NAME=DTA.SEMRESATTRS_PROCESS_OWNER=DTA.SEMRESATTRS_PROCESS_COMMAND_ARGS=DTA.SEMRESATTRS_PROCESS_COMMAND_LINE=DTA.SEMRESATTRS_PROCESS_COMMAND=DTA.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=DTA.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=DTA.SEMRESATTRS_PROCESS_PID=DTA.SEMRESATTRS_OS_VERSION=DTA.SEMRESATTRS_OS_NAME=DTA.SEMRESATTRS_OS_DESCRIPTION=DTA.SEMRESATTRS_OS_TYPE=DTA.SEMRESATTRS_K8S_CRONJOB_NAME=DTA.SEMRESATTRS_K8S_CRONJOB_UID=DTA.SEMRESATTRS_K8S_JOB_NAME=DTA.SEMRESATTRS_K8S_JOB_UID=DTA.SEMRESATTRS_K8S_DAEMONSET_NAME=DTA.SEMRESATTRS_K8S_DAEMONSET_UID=void 0;DTA.TelemetrySdkLanguageValues=DTA.TELEMETRYSDKLANGUAGEVALUES_WEBJS=DTA.TELEMETRYSDKLANGUAGEVALUES_RUBY=DTA.TELEMETRYSDKLANGUAGEVALUES_PYTHON=DTA.TELEMETRYSDKLANGUAGEVALUES_PHP=DTA.TELEMETRYSDKLANGUAGEVALUES_NODEJS=DTA.TELEMETRYSDKLANGUAGEVALUES_JAVA=DTA.TELEMETRYSDKLANGUAGEVALUES_GO=DTA.TELEMETRYSDKLANGUAGEVALUES_ERLANG=DTA.TELEMETRYSDKLANGUAGEVALUES_DOTNET=DTA.TELEMETRYSDKLANGUAGEVALUES_CPP=DTA.OsTypeValues=DTA.OSTYPEVALUES_Z_OS=DTA.OSTYPEVALUES_SOLARIS=DTA.OSTYPEVALUES_AIX=DTA.OSTYPEVALUES_HPUX=DTA.OSTYPEVALUES_DRAGONFLYBSD=DTA.OSTYPEVALUES_OPENBSD=DTA.OSTYPEVALUES_NETBSD=DTA.OSTYPEVALUES_FREEBSD=DTA.OSTYPEVALUES_DARWIN=DTA.OSTYPEVALUES_LINUX=DTA.OSTYPEVALUES_WINDOWS=DTA.HostArchValues=DTA.HOSTARCHVALUES_X86=DTA.HOSTARCHVALUES_PPC64=DTA.HOSTARCHVALUES_PPC32=DTA.HOSTARCHVALUES_IA64=DTA.HOSTARCHVALUES_ARM64=DTA.HOSTARCHVALUES_ARM32=DTA.HOSTARCHVALUES_AMD64=DTA.AwsEcsLaunchtypeValues=DTA.AWSECSLAUNCHTYPEVALUES_FARGATE=DTA.AWSECSLAUNCHTYPEVALUES_EC2=DTA.CloudPlatformValues=DTA.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=DTA.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=DTA.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=DTA.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=void 0;var cZ=sc(),sjA="cloud.provider",rjA="cloud.account.id",ajA="cloud.region",ojA="cloud.availability_zone",tjA="cloud.platform",ejA="aws.ecs.container.arn",AOA="aws.ecs.cluster.arn",QOA="aws.ecs.launchtype",BOA="aws.ecs.task.arn",YOA="aws.ecs.task.family",JOA="aws.ecs.task.revision",COA="aws.eks.cluster.arn",XOA="aws.log.group.names",GOA="aws.log.group.arns",FOA="aws.log.stream.names",WOA="aws.log.stream.arns",ZOA="container.name",$OA="container.id",UOA="container.runtime",EOA="container.image.name",KOA="container.image.tag",VOA="deployment.environment",IOA="device.id",HOA="device.model.identifier",DOA="device.model.name",NOA="faas.name",LOA="faas.id",qOA="faas.version",MOA="faas.instance",zOA="faas.max_memory",ROA="host.id",wOA="host.name",jOA="host.type",OOA="host.arch",POA="host.image.name",TOA="host.image.id",SOA="host.image.version",kOA="k8s.cluster.name",_OA="k8s.node.name",vOA="k8s.node.uid",yOA="k8s.namespace.name",hOA="k8s.pod.uid",gOA="k8s.pod.name",xOA="k8s.container.name",fOA="k8s.replicaset.uid",bOA="k8s.replicaset.name",mOA="k8s.deployment.uid",uOA="k8s.deployment.name",dOA="k8s.statefulset.uid",cOA="k8s.statefulset.name",lOA="k8s.daemonset.uid",pOA="k8s.daemonset.name",iOA="k8s.job.uid",nOA="k8s.job.name",sOA="k8s.cronjob.uid",rOA="k8s.cronjob.name",aOA="os.type",oOA="os.description",tOA="os.name",eOA="os.version",APA="process.pid",QPA="process.executable.name",BPA="process.executable.path",YPA="process.command",JPA="process.command_line",CPA="process.command_args",XPA="process.owner",GPA="process.runtime.name",FPA="process.runtime.version",WPA="process.runtime.description",ZPA="service.name",$PA="service.namespace",UPA="service.instance.id",EPA="service.version",KPA="telemetry.sdk.name",VPA="telemetry.sdk.language",IPA="telemetry.sdk.version",HPA="telemetry.auto.version",DPA="webengine.name",NPA="webengine.version",LPA="webengine.description";DTA.SEMRESATTRS_CLOUD_PROVIDER=sjA;DTA.SEMRESATTRS_CLOUD_ACCOUNT_ID=rjA;DTA.SEMRESATTRS_CLOUD_REGION=ajA;DTA.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=ojA;DTA.SEMRESATTRS_CLOUD_PLATFORM=tjA;DTA.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=ejA;DTA.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=AOA;DTA.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=QOA;DTA.SEMRESATTRS_AWS_ECS_TASK_ARN=BOA;DTA.SEMRESATTRS_AWS_ECS_TASK_FAMILY=YOA;DTA.SEMRESATTRS_AWS_ECS_TASK_REVISION=JOA;DTA.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=COA;DTA.SEMRESATTRS_AWS_LOG_GROUP_NAMES=XOA;DTA.SEMRESATTRS_AWS_LOG_GROUP_ARNS=GOA;DTA.SEMRESATTRS_AWS_LOG_STREAM_NAMES=FOA;DTA.SEMRESATTRS_AWS_LOG_STREAM_ARNS=WOA;DTA.SEMRESATTRS_CONTAINER_NAME=ZOA;DTA.SEMRESATTRS_CONTAINER_ID=$OA;DTA.SEMRESATTRS_CONTAINER_RUNTIME=UOA;DTA.SEMRESATTRS_CONTAINER_IMAGE_NAME=EOA;DTA.SEMRESATTRS_CONTAINER_IMAGE_TAG=KOA;DTA.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=VOA;DTA.SEMRESATTRS_DEVICE_ID=IOA;DTA.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=HOA;DTA.SEMRESATTRS_DEVICE_MODEL_NAME=DOA;DTA.SEMRESATTRS_FAAS_NAME=NOA;DTA.SEMRESATTRS_FAAS_ID=LOA;DTA.SEMRESATTRS_FAAS_VERSION=qOA;DTA.SEMRESATTRS_FAAS_INSTANCE=MOA;DTA.SEMRESATTRS_FAAS_MAX_MEMORY=zOA;DTA.SEMRESATTRS_HOST_ID=ROA;DTA.SEMRESATTRS_HOST_NAME=wOA;DTA.SEMRESATTRS_HOST_TYPE=jOA;DTA.SEMRESATTRS_HOST_ARCH=OOA;DTA.SEMRESATTRS_HOST_IMAGE_NAME=POA;DTA.SEMRESATTRS_HOST_IMAGE_ID=TOA;DTA.SEMRESATTRS_HOST_IMAGE_VERSION=SOA;DTA.SEMRESATTRS_K8S_CLUSTER_NAME=kOA;DTA.SEMRESATTRS_K8S_NODE_NAME=_OA;DTA.SEMRESATTRS_K8S_NODE_UID=vOA;DTA.SEMRESATTRS_K8S_NAMESPACE_NAME=yOA;DTA.SEMRESATTRS_K8S_POD_UID=hOA;DTA.SEMRESATTRS_K8S_POD_NAME=gOA;DTA.SEMRESATTRS_K8S_CONTAINER_NAME=xOA;DTA.SEMRESATTRS_K8S_REPLICASET_UID=fOA;DTA.SEMRESATTRS_K8S_REPLICASET_NAME=bOA;DTA.SEMRESATTRS_K8S_DEPLOYMENT_UID=mOA;DTA.SEMRESATTRS_K8S_DEPLOYMENT_NAME=uOA;DTA.SEMRESATTRS_K8S_STATEFULSET_UID=dOA;DTA.SEMRESATTRS_K8S_STATEFULSET_NAME=cOA;DTA.SEMRESATTRS_K8S_DAEMONSET_UID=lOA;DTA.SEMRESATTRS_K8S_DAEMONSET_NAME=pOA;DTA.SEMRESATTRS_K8S_JOB_UID=iOA;DTA.SEMRESATTRS_K8S_JOB_NAME=nOA;DTA.SEMRESATTRS_K8S_CRONJOB_UID=sOA;DTA.SEMRESATTRS_K8S_CRONJOB_NAME=rOA;DTA.SEMRESATTRS_OS_TYPE=aOA;DTA.SEMRESATTRS_OS_DESCRIPTION=oOA;DTA.SEMRESATTRS_OS_NAME=tOA;DTA.SEMRESATTRS_OS_VERSION=eOA;DTA.SEMRESATTRS_PROCESS_PID=APA;DTA.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=QPA;DTA.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=BPA;DTA.SEMRESATTRS_PROCESS_COMMAND=YPA;DTA.SEMRESATTRS_PROCESS_COMMAND_LINE=JPA;DTA.SEMRESATTRS_PROCESS_COMMAND_ARGS=CPA;DTA.SEMRESATTRS_PROCESS_OWNER=XPA;DTA.SEMRESATTRS_PROCESS_RUNTIME_NAME=GPA;DTA.SEMRESATTRS_PROCESS_RUNTIME_VERSION=FPA;DTA.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=WPA;DTA.SEMRESATTRS_SERVICE_NAME=ZPA;DTA.SEMRESATTRS_SERVICE_NAMESPACE=$PA;DTA.SEMRESATTRS_SERVICE_INSTANCE_ID=UPA;DTA.SEMRESATTRS_SERVICE_VERSION=EPA;DTA.SEMRESATTRS_TELEMETRY_SDK_NAME=KPA;DTA.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=VPA;DTA.SEMRESATTRS_TELEMETRY_SDK_VERSION=IPA;DTA.SEMRESATTRS_TELEMETRY_AUTO_VERSION=HPA;DTA.SEMRESATTRS_WEBENGINE_NAME=DPA;DTA.SEMRESATTRS_WEBENGINE_VERSION=NPA;DTA.SEMRESATTRS_WEBENGINE_DESCRIPTION=LPA;DTA.SemanticResourceAttributes=(0,cZ.createConstMap)([sjA,rjA,ajA,ojA,tjA,ejA,AOA,QOA,BOA,YOA,JOA,COA,XOA,GOA,FOA,WOA,ZOA,$OA,UOA,EOA,KOA,VOA,IOA,HOA,DOA,NOA,LOA,qOA,MOA,zOA,ROA,wOA,jOA,OOA,POA,TOA,SOA,kOA,_OA,vOA,yOA,hOA,gOA,xOA,fOA,bOA,mOA,uOA,dOA,cOA,lOA,pOA,iOA,nOA,sOA,rOA,aOA,oOA,tOA,eOA,APA,QPA,BPA,YPA,JPA,CPA,XPA,GPA,FPA,WPA,ZPA,$PA,UPA,EPA,KPA,VPA,IPA,HPA,DPA,NPA,LPA]);var qPA="alibaba_cloud",MPA="aws",zPA="azure",RPA="gcp";DTA.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=qPA;DTA.CLOUDPROVIDERVALUES_AWS=MPA;DTA.CLOUDPROVIDERVALUES_AZURE=zPA;DTA.CLOUDPROVIDERVALUES_GCP=RPA;DTA.CloudProviderValues=(0,cZ.createConstMap)([qPA,MPA,zPA,RPA]);var wPA="alibaba_cloud_ecs",jPA="alibaba_cloud_fc",OPA="aws_ec2",PPA="aws_ecs",TPA="aws_eks",SPA="aws_lambda",kPA="aws_elastic_beanstalk",_PA="azure_vm",vPA="azure_container_instances",yPA="azure_aks",hPA="azure_functions",gPA="azure_app_service",xPA="gcp_compute_engine",fPA="gcp_cloud_run",bPA="gcp_kubernetes_engine",mPA="gcp_cloud_functions",uPA="gcp_app_engine";DTA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=wPA;DTA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=jPA;DTA.CLOUDPLATFORMVALUES_AWS_EC2=OPA;DTA.CLOUDPLATFORMVALUES_AWS_ECS=PPA;DTA.CLOUDPLATFORMVALUES_AWS_EKS=TPA;DTA.CLOUDPLATFORMVALUES_AWS_LAMBDA=SPA;DTA.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=kPA;DTA.CLOUDPLATFORMVALUES_AZURE_VM=_PA;DTA.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=vPA;DTA.CLOUDPLATFORMVALUES_AZURE_AKS=yPA;DTA.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=hPA;DTA.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=gPA;DTA.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=xPA;DTA.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=fPA;DTA.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=bPA;DTA.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=mPA;DTA.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=uPA;DTA.CloudPlatformValues=(0,cZ.createConstMap)([wPA,jPA,OPA,PPA,TPA,SPA,kPA,_PA,vPA,yPA,hPA,gPA,xPA,fPA,bPA,mPA,uPA]);var dPA="ec2",cPA="fargate";DTA.AWSECSLAUNCHTYPEVALUES_EC2=dPA;DTA.AWSECSLAUNCHTYPEVALUES_FARGATE=cPA;DTA.AwsEcsLaunchtypeValues=(0,cZ.createConstMap)([dPA,cPA]);var lPA="amd64",pPA="arm32",iPA="arm64",nPA="ia64",sPA="ppc32",rPA="ppc64",aPA="x86";DTA.HOSTARCHVALUES_AMD64=lPA;DTA.HOSTARCHVALUES_ARM32=pPA;DTA.HOSTARCHVALUES_ARM64=iPA;DTA.HOSTARCHVALUES_IA64=nPA;DTA.HOSTARCHVALUES_PPC32=sPA;DTA.HOSTARCHVALUES_PPC64=rPA;DTA.HOSTARCHVALUES_X86=aPA;DTA.HostArchValues=(0,cZ.createConstMap)([lPA,pPA,iPA,nPA,sPA,rPA,aPA]);var oPA="windows",tPA="linux",ePA="darwin",ATA="freebsd",QTA="netbsd",BTA="openbsd",YTA="dragonflybsd",JTA="hpux",CTA="aix",XTA="solaris",GTA="z_os";DTA.OSTYPEVALUES_WINDOWS=oPA;DTA.OSTYPEVALUES_LINUX=tPA;DTA.OSTYPEVALUES_DARWIN=ePA;DTA.OSTYPEVALUES_FREEBSD=ATA;DTA.OSTYPEVALUES_NETBSD=QTA;DTA.OSTYPEVALUES_OPENBSD=BTA;DTA.OSTYPEVALUES_DRAGONFLYBSD=YTA;DTA.OSTYPEVALUES_HPUX=JTA;DTA.OSTYPEVALUES_AIX=CTA;DTA.OSTYPEVALUES_SOLARIS=XTA;DTA.OSTYPEVALUES_Z_OS=GTA;DTA.OsTypeValues=(0,cZ.createConstMap)([oPA,tPA,ePA,ATA,QTA,BTA,YTA,JTA,CTA,XTA,GTA]);var FTA="cpp",WTA="dotnet",ZTA="erlang",$TA="go",UTA="java",ETA="nodejs",KTA="php",VTA="python",ITA="ruby",HTA="webjs";DTA.TELEMETRYSDKLANGUAGEVALUES_CPP=FTA;DTA.TELEMETRYSDKLANGUAGEVALUES_DOTNET=WTA;DTA.TELEMETRYSDKLANGUAGEVALUES_ERLANG=ZTA;DTA.TELEMETRYSDKLANGUAGEVALUES_GO=$TA;DTA.TELEMETRYSDKLANGUAGEVALUES_JAVA=UTA;DTA.TELEMETRYSDKLANGUAGEVALUES_NODEJS=ETA;DTA.TELEMETRYSDKLANGUAGEVALUES_PHP=KTA;DTA.TELEMETRYSDKLANGUAGEVALUES_PYTHON=VTA;DTA.TELEMETRYSDKLANGUAGEVALUES_RUBY=ITA;DTA.TELEMETRYSDKLANGUAGEVALUES_WEBJS=HTA;DTA.TelemetrySdkLanguageValues=(0,cZ.createConstMap)([FTA,WTA,ZTA,$TA,UTA,ETA,KTA,VTA,ITA,HTA])});var zTA=R((lZ)=>{var yMB=lZ&&lZ.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),hMB=lZ&&lZ.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))yMB(Q,A,B)};Object.defineProperty(lZ,"__esModule",{value:!0});hMB(MTA(),lZ)});var PTA=R((RTA)=>{Object.defineProperty(RTA,"__esModule",{value:!0});RTA.HTTP_REQUEST_METHOD_VALUE_POST=RTA.HTTP_REQUEST_METHOD_VALUE_PATCH=RTA.HTTP_REQUEST_METHOD_VALUE_OPTIONS=RTA.HTTP_REQUEST_METHOD_VALUE_HEAD=RTA.HTTP_REQUEST_METHOD_VALUE_GET=RTA.HTTP_REQUEST_METHOD_VALUE_DELETE=RTA.HTTP_REQUEST_METHOD_VALUE_CONNECT=RTA.HTTP_REQUEST_METHOD_VALUE_OTHER=RTA.ATTR_HTTP_REQUEST_METHOD=RTA.ATTR_HTTP_REQUEST_HEADER=RTA.ATTR_EXCEPTION_TYPE=RTA.ATTR_EXCEPTION_STACKTRACE=RTA.ATTR_EXCEPTION_MESSAGE=RTA.ATTR_EXCEPTION_ESCAPED=RTA.ERROR_TYPE_VALUE_OTHER=RTA.ATTR_ERROR_TYPE=RTA.ATTR_CLIENT_PORT=RTA.ATTR_CLIENT_ADDRESS=RTA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS=RTA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE=RTA.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS=RTA.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK=RTA.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED=RTA.ATTR_ASPNETCORE_RATE_LIMITING_POLICY=RTA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED=RTA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED=RTA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED=RTA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED=RTA.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT=RTA.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE=RTA.ATTR_TELEMETRY_SDK_VERSION=RTA.ATTR_TELEMETRY_SDK_NAME=RTA.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS=RTA.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT=RTA.TELEMETRY_SDK_LANGUAGE_VALUE_RUST=RTA.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY=RTA.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON=RTA.TELEMETRY_SDK_LANGUAGE_VALUE_PHP=RTA.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS=RTA.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA=RTA.TELEMETRY_SDK_LANGUAGE_VALUE_GO=RTA.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG=RTA.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET=RTA.TELEMETRY_SDK_LANGUAGE_VALUE_CPP=RTA.ATTR_TELEMETRY_SDK_LANGUAGE=RTA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED=RTA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER=RTA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER=RTA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED=RTA.ATTR_ASPNETCORE_RATE_LIMITING_RESULT=void 0;RTA.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT=RTA.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE=RTA.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN=RTA.ATTR_SIGNALR_CONNECTION_STATUS=RTA.ATTR_SERVICE_VERSION=RTA.ATTR_SERVICE_NAME=RTA.ATTR_SERVER_PORT=RTA.ATTR_SERVER_ADDRESS=RTA.ATTR_OTEL_STATUS_DESCRIPTION=RTA.OTEL_STATUS_CODE_VALUE_OK=RTA.OTEL_STATUS_CODE_VALUE_ERROR=RTA.ATTR_OTEL_STATUS_CODE=RTA.ATTR_OTEL_SCOPE_VERSION=RTA.ATTR_OTEL_SCOPE_NAME=RTA.NETWORK_TYPE_VALUE_IPV6=RTA.NETWORK_TYPE_VALUE_IPV4=RTA.ATTR_NETWORK_TYPE=RTA.NETWORK_TRANSPORT_VALUE_UNIX=RTA.NETWORK_TRANSPORT_VALUE_UDP=RTA.NETWORK_TRANSPORT_VALUE_TCP=RTA.NETWORK_TRANSPORT_VALUE_QUIC=RTA.NETWORK_TRANSPORT_VALUE_PIPE=RTA.ATTR_NETWORK_TRANSPORT=RTA.ATTR_NETWORK_PROTOCOL_VERSION=RTA.ATTR_NETWORK_PROTOCOL_NAME=RTA.ATTR_NETWORK_PEER_PORT=RTA.ATTR_NETWORK_PEER_ADDRESS=RTA.ATTR_NETWORK_LOCAL_PORT=RTA.ATTR_NETWORK_LOCAL_ADDRESS=RTA.JVM_THREAD_STATE_VALUE_WAITING=RTA.JVM_THREAD_STATE_VALUE_TIMED_WAITING=RTA.JVM_THREAD_STATE_VALUE_TERMINATED=RTA.JVM_THREAD_STATE_VALUE_RUNNABLE=RTA.JVM_THREAD_STATE_VALUE_NEW=RTA.JVM_THREAD_STATE_VALUE_BLOCKED=RTA.ATTR_JVM_THREAD_STATE=RTA.ATTR_JVM_THREAD_DAEMON=RTA.JVM_MEMORY_TYPE_VALUE_NON_HEAP=RTA.JVM_MEMORY_TYPE_VALUE_HEAP=RTA.ATTR_JVM_MEMORY_TYPE=RTA.ATTR_JVM_MEMORY_POOL_NAME=RTA.ATTR_JVM_GC_NAME=RTA.ATTR_JVM_GC_ACTION=RTA.ATTR_HTTP_ROUTE=RTA.ATTR_HTTP_RESPONSE_STATUS_CODE=RTA.ATTR_HTTP_RESPONSE_HEADER=RTA.ATTR_HTTP_REQUEST_RESEND_COUNT=RTA.ATTR_HTTP_REQUEST_METHOD_ORIGINAL=RTA.HTTP_REQUEST_METHOD_VALUE_TRACE=RTA.HTTP_REQUEST_METHOD_VALUE_PUT=void 0;RTA.ATTR_USER_AGENT_ORIGINAL=RTA.ATTR_URL_SCHEME=RTA.ATTR_URL_QUERY=RTA.ATTR_URL_PATH=RTA.ATTR_URL_FULL=RTA.ATTR_URL_FRAGMENT=RTA.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS=RTA.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS=RTA.SIGNALR_TRANSPORT_VALUE_LONG_POLLING=RTA.ATTR_SIGNALR_TRANSPORT=void 0;RTA.ATTR_ASPNETCORE_RATE_LIMITING_RESULT="aspnetcore.rate_limiting.result";RTA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED="acquired";RTA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER="endpoint_limiter";RTA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER="global_limiter";RTA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED="request_canceled";RTA.ATTR_TELEMETRY_SDK_LANGUAGE="telemetry.sdk.language";RTA.TELEMETRY_SDK_LANGUAGE_VALUE_CPP="cpp";RTA.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET="dotnet";RTA.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG="erlang";RTA.TELEMETRY_SDK_LANGUAGE_VALUE_GO="go";RTA.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA="java";RTA.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS="nodejs";RTA.TELEMETRY_SDK_LANGUAGE_VALUE_PHP="php";RTA.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON="python";RTA.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY="ruby";RTA.TELEMETRY_SDK_LANGUAGE_VALUE_RUST="rust";RTA.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT="swift";RTA.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS="webjs";RTA.ATTR_TELEMETRY_SDK_NAME="telemetry.sdk.name";RTA.ATTR_TELEMETRY_SDK_VERSION="telemetry.sdk.version";RTA.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE="aspnetcore.diagnostics.handler.type";RTA.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT="aspnetcore.diagnostics.exception.result";RTA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED="aborted";RTA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED="handled";RTA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED="skipped";RTA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED="unhandled";RTA.ATTR_ASPNETCORE_RATE_LIMITING_POLICY="aspnetcore.rate_limiting.policy";RTA.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED="aspnetcore.request.is_unhandled";RTA.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK="aspnetcore.routing.is_fallback";RTA.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS="aspnetcore.routing.match_status";RTA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE="failure";RTA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS="success";RTA.ATTR_CLIENT_ADDRESS="client.address";RTA.ATTR_CLIENT_PORT="client.port";RTA.ATTR_ERROR_TYPE="error.type";RTA.ERROR_TYPE_VALUE_OTHER="_OTHER";RTA.ATTR_EXCEPTION_ESCAPED="exception.escaped";RTA.ATTR_EXCEPTION_MESSAGE="exception.message";RTA.ATTR_EXCEPTION_STACKTRACE="exception.stacktrace";RTA.ATTR_EXCEPTION_TYPE="exception.type";var gMB=(A)=>`http.request.header.${A}`;RTA.ATTR_HTTP_REQUEST_HEADER=gMB;RTA.ATTR_HTTP_REQUEST_METHOD="http.request.method";RTA.HTTP_REQUEST_METHOD_VALUE_OTHER="_OTHER";RTA.HTTP_REQUEST_METHOD_VALUE_CONNECT="CONNECT";RTA.HTTP_REQUEST_METHOD_VALUE_DELETE="DELETE";RTA.HTTP_REQUEST_METHOD_VALUE_GET="GET";RTA.HTTP_REQUEST_METHOD_VALUE_HEAD="HEAD";RTA.HTTP_REQUEST_METHOD_VALUE_OPTIONS="OPTIONS";RTA.HTTP_REQUEST_METHOD_VALUE_PATCH="PATCH";RTA.HTTP_REQUEST_METHOD_VALUE_POST="POST";RTA.HTTP_REQUEST_METHOD_VALUE_PUT="PUT";RTA.HTTP_REQUEST_METHOD_VALUE_TRACE="TRACE";RTA.ATTR_HTTP_REQUEST_METHOD_ORIGINAL="http.request.method_original";RTA.ATTR_HTTP_REQUEST_RESEND_COUNT="http.request.resend_count";var xMB=(A)=>`http.response.header.${A}`;RTA.ATTR_HTTP_RESPONSE_HEADER=xMB;RTA.ATTR_HTTP_RESPONSE_STATUS_CODE="http.response.status_code";RTA.ATTR_HTTP_ROUTE="http.route";RTA.ATTR_JVM_GC_ACTION="jvm.gc.action";RTA.ATTR_JVM_GC_NAME="jvm.gc.name";RTA.ATTR_JVM_MEMORY_POOL_NAME="jvm.memory.pool.name";RTA.ATTR_JVM_MEMORY_TYPE="jvm.memory.type";RTA.JVM_MEMORY_TYPE_VALUE_HEAP="heap";RTA.JVM_MEMORY_TYPE_VALUE_NON_HEAP="non_heap";RTA.ATTR_JVM_THREAD_DAEMON="jvm.thread.daemon";RTA.ATTR_JVM_THREAD_STATE="jvm.thread.state";RTA.JVM_THREAD_STATE_VALUE_BLOCKED="blocked";RTA.JVM_THREAD_STATE_VALUE_NEW="new";RTA.JVM_THREAD_STATE_VALUE_RUNNABLE="runnable";RTA.JVM_THREAD_STATE_VALUE_TERMINATED="terminated";RTA.JVM_THREAD_STATE_VALUE_TIMED_WAITING="timed_waiting";RTA.JVM_THREAD_STATE_VALUE_WAITING="waiting";RTA.ATTR_NETWORK_LOCAL_ADDRESS="network.local.address";RTA.ATTR_NETWORK_LOCAL_PORT="network.local.port";RTA.ATTR_NETWORK_PEER_ADDRESS="network.peer.address";RTA.ATTR_NETWORK_PEER_PORT="network.peer.port";RTA.ATTR_NETWORK_PROTOCOL_NAME="network.protocol.name";RTA.ATTR_NETWORK_PROTOCOL_VERSION="network.protocol.version";RTA.ATTR_NETWORK_TRANSPORT="network.transport";RTA.NETWORK_TRANSPORT_VALUE_PIPE="pipe";RTA.NETWORK_TRANSPORT_VALUE_QUIC="quic";RTA.NETWORK_TRANSPORT_VALUE_TCP="tcp";RTA.NETWORK_TRANSPORT_VALUE_UDP="udp";RTA.NETWORK_TRANSPORT_VALUE_UNIX="unix";RTA.ATTR_NETWORK_TYPE="network.type";RTA.NETWORK_TYPE_VALUE_IPV4="ipv4";RTA.NETWORK_TYPE_VALUE_IPV6="ipv6";RTA.ATTR_OTEL_SCOPE_NAME="otel.scope.name";RTA.ATTR_OTEL_SCOPE_VERSION="otel.scope.version";RTA.ATTR_OTEL_STATUS_CODE="otel.status_code";RTA.OTEL_STATUS_CODE_VALUE_ERROR="ERROR";RTA.OTEL_STATUS_CODE_VALUE_OK="OK";RTA.ATTR_OTEL_STATUS_DESCRIPTION="otel.status_description";RTA.ATTR_SERVER_ADDRESS="server.address";RTA.ATTR_SERVER_PORT="server.port";RTA.ATTR_SERVICE_NAME="service.name";RTA.ATTR_SERVICE_VERSION="service.version";RTA.ATTR_SIGNALR_CONNECTION_STATUS="signalr.connection.status";RTA.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN="app_shutdown";RTA.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE="normal_closure";RTA.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT="timeout";RTA.ATTR_SIGNALR_TRANSPORT="signalr.transport";RTA.SIGNALR_TRANSPORT_VALUE_LONG_POLLING="long_polling";RTA.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS="server_sent_events";RTA.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS="web_sockets";RTA.ATTR_URL_FRAGMENT="url.fragment";RTA.ATTR_URL_FULL="url.full";RTA.ATTR_URL_PATH="url.path";RTA.ATTR_URL_QUERY="url.query";RTA.ATTR_URL_SCHEME="url.scheme";RTA.ATTR_USER_AGENT_ORIGINAL="user_agent.original"});var kTA=R((TTA)=>{Object.defineProperty(TTA,"__esModule",{value:!0});TTA.METRIC_SIGNALR_SERVER_CONNECTION_DURATION=TTA.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS=TTA.METRIC_KESTREL_UPGRADED_CONNECTIONS=TTA.METRIC_KESTREL_TLS_HANDSHAKE_DURATION=TTA.METRIC_KESTREL_REJECTED_CONNECTIONS=TTA.METRIC_KESTREL_QUEUED_REQUESTS=TTA.METRIC_KESTREL_QUEUED_CONNECTIONS=TTA.METRIC_KESTREL_CONNECTION_DURATION=TTA.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES=TTA.METRIC_KESTREL_ACTIVE_CONNECTIONS=TTA.METRIC_JVM_THREAD_COUNT=TTA.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC=TTA.METRIC_JVM_MEMORY_USED=TTA.METRIC_JVM_MEMORY_LIMIT=TTA.METRIC_JVM_MEMORY_COMMITTED=TTA.METRIC_JVM_GC_DURATION=TTA.METRIC_JVM_CPU_TIME=TTA.METRIC_JVM_CPU_RECENT_UTILIZATION=TTA.METRIC_JVM_CPU_COUNT=TTA.METRIC_JVM_CLASS_UNLOADED=TTA.METRIC_JVM_CLASS_LOADED=TTA.METRIC_JVM_CLASS_COUNT=TTA.METRIC_HTTP_SERVER_REQUEST_DURATION=TTA.METRIC_HTTP_CLIENT_REQUEST_DURATION=TTA.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS=TTA.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS=TTA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION=TTA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE=TTA.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS=TTA.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES=TTA.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS=void 0;TTA.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS="aspnetcore.diagnostics.exceptions";TTA.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES="aspnetcore.rate_limiting.active_request_leases";TTA.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS="aspnetcore.rate_limiting.queued_requests";TTA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE="aspnetcore.rate_limiting.request.time_in_queue";TTA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION="aspnetcore.rate_limiting.request_lease.duration";TTA.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS="aspnetcore.rate_limiting.requests";TTA.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS="aspnetcore.routing.match_attempts";TTA.METRIC_HTTP_CLIENT_REQUEST_DURATION="http.client.request.duration";TTA.METRIC_HTTP_SERVER_REQUEST_DURATION="http.server.request.duration";TTA.METRIC_JVM_CLASS_COUNT="jvm.class.count";TTA.METRIC_JVM_CLASS_LOADED="jvm.class.loaded";TTA.METRIC_JVM_CLASS_UNLOADED="jvm.class.unloaded";TTA.METRIC_JVM_CPU_COUNT="jvm.cpu.count";TTA.METRIC_JVM_CPU_RECENT_UTILIZATION="jvm.cpu.recent_utilization";TTA.METRIC_JVM_CPU_TIME="jvm.cpu.time";TTA.METRIC_JVM_GC_DURATION="jvm.gc.duration";TTA.METRIC_JVM_MEMORY_COMMITTED="jvm.memory.committed";TTA.METRIC_JVM_MEMORY_LIMIT="jvm.memory.limit";TTA.METRIC_JVM_MEMORY_USED="jvm.memory.used";TTA.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC="jvm.memory.used_after_last_gc";TTA.METRIC_JVM_THREAD_COUNT="jvm.thread.count";TTA.METRIC_KESTREL_ACTIVE_CONNECTIONS="kestrel.active_connections";TTA.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES="kestrel.active_tls_handshakes";TTA.METRIC_KESTREL_CONNECTION_DURATION="kestrel.connection.duration";TTA.METRIC_KESTREL_QUEUED_CONNECTIONS="kestrel.queued_connections";TTA.METRIC_KESTREL_QUEUED_REQUESTS="kestrel.queued_requests";TTA.METRIC_KESTREL_REJECTED_CONNECTIONS="kestrel.rejected_connections";TTA.METRIC_KESTREL_TLS_HANDSHAKE_DURATION="kestrel.tls_handshake.duration";TTA.METRIC_KESTREL_UPGRADED_CONNECTIONS="kestrel.upgraded_connections";TTA.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS="signalr.server.active_connections";TTA.METRIC_SIGNALR_SERVER_CONNECTION_DURATION="signalr.server.connection.duration"});var _TA=R((e1)=>{var E3B=e1&&e1.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),fj=e1&&e1.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))E3B(Q,A,B)};Object.defineProperty(e1,"__esModule",{value:!0});fj(njA(),e1);fj(zTA(),e1);fj(PTA(),e1);fj(kTA(),e1)});var hTA=R((vTA)=>{Object.defineProperty(vTA,"__esModule",{value:!0});vTA.SDK_INFO=void 0;var K3B=nc(),_N=_TA();vTA.SDK_INFO={[_N.SEMRESATTRS_TELEMETRY_SDK_NAME]:"opentelemetry",[_N.SEMRESATTRS_PROCESS_RUNTIME_NAME]:"node",[_N.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE]:_N.TELEMETRYSDKLANGUAGEVALUES_NODEJS,[_N.SEMRESATTRS_TELEMETRY_SDK_VERSION]:K3B.VERSION}});var fTA=R((gTA)=>{Object.defineProperty(gTA,"__esModule",{value:!0});gTA.unrefTimer=void 0;function V3B(A){A.unref()}gTA.unrefTimer=V3B});var mTA=R((A6)=>{Object.defineProperty(A6,"__esModule",{value:!0});A6.unrefTimer=A6.SDK_INFO=A6.otperformance=A6.RandomIdGenerator=A6.hexToBase64=A6._globalThis=A6.getEnv=A6.getEnvWithoutDefaults=void 0;var bTA=OzA();Object.defineProperty(A6,"getEnvWithoutDefaults",{enumerable:!0,get:function(){return bTA.getEnvWithoutDefaults}});Object.defineProperty(A6,"getEnv",{enumerable:!0,get:function(){return bTA.getEnv}});var I3B=SzA();Object.defineProperty(A6,"_globalThis",{enumerable:!0,get:function(){return I3B._globalThis}});var H3B=gzA();Object.defineProperty(A6,"hexToBase64",{enumerable:!0,get:function(){return H3B.hexToBase64}});var D3B=dzA();Object.defineProperty(A6,"RandomIdGenerator",{enumerable:!0,get:function(){return D3B.RandomIdGenerator}});var N3B=pzA();Object.defineProperty(A6,"otperformance",{enumerable:!0,get:function(){return N3B.otperformance}});var L3B=hTA();Object.defineProperty(A6,"SDK_INFO",{enumerable:!0,get:function(){return L3B.SDK_INFO}});var q3B=fTA();Object.defineProperty(A6,"unrefTimer",{enumerable:!0,get:function(){return q3B.unrefTimer}})});var rc=R((Q6)=>{Object.defineProperty(Q6,"__esModule",{value:!0});Q6.unrefTimer=Q6.otperformance=Q6.hexToBase64=Q6.getEnvWithoutDefaults=Q6.getEnv=Q6._globalThis=Q6.SDK_INFO=Q6.RandomIdGenerator=void 0;var JF=mTA();Object.defineProperty(Q6,"RandomIdGenerator",{enumerable:!0,get:function(){return JF.RandomIdGenerator}});Object.defineProperty(Q6,"SDK_INFO",{enumerable:!0,get:function(){return JF.SDK_INFO}});Object.defineProperty(Q6,"_globalThis",{enumerable:!0,get:function(){return JF._globalThis}});Object.defineProperty(Q6,"getEnv",{enumerable:!0,get:function(){return JF.getEnv}});Object.defineProperty(Q6,"getEnvWithoutDefaults",{enumerable:!0,get:function(){return JF.getEnvWithoutDefaults}});Object.defineProperty(Q6,"hexToBase64",{enumerable:!0,get:function(){return JF.hexToBase64}});Object.defineProperty(Q6,"otperformance",{enumerable:!0,get:function(){return JF.otperformance}});Object.defineProperty(Q6,"unrefTimer",{enumerable:!0,get:function(){return JF.unrefTimer}})});var iTA=R((lTA)=>{Object.defineProperty(lTA,"__esModule",{value:!0});lTA.addHrTimes=lTA.isTimeInput=lTA.isTimeInputHrTime=lTA.hrTimeToMicroseconds=lTA.hrTimeToMilliseconds=lTA.hrTimeToNanoseconds=lTA.hrTimeToTimeStamp=lTA.hrTimeDuration=lTA.timeInputToHrTime=lTA.hrTime=lTA.getTimeOrigin=lTA.millisToHrTime=void 0;var ac=rc(),uTA=9,R3B=6,w3B=Math.pow(10,R3B),bj=Math.pow(10,uTA);function vN(A){let Q=A/1000,B=Math.trunc(Q),Y=Math.round(A%1000*w3B);return[B,Y]}lTA.millisToHrTime=vN;function oc(){let A=ac.otperformance.timeOrigin;if(typeof A!=="number"){let Q=ac.otperformance;A=Q.timing&&Q.timing.fetchStart}return A}lTA.getTimeOrigin=oc;function dTA(A){let Q=vN(oc()),B=vN(typeof A==="number"?A:ac.otperformance.now());return cTA(Q,B)}lTA.hrTime=dTA;function j3B(A){if(tc(A))return A;else if(typeof A==="number")if(A=bj)B[1]-=bj,B[0]+=1;return B}lTA.addHrTimes=cTA});var sTA=R((nTA)=>{Object.defineProperty(nTA,"__esModule",{value:!0});nTA.ExportResultCode=void 0;var l3B;(function(A){A[A.SUCCESS=0]="SUCCESS",A[A.FAILED=1]="FAILED"})(l3B=nTA.ExportResultCode||(nTA.ExportResultCode={}))});var eTA=R((oTA)=>{Object.defineProperty(oTA,"__esModule",{value:!0});oTA.CompositePropagator=void 0;var rTA=yA();class aTA{constructor(A={}){var Q;this._propagators=(Q=A.propagators)!==null&&Q!==void 0?Q:[],this._fields=Array.from(new Set(this._propagators.map((B)=>typeof B.fields==="function"?B.fields():[]).reduce((B,Y)=>B.concat(Y),[])))}inject(A,Q,B){for(let Y of this._propagators)try{Y.inject(A,Q,B)}catch(J){rTA.diag.warn(`Failed to inject with ${Y.constructor.name}. Err: ${J.message}`)}}extract(A,Q,B){return this._propagators.reduce((Y,J)=>{try{return J.extract(Y,Q,B)}catch(C){rTA.diag.warn(`Failed to extract with ${J.constructor.name}. Err: ${C.message}`)}return Y},A)}fields(){return this._fields.slice()}}oTA.CompositePropagator=aTA});var BSA=R((ASA)=>{Object.defineProperty(ASA,"__esModule",{value:!0});ASA.validateValue=ASA.validateKey=void 0;var Al="[_0-9a-z-*/]",p3B=`[a-z]${Al}{0,255}`,i3B=`[a-z0-9]${Al}{0,240}@[a-z]${Al}{0,13}`,n3B=new RegExp(`^(?:${p3B}|${i3B})$`),s3B=/^[ -~]{0,255}[!-~]$/,r3B=/,|=/;function a3B(A){return n3B.test(A)}ASA.validateKey=a3B;function o3B(A){return s3B.test(A)&&!r3B.test(A)}ASA.validateValue=o3B});var Bl=R((GSA)=>{Object.defineProperty(GSA,"__esModule",{value:!0});GSA.TraceState=void 0;var YSA=BSA(),JSA=32,e3B=512,CSA=",",XSA="=";class Ql{constructor(A){if(this._internalState=new Map,A)this._parse(A)}set(A,Q){let B=this._clone();if(B._internalState.has(A))B._internalState.delete(A);return B._internalState.set(A,Q),B}unset(A){let Q=this._clone();return Q._internalState.delete(A),Q}get(A){return this._internalState.get(A)}serialize(){return this._keys().reduce((A,Q)=>{return A.push(Q+XSA+this.get(Q)),A},[]).join(CSA)}_parse(A){if(A.length>e3B)return;if(this._internalState=A.split(CSA).reverse().reduce((Q,B)=>{let Y=B.trim(),J=Y.indexOf(XSA);if(J!==-1){let C=Y.slice(0,J),X=Y.slice(J+1,B.length);if((0,YSA.validateKey)(C)&&(0,YSA.validateValue)(X))Q.set(C,X)}return Q},new Map),this._internalState.size>JSA)this._internalState=new Map(Array.from(this._internalState.entries()).reverse().slice(0,JSA))}_keys(){return Array.from(this._internalState.keys()).reverse()}_clone(){let A=new Ql;return A._internalState=new Map(this._internalState),A}}GSA.TraceState=Ql});var ESA=R(($SA)=>{Object.defineProperty($SA,"__esModule",{value:!0});$SA.W3CTraceContextPropagator=$SA.parseTraceParent=$SA.TRACE_STATE_HEADER=$SA.TRACE_PARENT_HEADER=void 0;var mj=yA(),ARB=kN(),QRB=Bl();$SA.TRACE_PARENT_HEADER="traceparent";$SA.TRACE_STATE_HEADER="tracestate";var BRB="00",YRB="(?!ff)[\\da-f]{2}",JRB="(?![0]{32})[\\da-f]{32}",CRB="(?![0]{16})[\\da-f]{16}",XRB="[\\da-f]{2}",GRB=new RegExp(`^\\s?(${YRB})-(${JRB})-(${CRB})-(${XRB})(-.*)?\\s?$`);function WSA(A){let Q=GRB.exec(A);if(!Q)return null;if(Q[1]==="00"&&Q[5])return null;return{traceId:Q[2],spanId:Q[3],traceFlags:parseInt(Q[4],16)}}$SA.parseTraceParent=WSA;class ZSA{inject(A,Q,B){let Y=mj.trace.getSpanContext(A);if(!Y||(0,ARB.isTracingSuppressed)(A)||!(0,mj.isSpanContextValid)(Y))return;let J=`${BRB}-${Y.traceId}-${Y.spanId}-0${Number(Y.traceFlags||mj.TraceFlags.NONE).toString(16)}`;if(B.set(Q,$SA.TRACE_PARENT_HEADER,J),Y.traceState)B.set(Q,$SA.TRACE_STATE_HEADER,Y.traceState.serialize())}extract(A,Q,B){let Y=B.get(Q,$SA.TRACE_PARENT_HEADER);if(!Y)return A;let J=Array.isArray(Y)?Y[0]:Y;if(typeof J!=="string")return A;let C=WSA(J);if(!C)return A;C.isRemote=!0;let X=B.get(Q,$SA.TRACE_STATE_HEADER);if(X){let G=Array.isArray(X)?X.join(","):X;C.traceState=new QRB.TraceState(typeof G==="string"?G:void 0)}return mj.trace.setSpanContext(A,C)}fields(){return[$SA.TRACE_PARENT_HEADER,$SA.TRACE_STATE_HEADER]}}$SA.W3CTraceContextPropagator=ZSA});var HSA=R((VSA)=>{Object.defineProperty(VSA,"__esModule",{value:!0});VSA.getRPCMetadata=VSA.deleteRPCMetadata=VSA.setRPCMetadata=VSA.RPCType=void 0;var WRB=yA(),Yl=(0,WRB.createContextKey)("OpenTelemetry SDK Context Key RPC_METADATA"),ZRB;(function(A){A.HTTP="http"})(ZRB=VSA.RPCType||(VSA.RPCType={}));function $RB(A,Q){return A.setValue(Yl,Q)}VSA.setRPCMetadata=$RB;function URB(A){return A.deleteValue(Yl)}VSA.deleteRPCMetadata=URB;function ERB(A){return A.getValue(Yl)}VSA.getRPCMetadata=ERB});var Jl=R((NSA)=>{Object.defineProperty(NSA,"__esModule",{value:!0});NSA.AlwaysOffSampler=void 0;var IRB=yA();class DSA{shouldSample(){return{decision:IRB.SamplingDecision.NOT_RECORD}}toString(){return"AlwaysOffSampler"}}NSA.AlwaysOffSampler=DSA});var Cl=R((MSA)=>{Object.defineProperty(MSA,"__esModule",{value:!0});MSA.AlwaysOnSampler=void 0;var HRB=yA();class qSA{shouldSample(){return{decision:HRB.SamplingDecision.RECORD_AND_SAMPLED}}toString(){return"AlwaysOnSampler"}}MSA.AlwaysOnSampler=qSA});var PSA=R((jSA)=>{Object.defineProperty(jSA,"__esModule",{value:!0});jSA.ParentBasedSampler=void 0;var cj=yA(),DRB=uc(),RSA=Jl(),Xl=Cl();class wSA{constructor(A){var Q,B,Y,J;if(this._root=A.root,!this._root)(0,DRB.globalErrorHandler)(Error("ParentBasedSampler must have a root sampler configured")),this._root=new Xl.AlwaysOnSampler;this._remoteParentSampled=(Q=A.remoteParentSampled)!==null&&Q!==void 0?Q:new Xl.AlwaysOnSampler,this._remoteParentNotSampled=(B=A.remoteParentNotSampled)!==null&&B!==void 0?B:new RSA.AlwaysOffSampler,this._localParentSampled=(Y=A.localParentSampled)!==null&&Y!==void 0?Y:new Xl.AlwaysOnSampler,this._localParentNotSampled=(J=A.localParentNotSampled)!==null&&J!==void 0?J:new RSA.AlwaysOffSampler}shouldSample(A,Q,B,Y,J,C){let X=cj.trace.getSpanContext(A);if(!X||!(0,cj.isSpanContextValid)(X))return this._root.shouldSample(A,Q,B,Y,J,C);if(X.isRemote){if(X.traceFlags&cj.TraceFlags.SAMPLED)return this._remoteParentSampled.shouldSample(A,Q,B,Y,J,C);return this._remoteParentNotSampled.shouldSample(A,Q,B,Y,J,C)}if(X.traceFlags&cj.TraceFlags.SAMPLED)return this._localParentSampled.shouldSample(A,Q,B,Y,J,C);return this._localParentNotSampled.shouldSample(A,Q,B,Y,J,C)}toString(){return`ParentBased{root=${this._root.toString()}, remoteParentSampled=${this._remoteParentSampled.toString()}, remoteParentNotSampled=${this._remoteParentNotSampled.toString()}, localParentSampled=${this._localParentSampled.toString()}, localParentNotSampled=${this._localParentNotSampled.toString()}}`}}jSA.ParentBasedSampler=wSA});var _SA=R((SSA)=>{Object.defineProperty(SSA,"__esModule",{value:!0});SSA.TraceIdRatioBasedSampler=void 0;var Gl=yA();class TSA{constructor(A=0){this._ratio=A,this._ratio=this._normalize(A),this._upperBound=Math.floor(this._ratio*4294967295)}shouldSample(A,Q){return{decision:(0,Gl.isValidTraceId)(Q)&&this._accumulate(Q)=1?1:A<=0?0:A}_accumulate(A){let Q=0;for(let B=0;B>>0}return Q}}SSA.TraceIdRatioBasedSampler=TSA});var bSA=R((xSA)=>{Object.defineProperty(xSA,"__esModule",{value:!0});xSA.isPlainObject=void 0;var NRB="[object Object]",LRB="[object Null]",qRB="[object Undefined]",MRB=Function.prototype,vSA=MRB.toString,zRB=vSA.call(Object),RRB=wRB(Object.getPrototypeOf,Object),ySA=Object.prototype,hSA=ySA.hasOwnProperty,pZ=Symbol?Symbol.toStringTag:void 0,gSA=ySA.toString;function wRB(A,Q){return function(B){return A(Q(B))}}function jRB(A){if(!ORB(A)||PRB(A)!==NRB)return!1;let Q=RRB(A);if(Q===null)return!0;let B=hSA.call(Q,"constructor")&&Q.constructor;return typeof B=="function"&&B instanceof B&&vSA.call(B)===zRB}xSA.isPlainObject=jRB;function ORB(A){return A!=null&&typeof A=="object"}function PRB(A){if(A==null)return A===void 0?qRB:LRB;return pZ&&pZ in Object(A)?TRB(A):SRB(A)}function TRB(A){let Q=hSA.call(A,pZ),B=A[pZ],Y=!1;try{A[pZ]=void 0,Y=!0}catch(C){}let J=gSA.call(A);if(Y)if(Q)A[pZ]=B;else delete A[pZ];return J}function SRB(A){return gSA.call(A)}});var iSA=R((lSA)=>{Object.defineProperty(lSA,"__esModule",{value:!0});lSA.merge=void 0;var mSA=bSA(),kRB=20;function _RB(...A){let Q=A.shift(),B=new WeakMap;while(A.length>0)Q=dSA(Q,A.shift(),0,B);return Q}lSA.merge=_RB;function Fl(A){if(pj(A))return A.slice();return A}function dSA(A,Q,B=0,Y){let J;if(B>kRB)return;if(B++,lj(A)||lj(Q)||cSA(Q))J=Fl(Q);else if(pj(A)){if(J=A.slice(),pj(Q))for(let C=0,X=Q.length;C"u")delete J[F];else J[F]=W;else{let Z=J[F],U=W;if(uSA(A,F,Y)||uSA(Q,F,Y))delete J[F];else{if(yN(Z)&&yN(U)){let $=Y.get(Z)||[],E=Y.get(U)||[];$.push({obj:A,key:F}),E.push({obj:Q,key:F}),Y.set(Z,$),Y.set(U,E)}J[F]=dSA(J[F],W,B,Y)}}}}else J=Q;return J}function uSA(A,Q,B){let Y=B.get(A[Q])||[];for(let J=0,C=Y.length;J"u"||A instanceof Date||A instanceof RegExp||A===null}function vRB(A,Q){if(!(0,mSA.isPlainObject)(A)||!(0,mSA.isPlainObject)(Q))return!1;return!0}});var rSA=R((nSA)=>{Object.defineProperty(nSA,"__esModule",{value:!0});nSA.callWithTimeout=nSA.TimeoutError=void 0;class ij extends Error{constructor(A){super(A);Object.setPrototypeOf(this,ij.prototype)}}nSA.TimeoutError=ij;function yRB(A,Q){let B,Y=new Promise(function(C,X){B=setTimeout(function(){X(new ij("Operation timed out."))},Q)});return Promise.race([A,Y]).then((J)=>{return clearTimeout(B),J},(J)=>{throw clearTimeout(B),J})}nSA.callWithTimeout=yRB});var eSA=R((oSA)=>{Object.defineProperty(oSA,"__esModule",{value:!0});oSA.isUrlIgnored=oSA.urlMatches=void 0;function aSA(A,Q){if(typeof Q==="string")return A===Q;else return!!A.match(Q)}oSA.urlMatches=aSA;function gRB(A,Q){if(!Q)return!1;for(let B of Q)if(aSA(A,B))return!0;return!1}oSA.isUrlIgnored=gRB});var BkA=R((AkA)=>{Object.defineProperty(AkA,"__esModule",{value:!0});AkA.isWrapped=void 0;function fRB(A){return typeof A==="function"&&typeof A.__original==="function"&&typeof A.__unwrap==="function"&&A.__wrapped===!0}AkA.isWrapped=fRB});var XkA=R((JkA)=>{Object.defineProperty(JkA,"__esModule",{value:!0});JkA.Deferred=void 0;class YkA{constructor(){this._promise=new Promise((A,Q)=>{this._resolve=A,this._reject=Q})}get promise(){return this._promise}resolve(A){this._resolve(A)}reject(A){this._reject(A)}}JkA.Deferred=YkA});var ZkA=R((FkA)=>{Object.defineProperty(FkA,"__esModule",{value:!0});FkA.BindOnceFuture=void 0;var bRB=XkA();class GkA{constructor(A,Q){this._callback=A,this._that=Q,this._isCalled=!1,this._deferred=new bRB.Deferred}get isCalled(){return this._isCalled}get promise(){return this._deferred.promise}call(...A){if(!this._isCalled){this._isCalled=!0;try{Promise.resolve(this._callback.call(this._that,...A)).then((Q)=>this._deferred.resolve(Q),(Q)=>this._deferred.reject(Q))}catch(Q){this._deferred.reject(Q)}}return this._deferred.promise}}FkA.BindOnceFuture=GkA});var KkA=R((UkA)=>{Object.defineProperty(UkA,"__esModule",{value:!0});UkA._export=void 0;var $kA=yA(),mRB=kN();function uRB(A,Q){return new Promise((B)=>{$kA.context.with((0,mRB.suppressTracing)($kA.context.active()),()=>{A.export(Q,(Y)=>{B(Y)})})})}UkA._export=uRB});var MB=R((sA)=>{Object.defineProperty(sA,"__esModule",{value:!0});sA.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=sA.DEFAULT_ATTRIBUTE_COUNT_LIMIT=sA.TraceState=sA.unsuppressTracing=sA.suppressTracing=sA.isTracingSuppressed=sA.TraceIdRatioBasedSampler=sA.ParentBasedSampler=sA.AlwaysOnSampler=sA.AlwaysOffSampler=sA.setRPCMetadata=sA.getRPCMetadata=sA.deleteRPCMetadata=sA.RPCType=sA.parseTraceParent=sA.W3CTraceContextPropagator=sA.TRACE_STATE_HEADER=sA.TRACE_PARENT_HEADER=sA.CompositePropagator=sA.unrefTimer=sA.otperformance=sA.hexToBase64=sA.getEnvWithoutDefaults=sA.getEnv=sA._globalThis=sA.SDK_INFO=sA.RandomIdGenerator=sA.baggageUtils=sA.ExportResultCode=sA.hexToBinary=sA.timeInputToHrTime=sA.millisToHrTime=sA.isTimeInputHrTime=sA.isTimeInput=sA.hrTimeToTimeStamp=sA.hrTimeToNanoseconds=sA.hrTimeToMilliseconds=sA.hrTimeToMicroseconds=sA.hrTimeDuration=sA.hrTime=sA.getTimeOrigin=sA.addHrTimes=sA.loggingErrorHandler=sA.setGlobalErrorHandler=sA.globalErrorHandler=sA.sanitizeAttributes=sA.isAttributeValue=sA.isAttributeKey=sA.AnchoredClock=sA.W3CBaggagePropagator=void 0;sA.internal=sA.VERSION=sA.BindOnceFuture=sA.isWrapped=sA.urlMatches=sA.isUrlIgnored=sA.callWithTimeout=sA.TimeoutError=sA.TracesSamplerValues=sA.merge=sA.parseEnvironment=sA.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=sA.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=sA.DEFAULT_ENVIRONMENT=void 0;var dRB=BzA();Object.defineProperty(sA,"W3CBaggagePropagator",{enumerable:!0,get:function(){return dRB.W3CBaggagePropagator}});var cRB=XzA();Object.defineProperty(sA,"AnchoredClock",{enumerable:!0,get:function(){return cRB.AnchoredClock}});var Wl=EzA();Object.defineProperty(sA,"isAttributeKey",{enumerable:!0,get:function(){return Wl.isAttributeKey}});Object.defineProperty(sA,"isAttributeValue",{enumerable:!0,get:function(){return Wl.isAttributeValue}});Object.defineProperty(sA,"sanitizeAttributes",{enumerable:!0,get:function(){return Wl.sanitizeAttributes}});var VkA=uc();Object.defineProperty(sA,"globalErrorHandler",{enumerable:!0,get:function(){return VkA.globalErrorHandler}});Object.defineProperty(sA,"setGlobalErrorHandler",{enumerable:!0,get:function(){return VkA.setGlobalErrorHandler}});var lRB=mc();Object.defineProperty(sA,"loggingErrorHandler",{enumerable:!0,get:function(){return lRB.loggingErrorHandler}});var P5=iTA();Object.defineProperty(sA,"addHrTimes",{enumerable:!0,get:function(){return P5.addHrTimes}});Object.defineProperty(sA,"getTimeOrigin",{enumerable:!0,get:function(){return P5.getTimeOrigin}});Object.defineProperty(sA,"hrTime",{enumerable:!0,get:function(){return P5.hrTime}});Object.defineProperty(sA,"hrTimeDuration",{enumerable:!0,get:function(){return P5.hrTimeDuration}});Object.defineProperty(sA,"hrTimeToMicroseconds",{enumerable:!0,get:function(){return P5.hrTimeToMicroseconds}});Object.defineProperty(sA,"hrTimeToMilliseconds",{enumerable:!0,get:function(){return P5.hrTimeToMilliseconds}});Object.defineProperty(sA,"hrTimeToNanoseconds",{enumerable:!0,get:function(){return P5.hrTimeToNanoseconds}});Object.defineProperty(sA,"hrTimeToTimeStamp",{enumerable:!0,get:function(){return P5.hrTimeToTimeStamp}});Object.defineProperty(sA,"isTimeInput",{enumerable:!0,get:function(){return P5.isTimeInput}});Object.defineProperty(sA,"isTimeInputHrTime",{enumerable:!0,get:function(){return P5.isTimeInputHrTime}});Object.defineProperty(sA,"millisToHrTime",{enumerable:!0,get:function(){return P5.millisToHrTime}});Object.defineProperty(sA,"timeInputToHrTime",{enumerable:!0,get:function(){return P5.timeInputToHrTime}});var pRB=ic();Object.defineProperty(sA,"hexToBinary",{enumerable:!0,get:function(){return pRB.hexToBinary}});var iRB=sTA();Object.defineProperty(sA,"ExportResultCode",{enumerable:!0,get:function(){return iRB.ExportResultCode}});var nj=xc();sA.baggageUtils={getKeyPairs:nj.getKeyPairs,serializeKeyPairs:nj.serializeKeyPairs,parseKeyPairsIntoRecord:nj.parseKeyPairsIntoRecord,parsePairKeyValue:nj.parsePairKeyValue};var CF=rc();Object.defineProperty(sA,"RandomIdGenerator",{enumerable:!0,get:function(){return CF.RandomIdGenerator}});Object.defineProperty(sA,"SDK_INFO",{enumerable:!0,get:function(){return CF.SDK_INFO}});Object.defineProperty(sA,"_globalThis",{enumerable:!0,get:function(){return CF._globalThis}});Object.defineProperty(sA,"getEnv",{enumerable:!0,get:function(){return CF.getEnv}});Object.defineProperty(sA,"getEnvWithoutDefaults",{enumerable:!0,get:function(){return CF.getEnvWithoutDefaults}});Object.defineProperty(sA,"hexToBase64",{enumerable:!0,get:function(){return CF.hexToBase64}});Object.defineProperty(sA,"otperformance",{enumerable:!0,get:function(){return CF.otperformance}});Object.defineProperty(sA,"unrefTimer",{enumerable:!0,get:function(){return CF.unrefTimer}});var nRB=eTA();Object.defineProperty(sA,"CompositePropagator",{enumerable:!0,get:function(){return nRB.CompositePropagator}});var sj=ESA();Object.defineProperty(sA,"TRACE_PARENT_HEADER",{enumerable:!0,get:function(){return sj.TRACE_PARENT_HEADER}});Object.defineProperty(sA,"TRACE_STATE_HEADER",{enumerable:!0,get:function(){return sj.TRACE_STATE_HEADER}});Object.defineProperty(sA,"W3CTraceContextPropagator",{enumerable:!0,get:function(){return sj.W3CTraceContextPropagator}});Object.defineProperty(sA,"parseTraceParent",{enumerable:!0,get:function(){return sj.parseTraceParent}});var rj=HSA();Object.defineProperty(sA,"RPCType",{enumerable:!0,get:function(){return rj.RPCType}});Object.defineProperty(sA,"deleteRPCMetadata",{enumerable:!0,get:function(){return rj.deleteRPCMetadata}});Object.defineProperty(sA,"getRPCMetadata",{enumerable:!0,get:function(){return rj.getRPCMetadata}});Object.defineProperty(sA,"setRPCMetadata",{enumerable:!0,get:function(){return rj.setRPCMetadata}});var sRB=Jl();Object.defineProperty(sA,"AlwaysOffSampler",{enumerable:!0,get:function(){return sRB.AlwaysOffSampler}});var rRB=Cl();Object.defineProperty(sA,"AlwaysOnSampler",{enumerable:!0,get:function(){return rRB.AlwaysOnSampler}});var aRB=PSA();Object.defineProperty(sA,"ParentBasedSampler",{enumerable:!0,get:function(){return aRB.ParentBasedSampler}});var oRB=_SA();Object.defineProperty(sA,"TraceIdRatioBasedSampler",{enumerable:!0,get:function(){return oRB.TraceIdRatioBasedSampler}});var Zl=kN();Object.defineProperty(sA,"isTracingSuppressed",{enumerable:!0,get:function(){return Zl.isTracingSuppressed}});Object.defineProperty(sA,"suppressTracing",{enumerable:!0,get:function(){return Zl.suppressTracing}});Object.defineProperty(sA,"unsuppressTracing",{enumerable:!0,get:function(){return Zl.unsuppressTracing}});var tRB=Bl();Object.defineProperty(sA,"TraceState",{enumerable:!0,get:function(){return tRB.TraceState}});var nE=lc();Object.defineProperty(sA,"DEFAULT_ATTRIBUTE_COUNT_LIMIT",{enumerable:!0,get:function(){return nE.DEFAULT_ATTRIBUTE_COUNT_LIMIT}});Object.defineProperty(sA,"DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT",{enumerable:!0,get:function(){return nE.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT}});Object.defineProperty(sA,"DEFAULT_ENVIRONMENT",{enumerable:!0,get:function(){return nE.DEFAULT_ENVIRONMENT}});Object.defineProperty(sA,"DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT",{enumerable:!0,get:function(){return nE.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT}});Object.defineProperty(sA,"DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT",{enumerable:!0,get:function(){return nE.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT}});Object.defineProperty(sA,"parseEnvironment",{enumerable:!0,get:function(){return nE.parseEnvironment}});var eRB=iSA();Object.defineProperty(sA,"merge",{enumerable:!0,get:function(){return eRB.merge}});var AwB=cc();Object.defineProperty(sA,"TracesSamplerValues",{enumerable:!0,get:function(){return AwB.TracesSamplerValues}});var IkA=rSA();Object.defineProperty(sA,"TimeoutError",{enumerable:!0,get:function(){return IkA.TimeoutError}});Object.defineProperty(sA,"callWithTimeout",{enumerable:!0,get:function(){return IkA.callWithTimeout}});var HkA=eSA();Object.defineProperty(sA,"isUrlIgnored",{enumerable:!0,get:function(){return HkA.isUrlIgnored}});Object.defineProperty(sA,"urlMatches",{enumerable:!0,get:function(){return HkA.urlMatches}});var QwB=BkA();Object.defineProperty(sA,"isWrapped",{enumerable:!0,get:function(){return QwB.isWrapped}});var BwB=ZkA();Object.defineProperty(sA,"BindOnceFuture",{enumerable:!0,get:function(){return BwB.BindOnceFuture}});var YwB=nc();Object.defineProperty(sA,"VERSION",{enumerable:!0,get:function(){return YwB.VERSION}});var JwB=KkA();sA.internal={_export:JwB._export}});var hN=R((akY,NkA)=>{var GwB=Number.MAX_SAFE_INTEGER||9007199254740991,FwB=["major","premajor","minor","preminor","patch","prepatch","prerelease"];NkA.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:16,MAX_SAFE_BUILD_LENGTH:250,MAX_SAFE_INTEGER:GwB,RELEASE_TYPES:FwB,SEMVER_SPEC_VERSION:"2.0.0",FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var gN=R((okY,LkA)=>{var WwB=typeof process==="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...A)=>console.error("SEMVER",...A):()=>{};LkA.exports=WwB});var sE=R((B6,qkA)=>{var{MAX_SAFE_COMPONENT_LENGTH:$l,MAX_SAFE_BUILD_LENGTH:ZwB,MAX_LENGTH:$wB}=hN(),UwB=gN();B6=qkA.exports={};var EwB=B6.re=[],KwB=B6.safeRe=[],lA=B6.src=[],VwB=B6.safeSrc=[],pA=B6.t={},IwB=0,Ul="[a-zA-Z0-9-]",HwB=[["\\s",1],["\\d",$wB],[Ul,ZwB]],DwB=(A)=>{for(let[Q,B]of HwB)A=A.split(`${Q}*`).join(`${Q}{0,${B}}`).split(`${Q}+`).join(`${Q}{1,${B}}`);return A},dQ=(A,Q,B)=>{let Y=DwB(Q),J=IwB++;UwB(A,J,Q),pA[A]=J,lA[J]=Q,VwB[J]=Y,EwB[J]=new RegExp(Q,B?"g":void 0),KwB[J]=new RegExp(Y,B?"g":void 0)};dQ("NUMERICIDENTIFIER","0|[1-9]\\d*");dQ("NUMERICIDENTIFIERLOOSE","\\d+");dQ("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${Ul}*`);dQ("MAINVERSION",`(${lA[pA.NUMERICIDENTIFIER]})\\.(${lA[pA.NUMERICIDENTIFIER]})\\.(${lA[pA.NUMERICIDENTIFIER]})`);dQ("MAINVERSIONLOOSE",`(${lA[pA.NUMERICIDENTIFIERLOOSE]})\\.(${lA[pA.NUMERICIDENTIFIERLOOSE]})\\.(${lA[pA.NUMERICIDENTIFIERLOOSE]})`);dQ("PRERELEASEIDENTIFIER",`(?:${lA[pA.NUMERICIDENTIFIER]}|${lA[pA.NONNUMERICIDENTIFIER]})`);dQ("PRERELEASEIDENTIFIERLOOSE",`(?:${lA[pA.NUMERICIDENTIFIERLOOSE]}|${lA[pA.NONNUMERICIDENTIFIER]})`);dQ("PRERELEASE",`(?:-(${lA[pA.PRERELEASEIDENTIFIER]}(?:\\.${lA[pA.PRERELEASEIDENTIFIER]})*))`);dQ("PRERELEASELOOSE",`(?:-?(${lA[pA.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${lA[pA.PRERELEASEIDENTIFIERLOOSE]})*))`);dQ("BUILDIDENTIFIER",`${Ul}+`);dQ("BUILD",`(?:\\+(${lA[pA.BUILDIDENTIFIER]}(?:\\.${lA[pA.BUILDIDENTIFIER]})*))`);dQ("FULLPLAIN",`v?${lA[pA.MAINVERSION]}${lA[pA.PRERELEASE]}?${lA[pA.BUILD]}?`);dQ("FULL",`^${lA[pA.FULLPLAIN]}$`);dQ("LOOSEPLAIN",`[v=\\s]*${lA[pA.MAINVERSIONLOOSE]}${lA[pA.PRERELEASELOOSE]}?${lA[pA.BUILD]}?`);dQ("LOOSE",`^${lA[pA.LOOSEPLAIN]}$`);dQ("GTLT","((?:<|>)?=?)");dQ("XRANGEIDENTIFIERLOOSE",`${lA[pA.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);dQ("XRANGEIDENTIFIER",`${lA[pA.NUMERICIDENTIFIER]}|x|X|\\*`);dQ("XRANGEPLAIN",`[v=\\s]*(${lA[pA.XRANGEIDENTIFIER]})(?:\\.(${lA[pA.XRANGEIDENTIFIER]})(?:\\.(${lA[pA.XRANGEIDENTIFIER]})(?:${lA[pA.PRERELEASE]})?${lA[pA.BUILD]}?)?)?`);dQ("XRANGEPLAINLOOSE",`[v=\\s]*(${lA[pA.XRANGEIDENTIFIERLOOSE]})(?:\\.(${lA[pA.XRANGEIDENTIFIERLOOSE]})(?:\\.(${lA[pA.XRANGEIDENTIFIERLOOSE]})(?:${lA[pA.PRERELEASELOOSE]})?${lA[pA.BUILD]}?)?)?`);dQ("XRANGE",`^${lA[pA.GTLT]}\\s*${lA[pA.XRANGEPLAIN]}$`);dQ("XRANGELOOSE",`^${lA[pA.GTLT]}\\s*${lA[pA.XRANGEPLAINLOOSE]}$`);dQ("COERCEPLAIN",`(^|[^\\d])(\\d{1,${$l}})(?:\\.(\\d{1,${$l}}))?(?:\\.(\\d{1,${$l}}))?`);dQ("COERCE",`${lA[pA.COERCEPLAIN]}(?:$|[^\\d])`);dQ("COERCEFULL",lA[pA.COERCEPLAIN]+`(?:${lA[pA.PRERELEASE]})?(?:${lA[pA.BUILD]})?(?:$|[^\\d])`);dQ("COERCERTL",lA[pA.COERCE],!0);dQ("COERCERTLFULL",lA[pA.COERCEFULL],!0);dQ("LONETILDE","(?:~>?)");dQ("TILDETRIM",`(\\s*)${lA[pA.LONETILDE]}\\s+`,!0);B6.tildeTrimReplace="$1~";dQ("TILDE",`^${lA[pA.LONETILDE]}${lA[pA.XRANGEPLAIN]}$`);dQ("TILDELOOSE",`^${lA[pA.LONETILDE]}${lA[pA.XRANGEPLAINLOOSE]}$`);dQ("LONECARET","(?:\\^)");dQ("CARETTRIM",`(\\s*)${lA[pA.LONECARET]}\\s+`,!0);B6.caretTrimReplace="$1^";dQ("CARET",`^${lA[pA.LONECARET]}${lA[pA.XRANGEPLAIN]}$`);dQ("CARETLOOSE",`^${lA[pA.LONECARET]}${lA[pA.XRANGEPLAINLOOSE]}$`);dQ("COMPARATORLOOSE",`^${lA[pA.GTLT]}\\s*(${lA[pA.LOOSEPLAIN]})$|^$`);dQ("COMPARATOR",`^${lA[pA.GTLT]}\\s*(${lA[pA.FULLPLAIN]})$|^$`);dQ("COMPARATORTRIM",`(\\s*)${lA[pA.GTLT]}\\s*(${lA[pA.LOOSEPLAIN]}|${lA[pA.XRANGEPLAIN]})`,!0);B6.comparatorTrimReplace="$1$2$3";dQ("HYPHENRANGE",`^\\s*(${lA[pA.XRANGEPLAIN]})\\s+-\\s+(${lA[pA.XRANGEPLAIN]})\\s*$`);dQ("HYPHENRANGELOOSE",`^\\s*(${lA[pA.XRANGEPLAINLOOSE]})\\s+-\\s+(${lA[pA.XRANGEPLAINLOOSE]})\\s*$`);dQ("STAR","(<|>)?=?\\s*\\*");dQ("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");dQ("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var aj=R((tkY,MkA)=>{var NwB=Object.freeze({loose:!0}),LwB=Object.freeze({}),qwB=(A)=>{if(!A)return LwB;if(typeof A!=="object")return NwB;return A};MkA.exports=qwB});var El=R((ekY,wkA)=>{var zkA=/^[0-9]+$/,RkA=(A,Q)=>{let B=zkA.test(A),Y=zkA.test(Q);if(B&&Y)A=+A,Q=+Q;return A===Q?0:B&&!Y?-1:Y&&!B?1:ARkA(Q,A);wkA.exports={compareIdentifiers:RkA,rcompareIdentifiers:MwB}});var jJ=R((A_Y,TkA)=>{var oj=gN(),{MAX_LENGTH:jkA,MAX_SAFE_INTEGER:tj}=hN(),{safeRe:OkA,safeSrc:PkA,t:ej}=sE(),zwB=aj(),{compareIdentifiers:rE}=El();class aC{constructor(A,Q){if(Q=zwB(Q),A instanceof aC)if(A.loose===!!Q.loose&&A.includePrerelease===!!Q.includePrerelease)return A;else A=A.version;else if(typeof A!=="string")throw TypeError(`Invalid version. Must be a string. Got type "${typeof A}".`);if(A.length>jkA)throw TypeError(`version is longer than ${jkA} characters`);oj("SemVer",A,Q),this.options=Q,this.loose=!!Q.loose,this.includePrerelease=!!Q.includePrerelease;let B=A.trim().match(Q.loose?OkA[ej.LOOSE]:OkA[ej.FULL]);if(!B)throw TypeError(`Invalid Version: ${A}`);if(this.raw=A,this.major=+B[1],this.minor=+B[2],this.patch=+B[3],this.major>tj||this.major<0)throw TypeError("Invalid major version");if(this.minor>tj||this.minor<0)throw TypeError("Invalid minor version");if(this.patch>tj||this.patch<0)throw TypeError("Invalid patch version");if(!B[4])this.prerelease=[];else this.prerelease=B[4].split(".").map((Y)=>{if(/^[0-9]+$/.test(Y)){let J=+Y;if(J>=0&&J=0)if(typeof this.prerelease[J]==="number")this.prerelease[J]++,J=-2;if(J===-1){if(Q===this.prerelease.join(".")&&B===!1)throw Error("invalid increment argument: identifier already exists");this.prerelease.push(Y)}}if(Q){let J=[Q,Y];if(B===!1)J=[Q];if(rE(this.prerelease[0],Q)===0){if(isNaN(this.prerelease[1]))this.prerelease=J}else this.prerelease=J}break}default:throw Error(`invalid increment argument: ${A}`)}if(this.raw=this.format(),this.build.length)this.raw+=`+${this.build.join(".")}`;return this}}TkA.exports=aC});var iZ=R((Q_Y,kkA)=>{var SkA=jJ(),RwB=(A,Q,B=!1)=>{if(A instanceof SkA)return A;try{return new SkA(A,Q)}catch(Y){if(!B)return null;throw Y}};kkA.exports=RwB});var vkA=R((B_Y,_kA)=>{var wwB=iZ(),jwB=(A,Q)=>{let B=wwB(A,Q);return B?B.version:null};_kA.exports=jwB});var hkA=R((Y_Y,ykA)=>{var OwB=iZ(),PwB=(A,Q)=>{let B=OwB(A.trim().replace(/^[=v]+/,""),Q);return B?B.version:null};ykA.exports=PwB});var fkA=R((J_Y,xkA)=>{var gkA=jJ(),TwB=(A,Q,B,Y,J)=>{if(typeof B==="string")J=Y,Y=B,B=void 0;try{return new gkA(A instanceof gkA?A.version:A,B).inc(Q,Y,J).version}catch(C){return null}};xkA.exports=TwB});var ukA=R((C_Y,mkA)=>{var bkA=iZ(),SwB=(A,Q)=>{let B=bkA(A,null,!0),Y=bkA(Q,null,!0),J=B.compare(Y);if(J===0)return null;let C=J>0,X=C?B:Y,G=C?Y:B,F=!!X.prerelease.length;if(!!G.prerelease.length&&!F){if(!G.patch&&!G.minor)return"major";if(G.compareMain(X)===0){if(G.minor&&!G.patch)return"minor";return"patch"}}let Z=F?"pre":"";if(B.major!==Y.major)return Z+"major";if(B.minor!==Y.minor)return Z+"minor";if(B.patch!==Y.patch)return Z+"patch";return"prerelease"};mkA.exports=SwB});var ckA=R((X_Y,dkA)=>{var kwB=jJ(),_wB=(A,Q)=>new kwB(A,Q).major;dkA.exports=_wB});var pkA=R((G_Y,lkA)=>{var vwB=jJ(),ywB=(A,Q)=>new vwB(A,Q).minor;lkA.exports=ywB});var nkA=R((F_Y,ikA)=>{var hwB=jJ(),gwB=(A,Q)=>new hwB(A,Q).patch;ikA.exports=gwB});var rkA=R((W_Y,skA)=>{var xwB=iZ(),fwB=(A,Q)=>{let B=xwB(A,Q);return B&&B.prerelease.length?B.prerelease:null};skA.exports=fwB});var T5=R((Z_Y,okA)=>{var akA=jJ(),bwB=(A,Q,B)=>new akA(A,B).compare(new akA(Q,B));okA.exports=bwB});var ekA=R(($_Y,tkA)=>{var mwB=T5(),uwB=(A,Q,B)=>mwB(Q,A,B);tkA.exports=uwB});var Q_A=R((U_Y,A_A)=>{var dwB=T5(),cwB=(A,Q)=>dwB(A,Q,!0);A_A.exports=cwB});var AO=R((E_Y,Y_A)=>{var B_A=jJ(),lwB=(A,Q,B)=>{let Y=new B_A(A,B),J=new B_A(Q,B);return Y.compare(J)||Y.compareBuild(J)};Y_A.exports=lwB});var C_A=R((K_Y,J_A)=>{var pwB=AO(),iwB=(A,Q)=>A.sort((B,Y)=>pwB(B,Y,Q));J_A.exports=iwB});var G_A=R((V_Y,X_A)=>{var nwB=AO(),swB=(A,Q)=>A.sort((B,Y)=>nwB(Y,B,Q));X_A.exports=swB});var xN=R((I_Y,F_A)=>{var rwB=T5(),awB=(A,Q,B)=>rwB(A,Q,B)>0;F_A.exports=awB});var QO=R((H_Y,W_A)=>{var owB=T5(),twB=(A,Q,B)=>owB(A,Q,B)<0;W_A.exports=twB});var Kl=R((D_Y,Z_A)=>{var ewB=T5(),AjB=(A,Q,B)=>ewB(A,Q,B)===0;Z_A.exports=AjB});var Vl=R((N_Y,$_A)=>{var QjB=T5(),BjB=(A,Q,B)=>QjB(A,Q,B)!==0;$_A.exports=BjB});var BO=R((L_Y,U_A)=>{var YjB=T5(),JjB=(A,Q,B)=>YjB(A,Q,B)>=0;U_A.exports=JjB});var YO=R((q_Y,E_A)=>{var CjB=T5(),XjB=(A,Q,B)=>CjB(A,Q,B)<=0;E_A.exports=XjB});var Il=R((M_Y,K_A)=>{var GjB=Kl(),FjB=Vl(),WjB=xN(),ZjB=BO(),$jB=QO(),UjB=YO(),EjB=(A,Q,B,Y)=>{switch(Q){case"===":if(typeof A==="object")A=A.version;if(typeof B==="object")B=B.version;return A===B;case"!==":if(typeof A==="object")A=A.version;if(typeof B==="object")B=B.version;return A!==B;case"":case"=":case"==":return GjB(A,B,Y);case"!=":return FjB(A,B,Y);case">":return WjB(A,B,Y);case">=":return ZjB(A,B,Y);case"<":return $jB(A,B,Y);case"<=":return UjB(A,B,Y);default:throw TypeError(`Invalid operator: ${Q}`)}};K_A.exports=EjB});var I_A=R((z_Y,V_A)=>{var KjB=jJ(),VjB=iZ(),{safeRe:JO,t:CO}=sE(),IjB=(A,Q)=>{if(A instanceof KjB)return A;if(typeof A==="number")A=String(A);if(typeof A!=="string")return null;Q=Q||{};let B=null;if(!Q.rtl)B=A.match(Q.includePrerelease?JO[CO.COERCEFULL]:JO[CO.COERCE]);else{let F=Q.includePrerelease?JO[CO.COERCERTLFULL]:JO[CO.COERCERTL],W;while((W=F.exec(A))&&(!B||B.index+B[0].length!==A.length)){if(!B||W.index+W[0].length!==B.index+B[0].length)B=W;F.lastIndex=W.index+W[1].length+W[2].length}F.lastIndex=-1}if(B===null)return null;let Y=B[2],J=B[3]||"0",C=B[4]||"0",X=Q.includePrerelease&&B[5]?`-${B[5]}`:"",G=Q.includePrerelease&&B[6]?`+${B[6]}`:"";return VjB(`${Y}.${J}.${C}${X}${G}`,Q)};V_A.exports=IjB});var N_A=R((R_Y,D_A)=>{class H_A{constructor(){this.max=1000,this.map=new Map}get(A){let Q=this.map.get(A);if(Q===void 0)return;else return this.map.delete(A),this.map.set(A,Q),Q}delete(A){return this.map.delete(A)}set(A,Q){if(!this.delete(A)&&Q!==void 0){if(this.map.size>=this.max){let Y=this.map.keys().next().value;this.delete(Y)}this.map.set(A,Q)}return this}}D_A.exports=H_A});var S5=R((w_Y,z_A)=>{var HjB=/\s+/g;class fN{constructor(A,Q){if(Q=NjB(Q),A instanceof fN)if(A.loose===!!Q.loose&&A.includePrerelease===!!Q.includePrerelease)return A;else return new fN(A.raw,Q);if(A instanceof Hl)return this.raw=A.value,this.set=[[A]],this.formatted=void 0,this;if(this.options=Q,this.loose=!!Q.loose,this.includePrerelease=!!Q.includePrerelease,this.raw=A.trim().replace(HjB," "),this.set=this.raw.split("||").map((B)=>this.parseRange(B.trim())).filter((B)=>B.length),!this.set.length)throw TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let B=this.set[0];if(this.set=this.set.filter((Y)=>!q_A(Y[0])),this.set.length===0)this.set=[B];else if(this.set.length>1){for(let Y of this.set)if(Y.length===1&&jjB(Y[0])){this.set=[Y];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let A=0;A0)this.formatted+="||";let Q=this.set[A];for(let B=0;B0)this.formatted+=" ";this.formatted+=Q[B].toString().trim()}}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(A){let B=((this.options.includePrerelease&&RjB)|(this.options.loose&&wjB))+":"+A,Y=L_A.get(B);if(Y)return Y;let J=this.options.loose,C=J?d9[F9.HYPHENRANGELOOSE]:d9[F9.HYPHENRANGE];A=A.replace(C,gjB(this.options.includePrerelease)),U0("hyphen replace",A),A=A.replace(d9[F9.COMPARATORTRIM],qjB),U0("comparator trim",A),A=A.replace(d9[F9.TILDETRIM],MjB),U0("tilde trim",A),A=A.replace(d9[F9.CARETTRIM],zjB),U0("caret trim",A);let X=A.split(" ").map((Z)=>OjB(Z,this.options)).join(" ").split(/\s+/).map((Z)=>hjB(Z,this.options));if(J)X=X.filter((Z)=>{return U0("loose invalid filter",Z,this.options),!!Z.match(d9[F9.COMPARATORLOOSE])});U0("range list",X);let G=new Map,F=X.map((Z)=>new Hl(Z,this.options));for(let Z of F){if(q_A(Z))return[Z];G.set(Z.value,Z)}if(G.size>1&&G.has(""))G.delete("");let W=[...G.values()];return L_A.set(B,W),W}intersects(A,Q){if(!(A instanceof fN))throw TypeError("a Range is required");return this.set.some((B)=>{return M_A(B,Q)&&A.set.some((Y)=>{return M_A(Y,Q)&&B.every((J)=>{return Y.every((C)=>{return J.intersects(C,Q)})})})})}test(A){if(!A)return!1;if(typeof A==="string")try{A=new LjB(A,this.options)}catch(Q){return!1}for(let Q=0;QA.value==="<0.0.0-0",jjB=(A)=>A.value==="",M_A=(A,Q)=>{let B=!0,Y=A.slice(),J=Y.pop();while(B&&Y.length)B=Y.every((C)=>{return J.intersects(C,Q)}),J=Y.pop();return B},OjB=(A,Q)=>{return U0("comp",A,Q),A=SjB(A,Q),U0("caret",A),A=PjB(A,Q),U0("tildes",A),A=_jB(A,Q),U0("xrange",A),A=yjB(A,Q),U0("stars",A),A},W9=(A)=>!A||A.toLowerCase()==="x"||A==="*",PjB=(A,Q)=>{return A.trim().split(/\s+/).map((B)=>TjB(B,Q)).join(" ")},TjB=(A,Q)=>{let B=Q.loose?d9[F9.TILDELOOSE]:d9[F9.TILDE];return A.replace(B,(Y,J,C,X,G)=>{U0("tilde",A,Y,J,C,X,G);let F;if(W9(J))F="";else if(W9(C))F=`>=${J}.0.0 <${+J+1}.0.0-0`;else if(W9(X))F=`>=${J}.${C}.0 <${J}.${+C+1}.0-0`;else if(G)U0("replaceTilde pr",G),F=`>=${J}.${C}.${X}-${G} <${J}.${+C+1}.0-0`;else F=`>=${J}.${C}.${X} <${J}.${+C+1}.0-0`;return U0("tilde return",F),F})},SjB=(A,Q)=>{return A.trim().split(/\s+/).map((B)=>kjB(B,Q)).join(" ")},kjB=(A,Q)=>{U0("caret",A,Q);let B=Q.loose?d9[F9.CARETLOOSE]:d9[F9.CARET],Y=Q.includePrerelease?"-0":"";return A.replace(B,(J,C,X,G,F)=>{U0("caret",A,J,C,X,G,F);let W;if(W9(C))W="";else if(W9(X))W=`>=${C}.0.0${Y} <${+C+1}.0.0-0`;else if(W9(G))if(C==="0")W=`>=${C}.${X}.0${Y} <${C}.${+X+1}.0-0`;else W=`>=${C}.${X}.0${Y} <${+C+1}.0.0-0`;else if(F)if(U0("replaceCaret pr",F),C==="0")if(X==="0")W=`>=${C}.${X}.${G}-${F} <${C}.${X}.${+G+1}-0`;else W=`>=${C}.${X}.${G}-${F} <${C}.${+X+1}.0-0`;else W=`>=${C}.${X}.${G}-${F} <${+C+1}.0.0-0`;else if(U0("no pr"),C==="0")if(X==="0")W=`>=${C}.${X}.${G}${Y} <${C}.${X}.${+G+1}-0`;else W=`>=${C}.${X}.${G}${Y} <${C}.${+X+1}.0-0`;else W=`>=${C}.${X}.${G} <${+C+1}.0.0-0`;return U0("caret return",W),W})},_jB=(A,Q)=>{return U0("replaceXRanges",A,Q),A.split(/\s+/).map((B)=>vjB(B,Q)).join(" ")},vjB=(A,Q)=>{A=A.trim();let B=Q.loose?d9[F9.XRANGELOOSE]:d9[F9.XRANGE];return A.replace(B,(Y,J,C,X,G,F)=>{U0("xRange",A,Y,J,C,X,G,F);let W=W9(C),Z=W||W9(X),U=Z||W9(G),$=U;if(J==="="&&$)J="";if(F=Q.includePrerelease?"-0":"",W)if(J===">"||J==="<")Y="<0.0.0-0";else Y="*";else if(J&&$){if(Z)X=0;if(G=0,J===">")if(J=">=",Z)C=+C+1,X=0,G=0;else X=+X+1,G=0;else if(J==="<=")if(J="<",Z)C=+C+1;else X=+X+1;if(J==="<")F="-0";Y=`${J+C}.${X}.${G}${F}`}else if(Z)Y=`>=${C}.0.0${F} <${+C+1}.0.0-0`;else if(U)Y=`>=${C}.${X}.0${F} <${C}.${+X+1}.0-0`;return U0("xRange return",Y),Y})},yjB=(A,Q)=>{return U0("replaceStars",A,Q),A.trim().replace(d9[F9.STAR],"")},hjB=(A,Q)=>{return U0("replaceGTE0",A,Q),A.trim().replace(d9[Q.includePrerelease?F9.GTE0PRE:F9.GTE0],"")},gjB=(A)=>(Q,B,Y,J,C,X,G,F,W,Z,U,$)=>{if(W9(Y))B="";else if(W9(J))B=`>=${Y}.0.0${A?"-0":""}`;else if(W9(C))B=`>=${Y}.${J}.0${A?"-0":""}`;else if(X)B=`>=${B}`;else B=`>=${B}${A?"-0":""}`;if(W9(W))F="";else if(W9(Z))F=`<${+W+1}.0.0-0`;else if(W9(U))F=`<${W}.${+Z+1}.0-0`;else if($)F=`<=${W}.${Z}.${U}-${$}`;else if(A)F=`<${W}.${Z}.${+U+1}-0`;else F=`<=${F}`;return`${B} ${F}`.trim()},xjB=(A,Q,B)=>{for(let Y=0;Y0){let J=A[Y].semver;if(J.major===Q.major&&J.minor===Q.minor&&J.patch===Q.patch)return!0}}return!1}return!0}});var bN=R((j_Y,T_A)=>{var mN=Symbol("SemVer ANY");class XO{static get ANY(){return mN}constructor(A,Q){if(Q=R_A(Q),A instanceof XO)if(A.loose===!!Q.loose)return A;else A=A.value;if(A=A.trim().split(/\s+/).join(" "),Nl("comparator",A,Q),this.options=Q,this.loose=!!Q.loose,this.parse(A),this.semver===mN)this.value="";else this.value=this.operator+this.semver.version;Nl("comp",this)}parse(A){let Q=this.options.loose?w_A[j_A.COMPARATORLOOSE]:w_A[j_A.COMPARATOR],B=A.match(Q);if(!B)throw TypeError(`Invalid comparator: ${A}`);if(this.operator=B[1]!==void 0?B[1]:"",this.operator==="=")this.operator="";if(!B[2])this.semver=mN;else this.semver=new O_A(B[2],this.options.loose)}toString(){return this.value}test(A){if(Nl("Comparator.test",A,this.options.loose),this.semver===mN||A===mN)return!0;if(typeof A==="string")try{A=new O_A(A,this.options)}catch(Q){return!1}return Dl(A,this.operator,this.semver,this.options)}intersects(A,Q){if(!(A instanceof XO))throw TypeError("a Comparator is required");if(this.operator===""){if(this.value==="")return!0;return new P_A(A.value,Q).test(this.value)}else if(A.operator===""){if(A.value==="")return!0;return new P_A(this.value,Q).test(A.semver)}if(Q=R_A(Q),Q.includePrerelease&&(this.value==="<0.0.0-0"||A.value==="<0.0.0-0"))return!1;if(!Q.includePrerelease&&(this.value.startsWith("<0.0.0")||A.value.startsWith("<0.0.0")))return!1;if(this.operator.startsWith(">")&&A.operator.startsWith(">"))return!0;if(this.operator.startsWith("<")&&A.operator.startsWith("<"))return!0;if(this.semver.version===A.semver.version&&this.operator.includes("=")&&A.operator.includes("="))return!0;if(Dl(this.semver,"<",A.semver,Q)&&this.operator.startsWith(">")&&A.operator.startsWith("<"))return!0;if(Dl(this.semver,">",A.semver,Q)&&this.operator.startsWith("<")&&A.operator.startsWith(">"))return!0;return!1}}T_A.exports=XO;var R_A=aj(),{safeRe:w_A,t:j_A}=sE(),Dl=Il(),Nl=gN(),O_A=jJ(),P_A=S5()});var uN=R((O_Y,S_A)=>{var fjB=S5(),bjB=(A,Q,B)=>{try{Q=new fjB(Q,B)}catch(Y){return!1}return Q.test(A)};S_A.exports=bjB});var __A=R((P_Y,k_A)=>{var mjB=S5(),ujB=(A,Q)=>new mjB(A,Q).set.map((B)=>B.map((Y)=>Y.value).join(" ").trim().split(" "));k_A.exports=ujB});var y_A=R((T_Y,v_A)=>{var djB=jJ(),cjB=S5(),ljB=(A,Q,B)=>{let Y=null,J=null,C=null;try{C=new cjB(Q,B)}catch(X){return null}return A.forEach((X)=>{if(C.test(X)){if(!Y||J.compare(X)===-1)Y=X,J=new djB(Y,B)}}),Y};v_A.exports=ljB});var g_A=R((S_Y,h_A)=>{var pjB=jJ(),ijB=S5(),njB=(A,Q,B)=>{let Y=null,J=null,C=null;try{C=new ijB(Q,B)}catch(X){return null}return A.forEach((X)=>{if(C.test(X)){if(!Y||J.compare(X)===1)Y=X,J=new pjB(Y,B)}}),Y};h_A.exports=njB});var b_A=R((k_Y,f_A)=>{var Ll=jJ(),sjB=S5(),x_A=xN(),rjB=(A,Q)=>{A=new sjB(A,Q);let B=new Ll("0.0.0");if(A.test(B))return B;if(B=new Ll("0.0.0-0"),A.test(B))return B;B=null;for(let Y=0;Y{let G=new Ll(X.semver.version);switch(X.operator){case">":if(G.prerelease.length===0)G.patch++;else G.prerelease.push(0);G.raw=G.format();case"":case">=":if(!C||x_A(G,C))C=G;break;case"<":case"<=":break;default:throw Error(`Unexpected operation: ${X.operator}`)}}),C&&(!B||x_A(B,C)))B=C}if(B&&A.test(B))return B;return null};f_A.exports=rjB});var u_A=R((__Y,m_A)=>{var ajB=S5(),ojB=(A,Q)=>{try{return new ajB(A,Q).range||"*"}catch(B){return null}};m_A.exports=ojB});var GO=R((v_Y,p_A)=>{var tjB=jJ(),l_A=bN(),{ANY:ejB}=l_A,AOB=S5(),QOB=uN(),d_A=xN(),c_A=QO(),BOB=YO(),YOB=BO(),JOB=(A,Q,B,Y)=>{A=new tjB(A,Y),Q=new AOB(Q,Y);let J,C,X,G,F;switch(B){case">":J=d_A,C=BOB,X=c_A,G=">",F=">=";break;case"<":J=c_A,C=YOB,X=d_A,G="<",F="<=";break;default:throw TypeError('Must provide a hilo val of "<" or ">"')}if(QOB(A,Q,Y))return!1;for(let W=0;W{if(E.semver===ejB)E=new l_A(">=0.0.0");if(U=U||E,$=$||E,J(E.semver,U.semver,Y))U=E;else if(X(E.semver,$.semver,Y))$=E}),U.operator===G||U.operator===F)return!1;if((!$.operator||$.operator===G)&&C(A,$.semver))return!1;else if($.operator===F&&X(A,$.semver))return!1}return!0};p_A.exports=JOB});var n_A=R((y_Y,i_A)=>{var COB=GO(),XOB=(A,Q,B)=>COB(A,Q,">",B);i_A.exports=XOB});var r_A=R((h_Y,s_A)=>{var GOB=GO(),FOB=(A,Q,B)=>GOB(A,Q,"<",B);s_A.exports=FOB});var t_A=R((g_Y,o_A)=>{var a_A=S5(),WOB=(A,Q,B)=>{return A=new a_A(A,B),Q=new a_A(Q,B),A.intersects(Q,B)};o_A.exports=WOB});var AvA=R((x_Y,e_A)=>{var ZOB=uN(),$OB=T5();e_A.exports=(A,Q,B)=>{let Y=[],J=null,C=null,X=A.sort((Z,U)=>$OB(Z,U,B));for(let Z of X)if(ZOB(Z,Q,B)){if(C=Z,!J)J=Z}else{if(C)Y.push([J,C]);C=null,J=null}if(J)Y.push([J,null]);let G=[];for(let[Z,U]of Y)if(Z===U)G.push(Z);else if(!U&&Z===X[0])G.push("*");else if(!U)G.push(`>=${Z}`);else if(Z===X[0])G.push(`<=${U}`);else G.push(`${Z} - ${U}`);let F=G.join(" || "),W=typeof Q.raw==="string"?Q.raw:String(Q);return F.length{var QvA=S5(),Ml=bN(),{ANY:ql}=Ml,dN=uN(),zl=T5(),UOB=(A,Q,B={})=>{if(A===Q)return!0;A=new QvA(A,B),Q=new QvA(Q,B);let Y=!1;A:for(let J of A.set){for(let C of Q.set){let X=KOB(J,C,B);if(Y=Y||X!==null,X)continue A}if(Y)return!1}return!0},EOB=[new Ml(">=0.0.0-0")],BvA=[new Ml(">=0.0.0")],KOB=(A,Q,B)=>{if(A===Q)return!0;if(A.length===1&&A[0].semver===ql)if(Q.length===1&&Q[0].semver===ql)return!0;else if(B.includePrerelease)A=EOB;else A=BvA;if(Q.length===1&&Q[0].semver===ql)if(B.includePrerelease)return!0;else Q=BvA;let Y=new Set,J,C;for(let E of A)if(E.operator===">"||E.operator===">=")J=YvA(J,E,B);else if(E.operator==="<"||E.operator==="<=")C=JvA(C,E,B);else Y.add(E.semver);if(Y.size>1)return null;let X;if(J&&C){if(X=zl(J.semver,C.semver,B),X>0)return null;else if(X===0&&(J.operator!==">="||C.operator!=="<="))return null}for(let E of Y){if(J&&!dN(E,String(J),B))return null;if(C&&!dN(E,String(C),B))return null;for(let K of Q)if(!dN(E,String(K),B))return!1;return!0}let G,F,W,Z,U=C&&!B.includePrerelease&&C.semver.prerelease.length?C.semver:!1,$=J&&!B.includePrerelease&&J.semver.prerelease.length?J.semver:!1;if(U&&U.prerelease.length===1&&C.operator==="<"&&U.prerelease[0]===0)U=!1;for(let E of Q){if(Z=Z||E.operator===">"||E.operator===">=",W=W||E.operator==="<"||E.operator==="<=",J){if($){if(E.semver.prerelease&&E.semver.prerelease.length&&E.semver.major===$.major&&E.semver.minor===$.minor&&E.semver.patch===$.patch)$=!1}if(E.operator===">"||E.operator===">="){if(G=YvA(J,E,B),G===E&&G!==J)return!1}else if(J.operator===">="&&!dN(J.semver,String(E),B))return!1}if(C){if(U){if(E.semver.prerelease&&E.semver.prerelease.length&&E.semver.major===U.major&&E.semver.minor===U.minor&&E.semver.patch===U.patch)U=!1}if(E.operator==="<"||E.operator==="<="){if(F=JvA(C,E,B),F===E&&F!==C)return!1}else if(C.operator==="<="&&!dN(C.semver,String(E),B))return!1}if(!E.operator&&(C||J)&&X!==0)return!1}if(J&&W&&!C&&X!==0)return!1;if(C&&Z&&!J&&X!==0)return!1;if($||U)return!1;return!0},YvA=(A,Q,B)=>{if(!A)return Q;let Y=zl(A.semver,Q.semver,B);return Y>0?A:Y<0?Q:Q.operator===">"&&A.operator===">="?Q:A},JvA=(A,Q,B)=>{if(!A)return Q;let Y=zl(A.semver,Q.semver,B);return Y<0?A:Y>0?Q:Q.operator==="<"&&A.operator==="<="?Q:A};CvA.exports=UOB});var ZvA=R((b_Y,WvA)=>{var Rl=sE(),GvA=hN(),VOB=jJ(),FvA=El(),IOB=iZ(),HOB=vkA(),DOB=hkA(),NOB=fkA(),LOB=ukA(),qOB=ckA(),MOB=pkA(),zOB=nkA(),ROB=rkA(),wOB=T5(),jOB=ekA(),OOB=Q_A(),POB=AO(),TOB=C_A(),SOB=G_A(),kOB=xN(),_OB=QO(),vOB=Kl(),yOB=Vl(),hOB=BO(),gOB=YO(),xOB=Il(),fOB=I_A(),bOB=bN(),mOB=S5(),uOB=uN(),dOB=__A(),cOB=y_A(),lOB=g_A(),pOB=b_A(),iOB=u_A(),nOB=GO(),sOB=n_A(),rOB=r_A(),aOB=t_A(),oOB=AvA(),tOB=XvA();WvA.exports={parse:IOB,valid:HOB,clean:DOB,inc:NOB,diff:LOB,major:qOB,minor:MOB,patch:zOB,prerelease:ROB,compare:wOB,rcompare:jOB,compareLoose:OOB,compareBuild:POB,sort:TOB,rsort:SOB,gt:kOB,lt:_OB,eq:vOB,neq:yOB,gte:hOB,lte:gOB,cmp:xOB,coerce:fOB,Comparator:bOB,Range:mOB,satisfies:uOB,toComparators:dOB,maxSatisfying:cOB,minSatisfying:lOB,minVersion:pOB,validRange:iOB,outside:nOB,gtr:sOB,ltr:rOB,intersects:aOB,simplifyRange:oOB,subset:tOB,SemVer:VOB,re:Rl.re,src:Rl.src,tokens:Rl.t,SEMVER_SPEC_VERSION:GvA.SEMVER_SPEC_VERSION,RELEASE_TYPES:GvA.RELEASE_TYPES,compareIdentifiers:FvA.compareIdentifiers,rcompareIdentifiers:FvA.rcompareIdentifiers}});var EvA=R(($vA)=>{Object.defineProperty($vA,"__esModule",{value:!0});$vA.VERSION=void 0;$vA.VERSION="0.57.2"});var VvA=R((KvA)=>{Object.defineProperty(KvA,"__esModule",{value:!0});KvA.SeverityNumber=void 0;var eOB;(function(A){A[A.UNSPECIFIED=0]="UNSPECIFIED",A[A.TRACE=1]="TRACE",A[A.TRACE2=2]="TRACE2",A[A.TRACE3=3]="TRACE3",A[A.TRACE4=4]="TRACE4",A[A.DEBUG=5]="DEBUG",A[A.DEBUG2=6]="DEBUG2",A[A.DEBUG3=7]="DEBUG3",A[A.DEBUG4=8]="DEBUG4",A[A.INFO=9]="INFO",A[A.INFO2=10]="INFO2",A[A.INFO3=11]="INFO3",A[A.INFO4=12]="INFO4",A[A.WARN=13]="WARN",A[A.WARN2=14]="WARN2",A[A.WARN3=15]="WARN3",A[A.WARN4=16]="WARN4",A[A.ERROR=17]="ERROR",A[A.ERROR2=18]="ERROR2",A[A.ERROR3=19]="ERROR3",A[A.ERROR4=20]="ERROR4",A[A.FATAL=21]="FATAL",A[A.FATAL2=22]="FATAL2",A[A.FATAL3=23]="FATAL3",A[A.FATAL4=24]="FATAL4"})(eOB=KvA.SeverityNumber||(KvA.SeverityNumber={}))});var FO=R((IvA)=>{Object.defineProperty(IvA,"__esModule",{value:!0});IvA.NOOP_LOGGER=IvA.NoopLogger=void 0;class jl{emit(A){}}IvA.NoopLogger=jl;IvA.NOOP_LOGGER=new jl});var WO=R((DvA)=>{Object.defineProperty(DvA,"__esModule",{value:!0});DvA.NOOP_LOGGER_PROVIDER=DvA.NoopLoggerProvider=void 0;var QPB=FO();class Ol{getLogger(A,Q,B){return new QPB.NoopLogger}}DvA.NoopLoggerProvider=Ol;DvA.NOOP_LOGGER_PROVIDER=new Ol});var Pl=R((qvA)=>{Object.defineProperty(qvA,"__esModule",{value:!0});qvA.ProxyLogger=void 0;var YPB=FO();class LvA{constructor(A,Q,B,Y){this._provider=A,this.name=Q,this.version=B,this.options=Y}emit(A){this._getLogger().emit(A)}_getLogger(){if(this._delegate)return this._delegate;let A=this._provider.getDelegateLogger(this.name,this.version,this.options);if(!A)return YPB.NOOP_LOGGER;return this._delegate=A,this._delegate}}qvA.ProxyLogger=LvA});var Tl=R((RvA)=>{Object.defineProperty(RvA,"__esModule",{value:!0});RvA.ProxyLoggerProvider=void 0;var JPB=WO(),CPB=Pl();class zvA{getLogger(A,Q,B){var Y;return(Y=this.getDelegateLogger(A,Q,B))!==null&&Y!==void 0?Y:new CPB.ProxyLogger(this,A,Q,B)}getDelegate(){var A;return(A=this._delegate)!==null&&A!==void 0?A:JPB.NOOP_LOGGER_PROVIDER}setDelegate(A){this._delegate=A}getDelegateLogger(A,Q,B){var Y;return(Y=this._delegate)===null||Y===void 0?void 0:Y.getLogger(A,Q,B)}}RvA.ProxyLoggerProvider=zvA});var PvA=R((jvA)=>{Object.defineProperty(jvA,"__esModule",{value:!0});jvA._globalThis=void 0;jvA._globalThis=typeof globalThis==="object"?globalThis:global});var TvA=R((Sl)=>{Object.defineProperty(Sl,"__esModule",{value:!0});Sl._globalThis=void 0;var XPB=PvA();Object.defineProperty(Sl,"_globalThis",{enumerable:!0,get:function(){return XPB._globalThis}})});var SvA=R((kl)=>{Object.defineProperty(kl,"__esModule",{value:!0});kl._globalThis=void 0;var FPB=TvA();Object.defineProperty(kl,"_globalThis",{enumerable:!0,get:function(){return FPB._globalThis}})});var vvA=R((kvA)=>{Object.defineProperty(kvA,"__esModule",{value:!0});kvA.API_BACKWARDS_COMPATIBILITY_VERSION=kvA.makeGetter=kvA._global=kvA.GLOBAL_LOGS_API_KEY=void 0;var ZPB=SvA();kvA.GLOBAL_LOGS_API_KEY=Symbol.for("io.opentelemetry.js.api.logs");kvA._global=ZPB._globalThis;function $PB(A,Q,B){return(Y)=>Y===A?Q:B}kvA.makeGetter=$PB;kvA.API_BACKWARDS_COMPATIBILITY_VERSION=1});var xvA=R((hvA)=>{Object.defineProperty(hvA,"__esModule",{value:!0});hvA.LogsAPI=void 0;var k5=vvA(),VPB=WO(),yvA=Tl();class _l{constructor(){this._proxyLoggerProvider=new yvA.ProxyLoggerProvider}static getInstance(){if(!this._instance)this._instance=new _l;return this._instance}setGlobalLoggerProvider(A){if(k5._global[k5.GLOBAL_LOGS_API_KEY])return this.getLoggerProvider();return k5._global[k5.GLOBAL_LOGS_API_KEY]=(0,k5.makeGetter)(k5.API_BACKWARDS_COMPATIBILITY_VERSION,A,VPB.NOOP_LOGGER_PROVIDER),this._proxyLoggerProvider.setDelegate(A),A}getLoggerProvider(){var A,Q;return(Q=(A=k5._global[k5.GLOBAL_LOGS_API_KEY])===null||A===void 0?void 0:A.call(k5._global,k5.API_BACKWARDS_COMPATIBILITY_VERSION))!==null&&Q!==void 0?Q:this._proxyLoggerProvider}getLogger(A,Q,B){return this.getLoggerProvider().getLogger(A,Q,B)}disable(){delete k5._global[k5.GLOBAL_LOGS_API_KEY],this._proxyLoggerProvider=new yvA.ProxyLoggerProvider}}hvA.LogsAPI=_l});var vl=R((AG)=>{Object.defineProperty(AG,"__esModule",{value:!0});AG.logs=AG.ProxyLoggerProvider=AG.ProxyLogger=AG.NoopLoggerProvider=AG.NOOP_LOGGER_PROVIDER=AG.NoopLogger=AG.NOOP_LOGGER=AG.SeverityNumber=void 0;var IPB=VvA();Object.defineProperty(AG,"SeverityNumber",{enumerable:!0,get:function(){return IPB.SeverityNumber}});var fvA=FO();Object.defineProperty(AG,"NOOP_LOGGER",{enumerable:!0,get:function(){return fvA.NOOP_LOGGER}});Object.defineProperty(AG,"NoopLogger",{enumerable:!0,get:function(){return fvA.NoopLogger}});var bvA=WO();Object.defineProperty(AG,"NOOP_LOGGER_PROVIDER",{enumerable:!0,get:function(){return bvA.NOOP_LOGGER_PROVIDER}});Object.defineProperty(AG,"NoopLoggerProvider",{enumerable:!0,get:function(){return bvA.NoopLoggerProvider}});var HPB=Pl();Object.defineProperty(AG,"ProxyLogger",{enumerable:!0,get:function(){return HPB.ProxyLogger}});var DPB=Tl();Object.defineProperty(AG,"ProxyLoggerProvider",{enumerable:!0,get:function(){return DPB.ProxyLoggerProvider}});var NPB=xvA();AG.logs=NPB.LogsAPI.getInstance()});var cvA=R((uvA)=>{Object.defineProperty(uvA,"__esModule",{value:!0});uvA.disableInstrumentations=uvA.enableInstrumentations=void 0;function LPB(A,Q,B,Y){for(let J=0,C=A.length;JQ.disable())}uvA.disableInstrumentations=qPB});var svA=R((ivA)=>{Object.defineProperty(ivA,"__esModule",{value:!0});ivA.registerInstrumentations=void 0;var lvA=yA(),zPB=vl(),pvA=cvA();function RPB(A){var Q,B;let Y=A.tracerProvider||lvA.trace.getTracerProvider(),J=A.meterProvider||lvA.metrics.getMeterProvider(),C=A.loggerProvider||zPB.logs.getLoggerProvider(),X=(B=(Q=A.instrumentations)===null||Q===void 0?void 0:Q.flat())!==null&&B!==void 0?B:[];return(0,pvA.enableInstrumentations)(X,Y,J,C),()=>{(0,pvA.disableInstrumentations)(X)}}ivA.registerInstrumentations=RPB});var cN=R((GvY,rvA)=>{var wPB=Number.MAX_SAFE_INTEGER||9007199254740991,jPB=["major","premajor","minor","preminor","patch","prepatch","prerelease"];rvA.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:16,MAX_SAFE_BUILD_LENGTH:250,MAX_SAFE_INTEGER:wPB,RELEASE_TYPES:jPB,SEMVER_SPEC_VERSION:"2.0.0",FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var lN=R((FvY,avA)=>{var OPB=typeof process==="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...A)=>console.error("SEMVER",...A):()=>{};avA.exports=OPB});var aE=R((Y6,ovA)=>{var{MAX_SAFE_COMPONENT_LENGTH:yl,MAX_SAFE_BUILD_LENGTH:PPB,MAX_LENGTH:TPB}=cN(),SPB=lN();Y6=ovA.exports={};var kPB=Y6.re=[],_PB=Y6.safeRe=[],iA=Y6.src=[],vPB=Y6.safeSrc=[],nA=Y6.t={},yPB=0,hl="[a-zA-Z0-9-]",hPB=[["\\s",1],["\\d",TPB],[hl,PPB]],gPB=(A)=>{for(let[Q,B]of hPB)A=A.split(`${Q}*`).join(`${Q}{0,${B}}`).split(`${Q}+`).join(`${Q}{1,${B}}`);return A},cQ=(A,Q,B)=>{let Y=gPB(Q),J=yPB++;SPB(A,J,Q),nA[A]=J,iA[J]=Q,vPB[J]=Y,kPB[J]=new RegExp(Q,B?"g":void 0),_PB[J]=new RegExp(Y,B?"g":void 0)};cQ("NUMERICIDENTIFIER","0|[1-9]\\d*");cQ("NUMERICIDENTIFIERLOOSE","\\d+");cQ("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${hl}*`);cQ("MAINVERSION",`(${iA[nA.NUMERICIDENTIFIER]})\\.(${iA[nA.NUMERICIDENTIFIER]})\\.(${iA[nA.NUMERICIDENTIFIER]})`);cQ("MAINVERSIONLOOSE",`(${iA[nA.NUMERICIDENTIFIERLOOSE]})\\.(${iA[nA.NUMERICIDENTIFIERLOOSE]})\\.(${iA[nA.NUMERICIDENTIFIERLOOSE]})`);cQ("PRERELEASEIDENTIFIER",`(?:${iA[nA.NUMERICIDENTIFIER]}|${iA[nA.NONNUMERICIDENTIFIER]})`);cQ("PRERELEASEIDENTIFIERLOOSE",`(?:${iA[nA.NUMERICIDENTIFIERLOOSE]}|${iA[nA.NONNUMERICIDENTIFIER]})`);cQ("PRERELEASE",`(?:-(${iA[nA.PRERELEASEIDENTIFIER]}(?:\\.${iA[nA.PRERELEASEIDENTIFIER]})*))`);cQ("PRERELEASELOOSE",`(?:-?(${iA[nA.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${iA[nA.PRERELEASEIDENTIFIERLOOSE]})*))`);cQ("BUILDIDENTIFIER",`${hl}+`);cQ("BUILD",`(?:\\+(${iA[nA.BUILDIDENTIFIER]}(?:\\.${iA[nA.BUILDIDENTIFIER]})*))`);cQ("FULLPLAIN",`v?${iA[nA.MAINVERSION]}${iA[nA.PRERELEASE]}?${iA[nA.BUILD]}?`);cQ("FULL",`^${iA[nA.FULLPLAIN]}$`);cQ("LOOSEPLAIN",`[v=\\s]*${iA[nA.MAINVERSIONLOOSE]}${iA[nA.PRERELEASELOOSE]}?${iA[nA.BUILD]}?`);cQ("LOOSE",`^${iA[nA.LOOSEPLAIN]}$`);cQ("GTLT","((?:<|>)?=?)");cQ("XRANGEIDENTIFIERLOOSE",`${iA[nA.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);cQ("XRANGEIDENTIFIER",`${iA[nA.NUMERICIDENTIFIER]}|x|X|\\*`);cQ("XRANGEPLAIN",`[v=\\s]*(${iA[nA.XRANGEIDENTIFIER]})(?:\\.(${iA[nA.XRANGEIDENTIFIER]})(?:\\.(${iA[nA.XRANGEIDENTIFIER]})(?:${iA[nA.PRERELEASE]})?${iA[nA.BUILD]}?)?)?`);cQ("XRANGEPLAINLOOSE",`[v=\\s]*(${iA[nA.XRANGEIDENTIFIERLOOSE]})(?:\\.(${iA[nA.XRANGEIDENTIFIERLOOSE]})(?:\\.(${iA[nA.XRANGEIDENTIFIERLOOSE]})(?:${iA[nA.PRERELEASELOOSE]})?${iA[nA.BUILD]}?)?)?`);cQ("XRANGE",`^${iA[nA.GTLT]}\\s*${iA[nA.XRANGEPLAIN]}$`);cQ("XRANGELOOSE",`^${iA[nA.GTLT]}\\s*${iA[nA.XRANGEPLAINLOOSE]}$`);cQ("COERCEPLAIN",`(^|[^\\d])(\\d{1,${yl}})(?:\\.(\\d{1,${yl}}))?(?:\\.(\\d{1,${yl}}))?`);cQ("COERCE",`${iA[nA.COERCEPLAIN]}(?:$|[^\\d])`);cQ("COERCEFULL",iA[nA.COERCEPLAIN]+`(?:${iA[nA.PRERELEASE]})?(?:${iA[nA.BUILD]})?(?:$|[^\\d])`);cQ("COERCERTL",iA[nA.COERCE],!0);cQ("COERCERTLFULL",iA[nA.COERCEFULL],!0);cQ("LONETILDE","(?:~>?)");cQ("TILDETRIM",`(\\s*)${iA[nA.LONETILDE]}\\s+`,!0);Y6.tildeTrimReplace="$1~";cQ("TILDE",`^${iA[nA.LONETILDE]}${iA[nA.XRANGEPLAIN]}$`);cQ("TILDELOOSE",`^${iA[nA.LONETILDE]}${iA[nA.XRANGEPLAINLOOSE]}$`);cQ("LONECARET","(?:\\^)");cQ("CARETTRIM",`(\\s*)${iA[nA.LONECARET]}\\s+`,!0);Y6.caretTrimReplace="$1^";cQ("CARET",`^${iA[nA.LONECARET]}${iA[nA.XRANGEPLAIN]}$`);cQ("CARETLOOSE",`^${iA[nA.LONECARET]}${iA[nA.XRANGEPLAINLOOSE]}$`);cQ("COMPARATORLOOSE",`^${iA[nA.GTLT]}\\s*(${iA[nA.LOOSEPLAIN]})$|^$`);cQ("COMPARATOR",`^${iA[nA.GTLT]}\\s*(${iA[nA.FULLPLAIN]})$|^$`);cQ("COMPARATORTRIM",`(\\s*)${iA[nA.GTLT]}\\s*(${iA[nA.LOOSEPLAIN]}|${iA[nA.XRANGEPLAIN]})`,!0);Y6.comparatorTrimReplace="$1$2$3";cQ("HYPHENRANGE",`^\\s*(${iA[nA.XRANGEPLAIN]})\\s+-\\s+(${iA[nA.XRANGEPLAIN]})\\s*$`);cQ("HYPHENRANGELOOSE",`^\\s*(${iA[nA.XRANGEPLAINLOOSE]})\\s+-\\s+(${iA[nA.XRANGEPLAINLOOSE]})\\s*$`);cQ("STAR","(<|>)?=?\\s*\\*");cQ("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");cQ("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var ZO=R((WvY,tvA)=>{var xPB=Object.freeze({loose:!0}),fPB=Object.freeze({}),bPB=(A)=>{if(!A)return fPB;if(typeof A!=="object")return xPB;return A};tvA.exports=bPB});var gl=R((ZvY,QyA)=>{var evA=/^[0-9]+$/,AyA=(A,Q)=>{let B=evA.test(A),Y=evA.test(Q);if(B&&Y)A=+A,Q=+Q;return A===Q?0:B&&!Y?-1:Y&&!B?1:AAyA(Q,A);QyA.exports={compareIdentifiers:AyA,rcompareIdentifiers:mPB}});var OJ=R(($vY,CyA)=>{var $O=lN(),{MAX_LENGTH:ByA,MAX_SAFE_INTEGER:UO}=cN(),{safeRe:YyA,safeSrc:JyA,t:EO}=aE(),uPB=ZO(),{compareIdentifiers:oE}=gl();class oC{constructor(A,Q){if(Q=uPB(Q),A instanceof oC)if(A.loose===!!Q.loose&&A.includePrerelease===!!Q.includePrerelease)return A;else A=A.version;else if(typeof A!=="string")throw TypeError(`Invalid version. Must be a string. Got type "${typeof A}".`);if(A.length>ByA)throw TypeError(`version is longer than ${ByA} characters`);$O("SemVer",A,Q),this.options=Q,this.loose=!!Q.loose,this.includePrerelease=!!Q.includePrerelease;let B=A.trim().match(Q.loose?YyA[EO.LOOSE]:YyA[EO.FULL]);if(!B)throw TypeError(`Invalid Version: ${A}`);if(this.raw=A,this.major=+B[1],this.minor=+B[2],this.patch=+B[3],this.major>UO||this.major<0)throw TypeError("Invalid major version");if(this.minor>UO||this.minor<0)throw TypeError("Invalid minor version");if(this.patch>UO||this.patch<0)throw TypeError("Invalid patch version");if(!B[4])this.prerelease=[];else this.prerelease=B[4].split(".").map((Y)=>{if(/^[0-9]+$/.test(Y)){let J=+Y;if(J>=0&&J=0)if(typeof this.prerelease[J]==="number")this.prerelease[J]++,J=-2;if(J===-1){if(Q===this.prerelease.join(".")&&B===!1)throw Error("invalid increment argument: identifier already exists");this.prerelease.push(Y)}}if(Q){let J=[Q,Y];if(B===!1)J=[Q];if(oE(this.prerelease[0],Q)===0){if(isNaN(this.prerelease[1]))this.prerelease=J}else this.prerelease=J}break}default:throw Error(`invalid increment argument: ${A}`)}if(this.raw=this.format(),this.build.length)this.raw+=`+${this.build.join(".")}`;return this}}CyA.exports=oC});var nZ=R((UvY,GyA)=>{var XyA=OJ(),dPB=(A,Q,B=!1)=>{if(A instanceof XyA)return A;try{return new XyA(A,Q)}catch(Y){if(!B)return null;throw Y}};GyA.exports=dPB});var WyA=R((EvY,FyA)=>{var cPB=nZ(),lPB=(A,Q)=>{let B=cPB(A,Q);return B?B.version:null};FyA.exports=lPB});var $yA=R((KvY,ZyA)=>{var pPB=nZ(),iPB=(A,Q)=>{let B=pPB(A.trim().replace(/^[=v]+/,""),Q);return B?B.version:null};ZyA.exports=iPB});var KyA=R((VvY,EyA)=>{var UyA=OJ(),nPB=(A,Q,B,Y,J)=>{if(typeof B==="string")J=Y,Y=B,B=void 0;try{return new UyA(A instanceof UyA?A.version:A,B).inc(Q,Y,J).version}catch(C){return null}};EyA.exports=nPB});var HyA=R((IvY,IyA)=>{var VyA=nZ(),sPB=(A,Q)=>{let B=VyA(A,null,!0),Y=VyA(Q,null,!0),J=B.compare(Y);if(J===0)return null;let C=J>0,X=C?B:Y,G=C?Y:B,F=!!X.prerelease.length;if(!!G.prerelease.length&&!F){if(!G.patch&&!G.minor)return"major";if(G.compareMain(X)===0){if(G.minor&&!G.patch)return"minor";return"patch"}}let Z=F?"pre":"";if(B.major!==Y.major)return Z+"major";if(B.minor!==Y.minor)return Z+"minor";if(B.patch!==Y.patch)return Z+"patch";return"prerelease"};IyA.exports=sPB});var NyA=R((HvY,DyA)=>{var rPB=OJ(),aPB=(A,Q)=>new rPB(A,Q).major;DyA.exports=aPB});var qyA=R((DvY,LyA)=>{var oPB=OJ(),tPB=(A,Q)=>new oPB(A,Q).minor;LyA.exports=tPB});var zyA=R((NvY,MyA)=>{var ePB=OJ(),ATB=(A,Q)=>new ePB(A,Q).patch;MyA.exports=ATB});var wyA=R((LvY,RyA)=>{var QTB=nZ(),BTB=(A,Q)=>{let B=QTB(A,Q);return B&&B.prerelease.length?B.prerelease:null};RyA.exports=BTB});var _5=R((qvY,OyA)=>{var jyA=OJ(),YTB=(A,Q,B)=>new jyA(A,B).compare(new jyA(Q,B));OyA.exports=YTB});var TyA=R((MvY,PyA)=>{var JTB=_5(),CTB=(A,Q,B)=>JTB(Q,A,B);PyA.exports=CTB});var kyA=R((zvY,SyA)=>{var XTB=_5(),GTB=(A,Q)=>XTB(A,Q,!0);SyA.exports=GTB});var KO=R((RvY,vyA)=>{var _yA=OJ(),FTB=(A,Q,B)=>{let Y=new _yA(A,B),J=new _yA(Q,B);return Y.compare(J)||Y.compareBuild(J)};vyA.exports=FTB});var hyA=R((wvY,yyA)=>{var WTB=KO(),ZTB=(A,Q)=>A.sort((B,Y)=>WTB(B,Y,Q));yyA.exports=ZTB});var xyA=R((jvY,gyA)=>{var $TB=KO(),UTB=(A,Q)=>A.sort((B,Y)=>$TB(Y,B,Q));gyA.exports=UTB});var pN=R((OvY,fyA)=>{var ETB=_5(),KTB=(A,Q,B)=>ETB(A,Q,B)>0;fyA.exports=KTB});var VO=R((PvY,byA)=>{var VTB=_5(),ITB=(A,Q,B)=>VTB(A,Q,B)<0;byA.exports=ITB});var xl=R((TvY,myA)=>{var HTB=_5(),DTB=(A,Q,B)=>HTB(A,Q,B)===0;myA.exports=DTB});var fl=R((SvY,uyA)=>{var NTB=_5(),LTB=(A,Q,B)=>NTB(A,Q,B)!==0;uyA.exports=LTB});var IO=R((kvY,dyA)=>{var qTB=_5(),MTB=(A,Q,B)=>qTB(A,Q,B)>=0;dyA.exports=MTB});var HO=R((_vY,cyA)=>{var zTB=_5(),RTB=(A,Q,B)=>zTB(A,Q,B)<=0;cyA.exports=RTB});var bl=R((vvY,lyA)=>{var wTB=xl(),jTB=fl(),OTB=pN(),PTB=IO(),TTB=VO(),STB=HO(),kTB=(A,Q,B,Y)=>{switch(Q){case"===":if(typeof A==="object")A=A.version;if(typeof B==="object")B=B.version;return A===B;case"!==":if(typeof A==="object")A=A.version;if(typeof B==="object")B=B.version;return A!==B;case"":case"=":case"==":return wTB(A,B,Y);case"!=":return jTB(A,B,Y);case">":return OTB(A,B,Y);case">=":return PTB(A,B,Y);case"<":return TTB(A,B,Y);case"<=":return STB(A,B,Y);default:throw TypeError(`Invalid operator: ${Q}`)}};lyA.exports=kTB});var iyA=R((yvY,pyA)=>{var _TB=OJ(),vTB=nZ(),{safeRe:DO,t:NO}=aE(),yTB=(A,Q)=>{if(A instanceof _TB)return A;if(typeof A==="number")A=String(A);if(typeof A!=="string")return null;Q=Q||{};let B=null;if(!Q.rtl)B=A.match(Q.includePrerelease?DO[NO.COERCEFULL]:DO[NO.COERCE]);else{let F=Q.includePrerelease?DO[NO.COERCERTLFULL]:DO[NO.COERCERTL],W;while((W=F.exec(A))&&(!B||B.index+B[0].length!==A.length)){if(!B||W.index+W[0].length!==B.index+B[0].length)B=W;F.lastIndex=W.index+W[1].length+W[2].length}F.lastIndex=-1}if(B===null)return null;let Y=B[2],J=B[3]||"0",C=B[4]||"0",X=Q.includePrerelease&&B[5]?`-${B[5]}`:"",G=Q.includePrerelease&&B[6]?`+${B[6]}`:"";return vTB(`${Y}.${J}.${C}${X}${G}`,Q)};pyA.exports=yTB});var ryA=R((hvY,syA)=>{class nyA{constructor(){this.max=1000,this.map=new Map}get(A){let Q=this.map.get(A);if(Q===void 0)return;else return this.map.delete(A),this.map.set(A,Q),Q}delete(A){return this.map.delete(A)}set(A,Q){if(!this.delete(A)&&Q!==void 0){if(this.map.size>=this.max){let Y=this.map.keys().next().value;this.delete(Y)}this.map.set(A,Q)}return this}}syA.exports=nyA});var v5=R((gvY,eyA)=>{var hTB=/\s+/g;class iN{constructor(A,Q){if(Q=xTB(Q),A instanceof iN)if(A.loose===!!Q.loose&&A.includePrerelease===!!Q.includePrerelease)return A;else return new iN(A.raw,Q);if(A instanceof ml)return this.raw=A.value,this.set=[[A]],this.formatted=void 0,this;if(this.options=Q,this.loose=!!Q.loose,this.includePrerelease=!!Q.includePrerelease,this.raw=A.trim().replace(hTB," "),this.set=this.raw.split("||").map((B)=>this.parseRange(B.trim())).filter((B)=>B.length),!this.set.length)throw TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let B=this.set[0];if(this.set=this.set.filter((Y)=>!oyA(Y[0])),this.set.length===0)this.set=[B];else if(this.set.length>1){for(let Y of this.set)if(Y.length===1&&lTB(Y[0])){this.set=[Y];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let A=0;A0)this.formatted+="||";let Q=this.set[A];for(let B=0;B0)this.formatted+=" ";this.formatted+=Q[B].toString().trim()}}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(A){let B=((this.options.includePrerelease&&dTB)|(this.options.loose&&cTB))+":"+A,Y=ayA.get(B);if(Y)return Y;let J=this.options.loose,C=J?c9[Z9.HYPHENRANGELOOSE]:c9[Z9.HYPHENRANGE];A=A.replace(C,ASB(this.options.includePrerelease)),E0("hyphen replace",A),A=A.replace(c9[Z9.COMPARATORTRIM],bTB),E0("comparator trim",A),A=A.replace(c9[Z9.TILDETRIM],mTB),E0("tilde trim",A),A=A.replace(c9[Z9.CARETTRIM],uTB),E0("caret trim",A);let X=A.split(" ").map((Z)=>pTB(Z,this.options)).join(" ").split(/\s+/).map((Z)=>eTB(Z,this.options));if(J)X=X.filter((Z)=>{return E0("loose invalid filter",Z,this.options),!!Z.match(c9[Z9.COMPARATORLOOSE])});E0("range list",X);let G=new Map,F=X.map((Z)=>new ml(Z,this.options));for(let Z of F){if(oyA(Z))return[Z];G.set(Z.value,Z)}if(G.size>1&&G.has(""))G.delete("");let W=[...G.values()];return ayA.set(B,W),W}intersects(A,Q){if(!(A instanceof iN))throw TypeError("a Range is required");return this.set.some((B)=>{return tyA(B,Q)&&A.set.some((Y)=>{return tyA(Y,Q)&&B.every((J)=>{return Y.every((C)=>{return J.intersects(C,Q)})})})})}test(A){if(!A)return!1;if(typeof A==="string")try{A=new fTB(A,this.options)}catch(Q){return!1}for(let Q=0;QA.value==="<0.0.0-0",lTB=(A)=>A.value==="",tyA=(A,Q)=>{let B=!0,Y=A.slice(),J=Y.pop();while(B&&Y.length)B=Y.every((C)=>{return J.intersects(C,Q)}),J=Y.pop();return B},pTB=(A,Q)=>{return E0("comp",A,Q),A=sTB(A,Q),E0("caret",A),A=iTB(A,Q),E0("tildes",A),A=aTB(A,Q),E0("xrange",A),A=tTB(A,Q),E0("stars",A),A},$9=(A)=>!A||A.toLowerCase()==="x"||A==="*",iTB=(A,Q)=>{return A.trim().split(/\s+/).map((B)=>nTB(B,Q)).join(" ")},nTB=(A,Q)=>{let B=Q.loose?c9[Z9.TILDELOOSE]:c9[Z9.TILDE];return A.replace(B,(Y,J,C,X,G)=>{E0("tilde",A,Y,J,C,X,G);let F;if($9(J))F="";else if($9(C))F=`>=${J}.0.0 <${+J+1}.0.0-0`;else if($9(X))F=`>=${J}.${C}.0 <${J}.${+C+1}.0-0`;else if(G)E0("replaceTilde pr",G),F=`>=${J}.${C}.${X}-${G} <${J}.${+C+1}.0-0`;else F=`>=${J}.${C}.${X} <${J}.${+C+1}.0-0`;return E0("tilde return",F),F})},sTB=(A,Q)=>{return A.trim().split(/\s+/).map((B)=>rTB(B,Q)).join(" ")},rTB=(A,Q)=>{E0("caret",A,Q);let B=Q.loose?c9[Z9.CARETLOOSE]:c9[Z9.CARET],Y=Q.includePrerelease?"-0":"";return A.replace(B,(J,C,X,G,F)=>{E0("caret",A,J,C,X,G,F);let W;if($9(C))W="";else if($9(X))W=`>=${C}.0.0${Y} <${+C+1}.0.0-0`;else if($9(G))if(C==="0")W=`>=${C}.${X}.0${Y} <${C}.${+X+1}.0-0`;else W=`>=${C}.${X}.0${Y} <${+C+1}.0.0-0`;else if(F)if(E0("replaceCaret pr",F),C==="0")if(X==="0")W=`>=${C}.${X}.${G}-${F} <${C}.${X}.${+G+1}-0`;else W=`>=${C}.${X}.${G}-${F} <${C}.${+X+1}.0-0`;else W=`>=${C}.${X}.${G}-${F} <${+C+1}.0.0-0`;else if(E0("no pr"),C==="0")if(X==="0")W=`>=${C}.${X}.${G}${Y} <${C}.${X}.${+G+1}-0`;else W=`>=${C}.${X}.${G}${Y} <${C}.${+X+1}.0-0`;else W=`>=${C}.${X}.${G} <${+C+1}.0.0-0`;return E0("caret return",W),W})},aTB=(A,Q)=>{return E0("replaceXRanges",A,Q),A.split(/\s+/).map((B)=>oTB(B,Q)).join(" ")},oTB=(A,Q)=>{A=A.trim();let B=Q.loose?c9[Z9.XRANGELOOSE]:c9[Z9.XRANGE];return A.replace(B,(Y,J,C,X,G,F)=>{E0("xRange",A,Y,J,C,X,G,F);let W=$9(C),Z=W||$9(X),U=Z||$9(G),$=U;if(J==="="&&$)J="";if(F=Q.includePrerelease?"-0":"",W)if(J===">"||J==="<")Y="<0.0.0-0";else Y="*";else if(J&&$){if(Z)X=0;if(G=0,J===">")if(J=">=",Z)C=+C+1,X=0,G=0;else X=+X+1,G=0;else if(J==="<=")if(J="<",Z)C=+C+1;else X=+X+1;if(J==="<")F="-0";Y=`${J+C}.${X}.${G}${F}`}else if(Z)Y=`>=${C}.0.0${F} <${+C+1}.0.0-0`;else if(U)Y=`>=${C}.${X}.0${F} <${C}.${+X+1}.0-0`;return E0("xRange return",Y),Y})},tTB=(A,Q)=>{return E0("replaceStars",A,Q),A.trim().replace(c9[Z9.STAR],"")},eTB=(A,Q)=>{return E0("replaceGTE0",A,Q),A.trim().replace(c9[Q.includePrerelease?Z9.GTE0PRE:Z9.GTE0],"")},ASB=(A)=>(Q,B,Y,J,C,X,G,F,W,Z,U,$)=>{if($9(Y))B="";else if($9(J))B=`>=${Y}.0.0${A?"-0":""}`;else if($9(C))B=`>=${Y}.${J}.0${A?"-0":""}`;else if(X)B=`>=${B}`;else B=`>=${B}${A?"-0":""}`;if($9(W))F="";else if($9(Z))F=`<${+W+1}.0.0-0`;else if($9(U))F=`<${W}.${+Z+1}.0-0`;else if($)F=`<=${W}.${Z}.${U}-${$}`;else if(A)F=`<${W}.${Z}.${+U+1}-0`;else F=`<=${F}`;return`${B} ${F}`.trim()},QSB=(A,Q,B)=>{for(let Y=0;Y0){let J=A[Y].semver;if(J.major===Q.major&&J.minor===Q.minor&&J.patch===Q.patch)return!0}}return!1}return!0}});var nN=R((xvY,ChA)=>{var sN=Symbol("SemVer ANY");class LO{static get ANY(){return sN}constructor(A,Q){if(Q=AhA(Q),A instanceof LO)if(A.loose===!!Q.loose)return A;else A=A.value;if(A=A.trim().split(/\s+/).join(" "),dl("comparator",A,Q),this.options=Q,this.loose=!!Q.loose,this.parse(A),this.semver===sN)this.value="";else this.value=this.operator+this.semver.version;dl("comp",this)}parse(A){let Q=this.options.loose?QhA[BhA.COMPARATORLOOSE]:QhA[BhA.COMPARATOR],B=A.match(Q);if(!B)throw TypeError(`Invalid comparator: ${A}`);if(this.operator=B[1]!==void 0?B[1]:"",this.operator==="=")this.operator="";if(!B[2])this.semver=sN;else this.semver=new YhA(B[2],this.options.loose)}toString(){return this.value}test(A){if(dl("Comparator.test",A,this.options.loose),this.semver===sN||A===sN)return!0;if(typeof A==="string")try{A=new YhA(A,this.options)}catch(Q){return!1}return ul(A,this.operator,this.semver,this.options)}intersects(A,Q){if(!(A instanceof LO))throw TypeError("a Comparator is required");if(this.operator===""){if(this.value==="")return!0;return new JhA(A.value,Q).test(this.value)}else if(A.operator===""){if(A.value==="")return!0;return new JhA(this.value,Q).test(A.semver)}if(Q=AhA(Q),Q.includePrerelease&&(this.value==="<0.0.0-0"||A.value==="<0.0.0-0"))return!1;if(!Q.includePrerelease&&(this.value.startsWith("<0.0.0")||A.value.startsWith("<0.0.0")))return!1;if(this.operator.startsWith(">")&&A.operator.startsWith(">"))return!0;if(this.operator.startsWith("<")&&A.operator.startsWith("<"))return!0;if(this.semver.version===A.semver.version&&this.operator.includes("=")&&A.operator.includes("="))return!0;if(ul(this.semver,"<",A.semver,Q)&&this.operator.startsWith(">")&&A.operator.startsWith("<"))return!0;if(ul(this.semver,">",A.semver,Q)&&this.operator.startsWith("<")&&A.operator.startsWith(">"))return!0;return!1}}ChA.exports=LO;var AhA=ZO(),{safeRe:QhA,t:BhA}=aE(),ul=bl(),dl=lN(),YhA=OJ(),JhA=v5()});var rN=R((fvY,XhA)=>{var BSB=v5(),YSB=(A,Q,B)=>{try{Q=new BSB(Q,B)}catch(Y){return!1}return Q.test(A)};XhA.exports=YSB});var FhA=R((bvY,GhA)=>{var JSB=v5(),CSB=(A,Q)=>new JSB(A,Q).set.map((B)=>B.map((Y)=>Y.value).join(" ").trim().split(" "));GhA.exports=CSB});var ZhA=R((mvY,WhA)=>{var XSB=OJ(),GSB=v5(),FSB=(A,Q,B)=>{let Y=null,J=null,C=null;try{C=new GSB(Q,B)}catch(X){return null}return A.forEach((X)=>{if(C.test(X)){if(!Y||J.compare(X)===-1)Y=X,J=new XSB(Y,B)}}),Y};WhA.exports=FSB});var UhA=R((uvY,$hA)=>{var WSB=OJ(),ZSB=v5(),$SB=(A,Q,B)=>{let Y=null,J=null,C=null;try{C=new ZSB(Q,B)}catch(X){return null}return A.forEach((X)=>{if(C.test(X)){if(!Y||J.compare(X)===1)Y=X,J=new WSB(Y,B)}}),Y};$hA.exports=$SB});var VhA=R((dvY,KhA)=>{var cl=OJ(),USB=v5(),EhA=pN(),ESB=(A,Q)=>{A=new USB(A,Q);let B=new cl("0.0.0");if(A.test(B))return B;if(B=new cl("0.0.0-0"),A.test(B))return B;B=null;for(let Y=0;Y{let G=new cl(X.semver.version);switch(X.operator){case">":if(G.prerelease.length===0)G.patch++;else G.prerelease.push(0);G.raw=G.format();case"":case">=":if(!C||EhA(G,C))C=G;break;case"<":case"<=":break;default:throw Error(`Unexpected operation: ${X.operator}`)}}),C&&(!B||EhA(B,C)))B=C}if(B&&A.test(B))return B;return null};KhA.exports=ESB});var HhA=R((cvY,IhA)=>{var KSB=v5(),VSB=(A,Q)=>{try{return new KSB(A,Q).range||"*"}catch(B){return null}};IhA.exports=VSB});var qO=R((lvY,qhA)=>{var ISB=OJ(),LhA=nN(),{ANY:HSB}=LhA,DSB=v5(),NSB=rN(),DhA=pN(),NhA=VO(),LSB=HO(),qSB=IO(),MSB=(A,Q,B,Y)=>{A=new ISB(A,Y),Q=new DSB(Q,Y);let J,C,X,G,F;switch(B){case">":J=DhA,C=LSB,X=NhA,G=">",F=">=";break;case"<":J=NhA,C=qSB,X=DhA,G="<",F="<=";break;default:throw TypeError('Must provide a hilo val of "<" or ">"')}if(NSB(A,Q,Y))return!1;for(let W=0;W{if(E.semver===HSB)E=new LhA(">=0.0.0");if(U=U||E,$=$||E,J(E.semver,U.semver,Y))U=E;else if(X(E.semver,$.semver,Y))$=E}),U.operator===G||U.operator===F)return!1;if((!$.operator||$.operator===G)&&C(A,$.semver))return!1;else if($.operator===F&&X(A,$.semver))return!1}return!0};qhA.exports=MSB});var zhA=R((pvY,MhA)=>{var zSB=qO(),RSB=(A,Q,B)=>zSB(A,Q,">",B);MhA.exports=RSB});var whA=R((ivY,RhA)=>{var wSB=qO(),jSB=(A,Q,B)=>wSB(A,Q,"<",B);RhA.exports=jSB});var PhA=R((nvY,OhA)=>{var jhA=v5(),OSB=(A,Q,B)=>{return A=new jhA(A,B),Q=new jhA(Q,B),A.intersects(Q,B)};OhA.exports=OSB});var ShA=R((svY,ThA)=>{var PSB=rN(),TSB=_5();ThA.exports=(A,Q,B)=>{let Y=[],J=null,C=null,X=A.sort((Z,U)=>TSB(Z,U,B));for(let Z of X)if(PSB(Z,Q,B)){if(C=Z,!J)J=Z}else{if(C)Y.push([J,C]);C=null,J=null}if(J)Y.push([J,null]);let G=[];for(let[Z,U]of Y)if(Z===U)G.push(Z);else if(!U&&Z===X[0])G.push("*");else if(!U)G.push(`>=${Z}`);else if(Z===X[0])G.push(`<=${U}`);else G.push(`${Z} - ${U}`);let F=G.join(" || "),W=typeof Q.raw==="string"?Q.raw:String(Q);return F.length{var khA=v5(),pl=nN(),{ANY:ll}=pl,aN=rN(),il=_5(),SSB=(A,Q,B={})=>{if(A===Q)return!0;A=new khA(A,B),Q=new khA(Q,B);let Y=!1;A:for(let J of A.set){for(let C of Q.set){let X=_SB(J,C,B);if(Y=Y||X!==null,X)continue A}if(Y)return!1}return!0},kSB=[new pl(">=0.0.0-0")],_hA=[new pl(">=0.0.0")],_SB=(A,Q,B)=>{if(A===Q)return!0;if(A.length===1&&A[0].semver===ll)if(Q.length===1&&Q[0].semver===ll)return!0;else if(B.includePrerelease)A=kSB;else A=_hA;if(Q.length===1&&Q[0].semver===ll)if(B.includePrerelease)return!0;else Q=_hA;let Y=new Set,J,C;for(let E of A)if(E.operator===">"||E.operator===">=")J=vhA(J,E,B);else if(E.operator==="<"||E.operator==="<=")C=yhA(C,E,B);else Y.add(E.semver);if(Y.size>1)return null;let X;if(J&&C){if(X=il(J.semver,C.semver,B),X>0)return null;else if(X===0&&(J.operator!==">="||C.operator!=="<="))return null}for(let E of Y){if(J&&!aN(E,String(J),B))return null;if(C&&!aN(E,String(C),B))return null;for(let K of Q)if(!aN(E,String(K),B))return!1;return!0}let G,F,W,Z,U=C&&!B.includePrerelease&&C.semver.prerelease.length?C.semver:!1,$=J&&!B.includePrerelease&&J.semver.prerelease.length?J.semver:!1;if(U&&U.prerelease.length===1&&C.operator==="<"&&U.prerelease[0]===0)U=!1;for(let E of Q){if(Z=Z||E.operator===">"||E.operator===">=",W=W||E.operator==="<"||E.operator==="<=",J){if($){if(E.semver.prerelease&&E.semver.prerelease.length&&E.semver.major===$.major&&E.semver.minor===$.minor&&E.semver.patch===$.patch)$=!1}if(E.operator===">"||E.operator===">="){if(G=vhA(J,E,B),G===E&&G!==J)return!1}else if(J.operator===">="&&!aN(J.semver,String(E),B))return!1}if(C){if(U){if(E.semver.prerelease&&E.semver.prerelease.length&&E.semver.major===U.major&&E.semver.minor===U.minor&&E.semver.patch===U.patch)U=!1}if(E.operator==="<"||E.operator==="<="){if(F=yhA(C,E,B),F===E&&F!==C)return!1}else if(C.operator==="<="&&!aN(C.semver,String(E),B))return!1}if(!E.operator&&(C||J)&&X!==0)return!1}if(J&&W&&!C&&X!==0)return!1;if(C&&Z&&!J&&X!==0)return!1;if($||U)return!1;return!0},vhA=(A,Q,B)=>{if(!A)return Q;let Y=il(A.semver,Q.semver,B);return Y>0?A:Y<0?Q:Q.operator===">"&&A.operator===">="?Q:A},yhA=(A,Q,B)=>{if(!A)return Q;let Y=il(A.semver,Q.semver,B);return Y<0?A:Y>0?Q:Q.operator==="<"&&A.operator==="<="?Q:A};hhA.exports=SSB});var mhA=R((avY,bhA)=>{var nl=aE(),xhA=cN(),vSB=OJ(),fhA=gl(),ySB=nZ(),hSB=WyA(),gSB=$yA(),xSB=KyA(),fSB=HyA(),bSB=NyA(),mSB=qyA(),uSB=zyA(),dSB=wyA(),cSB=_5(),lSB=TyA(),pSB=kyA(),iSB=KO(),nSB=hyA(),sSB=xyA(),rSB=pN(),aSB=VO(),oSB=xl(),tSB=fl(),eSB=IO(),AkB=HO(),QkB=bl(),BkB=iyA(),YkB=nN(),JkB=v5(),CkB=rN(),XkB=FhA(),GkB=ZhA(),FkB=UhA(),WkB=VhA(),ZkB=HhA(),$kB=qO(),UkB=zhA(),EkB=whA(),KkB=PhA(),VkB=ShA(),IkB=ghA();bhA.exports={parse:ySB,valid:hSB,clean:gSB,inc:xSB,diff:fSB,major:bSB,minor:mSB,patch:uSB,prerelease:dSB,compare:cSB,rcompare:lSB,compareLoose:pSB,compareBuild:iSB,sort:nSB,rsort:sSB,gt:rSB,lt:aSB,eq:oSB,neq:tSB,gte:eSB,lte:AkB,cmp:QkB,coerce:BkB,Comparator:YkB,Range:JkB,satisfies:CkB,toComparators:XkB,maxSatisfying:GkB,minSatisfying:FkB,minVersion:WkB,validRange:ZkB,outside:$kB,gtr:UkB,ltr:EkB,intersects:KkB,simplifyRange:VkB,subset:IkB,SemVer:vSB,re:nl.re,src:nl.src,tokens:nl.t,SEMVER_SPEC_VERSION:xhA.SEMVER_SPEC_VERSION,RELEASE_TYPES:xhA.RELEASE_TYPES,compareIdentifiers:fhA.compareIdentifiers,rcompareIdentifiers:fhA.rcompareIdentifiers}});var rl=R((ovY,chA)=>{function sl(A){return typeof A==="function"}var U9=console.error.bind(console);function oN(A,Q,B){var Y=!!A[Q]&&A.propertyIsEnumerable(Q);Object.defineProperty(A,Q,{configurable:!0,enumerable:Y,writable:!0,value:B})}function tN(A){if(A&&A.logger)if(!sl(A.logger))U9("new logger isn't a function, not replacing");else U9=A.logger}function uhA(A,Q,B){if(!A||!A[Q]){U9("no original function "+Q+" to wrap");return}if(!B){U9("no wrapper function"),U9(Error().stack);return}if(!sl(A[Q])||!sl(B)){U9("original object and wrapper must be functions");return}var Y=A[Q],J=B(Y,Q);return oN(J,"__original",Y),oN(J,"__unwrap",function(){if(A[Q]===J)oN(A,Q,Y)}),oN(J,"__wrapped",!0),oN(A,Q,J),J}function HkB(A,Q,B){if(!A){U9("must provide one or more modules to patch"),U9(Error().stack);return}else if(!Array.isArray(A))A=[A];if(!(Q&&Array.isArray(Q))){U9("must provide one or more functions to wrap on modules");return}A.forEach(function(Y){Q.forEach(function(J){uhA(Y,J,B)})})}function dhA(A,Q){if(!A||!A[Q]){U9("no function to unwrap."),U9(Error().stack);return}if(!A[Q].__unwrap)U9("no original to unwrap to -- has "+Q+" already been unwrapped?");else return A[Q].__unwrap()}function DkB(A,Q){if(!A){U9("must provide one or more modules to patch"),U9(Error().stack);return}else if(!Array.isArray(A))A=[A];if(!(Q&&Array.isArray(Q))){U9("must provide one or more functions to unwrap on modules");return}A.forEach(function(B){Q.forEach(function(Y){dhA(B,Y)})})}tN.wrap=uhA;tN.massWrap=HkB;tN.unwrap=dhA;tN.massUnwrap=DkB;chA.exports=tN});var nhA=R((phA)=>{Object.defineProperty(phA,"__esModule",{value:!0});phA.InstrumentationAbstract=void 0;var al=yA(),NkB=vl(),MO=rl();class lhA{constructor(A,Q,B){this.instrumentationName=A,this.instrumentationVersion=Q,this._config={},this._wrap=MO.wrap,this._unwrap=MO.unwrap,this._massWrap=MO.massWrap,this._massUnwrap=MO.massUnwrap,this.setConfig(B),this._diag=al.diag.createComponentLogger({namespace:A}),this._tracer=al.trace.getTracer(A,Q),this._meter=al.metrics.getMeter(A,Q),this._logger=NkB.logs.getLogger(A,Q),this._updateMetricInstruments()}get meter(){return this._meter}setMeterProvider(A){this._meter=A.getMeter(this.instrumentationName,this.instrumentationVersion),this._updateMetricInstruments()}get logger(){return this._logger}setLoggerProvider(A){this._logger=A.getLogger(this.instrumentationName,this.instrumentationVersion)}getModuleDefinitions(){var A;let Q=(A=this.init())!==null&&A!==void 0?A:[];if(!Array.isArray(Q))return[Q];return Q}_updateMetricInstruments(){return}getConfig(){return this._config}setConfig(A){this._config=Object.assign({enabled:!0},A)}setTracerProvider(A){this._tracer=A.getTracer(this.instrumentationName,this.instrumentationVersion)}get tracer(){return this._tracer}_runSpanCustomizationHook(A,Q,B,Y){if(!A)return;try{A(B,Y)}catch(J){this._diag.error("Error running span customization hook due to exception in handler",{triggerName:Q},J)}}}phA.InstrumentationAbstract=lhA});var rhA=R((evY,shA)=>{var tE=1000,eE=tE*60,AK=eE*60,sZ=AK*24,LkB=sZ*7,qkB=sZ*365.25;shA.exports=function(A,Q){Q=Q||{};var B=typeof A;if(B==="string"&&A.length>0)return MkB(A);else if(B==="number"&&isFinite(A))return Q.long?RkB(A):zkB(A);throw Error("val is not a non-empty string or a valid number. val="+JSON.stringify(A))};function MkB(A){if(A=String(A),A.length>100)return;var Q=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(A);if(!Q)return;var B=parseFloat(Q[1]),Y=(Q[2]||"ms").toLowerCase();switch(Y){case"years":case"year":case"yrs":case"yr":case"y":return B*qkB;case"weeks":case"week":case"w":return B*LkB;case"days":case"day":case"d":return B*sZ;case"hours":case"hour":case"hrs":case"hr":case"h":return B*AK;case"minutes":case"minute":case"mins":case"min":case"m":return B*eE;case"seconds":case"second":case"secs":case"sec":case"s":return B*tE;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return B;default:return}}function zkB(A){var Q=Math.abs(A);if(Q>=sZ)return Math.round(A/sZ)+"d";if(Q>=AK)return Math.round(A/AK)+"h";if(Q>=eE)return Math.round(A/eE)+"m";if(Q>=tE)return Math.round(A/tE)+"s";return A+"ms"}function RkB(A){var Q=Math.abs(A);if(Q>=sZ)return zO(A,Q,sZ,"day");if(Q>=AK)return zO(A,Q,AK,"hour");if(Q>=eE)return zO(A,Q,eE,"minute");if(Q>=tE)return zO(A,Q,tE,"second");return A+" ms"}function zO(A,Q,B,Y){var J=Q>=B*1.5;return Math.round(A/B)+" "+Y+(J?"s":"")}});var ol=R((AyY,ahA)=>{function wkB(A){B.debug=B,B.default=B,B.coerce=F,B.disable=X,B.enable=J,B.enabled=G,B.humanize=rhA(),B.destroy=W,Object.keys(A).forEach((Z)=>{B[Z]=A[Z]}),B.names=[],B.skips=[],B.formatters={};function Q(Z){let U=0;for(let $=0;${if(N==="%%")return"%";z++;let w=B.formatters[q];if(typeof w==="function"){let P=V[z];N=w.call(H,P),V.splice(z,1),z--}return N}),B.formatArgs.call(H,V),(H.log||B.log).apply(H,V)}if(I.namespace=Z,I.useColors=B.useColors(),I.color=B.selectColor(Z),I.extend=Y,I.destroy=B.destroy,Object.defineProperty(I,"enabled",{enumerable:!0,configurable:!1,get:()=>{if($!==null)return $;if(E!==B.namespaces)E=B.namespaces,K=B.enabled(Z);return K},set:(V)=>{$=V}}),typeof B.init==="function")B.init(I);return I}function Y(Z,U){let $=B(this.namespace+(typeof U>"u"?":":U)+Z);return $.log=this.log,$}function J(Z){B.save(Z),B.namespaces=Z,B.names=[],B.skips=[];let U=(typeof Z==="string"?Z:"").trim().replace(/\s+/g,",").split(",").filter(Boolean);for(let $ of U)if($[0]==="-")B.skips.push($.slice(1));else B.names.push($)}function C(Z,U){let $=0,E=0,K=-1,I=0;while($"-"+U)].join(",");return B.enable(""),Z}function G(Z){for(let U of B.skips)if(C(Z,U))return!1;for(let U of B.names)if(C(Z,U))return!0;return!1}function F(Z){if(Z instanceof Error)return Z.stack||Z.message;return Z}function W(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return B.enable(B.load()),B}ahA.exports=wkB});var thA=R((ohA,RO)=>{ohA.formatArgs=OkB;ohA.save=PkB;ohA.load=TkB;ohA.useColors=jkB;ohA.storage=SkB();ohA.destroy=(()=>{let A=!1;return()=>{if(!A)A=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}})();ohA.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function jkB(){if(typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let A;return typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&(A=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(A[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function OkB(A){if(A[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+A[0]+(this.useColors?"%c ":" ")+"+"+RO.exports.humanize(this.diff),!this.useColors)return;let Q="color: "+this.color;A.splice(1,0,Q,"color: inherit");let B=0,Y=0;A[0].replace(/%[a-zA-Z%]/g,(J)=>{if(J==="%%")return;if(B++,J==="%c")Y=B}),A.splice(Y,0,Q)}ohA.log=console.debug||console.log||(()=>{});function PkB(A){try{if(A)ohA.storage.setItem("debug",A);else ohA.storage.removeItem("debug")}catch(Q){}}function TkB(){let A;try{A=ohA.storage.getItem("debug")||ohA.storage.getItem("DEBUG")}catch(Q){}if(!A&&typeof process<"u"&&"env"in process)A=process.env.DEBUG;return A}function SkB(){try{return localStorage}catch(A){}}RO.exports=ol()(ohA);var{formatters:kkB}=RO.exports;kkB.j=function(A){try{return JSON.stringify(A)}catch(Q){return"[UnexpectedJSONParseError]: "+Q.message}}});var AgA=R((ByY,ehA)=>{ehA.exports=(A,Q)=>{Q=Q||process.argv;let B=A.startsWith("-")?"":A.length===1?"-":"--",Y=Q.indexOf(B+A),J=Q.indexOf("--");return Y!==-1&&(J===-1?!0:Y{var bkB=u("os"),tC=AgA(),PJ=process.env,QK;if(tC("no-color")||tC("no-colors")||tC("color=false"))QK=!1;else if(tC("color")||tC("colors")||tC("color=true")||tC("color=always"))QK=!0;if("FORCE_COLOR"in PJ)QK=PJ.FORCE_COLOR.length===0||parseInt(PJ.FORCE_COLOR,10)!==0;function mkB(A){if(A===0)return!1;return{level:A,hasBasic:!0,has256:A>=2,has16m:A>=3}}function ukB(A){if(QK===!1)return 0;if(tC("color=16m")||tC("color=full")||tC("color=truecolor"))return 3;if(tC("color=256"))return 2;if(A&&!A.isTTY&&QK!==!0)return 0;let Q=QK?1:0;if(process.platform==="win32"){let B=bkB.release().split(".");if(Number(process.versions.node.split(".")[0])>=8&&Number(B[0])>=10&&Number(B[2])>=10586)return Number(B[2])>=14931?3:2;return 1}if("CI"in PJ){if(["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI"].some((B)=>(B in PJ))||PJ.CI_NAME==="codeship")return 1;return Q}if("TEAMCITY_VERSION"in PJ)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(PJ.TEAMCITY_VERSION)?1:0;if(PJ.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in PJ){let B=parseInt((PJ.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(PJ.TERM_PROGRAM){case"iTerm.app":return B>=3?3:2;case"Apple_Terminal":return 2}}if(/-256(color)?$/i.test(PJ.TERM))return 2;if(/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(PJ.TERM))return 1;if("COLORTERM"in PJ)return 1;if(PJ.TERM==="dumb")return Q;return Q}function tl(A){let Q=ukB(A);return mkB(Q)}QgA.exports={supportsColor:tl,stdout:tl(process.stdout),stderr:tl(process.stderr)}});var XgA=R((JgA,jO)=>{var dkB=u("tty"),wO=u("util");JgA.init=rkB;JgA.log=ikB;JgA.formatArgs=lkB;JgA.save=nkB;JgA.load=skB;JgA.useColors=ckB;JgA.destroy=wO.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");JgA.colors=[6,2,3,4,5,1];try{let A=BgA();if(A&&(A.stderr||A).level>=2)JgA.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221]}catch(A){}JgA.inspectOpts=Object.keys(process.env).filter((A)=>{return/^debug_/i.test(A)}).reduce((A,Q)=>{let B=Q.substring(6).toLowerCase().replace(/_([a-z])/g,(J,C)=>{return C.toUpperCase()}),Y=process.env[Q];if(/^(yes|on|true|enabled)$/i.test(Y))Y=!0;else if(/^(no|off|false|disabled)$/i.test(Y))Y=!1;else if(Y==="null")Y=null;else Y=Number(Y);return A[B]=Y,A},{});function ckB(){return"colors"in JgA.inspectOpts?Boolean(JgA.inspectOpts.colors):dkB.isatty(process.stderr.fd)}function lkB(A){let{namespace:Q,useColors:B}=this;if(B){let Y=this.color,J="\x1B[3"+(Y<8?Y:"8;5;"+Y),C=` ${J};1m${Q} \x1B[0m`;A[0]=C+A[0].split(` +`;if(F)$+="Error resolving package: "+F.message+` +`;throw Error($);function E(I){var V=Tu(rC.join(I,"prebuilds")).map(SDA),H=V.filter(kDA(Vj,Kj)).sort(_DA)[0];if(!H)return;return K(rC.join(I,"prebuilds",H.name))}function K(I){var V=Tu(I).map(vDA),H=V.filter(yDA(ju,Ou)),D=H.sort(gDA(ju))[0];if(D)return rC.join(I,D.file)}};function Tu(A){try{return aZB.readdirSync(A)}catch(Q){return[]}}function RDA(A,Q){var B=Tu(A).filter(Q);return B[0]&&rC.join(A,B[0])}function wDA(A){return/\.node$/.test(A)}function SDA(A){var Q=A.split("-");if(Q.length!==2)return;var B=Q[0],Y=Q[1].split("+");if(!B)return;if(!Y.length)return;if(!Y.every(Boolean))return;return{name:A,platform:B,architectures:Y}}function kDA(A,Q){return function(B){if(B==null)return!1;if(B.platform!==A)return!1;return B.architectures.includes(Q)}}function _DA(A,Q){return A.architectures.length-Q.architectures.length}function vDA(A){var Q=A.split("."),B=Q.pop(),Y={file:A,specificity:0};if(B!=="node")return;for(var J=0;JB.specificity?-1:1;else return 0}}function Q$B(){return!!(process.versions&&process.versions.nw)}function B$B(){if(process.versions&&process.versions.electron)return!0;if(process.env.ELECTRON_RUN_AS_NODE)return!0;return typeof window<"u"&&window.process&&window.process.type==="renderer"}function Y$B(A){if(A!=="linux")return!1;let{familySync:Q,MUSL:B}=AH();return Q()===B}CX.parseTags=vDA;CX.matchTags=yDA;CX.compareTags=gDA;CX.parseTuple=SDA;CX.matchTuple=kDA;CX.compareTuples=_DA});var fDA=R((AMY,_u)=>{var ku=typeof __webpack_require__==="function"?__non_webpack_require__:u;if(typeof ku.addon==="function")_u.exports=ku.addon.bind(ku);else _u.exports=xDA()});var mDA=R((BMY,bDA)=>{var __dirname="/home/ab/GitHub/hytopia/work1/server/node_modules/msgpackr-extract";bDA.exports=fDA()(__dirname)});var mLA=R((fLA)=>{Object.defineProperty(fLA,"__esModule",{value:!0});fLA._globalThis=void 0;fLA._globalThis=typeof globalThis==="object"?globalThis:global});var uLA=R((iZ)=>{var lUB=iZ&&iZ.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),pUB=iZ&&iZ.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))lUB(Q,A,B)};Object.defineProperty(iZ,"__esModule",{value:!0});pUB(mLA(),iZ)});var dLA=R((nZ)=>{var iUB=nZ&&nZ.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),nUB=nZ&&nZ.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))iUB(Q,A,B)};Object.defineProperty(nZ,"__esModule",{value:!0});nUB(uLA(),nZ)});var $c=R((cLA)=>{Object.defineProperty(cLA,"__esModule",{value:!0});cLA.VERSION=void 0;cLA.VERSION="1.9.0"});var rLA=R((nLA)=>{Object.defineProperty(nLA,"__esModule",{value:!0});nLA.isCompatible=nLA._makeCompatibilityCheck=void 0;var sUB=$c(),pLA=/^(\d+)\.(\d+)\.(\d+)(-(.+))?$/;function iLA(A){let Q=new Set([A]),B=new Set,Y=A.match(pLA);if(!Y)return()=>!1;let J={major:+Y[1],minor:+Y[2],patch:+Y[3],prerelease:Y[4]};if(J.prerelease!=null)return function(W){return W===A};function C(G){return B.add(G),!1}function X(G){return Q.add(G),!0}return function(W){if(Q.has(W))return!0;if(B.has(W))return!1;let F=W.match(pLA);if(!F)return C(W);let Z={major:+F[1],minor:+F[2],patch:+F[3],prerelease:F[4]};if(Z.prerelease!=null)return C(W);if(J.major!==Z.major)return C(W);if(J.major===0){if(J.minor===Z.minor&&J.patch<=Z.patch)return X(W);return C(W)}if(J.minor<=Z.minor)return X(W);return C(W)}}nLA._makeCompatibilityCheck=iLA;nLA.isCompatible=iLA(sUB.VERSION)});var sZ=R((aLA)=>{Object.defineProperty(aLA,"__esModule",{value:!0});aLA.unregisterGlobal=aLA.getGlobal=aLA.registerGlobal=void 0;var aUB=dLA(),oE=$c(),oUB=rLA(),tUB=oE.VERSION.split(".")[0],mN=Symbol.for(`opentelemetry.js.api.${tUB}`),uN=aUB._globalThis;function eUB(A,Q,B,Y=!1){var J;let C=uN[mN]=(J=uN[mN])!==null&&J!==void 0?J:{version:oE.VERSION};if(!Y&&C[A]){let X=Error(`@opentelemetry/api: Attempted duplicate registration of API: ${A}`);return B.error(X.stack||X.message),!1}if(C.version!==oE.VERSION){let X=Error(`@opentelemetry/api: Registration of version v${C.version} for ${A} does not match previously registered API v${oE.VERSION}`);return B.error(X.stack||X.message),!1}return C[A]=Q,B.debug(`@opentelemetry/api: Registered a global for ${A} v${oE.VERSION}.`),!0}aLA.registerGlobal=eUB;function AEB(A){var Q,B;let Y=(Q=uN[mN])===null||Q===void 0?void 0:Q.version;if(!Y||!(0,oUB.isCompatible)(Y))return;return(B=uN[mN])===null||B===void 0?void 0:B[A]}aLA.getGlobal=AEB;function QEB(A,Q){Q.debug(`@opentelemetry/api: Unregistering a global for ${A} v${oE.VERSION}.`);let B=uN[mN];if(B)delete B[A]}aLA.unregisterGlobal=QEB});var QqA=R((eLA)=>{Object.defineProperty(eLA,"__esModule",{value:!0});eLA.DiagComponentLogger=void 0;var JEB=sZ();class tLA{constructor(A){this._namespace=A.namespace||"DiagComponentLogger"}debug(...A){return dN("debug",this._namespace,A)}error(...A){return dN("error",this._namespace,A)}info(...A){return dN("info",this._namespace,A)}warn(...A){return dN("warn",this._namespace,A)}verbose(...A){return dN("verbose",this._namespace,A)}}eLA.DiagComponentLogger=tLA;function dN(A,Q,B){let Y=(0,JEB.getGlobal)("diag");if(!Y)return;return B.unshift(Q),Y[A](...B)}});var aj=R((BqA)=>{Object.defineProperty(BqA,"__esModule",{value:!0});BqA.DiagLogLevel=void 0;var CEB;(function(A){A[A.NONE=0]="NONE",A[A.ERROR=30]="ERROR",A[A.WARN=50]="WARN",A[A.INFO=60]="INFO",A[A.DEBUG=70]="DEBUG",A[A.VERBOSE=80]="VERBOSE",A[A.ALL=9999]="ALL"})(CEB=BqA.DiagLogLevel||(BqA.DiagLogLevel={}))});var CqA=R((YqA)=>{Object.defineProperty(YqA,"__esModule",{value:!0});YqA.createLogLevelDiagLogger=void 0;var GG=aj();function XEB(A,Q){if(AGG.DiagLogLevel.ALL)A=GG.DiagLogLevel.ALL;Q=Q||{};function B(Y,J){let C=Q[Y];if(typeof C==="function"&&A>=J)return C.bind(Q);return function(){}}return{error:B("error",GG.DiagLogLevel.ERROR),warn:B("warn",GG.DiagLogLevel.WARN),info:B("info",GG.DiagLogLevel.INFO),debug:B("debug",GG.DiagLogLevel.DEBUG),verbose:B("verbose",GG.DiagLogLevel.VERBOSE)}}YqA.createLogLevelDiagLogger=XEB});var rZ=R((GqA)=>{Object.defineProperty(GqA,"__esModule",{value:!0});GqA.DiagAPI=void 0;var GEB=QqA(),WEB=CqA(),XqA=aj(),oj=sZ(),FEB="diag";class Ec{constructor(){function A(Y){return function(...J){let C=(0,oj.getGlobal)("diag");if(!C)return;return C[Y](...J)}}let Q=this,B=(Y,J={logLevel:XqA.DiagLogLevel.INFO})=>{var C,X,G;if(Y===Q){let Z=Error("Cannot use diag as the logger for itself. Please use a DiagLogger implementation like ConsoleDiagLogger or a custom implementation");return Q.error((C=Z.stack)!==null&&C!==void 0?C:Z.message),!1}if(typeof J==="number")J={logLevel:J};let W=(0,oj.getGlobal)("diag"),F=(0,WEB.createLogLevelDiagLogger)((X=J.logLevel)!==null&&X!==void 0?X:XqA.DiagLogLevel.INFO,Y);if(W&&!J.suppressOverrideMessage){let Z=(G=Error().stack)!==null&&G!==void 0?G:"";W.warn(`Current logger will be overwritten from ${Z}`),F.warn(`Current logger will overwrite one already registered from ${Z}`)}return(0,oj.registerGlobal)("diag",F,Q,!0)};Q.setLogger=B,Q.disable=()=>{(0,oj.unregisterGlobal)(FEB,Q)},Q.createComponentLogger=(Y)=>{return new GEB.DiagComponentLogger(Y)},Q.verbose=A("verbose"),Q.debug=A("debug"),Q.info=A("info"),Q.warn=A("warn"),Q.error=A("error")}static instance(){if(!this._instance)this._instance=new Ec;return this._instance}}GqA.DiagAPI=Ec});var $qA=R((FqA)=>{Object.defineProperty(FqA,"__esModule",{value:!0});FqA.BaggageImpl=void 0;class tE{constructor(A){this._entries=A?new Map(A):new Map}getEntry(A){let Q=this._entries.get(A);if(!Q)return;return Object.assign({},Q)}getAllEntries(){return Array.from(this._entries.entries()).map(([A,Q])=>[A,Q])}setEntry(A,Q){let B=new tE(this._entries);return B._entries.set(A,Q),B}removeEntry(A){let Q=new tE(this._entries);return Q._entries.delete(A),Q}removeEntries(...A){let Q=new tE(this._entries);for(let B of A)Q._entries.delete(B);return Q}clear(){return new tE}}FqA.BaggageImpl=tE});var KqA=R((UqA)=>{Object.defineProperty(UqA,"__esModule",{value:!0});UqA.baggageEntryMetadataSymbol=void 0;UqA.baggageEntryMetadataSymbol=Symbol("BaggageEntryMetadata")});var Kc=R((VqA)=>{Object.defineProperty(VqA,"__esModule",{value:!0});VqA.baggageEntryMetadataFromString=VqA.createBaggage=void 0;var ZEB=rZ(),$EB=$qA(),UEB=KqA(),EEB=ZEB.DiagAPI.instance();function KEB(A={}){return new $EB.BaggageImpl(new Map(Object.entries(A)))}VqA.createBaggage=KEB;function VEB(A){if(typeof A!=="string")EEB.error(`Cannot create baggage metadata from unknown type: ${typeof A}`),A="";return{__TYPE__:UEB.baggageEntryMetadataSymbol,toString(){return A}}}VqA.baggageEntryMetadataFromString=VEB});var cN=R((HqA)=>{Object.defineProperty(HqA,"__esModule",{value:!0});HqA.ROOT_CONTEXT=HqA.createContextKey=void 0;function HEB(A){return Symbol.for(A)}HqA.createContextKey=HEB;class tj{constructor(A){let Q=this;Q._currentContext=A?new Map(A):new Map,Q.getValue=(B)=>Q._currentContext.get(B),Q.setValue=(B,Y)=>{let J=new tj(Q._currentContext);return J._currentContext.set(B,Y),J},Q.deleteValue=(B)=>{let Y=new tj(Q._currentContext);return Y._currentContext.delete(B),Y}}}HqA.ROOT_CONTEXT=new tj});var MqA=R((LqA)=>{Object.defineProperty(LqA,"__esModule",{value:!0});LqA.DiagConsoleLogger=void 0;var Vc=[{n:"error",c:"error"},{n:"warn",c:"warn"},{n:"info",c:"info"},{n:"debug",c:"debug"},{n:"verbose",c:"trace"}];class NqA{constructor(){function A(Q){return function(...B){if(console){let Y=console[Q];if(typeof Y!=="function")Y=console.log;if(typeof Y==="function")return Y.apply(console,B)}}}for(let Q=0;Q{Object.defineProperty(zqA,"__esModule",{value:!0});zqA.createNoopMeter=zqA.NOOP_OBSERVABLE_UP_DOWN_COUNTER_METRIC=zqA.NOOP_OBSERVABLE_GAUGE_METRIC=zqA.NOOP_OBSERVABLE_COUNTER_METRIC=zqA.NOOP_UP_DOWN_COUNTER_METRIC=zqA.NOOP_HISTOGRAM_METRIC=zqA.NOOP_GAUGE_METRIC=zqA.NOOP_COUNTER_METRIC=zqA.NOOP_METER=zqA.NoopObservableUpDownCounterMetric=zqA.NoopObservableGaugeMetric=zqA.NoopObservableCounterMetric=zqA.NoopObservableMetric=zqA.NoopHistogramMetric=zqA.NoopGaugeMetric=zqA.NoopUpDownCounterMetric=zqA.NoopCounterMetric=zqA.NoopMetric=zqA.NoopMeter=void 0;class Ic{constructor(){}createGauge(A,Q){return zqA.NOOP_GAUGE_METRIC}createHistogram(A,Q){return zqA.NOOP_HISTOGRAM_METRIC}createCounter(A,Q){return zqA.NOOP_COUNTER_METRIC}createUpDownCounter(A,Q){return zqA.NOOP_UP_DOWN_COUNTER_METRIC}createObservableGauge(A,Q){return zqA.NOOP_OBSERVABLE_GAUGE_METRIC}createObservableCounter(A,Q){return zqA.NOOP_OBSERVABLE_COUNTER_METRIC}createObservableUpDownCounter(A,Q){return zqA.NOOP_OBSERVABLE_UP_DOWN_COUNTER_METRIC}addBatchObservableCallback(A,Q){}removeBatchObservableCallback(A){}}zqA.NoopMeter=Ic;class eE{}zqA.NoopMetric=eE;class Hc extends eE{add(A,Q){}}zqA.NoopCounterMetric=Hc;class Dc extends eE{add(A,Q){}}zqA.NoopUpDownCounterMetric=Dc;class Nc extends eE{record(A,Q){}}zqA.NoopGaugeMetric=Nc;class Lc extends eE{record(A,Q){}}zqA.NoopHistogramMetric=Lc;class lN{addCallback(A){}removeCallback(A){}}zqA.NoopObservableMetric=lN;class qc extends lN{}zqA.NoopObservableCounterMetric=qc;class Mc extends lN{}zqA.NoopObservableGaugeMetric=Mc;class zc extends lN{}zqA.NoopObservableUpDownCounterMetric=zc;zqA.NOOP_METER=new Ic;zqA.NOOP_COUNTER_METRIC=new Hc;zqA.NOOP_GAUGE_METRIC=new Nc;zqA.NOOP_HISTOGRAM_METRIC=new Lc;zqA.NOOP_UP_DOWN_COUNTER_METRIC=new Dc;zqA.NOOP_OBSERVABLE_COUNTER_METRIC=new qc;zqA.NOOP_OBSERVABLE_GAUGE_METRIC=new Mc;zqA.NOOP_OBSERVABLE_UP_DOWN_COUNTER_METRIC=new zc;function NEB(){return zqA.NOOP_METER}zqA.createNoopMeter=NEB});var yqA=R((vqA)=>{Object.defineProperty(vqA,"__esModule",{value:!0});vqA.ValueType=void 0;var SEB;(function(A){A[A.INT=0]="INT",A[A.DOUBLE=1]="DOUBLE"})(SEB=vqA.ValueType||(vqA.ValueType={}))});var jc=R((gqA)=>{Object.defineProperty(gqA,"__esModule",{value:!0});gqA.defaultTextMapSetter=gqA.defaultTextMapGetter=void 0;gqA.defaultTextMapGetter={get(A,Q){if(A==null)return;return A[Q]},keys(A){if(A==null)return[];return Object.keys(A)}};gqA.defaultTextMapSetter={set(A,Q,B){if(A==null)return;A[Q]=B}}});var mqA=R((fqA)=>{Object.defineProperty(fqA,"__esModule",{value:!0});fqA.NoopContextManager=void 0;var _EB=cN();class xqA{active(){return _EB.ROOT_CONTEXT}with(A,Q,B,...Y){return Q.call(B,...Y)}bind(A,Q){return Q}enable(){return this}disable(){return this}}fqA.NoopContextManager=xqA});var pN=R((dqA)=>{Object.defineProperty(dqA,"__esModule",{value:!0});dqA.ContextAPI=void 0;var vEB=mqA(),Oc=sZ(),uqA=rZ(),Pc="context",yEB=new vEB.NoopContextManager;class Tc{constructor(){}static getInstance(){if(!this._instance)this._instance=new Tc;return this._instance}setGlobalContextManager(A){return(0,Oc.registerGlobal)(Pc,A,uqA.DiagAPI.instance())}active(){return this._getContextManager().active()}with(A,Q,B,...Y){return this._getContextManager().with(A,Q,B,...Y)}bind(A,Q){return this._getContextManager().bind(A,Q)}_getContextManager(){return(0,Oc.getGlobal)(Pc)||yEB}disable(){this._getContextManager().disable(),(0,Oc.unregisterGlobal)(Pc,uqA.DiagAPI.instance())}}dqA.ContextAPI=Tc});var kc=R((lqA)=>{Object.defineProperty(lqA,"__esModule",{value:!0});lqA.TraceFlags=void 0;var gEB;(function(A){A[A.NONE=0]="NONE",A[A.SAMPLED=1]="SAMPLED"})(gEB=lqA.TraceFlags||(lqA.TraceFlags={}))});var ej=R((pqA)=>{Object.defineProperty(pqA,"__esModule",{value:!0});pqA.INVALID_SPAN_CONTEXT=pqA.INVALID_TRACEID=pqA.INVALID_SPANID=void 0;var hEB=kc();pqA.INVALID_SPANID="0000000000000000";pqA.INVALID_TRACEID="00000000000000000000000000000000";pqA.INVALID_SPAN_CONTEXT={traceId:pqA.INVALID_TRACEID,spanId:pqA.INVALID_SPANID,traceFlags:hEB.TraceFlags.NONE}});var AO=R((aqA)=>{Object.defineProperty(aqA,"__esModule",{value:!0});aqA.NonRecordingSpan=void 0;var xEB=ej();class rqA{constructor(A=xEB.INVALID_SPAN_CONTEXT){this._spanContext=A}spanContext(){return this._spanContext}setAttribute(A,Q){return this}setAttributes(A){return this}addEvent(A,Q){return this}addLink(A){return this}addLinks(A){return this}setStatus(A){return this}updateName(A){return this}end(A){}isRecording(){return!1}recordException(A,Q){}}aqA.NonRecordingSpan=rqA});var yc=R((eqA)=>{Object.defineProperty(eqA,"__esModule",{value:!0});eqA.getSpanContext=eqA.setSpanContext=eqA.deleteSpan=eqA.setSpan=eqA.getActiveSpan=eqA.getSpan=void 0;var fEB=cN(),bEB=AO(),mEB=pN(),_c=(0,fEB.createContextKey)("OpenTelemetry Context Key SPAN");function vc(A){return A.getValue(_c)||void 0}eqA.getSpan=vc;function uEB(){return vc(mEB.ContextAPI.getInstance().active())}eqA.getActiveSpan=uEB;function tqA(A,Q){return A.setValue(_c,Q)}eqA.setSpan=tqA;function dEB(A){return A.deleteValue(_c)}eqA.deleteSpan=dEB;function cEB(A,Q){return tqA(A,new bEB.NonRecordingSpan(Q))}eqA.setSpanContext=cEB;function lEB(A){var Q;return(Q=vc(A))===null||Q===void 0?void 0:Q.spanContext()}eqA.getSpanContext=lEB});var QO=R((JMA)=>{Object.defineProperty(JMA,"__esModule",{value:!0});JMA.wrapSpanContext=JMA.isSpanContextValid=JMA.isValidSpanId=JMA.isValidTraceId=void 0;var QMA=ej(),aEB=AO(),oEB=/^([0-9a-f]{32})$/i,tEB=/^[0-9a-f]{16}$/i;function BMA(A){return oEB.test(A)&&A!==QMA.INVALID_TRACEID}JMA.isValidTraceId=BMA;function YMA(A){return tEB.test(A)&&A!==QMA.INVALID_SPANID}JMA.isValidSpanId=YMA;function eEB(A){return BMA(A.traceId)&&YMA(A.spanId)}JMA.isSpanContextValid=eEB;function AKB(A){return new aEB.NonRecordingSpan(A)}JMA.wrapSpanContext=AKB});var xc=R((WMA)=>{Object.defineProperty(WMA,"__esModule",{value:!0});WMA.NoopTracer=void 0;var JKB=pN(),XMA=yc(),gc=AO(),CKB=QO(),hc=JKB.ContextAPI.getInstance();class GMA{startSpan(A,Q,B=hc.active()){if(Boolean(Q===null||Q===void 0?void 0:Q.root))return new gc.NonRecordingSpan;let J=B&&(0,XMA.getSpanContext)(B);if(XKB(J)&&(0,CKB.isSpanContextValid)(J))return new gc.NonRecordingSpan(J);else return new gc.NonRecordingSpan}startActiveSpan(A,Q,B,Y){let J,C,X;if(arguments.length<2)return;else if(arguments.length===2)X=Q;else if(arguments.length===3)J=Q,X=B;else J=Q,C=B,X=Y;let G=C!==null&&C!==void 0?C:hc.active(),W=this.startSpan(A,J,G),F=(0,XMA.setSpan)(G,W);return hc.with(F,X,void 0,W)}}WMA.NoopTracer=GMA;function XKB(A){return typeof A==="object"&&typeof A.spanId==="string"&&typeof A.traceId==="string"&&typeof A.traceFlags==="number"}});var fc=R(($MA)=>{Object.defineProperty($MA,"__esModule",{value:!0});$MA.ProxyTracer=void 0;var GKB=xc(),WKB=new GKB.NoopTracer;class ZMA{constructor(A,Q,B,Y){this._provider=A,this.name=Q,this.version=B,this.options=Y}startSpan(A,Q,B){return this._getTracer().startSpan(A,Q,B)}startActiveSpan(A,Q,B,Y){let J=this._getTracer();return Reflect.apply(J.startActiveSpan,J,arguments)}_getTracer(){if(this._delegate)return this._delegate;let A=this._provider.getDelegateTracer(this.name,this.version,this.options);if(!A)return WKB;return this._delegate=A,this._delegate}}$MA.ProxyTracer=ZMA});var IMA=R((KMA)=>{Object.defineProperty(KMA,"__esModule",{value:!0});KMA.NoopTracerProvider=void 0;var FKB=xc();class EMA{getTracer(A,Q,B){return new FKB.NoopTracer}}KMA.NoopTracerProvider=EMA});var bc=R((DMA)=>{Object.defineProperty(DMA,"__esModule",{value:!0});DMA.ProxyTracerProvider=void 0;var ZKB=fc(),$KB=IMA(),UKB=new $KB.NoopTracerProvider;class HMA{getTracer(A,Q,B){var Y;return(Y=this.getDelegateTracer(A,Q,B))!==null&&Y!==void 0?Y:new ZKB.ProxyTracer(this,A,Q,B)}getDelegate(){var A;return(A=this._delegate)!==null&&A!==void 0?A:UKB}setDelegate(A){this._delegate=A}getDelegateTracer(A,Q,B){var Y;return(Y=this._delegate)===null||Y===void 0?void 0:Y.getTracer(A,Q,B)}}DMA.ProxyTracerProvider=HMA});var qMA=R((LMA)=>{Object.defineProperty(LMA,"__esModule",{value:!0});LMA.SamplingDecision=void 0;var EKB;(function(A){A[A.NOT_RECORD=0]="NOT_RECORD",A[A.RECORD=1]="RECORD",A[A.RECORD_AND_SAMPLED=2]="RECORD_AND_SAMPLED"})(EKB=LMA.SamplingDecision||(LMA.SamplingDecision={}))});var zMA=R((MMA)=>{Object.defineProperty(MMA,"__esModule",{value:!0});MMA.SpanKind=void 0;var KKB;(function(A){A[A.INTERNAL=0]="INTERNAL",A[A.SERVER=1]="SERVER",A[A.CLIENT=2]="CLIENT",A[A.PRODUCER=3]="PRODUCER",A[A.CONSUMER=4]="CONSUMER"})(KKB=MMA.SpanKind||(MMA.SpanKind={}))});var wMA=R((RMA)=>{Object.defineProperty(RMA,"__esModule",{value:!0});RMA.SpanStatusCode=void 0;var VKB;(function(A){A[A.UNSET=0]="UNSET",A[A.OK=1]="OK",A[A.ERROR=2]="ERROR"})(VKB=RMA.SpanStatusCode||(RMA.SpanStatusCode={}))});var PMA=R((jMA)=>{Object.defineProperty(jMA,"__esModule",{value:!0});jMA.validateValue=jMA.validateKey=void 0;var cc="[_0-9a-z-*/]",IKB=`[a-z]${cc}{0,255}`,HKB=`[a-z0-9]${cc}{0,240}@[a-z]${cc}{0,13}`,DKB=new RegExp(`^(?:${IKB}|${HKB})$`),NKB=/^[ -~]{0,255}[!-~]$/,LKB=/,|=/;function qKB(A){return DKB.test(A)}jMA.validateKey=qKB;function MKB(A){return NKB.test(A)&&!LKB.test(A)}jMA.validateValue=MKB});var gMA=R((vMA)=>{Object.defineProperty(vMA,"__esModule",{value:!0});vMA.TraceStateImpl=void 0;var TMA=PMA(),SMA=32,RKB=512,kMA=",",_MA="=";class lc{constructor(A){if(this._internalState=new Map,A)this._parse(A)}set(A,Q){let B=this._clone();if(B._internalState.has(A))B._internalState.delete(A);return B._internalState.set(A,Q),B}unset(A){let Q=this._clone();return Q._internalState.delete(A),Q}get(A){return this._internalState.get(A)}serialize(){return this._keys().reduce((A,Q)=>{return A.push(Q+_MA+this.get(Q)),A},[]).join(kMA)}_parse(A){if(A.length>RKB)return;if(this._internalState=A.split(kMA).reverse().reduce((Q,B)=>{let Y=B.trim(),J=Y.indexOf(_MA);if(J!==-1){let C=Y.slice(0,J),X=Y.slice(J+1,B.length);if((0,TMA.validateKey)(C)&&(0,TMA.validateValue)(X))Q.set(C,X)}return Q},new Map),this._internalState.size>SMA)this._internalState=new Map(Array.from(this._internalState.entries()).reverse().slice(0,SMA))}_keys(){return Array.from(this._internalState.keys()).reverse()}_clone(){let A=new lc;return A._internalState=new Map(this._internalState),A}}vMA.TraceStateImpl=lc});var fMA=R((hMA)=>{Object.defineProperty(hMA,"__esModule",{value:!0});hMA.createTraceState=void 0;var wKB=gMA();function jKB(A){return new wKB.TraceStateImpl(A)}hMA.createTraceState=jKB});var uMA=R((bMA)=>{Object.defineProperty(bMA,"__esModule",{value:!0});bMA.context=void 0;var OKB=pN();bMA.context=OKB.ContextAPI.getInstance()});var lMA=R((dMA)=>{Object.defineProperty(dMA,"__esModule",{value:!0});dMA.diag=void 0;var PKB=rZ();dMA.diag=PKB.DiagAPI.instance()});var nMA=R((pMA)=>{Object.defineProperty(pMA,"__esModule",{value:!0});pMA.NOOP_METER_PROVIDER=pMA.NoopMeterProvider=void 0;var TKB=Rc();class pc{getMeter(A,Q,B){return TKB.NOOP_METER}}pMA.NoopMeterProvider=pc;pMA.NOOP_METER_PROVIDER=new pc});var oMA=R((rMA)=>{Object.defineProperty(rMA,"__esModule",{value:!0});rMA.MetricsAPI=void 0;var kKB=nMA(),ic=sZ(),sMA=rZ(),nc="metrics";class sc{constructor(){}static getInstance(){if(!this._instance)this._instance=new sc;return this._instance}setGlobalMeterProvider(A){return(0,ic.registerGlobal)(nc,A,sMA.DiagAPI.instance())}getMeterProvider(){return(0,ic.getGlobal)(nc)||kKB.NOOP_METER_PROVIDER}getMeter(A,Q,B){return this.getMeterProvider().getMeter(A,Q,B)}disable(){(0,ic.unregisterGlobal)(nc,sMA.DiagAPI.instance())}}rMA.MetricsAPI=sc});var AzA=R((tMA)=>{Object.defineProperty(tMA,"__esModule",{value:!0});tMA.metrics=void 0;var _KB=oMA();tMA.metrics=_KB.MetricsAPI.getInstance()});var JzA=R((BzA)=>{Object.defineProperty(BzA,"__esModule",{value:!0});BzA.NoopTextMapPropagator=void 0;class QzA{inject(A,Q){}extract(A,Q){return A}fields(){return[]}}BzA.NoopTextMapPropagator=QzA});var WzA=R((XzA)=>{Object.defineProperty(XzA,"__esModule",{value:!0});XzA.deleteBaggage=XzA.setBaggage=XzA.getActiveBaggage=XzA.getBaggage=void 0;var vKB=pN(),yKB=cN(),rc=(0,yKB.createContextKey)("OpenTelemetry Baggage Key");function CzA(A){return A.getValue(rc)||void 0}XzA.getBaggage=CzA;function gKB(){return CzA(vKB.ContextAPI.getInstance().active())}XzA.getActiveBaggage=gKB;function hKB(A,Q){return A.setValue(rc,Q)}XzA.setBaggage=hKB;function xKB(A){return A.deleteValue(rc)}XzA.deleteBaggage=xKB});var EzA=R(($zA)=>{Object.defineProperty($zA,"__esModule",{value:!0});$zA.PropagationAPI=void 0;var ac=sZ(),uKB=JzA(),FzA=jc(),BO=WzA(),dKB=Kc(),ZzA=rZ(),oc="propagation",cKB=new uKB.NoopTextMapPropagator;class tc{constructor(){this.createBaggage=dKB.createBaggage,this.getBaggage=BO.getBaggage,this.getActiveBaggage=BO.getActiveBaggage,this.setBaggage=BO.setBaggage,this.deleteBaggage=BO.deleteBaggage}static getInstance(){if(!this._instance)this._instance=new tc;return this._instance}setGlobalPropagator(A){return(0,ac.registerGlobal)(oc,A,ZzA.DiagAPI.instance())}inject(A,Q,B=FzA.defaultTextMapSetter){return this._getGlobalPropagator().inject(A,Q,B)}extract(A,Q,B=FzA.defaultTextMapGetter){return this._getGlobalPropagator().extract(A,Q,B)}fields(){return this._getGlobalPropagator().fields()}disable(){(0,ac.unregisterGlobal)(oc,ZzA.DiagAPI.instance())}_getGlobalPropagator(){return(0,ac.getGlobal)(oc)||cKB}}$zA.PropagationAPI=tc});var IzA=R((KzA)=>{Object.defineProperty(KzA,"__esModule",{value:!0});KzA.propagation=void 0;var lKB=EzA();KzA.propagation=lKB.PropagationAPI.getInstance()});var MzA=R((LzA)=>{Object.defineProperty(LzA,"__esModule",{value:!0});LzA.TraceAPI=void 0;var ec=sZ(),HzA=bc(),DzA=QO(),AK=yc(),NzA=rZ(),Al="trace";class Ql{constructor(){this._proxyTracerProvider=new HzA.ProxyTracerProvider,this.wrapSpanContext=DzA.wrapSpanContext,this.isSpanContextValid=DzA.isSpanContextValid,this.deleteSpan=AK.deleteSpan,this.getSpan=AK.getSpan,this.getActiveSpan=AK.getActiveSpan,this.getSpanContext=AK.getSpanContext,this.setSpan=AK.setSpan,this.setSpanContext=AK.setSpanContext}static getInstance(){if(!this._instance)this._instance=new Ql;return this._instance}setGlobalTracerProvider(A){let Q=(0,ec.registerGlobal)(Al,this._proxyTracerProvider,NzA.DiagAPI.instance());if(Q)this._proxyTracerProvider.setDelegate(A);return Q}getTracerProvider(){return(0,ec.getGlobal)(Al)||this._proxyTracerProvider}getTracer(A,Q){return this.getTracerProvider().getTracer(A,Q)}disable(){(0,ec.unregisterGlobal)(Al,NzA.DiagAPI.instance()),this._proxyTracerProvider=new HzA.ProxyTracerProvider}}LzA.TraceAPI=Ql});var wzA=R((zzA)=>{Object.defineProperty(zzA,"__esModule",{value:!0});zzA.trace=void 0;var pKB=MzA();zzA.trace=pKB.TraceAPI.getInstance()});var yA=R((uB)=>{Object.defineProperty(uB,"__esModule",{value:!0});uB.trace=uB.propagation=uB.metrics=uB.diag=uB.context=uB.INVALID_SPAN_CONTEXT=uB.INVALID_TRACEID=uB.INVALID_SPANID=uB.isValidSpanId=uB.isValidTraceId=uB.isSpanContextValid=uB.createTraceState=uB.TraceFlags=uB.SpanStatusCode=uB.SpanKind=uB.SamplingDecision=uB.ProxyTracerProvider=uB.ProxyTracer=uB.defaultTextMapSetter=uB.defaultTextMapGetter=uB.ValueType=uB.createNoopMeter=uB.DiagLogLevel=uB.DiagConsoleLogger=uB.ROOT_CONTEXT=uB.createContextKey=uB.baggageEntryMetadataFromString=void 0;var iKB=Kc();Object.defineProperty(uB,"baggageEntryMetadataFromString",{enumerable:!0,get:function(){return iKB.baggageEntryMetadataFromString}});var jzA=cN();Object.defineProperty(uB,"createContextKey",{enumerable:!0,get:function(){return jzA.createContextKey}});Object.defineProperty(uB,"ROOT_CONTEXT",{enumerable:!0,get:function(){return jzA.ROOT_CONTEXT}});var nKB=MqA();Object.defineProperty(uB,"DiagConsoleLogger",{enumerable:!0,get:function(){return nKB.DiagConsoleLogger}});var sKB=aj();Object.defineProperty(uB,"DiagLogLevel",{enumerable:!0,get:function(){return sKB.DiagLogLevel}});var rKB=Rc();Object.defineProperty(uB,"createNoopMeter",{enumerable:!0,get:function(){return rKB.createNoopMeter}});var aKB=yqA();Object.defineProperty(uB,"ValueType",{enumerable:!0,get:function(){return aKB.ValueType}});var OzA=jc();Object.defineProperty(uB,"defaultTextMapGetter",{enumerable:!0,get:function(){return OzA.defaultTextMapGetter}});Object.defineProperty(uB,"defaultTextMapSetter",{enumerable:!0,get:function(){return OzA.defaultTextMapSetter}});var oKB=fc();Object.defineProperty(uB,"ProxyTracer",{enumerable:!0,get:function(){return oKB.ProxyTracer}});var tKB=bc();Object.defineProperty(uB,"ProxyTracerProvider",{enumerable:!0,get:function(){return tKB.ProxyTracerProvider}});var eKB=qMA();Object.defineProperty(uB,"SamplingDecision",{enumerable:!0,get:function(){return eKB.SamplingDecision}});var AVB=zMA();Object.defineProperty(uB,"SpanKind",{enumerable:!0,get:function(){return AVB.SpanKind}});var QVB=wMA();Object.defineProperty(uB,"SpanStatusCode",{enumerable:!0,get:function(){return QVB.SpanStatusCode}});var BVB=kc();Object.defineProperty(uB,"TraceFlags",{enumerable:!0,get:function(){return BVB.TraceFlags}});var YVB=fMA();Object.defineProperty(uB,"createTraceState",{enumerable:!0,get:function(){return YVB.createTraceState}});var Bl=QO();Object.defineProperty(uB,"isSpanContextValid",{enumerable:!0,get:function(){return Bl.isSpanContextValid}});Object.defineProperty(uB,"isValidTraceId",{enumerable:!0,get:function(){return Bl.isValidTraceId}});Object.defineProperty(uB,"isValidSpanId",{enumerable:!0,get:function(){return Bl.isValidSpanId}});var Yl=ej();Object.defineProperty(uB,"INVALID_SPANID",{enumerable:!0,get:function(){return Yl.INVALID_SPANID}});Object.defineProperty(uB,"INVALID_TRACEID",{enumerable:!0,get:function(){return Yl.INVALID_TRACEID}});Object.defineProperty(uB,"INVALID_SPAN_CONTEXT",{enumerable:!0,get:function(){return Yl.INVALID_SPAN_CONTEXT}});var PzA=uMA();Object.defineProperty(uB,"context",{enumerable:!0,get:function(){return PzA.context}});var TzA=lMA();Object.defineProperty(uB,"diag",{enumerable:!0,get:function(){return TzA.diag}});var SzA=AzA();Object.defineProperty(uB,"metrics",{enumerable:!0,get:function(){return SzA.metrics}});var kzA=IzA();Object.defineProperty(uB,"propagation",{enumerable:!0,get:function(){return kzA.propagation}});var _zA=wzA();Object.defineProperty(uB,"trace",{enumerable:!0,get:function(){return _zA.trace}});uB.default={context:PzA.context,diag:TzA.diag,metrics:SzA.metrics,propagation:kzA.propagation,trace:_zA.trace}});var iN=R((vzA)=>{Object.defineProperty(vzA,"__esModule",{value:!0});vzA.isTracingSuppressed=vzA.unsuppressTracing=vzA.suppressTracing=void 0;var XVB=yA(),Jl=(0,XVB.createContextKey)("OpenTelemetry SDK Context Key SUPPRESS_TRACING");function GVB(A){return A.setValue(Jl,!0)}vzA.suppressTracing=GVB;function WVB(A){return A.deleteValue(Jl)}vzA.unsuppressTracing=WVB;function FVB(A){return A.getValue(Jl)===!0}vzA.isTracingSuppressed=FVB});var Cl=R((gzA)=>{Object.defineProperty(gzA,"__esModule",{value:!0});gzA.BAGGAGE_MAX_TOTAL_LENGTH=gzA.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS=gzA.BAGGAGE_MAX_NAME_VALUE_PAIRS=gzA.BAGGAGE_HEADER=gzA.BAGGAGE_ITEMS_SEPARATOR=gzA.BAGGAGE_PROPERTIES_SEPARATOR=gzA.BAGGAGE_KEY_PAIR_SEPARATOR=void 0;gzA.BAGGAGE_KEY_PAIR_SEPARATOR="=";gzA.BAGGAGE_PROPERTIES_SEPARATOR=";";gzA.BAGGAGE_ITEMS_SEPARATOR=",";gzA.BAGGAGE_HEADER="baggage";gzA.BAGGAGE_MAX_NAME_VALUE_PAIRS=180;gzA.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS=4096;gzA.BAGGAGE_MAX_TOTAL_LENGTH=8192});var Xl=R((fzA)=>{Object.defineProperty(fzA,"__esModule",{value:!0});fzA.parseKeyPairsIntoRecord=fzA.parsePairKeyValue=fzA.getKeyPairs=fzA.serializeKeyPairs=void 0;var DVB=yA(),aZ=Cl();function NVB(A){return A.reduce((Q,B)=>{let Y=`${Q}${Q!==""?aZ.BAGGAGE_ITEMS_SEPARATOR:""}${B}`;return Y.length>aZ.BAGGAGE_MAX_TOTAL_LENGTH?Q:Y},"")}fzA.serializeKeyPairs=NVB;function LVB(A){return A.getAllEntries().map(([Q,B])=>{let Y=`${encodeURIComponent(Q)}=${encodeURIComponent(B.value)}`;if(B.metadata!==void 0)Y+=aZ.BAGGAGE_PROPERTIES_SEPARATOR+B.metadata.toString();return Y})}fzA.getKeyPairs=LVB;function xzA(A){let Q=A.split(aZ.BAGGAGE_PROPERTIES_SEPARATOR);if(Q.length<=0)return;let B=Q.shift();if(!B)return;let Y=B.indexOf(aZ.BAGGAGE_KEY_PAIR_SEPARATOR);if(Y<=0)return;let J=decodeURIComponent(B.substring(0,Y).trim()),C=decodeURIComponent(B.substring(Y+1).trim()),X;if(Q.length>0)X=(0,DVB.baggageEntryMetadataFromString)(Q.join(aZ.BAGGAGE_PROPERTIES_SEPARATOR));return{key:J,value:C,metadata:X}}fzA.parsePairKeyValue=xzA;function qVB(A){if(typeof A!=="string"||A.length===0)return{};return A.split(aZ.BAGGAGE_ITEMS_SEPARATOR).map((Q)=>{return xzA(Q)}).filter((Q)=>Q!==void 0&&Q.value.length>0).reduce((Q,B)=>{return Q[B.key]=B.value,Q},{})}fzA.parseKeyPairsIntoRecord=qVB});var czA=R((uzA)=>{Object.defineProperty(uzA,"__esModule",{value:!0});uzA.W3CBaggagePropagator=void 0;var Gl=yA(),wVB=iN(),oZ=Cl(),Wl=Xl();class mzA{inject(A,Q,B){let Y=Gl.propagation.getBaggage(A);if(!Y||(0,wVB.isTracingSuppressed)(A))return;let J=(0,Wl.getKeyPairs)(Y).filter((X)=>{return X.length<=oZ.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS}).slice(0,oZ.BAGGAGE_MAX_NAME_VALUE_PAIRS),C=(0,Wl.serializeKeyPairs)(J);if(C.length>0)B.set(Q,oZ.BAGGAGE_HEADER,C)}extract(A,Q,B){let Y=B.get(Q,oZ.BAGGAGE_HEADER),J=Array.isArray(Y)?Y.join(oZ.BAGGAGE_ITEMS_SEPARATOR):Y;if(!J)return A;let C={};if(J.length===0)return A;if(J.split(oZ.BAGGAGE_ITEMS_SEPARATOR).forEach((G)=>{let W=(0,Wl.parsePairKeyValue)(G);if(W){let F={value:W.value};if(W.metadata)F.metadata=W.metadata;C[W.key]=F}}),Object.entries(C).length===0)return A;return Gl.propagation.setBaggage(A,Gl.propagation.createBaggage(C))}fields(){return[oZ.BAGGAGE_HEADER]}}uzA.W3CBaggagePropagator=mzA});var nzA=R((pzA)=>{Object.defineProperty(pzA,"__esModule",{value:!0});pzA.AnchoredClock=void 0;class lzA{constructor(A,Q){this._monotonicClock=Q,this._epochMillis=A.now(),this._performanceMillis=Q.now()}now(){let A=this._monotonicClock.now()-this._performanceMillis;return this._epochMillis+A}}pzA.AnchoredClock=lzA});var A2A=R((tzA)=>{Object.defineProperty(tzA,"__esModule",{value:!0});tzA.isAttributeValue=tzA.isAttributeKey=tzA.sanitizeAttributes=void 0;var szA=yA();function jVB(A){let Q={};if(typeof A!=="object"||A==null)return Q;for(let[B,Y]of Object.entries(A)){if(!rzA(B)){szA.diag.warn(`Invalid attribute key: ${B}`);continue}if(!azA(Y)){szA.diag.warn(`Invalid attribute value set for key: ${B}`);continue}if(Array.isArray(Y))Q[B]=Y.slice();else Q[B]=Y}return Q}tzA.sanitizeAttributes=jVB;function rzA(A){return typeof A==="string"&&A.length>0}tzA.isAttributeKey=rzA;function azA(A){if(A==null)return!0;if(Array.isArray(A))return OVB(A);return ozA(A)}tzA.isAttributeValue=azA;function OVB(A){let Q;for(let B of A){if(B==null)continue;if(!Q){if(ozA(B)){Q=typeof B;continue}return!1}if(typeof B===Q)continue;return!1}return!0}function ozA(A){switch(typeof A){case"number":case"boolean":case"string":return!0}return!1}});var Fl=R((Q2A)=>{Object.defineProperty(Q2A,"__esModule",{value:!0});Q2A.loggingErrorHandler=void 0;var SVB=yA();function kVB(){return(A)=>{SVB.diag.error(_VB(A))}}Q2A.loggingErrorHandler=kVB;function _VB(A){if(typeof A==="string")return A;else return JSON.stringify(vVB(A))}function vVB(A){let Q={},B=A;while(B!==null)Object.getOwnPropertyNames(B).forEach((Y)=>{if(Q[Y])return;let J=B[Y];if(J)Q[Y]=String(J)}),B=Object.getPrototypeOf(B);return Q}});var Zl=R((J2A)=>{Object.defineProperty(J2A,"__esModule",{value:!0});J2A.globalErrorHandler=J2A.setGlobalErrorHandler=void 0;var yVB=Fl(),Y2A=(0,yVB.loggingErrorHandler)();function gVB(A){Y2A=A}J2A.setGlobalErrorHandler=gVB;function hVB(A){try{Y2A(A)}catch(Q){}}J2A.globalErrorHandler=hVB});var Ul=R((X2A)=>{Object.defineProperty(X2A,"__esModule",{value:!0});X2A.TracesSamplerValues=void 0;var fVB;(function(A){A.AlwaysOff="always_off",A.AlwaysOn="always_on",A.ParentBasedAlwaysOff="parentbased_always_off",A.ParentBasedAlwaysOn="parentbased_always_on",A.ParentBasedTraceIdRatio="parentbased_traceidratio",A.TraceIdRatio="traceidratio"})(fVB=X2A.TracesSamplerValues||(X2A.TracesSamplerValues={}))});var El=R((G2A)=>{Object.defineProperty(G2A,"__esModule",{value:!0});G2A.parseEnvironment=G2A.DEFAULT_ENVIRONMENT=G2A.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=G2A.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=G2A.DEFAULT_ATTRIBUTE_COUNT_LIMIT=G2A.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=void 0;var $W=yA(),bVB=Ul(),mVB=",",uVB=["OTEL_SDK_DISABLED"];function dVB(A){return uVB.indexOf(A)>-1}var cVB=["OTEL_BSP_EXPORT_TIMEOUT","OTEL_BSP_MAX_EXPORT_BATCH_SIZE","OTEL_BSP_MAX_QUEUE_SIZE","OTEL_BSP_SCHEDULE_DELAY","OTEL_BLRP_EXPORT_TIMEOUT","OTEL_BLRP_MAX_EXPORT_BATCH_SIZE","OTEL_BLRP_MAX_QUEUE_SIZE","OTEL_BLRP_SCHEDULE_DELAY","OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_ATTRIBUTE_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT","OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT","OTEL_SPAN_EVENT_COUNT_LIMIT","OTEL_SPAN_LINK_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT","OTEL_EXPORTER_OTLP_TIMEOUT","OTEL_EXPORTER_OTLP_TRACES_TIMEOUT","OTEL_EXPORTER_OTLP_METRICS_TIMEOUT","OTEL_EXPORTER_OTLP_LOGS_TIMEOUT","OTEL_EXPORTER_JAEGER_AGENT_PORT"];function lVB(A){return cVB.indexOf(A)>-1}var pVB=["OTEL_NO_PATCH_MODULES","OTEL_PROPAGATORS","OTEL_SEMCONV_STABILITY_OPT_IN"];function iVB(A){return pVB.indexOf(A)>-1}G2A.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=1/0;G2A.DEFAULT_ATTRIBUTE_COUNT_LIMIT=128;G2A.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=128;G2A.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=128;G2A.DEFAULT_ENVIRONMENT={OTEL_SDK_DISABLED:!1,CONTAINER_NAME:"",ECS_CONTAINER_METADATA_URI_V4:"",ECS_CONTAINER_METADATA_URI:"",HOSTNAME:"",KUBERNETES_SERVICE_HOST:"",NAMESPACE:"",OTEL_BSP_EXPORT_TIMEOUT:30000,OTEL_BSP_MAX_EXPORT_BATCH_SIZE:512,OTEL_BSP_MAX_QUEUE_SIZE:2048,OTEL_BSP_SCHEDULE_DELAY:5000,OTEL_BLRP_EXPORT_TIMEOUT:30000,OTEL_BLRP_MAX_EXPORT_BATCH_SIZE:512,OTEL_BLRP_MAX_QUEUE_SIZE:2048,OTEL_BLRP_SCHEDULE_DELAY:5000,OTEL_EXPORTER_JAEGER_AGENT_HOST:"",OTEL_EXPORTER_JAEGER_AGENT_PORT:6832,OTEL_EXPORTER_JAEGER_ENDPOINT:"",OTEL_EXPORTER_JAEGER_PASSWORD:"",OTEL_EXPORTER_JAEGER_USER:"",OTEL_EXPORTER_OTLP_ENDPOINT:"",OTEL_EXPORTER_OTLP_TRACES_ENDPOINT:"",OTEL_EXPORTER_OTLP_METRICS_ENDPOINT:"",OTEL_EXPORTER_OTLP_LOGS_ENDPOINT:"",OTEL_EXPORTER_OTLP_HEADERS:"",OTEL_EXPORTER_OTLP_TRACES_HEADERS:"",OTEL_EXPORTER_OTLP_METRICS_HEADERS:"",OTEL_EXPORTER_OTLP_LOGS_HEADERS:"",OTEL_EXPORTER_OTLP_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_TRACES_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_METRICS_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_LOGS_TIMEOUT:1e4,OTEL_EXPORTER_ZIPKIN_ENDPOINT:"http://localhost:9411/api/v2/spans",OTEL_LOG_LEVEL:$W.DiagLogLevel.INFO,OTEL_NO_PATCH_MODULES:[],OTEL_PROPAGATORS:["tracecontext","baggage"],OTEL_RESOURCE_ATTRIBUTES:"",OTEL_SERVICE_NAME:"",OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT:G2A.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_ATTRIBUTE_COUNT_LIMIT:G2A.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT:G2A.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT:G2A.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT:G2A.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT:G2A.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_SPAN_EVENT_COUNT_LIMIT:128,OTEL_SPAN_LINK_COUNT_LIMIT:128,OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT:G2A.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT,OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT:G2A.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT,OTEL_TRACES_EXPORTER:"",OTEL_TRACES_SAMPLER:bVB.TracesSamplerValues.ParentBasedAlwaysOn,OTEL_TRACES_SAMPLER_ARG:"",OTEL_LOGS_EXPORTER:"",OTEL_EXPORTER_OTLP_INSECURE:"",OTEL_EXPORTER_OTLP_TRACES_INSECURE:"",OTEL_EXPORTER_OTLP_METRICS_INSECURE:"",OTEL_EXPORTER_OTLP_LOGS_INSECURE:"",OTEL_EXPORTER_OTLP_CERTIFICATE:"",OTEL_EXPORTER_OTLP_TRACES_CERTIFICATE:"",OTEL_EXPORTER_OTLP_METRICS_CERTIFICATE:"",OTEL_EXPORTER_OTLP_LOGS_CERTIFICATE:"",OTEL_EXPORTER_OTLP_COMPRESSION:"",OTEL_EXPORTER_OTLP_TRACES_COMPRESSION:"",OTEL_EXPORTER_OTLP_METRICS_COMPRESSION:"",OTEL_EXPORTER_OTLP_LOGS_COMPRESSION:"",OTEL_EXPORTER_OTLP_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_TRACES_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_METRICS_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_LOGS_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_TRACES_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_METRICS_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_LOGS_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_TRACES_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_METRICS_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_LOGS_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_METRICS_TEMPORALITY_PREFERENCE:"cumulative",OTEL_SEMCONV_STABILITY_OPT_IN:[]};function nVB(A,Q,B){if(typeof B[A]>"u")return;let Y=String(B[A]);Q[A]=Y.toLowerCase()==="true"}function sVB(A,Q,B,Y=-1/0,J=1/0){if(typeof B[A]<"u"){let C=Number(B[A]);if(!isNaN(C))if(CJ)Q[A]=J;else Q[A]=C}}function rVB(A,Q,B,Y=mVB){let J=B[A];if(typeof J==="string")Q[A]=J.split(Y).map((C)=>C.trim())}var aVB={ALL:$W.DiagLogLevel.ALL,VERBOSE:$W.DiagLogLevel.VERBOSE,DEBUG:$W.DiagLogLevel.DEBUG,INFO:$W.DiagLogLevel.INFO,WARN:$W.DiagLogLevel.WARN,ERROR:$W.DiagLogLevel.ERROR,NONE:$W.DiagLogLevel.NONE};function oVB(A,Q,B){let Y=B[A];if(typeof Y==="string"){let J=aVB[Y.toUpperCase()];if(J!=null)Q[A]=J}}function tVB(A){let Q={};for(let B in G2A.DEFAULT_ENVIRONMENT){let Y=B;switch(Y){case"OTEL_LOG_LEVEL":oVB(Y,Q,A);break;default:if(dVB(Y))nVB(Y,Q,A);else if(lVB(Y))sVB(Y,Q,A);else if(iVB(Y))rVB(Y,Q,A);else{let J=A[Y];if(typeof J<"u"&&J!==null)Q[Y]=String(J)}}}return Q}G2A.parseEnvironment=tVB});var K2A=R((U2A)=>{Object.defineProperty(U2A,"__esModule",{value:!0});U2A.getEnvWithoutDefaults=U2A.getEnv=void 0;var Kl=El();function eVB(){let A=(0,Kl.parseEnvironment)(process.env);return Object.assign({},Kl.DEFAULT_ENVIRONMENT,A)}U2A.getEnv=eVB;function AIB(){return(0,Kl.parseEnvironment)(process.env)}U2A.getEnvWithoutDefaults=AIB});var H2A=R((V2A)=>{Object.defineProperty(V2A,"__esModule",{value:!0});V2A._globalThis=void 0;V2A._globalThis=typeof globalThis==="object"?globalThis:global});var Vl=R((N2A)=>{Object.defineProperty(N2A,"__esModule",{value:!0});N2A.hexToBinary=void 0;function D2A(A){if(A>=48&&A<=57)return A-48;if(A>=97&&A<=102)return A-87;return A-55}function BIB(A){let Q=new Uint8Array(A.length/2),B=0;for(let Y=0;Y{Object.defineProperty(q2A,"__esModule",{value:!0});q2A.hexToBase64=void 0;var YIB=Vl();function JIB(A){return Buffer.from((0,YIB.hexToBinary)(A)).toString("base64")}q2A.hexToBase64=JIB});var T2A=R((O2A)=>{Object.defineProperty(O2A,"__esModule",{value:!0});O2A.RandomIdGenerator=void 0;var CIB=8,w2A=16;class j2A{constructor(){this.generateTraceId=R2A(w2A),this.generateSpanId=R2A(CIB)}}O2A.RandomIdGenerator=j2A;var CO=Buffer.allocUnsafe(w2A);function R2A(A){return function(){for(let B=0;B>>0,B*4);for(let B=0;B0)break;else if(B===A-1)CO[A-1]=1;return CO.toString("hex",0,A)}}});var _2A=R((S2A)=>{Object.defineProperty(S2A,"__esModule",{value:!0});S2A.otperformance=void 0;var XIB=u("perf_hooks");S2A.otperformance=XIB.performance});var Il=R((v2A)=>{Object.defineProperty(v2A,"__esModule",{value:!0});v2A.VERSION=void 0;v2A.VERSION="1.30.1"});var Hl=R((g2A)=>{Object.defineProperty(g2A,"__esModule",{value:!0});g2A.createConstMap=void 0;function GIB(A){let Q={},B=A.length;for(let Y=0;Y{Object.defineProperty(jOA,"__esModule",{value:!0});jOA.SEMATTRS_NET_HOST_CARRIER_ICC=jOA.SEMATTRS_NET_HOST_CARRIER_MNC=jOA.SEMATTRS_NET_HOST_CARRIER_MCC=jOA.SEMATTRS_NET_HOST_CARRIER_NAME=jOA.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=jOA.SEMATTRS_NET_HOST_CONNECTION_TYPE=jOA.SEMATTRS_NET_HOST_NAME=jOA.SEMATTRS_NET_HOST_PORT=jOA.SEMATTRS_NET_HOST_IP=jOA.SEMATTRS_NET_PEER_NAME=jOA.SEMATTRS_NET_PEER_PORT=jOA.SEMATTRS_NET_PEER_IP=jOA.SEMATTRS_NET_TRANSPORT=jOA.SEMATTRS_FAAS_INVOKED_REGION=jOA.SEMATTRS_FAAS_INVOKED_PROVIDER=jOA.SEMATTRS_FAAS_INVOKED_NAME=jOA.SEMATTRS_FAAS_COLDSTART=jOA.SEMATTRS_FAAS_CRON=jOA.SEMATTRS_FAAS_TIME=jOA.SEMATTRS_FAAS_DOCUMENT_NAME=jOA.SEMATTRS_FAAS_DOCUMENT_TIME=jOA.SEMATTRS_FAAS_DOCUMENT_OPERATION=jOA.SEMATTRS_FAAS_DOCUMENT_COLLECTION=jOA.SEMATTRS_FAAS_EXECUTION=jOA.SEMATTRS_FAAS_TRIGGER=jOA.SEMATTRS_EXCEPTION_ESCAPED=jOA.SEMATTRS_EXCEPTION_STACKTRACE=jOA.SEMATTRS_EXCEPTION_MESSAGE=jOA.SEMATTRS_EXCEPTION_TYPE=jOA.SEMATTRS_DB_SQL_TABLE=jOA.SEMATTRS_DB_MONGODB_COLLECTION=jOA.SEMATTRS_DB_REDIS_DATABASE_INDEX=jOA.SEMATTRS_DB_HBASE_NAMESPACE=jOA.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=jOA.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=jOA.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=jOA.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=jOA.SEMATTRS_DB_CASSANDRA_TABLE=jOA.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=jOA.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=jOA.SEMATTRS_DB_CASSANDRA_KEYSPACE=jOA.SEMATTRS_DB_MSSQL_INSTANCE_NAME=jOA.SEMATTRS_DB_OPERATION=jOA.SEMATTRS_DB_STATEMENT=jOA.SEMATTRS_DB_NAME=jOA.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=jOA.SEMATTRS_DB_USER=jOA.SEMATTRS_DB_CONNECTION_STRING=jOA.SEMATTRS_DB_SYSTEM=jOA.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=void 0;jOA.SEMATTRS_MESSAGING_DESTINATION_KIND=jOA.SEMATTRS_MESSAGING_DESTINATION=jOA.SEMATTRS_MESSAGING_SYSTEM=jOA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=jOA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=jOA.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=jOA.SEMATTRS_AWS_DYNAMODB_COUNT=jOA.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=jOA.SEMATTRS_AWS_DYNAMODB_SEGMENT=jOA.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=jOA.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=jOA.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=jOA.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=jOA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=jOA.SEMATTRS_AWS_DYNAMODB_SELECT=jOA.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=jOA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=jOA.SEMATTRS_AWS_DYNAMODB_LIMIT=jOA.SEMATTRS_AWS_DYNAMODB_PROJECTION=jOA.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=jOA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=jOA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=jOA.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=jOA.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=jOA.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=jOA.SEMATTRS_HTTP_CLIENT_IP=jOA.SEMATTRS_HTTP_ROUTE=jOA.SEMATTRS_HTTP_SERVER_NAME=jOA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=jOA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=jOA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=jOA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=jOA.SEMATTRS_HTTP_USER_AGENT=jOA.SEMATTRS_HTTP_FLAVOR=jOA.SEMATTRS_HTTP_STATUS_CODE=jOA.SEMATTRS_HTTP_SCHEME=jOA.SEMATTRS_HTTP_HOST=jOA.SEMATTRS_HTTP_TARGET=jOA.SEMATTRS_HTTP_URL=jOA.SEMATTRS_HTTP_METHOD=jOA.SEMATTRS_CODE_LINENO=jOA.SEMATTRS_CODE_FILEPATH=jOA.SEMATTRS_CODE_NAMESPACE=jOA.SEMATTRS_CODE_FUNCTION=jOA.SEMATTRS_THREAD_NAME=jOA.SEMATTRS_THREAD_ID=jOA.SEMATTRS_ENDUSER_SCOPE=jOA.SEMATTRS_ENDUSER_ROLE=jOA.SEMATTRS_ENDUSER_ID=jOA.SEMATTRS_PEER_SERVICE=void 0;jOA.DBSYSTEMVALUES_FILEMAKER=jOA.DBSYSTEMVALUES_DERBY=jOA.DBSYSTEMVALUES_FIREBIRD=jOA.DBSYSTEMVALUES_ADABAS=jOA.DBSYSTEMVALUES_CACHE=jOA.DBSYSTEMVALUES_EDB=jOA.DBSYSTEMVALUES_FIRSTSQL=jOA.DBSYSTEMVALUES_INGRES=jOA.DBSYSTEMVALUES_HANADB=jOA.DBSYSTEMVALUES_MAXDB=jOA.DBSYSTEMVALUES_PROGRESS=jOA.DBSYSTEMVALUES_HSQLDB=jOA.DBSYSTEMVALUES_CLOUDSCAPE=jOA.DBSYSTEMVALUES_HIVE=jOA.DBSYSTEMVALUES_REDSHIFT=jOA.DBSYSTEMVALUES_POSTGRESQL=jOA.DBSYSTEMVALUES_DB2=jOA.DBSYSTEMVALUES_ORACLE=jOA.DBSYSTEMVALUES_MYSQL=jOA.DBSYSTEMVALUES_MSSQL=jOA.DBSYSTEMVALUES_OTHER_SQL=jOA.SemanticAttributes=jOA.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=jOA.SEMATTRS_MESSAGE_COMPRESSED_SIZE=jOA.SEMATTRS_MESSAGE_ID=jOA.SEMATTRS_MESSAGE_TYPE=jOA.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=jOA.SEMATTRS_RPC_JSONRPC_ERROR_CODE=jOA.SEMATTRS_RPC_JSONRPC_REQUEST_ID=jOA.SEMATTRS_RPC_JSONRPC_VERSION=jOA.SEMATTRS_RPC_GRPC_STATUS_CODE=jOA.SEMATTRS_RPC_METHOD=jOA.SEMATTRS_RPC_SERVICE=jOA.SEMATTRS_RPC_SYSTEM=jOA.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=jOA.SEMATTRS_MESSAGING_KAFKA_PARTITION=jOA.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=jOA.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=jOA.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=jOA.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=jOA.SEMATTRS_MESSAGING_CONSUMER_ID=jOA.SEMATTRS_MESSAGING_OPERATION=jOA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=jOA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=jOA.SEMATTRS_MESSAGING_CONVERSATION_ID=jOA.SEMATTRS_MESSAGING_MESSAGE_ID=jOA.SEMATTRS_MESSAGING_URL=jOA.SEMATTRS_MESSAGING_PROTOCOL_VERSION=jOA.SEMATTRS_MESSAGING_PROTOCOL=jOA.SEMATTRS_MESSAGING_TEMP_DESTINATION=void 0;jOA.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=jOA.FaasDocumentOperationValues=jOA.FAASDOCUMENTOPERATIONVALUES_DELETE=jOA.FAASDOCUMENTOPERATIONVALUES_EDIT=jOA.FAASDOCUMENTOPERATIONVALUES_INSERT=jOA.FaasTriggerValues=jOA.FAASTRIGGERVALUES_OTHER=jOA.FAASTRIGGERVALUES_TIMER=jOA.FAASTRIGGERVALUES_PUBSUB=jOA.FAASTRIGGERVALUES_HTTP=jOA.FAASTRIGGERVALUES_DATASOURCE=jOA.DbCassandraConsistencyLevelValues=jOA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=jOA.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=jOA.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=jOA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=jOA.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=jOA.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=jOA.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=jOA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=jOA.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=jOA.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=jOA.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=jOA.DbSystemValues=jOA.DBSYSTEMVALUES_COCKROACHDB=jOA.DBSYSTEMVALUES_MEMCACHED=jOA.DBSYSTEMVALUES_ELASTICSEARCH=jOA.DBSYSTEMVALUES_GEODE=jOA.DBSYSTEMVALUES_NEO4J=jOA.DBSYSTEMVALUES_DYNAMODB=jOA.DBSYSTEMVALUES_COSMOSDB=jOA.DBSYSTEMVALUES_COUCHDB=jOA.DBSYSTEMVALUES_COUCHBASE=jOA.DBSYSTEMVALUES_REDIS=jOA.DBSYSTEMVALUES_MONGODB=jOA.DBSYSTEMVALUES_HBASE=jOA.DBSYSTEMVALUES_CASSANDRA=jOA.DBSYSTEMVALUES_COLDFUSION=jOA.DBSYSTEMVALUES_H2=jOA.DBSYSTEMVALUES_VERTICA=jOA.DBSYSTEMVALUES_TERADATA=jOA.DBSYSTEMVALUES_SYBASE=jOA.DBSYSTEMVALUES_SQLITE=jOA.DBSYSTEMVALUES_POINTBASE=jOA.DBSYSTEMVALUES_PERVASIVE=jOA.DBSYSTEMVALUES_NETEZZA=jOA.DBSYSTEMVALUES_MARIADB=jOA.DBSYSTEMVALUES_INTERBASE=jOA.DBSYSTEMVALUES_INSTANTDB=jOA.DBSYSTEMVALUES_INFORMIX=void 0;jOA.MESSAGINGOPERATIONVALUES_RECEIVE=jOA.MessagingDestinationKindValues=jOA.MESSAGINGDESTINATIONKINDVALUES_TOPIC=jOA.MESSAGINGDESTINATIONKINDVALUES_QUEUE=jOA.HttpFlavorValues=jOA.HTTPFLAVORVALUES_QUIC=jOA.HTTPFLAVORVALUES_SPDY=jOA.HTTPFLAVORVALUES_HTTP_2_0=jOA.HTTPFLAVORVALUES_HTTP_1_1=jOA.HTTPFLAVORVALUES_HTTP_1_0=jOA.NetHostConnectionSubtypeValues=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_NR=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=jOA.NetHostConnectionTypeValues=jOA.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=jOA.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=jOA.NETHOSTCONNECTIONTYPEVALUES_CELL=jOA.NETHOSTCONNECTIONTYPEVALUES_WIRED=jOA.NETHOSTCONNECTIONTYPEVALUES_WIFI=jOA.NetTransportValues=jOA.NETTRANSPORTVALUES_OTHER=jOA.NETTRANSPORTVALUES_INPROC=jOA.NETTRANSPORTVALUES_PIPE=jOA.NETTRANSPORTVALUES_UNIX=jOA.NETTRANSPORTVALUES_IP=jOA.NETTRANSPORTVALUES_IP_UDP=jOA.NETTRANSPORTVALUES_IP_TCP=jOA.FaasInvokedProviderValues=jOA.FAASINVOKEDPROVIDERVALUES_GCP=jOA.FAASINVOKEDPROVIDERVALUES_AZURE=jOA.FAASINVOKEDPROVIDERVALUES_AWS=void 0;jOA.MessageTypeValues=jOA.MESSAGETYPEVALUES_RECEIVED=jOA.MESSAGETYPEVALUES_SENT=jOA.RpcGrpcStatusCodeValues=jOA.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=jOA.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=jOA.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=jOA.RPCGRPCSTATUSCODEVALUES_INTERNAL=jOA.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=jOA.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=jOA.RPCGRPCSTATUSCODEVALUES_ABORTED=jOA.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=jOA.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=jOA.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=jOA.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=jOA.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=jOA.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=jOA.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=jOA.RPCGRPCSTATUSCODEVALUES_UNKNOWN=jOA.RPCGRPCSTATUSCODEVALUES_CANCELLED=jOA.RPCGRPCSTATUSCODEVALUES_OK=jOA.MessagingOperationValues=jOA.MESSAGINGOPERATIONVALUES_PROCESS=void 0;var h5=Hl(),x2A="aws.lambda.invoked_arn",f2A="db.system",b2A="db.connection_string",m2A="db.user",u2A="db.jdbc.driver_classname",d2A="db.name",c2A="db.statement",l2A="db.operation",p2A="db.mssql.instance_name",i2A="db.cassandra.keyspace",n2A="db.cassandra.page_size",s2A="db.cassandra.consistency_level",r2A="db.cassandra.table",a2A="db.cassandra.idempotence",o2A="db.cassandra.speculative_execution_count",t2A="db.cassandra.coordinator.id",e2A="db.cassandra.coordinator.dc",A3A="db.hbase.namespace",Q3A="db.redis.database_index",B3A="db.mongodb.collection",Y3A="db.sql.table",J3A="exception.type",C3A="exception.message",X3A="exception.stacktrace",G3A="exception.escaped",W3A="faas.trigger",F3A="faas.execution",Z3A="faas.document.collection",$3A="faas.document.operation",U3A="faas.document.time",E3A="faas.document.name",K3A="faas.time",V3A="faas.cron",I3A="faas.coldstart",H3A="faas.invoked_name",D3A="faas.invoked_provider",N3A="faas.invoked_region",L3A="net.transport",q3A="net.peer.ip",M3A="net.peer.port",z3A="net.peer.name",R3A="net.host.ip",w3A="net.host.port",j3A="net.host.name",O3A="net.host.connection.type",P3A="net.host.connection.subtype",T3A="net.host.carrier.name",S3A="net.host.carrier.mcc",k3A="net.host.carrier.mnc",_3A="net.host.carrier.icc",v3A="peer.service",y3A="enduser.id",g3A="enduser.role",h3A="enduser.scope",x3A="thread.id",f3A="thread.name",b3A="code.function",m3A="code.namespace",u3A="code.filepath",d3A="code.lineno",c3A="http.method",l3A="http.url",p3A="http.target",i3A="http.host",n3A="http.scheme",s3A="http.status_code",r3A="http.flavor",a3A="http.user_agent",o3A="http.request_content_length",t3A="http.request_content_length_uncompressed",e3A="http.response_content_length",ARA="http.response_content_length_uncompressed",QRA="http.server_name",BRA="http.route",YRA="http.client_ip",JRA="aws.dynamodb.table_names",CRA="aws.dynamodb.consumed_capacity",XRA="aws.dynamodb.item_collection_metrics",GRA="aws.dynamodb.provisioned_read_capacity",WRA="aws.dynamodb.provisioned_write_capacity",FRA="aws.dynamodb.consistent_read",ZRA="aws.dynamodb.projection",$RA="aws.dynamodb.limit",URA="aws.dynamodb.attributes_to_get",ERA="aws.dynamodb.index_name",KRA="aws.dynamodb.select",VRA="aws.dynamodb.global_secondary_indexes",IRA="aws.dynamodb.local_secondary_indexes",HRA="aws.dynamodb.exclusive_start_table",DRA="aws.dynamodb.table_count",NRA="aws.dynamodb.scan_forward",LRA="aws.dynamodb.segment",qRA="aws.dynamodb.total_segments",MRA="aws.dynamodb.count",zRA="aws.dynamodb.scanned_count",RRA="aws.dynamodb.attribute_definitions",wRA="aws.dynamodb.global_secondary_index_updates",jRA="messaging.system",ORA="messaging.destination",PRA="messaging.destination_kind",TRA="messaging.temp_destination",SRA="messaging.protocol",kRA="messaging.protocol_version",_RA="messaging.url",vRA="messaging.message_id",yRA="messaging.conversation_id",gRA="messaging.message_payload_size_bytes",hRA="messaging.message_payload_compressed_size_bytes",xRA="messaging.operation",fRA="messaging.consumer_id",bRA="messaging.rabbitmq.routing_key",mRA="messaging.kafka.message_key",uRA="messaging.kafka.consumer_group",dRA="messaging.kafka.client_id",cRA="messaging.kafka.partition",lRA="messaging.kafka.tombstone",pRA="rpc.system",iRA="rpc.service",nRA="rpc.method",sRA="rpc.grpc.status_code",rRA="rpc.jsonrpc.version",aRA="rpc.jsonrpc.request_id",oRA="rpc.jsonrpc.error_code",tRA="rpc.jsonrpc.error_message",eRA="message.type",AwA="message.id",QwA="message.compressed_size",BwA="message.uncompressed_size";jOA.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=x2A;jOA.SEMATTRS_DB_SYSTEM=f2A;jOA.SEMATTRS_DB_CONNECTION_STRING=b2A;jOA.SEMATTRS_DB_USER=m2A;jOA.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=u2A;jOA.SEMATTRS_DB_NAME=d2A;jOA.SEMATTRS_DB_STATEMENT=c2A;jOA.SEMATTRS_DB_OPERATION=l2A;jOA.SEMATTRS_DB_MSSQL_INSTANCE_NAME=p2A;jOA.SEMATTRS_DB_CASSANDRA_KEYSPACE=i2A;jOA.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=n2A;jOA.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=s2A;jOA.SEMATTRS_DB_CASSANDRA_TABLE=r2A;jOA.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=a2A;jOA.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=o2A;jOA.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=t2A;jOA.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=e2A;jOA.SEMATTRS_DB_HBASE_NAMESPACE=A3A;jOA.SEMATTRS_DB_REDIS_DATABASE_INDEX=Q3A;jOA.SEMATTRS_DB_MONGODB_COLLECTION=B3A;jOA.SEMATTRS_DB_SQL_TABLE=Y3A;jOA.SEMATTRS_EXCEPTION_TYPE=J3A;jOA.SEMATTRS_EXCEPTION_MESSAGE=C3A;jOA.SEMATTRS_EXCEPTION_STACKTRACE=X3A;jOA.SEMATTRS_EXCEPTION_ESCAPED=G3A;jOA.SEMATTRS_FAAS_TRIGGER=W3A;jOA.SEMATTRS_FAAS_EXECUTION=F3A;jOA.SEMATTRS_FAAS_DOCUMENT_COLLECTION=Z3A;jOA.SEMATTRS_FAAS_DOCUMENT_OPERATION=$3A;jOA.SEMATTRS_FAAS_DOCUMENT_TIME=U3A;jOA.SEMATTRS_FAAS_DOCUMENT_NAME=E3A;jOA.SEMATTRS_FAAS_TIME=K3A;jOA.SEMATTRS_FAAS_CRON=V3A;jOA.SEMATTRS_FAAS_COLDSTART=I3A;jOA.SEMATTRS_FAAS_INVOKED_NAME=H3A;jOA.SEMATTRS_FAAS_INVOKED_PROVIDER=D3A;jOA.SEMATTRS_FAAS_INVOKED_REGION=N3A;jOA.SEMATTRS_NET_TRANSPORT=L3A;jOA.SEMATTRS_NET_PEER_IP=q3A;jOA.SEMATTRS_NET_PEER_PORT=M3A;jOA.SEMATTRS_NET_PEER_NAME=z3A;jOA.SEMATTRS_NET_HOST_IP=R3A;jOA.SEMATTRS_NET_HOST_PORT=w3A;jOA.SEMATTRS_NET_HOST_NAME=j3A;jOA.SEMATTRS_NET_HOST_CONNECTION_TYPE=O3A;jOA.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=P3A;jOA.SEMATTRS_NET_HOST_CARRIER_NAME=T3A;jOA.SEMATTRS_NET_HOST_CARRIER_MCC=S3A;jOA.SEMATTRS_NET_HOST_CARRIER_MNC=k3A;jOA.SEMATTRS_NET_HOST_CARRIER_ICC=_3A;jOA.SEMATTRS_PEER_SERVICE=v3A;jOA.SEMATTRS_ENDUSER_ID=y3A;jOA.SEMATTRS_ENDUSER_ROLE=g3A;jOA.SEMATTRS_ENDUSER_SCOPE=h3A;jOA.SEMATTRS_THREAD_ID=x3A;jOA.SEMATTRS_THREAD_NAME=f3A;jOA.SEMATTRS_CODE_FUNCTION=b3A;jOA.SEMATTRS_CODE_NAMESPACE=m3A;jOA.SEMATTRS_CODE_FILEPATH=u3A;jOA.SEMATTRS_CODE_LINENO=d3A;jOA.SEMATTRS_HTTP_METHOD=c3A;jOA.SEMATTRS_HTTP_URL=l3A;jOA.SEMATTRS_HTTP_TARGET=p3A;jOA.SEMATTRS_HTTP_HOST=i3A;jOA.SEMATTRS_HTTP_SCHEME=n3A;jOA.SEMATTRS_HTTP_STATUS_CODE=s3A;jOA.SEMATTRS_HTTP_FLAVOR=r3A;jOA.SEMATTRS_HTTP_USER_AGENT=a3A;jOA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=o3A;jOA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=t3A;jOA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=e3A;jOA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=ARA;jOA.SEMATTRS_HTTP_SERVER_NAME=QRA;jOA.SEMATTRS_HTTP_ROUTE=BRA;jOA.SEMATTRS_HTTP_CLIENT_IP=YRA;jOA.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=JRA;jOA.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=CRA;jOA.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=XRA;jOA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=GRA;jOA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=WRA;jOA.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=FRA;jOA.SEMATTRS_AWS_DYNAMODB_PROJECTION=ZRA;jOA.SEMATTRS_AWS_DYNAMODB_LIMIT=$RA;jOA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=URA;jOA.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=ERA;jOA.SEMATTRS_AWS_DYNAMODB_SELECT=KRA;jOA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=VRA;jOA.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=IRA;jOA.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=HRA;jOA.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=DRA;jOA.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=NRA;jOA.SEMATTRS_AWS_DYNAMODB_SEGMENT=LRA;jOA.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=qRA;jOA.SEMATTRS_AWS_DYNAMODB_COUNT=MRA;jOA.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=zRA;jOA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=RRA;jOA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=wRA;jOA.SEMATTRS_MESSAGING_SYSTEM=jRA;jOA.SEMATTRS_MESSAGING_DESTINATION=ORA;jOA.SEMATTRS_MESSAGING_DESTINATION_KIND=PRA;jOA.SEMATTRS_MESSAGING_TEMP_DESTINATION=TRA;jOA.SEMATTRS_MESSAGING_PROTOCOL=SRA;jOA.SEMATTRS_MESSAGING_PROTOCOL_VERSION=kRA;jOA.SEMATTRS_MESSAGING_URL=_RA;jOA.SEMATTRS_MESSAGING_MESSAGE_ID=vRA;jOA.SEMATTRS_MESSAGING_CONVERSATION_ID=yRA;jOA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=gRA;jOA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=hRA;jOA.SEMATTRS_MESSAGING_OPERATION=xRA;jOA.SEMATTRS_MESSAGING_CONSUMER_ID=fRA;jOA.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=bRA;jOA.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=mRA;jOA.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=uRA;jOA.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=dRA;jOA.SEMATTRS_MESSAGING_KAFKA_PARTITION=cRA;jOA.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=lRA;jOA.SEMATTRS_RPC_SYSTEM=pRA;jOA.SEMATTRS_RPC_SERVICE=iRA;jOA.SEMATTRS_RPC_METHOD=nRA;jOA.SEMATTRS_RPC_GRPC_STATUS_CODE=sRA;jOA.SEMATTRS_RPC_JSONRPC_VERSION=rRA;jOA.SEMATTRS_RPC_JSONRPC_REQUEST_ID=aRA;jOA.SEMATTRS_RPC_JSONRPC_ERROR_CODE=oRA;jOA.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=tRA;jOA.SEMATTRS_MESSAGE_TYPE=eRA;jOA.SEMATTRS_MESSAGE_ID=AwA;jOA.SEMATTRS_MESSAGE_COMPRESSED_SIZE=QwA;jOA.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=BwA;jOA.SemanticAttributes=(0,h5.createConstMap)([x2A,f2A,b2A,m2A,u2A,d2A,c2A,l2A,p2A,i2A,n2A,s2A,r2A,a2A,o2A,t2A,e2A,A3A,Q3A,B3A,Y3A,J3A,C3A,X3A,G3A,W3A,F3A,Z3A,$3A,U3A,E3A,K3A,V3A,I3A,H3A,D3A,N3A,L3A,q3A,M3A,z3A,R3A,w3A,j3A,O3A,P3A,T3A,S3A,k3A,_3A,v3A,y3A,g3A,h3A,x3A,f3A,b3A,m3A,u3A,d3A,c3A,l3A,p3A,i3A,n3A,s3A,r3A,a3A,o3A,t3A,e3A,ARA,QRA,BRA,YRA,JRA,CRA,XRA,GRA,WRA,FRA,ZRA,$RA,URA,ERA,KRA,VRA,IRA,HRA,DRA,NRA,LRA,qRA,MRA,zRA,RRA,wRA,jRA,ORA,PRA,TRA,SRA,kRA,_RA,vRA,yRA,gRA,hRA,xRA,fRA,bRA,mRA,uRA,dRA,cRA,lRA,pRA,iRA,nRA,sRA,rRA,aRA,oRA,tRA,eRA,AwA,QwA,BwA]);var YwA="other_sql",JwA="mssql",CwA="mysql",XwA="oracle",GwA="db2",WwA="postgresql",FwA="redshift",ZwA="hive",$wA="cloudscape",UwA="hsqldb",EwA="progress",KwA="maxdb",VwA="hanadb",IwA="ingres",HwA="firstsql",DwA="edb",NwA="cache",LwA="adabas",qwA="firebird",MwA="derby",zwA="filemaker",RwA="informix",wwA="instantdb",jwA="interbase",OwA="mariadb",PwA="netezza",TwA="pervasive",SwA="pointbase",kwA="sqlite",_wA="sybase",vwA="teradata",ywA="vertica",gwA="h2",hwA="coldfusion",xwA="cassandra",fwA="hbase",bwA="mongodb",mwA="redis",uwA="couchbase",dwA="couchdb",cwA="cosmosdb",lwA="dynamodb",pwA="neo4j",iwA="geode",nwA="elasticsearch",swA="memcached",rwA="cockroachdb";jOA.DBSYSTEMVALUES_OTHER_SQL=YwA;jOA.DBSYSTEMVALUES_MSSQL=JwA;jOA.DBSYSTEMVALUES_MYSQL=CwA;jOA.DBSYSTEMVALUES_ORACLE=XwA;jOA.DBSYSTEMVALUES_DB2=GwA;jOA.DBSYSTEMVALUES_POSTGRESQL=WwA;jOA.DBSYSTEMVALUES_REDSHIFT=FwA;jOA.DBSYSTEMVALUES_HIVE=ZwA;jOA.DBSYSTEMVALUES_CLOUDSCAPE=$wA;jOA.DBSYSTEMVALUES_HSQLDB=UwA;jOA.DBSYSTEMVALUES_PROGRESS=EwA;jOA.DBSYSTEMVALUES_MAXDB=KwA;jOA.DBSYSTEMVALUES_HANADB=VwA;jOA.DBSYSTEMVALUES_INGRES=IwA;jOA.DBSYSTEMVALUES_FIRSTSQL=HwA;jOA.DBSYSTEMVALUES_EDB=DwA;jOA.DBSYSTEMVALUES_CACHE=NwA;jOA.DBSYSTEMVALUES_ADABAS=LwA;jOA.DBSYSTEMVALUES_FIREBIRD=qwA;jOA.DBSYSTEMVALUES_DERBY=MwA;jOA.DBSYSTEMVALUES_FILEMAKER=zwA;jOA.DBSYSTEMVALUES_INFORMIX=RwA;jOA.DBSYSTEMVALUES_INSTANTDB=wwA;jOA.DBSYSTEMVALUES_INTERBASE=jwA;jOA.DBSYSTEMVALUES_MARIADB=OwA;jOA.DBSYSTEMVALUES_NETEZZA=PwA;jOA.DBSYSTEMVALUES_PERVASIVE=TwA;jOA.DBSYSTEMVALUES_POINTBASE=SwA;jOA.DBSYSTEMVALUES_SQLITE=kwA;jOA.DBSYSTEMVALUES_SYBASE=_wA;jOA.DBSYSTEMVALUES_TERADATA=vwA;jOA.DBSYSTEMVALUES_VERTICA=ywA;jOA.DBSYSTEMVALUES_H2=gwA;jOA.DBSYSTEMVALUES_COLDFUSION=hwA;jOA.DBSYSTEMVALUES_CASSANDRA=xwA;jOA.DBSYSTEMVALUES_HBASE=fwA;jOA.DBSYSTEMVALUES_MONGODB=bwA;jOA.DBSYSTEMVALUES_REDIS=mwA;jOA.DBSYSTEMVALUES_COUCHBASE=uwA;jOA.DBSYSTEMVALUES_COUCHDB=dwA;jOA.DBSYSTEMVALUES_COSMOSDB=cwA;jOA.DBSYSTEMVALUES_DYNAMODB=lwA;jOA.DBSYSTEMVALUES_NEO4J=pwA;jOA.DBSYSTEMVALUES_GEODE=iwA;jOA.DBSYSTEMVALUES_ELASTICSEARCH=nwA;jOA.DBSYSTEMVALUES_MEMCACHED=swA;jOA.DBSYSTEMVALUES_COCKROACHDB=rwA;jOA.DbSystemValues=(0,h5.createConstMap)([YwA,JwA,CwA,XwA,GwA,WwA,FwA,ZwA,$wA,UwA,EwA,KwA,VwA,IwA,HwA,DwA,NwA,LwA,qwA,MwA,zwA,RwA,wwA,jwA,OwA,PwA,TwA,SwA,kwA,_wA,vwA,ywA,gwA,hwA,xwA,fwA,bwA,mwA,uwA,dwA,cwA,lwA,pwA,iwA,nwA,swA,rwA]);var awA="all",owA="each_quorum",twA="quorum",ewA="local_quorum",AjA="one",QjA="two",BjA="three",YjA="local_one",JjA="any",CjA="serial",XjA="local_serial";jOA.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=awA;jOA.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=owA;jOA.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=twA;jOA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=ewA;jOA.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=AjA;jOA.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=QjA;jOA.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=BjA;jOA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=YjA;jOA.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=JjA;jOA.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=CjA;jOA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=XjA;jOA.DbCassandraConsistencyLevelValues=(0,h5.createConstMap)([awA,owA,twA,ewA,AjA,QjA,BjA,YjA,JjA,CjA,XjA]);var GjA="datasource",WjA="http",FjA="pubsub",ZjA="timer",$jA="other";jOA.FAASTRIGGERVALUES_DATASOURCE=GjA;jOA.FAASTRIGGERVALUES_HTTP=WjA;jOA.FAASTRIGGERVALUES_PUBSUB=FjA;jOA.FAASTRIGGERVALUES_TIMER=ZjA;jOA.FAASTRIGGERVALUES_OTHER=$jA;jOA.FaasTriggerValues=(0,h5.createConstMap)([GjA,WjA,FjA,ZjA,$jA]);var UjA="insert",EjA="edit",KjA="delete";jOA.FAASDOCUMENTOPERATIONVALUES_INSERT=UjA;jOA.FAASDOCUMENTOPERATIONVALUES_EDIT=EjA;jOA.FAASDOCUMENTOPERATIONVALUES_DELETE=KjA;jOA.FaasDocumentOperationValues=(0,h5.createConstMap)([UjA,EjA,KjA]);var VjA="alibaba_cloud",IjA="aws",HjA="azure",DjA="gcp";jOA.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=VjA;jOA.FAASINVOKEDPROVIDERVALUES_AWS=IjA;jOA.FAASINVOKEDPROVIDERVALUES_AZURE=HjA;jOA.FAASINVOKEDPROVIDERVALUES_GCP=DjA;jOA.FaasInvokedProviderValues=(0,h5.createConstMap)([VjA,IjA,HjA,DjA]);var NjA="ip_tcp",LjA="ip_udp",qjA="ip",MjA="unix",zjA="pipe",RjA="inproc",wjA="other";jOA.NETTRANSPORTVALUES_IP_TCP=NjA;jOA.NETTRANSPORTVALUES_IP_UDP=LjA;jOA.NETTRANSPORTVALUES_IP=qjA;jOA.NETTRANSPORTVALUES_UNIX=MjA;jOA.NETTRANSPORTVALUES_PIPE=zjA;jOA.NETTRANSPORTVALUES_INPROC=RjA;jOA.NETTRANSPORTVALUES_OTHER=wjA;jOA.NetTransportValues=(0,h5.createConstMap)([NjA,LjA,qjA,MjA,zjA,RjA,wjA]);var jjA="wifi",OjA="wired",PjA="cell",TjA="unavailable",SjA="unknown";jOA.NETHOSTCONNECTIONTYPEVALUES_WIFI=jjA;jOA.NETHOSTCONNECTIONTYPEVALUES_WIRED=OjA;jOA.NETHOSTCONNECTIONTYPEVALUES_CELL=PjA;jOA.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=TjA;jOA.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=SjA;jOA.NetHostConnectionTypeValues=(0,h5.createConstMap)([jjA,OjA,PjA,TjA,SjA]);var kjA="gprs",_jA="edge",vjA="umts",yjA="cdma",gjA="evdo_0",hjA="evdo_a",xjA="cdma2000_1xrtt",fjA="hsdpa",bjA="hsupa",mjA="hspa",ujA="iden",djA="evdo_b",cjA="lte",ljA="ehrpd",pjA="hspap",ijA="gsm",njA="td_scdma",sjA="iwlan",rjA="nr",ajA="nrnsa",ojA="lte_ca";jOA.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=kjA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=_jA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=vjA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=yjA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=gjA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=hjA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=xjA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=fjA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=bjA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=mjA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=ujA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=djA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=cjA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=ljA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=pjA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=ijA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=njA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=sjA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_NR=rjA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=ajA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=ojA;jOA.NetHostConnectionSubtypeValues=(0,h5.createConstMap)([kjA,_jA,vjA,yjA,gjA,hjA,xjA,fjA,bjA,mjA,ujA,djA,cjA,ljA,pjA,ijA,njA,sjA,rjA,ajA,ojA]);var tjA="1.0",ejA="1.1",AOA="2.0",QOA="SPDY",BOA="QUIC";jOA.HTTPFLAVORVALUES_HTTP_1_0=tjA;jOA.HTTPFLAVORVALUES_HTTP_1_1=ejA;jOA.HTTPFLAVORVALUES_HTTP_2_0=AOA;jOA.HTTPFLAVORVALUES_SPDY=QOA;jOA.HTTPFLAVORVALUES_QUIC=BOA;jOA.HttpFlavorValues={HTTP_1_0:tjA,HTTP_1_1:ejA,HTTP_2_0:AOA,SPDY:QOA,QUIC:BOA};var YOA="queue",JOA="topic";jOA.MESSAGINGDESTINATIONKINDVALUES_QUEUE=YOA;jOA.MESSAGINGDESTINATIONKINDVALUES_TOPIC=JOA;jOA.MessagingDestinationKindValues=(0,h5.createConstMap)([YOA,JOA]);var COA="receive",XOA="process";jOA.MESSAGINGOPERATIONVALUES_RECEIVE=COA;jOA.MESSAGINGOPERATIONVALUES_PROCESS=XOA;jOA.MessagingOperationValues=(0,h5.createConstMap)([COA,XOA]);var GOA=0,WOA=1,FOA=2,ZOA=3,$OA=4,UOA=5,EOA=6,KOA=7,VOA=8,IOA=9,HOA=10,DOA=11,NOA=12,LOA=13,qOA=14,MOA=15,zOA=16;jOA.RPCGRPCSTATUSCODEVALUES_OK=GOA;jOA.RPCGRPCSTATUSCODEVALUES_CANCELLED=WOA;jOA.RPCGRPCSTATUSCODEVALUES_UNKNOWN=FOA;jOA.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=ZOA;jOA.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=$OA;jOA.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=UOA;jOA.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=EOA;jOA.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=KOA;jOA.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=VOA;jOA.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=IOA;jOA.RPCGRPCSTATUSCODEVALUES_ABORTED=HOA;jOA.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=DOA;jOA.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=NOA;jOA.RPCGRPCSTATUSCODEVALUES_INTERNAL=LOA;jOA.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=qOA;jOA.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=MOA;jOA.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=zOA;jOA.RpcGrpcStatusCodeValues={OK:GOA,CANCELLED:WOA,UNKNOWN:FOA,INVALID_ARGUMENT:ZOA,DEADLINE_EXCEEDED:$OA,NOT_FOUND:UOA,ALREADY_EXISTS:EOA,PERMISSION_DENIED:KOA,RESOURCE_EXHAUSTED:VOA,FAILED_PRECONDITION:IOA,ABORTED:HOA,OUT_OF_RANGE:DOA,UNIMPLEMENTED:NOA,INTERNAL:LOA,UNAVAILABLE:qOA,DATA_LOSS:MOA,UNAUTHENTICATED:zOA};var ROA="SENT",wOA="RECEIVED";jOA.MESSAGETYPEVALUES_SENT=ROA;jOA.MESSAGETYPEVALUES_RECEIVED=wOA;jOA.MessageTypeValues=(0,h5.createConstMap)([ROA,wOA])});var yOA=R((tZ)=>{var CqB=tZ&&tZ.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),XqB=tZ&&tZ.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))CqB(Q,A,B)};Object.defineProperty(tZ,"__esModule",{value:!0});XqB(vOA(),tZ)});var FSA=R((CSA)=>{Object.defineProperty(CSA,"__esModule",{value:!0});CSA.SEMRESATTRS_K8S_STATEFULSET_NAME=CSA.SEMRESATTRS_K8S_STATEFULSET_UID=CSA.SEMRESATTRS_K8S_DEPLOYMENT_NAME=CSA.SEMRESATTRS_K8S_DEPLOYMENT_UID=CSA.SEMRESATTRS_K8S_REPLICASET_NAME=CSA.SEMRESATTRS_K8S_REPLICASET_UID=CSA.SEMRESATTRS_K8S_CONTAINER_NAME=CSA.SEMRESATTRS_K8S_POD_NAME=CSA.SEMRESATTRS_K8S_POD_UID=CSA.SEMRESATTRS_K8S_NAMESPACE_NAME=CSA.SEMRESATTRS_K8S_NODE_UID=CSA.SEMRESATTRS_K8S_NODE_NAME=CSA.SEMRESATTRS_K8S_CLUSTER_NAME=CSA.SEMRESATTRS_HOST_IMAGE_VERSION=CSA.SEMRESATTRS_HOST_IMAGE_ID=CSA.SEMRESATTRS_HOST_IMAGE_NAME=CSA.SEMRESATTRS_HOST_ARCH=CSA.SEMRESATTRS_HOST_TYPE=CSA.SEMRESATTRS_HOST_NAME=CSA.SEMRESATTRS_HOST_ID=CSA.SEMRESATTRS_FAAS_MAX_MEMORY=CSA.SEMRESATTRS_FAAS_INSTANCE=CSA.SEMRESATTRS_FAAS_VERSION=CSA.SEMRESATTRS_FAAS_ID=CSA.SEMRESATTRS_FAAS_NAME=CSA.SEMRESATTRS_DEVICE_MODEL_NAME=CSA.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=CSA.SEMRESATTRS_DEVICE_ID=CSA.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=CSA.SEMRESATTRS_CONTAINER_IMAGE_TAG=CSA.SEMRESATTRS_CONTAINER_IMAGE_NAME=CSA.SEMRESATTRS_CONTAINER_RUNTIME=CSA.SEMRESATTRS_CONTAINER_ID=CSA.SEMRESATTRS_CONTAINER_NAME=CSA.SEMRESATTRS_AWS_LOG_STREAM_ARNS=CSA.SEMRESATTRS_AWS_LOG_STREAM_NAMES=CSA.SEMRESATTRS_AWS_LOG_GROUP_ARNS=CSA.SEMRESATTRS_AWS_LOG_GROUP_NAMES=CSA.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=CSA.SEMRESATTRS_AWS_ECS_TASK_REVISION=CSA.SEMRESATTRS_AWS_ECS_TASK_FAMILY=CSA.SEMRESATTRS_AWS_ECS_TASK_ARN=CSA.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=CSA.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=CSA.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=CSA.SEMRESATTRS_CLOUD_PLATFORM=CSA.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=CSA.SEMRESATTRS_CLOUD_REGION=CSA.SEMRESATTRS_CLOUD_ACCOUNT_ID=CSA.SEMRESATTRS_CLOUD_PROVIDER=void 0;CSA.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=CSA.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=CSA.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=CSA.CLOUDPLATFORMVALUES_AZURE_AKS=CSA.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=CSA.CLOUDPLATFORMVALUES_AZURE_VM=CSA.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=CSA.CLOUDPLATFORMVALUES_AWS_LAMBDA=CSA.CLOUDPLATFORMVALUES_AWS_EKS=CSA.CLOUDPLATFORMVALUES_AWS_ECS=CSA.CLOUDPLATFORMVALUES_AWS_EC2=CSA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=CSA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=CSA.CloudProviderValues=CSA.CLOUDPROVIDERVALUES_GCP=CSA.CLOUDPROVIDERVALUES_AZURE=CSA.CLOUDPROVIDERVALUES_AWS=CSA.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=CSA.SemanticResourceAttributes=CSA.SEMRESATTRS_WEBENGINE_DESCRIPTION=CSA.SEMRESATTRS_WEBENGINE_VERSION=CSA.SEMRESATTRS_WEBENGINE_NAME=CSA.SEMRESATTRS_TELEMETRY_AUTO_VERSION=CSA.SEMRESATTRS_TELEMETRY_SDK_VERSION=CSA.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=CSA.SEMRESATTRS_TELEMETRY_SDK_NAME=CSA.SEMRESATTRS_SERVICE_VERSION=CSA.SEMRESATTRS_SERVICE_INSTANCE_ID=CSA.SEMRESATTRS_SERVICE_NAMESPACE=CSA.SEMRESATTRS_SERVICE_NAME=CSA.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=CSA.SEMRESATTRS_PROCESS_RUNTIME_VERSION=CSA.SEMRESATTRS_PROCESS_RUNTIME_NAME=CSA.SEMRESATTRS_PROCESS_OWNER=CSA.SEMRESATTRS_PROCESS_COMMAND_ARGS=CSA.SEMRESATTRS_PROCESS_COMMAND_LINE=CSA.SEMRESATTRS_PROCESS_COMMAND=CSA.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=CSA.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=CSA.SEMRESATTRS_PROCESS_PID=CSA.SEMRESATTRS_OS_VERSION=CSA.SEMRESATTRS_OS_NAME=CSA.SEMRESATTRS_OS_DESCRIPTION=CSA.SEMRESATTRS_OS_TYPE=CSA.SEMRESATTRS_K8S_CRONJOB_NAME=CSA.SEMRESATTRS_K8S_CRONJOB_UID=CSA.SEMRESATTRS_K8S_JOB_NAME=CSA.SEMRESATTRS_K8S_JOB_UID=CSA.SEMRESATTRS_K8S_DAEMONSET_NAME=CSA.SEMRESATTRS_K8S_DAEMONSET_UID=void 0;CSA.TelemetrySdkLanguageValues=CSA.TELEMETRYSDKLANGUAGEVALUES_WEBJS=CSA.TELEMETRYSDKLANGUAGEVALUES_RUBY=CSA.TELEMETRYSDKLANGUAGEVALUES_PYTHON=CSA.TELEMETRYSDKLANGUAGEVALUES_PHP=CSA.TELEMETRYSDKLANGUAGEVALUES_NODEJS=CSA.TELEMETRYSDKLANGUAGEVALUES_JAVA=CSA.TELEMETRYSDKLANGUAGEVALUES_GO=CSA.TELEMETRYSDKLANGUAGEVALUES_ERLANG=CSA.TELEMETRYSDKLANGUAGEVALUES_DOTNET=CSA.TELEMETRYSDKLANGUAGEVALUES_CPP=CSA.OsTypeValues=CSA.OSTYPEVALUES_Z_OS=CSA.OSTYPEVALUES_SOLARIS=CSA.OSTYPEVALUES_AIX=CSA.OSTYPEVALUES_HPUX=CSA.OSTYPEVALUES_DRAGONFLYBSD=CSA.OSTYPEVALUES_OPENBSD=CSA.OSTYPEVALUES_NETBSD=CSA.OSTYPEVALUES_FREEBSD=CSA.OSTYPEVALUES_DARWIN=CSA.OSTYPEVALUES_LINUX=CSA.OSTYPEVALUES_WINDOWS=CSA.HostArchValues=CSA.HOSTARCHVALUES_X86=CSA.HOSTARCHVALUES_PPC64=CSA.HOSTARCHVALUES_PPC32=CSA.HOSTARCHVALUES_IA64=CSA.HOSTARCHVALUES_ARM64=CSA.HOSTARCHVALUES_ARM32=CSA.HOSTARCHVALUES_AMD64=CSA.AwsEcsLaunchtypeValues=CSA.AWSECSLAUNCHTYPEVALUES_FARGATE=CSA.AWSECSLAUNCHTYPEVALUES_EC2=CSA.CloudPlatformValues=CSA.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=CSA.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=CSA.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=CSA.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=void 0;var eZ=Hl(),gOA="cloud.provider",hOA="cloud.account.id",xOA="cloud.region",fOA="cloud.availability_zone",bOA="cloud.platform",mOA="aws.ecs.container.arn",uOA="aws.ecs.cluster.arn",dOA="aws.ecs.launchtype",cOA="aws.ecs.task.arn",lOA="aws.ecs.task.family",pOA="aws.ecs.task.revision",iOA="aws.eks.cluster.arn",nOA="aws.log.group.names",sOA="aws.log.group.arns",rOA="aws.log.stream.names",aOA="aws.log.stream.arns",oOA="container.name",tOA="container.id",eOA="container.runtime",APA="container.image.name",QPA="container.image.tag",BPA="deployment.environment",YPA="device.id",JPA="device.model.identifier",CPA="device.model.name",XPA="faas.name",GPA="faas.id",WPA="faas.version",FPA="faas.instance",ZPA="faas.max_memory",$PA="host.id",UPA="host.name",EPA="host.type",KPA="host.arch",VPA="host.image.name",IPA="host.image.id",HPA="host.image.version",DPA="k8s.cluster.name",NPA="k8s.node.name",LPA="k8s.node.uid",qPA="k8s.namespace.name",MPA="k8s.pod.uid",zPA="k8s.pod.name",RPA="k8s.container.name",wPA="k8s.replicaset.uid",jPA="k8s.replicaset.name",OPA="k8s.deployment.uid",PPA="k8s.deployment.name",TPA="k8s.statefulset.uid",SPA="k8s.statefulset.name",kPA="k8s.daemonset.uid",_PA="k8s.daemonset.name",vPA="k8s.job.uid",yPA="k8s.job.name",gPA="k8s.cronjob.uid",hPA="k8s.cronjob.name",xPA="os.type",fPA="os.description",bPA="os.name",mPA="os.version",uPA="process.pid",dPA="process.executable.name",cPA="process.executable.path",lPA="process.command",pPA="process.command_line",iPA="process.command_args",nPA="process.owner",sPA="process.runtime.name",rPA="process.runtime.version",aPA="process.runtime.description",oPA="service.name",tPA="service.namespace",ePA="service.instance.id",ATA="service.version",QTA="telemetry.sdk.name",BTA="telemetry.sdk.language",YTA="telemetry.sdk.version",JTA="telemetry.auto.version",CTA="webengine.name",XTA="webengine.version",GTA="webengine.description";CSA.SEMRESATTRS_CLOUD_PROVIDER=gOA;CSA.SEMRESATTRS_CLOUD_ACCOUNT_ID=hOA;CSA.SEMRESATTRS_CLOUD_REGION=xOA;CSA.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=fOA;CSA.SEMRESATTRS_CLOUD_PLATFORM=bOA;CSA.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=mOA;CSA.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=uOA;CSA.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=dOA;CSA.SEMRESATTRS_AWS_ECS_TASK_ARN=cOA;CSA.SEMRESATTRS_AWS_ECS_TASK_FAMILY=lOA;CSA.SEMRESATTRS_AWS_ECS_TASK_REVISION=pOA;CSA.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=iOA;CSA.SEMRESATTRS_AWS_LOG_GROUP_NAMES=nOA;CSA.SEMRESATTRS_AWS_LOG_GROUP_ARNS=sOA;CSA.SEMRESATTRS_AWS_LOG_STREAM_NAMES=rOA;CSA.SEMRESATTRS_AWS_LOG_STREAM_ARNS=aOA;CSA.SEMRESATTRS_CONTAINER_NAME=oOA;CSA.SEMRESATTRS_CONTAINER_ID=tOA;CSA.SEMRESATTRS_CONTAINER_RUNTIME=eOA;CSA.SEMRESATTRS_CONTAINER_IMAGE_NAME=APA;CSA.SEMRESATTRS_CONTAINER_IMAGE_TAG=QPA;CSA.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=BPA;CSA.SEMRESATTRS_DEVICE_ID=YPA;CSA.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=JPA;CSA.SEMRESATTRS_DEVICE_MODEL_NAME=CPA;CSA.SEMRESATTRS_FAAS_NAME=XPA;CSA.SEMRESATTRS_FAAS_ID=GPA;CSA.SEMRESATTRS_FAAS_VERSION=WPA;CSA.SEMRESATTRS_FAAS_INSTANCE=FPA;CSA.SEMRESATTRS_FAAS_MAX_MEMORY=ZPA;CSA.SEMRESATTRS_HOST_ID=$PA;CSA.SEMRESATTRS_HOST_NAME=UPA;CSA.SEMRESATTRS_HOST_TYPE=EPA;CSA.SEMRESATTRS_HOST_ARCH=KPA;CSA.SEMRESATTRS_HOST_IMAGE_NAME=VPA;CSA.SEMRESATTRS_HOST_IMAGE_ID=IPA;CSA.SEMRESATTRS_HOST_IMAGE_VERSION=HPA;CSA.SEMRESATTRS_K8S_CLUSTER_NAME=DPA;CSA.SEMRESATTRS_K8S_NODE_NAME=NPA;CSA.SEMRESATTRS_K8S_NODE_UID=LPA;CSA.SEMRESATTRS_K8S_NAMESPACE_NAME=qPA;CSA.SEMRESATTRS_K8S_POD_UID=MPA;CSA.SEMRESATTRS_K8S_POD_NAME=zPA;CSA.SEMRESATTRS_K8S_CONTAINER_NAME=RPA;CSA.SEMRESATTRS_K8S_REPLICASET_UID=wPA;CSA.SEMRESATTRS_K8S_REPLICASET_NAME=jPA;CSA.SEMRESATTRS_K8S_DEPLOYMENT_UID=OPA;CSA.SEMRESATTRS_K8S_DEPLOYMENT_NAME=PPA;CSA.SEMRESATTRS_K8S_STATEFULSET_UID=TPA;CSA.SEMRESATTRS_K8S_STATEFULSET_NAME=SPA;CSA.SEMRESATTRS_K8S_DAEMONSET_UID=kPA;CSA.SEMRESATTRS_K8S_DAEMONSET_NAME=_PA;CSA.SEMRESATTRS_K8S_JOB_UID=vPA;CSA.SEMRESATTRS_K8S_JOB_NAME=yPA;CSA.SEMRESATTRS_K8S_CRONJOB_UID=gPA;CSA.SEMRESATTRS_K8S_CRONJOB_NAME=hPA;CSA.SEMRESATTRS_OS_TYPE=xPA;CSA.SEMRESATTRS_OS_DESCRIPTION=fPA;CSA.SEMRESATTRS_OS_NAME=bPA;CSA.SEMRESATTRS_OS_VERSION=mPA;CSA.SEMRESATTRS_PROCESS_PID=uPA;CSA.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=dPA;CSA.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=cPA;CSA.SEMRESATTRS_PROCESS_COMMAND=lPA;CSA.SEMRESATTRS_PROCESS_COMMAND_LINE=pPA;CSA.SEMRESATTRS_PROCESS_COMMAND_ARGS=iPA;CSA.SEMRESATTRS_PROCESS_OWNER=nPA;CSA.SEMRESATTRS_PROCESS_RUNTIME_NAME=sPA;CSA.SEMRESATTRS_PROCESS_RUNTIME_VERSION=rPA;CSA.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=aPA;CSA.SEMRESATTRS_SERVICE_NAME=oPA;CSA.SEMRESATTRS_SERVICE_NAMESPACE=tPA;CSA.SEMRESATTRS_SERVICE_INSTANCE_ID=ePA;CSA.SEMRESATTRS_SERVICE_VERSION=ATA;CSA.SEMRESATTRS_TELEMETRY_SDK_NAME=QTA;CSA.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=BTA;CSA.SEMRESATTRS_TELEMETRY_SDK_VERSION=YTA;CSA.SEMRESATTRS_TELEMETRY_AUTO_VERSION=JTA;CSA.SEMRESATTRS_WEBENGINE_NAME=CTA;CSA.SEMRESATTRS_WEBENGINE_VERSION=XTA;CSA.SEMRESATTRS_WEBENGINE_DESCRIPTION=GTA;CSA.SemanticResourceAttributes=(0,eZ.createConstMap)([gOA,hOA,xOA,fOA,bOA,mOA,uOA,dOA,cOA,lOA,pOA,iOA,nOA,sOA,rOA,aOA,oOA,tOA,eOA,APA,QPA,BPA,YPA,JPA,CPA,XPA,GPA,WPA,FPA,ZPA,$PA,UPA,EPA,KPA,VPA,IPA,HPA,DPA,NPA,LPA,qPA,MPA,zPA,RPA,wPA,jPA,OPA,PPA,TPA,SPA,kPA,_PA,vPA,yPA,gPA,hPA,xPA,fPA,bPA,mPA,uPA,dPA,cPA,lPA,pPA,iPA,nPA,sPA,rPA,aPA,oPA,tPA,ePA,ATA,QTA,BTA,YTA,JTA,CTA,XTA,GTA]);var WTA="alibaba_cloud",FTA="aws",ZTA="azure",$TA="gcp";CSA.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=WTA;CSA.CLOUDPROVIDERVALUES_AWS=FTA;CSA.CLOUDPROVIDERVALUES_AZURE=ZTA;CSA.CLOUDPROVIDERVALUES_GCP=$TA;CSA.CloudProviderValues=(0,eZ.createConstMap)([WTA,FTA,ZTA,$TA]);var UTA="alibaba_cloud_ecs",ETA="alibaba_cloud_fc",KTA="aws_ec2",VTA="aws_ecs",ITA="aws_eks",HTA="aws_lambda",DTA="aws_elastic_beanstalk",NTA="azure_vm",LTA="azure_container_instances",qTA="azure_aks",MTA="azure_functions",zTA="azure_app_service",RTA="gcp_compute_engine",wTA="gcp_cloud_run",jTA="gcp_kubernetes_engine",OTA="gcp_cloud_functions",PTA="gcp_app_engine";CSA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=UTA;CSA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=ETA;CSA.CLOUDPLATFORMVALUES_AWS_EC2=KTA;CSA.CLOUDPLATFORMVALUES_AWS_ECS=VTA;CSA.CLOUDPLATFORMVALUES_AWS_EKS=ITA;CSA.CLOUDPLATFORMVALUES_AWS_LAMBDA=HTA;CSA.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=DTA;CSA.CLOUDPLATFORMVALUES_AZURE_VM=NTA;CSA.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=LTA;CSA.CLOUDPLATFORMVALUES_AZURE_AKS=qTA;CSA.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=MTA;CSA.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=zTA;CSA.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=RTA;CSA.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=wTA;CSA.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=jTA;CSA.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=OTA;CSA.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=PTA;CSA.CloudPlatformValues=(0,eZ.createConstMap)([UTA,ETA,KTA,VTA,ITA,HTA,DTA,NTA,LTA,qTA,MTA,zTA,RTA,wTA,jTA,OTA,PTA]);var TTA="ec2",STA="fargate";CSA.AWSECSLAUNCHTYPEVALUES_EC2=TTA;CSA.AWSECSLAUNCHTYPEVALUES_FARGATE=STA;CSA.AwsEcsLaunchtypeValues=(0,eZ.createConstMap)([TTA,STA]);var kTA="amd64",_TA="arm32",vTA="arm64",yTA="ia64",gTA="ppc32",hTA="ppc64",xTA="x86";CSA.HOSTARCHVALUES_AMD64=kTA;CSA.HOSTARCHVALUES_ARM32=_TA;CSA.HOSTARCHVALUES_ARM64=vTA;CSA.HOSTARCHVALUES_IA64=yTA;CSA.HOSTARCHVALUES_PPC32=gTA;CSA.HOSTARCHVALUES_PPC64=hTA;CSA.HOSTARCHVALUES_X86=xTA;CSA.HostArchValues=(0,eZ.createConstMap)([kTA,_TA,vTA,yTA,gTA,hTA,xTA]);var fTA="windows",bTA="linux",mTA="darwin",uTA="freebsd",dTA="netbsd",cTA="openbsd",lTA="dragonflybsd",pTA="hpux",iTA="aix",nTA="solaris",sTA="z_os";CSA.OSTYPEVALUES_WINDOWS=fTA;CSA.OSTYPEVALUES_LINUX=bTA;CSA.OSTYPEVALUES_DARWIN=mTA;CSA.OSTYPEVALUES_FREEBSD=uTA;CSA.OSTYPEVALUES_NETBSD=dTA;CSA.OSTYPEVALUES_OPENBSD=cTA;CSA.OSTYPEVALUES_DRAGONFLYBSD=lTA;CSA.OSTYPEVALUES_HPUX=pTA;CSA.OSTYPEVALUES_AIX=iTA;CSA.OSTYPEVALUES_SOLARIS=nTA;CSA.OSTYPEVALUES_Z_OS=sTA;CSA.OsTypeValues=(0,eZ.createConstMap)([fTA,bTA,mTA,uTA,dTA,cTA,lTA,pTA,iTA,nTA,sTA]);var rTA="cpp",aTA="dotnet",oTA="erlang",tTA="go",eTA="java",ASA="nodejs",QSA="php",BSA="python",YSA="ruby",JSA="webjs";CSA.TELEMETRYSDKLANGUAGEVALUES_CPP=rTA;CSA.TELEMETRYSDKLANGUAGEVALUES_DOTNET=aTA;CSA.TELEMETRYSDKLANGUAGEVALUES_ERLANG=oTA;CSA.TELEMETRYSDKLANGUAGEVALUES_GO=tTA;CSA.TELEMETRYSDKLANGUAGEVALUES_JAVA=eTA;CSA.TELEMETRYSDKLANGUAGEVALUES_NODEJS=ASA;CSA.TELEMETRYSDKLANGUAGEVALUES_PHP=QSA;CSA.TELEMETRYSDKLANGUAGEVALUES_PYTHON=BSA;CSA.TELEMETRYSDKLANGUAGEVALUES_RUBY=YSA;CSA.TELEMETRYSDKLANGUAGEVALUES_WEBJS=JSA;CSA.TelemetrySdkLanguageValues=(0,eZ.createConstMap)([rTA,aTA,oTA,tTA,eTA,ASA,QSA,BSA,YSA,JSA])});var ZSA=R((A$)=>{var gzB=A$&&A$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),hzB=A$&&A$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))gzB(Q,A,B)};Object.defineProperty(A$,"__esModule",{value:!0});hzB(FSA(),A$)});var VSA=R(($SA)=>{Object.defineProperty($SA,"__esModule",{value:!0});$SA.HTTP_REQUEST_METHOD_VALUE_POST=$SA.HTTP_REQUEST_METHOD_VALUE_PATCH=$SA.HTTP_REQUEST_METHOD_VALUE_OPTIONS=$SA.HTTP_REQUEST_METHOD_VALUE_HEAD=$SA.HTTP_REQUEST_METHOD_VALUE_GET=$SA.HTTP_REQUEST_METHOD_VALUE_DELETE=$SA.HTTP_REQUEST_METHOD_VALUE_CONNECT=$SA.HTTP_REQUEST_METHOD_VALUE_OTHER=$SA.ATTR_HTTP_REQUEST_METHOD=$SA.ATTR_HTTP_REQUEST_HEADER=$SA.ATTR_EXCEPTION_TYPE=$SA.ATTR_EXCEPTION_STACKTRACE=$SA.ATTR_EXCEPTION_MESSAGE=$SA.ATTR_EXCEPTION_ESCAPED=$SA.ERROR_TYPE_VALUE_OTHER=$SA.ATTR_ERROR_TYPE=$SA.ATTR_CLIENT_PORT=$SA.ATTR_CLIENT_ADDRESS=$SA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS=$SA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE=$SA.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS=$SA.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK=$SA.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED=$SA.ATTR_ASPNETCORE_RATE_LIMITING_POLICY=$SA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED=$SA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED=$SA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED=$SA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED=$SA.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT=$SA.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE=$SA.ATTR_TELEMETRY_SDK_VERSION=$SA.ATTR_TELEMETRY_SDK_NAME=$SA.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS=$SA.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT=$SA.TELEMETRY_SDK_LANGUAGE_VALUE_RUST=$SA.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY=$SA.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON=$SA.TELEMETRY_SDK_LANGUAGE_VALUE_PHP=$SA.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS=$SA.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA=$SA.TELEMETRY_SDK_LANGUAGE_VALUE_GO=$SA.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG=$SA.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET=$SA.TELEMETRY_SDK_LANGUAGE_VALUE_CPP=$SA.ATTR_TELEMETRY_SDK_LANGUAGE=$SA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED=$SA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER=$SA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER=$SA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED=$SA.ATTR_ASPNETCORE_RATE_LIMITING_RESULT=void 0;$SA.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT=$SA.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE=$SA.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN=$SA.ATTR_SIGNALR_CONNECTION_STATUS=$SA.ATTR_SERVICE_VERSION=$SA.ATTR_SERVICE_NAME=$SA.ATTR_SERVER_PORT=$SA.ATTR_SERVER_ADDRESS=$SA.ATTR_OTEL_STATUS_DESCRIPTION=$SA.OTEL_STATUS_CODE_VALUE_OK=$SA.OTEL_STATUS_CODE_VALUE_ERROR=$SA.ATTR_OTEL_STATUS_CODE=$SA.ATTR_OTEL_SCOPE_VERSION=$SA.ATTR_OTEL_SCOPE_NAME=$SA.NETWORK_TYPE_VALUE_IPV6=$SA.NETWORK_TYPE_VALUE_IPV4=$SA.ATTR_NETWORK_TYPE=$SA.NETWORK_TRANSPORT_VALUE_UNIX=$SA.NETWORK_TRANSPORT_VALUE_UDP=$SA.NETWORK_TRANSPORT_VALUE_TCP=$SA.NETWORK_TRANSPORT_VALUE_QUIC=$SA.NETWORK_TRANSPORT_VALUE_PIPE=$SA.ATTR_NETWORK_TRANSPORT=$SA.ATTR_NETWORK_PROTOCOL_VERSION=$SA.ATTR_NETWORK_PROTOCOL_NAME=$SA.ATTR_NETWORK_PEER_PORT=$SA.ATTR_NETWORK_PEER_ADDRESS=$SA.ATTR_NETWORK_LOCAL_PORT=$SA.ATTR_NETWORK_LOCAL_ADDRESS=$SA.JVM_THREAD_STATE_VALUE_WAITING=$SA.JVM_THREAD_STATE_VALUE_TIMED_WAITING=$SA.JVM_THREAD_STATE_VALUE_TERMINATED=$SA.JVM_THREAD_STATE_VALUE_RUNNABLE=$SA.JVM_THREAD_STATE_VALUE_NEW=$SA.JVM_THREAD_STATE_VALUE_BLOCKED=$SA.ATTR_JVM_THREAD_STATE=$SA.ATTR_JVM_THREAD_DAEMON=$SA.JVM_MEMORY_TYPE_VALUE_NON_HEAP=$SA.JVM_MEMORY_TYPE_VALUE_HEAP=$SA.ATTR_JVM_MEMORY_TYPE=$SA.ATTR_JVM_MEMORY_POOL_NAME=$SA.ATTR_JVM_GC_NAME=$SA.ATTR_JVM_GC_ACTION=$SA.ATTR_HTTP_ROUTE=$SA.ATTR_HTTP_RESPONSE_STATUS_CODE=$SA.ATTR_HTTP_RESPONSE_HEADER=$SA.ATTR_HTTP_REQUEST_RESEND_COUNT=$SA.ATTR_HTTP_REQUEST_METHOD_ORIGINAL=$SA.HTTP_REQUEST_METHOD_VALUE_TRACE=$SA.HTTP_REQUEST_METHOD_VALUE_PUT=void 0;$SA.ATTR_USER_AGENT_ORIGINAL=$SA.ATTR_URL_SCHEME=$SA.ATTR_URL_QUERY=$SA.ATTR_URL_PATH=$SA.ATTR_URL_FULL=$SA.ATTR_URL_FRAGMENT=$SA.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS=$SA.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS=$SA.SIGNALR_TRANSPORT_VALUE_LONG_POLLING=$SA.ATTR_SIGNALR_TRANSPORT=void 0;$SA.ATTR_ASPNETCORE_RATE_LIMITING_RESULT="aspnetcore.rate_limiting.result";$SA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED="acquired";$SA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER="endpoint_limiter";$SA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER="global_limiter";$SA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED="request_canceled";$SA.ATTR_TELEMETRY_SDK_LANGUAGE="telemetry.sdk.language";$SA.TELEMETRY_SDK_LANGUAGE_VALUE_CPP="cpp";$SA.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET="dotnet";$SA.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG="erlang";$SA.TELEMETRY_SDK_LANGUAGE_VALUE_GO="go";$SA.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA="java";$SA.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS="nodejs";$SA.TELEMETRY_SDK_LANGUAGE_VALUE_PHP="php";$SA.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON="python";$SA.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY="ruby";$SA.TELEMETRY_SDK_LANGUAGE_VALUE_RUST="rust";$SA.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT="swift";$SA.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS="webjs";$SA.ATTR_TELEMETRY_SDK_NAME="telemetry.sdk.name";$SA.ATTR_TELEMETRY_SDK_VERSION="telemetry.sdk.version";$SA.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE="aspnetcore.diagnostics.handler.type";$SA.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT="aspnetcore.diagnostics.exception.result";$SA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED="aborted";$SA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED="handled";$SA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED="skipped";$SA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED="unhandled";$SA.ATTR_ASPNETCORE_RATE_LIMITING_POLICY="aspnetcore.rate_limiting.policy";$SA.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED="aspnetcore.request.is_unhandled";$SA.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK="aspnetcore.routing.is_fallback";$SA.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS="aspnetcore.routing.match_status";$SA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE="failure";$SA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS="success";$SA.ATTR_CLIENT_ADDRESS="client.address";$SA.ATTR_CLIENT_PORT="client.port";$SA.ATTR_ERROR_TYPE="error.type";$SA.ERROR_TYPE_VALUE_OTHER="_OTHER";$SA.ATTR_EXCEPTION_ESCAPED="exception.escaped";$SA.ATTR_EXCEPTION_MESSAGE="exception.message";$SA.ATTR_EXCEPTION_STACKTRACE="exception.stacktrace";$SA.ATTR_EXCEPTION_TYPE="exception.type";var xzB=(A)=>`http.request.header.${A}`;$SA.ATTR_HTTP_REQUEST_HEADER=xzB;$SA.ATTR_HTTP_REQUEST_METHOD="http.request.method";$SA.HTTP_REQUEST_METHOD_VALUE_OTHER="_OTHER";$SA.HTTP_REQUEST_METHOD_VALUE_CONNECT="CONNECT";$SA.HTTP_REQUEST_METHOD_VALUE_DELETE="DELETE";$SA.HTTP_REQUEST_METHOD_VALUE_GET="GET";$SA.HTTP_REQUEST_METHOD_VALUE_HEAD="HEAD";$SA.HTTP_REQUEST_METHOD_VALUE_OPTIONS="OPTIONS";$SA.HTTP_REQUEST_METHOD_VALUE_PATCH="PATCH";$SA.HTTP_REQUEST_METHOD_VALUE_POST="POST";$SA.HTTP_REQUEST_METHOD_VALUE_PUT="PUT";$SA.HTTP_REQUEST_METHOD_VALUE_TRACE="TRACE";$SA.ATTR_HTTP_REQUEST_METHOD_ORIGINAL="http.request.method_original";$SA.ATTR_HTTP_REQUEST_RESEND_COUNT="http.request.resend_count";var fzB=(A)=>`http.response.header.${A}`;$SA.ATTR_HTTP_RESPONSE_HEADER=fzB;$SA.ATTR_HTTP_RESPONSE_STATUS_CODE="http.response.status_code";$SA.ATTR_HTTP_ROUTE="http.route";$SA.ATTR_JVM_GC_ACTION="jvm.gc.action";$SA.ATTR_JVM_GC_NAME="jvm.gc.name";$SA.ATTR_JVM_MEMORY_POOL_NAME="jvm.memory.pool.name";$SA.ATTR_JVM_MEMORY_TYPE="jvm.memory.type";$SA.JVM_MEMORY_TYPE_VALUE_HEAP="heap";$SA.JVM_MEMORY_TYPE_VALUE_NON_HEAP="non_heap";$SA.ATTR_JVM_THREAD_DAEMON="jvm.thread.daemon";$SA.ATTR_JVM_THREAD_STATE="jvm.thread.state";$SA.JVM_THREAD_STATE_VALUE_BLOCKED="blocked";$SA.JVM_THREAD_STATE_VALUE_NEW="new";$SA.JVM_THREAD_STATE_VALUE_RUNNABLE="runnable";$SA.JVM_THREAD_STATE_VALUE_TERMINATED="terminated";$SA.JVM_THREAD_STATE_VALUE_TIMED_WAITING="timed_waiting";$SA.JVM_THREAD_STATE_VALUE_WAITING="waiting";$SA.ATTR_NETWORK_LOCAL_ADDRESS="network.local.address";$SA.ATTR_NETWORK_LOCAL_PORT="network.local.port";$SA.ATTR_NETWORK_PEER_ADDRESS="network.peer.address";$SA.ATTR_NETWORK_PEER_PORT="network.peer.port";$SA.ATTR_NETWORK_PROTOCOL_NAME="network.protocol.name";$SA.ATTR_NETWORK_PROTOCOL_VERSION="network.protocol.version";$SA.ATTR_NETWORK_TRANSPORT="network.transport";$SA.NETWORK_TRANSPORT_VALUE_PIPE="pipe";$SA.NETWORK_TRANSPORT_VALUE_QUIC="quic";$SA.NETWORK_TRANSPORT_VALUE_TCP="tcp";$SA.NETWORK_TRANSPORT_VALUE_UDP="udp";$SA.NETWORK_TRANSPORT_VALUE_UNIX="unix";$SA.ATTR_NETWORK_TYPE="network.type";$SA.NETWORK_TYPE_VALUE_IPV4="ipv4";$SA.NETWORK_TYPE_VALUE_IPV6="ipv6";$SA.ATTR_OTEL_SCOPE_NAME="otel.scope.name";$SA.ATTR_OTEL_SCOPE_VERSION="otel.scope.version";$SA.ATTR_OTEL_STATUS_CODE="otel.status_code";$SA.OTEL_STATUS_CODE_VALUE_ERROR="ERROR";$SA.OTEL_STATUS_CODE_VALUE_OK="OK";$SA.ATTR_OTEL_STATUS_DESCRIPTION="otel.status_description";$SA.ATTR_SERVER_ADDRESS="server.address";$SA.ATTR_SERVER_PORT="server.port";$SA.ATTR_SERVICE_NAME="service.name";$SA.ATTR_SERVICE_VERSION="service.version";$SA.ATTR_SIGNALR_CONNECTION_STATUS="signalr.connection.status";$SA.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN="app_shutdown";$SA.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE="normal_closure";$SA.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT="timeout";$SA.ATTR_SIGNALR_TRANSPORT="signalr.transport";$SA.SIGNALR_TRANSPORT_VALUE_LONG_POLLING="long_polling";$SA.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS="server_sent_events";$SA.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS="web_sockets";$SA.ATTR_URL_FRAGMENT="url.fragment";$SA.ATTR_URL_FULL="url.full";$SA.ATTR_URL_PATH="url.path";$SA.ATTR_URL_QUERY="url.query";$SA.ATTR_URL_SCHEME="url.scheme";$SA.ATTR_USER_AGENT_ORIGINAL="user_agent.original"});var DSA=R((ISA)=>{Object.defineProperty(ISA,"__esModule",{value:!0});ISA.METRIC_SIGNALR_SERVER_CONNECTION_DURATION=ISA.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS=ISA.METRIC_KESTREL_UPGRADED_CONNECTIONS=ISA.METRIC_KESTREL_TLS_HANDSHAKE_DURATION=ISA.METRIC_KESTREL_REJECTED_CONNECTIONS=ISA.METRIC_KESTREL_QUEUED_REQUESTS=ISA.METRIC_KESTREL_QUEUED_CONNECTIONS=ISA.METRIC_KESTREL_CONNECTION_DURATION=ISA.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES=ISA.METRIC_KESTREL_ACTIVE_CONNECTIONS=ISA.METRIC_JVM_THREAD_COUNT=ISA.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC=ISA.METRIC_JVM_MEMORY_USED=ISA.METRIC_JVM_MEMORY_LIMIT=ISA.METRIC_JVM_MEMORY_COMMITTED=ISA.METRIC_JVM_GC_DURATION=ISA.METRIC_JVM_CPU_TIME=ISA.METRIC_JVM_CPU_RECENT_UTILIZATION=ISA.METRIC_JVM_CPU_COUNT=ISA.METRIC_JVM_CLASS_UNLOADED=ISA.METRIC_JVM_CLASS_LOADED=ISA.METRIC_JVM_CLASS_COUNT=ISA.METRIC_HTTP_SERVER_REQUEST_DURATION=ISA.METRIC_HTTP_CLIENT_REQUEST_DURATION=ISA.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS=ISA.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS=ISA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION=ISA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE=ISA.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS=ISA.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES=ISA.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS=void 0;ISA.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS="aspnetcore.diagnostics.exceptions";ISA.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES="aspnetcore.rate_limiting.active_request_leases";ISA.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS="aspnetcore.rate_limiting.queued_requests";ISA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE="aspnetcore.rate_limiting.request.time_in_queue";ISA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION="aspnetcore.rate_limiting.request_lease.duration";ISA.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS="aspnetcore.rate_limiting.requests";ISA.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS="aspnetcore.routing.match_attempts";ISA.METRIC_HTTP_CLIENT_REQUEST_DURATION="http.client.request.duration";ISA.METRIC_HTTP_SERVER_REQUEST_DURATION="http.server.request.duration";ISA.METRIC_JVM_CLASS_COUNT="jvm.class.count";ISA.METRIC_JVM_CLASS_LOADED="jvm.class.loaded";ISA.METRIC_JVM_CLASS_UNLOADED="jvm.class.unloaded";ISA.METRIC_JVM_CPU_COUNT="jvm.cpu.count";ISA.METRIC_JVM_CPU_RECENT_UTILIZATION="jvm.cpu.recent_utilization";ISA.METRIC_JVM_CPU_TIME="jvm.cpu.time";ISA.METRIC_JVM_GC_DURATION="jvm.gc.duration";ISA.METRIC_JVM_MEMORY_COMMITTED="jvm.memory.committed";ISA.METRIC_JVM_MEMORY_LIMIT="jvm.memory.limit";ISA.METRIC_JVM_MEMORY_USED="jvm.memory.used";ISA.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC="jvm.memory.used_after_last_gc";ISA.METRIC_JVM_THREAD_COUNT="jvm.thread.count";ISA.METRIC_KESTREL_ACTIVE_CONNECTIONS="kestrel.active_connections";ISA.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES="kestrel.active_tls_handshakes";ISA.METRIC_KESTREL_CONNECTION_DURATION="kestrel.connection.duration";ISA.METRIC_KESTREL_QUEUED_CONNECTIONS="kestrel.queued_connections";ISA.METRIC_KESTREL_QUEUED_REQUESTS="kestrel.queued_requests";ISA.METRIC_KESTREL_REJECTED_CONNECTIONS="kestrel.rejected_connections";ISA.METRIC_KESTREL_TLS_HANDSHAKE_DURATION="kestrel.tls_handshake.duration";ISA.METRIC_KESTREL_UPGRADED_CONNECTIONS="kestrel.upgraded_connections";ISA.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS="signalr.server.active_connections";ISA.METRIC_SIGNALR_SERVER_CONNECTION_DURATION="signalr.server.connection.duration"});var NSA=R((WX)=>{var KRB=WX&&WX.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),XO=WX&&WX.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))KRB(Q,A,B)};Object.defineProperty(WX,"__esModule",{value:!0});XO(yOA(),WX);XO(ZSA(),WX);XO(VSA(),WX);XO(DSA(),WX)});var MSA=R((LSA)=>{Object.defineProperty(LSA,"__esModule",{value:!0});LSA.SDK_INFO=void 0;var VRB=Il(),nN=NSA();LSA.SDK_INFO={[nN.SEMRESATTRS_TELEMETRY_SDK_NAME]:"opentelemetry",[nN.SEMRESATTRS_PROCESS_RUNTIME_NAME]:"node",[nN.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE]:nN.TELEMETRYSDKLANGUAGEVALUES_NODEJS,[nN.SEMRESATTRS_TELEMETRY_SDK_VERSION]:VRB.VERSION}});var wSA=R((zSA)=>{Object.defineProperty(zSA,"__esModule",{value:!0});zSA.unrefTimer=void 0;function IRB(A){A.unref()}zSA.unrefTimer=IRB});var OSA=R((FX)=>{Object.defineProperty(FX,"__esModule",{value:!0});FX.unrefTimer=FX.SDK_INFO=FX.otperformance=FX.RandomIdGenerator=FX.hexToBase64=FX._globalThis=FX.getEnv=FX.getEnvWithoutDefaults=void 0;var jSA=K2A();Object.defineProperty(FX,"getEnvWithoutDefaults",{enumerable:!0,get:function(){return jSA.getEnvWithoutDefaults}});Object.defineProperty(FX,"getEnv",{enumerable:!0,get:function(){return jSA.getEnv}});var HRB=H2A();Object.defineProperty(FX,"_globalThis",{enumerable:!0,get:function(){return HRB._globalThis}});var DRB=z2A();Object.defineProperty(FX,"hexToBase64",{enumerable:!0,get:function(){return DRB.hexToBase64}});var NRB=T2A();Object.defineProperty(FX,"RandomIdGenerator",{enumerable:!0,get:function(){return NRB.RandomIdGenerator}});var LRB=_2A();Object.defineProperty(FX,"otperformance",{enumerable:!0,get:function(){return LRB.otperformance}});var qRB=MSA();Object.defineProperty(FX,"SDK_INFO",{enumerable:!0,get:function(){return qRB.SDK_INFO}});var MRB=wSA();Object.defineProperty(FX,"unrefTimer",{enumerable:!0,get:function(){return MRB.unrefTimer}})});var Dl=R((ZX)=>{Object.defineProperty(ZX,"__esModule",{value:!0});ZX.unrefTimer=ZX.otperformance=ZX.hexToBase64=ZX.getEnvWithoutDefaults=ZX.getEnv=ZX._globalThis=ZX.SDK_INFO=ZX.RandomIdGenerator=void 0;var UW=OSA();Object.defineProperty(ZX,"RandomIdGenerator",{enumerable:!0,get:function(){return UW.RandomIdGenerator}});Object.defineProperty(ZX,"SDK_INFO",{enumerable:!0,get:function(){return UW.SDK_INFO}});Object.defineProperty(ZX,"_globalThis",{enumerable:!0,get:function(){return UW._globalThis}});Object.defineProperty(ZX,"getEnv",{enumerable:!0,get:function(){return UW.getEnv}});Object.defineProperty(ZX,"getEnvWithoutDefaults",{enumerable:!0,get:function(){return UW.getEnvWithoutDefaults}});Object.defineProperty(ZX,"hexToBase64",{enumerable:!0,get:function(){return UW.hexToBase64}});Object.defineProperty(ZX,"otperformance",{enumerable:!0,get:function(){return UW.otperformance}});Object.defineProperty(ZX,"unrefTimer",{enumerable:!0,get:function(){return UW.unrefTimer}})});var vSA=R((kSA)=>{Object.defineProperty(kSA,"__esModule",{value:!0});kSA.addHrTimes=kSA.isTimeInput=kSA.isTimeInputHrTime=kSA.hrTimeToMicroseconds=kSA.hrTimeToMilliseconds=kSA.hrTimeToNanoseconds=kSA.hrTimeToTimeStamp=kSA.hrTimeDuration=kSA.timeInputToHrTime=kSA.hrTime=kSA.getTimeOrigin=kSA.millisToHrTime=void 0;var Nl=Dl(),PSA=9,wRB=6,jRB=Math.pow(10,wRB),GO=Math.pow(10,PSA);function sN(A){let Q=A/1000,B=Math.trunc(Q),Y=Math.round(A%1000*jRB);return[B,Y]}kSA.millisToHrTime=sN;function Ll(){let A=Nl.otperformance.timeOrigin;if(typeof A!=="number"){let Q=Nl.otperformance;A=Q.timing&&Q.timing.fetchStart}return A}kSA.getTimeOrigin=Ll;function TSA(A){let Q=sN(Ll()),B=sN(typeof A==="number"?A:Nl.otperformance.now());return SSA(Q,B)}kSA.hrTime=TSA;function ORB(A){if(ql(A))return A;else if(typeof A==="number")if(A=GO)B[1]-=GO,B[0]+=1;return B}kSA.addHrTimes=SSA});var gSA=R((ySA)=>{Object.defineProperty(ySA,"__esModule",{value:!0});ySA.ExportResultCode=void 0;var pRB;(function(A){A[A.SUCCESS=0]="SUCCESS",A[A.FAILED=1]="FAILED"})(pRB=ySA.ExportResultCode||(ySA.ExportResultCode={}))});var mSA=R((fSA)=>{Object.defineProperty(fSA,"__esModule",{value:!0});fSA.CompositePropagator=void 0;var hSA=yA();class xSA{constructor(A={}){var Q;this._propagators=(Q=A.propagators)!==null&&Q!==void 0?Q:[],this._fields=Array.from(new Set(this._propagators.map((B)=>typeof B.fields==="function"?B.fields():[]).reduce((B,Y)=>B.concat(Y),[])))}inject(A,Q,B){for(let Y of this._propagators)try{Y.inject(A,Q,B)}catch(J){hSA.diag.warn(`Failed to inject with ${Y.constructor.name}. Err: ${J.message}`)}}extract(A,Q,B){return this._propagators.reduce((Y,J)=>{try{return J.extract(Y,Q,B)}catch(C){hSA.diag.warn(`Failed to extract with ${J.constructor.name}. Err: ${C.message}`)}return Y},A)}fields(){return this._fields.slice()}}fSA.CompositePropagator=xSA});var cSA=R((uSA)=>{Object.defineProperty(uSA,"__esModule",{value:!0});uSA.validateValue=uSA.validateKey=void 0;var zl="[_0-9a-z-*/]",iRB=`[a-z]${zl}{0,255}`,nRB=`[a-z0-9]${zl}{0,240}@[a-z]${zl}{0,13}`,sRB=new RegExp(`^(?:${iRB}|${nRB})$`),rRB=/^[ -~]{0,255}[!-~]$/,aRB=/,|=/;function oRB(A){return sRB.test(A)}uSA.validateKey=oRB;function tRB(A){return rRB.test(A)&&!aRB.test(A)}uSA.validateValue=tRB});var wl=R((sSA)=>{Object.defineProperty(sSA,"__esModule",{value:!0});sSA.TraceState=void 0;var lSA=cSA(),pSA=32,AwB=512,iSA=",",nSA="=";class Rl{constructor(A){if(this._internalState=new Map,A)this._parse(A)}set(A,Q){let B=this._clone();if(B._internalState.has(A))B._internalState.delete(A);return B._internalState.set(A,Q),B}unset(A){let Q=this._clone();return Q._internalState.delete(A),Q}get(A){return this._internalState.get(A)}serialize(){return this._keys().reduce((A,Q)=>{return A.push(Q+nSA+this.get(Q)),A},[]).join(iSA)}_parse(A){if(A.length>AwB)return;if(this._internalState=A.split(iSA).reverse().reduce((Q,B)=>{let Y=B.trim(),J=Y.indexOf(nSA);if(J!==-1){let C=Y.slice(0,J),X=Y.slice(J+1,B.length);if((0,lSA.validateKey)(C)&&(0,lSA.validateValue)(X))Q.set(C,X)}return Q},new Map),this._internalState.size>pSA)this._internalState=new Map(Array.from(this._internalState.entries()).reverse().slice(0,pSA))}_keys(){return Array.from(this._internalState.keys()).reverse()}_clone(){let A=new Rl;return A._internalState=new Map(this._internalState),A}}sSA.TraceState=Rl});var AkA=R((tSA)=>{Object.defineProperty(tSA,"__esModule",{value:!0});tSA.W3CTraceContextPropagator=tSA.parseTraceParent=tSA.TRACE_STATE_HEADER=tSA.TRACE_PARENT_HEADER=void 0;var WO=yA(),QwB=iN(),BwB=wl();tSA.TRACE_PARENT_HEADER="traceparent";tSA.TRACE_STATE_HEADER="tracestate";var YwB="00",JwB="(?!ff)[\\da-f]{2}",CwB="(?![0]{32})[\\da-f]{32}",XwB="(?![0]{16})[\\da-f]{16}",GwB="[\\da-f]{2}",WwB=new RegExp(`^\\s?(${JwB})-(${CwB})-(${XwB})-(${GwB})(-.*)?\\s?$`);function aSA(A){let Q=WwB.exec(A);if(!Q)return null;if(Q[1]==="00"&&Q[5])return null;return{traceId:Q[2],spanId:Q[3],traceFlags:parseInt(Q[4],16)}}tSA.parseTraceParent=aSA;class oSA{inject(A,Q,B){let Y=WO.trace.getSpanContext(A);if(!Y||(0,QwB.isTracingSuppressed)(A)||!(0,WO.isSpanContextValid)(Y))return;let J=`${YwB}-${Y.traceId}-${Y.spanId}-0${Number(Y.traceFlags||WO.TraceFlags.NONE).toString(16)}`;if(B.set(Q,tSA.TRACE_PARENT_HEADER,J),Y.traceState)B.set(Q,tSA.TRACE_STATE_HEADER,Y.traceState.serialize())}extract(A,Q,B){let Y=B.get(Q,tSA.TRACE_PARENT_HEADER);if(!Y)return A;let J=Array.isArray(Y)?Y[0]:Y;if(typeof J!=="string")return A;let C=aSA(J);if(!C)return A;C.isRemote=!0;let X=B.get(Q,tSA.TRACE_STATE_HEADER);if(X){let G=Array.isArray(X)?X.join(","):X;C.traceState=new BwB.TraceState(typeof G==="string"?G:void 0)}return WO.trace.setSpanContext(A,C)}fields(){return[tSA.TRACE_PARENT_HEADER,tSA.TRACE_STATE_HEADER]}}tSA.W3CTraceContextPropagator=oSA});var JkA=R((BkA)=>{Object.defineProperty(BkA,"__esModule",{value:!0});BkA.getRPCMetadata=BkA.deleteRPCMetadata=BkA.setRPCMetadata=BkA.RPCType=void 0;var ZwB=yA(),jl=(0,ZwB.createContextKey)("OpenTelemetry SDK Context Key RPC_METADATA"),$wB;(function(A){A.HTTP="http"})($wB=BkA.RPCType||(BkA.RPCType={}));function UwB(A,Q){return A.setValue(jl,Q)}BkA.setRPCMetadata=UwB;function EwB(A){return A.deleteValue(jl)}BkA.deleteRPCMetadata=EwB;function KwB(A){return A.getValue(jl)}BkA.getRPCMetadata=KwB});var Ol=R((XkA)=>{Object.defineProperty(XkA,"__esModule",{value:!0});XkA.AlwaysOffSampler=void 0;var HwB=yA();class CkA{shouldSample(){return{decision:HwB.SamplingDecision.NOT_RECORD}}toString(){return"AlwaysOffSampler"}}XkA.AlwaysOffSampler=CkA});var Pl=R((FkA)=>{Object.defineProperty(FkA,"__esModule",{value:!0});FkA.AlwaysOnSampler=void 0;var DwB=yA();class WkA{shouldSample(){return{decision:DwB.SamplingDecision.RECORD_AND_SAMPLED}}toString(){return"AlwaysOnSampler"}}FkA.AlwaysOnSampler=WkA});var VkA=R((EkA)=>{Object.defineProperty(EkA,"__esModule",{value:!0});EkA.ParentBasedSampler=void 0;var $O=yA(),NwB=Zl(),$kA=Ol(),Tl=Pl();class UkA{constructor(A){var Q,B,Y,J;if(this._root=A.root,!this._root)(0,NwB.globalErrorHandler)(Error("ParentBasedSampler must have a root sampler configured")),this._root=new Tl.AlwaysOnSampler;this._remoteParentSampled=(Q=A.remoteParentSampled)!==null&&Q!==void 0?Q:new Tl.AlwaysOnSampler,this._remoteParentNotSampled=(B=A.remoteParentNotSampled)!==null&&B!==void 0?B:new $kA.AlwaysOffSampler,this._localParentSampled=(Y=A.localParentSampled)!==null&&Y!==void 0?Y:new Tl.AlwaysOnSampler,this._localParentNotSampled=(J=A.localParentNotSampled)!==null&&J!==void 0?J:new $kA.AlwaysOffSampler}shouldSample(A,Q,B,Y,J,C){let X=$O.trace.getSpanContext(A);if(!X||!(0,$O.isSpanContextValid)(X))return this._root.shouldSample(A,Q,B,Y,J,C);if(X.isRemote){if(X.traceFlags&$O.TraceFlags.SAMPLED)return this._remoteParentSampled.shouldSample(A,Q,B,Y,J,C);return this._remoteParentNotSampled.shouldSample(A,Q,B,Y,J,C)}if(X.traceFlags&$O.TraceFlags.SAMPLED)return this._localParentSampled.shouldSample(A,Q,B,Y,J,C);return this._localParentNotSampled.shouldSample(A,Q,B,Y,J,C)}toString(){return`ParentBased{root=${this._root.toString()}, remoteParentSampled=${this._remoteParentSampled.toString()}, remoteParentNotSampled=${this._remoteParentNotSampled.toString()}, localParentSampled=${this._localParentSampled.toString()}, localParentNotSampled=${this._localParentNotSampled.toString()}}`}}EkA.ParentBasedSampler=UkA});var NkA=R((HkA)=>{Object.defineProperty(HkA,"__esModule",{value:!0});HkA.TraceIdRatioBasedSampler=void 0;var Sl=yA();class IkA{constructor(A=0){this._ratio=A,this._ratio=this._normalize(A),this._upperBound=Math.floor(this._ratio*4294967295)}shouldSample(A,Q){return{decision:(0,Sl.isValidTraceId)(Q)&&this._accumulate(Q)=1?1:A<=0?0:A}_accumulate(A){let Q=0;for(let B=0;B>>0}return Q}}HkA.TraceIdRatioBasedSampler=IkA});var jkA=R((RkA)=>{Object.defineProperty(RkA,"__esModule",{value:!0});RkA.isPlainObject=void 0;var LwB="[object Object]",qwB="[object Null]",MwB="[object Undefined]",zwB=Function.prototype,LkA=zwB.toString,RwB=LkA.call(Object),wwB=jwB(Object.getPrototypeOf,Object),qkA=Object.prototype,MkA=qkA.hasOwnProperty,Q$=Symbol?Symbol.toStringTag:void 0,zkA=qkA.toString;function jwB(A,Q){return function(B){return A(Q(B))}}function OwB(A){if(!PwB(A)||TwB(A)!==LwB)return!1;let Q=wwB(A);if(Q===null)return!0;let B=MkA.call(Q,"constructor")&&Q.constructor;return typeof B=="function"&&B instanceof B&&LkA.call(B)===RwB}RkA.isPlainObject=OwB;function PwB(A){return A!=null&&typeof A=="object"}function TwB(A){if(A==null)return A===void 0?MwB:qwB;return Q$&&Q$ in Object(A)?SwB(A):kwB(A)}function SwB(A){let Q=MkA.call(A,Q$),B=A[Q$],Y=!1;try{A[Q$]=void 0,Y=!0}catch(C){}let J=zkA.call(A);if(Y)if(Q)A[Q$]=B;else delete A[Q$];return J}function kwB(A){return zkA.call(A)}});var vkA=R((kkA)=>{Object.defineProperty(kkA,"__esModule",{value:!0});kkA.merge=void 0;var OkA=jkA(),_wB=20;function vwB(...A){let Q=A.shift(),B=new WeakMap;while(A.length>0)Q=TkA(Q,A.shift(),0,B);return Q}kkA.merge=vwB;function kl(A){if(EO(A))return A.slice();return A}function TkA(A,Q,B=0,Y){let J;if(B>_wB)return;if(B++,UO(A)||UO(Q)||SkA(Q))J=kl(Q);else if(EO(A)){if(J=A.slice(),EO(Q))for(let C=0,X=Q.length;C"u")delete J[W];else J[W]=F;else{let Z=J[W],U=F;if(PkA(A,W,Y)||PkA(Q,W,Y))delete J[W];else{if(rN(Z)&&rN(U)){let $=Y.get(Z)||[],E=Y.get(U)||[];$.push({obj:A,key:W}),E.push({obj:Q,key:W}),Y.set(Z,$),Y.set(U,E)}J[W]=TkA(J[W],F,B,Y)}}}}else J=Q;return J}function PkA(A,Q,B){let Y=B.get(A[Q])||[];for(let J=0,C=Y.length;J"u"||A instanceof Date||A instanceof RegExp||A===null}function ywB(A,Q){if(!(0,OkA.isPlainObject)(A)||!(0,OkA.isPlainObject)(Q))return!1;return!0}});var hkA=R((ykA)=>{Object.defineProperty(ykA,"__esModule",{value:!0});ykA.callWithTimeout=ykA.TimeoutError=void 0;class KO extends Error{constructor(A){super(A);Object.setPrototypeOf(this,KO.prototype)}}ykA.TimeoutError=KO;function gwB(A,Q){let B,Y=new Promise(function(C,X){B=setTimeout(function(){X(new KO("Operation timed out."))},Q)});return Promise.race([A,Y]).then((J)=>{return clearTimeout(B),J},(J)=>{throw clearTimeout(B),J})}ykA.callWithTimeout=gwB});var mkA=R((fkA)=>{Object.defineProperty(fkA,"__esModule",{value:!0});fkA.isUrlIgnored=fkA.urlMatches=void 0;function xkA(A,Q){if(typeof Q==="string")return A===Q;else return!!A.match(Q)}fkA.urlMatches=xkA;function xwB(A,Q){if(!Q)return!1;for(let B of Q)if(xkA(A,B))return!0;return!1}fkA.isUrlIgnored=xwB});var ckA=R((ukA)=>{Object.defineProperty(ukA,"__esModule",{value:!0});ukA.isWrapped=void 0;function bwB(A){return typeof A==="function"&&typeof A.__original==="function"&&typeof A.__unwrap==="function"&&A.__wrapped===!0}ukA.isWrapped=bwB});var nkA=R((pkA)=>{Object.defineProperty(pkA,"__esModule",{value:!0});pkA.Deferred=void 0;class lkA{constructor(){this._promise=new Promise((A,Q)=>{this._resolve=A,this._reject=Q})}get promise(){return this._promise}resolve(A){this._resolve(A)}reject(A){this._reject(A)}}pkA.Deferred=lkA});var okA=R((rkA)=>{Object.defineProperty(rkA,"__esModule",{value:!0});rkA.BindOnceFuture=void 0;var mwB=nkA();class skA{constructor(A,Q){this._callback=A,this._that=Q,this._isCalled=!1,this._deferred=new mwB.Deferred}get isCalled(){return this._isCalled}get promise(){return this._deferred.promise}call(...A){if(!this._isCalled){this._isCalled=!0;try{Promise.resolve(this._callback.call(this._that,...A)).then((Q)=>this._deferred.resolve(Q),(Q)=>this._deferred.reject(Q))}catch(Q){this._deferred.reject(Q)}}return this._deferred.promise}}rkA.BindOnceFuture=skA});var Q_A=R((ekA)=>{Object.defineProperty(ekA,"__esModule",{value:!0});ekA._export=void 0;var tkA=yA(),uwB=iN();function dwB(A,Q){return new Promise((B)=>{tkA.context.with((0,uwB.suppressTracing)(tkA.context.active()),()=>{A.export(Q,(Y)=>{B(Y)})})})}ekA._export=dwB});var MB=R((sA)=>{Object.defineProperty(sA,"__esModule",{value:!0});sA.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=sA.DEFAULT_ATTRIBUTE_COUNT_LIMIT=sA.TraceState=sA.unsuppressTracing=sA.suppressTracing=sA.isTracingSuppressed=sA.TraceIdRatioBasedSampler=sA.ParentBasedSampler=sA.AlwaysOnSampler=sA.AlwaysOffSampler=sA.setRPCMetadata=sA.getRPCMetadata=sA.deleteRPCMetadata=sA.RPCType=sA.parseTraceParent=sA.W3CTraceContextPropagator=sA.TRACE_STATE_HEADER=sA.TRACE_PARENT_HEADER=sA.CompositePropagator=sA.unrefTimer=sA.otperformance=sA.hexToBase64=sA.getEnvWithoutDefaults=sA.getEnv=sA._globalThis=sA.SDK_INFO=sA.RandomIdGenerator=sA.baggageUtils=sA.ExportResultCode=sA.hexToBinary=sA.timeInputToHrTime=sA.millisToHrTime=sA.isTimeInputHrTime=sA.isTimeInput=sA.hrTimeToTimeStamp=sA.hrTimeToNanoseconds=sA.hrTimeToMilliseconds=sA.hrTimeToMicroseconds=sA.hrTimeDuration=sA.hrTime=sA.getTimeOrigin=sA.addHrTimes=sA.loggingErrorHandler=sA.setGlobalErrorHandler=sA.globalErrorHandler=sA.sanitizeAttributes=sA.isAttributeValue=sA.isAttributeKey=sA.AnchoredClock=sA.W3CBaggagePropagator=void 0;sA.internal=sA.VERSION=sA.BindOnceFuture=sA.isWrapped=sA.urlMatches=sA.isUrlIgnored=sA.callWithTimeout=sA.TimeoutError=sA.TracesSamplerValues=sA.merge=sA.parseEnvironment=sA.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=sA.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=sA.DEFAULT_ENVIRONMENT=void 0;var cwB=czA();Object.defineProperty(sA,"W3CBaggagePropagator",{enumerable:!0,get:function(){return cwB.W3CBaggagePropagator}});var lwB=nzA();Object.defineProperty(sA,"AnchoredClock",{enumerable:!0,get:function(){return lwB.AnchoredClock}});var _l=A2A();Object.defineProperty(sA,"isAttributeKey",{enumerable:!0,get:function(){return _l.isAttributeKey}});Object.defineProperty(sA,"isAttributeValue",{enumerable:!0,get:function(){return _l.isAttributeValue}});Object.defineProperty(sA,"sanitizeAttributes",{enumerable:!0,get:function(){return _l.sanitizeAttributes}});var B_A=Zl();Object.defineProperty(sA,"globalErrorHandler",{enumerable:!0,get:function(){return B_A.globalErrorHandler}});Object.defineProperty(sA,"setGlobalErrorHandler",{enumerable:!0,get:function(){return B_A.setGlobalErrorHandler}});var pwB=Fl();Object.defineProperty(sA,"loggingErrorHandler",{enumerable:!0,get:function(){return pwB.loggingErrorHandler}});var x5=vSA();Object.defineProperty(sA,"addHrTimes",{enumerable:!0,get:function(){return x5.addHrTimes}});Object.defineProperty(sA,"getTimeOrigin",{enumerable:!0,get:function(){return x5.getTimeOrigin}});Object.defineProperty(sA,"hrTime",{enumerable:!0,get:function(){return x5.hrTime}});Object.defineProperty(sA,"hrTimeDuration",{enumerable:!0,get:function(){return x5.hrTimeDuration}});Object.defineProperty(sA,"hrTimeToMicroseconds",{enumerable:!0,get:function(){return x5.hrTimeToMicroseconds}});Object.defineProperty(sA,"hrTimeToMilliseconds",{enumerable:!0,get:function(){return x5.hrTimeToMilliseconds}});Object.defineProperty(sA,"hrTimeToNanoseconds",{enumerable:!0,get:function(){return x5.hrTimeToNanoseconds}});Object.defineProperty(sA,"hrTimeToTimeStamp",{enumerable:!0,get:function(){return x5.hrTimeToTimeStamp}});Object.defineProperty(sA,"isTimeInput",{enumerable:!0,get:function(){return x5.isTimeInput}});Object.defineProperty(sA,"isTimeInputHrTime",{enumerable:!0,get:function(){return x5.isTimeInputHrTime}});Object.defineProperty(sA,"millisToHrTime",{enumerable:!0,get:function(){return x5.millisToHrTime}});Object.defineProperty(sA,"timeInputToHrTime",{enumerable:!0,get:function(){return x5.timeInputToHrTime}});var iwB=Vl();Object.defineProperty(sA,"hexToBinary",{enumerable:!0,get:function(){return iwB.hexToBinary}});var nwB=gSA();Object.defineProperty(sA,"ExportResultCode",{enumerable:!0,get:function(){return nwB.ExportResultCode}});var VO=Xl();sA.baggageUtils={getKeyPairs:VO.getKeyPairs,serializeKeyPairs:VO.serializeKeyPairs,parseKeyPairsIntoRecord:VO.parseKeyPairsIntoRecord,parsePairKeyValue:VO.parsePairKeyValue};var EW=Dl();Object.defineProperty(sA,"RandomIdGenerator",{enumerable:!0,get:function(){return EW.RandomIdGenerator}});Object.defineProperty(sA,"SDK_INFO",{enumerable:!0,get:function(){return EW.SDK_INFO}});Object.defineProperty(sA,"_globalThis",{enumerable:!0,get:function(){return EW._globalThis}});Object.defineProperty(sA,"getEnv",{enumerable:!0,get:function(){return EW.getEnv}});Object.defineProperty(sA,"getEnvWithoutDefaults",{enumerable:!0,get:function(){return EW.getEnvWithoutDefaults}});Object.defineProperty(sA,"hexToBase64",{enumerable:!0,get:function(){return EW.hexToBase64}});Object.defineProperty(sA,"otperformance",{enumerable:!0,get:function(){return EW.otperformance}});Object.defineProperty(sA,"unrefTimer",{enumerable:!0,get:function(){return EW.unrefTimer}});var swB=mSA();Object.defineProperty(sA,"CompositePropagator",{enumerable:!0,get:function(){return swB.CompositePropagator}});var IO=AkA();Object.defineProperty(sA,"TRACE_PARENT_HEADER",{enumerable:!0,get:function(){return IO.TRACE_PARENT_HEADER}});Object.defineProperty(sA,"TRACE_STATE_HEADER",{enumerable:!0,get:function(){return IO.TRACE_STATE_HEADER}});Object.defineProperty(sA,"W3CTraceContextPropagator",{enumerable:!0,get:function(){return IO.W3CTraceContextPropagator}});Object.defineProperty(sA,"parseTraceParent",{enumerable:!0,get:function(){return IO.parseTraceParent}});var HO=JkA();Object.defineProperty(sA,"RPCType",{enumerable:!0,get:function(){return HO.RPCType}});Object.defineProperty(sA,"deleteRPCMetadata",{enumerable:!0,get:function(){return HO.deleteRPCMetadata}});Object.defineProperty(sA,"getRPCMetadata",{enumerable:!0,get:function(){return HO.getRPCMetadata}});Object.defineProperty(sA,"setRPCMetadata",{enumerable:!0,get:function(){return HO.setRPCMetadata}});var rwB=Ol();Object.defineProperty(sA,"AlwaysOffSampler",{enumerable:!0,get:function(){return rwB.AlwaysOffSampler}});var awB=Pl();Object.defineProperty(sA,"AlwaysOnSampler",{enumerable:!0,get:function(){return awB.AlwaysOnSampler}});var owB=VkA();Object.defineProperty(sA,"ParentBasedSampler",{enumerable:!0,get:function(){return owB.ParentBasedSampler}});var twB=NkA();Object.defineProperty(sA,"TraceIdRatioBasedSampler",{enumerable:!0,get:function(){return twB.TraceIdRatioBasedSampler}});var vl=iN();Object.defineProperty(sA,"isTracingSuppressed",{enumerable:!0,get:function(){return vl.isTracingSuppressed}});Object.defineProperty(sA,"suppressTracing",{enumerable:!0,get:function(){return vl.suppressTracing}});Object.defineProperty(sA,"unsuppressTracing",{enumerable:!0,get:function(){return vl.unsuppressTracing}});var ewB=wl();Object.defineProperty(sA,"TraceState",{enumerable:!0,get:function(){return ewB.TraceState}});var QK=El();Object.defineProperty(sA,"DEFAULT_ATTRIBUTE_COUNT_LIMIT",{enumerable:!0,get:function(){return QK.DEFAULT_ATTRIBUTE_COUNT_LIMIT}});Object.defineProperty(sA,"DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT",{enumerable:!0,get:function(){return QK.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT}});Object.defineProperty(sA,"DEFAULT_ENVIRONMENT",{enumerable:!0,get:function(){return QK.DEFAULT_ENVIRONMENT}});Object.defineProperty(sA,"DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT",{enumerable:!0,get:function(){return QK.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT}});Object.defineProperty(sA,"DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT",{enumerable:!0,get:function(){return QK.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT}});Object.defineProperty(sA,"parseEnvironment",{enumerable:!0,get:function(){return QK.parseEnvironment}});var AjB=vkA();Object.defineProperty(sA,"merge",{enumerable:!0,get:function(){return AjB.merge}});var QjB=Ul();Object.defineProperty(sA,"TracesSamplerValues",{enumerable:!0,get:function(){return QjB.TracesSamplerValues}});var Y_A=hkA();Object.defineProperty(sA,"TimeoutError",{enumerable:!0,get:function(){return Y_A.TimeoutError}});Object.defineProperty(sA,"callWithTimeout",{enumerable:!0,get:function(){return Y_A.callWithTimeout}});var J_A=mkA();Object.defineProperty(sA,"isUrlIgnored",{enumerable:!0,get:function(){return J_A.isUrlIgnored}});Object.defineProperty(sA,"urlMatches",{enumerable:!0,get:function(){return J_A.urlMatches}});var BjB=ckA();Object.defineProperty(sA,"isWrapped",{enumerable:!0,get:function(){return BjB.isWrapped}});var YjB=okA();Object.defineProperty(sA,"BindOnceFuture",{enumerable:!0,get:function(){return YjB.BindOnceFuture}});var JjB=Il();Object.defineProperty(sA,"VERSION",{enumerable:!0,get:function(){return JjB.VERSION}});var CjB=Q_A();sA.internal={_export:CjB._export}});var aN=R((lvY,X_A)=>{var WjB=Number.MAX_SAFE_INTEGER||9007199254740991,FjB=["major","premajor","minor","preminor","patch","prepatch","prerelease"];X_A.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:16,MAX_SAFE_BUILD_LENGTH:250,MAX_SAFE_INTEGER:WjB,RELEASE_TYPES:FjB,SEMVER_SPEC_VERSION:"2.0.0",FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var oN=R((pvY,G_A)=>{var ZjB=typeof process==="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...A)=>console.error("SEMVER",...A):()=>{};G_A.exports=ZjB});var BK=R(($X,W_A)=>{var{MAX_SAFE_COMPONENT_LENGTH:yl,MAX_SAFE_BUILD_LENGTH:$jB,MAX_LENGTH:UjB}=aN(),EjB=oN();$X=W_A.exports={};var KjB=$X.re=[],VjB=$X.safeRe=[],lA=$X.src=[],IjB=$X.safeSrc=[],pA=$X.t={},HjB=0,gl="[a-zA-Z0-9-]",DjB=[["\\s",1],["\\d",UjB],[gl,$jB]],NjB=(A)=>{for(let[Q,B]of DjB)A=A.split(`${Q}*`).join(`${Q}{0,${B}}`).split(`${Q}+`).join(`${Q}{1,${B}}`);return A},dQ=(A,Q,B)=>{let Y=NjB(Q),J=HjB++;EjB(A,J,Q),pA[A]=J,lA[J]=Q,IjB[J]=Y,KjB[J]=new RegExp(Q,B?"g":void 0),VjB[J]=new RegExp(Y,B?"g":void 0)};dQ("NUMERICIDENTIFIER","0|[1-9]\\d*");dQ("NUMERICIDENTIFIERLOOSE","\\d+");dQ("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${gl}*`);dQ("MAINVERSION",`(${lA[pA.NUMERICIDENTIFIER]})\\.(${lA[pA.NUMERICIDENTIFIER]})\\.(${lA[pA.NUMERICIDENTIFIER]})`);dQ("MAINVERSIONLOOSE",`(${lA[pA.NUMERICIDENTIFIERLOOSE]})\\.(${lA[pA.NUMERICIDENTIFIERLOOSE]})\\.(${lA[pA.NUMERICIDENTIFIERLOOSE]})`);dQ("PRERELEASEIDENTIFIER",`(?:${lA[pA.NUMERICIDENTIFIER]}|${lA[pA.NONNUMERICIDENTIFIER]})`);dQ("PRERELEASEIDENTIFIERLOOSE",`(?:${lA[pA.NUMERICIDENTIFIERLOOSE]}|${lA[pA.NONNUMERICIDENTIFIER]})`);dQ("PRERELEASE",`(?:-(${lA[pA.PRERELEASEIDENTIFIER]}(?:\\.${lA[pA.PRERELEASEIDENTIFIER]})*))`);dQ("PRERELEASELOOSE",`(?:-?(${lA[pA.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${lA[pA.PRERELEASEIDENTIFIERLOOSE]})*))`);dQ("BUILDIDENTIFIER",`${gl}+`);dQ("BUILD",`(?:\\+(${lA[pA.BUILDIDENTIFIER]}(?:\\.${lA[pA.BUILDIDENTIFIER]})*))`);dQ("FULLPLAIN",`v?${lA[pA.MAINVERSION]}${lA[pA.PRERELEASE]}?${lA[pA.BUILD]}?`);dQ("FULL",`^${lA[pA.FULLPLAIN]}$`);dQ("LOOSEPLAIN",`[v=\\s]*${lA[pA.MAINVERSIONLOOSE]}${lA[pA.PRERELEASELOOSE]}?${lA[pA.BUILD]}?`);dQ("LOOSE",`^${lA[pA.LOOSEPLAIN]}$`);dQ("GTLT","((?:<|>)?=?)");dQ("XRANGEIDENTIFIERLOOSE",`${lA[pA.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);dQ("XRANGEIDENTIFIER",`${lA[pA.NUMERICIDENTIFIER]}|x|X|\\*`);dQ("XRANGEPLAIN",`[v=\\s]*(${lA[pA.XRANGEIDENTIFIER]})(?:\\.(${lA[pA.XRANGEIDENTIFIER]})(?:\\.(${lA[pA.XRANGEIDENTIFIER]})(?:${lA[pA.PRERELEASE]})?${lA[pA.BUILD]}?)?)?`);dQ("XRANGEPLAINLOOSE",`[v=\\s]*(${lA[pA.XRANGEIDENTIFIERLOOSE]})(?:\\.(${lA[pA.XRANGEIDENTIFIERLOOSE]})(?:\\.(${lA[pA.XRANGEIDENTIFIERLOOSE]})(?:${lA[pA.PRERELEASELOOSE]})?${lA[pA.BUILD]}?)?)?`);dQ("XRANGE",`^${lA[pA.GTLT]}\\s*${lA[pA.XRANGEPLAIN]}$`);dQ("XRANGELOOSE",`^${lA[pA.GTLT]}\\s*${lA[pA.XRANGEPLAINLOOSE]}$`);dQ("COERCEPLAIN",`(^|[^\\d])(\\d{1,${yl}})(?:\\.(\\d{1,${yl}}))?(?:\\.(\\d{1,${yl}}))?`);dQ("COERCE",`${lA[pA.COERCEPLAIN]}(?:$|[^\\d])`);dQ("COERCEFULL",lA[pA.COERCEPLAIN]+`(?:${lA[pA.PRERELEASE]})?(?:${lA[pA.BUILD]})?(?:$|[^\\d])`);dQ("COERCERTL",lA[pA.COERCE],!0);dQ("COERCERTLFULL",lA[pA.COERCEFULL],!0);dQ("LONETILDE","(?:~>?)");dQ("TILDETRIM",`(\\s*)${lA[pA.LONETILDE]}\\s+`,!0);$X.tildeTrimReplace="$1~";dQ("TILDE",`^${lA[pA.LONETILDE]}${lA[pA.XRANGEPLAIN]}$`);dQ("TILDELOOSE",`^${lA[pA.LONETILDE]}${lA[pA.XRANGEPLAINLOOSE]}$`);dQ("LONECARET","(?:\\^)");dQ("CARETTRIM",`(\\s*)${lA[pA.LONECARET]}\\s+`,!0);$X.caretTrimReplace="$1^";dQ("CARET",`^${lA[pA.LONECARET]}${lA[pA.XRANGEPLAIN]}$`);dQ("CARETLOOSE",`^${lA[pA.LONECARET]}${lA[pA.XRANGEPLAINLOOSE]}$`);dQ("COMPARATORLOOSE",`^${lA[pA.GTLT]}\\s*(${lA[pA.LOOSEPLAIN]})$|^$`);dQ("COMPARATOR",`^${lA[pA.GTLT]}\\s*(${lA[pA.FULLPLAIN]})$|^$`);dQ("COMPARATORTRIM",`(\\s*)${lA[pA.GTLT]}\\s*(${lA[pA.LOOSEPLAIN]}|${lA[pA.XRANGEPLAIN]})`,!0);$X.comparatorTrimReplace="$1$2$3";dQ("HYPHENRANGE",`^\\s*(${lA[pA.XRANGEPLAIN]})\\s+-\\s+(${lA[pA.XRANGEPLAIN]})\\s*$`);dQ("HYPHENRANGELOOSE",`^\\s*(${lA[pA.XRANGEPLAINLOOSE]})\\s+-\\s+(${lA[pA.XRANGEPLAINLOOSE]})\\s*$`);dQ("STAR","(<|>)?=?\\s*\\*");dQ("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");dQ("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var DO=R((ivY,F_A)=>{var LjB=Object.freeze({loose:!0}),qjB=Object.freeze({}),MjB=(A)=>{if(!A)return qjB;if(typeof A!=="object")return LjB;return A};F_A.exports=MjB});var hl=R((nvY,U_A)=>{var Z_A=/^[0-9]+$/,$_A=(A,Q)=>{let B=Z_A.test(A),Y=Z_A.test(Q);if(B&&Y)A=+A,Q=+Q;return A===Q?0:B&&!Y?-1:Y&&!B?1:A$_A(Q,A);U_A.exports={compareIdentifiers:$_A,rcompareIdentifiers:zjB}});var kJ=R((svY,I_A)=>{var NO=oN(),{MAX_LENGTH:E_A,MAX_SAFE_INTEGER:LO}=aN(),{safeRe:K_A,safeSrc:V_A,t:qO}=BK(),RjB=DO(),{compareIdentifiers:YK}=hl();class C1{constructor(A,Q){if(Q=RjB(Q),A instanceof C1)if(A.loose===!!Q.loose&&A.includePrerelease===!!Q.includePrerelease)return A;else A=A.version;else if(typeof A!=="string")throw TypeError(`Invalid version. Must be a string. Got type "${typeof A}".`);if(A.length>E_A)throw TypeError(`version is longer than ${E_A} characters`);NO("SemVer",A,Q),this.options=Q,this.loose=!!Q.loose,this.includePrerelease=!!Q.includePrerelease;let B=A.trim().match(Q.loose?K_A[qO.LOOSE]:K_A[qO.FULL]);if(!B)throw TypeError(`Invalid Version: ${A}`);if(this.raw=A,this.major=+B[1],this.minor=+B[2],this.patch=+B[3],this.major>LO||this.major<0)throw TypeError("Invalid major version");if(this.minor>LO||this.minor<0)throw TypeError("Invalid minor version");if(this.patch>LO||this.patch<0)throw TypeError("Invalid patch version");if(!B[4])this.prerelease=[];else this.prerelease=B[4].split(".").map((Y)=>{if(/^[0-9]+$/.test(Y)){let J=+Y;if(J>=0&&J=0)if(typeof this.prerelease[J]==="number")this.prerelease[J]++,J=-2;if(J===-1){if(Q===this.prerelease.join(".")&&B===!1)throw Error("invalid increment argument: identifier already exists");this.prerelease.push(Y)}}if(Q){let J=[Q,Y];if(B===!1)J=[Q];if(YK(this.prerelease[0],Q)===0){if(isNaN(this.prerelease[1]))this.prerelease=J}else this.prerelease=J}break}default:throw Error(`invalid increment argument: ${A}`)}if(this.raw=this.format(),this.build.length)this.raw+=`+${this.build.join(".")}`;return this}}I_A.exports=C1});var B$=R((rvY,D_A)=>{var H_A=kJ(),wjB=(A,Q,B=!1)=>{if(A instanceof H_A)return A;try{return new H_A(A,Q)}catch(Y){if(!B)return null;throw Y}};D_A.exports=wjB});var L_A=R((avY,N_A)=>{var jjB=B$(),OjB=(A,Q)=>{let B=jjB(A,Q);return B?B.version:null};N_A.exports=OjB});var M_A=R((ovY,q_A)=>{var PjB=B$(),TjB=(A,Q)=>{let B=PjB(A.trim().replace(/^[=v]+/,""),Q);return B?B.version:null};q_A.exports=TjB});var w_A=R((tvY,R_A)=>{var z_A=kJ(),SjB=(A,Q,B,Y,J)=>{if(typeof B==="string")J=Y,Y=B,B=void 0;try{return new z_A(A instanceof z_A?A.version:A,B).inc(Q,Y,J).version}catch(C){return null}};R_A.exports=SjB});var P_A=R((evY,O_A)=>{var j_A=B$(),kjB=(A,Q)=>{let B=j_A(A,null,!0),Y=j_A(Q,null,!0),J=B.compare(Y);if(J===0)return null;let C=J>0,X=C?B:Y,G=C?Y:B,W=!!X.prerelease.length;if(!!G.prerelease.length&&!W){if(!G.patch&&!G.minor)return"major";if(G.compareMain(X)===0){if(G.minor&&!G.patch)return"minor";return"patch"}}let Z=W?"pre":"";if(B.major!==Y.major)return Z+"major";if(B.minor!==Y.minor)return Z+"minor";if(B.patch!==Y.patch)return Z+"patch";return"prerelease"};O_A.exports=kjB});var S_A=R((AyY,T_A)=>{var _jB=kJ(),vjB=(A,Q)=>new _jB(A,Q).major;T_A.exports=vjB});var __A=R((QyY,k_A)=>{var yjB=kJ(),gjB=(A,Q)=>new yjB(A,Q).minor;k_A.exports=gjB});var y_A=R((ByY,v_A)=>{var hjB=kJ(),xjB=(A,Q)=>new hjB(A,Q).patch;v_A.exports=xjB});var h_A=R((YyY,g_A)=>{var fjB=B$(),bjB=(A,Q)=>{let B=fjB(A,Q);return B&&B.prerelease.length?B.prerelease:null};g_A.exports=bjB});var f5=R((JyY,f_A)=>{var x_A=kJ(),mjB=(A,Q,B)=>new x_A(A,B).compare(new x_A(Q,B));f_A.exports=mjB});var m_A=R((CyY,b_A)=>{var ujB=f5(),djB=(A,Q,B)=>ujB(Q,A,B);b_A.exports=djB});var d_A=R((XyY,u_A)=>{var cjB=f5(),ljB=(A,Q)=>cjB(A,Q,!0);u_A.exports=ljB});var MO=R((GyY,l_A)=>{var c_A=kJ(),pjB=(A,Q,B)=>{let Y=new c_A(A,B),J=new c_A(Q,B);return Y.compare(J)||Y.compareBuild(J)};l_A.exports=pjB});var i_A=R((WyY,p_A)=>{var ijB=MO(),njB=(A,Q)=>A.sort((B,Y)=>ijB(B,Y,Q));p_A.exports=njB});var s_A=R((FyY,n_A)=>{var sjB=MO(),rjB=(A,Q)=>A.sort((B,Y)=>sjB(Y,B,Q));n_A.exports=rjB});var tN=R((ZyY,r_A)=>{var ajB=f5(),ojB=(A,Q,B)=>ajB(A,Q,B)>0;r_A.exports=ojB});var zO=R(($yY,a_A)=>{var tjB=f5(),ejB=(A,Q,B)=>tjB(A,Q,B)<0;a_A.exports=ejB});var xl=R((UyY,o_A)=>{var AOB=f5(),QOB=(A,Q,B)=>AOB(A,Q,B)===0;o_A.exports=QOB});var fl=R((EyY,t_A)=>{var BOB=f5(),YOB=(A,Q,B)=>BOB(A,Q,B)!==0;t_A.exports=YOB});var RO=R((KyY,e_A)=>{var JOB=f5(),COB=(A,Q,B)=>JOB(A,Q,B)>=0;e_A.exports=COB});var wO=R((VyY,AvA)=>{var XOB=f5(),GOB=(A,Q,B)=>XOB(A,Q,B)<=0;AvA.exports=GOB});var bl=R((IyY,QvA)=>{var WOB=xl(),FOB=fl(),ZOB=tN(),$OB=RO(),UOB=zO(),EOB=wO(),KOB=(A,Q,B,Y)=>{switch(Q){case"===":if(typeof A==="object")A=A.version;if(typeof B==="object")B=B.version;return A===B;case"!==":if(typeof A==="object")A=A.version;if(typeof B==="object")B=B.version;return A!==B;case"":case"=":case"==":return WOB(A,B,Y);case"!=":return FOB(A,B,Y);case">":return ZOB(A,B,Y);case">=":return $OB(A,B,Y);case"<":return UOB(A,B,Y);case"<=":return EOB(A,B,Y);default:throw TypeError(`Invalid operator: ${Q}`)}};QvA.exports=KOB});var YvA=R((HyY,BvA)=>{var VOB=kJ(),IOB=B$(),{safeRe:jO,t:OO}=BK(),HOB=(A,Q)=>{if(A instanceof VOB)return A;if(typeof A==="number")A=String(A);if(typeof A!=="string")return null;Q=Q||{};let B=null;if(!Q.rtl)B=A.match(Q.includePrerelease?jO[OO.COERCEFULL]:jO[OO.COERCE]);else{let W=Q.includePrerelease?jO[OO.COERCERTLFULL]:jO[OO.COERCERTL],F;while((F=W.exec(A))&&(!B||B.index+B[0].length!==A.length)){if(!B||F.index+F[0].length!==B.index+B[0].length)B=F;W.lastIndex=F.index+F[1].length+F[2].length}W.lastIndex=-1}if(B===null)return null;let Y=B[2],J=B[3]||"0",C=B[4]||"0",X=Q.includePrerelease&&B[5]?`-${B[5]}`:"",G=Q.includePrerelease&&B[6]?`+${B[6]}`:"";return IOB(`${Y}.${J}.${C}${X}${G}`,Q)};BvA.exports=HOB});var XvA=R((DyY,CvA)=>{class JvA{constructor(){this.max=1000,this.map=new Map}get(A){let Q=this.map.get(A);if(Q===void 0)return;else return this.map.delete(A),this.map.set(A,Q),Q}delete(A){return this.map.delete(A)}set(A,Q){if(!this.delete(A)&&Q!==void 0){if(this.map.size>=this.max){let Y=this.map.keys().next().value;this.delete(Y)}this.map.set(A,Q)}return this}}CvA.exports=JvA});var b5=R((NyY,ZvA)=>{var DOB=/\s+/g;class eN{constructor(A,Q){if(Q=LOB(Q),A instanceof eN)if(A.loose===!!Q.loose&&A.includePrerelease===!!Q.includePrerelease)return A;else return new eN(A.raw,Q);if(A instanceof ml)return this.raw=A.value,this.set=[[A]],this.formatted=void 0,this;if(this.options=Q,this.loose=!!Q.loose,this.includePrerelease=!!Q.includePrerelease,this.raw=A.trim().replace(DOB," "),this.set=this.raw.split("||").map((B)=>this.parseRange(B.trim())).filter((B)=>B.length),!this.set.length)throw TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let B=this.set[0];if(this.set=this.set.filter((Y)=>!WvA(Y[0])),this.set.length===0)this.set=[B];else if(this.set.length>1){for(let Y of this.set)if(Y.length===1&&OOB(Y[0])){this.set=[Y];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let A=0;A0)this.formatted+="||";let Q=this.set[A];for(let B=0;B0)this.formatted+=" ";this.formatted+=Q[B].toString().trim()}}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(A){let B=((this.options.includePrerelease&&wOB)|(this.options.loose&&jOB))+":"+A,Y=GvA.get(B);if(Y)return Y;let J=this.options.loose,C=J?a9[K9.HYPHENRANGELOOSE]:a9[K9.HYPHENRANGE];A=A.replace(C,xOB(this.options.includePrerelease)),V0("hyphen replace",A),A=A.replace(a9[K9.COMPARATORTRIM],MOB),V0("comparator trim",A),A=A.replace(a9[K9.TILDETRIM],zOB),V0("tilde trim",A),A=A.replace(a9[K9.CARETTRIM],ROB),V0("caret trim",A);let X=A.split(" ").map((Z)=>POB(Z,this.options)).join(" ").split(/\s+/).map((Z)=>hOB(Z,this.options));if(J)X=X.filter((Z)=>{return V0("loose invalid filter",Z,this.options),!!Z.match(a9[K9.COMPARATORLOOSE])});V0("range list",X);let G=new Map,W=X.map((Z)=>new ml(Z,this.options));for(let Z of W){if(WvA(Z))return[Z];G.set(Z.value,Z)}if(G.size>1&&G.has(""))G.delete("");let F=[...G.values()];return GvA.set(B,F),F}intersects(A,Q){if(!(A instanceof eN))throw TypeError("a Range is required");return this.set.some((B)=>{return FvA(B,Q)&&A.set.some((Y)=>{return FvA(Y,Q)&&B.every((J)=>{return Y.every((C)=>{return J.intersects(C,Q)})})})})}test(A){if(!A)return!1;if(typeof A==="string")try{A=new qOB(A,this.options)}catch(Q){return!1}for(let Q=0;QA.value==="<0.0.0-0",OOB=(A)=>A.value==="",FvA=(A,Q)=>{let B=!0,Y=A.slice(),J=Y.pop();while(B&&Y.length)B=Y.every((C)=>{return J.intersects(C,Q)}),J=Y.pop();return B},POB=(A,Q)=>{return V0("comp",A,Q),A=kOB(A,Q),V0("caret",A),A=TOB(A,Q),V0("tildes",A),A=vOB(A,Q),V0("xrange",A),A=gOB(A,Q),V0("stars",A),A},V9=(A)=>!A||A.toLowerCase()==="x"||A==="*",TOB=(A,Q)=>{return A.trim().split(/\s+/).map((B)=>SOB(B,Q)).join(" ")},SOB=(A,Q)=>{let B=Q.loose?a9[K9.TILDELOOSE]:a9[K9.TILDE];return A.replace(B,(Y,J,C,X,G)=>{V0("tilde",A,Y,J,C,X,G);let W;if(V9(J))W="";else if(V9(C))W=`>=${J}.0.0 <${+J+1}.0.0-0`;else if(V9(X))W=`>=${J}.${C}.0 <${J}.${+C+1}.0-0`;else if(G)V0("replaceTilde pr",G),W=`>=${J}.${C}.${X}-${G} <${J}.${+C+1}.0-0`;else W=`>=${J}.${C}.${X} <${J}.${+C+1}.0-0`;return V0("tilde return",W),W})},kOB=(A,Q)=>{return A.trim().split(/\s+/).map((B)=>_OB(B,Q)).join(" ")},_OB=(A,Q)=>{V0("caret",A,Q);let B=Q.loose?a9[K9.CARETLOOSE]:a9[K9.CARET],Y=Q.includePrerelease?"-0":"";return A.replace(B,(J,C,X,G,W)=>{V0("caret",A,J,C,X,G,W);let F;if(V9(C))F="";else if(V9(X))F=`>=${C}.0.0${Y} <${+C+1}.0.0-0`;else if(V9(G))if(C==="0")F=`>=${C}.${X}.0${Y} <${C}.${+X+1}.0-0`;else F=`>=${C}.${X}.0${Y} <${+C+1}.0.0-0`;else if(W)if(V0("replaceCaret pr",W),C==="0")if(X==="0")F=`>=${C}.${X}.${G}-${W} <${C}.${X}.${+G+1}-0`;else F=`>=${C}.${X}.${G}-${W} <${C}.${+X+1}.0-0`;else F=`>=${C}.${X}.${G}-${W} <${+C+1}.0.0-0`;else if(V0("no pr"),C==="0")if(X==="0")F=`>=${C}.${X}.${G}${Y} <${C}.${X}.${+G+1}-0`;else F=`>=${C}.${X}.${G}${Y} <${C}.${+X+1}.0-0`;else F=`>=${C}.${X}.${G} <${+C+1}.0.0-0`;return V0("caret return",F),F})},vOB=(A,Q)=>{return V0("replaceXRanges",A,Q),A.split(/\s+/).map((B)=>yOB(B,Q)).join(" ")},yOB=(A,Q)=>{A=A.trim();let B=Q.loose?a9[K9.XRANGELOOSE]:a9[K9.XRANGE];return A.replace(B,(Y,J,C,X,G,W)=>{V0("xRange",A,Y,J,C,X,G,W);let F=V9(C),Z=F||V9(X),U=Z||V9(G),$=U;if(J==="="&&$)J="";if(W=Q.includePrerelease?"-0":"",F)if(J===">"||J==="<")Y="<0.0.0-0";else Y="*";else if(J&&$){if(Z)X=0;if(G=0,J===">")if(J=">=",Z)C=+C+1,X=0,G=0;else X=+X+1,G=0;else if(J==="<=")if(J="<",Z)C=+C+1;else X=+X+1;if(J==="<")W="-0";Y=`${J+C}.${X}.${G}${W}`}else if(Z)Y=`>=${C}.0.0${W} <${+C+1}.0.0-0`;else if(U)Y=`>=${C}.${X}.0${W} <${C}.${+X+1}.0-0`;return V0("xRange return",Y),Y})},gOB=(A,Q)=>{return V0("replaceStars",A,Q),A.trim().replace(a9[K9.STAR],"")},hOB=(A,Q)=>{return V0("replaceGTE0",A,Q),A.trim().replace(a9[Q.includePrerelease?K9.GTE0PRE:K9.GTE0],"")},xOB=(A)=>(Q,B,Y,J,C,X,G,W,F,Z,U,$)=>{if(V9(Y))B="";else if(V9(J))B=`>=${Y}.0.0${A?"-0":""}`;else if(V9(C))B=`>=${Y}.${J}.0${A?"-0":""}`;else if(X)B=`>=${B}`;else B=`>=${B}${A?"-0":""}`;if(V9(F))W="";else if(V9(Z))W=`<${+F+1}.0.0-0`;else if(V9(U))W=`<${F}.${+Z+1}.0-0`;else if($)W=`<=${F}.${Z}.${U}-${$}`;else if(A)W=`<${F}.${Z}.${+U+1}-0`;else W=`<=${W}`;return`${B} ${W}`.trim()},fOB=(A,Q,B)=>{for(let Y=0;Y0){let J=A[Y].semver;if(J.major===Q.major&&J.minor===Q.minor&&J.patch===Q.patch)return!0}}return!1}return!0}});var AL=R((LyY,IvA)=>{var QL=Symbol("SemVer ANY");class PO{static get ANY(){return QL}constructor(A,Q){if(Q=$vA(Q),A instanceof PO)if(A.loose===!!Q.loose)return A;else A=A.value;if(A=A.trim().split(/\s+/).join(" "),dl("comparator",A,Q),this.options=Q,this.loose=!!Q.loose,this.parse(A),this.semver===QL)this.value="";else this.value=this.operator+this.semver.version;dl("comp",this)}parse(A){let Q=this.options.loose?UvA[EvA.COMPARATORLOOSE]:UvA[EvA.COMPARATOR],B=A.match(Q);if(!B)throw TypeError(`Invalid comparator: ${A}`);if(this.operator=B[1]!==void 0?B[1]:"",this.operator==="=")this.operator="";if(!B[2])this.semver=QL;else this.semver=new KvA(B[2],this.options.loose)}toString(){return this.value}test(A){if(dl("Comparator.test",A,this.options.loose),this.semver===QL||A===QL)return!0;if(typeof A==="string")try{A=new KvA(A,this.options)}catch(Q){return!1}return ul(A,this.operator,this.semver,this.options)}intersects(A,Q){if(!(A instanceof PO))throw TypeError("a Comparator is required");if(this.operator===""){if(this.value==="")return!0;return new VvA(A.value,Q).test(this.value)}else if(A.operator===""){if(A.value==="")return!0;return new VvA(this.value,Q).test(A.semver)}if(Q=$vA(Q),Q.includePrerelease&&(this.value==="<0.0.0-0"||A.value==="<0.0.0-0"))return!1;if(!Q.includePrerelease&&(this.value.startsWith("<0.0.0")||A.value.startsWith("<0.0.0")))return!1;if(this.operator.startsWith(">")&&A.operator.startsWith(">"))return!0;if(this.operator.startsWith("<")&&A.operator.startsWith("<"))return!0;if(this.semver.version===A.semver.version&&this.operator.includes("=")&&A.operator.includes("="))return!0;if(ul(this.semver,"<",A.semver,Q)&&this.operator.startsWith(">")&&A.operator.startsWith("<"))return!0;if(ul(this.semver,">",A.semver,Q)&&this.operator.startsWith("<")&&A.operator.startsWith(">"))return!0;return!1}}IvA.exports=PO;var $vA=DO(),{safeRe:UvA,t:EvA}=BK(),ul=bl(),dl=oN(),KvA=kJ(),VvA=b5()});var BL=R((qyY,HvA)=>{var bOB=b5(),mOB=(A,Q,B)=>{try{Q=new bOB(Q,B)}catch(Y){return!1}return Q.test(A)};HvA.exports=mOB});var NvA=R((MyY,DvA)=>{var uOB=b5(),dOB=(A,Q)=>new uOB(A,Q).set.map((B)=>B.map((Y)=>Y.value).join(" ").trim().split(" "));DvA.exports=dOB});var qvA=R((zyY,LvA)=>{var cOB=kJ(),lOB=b5(),pOB=(A,Q,B)=>{let Y=null,J=null,C=null;try{C=new lOB(Q,B)}catch(X){return null}return A.forEach((X)=>{if(C.test(X)){if(!Y||J.compare(X)===-1)Y=X,J=new cOB(Y,B)}}),Y};LvA.exports=pOB});var zvA=R((RyY,MvA)=>{var iOB=kJ(),nOB=b5(),sOB=(A,Q,B)=>{let Y=null,J=null,C=null;try{C=new nOB(Q,B)}catch(X){return null}return A.forEach((X)=>{if(C.test(X)){if(!Y||J.compare(X)===1)Y=X,J=new iOB(Y,B)}}),Y};MvA.exports=sOB});var jvA=R((wyY,wvA)=>{var cl=kJ(),rOB=b5(),RvA=tN(),aOB=(A,Q)=>{A=new rOB(A,Q);let B=new cl("0.0.0");if(A.test(B))return B;if(B=new cl("0.0.0-0"),A.test(B))return B;B=null;for(let Y=0;Y{let G=new cl(X.semver.version);switch(X.operator){case">":if(G.prerelease.length===0)G.patch++;else G.prerelease.push(0);G.raw=G.format();case"":case">=":if(!C||RvA(G,C))C=G;break;case"<":case"<=":break;default:throw Error(`Unexpected operation: ${X.operator}`)}}),C&&(!B||RvA(B,C)))B=C}if(B&&A.test(B))return B;return null};wvA.exports=aOB});var PvA=R((jyY,OvA)=>{var oOB=b5(),tOB=(A,Q)=>{try{return new oOB(A,Q).range||"*"}catch(B){return null}};OvA.exports=tOB});var TO=R((OyY,_vA)=>{var eOB=kJ(),kvA=AL(),{ANY:APB}=kvA,QPB=b5(),BPB=BL(),TvA=tN(),SvA=zO(),YPB=wO(),JPB=RO(),CPB=(A,Q,B,Y)=>{A=new eOB(A,Y),Q=new QPB(Q,Y);let J,C,X,G,W;switch(B){case">":J=TvA,C=YPB,X=SvA,G=">",W=">=";break;case"<":J=SvA,C=JPB,X=TvA,G="<",W="<=";break;default:throw TypeError('Must provide a hilo val of "<" or ">"')}if(BPB(A,Q,Y))return!1;for(let F=0;F{if(E.semver===APB)E=new kvA(">=0.0.0");if(U=U||E,$=$||E,J(E.semver,U.semver,Y))U=E;else if(X(E.semver,$.semver,Y))$=E}),U.operator===G||U.operator===W)return!1;if((!$.operator||$.operator===G)&&C(A,$.semver))return!1;else if($.operator===W&&X(A,$.semver))return!1}return!0};_vA.exports=CPB});var yvA=R((PyY,vvA)=>{var XPB=TO(),GPB=(A,Q,B)=>XPB(A,Q,">",B);vvA.exports=GPB});var hvA=R((TyY,gvA)=>{var WPB=TO(),FPB=(A,Q,B)=>WPB(A,Q,"<",B);gvA.exports=FPB});var bvA=R((SyY,fvA)=>{var xvA=b5(),ZPB=(A,Q,B)=>{return A=new xvA(A,B),Q=new xvA(Q,B),A.intersects(Q,B)};fvA.exports=ZPB});var uvA=R((kyY,mvA)=>{var $PB=BL(),UPB=f5();mvA.exports=(A,Q,B)=>{let Y=[],J=null,C=null,X=A.sort((Z,U)=>UPB(Z,U,B));for(let Z of X)if($PB(Z,Q,B)){if(C=Z,!J)J=Z}else{if(C)Y.push([J,C]);C=null,J=null}if(J)Y.push([J,null]);let G=[];for(let[Z,U]of Y)if(Z===U)G.push(Z);else if(!U&&Z===X[0])G.push("*");else if(!U)G.push(`>=${Z}`);else if(Z===X[0])G.push(`<=${U}`);else G.push(`${Z} - ${U}`);let W=G.join(" || "),F=typeof Q.raw==="string"?Q.raw:String(Q);return W.length{var dvA=b5(),pl=AL(),{ANY:ll}=pl,YL=BL(),il=f5(),EPB=(A,Q,B={})=>{if(A===Q)return!0;A=new dvA(A,B),Q=new dvA(Q,B);let Y=!1;A:for(let J of A.set){for(let C of Q.set){let X=VPB(J,C,B);if(Y=Y||X!==null,X)continue A}if(Y)return!1}return!0},KPB=[new pl(">=0.0.0-0")],cvA=[new pl(">=0.0.0")],VPB=(A,Q,B)=>{if(A===Q)return!0;if(A.length===1&&A[0].semver===ll)if(Q.length===1&&Q[0].semver===ll)return!0;else if(B.includePrerelease)A=KPB;else A=cvA;if(Q.length===1&&Q[0].semver===ll)if(B.includePrerelease)return!0;else Q=cvA;let Y=new Set,J,C;for(let E of A)if(E.operator===">"||E.operator===">=")J=lvA(J,E,B);else if(E.operator==="<"||E.operator==="<=")C=pvA(C,E,B);else Y.add(E.semver);if(Y.size>1)return null;let X;if(J&&C){if(X=il(J.semver,C.semver,B),X>0)return null;else if(X===0&&(J.operator!==">="||C.operator!=="<="))return null}for(let E of Y){if(J&&!YL(E,String(J),B))return null;if(C&&!YL(E,String(C),B))return null;for(let K of Q)if(!YL(E,String(K),B))return!1;return!0}let G,W,F,Z,U=C&&!B.includePrerelease&&C.semver.prerelease.length?C.semver:!1,$=J&&!B.includePrerelease&&J.semver.prerelease.length?J.semver:!1;if(U&&U.prerelease.length===1&&C.operator==="<"&&U.prerelease[0]===0)U=!1;for(let E of Q){if(Z=Z||E.operator===">"||E.operator===">=",F=F||E.operator==="<"||E.operator==="<=",J){if($){if(E.semver.prerelease&&E.semver.prerelease.length&&E.semver.major===$.major&&E.semver.minor===$.minor&&E.semver.patch===$.patch)$=!1}if(E.operator===">"||E.operator===">="){if(G=lvA(J,E,B),G===E&&G!==J)return!1}else if(J.operator===">="&&!YL(J.semver,String(E),B))return!1}if(C){if(U){if(E.semver.prerelease&&E.semver.prerelease.length&&E.semver.major===U.major&&E.semver.minor===U.minor&&E.semver.patch===U.patch)U=!1}if(E.operator==="<"||E.operator==="<="){if(W=pvA(C,E,B),W===E&&W!==C)return!1}else if(C.operator==="<="&&!YL(C.semver,String(E),B))return!1}if(!E.operator&&(C||J)&&X!==0)return!1}if(J&&F&&!C&&X!==0)return!1;if(C&&Z&&!J&&X!==0)return!1;if($||U)return!1;return!0},lvA=(A,Q,B)=>{if(!A)return Q;let Y=il(A.semver,Q.semver,B);return Y>0?A:Y<0?Q:Q.operator===">"&&A.operator===">="?Q:A},pvA=(A,Q,B)=>{if(!A)return Q;let Y=il(A.semver,Q.semver,B);return Y<0?A:Y>0?Q:Q.operator==="<"&&A.operator==="<="?Q:A};ivA.exports=EPB});var ovA=R((vyY,avA)=>{var nl=BK(),svA=aN(),IPB=kJ(),rvA=hl(),HPB=B$(),DPB=L_A(),NPB=M_A(),LPB=w_A(),qPB=P_A(),MPB=S_A(),zPB=__A(),RPB=y_A(),wPB=h_A(),jPB=f5(),OPB=m_A(),PPB=d_A(),TPB=MO(),SPB=i_A(),kPB=s_A(),_PB=tN(),vPB=zO(),yPB=xl(),gPB=fl(),hPB=RO(),xPB=wO(),fPB=bl(),bPB=YvA(),mPB=AL(),uPB=b5(),dPB=BL(),cPB=NvA(),lPB=qvA(),pPB=zvA(),iPB=jvA(),nPB=PvA(),sPB=TO(),rPB=yvA(),aPB=hvA(),oPB=bvA(),tPB=uvA(),ePB=nvA();avA.exports={parse:HPB,valid:DPB,clean:NPB,inc:LPB,diff:qPB,major:MPB,minor:zPB,patch:RPB,prerelease:wPB,compare:jPB,rcompare:OPB,compareLoose:PPB,compareBuild:TPB,sort:SPB,rsort:kPB,gt:_PB,lt:vPB,eq:yPB,neq:gPB,gte:hPB,lte:xPB,cmp:fPB,coerce:bPB,Comparator:mPB,Range:uPB,satisfies:dPB,toComparators:cPB,maxSatisfying:lPB,minSatisfying:pPB,minVersion:iPB,validRange:nPB,outside:sPB,gtr:rPB,ltr:aPB,intersects:oPB,simplifyRange:tPB,subset:ePB,SemVer:IPB,re:nl.re,src:nl.src,tokens:nl.t,SEMVER_SPEC_VERSION:svA.SEMVER_SPEC_VERSION,RELEASE_TYPES:svA.RELEASE_TYPES,compareIdentifiers:rvA.compareIdentifiers,rcompareIdentifiers:rvA.rcompareIdentifiers}});var AyA=R((tvA)=>{Object.defineProperty(tvA,"__esModule",{value:!0});tvA.VERSION=void 0;tvA.VERSION="0.57.2"});var ByA=R((QyA)=>{Object.defineProperty(QyA,"__esModule",{value:!0});QyA.SeverityNumber=void 0;var ATB;(function(A){A[A.UNSPECIFIED=0]="UNSPECIFIED",A[A.TRACE=1]="TRACE",A[A.TRACE2=2]="TRACE2",A[A.TRACE3=3]="TRACE3",A[A.TRACE4=4]="TRACE4",A[A.DEBUG=5]="DEBUG",A[A.DEBUG2=6]="DEBUG2",A[A.DEBUG3=7]="DEBUG3",A[A.DEBUG4=8]="DEBUG4",A[A.INFO=9]="INFO",A[A.INFO2=10]="INFO2",A[A.INFO3=11]="INFO3",A[A.INFO4=12]="INFO4",A[A.WARN=13]="WARN",A[A.WARN2=14]="WARN2",A[A.WARN3=15]="WARN3",A[A.WARN4=16]="WARN4",A[A.ERROR=17]="ERROR",A[A.ERROR2=18]="ERROR2",A[A.ERROR3=19]="ERROR3",A[A.ERROR4=20]="ERROR4",A[A.FATAL=21]="FATAL",A[A.FATAL2=22]="FATAL2",A[A.FATAL3=23]="FATAL3",A[A.FATAL4=24]="FATAL4"})(ATB=QyA.SeverityNumber||(QyA.SeverityNumber={}))});var SO=R((YyA)=>{Object.defineProperty(YyA,"__esModule",{value:!0});YyA.NOOP_LOGGER=YyA.NoopLogger=void 0;class rl{emit(A){}}YyA.NoopLogger=rl;YyA.NOOP_LOGGER=new rl});var kO=R((CyA)=>{Object.defineProperty(CyA,"__esModule",{value:!0});CyA.NOOP_LOGGER_PROVIDER=CyA.NoopLoggerProvider=void 0;var BTB=SO();class al{getLogger(A,Q,B){return new BTB.NoopLogger}}CyA.NoopLoggerProvider=al;CyA.NOOP_LOGGER_PROVIDER=new al});var ol=R((WyA)=>{Object.defineProperty(WyA,"__esModule",{value:!0});WyA.ProxyLogger=void 0;var JTB=SO();class GyA{constructor(A,Q,B,Y){this._provider=A,this.name=Q,this.version=B,this.options=Y}emit(A){this._getLogger().emit(A)}_getLogger(){if(this._delegate)return this._delegate;let A=this._provider.getDelegateLogger(this.name,this.version,this.options);if(!A)return JTB.NOOP_LOGGER;return this._delegate=A,this._delegate}}WyA.ProxyLogger=GyA});var tl=R(($yA)=>{Object.defineProperty($yA,"__esModule",{value:!0});$yA.ProxyLoggerProvider=void 0;var CTB=kO(),XTB=ol();class ZyA{getLogger(A,Q,B){var Y;return(Y=this.getDelegateLogger(A,Q,B))!==null&&Y!==void 0?Y:new XTB.ProxyLogger(this,A,Q,B)}getDelegate(){var A;return(A=this._delegate)!==null&&A!==void 0?A:CTB.NOOP_LOGGER_PROVIDER}setDelegate(A){this._delegate=A}getDelegateLogger(A,Q,B){var Y;return(Y=this._delegate)===null||Y===void 0?void 0:Y.getLogger(A,Q,B)}}$yA.ProxyLoggerProvider=ZyA});var VyA=R((EyA)=>{Object.defineProperty(EyA,"__esModule",{value:!0});EyA._globalThis=void 0;EyA._globalThis=typeof globalThis==="object"?globalThis:global});var IyA=R((el)=>{Object.defineProperty(el,"__esModule",{value:!0});el._globalThis=void 0;var GTB=VyA();Object.defineProperty(el,"_globalThis",{enumerable:!0,get:function(){return GTB._globalThis}})});var HyA=R((Ap)=>{Object.defineProperty(Ap,"__esModule",{value:!0});Ap._globalThis=void 0;var FTB=IyA();Object.defineProperty(Ap,"_globalThis",{enumerable:!0,get:function(){return FTB._globalThis}})});var LyA=R((DyA)=>{Object.defineProperty(DyA,"__esModule",{value:!0});DyA.API_BACKWARDS_COMPATIBILITY_VERSION=DyA.makeGetter=DyA._global=DyA.GLOBAL_LOGS_API_KEY=void 0;var $TB=HyA();DyA.GLOBAL_LOGS_API_KEY=Symbol.for("io.opentelemetry.js.api.logs");DyA._global=$TB._globalThis;function UTB(A,Q,B){return(Y)=>Y===A?Q:B}DyA.makeGetter=UTB;DyA.API_BACKWARDS_COMPATIBILITY_VERSION=1});var RyA=R((MyA)=>{Object.defineProperty(MyA,"__esModule",{value:!0});MyA.LogsAPI=void 0;var m5=LyA(),ITB=kO(),qyA=tl();class Qp{constructor(){this._proxyLoggerProvider=new qyA.ProxyLoggerProvider}static getInstance(){if(!this._instance)this._instance=new Qp;return this._instance}setGlobalLoggerProvider(A){if(m5._global[m5.GLOBAL_LOGS_API_KEY])return this.getLoggerProvider();return m5._global[m5.GLOBAL_LOGS_API_KEY]=(0,m5.makeGetter)(m5.API_BACKWARDS_COMPATIBILITY_VERSION,A,ITB.NOOP_LOGGER_PROVIDER),this._proxyLoggerProvider.setDelegate(A),A}getLoggerProvider(){var A,Q;return(Q=(A=m5._global[m5.GLOBAL_LOGS_API_KEY])===null||A===void 0?void 0:A.call(m5._global,m5.API_BACKWARDS_COMPATIBILITY_VERSION))!==null&&Q!==void 0?Q:this._proxyLoggerProvider}getLogger(A,Q,B){return this.getLoggerProvider().getLogger(A,Q,B)}disable(){delete m5._global[m5.GLOBAL_LOGS_API_KEY],this._proxyLoggerProvider=new qyA.ProxyLoggerProvider}}MyA.LogsAPI=Qp});var Bp=R((WG)=>{Object.defineProperty(WG,"__esModule",{value:!0});WG.logs=WG.ProxyLoggerProvider=WG.ProxyLogger=WG.NoopLoggerProvider=WG.NOOP_LOGGER_PROVIDER=WG.NoopLogger=WG.NOOP_LOGGER=WG.SeverityNumber=void 0;var HTB=ByA();Object.defineProperty(WG,"SeverityNumber",{enumerable:!0,get:function(){return HTB.SeverityNumber}});var wyA=SO();Object.defineProperty(WG,"NOOP_LOGGER",{enumerable:!0,get:function(){return wyA.NOOP_LOGGER}});Object.defineProperty(WG,"NoopLogger",{enumerable:!0,get:function(){return wyA.NoopLogger}});var jyA=kO();Object.defineProperty(WG,"NOOP_LOGGER_PROVIDER",{enumerable:!0,get:function(){return jyA.NOOP_LOGGER_PROVIDER}});Object.defineProperty(WG,"NoopLoggerProvider",{enumerable:!0,get:function(){return jyA.NoopLoggerProvider}});var DTB=ol();Object.defineProperty(WG,"ProxyLogger",{enumerable:!0,get:function(){return DTB.ProxyLogger}});var NTB=tl();Object.defineProperty(WG,"ProxyLoggerProvider",{enumerable:!0,get:function(){return NTB.ProxyLoggerProvider}});var LTB=RyA();WG.logs=LTB.LogsAPI.getInstance()});var SyA=R((PyA)=>{Object.defineProperty(PyA,"__esModule",{value:!0});PyA.disableInstrumentations=PyA.enableInstrumentations=void 0;function qTB(A,Q,B,Y){for(let J=0,C=A.length;JQ.disable())}PyA.disableInstrumentations=MTB});var gyA=R((vyA)=>{Object.defineProperty(vyA,"__esModule",{value:!0});vyA.registerInstrumentations=void 0;var kyA=yA(),RTB=Bp(),_yA=SyA();function wTB(A){var Q,B;let Y=A.tracerProvider||kyA.trace.getTracerProvider(),J=A.meterProvider||kyA.metrics.getMeterProvider(),C=A.loggerProvider||RTB.logs.getLoggerProvider(),X=(B=(Q=A.instrumentations)===null||Q===void 0?void 0:Q.flat())!==null&&B!==void 0?B:[];return(0,_yA.enableInstrumentations)(X,Y,J,C),()=>{(0,_yA.disableInstrumentations)(X)}}vyA.registerInstrumentations=wTB});var JL=R((QgY,hyA)=>{var jTB=Number.MAX_SAFE_INTEGER||9007199254740991,OTB=["major","premajor","minor","preminor","patch","prepatch","prerelease"];hyA.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:16,MAX_SAFE_BUILD_LENGTH:250,MAX_SAFE_INTEGER:jTB,RELEASE_TYPES:OTB,SEMVER_SPEC_VERSION:"2.0.0",FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var CL=R((BgY,xyA)=>{var PTB=typeof process==="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...A)=>console.error("SEMVER",...A):()=>{};xyA.exports=PTB});var JK=R((UX,fyA)=>{var{MAX_SAFE_COMPONENT_LENGTH:Yp,MAX_SAFE_BUILD_LENGTH:TTB,MAX_LENGTH:STB}=JL(),kTB=CL();UX=fyA.exports={};var _TB=UX.re=[],vTB=UX.safeRe=[],iA=UX.src=[],yTB=UX.safeSrc=[],nA=UX.t={},gTB=0,Jp="[a-zA-Z0-9-]",hTB=[["\\s",1],["\\d",STB],[Jp,TTB]],xTB=(A)=>{for(let[Q,B]of hTB)A=A.split(`${Q}*`).join(`${Q}{0,${B}}`).split(`${Q}+`).join(`${Q}{1,${B}}`);return A},cQ=(A,Q,B)=>{let Y=xTB(Q),J=gTB++;kTB(A,J,Q),nA[A]=J,iA[J]=Q,yTB[J]=Y,_TB[J]=new RegExp(Q,B?"g":void 0),vTB[J]=new RegExp(Y,B?"g":void 0)};cQ("NUMERICIDENTIFIER","0|[1-9]\\d*");cQ("NUMERICIDENTIFIERLOOSE","\\d+");cQ("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${Jp}*`);cQ("MAINVERSION",`(${iA[nA.NUMERICIDENTIFIER]})\\.(${iA[nA.NUMERICIDENTIFIER]})\\.(${iA[nA.NUMERICIDENTIFIER]})`);cQ("MAINVERSIONLOOSE",`(${iA[nA.NUMERICIDENTIFIERLOOSE]})\\.(${iA[nA.NUMERICIDENTIFIERLOOSE]})\\.(${iA[nA.NUMERICIDENTIFIERLOOSE]})`);cQ("PRERELEASEIDENTIFIER",`(?:${iA[nA.NUMERICIDENTIFIER]}|${iA[nA.NONNUMERICIDENTIFIER]})`);cQ("PRERELEASEIDENTIFIERLOOSE",`(?:${iA[nA.NUMERICIDENTIFIERLOOSE]}|${iA[nA.NONNUMERICIDENTIFIER]})`);cQ("PRERELEASE",`(?:-(${iA[nA.PRERELEASEIDENTIFIER]}(?:\\.${iA[nA.PRERELEASEIDENTIFIER]})*))`);cQ("PRERELEASELOOSE",`(?:-?(${iA[nA.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${iA[nA.PRERELEASEIDENTIFIERLOOSE]})*))`);cQ("BUILDIDENTIFIER",`${Jp}+`);cQ("BUILD",`(?:\\+(${iA[nA.BUILDIDENTIFIER]}(?:\\.${iA[nA.BUILDIDENTIFIER]})*))`);cQ("FULLPLAIN",`v?${iA[nA.MAINVERSION]}${iA[nA.PRERELEASE]}?${iA[nA.BUILD]}?`);cQ("FULL",`^${iA[nA.FULLPLAIN]}$`);cQ("LOOSEPLAIN",`[v=\\s]*${iA[nA.MAINVERSIONLOOSE]}${iA[nA.PRERELEASELOOSE]}?${iA[nA.BUILD]}?`);cQ("LOOSE",`^${iA[nA.LOOSEPLAIN]}$`);cQ("GTLT","((?:<|>)?=?)");cQ("XRANGEIDENTIFIERLOOSE",`${iA[nA.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);cQ("XRANGEIDENTIFIER",`${iA[nA.NUMERICIDENTIFIER]}|x|X|\\*`);cQ("XRANGEPLAIN",`[v=\\s]*(${iA[nA.XRANGEIDENTIFIER]})(?:\\.(${iA[nA.XRANGEIDENTIFIER]})(?:\\.(${iA[nA.XRANGEIDENTIFIER]})(?:${iA[nA.PRERELEASE]})?${iA[nA.BUILD]}?)?)?`);cQ("XRANGEPLAINLOOSE",`[v=\\s]*(${iA[nA.XRANGEIDENTIFIERLOOSE]})(?:\\.(${iA[nA.XRANGEIDENTIFIERLOOSE]})(?:\\.(${iA[nA.XRANGEIDENTIFIERLOOSE]})(?:${iA[nA.PRERELEASELOOSE]})?${iA[nA.BUILD]}?)?)?`);cQ("XRANGE",`^${iA[nA.GTLT]}\\s*${iA[nA.XRANGEPLAIN]}$`);cQ("XRANGELOOSE",`^${iA[nA.GTLT]}\\s*${iA[nA.XRANGEPLAINLOOSE]}$`);cQ("COERCEPLAIN",`(^|[^\\d])(\\d{1,${Yp}})(?:\\.(\\d{1,${Yp}}))?(?:\\.(\\d{1,${Yp}}))?`);cQ("COERCE",`${iA[nA.COERCEPLAIN]}(?:$|[^\\d])`);cQ("COERCEFULL",iA[nA.COERCEPLAIN]+`(?:${iA[nA.PRERELEASE]})?(?:${iA[nA.BUILD]})?(?:$|[^\\d])`);cQ("COERCERTL",iA[nA.COERCE],!0);cQ("COERCERTLFULL",iA[nA.COERCEFULL],!0);cQ("LONETILDE","(?:~>?)");cQ("TILDETRIM",`(\\s*)${iA[nA.LONETILDE]}\\s+`,!0);UX.tildeTrimReplace="$1~";cQ("TILDE",`^${iA[nA.LONETILDE]}${iA[nA.XRANGEPLAIN]}$`);cQ("TILDELOOSE",`^${iA[nA.LONETILDE]}${iA[nA.XRANGEPLAINLOOSE]}$`);cQ("LONECARET","(?:\\^)");cQ("CARETTRIM",`(\\s*)${iA[nA.LONECARET]}\\s+`,!0);UX.caretTrimReplace="$1^";cQ("CARET",`^${iA[nA.LONECARET]}${iA[nA.XRANGEPLAIN]}$`);cQ("CARETLOOSE",`^${iA[nA.LONECARET]}${iA[nA.XRANGEPLAINLOOSE]}$`);cQ("COMPARATORLOOSE",`^${iA[nA.GTLT]}\\s*(${iA[nA.LOOSEPLAIN]})$|^$`);cQ("COMPARATOR",`^${iA[nA.GTLT]}\\s*(${iA[nA.FULLPLAIN]})$|^$`);cQ("COMPARATORTRIM",`(\\s*)${iA[nA.GTLT]}\\s*(${iA[nA.LOOSEPLAIN]}|${iA[nA.XRANGEPLAIN]})`,!0);UX.comparatorTrimReplace="$1$2$3";cQ("HYPHENRANGE",`^\\s*(${iA[nA.XRANGEPLAIN]})\\s+-\\s+(${iA[nA.XRANGEPLAIN]})\\s*$`);cQ("HYPHENRANGELOOSE",`^\\s*(${iA[nA.XRANGEPLAINLOOSE]})\\s+-\\s+(${iA[nA.XRANGEPLAINLOOSE]})\\s*$`);cQ("STAR","(<|>)?=?\\s*\\*");cQ("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");cQ("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var _O=R((YgY,byA)=>{var fTB=Object.freeze({loose:!0}),bTB=Object.freeze({}),mTB=(A)=>{if(!A)return bTB;if(typeof A!=="object")return fTB;return A};byA.exports=mTB});var Cp=R((JgY,dyA)=>{var myA=/^[0-9]+$/,uyA=(A,Q)=>{let B=myA.test(A),Y=myA.test(Q);if(B&&Y)A=+A,Q=+Q;return A===Q?0:B&&!Y?-1:Y&&!B?1:AuyA(Q,A);dyA.exports={compareIdentifiers:uyA,rcompareIdentifiers:uTB}});var _J=R((CgY,iyA)=>{var vO=CL(),{MAX_LENGTH:cyA,MAX_SAFE_INTEGER:yO}=JL(),{safeRe:lyA,safeSrc:pyA,t:gO}=JK(),dTB=_O(),{compareIdentifiers:CK}=Cp();class X1{constructor(A,Q){if(Q=dTB(Q),A instanceof X1)if(A.loose===!!Q.loose&&A.includePrerelease===!!Q.includePrerelease)return A;else A=A.version;else if(typeof A!=="string")throw TypeError(`Invalid version. Must be a string. Got type "${typeof A}".`);if(A.length>cyA)throw TypeError(`version is longer than ${cyA} characters`);vO("SemVer",A,Q),this.options=Q,this.loose=!!Q.loose,this.includePrerelease=!!Q.includePrerelease;let B=A.trim().match(Q.loose?lyA[gO.LOOSE]:lyA[gO.FULL]);if(!B)throw TypeError(`Invalid Version: ${A}`);if(this.raw=A,this.major=+B[1],this.minor=+B[2],this.patch=+B[3],this.major>yO||this.major<0)throw TypeError("Invalid major version");if(this.minor>yO||this.minor<0)throw TypeError("Invalid minor version");if(this.patch>yO||this.patch<0)throw TypeError("Invalid patch version");if(!B[4])this.prerelease=[];else this.prerelease=B[4].split(".").map((Y)=>{if(/^[0-9]+$/.test(Y)){let J=+Y;if(J>=0&&J=0)if(typeof this.prerelease[J]==="number")this.prerelease[J]++,J=-2;if(J===-1){if(Q===this.prerelease.join(".")&&B===!1)throw Error("invalid increment argument: identifier already exists");this.prerelease.push(Y)}}if(Q){let J=[Q,Y];if(B===!1)J=[Q];if(CK(this.prerelease[0],Q)===0){if(isNaN(this.prerelease[1]))this.prerelease=J}else this.prerelease=J}break}default:throw Error(`invalid increment argument: ${A}`)}if(this.raw=this.format(),this.build.length)this.raw+=`+${this.build.join(".")}`;return this}}iyA.exports=X1});var Y$=R((XgY,syA)=>{var nyA=_J(),cTB=(A,Q,B=!1)=>{if(A instanceof nyA)return A;try{return new nyA(A,Q)}catch(Y){if(!B)return null;throw Y}};syA.exports=cTB});var ayA=R((GgY,ryA)=>{var lTB=Y$(),pTB=(A,Q)=>{let B=lTB(A,Q);return B?B.version:null};ryA.exports=pTB});var tyA=R((WgY,oyA)=>{var iTB=Y$(),nTB=(A,Q)=>{let B=iTB(A.trim().replace(/^[=v]+/,""),Q);return B?B.version:null};oyA.exports=nTB});var QgA=R((FgY,AgA)=>{var eyA=_J(),sTB=(A,Q,B,Y,J)=>{if(typeof B==="string")J=Y,Y=B,B=void 0;try{return new eyA(A instanceof eyA?A.version:A,B).inc(Q,Y,J).version}catch(C){return null}};AgA.exports=sTB});var JgA=R((ZgY,YgA)=>{var BgA=Y$(),rTB=(A,Q)=>{let B=BgA(A,null,!0),Y=BgA(Q,null,!0),J=B.compare(Y);if(J===0)return null;let C=J>0,X=C?B:Y,G=C?Y:B,W=!!X.prerelease.length;if(!!G.prerelease.length&&!W){if(!G.patch&&!G.minor)return"major";if(G.compareMain(X)===0){if(G.minor&&!G.patch)return"minor";return"patch"}}let Z=W?"pre":"";if(B.major!==Y.major)return Z+"major";if(B.minor!==Y.minor)return Z+"minor";if(B.patch!==Y.patch)return Z+"patch";return"prerelease"};YgA.exports=rTB});var XgA=R(($gY,CgA)=>{var aTB=_J(),oTB=(A,Q)=>new aTB(A,Q).major;CgA.exports=oTB});var WgA=R((UgY,GgA)=>{var tTB=_J(),eTB=(A,Q)=>new tTB(A,Q).minor;GgA.exports=eTB});var ZgA=R((EgY,FgA)=>{var ASB=_J(),QSB=(A,Q)=>new ASB(A,Q).patch;FgA.exports=QSB});var UgA=R((KgY,$gA)=>{var BSB=Y$(),YSB=(A,Q)=>{let B=BSB(A,Q);return B&&B.prerelease.length?B.prerelease:null};$gA.exports=YSB});var u5=R((VgY,KgA)=>{var EgA=_J(),JSB=(A,Q,B)=>new EgA(A,B).compare(new EgA(Q,B));KgA.exports=JSB});var IgA=R((IgY,VgA)=>{var CSB=u5(),XSB=(A,Q,B)=>CSB(Q,A,B);VgA.exports=XSB});var DgA=R((HgY,HgA)=>{var GSB=u5(),WSB=(A,Q)=>GSB(A,Q,!0);HgA.exports=WSB});var hO=R((DgY,LgA)=>{var NgA=_J(),FSB=(A,Q,B)=>{let Y=new NgA(A,B),J=new NgA(Q,B);return Y.compare(J)||Y.compareBuild(J)};LgA.exports=FSB});var MgA=R((NgY,qgA)=>{var ZSB=hO(),$SB=(A,Q)=>A.sort((B,Y)=>ZSB(B,Y,Q));qgA.exports=$SB});var RgA=R((LgY,zgA)=>{var USB=hO(),ESB=(A,Q)=>A.sort((B,Y)=>USB(Y,B,Q));zgA.exports=ESB});var XL=R((qgY,wgA)=>{var KSB=u5(),VSB=(A,Q,B)=>KSB(A,Q,B)>0;wgA.exports=VSB});var xO=R((MgY,jgA)=>{var ISB=u5(),HSB=(A,Q,B)=>ISB(A,Q,B)<0;jgA.exports=HSB});var Xp=R((zgY,OgA)=>{var DSB=u5(),NSB=(A,Q,B)=>DSB(A,Q,B)===0;OgA.exports=NSB});var Gp=R((RgY,PgA)=>{var LSB=u5(),qSB=(A,Q,B)=>LSB(A,Q,B)!==0;PgA.exports=qSB});var fO=R((wgY,TgA)=>{var MSB=u5(),zSB=(A,Q,B)=>MSB(A,Q,B)>=0;TgA.exports=zSB});var bO=R((jgY,SgA)=>{var RSB=u5(),wSB=(A,Q,B)=>RSB(A,Q,B)<=0;SgA.exports=wSB});var Wp=R((OgY,kgA)=>{var jSB=Xp(),OSB=Gp(),PSB=XL(),TSB=fO(),SSB=xO(),kSB=bO(),_SB=(A,Q,B,Y)=>{switch(Q){case"===":if(typeof A==="object")A=A.version;if(typeof B==="object")B=B.version;return A===B;case"!==":if(typeof A==="object")A=A.version;if(typeof B==="object")B=B.version;return A!==B;case"":case"=":case"==":return jSB(A,B,Y);case"!=":return OSB(A,B,Y);case">":return PSB(A,B,Y);case">=":return TSB(A,B,Y);case"<":return SSB(A,B,Y);case"<=":return kSB(A,B,Y);default:throw TypeError(`Invalid operator: ${Q}`)}};kgA.exports=_SB});var vgA=R((PgY,_gA)=>{var vSB=_J(),ySB=Y$(),{safeRe:mO,t:uO}=JK(),gSB=(A,Q)=>{if(A instanceof vSB)return A;if(typeof A==="number")A=String(A);if(typeof A!=="string")return null;Q=Q||{};let B=null;if(!Q.rtl)B=A.match(Q.includePrerelease?mO[uO.COERCEFULL]:mO[uO.COERCE]);else{let W=Q.includePrerelease?mO[uO.COERCERTLFULL]:mO[uO.COERCERTL],F;while((F=W.exec(A))&&(!B||B.index+B[0].length!==A.length)){if(!B||F.index+F[0].length!==B.index+B[0].length)B=F;W.lastIndex=F.index+F[1].length+F[2].length}W.lastIndex=-1}if(B===null)return null;let Y=B[2],J=B[3]||"0",C=B[4]||"0",X=Q.includePrerelease&&B[5]?`-${B[5]}`:"",G=Q.includePrerelease&&B[6]?`+${B[6]}`:"";return ySB(`${Y}.${J}.${C}${X}${G}`,Q)};_gA.exports=gSB});var hgA=R((TgY,ggA)=>{class ygA{constructor(){this.max=1000,this.map=new Map}get(A){let Q=this.map.get(A);if(Q===void 0)return;else return this.map.delete(A),this.map.set(A,Q),Q}delete(A){return this.map.delete(A)}set(A,Q){if(!this.delete(A)&&Q!==void 0){if(this.map.size>=this.max){let Y=this.map.keys().next().value;this.delete(Y)}this.map.set(A,Q)}return this}}ggA.exports=ygA});var d5=R((SgY,mgA)=>{var hSB=/\s+/g;class GL{constructor(A,Q){if(Q=fSB(Q),A instanceof GL)if(A.loose===!!Q.loose&&A.includePrerelease===!!Q.includePrerelease)return A;else return new GL(A.raw,Q);if(A instanceof Fp)return this.raw=A.value,this.set=[[A]],this.formatted=void 0,this;if(this.options=Q,this.loose=!!Q.loose,this.includePrerelease=!!Q.includePrerelease,this.raw=A.trim().replace(hSB," "),this.set=this.raw.split("||").map((B)=>this.parseRange(B.trim())).filter((B)=>B.length),!this.set.length)throw TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let B=this.set[0];if(this.set=this.set.filter((Y)=>!fgA(Y[0])),this.set.length===0)this.set=[B];else if(this.set.length>1){for(let Y of this.set)if(Y.length===1&&pSB(Y[0])){this.set=[Y];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let A=0;A0)this.formatted+="||";let Q=this.set[A];for(let B=0;B0)this.formatted+=" ";this.formatted+=Q[B].toString().trim()}}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(A){let B=((this.options.includePrerelease&&cSB)|(this.options.loose&&lSB))+":"+A,Y=xgA.get(B);if(Y)return Y;let J=this.options.loose,C=J?o9[I9.HYPHENRANGELOOSE]:o9[I9.HYPHENRANGE];A=A.replace(C,QkB(this.options.includePrerelease)),I0("hyphen replace",A),A=A.replace(o9[I9.COMPARATORTRIM],mSB),I0("comparator trim",A),A=A.replace(o9[I9.TILDETRIM],uSB),I0("tilde trim",A),A=A.replace(o9[I9.CARETTRIM],dSB),I0("caret trim",A);let X=A.split(" ").map((Z)=>iSB(Z,this.options)).join(" ").split(/\s+/).map((Z)=>AkB(Z,this.options));if(J)X=X.filter((Z)=>{return I0("loose invalid filter",Z,this.options),!!Z.match(o9[I9.COMPARATORLOOSE])});I0("range list",X);let G=new Map,W=X.map((Z)=>new Fp(Z,this.options));for(let Z of W){if(fgA(Z))return[Z];G.set(Z.value,Z)}if(G.size>1&&G.has(""))G.delete("");let F=[...G.values()];return xgA.set(B,F),F}intersects(A,Q){if(!(A instanceof GL))throw TypeError("a Range is required");return this.set.some((B)=>{return bgA(B,Q)&&A.set.some((Y)=>{return bgA(Y,Q)&&B.every((J)=>{return Y.every((C)=>{return J.intersects(C,Q)})})})})}test(A){if(!A)return!1;if(typeof A==="string")try{A=new bSB(A,this.options)}catch(Q){return!1}for(let Q=0;QA.value==="<0.0.0-0",pSB=(A)=>A.value==="",bgA=(A,Q)=>{let B=!0,Y=A.slice(),J=Y.pop();while(B&&Y.length)B=Y.every((C)=>{return J.intersects(C,Q)}),J=Y.pop();return B},iSB=(A,Q)=>{return I0("comp",A,Q),A=rSB(A,Q),I0("caret",A),A=nSB(A,Q),I0("tildes",A),A=oSB(A,Q),I0("xrange",A),A=eSB(A,Q),I0("stars",A),A},H9=(A)=>!A||A.toLowerCase()==="x"||A==="*",nSB=(A,Q)=>{return A.trim().split(/\s+/).map((B)=>sSB(B,Q)).join(" ")},sSB=(A,Q)=>{let B=Q.loose?o9[I9.TILDELOOSE]:o9[I9.TILDE];return A.replace(B,(Y,J,C,X,G)=>{I0("tilde",A,Y,J,C,X,G);let W;if(H9(J))W="";else if(H9(C))W=`>=${J}.0.0 <${+J+1}.0.0-0`;else if(H9(X))W=`>=${J}.${C}.0 <${J}.${+C+1}.0-0`;else if(G)I0("replaceTilde pr",G),W=`>=${J}.${C}.${X}-${G} <${J}.${+C+1}.0-0`;else W=`>=${J}.${C}.${X} <${J}.${+C+1}.0-0`;return I0("tilde return",W),W})},rSB=(A,Q)=>{return A.trim().split(/\s+/).map((B)=>aSB(B,Q)).join(" ")},aSB=(A,Q)=>{I0("caret",A,Q);let B=Q.loose?o9[I9.CARETLOOSE]:o9[I9.CARET],Y=Q.includePrerelease?"-0":"";return A.replace(B,(J,C,X,G,W)=>{I0("caret",A,J,C,X,G,W);let F;if(H9(C))F="";else if(H9(X))F=`>=${C}.0.0${Y} <${+C+1}.0.0-0`;else if(H9(G))if(C==="0")F=`>=${C}.${X}.0${Y} <${C}.${+X+1}.0-0`;else F=`>=${C}.${X}.0${Y} <${+C+1}.0.0-0`;else if(W)if(I0("replaceCaret pr",W),C==="0")if(X==="0")F=`>=${C}.${X}.${G}-${W} <${C}.${X}.${+G+1}-0`;else F=`>=${C}.${X}.${G}-${W} <${C}.${+X+1}.0-0`;else F=`>=${C}.${X}.${G}-${W} <${+C+1}.0.0-0`;else if(I0("no pr"),C==="0")if(X==="0")F=`>=${C}.${X}.${G}${Y} <${C}.${X}.${+G+1}-0`;else F=`>=${C}.${X}.${G}${Y} <${C}.${+X+1}.0-0`;else F=`>=${C}.${X}.${G} <${+C+1}.0.0-0`;return I0("caret return",F),F})},oSB=(A,Q)=>{return I0("replaceXRanges",A,Q),A.split(/\s+/).map((B)=>tSB(B,Q)).join(" ")},tSB=(A,Q)=>{A=A.trim();let B=Q.loose?o9[I9.XRANGELOOSE]:o9[I9.XRANGE];return A.replace(B,(Y,J,C,X,G,W)=>{I0("xRange",A,Y,J,C,X,G,W);let F=H9(C),Z=F||H9(X),U=Z||H9(G),$=U;if(J==="="&&$)J="";if(W=Q.includePrerelease?"-0":"",F)if(J===">"||J==="<")Y="<0.0.0-0";else Y="*";else if(J&&$){if(Z)X=0;if(G=0,J===">")if(J=">=",Z)C=+C+1,X=0,G=0;else X=+X+1,G=0;else if(J==="<=")if(J="<",Z)C=+C+1;else X=+X+1;if(J==="<")W="-0";Y=`${J+C}.${X}.${G}${W}`}else if(Z)Y=`>=${C}.0.0${W} <${+C+1}.0.0-0`;else if(U)Y=`>=${C}.${X}.0${W} <${C}.${+X+1}.0-0`;return I0("xRange return",Y),Y})},eSB=(A,Q)=>{return I0("replaceStars",A,Q),A.trim().replace(o9[I9.STAR],"")},AkB=(A,Q)=>{return I0("replaceGTE0",A,Q),A.trim().replace(o9[Q.includePrerelease?I9.GTE0PRE:I9.GTE0],"")},QkB=(A)=>(Q,B,Y,J,C,X,G,W,F,Z,U,$)=>{if(H9(Y))B="";else if(H9(J))B=`>=${Y}.0.0${A?"-0":""}`;else if(H9(C))B=`>=${Y}.${J}.0${A?"-0":""}`;else if(X)B=`>=${B}`;else B=`>=${B}${A?"-0":""}`;if(H9(F))W="";else if(H9(Z))W=`<${+F+1}.0.0-0`;else if(H9(U))W=`<${F}.${+Z+1}.0-0`;else if($)W=`<=${F}.${Z}.${U}-${$}`;else if(A)W=`<${F}.${Z}.${+U+1}-0`;else W=`<=${W}`;return`${B} ${W}`.trim()},BkB=(A,Q,B)=>{for(let Y=0;Y0){let J=A[Y].semver;if(J.major===Q.major&&J.minor===Q.minor&&J.patch===Q.patch)return!0}}return!1}return!0}});var WL=R((kgY,igA)=>{var FL=Symbol("SemVer ANY");class dO{static get ANY(){return FL}constructor(A,Q){if(Q=ugA(Q),A instanceof dO)if(A.loose===!!Q.loose)return A;else A=A.value;if(A=A.trim().split(/\s+/).join(" "),$p("comparator",A,Q),this.options=Q,this.loose=!!Q.loose,this.parse(A),this.semver===FL)this.value="";else this.value=this.operator+this.semver.version;$p("comp",this)}parse(A){let Q=this.options.loose?dgA[cgA.COMPARATORLOOSE]:dgA[cgA.COMPARATOR],B=A.match(Q);if(!B)throw TypeError(`Invalid comparator: ${A}`);if(this.operator=B[1]!==void 0?B[1]:"",this.operator==="=")this.operator="";if(!B[2])this.semver=FL;else this.semver=new lgA(B[2],this.options.loose)}toString(){return this.value}test(A){if($p("Comparator.test",A,this.options.loose),this.semver===FL||A===FL)return!0;if(typeof A==="string")try{A=new lgA(A,this.options)}catch(Q){return!1}return Zp(A,this.operator,this.semver,this.options)}intersects(A,Q){if(!(A instanceof dO))throw TypeError("a Comparator is required");if(this.operator===""){if(this.value==="")return!0;return new pgA(A.value,Q).test(this.value)}else if(A.operator===""){if(A.value==="")return!0;return new pgA(this.value,Q).test(A.semver)}if(Q=ugA(Q),Q.includePrerelease&&(this.value==="<0.0.0-0"||A.value==="<0.0.0-0"))return!1;if(!Q.includePrerelease&&(this.value.startsWith("<0.0.0")||A.value.startsWith("<0.0.0")))return!1;if(this.operator.startsWith(">")&&A.operator.startsWith(">"))return!0;if(this.operator.startsWith("<")&&A.operator.startsWith("<"))return!0;if(this.semver.version===A.semver.version&&this.operator.includes("=")&&A.operator.includes("="))return!0;if(Zp(this.semver,"<",A.semver,Q)&&this.operator.startsWith(">")&&A.operator.startsWith("<"))return!0;if(Zp(this.semver,">",A.semver,Q)&&this.operator.startsWith("<")&&A.operator.startsWith(">"))return!0;return!1}}igA.exports=dO;var ugA=_O(),{safeRe:dgA,t:cgA}=JK(),Zp=Wp(),$p=CL(),lgA=_J(),pgA=d5()});var ZL=R((_gY,ngA)=>{var YkB=d5(),JkB=(A,Q,B)=>{try{Q=new YkB(Q,B)}catch(Y){return!1}return Q.test(A)};ngA.exports=JkB});var rgA=R((vgY,sgA)=>{var CkB=d5(),XkB=(A,Q)=>new CkB(A,Q).set.map((B)=>B.map((Y)=>Y.value).join(" ").trim().split(" "));sgA.exports=XkB});var ogA=R((ygY,agA)=>{var GkB=_J(),WkB=d5(),FkB=(A,Q,B)=>{let Y=null,J=null,C=null;try{C=new WkB(Q,B)}catch(X){return null}return A.forEach((X)=>{if(C.test(X)){if(!Y||J.compare(X)===-1)Y=X,J=new GkB(Y,B)}}),Y};agA.exports=FkB});var egA=R((ggY,tgA)=>{var ZkB=_J(),$kB=d5(),UkB=(A,Q,B)=>{let Y=null,J=null,C=null;try{C=new $kB(Q,B)}catch(X){return null}return A.forEach((X)=>{if(C.test(X)){if(!Y||J.compare(X)===1)Y=X,J=new ZkB(Y,B)}}),Y};tgA.exports=UkB});var BhA=R((hgY,QhA)=>{var Up=_J(),EkB=d5(),AhA=XL(),KkB=(A,Q)=>{A=new EkB(A,Q);let B=new Up("0.0.0");if(A.test(B))return B;if(B=new Up("0.0.0-0"),A.test(B))return B;B=null;for(let Y=0;Y{let G=new Up(X.semver.version);switch(X.operator){case">":if(G.prerelease.length===0)G.patch++;else G.prerelease.push(0);G.raw=G.format();case"":case">=":if(!C||AhA(G,C))C=G;break;case"<":case"<=":break;default:throw Error(`Unexpected operation: ${X.operator}`)}}),C&&(!B||AhA(B,C)))B=C}if(B&&A.test(B))return B;return null};QhA.exports=KkB});var JhA=R((xgY,YhA)=>{var VkB=d5(),IkB=(A,Q)=>{try{return new VkB(A,Q).range||"*"}catch(B){return null}};YhA.exports=IkB});var cO=R((fgY,WhA)=>{var HkB=_J(),GhA=WL(),{ANY:DkB}=GhA,NkB=d5(),LkB=ZL(),ChA=XL(),XhA=xO(),qkB=bO(),MkB=fO(),zkB=(A,Q,B,Y)=>{A=new HkB(A,Y),Q=new NkB(Q,Y);let J,C,X,G,W;switch(B){case">":J=ChA,C=qkB,X=XhA,G=">",W=">=";break;case"<":J=XhA,C=MkB,X=ChA,G="<",W="<=";break;default:throw TypeError('Must provide a hilo val of "<" or ">"')}if(LkB(A,Q,Y))return!1;for(let F=0;F{if(E.semver===DkB)E=new GhA(">=0.0.0");if(U=U||E,$=$||E,J(E.semver,U.semver,Y))U=E;else if(X(E.semver,$.semver,Y))$=E}),U.operator===G||U.operator===W)return!1;if((!$.operator||$.operator===G)&&C(A,$.semver))return!1;else if($.operator===W&&X(A,$.semver))return!1}return!0};WhA.exports=zkB});var ZhA=R((bgY,FhA)=>{var RkB=cO(),wkB=(A,Q,B)=>RkB(A,Q,">",B);FhA.exports=wkB});var UhA=R((mgY,$hA)=>{var jkB=cO(),OkB=(A,Q,B)=>jkB(A,Q,"<",B);$hA.exports=OkB});var VhA=R((ugY,KhA)=>{var EhA=d5(),PkB=(A,Q,B)=>{return A=new EhA(A,B),Q=new EhA(Q,B),A.intersects(Q,B)};KhA.exports=PkB});var HhA=R((dgY,IhA)=>{var TkB=ZL(),SkB=u5();IhA.exports=(A,Q,B)=>{let Y=[],J=null,C=null,X=A.sort((Z,U)=>SkB(Z,U,B));for(let Z of X)if(TkB(Z,Q,B)){if(C=Z,!J)J=Z}else{if(C)Y.push([J,C]);C=null,J=null}if(J)Y.push([J,null]);let G=[];for(let[Z,U]of Y)if(Z===U)G.push(Z);else if(!U&&Z===X[0])G.push("*");else if(!U)G.push(`>=${Z}`);else if(Z===X[0])G.push(`<=${U}`);else G.push(`${Z} - ${U}`);let W=G.join(" || "),F=typeof Q.raw==="string"?Q.raw:String(Q);return W.length{var DhA=d5(),Kp=WL(),{ANY:Ep}=Kp,$L=ZL(),Vp=u5(),kkB=(A,Q,B={})=>{if(A===Q)return!0;A=new DhA(A,B),Q=new DhA(Q,B);let Y=!1;A:for(let J of A.set){for(let C of Q.set){let X=vkB(J,C,B);if(Y=Y||X!==null,X)continue A}if(Y)return!1}return!0},_kB=[new Kp(">=0.0.0-0")],NhA=[new Kp(">=0.0.0")],vkB=(A,Q,B)=>{if(A===Q)return!0;if(A.length===1&&A[0].semver===Ep)if(Q.length===1&&Q[0].semver===Ep)return!0;else if(B.includePrerelease)A=_kB;else A=NhA;if(Q.length===1&&Q[0].semver===Ep)if(B.includePrerelease)return!0;else Q=NhA;let Y=new Set,J,C;for(let E of A)if(E.operator===">"||E.operator===">=")J=LhA(J,E,B);else if(E.operator==="<"||E.operator==="<=")C=qhA(C,E,B);else Y.add(E.semver);if(Y.size>1)return null;let X;if(J&&C){if(X=Vp(J.semver,C.semver,B),X>0)return null;else if(X===0&&(J.operator!==">="||C.operator!=="<="))return null}for(let E of Y){if(J&&!$L(E,String(J),B))return null;if(C&&!$L(E,String(C),B))return null;for(let K of Q)if(!$L(E,String(K),B))return!1;return!0}let G,W,F,Z,U=C&&!B.includePrerelease&&C.semver.prerelease.length?C.semver:!1,$=J&&!B.includePrerelease&&J.semver.prerelease.length?J.semver:!1;if(U&&U.prerelease.length===1&&C.operator==="<"&&U.prerelease[0]===0)U=!1;for(let E of Q){if(Z=Z||E.operator===">"||E.operator===">=",F=F||E.operator==="<"||E.operator==="<=",J){if($){if(E.semver.prerelease&&E.semver.prerelease.length&&E.semver.major===$.major&&E.semver.minor===$.minor&&E.semver.patch===$.patch)$=!1}if(E.operator===">"||E.operator===">="){if(G=LhA(J,E,B),G===E&&G!==J)return!1}else if(J.operator===">="&&!$L(J.semver,String(E),B))return!1}if(C){if(U){if(E.semver.prerelease&&E.semver.prerelease.length&&E.semver.major===U.major&&E.semver.minor===U.minor&&E.semver.patch===U.patch)U=!1}if(E.operator==="<"||E.operator==="<="){if(W=qhA(C,E,B),W===E&&W!==C)return!1}else if(C.operator==="<="&&!$L(C.semver,String(E),B))return!1}if(!E.operator&&(C||J)&&X!==0)return!1}if(J&&F&&!C&&X!==0)return!1;if(C&&Z&&!J&&X!==0)return!1;if($||U)return!1;return!0},LhA=(A,Q,B)=>{if(!A)return Q;let Y=Vp(A.semver,Q.semver,B);return Y>0?A:Y<0?Q:Q.operator===">"&&A.operator===">="?Q:A},qhA=(A,Q,B)=>{if(!A)return Q;let Y=Vp(A.semver,Q.semver,B);return Y<0?A:Y>0?Q:Q.operator==="<"&&A.operator==="<="?Q:A};MhA.exports=kkB});var OhA=R((lgY,jhA)=>{var Ip=JK(),RhA=JL(),ykB=_J(),whA=Cp(),gkB=Y$(),hkB=ayA(),xkB=tyA(),fkB=QgA(),bkB=JgA(),mkB=XgA(),ukB=WgA(),dkB=ZgA(),ckB=UgA(),lkB=u5(),pkB=IgA(),ikB=DgA(),nkB=hO(),skB=MgA(),rkB=RgA(),akB=XL(),okB=xO(),tkB=Xp(),ekB=Gp(),A_B=fO(),Q_B=bO(),B_B=Wp(),Y_B=vgA(),J_B=WL(),C_B=d5(),X_B=ZL(),G_B=rgA(),W_B=ogA(),F_B=egA(),Z_B=BhA(),$_B=JhA(),U_B=cO(),E_B=ZhA(),K_B=UhA(),V_B=VhA(),I_B=HhA(),H_B=zhA();jhA.exports={parse:gkB,valid:hkB,clean:xkB,inc:fkB,diff:bkB,major:mkB,minor:ukB,patch:dkB,prerelease:ckB,compare:lkB,rcompare:pkB,compareLoose:ikB,compareBuild:nkB,sort:skB,rsort:rkB,gt:akB,lt:okB,eq:tkB,neq:ekB,gte:A_B,lte:Q_B,cmp:B_B,coerce:Y_B,Comparator:J_B,Range:C_B,satisfies:X_B,toComparators:G_B,maxSatisfying:W_B,minSatisfying:F_B,minVersion:Z_B,validRange:$_B,outside:U_B,gtr:E_B,ltr:K_B,intersects:V_B,simplifyRange:I_B,subset:H_B,SemVer:ykB,re:Ip.re,src:Ip.src,tokens:Ip.t,SEMVER_SPEC_VERSION:RhA.SEMVER_SPEC_VERSION,RELEASE_TYPES:RhA.RELEASE_TYPES,compareIdentifiers:whA.compareIdentifiers,rcompareIdentifiers:whA.rcompareIdentifiers}});var Dp=R((pgY,ShA)=>{function Hp(A){return typeof A==="function"}var D9=console.error.bind(console);function UL(A,Q,B){var Y=!!A[Q]&&A.propertyIsEnumerable(Q);Object.defineProperty(A,Q,{configurable:!0,enumerable:Y,writable:!0,value:B})}function EL(A){if(A&&A.logger)if(!Hp(A.logger))D9("new logger isn't a function, not replacing");else D9=A.logger}function PhA(A,Q,B){if(!A||!A[Q]){D9("no original function "+Q+" to wrap");return}if(!B){D9("no wrapper function"),D9(Error().stack);return}if(!Hp(A[Q])||!Hp(B)){D9("original object and wrapper must be functions");return}var Y=A[Q],J=B(Y,Q);return UL(J,"__original",Y),UL(J,"__unwrap",function(){if(A[Q]===J)UL(A,Q,Y)}),UL(J,"__wrapped",!0),UL(A,Q,J),J}function D_B(A,Q,B){if(!A){D9("must provide one or more modules to patch"),D9(Error().stack);return}else if(!Array.isArray(A))A=[A];if(!(Q&&Array.isArray(Q))){D9("must provide one or more functions to wrap on modules");return}A.forEach(function(Y){Q.forEach(function(J){PhA(Y,J,B)})})}function ThA(A,Q){if(!A||!A[Q]){D9("no function to unwrap."),D9(Error().stack);return}if(!A[Q].__unwrap)D9("no original to unwrap to -- has "+Q+" already been unwrapped?");else return A[Q].__unwrap()}function N_B(A,Q){if(!A){D9("must provide one or more modules to patch"),D9(Error().stack);return}else if(!Array.isArray(A))A=[A];if(!(Q&&Array.isArray(Q))){D9("must provide one or more functions to unwrap on modules");return}A.forEach(function(B){Q.forEach(function(Y){ThA(B,Y)})})}EL.wrap=PhA;EL.massWrap=D_B;EL.unwrap=ThA;EL.massUnwrap=N_B;ShA.exports=EL});var yhA=R((_hA)=>{Object.defineProperty(_hA,"__esModule",{value:!0});_hA.InstrumentationAbstract=void 0;var Np=yA(),L_B=Bp(),lO=Dp();class khA{constructor(A,Q,B){this.instrumentationName=A,this.instrumentationVersion=Q,this._config={},this._wrap=lO.wrap,this._unwrap=lO.unwrap,this._massWrap=lO.massWrap,this._massUnwrap=lO.massUnwrap,this.setConfig(B),this._diag=Np.diag.createComponentLogger({namespace:A}),this._tracer=Np.trace.getTracer(A,Q),this._meter=Np.metrics.getMeter(A,Q),this._logger=L_B.logs.getLogger(A,Q),this._updateMetricInstruments()}get meter(){return this._meter}setMeterProvider(A){this._meter=A.getMeter(this.instrumentationName,this.instrumentationVersion),this._updateMetricInstruments()}get logger(){return this._logger}setLoggerProvider(A){this._logger=A.getLogger(this.instrumentationName,this.instrumentationVersion)}getModuleDefinitions(){var A;let Q=(A=this.init())!==null&&A!==void 0?A:[];if(!Array.isArray(Q))return[Q];return Q}_updateMetricInstruments(){return}getConfig(){return this._config}setConfig(A){this._config=Object.assign({enabled:!0},A)}setTracerProvider(A){this._tracer=A.getTracer(this.instrumentationName,this.instrumentationVersion)}get tracer(){return this._tracer}_runSpanCustomizationHook(A,Q,B,Y){if(!A)return;try{A(B,Y)}catch(J){this._diag.error("Error running span customization hook due to exception in handler",{triggerName:Q},J)}}}_hA.InstrumentationAbstract=khA});var hhA=R((ngY,ghA)=>{var XK=1000,GK=XK*60,WK=GK*60,J$=WK*24,q_B=J$*7,M_B=J$*365.25;ghA.exports=function(A,Q){Q=Q||{};var B=typeof A;if(B==="string"&&A.length>0)return z_B(A);else if(B==="number"&&isFinite(A))return Q.long?w_B(A):R_B(A);throw Error("val is not a non-empty string or a valid number. val="+JSON.stringify(A))};function z_B(A){if(A=String(A),A.length>100)return;var Q=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(A);if(!Q)return;var B=parseFloat(Q[1]),Y=(Q[2]||"ms").toLowerCase();switch(Y){case"years":case"year":case"yrs":case"yr":case"y":return B*M_B;case"weeks":case"week":case"w":return B*q_B;case"days":case"day":case"d":return B*J$;case"hours":case"hour":case"hrs":case"hr":case"h":return B*WK;case"minutes":case"minute":case"mins":case"min":case"m":return B*GK;case"seconds":case"second":case"secs":case"sec":case"s":return B*XK;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return B;default:return}}function R_B(A){var Q=Math.abs(A);if(Q>=J$)return Math.round(A/J$)+"d";if(Q>=WK)return Math.round(A/WK)+"h";if(Q>=GK)return Math.round(A/GK)+"m";if(Q>=XK)return Math.round(A/XK)+"s";return A+"ms"}function w_B(A){var Q=Math.abs(A);if(Q>=J$)return pO(A,Q,J$,"day");if(Q>=WK)return pO(A,Q,WK,"hour");if(Q>=GK)return pO(A,Q,GK,"minute");if(Q>=XK)return pO(A,Q,XK,"second");return A+" ms"}function pO(A,Q,B,Y){var J=Q>=B*1.5;return Math.round(A/B)+" "+Y+(J?"s":"")}});var Lp=R((sgY,xhA)=>{function j_B(A){B.debug=B,B.default=B,B.coerce=W,B.disable=X,B.enable=J,B.enabled=G,B.humanize=hhA(),B.destroy=F,Object.keys(A).forEach((Z)=>{B[Z]=A[Z]}),B.names=[],B.skips=[],B.formatters={};function Q(Z){let U=0;for(let $=0;${if(N==="%%")return"%";z++;let w=B.formatters[q];if(typeof w==="function"){let P=V[z];N=w.call(H,P),V.splice(z,1),z--}return N}),B.formatArgs.call(H,V),(H.log||B.log).apply(H,V)}if(I.namespace=Z,I.useColors=B.useColors(),I.color=B.selectColor(Z),I.extend=Y,I.destroy=B.destroy,Object.defineProperty(I,"enabled",{enumerable:!0,configurable:!1,get:()=>{if($!==null)return $;if(E!==B.namespaces)E=B.namespaces,K=B.enabled(Z);return K},set:(V)=>{$=V}}),typeof B.init==="function")B.init(I);return I}function Y(Z,U){let $=B(this.namespace+(typeof U>"u"?":":U)+Z);return $.log=this.log,$}function J(Z){B.save(Z),B.namespaces=Z,B.names=[],B.skips=[];let U=(typeof Z==="string"?Z:"").trim().replace(/\s+/g,",").split(",").filter(Boolean);for(let $ of U)if($[0]==="-")B.skips.push($.slice(1));else B.names.push($)}function C(Z,U){let $=0,E=0,K=-1,I=0;while($"-"+U)].join(",");return B.enable(""),Z}function G(Z){for(let U of B.skips)if(C(Z,U))return!1;for(let U of B.names)if(C(Z,U))return!0;return!1}function W(Z){if(Z instanceof Error)return Z.stack||Z.message;return Z}function F(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return B.enable(B.load()),B}xhA.exports=j_B});var bhA=R((fhA,iO)=>{fhA.formatArgs=P_B;fhA.save=T_B;fhA.load=S_B;fhA.useColors=O_B;fhA.storage=k_B();fhA.destroy=(()=>{let A=!1;return()=>{if(!A)A=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}})();fhA.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function O_B(){if(typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let A;return typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&(A=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(A[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function P_B(A){if(A[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+A[0]+(this.useColors?"%c ":" ")+"+"+iO.exports.humanize(this.diff),!this.useColors)return;let Q="color: "+this.color;A.splice(1,0,Q,"color: inherit");let B=0,Y=0;A[0].replace(/%[a-zA-Z%]/g,(J)=>{if(J==="%%")return;if(B++,J==="%c")Y=B}),A.splice(Y,0,Q)}fhA.log=console.debug||console.log||(()=>{});function T_B(A){try{if(A)fhA.storage.setItem("debug",A);else fhA.storage.removeItem("debug")}catch(Q){}}function S_B(){let A;try{A=fhA.storage.getItem("debug")||fhA.storage.getItem("DEBUG")}catch(Q){}if(!A&&typeof process<"u"&&"env"in process)A=process.env.DEBUG;return A}function k_B(){try{return localStorage}catch(A){}}iO.exports=Lp()(fhA);var{formatters:__B}=iO.exports;__B.j=function(A){try{return JSON.stringify(A)}catch(Q){return"[UnexpectedJSONParseError]: "+Q.message}}});var uhA=R((agY,mhA)=>{mhA.exports=(A,Q)=>{Q=Q||process.argv;let B=A.startsWith("-")?"":A.length===1?"-":"--",Y=Q.indexOf(B+A),J=Q.indexOf("--");return Y!==-1&&(J===-1?!0:Y{var m_B=u("os"),G1=uhA(),vJ=process.env,FK;if(G1("no-color")||G1("no-colors")||G1("color=false"))FK=!1;else if(G1("color")||G1("colors")||G1("color=true")||G1("color=always"))FK=!0;if("FORCE_COLOR"in vJ)FK=vJ.FORCE_COLOR.length===0||parseInt(vJ.FORCE_COLOR,10)!==0;function u_B(A){if(A===0)return!1;return{level:A,hasBasic:!0,has256:A>=2,has16m:A>=3}}function d_B(A){if(FK===!1)return 0;if(G1("color=16m")||G1("color=full")||G1("color=truecolor"))return 3;if(G1("color=256"))return 2;if(A&&!A.isTTY&&FK!==!0)return 0;let Q=FK?1:0;if(process.platform==="win32"){let B=m_B.release().split(".");if(Number(process.versions.node.split(".")[0])>=8&&Number(B[0])>=10&&Number(B[2])>=10586)return Number(B[2])>=14931?3:2;return 1}if("CI"in vJ){if(["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI"].some((B)=>(B in vJ))||vJ.CI_NAME==="codeship")return 1;return Q}if("TEAMCITY_VERSION"in vJ)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(vJ.TEAMCITY_VERSION)?1:0;if(vJ.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in vJ){let B=parseInt((vJ.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(vJ.TERM_PROGRAM){case"iTerm.app":return B>=3?3:2;case"Apple_Terminal":return 2}}if(/-256(color)?$/i.test(vJ.TERM))return 2;if(/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(vJ.TERM))return 1;if("COLORTERM"in vJ)return 1;if(vJ.TERM==="dumb")return Q;return Q}function qp(A){let Q=d_B(A);return u_B(Q)}dhA.exports={supportsColor:qp,stdout:qp(process.stdout),stderr:qp(process.stderr)}});var nhA=R((phA,sO)=>{var c_B=u("tty"),nO=u("util");phA.init=a_B;phA.log=n_B;phA.formatArgs=p_B;phA.save=s_B;phA.load=r_B;phA.useColors=l_B;phA.destroy=nO.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");phA.colors=[6,2,3,4,5,1];try{let A=chA();if(A&&(A.stderr||A).level>=2)phA.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221]}catch(A){}phA.inspectOpts=Object.keys(process.env).filter((A)=>{return/^debug_/i.test(A)}).reduce((A,Q)=>{let B=Q.substring(6).toLowerCase().replace(/_([a-z])/g,(J,C)=>{return C.toUpperCase()}),Y=process.env[Q];if(/^(yes|on|true|enabled)$/i.test(Y))Y=!0;else if(/^(no|off|false|disabled)$/i.test(Y))Y=!1;else if(Y==="null")Y=null;else Y=Number(Y);return A[B]=Y,A},{});function l_B(){return"colors"in phA.inspectOpts?Boolean(phA.inspectOpts.colors):c_B.isatty(process.stderr.fd)}function p_B(A){let{namespace:Q,useColors:B}=this;if(B){let Y=this.color,J="\x1B[3"+(Y<8?Y:"8;5;"+Y),C=` ${J};1m${Q} \x1B[0m`;A[0]=C+A[0].split(` `).join(` -`+C),A.push(J+"m+"+jO.exports.humanize(this.diff)+"\x1B[0m")}else A[0]=pkB()+Q+" "+A[0]}function pkB(){if(JgA.inspectOpts.hideDate)return"";return new Date().toISOString()+" "}function ikB(...A){return process.stderr.write(wO.formatWithOptions(JgA.inspectOpts,...A)+` -`)}function nkB(A){if(A)process.env.DEBUG=A;else delete process.env.DEBUG}function skB(){return process.env.DEBUG}function rkB(A){A.inspectOpts={};let Q=Object.keys(JgA.inspectOpts);for(let B=0;BQ.trim()).join(" ")};YgA.O=function(A){return this.inspectOpts.colors=this.useColors,wO.inspect(A,this.inspectOpts)}});var GgA=R((CyY,el)=>{if(typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs)el.exports=thA();else el.exports=XgA()});var Qp=R((XyY,FgA)=>{var Ap=u("path").sep;FgA.exports=function(A){var Q=A.split(Ap),B=Q.lastIndexOf("node_modules");if(B===-1)return;if(!Q[B+1])return;var Y=Q[B+1][0]==="@",J=Y?Q[B+1]+"/"+Q[B+2]:Q[B+1],C=Y?3:2,X="",G=B+C-1;for(var F=0;F<=G;F++)if(F===G)X+=Q[F];else X+=Q[F]+Ap;var W="",Z=Q.length-1;for(var U=B+C;U<=Z;U++)if(U===Z)W+=Q[U];else W+=Q[U]+Ap;return{name:J,basedir:X,path:W}}});var Bp=R((GyY,WgA)=>{var Y_B=u("os");WgA.exports=Y_B.homedir||function(){var Q=process.env.HOME,B=process.env.LOGNAME||process.env.USER||process.env.LNAME||process.env.USERNAME;if(process.platform==="win32")return process.env.USERPROFILE||process.env.HOMEDRIVE+process.env.HOMEPATH||Q||null;if(process.platform==="darwin")return Q||(B?"/Users/"+B:null);if(process.platform==="linux")return Q||(process.getuid()===0?"/root":B?"/home/"+B:null);return Q||null}});var Yp=R((FyY,ZgA)=>{ZgA.exports=function(){var A=Error.prepareStackTrace;Error.prepareStackTrace=function(B,Y){return Y};var Q=Error().stack;return Error.prepareStackTrace=A,Q[2].getFileName()}});var $gA=R((WyY,AL)=>{var J_B=process.platform==="win32",C_B=/^(((?:[a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/]+)?[\\\/]?)(?:[^\\\/]*[\\\/])*)((\.{1,2}|[^\\\/]+?|)(\.[^.\/\\]*|))[\\\/]*$/,Jp={};function X_B(A){return C_B.exec(A).slice(1)}Jp.parse=function(A){if(typeof A!=="string")throw TypeError("Parameter 'pathString' must be a string, not "+typeof A);var Q=X_B(A);if(!Q||Q.length!==5)throw TypeError("Invalid path '"+A+"'");return{root:Q[1],dir:Q[0]===Q[1]?Q[0]:Q[0].slice(0,-1),base:Q[2],ext:Q[4],name:Q[3]}};var G_B=/^((\/?)(?:[^\/]*\/)*)((\.{1,2}|[^\/]+?|)(\.[^.\/]*|))[\/]*$/,Cp={};function F_B(A){return G_B.exec(A).slice(1)}Cp.parse=function(A){if(typeof A!=="string")throw TypeError("Parameter 'pathString' must be a string, not "+typeof A);var Q=F_B(A);if(!Q||Q.length!==5)throw TypeError("Invalid path '"+A+"'");return{root:Q[1],dir:Q[0].slice(0,-1),base:Q[2],ext:Q[4],name:Q[3]}};if(J_B)AL.exports=Jp.parse;else AL.exports=Cp.parse;AL.exports.posix=Cp.parse;AL.exports.win32=Jp.parse});var Xp=R((ZyY,VgA)=>{var KgA=u("path"),UgA=KgA.parse||$gA(),EgA=function(Q,B){var Y="/";if(/^([A-Za-z]:)/.test(Q))Y="";else if(/^\\\\/.test(Q))Y="\\\\";var J=[Q],C=UgA(Q);while(C.dir!==J[J.length-1])J.push(C.dir),C=UgA(C.dir);return J.reduce(function(X,G){return X.concat(B.map(function(F){return KgA.resolve(Y,G,F)}))},[])};VgA.exports=function(Q,B,Y){var J=B&&B.moduleDirectory?[].concat(B.moduleDirectory):["node_modules"];if(B&&typeof B.paths==="function")return B.paths(Y,Q,function(){return EgA(Q,J)},B);var C=EgA(Q,J);return B&&B.paths?C.concat(B.paths):C}});var Gp=R(($yY,IgA)=>{IgA.exports=function(A,Q){return Q||{}}});var NgA=R((UyY,DgA)=>{var W_B="Function.prototype.bind called on incompatible ",Z_B=Object.prototype.toString,$_B=Math.max,U_B="[object Function]",HgA=function(Q,B){var Y=[];for(var J=0;J{var V_B=NgA();LgA.exports=Function.prototype.bind||V_B});var zgA=R((KyY,MgA)=>{var I_B=Function.prototype.call,H_B=Object.prototype.hasOwnProperty,D_B=qgA();MgA.exports=D_B.call(I_B,H_B)});var RgA=R((VyY,N_B)=>{N_B.exports={assert:!0,"node:assert":[">= 14.18 && < 15",">= 16"],"assert/strict":">= 15","node:assert/strict":">= 16",async_hooks:">= 8","node:async_hooks":[">= 14.18 && < 15",">= 16"],buffer_ieee754:">= 0.5 && < 0.9.7",buffer:!0,"node:buffer":[">= 14.18 && < 15",">= 16"],child_process:!0,"node:child_process":[">= 14.18 && < 15",">= 16"],cluster:">= 0.5","node:cluster":[">= 14.18 && < 15",">= 16"],console:!0,"node:console":[">= 14.18 && < 15",">= 16"],constants:!0,"node:constants":[">= 14.18 && < 15",">= 16"],crypto:!0,"node:crypto":[">= 14.18 && < 15",">= 16"],_debug_agent:">= 1 && < 8",_debugger:"< 8",dgram:!0,"node:dgram":[">= 14.18 && < 15",">= 16"],diagnostics_channel:[">= 14.17 && < 15",">= 15.1"],"node:diagnostics_channel":[">= 14.18 && < 15",">= 16"],dns:!0,"node:dns":[">= 14.18 && < 15",">= 16"],"dns/promises":">= 15","node:dns/promises":">= 16",domain:">= 0.7.12","node:domain":[">= 14.18 && < 15",">= 16"],events:!0,"node:events":[">= 14.18 && < 15",">= 16"],freelist:"< 6",fs:!0,"node:fs":[">= 14.18 && < 15",">= 16"],"fs/promises":[">= 10 && < 10.1",">= 14"],"node:fs/promises":[">= 14.18 && < 15",">= 16"],_http_agent:">= 0.11.1","node:_http_agent":[">= 14.18 && < 15",">= 16"],_http_client:">= 0.11.1","node:_http_client":[">= 14.18 && < 15",">= 16"],_http_common:">= 0.11.1","node:_http_common":[">= 14.18 && < 15",">= 16"],_http_incoming:">= 0.11.1","node:_http_incoming":[">= 14.18 && < 15",">= 16"],_http_outgoing:">= 0.11.1","node:_http_outgoing":[">= 14.18 && < 15",">= 16"],_http_server:">= 0.11.1","node:_http_server":[">= 14.18 && < 15",">= 16"],http:!0,"node:http":[">= 14.18 && < 15",">= 16"],http2:">= 8.8","node:http2":[">= 14.18 && < 15",">= 16"],https:!0,"node:https":[">= 14.18 && < 15",">= 16"],inspector:">= 8","node:inspector":[">= 14.18 && < 15",">= 16"],"inspector/promises":[">= 19"],"node:inspector/promises":[">= 19"],_linklist:"< 8",module:!0,"node:module":[">= 14.18 && < 15",">= 16"],net:!0,"node:net":[">= 14.18 && < 15",">= 16"],"node-inspect/lib/_inspect":">= 7.6 && < 12","node-inspect/lib/internal/inspect_client":">= 7.6 && < 12","node-inspect/lib/internal/inspect_repl":">= 7.6 && < 12",os:!0,"node:os":[">= 14.18 && < 15",">= 16"],path:!0,"node:path":[">= 14.18 && < 15",">= 16"],"path/posix":">= 15.3","node:path/posix":">= 16","path/win32":">= 15.3","node:path/win32":">= 16",perf_hooks:">= 8.5","node:perf_hooks":[">= 14.18 && < 15",">= 16"],process:">= 1","node:process":[">= 14.18 && < 15",">= 16"],punycode:">= 0.5","node:punycode":[">= 14.18 && < 15",">= 16"],querystring:!0,"node:querystring":[">= 14.18 && < 15",">= 16"],readline:!0,"node:readline":[">= 14.18 && < 15",">= 16"],"readline/promises":">= 17","node:readline/promises":">= 17",repl:!0,"node:repl":[">= 14.18 && < 15",">= 16"],"node:sea":[">= 20.12 && < 21",">= 21.7"],smalloc:">= 0.11.5 && < 3","node:sqlite":[">= 22.13 && < 23",">= 23.4"],_stream_duplex:">= 0.9.4","node:_stream_duplex":[">= 14.18 && < 15",">= 16"],_stream_transform:">= 0.9.4","node:_stream_transform":[">= 14.18 && < 15",">= 16"],_stream_wrap:">= 1.4.1","node:_stream_wrap":[">= 14.18 && < 15",">= 16"],_stream_passthrough:">= 0.9.4","node:_stream_passthrough":[">= 14.18 && < 15",">= 16"],_stream_readable:">= 0.9.4","node:_stream_readable":[">= 14.18 && < 15",">= 16"],_stream_writable:">= 0.9.4","node:_stream_writable":[">= 14.18 && < 15",">= 16"],stream:!0,"node:stream":[">= 14.18 && < 15",">= 16"],"stream/consumers":">= 16.7","node:stream/consumers":">= 16.7","stream/promises":">= 15","node:stream/promises":">= 16","stream/web":">= 16.5","node:stream/web":">= 16.5",string_decoder:!0,"node:string_decoder":[">= 14.18 && < 15",">= 16"],sys:[">= 0.4 && < 0.7",">= 0.8"],"node:sys":[">= 14.18 && < 15",">= 16"],"test/reporters":">= 19.9 && < 20.2","node:test/reporters":[">= 18.17 && < 19",">= 19.9",">= 20"],"test/mock_loader":">= 22.3 && < 22.7","node:test/mock_loader":">= 22.3 && < 22.7","node:test":[">= 16.17 && < 17",">= 18"],timers:!0,"node:timers":[">= 14.18 && < 15",">= 16"],"timers/promises":">= 15","node:timers/promises":">= 16",_tls_common:">= 0.11.13","node:_tls_common":[">= 14.18 && < 15",">= 16"],_tls_legacy:">= 0.11.3 && < 10",_tls_wrap:">= 0.11.3","node:_tls_wrap":[">= 14.18 && < 15",">= 16"],tls:!0,"node:tls":[">= 14.18 && < 15",">= 16"],trace_events:">= 10","node:trace_events":[">= 14.18 && < 15",">= 16"],tty:!0,"node:tty":[">= 14.18 && < 15",">= 16"],url:!0,"node:url":[">= 14.18 && < 15",">= 16"],util:!0,"node:util":[">= 14.18 && < 15",">= 16"],"util/types":">= 15.3","node:util/types":">= 16","v8/tools/arguments":">= 10 && < 12","v8/tools/codemap":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/consarray":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/csvparser":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/logreader":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/profile_view":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/splaytree":[">= 4.4 && < 5",">= 5.2 && < 12"],v8:">= 1","node:v8":[">= 14.18 && < 15",">= 16"],vm:!0,"node:vm":[">= 14.18 && < 15",">= 16"],wasi:[">= 13.4 && < 13.5",">= 18.17 && < 19",">= 20"],"node:wasi":[">= 18.17 && < 19",">= 20"],worker_threads:">= 11.7","node:worker_threads":[">= 14.18 && < 15",">= 16"],zlib:">= 0.5","node:zlib":[">= 14.18 && < 15",">= 16"]}});var QL=R((IyY,OgA)=>{var L_B=zgA();function q_B(A,Q){var B=A.split("."),Y=Q.split(" "),J=Y.length>1?Y[0]:"=",C=(Y.length>1?Y[1]:Y[0]).split(".");for(var X=0;X<3;++X){var G=parseInt(B[X]||0,10),F=parseInt(C[X]||0,10);if(G===F)continue;if(J==="<")return G=")return G>=F;return!1}return J===">="}function wgA(A,Q){var B=Q.split(/ ?&& ?/);if(B.length===0)return!1;for(var Y=0;Y"u"?process.versions&&process.versions.node:A;if(typeof B!=="string")throw TypeError(typeof A>"u"?"Unable to determine current node version":"If provided, a valid node version is required");if(Q&&typeof Q==="object"){for(var Y=0;Y{var aZ=u("fs"),z_B=Bp(),DY=u("path"),R_B=Yp(),w_B=Xp(),j_B=Gp(),O_B=QL(),P_B=process.platform!=="win32"&&aZ.realpath&&typeof aZ.realpath.native==="function"?aZ.realpath.native:aZ.realpath,PgA=z_B(),T_B=function(){return[DY.join(PgA,".node_modules"),DY.join(PgA,".node_libraries")]},S_B=function(Q,B){aZ.stat(Q,function(Y,J){if(!Y)return B(null,J.isFile()||J.isFIFO());if(Y.code==="ENOENT"||Y.code==="ENOTDIR")return B(null,!1);return B(Y)})},k_B=function(Q,B){aZ.stat(Q,function(Y,J){if(!Y)return B(null,J.isDirectory());if(Y.code==="ENOENT"||Y.code==="ENOTDIR")return B(null,!1);return B(Y)})},__B=function(Q,B){P_B(Q,function(Y,J){if(Y&&Y.code!=="ENOENT")B(Y);else B(null,Y?Q:J)})},BL=function(Q,B,Y,J){if(Y&&Y.preserveSymlinks===!1)Q(B,J);else J(null,B)},v_B=function(Q,B,Y){Q(B,function(J,C){if(J)Y(J);else try{var X=JSON.parse(C);Y(null,X)}catch(G){Y(null)}})},y_B=function(Q,B,Y){var J=w_B(B,Y,Q);for(var C=0;C{h_B.exports={assert:!0,"node:assert":[">= 14.18 && < 15",">= 16"],"assert/strict":">= 15","node:assert/strict":">= 16",async_hooks:">= 8","node:async_hooks":[">= 14.18 && < 15",">= 16"],buffer_ieee754:">= 0.5 && < 0.9.7",buffer:!0,"node:buffer":[">= 14.18 && < 15",">= 16"],child_process:!0,"node:child_process":[">= 14.18 && < 15",">= 16"],cluster:">= 0.5","node:cluster":[">= 14.18 && < 15",">= 16"],console:!0,"node:console":[">= 14.18 && < 15",">= 16"],constants:!0,"node:constants":[">= 14.18 && < 15",">= 16"],crypto:!0,"node:crypto":[">= 14.18 && < 15",">= 16"],_debug_agent:">= 1 && < 8",_debugger:"< 8",dgram:!0,"node:dgram":[">= 14.18 && < 15",">= 16"],diagnostics_channel:[">= 14.17 && < 15",">= 15.1"],"node:diagnostics_channel":[">= 14.18 && < 15",">= 16"],dns:!0,"node:dns":[">= 14.18 && < 15",">= 16"],"dns/promises":">= 15","node:dns/promises":">= 16",domain:">= 0.7.12","node:domain":[">= 14.18 && < 15",">= 16"],events:!0,"node:events":[">= 14.18 && < 15",">= 16"],freelist:"< 6",fs:!0,"node:fs":[">= 14.18 && < 15",">= 16"],"fs/promises":[">= 10 && < 10.1",">= 14"],"node:fs/promises":[">= 14.18 && < 15",">= 16"],_http_agent:">= 0.11.1","node:_http_agent":[">= 14.18 && < 15",">= 16"],_http_client:">= 0.11.1","node:_http_client":[">= 14.18 && < 15",">= 16"],_http_common:">= 0.11.1","node:_http_common":[">= 14.18 && < 15",">= 16"],_http_incoming:">= 0.11.1","node:_http_incoming":[">= 14.18 && < 15",">= 16"],_http_outgoing:">= 0.11.1","node:_http_outgoing":[">= 14.18 && < 15",">= 16"],_http_server:">= 0.11.1","node:_http_server":[">= 14.18 && < 15",">= 16"],http:!0,"node:http":[">= 14.18 && < 15",">= 16"],http2:">= 8.8","node:http2":[">= 14.18 && < 15",">= 16"],https:!0,"node:https":[">= 14.18 && < 15",">= 16"],inspector:">= 8","node:inspector":[">= 14.18 && < 15",">= 16"],"inspector/promises":[">= 19"],"node:inspector/promises":[">= 19"],_linklist:"< 8",module:!0,"node:module":[">= 14.18 && < 15",">= 16"],net:!0,"node:net":[">= 14.18 && < 15",">= 16"],"node-inspect/lib/_inspect":">= 7.6 && < 12","node-inspect/lib/internal/inspect_client":">= 7.6 && < 12","node-inspect/lib/internal/inspect_repl":">= 7.6 && < 12",os:!0,"node:os":[">= 14.18 && < 15",">= 16"],path:!0,"node:path":[">= 14.18 && < 15",">= 16"],"path/posix":">= 15.3","node:path/posix":">= 16","path/win32":">= 15.3","node:path/win32":">= 16",perf_hooks:">= 8.5","node:perf_hooks":[">= 14.18 && < 15",">= 16"],process:">= 1","node:process":[">= 14.18 && < 15",">= 16"],punycode:">= 0.5","node:punycode":[">= 14.18 && < 15",">= 16"],querystring:!0,"node:querystring":[">= 14.18 && < 15",">= 16"],readline:!0,"node:readline":[">= 14.18 && < 15",">= 16"],"readline/promises":">= 17","node:readline/promises":">= 17",repl:!0,"node:repl":[">= 14.18 && < 15",">= 16"],"node:sea":[">= 20.12 && < 21",">= 21.7"],smalloc:">= 0.11.5 && < 3","node:sqlite":">= 23.4",_stream_duplex:">= 0.9.4","node:_stream_duplex":[">= 14.18 && < 15",">= 16"],_stream_transform:">= 0.9.4","node:_stream_transform":[">= 14.18 && < 15",">= 16"],_stream_wrap:">= 1.4.1","node:_stream_wrap":[">= 14.18 && < 15",">= 16"],_stream_passthrough:">= 0.9.4","node:_stream_passthrough":[">= 14.18 && < 15",">= 16"],_stream_readable:">= 0.9.4","node:_stream_readable":[">= 14.18 && < 15",">= 16"],_stream_writable:">= 0.9.4","node:_stream_writable":[">= 14.18 && < 15",">= 16"],stream:!0,"node:stream":[">= 14.18 && < 15",">= 16"],"stream/consumers":">= 16.7","node:stream/consumers":">= 16.7","stream/promises":">= 15","node:stream/promises":">= 16","stream/web":">= 16.5","node:stream/web":">= 16.5",string_decoder:!0,"node:string_decoder":[">= 14.18 && < 15",">= 16"],sys:[">= 0.4 && < 0.7",">= 0.8"],"node:sys":[">= 14.18 && < 15",">= 16"],"test/reporters":">= 19.9 && < 20.2","node:test/reporters":[">= 18.17 && < 19",">= 19.9",">= 20"],"test/mock_loader":">= 22.3 && < 22.7","node:test/mock_loader":">= 22.3 && < 22.7","node:test":[">= 16.17 && < 17",">= 18"],timers:!0,"node:timers":[">= 14.18 && < 15",">= 16"],"timers/promises":">= 15","node:timers/promises":">= 16",_tls_common:">= 0.11.13","node:_tls_common":[">= 14.18 && < 15",">= 16"],_tls_legacy:">= 0.11.3 && < 10",_tls_wrap:">= 0.11.3","node:_tls_wrap":[">= 14.18 && < 15",">= 16"],tls:!0,"node:tls":[">= 14.18 && < 15",">= 16"],trace_events:">= 10","node:trace_events":[">= 14.18 && < 15",">= 16"],tty:!0,"node:tty":[">= 14.18 && < 15",">= 16"],url:!0,"node:url":[">= 14.18 && < 15",">= 16"],util:!0,"node:util":[">= 14.18 && < 15",">= 16"],"util/types":">= 15.3","node:util/types":">= 16","v8/tools/arguments":">= 10 && < 12","v8/tools/codemap":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/consarray":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/csvparser":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/logreader":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/profile_view":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/splaytree":[">= 4.4 && < 5",">= 5.2 && < 12"],v8:">= 1","node:v8":[">= 14.18 && < 15",">= 16"],vm:!0,"node:vm":[">= 14.18 && < 15",">= 16"],wasi:[">= 13.4 && < 13.5",">= 18.17 && < 19",">= 20"],"node:wasi":[">= 18.17 && < 19",">= 20"],worker_threads:">= 11.7","node:worker_threads":[">= 14.18 && < 15",">= 16"],zlib:">= 0.5","node:zlib":[">= 14.18 && < 15",">= 16"]}});var hgA=R((NyY,ygA)=>{var g_B=QL(),_gA=kgA(),vgA={};for(YL in _gA)if(Object.prototype.hasOwnProperty.call(_gA,YL))vgA[YL]=g_B(YL);var YL;ygA.exports=vgA});var xgA=R((LyY,ggA)=>{var x_B=QL();ggA.exports=function(Q){return x_B(Q)}});var mgA=R((qyY,bgA)=>{var f_B=QL(),oZ=u("fs"),TJ=u("path"),b_B=Bp(),m_B=Yp(),u_B=Xp(),d_B=Gp(),c_B=process.platform!=="win32"&&oZ.realpathSync&&typeof oZ.realpathSync.native==="function"?oZ.realpathSync.native:oZ.realpathSync,fgA=b_B(),l_B=function(){return[TJ.join(fgA,".node_modules"),TJ.join(fgA,".node_libraries")]},p_B=function(Q){try{var B=oZ.statSync(Q,{throwIfNoEntry:!1})}catch(Y){if(Y&&(Y.code==="ENOENT"||Y.code==="ENOTDIR"))return!1;throw Y}return!!B&&(B.isFile()||B.isFIFO())},i_B=function(Q){try{var B=oZ.statSync(Q,{throwIfNoEntry:!1})}catch(Y){if(Y&&(Y.code==="ENOENT"||Y.code==="ENOTDIR"))return!1;throw Y}return!!B&&B.isDirectory()},n_B=function(Q){try{return c_B(Q)}catch(B){if(B.code!=="ENOENT")throw B}return Q},JL=function(Q,B,Y){if(Y&&Y.preserveSymlinks===!1)return Q(B);return B},s_B=function(Q,B){var Y=Q(B);try{var J=JSON.parse(Y);return J}catch(C){}},r_B=function(Q,B,Y){var J=u_B(B,Y,Q);for(var C=0;C{var OO=SgA();OO.core=hgA();OO.isCore=xgA();OO.sync=mgA();ugA.exports=OO});var dgA=R((zyY,a_B)=>{a_B.exports={name:"require-in-the-middle",version:"7.5.2",description:"Module to hook into the Node.js require function",main:"index.js",types:"types/index.d.ts",dependencies:{debug:"^4.3.5","module-details-from-path":"^1.0.3",resolve:"^1.22.8"},devDependencies:{"@babel/core":"^7.9.0","@babel/preset-env":"^7.9.5","@babel/preset-typescript":"^7.9.0","@babel/register":"^7.9.0","ipp-printer":"^1.0.0",patterns:"^1.0.3",roundround:"^0.2.0",semver:"^6.3.0",standard:"^14.3.1",tape:"^4.11.0"},scripts:{test:"npm run test:lint && npm run test:tape && npm run test:babel","test:lint":"standard","test:tape":"tape test/*.js","test:babel":"node test/babel/babel-register.js"},repository:{type:"git",url:"git+https://github.com/nodejs/require-in-the-middle.git"},keywords:["require","hook","shim","shimmer","shimming","patch","monkey","monkeypatch","module","load"],files:["types"],author:"Thomas Watson Steen (https://twitter.com/wa7son)",license:"MIT",bugs:{url:"https://github.com/nodejs/require-in-the-middle/issues"},homepage:"https://github.com/nodejs/require-in-the-middle#readme",engines:{node:">=8.6.0"}}});var $p=R((RyY,Zp)=>{var YK=u("path"),eC=u("module"),WY=GgA()("require-in-the-middle"),o_B=Qp();Zp.exports=CL;Zp.exports.Hook=CL;var Wp,BK;if(eC.isBuiltin)BK=eC.isBuiltin;else if(eC.builtinModules)BK=(A)=>{if(A.startsWith("node:"))return!0;if(Wp===void 0)Wp=new Set(eC.builtinModules);return Wp.has(A)};else{let A=Fp(),[Q,B]=process.versions.node.split(".").map(Number);if(Q===8&&B<8)BK=(Y)=>{if(Y==="http2")return!0;return!!A.core[Y]};else BK=(Y)=>{return!!A.core[Y]}}var PO;function t_B(A,Q){if(!PO)if(u.resolve&&u.resolve.paths)PO=function(B,Y){return u.resolve(B,{paths:[Y]})};else{let B=Fp();PO=function(Y,J){return B.sync(Y,{basedir:J})}}return PO(A,Q)}var e_B=/([/\\]index)?(\.js)?$/;class cgA{constructor(){this._localCache=new Map,this._kRitmExports=Symbol("RitmExports")}has(A,Q){if(this._localCache.has(A))return!0;else if(!Q){let B=u.cache[A];return!!(B&&(this._kRitmExports in B))}else return!1}get(A,Q){let B=this._localCache.get(A);if(B!==void 0)return B;else if(!Q){let Y=u.cache[A];return Y&&Y[this._kRitmExports]}}set(A,Q,B){if(B)this._localCache.set(A,Q);else if(A in u.cache)u.cache[A][this._kRitmExports]=Q;else WY('non-core module is unexpectedly not in require.cache: "%s"',A),this._localCache.set(A,Q)}}function CL(A,Q,B){if(this instanceof CL===!1)return new CL(A,Q,B);if(typeof A==="function")B=A,A=null,Q=null;else if(typeof Q==="function")B=Q,Q=null;if(typeof eC._resolveFilename!=="function"){console.error("Error: Expected Module._resolveFilename to be a function (was: %s) - aborting!",typeof eC._resolveFilename),console.error("Please report this error as an issue related to Node.js %s at %s",process.version,dgA().bugs.url);return}this._cache=new cgA,this._unhooked=!1,this._origRequire=eC.prototype.require;let Y=this,J=new Set,C=Q?Q.internals===!0:!1,X=Array.isArray(A);if(WY("registering require hook"),this._require=eC.prototype.require=function(F){if(Y._unhooked===!0)return WY("ignoring require call - module is soft-unhooked"),Y._origRequire.apply(this,arguments);return G.call(this,arguments,!1)},typeof process.getBuiltinModule==="function")this._origGetBuiltinModule=process.getBuiltinModule,this._getBuiltinModule=process.getBuiltinModule=function(F){if(Y._unhooked===!0)return WY("ignoring process.getBuiltinModule call - module is soft-unhooked"),Y._origGetBuiltinModule.apply(this,arguments);return G.call(this,arguments,!0)};function G(F,W){let Z=F[0],U=BK(Z),$;if(U){if($=Z,Z.startsWith("node:")){let D=Z.slice(5);if(BK(D))$=D}}else if(W)return WY("call to process.getBuiltinModule with unknown built-in id"),Y._origGetBuiltinModule.apply(this,F);else try{$=eC._resolveFilename(Z,this)}catch(D){return WY('Module._resolveFilename("%s") threw %j, calling original Module.require',Z,D.message),Y._origRequire.apply(this,F)}let E,K;if(WY("processing %s module require('%s'): %s",U===!0?"core":"non-core",Z,$),Y._cache.has($,U)===!0)return WY("returning already patched cached module: %s",$),Y._cache.get($,U);let I=J.has($);if(I===!1)J.add($);let V=W?Y._origGetBuiltinModule.apply(this,F):Y._origRequire.apply(this,F);if(I===!0)return WY("module is in the process of being patched already - ignoring: %s",$),V;if(J.delete($),U===!0){if(X===!0&&A.includes($)===!1)return WY("ignoring core module not on whitelist: %s",$),V;E=$}else if(X===!0&&A.includes($)){let D=YK.parse($);E=D.name,K=D.dir}else{let D=o_B($);if(D===void 0)return WY("could not parse filename: %s",$),V;E=D.name,K=D.basedir;let L=AvB(D);WY("resolved filename to module: %s (id: %s, resolved: %s, basedir: %s)",E,Z,L,K);let z=!1;if(X){if(!Z.startsWith(".")&&A.includes(Z))E=Z,z=!0;if(!A.includes(E)&&!A.includes(L))return V;if(A.includes(L)&&L!==E)E=L,z=!0}if(!z){let M;try{M=t_B(E,K)}catch(N){return WY("could not resolve module: %s",E),Y._cache.set($,V,U),V}if(M!==$)if(C===!0)E=E+YK.sep+YK.relative(K,$),WY("preparing to process require of internal file: %s",E);else return WY("ignoring require of non-main module file: %s",M),Y._cache.set($,V,U),V}}Y._cache.set($,V,U),WY("calling require hook: %s",E);let H=B(V,E,K);return Y._cache.set($,H,U),WY("returning module: %s",E),H}}CL.prototype.unhook=function(){if(this._unhooked=!0,this._require===eC.prototype.require)eC.prototype.require=this._origRequire,WY("require unhook successful");else WY("require unhook unsuccessful");if(process.getBuiltinModule!==void 0)if(this._getBuiltinModule===process.getBuiltinModule)process.getBuiltinModule=this._origGetBuiltinModule,WY("process.getBuiltinModule unhook successful");else WY("process.getBuiltinModule unhook unsuccessful")};function AvB(A){let Q=YK.sep!=="/"?A.path.split(YK.sep).join("/"):A.path;return YK.posix.join(A.name,Q).replace(e_B,"")}});var ngA=R((pgA)=>{Object.defineProperty(pgA,"__esModule",{value:!0});pgA.ModuleNameTrie=pgA.ModuleNameSeparator=void 0;pgA.ModuleNameSeparator="/";class Up{constructor(){this.hooks=[],this.children=new Map}}class lgA{constructor(){this._trie=new Up,this._counter=0}insert(A){let Q=this._trie;for(let B of A.moduleName.split(pgA.ModuleNameSeparator)){let Y=Q.children.get(B);if(!Y)Y=new Up,Q.children.set(B,Y);Q=Y}Q.hooks.push({hook:A,insertedId:this._counter++})}search(A,{maintainInsertionOrder:Q,fullOnly:B}={}){let Y=this._trie,J=[],C=!0;for(let X of A.split(pgA.ModuleNameSeparator)){let G=Y.children.get(X);if(!G){C=!1;break}if(!B)J.push(...G.hooks);Y=G}if(B&&C)J.push(...Y.hooks);if(J.length===0)return[];if(J.length===1)return[J[0].hook];if(Q)J.sort((X,G)=>X.insertedId-G.insertedId);return J.map(({hook:X})=>X)}}pgA.ModuleNameTrie=lgA});var ogA=R((rgA)=>{Object.defineProperty(rgA,"__esModule",{value:!0});rgA.RequireInTheMiddleSingleton=void 0;var QvB=$p(),sgA=u("path"),Kp=ngA(),BvB=["afterEach","after","beforeEach","before","describe","it"].every((A)=>{return typeof global[A]==="function"});class TO{constructor(){this._moduleNameTrie=new Kp.ModuleNameTrie,this._initialize()}_initialize(){new QvB.Hook(null,{internals:!0},(A,Q,B)=>{let Y=YvB(Q),J=this._moduleNameTrie.search(Y,{maintainInsertionOrder:!0,fullOnly:B===void 0});for(let{onRequire:C}of J)A=C(A,Q,B);return A})}register(A,Q){let B={moduleName:A,onRequire:Q};return this._moduleNameTrie.insert(B),B}static getInstance(){var A;if(BvB)return new TO;return this._instance=(A=this._instance)!==null&&A!==void 0?A:new TO}}rgA.RequireInTheMiddleSingleton=TO;function YvB(A){return sgA.sep!==Kp.ModuleNameSeparator?A.split(sgA.sep).join(Kp.ModuleNameSeparator):A}});var BxA=R((XvB)=>{var tgA=[],Vp=new WeakMap,egA=new WeakMap,AxA=new Map,QxA=[],JvB={set(A,Q,B){return Vp.get(A)[Q](B)},get(A,Q){if(Q===Symbol.toStringTag)return"Module";let B=egA.get(A)[Q];if(typeof B==="function")return B()},defineProperty(A,Q,B){if(!("value"in B))throw Error("Getters/setters are not supported for exports property descriptors.");return Vp.get(A)[Q](B.value)}};function CvB(A,Q,B,Y,J){AxA.set(A,J),Vp.set(Q,B),egA.set(Q,Y);let C=new Proxy(Q,JvB);tgA.forEach((X)=>X(A,C)),QxA.push([A,C])}XvB.register=CvB;XvB.importHooks=tgA;XvB.specifiers=AxA;XvB.toHook=QxA});var Dp=R((TyY,JK)=>{var YxA=u("path"),$vB=Qp(),{fileURLToPath:JxA}=u("url"),{MessageChannel:UvB}=u("worker_threads"),{importHooks:Ip,specifiers:EvB,toHook:KvB}=BxA();function XxA(A){Ip.push(A),KvB.forEach(([Q,B])=>A(Q,B))}function GxA(A){let Q=Ip.indexOf(A);if(Q>-1)Ip.splice(Q,1)}function CxA(A,Q,B,Y){let J=A(Q,B,Y);if(J&&J!==Q)Q.default=J}var Hp;function VvB(){let{port1:A,port2:Q}=new UvB,B=0,Y;Hp=(G)=>{B++,A.postMessage(G)},A.on("message",()=>{if(B--,Y&&B<=0)Y()}).unref();function J(){let G=setInterval(()=>{},1000),F=new Promise((W)=>{Y=W}).then(()=>{clearInterval(G)});if(B===0)Y();return F}let C=Q;return{registerOptions:{data:{addHookMessagePort:C,include:[]},transferList:[C]},addHookMessagePort:C,waitForAllMessagesAcknowledged:J}}function XL(A,Q,B){if(this instanceof XL===!1)return new XL(A,Q,B);if(typeof A==="function")B=A,A=null,Q=null;else if(typeof Q==="function")B=Q,Q=null;let Y=Q?Q.internals===!0:!1;if(Hp&&Array.isArray(A))Hp(A);this._iitmHook=(J,C)=>{let X=J,G=J.startsWith("node:"),F;if(G)J=J.replace(/^node:/,"");else{if(J.startsWith("file://"))try{J=JxA(J)}catch(Z){}let W=$vB(J);if(W)J=W.name,F=W.basedir}if(A){for(let W of A)if(W===J){if(F){if(Y)J=J+YxA.sep+YxA.relative(F,JxA(X));else if(!F.endsWith(EvB.get(X)))continue}CxA(B,C,J,F)}}else CxA(B,C,J,F)},XxA(this._iitmHook)}XL.prototype.unhook=function(){GxA(this._iitmHook)};JK.exports=XL;JK.exports.Hook=XL;JK.exports.addHook=XxA;JK.exports.removeHook=GxA;JK.exports.createAddHookMessageChannel=VvB});var Np=R((FxA)=>{Object.defineProperty(FxA,"__esModule",{value:!0});FxA.isWrapped=FxA.safeExecuteInTheMiddleAsync=FxA.safeExecuteInTheMiddle=void 0;function IvB(A,Q,B){let Y,J;try{J=A()}catch(C){Y=C}finally{if(Q(Y,J),Y&&!B)throw Y;return J}}FxA.safeExecuteInTheMiddle=IvB;async function HvB(A,Q,B){let Y,J;try{J=await A()}catch(C){Y=C}finally{if(Q(Y,J),Y&&!B)throw Y;return J}}FxA.safeExecuteInTheMiddleAsync=HvB;function DvB(A){return typeof A==="function"&&typeof A.__original==="function"&&typeof A.__unwrap==="function"&&A.__wrapped===!0}FxA.isWrapped=DvB});var VxA=R((ExA)=>{Object.defineProperty(ExA,"__esModule",{value:!0});ExA.InstrumentationBase=void 0;var GL=u("path"),ZxA=u("util"),qvB=mhA(),Lp=rl(),MvB=nhA(),zvB=ogA(),RvB=Dp(),FL=yA(),wvB=$p(),jvB=u("fs"),OvB=Np();class UxA extends MvB.InstrumentationAbstract{constructor(A,Q,B){super(A,Q,B);this._hooks=[],this._requireInTheMiddleSingleton=zvB.RequireInTheMiddleSingleton.getInstance(),this._enabled=!1,this._wrap=(J,C,X)=>{if((0,OvB.isWrapped)(J[C]))this._unwrap(J,C);if(!ZxA.types.isProxy(J))return(0,Lp.wrap)(J,C,X);else{let G=(0,Lp.wrap)(Object.assign({},J),C,X);return Object.defineProperty(J,C,{value:G}),G}},this._unwrap=(J,C)=>{if(!ZxA.types.isProxy(J))return(0,Lp.unwrap)(J,C);else return Object.defineProperty(J,C,{value:J[C]})},this._massWrap=(J,C,X)=>{if(!J){FL.diag.error("must provide one or more modules to patch");return}else if(!Array.isArray(J))J=[J];if(!(C&&Array.isArray(C))){FL.diag.error("must provide one or more functions to wrap on modules");return}J.forEach((G)=>{C.forEach((F)=>{this._wrap(G,F,X)})})},this._massUnwrap=(J,C)=>{if(!J){FL.diag.error("must provide one or more modules to patch");return}else if(!Array.isArray(J))J=[J];if(!(C&&Array.isArray(C))){FL.diag.error("must provide one or more functions to wrap on modules");return}J.forEach((X)=>{C.forEach((G)=>{this._unwrap(X,G)})})};let Y=this.init();if(Y&&!Array.isArray(Y))Y=[Y];if(this._modules=Y||[],this._config.enabled)this.enable()}_warnOnPreloadedModules(){this._modules.forEach((A)=>{let{name:Q}=A;try{let B=u.resolve(Q);if(u.cache[B])this._diag.warn(`Module ${Q} has been loaded before ${this.instrumentationName} so it might not work, please initialize it before requiring ${Q}`)}catch(B){}})}_extractPackageVersion(A){try{let Q=(0,jvB.readFileSync)(GL.join(A,"package.json"),{encoding:"utf8"}),B=JSON.parse(Q).version;return typeof B==="string"?B:void 0}catch(Q){FL.diag.warn("Failed extracting version",A)}return}_onRequire(A,Q,B,Y){var J;if(!Y){if(typeof A.patch==="function"){if(A.moduleExports=Q,this._enabled)return this._diag.debug("Applying instrumentation patch for nodejs core module on require hook",{module:A.name}),A.patch(Q)}return Q}let C=this._extractPackageVersion(Y);if(A.moduleVersion=C,A.name===B){if($xA(A.supportedVersions,C,A.includePrerelease)){if(typeof A.patch==="function"){if(A.moduleExports=Q,this._enabled)return this._diag.debug("Applying instrumentation patch for module on require hook",{module:A.name,version:A.moduleVersion,baseDir:Y}),A.patch(Q,A.moduleVersion)}}return Q}let X=(J=A.files)!==null&&J!==void 0?J:[],G=GL.normalize(B);return X.filter((W)=>W.name===G).filter((W)=>$xA(W.supportedVersions,C,A.includePrerelease)).reduce((W,Z)=>{if(Z.moduleExports=W,this._enabled)return this._diag.debug("Applying instrumentation patch for nodejs module file on require hook",{module:A.name,version:A.moduleVersion,fileName:Z.name,baseDir:Y}),Z.patch(W,A.moduleVersion);return W},Q)}enable(){if(this._enabled)return;if(this._enabled=!0,this._hooks.length>0){for(let A of this._modules){if(typeof A.patch==="function"&&A.moduleExports)this._diag.debug("Applying instrumentation patch for nodejs module on instrumentation enabled",{module:A.name,version:A.moduleVersion}),A.patch(A.moduleExports,A.moduleVersion);for(let Q of A.files)if(Q.moduleExports)this._diag.debug("Applying instrumentation patch for nodejs module file on instrumentation enabled",{module:A.name,version:A.moduleVersion,fileName:Q.name}),Q.patch(Q.moduleExports,A.moduleVersion)}return}this._warnOnPreloadedModules();for(let A of this._modules){let Q=(C,X,G)=>{if(!G&&GL.isAbsolute(X)){let F=GL.parse(X);X=F.name,G=F.dir}return this._onRequire(A,C,X,G)},B=(C,X,G)=>{return this._onRequire(A,C,X,G)},Y=GL.isAbsolute(A.name)?new wvB.Hook([A.name],{internals:!0},B):this._requireInTheMiddleSingleton.register(A.name,B);this._hooks.push(Y);let J=new RvB.Hook([A.name],{internals:!1},Q);this._hooks.push(J)}}disable(){if(!this._enabled)return;this._enabled=!1;for(let A of this._modules){if(typeof A.unpatch==="function"&&A.moduleExports)this._diag.debug("Removing instrumentation patch for nodejs module on instrumentation disabled",{module:A.name,version:A.moduleVersion}),A.unpatch(A.moduleExports,A.moduleVersion);for(let Q of A.files)if(Q.moduleExports)this._diag.debug("Removing instrumentation patch for nodejs module file on instrumentation disabled",{module:A.name,version:A.moduleVersion,fileName:Q.name}),Q.unpatch(Q.moduleExports,A.moduleVersion)}}isEnabled(){return this._enabled}}ExA.InstrumentationBase=UxA;function $xA(A,Q,B){if(typeof Q>"u")return A.includes("*");return A.some((Y)=>{return(0,qvB.satisfies)(Q,Y,{includePrerelease:B})})}});var IxA=R((qp)=>{Object.defineProperty(qp,"__esModule",{value:!0});qp.normalize=void 0;var PvB=u("path");Object.defineProperty(qp,"normalize",{enumerable:!0,get:function(){return PvB.normalize}})});var HxA=R((SO)=>{Object.defineProperty(SO,"__esModule",{value:!0});SO.normalize=SO.InstrumentationBase=void 0;var SvB=VxA();Object.defineProperty(SO,"InstrumentationBase",{enumerable:!0,get:function(){return SvB.InstrumentationBase}});var kvB=IxA();Object.defineProperty(SO,"normalize",{enumerable:!0,get:function(){return kvB.normalize}})});var Mp=R((kO)=>{Object.defineProperty(kO,"__esModule",{value:!0});kO.normalize=kO.InstrumentationBase=void 0;var DxA=HxA();Object.defineProperty(kO,"InstrumentationBase",{enumerable:!0,get:function(){return DxA.InstrumentationBase}});Object.defineProperty(kO,"normalize",{enumerable:!0,get:function(){return DxA.normalize}})});var MxA=R((LxA)=>{Object.defineProperty(LxA,"__esModule",{value:!0});LxA.InstrumentationNodeModuleDefinition=void 0;class NxA{constructor(A,Q,B,Y,J){this.name=A,this.supportedVersions=Q,this.patch=B,this.unpatch=Y,this.files=J||[]}}LxA.InstrumentationNodeModuleDefinition=NxA});var jxA=R((RxA)=>{Object.defineProperty(RxA,"__esModule",{value:!0});RxA.InstrumentationNodeModuleFile=void 0;var yvB=Mp();class zxA{constructor(A,Q,B,Y){this.supportedVersions=Q,this.patch=B,this.unpatch=Y,this.name=(0,yvB.normalize)(A)}}RxA.InstrumentationNodeModuleFile=zxA});var NB=R((QG)=>{Object.defineProperty(QG,"__esModule",{value:!0});QG.safeExecuteInTheMiddleAsync=QG.safeExecuteInTheMiddle=QG.isWrapped=QG.InstrumentationNodeModuleFile=QG.InstrumentationNodeModuleDefinition=QG.InstrumentationBase=QG.registerInstrumentations=void 0;var hvB=svA();Object.defineProperty(QG,"registerInstrumentations",{enumerable:!0,get:function(){return hvB.registerInstrumentations}});var gvB=Mp();Object.defineProperty(QG,"InstrumentationBase",{enumerable:!0,get:function(){return gvB.InstrumentationBase}});var xvB=MxA();Object.defineProperty(QG,"InstrumentationNodeModuleDefinition",{enumerable:!0,get:function(){return xvB.InstrumentationNodeModuleDefinition}});var fvB=jxA();Object.defineProperty(QG,"InstrumentationNodeModuleFile",{enumerable:!0,get:function(){return fvB.InstrumentationNodeModuleFile}});var zp=Np();Object.defineProperty(QG,"isWrapped",{enumerable:!0,get:function(){return zp.isWrapped}});Object.defineProperty(QG,"safeExecuteInTheMiddle",{enumerable:!0,get:function(){return zp.safeExecuteInTheMiddle}});Object.defineProperty(QG,"safeExecuteInTheMiddleAsync",{enumerable:!0,get:function(){return zp.safeExecuteInTheMiddleAsync}})});var Rp=R((OxA)=>{Object.defineProperty(OxA,"__esModule",{value:!0});OxA.createConstMap=void 0;function mvB(A){let Q={},B=A.length;for(let Y=0;Y{Object.defineProperty(DdA,"__esModule",{value:!0});DdA.SEMATTRS_NET_HOST_CARRIER_ICC=DdA.SEMATTRS_NET_HOST_CARRIER_MNC=DdA.SEMATTRS_NET_HOST_CARRIER_MCC=DdA.SEMATTRS_NET_HOST_CARRIER_NAME=DdA.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=DdA.SEMATTRS_NET_HOST_CONNECTION_TYPE=DdA.SEMATTRS_NET_HOST_NAME=DdA.SEMATTRS_NET_HOST_PORT=DdA.SEMATTRS_NET_HOST_IP=DdA.SEMATTRS_NET_PEER_NAME=DdA.SEMATTRS_NET_PEER_PORT=DdA.SEMATTRS_NET_PEER_IP=DdA.SEMATTRS_NET_TRANSPORT=DdA.SEMATTRS_FAAS_INVOKED_REGION=DdA.SEMATTRS_FAAS_INVOKED_PROVIDER=DdA.SEMATTRS_FAAS_INVOKED_NAME=DdA.SEMATTRS_FAAS_COLDSTART=DdA.SEMATTRS_FAAS_CRON=DdA.SEMATTRS_FAAS_TIME=DdA.SEMATTRS_FAAS_DOCUMENT_NAME=DdA.SEMATTRS_FAAS_DOCUMENT_TIME=DdA.SEMATTRS_FAAS_DOCUMENT_OPERATION=DdA.SEMATTRS_FAAS_DOCUMENT_COLLECTION=DdA.SEMATTRS_FAAS_EXECUTION=DdA.SEMATTRS_FAAS_TRIGGER=DdA.SEMATTRS_EXCEPTION_ESCAPED=DdA.SEMATTRS_EXCEPTION_STACKTRACE=DdA.SEMATTRS_EXCEPTION_MESSAGE=DdA.SEMATTRS_EXCEPTION_TYPE=DdA.SEMATTRS_DB_SQL_TABLE=DdA.SEMATTRS_DB_MONGODB_COLLECTION=DdA.SEMATTRS_DB_REDIS_DATABASE_INDEX=DdA.SEMATTRS_DB_HBASE_NAMESPACE=DdA.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=DdA.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=DdA.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=DdA.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=DdA.SEMATTRS_DB_CASSANDRA_TABLE=DdA.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=DdA.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=DdA.SEMATTRS_DB_CASSANDRA_KEYSPACE=DdA.SEMATTRS_DB_MSSQL_INSTANCE_NAME=DdA.SEMATTRS_DB_OPERATION=DdA.SEMATTRS_DB_STATEMENT=DdA.SEMATTRS_DB_NAME=DdA.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=DdA.SEMATTRS_DB_USER=DdA.SEMATTRS_DB_CONNECTION_STRING=DdA.SEMATTRS_DB_SYSTEM=DdA.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=void 0;DdA.SEMATTRS_MESSAGING_DESTINATION_KIND=DdA.SEMATTRS_MESSAGING_DESTINATION=DdA.SEMATTRS_MESSAGING_SYSTEM=DdA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=DdA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=DdA.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=DdA.SEMATTRS_AWS_DYNAMODB_COUNT=DdA.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=DdA.SEMATTRS_AWS_DYNAMODB_SEGMENT=DdA.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=DdA.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=DdA.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=DdA.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=DdA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=DdA.SEMATTRS_AWS_DYNAMODB_SELECT=DdA.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=DdA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=DdA.SEMATTRS_AWS_DYNAMODB_LIMIT=DdA.SEMATTRS_AWS_DYNAMODB_PROJECTION=DdA.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=DdA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=DdA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=DdA.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=DdA.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=DdA.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=DdA.SEMATTRS_HTTP_CLIENT_IP=DdA.SEMATTRS_HTTP_ROUTE=DdA.SEMATTRS_HTTP_SERVER_NAME=DdA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=DdA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=DdA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=DdA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=DdA.SEMATTRS_HTTP_USER_AGENT=DdA.SEMATTRS_HTTP_FLAVOR=DdA.SEMATTRS_HTTP_STATUS_CODE=DdA.SEMATTRS_HTTP_SCHEME=DdA.SEMATTRS_HTTP_HOST=DdA.SEMATTRS_HTTP_TARGET=DdA.SEMATTRS_HTTP_URL=DdA.SEMATTRS_HTTP_METHOD=DdA.SEMATTRS_CODE_LINENO=DdA.SEMATTRS_CODE_FILEPATH=DdA.SEMATTRS_CODE_NAMESPACE=DdA.SEMATTRS_CODE_FUNCTION=DdA.SEMATTRS_THREAD_NAME=DdA.SEMATTRS_THREAD_ID=DdA.SEMATTRS_ENDUSER_SCOPE=DdA.SEMATTRS_ENDUSER_ROLE=DdA.SEMATTRS_ENDUSER_ID=DdA.SEMATTRS_PEER_SERVICE=void 0;DdA.DBSYSTEMVALUES_FILEMAKER=DdA.DBSYSTEMVALUES_DERBY=DdA.DBSYSTEMVALUES_FIREBIRD=DdA.DBSYSTEMVALUES_ADABAS=DdA.DBSYSTEMVALUES_CACHE=DdA.DBSYSTEMVALUES_EDB=DdA.DBSYSTEMVALUES_FIRSTSQL=DdA.DBSYSTEMVALUES_INGRES=DdA.DBSYSTEMVALUES_HANADB=DdA.DBSYSTEMVALUES_MAXDB=DdA.DBSYSTEMVALUES_PROGRESS=DdA.DBSYSTEMVALUES_HSQLDB=DdA.DBSYSTEMVALUES_CLOUDSCAPE=DdA.DBSYSTEMVALUES_HIVE=DdA.DBSYSTEMVALUES_REDSHIFT=DdA.DBSYSTEMVALUES_POSTGRESQL=DdA.DBSYSTEMVALUES_DB2=DdA.DBSYSTEMVALUES_ORACLE=DdA.DBSYSTEMVALUES_MYSQL=DdA.DBSYSTEMVALUES_MSSQL=DdA.DBSYSTEMVALUES_OTHER_SQL=DdA.SemanticAttributes=DdA.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=DdA.SEMATTRS_MESSAGE_COMPRESSED_SIZE=DdA.SEMATTRS_MESSAGE_ID=DdA.SEMATTRS_MESSAGE_TYPE=DdA.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=DdA.SEMATTRS_RPC_JSONRPC_ERROR_CODE=DdA.SEMATTRS_RPC_JSONRPC_REQUEST_ID=DdA.SEMATTRS_RPC_JSONRPC_VERSION=DdA.SEMATTRS_RPC_GRPC_STATUS_CODE=DdA.SEMATTRS_RPC_METHOD=DdA.SEMATTRS_RPC_SERVICE=DdA.SEMATTRS_RPC_SYSTEM=DdA.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=DdA.SEMATTRS_MESSAGING_KAFKA_PARTITION=DdA.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=DdA.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=DdA.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=DdA.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=DdA.SEMATTRS_MESSAGING_CONSUMER_ID=DdA.SEMATTRS_MESSAGING_OPERATION=DdA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=DdA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=DdA.SEMATTRS_MESSAGING_CONVERSATION_ID=DdA.SEMATTRS_MESSAGING_MESSAGE_ID=DdA.SEMATTRS_MESSAGING_URL=DdA.SEMATTRS_MESSAGING_PROTOCOL_VERSION=DdA.SEMATTRS_MESSAGING_PROTOCOL=DdA.SEMATTRS_MESSAGING_TEMP_DESTINATION=void 0;DdA.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=DdA.FaasDocumentOperationValues=DdA.FAASDOCUMENTOPERATIONVALUES_DELETE=DdA.FAASDOCUMENTOPERATIONVALUES_EDIT=DdA.FAASDOCUMENTOPERATIONVALUES_INSERT=DdA.FaasTriggerValues=DdA.FAASTRIGGERVALUES_OTHER=DdA.FAASTRIGGERVALUES_TIMER=DdA.FAASTRIGGERVALUES_PUBSUB=DdA.FAASTRIGGERVALUES_HTTP=DdA.FAASTRIGGERVALUES_DATASOURCE=DdA.DbCassandraConsistencyLevelValues=DdA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=DdA.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=DdA.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=DdA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=DdA.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=DdA.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=DdA.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=DdA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=DdA.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=DdA.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=DdA.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=DdA.DbSystemValues=DdA.DBSYSTEMVALUES_COCKROACHDB=DdA.DBSYSTEMVALUES_MEMCACHED=DdA.DBSYSTEMVALUES_ELASTICSEARCH=DdA.DBSYSTEMVALUES_GEODE=DdA.DBSYSTEMVALUES_NEO4J=DdA.DBSYSTEMVALUES_DYNAMODB=DdA.DBSYSTEMVALUES_COSMOSDB=DdA.DBSYSTEMVALUES_COUCHDB=DdA.DBSYSTEMVALUES_COUCHBASE=DdA.DBSYSTEMVALUES_REDIS=DdA.DBSYSTEMVALUES_MONGODB=DdA.DBSYSTEMVALUES_HBASE=DdA.DBSYSTEMVALUES_CASSANDRA=DdA.DBSYSTEMVALUES_COLDFUSION=DdA.DBSYSTEMVALUES_H2=DdA.DBSYSTEMVALUES_VERTICA=DdA.DBSYSTEMVALUES_TERADATA=DdA.DBSYSTEMVALUES_SYBASE=DdA.DBSYSTEMVALUES_SQLITE=DdA.DBSYSTEMVALUES_POINTBASE=DdA.DBSYSTEMVALUES_PERVASIVE=DdA.DBSYSTEMVALUES_NETEZZA=DdA.DBSYSTEMVALUES_MARIADB=DdA.DBSYSTEMVALUES_INTERBASE=DdA.DBSYSTEMVALUES_INSTANTDB=DdA.DBSYSTEMVALUES_INFORMIX=void 0;DdA.MESSAGINGOPERATIONVALUES_RECEIVE=DdA.MessagingDestinationKindValues=DdA.MESSAGINGDESTINATIONKINDVALUES_TOPIC=DdA.MESSAGINGDESTINATIONKINDVALUES_QUEUE=DdA.HttpFlavorValues=DdA.HTTPFLAVORVALUES_QUIC=DdA.HTTPFLAVORVALUES_SPDY=DdA.HTTPFLAVORVALUES_HTTP_2_0=DdA.HTTPFLAVORVALUES_HTTP_1_1=DdA.HTTPFLAVORVALUES_HTTP_1_0=DdA.NetHostConnectionSubtypeValues=DdA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=DdA.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=DdA.NETHOSTCONNECTIONSUBTYPEVALUES_NR=DdA.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=DdA.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=DdA.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=DdA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=DdA.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=DdA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=DdA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=DdA.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=DdA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=DdA.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=DdA.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=DdA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=DdA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=DdA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=DdA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=DdA.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=DdA.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=DdA.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=DdA.NetHostConnectionTypeValues=DdA.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=DdA.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=DdA.NETHOSTCONNECTIONTYPEVALUES_CELL=DdA.NETHOSTCONNECTIONTYPEVALUES_WIRED=DdA.NETHOSTCONNECTIONTYPEVALUES_WIFI=DdA.NetTransportValues=DdA.NETTRANSPORTVALUES_OTHER=DdA.NETTRANSPORTVALUES_INPROC=DdA.NETTRANSPORTVALUES_PIPE=DdA.NETTRANSPORTVALUES_UNIX=DdA.NETTRANSPORTVALUES_IP=DdA.NETTRANSPORTVALUES_IP_UDP=DdA.NETTRANSPORTVALUES_IP_TCP=DdA.FaasInvokedProviderValues=DdA.FAASINVOKEDPROVIDERVALUES_GCP=DdA.FAASINVOKEDPROVIDERVALUES_AZURE=DdA.FAASINVOKEDPROVIDERVALUES_AWS=void 0;DdA.MessageTypeValues=DdA.MESSAGETYPEVALUES_RECEIVED=DdA.MESSAGETYPEVALUES_SENT=DdA.RpcGrpcStatusCodeValues=DdA.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=DdA.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=DdA.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=DdA.RPCGRPCSTATUSCODEVALUES_INTERNAL=DdA.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=DdA.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=DdA.RPCGRPCSTATUSCODEVALUES_ABORTED=DdA.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=DdA.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=DdA.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=DdA.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=DdA.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=DdA.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=DdA.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=DdA.RPCGRPCSTATUSCODEVALUES_UNKNOWN=DdA.RPCGRPCSTATUSCODEVALUES_CANCELLED=DdA.RPCGRPCSTATUSCODEVALUES_OK=DdA.MessagingOperationValues=DdA.MESSAGINGOPERATIONVALUES_PROCESS=void 0;var y5=Rp(),TxA="aws.lambda.invoked_arn",SxA="db.system",kxA="db.connection_string",_xA="db.user",vxA="db.jdbc.driver_classname",yxA="db.name",hxA="db.statement",gxA="db.operation",xxA="db.mssql.instance_name",fxA="db.cassandra.keyspace",bxA="db.cassandra.page_size",mxA="db.cassandra.consistency_level",uxA="db.cassandra.table",dxA="db.cassandra.idempotence",cxA="db.cassandra.speculative_execution_count",lxA="db.cassandra.coordinator.id",pxA="db.cassandra.coordinator.dc",ixA="db.hbase.namespace",nxA="db.redis.database_index",sxA="db.mongodb.collection",rxA="db.sql.table",axA="exception.type",oxA="exception.message",txA="exception.stacktrace",exA="exception.escaped",AfA="faas.trigger",QfA="faas.execution",BfA="faas.document.collection",YfA="faas.document.operation",JfA="faas.document.time",CfA="faas.document.name",XfA="faas.time",GfA="faas.cron",FfA="faas.coldstart",WfA="faas.invoked_name",ZfA="faas.invoked_provider",$fA="faas.invoked_region",UfA="net.transport",EfA="net.peer.ip",KfA="net.peer.port",VfA="net.peer.name",IfA="net.host.ip",HfA="net.host.port",DfA="net.host.name",NfA="net.host.connection.type",LfA="net.host.connection.subtype",qfA="net.host.carrier.name",MfA="net.host.carrier.mcc",zfA="net.host.carrier.mnc",RfA="net.host.carrier.icc",wfA="peer.service",jfA="enduser.id",OfA="enduser.role",PfA="enduser.scope",TfA="thread.id",SfA="thread.name",kfA="code.function",_fA="code.namespace",vfA="code.filepath",yfA="code.lineno",hfA="http.method",gfA="http.url",xfA="http.target",ffA="http.host",bfA="http.scheme",mfA="http.status_code",ufA="http.flavor",dfA="http.user_agent",cfA="http.request_content_length",lfA="http.request_content_length_uncompressed",pfA="http.response_content_length",ifA="http.response_content_length_uncompressed",nfA="http.server_name",sfA="http.route",rfA="http.client_ip",afA="aws.dynamodb.table_names",ofA="aws.dynamodb.consumed_capacity",tfA="aws.dynamodb.item_collection_metrics",efA="aws.dynamodb.provisioned_read_capacity",AbA="aws.dynamodb.provisioned_write_capacity",QbA="aws.dynamodb.consistent_read",BbA="aws.dynamodb.projection",YbA="aws.dynamodb.limit",JbA="aws.dynamodb.attributes_to_get",CbA="aws.dynamodb.index_name",XbA="aws.dynamodb.select",GbA="aws.dynamodb.global_secondary_indexes",FbA="aws.dynamodb.local_secondary_indexes",WbA="aws.dynamodb.exclusive_start_table",ZbA="aws.dynamodb.table_count",$bA="aws.dynamodb.scan_forward",UbA="aws.dynamodb.segment",EbA="aws.dynamodb.total_segments",KbA="aws.dynamodb.count",VbA="aws.dynamodb.scanned_count",IbA="aws.dynamodb.attribute_definitions",HbA="aws.dynamodb.global_secondary_index_updates",DbA="messaging.system",NbA="messaging.destination",LbA="messaging.destination_kind",qbA="messaging.temp_destination",MbA="messaging.protocol",zbA="messaging.protocol_version",RbA="messaging.url",wbA="messaging.message_id",jbA="messaging.conversation_id",ObA="messaging.message_payload_size_bytes",PbA="messaging.message_payload_compressed_size_bytes",TbA="messaging.operation",SbA="messaging.consumer_id",kbA="messaging.rabbitmq.routing_key",_bA="messaging.kafka.message_key",vbA="messaging.kafka.consumer_group",ybA="messaging.kafka.client_id",hbA="messaging.kafka.partition",gbA="messaging.kafka.tombstone",xbA="rpc.system",fbA="rpc.service",bbA="rpc.method",mbA="rpc.grpc.status_code",ubA="rpc.jsonrpc.version",dbA="rpc.jsonrpc.request_id",cbA="rpc.jsonrpc.error_code",lbA="rpc.jsonrpc.error_message",pbA="message.type",ibA="message.id",nbA="message.compressed_size",sbA="message.uncompressed_size";DdA.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=TxA;DdA.SEMATTRS_DB_SYSTEM=SxA;DdA.SEMATTRS_DB_CONNECTION_STRING=kxA;DdA.SEMATTRS_DB_USER=_xA;DdA.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=vxA;DdA.SEMATTRS_DB_NAME=yxA;DdA.SEMATTRS_DB_STATEMENT=hxA;DdA.SEMATTRS_DB_OPERATION=gxA;DdA.SEMATTRS_DB_MSSQL_INSTANCE_NAME=xxA;DdA.SEMATTRS_DB_CASSANDRA_KEYSPACE=fxA;DdA.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=bxA;DdA.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=mxA;DdA.SEMATTRS_DB_CASSANDRA_TABLE=uxA;DdA.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=dxA;DdA.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=cxA;DdA.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=lxA;DdA.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=pxA;DdA.SEMATTRS_DB_HBASE_NAMESPACE=ixA;DdA.SEMATTRS_DB_REDIS_DATABASE_INDEX=nxA;DdA.SEMATTRS_DB_MONGODB_COLLECTION=sxA;DdA.SEMATTRS_DB_SQL_TABLE=rxA;DdA.SEMATTRS_EXCEPTION_TYPE=axA;DdA.SEMATTRS_EXCEPTION_MESSAGE=oxA;DdA.SEMATTRS_EXCEPTION_STACKTRACE=txA;DdA.SEMATTRS_EXCEPTION_ESCAPED=exA;DdA.SEMATTRS_FAAS_TRIGGER=AfA;DdA.SEMATTRS_FAAS_EXECUTION=QfA;DdA.SEMATTRS_FAAS_DOCUMENT_COLLECTION=BfA;DdA.SEMATTRS_FAAS_DOCUMENT_OPERATION=YfA;DdA.SEMATTRS_FAAS_DOCUMENT_TIME=JfA;DdA.SEMATTRS_FAAS_DOCUMENT_NAME=CfA;DdA.SEMATTRS_FAAS_TIME=XfA;DdA.SEMATTRS_FAAS_CRON=GfA;DdA.SEMATTRS_FAAS_COLDSTART=FfA;DdA.SEMATTRS_FAAS_INVOKED_NAME=WfA;DdA.SEMATTRS_FAAS_INVOKED_PROVIDER=ZfA;DdA.SEMATTRS_FAAS_INVOKED_REGION=$fA;DdA.SEMATTRS_NET_TRANSPORT=UfA;DdA.SEMATTRS_NET_PEER_IP=EfA;DdA.SEMATTRS_NET_PEER_PORT=KfA;DdA.SEMATTRS_NET_PEER_NAME=VfA;DdA.SEMATTRS_NET_HOST_IP=IfA;DdA.SEMATTRS_NET_HOST_PORT=HfA;DdA.SEMATTRS_NET_HOST_NAME=DfA;DdA.SEMATTRS_NET_HOST_CONNECTION_TYPE=NfA;DdA.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=LfA;DdA.SEMATTRS_NET_HOST_CARRIER_NAME=qfA;DdA.SEMATTRS_NET_HOST_CARRIER_MCC=MfA;DdA.SEMATTRS_NET_HOST_CARRIER_MNC=zfA;DdA.SEMATTRS_NET_HOST_CARRIER_ICC=RfA;DdA.SEMATTRS_PEER_SERVICE=wfA;DdA.SEMATTRS_ENDUSER_ID=jfA;DdA.SEMATTRS_ENDUSER_ROLE=OfA;DdA.SEMATTRS_ENDUSER_SCOPE=PfA;DdA.SEMATTRS_THREAD_ID=TfA;DdA.SEMATTRS_THREAD_NAME=SfA;DdA.SEMATTRS_CODE_FUNCTION=kfA;DdA.SEMATTRS_CODE_NAMESPACE=_fA;DdA.SEMATTRS_CODE_FILEPATH=vfA;DdA.SEMATTRS_CODE_LINENO=yfA;DdA.SEMATTRS_HTTP_METHOD=hfA;DdA.SEMATTRS_HTTP_URL=gfA;DdA.SEMATTRS_HTTP_TARGET=xfA;DdA.SEMATTRS_HTTP_HOST=ffA;DdA.SEMATTRS_HTTP_SCHEME=bfA;DdA.SEMATTRS_HTTP_STATUS_CODE=mfA;DdA.SEMATTRS_HTTP_FLAVOR=ufA;DdA.SEMATTRS_HTTP_USER_AGENT=dfA;DdA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=cfA;DdA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=lfA;DdA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=pfA;DdA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=ifA;DdA.SEMATTRS_HTTP_SERVER_NAME=nfA;DdA.SEMATTRS_HTTP_ROUTE=sfA;DdA.SEMATTRS_HTTP_CLIENT_IP=rfA;DdA.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=afA;DdA.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=ofA;DdA.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=tfA;DdA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=efA;DdA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=AbA;DdA.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=QbA;DdA.SEMATTRS_AWS_DYNAMODB_PROJECTION=BbA;DdA.SEMATTRS_AWS_DYNAMODB_LIMIT=YbA;DdA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=JbA;DdA.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=CbA;DdA.SEMATTRS_AWS_DYNAMODB_SELECT=XbA;DdA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=GbA;DdA.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=FbA;DdA.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=WbA;DdA.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=ZbA;DdA.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=$bA;DdA.SEMATTRS_AWS_DYNAMODB_SEGMENT=UbA;DdA.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=EbA;DdA.SEMATTRS_AWS_DYNAMODB_COUNT=KbA;DdA.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=VbA;DdA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=IbA;DdA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=HbA;DdA.SEMATTRS_MESSAGING_SYSTEM=DbA;DdA.SEMATTRS_MESSAGING_DESTINATION=NbA;DdA.SEMATTRS_MESSAGING_DESTINATION_KIND=LbA;DdA.SEMATTRS_MESSAGING_TEMP_DESTINATION=qbA;DdA.SEMATTRS_MESSAGING_PROTOCOL=MbA;DdA.SEMATTRS_MESSAGING_PROTOCOL_VERSION=zbA;DdA.SEMATTRS_MESSAGING_URL=RbA;DdA.SEMATTRS_MESSAGING_MESSAGE_ID=wbA;DdA.SEMATTRS_MESSAGING_CONVERSATION_ID=jbA;DdA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=ObA;DdA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=PbA;DdA.SEMATTRS_MESSAGING_OPERATION=TbA;DdA.SEMATTRS_MESSAGING_CONSUMER_ID=SbA;DdA.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=kbA;DdA.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=_bA;DdA.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=vbA;DdA.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=ybA;DdA.SEMATTRS_MESSAGING_KAFKA_PARTITION=hbA;DdA.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=gbA;DdA.SEMATTRS_RPC_SYSTEM=xbA;DdA.SEMATTRS_RPC_SERVICE=fbA;DdA.SEMATTRS_RPC_METHOD=bbA;DdA.SEMATTRS_RPC_GRPC_STATUS_CODE=mbA;DdA.SEMATTRS_RPC_JSONRPC_VERSION=ubA;DdA.SEMATTRS_RPC_JSONRPC_REQUEST_ID=dbA;DdA.SEMATTRS_RPC_JSONRPC_ERROR_CODE=cbA;DdA.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=lbA;DdA.SEMATTRS_MESSAGE_TYPE=pbA;DdA.SEMATTRS_MESSAGE_ID=ibA;DdA.SEMATTRS_MESSAGE_COMPRESSED_SIZE=nbA;DdA.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=sbA;DdA.SemanticAttributes=(0,y5.createConstMap)([TxA,SxA,kxA,_xA,vxA,yxA,hxA,gxA,xxA,fxA,bxA,mxA,uxA,dxA,cxA,lxA,pxA,ixA,nxA,sxA,rxA,axA,oxA,txA,exA,AfA,QfA,BfA,YfA,JfA,CfA,XfA,GfA,FfA,WfA,ZfA,$fA,UfA,EfA,KfA,VfA,IfA,HfA,DfA,NfA,LfA,qfA,MfA,zfA,RfA,wfA,jfA,OfA,PfA,TfA,SfA,kfA,_fA,vfA,yfA,hfA,gfA,xfA,ffA,bfA,mfA,ufA,dfA,cfA,lfA,pfA,ifA,nfA,sfA,rfA,afA,ofA,tfA,efA,AbA,QbA,BbA,YbA,JbA,CbA,XbA,GbA,FbA,WbA,ZbA,$bA,UbA,EbA,KbA,VbA,IbA,HbA,DbA,NbA,LbA,qbA,MbA,zbA,RbA,wbA,jbA,ObA,PbA,TbA,SbA,kbA,_bA,vbA,ybA,hbA,gbA,xbA,fbA,bbA,mbA,ubA,dbA,cbA,lbA,pbA,ibA,nbA,sbA]);var rbA="other_sql",abA="mssql",obA="mysql",tbA="oracle",ebA="db2",AmA="postgresql",QmA="redshift",BmA="hive",YmA="cloudscape",JmA="hsqldb",CmA="progress",XmA="maxdb",GmA="hanadb",FmA="ingres",WmA="firstsql",ZmA="edb",$mA="cache",UmA="adabas",EmA="firebird",KmA="derby",VmA="filemaker",ImA="informix",HmA="instantdb",DmA="interbase",NmA="mariadb",LmA="netezza",qmA="pervasive",MmA="pointbase",zmA="sqlite",RmA="sybase",wmA="teradata",jmA="vertica",OmA="h2",PmA="coldfusion",TmA="cassandra",SmA="hbase",kmA="mongodb",_mA="redis",vmA="couchbase",ymA="couchdb",hmA="cosmosdb",gmA="dynamodb",xmA="neo4j",fmA="geode",bmA="elasticsearch",mmA="memcached",umA="cockroachdb";DdA.DBSYSTEMVALUES_OTHER_SQL=rbA;DdA.DBSYSTEMVALUES_MSSQL=abA;DdA.DBSYSTEMVALUES_MYSQL=obA;DdA.DBSYSTEMVALUES_ORACLE=tbA;DdA.DBSYSTEMVALUES_DB2=ebA;DdA.DBSYSTEMVALUES_POSTGRESQL=AmA;DdA.DBSYSTEMVALUES_REDSHIFT=QmA;DdA.DBSYSTEMVALUES_HIVE=BmA;DdA.DBSYSTEMVALUES_CLOUDSCAPE=YmA;DdA.DBSYSTEMVALUES_HSQLDB=JmA;DdA.DBSYSTEMVALUES_PROGRESS=CmA;DdA.DBSYSTEMVALUES_MAXDB=XmA;DdA.DBSYSTEMVALUES_HANADB=GmA;DdA.DBSYSTEMVALUES_INGRES=FmA;DdA.DBSYSTEMVALUES_FIRSTSQL=WmA;DdA.DBSYSTEMVALUES_EDB=ZmA;DdA.DBSYSTEMVALUES_CACHE=$mA;DdA.DBSYSTEMVALUES_ADABAS=UmA;DdA.DBSYSTEMVALUES_FIREBIRD=EmA;DdA.DBSYSTEMVALUES_DERBY=KmA;DdA.DBSYSTEMVALUES_FILEMAKER=VmA;DdA.DBSYSTEMVALUES_INFORMIX=ImA;DdA.DBSYSTEMVALUES_INSTANTDB=HmA;DdA.DBSYSTEMVALUES_INTERBASE=DmA;DdA.DBSYSTEMVALUES_MARIADB=NmA;DdA.DBSYSTEMVALUES_NETEZZA=LmA;DdA.DBSYSTEMVALUES_PERVASIVE=qmA;DdA.DBSYSTEMVALUES_POINTBASE=MmA;DdA.DBSYSTEMVALUES_SQLITE=zmA;DdA.DBSYSTEMVALUES_SYBASE=RmA;DdA.DBSYSTEMVALUES_TERADATA=wmA;DdA.DBSYSTEMVALUES_VERTICA=jmA;DdA.DBSYSTEMVALUES_H2=OmA;DdA.DBSYSTEMVALUES_COLDFUSION=PmA;DdA.DBSYSTEMVALUES_CASSANDRA=TmA;DdA.DBSYSTEMVALUES_HBASE=SmA;DdA.DBSYSTEMVALUES_MONGODB=kmA;DdA.DBSYSTEMVALUES_REDIS=_mA;DdA.DBSYSTEMVALUES_COUCHBASE=vmA;DdA.DBSYSTEMVALUES_COUCHDB=ymA;DdA.DBSYSTEMVALUES_COSMOSDB=hmA;DdA.DBSYSTEMVALUES_DYNAMODB=gmA;DdA.DBSYSTEMVALUES_NEO4J=xmA;DdA.DBSYSTEMVALUES_GEODE=fmA;DdA.DBSYSTEMVALUES_ELASTICSEARCH=bmA;DdA.DBSYSTEMVALUES_MEMCACHED=mmA;DdA.DBSYSTEMVALUES_COCKROACHDB=umA;DdA.DbSystemValues=(0,y5.createConstMap)([rbA,abA,obA,tbA,ebA,AmA,QmA,BmA,YmA,JmA,CmA,XmA,GmA,FmA,WmA,ZmA,$mA,UmA,EmA,KmA,VmA,ImA,HmA,DmA,NmA,LmA,qmA,MmA,zmA,RmA,wmA,jmA,OmA,PmA,TmA,SmA,kmA,_mA,vmA,ymA,hmA,gmA,xmA,fmA,bmA,mmA,umA]);var dmA="all",cmA="each_quorum",lmA="quorum",pmA="local_quorum",imA="one",nmA="two",smA="three",rmA="local_one",amA="any",omA="serial",tmA="local_serial";DdA.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=dmA;DdA.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=cmA;DdA.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=lmA;DdA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=pmA;DdA.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=imA;DdA.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=nmA;DdA.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=smA;DdA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=rmA;DdA.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=amA;DdA.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=omA;DdA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=tmA;DdA.DbCassandraConsistencyLevelValues=(0,y5.createConstMap)([dmA,cmA,lmA,pmA,imA,nmA,smA,rmA,amA,omA,tmA]);var emA="datasource",AuA="http",QuA="pubsub",BuA="timer",YuA="other";DdA.FAASTRIGGERVALUES_DATASOURCE=emA;DdA.FAASTRIGGERVALUES_HTTP=AuA;DdA.FAASTRIGGERVALUES_PUBSUB=QuA;DdA.FAASTRIGGERVALUES_TIMER=BuA;DdA.FAASTRIGGERVALUES_OTHER=YuA;DdA.FaasTriggerValues=(0,y5.createConstMap)([emA,AuA,QuA,BuA,YuA]);var JuA="insert",CuA="edit",XuA="delete";DdA.FAASDOCUMENTOPERATIONVALUES_INSERT=JuA;DdA.FAASDOCUMENTOPERATIONVALUES_EDIT=CuA;DdA.FAASDOCUMENTOPERATIONVALUES_DELETE=XuA;DdA.FaasDocumentOperationValues=(0,y5.createConstMap)([JuA,CuA,XuA]);var GuA="alibaba_cloud",FuA="aws",WuA="azure",ZuA="gcp";DdA.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=GuA;DdA.FAASINVOKEDPROVIDERVALUES_AWS=FuA;DdA.FAASINVOKEDPROVIDERVALUES_AZURE=WuA;DdA.FAASINVOKEDPROVIDERVALUES_GCP=ZuA;DdA.FaasInvokedProviderValues=(0,y5.createConstMap)([GuA,FuA,WuA,ZuA]);var $uA="ip_tcp",UuA="ip_udp",EuA="ip",KuA="unix",VuA="pipe",IuA="inproc",HuA="other";DdA.NETTRANSPORTVALUES_IP_TCP=$uA;DdA.NETTRANSPORTVALUES_IP_UDP=UuA;DdA.NETTRANSPORTVALUES_IP=EuA;DdA.NETTRANSPORTVALUES_UNIX=KuA;DdA.NETTRANSPORTVALUES_PIPE=VuA;DdA.NETTRANSPORTVALUES_INPROC=IuA;DdA.NETTRANSPORTVALUES_OTHER=HuA;DdA.NetTransportValues=(0,y5.createConstMap)([$uA,UuA,EuA,KuA,VuA,IuA,HuA]);var DuA="wifi",NuA="wired",LuA="cell",quA="unavailable",MuA="unknown";DdA.NETHOSTCONNECTIONTYPEVALUES_WIFI=DuA;DdA.NETHOSTCONNECTIONTYPEVALUES_WIRED=NuA;DdA.NETHOSTCONNECTIONTYPEVALUES_CELL=LuA;DdA.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=quA;DdA.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=MuA;DdA.NetHostConnectionTypeValues=(0,y5.createConstMap)([DuA,NuA,LuA,quA,MuA]);var zuA="gprs",RuA="edge",wuA="umts",juA="cdma",OuA="evdo_0",PuA="evdo_a",TuA="cdma2000_1xrtt",SuA="hsdpa",kuA="hsupa",_uA="hspa",vuA="iden",yuA="evdo_b",huA="lte",guA="ehrpd",xuA="hspap",fuA="gsm",buA="td_scdma",muA="iwlan",uuA="nr",duA="nrnsa",cuA="lte_ca";DdA.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=zuA;DdA.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=RuA;DdA.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=wuA;DdA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=juA;DdA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=OuA;DdA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=PuA;DdA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=TuA;DdA.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=SuA;DdA.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=kuA;DdA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=_uA;DdA.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=vuA;DdA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=yuA;DdA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=huA;DdA.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=guA;DdA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=xuA;DdA.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=fuA;DdA.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=buA;DdA.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=muA;DdA.NETHOSTCONNECTIONSUBTYPEVALUES_NR=uuA;DdA.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=duA;DdA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=cuA;DdA.NetHostConnectionSubtypeValues=(0,y5.createConstMap)([zuA,RuA,wuA,juA,OuA,PuA,TuA,SuA,kuA,_uA,vuA,yuA,huA,guA,xuA,fuA,buA,muA,uuA,duA,cuA]);var luA="1.0",puA="1.1",iuA="2.0",nuA="SPDY",suA="QUIC";DdA.HTTPFLAVORVALUES_HTTP_1_0=luA;DdA.HTTPFLAVORVALUES_HTTP_1_1=puA;DdA.HTTPFLAVORVALUES_HTTP_2_0=iuA;DdA.HTTPFLAVORVALUES_SPDY=nuA;DdA.HTTPFLAVORVALUES_QUIC=suA;DdA.HttpFlavorValues={HTTP_1_0:luA,HTTP_1_1:puA,HTTP_2_0:iuA,SPDY:nuA,QUIC:suA};var ruA="queue",auA="topic";DdA.MESSAGINGDESTINATIONKINDVALUES_QUEUE=ruA;DdA.MESSAGINGDESTINATIONKINDVALUES_TOPIC=auA;DdA.MessagingDestinationKindValues=(0,y5.createConstMap)([ruA,auA]);var ouA="receive",tuA="process";DdA.MESSAGINGOPERATIONVALUES_RECEIVE=ouA;DdA.MESSAGINGOPERATIONVALUES_PROCESS=tuA;DdA.MessagingOperationValues=(0,y5.createConstMap)([ouA,tuA]);var euA=0,AdA=1,QdA=2,BdA=3,YdA=4,JdA=5,CdA=6,XdA=7,GdA=8,FdA=9,WdA=10,ZdA=11,$dA=12,UdA=13,EdA=14,KdA=15,VdA=16;DdA.RPCGRPCSTATUSCODEVALUES_OK=euA;DdA.RPCGRPCSTATUSCODEVALUES_CANCELLED=AdA;DdA.RPCGRPCSTATUSCODEVALUES_UNKNOWN=QdA;DdA.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=BdA;DdA.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=YdA;DdA.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=JdA;DdA.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=CdA;DdA.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=XdA;DdA.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=GdA;DdA.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=FdA;DdA.RPCGRPCSTATUSCODEVALUES_ABORTED=WdA;DdA.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=ZdA;DdA.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=$dA;DdA.RPCGRPCSTATUSCODEVALUES_INTERNAL=UdA;DdA.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=EdA;DdA.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=KdA;DdA.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=VdA;DdA.RpcGrpcStatusCodeValues={OK:euA,CANCELLED:AdA,UNKNOWN:QdA,INVALID_ARGUMENT:BdA,DEADLINE_EXCEEDED:YdA,NOT_FOUND:JdA,ALREADY_EXISTS:CdA,PERMISSION_DENIED:XdA,RESOURCE_EXHAUSTED:GdA,FAILED_PRECONDITION:FdA,ABORTED:WdA,OUT_OF_RANGE:ZdA,UNIMPLEMENTED:$dA,INTERNAL:UdA,UNAVAILABLE:EdA,DATA_LOSS:KdA,UNAUTHENTICATED:VdA};var IdA="SENT",HdA="RECEIVED";DdA.MESSAGETYPEVALUES_SENT=IdA;DdA.MESSAGETYPEVALUES_RECEIVED=HdA;DdA.MessageTypeValues=(0,y5.createConstMap)([IdA,HdA])});var jdA=R((tZ)=>{var ffB=tZ&&tZ.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),bfB=tZ&&tZ.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))ffB(Q,A,B)};Object.defineProperty(tZ,"__esModule",{value:!0});bfB(wdA(),tZ)});var QpA=R((olA)=>{Object.defineProperty(olA,"__esModule",{value:!0});olA.SEMRESATTRS_K8S_STATEFULSET_NAME=olA.SEMRESATTRS_K8S_STATEFULSET_UID=olA.SEMRESATTRS_K8S_DEPLOYMENT_NAME=olA.SEMRESATTRS_K8S_DEPLOYMENT_UID=olA.SEMRESATTRS_K8S_REPLICASET_NAME=olA.SEMRESATTRS_K8S_REPLICASET_UID=olA.SEMRESATTRS_K8S_CONTAINER_NAME=olA.SEMRESATTRS_K8S_POD_NAME=olA.SEMRESATTRS_K8S_POD_UID=olA.SEMRESATTRS_K8S_NAMESPACE_NAME=olA.SEMRESATTRS_K8S_NODE_UID=olA.SEMRESATTRS_K8S_NODE_NAME=olA.SEMRESATTRS_K8S_CLUSTER_NAME=olA.SEMRESATTRS_HOST_IMAGE_VERSION=olA.SEMRESATTRS_HOST_IMAGE_ID=olA.SEMRESATTRS_HOST_IMAGE_NAME=olA.SEMRESATTRS_HOST_ARCH=olA.SEMRESATTRS_HOST_TYPE=olA.SEMRESATTRS_HOST_NAME=olA.SEMRESATTRS_HOST_ID=olA.SEMRESATTRS_FAAS_MAX_MEMORY=olA.SEMRESATTRS_FAAS_INSTANCE=olA.SEMRESATTRS_FAAS_VERSION=olA.SEMRESATTRS_FAAS_ID=olA.SEMRESATTRS_FAAS_NAME=olA.SEMRESATTRS_DEVICE_MODEL_NAME=olA.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=olA.SEMRESATTRS_DEVICE_ID=olA.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=olA.SEMRESATTRS_CONTAINER_IMAGE_TAG=olA.SEMRESATTRS_CONTAINER_IMAGE_NAME=olA.SEMRESATTRS_CONTAINER_RUNTIME=olA.SEMRESATTRS_CONTAINER_ID=olA.SEMRESATTRS_CONTAINER_NAME=olA.SEMRESATTRS_AWS_LOG_STREAM_ARNS=olA.SEMRESATTRS_AWS_LOG_STREAM_NAMES=olA.SEMRESATTRS_AWS_LOG_GROUP_ARNS=olA.SEMRESATTRS_AWS_LOG_GROUP_NAMES=olA.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=olA.SEMRESATTRS_AWS_ECS_TASK_REVISION=olA.SEMRESATTRS_AWS_ECS_TASK_FAMILY=olA.SEMRESATTRS_AWS_ECS_TASK_ARN=olA.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=olA.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=olA.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=olA.SEMRESATTRS_CLOUD_PLATFORM=olA.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=olA.SEMRESATTRS_CLOUD_REGION=olA.SEMRESATTRS_CLOUD_ACCOUNT_ID=olA.SEMRESATTRS_CLOUD_PROVIDER=void 0;olA.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=olA.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=olA.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=olA.CLOUDPLATFORMVALUES_AZURE_AKS=olA.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=olA.CLOUDPLATFORMVALUES_AZURE_VM=olA.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=olA.CLOUDPLATFORMVALUES_AWS_LAMBDA=olA.CLOUDPLATFORMVALUES_AWS_EKS=olA.CLOUDPLATFORMVALUES_AWS_ECS=olA.CLOUDPLATFORMVALUES_AWS_EC2=olA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=olA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=olA.CloudProviderValues=olA.CLOUDPROVIDERVALUES_GCP=olA.CLOUDPROVIDERVALUES_AZURE=olA.CLOUDPROVIDERVALUES_AWS=olA.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=olA.SemanticResourceAttributes=olA.SEMRESATTRS_WEBENGINE_DESCRIPTION=olA.SEMRESATTRS_WEBENGINE_VERSION=olA.SEMRESATTRS_WEBENGINE_NAME=olA.SEMRESATTRS_TELEMETRY_AUTO_VERSION=olA.SEMRESATTRS_TELEMETRY_SDK_VERSION=olA.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=olA.SEMRESATTRS_TELEMETRY_SDK_NAME=olA.SEMRESATTRS_SERVICE_VERSION=olA.SEMRESATTRS_SERVICE_INSTANCE_ID=olA.SEMRESATTRS_SERVICE_NAMESPACE=olA.SEMRESATTRS_SERVICE_NAME=olA.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=olA.SEMRESATTRS_PROCESS_RUNTIME_VERSION=olA.SEMRESATTRS_PROCESS_RUNTIME_NAME=olA.SEMRESATTRS_PROCESS_OWNER=olA.SEMRESATTRS_PROCESS_COMMAND_ARGS=olA.SEMRESATTRS_PROCESS_COMMAND_LINE=olA.SEMRESATTRS_PROCESS_COMMAND=olA.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=olA.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=olA.SEMRESATTRS_PROCESS_PID=olA.SEMRESATTRS_OS_VERSION=olA.SEMRESATTRS_OS_NAME=olA.SEMRESATTRS_OS_DESCRIPTION=olA.SEMRESATTRS_OS_TYPE=olA.SEMRESATTRS_K8S_CRONJOB_NAME=olA.SEMRESATTRS_K8S_CRONJOB_UID=olA.SEMRESATTRS_K8S_JOB_NAME=olA.SEMRESATTRS_K8S_JOB_UID=olA.SEMRESATTRS_K8S_DAEMONSET_NAME=olA.SEMRESATTRS_K8S_DAEMONSET_UID=void 0;olA.TelemetrySdkLanguageValues=olA.TELEMETRYSDKLANGUAGEVALUES_WEBJS=olA.TELEMETRYSDKLANGUAGEVALUES_RUBY=olA.TELEMETRYSDKLANGUAGEVALUES_PYTHON=olA.TELEMETRYSDKLANGUAGEVALUES_PHP=olA.TELEMETRYSDKLANGUAGEVALUES_NODEJS=olA.TELEMETRYSDKLANGUAGEVALUES_JAVA=olA.TELEMETRYSDKLANGUAGEVALUES_GO=olA.TELEMETRYSDKLANGUAGEVALUES_ERLANG=olA.TELEMETRYSDKLANGUAGEVALUES_DOTNET=olA.TELEMETRYSDKLANGUAGEVALUES_CPP=olA.OsTypeValues=olA.OSTYPEVALUES_Z_OS=olA.OSTYPEVALUES_SOLARIS=olA.OSTYPEVALUES_AIX=olA.OSTYPEVALUES_HPUX=olA.OSTYPEVALUES_DRAGONFLYBSD=olA.OSTYPEVALUES_OPENBSD=olA.OSTYPEVALUES_NETBSD=olA.OSTYPEVALUES_FREEBSD=olA.OSTYPEVALUES_DARWIN=olA.OSTYPEVALUES_LINUX=olA.OSTYPEVALUES_WINDOWS=olA.HostArchValues=olA.HOSTARCHVALUES_X86=olA.HOSTARCHVALUES_PPC64=olA.HOSTARCHVALUES_PPC32=olA.HOSTARCHVALUES_IA64=olA.HOSTARCHVALUES_ARM64=olA.HOSTARCHVALUES_ARM32=olA.HOSTARCHVALUES_AMD64=olA.AwsEcsLaunchtypeValues=olA.AWSECSLAUNCHTYPEVALUES_FARGATE=olA.AWSECSLAUNCHTYPEVALUES_EC2=olA.CloudPlatformValues=olA.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=olA.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=olA.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=olA.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=void 0;var eZ=Rp(),OdA="cloud.provider",PdA="cloud.account.id",TdA="cloud.region",SdA="cloud.availability_zone",kdA="cloud.platform",_dA="aws.ecs.container.arn",vdA="aws.ecs.cluster.arn",ydA="aws.ecs.launchtype",hdA="aws.ecs.task.arn",gdA="aws.ecs.task.family",xdA="aws.ecs.task.revision",fdA="aws.eks.cluster.arn",bdA="aws.log.group.names",mdA="aws.log.group.arns",udA="aws.log.stream.names",ddA="aws.log.stream.arns",cdA="container.name",ldA="container.id",pdA="container.runtime",idA="container.image.name",ndA="container.image.tag",sdA="deployment.environment",rdA="device.id",adA="device.model.identifier",odA="device.model.name",tdA="faas.name",edA="faas.id",AcA="faas.version",QcA="faas.instance",BcA="faas.max_memory",YcA="host.id",JcA="host.name",CcA="host.type",XcA="host.arch",GcA="host.image.name",FcA="host.image.id",WcA="host.image.version",ZcA="k8s.cluster.name",$cA="k8s.node.name",UcA="k8s.node.uid",EcA="k8s.namespace.name",KcA="k8s.pod.uid",VcA="k8s.pod.name",IcA="k8s.container.name",HcA="k8s.replicaset.uid",DcA="k8s.replicaset.name",NcA="k8s.deployment.uid",LcA="k8s.deployment.name",qcA="k8s.statefulset.uid",McA="k8s.statefulset.name",zcA="k8s.daemonset.uid",RcA="k8s.daemonset.name",wcA="k8s.job.uid",jcA="k8s.job.name",OcA="k8s.cronjob.uid",PcA="k8s.cronjob.name",TcA="os.type",ScA="os.description",kcA="os.name",_cA="os.version",vcA="process.pid",ycA="process.executable.name",hcA="process.executable.path",gcA="process.command",xcA="process.command_line",fcA="process.command_args",bcA="process.owner",mcA="process.runtime.name",ucA="process.runtime.version",dcA="process.runtime.description",ccA="service.name",lcA="service.namespace",pcA="service.instance.id",icA="service.version",ncA="telemetry.sdk.name",scA="telemetry.sdk.language",rcA="telemetry.sdk.version",acA="telemetry.auto.version",ocA="webengine.name",tcA="webengine.version",ecA="webengine.description";olA.SEMRESATTRS_CLOUD_PROVIDER=OdA;olA.SEMRESATTRS_CLOUD_ACCOUNT_ID=PdA;olA.SEMRESATTRS_CLOUD_REGION=TdA;olA.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=SdA;olA.SEMRESATTRS_CLOUD_PLATFORM=kdA;olA.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=_dA;olA.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=vdA;olA.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=ydA;olA.SEMRESATTRS_AWS_ECS_TASK_ARN=hdA;olA.SEMRESATTRS_AWS_ECS_TASK_FAMILY=gdA;olA.SEMRESATTRS_AWS_ECS_TASK_REVISION=xdA;olA.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=fdA;olA.SEMRESATTRS_AWS_LOG_GROUP_NAMES=bdA;olA.SEMRESATTRS_AWS_LOG_GROUP_ARNS=mdA;olA.SEMRESATTRS_AWS_LOG_STREAM_NAMES=udA;olA.SEMRESATTRS_AWS_LOG_STREAM_ARNS=ddA;olA.SEMRESATTRS_CONTAINER_NAME=cdA;olA.SEMRESATTRS_CONTAINER_ID=ldA;olA.SEMRESATTRS_CONTAINER_RUNTIME=pdA;olA.SEMRESATTRS_CONTAINER_IMAGE_NAME=idA;olA.SEMRESATTRS_CONTAINER_IMAGE_TAG=ndA;olA.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=sdA;olA.SEMRESATTRS_DEVICE_ID=rdA;olA.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=adA;olA.SEMRESATTRS_DEVICE_MODEL_NAME=odA;olA.SEMRESATTRS_FAAS_NAME=tdA;olA.SEMRESATTRS_FAAS_ID=edA;olA.SEMRESATTRS_FAAS_VERSION=AcA;olA.SEMRESATTRS_FAAS_INSTANCE=QcA;olA.SEMRESATTRS_FAAS_MAX_MEMORY=BcA;olA.SEMRESATTRS_HOST_ID=YcA;olA.SEMRESATTRS_HOST_NAME=JcA;olA.SEMRESATTRS_HOST_TYPE=CcA;olA.SEMRESATTRS_HOST_ARCH=XcA;olA.SEMRESATTRS_HOST_IMAGE_NAME=GcA;olA.SEMRESATTRS_HOST_IMAGE_ID=FcA;olA.SEMRESATTRS_HOST_IMAGE_VERSION=WcA;olA.SEMRESATTRS_K8S_CLUSTER_NAME=ZcA;olA.SEMRESATTRS_K8S_NODE_NAME=$cA;olA.SEMRESATTRS_K8S_NODE_UID=UcA;olA.SEMRESATTRS_K8S_NAMESPACE_NAME=EcA;olA.SEMRESATTRS_K8S_POD_UID=KcA;olA.SEMRESATTRS_K8S_POD_NAME=VcA;olA.SEMRESATTRS_K8S_CONTAINER_NAME=IcA;olA.SEMRESATTRS_K8S_REPLICASET_UID=HcA;olA.SEMRESATTRS_K8S_REPLICASET_NAME=DcA;olA.SEMRESATTRS_K8S_DEPLOYMENT_UID=NcA;olA.SEMRESATTRS_K8S_DEPLOYMENT_NAME=LcA;olA.SEMRESATTRS_K8S_STATEFULSET_UID=qcA;olA.SEMRESATTRS_K8S_STATEFULSET_NAME=McA;olA.SEMRESATTRS_K8S_DAEMONSET_UID=zcA;olA.SEMRESATTRS_K8S_DAEMONSET_NAME=RcA;olA.SEMRESATTRS_K8S_JOB_UID=wcA;olA.SEMRESATTRS_K8S_JOB_NAME=jcA;olA.SEMRESATTRS_K8S_CRONJOB_UID=OcA;olA.SEMRESATTRS_K8S_CRONJOB_NAME=PcA;olA.SEMRESATTRS_OS_TYPE=TcA;olA.SEMRESATTRS_OS_DESCRIPTION=ScA;olA.SEMRESATTRS_OS_NAME=kcA;olA.SEMRESATTRS_OS_VERSION=_cA;olA.SEMRESATTRS_PROCESS_PID=vcA;olA.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=ycA;olA.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=hcA;olA.SEMRESATTRS_PROCESS_COMMAND=gcA;olA.SEMRESATTRS_PROCESS_COMMAND_LINE=xcA;olA.SEMRESATTRS_PROCESS_COMMAND_ARGS=fcA;olA.SEMRESATTRS_PROCESS_OWNER=bcA;olA.SEMRESATTRS_PROCESS_RUNTIME_NAME=mcA;olA.SEMRESATTRS_PROCESS_RUNTIME_VERSION=ucA;olA.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=dcA;olA.SEMRESATTRS_SERVICE_NAME=ccA;olA.SEMRESATTRS_SERVICE_NAMESPACE=lcA;olA.SEMRESATTRS_SERVICE_INSTANCE_ID=pcA;olA.SEMRESATTRS_SERVICE_VERSION=icA;olA.SEMRESATTRS_TELEMETRY_SDK_NAME=ncA;olA.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=scA;olA.SEMRESATTRS_TELEMETRY_SDK_VERSION=rcA;olA.SEMRESATTRS_TELEMETRY_AUTO_VERSION=acA;olA.SEMRESATTRS_WEBENGINE_NAME=ocA;olA.SEMRESATTRS_WEBENGINE_VERSION=tcA;olA.SEMRESATTRS_WEBENGINE_DESCRIPTION=ecA;olA.SemanticResourceAttributes=(0,eZ.createConstMap)([OdA,PdA,TdA,SdA,kdA,_dA,vdA,ydA,hdA,gdA,xdA,fdA,bdA,mdA,udA,ddA,cdA,ldA,pdA,idA,ndA,sdA,rdA,adA,odA,tdA,edA,AcA,QcA,BcA,YcA,JcA,CcA,XcA,GcA,FcA,WcA,ZcA,$cA,UcA,EcA,KcA,VcA,IcA,HcA,DcA,NcA,LcA,qcA,McA,zcA,RcA,wcA,jcA,OcA,PcA,TcA,ScA,kcA,_cA,vcA,ycA,hcA,gcA,xcA,fcA,bcA,mcA,ucA,dcA,ccA,lcA,pcA,icA,ncA,scA,rcA,acA,ocA,tcA,ecA]);var AlA="alibaba_cloud",QlA="aws",BlA="azure",YlA="gcp";olA.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=AlA;olA.CLOUDPROVIDERVALUES_AWS=QlA;olA.CLOUDPROVIDERVALUES_AZURE=BlA;olA.CLOUDPROVIDERVALUES_GCP=YlA;olA.CloudProviderValues=(0,eZ.createConstMap)([AlA,QlA,BlA,YlA]);var JlA="alibaba_cloud_ecs",ClA="alibaba_cloud_fc",XlA="aws_ec2",GlA="aws_ecs",FlA="aws_eks",WlA="aws_lambda",ZlA="aws_elastic_beanstalk",$lA="azure_vm",UlA="azure_container_instances",ElA="azure_aks",KlA="azure_functions",VlA="azure_app_service",IlA="gcp_compute_engine",HlA="gcp_cloud_run",DlA="gcp_kubernetes_engine",NlA="gcp_cloud_functions",LlA="gcp_app_engine";olA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=JlA;olA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=ClA;olA.CLOUDPLATFORMVALUES_AWS_EC2=XlA;olA.CLOUDPLATFORMVALUES_AWS_ECS=GlA;olA.CLOUDPLATFORMVALUES_AWS_EKS=FlA;olA.CLOUDPLATFORMVALUES_AWS_LAMBDA=WlA;olA.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=ZlA;olA.CLOUDPLATFORMVALUES_AZURE_VM=$lA;olA.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=UlA;olA.CLOUDPLATFORMVALUES_AZURE_AKS=ElA;olA.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=KlA;olA.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=VlA;olA.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=IlA;olA.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=HlA;olA.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=DlA;olA.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=NlA;olA.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=LlA;olA.CloudPlatformValues=(0,eZ.createConstMap)([JlA,ClA,XlA,GlA,FlA,WlA,ZlA,$lA,UlA,ElA,KlA,VlA,IlA,HlA,DlA,NlA,LlA]);var qlA="ec2",MlA="fargate";olA.AWSECSLAUNCHTYPEVALUES_EC2=qlA;olA.AWSECSLAUNCHTYPEVALUES_FARGATE=MlA;olA.AwsEcsLaunchtypeValues=(0,eZ.createConstMap)([qlA,MlA]);var zlA="amd64",RlA="arm32",wlA="arm64",jlA="ia64",OlA="ppc32",PlA="ppc64",TlA="x86";olA.HOSTARCHVALUES_AMD64=zlA;olA.HOSTARCHVALUES_ARM32=RlA;olA.HOSTARCHVALUES_ARM64=wlA;olA.HOSTARCHVALUES_IA64=jlA;olA.HOSTARCHVALUES_PPC32=OlA;olA.HOSTARCHVALUES_PPC64=PlA;olA.HOSTARCHVALUES_X86=TlA;olA.HostArchValues=(0,eZ.createConstMap)([zlA,RlA,wlA,jlA,OlA,PlA,TlA]);var SlA="windows",klA="linux",_lA="darwin",vlA="freebsd",ylA="netbsd",hlA="openbsd",glA="dragonflybsd",xlA="hpux",flA="aix",blA="solaris",mlA="z_os";olA.OSTYPEVALUES_WINDOWS=SlA;olA.OSTYPEVALUES_LINUX=klA;olA.OSTYPEVALUES_DARWIN=_lA;olA.OSTYPEVALUES_FREEBSD=vlA;olA.OSTYPEVALUES_NETBSD=ylA;olA.OSTYPEVALUES_OPENBSD=hlA;olA.OSTYPEVALUES_DRAGONFLYBSD=glA;olA.OSTYPEVALUES_HPUX=xlA;olA.OSTYPEVALUES_AIX=flA;olA.OSTYPEVALUES_SOLARIS=blA;olA.OSTYPEVALUES_Z_OS=mlA;olA.OsTypeValues=(0,eZ.createConstMap)([SlA,klA,_lA,vlA,ylA,hlA,glA,xlA,flA,blA,mlA]);var ulA="cpp",dlA="dotnet",clA="erlang",llA="go",plA="java",ilA="nodejs",nlA="php",slA="python",rlA="ruby",alA="webjs";olA.TELEMETRYSDKLANGUAGEVALUES_CPP=ulA;olA.TELEMETRYSDKLANGUAGEVALUES_DOTNET=dlA;olA.TELEMETRYSDKLANGUAGEVALUES_ERLANG=clA;olA.TELEMETRYSDKLANGUAGEVALUES_GO=llA;olA.TELEMETRYSDKLANGUAGEVALUES_JAVA=plA;olA.TELEMETRYSDKLANGUAGEVALUES_NODEJS=ilA;olA.TELEMETRYSDKLANGUAGEVALUES_PHP=nlA;olA.TELEMETRYSDKLANGUAGEVALUES_PYTHON=slA;olA.TELEMETRYSDKLANGUAGEVALUES_RUBY=rlA;olA.TELEMETRYSDKLANGUAGEVALUES_WEBJS=alA;olA.TelemetrySdkLanguageValues=(0,eZ.createConstMap)([ulA,dlA,clA,llA,plA,ilA,nlA,slA,rlA,alA])});var BpA=R((A$)=>{var KuB=A$&&A$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),VuB=A$&&A$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))KuB(Q,A,B)};Object.defineProperty(A$,"__esModule",{value:!0});VuB(QpA(),A$)});var GpA=R((YpA)=>{Object.defineProperty(YpA,"__esModule",{value:!0});YpA.HTTP_REQUEST_METHOD_VALUE_POST=YpA.HTTP_REQUEST_METHOD_VALUE_PATCH=YpA.HTTP_REQUEST_METHOD_VALUE_OPTIONS=YpA.HTTP_REQUEST_METHOD_VALUE_HEAD=YpA.HTTP_REQUEST_METHOD_VALUE_GET=YpA.HTTP_REQUEST_METHOD_VALUE_DELETE=YpA.HTTP_REQUEST_METHOD_VALUE_CONNECT=YpA.HTTP_REQUEST_METHOD_VALUE_OTHER=YpA.ATTR_HTTP_REQUEST_METHOD=YpA.ATTR_HTTP_REQUEST_HEADER=YpA.ATTR_EXCEPTION_TYPE=YpA.ATTR_EXCEPTION_STACKTRACE=YpA.ATTR_EXCEPTION_MESSAGE=YpA.ATTR_EXCEPTION_ESCAPED=YpA.ERROR_TYPE_VALUE_OTHER=YpA.ATTR_ERROR_TYPE=YpA.ATTR_CLIENT_PORT=YpA.ATTR_CLIENT_ADDRESS=YpA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS=YpA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE=YpA.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS=YpA.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK=YpA.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED=YpA.ATTR_ASPNETCORE_RATE_LIMITING_POLICY=YpA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED=YpA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED=YpA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED=YpA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED=YpA.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT=YpA.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE=YpA.ATTR_TELEMETRY_SDK_VERSION=YpA.ATTR_TELEMETRY_SDK_NAME=YpA.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS=YpA.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT=YpA.TELEMETRY_SDK_LANGUAGE_VALUE_RUST=YpA.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY=YpA.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON=YpA.TELEMETRY_SDK_LANGUAGE_VALUE_PHP=YpA.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS=YpA.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA=YpA.TELEMETRY_SDK_LANGUAGE_VALUE_GO=YpA.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG=YpA.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET=YpA.TELEMETRY_SDK_LANGUAGE_VALUE_CPP=YpA.ATTR_TELEMETRY_SDK_LANGUAGE=YpA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED=YpA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER=YpA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER=YpA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED=YpA.ATTR_ASPNETCORE_RATE_LIMITING_RESULT=void 0;YpA.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT=YpA.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE=YpA.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN=YpA.ATTR_SIGNALR_CONNECTION_STATUS=YpA.ATTR_SERVICE_VERSION=YpA.ATTR_SERVICE_NAME=YpA.ATTR_SERVER_PORT=YpA.ATTR_SERVER_ADDRESS=YpA.ATTR_OTEL_STATUS_DESCRIPTION=YpA.OTEL_STATUS_CODE_VALUE_OK=YpA.OTEL_STATUS_CODE_VALUE_ERROR=YpA.ATTR_OTEL_STATUS_CODE=YpA.ATTR_OTEL_SCOPE_VERSION=YpA.ATTR_OTEL_SCOPE_NAME=YpA.NETWORK_TYPE_VALUE_IPV6=YpA.NETWORK_TYPE_VALUE_IPV4=YpA.ATTR_NETWORK_TYPE=YpA.NETWORK_TRANSPORT_VALUE_UNIX=YpA.NETWORK_TRANSPORT_VALUE_UDP=YpA.NETWORK_TRANSPORT_VALUE_TCP=YpA.NETWORK_TRANSPORT_VALUE_QUIC=YpA.NETWORK_TRANSPORT_VALUE_PIPE=YpA.ATTR_NETWORK_TRANSPORT=YpA.ATTR_NETWORK_PROTOCOL_VERSION=YpA.ATTR_NETWORK_PROTOCOL_NAME=YpA.ATTR_NETWORK_PEER_PORT=YpA.ATTR_NETWORK_PEER_ADDRESS=YpA.ATTR_NETWORK_LOCAL_PORT=YpA.ATTR_NETWORK_LOCAL_ADDRESS=YpA.JVM_THREAD_STATE_VALUE_WAITING=YpA.JVM_THREAD_STATE_VALUE_TIMED_WAITING=YpA.JVM_THREAD_STATE_VALUE_TERMINATED=YpA.JVM_THREAD_STATE_VALUE_RUNNABLE=YpA.JVM_THREAD_STATE_VALUE_NEW=YpA.JVM_THREAD_STATE_VALUE_BLOCKED=YpA.ATTR_JVM_THREAD_STATE=YpA.ATTR_JVM_THREAD_DAEMON=YpA.JVM_MEMORY_TYPE_VALUE_NON_HEAP=YpA.JVM_MEMORY_TYPE_VALUE_HEAP=YpA.ATTR_JVM_MEMORY_TYPE=YpA.ATTR_JVM_MEMORY_POOL_NAME=YpA.ATTR_JVM_GC_NAME=YpA.ATTR_JVM_GC_ACTION=YpA.ATTR_HTTP_ROUTE=YpA.ATTR_HTTP_RESPONSE_STATUS_CODE=YpA.ATTR_HTTP_RESPONSE_HEADER=YpA.ATTR_HTTP_REQUEST_RESEND_COUNT=YpA.ATTR_HTTP_REQUEST_METHOD_ORIGINAL=YpA.HTTP_REQUEST_METHOD_VALUE_TRACE=YpA.HTTP_REQUEST_METHOD_VALUE_PUT=void 0;YpA.ATTR_USER_AGENT_ORIGINAL=YpA.ATTR_URL_SCHEME=YpA.ATTR_URL_QUERY=YpA.ATTR_URL_PATH=YpA.ATTR_URL_FULL=YpA.ATTR_URL_FRAGMENT=YpA.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS=YpA.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS=YpA.SIGNALR_TRANSPORT_VALUE_LONG_POLLING=YpA.ATTR_SIGNALR_TRANSPORT=void 0;YpA.ATTR_ASPNETCORE_RATE_LIMITING_RESULT="aspnetcore.rate_limiting.result";YpA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED="acquired";YpA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER="endpoint_limiter";YpA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER="global_limiter";YpA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED="request_canceled";YpA.ATTR_TELEMETRY_SDK_LANGUAGE="telemetry.sdk.language";YpA.TELEMETRY_SDK_LANGUAGE_VALUE_CPP="cpp";YpA.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET="dotnet";YpA.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG="erlang";YpA.TELEMETRY_SDK_LANGUAGE_VALUE_GO="go";YpA.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA="java";YpA.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS="nodejs";YpA.TELEMETRY_SDK_LANGUAGE_VALUE_PHP="php";YpA.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON="python";YpA.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY="ruby";YpA.TELEMETRY_SDK_LANGUAGE_VALUE_RUST="rust";YpA.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT="swift";YpA.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS="webjs";YpA.ATTR_TELEMETRY_SDK_NAME="telemetry.sdk.name";YpA.ATTR_TELEMETRY_SDK_VERSION="telemetry.sdk.version";YpA.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE="aspnetcore.diagnostics.handler.type";YpA.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT="aspnetcore.diagnostics.exception.result";YpA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED="aborted";YpA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED="handled";YpA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED="skipped";YpA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED="unhandled";YpA.ATTR_ASPNETCORE_RATE_LIMITING_POLICY="aspnetcore.rate_limiting.policy";YpA.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED="aspnetcore.request.is_unhandled";YpA.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK="aspnetcore.routing.is_fallback";YpA.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS="aspnetcore.routing.match_status";YpA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE="failure";YpA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS="success";YpA.ATTR_CLIENT_ADDRESS="client.address";YpA.ATTR_CLIENT_PORT="client.port";YpA.ATTR_ERROR_TYPE="error.type";YpA.ERROR_TYPE_VALUE_OTHER="_OTHER";YpA.ATTR_EXCEPTION_ESCAPED="exception.escaped";YpA.ATTR_EXCEPTION_MESSAGE="exception.message";YpA.ATTR_EXCEPTION_STACKTRACE="exception.stacktrace";YpA.ATTR_EXCEPTION_TYPE="exception.type";var IuB=(A)=>`http.request.header.${A}`;YpA.ATTR_HTTP_REQUEST_HEADER=IuB;YpA.ATTR_HTTP_REQUEST_METHOD="http.request.method";YpA.HTTP_REQUEST_METHOD_VALUE_OTHER="_OTHER";YpA.HTTP_REQUEST_METHOD_VALUE_CONNECT="CONNECT";YpA.HTTP_REQUEST_METHOD_VALUE_DELETE="DELETE";YpA.HTTP_REQUEST_METHOD_VALUE_GET="GET";YpA.HTTP_REQUEST_METHOD_VALUE_HEAD="HEAD";YpA.HTTP_REQUEST_METHOD_VALUE_OPTIONS="OPTIONS";YpA.HTTP_REQUEST_METHOD_VALUE_PATCH="PATCH";YpA.HTTP_REQUEST_METHOD_VALUE_POST="POST";YpA.HTTP_REQUEST_METHOD_VALUE_PUT="PUT";YpA.HTTP_REQUEST_METHOD_VALUE_TRACE="TRACE";YpA.ATTR_HTTP_REQUEST_METHOD_ORIGINAL="http.request.method_original";YpA.ATTR_HTTP_REQUEST_RESEND_COUNT="http.request.resend_count";var HuB=(A)=>`http.response.header.${A}`;YpA.ATTR_HTTP_RESPONSE_HEADER=HuB;YpA.ATTR_HTTP_RESPONSE_STATUS_CODE="http.response.status_code";YpA.ATTR_HTTP_ROUTE="http.route";YpA.ATTR_JVM_GC_ACTION="jvm.gc.action";YpA.ATTR_JVM_GC_NAME="jvm.gc.name";YpA.ATTR_JVM_MEMORY_POOL_NAME="jvm.memory.pool.name";YpA.ATTR_JVM_MEMORY_TYPE="jvm.memory.type";YpA.JVM_MEMORY_TYPE_VALUE_HEAP="heap";YpA.JVM_MEMORY_TYPE_VALUE_NON_HEAP="non_heap";YpA.ATTR_JVM_THREAD_DAEMON="jvm.thread.daemon";YpA.ATTR_JVM_THREAD_STATE="jvm.thread.state";YpA.JVM_THREAD_STATE_VALUE_BLOCKED="blocked";YpA.JVM_THREAD_STATE_VALUE_NEW="new";YpA.JVM_THREAD_STATE_VALUE_RUNNABLE="runnable";YpA.JVM_THREAD_STATE_VALUE_TERMINATED="terminated";YpA.JVM_THREAD_STATE_VALUE_TIMED_WAITING="timed_waiting";YpA.JVM_THREAD_STATE_VALUE_WAITING="waiting";YpA.ATTR_NETWORK_LOCAL_ADDRESS="network.local.address";YpA.ATTR_NETWORK_LOCAL_PORT="network.local.port";YpA.ATTR_NETWORK_PEER_ADDRESS="network.peer.address";YpA.ATTR_NETWORK_PEER_PORT="network.peer.port";YpA.ATTR_NETWORK_PROTOCOL_NAME="network.protocol.name";YpA.ATTR_NETWORK_PROTOCOL_VERSION="network.protocol.version";YpA.ATTR_NETWORK_TRANSPORT="network.transport";YpA.NETWORK_TRANSPORT_VALUE_PIPE="pipe";YpA.NETWORK_TRANSPORT_VALUE_QUIC="quic";YpA.NETWORK_TRANSPORT_VALUE_TCP="tcp";YpA.NETWORK_TRANSPORT_VALUE_UDP="udp";YpA.NETWORK_TRANSPORT_VALUE_UNIX="unix";YpA.ATTR_NETWORK_TYPE="network.type";YpA.NETWORK_TYPE_VALUE_IPV4="ipv4";YpA.NETWORK_TYPE_VALUE_IPV6="ipv6";YpA.ATTR_OTEL_SCOPE_NAME="otel.scope.name";YpA.ATTR_OTEL_SCOPE_VERSION="otel.scope.version";YpA.ATTR_OTEL_STATUS_CODE="otel.status_code";YpA.OTEL_STATUS_CODE_VALUE_ERROR="ERROR";YpA.OTEL_STATUS_CODE_VALUE_OK="OK";YpA.ATTR_OTEL_STATUS_DESCRIPTION="otel.status_description";YpA.ATTR_SERVER_ADDRESS="server.address";YpA.ATTR_SERVER_PORT="server.port";YpA.ATTR_SERVICE_NAME="service.name";YpA.ATTR_SERVICE_VERSION="service.version";YpA.ATTR_SIGNALR_CONNECTION_STATUS="signalr.connection.status";YpA.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN="app_shutdown";YpA.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE="normal_closure";YpA.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT="timeout";YpA.ATTR_SIGNALR_TRANSPORT="signalr.transport";YpA.SIGNALR_TRANSPORT_VALUE_LONG_POLLING="long_polling";YpA.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS="server_sent_events";YpA.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS="web_sockets";YpA.ATTR_URL_FRAGMENT="url.fragment";YpA.ATTR_URL_FULL="url.full";YpA.ATTR_URL_PATH="url.path";YpA.ATTR_URL_QUERY="url.query";YpA.ATTR_URL_SCHEME="url.scheme";YpA.ATTR_USER_AGENT_ORIGINAL="user_agent.original"});var ZpA=R((FpA)=>{Object.defineProperty(FpA,"__esModule",{value:!0});FpA.METRIC_SIGNALR_SERVER_CONNECTION_DURATION=FpA.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS=FpA.METRIC_KESTREL_UPGRADED_CONNECTIONS=FpA.METRIC_KESTREL_TLS_HANDSHAKE_DURATION=FpA.METRIC_KESTREL_REJECTED_CONNECTIONS=FpA.METRIC_KESTREL_QUEUED_REQUESTS=FpA.METRIC_KESTREL_QUEUED_CONNECTIONS=FpA.METRIC_KESTREL_CONNECTION_DURATION=FpA.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES=FpA.METRIC_KESTREL_ACTIVE_CONNECTIONS=FpA.METRIC_JVM_THREAD_COUNT=FpA.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC=FpA.METRIC_JVM_MEMORY_USED=FpA.METRIC_JVM_MEMORY_LIMIT=FpA.METRIC_JVM_MEMORY_COMMITTED=FpA.METRIC_JVM_GC_DURATION=FpA.METRIC_JVM_CPU_TIME=FpA.METRIC_JVM_CPU_RECENT_UTILIZATION=FpA.METRIC_JVM_CPU_COUNT=FpA.METRIC_JVM_CLASS_UNLOADED=FpA.METRIC_JVM_CLASS_LOADED=FpA.METRIC_JVM_CLASS_COUNT=FpA.METRIC_HTTP_SERVER_REQUEST_DURATION=FpA.METRIC_HTTP_CLIENT_REQUEST_DURATION=FpA.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS=FpA.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS=FpA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION=FpA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE=FpA.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS=FpA.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES=FpA.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS=void 0;FpA.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS="aspnetcore.diagnostics.exceptions";FpA.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES="aspnetcore.rate_limiting.active_request_leases";FpA.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS="aspnetcore.rate_limiting.queued_requests";FpA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE="aspnetcore.rate_limiting.request.time_in_queue";FpA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION="aspnetcore.rate_limiting.request_lease.duration";FpA.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS="aspnetcore.rate_limiting.requests";FpA.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS="aspnetcore.routing.match_attempts";FpA.METRIC_HTTP_CLIENT_REQUEST_DURATION="http.client.request.duration";FpA.METRIC_HTTP_SERVER_REQUEST_DURATION="http.server.request.duration";FpA.METRIC_JVM_CLASS_COUNT="jvm.class.count";FpA.METRIC_JVM_CLASS_LOADED="jvm.class.loaded";FpA.METRIC_JVM_CLASS_UNLOADED="jvm.class.unloaded";FpA.METRIC_JVM_CPU_COUNT="jvm.cpu.count";FpA.METRIC_JVM_CPU_RECENT_UTILIZATION="jvm.cpu.recent_utilization";FpA.METRIC_JVM_CPU_TIME="jvm.cpu.time";FpA.METRIC_JVM_GC_DURATION="jvm.gc.duration";FpA.METRIC_JVM_MEMORY_COMMITTED="jvm.memory.committed";FpA.METRIC_JVM_MEMORY_LIMIT="jvm.memory.limit";FpA.METRIC_JVM_MEMORY_USED="jvm.memory.used";FpA.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC="jvm.memory.used_after_last_gc";FpA.METRIC_JVM_THREAD_COUNT="jvm.thread.count";FpA.METRIC_KESTREL_ACTIVE_CONNECTIONS="kestrel.active_connections";FpA.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES="kestrel.active_tls_handshakes";FpA.METRIC_KESTREL_CONNECTION_DURATION="kestrel.connection.duration";FpA.METRIC_KESTREL_QUEUED_CONNECTIONS="kestrel.queued_connections";FpA.METRIC_KESTREL_QUEUED_REQUESTS="kestrel.queued_requests";FpA.METRIC_KESTREL_REJECTED_CONNECTIONS="kestrel.rejected_connections";FpA.METRIC_KESTREL_TLS_HANDSHAKE_DURATION="kestrel.tls_handshake.duration";FpA.METRIC_KESTREL_UPGRADED_CONNECTIONS="kestrel.upgraded_connections";FpA.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS="signalr.server.active_connections";FpA.METRIC_SIGNALR_SERVER_CONNECTION_DURATION="signalr.server.connection.duration"});var wp=R((J6)=>{var ncB=J6&&J6.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),_O=J6&&J6.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))ncB(Q,A,B)};Object.defineProperty(J6,"__esModule",{value:!0});_O(jdA(),J6);_O(BpA(),J6);_O(GpA(),J6);_O(ZpA(),J6)});var UpA=R(($pA)=>{Object.defineProperty($pA,"__esModule",{value:!0});$pA.AttributeNames=void 0;var scB;(function(A){A.HTTP_ERROR_NAME="http.error_name",A.HTTP_ERROR_MESSAGE="http.error_message",A.HTTP_STATUS_TEXT="http.status_text"})(scB=$pA.AttributeNames||($pA.AttributeNames={}))});var KpA=R((BhY,EpA)=>{var rcB=u("util");function Op(A,Q){Error.captureStackTrace(this,Op),this.name=this.constructor.name,this.message=A,this.input=Q}rcB.inherits(Op,Error);EpA.exports=Op});var IpA=R((YhY,VpA)=>{function acB(A){return A===34||A===40||A===41||A===44||A===47||A>=58&&A<=64||A>=91&&A<=93||A===123||A===125}function ocB(A){return A===33||A>=35&&A<=39||A===42||A===43||A===45||A===46||A>=48&&A<=57||A>=65&&A<=90||A>=94&&A<=122||A===124||A===126}function tcB(A){return A>=32&&A<=126}function ecB(A){return A>=128&&A<=255}VpA.exports={isDelimiter:acB,isTokenChar:ocB,isExtended:ecB,isPrint:tcB}});var qpA=R((JhY,LpA)=>{var AlB=u("util"),CK=KpA(),vO=IpA(),QlB=vO.isDelimiter,HpA=vO.isTokenChar,DpA=vO.isExtended,BlB=vO.isPrint;function NpA(A){return A.replace(/\\(.)/g,"$1")}function WL(A,Q){return AlB.format("Unexpected character '%s' at index %d",A.charAt(Q),Q)}function YlB(A){var Q=!1,B=!1,Y=!1,J={},C=[],X=-1,G=-1,F,W;for(var Z=0;Z{Object.defineProperty(OpA,"__esModule",{value:!0});OpA.headerCapture=OpA.getIncomingStableRequestMetricAttributesOnResponse=OpA.getIncomingRequestMetricAttributesOnResponse=OpA.getIncomingRequestAttributesOnResponse=OpA.getIncomingRequestMetricAttributes=OpA.getIncomingRequestAttributes=OpA.getRemoteClientAddress=OpA.getOutgoingRequestMetricAttributesOnResponse=OpA.getOutgoingRequestAttributesOnResponse=OpA.setAttributesFromHttpKind=OpA.getOutgoingRequestMetricAttributes=OpA.getOutgoingRequestAttributes=OpA.extractHostnameAndPort=OpA.isValidOptionsType=OpA.getRequestInfo=OpA.isCompressed=OpA.setResponseContentLengthAttribute=OpA.setRequestContentLengthAttribute=OpA.setSpanWithError=OpA.satisfiesPattern=OpA.parseResponseStatus=OpA.getAbsoluteUrl=void 0;var ZL=yA(),SA=wp(),MpA=MB(),JlB=u("url"),yO=UpA(),ClB=qpA(),XlB=(A,Q,B="http:")=>{let Y=A||{},J=Y.protocol||B,C=(Y.port||"").toString(),X=Y.path||"/",G=Y.host||Y.hostname||Q.host||"localhost";if(G.indexOf(":")===-1&&C&&C!=="80"&&C!=="443")G+=`:${C}`;return`${J}//${G}${X}`};OpA.getAbsoluteUrl=XlB;var GlB=(A,Q)=>{let B=A===ZL.SpanKind.CLIENT?400:500;if(Q&&Q>=100&&Q{if(typeof Q==="string")return Q===A;else if(Q instanceof RegExp)return Q.test(A);else if(typeof Q==="function")return Q(A);else throw TypeError("Pattern is in unsupported datatype")};OpA.satisfiesPattern=FlB;var WlB=(A,Q,B)=>{let Y=Q.message;if((B&2)===2)A.setAttribute(yO.AttributeNames.HTTP_ERROR_NAME,Q.name),A.setAttribute(yO.AttributeNames.HTTP_ERROR_MESSAGE,Y);if((B&1)===1)A.setAttribute(SA.ATTR_ERROR_TYPE,Q.name);A.setStatus({code:ZL.SpanStatusCode.ERROR,message:Y}),A.recordException(Q)};OpA.setSpanWithError=WlB;var ZlB=(A,Q)=>{let B=zpA(A.headers);if(B===null)return;if(OpA.isCompressed(A.headers))Q[SA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH]=B;else Q[SA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED]=B};OpA.setRequestContentLengthAttribute=ZlB;var $lB=(A,Q)=>{let B=zpA(A.headers);if(B===null)return;if(OpA.isCompressed(A.headers))Q[SA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH]=B;else Q[SA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED]=B};OpA.setResponseContentLengthAttribute=$lB;function zpA(A){let Q=A["content-length"];if(Q===void 0)return null;let B=parseInt(Q,10);if(isNaN(B))return null;return B}var UlB=(A)=>{let Q=A["content-encoding"];return!!Q&&Q!=="identity"};OpA.isCompressed=UlB;function ElB(A){let{hostname:Q,pathname:B,port:Y,username:J,password:C,search:X,protocol:G,hash:F,href:W,origin:Z,host:U}=new URL(A),$={protocol:G,hostname:Q&&Q[0]==="["?Q.slice(1,-1):Q,hash:F,search:X,pathname:B,path:`${B||""}${X||""}`,href:W,origin:Z,host:U};if(Y!=="")$.port=Number(Y);if(J||C)$.auth=`${decodeURIComponent(J)}:${decodeURIComponent(C)}`;return $}var KlB=(A,Q,B)=>{let Y,J,C,X=!1;if(typeof Q==="string"){try{let F=ElB(Q);C=F,Y=F.pathname||"/"}catch(F){X=!0,A.verbose("Unable to parse URL provided to HTTP request, using fallback to determine path. Original error:",F),C={path:Q},Y=C.path||"/"}if(J=`${C.protocol||"http:"}//${C.host}`,B!==void 0)Object.assign(C,B)}else if(Q instanceof JlB.URL){if(C={protocol:Q.protocol,hostname:typeof Q.hostname==="string"&&Q.hostname.startsWith("[")?Q.hostname.slice(1,-1):Q.hostname,path:`${Q.pathname||""}${Q.search||""}`},Q.port!=="")C.port=Number(Q.port);if(Q.username||Q.password)C.auth=`${Q.username}:${Q.password}`;if(Y=Q.pathname,J=Q.origin,B!==void 0)Object.assign(C,B)}else{C=Object.assign({protocol:Q.host?"http:":void 0},Q);let F=C.host||(C.port!=null?`${C.hostname}${C.port}`:C.hostname);if(J=`${C.protocol||"http:"}//${F}`,Y=Q.pathname,!Y&&C.path)try{Y=new URL(C.path,J).pathname||"/"}catch(W){Y="/"}}let G=C.method?C.method.toUpperCase():"GET";return{origin:J,pathname:Y,method:G,optionsParsed:C,invalidUrl:X}};OpA.getRequestInfo=KlB;var VlB=(A)=>{if(!A)return!1;let Q=typeof A;return Q==="string"||Q==="object"&&!Array.isArray(A)};OpA.isValidOptionsType=VlB;var IlB=(A)=>{var Q;if(A.hostname&&A.port)return{hostname:A.hostname,port:A.port};let B=((Q=A.host)===null||Q===void 0?void 0:Q.match(/^([^:/ ]+)(:\d{1,5})?/))||null,Y=A.hostname||(B===null?"localhost":B[1]),J=A.port;if(!J)if(B&&B[2])J=B[2].substring(1);else J=A.protocol==="https:"?"443":"80";return{hostname:Y,port:J}};OpA.extractHostnameAndPort=IlB;var HlB=(A,Q,B)=>{var Y,J;let{hostname:C,port:X}=Q,G=(Y=A.method)!==null&&Y!==void 0?Y:"GET",F=wpA(G),W=A.headers||{},Z=W["user-agent"],U=OpA.getAbsoluteUrl(A,W,`${Q.component}:`),$={[SA.SEMATTRS_HTTP_URL]:U,[SA.SEMATTRS_HTTP_METHOD]:G,[SA.SEMATTRS_HTTP_TARGET]:A.path||"/",[SA.SEMATTRS_NET_PEER_NAME]:C,[SA.SEMATTRS_HTTP_HOST]:(J=W.host)!==null&&J!==void 0?J:`${C}:${X}`},E={[SA.ATTR_HTTP_REQUEST_METHOD]:F,[SA.ATTR_SERVER_ADDRESS]:C,[SA.ATTR_SERVER_PORT]:Number(X),[SA.ATTR_URL_FULL]:U};if(G!==F)E[SA.ATTR_HTTP_REQUEST_METHOD_ORIGINAL]=G;if(Z!==void 0)$[SA.SEMATTRS_HTTP_USER_AGENT]=Z;switch(B){case 1:return Object.assign(E,Q.hookAttributes);case 2:return Object.assign($,Q.hookAttributes)}return Object.assign($,E,Q.hookAttributes)};OpA.getOutgoingRequestAttributes=HlB;var DlB=(A)=>{let Q={};return Q[SA.SEMATTRS_HTTP_METHOD]=A[SA.SEMATTRS_HTTP_METHOD],Q[SA.SEMATTRS_NET_PEER_NAME]=A[SA.SEMATTRS_NET_PEER_NAME],Q};OpA.getOutgoingRequestMetricAttributes=DlB;var NlB=(A,Q)=>{if(A)if(Q[SA.SEMATTRS_HTTP_FLAVOR]=A,A.toUpperCase()!=="QUIC")Q[SA.SEMATTRS_NET_TRANSPORT]=SA.NETTRANSPORTVALUES_IP_TCP;else Q[SA.SEMATTRS_NET_TRANSPORT]=SA.NETTRANSPORTVALUES_IP_UDP};OpA.setAttributesFromHttpKind=NlB;var LlB=(A,Q)=>{let{statusCode:B,statusMessage:Y,httpVersion:J,socket:C}=A,X={},G={};if(B!=null)G[SA.ATTR_HTTP_RESPONSE_STATUS_CODE]=B;if(C){let{remoteAddress:F,remotePort:W}=C;X[SA.SEMATTRS_NET_PEER_IP]=F,X[SA.SEMATTRS_NET_PEER_PORT]=W,G[SA.ATTR_NETWORK_PEER_ADDRESS]=F,G[SA.ATTR_NETWORK_PEER_PORT]=W,G[SA.ATTR_NETWORK_PROTOCOL_VERSION]=A.httpVersion}if(OpA.setResponseContentLengthAttribute(A,X),B)X[SA.SEMATTRS_HTTP_STATUS_CODE]=B,X[yO.AttributeNames.HTTP_STATUS_TEXT]=(Y||"").toUpperCase();switch(OpA.setAttributesFromHttpKind(J,X),Q){case 1:return G;case 2:return X}return Object.assign(X,G)};OpA.getOutgoingRequestAttributesOnResponse=LlB;var qlB=(A)=>{let Q={};return Q[SA.SEMATTRS_NET_PEER_PORT]=A[SA.SEMATTRS_NET_PEER_PORT],Q[SA.SEMATTRS_HTTP_STATUS_CODE]=A[SA.SEMATTRS_HTTP_STATUS_CODE],Q[SA.SEMATTRS_HTTP_FLAVOR]=A[SA.SEMATTRS_HTTP_FLAVOR],Q};OpA.getOutgoingRequestMetricAttributesOnResponse=qlB;function XF(A,Q){let B=A.split(":");if(B.length===1){if(Q==="http")return{host:B[0],port:"80"};if(Q==="https")return{host:B[0],port:"443"};return{host:B[0]}}if(B.length===2)return{host:B[0],port:B[1]};if(B[0].startsWith("[")){if(B[B.length-1].endsWith("]")){if(Q==="http")return{host:A,port:"80"};if(Q==="https")return{host:A,port:"443"}}else if(B[B.length-2].endsWith("]"))return{host:B.slice(0,-1).join(":"),port:B[B.length-1]}}return{host:A}}function MlB(A,Q){let B=A.headers.forwarded;if(B){for(let C of jpA(B))if(C.host)return XF(C.host,C.proto)}let Y=A.headers["x-forwarded-host"];if(typeof Y==="string"){if(typeof A.headers["x-forwarded-proto"]==="string")return XF(Y,A.headers["x-forwarded-proto"]);if(Array.isArray(A.headers["x-forwarded-proto"]))return XF(Y,A.headers["x-forwarded-proto"][0]);return XF(Y)}else if(Array.isArray(Y)&&typeof Y[0]==="string"&&Y[0].length>0){if(typeof A.headers["x-forwarded-proto"]==="string")return XF(Y[0],A.headers["x-forwarded-proto"]);if(Array.isArray(A.headers["x-forwarded-proto"]))return XF(Y[0],A.headers["x-forwarded-proto"][0]);return XF(Y[0])}let J=A.headers.host;if(typeof J==="string"&&J.length>0)return XF(J,Q);return null}function RpA(A){let Q=A.headers.forwarded;if(Q){for(let J of jpA(Q))if(J.for)return J.for}let B=A.headers["x-forwarded-for"];if(typeof B==="string")return B;else if(Array.isArray(B))return B[0];let Y=A.socket.remoteAddress;if(Y)return Y;return null}OpA.getRemoteClientAddress=RpA;function zlB(A,Q,B){var Y,J;try{if(Q.headers.host)return new URL((Y=Q.url)!==null&&Y!==void 0?Y:"/",`${A}://${Q.headers.host}`);else{let C=new URL((J=Q.url)!==null&&J!==void 0?J:"/",`${A}://localhost`);return{pathname:C.pathname,search:C.search,toString:function(){return C.pathname+C.search}}}}catch(C){return B.verbose("Unable to get URL from request",C),{}}}var RlB=(A,Q,B)=>{let Y=A.headers,J=Y["user-agent"],C=Y["x-forwarded-for"],X=A.httpVersion,G=Y.host,F=(G===null||G===void 0?void 0:G.replace(/^(.*)(:[0-9]{1,5})/,"$1"))||"localhost",W=A.method,Z=wpA(W),U=MlB(A,Q.component),$=Q.serverName,E=RpA(A),K={[SA.ATTR_HTTP_REQUEST_METHOD]:Z,[SA.ATTR_URL_SCHEME]:Q.component,[SA.ATTR_SERVER_ADDRESS]:U===null||U===void 0?void 0:U.host,[SA.ATTR_NETWORK_PEER_ADDRESS]:A.socket.remoteAddress,[SA.ATTR_NETWORK_PEER_PORT]:A.socket.remotePort,[SA.ATTR_NETWORK_PROTOCOL_VERSION]:A.httpVersion,[SA.ATTR_USER_AGENT_ORIGINAL]:J},I=zlB(Q.component,A,B);if((I===null||I===void 0?void 0:I.pathname)!=null)K[SA.ATTR_URL_PATH]=I.pathname;if(E!=null)K[SA.ATTR_CLIENT_ADDRESS]=E;if((U===null||U===void 0?void 0:U.port)!=null)K[SA.ATTR_SERVER_PORT]=Number(U.port);if(W!==Z)K[SA.ATTR_HTTP_REQUEST_METHOD_ORIGINAL]=W;let V={[SA.SEMATTRS_HTTP_URL]:I.toString(),[SA.SEMATTRS_HTTP_HOST]:G,[SA.SEMATTRS_NET_HOST_NAME]:F,[SA.SEMATTRS_HTTP_METHOD]:W,[SA.SEMATTRS_HTTP_SCHEME]:Q.component};if(typeof C==="string")V[SA.SEMATTRS_HTTP_CLIENT_IP]=C.split(",")[0];if(typeof $==="string")V[SA.SEMATTRS_HTTP_SERVER_NAME]=$;if(I===null||I===void 0?void 0:I.pathname)V[SA.SEMATTRS_HTTP_TARGET]=(I===null||I===void 0?void 0:I.pathname)+(I===null||I===void 0?void 0:I.search)||"/";if(J!==void 0)V[SA.SEMATTRS_HTTP_USER_AGENT]=J;switch(OpA.setRequestContentLengthAttribute(A,V),OpA.setAttributesFromHttpKind(X,V),Q.semconvStability){case 1:return Object.assign(K,Q.hookAttributes);case 2:return Object.assign(V,Q.hookAttributes)}return Object.assign(V,K,Q.hookAttributes)};OpA.getIncomingRequestAttributes=RlB;var wlB=(A)=>{let Q={};return Q[SA.SEMATTRS_HTTP_SCHEME]=A[SA.SEMATTRS_HTTP_SCHEME],Q[SA.SEMATTRS_HTTP_METHOD]=A[SA.SEMATTRS_HTTP_METHOD],Q[SA.SEMATTRS_NET_HOST_NAME]=A[SA.SEMATTRS_NET_HOST_NAME],Q[SA.SEMATTRS_HTTP_FLAVOR]=A[SA.SEMATTRS_HTTP_FLAVOR],Q};OpA.getIncomingRequestMetricAttributes=wlB;var jlB=(A,Q,B)=>{let{socket:Y}=A,{statusCode:J,statusMessage:C}=Q,X={[SA.ATTR_HTTP_RESPONSE_STATUS_CODE]:J},G=(0,MpA.getRPCMetadata)(ZL.context.active()),F={};if(Y){let{localAddress:W,localPort:Z,remoteAddress:U,remotePort:$}=Y;F[SA.SEMATTRS_NET_HOST_IP]=W,F[SA.SEMATTRS_NET_HOST_PORT]=Z,F[SA.SEMATTRS_NET_PEER_IP]=U,F[SA.SEMATTRS_NET_PEER_PORT]=$}if(F[SA.SEMATTRS_HTTP_STATUS_CODE]=J,F[yO.AttributeNames.HTTP_STATUS_TEXT]=(C||"").toUpperCase(),(G===null||G===void 0?void 0:G.type)===MpA.RPCType.HTTP&&G.route!==void 0)F[SA.SEMATTRS_HTTP_ROUTE]=G.route,X[SA.ATTR_HTTP_ROUTE]=G.route;switch(B){case 1:return X;case 2:return F}return Object.assign(F,X)};OpA.getIncomingRequestAttributesOnResponse=jlB;var OlB=(A)=>{let Q={};if(Q[SA.SEMATTRS_HTTP_STATUS_CODE]=A[SA.SEMATTRS_HTTP_STATUS_CODE],Q[SA.SEMATTRS_NET_HOST_PORT]=A[SA.SEMATTRS_NET_HOST_PORT],A[SA.SEMATTRS_HTTP_ROUTE]!==void 0)Q[SA.SEMATTRS_HTTP_ROUTE]=A[SA.SEMATTRS_HTTP_ROUTE];return Q};OpA.getIncomingRequestMetricAttributesOnResponse=OlB;var PlB=(A)=>{let Q={};if(A[SA.ATTR_HTTP_ROUTE]!==void 0)Q[SA.ATTR_HTTP_ROUTE]=A[SA.SEMATTRS_HTTP_ROUTE];if(A[SA.ATTR_HTTP_RESPONSE_STATUS_CODE])Q[SA.ATTR_HTTP_RESPONSE_STATUS_CODE]=A[SA.ATTR_HTTP_RESPONSE_STATUS_CODE];return Q};OpA.getIncomingStableRequestMetricAttributesOnResponse=PlB;function TlB(A,Q){let B=new Map;for(let Y=0,J=Q.length;Y{for(let C of B.keys()){let X=J(C);if(X===void 0)continue;let G=B.get(C),F=`http.${A}.header.${G}`;if(typeof X==="string")Y.setAttribute(F,[X]);else if(Array.isArray(X))Y.setAttribute(F,X);else Y.setAttribute(F,[X])}}}OpA.headerCapture=TlB;var SlB=new Set(["GET","HEAD","POST","PUT","DELETE","CONNECT","OPTIONS","TRACE","PATCH"]);function wpA(A){if(A==null)return"GET";let Q=A.toUpperCase();if(SlB.has(Q))return Q;return"_OTHER"}function jpA(A){try{return ClB(A)}catch(Q){return[]}}});var xpA=R((hpA)=>{Object.defineProperty(hpA,"__esModule",{value:!0});hpA.HttpInstrumentation=void 0;var _Q=yA(),XK=MB(),vpA=ZvA(),nlB=u("url"),slB=EvA(),h5=NB(),Sp=MB(),kp=u("events"),l0=wp(),g0=_pA();class ypA extends h5.InstrumentationBase{constructor(A={}){super("@opentelemetry/instrumentation-http",slB.VERSION,A);this._spanNotEnded=new WeakSet,this._semconvStability=2,this._headerCapture=this._createHeaderCapture();for(let Q of(0,Sp.getEnv)().OTEL_SEMCONV_STABILITY_OPT_IN)if(Q.toLowerCase()==="http/dup"){this._semconvStability=3;break}else if(Q.toLowerCase()==="http")this._semconvStability=1}_updateMetricInstruments(){this._oldHttpServerDurationHistogram=this.meter.createHistogram("http.server.duration",{description:"Measures the duration of inbound HTTP requests.",unit:"ms",valueType:_Q.ValueType.DOUBLE}),this._oldHttpClientDurationHistogram=this.meter.createHistogram("http.client.duration",{description:"Measures the duration of outbound HTTP requests.",unit:"ms",valueType:_Q.ValueType.DOUBLE}),this._stableHttpServerDurationHistogram=this.meter.createHistogram(l0.METRIC_HTTP_SERVER_REQUEST_DURATION,{description:"Duration of HTTP server requests.",unit:"s",valueType:_Q.ValueType.DOUBLE,advice:{explicitBucketBoundaries:[0.005,0.01,0.025,0.05,0.075,0.1,0.25,0.5,0.75,1,2.5,5,7.5,10]}}),this._stableHttpClientDurationHistogram=this.meter.createHistogram(l0.METRIC_HTTP_CLIENT_REQUEST_DURATION,{description:"Duration of HTTP client requests.",unit:"s",valueType:_Q.ValueType.DOUBLE,advice:{explicitBucketBoundaries:[0.005,0.01,0.025,0.05,0.075,0.1,0.25,0.5,0.75,1,2.5,5,7.5,10]}})}_recordServerDuration(A,Q,B){if((this._semconvStability&2)===2)this._oldHttpServerDurationHistogram.record(A,Q);if((this._semconvStability&1)===1)this._stableHttpServerDurationHistogram.record(A/1000,B)}_recordClientDuration(A,Q,B){if((this._semconvStability&2)===2)this._oldHttpClientDurationHistogram.record(A,Q);if((this._semconvStability&1)===1)this._stableHttpClientDurationHistogram.record(A/1000,B)}setConfig(A={}){super.setConfig(A),this._headerCapture=this._createHeaderCapture()}init(){return[this._getHttpsInstrumentation(),this._getHttpInstrumentation()]}_getHttpInstrumentation(){return new h5.InstrumentationNodeModuleDefinition("http",["*"],(A)=>{let Q=A[Symbol.toStringTag]==="Module";if(!this.getConfig().disableOutgoingRequestInstrumentation){let B=this._wrap(A,"request",this._getPatchOutgoingRequestFunction("http")),Y=this._wrap(A,"get",this._getPatchOutgoingGetFunction(B));if(Q)A.default.request=B,A.default.get=Y}if(!this.getConfig().disableIncomingRequestInstrumentation)this._wrap(A.Server.prototype,"emit",this._getPatchIncomingRequestFunction("http"));return A},(A)=>{if(A===void 0)return;if(!this.getConfig().disableOutgoingRequestInstrumentation)this._unwrap(A,"request"),this._unwrap(A,"get");if(!this.getConfig().disableIncomingRequestInstrumentation)this._unwrap(A.Server.prototype,"emit")})}_getHttpsInstrumentation(){return new h5.InstrumentationNodeModuleDefinition("https",["*"],(A)=>{let Q=A[Symbol.toStringTag]==="Module";if(!this.getConfig().disableOutgoingRequestInstrumentation){let B=this._wrap(A,"request",this._getPatchHttpsOutgoingRequestFunction("https")),Y=this._wrap(A,"get",this._getPatchHttpsOutgoingGetFunction(B));if(Q)A.default.request=B,A.default.get=Y}if(!this.getConfig().disableIncomingRequestInstrumentation)this._wrap(A.Server.prototype,"emit",this._getPatchIncomingRequestFunction("https"));return A},(A)=>{if(A===void 0)return;if(!this.getConfig().disableOutgoingRequestInstrumentation)this._unwrap(A,"request"),this._unwrap(A,"get");if(!this.getConfig().disableIncomingRequestInstrumentation)this._unwrap(A.Server.prototype,"emit")})}_getPatchIncomingRequestFunction(A){return(Q)=>{return this._incomingRequestFunction(A,Q)}}_getPatchOutgoingRequestFunction(A){return(Q)=>{return this._outgoingRequestFunction(A,Q)}}_getPatchOutgoingGetFunction(A){return(Q)=>{return function(Y,...J){let C=A(Y,...J);return C.end(),C}}}_getPatchHttpsOutgoingRequestFunction(A){return(Q)=>{let B=this;return function(J,...C){var X;if(A==="https"&&typeof J==="object"&&((X=J===null||J===void 0?void 0:J.constructor)===null||X===void 0?void 0:X.name)!=="URL")J=Object.assign({},J),B._setDefaultOptions(J);return B._getPatchOutgoingRequestFunction(A)(Q)(J,...C)}}}_setDefaultOptions(A){A.protocol=A.protocol||"https:",A.port=A.port||443}_getPatchHttpsOutgoingGetFunction(A){return(Q)=>{let B=this;return function(J,...C){return B._getPatchOutgoingGetFunction(A)(Q)(J,...C)}}}_traceClientRequest(A,Q,B,Y,J){if(this.getConfig().requestHook)this._callRequestHook(Q,A);let C=!1;return A.prependListener("response",(X)=>{if(this._diag.debug("outgoingRequest on response()"),A.listenerCount("response")<=1)X.resume();let G=(0,g0.getOutgoingRequestAttributesOnResponse)(X,this._semconvStability);if(Q.setAttributes(G),Y=Object.assign(Y,(0,g0.getOutgoingRequestMetricAttributesOnResponse)(G)),this.getConfig().responseHook)this._callResponseHook(Q,X);this._headerCapture.client.captureRequestHeaders(Q,(W)=>A.getHeader(W)),this._headerCapture.client.captureResponseHeaders(Q,(W)=>X.headers[W]),_Q.context.bind(_Q.context.active(),X);let F=()=>{if(this._diag.debug("outgoingRequest on end()"),C)return;C=!0;let W;if(X.aborted&&!X.complete)W={code:_Q.SpanStatusCode.ERROR};else W={code:(0,g0.parseResponseStatus)(_Q.SpanKind.CLIENT,X.statusCode)};if(Q.setStatus(W),this.getConfig().applyCustomAttributesOnSpan)(0,h5.safeExecuteInTheMiddle)(()=>this.getConfig().applyCustomAttributesOnSpan(Q,A,X),()=>{},!0);this._closeHttpSpan(Q,_Q.SpanKind.CLIENT,B,Y,J)};if(X.on("end",F),vpA.lt(process.version,"16.0.0"))X.on("close",F);X.on(kp.errorMonitor,(W)=>{if(this._diag.debug("outgoingRequest on error()",W),C)return;C=!0,(0,g0.setSpanWithError)(Q,W,this._semconvStability),Q.setStatus({code:_Q.SpanStatusCode.ERROR,message:W.message}),this._closeHttpSpan(Q,_Q.SpanKind.CLIENT,B,Y,J)})}),A.on("close",()=>{if(this._diag.debug("outgoingRequest on request close()"),A.aborted||C)return;C=!0,this._closeHttpSpan(Q,_Q.SpanKind.CLIENT,B,Y,J)}),A.on(kp.errorMonitor,(X)=>{if(this._diag.debug("outgoingRequest on request error()",X),C)return;C=!0,(0,g0.setSpanWithError)(Q,X,this._semconvStability),this._closeHttpSpan(Q,_Q.SpanKind.CLIENT,B,Y,J)}),this._diag.debug("http.ClientRequest return request"),A}_incomingRequestFunction(A,Q){let B=this;return function(J,...C){if(J!=="request")return Q.apply(this,[J,...C]);let X=C[0],G=C[1],F=X.method||"GET";if(B._diag.debug(`${A} instrumentation incomingRequest`),(0,h5.safeExecuteInTheMiddle)(()=>{var D,L;return(L=(D=B.getConfig()).ignoreIncomingRequestHook)===null||L===void 0?void 0:L.call(D,X)},(D)=>{if(D!=null)B._diag.error("caught ignoreIncomingRequestHook error: ",D)},!0))return _Q.context.with((0,XK.suppressTracing)(_Q.context.active()),()=>{return _Q.context.bind(_Q.context.active(),X),_Q.context.bind(_Q.context.active(),G),Q.apply(this,[J,...C])});let W=X.headers,Z=(0,g0.getIncomingRequestAttributes)(X,{component:A,serverName:B.getConfig().serverName,hookAttributes:B._callStartSpanHook(X,B.getConfig().startIncomingSpanHook),semconvStability:B._semconvStability},B._diag),U={kind:_Q.SpanKind.SERVER,attributes:Z},$=(0,XK.hrTime)(),E=(0,g0.getIncomingRequestMetricAttributes)(Z),K={[l0.ATTR_HTTP_REQUEST_METHOD]:Z[l0.ATTR_HTTP_REQUEST_METHOD],[l0.ATTR_URL_SCHEME]:Z[l0.ATTR_URL_SCHEME]};if(Z[l0.ATTR_NETWORK_PROTOCOL_VERSION])K[l0.ATTR_NETWORK_PROTOCOL_VERSION]=Z[l0.ATTR_NETWORK_PROTOCOL_VERSION];let I=_Q.propagation.extract(_Q.ROOT_CONTEXT,W),V=B._startHttpSpan(F,U,I),H={type:Sp.RPCType.HTTP,span:V};return _Q.context.with((0,Sp.setRPCMetadata)(_Q.trace.setSpan(I,V),H),()=>{if(_Q.context.bind(_Q.context.active(),X),_Q.context.bind(_Q.context.active(),G),B.getConfig().requestHook)B._callRequestHook(V,X);if(B.getConfig().responseHook)B._callResponseHook(V,G);B._headerCapture.server.captureRequestHeaders(V,(L)=>X.headers[L]);let D=!1;return G.on("close",()=>{if(D)return;B._onServerResponseFinish(X,G,V,E,K,$)}),G.on(kp.errorMonitor,(L)=>{D=!0,B._onServerResponseError(V,E,K,$,L)}),(0,h5.safeExecuteInTheMiddle)(()=>Q.apply(this,[J,...C]),(L)=>{if(L)throw(0,g0.setSpanWithError)(V,L,B._semconvStability),B._closeHttpSpan(V,_Q.SpanKind.SERVER,$,E,K),L})})}}_outgoingRequestFunction(A,Q){let B=this;return function(J,...C){if(!(0,g0.isValidOptionsType)(J))return Q.apply(this,[J,...C]);let X=typeof C[0]==="object"&&(typeof J==="string"||J instanceof nlB.URL)?C.shift():void 0,{method:G,invalidUrl:F,optionsParsed:W}=(0,g0.getRequestInfo)(B._diag,J,X);if(A==="http"&&vpA.lt(process.version,"9.0.0")&&W.protocol==="https:")return Q.apply(this,[W,...C]);if((0,h5.safeExecuteInTheMiddle)(()=>{var z,M;return(M=(z=B.getConfig()).ignoreOutgoingRequestHook)===null||M===void 0?void 0:M.call(z,W)},(z)=>{if(z!=null)B._diag.error("caught ignoreOutgoingRequestHook error: ",z)},!0))return Q.apply(this,[W,...C]);let{hostname:Z,port:U}=(0,g0.extractHostnameAndPort)(W),$=(0,g0.getOutgoingRequestAttributes)(W,{component:A,port:U,hostname:Z,hookAttributes:B._callStartSpanHook(W,B.getConfig().startOutgoingSpanHook)},B._semconvStability),E=(0,XK.hrTime)(),K=(0,g0.getOutgoingRequestMetricAttributes)($),I={[l0.ATTR_HTTP_REQUEST_METHOD]:$[l0.ATTR_HTTP_REQUEST_METHOD],[l0.ATTR_SERVER_ADDRESS]:$[l0.ATTR_SERVER_ADDRESS],[l0.ATTR_SERVER_PORT]:$[l0.ATTR_SERVER_PORT]};if($[l0.ATTR_HTTP_RESPONSE_STATUS_CODE])I[l0.ATTR_HTTP_RESPONSE_STATUS_CODE]=$[l0.ATTR_HTTP_RESPONSE_STATUS_CODE];if($[l0.ATTR_NETWORK_PROTOCOL_VERSION])I[l0.ATTR_NETWORK_PROTOCOL_VERSION]=$[l0.ATTR_NETWORK_PROTOCOL_VERSION];let V={kind:_Q.SpanKind.CLIENT,attributes:$},H=B._startHttpSpan(G,V),D=_Q.context.active(),L=_Q.trace.setSpan(D,H);if(!W.headers)W.headers={};else W.headers=Object.assign({},W.headers);return _Q.propagation.inject(L,W.headers),_Q.context.with(L,()=>{let z=C[C.length-1];if(typeof z==="function")C[C.length-1]=_Q.context.bind(D,z);let M=(0,h5.safeExecuteInTheMiddle)(()=>{if(F)return Q.apply(this,[J,...C]);else return Q.apply(this,[W,...C])},(N)=>{if(N)throw(0,g0.setSpanWithError)(H,N,B._semconvStability),B._closeHttpSpan(H,_Q.SpanKind.CLIENT,E,K,I),N});return B._diag.debug(`${A} instrumentation outgoingRequest`),_Q.context.bind(D,M),B._traceClientRequest(M,H,E,K,I)})}}_onServerResponseFinish(A,Q,B,Y,J,C){let X=(0,g0.getIncomingRequestAttributesOnResponse)(A,Q,this._semconvStability);Y=Object.assign(Y,(0,g0.getIncomingRequestMetricAttributesOnResponse)(X)),J=Object.assign(J,(0,g0.getIncomingStableRequestMetricAttributesOnResponse)(X)),this._headerCapture.server.captureResponseHeaders(B,(F)=>Q.getHeader(F)),B.setAttributes(X).setStatus({code:(0,g0.parseResponseStatus)(_Q.SpanKind.SERVER,Q.statusCode)});let G=X[l0.SEMATTRS_HTTP_ROUTE];if(G)B.updateName(`${A.method||"GET"} ${G}`);if(this.getConfig().applyCustomAttributesOnSpan)(0,h5.safeExecuteInTheMiddle)(()=>this.getConfig().applyCustomAttributesOnSpan(B,A,Q),()=>{},!0);this._closeHttpSpan(B,_Q.SpanKind.SERVER,C,Y,J)}_onServerResponseError(A,Q,B,Y,J){(0,g0.setSpanWithError)(A,J,this._semconvStability),this._closeHttpSpan(A,_Q.SpanKind.SERVER,Y,Q,B)}_startHttpSpan(A,Q,B=_Q.context.active()){let Y=Q.kind===_Q.SpanKind.CLIENT?this.getConfig().requireParentforOutgoingSpans:this.getConfig().requireParentforIncomingSpans,J,C=_Q.trace.getSpan(B);if(Y===!0&&C===void 0)J=_Q.trace.wrapSpanContext(_Q.INVALID_SPAN_CONTEXT);else if(Y===!0&&(C===null||C===void 0?void 0:C.spanContext().isRemote))J=C;else J=this.tracer.startSpan(A,Q,B);return this._spanNotEnded.add(J),J}_closeHttpSpan(A,Q,B,Y,J){if(!this._spanNotEnded.has(A))return;A.end(),this._spanNotEnded.delete(A);let C=(0,XK.hrTimeToMilliseconds)((0,XK.hrTimeDuration)(B,(0,XK.hrTime)()));if(Q===_Q.SpanKind.SERVER)this._recordServerDuration(C,Y,J);else if(Q===_Q.SpanKind.CLIENT)this._recordClientDuration(C,Y,J)}_callResponseHook(A,Q){(0,h5.safeExecuteInTheMiddle)(()=>this.getConfig().responseHook(A,Q),()=>{},!0)}_callRequestHook(A,Q){(0,h5.safeExecuteInTheMiddle)(()=>this.getConfig().requestHook(A,Q),()=>{},!0)}_callStartSpanHook(A,Q){if(typeof Q==="function")return(0,h5.safeExecuteInTheMiddle)(()=>Q(A),()=>{},!0)}_createHeaderCapture(){var A,Q,B,Y,J,C,X,G,F,W,Z,U;let $=this.getConfig();return{client:{captureRequestHeaders:(0,g0.headerCapture)("request",(B=(Q=(A=$.headersToSpanAttributes)===null||A===void 0?void 0:A.client)===null||Q===void 0?void 0:Q.requestHeaders)!==null&&B!==void 0?B:[]),captureResponseHeaders:(0,g0.headerCapture)("response",(C=(J=(Y=$.headersToSpanAttributes)===null||Y===void 0?void 0:Y.client)===null||J===void 0?void 0:J.responseHeaders)!==null&&C!==void 0?C:[])},server:{captureRequestHeaders:(0,g0.headerCapture)("request",(F=(G=(X=$.headersToSpanAttributes)===null||X===void 0?void 0:X.server)===null||G===void 0?void 0:G.requestHeaders)!==null&&F!==void 0?F:[]),captureResponseHeaders:(0,g0.headerCapture)("response",(U=(Z=(W=$.headersToSpanAttributes)===null||W===void 0?void 0:W.server)===null||Z===void 0?void 0:Z.responseHeaders)!==null&&U!==void 0?U:[])}}}}hpA.HttpInstrumentation=ypA});var fpA=R((_p)=>{Object.defineProperty(_p,"__esModule",{value:!0});_p.HttpInstrumentation=void 0;var rlB=xpA();Object.defineProperty(_p,"HttpInstrumentation",{enumerable:!0,get:function(){return rlB.HttpInstrumentation}})});var yp=R((bpA)=>{Object.defineProperty(bpA,"__esModule",{value:!0});bpA.createConstMap=void 0;function ApB(A){let Q={},B=A.length;for(let Y=0;Y{Object.defineProperty(SaA,"__esModule",{value:!0});SaA.SEMATTRS_NET_HOST_CARRIER_ICC=SaA.SEMATTRS_NET_HOST_CARRIER_MNC=SaA.SEMATTRS_NET_HOST_CARRIER_MCC=SaA.SEMATTRS_NET_HOST_CARRIER_NAME=SaA.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=SaA.SEMATTRS_NET_HOST_CONNECTION_TYPE=SaA.SEMATTRS_NET_HOST_NAME=SaA.SEMATTRS_NET_HOST_PORT=SaA.SEMATTRS_NET_HOST_IP=SaA.SEMATTRS_NET_PEER_NAME=SaA.SEMATTRS_NET_PEER_PORT=SaA.SEMATTRS_NET_PEER_IP=SaA.SEMATTRS_NET_TRANSPORT=SaA.SEMATTRS_FAAS_INVOKED_REGION=SaA.SEMATTRS_FAAS_INVOKED_PROVIDER=SaA.SEMATTRS_FAAS_INVOKED_NAME=SaA.SEMATTRS_FAAS_COLDSTART=SaA.SEMATTRS_FAAS_CRON=SaA.SEMATTRS_FAAS_TIME=SaA.SEMATTRS_FAAS_DOCUMENT_NAME=SaA.SEMATTRS_FAAS_DOCUMENT_TIME=SaA.SEMATTRS_FAAS_DOCUMENT_OPERATION=SaA.SEMATTRS_FAAS_DOCUMENT_COLLECTION=SaA.SEMATTRS_FAAS_EXECUTION=SaA.SEMATTRS_FAAS_TRIGGER=SaA.SEMATTRS_EXCEPTION_ESCAPED=SaA.SEMATTRS_EXCEPTION_STACKTRACE=SaA.SEMATTRS_EXCEPTION_MESSAGE=SaA.SEMATTRS_EXCEPTION_TYPE=SaA.SEMATTRS_DB_SQL_TABLE=SaA.SEMATTRS_DB_MONGODB_COLLECTION=SaA.SEMATTRS_DB_REDIS_DATABASE_INDEX=SaA.SEMATTRS_DB_HBASE_NAMESPACE=SaA.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=SaA.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=SaA.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=SaA.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=SaA.SEMATTRS_DB_CASSANDRA_TABLE=SaA.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=SaA.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=SaA.SEMATTRS_DB_CASSANDRA_KEYSPACE=SaA.SEMATTRS_DB_MSSQL_INSTANCE_NAME=SaA.SEMATTRS_DB_OPERATION=SaA.SEMATTRS_DB_STATEMENT=SaA.SEMATTRS_DB_NAME=SaA.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=SaA.SEMATTRS_DB_USER=SaA.SEMATTRS_DB_CONNECTION_STRING=SaA.SEMATTRS_DB_SYSTEM=SaA.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=void 0;SaA.SEMATTRS_MESSAGING_DESTINATION_KIND=SaA.SEMATTRS_MESSAGING_DESTINATION=SaA.SEMATTRS_MESSAGING_SYSTEM=SaA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=SaA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=SaA.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=SaA.SEMATTRS_AWS_DYNAMODB_COUNT=SaA.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=SaA.SEMATTRS_AWS_DYNAMODB_SEGMENT=SaA.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=SaA.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=SaA.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=SaA.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=SaA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=SaA.SEMATTRS_AWS_DYNAMODB_SELECT=SaA.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=SaA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=SaA.SEMATTRS_AWS_DYNAMODB_LIMIT=SaA.SEMATTRS_AWS_DYNAMODB_PROJECTION=SaA.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=SaA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=SaA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=SaA.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=SaA.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=SaA.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=SaA.SEMATTRS_HTTP_CLIENT_IP=SaA.SEMATTRS_HTTP_ROUTE=SaA.SEMATTRS_HTTP_SERVER_NAME=SaA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=SaA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=SaA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=SaA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=SaA.SEMATTRS_HTTP_USER_AGENT=SaA.SEMATTRS_HTTP_FLAVOR=SaA.SEMATTRS_HTTP_STATUS_CODE=SaA.SEMATTRS_HTTP_SCHEME=SaA.SEMATTRS_HTTP_HOST=SaA.SEMATTRS_HTTP_TARGET=SaA.SEMATTRS_HTTP_URL=SaA.SEMATTRS_HTTP_METHOD=SaA.SEMATTRS_CODE_LINENO=SaA.SEMATTRS_CODE_FILEPATH=SaA.SEMATTRS_CODE_NAMESPACE=SaA.SEMATTRS_CODE_FUNCTION=SaA.SEMATTRS_THREAD_NAME=SaA.SEMATTRS_THREAD_ID=SaA.SEMATTRS_ENDUSER_SCOPE=SaA.SEMATTRS_ENDUSER_ROLE=SaA.SEMATTRS_ENDUSER_ID=SaA.SEMATTRS_PEER_SERVICE=void 0;SaA.DBSYSTEMVALUES_FILEMAKER=SaA.DBSYSTEMVALUES_DERBY=SaA.DBSYSTEMVALUES_FIREBIRD=SaA.DBSYSTEMVALUES_ADABAS=SaA.DBSYSTEMVALUES_CACHE=SaA.DBSYSTEMVALUES_EDB=SaA.DBSYSTEMVALUES_FIRSTSQL=SaA.DBSYSTEMVALUES_INGRES=SaA.DBSYSTEMVALUES_HANADB=SaA.DBSYSTEMVALUES_MAXDB=SaA.DBSYSTEMVALUES_PROGRESS=SaA.DBSYSTEMVALUES_HSQLDB=SaA.DBSYSTEMVALUES_CLOUDSCAPE=SaA.DBSYSTEMVALUES_HIVE=SaA.DBSYSTEMVALUES_REDSHIFT=SaA.DBSYSTEMVALUES_POSTGRESQL=SaA.DBSYSTEMVALUES_DB2=SaA.DBSYSTEMVALUES_ORACLE=SaA.DBSYSTEMVALUES_MYSQL=SaA.DBSYSTEMVALUES_MSSQL=SaA.DBSYSTEMVALUES_OTHER_SQL=SaA.SemanticAttributes=SaA.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=SaA.SEMATTRS_MESSAGE_COMPRESSED_SIZE=SaA.SEMATTRS_MESSAGE_ID=SaA.SEMATTRS_MESSAGE_TYPE=SaA.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=SaA.SEMATTRS_RPC_JSONRPC_ERROR_CODE=SaA.SEMATTRS_RPC_JSONRPC_REQUEST_ID=SaA.SEMATTRS_RPC_JSONRPC_VERSION=SaA.SEMATTRS_RPC_GRPC_STATUS_CODE=SaA.SEMATTRS_RPC_METHOD=SaA.SEMATTRS_RPC_SERVICE=SaA.SEMATTRS_RPC_SYSTEM=SaA.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=SaA.SEMATTRS_MESSAGING_KAFKA_PARTITION=SaA.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=SaA.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=SaA.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=SaA.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=SaA.SEMATTRS_MESSAGING_CONSUMER_ID=SaA.SEMATTRS_MESSAGING_OPERATION=SaA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=SaA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=SaA.SEMATTRS_MESSAGING_CONVERSATION_ID=SaA.SEMATTRS_MESSAGING_MESSAGE_ID=SaA.SEMATTRS_MESSAGING_URL=SaA.SEMATTRS_MESSAGING_PROTOCOL_VERSION=SaA.SEMATTRS_MESSAGING_PROTOCOL=SaA.SEMATTRS_MESSAGING_TEMP_DESTINATION=void 0;SaA.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=SaA.FaasDocumentOperationValues=SaA.FAASDOCUMENTOPERATIONVALUES_DELETE=SaA.FAASDOCUMENTOPERATIONVALUES_EDIT=SaA.FAASDOCUMENTOPERATIONVALUES_INSERT=SaA.FaasTriggerValues=SaA.FAASTRIGGERVALUES_OTHER=SaA.FAASTRIGGERVALUES_TIMER=SaA.FAASTRIGGERVALUES_PUBSUB=SaA.FAASTRIGGERVALUES_HTTP=SaA.FAASTRIGGERVALUES_DATASOURCE=SaA.DbCassandraConsistencyLevelValues=SaA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=SaA.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=SaA.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=SaA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=SaA.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=SaA.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=SaA.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=SaA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=SaA.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=SaA.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=SaA.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=SaA.DbSystemValues=SaA.DBSYSTEMVALUES_COCKROACHDB=SaA.DBSYSTEMVALUES_MEMCACHED=SaA.DBSYSTEMVALUES_ELASTICSEARCH=SaA.DBSYSTEMVALUES_GEODE=SaA.DBSYSTEMVALUES_NEO4J=SaA.DBSYSTEMVALUES_DYNAMODB=SaA.DBSYSTEMVALUES_COSMOSDB=SaA.DBSYSTEMVALUES_COUCHDB=SaA.DBSYSTEMVALUES_COUCHBASE=SaA.DBSYSTEMVALUES_REDIS=SaA.DBSYSTEMVALUES_MONGODB=SaA.DBSYSTEMVALUES_HBASE=SaA.DBSYSTEMVALUES_CASSANDRA=SaA.DBSYSTEMVALUES_COLDFUSION=SaA.DBSYSTEMVALUES_H2=SaA.DBSYSTEMVALUES_VERTICA=SaA.DBSYSTEMVALUES_TERADATA=SaA.DBSYSTEMVALUES_SYBASE=SaA.DBSYSTEMVALUES_SQLITE=SaA.DBSYSTEMVALUES_POINTBASE=SaA.DBSYSTEMVALUES_PERVASIVE=SaA.DBSYSTEMVALUES_NETEZZA=SaA.DBSYSTEMVALUES_MARIADB=SaA.DBSYSTEMVALUES_INTERBASE=SaA.DBSYSTEMVALUES_INSTANTDB=SaA.DBSYSTEMVALUES_INFORMIX=void 0;SaA.MESSAGINGOPERATIONVALUES_RECEIVE=SaA.MessagingDestinationKindValues=SaA.MESSAGINGDESTINATIONKINDVALUES_TOPIC=SaA.MESSAGINGDESTINATIONKINDVALUES_QUEUE=SaA.HttpFlavorValues=SaA.HTTPFLAVORVALUES_QUIC=SaA.HTTPFLAVORVALUES_SPDY=SaA.HTTPFLAVORVALUES_HTTP_2_0=SaA.HTTPFLAVORVALUES_HTTP_1_1=SaA.HTTPFLAVORVALUES_HTTP_1_0=SaA.NetHostConnectionSubtypeValues=SaA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=SaA.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=SaA.NETHOSTCONNECTIONSUBTYPEVALUES_NR=SaA.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=SaA.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=SaA.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=SaA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=SaA.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=SaA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=SaA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=SaA.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=SaA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=SaA.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=SaA.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=SaA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=SaA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=SaA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=SaA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=SaA.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=SaA.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=SaA.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=SaA.NetHostConnectionTypeValues=SaA.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=SaA.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=SaA.NETHOSTCONNECTIONTYPEVALUES_CELL=SaA.NETHOSTCONNECTIONTYPEVALUES_WIRED=SaA.NETHOSTCONNECTIONTYPEVALUES_WIFI=SaA.NetTransportValues=SaA.NETTRANSPORTVALUES_OTHER=SaA.NETTRANSPORTVALUES_INPROC=SaA.NETTRANSPORTVALUES_PIPE=SaA.NETTRANSPORTVALUES_UNIX=SaA.NETTRANSPORTVALUES_IP=SaA.NETTRANSPORTVALUES_IP_UDP=SaA.NETTRANSPORTVALUES_IP_TCP=SaA.FaasInvokedProviderValues=SaA.FAASINVOKEDPROVIDERVALUES_GCP=SaA.FAASINVOKEDPROVIDERVALUES_AZURE=SaA.FAASINVOKEDPROVIDERVALUES_AWS=void 0;SaA.MessageTypeValues=SaA.MESSAGETYPEVALUES_RECEIVED=SaA.MESSAGETYPEVALUES_SENT=SaA.RpcGrpcStatusCodeValues=SaA.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=SaA.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=SaA.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=SaA.RPCGRPCSTATUSCODEVALUES_INTERNAL=SaA.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=SaA.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=SaA.RPCGRPCSTATUSCODEVALUES_ABORTED=SaA.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=SaA.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=SaA.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=SaA.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=SaA.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=SaA.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=SaA.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=SaA.RPCGRPCSTATUSCODEVALUES_UNKNOWN=SaA.RPCGRPCSTATUSCODEVALUES_CANCELLED=SaA.RPCGRPCSTATUSCODEVALUES_OK=SaA.MessagingOperationValues=SaA.MESSAGINGOPERATIONVALUES_PROCESS=void 0;var g5=yp(),upA="aws.lambda.invoked_arn",dpA="db.system",cpA="db.connection_string",lpA="db.user",ppA="db.jdbc.driver_classname",ipA="db.name",npA="db.statement",spA="db.operation",rpA="db.mssql.instance_name",apA="db.cassandra.keyspace",opA="db.cassandra.page_size",tpA="db.cassandra.consistency_level",epA="db.cassandra.table",AiA="db.cassandra.idempotence",QiA="db.cassandra.speculative_execution_count",BiA="db.cassandra.coordinator.id",YiA="db.cassandra.coordinator.dc",JiA="db.hbase.namespace",CiA="db.redis.database_index",XiA="db.mongodb.collection",GiA="db.sql.table",FiA="exception.type",WiA="exception.message",ZiA="exception.stacktrace",$iA="exception.escaped",UiA="faas.trigger",EiA="faas.execution",KiA="faas.document.collection",ViA="faas.document.operation",IiA="faas.document.time",HiA="faas.document.name",DiA="faas.time",NiA="faas.cron",LiA="faas.coldstart",qiA="faas.invoked_name",MiA="faas.invoked_provider",ziA="faas.invoked_region",RiA="net.transport",wiA="net.peer.ip",jiA="net.peer.port",OiA="net.peer.name",PiA="net.host.ip",TiA="net.host.port",SiA="net.host.name",kiA="net.host.connection.type",_iA="net.host.connection.subtype",viA="net.host.carrier.name",yiA="net.host.carrier.mcc",hiA="net.host.carrier.mnc",giA="net.host.carrier.icc",xiA="peer.service",fiA="enduser.id",biA="enduser.role",miA="enduser.scope",uiA="thread.id",diA="thread.name",ciA="code.function",liA="code.namespace",piA="code.filepath",iiA="code.lineno",niA="http.method",siA="http.url",riA="http.target",aiA="http.host",oiA="http.scheme",tiA="http.status_code",eiA="http.flavor",AnA="http.user_agent",QnA="http.request_content_length",BnA="http.request_content_length_uncompressed",YnA="http.response_content_length",JnA="http.response_content_length_uncompressed",CnA="http.server_name",XnA="http.route",GnA="http.client_ip",FnA="aws.dynamodb.table_names",WnA="aws.dynamodb.consumed_capacity",ZnA="aws.dynamodb.item_collection_metrics",$nA="aws.dynamodb.provisioned_read_capacity",UnA="aws.dynamodb.provisioned_write_capacity",EnA="aws.dynamodb.consistent_read",KnA="aws.dynamodb.projection",VnA="aws.dynamodb.limit",InA="aws.dynamodb.attributes_to_get",HnA="aws.dynamodb.index_name",DnA="aws.dynamodb.select",NnA="aws.dynamodb.global_secondary_indexes",LnA="aws.dynamodb.local_secondary_indexes",qnA="aws.dynamodb.exclusive_start_table",MnA="aws.dynamodb.table_count",znA="aws.dynamodb.scan_forward",RnA="aws.dynamodb.segment",wnA="aws.dynamodb.total_segments",jnA="aws.dynamodb.count",OnA="aws.dynamodb.scanned_count",PnA="aws.dynamodb.attribute_definitions",TnA="aws.dynamodb.global_secondary_index_updates",SnA="messaging.system",knA="messaging.destination",_nA="messaging.destination_kind",vnA="messaging.temp_destination",ynA="messaging.protocol",hnA="messaging.protocol_version",gnA="messaging.url",xnA="messaging.message_id",fnA="messaging.conversation_id",bnA="messaging.message_payload_size_bytes",mnA="messaging.message_payload_compressed_size_bytes",unA="messaging.operation",dnA="messaging.consumer_id",cnA="messaging.rabbitmq.routing_key",lnA="messaging.kafka.message_key",pnA="messaging.kafka.consumer_group",inA="messaging.kafka.client_id",nnA="messaging.kafka.partition",snA="messaging.kafka.tombstone",rnA="rpc.system",anA="rpc.service",onA="rpc.method",tnA="rpc.grpc.status_code",enA="rpc.jsonrpc.version",AsA="rpc.jsonrpc.request_id",QsA="rpc.jsonrpc.error_code",BsA="rpc.jsonrpc.error_message",YsA="message.type",JsA="message.id",CsA="message.compressed_size",XsA="message.uncompressed_size";SaA.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=upA;SaA.SEMATTRS_DB_SYSTEM=dpA;SaA.SEMATTRS_DB_CONNECTION_STRING=cpA;SaA.SEMATTRS_DB_USER=lpA;SaA.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=ppA;SaA.SEMATTRS_DB_NAME=ipA;SaA.SEMATTRS_DB_STATEMENT=npA;SaA.SEMATTRS_DB_OPERATION=spA;SaA.SEMATTRS_DB_MSSQL_INSTANCE_NAME=rpA;SaA.SEMATTRS_DB_CASSANDRA_KEYSPACE=apA;SaA.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=opA;SaA.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=tpA;SaA.SEMATTRS_DB_CASSANDRA_TABLE=epA;SaA.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=AiA;SaA.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=QiA;SaA.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=BiA;SaA.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=YiA;SaA.SEMATTRS_DB_HBASE_NAMESPACE=JiA;SaA.SEMATTRS_DB_REDIS_DATABASE_INDEX=CiA;SaA.SEMATTRS_DB_MONGODB_COLLECTION=XiA;SaA.SEMATTRS_DB_SQL_TABLE=GiA;SaA.SEMATTRS_EXCEPTION_TYPE=FiA;SaA.SEMATTRS_EXCEPTION_MESSAGE=WiA;SaA.SEMATTRS_EXCEPTION_STACKTRACE=ZiA;SaA.SEMATTRS_EXCEPTION_ESCAPED=$iA;SaA.SEMATTRS_FAAS_TRIGGER=UiA;SaA.SEMATTRS_FAAS_EXECUTION=EiA;SaA.SEMATTRS_FAAS_DOCUMENT_COLLECTION=KiA;SaA.SEMATTRS_FAAS_DOCUMENT_OPERATION=ViA;SaA.SEMATTRS_FAAS_DOCUMENT_TIME=IiA;SaA.SEMATTRS_FAAS_DOCUMENT_NAME=HiA;SaA.SEMATTRS_FAAS_TIME=DiA;SaA.SEMATTRS_FAAS_CRON=NiA;SaA.SEMATTRS_FAAS_COLDSTART=LiA;SaA.SEMATTRS_FAAS_INVOKED_NAME=qiA;SaA.SEMATTRS_FAAS_INVOKED_PROVIDER=MiA;SaA.SEMATTRS_FAAS_INVOKED_REGION=ziA;SaA.SEMATTRS_NET_TRANSPORT=RiA;SaA.SEMATTRS_NET_PEER_IP=wiA;SaA.SEMATTRS_NET_PEER_PORT=jiA;SaA.SEMATTRS_NET_PEER_NAME=OiA;SaA.SEMATTRS_NET_HOST_IP=PiA;SaA.SEMATTRS_NET_HOST_PORT=TiA;SaA.SEMATTRS_NET_HOST_NAME=SiA;SaA.SEMATTRS_NET_HOST_CONNECTION_TYPE=kiA;SaA.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=_iA;SaA.SEMATTRS_NET_HOST_CARRIER_NAME=viA;SaA.SEMATTRS_NET_HOST_CARRIER_MCC=yiA;SaA.SEMATTRS_NET_HOST_CARRIER_MNC=hiA;SaA.SEMATTRS_NET_HOST_CARRIER_ICC=giA;SaA.SEMATTRS_PEER_SERVICE=xiA;SaA.SEMATTRS_ENDUSER_ID=fiA;SaA.SEMATTRS_ENDUSER_ROLE=biA;SaA.SEMATTRS_ENDUSER_SCOPE=miA;SaA.SEMATTRS_THREAD_ID=uiA;SaA.SEMATTRS_THREAD_NAME=diA;SaA.SEMATTRS_CODE_FUNCTION=ciA;SaA.SEMATTRS_CODE_NAMESPACE=liA;SaA.SEMATTRS_CODE_FILEPATH=piA;SaA.SEMATTRS_CODE_LINENO=iiA;SaA.SEMATTRS_HTTP_METHOD=niA;SaA.SEMATTRS_HTTP_URL=siA;SaA.SEMATTRS_HTTP_TARGET=riA;SaA.SEMATTRS_HTTP_HOST=aiA;SaA.SEMATTRS_HTTP_SCHEME=oiA;SaA.SEMATTRS_HTTP_STATUS_CODE=tiA;SaA.SEMATTRS_HTTP_FLAVOR=eiA;SaA.SEMATTRS_HTTP_USER_AGENT=AnA;SaA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=QnA;SaA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=BnA;SaA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=YnA;SaA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=JnA;SaA.SEMATTRS_HTTP_SERVER_NAME=CnA;SaA.SEMATTRS_HTTP_ROUTE=XnA;SaA.SEMATTRS_HTTP_CLIENT_IP=GnA;SaA.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=FnA;SaA.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=WnA;SaA.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=ZnA;SaA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=$nA;SaA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=UnA;SaA.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=EnA;SaA.SEMATTRS_AWS_DYNAMODB_PROJECTION=KnA;SaA.SEMATTRS_AWS_DYNAMODB_LIMIT=VnA;SaA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=InA;SaA.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=HnA;SaA.SEMATTRS_AWS_DYNAMODB_SELECT=DnA;SaA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=NnA;SaA.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=LnA;SaA.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=qnA;SaA.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=MnA;SaA.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=znA;SaA.SEMATTRS_AWS_DYNAMODB_SEGMENT=RnA;SaA.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=wnA;SaA.SEMATTRS_AWS_DYNAMODB_COUNT=jnA;SaA.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=OnA;SaA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=PnA;SaA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=TnA;SaA.SEMATTRS_MESSAGING_SYSTEM=SnA;SaA.SEMATTRS_MESSAGING_DESTINATION=knA;SaA.SEMATTRS_MESSAGING_DESTINATION_KIND=_nA;SaA.SEMATTRS_MESSAGING_TEMP_DESTINATION=vnA;SaA.SEMATTRS_MESSAGING_PROTOCOL=ynA;SaA.SEMATTRS_MESSAGING_PROTOCOL_VERSION=hnA;SaA.SEMATTRS_MESSAGING_URL=gnA;SaA.SEMATTRS_MESSAGING_MESSAGE_ID=xnA;SaA.SEMATTRS_MESSAGING_CONVERSATION_ID=fnA;SaA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=bnA;SaA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=mnA;SaA.SEMATTRS_MESSAGING_OPERATION=unA;SaA.SEMATTRS_MESSAGING_CONSUMER_ID=dnA;SaA.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=cnA;SaA.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=lnA;SaA.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=pnA;SaA.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=inA;SaA.SEMATTRS_MESSAGING_KAFKA_PARTITION=nnA;SaA.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=snA;SaA.SEMATTRS_RPC_SYSTEM=rnA;SaA.SEMATTRS_RPC_SERVICE=anA;SaA.SEMATTRS_RPC_METHOD=onA;SaA.SEMATTRS_RPC_GRPC_STATUS_CODE=tnA;SaA.SEMATTRS_RPC_JSONRPC_VERSION=enA;SaA.SEMATTRS_RPC_JSONRPC_REQUEST_ID=AsA;SaA.SEMATTRS_RPC_JSONRPC_ERROR_CODE=QsA;SaA.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=BsA;SaA.SEMATTRS_MESSAGE_TYPE=YsA;SaA.SEMATTRS_MESSAGE_ID=JsA;SaA.SEMATTRS_MESSAGE_COMPRESSED_SIZE=CsA;SaA.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=XsA;SaA.SemanticAttributes=(0,g5.createConstMap)([upA,dpA,cpA,lpA,ppA,ipA,npA,spA,rpA,apA,opA,tpA,epA,AiA,QiA,BiA,YiA,JiA,CiA,XiA,GiA,FiA,WiA,ZiA,$iA,UiA,EiA,KiA,ViA,IiA,HiA,DiA,NiA,LiA,qiA,MiA,ziA,RiA,wiA,jiA,OiA,PiA,TiA,SiA,kiA,_iA,viA,yiA,hiA,giA,xiA,fiA,biA,miA,uiA,diA,ciA,liA,piA,iiA,niA,siA,riA,aiA,oiA,tiA,eiA,AnA,QnA,BnA,YnA,JnA,CnA,XnA,GnA,FnA,WnA,ZnA,$nA,UnA,EnA,KnA,VnA,InA,HnA,DnA,NnA,LnA,qnA,MnA,znA,RnA,wnA,jnA,OnA,PnA,TnA,SnA,knA,_nA,vnA,ynA,hnA,gnA,xnA,fnA,bnA,mnA,unA,dnA,cnA,lnA,pnA,inA,nnA,snA,rnA,anA,onA,tnA,enA,AsA,QsA,BsA,YsA,JsA,CsA,XsA]);var GsA="other_sql",FsA="mssql",WsA="mysql",ZsA="oracle",$sA="db2",UsA="postgresql",EsA="redshift",KsA="hive",VsA="cloudscape",IsA="hsqldb",HsA="progress",DsA="maxdb",NsA="hanadb",LsA="ingres",qsA="firstsql",MsA="edb",zsA="cache",RsA="adabas",wsA="firebird",jsA="derby",OsA="filemaker",PsA="informix",TsA="instantdb",SsA="interbase",ksA="mariadb",_sA="netezza",vsA="pervasive",ysA="pointbase",hsA="sqlite",gsA="sybase",xsA="teradata",fsA="vertica",bsA="h2",msA="coldfusion",usA="cassandra",dsA="hbase",csA="mongodb",lsA="redis",psA="couchbase",isA="couchdb",nsA="cosmosdb",ssA="dynamodb",rsA="neo4j",asA="geode",osA="elasticsearch",tsA="memcached",esA="cockroachdb";SaA.DBSYSTEMVALUES_OTHER_SQL=GsA;SaA.DBSYSTEMVALUES_MSSQL=FsA;SaA.DBSYSTEMVALUES_MYSQL=WsA;SaA.DBSYSTEMVALUES_ORACLE=ZsA;SaA.DBSYSTEMVALUES_DB2=$sA;SaA.DBSYSTEMVALUES_POSTGRESQL=UsA;SaA.DBSYSTEMVALUES_REDSHIFT=EsA;SaA.DBSYSTEMVALUES_HIVE=KsA;SaA.DBSYSTEMVALUES_CLOUDSCAPE=VsA;SaA.DBSYSTEMVALUES_HSQLDB=IsA;SaA.DBSYSTEMVALUES_PROGRESS=HsA;SaA.DBSYSTEMVALUES_MAXDB=DsA;SaA.DBSYSTEMVALUES_HANADB=NsA;SaA.DBSYSTEMVALUES_INGRES=LsA;SaA.DBSYSTEMVALUES_FIRSTSQL=qsA;SaA.DBSYSTEMVALUES_EDB=MsA;SaA.DBSYSTEMVALUES_CACHE=zsA;SaA.DBSYSTEMVALUES_ADABAS=RsA;SaA.DBSYSTEMVALUES_FIREBIRD=wsA;SaA.DBSYSTEMVALUES_DERBY=jsA;SaA.DBSYSTEMVALUES_FILEMAKER=OsA;SaA.DBSYSTEMVALUES_INFORMIX=PsA;SaA.DBSYSTEMVALUES_INSTANTDB=TsA;SaA.DBSYSTEMVALUES_INTERBASE=SsA;SaA.DBSYSTEMVALUES_MARIADB=ksA;SaA.DBSYSTEMVALUES_NETEZZA=_sA;SaA.DBSYSTEMVALUES_PERVASIVE=vsA;SaA.DBSYSTEMVALUES_POINTBASE=ysA;SaA.DBSYSTEMVALUES_SQLITE=hsA;SaA.DBSYSTEMVALUES_SYBASE=gsA;SaA.DBSYSTEMVALUES_TERADATA=xsA;SaA.DBSYSTEMVALUES_VERTICA=fsA;SaA.DBSYSTEMVALUES_H2=bsA;SaA.DBSYSTEMVALUES_COLDFUSION=msA;SaA.DBSYSTEMVALUES_CASSANDRA=usA;SaA.DBSYSTEMVALUES_HBASE=dsA;SaA.DBSYSTEMVALUES_MONGODB=csA;SaA.DBSYSTEMVALUES_REDIS=lsA;SaA.DBSYSTEMVALUES_COUCHBASE=psA;SaA.DBSYSTEMVALUES_COUCHDB=isA;SaA.DBSYSTEMVALUES_COSMOSDB=nsA;SaA.DBSYSTEMVALUES_DYNAMODB=ssA;SaA.DBSYSTEMVALUES_NEO4J=rsA;SaA.DBSYSTEMVALUES_GEODE=asA;SaA.DBSYSTEMVALUES_ELASTICSEARCH=osA;SaA.DBSYSTEMVALUES_MEMCACHED=tsA;SaA.DBSYSTEMVALUES_COCKROACHDB=esA;SaA.DbSystemValues=(0,g5.createConstMap)([GsA,FsA,WsA,ZsA,$sA,UsA,EsA,KsA,VsA,IsA,HsA,DsA,NsA,LsA,qsA,MsA,zsA,RsA,wsA,jsA,OsA,PsA,TsA,SsA,ksA,_sA,vsA,ysA,hsA,gsA,xsA,fsA,bsA,msA,usA,dsA,csA,lsA,psA,isA,nsA,ssA,rsA,asA,osA,tsA,esA]);var ArA="all",QrA="each_quorum",BrA="quorum",YrA="local_quorum",JrA="one",CrA="two",XrA="three",GrA="local_one",FrA="any",WrA="serial",ZrA="local_serial";SaA.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=ArA;SaA.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=QrA;SaA.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=BrA;SaA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=YrA;SaA.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=JrA;SaA.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=CrA;SaA.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=XrA;SaA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=GrA;SaA.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=FrA;SaA.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=WrA;SaA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=ZrA;SaA.DbCassandraConsistencyLevelValues=(0,g5.createConstMap)([ArA,QrA,BrA,YrA,JrA,CrA,XrA,GrA,FrA,WrA,ZrA]);var $rA="datasource",UrA="http",ErA="pubsub",KrA="timer",VrA="other";SaA.FAASTRIGGERVALUES_DATASOURCE=$rA;SaA.FAASTRIGGERVALUES_HTTP=UrA;SaA.FAASTRIGGERVALUES_PUBSUB=ErA;SaA.FAASTRIGGERVALUES_TIMER=KrA;SaA.FAASTRIGGERVALUES_OTHER=VrA;SaA.FaasTriggerValues=(0,g5.createConstMap)([$rA,UrA,ErA,KrA,VrA]);var IrA="insert",HrA="edit",DrA="delete";SaA.FAASDOCUMENTOPERATIONVALUES_INSERT=IrA;SaA.FAASDOCUMENTOPERATIONVALUES_EDIT=HrA;SaA.FAASDOCUMENTOPERATIONVALUES_DELETE=DrA;SaA.FaasDocumentOperationValues=(0,g5.createConstMap)([IrA,HrA,DrA]);var NrA="alibaba_cloud",LrA="aws",qrA="azure",MrA="gcp";SaA.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=NrA;SaA.FAASINVOKEDPROVIDERVALUES_AWS=LrA;SaA.FAASINVOKEDPROVIDERVALUES_AZURE=qrA;SaA.FAASINVOKEDPROVIDERVALUES_GCP=MrA;SaA.FaasInvokedProviderValues=(0,g5.createConstMap)([NrA,LrA,qrA,MrA]);var zrA="ip_tcp",RrA="ip_udp",wrA="ip",jrA="unix",OrA="pipe",PrA="inproc",TrA="other";SaA.NETTRANSPORTVALUES_IP_TCP=zrA;SaA.NETTRANSPORTVALUES_IP_UDP=RrA;SaA.NETTRANSPORTVALUES_IP=wrA;SaA.NETTRANSPORTVALUES_UNIX=jrA;SaA.NETTRANSPORTVALUES_PIPE=OrA;SaA.NETTRANSPORTVALUES_INPROC=PrA;SaA.NETTRANSPORTVALUES_OTHER=TrA;SaA.NetTransportValues=(0,g5.createConstMap)([zrA,RrA,wrA,jrA,OrA,PrA,TrA]);var SrA="wifi",krA="wired",_rA="cell",vrA="unavailable",yrA="unknown";SaA.NETHOSTCONNECTIONTYPEVALUES_WIFI=SrA;SaA.NETHOSTCONNECTIONTYPEVALUES_WIRED=krA;SaA.NETHOSTCONNECTIONTYPEVALUES_CELL=_rA;SaA.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=vrA;SaA.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=yrA;SaA.NetHostConnectionTypeValues=(0,g5.createConstMap)([SrA,krA,_rA,vrA,yrA]);var hrA="gprs",grA="edge",xrA="umts",frA="cdma",brA="evdo_0",mrA="evdo_a",urA="cdma2000_1xrtt",drA="hsdpa",crA="hsupa",lrA="hspa",prA="iden",irA="evdo_b",nrA="lte",srA="ehrpd",rrA="hspap",arA="gsm",orA="td_scdma",trA="iwlan",erA="nr",AaA="nrnsa",QaA="lte_ca";SaA.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=hrA;SaA.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=grA;SaA.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=xrA;SaA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=frA;SaA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=brA;SaA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=mrA;SaA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=urA;SaA.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=drA;SaA.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=crA;SaA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=lrA;SaA.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=prA;SaA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=irA;SaA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=nrA;SaA.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=srA;SaA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=rrA;SaA.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=arA;SaA.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=orA;SaA.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=trA;SaA.NETHOSTCONNECTIONSUBTYPEVALUES_NR=erA;SaA.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=AaA;SaA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=QaA;SaA.NetHostConnectionSubtypeValues=(0,g5.createConstMap)([hrA,grA,xrA,frA,brA,mrA,urA,drA,crA,lrA,prA,irA,nrA,srA,rrA,arA,orA,trA,erA,AaA,QaA]);var BaA="1.0",YaA="1.1",JaA="2.0",CaA="SPDY",XaA="QUIC";SaA.HTTPFLAVORVALUES_HTTP_1_0=BaA;SaA.HTTPFLAVORVALUES_HTTP_1_1=YaA;SaA.HTTPFLAVORVALUES_HTTP_2_0=JaA;SaA.HTTPFLAVORVALUES_SPDY=CaA;SaA.HTTPFLAVORVALUES_QUIC=XaA;SaA.HttpFlavorValues={HTTP_1_0:BaA,HTTP_1_1:YaA,HTTP_2_0:JaA,SPDY:CaA,QUIC:XaA};var GaA="queue",FaA="topic";SaA.MESSAGINGDESTINATIONKINDVALUES_QUEUE=GaA;SaA.MESSAGINGDESTINATIONKINDVALUES_TOPIC=FaA;SaA.MessagingDestinationKindValues=(0,g5.createConstMap)([GaA,FaA]);var WaA="receive",ZaA="process";SaA.MESSAGINGOPERATIONVALUES_RECEIVE=WaA;SaA.MESSAGINGOPERATIONVALUES_PROCESS=ZaA;SaA.MessagingOperationValues=(0,g5.createConstMap)([WaA,ZaA]);var $aA=0,UaA=1,EaA=2,KaA=3,VaA=4,IaA=5,HaA=6,DaA=7,NaA=8,LaA=9,qaA=10,MaA=11,zaA=12,RaA=13,waA=14,jaA=15,OaA=16;SaA.RPCGRPCSTATUSCODEVALUES_OK=$aA;SaA.RPCGRPCSTATUSCODEVALUES_CANCELLED=UaA;SaA.RPCGRPCSTATUSCODEVALUES_UNKNOWN=EaA;SaA.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=KaA;SaA.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=VaA;SaA.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=IaA;SaA.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=HaA;SaA.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=DaA;SaA.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=NaA;SaA.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=LaA;SaA.RPCGRPCSTATUSCODEVALUES_ABORTED=qaA;SaA.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=MaA;SaA.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=zaA;SaA.RPCGRPCSTATUSCODEVALUES_INTERNAL=RaA;SaA.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=waA;SaA.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=jaA;SaA.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=OaA;SaA.RpcGrpcStatusCodeValues={OK:$aA,CANCELLED:UaA,UNKNOWN:EaA,INVALID_ARGUMENT:KaA,DEADLINE_EXCEEDED:VaA,NOT_FOUND:IaA,ALREADY_EXISTS:HaA,PERMISSION_DENIED:DaA,RESOURCE_EXHAUSTED:NaA,FAILED_PRECONDITION:LaA,ABORTED:qaA,OUT_OF_RANGE:MaA,UNIMPLEMENTED:zaA,INTERNAL:RaA,UNAVAILABLE:waA,DATA_LOSS:jaA,UNAUTHENTICATED:OaA};var PaA="SENT",TaA="RECEIVED";SaA.MESSAGETYPEVALUES_SENT=PaA;SaA.MESSAGETYPEVALUES_RECEIVED=TaA;SaA.MessageTypeValues=(0,g5.createConstMap)([PaA,TaA])});var faA=R((Q$)=>{var trB=Q$&&Q$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;var J=Object.getOwnPropertyDescriptor(Q,B);if(!J||("get"in J?!Q.__esModule:J.writable||J.configurable))J={enumerable:!0,get:function(){return Q[B]}};Object.defineProperty(A,Y,J)}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),erB=Q$&&Q$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))trB(Q,A,B)};Object.defineProperty(Q$,"__esModule",{value:!0});erB(xaA(),Q$)});var EeA=R((WeA)=>{Object.defineProperty(WeA,"__esModule",{value:!0});WeA.SEMRESATTRS_K8S_STATEFULSET_NAME=WeA.SEMRESATTRS_K8S_STATEFULSET_UID=WeA.SEMRESATTRS_K8S_DEPLOYMENT_NAME=WeA.SEMRESATTRS_K8S_DEPLOYMENT_UID=WeA.SEMRESATTRS_K8S_REPLICASET_NAME=WeA.SEMRESATTRS_K8S_REPLICASET_UID=WeA.SEMRESATTRS_K8S_CONTAINER_NAME=WeA.SEMRESATTRS_K8S_POD_NAME=WeA.SEMRESATTRS_K8S_POD_UID=WeA.SEMRESATTRS_K8S_NAMESPACE_NAME=WeA.SEMRESATTRS_K8S_NODE_UID=WeA.SEMRESATTRS_K8S_NODE_NAME=WeA.SEMRESATTRS_K8S_CLUSTER_NAME=WeA.SEMRESATTRS_HOST_IMAGE_VERSION=WeA.SEMRESATTRS_HOST_IMAGE_ID=WeA.SEMRESATTRS_HOST_IMAGE_NAME=WeA.SEMRESATTRS_HOST_ARCH=WeA.SEMRESATTRS_HOST_TYPE=WeA.SEMRESATTRS_HOST_NAME=WeA.SEMRESATTRS_HOST_ID=WeA.SEMRESATTRS_FAAS_MAX_MEMORY=WeA.SEMRESATTRS_FAAS_INSTANCE=WeA.SEMRESATTRS_FAAS_VERSION=WeA.SEMRESATTRS_FAAS_ID=WeA.SEMRESATTRS_FAAS_NAME=WeA.SEMRESATTRS_DEVICE_MODEL_NAME=WeA.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=WeA.SEMRESATTRS_DEVICE_ID=WeA.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=WeA.SEMRESATTRS_CONTAINER_IMAGE_TAG=WeA.SEMRESATTRS_CONTAINER_IMAGE_NAME=WeA.SEMRESATTRS_CONTAINER_RUNTIME=WeA.SEMRESATTRS_CONTAINER_ID=WeA.SEMRESATTRS_CONTAINER_NAME=WeA.SEMRESATTRS_AWS_LOG_STREAM_ARNS=WeA.SEMRESATTRS_AWS_LOG_STREAM_NAMES=WeA.SEMRESATTRS_AWS_LOG_GROUP_ARNS=WeA.SEMRESATTRS_AWS_LOG_GROUP_NAMES=WeA.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=WeA.SEMRESATTRS_AWS_ECS_TASK_REVISION=WeA.SEMRESATTRS_AWS_ECS_TASK_FAMILY=WeA.SEMRESATTRS_AWS_ECS_TASK_ARN=WeA.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=WeA.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=WeA.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=WeA.SEMRESATTRS_CLOUD_PLATFORM=WeA.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=WeA.SEMRESATTRS_CLOUD_REGION=WeA.SEMRESATTRS_CLOUD_ACCOUNT_ID=WeA.SEMRESATTRS_CLOUD_PROVIDER=void 0;WeA.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=WeA.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=WeA.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=WeA.CLOUDPLATFORMVALUES_AZURE_AKS=WeA.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=WeA.CLOUDPLATFORMVALUES_AZURE_VM=WeA.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=WeA.CLOUDPLATFORMVALUES_AWS_LAMBDA=WeA.CLOUDPLATFORMVALUES_AWS_EKS=WeA.CLOUDPLATFORMVALUES_AWS_ECS=WeA.CLOUDPLATFORMVALUES_AWS_EC2=WeA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=WeA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=WeA.CloudProviderValues=WeA.CLOUDPROVIDERVALUES_GCP=WeA.CLOUDPROVIDERVALUES_AZURE=WeA.CLOUDPROVIDERVALUES_AWS=WeA.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=WeA.SemanticResourceAttributes=WeA.SEMRESATTRS_WEBENGINE_DESCRIPTION=WeA.SEMRESATTRS_WEBENGINE_VERSION=WeA.SEMRESATTRS_WEBENGINE_NAME=WeA.SEMRESATTRS_TELEMETRY_AUTO_VERSION=WeA.SEMRESATTRS_TELEMETRY_SDK_VERSION=WeA.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=WeA.SEMRESATTRS_TELEMETRY_SDK_NAME=WeA.SEMRESATTRS_SERVICE_VERSION=WeA.SEMRESATTRS_SERVICE_INSTANCE_ID=WeA.SEMRESATTRS_SERVICE_NAMESPACE=WeA.SEMRESATTRS_SERVICE_NAME=WeA.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=WeA.SEMRESATTRS_PROCESS_RUNTIME_VERSION=WeA.SEMRESATTRS_PROCESS_RUNTIME_NAME=WeA.SEMRESATTRS_PROCESS_OWNER=WeA.SEMRESATTRS_PROCESS_COMMAND_ARGS=WeA.SEMRESATTRS_PROCESS_COMMAND_LINE=WeA.SEMRESATTRS_PROCESS_COMMAND=WeA.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=WeA.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=WeA.SEMRESATTRS_PROCESS_PID=WeA.SEMRESATTRS_OS_VERSION=WeA.SEMRESATTRS_OS_NAME=WeA.SEMRESATTRS_OS_DESCRIPTION=WeA.SEMRESATTRS_OS_TYPE=WeA.SEMRESATTRS_K8S_CRONJOB_NAME=WeA.SEMRESATTRS_K8S_CRONJOB_UID=WeA.SEMRESATTRS_K8S_JOB_NAME=WeA.SEMRESATTRS_K8S_JOB_UID=WeA.SEMRESATTRS_K8S_DAEMONSET_NAME=WeA.SEMRESATTRS_K8S_DAEMONSET_UID=void 0;WeA.TelemetrySdkLanguageValues=WeA.TELEMETRYSDKLANGUAGEVALUES_WEBJS=WeA.TELEMETRYSDKLANGUAGEVALUES_RUBY=WeA.TELEMETRYSDKLANGUAGEVALUES_PYTHON=WeA.TELEMETRYSDKLANGUAGEVALUES_PHP=WeA.TELEMETRYSDKLANGUAGEVALUES_NODEJS=WeA.TELEMETRYSDKLANGUAGEVALUES_JAVA=WeA.TELEMETRYSDKLANGUAGEVALUES_GO=WeA.TELEMETRYSDKLANGUAGEVALUES_ERLANG=WeA.TELEMETRYSDKLANGUAGEVALUES_DOTNET=WeA.TELEMETRYSDKLANGUAGEVALUES_CPP=WeA.OsTypeValues=WeA.OSTYPEVALUES_Z_OS=WeA.OSTYPEVALUES_SOLARIS=WeA.OSTYPEVALUES_AIX=WeA.OSTYPEVALUES_HPUX=WeA.OSTYPEVALUES_DRAGONFLYBSD=WeA.OSTYPEVALUES_OPENBSD=WeA.OSTYPEVALUES_NETBSD=WeA.OSTYPEVALUES_FREEBSD=WeA.OSTYPEVALUES_DARWIN=WeA.OSTYPEVALUES_LINUX=WeA.OSTYPEVALUES_WINDOWS=WeA.HostArchValues=WeA.HOSTARCHVALUES_X86=WeA.HOSTARCHVALUES_PPC64=WeA.HOSTARCHVALUES_PPC32=WeA.HOSTARCHVALUES_IA64=WeA.HOSTARCHVALUES_ARM64=WeA.HOSTARCHVALUES_ARM32=WeA.HOSTARCHVALUES_AMD64=WeA.AwsEcsLaunchtypeValues=WeA.AWSECSLAUNCHTYPEVALUES_FARGATE=WeA.AWSECSLAUNCHTYPEVALUES_EC2=WeA.CloudPlatformValues=WeA.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=WeA.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=WeA.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=WeA.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=void 0;var B$=yp(),baA="cloud.provider",maA="cloud.account.id",uaA="cloud.region",daA="cloud.availability_zone",caA="cloud.platform",laA="aws.ecs.container.arn",paA="aws.ecs.cluster.arn",iaA="aws.ecs.launchtype",naA="aws.ecs.task.arn",saA="aws.ecs.task.family",raA="aws.ecs.task.revision",aaA="aws.eks.cluster.arn",oaA="aws.log.group.names",taA="aws.log.group.arns",eaA="aws.log.stream.names",AoA="aws.log.stream.arns",QoA="container.name",BoA="container.id",YoA="container.runtime",JoA="container.image.name",CoA="container.image.tag",XoA="deployment.environment",GoA="device.id",FoA="device.model.identifier",WoA="device.model.name",ZoA="faas.name",$oA="faas.id",UoA="faas.version",EoA="faas.instance",KoA="faas.max_memory",VoA="host.id",IoA="host.name",HoA="host.type",DoA="host.arch",NoA="host.image.name",LoA="host.image.id",qoA="host.image.version",MoA="k8s.cluster.name",zoA="k8s.node.name",RoA="k8s.node.uid",woA="k8s.namespace.name",joA="k8s.pod.uid",OoA="k8s.pod.name",PoA="k8s.container.name",ToA="k8s.replicaset.uid",SoA="k8s.replicaset.name",koA="k8s.deployment.uid",_oA="k8s.deployment.name",voA="k8s.statefulset.uid",yoA="k8s.statefulset.name",hoA="k8s.daemonset.uid",goA="k8s.daemonset.name",xoA="k8s.job.uid",foA="k8s.job.name",boA="k8s.cronjob.uid",moA="k8s.cronjob.name",uoA="os.type",doA="os.description",coA="os.name",loA="os.version",poA="process.pid",ioA="process.executable.name",noA="process.executable.path",soA="process.command",roA="process.command_line",aoA="process.command_args",ooA="process.owner",toA="process.runtime.name",eoA="process.runtime.version",AtA="process.runtime.description",QtA="service.name",BtA="service.namespace",YtA="service.instance.id",JtA="service.version",CtA="telemetry.sdk.name",XtA="telemetry.sdk.language",GtA="telemetry.sdk.version",FtA="telemetry.auto.version",WtA="webengine.name",ZtA="webengine.version",$tA="webengine.description";WeA.SEMRESATTRS_CLOUD_PROVIDER=baA;WeA.SEMRESATTRS_CLOUD_ACCOUNT_ID=maA;WeA.SEMRESATTRS_CLOUD_REGION=uaA;WeA.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=daA;WeA.SEMRESATTRS_CLOUD_PLATFORM=caA;WeA.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=laA;WeA.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=paA;WeA.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=iaA;WeA.SEMRESATTRS_AWS_ECS_TASK_ARN=naA;WeA.SEMRESATTRS_AWS_ECS_TASK_FAMILY=saA;WeA.SEMRESATTRS_AWS_ECS_TASK_REVISION=raA;WeA.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=aaA;WeA.SEMRESATTRS_AWS_LOG_GROUP_NAMES=oaA;WeA.SEMRESATTRS_AWS_LOG_GROUP_ARNS=taA;WeA.SEMRESATTRS_AWS_LOG_STREAM_NAMES=eaA;WeA.SEMRESATTRS_AWS_LOG_STREAM_ARNS=AoA;WeA.SEMRESATTRS_CONTAINER_NAME=QoA;WeA.SEMRESATTRS_CONTAINER_ID=BoA;WeA.SEMRESATTRS_CONTAINER_RUNTIME=YoA;WeA.SEMRESATTRS_CONTAINER_IMAGE_NAME=JoA;WeA.SEMRESATTRS_CONTAINER_IMAGE_TAG=CoA;WeA.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=XoA;WeA.SEMRESATTRS_DEVICE_ID=GoA;WeA.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=FoA;WeA.SEMRESATTRS_DEVICE_MODEL_NAME=WoA;WeA.SEMRESATTRS_FAAS_NAME=ZoA;WeA.SEMRESATTRS_FAAS_ID=$oA;WeA.SEMRESATTRS_FAAS_VERSION=UoA;WeA.SEMRESATTRS_FAAS_INSTANCE=EoA;WeA.SEMRESATTRS_FAAS_MAX_MEMORY=KoA;WeA.SEMRESATTRS_HOST_ID=VoA;WeA.SEMRESATTRS_HOST_NAME=IoA;WeA.SEMRESATTRS_HOST_TYPE=HoA;WeA.SEMRESATTRS_HOST_ARCH=DoA;WeA.SEMRESATTRS_HOST_IMAGE_NAME=NoA;WeA.SEMRESATTRS_HOST_IMAGE_ID=LoA;WeA.SEMRESATTRS_HOST_IMAGE_VERSION=qoA;WeA.SEMRESATTRS_K8S_CLUSTER_NAME=MoA;WeA.SEMRESATTRS_K8S_NODE_NAME=zoA;WeA.SEMRESATTRS_K8S_NODE_UID=RoA;WeA.SEMRESATTRS_K8S_NAMESPACE_NAME=woA;WeA.SEMRESATTRS_K8S_POD_UID=joA;WeA.SEMRESATTRS_K8S_POD_NAME=OoA;WeA.SEMRESATTRS_K8S_CONTAINER_NAME=PoA;WeA.SEMRESATTRS_K8S_REPLICASET_UID=ToA;WeA.SEMRESATTRS_K8S_REPLICASET_NAME=SoA;WeA.SEMRESATTRS_K8S_DEPLOYMENT_UID=koA;WeA.SEMRESATTRS_K8S_DEPLOYMENT_NAME=_oA;WeA.SEMRESATTRS_K8S_STATEFULSET_UID=voA;WeA.SEMRESATTRS_K8S_STATEFULSET_NAME=yoA;WeA.SEMRESATTRS_K8S_DAEMONSET_UID=hoA;WeA.SEMRESATTRS_K8S_DAEMONSET_NAME=goA;WeA.SEMRESATTRS_K8S_JOB_UID=xoA;WeA.SEMRESATTRS_K8S_JOB_NAME=foA;WeA.SEMRESATTRS_K8S_CRONJOB_UID=boA;WeA.SEMRESATTRS_K8S_CRONJOB_NAME=moA;WeA.SEMRESATTRS_OS_TYPE=uoA;WeA.SEMRESATTRS_OS_DESCRIPTION=doA;WeA.SEMRESATTRS_OS_NAME=coA;WeA.SEMRESATTRS_OS_VERSION=loA;WeA.SEMRESATTRS_PROCESS_PID=poA;WeA.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=ioA;WeA.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=noA;WeA.SEMRESATTRS_PROCESS_COMMAND=soA;WeA.SEMRESATTRS_PROCESS_COMMAND_LINE=roA;WeA.SEMRESATTRS_PROCESS_COMMAND_ARGS=aoA;WeA.SEMRESATTRS_PROCESS_OWNER=ooA;WeA.SEMRESATTRS_PROCESS_RUNTIME_NAME=toA;WeA.SEMRESATTRS_PROCESS_RUNTIME_VERSION=eoA;WeA.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=AtA;WeA.SEMRESATTRS_SERVICE_NAME=QtA;WeA.SEMRESATTRS_SERVICE_NAMESPACE=BtA;WeA.SEMRESATTRS_SERVICE_INSTANCE_ID=YtA;WeA.SEMRESATTRS_SERVICE_VERSION=JtA;WeA.SEMRESATTRS_TELEMETRY_SDK_NAME=CtA;WeA.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=XtA;WeA.SEMRESATTRS_TELEMETRY_SDK_VERSION=GtA;WeA.SEMRESATTRS_TELEMETRY_AUTO_VERSION=FtA;WeA.SEMRESATTRS_WEBENGINE_NAME=WtA;WeA.SEMRESATTRS_WEBENGINE_VERSION=ZtA;WeA.SEMRESATTRS_WEBENGINE_DESCRIPTION=$tA;WeA.SemanticResourceAttributes=(0,B$.createConstMap)([baA,maA,uaA,daA,caA,laA,paA,iaA,naA,saA,raA,aaA,oaA,taA,eaA,AoA,QoA,BoA,YoA,JoA,CoA,XoA,GoA,FoA,WoA,ZoA,$oA,UoA,EoA,KoA,VoA,IoA,HoA,DoA,NoA,LoA,qoA,MoA,zoA,RoA,woA,joA,OoA,PoA,ToA,SoA,koA,_oA,voA,yoA,hoA,goA,xoA,foA,boA,moA,uoA,doA,coA,loA,poA,ioA,noA,soA,roA,aoA,ooA,toA,eoA,AtA,QtA,BtA,YtA,JtA,CtA,XtA,GtA,FtA,WtA,ZtA,$tA]);var UtA="alibaba_cloud",EtA="aws",KtA="azure",VtA="gcp";WeA.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=UtA;WeA.CLOUDPROVIDERVALUES_AWS=EtA;WeA.CLOUDPROVIDERVALUES_AZURE=KtA;WeA.CLOUDPROVIDERVALUES_GCP=VtA;WeA.CloudProviderValues=(0,B$.createConstMap)([UtA,EtA,KtA,VtA]);var ItA="alibaba_cloud_ecs",HtA="alibaba_cloud_fc",DtA="aws_ec2",NtA="aws_ecs",LtA="aws_eks",qtA="aws_lambda",MtA="aws_elastic_beanstalk",ztA="azure_vm",RtA="azure_container_instances",wtA="azure_aks",jtA="azure_functions",OtA="azure_app_service",PtA="gcp_compute_engine",TtA="gcp_cloud_run",StA="gcp_kubernetes_engine",ktA="gcp_cloud_functions",_tA="gcp_app_engine";WeA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=ItA;WeA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=HtA;WeA.CLOUDPLATFORMVALUES_AWS_EC2=DtA;WeA.CLOUDPLATFORMVALUES_AWS_ECS=NtA;WeA.CLOUDPLATFORMVALUES_AWS_EKS=LtA;WeA.CLOUDPLATFORMVALUES_AWS_LAMBDA=qtA;WeA.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=MtA;WeA.CLOUDPLATFORMVALUES_AZURE_VM=ztA;WeA.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=RtA;WeA.CLOUDPLATFORMVALUES_AZURE_AKS=wtA;WeA.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=jtA;WeA.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=OtA;WeA.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=PtA;WeA.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=TtA;WeA.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=StA;WeA.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=ktA;WeA.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=_tA;WeA.CloudPlatformValues=(0,B$.createConstMap)([ItA,HtA,DtA,NtA,LtA,qtA,MtA,ztA,RtA,wtA,jtA,OtA,PtA,TtA,StA,ktA,_tA]);var vtA="ec2",ytA="fargate";WeA.AWSECSLAUNCHTYPEVALUES_EC2=vtA;WeA.AWSECSLAUNCHTYPEVALUES_FARGATE=ytA;WeA.AwsEcsLaunchtypeValues=(0,B$.createConstMap)([vtA,ytA]);var htA="amd64",gtA="arm32",xtA="arm64",ftA="ia64",btA="ppc32",mtA="ppc64",utA="x86";WeA.HOSTARCHVALUES_AMD64=htA;WeA.HOSTARCHVALUES_ARM32=gtA;WeA.HOSTARCHVALUES_ARM64=xtA;WeA.HOSTARCHVALUES_IA64=ftA;WeA.HOSTARCHVALUES_PPC32=btA;WeA.HOSTARCHVALUES_PPC64=mtA;WeA.HOSTARCHVALUES_X86=utA;WeA.HostArchValues=(0,B$.createConstMap)([htA,gtA,xtA,ftA,btA,mtA,utA]);var dtA="windows",ctA="linux",ltA="darwin",ptA="freebsd",itA="netbsd",ntA="openbsd",stA="dragonflybsd",rtA="hpux",atA="aix",otA="solaris",ttA="z_os";WeA.OSTYPEVALUES_WINDOWS=dtA;WeA.OSTYPEVALUES_LINUX=ctA;WeA.OSTYPEVALUES_DARWIN=ltA;WeA.OSTYPEVALUES_FREEBSD=ptA;WeA.OSTYPEVALUES_NETBSD=itA;WeA.OSTYPEVALUES_OPENBSD=ntA;WeA.OSTYPEVALUES_DRAGONFLYBSD=stA;WeA.OSTYPEVALUES_HPUX=rtA;WeA.OSTYPEVALUES_AIX=atA;WeA.OSTYPEVALUES_SOLARIS=otA;WeA.OSTYPEVALUES_Z_OS=ttA;WeA.OsTypeValues=(0,B$.createConstMap)([dtA,ctA,ltA,ptA,itA,ntA,stA,rtA,atA,otA,ttA]);var etA="cpp",AeA="dotnet",QeA="erlang",BeA="go",YeA="java",JeA="nodejs",CeA="php",XeA="python",GeA="ruby",FeA="webjs";WeA.TELEMETRYSDKLANGUAGEVALUES_CPP=etA;WeA.TELEMETRYSDKLANGUAGEVALUES_DOTNET=AeA;WeA.TELEMETRYSDKLANGUAGEVALUES_ERLANG=QeA;WeA.TELEMETRYSDKLANGUAGEVALUES_GO=BeA;WeA.TELEMETRYSDKLANGUAGEVALUES_JAVA=YeA;WeA.TELEMETRYSDKLANGUAGEVALUES_NODEJS=JeA;WeA.TELEMETRYSDKLANGUAGEVALUES_PHP=CeA;WeA.TELEMETRYSDKLANGUAGEVALUES_PYTHON=XeA;WeA.TELEMETRYSDKLANGUAGEVALUES_RUBY=GeA;WeA.TELEMETRYSDKLANGUAGEVALUES_WEBJS=FeA;WeA.TelemetrySdkLanguageValues=(0,B$.createConstMap)([etA,AeA,QeA,BeA,YeA,JeA,CeA,XeA,GeA,FeA])});var KeA=R((Y$)=>{var PtB=Y$&&Y$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;var J=Object.getOwnPropertyDescriptor(Q,B);if(!J||("get"in J?!Q.__esModule:J.writable||J.configurable))J={enumerable:!0,get:function(){return Q[B]}};Object.defineProperty(A,Y,J)}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),TtB=Y$&&Y$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))PtB(Q,A,B)};Object.defineProperty(Y$,"__esModule",{value:!0});TtB(EeA(),Y$)});var NeA=R((VeA)=>{Object.defineProperty(VeA,"__esModule",{value:!0});VeA.ATTR_HTTP_REQUEST_HEADER=VeA.ATTR_EXCEPTION_TYPE=VeA.ATTR_EXCEPTION_STACKTRACE=VeA.ATTR_EXCEPTION_MESSAGE=VeA.ATTR_EXCEPTION_ESCAPED=VeA.ERROR_TYPE_VALUE_OTHER=VeA.ATTR_ERROR_TYPE=VeA.DOTNET_GC_HEAP_GENERATION_VALUE_POH=VeA.DOTNET_GC_HEAP_GENERATION_VALUE_LOH=VeA.DOTNET_GC_HEAP_GENERATION_VALUE_GEN2=VeA.DOTNET_GC_HEAP_GENERATION_VALUE_GEN1=VeA.DOTNET_GC_HEAP_GENERATION_VALUE_GEN0=VeA.ATTR_DOTNET_GC_HEAP_GENERATION=VeA.DB_SYSTEM_NAME_VALUE_POSTGRESQL=VeA.DB_SYSTEM_NAME_VALUE_MYSQL=VeA.DB_SYSTEM_NAME_VALUE_MICROSOFT_SQL_SERVER=VeA.DB_SYSTEM_NAME_VALUE_MARIADB=VeA.ATTR_DB_SYSTEM_NAME=VeA.ATTR_DB_STORED_PROCEDURE_NAME=VeA.ATTR_DB_RESPONSE_STATUS_CODE=VeA.ATTR_DB_QUERY_TEXT=VeA.ATTR_DB_QUERY_SUMMARY=VeA.ATTR_DB_OPERATION_NAME=VeA.ATTR_DB_OPERATION_BATCH_SIZE=VeA.ATTR_DB_NAMESPACE=VeA.ATTR_DB_COLLECTION_NAME=VeA.ATTR_CODE_STACKTRACE=VeA.ATTR_CODE_LINE_NUMBER=VeA.ATTR_CODE_FUNCTION_NAME=VeA.ATTR_CODE_FILE_PATH=VeA.ATTR_CODE_COLUMN_NUMBER=VeA.ATTR_CLIENT_PORT=VeA.ATTR_CLIENT_ADDRESS=VeA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS=VeA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE=VeA.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS=VeA.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK=VeA.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED=VeA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED=VeA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER=VeA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER=VeA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED=VeA.ATTR_ASPNETCORE_RATE_LIMITING_RESULT=VeA.ATTR_ASPNETCORE_RATE_LIMITING_POLICY=VeA.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE=VeA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED=VeA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED=VeA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED=VeA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED=VeA.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT=void 0;VeA.OTEL_STATUS_CODE_VALUE_OK=VeA.OTEL_STATUS_CODE_VALUE_ERROR=VeA.ATTR_OTEL_STATUS_CODE=VeA.ATTR_OTEL_SCOPE_VERSION=VeA.ATTR_OTEL_SCOPE_NAME=VeA.NETWORK_TYPE_VALUE_IPV6=VeA.NETWORK_TYPE_VALUE_IPV4=VeA.ATTR_NETWORK_TYPE=VeA.NETWORK_TRANSPORT_VALUE_UNIX=VeA.NETWORK_TRANSPORT_VALUE_UDP=VeA.NETWORK_TRANSPORT_VALUE_TCP=VeA.NETWORK_TRANSPORT_VALUE_QUIC=VeA.NETWORK_TRANSPORT_VALUE_PIPE=VeA.ATTR_NETWORK_TRANSPORT=VeA.ATTR_NETWORK_PROTOCOL_VERSION=VeA.ATTR_NETWORK_PROTOCOL_NAME=VeA.ATTR_NETWORK_PEER_PORT=VeA.ATTR_NETWORK_PEER_ADDRESS=VeA.ATTR_NETWORK_LOCAL_PORT=VeA.ATTR_NETWORK_LOCAL_ADDRESS=VeA.JVM_THREAD_STATE_VALUE_WAITING=VeA.JVM_THREAD_STATE_VALUE_TIMED_WAITING=VeA.JVM_THREAD_STATE_VALUE_TERMINATED=VeA.JVM_THREAD_STATE_VALUE_RUNNABLE=VeA.JVM_THREAD_STATE_VALUE_NEW=VeA.JVM_THREAD_STATE_VALUE_BLOCKED=VeA.ATTR_JVM_THREAD_STATE=VeA.ATTR_JVM_THREAD_DAEMON=VeA.JVM_MEMORY_TYPE_VALUE_NON_HEAP=VeA.JVM_MEMORY_TYPE_VALUE_HEAP=VeA.ATTR_JVM_MEMORY_TYPE=VeA.ATTR_JVM_MEMORY_POOL_NAME=VeA.ATTR_JVM_GC_NAME=VeA.ATTR_JVM_GC_ACTION=VeA.ATTR_HTTP_ROUTE=VeA.ATTR_HTTP_RESPONSE_STATUS_CODE=VeA.ATTR_HTTP_RESPONSE_HEADER=VeA.ATTR_HTTP_REQUEST_RESEND_COUNT=VeA.ATTR_HTTP_REQUEST_METHOD_ORIGINAL=VeA.HTTP_REQUEST_METHOD_VALUE_TRACE=VeA.HTTP_REQUEST_METHOD_VALUE_PUT=VeA.HTTP_REQUEST_METHOD_VALUE_POST=VeA.HTTP_REQUEST_METHOD_VALUE_PATCH=VeA.HTTP_REQUEST_METHOD_VALUE_OPTIONS=VeA.HTTP_REQUEST_METHOD_VALUE_HEAD=VeA.HTTP_REQUEST_METHOD_VALUE_GET=VeA.HTTP_REQUEST_METHOD_VALUE_DELETE=VeA.HTTP_REQUEST_METHOD_VALUE_CONNECT=VeA.HTTP_REQUEST_METHOD_VALUE_OTHER=VeA.ATTR_HTTP_REQUEST_METHOD=void 0;VeA.ATTR_USER_AGENT_ORIGINAL=VeA.ATTR_URL_SCHEME=VeA.ATTR_URL_QUERY=VeA.ATTR_URL_PATH=VeA.ATTR_URL_FULL=VeA.ATTR_URL_FRAGMENT=VeA.ATTR_TELEMETRY_SDK_VERSION=VeA.ATTR_TELEMETRY_SDK_NAME=VeA.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS=VeA.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT=VeA.TELEMETRY_SDK_LANGUAGE_VALUE_RUST=VeA.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY=VeA.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON=VeA.TELEMETRY_SDK_LANGUAGE_VALUE_PHP=VeA.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS=VeA.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA=VeA.TELEMETRY_SDK_LANGUAGE_VALUE_GO=VeA.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG=VeA.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET=VeA.TELEMETRY_SDK_LANGUAGE_VALUE_CPP=VeA.ATTR_TELEMETRY_SDK_LANGUAGE=VeA.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS=VeA.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS=VeA.SIGNALR_TRANSPORT_VALUE_LONG_POLLING=VeA.ATTR_SIGNALR_TRANSPORT=VeA.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT=VeA.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE=VeA.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN=VeA.ATTR_SIGNALR_CONNECTION_STATUS=VeA.ATTR_SERVICE_VERSION=VeA.ATTR_SERVICE_NAME=VeA.ATTR_SERVER_PORT=VeA.ATTR_SERVER_ADDRESS=VeA.ATTR_OTEL_STATUS_DESCRIPTION=void 0;VeA.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT="aspnetcore.diagnostics.exception.result";VeA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED="aborted";VeA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED="handled";VeA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED="skipped";VeA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED="unhandled";VeA.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE="aspnetcore.diagnostics.handler.type";VeA.ATTR_ASPNETCORE_RATE_LIMITING_POLICY="aspnetcore.rate_limiting.policy";VeA.ATTR_ASPNETCORE_RATE_LIMITING_RESULT="aspnetcore.rate_limiting.result";VeA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED="acquired";VeA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER="endpoint_limiter";VeA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER="global_limiter";VeA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED="request_canceled";VeA.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED="aspnetcore.request.is_unhandled";VeA.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK="aspnetcore.routing.is_fallback";VeA.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS="aspnetcore.routing.match_status";VeA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE="failure";VeA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS="success";VeA.ATTR_CLIENT_ADDRESS="client.address";VeA.ATTR_CLIENT_PORT="client.port";VeA.ATTR_CODE_COLUMN_NUMBER="code.column.number";VeA.ATTR_CODE_FILE_PATH="code.file.path";VeA.ATTR_CODE_FUNCTION_NAME="code.function.name";VeA.ATTR_CODE_LINE_NUMBER="code.line.number";VeA.ATTR_CODE_STACKTRACE="code.stacktrace";VeA.ATTR_DB_COLLECTION_NAME="db.collection.name";VeA.ATTR_DB_NAMESPACE="db.namespace";VeA.ATTR_DB_OPERATION_BATCH_SIZE="db.operation.batch.size";VeA.ATTR_DB_OPERATION_NAME="db.operation.name";VeA.ATTR_DB_QUERY_SUMMARY="db.query.summary";VeA.ATTR_DB_QUERY_TEXT="db.query.text";VeA.ATTR_DB_RESPONSE_STATUS_CODE="db.response.status_code";VeA.ATTR_DB_STORED_PROCEDURE_NAME="db.stored_procedure.name";VeA.ATTR_DB_SYSTEM_NAME="db.system.name";VeA.DB_SYSTEM_NAME_VALUE_MARIADB="mariadb";VeA.DB_SYSTEM_NAME_VALUE_MICROSOFT_SQL_SERVER="microsoft.sql_server";VeA.DB_SYSTEM_NAME_VALUE_MYSQL="mysql";VeA.DB_SYSTEM_NAME_VALUE_POSTGRESQL="postgresql";VeA.ATTR_DOTNET_GC_HEAP_GENERATION="dotnet.gc.heap.generation";VeA.DOTNET_GC_HEAP_GENERATION_VALUE_GEN0="gen0";VeA.DOTNET_GC_HEAP_GENERATION_VALUE_GEN1="gen1";VeA.DOTNET_GC_HEAP_GENERATION_VALUE_GEN2="gen2";VeA.DOTNET_GC_HEAP_GENERATION_VALUE_LOH="loh";VeA.DOTNET_GC_HEAP_GENERATION_VALUE_POH="poh";VeA.ATTR_ERROR_TYPE="error.type";VeA.ERROR_TYPE_VALUE_OTHER="_OTHER";VeA.ATTR_EXCEPTION_ESCAPED="exception.escaped";VeA.ATTR_EXCEPTION_MESSAGE="exception.message";VeA.ATTR_EXCEPTION_STACKTRACE="exception.stacktrace";VeA.ATTR_EXCEPTION_TYPE="exception.type";var StB=(A)=>`http.request.header.${A}`;VeA.ATTR_HTTP_REQUEST_HEADER=StB;VeA.ATTR_HTTP_REQUEST_METHOD="http.request.method";VeA.HTTP_REQUEST_METHOD_VALUE_OTHER="_OTHER";VeA.HTTP_REQUEST_METHOD_VALUE_CONNECT="CONNECT";VeA.HTTP_REQUEST_METHOD_VALUE_DELETE="DELETE";VeA.HTTP_REQUEST_METHOD_VALUE_GET="GET";VeA.HTTP_REQUEST_METHOD_VALUE_HEAD="HEAD";VeA.HTTP_REQUEST_METHOD_VALUE_OPTIONS="OPTIONS";VeA.HTTP_REQUEST_METHOD_VALUE_PATCH="PATCH";VeA.HTTP_REQUEST_METHOD_VALUE_POST="POST";VeA.HTTP_REQUEST_METHOD_VALUE_PUT="PUT";VeA.HTTP_REQUEST_METHOD_VALUE_TRACE="TRACE";VeA.ATTR_HTTP_REQUEST_METHOD_ORIGINAL="http.request.method_original";VeA.ATTR_HTTP_REQUEST_RESEND_COUNT="http.request.resend_count";var ktB=(A)=>`http.response.header.${A}`;VeA.ATTR_HTTP_RESPONSE_HEADER=ktB;VeA.ATTR_HTTP_RESPONSE_STATUS_CODE="http.response.status_code";VeA.ATTR_HTTP_ROUTE="http.route";VeA.ATTR_JVM_GC_ACTION="jvm.gc.action";VeA.ATTR_JVM_GC_NAME="jvm.gc.name";VeA.ATTR_JVM_MEMORY_POOL_NAME="jvm.memory.pool.name";VeA.ATTR_JVM_MEMORY_TYPE="jvm.memory.type";VeA.JVM_MEMORY_TYPE_VALUE_HEAP="heap";VeA.JVM_MEMORY_TYPE_VALUE_NON_HEAP="non_heap";VeA.ATTR_JVM_THREAD_DAEMON="jvm.thread.daemon";VeA.ATTR_JVM_THREAD_STATE="jvm.thread.state";VeA.JVM_THREAD_STATE_VALUE_BLOCKED="blocked";VeA.JVM_THREAD_STATE_VALUE_NEW="new";VeA.JVM_THREAD_STATE_VALUE_RUNNABLE="runnable";VeA.JVM_THREAD_STATE_VALUE_TERMINATED="terminated";VeA.JVM_THREAD_STATE_VALUE_TIMED_WAITING="timed_waiting";VeA.JVM_THREAD_STATE_VALUE_WAITING="waiting";VeA.ATTR_NETWORK_LOCAL_ADDRESS="network.local.address";VeA.ATTR_NETWORK_LOCAL_PORT="network.local.port";VeA.ATTR_NETWORK_PEER_ADDRESS="network.peer.address";VeA.ATTR_NETWORK_PEER_PORT="network.peer.port";VeA.ATTR_NETWORK_PROTOCOL_NAME="network.protocol.name";VeA.ATTR_NETWORK_PROTOCOL_VERSION="network.protocol.version";VeA.ATTR_NETWORK_TRANSPORT="network.transport";VeA.NETWORK_TRANSPORT_VALUE_PIPE="pipe";VeA.NETWORK_TRANSPORT_VALUE_QUIC="quic";VeA.NETWORK_TRANSPORT_VALUE_TCP="tcp";VeA.NETWORK_TRANSPORT_VALUE_UDP="udp";VeA.NETWORK_TRANSPORT_VALUE_UNIX="unix";VeA.ATTR_NETWORK_TYPE="network.type";VeA.NETWORK_TYPE_VALUE_IPV4="ipv4";VeA.NETWORK_TYPE_VALUE_IPV6="ipv6";VeA.ATTR_OTEL_SCOPE_NAME="otel.scope.name";VeA.ATTR_OTEL_SCOPE_VERSION="otel.scope.version";VeA.ATTR_OTEL_STATUS_CODE="otel.status_code";VeA.OTEL_STATUS_CODE_VALUE_ERROR="ERROR";VeA.OTEL_STATUS_CODE_VALUE_OK="OK";VeA.ATTR_OTEL_STATUS_DESCRIPTION="otel.status_description";VeA.ATTR_SERVER_ADDRESS="server.address";VeA.ATTR_SERVER_PORT="server.port";VeA.ATTR_SERVICE_NAME="service.name";VeA.ATTR_SERVICE_VERSION="service.version";VeA.ATTR_SIGNALR_CONNECTION_STATUS="signalr.connection.status";VeA.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN="app_shutdown";VeA.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE="normal_closure";VeA.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT="timeout";VeA.ATTR_SIGNALR_TRANSPORT="signalr.transport";VeA.SIGNALR_TRANSPORT_VALUE_LONG_POLLING="long_polling";VeA.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS="server_sent_events";VeA.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS="web_sockets";VeA.ATTR_TELEMETRY_SDK_LANGUAGE="telemetry.sdk.language";VeA.TELEMETRY_SDK_LANGUAGE_VALUE_CPP="cpp";VeA.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET="dotnet";VeA.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG="erlang";VeA.TELEMETRY_SDK_LANGUAGE_VALUE_GO="go";VeA.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA="java";VeA.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS="nodejs";VeA.TELEMETRY_SDK_LANGUAGE_VALUE_PHP="php";VeA.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON="python";VeA.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY="ruby";VeA.TELEMETRY_SDK_LANGUAGE_VALUE_RUST="rust";VeA.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT="swift";VeA.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS="webjs";VeA.ATTR_TELEMETRY_SDK_NAME="telemetry.sdk.name";VeA.ATTR_TELEMETRY_SDK_VERSION="telemetry.sdk.version";VeA.ATTR_URL_FRAGMENT="url.fragment";VeA.ATTR_URL_FULL="url.full";VeA.ATTR_URL_PATH="url.path";VeA.ATTR_URL_QUERY="url.query";VeA.ATTR_URL_SCHEME="url.scheme";VeA.ATTR_USER_AGENT_ORIGINAL="user_agent.original"});var zeA=R((LeA)=>{Object.defineProperty(LeA,"__esModule",{value:!0});LeA.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS=LeA.METRIC_KESTREL_UPGRADED_CONNECTIONS=LeA.METRIC_KESTREL_TLS_HANDSHAKE_DURATION=LeA.METRIC_KESTREL_REJECTED_CONNECTIONS=LeA.METRIC_KESTREL_QUEUED_REQUESTS=LeA.METRIC_KESTREL_QUEUED_CONNECTIONS=LeA.METRIC_KESTREL_CONNECTION_DURATION=LeA.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES=LeA.METRIC_KESTREL_ACTIVE_CONNECTIONS=LeA.METRIC_JVM_THREAD_COUNT=LeA.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC=LeA.METRIC_JVM_MEMORY_USED=LeA.METRIC_JVM_MEMORY_LIMIT=LeA.METRIC_JVM_MEMORY_COMMITTED=LeA.METRIC_JVM_GC_DURATION=LeA.METRIC_JVM_CPU_TIME=LeA.METRIC_JVM_CPU_RECENT_UTILIZATION=LeA.METRIC_JVM_CPU_COUNT=LeA.METRIC_JVM_CLASS_UNLOADED=LeA.METRIC_JVM_CLASS_LOADED=LeA.METRIC_JVM_CLASS_COUNT=LeA.METRIC_HTTP_SERVER_REQUEST_DURATION=LeA.METRIC_HTTP_CLIENT_REQUEST_DURATION=LeA.METRIC_DOTNET_TIMER_COUNT=LeA.METRIC_DOTNET_THREAD_POOL_WORK_ITEM_COUNT=LeA.METRIC_DOTNET_THREAD_POOL_THREAD_COUNT=LeA.METRIC_DOTNET_THREAD_POOL_QUEUE_LENGTH=LeA.METRIC_DOTNET_PROCESS_MEMORY_WORKING_SET=LeA.METRIC_DOTNET_PROCESS_CPU_TIME=LeA.METRIC_DOTNET_PROCESS_CPU_COUNT=LeA.METRIC_DOTNET_MONITOR_LOCK_CONTENTIONS=LeA.METRIC_DOTNET_JIT_COMPILED_METHODS=LeA.METRIC_DOTNET_JIT_COMPILED_IL_SIZE=LeA.METRIC_DOTNET_JIT_COMPILATION_TIME=LeA.METRIC_DOTNET_GC_PAUSE_TIME=LeA.METRIC_DOTNET_GC_LAST_COLLECTION_MEMORY_COMMITTED_SIZE=LeA.METRIC_DOTNET_GC_LAST_COLLECTION_HEAP_SIZE=LeA.METRIC_DOTNET_GC_LAST_COLLECTION_HEAP_FRAGMENTATION_SIZE=LeA.METRIC_DOTNET_GC_HEAP_TOTAL_ALLOCATED=LeA.METRIC_DOTNET_GC_COLLECTIONS=LeA.METRIC_DOTNET_EXCEPTIONS=LeA.METRIC_DOTNET_ASSEMBLY_COUNT=LeA.METRIC_DB_CLIENT_OPERATION_DURATION=LeA.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS=LeA.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS=LeA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION=LeA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE=LeA.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS=LeA.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES=LeA.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS=void 0;LeA.METRIC_SIGNALR_SERVER_CONNECTION_DURATION=void 0;LeA.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS="aspnetcore.diagnostics.exceptions";LeA.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES="aspnetcore.rate_limiting.active_request_leases";LeA.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS="aspnetcore.rate_limiting.queued_requests";LeA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE="aspnetcore.rate_limiting.request.time_in_queue";LeA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION="aspnetcore.rate_limiting.request_lease.duration";LeA.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS="aspnetcore.rate_limiting.requests";LeA.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS="aspnetcore.routing.match_attempts";LeA.METRIC_DB_CLIENT_OPERATION_DURATION="db.client.operation.duration";LeA.METRIC_DOTNET_ASSEMBLY_COUNT="dotnet.assembly.count";LeA.METRIC_DOTNET_EXCEPTIONS="dotnet.exceptions";LeA.METRIC_DOTNET_GC_COLLECTIONS="dotnet.gc.collections";LeA.METRIC_DOTNET_GC_HEAP_TOTAL_ALLOCATED="dotnet.gc.heap.total_allocated";LeA.METRIC_DOTNET_GC_LAST_COLLECTION_HEAP_FRAGMENTATION_SIZE="dotnet.gc.last_collection.heap.fragmentation.size";LeA.METRIC_DOTNET_GC_LAST_COLLECTION_HEAP_SIZE="dotnet.gc.last_collection.heap.size";LeA.METRIC_DOTNET_GC_LAST_COLLECTION_MEMORY_COMMITTED_SIZE="dotnet.gc.last_collection.memory.committed_size";LeA.METRIC_DOTNET_GC_PAUSE_TIME="dotnet.gc.pause.time";LeA.METRIC_DOTNET_JIT_COMPILATION_TIME="dotnet.jit.compilation.time";LeA.METRIC_DOTNET_JIT_COMPILED_IL_SIZE="dotnet.jit.compiled_il.size";LeA.METRIC_DOTNET_JIT_COMPILED_METHODS="dotnet.jit.compiled_methods";LeA.METRIC_DOTNET_MONITOR_LOCK_CONTENTIONS="dotnet.monitor.lock_contentions";LeA.METRIC_DOTNET_PROCESS_CPU_COUNT="dotnet.process.cpu.count";LeA.METRIC_DOTNET_PROCESS_CPU_TIME="dotnet.process.cpu.time";LeA.METRIC_DOTNET_PROCESS_MEMORY_WORKING_SET="dotnet.process.memory.working_set";LeA.METRIC_DOTNET_THREAD_POOL_QUEUE_LENGTH="dotnet.thread_pool.queue.length";LeA.METRIC_DOTNET_THREAD_POOL_THREAD_COUNT="dotnet.thread_pool.thread.count";LeA.METRIC_DOTNET_THREAD_POOL_WORK_ITEM_COUNT="dotnet.thread_pool.work_item.count";LeA.METRIC_DOTNET_TIMER_COUNT="dotnet.timer.count";LeA.METRIC_HTTP_CLIENT_REQUEST_DURATION="http.client.request.duration";LeA.METRIC_HTTP_SERVER_REQUEST_DURATION="http.server.request.duration";LeA.METRIC_JVM_CLASS_COUNT="jvm.class.count";LeA.METRIC_JVM_CLASS_LOADED="jvm.class.loaded";LeA.METRIC_JVM_CLASS_UNLOADED="jvm.class.unloaded";LeA.METRIC_JVM_CPU_COUNT="jvm.cpu.count";LeA.METRIC_JVM_CPU_RECENT_UTILIZATION="jvm.cpu.recent_utilization";LeA.METRIC_JVM_CPU_TIME="jvm.cpu.time";LeA.METRIC_JVM_GC_DURATION="jvm.gc.duration";LeA.METRIC_JVM_MEMORY_COMMITTED="jvm.memory.committed";LeA.METRIC_JVM_MEMORY_LIMIT="jvm.memory.limit";LeA.METRIC_JVM_MEMORY_USED="jvm.memory.used";LeA.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC="jvm.memory.used_after_last_gc";LeA.METRIC_JVM_THREAD_COUNT="jvm.thread.count";LeA.METRIC_KESTREL_ACTIVE_CONNECTIONS="kestrel.active_connections";LeA.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES="kestrel.active_tls_handshakes";LeA.METRIC_KESTREL_CONNECTION_DURATION="kestrel.connection.duration";LeA.METRIC_KESTREL_QUEUED_CONNECTIONS="kestrel.queued_connections";LeA.METRIC_KESTREL_QUEUED_REQUESTS="kestrel.queued_requests";LeA.METRIC_KESTREL_REJECTED_CONNECTIONS="kestrel.rejected_connections";LeA.METRIC_KESTREL_TLS_HANDSHAKE_DURATION="kestrel.tls_handshake.duration";LeA.METRIC_KESTREL_UPGRADED_CONNECTIONS="kestrel.upgraded_connections";LeA.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS="signalr.server.active_connections";LeA.METRIC_SIGNALR_SERVER_CONNECTION_DURATION="signalr.server.connection.duration"});var uB=R((C6)=>{var aQ0=C6&&C6.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;var J=Object.getOwnPropertyDescriptor(Q,B);if(!J||("get"in J?!Q.__esModule:J.writable||J.configurable))J={enumerable:!0,get:function(){return Q[B]}};Object.defineProperty(A,Y,J)}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),gO=C6&&C6.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))aQ0(Q,A,B)};Object.defineProperty(C6,"__esModule",{value:!0});gO(faA(),C6);gO(KeA(),C6);gO(NeA(),C6);gO(zeA(),C6)});var hp=R((ReA)=>{Object.defineProperty(ReA,"__esModule",{value:!0});ReA.createConstMap=void 0;function oQ0(A){let Q={},B=A.length;for(let Y=0;Y{Object.defineProperty(VYQ,"__esModule",{value:!0});VYQ.SEMATTRS_NET_HOST_CARRIER_ICC=VYQ.SEMATTRS_NET_HOST_CARRIER_MNC=VYQ.SEMATTRS_NET_HOST_CARRIER_MCC=VYQ.SEMATTRS_NET_HOST_CARRIER_NAME=VYQ.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=VYQ.SEMATTRS_NET_HOST_CONNECTION_TYPE=VYQ.SEMATTRS_NET_HOST_NAME=VYQ.SEMATTRS_NET_HOST_PORT=VYQ.SEMATTRS_NET_HOST_IP=VYQ.SEMATTRS_NET_PEER_NAME=VYQ.SEMATTRS_NET_PEER_PORT=VYQ.SEMATTRS_NET_PEER_IP=VYQ.SEMATTRS_NET_TRANSPORT=VYQ.SEMATTRS_FAAS_INVOKED_REGION=VYQ.SEMATTRS_FAAS_INVOKED_PROVIDER=VYQ.SEMATTRS_FAAS_INVOKED_NAME=VYQ.SEMATTRS_FAAS_COLDSTART=VYQ.SEMATTRS_FAAS_CRON=VYQ.SEMATTRS_FAAS_TIME=VYQ.SEMATTRS_FAAS_DOCUMENT_NAME=VYQ.SEMATTRS_FAAS_DOCUMENT_TIME=VYQ.SEMATTRS_FAAS_DOCUMENT_OPERATION=VYQ.SEMATTRS_FAAS_DOCUMENT_COLLECTION=VYQ.SEMATTRS_FAAS_EXECUTION=VYQ.SEMATTRS_FAAS_TRIGGER=VYQ.SEMATTRS_EXCEPTION_ESCAPED=VYQ.SEMATTRS_EXCEPTION_STACKTRACE=VYQ.SEMATTRS_EXCEPTION_MESSAGE=VYQ.SEMATTRS_EXCEPTION_TYPE=VYQ.SEMATTRS_DB_SQL_TABLE=VYQ.SEMATTRS_DB_MONGODB_COLLECTION=VYQ.SEMATTRS_DB_REDIS_DATABASE_INDEX=VYQ.SEMATTRS_DB_HBASE_NAMESPACE=VYQ.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=VYQ.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=VYQ.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=VYQ.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=VYQ.SEMATTRS_DB_CASSANDRA_TABLE=VYQ.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=VYQ.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=VYQ.SEMATTRS_DB_CASSANDRA_KEYSPACE=VYQ.SEMATTRS_DB_MSSQL_INSTANCE_NAME=VYQ.SEMATTRS_DB_OPERATION=VYQ.SEMATTRS_DB_STATEMENT=VYQ.SEMATTRS_DB_NAME=VYQ.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=VYQ.SEMATTRS_DB_USER=VYQ.SEMATTRS_DB_CONNECTION_STRING=VYQ.SEMATTRS_DB_SYSTEM=VYQ.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=void 0;VYQ.SEMATTRS_MESSAGING_DESTINATION_KIND=VYQ.SEMATTRS_MESSAGING_DESTINATION=VYQ.SEMATTRS_MESSAGING_SYSTEM=VYQ.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=VYQ.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=VYQ.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=VYQ.SEMATTRS_AWS_DYNAMODB_COUNT=VYQ.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=VYQ.SEMATTRS_AWS_DYNAMODB_SEGMENT=VYQ.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=VYQ.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=VYQ.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=VYQ.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=VYQ.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=VYQ.SEMATTRS_AWS_DYNAMODB_SELECT=VYQ.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=VYQ.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=VYQ.SEMATTRS_AWS_DYNAMODB_LIMIT=VYQ.SEMATTRS_AWS_DYNAMODB_PROJECTION=VYQ.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=VYQ.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=VYQ.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=VYQ.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=VYQ.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=VYQ.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=VYQ.SEMATTRS_HTTP_CLIENT_IP=VYQ.SEMATTRS_HTTP_ROUTE=VYQ.SEMATTRS_HTTP_SERVER_NAME=VYQ.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=VYQ.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=VYQ.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=VYQ.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=VYQ.SEMATTRS_HTTP_USER_AGENT=VYQ.SEMATTRS_HTTP_FLAVOR=VYQ.SEMATTRS_HTTP_STATUS_CODE=VYQ.SEMATTRS_HTTP_SCHEME=VYQ.SEMATTRS_HTTP_HOST=VYQ.SEMATTRS_HTTP_TARGET=VYQ.SEMATTRS_HTTP_URL=VYQ.SEMATTRS_HTTP_METHOD=VYQ.SEMATTRS_CODE_LINENO=VYQ.SEMATTRS_CODE_FILEPATH=VYQ.SEMATTRS_CODE_NAMESPACE=VYQ.SEMATTRS_CODE_FUNCTION=VYQ.SEMATTRS_THREAD_NAME=VYQ.SEMATTRS_THREAD_ID=VYQ.SEMATTRS_ENDUSER_SCOPE=VYQ.SEMATTRS_ENDUSER_ROLE=VYQ.SEMATTRS_ENDUSER_ID=VYQ.SEMATTRS_PEER_SERVICE=void 0;VYQ.DBSYSTEMVALUES_FILEMAKER=VYQ.DBSYSTEMVALUES_DERBY=VYQ.DBSYSTEMVALUES_FIREBIRD=VYQ.DBSYSTEMVALUES_ADABAS=VYQ.DBSYSTEMVALUES_CACHE=VYQ.DBSYSTEMVALUES_EDB=VYQ.DBSYSTEMVALUES_FIRSTSQL=VYQ.DBSYSTEMVALUES_INGRES=VYQ.DBSYSTEMVALUES_HANADB=VYQ.DBSYSTEMVALUES_MAXDB=VYQ.DBSYSTEMVALUES_PROGRESS=VYQ.DBSYSTEMVALUES_HSQLDB=VYQ.DBSYSTEMVALUES_CLOUDSCAPE=VYQ.DBSYSTEMVALUES_HIVE=VYQ.DBSYSTEMVALUES_REDSHIFT=VYQ.DBSYSTEMVALUES_POSTGRESQL=VYQ.DBSYSTEMVALUES_DB2=VYQ.DBSYSTEMVALUES_ORACLE=VYQ.DBSYSTEMVALUES_MYSQL=VYQ.DBSYSTEMVALUES_MSSQL=VYQ.DBSYSTEMVALUES_OTHER_SQL=VYQ.SemanticAttributes=VYQ.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=VYQ.SEMATTRS_MESSAGE_COMPRESSED_SIZE=VYQ.SEMATTRS_MESSAGE_ID=VYQ.SEMATTRS_MESSAGE_TYPE=VYQ.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=VYQ.SEMATTRS_RPC_JSONRPC_ERROR_CODE=VYQ.SEMATTRS_RPC_JSONRPC_REQUEST_ID=VYQ.SEMATTRS_RPC_JSONRPC_VERSION=VYQ.SEMATTRS_RPC_GRPC_STATUS_CODE=VYQ.SEMATTRS_RPC_METHOD=VYQ.SEMATTRS_RPC_SERVICE=VYQ.SEMATTRS_RPC_SYSTEM=VYQ.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=VYQ.SEMATTRS_MESSAGING_KAFKA_PARTITION=VYQ.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=VYQ.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=VYQ.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=VYQ.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=VYQ.SEMATTRS_MESSAGING_CONSUMER_ID=VYQ.SEMATTRS_MESSAGING_OPERATION=VYQ.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=VYQ.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=VYQ.SEMATTRS_MESSAGING_CONVERSATION_ID=VYQ.SEMATTRS_MESSAGING_MESSAGE_ID=VYQ.SEMATTRS_MESSAGING_URL=VYQ.SEMATTRS_MESSAGING_PROTOCOL_VERSION=VYQ.SEMATTRS_MESSAGING_PROTOCOL=VYQ.SEMATTRS_MESSAGING_TEMP_DESTINATION=void 0;VYQ.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=VYQ.FaasDocumentOperationValues=VYQ.FAASDOCUMENTOPERATIONVALUES_DELETE=VYQ.FAASDOCUMENTOPERATIONVALUES_EDIT=VYQ.FAASDOCUMENTOPERATIONVALUES_INSERT=VYQ.FaasTriggerValues=VYQ.FAASTRIGGERVALUES_OTHER=VYQ.FAASTRIGGERVALUES_TIMER=VYQ.FAASTRIGGERVALUES_PUBSUB=VYQ.FAASTRIGGERVALUES_HTTP=VYQ.FAASTRIGGERVALUES_DATASOURCE=VYQ.DbCassandraConsistencyLevelValues=VYQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=VYQ.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=VYQ.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=VYQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=VYQ.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=VYQ.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=VYQ.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=VYQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=VYQ.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=VYQ.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=VYQ.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=VYQ.DbSystemValues=VYQ.DBSYSTEMVALUES_COCKROACHDB=VYQ.DBSYSTEMVALUES_MEMCACHED=VYQ.DBSYSTEMVALUES_ELASTICSEARCH=VYQ.DBSYSTEMVALUES_GEODE=VYQ.DBSYSTEMVALUES_NEO4J=VYQ.DBSYSTEMVALUES_DYNAMODB=VYQ.DBSYSTEMVALUES_COSMOSDB=VYQ.DBSYSTEMVALUES_COUCHDB=VYQ.DBSYSTEMVALUES_COUCHBASE=VYQ.DBSYSTEMVALUES_REDIS=VYQ.DBSYSTEMVALUES_MONGODB=VYQ.DBSYSTEMVALUES_HBASE=VYQ.DBSYSTEMVALUES_CASSANDRA=VYQ.DBSYSTEMVALUES_COLDFUSION=VYQ.DBSYSTEMVALUES_H2=VYQ.DBSYSTEMVALUES_VERTICA=VYQ.DBSYSTEMVALUES_TERADATA=VYQ.DBSYSTEMVALUES_SYBASE=VYQ.DBSYSTEMVALUES_SQLITE=VYQ.DBSYSTEMVALUES_POINTBASE=VYQ.DBSYSTEMVALUES_PERVASIVE=VYQ.DBSYSTEMVALUES_NETEZZA=VYQ.DBSYSTEMVALUES_MARIADB=VYQ.DBSYSTEMVALUES_INTERBASE=VYQ.DBSYSTEMVALUES_INSTANTDB=VYQ.DBSYSTEMVALUES_INFORMIX=void 0;VYQ.MESSAGINGOPERATIONVALUES_RECEIVE=VYQ.MessagingDestinationKindValues=VYQ.MESSAGINGDESTINATIONKINDVALUES_TOPIC=VYQ.MESSAGINGDESTINATIONKINDVALUES_QUEUE=VYQ.HttpFlavorValues=VYQ.HTTPFLAVORVALUES_QUIC=VYQ.HTTPFLAVORVALUES_SPDY=VYQ.HTTPFLAVORVALUES_HTTP_2_0=VYQ.HTTPFLAVORVALUES_HTTP_1_1=VYQ.HTTPFLAVORVALUES_HTTP_1_0=VYQ.NetHostConnectionSubtypeValues=VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_NR=VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=VYQ.NetHostConnectionTypeValues=VYQ.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=VYQ.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=VYQ.NETHOSTCONNECTIONTYPEVALUES_CELL=VYQ.NETHOSTCONNECTIONTYPEVALUES_WIRED=VYQ.NETHOSTCONNECTIONTYPEVALUES_WIFI=VYQ.NetTransportValues=VYQ.NETTRANSPORTVALUES_OTHER=VYQ.NETTRANSPORTVALUES_INPROC=VYQ.NETTRANSPORTVALUES_PIPE=VYQ.NETTRANSPORTVALUES_UNIX=VYQ.NETTRANSPORTVALUES_IP=VYQ.NETTRANSPORTVALUES_IP_UDP=VYQ.NETTRANSPORTVALUES_IP_TCP=VYQ.FaasInvokedProviderValues=VYQ.FAASINVOKEDPROVIDERVALUES_GCP=VYQ.FAASINVOKEDPROVIDERVALUES_AZURE=VYQ.FAASINVOKEDPROVIDERVALUES_AWS=void 0;VYQ.MessageTypeValues=VYQ.MESSAGETYPEVALUES_RECEIVED=VYQ.MESSAGETYPEVALUES_SENT=VYQ.RpcGrpcStatusCodeValues=VYQ.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=VYQ.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=VYQ.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=VYQ.RPCGRPCSTATUSCODEVALUES_INTERNAL=VYQ.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=VYQ.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=VYQ.RPCGRPCSTATUSCODEVALUES_ABORTED=VYQ.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=VYQ.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=VYQ.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=VYQ.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=VYQ.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=VYQ.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=VYQ.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=VYQ.RPCGRPCSTATUSCODEVALUES_UNKNOWN=VYQ.RPCGRPCSTATUSCODEVALUES_CANCELLED=VYQ.RPCGRPCSTATUSCODEVALUES_OK=VYQ.MessagingOperationValues=VYQ.MESSAGINGOPERATIONVALUES_PROCESS=void 0;var x5=hp(),jeA="aws.lambda.invoked_arn",OeA="db.system",PeA="db.connection_string",TeA="db.user",SeA="db.jdbc.driver_classname",keA="db.name",_eA="db.statement",veA="db.operation",yeA="db.mssql.instance_name",heA="db.cassandra.keyspace",geA="db.cassandra.page_size",xeA="db.cassandra.consistency_level",feA="db.cassandra.table",beA="db.cassandra.idempotence",meA="db.cassandra.speculative_execution_count",ueA="db.cassandra.coordinator.id",deA="db.cassandra.coordinator.dc",ceA="db.hbase.namespace",leA="db.redis.database_index",peA="db.mongodb.collection",ieA="db.sql.table",neA="exception.type",seA="exception.message",reA="exception.stacktrace",aeA="exception.escaped",oeA="faas.trigger",teA="faas.execution",eeA="faas.document.collection",AAQ="faas.document.operation",QAQ="faas.document.time",BAQ="faas.document.name",YAQ="faas.time",JAQ="faas.cron",CAQ="faas.coldstart",XAQ="faas.invoked_name",GAQ="faas.invoked_provider",FAQ="faas.invoked_region",WAQ="net.transport",ZAQ="net.peer.ip",$AQ="net.peer.port",UAQ="net.peer.name",EAQ="net.host.ip",KAQ="net.host.port",VAQ="net.host.name",IAQ="net.host.connection.type",HAQ="net.host.connection.subtype",DAQ="net.host.carrier.name",NAQ="net.host.carrier.mcc",LAQ="net.host.carrier.mnc",qAQ="net.host.carrier.icc",MAQ="peer.service",zAQ="enduser.id",RAQ="enduser.role",wAQ="enduser.scope",jAQ="thread.id",OAQ="thread.name",PAQ="code.function",TAQ="code.namespace",SAQ="code.filepath",kAQ="code.lineno",_AQ="http.method",vAQ="http.url",yAQ="http.target",hAQ="http.host",gAQ="http.scheme",xAQ="http.status_code",fAQ="http.flavor",bAQ="http.user_agent",mAQ="http.request_content_length",uAQ="http.request_content_length_uncompressed",dAQ="http.response_content_length",cAQ="http.response_content_length_uncompressed",lAQ="http.server_name",pAQ="http.route",iAQ="http.client_ip",nAQ="aws.dynamodb.table_names",sAQ="aws.dynamodb.consumed_capacity",rAQ="aws.dynamodb.item_collection_metrics",aAQ="aws.dynamodb.provisioned_read_capacity",oAQ="aws.dynamodb.provisioned_write_capacity",tAQ="aws.dynamodb.consistent_read",eAQ="aws.dynamodb.projection",AQQ="aws.dynamodb.limit",QQQ="aws.dynamodb.attributes_to_get",BQQ="aws.dynamodb.index_name",YQQ="aws.dynamodb.select",JQQ="aws.dynamodb.global_secondary_indexes",CQQ="aws.dynamodb.local_secondary_indexes",XQQ="aws.dynamodb.exclusive_start_table",GQQ="aws.dynamodb.table_count",FQQ="aws.dynamodb.scan_forward",WQQ="aws.dynamodb.segment",ZQQ="aws.dynamodb.total_segments",$QQ="aws.dynamodb.count",UQQ="aws.dynamodb.scanned_count",EQQ="aws.dynamodb.attribute_definitions",KQQ="aws.dynamodb.global_secondary_index_updates",VQQ="messaging.system",IQQ="messaging.destination",HQQ="messaging.destination_kind",DQQ="messaging.temp_destination",NQQ="messaging.protocol",LQQ="messaging.protocol_version",qQQ="messaging.url",MQQ="messaging.message_id",zQQ="messaging.conversation_id",RQQ="messaging.message_payload_size_bytes",wQQ="messaging.message_payload_compressed_size_bytes",jQQ="messaging.operation",OQQ="messaging.consumer_id",PQQ="messaging.rabbitmq.routing_key",TQQ="messaging.kafka.message_key",SQQ="messaging.kafka.consumer_group",kQQ="messaging.kafka.client_id",_QQ="messaging.kafka.partition",vQQ="messaging.kafka.tombstone",yQQ="rpc.system",hQQ="rpc.service",gQQ="rpc.method",xQQ="rpc.grpc.status_code",fQQ="rpc.jsonrpc.version",bQQ="rpc.jsonrpc.request_id",mQQ="rpc.jsonrpc.error_code",uQQ="rpc.jsonrpc.error_message",dQQ="message.type",cQQ="message.id",lQQ="message.compressed_size",pQQ="message.uncompressed_size";VYQ.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=jeA;VYQ.SEMATTRS_DB_SYSTEM=OeA;VYQ.SEMATTRS_DB_CONNECTION_STRING=PeA;VYQ.SEMATTRS_DB_USER=TeA;VYQ.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=SeA;VYQ.SEMATTRS_DB_NAME=keA;VYQ.SEMATTRS_DB_STATEMENT=_eA;VYQ.SEMATTRS_DB_OPERATION=veA;VYQ.SEMATTRS_DB_MSSQL_INSTANCE_NAME=yeA;VYQ.SEMATTRS_DB_CASSANDRA_KEYSPACE=heA;VYQ.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=geA;VYQ.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=xeA;VYQ.SEMATTRS_DB_CASSANDRA_TABLE=feA;VYQ.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=beA;VYQ.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=meA;VYQ.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=ueA;VYQ.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=deA;VYQ.SEMATTRS_DB_HBASE_NAMESPACE=ceA;VYQ.SEMATTRS_DB_REDIS_DATABASE_INDEX=leA;VYQ.SEMATTRS_DB_MONGODB_COLLECTION=peA;VYQ.SEMATTRS_DB_SQL_TABLE=ieA;VYQ.SEMATTRS_EXCEPTION_TYPE=neA;VYQ.SEMATTRS_EXCEPTION_MESSAGE=seA;VYQ.SEMATTRS_EXCEPTION_STACKTRACE=reA;VYQ.SEMATTRS_EXCEPTION_ESCAPED=aeA;VYQ.SEMATTRS_FAAS_TRIGGER=oeA;VYQ.SEMATTRS_FAAS_EXECUTION=teA;VYQ.SEMATTRS_FAAS_DOCUMENT_COLLECTION=eeA;VYQ.SEMATTRS_FAAS_DOCUMENT_OPERATION=AAQ;VYQ.SEMATTRS_FAAS_DOCUMENT_TIME=QAQ;VYQ.SEMATTRS_FAAS_DOCUMENT_NAME=BAQ;VYQ.SEMATTRS_FAAS_TIME=YAQ;VYQ.SEMATTRS_FAAS_CRON=JAQ;VYQ.SEMATTRS_FAAS_COLDSTART=CAQ;VYQ.SEMATTRS_FAAS_INVOKED_NAME=XAQ;VYQ.SEMATTRS_FAAS_INVOKED_PROVIDER=GAQ;VYQ.SEMATTRS_FAAS_INVOKED_REGION=FAQ;VYQ.SEMATTRS_NET_TRANSPORT=WAQ;VYQ.SEMATTRS_NET_PEER_IP=ZAQ;VYQ.SEMATTRS_NET_PEER_PORT=$AQ;VYQ.SEMATTRS_NET_PEER_NAME=UAQ;VYQ.SEMATTRS_NET_HOST_IP=EAQ;VYQ.SEMATTRS_NET_HOST_PORT=KAQ;VYQ.SEMATTRS_NET_HOST_NAME=VAQ;VYQ.SEMATTRS_NET_HOST_CONNECTION_TYPE=IAQ;VYQ.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=HAQ;VYQ.SEMATTRS_NET_HOST_CARRIER_NAME=DAQ;VYQ.SEMATTRS_NET_HOST_CARRIER_MCC=NAQ;VYQ.SEMATTRS_NET_HOST_CARRIER_MNC=LAQ;VYQ.SEMATTRS_NET_HOST_CARRIER_ICC=qAQ;VYQ.SEMATTRS_PEER_SERVICE=MAQ;VYQ.SEMATTRS_ENDUSER_ID=zAQ;VYQ.SEMATTRS_ENDUSER_ROLE=RAQ;VYQ.SEMATTRS_ENDUSER_SCOPE=wAQ;VYQ.SEMATTRS_THREAD_ID=jAQ;VYQ.SEMATTRS_THREAD_NAME=OAQ;VYQ.SEMATTRS_CODE_FUNCTION=PAQ;VYQ.SEMATTRS_CODE_NAMESPACE=TAQ;VYQ.SEMATTRS_CODE_FILEPATH=SAQ;VYQ.SEMATTRS_CODE_LINENO=kAQ;VYQ.SEMATTRS_HTTP_METHOD=_AQ;VYQ.SEMATTRS_HTTP_URL=vAQ;VYQ.SEMATTRS_HTTP_TARGET=yAQ;VYQ.SEMATTRS_HTTP_HOST=hAQ;VYQ.SEMATTRS_HTTP_SCHEME=gAQ;VYQ.SEMATTRS_HTTP_STATUS_CODE=xAQ;VYQ.SEMATTRS_HTTP_FLAVOR=fAQ;VYQ.SEMATTRS_HTTP_USER_AGENT=bAQ;VYQ.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=mAQ;VYQ.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=uAQ;VYQ.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=dAQ;VYQ.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=cAQ;VYQ.SEMATTRS_HTTP_SERVER_NAME=lAQ;VYQ.SEMATTRS_HTTP_ROUTE=pAQ;VYQ.SEMATTRS_HTTP_CLIENT_IP=iAQ;VYQ.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=nAQ;VYQ.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=sAQ;VYQ.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=rAQ;VYQ.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=aAQ;VYQ.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=oAQ;VYQ.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=tAQ;VYQ.SEMATTRS_AWS_DYNAMODB_PROJECTION=eAQ;VYQ.SEMATTRS_AWS_DYNAMODB_LIMIT=AQQ;VYQ.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=QQQ;VYQ.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=BQQ;VYQ.SEMATTRS_AWS_DYNAMODB_SELECT=YQQ;VYQ.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=JQQ;VYQ.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=CQQ;VYQ.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=XQQ;VYQ.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=GQQ;VYQ.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=FQQ;VYQ.SEMATTRS_AWS_DYNAMODB_SEGMENT=WQQ;VYQ.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=ZQQ;VYQ.SEMATTRS_AWS_DYNAMODB_COUNT=$QQ;VYQ.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=UQQ;VYQ.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=EQQ;VYQ.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=KQQ;VYQ.SEMATTRS_MESSAGING_SYSTEM=VQQ;VYQ.SEMATTRS_MESSAGING_DESTINATION=IQQ;VYQ.SEMATTRS_MESSAGING_DESTINATION_KIND=HQQ;VYQ.SEMATTRS_MESSAGING_TEMP_DESTINATION=DQQ;VYQ.SEMATTRS_MESSAGING_PROTOCOL=NQQ;VYQ.SEMATTRS_MESSAGING_PROTOCOL_VERSION=LQQ;VYQ.SEMATTRS_MESSAGING_URL=qQQ;VYQ.SEMATTRS_MESSAGING_MESSAGE_ID=MQQ;VYQ.SEMATTRS_MESSAGING_CONVERSATION_ID=zQQ;VYQ.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=RQQ;VYQ.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=wQQ;VYQ.SEMATTRS_MESSAGING_OPERATION=jQQ;VYQ.SEMATTRS_MESSAGING_CONSUMER_ID=OQQ;VYQ.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=PQQ;VYQ.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=TQQ;VYQ.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=SQQ;VYQ.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=kQQ;VYQ.SEMATTRS_MESSAGING_KAFKA_PARTITION=_QQ;VYQ.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=vQQ;VYQ.SEMATTRS_RPC_SYSTEM=yQQ;VYQ.SEMATTRS_RPC_SERVICE=hQQ;VYQ.SEMATTRS_RPC_METHOD=gQQ;VYQ.SEMATTRS_RPC_GRPC_STATUS_CODE=xQQ;VYQ.SEMATTRS_RPC_JSONRPC_VERSION=fQQ;VYQ.SEMATTRS_RPC_JSONRPC_REQUEST_ID=bQQ;VYQ.SEMATTRS_RPC_JSONRPC_ERROR_CODE=mQQ;VYQ.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=uQQ;VYQ.SEMATTRS_MESSAGE_TYPE=dQQ;VYQ.SEMATTRS_MESSAGE_ID=cQQ;VYQ.SEMATTRS_MESSAGE_COMPRESSED_SIZE=lQQ;VYQ.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=pQQ;VYQ.SemanticAttributes=(0,x5.createConstMap)([jeA,OeA,PeA,TeA,SeA,keA,_eA,veA,yeA,heA,geA,xeA,feA,beA,meA,ueA,deA,ceA,leA,peA,ieA,neA,seA,reA,aeA,oeA,teA,eeA,AAQ,QAQ,BAQ,YAQ,JAQ,CAQ,XAQ,GAQ,FAQ,WAQ,ZAQ,$AQ,UAQ,EAQ,KAQ,VAQ,IAQ,HAQ,DAQ,NAQ,LAQ,qAQ,MAQ,zAQ,RAQ,wAQ,jAQ,OAQ,PAQ,TAQ,SAQ,kAQ,_AQ,vAQ,yAQ,hAQ,gAQ,xAQ,fAQ,bAQ,mAQ,uAQ,dAQ,cAQ,lAQ,pAQ,iAQ,nAQ,sAQ,rAQ,aAQ,oAQ,tAQ,eAQ,AQQ,QQQ,BQQ,YQQ,JQQ,CQQ,XQQ,GQQ,FQQ,WQQ,ZQQ,$QQ,UQQ,EQQ,KQQ,VQQ,IQQ,HQQ,DQQ,NQQ,LQQ,qQQ,MQQ,zQQ,RQQ,wQQ,jQQ,OQQ,PQQ,TQQ,SQQ,kQQ,_QQ,vQQ,yQQ,hQQ,gQQ,xQQ,fQQ,bQQ,mQQ,uQQ,dQQ,cQQ,lQQ,pQQ]);var iQQ="other_sql",nQQ="mssql",sQQ="mysql",rQQ="oracle",aQQ="db2",oQQ="postgresql",tQQ="redshift",eQQ="hive",ABQ="cloudscape",QBQ="hsqldb",BBQ="progress",YBQ="maxdb",JBQ="hanadb",CBQ="ingres",XBQ="firstsql",GBQ="edb",FBQ="cache",WBQ="adabas",ZBQ="firebird",$BQ="derby",UBQ="filemaker",EBQ="informix",KBQ="instantdb",VBQ="interbase",IBQ="mariadb",HBQ="netezza",DBQ="pervasive",NBQ="pointbase",LBQ="sqlite",qBQ="sybase",MBQ="teradata",zBQ="vertica",RBQ="h2",wBQ="coldfusion",jBQ="cassandra",OBQ="hbase",PBQ="mongodb",TBQ="redis",SBQ="couchbase",kBQ="couchdb",_BQ="cosmosdb",vBQ="dynamodb",yBQ="neo4j",hBQ="geode",gBQ="elasticsearch",xBQ="memcached",fBQ="cockroachdb";VYQ.DBSYSTEMVALUES_OTHER_SQL=iQQ;VYQ.DBSYSTEMVALUES_MSSQL=nQQ;VYQ.DBSYSTEMVALUES_MYSQL=sQQ;VYQ.DBSYSTEMVALUES_ORACLE=rQQ;VYQ.DBSYSTEMVALUES_DB2=aQQ;VYQ.DBSYSTEMVALUES_POSTGRESQL=oQQ;VYQ.DBSYSTEMVALUES_REDSHIFT=tQQ;VYQ.DBSYSTEMVALUES_HIVE=eQQ;VYQ.DBSYSTEMVALUES_CLOUDSCAPE=ABQ;VYQ.DBSYSTEMVALUES_HSQLDB=QBQ;VYQ.DBSYSTEMVALUES_PROGRESS=BBQ;VYQ.DBSYSTEMVALUES_MAXDB=YBQ;VYQ.DBSYSTEMVALUES_HANADB=JBQ;VYQ.DBSYSTEMVALUES_INGRES=CBQ;VYQ.DBSYSTEMVALUES_FIRSTSQL=XBQ;VYQ.DBSYSTEMVALUES_EDB=GBQ;VYQ.DBSYSTEMVALUES_CACHE=FBQ;VYQ.DBSYSTEMVALUES_ADABAS=WBQ;VYQ.DBSYSTEMVALUES_FIREBIRD=ZBQ;VYQ.DBSYSTEMVALUES_DERBY=$BQ;VYQ.DBSYSTEMVALUES_FILEMAKER=UBQ;VYQ.DBSYSTEMVALUES_INFORMIX=EBQ;VYQ.DBSYSTEMVALUES_INSTANTDB=KBQ;VYQ.DBSYSTEMVALUES_INTERBASE=VBQ;VYQ.DBSYSTEMVALUES_MARIADB=IBQ;VYQ.DBSYSTEMVALUES_NETEZZA=HBQ;VYQ.DBSYSTEMVALUES_PERVASIVE=DBQ;VYQ.DBSYSTEMVALUES_POINTBASE=NBQ;VYQ.DBSYSTEMVALUES_SQLITE=LBQ;VYQ.DBSYSTEMVALUES_SYBASE=qBQ;VYQ.DBSYSTEMVALUES_TERADATA=MBQ;VYQ.DBSYSTEMVALUES_VERTICA=zBQ;VYQ.DBSYSTEMVALUES_H2=RBQ;VYQ.DBSYSTEMVALUES_COLDFUSION=wBQ;VYQ.DBSYSTEMVALUES_CASSANDRA=jBQ;VYQ.DBSYSTEMVALUES_HBASE=OBQ;VYQ.DBSYSTEMVALUES_MONGODB=PBQ;VYQ.DBSYSTEMVALUES_REDIS=TBQ;VYQ.DBSYSTEMVALUES_COUCHBASE=SBQ;VYQ.DBSYSTEMVALUES_COUCHDB=kBQ;VYQ.DBSYSTEMVALUES_COSMOSDB=_BQ;VYQ.DBSYSTEMVALUES_DYNAMODB=vBQ;VYQ.DBSYSTEMVALUES_NEO4J=yBQ;VYQ.DBSYSTEMVALUES_GEODE=hBQ;VYQ.DBSYSTEMVALUES_ELASTICSEARCH=gBQ;VYQ.DBSYSTEMVALUES_MEMCACHED=xBQ;VYQ.DBSYSTEMVALUES_COCKROACHDB=fBQ;VYQ.DbSystemValues=(0,x5.createConstMap)([iQQ,nQQ,sQQ,rQQ,aQQ,oQQ,tQQ,eQQ,ABQ,QBQ,BBQ,YBQ,JBQ,CBQ,XBQ,GBQ,FBQ,WBQ,ZBQ,$BQ,UBQ,EBQ,KBQ,VBQ,IBQ,HBQ,DBQ,NBQ,LBQ,qBQ,MBQ,zBQ,RBQ,wBQ,jBQ,OBQ,PBQ,TBQ,SBQ,kBQ,_BQ,vBQ,yBQ,hBQ,gBQ,xBQ,fBQ]);var bBQ="all",mBQ="each_quorum",uBQ="quorum",dBQ="local_quorum",cBQ="one",lBQ="two",pBQ="three",iBQ="local_one",nBQ="any",sBQ="serial",rBQ="local_serial";VYQ.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=bBQ;VYQ.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=mBQ;VYQ.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=uBQ;VYQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=dBQ;VYQ.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=cBQ;VYQ.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=lBQ;VYQ.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=pBQ;VYQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=iBQ;VYQ.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=nBQ;VYQ.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=sBQ;VYQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=rBQ;VYQ.DbCassandraConsistencyLevelValues=(0,x5.createConstMap)([bBQ,mBQ,uBQ,dBQ,cBQ,lBQ,pBQ,iBQ,nBQ,sBQ,rBQ]);var aBQ="datasource",oBQ="http",tBQ="pubsub",eBQ="timer",A0Q="other";VYQ.FAASTRIGGERVALUES_DATASOURCE=aBQ;VYQ.FAASTRIGGERVALUES_HTTP=oBQ;VYQ.FAASTRIGGERVALUES_PUBSUB=tBQ;VYQ.FAASTRIGGERVALUES_TIMER=eBQ;VYQ.FAASTRIGGERVALUES_OTHER=A0Q;VYQ.FaasTriggerValues=(0,x5.createConstMap)([aBQ,oBQ,tBQ,eBQ,A0Q]);var Q0Q="insert",B0Q="edit",Y0Q="delete";VYQ.FAASDOCUMENTOPERATIONVALUES_INSERT=Q0Q;VYQ.FAASDOCUMENTOPERATIONVALUES_EDIT=B0Q;VYQ.FAASDOCUMENTOPERATIONVALUES_DELETE=Y0Q;VYQ.FaasDocumentOperationValues=(0,x5.createConstMap)([Q0Q,B0Q,Y0Q]);var J0Q="alibaba_cloud",C0Q="aws",X0Q="azure",G0Q="gcp";VYQ.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=J0Q;VYQ.FAASINVOKEDPROVIDERVALUES_AWS=C0Q;VYQ.FAASINVOKEDPROVIDERVALUES_AZURE=X0Q;VYQ.FAASINVOKEDPROVIDERVALUES_GCP=G0Q;VYQ.FaasInvokedProviderValues=(0,x5.createConstMap)([J0Q,C0Q,X0Q,G0Q]);var F0Q="ip_tcp",W0Q="ip_udp",Z0Q="ip",$0Q="unix",U0Q="pipe",E0Q="inproc",K0Q="other";VYQ.NETTRANSPORTVALUES_IP_TCP=F0Q;VYQ.NETTRANSPORTVALUES_IP_UDP=W0Q;VYQ.NETTRANSPORTVALUES_IP=Z0Q;VYQ.NETTRANSPORTVALUES_UNIX=$0Q;VYQ.NETTRANSPORTVALUES_PIPE=U0Q;VYQ.NETTRANSPORTVALUES_INPROC=E0Q;VYQ.NETTRANSPORTVALUES_OTHER=K0Q;VYQ.NetTransportValues=(0,x5.createConstMap)([F0Q,W0Q,Z0Q,$0Q,U0Q,E0Q,K0Q]);var V0Q="wifi",I0Q="wired",H0Q="cell",D0Q="unavailable",N0Q="unknown";VYQ.NETHOSTCONNECTIONTYPEVALUES_WIFI=V0Q;VYQ.NETHOSTCONNECTIONTYPEVALUES_WIRED=I0Q;VYQ.NETHOSTCONNECTIONTYPEVALUES_CELL=H0Q;VYQ.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=D0Q;VYQ.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=N0Q;VYQ.NetHostConnectionTypeValues=(0,x5.createConstMap)([V0Q,I0Q,H0Q,D0Q,N0Q]);var L0Q="gprs",q0Q="edge",M0Q="umts",z0Q="cdma",R0Q="evdo_0",w0Q="evdo_a",j0Q="cdma2000_1xrtt",O0Q="hsdpa",P0Q="hsupa",T0Q="hspa",S0Q="iden",k0Q="evdo_b",_0Q="lte",v0Q="ehrpd",y0Q="hspap",h0Q="gsm",g0Q="td_scdma",x0Q="iwlan",f0Q="nr",b0Q="nrnsa",m0Q="lte_ca";VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=L0Q;VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=q0Q;VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=M0Q;VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=z0Q;VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=R0Q;VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=w0Q;VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=j0Q;VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=O0Q;VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=P0Q;VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=T0Q;VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=S0Q;VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=k0Q;VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=_0Q;VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=v0Q;VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=y0Q;VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=h0Q;VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=g0Q;VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=x0Q;VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_NR=f0Q;VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=b0Q;VYQ.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=m0Q;VYQ.NetHostConnectionSubtypeValues=(0,x5.createConstMap)([L0Q,q0Q,M0Q,z0Q,R0Q,w0Q,j0Q,O0Q,P0Q,T0Q,S0Q,k0Q,_0Q,v0Q,y0Q,h0Q,g0Q,x0Q,f0Q,b0Q,m0Q]);var u0Q="1.0",d0Q="1.1",c0Q="2.0",l0Q="SPDY",p0Q="QUIC";VYQ.HTTPFLAVORVALUES_HTTP_1_0=u0Q;VYQ.HTTPFLAVORVALUES_HTTP_1_1=d0Q;VYQ.HTTPFLAVORVALUES_HTTP_2_0=c0Q;VYQ.HTTPFLAVORVALUES_SPDY=l0Q;VYQ.HTTPFLAVORVALUES_QUIC=p0Q;VYQ.HttpFlavorValues={HTTP_1_0:u0Q,HTTP_1_1:d0Q,HTTP_2_0:c0Q,SPDY:l0Q,QUIC:p0Q};var i0Q="queue",n0Q="topic";VYQ.MESSAGINGDESTINATIONKINDVALUES_QUEUE=i0Q;VYQ.MESSAGINGDESTINATIONKINDVALUES_TOPIC=n0Q;VYQ.MessagingDestinationKindValues=(0,x5.createConstMap)([i0Q,n0Q]);var s0Q="receive",r0Q="process";VYQ.MESSAGINGOPERATIONVALUES_RECEIVE=s0Q;VYQ.MESSAGINGOPERATIONVALUES_PROCESS=r0Q;VYQ.MessagingOperationValues=(0,x5.createConstMap)([s0Q,r0Q]);var a0Q=0,o0Q=1,t0Q=2,e0Q=3,AYQ=4,QYQ=5,BYQ=6,YYQ=7,JYQ=8,CYQ=9,XYQ=10,GYQ=11,FYQ=12,WYQ=13,ZYQ=14,$YQ=15,UYQ=16;VYQ.RPCGRPCSTATUSCODEVALUES_OK=a0Q;VYQ.RPCGRPCSTATUSCODEVALUES_CANCELLED=o0Q;VYQ.RPCGRPCSTATUSCODEVALUES_UNKNOWN=t0Q;VYQ.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=e0Q;VYQ.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=AYQ;VYQ.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=QYQ;VYQ.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=BYQ;VYQ.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=YYQ;VYQ.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=JYQ;VYQ.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=CYQ;VYQ.RPCGRPCSTATUSCODEVALUES_ABORTED=XYQ;VYQ.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=GYQ;VYQ.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=FYQ;VYQ.RPCGRPCSTATUSCODEVALUES_INTERNAL=WYQ;VYQ.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=ZYQ;VYQ.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=$YQ;VYQ.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=UYQ;VYQ.RpcGrpcStatusCodeValues={OK:a0Q,CANCELLED:o0Q,UNKNOWN:t0Q,INVALID_ARGUMENT:e0Q,DEADLINE_EXCEEDED:AYQ,NOT_FOUND:QYQ,ALREADY_EXISTS:BYQ,PERMISSION_DENIED:YYQ,RESOURCE_EXHAUSTED:JYQ,FAILED_PRECONDITION:CYQ,ABORTED:XYQ,OUT_OF_RANGE:GYQ,UNIMPLEMENTED:FYQ,INTERNAL:WYQ,UNAVAILABLE:ZYQ,DATA_LOSS:$YQ,UNAUTHENTICATED:UYQ};var EYQ="SENT",KYQ="RECEIVED";VYQ.MESSAGETYPEVALUES_SENT=EYQ;VYQ.MESSAGETYPEVALUES_RECEIVED=KYQ;VYQ.MessageTypeValues=(0,x5.createConstMap)([EYQ,KYQ])});var zYQ=R((J$)=>{var r90=J$&&J$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),a90=J$&&J$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))r90(Q,A,B)};Object.defineProperty(J$,"__esModule",{value:!0});a90(MYQ(),J$)});var t9Q=R((s9Q)=>{Object.defineProperty(s9Q,"__esModule",{value:!0});s9Q.SEMRESATTRS_K8S_STATEFULSET_NAME=s9Q.SEMRESATTRS_K8S_STATEFULSET_UID=s9Q.SEMRESATTRS_K8S_DEPLOYMENT_NAME=s9Q.SEMRESATTRS_K8S_DEPLOYMENT_UID=s9Q.SEMRESATTRS_K8S_REPLICASET_NAME=s9Q.SEMRESATTRS_K8S_REPLICASET_UID=s9Q.SEMRESATTRS_K8S_CONTAINER_NAME=s9Q.SEMRESATTRS_K8S_POD_NAME=s9Q.SEMRESATTRS_K8S_POD_UID=s9Q.SEMRESATTRS_K8S_NAMESPACE_NAME=s9Q.SEMRESATTRS_K8S_NODE_UID=s9Q.SEMRESATTRS_K8S_NODE_NAME=s9Q.SEMRESATTRS_K8S_CLUSTER_NAME=s9Q.SEMRESATTRS_HOST_IMAGE_VERSION=s9Q.SEMRESATTRS_HOST_IMAGE_ID=s9Q.SEMRESATTRS_HOST_IMAGE_NAME=s9Q.SEMRESATTRS_HOST_ARCH=s9Q.SEMRESATTRS_HOST_TYPE=s9Q.SEMRESATTRS_HOST_NAME=s9Q.SEMRESATTRS_HOST_ID=s9Q.SEMRESATTRS_FAAS_MAX_MEMORY=s9Q.SEMRESATTRS_FAAS_INSTANCE=s9Q.SEMRESATTRS_FAAS_VERSION=s9Q.SEMRESATTRS_FAAS_ID=s9Q.SEMRESATTRS_FAAS_NAME=s9Q.SEMRESATTRS_DEVICE_MODEL_NAME=s9Q.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=s9Q.SEMRESATTRS_DEVICE_ID=s9Q.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=s9Q.SEMRESATTRS_CONTAINER_IMAGE_TAG=s9Q.SEMRESATTRS_CONTAINER_IMAGE_NAME=s9Q.SEMRESATTRS_CONTAINER_RUNTIME=s9Q.SEMRESATTRS_CONTAINER_ID=s9Q.SEMRESATTRS_CONTAINER_NAME=s9Q.SEMRESATTRS_AWS_LOG_STREAM_ARNS=s9Q.SEMRESATTRS_AWS_LOG_STREAM_NAMES=s9Q.SEMRESATTRS_AWS_LOG_GROUP_ARNS=s9Q.SEMRESATTRS_AWS_LOG_GROUP_NAMES=s9Q.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=s9Q.SEMRESATTRS_AWS_ECS_TASK_REVISION=s9Q.SEMRESATTRS_AWS_ECS_TASK_FAMILY=s9Q.SEMRESATTRS_AWS_ECS_TASK_ARN=s9Q.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=s9Q.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=s9Q.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=s9Q.SEMRESATTRS_CLOUD_PLATFORM=s9Q.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=s9Q.SEMRESATTRS_CLOUD_REGION=s9Q.SEMRESATTRS_CLOUD_ACCOUNT_ID=s9Q.SEMRESATTRS_CLOUD_PROVIDER=void 0;s9Q.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=s9Q.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=s9Q.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=s9Q.CLOUDPLATFORMVALUES_AZURE_AKS=s9Q.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=s9Q.CLOUDPLATFORMVALUES_AZURE_VM=s9Q.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=s9Q.CLOUDPLATFORMVALUES_AWS_LAMBDA=s9Q.CLOUDPLATFORMVALUES_AWS_EKS=s9Q.CLOUDPLATFORMVALUES_AWS_ECS=s9Q.CLOUDPLATFORMVALUES_AWS_EC2=s9Q.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=s9Q.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=s9Q.CloudProviderValues=s9Q.CLOUDPROVIDERVALUES_GCP=s9Q.CLOUDPROVIDERVALUES_AZURE=s9Q.CLOUDPROVIDERVALUES_AWS=s9Q.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=s9Q.SemanticResourceAttributes=s9Q.SEMRESATTRS_WEBENGINE_DESCRIPTION=s9Q.SEMRESATTRS_WEBENGINE_VERSION=s9Q.SEMRESATTRS_WEBENGINE_NAME=s9Q.SEMRESATTRS_TELEMETRY_AUTO_VERSION=s9Q.SEMRESATTRS_TELEMETRY_SDK_VERSION=s9Q.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=s9Q.SEMRESATTRS_TELEMETRY_SDK_NAME=s9Q.SEMRESATTRS_SERVICE_VERSION=s9Q.SEMRESATTRS_SERVICE_INSTANCE_ID=s9Q.SEMRESATTRS_SERVICE_NAMESPACE=s9Q.SEMRESATTRS_SERVICE_NAME=s9Q.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=s9Q.SEMRESATTRS_PROCESS_RUNTIME_VERSION=s9Q.SEMRESATTRS_PROCESS_RUNTIME_NAME=s9Q.SEMRESATTRS_PROCESS_OWNER=s9Q.SEMRESATTRS_PROCESS_COMMAND_ARGS=s9Q.SEMRESATTRS_PROCESS_COMMAND_LINE=s9Q.SEMRESATTRS_PROCESS_COMMAND=s9Q.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=s9Q.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=s9Q.SEMRESATTRS_PROCESS_PID=s9Q.SEMRESATTRS_OS_VERSION=s9Q.SEMRESATTRS_OS_NAME=s9Q.SEMRESATTRS_OS_DESCRIPTION=s9Q.SEMRESATTRS_OS_TYPE=s9Q.SEMRESATTRS_K8S_CRONJOB_NAME=s9Q.SEMRESATTRS_K8S_CRONJOB_UID=s9Q.SEMRESATTRS_K8S_JOB_NAME=s9Q.SEMRESATTRS_K8S_JOB_UID=s9Q.SEMRESATTRS_K8S_DAEMONSET_NAME=s9Q.SEMRESATTRS_K8S_DAEMONSET_UID=void 0;s9Q.TelemetrySdkLanguageValues=s9Q.TELEMETRYSDKLANGUAGEVALUES_WEBJS=s9Q.TELEMETRYSDKLANGUAGEVALUES_RUBY=s9Q.TELEMETRYSDKLANGUAGEVALUES_PYTHON=s9Q.TELEMETRYSDKLANGUAGEVALUES_PHP=s9Q.TELEMETRYSDKLANGUAGEVALUES_NODEJS=s9Q.TELEMETRYSDKLANGUAGEVALUES_JAVA=s9Q.TELEMETRYSDKLANGUAGEVALUES_GO=s9Q.TELEMETRYSDKLANGUAGEVALUES_ERLANG=s9Q.TELEMETRYSDKLANGUAGEVALUES_DOTNET=s9Q.TELEMETRYSDKLANGUAGEVALUES_CPP=s9Q.OsTypeValues=s9Q.OSTYPEVALUES_Z_OS=s9Q.OSTYPEVALUES_SOLARIS=s9Q.OSTYPEVALUES_AIX=s9Q.OSTYPEVALUES_HPUX=s9Q.OSTYPEVALUES_DRAGONFLYBSD=s9Q.OSTYPEVALUES_OPENBSD=s9Q.OSTYPEVALUES_NETBSD=s9Q.OSTYPEVALUES_FREEBSD=s9Q.OSTYPEVALUES_DARWIN=s9Q.OSTYPEVALUES_LINUX=s9Q.OSTYPEVALUES_WINDOWS=s9Q.HostArchValues=s9Q.HOSTARCHVALUES_X86=s9Q.HOSTARCHVALUES_PPC64=s9Q.HOSTARCHVALUES_PPC32=s9Q.HOSTARCHVALUES_IA64=s9Q.HOSTARCHVALUES_ARM64=s9Q.HOSTARCHVALUES_ARM32=s9Q.HOSTARCHVALUES_AMD64=s9Q.AwsEcsLaunchtypeValues=s9Q.AWSECSLAUNCHTYPEVALUES_FARGATE=s9Q.AWSECSLAUNCHTYPEVALUES_EC2=s9Q.CloudPlatformValues=s9Q.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=s9Q.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=s9Q.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=s9Q.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=void 0;var C$=hp(),RYQ="cloud.provider",wYQ="cloud.account.id",jYQ="cloud.region",OYQ="cloud.availability_zone",PYQ="cloud.platform",TYQ="aws.ecs.container.arn",SYQ="aws.ecs.cluster.arn",kYQ="aws.ecs.launchtype",_YQ="aws.ecs.task.arn",vYQ="aws.ecs.task.family",yYQ="aws.ecs.task.revision",hYQ="aws.eks.cluster.arn",gYQ="aws.log.group.names",xYQ="aws.log.group.arns",fYQ="aws.log.stream.names",bYQ="aws.log.stream.arns",mYQ="container.name",uYQ="container.id",dYQ="container.runtime",cYQ="container.image.name",lYQ="container.image.tag",pYQ="deployment.environment",iYQ="device.id",nYQ="device.model.identifier",sYQ="device.model.name",rYQ="faas.name",aYQ="faas.id",oYQ="faas.version",tYQ="faas.instance",eYQ="faas.max_memory",AJQ="host.id",QJQ="host.name",BJQ="host.type",YJQ="host.arch",JJQ="host.image.name",CJQ="host.image.id",XJQ="host.image.version",GJQ="k8s.cluster.name",FJQ="k8s.node.name",WJQ="k8s.node.uid",ZJQ="k8s.namespace.name",$JQ="k8s.pod.uid",UJQ="k8s.pod.name",EJQ="k8s.container.name",KJQ="k8s.replicaset.uid",VJQ="k8s.replicaset.name",IJQ="k8s.deployment.uid",HJQ="k8s.deployment.name",DJQ="k8s.statefulset.uid",NJQ="k8s.statefulset.name",LJQ="k8s.daemonset.uid",qJQ="k8s.daemonset.name",MJQ="k8s.job.uid",zJQ="k8s.job.name",RJQ="k8s.cronjob.uid",wJQ="k8s.cronjob.name",jJQ="os.type",OJQ="os.description",PJQ="os.name",TJQ="os.version",SJQ="process.pid",kJQ="process.executable.name",_JQ="process.executable.path",vJQ="process.command",yJQ="process.command_line",hJQ="process.command_args",gJQ="process.owner",xJQ="process.runtime.name",fJQ="process.runtime.version",bJQ="process.runtime.description",mJQ="service.name",uJQ="service.namespace",dJQ="service.instance.id",cJQ="service.version",lJQ="telemetry.sdk.name",pJQ="telemetry.sdk.language",iJQ="telemetry.sdk.version",nJQ="telemetry.auto.version",sJQ="webengine.name",rJQ="webengine.version",aJQ="webengine.description";s9Q.SEMRESATTRS_CLOUD_PROVIDER=RYQ;s9Q.SEMRESATTRS_CLOUD_ACCOUNT_ID=wYQ;s9Q.SEMRESATTRS_CLOUD_REGION=jYQ;s9Q.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=OYQ;s9Q.SEMRESATTRS_CLOUD_PLATFORM=PYQ;s9Q.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=TYQ;s9Q.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=SYQ;s9Q.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=kYQ;s9Q.SEMRESATTRS_AWS_ECS_TASK_ARN=_YQ;s9Q.SEMRESATTRS_AWS_ECS_TASK_FAMILY=vYQ;s9Q.SEMRESATTRS_AWS_ECS_TASK_REVISION=yYQ;s9Q.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=hYQ;s9Q.SEMRESATTRS_AWS_LOG_GROUP_NAMES=gYQ;s9Q.SEMRESATTRS_AWS_LOG_GROUP_ARNS=xYQ;s9Q.SEMRESATTRS_AWS_LOG_STREAM_NAMES=fYQ;s9Q.SEMRESATTRS_AWS_LOG_STREAM_ARNS=bYQ;s9Q.SEMRESATTRS_CONTAINER_NAME=mYQ;s9Q.SEMRESATTRS_CONTAINER_ID=uYQ;s9Q.SEMRESATTRS_CONTAINER_RUNTIME=dYQ;s9Q.SEMRESATTRS_CONTAINER_IMAGE_NAME=cYQ;s9Q.SEMRESATTRS_CONTAINER_IMAGE_TAG=lYQ;s9Q.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=pYQ;s9Q.SEMRESATTRS_DEVICE_ID=iYQ;s9Q.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=nYQ;s9Q.SEMRESATTRS_DEVICE_MODEL_NAME=sYQ;s9Q.SEMRESATTRS_FAAS_NAME=rYQ;s9Q.SEMRESATTRS_FAAS_ID=aYQ;s9Q.SEMRESATTRS_FAAS_VERSION=oYQ;s9Q.SEMRESATTRS_FAAS_INSTANCE=tYQ;s9Q.SEMRESATTRS_FAAS_MAX_MEMORY=eYQ;s9Q.SEMRESATTRS_HOST_ID=AJQ;s9Q.SEMRESATTRS_HOST_NAME=QJQ;s9Q.SEMRESATTRS_HOST_TYPE=BJQ;s9Q.SEMRESATTRS_HOST_ARCH=YJQ;s9Q.SEMRESATTRS_HOST_IMAGE_NAME=JJQ;s9Q.SEMRESATTRS_HOST_IMAGE_ID=CJQ;s9Q.SEMRESATTRS_HOST_IMAGE_VERSION=XJQ;s9Q.SEMRESATTRS_K8S_CLUSTER_NAME=GJQ;s9Q.SEMRESATTRS_K8S_NODE_NAME=FJQ;s9Q.SEMRESATTRS_K8S_NODE_UID=WJQ;s9Q.SEMRESATTRS_K8S_NAMESPACE_NAME=ZJQ;s9Q.SEMRESATTRS_K8S_POD_UID=$JQ;s9Q.SEMRESATTRS_K8S_POD_NAME=UJQ;s9Q.SEMRESATTRS_K8S_CONTAINER_NAME=EJQ;s9Q.SEMRESATTRS_K8S_REPLICASET_UID=KJQ;s9Q.SEMRESATTRS_K8S_REPLICASET_NAME=VJQ;s9Q.SEMRESATTRS_K8S_DEPLOYMENT_UID=IJQ;s9Q.SEMRESATTRS_K8S_DEPLOYMENT_NAME=HJQ;s9Q.SEMRESATTRS_K8S_STATEFULSET_UID=DJQ;s9Q.SEMRESATTRS_K8S_STATEFULSET_NAME=NJQ;s9Q.SEMRESATTRS_K8S_DAEMONSET_UID=LJQ;s9Q.SEMRESATTRS_K8S_DAEMONSET_NAME=qJQ;s9Q.SEMRESATTRS_K8S_JOB_UID=MJQ;s9Q.SEMRESATTRS_K8S_JOB_NAME=zJQ;s9Q.SEMRESATTRS_K8S_CRONJOB_UID=RJQ;s9Q.SEMRESATTRS_K8S_CRONJOB_NAME=wJQ;s9Q.SEMRESATTRS_OS_TYPE=jJQ;s9Q.SEMRESATTRS_OS_DESCRIPTION=OJQ;s9Q.SEMRESATTRS_OS_NAME=PJQ;s9Q.SEMRESATTRS_OS_VERSION=TJQ;s9Q.SEMRESATTRS_PROCESS_PID=SJQ;s9Q.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=kJQ;s9Q.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=_JQ;s9Q.SEMRESATTRS_PROCESS_COMMAND=vJQ;s9Q.SEMRESATTRS_PROCESS_COMMAND_LINE=yJQ;s9Q.SEMRESATTRS_PROCESS_COMMAND_ARGS=hJQ;s9Q.SEMRESATTRS_PROCESS_OWNER=gJQ;s9Q.SEMRESATTRS_PROCESS_RUNTIME_NAME=xJQ;s9Q.SEMRESATTRS_PROCESS_RUNTIME_VERSION=fJQ;s9Q.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=bJQ;s9Q.SEMRESATTRS_SERVICE_NAME=mJQ;s9Q.SEMRESATTRS_SERVICE_NAMESPACE=uJQ;s9Q.SEMRESATTRS_SERVICE_INSTANCE_ID=dJQ;s9Q.SEMRESATTRS_SERVICE_VERSION=cJQ;s9Q.SEMRESATTRS_TELEMETRY_SDK_NAME=lJQ;s9Q.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=pJQ;s9Q.SEMRESATTRS_TELEMETRY_SDK_VERSION=iJQ;s9Q.SEMRESATTRS_TELEMETRY_AUTO_VERSION=nJQ;s9Q.SEMRESATTRS_WEBENGINE_NAME=sJQ;s9Q.SEMRESATTRS_WEBENGINE_VERSION=rJQ;s9Q.SEMRESATTRS_WEBENGINE_DESCRIPTION=aJQ;s9Q.SemanticResourceAttributes=(0,C$.createConstMap)([RYQ,wYQ,jYQ,OYQ,PYQ,TYQ,SYQ,kYQ,_YQ,vYQ,yYQ,hYQ,gYQ,xYQ,fYQ,bYQ,mYQ,uYQ,dYQ,cYQ,lYQ,pYQ,iYQ,nYQ,sYQ,rYQ,aYQ,oYQ,tYQ,eYQ,AJQ,QJQ,BJQ,YJQ,JJQ,CJQ,XJQ,GJQ,FJQ,WJQ,ZJQ,$JQ,UJQ,EJQ,KJQ,VJQ,IJQ,HJQ,DJQ,NJQ,LJQ,qJQ,MJQ,zJQ,RJQ,wJQ,jJQ,OJQ,PJQ,TJQ,SJQ,kJQ,_JQ,vJQ,yJQ,hJQ,gJQ,xJQ,fJQ,bJQ,mJQ,uJQ,dJQ,cJQ,lJQ,pJQ,iJQ,nJQ,sJQ,rJQ,aJQ]);var oJQ="alibaba_cloud",tJQ="aws",eJQ="azure",A9Q="gcp";s9Q.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=oJQ;s9Q.CLOUDPROVIDERVALUES_AWS=tJQ;s9Q.CLOUDPROVIDERVALUES_AZURE=eJQ;s9Q.CLOUDPROVIDERVALUES_GCP=A9Q;s9Q.CloudProviderValues=(0,C$.createConstMap)([oJQ,tJQ,eJQ,A9Q]);var Q9Q="alibaba_cloud_ecs",B9Q="alibaba_cloud_fc",Y9Q="aws_ec2",J9Q="aws_ecs",C9Q="aws_eks",X9Q="aws_lambda",G9Q="aws_elastic_beanstalk",F9Q="azure_vm",W9Q="azure_container_instances",Z9Q="azure_aks",$9Q="azure_functions",U9Q="azure_app_service",E9Q="gcp_compute_engine",K9Q="gcp_cloud_run",V9Q="gcp_kubernetes_engine",I9Q="gcp_cloud_functions",H9Q="gcp_app_engine";s9Q.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=Q9Q;s9Q.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=B9Q;s9Q.CLOUDPLATFORMVALUES_AWS_EC2=Y9Q;s9Q.CLOUDPLATFORMVALUES_AWS_ECS=J9Q;s9Q.CLOUDPLATFORMVALUES_AWS_EKS=C9Q;s9Q.CLOUDPLATFORMVALUES_AWS_LAMBDA=X9Q;s9Q.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=G9Q;s9Q.CLOUDPLATFORMVALUES_AZURE_VM=F9Q;s9Q.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=W9Q;s9Q.CLOUDPLATFORMVALUES_AZURE_AKS=Z9Q;s9Q.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=$9Q;s9Q.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=U9Q;s9Q.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=E9Q;s9Q.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=K9Q;s9Q.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=V9Q;s9Q.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=I9Q;s9Q.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=H9Q;s9Q.CloudPlatformValues=(0,C$.createConstMap)([Q9Q,B9Q,Y9Q,J9Q,C9Q,X9Q,G9Q,F9Q,W9Q,Z9Q,$9Q,U9Q,E9Q,K9Q,V9Q,I9Q,H9Q]);var D9Q="ec2",N9Q="fargate";s9Q.AWSECSLAUNCHTYPEVALUES_EC2=D9Q;s9Q.AWSECSLAUNCHTYPEVALUES_FARGATE=N9Q;s9Q.AwsEcsLaunchtypeValues=(0,C$.createConstMap)([D9Q,N9Q]);var L9Q="amd64",q9Q="arm32",M9Q="arm64",z9Q="ia64",R9Q="ppc32",w9Q="ppc64",j9Q="x86";s9Q.HOSTARCHVALUES_AMD64=L9Q;s9Q.HOSTARCHVALUES_ARM32=q9Q;s9Q.HOSTARCHVALUES_ARM64=M9Q;s9Q.HOSTARCHVALUES_IA64=z9Q;s9Q.HOSTARCHVALUES_PPC32=R9Q;s9Q.HOSTARCHVALUES_PPC64=w9Q;s9Q.HOSTARCHVALUES_X86=j9Q;s9Q.HostArchValues=(0,C$.createConstMap)([L9Q,q9Q,M9Q,z9Q,R9Q,w9Q,j9Q]);var O9Q="windows",P9Q="linux",T9Q="darwin",S9Q="freebsd",k9Q="netbsd",_9Q="openbsd",v9Q="dragonflybsd",y9Q="hpux",h9Q="aix",g9Q="solaris",x9Q="z_os";s9Q.OSTYPEVALUES_WINDOWS=O9Q;s9Q.OSTYPEVALUES_LINUX=P9Q;s9Q.OSTYPEVALUES_DARWIN=T9Q;s9Q.OSTYPEVALUES_FREEBSD=S9Q;s9Q.OSTYPEVALUES_NETBSD=k9Q;s9Q.OSTYPEVALUES_OPENBSD=_9Q;s9Q.OSTYPEVALUES_DRAGONFLYBSD=v9Q;s9Q.OSTYPEVALUES_HPUX=y9Q;s9Q.OSTYPEVALUES_AIX=h9Q;s9Q.OSTYPEVALUES_SOLARIS=g9Q;s9Q.OSTYPEVALUES_Z_OS=x9Q;s9Q.OsTypeValues=(0,C$.createConstMap)([O9Q,P9Q,T9Q,S9Q,k9Q,_9Q,v9Q,y9Q,h9Q,g9Q,x9Q]);var f9Q="cpp",b9Q="dotnet",m9Q="erlang",u9Q="go",d9Q="java",c9Q="nodejs",l9Q="php",p9Q="python",i9Q="ruby",n9Q="webjs";s9Q.TELEMETRYSDKLANGUAGEVALUES_CPP=f9Q;s9Q.TELEMETRYSDKLANGUAGEVALUES_DOTNET=b9Q;s9Q.TELEMETRYSDKLANGUAGEVALUES_ERLANG=m9Q;s9Q.TELEMETRYSDKLANGUAGEVALUES_GO=u9Q;s9Q.TELEMETRYSDKLANGUAGEVALUES_JAVA=d9Q;s9Q.TELEMETRYSDKLANGUAGEVALUES_NODEJS=c9Q;s9Q.TELEMETRYSDKLANGUAGEVALUES_PHP=l9Q;s9Q.TELEMETRYSDKLANGUAGEVALUES_PYTHON=p9Q;s9Q.TELEMETRYSDKLANGUAGEVALUES_RUBY=i9Q;s9Q.TELEMETRYSDKLANGUAGEVALUES_WEBJS=n9Q;s9Q.TelemetrySdkLanguageValues=(0,C$.createConstMap)([f9Q,b9Q,m9Q,u9Q,d9Q,c9Q,l9Q,p9Q,i9Q,n9Q])});var e9Q=R((X$)=>{var wC0=X$&&X$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),jC0=X$&&X$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))wC0(Q,A,B)};Object.defineProperty(X$,"__esModule",{value:!0});jC0(t9Q(),X$)});var J8Q=R((A8Q)=>{Object.defineProperty(A8Q,"__esModule",{value:!0});A8Q.HTTP_REQUEST_METHOD_VALUE_POST=A8Q.HTTP_REQUEST_METHOD_VALUE_PATCH=A8Q.HTTP_REQUEST_METHOD_VALUE_OPTIONS=A8Q.HTTP_REQUEST_METHOD_VALUE_HEAD=A8Q.HTTP_REQUEST_METHOD_VALUE_GET=A8Q.HTTP_REQUEST_METHOD_VALUE_DELETE=A8Q.HTTP_REQUEST_METHOD_VALUE_CONNECT=A8Q.HTTP_REQUEST_METHOD_VALUE_OTHER=A8Q.ATTR_HTTP_REQUEST_METHOD=A8Q.ATTR_HTTP_REQUEST_HEADER=A8Q.ATTR_EXCEPTION_TYPE=A8Q.ATTR_EXCEPTION_STACKTRACE=A8Q.ATTR_EXCEPTION_MESSAGE=A8Q.ATTR_EXCEPTION_ESCAPED=A8Q.ERROR_TYPE_VALUE_OTHER=A8Q.ATTR_ERROR_TYPE=A8Q.ATTR_CLIENT_PORT=A8Q.ATTR_CLIENT_ADDRESS=A8Q.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS=A8Q.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE=A8Q.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS=A8Q.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK=A8Q.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED=A8Q.ATTR_ASPNETCORE_RATE_LIMITING_POLICY=A8Q.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED=A8Q.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED=A8Q.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED=A8Q.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED=A8Q.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT=A8Q.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE=A8Q.ATTR_TELEMETRY_SDK_VERSION=A8Q.ATTR_TELEMETRY_SDK_NAME=A8Q.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS=A8Q.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT=A8Q.TELEMETRY_SDK_LANGUAGE_VALUE_RUST=A8Q.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY=A8Q.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON=A8Q.TELEMETRY_SDK_LANGUAGE_VALUE_PHP=A8Q.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS=A8Q.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA=A8Q.TELEMETRY_SDK_LANGUAGE_VALUE_GO=A8Q.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG=A8Q.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET=A8Q.TELEMETRY_SDK_LANGUAGE_VALUE_CPP=A8Q.ATTR_TELEMETRY_SDK_LANGUAGE=A8Q.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED=A8Q.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER=A8Q.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER=A8Q.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED=A8Q.ATTR_ASPNETCORE_RATE_LIMITING_RESULT=void 0;A8Q.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT=A8Q.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE=A8Q.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN=A8Q.ATTR_SIGNALR_CONNECTION_STATUS=A8Q.ATTR_SERVICE_VERSION=A8Q.ATTR_SERVICE_NAME=A8Q.ATTR_SERVER_PORT=A8Q.ATTR_SERVER_ADDRESS=A8Q.ATTR_OTEL_STATUS_DESCRIPTION=A8Q.OTEL_STATUS_CODE_VALUE_OK=A8Q.OTEL_STATUS_CODE_VALUE_ERROR=A8Q.ATTR_OTEL_STATUS_CODE=A8Q.ATTR_OTEL_SCOPE_VERSION=A8Q.ATTR_OTEL_SCOPE_NAME=A8Q.NETWORK_TYPE_VALUE_IPV6=A8Q.NETWORK_TYPE_VALUE_IPV4=A8Q.ATTR_NETWORK_TYPE=A8Q.NETWORK_TRANSPORT_VALUE_UNIX=A8Q.NETWORK_TRANSPORT_VALUE_UDP=A8Q.NETWORK_TRANSPORT_VALUE_TCP=A8Q.NETWORK_TRANSPORT_VALUE_QUIC=A8Q.NETWORK_TRANSPORT_VALUE_PIPE=A8Q.ATTR_NETWORK_TRANSPORT=A8Q.ATTR_NETWORK_PROTOCOL_VERSION=A8Q.ATTR_NETWORK_PROTOCOL_NAME=A8Q.ATTR_NETWORK_PEER_PORT=A8Q.ATTR_NETWORK_PEER_ADDRESS=A8Q.ATTR_NETWORK_LOCAL_PORT=A8Q.ATTR_NETWORK_LOCAL_ADDRESS=A8Q.JVM_THREAD_STATE_VALUE_WAITING=A8Q.JVM_THREAD_STATE_VALUE_TIMED_WAITING=A8Q.JVM_THREAD_STATE_VALUE_TERMINATED=A8Q.JVM_THREAD_STATE_VALUE_RUNNABLE=A8Q.JVM_THREAD_STATE_VALUE_NEW=A8Q.JVM_THREAD_STATE_VALUE_BLOCKED=A8Q.ATTR_JVM_THREAD_STATE=A8Q.ATTR_JVM_THREAD_DAEMON=A8Q.JVM_MEMORY_TYPE_VALUE_NON_HEAP=A8Q.JVM_MEMORY_TYPE_VALUE_HEAP=A8Q.ATTR_JVM_MEMORY_TYPE=A8Q.ATTR_JVM_MEMORY_POOL_NAME=A8Q.ATTR_JVM_GC_NAME=A8Q.ATTR_JVM_GC_ACTION=A8Q.ATTR_HTTP_ROUTE=A8Q.ATTR_HTTP_RESPONSE_STATUS_CODE=A8Q.ATTR_HTTP_RESPONSE_HEADER=A8Q.ATTR_HTTP_REQUEST_RESEND_COUNT=A8Q.ATTR_HTTP_REQUEST_METHOD_ORIGINAL=A8Q.HTTP_REQUEST_METHOD_VALUE_TRACE=A8Q.HTTP_REQUEST_METHOD_VALUE_PUT=void 0;A8Q.ATTR_USER_AGENT_ORIGINAL=A8Q.ATTR_URL_SCHEME=A8Q.ATTR_URL_QUERY=A8Q.ATTR_URL_PATH=A8Q.ATTR_URL_FULL=A8Q.ATTR_URL_FRAGMENT=A8Q.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS=A8Q.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS=A8Q.SIGNALR_TRANSPORT_VALUE_LONG_POLLING=A8Q.ATTR_SIGNALR_TRANSPORT=void 0;A8Q.ATTR_ASPNETCORE_RATE_LIMITING_RESULT="aspnetcore.rate_limiting.result";A8Q.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED="acquired";A8Q.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER="endpoint_limiter";A8Q.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER="global_limiter";A8Q.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED="request_canceled";A8Q.ATTR_TELEMETRY_SDK_LANGUAGE="telemetry.sdk.language";A8Q.TELEMETRY_SDK_LANGUAGE_VALUE_CPP="cpp";A8Q.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET="dotnet";A8Q.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG="erlang";A8Q.TELEMETRY_SDK_LANGUAGE_VALUE_GO="go";A8Q.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA="java";A8Q.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS="nodejs";A8Q.TELEMETRY_SDK_LANGUAGE_VALUE_PHP="php";A8Q.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON="python";A8Q.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY="ruby";A8Q.TELEMETRY_SDK_LANGUAGE_VALUE_RUST="rust";A8Q.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT="swift";A8Q.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS="webjs";A8Q.ATTR_TELEMETRY_SDK_NAME="telemetry.sdk.name";A8Q.ATTR_TELEMETRY_SDK_VERSION="telemetry.sdk.version";A8Q.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE="aspnetcore.diagnostics.handler.type";A8Q.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT="aspnetcore.diagnostics.exception.result";A8Q.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED="aborted";A8Q.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED="handled";A8Q.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED="skipped";A8Q.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED="unhandled";A8Q.ATTR_ASPNETCORE_RATE_LIMITING_POLICY="aspnetcore.rate_limiting.policy";A8Q.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED="aspnetcore.request.is_unhandled";A8Q.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK="aspnetcore.routing.is_fallback";A8Q.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS="aspnetcore.routing.match_status";A8Q.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE="failure";A8Q.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS="success";A8Q.ATTR_CLIENT_ADDRESS="client.address";A8Q.ATTR_CLIENT_PORT="client.port";A8Q.ATTR_ERROR_TYPE="error.type";A8Q.ERROR_TYPE_VALUE_OTHER="_OTHER";A8Q.ATTR_EXCEPTION_ESCAPED="exception.escaped";A8Q.ATTR_EXCEPTION_MESSAGE="exception.message";A8Q.ATTR_EXCEPTION_STACKTRACE="exception.stacktrace";A8Q.ATTR_EXCEPTION_TYPE="exception.type";var OC0=(A)=>`http.request.header.${A}`;A8Q.ATTR_HTTP_REQUEST_HEADER=OC0;A8Q.ATTR_HTTP_REQUEST_METHOD="http.request.method";A8Q.HTTP_REQUEST_METHOD_VALUE_OTHER="_OTHER";A8Q.HTTP_REQUEST_METHOD_VALUE_CONNECT="CONNECT";A8Q.HTTP_REQUEST_METHOD_VALUE_DELETE="DELETE";A8Q.HTTP_REQUEST_METHOD_VALUE_GET="GET";A8Q.HTTP_REQUEST_METHOD_VALUE_HEAD="HEAD";A8Q.HTTP_REQUEST_METHOD_VALUE_OPTIONS="OPTIONS";A8Q.HTTP_REQUEST_METHOD_VALUE_PATCH="PATCH";A8Q.HTTP_REQUEST_METHOD_VALUE_POST="POST";A8Q.HTTP_REQUEST_METHOD_VALUE_PUT="PUT";A8Q.HTTP_REQUEST_METHOD_VALUE_TRACE="TRACE";A8Q.ATTR_HTTP_REQUEST_METHOD_ORIGINAL="http.request.method_original";A8Q.ATTR_HTTP_REQUEST_RESEND_COUNT="http.request.resend_count";var PC0=(A)=>`http.response.header.${A}`;A8Q.ATTR_HTTP_RESPONSE_HEADER=PC0;A8Q.ATTR_HTTP_RESPONSE_STATUS_CODE="http.response.status_code";A8Q.ATTR_HTTP_ROUTE="http.route";A8Q.ATTR_JVM_GC_ACTION="jvm.gc.action";A8Q.ATTR_JVM_GC_NAME="jvm.gc.name";A8Q.ATTR_JVM_MEMORY_POOL_NAME="jvm.memory.pool.name";A8Q.ATTR_JVM_MEMORY_TYPE="jvm.memory.type";A8Q.JVM_MEMORY_TYPE_VALUE_HEAP="heap";A8Q.JVM_MEMORY_TYPE_VALUE_NON_HEAP="non_heap";A8Q.ATTR_JVM_THREAD_DAEMON="jvm.thread.daemon";A8Q.ATTR_JVM_THREAD_STATE="jvm.thread.state";A8Q.JVM_THREAD_STATE_VALUE_BLOCKED="blocked";A8Q.JVM_THREAD_STATE_VALUE_NEW="new";A8Q.JVM_THREAD_STATE_VALUE_RUNNABLE="runnable";A8Q.JVM_THREAD_STATE_VALUE_TERMINATED="terminated";A8Q.JVM_THREAD_STATE_VALUE_TIMED_WAITING="timed_waiting";A8Q.JVM_THREAD_STATE_VALUE_WAITING="waiting";A8Q.ATTR_NETWORK_LOCAL_ADDRESS="network.local.address";A8Q.ATTR_NETWORK_LOCAL_PORT="network.local.port";A8Q.ATTR_NETWORK_PEER_ADDRESS="network.peer.address";A8Q.ATTR_NETWORK_PEER_PORT="network.peer.port";A8Q.ATTR_NETWORK_PROTOCOL_NAME="network.protocol.name";A8Q.ATTR_NETWORK_PROTOCOL_VERSION="network.protocol.version";A8Q.ATTR_NETWORK_TRANSPORT="network.transport";A8Q.NETWORK_TRANSPORT_VALUE_PIPE="pipe";A8Q.NETWORK_TRANSPORT_VALUE_QUIC="quic";A8Q.NETWORK_TRANSPORT_VALUE_TCP="tcp";A8Q.NETWORK_TRANSPORT_VALUE_UDP="udp";A8Q.NETWORK_TRANSPORT_VALUE_UNIX="unix";A8Q.ATTR_NETWORK_TYPE="network.type";A8Q.NETWORK_TYPE_VALUE_IPV4="ipv4";A8Q.NETWORK_TYPE_VALUE_IPV6="ipv6";A8Q.ATTR_OTEL_SCOPE_NAME="otel.scope.name";A8Q.ATTR_OTEL_SCOPE_VERSION="otel.scope.version";A8Q.ATTR_OTEL_STATUS_CODE="otel.status_code";A8Q.OTEL_STATUS_CODE_VALUE_ERROR="ERROR";A8Q.OTEL_STATUS_CODE_VALUE_OK="OK";A8Q.ATTR_OTEL_STATUS_DESCRIPTION="otel.status_description";A8Q.ATTR_SERVER_ADDRESS="server.address";A8Q.ATTR_SERVER_PORT="server.port";A8Q.ATTR_SERVICE_NAME="service.name";A8Q.ATTR_SERVICE_VERSION="service.version";A8Q.ATTR_SIGNALR_CONNECTION_STATUS="signalr.connection.status";A8Q.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN="app_shutdown";A8Q.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE="normal_closure";A8Q.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT="timeout";A8Q.ATTR_SIGNALR_TRANSPORT="signalr.transport";A8Q.SIGNALR_TRANSPORT_VALUE_LONG_POLLING="long_polling";A8Q.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS="server_sent_events";A8Q.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS="web_sockets";A8Q.ATTR_URL_FRAGMENT="url.fragment";A8Q.ATTR_URL_FULL="url.full";A8Q.ATTR_URL_PATH="url.path";A8Q.ATTR_URL_QUERY="url.query";A8Q.ATTR_URL_SCHEME="url.scheme";A8Q.ATTR_USER_AGENT_ORIGINAL="user_agent.original"});var G8Q=R((C8Q)=>{Object.defineProperty(C8Q,"__esModule",{value:!0});C8Q.METRIC_SIGNALR_SERVER_CONNECTION_DURATION=C8Q.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS=C8Q.METRIC_KESTREL_UPGRADED_CONNECTIONS=C8Q.METRIC_KESTREL_TLS_HANDSHAKE_DURATION=C8Q.METRIC_KESTREL_REJECTED_CONNECTIONS=C8Q.METRIC_KESTREL_QUEUED_REQUESTS=C8Q.METRIC_KESTREL_QUEUED_CONNECTIONS=C8Q.METRIC_KESTREL_CONNECTION_DURATION=C8Q.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES=C8Q.METRIC_KESTREL_ACTIVE_CONNECTIONS=C8Q.METRIC_JVM_THREAD_COUNT=C8Q.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC=C8Q.METRIC_JVM_MEMORY_USED=C8Q.METRIC_JVM_MEMORY_LIMIT=C8Q.METRIC_JVM_MEMORY_COMMITTED=C8Q.METRIC_JVM_GC_DURATION=C8Q.METRIC_JVM_CPU_TIME=C8Q.METRIC_JVM_CPU_RECENT_UTILIZATION=C8Q.METRIC_JVM_CPU_COUNT=C8Q.METRIC_JVM_CLASS_UNLOADED=C8Q.METRIC_JVM_CLASS_LOADED=C8Q.METRIC_JVM_CLASS_COUNT=C8Q.METRIC_HTTP_SERVER_REQUEST_DURATION=C8Q.METRIC_HTTP_CLIENT_REQUEST_DURATION=C8Q.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS=C8Q.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS=C8Q.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION=C8Q.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE=C8Q.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS=C8Q.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES=C8Q.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS=void 0;C8Q.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS="aspnetcore.diagnostics.exceptions";C8Q.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES="aspnetcore.rate_limiting.active_request_leases";C8Q.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS="aspnetcore.rate_limiting.queued_requests";C8Q.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE="aspnetcore.rate_limiting.request.time_in_queue";C8Q.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION="aspnetcore.rate_limiting.request_lease.duration";C8Q.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS="aspnetcore.rate_limiting.requests";C8Q.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS="aspnetcore.routing.match_attempts";C8Q.METRIC_HTTP_CLIENT_REQUEST_DURATION="http.client.request.duration";C8Q.METRIC_HTTP_SERVER_REQUEST_DURATION="http.server.request.duration";C8Q.METRIC_JVM_CLASS_COUNT="jvm.class.count";C8Q.METRIC_JVM_CLASS_LOADED="jvm.class.loaded";C8Q.METRIC_JVM_CLASS_UNLOADED="jvm.class.unloaded";C8Q.METRIC_JVM_CPU_COUNT="jvm.cpu.count";C8Q.METRIC_JVM_CPU_RECENT_UTILIZATION="jvm.cpu.recent_utilization";C8Q.METRIC_JVM_CPU_TIME="jvm.cpu.time";C8Q.METRIC_JVM_GC_DURATION="jvm.gc.duration";C8Q.METRIC_JVM_MEMORY_COMMITTED="jvm.memory.committed";C8Q.METRIC_JVM_MEMORY_LIMIT="jvm.memory.limit";C8Q.METRIC_JVM_MEMORY_USED="jvm.memory.used";C8Q.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC="jvm.memory.used_after_last_gc";C8Q.METRIC_JVM_THREAD_COUNT="jvm.thread.count";C8Q.METRIC_KESTREL_ACTIVE_CONNECTIONS="kestrel.active_connections";C8Q.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES="kestrel.active_tls_handshakes";C8Q.METRIC_KESTREL_CONNECTION_DURATION="kestrel.connection.duration";C8Q.METRIC_KESTREL_QUEUED_CONNECTIONS="kestrel.queued_connections";C8Q.METRIC_KESTREL_QUEUED_REQUESTS="kestrel.queued_requests";C8Q.METRIC_KESTREL_REJECTED_CONNECTIONS="kestrel.rejected_connections";C8Q.METRIC_KESTREL_TLS_HANDSHAKE_DURATION="kestrel.tls_handshake.duration";C8Q.METRIC_KESTREL_UPGRADED_CONNECTIONS="kestrel.upgraded_connections";C8Q.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS="signalr.server.active_connections";C8Q.METRIC_SIGNALR_SERVER_CONNECTION_DURATION="signalr.server.connection.duration"});var F8Q=R((X6)=>{var JX0=X6&&X6.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),xO=X6&&X6.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))JX0(Q,A,B)};Object.defineProperty(X6,"__esModule",{value:!0});xO(zYQ(),X6);xO(e9Q(),X6);xO(J8Q(),X6);xO(G8Q(),X6)});var $8Q=R((W8Q)=>{Object.defineProperty(W8Q,"__esModule",{value:!0});W8Q.ExceptionEventName=void 0;W8Q.ExceptionEventName="exception"});var gp=R((E8Q)=>{Object.defineProperty(E8Q,"__esModule",{value:!0});E8Q.Span=void 0;var f5=yA(),SJ=MB(),G$=F8Q(),CX0=$8Q();class U8Q{constructor(A,Q,B,Y,J,C,X=[],G,F,W){this.attributes={},this.links=[],this.events=[],this._droppedAttributesCount=0,this._droppedEventsCount=0,this._droppedLinksCount=0,this.status={code:f5.SpanStatusCode.UNSET},this.endTime=[0,0],this._ended=!1,this._duration=[-1,-1],this.name=B,this._spanContext=Y,this.parentSpanId=C,this.kind=J,this.links=X;let Z=Date.now();if(this._performanceStartTime=SJ.otperformance.now(),this._performanceOffset=Z-(this._performanceStartTime+(0,SJ.getTimeOrigin)()),this._startTimeProvided=G!=null,this.startTime=this._getTime(G!==null&&G!==void 0?G:Z),this.resource=A.resource,this.instrumentationLibrary=A.instrumentationLibrary,this._spanLimits=A.getSpanLimits(),this._attributeValueLengthLimit=this._spanLimits.attributeValueLengthLimit||0,W!=null)this.setAttributes(W);this._spanProcessor=A.getActiveSpanProcessor(),this._spanProcessor.onStart(this,Q)}spanContext(){return this._spanContext}setAttribute(A,Q){if(Q==null||this._isSpanEnded())return this;if(A.length===0)return f5.diag.warn(`Invalid attribute key: ${A}`),this;if(!(0,SJ.isAttributeValue)(Q))return f5.diag.warn(`Invalid attribute value set for key: ${A}`),this;if(Object.keys(this.attributes).length>=this._spanLimits.attributeCountLimit&&!Object.prototype.hasOwnProperty.call(this.attributes,A))return this._droppedAttributesCount++,this;return this.attributes[A]=this._truncateToSize(Q),this}setAttributes(A){for(let[Q,B]of Object.entries(A))this.setAttribute(Q,B);return this}addEvent(A,Q,B){if(this._isSpanEnded())return this;if(this._spanLimits.eventCountLimit===0)return f5.diag.warn("No events allowed."),this._droppedEventsCount++,this;if(this.events.length>=this._spanLimits.eventCountLimit){if(this._droppedEventsCount===0)f5.diag.debug("Dropping extra events.");this.events.shift(),this._droppedEventsCount++}if((0,SJ.isTimeInput)(Q)){if(!(0,SJ.isTimeInput)(B))B=Q;Q=void 0}let Y=(0,SJ.sanitizeAttributes)(Q);return this.events.push({name:A,attributes:Y,time:this._getTime(B),droppedAttributesCount:0}),this}addLink(A){return this.links.push(A),this}addLinks(A){return this.links.push(...A),this}setStatus(A){if(this._isSpanEnded())return this;if(this.status=Object.assign({},A),this.status.message!=null&&typeof A.message!=="string")f5.diag.warn(`Dropping invalid status.message of type '${typeof A.message}', expected 'string'`),delete this.status.message;return this}updateName(A){if(this._isSpanEnded())return this;return this.name=A,this}end(A){if(this._isSpanEnded()){f5.diag.error(`${this.name} ${this._spanContext.traceId}-${this._spanContext.spanId} - You can only call end() on a span once.`);return}if(this._ended=!0,this.endTime=this._getTime(A),this._duration=(0,SJ.hrTimeDuration)(this.startTime,this.endTime),this._duration[0]<0)f5.diag.warn("Inconsistent start and end time, startTime > endTime. Setting span duration to 0ms.",this.startTime,this.endTime),this.endTime=this.startTime.slice(),this._duration=[0,0];if(this._droppedEventsCount>0)f5.diag.warn(`Dropped ${this._droppedEventsCount} events because eventCountLimit reached`);this._spanProcessor.onEnd(this)}_getTime(A){if(typeof A==="number"&&A<=SJ.otperformance.now())return(0,SJ.hrTime)(A+this._performanceOffset);if(typeof A==="number")return(0,SJ.millisToHrTime)(A);if(A instanceof Date)return(0,SJ.millisToHrTime)(A.getTime());if((0,SJ.isTimeInputHrTime)(A))return A;if(this._startTimeProvided)return(0,SJ.millisToHrTime)(Date.now());let Q=SJ.otperformance.now()-this._performanceStartTime;return(0,SJ.addHrTimes)(this.startTime,(0,SJ.millisToHrTime)(Q))}isRecording(){return this._ended===!1}recordException(A,Q){let B={};if(typeof A==="string")B[G$.SEMATTRS_EXCEPTION_MESSAGE]=A;else if(A){if(A.code)B[G$.SEMATTRS_EXCEPTION_TYPE]=A.code.toString();else if(A.name)B[G$.SEMATTRS_EXCEPTION_TYPE]=A.name;if(A.message)B[G$.SEMATTRS_EXCEPTION_MESSAGE]=A.message;if(A.stack)B[G$.SEMATTRS_EXCEPTION_STACKTRACE]=A.stack}if(B[G$.SEMATTRS_EXCEPTION_TYPE]||B[G$.SEMATTRS_EXCEPTION_MESSAGE])this.addEvent(CX0.ExceptionEventName,B,Q);else f5.diag.warn(`Failed to record an exception ${A}`)}get duration(){return this._duration}get ended(){return this._ended}get droppedAttributesCount(){return this._droppedAttributesCount}get droppedEventsCount(){return this._droppedEventsCount}get droppedLinksCount(){return this._droppedLinksCount}_isSpanEnded(){if(this._ended)f5.diag.warn(`Can not execute the operation on ended Span {traceId: ${this._spanContext.traceId}, spanId: ${this._spanContext.spanId}}`);return this._ended}_truncateToLimitUtil(A,Q){if(A.length<=Q)return A;return A.substring(0,Q)}_truncateToSize(A){let Q=this._attributeValueLengthLimit;if(Q<=0)return f5.diag.warn(`Attribute value limit must be positive, got ${Q}`),A;if(typeof A==="string")return this._truncateToLimitUtil(A,Q);if(Array.isArray(A))return A.map((B)=>typeof B==="string"?this._truncateToLimitUtil(B,Q):B);return A}}E8Q.Span=U8Q});var UL=R((V8Q)=>{Object.defineProperty(V8Q,"__esModule",{value:!0});V8Q.SamplingDecision=void 0;var XX0;(function(A){A[A.NOT_RECORD=0]="NOT_RECORD",A[A.RECORD=1]="RECORD",A[A.RECORD_AND_SAMPLED=2]="RECORD_AND_SAMPLED"})(XX0=V8Q.SamplingDecision||(V8Q.SamplingDecision={}))});var fO=R((H8Q)=>{Object.defineProperty(H8Q,"__esModule",{value:!0});H8Q.AlwaysOffSampler=void 0;var GX0=UL();class I8Q{shouldSample(){return{decision:GX0.SamplingDecision.NOT_RECORD}}toString(){return"AlwaysOffSampler"}}H8Q.AlwaysOffSampler=I8Q});var bO=R((L8Q)=>{Object.defineProperty(L8Q,"__esModule",{value:!0});L8Q.AlwaysOnSampler=void 0;var FX0=UL();class N8Q{shouldSample(){return{decision:FX0.SamplingDecision.RECORD_AND_SAMPLED}}toString(){return"AlwaysOnSampler"}}L8Q.AlwaysOnSampler=N8Q});var bp=R((R8Q)=>{Object.defineProperty(R8Q,"__esModule",{value:!0});R8Q.ParentBasedSampler=void 0;var mO=yA(),WX0=MB(),M8Q=fO(),fp=bO();class z8Q{constructor(A){var Q,B,Y,J;if(this._root=A.root,!this._root)(0,WX0.globalErrorHandler)(Error("ParentBasedSampler must have a root sampler configured")),this._root=new fp.AlwaysOnSampler;this._remoteParentSampled=(Q=A.remoteParentSampled)!==null&&Q!==void 0?Q:new fp.AlwaysOnSampler,this._remoteParentNotSampled=(B=A.remoteParentNotSampled)!==null&&B!==void 0?B:new M8Q.AlwaysOffSampler,this._localParentSampled=(Y=A.localParentSampled)!==null&&Y!==void 0?Y:new fp.AlwaysOnSampler,this._localParentNotSampled=(J=A.localParentNotSampled)!==null&&J!==void 0?J:new M8Q.AlwaysOffSampler}shouldSample(A,Q,B,Y,J,C){let X=mO.trace.getSpanContext(A);if(!X||!(0,mO.isSpanContextValid)(X))return this._root.shouldSample(A,Q,B,Y,J,C);if(X.isRemote){if(X.traceFlags&mO.TraceFlags.SAMPLED)return this._remoteParentSampled.shouldSample(A,Q,B,Y,J,C);return this._remoteParentNotSampled.shouldSample(A,Q,B,Y,J,C)}if(X.traceFlags&mO.TraceFlags.SAMPLED)return this._localParentSampled.shouldSample(A,Q,B,Y,J,C);return this._localParentNotSampled.shouldSample(A,Q,B,Y,J,C)}toString(){return`ParentBased{root=${this._root.toString()}, remoteParentSampled=${this._remoteParentSampled.toString()}, remoteParentNotSampled=${this._remoteParentNotSampled.toString()}, localParentSampled=${this._localParentSampled.toString()}, localParentNotSampled=${this._localParentNotSampled.toString()}}`}}R8Q.ParentBasedSampler=z8Q});var mp=R((P8Q)=>{Object.defineProperty(P8Q,"__esModule",{value:!0});P8Q.TraceIdRatioBasedSampler=void 0;var ZX0=yA(),j8Q=UL();class O8Q{constructor(A=0){this._ratio=A,this._ratio=this._normalize(A),this._upperBound=Math.floor(this._ratio*4294967295)}shouldSample(A,Q){return{decision:(0,ZX0.isValidTraceId)(Q)&&this._accumulate(Q)=1?1:A<=0?0:A}_accumulate(A){let Q=0;for(let B=0;B>>0}return Q}}P8Q.TraceIdRatioBasedSampler=O8Q});var cp=R((y8Q)=>{Object.defineProperty(y8Q,"__esModule",{value:!0});y8Q.buildSamplerFromEnv=y8Q.loadDefaultConfig=void 0;var uO=yA(),BG=MB(),S8Q=fO(),up=bO(),dp=bp(),k8Q=mp(),$X0=BG.TracesSamplerValues.AlwaysOn,GK=1;function UX0(){let A=(0,BG.getEnv)();return{sampler:v8Q(A),forceFlushTimeoutMillis:30000,generalLimits:{attributeValueLengthLimit:A.OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT,attributeCountLimit:A.OTEL_ATTRIBUTE_COUNT_LIMIT},spanLimits:{attributeValueLengthLimit:A.OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT,attributeCountLimit:A.OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT,linkCountLimit:A.OTEL_SPAN_LINK_COUNT_LIMIT,eventCountLimit:A.OTEL_SPAN_EVENT_COUNT_LIMIT,attributePerEventCountLimit:A.OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT,attributePerLinkCountLimit:A.OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT},mergeResourceWithDefaults:!0}}y8Q.loadDefaultConfig=UX0;function v8Q(A=(0,BG.getEnv)()){switch(A.OTEL_TRACES_SAMPLER){case BG.TracesSamplerValues.AlwaysOn:return new up.AlwaysOnSampler;case BG.TracesSamplerValues.AlwaysOff:return new S8Q.AlwaysOffSampler;case BG.TracesSamplerValues.ParentBasedAlwaysOn:return new dp.ParentBasedSampler({root:new up.AlwaysOnSampler});case BG.TracesSamplerValues.ParentBasedAlwaysOff:return new dp.ParentBasedSampler({root:new S8Q.AlwaysOffSampler});case BG.TracesSamplerValues.TraceIdRatio:return new k8Q.TraceIdRatioBasedSampler(_8Q(A));case BG.TracesSamplerValues.ParentBasedTraceIdRatio:return new dp.ParentBasedSampler({root:new k8Q.TraceIdRatioBasedSampler(_8Q(A))});default:return uO.diag.error(`OTEL_TRACES_SAMPLER value "${A.OTEL_TRACES_SAMPLER} invalid, defaulting to ${$X0}".`),new up.AlwaysOnSampler}}y8Q.buildSamplerFromEnv=v8Q;function _8Q(A){if(A.OTEL_TRACES_SAMPLER_ARG===void 0||A.OTEL_TRACES_SAMPLER_ARG==="")return uO.diag.error(`OTEL_TRACES_SAMPLER_ARG is blank, defaulting to ${GK}.`),GK;let Q=Number(A.OTEL_TRACES_SAMPLER_ARG);if(isNaN(Q))return uO.diag.error(`OTEL_TRACES_SAMPLER_ARG=${A.OTEL_TRACES_SAMPLER_ARG} was given, but it is invalid, defaulting to ${GK}.`),GK;if(Q<0||Q>1)return uO.diag.error(`OTEL_TRACES_SAMPLER_ARG=${A.OTEL_TRACES_SAMPLER_ARG} was given, but it is out of range ([0..1]), defaulting to ${GK}.`),GK;return Q}});var pp=R((x8Q)=>{Object.defineProperty(x8Q,"__esModule",{value:!0});x8Q.reconfigureLimits=x8Q.mergeConfig=void 0;var g8Q=cp(),lp=MB();function KX0(A){let Q={sampler:(0,g8Q.buildSamplerFromEnv)()},B=(0,g8Q.loadDefaultConfig)(),Y=Object.assign({},B,Q,A);return Y.generalLimits=Object.assign({},B.generalLimits,A.generalLimits||{}),Y.spanLimits=Object.assign({},B.spanLimits,A.spanLimits||{}),Y}x8Q.mergeConfig=KX0;function VX0(A){var Q,B,Y,J,C,X,G,F,W,Z,U,$;let E=Object.assign({},A.spanLimits),K=(0,lp.getEnvWithoutDefaults)();return E.attributeCountLimit=(X=(C=(J=(B=(Q=A.spanLimits)===null||Q===void 0?void 0:Q.attributeCountLimit)!==null&&B!==void 0?B:(Y=A.generalLimits)===null||Y===void 0?void 0:Y.attributeCountLimit)!==null&&J!==void 0?J:K.OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT)!==null&&C!==void 0?C:K.OTEL_ATTRIBUTE_COUNT_LIMIT)!==null&&X!==void 0?X:lp.DEFAULT_ATTRIBUTE_COUNT_LIMIT,E.attributeValueLengthLimit=($=(U=(Z=(F=(G=A.spanLimits)===null||G===void 0?void 0:G.attributeValueLengthLimit)!==null&&F!==void 0?F:(W=A.generalLimits)===null||W===void 0?void 0:W.attributeValueLengthLimit)!==null&&Z!==void 0?Z:K.OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT)!==null&&U!==void 0?U:K.OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT)!==null&&$!==void 0?$:lp.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,Object.assign({},A,{spanLimits:E})}x8Q.reconfigureLimits=VX0});var d8Q=R((m8Q)=>{Object.defineProperty(m8Q,"__esModule",{value:!0});m8Q.BatchSpanProcessorBase=void 0;var FK=yA(),F$=MB();class b8Q{constructor(A,Q){this._exporter=A,this._isExporting=!1,this._finishedSpans=[],this._droppedSpansCount=0;let B=(0,F$.getEnv)();if(this._maxExportBatchSize=typeof(Q===null||Q===void 0?void 0:Q.maxExportBatchSize)==="number"?Q.maxExportBatchSize:B.OTEL_BSP_MAX_EXPORT_BATCH_SIZE,this._maxQueueSize=typeof(Q===null||Q===void 0?void 0:Q.maxQueueSize)==="number"?Q.maxQueueSize:B.OTEL_BSP_MAX_QUEUE_SIZE,this._scheduledDelayMillis=typeof(Q===null||Q===void 0?void 0:Q.scheduledDelayMillis)==="number"?Q.scheduledDelayMillis:B.OTEL_BSP_SCHEDULE_DELAY,this._exportTimeoutMillis=typeof(Q===null||Q===void 0?void 0:Q.exportTimeoutMillis)==="number"?Q.exportTimeoutMillis:B.OTEL_BSP_EXPORT_TIMEOUT,this._shutdownOnce=new F$.BindOnceFuture(this._shutdown,this),this._maxExportBatchSize>this._maxQueueSize)FK.diag.warn("BatchSpanProcessor: maxExportBatchSize must be smaller or equal to maxQueueSize, setting maxExportBatchSize to match maxQueueSize"),this._maxExportBatchSize=this._maxQueueSize}forceFlush(){if(this._shutdownOnce.isCalled)return this._shutdownOnce.promise;return this._flushAll()}onStart(A,Q){}onEnd(A){if(this._shutdownOnce.isCalled)return;if((A.spanContext().traceFlags&FK.TraceFlags.SAMPLED)===0)return;this._addToBuffer(A)}shutdown(){return this._shutdownOnce.call()}_shutdown(){return Promise.resolve().then(()=>{return this.onShutdown()}).then(()=>{return this._flushAll()}).then(()=>{return this._exporter.shutdown()})}_addToBuffer(A){if(this._finishedSpans.length>=this._maxQueueSize){if(this._droppedSpansCount===0)FK.diag.debug("maxQueueSize reached, dropping spans");this._droppedSpansCount++;return}if(this._droppedSpansCount>0)FK.diag.warn(`Dropped ${this._droppedSpansCount} spans because maxQueueSize reached`),this._droppedSpansCount=0;this._finishedSpans.push(A),this._maybeStartTimer()}_flushAll(){return new Promise((A,Q)=>{let B=[],Y=Math.ceil(this._finishedSpans.length/this._maxExportBatchSize);for(let J=0,C=Y;J{A()}).catch(Q)})}_flushOneBatch(){if(this._clearTimer(),this._finishedSpans.length===0)return Promise.resolve();return new Promise((A,Q)=>{let B=setTimeout(()=>{Q(Error("Timeout"))},this._exportTimeoutMillis);FK.context.with((0,F$.suppressTracing)(FK.context.active()),()=>{let Y;if(this._finishedSpans.length<=this._maxExportBatchSize)Y=this._finishedSpans,this._finishedSpans=[];else Y=this._finishedSpans.splice(0,this._maxExportBatchSize);let J=()=>this._exporter.export(Y,(X)=>{var G;if(clearTimeout(B),X.code===F$.ExportResultCode.SUCCESS)A();else Q((G=X.error)!==null&&G!==void 0?G:Error("BatchSpanProcessor: span export failed"))}),C=null;for(let X=0,G=Y.length;X{(0,F$.globalErrorHandler)(X),Q(X)})})})}_maybeStartTimer(){if(this._isExporting)return;let A=()=>{this._isExporting=!0,this._flushOneBatch().finally(()=>{if(this._isExporting=!1,this._finishedSpans.length>0)this._clearTimer(),this._maybeStartTimer()}).catch((Q)=>{this._isExporting=!1,(0,F$.globalErrorHandler)(Q)})};if(this._finishedSpans.length>=this._maxExportBatchSize)return A();if(this._timer!==void 0)return;this._timer=setTimeout(()=>A(),this._scheduledDelayMillis),(0,F$.unrefTimer)(this._timer)}_clearTimer(){if(this._timer!==void 0)clearTimeout(this._timer),this._timer=void 0}}m8Q.BatchSpanProcessorBase=b8Q});var i8Q=R((l8Q)=>{Object.defineProperty(l8Q,"__esModule",{value:!0});l8Q.BatchSpanProcessor=void 0;var HX0=d8Q();class c8Q extends HX0.BatchSpanProcessorBase{onShutdown(){}}l8Q.BatchSpanProcessor=c8Q});var t8Q=R((a8Q)=>{Object.defineProperty(a8Q,"__esModule",{value:!0});a8Q.RandomIdGenerator=void 0;var DX0=8,s8Q=16;class r8Q{constructor(){this.generateTraceId=n8Q(s8Q),this.generateSpanId=n8Q(DX0)}}a8Q.RandomIdGenerator=r8Q;var dO=Buffer.allocUnsafe(s8Q);function n8Q(A){return function(){for(let B=0;B>>0,B*4);for(let B=0;B0)break;else if(B===A-1)dO[A-1]=1;return dO.toString("hex",0,A)}}});var e8Q=R((cO)=>{Object.defineProperty(cO,"__esModule",{value:!0});cO.RandomIdGenerator=cO.BatchSpanProcessor=void 0;var NX0=i8Q();Object.defineProperty(cO,"BatchSpanProcessor",{enumerable:!0,get:function(){return NX0.BatchSpanProcessor}});var LX0=t8Q();Object.defineProperty(cO,"RandomIdGenerator",{enumerable:!0,get:function(){return LX0.RandomIdGenerator}})});var pO=R((lO)=>{Object.defineProperty(lO,"__esModule",{value:!0});lO.RandomIdGenerator=lO.BatchSpanProcessor=void 0;var A5Q=e8Q();Object.defineProperty(lO,"BatchSpanProcessor",{enumerable:!0,get:function(){return A5Q.BatchSpanProcessor}});Object.defineProperty(lO,"RandomIdGenerator",{enumerable:!0,get:function(){return A5Q.RandomIdGenerator}})});var ip=R((B5Q)=>{Object.defineProperty(B5Q,"__esModule",{value:!0});B5Q.Tracer=void 0;var FJ=yA(),iO=MB(),zX0=gp(),RX0=pp(),wX0=pO();class Q5Q{constructor(A,Q,B){this._tracerProvider=B;let Y=(0,RX0.mergeConfig)(Q);this._sampler=Y.sampler,this._generalLimits=Y.generalLimits,this._spanLimits=Y.spanLimits,this._idGenerator=Q.idGenerator||new wX0.RandomIdGenerator,this.resource=B.resource,this.instrumentationLibrary=A}startSpan(A,Q={},B=FJ.context.active()){var Y,J,C;if(Q.root)B=FJ.trace.deleteSpan(B);let X=FJ.trace.getSpan(B);if((0,iO.isTracingSuppressed)(B))return FJ.diag.debug("Instrumentation suppressed, returning Noop Span"),FJ.trace.wrapSpanContext(FJ.INVALID_SPAN_CONTEXT);let G=X===null||X===void 0?void 0:X.spanContext(),F=this._idGenerator.generateSpanId(),W,Z,U;if(!G||!FJ.trace.isSpanContextValid(G))W=this._idGenerator.generateTraceId();else W=G.traceId,Z=G.traceState,U=G.spanId;let $=(Y=Q.kind)!==null&&Y!==void 0?Y:FJ.SpanKind.INTERNAL,E=((J=Q.links)!==null&&J!==void 0?J:[]).map((z)=>{return{context:z.context,attributes:(0,iO.sanitizeAttributes)(z.attributes)}}),K=(0,iO.sanitizeAttributes)(Q.attributes),I=this._sampler.shouldSample(B,W,A,$,K,E);Z=(C=I.traceState)!==null&&C!==void 0?C:Z;let V=I.decision===FJ.SamplingDecision.RECORD_AND_SAMPLED?FJ.TraceFlags.SAMPLED:FJ.TraceFlags.NONE,H={traceId:W,spanId:F,traceFlags:V,traceState:Z};if(I.decision===FJ.SamplingDecision.NOT_RECORD)return FJ.diag.debug("Recording is off, propagating context in a non-recording span"),FJ.trace.wrapSpanContext(H);let D=(0,iO.sanitizeAttributes)(Object.assign(K,I.attributes));return new zX0.Span(this,B,A,H,$,U,E,Q.startTime,void 0,D)}startActiveSpan(A,Q,B,Y){let J,C,X;if(arguments.length<2)return;else if(arguments.length===2)X=Q;else if(arguments.length===3)J=Q,X=B;else J=Q,C=B,X=Y;let G=C!==null&&C!==void 0?C:FJ.context.active(),F=this.startSpan(A,J,G),W=FJ.trace.setSpan(G,F);return FJ.context.with(W,X,void 0,F)}getGeneralLimits(){return this._generalLimits}getSpanLimits(){return this._spanLimits}getActiveSpanProcessor(){return this._tracerProvider.getActiveSpanProcessor()}}B5Q.Tracer=Q5Q});var np=R((J5Q)=>{Object.defineProperty(J5Q,"__esModule",{value:!0});J5Q.createConstMap=void 0;function jX0(A){let Q={},B=A.length;for(let Y=0;Y{Object.defineProperty(rXQ,"__esModule",{value:!0});rXQ.SEMATTRS_NET_HOST_CARRIER_ICC=rXQ.SEMATTRS_NET_HOST_CARRIER_MNC=rXQ.SEMATTRS_NET_HOST_CARRIER_MCC=rXQ.SEMATTRS_NET_HOST_CARRIER_NAME=rXQ.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=rXQ.SEMATTRS_NET_HOST_CONNECTION_TYPE=rXQ.SEMATTRS_NET_HOST_NAME=rXQ.SEMATTRS_NET_HOST_PORT=rXQ.SEMATTRS_NET_HOST_IP=rXQ.SEMATTRS_NET_PEER_NAME=rXQ.SEMATTRS_NET_PEER_PORT=rXQ.SEMATTRS_NET_PEER_IP=rXQ.SEMATTRS_NET_TRANSPORT=rXQ.SEMATTRS_FAAS_INVOKED_REGION=rXQ.SEMATTRS_FAAS_INVOKED_PROVIDER=rXQ.SEMATTRS_FAAS_INVOKED_NAME=rXQ.SEMATTRS_FAAS_COLDSTART=rXQ.SEMATTRS_FAAS_CRON=rXQ.SEMATTRS_FAAS_TIME=rXQ.SEMATTRS_FAAS_DOCUMENT_NAME=rXQ.SEMATTRS_FAAS_DOCUMENT_TIME=rXQ.SEMATTRS_FAAS_DOCUMENT_OPERATION=rXQ.SEMATTRS_FAAS_DOCUMENT_COLLECTION=rXQ.SEMATTRS_FAAS_EXECUTION=rXQ.SEMATTRS_FAAS_TRIGGER=rXQ.SEMATTRS_EXCEPTION_ESCAPED=rXQ.SEMATTRS_EXCEPTION_STACKTRACE=rXQ.SEMATTRS_EXCEPTION_MESSAGE=rXQ.SEMATTRS_EXCEPTION_TYPE=rXQ.SEMATTRS_DB_SQL_TABLE=rXQ.SEMATTRS_DB_MONGODB_COLLECTION=rXQ.SEMATTRS_DB_REDIS_DATABASE_INDEX=rXQ.SEMATTRS_DB_HBASE_NAMESPACE=rXQ.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=rXQ.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=rXQ.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=rXQ.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=rXQ.SEMATTRS_DB_CASSANDRA_TABLE=rXQ.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=rXQ.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=rXQ.SEMATTRS_DB_CASSANDRA_KEYSPACE=rXQ.SEMATTRS_DB_MSSQL_INSTANCE_NAME=rXQ.SEMATTRS_DB_OPERATION=rXQ.SEMATTRS_DB_STATEMENT=rXQ.SEMATTRS_DB_NAME=rXQ.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=rXQ.SEMATTRS_DB_USER=rXQ.SEMATTRS_DB_CONNECTION_STRING=rXQ.SEMATTRS_DB_SYSTEM=rXQ.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=void 0;rXQ.SEMATTRS_MESSAGING_DESTINATION_KIND=rXQ.SEMATTRS_MESSAGING_DESTINATION=rXQ.SEMATTRS_MESSAGING_SYSTEM=rXQ.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=rXQ.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=rXQ.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=rXQ.SEMATTRS_AWS_DYNAMODB_COUNT=rXQ.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=rXQ.SEMATTRS_AWS_DYNAMODB_SEGMENT=rXQ.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=rXQ.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=rXQ.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=rXQ.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=rXQ.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=rXQ.SEMATTRS_AWS_DYNAMODB_SELECT=rXQ.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=rXQ.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=rXQ.SEMATTRS_AWS_DYNAMODB_LIMIT=rXQ.SEMATTRS_AWS_DYNAMODB_PROJECTION=rXQ.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=rXQ.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=rXQ.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=rXQ.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=rXQ.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=rXQ.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=rXQ.SEMATTRS_HTTP_CLIENT_IP=rXQ.SEMATTRS_HTTP_ROUTE=rXQ.SEMATTRS_HTTP_SERVER_NAME=rXQ.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=rXQ.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=rXQ.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=rXQ.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=rXQ.SEMATTRS_HTTP_USER_AGENT=rXQ.SEMATTRS_HTTP_FLAVOR=rXQ.SEMATTRS_HTTP_STATUS_CODE=rXQ.SEMATTRS_HTTP_SCHEME=rXQ.SEMATTRS_HTTP_HOST=rXQ.SEMATTRS_HTTP_TARGET=rXQ.SEMATTRS_HTTP_URL=rXQ.SEMATTRS_HTTP_METHOD=rXQ.SEMATTRS_CODE_LINENO=rXQ.SEMATTRS_CODE_FILEPATH=rXQ.SEMATTRS_CODE_NAMESPACE=rXQ.SEMATTRS_CODE_FUNCTION=rXQ.SEMATTRS_THREAD_NAME=rXQ.SEMATTRS_THREAD_ID=rXQ.SEMATTRS_ENDUSER_SCOPE=rXQ.SEMATTRS_ENDUSER_ROLE=rXQ.SEMATTRS_ENDUSER_ID=rXQ.SEMATTRS_PEER_SERVICE=void 0;rXQ.DBSYSTEMVALUES_FILEMAKER=rXQ.DBSYSTEMVALUES_DERBY=rXQ.DBSYSTEMVALUES_FIREBIRD=rXQ.DBSYSTEMVALUES_ADABAS=rXQ.DBSYSTEMVALUES_CACHE=rXQ.DBSYSTEMVALUES_EDB=rXQ.DBSYSTEMVALUES_FIRSTSQL=rXQ.DBSYSTEMVALUES_INGRES=rXQ.DBSYSTEMVALUES_HANADB=rXQ.DBSYSTEMVALUES_MAXDB=rXQ.DBSYSTEMVALUES_PROGRESS=rXQ.DBSYSTEMVALUES_HSQLDB=rXQ.DBSYSTEMVALUES_CLOUDSCAPE=rXQ.DBSYSTEMVALUES_HIVE=rXQ.DBSYSTEMVALUES_REDSHIFT=rXQ.DBSYSTEMVALUES_POSTGRESQL=rXQ.DBSYSTEMVALUES_DB2=rXQ.DBSYSTEMVALUES_ORACLE=rXQ.DBSYSTEMVALUES_MYSQL=rXQ.DBSYSTEMVALUES_MSSQL=rXQ.DBSYSTEMVALUES_OTHER_SQL=rXQ.SemanticAttributes=rXQ.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=rXQ.SEMATTRS_MESSAGE_COMPRESSED_SIZE=rXQ.SEMATTRS_MESSAGE_ID=rXQ.SEMATTRS_MESSAGE_TYPE=rXQ.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=rXQ.SEMATTRS_RPC_JSONRPC_ERROR_CODE=rXQ.SEMATTRS_RPC_JSONRPC_REQUEST_ID=rXQ.SEMATTRS_RPC_JSONRPC_VERSION=rXQ.SEMATTRS_RPC_GRPC_STATUS_CODE=rXQ.SEMATTRS_RPC_METHOD=rXQ.SEMATTRS_RPC_SERVICE=rXQ.SEMATTRS_RPC_SYSTEM=rXQ.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=rXQ.SEMATTRS_MESSAGING_KAFKA_PARTITION=rXQ.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=rXQ.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=rXQ.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=rXQ.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=rXQ.SEMATTRS_MESSAGING_CONSUMER_ID=rXQ.SEMATTRS_MESSAGING_OPERATION=rXQ.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=rXQ.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=rXQ.SEMATTRS_MESSAGING_CONVERSATION_ID=rXQ.SEMATTRS_MESSAGING_MESSAGE_ID=rXQ.SEMATTRS_MESSAGING_URL=rXQ.SEMATTRS_MESSAGING_PROTOCOL_VERSION=rXQ.SEMATTRS_MESSAGING_PROTOCOL=rXQ.SEMATTRS_MESSAGING_TEMP_DESTINATION=void 0;rXQ.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=rXQ.FaasDocumentOperationValues=rXQ.FAASDOCUMENTOPERATIONVALUES_DELETE=rXQ.FAASDOCUMENTOPERATIONVALUES_EDIT=rXQ.FAASDOCUMENTOPERATIONVALUES_INSERT=rXQ.FaasTriggerValues=rXQ.FAASTRIGGERVALUES_OTHER=rXQ.FAASTRIGGERVALUES_TIMER=rXQ.FAASTRIGGERVALUES_PUBSUB=rXQ.FAASTRIGGERVALUES_HTTP=rXQ.FAASTRIGGERVALUES_DATASOURCE=rXQ.DbCassandraConsistencyLevelValues=rXQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=rXQ.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=rXQ.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=rXQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=rXQ.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=rXQ.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=rXQ.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=rXQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=rXQ.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=rXQ.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=rXQ.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=rXQ.DbSystemValues=rXQ.DBSYSTEMVALUES_COCKROACHDB=rXQ.DBSYSTEMVALUES_MEMCACHED=rXQ.DBSYSTEMVALUES_ELASTICSEARCH=rXQ.DBSYSTEMVALUES_GEODE=rXQ.DBSYSTEMVALUES_NEO4J=rXQ.DBSYSTEMVALUES_DYNAMODB=rXQ.DBSYSTEMVALUES_COSMOSDB=rXQ.DBSYSTEMVALUES_COUCHDB=rXQ.DBSYSTEMVALUES_COUCHBASE=rXQ.DBSYSTEMVALUES_REDIS=rXQ.DBSYSTEMVALUES_MONGODB=rXQ.DBSYSTEMVALUES_HBASE=rXQ.DBSYSTEMVALUES_CASSANDRA=rXQ.DBSYSTEMVALUES_COLDFUSION=rXQ.DBSYSTEMVALUES_H2=rXQ.DBSYSTEMVALUES_VERTICA=rXQ.DBSYSTEMVALUES_TERADATA=rXQ.DBSYSTEMVALUES_SYBASE=rXQ.DBSYSTEMVALUES_SQLITE=rXQ.DBSYSTEMVALUES_POINTBASE=rXQ.DBSYSTEMVALUES_PERVASIVE=rXQ.DBSYSTEMVALUES_NETEZZA=rXQ.DBSYSTEMVALUES_MARIADB=rXQ.DBSYSTEMVALUES_INTERBASE=rXQ.DBSYSTEMVALUES_INSTANTDB=rXQ.DBSYSTEMVALUES_INFORMIX=void 0;rXQ.MESSAGINGOPERATIONVALUES_RECEIVE=rXQ.MessagingDestinationKindValues=rXQ.MESSAGINGDESTINATIONKINDVALUES_TOPIC=rXQ.MESSAGINGDESTINATIONKINDVALUES_QUEUE=rXQ.HttpFlavorValues=rXQ.HTTPFLAVORVALUES_QUIC=rXQ.HTTPFLAVORVALUES_SPDY=rXQ.HTTPFLAVORVALUES_HTTP_2_0=rXQ.HTTPFLAVORVALUES_HTTP_1_1=rXQ.HTTPFLAVORVALUES_HTTP_1_0=rXQ.NetHostConnectionSubtypeValues=rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_NR=rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=rXQ.NetHostConnectionTypeValues=rXQ.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=rXQ.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=rXQ.NETHOSTCONNECTIONTYPEVALUES_CELL=rXQ.NETHOSTCONNECTIONTYPEVALUES_WIRED=rXQ.NETHOSTCONNECTIONTYPEVALUES_WIFI=rXQ.NetTransportValues=rXQ.NETTRANSPORTVALUES_OTHER=rXQ.NETTRANSPORTVALUES_INPROC=rXQ.NETTRANSPORTVALUES_PIPE=rXQ.NETTRANSPORTVALUES_UNIX=rXQ.NETTRANSPORTVALUES_IP=rXQ.NETTRANSPORTVALUES_IP_UDP=rXQ.NETTRANSPORTVALUES_IP_TCP=rXQ.FaasInvokedProviderValues=rXQ.FAASINVOKEDPROVIDERVALUES_GCP=rXQ.FAASINVOKEDPROVIDERVALUES_AZURE=rXQ.FAASINVOKEDPROVIDERVALUES_AWS=void 0;rXQ.MessageTypeValues=rXQ.MESSAGETYPEVALUES_RECEIVED=rXQ.MESSAGETYPEVALUES_SENT=rXQ.RpcGrpcStatusCodeValues=rXQ.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=rXQ.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=rXQ.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=rXQ.RPCGRPCSTATUSCODEVALUES_INTERNAL=rXQ.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=rXQ.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=rXQ.RPCGRPCSTATUSCODEVALUES_ABORTED=rXQ.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=rXQ.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=rXQ.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=rXQ.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=rXQ.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=rXQ.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=rXQ.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=rXQ.RPCGRPCSTATUSCODEVALUES_UNKNOWN=rXQ.RPCGRPCSTATUSCODEVALUES_CANCELLED=rXQ.RPCGRPCSTATUSCODEVALUES_OK=rXQ.MessagingOperationValues=rXQ.MESSAGINGOPERATIONVALUES_PROCESS=void 0;var b5=np(),X5Q="aws.lambda.invoked_arn",G5Q="db.system",F5Q="db.connection_string",W5Q="db.user",Z5Q="db.jdbc.driver_classname",$5Q="db.name",U5Q="db.statement",E5Q="db.operation",K5Q="db.mssql.instance_name",V5Q="db.cassandra.keyspace",I5Q="db.cassandra.page_size",H5Q="db.cassandra.consistency_level",D5Q="db.cassandra.table",N5Q="db.cassandra.idempotence",L5Q="db.cassandra.speculative_execution_count",q5Q="db.cassandra.coordinator.id",M5Q="db.cassandra.coordinator.dc",z5Q="db.hbase.namespace",R5Q="db.redis.database_index",w5Q="db.mongodb.collection",j5Q="db.sql.table",O5Q="exception.type",P5Q="exception.message",T5Q="exception.stacktrace",S5Q="exception.escaped",k5Q="faas.trigger",_5Q="faas.execution",v5Q="faas.document.collection",y5Q="faas.document.operation",h5Q="faas.document.time",g5Q="faas.document.name",x5Q="faas.time",f5Q="faas.cron",b5Q="faas.coldstart",m5Q="faas.invoked_name",u5Q="faas.invoked_provider",d5Q="faas.invoked_region",c5Q="net.transport",l5Q="net.peer.ip",p5Q="net.peer.port",i5Q="net.peer.name",n5Q="net.host.ip",s5Q="net.host.port",r5Q="net.host.name",a5Q="net.host.connection.type",o5Q="net.host.connection.subtype",t5Q="net.host.carrier.name",e5Q="net.host.carrier.mcc",ACQ="net.host.carrier.mnc",QCQ="net.host.carrier.icc",BCQ="peer.service",YCQ="enduser.id",JCQ="enduser.role",CCQ="enduser.scope",XCQ="thread.id",GCQ="thread.name",FCQ="code.function",WCQ="code.namespace",ZCQ="code.filepath",$CQ="code.lineno",UCQ="http.method",ECQ="http.url",KCQ="http.target",VCQ="http.host",ICQ="http.scheme",HCQ="http.status_code",DCQ="http.flavor",NCQ="http.user_agent",LCQ="http.request_content_length",qCQ="http.request_content_length_uncompressed",MCQ="http.response_content_length",zCQ="http.response_content_length_uncompressed",RCQ="http.server_name",wCQ="http.route",jCQ="http.client_ip",OCQ="aws.dynamodb.table_names",PCQ="aws.dynamodb.consumed_capacity",TCQ="aws.dynamodb.item_collection_metrics",SCQ="aws.dynamodb.provisioned_read_capacity",kCQ="aws.dynamodb.provisioned_write_capacity",_CQ="aws.dynamodb.consistent_read",vCQ="aws.dynamodb.projection",yCQ="aws.dynamodb.limit",hCQ="aws.dynamodb.attributes_to_get",gCQ="aws.dynamodb.index_name",xCQ="aws.dynamodb.select",fCQ="aws.dynamodb.global_secondary_indexes",bCQ="aws.dynamodb.local_secondary_indexes",mCQ="aws.dynamodb.exclusive_start_table",uCQ="aws.dynamodb.table_count",dCQ="aws.dynamodb.scan_forward",cCQ="aws.dynamodb.segment",lCQ="aws.dynamodb.total_segments",pCQ="aws.dynamodb.count",iCQ="aws.dynamodb.scanned_count",nCQ="aws.dynamodb.attribute_definitions",sCQ="aws.dynamodb.global_secondary_index_updates",rCQ="messaging.system",aCQ="messaging.destination",oCQ="messaging.destination_kind",tCQ="messaging.temp_destination",eCQ="messaging.protocol",A1Q="messaging.protocol_version",Q1Q="messaging.url",B1Q="messaging.message_id",Y1Q="messaging.conversation_id",J1Q="messaging.message_payload_size_bytes",C1Q="messaging.message_payload_compressed_size_bytes",X1Q="messaging.operation",G1Q="messaging.consumer_id",F1Q="messaging.rabbitmq.routing_key",W1Q="messaging.kafka.message_key",Z1Q="messaging.kafka.consumer_group",$1Q="messaging.kafka.client_id",U1Q="messaging.kafka.partition",E1Q="messaging.kafka.tombstone",K1Q="rpc.system",V1Q="rpc.service",I1Q="rpc.method",H1Q="rpc.grpc.status_code",D1Q="rpc.jsonrpc.version",N1Q="rpc.jsonrpc.request_id",L1Q="rpc.jsonrpc.error_code",q1Q="rpc.jsonrpc.error_message",M1Q="message.type",z1Q="message.id",R1Q="message.compressed_size",w1Q="message.uncompressed_size";rXQ.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=X5Q;rXQ.SEMATTRS_DB_SYSTEM=G5Q;rXQ.SEMATTRS_DB_CONNECTION_STRING=F5Q;rXQ.SEMATTRS_DB_USER=W5Q;rXQ.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=Z5Q;rXQ.SEMATTRS_DB_NAME=$5Q;rXQ.SEMATTRS_DB_STATEMENT=U5Q;rXQ.SEMATTRS_DB_OPERATION=E5Q;rXQ.SEMATTRS_DB_MSSQL_INSTANCE_NAME=K5Q;rXQ.SEMATTRS_DB_CASSANDRA_KEYSPACE=V5Q;rXQ.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=I5Q;rXQ.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=H5Q;rXQ.SEMATTRS_DB_CASSANDRA_TABLE=D5Q;rXQ.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=N5Q;rXQ.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=L5Q;rXQ.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=q5Q;rXQ.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=M5Q;rXQ.SEMATTRS_DB_HBASE_NAMESPACE=z5Q;rXQ.SEMATTRS_DB_REDIS_DATABASE_INDEX=R5Q;rXQ.SEMATTRS_DB_MONGODB_COLLECTION=w5Q;rXQ.SEMATTRS_DB_SQL_TABLE=j5Q;rXQ.SEMATTRS_EXCEPTION_TYPE=O5Q;rXQ.SEMATTRS_EXCEPTION_MESSAGE=P5Q;rXQ.SEMATTRS_EXCEPTION_STACKTRACE=T5Q;rXQ.SEMATTRS_EXCEPTION_ESCAPED=S5Q;rXQ.SEMATTRS_FAAS_TRIGGER=k5Q;rXQ.SEMATTRS_FAAS_EXECUTION=_5Q;rXQ.SEMATTRS_FAAS_DOCUMENT_COLLECTION=v5Q;rXQ.SEMATTRS_FAAS_DOCUMENT_OPERATION=y5Q;rXQ.SEMATTRS_FAAS_DOCUMENT_TIME=h5Q;rXQ.SEMATTRS_FAAS_DOCUMENT_NAME=g5Q;rXQ.SEMATTRS_FAAS_TIME=x5Q;rXQ.SEMATTRS_FAAS_CRON=f5Q;rXQ.SEMATTRS_FAAS_COLDSTART=b5Q;rXQ.SEMATTRS_FAAS_INVOKED_NAME=m5Q;rXQ.SEMATTRS_FAAS_INVOKED_PROVIDER=u5Q;rXQ.SEMATTRS_FAAS_INVOKED_REGION=d5Q;rXQ.SEMATTRS_NET_TRANSPORT=c5Q;rXQ.SEMATTRS_NET_PEER_IP=l5Q;rXQ.SEMATTRS_NET_PEER_PORT=p5Q;rXQ.SEMATTRS_NET_PEER_NAME=i5Q;rXQ.SEMATTRS_NET_HOST_IP=n5Q;rXQ.SEMATTRS_NET_HOST_PORT=s5Q;rXQ.SEMATTRS_NET_HOST_NAME=r5Q;rXQ.SEMATTRS_NET_HOST_CONNECTION_TYPE=a5Q;rXQ.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=o5Q;rXQ.SEMATTRS_NET_HOST_CARRIER_NAME=t5Q;rXQ.SEMATTRS_NET_HOST_CARRIER_MCC=e5Q;rXQ.SEMATTRS_NET_HOST_CARRIER_MNC=ACQ;rXQ.SEMATTRS_NET_HOST_CARRIER_ICC=QCQ;rXQ.SEMATTRS_PEER_SERVICE=BCQ;rXQ.SEMATTRS_ENDUSER_ID=YCQ;rXQ.SEMATTRS_ENDUSER_ROLE=JCQ;rXQ.SEMATTRS_ENDUSER_SCOPE=CCQ;rXQ.SEMATTRS_THREAD_ID=XCQ;rXQ.SEMATTRS_THREAD_NAME=GCQ;rXQ.SEMATTRS_CODE_FUNCTION=FCQ;rXQ.SEMATTRS_CODE_NAMESPACE=WCQ;rXQ.SEMATTRS_CODE_FILEPATH=ZCQ;rXQ.SEMATTRS_CODE_LINENO=$CQ;rXQ.SEMATTRS_HTTP_METHOD=UCQ;rXQ.SEMATTRS_HTTP_URL=ECQ;rXQ.SEMATTRS_HTTP_TARGET=KCQ;rXQ.SEMATTRS_HTTP_HOST=VCQ;rXQ.SEMATTRS_HTTP_SCHEME=ICQ;rXQ.SEMATTRS_HTTP_STATUS_CODE=HCQ;rXQ.SEMATTRS_HTTP_FLAVOR=DCQ;rXQ.SEMATTRS_HTTP_USER_AGENT=NCQ;rXQ.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=LCQ;rXQ.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=qCQ;rXQ.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=MCQ;rXQ.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=zCQ;rXQ.SEMATTRS_HTTP_SERVER_NAME=RCQ;rXQ.SEMATTRS_HTTP_ROUTE=wCQ;rXQ.SEMATTRS_HTTP_CLIENT_IP=jCQ;rXQ.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=OCQ;rXQ.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=PCQ;rXQ.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=TCQ;rXQ.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=SCQ;rXQ.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=kCQ;rXQ.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=_CQ;rXQ.SEMATTRS_AWS_DYNAMODB_PROJECTION=vCQ;rXQ.SEMATTRS_AWS_DYNAMODB_LIMIT=yCQ;rXQ.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=hCQ;rXQ.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=gCQ;rXQ.SEMATTRS_AWS_DYNAMODB_SELECT=xCQ;rXQ.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=fCQ;rXQ.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=bCQ;rXQ.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=mCQ;rXQ.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=uCQ;rXQ.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=dCQ;rXQ.SEMATTRS_AWS_DYNAMODB_SEGMENT=cCQ;rXQ.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=lCQ;rXQ.SEMATTRS_AWS_DYNAMODB_COUNT=pCQ;rXQ.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=iCQ;rXQ.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=nCQ;rXQ.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=sCQ;rXQ.SEMATTRS_MESSAGING_SYSTEM=rCQ;rXQ.SEMATTRS_MESSAGING_DESTINATION=aCQ;rXQ.SEMATTRS_MESSAGING_DESTINATION_KIND=oCQ;rXQ.SEMATTRS_MESSAGING_TEMP_DESTINATION=tCQ;rXQ.SEMATTRS_MESSAGING_PROTOCOL=eCQ;rXQ.SEMATTRS_MESSAGING_PROTOCOL_VERSION=A1Q;rXQ.SEMATTRS_MESSAGING_URL=Q1Q;rXQ.SEMATTRS_MESSAGING_MESSAGE_ID=B1Q;rXQ.SEMATTRS_MESSAGING_CONVERSATION_ID=Y1Q;rXQ.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=J1Q;rXQ.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=C1Q;rXQ.SEMATTRS_MESSAGING_OPERATION=X1Q;rXQ.SEMATTRS_MESSAGING_CONSUMER_ID=G1Q;rXQ.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=F1Q;rXQ.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=W1Q;rXQ.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=Z1Q;rXQ.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=$1Q;rXQ.SEMATTRS_MESSAGING_KAFKA_PARTITION=U1Q;rXQ.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=E1Q;rXQ.SEMATTRS_RPC_SYSTEM=K1Q;rXQ.SEMATTRS_RPC_SERVICE=V1Q;rXQ.SEMATTRS_RPC_METHOD=I1Q;rXQ.SEMATTRS_RPC_GRPC_STATUS_CODE=H1Q;rXQ.SEMATTRS_RPC_JSONRPC_VERSION=D1Q;rXQ.SEMATTRS_RPC_JSONRPC_REQUEST_ID=N1Q;rXQ.SEMATTRS_RPC_JSONRPC_ERROR_CODE=L1Q;rXQ.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=q1Q;rXQ.SEMATTRS_MESSAGE_TYPE=M1Q;rXQ.SEMATTRS_MESSAGE_ID=z1Q;rXQ.SEMATTRS_MESSAGE_COMPRESSED_SIZE=R1Q;rXQ.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=w1Q;rXQ.SemanticAttributes=(0,b5.createConstMap)([X5Q,G5Q,F5Q,W5Q,Z5Q,$5Q,U5Q,E5Q,K5Q,V5Q,I5Q,H5Q,D5Q,N5Q,L5Q,q5Q,M5Q,z5Q,R5Q,w5Q,j5Q,O5Q,P5Q,T5Q,S5Q,k5Q,_5Q,v5Q,y5Q,h5Q,g5Q,x5Q,f5Q,b5Q,m5Q,u5Q,d5Q,c5Q,l5Q,p5Q,i5Q,n5Q,s5Q,r5Q,a5Q,o5Q,t5Q,e5Q,ACQ,QCQ,BCQ,YCQ,JCQ,CCQ,XCQ,GCQ,FCQ,WCQ,ZCQ,$CQ,UCQ,ECQ,KCQ,VCQ,ICQ,HCQ,DCQ,NCQ,LCQ,qCQ,MCQ,zCQ,RCQ,wCQ,jCQ,OCQ,PCQ,TCQ,SCQ,kCQ,_CQ,vCQ,yCQ,hCQ,gCQ,xCQ,fCQ,bCQ,mCQ,uCQ,dCQ,cCQ,lCQ,pCQ,iCQ,nCQ,sCQ,rCQ,aCQ,oCQ,tCQ,eCQ,A1Q,Q1Q,B1Q,Y1Q,J1Q,C1Q,X1Q,G1Q,F1Q,W1Q,Z1Q,$1Q,U1Q,E1Q,K1Q,V1Q,I1Q,H1Q,D1Q,N1Q,L1Q,q1Q,M1Q,z1Q,R1Q,w1Q]);var j1Q="other_sql",O1Q="mssql",P1Q="mysql",T1Q="oracle",S1Q="db2",k1Q="postgresql",_1Q="redshift",v1Q="hive",y1Q="cloudscape",h1Q="hsqldb",g1Q="progress",x1Q="maxdb",f1Q="hanadb",b1Q="ingres",m1Q="firstsql",u1Q="edb",d1Q="cache",c1Q="adabas",l1Q="firebird",p1Q="derby",i1Q="filemaker",n1Q="informix",s1Q="instantdb",r1Q="interbase",a1Q="mariadb",o1Q="netezza",t1Q="pervasive",e1Q="pointbase",A6Q="sqlite",Q6Q="sybase",B6Q="teradata",Y6Q="vertica",J6Q="h2",C6Q="coldfusion",X6Q="cassandra",G6Q="hbase",F6Q="mongodb",W6Q="redis",Z6Q="couchbase",$6Q="couchdb",U6Q="cosmosdb",E6Q="dynamodb",K6Q="neo4j",V6Q="geode",I6Q="elasticsearch",H6Q="memcached",D6Q="cockroachdb";rXQ.DBSYSTEMVALUES_OTHER_SQL=j1Q;rXQ.DBSYSTEMVALUES_MSSQL=O1Q;rXQ.DBSYSTEMVALUES_MYSQL=P1Q;rXQ.DBSYSTEMVALUES_ORACLE=T1Q;rXQ.DBSYSTEMVALUES_DB2=S1Q;rXQ.DBSYSTEMVALUES_POSTGRESQL=k1Q;rXQ.DBSYSTEMVALUES_REDSHIFT=_1Q;rXQ.DBSYSTEMVALUES_HIVE=v1Q;rXQ.DBSYSTEMVALUES_CLOUDSCAPE=y1Q;rXQ.DBSYSTEMVALUES_HSQLDB=h1Q;rXQ.DBSYSTEMVALUES_PROGRESS=g1Q;rXQ.DBSYSTEMVALUES_MAXDB=x1Q;rXQ.DBSYSTEMVALUES_HANADB=f1Q;rXQ.DBSYSTEMVALUES_INGRES=b1Q;rXQ.DBSYSTEMVALUES_FIRSTSQL=m1Q;rXQ.DBSYSTEMVALUES_EDB=u1Q;rXQ.DBSYSTEMVALUES_CACHE=d1Q;rXQ.DBSYSTEMVALUES_ADABAS=c1Q;rXQ.DBSYSTEMVALUES_FIREBIRD=l1Q;rXQ.DBSYSTEMVALUES_DERBY=p1Q;rXQ.DBSYSTEMVALUES_FILEMAKER=i1Q;rXQ.DBSYSTEMVALUES_INFORMIX=n1Q;rXQ.DBSYSTEMVALUES_INSTANTDB=s1Q;rXQ.DBSYSTEMVALUES_INTERBASE=r1Q;rXQ.DBSYSTEMVALUES_MARIADB=a1Q;rXQ.DBSYSTEMVALUES_NETEZZA=o1Q;rXQ.DBSYSTEMVALUES_PERVASIVE=t1Q;rXQ.DBSYSTEMVALUES_POINTBASE=e1Q;rXQ.DBSYSTEMVALUES_SQLITE=A6Q;rXQ.DBSYSTEMVALUES_SYBASE=Q6Q;rXQ.DBSYSTEMVALUES_TERADATA=B6Q;rXQ.DBSYSTEMVALUES_VERTICA=Y6Q;rXQ.DBSYSTEMVALUES_H2=J6Q;rXQ.DBSYSTEMVALUES_COLDFUSION=C6Q;rXQ.DBSYSTEMVALUES_CASSANDRA=X6Q;rXQ.DBSYSTEMVALUES_HBASE=G6Q;rXQ.DBSYSTEMVALUES_MONGODB=F6Q;rXQ.DBSYSTEMVALUES_REDIS=W6Q;rXQ.DBSYSTEMVALUES_COUCHBASE=Z6Q;rXQ.DBSYSTEMVALUES_COUCHDB=$6Q;rXQ.DBSYSTEMVALUES_COSMOSDB=U6Q;rXQ.DBSYSTEMVALUES_DYNAMODB=E6Q;rXQ.DBSYSTEMVALUES_NEO4J=K6Q;rXQ.DBSYSTEMVALUES_GEODE=V6Q;rXQ.DBSYSTEMVALUES_ELASTICSEARCH=I6Q;rXQ.DBSYSTEMVALUES_MEMCACHED=H6Q;rXQ.DBSYSTEMVALUES_COCKROACHDB=D6Q;rXQ.DbSystemValues=(0,b5.createConstMap)([j1Q,O1Q,P1Q,T1Q,S1Q,k1Q,_1Q,v1Q,y1Q,h1Q,g1Q,x1Q,f1Q,b1Q,m1Q,u1Q,d1Q,c1Q,l1Q,p1Q,i1Q,n1Q,s1Q,r1Q,a1Q,o1Q,t1Q,e1Q,A6Q,Q6Q,B6Q,Y6Q,J6Q,C6Q,X6Q,G6Q,F6Q,W6Q,Z6Q,$6Q,U6Q,E6Q,K6Q,V6Q,I6Q,H6Q,D6Q]);var N6Q="all",L6Q="each_quorum",q6Q="quorum",M6Q="local_quorum",z6Q="one",R6Q="two",w6Q="three",j6Q="local_one",O6Q="any",P6Q="serial",T6Q="local_serial";rXQ.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=N6Q;rXQ.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=L6Q;rXQ.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=q6Q;rXQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=M6Q;rXQ.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=z6Q;rXQ.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=R6Q;rXQ.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=w6Q;rXQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=j6Q;rXQ.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=O6Q;rXQ.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=P6Q;rXQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=T6Q;rXQ.DbCassandraConsistencyLevelValues=(0,b5.createConstMap)([N6Q,L6Q,q6Q,M6Q,z6Q,R6Q,w6Q,j6Q,O6Q,P6Q,T6Q]);var S6Q="datasource",k6Q="http",_6Q="pubsub",v6Q="timer",y6Q="other";rXQ.FAASTRIGGERVALUES_DATASOURCE=S6Q;rXQ.FAASTRIGGERVALUES_HTTP=k6Q;rXQ.FAASTRIGGERVALUES_PUBSUB=_6Q;rXQ.FAASTRIGGERVALUES_TIMER=v6Q;rXQ.FAASTRIGGERVALUES_OTHER=y6Q;rXQ.FaasTriggerValues=(0,b5.createConstMap)([S6Q,k6Q,_6Q,v6Q,y6Q]);var h6Q="insert",g6Q="edit",x6Q="delete";rXQ.FAASDOCUMENTOPERATIONVALUES_INSERT=h6Q;rXQ.FAASDOCUMENTOPERATIONVALUES_EDIT=g6Q;rXQ.FAASDOCUMENTOPERATIONVALUES_DELETE=x6Q;rXQ.FaasDocumentOperationValues=(0,b5.createConstMap)([h6Q,g6Q,x6Q]);var f6Q="alibaba_cloud",b6Q="aws",m6Q="azure",u6Q="gcp";rXQ.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=f6Q;rXQ.FAASINVOKEDPROVIDERVALUES_AWS=b6Q;rXQ.FAASINVOKEDPROVIDERVALUES_AZURE=m6Q;rXQ.FAASINVOKEDPROVIDERVALUES_GCP=u6Q;rXQ.FaasInvokedProviderValues=(0,b5.createConstMap)([f6Q,b6Q,m6Q,u6Q]);var d6Q="ip_tcp",c6Q="ip_udp",l6Q="ip",p6Q="unix",i6Q="pipe",n6Q="inproc",s6Q="other";rXQ.NETTRANSPORTVALUES_IP_TCP=d6Q;rXQ.NETTRANSPORTVALUES_IP_UDP=c6Q;rXQ.NETTRANSPORTVALUES_IP=l6Q;rXQ.NETTRANSPORTVALUES_UNIX=p6Q;rXQ.NETTRANSPORTVALUES_PIPE=i6Q;rXQ.NETTRANSPORTVALUES_INPROC=n6Q;rXQ.NETTRANSPORTVALUES_OTHER=s6Q;rXQ.NetTransportValues=(0,b5.createConstMap)([d6Q,c6Q,l6Q,p6Q,i6Q,n6Q,s6Q]);var r6Q="wifi",a6Q="wired",o6Q="cell",t6Q="unavailable",e6Q="unknown";rXQ.NETHOSTCONNECTIONTYPEVALUES_WIFI=r6Q;rXQ.NETHOSTCONNECTIONTYPEVALUES_WIRED=a6Q;rXQ.NETHOSTCONNECTIONTYPEVALUES_CELL=o6Q;rXQ.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=t6Q;rXQ.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=e6Q;rXQ.NetHostConnectionTypeValues=(0,b5.createConstMap)([r6Q,a6Q,o6Q,t6Q,e6Q]);var AXQ="gprs",QXQ="edge",BXQ="umts",YXQ="cdma",JXQ="evdo_0",CXQ="evdo_a",XXQ="cdma2000_1xrtt",GXQ="hsdpa",FXQ="hsupa",WXQ="hspa",ZXQ="iden",$XQ="evdo_b",UXQ="lte",EXQ="ehrpd",KXQ="hspap",VXQ="gsm",IXQ="td_scdma",HXQ="iwlan",DXQ="nr",NXQ="nrnsa",LXQ="lte_ca";rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=AXQ;rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=QXQ;rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=BXQ;rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=YXQ;rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=JXQ;rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=CXQ;rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=XXQ;rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=GXQ;rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=FXQ;rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=WXQ;rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=ZXQ;rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=$XQ;rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=UXQ;rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=EXQ;rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=KXQ;rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=VXQ;rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=IXQ;rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=HXQ;rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_NR=DXQ;rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=NXQ;rXQ.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=LXQ;rXQ.NetHostConnectionSubtypeValues=(0,b5.createConstMap)([AXQ,QXQ,BXQ,YXQ,JXQ,CXQ,XXQ,GXQ,FXQ,WXQ,ZXQ,$XQ,UXQ,EXQ,KXQ,VXQ,IXQ,HXQ,DXQ,NXQ,LXQ]);var qXQ="1.0",MXQ="1.1",zXQ="2.0",RXQ="SPDY",wXQ="QUIC";rXQ.HTTPFLAVORVALUES_HTTP_1_0=qXQ;rXQ.HTTPFLAVORVALUES_HTTP_1_1=MXQ;rXQ.HTTPFLAVORVALUES_HTTP_2_0=zXQ;rXQ.HTTPFLAVORVALUES_SPDY=RXQ;rXQ.HTTPFLAVORVALUES_QUIC=wXQ;rXQ.HttpFlavorValues={HTTP_1_0:qXQ,HTTP_1_1:MXQ,HTTP_2_0:zXQ,SPDY:RXQ,QUIC:wXQ};var jXQ="queue",OXQ="topic";rXQ.MESSAGINGDESTINATIONKINDVALUES_QUEUE=jXQ;rXQ.MESSAGINGDESTINATIONKINDVALUES_TOPIC=OXQ;rXQ.MessagingDestinationKindValues=(0,b5.createConstMap)([jXQ,OXQ]);var PXQ="receive",TXQ="process";rXQ.MESSAGINGOPERATIONVALUES_RECEIVE=PXQ;rXQ.MESSAGINGOPERATIONVALUES_PROCESS=TXQ;rXQ.MessagingOperationValues=(0,b5.createConstMap)([PXQ,TXQ]);var SXQ=0,kXQ=1,_XQ=2,vXQ=3,yXQ=4,hXQ=5,gXQ=6,xXQ=7,fXQ=8,bXQ=9,mXQ=10,uXQ=11,dXQ=12,cXQ=13,lXQ=14,pXQ=15,iXQ=16;rXQ.RPCGRPCSTATUSCODEVALUES_OK=SXQ;rXQ.RPCGRPCSTATUSCODEVALUES_CANCELLED=kXQ;rXQ.RPCGRPCSTATUSCODEVALUES_UNKNOWN=_XQ;rXQ.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=vXQ;rXQ.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=yXQ;rXQ.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=hXQ;rXQ.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=gXQ;rXQ.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=xXQ;rXQ.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=fXQ;rXQ.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=bXQ;rXQ.RPCGRPCSTATUSCODEVALUES_ABORTED=mXQ;rXQ.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=uXQ;rXQ.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=dXQ;rXQ.RPCGRPCSTATUSCODEVALUES_INTERNAL=cXQ;rXQ.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=lXQ;rXQ.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=pXQ;rXQ.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=iXQ;rXQ.RpcGrpcStatusCodeValues={OK:SXQ,CANCELLED:kXQ,UNKNOWN:_XQ,INVALID_ARGUMENT:vXQ,DEADLINE_EXCEEDED:yXQ,NOT_FOUND:hXQ,ALREADY_EXISTS:gXQ,PERMISSION_DENIED:xXQ,RESOURCE_EXHAUSTED:fXQ,FAILED_PRECONDITION:bXQ,ABORTED:mXQ,OUT_OF_RANGE:uXQ,UNIMPLEMENTED:dXQ,INTERNAL:cXQ,UNAVAILABLE:lXQ,DATA_LOSS:pXQ,UNAUTHENTICATED:iXQ};var nXQ="SENT",sXQ="RECEIVED";rXQ.MESSAGETYPEVALUES_SENT=nXQ;rXQ.MESSAGETYPEVALUES_RECEIVED=sXQ;rXQ.MessageTypeValues=(0,b5.createConstMap)([nXQ,sXQ])});var YGQ=R((W$)=>{var RZ0=W$&&W$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),wZ0=W$&&W$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))RZ0(Q,A,B)};Object.defineProperty(W$,"__esModule",{value:!0});wZ0(BGQ(),W$)});var _FQ=R((PFQ)=>{Object.defineProperty(PFQ,"__esModule",{value:!0});PFQ.SEMRESATTRS_K8S_STATEFULSET_NAME=PFQ.SEMRESATTRS_K8S_STATEFULSET_UID=PFQ.SEMRESATTRS_K8S_DEPLOYMENT_NAME=PFQ.SEMRESATTRS_K8S_DEPLOYMENT_UID=PFQ.SEMRESATTRS_K8S_REPLICASET_NAME=PFQ.SEMRESATTRS_K8S_REPLICASET_UID=PFQ.SEMRESATTRS_K8S_CONTAINER_NAME=PFQ.SEMRESATTRS_K8S_POD_NAME=PFQ.SEMRESATTRS_K8S_POD_UID=PFQ.SEMRESATTRS_K8S_NAMESPACE_NAME=PFQ.SEMRESATTRS_K8S_NODE_UID=PFQ.SEMRESATTRS_K8S_NODE_NAME=PFQ.SEMRESATTRS_K8S_CLUSTER_NAME=PFQ.SEMRESATTRS_HOST_IMAGE_VERSION=PFQ.SEMRESATTRS_HOST_IMAGE_ID=PFQ.SEMRESATTRS_HOST_IMAGE_NAME=PFQ.SEMRESATTRS_HOST_ARCH=PFQ.SEMRESATTRS_HOST_TYPE=PFQ.SEMRESATTRS_HOST_NAME=PFQ.SEMRESATTRS_HOST_ID=PFQ.SEMRESATTRS_FAAS_MAX_MEMORY=PFQ.SEMRESATTRS_FAAS_INSTANCE=PFQ.SEMRESATTRS_FAAS_VERSION=PFQ.SEMRESATTRS_FAAS_ID=PFQ.SEMRESATTRS_FAAS_NAME=PFQ.SEMRESATTRS_DEVICE_MODEL_NAME=PFQ.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=PFQ.SEMRESATTRS_DEVICE_ID=PFQ.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=PFQ.SEMRESATTRS_CONTAINER_IMAGE_TAG=PFQ.SEMRESATTRS_CONTAINER_IMAGE_NAME=PFQ.SEMRESATTRS_CONTAINER_RUNTIME=PFQ.SEMRESATTRS_CONTAINER_ID=PFQ.SEMRESATTRS_CONTAINER_NAME=PFQ.SEMRESATTRS_AWS_LOG_STREAM_ARNS=PFQ.SEMRESATTRS_AWS_LOG_STREAM_NAMES=PFQ.SEMRESATTRS_AWS_LOG_GROUP_ARNS=PFQ.SEMRESATTRS_AWS_LOG_GROUP_NAMES=PFQ.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=PFQ.SEMRESATTRS_AWS_ECS_TASK_REVISION=PFQ.SEMRESATTRS_AWS_ECS_TASK_FAMILY=PFQ.SEMRESATTRS_AWS_ECS_TASK_ARN=PFQ.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=PFQ.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=PFQ.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=PFQ.SEMRESATTRS_CLOUD_PLATFORM=PFQ.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=PFQ.SEMRESATTRS_CLOUD_REGION=PFQ.SEMRESATTRS_CLOUD_ACCOUNT_ID=PFQ.SEMRESATTRS_CLOUD_PROVIDER=void 0;PFQ.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=PFQ.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=PFQ.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=PFQ.CLOUDPLATFORMVALUES_AZURE_AKS=PFQ.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=PFQ.CLOUDPLATFORMVALUES_AZURE_VM=PFQ.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=PFQ.CLOUDPLATFORMVALUES_AWS_LAMBDA=PFQ.CLOUDPLATFORMVALUES_AWS_EKS=PFQ.CLOUDPLATFORMVALUES_AWS_ECS=PFQ.CLOUDPLATFORMVALUES_AWS_EC2=PFQ.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=PFQ.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=PFQ.CloudProviderValues=PFQ.CLOUDPROVIDERVALUES_GCP=PFQ.CLOUDPROVIDERVALUES_AZURE=PFQ.CLOUDPROVIDERVALUES_AWS=PFQ.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=PFQ.SemanticResourceAttributes=PFQ.SEMRESATTRS_WEBENGINE_DESCRIPTION=PFQ.SEMRESATTRS_WEBENGINE_VERSION=PFQ.SEMRESATTRS_WEBENGINE_NAME=PFQ.SEMRESATTRS_TELEMETRY_AUTO_VERSION=PFQ.SEMRESATTRS_TELEMETRY_SDK_VERSION=PFQ.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=PFQ.SEMRESATTRS_TELEMETRY_SDK_NAME=PFQ.SEMRESATTRS_SERVICE_VERSION=PFQ.SEMRESATTRS_SERVICE_INSTANCE_ID=PFQ.SEMRESATTRS_SERVICE_NAMESPACE=PFQ.SEMRESATTRS_SERVICE_NAME=PFQ.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=PFQ.SEMRESATTRS_PROCESS_RUNTIME_VERSION=PFQ.SEMRESATTRS_PROCESS_RUNTIME_NAME=PFQ.SEMRESATTRS_PROCESS_OWNER=PFQ.SEMRESATTRS_PROCESS_COMMAND_ARGS=PFQ.SEMRESATTRS_PROCESS_COMMAND_LINE=PFQ.SEMRESATTRS_PROCESS_COMMAND=PFQ.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=PFQ.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=PFQ.SEMRESATTRS_PROCESS_PID=PFQ.SEMRESATTRS_OS_VERSION=PFQ.SEMRESATTRS_OS_NAME=PFQ.SEMRESATTRS_OS_DESCRIPTION=PFQ.SEMRESATTRS_OS_TYPE=PFQ.SEMRESATTRS_K8S_CRONJOB_NAME=PFQ.SEMRESATTRS_K8S_CRONJOB_UID=PFQ.SEMRESATTRS_K8S_JOB_NAME=PFQ.SEMRESATTRS_K8S_JOB_UID=PFQ.SEMRESATTRS_K8S_DAEMONSET_NAME=PFQ.SEMRESATTRS_K8S_DAEMONSET_UID=void 0;PFQ.TelemetrySdkLanguageValues=PFQ.TELEMETRYSDKLANGUAGEVALUES_WEBJS=PFQ.TELEMETRYSDKLANGUAGEVALUES_RUBY=PFQ.TELEMETRYSDKLANGUAGEVALUES_PYTHON=PFQ.TELEMETRYSDKLANGUAGEVALUES_PHP=PFQ.TELEMETRYSDKLANGUAGEVALUES_NODEJS=PFQ.TELEMETRYSDKLANGUAGEVALUES_JAVA=PFQ.TELEMETRYSDKLANGUAGEVALUES_GO=PFQ.TELEMETRYSDKLANGUAGEVALUES_ERLANG=PFQ.TELEMETRYSDKLANGUAGEVALUES_DOTNET=PFQ.TELEMETRYSDKLANGUAGEVALUES_CPP=PFQ.OsTypeValues=PFQ.OSTYPEVALUES_Z_OS=PFQ.OSTYPEVALUES_SOLARIS=PFQ.OSTYPEVALUES_AIX=PFQ.OSTYPEVALUES_HPUX=PFQ.OSTYPEVALUES_DRAGONFLYBSD=PFQ.OSTYPEVALUES_OPENBSD=PFQ.OSTYPEVALUES_NETBSD=PFQ.OSTYPEVALUES_FREEBSD=PFQ.OSTYPEVALUES_DARWIN=PFQ.OSTYPEVALUES_LINUX=PFQ.OSTYPEVALUES_WINDOWS=PFQ.HostArchValues=PFQ.HOSTARCHVALUES_X86=PFQ.HOSTARCHVALUES_PPC64=PFQ.HOSTARCHVALUES_PPC32=PFQ.HOSTARCHVALUES_IA64=PFQ.HOSTARCHVALUES_ARM64=PFQ.HOSTARCHVALUES_ARM32=PFQ.HOSTARCHVALUES_AMD64=PFQ.AwsEcsLaunchtypeValues=PFQ.AWSECSLAUNCHTYPEVALUES_FARGATE=PFQ.AWSECSLAUNCHTYPEVALUES_EC2=PFQ.CloudPlatformValues=PFQ.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=PFQ.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=PFQ.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=PFQ.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=void 0;var Z$=np(),JGQ="cloud.provider",CGQ="cloud.account.id",XGQ="cloud.region",GGQ="cloud.availability_zone",FGQ="cloud.platform",WGQ="aws.ecs.container.arn",ZGQ="aws.ecs.cluster.arn",$GQ="aws.ecs.launchtype",UGQ="aws.ecs.task.arn",EGQ="aws.ecs.task.family",KGQ="aws.ecs.task.revision",VGQ="aws.eks.cluster.arn",IGQ="aws.log.group.names",HGQ="aws.log.group.arns",DGQ="aws.log.stream.names",NGQ="aws.log.stream.arns",LGQ="container.name",qGQ="container.id",MGQ="container.runtime",zGQ="container.image.name",RGQ="container.image.tag",wGQ="deployment.environment",jGQ="device.id",OGQ="device.model.identifier",PGQ="device.model.name",TGQ="faas.name",SGQ="faas.id",kGQ="faas.version",_GQ="faas.instance",vGQ="faas.max_memory",yGQ="host.id",hGQ="host.name",gGQ="host.type",xGQ="host.arch",fGQ="host.image.name",bGQ="host.image.id",mGQ="host.image.version",uGQ="k8s.cluster.name",dGQ="k8s.node.name",cGQ="k8s.node.uid",lGQ="k8s.namespace.name",pGQ="k8s.pod.uid",iGQ="k8s.pod.name",nGQ="k8s.container.name",sGQ="k8s.replicaset.uid",rGQ="k8s.replicaset.name",aGQ="k8s.deployment.uid",oGQ="k8s.deployment.name",tGQ="k8s.statefulset.uid",eGQ="k8s.statefulset.name",A7Q="k8s.daemonset.uid",Q7Q="k8s.daemonset.name",B7Q="k8s.job.uid",Y7Q="k8s.job.name",J7Q="k8s.cronjob.uid",C7Q="k8s.cronjob.name",X7Q="os.type",G7Q="os.description",F7Q="os.name",W7Q="os.version",Z7Q="process.pid",$7Q="process.executable.name",U7Q="process.executable.path",E7Q="process.command",K7Q="process.command_line",V7Q="process.command_args",I7Q="process.owner",H7Q="process.runtime.name",D7Q="process.runtime.version",N7Q="process.runtime.description",L7Q="service.name",q7Q="service.namespace",M7Q="service.instance.id",z7Q="service.version",R7Q="telemetry.sdk.name",w7Q="telemetry.sdk.language",j7Q="telemetry.sdk.version",O7Q="telemetry.auto.version",P7Q="webengine.name",T7Q="webengine.version",S7Q="webengine.description";PFQ.SEMRESATTRS_CLOUD_PROVIDER=JGQ;PFQ.SEMRESATTRS_CLOUD_ACCOUNT_ID=CGQ;PFQ.SEMRESATTRS_CLOUD_REGION=XGQ;PFQ.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=GGQ;PFQ.SEMRESATTRS_CLOUD_PLATFORM=FGQ;PFQ.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=WGQ;PFQ.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=ZGQ;PFQ.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=$GQ;PFQ.SEMRESATTRS_AWS_ECS_TASK_ARN=UGQ;PFQ.SEMRESATTRS_AWS_ECS_TASK_FAMILY=EGQ;PFQ.SEMRESATTRS_AWS_ECS_TASK_REVISION=KGQ;PFQ.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=VGQ;PFQ.SEMRESATTRS_AWS_LOG_GROUP_NAMES=IGQ;PFQ.SEMRESATTRS_AWS_LOG_GROUP_ARNS=HGQ;PFQ.SEMRESATTRS_AWS_LOG_STREAM_NAMES=DGQ;PFQ.SEMRESATTRS_AWS_LOG_STREAM_ARNS=NGQ;PFQ.SEMRESATTRS_CONTAINER_NAME=LGQ;PFQ.SEMRESATTRS_CONTAINER_ID=qGQ;PFQ.SEMRESATTRS_CONTAINER_RUNTIME=MGQ;PFQ.SEMRESATTRS_CONTAINER_IMAGE_NAME=zGQ;PFQ.SEMRESATTRS_CONTAINER_IMAGE_TAG=RGQ;PFQ.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=wGQ;PFQ.SEMRESATTRS_DEVICE_ID=jGQ;PFQ.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=OGQ;PFQ.SEMRESATTRS_DEVICE_MODEL_NAME=PGQ;PFQ.SEMRESATTRS_FAAS_NAME=TGQ;PFQ.SEMRESATTRS_FAAS_ID=SGQ;PFQ.SEMRESATTRS_FAAS_VERSION=kGQ;PFQ.SEMRESATTRS_FAAS_INSTANCE=_GQ;PFQ.SEMRESATTRS_FAAS_MAX_MEMORY=vGQ;PFQ.SEMRESATTRS_HOST_ID=yGQ;PFQ.SEMRESATTRS_HOST_NAME=hGQ;PFQ.SEMRESATTRS_HOST_TYPE=gGQ;PFQ.SEMRESATTRS_HOST_ARCH=xGQ;PFQ.SEMRESATTRS_HOST_IMAGE_NAME=fGQ;PFQ.SEMRESATTRS_HOST_IMAGE_ID=bGQ;PFQ.SEMRESATTRS_HOST_IMAGE_VERSION=mGQ;PFQ.SEMRESATTRS_K8S_CLUSTER_NAME=uGQ;PFQ.SEMRESATTRS_K8S_NODE_NAME=dGQ;PFQ.SEMRESATTRS_K8S_NODE_UID=cGQ;PFQ.SEMRESATTRS_K8S_NAMESPACE_NAME=lGQ;PFQ.SEMRESATTRS_K8S_POD_UID=pGQ;PFQ.SEMRESATTRS_K8S_POD_NAME=iGQ;PFQ.SEMRESATTRS_K8S_CONTAINER_NAME=nGQ;PFQ.SEMRESATTRS_K8S_REPLICASET_UID=sGQ;PFQ.SEMRESATTRS_K8S_REPLICASET_NAME=rGQ;PFQ.SEMRESATTRS_K8S_DEPLOYMENT_UID=aGQ;PFQ.SEMRESATTRS_K8S_DEPLOYMENT_NAME=oGQ;PFQ.SEMRESATTRS_K8S_STATEFULSET_UID=tGQ;PFQ.SEMRESATTRS_K8S_STATEFULSET_NAME=eGQ;PFQ.SEMRESATTRS_K8S_DAEMONSET_UID=A7Q;PFQ.SEMRESATTRS_K8S_DAEMONSET_NAME=Q7Q;PFQ.SEMRESATTRS_K8S_JOB_UID=B7Q;PFQ.SEMRESATTRS_K8S_JOB_NAME=Y7Q;PFQ.SEMRESATTRS_K8S_CRONJOB_UID=J7Q;PFQ.SEMRESATTRS_K8S_CRONJOB_NAME=C7Q;PFQ.SEMRESATTRS_OS_TYPE=X7Q;PFQ.SEMRESATTRS_OS_DESCRIPTION=G7Q;PFQ.SEMRESATTRS_OS_NAME=F7Q;PFQ.SEMRESATTRS_OS_VERSION=W7Q;PFQ.SEMRESATTRS_PROCESS_PID=Z7Q;PFQ.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=$7Q;PFQ.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=U7Q;PFQ.SEMRESATTRS_PROCESS_COMMAND=E7Q;PFQ.SEMRESATTRS_PROCESS_COMMAND_LINE=K7Q;PFQ.SEMRESATTRS_PROCESS_COMMAND_ARGS=V7Q;PFQ.SEMRESATTRS_PROCESS_OWNER=I7Q;PFQ.SEMRESATTRS_PROCESS_RUNTIME_NAME=H7Q;PFQ.SEMRESATTRS_PROCESS_RUNTIME_VERSION=D7Q;PFQ.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=N7Q;PFQ.SEMRESATTRS_SERVICE_NAME=L7Q;PFQ.SEMRESATTRS_SERVICE_NAMESPACE=q7Q;PFQ.SEMRESATTRS_SERVICE_INSTANCE_ID=M7Q;PFQ.SEMRESATTRS_SERVICE_VERSION=z7Q;PFQ.SEMRESATTRS_TELEMETRY_SDK_NAME=R7Q;PFQ.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=w7Q;PFQ.SEMRESATTRS_TELEMETRY_SDK_VERSION=j7Q;PFQ.SEMRESATTRS_TELEMETRY_AUTO_VERSION=O7Q;PFQ.SEMRESATTRS_WEBENGINE_NAME=P7Q;PFQ.SEMRESATTRS_WEBENGINE_VERSION=T7Q;PFQ.SEMRESATTRS_WEBENGINE_DESCRIPTION=S7Q;PFQ.SemanticResourceAttributes=(0,Z$.createConstMap)([JGQ,CGQ,XGQ,GGQ,FGQ,WGQ,ZGQ,$GQ,UGQ,EGQ,KGQ,VGQ,IGQ,HGQ,DGQ,NGQ,LGQ,qGQ,MGQ,zGQ,RGQ,wGQ,jGQ,OGQ,PGQ,TGQ,SGQ,kGQ,_GQ,vGQ,yGQ,hGQ,gGQ,xGQ,fGQ,bGQ,mGQ,uGQ,dGQ,cGQ,lGQ,pGQ,iGQ,nGQ,sGQ,rGQ,aGQ,oGQ,tGQ,eGQ,A7Q,Q7Q,B7Q,Y7Q,J7Q,C7Q,X7Q,G7Q,F7Q,W7Q,Z7Q,$7Q,U7Q,E7Q,K7Q,V7Q,I7Q,H7Q,D7Q,N7Q,L7Q,q7Q,M7Q,z7Q,R7Q,w7Q,j7Q,O7Q,P7Q,T7Q,S7Q]);var k7Q="alibaba_cloud",_7Q="aws",v7Q="azure",y7Q="gcp";PFQ.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=k7Q;PFQ.CLOUDPROVIDERVALUES_AWS=_7Q;PFQ.CLOUDPROVIDERVALUES_AZURE=v7Q;PFQ.CLOUDPROVIDERVALUES_GCP=y7Q;PFQ.CloudProviderValues=(0,Z$.createConstMap)([k7Q,_7Q,v7Q,y7Q]);var h7Q="alibaba_cloud_ecs",g7Q="alibaba_cloud_fc",x7Q="aws_ec2",f7Q="aws_ecs",b7Q="aws_eks",m7Q="aws_lambda",u7Q="aws_elastic_beanstalk",d7Q="azure_vm",c7Q="azure_container_instances",l7Q="azure_aks",p7Q="azure_functions",i7Q="azure_app_service",n7Q="gcp_compute_engine",s7Q="gcp_cloud_run",r7Q="gcp_kubernetes_engine",a7Q="gcp_cloud_functions",o7Q="gcp_app_engine";PFQ.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=h7Q;PFQ.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=g7Q;PFQ.CLOUDPLATFORMVALUES_AWS_EC2=x7Q;PFQ.CLOUDPLATFORMVALUES_AWS_ECS=f7Q;PFQ.CLOUDPLATFORMVALUES_AWS_EKS=b7Q;PFQ.CLOUDPLATFORMVALUES_AWS_LAMBDA=m7Q;PFQ.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=u7Q;PFQ.CLOUDPLATFORMVALUES_AZURE_VM=d7Q;PFQ.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=c7Q;PFQ.CLOUDPLATFORMVALUES_AZURE_AKS=l7Q;PFQ.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=p7Q;PFQ.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=i7Q;PFQ.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=n7Q;PFQ.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=s7Q;PFQ.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=r7Q;PFQ.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=a7Q;PFQ.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=o7Q;PFQ.CloudPlatformValues=(0,Z$.createConstMap)([h7Q,g7Q,x7Q,f7Q,b7Q,m7Q,u7Q,d7Q,c7Q,l7Q,p7Q,i7Q,n7Q,s7Q,r7Q,a7Q,o7Q]);var t7Q="ec2",e7Q="fargate";PFQ.AWSECSLAUNCHTYPEVALUES_EC2=t7Q;PFQ.AWSECSLAUNCHTYPEVALUES_FARGATE=e7Q;PFQ.AwsEcsLaunchtypeValues=(0,Z$.createConstMap)([t7Q,e7Q]);var AFQ="amd64",QFQ="arm32",BFQ="arm64",YFQ="ia64",JFQ="ppc32",CFQ="ppc64",XFQ="x86";PFQ.HOSTARCHVALUES_AMD64=AFQ;PFQ.HOSTARCHVALUES_ARM32=QFQ;PFQ.HOSTARCHVALUES_ARM64=BFQ;PFQ.HOSTARCHVALUES_IA64=YFQ;PFQ.HOSTARCHVALUES_PPC32=JFQ;PFQ.HOSTARCHVALUES_PPC64=CFQ;PFQ.HOSTARCHVALUES_X86=XFQ;PFQ.HostArchValues=(0,Z$.createConstMap)([AFQ,QFQ,BFQ,YFQ,JFQ,CFQ,XFQ]);var GFQ="windows",FFQ="linux",WFQ="darwin",ZFQ="freebsd",$FQ="netbsd",UFQ="openbsd",EFQ="dragonflybsd",KFQ="hpux",VFQ="aix",IFQ="solaris",HFQ="z_os";PFQ.OSTYPEVALUES_WINDOWS=GFQ;PFQ.OSTYPEVALUES_LINUX=FFQ;PFQ.OSTYPEVALUES_DARWIN=WFQ;PFQ.OSTYPEVALUES_FREEBSD=ZFQ;PFQ.OSTYPEVALUES_NETBSD=$FQ;PFQ.OSTYPEVALUES_OPENBSD=UFQ;PFQ.OSTYPEVALUES_DRAGONFLYBSD=EFQ;PFQ.OSTYPEVALUES_HPUX=KFQ;PFQ.OSTYPEVALUES_AIX=VFQ;PFQ.OSTYPEVALUES_SOLARIS=IFQ;PFQ.OSTYPEVALUES_Z_OS=HFQ;PFQ.OsTypeValues=(0,Z$.createConstMap)([GFQ,FFQ,WFQ,ZFQ,$FQ,UFQ,EFQ,KFQ,VFQ,IFQ,HFQ]);var DFQ="cpp",NFQ="dotnet",LFQ="erlang",qFQ="go",MFQ="java",zFQ="nodejs",RFQ="php",wFQ="python",jFQ="ruby",OFQ="webjs";PFQ.TELEMETRYSDKLANGUAGEVALUES_CPP=DFQ;PFQ.TELEMETRYSDKLANGUAGEVALUES_DOTNET=NFQ;PFQ.TELEMETRYSDKLANGUAGEVALUES_ERLANG=LFQ;PFQ.TELEMETRYSDKLANGUAGEVALUES_GO=qFQ;PFQ.TELEMETRYSDKLANGUAGEVALUES_JAVA=MFQ;PFQ.TELEMETRYSDKLANGUAGEVALUES_NODEJS=zFQ;PFQ.TELEMETRYSDKLANGUAGEVALUES_PHP=RFQ;PFQ.TELEMETRYSDKLANGUAGEVALUES_PYTHON=wFQ;PFQ.TELEMETRYSDKLANGUAGEVALUES_RUBY=jFQ;PFQ.TELEMETRYSDKLANGUAGEVALUES_WEBJS=OFQ;PFQ.TelemetrySdkLanguageValues=(0,Z$.createConstMap)([DFQ,NFQ,LFQ,qFQ,MFQ,zFQ,RFQ,wFQ,jFQ,OFQ])});var vFQ=R(($$)=>{var AU0=$$&&$$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),QU0=$$&&$$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))AU0(Q,A,B)};Object.defineProperty($$,"__esModule",{value:!0});QU0(_FQ(),$$)});var fFQ=R((yFQ)=>{Object.defineProperty(yFQ,"__esModule",{value:!0});yFQ.HTTP_REQUEST_METHOD_VALUE_POST=yFQ.HTTP_REQUEST_METHOD_VALUE_PATCH=yFQ.HTTP_REQUEST_METHOD_VALUE_OPTIONS=yFQ.HTTP_REQUEST_METHOD_VALUE_HEAD=yFQ.HTTP_REQUEST_METHOD_VALUE_GET=yFQ.HTTP_REQUEST_METHOD_VALUE_DELETE=yFQ.HTTP_REQUEST_METHOD_VALUE_CONNECT=yFQ.HTTP_REQUEST_METHOD_VALUE_OTHER=yFQ.ATTR_HTTP_REQUEST_METHOD=yFQ.ATTR_HTTP_REQUEST_HEADER=yFQ.ATTR_EXCEPTION_TYPE=yFQ.ATTR_EXCEPTION_STACKTRACE=yFQ.ATTR_EXCEPTION_MESSAGE=yFQ.ATTR_EXCEPTION_ESCAPED=yFQ.ERROR_TYPE_VALUE_OTHER=yFQ.ATTR_ERROR_TYPE=yFQ.ATTR_CLIENT_PORT=yFQ.ATTR_CLIENT_ADDRESS=yFQ.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS=yFQ.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE=yFQ.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS=yFQ.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK=yFQ.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED=yFQ.ATTR_ASPNETCORE_RATE_LIMITING_POLICY=yFQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED=yFQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED=yFQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED=yFQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED=yFQ.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT=yFQ.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE=yFQ.ATTR_TELEMETRY_SDK_VERSION=yFQ.ATTR_TELEMETRY_SDK_NAME=yFQ.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS=yFQ.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT=yFQ.TELEMETRY_SDK_LANGUAGE_VALUE_RUST=yFQ.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY=yFQ.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON=yFQ.TELEMETRY_SDK_LANGUAGE_VALUE_PHP=yFQ.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS=yFQ.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA=yFQ.TELEMETRY_SDK_LANGUAGE_VALUE_GO=yFQ.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG=yFQ.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET=yFQ.TELEMETRY_SDK_LANGUAGE_VALUE_CPP=yFQ.ATTR_TELEMETRY_SDK_LANGUAGE=yFQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED=yFQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER=yFQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER=yFQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED=yFQ.ATTR_ASPNETCORE_RATE_LIMITING_RESULT=void 0;yFQ.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT=yFQ.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE=yFQ.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN=yFQ.ATTR_SIGNALR_CONNECTION_STATUS=yFQ.ATTR_SERVICE_VERSION=yFQ.ATTR_SERVICE_NAME=yFQ.ATTR_SERVER_PORT=yFQ.ATTR_SERVER_ADDRESS=yFQ.ATTR_OTEL_STATUS_DESCRIPTION=yFQ.OTEL_STATUS_CODE_VALUE_OK=yFQ.OTEL_STATUS_CODE_VALUE_ERROR=yFQ.ATTR_OTEL_STATUS_CODE=yFQ.ATTR_OTEL_SCOPE_VERSION=yFQ.ATTR_OTEL_SCOPE_NAME=yFQ.NETWORK_TYPE_VALUE_IPV6=yFQ.NETWORK_TYPE_VALUE_IPV4=yFQ.ATTR_NETWORK_TYPE=yFQ.NETWORK_TRANSPORT_VALUE_UNIX=yFQ.NETWORK_TRANSPORT_VALUE_UDP=yFQ.NETWORK_TRANSPORT_VALUE_TCP=yFQ.NETWORK_TRANSPORT_VALUE_QUIC=yFQ.NETWORK_TRANSPORT_VALUE_PIPE=yFQ.ATTR_NETWORK_TRANSPORT=yFQ.ATTR_NETWORK_PROTOCOL_VERSION=yFQ.ATTR_NETWORK_PROTOCOL_NAME=yFQ.ATTR_NETWORK_PEER_PORT=yFQ.ATTR_NETWORK_PEER_ADDRESS=yFQ.ATTR_NETWORK_LOCAL_PORT=yFQ.ATTR_NETWORK_LOCAL_ADDRESS=yFQ.JVM_THREAD_STATE_VALUE_WAITING=yFQ.JVM_THREAD_STATE_VALUE_TIMED_WAITING=yFQ.JVM_THREAD_STATE_VALUE_TERMINATED=yFQ.JVM_THREAD_STATE_VALUE_RUNNABLE=yFQ.JVM_THREAD_STATE_VALUE_NEW=yFQ.JVM_THREAD_STATE_VALUE_BLOCKED=yFQ.ATTR_JVM_THREAD_STATE=yFQ.ATTR_JVM_THREAD_DAEMON=yFQ.JVM_MEMORY_TYPE_VALUE_NON_HEAP=yFQ.JVM_MEMORY_TYPE_VALUE_HEAP=yFQ.ATTR_JVM_MEMORY_TYPE=yFQ.ATTR_JVM_MEMORY_POOL_NAME=yFQ.ATTR_JVM_GC_NAME=yFQ.ATTR_JVM_GC_ACTION=yFQ.ATTR_HTTP_ROUTE=yFQ.ATTR_HTTP_RESPONSE_STATUS_CODE=yFQ.ATTR_HTTP_RESPONSE_HEADER=yFQ.ATTR_HTTP_REQUEST_RESEND_COUNT=yFQ.ATTR_HTTP_REQUEST_METHOD_ORIGINAL=yFQ.HTTP_REQUEST_METHOD_VALUE_TRACE=yFQ.HTTP_REQUEST_METHOD_VALUE_PUT=void 0;yFQ.ATTR_USER_AGENT_ORIGINAL=yFQ.ATTR_URL_SCHEME=yFQ.ATTR_URL_QUERY=yFQ.ATTR_URL_PATH=yFQ.ATTR_URL_FULL=yFQ.ATTR_URL_FRAGMENT=yFQ.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS=yFQ.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS=yFQ.SIGNALR_TRANSPORT_VALUE_LONG_POLLING=yFQ.ATTR_SIGNALR_TRANSPORT=void 0;yFQ.ATTR_ASPNETCORE_RATE_LIMITING_RESULT="aspnetcore.rate_limiting.result";yFQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED="acquired";yFQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER="endpoint_limiter";yFQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER="global_limiter";yFQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED="request_canceled";yFQ.ATTR_TELEMETRY_SDK_LANGUAGE="telemetry.sdk.language";yFQ.TELEMETRY_SDK_LANGUAGE_VALUE_CPP="cpp";yFQ.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET="dotnet";yFQ.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG="erlang";yFQ.TELEMETRY_SDK_LANGUAGE_VALUE_GO="go";yFQ.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA="java";yFQ.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS="nodejs";yFQ.TELEMETRY_SDK_LANGUAGE_VALUE_PHP="php";yFQ.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON="python";yFQ.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY="ruby";yFQ.TELEMETRY_SDK_LANGUAGE_VALUE_RUST="rust";yFQ.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT="swift";yFQ.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS="webjs";yFQ.ATTR_TELEMETRY_SDK_NAME="telemetry.sdk.name";yFQ.ATTR_TELEMETRY_SDK_VERSION="telemetry.sdk.version";yFQ.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE="aspnetcore.diagnostics.handler.type";yFQ.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT="aspnetcore.diagnostics.exception.result";yFQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED="aborted";yFQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED="handled";yFQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED="skipped";yFQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED="unhandled";yFQ.ATTR_ASPNETCORE_RATE_LIMITING_POLICY="aspnetcore.rate_limiting.policy";yFQ.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED="aspnetcore.request.is_unhandled";yFQ.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK="aspnetcore.routing.is_fallback";yFQ.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS="aspnetcore.routing.match_status";yFQ.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE="failure";yFQ.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS="success";yFQ.ATTR_CLIENT_ADDRESS="client.address";yFQ.ATTR_CLIENT_PORT="client.port";yFQ.ATTR_ERROR_TYPE="error.type";yFQ.ERROR_TYPE_VALUE_OTHER="_OTHER";yFQ.ATTR_EXCEPTION_ESCAPED="exception.escaped";yFQ.ATTR_EXCEPTION_MESSAGE="exception.message";yFQ.ATTR_EXCEPTION_STACKTRACE="exception.stacktrace";yFQ.ATTR_EXCEPTION_TYPE="exception.type";var BU0=(A)=>`http.request.header.${A}`;yFQ.ATTR_HTTP_REQUEST_HEADER=BU0;yFQ.ATTR_HTTP_REQUEST_METHOD="http.request.method";yFQ.HTTP_REQUEST_METHOD_VALUE_OTHER="_OTHER";yFQ.HTTP_REQUEST_METHOD_VALUE_CONNECT="CONNECT";yFQ.HTTP_REQUEST_METHOD_VALUE_DELETE="DELETE";yFQ.HTTP_REQUEST_METHOD_VALUE_GET="GET";yFQ.HTTP_REQUEST_METHOD_VALUE_HEAD="HEAD";yFQ.HTTP_REQUEST_METHOD_VALUE_OPTIONS="OPTIONS";yFQ.HTTP_REQUEST_METHOD_VALUE_PATCH="PATCH";yFQ.HTTP_REQUEST_METHOD_VALUE_POST="POST";yFQ.HTTP_REQUEST_METHOD_VALUE_PUT="PUT";yFQ.HTTP_REQUEST_METHOD_VALUE_TRACE="TRACE";yFQ.ATTR_HTTP_REQUEST_METHOD_ORIGINAL="http.request.method_original";yFQ.ATTR_HTTP_REQUEST_RESEND_COUNT="http.request.resend_count";var YU0=(A)=>`http.response.header.${A}`;yFQ.ATTR_HTTP_RESPONSE_HEADER=YU0;yFQ.ATTR_HTTP_RESPONSE_STATUS_CODE="http.response.status_code";yFQ.ATTR_HTTP_ROUTE="http.route";yFQ.ATTR_JVM_GC_ACTION="jvm.gc.action";yFQ.ATTR_JVM_GC_NAME="jvm.gc.name";yFQ.ATTR_JVM_MEMORY_POOL_NAME="jvm.memory.pool.name";yFQ.ATTR_JVM_MEMORY_TYPE="jvm.memory.type";yFQ.JVM_MEMORY_TYPE_VALUE_HEAP="heap";yFQ.JVM_MEMORY_TYPE_VALUE_NON_HEAP="non_heap";yFQ.ATTR_JVM_THREAD_DAEMON="jvm.thread.daemon";yFQ.ATTR_JVM_THREAD_STATE="jvm.thread.state";yFQ.JVM_THREAD_STATE_VALUE_BLOCKED="blocked";yFQ.JVM_THREAD_STATE_VALUE_NEW="new";yFQ.JVM_THREAD_STATE_VALUE_RUNNABLE="runnable";yFQ.JVM_THREAD_STATE_VALUE_TERMINATED="terminated";yFQ.JVM_THREAD_STATE_VALUE_TIMED_WAITING="timed_waiting";yFQ.JVM_THREAD_STATE_VALUE_WAITING="waiting";yFQ.ATTR_NETWORK_LOCAL_ADDRESS="network.local.address";yFQ.ATTR_NETWORK_LOCAL_PORT="network.local.port";yFQ.ATTR_NETWORK_PEER_ADDRESS="network.peer.address";yFQ.ATTR_NETWORK_PEER_PORT="network.peer.port";yFQ.ATTR_NETWORK_PROTOCOL_NAME="network.protocol.name";yFQ.ATTR_NETWORK_PROTOCOL_VERSION="network.protocol.version";yFQ.ATTR_NETWORK_TRANSPORT="network.transport";yFQ.NETWORK_TRANSPORT_VALUE_PIPE="pipe";yFQ.NETWORK_TRANSPORT_VALUE_QUIC="quic";yFQ.NETWORK_TRANSPORT_VALUE_TCP="tcp";yFQ.NETWORK_TRANSPORT_VALUE_UDP="udp";yFQ.NETWORK_TRANSPORT_VALUE_UNIX="unix";yFQ.ATTR_NETWORK_TYPE="network.type";yFQ.NETWORK_TYPE_VALUE_IPV4="ipv4";yFQ.NETWORK_TYPE_VALUE_IPV6="ipv6";yFQ.ATTR_OTEL_SCOPE_NAME="otel.scope.name";yFQ.ATTR_OTEL_SCOPE_VERSION="otel.scope.version";yFQ.ATTR_OTEL_STATUS_CODE="otel.status_code";yFQ.OTEL_STATUS_CODE_VALUE_ERROR="ERROR";yFQ.OTEL_STATUS_CODE_VALUE_OK="OK";yFQ.ATTR_OTEL_STATUS_DESCRIPTION="otel.status_description";yFQ.ATTR_SERVER_ADDRESS="server.address";yFQ.ATTR_SERVER_PORT="server.port";yFQ.ATTR_SERVICE_NAME="service.name";yFQ.ATTR_SERVICE_VERSION="service.version";yFQ.ATTR_SIGNALR_CONNECTION_STATUS="signalr.connection.status";yFQ.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN="app_shutdown";yFQ.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE="normal_closure";yFQ.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT="timeout";yFQ.ATTR_SIGNALR_TRANSPORT="signalr.transport";yFQ.SIGNALR_TRANSPORT_VALUE_LONG_POLLING="long_polling";yFQ.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS="server_sent_events";yFQ.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS="web_sockets";yFQ.ATTR_URL_FRAGMENT="url.fragment";yFQ.ATTR_URL_FULL="url.full";yFQ.ATTR_URL_PATH="url.path";yFQ.ATTR_URL_QUERY="url.query";yFQ.ATTR_URL_SCHEME="url.scheme";yFQ.ATTR_USER_AGENT_ORIGINAL="user_agent.original"});var uFQ=R((bFQ)=>{Object.defineProperty(bFQ,"__esModule",{value:!0});bFQ.METRIC_SIGNALR_SERVER_CONNECTION_DURATION=bFQ.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS=bFQ.METRIC_KESTREL_UPGRADED_CONNECTIONS=bFQ.METRIC_KESTREL_TLS_HANDSHAKE_DURATION=bFQ.METRIC_KESTREL_REJECTED_CONNECTIONS=bFQ.METRIC_KESTREL_QUEUED_REQUESTS=bFQ.METRIC_KESTREL_QUEUED_CONNECTIONS=bFQ.METRIC_KESTREL_CONNECTION_DURATION=bFQ.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES=bFQ.METRIC_KESTREL_ACTIVE_CONNECTIONS=bFQ.METRIC_JVM_THREAD_COUNT=bFQ.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC=bFQ.METRIC_JVM_MEMORY_USED=bFQ.METRIC_JVM_MEMORY_LIMIT=bFQ.METRIC_JVM_MEMORY_COMMITTED=bFQ.METRIC_JVM_GC_DURATION=bFQ.METRIC_JVM_CPU_TIME=bFQ.METRIC_JVM_CPU_RECENT_UTILIZATION=bFQ.METRIC_JVM_CPU_COUNT=bFQ.METRIC_JVM_CLASS_UNLOADED=bFQ.METRIC_JVM_CLASS_LOADED=bFQ.METRIC_JVM_CLASS_COUNT=bFQ.METRIC_HTTP_SERVER_REQUEST_DURATION=bFQ.METRIC_HTTP_CLIENT_REQUEST_DURATION=bFQ.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS=bFQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS=bFQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION=bFQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE=bFQ.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS=bFQ.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES=bFQ.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS=void 0;bFQ.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS="aspnetcore.diagnostics.exceptions";bFQ.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES="aspnetcore.rate_limiting.active_request_leases";bFQ.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS="aspnetcore.rate_limiting.queued_requests";bFQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE="aspnetcore.rate_limiting.request.time_in_queue";bFQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION="aspnetcore.rate_limiting.request_lease.duration";bFQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS="aspnetcore.rate_limiting.requests";bFQ.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS="aspnetcore.routing.match_attempts";bFQ.METRIC_HTTP_CLIENT_REQUEST_DURATION="http.client.request.duration";bFQ.METRIC_HTTP_SERVER_REQUEST_DURATION="http.server.request.duration";bFQ.METRIC_JVM_CLASS_COUNT="jvm.class.count";bFQ.METRIC_JVM_CLASS_LOADED="jvm.class.loaded";bFQ.METRIC_JVM_CLASS_UNLOADED="jvm.class.unloaded";bFQ.METRIC_JVM_CPU_COUNT="jvm.cpu.count";bFQ.METRIC_JVM_CPU_RECENT_UTILIZATION="jvm.cpu.recent_utilization";bFQ.METRIC_JVM_CPU_TIME="jvm.cpu.time";bFQ.METRIC_JVM_GC_DURATION="jvm.gc.duration";bFQ.METRIC_JVM_MEMORY_COMMITTED="jvm.memory.committed";bFQ.METRIC_JVM_MEMORY_LIMIT="jvm.memory.limit";bFQ.METRIC_JVM_MEMORY_USED="jvm.memory.used";bFQ.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC="jvm.memory.used_after_last_gc";bFQ.METRIC_JVM_THREAD_COUNT="jvm.thread.count";bFQ.METRIC_KESTREL_ACTIVE_CONNECTIONS="kestrel.active_connections";bFQ.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES="kestrel.active_tls_handshakes";bFQ.METRIC_KESTREL_CONNECTION_DURATION="kestrel.connection.duration";bFQ.METRIC_KESTREL_QUEUED_CONNECTIONS="kestrel.queued_connections";bFQ.METRIC_KESTREL_QUEUED_REQUESTS="kestrel.queued_requests";bFQ.METRIC_KESTREL_REJECTED_CONNECTIONS="kestrel.rejected_connections";bFQ.METRIC_KESTREL_TLS_HANDSHAKE_DURATION="kestrel.tls_handshake.duration";bFQ.METRIC_KESTREL_UPGRADED_CONNECTIONS="kestrel.upgraded_connections";bFQ.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS="signalr.server.active_connections";bFQ.METRIC_SIGNALR_SERVER_CONNECTION_DURATION="signalr.server.connection.duration"});var FF=R((G6)=>{var vK0=G6&&G6.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),nO=G6&&G6.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))vK0(Q,A,B)};Object.defineProperty(G6,"__esModule",{value:!0});nO(YGQ(),G6);nO(vFQ(),G6);nO(fFQ(),G6);nO(uFQ(),G6)});var lFQ=R((dFQ)=>{Object.defineProperty(dFQ,"__esModule",{value:!0});dFQ.defaultServiceName=void 0;function yK0(){return`unknown_service:${process.argv0}`}dFQ.defaultServiceName=yK0});var pFQ=R((sp)=>{Object.defineProperty(sp,"__esModule",{value:!0});sp.defaultServiceName=void 0;var hK0=lFQ();Object.defineProperty(sp,"defaultServiceName",{enumerable:!0,get:function(){return hK0.defaultServiceName}})});var ap=R((rp)=>{Object.defineProperty(rp,"__esModule",{value:!0});rp.defaultServiceName=void 0;var xK0=pFQ();Object.defineProperty(rp,"defaultServiceName",{enumerable:!0,get:function(){return xK0.defaultServiceName}})});var YG=R((nFQ)=>{Object.defineProperty(nFQ,"__esModule",{value:!0});nFQ.Resource=void 0;var iFQ=yA(),U$=FF(),op=MB(),bK0=ap();class WF{constructor(A,Q){var B;this._attributes=A,this.asyncAttributesPending=Q!=null,this._syncAttributes=(B=this._attributes)!==null&&B!==void 0?B:{},this._asyncAttributesPromise=Q===null||Q===void 0?void 0:Q.then((Y)=>{return this._attributes=Object.assign({},this._attributes,Y),this.asyncAttributesPending=!1,Y},(Y)=>{return iFQ.diag.debug("a resource's async attributes promise rejected: %s",Y),this.asyncAttributesPending=!1,{}})}static empty(){return WF.EMPTY}static default(){return new WF({[U$.SEMRESATTRS_SERVICE_NAME]:(0,bK0.defaultServiceName)(),[U$.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE]:op.SDK_INFO[U$.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE],[U$.SEMRESATTRS_TELEMETRY_SDK_NAME]:op.SDK_INFO[U$.SEMRESATTRS_TELEMETRY_SDK_NAME],[U$.SEMRESATTRS_TELEMETRY_SDK_VERSION]:op.SDK_INFO[U$.SEMRESATTRS_TELEMETRY_SDK_VERSION]})}get attributes(){var A;if(this.asyncAttributesPending)iFQ.diag.error("Accessing resource attributes before async attributes settled");return(A=this._attributes)!==null&&A!==void 0?A:{}}async waitForAsyncAttributes(){if(this.asyncAttributesPending)await this._asyncAttributesPromise}merge(A){var Q;if(!A)return this;let B=Object.assign(Object.assign({},this._syncAttributes),(Q=A._syncAttributes)!==null&&Q!==void 0?Q:A.attributes);if(!this._asyncAttributesPromise&&!A._asyncAttributesPromise)return new WF(B);let Y=Promise.all([this._asyncAttributesPromise,A._asyncAttributesPromise]).then(([J,C])=>{var X;return Object.assign(Object.assign(Object.assign(Object.assign({},this._syncAttributes),J),(X=A._syncAttributes)!==null&&X!==void 0?X:A.attributes),C)});return new WF(B,Y)}}nFQ.Resource=WF;WF.EMPTY=new WF({})});var tp=R((rFQ)=>{Object.defineProperty(rFQ,"__esModule",{value:!0});rFQ.normalizeType=rFQ.normalizeArch=void 0;var mK0=(A)=>{switch(A){case"arm":return"arm32";case"ppc":return"ppc32";case"x64":return"amd64";default:return A}};rFQ.normalizeArch=mK0;var uK0=(A)=>{switch(A){case"sunos":return"solaris";case"win32":return"windows";default:return A}};rFQ.normalizeType=uK0});var sO=R((oFQ)=>{Object.defineProperty(oFQ,"__esModule",{value:!0});oFQ.execAsync=void 0;var cK0=u("child_process"),lK0=u("util");oFQ.execAsync=lK0.promisify(cK0.exec)});var QWQ=R((eFQ)=>{Object.defineProperty(eFQ,"__esModule",{value:!0});eFQ.getMachineId=void 0;var pK0=sO(),iK0=yA();async function nK0(){try{let Q=(await(0,pK0.execAsync)('ioreg -rd1 -c "IOPlatformExpertDevice"')).stdout.split(` -`).find((Y)=>Y.includes("IOPlatformUUID"));if(!Q)return"";let B=Q.split('" = "');if(B.length===2)return B[1].slice(0,-1)}catch(A){iK0.diag.debug(`error reading machine id: ${A}`)}return""}eFQ.getMachineId=nK0});var JWQ=R((BWQ)=>{Object.defineProperty(BWQ,"__esModule",{value:!0});BWQ.getMachineId=void 0;var sK0=u("fs"),rK0=yA();async function aK0(){let A=["/etc/machine-id","/var/lib/dbus/machine-id"];for(let Q of A)try{return(await sK0.promises.readFile(Q,{encoding:"utf8"})).trim()}catch(B){rK0.diag.debug(`error reading machine id: ${B}`)}return""}BWQ.getMachineId=aK0});var FWQ=R((XWQ)=>{Object.defineProperty(XWQ,"__esModule",{value:!0});XWQ.getMachineId=void 0;var oK0=u("fs"),tK0=sO(),CWQ=yA();async function eK0(){try{return(await oK0.promises.readFile("/etc/hostid",{encoding:"utf8"})).trim()}catch(A){CWQ.diag.debug(`error reading machine id: ${A}`)}try{return(await(0,tK0.execAsync)("kenv -q smbios.system.uuid")).stdout.trim()}catch(A){CWQ.diag.debug(`error reading machine id: ${A}`)}return""}XWQ.getMachineId=eK0});var UWQ=R((ZWQ)=>{Object.defineProperty(ZWQ,"__esModule",{value:!0});ZWQ.getMachineId=void 0;var WWQ=u("process"),AV0=sO(),QV0=yA();async function BV0(){let Q="%windir%\\System32\\REG.exe";if(WWQ.arch==="ia32"&&"PROCESSOR_ARCHITEW6432"in WWQ.env)Q="%windir%\\sysnative\\cmd.exe /c "+Q;try{let Y=(await(0,AV0.execAsync)(`${Q} QUERY HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Cryptography /v MachineGuid`)).stdout.split("REG_SZ");if(Y.length===2)return Y[1].trim()}catch(B){QV0.diag.debug(`error reading machine id: ${B}`)}return""}ZWQ.getMachineId=BV0});var VWQ=R((EWQ)=>{Object.defineProperty(EWQ,"__esModule",{value:!0});EWQ.getMachineId=void 0;var YV0=yA();async function JV0(){return YV0.diag.debug("could not read machine-id: unsupported platform"),""}EWQ.getMachineId=JV0});var HWQ=R((IWQ)=>{Object.defineProperty(IWQ,"__esModule",{value:!0});IWQ.getMachineId=void 0;var CV0=u("process"),WK;IWQ.getMachineId=WK;switch(CV0.platform){case"darwin":IWQ.getMachineId=WK=QWQ().getMachineId;break;case"linux":IWQ.getMachineId=WK=JWQ().getMachineId;break;case"freebsd":IWQ.getMachineId=WK=FWQ().getMachineId;break;case"win32":IWQ.getMachineId=WK=UWQ().getMachineId;break;default:IWQ.getMachineId=WK=VWQ().getMachineId}});var Ai=R((LWQ)=>{Object.defineProperty(LWQ,"__esModule",{value:!0});LWQ.hostDetectorSync=void 0;var ep=FF(),XV0=YG(),DWQ=u("os"),GV0=tp(),FV0=HWQ();class NWQ{detect(A){let Q={[ep.SEMRESATTRS_HOST_NAME]:(0,DWQ.hostname)(),[ep.SEMRESATTRS_HOST_ARCH]:(0,GV0.normalizeArch)((0,DWQ.arch)())};return new XV0.Resource(Q,this._getAsyncAttributes())}_getAsyncAttributes(){return(0,FV0.getMachineId)().then((A)=>{let Q={};if(A)Q[ep.SEMRESATTRS_HOST_ID]=A;return Q})}}LWQ.hostDetectorSync=new NWQ});var wWQ=R((zWQ)=>{Object.defineProperty(zWQ,"__esModule",{value:!0});zWQ.hostDetector=void 0;var WV0=Ai();class MWQ{detect(A){return Promise.resolve(WV0.hostDetectorSync.detect(A))}}zWQ.hostDetector=new MWQ});var Qi=R((TWQ)=>{Object.defineProperty(TWQ,"__esModule",{value:!0});TWQ.osDetectorSync=void 0;var jWQ=FF(),ZV0=YG(),OWQ=u("os"),$V0=tp();class PWQ{detect(A){let Q={[jWQ.SEMRESATTRS_OS_TYPE]:(0,$V0.normalizeType)((0,OWQ.platform)()),[jWQ.SEMRESATTRS_OS_VERSION]:(0,OWQ.release)()};return new ZV0.Resource(Q)}}TWQ.osDetectorSync=new PWQ});var yWQ=R((_WQ)=>{Object.defineProperty(_WQ,"__esModule",{value:!0});_WQ.osDetector=void 0;var UV0=Qi();class kWQ{detect(A){return Promise.resolve(UV0.osDetectorSync.detect(A))}}_WQ.osDetector=new kWQ});var Bi=R((gWQ)=>{Object.defineProperty(gWQ,"__esModule",{value:!0});gWQ.processDetectorSync=void 0;var EV0=yA(),JG=FF(),KV0=YG(),VV0=u("os");class hWQ{detect(A){let Q={[JG.SEMRESATTRS_PROCESS_PID]:process.pid,[JG.SEMRESATTRS_PROCESS_EXECUTABLE_NAME]:process.title,[JG.SEMRESATTRS_PROCESS_EXECUTABLE_PATH]:process.execPath,[JG.SEMRESATTRS_PROCESS_COMMAND_ARGS]:[process.argv[0],...process.execArgv,...process.argv.slice(1)],[JG.SEMRESATTRS_PROCESS_RUNTIME_VERSION]:process.versions.node,[JG.SEMRESATTRS_PROCESS_RUNTIME_NAME]:"nodejs",[JG.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION]:"Node.js"};if(process.argv.length>1)Q[JG.SEMRESATTRS_PROCESS_COMMAND]=process.argv[1];try{let B=VV0.userInfo();Q[JG.SEMRESATTRS_PROCESS_OWNER]=B.username}catch(B){EV0.diag.debug(`error obtaining process owner: ${B}`)}return new KV0.Resource(Q)}}gWQ.processDetectorSync=new hWQ});var uWQ=R((bWQ)=>{Object.defineProperty(bWQ,"__esModule",{value:!0});bWQ.processDetector=void 0;var IV0=Bi();class fWQ{detect(A){return Promise.resolve(IV0.processDetectorSync.detect(A))}}bWQ.processDetector=new fWQ});var pWQ=R((cWQ)=>{Object.defineProperty(cWQ,"__esModule",{value:!0});cWQ.serviceInstanceIdDetectorSync=void 0;var HV0=FF(),DV0=YG(),NV0=u("crypto");class dWQ{detect(A){let Q={[HV0.SEMRESATTRS_SERVICE_INSTANCE_ID]:(0,NV0.randomUUID)()};return new DV0.Resource(Q)}}cWQ.serviceInstanceIdDetectorSync=new dWQ});var iWQ=R((CG)=>{Object.defineProperty(CG,"__esModule",{value:!0});CG.serviceInstanceIdDetectorSync=CG.processDetectorSync=CG.processDetector=CG.osDetectorSync=CG.osDetector=CG.hostDetectorSync=CG.hostDetector=void 0;var LV0=wWQ();Object.defineProperty(CG,"hostDetector",{enumerable:!0,get:function(){return LV0.hostDetector}});var qV0=Ai();Object.defineProperty(CG,"hostDetectorSync",{enumerable:!0,get:function(){return qV0.hostDetectorSync}});var MV0=yWQ();Object.defineProperty(CG,"osDetector",{enumerable:!0,get:function(){return MV0.osDetector}});var zV0=Qi();Object.defineProperty(CG,"osDetectorSync",{enumerable:!0,get:function(){return zV0.osDetectorSync}});var RV0=uWQ();Object.defineProperty(CG,"processDetector",{enumerable:!0,get:function(){return RV0.processDetector}});var wV0=Bi();Object.defineProperty(CG,"processDetectorSync",{enumerable:!0,get:function(){return wV0.processDetectorSync}});var jV0=pWQ();Object.defineProperty(CG,"serviceInstanceIdDetectorSync",{enumerable:!0,get:function(){return jV0.serviceInstanceIdDetectorSync}})});var nWQ=R((XG)=>{Object.defineProperty(XG,"__esModule",{value:!0});XG.serviceInstanceIdDetectorSync=XG.processDetectorSync=XG.processDetector=XG.osDetectorSync=XG.osDetector=XG.hostDetectorSync=XG.hostDetector=void 0;var K$=iWQ();Object.defineProperty(XG,"hostDetector",{enumerable:!0,get:function(){return K$.hostDetector}});Object.defineProperty(XG,"hostDetectorSync",{enumerable:!0,get:function(){return K$.hostDetectorSync}});Object.defineProperty(XG,"osDetector",{enumerable:!0,get:function(){return K$.osDetector}});Object.defineProperty(XG,"osDetectorSync",{enumerable:!0,get:function(){return K$.osDetectorSync}});Object.defineProperty(XG,"processDetector",{enumerable:!0,get:function(){return K$.processDetector}});Object.defineProperty(XG,"processDetectorSync",{enumerable:!0,get:function(){return K$.processDetectorSync}});Object.defineProperty(XG,"serviceInstanceIdDetectorSync",{enumerable:!0,get:function(){return K$.serviceInstanceIdDetectorSync}})});var Ji=R((rWQ)=>{Object.defineProperty(rWQ,"__esModule",{value:!0});rWQ.browserDetectorSync=void 0;var rO=FF(),TV0=yA(),Yi=YG();class sWQ{detect(A){var Q,B,Y;if(!(typeof navigator<"u"&&((B=(Q=global.process)===null||Q===void 0?void 0:Q.versions)===null||B===void 0?void 0:B.node)===void 0&&((Y=global.Bun)===null||Y===void 0?void 0:Y.version)===void 0))return Yi.Resource.empty();let C={[rO.SEMRESATTRS_PROCESS_RUNTIME_NAME]:"browser",[rO.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION]:"Web Browser",[rO.SEMRESATTRS_PROCESS_RUNTIME_VERSION]:navigator.userAgent};return this._getResourceAttributes(C,A)}_getResourceAttributes(A,Q){if(A[rO.SEMRESATTRS_PROCESS_RUNTIME_VERSION]==="")return TV0.diag.debug("BrowserDetector failed: Unable to find required browser resources. "),Yi.Resource.empty();else return new Yi.Resource(Object.assign({},A))}}rWQ.browserDetectorSync=new sWQ});var AZQ=R((tWQ)=>{Object.defineProperty(tWQ,"__esModule",{value:!0});tWQ.browserDetector=void 0;var SV0=Ji();class oWQ{detect(A){return Promise.resolve(SV0.browserDetectorSync.detect(A))}}tWQ.browserDetector=new oWQ});var Ci=R((BZQ)=>{Object.defineProperty(BZQ,"__esModule",{value:!0});BZQ.envDetectorSync=void 0;var kV0=yA(),_V0=MB(),vV0=FF(),yV0=YG();class QZQ{constructor(){this._MAX_LENGTH=255,this._COMMA_SEPARATOR=",",this._LABEL_KEY_VALUE_SPLITTER="=",this._ERROR_MESSAGE_INVALID_CHARS="should be a ASCII string with a length greater than 0 and not exceed "+this._MAX_LENGTH+" characters.",this._ERROR_MESSAGE_INVALID_VALUE="should be a ASCII string with a length not exceed "+this._MAX_LENGTH+" characters."}detect(A){let Q={},B=(0,_V0.getEnv)(),Y=B.OTEL_RESOURCE_ATTRIBUTES,J=B.OTEL_SERVICE_NAME;if(Y)try{let C=this._parseResourceAttributes(Y);Object.assign(Q,C)}catch(C){kV0.diag.debug(`EnvDetector failed: ${C.message}`)}if(J)Q[vV0.SEMRESATTRS_SERVICE_NAME]=J;return new yV0.Resource(Q)}_parseResourceAttributes(A){if(!A)return{};let Q={},B=A.split(this._COMMA_SEPARATOR,-1);for(let Y of B){let J=Y.split(this._LABEL_KEY_VALUE_SPLITTER,-1);if(J.length!==2)continue;let[C,X]=J;if(C=C.trim(),X=X.trim().split(/^"|"$/).join(""),!this._isValidAndNotEmpty(C))throw Error(`Attribute key ${this._ERROR_MESSAGE_INVALID_CHARS}`);if(!this._isValid(X))throw Error(`Attribute value ${this._ERROR_MESSAGE_INVALID_VALUE}`);Q[C]=decodeURIComponent(X)}return Q}_isValid(A){return A.length<=this._MAX_LENGTH&&this._isBaggageOctetString(A)}_isBaggageOctetString(A){for(let Q=0;Q126)return!1}return!0}_isValidAndNotEmpty(A){return A.length>0&&this._isValid(A)}}BZQ.envDetectorSync=new QZQ});var GZQ=R((CZQ)=>{Object.defineProperty(CZQ,"__esModule",{value:!0});CZQ.envDetector=void 0;var hV0=Ci();class JZQ{detect(A){return Promise.resolve(hV0.envDetectorSync.detect(A))}}CZQ.envDetector=new JZQ});var FZQ=R((v8)=>{Object.defineProperty(v8,"__esModule",{value:!0});v8.envDetectorSync=v8.browserDetectorSync=v8.envDetector=v8.browserDetector=v8.serviceInstanceIdDetectorSync=v8.processDetectorSync=v8.processDetector=v8.osDetectorSync=v8.osDetector=v8.hostDetectorSync=v8.hostDetector=void 0;var V$=nWQ();Object.defineProperty(v8,"hostDetector",{enumerable:!0,get:function(){return V$.hostDetector}});Object.defineProperty(v8,"hostDetectorSync",{enumerable:!0,get:function(){return V$.hostDetectorSync}});Object.defineProperty(v8,"osDetector",{enumerable:!0,get:function(){return V$.osDetector}});Object.defineProperty(v8,"osDetectorSync",{enumerable:!0,get:function(){return V$.osDetectorSync}});Object.defineProperty(v8,"processDetector",{enumerable:!0,get:function(){return V$.processDetector}});Object.defineProperty(v8,"processDetectorSync",{enumerable:!0,get:function(){return V$.processDetectorSync}});Object.defineProperty(v8,"serviceInstanceIdDetectorSync",{enumerable:!0,get:function(){return V$.serviceInstanceIdDetectorSync}});var gV0=AZQ();Object.defineProperty(v8,"browserDetector",{enumerable:!0,get:function(){return gV0.browserDetector}});var xV0=GZQ();Object.defineProperty(v8,"envDetector",{enumerable:!0,get:function(){return xV0.envDetector}});var fV0=Ji();Object.defineProperty(v8,"browserDetectorSync",{enumerable:!0,get:function(){return fV0.browserDetectorSync}});var bV0=Ci();Object.defineProperty(v8,"envDetectorSync",{enumerable:!0,get:function(){return bV0.envDetectorSync}})});var $ZQ=R((WZQ)=>{Object.defineProperty(WZQ,"__esModule",{value:!0});WZQ.isPromiseLike=void 0;var uV0=(A)=>{return A!==null&&typeof A==="object"&&typeof A.then==="function"};WZQ.isPromiseLike=uV0});var VZQ=R((EZQ)=>{Object.defineProperty(EZQ,"__esModule",{value:!0});EZQ.detectResourcesSync=EZQ.detectResources=void 0;var EL=YG(),ZK=yA(),dV0=$ZQ(),cV0=async(A={})=>{let Q=await Promise.all((A.detectors||[]).map(async(B)=>{try{let Y=await B.detect(A);return ZK.diag.debug(`${B.constructor.name} found resource.`,Y),Y}catch(Y){return ZK.diag.debug(`${B.constructor.name} failed: ${Y.message}`),EL.Resource.empty()}}));return UZQ(Q),Q.reduce((B,Y)=>B.merge(Y),EL.Resource.empty())};EZQ.detectResources=cV0;var lV0=(A={})=>{var Q;let B=((Q=A.detectors)!==null&&Q!==void 0?Q:[]).map((J)=>{try{let C=J.detect(A),X;if((0,dV0.isPromiseLike)(C)){let G=async()=>{var F;let W=await C;return await((F=W.waitForAsyncAttributes)===null||F===void 0?void 0:F.call(W)),W.attributes};X=new EL.Resource({},G())}else X=C;if(X.waitForAsyncAttributes)X.waitForAsyncAttributes().then(()=>ZK.diag.debug(`${J.constructor.name} found resource.`,X));else ZK.diag.debug(`${J.constructor.name} found resource.`,X);return X}catch(C){return ZK.diag.error(`${J.constructor.name} failed: ${C.message}`),EL.Resource.empty()}}),Y=B.reduce((J,C)=>J.merge(C),EL.Resource.empty());if(Y.waitForAsyncAttributes)Y.waitForAsyncAttributes().then(()=>{UZQ(B)});return Y};EZQ.detectResourcesSync=lV0;var UZQ=(A)=>{A.forEach((Q)=>{if(Object.keys(Q.attributes).length>0){let B=JSON.stringify(Q.attributes,null,4);ZK.diag.verbose(B)}})}});var Xi=R((WJ)=>{Object.defineProperty(WJ,"__esModule",{value:!0});WJ.detectResources=WJ.detectResourcesSync=WJ.serviceInstanceIdDetectorSync=WJ.processDetectorSync=WJ.processDetector=WJ.osDetectorSync=WJ.osDetector=WJ.hostDetectorSync=WJ.hostDetector=WJ.envDetectorSync=WJ.envDetector=WJ.browserDetectorSync=WJ.browserDetector=WJ.defaultServiceName=WJ.Resource=void 0;var iV0=YG();Object.defineProperty(WJ,"Resource",{enumerable:!0,get:function(){return iV0.Resource}});var nV0=ap();Object.defineProperty(WJ,"defaultServiceName",{enumerable:!0,get:function(){return nV0.defaultServiceName}});var A1=FZQ();Object.defineProperty(WJ,"browserDetector",{enumerable:!0,get:function(){return A1.browserDetector}});Object.defineProperty(WJ,"browserDetectorSync",{enumerable:!0,get:function(){return A1.browserDetectorSync}});Object.defineProperty(WJ,"envDetector",{enumerable:!0,get:function(){return A1.envDetector}});Object.defineProperty(WJ,"envDetectorSync",{enumerable:!0,get:function(){return A1.envDetectorSync}});Object.defineProperty(WJ,"hostDetector",{enumerable:!0,get:function(){return A1.hostDetector}});Object.defineProperty(WJ,"hostDetectorSync",{enumerable:!0,get:function(){return A1.hostDetectorSync}});Object.defineProperty(WJ,"osDetector",{enumerable:!0,get:function(){return A1.osDetector}});Object.defineProperty(WJ,"osDetectorSync",{enumerable:!0,get:function(){return A1.osDetectorSync}});Object.defineProperty(WJ,"processDetector",{enumerable:!0,get:function(){return A1.processDetector}});Object.defineProperty(WJ,"processDetectorSync",{enumerable:!0,get:function(){return A1.processDetectorSync}});Object.defineProperty(WJ,"serviceInstanceIdDetectorSync",{enumerable:!0,get:function(){return A1.serviceInstanceIdDetectorSync}});var IZQ=VZQ();Object.defineProperty(WJ,"detectResourcesSync",{enumerable:!0,get:function(){return IZQ.detectResourcesSync}});Object.defineProperty(WJ,"detectResources",{enumerable:!0,get:function(){return IZQ.detectResources}})});var LZQ=R((DZQ)=>{Object.defineProperty(DZQ,"__esModule",{value:!0});DZQ.MultiSpanProcessor=void 0;var rV0=MB();class HZQ{constructor(A){this._spanProcessors=A}forceFlush(){let A=[];for(let Q of this._spanProcessors)A.push(Q.forceFlush());return new Promise((Q)=>{Promise.all(A).then(()=>{Q()}).catch((B)=>{(0,rV0.globalErrorHandler)(B||Error("MultiSpanProcessor: forceFlush failed")),Q()})})}onStart(A,Q){for(let B of this._spanProcessors)B.onStart(A,Q)}onEnd(A){for(let Q of this._spanProcessors)Q.onEnd(A)}shutdown(){let A=[];for(let Q of this._spanProcessors)A.push(Q.shutdown());return new Promise((Q,B)=>{Promise.all(A).then(()=>{Q()},B)})}}DZQ.MultiSpanProcessor=HZQ});var Gi=R((MZQ)=>{Object.defineProperty(MZQ,"__esModule",{value:!0});MZQ.NoopSpanProcessor=void 0;class qZQ{onStart(A,Q){}onEnd(A){}shutdown(){return Promise.resolve()}forceFlush(){return Promise.resolve()}}MZQ.NoopSpanProcessor=qZQ});var TZQ=R((OZQ)=>{Object.defineProperty(OZQ,"__esModule",{value:!0});OZQ.BasicTracerProvider=OZQ.ForceFlushState=void 0;var $K=yA(),EK=MB(),RZQ=Xi(),aV0=ip(),oV0=cp(),wZQ=LZQ(),tV0=Gi(),eV0=pO(),AI0=pp(),UK;(function(A){A[A.resolved=0]="resolved",A[A.timeout=1]="timeout",A[A.error=2]="error",A[A.unresolved=3]="unresolved"})(UK=OZQ.ForceFlushState||(OZQ.ForceFlushState={}));class aO{constructor(A={}){var Q,B;this._registeredSpanProcessors=[],this._tracers=new Map;let Y=(0,EK.merge)({},(0,oV0.loadDefaultConfig)(),(0,AI0.reconfigureLimits)(A));if(this.resource=(Q=Y.resource)!==null&&Q!==void 0?Q:RZQ.Resource.empty(),Y.mergeResourceWithDefaults)this.resource=RZQ.Resource.default().merge(this.resource);if(this._config=Object.assign({},Y,{resource:this.resource}),(B=A.spanProcessors)===null||B===void 0?void 0:B.length)this._registeredSpanProcessors=[...A.spanProcessors],this.activeSpanProcessor=new wZQ.MultiSpanProcessor(this._registeredSpanProcessors);else{let J=this._buildExporterFromEnv();if(J!==void 0){let C=new eV0.BatchSpanProcessor(J);this.activeSpanProcessor=C}else this.activeSpanProcessor=new tV0.NoopSpanProcessor}}getTracer(A,Q,B){let Y=`${A}@${Q||""}:${(B===null||B===void 0?void 0:B.schemaUrl)||""}`;if(!this._tracers.has(Y))this._tracers.set(Y,new aV0.Tracer({name:A,version:Q,schemaUrl:B===null||B===void 0?void 0:B.schemaUrl},this._config,this));return this._tracers.get(Y)}addSpanProcessor(A){if(this._registeredSpanProcessors.length===0)this.activeSpanProcessor.shutdown().catch((Q)=>$K.diag.error("Error while trying to shutdown current span processor",Q));this._registeredSpanProcessors.push(A),this.activeSpanProcessor=new wZQ.MultiSpanProcessor(this._registeredSpanProcessors)}getActiveSpanProcessor(){return this.activeSpanProcessor}register(A={}){if($K.trace.setGlobalTracerProvider(this),A.propagator===void 0)A.propagator=this._buildPropagatorFromEnv();if(A.contextManager)$K.context.setGlobalContextManager(A.contextManager);if(A.propagator)$K.propagation.setGlobalPropagator(A.propagator)}forceFlush(){let A=this._config.forceFlushTimeoutMillis,Q=this._registeredSpanProcessors.map((B)=>{return new Promise((Y)=>{let J,C=setTimeout(()=>{Y(Error(`Span processor did not completed within timeout period of ${A} ms`)),J=UK.timeout},A);B.forceFlush().then(()=>{if(clearTimeout(C),J!==UK.timeout)J=UK.resolved,Y(J)}).catch((X)=>{clearTimeout(C),J=UK.error,Y(X)})})});return new Promise((B,Y)=>{Promise.all(Q).then((J)=>{let C=J.filter((X)=>X!==UK.resolved);if(C.length>0)Y(C);else B()}).catch((J)=>Y([J]))})}shutdown(){return this.activeSpanProcessor.shutdown()}_getPropagator(A){var Q;return(Q=this.constructor._registeredPropagators.get(A))===null||Q===void 0?void 0:Q()}_getSpanExporter(A){var Q;return(Q=this.constructor._registeredExporters.get(A))===null||Q===void 0?void 0:Q()}_buildPropagatorFromEnv(){let A=Array.from(new Set((0,EK.getEnv)().OTEL_PROPAGATORS)),B=A.map((Y)=>{let J=this._getPropagator(Y);if(!J)$K.diag.warn(`Propagator "${Y}" requested through environment variable is unavailable.`);return J}).reduce((Y,J)=>{if(J)Y.push(J);return Y},[]);if(B.length===0)return;else if(A.length===1)return B[0];else return new EK.CompositePropagator({propagators:B})}_buildExporterFromEnv(){let A=(0,EK.getEnv)().OTEL_TRACES_EXPORTER;if(A==="none"||A==="")return;let Q=this._getSpanExporter(A);if(!Q)$K.diag.error(`Exporter "${A}" requested through environment variable is unavailable.`);return Q}}OZQ.BasicTracerProvider=aO;aO._registeredPropagators=new Map([["tracecontext",()=>new EK.W3CTraceContextPropagator],["baggage",()=>new EK.W3CBaggagePropagator]]);aO._registeredExporters=new Map});var vZQ=R((kZQ)=>{Object.defineProperty(kZQ,"__esModule",{value:!0});kZQ.ConsoleSpanExporter=void 0;var Fi=MB();class SZQ{export(A,Q){return this._sendSpans(A,Q)}shutdown(){return this._sendSpans([]),this.forceFlush()}forceFlush(){return Promise.resolve()}_exportInfo(A){var Q;return{resource:{attributes:A.resource.attributes},instrumentationScope:A.instrumentationLibrary,traceId:A.spanContext().traceId,parentId:A.parentSpanId,traceState:(Q=A.spanContext().traceState)===null||Q===void 0?void 0:Q.serialize(),name:A.name,id:A.spanContext().spanId,kind:A.kind,timestamp:(0,Fi.hrTimeToMicroseconds)(A.startTime),duration:(0,Fi.hrTimeToMicroseconds)(A.duration),attributes:A.attributes,status:A.status,events:A.events,links:A.links}}_sendSpans(A,Q){for(let B of A)console.dir(this._exportInfo(B),{depth:3});if(Q)return Q({code:Fi.ExportResultCode.SUCCESS})}}kZQ.ConsoleSpanExporter=SZQ});var fZQ=R((gZQ)=>{Object.defineProperty(gZQ,"__esModule",{value:!0});gZQ.InMemorySpanExporter=void 0;var yZQ=MB();class hZQ{constructor(){this._finishedSpans=[],this._stopped=!1}export(A,Q){if(this._stopped)return Q({code:yZQ.ExportResultCode.FAILED,error:Error("Exporter has been stopped")});this._finishedSpans.push(...A),setTimeout(()=>Q({code:yZQ.ExportResultCode.SUCCESS}),0)}shutdown(){return this._stopped=!0,this._finishedSpans=[],this.forceFlush()}forceFlush(){return Promise.resolve()}reset(){this._finishedSpans=[]}getFinishedSpans(){return this._finishedSpans}}gZQ.InMemorySpanExporter=hZQ});var dZQ=R((mZQ)=>{Object.defineProperty(mZQ,"__esModule",{value:!0});mZQ.SimpleSpanProcessor=void 0;var QI0=yA(),KK=MB();class bZQ{constructor(A){this._exporter=A,this._shutdownOnce=new KK.BindOnceFuture(this._shutdown,this),this._unresolvedExports=new Set}async forceFlush(){if(await Promise.all(Array.from(this._unresolvedExports)),this._exporter.forceFlush)await this._exporter.forceFlush()}onStart(A,Q){}onEnd(A){var Q,B;if(this._shutdownOnce.isCalled)return;if((A.spanContext().traceFlags&QI0.TraceFlags.SAMPLED)===0)return;let Y=()=>KK.internal._export(this._exporter,[A]).then((J)=>{var C;if(J.code!==KK.ExportResultCode.SUCCESS)(0,KK.globalErrorHandler)((C=J.error)!==null&&C!==void 0?C:Error(`SimpleSpanProcessor: span export failed (status ${J})`))}).catch((J)=>{(0,KK.globalErrorHandler)(J)});if(A.resource.asyncAttributesPending){let J=(B=(Q=A.resource).waitForAsyncAttributes)===null||B===void 0?void 0:B.call(Q).then(()=>{if(J!=null)this._unresolvedExports.delete(J);return Y()},(C)=>(0,KK.globalErrorHandler)(C));if(J!=null)this._unresolvedExports.add(J)}else Y()}shutdown(){return this._shutdownOnce.call()}_shutdown(){return this._exporter.shutdown()}}mZQ.SimpleSpanProcessor=bZQ});var Wi=R((ZJ)=>{Object.defineProperty(ZJ,"__esModule",{value:!0});ZJ.Span=ZJ.SamplingDecision=ZJ.TraceIdRatioBasedSampler=ZJ.ParentBasedSampler=ZJ.AlwaysOnSampler=ZJ.AlwaysOffSampler=ZJ.NoopSpanProcessor=ZJ.SimpleSpanProcessor=ZJ.InMemorySpanExporter=ZJ.ConsoleSpanExporter=ZJ.RandomIdGenerator=ZJ.BatchSpanProcessor=ZJ.ForceFlushState=ZJ.BasicTracerProvider=ZJ.Tracer=void 0;var BI0=ip();Object.defineProperty(ZJ,"Tracer",{enumerable:!0,get:function(){return BI0.Tracer}});var cZQ=TZQ();Object.defineProperty(ZJ,"BasicTracerProvider",{enumerable:!0,get:function(){return cZQ.BasicTracerProvider}});Object.defineProperty(ZJ,"ForceFlushState",{enumerable:!0,get:function(){return cZQ.ForceFlushState}});var lZQ=pO();Object.defineProperty(ZJ,"BatchSpanProcessor",{enumerable:!0,get:function(){return lZQ.BatchSpanProcessor}});Object.defineProperty(ZJ,"RandomIdGenerator",{enumerable:!0,get:function(){return lZQ.RandomIdGenerator}});var YI0=vZQ();Object.defineProperty(ZJ,"ConsoleSpanExporter",{enumerable:!0,get:function(){return YI0.ConsoleSpanExporter}});var JI0=fZQ();Object.defineProperty(ZJ,"InMemorySpanExporter",{enumerable:!0,get:function(){return JI0.InMemorySpanExporter}});var CI0=dZQ();Object.defineProperty(ZJ,"SimpleSpanProcessor",{enumerable:!0,get:function(){return CI0.SimpleSpanProcessor}});var XI0=Gi();Object.defineProperty(ZJ,"NoopSpanProcessor",{enumerable:!0,get:function(){return XI0.NoopSpanProcessor}});var GI0=fO();Object.defineProperty(ZJ,"AlwaysOffSampler",{enumerable:!0,get:function(){return GI0.AlwaysOffSampler}});var FI0=bO();Object.defineProperty(ZJ,"AlwaysOnSampler",{enumerable:!0,get:function(){return FI0.AlwaysOnSampler}});var WI0=bp();Object.defineProperty(ZJ,"ParentBasedSampler",{enumerable:!0,get:function(){return WI0.ParentBasedSampler}});var ZI0=mp();Object.defineProperty(ZJ,"TraceIdRatioBasedSampler",{enumerable:!0,get:function(){return ZI0.TraceIdRatioBasedSampler}});var $I0=UL();Object.defineProperty(ZJ,"SamplingDecision",{enumerable:!0,get:function(){return $I0.SamplingDecision}});var UI0=gp();Object.defineProperty(ZJ,"Span",{enumerable:!0,get:function(){return UI0.Span}})});var R$Q=R((M$Q)=>{Object.defineProperty(M$Q,"__esModule",{value:!0});M$Q.PACKAGE_NAME=M$Q.PACKAGE_VERSION=void 0;M$Q.PACKAGE_VERSION="0.10.1";M$Q.PACKAGE_NAME="@opentelemetry/instrumentation-undici"});var O$Q=R((w$Q)=>{Object.defineProperty(w$Q,"__esModule",{value:!0});w$Q.SemanticAttributes=void 0;w$Q.SemanticAttributes={HTTP_CONNECTION_STATE:"http.connection.state",ERROR_TYPE:"error.type",HTTP_REQUEST_BODY_SIZE:"http.request.body.size",HTTP_REQUEST_METHOD:"http.request.method",HTTP_REQUEST_METHOD_ORIGINAL:"http.request.method_original",HTTP_REQUEST_RESEND_COUNT:"http.request.resend_count",HTTP_RESPONSE_BODY_SIZE:"http.response.body.size",HTTP_RESPONSE_STATUS_CODE:"http.response.status_code",HTTP_ROUTE:"http.route",NETWORK_PEER_ADDRESS:"network.peer.address",NETWORK_PEER_PORT:"network.peer.port",NETWORK_PROTOCOL_NAME:"network.protocol.name",NETWORK_PROTOCOL_VERSION:"network.protocol.version",SERVER_ADDRESS:"server.address",SERVER_PORT:"server.port",URL_FULL:"url.full",URL_PATH:"url.path",URL_QUERY:"url.query",URL_SCHEME:"url.scheme",USER_AGENT_ORIGINAL:"user_agent.original"}});var _$Q=R((S$Q)=>{Object.defineProperty(S$Q,"__esModule",{value:!0});S$Q.UndiciInstrumentation=void 0;var DL=u("diagnostics_channel"),$H0=u("url"),NL=NB(),y8=yA(),P$Q=R$Q(),_Y=O$Q(),YP=MB();class T$Q extends NL.InstrumentationBase{constructor(A={}){super(P$Q.PACKAGE_NAME,P$Q.PACKAGE_VERSION,A);this._recordFromReq=new WeakMap}init(){return}disable(){super.disable(),this._channelSubs.forEach((A)=>A.unsubscribe()),this._channelSubs.length=0}enable(){if(super.enable(),this._channelSubs=this._channelSubs||[],this._channelSubs.length>0)return;this.subscribeToChannel("undici:request:create",this.onRequestCreated.bind(this)),this.subscribeToChannel("undici:client:sendHeaders",this.onRequestHeaders.bind(this)),this.subscribeToChannel("undici:request:headers",this.onResponseHeaders.bind(this)),this.subscribeToChannel("undici:request:trailers",this.onDone.bind(this)),this.subscribeToChannel("undici:request:error",this.onError.bind(this))}_updateMetricInstruments(){this._httpClientDurationHistogram=this.meter.createHistogram("http.client.request.duration",{description:"Measures the duration of outbound HTTP requests.",unit:"s",valueType:y8.ValueType.DOUBLE,advice:{explicitBucketBoundaries:[0.005,0.01,0.025,0.05,0.075,0.1,0.25,0.5,0.75,1,2.5,5,7.5,10]}})}subscribeToChannel(A,Q){var B;let[Y,J]=process.version.replace("v","").split(".").map((G)=>Number(G)),C=Y>18||Y===18&&J>=19,X;if(C)(B=DL.subscribe)===null||B===void 0||B.call(DL,A,Q),X=()=>{var G;return(G=DL.unsubscribe)===null||G===void 0?void 0:G.call(DL,A,Q)};else{let G=DL.channel(A);G.subscribe(Q),X=()=>G.unsubscribe(Q)}this._channelSubs.push({name:A,unsubscribe:X})}onRequestCreated({request:A}){let Q=this.getConfig(),B=Q.enabled!==!1;if((0,NL.safeExecuteInTheMiddle)(()=>{var z;return!B||A.method==="CONNECT"||((z=Q.ignoreRequestHook)===null||z===void 0?void 0:z.call(Q,A))},(z)=>z&&this._diag.error("caught ignoreRequestHook error: ",z),!0))return;let J=(0,YP.hrTime)(),C;try{C=new $H0.URL(A.path,A.origin)}catch(z){this._diag.warn("could not determine url.full:",z);return}let X=C.protocol.replace(":",""),G=this.getRequestMethod(A.method),F={[_Y.SemanticAttributes.HTTP_REQUEST_METHOD]:G,[_Y.SemanticAttributes.HTTP_REQUEST_METHOD_ORIGINAL]:A.method,[_Y.SemanticAttributes.URL_FULL]:C.toString(),[_Y.SemanticAttributes.URL_PATH]:C.pathname,[_Y.SemanticAttributes.URL_QUERY]:C.search,[_Y.SemanticAttributes.URL_SCHEME]:X},W={https:"443",http:"80"},Z=C.hostname,U=C.port||W[X];if(F[_Y.SemanticAttributes.SERVER_ADDRESS]=Z,U&&!isNaN(Number(U)))F[_Y.SemanticAttributes.SERVER_PORT]=Number(U);let $;if(Array.isArray(A.headers)){let z=A.headers.findIndex((M)=>M.toLowerCase()==="user-agent");if(z>=0)$=A.headers[z+1]}else if(typeof A.headers==="string"){let M=A.headers.split(`\r -`).find((N)=>N.toLowerCase().startsWith("user-agent"));$=M&&M.substring(M.indexOf(":")+1).trim()}if($)F[_Y.SemanticAttributes.USER_AGENT_ORIGINAL]=$;let E=(0,NL.safeExecuteInTheMiddle)(()=>{var z;return(z=Q.startSpanHook)===null||z===void 0?void 0:z.call(Q,A)},(z)=>z&&this._diag.error("caught startSpanHook error: ",z),!0);if(E)Object.entries(E).forEach(([z,M])=>{F[z]=M});let K=y8.context.active(),I=y8.trace.getSpan(K),V;if(Q.requireParentforSpans&&(!I||!y8.trace.isSpanContextValid(I.spanContext())))V=y8.trace.wrapSpanContext(y8.INVALID_SPAN_CONTEXT);else V=this.tracer.startSpan(G==="_OTHER"?"HTTP":G,{kind:y8.SpanKind.CLIENT,attributes:F},K);(0,NL.safeExecuteInTheMiddle)(()=>{var z;return(z=Q.requestHook)===null||z===void 0?void 0:z.call(Q,V,A)},(z)=>z&&this._diag.error("caught requestHook error: ",z),!0);let H=y8.trace.setSpan(y8.context.active(),V),D={};y8.propagation.inject(H,D);let L=Object.entries(D);for(let z=0;zU.toLowerCase())),Z=Array.isArray(A.headers)?A.headers:A.headers.split(`\r -`);Z.forEach((U,$)=>{let E=U.indexOf(":"),K=E!==-1,I=(K?U.substring(0,E):U).toLowerCase(),V=K?U.substring(E+1):Z[$+1];if(W.has(I))F[`http.request.header.${I}`]=V.trim()})}C.setAttributes(F)}onResponseHeaders({request:A,response:Q}){var B,Y;let J=this._recordFromReq.get(A);if(!J)return;let{span:C,attributes:X}=J,G={[_Y.SemanticAttributes.HTTP_RESPONSE_STATUS_CODE]:Q.statusCode},F=this.getConfig();(0,NL.safeExecuteInTheMiddle)(()=>{var Z;return(Z=F.responseHook)===null||Z===void 0?void 0:Z.call(F,C,{request:A,response:Q})},(Z)=>Z&&this._diag.error("caught responseHook error: ",Z),!0);let W=new Set;if((B=F.headersToSpanAttributes)===null||B===void 0?void 0:B.responseHeaders)(Y=F.headersToSpanAttributes)===null||Y===void 0||Y.responseHeaders.forEach((Z)=>W.add(Z.toLowerCase()));for(let Z=0;Z=400?y8.SpanStatusCode.ERROR:y8.SpanStatusCode.UNSET}),J.attributes=Object.assign(X,G)}onDone({request:A}){let Q=this._recordFromReq.get(A);if(!Q)return;let{span:B,attributes:Y,startTime:J}=Q;B.end(),this._recordFromReq.delete(A),this.recordRequestDuration(Y,J)}onError({request:A,error:Q}){let B=this._recordFromReq.get(A);if(!B)return;let{span:Y,attributes:J,startTime:C}=B;Y.recordException(Q),Y.setStatus({code:y8.SpanStatusCode.ERROR,message:Q.message}),Y.end(),this._recordFromReq.delete(A),J[_Y.SemanticAttributes.ERROR_TYPE]=Q.message,this.recordRequestDuration(J,C)}recordRequestDuration(A,Q){let B={};[_Y.SemanticAttributes.HTTP_RESPONSE_STATUS_CODE,_Y.SemanticAttributes.HTTP_REQUEST_METHOD,_Y.SemanticAttributes.SERVER_ADDRESS,_Y.SemanticAttributes.SERVER_PORT,_Y.SemanticAttributes.URL_SCHEME,_Y.SemanticAttributes.ERROR_TYPE].forEach((C)=>{if(C in A)B[C]=A[C]});let J=(0,YP.hrTimeToMilliseconds)((0,YP.hrTimeDuration)(Q,(0,YP.hrTime)()))/1000;this._httpClientDurationHistogram.record(J,B)}getRequestMethod(A){let Q={CONNECT:!0,OPTIONS:!0,HEAD:!0,GET:!0,POST:!0,PUT:!0,PATCH:!0,DELETE:!0,TRACE:!0};if(A.toUpperCase()in Q)return A.toUpperCase();return"_OTHER"}}S$Q.UndiciInstrumentation=T$Q});var y$Q=R((v$Q)=>{Object.defineProperty(v$Q,"__esModule",{value:!0})});var g$Q=R(($F)=>{var UH0=$F&&$F.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),h$Q=$F&&$F.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))UH0(Q,A,B)};Object.defineProperty($F,"__esModule",{value:!0});h$Q(_$Q(),$F);h$Q(y$Q(),$F)});var p$Q=R((c$Q)=>{Object.defineProperty(c$Q,"__esModule",{value:!0});c$Q.PACKAGE_NAME=c$Q.PACKAGE_VERSION=void 0;c$Q.PACKAGE_VERSION="0.19.1";c$Q.PACKAGE_NAME="@opentelemetry/instrumentation-fs"});var s$Q=R((i$Q)=>{Object.defineProperty(i$Q,"__esModule",{value:!0});i$Q.SYNC_FUNCTIONS=i$Q.CALLBACK_FUNCTIONS=i$Q.PROMISE_FUNCTIONS=void 0;i$Q.PROMISE_FUNCTIONS=["access","appendFile","chmod","chown","copyFile","cp","lchown","link","lstat","lutimes","mkdir","mkdtemp","open","opendir","readdir","readFile","readlink","realpath","rename","rm","rmdir","stat","symlink","truncate","unlink","utimes","writeFile"];i$Q.CALLBACK_FUNCTIONS=["access","appendFile","chmod","chown","copyFile","cp","exists","lchown","link","lstat","lutimes","mkdir","mkdtemp","open","opendir","readdir","readFile","readlink","realpath","realpath.native","rename","rm","rmdir","stat","symlink","truncate","unlink","utimes","writeFile"];i$Q.SYNC_FUNCTIONS=["accessSync","appendFileSync","chmodSync","chownSync","copyFileSync","cpSync","existsSync","lchownSync","linkSync","lstatSync","lutimesSync","mkdirSync","mkdtempSync","opendirSync","openSync","readdirSync","readFileSync","readlinkSync","realpathSync","realpathSync.native","renameSync","rmdirSync","rmSync","statSync","symlinkSync","truncateSync","unlinkSync","utimesSync","writeFileSync"]});var t$Q=R((a$Q)=>{Object.defineProperty(a$Q,"__esModule",{value:!0});a$Q.indexFs=a$Q.splitTwoLevels=void 0;function r$Q(A){let Q=A.split(".");if(Q.length>1){if(Q.length!==2)throw Error(`Invalid member function name ${A}`);return Q}else return[A]}a$Q.splitTwoLevels=r$Q;function RH0(A,Q){if(!Q)throw Error(JSON.stringify({member:Q}));let B=r$Q(Q),[Y,J]=B;if(J)return{objectToPatch:A[Y],functionNameToPatch:J};else return{objectToPatch:A,functionNameToPatch:Y}}a$Q.indexFs=RH0});var Y4Q=R((Q4Q)=>{Object.defineProperty(Q4Q,"__esModule",{value:!0});Q4Q.FsInstrumentation=void 0;var w0=yA(),GG=MB(),B1=NB(),e$Q=p$Q(),EF=s$Q(),jH0=u("util"),GP=t$Q();function FP(A,Q){return Object.assign(A,Q)}class A4Q extends B1.InstrumentationBase{constructor(A={}){super(e$Q.PACKAGE_NAME,e$Q.PACKAGE_VERSION,A)}init(){return[new B1.InstrumentationNodeModuleDefinition("fs",["*"],(A)=>{for(let Q of EF.SYNC_FUNCTIONS){let{objectToPatch:B,functionNameToPatch:Y}=(0,GP.indexFs)(A,Q);if((0,B1.isWrapped)(B[Y]))this._unwrap(B,Y);this._wrap(B,Y,this._patchSyncFunction.bind(this,Q))}for(let Q of EF.CALLBACK_FUNCTIONS){let{objectToPatch:B,functionNameToPatch:Y}=(0,GP.indexFs)(A,Q);if((0,B1.isWrapped)(B[Y]))this._unwrap(B,Y);if(Q==="exists"){this._wrap(B,Y,this._patchExistsCallbackFunction.bind(this,Q));continue}this._wrap(B,Y,this._patchCallbackFunction.bind(this,Q))}for(let Q of EF.PROMISE_FUNCTIONS){if((0,B1.isWrapped)(A.promises[Q]))this._unwrap(A.promises,Q);this._wrap(A.promises,Q,this._patchPromiseFunction.bind(this,Q))}return A},(A)=>{if(A===void 0)return;for(let Q of EF.SYNC_FUNCTIONS){let{objectToPatch:B,functionNameToPatch:Y}=(0,GP.indexFs)(A,Q);if((0,B1.isWrapped)(B[Y]))this._unwrap(B,Y)}for(let Q of EF.CALLBACK_FUNCTIONS){let{objectToPatch:B,functionNameToPatch:Y}=(0,GP.indexFs)(A,Q);if((0,B1.isWrapped)(B[Y]))this._unwrap(B,Y)}for(let Q of EF.PROMISE_FUNCTIONS)if((0,B1.isWrapped)(A.promises[Q]))this._unwrap(A.promises,Q)}),new B1.InstrumentationNodeModuleDefinition("fs/promises",["*"],(A)=>{for(let Q of EF.PROMISE_FUNCTIONS){if((0,B1.isWrapped)(A[Q]))this._unwrap(A,Q);this._wrap(A,Q,this._patchPromiseFunction.bind(this,Q))}return A},(A)=>{if(A===void 0)return;for(let Q of EF.PROMISE_FUNCTIONS)if((0,B1.isWrapped)(A[Q]))this._unwrap(A,Q)})]}_patchSyncFunction(A,Q){let B=this;return FP(function(...J){let C=w0.context.active();if(!B._shouldTrace(C))return Q.apply(this,J);if(B._runCreateHook(A,{args:J})===!1)return w0.context.with((0,GG.suppressTracing)(C),Q,this,...J);let X=B.tracer.startSpan(`fs ${A}`);try{let G=w0.context.with((0,GG.suppressTracing)(w0.trace.setSpan(C,X)),Q,this,...J);return B._runEndHook(A,{args:J,span:X}),G}catch(G){throw X.recordException(G),X.setStatus({message:G.message,code:w0.SpanStatusCode.ERROR}),B._runEndHook(A,{args:J,span:X,error:G}),G}finally{X.end()}},Q)}_patchCallbackFunction(A,Q){let B=this;return FP(function(...J){let C=w0.context.active();if(!B._shouldTrace(C))return Q.apply(this,J);if(B._runCreateHook(A,{args:J})===!1)return w0.context.with((0,GG.suppressTracing)(C),Q,this,...J);let X=J.length-1,G=J[X];if(typeof G==="function"){let F=B.tracer.startSpan(`fs ${A}`);J[X]=w0.context.bind(C,function(W){if(W)F.recordException(W),F.setStatus({message:W.message,code:w0.SpanStatusCode.ERROR});return B._runEndHook(A,{args:J,span:F,error:W}),F.end(),G.apply(this,arguments)});try{return w0.context.with((0,GG.suppressTracing)(w0.trace.setSpan(C,F)),Q,this,...J)}catch(W){throw F.recordException(W),F.setStatus({message:W.message,code:w0.SpanStatusCode.ERROR}),B._runEndHook(A,{args:J,span:F,error:W}),F.end(),W}}else return Q.apply(this,J)},Q)}_patchExistsCallbackFunction(A,Q){let B=this,J=FP(function(...X){let G=w0.context.active();if(!B._shouldTrace(G))return Q.apply(this,X);if(B._runCreateHook(A,{args:X})===!1)return w0.context.with((0,GG.suppressTracing)(G),Q,this,...X);let F=X.length-1,W=X[F];if(typeof W==="function"){let Z=B.tracer.startSpan(`fs ${A}`);X[F]=w0.context.bind(G,function(){return B._runEndHook(A,{args:X,span:Z}),Z.end(),W.apply(this,arguments)});try{return w0.context.with((0,GG.suppressTracing)(w0.trace.setSpan(G,Z)),Q,this,...X)}catch(U){throw Z.recordException(U),Z.setStatus({message:U.message,code:w0.SpanStatusCode.ERROR}),B._runEndHook(A,{args:X,span:Z,error:U}),Z.end(),U}}else return Q.apply(this,X)},Q),C=function(X){return new Promise((G)=>J(X,G))};return Object.defineProperty(C,"name",{value:A}),Object.defineProperty(J,jH0.promisify.custom,{value:C}),J}_patchPromiseFunction(A,Q){let B=this;return FP(async function(...J){let C=w0.context.active();if(!B._shouldTrace(C))return Q.apply(this,J);if(B._runCreateHook(A,{args:J})===!1)return w0.context.with((0,GG.suppressTracing)(C),Q,this,...J);let X=B.tracer.startSpan(`fs ${A}`);try{let G=await w0.context.with((0,GG.suppressTracing)(w0.trace.setSpan(C,X)),Q,this,...J);return B._runEndHook(A,{args:J,span:X}),G}catch(G){throw X.recordException(G),X.setStatus({message:G.message,code:w0.SpanStatusCode.ERROR}),B._runEndHook(A,{args:J,span:X,error:G}),G}finally{X.end()}},Q)}_runCreateHook(...A){let{createHook:Q}=this.getConfig();if(typeof Q==="function")try{return Q(...A)}catch(B){this._diag.error("caught createHook error",B)}return!0}_runEndHook(...A){let{endHook:Q}=this.getConfig();if(typeof Q==="function")try{Q(...A)}catch(B){this._diag.error("caught endHook error",B)}}_shouldTrace(A){if((0,GG.isTracingSuppressed)(A))return!1;let{requireParentSpan:Q}=this.getConfig();if(Q){if(w0.trace.getSpan(A)==null)return!1}return!0}}Q4Q.FsInstrumentation=A4Q});var C4Q=R((J4Q)=>{Object.defineProperty(J4Q,"__esModule",{value:!0})});var G4Q=R((KF)=>{var OH0=KF&&KF.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),X4Q=KF&&KF.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))OH0(Q,A,B)};Object.defineProperty(KF,"__esModule",{value:!0});X4Q(Y4Q(),KF);X4Q(C4Q(),KF)});var HP=R((S4Q)=>{Object.defineProperty(S4Q,"__esModule",{value:!0});S4Q.ExpressLayerType=void 0;var iD0;(function(A){A.ROUTER="router",A.MIDDLEWARE="middleware",A.REQUEST_HANDLER="request_handler"})(iD0=S4Q.ExpressLayerType||(S4Q.ExpressLayerType={}))});var DP=R((k4Q)=>{Object.defineProperty(k4Q,"__esModule",{value:!0});k4Q.AttributeNames=void 0;var nD0;(function(A){A.EXPRESS_TYPE="express.type",A.EXPRESS_NAME="express.name"})(nD0=k4Q.AttributeNames||(k4Q.AttributeNames={}))});var ci=R((_4Q)=>{Object.defineProperty(_4Q,"__esModule",{value:!0});_4Q._LAYERS_STORE_PROPERTY=_4Q.kLayerPatched=void 0;_4Q.kLayerPatched=Symbol("express-layer-patched");_4Q._LAYERS_STORE_PROPERTY="__ot_middlewares"});var x4Q=R((h4Q)=>{Object.defineProperty(h4Q,"__esModule",{value:!0});h4Q.getLayerPath=h4Q.asErrorAndMessage=h4Q.isLayerIgnored=h4Q.getLayerMetadata=h4Q.getRouterPath=h4Q.storeLayerPath=void 0;var li=HP(),MK=DP(),pi=ci(),rD0=(A,Q)=>{if(Array.isArray(A[pi._LAYERS_STORE_PROPERTY])===!1)Object.defineProperty(A,pi._LAYERS_STORE_PROPERTY,{enumerable:!1,value:[]});if(Q===void 0)return;A[pi._LAYERS_STORE_PROPERTY].push(Q)};h4Q.storeLayerPath=rD0;var aD0=(A,Q)=>{var B,Y,J,C;let X=(Y=(B=Q.handle)===null||B===void 0?void 0:B.stack)===null||Y===void 0?void 0:Y[0];if((J=X===null||X===void 0?void 0:X.route)===null||J===void 0?void 0:J.path)return`${A}${X.route.path}`;if((C=X===null||X===void 0?void 0:X.handle)===null||C===void 0?void 0:C.stack)return h4Q.getRouterPath(A,X);return A};h4Q.getRouterPath=aD0;var oD0=(A,Q,B)=>{var Y;if(Q.name==="router"){let J=h4Q.getRouterPath("",Q),C=J?J:B||A||"/";return{attributes:{[MK.AttributeNames.EXPRESS_NAME]:C,[MK.AttributeNames.EXPRESS_TYPE]:li.ExpressLayerType.ROUTER},name:`router - ${C}`}}else if(Q.name==="bound dispatch")return{attributes:{[MK.AttributeNames.EXPRESS_NAME]:(Y=A||B)!==null&&Y!==void 0?Y:"request handler",[MK.AttributeNames.EXPRESS_TYPE]:li.ExpressLayerType.REQUEST_HANDLER},name:`request handler${Q.path?` - ${A||B}`:""}`};else return{attributes:{[MK.AttributeNames.EXPRESS_NAME]:Q.name,[MK.AttributeNames.EXPRESS_TYPE]:li.ExpressLayerType.MIDDLEWARE},name:`middleware - ${Q.name}`}};h4Q.getLayerMetadata=oD0;var tD0=(A,Q)=>{if(typeof Q==="string")return Q===A;else if(Q instanceof RegExp)return Q.test(A);else if(typeof Q==="function")return Q(A);else throw TypeError("Pattern is in unsupported datatype")},eD0=(A,Q,B)=>{var Y;if(Array.isArray(B===null||B===void 0?void 0:B.ignoreLayersType)&&((Y=B===null||B===void 0?void 0:B.ignoreLayersType)===null||Y===void 0?void 0:Y.includes(Q)))return!0;if(Array.isArray(B===null||B===void 0?void 0:B.ignoreLayers)===!1)return!1;try{for(let J of B.ignoreLayers)if(tD0(A,J))return!0}catch(J){}return!1};h4Q.isLayerIgnored=eD0;var AN0=(A)=>A instanceof Error?[A,A.message]:[String(A),String(A)];h4Q.asErrorAndMessage=AN0;var QN0=(A)=>{let Q=A[0];if(Array.isArray(Q))return Q.map((B)=>y4Q(B)||"").join(",");return y4Q(Q)};h4Q.getLayerPath=QN0;var y4Q=(A)=>{if(typeof A==="string")return A;if(A instanceof RegExp||typeof A==="number")return A.toString();return}});var m4Q=R((f4Q)=>{Object.defineProperty(f4Q,"__esModule",{value:!0});f4Q.PACKAGE_NAME=f4Q.PACKAGE_VERSION=void 0;f4Q.PACKAGE_VERSION="0.47.1";f4Q.PACKAGE_NAME="@opentelemetry/instrumentation-express"});var s4Q=R((i4Q)=>{Object.defineProperty(i4Q,"__esModule",{value:!0});i4Q.ExpressInstrumentation=void 0;var u4Q=MB(),I$=yA(),d4Q=HP(),c4Q=DP(),VF=x4Q(),l4Q=m4Q(),zK=NB(),GN0=uB(),zL=ci();class p4Q extends zK.InstrumentationBase{constructor(A={}){super(l4Q.PACKAGE_NAME,l4Q.PACKAGE_VERSION,A)}init(){return[new zK.InstrumentationNodeModuleDefinition("express",[">=4.0.0 <5"],(A)=>{let Q=A.Router;if((0,zK.isWrapped)(Q.route))this._unwrap(Q,"route");if(this._wrap(Q,"route",this._getRoutePatch()),(0,zK.isWrapped)(Q.use))this._unwrap(Q,"use");if(this._wrap(Q,"use",this._getRouterUsePatch()),(0,zK.isWrapped)(A.application.use))this._unwrap(A.application,"use");return this._wrap(A.application,"use",this._getAppUsePatch()),A},(A)=>{if(A===void 0)return;let Q=A.Router;this._unwrap(Q,"route"),this._unwrap(Q,"use"),this._unwrap(A.application,"use")})]}_getRoutePatch(){let A=this;return function(Q){return function(...Y){let J=Q.apply(this,Y),C=this.stack[this.stack.length-1];return A._applyPatch(C,(0,VF.getLayerPath)(Y)),J}}}_getRouterUsePatch(){let A=this;return function(Q){return function(...Y){let J=Q.apply(this,Y),C=this.stack[this.stack.length-1];return A._applyPatch(C,(0,VF.getLayerPath)(Y)),J}}}_getAppUsePatch(){let A=this;return function(Q){return function(...Y){let J=Q.apply(this,Y),C=this._router.stack[this._router.stack.length-1];return A._applyPatch(C,(0,VF.getLayerPath)(Y)),J}}}_applyPatch(A,Q){let B=this;if(A[zL.kLayerPatched]===!0)return;A[zL.kLayerPatched]=!0,this._wrap(A,"handle",(Y)=>{if(Y.length===4)return Y;let J=function(C,X){(0,VF.storeLayerPath)(C,Q);let G=C[zL._LAYERS_STORE_PROPERTY].filter((L)=>L!=="/"&&L!=="/*").join("").replace(/\/{2,}/g,"/"),F={[GN0.SEMATTRS_HTTP_ROUTE]:G.length>0?G:"/"},W=(0,VF.getLayerMetadata)(G,A,Q),Z=W.attributes[c4Q.AttributeNames.EXPRESS_TYPE],U=(0,u4Q.getRPCMetadata)(I$.context.active());if((U===null||U===void 0?void 0:U.type)===u4Q.RPCType.HTTP)U.route=G||"/";if((0,VF.isLayerIgnored)(W.name,Z,B.getConfig())){if(Z===d4Q.ExpressLayerType.MIDDLEWARE)C[zL._LAYERS_STORE_PROPERTY].pop();return Y.apply(this,arguments)}if(I$.trace.getSpan(I$.context.active())===void 0)return Y.apply(this,arguments);let $=B._getSpanName({request:C,layerType:Z,route:G},W.name),E=B.tracer.startSpan($,{attributes:Object.assign(F,W.attributes)}),{requestHook:K}=B.getConfig();if(K)(0,zK.safeExecuteInTheMiddle)(()=>K(E,{request:C,layerType:Z,route:G}),(L)=>{if(L)I$.diag.error("express instrumentation: request hook failed",L)},!0);let I=!1;if(W.attributes[c4Q.AttributeNames.EXPRESS_TYPE]!==d4Q.ExpressLayerType.MIDDLEWARE)E.end(),I=!0;let V=()=>{if(I===!1)I=!0,E.end()},H=Array.from(arguments),D=H.findIndex((L)=>typeof L==="function");if(D>=0)arguments[D]=function(){var L;let z=arguments[0],M=![void 0,null,"route","router"].includes(z);if(!I&&M){let[q,w]=(0,VF.asErrorAndMessage)(z);E.recordException(q),E.setStatus({code:I$.SpanStatusCode.ERROR,message:w})}if(I===!1)I=!0,(L=C.res)===null||L===void 0||L.removeListener("finish",V),E.end();if(!(C.route&&M))C[zL._LAYERS_STORE_PROPERTY].pop();return H[D].apply(this,arguments)};try{return Y.apply(this,arguments)}catch(L){let[z,M]=(0,VF.asErrorAndMessage)(L);throw E.recordException(z),E.setStatus({code:I$.SpanStatusCode.ERROR,message:M}),L}finally{if(!I)X.once("finish",V)}};for(let C in Y)Object.defineProperty(J,C,{get(){return Y[C]},set(X){Y[C]=X}});return J})}_getSpanName(A,Q){var B;let{spanNameHook:Y}=this.getConfig();if(!(Y instanceof Function))return Q;try{return(B=Y(A,Q))!==null&&B!==void 0?B:Q}catch(J){return I$.diag.error("express instrumentation: error calling span name rewrite hook",J),Q}}}i4Q.ExpressInstrumentation=p4Q});var a4Q=R((r4Q)=>{Object.defineProperty(r4Q,"__esModule",{value:!0})});var o4Q=R((Z6)=>{var FN0=Z6&&Z6.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),NP=Z6&&Z6.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))FN0(Q,A,B)};Object.defineProperty(Z6,"__esModule",{value:!0});NP(s4Q(),Z6);NP(HP(),Z6);NP(DP(),Z6);NP(a4Q(),Z6)});var DUQ=R((obY,HUQ)=>{var $UQ=Iy();HUQ.exports=NN0;var UUQ="\x00SLASH"+Math.random()+"\x00",EUQ="\x00OPEN"+Math.random()+"\x00",An="\x00CLOSE"+Math.random()+"\x00",KUQ="\x00COMMA"+Math.random()+"\x00",VUQ="\x00PERIOD"+Math.random()+"\x00";function ei(A){return parseInt(A,10)==A?parseInt(A,10):A.charCodeAt(0)}function HN0(A){return A.split("\\\\").join(UUQ).split("\\{").join(EUQ).split("\\}").join(An).split("\\,").join(KUQ).split("\\.").join(VUQ)}function DN0(A){return A.split(UUQ).join("\\").split(EUQ).join("{").split(An).join("}").split(KUQ).join(",").split(VUQ).join(".")}function IUQ(A){if(!A)return[""];var Q=[],B=$UQ("{","}",A);if(!B)return A.split(",");var{pre:Y,body:J,post:C}=B,X=Y.split(",");X[X.length-1]+="{"+J+"}";var G=IUQ(C);if(C.length)X[X.length-1]+=G.shift(),X.push.apply(X,G);return Q.push.apply(Q,X),Q}function NN0(A){if(!A)return[];if(A.substr(0,2)==="{}")A="\\{\\}"+A.substr(2);return RL(HN0(A),!0).map(DN0)}function LN0(A){return"{"+A+"}"}function qN0(A){return/^-?0\d/.test(A)}function MN0(A,Q){return A<=Q}function zN0(A,Q){return A>=Q}function RL(A,Q){var B=[],Y=$UQ("{","}",A);if(!Y)return[A];var J=Y.pre,C=Y.post.length?RL(Y.post,!1):[""];if(/\$$/.test(Y.pre))for(var X=0;X=0;if(!Z&&!U){if(Y.post.match(/,.*\}/))return A=Y.pre+"{"+Y.body+An+Y.post,RL(A);return[A]}var $;if(Z)$=Y.body.split(/\.\./);else if($=IUQ(Y.body),$.length===1){if($=RL($[0],!1).map(LN0),$.length===1)return C.map(function(_){return Y.pre+$[0]+_})}var E;if(Z){var K=ei($[0]),I=ei($[1]),V=Math.max($[0].length,$[1].length),H=$.length==3?Math.abs(ei($[2])):1,D=MN0,L=I0){var w=Array(q+1).join("0");if(M<0)N="-"+w+N.slice(1);else N=w+N}}E.push(N)}}else{E=[];for(var P=0;P<$.length;P++)E.push.apply(E,RL($[P],!1))}for(var P=0;P{Object.defineProperty(NUQ,"__esModule",{value:!0});NUQ.assertValidPattern=void 0;var RN0=65536,wN0=(A)=>{if(typeof A!=="string")throw TypeError("invalid pattern");if(A.length>RN0)throw TypeError("pattern is too long")};NUQ.assertValidPattern=wN0});var wUQ=R((zUQ)=>{Object.defineProperty(zUQ,"__esModule",{value:!0});zUQ.parseClass=void 0;var jN0={"[:alnum:]":["\\p{L}\\p{Nl}\\p{Nd}",!0],"[:alpha:]":["\\p{L}\\p{Nl}",!0],"[:ascii:]":["\\x00-\\x7f",!1],"[:blank:]":["\\p{Zs}\\t",!0],"[:cntrl:]":["\\p{Cc}",!0],"[:digit:]":["\\p{Nd}",!0],"[:graph:]":["\\p{Z}\\p{C}",!0,!0],"[:lower:]":["\\p{Ll}",!0],"[:print:]":["\\p{C}",!0],"[:punct:]":["\\p{P}",!0],"[:space:]":["\\p{Z}\\t\\r\\n\\v\\f",!0],"[:upper:]":["\\p{Lu}",!0],"[:word:]":["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}",!0],"[:xdigit:]":["A-Fa-f0-9",!1]},wL=(A)=>A.replace(/[[\]\\-]/g,"\\$&"),ON0=(A)=>A.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),MUQ=(A)=>A.join(""),PN0=(A,Q)=>{let B=Q;if(A.charAt(B)!=="[")throw Error("not in a brace expression");let Y=[],J=[],C=B+1,X=!1,G=!1,F=!1,W=!1,Z=B,U="";A:while(CU)Y.push(wL(U)+"-"+wL(I));else if(I===U)Y.push(wL(I));U="",C++;continue}if(A.startsWith("-]",C+1)){Y.push(wL(I+"-")),C+=2;continue}if(A.startsWith("-",C+1)){U=I,C+=2;continue}Y.push(wL(I)),C++}if(Z{Object.defineProperty(jUQ,"__esModule",{value:!0});jUQ.unescape=void 0;var TN0=(A,{windowsPathsNoEscape:Q=!1}={})=>{return Q?A.replace(/\[([^\/\\])\]/g,"$1"):A.replace(/((?!\\).|^)\[([^\/\\])\]/g,"$1$2").replace(/\\([^\/])/g,"$1")};jUQ.unescape=TN0});var Bn=R((kUQ)=>{Object.defineProperty(kUQ,"__esModule",{value:!0});kUQ.AST=void 0;var SN0=wUQ(),RP=zP(),kN0=new Set(["!","?","+","*","@"]),PUQ=(A)=>kN0.has(A),_N0="(?!(?:^|/)\\.\\.?(?:$|/))",wP="(?!\\.)",vN0=new Set(["[","."]),yN0=new Set(["..","."]),hN0=new Set("().*{}+?[]^$\\!"),gN0=(A)=>A.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),Qn="[^/]",TUQ=Qn+"*?",SUQ=Qn+"+?";class p9{type;#A;#Q;#B=!1;#Y=[];#J;#C;#F;#X=!1;#G;#Z;#U=!1;constructor(A,Q,B={}){if(this.type=A,A)this.#Q=!0;if(this.#J=Q,this.#A=this.#J?this.#J.#A:this,this.#G=this.#A===this?B:this.#A.#G,this.#F=this.#A===this?[]:this.#A.#F,A==="!"&&!this.#A.#X)this.#F.push(this);this.#C=this.#J?this.#J.#Y.length:0}get hasMagic(){if(this.#Q!==void 0)return this.#Q;for(let A of this.#Y){if(typeof A==="string")continue;if(A.type||A.hasMagic)return this.#Q=!0}return this.#Q}toString(){if(this.#Z!==void 0)return this.#Z;if(!this.type)return this.#Z=this.#Y.map((A)=>String(A)).join("");else return this.#Z=this.type+"("+this.#Y.map((A)=>String(A)).join("|")+")"}#W(){if(this!==this.#A)throw Error("should only call on root");if(this.#X)return this;this.toString(),this.#X=!0;let A;while(A=this.#F.pop()){if(A.type!=="!")continue;let Q=A,B=Q.#J;while(B){for(let Y=Q.#C+1;!B.type&&Ytypeof Q==="string"?Q:Q.toJSON()):[this.type,...this.#Y.map((Q)=>Q.toJSON())];if(this.isStart()&&!this.type)A.unshift([]);if(this.isEnd()&&(this===this.#A||this.#A.#X&&this.#J?.type==="!"))A.push({});return A}isStart(){if(this.#A===this)return!0;if(!this.#J?.isStart())return!1;if(this.#C===0)return!0;let A=this.#J;for(let Q=0;Q{let[E,K,I,V]=typeof $==="string"?p9.#I($,this.#Q,G):$.toRegExpSource(A);return this.#Q=this.#Q||I,this.#B=this.#B||V,E}).join(""),W="";if(this.isStart()){if(typeof this.#Y[0]==="string"){if(!(this.#Y.length===1&&yN0.has(this.#Y[0]))){let E=vN0,K=Q&&E.has(F.charAt(0))||F.startsWith("\\.")&&E.has(F.charAt(2))||F.startsWith("\\.\\.")&&E.has(F.charAt(4)),I=!Q&&!A&&E.has(F.charAt(0));W=K?_N0:I?wP:""}}}let Z="";if(this.isEnd()&&this.#A.#X&&this.#J?.type==="!")Z="(?:$|\\/)";return[W+F+Z,(0,RP.unescape)(F),this.#Q=!!this.#Q,this.#B]}let B=this.type==="*"||this.type==="+",Y=this.type==="!"?"(?:(?!(?:":"(?:",J=this.#V(Q);if(this.isStart()&&this.isEnd()&&!J&&this.type!=="!"){let G=this.toString();return this.#Y=[G],this.type=null,this.#Q=void 0,[G,(0,RP.unescape)(this.toString()),!1,!1]}let C=!B||A||Q||!wP?"":this.#V(!0);if(C===J)C="";if(C)J=`(?:${J})(?:${C})*?`;let X="";if(this.type==="!"&&this.#U)X=(this.isStart()&&!Q?wP:"")+SUQ;else{let G=this.type==="!"?"))"+(this.isStart()&&!Q&&!A?wP:"")+TUQ+")":this.type==="@"?")":this.type==="?"?")?":this.type==="+"&&C?")":this.type==="*"&&C?")?":`)${this.type}`;X=Y+J+G}return[X,(0,RP.unescape)(J),this.#Q=!!this.#Q,this.#B]}#V(A){return this.#Y.map((Q)=>{if(typeof Q==="string")throw Error("string type in extglob ast??");let[B,Y,J,C]=Q.toRegExpSource(A);return this.#B=this.#B||C,B}).filter((Q)=>!(this.isStart()&&this.isEnd())||!!Q).join("|")}static#I(A,Q,B=!1){let Y=!1,J="",C=!1;for(let X=0;X{Object.defineProperty(vUQ,"__esModule",{value:!0});vUQ.escape=void 0;var xN0=(A,{windowsPathsNoEscape:Q=!1}={})=>{return Q?A.replace(/[?*()[\]]/g,"[$&]"):A.replace(/[?*()[\]\\]/g,"\\$&")};vUQ.escape=xN0});var uUQ=R((rA)=>{var fN0=rA&&rA.__importDefault||function(A){return A&&A.__esModule?A:{default:A}};Object.defineProperty(rA,"__esModule",{value:!0});rA.unescape=rA.escape=rA.AST=rA.Minimatch=rA.match=rA.makeRe=rA.braceExpand=rA.defaults=rA.filter=rA.GLOBSTAR=rA.sep=rA.minimatch=void 0;var bN0=fN0(DUQ()),jP=qUQ(),xUQ=Bn(),mN0=Yn(),uN0=zP(),dN0=(A,Q,B={})=>{if((0,jP.assertValidPattern)(Q),!B.nocomment&&Q.charAt(0)==="#")return!1;return new RK(Q,B).match(A)};rA.minimatch=dN0;var cN0=/^\*+([^+@!?\*\[\(]*)$/,lN0=(A)=>(Q)=>!Q.startsWith(".")&&Q.endsWith(A),pN0=(A)=>(Q)=>Q.endsWith(A),iN0=(A)=>{return A=A.toLowerCase(),(Q)=>!Q.startsWith(".")&&Q.toLowerCase().endsWith(A)},nN0=(A)=>{return A=A.toLowerCase(),(Q)=>Q.toLowerCase().endsWith(A)},sN0=/^\*+\.\*+$/,rN0=(A)=>!A.startsWith(".")&&A.includes("."),aN0=(A)=>A!=="."&&A!==".."&&A.includes("."),oN0=/^\.\*+$/,tN0=(A)=>A!=="."&&A!==".."&&A.startsWith("."),eN0=/^\*+$/,AL0=(A)=>A.length!==0&&!A.startsWith("."),QL0=(A)=>A.length!==0&&A!=="."&&A!=="..",BL0=/^\?+([^+@!?\*\[\(]*)?$/,YL0=([A,Q=""])=>{let B=fUQ([A]);if(!Q)return B;return Q=Q.toLowerCase(),(Y)=>B(Y)&&Y.toLowerCase().endsWith(Q)},JL0=([A,Q=""])=>{let B=bUQ([A]);if(!Q)return B;return Q=Q.toLowerCase(),(Y)=>B(Y)&&Y.toLowerCase().endsWith(Q)},CL0=([A,Q=""])=>{let B=bUQ([A]);return!Q?B:(Y)=>B(Y)&&Y.endsWith(Q)},XL0=([A,Q=""])=>{let B=fUQ([A]);return!Q?B:(Y)=>B(Y)&&Y.endsWith(Q)},fUQ=([A])=>{let Q=A.length;return(B)=>B.length===Q&&!B.startsWith(".")},bUQ=([A])=>{let Q=A.length;return(B)=>B.length===Q&&B!=="."&&B!==".."},mUQ=typeof process==="object"&&process?typeof process.env==="object"&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:"posix",hUQ={win32:{sep:"\\"},posix:{sep:"/"}};rA.sep=mUQ==="win32"?hUQ.win32.sep:hUQ.posix.sep;rA.minimatch.sep=rA.sep;rA.GLOBSTAR=Symbol("globstar **");rA.minimatch.GLOBSTAR=rA.GLOBSTAR;var GL0="[^/]",FL0=GL0+"*?",WL0="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",ZL0="(?:(?!(?:\\/|^)\\.).)*?",$L0=(A,Q={})=>(B)=>(0,rA.minimatch)(B,A,Q);rA.filter=$L0;rA.minimatch.filter=rA.filter;var c5=(A,Q={})=>Object.assign({},A,Q),UL0=(A)=>{if(!A||typeof A!=="object"||!Object.keys(A).length)return rA.minimatch;let Q=rA.minimatch;return Object.assign((Y,J,C={})=>Q(Y,J,c5(A,C)),{Minimatch:class extends Q.Minimatch{constructor(J,C={}){super(J,c5(A,C))}static defaults(J){return Q.defaults(c5(A,J)).Minimatch}},AST:class extends Q.AST{constructor(J,C,X={}){super(J,C,c5(A,X))}static fromGlob(J,C={}){return Q.AST.fromGlob(J,c5(A,C))}},unescape:(Y,J={})=>Q.unescape(Y,c5(A,J)),escape:(Y,J={})=>Q.escape(Y,c5(A,J)),filter:(Y,J={})=>Q.filter(Y,c5(A,J)),defaults:(Y)=>Q.defaults(c5(A,Y)),makeRe:(Y,J={})=>Q.makeRe(Y,c5(A,J)),braceExpand:(Y,J={})=>Q.braceExpand(Y,c5(A,J)),match:(Y,J,C={})=>Q.match(Y,J,c5(A,C)),sep:Q.sep,GLOBSTAR:rA.GLOBSTAR})};rA.defaults=UL0;rA.minimatch.defaults=rA.defaults;var EL0=(A,Q={})=>{if((0,jP.assertValidPattern)(A),Q.nobrace||!/\{(?:(?!\{).)*\}/.test(A))return[A];return(0,bN0.default)(A)};rA.braceExpand=EL0;rA.minimatch.braceExpand=rA.braceExpand;var KL0=(A,Q={})=>new RK(A,Q).makeRe();rA.makeRe=KL0;rA.minimatch.makeRe=rA.makeRe;var VL0=(A,Q,B={})=>{let Y=new RK(Q,B);if(A=A.filter((J)=>Y.match(J)),Y.options.nonull&&!A.length)A.push(Q);return A};rA.match=VL0;rA.minimatch.match=rA.match;var gUQ=/[?*]|[+@!]\(.*?\)|\[|\]/,IL0=(A)=>A.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&");class RK{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;regexp;constructor(A,Q={}){if((0,jP.assertValidPattern)(A),Q=Q||{},this.options=Q,this.pattern=A,this.platform=Q.platform||mUQ,this.isWindows=this.platform==="win32",this.windowsPathsNoEscape=!!Q.windowsPathsNoEscape||Q.allowWindowsEscape===!1,this.windowsPathsNoEscape)this.pattern=this.pattern.replace(/\\/g,"/");this.preserveMultipleSlashes=!!Q.preserveMultipleSlashes,this.regexp=null,this.negate=!1,this.nonegate=!!Q.nonegate,this.comment=!1,this.empty=!1,this.partial=!!Q.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=Q.windowsNoMagicRoot!==void 0?Q.windowsNoMagicRoot:!!(this.isWindows&&this.nocase),this.globSet=[],this.globParts=[],this.set=[],this.make()}hasMagic(){if(this.options.magicalBraces&&this.set.length>1)return!0;for(let A of this.set)for(let Q of A)if(typeof Q!=="string")return!0;return!1}debug(...A){}make(){let A=this.pattern,Q=this.options;if(!Q.nocomment&&A.charAt(0)==="#"){this.comment=!0;return}if(!A){this.empty=!0;return}if(this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],Q.debug)this.debug=(...J)=>console.error(...J);this.debug(this.pattern,this.globSet);let B=this.globSet.map((J)=>this.slashSplit(J));this.globParts=this.preprocess(B),this.debug(this.pattern,this.globParts);let Y=this.globParts.map((J,C,X)=>{if(this.isWindows&&this.windowsNoMagicRoot){let G=J[0]===""&&J[1]===""&&(J[2]==="?"||!gUQ.test(J[2]))&&!gUQ.test(J[3]),F=/^[a-z]:/i.test(J[0]);if(G)return[...J.slice(0,4),...J.slice(4).map((W)=>this.parse(W))];else if(F)return[J[0],...J.slice(1).map((W)=>this.parse(W))]}return J.map((G)=>this.parse(G))});if(this.debug(this.pattern,Y),this.set=Y.filter((J)=>J.indexOf(!1)===-1),this.isWindows)for(let J=0;J=2)A=this.firstPhasePreProcess(A),A=this.secondPhasePreProcess(A);else if(Q>=1)A=this.levelOneOptimize(A);else A=this.adjascentGlobstarOptimize(A);return A}adjascentGlobstarOptimize(A){return A.map((Q)=>{let B=-1;while((B=Q.indexOf("**",B+1))!==-1){let Y=B;while(Q[Y+1]==="**")Y++;if(Y!==B)Q.splice(B,Y-B)}return Q})}levelOneOptimize(A){return A.map((Q)=>{return Q=Q.reduce((B,Y)=>{let J=B[B.length-1];if(Y==="**"&&J==="**")return B;if(Y===".."){if(J&&J!==".."&&J!=="."&&J!=="**")return B.pop(),B}return B.push(Y),B},[]),Q.length===0?[""]:Q})}levelTwoFileOptimize(A){if(!Array.isArray(A))A=this.slashSplit(A);let Q=!1;do{if(Q=!1,!this.preserveMultipleSlashes){for(let Y=1;YY)B.splice(Y+1,C-Y);let X=B[Y+1],G=B[Y+2],F=B[Y+3];if(X!=="..")continue;if(!G||G==="."||G===".."||!F||F==="."||F==="..")continue;Q=!0,B.splice(Y,1);let W=B.slice(0);W[Y]="**",A.push(W),Y--}if(!this.preserveMultipleSlashes){for(let C=1;CQ.length)}partsMatch(A,Q,B=!1){let Y=0,J=0,C=[],X="";while(YD)Q=Q.slice(L);else if(D>L)A=A.slice(D)}}}let{optimizationLevel:J=1}=this.options;if(J>=2)A=this.levelTwoFileOptimize(A);this.debug("matchOne",this,{file:A,pattern:Q}),this.debug("matchOne",A.length,Q.length);for(var C=0,X=0,G=A.length,F=Q.length;CQ.trim()).join(" ")};lhA.O=function(A){return this.inspectOpts.colors=this.useColors,nO.inspect(A,this.inspectOpts)}});var shA=R((egY,Mp)=>{if(typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs)Mp.exports=bhA();else Mp.exports=nhA()});var Rp=R((AhY,rhA)=>{var zp=u("path").sep;rhA.exports=function(A){var Q=A.split(zp),B=Q.lastIndexOf("node_modules");if(B===-1)return;if(!Q[B+1])return;var Y=Q[B+1][0]==="@",J=Y?Q[B+1]+"/"+Q[B+2]:Q[B+1],C=Y?3:2,X="",G=B+C-1;for(var W=0;W<=G;W++)if(W===G)X+=Q[W];else X+=Q[W]+zp;var F="",Z=Q.length-1;for(var U=B+C;U<=Z;U++)if(U===Z)F+=Q[U];else F+=Q[U]+zp;return{name:J,basedir:X,path:F}}});var wp=R((QhY,ahA)=>{var JvB=u("os");ahA.exports=JvB.homedir||function(){var Q=process.env.HOME,B=process.env.LOGNAME||process.env.USER||process.env.LNAME||process.env.USERNAME;if(process.platform==="win32")return process.env.USERPROFILE||process.env.HOMEDRIVE+process.env.HOMEPATH||Q||null;if(process.platform==="darwin")return Q||(B?"/Users/"+B:null);if(process.platform==="linux")return Q||(process.getuid()===0?"/root":B?"/home/"+B:null);return Q||null}});var jp=R((BhY,ohA)=>{ohA.exports=function(){var A=Error.prepareStackTrace;Error.prepareStackTrace=function(B,Y){return Y};var Q=Error().stack;return Error.prepareStackTrace=A,Q[2].getFileName()}});var thA=R((YhY,VL)=>{var CvB=process.platform==="win32",XvB=/^(((?:[a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/]+)?[\\\/]?)(?:[^\\\/]*[\\\/])*)((\.{1,2}|[^\\\/]+?|)(\.[^.\/\\]*|))[\\\/]*$/,Op={};function GvB(A){return XvB.exec(A).slice(1)}Op.parse=function(A){if(typeof A!=="string")throw TypeError("Parameter 'pathString' must be a string, not "+typeof A);var Q=GvB(A);if(!Q||Q.length!==5)throw TypeError("Invalid path '"+A+"'");return{root:Q[1],dir:Q[0]===Q[1]?Q[0]:Q[0].slice(0,-1),base:Q[2],ext:Q[4],name:Q[3]}};var WvB=/^((\/?)(?:[^\/]*\/)*)((\.{1,2}|[^\/]+?|)(\.[^.\/]*|))[\/]*$/,Pp={};function FvB(A){return WvB.exec(A).slice(1)}Pp.parse=function(A){if(typeof A!=="string")throw TypeError("Parameter 'pathString' must be a string, not "+typeof A);var Q=FvB(A);if(!Q||Q.length!==5)throw TypeError("Invalid path '"+A+"'");return{root:Q[1],dir:Q[0].slice(0,-1),base:Q[2],ext:Q[4],name:Q[3]}};if(CvB)VL.exports=Op.parse;else VL.exports=Pp.parse;VL.exports.posix=Pp.parse;VL.exports.win32=Op.parse});var Tp=R((JhY,BxA)=>{var QxA=u("path"),ehA=QxA.parse||thA(),AxA=function(Q,B){var Y="/";if(/^([A-Za-z]:)/.test(Q))Y="";else if(/^\\\\/.test(Q))Y="\\\\";var J=[Q],C=ehA(Q);while(C.dir!==J[J.length-1])J.push(C.dir),C=ehA(C.dir);return J.reduce(function(X,G){return X.concat(B.map(function(W){return QxA.resolve(Y,G,W)}))},[])};BxA.exports=function(Q,B,Y){var J=B&&B.moduleDirectory?[].concat(B.moduleDirectory):["node_modules"];if(B&&typeof B.paths==="function")return B.paths(Y,Q,function(){return AxA(Q,J)},B);var C=AxA(Q,J);return B&&B.paths?C.concat(B.paths):C}});var Sp=R((ChY,YxA)=>{YxA.exports=function(A,Q){return Q||{}}});var XxA=R((XhY,CxA)=>{var ZvB="Function.prototype.bind called on incompatible ",$vB=Object.prototype.toString,UvB=Math.max,EvB="[object Function]",JxA=function(Q,B){var Y=[];for(var J=0;J{var IvB=XxA();GxA.exports=Function.prototype.bind||IvB});var ZxA=R((WhY,FxA)=>{var HvB=Function.prototype.call,DvB=Object.prototype.hasOwnProperty,NvB=WxA();FxA.exports=NvB.call(HvB,DvB)});var $xA=R((FhY,LvB)=>{LvB.exports={assert:!0,"node:assert":[">= 14.18 && < 15",">= 16"],"assert/strict":">= 15","node:assert/strict":">= 16",async_hooks:">= 8","node:async_hooks":[">= 14.18 && < 15",">= 16"],buffer_ieee754:">= 0.5 && < 0.9.7",buffer:!0,"node:buffer":[">= 14.18 && < 15",">= 16"],child_process:!0,"node:child_process":[">= 14.18 && < 15",">= 16"],cluster:">= 0.5","node:cluster":[">= 14.18 && < 15",">= 16"],console:!0,"node:console":[">= 14.18 && < 15",">= 16"],constants:!0,"node:constants":[">= 14.18 && < 15",">= 16"],crypto:!0,"node:crypto":[">= 14.18 && < 15",">= 16"],_debug_agent:">= 1 && < 8",_debugger:"< 8",dgram:!0,"node:dgram":[">= 14.18 && < 15",">= 16"],diagnostics_channel:[">= 14.17 && < 15",">= 15.1"],"node:diagnostics_channel":[">= 14.18 && < 15",">= 16"],dns:!0,"node:dns":[">= 14.18 && < 15",">= 16"],"dns/promises":">= 15","node:dns/promises":">= 16",domain:">= 0.7.12","node:domain":[">= 14.18 && < 15",">= 16"],events:!0,"node:events":[">= 14.18 && < 15",">= 16"],freelist:"< 6",fs:!0,"node:fs":[">= 14.18 && < 15",">= 16"],"fs/promises":[">= 10 && < 10.1",">= 14"],"node:fs/promises":[">= 14.18 && < 15",">= 16"],_http_agent:">= 0.11.1","node:_http_agent":[">= 14.18 && < 15",">= 16"],_http_client:">= 0.11.1","node:_http_client":[">= 14.18 && < 15",">= 16"],_http_common:">= 0.11.1","node:_http_common":[">= 14.18 && < 15",">= 16"],_http_incoming:">= 0.11.1","node:_http_incoming":[">= 14.18 && < 15",">= 16"],_http_outgoing:">= 0.11.1","node:_http_outgoing":[">= 14.18 && < 15",">= 16"],_http_server:">= 0.11.1","node:_http_server":[">= 14.18 && < 15",">= 16"],http:!0,"node:http":[">= 14.18 && < 15",">= 16"],http2:">= 8.8","node:http2":[">= 14.18 && < 15",">= 16"],https:!0,"node:https":[">= 14.18 && < 15",">= 16"],inspector:">= 8","node:inspector":[">= 14.18 && < 15",">= 16"],"inspector/promises":[">= 19"],"node:inspector/promises":[">= 19"],_linklist:"< 8",module:!0,"node:module":[">= 14.18 && < 15",">= 16"],net:!0,"node:net":[">= 14.18 && < 15",">= 16"],"node-inspect/lib/_inspect":">= 7.6 && < 12","node-inspect/lib/internal/inspect_client":">= 7.6 && < 12","node-inspect/lib/internal/inspect_repl":">= 7.6 && < 12",os:!0,"node:os":[">= 14.18 && < 15",">= 16"],path:!0,"node:path":[">= 14.18 && < 15",">= 16"],"path/posix":">= 15.3","node:path/posix":">= 16","path/win32":">= 15.3","node:path/win32":">= 16",perf_hooks:">= 8.5","node:perf_hooks":[">= 14.18 && < 15",">= 16"],process:">= 1","node:process":[">= 14.18 && < 15",">= 16"],punycode:">= 0.5","node:punycode":[">= 14.18 && < 15",">= 16"],querystring:!0,"node:querystring":[">= 14.18 && < 15",">= 16"],readline:!0,"node:readline":[">= 14.18 && < 15",">= 16"],"readline/promises":">= 17","node:readline/promises":">= 17",repl:!0,"node:repl":[">= 14.18 && < 15",">= 16"],"node:sea":[">= 20.12 && < 21",">= 21.7"],smalloc:">= 0.11.5 && < 3","node:sqlite":[">= 22.13 && < 23",">= 23.4"],_stream_duplex:">= 0.9.4","node:_stream_duplex":[">= 14.18 && < 15",">= 16"],_stream_transform:">= 0.9.4","node:_stream_transform":[">= 14.18 && < 15",">= 16"],_stream_wrap:">= 1.4.1","node:_stream_wrap":[">= 14.18 && < 15",">= 16"],_stream_passthrough:">= 0.9.4","node:_stream_passthrough":[">= 14.18 && < 15",">= 16"],_stream_readable:">= 0.9.4","node:_stream_readable":[">= 14.18 && < 15",">= 16"],_stream_writable:">= 0.9.4","node:_stream_writable":[">= 14.18 && < 15",">= 16"],stream:!0,"node:stream":[">= 14.18 && < 15",">= 16"],"stream/consumers":">= 16.7","node:stream/consumers":">= 16.7","stream/promises":">= 15","node:stream/promises":">= 16","stream/web":">= 16.5","node:stream/web":">= 16.5",string_decoder:!0,"node:string_decoder":[">= 14.18 && < 15",">= 16"],sys:[">= 0.4 && < 0.7",">= 0.8"],"node:sys":[">= 14.18 && < 15",">= 16"],"test/reporters":">= 19.9 && < 20.2","node:test/reporters":[">= 18.17 && < 19",">= 19.9",">= 20"],"test/mock_loader":">= 22.3 && < 22.7","node:test/mock_loader":">= 22.3 && < 22.7","node:test":[">= 16.17 && < 17",">= 18"],timers:!0,"node:timers":[">= 14.18 && < 15",">= 16"],"timers/promises":">= 15","node:timers/promises":">= 16",_tls_common:">= 0.11.13","node:_tls_common":[">= 14.18 && < 15",">= 16"],_tls_legacy:">= 0.11.3 && < 10",_tls_wrap:">= 0.11.3","node:_tls_wrap":[">= 14.18 && < 15",">= 16"],tls:!0,"node:tls":[">= 14.18 && < 15",">= 16"],trace_events:">= 10","node:trace_events":[">= 14.18 && < 15",">= 16"],tty:!0,"node:tty":[">= 14.18 && < 15",">= 16"],url:!0,"node:url":[">= 14.18 && < 15",">= 16"],util:!0,"node:util":[">= 14.18 && < 15",">= 16"],"util/types":">= 15.3","node:util/types":">= 16","v8/tools/arguments":">= 10 && < 12","v8/tools/codemap":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/consarray":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/csvparser":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/logreader":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/profile_view":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/splaytree":[">= 4.4 && < 5",">= 5.2 && < 12"],v8:">= 1","node:v8":[">= 14.18 && < 15",">= 16"],vm:!0,"node:vm":[">= 14.18 && < 15",">= 16"],wasi:[">= 13.4 && < 13.5",">= 18.17 && < 19",">= 20"],"node:wasi":[">= 18.17 && < 19",">= 20"],worker_threads:">= 11.7","node:worker_threads":[">= 14.18 && < 15",">= 16"],zlib:">= 0.5","node:zlib":[">= 14.18 && < 15",">= 16"]}});var IL=R((ZhY,KxA)=>{var qvB=ZxA();function MvB(A,Q){var B=A.split("."),Y=Q.split(" "),J=Y.length>1?Y[0]:"=",C=(Y.length>1?Y[1]:Y[0]).split(".");for(var X=0;X<3;++X){var G=parseInt(B[X]||0,10),W=parseInt(C[X]||0,10);if(G===W)continue;if(J==="<")return G=")return G>=W;return!1}return J===">="}function UxA(A,Q){var B=Q.split(/ ?&& ?/);if(B.length===0)return!1;for(var Y=0;Y"u"?process.versions&&process.versions.node:A;if(typeof B!=="string")throw TypeError(typeof A>"u"?"Unable to determine current node version":"If provided, a valid node version is required");if(Q&&typeof Q==="object"){for(var Y=0;Y{var X$=u("fs"),RvB=wp(),zY=u("path"),wvB=jp(),jvB=Tp(),OvB=Sp(),PvB=IL(),TvB=process.platform!=="win32"&&X$.realpath&&typeof X$.realpath.native==="function"?X$.realpath.native:X$.realpath,VxA=RvB(),SvB=function(){return[zY.join(VxA,".node_modules"),zY.join(VxA,".node_libraries")]},kvB=function(Q,B){X$.stat(Q,function(Y,J){if(!Y)return B(null,J.isFile()||J.isFIFO());if(Y.code==="ENOENT"||Y.code==="ENOTDIR")return B(null,!1);return B(Y)})},_vB=function(Q,B){X$.stat(Q,function(Y,J){if(!Y)return B(null,J.isDirectory());if(Y.code==="ENOENT"||Y.code==="ENOTDIR")return B(null,!1);return B(Y)})},vvB=function(Q,B){TvB(Q,function(Y,J){if(Y&&Y.code!=="ENOENT")B(Y);else B(null,Y?Q:J)})},HL=function(Q,B,Y,J){if(Y&&Y.preserveSymlinks===!1)Q(B,J);else J(null,B)},yvB=function(Q,B,Y){Q(B,function(J,C){if(J)Y(J);else try{var X=JSON.parse(C);Y(null,X)}catch(G){Y(null)}})},gvB=function(Q,B,Y){var J=jvB(B,Y,Q);for(var C=0;C{hvB.exports={assert:!0,"node:assert":[">= 14.18 && < 15",">= 16"],"assert/strict":">= 15","node:assert/strict":">= 16",async_hooks:">= 8","node:async_hooks":[">= 14.18 && < 15",">= 16"],buffer_ieee754:">= 0.5 && < 0.9.7",buffer:!0,"node:buffer":[">= 14.18 && < 15",">= 16"],child_process:!0,"node:child_process":[">= 14.18 && < 15",">= 16"],cluster:">= 0.5","node:cluster":[">= 14.18 && < 15",">= 16"],console:!0,"node:console":[">= 14.18 && < 15",">= 16"],constants:!0,"node:constants":[">= 14.18 && < 15",">= 16"],crypto:!0,"node:crypto":[">= 14.18 && < 15",">= 16"],_debug_agent:">= 1 && < 8",_debugger:"< 8",dgram:!0,"node:dgram":[">= 14.18 && < 15",">= 16"],diagnostics_channel:[">= 14.17 && < 15",">= 15.1"],"node:diagnostics_channel":[">= 14.18 && < 15",">= 16"],dns:!0,"node:dns":[">= 14.18 && < 15",">= 16"],"dns/promises":">= 15","node:dns/promises":">= 16",domain:">= 0.7.12","node:domain":[">= 14.18 && < 15",">= 16"],events:!0,"node:events":[">= 14.18 && < 15",">= 16"],freelist:"< 6",fs:!0,"node:fs":[">= 14.18 && < 15",">= 16"],"fs/promises":[">= 10 && < 10.1",">= 14"],"node:fs/promises":[">= 14.18 && < 15",">= 16"],_http_agent:">= 0.11.1","node:_http_agent":[">= 14.18 && < 15",">= 16"],_http_client:">= 0.11.1","node:_http_client":[">= 14.18 && < 15",">= 16"],_http_common:">= 0.11.1","node:_http_common":[">= 14.18 && < 15",">= 16"],_http_incoming:">= 0.11.1","node:_http_incoming":[">= 14.18 && < 15",">= 16"],_http_outgoing:">= 0.11.1","node:_http_outgoing":[">= 14.18 && < 15",">= 16"],_http_server:">= 0.11.1","node:_http_server":[">= 14.18 && < 15",">= 16"],http:!0,"node:http":[">= 14.18 && < 15",">= 16"],http2:">= 8.8","node:http2":[">= 14.18 && < 15",">= 16"],https:!0,"node:https":[">= 14.18 && < 15",">= 16"],inspector:">= 8","node:inspector":[">= 14.18 && < 15",">= 16"],"inspector/promises":[">= 19"],"node:inspector/promises":[">= 19"],_linklist:"< 8",module:!0,"node:module":[">= 14.18 && < 15",">= 16"],net:!0,"node:net":[">= 14.18 && < 15",">= 16"],"node-inspect/lib/_inspect":">= 7.6 && < 12","node-inspect/lib/internal/inspect_client":">= 7.6 && < 12","node-inspect/lib/internal/inspect_repl":">= 7.6 && < 12",os:!0,"node:os":[">= 14.18 && < 15",">= 16"],path:!0,"node:path":[">= 14.18 && < 15",">= 16"],"path/posix":">= 15.3","node:path/posix":">= 16","path/win32":">= 15.3","node:path/win32":">= 16",perf_hooks:">= 8.5","node:perf_hooks":[">= 14.18 && < 15",">= 16"],process:">= 1","node:process":[">= 14.18 && < 15",">= 16"],punycode:">= 0.5","node:punycode":[">= 14.18 && < 15",">= 16"],querystring:!0,"node:querystring":[">= 14.18 && < 15",">= 16"],readline:!0,"node:readline":[">= 14.18 && < 15",">= 16"],"readline/promises":">= 17","node:readline/promises":">= 17",repl:!0,"node:repl":[">= 14.18 && < 15",">= 16"],"node:sea":[">= 20.12 && < 21",">= 21.7"],smalloc:">= 0.11.5 && < 3","node:sqlite":">= 23.4",_stream_duplex:">= 0.9.4","node:_stream_duplex":[">= 14.18 && < 15",">= 16"],_stream_transform:">= 0.9.4","node:_stream_transform":[">= 14.18 && < 15",">= 16"],_stream_wrap:">= 1.4.1","node:_stream_wrap":[">= 14.18 && < 15",">= 16"],_stream_passthrough:">= 0.9.4","node:_stream_passthrough":[">= 14.18 && < 15",">= 16"],_stream_readable:">= 0.9.4","node:_stream_readable":[">= 14.18 && < 15",">= 16"],_stream_writable:">= 0.9.4","node:_stream_writable":[">= 14.18 && < 15",">= 16"],stream:!0,"node:stream":[">= 14.18 && < 15",">= 16"],"stream/consumers":">= 16.7","node:stream/consumers":">= 16.7","stream/promises":">= 15","node:stream/promises":">= 16","stream/web":">= 16.5","node:stream/web":">= 16.5",string_decoder:!0,"node:string_decoder":[">= 14.18 && < 15",">= 16"],sys:[">= 0.4 && < 0.7",">= 0.8"],"node:sys":[">= 14.18 && < 15",">= 16"],"test/reporters":">= 19.9 && < 20.2","node:test/reporters":[">= 18.17 && < 19",">= 19.9",">= 20"],"test/mock_loader":">= 22.3 && < 22.7","node:test/mock_loader":">= 22.3 && < 22.7","node:test":[">= 16.17 && < 17",">= 18"],timers:!0,"node:timers":[">= 14.18 && < 15",">= 16"],"timers/promises":">= 15","node:timers/promises":">= 16",_tls_common:">= 0.11.13","node:_tls_common":[">= 14.18 && < 15",">= 16"],_tls_legacy:">= 0.11.3 && < 10",_tls_wrap:">= 0.11.3","node:_tls_wrap":[">= 14.18 && < 15",">= 16"],tls:!0,"node:tls":[">= 14.18 && < 15",">= 16"],trace_events:">= 10","node:trace_events":[">= 14.18 && < 15",">= 16"],tty:!0,"node:tty":[">= 14.18 && < 15",">= 16"],url:!0,"node:url":[">= 14.18 && < 15",">= 16"],util:!0,"node:util":[">= 14.18 && < 15",">= 16"],"util/types":">= 15.3","node:util/types":">= 16","v8/tools/arguments":">= 10 && < 12","v8/tools/codemap":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/consarray":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/csvparser":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/logreader":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/profile_view":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/splaytree":[">= 4.4 && < 5",">= 5.2 && < 12"],v8:">= 1","node:v8":[">= 14.18 && < 15",">= 16"],vm:!0,"node:vm":[">= 14.18 && < 15",">= 16"],wasi:[">= 13.4 && < 13.5",">= 18.17 && < 19",">= 20"],"node:wasi":[">= 18.17 && < 19",">= 20"],worker_threads:">= 11.7","node:worker_threads":[">= 14.18 && < 15",">= 16"],zlib:">= 0.5","node:zlib":[">= 14.18 && < 15",">= 16"]}});var MxA=R((EhY,qxA)=>{var xvB=IL(),NxA=DxA(),LxA={};for(DL in NxA)if(Object.prototype.hasOwnProperty.call(NxA,DL))LxA[DL]=xvB(DL);var DL;qxA.exports=LxA});var RxA=R((KhY,zxA)=>{var fvB=IL();zxA.exports=function(Q){return fvB(Q)}});var OxA=R((VhY,jxA)=>{var bvB=IL(),G$=u("fs"),yJ=u("path"),mvB=wp(),uvB=jp(),dvB=Tp(),cvB=Sp(),lvB=process.platform!=="win32"&&G$.realpathSync&&typeof G$.realpathSync.native==="function"?G$.realpathSync.native:G$.realpathSync,wxA=mvB(),pvB=function(){return[yJ.join(wxA,".node_modules"),yJ.join(wxA,".node_libraries")]},ivB=function(Q){try{var B=G$.statSync(Q,{throwIfNoEntry:!1})}catch(Y){if(Y&&(Y.code==="ENOENT"||Y.code==="ENOTDIR"))return!1;throw Y}return!!B&&(B.isFile()||B.isFIFO())},nvB=function(Q){try{var B=G$.statSync(Q,{throwIfNoEntry:!1})}catch(Y){if(Y&&(Y.code==="ENOENT"||Y.code==="ENOTDIR"))return!1;throw Y}return!!B&&B.isDirectory()},svB=function(Q){try{return lvB(Q)}catch(B){if(B.code!=="ENOENT")throw B}return Q},NL=function(Q,B,Y){if(Y&&Y.preserveSymlinks===!1)return Q(B);return B},rvB=function(Q,B){var Y=Q(B);try{var J=JSON.parse(Y);return J}catch(C){}},avB=function(Q,B,Y){var J=dvB(B,Y,Q);for(var C=0;C{var rO=HxA();rO.core=MxA();rO.isCore=RxA();rO.sync=OxA();PxA.exports=rO});var TxA=R((HhY,ovB)=>{ovB.exports={name:"require-in-the-middle",version:"7.5.2",description:"Module to hook into the Node.js require function",main:"index.js",types:"types/index.d.ts",dependencies:{debug:"^4.3.5","module-details-from-path":"^1.0.3",resolve:"^1.22.8"},devDependencies:{"@babel/core":"^7.9.0","@babel/preset-env":"^7.9.5","@babel/preset-typescript":"^7.9.0","@babel/register":"^7.9.0","ipp-printer":"^1.0.0",patterns:"^1.0.3",roundround:"^0.2.0",semver:"^6.3.0",standard:"^14.3.1",tape:"^4.11.0"},scripts:{test:"npm run test:lint && npm run test:tape && npm run test:babel","test:lint":"standard","test:tape":"tape test/*.js","test:babel":"node test/babel/babel-register.js"},repository:{type:"git",url:"git+https://github.com/nodejs/require-in-the-middle.git"},keywords:["require","hook","shim","shimmer","shimming","patch","monkey","monkeypatch","module","load"],files:["types"],author:"Thomas Watson Steen (https://twitter.com/wa7son)",license:"MIT",bugs:{url:"https://github.com/nodejs/require-in-the-middle/issues"},homepage:"https://github.com/nodejs/require-in-the-middle#readme",engines:{node:">=8.6.0"}}});var yp=R((DhY,vp)=>{var $K=u("path"),W1=u("module"),EY=shA()("require-in-the-middle"),tvB=Rp();vp.exports=LL;vp.exports.Hook=LL;var _p,ZK;if(W1.isBuiltin)ZK=W1.isBuiltin;else if(W1.builtinModules)ZK=(A)=>{if(A.startsWith("node:"))return!0;if(_p===void 0)_p=new Set(W1.builtinModules);return _p.has(A)};else{let A=kp(),[Q,B]=process.versions.node.split(".").map(Number);if(Q===8&&B<8)ZK=(Y)=>{if(Y==="http2")return!0;return!!A.core[Y]};else ZK=(Y)=>{return!!A.core[Y]}}var aO;function evB(A,Q){if(!aO)if(u.resolve&&u.resolve.paths)aO=function(B,Y){return u.resolve(B,{paths:[Y]})};else{let B=kp();aO=function(Y,J){return B.sync(Y,{basedir:J})}}return aO(A,Q)}var AyB=/([/\\]index)?(\.js)?$/;class SxA{constructor(){this._localCache=new Map,this._kRitmExports=Symbol("RitmExports")}has(A,Q){if(this._localCache.has(A))return!0;else if(!Q){let B=u.cache[A];return!!(B&&(this._kRitmExports in B))}else return!1}get(A,Q){let B=this._localCache.get(A);if(B!==void 0)return B;else if(!Q){let Y=u.cache[A];return Y&&Y[this._kRitmExports]}}set(A,Q,B){if(B)this._localCache.set(A,Q);else if(A in u.cache)u.cache[A][this._kRitmExports]=Q;else EY('non-core module is unexpectedly not in require.cache: "%s"',A),this._localCache.set(A,Q)}}function LL(A,Q,B){if(this instanceof LL===!1)return new LL(A,Q,B);if(typeof A==="function")B=A,A=null,Q=null;else if(typeof Q==="function")B=Q,Q=null;if(typeof W1._resolveFilename!=="function"){console.error("Error: Expected Module._resolveFilename to be a function (was: %s) - aborting!",typeof W1._resolveFilename),console.error("Please report this error as an issue related to Node.js %s at %s",process.version,TxA().bugs.url);return}this._cache=new SxA,this._unhooked=!1,this._origRequire=W1.prototype.require;let Y=this,J=new Set,C=Q?Q.internals===!0:!1,X=Array.isArray(A);if(EY("registering require hook"),this._require=W1.prototype.require=function(W){if(Y._unhooked===!0)return EY("ignoring require call - module is soft-unhooked"),Y._origRequire.apply(this,arguments);return G.call(this,arguments,!1)},typeof process.getBuiltinModule==="function")this._origGetBuiltinModule=process.getBuiltinModule,this._getBuiltinModule=process.getBuiltinModule=function(W){if(Y._unhooked===!0)return EY("ignoring process.getBuiltinModule call - module is soft-unhooked"),Y._origGetBuiltinModule.apply(this,arguments);return G.call(this,arguments,!0)};function G(W,F){let Z=W[0],U=ZK(Z),$;if(U){if($=Z,Z.startsWith("node:")){let D=Z.slice(5);if(ZK(D))$=D}}else if(F)return EY("call to process.getBuiltinModule with unknown built-in id"),Y._origGetBuiltinModule.apply(this,W);else try{$=W1._resolveFilename(Z,this)}catch(D){return EY('Module._resolveFilename("%s") threw %j, calling original Module.require',Z,D.message),Y._origRequire.apply(this,W)}let E,K;if(EY("processing %s module require('%s'): %s",U===!0?"core":"non-core",Z,$),Y._cache.has($,U)===!0)return EY("returning already patched cached module: %s",$),Y._cache.get($,U);let I=J.has($);if(I===!1)J.add($);let V=F?Y._origGetBuiltinModule.apply(this,W):Y._origRequire.apply(this,W);if(I===!0)return EY("module is in the process of being patched already - ignoring: %s",$),V;if(J.delete($),U===!0){if(X===!0&&A.includes($)===!1)return EY("ignoring core module not on whitelist: %s",$),V;E=$}else if(X===!0&&A.includes($)){let D=$K.parse($);E=D.name,K=D.dir}else{let D=tvB($);if(D===void 0)return EY("could not parse filename: %s",$),V;E=D.name,K=D.basedir;let L=QyB(D);EY("resolved filename to module: %s (id: %s, resolved: %s, basedir: %s)",E,Z,L,K);let z=!1;if(X){if(!Z.startsWith(".")&&A.includes(Z))E=Z,z=!0;if(!A.includes(E)&&!A.includes(L))return V;if(A.includes(L)&&L!==E)E=L,z=!0}if(!z){let M;try{M=evB(E,K)}catch(N){return EY("could not resolve module: %s",E),Y._cache.set($,V,U),V}if(M!==$)if(C===!0)E=E+$K.sep+$K.relative(K,$),EY("preparing to process require of internal file: %s",E);else return EY("ignoring require of non-main module file: %s",M),Y._cache.set($,V,U),V}}Y._cache.set($,V,U),EY("calling require hook: %s",E);let H=B(V,E,K);return Y._cache.set($,H,U),EY("returning module: %s",E),H}}LL.prototype.unhook=function(){if(this._unhooked=!0,this._require===W1.prototype.require)W1.prototype.require=this._origRequire,EY("require unhook successful");else EY("require unhook unsuccessful");if(process.getBuiltinModule!==void 0)if(this._getBuiltinModule===process.getBuiltinModule)process.getBuiltinModule=this._origGetBuiltinModule,EY("process.getBuiltinModule unhook successful");else EY("process.getBuiltinModule unhook unsuccessful")};function QyB(A){let Q=$K.sep!=="/"?A.path.split($K.sep).join("/"):A.path;return $K.posix.join(A.name,Q).replace(AyB,"")}});var yxA=R((_xA)=>{Object.defineProperty(_xA,"__esModule",{value:!0});_xA.ModuleNameTrie=_xA.ModuleNameSeparator=void 0;_xA.ModuleNameSeparator="/";class gp{constructor(){this.hooks=[],this.children=new Map}}class kxA{constructor(){this._trie=new gp,this._counter=0}insert(A){let Q=this._trie;for(let B of A.moduleName.split(_xA.ModuleNameSeparator)){let Y=Q.children.get(B);if(!Y)Y=new gp,Q.children.set(B,Y);Q=Y}Q.hooks.push({hook:A,insertedId:this._counter++})}search(A,{maintainInsertionOrder:Q,fullOnly:B}={}){let Y=this._trie,J=[],C=!0;for(let X of A.split(_xA.ModuleNameSeparator)){let G=Y.children.get(X);if(!G){C=!1;break}if(!B)J.push(...G.hooks);Y=G}if(B&&C)J.push(...Y.hooks);if(J.length===0)return[];if(J.length===1)return[J[0].hook];if(Q)J.sort((X,G)=>X.insertedId-G.insertedId);return J.map(({hook:X})=>X)}}_xA.ModuleNameTrie=kxA});var fxA=R((hxA)=>{Object.defineProperty(hxA,"__esModule",{value:!0});hxA.RequireInTheMiddleSingleton=void 0;var ByB=yp(),gxA=u("path"),xp=yxA(),YyB=["afterEach","after","beforeEach","before","describe","it"].every((A)=>{return typeof global[A]==="function"});class oO{constructor(){this._moduleNameTrie=new xp.ModuleNameTrie,this._initialize()}_initialize(){new ByB.Hook(null,{internals:!0},(A,Q,B)=>{let Y=JyB(Q),J=this._moduleNameTrie.search(Y,{maintainInsertionOrder:!0,fullOnly:B===void 0});for(let{onRequire:C}of J)A=C(A,Q,B);return A})}register(A,Q){let B={moduleName:A,onRequire:Q};return this._moduleNameTrie.insert(B),B}static getInstance(){var A;if(YyB)return new oO;return this._instance=(A=this._instance)!==null&&A!==void 0?A:new oO}}hxA.RequireInTheMiddleSingleton=oO;function JyB(A){return gxA.sep!==xp.ModuleNameSeparator?A.split(gxA.sep).join(xp.ModuleNameSeparator):A}});var cxA=R((GyB)=>{var bxA=[],fp=new WeakMap,mxA=new WeakMap,uxA=new Map,dxA=[],CyB={set(A,Q,B){return fp.get(A)[Q](B)},get(A,Q){if(Q===Symbol.toStringTag)return"Module";let B=mxA.get(A)[Q];if(typeof B==="function")return B()},defineProperty(A,Q,B){if(!("value"in B))throw Error("Getters/setters are not supported for exports property descriptors.");return fp.get(A)[Q](B.value)}};function XyB(A,Q,B,Y,J){uxA.set(A,J),fp.set(Q,B),mxA.set(Q,Y);let C=new Proxy(Q,CyB);bxA.forEach((X)=>X(A,C)),dxA.push([A,C])}GyB.register=XyB;GyB.importHooks=bxA;GyB.specifiers=uxA;GyB.toHook=dxA});var up=R((zhY,UK)=>{var lxA=u("path"),UyB=Rp(),{fileURLToPath:pxA}=u("url"),{MessageChannel:EyB}=u("worker_threads"),{importHooks:bp,specifiers:KyB,toHook:VyB}=cxA();function nxA(A){bp.push(A),VyB.forEach(([Q,B])=>A(Q,B))}function sxA(A){let Q=bp.indexOf(A);if(Q>-1)bp.splice(Q,1)}function ixA(A,Q,B,Y){let J=A(Q,B,Y);if(J&&J!==Q)Q.default=J}var mp;function IyB(){let{port1:A,port2:Q}=new EyB,B=0,Y;mp=(G)=>{B++,A.postMessage(G)},A.on("message",()=>{if(B--,Y&&B<=0)Y()}).unref();function J(){let G=setInterval(()=>{},1000),W=new Promise((F)=>{Y=F}).then(()=>{clearInterval(G)});if(B===0)Y();return W}let C=Q;return{registerOptions:{data:{addHookMessagePort:C,include:[]},transferList:[C]},addHookMessagePort:C,waitForAllMessagesAcknowledged:J}}function qL(A,Q,B){if(this instanceof qL===!1)return new qL(A,Q,B);if(typeof A==="function")B=A,A=null,Q=null;else if(typeof Q==="function")B=Q,Q=null;let Y=Q?Q.internals===!0:!1;if(mp&&Array.isArray(A))mp(A);this._iitmHook=(J,C)=>{let X=J,G=J.startsWith("node:"),W;if(G)J=J.replace(/^node:/,"");else{if(J.startsWith("file://"))try{J=pxA(J)}catch(Z){}let F=UyB(J);if(F)J=F.name,W=F.basedir}if(A){for(let F of A)if(F===J){if(W){if(Y)J=J+lxA.sep+lxA.relative(W,pxA(X));else if(!W.endsWith(KyB.get(X)))continue}ixA(B,C,J,W)}}else ixA(B,C,J,W)},nxA(this._iitmHook)}qL.prototype.unhook=function(){sxA(this._iitmHook)};UK.exports=qL;UK.exports.Hook=qL;UK.exports.addHook=nxA;UK.exports.removeHook=sxA;UK.exports.createAddHookMessageChannel=IyB});var dp=R((rxA)=>{Object.defineProperty(rxA,"__esModule",{value:!0});rxA.isWrapped=rxA.safeExecuteInTheMiddleAsync=rxA.safeExecuteInTheMiddle=void 0;function HyB(A,Q,B){let Y,J;try{J=A()}catch(C){Y=C}finally{if(Q(Y,J),Y&&!B)throw Y;return J}}rxA.safeExecuteInTheMiddle=HyB;async function DyB(A,Q,B){let Y,J;try{J=await A()}catch(C){Y=C}finally{if(Q(Y,J),Y&&!B)throw Y;return J}}rxA.safeExecuteInTheMiddleAsync=DyB;function NyB(A){return typeof A==="function"&&typeof A.__original==="function"&&typeof A.__unwrap==="function"&&A.__wrapped===!0}rxA.isWrapped=NyB});var BfA=R((AfA)=>{Object.defineProperty(AfA,"__esModule",{value:!0});AfA.InstrumentationBase=void 0;var ML=u("path"),oxA=u("util"),MyB=OhA(),cp=Dp(),zyB=yhA(),RyB=fxA(),wyB=up(),zL=yA(),jyB=yp(),OyB=u("fs"),PyB=dp();class exA extends zyB.InstrumentationAbstract{constructor(A,Q,B){super(A,Q,B);this._hooks=[],this._requireInTheMiddleSingleton=RyB.RequireInTheMiddleSingleton.getInstance(),this._enabled=!1,this._wrap=(J,C,X)=>{if((0,PyB.isWrapped)(J[C]))this._unwrap(J,C);if(!oxA.types.isProxy(J))return(0,cp.wrap)(J,C,X);else{let G=(0,cp.wrap)(Object.assign({},J),C,X);return Object.defineProperty(J,C,{value:G}),G}},this._unwrap=(J,C)=>{if(!oxA.types.isProxy(J))return(0,cp.unwrap)(J,C);else return Object.defineProperty(J,C,{value:J[C]})},this._massWrap=(J,C,X)=>{if(!J){zL.diag.error("must provide one or more modules to patch");return}else if(!Array.isArray(J))J=[J];if(!(C&&Array.isArray(C))){zL.diag.error("must provide one or more functions to wrap on modules");return}J.forEach((G)=>{C.forEach((W)=>{this._wrap(G,W,X)})})},this._massUnwrap=(J,C)=>{if(!J){zL.diag.error("must provide one or more modules to patch");return}else if(!Array.isArray(J))J=[J];if(!(C&&Array.isArray(C))){zL.diag.error("must provide one or more functions to wrap on modules");return}J.forEach((X)=>{C.forEach((G)=>{this._unwrap(X,G)})})};let Y=this.init();if(Y&&!Array.isArray(Y))Y=[Y];if(this._modules=Y||[],this._config.enabled)this.enable()}_warnOnPreloadedModules(){this._modules.forEach((A)=>{let{name:Q}=A;try{let B=u.resolve(Q);if(u.cache[B])this._diag.warn(`Module ${Q} has been loaded before ${this.instrumentationName} so it might not work, please initialize it before requiring ${Q}`)}catch(B){}})}_extractPackageVersion(A){try{let Q=(0,OyB.readFileSync)(ML.join(A,"package.json"),{encoding:"utf8"}),B=JSON.parse(Q).version;return typeof B==="string"?B:void 0}catch(Q){zL.diag.warn("Failed extracting version",A)}return}_onRequire(A,Q,B,Y){var J;if(!Y){if(typeof A.patch==="function"){if(A.moduleExports=Q,this._enabled)return this._diag.debug("Applying instrumentation patch for nodejs core module on require hook",{module:A.name}),A.patch(Q)}return Q}let C=this._extractPackageVersion(Y);if(A.moduleVersion=C,A.name===B){if(txA(A.supportedVersions,C,A.includePrerelease)){if(typeof A.patch==="function"){if(A.moduleExports=Q,this._enabled)return this._diag.debug("Applying instrumentation patch for module on require hook",{module:A.name,version:A.moduleVersion,baseDir:Y}),A.patch(Q,A.moduleVersion)}}return Q}let X=(J=A.files)!==null&&J!==void 0?J:[],G=ML.normalize(B);return X.filter((F)=>F.name===G).filter((F)=>txA(F.supportedVersions,C,A.includePrerelease)).reduce((F,Z)=>{if(Z.moduleExports=F,this._enabled)return this._diag.debug("Applying instrumentation patch for nodejs module file on require hook",{module:A.name,version:A.moduleVersion,fileName:Z.name,baseDir:Y}),Z.patch(F,A.moduleVersion);return F},Q)}enable(){if(this._enabled)return;if(this._enabled=!0,this._hooks.length>0){for(let A of this._modules){if(typeof A.patch==="function"&&A.moduleExports)this._diag.debug("Applying instrumentation patch for nodejs module on instrumentation enabled",{module:A.name,version:A.moduleVersion}),A.patch(A.moduleExports,A.moduleVersion);for(let Q of A.files)if(Q.moduleExports)this._diag.debug("Applying instrumentation patch for nodejs module file on instrumentation enabled",{module:A.name,version:A.moduleVersion,fileName:Q.name}),Q.patch(Q.moduleExports,A.moduleVersion)}return}this._warnOnPreloadedModules();for(let A of this._modules){let Q=(C,X,G)=>{if(!G&&ML.isAbsolute(X)){let W=ML.parse(X);X=W.name,G=W.dir}return this._onRequire(A,C,X,G)},B=(C,X,G)=>{return this._onRequire(A,C,X,G)},Y=ML.isAbsolute(A.name)?new jyB.Hook([A.name],{internals:!0},B):this._requireInTheMiddleSingleton.register(A.name,B);this._hooks.push(Y);let J=new wyB.Hook([A.name],{internals:!1},Q);this._hooks.push(J)}}disable(){if(!this._enabled)return;this._enabled=!1;for(let A of this._modules){if(typeof A.unpatch==="function"&&A.moduleExports)this._diag.debug("Removing instrumentation patch for nodejs module on instrumentation disabled",{module:A.name,version:A.moduleVersion}),A.unpatch(A.moduleExports,A.moduleVersion);for(let Q of A.files)if(Q.moduleExports)this._diag.debug("Removing instrumentation patch for nodejs module file on instrumentation disabled",{module:A.name,version:A.moduleVersion,fileName:Q.name}),Q.unpatch(Q.moduleExports,A.moduleVersion)}}isEnabled(){return this._enabled}}AfA.InstrumentationBase=exA;function txA(A,Q,B){if(typeof Q>"u")return A.includes("*");return A.some((Y)=>{return(0,MyB.satisfies)(Q,Y,{includePrerelease:B})})}});var YfA=R((lp)=>{Object.defineProperty(lp,"__esModule",{value:!0});lp.normalize=void 0;var TyB=u("path");Object.defineProperty(lp,"normalize",{enumerable:!0,get:function(){return TyB.normalize}})});var JfA=R((tO)=>{Object.defineProperty(tO,"__esModule",{value:!0});tO.normalize=tO.InstrumentationBase=void 0;var kyB=BfA();Object.defineProperty(tO,"InstrumentationBase",{enumerable:!0,get:function(){return kyB.InstrumentationBase}});var _yB=YfA();Object.defineProperty(tO,"normalize",{enumerable:!0,get:function(){return _yB.normalize}})});var pp=R((eO)=>{Object.defineProperty(eO,"__esModule",{value:!0});eO.normalize=eO.InstrumentationBase=void 0;var CfA=JfA();Object.defineProperty(eO,"InstrumentationBase",{enumerable:!0,get:function(){return CfA.InstrumentationBase}});Object.defineProperty(eO,"normalize",{enumerable:!0,get:function(){return CfA.normalize}})});var FfA=R((GfA)=>{Object.defineProperty(GfA,"__esModule",{value:!0});GfA.InstrumentationNodeModuleDefinition=void 0;class XfA{constructor(A,Q,B,Y,J){this.name=A,this.supportedVersions=Q,this.patch=B,this.unpatch=Y,this.files=J||[]}}GfA.InstrumentationNodeModuleDefinition=XfA});var EfA=R(($fA)=>{Object.defineProperty($fA,"__esModule",{value:!0});$fA.InstrumentationNodeModuleFile=void 0;var gyB=pp();class ZfA{constructor(A,Q,B,Y){this.supportedVersions=Q,this.patch=B,this.unpatch=Y,this.name=(0,gyB.normalize)(A)}}$fA.InstrumentationNodeModuleFile=ZfA});var NB=R((FG)=>{Object.defineProperty(FG,"__esModule",{value:!0});FG.safeExecuteInTheMiddleAsync=FG.safeExecuteInTheMiddle=FG.isWrapped=FG.InstrumentationNodeModuleFile=FG.InstrumentationNodeModuleDefinition=FG.InstrumentationBase=FG.registerInstrumentations=void 0;var hyB=gyA();Object.defineProperty(FG,"registerInstrumentations",{enumerable:!0,get:function(){return hyB.registerInstrumentations}});var xyB=pp();Object.defineProperty(FG,"InstrumentationBase",{enumerable:!0,get:function(){return xyB.InstrumentationBase}});var fyB=FfA();Object.defineProperty(FG,"InstrumentationNodeModuleDefinition",{enumerable:!0,get:function(){return fyB.InstrumentationNodeModuleDefinition}});var byB=EfA();Object.defineProperty(FG,"InstrumentationNodeModuleFile",{enumerable:!0,get:function(){return byB.InstrumentationNodeModuleFile}});var ip=dp();Object.defineProperty(FG,"isWrapped",{enumerable:!0,get:function(){return ip.isWrapped}});Object.defineProperty(FG,"safeExecuteInTheMiddle",{enumerable:!0,get:function(){return ip.safeExecuteInTheMiddle}});Object.defineProperty(FG,"safeExecuteInTheMiddleAsync",{enumerable:!0,get:function(){return ip.safeExecuteInTheMiddleAsync}})});var np=R((KfA)=>{Object.defineProperty(KfA,"__esModule",{value:!0});KfA.createConstMap=void 0;function uyB(A){let Q={},B=A.length;for(let Y=0;Y{Object.defineProperty(CcA,"__esModule",{value:!0});CcA.SEMATTRS_NET_HOST_CARRIER_ICC=CcA.SEMATTRS_NET_HOST_CARRIER_MNC=CcA.SEMATTRS_NET_HOST_CARRIER_MCC=CcA.SEMATTRS_NET_HOST_CARRIER_NAME=CcA.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=CcA.SEMATTRS_NET_HOST_CONNECTION_TYPE=CcA.SEMATTRS_NET_HOST_NAME=CcA.SEMATTRS_NET_HOST_PORT=CcA.SEMATTRS_NET_HOST_IP=CcA.SEMATTRS_NET_PEER_NAME=CcA.SEMATTRS_NET_PEER_PORT=CcA.SEMATTRS_NET_PEER_IP=CcA.SEMATTRS_NET_TRANSPORT=CcA.SEMATTRS_FAAS_INVOKED_REGION=CcA.SEMATTRS_FAAS_INVOKED_PROVIDER=CcA.SEMATTRS_FAAS_INVOKED_NAME=CcA.SEMATTRS_FAAS_COLDSTART=CcA.SEMATTRS_FAAS_CRON=CcA.SEMATTRS_FAAS_TIME=CcA.SEMATTRS_FAAS_DOCUMENT_NAME=CcA.SEMATTRS_FAAS_DOCUMENT_TIME=CcA.SEMATTRS_FAAS_DOCUMENT_OPERATION=CcA.SEMATTRS_FAAS_DOCUMENT_COLLECTION=CcA.SEMATTRS_FAAS_EXECUTION=CcA.SEMATTRS_FAAS_TRIGGER=CcA.SEMATTRS_EXCEPTION_ESCAPED=CcA.SEMATTRS_EXCEPTION_STACKTRACE=CcA.SEMATTRS_EXCEPTION_MESSAGE=CcA.SEMATTRS_EXCEPTION_TYPE=CcA.SEMATTRS_DB_SQL_TABLE=CcA.SEMATTRS_DB_MONGODB_COLLECTION=CcA.SEMATTRS_DB_REDIS_DATABASE_INDEX=CcA.SEMATTRS_DB_HBASE_NAMESPACE=CcA.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=CcA.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=CcA.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=CcA.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=CcA.SEMATTRS_DB_CASSANDRA_TABLE=CcA.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=CcA.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=CcA.SEMATTRS_DB_CASSANDRA_KEYSPACE=CcA.SEMATTRS_DB_MSSQL_INSTANCE_NAME=CcA.SEMATTRS_DB_OPERATION=CcA.SEMATTRS_DB_STATEMENT=CcA.SEMATTRS_DB_NAME=CcA.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=CcA.SEMATTRS_DB_USER=CcA.SEMATTRS_DB_CONNECTION_STRING=CcA.SEMATTRS_DB_SYSTEM=CcA.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=void 0;CcA.SEMATTRS_MESSAGING_DESTINATION_KIND=CcA.SEMATTRS_MESSAGING_DESTINATION=CcA.SEMATTRS_MESSAGING_SYSTEM=CcA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=CcA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=CcA.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=CcA.SEMATTRS_AWS_DYNAMODB_COUNT=CcA.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=CcA.SEMATTRS_AWS_DYNAMODB_SEGMENT=CcA.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=CcA.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=CcA.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=CcA.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=CcA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=CcA.SEMATTRS_AWS_DYNAMODB_SELECT=CcA.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=CcA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=CcA.SEMATTRS_AWS_DYNAMODB_LIMIT=CcA.SEMATTRS_AWS_DYNAMODB_PROJECTION=CcA.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=CcA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=CcA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=CcA.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=CcA.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=CcA.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=CcA.SEMATTRS_HTTP_CLIENT_IP=CcA.SEMATTRS_HTTP_ROUTE=CcA.SEMATTRS_HTTP_SERVER_NAME=CcA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=CcA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=CcA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=CcA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=CcA.SEMATTRS_HTTP_USER_AGENT=CcA.SEMATTRS_HTTP_FLAVOR=CcA.SEMATTRS_HTTP_STATUS_CODE=CcA.SEMATTRS_HTTP_SCHEME=CcA.SEMATTRS_HTTP_HOST=CcA.SEMATTRS_HTTP_TARGET=CcA.SEMATTRS_HTTP_URL=CcA.SEMATTRS_HTTP_METHOD=CcA.SEMATTRS_CODE_LINENO=CcA.SEMATTRS_CODE_FILEPATH=CcA.SEMATTRS_CODE_NAMESPACE=CcA.SEMATTRS_CODE_FUNCTION=CcA.SEMATTRS_THREAD_NAME=CcA.SEMATTRS_THREAD_ID=CcA.SEMATTRS_ENDUSER_SCOPE=CcA.SEMATTRS_ENDUSER_ROLE=CcA.SEMATTRS_ENDUSER_ID=CcA.SEMATTRS_PEER_SERVICE=void 0;CcA.DBSYSTEMVALUES_FILEMAKER=CcA.DBSYSTEMVALUES_DERBY=CcA.DBSYSTEMVALUES_FIREBIRD=CcA.DBSYSTEMVALUES_ADABAS=CcA.DBSYSTEMVALUES_CACHE=CcA.DBSYSTEMVALUES_EDB=CcA.DBSYSTEMVALUES_FIRSTSQL=CcA.DBSYSTEMVALUES_INGRES=CcA.DBSYSTEMVALUES_HANADB=CcA.DBSYSTEMVALUES_MAXDB=CcA.DBSYSTEMVALUES_PROGRESS=CcA.DBSYSTEMVALUES_HSQLDB=CcA.DBSYSTEMVALUES_CLOUDSCAPE=CcA.DBSYSTEMVALUES_HIVE=CcA.DBSYSTEMVALUES_REDSHIFT=CcA.DBSYSTEMVALUES_POSTGRESQL=CcA.DBSYSTEMVALUES_DB2=CcA.DBSYSTEMVALUES_ORACLE=CcA.DBSYSTEMVALUES_MYSQL=CcA.DBSYSTEMVALUES_MSSQL=CcA.DBSYSTEMVALUES_OTHER_SQL=CcA.SemanticAttributes=CcA.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=CcA.SEMATTRS_MESSAGE_COMPRESSED_SIZE=CcA.SEMATTRS_MESSAGE_ID=CcA.SEMATTRS_MESSAGE_TYPE=CcA.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=CcA.SEMATTRS_RPC_JSONRPC_ERROR_CODE=CcA.SEMATTRS_RPC_JSONRPC_REQUEST_ID=CcA.SEMATTRS_RPC_JSONRPC_VERSION=CcA.SEMATTRS_RPC_GRPC_STATUS_CODE=CcA.SEMATTRS_RPC_METHOD=CcA.SEMATTRS_RPC_SERVICE=CcA.SEMATTRS_RPC_SYSTEM=CcA.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=CcA.SEMATTRS_MESSAGING_KAFKA_PARTITION=CcA.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=CcA.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=CcA.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=CcA.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=CcA.SEMATTRS_MESSAGING_CONSUMER_ID=CcA.SEMATTRS_MESSAGING_OPERATION=CcA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=CcA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=CcA.SEMATTRS_MESSAGING_CONVERSATION_ID=CcA.SEMATTRS_MESSAGING_MESSAGE_ID=CcA.SEMATTRS_MESSAGING_URL=CcA.SEMATTRS_MESSAGING_PROTOCOL_VERSION=CcA.SEMATTRS_MESSAGING_PROTOCOL=CcA.SEMATTRS_MESSAGING_TEMP_DESTINATION=void 0;CcA.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=CcA.FaasDocumentOperationValues=CcA.FAASDOCUMENTOPERATIONVALUES_DELETE=CcA.FAASDOCUMENTOPERATIONVALUES_EDIT=CcA.FAASDOCUMENTOPERATIONVALUES_INSERT=CcA.FaasTriggerValues=CcA.FAASTRIGGERVALUES_OTHER=CcA.FAASTRIGGERVALUES_TIMER=CcA.FAASTRIGGERVALUES_PUBSUB=CcA.FAASTRIGGERVALUES_HTTP=CcA.FAASTRIGGERVALUES_DATASOURCE=CcA.DbCassandraConsistencyLevelValues=CcA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=CcA.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=CcA.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=CcA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=CcA.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=CcA.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=CcA.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=CcA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=CcA.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=CcA.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=CcA.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=CcA.DbSystemValues=CcA.DBSYSTEMVALUES_COCKROACHDB=CcA.DBSYSTEMVALUES_MEMCACHED=CcA.DBSYSTEMVALUES_ELASTICSEARCH=CcA.DBSYSTEMVALUES_GEODE=CcA.DBSYSTEMVALUES_NEO4J=CcA.DBSYSTEMVALUES_DYNAMODB=CcA.DBSYSTEMVALUES_COSMOSDB=CcA.DBSYSTEMVALUES_COUCHDB=CcA.DBSYSTEMVALUES_COUCHBASE=CcA.DBSYSTEMVALUES_REDIS=CcA.DBSYSTEMVALUES_MONGODB=CcA.DBSYSTEMVALUES_HBASE=CcA.DBSYSTEMVALUES_CASSANDRA=CcA.DBSYSTEMVALUES_COLDFUSION=CcA.DBSYSTEMVALUES_H2=CcA.DBSYSTEMVALUES_VERTICA=CcA.DBSYSTEMVALUES_TERADATA=CcA.DBSYSTEMVALUES_SYBASE=CcA.DBSYSTEMVALUES_SQLITE=CcA.DBSYSTEMVALUES_POINTBASE=CcA.DBSYSTEMVALUES_PERVASIVE=CcA.DBSYSTEMVALUES_NETEZZA=CcA.DBSYSTEMVALUES_MARIADB=CcA.DBSYSTEMVALUES_INTERBASE=CcA.DBSYSTEMVALUES_INSTANTDB=CcA.DBSYSTEMVALUES_INFORMIX=void 0;CcA.MESSAGINGOPERATIONVALUES_RECEIVE=CcA.MessagingDestinationKindValues=CcA.MESSAGINGDESTINATIONKINDVALUES_TOPIC=CcA.MESSAGINGDESTINATIONKINDVALUES_QUEUE=CcA.HttpFlavorValues=CcA.HTTPFLAVORVALUES_QUIC=CcA.HTTPFLAVORVALUES_SPDY=CcA.HTTPFLAVORVALUES_HTTP_2_0=CcA.HTTPFLAVORVALUES_HTTP_1_1=CcA.HTTPFLAVORVALUES_HTTP_1_0=CcA.NetHostConnectionSubtypeValues=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_NR=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=CcA.NetHostConnectionTypeValues=CcA.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=CcA.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=CcA.NETHOSTCONNECTIONTYPEVALUES_CELL=CcA.NETHOSTCONNECTIONTYPEVALUES_WIRED=CcA.NETHOSTCONNECTIONTYPEVALUES_WIFI=CcA.NetTransportValues=CcA.NETTRANSPORTVALUES_OTHER=CcA.NETTRANSPORTVALUES_INPROC=CcA.NETTRANSPORTVALUES_PIPE=CcA.NETTRANSPORTVALUES_UNIX=CcA.NETTRANSPORTVALUES_IP=CcA.NETTRANSPORTVALUES_IP_UDP=CcA.NETTRANSPORTVALUES_IP_TCP=CcA.FaasInvokedProviderValues=CcA.FAASINVOKEDPROVIDERVALUES_GCP=CcA.FAASINVOKEDPROVIDERVALUES_AZURE=CcA.FAASINVOKEDPROVIDERVALUES_AWS=void 0;CcA.MessageTypeValues=CcA.MESSAGETYPEVALUES_RECEIVED=CcA.MESSAGETYPEVALUES_SENT=CcA.RpcGrpcStatusCodeValues=CcA.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=CcA.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=CcA.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=CcA.RPCGRPCSTATUSCODEVALUES_INTERNAL=CcA.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=CcA.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=CcA.RPCGRPCSTATUSCODEVALUES_ABORTED=CcA.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=CcA.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=CcA.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=CcA.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=CcA.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=CcA.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=CcA.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=CcA.RPCGRPCSTATUSCODEVALUES_UNKNOWN=CcA.RPCGRPCSTATUSCODEVALUES_CANCELLED=CcA.RPCGRPCSTATUSCODEVALUES_OK=CcA.MessagingOperationValues=CcA.MESSAGINGOPERATIONVALUES_PROCESS=void 0;var c5=np(),IfA="aws.lambda.invoked_arn",HfA="db.system",DfA="db.connection_string",NfA="db.user",LfA="db.jdbc.driver_classname",qfA="db.name",MfA="db.statement",zfA="db.operation",RfA="db.mssql.instance_name",wfA="db.cassandra.keyspace",jfA="db.cassandra.page_size",OfA="db.cassandra.consistency_level",PfA="db.cassandra.table",TfA="db.cassandra.idempotence",SfA="db.cassandra.speculative_execution_count",kfA="db.cassandra.coordinator.id",_fA="db.cassandra.coordinator.dc",vfA="db.hbase.namespace",yfA="db.redis.database_index",gfA="db.mongodb.collection",hfA="db.sql.table",xfA="exception.type",ffA="exception.message",bfA="exception.stacktrace",mfA="exception.escaped",ufA="faas.trigger",dfA="faas.execution",cfA="faas.document.collection",lfA="faas.document.operation",pfA="faas.document.time",ifA="faas.document.name",nfA="faas.time",sfA="faas.cron",rfA="faas.coldstart",afA="faas.invoked_name",ofA="faas.invoked_provider",tfA="faas.invoked_region",efA="net.transport",AbA="net.peer.ip",QbA="net.peer.port",BbA="net.peer.name",YbA="net.host.ip",JbA="net.host.port",CbA="net.host.name",XbA="net.host.connection.type",GbA="net.host.connection.subtype",WbA="net.host.carrier.name",FbA="net.host.carrier.mcc",ZbA="net.host.carrier.mnc",$bA="net.host.carrier.icc",UbA="peer.service",EbA="enduser.id",KbA="enduser.role",VbA="enduser.scope",IbA="thread.id",HbA="thread.name",DbA="code.function",NbA="code.namespace",LbA="code.filepath",qbA="code.lineno",MbA="http.method",zbA="http.url",RbA="http.target",wbA="http.host",jbA="http.scheme",ObA="http.status_code",PbA="http.flavor",TbA="http.user_agent",SbA="http.request_content_length",kbA="http.request_content_length_uncompressed",_bA="http.response_content_length",vbA="http.response_content_length_uncompressed",ybA="http.server_name",gbA="http.route",hbA="http.client_ip",xbA="aws.dynamodb.table_names",fbA="aws.dynamodb.consumed_capacity",bbA="aws.dynamodb.item_collection_metrics",mbA="aws.dynamodb.provisioned_read_capacity",ubA="aws.dynamodb.provisioned_write_capacity",dbA="aws.dynamodb.consistent_read",cbA="aws.dynamodb.projection",lbA="aws.dynamodb.limit",pbA="aws.dynamodb.attributes_to_get",ibA="aws.dynamodb.index_name",nbA="aws.dynamodb.select",sbA="aws.dynamodb.global_secondary_indexes",rbA="aws.dynamodb.local_secondary_indexes",abA="aws.dynamodb.exclusive_start_table",obA="aws.dynamodb.table_count",tbA="aws.dynamodb.scan_forward",ebA="aws.dynamodb.segment",AmA="aws.dynamodb.total_segments",QmA="aws.dynamodb.count",BmA="aws.dynamodb.scanned_count",YmA="aws.dynamodb.attribute_definitions",JmA="aws.dynamodb.global_secondary_index_updates",CmA="messaging.system",XmA="messaging.destination",GmA="messaging.destination_kind",WmA="messaging.temp_destination",FmA="messaging.protocol",ZmA="messaging.protocol_version",$mA="messaging.url",UmA="messaging.message_id",EmA="messaging.conversation_id",KmA="messaging.message_payload_size_bytes",VmA="messaging.message_payload_compressed_size_bytes",ImA="messaging.operation",HmA="messaging.consumer_id",DmA="messaging.rabbitmq.routing_key",NmA="messaging.kafka.message_key",LmA="messaging.kafka.consumer_group",qmA="messaging.kafka.client_id",MmA="messaging.kafka.partition",zmA="messaging.kafka.tombstone",RmA="rpc.system",wmA="rpc.service",jmA="rpc.method",OmA="rpc.grpc.status_code",PmA="rpc.jsonrpc.version",TmA="rpc.jsonrpc.request_id",SmA="rpc.jsonrpc.error_code",kmA="rpc.jsonrpc.error_message",_mA="message.type",vmA="message.id",ymA="message.compressed_size",gmA="message.uncompressed_size";CcA.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=IfA;CcA.SEMATTRS_DB_SYSTEM=HfA;CcA.SEMATTRS_DB_CONNECTION_STRING=DfA;CcA.SEMATTRS_DB_USER=NfA;CcA.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=LfA;CcA.SEMATTRS_DB_NAME=qfA;CcA.SEMATTRS_DB_STATEMENT=MfA;CcA.SEMATTRS_DB_OPERATION=zfA;CcA.SEMATTRS_DB_MSSQL_INSTANCE_NAME=RfA;CcA.SEMATTRS_DB_CASSANDRA_KEYSPACE=wfA;CcA.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=jfA;CcA.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=OfA;CcA.SEMATTRS_DB_CASSANDRA_TABLE=PfA;CcA.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=TfA;CcA.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=SfA;CcA.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=kfA;CcA.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=_fA;CcA.SEMATTRS_DB_HBASE_NAMESPACE=vfA;CcA.SEMATTRS_DB_REDIS_DATABASE_INDEX=yfA;CcA.SEMATTRS_DB_MONGODB_COLLECTION=gfA;CcA.SEMATTRS_DB_SQL_TABLE=hfA;CcA.SEMATTRS_EXCEPTION_TYPE=xfA;CcA.SEMATTRS_EXCEPTION_MESSAGE=ffA;CcA.SEMATTRS_EXCEPTION_STACKTRACE=bfA;CcA.SEMATTRS_EXCEPTION_ESCAPED=mfA;CcA.SEMATTRS_FAAS_TRIGGER=ufA;CcA.SEMATTRS_FAAS_EXECUTION=dfA;CcA.SEMATTRS_FAAS_DOCUMENT_COLLECTION=cfA;CcA.SEMATTRS_FAAS_DOCUMENT_OPERATION=lfA;CcA.SEMATTRS_FAAS_DOCUMENT_TIME=pfA;CcA.SEMATTRS_FAAS_DOCUMENT_NAME=ifA;CcA.SEMATTRS_FAAS_TIME=nfA;CcA.SEMATTRS_FAAS_CRON=sfA;CcA.SEMATTRS_FAAS_COLDSTART=rfA;CcA.SEMATTRS_FAAS_INVOKED_NAME=afA;CcA.SEMATTRS_FAAS_INVOKED_PROVIDER=ofA;CcA.SEMATTRS_FAAS_INVOKED_REGION=tfA;CcA.SEMATTRS_NET_TRANSPORT=efA;CcA.SEMATTRS_NET_PEER_IP=AbA;CcA.SEMATTRS_NET_PEER_PORT=QbA;CcA.SEMATTRS_NET_PEER_NAME=BbA;CcA.SEMATTRS_NET_HOST_IP=YbA;CcA.SEMATTRS_NET_HOST_PORT=JbA;CcA.SEMATTRS_NET_HOST_NAME=CbA;CcA.SEMATTRS_NET_HOST_CONNECTION_TYPE=XbA;CcA.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=GbA;CcA.SEMATTRS_NET_HOST_CARRIER_NAME=WbA;CcA.SEMATTRS_NET_HOST_CARRIER_MCC=FbA;CcA.SEMATTRS_NET_HOST_CARRIER_MNC=ZbA;CcA.SEMATTRS_NET_HOST_CARRIER_ICC=$bA;CcA.SEMATTRS_PEER_SERVICE=UbA;CcA.SEMATTRS_ENDUSER_ID=EbA;CcA.SEMATTRS_ENDUSER_ROLE=KbA;CcA.SEMATTRS_ENDUSER_SCOPE=VbA;CcA.SEMATTRS_THREAD_ID=IbA;CcA.SEMATTRS_THREAD_NAME=HbA;CcA.SEMATTRS_CODE_FUNCTION=DbA;CcA.SEMATTRS_CODE_NAMESPACE=NbA;CcA.SEMATTRS_CODE_FILEPATH=LbA;CcA.SEMATTRS_CODE_LINENO=qbA;CcA.SEMATTRS_HTTP_METHOD=MbA;CcA.SEMATTRS_HTTP_URL=zbA;CcA.SEMATTRS_HTTP_TARGET=RbA;CcA.SEMATTRS_HTTP_HOST=wbA;CcA.SEMATTRS_HTTP_SCHEME=jbA;CcA.SEMATTRS_HTTP_STATUS_CODE=ObA;CcA.SEMATTRS_HTTP_FLAVOR=PbA;CcA.SEMATTRS_HTTP_USER_AGENT=TbA;CcA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=SbA;CcA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=kbA;CcA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=_bA;CcA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=vbA;CcA.SEMATTRS_HTTP_SERVER_NAME=ybA;CcA.SEMATTRS_HTTP_ROUTE=gbA;CcA.SEMATTRS_HTTP_CLIENT_IP=hbA;CcA.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=xbA;CcA.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=fbA;CcA.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=bbA;CcA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=mbA;CcA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=ubA;CcA.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=dbA;CcA.SEMATTRS_AWS_DYNAMODB_PROJECTION=cbA;CcA.SEMATTRS_AWS_DYNAMODB_LIMIT=lbA;CcA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=pbA;CcA.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=ibA;CcA.SEMATTRS_AWS_DYNAMODB_SELECT=nbA;CcA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=sbA;CcA.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=rbA;CcA.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=abA;CcA.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=obA;CcA.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=tbA;CcA.SEMATTRS_AWS_DYNAMODB_SEGMENT=ebA;CcA.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=AmA;CcA.SEMATTRS_AWS_DYNAMODB_COUNT=QmA;CcA.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=BmA;CcA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=YmA;CcA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=JmA;CcA.SEMATTRS_MESSAGING_SYSTEM=CmA;CcA.SEMATTRS_MESSAGING_DESTINATION=XmA;CcA.SEMATTRS_MESSAGING_DESTINATION_KIND=GmA;CcA.SEMATTRS_MESSAGING_TEMP_DESTINATION=WmA;CcA.SEMATTRS_MESSAGING_PROTOCOL=FmA;CcA.SEMATTRS_MESSAGING_PROTOCOL_VERSION=ZmA;CcA.SEMATTRS_MESSAGING_URL=$mA;CcA.SEMATTRS_MESSAGING_MESSAGE_ID=UmA;CcA.SEMATTRS_MESSAGING_CONVERSATION_ID=EmA;CcA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=KmA;CcA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=VmA;CcA.SEMATTRS_MESSAGING_OPERATION=ImA;CcA.SEMATTRS_MESSAGING_CONSUMER_ID=HmA;CcA.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=DmA;CcA.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=NmA;CcA.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=LmA;CcA.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=qmA;CcA.SEMATTRS_MESSAGING_KAFKA_PARTITION=MmA;CcA.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=zmA;CcA.SEMATTRS_RPC_SYSTEM=RmA;CcA.SEMATTRS_RPC_SERVICE=wmA;CcA.SEMATTRS_RPC_METHOD=jmA;CcA.SEMATTRS_RPC_GRPC_STATUS_CODE=OmA;CcA.SEMATTRS_RPC_JSONRPC_VERSION=PmA;CcA.SEMATTRS_RPC_JSONRPC_REQUEST_ID=TmA;CcA.SEMATTRS_RPC_JSONRPC_ERROR_CODE=SmA;CcA.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=kmA;CcA.SEMATTRS_MESSAGE_TYPE=_mA;CcA.SEMATTRS_MESSAGE_ID=vmA;CcA.SEMATTRS_MESSAGE_COMPRESSED_SIZE=ymA;CcA.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=gmA;CcA.SemanticAttributes=(0,c5.createConstMap)([IfA,HfA,DfA,NfA,LfA,qfA,MfA,zfA,RfA,wfA,jfA,OfA,PfA,TfA,SfA,kfA,_fA,vfA,yfA,gfA,hfA,xfA,ffA,bfA,mfA,ufA,dfA,cfA,lfA,pfA,ifA,nfA,sfA,rfA,afA,ofA,tfA,efA,AbA,QbA,BbA,YbA,JbA,CbA,XbA,GbA,WbA,FbA,ZbA,$bA,UbA,EbA,KbA,VbA,IbA,HbA,DbA,NbA,LbA,qbA,MbA,zbA,RbA,wbA,jbA,ObA,PbA,TbA,SbA,kbA,_bA,vbA,ybA,gbA,hbA,xbA,fbA,bbA,mbA,ubA,dbA,cbA,lbA,pbA,ibA,nbA,sbA,rbA,abA,obA,tbA,ebA,AmA,QmA,BmA,YmA,JmA,CmA,XmA,GmA,WmA,FmA,ZmA,$mA,UmA,EmA,KmA,VmA,ImA,HmA,DmA,NmA,LmA,qmA,MmA,zmA,RmA,wmA,jmA,OmA,PmA,TmA,SmA,kmA,_mA,vmA,ymA,gmA]);var hmA="other_sql",xmA="mssql",fmA="mysql",bmA="oracle",mmA="db2",umA="postgresql",dmA="redshift",cmA="hive",lmA="cloudscape",pmA="hsqldb",imA="progress",nmA="maxdb",smA="hanadb",rmA="ingres",amA="firstsql",omA="edb",tmA="cache",emA="adabas",AuA="firebird",QuA="derby",BuA="filemaker",YuA="informix",JuA="instantdb",CuA="interbase",XuA="mariadb",GuA="netezza",WuA="pervasive",FuA="pointbase",ZuA="sqlite",$uA="sybase",UuA="teradata",EuA="vertica",KuA="h2",VuA="coldfusion",IuA="cassandra",HuA="hbase",DuA="mongodb",NuA="redis",LuA="couchbase",quA="couchdb",MuA="cosmosdb",zuA="dynamodb",RuA="neo4j",wuA="geode",juA="elasticsearch",OuA="memcached",PuA="cockroachdb";CcA.DBSYSTEMVALUES_OTHER_SQL=hmA;CcA.DBSYSTEMVALUES_MSSQL=xmA;CcA.DBSYSTEMVALUES_MYSQL=fmA;CcA.DBSYSTEMVALUES_ORACLE=bmA;CcA.DBSYSTEMVALUES_DB2=mmA;CcA.DBSYSTEMVALUES_POSTGRESQL=umA;CcA.DBSYSTEMVALUES_REDSHIFT=dmA;CcA.DBSYSTEMVALUES_HIVE=cmA;CcA.DBSYSTEMVALUES_CLOUDSCAPE=lmA;CcA.DBSYSTEMVALUES_HSQLDB=pmA;CcA.DBSYSTEMVALUES_PROGRESS=imA;CcA.DBSYSTEMVALUES_MAXDB=nmA;CcA.DBSYSTEMVALUES_HANADB=smA;CcA.DBSYSTEMVALUES_INGRES=rmA;CcA.DBSYSTEMVALUES_FIRSTSQL=amA;CcA.DBSYSTEMVALUES_EDB=omA;CcA.DBSYSTEMVALUES_CACHE=tmA;CcA.DBSYSTEMVALUES_ADABAS=emA;CcA.DBSYSTEMVALUES_FIREBIRD=AuA;CcA.DBSYSTEMVALUES_DERBY=QuA;CcA.DBSYSTEMVALUES_FILEMAKER=BuA;CcA.DBSYSTEMVALUES_INFORMIX=YuA;CcA.DBSYSTEMVALUES_INSTANTDB=JuA;CcA.DBSYSTEMVALUES_INTERBASE=CuA;CcA.DBSYSTEMVALUES_MARIADB=XuA;CcA.DBSYSTEMVALUES_NETEZZA=GuA;CcA.DBSYSTEMVALUES_PERVASIVE=WuA;CcA.DBSYSTEMVALUES_POINTBASE=FuA;CcA.DBSYSTEMVALUES_SQLITE=ZuA;CcA.DBSYSTEMVALUES_SYBASE=$uA;CcA.DBSYSTEMVALUES_TERADATA=UuA;CcA.DBSYSTEMVALUES_VERTICA=EuA;CcA.DBSYSTEMVALUES_H2=KuA;CcA.DBSYSTEMVALUES_COLDFUSION=VuA;CcA.DBSYSTEMVALUES_CASSANDRA=IuA;CcA.DBSYSTEMVALUES_HBASE=HuA;CcA.DBSYSTEMVALUES_MONGODB=DuA;CcA.DBSYSTEMVALUES_REDIS=NuA;CcA.DBSYSTEMVALUES_COUCHBASE=LuA;CcA.DBSYSTEMVALUES_COUCHDB=quA;CcA.DBSYSTEMVALUES_COSMOSDB=MuA;CcA.DBSYSTEMVALUES_DYNAMODB=zuA;CcA.DBSYSTEMVALUES_NEO4J=RuA;CcA.DBSYSTEMVALUES_GEODE=wuA;CcA.DBSYSTEMVALUES_ELASTICSEARCH=juA;CcA.DBSYSTEMVALUES_MEMCACHED=OuA;CcA.DBSYSTEMVALUES_COCKROACHDB=PuA;CcA.DbSystemValues=(0,c5.createConstMap)([hmA,xmA,fmA,bmA,mmA,umA,dmA,cmA,lmA,pmA,imA,nmA,smA,rmA,amA,omA,tmA,emA,AuA,QuA,BuA,YuA,JuA,CuA,XuA,GuA,WuA,FuA,ZuA,$uA,UuA,EuA,KuA,VuA,IuA,HuA,DuA,NuA,LuA,quA,MuA,zuA,RuA,wuA,juA,OuA,PuA]);var TuA="all",SuA="each_quorum",kuA="quorum",_uA="local_quorum",vuA="one",yuA="two",guA="three",huA="local_one",xuA="any",fuA="serial",buA="local_serial";CcA.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=TuA;CcA.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=SuA;CcA.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=kuA;CcA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=_uA;CcA.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=vuA;CcA.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=yuA;CcA.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=guA;CcA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=huA;CcA.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=xuA;CcA.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=fuA;CcA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=buA;CcA.DbCassandraConsistencyLevelValues=(0,c5.createConstMap)([TuA,SuA,kuA,_uA,vuA,yuA,guA,huA,xuA,fuA,buA]);var muA="datasource",uuA="http",duA="pubsub",cuA="timer",luA="other";CcA.FAASTRIGGERVALUES_DATASOURCE=muA;CcA.FAASTRIGGERVALUES_HTTP=uuA;CcA.FAASTRIGGERVALUES_PUBSUB=duA;CcA.FAASTRIGGERVALUES_TIMER=cuA;CcA.FAASTRIGGERVALUES_OTHER=luA;CcA.FaasTriggerValues=(0,c5.createConstMap)([muA,uuA,duA,cuA,luA]);var puA="insert",iuA="edit",nuA="delete";CcA.FAASDOCUMENTOPERATIONVALUES_INSERT=puA;CcA.FAASDOCUMENTOPERATIONVALUES_EDIT=iuA;CcA.FAASDOCUMENTOPERATIONVALUES_DELETE=nuA;CcA.FaasDocumentOperationValues=(0,c5.createConstMap)([puA,iuA,nuA]);var suA="alibaba_cloud",ruA="aws",auA="azure",ouA="gcp";CcA.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=suA;CcA.FAASINVOKEDPROVIDERVALUES_AWS=ruA;CcA.FAASINVOKEDPROVIDERVALUES_AZURE=auA;CcA.FAASINVOKEDPROVIDERVALUES_GCP=ouA;CcA.FaasInvokedProviderValues=(0,c5.createConstMap)([suA,ruA,auA,ouA]);var tuA="ip_tcp",euA="ip_udp",AdA="ip",QdA="unix",BdA="pipe",YdA="inproc",JdA="other";CcA.NETTRANSPORTVALUES_IP_TCP=tuA;CcA.NETTRANSPORTVALUES_IP_UDP=euA;CcA.NETTRANSPORTVALUES_IP=AdA;CcA.NETTRANSPORTVALUES_UNIX=QdA;CcA.NETTRANSPORTVALUES_PIPE=BdA;CcA.NETTRANSPORTVALUES_INPROC=YdA;CcA.NETTRANSPORTVALUES_OTHER=JdA;CcA.NetTransportValues=(0,c5.createConstMap)([tuA,euA,AdA,QdA,BdA,YdA,JdA]);var CdA="wifi",XdA="wired",GdA="cell",WdA="unavailable",FdA="unknown";CcA.NETHOSTCONNECTIONTYPEVALUES_WIFI=CdA;CcA.NETHOSTCONNECTIONTYPEVALUES_WIRED=XdA;CcA.NETHOSTCONNECTIONTYPEVALUES_CELL=GdA;CcA.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=WdA;CcA.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=FdA;CcA.NetHostConnectionTypeValues=(0,c5.createConstMap)([CdA,XdA,GdA,WdA,FdA]);var ZdA="gprs",$dA="edge",UdA="umts",EdA="cdma",KdA="evdo_0",VdA="evdo_a",IdA="cdma2000_1xrtt",HdA="hsdpa",DdA="hsupa",NdA="hspa",LdA="iden",qdA="evdo_b",MdA="lte",zdA="ehrpd",RdA="hspap",wdA="gsm",jdA="td_scdma",OdA="iwlan",PdA="nr",TdA="nrnsa",SdA="lte_ca";CcA.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=ZdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=$dA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=UdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=EdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=KdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=VdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=IdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=HdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=DdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=NdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=LdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=qdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=MdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=zdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=RdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=wdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=jdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=OdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_NR=PdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=TdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=SdA;CcA.NetHostConnectionSubtypeValues=(0,c5.createConstMap)([ZdA,$dA,UdA,EdA,KdA,VdA,IdA,HdA,DdA,NdA,LdA,qdA,MdA,zdA,RdA,wdA,jdA,OdA,PdA,TdA,SdA]);var kdA="1.0",_dA="1.1",vdA="2.0",ydA="SPDY",gdA="QUIC";CcA.HTTPFLAVORVALUES_HTTP_1_0=kdA;CcA.HTTPFLAVORVALUES_HTTP_1_1=_dA;CcA.HTTPFLAVORVALUES_HTTP_2_0=vdA;CcA.HTTPFLAVORVALUES_SPDY=ydA;CcA.HTTPFLAVORVALUES_QUIC=gdA;CcA.HttpFlavorValues={HTTP_1_0:kdA,HTTP_1_1:_dA,HTTP_2_0:vdA,SPDY:ydA,QUIC:gdA};var hdA="queue",xdA="topic";CcA.MESSAGINGDESTINATIONKINDVALUES_QUEUE=hdA;CcA.MESSAGINGDESTINATIONKINDVALUES_TOPIC=xdA;CcA.MessagingDestinationKindValues=(0,c5.createConstMap)([hdA,xdA]);var fdA="receive",bdA="process";CcA.MESSAGINGOPERATIONVALUES_RECEIVE=fdA;CcA.MESSAGINGOPERATIONVALUES_PROCESS=bdA;CcA.MessagingOperationValues=(0,c5.createConstMap)([fdA,bdA]);var mdA=0,udA=1,ddA=2,cdA=3,ldA=4,pdA=5,idA=6,ndA=7,sdA=8,rdA=9,adA=10,odA=11,tdA=12,edA=13,AcA=14,QcA=15,BcA=16;CcA.RPCGRPCSTATUSCODEVALUES_OK=mdA;CcA.RPCGRPCSTATUSCODEVALUES_CANCELLED=udA;CcA.RPCGRPCSTATUSCODEVALUES_UNKNOWN=ddA;CcA.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=cdA;CcA.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=ldA;CcA.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=pdA;CcA.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=idA;CcA.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=ndA;CcA.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=sdA;CcA.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=rdA;CcA.RPCGRPCSTATUSCODEVALUES_ABORTED=adA;CcA.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=odA;CcA.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=tdA;CcA.RPCGRPCSTATUSCODEVALUES_INTERNAL=edA;CcA.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=AcA;CcA.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=QcA;CcA.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=BcA;CcA.RpcGrpcStatusCodeValues={OK:mdA,CANCELLED:udA,UNKNOWN:ddA,INVALID_ARGUMENT:cdA,DEADLINE_EXCEEDED:ldA,NOT_FOUND:pdA,ALREADY_EXISTS:idA,PERMISSION_DENIED:ndA,RESOURCE_EXHAUSTED:sdA,FAILED_PRECONDITION:rdA,ABORTED:adA,OUT_OF_RANGE:odA,UNIMPLEMENTED:tdA,INTERNAL:edA,UNAVAILABLE:AcA,DATA_LOSS:QcA,UNAUTHENTICATED:BcA};var YcA="SENT",JcA="RECEIVED";CcA.MESSAGETYPEVALUES_SENT=YcA;CcA.MESSAGETYPEVALUES_RECEIVED=JcA;CcA.MessageTypeValues=(0,c5.createConstMap)([YcA,JcA])});var EcA=R((W$)=>{var bbB=W$&&W$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),mbB=W$&&W$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))bbB(Q,A,B)};Object.defineProperty(W$,"__esModule",{value:!0});mbB(UcA(),W$)});var dpA=R((fpA)=>{Object.defineProperty(fpA,"__esModule",{value:!0});fpA.SEMRESATTRS_K8S_STATEFULSET_NAME=fpA.SEMRESATTRS_K8S_STATEFULSET_UID=fpA.SEMRESATTRS_K8S_DEPLOYMENT_NAME=fpA.SEMRESATTRS_K8S_DEPLOYMENT_UID=fpA.SEMRESATTRS_K8S_REPLICASET_NAME=fpA.SEMRESATTRS_K8S_REPLICASET_UID=fpA.SEMRESATTRS_K8S_CONTAINER_NAME=fpA.SEMRESATTRS_K8S_POD_NAME=fpA.SEMRESATTRS_K8S_POD_UID=fpA.SEMRESATTRS_K8S_NAMESPACE_NAME=fpA.SEMRESATTRS_K8S_NODE_UID=fpA.SEMRESATTRS_K8S_NODE_NAME=fpA.SEMRESATTRS_K8S_CLUSTER_NAME=fpA.SEMRESATTRS_HOST_IMAGE_VERSION=fpA.SEMRESATTRS_HOST_IMAGE_ID=fpA.SEMRESATTRS_HOST_IMAGE_NAME=fpA.SEMRESATTRS_HOST_ARCH=fpA.SEMRESATTRS_HOST_TYPE=fpA.SEMRESATTRS_HOST_NAME=fpA.SEMRESATTRS_HOST_ID=fpA.SEMRESATTRS_FAAS_MAX_MEMORY=fpA.SEMRESATTRS_FAAS_INSTANCE=fpA.SEMRESATTRS_FAAS_VERSION=fpA.SEMRESATTRS_FAAS_ID=fpA.SEMRESATTRS_FAAS_NAME=fpA.SEMRESATTRS_DEVICE_MODEL_NAME=fpA.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=fpA.SEMRESATTRS_DEVICE_ID=fpA.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=fpA.SEMRESATTRS_CONTAINER_IMAGE_TAG=fpA.SEMRESATTRS_CONTAINER_IMAGE_NAME=fpA.SEMRESATTRS_CONTAINER_RUNTIME=fpA.SEMRESATTRS_CONTAINER_ID=fpA.SEMRESATTRS_CONTAINER_NAME=fpA.SEMRESATTRS_AWS_LOG_STREAM_ARNS=fpA.SEMRESATTRS_AWS_LOG_STREAM_NAMES=fpA.SEMRESATTRS_AWS_LOG_GROUP_ARNS=fpA.SEMRESATTRS_AWS_LOG_GROUP_NAMES=fpA.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=fpA.SEMRESATTRS_AWS_ECS_TASK_REVISION=fpA.SEMRESATTRS_AWS_ECS_TASK_FAMILY=fpA.SEMRESATTRS_AWS_ECS_TASK_ARN=fpA.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=fpA.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=fpA.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=fpA.SEMRESATTRS_CLOUD_PLATFORM=fpA.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=fpA.SEMRESATTRS_CLOUD_REGION=fpA.SEMRESATTRS_CLOUD_ACCOUNT_ID=fpA.SEMRESATTRS_CLOUD_PROVIDER=void 0;fpA.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=fpA.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=fpA.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=fpA.CLOUDPLATFORMVALUES_AZURE_AKS=fpA.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=fpA.CLOUDPLATFORMVALUES_AZURE_VM=fpA.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=fpA.CLOUDPLATFORMVALUES_AWS_LAMBDA=fpA.CLOUDPLATFORMVALUES_AWS_EKS=fpA.CLOUDPLATFORMVALUES_AWS_ECS=fpA.CLOUDPLATFORMVALUES_AWS_EC2=fpA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=fpA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=fpA.CloudProviderValues=fpA.CLOUDPROVIDERVALUES_GCP=fpA.CLOUDPROVIDERVALUES_AZURE=fpA.CLOUDPROVIDERVALUES_AWS=fpA.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=fpA.SemanticResourceAttributes=fpA.SEMRESATTRS_WEBENGINE_DESCRIPTION=fpA.SEMRESATTRS_WEBENGINE_VERSION=fpA.SEMRESATTRS_WEBENGINE_NAME=fpA.SEMRESATTRS_TELEMETRY_AUTO_VERSION=fpA.SEMRESATTRS_TELEMETRY_SDK_VERSION=fpA.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=fpA.SEMRESATTRS_TELEMETRY_SDK_NAME=fpA.SEMRESATTRS_SERVICE_VERSION=fpA.SEMRESATTRS_SERVICE_INSTANCE_ID=fpA.SEMRESATTRS_SERVICE_NAMESPACE=fpA.SEMRESATTRS_SERVICE_NAME=fpA.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=fpA.SEMRESATTRS_PROCESS_RUNTIME_VERSION=fpA.SEMRESATTRS_PROCESS_RUNTIME_NAME=fpA.SEMRESATTRS_PROCESS_OWNER=fpA.SEMRESATTRS_PROCESS_COMMAND_ARGS=fpA.SEMRESATTRS_PROCESS_COMMAND_LINE=fpA.SEMRESATTRS_PROCESS_COMMAND=fpA.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=fpA.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=fpA.SEMRESATTRS_PROCESS_PID=fpA.SEMRESATTRS_OS_VERSION=fpA.SEMRESATTRS_OS_NAME=fpA.SEMRESATTRS_OS_DESCRIPTION=fpA.SEMRESATTRS_OS_TYPE=fpA.SEMRESATTRS_K8S_CRONJOB_NAME=fpA.SEMRESATTRS_K8S_CRONJOB_UID=fpA.SEMRESATTRS_K8S_JOB_NAME=fpA.SEMRESATTRS_K8S_JOB_UID=fpA.SEMRESATTRS_K8S_DAEMONSET_NAME=fpA.SEMRESATTRS_K8S_DAEMONSET_UID=void 0;fpA.TelemetrySdkLanguageValues=fpA.TELEMETRYSDKLANGUAGEVALUES_WEBJS=fpA.TELEMETRYSDKLANGUAGEVALUES_RUBY=fpA.TELEMETRYSDKLANGUAGEVALUES_PYTHON=fpA.TELEMETRYSDKLANGUAGEVALUES_PHP=fpA.TELEMETRYSDKLANGUAGEVALUES_NODEJS=fpA.TELEMETRYSDKLANGUAGEVALUES_JAVA=fpA.TELEMETRYSDKLANGUAGEVALUES_GO=fpA.TELEMETRYSDKLANGUAGEVALUES_ERLANG=fpA.TELEMETRYSDKLANGUAGEVALUES_DOTNET=fpA.TELEMETRYSDKLANGUAGEVALUES_CPP=fpA.OsTypeValues=fpA.OSTYPEVALUES_Z_OS=fpA.OSTYPEVALUES_SOLARIS=fpA.OSTYPEVALUES_AIX=fpA.OSTYPEVALUES_HPUX=fpA.OSTYPEVALUES_DRAGONFLYBSD=fpA.OSTYPEVALUES_OPENBSD=fpA.OSTYPEVALUES_NETBSD=fpA.OSTYPEVALUES_FREEBSD=fpA.OSTYPEVALUES_DARWIN=fpA.OSTYPEVALUES_LINUX=fpA.OSTYPEVALUES_WINDOWS=fpA.HostArchValues=fpA.HOSTARCHVALUES_X86=fpA.HOSTARCHVALUES_PPC64=fpA.HOSTARCHVALUES_PPC32=fpA.HOSTARCHVALUES_IA64=fpA.HOSTARCHVALUES_ARM64=fpA.HOSTARCHVALUES_ARM32=fpA.HOSTARCHVALUES_AMD64=fpA.AwsEcsLaunchtypeValues=fpA.AWSECSLAUNCHTYPEVALUES_FARGATE=fpA.AWSECSLAUNCHTYPEVALUES_EC2=fpA.CloudPlatformValues=fpA.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=fpA.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=fpA.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=fpA.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=void 0;var F$=np(),KcA="cloud.provider",VcA="cloud.account.id",IcA="cloud.region",HcA="cloud.availability_zone",DcA="cloud.platform",NcA="aws.ecs.container.arn",LcA="aws.ecs.cluster.arn",qcA="aws.ecs.launchtype",McA="aws.ecs.task.arn",zcA="aws.ecs.task.family",RcA="aws.ecs.task.revision",wcA="aws.eks.cluster.arn",jcA="aws.log.group.names",OcA="aws.log.group.arns",PcA="aws.log.stream.names",TcA="aws.log.stream.arns",ScA="container.name",kcA="container.id",_cA="container.runtime",vcA="container.image.name",ycA="container.image.tag",gcA="deployment.environment",hcA="device.id",xcA="device.model.identifier",fcA="device.model.name",bcA="faas.name",mcA="faas.id",ucA="faas.version",dcA="faas.instance",ccA="faas.max_memory",lcA="host.id",pcA="host.name",icA="host.type",ncA="host.arch",scA="host.image.name",rcA="host.image.id",acA="host.image.version",ocA="k8s.cluster.name",tcA="k8s.node.name",ecA="k8s.node.uid",AlA="k8s.namespace.name",QlA="k8s.pod.uid",BlA="k8s.pod.name",YlA="k8s.container.name",JlA="k8s.replicaset.uid",ClA="k8s.replicaset.name",XlA="k8s.deployment.uid",GlA="k8s.deployment.name",WlA="k8s.statefulset.uid",FlA="k8s.statefulset.name",ZlA="k8s.daemonset.uid",$lA="k8s.daemonset.name",UlA="k8s.job.uid",ElA="k8s.job.name",KlA="k8s.cronjob.uid",VlA="k8s.cronjob.name",IlA="os.type",HlA="os.description",DlA="os.name",NlA="os.version",LlA="process.pid",qlA="process.executable.name",MlA="process.executable.path",zlA="process.command",RlA="process.command_line",wlA="process.command_args",jlA="process.owner",OlA="process.runtime.name",PlA="process.runtime.version",TlA="process.runtime.description",SlA="service.name",klA="service.namespace",_lA="service.instance.id",vlA="service.version",ylA="telemetry.sdk.name",glA="telemetry.sdk.language",hlA="telemetry.sdk.version",xlA="telemetry.auto.version",flA="webengine.name",blA="webengine.version",mlA="webengine.description";fpA.SEMRESATTRS_CLOUD_PROVIDER=KcA;fpA.SEMRESATTRS_CLOUD_ACCOUNT_ID=VcA;fpA.SEMRESATTRS_CLOUD_REGION=IcA;fpA.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=HcA;fpA.SEMRESATTRS_CLOUD_PLATFORM=DcA;fpA.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=NcA;fpA.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=LcA;fpA.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=qcA;fpA.SEMRESATTRS_AWS_ECS_TASK_ARN=McA;fpA.SEMRESATTRS_AWS_ECS_TASK_FAMILY=zcA;fpA.SEMRESATTRS_AWS_ECS_TASK_REVISION=RcA;fpA.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=wcA;fpA.SEMRESATTRS_AWS_LOG_GROUP_NAMES=jcA;fpA.SEMRESATTRS_AWS_LOG_GROUP_ARNS=OcA;fpA.SEMRESATTRS_AWS_LOG_STREAM_NAMES=PcA;fpA.SEMRESATTRS_AWS_LOG_STREAM_ARNS=TcA;fpA.SEMRESATTRS_CONTAINER_NAME=ScA;fpA.SEMRESATTRS_CONTAINER_ID=kcA;fpA.SEMRESATTRS_CONTAINER_RUNTIME=_cA;fpA.SEMRESATTRS_CONTAINER_IMAGE_NAME=vcA;fpA.SEMRESATTRS_CONTAINER_IMAGE_TAG=ycA;fpA.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=gcA;fpA.SEMRESATTRS_DEVICE_ID=hcA;fpA.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=xcA;fpA.SEMRESATTRS_DEVICE_MODEL_NAME=fcA;fpA.SEMRESATTRS_FAAS_NAME=bcA;fpA.SEMRESATTRS_FAAS_ID=mcA;fpA.SEMRESATTRS_FAAS_VERSION=ucA;fpA.SEMRESATTRS_FAAS_INSTANCE=dcA;fpA.SEMRESATTRS_FAAS_MAX_MEMORY=ccA;fpA.SEMRESATTRS_HOST_ID=lcA;fpA.SEMRESATTRS_HOST_NAME=pcA;fpA.SEMRESATTRS_HOST_TYPE=icA;fpA.SEMRESATTRS_HOST_ARCH=ncA;fpA.SEMRESATTRS_HOST_IMAGE_NAME=scA;fpA.SEMRESATTRS_HOST_IMAGE_ID=rcA;fpA.SEMRESATTRS_HOST_IMAGE_VERSION=acA;fpA.SEMRESATTRS_K8S_CLUSTER_NAME=ocA;fpA.SEMRESATTRS_K8S_NODE_NAME=tcA;fpA.SEMRESATTRS_K8S_NODE_UID=ecA;fpA.SEMRESATTRS_K8S_NAMESPACE_NAME=AlA;fpA.SEMRESATTRS_K8S_POD_UID=QlA;fpA.SEMRESATTRS_K8S_POD_NAME=BlA;fpA.SEMRESATTRS_K8S_CONTAINER_NAME=YlA;fpA.SEMRESATTRS_K8S_REPLICASET_UID=JlA;fpA.SEMRESATTRS_K8S_REPLICASET_NAME=ClA;fpA.SEMRESATTRS_K8S_DEPLOYMENT_UID=XlA;fpA.SEMRESATTRS_K8S_DEPLOYMENT_NAME=GlA;fpA.SEMRESATTRS_K8S_STATEFULSET_UID=WlA;fpA.SEMRESATTRS_K8S_STATEFULSET_NAME=FlA;fpA.SEMRESATTRS_K8S_DAEMONSET_UID=ZlA;fpA.SEMRESATTRS_K8S_DAEMONSET_NAME=$lA;fpA.SEMRESATTRS_K8S_JOB_UID=UlA;fpA.SEMRESATTRS_K8S_JOB_NAME=ElA;fpA.SEMRESATTRS_K8S_CRONJOB_UID=KlA;fpA.SEMRESATTRS_K8S_CRONJOB_NAME=VlA;fpA.SEMRESATTRS_OS_TYPE=IlA;fpA.SEMRESATTRS_OS_DESCRIPTION=HlA;fpA.SEMRESATTRS_OS_NAME=DlA;fpA.SEMRESATTRS_OS_VERSION=NlA;fpA.SEMRESATTRS_PROCESS_PID=LlA;fpA.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=qlA;fpA.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=MlA;fpA.SEMRESATTRS_PROCESS_COMMAND=zlA;fpA.SEMRESATTRS_PROCESS_COMMAND_LINE=RlA;fpA.SEMRESATTRS_PROCESS_COMMAND_ARGS=wlA;fpA.SEMRESATTRS_PROCESS_OWNER=jlA;fpA.SEMRESATTRS_PROCESS_RUNTIME_NAME=OlA;fpA.SEMRESATTRS_PROCESS_RUNTIME_VERSION=PlA;fpA.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=TlA;fpA.SEMRESATTRS_SERVICE_NAME=SlA;fpA.SEMRESATTRS_SERVICE_NAMESPACE=klA;fpA.SEMRESATTRS_SERVICE_INSTANCE_ID=_lA;fpA.SEMRESATTRS_SERVICE_VERSION=vlA;fpA.SEMRESATTRS_TELEMETRY_SDK_NAME=ylA;fpA.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=glA;fpA.SEMRESATTRS_TELEMETRY_SDK_VERSION=hlA;fpA.SEMRESATTRS_TELEMETRY_AUTO_VERSION=xlA;fpA.SEMRESATTRS_WEBENGINE_NAME=flA;fpA.SEMRESATTRS_WEBENGINE_VERSION=blA;fpA.SEMRESATTRS_WEBENGINE_DESCRIPTION=mlA;fpA.SemanticResourceAttributes=(0,F$.createConstMap)([KcA,VcA,IcA,HcA,DcA,NcA,LcA,qcA,McA,zcA,RcA,wcA,jcA,OcA,PcA,TcA,ScA,kcA,_cA,vcA,ycA,gcA,hcA,xcA,fcA,bcA,mcA,ucA,dcA,ccA,lcA,pcA,icA,ncA,scA,rcA,acA,ocA,tcA,ecA,AlA,QlA,BlA,YlA,JlA,ClA,XlA,GlA,WlA,FlA,ZlA,$lA,UlA,ElA,KlA,VlA,IlA,HlA,DlA,NlA,LlA,qlA,MlA,zlA,RlA,wlA,jlA,OlA,PlA,TlA,SlA,klA,_lA,vlA,ylA,glA,hlA,xlA,flA,blA,mlA]);var ulA="alibaba_cloud",dlA="aws",clA="azure",llA="gcp";fpA.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=ulA;fpA.CLOUDPROVIDERVALUES_AWS=dlA;fpA.CLOUDPROVIDERVALUES_AZURE=clA;fpA.CLOUDPROVIDERVALUES_GCP=llA;fpA.CloudProviderValues=(0,F$.createConstMap)([ulA,dlA,clA,llA]);var plA="alibaba_cloud_ecs",ilA="alibaba_cloud_fc",nlA="aws_ec2",slA="aws_ecs",rlA="aws_eks",alA="aws_lambda",olA="aws_elastic_beanstalk",tlA="azure_vm",elA="azure_container_instances",ApA="azure_aks",QpA="azure_functions",BpA="azure_app_service",YpA="gcp_compute_engine",JpA="gcp_cloud_run",CpA="gcp_kubernetes_engine",XpA="gcp_cloud_functions",GpA="gcp_app_engine";fpA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=plA;fpA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=ilA;fpA.CLOUDPLATFORMVALUES_AWS_EC2=nlA;fpA.CLOUDPLATFORMVALUES_AWS_ECS=slA;fpA.CLOUDPLATFORMVALUES_AWS_EKS=rlA;fpA.CLOUDPLATFORMVALUES_AWS_LAMBDA=alA;fpA.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=olA;fpA.CLOUDPLATFORMVALUES_AZURE_VM=tlA;fpA.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=elA;fpA.CLOUDPLATFORMVALUES_AZURE_AKS=ApA;fpA.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=QpA;fpA.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=BpA;fpA.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=YpA;fpA.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=JpA;fpA.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=CpA;fpA.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=XpA;fpA.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=GpA;fpA.CloudPlatformValues=(0,F$.createConstMap)([plA,ilA,nlA,slA,rlA,alA,olA,tlA,elA,ApA,QpA,BpA,YpA,JpA,CpA,XpA,GpA]);var WpA="ec2",FpA="fargate";fpA.AWSECSLAUNCHTYPEVALUES_EC2=WpA;fpA.AWSECSLAUNCHTYPEVALUES_FARGATE=FpA;fpA.AwsEcsLaunchtypeValues=(0,F$.createConstMap)([WpA,FpA]);var ZpA="amd64",$pA="arm32",UpA="arm64",EpA="ia64",KpA="ppc32",VpA="ppc64",IpA="x86";fpA.HOSTARCHVALUES_AMD64=ZpA;fpA.HOSTARCHVALUES_ARM32=$pA;fpA.HOSTARCHVALUES_ARM64=UpA;fpA.HOSTARCHVALUES_IA64=EpA;fpA.HOSTARCHVALUES_PPC32=KpA;fpA.HOSTARCHVALUES_PPC64=VpA;fpA.HOSTARCHVALUES_X86=IpA;fpA.HostArchValues=(0,F$.createConstMap)([ZpA,$pA,UpA,EpA,KpA,VpA,IpA]);var HpA="windows",DpA="linux",NpA="darwin",LpA="freebsd",qpA="netbsd",MpA="openbsd",zpA="dragonflybsd",RpA="hpux",wpA="aix",jpA="solaris",OpA="z_os";fpA.OSTYPEVALUES_WINDOWS=HpA;fpA.OSTYPEVALUES_LINUX=DpA;fpA.OSTYPEVALUES_DARWIN=NpA;fpA.OSTYPEVALUES_FREEBSD=LpA;fpA.OSTYPEVALUES_NETBSD=qpA;fpA.OSTYPEVALUES_OPENBSD=MpA;fpA.OSTYPEVALUES_DRAGONFLYBSD=zpA;fpA.OSTYPEVALUES_HPUX=RpA;fpA.OSTYPEVALUES_AIX=wpA;fpA.OSTYPEVALUES_SOLARIS=jpA;fpA.OSTYPEVALUES_Z_OS=OpA;fpA.OsTypeValues=(0,F$.createConstMap)([HpA,DpA,NpA,LpA,qpA,MpA,zpA,RpA,wpA,jpA,OpA]);var PpA="cpp",TpA="dotnet",SpA="erlang",kpA="go",_pA="java",vpA="nodejs",ypA="php",gpA="python",hpA="ruby",xpA="webjs";fpA.TELEMETRYSDKLANGUAGEVALUES_CPP=PpA;fpA.TELEMETRYSDKLANGUAGEVALUES_DOTNET=TpA;fpA.TELEMETRYSDKLANGUAGEVALUES_ERLANG=SpA;fpA.TELEMETRYSDKLANGUAGEVALUES_GO=kpA;fpA.TELEMETRYSDKLANGUAGEVALUES_JAVA=_pA;fpA.TELEMETRYSDKLANGUAGEVALUES_NODEJS=vpA;fpA.TELEMETRYSDKLANGUAGEVALUES_PHP=ypA;fpA.TELEMETRYSDKLANGUAGEVALUES_PYTHON=gpA;fpA.TELEMETRYSDKLANGUAGEVALUES_RUBY=hpA;fpA.TELEMETRYSDKLANGUAGEVALUES_WEBJS=xpA;fpA.TelemetrySdkLanguageValues=(0,F$.createConstMap)([PpA,TpA,SpA,kpA,_pA,vpA,ypA,gpA,hpA,xpA])});var cpA=R((Z$)=>{var VdB=Z$&&Z$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),IdB=Z$&&Z$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))VdB(Q,A,B)};Object.defineProperty(Z$,"__esModule",{value:!0});IdB(dpA(),Z$)});var spA=R((lpA)=>{Object.defineProperty(lpA,"__esModule",{value:!0});lpA.HTTP_REQUEST_METHOD_VALUE_POST=lpA.HTTP_REQUEST_METHOD_VALUE_PATCH=lpA.HTTP_REQUEST_METHOD_VALUE_OPTIONS=lpA.HTTP_REQUEST_METHOD_VALUE_HEAD=lpA.HTTP_REQUEST_METHOD_VALUE_GET=lpA.HTTP_REQUEST_METHOD_VALUE_DELETE=lpA.HTTP_REQUEST_METHOD_VALUE_CONNECT=lpA.HTTP_REQUEST_METHOD_VALUE_OTHER=lpA.ATTR_HTTP_REQUEST_METHOD=lpA.ATTR_HTTP_REQUEST_HEADER=lpA.ATTR_EXCEPTION_TYPE=lpA.ATTR_EXCEPTION_STACKTRACE=lpA.ATTR_EXCEPTION_MESSAGE=lpA.ATTR_EXCEPTION_ESCAPED=lpA.ERROR_TYPE_VALUE_OTHER=lpA.ATTR_ERROR_TYPE=lpA.ATTR_CLIENT_PORT=lpA.ATTR_CLIENT_ADDRESS=lpA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS=lpA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE=lpA.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS=lpA.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK=lpA.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED=lpA.ATTR_ASPNETCORE_RATE_LIMITING_POLICY=lpA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED=lpA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED=lpA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED=lpA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED=lpA.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT=lpA.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE=lpA.ATTR_TELEMETRY_SDK_VERSION=lpA.ATTR_TELEMETRY_SDK_NAME=lpA.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS=lpA.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT=lpA.TELEMETRY_SDK_LANGUAGE_VALUE_RUST=lpA.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY=lpA.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON=lpA.TELEMETRY_SDK_LANGUAGE_VALUE_PHP=lpA.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS=lpA.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA=lpA.TELEMETRY_SDK_LANGUAGE_VALUE_GO=lpA.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG=lpA.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET=lpA.TELEMETRY_SDK_LANGUAGE_VALUE_CPP=lpA.ATTR_TELEMETRY_SDK_LANGUAGE=lpA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED=lpA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER=lpA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER=lpA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED=lpA.ATTR_ASPNETCORE_RATE_LIMITING_RESULT=void 0;lpA.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT=lpA.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE=lpA.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN=lpA.ATTR_SIGNALR_CONNECTION_STATUS=lpA.ATTR_SERVICE_VERSION=lpA.ATTR_SERVICE_NAME=lpA.ATTR_SERVER_PORT=lpA.ATTR_SERVER_ADDRESS=lpA.ATTR_OTEL_STATUS_DESCRIPTION=lpA.OTEL_STATUS_CODE_VALUE_OK=lpA.OTEL_STATUS_CODE_VALUE_ERROR=lpA.ATTR_OTEL_STATUS_CODE=lpA.ATTR_OTEL_SCOPE_VERSION=lpA.ATTR_OTEL_SCOPE_NAME=lpA.NETWORK_TYPE_VALUE_IPV6=lpA.NETWORK_TYPE_VALUE_IPV4=lpA.ATTR_NETWORK_TYPE=lpA.NETWORK_TRANSPORT_VALUE_UNIX=lpA.NETWORK_TRANSPORT_VALUE_UDP=lpA.NETWORK_TRANSPORT_VALUE_TCP=lpA.NETWORK_TRANSPORT_VALUE_QUIC=lpA.NETWORK_TRANSPORT_VALUE_PIPE=lpA.ATTR_NETWORK_TRANSPORT=lpA.ATTR_NETWORK_PROTOCOL_VERSION=lpA.ATTR_NETWORK_PROTOCOL_NAME=lpA.ATTR_NETWORK_PEER_PORT=lpA.ATTR_NETWORK_PEER_ADDRESS=lpA.ATTR_NETWORK_LOCAL_PORT=lpA.ATTR_NETWORK_LOCAL_ADDRESS=lpA.JVM_THREAD_STATE_VALUE_WAITING=lpA.JVM_THREAD_STATE_VALUE_TIMED_WAITING=lpA.JVM_THREAD_STATE_VALUE_TERMINATED=lpA.JVM_THREAD_STATE_VALUE_RUNNABLE=lpA.JVM_THREAD_STATE_VALUE_NEW=lpA.JVM_THREAD_STATE_VALUE_BLOCKED=lpA.ATTR_JVM_THREAD_STATE=lpA.ATTR_JVM_THREAD_DAEMON=lpA.JVM_MEMORY_TYPE_VALUE_NON_HEAP=lpA.JVM_MEMORY_TYPE_VALUE_HEAP=lpA.ATTR_JVM_MEMORY_TYPE=lpA.ATTR_JVM_MEMORY_POOL_NAME=lpA.ATTR_JVM_GC_NAME=lpA.ATTR_JVM_GC_ACTION=lpA.ATTR_HTTP_ROUTE=lpA.ATTR_HTTP_RESPONSE_STATUS_CODE=lpA.ATTR_HTTP_RESPONSE_HEADER=lpA.ATTR_HTTP_REQUEST_RESEND_COUNT=lpA.ATTR_HTTP_REQUEST_METHOD_ORIGINAL=lpA.HTTP_REQUEST_METHOD_VALUE_TRACE=lpA.HTTP_REQUEST_METHOD_VALUE_PUT=void 0;lpA.ATTR_USER_AGENT_ORIGINAL=lpA.ATTR_URL_SCHEME=lpA.ATTR_URL_QUERY=lpA.ATTR_URL_PATH=lpA.ATTR_URL_FULL=lpA.ATTR_URL_FRAGMENT=lpA.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS=lpA.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS=lpA.SIGNALR_TRANSPORT_VALUE_LONG_POLLING=lpA.ATTR_SIGNALR_TRANSPORT=void 0;lpA.ATTR_ASPNETCORE_RATE_LIMITING_RESULT="aspnetcore.rate_limiting.result";lpA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED="acquired";lpA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER="endpoint_limiter";lpA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER="global_limiter";lpA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED="request_canceled";lpA.ATTR_TELEMETRY_SDK_LANGUAGE="telemetry.sdk.language";lpA.TELEMETRY_SDK_LANGUAGE_VALUE_CPP="cpp";lpA.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET="dotnet";lpA.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG="erlang";lpA.TELEMETRY_SDK_LANGUAGE_VALUE_GO="go";lpA.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA="java";lpA.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS="nodejs";lpA.TELEMETRY_SDK_LANGUAGE_VALUE_PHP="php";lpA.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON="python";lpA.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY="ruby";lpA.TELEMETRY_SDK_LANGUAGE_VALUE_RUST="rust";lpA.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT="swift";lpA.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS="webjs";lpA.ATTR_TELEMETRY_SDK_NAME="telemetry.sdk.name";lpA.ATTR_TELEMETRY_SDK_VERSION="telemetry.sdk.version";lpA.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE="aspnetcore.diagnostics.handler.type";lpA.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT="aspnetcore.diagnostics.exception.result";lpA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED="aborted";lpA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED="handled";lpA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED="skipped";lpA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED="unhandled";lpA.ATTR_ASPNETCORE_RATE_LIMITING_POLICY="aspnetcore.rate_limiting.policy";lpA.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED="aspnetcore.request.is_unhandled";lpA.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK="aspnetcore.routing.is_fallback";lpA.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS="aspnetcore.routing.match_status";lpA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE="failure";lpA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS="success";lpA.ATTR_CLIENT_ADDRESS="client.address";lpA.ATTR_CLIENT_PORT="client.port";lpA.ATTR_ERROR_TYPE="error.type";lpA.ERROR_TYPE_VALUE_OTHER="_OTHER";lpA.ATTR_EXCEPTION_ESCAPED="exception.escaped";lpA.ATTR_EXCEPTION_MESSAGE="exception.message";lpA.ATTR_EXCEPTION_STACKTRACE="exception.stacktrace";lpA.ATTR_EXCEPTION_TYPE="exception.type";var HdB=(A)=>`http.request.header.${A}`;lpA.ATTR_HTTP_REQUEST_HEADER=HdB;lpA.ATTR_HTTP_REQUEST_METHOD="http.request.method";lpA.HTTP_REQUEST_METHOD_VALUE_OTHER="_OTHER";lpA.HTTP_REQUEST_METHOD_VALUE_CONNECT="CONNECT";lpA.HTTP_REQUEST_METHOD_VALUE_DELETE="DELETE";lpA.HTTP_REQUEST_METHOD_VALUE_GET="GET";lpA.HTTP_REQUEST_METHOD_VALUE_HEAD="HEAD";lpA.HTTP_REQUEST_METHOD_VALUE_OPTIONS="OPTIONS";lpA.HTTP_REQUEST_METHOD_VALUE_PATCH="PATCH";lpA.HTTP_REQUEST_METHOD_VALUE_POST="POST";lpA.HTTP_REQUEST_METHOD_VALUE_PUT="PUT";lpA.HTTP_REQUEST_METHOD_VALUE_TRACE="TRACE";lpA.ATTR_HTTP_REQUEST_METHOD_ORIGINAL="http.request.method_original";lpA.ATTR_HTTP_REQUEST_RESEND_COUNT="http.request.resend_count";var DdB=(A)=>`http.response.header.${A}`;lpA.ATTR_HTTP_RESPONSE_HEADER=DdB;lpA.ATTR_HTTP_RESPONSE_STATUS_CODE="http.response.status_code";lpA.ATTR_HTTP_ROUTE="http.route";lpA.ATTR_JVM_GC_ACTION="jvm.gc.action";lpA.ATTR_JVM_GC_NAME="jvm.gc.name";lpA.ATTR_JVM_MEMORY_POOL_NAME="jvm.memory.pool.name";lpA.ATTR_JVM_MEMORY_TYPE="jvm.memory.type";lpA.JVM_MEMORY_TYPE_VALUE_HEAP="heap";lpA.JVM_MEMORY_TYPE_VALUE_NON_HEAP="non_heap";lpA.ATTR_JVM_THREAD_DAEMON="jvm.thread.daemon";lpA.ATTR_JVM_THREAD_STATE="jvm.thread.state";lpA.JVM_THREAD_STATE_VALUE_BLOCKED="blocked";lpA.JVM_THREAD_STATE_VALUE_NEW="new";lpA.JVM_THREAD_STATE_VALUE_RUNNABLE="runnable";lpA.JVM_THREAD_STATE_VALUE_TERMINATED="terminated";lpA.JVM_THREAD_STATE_VALUE_TIMED_WAITING="timed_waiting";lpA.JVM_THREAD_STATE_VALUE_WAITING="waiting";lpA.ATTR_NETWORK_LOCAL_ADDRESS="network.local.address";lpA.ATTR_NETWORK_LOCAL_PORT="network.local.port";lpA.ATTR_NETWORK_PEER_ADDRESS="network.peer.address";lpA.ATTR_NETWORK_PEER_PORT="network.peer.port";lpA.ATTR_NETWORK_PROTOCOL_NAME="network.protocol.name";lpA.ATTR_NETWORK_PROTOCOL_VERSION="network.protocol.version";lpA.ATTR_NETWORK_TRANSPORT="network.transport";lpA.NETWORK_TRANSPORT_VALUE_PIPE="pipe";lpA.NETWORK_TRANSPORT_VALUE_QUIC="quic";lpA.NETWORK_TRANSPORT_VALUE_TCP="tcp";lpA.NETWORK_TRANSPORT_VALUE_UDP="udp";lpA.NETWORK_TRANSPORT_VALUE_UNIX="unix";lpA.ATTR_NETWORK_TYPE="network.type";lpA.NETWORK_TYPE_VALUE_IPV4="ipv4";lpA.NETWORK_TYPE_VALUE_IPV6="ipv6";lpA.ATTR_OTEL_SCOPE_NAME="otel.scope.name";lpA.ATTR_OTEL_SCOPE_VERSION="otel.scope.version";lpA.ATTR_OTEL_STATUS_CODE="otel.status_code";lpA.OTEL_STATUS_CODE_VALUE_ERROR="ERROR";lpA.OTEL_STATUS_CODE_VALUE_OK="OK";lpA.ATTR_OTEL_STATUS_DESCRIPTION="otel.status_description";lpA.ATTR_SERVER_ADDRESS="server.address";lpA.ATTR_SERVER_PORT="server.port";lpA.ATTR_SERVICE_NAME="service.name";lpA.ATTR_SERVICE_VERSION="service.version";lpA.ATTR_SIGNALR_CONNECTION_STATUS="signalr.connection.status";lpA.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN="app_shutdown";lpA.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE="normal_closure";lpA.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT="timeout";lpA.ATTR_SIGNALR_TRANSPORT="signalr.transport";lpA.SIGNALR_TRANSPORT_VALUE_LONG_POLLING="long_polling";lpA.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS="server_sent_events";lpA.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS="web_sockets";lpA.ATTR_URL_FRAGMENT="url.fragment";lpA.ATTR_URL_FULL="url.full";lpA.ATTR_URL_PATH="url.path";lpA.ATTR_URL_QUERY="url.query";lpA.ATTR_URL_SCHEME="url.scheme";lpA.ATTR_USER_AGENT_ORIGINAL="user_agent.original"});var opA=R((rpA)=>{Object.defineProperty(rpA,"__esModule",{value:!0});rpA.METRIC_SIGNALR_SERVER_CONNECTION_DURATION=rpA.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS=rpA.METRIC_KESTREL_UPGRADED_CONNECTIONS=rpA.METRIC_KESTREL_TLS_HANDSHAKE_DURATION=rpA.METRIC_KESTREL_REJECTED_CONNECTIONS=rpA.METRIC_KESTREL_QUEUED_REQUESTS=rpA.METRIC_KESTREL_QUEUED_CONNECTIONS=rpA.METRIC_KESTREL_CONNECTION_DURATION=rpA.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES=rpA.METRIC_KESTREL_ACTIVE_CONNECTIONS=rpA.METRIC_JVM_THREAD_COUNT=rpA.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC=rpA.METRIC_JVM_MEMORY_USED=rpA.METRIC_JVM_MEMORY_LIMIT=rpA.METRIC_JVM_MEMORY_COMMITTED=rpA.METRIC_JVM_GC_DURATION=rpA.METRIC_JVM_CPU_TIME=rpA.METRIC_JVM_CPU_RECENT_UTILIZATION=rpA.METRIC_JVM_CPU_COUNT=rpA.METRIC_JVM_CLASS_UNLOADED=rpA.METRIC_JVM_CLASS_LOADED=rpA.METRIC_JVM_CLASS_COUNT=rpA.METRIC_HTTP_SERVER_REQUEST_DURATION=rpA.METRIC_HTTP_CLIENT_REQUEST_DURATION=rpA.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS=rpA.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS=rpA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION=rpA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE=rpA.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS=rpA.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES=rpA.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS=void 0;rpA.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS="aspnetcore.diagnostics.exceptions";rpA.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES="aspnetcore.rate_limiting.active_request_leases";rpA.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS="aspnetcore.rate_limiting.queued_requests";rpA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE="aspnetcore.rate_limiting.request.time_in_queue";rpA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION="aspnetcore.rate_limiting.request_lease.duration";rpA.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS="aspnetcore.rate_limiting.requests";rpA.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS="aspnetcore.routing.match_attempts";rpA.METRIC_HTTP_CLIENT_REQUEST_DURATION="http.client.request.duration";rpA.METRIC_HTTP_SERVER_REQUEST_DURATION="http.server.request.duration";rpA.METRIC_JVM_CLASS_COUNT="jvm.class.count";rpA.METRIC_JVM_CLASS_LOADED="jvm.class.loaded";rpA.METRIC_JVM_CLASS_UNLOADED="jvm.class.unloaded";rpA.METRIC_JVM_CPU_COUNT="jvm.cpu.count";rpA.METRIC_JVM_CPU_RECENT_UTILIZATION="jvm.cpu.recent_utilization";rpA.METRIC_JVM_CPU_TIME="jvm.cpu.time";rpA.METRIC_JVM_GC_DURATION="jvm.gc.duration";rpA.METRIC_JVM_MEMORY_COMMITTED="jvm.memory.committed";rpA.METRIC_JVM_MEMORY_LIMIT="jvm.memory.limit";rpA.METRIC_JVM_MEMORY_USED="jvm.memory.used";rpA.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC="jvm.memory.used_after_last_gc";rpA.METRIC_JVM_THREAD_COUNT="jvm.thread.count";rpA.METRIC_KESTREL_ACTIVE_CONNECTIONS="kestrel.active_connections";rpA.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES="kestrel.active_tls_handshakes";rpA.METRIC_KESTREL_CONNECTION_DURATION="kestrel.connection.duration";rpA.METRIC_KESTREL_QUEUED_CONNECTIONS="kestrel.queued_connections";rpA.METRIC_KESTREL_QUEUED_REQUESTS="kestrel.queued_requests";rpA.METRIC_KESTREL_REJECTED_CONNECTIONS="kestrel.rejected_connections";rpA.METRIC_KESTREL_TLS_HANDSHAKE_DURATION="kestrel.tls_handshake.duration";rpA.METRIC_KESTREL_UPGRADED_CONNECTIONS="kestrel.upgraded_connections";rpA.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS="signalr.server.active_connections";rpA.METRIC_SIGNALR_SERVER_CONNECTION_DURATION="signalr.server.connection.duration"});var sp=R((EX)=>{var slB=EX&&EX.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),AP=EX&&EX.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))slB(Q,A,B)};Object.defineProperty(EX,"__esModule",{value:!0});AP(EcA(),EX);AP(cpA(),EX);AP(spA(),EX);AP(opA(),EX)});var epA=R((tpA)=>{Object.defineProperty(tpA,"__esModule",{value:!0});tpA.AttributeNames=void 0;var rlB;(function(A){A.HTTP_ERROR_NAME="http.error_name",A.HTTP_ERROR_MESSAGE="http.error_message",A.HTTP_STATUS_TEXT="http.status_text"})(rlB=tpA.AttributeNames||(tpA.AttributeNames={}))});var QiA=R((ahY,AiA)=>{var alB=u("util");function ap(A,Q){Error.captureStackTrace(this,ap),this.name=this.constructor.name,this.message=A,this.input=Q}alB.inherits(ap,Error);AiA.exports=ap});var YiA=R((ohY,BiA)=>{function olB(A){return A===34||A===40||A===41||A===44||A===47||A>=58&&A<=64||A>=91&&A<=93||A===123||A===125}function tlB(A){return A===33||A>=35&&A<=39||A===42||A===43||A===45||A===46||A>=48&&A<=57||A>=65&&A<=90||A>=94&&A<=122||A===124||A===126}function elB(A){return A>=32&&A<=126}function ApB(A){return A>=128&&A<=255}BiA.exports={isDelimiter:olB,isTokenChar:tlB,isExtended:ApB,isPrint:elB}});var WiA=R((thY,GiA)=>{var QpB=u("util"),EK=QiA(),QP=YiA(),BpB=QP.isDelimiter,JiA=QP.isTokenChar,CiA=QP.isExtended,YpB=QP.isPrint;function XiA(A){return A.replace(/\\(.)/g,"$1")}function RL(A,Q){return QpB.format("Unexpected character '%s' at index %d",A.charAt(Q),Q)}function JpB(A){var Q=!1,B=!1,Y=!1,J={},C=[],X=-1,G=-1,W,F;for(var Z=0;Z{Object.defineProperty(KiA,"__esModule",{value:!0});KiA.headerCapture=KiA.getIncomingStableRequestMetricAttributesOnResponse=KiA.getIncomingRequestMetricAttributesOnResponse=KiA.getIncomingRequestAttributesOnResponse=KiA.getIncomingRequestMetricAttributes=KiA.getIncomingRequestAttributes=KiA.getRemoteClientAddress=KiA.getOutgoingRequestMetricAttributesOnResponse=KiA.getOutgoingRequestAttributesOnResponse=KiA.setAttributesFromHttpKind=KiA.getOutgoingRequestMetricAttributes=KiA.getOutgoingRequestAttributes=KiA.extractHostnameAndPort=KiA.isValidOptionsType=KiA.getRequestInfo=KiA.isCompressed=KiA.setResponseContentLengthAttribute=KiA.setRequestContentLengthAttribute=KiA.setSpanWithError=KiA.satisfiesPattern=KiA.parseResponseStatus=KiA.getAbsoluteUrl=void 0;var wL=yA(),SA=sp(),FiA=MB(),CpB=u("url"),BP=epA(),XpB=WiA(),GpB=(A,Q,B="http:")=>{let Y=A||{},J=Y.protocol||B,C=(Y.port||"").toString(),X=Y.path||"/",G=Y.host||Y.hostname||Q.host||"localhost";if(G.indexOf(":")===-1&&C&&C!=="80"&&C!=="443")G+=`:${C}`;return`${J}//${G}${X}`};KiA.getAbsoluteUrl=GpB;var WpB=(A,Q)=>{let B=A===wL.SpanKind.CLIENT?400:500;if(Q&&Q>=100&&Q{if(typeof Q==="string")return Q===A;else if(Q instanceof RegExp)return Q.test(A);else if(typeof Q==="function")return Q(A);else throw TypeError("Pattern is in unsupported datatype")};KiA.satisfiesPattern=FpB;var ZpB=(A,Q,B)=>{let Y=Q.message;if((B&2)===2)A.setAttribute(BP.AttributeNames.HTTP_ERROR_NAME,Q.name),A.setAttribute(BP.AttributeNames.HTTP_ERROR_MESSAGE,Y);if((B&1)===1)A.setAttribute(SA.ATTR_ERROR_TYPE,Q.name);A.setStatus({code:wL.SpanStatusCode.ERROR,message:Y}),A.recordException(Q)};KiA.setSpanWithError=ZpB;var $pB=(A,Q)=>{let B=ZiA(A.headers);if(B===null)return;if(KiA.isCompressed(A.headers))Q[SA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH]=B;else Q[SA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED]=B};KiA.setRequestContentLengthAttribute=$pB;var UpB=(A,Q)=>{let B=ZiA(A.headers);if(B===null)return;if(KiA.isCompressed(A.headers))Q[SA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH]=B;else Q[SA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED]=B};KiA.setResponseContentLengthAttribute=UpB;function ZiA(A){let Q=A["content-length"];if(Q===void 0)return null;let B=parseInt(Q,10);if(isNaN(B))return null;return B}var EpB=(A)=>{let Q=A["content-encoding"];return!!Q&&Q!=="identity"};KiA.isCompressed=EpB;function KpB(A){let{hostname:Q,pathname:B,port:Y,username:J,password:C,search:X,protocol:G,hash:W,href:F,origin:Z,host:U}=new URL(A),$={protocol:G,hostname:Q&&Q[0]==="["?Q.slice(1,-1):Q,hash:W,search:X,pathname:B,path:`${B||""}${X||""}`,href:F,origin:Z,host:U};if(Y!=="")$.port=Number(Y);if(J||C)$.auth=`${decodeURIComponent(J)}:${decodeURIComponent(C)}`;return $}var VpB=(A,Q,B)=>{let Y,J,C,X=!1;if(typeof Q==="string"){try{let W=KpB(Q);C=W,Y=W.pathname||"/"}catch(W){X=!0,A.verbose("Unable to parse URL provided to HTTP request, using fallback to determine path. Original error:",W),C={path:Q},Y=C.path||"/"}if(J=`${C.protocol||"http:"}//${C.host}`,B!==void 0)Object.assign(C,B)}else if(Q instanceof CpB.URL){if(C={protocol:Q.protocol,hostname:typeof Q.hostname==="string"&&Q.hostname.startsWith("[")?Q.hostname.slice(1,-1):Q.hostname,path:`${Q.pathname||""}${Q.search||""}`},Q.port!=="")C.port=Number(Q.port);if(Q.username||Q.password)C.auth=`${Q.username}:${Q.password}`;if(Y=Q.pathname,J=Q.origin,B!==void 0)Object.assign(C,B)}else{C=Object.assign({protocol:Q.host?"http:":void 0},Q);let W=C.host||(C.port!=null?`${C.hostname}${C.port}`:C.hostname);if(J=`${C.protocol||"http:"}//${W}`,Y=Q.pathname,!Y&&C.path)try{Y=new URL(C.path,J).pathname||"/"}catch(F){Y="/"}}let G=C.method?C.method.toUpperCase():"GET";return{origin:J,pathname:Y,method:G,optionsParsed:C,invalidUrl:X}};KiA.getRequestInfo=VpB;var IpB=(A)=>{if(!A)return!1;let Q=typeof A;return Q==="string"||Q==="object"&&!Array.isArray(A)};KiA.isValidOptionsType=IpB;var HpB=(A)=>{var Q;if(A.hostname&&A.port)return{hostname:A.hostname,port:A.port};let B=((Q=A.host)===null||Q===void 0?void 0:Q.match(/^([^:/ ]+)(:\d{1,5})?/))||null,Y=A.hostname||(B===null?"localhost":B[1]),J=A.port;if(!J)if(B&&B[2])J=B[2].substring(1);else J=A.protocol==="https:"?"443":"80";return{hostname:Y,port:J}};KiA.extractHostnameAndPort=HpB;var DpB=(A,Q,B)=>{var Y,J;let{hostname:C,port:X}=Q,G=(Y=A.method)!==null&&Y!==void 0?Y:"GET",W=UiA(G),F=A.headers||{},Z=F["user-agent"],U=KiA.getAbsoluteUrl(A,F,`${Q.component}:`),$={[SA.SEMATTRS_HTTP_URL]:U,[SA.SEMATTRS_HTTP_METHOD]:G,[SA.SEMATTRS_HTTP_TARGET]:A.path||"/",[SA.SEMATTRS_NET_PEER_NAME]:C,[SA.SEMATTRS_HTTP_HOST]:(J=F.host)!==null&&J!==void 0?J:`${C}:${X}`},E={[SA.ATTR_HTTP_REQUEST_METHOD]:W,[SA.ATTR_SERVER_ADDRESS]:C,[SA.ATTR_SERVER_PORT]:Number(X),[SA.ATTR_URL_FULL]:U};if(G!==W)E[SA.ATTR_HTTP_REQUEST_METHOD_ORIGINAL]=G;if(Z!==void 0)$[SA.SEMATTRS_HTTP_USER_AGENT]=Z;switch(B){case 1:return Object.assign(E,Q.hookAttributes);case 2:return Object.assign($,Q.hookAttributes)}return Object.assign($,E,Q.hookAttributes)};KiA.getOutgoingRequestAttributes=DpB;var NpB=(A)=>{let Q={};return Q[SA.SEMATTRS_HTTP_METHOD]=A[SA.SEMATTRS_HTTP_METHOD],Q[SA.SEMATTRS_NET_PEER_NAME]=A[SA.SEMATTRS_NET_PEER_NAME],Q};KiA.getOutgoingRequestMetricAttributes=NpB;var LpB=(A,Q)=>{if(A)if(Q[SA.SEMATTRS_HTTP_FLAVOR]=A,A.toUpperCase()!=="QUIC")Q[SA.SEMATTRS_NET_TRANSPORT]=SA.NETTRANSPORTVALUES_IP_TCP;else Q[SA.SEMATTRS_NET_TRANSPORT]=SA.NETTRANSPORTVALUES_IP_UDP};KiA.setAttributesFromHttpKind=LpB;var qpB=(A,Q)=>{let{statusCode:B,statusMessage:Y,httpVersion:J,socket:C}=A,X={},G={};if(B!=null)G[SA.ATTR_HTTP_RESPONSE_STATUS_CODE]=B;if(C){let{remoteAddress:W,remotePort:F}=C;X[SA.SEMATTRS_NET_PEER_IP]=W,X[SA.SEMATTRS_NET_PEER_PORT]=F,G[SA.ATTR_NETWORK_PEER_ADDRESS]=W,G[SA.ATTR_NETWORK_PEER_PORT]=F,G[SA.ATTR_NETWORK_PROTOCOL_VERSION]=A.httpVersion}if(KiA.setResponseContentLengthAttribute(A,X),B)X[SA.SEMATTRS_HTTP_STATUS_CODE]=B,X[BP.AttributeNames.HTTP_STATUS_TEXT]=(Y||"").toUpperCase();switch(KiA.setAttributesFromHttpKind(J,X),Q){case 1:return G;case 2:return X}return Object.assign(X,G)};KiA.getOutgoingRequestAttributesOnResponse=qpB;var MpB=(A)=>{let Q={};return Q[SA.SEMATTRS_NET_PEER_PORT]=A[SA.SEMATTRS_NET_PEER_PORT],Q[SA.SEMATTRS_HTTP_STATUS_CODE]=A[SA.SEMATTRS_HTTP_STATUS_CODE],Q[SA.SEMATTRS_HTTP_FLAVOR]=A[SA.SEMATTRS_HTTP_FLAVOR],Q};KiA.getOutgoingRequestMetricAttributesOnResponse=MpB;function KW(A,Q){let B=A.split(":");if(B.length===1){if(Q==="http")return{host:B[0],port:"80"};if(Q==="https")return{host:B[0],port:"443"};return{host:B[0]}}if(B.length===2)return{host:B[0],port:B[1]};if(B[0].startsWith("[")){if(B[B.length-1].endsWith("]")){if(Q==="http")return{host:A,port:"80"};if(Q==="https")return{host:A,port:"443"}}else if(B[B.length-2].endsWith("]"))return{host:B.slice(0,-1).join(":"),port:B[B.length-1]}}return{host:A}}function zpB(A,Q){let B=A.headers.forwarded;if(B){for(let C of EiA(B))if(C.host)return KW(C.host,C.proto)}let Y=A.headers["x-forwarded-host"];if(typeof Y==="string"){if(typeof A.headers["x-forwarded-proto"]==="string")return KW(Y,A.headers["x-forwarded-proto"]);if(Array.isArray(A.headers["x-forwarded-proto"]))return KW(Y,A.headers["x-forwarded-proto"][0]);return KW(Y)}else if(Array.isArray(Y)&&typeof Y[0]==="string"&&Y[0].length>0){if(typeof A.headers["x-forwarded-proto"]==="string")return KW(Y[0],A.headers["x-forwarded-proto"]);if(Array.isArray(A.headers["x-forwarded-proto"]))return KW(Y[0],A.headers["x-forwarded-proto"][0]);return KW(Y[0])}let J=A.headers.host;if(typeof J==="string"&&J.length>0)return KW(J,Q);return null}function $iA(A){let Q=A.headers.forwarded;if(Q){for(let J of EiA(Q))if(J.for)return J.for}let B=A.headers["x-forwarded-for"];if(typeof B==="string")return B;else if(Array.isArray(B))return B[0];let Y=A.socket.remoteAddress;if(Y)return Y;return null}KiA.getRemoteClientAddress=$iA;function RpB(A,Q,B){var Y,J;try{if(Q.headers.host)return new URL((Y=Q.url)!==null&&Y!==void 0?Y:"/",`${A}://${Q.headers.host}`);else{let C=new URL((J=Q.url)!==null&&J!==void 0?J:"/",`${A}://localhost`);return{pathname:C.pathname,search:C.search,toString:function(){return C.pathname+C.search}}}}catch(C){return B.verbose("Unable to get URL from request",C),{}}}var wpB=(A,Q,B)=>{let Y=A.headers,J=Y["user-agent"],C=Y["x-forwarded-for"],X=A.httpVersion,G=Y.host,W=(G===null||G===void 0?void 0:G.replace(/^(.*)(:[0-9]{1,5})/,"$1"))||"localhost",F=A.method,Z=UiA(F),U=zpB(A,Q.component),$=Q.serverName,E=$iA(A),K={[SA.ATTR_HTTP_REQUEST_METHOD]:Z,[SA.ATTR_URL_SCHEME]:Q.component,[SA.ATTR_SERVER_ADDRESS]:U===null||U===void 0?void 0:U.host,[SA.ATTR_NETWORK_PEER_ADDRESS]:A.socket.remoteAddress,[SA.ATTR_NETWORK_PEER_PORT]:A.socket.remotePort,[SA.ATTR_NETWORK_PROTOCOL_VERSION]:A.httpVersion,[SA.ATTR_USER_AGENT_ORIGINAL]:J},I=RpB(Q.component,A,B);if((I===null||I===void 0?void 0:I.pathname)!=null)K[SA.ATTR_URL_PATH]=I.pathname;if(E!=null)K[SA.ATTR_CLIENT_ADDRESS]=E;if((U===null||U===void 0?void 0:U.port)!=null)K[SA.ATTR_SERVER_PORT]=Number(U.port);if(F!==Z)K[SA.ATTR_HTTP_REQUEST_METHOD_ORIGINAL]=F;let V={[SA.SEMATTRS_HTTP_URL]:I.toString(),[SA.SEMATTRS_HTTP_HOST]:G,[SA.SEMATTRS_NET_HOST_NAME]:W,[SA.SEMATTRS_HTTP_METHOD]:F,[SA.SEMATTRS_HTTP_SCHEME]:Q.component};if(typeof C==="string")V[SA.SEMATTRS_HTTP_CLIENT_IP]=C.split(",")[0];if(typeof $==="string")V[SA.SEMATTRS_HTTP_SERVER_NAME]=$;if(I===null||I===void 0?void 0:I.pathname)V[SA.SEMATTRS_HTTP_TARGET]=(I===null||I===void 0?void 0:I.pathname)+(I===null||I===void 0?void 0:I.search)||"/";if(J!==void 0)V[SA.SEMATTRS_HTTP_USER_AGENT]=J;switch(KiA.setRequestContentLengthAttribute(A,V),KiA.setAttributesFromHttpKind(X,V),Q.semconvStability){case 1:return Object.assign(K,Q.hookAttributes);case 2:return Object.assign(V,Q.hookAttributes)}return Object.assign(V,K,Q.hookAttributes)};KiA.getIncomingRequestAttributes=wpB;var jpB=(A)=>{let Q={};return Q[SA.SEMATTRS_HTTP_SCHEME]=A[SA.SEMATTRS_HTTP_SCHEME],Q[SA.SEMATTRS_HTTP_METHOD]=A[SA.SEMATTRS_HTTP_METHOD],Q[SA.SEMATTRS_NET_HOST_NAME]=A[SA.SEMATTRS_NET_HOST_NAME],Q[SA.SEMATTRS_HTTP_FLAVOR]=A[SA.SEMATTRS_HTTP_FLAVOR],Q};KiA.getIncomingRequestMetricAttributes=jpB;var OpB=(A,Q,B)=>{let{socket:Y}=A,{statusCode:J,statusMessage:C}=Q,X={[SA.ATTR_HTTP_RESPONSE_STATUS_CODE]:J},G=(0,FiA.getRPCMetadata)(wL.context.active()),W={};if(Y){let{localAddress:F,localPort:Z,remoteAddress:U,remotePort:$}=Y;W[SA.SEMATTRS_NET_HOST_IP]=F,W[SA.SEMATTRS_NET_HOST_PORT]=Z,W[SA.SEMATTRS_NET_PEER_IP]=U,W[SA.SEMATTRS_NET_PEER_PORT]=$}if(W[SA.SEMATTRS_HTTP_STATUS_CODE]=J,W[BP.AttributeNames.HTTP_STATUS_TEXT]=(C||"").toUpperCase(),(G===null||G===void 0?void 0:G.type)===FiA.RPCType.HTTP&&G.route!==void 0)W[SA.SEMATTRS_HTTP_ROUTE]=G.route,X[SA.ATTR_HTTP_ROUTE]=G.route;switch(B){case 1:return X;case 2:return W}return Object.assign(W,X)};KiA.getIncomingRequestAttributesOnResponse=OpB;var PpB=(A)=>{let Q={};if(Q[SA.SEMATTRS_HTTP_STATUS_CODE]=A[SA.SEMATTRS_HTTP_STATUS_CODE],Q[SA.SEMATTRS_NET_HOST_PORT]=A[SA.SEMATTRS_NET_HOST_PORT],A[SA.SEMATTRS_HTTP_ROUTE]!==void 0)Q[SA.SEMATTRS_HTTP_ROUTE]=A[SA.SEMATTRS_HTTP_ROUTE];return Q};KiA.getIncomingRequestMetricAttributesOnResponse=PpB;var TpB=(A)=>{let Q={};if(A[SA.ATTR_HTTP_ROUTE]!==void 0)Q[SA.ATTR_HTTP_ROUTE]=A[SA.SEMATTRS_HTTP_ROUTE];if(A[SA.ATTR_HTTP_RESPONSE_STATUS_CODE])Q[SA.ATTR_HTTP_RESPONSE_STATUS_CODE]=A[SA.ATTR_HTTP_RESPONSE_STATUS_CODE];return Q};KiA.getIncomingStableRequestMetricAttributesOnResponse=TpB;function SpB(A,Q){let B=new Map;for(let Y=0,J=Q.length;Y{for(let C of B.keys()){let X=J(C);if(X===void 0)continue;let G=B.get(C),W=`http.${A}.header.${G}`;if(typeof X==="string")Y.setAttribute(W,[X]);else if(Array.isArray(X))Y.setAttribute(W,X);else Y.setAttribute(W,[X])}}}KiA.headerCapture=SpB;var kpB=new Set(["GET","HEAD","POST","PUT","DELETE","CONNECT","OPTIONS","TRACE","PATCH"]);function UiA(A){if(A==null)return"GET";let Q=A.toUpperCase();if(kpB.has(Q))return Q;return"_OTHER"}function EiA(A){try{return XpB(A)}catch(Q){return[]}}});var RiA=R((MiA)=>{Object.defineProperty(MiA,"__esModule",{value:!0});MiA.HttpInstrumentation=void 0;var _Q=yA(),KK=MB(),LiA=ovA(),spB=u("url"),rpB=AyA(),l5=NB(),ep=MB(),Ai=u("events"),n0=sp(),b0=NiA();class qiA extends l5.InstrumentationBase{constructor(A={}){super("@opentelemetry/instrumentation-http",rpB.VERSION,A);this._spanNotEnded=new WeakSet,this._semconvStability=2,this._headerCapture=this._createHeaderCapture();for(let Q of(0,ep.getEnv)().OTEL_SEMCONV_STABILITY_OPT_IN)if(Q.toLowerCase()==="http/dup"){this._semconvStability=3;break}else if(Q.toLowerCase()==="http")this._semconvStability=1}_updateMetricInstruments(){this._oldHttpServerDurationHistogram=this.meter.createHistogram("http.server.duration",{description:"Measures the duration of inbound HTTP requests.",unit:"ms",valueType:_Q.ValueType.DOUBLE}),this._oldHttpClientDurationHistogram=this.meter.createHistogram("http.client.duration",{description:"Measures the duration of outbound HTTP requests.",unit:"ms",valueType:_Q.ValueType.DOUBLE}),this._stableHttpServerDurationHistogram=this.meter.createHistogram(n0.METRIC_HTTP_SERVER_REQUEST_DURATION,{description:"Duration of HTTP server requests.",unit:"s",valueType:_Q.ValueType.DOUBLE,advice:{explicitBucketBoundaries:[0.005,0.01,0.025,0.05,0.075,0.1,0.25,0.5,0.75,1,2.5,5,7.5,10]}}),this._stableHttpClientDurationHistogram=this.meter.createHistogram(n0.METRIC_HTTP_CLIENT_REQUEST_DURATION,{description:"Duration of HTTP client requests.",unit:"s",valueType:_Q.ValueType.DOUBLE,advice:{explicitBucketBoundaries:[0.005,0.01,0.025,0.05,0.075,0.1,0.25,0.5,0.75,1,2.5,5,7.5,10]}})}_recordServerDuration(A,Q,B){if((this._semconvStability&2)===2)this._oldHttpServerDurationHistogram.record(A,Q);if((this._semconvStability&1)===1)this._stableHttpServerDurationHistogram.record(A/1000,B)}_recordClientDuration(A,Q,B){if((this._semconvStability&2)===2)this._oldHttpClientDurationHistogram.record(A,Q);if((this._semconvStability&1)===1)this._stableHttpClientDurationHistogram.record(A/1000,B)}setConfig(A={}){super.setConfig(A),this._headerCapture=this._createHeaderCapture()}init(){return[this._getHttpsInstrumentation(),this._getHttpInstrumentation()]}_getHttpInstrumentation(){return new l5.InstrumentationNodeModuleDefinition("http",["*"],(A)=>{let Q=A[Symbol.toStringTag]==="Module";if(!this.getConfig().disableOutgoingRequestInstrumentation){let B=this._wrap(A,"request",this._getPatchOutgoingRequestFunction("http")),Y=this._wrap(A,"get",this._getPatchOutgoingGetFunction(B));if(Q)A.default.request=B,A.default.get=Y}if(!this.getConfig().disableIncomingRequestInstrumentation)this._wrap(A.Server.prototype,"emit",this._getPatchIncomingRequestFunction("http"));return A},(A)=>{if(A===void 0)return;if(!this.getConfig().disableOutgoingRequestInstrumentation)this._unwrap(A,"request"),this._unwrap(A,"get");if(!this.getConfig().disableIncomingRequestInstrumentation)this._unwrap(A.Server.prototype,"emit")})}_getHttpsInstrumentation(){return new l5.InstrumentationNodeModuleDefinition("https",["*"],(A)=>{let Q=A[Symbol.toStringTag]==="Module";if(!this.getConfig().disableOutgoingRequestInstrumentation){let B=this._wrap(A,"request",this._getPatchHttpsOutgoingRequestFunction("https")),Y=this._wrap(A,"get",this._getPatchHttpsOutgoingGetFunction(B));if(Q)A.default.request=B,A.default.get=Y}if(!this.getConfig().disableIncomingRequestInstrumentation)this._wrap(A.Server.prototype,"emit",this._getPatchIncomingRequestFunction("https"));return A},(A)=>{if(A===void 0)return;if(!this.getConfig().disableOutgoingRequestInstrumentation)this._unwrap(A,"request"),this._unwrap(A,"get");if(!this.getConfig().disableIncomingRequestInstrumentation)this._unwrap(A.Server.prototype,"emit")})}_getPatchIncomingRequestFunction(A){return(Q)=>{return this._incomingRequestFunction(A,Q)}}_getPatchOutgoingRequestFunction(A){return(Q)=>{return this._outgoingRequestFunction(A,Q)}}_getPatchOutgoingGetFunction(A){return(Q)=>{return function(Y,...J){let C=A(Y,...J);return C.end(),C}}}_getPatchHttpsOutgoingRequestFunction(A){return(Q)=>{let B=this;return function(J,...C){var X;if(A==="https"&&typeof J==="object"&&((X=J===null||J===void 0?void 0:J.constructor)===null||X===void 0?void 0:X.name)!=="URL")J=Object.assign({},J),B._setDefaultOptions(J);return B._getPatchOutgoingRequestFunction(A)(Q)(J,...C)}}}_setDefaultOptions(A){A.protocol=A.protocol||"https:",A.port=A.port||443}_getPatchHttpsOutgoingGetFunction(A){return(Q)=>{let B=this;return function(J,...C){return B._getPatchOutgoingGetFunction(A)(Q)(J,...C)}}}_traceClientRequest(A,Q,B,Y,J){if(this.getConfig().requestHook)this._callRequestHook(Q,A);let C=!1;return A.prependListener("response",(X)=>{if(this._diag.debug("outgoingRequest on response()"),A.listenerCount("response")<=1)X.resume();let G=(0,b0.getOutgoingRequestAttributesOnResponse)(X,this._semconvStability);if(Q.setAttributes(G),Y=Object.assign(Y,(0,b0.getOutgoingRequestMetricAttributesOnResponse)(G)),this.getConfig().responseHook)this._callResponseHook(Q,X);this._headerCapture.client.captureRequestHeaders(Q,(F)=>A.getHeader(F)),this._headerCapture.client.captureResponseHeaders(Q,(F)=>X.headers[F]),_Q.context.bind(_Q.context.active(),X);let W=()=>{if(this._diag.debug("outgoingRequest on end()"),C)return;C=!0;let F;if(X.aborted&&!X.complete)F={code:_Q.SpanStatusCode.ERROR};else F={code:(0,b0.parseResponseStatus)(_Q.SpanKind.CLIENT,X.statusCode)};if(Q.setStatus(F),this.getConfig().applyCustomAttributesOnSpan)(0,l5.safeExecuteInTheMiddle)(()=>this.getConfig().applyCustomAttributesOnSpan(Q,A,X),()=>{},!0);this._closeHttpSpan(Q,_Q.SpanKind.CLIENT,B,Y,J)};if(X.on("end",W),LiA.lt(process.version,"16.0.0"))X.on("close",W);X.on(Ai.errorMonitor,(F)=>{if(this._diag.debug("outgoingRequest on error()",F),C)return;C=!0,(0,b0.setSpanWithError)(Q,F,this._semconvStability),Q.setStatus({code:_Q.SpanStatusCode.ERROR,message:F.message}),this._closeHttpSpan(Q,_Q.SpanKind.CLIENT,B,Y,J)})}),A.on("close",()=>{if(this._diag.debug("outgoingRequest on request close()"),A.aborted||C)return;C=!0,this._closeHttpSpan(Q,_Q.SpanKind.CLIENT,B,Y,J)}),A.on(Ai.errorMonitor,(X)=>{if(this._diag.debug("outgoingRequest on request error()",X),C)return;C=!0,(0,b0.setSpanWithError)(Q,X,this._semconvStability),this._closeHttpSpan(Q,_Q.SpanKind.CLIENT,B,Y,J)}),this._diag.debug("http.ClientRequest return request"),A}_incomingRequestFunction(A,Q){let B=this;return function(J,...C){if(J!=="request")return Q.apply(this,[J,...C]);let X=C[0],G=C[1],W=X.method||"GET";if(B._diag.debug(`${A} instrumentation incomingRequest`),(0,l5.safeExecuteInTheMiddle)(()=>{var D,L;return(L=(D=B.getConfig()).ignoreIncomingRequestHook)===null||L===void 0?void 0:L.call(D,X)},(D)=>{if(D!=null)B._diag.error("caught ignoreIncomingRequestHook error: ",D)},!0))return _Q.context.with((0,KK.suppressTracing)(_Q.context.active()),()=>{return _Q.context.bind(_Q.context.active(),X),_Q.context.bind(_Q.context.active(),G),Q.apply(this,[J,...C])});let F=X.headers,Z=(0,b0.getIncomingRequestAttributes)(X,{component:A,serverName:B.getConfig().serverName,hookAttributes:B._callStartSpanHook(X,B.getConfig().startIncomingSpanHook),semconvStability:B._semconvStability},B._diag),U={kind:_Q.SpanKind.SERVER,attributes:Z},$=(0,KK.hrTime)(),E=(0,b0.getIncomingRequestMetricAttributes)(Z),K={[n0.ATTR_HTTP_REQUEST_METHOD]:Z[n0.ATTR_HTTP_REQUEST_METHOD],[n0.ATTR_URL_SCHEME]:Z[n0.ATTR_URL_SCHEME]};if(Z[n0.ATTR_NETWORK_PROTOCOL_VERSION])K[n0.ATTR_NETWORK_PROTOCOL_VERSION]=Z[n0.ATTR_NETWORK_PROTOCOL_VERSION];let I=_Q.propagation.extract(_Q.ROOT_CONTEXT,F),V=B._startHttpSpan(W,U,I),H={type:ep.RPCType.HTTP,span:V};return _Q.context.with((0,ep.setRPCMetadata)(_Q.trace.setSpan(I,V),H),()=>{if(_Q.context.bind(_Q.context.active(),X),_Q.context.bind(_Q.context.active(),G),B.getConfig().requestHook)B._callRequestHook(V,X);if(B.getConfig().responseHook)B._callResponseHook(V,G);B._headerCapture.server.captureRequestHeaders(V,(L)=>X.headers[L]);let D=!1;return G.on("close",()=>{if(D)return;B._onServerResponseFinish(X,G,V,E,K,$)}),G.on(Ai.errorMonitor,(L)=>{D=!0,B._onServerResponseError(V,E,K,$,L)}),(0,l5.safeExecuteInTheMiddle)(()=>Q.apply(this,[J,...C]),(L)=>{if(L)throw(0,b0.setSpanWithError)(V,L,B._semconvStability),B._closeHttpSpan(V,_Q.SpanKind.SERVER,$,E,K),L})})}}_outgoingRequestFunction(A,Q){let B=this;return function(J,...C){if(!(0,b0.isValidOptionsType)(J))return Q.apply(this,[J,...C]);let X=typeof C[0]==="object"&&(typeof J==="string"||J instanceof spB.URL)?C.shift():void 0,{method:G,invalidUrl:W,optionsParsed:F}=(0,b0.getRequestInfo)(B._diag,J,X);if(A==="http"&&LiA.lt(process.version,"9.0.0")&&F.protocol==="https:")return Q.apply(this,[F,...C]);if((0,l5.safeExecuteInTheMiddle)(()=>{var z,M;return(M=(z=B.getConfig()).ignoreOutgoingRequestHook)===null||M===void 0?void 0:M.call(z,F)},(z)=>{if(z!=null)B._diag.error("caught ignoreOutgoingRequestHook error: ",z)},!0))return Q.apply(this,[F,...C]);let{hostname:Z,port:U}=(0,b0.extractHostnameAndPort)(F),$=(0,b0.getOutgoingRequestAttributes)(F,{component:A,port:U,hostname:Z,hookAttributes:B._callStartSpanHook(F,B.getConfig().startOutgoingSpanHook)},B._semconvStability),E=(0,KK.hrTime)(),K=(0,b0.getOutgoingRequestMetricAttributes)($),I={[n0.ATTR_HTTP_REQUEST_METHOD]:$[n0.ATTR_HTTP_REQUEST_METHOD],[n0.ATTR_SERVER_ADDRESS]:$[n0.ATTR_SERVER_ADDRESS],[n0.ATTR_SERVER_PORT]:$[n0.ATTR_SERVER_PORT]};if($[n0.ATTR_HTTP_RESPONSE_STATUS_CODE])I[n0.ATTR_HTTP_RESPONSE_STATUS_CODE]=$[n0.ATTR_HTTP_RESPONSE_STATUS_CODE];if($[n0.ATTR_NETWORK_PROTOCOL_VERSION])I[n0.ATTR_NETWORK_PROTOCOL_VERSION]=$[n0.ATTR_NETWORK_PROTOCOL_VERSION];let V={kind:_Q.SpanKind.CLIENT,attributes:$},H=B._startHttpSpan(G,V),D=_Q.context.active(),L=_Q.trace.setSpan(D,H);if(!F.headers)F.headers={};else F.headers=Object.assign({},F.headers);return _Q.propagation.inject(L,F.headers),_Q.context.with(L,()=>{let z=C[C.length-1];if(typeof z==="function")C[C.length-1]=_Q.context.bind(D,z);let M=(0,l5.safeExecuteInTheMiddle)(()=>{if(W)return Q.apply(this,[J,...C]);else return Q.apply(this,[F,...C])},(N)=>{if(N)throw(0,b0.setSpanWithError)(H,N,B._semconvStability),B._closeHttpSpan(H,_Q.SpanKind.CLIENT,E,K,I),N});return B._diag.debug(`${A} instrumentation outgoingRequest`),_Q.context.bind(D,M),B._traceClientRequest(M,H,E,K,I)})}}_onServerResponseFinish(A,Q,B,Y,J,C){let X=(0,b0.getIncomingRequestAttributesOnResponse)(A,Q,this._semconvStability);Y=Object.assign(Y,(0,b0.getIncomingRequestMetricAttributesOnResponse)(X)),J=Object.assign(J,(0,b0.getIncomingStableRequestMetricAttributesOnResponse)(X)),this._headerCapture.server.captureResponseHeaders(B,(W)=>Q.getHeader(W)),B.setAttributes(X).setStatus({code:(0,b0.parseResponseStatus)(_Q.SpanKind.SERVER,Q.statusCode)});let G=X[n0.SEMATTRS_HTTP_ROUTE];if(G)B.updateName(`${A.method||"GET"} ${G}`);if(this.getConfig().applyCustomAttributesOnSpan)(0,l5.safeExecuteInTheMiddle)(()=>this.getConfig().applyCustomAttributesOnSpan(B,A,Q),()=>{},!0);this._closeHttpSpan(B,_Q.SpanKind.SERVER,C,Y,J)}_onServerResponseError(A,Q,B,Y,J){(0,b0.setSpanWithError)(A,J,this._semconvStability),this._closeHttpSpan(A,_Q.SpanKind.SERVER,Y,Q,B)}_startHttpSpan(A,Q,B=_Q.context.active()){let Y=Q.kind===_Q.SpanKind.CLIENT?this.getConfig().requireParentforOutgoingSpans:this.getConfig().requireParentforIncomingSpans,J,C=_Q.trace.getSpan(B);if(Y===!0&&C===void 0)J=_Q.trace.wrapSpanContext(_Q.INVALID_SPAN_CONTEXT);else if(Y===!0&&(C===null||C===void 0?void 0:C.spanContext().isRemote))J=C;else J=this.tracer.startSpan(A,Q,B);return this._spanNotEnded.add(J),J}_closeHttpSpan(A,Q,B,Y,J){if(!this._spanNotEnded.has(A))return;A.end(),this._spanNotEnded.delete(A);let C=(0,KK.hrTimeToMilliseconds)((0,KK.hrTimeDuration)(B,(0,KK.hrTime)()));if(Q===_Q.SpanKind.SERVER)this._recordServerDuration(C,Y,J);else if(Q===_Q.SpanKind.CLIENT)this._recordClientDuration(C,Y,J)}_callResponseHook(A,Q){(0,l5.safeExecuteInTheMiddle)(()=>this.getConfig().responseHook(A,Q),()=>{},!0)}_callRequestHook(A,Q){(0,l5.safeExecuteInTheMiddle)(()=>this.getConfig().requestHook(A,Q),()=>{},!0)}_callStartSpanHook(A,Q){if(typeof Q==="function")return(0,l5.safeExecuteInTheMiddle)(()=>Q(A),()=>{},!0)}_createHeaderCapture(){var A,Q,B,Y,J,C,X,G,W,F,Z,U;let $=this.getConfig();return{client:{captureRequestHeaders:(0,b0.headerCapture)("request",(B=(Q=(A=$.headersToSpanAttributes)===null||A===void 0?void 0:A.client)===null||Q===void 0?void 0:Q.requestHeaders)!==null&&B!==void 0?B:[]),captureResponseHeaders:(0,b0.headerCapture)("response",(C=(J=(Y=$.headersToSpanAttributes)===null||Y===void 0?void 0:Y.client)===null||J===void 0?void 0:J.responseHeaders)!==null&&C!==void 0?C:[])},server:{captureRequestHeaders:(0,b0.headerCapture)("request",(W=(G=(X=$.headersToSpanAttributes)===null||X===void 0?void 0:X.server)===null||G===void 0?void 0:G.requestHeaders)!==null&&W!==void 0?W:[]),captureResponseHeaders:(0,b0.headerCapture)("response",(U=(Z=(F=$.headersToSpanAttributes)===null||F===void 0?void 0:F.server)===null||Z===void 0?void 0:Z.responseHeaders)!==null&&U!==void 0?U:[])}}}}MiA.HttpInstrumentation=qiA});var wiA=R((Qi)=>{Object.defineProperty(Qi,"__esModule",{value:!0});Qi.HttpInstrumentation=void 0;var apB=RiA();Object.defineProperty(Qi,"HttpInstrumentation",{enumerable:!0,get:function(){return apB.HttpInstrumentation}})});var Yi=R((jiA)=>{Object.defineProperty(jiA,"__esModule",{value:!0});jiA.createConstMap=void 0;function QiB(A){let Q={},B=A.length;for(let Y=0;Y{Object.defineProperty(HoA,"__esModule",{value:!0});HoA.SEMATTRS_NET_HOST_CARRIER_ICC=HoA.SEMATTRS_NET_HOST_CARRIER_MNC=HoA.SEMATTRS_NET_HOST_CARRIER_MCC=HoA.SEMATTRS_NET_HOST_CARRIER_NAME=HoA.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=HoA.SEMATTRS_NET_HOST_CONNECTION_TYPE=HoA.SEMATTRS_NET_HOST_NAME=HoA.SEMATTRS_NET_HOST_PORT=HoA.SEMATTRS_NET_HOST_IP=HoA.SEMATTRS_NET_PEER_NAME=HoA.SEMATTRS_NET_PEER_PORT=HoA.SEMATTRS_NET_PEER_IP=HoA.SEMATTRS_NET_TRANSPORT=HoA.SEMATTRS_FAAS_INVOKED_REGION=HoA.SEMATTRS_FAAS_INVOKED_PROVIDER=HoA.SEMATTRS_FAAS_INVOKED_NAME=HoA.SEMATTRS_FAAS_COLDSTART=HoA.SEMATTRS_FAAS_CRON=HoA.SEMATTRS_FAAS_TIME=HoA.SEMATTRS_FAAS_DOCUMENT_NAME=HoA.SEMATTRS_FAAS_DOCUMENT_TIME=HoA.SEMATTRS_FAAS_DOCUMENT_OPERATION=HoA.SEMATTRS_FAAS_DOCUMENT_COLLECTION=HoA.SEMATTRS_FAAS_EXECUTION=HoA.SEMATTRS_FAAS_TRIGGER=HoA.SEMATTRS_EXCEPTION_ESCAPED=HoA.SEMATTRS_EXCEPTION_STACKTRACE=HoA.SEMATTRS_EXCEPTION_MESSAGE=HoA.SEMATTRS_EXCEPTION_TYPE=HoA.SEMATTRS_DB_SQL_TABLE=HoA.SEMATTRS_DB_MONGODB_COLLECTION=HoA.SEMATTRS_DB_REDIS_DATABASE_INDEX=HoA.SEMATTRS_DB_HBASE_NAMESPACE=HoA.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=HoA.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=HoA.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=HoA.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=HoA.SEMATTRS_DB_CASSANDRA_TABLE=HoA.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=HoA.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=HoA.SEMATTRS_DB_CASSANDRA_KEYSPACE=HoA.SEMATTRS_DB_MSSQL_INSTANCE_NAME=HoA.SEMATTRS_DB_OPERATION=HoA.SEMATTRS_DB_STATEMENT=HoA.SEMATTRS_DB_NAME=HoA.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=HoA.SEMATTRS_DB_USER=HoA.SEMATTRS_DB_CONNECTION_STRING=HoA.SEMATTRS_DB_SYSTEM=HoA.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=void 0;HoA.SEMATTRS_MESSAGING_DESTINATION_KIND=HoA.SEMATTRS_MESSAGING_DESTINATION=HoA.SEMATTRS_MESSAGING_SYSTEM=HoA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=HoA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=HoA.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=HoA.SEMATTRS_AWS_DYNAMODB_COUNT=HoA.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=HoA.SEMATTRS_AWS_DYNAMODB_SEGMENT=HoA.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=HoA.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=HoA.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=HoA.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=HoA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=HoA.SEMATTRS_AWS_DYNAMODB_SELECT=HoA.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=HoA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=HoA.SEMATTRS_AWS_DYNAMODB_LIMIT=HoA.SEMATTRS_AWS_DYNAMODB_PROJECTION=HoA.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=HoA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=HoA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=HoA.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=HoA.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=HoA.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=HoA.SEMATTRS_HTTP_CLIENT_IP=HoA.SEMATTRS_HTTP_ROUTE=HoA.SEMATTRS_HTTP_SERVER_NAME=HoA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=HoA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=HoA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=HoA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=HoA.SEMATTRS_HTTP_USER_AGENT=HoA.SEMATTRS_HTTP_FLAVOR=HoA.SEMATTRS_HTTP_STATUS_CODE=HoA.SEMATTRS_HTTP_SCHEME=HoA.SEMATTRS_HTTP_HOST=HoA.SEMATTRS_HTTP_TARGET=HoA.SEMATTRS_HTTP_URL=HoA.SEMATTRS_HTTP_METHOD=HoA.SEMATTRS_CODE_LINENO=HoA.SEMATTRS_CODE_FILEPATH=HoA.SEMATTRS_CODE_NAMESPACE=HoA.SEMATTRS_CODE_FUNCTION=HoA.SEMATTRS_THREAD_NAME=HoA.SEMATTRS_THREAD_ID=HoA.SEMATTRS_ENDUSER_SCOPE=HoA.SEMATTRS_ENDUSER_ROLE=HoA.SEMATTRS_ENDUSER_ID=HoA.SEMATTRS_PEER_SERVICE=void 0;HoA.DBSYSTEMVALUES_FILEMAKER=HoA.DBSYSTEMVALUES_DERBY=HoA.DBSYSTEMVALUES_FIREBIRD=HoA.DBSYSTEMVALUES_ADABAS=HoA.DBSYSTEMVALUES_CACHE=HoA.DBSYSTEMVALUES_EDB=HoA.DBSYSTEMVALUES_FIRSTSQL=HoA.DBSYSTEMVALUES_INGRES=HoA.DBSYSTEMVALUES_HANADB=HoA.DBSYSTEMVALUES_MAXDB=HoA.DBSYSTEMVALUES_PROGRESS=HoA.DBSYSTEMVALUES_HSQLDB=HoA.DBSYSTEMVALUES_CLOUDSCAPE=HoA.DBSYSTEMVALUES_HIVE=HoA.DBSYSTEMVALUES_REDSHIFT=HoA.DBSYSTEMVALUES_POSTGRESQL=HoA.DBSYSTEMVALUES_DB2=HoA.DBSYSTEMVALUES_ORACLE=HoA.DBSYSTEMVALUES_MYSQL=HoA.DBSYSTEMVALUES_MSSQL=HoA.DBSYSTEMVALUES_OTHER_SQL=HoA.SemanticAttributes=HoA.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=HoA.SEMATTRS_MESSAGE_COMPRESSED_SIZE=HoA.SEMATTRS_MESSAGE_ID=HoA.SEMATTRS_MESSAGE_TYPE=HoA.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=HoA.SEMATTRS_RPC_JSONRPC_ERROR_CODE=HoA.SEMATTRS_RPC_JSONRPC_REQUEST_ID=HoA.SEMATTRS_RPC_JSONRPC_VERSION=HoA.SEMATTRS_RPC_GRPC_STATUS_CODE=HoA.SEMATTRS_RPC_METHOD=HoA.SEMATTRS_RPC_SERVICE=HoA.SEMATTRS_RPC_SYSTEM=HoA.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=HoA.SEMATTRS_MESSAGING_KAFKA_PARTITION=HoA.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=HoA.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=HoA.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=HoA.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=HoA.SEMATTRS_MESSAGING_CONSUMER_ID=HoA.SEMATTRS_MESSAGING_OPERATION=HoA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=HoA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=HoA.SEMATTRS_MESSAGING_CONVERSATION_ID=HoA.SEMATTRS_MESSAGING_MESSAGE_ID=HoA.SEMATTRS_MESSAGING_URL=HoA.SEMATTRS_MESSAGING_PROTOCOL_VERSION=HoA.SEMATTRS_MESSAGING_PROTOCOL=HoA.SEMATTRS_MESSAGING_TEMP_DESTINATION=void 0;HoA.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=HoA.FaasDocumentOperationValues=HoA.FAASDOCUMENTOPERATIONVALUES_DELETE=HoA.FAASDOCUMENTOPERATIONVALUES_EDIT=HoA.FAASDOCUMENTOPERATIONVALUES_INSERT=HoA.FaasTriggerValues=HoA.FAASTRIGGERVALUES_OTHER=HoA.FAASTRIGGERVALUES_TIMER=HoA.FAASTRIGGERVALUES_PUBSUB=HoA.FAASTRIGGERVALUES_HTTP=HoA.FAASTRIGGERVALUES_DATASOURCE=HoA.DbCassandraConsistencyLevelValues=HoA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=HoA.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=HoA.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=HoA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=HoA.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=HoA.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=HoA.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=HoA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=HoA.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=HoA.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=HoA.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=HoA.DbSystemValues=HoA.DBSYSTEMVALUES_COCKROACHDB=HoA.DBSYSTEMVALUES_MEMCACHED=HoA.DBSYSTEMVALUES_ELASTICSEARCH=HoA.DBSYSTEMVALUES_GEODE=HoA.DBSYSTEMVALUES_NEO4J=HoA.DBSYSTEMVALUES_DYNAMODB=HoA.DBSYSTEMVALUES_COSMOSDB=HoA.DBSYSTEMVALUES_COUCHDB=HoA.DBSYSTEMVALUES_COUCHBASE=HoA.DBSYSTEMVALUES_REDIS=HoA.DBSYSTEMVALUES_MONGODB=HoA.DBSYSTEMVALUES_HBASE=HoA.DBSYSTEMVALUES_CASSANDRA=HoA.DBSYSTEMVALUES_COLDFUSION=HoA.DBSYSTEMVALUES_H2=HoA.DBSYSTEMVALUES_VERTICA=HoA.DBSYSTEMVALUES_TERADATA=HoA.DBSYSTEMVALUES_SYBASE=HoA.DBSYSTEMVALUES_SQLITE=HoA.DBSYSTEMVALUES_POINTBASE=HoA.DBSYSTEMVALUES_PERVASIVE=HoA.DBSYSTEMVALUES_NETEZZA=HoA.DBSYSTEMVALUES_MARIADB=HoA.DBSYSTEMVALUES_INTERBASE=HoA.DBSYSTEMVALUES_INSTANTDB=HoA.DBSYSTEMVALUES_INFORMIX=void 0;HoA.MESSAGINGOPERATIONVALUES_RECEIVE=HoA.MessagingDestinationKindValues=HoA.MESSAGINGDESTINATIONKINDVALUES_TOPIC=HoA.MESSAGINGDESTINATIONKINDVALUES_QUEUE=HoA.HttpFlavorValues=HoA.HTTPFLAVORVALUES_QUIC=HoA.HTTPFLAVORVALUES_SPDY=HoA.HTTPFLAVORVALUES_HTTP_2_0=HoA.HTTPFLAVORVALUES_HTTP_1_1=HoA.HTTPFLAVORVALUES_HTTP_1_0=HoA.NetHostConnectionSubtypeValues=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_NR=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=HoA.NetHostConnectionTypeValues=HoA.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=HoA.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=HoA.NETHOSTCONNECTIONTYPEVALUES_CELL=HoA.NETHOSTCONNECTIONTYPEVALUES_WIRED=HoA.NETHOSTCONNECTIONTYPEVALUES_WIFI=HoA.NetTransportValues=HoA.NETTRANSPORTVALUES_OTHER=HoA.NETTRANSPORTVALUES_INPROC=HoA.NETTRANSPORTVALUES_PIPE=HoA.NETTRANSPORTVALUES_UNIX=HoA.NETTRANSPORTVALUES_IP=HoA.NETTRANSPORTVALUES_IP_UDP=HoA.NETTRANSPORTVALUES_IP_TCP=HoA.FaasInvokedProviderValues=HoA.FAASINVOKEDPROVIDERVALUES_GCP=HoA.FAASINVOKEDPROVIDERVALUES_AZURE=HoA.FAASINVOKEDPROVIDERVALUES_AWS=void 0;HoA.MessageTypeValues=HoA.MESSAGETYPEVALUES_RECEIVED=HoA.MESSAGETYPEVALUES_SENT=HoA.RpcGrpcStatusCodeValues=HoA.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=HoA.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=HoA.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=HoA.RPCGRPCSTATUSCODEVALUES_INTERNAL=HoA.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=HoA.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=HoA.RPCGRPCSTATUSCODEVALUES_ABORTED=HoA.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=HoA.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=HoA.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=HoA.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=HoA.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=HoA.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=HoA.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=HoA.RPCGRPCSTATUSCODEVALUES_UNKNOWN=HoA.RPCGRPCSTATUSCODEVALUES_CANCELLED=HoA.RPCGRPCSTATUSCODEVALUES_OK=HoA.MessagingOperationValues=HoA.MESSAGINGOPERATIONVALUES_PROCESS=void 0;var p5=Yi(),PiA="aws.lambda.invoked_arn",TiA="db.system",SiA="db.connection_string",kiA="db.user",_iA="db.jdbc.driver_classname",viA="db.name",yiA="db.statement",giA="db.operation",hiA="db.mssql.instance_name",xiA="db.cassandra.keyspace",fiA="db.cassandra.page_size",biA="db.cassandra.consistency_level",miA="db.cassandra.table",uiA="db.cassandra.idempotence",diA="db.cassandra.speculative_execution_count",ciA="db.cassandra.coordinator.id",liA="db.cassandra.coordinator.dc",piA="db.hbase.namespace",iiA="db.redis.database_index",niA="db.mongodb.collection",siA="db.sql.table",riA="exception.type",aiA="exception.message",oiA="exception.stacktrace",tiA="exception.escaped",eiA="faas.trigger",AnA="faas.execution",QnA="faas.document.collection",BnA="faas.document.operation",YnA="faas.document.time",JnA="faas.document.name",CnA="faas.time",XnA="faas.cron",GnA="faas.coldstart",WnA="faas.invoked_name",FnA="faas.invoked_provider",ZnA="faas.invoked_region",$nA="net.transport",UnA="net.peer.ip",EnA="net.peer.port",KnA="net.peer.name",VnA="net.host.ip",InA="net.host.port",HnA="net.host.name",DnA="net.host.connection.type",NnA="net.host.connection.subtype",LnA="net.host.carrier.name",qnA="net.host.carrier.mcc",MnA="net.host.carrier.mnc",znA="net.host.carrier.icc",RnA="peer.service",wnA="enduser.id",jnA="enduser.role",OnA="enduser.scope",PnA="thread.id",TnA="thread.name",SnA="code.function",knA="code.namespace",_nA="code.filepath",vnA="code.lineno",ynA="http.method",gnA="http.url",hnA="http.target",xnA="http.host",fnA="http.scheme",bnA="http.status_code",mnA="http.flavor",unA="http.user_agent",dnA="http.request_content_length",cnA="http.request_content_length_uncompressed",lnA="http.response_content_length",pnA="http.response_content_length_uncompressed",inA="http.server_name",nnA="http.route",snA="http.client_ip",rnA="aws.dynamodb.table_names",anA="aws.dynamodb.consumed_capacity",onA="aws.dynamodb.item_collection_metrics",tnA="aws.dynamodb.provisioned_read_capacity",enA="aws.dynamodb.provisioned_write_capacity",AsA="aws.dynamodb.consistent_read",QsA="aws.dynamodb.projection",BsA="aws.dynamodb.limit",YsA="aws.dynamodb.attributes_to_get",JsA="aws.dynamodb.index_name",CsA="aws.dynamodb.select",XsA="aws.dynamodb.global_secondary_indexes",GsA="aws.dynamodb.local_secondary_indexes",WsA="aws.dynamodb.exclusive_start_table",FsA="aws.dynamodb.table_count",ZsA="aws.dynamodb.scan_forward",$sA="aws.dynamodb.segment",UsA="aws.dynamodb.total_segments",EsA="aws.dynamodb.count",KsA="aws.dynamodb.scanned_count",VsA="aws.dynamodb.attribute_definitions",IsA="aws.dynamodb.global_secondary_index_updates",HsA="messaging.system",DsA="messaging.destination",NsA="messaging.destination_kind",LsA="messaging.temp_destination",qsA="messaging.protocol",MsA="messaging.protocol_version",zsA="messaging.url",RsA="messaging.message_id",wsA="messaging.conversation_id",jsA="messaging.message_payload_size_bytes",OsA="messaging.message_payload_compressed_size_bytes",PsA="messaging.operation",TsA="messaging.consumer_id",SsA="messaging.rabbitmq.routing_key",ksA="messaging.kafka.message_key",_sA="messaging.kafka.consumer_group",vsA="messaging.kafka.client_id",ysA="messaging.kafka.partition",gsA="messaging.kafka.tombstone",hsA="rpc.system",xsA="rpc.service",fsA="rpc.method",bsA="rpc.grpc.status_code",msA="rpc.jsonrpc.version",usA="rpc.jsonrpc.request_id",dsA="rpc.jsonrpc.error_code",csA="rpc.jsonrpc.error_message",lsA="message.type",psA="message.id",isA="message.compressed_size",nsA="message.uncompressed_size";HoA.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=PiA;HoA.SEMATTRS_DB_SYSTEM=TiA;HoA.SEMATTRS_DB_CONNECTION_STRING=SiA;HoA.SEMATTRS_DB_USER=kiA;HoA.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=_iA;HoA.SEMATTRS_DB_NAME=viA;HoA.SEMATTRS_DB_STATEMENT=yiA;HoA.SEMATTRS_DB_OPERATION=giA;HoA.SEMATTRS_DB_MSSQL_INSTANCE_NAME=hiA;HoA.SEMATTRS_DB_CASSANDRA_KEYSPACE=xiA;HoA.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=fiA;HoA.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=biA;HoA.SEMATTRS_DB_CASSANDRA_TABLE=miA;HoA.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=uiA;HoA.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=diA;HoA.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=ciA;HoA.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=liA;HoA.SEMATTRS_DB_HBASE_NAMESPACE=piA;HoA.SEMATTRS_DB_REDIS_DATABASE_INDEX=iiA;HoA.SEMATTRS_DB_MONGODB_COLLECTION=niA;HoA.SEMATTRS_DB_SQL_TABLE=siA;HoA.SEMATTRS_EXCEPTION_TYPE=riA;HoA.SEMATTRS_EXCEPTION_MESSAGE=aiA;HoA.SEMATTRS_EXCEPTION_STACKTRACE=oiA;HoA.SEMATTRS_EXCEPTION_ESCAPED=tiA;HoA.SEMATTRS_FAAS_TRIGGER=eiA;HoA.SEMATTRS_FAAS_EXECUTION=AnA;HoA.SEMATTRS_FAAS_DOCUMENT_COLLECTION=QnA;HoA.SEMATTRS_FAAS_DOCUMENT_OPERATION=BnA;HoA.SEMATTRS_FAAS_DOCUMENT_TIME=YnA;HoA.SEMATTRS_FAAS_DOCUMENT_NAME=JnA;HoA.SEMATTRS_FAAS_TIME=CnA;HoA.SEMATTRS_FAAS_CRON=XnA;HoA.SEMATTRS_FAAS_COLDSTART=GnA;HoA.SEMATTRS_FAAS_INVOKED_NAME=WnA;HoA.SEMATTRS_FAAS_INVOKED_PROVIDER=FnA;HoA.SEMATTRS_FAAS_INVOKED_REGION=ZnA;HoA.SEMATTRS_NET_TRANSPORT=$nA;HoA.SEMATTRS_NET_PEER_IP=UnA;HoA.SEMATTRS_NET_PEER_PORT=EnA;HoA.SEMATTRS_NET_PEER_NAME=KnA;HoA.SEMATTRS_NET_HOST_IP=VnA;HoA.SEMATTRS_NET_HOST_PORT=InA;HoA.SEMATTRS_NET_HOST_NAME=HnA;HoA.SEMATTRS_NET_HOST_CONNECTION_TYPE=DnA;HoA.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=NnA;HoA.SEMATTRS_NET_HOST_CARRIER_NAME=LnA;HoA.SEMATTRS_NET_HOST_CARRIER_MCC=qnA;HoA.SEMATTRS_NET_HOST_CARRIER_MNC=MnA;HoA.SEMATTRS_NET_HOST_CARRIER_ICC=znA;HoA.SEMATTRS_PEER_SERVICE=RnA;HoA.SEMATTRS_ENDUSER_ID=wnA;HoA.SEMATTRS_ENDUSER_ROLE=jnA;HoA.SEMATTRS_ENDUSER_SCOPE=OnA;HoA.SEMATTRS_THREAD_ID=PnA;HoA.SEMATTRS_THREAD_NAME=TnA;HoA.SEMATTRS_CODE_FUNCTION=SnA;HoA.SEMATTRS_CODE_NAMESPACE=knA;HoA.SEMATTRS_CODE_FILEPATH=_nA;HoA.SEMATTRS_CODE_LINENO=vnA;HoA.SEMATTRS_HTTP_METHOD=ynA;HoA.SEMATTRS_HTTP_URL=gnA;HoA.SEMATTRS_HTTP_TARGET=hnA;HoA.SEMATTRS_HTTP_HOST=xnA;HoA.SEMATTRS_HTTP_SCHEME=fnA;HoA.SEMATTRS_HTTP_STATUS_CODE=bnA;HoA.SEMATTRS_HTTP_FLAVOR=mnA;HoA.SEMATTRS_HTTP_USER_AGENT=unA;HoA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=dnA;HoA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=cnA;HoA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=lnA;HoA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=pnA;HoA.SEMATTRS_HTTP_SERVER_NAME=inA;HoA.SEMATTRS_HTTP_ROUTE=nnA;HoA.SEMATTRS_HTTP_CLIENT_IP=snA;HoA.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=rnA;HoA.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=anA;HoA.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=onA;HoA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=tnA;HoA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=enA;HoA.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=AsA;HoA.SEMATTRS_AWS_DYNAMODB_PROJECTION=QsA;HoA.SEMATTRS_AWS_DYNAMODB_LIMIT=BsA;HoA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=YsA;HoA.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=JsA;HoA.SEMATTRS_AWS_DYNAMODB_SELECT=CsA;HoA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=XsA;HoA.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=GsA;HoA.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=WsA;HoA.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=FsA;HoA.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=ZsA;HoA.SEMATTRS_AWS_DYNAMODB_SEGMENT=$sA;HoA.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=UsA;HoA.SEMATTRS_AWS_DYNAMODB_COUNT=EsA;HoA.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=KsA;HoA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=VsA;HoA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=IsA;HoA.SEMATTRS_MESSAGING_SYSTEM=HsA;HoA.SEMATTRS_MESSAGING_DESTINATION=DsA;HoA.SEMATTRS_MESSAGING_DESTINATION_KIND=NsA;HoA.SEMATTRS_MESSAGING_TEMP_DESTINATION=LsA;HoA.SEMATTRS_MESSAGING_PROTOCOL=qsA;HoA.SEMATTRS_MESSAGING_PROTOCOL_VERSION=MsA;HoA.SEMATTRS_MESSAGING_URL=zsA;HoA.SEMATTRS_MESSAGING_MESSAGE_ID=RsA;HoA.SEMATTRS_MESSAGING_CONVERSATION_ID=wsA;HoA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=jsA;HoA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=OsA;HoA.SEMATTRS_MESSAGING_OPERATION=PsA;HoA.SEMATTRS_MESSAGING_CONSUMER_ID=TsA;HoA.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=SsA;HoA.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=ksA;HoA.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=_sA;HoA.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=vsA;HoA.SEMATTRS_MESSAGING_KAFKA_PARTITION=ysA;HoA.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=gsA;HoA.SEMATTRS_RPC_SYSTEM=hsA;HoA.SEMATTRS_RPC_SERVICE=xsA;HoA.SEMATTRS_RPC_METHOD=fsA;HoA.SEMATTRS_RPC_GRPC_STATUS_CODE=bsA;HoA.SEMATTRS_RPC_JSONRPC_VERSION=msA;HoA.SEMATTRS_RPC_JSONRPC_REQUEST_ID=usA;HoA.SEMATTRS_RPC_JSONRPC_ERROR_CODE=dsA;HoA.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=csA;HoA.SEMATTRS_MESSAGE_TYPE=lsA;HoA.SEMATTRS_MESSAGE_ID=psA;HoA.SEMATTRS_MESSAGE_COMPRESSED_SIZE=isA;HoA.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=nsA;HoA.SemanticAttributes=(0,p5.createConstMap)([PiA,TiA,SiA,kiA,_iA,viA,yiA,giA,hiA,xiA,fiA,biA,miA,uiA,diA,ciA,liA,piA,iiA,niA,siA,riA,aiA,oiA,tiA,eiA,AnA,QnA,BnA,YnA,JnA,CnA,XnA,GnA,WnA,FnA,ZnA,$nA,UnA,EnA,KnA,VnA,InA,HnA,DnA,NnA,LnA,qnA,MnA,znA,RnA,wnA,jnA,OnA,PnA,TnA,SnA,knA,_nA,vnA,ynA,gnA,hnA,xnA,fnA,bnA,mnA,unA,dnA,cnA,lnA,pnA,inA,nnA,snA,rnA,anA,onA,tnA,enA,AsA,QsA,BsA,YsA,JsA,CsA,XsA,GsA,WsA,FsA,ZsA,$sA,UsA,EsA,KsA,VsA,IsA,HsA,DsA,NsA,LsA,qsA,MsA,zsA,RsA,wsA,jsA,OsA,PsA,TsA,SsA,ksA,_sA,vsA,ysA,gsA,hsA,xsA,fsA,bsA,msA,usA,dsA,csA,lsA,psA,isA,nsA]);var ssA="other_sql",rsA="mssql",asA="mysql",osA="oracle",tsA="db2",esA="postgresql",ArA="redshift",QrA="hive",BrA="cloudscape",YrA="hsqldb",JrA="progress",CrA="maxdb",XrA="hanadb",GrA="ingres",WrA="firstsql",FrA="edb",ZrA="cache",$rA="adabas",UrA="firebird",ErA="derby",KrA="filemaker",VrA="informix",IrA="instantdb",HrA="interbase",DrA="mariadb",NrA="netezza",LrA="pervasive",qrA="pointbase",MrA="sqlite",zrA="sybase",RrA="teradata",wrA="vertica",jrA="h2",OrA="coldfusion",PrA="cassandra",TrA="hbase",SrA="mongodb",krA="redis",_rA="couchbase",vrA="couchdb",yrA="cosmosdb",grA="dynamodb",hrA="neo4j",xrA="geode",frA="elasticsearch",brA="memcached",mrA="cockroachdb";HoA.DBSYSTEMVALUES_OTHER_SQL=ssA;HoA.DBSYSTEMVALUES_MSSQL=rsA;HoA.DBSYSTEMVALUES_MYSQL=asA;HoA.DBSYSTEMVALUES_ORACLE=osA;HoA.DBSYSTEMVALUES_DB2=tsA;HoA.DBSYSTEMVALUES_POSTGRESQL=esA;HoA.DBSYSTEMVALUES_REDSHIFT=ArA;HoA.DBSYSTEMVALUES_HIVE=QrA;HoA.DBSYSTEMVALUES_CLOUDSCAPE=BrA;HoA.DBSYSTEMVALUES_HSQLDB=YrA;HoA.DBSYSTEMVALUES_PROGRESS=JrA;HoA.DBSYSTEMVALUES_MAXDB=CrA;HoA.DBSYSTEMVALUES_HANADB=XrA;HoA.DBSYSTEMVALUES_INGRES=GrA;HoA.DBSYSTEMVALUES_FIRSTSQL=WrA;HoA.DBSYSTEMVALUES_EDB=FrA;HoA.DBSYSTEMVALUES_CACHE=ZrA;HoA.DBSYSTEMVALUES_ADABAS=$rA;HoA.DBSYSTEMVALUES_FIREBIRD=UrA;HoA.DBSYSTEMVALUES_DERBY=ErA;HoA.DBSYSTEMVALUES_FILEMAKER=KrA;HoA.DBSYSTEMVALUES_INFORMIX=VrA;HoA.DBSYSTEMVALUES_INSTANTDB=IrA;HoA.DBSYSTEMVALUES_INTERBASE=HrA;HoA.DBSYSTEMVALUES_MARIADB=DrA;HoA.DBSYSTEMVALUES_NETEZZA=NrA;HoA.DBSYSTEMVALUES_PERVASIVE=LrA;HoA.DBSYSTEMVALUES_POINTBASE=qrA;HoA.DBSYSTEMVALUES_SQLITE=MrA;HoA.DBSYSTEMVALUES_SYBASE=zrA;HoA.DBSYSTEMVALUES_TERADATA=RrA;HoA.DBSYSTEMVALUES_VERTICA=wrA;HoA.DBSYSTEMVALUES_H2=jrA;HoA.DBSYSTEMVALUES_COLDFUSION=OrA;HoA.DBSYSTEMVALUES_CASSANDRA=PrA;HoA.DBSYSTEMVALUES_HBASE=TrA;HoA.DBSYSTEMVALUES_MONGODB=SrA;HoA.DBSYSTEMVALUES_REDIS=krA;HoA.DBSYSTEMVALUES_COUCHBASE=_rA;HoA.DBSYSTEMVALUES_COUCHDB=vrA;HoA.DBSYSTEMVALUES_COSMOSDB=yrA;HoA.DBSYSTEMVALUES_DYNAMODB=grA;HoA.DBSYSTEMVALUES_NEO4J=hrA;HoA.DBSYSTEMVALUES_GEODE=xrA;HoA.DBSYSTEMVALUES_ELASTICSEARCH=frA;HoA.DBSYSTEMVALUES_MEMCACHED=brA;HoA.DBSYSTEMVALUES_COCKROACHDB=mrA;HoA.DbSystemValues=(0,p5.createConstMap)([ssA,rsA,asA,osA,tsA,esA,ArA,QrA,BrA,YrA,JrA,CrA,XrA,GrA,WrA,FrA,ZrA,$rA,UrA,ErA,KrA,VrA,IrA,HrA,DrA,NrA,LrA,qrA,MrA,zrA,RrA,wrA,jrA,OrA,PrA,TrA,SrA,krA,_rA,vrA,yrA,grA,hrA,xrA,frA,brA,mrA]);var urA="all",drA="each_quorum",crA="quorum",lrA="local_quorum",prA="one",irA="two",nrA="three",srA="local_one",rrA="any",arA="serial",orA="local_serial";HoA.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=urA;HoA.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=drA;HoA.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=crA;HoA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=lrA;HoA.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=prA;HoA.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=irA;HoA.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=nrA;HoA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=srA;HoA.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=rrA;HoA.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=arA;HoA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=orA;HoA.DbCassandraConsistencyLevelValues=(0,p5.createConstMap)([urA,drA,crA,lrA,prA,irA,nrA,srA,rrA,arA,orA]);var trA="datasource",erA="http",AaA="pubsub",QaA="timer",BaA="other";HoA.FAASTRIGGERVALUES_DATASOURCE=trA;HoA.FAASTRIGGERVALUES_HTTP=erA;HoA.FAASTRIGGERVALUES_PUBSUB=AaA;HoA.FAASTRIGGERVALUES_TIMER=QaA;HoA.FAASTRIGGERVALUES_OTHER=BaA;HoA.FaasTriggerValues=(0,p5.createConstMap)([trA,erA,AaA,QaA,BaA]);var YaA="insert",JaA="edit",CaA="delete";HoA.FAASDOCUMENTOPERATIONVALUES_INSERT=YaA;HoA.FAASDOCUMENTOPERATIONVALUES_EDIT=JaA;HoA.FAASDOCUMENTOPERATIONVALUES_DELETE=CaA;HoA.FaasDocumentOperationValues=(0,p5.createConstMap)([YaA,JaA,CaA]);var XaA="alibaba_cloud",GaA="aws",WaA="azure",FaA="gcp";HoA.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=XaA;HoA.FAASINVOKEDPROVIDERVALUES_AWS=GaA;HoA.FAASINVOKEDPROVIDERVALUES_AZURE=WaA;HoA.FAASINVOKEDPROVIDERVALUES_GCP=FaA;HoA.FaasInvokedProviderValues=(0,p5.createConstMap)([XaA,GaA,WaA,FaA]);var ZaA="ip_tcp",$aA="ip_udp",UaA="ip",EaA="unix",KaA="pipe",VaA="inproc",IaA="other";HoA.NETTRANSPORTVALUES_IP_TCP=ZaA;HoA.NETTRANSPORTVALUES_IP_UDP=$aA;HoA.NETTRANSPORTVALUES_IP=UaA;HoA.NETTRANSPORTVALUES_UNIX=EaA;HoA.NETTRANSPORTVALUES_PIPE=KaA;HoA.NETTRANSPORTVALUES_INPROC=VaA;HoA.NETTRANSPORTVALUES_OTHER=IaA;HoA.NetTransportValues=(0,p5.createConstMap)([ZaA,$aA,UaA,EaA,KaA,VaA,IaA]);var HaA="wifi",DaA="wired",NaA="cell",LaA="unavailable",qaA="unknown";HoA.NETHOSTCONNECTIONTYPEVALUES_WIFI=HaA;HoA.NETHOSTCONNECTIONTYPEVALUES_WIRED=DaA;HoA.NETHOSTCONNECTIONTYPEVALUES_CELL=NaA;HoA.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=LaA;HoA.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=qaA;HoA.NetHostConnectionTypeValues=(0,p5.createConstMap)([HaA,DaA,NaA,LaA,qaA]);var MaA="gprs",zaA="edge",RaA="umts",waA="cdma",jaA="evdo_0",OaA="evdo_a",PaA="cdma2000_1xrtt",TaA="hsdpa",SaA="hsupa",kaA="hspa",_aA="iden",vaA="evdo_b",yaA="lte",gaA="ehrpd",haA="hspap",xaA="gsm",faA="td_scdma",baA="iwlan",maA="nr",uaA="nrnsa",daA="lte_ca";HoA.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=MaA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=zaA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=RaA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=waA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=jaA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=OaA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=PaA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=TaA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=SaA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=kaA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=_aA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=vaA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=yaA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=gaA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=haA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=xaA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=faA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=baA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_NR=maA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=uaA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=daA;HoA.NetHostConnectionSubtypeValues=(0,p5.createConstMap)([MaA,zaA,RaA,waA,jaA,OaA,PaA,TaA,SaA,kaA,_aA,vaA,yaA,gaA,haA,xaA,faA,baA,maA,uaA,daA]);var caA="1.0",laA="1.1",paA="2.0",iaA="SPDY",naA="QUIC";HoA.HTTPFLAVORVALUES_HTTP_1_0=caA;HoA.HTTPFLAVORVALUES_HTTP_1_1=laA;HoA.HTTPFLAVORVALUES_HTTP_2_0=paA;HoA.HTTPFLAVORVALUES_SPDY=iaA;HoA.HTTPFLAVORVALUES_QUIC=naA;HoA.HttpFlavorValues={HTTP_1_0:caA,HTTP_1_1:laA,HTTP_2_0:paA,SPDY:iaA,QUIC:naA};var saA="queue",raA="topic";HoA.MESSAGINGDESTINATIONKINDVALUES_QUEUE=saA;HoA.MESSAGINGDESTINATIONKINDVALUES_TOPIC=raA;HoA.MessagingDestinationKindValues=(0,p5.createConstMap)([saA,raA]);var aaA="receive",oaA="process";HoA.MESSAGINGOPERATIONVALUES_RECEIVE=aaA;HoA.MESSAGINGOPERATIONVALUES_PROCESS=oaA;HoA.MessagingOperationValues=(0,p5.createConstMap)([aaA,oaA]);var taA=0,eaA=1,AoA=2,QoA=3,BoA=4,YoA=5,JoA=6,CoA=7,XoA=8,GoA=9,WoA=10,FoA=11,ZoA=12,$oA=13,UoA=14,EoA=15,KoA=16;HoA.RPCGRPCSTATUSCODEVALUES_OK=taA;HoA.RPCGRPCSTATUSCODEVALUES_CANCELLED=eaA;HoA.RPCGRPCSTATUSCODEVALUES_UNKNOWN=AoA;HoA.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=QoA;HoA.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=BoA;HoA.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=YoA;HoA.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=JoA;HoA.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=CoA;HoA.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=XoA;HoA.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=GoA;HoA.RPCGRPCSTATUSCODEVALUES_ABORTED=WoA;HoA.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=FoA;HoA.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=ZoA;HoA.RPCGRPCSTATUSCODEVALUES_INTERNAL=$oA;HoA.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=UoA;HoA.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=EoA;HoA.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=KoA;HoA.RpcGrpcStatusCodeValues={OK:taA,CANCELLED:eaA,UNKNOWN:AoA,INVALID_ARGUMENT:QoA,DEADLINE_EXCEEDED:BoA,NOT_FOUND:YoA,ALREADY_EXISTS:JoA,PERMISSION_DENIED:CoA,RESOURCE_EXHAUSTED:XoA,FAILED_PRECONDITION:GoA,ABORTED:WoA,OUT_OF_RANGE:FoA,UNIMPLEMENTED:ZoA,INTERNAL:$oA,UNAVAILABLE:UoA,DATA_LOSS:EoA,UNAUTHENTICATED:KoA};var VoA="SENT",IoA="RECEIVED";HoA.MESSAGETYPEVALUES_SENT=VoA;HoA.MESSAGETYPEVALUES_RECEIVED=IoA;HoA.MessageTypeValues=(0,p5.createConstMap)([VoA,IoA])});var woA=R(($$)=>{var eaB=$$&&$$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;var J=Object.getOwnPropertyDescriptor(Q,B);if(!J||("get"in J?!Q.__esModule:J.writable||J.configurable))J={enumerable:!0,get:function(){return Q[B]}};Object.defineProperty(A,Y,J)}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),AoB=$$&&$$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))eaB(Q,A,B)};Object.defineProperty($$,"__esModule",{value:!0});AoB(RoA(),$$)});var AAQ=R((aeA)=>{Object.defineProperty(aeA,"__esModule",{value:!0});aeA.SEMRESATTRS_K8S_STATEFULSET_NAME=aeA.SEMRESATTRS_K8S_STATEFULSET_UID=aeA.SEMRESATTRS_K8S_DEPLOYMENT_NAME=aeA.SEMRESATTRS_K8S_DEPLOYMENT_UID=aeA.SEMRESATTRS_K8S_REPLICASET_NAME=aeA.SEMRESATTRS_K8S_REPLICASET_UID=aeA.SEMRESATTRS_K8S_CONTAINER_NAME=aeA.SEMRESATTRS_K8S_POD_NAME=aeA.SEMRESATTRS_K8S_POD_UID=aeA.SEMRESATTRS_K8S_NAMESPACE_NAME=aeA.SEMRESATTRS_K8S_NODE_UID=aeA.SEMRESATTRS_K8S_NODE_NAME=aeA.SEMRESATTRS_K8S_CLUSTER_NAME=aeA.SEMRESATTRS_HOST_IMAGE_VERSION=aeA.SEMRESATTRS_HOST_IMAGE_ID=aeA.SEMRESATTRS_HOST_IMAGE_NAME=aeA.SEMRESATTRS_HOST_ARCH=aeA.SEMRESATTRS_HOST_TYPE=aeA.SEMRESATTRS_HOST_NAME=aeA.SEMRESATTRS_HOST_ID=aeA.SEMRESATTRS_FAAS_MAX_MEMORY=aeA.SEMRESATTRS_FAAS_INSTANCE=aeA.SEMRESATTRS_FAAS_VERSION=aeA.SEMRESATTRS_FAAS_ID=aeA.SEMRESATTRS_FAAS_NAME=aeA.SEMRESATTRS_DEVICE_MODEL_NAME=aeA.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=aeA.SEMRESATTRS_DEVICE_ID=aeA.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=aeA.SEMRESATTRS_CONTAINER_IMAGE_TAG=aeA.SEMRESATTRS_CONTAINER_IMAGE_NAME=aeA.SEMRESATTRS_CONTAINER_RUNTIME=aeA.SEMRESATTRS_CONTAINER_ID=aeA.SEMRESATTRS_CONTAINER_NAME=aeA.SEMRESATTRS_AWS_LOG_STREAM_ARNS=aeA.SEMRESATTRS_AWS_LOG_STREAM_NAMES=aeA.SEMRESATTRS_AWS_LOG_GROUP_ARNS=aeA.SEMRESATTRS_AWS_LOG_GROUP_NAMES=aeA.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=aeA.SEMRESATTRS_AWS_ECS_TASK_REVISION=aeA.SEMRESATTRS_AWS_ECS_TASK_FAMILY=aeA.SEMRESATTRS_AWS_ECS_TASK_ARN=aeA.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=aeA.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=aeA.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=aeA.SEMRESATTRS_CLOUD_PLATFORM=aeA.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=aeA.SEMRESATTRS_CLOUD_REGION=aeA.SEMRESATTRS_CLOUD_ACCOUNT_ID=aeA.SEMRESATTRS_CLOUD_PROVIDER=void 0;aeA.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=aeA.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=aeA.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=aeA.CLOUDPLATFORMVALUES_AZURE_AKS=aeA.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=aeA.CLOUDPLATFORMVALUES_AZURE_VM=aeA.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=aeA.CLOUDPLATFORMVALUES_AWS_LAMBDA=aeA.CLOUDPLATFORMVALUES_AWS_EKS=aeA.CLOUDPLATFORMVALUES_AWS_ECS=aeA.CLOUDPLATFORMVALUES_AWS_EC2=aeA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=aeA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=aeA.CloudProviderValues=aeA.CLOUDPROVIDERVALUES_GCP=aeA.CLOUDPROVIDERVALUES_AZURE=aeA.CLOUDPROVIDERVALUES_AWS=aeA.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=aeA.SemanticResourceAttributes=aeA.SEMRESATTRS_WEBENGINE_DESCRIPTION=aeA.SEMRESATTRS_WEBENGINE_VERSION=aeA.SEMRESATTRS_WEBENGINE_NAME=aeA.SEMRESATTRS_TELEMETRY_AUTO_VERSION=aeA.SEMRESATTRS_TELEMETRY_SDK_VERSION=aeA.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=aeA.SEMRESATTRS_TELEMETRY_SDK_NAME=aeA.SEMRESATTRS_SERVICE_VERSION=aeA.SEMRESATTRS_SERVICE_INSTANCE_ID=aeA.SEMRESATTRS_SERVICE_NAMESPACE=aeA.SEMRESATTRS_SERVICE_NAME=aeA.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=aeA.SEMRESATTRS_PROCESS_RUNTIME_VERSION=aeA.SEMRESATTRS_PROCESS_RUNTIME_NAME=aeA.SEMRESATTRS_PROCESS_OWNER=aeA.SEMRESATTRS_PROCESS_COMMAND_ARGS=aeA.SEMRESATTRS_PROCESS_COMMAND_LINE=aeA.SEMRESATTRS_PROCESS_COMMAND=aeA.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=aeA.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=aeA.SEMRESATTRS_PROCESS_PID=aeA.SEMRESATTRS_OS_VERSION=aeA.SEMRESATTRS_OS_NAME=aeA.SEMRESATTRS_OS_DESCRIPTION=aeA.SEMRESATTRS_OS_TYPE=aeA.SEMRESATTRS_K8S_CRONJOB_NAME=aeA.SEMRESATTRS_K8S_CRONJOB_UID=aeA.SEMRESATTRS_K8S_JOB_NAME=aeA.SEMRESATTRS_K8S_JOB_UID=aeA.SEMRESATTRS_K8S_DAEMONSET_NAME=aeA.SEMRESATTRS_K8S_DAEMONSET_UID=void 0;aeA.TelemetrySdkLanguageValues=aeA.TELEMETRYSDKLANGUAGEVALUES_WEBJS=aeA.TELEMETRYSDKLANGUAGEVALUES_RUBY=aeA.TELEMETRYSDKLANGUAGEVALUES_PYTHON=aeA.TELEMETRYSDKLANGUAGEVALUES_PHP=aeA.TELEMETRYSDKLANGUAGEVALUES_NODEJS=aeA.TELEMETRYSDKLANGUAGEVALUES_JAVA=aeA.TELEMETRYSDKLANGUAGEVALUES_GO=aeA.TELEMETRYSDKLANGUAGEVALUES_ERLANG=aeA.TELEMETRYSDKLANGUAGEVALUES_DOTNET=aeA.TELEMETRYSDKLANGUAGEVALUES_CPP=aeA.OsTypeValues=aeA.OSTYPEVALUES_Z_OS=aeA.OSTYPEVALUES_SOLARIS=aeA.OSTYPEVALUES_AIX=aeA.OSTYPEVALUES_HPUX=aeA.OSTYPEVALUES_DRAGONFLYBSD=aeA.OSTYPEVALUES_OPENBSD=aeA.OSTYPEVALUES_NETBSD=aeA.OSTYPEVALUES_FREEBSD=aeA.OSTYPEVALUES_DARWIN=aeA.OSTYPEVALUES_LINUX=aeA.OSTYPEVALUES_WINDOWS=aeA.HostArchValues=aeA.HOSTARCHVALUES_X86=aeA.HOSTARCHVALUES_PPC64=aeA.HOSTARCHVALUES_PPC32=aeA.HOSTARCHVALUES_IA64=aeA.HOSTARCHVALUES_ARM64=aeA.HOSTARCHVALUES_ARM32=aeA.HOSTARCHVALUES_AMD64=aeA.AwsEcsLaunchtypeValues=aeA.AWSECSLAUNCHTYPEVALUES_FARGATE=aeA.AWSECSLAUNCHTYPEVALUES_EC2=aeA.CloudPlatformValues=aeA.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=aeA.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=aeA.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=aeA.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=void 0;var U$=Yi(),joA="cloud.provider",OoA="cloud.account.id",PoA="cloud.region",ToA="cloud.availability_zone",SoA="cloud.platform",koA="aws.ecs.container.arn",_oA="aws.ecs.cluster.arn",voA="aws.ecs.launchtype",yoA="aws.ecs.task.arn",goA="aws.ecs.task.family",hoA="aws.ecs.task.revision",xoA="aws.eks.cluster.arn",foA="aws.log.group.names",boA="aws.log.group.arns",moA="aws.log.stream.names",uoA="aws.log.stream.arns",doA="container.name",coA="container.id",loA="container.runtime",poA="container.image.name",ioA="container.image.tag",noA="deployment.environment",soA="device.id",roA="device.model.identifier",aoA="device.model.name",ooA="faas.name",toA="faas.id",eoA="faas.version",AtA="faas.instance",QtA="faas.max_memory",BtA="host.id",YtA="host.name",JtA="host.type",CtA="host.arch",XtA="host.image.name",GtA="host.image.id",WtA="host.image.version",FtA="k8s.cluster.name",ZtA="k8s.node.name",$tA="k8s.node.uid",UtA="k8s.namespace.name",EtA="k8s.pod.uid",KtA="k8s.pod.name",VtA="k8s.container.name",ItA="k8s.replicaset.uid",HtA="k8s.replicaset.name",DtA="k8s.deployment.uid",NtA="k8s.deployment.name",LtA="k8s.statefulset.uid",qtA="k8s.statefulset.name",MtA="k8s.daemonset.uid",ztA="k8s.daemonset.name",RtA="k8s.job.uid",wtA="k8s.job.name",jtA="k8s.cronjob.uid",OtA="k8s.cronjob.name",PtA="os.type",TtA="os.description",StA="os.name",ktA="os.version",_tA="process.pid",vtA="process.executable.name",ytA="process.executable.path",gtA="process.command",htA="process.command_line",xtA="process.command_args",ftA="process.owner",btA="process.runtime.name",mtA="process.runtime.version",utA="process.runtime.description",dtA="service.name",ctA="service.namespace",ltA="service.instance.id",ptA="service.version",itA="telemetry.sdk.name",ntA="telemetry.sdk.language",stA="telemetry.sdk.version",rtA="telemetry.auto.version",atA="webengine.name",otA="webengine.version",ttA="webengine.description";aeA.SEMRESATTRS_CLOUD_PROVIDER=joA;aeA.SEMRESATTRS_CLOUD_ACCOUNT_ID=OoA;aeA.SEMRESATTRS_CLOUD_REGION=PoA;aeA.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=ToA;aeA.SEMRESATTRS_CLOUD_PLATFORM=SoA;aeA.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=koA;aeA.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=_oA;aeA.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=voA;aeA.SEMRESATTRS_AWS_ECS_TASK_ARN=yoA;aeA.SEMRESATTRS_AWS_ECS_TASK_FAMILY=goA;aeA.SEMRESATTRS_AWS_ECS_TASK_REVISION=hoA;aeA.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=xoA;aeA.SEMRESATTRS_AWS_LOG_GROUP_NAMES=foA;aeA.SEMRESATTRS_AWS_LOG_GROUP_ARNS=boA;aeA.SEMRESATTRS_AWS_LOG_STREAM_NAMES=moA;aeA.SEMRESATTRS_AWS_LOG_STREAM_ARNS=uoA;aeA.SEMRESATTRS_CONTAINER_NAME=doA;aeA.SEMRESATTRS_CONTAINER_ID=coA;aeA.SEMRESATTRS_CONTAINER_RUNTIME=loA;aeA.SEMRESATTRS_CONTAINER_IMAGE_NAME=poA;aeA.SEMRESATTRS_CONTAINER_IMAGE_TAG=ioA;aeA.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=noA;aeA.SEMRESATTRS_DEVICE_ID=soA;aeA.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=roA;aeA.SEMRESATTRS_DEVICE_MODEL_NAME=aoA;aeA.SEMRESATTRS_FAAS_NAME=ooA;aeA.SEMRESATTRS_FAAS_ID=toA;aeA.SEMRESATTRS_FAAS_VERSION=eoA;aeA.SEMRESATTRS_FAAS_INSTANCE=AtA;aeA.SEMRESATTRS_FAAS_MAX_MEMORY=QtA;aeA.SEMRESATTRS_HOST_ID=BtA;aeA.SEMRESATTRS_HOST_NAME=YtA;aeA.SEMRESATTRS_HOST_TYPE=JtA;aeA.SEMRESATTRS_HOST_ARCH=CtA;aeA.SEMRESATTRS_HOST_IMAGE_NAME=XtA;aeA.SEMRESATTRS_HOST_IMAGE_ID=GtA;aeA.SEMRESATTRS_HOST_IMAGE_VERSION=WtA;aeA.SEMRESATTRS_K8S_CLUSTER_NAME=FtA;aeA.SEMRESATTRS_K8S_NODE_NAME=ZtA;aeA.SEMRESATTRS_K8S_NODE_UID=$tA;aeA.SEMRESATTRS_K8S_NAMESPACE_NAME=UtA;aeA.SEMRESATTRS_K8S_POD_UID=EtA;aeA.SEMRESATTRS_K8S_POD_NAME=KtA;aeA.SEMRESATTRS_K8S_CONTAINER_NAME=VtA;aeA.SEMRESATTRS_K8S_REPLICASET_UID=ItA;aeA.SEMRESATTRS_K8S_REPLICASET_NAME=HtA;aeA.SEMRESATTRS_K8S_DEPLOYMENT_UID=DtA;aeA.SEMRESATTRS_K8S_DEPLOYMENT_NAME=NtA;aeA.SEMRESATTRS_K8S_STATEFULSET_UID=LtA;aeA.SEMRESATTRS_K8S_STATEFULSET_NAME=qtA;aeA.SEMRESATTRS_K8S_DAEMONSET_UID=MtA;aeA.SEMRESATTRS_K8S_DAEMONSET_NAME=ztA;aeA.SEMRESATTRS_K8S_JOB_UID=RtA;aeA.SEMRESATTRS_K8S_JOB_NAME=wtA;aeA.SEMRESATTRS_K8S_CRONJOB_UID=jtA;aeA.SEMRESATTRS_K8S_CRONJOB_NAME=OtA;aeA.SEMRESATTRS_OS_TYPE=PtA;aeA.SEMRESATTRS_OS_DESCRIPTION=TtA;aeA.SEMRESATTRS_OS_NAME=StA;aeA.SEMRESATTRS_OS_VERSION=ktA;aeA.SEMRESATTRS_PROCESS_PID=_tA;aeA.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=vtA;aeA.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=ytA;aeA.SEMRESATTRS_PROCESS_COMMAND=gtA;aeA.SEMRESATTRS_PROCESS_COMMAND_LINE=htA;aeA.SEMRESATTRS_PROCESS_COMMAND_ARGS=xtA;aeA.SEMRESATTRS_PROCESS_OWNER=ftA;aeA.SEMRESATTRS_PROCESS_RUNTIME_NAME=btA;aeA.SEMRESATTRS_PROCESS_RUNTIME_VERSION=mtA;aeA.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=utA;aeA.SEMRESATTRS_SERVICE_NAME=dtA;aeA.SEMRESATTRS_SERVICE_NAMESPACE=ctA;aeA.SEMRESATTRS_SERVICE_INSTANCE_ID=ltA;aeA.SEMRESATTRS_SERVICE_VERSION=ptA;aeA.SEMRESATTRS_TELEMETRY_SDK_NAME=itA;aeA.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=ntA;aeA.SEMRESATTRS_TELEMETRY_SDK_VERSION=stA;aeA.SEMRESATTRS_TELEMETRY_AUTO_VERSION=rtA;aeA.SEMRESATTRS_WEBENGINE_NAME=atA;aeA.SEMRESATTRS_WEBENGINE_VERSION=otA;aeA.SEMRESATTRS_WEBENGINE_DESCRIPTION=ttA;aeA.SemanticResourceAttributes=(0,U$.createConstMap)([joA,OoA,PoA,ToA,SoA,koA,_oA,voA,yoA,goA,hoA,xoA,foA,boA,moA,uoA,doA,coA,loA,poA,ioA,noA,soA,roA,aoA,ooA,toA,eoA,AtA,QtA,BtA,YtA,JtA,CtA,XtA,GtA,WtA,FtA,ZtA,$tA,UtA,EtA,KtA,VtA,ItA,HtA,DtA,NtA,LtA,qtA,MtA,ztA,RtA,wtA,jtA,OtA,PtA,TtA,StA,ktA,_tA,vtA,ytA,gtA,htA,xtA,ftA,btA,mtA,utA,dtA,ctA,ltA,ptA,itA,ntA,stA,rtA,atA,otA,ttA]);var etA="alibaba_cloud",AeA="aws",QeA="azure",BeA="gcp";aeA.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=etA;aeA.CLOUDPROVIDERVALUES_AWS=AeA;aeA.CLOUDPROVIDERVALUES_AZURE=QeA;aeA.CLOUDPROVIDERVALUES_GCP=BeA;aeA.CloudProviderValues=(0,U$.createConstMap)([etA,AeA,QeA,BeA]);var YeA="alibaba_cloud_ecs",JeA="alibaba_cloud_fc",CeA="aws_ec2",XeA="aws_ecs",GeA="aws_eks",WeA="aws_lambda",FeA="aws_elastic_beanstalk",ZeA="azure_vm",$eA="azure_container_instances",UeA="azure_aks",EeA="azure_functions",KeA="azure_app_service",VeA="gcp_compute_engine",IeA="gcp_cloud_run",HeA="gcp_kubernetes_engine",DeA="gcp_cloud_functions",NeA="gcp_app_engine";aeA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=YeA;aeA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=JeA;aeA.CLOUDPLATFORMVALUES_AWS_EC2=CeA;aeA.CLOUDPLATFORMVALUES_AWS_ECS=XeA;aeA.CLOUDPLATFORMVALUES_AWS_EKS=GeA;aeA.CLOUDPLATFORMVALUES_AWS_LAMBDA=WeA;aeA.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=FeA;aeA.CLOUDPLATFORMVALUES_AZURE_VM=ZeA;aeA.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=$eA;aeA.CLOUDPLATFORMVALUES_AZURE_AKS=UeA;aeA.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=EeA;aeA.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=KeA;aeA.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=VeA;aeA.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=IeA;aeA.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=HeA;aeA.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=DeA;aeA.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=NeA;aeA.CloudPlatformValues=(0,U$.createConstMap)([YeA,JeA,CeA,XeA,GeA,WeA,FeA,ZeA,$eA,UeA,EeA,KeA,VeA,IeA,HeA,DeA,NeA]);var LeA="ec2",qeA="fargate";aeA.AWSECSLAUNCHTYPEVALUES_EC2=LeA;aeA.AWSECSLAUNCHTYPEVALUES_FARGATE=qeA;aeA.AwsEcsLaunchtypeValues=(0,U$.createConstMap)([LeA,qeA]);var MeA="amd64",zeA="arm32",ReA="arm64",weA="ia64",jeA="ppc32",OeA="ppc64",PeA="x86";aeA.HOSTARCHVALUES_AMD64=MeA;aeA.HOSTARCHVALUES_ARM32=zeA;aeA.HOSTARCHVALUES_ARM64=ReA;aeA.HOSTARCHVALUES_IA64=weA;aeA.HOSTARCHVALUES_PPC32=jeA;aeA.HOSTARCHVALUES_PPC64=OeA;aeA.HOSTARCHVALUES_X86=PeA;aeA.HostArchValues=(0,U$.createConstMap)([MeA,zeA,ReA,weA,jeA,OeA,PeA]);var TeA="windows",SeA="linux",keA="darwin",_eA="freebsd",veA="netbsd",yeA="openbsd",geA="dragonflybsd",heA="hpux",xeA="aix",feA="solaris",beA="z_os";aeA.OSTYPEVALUES_WINDOWS=TeA;aeA.OSTYPEVALUES_LINUX=SeA;aeA.OSTYPEVALUES_DARWIN=keA;aeA.OSTYPEVALUES_FREEBSD=_eA;aeA.OSTYPEVALUES_NETBSD=veA;aeA.OSTYPEVALUES_OPENBSD=yeA;aeA.OSTYPEVALUES_DRAGONFLYBSD=geA;aeA.OSTYPEVALUES_HPUX=heA;aeA.OSTYPEVALUES_AIX=xeA;aeA.OSTYPEVALUES_SOLARIS=feA;aeA.OSTYPEVALUES_Z_OS=beA;aeA.OsTypeValues=(0,U$.createConstMap)([TeA,SeA,keA,_eA,veA,yeA,geA,heA,xeA,feA,beA]);var meA="cpp",ueA="dotnet",deA="erlang",ceA="go",leA="java",peA="nodejs",ieA="php",neA="python",seA="ruby",reA="webjs";aeA.TELEMETRYSDKLANGUAGEVALUES_CPP=meA;aeA.TELEMETRYSDKLANGUAGEVALUES_DOTNET=ueA;aeA.TELEMETRYSDKLANGUAGEVALUES_ERLANG=deA;aeA.TELEMETRYSDKLANGUAGEVALUES_GO=ceA;aeA.TELEMETRYSDKLANGUAGEVALUES_JAVA=leA;aeA.TELEMETRYSDKLANGUAGEVALUES_NODEJS=peA;aeA.TELEMETRYSDKLANGUAGEVALUES_PHP=ieA;aeA.TELEMETRYSDKLANGUAGEVALUES_PYTHON=neA;aeA.TELEMETRYSDKLANGUAGEVALUES_RUBY=seA;aeA.TELEMETRYSDKLANGUAGEVALUES_WEBJS=reA;aeA.TelemetrySdkLanguageValues=(0,U$.createConstMap)([meA,ueA,deA,ceA,leA,peA,ieA,neA,seA,reA])});var QAQ=R((E$)=>{var TeB=E$&&E$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;var J=Object.getOwnPropertyDescriptor(Q,B);if(!J||("get"in J?!Q.__esModule:J.writable||J.configurable))J={enumerable:!0,get:function(){return Q[B]}};Object.defineProperty(A,Y,J)}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),SeB=E$&&E$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))TeB(Q,A,B)};Object.defineProperty(E$,"__esModule",{value:!0});SeB(AAQ(),E$)});var XAQ=R((BAQ)=>{Object.defineProperty(BAQ,"__esModule",{value:!0});BAQ.ATTR_HTTP_REQUEST_HEADER=BAQ.ATTR_EXCEPTION_TYPE=BAQ.ATTR_EXCEPTION_STACKTRACE=BAQ.ATTR_EXCEPTION_MESSAGE=BAQ.ATTR_EXCEPTION_ESCAPED=BAQ.ERROR_TYPE_VALUE_OTHER=BAQ.ATTR_ERROR_TYPE=BAQ.DOTNET_GC_HEAP_GENERATION_VALUE_POH=BAQ.DOTNET_GC_HEAP_GENERATION_VALUE_LOH=BAQ.DOTNET_GC_HEAP_GENERATION_VALUE_GEN2=BAQ.DOTNET_GC_HEAP_GENERATION_VALUE_GEN1=BAQ.DOTNET_GC_HEAP_GENERATION_VALUE_GEN0=BAQ.ATTR_DOTNET_GC_HEAP_GENERATION=BAQ.DB_SYSTEM_NAME_VALUE_POSTGRESQL=BAQ.DB_SYSTEM_NAME_VALUE_MYSQL=BAQ.DB_SYSTEM_NAME_VALUE_MICROSOFT_SQL_SERVER=BAQ.DB_SYSTEM_NAME_VALUE_MARIADB=BAQ.ATTR_DB_SYSTEM_NAME=BAQ.ATTR_DB_STORED_PROCEDURE_NAME=BAQ.ATTR_DB_RESPONSE_STATUS_CODE=BAQ.ATTR_DB_QUERY_TEXT=BAQ.ATTR_DB_QUERY_SUMMARY=BAQ.ATTR_DB_OPERATION_NAME=BAQ.ATTR_DB_OPERATION_BATCH_SIZE=BAQ.ATTR_DB_NAMESPACE=BAQ.ATTR_DB_COLLECTION_NAME=BAQ.ATTR_CODE_STACKTRACE=BAQ.ATTR_CODE_LINE_NUMBER=BAQ.ATTR_CODE_FUNCTION_NAME=BAQ.ATTR_CODE_FILE_PATH=BAQ.ATTR_CODE_COLUMN_NUMBER=BAQ.ATTR_CLIENT_PORT=BAQ.ATTR_CLIENT_ADDRESS=BAQ.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS=BAQ.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE=BAQ.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS=BAQ.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK=BAQ.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED=BAQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED=BAQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER=BAQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER=BAQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED=BAQ.ATTR_ASPNETCORE_RATE_LIMITING_RESULT=BAQ.ATTR_ASPNETCORE_RATE_LIMITING_POLICY=BAQ.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE=BAQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED=BAQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED=BAQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED=BAQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED=BAQ.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT=void 0;BAQ.OTEL_STATUS_CODE_VALUE_OK=BAQ.OTEL_STATUS_CODE_VALUE_ERROR=BAQ.ATTR_OTEL_STATUS_CODE=BAQ.ATTR_OTEL_SCOPE_VERSION=BAQ.ATTR_OTEL_SCOPE_NAME=BAQ.NETWORK_TYPE_VALUE_IPV6=BAQ.NETWORK_TYPE_VALUE_IPV4=BAQ.ATTR_NETWORK_TYPE=BAQ.NETWORK_TRANSPORT_VALUE_UNIX=BAQ.NETWORK_TRANSPORT_VALUE_UDP=BAQ.NETWORK_TRANSPORT_VALUE_TCP=BAQ.NETWORK_TRANSPORT_VALUE_QUIC=BAQ.NETWORK_TRANSPORT_VALUE_PIPE=BAQ.ATTR_NETWORK_TRANSPORT=BAQ.ATTR_NETWORK_PROTOCOL_VERSION=BAQ.ATTR_NETWORK_PROTOCOL_NAME=BAQ.ATTR_NETWORK_PEER_PORT=BAQ.ATTR_NETWORK_PEER_ADDRESS=BAQ.ATTR_NETWORK_LOCAL_PORT=BAQ.ATTR_NETWORK_LOCAL_ADDRESS=BAQ.JVM_THREAD_STATE_VALUE_WAITING=BAQ.JVM_THREAD_STATE_VALUE_TIMED_WAITING=BAQ.JVM_THREAD_STATE_VALUE_TERMINATED=BAQ.JVM_THREAD_STATE_VALUE_RUNNABLE=BAQ.JVM_THREAD_STATE_VALUE_NEW=BAQ.JVM_THREAD_STATE_VALUE_BLOCKED=BAQ.ATTR_JVM_THREAD_STATE=BAQ.ATTR_JVM_THREAD_DAEMON=BAQ.JVM_MEMORY_TYPE_VALUE_NON_HEAP=BAQ.JVM_MEMORY_TYPE_VALUE_HEAP=BAQ.ATTR_JVM_MEMORY_TYPE=BAQ.ATTR_JVM_MEMORY_POOL_NAME=BAQ.ATTR_JVM_GC_NAME=BAQ.ATTR_JVM_GC_ACTION=BAQ.ATTR_HTTP_ROUTE=BAQ.ATTR_HTTP_RESPONSE_STATUS_CODE=BAQ.ATTR_HTTP_RESPONSE_HEADER=BAQ.ATTR_HTTP_REQUEST_RESEND_COUNT=BAQ.ATTR_HTTP_REQUEST_METHOD_ORIGINAL=BAQ.HTTP_REQUEST_METHOD_VALUE_TRACE=BAQ.HTTP_REQUEST_METHOD_VALUE_PUT=BAQ.HTTP_REQUEST_METHOD_VALUE_POST=BAQ.HTTP_REQUEST_METHOD_VALUE_PATCH=BAQ.HTTP_REQUEST_METHOD_VALUE_OPTIONS=BAQ.HTTP_REQUEST_METHOD_VALUE_HEAD=BAQ.HTTP_REQUEST_METHOD_VALUE_GET=BAQ.HTTP_REQUEST_METHOD_VALUE_DELETE=BAQ.HTTP_REQUEST_METHOD_VALUE_CONNECT=BAQ.HTTP_REQUEST_METHOD_VALUE_OTHER=BAQ.ATTR_HTTP_REQUEST_METHOD=void 0;BAQ.ATTR_USER_AGENT_ORIGINAL=BAQ.ATTR_URL_SCHEME=BAQ.ATTR_URL_QUERY=BAQ.ATTR_URL_PATH=BAQ.ATTR_URL_FULL=BAQ.ATTR_URL_FRAGMENT=BAQ.ATTR_TELEMETRY_SDK_VERSION=BAQ.ATTR_TELEMETRY_SDK_NAME=BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS=BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT=BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_RUST=BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY=BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON=BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_PHP=BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS=BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA=BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_GO=BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG=BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET=BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_CPP=BAQ.ATTR_TELEMETRY_SDK_LANGUAGE=BAQ.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS=BAQ.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS=BAQ.SIGNALR_TRANSPORT_VALUE_LONG_POLLING=BAQ.ATTR_SIGNALR_TRANSPORT=BAQ.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT=BAQ.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE=BAQ.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN=BAQ.ATTR_SIGNALR_CONNECTION_STATUS=BAQ.ATTR_SERVICE_VERSION=BAQ.ATTR_SERVICE_NAME=BAQ.ATTR_SERVER_PORT=BAQ.ATTR_SERVER_ADDRESS=BAQ.ATTR_OTEL_STATUS_DESCRIPTION=void 0;BAQ.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT="aspnetcore.diagnostics.exception.result";BAQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED="aborted";BAQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED="handled";BAQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED="skipped";BAQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED="unhandled";BAQ.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE="aspnetcore.diagnostics.handler.type";BAQ.ATTR_ASPNETCORE_RATE_LIMITING_POLICY="aspnetcore.rate_limiting.policy";BAQ.ATTR_ASPNETCORE_RATE_LIMITING_RESULT="aspnetcore.rate_limiting.result";BAQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED="acquired";BAQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER="endpoint_limiter";BAQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER="global_limiter";BAQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED="request_canceled";BAQ.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED="aspnetcore.request.is_unhandled";BAQ.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK="aspnetcore.routing.is_fallback";BAQ.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS="aspnetcore.routing.match_status";BAQ.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE="failure";BAQ.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS="success";BAQ.ATTR_CLIENT_ADDRESS="client.address";BAQ.ATTR_CLIENT_PORT="client.port";BAQ.ATTR_CODE_COLUMN_NUMBER="code.column.number";BAQ.ATTR_CODE_FILE_PATH="code.file.path";BAQ.ATTR_CODE_FUNCTION_NAME="code.function.name";BAQ.ATTR_CODE_LINE_NUMBER="code.line.number";BAQ.ATTR_CODE_STACKTRACE="code.stacktrace";BAQ.ATTR_DB_COLLECTION_NAME="db.collection.name";BAQ.ATTR_DB_NAMESPACE="db.namespace";BAQ.ATTR_DB_OPERATION_BATCH_SIZE="db.operation.batch.size";BAQ.ATTR_DB_OPERATION_NAME="db.operation.name";BAQ.ATTR_DB_QUERY_SUMMARY="db.query.summary";BAQ.ATTR_DB_QUERY_TEXT="db.query.text";BAQ.ATTR_DB_RESPONSE_STATUS_CODE="db.response.status_code";BAQ.ATTR_DB_STORED_PROCEDURE_NAME="db.stored_procedure.name";BAQ.ATTR_DB_SYSTEM_NAME="db.system.name";BAQ.DB_SYSTEM_NAME_VALUE_MARIADB="mariadb";BAQ.DB_SYSTEM_NAME_VALUE_MICROSOFT_SQL_SERVER="microsoft.sql_server";BAQ.DB_SYSTEM_NAME_VALUE_MYSQL="mysql";BAQ.DB_SYSTEM_NAME_VALUE_POSTGRESQL="postgresql";BAQ.ATTR_DOTNET_GC_HEAP_GENERATION="dotnet.gc.heap.generation";BAQ.DOTNET_GC_HEAP_GENERATION_VALUE_GEN0="gen0";BAQ.DOTNET_GC_HEAP_GENERATION_VALUE_GEN1="gen1";BAQ.DOTNET_GC_HEAP_GENERATION_VALUE_GEN2="gen2";BAQ.DOTNET_GC_HEAP_GENERATION_VALUE_LOH="loh";BAQ.DOTNET_GC_HEAP_GENERATION_VALUE_POH="poh";BAQ.ATTR_ERROR_TYPE="error.type";BAQ.ERROR_TYPE_VALUE_OTHER="_OTHER";BAQ.ATTR_EXCEPTION_ESCAPED="exception.escaped";BAQ.ATTR_EXCEPTION_MESSAGE="exception.message";BAQ.ATTR_EXCEPTION_STACKTRACE="exception.stacktrace";BAQ.ATTR_EXCEPTION_TYPE="exception.type";var keB=(A)=>`http.request.header.${A}`;BAQ.ATTR_HTTP_REQUEST_HEADER=keB;BAQ.ATTR_HTTP_REQUEST_METHOD="http.request.method";BAQ.HTTP_REQUEST_METHOD_VALUE_OTHER="_OTHER";BAQ.HTTP_REQUEST_METHOD_VALUE_CONNECT="CONNECT";BAQ.HTTP_REQUEST_METHOD_VALUE_DELETE="DELETE";BAQ.HTTP_REQUEST_METHOD_VALUE_GET="GET";BAQ.HTTP_REQUEST_METHOD_VALUE_HEAD="HEAD";BAQ.HTTP_REQUEST_METHOD_VALUE_OPTIONS="OPTIONS";BAQ.HTTP_REQUEST_METHOD_VALUE_PATCH="PATCH";BAQ.HTTP_REQUEST_METHOD_VALUE_POST="POST";BAQ.HTTP_REQUEST_METHOD_VALUE_PUT="PUT";BAQ.HTTP_REQUEST_METHOD_VALUE_TRACE="TRACE";BAQ.ATTR_HTTP_REQUEST_METHOD_ORIGINAL="http.request.method_original";BAQ.ATTR_HTTP_REQUEST_RESEND_COUNT="http.request.resend_count";var _eB=(A)=>`http.response.header.${A}`;BAQ.ATTR_HTTP_RESPONSE_HEADER=_eB;BAQ.ATTR_HTTP_RESPONSE_STATUS_CODE="http.response.status_code";BAQ.ATTR_HTTP_ROUTE="http.route";BAQ.ATTR_JVM_GC_ACTION="jvm.gc.action";BAQ.ATTR_JVM_GC_NAME="jvm.gc.name";BAQ.ATTR_JVM_MEMORY_POOL_NAME="jvm.memory.pool.name";BAQ.ATTR_JVM_MEMORY_TYPE="jvm.memory.type";BAQ.JVM_MEMORY_TYPE_VALUE_HEAP="heap";BAQ.JVM_MEMORY_TYPE_VALUE_NON_HEAP="non_heap";BAQ.ATTR_JVM_THREAD_DAEMON="jvm.thread.daemon";BAQ.ATTR_JVM_THREAD_STATE="jvm.thread.state";BAQ.JVM_THREAD_STATE_VALUE_BLOCKED="blocked";BAQ.JVM_THREAD_STATE_VALUE_NEW="new";BAQ.JVM_THREAD_STATE_VALUE_RUNNABLE="runnable";BAQ.JVM_THREAD_STATE_VALUE_TERMINATED="terminated";BAQ.JVM_THREAD_STATE_VALUE_TIMED_WAITING="timed_waiting";BAQ.JVM_THREAD_STATE_VALUE_WAITING="waiting";BAQ.ATTR_NETWORK_LOCAL_ADDRESS="network.local.address";BAQ.ATTR_NETWORK_LOCAL_PORT="network.local.port";BAQ.ATTR_NETWORK_PEER_ADDRESS="network.peer.address";BAQ.ATTR_NETWORK_PEER_PORT="network.peer.port";BAQ.ATTR_NETWORK_PROTOCOL_NAME="network.protocol.name";BAQ.ATTR_NETWORK_PROTOCOL_VERSION="network.protocol.version";BAQ.ATTR_NETWORK_TRANSPORT="network.transport";BAQ.NETWORK_TRANSPORT_VALUE_PIPE="pipe";BAQ.NETWORK_TRANSPORT_VALUE_QUIC="quic";BAQ.NETWORK_TRANSPORT_VALUE_TCP="tcp";BAQ.NETWORK_TRANSPORT_VALUE_UDP="udp";BAQ.NETWORK_TRANSPORT_VALUE_UNIX="unix";BAQ.ATTR_NETWORK_TYPE="network.type";BAQ.NETWORK_TYPE_VALUE_IPV4="ipv4";BAQ.NETWORK_TYPE_VALUE_IPV6="ipv6";BAQ.ATTR_OTEL_SCOPE_NAME="otel.scope.name";BAQ.ATTR_OTEL_SCOPE_VERSION="otel.scope.version";BAQ.ATTR_OTEL_STATUS_CODE="otel.status_code";BAQ.OTEL_STATUS_CODE_VALUE_ERROR="ERROR";BAQ.OTEL_STATUS_CODE_VALUE_OK="OK";BAQ.ATTR_OTEL_STATUS_DESCRIPTION="otel.status_description";BAQ.ATTR_SERVER_ADDRESS="server.address";BAQ.ATTR_SERVER_PORT="server.port";BAQ.ATTR_SERVICE_NAME="service.name";BAQ.ATTR_SERVICE_VERSION="service.version";BAQ.ATTR_SIGNALR_CONNECTION_STATUS="signalr.connection.status";BAQ.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN="app_shutdown";BAQ.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE="normal_closure";BAQ.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT="timeout";BAQ.ATTR_SIGNALR_TRANSPORT="signalr.transport";BAQ.SIGNALR_TRANSPORT_VALUE_LONG_POLLING="long_polling";BAQ.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS="server_sent_events";BAQ.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS="web_sockets";BAQ.ATTR_TELEMETRY_SDK_LANGUAGE="telemetry.sdk.language";BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_CPP="cpp";BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET="dotnet";BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG="erlang";BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_GO="go";BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA="java";BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS="nodejs";BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_PHP="php";BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON="python";BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY="ruby";BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_RUST="rust";BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT="swift";BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS="webjs";BAQ.ATTR_TELEMETRY_SDK_NAME="telemetry.sdk.name";BAQ.ATTR_TELEMETRY_SDK_VERSION="telemetry.sdk.version";BAQ.ATTR_URL_FRAGMENT="url.fragment";BAQ.ATTR_URL_FULL="url.full";BAQ.ATTR_URL_PATH="url.path";BAQ.ATTR_URL_QUERY="url.query";BAQ.ATTR_URL_SCHEME="url.scheme";BAQ.ATTR_USER_AGENT_ORIGINAL="user_agent.original"});var ZAQ=R((GAQ)=>{Object.defineProperty(GAQ,"__esModule",{value:!0});GAQ.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS=GAQ.METRIC_KESTREL_UPGRADED_CONNECTIONS=GAQ.METRIC_KESTREL_TLS_HANDSHAKE_DURATION=GAQ.METRIC_KESTREL_REJECTED_CONNECTIONS=GAQ.METRIC_KESTREL_QUEUED_REQUESTS=GAQ.METRIC_KESTREL_QUEUED_CONNECTIONS=GAQ.METRIC_KESTREL_CONNECTION_DURATION=GAQ.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES=GAQ.METRIC_KESTREL_ACTIVE_CONNECTIONS=GAQ.METRIC_JVM_THREAD_COUNT=GAQ.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC=GAQ.METRIC_JVM_MEMORY_USED=GAQ.METRIC_JVM_MEMORY_LIMIT=GAQ.METRIC_JVM_MEMORY_COMMITTED=GAQ.METRIC_JVM_GC_DURATION=GAQ.METRIC_JVM_CPU_TIME=GAQ.METRIC_JVM_CPU_RECENT_UTILIZATION=GAQ.METRIC_JVM_CPU_COUNT=GAQ.METRIC_JVM_CLASS_UNLOADED=GAQ.METRIC_JVM_CLASS_LOADED=GAQ.METRIC_JVM_CLASS_COUNT=GAQ.METRIC_HTTP_SERVER_REQUEST_DURATION=GAQ.METRIC_HTTP_CLIENT_REQUEST_DURATION=GAQ.METRIC_DOTNET_TIMER_COUNT=GAQ.METRIC_DOTNET_THREAD_POOL_WORK_ITEM_COUNT=GAQ.METRIC_DOTNET_THREAD_POOL_THREAD_COUNT=GAQ.METRIC_DOTNET_THREAD_POOL_QUEUE_LENGTH=GAQ.METRIC_DOTNET_PROCESS_MEMORY_WORKING_SET=GAQ.METRIC_DOTNET_PROCESS_CPU_TIME=GAQ.METRIC_DOTNET_PROCESS_CPU_COUNT=GAQ.METRIC_DOTNET_MONITOR_LOCK_CONTENTIONS=GAQ.METRIC_DOTNET_JIT_COMPILED_METHODS=GAQ.METRIC_DOTNET_JIT_COMPILED_IL_SIZE=GAQ.METRIC_DOTNET_JIT_COMPILATION_TIME=GAQ.METRIC_DOTNET_GC_PAUSE_TIME=GAQ.METRIC_DOTNET_GC_LAST_COLLECTION_MEMORY_COMMITTED_SIZE=GAQ.METRIC_DOTNET_GC_LAST_COLLECTION_HEAP_SIZE=GAQ.METRIC_DOTNET_GC_LAST_COLLECTION_HEAP_FRAGMENTATION_SIZE=GAQ.METRIC_DOTNET_GC_HEAP_TOTAL_ALLOCATED=GAQ.METRIC_DOTNET_GC_COLLECTIONS=GAQ.METRIC_DOTNET_EXCEPTIONS=GAQ.METRIC_DOTNET_ASSEMBLY_COUNT=GAQ.METRIC_DB_CLIENT_OPERATION_DURATION=GAQ.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS=GAQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS=GAQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION=GAQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE=GAQ.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS=GAQ.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES=GAQ.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS=void 0;GAQ.METRIC_SIGNALR_SERVER_CONNECTION_DURATION=void 0;GAQ.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS="aspnetcore.diagnostics.exceptions";GAQ.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES="aspnetcore.rate_limiting.active_request_leases";GAQ.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS="aspnetcore.rate_limiting.queued_requests";GAQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE="aspnetcore.rate_limiting.request.time_in_queue";GAQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION="aspnetcore.rate_limiting.request_lease.duration";GAQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS="aspnetcore.rate_limiting.requests";GAQ.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS="aspnetcore.routing.match_attempts";GAQ.METRIC_DB_CLIENT_OPERATION_DURATION="db.client.operation.duration";GAQ.METRIC_DOTNET_ASSEMBLY_COUNT="dotnet.assembly.count";GAQ.METRIC_DOTNET_EXCEPTIONS="dotnet.exceptions";GAQ.METRIC_DOTNET_GC_COLLECTIONS="dotnet.gc.collections";GAQ.METRIC_DOTNET_GC_HEAP_TOTAL_ALLOCATED="dotnet.gc.heap.total_allocated";GAQ.METRIC_DOTNET_GC_LAST_COLLECTION_HEAP_FRAGMENTATION_SIZE="dotnet.gc.last_collection.heap.fragmentation.size";GAQ.METRIC_DOTNET_GC_LAST_COLLECTION_HEAP_SIZE="dotnet.gc.last_collection.heap.size";GAQ.METRIC_DOTNET_GC_LAST_COLLECTION_MEMORY_COMMITTED_SIZE="dotnet.gc.last_collection.memory.committed_size";GAQ.METRIC_DOTNET_GC_PAUSE_TIME="dotnet.gc.pause.time";GAQ.METRIC_DOTNET_JIT_COMPILATION_TIME="dotnet.jit.compilation.time";GAQ.METRIC_DOTNET_JIT_COMPILED_IL_SIZE="dotnet.jit.compiled_il.size";GAQ.METRIC_DOTNET_JIT_COMPILED_METHODS="dotnet.jit.compiled_methods";GAQ.METRIC_DOTNET_MONITOR_LOCK_CONTENTIONS="dotnet.monitor.lock_contentions";GAQ.METRIC_DOTNET_PROCESS_CPU_COUNT="dotnet.process.cpu.count";GAQ.METRIC_DOTNET_PROCESS_CPU_TIME="dotnet.process.cpu.time";GAQ.METRIC_DOTNET_PROCESS_MEMORY_WORKING_SET="dotnet.process.memory.working_set";GAQ.METRIC_DOTNET_THREAD_POOL_QUEUE_LENGTH="dotnet.thread_pool.queue.length";GAQ.METRIC_DOTNET_THREAD_POOL_THREAD_COUNT="dotnet.thread_pool.thread.count";GAQ.METRIC_DOTNET_THREAD_POOL_WORK_ITEM_COUNT="dotnet.thread_pool.work_item.count";GAQ.METRIC_DOTNET_TIMER_COUNT="dotnet.timer.count";GAQ.METRIC_HTTP_CLIENT_REQUEST_DURATION="http.client.request.duration";GAQ.METRIC_HTTP_SERVER_REQUEST_DURATION="http.server.request.duration";GAQ.METRIC_JVM_CLASS_COUNT="jvm.class.count";GAQ.METRIC_JVM_CLASS_LOADED="jvm.class.loaded";GAQ.METRIC_JVM_CLASS_UNLOADED="jvm.class.unloaded";GAQ.METRIC_JVM_CPU_COUNT="jvm.cpu.count";GAQ.METRIC_JVM_CPU_RECENT_UTILIZATION="jvm.cpu.recent_utilization";GAQ.METRIC_JVM_CPU_TIME="jvm.cpu.time";GAQ.METRIC_JVM_GC_DURATION="jvm.gc.duration";GAQ.METRIC_JVM_MEMORY_COMMITTED="jvm.memory.committed";GAQ.METRIC_JVM_MEMORY_LIMIT="jvm.memory.limit";GAQ.METRIC_JVM_MEMORY_USED="jvm.memory.used";GAQ.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC="jvm.memory.used_after_last_gc";GAQ.METRIC_JVM_THREAD_COUNT="jvm.thread.count";GAQ.METRIC_KESTREL_ACTIVE_CONNECTIONS="kestrel.active_connections";GAQ.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES="kestrel.active_tls_handshakes";GAQ.METRIC_KESTREL_CONNECTION_DURATION="kestrel.connection.duration";GAQ.METRIC_KESTREL_QUEUED_CONNECTIONS="kestrel.queued_connections";GAQ.METRIC_KESTREL_QUEUED_REQUESTS="kestrel.queued_requests";GAQ.METRIC_KESTREL_REJECTED_CONNECTIONS="kestrel.rejected_connections";GAQ.METRIC_KESTREL_TLS_HANDSHAKE_DURATION="kestrel.tls_handshake.duration";GAQ.METRIC_KESTREL_UPGRADED_CONNECTIONS="kestrel.upgraded_connections";GAQ.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS="signalr.server.active_connections";GAQ.METRIC_SIGNALR_SERVER_CONNECTION_DURATION="signalr.server.connection.duration"});var dB=R((KX)=>{var oB0=KX&&KX.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;var J=Object.getOwnPropertyDescriptor(Q,B);if(!J||("get"in J?!Q.__esModule:J.writable||J.configurable))J={enumerable:!0,get:function(){return Q[B]}};Object.defineProperty(A,Y,J)}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),JP=KX&&KX.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))oB0(Q,A,B)};Object.defineProperty(KX,"__esModule",{value:!0});JP(woA(),KX);JP(QAQ(),KX);JP(XAQ(),KX);JP(ZAQ(),KX)});var Ji=R(($AQ)=>{Object.defineProperty($AQ,"__esModule",{value:!0});$AQ.createConstMap=void 0;function tB0(A){let Q={},B=A.length;for(let Y=0;Y{Object.defineProperty(BJQ,"__esModule",{value:!0});BJQ.SEMATTRS_NET_HOST_CARRIER_ICC=BJQ.SEMATTRS_NET_HOST_CARRIER_MNC=BJQ.SEMATTRS_NET_HOST_CARRIER_MCC=BJQ.SEMATTRS_NET_HOST_CARRIER_NAME=BJQ.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=BJQ.SEMATTRS_NET_HOST_CONNECTION_TYPE=BJQ.SEMATTRS_NET_HOST_NAME=BJQ.SEMATTRS_NET_HOST_PORT=BJQ.SEMATTRS_NET_HOST_IP=BJQ.SEMATTRS_NET_PEER_NAME=BJQ.SEMATTRS_NET_PEER_PORT=BJQ.SEMATTRS_NET_PEER_IP=BJQ.SEMATTRS_NET_TRANSPORT=BJQ.SEMATTRS_FAAS_INVOKED_REGION=BJQ.SEMATTRS_FAAS_INVOKED_PROVIDER=BJQ.SEMATTRS_FAAS_INVOKED_NAME=BJQ.SEMATTRS_FAAS_COLDSTART=BJQ.SEMATTRS_FAAS_CRON=BJQ.SEMATTRS_FAAS_TIME=BJQ.SEMATTRS_FAAS_DOCUMENT_NAME=BJQ.SEMATTRS_FAAS_DOCUMENT_TIME=BJQ.SEMATTRS_FAAS_DOCUMENT_OPERATION=BJQ.SEMATTRS_FAAS_DOCUMENT_COLLECTION=BJQ.SEMATTRS_FAAS_EXECUTION=BJQ.SEMATTRS_FAAS_TRIGGER=BJQ.SEMATTRS_EXCEPTION_ESCAPED=BJQ.SEMATTRS_EXCEPTION_STACKTRACE=BJQ.SEMATTRS_EXCEPTION_MESSAGE=BJQ.SEMATTRS_EXCEPTION_TYPE=BJQ.SEMATTRS_DB_SQL_TABLE=BJQ.SEMATTRS_DB_MONGODB_COLLECTION=BJQ.SEMATTRS_DB_REDIS_DATABASE_INDEX=BJQ.SEMATTRS_DB_HBASE_NAMESPACE=BJQ.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=BJQ.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=BJQ.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=BJQ.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=BJQ.SEMATTRS_DB_CASSANDRA_TABLE=BJQ.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=BJQ.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=BJQ.SEMATTRS_DB_CASSANDRA_KEYSPACE=BJQ.SEMATTRS_DB_MSSQL_INSTANCE_NAME=BJQ.SEMATTRS_DB_OPERATION=BJQ.SEMATTRS_DB_STATEMENT=BJQ.SEMATTRS_DB_NAME=BJQ.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=BJQ.SEMATTRS_DB_USER=BJQ.SEMATTRS_DB_CONNECTION_STRING=BJQ.SEMATTRS_DB_SYSTEM=BJQ.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=void 0;BJQ.SEMATTRS_MESSAGING_DESTINATION_KIND=BJQ.SEMATTRS_MESSAGING_DESTINATION=BJQ.SEMATTRS_MESSAGING_SYSTEM=BJQ.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=BJQ.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=BJQ.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=BJQ.SEMATTRS_AWS_DYNAMODB_COUNT=BJQ.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=BJQ.SEMATTRS_AWS_DYNAMODB_SEGMENT=BJQ.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=BJQ.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=BJQ.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=BJQ.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=BJQ.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=BJQ.SEMATTRS_AWS_DYNAMODB_SELECT=BJQ.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=BJQ.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=BJQ.SEMATTRS_AWS_DYNAMODB_LIMIT=BJQ.SEMATTRS_AWS_DYNAMODB_PROJECTION=BJQ.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=BJQ.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=BJQ.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=BJQ.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=BJQ.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=BJQ.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=BJQ.SEMATTRS_HTTP_CLIENT_IP=BJQ.SEMATTRS_HTTP_ROUTE=BJQ.SEMATTRS_HTTP_SERVER_NAME=BJQ.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=BJQ.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=BJQ.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=BJQ.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=BJQ.SEMATTRS_HTTP_USER_AGENT=BJQ.SEMATTRS_HTTP_FLAVOR=BJQ.SEMATTRS_HTTP_STATUS_CODE=BJQ.SEMATTRS_HTTP_SCHEME=BJQ.SEMATTRS_HTTP_HOST=BJQ.SEMATTRS_HTTP_TARGET=BJQ.SEMATTRS_HTTP_URL=BJQ.SEMATTRS_HTTP_METHOD=BJQ.SEMATTRS_CODE_LINENO=BJQ.SEMATTRS_CODE_FILEPATH=BJQ.SEMATTRS_CODE_NAMESPACE=BJQ.SEMATTRS_CODE_FUNCTION=BJQ.SEMATTRS_THREAD_NAME=BJQ.SEMATTRS_THREAD_ID=BJQ.SEMATTRS_ENDUSER_SCOPE=BJQ.SEMATTRS_ENDUSER_ROLE=BJQ.SEMATTRS_ENDUSER_ID=BJQ.SEMATTRS_PEER_SERVICE=void 0;BJQ.DBSYSTEMVALUES_FILEMAKER=BJQ.DBSYSTEMVALUES_DERBY=BJQ.DBSYSTEMVALUES_FIREBIRD=BJQ.DBSYSTEMVALUES_ADABAS=BJQ.DBSYSTEMVALUES_CACHE=BJQ.DBSYSTEMVALUES_EDB=BJQ.DBSYSTEMVALUES_FIRSTSQL=BJQ.DBSYSTEMVALUES_INGRES=BJQ.DBSYSTEMVALUES_HANADB=BJQ.DBSYSTEMVALUES_MAXDB=BJQ.DBSYSTEMVALUES_PROGRESS=BJQ.DBSYSTEMVALUES_HSQLDB=BJQ.DBSYSTEMVALUES_CLOUDSCAPE=BJQ.DBSYSTEMVALUES_HIVE=BJQ.DBSYSTEMVALUES_REDSHIFT=BJQ.DBSYSTEMVALUES_POSTGRESQL=BJQ.DBSYSTEMVALUES_DB2=BJQ.DBSYSTEMVALUES_ORACLE=BJQ.DBSYSTEMVALUES_MYSQL=BJQ.DBSYSTEMVALUES_MSSQL=BJQ.DBSYSTEMVALUES_OTHER_SQL=BJQ.SemanticAttributes=BJQ.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=BJQ.SEMATTRS_MESSAGE_COMPRESSED_SIZE=BJQ.SEMATTRS_MESSAGE_ID=BJQ.SEMATTRS_MESSAGE_TYPE=BJQ.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=BJQ.SEMATTRS_RPC_JSONRPC_ERROR_CODE=BJQ.SEMATTRS_RPC_JSONRPC_REQUEST_ID=BJQ.SEMATTRS_RPC_JSONRPC_VERSION=BJQ.SEMATTRS_RPC_GRPC_STATUS_CODE=BJQ.SEMATTRS_RPC_METHOD=BJQ.SEMATTRS_RPC_SERVICE=BJQ.SEMATTRS_RPC_SYSTEM=BJQ.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=BJQ.SEMATTRS_MESSAGING_KAFKA_PARTITION=BJQ.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=BJQ.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=BJQ.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=BJQ.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=BJQ.SEMATTRS_MESSAGING_CONSUMER_ID=BJQ.SEMATTRS_MESSAGING_OPERATION=BJQ.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=BJQ.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=BJQ.SEMATTRS_MESSAGING_CONVERSATION_ID=BJQ.SEMATTRS_MESSAGING_MESSAGE_ID=BJQ.SEMATTRS_MESSAGING_URL=BJQ.SEMATTRS_MESSAGING_PROTOCOL_VERSION=BJQ.SEMATTRS_MESSAGING_PROTOCOL=BJQ.SEMATTRS_MESSAGING_TEMP_DESTINATION=void 0;BJQ.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=BJQ.FaasDocumentOperationValues=BJQ.FAASDOCUMENTOPERATIONVALUES_DELETE=BJQ.FAASDOCUMENTOPERATIONVALUES_EDIT=BJQ.FAASDOCUMENTOPERATIONVALUES_INSERT=BJQ.FaasTriggerValues=BJQ.FAASTRIGGERVALUES_OTHER=BJQ.FAASTRIGGERVALUES_TIMER=BJQ.FAASTRIGGERVALUES_PUBSUB=BJQ.FAASTRIGGERVALUES_HTTP=BJQ.FAASTRIGGERVALUES_DATASOURCE=BJQ.DbCassandraConsistencyLevelValues=BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=BJQ.DbSystemValues=BJQ.DBSYSTEMVALUES_COCKROACHDB=BJQ.DBSYSTEMVALUES_MEMCACHED=BJQ.DBSYSTEMVALUES_ELASTICSEARCH=BJQ.DBSYSTEMVALUES_GEODE=BJQ.DBSYSTEMVALUES_NEO4J=BJQ.DBSYSTEMVALUES_DYNAMODB=BJQ.DBSYSTEMVALUES_COSMOSDB=BJQ.DBSYSTEMVALUES_COUCHDB=BJQ.DBSYSTEMVALUES_COUCHBASE=BJQ.DBSYSTEMVALUES_REDIS=BJQ.DBSYSTEMVALUES_MONGODB=BJQ.DBSYSTEMVALUES_HBASE=BJQ.DBSYSTEMVALUES_CASSANDRA=BJQ.DBSYSTEMVALUES_COLDFUSION=BJQ.DBSYSTEMVALUES_H2=BJQ.DBSYSTEMVALUES_VERTICA=BJQ.DBSYSTEMVALUES_TERADATA=BJQ.DBSYSTEMVALUES_SYBASE=BJQ.DBSYSTEMVALUES_SQLITE=BJQ.DBSYSTEMVALUES_POINTBASE=BJQ.DBSYSTEMVALUES_PERVASIVE=BJQ.DBSYSTEMVALUES_NETEZZA=BJQ.DBSYSTEMVALUES_MARIADB=BJQ.DBSYSTEMVALUES_INTERBASE=BJQ.DBSYSTEMVALUES_INSTANTDB=BJQ.DBSYSTEMVALUES_INFORMIX=void 0;BJQ.MESSAGINGOPERATIONVALUES_RECEIVE=BJQ.MessagingDestinationKindValues=BJQ.MESSAGINGDESTINATIONKINDVALUES_TOPIC=BJQ.MESSAGINGDESTINATIONKINDVALUES_QUEUE=BJQ.HttpFlavorValues=BJQ.HTTPFLAVORVALUES_QUIC=BJQ.HTTPFLAVORVALUES_SPDY=BJQ.HTTPFLAVORVALUES_HTTP_2_0=BJQ.HTTPFLAVORVALUES_HTTP_1_1=BJQ.HTTPFLAVORVALUES_HTTP_1_0=BJQ.NetHostConnectionSubtypeValues=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_NR=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=BJQ.NetHostConnectionTypeValues=BJQ.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=BJQ.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=BJQ.NETHOSTCONNECTIONTYPEVALUES_CELL=BJQ.NETHOSTCONNECTIONTYPEVALUES_WIRED=BJQ.NETHOSTCONNECTIONTYPEVALUES_WIFI=BJQ.NetTransportValues=BJQ.NETTRANSPORTVALUES_OTHER=BJQ.NETTRANSPORTVALUES_INPROC=BJQ.NETTRANSPORTVALUES_PIPE=BJQ.NETTRANSPORTVALUES_UNIX=BJQ.NETTRANSPORTVALUES_IP=BJQ.NETTRANSPORTVALUES_IP_UDP=BJQ.NETTRANSPORTVALUES_IP_TCP=BJQ.FaasInvokedProviderValues=BJQ.FAASINVOKEDPROVIDERVALUES_GCP=BJQ.FAASINVOKEDPROVIDERVALUES_AZURE=BJQ.FAASINVOKEDPROVIDERVALUES_AWS=void 0;BJQ.MessageTypeValues=BJQ.MESSAGETYPEVALUES_RECEIVED=BJQ.MESSAGETYPEVALUES_SENT=BJQ.RpcGrpcStatusCodeValues=BJQ.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=BJQ.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=BJQ.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=BJQ.RPCGRPCSTATUSCODEVALUES_INTERNAL=BJQ.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=BJQ.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=BJQ.RPCGRPCSTATUSCODEVALUES_ABORTED=BJQ.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=BJQ.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=BJQ.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=BJQ.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=BJQ.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=BJQ.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=BJQ.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=BJQ.RPCGRPCSTATUSCODEVALUES_UNKNOWN=BJQ.RPCGRPCSTATUSCODEVALUES_CANCELLED=BJQ.RPCGRPCSTATUSCODEVALUES_OK=BJQ.MessagingOperationValues=BJQ.MESSAGINGOPERATIONVALUES_PROCESS=void 0;var i5=Ji(),EAQ="aws.lambda.invoked_arn",KAQ="db.system",VAQ="db.connection_string",IAQ="db.user",HAQ="db.jdbc.driver_classname",DAQ="db.name",NAQ="db.statement",LAQ="db.operation",qAQ="db.mssql.instance_name",MAQ="db.cassandra.keyspace",zAQ="db.cassandra.page_size",RAQ="db.cassandra.consistency_level",wAQ="db.cassandra.table",jAQ="db.cassandra.idempotence",OAQ="db.cassandra.speculative_execution_count",PAQ="db.cassandra.coordinator.id",TAQ="db.cassandra.coordinator.dc",SAQ="db.hbase.namespace",kAQ="db.redis.database_index",_AQ="db.mongodb.collection",vAQ="db.sql.table",yAQ="exception.type",gAQ="exception.message",hAQ="exception.stacktrace",xAQ="exception.escaped",fAQ="faas.trigger",bAQ="faas.execution",mAQ="faas.document.collection",uAQ="faas.document.operation",dAQ="faas.document.time",cAQ="faas.document.name",lAQ="faas.time",pAQ="faas.cron",iAQ="faas.coldstart",nAQ="faas.invoked_name",sAQ="faas.invoked_provider",rAQ="faas.invoked_region",aAQ="net.transport",oAQ="net.peer.ip",tAQ="net.peer.port",eAQ="net.peer.name",AQQ="net.host.ip",QQQ="net.host.port",BQQ="net.host.name",YQQ="net.host.connection.type",JQQ="net.host.connection.subtype",CQQ="net.host.carrier.name",XQQ="net.host.carrier.mcc",GQQ="net.host.carrier.mnc",WQQ="net.host.carrier.icc",FQQ="peer.service",ZQQ="enduser.id",$QQ="enduser.role",UQQ="enduser.scope",EQQ="thread.id",KQQ="thread.name",VQQ="code.function",IQQ="code.namespace",HQQ="code.filepath",DQQ="code.lineno",NQQ="http.method",LQQ="http.url",qQQ="http.target",MQQ="http.host",zQQ="http.scheme",RQQ="http.status_code",wQQ="http.flavor",jQQ="http.user_agent",OQQ="http.request_content_length",PQQ="http.request_content_length_uncompressed",TQQ="http.response_content_length",SQQ="http.response_content_length_uncompressed",kQQ="http.server_name",_QQ="http.route",vQQ="http.client_ip",yQQ="aws.dynamodb.table_names",gQQ="aws.dynamodb.consumed_capacity",hQQ="aws.dynamodb.item_collection_metrics",xQQ="aws.dynamodb.provisioned_read_capacity",fQQ="aws.dynamodb.provisioned_write_capacity",bQQ="aws.dynamodb.consistent_read",mQQ="aws.dynamodb.projection",uQQ="aws.dynamodb.limit",dQQ="aws.dynamodb.attributes_to_get",cQQ="aws.dynamodb.index_name",lQQ="aws.dynamodb.select",pQQ="aws.dynamodb.global_secondary_indexes",iQQ="aws.dynamodb.local_secondary_indexes",nQQ="aws.dynamodb.exclusive_start_table",sQQ="aws.dynamodb.table_count",rQQ="aws.dynamodb.scan_forward",aQQ="aws.dynamodb.segment",oQQ="aws.dynamodb.total_segments",tQQ="aws.dynamodb.count",eQQ="aws.dynamodb.scanned_count",ABQ="aws.dynamodb.attribute_definitions",QBQ="aws.dynamodb.global_secondary_index_updates",BBQ="messaging.system",YBQ="messaging.destination",JBQ="messaging.destination_kind",CBQ="messaging.temp_destination",XBQ="messaging.protocol",GBQ="messaging.protocol_version",WBQ="messaging.url",FBQ="messaging.message_id",ZBQ="messaging.conversation_id",$BQ="messaging.message_payload_size_bytes",UBQ="messaging.message_payload_compressed_size_bytes",EBQ="messaging.operation",KBQ="messaging.consumer_id",VBQ="messaging.rabbitmq.routing_key",IBQ="messaging.kafka.message_key",HBQ="messaging.kafka.consumer_group",DBQ="messaging.kafka.client_id",NBQ="messaging.kafka.partition",LBQ="messaging.kafka.tombstone",qBQ="rpc.system",MBQ="rpc.service",zBQ="rpc.method",RBQ="rpc.grpc.status_code",wBQ="rpc.jsonrpc.version",jBQ="rpc.jsonrpc.request_id",OBQ="rpc.jsonrpc.error_code",PBQ="rpc.jsonrpc.error_message",TBQ="message.type",SBQ="message.id",kBQ="message.compressed_size",_BQ="message.uncompressed_size";BJQ.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=EAQ;BJQ.SEMATTRS_DB_SYSTEM=KAQ;BJQ.SEMATTRS_DB_CONNECTION_STRING=VAQ;BJQ.SEMATTRS_DB_USER=IAQ;BJQ.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=HAQ;BJQ.SEMATTRS_DB_NAME=DAQ;BJQ.SEMATTRS_DB_STATEMENT=NAQ;BJQ.SEMATTRS_DB_OPERATION=LAQ;BJQ.SEMATTRS_DB_MSSQL_INSTANCE_NAME=qAQ;BJQ.SEMATTRS_DB_CASSANDRA_KEYSPACE=MAQ;BJQ.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=zAQ;BJQ.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=RAQ;BJQ.SEMATTRS_DB_CASSANDRA_TABLE=wAQ;BJQ.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=jAQ;BJQ.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=OAQ;BJQ.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=PAQ;BJQ.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=TAQ;BJQ.SEMATTRS_DB_HBASE_NAMESPACE=SAQ;BJQ.SEMATTRS_DB_REDIS_DATABASE_INDEX=kAQ;BJQ.SEMATTRS_DB_MONGODB_COLLECTION=_AQ;BJQ.SEMATTRS_DB_SQL_TABLE=vAQ;BJQ.SEMATTRS_EXCEPTION_TYPE=yAQ;BJQ.SEMATTRS_EXCEPTION_MESSAGE=gAQ;BJQ.SEMATTRS_EXCEPTION_STACKTRACE=hAQ;BJQ.SEMATTRS_EXCEPTION_ESCAPED=xAQ;BJQ.SEMATTRS_FAAS_TRIGGER=fAQ;BJQ.SEMATTRS_FAAS_EXECUTION=bAQ;BJQ.SEMATTRS_FAAS_DOCUMENT_COLLECTION=mAQ;BJQ.SEMATTRS_FAAS_DOCUMENT_OPERATION=uAQ;BJQ.SEMATTRS_FAAS_DOCUMENT_TIME=dAQ;BJQ.SEMATTRS_FAAS_DOCUMENT_NAME=cAQ;BJQ.SEMATTRS_FAAS_TIME=lAQ;BJQ.SEMATTRS_FAAS_CRON=pAQ;BJQ.SEMATTRS_FAAS_COLDSTART=iAQ;BJQ.SEMATTRS_FAAS_INVOKED_NAME=nAQ;BJQ.SEMATTRS_FAAS_INVOKED_PROVIDER=sAQ;BJQ.SEMATTRS_FAAS_INVOKED_REGION=rAQ;BJQ.SEMATTRS_NET_TRANSPORT=aAQ;BJQ.SEMATTRS_NET_PEER_IP=oAQ;BJQ.SEMATTRS_NET_PEER_PORT=tAQ;BJQ.SEMATTRS_NET_PEER_NAME=eAQ;BJQ.SEMATTRS_NET_HOST_IP=AQQ;BJQ.SEMATTRS_NET_HOST_PORT=QQQ;BJQ.SEMATTRS_NET_HOST_NAME=BQQ;BJQ.SEMATTRS_NET_HOST_CONNECTION_TYPE=YQQ;BJQ.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=JQQ;BJQ.SEMATTRS_NET_HOST_CARRIER_NAME=CQQ;BJQ.SEMATTRS_NET_HOST_CARRIER_MCC=XQQ;BJQ.SEMATTRS_NET_HOST_CARRIER_MNC=GQQ;BJQ.SEMATTRS_NET_HOST_CARRIER_ICC=WQQ;BJQ.SEMATTRS_PEER_SERVICE=FQQ;BJQ.SEMATTRS_ENDUSER_ID=ZQQ;BJQ.SEMATTRS_ENDUSER_ROLE=$QQ;BJQ.SEMATTRS_ENDUSER_SCOPE=UQQ;BJQ.SEMATTRS_THREAD_ID=EQQ;BJQ.SEMATTRS_THREAD_NAME=KQQ;BJQ.SEMATTRS_CODE_FUNCTION=VQQ;BJQ.SEMATTRS_CODE_NAMESPACE=IQQ;BJQ.SEMATTRS_CODE_FILEPATH=HQQ;BJQ.SEMATTRS_CODE_LINENO=DQQ;BJQ.SEMATTRS_HTTP_METHOD=NQQ;BJQ.SEMATTRS_HTTP_URL=LQQ;BJQ.SEMATTRS_HTTP_TARGET=qQQ;BJQ.SEMATTRS_HTTP_HOST=MQQ;BJQ.SEMATTRS_HTTP_SCHEME=zQQ;BJQ.SEMATTRS_HTTP_STATUS_CODE=RQQ;BJQ.SEMATTRS_HTTP_FLAVOR=wQQ;BJQ.SEMATTRS_HTTP_USER_AGENT=jQQ;BJQ.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=OQQ;BJQ.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=PQQ;BJQ.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=TQQ;BJQ.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=SQQ;BJQ.SEMATTRS_HTTP_SERVER_NAME=kQQ;BJQ.SEMATTRS_HTTP_ROUTE=_QQ;BJQ.SEMATTRS_HTTP_CLIENT_IP=vQQ;BJQ.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=yQQ;BJQ.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=gQQ;BJQ.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=hQQ;BJQ.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=xQQ;BJQ.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=fQQ;BJQ.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=bQQ;BJQ.SEMATTRS_AWS_DYNAMODB_PROJECTION=mQQ;BJQ.SEMATTRS_AWS_DYNAMODB_LIMIT=uQQ;BJQ.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=dQQ;BJQ.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=cQQ;BJQ.SEMATTRS_AWS_DYNAMODB_SELECT=lQQ;BJQ.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=pQQ;BJQ.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=iQQ;BJQ.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=nQQ;BJQ.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=sQQ;BJQ.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=rQQ;BJQ.SEMATTRS_AWS_DYNAMODB_SEGMENT=aQQ;BJQ.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=oQQ;BJQ.SEMATTRS_AWS_DYNAMODB_COUNT=tQQ;BJQ.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=eQQ;BJQ.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=ABQ;BJQ.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=QBQ;BJQ.SEMATTRS_MESSAGING_SYSTEM=BBQ;BJQ.SEMATTRS_MESSAGING_DESTINATION=YBQ;BJQ.SEMATTRS_MESSAGING_DESTINATION_KIND=JBQ;BJQ.SEMATTRS_MESSAGING_TEMP_DESTINATION=CBQ;BJQ.SEMATTRS_MESSAGING_PROTOCOL=XBQ;BJQ.SEMATTRS_MESSAGING_PROTOCOL_VERSION=GBQ;BJQ.SEMATTRS_MESSAGING_URL=WBQ;BJQ.SEMATTRS_MESSAGING_MESSAGE_ID=FBQ;BJQ.SEMATTRS_MESSAGING_CONVERSATION_ID=ZBQ;BJQ.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=$BQ;BJQ.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=UBQ;BJQ.SEMATTRS_MESSAGING_OPERATION=EBQ;BJQ.SEMATTRS_MESSAGING_CONSUMER_ID=KBQ;BJQ.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=VBQ;BJQ.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=IBQ;BJQ.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=HBQ;BJQ.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=DBQ;BJQ.SEMATTRS_MESSAGING_KAFKA_PARTITION=NBQ;BJQ.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=LBQ;BJQ.SEMATTRS_RPC_SYSTEM=qBQ;BJQ.SEMATTRS_RPC_SERVICE=MBQ;BJQ.SEMATTRS_RPC_METHOD=zBQ;BJQ.SEMATTRS_RPC_GRPC_STATUS_CODE=RBQ;BJQ.SEMATTRS_RPC_JSONRPC_VERSION=wBQ;BJQ.SEMATTRS_RPC_JSONRPC_REQUEST_ID=jBQ;BJQ.SEMATTRS_RPC_JSONRPC_ERROR_CODE=OBQ;BJQ.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=PBQ;BJQ.SEMATTRS_MESSAGE_TYPE=TBQ;BJQ.SEMATTRS_MESSAGE_ID=SBQ;BJQ.SEMATTRS_MESSAGE_COMPRESSED_SIZE=kBQ;BJQ.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=_BQ;BJQ.SemanticAttributes=(0,i5.createConstMap)([EAQ,KAQ,VAQ,IAQ,HAQ,DAQ,NAQ,LAQ,qAQ,MAQ,zAQ,RAQ,wAQ,jAQ,OAQ,PAQ,TAQ,SAQ,kAQ,_AQ,vAQ,yAQ,gAQ,hAQ,xAQ,fAQ,bAQ,mAQ,uAQ,dAQ,cAQ,lAQ,pAQ,iAQ,nAQ,sAQ,rAQ,aAQ,oAQ,tAQ,eAQ,AQQ,QQQ,BQQ,YQQ,JQQ,CQQ,XQQ,GQQ,WQQ,FQQ,ZQQ,$QQ,UQQ,EQQ,KQQ,VQQ,IQQ,HQQ,DQQ,NQQ,LQQ,qQQ,MQQ,zQQ,RQQ,wQQ,jQQ,OQQ,PQQ,TQQ,SQQ,kQQ,_QQ,vQQ,yQQ,gQQ,hQQ,xQQ,fQQ,bQQ,mQQ,uQQ,dQQ,cQQ,lQQ,pQQ,iQQ,nQQ,sQQ,rQQ,aQQ,oQQ,tQQ,eQQ,ABQ,QBQ,BBQ,YBQ,JBQ,CBQ,XBQ,GBQ,WBQ,FBQ,ZBQ,$BQ,UBQ,EBQ,KBQ,VBQ,IBQ,HBQ,DBQ,NBQ,LBQ,qBQ,MBQ,zBQ,RBQ,wBQ,jBQ,OBQ,PBQ,TBQ,SBQ,kBQ,_BQ]);var vBQ="other_sql",yBQ="mssql",gBQ="mysql",hBQ="oracle",xBQ="db2",fBQ="postgresql",bBQ="redshift",mBQ="hive",uBQ="cloudscape",dBQ="hsqldb",cBQ="progress",lBQ="maxdb",pBQ="hanadb",iBQ="ingres",nBQ="firstsql",sBQ="edb",rBQ="cache",aBQ="adabas",oBQ="firebird",tBQ="derby",eBQ="filemaker",A0Q="informix",Q0Q="instantdb",B0Q="interbase",Y0Q="mariadb",J0Q="netezza",C0Q="pervasive",X0Q="pointbase",G0Q="sqlite",W0Q="sybase",F0Q="teradata",Z0Q="vertica",$0Q="h2",U0Q="coldfusion",E0Q="cassandra",K0Q="hbase",V0Q="mongodb",I0Q="redis",H0Q="couchbase",D0Q="couchdb",N0Q="cosmosdb",L0Q="dynamodb",q0Q="neo4j",M0Q="geode",z0Q="elasticsearch",R0Q="memcached",w0Q="cockroachdb";BJQ.DBSYSTEMVALUES_OTHER_SQL=vBQ;BJQ.DBSYSTEMVALUES_MSSQL=yBQ;BJQ.DBSYSTEMVALUES_MYSQL=gBQ;BJQ.DBSYSTEMVALUES_ORACLE=hBQ;BJQ.DBSYSTEMVALUES_DB2=xBQ;BJQ.DBSYSTEMVALUES_POSTGRESQL=fBQ;BJQ.DBSYSTEMVALUES_REDSHIFT=bBQ;BJQ.DBSYSTEMVALUES_HIVE=mBQ;BJQ.DBSYSTEMVALUES_CLOUDSCAPE=uBQ;BJQ.DBSYSTEMVALUES_HSQLDB=dBQ;BJQ.DBSYSTEMVALUES_PROGRESS=cBQ;BJQ.DBSYSTEMVALUES_MAXDB=lBQ;BJQ.DBSYSTEMVALUES_HANADB=pBQ;BJQ.DBSYSTEMVALUES_INGRES=iBQ;BJQ.DBSYSTEMVALUES_FIRSTSQL=nBQ;BJQ.DBSYSTEMVALUES_EDB=sBQ;BJQ.DBSYSTEMVALUES_CACHE=rBQ;BJQ.DBSYSTEMVALUES_ADABAS=aBQ;BJQ.DBSYSTEMVALUES_FIREBIRD=oBQ;BJQ.DBSYSTEMVALUES_DERBY=tBQ;BJQ.DBSYSTEMVALUES_FILEMAKER=eBQ;BJQ.DBSYSTEMVALUES_INFORMIX=A0Q;BJQ.DBSYSTEMVALUES_INSTANTDB=Q0Q;BJQ.DBSYSTEMVALUES_INTERBASE=B0Q;BJQ.DBSYSTEMVALUES_MARIADB=Y0Q;BJQ.DBSYSTEMVALUES_NETEZZA=J0Q;BJQ.DBSYSTEMVALUES_PERVASIVE=C0Q;BJQ.DBSYSTEMVALUES_POINTBASE=X0Q;BJQ.DBSYSTEMVALUES_SQLITE=G0Q;BJQ.DBSYSTEMVALUES_SYBASE=W0Q;BJQ.DBSYSTEMVALUES_TERADATA=F0Q;BJQ.DBSYSTEMVALUES_VERTICA=Z0Q;BJQ.DBSYSTEMVALUES_H2=$0Q;BJQ.DBSYSTEMVALUES_COLDFUSION=U0Q;BJQ.DBSYSTEMVALUES_CASSANDRA=E0Q;BJQ.DBSYSTEMVALUES_HBASE=K0Q;BJQ.DBSYSTEMVALUES_MONGODB=V0Q;BJQ.DBSYSTEMVALUES_REDIS=I0Q;BJQ.DBSYSTEMVALUES_COUCHBASE=H0Q;BJQ.DBSYSTEMVALUES_COUCHDB=D0Q;BJQ.DBSYSTEMVALUES_COSMOSDB=N0Q;BJQ.DBSYSTEMVALUES_DYNAMODB=L0Q;BJQ.DBSYSTEMVALUES_NEO4J=q0Q;BJQ.DBSYSTEMVALUES_GEODE=M0Q;BJQ.DBSYSTEMVALUES_ELASTICSEARCH=z0Q;BJQ.DBSYSTEMVALUES_MEMCACHED=R0Q;BJQ.DBSYSTEMVALUES_COCKROACHDB=w0Q;BJQ.DbSystemValues=(0,i5.createConstMap)([vBQ,yBQ,gBQ,hBQ,xBQ,fBQ,bBQ,mBQ,uBQ,dBQ,cBQ,lBQ,pBQ,iBQ,nBQ,sBQ,rBQ,aBQ,oBQ,tBQ,eBQ,A0Q,Q0Q,B0Q,Y0Q,J0Q,C0Q,X0Q,G0Q,W0Q,F0Q,Z0Q,$0Q,U0Q,E0Q,K0Q,V0Q,I0Q,H0Q,D0Q,N0Q,L0Q,q0Q,M0Q,z0Q,R0Q,w0Q]);var j0Q="all",O0Q="each_quorum",P0Q="quorum",T0Q="local_quorum",S0Q="one",k0Q="two",_0Q="three",v0Q="local_one",y0Q="any",g0Q="serial",h0Q="local_serial";BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=j0Q;BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=O0Q;BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=P0Q;BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=T0Q;BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=S0Q;BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=k0Q;BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=_0Q;BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=v0Q;BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=y0Q;BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=g0Q;BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=h0Q;BJQ.DbCassandraConsistencyLevelValues=(0,i5.createConstMap)([j0Q,O0Q,P0Q,T0Q,S0Q,k0Q,_0Q,v0Q,y0Q,g0Q,h0Q]);var x0Q="datasource",f0Q="http",b0Q="pubsub",m0Q="timer",u0Q="other";BJQ.FAASTRIGGERVALUES_DATASOURCE=x0Q;BJQ.FAASTRIGGERVALUES_HTTP=f0Q;BJQ.FAASTRIGGERVALUES_PUBSUB=b0Q;BJQ.FAASTRIGGERVALUES_TIMER=m0Q;BJQ.FAASTRIGGERVALUES_OTHER=u0Q;BJQ.FaasTriggerValues=(0,i5.createConstMap)([x0Q,f0Q,b0Q,m0Q,u0Q]);var d0Q="insert",c0Q="edit",l0Q="delete";BJQ.FAASDOCUMENTOPERATIONVALUES_INSERT=d0Q;BJQ.FAASDOCUMENTOPERATIONVALUES_EDIT=c0Q;BJQ.FAASDOCUMENTOPERATIONVALUES_DELETE=l0Q;BJQ.FaasDocumentOperationValues=(0,i5.createConstMap)([d0Q,c0Q,l0Q]);var p0Q="alibaba_cloud",i0Q="aws",n0Q="azure",s0Q="gcp";BJQ.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=p0Q;BJQ.FAASINVOKEDPROVIDERVALUES_AWS=i0Q;BJQ.FAASINVOKEDPROVIDERVALUES_AZURE=n0Q;BJQ.FAASINVOKEDPROVIDERVALUES_GCP=s0Q;BJQ.FaasInvokedProviderValues=(0,i5.createConstMap)([p0Q,i0Q,n0Q,s0Q]);var r0Q="ip_tcp",a0Q="ip_udp",o0Q="ip",t0Q="unix",e0Q="pipe",AYQ="inproc",QYQ="other";BJQ.NETTRANSPORTVALUES_IP_TCP=r0Q;BJQ.NETTRANSPORTVALUES_IP_UDP=a0Q;BJQ.NETTRANSPORTVALUES_IP=o0Q;BJQ.NETTRANSPORTVALUES_UNIX=t0Q;BJQ.NETTRANSPORTVALUES_PIPE=e0Q;BJQ.NETTRANSPORTVALUES_INPROC=AYQ;BJQ.NETTRANSPORTVALUES_OTHER=QYQ;BJQ.NetTransportValues=(0,i5.createConstMap)([r0Q,a0Q,o0Q,t0Q,e0Q,AYQ,QYQ]);var BYQ="wifi",YYQ="wired",JYQ="cell",CYQ="unavailable",XYQ="unknown";BJQ.NETHOSTCONNECTIONTYPEVALUES_WIFI=BYQ;BJQ.NETHOSTCONNECTIONTYPEVALUES_WIRED=YYQ;BJQ.NETHOSTCONNECTIONTYPEVALUES_CELL=JYQ;BJQ.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=CYQ;BJQ.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=XYQ;BJQ.NetHostConnectionTypeValues=(0,i5.createConstMap)([BYQ,YYQ,JYQ,CYQ,XYQ]);var GYQ="gprs",WYQ="edge",FYQ="umts",ZYQ="cdma",$YQ="evdo_0",UYQ="evdo_a",EYQ="cdma2000_1xrtt",KYQ="hsdpa",VYQ="hsupa",IYQ="hspa",HYQ="iden",DYQ="evdo_b",NYQ="lte",LYQ="ehrpd",qYQ="hspap",MYQ="gsm",zYQ="td_scdma",RYQ="iwlan",wYQ="nr",jYQ="nrnsa",OYQ="lte_ca";BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=GYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=WYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=FYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=ZYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=$YQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=UYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=EYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=KYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=VYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=IYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=HYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=DYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=NYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=LYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=qYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=MYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=zYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=RYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_NR=wYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=jYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=OYQ;BJQ.NetHostConnectionSubtypeValues=(0,i5.createConstMap)([GYQ,WYQ,FYQ,ZYQ,$YQ,UYQ,EYQ,KYQ,VYQ,IYQ,HYQ,DYQ,NYQ,LYQ,qYQ,MYQ,zYQ,RYQ,wYQ,jYQ,OYQ]);var PYQ="1.0",TYQ="1.1",SYQ="2.0",kYQ="SPDY",_YQ="QUIC";BJQ.HTTPFLAVORVALUES_HTTP_1_0=PYQ;BJQ.HTTPFLAVORVALUES_HTTP_1_1=TYQ;BJQ.HTTPFLAVORVALUES_HTTP_2_0=SYQ;BJQ.HTTPFLAVORVALUES_SPDY=kYQ;BJQ.HTTPFLAVORVALUES_QUIC=_YQ;BJQ.HttpFlavorValues={HTTP_1_0:PYQ,HTTP_1_1:TYQ,HTTP_2_0:SYQ,SPDY:kYQ,QUIC:_YQ};var vYQ="queue",yYQ="topic";BJQ.MESSAGINGDESTINATIONKINDVALUES_QUEUE=vYQ;BJQ.MESSAGINGDESTINATIONKINDVALUES_TOPIC=yYQ;BJQ.MessagingDestinationKindValues=(0,i5.createConstMap)([vYQ,yYQ]);var gYQ="receive",hYQ="process";BJQ.MESSAGINGOPERATIONVALUES_RECEIVE=gYQ;BJQ.MESSAGINGOPERATIONVALUES_PROCESS=hYQ;BJQ.MessagingOperationValues=(0,i5.createConstMap)([gYQ,hYQ]);var xYQ=0,fYQ=1,bYQ=2,mYQ=3,uYQ=4,dYQ=5,cYQ=6,lYQ=7,pYQ=8,iYQ=9,nYQ=10,sYQ=11,rYQ=12,aYQ=13,oYQ=14,tYQ=15,eYQ=16;BJQ.RPCGRPCSTATUSCODEVALUES_OK=xYQ;BJQ.RPCGRPCSTATUSCODEVALUES_CANCELLED=fYQ;BJQ.RPCGRPCSTATUSCODEVALUES_UNKNOWN=bYQ;BJQ.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=mYQ;BJQ.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=uYQ;BJQ.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=dYQ;BJQ.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=cYQ;BJQ.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=lYQ;BJQ.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=pYQ;BJQ.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=iYQ;BJQ.RPCGRPCSTATUSCODEVALUES_ABORTED=nYQ;BJQ.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=sYQ;BJQ.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=rYQ;BJQ.RPCGRPCSTATUSCODEVALUES_INTERNAL=aYQ;BJQ.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=oYQ;BJQ.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=tYQ;BJQ.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=eYQ;BJQ.RpcGrpcStatusCodeValues={OK:xYQ,CANCELLED:fYQ,UNKNOWN:bYQ,INVALID_ARGUMENT:mYQ,DEADLINE_EXCEEDED:uYQ,NOT_FOUND:dYQ,ALREADY_EXISTS:cYQ,PERMISSION_DENIED:lYQ,RESOURCE_EXHAUSTED:pYQ,FAILED_PRECONDITION:iYQ,ABORTED:nYQ,OUT_OF_RANGE:sYQ,UNIMPLEMENTED:rYQ,INTERNAL:aYQ,UNAVAILABLE:oYQ,DATA_LOSS:tYQ,UNAUTHENTICATED:eYQ};var AJQ="SENT",QJQ="RECEIVED";BJQ.MESSAGETYPEVALUES_SENT=AJQ;BJQ.MESSAGETYPEVALUES_RECEIVED=QJQ;BJQ.MessageTypeValues=(0,i5.createConstMap)([AJQ,QJQ])});var ZJQ=R((K$)=>{var a80=K$&&K$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),o80=K$&&K$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))a80(Q,A,B)};Object.defineProperty(K$,"__esModule",{value:!0});o80(FJQ(),K$)});var b8Q=R((g8Q)=>{Object.defineProperty(g8Q,"__esModule",{value:!0});g8Q.SEMRESATTRS_K8S_STATEFULSET_NAME=g8Q.SEMRESATTRS_K8S_STATEFULSET_UID=g8Q.SEMRESATTRS_K8S_DEPLOYMENT_NAME=g8Q.SEMRESATTRS_K8S_DEPLOYMENT_UID=g8Q.SEMRESATTRS_K8S_REPLICASET_NAME=g8Q.SEMRESATTRS_K8S_REPLICASET_UID=g8Q.SEMRESATTRS_K8S_CONTAINER_NAME=g8Q.SEMRESATTRS_K8S_POD_NAME=g8Q.SEMRESATTRS_K8S_POD_UID=g8Q.SEMRESATTRS_K8S_NAMESPACE_NAME=g8Q.SEMRESATTRS_K8S_NODE_UID=g8Q.SEMRESATTRS_K8S_NODE_NAME=g8Q.SEMRESATTRS_K8S_CLUSTER_NAME=g8Q.SEMRESATTRS_HOST_IMAGE_VERSION=g8Q.SEMRESATTRS_HOST_IMAGE_ID=g8Q.SEMRESATTRS_HOST_IMAGE_NAME=g8Q.SEMRESATTRS_HOST_ARCH=g8Q.SEMRESATTRS_HOST_TYPE=g8Q.SEMRESATTRS_HOST_NAME=g8Q.SEMRESATTRS_HOST_ID=g8Q.SEMRESATTRS_FAAS_MAX_MEMORY=g8Q.SEMRESATTRS_FAAS_INSTANCE=g8Q.SEMRESATTRS_FAAS_VERSION=g8Q.SEMRESATTRS_FAAS_ID=g8Q.SEMRESATTRS_FAAS_NAME=g8Q.SEMRESATTRS_DEVICE_MODEL_NAME=g8Q.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=g8Q.SEMRESATTRS_DEVICE_ID=g8Q.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=g8Q.SEMRESATTRS_CONTAINER_IMAGE_TAG=g8Q.SEMRESATTRS_CONTAINER_IMAGE_NAME=g8Q.SEMRESATTRS_CONTAINER_RUNTIME=g8Q.SEMRESATTRS_CONTAINER_ID=g8Q.SEMRESATTRS_CONTAINER_NAME=g8Q.SEMRESATTRS_AWS_LOG_STREAM_ARNS=g8Q.SEMRESATTRS_AWS_LOG_STREAM_NAMES=g8Q.SEMRESATTRS_AWS_LOG_GROUP_ARNS=g8Q.SEMRESATTRS_AWS_LOG_GROUP_NAMES=g8Q.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=g8Q.SEMRESATTRS_AWS_ECS_TASK_REVISION=g8Q.SEMRESATTRS_AWS_ECS_TASK_FAMILY=g8Q.SEMRESATTRS_AWS_ECS_TASK_ARN=g8Q.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=g8Q.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=g8Q.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=g8Q.SEMRESATTRS_CLOUD_PLATFORM=g8Q.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=g8Q.SEMRESATTRS_CLOUD_REGION=g8Q.SEMRESATTRS_CLOUD_ACCOUNT_ID=g8Q.SEMRESATTRS_CLOUD_PROVIDER=void 0;g8Q.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=g8Q.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=g8Q.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=g8Q.CLOUDPLATFORMVALUES_AZURE_AKS=g8Q.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=g8Q.CLOUDPLATFORMVALUES_AZURE_VM=g8Q.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=g8Q.CLOUDPLATFORMVALUES_AWS_LAMBDA=g8Q.CLOUDPLATFORMVALUES_AWS_EKS=g8Q.CLOUDPLATFORMVALUES_AWS_ECS=g8Q.CLOUDPLATFORMVALUES_AWS_EC2=g8Q.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=g8Q.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=g8Q.CloudProviderValues=g8Q.CLOUDPROVIDERVALUES_GCP=g8Q.CLOUDPROVIDERVALUES_AZURE=g8Q.CLOUDPROVIDERVALUES_AWS=g8Q.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=g8Q.SemanticResourceAttributes=g8Q.SEMRESATTRS_WEBENGINE_DESCRIPTION=g8Q.SEMRESATTRS_WEBENGINE_VERSION=g8Q.SEMRESATTRS_WEBENGINE_NAME=g8Q.SEMRESATTRS_TELEMETRY_AUTO_VERSION=g8Q.SEMRESATTRS_TELEMETRY_SDK_VERSION=g8Q.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=g8Q.SEMRESATTRS_TELEMETRY_SDK_NAME=g8Q.SEMRESATTRS_SERVICE_VERSION=g8Q.SEMRESATTRS_SERVICE_INSTANCE_ID=g8Q.SEMRESATTRS_SERVICE_NAMESPACE=g8Q.SEMRESATTRS_SERVICE_NAME=g8Q.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=g8Q.SEMRESATTRS_PROCESS_RUNTIME_VERSION=g8Q.SEMRESATTRS_PROCESS_RUNTIME_NAME=g8Q.SEMRESATTRS_PROCESS_OWNER=g8Q.SEMRESATTRS_PROCESS_COMMAND_ARGS=g8Q.SEMRESATTRS_PROCESS_COMMAND_LINE=g8Q.SEMRESATTRS_PROCESS_COMMAND=g8Q.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=g8Q.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=g8Q.SEMRESATTRS_PROCESS_PID=g8Q.SEMRESATTRS_OS_VERSION=g8Q.SEMRESATTRS_OS_NAME=g8Q.SEMRESATTRS_OS_DESCRIPTION=g8Q.SEMRESATTRS_OS_TYPE=g8Q.SEMRESATTRS_K8S_CRONJOB_NAME=g8Q.SEMRESATTRS_K8S_CRONJOB_UID=g8Q.SEMRESATTRS_K8S_JOB_NAME=g8Q.SEMRESATTRS_K8S_JOB_UID=g8Q.SEMRESATTRS_K8S_DAEMONSET_NAME=g8Q.SEMRESATTRS_K8S_DAEMONSET_UID=void 0;g8Q.TelemetrySdkLanguageValues=g8Q.TELEMETRYSDKLANGUAGEVALUES_WEBJS=g8Q.TELEMETRYSDKLANGUAGEVALUES_RUBY=g8Q.TELEMETRYSDKLANGUAGEVALUES_PYTHON=g8Q.TELEMETRYSDKLANGUAGEVALUES_PHP=g8Q.TELEMETRYSDKLANGUAGEVALUES_NODEJS=g8Q.TELEMETRYSDKLANGUAGEVALUES_JAVA=g8Q.TELEMETRYSDKLANGUAGEVALUES_GO=g8Q.TELEMETRYSDKLANGUAGEVALUES_ERLANG=g8Q.TELEMETRYSDKLANGUAGEVALUES_DOTNET=g8Q.TELEMETRYSDKLANGUAGEVALUES_CPP=g8Q.OsTypeValues=g8Q.OSTYPEVALUES_Z_OS=g8Q.OSTYPEVALUES_SOLARIS=g8Q.OSTYPEVALUES_AIX=g8Q.OSTYPEVALUES_HPUX=g8Q.OSTYPEVALUES_DRAGONFLYBSD=g8Q.OSTYPEVALUES_OPENBSD=g8Q.OSTYPEVALUES_NETBSD=g8Q.OSTYPEVALUES_FREEBSD=g8Q.OSTYPEVALUES_DARWIN=g8Q.OSTYPEVALUES_LINUX=g8Q.OSTYPEVALUES_WINDOWS=g8Q.HostArchValues=g8Q.HOSTARCHVALUES_X86=g8Q.HOSTARCHVALUES_PPC64=g8Q.HOSTARCHVALUES_PPC32=g8Q.HOSTARCHVALUES_IA64=g8Q.HOSTARCHVALUES_ARM64=g8Q.HOSTARCHVALUES_ARM32=g8Q.HOSTARCHVALUES_AMD64=g8Q.AwsEcsLaunchtypeValues=g8Q.AWSECSLAUNCHTYPEVALUES_FARGATE=g8Q.AWSECSLAUNCHTYPEVALUES_EC2=g8Q.CloudPlatformValues=g8Q.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=g8Q.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=g8Q.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=g8Q.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=void 0;var V$=Ji(),$JQ="cloud.provider",UJQ="cloud.account.id",EJQ="cloud.region",KJQ="cloud.availability_zone",VJQ="cloud.platform",IJQ="aws.ecs.container.arn",HJQ="aws.ecs.cluster.arn",DJQ="aws.ecs.launchtype",NJQ="aws.ecs.task.arn",LJQ="aws.ecs.task.family",qJQ="aws.ecs.task.revision",MJQ="aws.eks.cluster.arn",zJQ="aws.log.group.names",RJQ="aws.log.group.arns",wJQ="aws.log.stream.names",jJQ="aws.log.stream.arns",OJQ="container.name",PJQ="container.id",TJQ="container.runtime",SJQ="container.image.name",kJQ="container.image.tag",_JQ="deployment.environment",vJQ="device.id",yJQ="device.model.identifier",gJQ="device.model.name",hJQ="faas.name",xJQ="faas.id",fJQ="faas.version",bJQ="faas.instance",mJQ="faas.max_memory",uJQ="host.id",dJQ="host.name",cJQ="host.type",lJQ="host.arch",pJQ="host.image.name",iJQ="host.image.id",nJQ="host.image.version",sJQ="k8s.cluster.name",rJQ="k8s.node.name",aJQ="k8s.node.uid",oJQ="k8s.namespace.name",tJQ="k8s.pod.uid",eJQ="k8s.pod.name",A9Q="k8s.container.name",Q9Q="k8s.replicaset.uid",B9Q="k8s.replicaset.name",Y9Q="k8s.deployment.uid",J9Q="k8s.deployment.name",C9Q="k8s.statefulset.uid",X9Q="k8s.statefulset.name",G9Q="k8s.daemonset.uid",W9Q="k8s.daemonset.name",F9Q="k8s.job.uid",Z9Q="k8s.job.name",$9Q="k8s.cronjob.uid",U9Q="k8s.cronjob.name",E9Q="os.type",K9Q="os.description",V9Q="os.name",I9Q="os.version",H9Q="process.pid",D9Q="process.executable.name",N9Q="process.executable.path",L9Q="process.command",q9Q="process.command_line",M9Q="process.command_args",z9Q="process.owner",R9Q="process.runtime.name",w9Q="process.runtime.version",j9Q="process.runtime.description",O9Q="service.name",P9Q="service.namespace",T9Q="service.instance.id",S9Q="service.version",k9Q="telemetry.sdk.name",_9Q="telemetry.sdk.language",v9Q="telemetry.sdk.version",y9Q="telemetry.auto.version",g9Q="webengine.name",h9Q="webengine.version",x9Q="webengine.description";g8Q.SEMRESATTRS_CLOUD_PROVIDER=$JQ;g8Q.SEMRESATTRS_CLOUD_ACCOUNT_ID=UJQ;g8Q.SEMRESATTRS_CLOUD_REGION=EJQ;g8Q.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=KJQ;g8Q.SEMRESATTRS_CLOUD_PLATFORM=VJQ;g8Q.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=IJQ;g8Q.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=HJQ;g8Q.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=DJQ;g8Q.SEMRESATTRS_AWS_ECS_TASK_ARN=NJQ;g8Q.SEMRESATTRS_AWS_ECS_TASK_FAMILY=LJQ;g8Q.SEMRESATTRS_AWS_ECS_TASK_REVISION=qJQ;g8Q.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=MJQ;g8Q.SEMRESATTRS_AWS_LOG_GROUP_NAMES=zJQ;g8Q.SEMRESATTRS_AWS_LOG_GROUP_ARNS=RJQ;g8Q.SEMRESATTRS_AWS_LOG_STREAM_NAMES=wJQ;g8Q.SEMRESATTRS_AWS_LOG_STREAM_ARNS=jJQ;g8Q.SEMRESATTRS_CONTAINER_NAME=OJQ;g8Q.SEMRESATTRS_CONTAINER_ID=PJQ;g8Q.SEMRESATTRS_CONTAINER_RUNTIME=TJQ;g8Q.SEMRESATTRS_CONTAINER_IMAGE_NAME=SJQ;g8Q.SEMRESATTRS_CONTAINER_IMAGE_TAG=kJQ;g8Q.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=_JQ;g8Q.SEMRESATTRS_DEVICE_ID=vJQ;g8Q.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=yJQ;g8Q.SEMRESATTRS_DEVICE_MODEL_NAME=gJQ;g8Q.SEMRESATTRS_FAAS_NAME=hJQ;g8Q.SEMRESATTRS_FAAS_ID=xJQ;g8Q.SEMRESATTRS_FAAS_VERSION=fJQ;g8Q.SEMRESATTRS_FAAS_INSTANCE=bJQ;g8Q.SEMRESATTRS_FAAS_MAX_MEMORY=mJQ;g8Q.SEMRESATTRS_HOST_ID=uJQ;g8Q.SEMRESATTRS_HOST_NAME=dJQ;g8Q.SEMRESATTRS_HOST_TYPE=cJQ;g8Q.SEMRESATTRS_HOST_ARCH=lJQ;g8Q.SEMRESATTRS_HOST_IMAGE_NAME=pJQ;g8Q.SEMRESATTRS_HOST_IMAGE_ID=iJQ;g8Q.SEMRESATTRS_HOST_IMAGE_VERSION=nJQ;g8Q.SEMRESATTRS_K8S_CLUSTER_NAME=sJQ;g8Q.SEMRESATTRS_K8S_NODE_NAME=rJQ;g8Q.SEMRESATTRS_K8S_NODE_UID=aJQ;g8Q.SEMRESATTRS_K8S_NAMESPACE_NAME=oJQ;g8Q.SEMRESATTRS_K8S_POD_UID=tJQ;g8Q.SEMRESATTRS_K8S_POD_NAME=eJQ;g8Q.SEMRESATTRS_K8S_CONTAINER_NAME=A9Q;g8Q.SEMRESATTRS_K8S_REPLICASET_UID=Q9Q;g8Q.SEMRESATTRS_K8S_REPLICASET_NAME=B9Q;g8Q.SEMRESATTRS_K8S_DEPLOYMENT_UID=Y9Q;g8Q.SEMRESATTRS_K8S_DEPLOYMENT_NAME=J9Q;g8Q.SEMRESATTRS_K8S_STATEFULSET_UID=C9Q;g8Q.SEMRESATTRS_K8S_STATEFULSET_NAME=X9Q;g8Q.SEMRESATTRS_K8S_DAEMONSET_UID=G9Q;g8Q.SEMRESATTRS_K8S_DAEMONSET_NAME=W9Q;g8Q.SEMRESATTRS_K8S_JOB_UID=F9Q;g8Q.SEMRESATTRS_K8S_JOB_NAME=Z9Q;g8Q.SEMRESATTRS_K8S_CRONJOB_UID=$9Q;g8Q.SEMRESATTRS_K8S_CRONJOB_NAME=U9Q;g8Q.SEMRESATTRS_OS_TYPE=E9Q;g8Q.SEMRESATTRS_OS_DESCRIPTION=K9Q;g8Q.SEMRESATTRS_OS_NAME=V9Q;g8Q.SEMRESATTRS_OS_VERSION=I9Q;g8Q.SEMRESATTRS_PROCESS_PID=H9Q;g8Q.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=D9Q;g8Q.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=N9Q;g8Q.SEMRESATTRS_PROCESS_COMMAND=L9Q;g8Q.SEMRESATTRS_PROCESS_COMMAND_LINE=q9Q;g8Q.SEMRESATTRS_PROCESS_COMMAND_ARGS=M9Q;g8Q.SEMRESATTRS_PROCESS_OWNER=z9Q;g8Q.SEMRESATTRS_PROCESS_RUNTIME_NAME=R9Q;g8Q.SEMRESATTRS_PROCESS_RUNTIME_VERSION=w9Q;g8Q.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=j9Q;g8Q.SEMRESATTRS_SERVICE_NAME=O9Q;g8Q.SEMRESATTRS_SERVICE_NAMESPACE=P9Q;g8Q.SEMRESATTRS_SERVICE_INSTANCE_ID=T9Q;g8Q.SEMRESATTRS_SERVICE_VERSION=S9Q;g8Q.SEMRESATTRS_TELEMETRY_SDK_NAME=k9Q;g8Q.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=_9Q;g8Q.SEMRESATTRS_TELEMETRY_SDK_VERSION=v9Q;g8Q.SEMRESATTRS_TELEMETRY_AUTO_VERSION=y9Q;g8Q.SEMRESATTRS_WEBENGINE_NAME=g9Q;g8Q.SEMRESATTRS_WEBENGINE_VERSION=h9Q;g8Q.SEMRESATTRS_WEBENGINE_DESCRIPTION=x9Q;g8Q.SemanticResourceAttributes=(0,V$.createConstMap)([$JQ,UJQ,EJQ,KJQ,VJQ,IJQ,HJQ,DJQ,NJQ,LJQ,qJQ,MJQ,zJQ,RJQ,wJQ,jJQ,OJQ,PJQ,TJQ,SJQ,kJQ,_JQ,vJQ,yJQ,gJQ,hJQ,xJQ,fJQ,bJQ,mJQ,uJQ,dJQ,cJQ,lJQ,pJQ,iJQ,nJQ,sJQ,rJQ,aJQ,oJQ,tJQ,eJQ,A9Q,Q9Q,B9Q,Y9Q,J9Q,C9Q,X9Q,G9Q,W9Q,F9Q,Z9Q,$9Q,U9Q,E9Q,K9Q,V9Q,I9Q,H9Q,D9Q,N9Q,L9Q,q9Q,M9Q,z9Q,R9Q,w9Q,j9Q,O9Q,P9Q,T9Q,S9Q,k9Q,_9Q,v9Q,y9Q,g9Q,h9Q,x9Q]);var f9Q="alibaba_cloud",b9Q="aws",m9Q="azure",u9Q="gcp";g8Q.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=f9Q;g8Q.CLOUDPROVIDERVALUES_AWS=b9Q;g8Q.CLOUDPROVIDERVALUES_AZURE=m9Q;g8Q.CLOUDPROVIDERVALUES_GCP=u9Q;g8Q.CloudProviderValues=(0,V$.createConstMap)([f9Q,b9Q,m9Q,u9Q]);var d9Q="alibaba_cloud_ecs",c9Q="alibaba_cloud_fc",l9Q="aws_ec2",p9Q="aws_ecs",i9Q="aws_eks",n9Q="aws_lambda",s9Q="aws_elastic_beanstalk",r9Q="azure_vm",a9Q="azure_container_instances",o9Q="azure_aks",t9Q="azure_functions",e9Q="azure_app_service",A8Q="gcp_compute_engine",Q8Q="gcp_cloud_run",B8Q="gcp_kubernetes_engine",Y8Q="gcp_cloud_functions",J8Q="gcp_app_engine";g8Q.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=d9Q;g8Q.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=c9Q;g8Q.CLOUDPLATFORMVALUES_AWS_EC2=l9Q;g8Q.CLOUDPLATFORMVALUES_AWS_ECS=p9Q;g8Q.CLOUDPLATFORMVALUES_AWS_EKS=i9Q;g8Q.CLOUDPLATFORMVALUES_AWS_LAMBDA=n9Q;g8Q.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=s9Q;g8Q.CLOUDPLATFORMVALUES_AZURE_VM=r9Q;g8Q.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=a9Q;g8Q.CLOUDPLATFORMVALUES_AZURE_AKS=o9Q;g8Q.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=t9Q;g8Q.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=e9Q;g8Q.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=A8Q;g8Q.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=Q8Q;g8Q.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=B8Q;g8Q.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=Y8Q;g8Q.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=J8Q;g8Q.CloudPlatformValues=(0,V$.createConstMap)([d9Q,c9Q,l9Q,p9Q,i9Q,n9Q,s9Q,r9Q,a9Q,o9Q,t9Q,e9Q,A8Q,Q8Q,B8Q,Y8Q,J8Q]);var C8Q="ec2",X8Q="fargate";g8Q.AWSECSLAUNCHTYPEVALUES_EC2=C8Q;g8Q.AWSECSLAUNCHTYPEVALUES_FARGATE=X8Q;g8Q.AwsEcsLaunchtypeValues=(0,V$.createConstMap)([C8Q,X8Q]);var G8Q="amd64",W8Q="arm32",F8Q="arm64",Z8Q="ia64",$8Q="ppc32",U8Q="ppc64",E8Q="x86";g8Q.HOSTARCHVALUES_AMD64=G8Q;g8Q.HOSTARCHVALUES_ARM32=W8Q;g8Q.HOSTARCHVALUES_ARM64=F8Q;g8Q.HOSTARCHVALUES_IA64=Z8Q;g8Q.HOSTARCHVALUES_PPC32=$8Q;g8Q.HOSTARCHVALUES_PPC64=U8Q;g8Q.HOSTARCHVALUES_X86=E8Q;g8Q.HostArchValues=(0,V$.createConstMap)([G8Q,W8Q,F8Q,Z8Q,$8Q,U8Q,E8Q]);var K8Q="windows",V8Q="linux",I8Q="darwin",H8Q="freebsd",D8Q="netbsd",N8Q="openbsd",L8Q="dragonflybsd",q8Q="hpux",M8Q="aix",z8Q="solaris",R8Q="z_os";g8Q.OSTYPEVALUES_WINDOWS=K8Q;g8Q.OSTYPEVALUES_LINUX=V8Q;g8Q.OSTYPEVALUES_DARWIN=I8Q;g8Q.OSTYPEVALUES_FREEBSD=H8Q;g8Q.OSTYPEVALUES_NETBSD=D8Q;g8Q.OSTYPEVALUES_OPENBSD=N8Q;g8Q.OSTYPEVALUES_DRAGONFLYBSD=L8Q;g8Q.OSTYPEVALUES_HPUX=q8Q;g8Q.OSTYPEVALUES_AIX=M8Q;g8Q.OSTYPEVALUES_SOLARIS=z8Q;g8Q.OSTYPEVALUES_Z_OS=R8Q;g8Q.OsTypeValues=(0,V$.createConstMap)([K8Q,V8Q,I8Q,H8Q,D8Q,N8Q,L8Q,q8Q,M8Q,z8Q,R8Q]);var w8Q="cpp",j8Q="dotnet",O8Q="erlang",P8Q="go",T8Q="java",S8Q="nodejs",k8Q="php",_8Q="python",v8Q="ruby",y8Q="webjs";g8Q.TELEMETRYSDKLANGUAGEVALUES_CPP=w8Q;g8Q.TELEMETRYSDKLANGUAGEVALUES_DOTNET=j8Q;g8Q.TELEMETRYSDKLANGUAGEVALUES_ERLANG=O8Q;g8Q.TELEMETRYSDKLANGUAGEVALUES_GO=P8Q;g8Q.TELEMETRYSDKLANGUAGEVALUES_JAVA=T8Q;g8Q.TELEMETRYSDKLANGUAGEVALUES_NODEJS=S8Q;g8Q.TELEMETRYSDKLANGUAGEVALUES_PHP=k8Q;g8Q.TELEMETRYSDKLANGUAGEVALUES_PYTHON=_8Q;g8Q.TELEMETRYSDKLANGUAGEVALUES_RUBY=v8Q;g8Q.TELEMETRYSDKLANGUAGEVALUES_WEBJS=y8Q;g8Q.TelemetrySdkLanguageValues=(0,V$.createConstMap)([w8Q,j8Q,O8Q,P8Q,T8Q,S8Q,k8Q,_8Q,v8Q,y8Q])});var m8Q=R((I$)=>{var j10=I$&&I$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),O10=I$&&I$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))j10(Q,A,B)};Object.defineProperty(I$,"__esModule",{value:!0});O10(b8Q(),I$)});var p8Q=R((u8Q)=>{Object.defineProperty(u8Q,"__esModule",{value:!0});u8Q.HTTP_REQUEST_METHOD_VALUE_POST=u8Q.HTTP_REQUEST_METHOD_VALUE_PATCH=u8Q.HTTP_REQUEST_METHOD_VALUE_OPTIONS=u8Q.HTTP_REQUEST_METHOD_VALUE_HEAD=u8Q.HTTP_REQUEST_METHOD_VALUE_GET=u8Q.HTTP_REQUEST_METHOD_VALUE_DELETE=u8Q.HTTP_REQUEST_METHOD_VALUE_CONNECT=u8Q.HTTP_REQUEST_METHOD_VALUE_OTHER=u8Q.ATTR_HTTP_REQUEST_METHOD=u8Q.ATTR_HTTP_REQUEST_HEADER=u8Q.ATTR_EXCEPTION_TYPE=u8Q.ATTR_EXCEPTION_STACKTRACE=u8Q.ATTR_EXCEPTION_MESSAGE=u8Q.ATTR_EXCEPTION_ESCAPED=u8Q.ERROR_TYPE_VALUE_OTHER=u8Q.ATTR_ERROR_TYPE=u8Q.ATTR_CLIENT_PORT=u8Q.ATTR_CLIENT_ADDRESS=u8Q.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS=u8Q.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE=u8Q.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS=u8Q.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK=u8Q.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED=u8Q.ATTR_ASPNETCORE_RATE_LIMITING_POLICY=u8Q.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED=u8Q.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED=u8Q.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED=u8Q.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED=u8Q.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT=u8Q.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE=u8Q.ATTR_TELEMETRY_SDK_VERSION=u8Q.ATTR_TELEMETRY_SDK_NAME=u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS=u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT=u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_RUST=u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY=u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON=u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_PHP=u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS=u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA=u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_GO=u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG=u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET=u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_CPP=u8Q.ATTR_TELEMETRY_SDK_LANGUAGE=u8Q.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED=u8Q.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER=u8Q.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER=u8Q.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED=u8Q.ATTR_ASPNETCORE_RATE_LIMITING_RESULT=void 0;u8Q.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT=u8Q.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE=u8Q.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN=u8Q.ATTR_SIGNALR_CONNECTION_STATUS=u8Q.ATTR_SERVICE_VERSION=u8Q.ATTR_SERVICE_NAME=u8Q.ATTR_SERVER_PORT=u8Q.ATTR_SERVER_ADDRESS=u8Q.ATTR_OTEL_STATUS_DESCRIPTION=u8Q.OTEL_STATUS_CODE_VALUE_OK=u8Q.OTEL_STATUS_CODE_VALUE_ERROR=u8Q.ATTR_OTEL_STATUS_CODE=u8Q.ATTR_OTEL_SCOPE_VERSION=u8Q.ATTR_OTEL_SCOPE_NAME=u8Q.NETWORK_TYPE_VALUE_IPV6=u8Q.NETWORK_TYPE_VALUE_IPV4=u8Q.ATTR_NETWORK_TYPE=u8Q.NETWORK_TRANSPORT_VALUE_UNIX=u8Q.NETWORK_TRANSPORT_VALUE_UDP=u8Q.NETWORK_TRANSPORT_VALUE_TCP=u8Q.NETWORK_TRANSPORT_VALUE_QUIC=u8Q.NETWORK_TRANSPORT_VALUE_PIPE=u8Q.ATTR_NETWORK_TRANSPORT=u8Q.ATTR_NETWORK_PROTOCOL_VERSION=u8Q.ATTR_NETWORK_PROTOCOL_NAME=u8Q.ATTR_NETWORK_PEER_PORT=u8Q.ATTR_NETWORK_PEER_ADDRESS=u8Q.ATTR_NETWORK_LOCAL_PORT=u8Q.ATTR_NETWORK_LOCAL_ADDRESS=u8Q.JVM_THREAD_STATE_VALUE_WAITING=u8Q.JVM_THREAD_STATE_VALUE_TIMED_WAITING=u8Q.JVM_THREAD_STATE_VALUE_TERMINATED=u8Q.JVM_THREAD_STATE_VALUE_RUNNABLE=u8Q.JVM_THREAD_STATE_VALUE_NEW=u8Q.JVM_THREAD_STATE_VALUE_BLOCKED=u8Q.ATTR_JVM_THREAD_STATE=u8Q.ATTR_JVM_THREAD_DAEMON=u8Q.JVM_MEMORY_TYPE_VALUE_NON_HEAP=u8Q.JVM_MEMORY_TYPE_VALUE_HEAP=u8Q.ATTR_JVM_MEMORY_TYPE=u8Q.ATTR_JVM_MEMORY_POOL_NAME=u8Q.ATTR_JVM_GC_NAME=u8Q.ATTR_JVM_GC_ACTION=u8Q.ATTR_HTTP_ROUTE=u8Q.ATTR_HTTP_RESPONSE_STATUS_CODE=u8Q.ATTR_HTTP_RESPONSE_HEADER=u8Q.ATTR_HTTP_REQUEST_RESEND_COUNT=u8Q.ATTR_HTTP_REQUEST_METHOD_ORIGINAL=u8Q.HTTP_REQUEST_METHOD_VALUE_TRACE=u8Q.HTTP_REQUEST_METHOD_VALUE_PUT=void 0;u8Q.ATTR_USER_AGENT_ORIGINAL=u8Q.ATTR_URL_SCHEME=u8Q.ATTR_URL_QUERY=u8Q.ATTR_URL_PATH=u8Q.ATTR_URL_FULL=u8Q.ATTR_URL_FRAGMENT=u8Q.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS=u8Q.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS=u8Q.SIGNALR_TRANSPORT_VALUE_LONG_POLLING=u8Q.ATTR_SIGNALR_TRANSPORT=void 0;u8Q.ATTR_ASPNETCORE_RATE_LIMITING_RESULT="aspnetcore.rate_limiting.result";u8Q.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED="acquired";u8Q.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER="endpoint_limiter";u8Q.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER="global_limiter";u8Q.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED="request_canceled";u8Q.ATTR_TELEMETRY_SDK_LANGUAGE="telemetry.sdk.language";u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_CPP="cpp";u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET="dotnet";u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG="erlang";u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_GO="go";u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA="java";u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS="nodejs";u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_PHP="php";u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON="python";u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY="ruby";u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_RUST="rust";u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT="swift";u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS="webjs";u8Q.ATTR_TELEMETRY_SDK_NAME="telemetry.sdk.name";u8Q.ATTR_TELEMETRY_SDK_VERSION="telemetry.sdk.version";u8Q.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE="aspnetcore.diagnostics.handler.type";u8Q.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT="aspnetcore.diagnostics.exception.result";u8Q.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED="aborted";u8Q.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED="handled";u8Q.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED="skipped";u8Q.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED="unhandled";u8Q.ATTR_ASPNETCORE_RATE_LIMITING_POLICY="aspnetcore.rate_limiting.policy";u8Q.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED="aspnetcore.request.is_unhandled";u8Q.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK="aspnetcore.routing.is_fallback";u8Q.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS="aspnetcore.routing.match_status";u8Q.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE="failure";u8Q.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS="success";u8Q.ATTR_CLIENT_ADDRESS="client.address";u8Q.ATTR_CLIENT_PORT="client.port";u8Q.ATTR_ERROR_TYPE="error.type";u8Q.ERROR_TYPE_VALUE_OTHER="_OTHER";u8Q.ATTR_EXCEPTION_ESCAPED="exception.escaped";u8Q.ATTR_EXCEPTION_MESSAGE="exception.message";u8Q.ATTR_EXCEPTION_STACKTRACE="exception.stacktrace";u8Q.ATTR_EXCEPTION_TYPE="exception.type";var P10=(A)=>`http.request.header.${A}`;u8Q.ATTR_HTTP_REQUEST_HEADER=P10;u8Q.ATTR_HTTP_REQUEST_METHOD="http.request.method";u8Q.HTTP_REQUEST_METHOD_VALUE_OTHER="_OTHER";u8Q.HTTP_REQUEST_METHOD_VALUE_CONNECT="CONNECT";u8Q.HTTP_REQUEST_METHOD_VALUE_DELETE="DELETE";u8Q.HTTP_REQUEST_METHOD_VALUE_GET="GET";u8Q.HTTP_REQUEST_METHOD_VALUE_HEAD="HEAD";u8Q.HTTP_REQUEST_METHOD_VALUE_OPTIONS="OPTIONS";u8Q.HTTP_REQUEST_METHOD_VALUE_PATCH="PATCH";u8Q.HTTP_REQUEST_METHOD_VALUE_POST="POST";u8Q.HTTP_REQUEST_METHOD_VALUE_PUT="PUT";u8Q.HTTP_REQUEST_METHOD_VALUE_TRACE="TRACE";u8Q.ATTR_HTTP_REQUEST_METHOD_ORIGINAL="http.request.method_original";u8Q.ATTR_HTTP_REQUEST_RESEND_COUNT="http.request.resend_count";var T10=(A)=>`http.response.header.${A}`;u8Q.ATTR_HTTP_RESPONSE_HEADER=T10;u8Q.ATTR_HTTP_RESPONSE_STATUS_CODE="http.response.status_code";u8Q.ATTR_HTTP_ROUTE="http.route";u8Q.ATTR_JVM_GC_ACTION="jvm.gc.action";u8Q.ATTR_JVM_GC_NAME="jvm.gc.name";u8Q.ATTR_JVM_MEMORY_POOL_NAME="jvm.memory.pool.name";u8Q.ATTR_JVM_MEMORY_TYPE="jvm.memory.type";u8Q.JVM_MEMORY_TYPE_VALUE_HEAP="heap";u8Q.JVM_MEMORY_TYPE_VALUE_NON_HEAP="non_heap";u8Q.ATTR_JVM_THREAD_DAEMON="jvm.thread.daemon";u8Q.ATTR_JVM_THREAD_STATE="jvm.thread.state";u8Q.JVM_THREAD_STATE_VALUE_BLOCKED="blocked";u8Q.JVM_THREAD_STATE_VALUE_NEW="new";u8Q.JVM_THREAD_STATE_VALUE_RUNNABLE="runnable";u8Q.JVM_THREAD_STATE_VALUE_TERMINATED="terminated";u8Q.JVM_THREAD_STATE_VALUE_TIMED_WAITING="timed_waiting";u8Q.JVM_THREAD_STATE_VALUE_WAITING="waiting";u8Q.ATTR_NETWORK_LOCAL_ADDRESS="network.local.address";u8Q.ATTR_NETWORK_LOCAL_PORT="network.local.port";u8Q.ATTR_NETWORK_PEER_ADDRESS="network.peer.address";u8Q.ATTR_NETWORK_PEER_PORT="network.peer.port";u8Q.ATTR_NETWORK_PROTOCOL_NAME="network.protocol.name";u8Q.ATTR_NETWORK_PROTOCOL_VERSION="network.protocol.version";u8Q.ATTR_NETWORK_TRANSPORT="network.transport";u8Q.NETWORK_TRANSPORT_VALUE_PIPE="pipe";u8Q.NETWORK_TRANSPORT_VALUE_QUIC="quic";u8Q.NETWORK_TRANSPORT_VALUE_TCP="tcp";u8Q.NETWORK_TRANSPORT_VALUE_UDP="udp";u8Q.NETWORK_TRANSPORT_VALUE_UNIX="unix";u8Q.ATTR_NETWORK_TYPE="network.type";u8Q.NETWORK_TYPE_VALUE_IPV4="ipv4";u8Q.NETWORK_TYPE_VALUE_IPV6="ipv6";u8Q.ATTR_OTEL_SCOPE_NAME="otel.scope.name";u8Q.ATTR_OTEL_SCOPE_VERSION="otel.scope.version";u8Q.ATTR_OTEL_STATUS_CODE="otel.status_code";u8Q.OTEL_STATUS_CODE_VALUE_ERROR="ERROR";u8Q.OTEL_STATUS_CODE_VALUE_OK="OK";u8Q.ATTR_OTEL_STATUS_DESCRIPTION="otel.status_description";u8Q.ATTR_SERVER_ADDRESS="server.address";u8Q.ATTR_SERVER_PORT="server.port";u8Q.ATTR_SERVICE_NAME="service.name";u8Q.ATTR_SERVICE_VERSION="service.version";u8Q.ATTR_SIGNALR_CONNECTION_STATUS="signalr.connection.status";u8Q.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN="app_shutdown";u8Q.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE="normal_closure";u8Q.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT="timeout";u8Q.ATTR_SIGNALR_TRANSPORT="signalr.transport";u8Q.SIGNALR_TRANSPORT_VALUE_LONG_POLLING="long_polling";u8Q.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS="server_sent_events";u8Q.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS="web_sockets";u8Q.ATTR_URL_FRAGMENT="url.fragment";u8Q.ATTR_URL_FULL="url.full";u8Q.ATTR_URL_PATH="url.path";u8Q.ATTR_URL_QUERY="url.query";u8Q.ATTR_URL_SCHEME="url.scheme";u8Q.ATTR_USER_AGENT_ORIGINAL="user_agent.original"});var s8Q=R((i8Q)=>{Object.defineProperty(i8Q,"__esModule",{value:!0});i8Q.METRIC_SIGNALR_SERVER_CONNECTION_DURATION=i8Q.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS=i8Q.METRIC_KESTREL_UPGRADED_CONNECTIONS=i8Q.METRIC_KESTREL_TLS_HANDSHAKE_DURATION=i8Q.METRIC_KESTREL_REJECTED_CONNECTIONS=i8Q.METRIC_KESTREL_QUEUED_REQUESTS=i8Q.METRIC_KESTREL_QUEUED_CONNECTIONS=i8Q.METRIC_KESTREL_CONNECTION_DURATION=i8Q.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES=i8Q.METRIC_KESTREL_ACTIVE_CONNECTIONS=i8Q.METRIC_JVM_THREAD_COUNT=i8Q.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC=i8Q.METRIC_JVM_MEMORY_USED=i8Q.METRIC_JVM_MEMORY_LIMIT=i8Q.METRIC_JVM_MEMORY_COMMITTED=i8Q.METRIC_JVM_GC_DURATION=i8Q.METRIC_JVM_CPU_TIME=i8Q.METRIC_JVM_CPU_RECENT_UTILIZATION=i8Q.METRIC_JVM_CPU_COUNT=i8Q.METRIC_JVM_CLASS_UNLOADED=i8Q.METRIC_JVM_CLASS_LOADED=i8Q.METRIC_JVM_CLASS_COUNT=i8Q.METRIC_HTTP_SERVER_REQUEST_DURATION=i8Q.METRIC_HTTP_CLIENT_REQUEST_DURATION=i8Q.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS=i8Q.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS=i8Q.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION=i8Q.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE=i8Q.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS=i8Q.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES=i8Q.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS=void 0;i8Q.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS="aspnetcore.diagnostics.exceptions";i8Q.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES="aspnetcore.rate_limiting.active_request_leases";i8Q.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS="aspnetcore.rate_limiting.queued_requests";i8Q.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE="aspnetcore.rate_limiting.request.time_in_queue";i8Q.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION="aspnetcore.rate_limiting.request_lease.duration";i8Q.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS="aspnetcore.rate_limiting.requests";i8Q.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS="aspnetcore.routing.match_attempts";i8Q.METRIC_HTTP_CLIENT_REQUEST_DURATION="http.client.request.duration";i8Q.METRIC_HTTP_SERVER_REQUEST_DURATION="http.server.request.duration";i8Q.METRIC_JVM_CLASS_COUNT="jvm.class.count";i8Q.METRIC_JVM_CLASS_LOADED="jvm.class.loaded";i8Q.METRIC_JVM_CLASS_UNLOADED="jvm.class.unloaded";i8Q.METRIC_JVM_CPU_COUNT="jvm.cpu.count";i8Q.METRIC_JVM_CPU_RECENT_UTILIZATION="jvm.cpu.recent_utilization";i8Q.METRIC_JVM_CPU_TIME="jvm.cpu.time";i8Q.METRIC_JVM_GC_DURATION="jvm.gc.duration";i8Q.METRIC_JVM_MEMORY_COMMITTED="jvm.memory.committed";i8Q.METRIC_JVM_MEMORY_LIMIT="jvm.memory.limit";i8Q.METRIC_JVM_MEMORY_USED="jvm.memory.used";i8Q.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC="jvm.memory.used_after_last_gc";i8Q.METRIC_JVM_THREAD_COUNT="jvm.thread.count";i8Q.METRIC_KESTREL_ACTIVE_CONNECTIONS="kestrel.active_connections";i8Q.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES="kestrel.active_tls_handshakes";i8Q.METRIC_KESTREL_CONNECTION_DURATION="kestrel.connection.duration";i8Q.METRIC_KESTREL_QUEUED_CONNECTIONS="kestrel.queued_connections";i8Q.METRIC_KESTREL_QUEUED_REQUESTS="kestrel.queued_requests";i8Q.METRIC_KESTREL_REJECTED_CONNECTIONS="kestrel.rejected_connections";i8Q.METRIC_KESTREL_TLS_HANDSHAKE_DURATION="kestrel.tls_handshake.duration";i8Q.METRIC_KESTREL_UPGRADED_CONNECTIONS="kestrel.upgraded_connections";i8Q.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS="signalr.server.active_connections";i8Q.METRIC_SIGNALR_SERVER_CONNECTION_DURATION="signalr.server.connection.duration"});var r8Q=R((VX)=>{var CG0=VX&&VX.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),CP=VX&&VX.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))CG0(Q,A,B)};Object.defineProperty(VX,"__esModule",{value:!0});CP(ZJQ(),VX);CP(m8Q(),VX);CP(p8Q(),VX);CP(s8Q(),VX)});var t8Q=R((a8Q)=>{Object.defineProperty(a8Q,"__esModule",{value:!0});a8Q.ExceptionEventName=void 0;a8Q.ExceptionEventName="exception"});var Ci=R((A5Q)=>{Object.defineProperty(A5Q,"__esModule",{value:!0});A5Q.Span=void 0;var n5=yA(),gJ=MB(),H$=r8Q(),XG0=t8Q();class e8Q{constructor(A,Q,B,Y,J,C,X=[],G,W,F){this.attributes={},this.links=[],this.events=[],this._droppedAttributesCount=0,this._droppedEventsCount=0,this._droppedLinksCount=0,this.status={code:n5.SpanStatusCode.UNSET},this.endTime=[0,0],this._ended=!1,this._duration=[-1,-1],this.name=B,this._spanContext=Y,this.parentSpanId=C,this.kind=J,this.links=X;let Z=Date.now();if(this._performanceStartTime=gJ.otperformance.now(),this._performanceOffset=Z-(this._performanceStartTime+(0,gJ.getTimeOrigin)()),this._startTimeProvided=G!=null,this.startTime=this._getTime(G!==null&&G!==void 0?G:Z),this.resource=A.resource,this.instrumentationLibrary=A.instrumentationLibrary,this._spanLimits=A.getSpanLimits(),this._attributeValueLengthLimit=this._spanLimits.attributeValueLengthLimit||0,F!=null)this.setAttributes(F);this._spanProcessor=A.getActiveSpanProcessor(),this._spanProcessor.onStart(this,Q)}spanContext(){return this._spanContext}setAttribute(A,Q){if(Q==null||this._isSpanEnded())return this;if(A.length===0)return n5.diag.warn(`Invalid attribute key: ${A}`),this;if(!(0,gJ.isAttributeValue)(Q))return n5.diag.warn(`Invalid attribute value set for key: ${A}`),this;if(Object.keys(this.attributes).length>=this._spanLimits.attributeCountLimit&&!Object.prototype.hasOwnProperty.call(this.attributes,A))return this._droppedAttributesCount++,this;return this.attributes[A]=this._truncateToSize(Q),this}setAttributes(A){for(let[Q,B]of Object.entries(A))this.setAttribute(Q,B);return this}addEvent(A,Q,B){if(this._isSpanEnded())return this;if(this._spanLimits.eventCountLimit===0)return n5.diag.warn("No events allowed."),this._droppedEventsCount++,this;if(this.events.length>=this._spanLimits.eventCountLimit){if(this._droppedEventsCount===0)n5.diag.debug("Dropping extra events.");this.events.shift(),this._droppedEventsCount++}if((0,gJ.isTimeInput)(Q)){if(!(0,gJ.isTimeInput)(B))B=Q;Q=void 0}let Y=(0,gJ.sanitizeAttributes)(Q);return this.events.push({name:A,attributes:Y,time:this._getTime(B),droppedAttributesCount:0}),this}addLink(A){return this.links.push(A),this}addLinks(A){return this.links.push(...A),this}setStatus(A){if(this._isSpanEnded())return this;if(this.status=Object.assign({},A),this.status.message!=null&&typeof A.message!=="string")n5.diag.warn(`Dropping invalid status.message of type '${typeof A.message}', expected 'string'`),delete this.status.message;return this}updateName(A){if(this._isSpanEnded())return this;return this.name=A,this}end(A){if(this._isSpanEnded()){n5.diag.error(`${this.name} ${this._spanContext.traceId}-${this._spanContext.spanId} - You can only call end() on a span once.`);return}if(this._ended=!0,this.endTime=this._getTime(A),this._duration=(0,gJ.hrTimeDuration)(this.startTime,this.endTime),this._duration[0]<0)n5.diag.warn("Inconsistent start and end time, startTime > endTime. Setting span duration to 0ms.",this.startTime,this.endTime),this.endTime=this.startTime.slice(),this._duration=[0,0];if(this._droppedEventsCount>0)n5.diag.warn(`Dropped ${this._droppedEventsCount} events because eventCountLimit reached`);this._spanProcessor.onEnd(this)}_getTime(A){if(typeof A==="number"&&A<=gJ.otperformance.now())return(0,gJ.hrTime)(A+this._performanceOffset);if(typeof A==="number")return(0,gJ.millisToHrTime)(A);if(A instanceof Date)return(0,gJ.millisToHrTime)(A.getTime());if((0,gJ.isTimeInputHrTime)(A))return A;if(this._startTimeProvided)return(0,gJ.millisToHrTime)(Date.now());let Q=gJ.otperformance.now()-this._performanceStartTime;return(0,gJ.addHrTimes)(this.startTime,(0,gJ.millisToHrTime)(Q))}isRecording(){return this._ended===!1}recordException(A,Q){let B={};if(typeof A==="string")B[H$.SEMATTRS_EXCEPTION_MESSAGE]=A;else if(A){if(A.code)B[H$.SEMATTRS_EXCEPTION_TYPE]=A.code.toString();else if(A.name)B[H$.SEMATTRS_EXCEPTION_TYPE]=A.name;if(A.message)B[H$.SEMATTRS_EXCEPTION_MESSAGE]=A.message;if(A.stack)B[H$.SEMATTRS_EXCEPTION_STACKTRACE]=A.stack}if(B[H$.SEMATTRS_EXCEPTION_TYPE]||B[H$.SEMATTRS_EXCEPTION_MESSAGE])this.addEvent(XG0.ExceptionEventName,B,Q);else n5.diag.warn(`Failed to record an exception ${A}`)}get duration(){return this._duration}get ended(){return this._ended}get droppedAttributesCount(){return this._droppedAttributesCount}get droppedEventsCount(){return this._droppedEventsCount}get droppedLinksCount(){return this._droppedLinksCount}_isSpanEnded(){if(this._ended)n5.diag.warn(`Can not execute the operation on ended Span {traceId: ${this._spanContext.traceId}, spanId: ${this._spanContext.spanId}}`);return this._ended}_truncateToLimitUtil(A,Q){if(A.length<=Q)return A;return A.substring(0,Q)}_truncateToSize(A){let Q=this._attributeValueLengthLimit;if(Q<=0)return n5.diag.warn(`Attribute value limit must be positive, got ${Q}`),A;if(typeof A==="string")return this._truncateToLimitUtil(A,Q);if(Array.isArray(A))return A.map((B)=>typeof B==="string"?this._truncateToLimitUtil(B,Q):B);return A}}A5Q.Span=e8Q});var OL=R((B5Q)=>{Object.defineProperty(B5Q,"__esModule",{value:!0});B5Q.SamplingDecision=void 0;var GG0;(function(A){A[A.NOT_RECORD=0]="NOT_RECORD",A[A.RECORD=1]="RECORD",A[A.RECORD_AND_SAMPLED=2]="RECORD_AND_SAMPLED"})(GG0=B5Q.SamplingDecision||(B5Q.SamplingDecision={}))});var XP=R((J5Q)=>{Object.defineProperty(J5Q,"__esModule",{value:!0});J5Q.AlwaysOffSampler=void 0;var WG0=OL();class Y5Q{shouldSample(){return{decision:WG0.SamplingDecision.NOT_RECORD}}toString(){return"AlwaysOffSampler"}}J5Q.AlwaysOffSampler=Y5Q});var GP=R((G5Q)=>{Object.defineProperty(G5Q,"__esModule",{value:!0});G5Q.AlwaysOnSampler=void 0;var FG0=OL();class X5Q{shouldSample(){return{decision:FG0.SamplingDecision.RECORD_AND_SAMPLED}}toString(){return"AlwaysOnSampler"}}G5Q.AlwaysOnSampler=X5Q});var Wi=R(($5Q)=>{Object.defineProperty($5Q,"__esModule",{value:!0});$5Q.ParentBasedSampler=void 0;var WP=yA(),ZG0=MB(),F5Q=XP(),Gi=GP();class Z5Q{constructor(A){var Q,B,Y,J;if(this._root=A.root,!this._root)(0,ZG0.globalErrorHandler)(Error("ParentBasedSampler must have a root sampler configured")),this._root=new Gi.AlwaysOnSampler;this._remoteParentSampled=(Q=A.remoteParentSampled)!==null&&Q!==void 0?Q:new Gi.AlwaysOnSampler,this._remoteParentNotSampled=(B=A.remoteParentNotSampled)!==null&&B!==void 0?B:new F5Q.AlwaysOffSampler,this._localParentSampled=(Y=A.localParentSampled)!==null&&Y!==void 0?Y:new Gi.AlwaysOnSampler,this._localParentNotSampled=(J=A.localParentNotSampled)!==null&&J!==void 0?J:new F5Q.AlwaysOffSampler}shouldSample(A,Q,B,Y,J,C){let X=WP.trace.getSpanContext(A);if(!X||!(0,WP.isSpanContextValid)(X))return this._root.shouldSample(A,Q,B,Y,J,C);if(X.isRemote){if(X.traceFlags&WP.TraceFlags.SAMPLED)return this._remoteParentSampled.shouldSample(A,Q,B,Y,J,C);return this._remoteParentNotSampled.shouldSample(A,Q,B,Y,J,C)}if(X.traceFlags&WP.TraceFlags.SAMPLED)return this._localParentSampled.shouldSample(A,Q,B,Y,J,C);return this._localParentNotSampled.shouldSample(A,Q,B,Y,J,C)}toString(){return`ParentBased{root=${this._root.toString()}, remoteParentSampled=${this._remoteParentSampled.toString()}, remoteParentNotSampled=${this._remoteParentNotSampled.toString()}, localParentSampled=${this._localParentSampled.toString()}, localParentNotSampled=${this._localParentNotSampled.toString()}}`}}$5Q.ParentBasedSampler=Z5Q});var Fi=R((V5Q)=>{Object.defineProperty(V5Q,"__esModule",{value:!0});V5Q.TraceIdRatioBasedSampler=void 0;var $G0=yA(),E5Q=OL();class K5Q{constructor(A=0){this._ratio=A,this._ratio=this._normalize(A),this._upperBound=Math.floor(this._ratio*4294967295)}shouldSample(A,Q){return{decision:(0,$G0.isValidTraceId)(Q)&&this._accumulate(Q)=1?1:A<=0?0:A}_accumulate(A){let Q=0;for(let B=0;B>>0}return Q}}V5Q.TraceIdRatioBasedSampler=K5Q});var Ui=R((q5Q)=>{Object.defineProperty(q5Q,"__esModule",{value:!0});q5Q.buildSamplerFromEnv=q5Q.loadDefaultConfig=void 0;var FP=yA(),ZG=MB(),H5Q=XP(),Zi=GP(),$i=Wi(),D5Q=Fi(),UG0=ZG.TracesSamplerValues.AlwaysOn,VK=1;function EG0(){let A=(0,ZG.getEnv)();return{sampler:L5Q(A),forceFlushTimeoutMillis:30000,generalLimits:{attributeValueLengthLimit:A.OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT,attributeCountLimit:A.OTEL_ATTRIBUTE_COUNT_LIMIT},spanLimits:{attributeValueLengthLimit:A.OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT,attributeCountLimit:A.OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT,linkCountLimit:A.OTEL_SPAN_LINK_COUNT_LIMIT,eventCountLimit:A.OTEL_SPAN_EVENT_COUNT_LIMIT,attributePerEventCountLimit:A.OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT,attributePerLinkCountLimit:A.OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT},mergeResourceWithDefaults:!0}}q5Q.loadDefaultConfig=EG0;function L5Q(A=(0,ZG.getEnv)()){switch(A.OTEL_TRACES_SAMPLER){case ZG.TracesSamplerValues.AlwaysOn:return new Zi.AlwaysOnSampler;case ZG.TracesSamplerValues.AlwaysOff:return new H5Q.AlwaysOffSampler;case ZG.TracesSamplerValues.ParentBasedAlwaysOn:return new $i.ParentBasedSampler({root:new Zi.AlwaysOnSampler});case ZG.TracesSamplerValues.ParentBasedAlwaysOff:return new $i.ParentBasedSampler({root:new H5Q.AlwaysOffSampler});case ZG.TracesSamplerValues.TraceIdRatio:return new D5Q.TraceIdRatioBasedSampler(N5Q(A));case ZG.TracesSamplerValues.ParentBasedTraceIdRatio:return new $i.ParentBasedSampler({root:new D5Q.TraceIdRatioBasedSampler(N5Q(A))});default:return FP.diag.error(`OTEL_TRACES_SAMPLER value "${A.OTEL_TRACES_SAMPLER} invalid, defaulting to ${UG0}".`),new Zi.AlwaysOnSampler}}q5Q.buildSamplerFromEnv=L5Q;function N5Q(A){if(A.OTEL_TRACES_SAMPLER_ARG===void 0||A.OTEL_TRACES_SAMPLER_ARG==="")return FP.diag.error(`OTEL_TRACES_SAMPLER_ARG is blank, defaulting to ${VK}.`),VK;let Q=Number(A.OTEL_TRACES_SAMPLER_ARG);if(isNaN(Q))return FP.diag.error(`OTEL_TRACES_SAMPLER_ARG=${A.OTEL_TRACES_SAMPLER_ARG} was given, but it is invalid, defaulting to ${VK}.`),VK;if(Q<0||Q>1)return FP.diag.error(`OTEL_TRACES_SAMPLER_ARG=${A.OTEL_TRACES_SAMPLER_ARG} was given, but it is out of range ([0..1]), defaulting to ${VK}.`),VK;return Q}});var Ki=R((R5Q)=>{Object.defineProperty(R5Q,"__esModule",{value:!0});R5Q.reconfigureLimits=R5Q.mergeConfig=void 0;var z5Q=Ui(),Ei=MB();function VG0(A){let Q={sampler:(0,z5Q.buildSamplerFromEnv)()},B=(0,z5Q.loadDefaultConfig)(),Y=Object.assign({},B,Q,A);return Y.generalLimits=Object.assign({},B.generalLimits,A.generalLimits||{}),Y.spanLimits=Object.assign({},B.spanLimits,A.spanLimits||{}),Y}R5Q.mergeConfig=VG0;function IG0(A){var Q,B,Y,J,C,X,G,W,F,Z,U,$;let E=Object.assign({},A.spanLimits),K=(0,Ei.getEnvWithoutDefaults)();return E.attributeCountLimit=(X=(C=(J=(B=(Q=A.spanLimits)===null||Q===void 0?void 0:Q.attributeCountLimit)!==null&&B!==void 0?B:(Y=A.generalLimits)===null||Y===void 0?void 0:Y.attributeCountLimit)!==null&&J!==void 0?J:K.OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT)!==null&&C!==void 0?C:K.OTEL_ATTRIBUTE_COUNT_LIMIT)!==null&&X!==void 0?X:Ei.DEFAULT_ATTRIBUTE_COUNT_LIMIT,E.attributeValueLengthLimit=($=(U=(Z=(W=(G=A.spanLimits)===null||G===void 0?void 0:G.attributeValueLengthLimit)!==null&&W!==void 0?W:(F=A.generalLimits)===null||F===void 0?void 0:F.attributeValueLengthLimit)!==null&&Z!==void 0?Z:K.OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT)!==null&&U!==void 0?U:K.OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT)!==null&&$!==void 0?$:Ei.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,Object.assign({},A,{spanLimits:E})}R5Q.reconfigureLimits=IG0});var T5Q=R((O5Q)=>{Object.defineProperty(O5Q,"__esModule",{value:!0});O5Q.BatchSpanProcessorBase=void 0;var IK=yA(),D$=MB();class j5Q{constructor(A,Q){this._exporter=A,this._isExporting=!1,this._finishedSpans=[],this._droppedSpansCount=0;let B=(0,D$.getEnv)();if(this._maxExportBatchSize=typeof(Q===null||Q===void 0?void 0:Q.maxExportBatchSize)==="number"?Q.maxExportBatchSize:B.OTEL_BSP_MAX_EXPORT_BATCH_SIZE,this._maxQueueSize=typeof(Q===null||Q===void 0?void 0:Q.maxQueueSize)==="number"?Q.maxQueueSize:B.OTEL_BSP_MAX_QUEUE_SIZE,this._scheduledDelayMillis=typeof(Q===null||Q===void 0?void 0:Q.scheduledDelayMillis)==="number"?Q.scheduledDelayMillis:B.OTEL_BSP_SCHEDULE_DELAY,this._exportTimeoutMillis=typeof(Q===null||Q===void 0?void 0:Q.exportTimeoutMillis)==="number"?Q.exportTimeoutMillis:B.OTEL_BSP_EXPORT_TIMEOUT,this._shutdownOnce=new D$.BindOnceFuture(this._shutdown,this),this._maxExportBatchSize>this._maxQueueSize)IK.diag.warn("BatchSpanProcessor: maxExportBatchSize must be smaller or equal to maxQueueSize, setting maxExportBatchSize to match maxQueueSize"),this._maxExportBatchSize=this._maxQueueSize}forceFlush(){if(this._shutdownOnce.isCalled)return this._shutdownOnce.promise;return this._flushAll()}onStart(A,Q){}onEnd(A){if(this._shutdownOnce.isCalled)return;if((A.spanContext().traceFlags&IK.TraceFlags.SAMPLED)===0)return;this._addToBuffer(A)}shutdown(){return this._shutdownOnce.call()}_shutdown(){return Promise.resolve().then(()=>{return this.onShutdown()}).then(()=>{return this._flushAll()}).then(()=>{return this._exporter.shutdown()})}_addToBuffer(A){if(this._finishedSpans.length>=this._maxQueueSize){if(this._droppedSpansCount===0)IK.diag.debug("maxQueueSize reached, dropping spans");this._droppedSpansCount++;return}if(this._droppedSpansCount>0)IK.diag.warn(`Dropped ${this._droppedSpansCount} spans because maxQueueSize reached`),this._droppedSpansCount=0;this._finishedSpans.push(A),this._maybeStartTimer()}_flushAll(){return new Promise((A,Q)=>{let B=[],Y=Math.ceil(this._finishedSpans.length/this._maxExportBatchSize);for(let J=0,C=Y;J{A()}).catch(Q)})}_flushOneBatch(){if(this._clearTimer(),this._finishedSpans.length===0)return Promise.resolve();return new Promise((A,Q)=>{let B=setTimeout(()=>{Q(Error("Timeout"))},this._exportTimeoutMillis);IK.context.with((0,D$.suppressTracing)(IK.context.active()),()=>{let Y;if(this._finishedSpans.length<=this._maxExportBatchSize)Y=this._finishedSpans,this._finishedSpans=[];else Y=this._finishedSpans.splice(0,this._maxExportBatchSize);let J=()=>this._exporter.export(Y,(X)=>{var G;if(clearTimeout(B),X.code===D$.ExportResultCode.SUCCESS)A();else Q((G=X.error)!==null&&G!==void 0?G:Error("BatchSpanProcessor: span export failed"))}),C=null;for(let X=0,G=Y.length;X{(0,D$.globalErrorHandler)(X),Q(X)})})})}_maybeStartTimer(){if(this._isExporting)return;let A=()=>{this._isExporting=!0,this._flushOneBatch().finally(()=>{if(this._isExporting=!1,this._finishedSpans.length>0)this._clearTimer(),this._maybeStartTimer()}).catch((Q)=>{this._isExporting=!1,(0,D$.globalErrorHandler)(Q)})};if(this._finishedSpans.length>=this._maxExportBatchSize)return A();if(this._timer!==void 0)return;this._timer=setTimeout(()=>A(),this._scheduledDelayMillis),(0,D$.unrefTimer)(this._timer)}_clearTimer(){if(this._timer!==void 0)clearTimeout(this._timer),this._timer=void 0}}O5Q.BatchSpanProcessorBase=j5Q});var v5Q=R((k5Q)=>{Object.defineProperty(k5Q,"__esModule",{value:!0});k5Q.BatchSpanProcessor=void 0;var DG0=T5Q();class S5Q extends DG0.BatchSpanProcessorBase{onShutdown(){}}k5Q.BatchSpanProcessor=S5Q});var b5Q=R((x5Q)=>{Object.defineProperty(x5Q,"__esModule",{value:!0});x5Q.RandomIdGenerator=void 0;var NG0=8,g5Q=16;class h5Q{constructor(){this.generateTraceId=y5Q(g5Q),this.generateSpanId=y5Q(NG0)}}x5Q.RandomIdGenerator=h5Q;var ZP=Buffer.allocUnsafe(g5Q);function y5Q(A){return function(){for(let B=0;B>>0,B*4);for(let B=0;B0)break;else if(B===A-1)ZP[A-1]=1;return ZP.toString("hex",0,A)}}});var m5Q=R(($P)=>{Object.defineProperty($P,"__esModule",{value:!0});$P.RandomIdGenerator=$P.BatchSpanProcessor=void 0;var LG0=v5Q();Object.defineProperty($P,"BatchSpanProcessor",{enumerable:!0,get:function(){return LG0.BatchSpanProcessor}});var qG0=b5Q();Object.defineProperty($P,"RandomIdGenerator",{enumerable:!0,get:function(){return qG0.RandomIdGenerator}})});var EP=R((UP)=>{Object.defineProperty(UP,"__esModule",{value:!0});UP.RandomIdGenerator=UP.BatchSpanProcessor=void 0;var u5Q=m5Q();Object.defineProperty(UP,"BatchSpanProcessor",{enumerable:!0,get:function(){return u5Q.BatchSpanProcessor}});Object.defineProperty(UP,"RandomIdGenerator",{enumerable:!0,get:function(){return u5Q.RandomIdGenerator}})});var Vi=R((c5Q)=>{Object.defineProperty(c5Q,"__esModule",{value:!0});c5Q.Tracer=void 0;var EJ=yA(),KP=MB(),RG0=Ci(),wG0=Ki(),jG0=EP();class d5Q{constructor(A,Q,B){this._tracerProvider=B;let Y=(0,wG0.mergeConfig)(Q);this._sampler=Y.sampler,this._generalLimits=Y.generalLimits,this._spanLimits=Y.spanLimits,this._idGenerator=Q.idGenerator||new jG0.RandomIdGenerator,this.resource=B.resource,this.instrumentationLibrary=A}startSpan(A,Q={},B=EJ.context.active()){var Y,J,C;if(Q.root)B=EJ.trace.deleteSpan(B);let X=EJ.trace.getSpan(B);if((0,KP.isTracingSuppressed)(B))return EJ.diag.debug("Instrumentation suppressed, returning Noop Span"),EJ.trace.wrapSpanContext(EJ.INVALID_SPAN_CONTEXT);let G=X===null||X===void 0?void 0:X.spanContext(),W=this._idGenerator.generateSpanId(),F,Z,U;if(!G||!EJ.trace.isSpanContextValid(G))F=this._idGenerator.generateTraceId();else F=G.traceId,Z=G.traceState,U=G.spanId;let $=(Y=Q.kind)!==null&&Y!==void 0?Y:EJ.SpanKind.INTERNAL,E=((J=Q.links)!==null&&J!==void 0?J:[]).map((z)=>{return{context:z.context,attributes:(0,KP.sanitizeAttributes)(z.attributes)}}),K=(0,KP.sanitizeAttributes)(Q.attributes),I=this._sampler.shouldSample(B,F,A,$,K,E);Z=(C=I.traceState)!==null&&C!==void 0?C:Z;let V=I.decision===EJ.SamplingDecision.RECORD_AND_SAMPLED?EJ.TraceFlags.SAMPLED:EJ.TraceFlags.NONE,H={traceId:F,spanId:W,traceFlags:V,traceState:Z};if(I.decision===EJ.SamplingDecision.NOT_RECORD)return EJ.diag.debug("Recording is off, propagating context in a non-recording span"),EJ.trace.wrapSpanContext(H);let D=(0,KP.sanitizeAttributes)(Object.assign(K,I.attributes));return new RG0.Span(this,B,A,H,$,U,E,Q.startTime,void 0,D)}startActiveSpan(A,Q,B,Y){let J,C,X;if(arguments.length<2)return;else if(arguments.length===2)X=Q;else if(arguments.length===3)J=Q,X=B;else J=Q,C=B,X=Y;let G=C!==null&&C!==void 0?C:EJ.context.active(),W=this.startSpan(A,J,G),F=EJ.trace.setSpan(G,W);return EJ.context.with(F,X,void 0,W)}getGeneralLimits(){return this._generalLimits}getSpanLimits(){return this._spanLimits}getActiveSpanProcessor(){return this._tracerProvider.getActiveSpanProcessor()}}c5Q.Tracer=d5Q});var Ii=R((p5Q)=>{Object.defineProperty(p5Q,"__esModule",{value:!0});p5Q.createConstMap=void 0;function OG0(A){let Q={},B=A.length;for(let Y=0;Y{Object.defineProperty(hGQ,"__esModule",{value:!0});hGQ.SEMATTRS_NET_HOST_CARRIER_ICC=hGQ.SEMATTRS_NET_HOST_CARRIER_MNC=hGQ.SEMATTRS_NET_HOST_CARRIER_MCC=hGQ.SEMATTRS_NET_HOST_CARRIER_NAME=hGQ.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=hGQ.SEMATTRS_NET_HOST_CONNECTION_TYPE=hGQ.SEMATTRS_NET_HOST_NAME=hGQ.SEMATTRS_NET_HOST_PORT=hGQ.SEMATTRS_NET_HOST_IP=hGQ.SEMATTRS_NET_PEER_NAME=hGQ.SEMATTRS_NET_PEER_PORT=hGQ.SEMATTRS_NET_PEER_IP=hGQ.SEMATTRS_NET_TRANSPORT=hGQ.SEMATTRS_FAAS_INVOKED_REGION=hGQ.SEMATTRS_FAAS_INVOKED_PROVIDER=hGQ.SEMATTRS_FAAS_INVOKED_NAME=hGQ.SEMATTRS_FAAS_COLDSTART=hGQ.SEMATTRS_FAAS_CRON=hGQ.SEMATTRS_FAAS_TIME=hGQ.SEMATTRS_FAAS_DOCUMENT_NAME=hGQ.SEMATTRS_FAAS_DOCUMENT_TIME=hGQ.SEMATTRS_FAAS_DOCUMENT_OPERATION=hGQ.SEMATTRS_FAAS_DOCUMENT_COLLECTION=hGQ.SEMATTRS_FAAS_EXECUTION=hGQ.SEMATTRS_FAAS_TRIGGER=hGQ.SEMATTRS_EXCEPTION_ESCAPED=hGQ.SEMATTRS_EXCEPTION_STACKTRACE=hGQ.SEMATTRS_EXCEPTION_MESSAGE=hGQ.SEMATTRS_EXCEPTION_TYPE=hGQ.SEMATTRS_DB_SQL_TABLE=hGQ.SEMATTRS_DB_MONGODB_COLLECTION=hGQ.SEMATTRS_DB_REDIS_DATABASE_INDEX=hGQ.SEMATTRS_DB_HBASE_NAMESPACE=hGQ.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=hGQ.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=hGQ.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=hGQ.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=hGQ.SEMATTRS_DB_CASSANDRA_TABLE=hGQ.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=hGQ.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=hGQ.SEMATTRS_DB_CASSANDRA_KEYSPACE=hGQ.SEMATTRS_DB_MSSQL_INSTANCE_NAME=hGQ.SEMATTRS_DB_OPERATION=hGQ.SEMATTRS_DB_STATEMENT=hGQ.SEMATTRS_DB_NAME=hGQ.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=hGQ.SEMATTRS_DB_USER=hGQ.SEMATTRS_DB_CONNECTION_STRING=hGQ.SEMATTRS_DB_SYSTEM=hGQ.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=void 0;hGQ.SEMATTRS_MESSAGING_DESTINATION_KIND=hGQ.SEMATTRS_MESSAGING_DESTINATION=hGQ.SEMATTRS_MESSAGING_SYSTEM=hGQ.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=hGQ.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=hGQ.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=hGQ.SEMATTRS_AWS_DYNAMODB_COUNT=hGQ.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=hGQ.SEMATTRS_AWS_DYNAMODB_SEGMENT=hGQ.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=hGQ.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=hGQ.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=hGQ.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=hGQ.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=hGQ.SEMATTRS_AWS_DYNAMODB_SELECT=hGQ.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=hGQ.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=hGQ.SEMATTRS_AWS_DYNAMODB_LIMIT=hGQ.SEMATTRS_AWS_DYNAMODB_PROJECTION=hGQ.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=hGQ.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=hGQ.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=hGQ.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=hGQ.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=hGQ.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=hGQ.SEMATTRS_HTTP_CLIENT_IP=hGQ.SEMATTRS_HTTP_ROUTE=hGQ.SEMATTRS_HTTP_SERVER_NAME=hGQ.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=hGQ.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=hGQ.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=hGQ.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=hGQ.SEMATTRS_HTTP_USER_AGENT=hGQ.SEMATTRS_HTTP_FLAVOR=hGQ.SEMATTRS_HTTP_STATUS_CODE=hGQ.SEMATTRS_HTTP_SCHEME=hGQ.SEMATTRS_HTTP_HOST=hGQ.SEMATTRS_HTTP_TARGET=hGQ.SEMATTRS_HTTP_URL=hGQ.SEMATTRS_HTTP_METHOD=hGQ.SEMATTRS_CODE_LINENO=hGQ.SEMATTRS_CODE_FILEPATH=hGQ.SEMATTRS_CODE_NAMESPACE=hGQ.SEMATTRS_CODE_FUNCTION=hGQ.SEMATTRS_THREAD_NAME=hGQ.SEMATTRS_THREAD_ID=hGQ.SEMATTRS_ENDUSER_SCOPE=hGQ.SEMATTRS_ENDUSER_ROLE=hGQ.SEMATTRS_ENDUSER_ID=hGQ.SEMATTRS_PEER_SERVICE=void 0;hGQ.DBSYSTEMVALUES_FILEMAKER=hGQ.DBSYSTEMVALUES_DERBY=hGQ.DBSYSTEMVALUES_FIREBIRD=hGQ.DBSYSTEMVALUES_ADABAS=hGQ.DBSYSTEMVALUES_CACHE=hGQ.DBSYSTEMVALUES_EDB=hGQ.DBSYSTEMVALUES_FIRSTSQL=hGQ.DBSYSTEMVALUES_INGRES=hGQ.DBSYSTEMVALUES_HANADB=hGQ.DBSYSTEMVALUES_MAXDB=hGQ.DBSYSTEMVALUES_PROGRESS=hGQ.DBSYSTEMVALUES_HSQLDB=hGQ.DBSYSTEMVALUES_CLOUDSCAPE=hGQ.DBSYSTEMVALUES_HIVE=hGQ.DBSYSTEMVALUES_REDSHIFT=hGQ.DBSYSTEMVALUES_POSTGRESQL=hGQ.DBSYSTEMVALUES_DB2=hGQ.DBSYSTEMVALUES_ORACLE=hGQ.DBSYSTEMVALUES_MYSQL=hGQ.DBSYSTEMVALUES_MSSQL=hGQ.DBSYSTEMVALUES_OTHER_SQL=hGQ.SemanticAttributes=hGQ.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=hGQ.SEMATTRS_MESSAGE_COMPRESSED_SIZE=hGQ.SEMATTRS_MESSAGE_ID=hGQ.SEMATTRS_MESSAGE_TYPE=hGQ.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=hGQ.SEMATTRS_RPC_JSONRPC_ERROR_CODE=hGQ.SEMATTRS_RPC_JSONRPC_REQUEST_ID=hGQ.SEMATTRS_RPC_JSONRPC_VERSION=hGQ.SEMATTRS_RPC_GRPC_STATUS_CODE=hGQ.SEMATTRS_RPC_METHOD=hGQ.SEMATTRS_RPC_SERVICE=hGQ.SEMATTRS_RPC_SYSTEM=hGQ.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=hGQ.SEMATTRS_MESSAGING_KAFKA_PARTITION=hGQ.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=hGQ.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=hGQ.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=hGQ.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=hGQ.SEMATTRS_MESSAGING_CONSUMER_ID=hGQ.SEMATTRS_MESSAGING_OPERATION=hGQ.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=hGQ.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=hGQ.SEMATTRS_MESSAGING_CONVERSATION_ID=hGQ.SEMATTRS_MESSAGING_MESSAGE_ID=hGQ.SEMATTRS_MESSAGING_URL=hGQ.SEMATTRS_MESSAGING_PROTOCOL_VERSION=hGQ.SEMATTRS_MESSAGING_PROTOCOL=hGQ.SEMATTRS_MESSAGING_TEMP_DESTINATION=void 0;hGQ.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=hGQ.FaasDocumentOperationValues=hGQ.FAASDOCUMENTOPERATIONVALUES_DELETE=hGQ.FAASDOCUMENTOPERATIONVALUES_EDIT=hGQ.FAASDOCUMENTOPERATIONVALUES_INSERT=hGQ.FaasTriggerValues=hGQ.FAASTRIGGERVALUES_OTHER=hGQ.FAASTRIGGERVALUES_TIMER=hGQ.FAASTRIGGERVALUES_PUBSUB=hGQ.FAASTRIGGERVALUES_HTTP=hGQ.FAASTRIGGERVALUES_DATASOURCE=hGQ.DbCassandraConsistencyLevelValues=hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=hGQ.DbSystemValues=hGQ.DBSYSTEMVALUES_COCKROACHDB=hGQ.DBSYSTEMVALUES_MEMCACHED=hGQ.DBSYSTEMVALUES_ELASTICSEARCH=hGQ.DBSYSTEMVALUES_GEODE=hGQ.DBSYSTEMVALUES_NEO4J=hGQ.DBSYSTEMVALUES_DYNAMODB=hGQ.DBSYSTEMVALUES_COSMOSDB=hGQ.DBSYSTEMVALUES_COUCHDB=hGQ.DBSYSTEMVALUES_COUCHBASE=hGQ.DBSYSTEMVALUES_REDIS=hGQ.DBSYSTEMVALUES_MONGODB=hGQ.DBSYSTEMVALUES_HBASE=hGQ.DBSYSTEMVALUES_CASSANDRA=hGQ.DBSYSTEMVALUES_COLDFUSION=hGQ.DBSYSTEMVALUES_H2=hGQ.DBSYSTEMVALUES_VERTICA=hGQ.DBSYSTEMVALUES_TERADATA=hGQ.DBSYSTEMVALUES_SYBASE=hGQ.DBSYSTEMVALUES_SQLITE=hGQ.DBSYSTEMVALUES_POINTBASE=hGQ.DBSYSTEMVALUES_PERVASIVE=hGQ.DBSYSTEMVALUES_NETEZZA=hGQ.DBSYSTEMVALUES_MARIADB=hGQ.DBSYSTEMVALUES_INTERBASE=hGQ.DBSYSTEMVALUES_INSTANTDB=hGQ.DBSYSTEMVALUES_INFORMIX=void 0;hGQ.MESSAGINGOPERATIONVALUES_RECEIVE=hGQ.MessagingDestinationKindValues=hGQ.MESSAGINGDESTINATIONKINDVALUES_TOPIC=hGQ.MESSAGINGDESTINATIONKINDVALUES_QUEUE=hGQ.HttpFlavorValues=hGQ.HTTPFLAVORVALUES_QUIC=hGQ.HTTPFLAVORVALUES_SPDY=hGQ.HTTPFLAVORVALUES_HTTP_2_0=hGQ.HTTPFLAVORVALUES_HTTP_1_1=hGQ.HTTPFLAVORVALUES_HTTP_1_0=hGQ.NetHostConnectionSubtypeValues=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_NR=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=hGQ.NetHostConnectionTypeValues=hGQ.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=hGQ.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=hGQ.NETHOSTCONNECTIONTYPEVALUES_CELL=hGQ.NETHOSTCONNECTIONTYPEVALUES_WIRED=hGQ.NETHOSTCONNECTIONTYPEVALUES_WIFI=hGQ.NetTransportValues=hGQ.NETTRANSPORTVALUES_OTHER=hGQ.NETTRANSPORTVALUES_INPROC=hGQ.NETTRANSPORTVALUES_PIPE=hGQ.NETTRANSPORTVALUES_UNIX=hGQ.NETTRANSPORTVALUES_IP=hGQ.NETTRANSPORTVALUES_IP_UDP=hGQ.NETTRANSPORTVALUES_IP_TCP=hGQ.FaasInvokedProviderValues=hGQ.FAASINVOKEDPROVIDERVALUES_GCP=hGQ.FAASINVOKEDPROVIDERVALUES_AZURE=hGQ.FAASINVOKEDPROVIDERVALUES_AWS=void 0;hGQ.MessageTypeValues=hGQ.MESSAGETYPEVALUES_RECEIVED=hGQ.MESSAGETYPEVALUES_SENT=hGQ.RpcGrpcStatusCodeValues=hGQ.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=hGQ.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=hGQ.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=hGQ.RPCGRPCSTATUSCODEVALUES_INTERNAL=hGQ.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=hGQ.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=hGQ.RPCGRPCSTATUSCODEVALUES_ABORTED=hGQ.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=hGQ.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=hGQ.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=hGQ.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=hGQ.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=hGQ.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=hGQ.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=hGQ.RPCGRPCSTATUSCODEVALUES_UNKNOWN=hGQ.RPCGRPCSTATUSCODEVALUES_CANCELLED=hGQ.RPCGRPCSTATUSCODEVALUES_OK=hGQ.MessagingOperationValues=hGQ.MESSAGINGOPERATIONVALUES_PROCESS=void 0;var s5=Ii(),n5Q="aws.lambda.invoked_arn",s5Q="db.system",r5Q="db.connection_string",a5Q="db.user",o5Q="db.jdbc.driver_classname",t5Q="db.name",e5Q="db.statement",ACQ="db.operation",QCQ="db.mssql.instance_name",BCQ="db.cassandra.keyspace",YCQ="db.cassandra.page_size",JCQ="db.cassandra.consistency_level",CCQ="db.cassandra.table",XCQ="db.cassandra.idempotence",GCQ="db.cassandra.speculative_execution_count",WCQ="db.cassandra.coordinator.id",FCQ="db.cassandra.coordinator.dc",ZCQ="db.hbase.namespace",$CQ="db.redis.database_index",UCQ="db.mongodb.collection",ECQ="db.sql.table",KCQ="exception.type",VCQ="exception.message",ICQ="exception.stacktrace",HCQ="exception.escaped",DCQ="faas.trigger",NCQ="faas.execution",LCQ="faas.document.collection",qCQ="faas.document.operation",MCQ="faas.document.time",zCQ="faas.document.name",RCQ="faas.time",wCQ="faas.cron",jCQ="faas.coldstart",OCQ="faas.invoked_name",PCQ="faas.invoked_provider",TCQ="faas.invoked_region",SCQ="net.transport",kCQ="net.peer.ip",_CQ="net.peer.port",vCQ="net.peer.name",yCQ="net.host.ip",gCQ="net.host.port",hCQ="net.host.name",xCQ="net.host.connection.type",fCQ="net.host.connection.subtype",bCQ="net.host.carrier.name",mCQ="net.host.carrier.mcc",uCQ="net.host.carrier.mnc",dCQ="net.host.carrier.icc",cCQ="peer.service",lCQ="enduser.id",pCQ="enduser.role",iCQ="enduser.scope",nCQ="thread.id",sCQ="thread.name",rCQ="code.function",aCQ="code.namespace",oCQ="code.filepath",tCQ="code.lineno",eCQ="http.method",A1Q="http.url",Q1Q="http.target",B1Q="http.host",Y1Q="http.scheme",J1Q="http.status_code",C1Q="http.flavor",X1Q="http.user_agent",G1Q="http.request_content_length",W1Q="http.request_content_length_uncompressed",F1Q="http.response_content_length",Z1Q="http.response_content_length_uncompressed",$1Q="http.server_name",U1Q="http.route",E1Q="http.client_ip",K1Q="aws.dynamodb.table_names",V1Q="aws.dynamodb.consumed_capacity",I1Q="aws.dynamodb.item_collection_metrics",H1Q="aws.dynamodb.provisioned_read_capacity",D1Q="aws.dynamodb.provisioned_write_capacity",N1Q="aws.dynamodb.consistent_read",L1Q="aws.dynamodb.projection",q1Q="aws.dynamodb.limit",M1Q="aws.dynamodb.attributes_to_get",z1Q="aws.dynamodb.index_name",R1Q="aws.dynamodb.select",w1Q="aws.dynamodb.global_secondary_indexes",j1Q="aws.dynamodb.local_secondary_indexes",O1Q="aws.dynamodb.exclusive_start_table",P1Q="aws.dynamodb.table_count",T1Q="aws.dynamodb.scan_forward",S1Q="aws.dynamodb.segment",k1Q="aws.dynamodb.total_segments",_1Q="aws.dynamodb.count",v1Q="aws.dynamodb.scanned_count",y1Q="aws.dynamodb.attribute_definitions",g1Q="aws.dynamodb.global_secondary_index_updates",h1Q="messaging.system",x1Q="messaging.destination",f1Q="messaging.destination_kind",b1Q="messaging.temp_destination",m1Q="messaging.protocol",u1Q="messaging.protocol_version",d1Q="messaging.url",c1Q="messaging.message_id",l1Q="messaging.conversation_id",p1Q="messaging.message_payload_size_bytes",i1Q="messaging.message_payload_compressed_size_bytes",n1Q="messaging.operation",s1Q="messaging.consumer_id",r1Q="messaging.rabbitmq.routing_key",a1Q="messaging.kafka.message_key",o1Q="messaging.kafka.consumer_group",t1Q="messaging.kafka.client_id",e1Q="messaging.kafka.partition",AXQ="messaging.kafka.tombstone",QXQ="rpc.system",BXQ="rpc.service",YXQ="rpc.method",JXQ="rpc.grpc.status_code",CXQ="rpc.jsonrpc.version",XXQ="rpc.jsonrpc.request_id",GXQ="rpc.jsonrpc.error_code",WXQ="rpc.jsonrpc.error_message",FXQ="message.type",ZXQ="message.id",$XQ="message.compressed_size",UXQ="message.uncompressed_size";hGQ.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=n5Q;hGQ.SEMATTRS_DB_SYSTEM=s5Q;hGQ.SEMATTRS_DB_CONNECTION_STRING=r5Q;hGQ.SEMATTRS_DB_USER=a5Q;hGQ.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=o5Q;hGQ.SEMATTRS_DB_NAME=t5Q;hGQ.SEMATTRS_DB_STATEMENT=e5Q;hGQ.SEMATTRS_DB_OPERATION=ACQ;hGQ.SEMATTRS_DB_MSSQL_INSTANCE_NAME=QCQ;hGQ.SEMATTRS_DB_CASSANDRA_KEYSPACE=BCQ;hGQ.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=YCQ;hGQ.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=JCQ;hGQ.SEMATTRS_DB_CASSANDRA_TABLE=CCQ;hGQ.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=XCQ;hGQ.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=GCQ;hGQ.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=WCQ;hGQ.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=FCQ;hGQ.SEMATTRS_DB_HBASE_NAMESPACE=ZCQ;hGQ.SEMATTRS_DB_REDIS_DATABASE_INDEX=$CQ;hGQ.SEMATTRS_DB_MONGODB_COLLECTION=UCQ;hGQ.SEMATTRS_DB_SQL_TABLE=ECQ;hGQ.SEMATTRS_EXCEPTION_TYPE=KCQ;hGQ.SEMATTRS_EXCEPTION_MESSAGE=VCQ;hGQ.SEMATTRS_EXCEPTION_STACKTRACE=ICQ;hGQ.SEMATTRS_EXCEPTION_ESCAPED=HCQ;hGQ.SEMATTRS_FAAS_TRIGGER=DCQ;hGQ.SEMATTRS_FAAS_EXECUTION=NCQ;hGQ.SEMATTRS_FAAS_DOCUMENT_COLLECTION=LCQ;hGQ.SEMATTRS_FAAS_DOCUMENT_OPERATION=qCQ;hGQ.SEMATTRS_FAAS_DOCUMENT_TIME=MCQ;hGQ.SEMATTRS_FAAS_DOCUMENT_NAME=zCQ;hGQ.SEMATTRS_FAAS_TIME=RCQ;hGQ.SEMATTRS_FAAS_CRON=wCQ;hGQ.SEMATTRS_FAAS_COLDSTART=jCQ;hGQ.SEMATTRS_FAAS_INVOKED_NAME=OCQ;hGQ.SEMATTRS_FAAS_INVOKED_PROVIDER=PCQ;hGQ.SEMATTRS_FAAS_INVOKED_REGION=TCQ;hGQ.SEMATTRS_NET_TRANSPORT=SCQ;hGQ.SEMATTRS_NET_PEER_IP=kCQ;hGQ.SEMATTRS_NET_PEER_PORT=_CQ;hGQ.SEMATTRS_NET_PEER_NAME=vCQ;hGQ.SEMATTRS_NET_HOST_IP=yCQ;hGQ.SEMATTRS_NET_HOST_PORT=gCQ;hGQ.SEMATTRS_NET_HOST_NAME=hCQ;hGQ.SEMATTRS_NET_HOST_CONNECTION_TYPE=xCQ;hGQ.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=fCQ;hGQ.SEMATTRS_NET_HOST_CARRIER_NAME=bCQ;hGQ.SEMATTRS_NET_HOST_CARRIER_MCC=mCQ;hGQ.SEMATTRS_NET_HOST_CARRIER_MNC=uCQ;hGQ.SEMATTRS_NET_HOST_CARRIER_ICC=dCQ;hGQ.SEMATTRS_PEER_SERVICE=cCQ;hGQ.SEMATTRS_ENDUSER_ID=lCQ;hGQ.SEMATTRS_ENDUSER_ROLE=pCQ;hGQ.SEMATTRS_ENDUSER_SCOPE=iCQ;hGQ.SEMATTRS_THREAD_ID=nCQ;hGQ.SEMATTRS_THREAD_NAME=sCQ;hGQ.SEMATTRS_CODE_FUNCTION=rCQ;hGQ.SEMATTRS_CODE_NAMESPACE=aCQ;hGQ.SEMATTRS_CODE_FILEPATH=oCQ;hGQ.SEMATTRS_CODE_LINENO=tCQ;hGQ.SEMATTRS_HTTP_METHOD=eCQ;hGQ.SEMATTRS_HTTP_URL=A1Q;hGQ.SEMATTRS_HTTP_TARGET=Q1Q;hGQ.SEMATTRS_HTTP_HOST=B1Q;hGQ.SEMATTRS_HTTP_SCHEME=Y1Q;hGQ.SEMATTRS_HTTP_STATUS_CODE=J1Q;hGQ.SEMATTRS_HTTP_FLAVOR=C1Q;hGQ.SEMATTRS_HTTP_USER_AGENT=X1Q;hGQ.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=G1Q;hGQ.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=W1Q;hGQ.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=F1Q;hGQ.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=Z1Q;hGQ.SEMATTRS_HTTP_SERVER_NAME=$1Q;hGQ.SEMATTRS_HTTP_ROUTE=U1Q;hGQ.SEMATTRS_HTTP_CLIENT_IP=E1Q;hGQ.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=K1Q;hGQ.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=V1Q;hGQ.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=I1Q;hGQ.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=H1Q;hGQ.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=D1Q;hGQ.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=N1Q;hGQ.SEMATTRS_AWS_DYNAMODB_PROJECTION=L1Q;hGQ.SEMATTRS_AWS_DYNAMODB_LIMIT=q1Q;hGQ.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=M1Q;hGQ.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=z1Q;hGQ.SEMATTRS_AWS_DYNAMODB_SELECT=R1Q;hGQ.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=w1Q;hGQ.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=j1Q;hGQ.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=O1Q;hGQ.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=P1Q;hGQ.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=T1Q;hGQ.SEMATTRS_AWS_DYNAMODB_SEGMENT=S1Q;hGQ.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=k1Q;hGQ.SEMATTRS_AWS_DYNAMODB_COUNT=_1Q;hGQ.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=v1Q;hGQ.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=y1Q;hGQ.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=g1Q;hGQ.SEMATTRS_MESSAGING_SYSTEM=h1Q;hGQ.SEMATTRS_MESSAGING_DESTINATION=x1Q;hGQ.SEMATTRS_MESSAGING_DESTINATION_KIND=f1Q;hGQ.SEMATTRS_MESSAGING_TEMP_DESTINATION=b1Q;hGQ.SEMATTRS_MESSAGING_PROTOCOL=m1Q;hGQ.SEMATTRS_MESSAGING_PROTOCOL_VERSION=u1Q;hGQ.SEMATTRS_MESSAGING_URL=d1Q;hGQ.SEMATTRS_MESSAGING_MESSAGE_ID=c1Q;hGQ.SEMATTRS_MESSAGING_CONVERSATION_ID=l1Q;hGQ.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=p1Q;hGQ.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=i1Q;hGQ.SEMATTRS_MESSAGING_OPERATION=n1Q;hGQ.SEMATTRS_MESSAGING_CONSUMER_ID=s1Q;hGQ.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=r1Q;hGQ.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=a1Q;hGQ.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=o1Q;hGQ.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=t1Q;hGQ.SEMATTRS_MESSAGING_KAFKA_PARTITION=e1Q;hGQ.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=AXQ;hGQ.SEMATTRS_RPC_SYSTEM=QXQ;hGQ.SEMATTRS_RPC_SERVICE=BXQ;hGQ.SEMATTRS_RPC_METHOD=YXQ;hGQ.SEMATTRS_RPC_GRPC_STATUS_CODE=JXQ;hGQ.SEMATTRS_RPC_JSONRPC_VERSION=CXQ;hGQ.SEMATTRS_RPC_JSONRPC_REQUEST_ID=XXQ;hGQ.SEMATTRS_RPC_JSONRPC_ERROR_CODE=GXQ;hGQ.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=WXQ;hGQ.SEMATTRS_MESSAGE_TYPE=FXQ;hGQ.SEMATTRS_MESSAGE_ID=ZXQ;hGQ.SEMATTRS_MESSAGE_COMPRESSED_SIZE=$XQ;hGQ.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=UXQ;hGQ.SemanticAttributes=(0,s5.createConstMap)([n5Q,s5Q,r5Q,a5Q,o5Q,t5Q,e5Q,ACQ,QCQ,BCQ,YCQ,JCQ,CCQ,XCQ,GCQ,WCQ,FCQ,ZCQ,$CQ,UCQ,ECQ,KCQ,VCQ,ICQ,HCQ,DCQ,NCQ,LCQ,qCQ,MCQ,zCQ,RCQ,wCQ,jCQ,OCQ,PCQ,TCQ,SCQ,kCQ,_CQ,vCQ,yCQ,gCQ,hCQ,xCQ,fCQ,bCQ,mCQ,uCQ,dCQ,cCQ,lCQ,pCQ,iCQ,nCQ,sCQ,rCQ,aCQ,oCQ,tCQ,eCQ,A1Q,Q1Q,B1Q,Y1Q,J1Q,C1Q,X1Q,G1Q,W1Q,F1Q,Z1Q,$1Q,U1Q,E1Q,K1Q,V1Q,I1Q,H1Q,D1Q,N1Q,L1Q,q1Q,M1Q,z1Q,R1Q,w1Q,j1Q,O1Q,P1Q,T1Q,S1Q,k1Q,_1Q,v1Q,y1Q,g1Q,h1Q,x1Q,f1Q,b1Q,m1Q,u1Q,d1Q,c1Q,l1Q,p1Q,i1Q,n1Q,s1Q,r1Q,a1Q,o1Q,t1Q,e1Q,AXQ,QXQ,BXQ,YXQ,JXQ,CXQ,XXQ,GXQ,WXQ,FXQ,ZXQ,$XQ,UXQ]);var EXQ="other_sql",KXQ="mssql",VXQ="mysql",IXQ="oracle",HXQ="db2",DXQ="postgresql",NXQ="redshift",LXQ="hive",qXQ="cloudscape",MXQ="hsqldb",zXQ="progress",RXQ="maxdb",wXQ="hanadb",jXQ="ingres",OXQ="firstsql",PXQ="edb",TXQ="cache",SXQ="adabas",kXQ="firebird",_XQ="derby",vXQ="filemaker",yXQ="informix",gXQ="instantdb",hXQ="interbase",xXQ="mariadb",fXQ="netezza",bXQ="pervasive",mXQ="pointbase",uXQ="sqlite",dXQ="sybase",cXQ="teradata",lXQ="vertica",pXQ="h2",iXQ="coldfusion",nXQ="cassandra",sXQ="hbase",rXQ="mongodb",aXQ="redis",oXQ="couchbase",tXQ="couchdb",eXQ="cosmosdb",A6Q="dynamodb",Q6Q="neo4j",B6Q="geode",Y6Q="elasticsearch",J6Q="memcached",C6Q="cockroachdb";hGQ.DBSYSTEMVALUES_OTHER_SQL=EXQ;hGQ.DBSYSTEMVALUES_MSSQL=KXQ;hGQ.DBSYSTEMVALUES_MYSQL=VXQ;hGQ.DBSYSTEMVALUES_ORACLE=IXQ;hGQ.DBSYSTEMVALUES_DB2=HXQ;hGQ.DBSYSTEMVALUES_POSTGRESQL=DXQ;hGQ.DBSYSTEMVALUES_REDSHIFT=NXQ;hGQ.DBSYSTEMVALUES_HIVE=LXQ;hGQ.DBSYSTEMVALUES_CLOUDSCAPE=qXQ;hGQ.DBSYSTEMVALUES_HSQLDB=MXQ;hGQ.DBSYSTEMVALUES_PROGRESS=zXQ;hGQ.DBSYSTEMVALUES_MAXDB=RXQ;hGQ.DBSYSTEMVALUES_HANADB=wXQ;hGQ.DBSYSTEMVALUES_INGRES=jXQ;hGQ.DBSYSTEMVALUES_FIRSTSQL=OXQ;hGQ.DBSYSTEMVALUES_EDB=PXQ;hGQ.DBSYSTEMVALUES_CACHE=TXQ;hGQ.DBSYSTEMVALUES_ADABAS=SXQ;hGQ.DBSYSTEMVALUES_FIREBIRD=kXQ;hGQ.DBSYSTEMVALUES_DERBY=_XQ;hGQ.DBSYSTEMVALUES_FILEMAKER=vXQ;hGQ.DBSYSTEMVALUES_INFORMIX=yXQ;hGQ.DBSYSTEMVALUES_INSTANTDB=gXQ;hGQ.DBSYSTEMVALUES_INTERBASE=hXQ;hGQ.DBSYSTEMVALUES_MARIADB=xXQ;hGQ.DBSYSTEMVALUES_NETEZZA=fXQ;hGQ.DBSYSTEMVALUES_PERVASIVE=bXQ;hGQ.DBSYSTEMVALUES_POINTBASE=mXQ;hGQ.DBSYSTEMVALUES_SQLITE=uXQ;hGQ.DBSYSTEMVALUES_SYBASE=dXQ;hGQ.DBSYSTEMVALUES_TERADATA=cXQ;hGQ.DBSYSTEMVALUES_VERTICA=lXQ;hGQ.DBSYSTEMVALUES_H2=pXQ;hGQ.DBSYSTEMVALUES_COLDFUSION=iXQ;hGQ.DBSYSTEMVALUES_CASSANDRA=nXQ;hGQ.DBSYSTEMVALUES_HBASE=sXQ;hGQ.DBSYSTEMVALUES_MONGODB=rXQ;hGQ.DBSYSTEMVALUES_REDIS=aXQ;hGQ.DBSYSTEMVALUES_COUCHBASE=oXQ;hGQ.DBSYSTEMVALUES_COUCHDB=tXQ;hGQ.DBSYSTEMVALUES_COSMOSDB=eXQ;hGQ.DBSYSTEMVALUES_DYNAMODB=A6Q;hGQ.DBSYSTEMVALUES_NEO4J=Q6Q;hGQ.DBSYSTEMVALUES_GEODE=B6Q;hGQ.DBSYSTEMVALUES_ELASTICSEARCH=Y6Q;hGQ.DBSYSTEMVALUES_MEMCACHED=J6Q;hGQ.DBSYSTEMVALUES_COCKROACHDB=C6Q;hGQ.DbSystemValues=(0,s5.createConstMap)([EXQ,KXQ,VXQ,IXQ,HXQ,DXQ,NXQ,LXQ,qXQ,MXQ,zXQ,RXQ,wXQ,jXQ,OXQ,PXQ,TXQ,SXQ,kXQ,_XQ,vXQ,yXQ,gXQ,hXQ,xXQ,fXQ,bXQ,mXQ,uXQ,dXQ,cXQ,lXQ,pXQ,iXQ,nXQ,sXQ,rXQ,aXQ,oXQ,tXQ,eXQ,A6Q,Q6Q,B6Q,Y6Q,J6Q,C6Q]);var X6Q="all",G6Q="each_quorum",W6Q="quorum",F6Q="local_quorum",Z6Q="one",$6Q="two",U6Q="three",E6Q="local_one",K6Q="any",V6Q="serial",I6Q="local_serial";hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=X6Q;hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=G6Q;hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=W6Q;hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=F6Q;hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=Z6Q;hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=$6Q;hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=U6Q;hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=E6Q;hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=K6Q;hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=V6Q;hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=I6Q;hGQ.DbCassandraConsistencyLevelValues=(0,s5.createConstMap)([X6Q,G6Q,W6Q,F6Q,Z6Q,$6Q,U6Q,E6Q,K6Q,V6Q,I6Q]);var H6Q="datasource",D6Q="http",N6Q="pubsub",L6Q="timer",q6Q="other";hGQ.FAASTRIGGERVALUES_DATASOURCE=H6Q;hGQ.FAASTRIGGERVALUES_HTTP=D6Q;hGQ.FAASTRIGGERVALUES_PUBSUB=N6Q;hGQ.FAASTRIGGERVALUES_TIMER=L6Q;hGQ.FAASTRIGGERVALUES_OTHER=q6Q;hGQ.FaasTriggerValues=(0,s5.createConstMap)([H6Q,D6Q,N6Q,L6Q,q6Q]);var M6Q="insert",z6Q="edit",R6Q="delete";hGQ.FAASDOCUMENTOPERATIONVALUES_INSERT=M6Q;hGQ.FAASDOCUMENTOPERATIONVALUES_EDIT=z6Q;hGQ.FAASDOCUMENTOPERATIONVALUES_DELETE=R6Q;hGQ.FaasDocumentOperationValues=(0,s5.createConstMap)([M6Q,z6Q,R6Q]);var w6Q="alibaba_cloud",j6Q="aws",O6Q="azure",P6Q="gcp";hGQ.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=w6Q;hGQ.FAASINVOKEDPROVIDERVALUES_AWS=j6Q;hGQ.FAASINVOKEDPROVIDERVALUES_AZURE=O6Q;hGQ.FAASINVOKEDPROVIDERVALUES_GCP=P6Q;hGQ.FaasInvokedProviderValues=(0,s5.createConstMap)([w6Q,j6Q,O6Q,P6Q]);var T6Q="ip_tcp",S6Q="ip_udp",k6Q="ip",_6Q="unix",v6Q="pipe",y6Q="inproc",g6Q="other";hGQ.NETTRANSPORTVALUES_IP_TCP=T6Q;hGQ.NETTRANSPORTVALUES_IP_UDP=S6Q;hGQ.NETTRANSPORTVALUES_IP=k6Q;hGQ.NETTRANSPORTVALUES_UNIX=_6Q;hGQ.NETTRANSPORTVALUES_PIPE=v6Q;hGQ.NETTRANSPORTVALUES_INPROC=y6Q;hGQ.NETTRANSPORTVALUES_OTHER=g6Q;hGQ.NetTransportValues=(0,s5.createConstMap)([T6Q,S6Q,k6Q,_6Q,v6Q,y6Q,g6Q]);var h6Q="wifi",x6Q="wired",f6Q="cell",b6Q="unavailable",m6Q="unknown";hGQ.NETHOSTCONNECTIONTYPEVALUES_WIFI=h6Q;hGQ.NETHOSTCONNECTIONTYPEVALUES_WIRED=x6Q;hGQ.NETHOSTCONNECTIONTYPEVALUES_CELL=f6Q;hGQ.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=b6Q;hGQ.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=m6Q;hGQ.NetHostConnectionTypeValues=(0,s5.createConstMap)([h6Q,x6Q,f6Q,b6Q,m6Q]);var u6Q="gprs",d6Q="edge",c6Q="umts",l6Q="cdma",p6Q="evdo_0",i6Q="evdo_a",n6Q="cdma2000_1xrtt",s6Q="hsdpa",r6Q="hsupa",a6Q="hspa",o6Q="iden",t6Q="evdo_b",e6Q="lte",AGQ="ehrpd",QGQ="hspap",BGQ="gsm",YGQ="td_scdma",JGQ="iwlan",CGQ="nr",XGQ="nrnsa",GGQ="lte_ca";hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=u6Q;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=d6Q;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=c6Q;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=l6Q;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=p6Q;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=i6Q;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=n6Q;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=s6Q;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=r6Q;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=a6Q;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=o6Q;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=t6Q;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=e6Q;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=AGQ;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=QGQ;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=BGQ;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=YGQ;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=JGQ;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_NR=CGQ;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=XGQ;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=GGQ;hGQ.NetHostConnectionSubtypeValues=(0,s5.createConstMap)([u6Q,d6Q,c6Q,l6Q,p6Q,i6Q,n6Q,s6Q,r6Q,a6Q,o6Q,t6Q,e6Q,AGQ,QGQ,BGQ,YGQ,JGQ,CGQ,XGQ,GGQ]);var WGQ="1.0",FGQ="1.1",ZGQ="2.0",$GQ="SPDY",UGQ="QUIC";hGQ.HTTPFLAVORVALUES_HTTP_1_0=WGQ;hGQ.HTTPFLAVORVALUES_HTTP_1_1=FGQ;hGQ.HTTPFLAVORVALUES_HTTP_2_0=ZGQ;hGQ.HTTPFLAVORVALUES_SPDY=$GQ;hGQ.HTTPFLAVORVALUES_QUIC=UGQ;hGQ.HttpFlavorValues={HTTP_1_0:WGQ,HTTP_1_1:FGQ,HTTP_2_0:ZGQ,SPDY:$GQ,QUIC:UGQ};var EGQ="queue",KGQ="topic";hGQ.MESSAGINGDESTINATIONKINDVALUES_QUEUE=EGQ;hGQ.MESSAGINGDESTINATIONKINDVALUES_TOPIC=KGQ;hGQ.MessagingDestinationKindValues=(0,s5.createConstMap)([EGQ,KGQ]);var VGQ="receive",IGQ="process";hGQ.MESSAGINGOPERATIONVALUES_RECEIVE=VGQ;hGQ.MESSAGINGOPERATIONVALUES_PROCESS=IGQ;hGQ.MessagingOperationValues=(0,s5.createConstMap)([VGQ,IGQ]);var HGQ=0,DGQ=1,NGQ=2,LGQ=3,qGQ=4,MGQ=5,zGQ=6,RGQ=7,wGQ=8,jGQ=9,OGQ=10,PGQ=11,TGQ=12,SGQ=13,kGQ=14,_GQ=15,vGQ=16;hGQ.RPCGRPCSTATUSCODEVALUES_OK=HGQ;hGQ.RPCGRPCSTATUSCODEVALUES_CANCELLED=DGQ;hGQ.RPCGRPCSTATUSCODEVALUES_UNKNOWN=NGQ;hGQ.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=LGQ;hGQ.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=qGQ;hGQ.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=MGQ;hGQ.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=zGQ;hGQ.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=RGQ;hGQ.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=wGQ;hGQ.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=jGQ;hGQ.RPCGRPCSTATUSCODEVALUES_ABORTED=OGQ;hGQ.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=PGQ;hGQ.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=TGQ;hGQ.RPCGRPCSTATUSCODEVALUES_INTERNAL=SGQ;hGQ.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=kGQ;hGQ.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=_GQ;hGQ.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=vGQ;hGQ.RpcGrpcStatusCodeValues={OK:HGQ,CANCELLED:DGQ,UNKNOWN:NGQ,INVALID_ARGUMENT:LGQ,DEADLINE_EXCEEDED:qGQ,NOT_FOUND:MGQ,ALREADY_EXISTS:zGQ,PERMISSION_DENIED:RGQ,RESOURCE_EXHAUSTED:wGQ,FAILED_PRECONDITION:jGQ,ABORTED:OGQ,OUT_OF_RANGE:PGQ,UNIMPLEMENTED:TGQ,INTERNAL:SGQ,UNAVAILABLE:kGQ,DATA_LOSS:_GQ,UNAUTHENTICATED:vGQ};var yGQ="SENT",gGQ="RECEIVED";hGQ.MESSAGETYPEVALUES_SENT=yGQ;hGQ.MESSAGETYPEVALUES_RECEIVED=gGQ;hGQ.MessageTypeValues=(0,s5.createConstMap)([yGQ,gGQ])});var lGQ=R((N$)=>{var w$0=N$&&N$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),j$0=N$&&N$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))w$0(Q,A,B)};Object.defineProperty(N$,"__esModule",{value:!0});j$0(cGQ(),N$)});var NFQ=R((VFQ)=>{Object.defineProperty(VFQ,"__esModule",{value:!0});VFQ.SEMRESATTRS_K8S_STATEFULSET_NAME=VFQ.SEMRESATTRS_K8S_STATEFULSET_UID=VFQ.SEMRESATTRS_K8S_DEPLOYMENT_NAME=VFQ.SEMRESATTRS_K8S_DEPLOYMENT_UID=VFQ.SEMRESATTRS_K8S_REPLICASET_NAME=VFQ.SEMRESATTRS_K8S_REPLICASET_UID=VFQ.SEMRESATTRS_K8S_CONTAINER_NAME=VFQ.SEMRESATTRS_K8S_POD_NAME=VFQ.SEMRESATTRS_K8S_POD_UID=VFQ.SEMRESATTRS_K8S_NAMESPACE_NAME=VFQ.SEMRESATTRS_K8S_NODE_UID=VFQ.SEMRESATTRS_K8S_NODE_NAME=VFQ.SEMRESATTRS_K8S_CLUSTER_NAME=VFQ.SEMRESATTRS_HOST_IMAGE_VERSION=VFQ.SEMRESATTRS_HOST_IMAGE_ID=VFQ.SEMRESATTRS_HOST_IMAGE_NAME=VFQ.SEMRESATTRS_HOST_ARCH=VFQ.SEMRESATTRS_HOST_TYPE=VFQ.SEMRESATTRS_HOST_NAME=VFQ.SEMRESATTRS_HOST_ID=VFQ.SEMRESATTRS_FAAS_MAX_MEMORY=VFQ.SEMRESATTRS_FAAS_INSTANCE=VFQ.SEMRESATTRS_FAAS_VERSION=VFQ.SEMRESATTRS_FAAS_ID=VFQ.SEMRESATTRS_FAAS_NAME=VFQ.SEMRESATTRS_DEVICE_MODEL_NAME=VFQ.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=VFQ.SEMRESATTRS_DEVICE_ID=VFQ.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=VFQ.SEMRESATTRS_CONTAINER_IMAGE_TAG=VFQ.SEMRESATTRS_CONTAINER_IMAGE_NAME=VFQ.SEMRESATTRS_CONTAINER_RUNTIME=VFQ.SEMRESATTRS_CONTAINER_ID=VFQ.SEMRESATTRS_CONTAINER_NAME=VFQ.SEMRESATTRS_AWS_LOG_STREAM_ARNS=VFQ.SEMRESATTRS_AWS_LOG_STREAM_NAMES=VFQ.SEMRESATTRS_AWS_LOG_GROUP_ARNS=VFQ.SEMRESATTRS_AWS_LOG_GROUP_NAMES=VFQ.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=VFQ.SEMRESATTRS_AWS_ECS_TASK_REVISION=VFQ.SEMRESATTRS_AWS_ECS_TASK_FAMILY=VFQ.SEMRESATTRS_AWS_ECS_TASK_ARN=VFQ.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=VFQ.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=VFQ.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=VFQ.SEMRESATTRS_CLOUD_PLATFORM=VFQ.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=VFQ.SEMRESATTRS_CLOUD_REGION=VFQ.SEMRESATTRS_CLOUD_ACCOUNT_ID=VFQ.SEMRESATTRS_CLOUD_PROVIDER=void 0;VFQ.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=VFQ.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=VFQ.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=VFQ.CLOUDPLATFORMVALUES_AZURE_AKS=VFQ.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=VFQ.CLOUDPLATFORMVALUES_AZURE_VM=VFQ.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=VFQ.CLOUDPLATFORMVALUES_AWS_LAMBDA=VFQ.CLOUDPLATFORMVALUES_AWS_EKS=VFQ.CLOUDPLATFORMVALUES_AWS_ECS=VFQ.CLOUDPLATFORMVALUES_AWS_EC2=VFQ.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=VFQ.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=VFQ.CloudProviderValues=VFQ.CLOUDPROVIDERVALUES_GCP=VFQ.CLOUDPROVIDERVALUES_AZURE=VFQ.CLOUDPROVIDERVALUES_AWS=VFQ.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=VFQ.SemanticResourceAttributes=VFQ.SEMRESATTRS_WEBENGINE_DESCRIPTION=VFQ.SEMRESATTRS_WEBENGINE_VERSION=VFQ.SEMRESATTRS_WEBENGINE_NAME=VFQ.SEMRESATTRS_TELEMETRY_AUTO_VERSION=VFQ.SEMRESATTRS_TELEMETRY_SDK_VERSION=VFQ.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=VFQ.SEMRESATTRS_TELEMETRY_SDK_NAME=VFQ.SEMRESATTRS_SERVICE_VERSION=VFQ.SEMRESATTRS_SERVICE_INSTANCE_ID=VFQ.SEMRESATTRS_SERVICE_NAMESPACE=VFQ.SEMRESATTRS_SERVICE_NAME=VFQ.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=VFQ.SEMRESATTRS_PROCESS_RUNTIME_VERSION=VFQ.SEMRESATTRS_PROCESS_RUNTIME_NAME=VFQ.SEMRESATTRS_PROCESS_OWNER=VFQ.SEMRESATTRS_PROCESS_COMMAND_ARGS=VFQ.SEMRESATTRS_PROCESS_COMMAND_LINE=VFQ.SEMRESATTRS_PROCESS_COMMAND=VFQ.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=VFQ.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=VFQ.SEMRESATTRS_PROCESS_PID=VFQ.SEMRESATTRS_OS_VERSION=VFQ.SEMRESATTRS_OS_NAME=VFQ.SEMRESATTRS_OS_DESCRIPTION=VFQ.SEMRESATTRS_OS_TYPE=VFQ.SEMRESATTRS_K8S_CRONJOB_NAME=VFQ.SEMRESATTRS_K8S_CRONJOB_UID=VFQ.SEMRESATTRS_K8S_JOB_NAME=VFQ.SEMRESATTRS_K8S_JOB_UID=VFQ.SEMRESATTRS_K8S_DAEMONSET_NAME=VFQ.SEMRESATTRS_K8S_DAEMONSET_UID=void 0;VFQ.TelemetrySdkLanguageValues=VFQ.TELEMETRYSDKLANGUAGEVALUES_WEBJS=VFQ.TELEMETRYSDKLANGUAGEVALUES_RUBY=VFQ.TELEMETRYSDKLANGUAGEVALUES_PYTHON=VFQ.TELEMETRYSDKLANGUAGEVALUES_PHP=VFQ.TELEMETRYSDKLANGUAGEVALUES_NODEJS=VFQ.TELEMETRYSDKLANGUAGEVALUES_JAVA=VFQ.TELEMETRYSDKLANGUAGEVALUES_GO=VFQ.TELEMETRYSDKLANGUAGEVALUES_ERLANG=VFQ.TELEMETRYSDKLANGUAGEVALUES_DOTNET=VFQ.TELEMETRYSDKLANGUAGEVALUES_CPP=VFQ.OsTypeValues=VFQ.OSTYPEVALUES_Z_OS=VFQ.OSTYPEVALUES_SOLARIS=VFQ.OSTYPEVALUES_AIX=VFQ.OSTYPEVALUES_HPUX=VFQ.OSTYPEVALUES_DRAGONFLYBSD=VFQ.OSTYPEVALUES_OPENBSD=VFQ.OSTYPEVALUES_NETBSD=VFQ.OSTYPEVALUES_FREEBSD=VFQ.OSTYPEVALUES_DARWIN=VFQ.OSTYPEVALUES_LINUX=VFQ.OSTYPEVALUES_WINDOWS=VFQ.HostArchValues=VFQ.HOSTARCHVALUES_X86=VFQ.HOSTARCHVALUES_PPC64=VFQ.HOSTARCHVALUES_PPC32=VFQ.HOSTARCHVALUES_IA64=VFQ.HOSTARCHVALUES_ARM64=VFQ.HOSTARCHVALUES_ARM32=VFQ.HOSTARCHVALUES_AMD64=VFQ.AwsEcsLaunchtypeValues=VFQ.AWSECSLAUNCHTYPEVALUES_FARGATE=VFQ.AWSECSLAUNCHTYPEVALUES_EC2=VFQ.CloudPlatformValues=VFQ.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=VFQ.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=VFQ.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=VFQ.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=void 0;var L$=Ii(),pGQ="cloud.provider",iGQ="cloud.account.id",nGQ="cloud.region",sGQ="cloud.availability_zone",rGQ="cloud.platform",aGQ="aws.ecs.container.arn",oGQ="aws.ecs.cluster.arn",tGQ="aws.ecs.launchtype",eGQ="aws.ecs.task.arn",A7Q="aws.ecs.task.family",Q7Q="aws.ecs.task.revision",B7Q="aws.eks.cluster.arn",Y7Q="aws.log.group.names",J7Q="aws.log.group.arns",C7Q="aws.log.stream.names",X7Q="aws.log.stream.arns",G7Q="container.name",W7Q="container.id",F7Q="container.runtime",Z7Q="container.image.name",$7Q="container.image.tag",U7Q="deployment.environment",E7Q="device.id",K7Q="device.model.identifier",V7Q="device.model.name",I7Q="faas.name",H7Q="faas.id",D7Q="faas.version",N7Q="faas.instance",L7Q="faas.max_memory",q7Q="host.id",M7Q="host.name",z7Q="host.type",R7Q="host.arch",w7Q="host.image.name",j7Q="host.image.id",O7Q="host.image.version",P7Q="k8s.cluster.name",T7Q="k8s.node.name",S7Q="k8s.node.uid",k7Q="k8s.namespace.name",_7Q="k8s.pod.uid",v7Q="k8s.pod.name",y7Q="k8s.container.name",g7Q="k8s.replicaset.uid",h7Q="k8s.replicaset.name",x7Q="k8s.deployment.uid",f7Q="k8s.deployment.name",b7Q="k8s.statefulset.uid",m7Q="k8s.statefulset.name",u7Q="k8s.daemonset.uid",d7Q="k8s.daemonset.name",c7Q="k8s.job.uid",l7Q="k8s.job.name",p7Q="k8s.cronjob.uid",i7Q="k8s.cronjob.name",n7Q="os.type",s7Q="os.description",r7Q="os.name",a7Q="os.version",o7Q="process.pid",t7Q="process.executable.name",e7Q="process.executable.path",AWQ="process.command",QWQ="process.command_line",BWQ="process.command_args",YWQ="process.owner",JWQ="process.runtime.name",CWQ="process.runtime.version",XWQ="process.runtime.description",GWQ="service.name",WWQ="service.namespace",FWQ="service.instance.id",ZWQ="service.version",$WQ="telemetry.sdk.name",UWQ="telemetry.sdk.language",EWQ="telemetry.sdk.version",KWQ="telemetry.auto.version",VWQ="webengine.name",IWQ="webengine.version",HWQ="webengine.description";VFQ.SEMRESATTRS_CLOUD_PROVIDER=pGQ;VFQ.SEMRESATTRS_CLOUD_ACCOUNT_ID=iGQ;VFQ.SEMRESATTRS_CLOUD_REGION=nGQ;VFQ.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=sGQ;VFQ.SEMRESATTRS_CLOUD_PLATFORM=rGQ;VFQ.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=aGQ;VFQ.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=oGQ;VFQ.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=tGQ;VFQ.SEMRESATTRS_AWS_ECS_TASK_ARN=eGQ;VFQ.SEMRESATTRS_AWS_ECS_TASK_FAMILY=A7Q;VFQ.SEMRESATTRS_AWS_ECS_TASK_REVISION=Q7Q;VFQ.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=B7Q;VFQ.SEMRESATTRS_AWS_LOG_GROUP_NAMES=Y7Q;VFQ.SEMRESATTRS_AWS_LOG_GROUP_ARNS=J7Q;VFQ.SEMRESATTRS_AWS_LOG_STREAM_NAMES=C7Q;VFQ.SEMRESATTRS_AWS_LOG_STREAM_ARNS=X7Q;VFQ.SEMRESATTRS_CONTAINER_NAME=G7Q;VFQ.SEMRESATTRS_CONTAINER_ID=W7Q;VFQ.SEMRESATTRS_CONTAINER_RUNTIME=F7Q;VFQ.SEMRESATTRS_CONTAINER_IMAGE_NAME=Z7Q;VFQ.SEMRESATTRS_CONTAINER_IMAGE_TAG=$7Q;VFQ.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=U7Q;VFQ.SEMRESATTRS_DEVICE_ID=E7Q;VFQ.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=K7Q;VFQ.SEMRESATTRS_DEVICE_MODEL_NAME=V7Q;VFQ.SEMRESATTRS_FAAS_NAME=I7Q;VFQ.SEMRESATTRS_FAAS_ID=H7Q;VFQ.SEMRESATTRS_FAAS_VERSION=D7Q;VFQ.SEMRESATTRS_FAAS_INSTANCE=N7Q;VFQ.SEMRESATTRS_FAAS_MAX_MEMORY=L7Q;VFQ.SEMRESATTRS_HOST_ID=q7Q;VFQ.SEMRESATTRS_HOST_NAME=M7Q;VFQ.SEMRESATTRS_HOST_TYPE=z7Q;VFQ.SEMRESATTRS_HOST_ARCH=R7Q;VFQ.SEMRESATTRS_HOST_IMAGE_NAME=w7Q;VFQ.SEMRESATTRS_HOST_IMAGE_ID=j7Q;VFQ.SEMRESATTRS_HOST_IMAGE_VERSION=O7Q;VFQ.SEMRESATTRS_K8S_CLUSTER_NAME=P7Q;VFQ.SEMRESATTRS_K8S_NODE_NAME=T7Q;VFQ.SEMRESATTRS_K8S_NODE_UID=S7Q;VFQ.SEMRESATTRS_K8S_NAMESPACE_NAME=k7Q;VFQ.SEMRESATTRS_K8S_POD_UID=_7Q;VFQ.SEMRESATTRS_K8S_POD_NAME=v7Q;VFQ.SEMRESATTRS_K8S_CONTAINER_NAME=y7Q;VFQ.SEMRESATTRS_K8S_REPLICASET_UID=g7Q;VFQ.SEMRESATTRS_K8S_REPLICASET_NAME=h7Q;VFQ.SEMRESATTRS_K8S_DEPLOYMENT_UID=x7Q;VFQ.SEMRESATTRS_K8S_DEPLOYMENT_NAME=f7Q;VFQ.SEMRESATTRS_K8S_STATEFULSET_UID=b7Q;VFQ.SEMRESATTRS_K8S_STATEFULSET_NAME=m7Q;VFQ.SEMRESATTRS_K8S_DAEMONSET_UID=u7Q;VFQ.SEMRESATTRS_K8S_DAEMONSET_NAME=d7Q;VFQ.SEMRESATTRS_K8S_JOB_UID=c7Q;VFQ.SEMRESATTRS_K8S_JOB_NAME=l7Q;VFQ.SEMRESATTRS_K8S_CRONJOB_UID=p7Q;VFQ.SEMRESATTRS_K8S_CRONJOB_NAME=i7Q;VFQ.SEMRESATTRS_OS_TYPE=n7Q;VFQ.SEMRESATTRS_OS_DESCRIPTION=s7Q;VFQ.SEMRESATTRS_OS_NAME=r7Q;VFQ.SEMRESATTRS_OS_VERSION=a7Q;VFQ.SEMRESATTRS_PROCESS_PID=o7Q;VFQ.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=t7Q;VFQ.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=e7Q;VFQ.SEMRESATTRS_PROCESS_COMMAND=AWQ;VFQ.SEMRESATTRS_PROCESS_COMMAND_LINE=QWQ;VFQ.SEMRESATTRS_PROCESS_COMMAND_ARGS=BWQ;VFQ.SEMRESATTRS_PROCESS_OWNER=YWQ;VFQ.SEMRESATTRS_PROCESS_RUNTIME_NAME=JWQ;VFQ.SEMRESATTRS_PROCESS_RUNTIME_VERSION=CWQ;VFQ.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=XWQ;VFQ.SEMRESATTRS_SERVICE_NAME=GWQ;VFQ.SEMRESATTRS_SERVICE_NAMESPACE=WWQ;VFQ.SEMRESATTRS_SERVICE_INSTANCE_ID=FWQ;VFQ.SEMRESATTRS_SERVICE_VERSION=ZWQ;VFQ.SEMRESATTRS_TELEMETRY_SDK_NAME=$WQ;VFQ.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=UWQ;VFQ.SEMRESATTRS_TELEMETRY_SDK_VERSION=EWQ;VFQ.SEMRESATTRS_TELEMETRY_AUTO_VERSION=KWQ;VFQ.SEMRESATTRS_WEBENGINE_NAME=VWQ;VFQ.SEMRESATTRS_WEBENGINE_VERSION=IWQ;VFQ.SEMRESATTRS_WEBENGINE_DESCRIPTION=HWQ;VFQ.SemanticResourceAttributes=(0,L$.createConstMap)([pGQ,iGQ,nGQ,sGQ,rGQ,aGQ,oGQ,tGQ,eGQ,A7Q,Q7Q,B7Q,Y7Q,J7Q,C7Q,X7Q,G7Q,W7Q,F7Q,Z7Q,$7Q,U7Q,E7Q,K7Q,V7Q,I7Q,H7Q,D7Q,N7Q,L7Q,q7Q,M7Q,z7Q,R7Q,w7Q,j7Q,O7Q,P7Q,T7Q,S7Q,k7Q,_7Q,v7Q,y7Q,g7Q,h7Q,x7Q,f7Q,b7Q,m7Q,u7Q,d7Q,c7Q,l7Q,p7Q,i7Q,n7Q,s7Q,r7Q,a7Q,o7Q,t7Q,e7Q,AWQ,QWQ,BWQ,YWQ,JWQ,CWQ,XWQ,GWQ,WWQ,FWQ,ZWQ,$WQ,UWQ,EWQ,KWQ,VWQ,IWQ,HWQ]);var DWQ="alibaba_cloud",NWQ="aws",LWQ="azure",qWQ="gcp";VFQ.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=DWQ;VFQ.CLOUDPROVIDERVALUES_AWS=NWQ;VFQ.CLOUDPROVIDERVALUES_AZURE=LWQ;VFQ.CLOUDPROVIDERVALUES_GCP=qWQ;VFQ.CloudProviderValues=(0,L$.createConstMap)([DWQ,NWQ,LWQ,qWQ]);var MWQ="alibaba_cloud_ecs",zWQ="alibaba_cloud_fc",RWQ="aws_ec2",wWQ="aws_ecs",jWQ="aws_eks",OWQ="aws_lambda",PWQ="aws_elastic_beanstalk",TWQ="azure_vm",SWQ="azure_container_instances",kWQ="azure_aks",_WQ="azure_functions",vWQ="azure_app_service",yWQ="gcp_compute_engine",gWQ="gcp_cloud_run",hWQ="gcp_kubernetes_engine",xWQ="gcp_cloud_functions",fWQ="gcp_app_engine";VFQ.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=MWQ;VFQ.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=zWQ;VFQ.CLOUDPLATFORMVALUES_AWS_EC2=RWQ;VFQ.CLOUDPLATFORMVALUES_AWS_ECS=wWQ;VFQ.CLOUDPLATFORMVALUES_AWS_EKS=jWQ;VFQ.CLOUDPLATFORMVALUES_AWS_LAMBDA=OWQ;VFQ.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=PWQ;VFQ.CLOUDPLATFORMVALUES_AZURE_VM=TWQ;VFQ.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=SWQ;VFQ.CLOUDPLATFORMVALUES_AZURE_AKS=kWQ;VFQ.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=_WQ;VFQ.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=vWQ;VFQ.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=yWQ;VFQ.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=gWQ;VFQ.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=hWQ;VFQ.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=xWQ;VFQ.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=fWQ;VFQ.CloudPlatformValues=(0,L$.createConstMap)([MWQ,zWQ,RWQ,wWQ,jWQ,OWQ,PWQ,TWQ,SWQ,kWQ,_WQ,vWQ,yWQ,gWQ,hWQ,xWQ,fWQ]);var bWQ="ec2",mWQ="fargate";VFQ.AWSECSLAUNCHTYPEVALUES_EC2=bWQ;VFQ.AWSECSLAUNCHTYPEVALUES_FARGATE=mWQ;VFQ.AwsEcsLaunchtypeValues=(0,L$.createConstMap)([bWQ,mWQ]);var uWQ="amd64",dWQ="arm32",cWQ="arm64",lWQ="ia64",pWQ="ppc32",iWQ="ppc64",nWQ="x86";VFQ.HOSTARCHVALUES_AMD64=uWQ;VFQ.HOSTARCHVALUES_ARM32=dWQ;VFQ.HOSTARCHVALUES_ARM64=cWQ;VFQ.HOSTARCHVALUES_IA64=lWQ;VFQ.HOSTARCHVALUES_PPC32=pWQ;VFQ.HOSTARCHVALUES_PPC64=iWQ;VFQ.HOSTARCHVALUES_X86=nWQ;VFQ.HostArchValues=(0,L$.createConstMap)([uWQ,dWQ,cWQ,lWQ,pWQ,iWQ,nWQ]);var sWQ="windows",rWQ="linux",aWQ="darwin",oWQ="freebsd",tWQ="netbsd",eWQ="openbsd",AFQ="dragonflybsd",QFQ="hpux",BFQ="aix",YFQ="solaris",JFQ="z_os";VFQ.OSTYPEVALUES_WINDOWS=sWQ;VFQ.OSTYPEVALUES_LINUX=rWQ;VFQ.OSTYPEVALUES_DARWIN=aWQ;VFQ.OSTYPEVALUES_FREEBSD=oWQ;VFQ.OSTYPEVALUES_NETBSD=tWQ;VFQ.OSTYPEVALUES_OPENBSD=eWQ;VFQ.OSTYPEVALUES_DRAGONFLYBSD=AFQ;VFQ.OSTYPEVALUES_HPUX=QFQ;VFQ.OSTYPEVALUES_AIX=BFQ;VFQ.OSTYPEVALUES_SOLARIS=YFQ;VFQ.OSTYPEVALUES_Z_OS=JFQ;VFQ.OsTypeValues=(0,L$.createConstMap)([sWQ,rWQ,aWQ,oWQ,tWQ,eWQ,AFQ,QFQ,BFQ,YFQ,JFQ]);var CFQ="cpp",XFQ="dotnet",GFQ="erlang",WFQ="go",FFQ="java",ZFQ="nodejs",$FQ="php",UFQ="python",EFQ="ruby",KFQ="webjs";VFQ.TELEMETRYSDKLANGUAGEVALUES_CPP=CFQ;VFQ.TELEMETRYSDKLANGUAGEVALUES_DOTNET=XFQ;VFQ.TELEMETRYSDKLANGUAGEVALUES_ERLANG=GFQ;VFQ.TELEMETRYSDKLANGUAGEVALUES_GO=WFQ;VFQ.TELEMETRYSDKLANGUAGEVALUES_JAVA=FFQ;VFQ.TELEMETRYSDKLANGUAGEVALUES_NODEJS=ZFQ;VFQ.TELEMETRYSDKLANGUAGEVALUES_PHP=$FQ;VFQ.TELEMETRYSDKLANGUAGEVALUES_PYTHON=UFQ;VFQ.TELEMETRYSDKLANGUAGEVALUES_RUBY=EFQ;VFQ.TELEMETRYSDKLANGUAGEVALUES_WEBJS=KFQ;VFQ.TelemetrySdkLanguageValues=(0,L$.createConstMap)([CFQ,XFQ,GFQ,WFQ,FFQ,ZFQ,$FQ,UFQ,EFQ,KFQ])});var LFQ=R((q$)=>{var QE0=q$&&q$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),BE0=q$&&q$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))QE0(Q,A,B)};Object.defineProperty(q$,"__esModule",{value:!0});BE0(NFQ(),q$)});var wFQ=R((qFQ)=>{Object.defineProperty(qFQ,"__esModule",{value:!0});qFQ.HTTP_REQUEST_METHOD_VALUE_POST=qFQ.HTTP_REQUEST_METHOD_VALUE_PATCH=qFQ.HTTP_REQUEST_METHOD_VALUE_OPTIONS=qFQ.HTTP_REQUEST_METHOD_VALUE_HEAD=qFQ.HTTP_REQUEST_METHOD_VALUE_GET=qFQ.HTTP_REQUEST_METHOD_VALUE_DELETE=qFQ.HTTP_REQUEST_METHOD_VALUE_CONNECT=qFQ.HTTP_REQUEST_METHOD_VALUE_OTHER=qFQ.ATTR_HTTP_REQUEST_METHOD=qFQ.ATTR_HTTP_REQUEST_HEADER=qFQ.ATTR_EXCEPTION_TYPE=qFQ.ATTR_EXCEPTION_STACKTRACE=qFQ.ATTR_EXCEPTION_MESSAGE=qFQ.ATTR_EXCEPTION_ESCAPED=qFQ.ERROR_TYPE_VALUE_OTHER=qFQ.ATTR_ERROR_TYPE=qFQ.ATTR_CLIENT_PORT=qFQ.ATTR_CLIENT_ADDRESS=qFQ.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS=qFQ.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE=qFQ.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS=qFQ.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK=qFQ.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED=qFQ.ATTR_ASPNETCORE_RATE_LIMITING_POLICY=qFQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED=qFQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED=qFQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED=qFQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED=qFQ.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT=qFQ.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE=qFQ.ATTR_TELEMETRY_SDK_VERSION=qFQ.ATTR_TELEMETRY_SDK_NAME=qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS=qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT=qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_RUST=qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY=qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON=qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_PHP=qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS=qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA=qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_GO=qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG=qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET=qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_CPP=qFQ.ATTR_TELEMETRY_SDK_LANGUAGE=qFQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED=qFQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER=qFQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER=qFQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED=qFQ.ATTR_ASPNETCORE_RATE_LIMITING_RESULT=void 0;qFQ.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT=qFQ.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE=qFQ.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN=qFQ.ATTR_SIGNALR_CONNECTION_STATUS=qFQ.ATTR_SERVICE_VERSION=qFQ.ATTR_SERVICE_NAME=qFQ.ATTR_SERVER_PORT=qFQ.ATTR_SERVER_ADDRESS=qFQ.ATTR_OTEL_STATUS_DESCRIPTION=qFQ.OTEL_STATUS_CODE_VALUE_OK=qFQ.OTEL_STATUS_CODE_VALUE_ERROR=qFQ.ATTR_OTEL_STATUS_CODE=qFQ.ATTR_OTEL_SCOPE_VERSION=qFQ.ATTR_OTEL_SCOPE_NAME=qFQ.NETWORK_TYPE_VALUE_IPV6=qFQ.NETWORK_TYPE_VALUE_IPV4=qFQ.ATTR_NETWORK_TYPE=qFQ.NETWORK_TRANSPORT_VALUE_UNIX=qFQ.NETWORK_TRANSPORT_VALUE_UDP=qFQ.NETWORK_TRANSPORT_VALUE_TCP=qFQ.NETWORK_TRANSPORT_VALUE_QUIC=qFQ.NETWORK_TRANSPORT_VALUE_PIPE=qFQ.ATTR_NETWORK_TRANSPORT=qFQ.ATTR_NETWORK_PROTOCOL_VERSION=qFQ.ATTR_NETWORK_PROTOCOL_NAME=qFQ.ATTR_NETWORK_PEER_PORT=qFQ.ATTR_NETWORK_PEER_ADDRESS=qFQ.ATTR_NETWORK_LOCAL_PORT=qFQ.ATTR_NETWORK_LOCAL_ADDRESS=qFQ.JVM_THREAD_STATE_VALUE_WAITING=qFQ.JVM_THREAD_STATE_VALUE_TIMED_WAITING=qFQ.JVM_THREAD_STATE_VALUE_TERMINATED=qFQ.JVM_THREAD_STATE_VALUE_RUNNABLE=qFQ.JVM_THREAD_STATE_VALUE_NEW=qFQ.JVM_THREAD_STATE_VALUE_BLOCKED=qFQ.ATTR_JVM_THREAD_STATE=qFQ.ATTR_JVM_THREAD_DAEMON=qFQ.JVM_MEMORY_TYPE_VALUE_NON_HEAP=qFQ.JVM_MEMORY_TYPE_VALUE_HEAP=qFQ.ATTR_JVM_MEMORY_TYPE=qFQ.ATTR_JVM_MEMORY_POOL_NAME=qFQ.ATTR_JVM_GC_NAME=qFQ.ATTR_JVM_GC_ACTION=qFQ.ATTR_HTTP_ROUTE=qFQ.ATTR_HTTP_RESPONSE_STATUS_CODE=qFQ.ATTR_HTTP_RESPONSE_HEADER=qFQ.ATTR_HTTP_REQUEST_RESEND_COUNT=qFQ.ATTR_HTTP_REQUEST_METHOD_ORIGINAL=qFQ.HTTP_REQUEST_METHOD_VALUE_TRACE=qFQ.HTTP_REQUEST_METHOD_VALUE_PUT=void 0;qFQ.ATTR_USER_AGENT_ORIGINAL=qFQ.ATTR_URL_SCHEME=qFQ.ATTR_URL_QUERY=qFQ.ATTR_URL_PATH=qFQ.ATTR_URL_FULL=qFQ.ATTR_URL_FRAGMENT=qFQ.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS=qFQ.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS=qFQ.SIGNALR_TRANSPORT_VALUE_LONG_POLLING=qFQ.ATTR_SIGNALR_TRANSPORT=void 0;qFQ.ATTR_ASPNETCORE_RATE_LIMITING_RESULT="aspnetcore.rate_limiting.result";qFQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED="acquired";qFQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER="endpoint_limiter";qFQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER="global_limiter";qFQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED="request_canceled";qFQ.ATTR_TELEMETRY_SDK_LANGUAGE="telemetry.sdk.language";qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_CPP="cpp";qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET="dotnet";qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG="erlang";qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_GO="go";qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA="java";qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS="nodejs";qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_PHP="php";qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON="python";qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY="ruby";qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_RUST="rust";qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT="swift";qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS="webjs";qFQ.ATTR_TELEMETRY_SDK_NAME="telemetry.sdk.name";qFQ.ATTR_TELEMETRY_SDK_VERSION="telemetry.sdk.version";qFQ.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE="aspnetcore.diagnostics.handler.type";qFQ.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT="aspnetcore.diagnostics.exception.result";qFQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED="aborted";qFQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED="handled";qFQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED="skipped";qFQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED="unhandled";qFQ.ATTR_ASPNETCORE_RATE_LIMITING_POLICY="aspnetcore.rate_limiting.policy";qFQ.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED="aspnetcore.request.is_unhandled";qFQ.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK="aspnetcore.routing.is_fallback";qFQ.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS="aspnetcore.routing.match_status";qFQ.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE="failure";qFQ.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS="success";qFQ.ATTR_CLIENT_ADDRESS="client.address";qFQ.ATTR_CLIENT_PORT="client.port";qFQ.ATTR_ERROR_TYPE="error.type";qFQ.ERROR_TYPE_VALUE_OTHER="_OTHER";qFQ.ATTR_EXCEPTION_ESCAPED="exception.escaped";qFQ.ATTR_EXCEPTION_MESSAGE="exception.message";qFQ.ATTR_EXCEPTION_STACKTRACE="exception.stacktrace";qFQ.ATTR_EXCEPTION_TYPE="exception.type";var YE0=(A)=>`http.request.header.${A}`;qFQ.ATTR_HTTP_REQUEST_HEADER=YE0;qFQ.ATTR_HTTP_REQUEST_METHOD="http.request.method";qFQ.HTTP_REQUEST_METHOD_VALUE_OTHER="_OTHER";qFQ.HTTP_REQUEST_METHOD_VALUE_CONNECT="CONNECT";qFQ.HTTP_REQUEST_METHOD_VALUE_DELETE="DELETE";qFQ.HTTP_REQUEST_METHOD_VALUE_GET="GET";qFQ.HTTP_REQUEST_METHOD_VALUE_HEAD="HEAD";qFQ.HTTP_REQUEST_METHOD_VALUE_OPTIONS="OPTIONS";qFQ.HTTP_REQUEST_METHOD_VALUE_PATCH="PATCH";qFQ.HTTP_REQUEST_METHOD_VALUE_POST="POST";qFQ.HTTP_REQUEST_METHOD_VALUE_PUT="PUT";qFQ.HTTP_REQUEST_METHOD_VALUE_TRACE="TRACE";qFQ.ATTR_HTTP_REQUEST_METHOD_ORIGINAL="http.request.method_original";qFQ.ATTR_HTTP_REQUEST_RESEND_COUNT="http.request.resend_count";var JE0=(A)=>`http.response.header.${A}`;qFQ.ATTR_HTTP_RESPONSE_HEADER=JE0;qFQ.ATTR_HTTP_RESPONSE_STATUS_CODE="http.response.status_code";qFQ.ATTR_HTTP_ROUTE="http.route";qFQ.ATTR_JVM_GC_ACTION="jvm.gc.action";qFQ.ATTR_JVM_GC_NAME="jvm.gc.name";qFQ.ATTR_JVM_MEMORY_POOL_NAME="jvm.memory.pool.name";qFQ.ATTR_JVM_MEMORY_TYPE="jvm.memory.type";qFQ.JVM_MEMORY_TYPE_VALUE_HEAP="heap";qFQ.JVM_MEMORY_TYPE_VALUE_NON_HEAP="non_heap";qFQ.ATTR_JVM_THREAD_DAEMON="jvm.thread.daemon";qFQ.ATTR_JVM_THREAD_STATE="jvm.thread.state";qFQ.JVM_THREAD_STATE_VALUE_BLOCKED="blocked";qFQ.JVM_THREAD_STATE_VALUE_NEW="new";qFQ.JVM_THREAD_STATE_VALUE_RUNNABLE="runnable";qFQ.JVM_THREAD_STATE_VALUE_TERMINATED="terminated";qFQ.JVM_THREAD_STATE_VALUE_TIMED_WAITING="timed_waiting";qFQ.JVM_THREAD_STATE_VALUE_WAITING="waiting";qFQ.ATTR_NETWORK_LOCAL_ADDRESS="network.local.address";qFQ.ATTR_NETWORK_LOCAL_PORT="network.local.port";qFQ.ATTR_NETWORK_PEER_ADDRESS="network.peer.address";qFQ.ATTR_NETWORK_PEER_PORT="network.peer.port";qFQ.ATTR_NETWORK_PROTOCOL_NAME="network.protocol.name";qFQ.ATTR_NETWORK_PROTOCOL_VERSION="network.protocol.version";qFQ.ATTR_NETWORK_TRANSPORT="network.transport";qFQ.NETWORK_TRANSPORT_VALUE_PIPE="pipe";qFQ.NETWORK_TRANSPORT_VALUE_QUIC="quic";qFQ.NETWORK_TRANSPORT_VALUE_TCP="tcp";qFQ.NETWORK_TRANSPORT_VALUE_UDP="udp";qFQ.NETWORK_TRANSPORT_VALUE_UNIX="unix";qFQ.ATTR_NETWORK_TYPE="network.type";qFQ.NETWORK_TYPE_VALUE_IPV4="ipv4";qFQ.NETWORK_TYPE_VALUE_IPV6="ipv6";qFQ.ATTR_OTEL_SCOPE_NAME="otel.scope.name";qFQ.ATTR_OTEL_SCOPE_VERSION="otel.scope.version";qFQ.ATTR_OTEL_STATUS_CODE="otel.status_code";qFQ.OTEL_STATUS_CODE_VALUE_ERROR="ERROR";qFQ.OTEL_STATUS_CODE_VALUE_OK="OK";qFQ.ATTR_OTEL_STATUS_DESCRIPTION="otel.status_description";qFQ.ATTR_SERVER_ADDRESS="server.address";qFQ.ATTR_SERVER_PORT="server.port";qFQ.ATTR_SERVICE_NAME="service.name";qFQ.ATTR_SERVICE_VERSION="service.version";qFQ.ATTR_SIGNALR_CONNECTION_STATUS="signalr.connection.status";qFQ.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN="app_shutdown";qFQ.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE="normal_closure";qFQ.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT="timeout";qFQ.ATTR_SIGNALR_TRANSPORT="signalr.transport";qFQ.SIGNALR_TRANSPORT_VALUE_LONG_POLLING="long_polling";qFQ.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS="server_sent_events";qFQ.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS="web_sockets";qFQ.ATTR_URL_FRAGMENT="url.fragment";qFQ.ATTR_URL_FULL="url.full";qFQ.ATTR_URL_PATH="url.path";qFQ.ATTR_URL_QUERY="url.query";qFQ.ATTR_URL_SCHEME="url.scheme";qFQ.ATTR_USER_AGENT_ORIGINAL="user_agent.original"});var PFQ=R((jFQ)=>{Object.defineProperty(jFQ,"__esModule",{value:!0});jFQ.METRIC_SIGNALR_SERVER_CONNECTION_DURATION=jFQ.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS=jFQ.METRIC_KESTREL_UPGRADED_CONNECTIONS=jFQ.METRIC_KESTREL_TLS_HANDSHAKE_DURATION=jFQ.METRIC_KESTREL_REJECTED_CONNECTIONS=jFQ.METRIC_KESTREL_QUEUED_REQUESTS=jFQ.METRIC_KESTREL_QUEUED_CONNECTIONS=jFQ.METRIC_KESTREL_CONNECTION_DURATION=jFQ.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES=jFQ.METRIC_KESTREL_ACTIVE_CONNECTIONS=jFQ.METRIC_JVM_THREAD_COUNT=jFQ.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC=jFQ.METRIC_JVM_MEMORY_USED=jFQ.METRIC_JVM_MEMORY_LIMIT=jFQ.METRIC_JVM_MEMORY_COMMITTED=jFQ.METRIC_JVM_GC_DURATION=jFQ.METRIC_JVM_CPU_TIME=jFQ.METRIC_JVM_CPU_RECENT_UTILIZATION=jFQ.METRIC_JVM_CPU_COUNT=jFQ.METRIC_JVM_CLASS_UNLOADED=jFQ.METRIC_JVM_CLASS_LOADED=jFQ.METRIC_JVM_CLASS_COUNT=jFQ.METRIC_HTTP_SERVER_REQUEST_DURATION=jFQ.METRIC_HTTP_CLIENT_REQUEST_DURATION=jFQ.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS=jFQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS=jFQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION=jFQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE=jFQ.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS=jFQ.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES=jFQ.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS=void 0;jFQ.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS="aspnetcore.diagnostics.exceptions";jFQ.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES="aspnetcore.rate_limiting.active_request_leases";jFQ.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS="aspnetcore.rate_limiting.queued_requests";jFQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE="aspnetcore.rate_limiting.request.time_in_queue";jFQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION="aspnetcore.rate_limiting.request_lease.duration";jFQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS="aspnetcore.rate_limiting.requests";jFQ.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS="aspnetcore.routing.match_attempts";jFQ.METRIC_HTTP_CLIENT_REQUEST_DURATION="http.client.request.duration";jFQ.METRIC_HTTP_SERVER_REQUEST_DURATION="http.server.request.duration";jFQ.METRIC_JVM_CLASS_COUNT="jvm.class.count";jFQ.METRIC_JVM_CLASS_LOADED="jvm.class.loaded";jFQ.METRIC_JVM_CLASS_UNLOADED="jvm.class.unloaded";jFQ.METRIC_JVM_CPU_COUNT="jvm.cpu.count";jFQ.METRIC_JVM_CPU_RECENT_UTILIZATION="jvm.cpu.recent_utilization";jFQ.METRIC_JVM_CPU_TIME="jvm.cpu.time";jFQ.METRIC_JVM_GC_DURATION="jvm.gc.duration";jFQ.METRIC_JVM_MEMORY_COMMITTED="jvm.memory.committed";jFQ.METRIC_JVM_MEMORY_LIMIT="jvm.memory.limit";jFQ.METRIC_JVM_MEMORY_USED="jvm.memory.used";jFQ.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC="jvm.memory.used_after_last_gc";jFQ.METRIC_JVM_THREAD_COUNT="jvm.thread.count";jFQ.METRIC_KESTREL_ACTIVE_CONNECTIONS="kestrel.active_connections";jFQ.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES="kestrel.active_tls_handshakes";jFQ.METRIC_KESTREL_CONNECTION_DURATION="kestrel.connection.duration";jFQ.METRIC_KESTREL_QUEUED_CONNECTIONS="kestrel.queued_connections";jFQ.METRIC_KESTREL_QUEUED_REQUESTS="kestrel.queued_requests";jFQ.METRIC_KESTREL_REJECTED_CONNECTIONS="kestrel.rejected_connections";jFQ.METRIC_KESTREL_TLS_HANDSHAKE_DURATION="kestrel.tls_handshake.duration";jFQ.METRIC_KESTREL_UPGRADED_CONNECTIONS="kestrel.upgraded_connections";jFQ.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS="signalr.server.active_connections";jFQ.METRIC_SIGNALR_SERVER_CONNECTION_DURATION="signalr.server.connection.duration"});var IW=R((IX)=>{var yV0=IX&&IX.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),VP=IX&&IX.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))yV0(Q,A,B)};Object.defineProperty(IX,"__esModule",{value:!0});VP(lGQ(),IX);VP(LFQ(),IX);VP(wFQ(),IX);VP(PFQ(),IX)});var kFQ=R((TFQ)=>{Object.defineProperty(TFQ,"__esModule",{value:!0});TFQ.defaultServiceName=void 0;function gV0(){return`unknown_service:${process.argv0}`}TFQ.defaultServiceName=gV0});var _FQ=R((Hi)=>{Object.defineProperty(Hi,"__esModule",{value:!0});Hi.defaultServiceName=void 0;var hV0=kFQ();Object.defineProperty(Hi,"defaultServiceName",{enumerable:!0,get:function(){return hV0.defaultServiceName}})});var Ni=R((Di)=>{Object.defineProperty(Di,"__esModule",{value:!0});Di.defaultServiceName=void 0;var fV0=_FQ();Object.defineProperty(Di,"defaultServiceName",{enumerable:!0,get:function(){return fV0.defaultServiceName}})});var $G=R((yFQ)=>{Object.defineProperty(yFQ,"__esModule",{value:!0});yFQ.Resource=void 0;var vFQ=yA(),M$=IW(),Li=MB(),mV0=Ni();class HW{constructor(A,Q){var B;this._attributes=A,this.asyncAttributesPending=Q!=null,this._syncAttributes=(B=this._attributes)!==null&&B!==void 0?B:{},this._asyncAttributesPromise=Q===null||Q===void 0?void 0:Q.then((Y)=>{return this._attributes=Object.assign({},this._attributes,Y),this.asyncAttributesPending=!1,Y},(Y)=>{return vFQ.diag.debug("a resource's async attributes promise rejected: %s",Y),this.asyncAttributesPending=!1,{}})}static empty(){return HW.EMPTY}static default(){return new HW({[M$.SEMRESATTRS_SERVICE_NAME]:(0,mV0.defaultServiceName)(),[M$.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE]:Li.SDK_INFO[M$.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE],[M$.SEMRESATTRS_TELEMETRY_SDK_NAME]:Li.SDK_INFO[M$.SEMRESATTRS_TELEMETRY_SDK_NAME],[M$.SEMRESATTRS_TELEMETRY_SDK_VERSION]:Li.SDK_INFO[M$.SEMRESATTRS_TELEMETRY_SDK_VERSION]})}get attributes(){var A;if(this.asyncAttributesPending)vFQ.diag.error("Accessing resource attributes before async attributes settled");return(A=this._attributes)!==null&&A!==void 0?A:{}}async waitForAsyncAttributes(){if(this.asyncAttributesPending)await this._asyncAttributesPromise}merge(A){var Q;if(!A)return this;let B=Object.assign(Object.assign({},this._syncAttributes),(Q=A._syncAttributes)!==null&&Q!==void 0?Q:A.attributes);if(!this._asyncAttributesPromise&&!A._asyncAttributesPromise)return new HW(B);let Y=Promise.all([this._asyncAttributesPromise,A._asyncAttributesPromise]).then(([J,C])=>{var X;return Object.assign(Object.assign(Object.assign(Object.assign({},this._syncAttributes),J),(X=A._syncAttributes)!==null&&X!==void 0?X:A.attributes),C)});return new HW(B,Y)}}yFQ.Resource=HW;HW.EMPTY=new HW({})});var qi=R((hFQ)=>{Object.defineProperty(hFQ,"__esModule",{value:!0});hFQ.normalizeType=hFQ.normalizeArch=void 0;var uV0=(A)=>{switch(A){case"arm":return"arm32";case"ppc":return"ppc32";case"x64":return"amd64";default:return A}};hFQ.normalizeArch=uV0;var dV0=(A)=>{switch(A){case"sunos":return"solaris";case"win32":return"windows";default:return A}};hFQ.normalizeType=dV0});var IP=R((fFQ)=>{Object.defineProperty(fFQ,"__esModule",{value:!0});fFQ.execAsync=void 0;var lV0=u("child_process"),pV0=u("util");fFQ.execAsync=pV0.promisify(lV0.exec)});var dFQ=R((mFQ)=>{Object.defineProperty(mFQ,"__esModule",{value:!0});mFQ.getMachineId=void 0;var iV0=IP(),nV0=yA();async function sV0(){try{let Q=(await(0,iV0.execAsync)('ioreg -rd1 -c "IOPlatformExpertDevice"')).stdout.split(` +`).find((Y)=>Y.includes("IOPlatformUUID"));if(!Q)return"";let B=Q.split('" = "');if(B.length===2)return B[1].slice(0,-1)}catch(A){nV0.diag.debug(`error reading machine id: ${A}`)}return""}mFQ.getMachineId=sV0});var pFQ=R((cFQ)=>{Object.defineProperty(cFQ,"__esModule",{value:!0});cFQ.getMachineId=void 0;var rV0=u("fs"),aV0=yA();async function oV0(){let A=["/etc/machine-id","/var/lib/dbus/machine-id"];for(let Q of A)try{return(await rV0.promises.readFile(Q,{encoding:"utf8"})).trim()}catch(B){aV0.diag.debug(`error reading machine id: ${B}`)}return""}cFQ.getMachineId=oV0});var rFQ=R((nFQ)=>{Object.defineProperty(nFQ,"__esModule",{value:!0});nFQ.getMachineId=void 0;var tV0=u("fs"),eV0=IP(),iFQ=yA();async function AI0(){try{return(await tV0.promises.readFile("/etc/hostid",{encoding:"utf8"})).trim()}catch(A){iFQ.diag.debug(`error reading machine id: ${A}`)}try{return(await(0,eV0.execAsync)("kenv -q smbios.system.uuid")).stdout.trim()}catch(A){iFQ.diag.debug(`error reading machine id: ${A}`)}return""}nFQ.getMachineId=AI0});var eFQ=R((oFQ)=>{Object.defineProperty(oFQ,"__esModule",{value:!0});oFQ.getMachineId=void 0;var aFQ=u("process"),QI0=IP(),BI0=yA();async function YI0(){let Q="%windir%\\System32\\REG.exe";if(aFQ.arch==="ia32"&&"PROCESSOR_ARCHITEW6432"in aFQ.env)Q="%windir%\\sysnative\\cmd.exe /c "+Q;try{let Y=(await(0,QI0.execAsync)(`${Q} QUERY HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Cryptography /v MachineGuid`)).stdout.split("REG_SZ");if(Y.length===2)return Y[1].trim()}catch(B){BI0.diag.debug(`error reading machine id: ${B}`)}return""}oFQ.getMachineId=YI0});var BZQ=R((AZQ)=>{Object.defineProperty(AZQ,"__esModule",{value:!0});AZQ.getMachineId=void 0;var JI0=yA();async function CI0(){return JI0.diag.debug("could not read machine-id: unsupported platform"),""}AZQ.getMachineId=CI0});var JZQ=R((YZQ)=>{Object.defineProperty(YZQ,"__esModule",{value:!0});YZQ.getMachineId=void 0;var XI0=u("process"),HK;YZQ.getMachineId=HK;switch(XI0.platform){case"darwin":YZQ.getMachineId=HK=dFQ().getMachineId;break;case"linux":YZQ.getMachineId=HK=pFQ().getMachineId;break;case"freebsd":YZQ.getMachineId=HK=rFQ().getMachineId;break;case"win32":YZQ.getMachineId=HK=eFQ().getMachineId;break;default:YZQ.getMachineId=HK=BZQ().getMachineId}});var zi=R((GZQ)=>{Object.defineProperty(GZQ,"__esModule",{value:!0});GZQ.hostDetectorSync=void 0;var Mi=IW(),GI0=$G(),CZQ=u("os"),WI0=qi(),FI0=JZQ();class XZQ{detect(A){let Q={[Mi.SEMRESATTRS_HOST_NAME]:(0,CZQ.hostname)(),[Mi.SEMRESATTRS_HOST_ARCH]:(0,WI0.normalizeArch)((0,CZQ.arch)())};return new GI0.Resource(Q,this._getAsyncAttributes())}_getAsyncAttributes(){return(0,FI0.getMachineId)().then((A)=>{let Q={};if(A)Q[Mi.SEMRESATTRS_HOST_ID]=A;return Q})}}GZQ.hostDetectorSync=new XZQ});var UZQ=R((ZZQ)=>{Object.defineProperty(ZZQ,"__esModule",{value:!0});ZZQ.hostDetector=void 0;var ZI0=zi();class FZQ{detect(A){return Promise.resolve(ZI0.hostDetectorSync.detect(A))}}ZZQ.hostDetector=new FZQ});var Ri=R((IZQ)=>{Object.defineProperty(IZQ,"__esModule",{value:!0});IZQ.osDetectorSync=void 0;var EZQ=IW(),$I0=$G(),KZQ=u("os"),UI0=qi();class VZQ{detect(A){let Q={[EZQ.SEMRESATTRS_OS_TYPE]:(0,UI0.normalizeType)((0,KZQ.platform)()),[EZQ.SEMRESATTRS_OS_VERSION]:(0,KZQ.release)()};return new $I0.Resource(Q)}}IZQ.osDetectorSync=new VZQ});var qZQ=R((NZQ)=>{Object.defineProperty(NZQ,"__esModule",{value:!0});NZQ.osDetector=void 0;var EI0=Ri();class DZQ{detect(A){return Promise.resolve(EI0.osDetectorSync.detect(A))}}NZQ.osDetector=new DZQ});var wi=R((zZQ)=>{Object.defineProperty(zZQ,"__esModule",{value:!0});zZQ.processDetectorSync=void 0;var KI0=yA(),UG=IW(),VI0=$G(),II0=u("os");class MZQ{detect(A){let Q={[UG.SEMRESATTRS_PROCESS_PID]:process.pid,[UG.SEMRESATTRS_PROCESS_EXECUTABLE_NAME]:process.title,[UG.SEMRESATTRS_PROCESS_EXECUTABLE_PATH]:process.execPath,[UG.SEMRESATTRS_PROCESS_COMMAND_ARGS]:[process.argv[0],...process.execArgv,...process.argv.slice(1)],[UG.SEMRESATTRS_PROCESS_RUNTIME_VERSION]:process.versions.node,[UG.SEMRESATTRS_PROCESS_RUNTIME_NAME]:"nodejs",[UG.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION]:"Node.js"};if(process.argv.length>1)Q[UG.SEMRESATTRS_PROCESS_COMMAND]=process.argv[1];try{let B=II0.userInfo();Q[UG.SEMRESATTRS_PROCESS_OWNER]=B.username}catch(B){KI0.diag.debug(`error obtaining process owner: ${B}`)}return new VI0.Resource(Q)}}zZQ.processDetectorSync=new MZQ});var PZQ=R((jZQ)=>{Object.defineProperty(jZQ,"__esModule",{value:!0});jZQ.processDetector=void 0;var HI0=wi();class wZQ{detect(A){return Promise.resolve(HI0.processDetectorSync.detect(A))}}jZQ.processDetector=new wZQ});var _ZQ=R((SZQ)=>{Object.defineProperty(SZQ,"__esModule",{value:!0});SZQ.serviceInstanceIdDetectorSync=void 0;var DI0=IW(),NI0=$G(),LI0=u("crypto");class TZQ{detect(A){let Q={[DI0.SEMRESATTRS_SERVICE_INSTANCE_ID]:(0,LI0.randomUUID)()};return new NI0.Resource(Q)}}SZQ.serviceInstanceIdDetectorSync=new TZQ});var vZQ=R((EG)=>{Object.defineProperty(EG,"__esModule",{value:!0});EG.serviceInstanceIdDetectorSync=EG.processDetectorSync=EG.processDetector=EG.osDetectorSync=EG.osDetector=EG.hostDetectorSync=EG.hostDetector=void 0;var qI0=UZQ();Object.defineProperty(EG,"hostDetector",{enumerable:!0,get:function(){return qI0.hostDetector}});var MI0=zi();Object.defineProperty(EG,"hostDetectorSync",{enumerable:!0,get:function(){return MI0.hostDetectorSync}});var zI0=qZQ();Object.defineProperty(EG,"osDetector",{enumerable:!0,get:function(){return zI0.osDetector}});var RI0=Ri();Object.defineProperty(EG,"osDetectorSync",{enumerable:!0,get:function(){return RI0.osDetectorSync}});var wI0=PZQ();Object.defineProperty(EG,"processDetector",{enumerable:!0,get:function(){return wI0.processDetector}});var jI0=wi();Object.defineProperty(EG,"processDetectorSync",{enumerable:!0,get:function(){return jI0.processDetectorSync}});var OI0=_ZQ();Object.defineProperty(EG,"serviceInstanceIdDetectorSync",{enumerable:!0,get:function(){return OI0.serviceInstanceIdDetectorSync}})});var yZQ=R((KG)=>{Object.defineProperty(KG,"__esModule",{value:!0});KG.serviceInstanceIdDetectorSync=KG.processDetectorSync=KG.processDetector=KG.osDetectorSync=KG.osDetector=KG.hostDetectorSync=KG.hostDetector=void 0;var R$=vZQ();Object.defineProperty(KG,"hostDetector",{enumerable:!0,get:function(){return R$.hostDetector}});Object.defineProperty(KG,"hostDetectorSync",{enumerable:!0,get:function(){return R$.hostDetectorSync}});Object.defineProperty(KG,"osDetector",{enumerable:!0,get:function(){return R$.osDetector}});Object.defineProperty(KG,"osDetectorSync",{enumerable:!0,get:function(){return R$.osDetectorSync}});Object.defineProperty(KG,"processDetector",{enumerable:!0,get:function(){return R$.processDetector}});Object.defineProperty(KG,"processDetectorSync",{enumerable:!0,get:function(){return R$.processDetectorSync}});Object.defineProperty(KG,"serviceInstanceIdDetectorSync",{enumerable:!0,get:function(){return R$.serviceInstanceIdDetectorSync}})});var Oi=R((hZQ)=>{Object.defineProperty(hZQ,"__esModule",{value:!0});hZQ.browserDetectorSync=void 0;var HP=IW(),SI0=yA(),ji=$G();class gZQ{detect(A){var Q,B,Y;if(!(typeof navigator<"u"&&((B=(Q=global.process)===null||Q===void 0?void 0:Q.versions)===null||B===void 0?void 0:B.node)===void 0&&((Y=global.Bun)===null||Y===void 0?void 0:Y.version)===void 0))return ji.Resource.empty();let C={[HP.SEMRESATTRS_PROCESS_RUNTIME_NAME]:"browser",[HP.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION]:"Web Browser",[HP.SEMRESATTRS_PROCESS_RUNTIME_VERSION]:navigator.userAgent};return this._getResourceAttributes(C,A)}_getResourceAttributes(A,Q){if(A[HP.SEMRESATTRS_PROCESS_RUNTIME_VERSION]==="")return SI0.diag.debug("BrowserDetector failed: Unable to find required browser resources. "),ji.Resource.empty();else return new ji.Resource(Object.assign({},A))}}hZQ.browserDetectorSync=new gZQ});var uZQ=R((bZQ)=>{Object.defineProperty(bZQ,"__esModule",{value:!0});bZQ.browserDetector=void 0;var kI0=Oi();class fZQ{detect(A){return Promise.resolve(kI0.browserDetectorSync.detect(A))}}bZQ.browserDetector=new fZQ});var Pi=R((cZQ)=>{Object.defineProperty(cZQ,"__esModule",{value:!0});cZQ.envDetectorSync=void 0;var _I0=yA(),vI0=MB(),yI0=IW(),gI0=$G();class dZQ{constructor(){this._MAX_LENGTH=255,this._COMMA_SEPARATOR=",",this._LABEL_KEY_VALUE_SPLITTER="=",this._ERROR_MESSAGE_INVALID_CHARS="should be a ASCII string with a length greater than 0 and not exceed "+this._MAX_LENGTH+" characters.",this._ERROR_MESSAGE_INVALID_VALUE="should be a ASCII string with a length not exceed "+this._MAX_LENGTH+" characters."}detect(A){let Q={},B=(0,vI0.getEnv)(),Y=B.OTEL_RESOURCE_ATTRIBUTES,J=B.OTEL_SERVICE_NAME;if(Y)try{let C=this._parseResourceAttributes(Y);Object.assign(Q,C)}catch(C){_I0.diag.debug(`EnvDetector failed: ${C.message}`)}if(J)Q[yI0.SEMRESATTRS_SERVICE_NAME]=J;return new gI0.Resource(Q)}_parseResourceAttributes(A){if(!A)return{};let Q={},B=A.split(this._COMMA_SEPARATOR,-1);for(let Y of B){let J=Y.split(this._LABEL_KEY_VALUE_SPLITTER,-1);if(J.length!==2)continue;let[C,X]=J;if(C=C.trim(),X=X.trim().split(/^"|"$/).join(""),!this._isValidAndNotEmpty(C))throw Error(`Attribute key ${this._ERROR_MESSAGE_INVALID_CHARS}`);if(!this._isValid(X))throw Error(`Attribute value ${this._ERROR_MESSAGE_INVALID_VALUE}`);Q[C]=decodeURIComponent(X)}return Q}_isValid(A){return A.length<=this._MAX_LENGTH&&this._isBaggageOctetString(A)}_isBaggageOctetString(A){for(let Q=0;Q126)return!1}return!0}_isValidAndNotEmpty(A){return A.length>0&&this._isValid(A)}}cZQ.envDetectorSync=new dZQ});var sZQ=R((iZQ)=>{Object.defineProperty(iZQ,"__esModule",{value:!0});iZQ.envDetector=void 0;var hI0=Pi();class pZQ{detect(A){return Promise.resolve(hI0.envDetectorSync.detect(A))}}iZQ.envDetector=new pZQ});var rZQ=R((u8)=>{Object.defineProperty(u8,"__esModule",{value:!0});u8.envDetectorSync=u8.browserDetectorSync=u8.envDetector=u8.browserDetector=u8.serviceInstanceIdDetectorSync=u8.processDetectorSync=u8.processDetector=u8.osDetectorSync=u8.osDetector=u8.hostDetectorSync=u8.hostDetector=void 0;var w$=yZQ();Object.defineProperty(u8,"hostDetector",{enumerable:!0,get:function(){return w$.hostDetector}});Object.defineProperty(u8,"hostDetectorSync",{enumerable:!0,get:function(){return w$.hostDetectorSync}});Object.defineProperty(u8,"osDetector",{enumerable:!0,get:function(){return w$.osDetector}});Object.defineProperty(u8,"osDetectorSync",{enumerable:!0,get:function(){return w$.osDetectorSync}});Object.defineProperty(u8,"processDetector",{enumerable:!0,get:function(){return w$.processDetector}});Object.defineProperty(u8,"processDetectorSync",{enumerable:!0,get:function(){return w$.processDetectorSync}});Object.defineProperty(u8,"serviceInstanceIdDetectorSync",{enumerable:!0,get:function(){return w$.serviceInstanceIdDetectorSync}});var xI0=uZQ();Object.defineProperty(u8,"browserDetector",{enumerable:!0,get:function(){return xI0.browserDetector}});var fI0=sZQ();Object.defineProperty(u8,"envDetector",{enumerable:!0,get:function(){return fI0.envDetector}});var bI0=Oi();Object.defineProperty(u8,"browserDetectorSync",{enumerable:!0,get:function(){return bI0.browserDetectorSync}});var mI0=Pi();Object.defineProperty(u8,"envDetectorSync",{enumerable:!0,get:function(){return mI0.envDetectorSync}})});var tZQ=R((aZQ)=>{Object.defineProperty(aZQ,"__esModule",{value:!0});aZQ.isPromiseLike=void 0;var dI0=(A)=>{return A!==null&&typeof A==="object"&&typeof A.then==="function"};aZQ.isPromiseLike=dI0});var B$Q=R((A$Q)=>{Object.defineProperty(A$Q,"__esModule",{value:!0});A$Q.detectResourcesSync=A$Q.detectResources=void 0;var PL=$G(),DK=yA(),cI0=tZQ(),lI0=async(A={})=>{let Q=await Promise.all((A.detectors||[]).map(async(B)=>{try{let Y=await B.detect(A);return DK.diag.debug(`${B.constructor.name} found resource.`,Y),Y}catch(Y){return DK.diag.debug(`${B.constructor.name} failed: ${Y.message}`),PL.Resource.empty()}}));return eZQ(Q),Q.reduce((B,Y)=>B.merge(Y),PL.Resource.empty())};A$Q.detectResources=lI0;var pI0=(A={})=>{var Q;let B=((Q=A.detectors)!==null&&Q!==void 0?Q:[]).map((J)=>{try{let C=J.detect(A),X;if((0,cI0.isPromiseLike)(C)){let G=async()=>{var W;let F=await C;return await((W=F.waitForAsyncAttributes)===null||W===void 0?void 0:W.call(F)),F.attributes};X=new PL.Resource({},G())}else X=C;if(X.waitForAsyncAttributes)X.waitForAsyncAttributes().then(()=>DK.diag.debug(`${J.constructor.name} found resource.`,X));else DK.diag.debug(`${J.constructor.name} found resource.`,X);return X}catch(C){return DK.diag.error(`${J.constructor.name} failed: ${C.message}`),PL.Resource.empty()}}),Y=B.reduce((J,C)=>J.merge(C),PL.Resource.empty());if(Y.waitForAsyncAttributes)Y.waitForAsyncAttributes().then(()=>{eZQ(B)});return Y};A$Q.detectResourcesSync=pI0;var eZQ=(A)=>{A.forEach((Q)=>{if(Object.keys(Q.attributes).length>0){let B=JSON.stringify(Q.attributes,null,4);DK.diag.verbose(B)}})}});var Ti=R((KJ)=>{Object.defineProperty(KJ,"__esModule",{value:!0});KJ.detectResources=KJ.detectResourcesSync=KJ.serviceInstanceIdDetectorSync=KJ.processDetectorSync=KJ.processDetector=KJ.osDetectorSync=KJ.osDetector=KJ.hostDetectorSync=KJ.hostDetector=KJ.envDetectorSync=KJ.envDetector=KJ.browserDetectorSync=KJ.browserDetector=KJ.defaultServiceName=KJ.Resource=void 0;var nI0=$G();Object.defineProperty(KJ,"Resource",{enumerable:!0,get:function(){return nI0.Resource}});var sI0=Ni();Object.defineProperty(KJ,"defaultServiceName",{enumerable:!0,get:function(){return sI0.defaultServiceName}});var F1=rZQ();Object.defineProperty(KJ,"browserDetector",{enumerable:!0,get:function(){return F1.browserDetector}});Object.defineProperty(KJ,"browserDetectorSync",{enumerable:!0,get:function(){return F1.browserDetectorSync}});Object.defineProperty(KJ,"envDetector",{enumerable:!0,get:function(){return F1.envDetector}});Object.defineProperty(KJ,"envDetectorSync",{enumerable:!0,get:function(){return F1.envDetectorSync}});Object.defineProperty(KJ,"hostDetector",{enumerable:!0,get:function(){return F1.hostDetector}});Object.defineProperty(KJ,"hostDetectorSync",{enumerable:!0,get:function(){return F1.hostDetectorSync}});Object.defineProperty(KJ,"osDetector",{enumerable:!0,get:function(){return F1.osDetector}});Object.defineProperty(KJ,"osDetectorSync",{enumerable:!0,get:function(){return F1.osDetectorSync}});Object.defineProperty(KJ,"processDetector",{enumerable:!0,get:function(){return F1.processDetector}});Object.defineProperty(KJ,"processDetectorSync",{enumerable:!0,get:function(){return F1.processDetectorSync}});Object.defineProperty(KJ,"serviceInstanceIdDetectorSync",{enumerable:!0,get:function(){return F1.serviceInstanceIdDetectorSync}});var Y$Q=B$Q();Object.defineProperty(KJ,"detectResourcesSync",{enumerable:!0,get:function(){return Y$Q.detectResourcesSync}});Object.defineProperty(KJ,"detectResources",{enumerable:!0,get:function(){return Y$Q.detectResources}})});var G$Q=R((C$Q)=>{Object.defineProperty(C$Q,"__esModule",{value:!0});C$Q.MultiSpanProcessor=void 0;var aI0=MB();class J$Q{constructor(A){this._spanProcessors=A}forceFlush(){let A=[];for(let Q of this._spanProcessors)A.push(Q.forceFlush());return new Promise((Q)=>{Promise.all(A).then(()=>{Q()}).catch((B)=>{(0,aI0.globalErrorHandler)(B||Error("MultiSpanProcessor: forceFlush failed")),Q()})})}onStart(A,Q){for(let B of this._spanProcessors)B.onStart(A,Q)}onEnd(A){for(let Q of this._spanProcessors)Q.onEnd(A)}shutdown(){let A=[];for(let Q of this._spanProcessors)A.push(Q.shutdown());return new Promise((Q,B)=>{Promise.all(A).then(()=>{Q()},B)})}}C$Q.MultiSpanProcessor=J$Q});var Si=R((F$Q)=>{Object.defineProperty(F$Q,"__esModule",{value:!0});F$Q.NoopSpanProcessor=void 0;class W$Q{onStart(A,Q){}onEnd(A){}shutdown(){return Promise.resolve()}forceFlush(){return Promise.resolve()}}F$Q.NoopSpanProcessor=W$Q});var I$Q=R((K$Q)=>{Object.defineProperty(K$Q,"__esModule",{value:!0});K$Q.BasicTracerProvider=K$Q.ForceFlushState=void 0;var NK=yA(),qK=MB(),$$Q=Ti(),oI0=Vi(),tI0=Ui(),U$Q=G$Q(),eI0=Si(),AH0=EP(),QH0=Ki(),LK;(function(A){A[A.resolved=0]="resolved",A[A.timeout=1]="timeout",A[A.error=2]="error",A[A.unresolved=3]="unresolved"})(LK=K$Q.ForceFlushState||(K$Q.ForceFlushState={}));class DP{constructor(A={}){var Q,B;this._registeredSpanProcessors=[],this._tracers=new Map;let Y=(0,qK.merge)({},(0,tI0.loadDefaultConfig)(),(0,QH0.reconfigureLimits)(A));if(this.resource=(Q=Y.resource)!==null&&Q!==void 0?Q:$$Q.Resource.empty(),Y.mergeResourceWithDefaults)this.resource=$$Q.Resource.default().merge(this.resource);if(this._config=Object.assign({},Y,{resource:this.resource}),(B=A.spanProcessors)===null||B===void 0?void 0:B.length)this._registeredSpanProcessors=[...A.spanProcessors],this.activeSpanProcessor=new U$Q.MultiSpanProcessor(this._registeredSpanProcessors);else{let J=this._buildExporterFromEnv();if(J!==void 0){let C=new AH0.BatchSpanProcessor(J);this.activeSpanProcessor=C}else this.activeSpanProcessor=new eI0.NoopSpanProcessor}}getTracer(A,Q,B){let Y=`${A}@${Q||""}:${(B===null||B===void 0?void 0:B.schemaUrl)||""}`;if(!this._tracers.has(Y))this._tracers.set(Y,new oI0.Tracer({name:A,version:Q,schemaUrl:B===null||B===void 0?void 0:B.schemaUrl},this._config,this));return this._tracers.get(Y)}addSpanProcessor(A){if(this._registeredSpanProcessors.length===0)this.activeSpanProcessor.shutdown().catch((Q)=>NK.diag.error("Error while trying to shutdown current span processor",Q));this._registeredSpanProcessors.push(A),this.activeSpanProcessor=new U$Q.MultiSpanProcessor(this._registeredSpanProcessors)}getActiveSpanProcessor(){return this.activeSpanProcessor}register(A={}){if(NK.trace.setGlobalTracerProvider(this),A.propagator===void 0)A.propagator=this._buildPropagatorFromEnv();if(A.contextManager)NK.context.setGlobalContextManager(A.contextManager);if(A.propagator)NK.propagation.setGlobalPropagator(A.propagator)}forceFlush(){let A=this._config.forceFlushTimeoutMillis,Q=this._registeredSpanProcessors.map((B)=>{return new Promise((Y)=>{let J,C=setTimeout(()=>{Y(Error(`Span processor did not completed within timeout period of ${A} ms`)),J=LK.timeout},A);B.forceFlush().then(()=>{if(clearTimeout(C),J!==LK.timeout)J=LK.resolved,Y(J)}).catch((X)=>{clearTimeout(C),J=LK.error,Y(X)})})});return new Promise((B,Y)=>{Promise.all(Q).then((J)=>{let C=J.filter((X)=>X!==LK.resolved);if(C.length>0)Y(C);else B()}).catch((J)=>Y([J]))})}shutdown(){return this.activeSpanProcessor.shutdown()}_getPropagator(A){var Q;return(Q=this.constructor._registeredPropagators.get(A))===null||Q===void 0?void 0:Q()}_getSpanExporter(A){var Q;return(Q=this.constructor._registeredExporters.get(A))===null||Q===void 0?void 0:Q()}_buildPropagatorFromEnv(){let A=Array.from(new Set((0,qK.getEnv)().OTEL_PROPAGATORS)),B=A.map((Y)=>{let J=this._getPropagator(Y);if(!J)NK.diag.warn(`Propagator "${Y}" requested through environment variable is unavailable.`);return J}).reduce((Y,J)=>{if(J)Y.push(J);return Y},[]);if(B.length===0)return;else if(A.length===1)return B[0];else return new qK.CompositePropagator({propagators:B})}_buildExporterFromEnv(){let A=(0,qK.getEnv)().OTEL_TRACES_EXPORTER;if(A==="none"||A==="")return;let Q=this._getSpanExporter(A);if(!Q)NK.diag.error(`Exporter "${A}" requested through environment variable is unavailable.`);return Q}}K$Q.BasicTracerProvider=DP;DP._registeredPropagators=new Map([["tracecontext",()=>new qK.W3CTraceContextPropagator],["baggage",()=>new qK.W3CBaggagePropagator]]);DP._registeredExporters=new Map});var L$Q=R((D$Q)=>{Object.defineProperty(D$Q,"__esModule",{value:!0});D$Q.ConsoleSpanExporter=void 0;var ki=MB();class H$Q{export(A,Q){return this._sendSpans(A,Q)}shutdown(){return this._sendSpans([]),this.forceFlush()}forceFlush(){return Promise.resolve()}_exportInfo(A){var Q;return{resource:{attributes:A.resource.attributes},instrumentationScope:A.instrumentationLibrary,traceId:A.spanContext().traceId,parentId:A.parentSpanId,traceState:(Q=A.spanContext().traceState)===null||Q===void 0?void 0:Q.serialize(),name:A.name,id:A.spanContext().spanId,kind:A.kind,timestamp:(0,ki.hrTimeToMicroseconds)(A.startTime),duration:(0,ki.hrTimeToMicroseconds)(A.duration),attributes:A.attributes,status:A.status,events:A.events,links:A.links}}_sendSpans(A,Q){for(let B of A)console.dir(this._exportInfo(B),{depth:3});if(Q)return Q({code:ki.ExportResultCode.SUCCESS})}}D$Q.ConsoleSpanExporter=H$Q});var w$Q=R((z$Q)=>{Object.defineProperty(z$Q,"__esModule",{value:!0});z$Q.InMemorySpanExporter=void 0;var q$Q=MB();class M$Q{constructor(){this._finishedSpans=[],this._stopped=!1}export(A,Q){if(this._stopped)return Q({code:q$Q.ExportResultCode.FAILED,error:Error("Exporter has been stopped")});this._finishedSpans.push(...A),setTimeout(()=>Q({code:q$Q.ExportResultCode.SUCCESS}),0)}shutdown(){return this._stopped=!0,this._finishedSpans=[],this.forceFlush()}forceFlush(){return Promise.resolve()}reset(){this._finishedSpans=[]}getFinishedSpans(){return this._finishedSpans}}z$Q.InMemorySpanExporter=M$Q});var T$Q=R((O$Q)=>{Object.defineProperty(O$Q,"__esModule",{value:!0});O$Q.SimpleSpanProcessor=void 0;var BH0=yA(),MK=MB();class j$Q{constructor(A){this._exporter=A,this._shutdownOnce=new MK.BindOnceFuture(this._shutdown,this),this._unresolvedExports=new Set}async forceFlush(){if(await Promise.all(Array.from(this._unresolvedExports)),this._exporter.forceFlush)await this._exporter.forceFlush()}onStart(A,Q){}onEnd(A){var Q,B;if(this._shutdownOnce.isCalled)return;if((A.spanContext().traceFlags&BH0.TraceFlags.SAMPLED)===0)return;let Y=()=>MK.internal._export(this._exporter,[A]).then((J)=>{var C;if(J.code!==MK.ExportResultCode.SUCCESS)(0,MK.globalErrorHandler)((C=J.error)!==null&&C!==void 0?C:Error(`SimpleSpanProcessor: span export failed (status ${J})`))}).catch((J)=>{(0,MK.globalErrorHandler)(J)});if(A.resource.asyncAttributesPending){let J=(B=(Q=A.resource).waitForAsyncAttributes)===null||B===void 0?void 0:B.call(Q).then(()=>{if(J!=null)this._unresolvedExports.delete(J);return Y()},(C)=>(0,MK.globalErrorHandler)(C));if(J!=null)this._unresolvedExports.add(J)}else Y()}shutdown(){return this._shutdownOnce.call()}_shutdown(){return this._exporter.shutdown()}}O$Q.SimpleSpanProcessor=j$Q});var _i=R((VJ)=>{Object.defineProperty(VJ,"__esModule",{value:!0});VJ.Span=VJ.SamplingDecision=VJ.TraceIdRatioBasedSampler=VJ.ParentBasedSampler=VJ.AlwaysOnSampler=VJ.AlwaysOffSampler=VJ.NoopSpanProcessor=VJ.SimpleSpanProcessor=VJ.InMemorySpanExporter=VJ.ConsoleSpanExporter=VJ.RandomIdGenerator=VJ.BatchSpanProcessor=VJ.ForceFlushState=VJ.BasicTracerProvider=VJ.Tracer=void 0;var YH0=Vi();Object.defineProperty(VJ,"Tracer",{enumerable:!0,get:function(){return YH0.Tracer}});var S$Q=I$Q();Object.defineProperty(VJ,"BasicTracerProvider",{enumerable:!0,get:function(){return S$Q.BasicTracerProvider}});Object.defineProperty(VJ,"ForceFlushState",{enumerable:!0,get:function(){return S$Q.ForceFlushState}});var k$Q=EP();Object.defineProperty(VJ,"BatchSpanProcessor",{enumerable:!0,get:function(){return k$Q.BatchSpanProcessor}});Object.defineProperty(VJ,"RandomIdGenerator",{enumerable:!0,get:function(){return k$Q.RandomIdGenerator}});var JH0=L$Q();Object.defineProperty(VJ,"ConsoleSpanExporter",{enumerable:!0,get:function(){return JH0.ConsoleSpanExporter}});var CH0=w$Q();Object.defineProperty(VJ,"InMemorySpanExporter",{enumerable:!0,get:function(){return CH0.InMemorySpanExporter}});var XH0=T$Q();Object.defineProperty(VJ,"SimpleSpanProcessor",{enumerable:!0,get:function(){return XH0.SimpleSpanProcessor}});var GH0=Si();Object.defineProperty(VJ,"NoopSpanProcessor",{enumerable:!0,get:function(){return GH0.NoopSpanProcessor}});var WH0=XP();Object.defineProperty(VJ,"AlwaysOffSampler",{enumerable:!0,get:function(){return WH0.AlwaysOffSampler}});var FH0=GP();Object.defineProperty(VJ,"AlwaysOnSampler",{enumerable:!0,get:function(){return FH0.AlwaysOnSampler}});var ZH0=Wi();Object.defineProperty(VJ,"ParentBasedSampler",{enumerable:!0,get:function(){return ZH0.ParentBasedSampler}});var $H0=Fi();Object.defineProperty(VJ,"TraceIdRatioBasedSampler",{enumerable:!0,get:function(){return $H0.TraceIdRatioBasedSampler}});var UH0=OL();Object.defineProperty(VJ,"SamplingDecision",{enumerable:!0,get:function(){return UH0.SamplingDecision}});var EH0=Ci();Object.defineProperty(VJ,"Span",{enumerable:!0,get:function(){return EH0.Span}})});var $4Q=R((F4Q)=>{Object.defineProperty(F4Q,"__esModule",{value:!0});F4Q.PACKAGE_NAME=F4Q.PACKAGE_VERSION=void 0;F4Q.PACKAGE_VERSION="0.10.1";F4Q.PACKAGE_NAME="@opentelemetry/instrumentation-undici"});var K4Q=R((U4Q)=>{Object.defineProperty(U4Q,"__esModule",{value:!0});U4Q.SemanticAttributes=void 0;U4Q.SemanticAttributes={HTTP_CONNECTION_STATE:"http.connection.state",ERROR_TYPE:"error.type",HTTP_REQUEST_BODY_SIZE:"http.request.body.size",HTTP_REQUEST_METHOD:"http.request.method",HTTP_REQUEST_METHOD_ORIGINAL:"http.request.method_original",HTTP_REQUEST_RESEND_COUNT:"http.request.resend_count",HTTP_RESPONSE_BODY_SIZE:"http.response.body.size",HTTP_RESPONSE_STATUS_CODE:"http.response.status_code",HTTP_ROUTE:"http.route",NETWORK_PEER_ADDRESS:"network.peer.address",NETWORK_PEER_PORT:"network.peer.port",NETWORK_PROTOCOL_NAME:"network.protocol.name",NETWORK_PROTOCOL_VERSION:"network.protocol.version",SERVER_ADDRESS:"server.address",SERVER_PORT:"server.port",URL_FULL:"url.full",URL_PATH:"url.path",URL_QUERY:"url.query",URL_SCHEME:"url.scheme",USER_AGENT_ORIGINAL:"user_agent.original"}});var N4Q=R((H4Q)=>{Object.defineProperty(H4Q,"__esModule",{value:!0});H4Q.UndiciInstrumentation=void 0;var vL=u("diagnostics_channel"),UD0=u("url"),yL=NB(),d8=yA(),V4Q=$4Q(),xY=K4Q(),wP=MB();class I4Q extends yL.InstrumentationBase{constructor(A={}){super(V4Q.PACKAGE_NAME,V4Q.PACKAGE_VERSION,A);this._recordFromReq=new WeakMap}init(){return}disable(){super.disable(),this._channelSubs.forEach((A)=>A.unsubscribe()),this._channelSubs.length=0}enable(){if(super.enable(),this._channelSubs=this._channelSubs||[],this._channelSubs.length>0)return;this.subscribeToChannel("undici:request:create",this.onRequestCreated.bind(this)),this.subscribeToChannel("undici:client:sendHeaders",this.onRequestHeaders.bind(this)),this.subscribeToChannel("undici:request:headers",this.onResponseHeaders.bind(this)),this.subscribeToChannel("undici:request:trailers",this.onDone.bind(this)),this.subscribeToChannel("undici:request:error",this.onError.bind(this))}_updateMetricInstruments(){this._httpClientDurationHistogram=this.meter.createHistogram("http.client.request.duration",{description:"Measures the duration of outbound HTTP requests.",unit:"s",valueType:d8.ValueType.DOUBLE,advice:{explicitBucketBoundaries:[0.005,0.01,0.025,0.05,0.075,0.1,0.25,0.5,0.75,1,2.5,5,7.5,10]}})}subscribeToChannel(A,Q){var B;let[Y,J]=process.version.replace("v","").split(".").map((G)=>Number(G)),C=Y>18||Y===18&&J>=19,X;if(C)(B=vL.subscribe)===null||B===void 0||B.call(vL,A,Q),X=()=>{var G;return(G=vL.unsubscribe)===null||G===void 0?void 0:G.call(vL,A,Q)};else{let G=vL.channel(A);G.subscribe(Q),X=()=>G.unsubscribe(Q)}this._channelSubs.push({name:A,unsubscribe:X})}onRequestCreated({request:A}){let Q=this.getConfig(),B=Q.enabled!==!1;if((0,yL.safeExecuteInTheMiddle)(()=>{var z;return!B||A.method==="CONNECT"||((z=Q.ignoreRequestHook)===null||z===void 0?void 0:z.call(Q,A))},(z)=>z&&this._diag.error("caught ignoreRequestHook error: ",z),!0))return;let J=(0,wP.hrTime)(),C;try{C=new UD0.URL(A.path,A.origin)}catch(z){this._diag.warn("could not determine url.full:",z);return}let X=C.protocol.replace(":",""),G=this.getRequestMethod(A.method),W={[xY.SemanticAttributes.HTTP_REQUEST_METHOD]:G,[xY.SemanticAttributes.HTTP_REQUEST_METHOD_ORIGINAL]:A.method,[xY.SemanticAttributes.URL_FULL]:C.toString(),[xY.SemanticAttributes.URL_PATH]:C.pathname,[xY.SemanticAttributes.URL_QUERY]:C.search,[xY.SemanticAttributes.URL_SCHEME]:X},F={https:"443",http:"80"},Z=C.hostname,U=C.port||F[X];if(W[xY.SemanticAttributes.SERVER_ADDRESS]=Z,U&&!isNaN(Number(U)))W[xY.SemanticAttributes.SERVER_PORT]=Number(U);let $;if(Array.isArray(A.headers)){let z=A.headers.findIndex((M)=>M.toLowerCase()==="user-agent");if(z>=0)$=A.headers[z+1]}else if(typeof A.headers==="string"){let M=A.headers.split(`\r +`).find((N)=>N.toLowerCase().startsWith("user-agent"));$=M&&M.substring(M.indexOf(":")+1).trim()}if($)W[xY.SemanticAttributes.USER_AGENT_ORIGINAL]=$;let E=(0,yL.safeExecuteInTheMiddle)(()=>{var z;return(z=Q.startSpanHook)===null||z===void 0?void 0:z.call(Q,A)},(z)=>z&&this._diag.error("caught startSpanHook error: ",z),!0);if(E)Object.entries(E).forEach(([z,M])=>{W[z]=M});let K=d8.context.active(),I=d8.trace.getSpan(K),V;if(Q.requireParentforSpans&&(!I||!d8.trace.isSpanContextValid(I.spanContext())))V=d8.trace.wrapSpanContext(d8.INVALID_SPAN_CONTEXT);else V=this.tracer.startSpan(G==="_OTHER"?"HTTP":G,{kind:d8.SpanKind.CLIENT,attributes:W},K);(0,yL.safeExecuteInTheMiddle)(()=>{var z;return(z=Q.requestHook)===null||z===void 0?void 0:z.call(Q,V,A)},(z)=>z&&this._diag.error("caught requestHook error: ",z),!0);let H=d8.trace.setSpan(d8.context.active(),V),D={};d8.propagation.inject(H,D);let L=Object.entries(D);for(let z=0;zU.toLowerCase())),Z=Array.isArray(A.headers)?A.headers:A.headers.split(`\r +`);Z.forEach((U,$)=>{let E=U.indexOf(":"),K=E!==-1,I=(K?U.substring(0,E):U).toLowerCase(),V=K?U.substring(E+1):Z[$+1];if(F.has(I))W[`http.request.header.${I}`]=V.trim()})}C.setAttributes(W)}onResponseHeaders({request:A,response:Q}){var B,Y;let J=this._recordFromReq.get(A);if(!J)return;let{span:C,attributes:X}=J,G={[xY.SemanticAttributes.HTTP_RESPONSE_STATUS_CODE]:Q.statusCode},W=this.getConfig();(0,yL.safeExecuteInTheMiddle)(()=>{var Z;return(Z=W.responseHook)===null||Z===void 0?void 0:Z.call(W,C,{request:A,response:Q})},(Z)=>Z&&this._diag.error("caught responseHook error: ",Z),!0);let F=new Set;if((B=W.headersToSpanAttributes)===null||B===void 0?void 0:B.responseHeaders)(Y=W.headersToSpanAttributes)===null||Y===void 0||Y.responseHeaders.forEach((Z)=>F.add(Z.toLowerCase()));for(let Z=0;Z=400?d8.SpanStatusCode.ERROR:d8.SpanStatusCode.UNSET}),J.attributes=Object.assign(X,G)}onDone({request:A}){let Q=this._recordFromReq.get(A);if(!Q)return;let{span:B,attributes:Y,startTime:J}=Q;B.end(),this._recordFromReq.delete(A),this.recordRequestDuration(Y,J)}onError({request:A,error:Q}){let B=this._recordFromReq.get(A);if(!B)return;let{span:Y,attributes:J,startTime:C}=B;Y.recordException(Q),Y.setStatus({code:d8.SpanStatusCode.ERROR,message:Q.message}),Y.end(),this._recordFromReq.delete(A),J[xY.SemanticAttributes.ERROR_TYPE]=Q.message,this.recordRequestDuration(J,C)}recordRequestDuration(A,Q){let B={};[xY.SemanticAttributes.HTTP_RESPONSE_STATUS_CODE,xY.SemanticAttributes.HTTP_REQUEST_METHOD,xY.SemanticAttributes.SERVER_ADDRESS,xY.SemanticAttributes.SERVER_PORT,xY.SemanticAttributes.URL_SCHEME,xY.SemanticAttributes.ERROR_TYPE].forEach((C)=>{if(C in A)B[C]=A[C]});let J=(0,wP.hrTimeToMilliseconds)((0,wP.hrTimeDuration)(Q,(0,wP.hrTime)()))/1000;this._httpClientDurationHistogram.record(J,B)}getRequestMethod(A){let Q={CONNECT:!0,OPTIONS:!0,HEAD:!0,GET:!0,POST:!0,PUT:!0,PATCH:!0,DELETE:!0,TRACE:!0};if(A.toUpperCase()in Q)return A.toUpperCase();return"_OTHER"}}H4Q.UndiciInstrumentation=I4Q});var q4Q=R((L4Q)=>{Object.defineProperty(L4Q,"__esModule",{value:!0})});var z4Q=R((NW)=>{var ED0=NW&&NW.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),M4Q=NW&&NW.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))ED0(Q,A,B)};Object.defineProperty(NW,"__esModule",{value:!0});M4Q(N4Q(),NW);M4Q(q4Q(),NW)});var _4Q=R((S4Q)=>{Object.defineProperty(S4Q,"__esModule",{value:!0});S4Q.PACKAGE_NAME=S4Q.PACKAGE_VERSION=void 0;S4Q.PACKAGE_VERSION="0.19.1";S4Q.PACKAGE_NAME="@opentelemetry/instrumentation-fs"});var g4Q=R((v4Q)=>{Object.defineProperty(v4Q,"__esModule",{value:!0});v4Q.SYNC_FUNCTIONS=v4Q.CALLBACK_FUNCTIONS=v4Q.PROMISE_FUNCTIONS=void 0;v4Q.PROMISE_FUNCTIONS=["access","appendFile","chmod","chown","copyFile","cp","lchown","link","lstat","lutimes","mkdir","mkdtemp","open","opendir","readdir","readFile","readlink","realpath","rename","rm","rmdir","stat","symlink","truncate","unlink","utimes","writeFile"];v4Q.CALLBACK_FUNCTIONS=["access","appendFile","chmod","chown","copyFile","cp","exists","lchown","link","lstat","lutimes","mkdir","mkdtemp","open","opendir","readdir","readFile","readlink","realpath","realpath.native","rename","rm","rmdir","stat","symlink","truncate","unlink","utimes","writeFile"];v4Q.SYNC_FUNCTIONS=["accessSync","appendFileSync","chmodSync","chownSync","copyFileSync","cpSync","existsSync","lchownSync","linkSync","lstatSync","lutimesSync","mkdirSync","mkdtempSync","opendirSync","openSync","readdirSync","readFileSync","readlinkSync","realpathSync","realpathSync.native","renameSync","rmdirSync","rmSync","statSync","symlinkSync","truncateSync","unlinkSync","utimesSync","writeFileSync"]});var b4Q=R((x4Q)=>{Object.defineProperty(x4Q,"__esModule",{value:!0});x4Q.indexFs=x4Q.splitTwoLevels=void 0;function h4Q(A){let Q=A.split(".");if(Q.length>1){if(Q.length!==2)throw Error(`Invalid member function name ${A}`);return Q}else return[A]}x4Q.splitTwoLevels=h4Q;function wD0(A,Q){if(!Q)throw Error(JSON.stringify({member:Q}));let B=h4Q(Q),[Y,J]=B;if(J)return{objectToPatch:A[Y],functionNameToPatch:J};else return{objectToPatch:A,functionNameToPatch:Y}}x4Q.indexFs=wD0});var l4Q=R((d4Q)=>{Object.defineProperty(d4Q,"__esModule",{value:!0});d4Q.FsInstrumentation=void 0;var P0=yA(),VG=MB(),$1=NB(),m4Q=_4Q(),qW=g4Q(),OD0=u("util"),TP=b4Q();function SP(A,Q){return Object.assign(A,Q)}class u4Q extends $1.InstrumentationBase{constructor(A={}){super(m4Q.PACKAGE_NAME,m4Q.PACKAGE_VERSION,A)}init(){return[new $1.InstrumentationNodeModuleDefinition("fs",["*"],(A)=>{for(let Q of qW.SYNC_FUNCTIONS){let{objectToPatch:B,functionNameToPatch:Y}=(0,TP.indexFs)(A,Q);if((0,$1.isWrapped)(B[Y]))this._unwrap(B,Y);this._wrap(B,Y,this._patchSyncFunction.bind(this,Q))}for(let Q of qW.CALLBACK_FUNCTIONS){let{objectToPatch:B,functionNameToPatch:Y}=(0,TP.indexFs)(A,Q);if((0,$1.isWrapped)(B[Y]))this._unwrap(B,Y);if(Q==="exists"){this._wrap(B,Y,this._patchExistsCallbackFunction.bind(this,Q));continue}this._wrap(B,Y,this._patchCallbackFunction.bind(this,Q))}for(let Q of qW.PROMISE_FUNCTIONS){if((0,$1.isWrapped)(A.promises[Q]))this._unwrap(A.promises,Q);this._wrap(A.promises,Q,this._patchPromiseFunction.bind(this,Q))}return A},(A)=>{if(A===void 0)return;for(let Q of qW.SYNC_FUNCTIONS){let{objectToPatch:B,functionNameToPatch:Y}=(0,TP.indexFs)(A,Q);if((0,$1.isWrapped)(B[Y]))this._unwrap(B,Y)}for(let Q of qW.CALLBACK_FUNCTIONS){let{objectToPatch:B,functionNameToPatch:Y}=(0,TP.indexFs)(A,Q);if((0,$1.isWrapped)(B[Y]))this._unwrap(B,Y)}for(let Q of qW.PROMISE_FUNCTIONS)if((0,$1.isWrapped)(A.promises[Q]))this._unwrap(A.promises,Q)}),new $1.InstrumentationNodeModuleDefinition("fs/promises",["*"],(A)=>{for(let Q of qW.PROMISE_FUNCTIONS){if((0,$1.isWrapped)(A[Q]))this._unwrap(A,Q);this._wrap(A,Q,this._patchPromiseFunction.bind(this,Q))}return A},(A)=>{if(A===void 0)return;for(let Q of qW.PROMISE_FUNCTIONS)if((0,$1.isWrapped)(A[Q]))this._unwrap(A,Q)})]}_patchSyncFunction(A,Q){let B=this;return SP(function(...J){let C=P0.context.active();if(!B._shouldTrace(C))return Q.apply(this,J);if(B._runCreateHook(A,{args:J})===!1)return P0.context.with((0,VG.suppressTracing)(C),Q,this,...J);let X=B.tracer.startSpan(`fs ${A}`);try{let G=P0.context.with((0,VG.suppressTracing)(P0.trace.setSpan(C,X)),Q,this,...J);return B._runEndHook(A,{args:J,span:X}),G}catch(G){throw X.recordException(G),X.setStatus({message:G.message,code:P0.SpanStatusCode.ERROR}),B._runEndHook(A,{args:J,span:X,error:G}),G}finally{X.end()}},Q)}_patchCallbackFunction(A,Q){let B=this;return SP(function(...J){let C=P0.context.active();if(!B._shouldTrace(C))return Q.apply(this,J);if(B._runCreateHook(A,{args:J})===!1)return P0.context.with((0,VG.suppressTracing)(C),Q,this,...J);let X=J.length-1,G=J[X];if(typeof G==="function"){let W=B.tracer.startSpan(`fs ${A}`);J[X]=P0.context.bind(C,function(F){if(F)W.recordException(F),W.setStatus({message:F.message,code:P0.SpanStatusCode.ERROR});return B._runEndHook(A,{args:J,span:W,error:F}),W.end(),G.apply(this,arguments)});try{return P0.context.with((0,VG.suppressTracing)(P0.trace.setSpan(C,W)),Q,this,...J)}catch(F){throw W.recordException(F),W.setStatus({message:F.message,code:P0.SpanStatusCode.ERROR}),B._runEndHook(A,{args:J,span:W,error:F}),W.end(),F}}else return Q.apply(this,J)},Q)}_patchExistsCallbackFunction(A,Q){let B=this,J=SP(function(...X){let G=P0.context.active();if(!B._shouldTrace(G))return Q.apply(this,X);if(B._runCreateHook(A,{args:X})===!1)return P0.context.with((0,VG.suppressTracing)(G),Q,this,...X);let W=X.length-1,F=X[W];if(typeof F==="function"){let Z=B.tracer.startSpan(`fs ${A}`);X[W]=P0.context.bind(G,function(){return B._runEndHook(A,{args:X,span:Z}),Z.end(),F.apply(this,arguments)});try{return P0.context.with((0,VG.suppressTracing)(P0.trace.setSpan(G,Z)),Q,this,...X)}catch(U){throw Z.recordException(U),Z.setStatus({message:U.message,code:P0.SpanStatusCode.ERROR}),B._runEndHook(A,{args:X,span:Z,error:U}),Z.end(),U}}else return Q.apply(this,X)},Q),C=function(X){return new Promise((G)=>J(X,G))};return Object.defineProperty(C,"name",{value:A}),Object.defineProperty(J,OD0.promisify.custom,{value:C}),J}_patchPromiseFunction(A,Q){let B=this;return SP(async function(...J){let C=P0.context.active();if(!B._shouldTrace(C))return Q.apply(this,J);if(B._runCreateHook(A,{args:J})===!1)return P0.context.with((0,VG.suppressTracing)(C),Q,this,...J);let X=B.tracer.startSpan(`fs ${A}`);try{let G=await P0.context.with((0,VG.suppressTracing)(P0.trace.setSpan(C,X)),Q,this,...J);return B._runEndHook(A,{args:J,span:X}),G}catch(G){throw X.recordException(G),X.setStatus({message:G.message,code:P0.SpanStatusCode.ERROR}),B._runEndHook(A,{args:J,span:X,error:G}),G}finally{X.end()}},Q)}_runCreateHook(...A){let{createHook:Q}=this.getConfig();if(typeof Q==="function")try{return Q(...A)}catch(B){this._diag.error("caught createHook error",B)}return!0}_runEndHook(...A){let{endHook:Q}=this.getConfig();if(typeof Q==="function")try{Q(...A)}catch(B){this._diag.error("caught endHook error",B)}}_shouldTrace(A){if((0,VG.isTracingSuppressed)(A))return!1;let{requireParentSpan:Q}=this.getConfig();if(Q){if(P0.trace.getSpan(A)==null)return!1}return!0}}d4Q.FsInstrumentation=u4Q});var i4Q=R((p4Q)=>{Object.defineProperty(p4Q,"__esModule",{value:!0})});var s4Q=R((MW)=>{var PD0=MW&&MW.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),n4Q=MW&&MW.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))PD0(Q,A,B)};Object.defineProperty(MW,"__esModule",{value:!0});n4Q(l4Q(),MW);n4Q(i4Q(),MW)});var bP=R((HUQ)=>{Object.defineProperty(HUQ,"__esModule",{value:!0});HUQ.ExpressLayerType=void 0;var nN0;(function(A){A.ROUTER="router",A.MIDDLEWARE="middleware",A.REQUEST_HANDLER="request_handler"})(nN0=HUQ.ExpressLayerType||(HUQ.ExpressLayerType={}))});var mP=R((DUQ)=>{Object.defineProperty(DUQ,"__esModule",{value:!0});DUQ.AttributeNames=void 0;var sN0;(function(A){A.EXPRESS_TYPE="express.type",A.EXPRESS_NAME="express.name"})(sN0=DUQ.AttributeNames||(DUQ.AttributeNames={}))});var Un=R((NUQ)=>{Object.defineProperty(NUQ,"__esModule",{value:!0});NUQ._LAYERS_STORE_PROPERTY=NUQ.kLayerPatched=void 0;NUQ.kLayerPatched=Symbol("express-layer-patched");NUQ._LAYERS_STORE_PROPERTY="__ot_middlewares"});var RUQ=R((MUQ)=>{Object.defineProperty(MUQ,"__esModule",{value:!0});MUQ.getLayerPath=MUQ.asErrorAndMessage=MUQ.isLayerIgnored=MUQ.getLayerMetadata=MUQ.getRouterPath=MUQ.storeLayerPath=void 0;var En=bP(),SK=mP(),Kn=Un(),aN0=(A,Q)=>{if(Array.isArray(A[Kn._LAYERS_STORE_PROPERTY])===!1)Object.defineProperty(A,Kn._LAYERS_STORE_PROPERTY,{enumerable:!1,value:[]});if(Q===void 0)return;A[Kn._LAYERS_STORE_PROPERTY].push(Q)};MUQ.storeLayerPath=aN0;var oN0=(A,Q)=>{var B,Y,J,C;let X=(Y=(B=Q.handle)===null||B===void 0?void 0:B.stack)===null||Y===void 0?void 0:Y[0];if((J=X===null||X===void 0?void 0:X.route)===null||J===void 0?void 0:J.path)return`${A}${X.route.path}`;if((C=X===null||X===void 0?void 0:X.handle)===null||C===void 0?void 0:C.stack)return MUQ.getRouterPath(A,X);return A};MUQ.getRouterPath=oN0;var tN0=(A,Q,B)=>{var Y;if(Q.name==="router"){let J=MUQ.getRouterPath("",Q),C=J?J:B||A||"/";return{attributes:{[SK.AttributeNames.EXPRESS_NAME]:C,[SK.AttributeNames.EXPRESS_TYPE]:En.ExpressLayerType.ROUTER},name:`router - ${C}`}}else if(Q.name==="bound dispatch")return{attributes:{[SK.AttributeNames.EXPRESS_NAME]:(Y=A||B)!==null&&Y!==void 0?Y:"request handler",[SK.AttributeNames.EXPRESS_TYPE]:En.ExpressLayerType.REQUEST_HANDLER},name:`request handler${Q.path?` - ${A||B}`:""}`};else return{attributes:{[SK.AttributeNames.EXPRESS_NAME]:Q.name,[SK.AttributeNames.EXPRESS_TYPE]:En.ExpressLayerType.MIDDLEWARE},name:`middleware - ${Q.name}`}};MUQ.getLayerMetadata=tN0;var eN0=(A,Q)=>{if(typeof Q==="string")return Q===A;else if(Q instanceof RegExp)return Q.test(A);else if(typeof Q==="function")return Q(A);else throw TypeError("Pattern is in unsupported datatype")},AL0=(A,Q,B)=>{var Y;if(Array.isArray(B===null||B===void 0?void 0:B.ignoreLayersType)&&((Y=B===null||B===void 0?void 0:B.ignoreLayersType)===null||Y===void 0?void 0:Y.includes(Q)))return!0;if(Array.isArray(B===null||B===void 0?void 0:B.ignoreLayers)===!1)return!1;try{for(let J of B.ignoreLayers)if(eN0(A,J))return!0}catch(J){}return!1};MUQ.isLayerIgnored=AL0;var QL0=(A)=>A instanceof Error?[A,A.message]:[String(A),String(A)];MUQ.asErrorAndMessage=QL0;var BL0=(A)=>{let Q=A[0];if(Array.isArray(Q))return Q.map((B)=>qUQ(B)||"").join(",");return qUQ(Q)};MUQ.getLayerPath=BL0;var qUQ=(A)=>{if(typeof A==="string")return A;if(A instanceof RegExp||typeof A==="number")return A.toString();return}});var OUQ=R((wUQ)=>{Object.defineProperty(wUQ,"__esModule",{value:!0});wUQ.PACKAGE_NAME=wUQ.PACKAGE_VERSION=void 0;wUQ.PACKAGE_VERSION="0.47.1";wUQ.PACKAGE_NAME="@opentelemetry/instrumentation-express"});var gUQ=R((vUQ)=>{Object.defineProperty(vUQ,"__esModule",{value:!0});vUQ.ExpressInstrumentation=void 0;var PUQ=MB(),j$=yA(),TUQ=bP(),SUQ=mP(),zW=RUQ(),kUQ=OUQ(),kK=NB(),WL0=dB(),fL=Un();class _UQ extends kK.InstrumentationBase{constructor(A={}){super(kUQ.PACKAGE_NAME,kUQ.PACKAGE_VERSION,A)}init(){return[new kK.InstrumentationNodeModuleDefinition("express",[">=4.0.0 <5"],(A)=>{let Q=A.Router;if((0,kK.isWrapped)(Q.route))this._unwrap(Q,"route");if(this._wrap(Q,"route",this._getRoutePatch()),(0,kK.isWrapped)(Q.use))this._unwrap(Q,"use");if(this._wrap(Q,"use",this._getRouterUsePatch()),(0,kK.isWrapped)(A.application.use))this._unwrap(A.application,"use");return this._wrap(A.application,"use",this._getAppUsePatch()),A},(A)=>{if(A===void 0)return;let Q=A.Router;this._unwrap(Q,"route"),this._unwrap(Q,"use"),this._unwrap(A.application,"use")})]}_getRoutePatch(){let A=this;return function(Q){return function(...Y){let J=Q.apply(this,Y),C=this.stack[this.stack.length-1];return A._applyPatch(C,(0,zW.getLayerPath)(Y)),J}}}_getRouterUsePatch(){let A=this;return function(Q){return function(...Y){let J=Q.apply(this,Y),C=this.stack[this.stack.length-1];return A._applyPatch(C,(0,zW.getLayerPath)(Y)),J}}}_getAppUsePatch(){let A=this;return function(Q){return function(...Y){let J=Q.apply(this,Y),C=this._router.stack[this._router.stack.length-1];return A._applyPatch(C,(0,zW.getLayerPath)(Y)),J}}}_applyPatch(A,Q){let B=this;if(A[fL.kLayerPatched]===!0)return;A[fL.kLayerPatched]=!0,this._wrap(A,"handle",(Y)=>{if(Y.length===4)return Y;let J=function(C,X){(0,zW.storeLayerPath)(C,Q);let G=C[fL._LAYERS_STORE_PROPERTY].filter((L)=>L!=="/"&&L!=="/*").join("").replace(/\/{2,}/g,"/"),W={[WL0.SEMATTRS_HTTP_ROUTE]:G.length>0?G:"/"},F=(0,zW.getLayerMetadata)(G,A,Q),Z=F.attributes[SUQ.AttributeNames.EXPRESS_TYPE],U=(0,PUQ.getRPCMetadata)(j$.context.active());if((U===null||U===void 0?void 0:U.type)===PUQ.RPCType.HTTP)U.route=G||"/";if((0,zW.isLayerIgnored)(F.name,Z,B.getConfig())){if(Z===TUQ.ExpressLayerType.MIDDLEWARE)C[fL._LAYERS_STORE_PROPERTY].pop();return Y.apply(this,arguments)}if(j$.trace.getSpan(j$.context.active())===void 0)return Y.apply(this,arguments);let $=B._getSpanName({request:C,layerType:Z,route:G},F.name),E=B.tracer.startSpan($,{attributes:Object.assign(W,F.attributes)}),{requestHook:K}=B.getConfig();if(K)(0,kK.safeExecuteInTheMiddle)(()=>K(E,{request:C,layerType:Z,route:G}),(L)=>{if(L)j$.diag.error("express instrumentation: request hook failed",L)},!0);let I=!1;if(F.attributes[SUQ.AttributeNames.EXPRESS_TYPE]!==TUQ.ExpressLayerType.MIDDLEWARE)E.end(),I=!0;let V=()=>{if(I===!1)I=!0,E.end()},H=Array.from(arguments),D=H.findIndex((L)=>typeof L==="function");if(D>=0)arguments[D]=function(){var L;let z=arguments[0],M=![void 0,null,"route","router"].includes(z);if(!I&&M){let[q,w]=(0,zW.asErrorAndMessage)(z);E.recordException(q),E.setStatus({code:j$.SpanStatusCode.ERROR,message:w})}if(I===!1)I=!0,(L=C.res)===null||L===void 0||L.removeListener("finish",V),E.end();if(!(C.route&&M))C[fL._LAYERS_STORE_PROPERTY].pop();return H[D].apply(this,arguments)};try{return Y.apply(this,arguments)}catch(L){let[z,M]=(0,zW.asErrorAndMessage)(L);throw E.recordException(z),E.setStatus({code:j$.SpanStatusCode.ERROR,message:M}),L}finally{if(!I)X.once("finish",V)}};for(let C in Y)Object.defineProperty(J,C,{get(){return Y[C]},set(X){Y[C]=X}});return J})}_getSpanName(A,Q){var B;let{spanNameHook:Y}=this.getConfig();if(!(Y instanceof Function))return Q;try{return(B=Y(A,Q))!==null&&B!==void 0?B:Q}catch(J){return j$.diag.error("express instrumentation: error calling span name rewrite hook",J),Q}}}vUQ.ExpressInstrumentation=_UQ});var xUQ=R((hUQ)=>{Object.defineProperty(hUQ,"__esModule",{value:!0})});var fUQ=R((NX)=>{var FL0=NX&&NX.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),uP=NX&&NX.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))FL0(Q,A,B)};Object.defineProperty(NX,"__esModule",{value:!0});uP(gUQ(),NX);uP(bP(),NX);uP(mP(),NX);uP(xUQ(),NX)});var CEQ=R((puY,JEQ)=>{var tUQ=py();JEQ.exports=LL0;var eUQ="\x00SLASH"+Math.random()+"\x00",AEQ="\x00OPEN"+Math.random()+"\x00",zn="\x00CLOSE"+Math.random()+"\x00",QEQ="\x00COMMA"+Math.random()+"\x00",BEQ="\x00PERIOD"+Math.random()+"\x00";function Mn(A){return parseInt(A,10)==A?parseInt(A,10):A.charCodeAt(0)}function DL0(A){return A.split("\\\\").join(eUQ).split("\\{").join(AEQ).split("\\}").join(zn).split("\\,").join(QEQ).split("\\.").join(BEQ)}function NL0(A){return A.split(eUQ).join("\\").split(AEQ).join("{").split(zn).join("}").split(QEQ).join(",").split(BEQ).join(".")}function YEQ(A){if(!A)return[""];var Q=[],B=tUQ("{","}",A);if(!B)return A.split(",");var{pre:Y,body:J,post:C}=B,X=Y.split(",");X[X.length-1]+="{"+J+"}";var G=YEQ(C);if(C.length)X[X.length-1]+=G.shift(),X.push.apply(X,G);return Q.push.apply(Q,X),Q}function LL0(A){if(!A)return[];if(A.substr(0,2)==="{}")A="\\{\\}"+A.substr(2);return bL(DL0(A),!0).map(NL0)}function qL0(A){return"{"+A+"}"}function ML0(A){return/^-?0\d/.test(A)}function zL0(A,Q){return A<=Q}function RL0(A,Q){return A>=Q}function bL(A,Q){var B=[],Y=tUQ("{","}",A);if(!Y)return[A];var J=Y.pre,C=Y.post.length?bL(Y.post,!1):[""];if(/\$$/.test(Y.pre))for(var X=0;X=0;if(!Z&&!U){if(Y.post.match(/,.*\}/))return A=Y.pre+"{"+Y.body+zn+Y.post,bL(A);return[A]}var $;if(Z)$=Y.body.split(/\.\./);else if($=YEQ(Y.body),$.length===1){if($=bL($[0],!1).map(qL0),$.length===1)return C.map(function(_){return Y.pre+$[0]+_})}var E;if(Z){var K=Mn($[0]),I=Mn($[1]),V=Math.max($[0].length,$[1].length),H=$.length==3?Math.abs(Mn($[2])):1,D=zL0,L=I0){var w=Array(q+1).join("0");if(M<0)N="-"+w+N.slice(1);else N=w+N}}E.push(N)}}else{E=[];for(var P=0;P<$.length;P++)E.push.apply(E,bL($[P],!1))}for(var P=0;P{Object.defineProperty(XEQ,"__esModule",{value:!0});XEQ.assertValidPattern=void 0;var wL0=65536,jL0=(A)=>{if(typeof A!=="string")throw TypeError("invalid pattern");if(A.length>wL0)throw TypeError("pattern is too long")};XEQ.assertValidPattern=jL0});var UEQ=R((ZEQ)=>{Object.defineProperty(ZEQ,"__esModule",{value:!0});ZEQ.parseClass=void 0;var OL0={"[:alnum:]":["\\p{L}\\p{Nl}\\p{Nd}",!0],"[:alpha:]":["\\p{L}\\p{Nl}",!0],"[:ascii:]":["\\x00-\\x7f",!1],"[:blank:]":["\\p{Zs}\\t",!0],"[:cntrl:]":["\\p{Cc}",!0],"[:digit:]":["\\p{Nd}",!0],"[:graph:]":["\\p{Z}\\p{C}",!0,!0],"[:lower:]":["\\p{Ll}",!0],"[:print:]":["\\p{C}",!0],"[:punct:]":["\\p{P}",!0],"[:space:]":["\\p{Z}\\t\\r\\n\\v\\f",!0],"[:upper:]":["\\p{Lu}",!0],"[:word:]":["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}",!0],"[:xdigit:]":["A-Fa-f0-9",!1]},mL=(A)=>A.replace(/[[\]\\-]/g,"\\$&"),PL0=(A)=>A.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),FEQ=(A)=>A.join(""),TL0=(A,Q)=>{let B=Q;if(A.charAt(B)!=="[")throw Error("not in a brace expression");let Y=[],J=[],C=B+1,X=!1,G=!1,W=!1,F=!1,Z=B,U="";A:while(CU)Y.push(mL(U)+"-"+mL(I));else if(I===U)Y.push(mL(I));U="",C++;continue}if(A.startsWith("-]",C+1)){Y.push(mL(I+"-")),C+=2;continue}if(A.startsWith("-",C+1)){U=I,C+=2;continue}Y.push(mL(I)),C++}if(Z{Object.defineProperty(EEQ,"__esModule",{value:!0});EEQ.unescape=void 0;var SL0=(A,{windowsPathsNoEscape:Q=!1}={})=>{return Q?A.replace(/\[([^\/\\])\]/g,"$1"):A.replace(/((?!\\).|^)\[([^\/\\])\]/g,"$1$2").replace(/\\([^\/])/g,"$1")};EEQ.unescape=SL0});var wn=R((DEQ)=>{Object.defineProperty(DEQ,"__esModule",{value:!0});DEQ.AST=void 0;var kL0=UEQ(),iP=pP(),_L0=new Set(["!","?","+","*","@"]),VEQ=(A)=>_L0.has(A),vL0="(?!(?:^|/)\\.\\.?(?:$|/))",nP="(?!\\.)",yL0=new Set(["[","."]),gL0=new Set(["..","."]),hL0=new Set("().*{}+?[]^$\\!"),xL0=(A)=>A.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),Rn="[^/]",IEQ=Rn+"*?",HEQ=Rn+"+?";class e9{type;#A;#Q;#B=!1;#Y=[];#J;#C;#W;#X=!1;#G;#Z;#U=!1;constructor(A,Q,B={}){if(this.type=A,A)this.#Q=!0;if(this.#J=Q,this.#A=this.#J?this.#J.#A:this,this.#G=this.#A===this?B:this.#A.#G,this.#W=this.#A===this?[]:this.#A.#W,A==="!"&&!this.#A.#X)this.#W.push(this);this.#C=this.#J?this.#J.#Y.length:0}get hasMagic(){if(this.#Q!==void 0)return this.#Q;for(let A of this.#Y){if(typeof A==="string")continue;if(A.type||A.hasMagic)return this.#Q=!0}return this.#Q}toString(){if(this.#Z!==void 0)return this.#Z;if(!this.type)return this.#Z=this.#Y.map((A)=>String(A)).join("");else return this.#Z=this.type+"("+this.#Y.map((A)=>String(A)).join("|")+")"}#F(){if(this!==this.#A)throw Error("should only call on root");if(this.#X)return this;this.toString(),this.#X=!0;let A;while(A=this.#W.pop()){if(A.type!=="!")continue;let Q=A,B=Q.#J;while(B){for(let Y=Q.#C+1;!B.type&&Ytypeof Q==="string"?Q:Q.toJSON()):[this.type,...this.#Y.map((Q)=>Q.toJSON())];if(this.isStart()&&!this.type)A.unshift([]);if(this.isEnd()&&(this===this.#A||this.#A.#X&&this.#J?.type==="!"))A.push({});return A}isStart(){if(this.#A===this)return!0;if(!this.#J?.isStart())return!1;if(this.#C===0)return!0;let A=this.#J;for(let Q=0;Q{let[E,K,I,V]=typeof $==="string"?e9.#I($,this.#Q,G):$.toRegExpSource(A);return this.#Q=this.#Q||I,this.#B=this.#B||V,E}).join(""),F="";if(this.isStart()){if(typeof this.#Y[0]==="string"){if(!(this.#Y.length===1&&gL0.has(this.#Y[0]))){let E=yL0,K=Q&&E.has(W.charAt(0))||W.startsWith("\\.")&&E.has(W.charAt(2))||W.startsWith("\\.\\.")&&E.has(W.charAt(4)),I=!Q&&!A&&E.has(W.charAt(0));F=K?vL0:I?nP:""}}}let Z="";if(this.isEnd()&&this.#A.#X&&this.#J?.type==="!")Z="(?:$|\\/)";return[F+W+Z,(0,iP.unescape)(W),this.#Q=!!this.#Q,this.#B]}let B=this.type==="*"||this.type==="+",Y=this.type==="!"?"(?:(?!(?:":"(?:",J=this.#V(Q);if(this.isStart()&&this.isEnd()&&!J&&this.type!=="!"){let G=this.toString();return this.#Y=[G],this.type=null,this.#Q=void 0,[G,(0,iP.unescape)(this.toString()),!1,!1]}let C=!B||A||Q||!nP?"":this.#V(!0);if(C===J)C="";if(C)J=`(?:${J})(?:${C})*?`;let X="";if(this.type==="!"&&this.#U)X=(this.isStart()&&!Q?nP:"")+HEQ;else{let G=this.type==="!"?"))"+(this.isStart()&&!Q&&!A?nP:"")+IEQ+")":this.type==="@"?")":this.type==="?"?")?":this.type==="+"&&C?")":this.type==="*"&&C?")?":`)${this.type}`;X=Y+J+G}return[X,(0,iP.unescape)(J),this.#Q=!!this.#Q,this.#B]}#V(A){return this.#Y.map((Q)=>{if(typeof Q==="string")throw Error("string type in extglob ast??");let[B,Y,J,C]=Q.toRegExpSource(A);return this.#B=this.#B||C,B}).filter((Q)=>!(this.isStart()&&this.isEnd())||!!Q).join("|")}static#I(A,Q,B=!1){let Y=!1,J="",C=!1;for(let X=0;X{Object.defineProperty(LEQ,"__esModule",{value:!0});LEQ.escape=void 0;var fL0=(A,{windowsPathsNoEscape:Q=!1}={})=>{return Q?A.replace(/[?*()[\]]/g,"[$&]"):A.replace(/[?*()[\]\\]/g,"\\$&")};LEQ.escape=fL0});var PEQ=R((rA)=>{var bL0=rA&&rA.__importDefault||function(A){return A&&A.__esModule?A:{default:A}};Object.defineProperty(rA,"__esModule",{value:!0});rA.unescape=rA.escape=rA.AST=rA.Minimatch=rA.match=rA.makeRe=rA.braceExpand=rA.defaults=rA.filter=rA.GLOBSTAR=rA.sep=rA.minimatch=void 0;var mL0=bL0(CEQ()),sP=WEQ(),REQ=wn(),uL0=jn(),dL0=pP(),cL0=(A,Q,B={})=>{if((0,sP.assertValidPattern)(Q),!B.nocomment&&Q.charAt(0)==="#")return!1;return new _K(Q,B).match(A)};rA.minimatch=cL0;var lL0=/^\*+([^+@!?\*\[\(]*)$/,pL0=(A)=>(Q)=>!Q.startsWith(".")&&Q.endsWith(A),iL0=(A)=>(Q)=>Q.endsWith(A),nL0=(A)=>{return A=A.toLowerCase(),(Q)=>!Q.startsWith(".")&&Q.toLowerCase().endsWith(A)},sL0=(A)=>{return A=A.toLowerCase(),(Q)=>Q.toLowerCase().endsWith(A)},rL0=/^\*+\.\*+$/,aL0=(A)=>!A.startsWith(".")&&A.includes("."),oL0=(A)=>A!=="."&&A!==".."&&A.includes("."),tL0=/^\.\*+$/,eL0=(A)=>A!=="."&&A!==".."&&A.startsWith("."),Aq0=/^\*+$/,Qq0=(A)=>A.length!==0&&!A.startsWith("."),Bq0=(A)=>A.length!==0&&A!=="."&&A!=="..",Yq0=/^\?+([^+@!?\*\[\(]*)?$/,Jq0=([A,Q=""])=>{let B=wEQ([A]);if(!Q)return B;return Q=Q.toLowerCase(),(Y)=>B(Y)&&Y.toLowerCase().endsWith(Q)},Cq0=([A,Q=""])=>{let B=jEQ([A]);if(!Q)return B;return Q=Q.toLowerCase(),(Y)=>B(Y)&&Y.toLowerCase().endsWith(Q)},Xq0=([A,Q=""])=>{let B=jEQ([A]);return!Q?B:(Y)=>B(Y)&&Y.endsWith(Q)},Gq0=([A,Q=""])=>{let B=wEQ([A]);return!Q?B:(Y)=>B(Y)&&Y.endsWith(Q)},wEQ=([A])=>{let Q=A.length;return(B)=>B.length===Q&&!B.startsWith(".")},jEQ=([A])=>{let Q=A.length;return(B)=>B.length===Q&&B!=="."&&B!==".."},OEQ=typeof process==="object"&&process?typeof process.env==="object"&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:"posix",MEQ={win32:{sep:"\\"},posix:{sep:"/"}};rA.sep=OEQ==="win32"?MEQ.win32.sep:MEQ.posix.sep;rA.minimatch.sep=rA.sep;rA.GLOBSTAR=Symbol("globstar **");rA.minimatch.GLOBSTAR=rA.GLOBSTAR;var Wq0="[^/]",Fq0=Wq0+"*?",Zq0="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",$q0="(?:(?!(?:\\/|^)\\.).)*?",Uq0=(A,Q={})=>(B)=>(0,rA.minimatch)(B,A,Q);rA.filter=Uq0;rA.minimatch.filter=rA.filter;var t5=(A,Q={})=>Object.assign({},A,Q),Eq0=(A)=>{if(!A||typeof A!=="object"||!Object.keys(A).length)return rA.minimatch;let Q=rA.minimatch;return Object.assign((Y,J,C={})=>Q(Y,J,t5(A,C)),{Minimatch:class extends Q.Minimatch{constructor(J,C={}){super(J,t5(A,C))}static defaults(J){return Q.defaults(t5(A,J)).Minimatch}},AST:class extends Q.AST{constructor(J,C,X={}){super(J,C,t5(A,X))}static fromGlob(J,C={}){return Q.AST.fromGlob(J,t5(A,C))}},unescape:(Y,J={})=>Q.unescape(Y,t5(A,J)),escape:(Y,J={})=>Q.escape(Y,t5(A,J)),filter:(Y,J={})=>Q.filter(Y,t5(A,J)),defaults:(Y)=>Q.defaults(t5(A,Y)),makeRe:(Y,J={})=>Q.makeRe(Y,t5(A,J)),braceExpand:(Y,J={})=>Q.braceExpand(Y,t5(A,J)),match:(Y,J,C={})=>Q.match(Y,J,t5(A,C)),sep:Q.sep,GLOBSTAR:rA.GLOBSTAR})};rA.defaults=Eq0;rA.minimatch.defaults=rA.defaults;var Kq0=(A,Q={})=>{if((0,sP.assertValidPattern)(A),Q.nobrace||!/\{(?:(?!\{).)*\}/.test(A))return[A];return(0,mL0.default)(A)};rA.braceExpand=Kq0;rA.minimatch.braceExpand=rA.braceExpand;var Vq0=(A,Q={})=>new _K(A,Q).makeRe();rA.makeRe=Vq0;rA.minimatch.makeRe=rA.makeRe;var Iq0=(A,Q,B={})=>{let Y=new _K(Q,B);if(A=A.filter((J)=>Y.match(J)),Y.options.nonull&&!A.length)A.push(Q);return A};rA.match=Iq0;rA.minimatch.match=rA.match;var zEQ=/[?*]|[+@!]\(.*?\)|\[|\]/,Hq0=(A)=>A.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&");class _K{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;regexp;constructor(A,Q={}){if((0,sP.assertValidPattern)(A),Q=Q||{},this.options=Q,this.pattern=A,this.platform=Q.platform||OEQ,this.isWindows=this.platform==="win32",this.windowsPathsNoEscape=!!Q.windowsPathsNoEscape||Q.allowWindowsEscape===!1,this.windowsPathsNoEscape)this.pattern=this.pattern.replace(/\\/g,"/");this.preserveMultipleSlashes=!!Q.preserveMultipleSlashes,this.regexp=null,this.negate=!1,this.nonegate=!!Q.nonegate,this.comment=!1,this.empty=!1,this.partial=!!Q.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=Q.windowsNoMagicRoot!==void 0?Q.windowsNoMagicRoot:!!(this.isWindows&&this.nocase),this.globSet=[],this.globParts=[],this.set=[],this.make()}hasMagic(){if(this.options.magicalBraces&&this.set.length>1)return!0;for(let A of this.set)for(let Q of A)if(typeof Q!=="string")return!0;return!1}debug(...A){}make(){let A=this.pattern,Q=this.options;if(!Q.nocomment&&A.charAt(0)==="#"){this.comment=!0;return}if(!A){this.empty=!0;return}if(this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],Q.debug)this.debug=(...J)=>console.error(...J);this.debug(this.pattern,this.globSet);let B=this.globSet.map((J)=>this.slashSplit(J));this.globParts=this.preprocess(B),this.debug(this.pattern,this.globParts);let Y=this.globParts.map((J,C,X)=>{if(this.isWindows&&this.windowsNoMagicRoot){let G=J[0]===""&&J[1]===""&&(J[2]==="?"||!zEQ.test(J[2]))&&!zEQ.test(J[3]),W=/^[a-z]:/i.test(J[0]);if(G)return[...J.slice(0,4),...J.slice(4).map((F)=>this.parse(F))];else if(W)return[J[0],...J.slice(1).map((F)=>this.parse(F))]}return J.map((G)=>this.parse(G))});if(this.debug(this.pattern,Y),this.set=Y.filter((J)=>J.indexOf(!1)===-1),this.isWindows)for(let J=0;J=2)A=this.firstPhasePreProcess(A),A=this.secondPhasePreProcess(A);else if(Q>=1)A=this.levelOneOptimize(A);else A=this.adjascentGlobstarOptimize(A);return A}adjascentGlobstarOptimize(A){return A.map((Q)=>{let B=-1;while((B=Q.indexOf("**",B+1))!==-1){let Y=B;while(Q[Y+1]==="**")Y++;if(Y!==B)Q.splice(B,Y-B)}return Q})}levelOneOptimize(A){return A.map((Q)=>{return Q=Q.reduce((B,Y)=>{let J=B[B.length-1];if(Y==="**"&&J==="**")return B;if(Y===".."){if(J&&J!==".."&&J!=="."&&J!=="**")return B.pop(),B}return B.push(Y),B},[]),Q.length===0?[""]:Q})}levelTwoFileOptimize(A){if(!Array.isArray(A))A=this.slashSplit(A);let Q=!1;do{if(Q=!1,!this.preserveMultipleSlashes){for(let Y=1;YY)B.splice(Y+1,C-Y);let X=B[Y+1],G=B[Y+2],W=B[Y+3];if(X!=="..")continue;if(!G||G==="."||G===".."||!W||W==="."||W==="..")continue;Q=!0,B.splice(Y,1);let F=B.slice(0);F[Y]="**",A.push(F),Y--}if(!this.preserveMultipleSlashes){for(let C=1;CQ.length)}partsMatch(A,Q,B=!1){let Y=0,J=0,C=[],X="";while(YD)Q=Q.slice(L);else if(D>L)A=A.slice(D)}}}let{optimizationLevel:J=1}=this.options;if(J>=2)A=this.levelTwoFileOptimize(A);this.debug("matchOne",this,{file:A,pattern:Q}),this.debug("matchOne",A.length,Q.length);for(var C=0,X=0,G=A.length,W=Q.length;C>> no match, partial?`,A,U,Q,$),U===G)return!0}return!1}let K;if(typeof W==="string")K=Z===W,this.debug("string match",W,Z,K);else K=W.test(Z),this.debug("pattern match",W,Z,K);if(!K)return!1}if(C===G&&X===F)return!0;else if(C===G)return B;else if(X===F)return C===G-1&&A[C]==="";else throw Error("wtf?")}braceExpand(){return(0,rA.braceExpand)(this.pattern,this.options)}parse(A){(0,jP.assertValidPattern)(A);let Q=this.options;if(A==="**")return rA.GLOBSTAR;if(A==="")return"";let B,Y=null;if(B=A.match(eN0))Y=Q.dot?QL0:AL0;else if(B=A.match(cN0))Y=(Q.nocase?Q.dot?nN0:iN0:Q.dot?pN0:lN0)(B[1]);else if(B=A.match(BL0))Y=(Q.nocase?Q.dot?JL0:YL0:Q.dot?CL0:XL0)(B);else if(B=A.match(sN0))Y=Q.dot?aN0:rN0;else if(B=A.match(oN0))Y=tN0;let J=xUQ.AST.fromGlob(A,this.options).toMMPattern();if(Y&&typeof J==="object")Reflect.defineProperty(J,"test",{value:Y});return J}makeRe(){if(this.regexp||this.regexp===!1)return this.regexp;let A=this.set;if(!A.length)return this.regexp=!1,this.regexp;let Q=this.options,B=Q.noglobstar?FL0:Q.dot?WL0:ZL0,Y=new Set(Q.nocase?["i"]:[]),J=A.map((G)=>{let F=G.map((W)=>{if(W instanceof RegExp)for(let Z of W.flags.split(""))Y.add(Z);return typeof W==="string"?IL0(W):W===rA.GLOBSTAR?rA.GLOBSTAR:W._src});return F.forEach((W,Z)=>{let U=F[Z+1],$=F[Z-1];if(W!==rA.GLOBSTAR||$===rA.GLOBSTAR)return;if($===void 0)if(U!==void 0&&U!==rA.GLOBSTAR)F[Z+1]="(?:\\/|"+B+"\\/)?"+U;else F[Z]=B;else if(U===void 0)F[Z-1]=$+"(?:\\/|"+B+")?";else if(U!==rA.GLOBSTAR)F[Z-1]=$+"(?:\\/|\\/"+B+"\\/)"+U,F[Z+1]=rA.GLOBSTAR}),F.filter((W)=>W!==rA.GLOBSTAR).join("/")}).join("|"),[C,X]=A.length>1?["(?:",")"]:["",""];if(J="^"+C+J+X+"$",this.negate)J="^(?!"+J+").+$";try{this.regexp=new RegExp(J,[...Y].join(""))}catch(G){this.regexp=!1}return this.regexp}slashSplit(A){if(this.preserveMultipleSlashes)return A.split("/");else if(this.isWindows&&/^\/\/[^\/]+/.test(A))return["",...A.split(/\/+/)];else return A.split(/\/+/)}match(A,Q=this.partial){if(this.debug("match",A,this.pattern),this.comment)return!1;if(this.empty)return A==="";if(A==="/"&&Q)return!0;let B=this.options;if(this.isWindows)A=A.split("\\").join("/");let Y=this.slashSplit(A);this.debug(this.pattern,"split",Y);let J=this.set;this.debug(this.pattern,"set",J);let C=Y[Y.length-1];if(!C)for(let X=Y.length-2;!C&&X>=0;X--)C=Y[X];for(let X=0;X{Object.defineProperty(XEQ,"__esModule",{value:!0});XEQ.SpanNames=XEQ.TokenKind=XEQ.AllowedOperationTypes=void 0;var kL0;(function(A){A.QUERY="query",A.MUTATION="mutation",A.SUBSCRIPTION="subscription"})(kL0=XEQ.AllowedOperationTypes||(XEQ.AllowedOperationTypes={}));var _L0;(function(A){A.SOF="",A.EOF="",A.BANG="!",A.DOLLAR="$",A.AMP="&",A.PAREN_L="(",A.PAREN_R=")",A.SPREAD="...",A.COLON=":",A.EQUALS="=",A.AT="@",A.BRACKET_L="[",A.BRACKET_R="]",A.BRACE_L="{",A.PIPE="|",A.BRACE_R="}",A.NAME="Name",A.INT="Int",A.FLOAT="Float",A.STRING="String",A.BLOCK_STRING="BlockString",A.COMMENT="Comment"})(_L0=XEQ.TokenKind||(XEQ.TokenKind={}));var vL0;(function(A){A.EXECUTE="graphql.execute",A.PARSE="graphql.parse",A.RESOLVE="graphql.resolve",A.VALIDATE="graphql.validate",A.SCHEMA_VALIDATE="graphql.validateSchema",A.SCHEMA_PARSE="graphql.parseSchema"})(vL0=XEQ.SpanNames||(XEQ.SpanNames={}))});var Un=R((GEQ)=>{Object.defineProperty(GEQ,"__esModule",{value:!0});GEQ.AttributeNames=void 0;var yL0;(function(A){A.SOURCE="graphql.source",A.FIELD_NAME="graphql.field.name",A.FIELD_PATH="graphql.field.path",A.FIELD_TYPE="graphql.field.type",A.OPERATION_TYPE="graphql.operation.type",A.OPERATION_NAME="graphql.operation.name",A.VARIABLES="graphql.variables.",A.ERROR_VALIDATION_NAME="graphql.validation.error"})(yL0=GEQ.AttributeNames||(GEQ.AttributeNames={}))});var _P=R((FEQ)=>{Object.defineProperty(FEQ,"__esModule",{value:!0});FEQ.OTEL_GRAPHQL_DATA_SYMBOL=FEQ.OTEL_PATCHED_SYMBOL=void 0;FEQ.OTEL_PATCHED_SYMBOL=Symbol.for("opentelemetry.patched");FEQ.OTEL_GRAPHQL_DATA_SYMBOL=Symbol.for("opentelemetry.graphql_data")});var UEQ=R((ZEQ)=>{Object.defineProperty(ZEQ,"__esModule",{value:!0});ZEQ.OPERATION_NOT_SUPPORTED=void 0;var zmY=_P();ZEQ.OPERATION_NOT_SUPPORTED="Operation$operationName$not supported"});var OEQ=R((REQ)=>{Object.defineProperty(REQ,"__esModule",{value:!0});REQ.wrapFieldResolver=REQ.wrapFields=REQ.getSourceFromLocation=REQ.getOperation=REQ.endSpan=REQ.addSpanSource=REQ.addInputVariableAttributes=REQ.isPromise=void 0;var jK=yA(),LF=Zn(),wK=Un(),$G=_P(),EEQ=Object.values(LF.AllowedOperationTypes),gL0=(A)=>{return typeof(A===null||A===void 0?void 0:A.then)==="function"};REQ.isPromise=gL0;var xL0=(A)=>{return typeof A=="object"&&A!==null};function En(A,Q,B){if(Array.isArray(B))B.forEach((Y,J)=>{En(A,`${Q}.${J}`,Y)});else if(B instanceof Object)Object.entries(B).forEach(([Y,J])=>{En(A,`${Q}.${Y}`,J)});else A.setAttribute(`${wK.AttributeNames.VARIABLES}${String(Q)}`,B)}function fL0(A,Q){Object.entries(Q).forEach(([B,Y])=>{En(A,B,Y)})}REQ.addInputVariableAttributes=fL0;function HEQ(A,Q,B,Y,J){let C=qEQ(Q,B,Y,J);A.setAttribute(wK.AttributeNames.SOURCE,C)}REQ.addSpanSource=HEQ;function bL0(A,Q,B,Y,J){let C=DEQ(B,J),X=!1;if(!C){X=!0;let G=NEQ(B,J);C={parent:G,span:mL0(A,Q,B,Y,J,G.span),error:null},cL0(B,J,C)}return{spanAdded:X,field:C}}function mL0(A,Q,B,Y,J,C){var X,G;let F={[wK.AttributeNames.FIELD_NAME]:Y.fieldName,[wK.AttributeNames.FIELD_PATH]:J.join("."),[wK.AttributeNames.FIELD_TYPE]:Y.returnType.toString()},W=A.startSpan(`${LF.SpanNames.RESOLVE} ${F[wK.AttributeNames.FIELD_PATH]}`,{attributes:F},C?jK.trace.setSpan(jK.context.active(),C):void 0),Z=B[$G.OTEL_GRAPHQL_DATA_SYMBOL].source,U=Y.fieldNodes.find(($)=>$.kind==="Field");if(U)HEQ(W,Z.loc,Q().allowValues,(X=U.loc)===null||X===void 0?void 0:X.start,(G=U.loc)===null||G===void 0?void 0:G.end);return W}function uL0(A,Q){if(Q)A.recordException(Q);A.end()}REQ.endSpan=uL0;function dL0(A,Q){if(!A||!Array.isArray(A.definitions))return;if(Q)return A.definitions.filter((B)=>{var Y;return EEQ.indexOf((Y=B)===null||Y===void 0?void 0:Y.operation)!==-1}).find((B)=>{var Y,J;return Q===((J=(Y=B)===null||Y===void 0?void 0:Y.name)===null||J===void 0?void 0:J.value)});else return A.definitions.find((B)=>{var Y;return EEQ.indexOf((Y=B)===null||Y===void 0?void 0:Y.operation)!==-1})}REQ.getOperation=dL0;function cL0(A,Q,B){return A[$G.OTEL_GRAPHQL_DATA_SYMBOL].fields[Q.join(".")]=B}function DEQ(A,Q){return A[$G.OTEL_GRAPHQL_DATA_SYMBOL].fields[Q.join(".")]}function NEQ(A,Q){for(let B=Q.length-1;B>0;B--){let Y=DEQ(A,Q.slice(0,B));if(Y)return Y}return{span:A[$G.OTEL_GRAPHQL_DATA_SYMBOL].span}}function lL0(A,Q){let B=[],Y=Q;while(Y){let J=Y.key;if(A&&typeof J==="number")J="*";B.push(String(J)),Y=Y.prev}return B.reverse()}function pL0(A){return LEQ(` -`,A)}function KEQ(A){return LEQ(" ",A)}function LEQ(A,Q){let B="";for(let Y=0;YF){W=W.next,Z=W===null||W===void 0?void 0:W.line;continue}let U=W.value||W.kind,$="";if(!Q&&iL0.indexOf(W.kind)>=0)U="*";if(W.kind===LF.TokenKind.STRING)U=`"${U}"`;if(W.kind===LF.TokenKind.EOF)U="";if(W.line>Z)X+=pL0(W.line-Z),Z=W.line,$=KEQ(W.column-1);else if(W.line===((J=W.prev)===null||J===void 0?void 0:J.line))$=KEQ(W.start-(((C=W.prev)===null||C===void 0?void 0:C.end)||0));if(X+=$+U,W)W=W.next}}return X}REQ.getSourceFromLocation=qEQ;function MEQ(A,Q,B){if(!A||typeof A.getFields!=="function"||A[$G.OTEL_PATCHED_SYMBOL])return;let Y=A.getFields();A[$G.OTEL_PATCHED_SYMBOL]=!0,Object.keys(Y).forEach((J)=>{let C=Y[J];if(!C)return;if(C.resolve)C.resolve=zEQ(Q,B,C.resolve);if(C.type){let X=C.type;while(X.ofType)X=X.ofType;MEQ(X,Q,B)}})}REQ.wrapFields=MEQ;var VEQ=(A,Q,B)=>{if(!B)return;A.recordException(Q),A.setStatus({code:jK.SpanStatusCode.ERROR,message:Q.message}),A.end()},IEQ=(A,Q)=>{if(!Q)return;A.end()};function zEQ(A,Q,B,Y=!1){if(J[$G.OTEL_PATCHED_SYMBOL]||typeof B!=="function")return B;function J(C,X,G,F){if(!B)return;let W=Q();if(W.ignoreTrivialResolveSpans&&Y&&(xL0(C)||typeof C==="function")){if(typeof C[F.fieldName]!=="function")return B.call(this,C,X,G,F)}if(!G[$G.OTEL_GRAPHQL_DATA_SYMBOL])return B.call(this,C,X,G,F);let Z=lL0(W.mergeItems,F&&F.path),U=Z.filter((K)=>typeof K==="string").length,$,E=!1;if(W.depth>=0&&W.depth{try{let K=B.call(this,C,X,G,F);if(REQ.isPromise(K))return K.then((I)=>{return IEQ($.span,E),I},(I)=>{throw VEQ($.span,I,E),I});else return IEQ($.span,E),K}catch(K){throw VEQ($.span,K,E),K}})}return J[$G.OTEL_PATCHED_SYMBOL]=!0,J}REQ.wrapFieldResolver=zEQ});var SEQ=R((PEQ)=>{Object.defineProperty(PEQ,"__esModule",{value:!0});PEQ.PACKAGE_NAME=PEQ.PACKAGE_VERSION=void 0;PEQ.PACKAGE_VERSION="0.47.1";PEQ.PACKAGE_NAME="@opentelemetry/instrumentation-graphql"});var gEQ=R((yEQ)=>{Object.defineProperty(yEQ,"__esModule",{value:!0});yEQ.GraphQLInstrumentation=void 0;var UG=yA(),l5=NB(),SL=Zn(),vP=Un(),Kn=_P(),Aq0=UEQ(),kJ=OEQ(),kEQ=SEQ(),_EQ={mergeItems:!1,depth:-1,allowValues:!1,ignoreResolveSpans:!1},yP=[">=14.0.0 <17"];class vEQ extends l5.InstrumentationBase{constructor(A={}){super(kEQ.PACKAGE_NAME,kEQ.PACKAGE_VERSION,Object.assign(Object.assign({},_EQ),A))}setConfig(A={}){super.setConfig(Object.assign(Object.assign({},_EQ),A))}init(){let A=new l5.InstrumentationNodeModuleDefinition("graphql",yP);return A.files.push(this._addPatchingExecute()),A.files.push(this._addPatchingParser()),A.files.push(this._addPatchingValidate()),A}_addPatchingExecute(){return new l5.InstrumentationNodeModuleFile("graphql/execution/execute.js",yP,(A)=>{if((0,l5.isWrapped)(A.execute))this._unwrap(A,"execute");return this._wrap(A,"execute",this._patchExecute(A.defaultFieldResolver)),A},(A)=>{if(A)this._unwrap(A,"execute")})}_addPatchingParser(){return new l5.InstrumentationNodeModuleFile("graphql/language/parser.js",yP,(A)=>{if((0,l5.isWrapped)(A.parse))this._unwrap(A,"parse");return this._wrap(A,"parse",this._patchParse()),A},(A)=>{if(A)this._unwrap(A,"parse")})}_addPatchingValidate(){return new l5.InstrumentationNodeModuleFile("graphql/validation/validate.js",yP,(A)=>{if((0,l5.isWrapped)(A.validate))this._unwrap(A,"validate");return this._wrap(A,"validate",this._patchValidate()),A},(A)=>{if(A)this._unwrap(A,"validate")})}_patchExecute(A){let Q=this;return function(Y){return function(){let C;if(arguments.length>=2){let F=arguments;C=Q._wrapExecuteArgs(F[0],F[1],F[2],F[3],F[4],F[5],F[6],F[7],A)}else{let F=arguments[0];C=Q._wrapExecuteArgs(F.schema,F.document,F.rootValue,F.contextValue,F.variableValues,F.operationName,F.fieldResolver,F.typeResolver,A)}let X=(0,kJ.getOperation)(C.document,C.operationName),G=Q._createExecuteSpan(X,C);return C.contextValue[Kn.OTEL_GRAPHQL_DATA_SYMBOL]={source:C.document?C.document||C.document[Kn.OTEL_GRAPHQL_DATA_SYMBOL]:void 0,span:G,fields:{}},UG.context.with(UG.trace.setSpan(UG.context.active(),G),()=>{return(0,l5.safeExecuteInTheMiddle)(()=>{return Y.apply(this,[C])},(F,W)=>{Q._handleExecutionResult(G,F,W)})})}}}_handleExecutionResult(A,Q,B){let Y=this.getConfig();if(B===void 0||Q){(0,kJ.endSpan)(A,Q);return}if((0,kJ.isPromise)(B))B.then((J)=>{if(typeof Y.responseHook!=="function"){(0,kJ.endSpan)(A);return}this._executeResponseHook(A,J)},(J)=>{(0,kJ.endSpan)(A,J)});else{if(typeof Y.responseHook!=="function"){(0,kJ.endSpan)(A);return}this._executeResponseHook(A,B)}}_executeResponseHook(A,Q){let{responseHook:B}=this.getConfig();if(!B)return;(0,l5.safeExecuteInTheMiddle)(()=>{B(A,Q)},(Y)=>{if(Y)this._diag.error("Error running response hook",Y);(0,kJ.endSpan)(A,void 0)},!0)}_patchParse(){let A=this;return function(B){return function(J,C){return A._parse(this,B,J,C)}}}_patchValidate(){let A=this;return function(B){return function(J,C,X,G,F){return A._validate(this,B,J,C,X,F,G)}}}_parse(A,Q,B,Y){let J=this.getConfig(),C=this.tracer.startSpan(SL.SpanNames.PARSE);return UG.context.with(UG.trace.setSpan(UG.context.active(),C),()=>{return(0,l5.safeExecuteInTheMiddle)(()=>{return Q.call(A,B,Y)},(X,G)=>{if(G){if(!(0,kJ.getOperation)(G))C.updateName(SL.SpanNames.SCHEMA_PARSE);else if(G.loc)(0,kJ.addSpanSource)(C,G.loc,J.allowValues)}(0,kJ.endSpan)(C,X)})})}_validate(A,Q,B,Y,J,C,X){let G=this.tracer.startSpan(SL.SpanNames.VALIDATE,{});return UG.context.with(UG.trace.setSpan(UG.context.active(),G),()=>{return(0,l5.safeExecuteInTheMiddle)(()=>{return Q.call(A,B,Y,J,X,C)},(F,W)=>{if(!Y.loc)G.updateName(SL.SpanNames.SCHEMA_VALIDATE);if(W&&W.length)G.recordException({name:vP.AttributeNames.ERROR_VALIDATION_NAME,message:JSON.stringify(W)});(0,kJ.endSpan)(G,F)})})}_createExecuteSpan(A,Q){var B;let Y=this.getConfig(),J=this.tracer.startSpan(SL.SpanNames.EXECUTE,{});if(A){let{operation:C,name:X}=A;J.setAttribute(vP.AttributeNames.OPERATION_TYPE,C);let G=X===null||X===void 0?void 0:X.value;if(G)J.setAttribute(vP.AttributeNames.OPERATION_NAME,G),J.updateName(`${C} ${G}`);else J.updateName(C)}else{let C=" ";if(Q.operationName)C=` "${Q.operationName}" `;C=Aq0.OPERATION_NOT_SUPPORTED.replace("$operationName$",C),J.setAttribute(vP.AttributeNames.OPERATION_NAME,C)}if((B=Q.document)===null||B===void 0?void 0:B.loc)(0,kJ.addSpanSource)(J,Q.document.loc,Y.allowValues);if(Q.variableValues&&Y.allowValues)(0,kJ.addInputVariableAttributes)(J,Q.variableValues);return J}_wrapExecuteArgs(A,Q,B,Y,J,C,X,G,F){if(!Y)Y={};if(Y[Kn.OTEL_GRAPHQL_DATA_SYMBOL]||this.getConfig().ignoreResolveSpans)return{schema:A,document:Q,rootValue:B,contextValue:Y,variableValues:J,operationName:C,fieldResolver:X,typeResolver:G};let W=X==null,Z=X!==null&&X!==void 0?X:F;if(X=(0,kJ.wrapFieldResolver)(this.tracer,()=>this.getConfig(),Z,W),A)(0,kJ.wrapFields)(A.getQueryType(),this.tracer,()=>this.getConfig()),(0,kJ.wrapFields)(A.getMutationType(),this.tracer,()=>this.getConfig());return{schema:A,document:Q,rootValue:B,contextValue:Y,variableValues:J,operationName:C,fieldResolver:X,typeResolver:G}}}yEQ.GraphQLInstrumentation=vEQ});var fEQ=R((xEQ)=>{Object.defineProperty(xEQ,"__esModule",{value:!0})});var mEQ=R((qF)=>{var Qq0=qF&&qF.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),bEQ=qF&&qF.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))Qq0(Q,A,B)};Object.defineProperty(qF,"__esModule",{value:!0});bEQ(gEQ(),qF);bEQ(fEQ(),qF)});var iEQ=R((lEQ)=>{Object.defineProperty(lEQ,"__esModule",{value:!0});lEQ.PACKAGE_NAME=lEQ.PACKAGE_VERSION=void 0;lEQ.PACKAGE_VERSION="0.7.1";lEQ.PACKAGE_NAME="@opentelemetry/instrumentation-kafkajs"});var rEQ=R((nEQ)=>{Object.defineProperty(nEQ,"__esModule",{value:!0});nEQ.bufferTextMapGetter=void 0;nEQ.bufferTextMapGetter={get(A,Q){var B;if(!A)return;let Y=Object.keys(A);for(let J of Y)if(J===Q||J.toLowerCase()===Q)return(B=A[J])===null||B===void 0?void 0:B.toString();return},keys(A){return A?Object.keys(A):[]}}});var QKQ=R((eEQ)=>{Object.defineProperty(eEQ,"__esModule",{value:!0});eEQ.KafkaJsInstrumentation=void 0;var $J=yA(),MF=uB(),aEQ=iEQ(),oEQ=rEQ(),C1=NB();class tEQ extends C1.InstrumentationBase{constructor(A={}){super(aEQ.PACKAGE_NAME,aEQ.PACKAGE_VERSION,A)}init(){let A=(B)=>{var Y,J;if((0,C1.isWrapped)((Y=B===null||B===void 0?void 0:B.Kafka)===null||Y===void 0?void 0:Y.prototype.producer))this._unwrap(B.Kafka.prototype,"producer");if((0,C1.isWrapped)((J=B===null||B===void 0?void 0:B.Kafka)===null||J===void 0?void 0:J.prototype.consumer))this._unwrap(B.Kafka.prototype,"consumer")};return new C1.InstrumentationNodeModuleDefinition("kafkajs",[">=0.1.0 <3"],(B)=>{var Y,J;return A(B),this._wrap((Y=B===null||B===void 0?void 0:B.Kafka)===null||Y===void 0?void 0:Y.prototype,"producer",this._getProducerPatch()),this._wrap((J=B===null||B===void 0?void 0:B.Kafka)===null||J===void 0?void 0:J.prototype,"consumer",this._getConsumerPatch()),B},A)}_getConsumerPatch(){let A=this;return(Q)=>{return function(...Y){let J=Q.apply(this,Y);if((0,C1.isWrapped)(J.run))A._unwrap(J,"run");return A._wrap(J,"run",A._getConsumerRunPatch()),J}}}_getProducerPatch(){let A=this;return(Q)=>{return function(...Y){let J=Q.apply(this,Y);if((0,C1.isWrapped)(J.sendBatch))A._unwrap(J,"sendBatch");if(A._wrap(J,"sendBatch",A._getProducerSendBatchPatch()),(0,C1.isWrapped)(J.send))A._unwrap(J,"send");return A._wrap(J,"send",A._getProducerSendPatch()),J}}}_getConsumerRunPatch(){let A=this;return(Q)=>{return function(...Y){let J=Y[0];if(J===null||J===void 0?void 0:J.eachMessage){if((0,C1.isWrapped)(J.eachMessage))A._unwrap(J,"eachMessage");A._wrap(J,"eachMessage",A._getConsumerEachMessagePatch())}if(J===null||J===void 0?void 0:J.eachBatch){if((0,C1.isWrapped)(J.eachBatch))A._unwrap(J,"eachBatch");A._wrap(J,"eachBatch",A._getConsumerEachBatchPatch())}return Q.call(this,J)}}}_getConsumerEachMessagePatch(){let A=this;return(Q)=>{return function(...Y){let J=Y[0],C=$J.propagation.extract($J.ROOT_CONTEXT,J.message.headers,oEQ.bufferTextMapGetter),X=A._startConsumerSpan(J.topic,J.message,MF.MESSAGINGOPERATIONVALUES_PROCESS,C),G=$J.context.with($J.trace.setSpan(C,X),()=>{return Q.apply(this,Y)});return A._endSpansOnPromise([X],G)}}}_getConsumerEachBatchPatch(){return(A)=>{let Q=this;return function(...Y){let J=Y[0],C=Q._startConsumerSpan(J.batch.topic,void 0,MF.MESSAGINGOPERATIONVALUES_RECEIVE,$J.ROOT_CONTEXT);return $J.context.with($J.trace.setSpan($J.context.active(),C),()=>{let X=J.batch.messages.map((F)=>{var W;let Z=$J.propagation.extract($J.ROOT_CONTEXT,F.headers,oEQ.bufferTextMapGetter),U=(W=$J.trace.getSpan(Z))===null||W===void 0?void 0:W.spanContext(),$;if(U)$={context:U};return Q._startConsumerSpan(J.batch.topic,F,MF.MESSAGINGOPERATIONVALUES_PROCESS,void 0,$)}),G=A.apply(this,Y);return X.unshift(C),Q._endSpansOnPromise(X,G)})}}}_getProducerSendBatchPatch(){let A=this;return(Q)=>{return function(...Y){let X=(Y[0].topicMessages||[]).map((F)=>F.messages.map((W)=>A._startProducerSpan(F.topic,W))).reduce((F,W)=>F.concat(W),[]),G=Q.apply(this,Y);return A._endSpansOnPromise(X,G)}}}_getProducerSendPatch(){let A=this;return(Q)=>{return function(...Y){let J=Y[0],C=J.messages.map((G)=>{return A._startProducerSpan(J.topic,G)}),X=Q.apply(this,Y);return A._endSpansOnPromise(C,X)}}}_endSpansOnPromise(A,Q){return Promise.resolve(Q).catch((B)=>{let Y;if(typeof B==="string")Y=B;else if(typeof B==="object"&&Object.prototype.hasOwnProperty.call(B,"message"))Y=B.message;throw A.forEach((J)=>J.setStatus({code:$J.SpanStatusCode.ERROR,message:Y})),B}).finally(()=>{A.forEach((B)=>B.end())})}_startConsumerSpan(A,Q,B,Y,J){let C=this.tracer.startSpan(A,{kind:$J.SpanKind.CONSUMER,attributes:{[MF.SEMATTRS_MESSAGING_SYSTEM]:"kafka",[MF.SEMATTRS_MESSAGING_DESTINATION]:A,[MF.SEMATTRS_MESSAGING_OPERATION]:B},links:J?[J]:[]},Y),{consumerHook:X}=this.getConfig();if(X&&Q)(0,C1.safeExecuteInTheMiddle)(()=>X(C,{topic:A,message:Q}),(G)=>{if(G)this._diag.error("consumerHook error",G)},!0);return C}_startProducerSpan(A,Q){var B;let Y=this.tracer.startSpan(A,{kind:$J.SpanKind.PRODUCER,attributes:{[MF.SEMATTRS_MESSAGING_SYSTEM]:"kafka",[MF.SEMATTRS_MESSAGING_DESTINATION]:A}});Q.headers=(B=Q.headers)!==null&&B!==void 0?B:{},$J.propagation.inject($J.trace.setSpan($J.context.active(),Y),Q.headers);let{producerHook:J}=this.getConfig();if(J)(0,C1.safeExecuteInTheMiddle)(()=>J(Y,{topic:A,message:Q}),(C)=>{if(C)this._diag.error("producerHook error",C)},!0);return Y}}eEQ.KafkaJsInstrumentation=tEQ});var YKQ=R((BKQ)=>{Object.defineProperty(BKQ,"__esModule",{value:!0})});var CKQ=R((zF)=>{var Cq0=zF&&zF.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),JKQ=zF&&zF.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))Cq0(Q,A,B)};Object.defineProperty(zF,"__esModule",{value:!0});JKQ(QKQ(),zF);JKQ(YKQ(),zF)});var ZKQ=R((FKQ)=>{Object.defineProperty(FKQ,"__esModule",{value:!0});FKQ.PACKAGE_NAME=FKQ.PACKAGE_VERSION=void 0;FKQ.PACKAGE_VERSION="0.44.1";FKQ.PACKAGE_NAME="@opentelemetry/instrumentation-lru-memoizer"});var HKQ=R((VKQ)=>{Object.defineProperty(VKQ,"__esModule",{value:!0});VKQ.LruMemoizerInstrumentation=void 0;var $KQ=yA(),UKQ=NB(),EKQ=ZKQ();class KKQ extends UKQ.InstrumentationBase{constructor(A={}){super(EKQ.PACKAGE_NAME,EKQ.PACKAGE_VERSION,A)}init(){return[new UKQ.InstrumentationNodeModuleDefinition("lru-memoizer",[">=1.3 <3"],(A)=>{let Q=function(){let B=A.apply(this,arguments);return function(){let Y=[...arguments],J=Y.pop(),C=typeof J==="function"?$KQ.context.bind($KQ.context.active(),J):J;return Y.push(C),B.apply(this,Y)}};return Q.sync=A.sync,Q},void 0)]}}VKQ.LruMemoizerInstrumentation=KKQ});var DKQ=R((D$)=>{var Fq0=D$&&D$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),Wq0=D$&&D$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))Fq0(Q,A,B)};Object.defineProperty(D$,"__esModule",{value:!0});Wq0(HKQ(),D$)});var MKQ=R((qKQ)=>{Object.defineProperty(qKQ,"__esModule",{value:!0});qKQ.MongodbCommandType=void 0;var $q0;(function(A){A.CREATE_INDEXES="createIndexes",A.FIND_AND_MODIFY="findAndModify",A.IS_MASTER="isMaster",A.COUNT="count",A.AGGREGATE="aggregate",A.UNKNOWN="unknown"})($q0=qKQ.MongodbCommandType||(qKQ.MongodbCommandType={}))});var wKQ=R((zKQ)=>{Object.defineProperty(zKQ,"__esModule",{value:!0});zKQ.PACKAGE_NAME=zKQ.PACKAGE_VERSION=void 0;zKQ.PACKAGE_VERSION="0.52.0";zKQ.PACKAGE_NAME="@opentelemetry/instrumentation-mongodb"});var SKQ=R((PKQ)=>{Object.defineProperty(PKQ,"__esModule",{value:!0});PKQ.MongoDBInstrumentation=void 0;var x0=yA(),V0=NB(),EG=uB(),RF=MKQ(),jKQ=wKQ(),OKQ={requireParentSpan:!0};class Nn extends V0.InstrumentationBase{constructor(A={}){super(jKQ.PACKAGE_NAME,jKQ.PACKAGE_VERSION,Object.assign(Object.assign({},OKQ),A))}setConfig(A={}){super.setConfig(Object.assign(Object.assign({},OKQ),A))}_updateMetricInstruments(){this._connectionsUsage=this.meter.createUpDownCounter("db.client.connections.usage",{description:"The number of connections that are currently in state described by the state attribute.",unit:"{connection}"})}init(){let{v3PatchConnection:A,v3UnpatchConnection:Q}=this._getV3ConnectionPatches(),{v4PatchConnect:B,v4UnpatchConnect:Y}=this._getV4ConnectPatches(),{v4PatchConnectionCallback:J,v4PatchConnectionPromise:C,v4UnpatchConnection:X}=this._getV4ConnectionPatches(),{v4PatchConnectionPool:G,v4UnpatchConnectionPool:F}=this._getV4ConnectionPoolPatches(),{v4PatchSessions:W,v4UnpatchSessions:Z}=this._getV4SessionsPatches();return[new V0.InstrumentationNodeModuleDefinition("mongodb",[">=3.3.0 <4"],void 0,void 0,[new V0.InstrumentationNodeModuleFile("mongodb/lib/core/wireprotocol/index.js",[">=3.3.0 <4"],A,Q)]),new V0.InstrumentationNodeModuleDefinition("mongodb",[">=4.0.0 <7"],void 0,void 0,[new V0.InstrumentationNodeModuleFile("mongodb/lib/cmap/connection.js",[">=4.0.0 <6.4"],J,X),new V0.InstrumentationNodeModuleFile("mongodb/lib/cmap/connection.js",[">=6.4.0 <7"],C,X),new V0.InstrumentationNodeModuleFile("mongodb/lib/cmap/connection_pool.js",[">=4.0.0 <6.4"],G,F),new V0.InstrumentationNodeModuleFile("mongodb/lib/cmap/connect.js",[">=4.0.0 <7"],B,Y),new V0.InstrumentationNodeModuleFile("mongodb/lib/sessions.js",[">=4.0.0 <7"],W,Z)])]}_getV3ConnectionPatches(){return{v3PatchConnection:(A)=>{if((0,V0.isWrapped)(A.insert))this._unwrap(A,"insert");if(this._wrap(A,"insert",this._getV3PatchOperation("insert")),(0,V0.isWrapped)(A.remove))this._unwrap(A,"remove");if(this._wrap(A,"remove",this._getV3PatchOperation("remove")),(0,V0.isWrapped)(A.update))this._unwrap(A,"update");if(this._wrap(A,"update",this._getV3PatchOperation("update")),(0,V0.isWrapped)(A.command))this._unwrap(A,"command");if(this._wrap(A,"command",this._getV3PatchCommand()),(0,V0.isWrapped)(A.query))this._unwrap(A,"query");if(this._wrap(A,"query",this._getV3PatchFind()),(0,V0.isWrapped)(A.getMore))this._unwrap(A,"getMore");return this._wrap(A,"getMore",this._getV3PatchCursor()),A},v3UnpatchConnection:(A)=>{if(A===void 0)return;this._unwrap(A,"insert"),this._unwrap(A,"remove"),this._unwrap(A,"update"),this._unwrap(A,"command"),this._unwrap(A,"query"),this._unwrap(A,"getMore")}}}_getV4SessionsPatches(){return{v4PatchSessions:(A)=>{if((0,V0.isWrapped)(A.acquire))this._unwrap(A,"acquire");if(this._wrap(A.ServerSessionPool.prototype,"acquire",this._getV4AcquireCommand()),(0,V0.isWrapped)(A.release))this._unwrap(A,"release");return this._wrap(A.ServerSessionPool.prototype,"release",this._getV4ReleaseCommand()),A},v4UnpatchSessions:(A)=>{if(A===void 0)return;if((0,V0.isWrapped)(A.acquire))this._unwrap(A,"acquire");if((0,V0.isWrapped)(A.release))this._unwrap(A,"release")}}}_getV4AcquireCommand(){let A=this;return(Q)=>{return function(){let Y=this.sessions.length,J=Q.call(this),C=this.sessions.length;if(Y===C)A._connectionsUsage.add(1,{state:"used","pool.name":A._poolName});else if(Y-1===C)A._connectionsUsage.add(-1,{state:"idle","pool.name":A._poolName}),A._connectionsUsage.add(1,{state:"used","pool.name":A._poolName});return J}}}_getV4ReleaseCommand(){let A=this;return(Q)=>{return function(Y){let J=Q.call(this,Y);return A._connectionsUsage.add(-1,{state:"used","pool.name":A._poolName}),A._connectionsUsage.add(1,{state:"idle","pool.name":A._poolName}),J}}}_getV4ConnectionPoolPatches(){return{v4PatchConnectionPool:(A)=>{let Q=A.ConnectionPool.prototype;if((0,V0.isWrapped)(Q.checkOut))this._unwrap(Q,"checkOut");return this._wrap(Q,"checkOut",this._getV4ConnectionPoolCheckOut()),A},v4UnpatchConnectionPool:(A)=>{if(A===void 0)return;this._unwrap(A.ConnectionPool.prototype,"checkOut")}}}_getV4ConnectPatches(){return{v4PatchConnect:(A)=>{if((0,V0.isWrapped)(A.connect))this._unwrap(A,"connect");return this._wrap(A,"connect",this._getV4ConnectCommand()),A},v4UnpatchConnect:(A)=>{if(A===void 0)return;this._unwrap(A,"connect")}}}_getV4ConnectionPoolCheckOut(){return(A)=>{return function(B){let Y=x0.context.bind(x0.context.active(),B);return A.call(this,Y)}}}_getV4ConnectCommand(){let A=this;return(Q)=>{return function(Y,J){if(Q.length===1){let X=Q.call(this,Y);if(X&&typeof X.then==="function")X.then(()=>A.setPoolName(Y),()=>{return});return X}let C=function(X,G){if(X||!G){J(X,G);return}A.setPoolName(Y),J(X,G)};return Q.call(this,Y,C)}}}_getV4ConnectionPatches(){return{v4PatchConnectionCallback:(A)=>{if((0,V0.isWrapped)(A.Connection.prototype.command))this._unwrap(A.Connection.prototype,"command");return this._wrap(A.Connection.prototype,"command",this._getV4PatchCommandCallback()),A},v4PatchConnectionPromise:(A)=>{if((0,V0.isWrapped)(A.Connection.prototype.command))this._unwrap(A.Connection.prototype,"command");return this._wrap(A.Connection.prototype,"command",this._getV4PatchCommandPromise()),A},v4UnpatchConnection:(A)=>{if(A===void 0)return;this._unwrap(A.Connection.prototype,"command")}}}_getV3PatchOperation(A){let Q=this;return(B)=>{return function(J,C,X,G,F){let W=x0.trace.getSpan(x0.context.active()),Z=Q._checkSkipInstrumentation(W),U=typeof G==="function"?G:F;if(Z||typeof U!=="function"||typeof X!=="object")if(typeof G==="function")return B.call(this,J,C,X,G);else return B.call(this,J,C,X,G,F);let $=Q.tracer.startSpan(`mongodb.${A}`,{kind:x0.SpanKind.CLIENT});Q._populateV3Attributes($,C,J,X[0],A);let E=Q._patchEnd($,U);if(typeof G==="function")return B.call(this,J,C,X,E);else return B.call(this,J,C,X,G,E)}}}_getV3PatchCommand(){let A=this;return(Q)=>{return function(Y,J,C,X,G){let F=x0.trace.getSpan(x0.context.active()),W=A._checkSkipInstrumentation(F),Z=typeof X==="function"?X:G;if(W||typeof Z!=="function"||typeof C!=="object")if(typeof X==="function")return Q.call(this,Y,J,C,X);else return Q.call(this,Y,J,C,X,G);let U=Nn._getCommandType(C),$=U===RF.MongodbCommandType.UNKNOWN?"command":U,E=A.tracer.startSpan(`mongodb.${$}`,{kind:x0.SpanKind.CLIENT}),K=U===RF.MongodbCommandType.UNKNOWN?void 0:U;A._populateV3Attributes(E,J,Y,C,K);let I=A._patchEnd(E,Z);if(typeof X==="function")return Q.call(this,Y,J,C,I);else return Q.call(this,Y,J,C,X,I)}}}_getV4PatchCommandCallback(){let A=this;return(Q)=>{return function(Y,J,C,X){let G=x0.trace.getSpan(x0.context.active()),F=A._checkSkipInstrumentation(G),W=X,Z=Object.keys(J)[0];if(typeof J!=="object"||J.ismaster||J.hello)return Q.call(this,Y,J,C,X);let U=void 0;if(!F)U=A.tracer.startSpan(`mongodb.${Z}`,{kind:x0.SpanKind.CLIENT}),A._populateV4Attributes(U,this,Y,J,Z);let $=A._patchEnd(U,W,this.id,Z);return Q.call(this,Y,J,C,$)}}}_getV4PatchCommandPromise(){let A=this;return(Q)=>{return function(...Y){let[J,C]=Y,X=x0.trace.getSpan(x0.context.active()),G=A._checkSkipInstrumentation(X),F=Object.keys(C)[0],W=()=>{return};if(typeof C!=="object"||C.ismaster||C.hello)return Q.apply(this,Y);let Z=void 0;if(!G)Z=A.tracer.startSpan(`mongodb.${F}`,{kind:x0.SpanKind.CLIENT}),A._populateV4Attributes(Z,this,J,C,F);let U=A._patchEnd(Z,W,this.id,F),$=Q.apply(this,Y);return $.then((E)=>U(null,E),(E)=>U(E)),$}}}_getV3PatchFind(){let A=this;return(Q)=>{return function(Y,J,C,X,G,F){let W=x0.trace.getSpan(x0.context.active()),Z=A._checkSkipInstrumentation(W),U=typeof G==="function"?G:F;if(Z||typeof U!=="function"||typeof C!=="object")if(typeof G==="function")return Q.call(this,Y,J,C,X,G);else return Q.call(this,Y,J,C,X,G,F);let $=A.tracer.startSpan("mongodb.find",{kind:x0.SpanKind.CLIENT});A._populateV3Attributes($,J,Y,C,"find");let E=A._patchEnd($,U);if(typeof G==="function")return Q.call(this,Y,J,C,X,E);else return Q.call(this,Y,J,C,X,G,E)}}}_getV3PatchCursor(){let A=this;return(Q)=>{return function(Y,J,C,X,G,F){let W=x0.trace.getSpan(x0.context.active()),Z=A._checkSkipInstrumentation(W),U=typeof G==="function"?G:F;if(Z||typeof U!=="function")if(typeof G==="function")return Q.call(this,Y,J,C,X,G);else return Q.call(this,Y,J,C,X,G,F);let $=A.tracer.startSpan("mongodb.getMore",{kind:x0.SpanKind.CLIENT});A._populateV3Attributes($,J,Y,C.cmd,"getMore");let E=A._patchEnd($,U);if(typeof G==="function")return Q.call(this,Y,J,C,X,E);else return Q.call(this,Y,J,C,X,G,E)}}}static _getCommandType(A){if(A.createIndexes!==void 0)return RF.MongodbCommandType.CREATE_INDEXES;else if(A.findandmodify!==void 0)return RF.MongodbCommandType.FIND_AND_MODIFY;else if(A.ismaster!==void 0)return RF.MongodbCommandType.IS_MASTER;else if(A.count!==void 0)return RF.MongodbCommandType.COUNT;else if(A.aggregate!==void 0)return RF.MongodbCommandType.AGGREGATE;else return RF.MongodbCommandType.UNKNOWN}_populateV4Attributes(A,Q,B,Y,J){let C,X;if(Q){let F=typeof Q.address==="string"?Q.address.split(":"):"";if(F.length===2)C=F[0],X=F[1]}let G;if((Y===null||Y===void 0?void 0:Y.documents)&&Y.documents[0])G=Y.documents[0];else if(Y===null||Y===void 0?void 0:Y.cursors)G=Y.cursors;else G=Y;this._addAllSpanAttributes(A,B.db,B.collection,C,X,G,J)}_populateV3Attributes(A,Q,B,Y,J){var C,X,G,F,W,Z,U,$;let E,K;if(B&&B.s){if(E=(X=(C=B.s.options)===null||C===void 0?void 0:C.host)!==null&&X!==void 0?X:B.s.host,K=(W=(F=(G=B.s.options)===null||G===void 0?void 0:G.port)!==null&&F!==void 0?F:B.s.port)===null||W===void 0?void 0:W.toString(),E==null||K==null){let D=(Z=B.description)===null||Z===void 0?void 0:Z.address;if(D){let L=D.split(":");E=L[0],K=L[1]}}}let[I,V]=Q.toString().split("."),H=($=(U=Y===null||Y===void 0?void 0:Y.query)!==null&&U!==void 0?U:Y===null||Y===void 0?void 0:Y.q)!==null&&$!==void 0?$:Y;this._addAllSpanAttributes(A,I,V,E,K,H,J)}_addAllSpanAttributes(A,Q,B,Y,J,C,X){if(A.setAttributes({[EG.SEMATTRS_DB_SYSTEM]:EG.DBSYSTEMVALUES_MONGODB,[EG.SEMATTRS_DB_NAME]:Q,[EG.SEMATTRS_DB_MONGODB_COLLECTION]:B,[EG.SEMATTRS_DB_OPERATION]:X,[EG.SEMATTRS_DB_CONNECTION_STRING]:`mongodb://${Y}:${J}/${Q}`}),Y&&J){A.setAttribute(EG.SEMATTRS_NET_PEER_NAME,Y);let W=parseInt(J,10);if(!isNaN(W))A.setAttribute(EG.SEMATTRS_NET_PEER_PORT,W)}if(!C)return;let{dbStatementSerializer:G}=this.getConfig(),F=typeof G==="function"?G:this._defaultDbStatementSerializer.bind(this);(0,V0.safeExecuteInTheMiddle)(()=>{let W=F(C);A.setAttribute(EG.SEMATTRS_DB_STATEMENT,W)},(W)=>{if(W)this._diag.error("Error running dbStatementSerializer hook",W)},!0)}_defaultDbStatementSerializer(A){let{enhancedDatabaseReporting:Q}=this.getConfig(),B=Q?A:this._scrubStatement(A);return JSON.stringify(B)}_scrubStatement(A){if(Array.isArray(A))return A.map((Q)=>this._scrubStatement(Q));if(typeof A==="object"&&A!==null)return Object.fromEntries(Object.entries(A).map(([Q,B])=>[Q,this._scrubStatement(B)]));return"?"}_handleExecutionResult(A,Q){let{responseHook:B}=this.getConfig();if(typeof B==="function")(0,V0.safeExecuteInTheMiddle)(()=>{B(A,{data:Q})},(Y)=>{if(Y)this._diag.error("Error running response hook",Y)},!0)}_patchEnd(A,Q,B,Y){let J=x0.context.active(),C=this;return function(...G){let F=G[0];if(A){if(F instanceof Error)A===null||A===void 0||A.setStatus({code:x0.SpanStatusCode.ERROR,message:F.message});else{let W=G[1];C._handleExecutionResult(A,W)}A.end()}return x0.context.with(J,()=>{if(Y==="endSessions")C._connectionsUsage.add(-1,{state:"idle","pool.name":C._poolName});return Q.apply(this,G)})}}setPoolName(A){var Q,B;let Y=(Q=A.hostAddress)===null||Q===void 0?void 0:Q.host,J=(B=A.hostAddress)===null||B===void 0?void 0:B.port,C=A.dbName,X=`mongodb://${Y}:${J}/${C}`;this._poolName=X}_checkSkipInstrumentation(A){return this.getConfig().requireParentSpan===!0&&A===void 0}}PKQ.MongoDBInstrumentation=Nn});var _KQ=R((kKQ)=>{Object.defineProperty(kKQ,"__esModule",{value:!0});kKQ.MongodbCommandType=void 0;var Eq0;(function(A){A.CREATE_INDEXES="createIndexes",A.FIND_AND_MODIFY="findAndModify",A.IS_MASTER="isMaster",A.COUNT="count",A.UNKNOWN="unknown"})(Eq0=kKQ.MongodbCommandType||(kKQ.MongodbCommandType={}))});var yKQ=R((wF)=>{var Kq0=wF&&wF.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),vKQ=wF&&wF.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))Kq0(Q,A,B)};Object.defineProperty(wF,"__esModule",{value:!0});vKQ(SKQ(),wF);vKQ(_KQ(),wF)});var uKQ=R((bKQ)=>{Object.defineProperty(bKQ,"__esModule",{value:!0});bKQ.handleCallbackResponse=bKQ.handlePromiseResponse=bKQ.getAttributesFromCollection=void 0;var xKQ=yA(),Lq0=NB(),kL=uB();function qq0(A){return{[kL.SEMATTRS_DB_MONGODB_COLLECTION]:A.name,[kL.SEMATTRS_DB_NAME]:A.conn.name,[kL.SEMATTRS_DB_USER]:A.conn.user,[kL.SEMATTRS_NET_PEER_NAME]:A.conn.host,[kL.SEMATTRS_NET_PEER_PORT]:A.conn.port}}bKQ.getAttributesFromCollection=qq0;function fKQ(A,Q={}){A.recordException(Q),A.setStatus({code:xKQ.SpanStatusCode.ERROR,message:`${Q.message} ${Q.code?` -Mongoose Error Code: ${Q.code}`:""}`})}function zn(A,Q,B,Y=void 0){if(!B)return;(0,Lq0.safeExecuteInTheMiddle)(()=>B(A,{moduleVersion:Y,response:Q}),(J)=>{if(J)xKQ.diag.error("mongoose instrumentation: responseHook error",J)},!0)}function Mq0(A,Q,B,Y=void 0){if(!(A instanceof Promise))return zn(Q,A,B,Y),Q.end(),A;return A.then((J)=>{return zn(Q,J,B,Y),J}).catch((J)=>{throw fKQ(Q,J),J}).finally(()=>Q.end())}bKQ.handlePromiseResponse=Mq0;function zq0(A,Q,B,Y,J,C,X=void 0){let G=0;if(J.length===2)G=1;return J[G]=(F,W)=>{return F?fKQ(Y,F):zn(Y,W,C,X),Y.end(),A(F,W)},Q.apply(B,J)}bKQ.handleCallbackResponse=zq0});var lKQ=R((dKQ)=>{Object.defineProperty(dKQ,"__esModule",{value:!0});dKQ.PACKAGE_NAME=dKQ.PACKAGE_VERSION=void 0;dKQ.PACKAGE_VERSION="0.46.1";dKQ.PACKAGE_NAME="@opentelemetry/instrumentation-mongoose"});var tKQ=R((aKQ)=>{Object.defineProperty(aKQ,"__esModule",{value:!0});aKQ.MongooseInstrumentation=aKQ._STORED_PARENT_SPAN=void 0;var K9=yA(),Oq0=MB(),Rn=uKQ(),pKQ=NB(),iKQ=lKQ(),_L=uB(),bP=["deleteOne","deleteMany","find","findOne","estimatedDocumentCount","countDocuments","distinct","where","$where","findOneAndUpdate","findOneAndDelete","findOneAndReplace"],Pq0=["remove","count","findOneAndRemove",...bP],Tq0=["count","findOneAndRemove",...bP],Sq0=[...bP];function nKQ(A){if(!A)return bP;else if(A.startsWith("6.")||A.startsWith("5."))return Pq0;else if(A.startsWith("7."))return Tq0;else return Sq0}function sKQ(A){return A&&(A.startsWith("5.")||A.startsWith("6."))||!1}aKQ._STORED_PARENT_SPAN=Symbol("stored-parent-span");class rKQ extends pKQ.InstrumentationBase{constructor(A={}){super(iKQ.PACKAGE_NAME,iKQ.PACKAGE_VERSION,A)}init(){return new pKQ.InstrumentationNodeModuleDefinition("mongoose",[">=5.9.7 <9"],this.patch.bind(this),this.unpatch.bind(this))}patch(A,Q){if(this._wrap(A.Model.prototype,"save",this.patchOnModelMethods("save",Q)),A.Model.prototype.$save=A.Model.prototype.save,sKQ(Q))this._wrap(A.Model.prototype,"remove",this.patchOnModelMethods("remove",Q));return this._wrap(A.Query.prototype,"exec",this.patchQueryExec(Q)),this._wrap(A.Aggregate.prototype,"exec",this.patchAggregateExec(Q)),nKQ(Q).forEach((Y)=>{this._wrap(A.Query.prototype,Y,this.patchAndCaptureSpanContext(Y))}),this._wrap(A.Model,"aggregate",this.patchModelAggregate()),A}unpatch(A,Q){let B=nKQ(Q);if(this._unwrap(A.Model.prototype,"save"),A.Model.prototype.$save=A.Model.prototype.save,sKQ(Q))this._unwrap(A.Model.prototype,"remove");this._unwrap(A.Query.prototype,"exec"),this._unwrap(A.Aggregate.prototype,"exec"),B.forEach((Y)=>{this._unwrap(A.Query.prototype,Y)}),this._unwrap(A.Model,"aggregate")}patchAggregateExec(A){let Q=this;return(B)=>{return function(J){var C;if(Q.getConfig().requireParentSpan&&K9.trace.getSpan(K9.context.active())===void 0)return B.apply(this,arguments);let X=this[aKQ._STORED_PARENT_SPAN],G={},{dbStatementSerializer:F}=Q.getConfig();if(F)G[_L.SEMATTRS_DB_STATEMENT]=F("aggregate",{options:this.options,aggregatePipeline:this._pipeline});let W=Q._startSpan(this._model.collection,(C=this._model)===null||C===void 0?void 0:C.modelName,"aggregate",G,X);return Q._handleResponse(W,B,this,arguments,J,A)}}}patchQueryExec(A){let Q=this;return(B)=>{return function(J){if(Q.getConfig().requireParentSpan&&K9.trace.getSpan(K9.context.active())===void 0)return B.apply(this,arguments);let C=this[aKQ._STORED_PARENT_SPAN],X={},{dbStatementSerializer:G}=Q.getConfig();if(G)X[_L.SEMATTRS_DB_STATEMENT]=G(this.op,{condition:this._conditions,updates:this._update,options:this.options,fields:this._fields});let F=Q._startSpan(this.mongooseCollection,this.model.modelName,this.op,X,C);return Q._handleResponse(F,B,this,arguments,J,A)}}}patchOnModelMethods(A,Q){let B=this;return(Y)=>{return function(C,X){if(B.getConfig().requireParentSpan&&K9.trace.getSpan(K9.context.active())===void 0)return Y.apply(this,arguments);let G={document:this};if(C&&!(C instanceof Function))G.options=C;let F={},{dbStatementSerializer:W}=B.getConfig();if(W)F[_L.SEMATTRS_DB_STATEMENT]=W(A,G);let Z=B._startSpan(this.constructor.collection,this.constructor.modelName,A,F);if(C instanceof Function)X=C,C=void 0;return B._handleResponse(Z,Y,this,arguments,X,Q)}}}patchModelAggregate(){let A=this;return(Q)=>{return function(){let Y=K9.trace.getSpan(K9.context.active()),J=A._callOriginalFunction(()=>Q.apply(this,arguments));if(J)J[aKQ._STORED_PARENT_SPAN]=Y;return J}}}patchAndCaptureSpanContext(A){let Q=this;return(B)=>{return function(){return this[aKQ._STORED_PARENT_SPAN]=K9.trace.getSpan(K9.context.active()),Q._callOriginalFunction(()=>B.apply(this,arguments))}}}_startSpan(A,Q,B,Y,J){return this.tracer.startSpan(`mongoose.${Q}.${B}`,{kind:K9.SpanKind.CLIENT,attributes:Object.assign(Object.assign(Object.assign({},Y),(0,Rn.getAttributesFromCollection)(A)),{[_L.SEMATTRS_DB_OPERATION]:B,[_L.SEMATTRS_DB_SYSTEM]:"mongoose"})},J?K9.trace.setSpan(K9.context.active(),J):void 0)}_handleResponse(A,Q,B,Y,J,C=void 0){let X=this;if(J instanceof Function)return X._callOriginalFunction(()=>(0,Rn.handleCallbackResponse)(J,Q,B,A,Y,X.getConfig().responseHook,C));else{let G=X._callOriginalFunction(()=>Q.apply(B,Y));return(0,Rn.handlePromiseResponse)(G,A,X.getConfig().responseHook,C)}}_callOriginalFunction(A){if(this.getConfig().suppressInternalInstrumentation)return K9.context.with((0,Oq0.suppressTracing)(K9.context.active()),A);else return A()}}aKQ.MongooseInstrumentation=rKQ});var AVQ=R((eKQ)=>{Object.defineProperty(eKQ,"__esModule",{value:!0})});var BVQ=R((jF)=>{var kq0=jF&&jF.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),QVQ=jF&&jF.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))kq0(Q,A,B)};Object.defineProperty(jF,"__esModule",{value:!0});QVQ(tKQ(),jF);QVQ(AVQ(),jF)});var XVQ=R((CVQ)=>{Object.defineProperty(CVQ,"__esModule",{value:!0});CVQ.AttributeNames=void 0;var vq0;(function(A){A.MYSQL_VALUES="db.mysql.values"})(vq0=CVQ.AttributeNames||(CVQ.AttributeNames={}))});var ZVQ=R((FVQ)=>{Object.defineProperty(FVQ,"__esModule",{value:!0});FVQ.getPoolName=FVQ.arrayStringifyHelper=FVQ.getSpanName=FVQ.getDbValues=FVQ.getDbStatement=FVQ.getConnectionAttributes=void 0;var KG=uB();function yq0(A){let{host:Q,port:B,database:Y,user:J}=hq0(A),C=parseInt(B,10);if(!isNaN(C))return{[KG.SEMATTRS_NET_PEER_NAME]:Q,[KG.SEMATTRS_NET_PEER_PORT]:C,[KG.SEMATTRS_DB_CONNECTION_STRING]:GVQ(Q,B,Y),[KG.SEMATTRS_DB_NAME]:Y,[KG.SEMATTRS_DB_USER]:J};return{[KG.SEMATTRS_NET_PEER_NAME]:Q,[KG.SEMATTRS_DB_CONNECTION_STRING]:GVQ(Q,B,Y),[KG.SEMATTRS_DB_NAME]:Y,[KG.SEMATTRS_DB_USER]:J}}FVQ.getConnectionAttributes=yq0;function hq0(A){let{host:Q,port:B,database:Y,user:J}=A&&A.connectionConfig||A||{};return{host:Q,port:B,database:Y,user:J}}function GVQ(A,Q,B){let Y=`jdbc:mysql://${A||"localhost"}`;if(typeof Q==="number")Y+=`:${Q}`;if(typeof B==="string")Y+=`/${B}`;return Y}function gq0(A){if(typeof A==="string")return A;else return A.sql}FVQ.getDbStatement=gq0;function xq0(A,Q){if(typeof A==="string")return On(Q);else return On(Q||A.values)}FVQ.getDbValues=xq0;function fq0(A){let Q=typeof A==="object"?A.sql:A,B=Q===null||Q===void 0?void 0:Q.indexOf(" ");if(typeof B==="number"&&B!==-1)return Q===null||Q===void 0?void 0:Q.substring(0,B);return Q}FVQ.getSpanName=fq0;function On(A){if(A)return`[${A.toString()}]`;return""}FVQ.arrayStringifyHelper=On;function bq0(A){let Q=A.config.connectionConfig,B="";if(B+=Q.host?`host: '${Q.host}', `:"",B+=Q.port?`port: ${Q.port}, `:"",B+=Q.database?`database: '${Q.database}', `:"",B+=Q.user?`user: '${Q.user}'`:"",!Q.user)B=B.substring(0,B.length-2);return B.trim()}FVQ.getPoolName=bq0});var EVQ=R(($VQ)=>{Object.defineProperty($VQ,"__esModule",{value:!0});$VQ.PACKAGE_NAME=$VQ.PACKAGE_VERSION=void 0;$VQ.PACKAGE_VERSION="0.45.1";$VQ.PACKAGE_NAME="@opentelemetry/instrumentation-mysql"});var HVQ=R((VVQ)=>{Object.defineProperty(VVQ,"__esModule",{value:!0});VVQ.MySQLInstrumentation=void 0;var i9=yA(),OK=NB(),Pn=uB(),iq0=XVQ(),PK=ZVQ(),KVQ=EVQ();class uP extends OK.InstrumentationBase{constructor(A={}){super(KVQ.PACKAGE_NAME,KVQ.PACKAGE_VERSION,A);this._setMetricInstruments()}setMeterProvider(A){super.setMeterProvider(A),this._setMetricInstruments()}_setMetricInstruments(){this._connectionsUsage=this.meter.createUpDownCounter("db.client.connections.usage",{description:"The number of connections that are currently in state described by the state attribute.",unit:"{connection}"})}init(){return[new OK.InstrumentationNodeModuleDefinition("mysql",[">=2.0.0 <3"],(A)=>{if((0,OK.isWrapped)(A.createConnection))this._unwrap(A,"createConnection");if(this._wrap(A,"createConnection",this._patchCreateConnection()),(0,OK.isWrapped)(A.createPool))this._unwrap(A,"createPool");if(this._wrap(A,"createPool",this._patchCreatePool()),(0,OK.isWrapped)(A.createPoolCluster))this._unwrap(A,"createPoolCluster");return this._wrap(A,"createPoolCluster",this._patchCreatePoolCluster()),A},(A)=>{if(A===void 0)return;this._unwrap(A,"createConnection"),this._unwrap(A,"createPool"),this._unwrap(A,"createPoolCluster")})]}_patchCreateConnection(){return(A)=>{let Q=this;return function(Y){let J=A(...arguments);return Q._wrap(J,"query",Q._patchQuery(J)),J}}}_patchCreatePool(){return(A)=>{let Q=this;return function(Y){let J=A(...arguments);return Q._wrap(J,"query",Q._patchQuery(J)),Q._wrap(J,"getConnection",Q._patchGetConnection(J)),Q._wrap(J,"end",Q._patchPoolEnd(J)),Q._setPoolcallbacks(J,Q,""),J}}}_patchPoolEnd(A){return(Q)=>{let B=this;return function(J){let C=A._allConnections.length,X=A._freeConnections.length,G=C-X,F=(0,PK.getPoolName)(A);B._connectionsUsage.add(-G,{state:"used",name:F}),B._connectionsUsage.add(-X,{state:"idle",name:F}),Q.apply(A,arguments)}}}_patchCreatePoolCluster(){return(A)=>{let Q=this;return function(Y){let J=A(...arguments);return Q._wrap(J,"getConnection",Q._patchGetConnection(J)),Q._wrap(J,"add",Q._patchAdd(J)),J}}}_patchAdd(A){return(Q)=>{let B=this;return function(J,C){if(!B._enabled)return B._unwrap(A,"add"),Q.apply(A,arguments);Q.apply(A,arguments);let X=A._nodes;if(X){let G=typeof J==="object"?"CLUSTER::"+A._lastId:String(J),F=X[G].pool;B._setPoolcallbacks(F,B,J)}}}}_patchGetConnection(A){return(Q)=>{let B=this;return function(J,C,X){if(!B._enabled)return B._unwrap(A,"getConnection"),Q.apply(A,arguments);if(arguments.length===1&&typeof J==="function"){let G=B._getConnectionCallbackPatchFn(J);return Q.call(A,G)}if(arguments.length===2&&typeof C==="function"){let G=B._getConnectionCallbackPatchFn(C);return Q.call(A,J,G)}if(arguments.length===3&&typeof X==="function"){let G=B._getConnectionCallbackPatchFn(X);return Q.call(A,J,C,G)}return Q.apply(A,arguments)}}}_getConnectionCallbackPatchFn(A){let Q=this,B=i9.context.active();return function(Y,J){if(J){if(!(0,OK.isWrapped)(J.query))Q._wrap(J,"query",Q._patchQuery(J))}if(typeof A==="function")i9.context.with(B,A,this,Y,J)}}_patchQuery(A){return(Q)=>{let B=this;return function(Y,J,C){if(!B._enabled)return B._unwrap(A,"query"),Q.apply(A,arguments);let X=B.tracer.startSpan((0,PK.getSpanName)(Y),{kind:i9.SpanKind.CLIENT,attributes:Object.assign(Object.assign({},uP.COMMON_ATTRIBUTES),(0,PK.getConnectionAttributes)(A.config))});if(X.setAttribute(Pn.SEMATTRS_DB_STATEMENT,(0,PK.getDbStatement)(Y)),B.getConfig().enhancedDatabaseReporting){let W;if(Array.isArray(J))W=J;else if(arguments[2])W=[J];X.setAttribute(iq0.AttributeNames.MYSQL_VALUES,(0,PK.getDbValues)(Y,W))}let G=Array.from(arguments).findIndex((W)=>typeof W==="function"),F=i9.context.active();if(G===-1){let W=i9.context.with(i9.trace.setSpan(i9.context.active(),X),()=>{return Q.apply(A,arguments)});return i9.context.bind(F,W),W.on("error",(Z)=>X.setStatus({code:i9.SpanStatusCode.ERROR,message:Z.message})).on("end",()=>{X.end()})}else return B._wrap(arguments,G,B._patchCallbackQuery(X,F)),i9.context.with(i9.trace.setSpan(i9.context.active(),X),()=>{return Q.apply(A,arguments)})}}}_patchCallbackQuery(A,Q){return(B)=>{return function(Y,J,C){if(Y)A.setStatus({code:i9.SpanStatusCode.ERROR,message:Y.message});return A.end(),i9.context.with(Q,()=>B(...arguments))}}}_setPoolcallbacks(A,Q,B){let Y=B||(0,PK.getPoolName)(A);A.on("connection",(J)=>{Q._connectionsUsage.add(1,{state:"idle",name:Y})}),A.on("acquire",(J)=>{Q._connectionsUsage.add(-1,{state:"idle",name:Y}),Q._connectionsUsage.add(1,{state:"used",name:Y})}),A.on("release",(J)=>{Q._connectionsUsage.add(-1,{state:"used",name:Y}),Q._connectionsUsage.add(1,{state:"idle",name:Y})})}}VVQ.MySQLInstrumentation=uP;uP.COMMON_ATTRIBUTES={[Pn.SEMATTRS_DB_SYSTEM]:Pn.DBSYSTEMVALUES_MYSQL}});var NVQ=R((DVQ)=>{Object.defineProperty(DVQ,"__esModule",{value:!0})});var qVQ=R((OF)=>{var nq0=OF&&OF.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),LVQ=OF&&OF.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))nq0(Q,A,B)};Object.defineProperty(OF,"__esModule",{value:!0});LVQ(HVQ(),OF);LVQ(NVQ(),OF)});var kn=R((RVQ)=>{Object.defineProperty(RVQ,"__esModule",{value:!0});RVQ.addSqlCommenterComment=void 0;var Sn=yA(),rq0=MB();function aq0(A){let Q=A.indexOf("--");if(Q>=0)return!0;if(A.indexOf("/*")<0)return!1;let Y=A.indexOf("*/");return Q`%${Q.charCodeAt(0).toString(16).toUpperCase()}`)}function tq0(A,Q){if(typeof Q!=="string"||Q.length===0)return Q;if(aq0(Q))return Q;let B=new rq0.W3CTraceContextPropagator,Y={};B.inject(Sn.trace.setSpan(Sn.ROOT_CONTEXT,A),Y,Sn.defaultTextMapSetter);let J=Object.keys(Y).sort();if(J.length===0)return Q;let C=J.map((X)=>{let G=oq0(Y[X]);return`${X}='${G}'`}).join(",");return`${Q} /*${C}*/`}RVQ.addSqlCommenterComment=tq0});var TVQ=R((OVQ)=>{Object.defineProperty(OVQ,"__esModule",{value:!0});OVQ.getConnectionPrototypeToInstrument=OVQ.once=OVQ.getSpanName=OVQ.getDbStatement=OVQ.getConnectionAttributes=void 0;var VG=uB();function eq0(A){let{host:Q,port:B,database:Y,user:J}=AM0(A),C=parseInt(B,10);if(!isNaN(C))return{[VG.SEMATTRS_NET_PEER_NAME]:Q,[VG.SEMATTRS_NET_PEER_PORT]:C,[VG.SEMATTRS_DB_CONNECTION_STRING]:jVQ(Q,B,Y),[VG.SEMATTRS_DB_NAME]:Y,[VG.SEMATTRS_DB_USER]:J};return{[VG.SEMATTRS_NET_PEER_NAME]:Q,[VG.SEMATTRS_DB_CONNECTION_STRING]:jVQ(Q,B,Y),[VG.SEMATTRS_DB_NAME]:Y,[VG.SEMATTRS_DB_USER]:J}}OVQ.getConnectionAttributes=eq0;function AM0(A){let{host:Q,port:B,database:Y,user:J}=A&&A.connectionConfig||A||{};return{host:Q,port:B,database:Y,user:J}}function jVQ(A,Q,B){let Y=`jdbc:mysql://${A||"localhost"}`;if(typeof Q==="number")Y+=`:${Q}`;if(typeof B==="string")Y+=`/${B}`;return Y}function QM0(A,Q,B){if(!Q)return typeof A==="string"?A:A.sql;if(typeof A==="string")return B?Q(A,B):A;else return B||A.values?Q(A.sql,B||A.values):A.sql}OVQ.getDbStatement=QM0;function BM0(A){let Q=typeof A==="object"?A.sql:A,B=Q===null||Q===void 0?void 0:Q.indexOf(" ");if(typeof B==="number"&&B!==-1)return Q===null||Q===void 0?void 0:Q.substring(0,B);return Q}OVQ.getSpanName=BM0;var YM0=(A)=>{let Q=!1;return(...B)=>{if(Q)return;return Q=!0,A(...B)}};OVQ.once=YM0;function JM0(A){let Q=A.prototype,B=Object.getPrototypeOf(Q);if(typeof(B===null||B===void 0?void 0:B.query)==="function"&&typeof(B===null||B===void 0?void 0:B.execute)==="function")return B;return Q}OVQ.getConnectionPrototypeToInstrument=JM0});var _VQ=R((SVQ)=>{Object.defineProperty(SVQ,"__esModule",{value:!0});SVQ.PACKAGE_NAME=SVQ.PACKAGE_VERSION=void 0;SVQ.PACKAGE_VERSION="0.45.2";SVQ.PACKAGE_NAME="@opentelemetry/instrumentation-mysql2"});var fVQ=R((gVQ)=>{Object.defineProperty(gVQ,"__esModule",{value:!0});gVQ.MySQL2Instrumentation=void 0;var vVQ=yA(),N$=NB(),vn=uB(),yVQ=kn(),TK=TVQ(),hVQ=_VQ(),_n=[">=1.4.2 <4"];class cP extends N$.InstrumentationBase{constructor(A={}){super(hVQ.PACKAGE_NAME,hVQ.PACKAGE_VERSION,A)}init(){let A;function Q(J){if(!A&&J.format)A=J.format}let B=(J)=>{if((0,N$.isWrapped)(J.query))this._unwrap(J,"query");if(this._wrap(J,"query",this._patchQuery(A,!1)),(0,N$.isWrapped)(J.execute))this._unwrap(J,"execute");this._wrap(J,"execute",this._patchQuery(A,!0))},Y=(J)=>{this._unwrap(J,"query"),this._unwrap(J,"execute")};return[new N$.InstrumentationNodeModuleDefinition("mysql2",_n,(J)=>{return Q(J),J},()=>{},[new N$.InstrumentationNodeModuleFile("mysql2/promise.js",_n,(J)=>{return Q(J),J},()=>{}),new N$.InstrumentationNodeModuleFile("mysql2/lib/connection.js",_n,(J)=>{let C=(0,TK.getConnectionPrototypeToInstrument)(J);return B(C),J},(J)=>{if(J===void 0)return;let C=(0,TK.getConnectionPrototypeToInstrument)(J);Y(C)})])]}_patchQuery(A,Q){return(B)=>{let Y=this;return function(J,C,X){let G;if(Array.isArray(C))G=C;else if(arguments[2])G=[C];let F=Y.tracer.startSpan((0,TK.getSpanName)(J),{kind:vVQ.SpanKind.CLIENT,attributes:Object.assign(Object.assign(Object.assign({},cP.COMMON_ATTRIBUTES),(0,TK.getConnectionAttributes)(this.config)),{[vn.SEMATTRS_DB_STATEMENT]:(0,TK.getDbStatement)(J,A,G)})});if(!Q&&Y.getConfig().addSqlCommenterCommentToQueries)arguments[0]=J=typeof J==="string"?(0,yVQ.addSqlCommenterComment)(F,J):Object.assign(J,{sql:(0,yVQ.addSqlCommenterComment)(F,J.sql)});let W=(0,TK.once)((Z,U)=>{if(Z)F.setStatus({code:vVQ.SpanStatusCode.ERROR,message:Z.message});else{let{responseHook:$}=Y.getConfig();if(typeof $==="function")(0,N$.safeExecuteInTheMiddle)(()=>{$(F,{queryResults:U})},(E)=>{if(E)Y._diag.warn("Failed executing responseHook",E)},!0)}F.end()});if(arguments.length===1){if(typeof J.onResult==="function")Y._wrap(J,"onResult",Y._patchCallbackQuery(W));let Z=B.apply(this,arguments);return Z.once("error",(U)=>{W(U)}).once("result",(U)=>{W(void 0,U)}),Z}if(typeof arguments[1]==="function")Y._wrap(arguments,1,Y._patchCallbackQuery(W));else if(typeof arguments[2]==="function")Y._wrap(arguments,2,Y._patchCallbackQuery(W));return B.apply(this,arguments)}}}_patchCallbackQuery(A){return(Q)=>{return function(B,Y,J){return A(B,Y),Q(...arguments)}}}}gVQ.MySQL2Instrumentation=cP;cP.COMMON_ATTRIBUTES={[vn.SEMATTRS_DB_SYSTEM]:vn.DBSYSTEMVALUES_MYSQL}});var mVQ=R((bVQ)=>{Object.defineProperty(bVQ,"__esModule",{value:!0})});var dVQ=R((PF)=>{var ZM0=PF&&PF.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),uVQ=PF&&PF.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))ZM0(Q,A,B)};Object.defineProperty(PF,"__esModule",{value:!0});uVQ(fVQ(),PF);uVQ(mVQ(),PF)});var nVQ=R((pVQ)=>{Object.defineProperty(pVQ,"__esModule",{value:!0});pVQ.endSpan=void 0;var UM0=yA(),EM0=(A,Q)=>{if(Q)A.recordException(Q),A.setStatus({code:UM0.SpanStatusCode.ERROR,message:Q.message});A.end()};pVQ.endSpan=EM0});var hn=R((sVQ)=>{Object.defineProperty(sVQ,"__esModule",{value:!0});sVQ.defaultDbStatementSerializer=void 0;var KM0=[{regex:/^ECHO/i,args:0},{regex:/^(LPUSH|MSET|PFA|PUBLISH|RPUSH|SADD|SET|SPUBLISH|XADD|ZADD)/i,args:1},{regex:/^(HSET|HMSET|LSET|LINSERT)/i,args:2},{regex:/^(ACL|BIT|B[LRZ]|CLIENT|CLUSTER|CONFIG|COMMAND|DECR|DEL|EVAL|EX|FUNCTION|GEO|GET|HINCR|HMGET|HSCAN|INCR|L[TRLM]|MEMORY|P[EFISTU]|RPOP|S[CDIMORSU]|XACK|X[CDGILPRT]|Z[CDILMPRS])/i,args:-1}],VM0=(A,Q)=>{var B,Y;if(Array.isArray(Q)&&Q.length){let J=(Y=(B=KM0.find(({regex:X})=>{return X.test(A)}))===null||B===void 0?void 0:B.args)!==null&&Y!==void 0?Y:0,C=J>=0?Q.slice(0,J):Q;if(Q.length>C.length)C.push(`[${Q.length-J} other arguments]`);return`${A} ${C.join(" ")}`}return A};sVQ.defaultDbStatementSerializer=VM0});var tVQ=R((aVQ)=>{Object.defineProperty(aVQ,"__esModule",{value:!0});aVQ.PACKAGE_NAME=aVQ.PACKAGE_VERSION=void 0;aVQ.PACKAGE_VERSION="0.47.1";aVQ.PACKAGE_NAME="@opentelemetry/instrumentation-ioredis"});var CIQ=R((YIQ)=>{Object.defineProperty(YIQ,"__esModule",{value:!0});YIQ.IORedisInstrumentation=void 0;var TF=yA(),pP=NB(),p5=uB(),eVQ=NB(),yL=nVQ(),HM0=hn(),AIQ=tVQ(),QIQ={requireParentSpan:!0};class BIQ extends pP.InstrumentationBase{constructor(A={}){super(AIQ.PACKAGE_NAME,AIQ.PACKAGE_VERSION,Object.assign(Object.assign({},QIQ),A))}setConfig(A={}){super.setConfig(Object.assign(Object.assign({},QIQ),A))}init(){return[new pP.InstrumentationNodeModuleDefinition("ioredis",[">=2.0.0 <6"],(A,Q)=>{let B=A[Symbol.toStringTag]==="Module"?A.default:A;if((0,pP.isWrapped)(B.prototype.sendCommand))this._unwrap(B.prototype,"sendCommand");if(this._wrap(B.prototype,"sendCommand",this._patchSendCommand(Q)),(0,pP.isWrapped)(B.prototype.connect))this._unwrap(B.prototype,"connect");return this._wrap(B.prototype,"connect",this._patchConnection()),A},(A)=>{if(A===void 0)return;let Q=A[Symbol.toStringTag]==="Module"?A.default:A;this._unwrap(Q.prototype,"sendCommand"),this._unwrap(Q.prototype,"connect")})]}_patchSendCommand(A){return(Q)=>{return this._traceSendCommand(Q,A)}}_patchConnection(){return(A)=>{return this._traceConnection(A)}}_traceSendCommand(A,Q){let B=this;return function(Y){if(arguments.length<1||typeof Y!=="object")return A.apply(this,arguments);let J=B.getConfig(),C=J.dbStatementSerializer||HM0.defaultDbStatementSerializer,X=TF.trace.getSpan(TF.context.active())===void 0;if(J.requireParentSpan===!0&&X)return A.apply(this,arguments);let G=B.tracer.startSpan(Y.name,{kind:TF.SpanKind.CLIENT,attributes:{[p5.SEMATTRS_DB_SYSTEM]:p5.DBSYSTEMVALUES_REDIS,[p5.SEMATTRS_DB_STATEMENT]:C(Y.name,Y.args)}}),{requestHook:F}=J;if(F)(0,eVQ.safeExecuteInTheMiddle)(()=>F(G,{moduleVersion:Q,cmdName:Y.name,cmdArgs:Y.args}),(U)=>{if(U)TF.diag.error("ioredis instrumentation: request hook failed",U)},!0);let{host:W,port:Z}=this.options;G.setAttributes({[p5.SEMATTRS_NET_PEER_NAME]:W,[p5.SEMATTRS_NET_PEER_PORT]:Z,[p5.SEMATTRS_DB_CONNECTION_STRING]:`redis://${W}:${Z}`});try{let U=A.apply(this,arguments),$=Y.resolve;Y.resolve=function(K){(0,eVQ.safeExecuteInTheMiddle)(()=>{var I;return(I=J.responseHook)===null||I===void 0?void 0:I.call(J,G,Y.name,Y.args,K)},(I)=>{if(I)TF.diag.error("ioredis instrumentation: response hook failed",I)},!0),(0,yL.endSpan)(G,null),$(K)};let E=Y.reject;return Y.reject=function(K){(0,yL.endSpan)(G,K),E(K)},U}catch(U){throw(0,yL.endSpan)(G,U),U}}}_traceConnection(A){let Q=this;return function(){let B=TF.trace.getSpan(TF.context.active())===void 0;if(Q.getConfig().requireParentSpan===!0&&B)return A.apply(this,arguments);let Y=Q.tracer.startSpan("connect",{kind:TF.SpanKind.CLIENT,attributes:{[p5.SEMATTRS_DB_SYSTEM]:p5.DBSYSTEMVALUES_REDIS,[p5.SEMATTRS_DB_STATEMENT]:"connect"}}),{host:J,port:C}=this.options;Y.setAttributes({[p5.SEMATTRS_NET_PEER_NAME]:J,[p5.SEMATTRS_NET_PEER_PORT]:C,[p5.SEMATTRS_DB_CONNECTION_STRING]:`redis://${J}:${C}`});try{let X=A.apply(this,arguments);return(0,yL.endSpan)(Y,null),X}catch(X){throw(0,yL.endSpan)(Y,X),X}}}}YIQ.IORedisInstrumentation=BIQ});var GIQ=R((XIQ)=>{Object.defineProperty(XIQ,"__esModule",{value:!0})});var WIQ=R((SF)=>{var DM0=SF&&SF.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),FIQ=SF&&SF.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))DM0(Q,A,B)};Object.defineProperty(SF,"__esModule",{value:!0});FIQ(CIQ(),SF);FIQ(GIQ(),SF)});var UIQ=R((ZIQ)=>{Object.defineProperty(ZIQ,"__esModule",{value:!0});ZIQ.getClientAttributes=void 0;var hL=uB();function NM0(A,Q){var B,Y;return{[hL.SEMATTRS_DB_SYSTEM]:hL.DBSYSTEMVALUES_REDIS,[hL.SEMATTRS_NET_PEER_NAME]:(B=Q===null||Q===void 0?void 0:Q.socket)===null||B===void 0?void 0:B.host,[hL.SEMATTRS_NET_PEER_PORT]:(Y=Q===null||Q===void 0?void 0:Q.socket)===null||Y===void 0?void 0:Y.port,[hL.SEMATTRS_DB_CONNECTION_STRING]:LM0(A,Q===null||Q===void 0?void 0:Q.url)}}ZIQ.getClientAttributes=NM0;function LM0(A,Q){if(typeof Q!=="string"||!Q)return;try{let B=new URL(Q);return B.searchParams.delete("user_pwd"),B.username="",B.password="",B.href}catch(B){A.error("failed to sanitize redis connection url",B)}return}});var VIQ=R((EIQ)=>{Object.defineProperty(EIQ,"__esModule",{value:!0});EIQ.PACKAGE_NAME=EIQ.PACKAGE_VERSION=void 0;EIQ.PACKAGE_VERSION="0.46.1";EIQ.PACKAGE_NAME="@opentelemetry/instrumentation-redis-4"});var MIQ=R((LIQ)=>{Object.defineProperty(LIQ,"__esModule",{value:!0});LIQ.RedisInstrumentation=void 0;var i5=yA(),iY=NB(),IIQ=UIQ(),MM0=hn(),HIQ=VIQ(),zM0=uB(),gL=Symbol("opentelemetry.instrumentation.redis.open_spans"),DIQ=Symbol("opentelemetry.instrumentation.redis.multi_command_options"),NIQ={requireParentSpan:!1};class xL extends iY.InstrumentationBase{constructor(A={}){super(HIQ.PACKAGE_NAME,HIQ.PACKAGE_VERSION,Object.assign(Object.assign({},NIQ),A))}setConfig(A={}){super.setConfig(Object.assign(Object.assign({},NIQ),A))}init(){return[this._getInstrumentationNodeModuleDefinition("@redis/client"),this._getInstrumentationNodeModuleDefinition("@node-redis/client")]}_getInstrumentationNodeModuleDefinition(A){let Q=new iY.InstrumentationNodeModuleFile(`${A}/dist/lib/commander.js`,["^1.0.0"],(J,C)=>{let X=J.transformCommandArguments;if(!X)return this._diag.error("internal instrumentation error, missing transformCommandArguments function"),J;let G=(C===null||C===void 0?void 0:C.startsWith("1.0."))?"extendWithCommands":"attachCommands";if((0,iY.isWrapped)(J===null||J===void 0?void 0:J[G]))this._unwrap(J,G);return this._wrap(J,G,this._getPatchExtendWithCommands(X)),J},(J)=>{if((0,iY.isWrapped)(J===null||J===void 0?void 0:J.extendWithCommands))this._unwrap(J,"extendWithCommands");if((0,iY.isWrapped)(J===null||J===void 0?void 0:J.attachCommands))this._unwrap(J,"attachCommands")}),B=new iY.InstrumentationNodeModuleFile(`${A}/dist/lib/client/multi-command.js`,["^1.0.0"],(J)=>{var C;let X=(C=J===null||J===void 0?void 0:J.default)===null||C===void 0?void 0:C.prototype;if((0,iY.isWrapped)(X===null||X===void 0?void 0:X.exec))this._unwrap(X,"exec");if(this._wrap(X,"exec",this._getPatchMultiCommandsExec()),(0,iY.isWrapped)(X===null||X===void 0?void 0:X.addCommand))this._unwrap(X,"addCommand");return this._wrap(X,"addCommand",this._getPatchMultiCommandsAddCommand()),J},(J)=>{var C;let X=(C=J===null||J===void 0?void 0:J.default)===null||C===void 0?void 0:C.prototype;if((0,iY.isWrapped)(X===null||X===void 0?void 0:X.exec))this._unwrap(X,"exec");if((0,iY.isWrapped)(X===null||X===void 0?void 0:X.addCommand))this._unwrap(X,"addCommand")}),Y=new iY.InstrumentationNodeModuleFile(`${A}/dist/lib/client/index.js`,["^1.0.0"],(J)=>{var C;let X=(C=J===null||J===void 0?void 0:J.default)===null||C===void 0?void 0:C.prototype;if(X===null||X===void 0?void 0:X.multi){if((0,iY.isWrapped)(X===null||X===void 0?void 0:X.multi))this._unwrap(X,"multi");this._wrap(X,"multi",this._getPatchRedisClientMulti())}if(X===null||X===void 0?void 0:X.MULTI){if((0,iY.isWrapped)(X===null||X===void 0?void 0:X.MULTI))this._unwrap(X,"MULTI");this._wrap(X,"MULTI",this._getPatchRedisClientMulti())}if((0,iY.isWrapped)(X===null||X===void 0?void 0:X.sendCommand))this._unwrap(X,"sendCommand");return this._wrap(X,"sendCommand",this._getPatchRedisClientSendCommand()),this._wrap(X,"connect",this._getPatchedClientConnect()),J},(J)=>{var C;let X=(C=J===null||J===void 0?void 0:J.default)===null||C===void 0?void 0:C.prototype;if((0,iY.isWrapped)(X===null||X===void 0?void 0:X.multi))this._unwrap(X,"multi");if((0,iY.isWrapped)(X===null||X===void 0?void 0:X.MULTI))this._unwrap(X,"MULTI");if((0,iY.isWrapped)(X===null||X===void 0?void 0:X.sendCommand))this._unwrap(X,"sendCommand")});return new iY.InstrumentationNodeModuleDefinition(A,["^1.0.0"],(J)=>{return J},()=>{},[Q,B,Y])}_getPatchExtendWithCommands(A){let Q=this;return function(Y){return function(C){var X;if(((X=C===null||C===void 0?void 0:C.BaseClass)===null||X===void 0?void 0:X.name)!=="RedisClient")return Y.apply(this,arguments);let G=C.executor;return C.executor=function(F,W){let Z=A(F,W).args;return Q._traceClientCommand(G,this,arguments,Z)},Y.apply(this,arguments)}}}_getPatchMultiCommandsExec(){let A=this;return function(B){return function(){let J=B.apply(this,arguments);if(typeof(J===null||J===void 0?void 0:J.then)!=="function")return A._diag.error("got non promise result when patching RedisClientMultiCommand.exec"),J;return J.then((C)=>{let X=this[gL];return A._endSpansWithRedisReplies(X,C),C}).catch((C)=>{let X=this[gL];if(!X)A._diag.error("cannot find open spans to end for redis multi command");else{let G=C.constructor.name==="MultiErrorReply"?C.replies:Array(X.length).fill(C);A._endSpansWithRedisReplies(X,G)}return Promise.reject(C)})}}}_getPatchMultiCommandsAddCommand(){let A=this;return function(B){return function(J){return A._traceClientCommand(B,this,arguments,J)}}}_getPatchRedisClientMulti(){return function(Q){return function(){let Y=Q.apply(this,arguments);return Y[DIQ]=this.options,Y}}}_getPatchRedisClientSendCommand(){let A=this;return function(B){return function(J){return A._traceClientCommand(B,this,arguments,J)}}}_getPatchedClientConnect(){let A=this;return function(B){return function(){let J=this.options,C=(0,IIQ.getClientAttributes)(A._diag,J),X=A.tracer.startSpan(`${xL.COMPONENT}-connect`,{kind:i5.SpanKind.CLIENT,attributes:C});return i5.context.with(i5.trace.setSpan(i5.context.active(),X),()=>{return B.apply(this)}).then((F)=>{return X.end(),F}).catch((F)=>{return X.recordException(F),X.setStatus({code:i5.SpanStatusCode.ERROR,message:F.message}),X.end(),Promise.reject(F)})}}}_traceClientCommand(A,Q,B,Y){if(i5.trace.getSpan(i5.context.active())===void 0&&this.getConfig().requireParentSpan)return A.apply(Q,B);let C=Q.options||Q[DIQ],X=Y[0],G=Y.slice(1),F=this.getConfig().dbStatementSerializer||MM0.defaultDbStatementSerializer,W=(0,IIQ.getClientAttributes)(this._diag,C);try{let $=F(X,G);if($!=null)W[zM0.SEMATTRS_DB_STATEMENT]=$}catch($){this._diag.error("dbStatementSerializer throw an exception",$,{commandName:X})}let Z=this.tracer.startSpan(`${xL.COMPONENT}-${X}`,{kind:i5.SpanKind.CLIENT,attributes:W}),U=i5.context.with(i5.trace.setSpan(i5.context.active(),Z),()=>{return A.apply(Q,B)});if(typeof(U===null||U===void 0?void 0:U.then)==="function")U.then(($)=>{this._endSpanWithResponse(Z,X,G,$,void 0)},($)=>{this._endSpanWithResponse(Z,X,G,null,$)});else{let $=U;$[gL]=$[gL]||[],$[gL].push({span:Z,commandName:X,commandArgs:G})}return U}_endSpansWithRedisReplies(A,Q){if(!A)return this._diag.error("cannot find open spans to end for redis multi command");if(Q.length!==A.length)return this._diag.error("number of multi command spans does not match response from redis");for(let B=0;B{Object.defineProperty(zIQ,"__esModule",{value:!0})});var jIQ=R((kF)=>{var RM0=kF&&kF.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),wIQ=kF&&kF.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))RM0(Q,A,B)};Object.defineProperty(kF,"__esModule",{value:!0});wIQ(MIQ(),kF);wIQ(RIQ(),kF)});var xIQ=R((hIQ)=>{Object.defineProperty(hIQ,"__esModule",{value:!0});hIQ.EVENT_LISTENERS_SET=void 0;hIQ.EVENT_LISTENERS_SET=Symbol("opentelemetry.instrumentation.pg.eventListenersSet")});var un=R((fIQ)=>{Object.defineProperty(fIQ,"__esModule",{value:!0});fIQ.AttributeNames=void 0;var kM0;(function(A){A.PG_VALUES="db.postgresql.values",A.PG_PLAN="db.postgresql.plan",A.IDLE_TIMEOUT_MILLIS="db.postgresql.idle.timeout.millis",A.MAX_CLIENT="db.postgresql.max.client"})(kM0=fIQ.AttributeNames||(fIQ.AttributeNames={}))});var dn=R((bIQ)=>{Object.defineProperty(bIQ,"__esModule",{value:!0});bIQ.METRIC_DB_CLIENT_OPERATION_DURATION=bIQ.METRIC_DB_CLIENT_CONNECTION_PENDING_REQUESTS=bIQ.METRIC_DB_CLIENT_CONNECTION_COUNT=bIQ.DB_CLIENT_CONNECTION_STATE_VALUE_IDLE=bIQ.DB_CLIENT_CONNECTION_STATE_VALUE_USED=bIQ.ATTR_DB_OPERATION_NAME=bIQ.ATTR_DB_NAMESPACE=bIQ.ATTR_DB_CLIENT_CONNECTION_STATE=bIQ.ATTR_DB_CLIENT_CONNECTION_POOL_NAME=void 0;bIQ.ATTR_DB_CLIENT_CONNECTION_POOL_NAME="db.client.connection.pool.name";bIQ.ATTR_DB_CLIENT_CONNECTION_STATE="db.client.connection.state";bIQ.ATTR_DB_NAMESPACE="db.namespace";bIQ.ATTR_DB_OPERATION_NAME="db.operation.name";bIQ.DB_CLIENT_CONNECTION_STATE_VALUE_USED="used";bIQ.DB_CLIENT_CONNECTION_STATE_VALUE_IDLE="idle";bIQ.METRIC_DB_CLIENT_CONNECTION_COUNT="db.client.connection.count";bIQ.METRIC_DB_CLIENT_CONNECTION_PENDING_REQUESTS="db.client.connection.pending_requests";bIQ.METRIC_DB_CLIENT_OPERATION_DURATION="db.client.operation.duration"});var ln=R((uIQ)=>{Object.defineProperty(uIQ,"__esModule",{value:!0});uIQ.SpanNames=void 0;var mM0;(function(A){A.QUERY_PREFIX="pg.query",A.CONNECT="pg.connect",A.POOL_CONNECT="pg-pool.connect"})(mM0=uIQ.SpanNames||(uIQ.SpanNames={}))});var aIQ=R((sIQ)=>{Object.defineProperty(sIQ,"__esModule",{value:!0});sIQ.isObjectWithTextString=sIQ.getErrorMessage=sIQ.patchClientConnectCallback=sIQ.patchCallbackPGPool=sIQ.updateCounter=sIQ.getPoolName=sIQ.patchCallback=sIQ.handleExecutionResult=sIQ.handleConfigQuery=sIQ.shouldSkipInstrumentation=sIQ.getSemanticAttributesFromPool=sIQ.getSemanticAttributesFromConnection=sIQ.getConnectionString=sIQ.parseNormalizedOperationName=sIQ.getQuerySpanName=void 0;var _F=yA(),nP=un(),_J=uB(),L$=dn(),uM0=NB(),dIQ=ln();function cIQ(A,Q){if(!Q)return dIQ.SpanNames.QUERY_PREFIX;let B=typeof Q.name==="string"&&Q.name?Q.name:lIQ(Q.text);return`${dIQ.SpanNames.QUERY_PREFIX}:${B}${A?` ${A}`:""}`}sIQ.getQuerySpanName=cIQ;function lIQ(A){let Q=A.indexOf(" "),B=Q===-1?A:A.slice(0,Q);return B=B.toUpperCase(),B.endsWith(";")?B.slice(0,-1):B}sIQ.parseNormalizedOperationName=lIQ;function pn(A){let Q=A.host||"localhost",B=A.port||5432,Y=A.database||"";return`postgresql://${Q}:${B}/${Y}`}sIQ.getConnectionString=pn;function pIQ(A){if(Number.isInteger(A))return A;return}function iIQ(A){return{[_J.SEMATTRS_DB_SYSTEM]:_J.DBSYSTEMVALUES_POSTGRESQL,[_J.SEMATTRS_DB_NAME]:A.database,[_J.SEMATTRS_DB_CONNECTION_STRING]:pn(A),[_J.SEMATTRS_NET_PEER_NAME]:A.host,[_J.SEMATTRS_NET_PEER_PORT]:pIQ(A.port),[_J.SEMATTRS_DB_USER]:A.user}}sIQ.getSemanticAttributesFromConnection=iIQ;function dM0(A){return{[_J.SEMATTRS_DB_SYSTEM]:_J.DBSYSTEMVALUES_POSTGRESQL,[_J.SEMATTRS_DB_NAME]:A.database,[_J.SEMATTRS_DB_CONNECTION_STRING]:pn(A),[_J.SEMATTRS_NET_PEER_NAME]:A.host,[_J.SEMATTRS_NET_PEER_PORT]:pIQ(A.port),[_J.SEMATTRS_DB_USER]:A.user,[nP.AttributeNames.IDLE_TIMEOUT_MILLIS]:A.idleTimeoutMillis,[nP.AttributeNames.MAX_CLIENT]:A.maxClient}}sIQ.getSemanticAttributesFromPool=dM0;function cM0(A){return A.requireParentSpan===!0&&_F.trace.getSpan(_F.context.active())===void 0}sIQ.shouldSkipInstrumentation=cM0;function lM0(A,Q,B){let{connectionParameters:Y}=this,J=Y.database,C=cIQ(J,B),X=A.startSpan(C,{kind:_F.SpanKind.CLIENT,attributes:iIQ(Y)});if(!B)return X;if(B.text)X.setAttribute(_J.SEMATTRS_DB_STATEMENT,B.text);if(Q.enhancedDatabaseReporting&&Array.isArray(B.values))try{let G=B.values.map((F)=>{if(F==null)return"null";else if(F instanceof Buffer)return F.toString();else if(typeof F==="object"){if(typeof F.toPostgres==="function")return F.toPostgres();return JSON.stringify(F)}else return F.toString()});X.setAttribute(nP.AttributeNames.PG_VALUES,G)}catch(G){_F.diag.error("failed to stringify ",B.values,G)}if(typeof B.name==="string")X.setAttribute(nP.AttributeNames.PG_PLAN,B.name);return X}sIQ.handleConfigQuery=lM0;function nIQ(A,Q,B){if(typeof A.responseHook==="function")(0,uM0.safeExecuteInTheMiddle)(()=>{A.responseHook(Q,{data:B})},(Y)=>{if(Y)_F.diag.error("Error running response hook",Y)},!0)}sIQ.handleExecutionResult=nIQ;function pM0(A,Q,B,Y,J){return function(X,G){if(X){if(Object.prototype.hasOwnProperty.call(X,"code"))Y[_J.ATTR_ERROR_TYPE]=X.code;Q.setStatus({code:_F.SpanStatusCode.ERROR,message:X.message})}else nIQ(A,Q,G);J(),Q.end(),B.call(this,X,G)}}sIQ.patchCallback=pM0;function iM0(A){let Q="";return Q+=((A===null||A===void 0?void 0:A.host)?`${A.host}`:"unknown_host")+":",Q+=((A===null||A===void 0?void 0:A.port)?`${A.port}`:"unknown_port")+"/",Q+=(A===null||A===void 0?void 0:A.database)?`${A.database}`:"unknown_database",Q.trim()}sIQ.getPoolName=iM0;function nM0(A,Q,B,Y,J){let{totalCount:C,waitingCount:X,idleCount:G}=Q,F=C-G;return B.add(F-J.used,{[L$.ATTR_DB_CLIENT_CONNECTION_STATE]:L$.DB_CLIENT_CONNECTION_STATE_VALUE_USED,[L$.ATTR_DB_CLIENT_CONNECTION_POOL_NAME]:A}),B.add(G-J.idle,{[L$.ATTR_DB_CLIENT_CONNECTION_STATE]:L$.DB_CLIENT_CONNECTION_STATE_VALUE_IDLE,[L$.ATTR_DB_CLIENT_CONNECTION_POOL_NAME]:A}),Y.add(X-J.pending,{[L$.ATTR_DB_CLIENT_CONNECTION_POOL_NAME]:A}),{used:F,idle:G,pending:X}}sIQ.updateCounter=nM0;function sM0(A,Q){return function(Y,J,C){if(Y)A.setStatus({code:_F.SpanStatusCode.ERROR,message:Y.message});A.end(),Q.call(this,Y,J,C)}}sIQ.patchCallbackPGPool=sM0;function rM0(A,Q){return function(Y){if(Y)A.setStatus({code:_F.SpanStatusCode.ERROR,message:Y.message});A.end(),Q.apply(this,arguments)}}sIQ.patchClientConnectCallback=rM0;function aM0(A){return typeof A==="object"&&A!==null&&"message"in A?String(A.message):void 0}sIQ.getErrorMessage=aM0;function oM0(A){var Q;return typeof A==="object"&&typeof((Q=A)===null||Q===void 0?void 0:Q.text)==="string"}sIQ.isObjectWithTextString=oM0});var eIQ=R((oIQ)=>{Object.defineProperty(oIQ,"__esModule",{value:!0});oIQ.PACKAGE_NAME=oIQ.PACKAGE_VERSION=void 0;oIQ.PACKAGE_VERSION="0.51.1";oIQ.PACKAGE_NAME="@opentelemetry/instrumentation-pg"});var FHQ=R((XHQ)=>{Object.defineProperty(XHQ,"__esModule",{value:!0});XHQ.PgInstrumentation=void 0;var n5=NB(),sB=yA(),AHQ=xIQ(),LY=aIQ(),QHQ=kn(),BHQ=eIQ(),YHQ=ln(),sP=MB(),vF=uB(),q$=dn();function rP(A){return A[Symbol.toStringTag]==="Module"?A.default:A}class CHQ extends n5.InstrumentationBase{constructor(A={}){super(BHQ.PACKAGE_NAME,BHQ.PACKAGE_VERSION,A);this._connectionsCounter={used:0,idle:0,pending:0}}_updateMetricInstruments(){this._operationDuration=this.meter.createHistogram(q$.METRIC_DB_CLIENT_OPERATION_DURATION,{description:"Duration of database client operations.",unit:"s",valueType:sB.ValueType.DOUBLE,advice:{explicitBucketBoundaries:[0.001,0.005,0.01,0.05,0.1,0.5,1,5,10]}}),this._connectionsCounter={idle:0,pending:0,used:0},this._connectionsCount=this.meter.createUpDownCounter(q$.METRIC_DB_CLIENT_CONNECTION_COUNT,{description:"The number of connections that are currently in state described by the state attribute.",unit:"{connection}"}),this._connectionPendingRequests=this.meter.createUpDownCounter(q$.METRIC_DB_CLIENT_CONNECTION_PENDING_REQUESTS,{description:"The number of current pending requests for an open connection.",unit:"{connection}"})}init(){let A=[">=8.0.3 <9"],Q=new n5.InstrumentationNodeModuleFile("pg/lib/native/client.js",A,this._patchPgClient.bind(this),this._unpatchPgClient.bind(this)),B=new n5.InstrumentationNodeModuleFile("pg/lib/client.js",A,this._patchPgClient.bind(this),this._unpatchPgClient.bind(this)),Y=new n5.InstrumentationNodeModuleDefinition("pg",A,(C)=>{let X=rP(C);return this._patchPgClient(X.Client),C},(C)=>{let X=rP(C);return this._unpatchPgClient(X.Client),C},[B,Q]),J=new n5.InstrumentationNodeModuleDefinition("pg-pool",[">=2.0.0 <4"],(C)=>{if((0,n5.isWrapped)(C.prototype.connect))this._unwrap(C.prototype,"connect");return this._wrap(C.prototype,"connect",this._getPoolConnectPatch()),C},(C)=>{if((0,n5.isWrapped)(C.prototype.connect))this._unwrap(C.prototype,"connect")});return[Y,J]}_patchPgClient(A){if(!A)return;let Q=rP(A);if((0,n5.isWrapped)(Q.prototype.query))this._unwrap(Q.prototype,"query");if((0,n5.isWrapped)(Q.prototype.connect))this._unwrap(Q.prototype,"connect");return this._wrap(Q.prototype,"query",this._getClientQueryPatch()),this._wrap(Q.prototype,"connect",this._getClientConnectPatch()),A}_unpatchPgClient(A){let Q=rP(A);if((0,n5.isWrapped)(Q.prototype.query))this._unwrap(Q.prototype,"query");if((0,n5.isWrapped)(Q.prototype.connect))this._unwrap(Q.prototype,"connect");return A}_getClientConnectPatch(){let A=this;return(Q)=>{return function(Y){if(LY.shouldSkipInstrumentation(A.getConfig()))return Q.call(this,Y);let J=A.tracer.startSpan(YHQ.SpanNames.CONNECT,{kind:sB.SpanKind.CLIENT,attributes:LY.getSemanticAttributesFromConnection(this)});if(Y){let X=sB.trace.getSpan(sB.context.active());if(Y=LY.patchClientConnectCallback(J,Y),X)Y=sB.context.bind(sB.context.active(),Y)}let C=sB.context.with(sB.trace.setSpan(sB.context.active(),J),()=>{return Q.call(this,Y)});return JHQ(J,C)}}}recordOperationDuration(A,Q){let B={};[vF.SEMATTRS_DB_SYSTEM,q$.ATTR_DB_NAMESPACE,vF.ATTR_ERROR_TYPE,vF.ATTR_SERVER_PORT,vF.ATTR_SERVER_ADDRESS,q$.ATTR_DB_OPERATION_NAME].forEach((C)=>{if(C in A)B[C]=A[C]});let J=(0,sP.hrTimeToMilliseconds)((0,sP.hrTimeDuration)(Q,(0,sP.hrTime)()))/1000;this._operationDuration.record(J,B)}_getClientQueryPatch(){let A=this;return(Q)=>{return this._diag.debug("Patching pg.Client.prototype.query"),function(...Y){if(LY.shouldSkipInstrumentation(A.getConfig()))return Q.apply(this,Y);let J=(0,sP.hrTime)(),C=Y[0],X=typeof C==="string",G=LY.isObjectWithTextString(C),F=X?{text:C,values:Array.isArray(Y[1])?Y[1]:void 0}:G?C:void 0,W={[vF.SEMATTRS_DB_SYSTEM]:vF.DBSYSTEMVALUES_POSTGRESQL,[q$.ATTR_DB_NAMESPACE]:this.database,[vF.ATTR_SERVER_PORT]:this.connectionParameters.port,[vF.ATTR_SERVER_ADDRESS]:this.connectionParameters.host};if(F===null||F===void 0?void 0:F.text)W[q$.ATTR_DB_OPERATION_NAME]=LY.parseNormalizedOperationName(F===null||F===void 0?void 0:F.text);let Z=()=>{A.recordOperationDuration(W,J)},U=A.getConfig(),$=LY.handleConfigQuery.call(this,A.tracer,U,F);if(U.addSqlCommenterCommentToQueries){if(X)Y[0]=(0,QHQ.addSqlCommenterComment)($,C);else if(G&&!("name"in C))Y[0]=Object.assign(Object.assign({},C),{text:(0,QHQ.addSqlCommenterComment)($,C.text)})}if(Y.length>0){let I=sB.trace.getSpan(sB.context.active());if(typeof Y[Y.length-1]==="function"){if(Y[Y.length-1]=LY.patchCallback(U,$,Y[Y.length-1],W,Z),I)Y[Y.length-1]=sB.context.bind(sB.context.active(),Y[Y.length-1])}else if(typeof(F===null||F===void 0?void 0:F.callback)==="function"){let V=LY.patchCallback(A.getConfig(),$,F.callback,W,Z);if(I)V=sB.context.bind(sB.context.active(),V);Y[0].callback=V}}let{requestHook:E}=U;if(typeof E==="function"&&F)(0,n5.safeExecuteInTheMiddle)(()=>{let{database:I,host:V,port:H,user:D}=this.connectionParameters;E($,{connection:{database:I,host:V,port:H,user:D},query:{text:F.text,values:F.values,name:F.name}})},(I)=>{if(I)A._diag.error("Error running query hook",I)},!0);let K;try{K=Q.apply(this,Y)}catch(I){throw $.setStatus({code:sB.SpanStatusCode.ERROR,message:LY.getErrorMessage(I)}),$.end(),I}if(K instanceof Promise)return K.then((I)=>{return new Promise((V)=>{LY.handleExecutionResult(A.getConfig(),$,I),Z(),$.end(),V(I)})}).catch((I)=>{return new Promise((V,H)=>{$.setStatus({code:sB.SpanStatusCode.ERROR,message:I.message}),Z(),$.end(),H(I)})});return K}}}_setPoolConnectEventListeners(A){if(A[AHQ.EVENT_LISTENERS_SET])return;let Q=LY.getPoolName(A.options);A.on("connect",()=>{this._connectionsCounter=LY.updateCounter(Q,A,this._connectionsCount,this._connectionPendingRequests,this._connectionsCounter)}),A.on("acquire",()=>{this._connectionsCounter=LY.updateCounter(Q,A,this._connectionsCount,this._connectionPendingRequests,this._connectionsCounter)}),A.on("remove",()=>{this._connectionsCounter=LY.updateCounter(Q,A,this._connectionsCount,this._connectionPendingRequests,this._connectionsCounter)}),A.on("release",()=>{this._connectionsCounter=LY.updateCounter(Q,A,this._connectionsCount,this._connectionPendingRequests,this._connectionsCounter)}),A[AHQ.EVENT_LISTENERS_SET]=!0}_getPoolConnectPatch(){let A=this;return(Q)=>{return function(Y){if(LY.shouldSkipInstrumentation(A.getConfig()))return Q.call(this,Y);let J=A.tracer.startSpan(YHQ.SpanNames.POOL_CONNECT,{kind:sB.SpanKind.CLIENT,attributes:LY.getSemanticAttributesFromPool(this.options)});if(A._setPoolConnectEventListeners(this),Y){let X=sB.trace.getSpan(sB.context.active());if(Y=LY.patchCallbackPGPool(J,Y),X)Y=sB.context.bind(sB.context.active(),Y)}let C=sB.context.with(sB.trace.setSpan(sB.context.active(),J),()=>{return Q.call(this,Y)});return JHQ(J,C)}}}}XHQ.PgInstrumentation=CHQ;function JHQ(A,Q){if(!(Q instanceof Promise))return Q;let B=Q;return sB.context.bind(sB.context.active(),B.then((Y)=>{return A.end(),Y}).catch((Y)=>{return A.setStatus({code:sB.SpanStatusCode.ERROR,message:LY.getErrorMessage(Y)}),A.end(),Promise.reject(Y)}))}});var ZHQ=R((WHQ)=>{Object.defineProperty(WHQ,"__esModule",{value:!0})});var $HQ=R((IG)=>{var Ez0=IG&&IG.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),nn=IG&&IG.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))Ez0(Q,A,B)};Object.defineProperty(IG,"__esModule",{value:!0});nn(FHQ(),IG);nn(ZHQ(),IG);nn(un(),IG)});var jHQ=R((RHQ)=>{Object.defineProperty(RHQ,"__esModule",{value:!0});RHQ.PACKAGE_NAME=RHQ.PACKAGE_VERSION=void 0;RHQ.PACKAGE_VERSION="0.45.2";RHQ.PACKAGE_NAME="@opentelemetry/instrumentation-hapi"});var on=R((OHQ)=>{Object.defineProperty(OHQ,"__esModule",{value:!0});OHQ.HapiLifecycleMethodNames=OHQ.HapiLayerType=OHQ.handlerPatched=OHQ.HapiComponentName=void 0;OHQ.HapiComponentName="@hapi/hapi";OHQ.handlerPatched=Symbol("hapi-handler-patched");OHQ.HapiLayerType={ROUTER:"router",PLUGIN:"plugin",EXT:"server.ext"};OHQ.HapiLifecycleMethodNames=new Set(["onPreAuth","onCredentials","onPostAuth","onPreHandler","onPostHandler","onPreResponse","onRequest"])});var en=R((THQ)=>{Object.defineProperty(THQ,"__esModule",{value:!0});THQ.AttributeNames=void 0;var Tz0;(function(A){A.HAPI_TYPE="hapi.type",A.PLUGIN_NAME="hapi.plugin.name",A.EXT_TYPE="server.ext.type"})(Tz0=THQ.AttributeNames||(THQ.AttributeNames={}))});var _HQ=R((SHQ)=>{Object.defineProperty(SHQ,"__esModule",{value:!0});SHQ.getPluginFromInput=SHQ.getExtMetadata=SHQ.getRouteMetadata=SHQ.isPatchableExtMethod=SHQ.isDirectExtInput=SHQ.isLifecycleExtEventObj=SHQ.isLifecycleExtType=SHQ.getPluginName=void 0;var eP=uB(),bL=on(),hF=en();function Sz0(A){if(A.name)return A.name;else return A.pkg.name}SHQ.getPluginName=Sz0;var kz0=(A)=>{return typeof A==="string"&&bL.HapiLifecycleMethodNames.has(A)};SHQ.isLifecycleExtType=kz0;var _z0=(A)=>{var Q;let B=(Q=A)===null||Q===void 0?void 0:Q.type;return B!==void 0&&SHQ.isLifecycleExtType(B)};SHQ.isLifecycleExtEventObj=_z0;var vz0=(A)=>{return Array.isArray(A)&&A.length<=3&&SHQ.isLifecycleExtType(A[0])&&typeof A[1]==="function"};SHQ.isDirectExtInput=vz0;var yz0=(A)=>{return!Array.isArray(A)};SHQ.isPatchableExtMethod=yz0;var hz0=(A,Q)=>{if(Q)return{attributes:{[eP.SEMATTRS_HTTP_ROUTE]:A.path,[eP.SEMATTRS_HTTP_METHOD]:A.method,[hF.AttributeNames.HAPI_TYPE]:bL.HapiLayerType.PLUGIN,[hF.AttributeNames.PLUGIN_NAME]:Q},name:`${Q}: route - ${A.path}`};return{attributes:{[eP.SEMATTRS_HTTP_ROUTE]:A.path,[eP.SEMATTRS_HTTP_METHOD]:A.method,[hF.AttributeNames.HAPI_TYPE]:bL.HapiLayerType.ROUTER},name:`route - ${A.path}`}};SHQ.getRouteMetadata=hz0;var gz0=(A,Q)=>{if(Q)return{attributes:{[hF.AttributeNames.EXT_TYPE]:A,[hF.AttributeNames.HAPI_TYPE]:bL.HapiLayerType.EXT,[hF.AttributeNames.PLUGIN_NAME]:Q},name:`${Q}: ext - ${A}`};return{attributes:{[hF.AttributeNames.EXT_TYPE]:A,[hF.AttributeNames.HAPI_TYPE]:bL.HapiLayerType.EXT},name:`ext - ${A}`}};SHQ.getExtMetadata=gz0;var xz0=(A)=>{if("plugin"in A){if("plugin"in A.plugin)return A.plugin.plugin;return A.plugin}return A};SHQ.getPluginFromInput=xz0});var fHQ=R((gHQ)=>{Object.defineProperty(gHQ,"__esModule",{value:!0});gHQ.HapiInstrumentation=void 0;var h8=yA(),vHQ=MB(),AT=NB(),yHQ=jHQ(),mL=on(),HG=_HQ();class hHQ extends AT.InstrumentationBase{constructor(A={}){super(yHQ.PACKAGE_NAME,yHQ.PACKAGE_VERSION,A)}init(){return new AT.InstrumentationNodeModuleDefinition(mL.HapiComponentName,[">=17.0.0 <22"],(A)=>{let Q=A[Symbol.toStringTag]==="Module"?A.default:A;if(!(0,AT.isWrapped)(Q.server))this._wrap(Q,"server",this._getServerPatch.bind(this));if(!(0,AT.isWrapped)(Q.Server))this._wrap(Q,"Server",this._getServerPatch.bind(this));return Q},(A)=>{let Q=A[Symbol.toStringTag]==="Module"?A.default:A;this._massUnwrap([Q],["server","Server"])})}_getServerPatch(A){let Q=this,B=this;return function(J){let C=A.apply(this,[J]);return B._wrap(C,"route",(X)=>{return Q._getServerRoutePatch.bind(Q)(X)}),B._wrap(C,"ext",(X)=>{return Q._getServerExtPatch.bind(Q)(X)}),B._wrap(C,"register",Q._getServerRegisterPatch.bind(Q)),C}}_getServerRegisterPatch(A){let Q=this;return function(Y,J){if(Array.isArray(Y))for(let C of Y){let X=(0,HG.getPluginFromInput)(C);Q._wrapRegisterHandler(X)}else{let C=(0,HG.getPluginFromInput)(Y);Q._wrapRegisterHandler(C)}return A.apply(this,[Y,J])}}_getServerExtPatch(A,Q){let B=this;return function(...J){if(Array.isArray(J[0])){let C=J[0];for(let X=0;X{return Q._getServerRoutePatch.bind(Q)(F,B)}),J._wrap(X,"ext",(F)=>{return Q._getServerExtPatch.bind(Q)(F,B)}),Y.call(this,X,G)};A.register=C}_wrapExtMethods(A,Q,B){let Y=this;if(A instanceof Array){for(let J=0;J{return async function(...X){if(h8.trace.getSpan(h8.context.active())===void 0)return await C.call(this,...X);let G=(0,vHQ.getRPCMetadata)(h8.context.active());if((G===null||G===void 0?void 0:G.type)===vHQ.RPCType.HTTP)G.route=A.path;let F=(0,HG.getRouteMetadata)(A,Q),W=Y.tracer.startSpan(F.name,{attributes:F.attributes});try{return await h8.context.with(h8.trace.setSpan(h8.context.active(),W),()=>C.call(this,...X))}catch(Z){throw W.recordException(Z),W.setStatus({code:h8.SpanStatusCode.ERROR,message:Z.message}),Z}finally{W.end()}}};if(typeof A.handler==="function")A.handler=J(A.handler);else if(typeof A.options==="function"){let C=A.options;A.options=function(X){let G=C(X);if(typeof G.handler==="function")G.handler=J(G.handler);return G}}else if(typeof((B=A.options)===null||B===void 0?void 0:B.handler)==="function")A.options.handler=J(A.options.handler);return A}}gHQ.HapiInstrumentation=hHQ});var mHQ=R((gF)=>{var lz0=gF&&gF.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),bHQ=gF&&gF.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))lz0(Q,A,B)};Object.defineProperty(gF,"__esModule",{value:!0});bHQ(fHQ(),gF);bHQ(en(),gF)});var YT=R((lHQ)=>{Object.defineProperty(lHQ,"__esModule",{value:!0});lHQ.KoaLayerType=void 0;var az0;(function(A){A.ROUTER="router",A.MIDDLEWARE="middleware"})(az0=lHQ.KoaLayerType||(lHQ.KoaLayerType={}))});var nHQ=R((pHQ)=>{Object.defineProperty(pHQ,"__esModule",{value:!0});pHQ.PACKAGE_NAME=pHQ.PACKAGE_VERSION=void 0;pHQ.PACKAGE_VERSION="0.47.1";pHQ.PACKAGE_NAME="@opentelemetry/instrumentation-koa"});var Ys=R((sHQ)=>{Object.defineProperty(sHQ,"__esModule",{value:!0});sHQ.AttributeNames=void 0;var tz0;(function(A){A.KOA_TYPE="koa.type",A.KOA_NAME="koa.name"})(tz0=sHQ.AttributeNames||(sHQ.AttributeNames={}))});var tHQ=R((aHQ)=>{Object.defineProperty(aHQ,"__esModule",{value:!0});aHQ.isLayerIgnored=aHQ.getMiddlewareMetadata=void 0;var rHQ=YT(),JT=Ys(),ez0=uB(),A20=(A,Q,B,Y)=>{var J;if(B)return{attributes:{[JT.AttributeNames.KOA_NAME]:Y===null||Y===void 0?void 0:Y.toString(),[JT.AttributeNames.KOA_TYPE]:rHQ.KoaLayerType.ROUTER,[ez0.SEMATTRS_HTTP_ROUTE]:Y===null||Y===void 0?void 0:Y.toString()},name:A._matchedRouteName||`router - ${Y}`};else return{attributes:{[JT.AttributeNames.KOA_NAME]:(J=Q.name)!==null&&J!==void 0?J:"middleware",[JT.AttributeNames.KOA_TYPE]:rHQ.KoaLayerType.MIDDLEWARE},name:`middleware - ${Q.name}`}};aHQ.getMiddlewareMetadata=A20;var Q20=(A,Q)=>{var B;return!!(Array.isArray(Q===null||Q===void 0?void 0:Q.ignoreLayersType)&&((B=Q===null||Q===void 0?void 0:Q.ignoreLayersType)===null||B===void 0?void 0:B.includes(A)))};aHQ.isLayerIgnored=Q20});var QDQ=R((eHQ)=>{Object.defineProperty(eHQ,"__esModule",{value:!0});eHQ.kLayerPatched=void 0;eHQ.kLayerPatched=Symbol("koa-layer-patched")});var ZDQ=R((FDQ)=>{Object.defineProperty(FDQ,"__esModule",{value:!0});FDQ.KoaInstrumentation=void 0;var U6=yA(),uL=NB(),BDQ=YT(),YDQ=nHQ(),JDQ=tHQ(),CDQ=MB(),XDQ=QDQ();class GDQ extends uL.InstrumentationBase{constructor(A={}){super(YDQ.PACKAGE_NAME,YDQ.PACKAGE_VERSION,A)}init(){return new uL.InstrumentationNodeModuleDefinition("koa",[">=2.0.0 <3"],(A)=>{let Q=A[Symbol.toStringTag]==="Module"?A.default:A;if(Q==null)return Q;if((0,uL.isWrapped)(Q.prototype.use))this._unwrap(Q.prototype,"use");return this._wrap(Q.prototype,"use",this._getKoaUsePatch.bind(this)),A},(A)=>{let Q=A[Symbol.toStringTag]==="Module"?A.default:A;if((0,uL.isWrapped)(Q.prototype.use))this._unwrap(Q.prototype,"use")})}_getKoaUsePatch(A){let Q=this;return function(Y){let J;if(Y.router)J=Q._patchRouterDispatch(Y);else J=Q._patchLayer(Y,!1);return A.apply(this,[J])}}_patchRouterDispatch(A){var Q;U6.diag.debug("Patching @koa/router dispatch");let B=A.router,Y=(Q=B===null||B===void 0?void 0:B.stack)!==null&&Q!==void 0?Q:[];for(let J of Y){let{path:C,stack:X}=J;for(let G=0;G{if(U6.trace.getSpan(U6.context.active())===void 0)return A(J,C);let G=(0,JDQ.getMiddlewareMetadata)(J,A,Q,B),F=this.tracer.startSpan(G.name,{attributes:G.attributes}),W=(0,CDQ.getRPCMetadata)(U6.context.active());if((W===null||W===void 0?void 0:W.type)===CDQ.RPCType.HTTP&&J._matchedRoute)W.route=J._matchedRoute.toString();let{requestHook:Z}=this.getConfig();if(Z)(0,uL.safeExecuteInTheMiddle)(()=>Z(F,{context:J,middlewareLayer:A,layerType:Y}),($)=>{if($)U6.diag.error("koa instrumentation: request hook failed",$)},!0);let U=U6.trace.setSpan(U6.context.active(),F);return U6.context.with(U,async()=>{try{return await A(J,C)}catch($){throw F.recordException($),$}finally{F.end()}})}}}FDQ.KoaInstrumentation=GDQ});var $DQ=R((DG)=>{var Y20=DG&&DG.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),Js=DG&&DG.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))Y20(Q,A,B)};Object.defineProperty(DG,"__esModule",{value:!0});Js(ZDQ(),DG);Js(YT(),DG);Js(Ys(),DG)});var Gs=R((DDQ)=>{Object.defineProperty(DDQ,"__esModule",{value:!0});DDQ.ConnectNames=DDQ.ConnectTypes=DDQ.AttributeNames=void 0;var X20;(function(A){A.CONNECT_TYPE="connect.type",A.CONNECT_NAME="connect.name"})(X20=DDQ.AttributeNames||(DDQ.AttributeNames={}));var G20;(function(A){A.MIDDLEWARE="middleware",A.REQUEST_HANDLER="request_handler"})(G20=DDQ.ConnectTypes||(DDQ.ConnectTypes={}));var F20;(function(A){A.MIDDLEWARE="middleware",A.REQUEST_HANDLER="request handler"})(F20=DDQ.ConnectNames||(DDQ.ConnectNames={}))});var qDQ=R((NDQ)=>{Object.defineProperty(NDQ,"__esModule",{value:!0});NDQ.PACKAGE_NAME=NDQ.PACKAGE_VERSION=void 0;NDQ.PACKAGE_VERSION="0.43.1";NDQ.PACKAGE_NAME="@opentelemetry/instrumentation-connect"});var RDQ=R((MDQ)=>{Object.defineProperty(MDQ,"__esModule",{value:!0});MDQ._LAYERS_STORE_PROPERTY=void 0;MDQ._LAYERS_STORE_PROPERTY=Symbol("opentelemetry.instrumentation-connect.request-route-stack")});var ODQ=R((wDQ)=>{Object.defineProperty(wDQ,"__esModule",{value:!0});wDQ.generateRoute=wDQ.replaceCurrentStackRoute=wDQ.addNewStackLayer=void 0;var Z20=yA(),xF=RDQ(),$20=(A)=>{if(Array.isArray(A[xF._LAYERS_STORE_PROPERTY])===!1)Object.defineProperty(A,xF._LAYERS_STORE_PROPERTY,{enumerable:!1,value:[]});A[xF._LAYERS_STORE_PROPERTY].push("/");let Q=A[xF._LAYERS_STORE_PROPERTY].length;return()=>{if(Q===A[xF._LAYERS_STORE_PROPERTY].length)A[xF._LAYERS_STORE_PROPERTY].pop();else Z20.diag.warn("Connect: Trying to pop the stack multiple time")}};wDQ.addNewStackLayer=$20;var U20=(A,Q)=>{if(Q)A[xF._LAYERS_STORE_PROPERTY].splice(-1,1,Q)};wDQ.replaceCurrentStackRoute=U20;var E20=(A)=>{return A[xF._LAYERS_STORE_PROPERTY].reduce((Q,B)=>Q.replace(/\/+$/,"")+B)};wDQ.generateRoute=E20});var vDQ=R((kDQ)=>{Object.defineProperty(kDQ,"__esModule",{value:!0});kDQ.ConnectInstrumentation=kDQ.ANONYMOUS_NAME=void 0;var I20=yA(),PDQ=MB(),SK=Gs(),TDQ=qDQ(),XT=NB(),H20=uB(),Fs=ODQ();kDQ.ANONYMOUS_NAME="anonymous";class SDQ extends XT.InstrumentationBase{constructor(A={}){super(TDQ.PACKAGE_NAME,TDQ.PACKAGE_VERSION,A)}init(){return[new XT.InstrumentationNodeModuleDefinition("connect",[">=3.0.0 <4"],(A)=>{return this._patchConstructor(A)})]}_patchApp(A){if(!(0,XT.isWrapped)(A.use))this._wrap(A,"use",this._patchUse.bind(this));if(!(0,XT.isWrapped)(A.handle))this._wrap(A,"handle",this._patchHandle.bind(this))}_patchConstructor(A){let Q=this;return function(...B){let Y=A.apply(this,B);return Q._patchApp(Y),Y}}_patchNext(A,Q){return function(Y){let J=A.apply(this,[Y]);return Q(),J}}_startSpan(A,Q){let B,Y,J;if(A)B=SK.ConnectTypes.REQUEST_HANDLER,J=SK.ConnectNames.REQUEST_HANDLER,Y=A;else B=SK.ConnectTypes.MIDDLEWARE,J=SK.ConnectNames.MIDDLEWARE,Y=Q.name||kDQ.ANONYMOUS_NAME;let C=`${J} - ${Y}`,X={attributes:{[H20.SEMATTRS_HTTP_ROUTE]:A.length>0?A:"/",[SK.AttributeNames.CONNECT_TYPE]:B,[SK.AttributeNames.CONNECT_NAME]:Y}};return this.tracer.startSpan(C,X)}_patchMiddleware(A,Q){let B=this,Y=Q.length===4;function J(){if(!B.isEnabled())return Q.apply(this,arguments);let[C,X,G]=Y?[1,2,3]:[0,1,2],F=arguments[C],W=arguments[X],Z=arguments[G];(0,Fs.replaceCurrentStackRoute)(F,A);let U=(0,PDQ.getRPCMetadata)(I20.context.active());if(A&&(U===null||U===void 0?void 0:U.type)===PDQ.RPCType.HTTP)U.route=(0,Fs.generateRoute)(F);let $="";if(A)$=`request handler - ${A}`;else $=`middleware - ${Q.name||kDQ.ANONYMOUS_NAME}`;let E=B._startSpan(A,Q);B._diag.debug("start span",$);let K=!1;function I(){if(!K)K=!0,B._diag.debug(`finishing span ${E.name}`),E.end();else B._diag.debug(`span ${E.name} - already finished`);W.removeListener("close",I)}return W.addListener("close",I),arguments[G]=B._patchNext(Z,I),Q.apply(this,arguments)}return Object.defineProperty(J,"length",{value:Q.length,writable:!1,configurable:!0}),J}_patchUse(A){let Q=this;return function(...B){let Y=B[B.length-1],J=B[B.length-2]||"";return B[B.length-1]=Q._patchMiddleware(J,Y),A.apply(this,B)}}_patchHandle(A){let Q=this;return function(){let[B,Y]=[0,2],J=arguments[B],C=arguments[Y],X=(0,Fs.addNewStackLayer)(J);if(typeof C==="function")arguments[Y]=Q._patchOut(C,X);return A.apply(this,arguments)}}_patchOut(A,Q){return function(...Y){return Q(),Reflect.apply(A,this,Y)}}}kDQ.ConnectInstrumentation=SDQ});var hDQ=R((fF)=>{var D20=fF&&fF.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),yDQ=fF&&fF.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))D20(Q,A,B)};Object.defineProperty(fF,"__esModule",{value:!0});yDQ(Gs(),fF);yDQ(vDQ(),fF)});var uDQ=R((bDQ)=>{Object.defineProperty(bDQ,"__esModule",{value:!0});bDQ.PACKAGE_NAME=bDQ.PACKAGE_VERSION=void 0;bDQ.PACKAGE_VERSION="0.44.1";bDQ.PACKAGE_NAME="@opentelemetry/instrumentation-knex"});var lDQ=R((dDQ)=>{Object.defineProperty(dDQ,"__esModule",{value:!0});dDQ.SUPPORTED_VERSIONS=dDQ.MODULE_NAME=void 0;dDQ.MODULE_NAME="knex";dDQ.SUPPORTED_VERSIONS=[">=0.22.0 <4",">=0.10.0 <0.18.0",">=0.19.0 <0.22.0",">=0.18.0 <0.19.0"]});var nDQ=R((iDQ)=>{Object.defineProperty(iDQ,"__esModule",{value:!0});iDQ.extractTableName=iDQ.limitLength=iDQ.getName=iDQ.mapSystem=iDQ.otelExceptionFromKnexError=iDQ.getFormatter=void 0;var pDQ=uB(),S20=(A)=>{if(A){if(A.client){if(A.client._formatQuery)return A.client._formatQuery.bind(A.client);else if(A.client.SqlString)return A.client.SqlString.format.bind(A.client.SqlString)}if(A.builder)return A.builder.toString.bind(A.builder)}return()=>""};iDQ.getFormatter=S20;function k20(A,Q){if(!(A&&A instanceof Error))return A;return{message:Q,code:A.code,stack:A.stack,name:A.name}}iDQ.otelExceptionFromKnexError=k20;var _20=new Map([["sqlite3",pDQ.DBSYSTEMVALUES_SQLITE],["pg",pDQ.DBSYSTEMVALUES_POSTGRESQL]]),v20=(A)=>{return _20.get(A)||A};iDQ.mapSystem=v20;var y20=(A,Q,B)=>{if(Q){if(B)return`${Q} ${A}.${B}`;return`${Q} ${A}`}return A};iDQ.getName=y20;var h20=(A,Q)=>{if(typeof A==="string"&&typeof Q==="number"&&0{var Q;let B=(Q=A===null||A===void 0?void 0:A._single)===null||Q===void 0?void 0:Q.table;if(typeof B==="object")return iDQ.extractTableName(B);return B};iDQ.extractTableName=g20});var ANQ=R((tDQ)=>{Object.defineProperty(tDQ,"__esModule",{value:!0});tDQ.KnexInstrumentation=void 0;var NG=yA(),sDQ=uDQ(),WT=lDQ(),dL=NB(),LG=uB(),kK=nDQ(),rDQ=Symbol("opentelemetry.instrumentation-knex.context"),aDQ={maxQueryLength:1022,requireParentSpan:!1};class oDQ extends dL.InstrumentationBase{constructor(A={}){super(sDQ.PACKAGE_NAME,sDQ.PACKAGE_VERSION,Object.assign(Object.assign({},aDQ),A))}setConfig(A={}){super.setConfig(Object.assign(Object.assign({},aDQ),A))}init(){let A=new dL.InstrumentationNodeModuleDefinition(WT.MODULE_NAME,WT.SUPPORTED_VERSIONS);return A.files.push(this.getClientNodeModuleFileInstrumentation("src"),this.getClientNodeModuleFileInstrumentation("lib"),this.getRunnerNodeModuleFileInstrumentation("src"),this.getRunnerNodeModuleFileInstrumentation("lib"),this.getRunnerNodeModuleFileInstrumentation("lib/execution")),A}getRunnerNodeModuleFileInstrumentation(A){return new dL.InstrumentationNodeModuleFile(`knex/${A}/runner.js`,WT.SUPPORTED_VERSIONS,(Q,B)=>{return this.ensureWrapped(Q.prototype,"query",this.createQueryWrapper(B)),Q},(Q,B)=>{return this._unwrap(Q.prototype,"query"),Q})}getClientNodeModuleFileInstrumentation(A){return new dL.InstrumentationNodeModuleFile(`knex/${A}/client.js`,WT.SUPPORTED_VERSIONS,(Q)=>{return this.ensureWrapped(Q.prototype,"queryBuilder",this.storeContext.bind(this)),this.ensureWrapped(Q.prototype,"schemaBuilder",this.storeContext.bind(this)),this.ensureWrapped(Q.prototype,"raw",this.storeContext.bind(this)),Q},(Q)=>{return this._unwrap(Q.prototype,"queryBuilder"),this._unwrap(Q.prototype,"schemaBuilder"),this._unwrap(Q.prototype,"raw"),Q})}createQueryWrapper(A){let Q=this;return function(Y){return function(C){var X,G,F,W,Z,U;let $=this.client.config,E=kK.extractTableName(this.builder),K=C===null||C===void 0?void 0:C.method,I=((X=$===null||$===void 0?void 0:$.connection)===null||X===void 0?void 0:X.filename)||((G=$===null||$===void 0?void 0:$.connection)===null||G===void 0?void 0:G.database),{maxQueryLength:V}=Q.getConfig(),H={"knex.version":A,[LG.SEMATTRS_DB_SYSTEM]:kK.mapSystem($.client),[LG.SEMATTRS_DB_SQL_TABLE]:E,[LG.SEMATTRS_DB_OPERATION]:K,[LG.SEMATTRS_DB_USER]:(F=$===null||$===void 0?void 0:$.connection)===null||F===void 0?void 0:F.user,[LG.SEMATTRS_DB_NAME]:I,[LG.SEMATTRS_NET_PEER_NAME]:(W=$===null||$===void 0?void 0:$.connection)===null||W===void 0?void 0:W.host,[LG.SEMATTRS_NET_PEER_PORT]:(Z=$===null||$===void 0?void 0:$.connection)===null||Z===void 0?void 0:Z.port,[LG.SEMATTRS_NET_TRANSPORT]:((U=$===null||$===void 0?void 0:$.connection)===null||U===void 0?void 0:U.filename)===":memory:"?"inproc":void 0};if(V)H[LG.SEMATTRS_DB_STATEMENT]=kK.limitLength(C===null||C===void 0?void 0:C.sql,V);let D=this.builder[rDQ]||NG.context.active(),L=NG.trace.getSpan(D),z=L&&NG.trace.isSpanContextValid(L.spanContext());if(Q._config.requireParentSpan&&!z)return Y.bind(this)(...arguments);let M=Q.tracer.startSpan(kK.getName(I,K,E),{kind:NG.SpanKind.CLIENT,attributes:H},D),N=NG.trace.setSpan(NG.context.active(),M);return NG.context.with(N,Y,this,...arguments).then((q)=>{return M.end(),q}).catch((q)=>{let P=kK.getFormatter(this)(C.sql,C.bindings||[]),_=q.message.replace(P+" - ",""),O=kK.otelExceptionFromKnexError(q,_);throw M.recordException(O),M.setStatus({code:NG.SpanStatusCode.ERROR,message:_}),M.end(),q})}}}storeContext(A){return function(){let B=A.apply(this,arguments);return Object.defineProperty(B,rDQ,{value:NG.context.active()}),B}}ensureWrapped(A,Q,B){if((0,dL.isWrapped)(A[Q]))this._unwrap(A,Q);this._wrap(A,Q,B)}}tDQ.KnexInstrumentation=oDQ});var BNQ=R((QNQ)=>{Object.defineProperty(QNQ,"__esModule",{value:!0})});var JNQ=R((bF)=>{var d20=bF&&bF.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),YNQ=bF&&bF.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))d20(Q,A,B)};Object.defineProperty(bF,"__esModule",{value:!0});YNQ(ANQ(),bF);YNQ(BNQ(),bF)});var ZNQ=R((FNQ)=>{Object.defineProperty(FNQ,"__esModule",{value:!0});FNQ.once=FNQ.getSpanName=void 0;function p20(A,Q,B,Y){if(A==="execBulkLoad"&&Y&&Q)return`${A} ${Y} ${Q}`;if(A==="callProcedure"){if(Q)return`${A} ${B} ${Q}`;return`${A} ${B}`}if(Q)return`${A} ${Q}`;return`${A}`}FNQ.getSpanName=p20;var i20=(A)=>{let Q=!1;return(...B)=>{if(Q)return;return Q=!0,A(...B)}};FNQ.once=i20});var ENQ=R(($NQ)=>{Object.defineProperty($NQ,"__esModule",{value:!0});$NQ.PACKAGE_NAME=$NQ.PACKAGE_VERSION=void 0;$NQ.PACKAGE_VERSION="0.18.1";$NQ.PACKAGE_NAME="@opentelemetry/instrumentation-tedious"});var LNQ=R((DNQ)=>{Object.defineProperty(DNQ,"__esModule",{value:!0});DNQ.TediousInstrumentation=void 0;var cL=yA(),r20=u("events"),ZT=NB(),mF=uB(),KNQ=ZNQ(),VNQ=ENQ(),HNQ=Symbol("opentelemetry.instrumentation-tedious.current-database"),INQ=["callProcedure","execSql","execSqlBatch","execBulkLoad","prepare","execute"];function $T(A){Object.defineProperty(this,HNQ,{value:A,writable:!0})}class UT extends ZT.InstrumentationBase{constructor(A={}){super(VNQ.PACKAGE_NAME,VNQ.PACKAGE_VERSION,A)}init(){return[new ZT.InstrumentationNodeModuleDefinition(UT.COMPONENT,[">=1.11.0 <20"],(A)=>{let Q=A.Connection.prototype;for(let B of INQ){if((0,ZT.isWrapped)(Q[B]))this._unwrap(Q,B);this._wrap(Q,B,this._patchQuery(B))}if((0,ZT.isWrapped)(Q.connect))this._unwrap(Q,"connect");return this._wrap(Q,"connect",this._patchConnect),A},(A)=>{if(A===void 0)return;let Q=A.Connection.prototype;for(let B of INQ)this._unwrap(Q,B);this._unwrap(Q,"connect")})]}_patchConnect(A){return function(){var B,Y;return $T.call(this,(Y=(B=this.config)===null||B===void 0?void 0:B.options)===null||Y===void 0?void 0:Y.database),this.removeListener("databaseChange",$T),this.on("databaseChange",$T),this.once("end",()=>{this.removeListener("databaseChange",$T)}),A.apply(this,arguments)}}_patchQuery(A){return(Q)=>{let B=this;function Y(J){var C,X,G,F,W,Z,U,$;if(!(J instanceof r20.EventEmitter))return B._diag.warn(`Unexpected invocation of patched ${A} method. Span not recorded`),Q.apply(this,arguments);let E=0,K=0,I=()=>K++,V=()=>E++,H=this[HNQ],D=((M)=>{var N,q;if(M.sqlTextOrProcedure==="sp_prepare"&&((q=(N=M.parametersByName)===null||N===void 0?void 0:N.stmt)===null||q===void 0?void 0:q.value))return M.parametersByName.stmt.value;return M.sqlTextOrProcedure})(J),L=B.tracer.startSpan((0,KNQ.getSpanName)(A,H,D,J.table),{kind:cL.SpanKind.CLIENT,attributes:{[mF.SEMATTRS_DB_SYSTEM]:mF.DBSYSTEMVALUES_MSSQL,[mF.SEMATTRS_DB_NAME]:H,[mF.SEMATTRS_NET_PEER_PORT]:(X=(C=this.config)===null||C===void 0?void 0:C.options)===null||X===void 0?void 0:X.port,[mF.SEMATTRS_NET_PEER_NAME]:(G=this.config)===null||G===void 0?void 0:G.server,[mF.SEMATTRS_DB_USER]:(W=(F=this.config)===null||F===void 0?void 0:F.userName)!==null&&W!==void 0?W:($=(U=(Z=this.config)===null||Z===void 0?void 0:Z.authentication)===null||U===void 0?void 0:U.options)===null||$===void 0?void 0:$.userName,[mF.SEMATTRS_DB_STATEMENT]:D,[mF.SEMATTRS_DB_SQL_TABLE]:J.table}}),z=(0,KNQ.once)((M)=>{if(J.removeListener("done",I),J.removeListener("doneInProc",I),J.removeListener("doneProc",V),J.removeListener("error",z),this.removeListener("end",z),L.setAttribute("tedious.procedure_count",E),L.setAttribute("tedious.statement_count",K),M)L.setStatus({code:cL.SpanStatusCode.ERROR,message:M.message});L.end()});if(J.on("done",I),J.on("doneInProc",I),J.on("doneProc",V),J.once("error",z),this.on("end",z),typeof J.callback==="function")B._wrap(J,"callback",B._patchCallbackQuery(z));else B._diag.error("Expected request.callback to be a function");return cL.context.with(cL.trace.setSpan(cL.context.active(),L),Q,this,...arguments)}return Object.defineProperty(Y,"length",{value:Q.length,writable:!1}),Y}}_patchCallbackQuery(A){return(Q)=>{return function(B,Y,J){return A(B),Q.apply(this,arguments)}}}}DNQ.TediousInstrumentation=UT;UT.COMPONENT="tedious"});var MNQ=R((qNQ)=>{Object.defineProperty(qNQ,"__esModule",{value:!0})});var RNQ=R((uF)=>{var a20=uF&&uF.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),zNQ=uF&&uF.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))a20(Q,A,B)};Object.defineProperty(uF,"__esModule",{value:!0});zNQ(LNQ(),uF);zNQ(MNQ(),uF)});var TNQ=R((ONQ)=>{Object.defineProperty(ONQ,"__esModule",{value:!0});ONQ.PACKAGE_NAME=ONQ.PACKAGE_VERSION=void 0;ONQ.PACKAGE_VERSION="0.43.1";ONQ.PACKAGE_NAME="@opentelemetry/instrumentation-generic-pool"});var yNQ=R((_NQ)=>{Object.defineProperty(_NQ,"__esModule",{value:!0});_NQ.GenericPoolInstrumentation=void 0;var _K=yA(),M$=NB(),SNQ=TNQ(),Ks="generic-pool";class kNQ extends M$.InstrumentationBase{constructor(A={}){super(SNQ.PACKAGE_NAME,SNQ.PACKAGE_VERSION,A);this._isDisabled=!1}init(){return[new M$.InstrumentationNodeModuleDefinition(Ks,[">=3.0.0 <4"],(A)=>{let Q=A.Pool;if((0,M$.isWrapped)(Q.prototype.acquire))this._unwrap(Q.prototype,"acquire");return this._wrap(Q.prototype,"acquire",this._acquirePatcher.bind(this)),A},(A)=>{let Q=A.Pool;return this._unwrap(Q.prototype,"acquire"),A}),new M$.InstrumentationNodeModuleDefinition(Ks,[">=2.4.0 <3"],(A)=>{let Q=A.Pool;if((0,M$.isWrapped)(Q.prototype.acquire))this._unwrap(Q.prototype,"acquire");return this._wrap(Q.prototype,"acquire",this._acquireWithCallbacksPatcher.bind(this)),A},(A)=>{let Q=A.Pool;return this._unwrap(Q.prototype,"acquire"),A}),new M$.InstrumentationNodeModuleDefinition(Ks,[">=2.0.0 <2.4"],(A)=>{if(this._isDisabled=!1,(0,M$.isWrapped)(A.Pool))this._unwrap(A,"Pool");return this._wrap(A,"Pool",this._poolWrapper.bind(this)),A},(A)=>{return this._isDisabled=!0,A})]}_acquirePatcher(A){let Q=this;return function(...Y){let J=_K.context.active(),C=Q.tracer.startSpan("generic-pool.acquire",{},J);return _K.context.with(_K.trace.setSpan(J,C),()=>{return A.call(this,...Y).then((X)=>{return C.end(),X},(X)=>{throw C.recordException(X),C.end(),X})})}}_poolWrapper(A){let Q=this;return function(){let Y=A.apply(this,arguments);return Q._wrap(Y,"acquire",Q._acquireWithCallbacksPatcher.bind(Q)),Y}}_acquireWithCallbacksPatcher(A){let Q=this;return function(Y,J){if(Q._isDisabled)return A.call(this,Y,J);let C=_K.context.active(),X=Q.tracer.startSpan("generic-pool.acquire",{},C);return _K.context.with(_K.trace.setSpan(C,X),()=>{A.call(this,(G,F)=>{if(X.end(),Y)return Y(G,F)},J)})}}}_NQ.GenericPoolInstrumentation=kNQ});var hNQ=R((z$)=>{var A30=z$&&z$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),Q30=z$&&z$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))A30(Q,A,B)};Object.defineProperty(z$,"__esModule",{value:!0});Q30(yNQ(),z$)});var bNQ=R((fNQ)=>{Object.defineProperty(fNQ,"__esModule",{value:!0})});var dNQ=R((mNQ)=>{Object.defineProperty(mNQ,"__esModule",{value:!0});mNQ.PACKAGE_NAME=mNQ.PACKAGE_VERSION=void 0;mNQ.PACKAGE_VERSION="0.16.1";mNQ.PACKAGE_NAME="@opentelemetry/instrumentation-dataloader"});var nNQ=R((pNQ)=>{Object.defineProperty(pNQ,"__esModule",{value:!0});pNQ.DataloaderInstrumentation=void 0;var R$=NB(),V9=yA(),cNQ=dNQ(),Is="dataloader";class lNQ extends R$.InstrumentationBase{constructor(A={}){super(cNQ.PACKAGE_NAME,cNQ.PACKAGE_VERSION,A)}init(){return[new R$.InstrumentationNodeModuleDefinition(Is,[">=2.0.0 <3"],(A)=>{return this._patchLoad(A.prototype),this._patchLoadMany(A.prototype),this._getPatchedConstructor(A)},(A)=>{if((0,R$.isWrapped)(A.prototype.load))this._unwrap(A.prototype,"load");if((0,R$.isWrapped)(A.prototype.loadMany))this._unwrap(A.prototype,"loadMany")})]}shouldCreateSpans(){let A=this.getConfig();return V9.trace.getSpan(V9.context.active())!==void 0||!A.requireParentSpan}getSpanName(A,Q){let B=A.name;if(B===void 0||B===null)return`${Is}.${Q}`;return`${Is}.${Q} ${B}`}_getPatchedConstructor(A){let Q=A.prototype,B=this;function Y(...J){let C=new A(...J);if(!B.isEnabled())return C;if((0,R$.isWrapped)(C._batchLoadFn))B._unwrap(C,"_batchLoadFn");return B._wrap(C,"_batchLoadFn",(X)=>{return function(...F){var W;if(!B.isEnabled()||!B.shouldCreateSpans())return X.call(this,...F);let Z=V9.context.active(),U=B.tracer.startSpan(B.getSpanName(C,"batch"),{links:(W=this._batch)===null||W===void 0?void 0:W.spanLinks},Z);return V9.context.with(V9.trace.setSpan(Z,U),()=>{return X.apply(this,F).then(($)=>{return U.end(),$}).catch(($)=>{throw U.recordException($),U.setStatus({code:V9.SpanStatusCode.ERROR,message:$.message}),U.end(),$})})}}),C}return Y.prototype=Q,Y}_patchLoad(A){if((0,R$.isWrapped)(A.load))this._unwrap(A,"load");this._wrap(A,"load",this._getPatchedLoad.bind(this))}_getPatchedLoad(A){let Q=this;return function(...Y){if(!Q.shouldCreateSpans())return A.call(this,...Y);let J=V9.context.active(),C=Q.tracer.startSpan(Q.getSpanName(this,"load"),{kind:V9.SpanKind.CLIENT},J);return V9.context.with(V9.trace.setSpan(J,C),()=>{let X=A.call(this,...Y).then((F)=>{return C.end(),F}).catch((F)=>{throw C.recordException(F),C.setStatus({code:V9.SpanStatusCode.ERROR,message:F.message}),C.end(),F}),G=this;if(G._batch){if(!G._batch.spanLinks)G._batch.spanLinks=[];G._batch.spanLinks.push({context:C.spanContext()})}return X})}}_patchLoadMany(A){if((0,R$.isWrapped)(A.loadMany))this._unwrap(A,"loadMany");this._wrap(A,"loadMany",this._getPatchedLoadMany.bind(this))}_getPatchedLoadMany(A){let Q=this;return function(...Y){if(!Q.shouldCreateSpans())return A.call(this,...Y);let J=V9.context.active(),C=Q.tracer.startSpan(Q.getSpanName(this,"loadMany"),{kind:V9.SpanKind.CLIENT},J);return V9.context.with(V9.trace.setSpan(J,C),()=>{return A.call(this,...Y).then((X)=>{return C.end(),X})})}}}pNQ.DataloaderInstrumentation=lNQ});var rNQ=R((dF)=>{var J30=dF&&dF.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),sNQ=dF&&dF.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))J30(Q,A,B)};Object.defineProperty(dF,"__esModule",{value:!0});sNQ(bNQ(),dF);sNQ(nNQ(),dF)});var Hs=R((ALQ)=>{Object.defineProperty(ALQ,"__esModule",{value:!0});ALQ.DEFAULT_CONFIG=ALQ.EndOperation=void 0;var G30;(function(A){A.AutoAck="auto ack",A.Ack="ack",A.AckAll="ackAll",A.Reject="reject",A.Nack="nack",A.NackAll="nackAll",A.ChannelClosed="channel closed",A.ChannelError="channel error",A.InstrumentationTimeout="instrumentation timeout"})(G30=ALQ.EndOperation||(ALQ.EndOperation={}));ALQ.DEFAULT_CONFIG={consumeTimeoutMs:60000,useLinksForConsume:!1}});var GLQ=R((CLQ)=>{Object.defineProperty(CLQ,"__esModule",{value:!0});CLQ.isConfirmChannelTracing=CLQ.unmarkConfirmChannelTracing=CLQ.markConfirmChannelTracing=CLQ.getConnectionAttributesFromUrl=CLQ.getConnectionAttributesFromServer=CLQ.normalizeExchange=CLQ.CONNECTION_ATTRIBUTES=CLQ.CHANNEL_CONSUME_TIMEOUT_TIMER=CLQ.CHANNEL_SPANS_NOT_ENDED=CLQ.MESSAGE_STORED_SPAN=void 0;var Ds=yA(),qG=uB();CLQ.MESSAGE_STORED_SPAN=Symbol("opentelemetry.amqplib.message.stored-span");CLQ.CHANNEL_SPANS_NOT_ENDED=Symbol("opentelemetry.amqplib.channel.spans-not-ended");CLQ.CHANNEL_CONSUME_TIMEOUT_TIMER=Symbol("opentelemetry.amqplib.channel.consumer-timeout-timer");CLQ.CONNECTION_ATTRIBUTES=Symbol("opentelemetry.amqplib.connection.attributes");var Ns=(0,Ds.createContextKey)("opentelemetry.amqplib.channel.is-confirm-channel"),F30=(A)=>A!==""?A:"";CLQ.normalizeExchange=F30;var W30=(A)=>{return A.replace(/:[^:@/]*@/,":***@")},BLQ=(A,Q)=>{return A||(Q==="AMQP"?5672:5671)},YLQ=(A)=>{let Q=A||"amqp";return(Q.endsWith(":")?Q.substring(0,Q.length-1):Q).toUpperCase()},JLQ=(A)=>{return A||"localhost"},vK=(A,Q,B,Y)=>{if(B)return{[Q]:B};else return Ds.diag.error(`amqplib instrumentation: could not extract connection attribute ${Y} from user supplied url`,{url:A}),{}},Z30=(A)=>{var Q,B;let Y=(B=(Q=A.serverProperties.product)===null||Q===void 0?void 0:Q.toLowerCase)===null||B===void 0?void 0:B.call(Q);if(Y)return{[qG.SEMATTRS_MESSAGING_SYSTEM]:Y};else return{}};CLQ.getConnectionAttributesFromServer=Z30;var $30=(A)=>{let Q={[qG.SEMATTRS_MESSAGING_PROTOCOL_VERSION]:"0.9.1"};if(A=A||"amqp://localhost",typeof A==="object"){let B=A,Y=YLQ(B===null||B===void 0?void 0:B.protocol);Object.assign(Q,Object.assign({},vK(A,qG.SEMATTRS_MESSAGING_PROTOCOL,Y,"protocol")));let J=JLQ(B===null||B===void 0?void 0:B.hostname);Object.assign(Q,Object.assign({},vK(A,qG.SEMATTRS_NET_PEER_NAME,J,"hostname")));let C=BLQ(B.port,Y);Object.assign(Q,Object.assign({},vK(A,qG.SEMATTRS_NET_PEER_PORT,C,"port")))}else{let B=W30(A);Q[qG.SEMATTRS_MESSAGING_URL]=B;try{let Y=new URL(B),J=YLQ(Y.protocol);Object.assign(Q,Object.assign({},vK(B,qG.SEMATTRS_MESSAGING_PROTOCOL,J,"protocol")));let C=JLQ(Y.hostname);Object.assign(Q,Object.assign({},vK(B,qG.SEMATTRS_NET_PEER_NAME,C,"hostname")));let X=BLQ(Y.port?parseInt(Y.port):void 0,J);Object.assign(Q,Object.assign({},vK(B,qG.SEMATTRS_NET_PEER_PORT,X,"port")))}catch(Y){Ds.diag.error("amqplib instrumentation: error while extracting connection details from connection url",{censoredUrl:B,err:Y})}}return Q};CLQ.getConnectionAttributesFromUrl=$30;var U30=(A)=>{return A.setValue(Ns,!0)};CLQ.markConfirmChannelTracing=U30;var E30=(A)=>{return A.deleteValue(Ns)};CLQ.unmarkConfirmChannelTracing=E30;var K30=(A)=>{return A.getValue(Ns)===!0};CLQ.isConfirmChannelTracing=K30});var ZLQ=R((FLQ)=>{Object.defineProperty(FLQ,"__esModule",{value:!0});FLQ.PACKAGE_NAME=FLQ.PACKAGE_VERSION=void 0;FLQ.PACKAGE_VERSION="0.46.1";FLQ.PACKAGE_NAME="@opentelemetry/instrumentation-amqplib"});var VLQ=R((ELQ)=>{Object.defineProperty(ELQ,"__esModule",{value:!0});ELQ.AmqplibInstrumentation=void 0;var f0=yA(),VT=MB(),fB=NB(),n9=uB(),I9=Hs(),i0=GLQ(),$LQ=ZLQ(),IT=[">=0.5.5 <1"];class ULQ extends fB.InstrumentationBase{constructor(A={}){super($LQ.PACKAGE_NAME,$LQ.PACKAGE_VERSION,Object.assign(Object.assign({},I9.DEFAULT_CONFIG),A))}setConfig(A={}){super.setConfig(Object.assign(Object.assign({},I9.DEFAULT_CONFIG),A))}init(){let A=new fB.InstrumentationNodeModuleFile("amqplib/lib/channel_model.js",IT,this.patchChannelModel.bind(this),this.unpatchChannelModel.bind(this)),Q=new fB.InstrumentationNodeModuleFile("amqplib/lib/callback_model.js",IT,this.patchChannelModel.bind(this),this.unpatchChannelModel.bind(this)),B=new fB.InstrumentationNodeModuleFile("amqplib/lib/connect.js",IT,this.patchConnect.bind(this),this.unpatchConnect.bind(this));return new fB.InstrumentationNodeModuleDefinition("amqplib",IT,void 0,void 0,[A,B,Q])}patchConnect(A){if(A=this.unpatchConnect(A),!(0,fB.isWrapped)(A.connect))this._wrap(A,"connect",this.getConnectPatch.bind(this));return A}unpatchConnect(A){if((0,fB.isWrapped)(A.connect))this._unwrap(A,"connect");return A}patchChannelModel(A,Q){if(!(0,fB.isWrapped)(A.Channel.prototype.publish))this._wrap(A.Channel.prototype,"publish",this.getPublishPatch.bind(this,Q));if(!(0,fB.isWrapped)(A.Channel.prototype.consume))this._wrap(A.Channel.prototype,"consume",this.getConsumePatch.bind(this,Q));if(!(0,fB.isWrapped)(A.Channel.prototype.ack))this._wrap(A.Channel.prototype,"ack",this.getAckPatch.bind(this,!1,I9.EndOperation.Ack));if(!(0,fB.isWrapped)(A.Channel.prototype.nack))this._wrap(A.Channel.prototype,"nack",this.getAckPatch.bind(this,!0,I9.EndOperation.Nack));if(!(0,fB.isWrapped)(A.Channel.prototype.reject))this._wrap(A.Channel.prototype,"reject",this.getAckPatch.bind(this,!0,I9.EndOperation.Reject));if(!(0,fB.isWrapped)(A.Channel.prototype.ackAll))this._wrap(A.Channel.prototype,"ackAll",this.getAckAllPatch.bind(this,!1,I9.EndOperation.AckAll));if(!(0,fB.isWrapped)(A.Channel.prototype.nackAll))this._wrap(A.Channel.prototype,"nackAll",this.getAckAllPatch.bind(this,!0,I9.EndOperation.NackAll));if(!(0,fB.isWrapped)(A.Channel.prototype.emit))this._wrap(A.Channel.prototype,"emit",this.getChannelEmitPatch.bind(this));if(!(0,fB.isWrapped)(A.ConfirmChannel.prototype.publish))this._wrap(A.ConfirmChannel.prototype,"publish",this.getConfirmedPublishPatch.bind(this,Q));return A}unpatchChannelModel(A){if((0,fB.isWrapped)(A.Channel.prototype.publish))this._unwrap(A.Channel.prototype,"publish");if((0,fB.isWrapped)(A.Channel.prototype.consume))this._unwrap(A.Channel.prototype,"consume");if((0,fB.isWrapped)(A.Channel.prototype.ack))this._unwrap(A.Channel.prototype,"ack");if((0,fB.isWrapped)(A.Channel.prototype.nack))this._unwrap(A.Channel.prototype,"nack");if((0,fB.isWrapped)(A.Channel.prototype.reject))this._unwrap(A.Channel.prototype,"reject");if((0,fB.isWrapped)(A.Channel.prototype.ackAll))this._unwrap(A.Channel.prototype,"ackAll");if((0,fB.isWrapped)(A.Channel.prototype.nackAll))this._unwrap(A.Channel.prototype,"nackAll");if((0,fB.isWrapped)(A.Channel.prototype.emit))this._unwrap(A.Channel.prototype,"emit");if((0,fB.isWrapped)(A.ConfirmChannel.prototype.publish))this._unwrap(A.ConfirmChannel.prototype,"publish");return A}getConnectPatch(A){return function(B,Y,J){return A.call(this,B,Y,function(C,X){if(C==null){let G=(0,i0.getConnectionAttributesFromUrl)(B),F=(0,i0.getConnectionAttributesFromServer)(X);X[i0.CONNECTION_ATTRIBUTES]=Object.assign(Object.assign({},G),F)}J.apply(this,arguments)})}}getChannelEmitPatch(A){let Q=this;return function(Y){if(Y==="close"){Q.endAllSpansOnChannel(this,!0,I9.EndOperation.ChannelClosed,void 0);let J=this[i0.CHANNEL_CONSUME_TIMEOUT_TIMER];if(J)clearInterval(J);this[i0.CHANNEL_CONSUME_TIMEOUT_TIMER]=void 0}else if(Y==="error")Q.endAllSpansOnChannel(this,!0,I9.EndOperation.ChannelError,void 0);return A.apply(this,arguments)}}getAckAllPatch(A,Q,B){let Y=this;return function(C){return Y.endAllSpansOnChannel(this,A,Q,C),B.apply(this,arguments)}}getAckPatch(A,Q,B){let Y=this;return function(C,X,G){var F;let W=this,Z=Q===I9.EndOperation.Reject?X:G,U=(F=W[i0.CHANNEL_SPANS_NOT_ENDED])!==null&&F!==void 0?F:[],$=U.findIndex((E)=>E.msg===C);if($<0)Y.endConsumerSpan(C,A,Q,Z);else if(Q!==I9.EndOperation.Reject&&X){for(let E=0;E<=$;E++)Y.endConsumerSpan(U[E].msg,A,Q,Z);U.splice(0,$+1)}else Y.endConsumerSpan(C,A,Q,Z),U.splice($,1);return B.apply(this,arguments)}}getConsumePatch(A,Q){let B=this;return function(J,C,X){let G=this;if(!Object.prototype.hasOwnProperty.call(G,i0.CHANNEL_SPANS_NOT_ENDED)){let{consumeTimeoutMs:W}=B.getConfig();if(W){let Z=setInterval(()=>{B.checkConsumeTimeoutOnChannel(G)},W);Z.unref(),G[i0.CHANNEL_CONSUME_TIMEOUT_TIMER]=Z}G[i0.CHANNEL_SPANS_NOT_ENDED]=[]}let F=function(W){var Z,U,$,E,K;if(!W)return C.call(this,W);let I=(Z=W.properties.headers)!==null&&Z!==void 0?Z:{},V=f0.propagation.extract(f0.ROOT_CONTEXT,I),H=(U=W.fields)===null||U===void 0?void 0:U.exchange,D;if(B._config.useLinksForConsume){let N=V?($=f0.trace.getSpan(V))===null||$===void 0?void 0:$.spanContext():void 0;if(V=void 0,N)D=[{context:N}]}let L=B.tracer.startSpan(`${J} process`,{kind:f0.SpanKind.CONSUMER,attributes:Object.assign(Object.assign({},(E=G===null||G===void 0?void 0:G.connection)===null||E===void 0?void 0:E[i0.CONNECTION_ATTRIBUTES]),{[n9.SEMATTRS_MESSAGING_DESTINATION]:H,[n9.SEMATTRS_MESSAGING_DESTINATION_KIND]:n9.MESSAGINGDESTINATIONKINDVALUES_TOPIC,[n9.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY]:(K=W.fields)===null||K===void 0?void 0:K.routingKey,[n9.SEMATTRS_MESSAGING_OPERATION]:n9.MESSAGINGOPERATIONVALUES_PROCESS,[n9.SEMATTRS_MESSAGING_MESSAGE_ID]:W===null||W===void 0?void 0:W.properties.messageId,[n9.SEMATTRS_MESSAGING_CONVERSATION_ID]:W===null||W===void 0?void 0:W.properties.correlationId}),links:D},V),{consumeHook:z}=B.getConfig();if(z)(0,fB.safeExecuteInTheMiddle)(()=>z(L,{moduleVersion:A,msg:W}),(N)=>{if(N)f0.diag.error("amqplib instrumentation: consumerHook error",N)},!0);if(!(X===null||X===void 0?void 0:X.noAck))G[i0.CHANNEL_SPANS_NOT_ENDED].push({msg:W,timeOfConsume:(0,VT.hrTime)()}),W[i0.MESSAGE_STORED_SPAN]=L;let M=V?V:f0.ROOT_CONTEXT;if(f0.context.with(f0.trace.setSpan(M,L),()=>{C.call(this,W)}),X===null||X===void 0?void 0:X.noAck)B.callConsumeEndHook(L,W,!1,I9.EndOperation.AutoAck),L.end()};return arguments[1]=F,Q.apply(this,arguments)}}getConfirmedPublishPatch(A,Q){let B=this;return function(J,C,X,G,F){let W=this,{span:Z,modifiedOptions:U}=B.createPublishSpan(B,J,C,W,G),{publishHook:$}=B.getConfig();if($)(0,fB.safeExecuteInTheMiddle)(()=>$(Z,{moduleVersion:A,exchange:J,routingKey:C,content:X,options:U,isConfirmChannel:!0}),(V)=>{if(V)f0.diag.error("amqplib instrumentation: publishHook error",V)},!0);let E=function(V,H){try{F===null||F===void 0||F.call(this,V,H)}finally{let{publishConfirmHook:D}=B.getConfig();if(D)(0,fB.safeExecuteInTheMiddle)(()=>D(Z,{moduleVersion:A,exchange:J,routingKey:C,content:X,options:G,isConfirmChannel:!0,confirmError:V}),(L)=>{if(L)f0.diag.error("amqplib instrumentation: publishConfirmHook error",L)},!0);if(V)Z.setStatus({code:f0.SpanStatusCode.ERROR,message:"message confirmation has been nack'ed"});Z.end()}},K=(0,i0.markConfirmChannelTracing)(f0.context.active()),I=[...arguments];return I[3]=U,I[4]=f0.context.bind((0,i0.unmarkConfirmChannelTracing)(f0.trace.setSpan(K,Z)),E),f0.context.with(K,Q.bind(this,...I))}}getPublishPatch(A,Q){let B=this;return function(J,C,X,G){if((0,i0.isConfirmChannelTracing)(f0.context.active()))return Q.apply(this,arguments);else{let F=this,{span:W,modifiedOptions:Z}=B.createPublishSpan(B,J,C,F,G),{publishHook:U}=B.getConfig();if(U)(0,fB.safeExecuteInTheMiddle)(()=>U(W,{moduleVersion:A,exchange:J,routingKey:C,content:X,options:Z,isConfirmChannel:!1}),(K)=>{if(K)f0.diag.error("amqplib instrumentation: publishHook error",K)},!0);let $=[...arguments];$[3]=Z;let E=Q.apply(this,$);return W.end(),E}}}createPublishSpan(A,Q,B,Y,J){var C;let X=(0,i0.normalizeExchange)(Q),G=A.tracer.startSpan(`publish ${X}`,{kind:f0.SpanKind.PRODUCER,attributes:Object.assign(Object.assign({},Y.connection[i0.CONNECTION_ATTRIBUTES]),{[n9.SEMATTRS_MESSAGING_DESTINATION]:Q,[n9.SEMATTRS_MESSAGING_DESTINATION_KIND]:n9.MESSAGINGDESTINATIONKINDVALUES_TOPIC,[n9.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY]:B,[n9.SEMATTRS_MESSAGING_MESSAGE_ID]:J===null||J===void 0?void 0:J.messageId,[n9.SEMATTRS_MESSAGING_CONVERSATION_ID]:J===null||J===void 0?void 0:J.correlationId})}),F=J!==null&&J!==void 0?J:{};return F.headers=(C=F.headers)!==null&&C!==void 0?C:{},f0.propagation.inject(f0.trace.setSpan(f0.context.active(),G),F.headers),{span:G,modifiedOptions:F}}endConsumerSpan(A,Q,B,Y){let J=A[i0.MESSAGE_STORED_SPAN];if(!J)return;if(Q!==!1)J.setStatus({code:f0.SpanStatusCode.ERROR,message:B!==I9.EndOperation.ChannelClosed&&B!==I9.EndOperation.ChannelError?`${B} called on message${Y===!0?" with requeue":Y===!1?" without requeue":""}`:B});this.callConsumeEndHook(J,A,Q,B),J.end(),A[i0.MESSAGE_STORED_SPAN]=void 0}endAllSpansOnChannel(A,Q,B,Y){var J;((J=A[i0.CHANNEL_SPANS_NOT_ENDED])!==null&&J!==void 0?J:[]).forEach((X)=>{this.endConsumerSpan(X.msg,Q,B,Y)}),A[i0.CHANNEL_SPANS_NOT_ENDED]=[]}callConsumeEndHook(A,Q,B,Y){let{consumeEndHook:J}=this.getConfig();if(!J)return;(0,fB.safeExecuteInTheMiddle)(()=>J(A,{msg:Q,rejected:B,endOperation:Y}),(C)=>{if(C)f0.diag.error("amqplib instrumentation: consumerEndHook error",C)},!0)}checkConsumeTimeoutOnChannel(A){var Q;let B=(0,VT.hrTime)(),Y=(Q=A[i0.CHANNEL_SPANS_NOT_ENDED])!==null&&Q!==void 0?Q:[],J,{consumeTimeoutMs:C}=this.getConfig();for(J=0;J{var w30=cF&&cF.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),ILQ=cF&&cF.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))w30(Q,A,B)};Object.defineProperty(cF,"__esModule",{value:!0});ILQ(VLQ(),cF);ILQ(Hs(),cF)});var zs=R((wLQ)=>{Object.defineProperty(wLQ,"__esModule",{value:!0});wLQ.AbstractAsyncHooksContextManager=void 0;var x30=u("events"),f30=["addListener","on","once","prependListener","prependOnceListener"];class RLQ{constructor(){this._kOtListeners=Symbol("OtListeners"),this._wrapped=!1}bind(A,Q){if(Q instanceof x30.EventEmitter)return this._bindEventEmitter(A,Q);if(typeof Q==="function")return this._bindFunction(A,Q);return Q}_bindFunction(A,Q){let B=this,Y=function(...J){return B.with(A,()=>Q.apply(this,J))};return Object.defineProperty(Y,"length",{enumerable:!1,configurable:!0,writable:!1,value:Q.length}),Y}_bindEventEmitter(A,Q){if(this._getPatchMap(Q)!==void 0)return Q;if(this._createPatchMap(Q),f30.forEach((Y)=>{if(Q[Y]===void 0)return;Q[Y]=this._patchAddListener(Q,Q[Y],A)}),typeof Q.removeListener==="function")Q.removeListener=this._patchRemoveListener(Q,Q.removeListener);if(typeof Q.off==="function")Q.off=this._patchRemoveListener(Q,Q.off);if(typeof Q.removeAllListeners==="function")Q.removeAllListeners=this._patchRemoveAllListeners(Q,Q.removeAllListeners);return Q}_patchRemoveListener(A,Q){let B=this;return function(Y,J){var C;let X=(C=B._getPatchMap(A))===null||C===void 0?void 0:C[Y];if(X===void 0)return Q.call(this,Y,J);let G=X.get(J);return Q.call(this,Y,G||J)}}_patchRemoveAllListeners(A,Q){let B=this;return function(Y){let J=B._getPatchMap(A);if(J!==void 0){if(arguments.length===0)B._createPatchMap(A);else if(J[Y]!==void 0)delete J[Y]}return Q.apply(this,arguments)}}_patchAddListener(A,Q,B){let Y=this;return function(J,C){if(Y._wrapped)return Q.call(this,J,C);let X=Y._getPatchMap(A);if(X===void 0)X=Y._createPatchMap(A);let G=X[J];if(G===void 0)G=new WeakMap,X[J]=G;let F=Y.bind(B,C);G.set(C,F),Y._wrapped=!0;try{return Q.call(this,J,F)}finally{Y._wrapped=!1}}}_createPatchMap(A){let Q=Object.create(null);return A[this._kOtListeners]=Q,Q}_getPatchMap(A){return A[this._kOtListeners]}}wLQ.AbstractAsyncHooksContextManager=RLQ});var SLQ=R((PLQ)=>{Object.defineProperty(PLQ,"__esModule",{value:!0});PLQ.AsyncHooksContextManager=void 0;var b30=yA(),m30=u("async_hooks"),u30=zs();class OLQ extends u30.AbstractAsyncHooksContextManager{constructor(){super();this._contexts=new Map,this._stack=[],this._asyncHook=m30.createHook({init:this._init.bind(this),before:this._before.bind(this),after:this._after.bind(this),destroy:this._destroy.bind(this),promiseResolve:this._destroy.bind(this)})}active(){var A;return(A=this._stack[this._stack.length-1])!==null&&A!==void 0?A:b30.ROOT_CONTEXT}with(A,Q,B,...Y){this._enterContext(A);try{return Q.call(B,...Y)}finally{this._exitContext()}}enable(){return this._asyncHook.enable(),this}disable(){return this._asyncHook.disable(),this._contexts.clear(),this._stack=[],this}_init(A,Q){if(Q==="TIMERWRAP")return;let B=this._stack[this._stack.length-1];if(B!==void 0)this._contexts.set(A,B)}_destroy(A){this._contexts.delete(A)}_before(A){let Q=this._contexts.get(A);if(Q!==void 0)this._enterContext(Q)}_after(){this._exitContext()}_enterContext(A){this._stack.push(A)}_exitContext(){this._stack.pop()}}PLQ.AsyncHooksContextManager=OLQ});var yLQ=R((_LQ)=>{Object.defineProperty(_LQ,"__esModule",{value:!0});_LQ.AsyncLocalStorageContextManager=void 0;var d30=yA(),c30=u("async_hooks"),l30=zs();class kLQ extends l30.AbstractAsyncHooksContextManager{constructor(){super();this._asyncLocalStorage=new c30.AsyncLocalStorage}active(){var A;return(A=this._asyncLocalStorage.getStore())!==null&&A!==void 0?A:d30.ROOT_CONTEXT}with(A,Q,B,...Y){let J=B==null?Q:Q.bind(B);return this._asyncLocalStorage.run(A,J,...Y)}enable(){return this}disable(){return this._asyncLocalStorage.disable(),this}}_LQ.AsyncLocalStorageContextManager=kLQ});var hLQ=R((qT)=>{Object.defineProperty(qT,"__esModule",{value:!0});qT.AsyncLocalStorageContextManager=qT.AsyncHooksContextManager=void 0;var p30=SLQ();Object.defineProperty(qT,"AsyncHooksContextManager",{enumerable:!0,get:function(){return p30.AsyncHooksContextManager}});var i30=yLQ();Object.defineProperty(qT,"AsyncLocalStorageContextManager",{enumerable:!0,get:function(){return i30.AsyncLocalStorageContextManager}})});var Q0=R((PiY,YqQ)=>{YqQ.exports={kClose:Symbol("close"),kDestroy:Symbol("destroy"),kDispatch:Symbol("dispatch"),kUrl:Symbol("url"),kWriting:Symbol("writing"),kResuming:Symbol("resuming"),kQueue:Symbol("queue"),kConnect:Symbol("connect"),kConnecting:Symbol("connecting"),kKeepAliveDefaultTimeout:Symbol("default keep alive timeout"),kKeepAliveMaxTimeout:Symbol("max keep alive timeout"),kKeepAliveTimeoutThreshold:Symbol("keep alive timeout threshold"),kKeepAliveTimeoutValue:Symbol("keep alive timeout"),kKeepAlive:Symbol("keep alive"),kHeadersTimeout:Symbol("headers timeout"),kBodyTimeout:Symbol("body timeout"),kServerName:Symbol("server name"),kLocalAddress:Symbol("local address"),kHost:Symbol("host"),kNoRef:Symbol("no ref"),kBodyUsed:Symbol("used"),kBody:Symbol("abstracted request body"),kRunning:Symbol("running"),kBlocking:Symbol("blocking"),kPending:Symbol("pending"),kSize:Symbol("size"),kBusy:Symbol("busy"),kQueued:Symbol("queued"),kFree:Symbol("free"),kConnected:Symbol("connected"),kClosed:Symbol("closed"),kNeedDrain:Symbol("need drain"),kReset:Symbol("reset"),kDestroyed:Symbol.for("nodejs.stream.destroyed"),kResume:Symbol("resume"),kOnError:Symbol("on error"),kMaxHeadersSize:Symbol("max headers size"),kRunningIdx:Symbol("running index"),kPendingIdx:Symbol("pending index"),kError:Symbol("error"),kClients:Symbol("clients"),kClient:Symbol("client"),kParser:Symbol("parser"),kOnDestroyed:Symbol("destroy callbacks"),kPipelining:Symbol("pipelining"),kSocket:Symbol("socket"),kHostHeader:Symbol("host header"),kConnector:Symbol("connector"),kStrictContentLength:Symbol("strict content length"),kMaxRedirections:Symbol("maxRedirections"),kMaxRequests:Symbol("maxRequestsPerClient"),kProxy:Symbol("proxy agent options"),kCounter:Symbol("socket request counter"),kMaxResponseSize:Symbol("max response size"),kHTTP2Session:Symbol("http2Session"),kHTTP2SessionState:Symbol("http2Session state"),kRetryHandlerDefaultRetry:Symbol("retry agent default retry"),kConstruct:Symbol("constructable"),kListeners:Symbol("listeners"),kHTTPContext:Symbol("http context"),kMaxConcurrentStreams:Symbol("max concurrent streams"),kNoProxyAgent:Symbol("no proxy agent"),kHttpProxyAgent:Symbol("http proxy agent"),kHttpsProxyAgent:Symbol("https proxy agent")}});var ms=R((TiY,GqQ)=>{var hK=0,vs=1000,ys=(vs>>1)-1,lF,hs=Symbol("kFastTimer"),zG=[],gs=-2,xs=-1,CqQ=0,JqQ=1;function fs(){hK+=ys;let A=0,Q=zG.length;while(A=B._idleStart+B._idleTimeout)B._state=xs,B._idleStart=-1,B._onTimeout(B._timerArg);if(B._state===xs){if(B._state=gs,--Q!==0)zG[A]=zG[Q]}else++A}if(zG.length=Q,zG.length!==0)XqQ()}function XqQ(){if(lF?.refresh)lF.refresh();else clearTimeout(lF),lF=setTimeout(fs,ys),lF?.unref()}class bs{[hs]=!0;_state=gs;_idleTimeout=-1;_idleStart=-1;_onTimeout;_timerArg;constructor(A,Q,B){this._onTimeout=A,this._idleTimeout=Q,this._timerArg=B,this.refresh()}refresh(){if(this._state===gs)zG.push(this);if(!lF||zG.length===1)XqQ();this._state=CqQ}clear(){this._state=xs,this._idleStart=-1}}GqQ.exports={setTimeout(A,Q,B){return Q<=vs?setTimeout(A,Q,B):new bs(A,Q,B)},clearTimeout(A){if(A[hs])A.clear();else clearTimeout(A)},setFastTimeout(A,Q,B){return new bs(A,Q,B)},clearFastTimeout(A){A.clear()},now(){return hK},tick(A=0){hK+=A-vs+1,fs(),fs()},reset(){hK=0,zG.length=0,clearTimeout(lF),lF=null},kFastTimer:hs}});var QB=R((SiY,tqQ)=>{var FqQ=Symbol.for("undici.error.UND_ERR");class n0 extends Error{constructor(A,Q){super(A,Q);this.name="UndiciError",this.code="UND_ERR"}static[Symbol.hasInstance](A){return A&&A[FqQ]===!0}get[FqQ](){return!0}}var WqQ=Symbol.for("undici.error.UND_ERR_CONNECT_TIMEOUT");class kqQ extends n0{constructor(A){super(A);this.name="ConnectTimeoutError",this.message=A||"Connect Timeout Error",this.code="UND_ERR_CONNECT_TIMEOUT"}static[Symbol.hasInstance](A){return A&&A[WqQ]===!0}get[WqQ](){return!0}}var ZqQ=Symbol.for("undici.error.UND_ERR_HEADERS_TIMEOUT");class _qQ extends n0{constructor(A){super(A);this.name="HeadersTimeoutError",this.message=A||"Headers Timeout Error",this.code="UND_ERR_HEADERS_TIMEOUT"}static[Symbol.hasInstance](A){return A&&A[ZqQ]===!0}get[ZqQ](){return!0}}var $qQ=Symbol.for("undici.error.UND_ERR_HEADERS_OVERFLOW");class vqQ extends n0{constructor(A){super(A);this.name="HeadersOverflowError",this.message=A||"Headers Overflow Error",this.code="UND_ERR_HEADERS_OVERFLOW"}static[Symbol.hasInstance](A){return A&&A[$qQ]===!0}get[$qQ](){return!0}}var UqQ=Symbol.for("undici.error.UND_ERR_BODY_TIMEOUT");class yqQ extends n0{constructor(A){super(A);this.name="BodyTimeoutError",this.message=A||"Body Timeout Error",this.code="UND_ERR_BODY_TIMEOUT"}static[Symbol.hasInstance](A){return A&&A[UqQ]===!0}get[UqQ](){return!0}}var EqQ=Symbol.for("undici.error.UND_ERR_INVALID_ARG");class hqQ extends n0{constructor(A){super(A);this.name="InvalidArgumentError",this.message=A||"Invalid Argument Error",this.code="UND_ERR_INVALID_ARG"}static[Symbol.hasInstance](A){return A&&A[EqQ]===!0}get[EqQ](){return!0}}var KqQ=Symbol.for("undici.error.UND_ERR_INVALID_RETURN_VALUE");class gqQ extends n0{constructor(A){super(A);this.name="InvalidReturnValueError",this.message=A||"Invalid Return Value Error",this.code="UND_ERR_INVALID_RETURN_VALUE"}static[Symbol.hasInstance](A){return A&&A[KqQ]===!0}get[KqQ](){return!0}}var VqQ=Symbol.for("undici.error.UND_ERR_ABORT");class us extends n0{constructor(A){super(A);this.name="AbortError",this.message=A||"The operation was aborted",this.code="UND_ERR_ABORT"}static[Symbol.hasInstance](A){return A&&A[VqQ]===!0}get[VqQ](){return!0}}var IqQ=Symbol.for("undici.error.UND_ERR_ABORTED");class xqQ extends us{constructor(A){super(A);this.name="AbortError",this.message=A||"Request aborted",this.code="UND_ERR_ABORTED"}static[Symbol.hasInstance](A){return A&&A[IqQ]===!0}get[IqQ](){return!0}}var HqQ=Symbol.for("undici.error.UND_ERR_INFO");class fqQ extends n0{constructor(A){super(A);this.name="InformationalError",this.message=A||"Request information",this.code="UND_ERR_INFO"}static[Symbol.hasInstance](A){return A&&A[HqQ]===!0}get[HqQ](){return!0}}var DqQ=Symbol.for("undici.error.UND_ERR_REQ_CONTENT_LENGTH_MISMATCH");class bqQ extends n0{constructor(A){super(A);this.name="RequestContentLengthMismatchError",this.message=A||"Request body length does not match content-length header",this.code="UND_ERR_REQ_CONTENT_LENGTH_MISMATCH"}static[Symbol.hasInstance](A){return A&&A[DqQ]===!0}get[DqQ](){return!0}}var NqQ=Symbol.for("undici.error.UND_ERR_RES_CONTENT_LENGTH_MISMATCH");class mqQ extends n0{constructor(A){super(A);this.name="ResponseContentLengthMismatchError",this.message=A||"Response body length does not match content-length header",this.code="UND_ERR_RES_CONTENT_LENGTH_MISMATCH"}static[Symbol.hasInstance](A){return A&&A[NqQ]===!0}get[NqQ](){return!0}}var LqQ=Symbol.for("undici.error.UND_ERR_DESTROYED");class uqQ extends n0{constructor(A){super(A);this.name="ClientDestroyedError",this.message=A||"The client is destroyed",this.code="UND_ERR_DESTROYED"}static[Symbol.hasInstance](A){return A&&A[LqQ]===!0}get[LqQ](){return!0}}var qqQ=Symbol.for("undici.error.UND_ERR_CLOSED");class dqQ extends n0{constructor(A){super(A);this.name="ClientClosedError",this.message=A||"The client is closed",this.code="UND_ERR_CLOSED"}static[Symbol.hasInstance](A){return A&&A[qqQ]===!0}get[qqQ](){return!0}}var MqQ=Symbol.for("undici.error.UND_ERR_SOCKET");class cqQ extends n0{constructor(A,Q){super(A);this.name="SocketError",this.message=A||"Socket error",this.code="UND_ERR_SOCKET",this.socket=Q}static[Symbol.hasInstance](A){return A&&A[MqQ]===!0}get[MqQ](){return!0}}var zqQ=Symbol.for("undici.error.UND_ERR_NOT_SUPPORTED");class lqQ extends n0{constructor(A){super(A);this.name="NotSupportedError",this.message=A||"Not supported error",this.code="UND_ERR_NOT_SUPPORTED"}static[Symbol.hasInstance](A){return A&&A[zqQ]===!0}get[zqQ](){return!0}}var RqQ=Symbol.for("undici.error.UND_ERR_BPL_MISSING_UPSTREAM");class pqQ extends n0{constructor(A){super(A);this.name="MissingUpstreamError",this.message=A||"No upstream has been added to the BalancedPool",this.code="UND_ERR_BPL_MISSING_UPSTREAM"}static[Symbol.hasInstance](A){return A&&A[RqQ]===!0}get[RqQ](){return!0}}var wqQ=Symbol.for("undici.error.UND_ERR_HTTP_PARSER");class iqQ extends Error{constructor(A,Q,B){super(A);this.name="HTTPParserError",this.code=Q?`HPE_${Q}`:void 0,this.data=B?B.toString():void 0}static[Symbol.hasInstance](A){return A&&A[wqQ]===!0}get[wqQ](){return!0}}var jqQ=Symbol.for("undici.error.UND_ERR_RES_EXCEEDED_MAX_SIZE");class nqQ extends n0{constructor(A){super(A);this.name="ResponseExceededMaxSizeError",this.message=A||"Response content exceeded max size",this.code="UND_ERR_RES_EXCEEDED_MAX_SIZE"}static[Symbol.hasInstance](A){return A&&A[jqQ]===!0}get[jqQ](){return!0}}var OqQ=Symbol.for("undici.error.UND_ERR_REQ_RETRY");class sqQ extends n0{constructor(A,Q,{headers:B,data:Y}){super(A);this.name="RequestRetryError",this.message=A||"Request retry error",this.code="UND_ERR_REQ_RETRY",this.statusCode=Q,this.data=Y,this.headers=B}static[Symbol.hasInstance](A){return A&&A[OqQ]===!0}get[OqQ](){return!0}}var PqQ=Symbol.for("undici.error.UND_ERR_RESPONSE");class rqQ extends n0{constructor(A,Q,{headers:B,body:Y}){super(A);this.name="ResponseError",this.message=A||"Response error",this.code="UND_ERR_RESPONSE",this.statusCode=Q,this.body=Y,this.headers=B}static[Symbol.hasInstance](A){return A&&A[PqQ]===!0}get[PqQ](){return!0}}var TqQ=Symbol.for("undici.error.UND_ERR_PRX_TLS");class aqQ extends n0{constructor(A,Q,B={}){super(Q,{cause:A,...B});this.name="SecureProxyConnectionError",this.message=Q||"Secure Proxy Connection failed",this.code="UND_ERR_PRX_TLS",this.cause=A}static[Symbol.hasInstance](A){return A&&A[TqQ]===!0}get[TqQ](){return!0}}var SqQ=Symbol.for("undici.error.UND_ERR_MAX_ORIGINS_REACHED");class oqQ extends n0{constructor(A){super(A);this.name="MaxOriginsReachedError",this.message=A||"Maximum allowed origins reached",this.code="UND_ERR_MAX_ORIGINS_REACHED"}static[Symbol.hasInstance](A){return A&&A[SqQ]===!0}get[SqQ](){return!0}}tqQ.exports={AbortError:us,HTTPParserError:iqQ,UndiciError:n0,HeadersTimeoutError:_qQ,HeadersOverflowError:vqQ,BodyTimeoutError:yqQ,RequestContentLengthMismatchError:bqQ,ConnectTimeoutError:kqQ,InvalidArgumentError:hqQ,InvalidReturnValueError:gqQ,RequestAbortedError:xqQ,ClientDestroyedError:uqQ,ClientClosedError:dqQ,InformationalError:fqQ,SocketError:cqQ,NotSupportedError:lqQ,ResponseContentLengthMismatchError:mqQ,BalancedPoolMissingUpstreamError:pqQ,ResponseExceededMaxSizeError:nqQ,RequestRetryError:sqQ,ResponseError:rqQ,SecureProxyConnectionError:aqQ,MaxOriginsReachedError:oqQ}});var yT=R((kiY,AMQ)=>{var ds=["Accept","Accept-Encoding","Accept-Language","Accept-Ranges","Access-Control-Allow-Credentials","Access-Control-Allow-Headers","Access-Control-Allow-Methods","Access-Control-Allow-Origin","Access-Control-Expose-Headers","Access-Control-Max-Age","Access-Control-Request-Headers","Access-Control-Request-Method","Age","Allow","Alt-Svc","Alt-Used","Authorization","Cache-Control","Clear-Site-Data","Connection","Content-Disposition","Content-Encoding","Content-Language","Content-Length","Content-Location","Content-Range","Content-Security-Policy","Content-Security-Policy-Report-Only","Content-Type","Cookie","Cross-Origin-Embedder-Policy","Cross-Origin-Opener-Policy","Cross-Origin-Resource-Policy","Date","Device-Memory","Downlink","ECT","ETag","Expect","Expect-CT","Expires","Forwarded","From","Host","If-Match","If-Modified-Since","If-None-Match","If-Range","If-Unmodified-Since","Keep-Alive","Last-Modified","Link","Location","Max-Forwards","Origin","Permissions-Policy","Pragma","Proxy-Authenticate","Proxy-Authorization","RTT","Range","Referer","Referrer-Policy","Refresh","Retry-After","Sec-WebSocket-Accept","Sec-WebSocket-Extensions","Sec-WebSocket-Key","Sec-WebSocket-Protocol","Sec-WebSocket-Version","Server","Server-Timing","Service-Worker-Allowed","Service-Worker-Navigation-Preload","Set-Cookie","SourceMap","Strict-Transport-Security","Supports-Loading-Mode","TE","Timing-Allow-Origin","Trailer","Transfer-Encoding","Upgrade","Upgrade-Insecure-Requests","User-Agent","Vary","Via","WWW-Authenticate","X-Content-Type-Options","X-DNS-Prefetch-Control","X-Frame-Options","X-Permitted-Cross-Domain-Policies","X-Powered-By","X-Requested-With","X-XSS-Protection"],vT={};Object.setPrototypeOf(vT,null);var eqQ={};Object.setPrototypeOf(eqQ,null);function qR0(A){let Q=eqQ[A];if(Q===void 0)Q=Buffer.from(A);return Q}for(let A=0;A{var{wellknownHeaderNames:QMQ,headerNameLowerCasedRecord:MR0}=yT();class gK{value=null;left=null;middle=null;right=null;code;constructor(A,Q,B){if(B===void 0||B>=A.length)throw TypeError("Unreachable");if((this.code=A.charCodeAt(B))>127)throw TypeError("key must be ascii string");if(A.length!==++B)this.middle=new gK(A,Q,B);else this.value=Q}add(A,Q){let B=A.length;if(B===0)throw TypeError("Unreachable");let Y=0,J=this;while(!0){let C=A.charCodeAt(Y);if(C>127)throw TypeError("key must be ascii string");if(J.code===C)if(B===++Y){J.value=Q;break}else if(J.middle!==null)J=J.middle;else{J.middle=new gK(A,Q,Y);break}else if(J.code=65)J|=32;while(Y!==null){if(J===Y.code){if(Q===++B)return Y;Y=Y.middle;break}Y=Y.code{var nL=u("node:assert"),{kDestroyed:FMQ,kBodyUsed:xK,kListeners:gT,kBody:CMQ}=Q0(),{IncomingMessage:zR0}=u("node:http"),WMQ=u("node:stream"),RR0=u("node:net"),{stringify:wR0}=u("node:querystring"),{EventEmitter:jR0}=u("node:events"),hT=ms(),{InvalidArgumentError:nY,ConnectTimeoutError:OR0}=QB(),{headerNameLowerCasedRecord:PR0}=yT(),{tree:ZMQ}=JMQ(),[TR0,SR0]=process.versions.node.split(".",2).map((A)=>Number(A));class ls{constructor(A){this[CMQ]=A,this[xK]=!1}async*[Symbol.asyncIterator](){nL(!this[xK],"disturbed"),this[xK]=!0,yield*this[CMQ]}}function XMQ(){}function kR0(A){if(fT(A)){if(IMQ(A)===0)A.on("data",function(){nL(!1)});if(typeof A.readableDidRead!=="boolean")A[xK]=!1,jR0.prototype.on.call(A,"data",function(){this[xK]=!0});return A}else if(A&&typeof A.pipeTo==="function")return new ls(A);else if(A&&typeof A!=="string"&&!ArrayBuffer.isView(A)&&VMQ(A))return new ls(A);else return A}function fT(A){return A&&typeof A==="object"&&typeof A.pipe==="function"&&typeof A.on==="function"}function $MQ(A){if(A===null)return!1;else if(A instanceof Blob)return!0;else if(typeof A!=="object")return!1;else{let Q=A[Symbol.toStringTag];return(Q==="Blob"||Q==="File")&&(("stream"in A)&&typeof A.stream==="function"||("arrayBuffer"in A)&&typeof A.arrayBuffer==="function")}}function UMQ(A){return A.includes("?")||A.includes("#")}function _R0(A,Q){if(UMQ(A))throw Error('Query params cannot be passed when url already contains "?" or "#".');let B=wR0(Q);if(B)A+="?"+B;return A}function EMQ(A){let Q=parseInt(A,10);return Q===Number(A)&&Q>=0&&Q<=65535}function xT(A){return A!=null&&A[0]==="h"&&A[1]==="t"&&A[2]==="t"&&A[3]==="p"&&(A[4]===":"||A[4]==="s"&&A[5]===":")}function KMQ(A){if(typeof A==="string"){if(A=new URL(A),!xT(A.origin||A.protocol))throw new nY("Invalid URL protocol: the URL must start with `http:` or `https:`.");return A}if(!A||typeof A!=="object")throw new nY("Invalid URL: The URL argument must be a non-null object.");if(!(A instanceof URL)){if(A.port!=null&&A.port!==""&&EMQ(A.port)===!1)throw new nY("Invalid URL: port must be a valid integer or a string representation of an integer.");if(A.path!=null&&typeof A.path!=="string")throw new nY("Invalid URL path: the path must be a string or null/undefined.");if(A.pathname!=null&&typeof A.pathname!=="string")throw new nY("Invalid URL pathname: the pathname must be a string or null/undefined.");if(A.hostname!=null&&typeof A.hostname!=="string")throw new nY("Invalid URL hostname: the hostname must be a string or null/undefined.");if(A.origin!=null&&typeof A.origin!=="string")throw new nY("Invalid URL origin: the origin must be a string or null/undefined.");if(!xT(A.origin||A.protocol))throw new nY("Invalid URL protocol: the URL must start with `http:` or `https:`.");let Q=A.port!=null?A.port:A.protocol==="https:"?443:80,B=A.origin!=null?A.origin:`${A.protocol||""}//${A.hostname||""}:${Q}`,Y=A.path!=null?A.path:`${A.pathname||""}${A.search||""}`;if(B[B.length-1]==="/")B=B.slice(0,B.length-1);if(Y&&Y[0]!=="/")Y=`/${Y}`;return new URL(`${B}${Y}`)}if(!xT(A.origin||A.protocol))throw new nY("Invalid URL protocol: the URL must start with `http:` or `https:`.");return A}function vR0(A){if(A=KMQ(A),A.pathname!=="/"||A.search||A.hash)throw new nY("invalid url");return A}function yR0(A){if(A[0]==="["){let B=A.indexOf("]");return nL(B!==-1),A.substring(1,B)}let Q=A.indexOf(":");if(Q===-1)return A;return A.substring(0,Q)}function hR0(A){if(!A)return null;nL(typeof A==="string");let Q=yR0(A);if(RR0.isIP(Q))return"";return Q}function gR0(A){return JSON.parse(JSON.stringify(A))}function xR0(A){return A!=null&&typeof A[Symbol.asyncIterator]==="function"}function VMQ(A){return A!=null&&(typeof A[Symbol.iterator]==="function"||typeof A[Symbol.asyncIterator]==="function")}function IMQ(A){if(A==null)return 0;else if(fT(A)){let Q=A._readableState;return Q&&Q.objectMode===!1&&Q.ended===!0&&Number.isFinite(Q.length)?Q.length:null}else if($MQ(A))return A.size!=null?A.size:null;else if(LMQ(A))return A.byteLength;return null}function HMQ(A){return A&&!!(A.destroyed||A[FMQ]||WMQ.isDestroyed?.(A))}function DMQ(A,Q){if(A==null||!fT(A)||HMQ(A))return;if(typeof A.destroy==="function"){if(Object.getPrototypeOf(A).constructor===zR0)A.socket=null;A.destroy(Q)}else if(Q)queueMicrotask(()=>{A.emit("error",Q)});if(A.destroyed!==!0)A[FMQ]=!0}var fR0=/timeout=(\d+)/;function bR0(A){let Q=A.match(fR0);return Q?parseInt(Q[1],10)*1000:null}function NMQ(A){return typeof A==="string"?PR0[A]??A.toLowerCase():ZMQ.lookup(A)??A.toString("latin1").toLowerCase()}function mR0(A){return ZMQ.lookup(A)??A.toString("latin1").toLowerCase()}function uR0(A,Q){if(Q===void 0)Q={};for(let B=0;BX.toString("utf8")):C.toString("utf8")}}if("content-length"in Q&&"content-disposition"in Q)Q["content-disposition"]=Buffer.from(Q["content-disposition"]).toString("latin1");return Q}function dR0(A){let Q=A.length,B=Array(Q),Y=!1,J=-1,C,X,G=0;for(let F=0;FBuffer.from(Q))}function LMQ(A){return A instanceof Uint8Array||Buffer.isBuffer(A)}function lR0(A,Q,B){if(!A||typeof A!=="object")throw new nY("handler must be an object");if(typeof A.onRequestStart==="function")return;if(typeof A.onConnect!=="function")throw new nY("invalid onConnect method");if(typeof A.onError!=="function")throw new nY("invalid onError method");if(typeof A.onBodySent!=="function"&&A.onBodySent!==void 0)throw new nY("invalid onBodySent method");if(B||Q==="CONNECT"){if(typeof A.onUpgrade!=="function")throw new nY("invalid onUpgrade method")}else{if(typeof A.onHeaders!=="function")throw new nY("invalid onHeaders method");if(typeof A.onData!=="function")throw new nY("invalid onData method");if(typeof A.onComplete!=="function")throw new nY("invalid onComplete method")}}function pR0(A){return!!(A&&(WMQ.isDisturbed(A)||A[xK]))}function iR0(A){return{localAddress:A.localAddress,localPort:A.localPort,remoteAddress:A.remoteAddress,remotePort:A.remotePort,remoteFamily:A.remoteFamily,timeout:A.timeout,bytesWritten:A.bytesWritten,bytesRead:A.bytesRead}}function nR0(A){let Q;return new ReadableStream({start(){Q=A[Symbol.asyncIterator]()},pull(B){return Q.next().then(({done:Y,value:J})=>{if(Y)queueMicrotask(()=>{B.close(),B.byobRequest?.respond(0)});else{let C=Buffer.isBuffer(J)?J:Buffer.from(J);if(C.byteLength)B.enqueue(new Uint8Array(C));else return this.pull(B)}})},cancel(){return Q.return()},type:"bytes"})}function sR0(A){return A&&typeof A==="object"&&typeof A.append==="function"&&typeof A.delete==="function"&&typeof A.get==="function"&&typeof A.getAll==="function"&&typeof A.has==="function"&&typeof A.set==="function"&&A[Symbol.toStringTag]==="FormData"}function rR0(A,Q){if("addEventListener"in A)return A.addEventListener("abort",Q,{once:!0}),()=>A.removeEventListener("abort",Q);return A.once("abort",Q),()=>A.removeListener("abort",Q)}function qMQ(A){switch(A){case 34:case 40:case 41:case 44:case 47:case 58:case 59:case 60:case 61:case 62:case 63:case 64:case 91:case 92:case 93:case 123:case 125:return!1;default:return A>=33&&A<=126}}function aR0(A){if(A.length===0)return!1;for(let Q=0;Q{if(!Q.timeout)return XMQ;let B=null,Y=null,J=hT.setFastTimeout(()=>{B=setImmediate(()=>{Y=setImmediate(()=>GMQ(A.deref(),Q))})},Q.timeout);return()=>{hT.clearFastTimeout(J),clearImmediate(B),clearImmediate(Y)}}:(A,Q)=>{if(!Q.timeout)return XMQ;let B=null,Y=hT.setFastTimeout(()=>{B=setImmediate(()=>{GMQ(A.deref(),Q)})},Q.timeout);return()=>{hT.clearFastTimeout(Y),clearImmediate(B)}};function GMQ(A,Q){if(A==null)return;let B="Connect Timeout Error";if(Array.isArray(A.autoSelectFamilyAttemptedAddresses))B+=` (attempted addresses: ${A.autoSelectFamilyAttemptedAddresses.join(", ")},`;else B+=` (attempted address: ${Q.hostname}:${Q.port},`;B+=` timeout: ${Q.timeout}ms)`,DMQ(A,new OR0(B))}function Cw0(A){if(A[0]==="h"&&A[1]==="t"&&A[2]==="t"&&A[3]==="p")switch(A[4]){case":":return"http:";case"s":if(A[5]===":")return"https:"}return A.slice(0,A.indexOf(":")+1)}var MMQ=Object.create(null);MMQ.enumerable=!0;var ps={delete:"DELETE",DELETE:"DELETE",get:"GET",GET:"GET",head:"HEAD",HEAD:"HEAD",options:"OPTIONS",OPTIONS:"OPTIONS",post:"POST",POST:"POST",put:"PUT",PUT:"PUT"},zMQ={...ps,patch:"patch",PATCH:"PATCH"};Object.setPrototypeOf(ps,null);Object.setPrototypeOf(zMQ,null);RMQ.exports={kEnumerableProperty:MMQ,isDisturbed:pR0,isBlobLike:$MQ,parseOrigin:vR0,parseURL:KMQ,getServerName:hR0,isStream:fT,isIterable:VMQ,isAsyncIterable:xR0,isDestroyed:HMQ,headerNameToString:NMQ,bufferToLowerCasedHeaderName:mR0,addListener:Qw0,removeAllListeners:Bw0,errorRequest:Yw0,parseRawHeaders:dR0,encodeRawHeaders:cR0,parseHeaders:uR0,parseKeepAliveTimeout:bR0,destroy:DMQ,bodyLength:IMQ,deepClone:gR0,ReadableStreamFrom:nR0,isBuffer:LMQ,assertRequestHandler:lR0,getSocketInfo:iR0,isFormDataLike:sR0,pathHasQueryOrFragment:UMQ,serializePathWithQuery:_R0,addAbortListener:rR0,isValidHTTPToken:aR0,isValidHeaderValue:tR0,isTokenCharCode:qMQ,parseRangeHeader:Aw0,normalizedMethodRecordsBase:ps,normalizedMethodRecords:zMQ,isValidPort:EMQ,isHttpOrHttpsPrefixed:xT,nodeMajor:TR0,nodeMinor:SR0,safeHTTPMethods:Object.freeze(["GET","HEAD","OPTIONS","TRACE"]),wrapRequestBody:kR0,setupConnectTimeout:Jw0,getProtocolFromUrlString:Cw0}});var is=R((yiY,kMQ)=>{var{kConnected:wMQ,kPending:jMQ,kRunning:OMQ,kSize:PMQ,kFree:Xw0,kQueued:Gw0}=Q0();class TMQ{constructor(A){this.connected=A[wMQ],this.pending=A[jMQ],this.running=A[OMQ],this.size=A[PMQ]}}class SMQ{constructor(A){this.connected=A[wMQ],this.free=A[Xw0],this.pending=A[jMQ],this.queued=A[Gw0],this.running=A[OMQ],this.size=A[PMQ]}}kMQ.exports={ClientStats:TMQ,PoolStats:SMQ}});var O$=R((hiY,gMQ)=>{var rB=u("node:diagnostics_channel"),ns=u("node:util"),j$=ns.debuglog("undici"),sL=ns.debuglog("fetch"),bT=ns.debuglog("websocket"),Fw0={beforeConnect:rB.channel("undici:client:beforeConnect"),connected:rB.channel("undici:client:connected"),connectError:rB.channel("undici:client:connectError"),sendHeaders:rB.channel("undici:client:sendHeaders"),create:rB.channel("undici:request:create"),bodySent:rB.channel("undici:request:bodySent"),bodyChunkSent:rB.channel("undici:request:bodyChunkSent"),bodyChunkReceived:rB.channel("undici:request:bodyChunkReceived"),headers:rB.channel("undici:request:headers"),trailers:rB.channel("undici:request:trailers"),error:rB.channel("undici:request:error"),open:rB.channel("undici:websocket:open"),close:rB.channel("undici:websocket:close"),socketError:rB.channel("undici:websocket:socket_error"),ping:rB.channel("undici:websocket:ping"),pong:rB.channel("undici:websocket:pong")},_MQ=!1;function hMQ(A=j$){if(_MQ)return;_MQ=!0,rB.subscribe("undici:client:beforeConnect",(Q)=>{let{connectParams:{version:B,protocol:Y,port:J,host:C}}=Q;A("connecting to %s%s using %s%s",C,J?`:${J}`:"",Y,B)}),rB.subscribe("undici:client:connected",(Q)=>{let{connectParams:{version:B,protocol:Y,port:J,host:C}}=Q;A("connected to %s%s using %s%s",C,J?`:${J}`:"",Y,B)}),rB.subscribe("undici:client:connectError",(Q)=>{let{connectParams:{version:B,protocol:Y,port:J,host:C},error:X}=Q;A("connection to %s%s using %s%s errored - %s",C,J?`:${J}`:"",Y,B,X.message)}),rB.subscribe("undici:client:sendHeaders",(Q)=>{let{request:{method:B,path:Y,origin:J}}=Q;A("sending request to %s %s%s",B,J,Y)})}var vMQ=!1;function Ww0(A=j$){if(vMQ)return;vMQ=!0,rB.subscribe("undici:request:headers",(Q)=>{let{request:{method:B,path:Y,origin:J},response:{statusCode:C}}=Q;A("received response to %s %s%s - HTTP %d",B,J,Y,C)}),rB.subscribe("undici:request:trailers",(Q)=>{let{request:{method:B,path:Y,origin:J}}=Q;A("trailers received from %s %s%s",B,J,Y)}),rB.subscribe("undici:request:error",(Q)=>{let{request:{method:B,path:Y,origin:J},error:C}=Q;A("request to %s %s%s errored - %s",B,J,Y,C.message)})}var yMQ=!1;function Zw0(A=bT){if(yMQ)return;yMQ=!0,rB.subscribe("undici:websocket:open",(Q)=>{let{address:{address:B,port:Y}}=Q;A("connection opened %s%s",B,Y?`:${Y}`:"")}),rB.subscribe("undici:websocket:close",(Q)=>{let{websocket:B,code:Y,reason:J}=Q;A("closed connection to %s - %s %s",B.url,Y,J)}),rB.subscribe("undici:websocket:socket_error",(Q)=>{A("connection errored - %s",Q.message)}),rB.subscribe("undici:websocket:ping",(Q)=>{A("ping received")}),rB.subscribe("undici:websocket:pong",(Q)=>{A("pong received")})}if(j$.enabled||sL.enabled)hMQ(sL.enabled?sL:j$),Ww0(sL.enabled?sL:j$);if(bT.enabled)hMQ(j$.enabled?j$:bT),Zw0(bT);gMQ.exports={channels:Fw0}});var dMQ=R((giY,uMQ)=>{var{InvalidArgumentError:I0,NotSupportedError:$w0}=QB(),K6=u("node:assert"),{isValidHTTPToken:bMQ,isValidHeaderValue:xMQ,isStream:Uw0,destroy:Ew0,isBuffer:Kw0,isFormDataLike:Vw0,isIterable:Iw0,isBlobLike:Hw0,serializePathWithQuery:Dw0,assertRequestHandler:Nw0,getServerName:Lw0,normalizedMethodRecords:qw0,getProtocolFromUrlString:Mw0}=lQ(),{channels:s9}=O$(),{headerNameLowerCasedRecord:fMQ}=yT(),zw0=/[^\u0021-\u00ff]/,s5=Symbol("handler");class mMQ{constructor(A,{path:Q,method:B,body:Y,headers:J,query:C,idempotent:X,blocking:G,upgrade:F,headersTimeout:W,bodyTimeout:Z,reset:U,expectContinue:$,servername:E,throwOnError:K,maxRedirections:I},V){if(typeof Q!=="string")throw new I0("path must be a string");else if(Q[0]!=="/"&&!(Q.startsWith("http://")||Q.startsWith("https://"))&&B!=="CONNECT")throw new I0("path must be an absolute URL or start with a slash");else if(zw0.test(Q))throw new I0("invalid request path");if(typeof B!=="string")throw new I0("method must be a string");else if(qw0[B]===void 0&&!bMQ(B))throw new I0("invalid request method");if(F&&typeof F!=="string")throw new I0("upgrade must be a string");if(W!=null&&(!Number.isFinite(W)||W<0))throw new I0("invalid headersTimeout");if(Z!=null&&(!Number.isFinite(Z)||Z<0))throw new I0("invalid bodyTimeout");if(U!=null&&typeof U!=="boolean")throw new I0("invalid reset");if($!=null&&typeof $!=="boolean")throw new I0("invalid expectContinue");if(K!=null)throw new I0("invalid throwOnError");if(I!=null&&I!==0)throw new I0("maxRedirections is not supported, use the redirect interceptor");if(this.headersTimeout=W,this.bodyTimeout=Z,this.method=B,this.abort=null,Y==null)this.body=null;else if(Uw0(Y)){this.body=Y;let H=this.body._readableState;if(!H||!H.autoDestroy)this.endHandler=function(){Ew0(this)},this.body.on("end",this.endHandler);this.errorHandler=(D)=>{if(this.abort)this.abort(D);else this.error=D},this.body.on("error",this.errorHandler)}else if(Kw0(Y))this.body=Y.byteLength?Y:null;else if(ArrayBuffer.isView(Y))this.body=Y.buffer.byteLength?Buffer.from(Y.buffer,Y.byteOffset,Y.byteLength):null;else if(Y instanceof ArrayBuffer)this.body=Y.byteLength?Buffer.from(Y):null;else if(typeof Y==="string")this.body=Y.length?Buffer.from(Y):null;else if(Vw0(Y)||Iw0(Y)||Hw0(Y))this.body=Y;else throw new I0("body must be a string, a Buffer, a Readable stream, an iterable, or an async iterable");if(this.completed=!1,this.aborted=!1,this.upgrade=F||null,this.path=C?Dw0(Q,C):Q,this.origin=A,this.protocol=Mw0(A),this.idempotent=X==null?B==="HEAD"||B==="GET":X,this.blocking=G??this.method!=="HEAD",this.reset=U==null?null:U,this.host=null,this.contentLength=null,this.contentType=null,this.headers=[],this.expectContinue=$!=null?$:!1,Array.isArray(J)){if(J.length%2!==0)throw new I0("headers array must be even");for(let H=0;H{var{InvalidArgumentError:Rw0}=QB();cMQ.exports=class A{#A;constructor(Q){this.#A=Q}static wrap(Q){return Q.onRequestStart?Q:new A(Q)}onConnect(Q,B){return this.#A.onConnect?.(Q,B)}onHeaders(Q,B,Y,J){return this.#A.onHeaders?.(Q,B,Y,J)}onUpgrade(Q,B,Y){return this.#A.onUpgrade?.(Q,B,Y)}onData(Q){return this.#A.onData?.(Q)}onComplete(Q){return this.#A.onComplete?.(Q)}onError(Q){if(!this.#A.onError)throw Q;return this.#A.onError?.(Q)}onRequestStart(Q,B){this.#A.onConnect?.((Y)=>Q.abort(Y),B)}onRequestUpgrade(Q,B,Y,J){let C=[];for(let[X,G]of Object.entries(Y))C.push(Buffer.from(X),Array.isArray(G)?G.map((F)=>Buffer.from(F)):Buffer.from(G));this.#A.onUpgrade?.(B,C,J)}onResponseStart(Q,B,Y,J){let C=[];for(let[X,G]of Object.entries(Y))C.push(Buffer.from(X),Array.isArray(G)?G.map((F)=>Buffer.from(F)):Buffer.from(G));if(this.#A.onHeaders?.(B,C,()=>Q.resume(),J)===!1)Q.pause()}onResponseData(Q,B){if(this.#A.onData?.(B)===!1)Q.pause()}onResponseEnd(Q,B){let Y=[];for(let[J,C]of Object.entries(B))Y.push(Buffer.from(J),Array.isArray(C)?C.map((X)=>Buffer.from(X)):Buffer.from(C));this.#A.onComplete?.(Y)}onResponseError(Q,B){if(!this.#A.onError)throw new Rw0("invalid onError method");this.#A.onError?.(B)}}});var aL=R((fiY,pMQ)=>{var ww0=u("node:events"),jw0=rL(),Ow0=(A)=>(Q,B)=>A(Q,jw0.wrap(B));class lMQ extends ww0{dispatch(){throw Error("not implemented")}close(){throw Error("not implemented")}destroy(){throw Error("not implemented")}compose(...A){let Q=Array.isArray(A[0])?A[0]:A,B=this.dispatch.bind(this);for(let Y of Q){if(Y==null)continue;if(typeof Y!=="function")throw TypeError(`invalid interceptor, expected function received ${typeof Y}`);if(B=Y(B),B=Ow0(B),B==null||typeof B!=="function"||B.length!==2)throw TypeError("invalid interceptor")}return new Proxy(this,{get:(Y,J)=>J==="dispatch"?B:Y[J]})}}pMQ.exports=lMQ});var sMQ=R((biY,nMQ)=>{var{parseHeaders:ss}=lQ(),{InvalidArgumentError:Pw0}=QB(),rs=Symbol("resume");class iMQ{#A=!1;#Q=null;#B=!1;#Y;[rs]=null;constructor(A){this.#Y=A}pause(){this.#A=!0}resume(){if(this.#A)this.#A=!1,this[rs]?.()}abort(A){if(!this.#B)this.#B=!0,this.#Q=A,this.#Y(A)}get aborted(){return this.#B}get reason(){return this.#Q}get paused(){return this.#A}}nMQ.exports=class A{#A;#Q;constructor(Q){this.#A=Q}static unwrap(Q){return!Q.onRequestStart?Q:new A(Q)}onConnect(Q,B){this.#Q=new iMQ(Q),this.#A.onRequestStart?.(this.#Q,B)}onUpgrade(Q,B,Y){this.#A.onRequestUpgrade?.(this.#Q,Q,ss(B),Y)}onHeaders(Q,B,Y,J){return this.#Q[rs]=Y,this.#A.onResponseStart?.(this.#Q,Q,ss(B),J),!this.#Q.paused}onData(Q){return this.#A.onResponseData?.(this.#Q,Q),!this.#Q.paused}onComplete(Q){this.#A.onResponseEnd?.(this.#Q,ss(Q))}onError(Q){if(!this.#A.onResponseError)throw new Pw0("invalid onError method");this.#A.onResponseError?.(this.#Q,Q)}}});var P$=R((miY,aMQ)=>{var Tw0=aL(),Sw0=sMQ(),{ClientDestroyedError:as,ClientClosedError:kw0,InvalidArgumentError:uT}=QB(),{kDestroy:_w0,kClose:vw0,kClosed:oL,kDestroyed:fK,kDispatch:yw0}=Q0(),RG=Symbol("onDestroyed"),bK=Symbol("onClosed");class rMQ extends Tw0{[fK]=!1;[RG]=null;[oL]=!1;[bK]=[];get destroyed(){return this[fK]}get closed(){return this[oL]}close(A){if(A===void 0)return new Promise((B,Y)=>{this.close((J,C)=>{return J?Y(J):B(C)})});if(typeof A!=="function")throw new uT("invalid callback");if(this[fK]){queueMicrotask(()=>A(new as,null));return}if(this[oL]){if(this[bK])this[bK].push(A);else queueMicrotask(()=>A(null,null));return}this[oL]=!0,this[bK].push(A);let Q=()=>{let B=this[bK];this[bK]=null;for(let Y=0;Ythis.destroy()).then(()=>{queueMicrotask(Q)})}destroy(A,Q){if(typeof A==="function")Q=A,A=null;if(Q===void 0)return new Promise((Y,J)=>{this.destroy(A,(C,X)=>{return C?J(C):Y(X)})});if(typeof Q!=="function")throw new uT("invalid callback");if(this[fK]){if(this[RG])this[RG].push(Q);else queueMicrotask(()=>Q(null,null));return}if(!A)A=new as;this[fK]=!0,this[RG]=this[RG]||[],this[RG].push(Q);let B=()=>{let Y=this[RG];this[RG]=null;for(let J=0;J{queueMicrotask(B)})}dispatch(A,Q){if(!Q||typeof Q!=="object")throw new uT("handler must be an object");Q=Sw0.unwrap(Q);try{if(!A||typeof A!=="object")throw new uT("opts must be an object.");if(this[fK]||this[RG])throw new as;if(this[oL])throw new kw0;return this[yw0](A,Q)}catch(B){if(typeof Q.onError!=="function")throw B;return Q.onError(B),!1}}}aMQ.exports=rMQ});var tL=R((uiY,eMQ)=>{var hw0=u("node:net"),oMQ=u("node:assert"),tMQ=lQ(),{InvalidArgumentError:gw0}=QB(),os,xw0=class{constructor(Q){this._maxCachedSessions=Q,this._sessionCache=new Map,this._sessionRegistry=new FinalizationRegistry((B)=>{if(this._sessionCache.size{Object.defineProperty(AzQ,"__esModule",{value:!0});AzQ.enumToMap=bw0;function bw0(A,Q=[],B=[]){let Y=(Q?.length??0)===0,J=(B?.length??0)===0;return Object.fromEntries(Object.entries(A).filter(([,C])=>{return typeof C==="number"&&(Y||Q.includes(C))&&(J||!B.includes(C))}))}});var qzQ=R((BzQ)=>{Object.defineProperty(BzQ,"__esModule",{value:!0});BzQ.SPECIAL_HEADERS=BzQ.MINOR=BzQ.MAJOR=BzQ.HTAB_SP_VCHAR_OBS_TEXT=BzQ.QUOTED_STRING=BzQ.CONNECTION_TOKEN_CHARS=BzQ.HEADER_CHARS=BzQ.TOKEN=BzQ.HEX=BzQ.URL_CHAR=BzQ.USERINFO_CHARS=BzQ.MARK=BzQ.ALPHANUM=BzQ.NUM=BzQ.HEX_MAP=BzQ.NUM_MAP=BzQ.ALPHA=BzQ.STATUSES_HTTP=BzQ.H_METHOD_MAP=BzQ.METHOD_MAP=BzQ.METHODS_RTSP=BzQ.METHODS_ICE=BzQ.METHODS_HTTP=BzQ.HEADER_STATE=BzQ.FINISH=BzQ.STATUSES=BzQ.METHODS=BzQ.LENIENT_FLAGS=BzQ.FLAGS=BzQ.TYPE=BzQ.ERROR=void 0;var uw0=QzQ();BzQ.ERROR={OK:0,INTERNAL:1,STRICT:2,CR_EXPECTED:25,LF_EXPECTED:3,UNEXPECTED_CONTENT_LENGTH:4,UNEXPECTED_SPACE:30,CLOSED_CONNECTION:5,INVALID_METHOD:6,INVALID_URL:7,INVALID_CONSTANT:8,INVALID_VERSION:9,INVALID_HEADER_TOKEN:10,INVALID_CONTENT_LENGTH:11,INVALID_CHUNK_SIZE:12,INVALID_STATUS:13,INVALID_EOF_STATE:14,INVALID_TRANSFER_ENCODING:15,CB_MESSAGE_BEGIN:16,CB_HEADERS_COMPLETE:17,CB_MESSAGE_COMPLETE:18,CB_CHUNK_HEADER:19,CB_CHUNK_COMPLETE:20,PAUSED:21,PAUSED_UPGRADE:22,PAUSED_H2_UPGRADE:23,USER:24,CB_URL_COMPLETE:26,CB_STATUS_COMPLETE:27,CB_METHOD_COMPLETE:32,CB_VERSION_COMPLETE:33,CB_HEADER_FIELD_COMPLETE:28,CB_HEADER_VALUE_COMPLETE:29,CB_CHUNK_EXTENSION_NAME_COMPLETE:34,CB_CHUNK_EXTENSION_VALUE_COMPLETE:35,CB_RESET:31,CB_PROTOCOL_COMPLETE:38};BzQ.TYPE={BOTH:0,REQUEST:1,RESPONSE:2};BzQ.FLAGS={CONNECTION_KEEP_ALIVE:1,CONNECTION_CLOSE:2,CONNECTION_UPGRADE:4,CHUNKED:8,UPGRADE:16,CONTENT_LENGTH:32,SKIPBODY:64,TRAILING:128,TRANSFER_ENCODING:512};BzQ.LENIENT_FLAGS={HEADERS:1,CHUNKED_LENGTH:2,KEEP_ALIVE:4,TRANSFER_ENCODING:8,VERSION:16,DATA_AFTER_CLOSE:32,OPTIONAL_LF_AFTER_CR:64,OPTIONAL_CRLF_AFTER_CHUNK:128,OPTIONAL_CR_BEFORE_LF:256,SPACES_AFTER_CHUNK_SIZE:512};BzQ.METHODS={DELETE:0,GET:1,HEAD:2,POST:3,PUT:4,CONNECT:5,OPTIONS:6,TRACE:7,COPY:8,LOCK:9,MKCOL:10,MOVE:11,PROPFIND:12,PROPPATCH:13,SEARCH:14,UNLOCK:15,BIND:16,REBIND:17,UNBIND:18,ACL:19,REPORT:20,MKACTIVITY:21,CHECKOUT:22,MERGE:23,"M-SEARCH":24,NOTIFY:25,SUBSCRIBE:26,UNSUBSCRIBE:27,PATCH:28,PURGE:29,MKCALENDAR:30,LINK:31,UNLINK:32,SOURCE:33,PRI:34,DESCRIBE:35,ANNOUNCE:36,SETUP:37,PLAY:38,PAUSE:39,TEARDOWN:40,GET_PARAMETER:41,SET_PARAMETER:42,REDIRECT:43,RECORD:44,FLUSH:45,QUERY:46};BzQ.STATUSES={CONTINUE:100,SWITCHING_PROTOCOLS:101,PROCESSING:102,EARLY_HINTS:103,RESPONSE_IS_STALE:110,REVALIDATION_FAILED:111,DISCONNECTED_OPERATION:112,HEURISTIC_EXPIRATION:113,MISCELLANEOUS_WARNING:199,OK:200,CREATED:201,ACCEPTED:202,NON_AUTHORITATIVE_INFORMATION:203,NO_CONTENT:204,RESET_CONTENT:205,PARTIAL_CONTENT:206,MULTI_STATUS:207,ALREADY_REPORTED:208,TRANSFORMATION_APPLIED:214,IM_USED:226,MISCELLANEOUS_PERSISTENT_WARNING:299,MULTIPLE_CHOICES:300,MOVED_PERMANENTLY:301,FOUND:302,SEE_OTHER:303,NOT_MODIFIED:304,USE_PROXY:305,SWITCH_PROXY:306,TEMPORARY_REDIRECT:307,PERMANENT_REDIRECT:308,BAD_REQUEST:400,UNAUTHORIZED:401,PAYMENT_REQUIRED:402,FORBIDDEN:403,NOT_FOUND:404,METHOD_NOT_ALLOWED:405,NOT_ACCEPTABLE:406,PROXY_AUTHENTICATION_REQUIRED:407,REQUEST_TIMEOUT:408,CONFLICT:409,GONE:410,LENGTH_REQUIRED:411,PRECONDITION_FAILED:412,PAYLOAD_TOO_LARGE:413,URI_TOO_LONG:414,UNSUPPORTED_MEDIA_TYPE:415,RANGE_NOT_SATISFIABLE:416,EXPECTATION_FAILED:417,IM_A_TEAPOT:418,PAGE_EXPIRED:419,ENHANCE_YOUR_CALM:420,MISDIRECTED_REQUEST:421,UNPROCESSABLE_ENTITY:422,LOCKED:423,FAILED_DEPENDENCY:424,TOO_EARLY:425,UPGRADE_REQUIRED:426,PRECONDITION_REQUIRED:428,TOO_MANY_REQUESTS:429,REQUEST_HEADER_FIELDS_TOO_LARGE_UNOFFICIAL:430,REQUEST_HEADER_FIELDS_TOO_LARGE:431,LOGIN_TIMEOUT:440,NO_RESPONSE:444,RETRY_WITH:449,BLOCKED_BY_PARENTAL_CONTROL:450,UNAVAILABLE_FOR_LEGAL_REASONS:451,CLIENT_CLOSED_LOAD_BALANCED_REQUEST:460,INVALID_X_FORWARDED_FOR:463,REQUEST_HEADER_TOO_LARGE:494,SSL_CERTIFICATE_ERROR:495,SSL_CERTIFICATE_REQUIRED:496,HTTP_REQUEST_SENT_TO_HTTPS_PORT:497,INVALID_TOKEN:498,CLIENT_CLOSED_REQUEST:499,INTERNAL_SERVER_ERROR:500,NOT_IMPLEMENTED:501,BAD_GATEWAY:502,SERVICE_UNAVAILABLE:503,GATEWAY_TIMEOUT:504,HTTP_VERSION_NOT_SUPPORTED:505,VARIANT_ALSO_NEGOTIATES:506,INSUFFICIENT_STORAGE:507,LOOP_DETECTED:508,BANDWIDTH_LIMIT_EXCEEDED:509,NOT_EXTENDED:510,NETWORK_AUTHENTICATION_REQUIRED:511,WEB_SERVER_UNKNOWN_ERROR:520,WEB_SERVER_IS_DOWN:521,CONNECTION_TIMEOUT:522,ORIGIN_IS_UNREACHABLE:523,TIMEOUT_OCCURED:524,SSL_HANDSHAKE_FAILED:525,INVALID_SSL_CERTIFICATE:526,RAILGUN_ERROR:527,SITE_IS_OVERLOADED:529,SITE_IS_FROZEN:530,IDENTITY_PROVIDER_AUTHENTICATION_ERROR:561,NETWORK_READ_TIMEOUT:598,NETWORK_CONNECT_TIMEOUT:599};BzQ.FINISH={SAFE:0,SAFE_WITH_CB:1,UNSAFE:2};BzQ.HEADER_STATE={GENERAL:0,CONNECTION:1,CONTENT_LENGTH:2,TRANSFER_ENCODING:3,UPGRADE:4,CONNECTION_KEEP_ALIVE:5,CONNECTION_CLOSE:6,CONNECTION_UPGRADE:7,TRANSFER_ENCODING_CHUNKED:8};BzQ.METHODS_HTTP=[BzQ.METHODS.DELETE,BzQ.METHODS.GET,BzQ.METHODS.HEAD,BzQ.METHODS.POST,BzQ.METHODS.PUT,BzQ.METHODS.CONNECT,BzQ.METHODS.OPTIONS,BzQ.METHODS.TRACE,BzQ.METHODS.COPY,BzQ.METHODS.LOCK,BzQ.METHODS.MKCOL,BzQ.METHODS.MOVE,BzQ.METHODS.PROPFIND,BzQ.METHODS.PROPPATCH,BzQ.METHODS.SEARCH,BzQ.METHODS.UNLOCK,BzQ.METHODS.BIND,BzQ.METHODS.REBIND,BzQ.METHODS.UNBIND,BzQ.METHODS.ACL,BzQ.METHODS.REPORT,BzQ.METHODS.MKACTIVITY,BzQ.METHODS.CHECKOUT,BzQ.METHODS.MERGE,BzQ.METHODS["M-SEARCH"],BzQ.METHODS.NOTIFY,BzQ.METHODS.SUBSCRIBE,BzQ.METHODS.UNSUBSCRIBE,BzQ.METHODS.PATCH,BzQ.METHODS.PURGE,BzQ.METHODS.MKCALENDAR,BzQ.METHODS.LINK,BzQ.METHODS.UNLINK,BzQ.METHODS.PRI,BzQ.METHODS.SOURCE,BzQ.METHODS.QUERY];BzQ.METHODS_ICE=[BzQ.METHODS.SOURCE];BzQ.METHODS_RTSP=[BzQ.METHODS.OPTIONS,BzQ.METHODS.DESCRIBE,BzQ.METHODS.ANNOUNCE,BzQ.METHODS.SETUP,BzQ.METHODS.PLAY,BzQ.METHODS.PAUSE,BzQ.METHODS.TEARDOWN,BzQ.METHODS.GET_PARAMETER,BzQ.METHODS.SET_PARAMETER,BzQ.METHODS.REDIRECT,BzQ.METHODS.RECORD,BzQ.METHODS.FLUSH,BzQ.METHODS.GET,BzQ.METHODS.POST];BzQ.METHOD_MAP=(0,uw0.enumToMap)(BzQ.METHODS);BzQ.H_METHOD_MAP=Object.fromEntries(Object.entries(BzQ.METHODS).filter(([A])=>A.startsWith("H")));BzQ.STATUSES_HTTP=[BzQ.STATUSES.CONTINUE,BzQ.STATUSES.SWITCHING_PROTOCOLS,BzQ.STATUSES.PROCESSING,BzQ.STATUSES.EARLY_HINTS,BzQ.STATUSES.RESPONSE_IS_STALE,BzQ.STATUSES.REVALIDATION_FAILED,BzQ.STATUSES.DISCONNECTED_OPERATION,BzQ.STATUSES.HEURISTIC_EXPIRATION,BzQ.STATUSES.MISCELLANEOUS_WARNING,BzQ.STATUSES.OK,BzQ.STATUSES.CREATED,BzQ.STATUSES.ACCEPTED,BzQ.STATUSES.NON_AUTHORITATIVE_INFORMATION,BzQ.STATUSES.NO_CONTENT,BzQ.STATUSES.RESET_CONTENT,BzQ.STATUSES.PARTIAL_CONTENT,BzQ.STATUSES.MULTI_STATUS,BzQ.STATUSES.ALREADY_REPORTED,BzQ.STATUSES.TRANSFORMATION_APPLIED,BzQ.STATUSES.IM_USED,BzQ.STATUSES.MISCELLANEOUS_PERSISTENT_WARNING,BzQ.STATUSES.MULTIPLE_CHOICES,BzQ.STATUSES.MOVED_PERMANENTLY,BzQ.STATUSES.FOUND,BzQ.STATUSES.SEE_OTHER,BzQ.STATUSES.NOT_MODIFIED,BzQ.STATUSES.USE_PROXY,BzQ.STATUSES.SWITCH_PROXY,BzQ.STATUSES.TEMPORARY_REDIRECT,BzQ.STATUSES.PERMANENT_REDIRECT,BzQ.STATUSES.BAD_REQUEST,BzQ.STATUSES.UNAUTHORIZED,BzQ.STATUSES.PAYMENT_REQUIRED,BzQ.STATUSES.FORBIDDEN,BzQ.STATUSES.NOT_FOUND,BzQ.STATUSES.METHOD_NOT_ALLOWED,BzQ.STATUSES.NOT_ACCEPTABLE,BzQ.STATUSES.PROXY_AUTHENTICATION_REQUIRED,BzQ.STATUSES.REQUEST_TIMEOUT,BzQ.STATUSES.CONFLICT,BzQ.STATUSES.GONE,BzQ.STATUSES.LENGTH_REQUIRED,BzQ.STATUSES.PRECONDITION_FAILED,BzQ.STATUSES.PAYLOAD_TOO_LARGE,BzQ.STATUSES.URI_TOO_LONG,BzQ.STATUSES.UNSUPPORTED_MEDIA_TYPE,BzQ.STATUSES.RANGE_NOT_SATISFIABLE,BzQ.STATUSES.EXPECTATION_FAILED,BzQ.STATUSES.IM_A_TEAPOT,BzQ.STATUSES.PAGE_EXPIRED,BzQ.STATUSES.ENHANCE_YOUR_CALM,BzQ.STATUSES.MISDIRECTED_REQUEST,BzQ.STATUSES.UNPROCESSABLE_ENTITY,BzQ.STATUSES.LOCKED,BzQ.STATUSES.FAILED_DEPENDENCY,BzQ.STATUSES.TOO_EARLY,BzQ.STATUSES.UPGRADE_REQUIRED,BzQ.STATUSES.PRECONDITION_REQUIRED,BzQ.STATUSES.TOO_MANY_REQUESTS,BzQ.STATUSES.REQUEST_HEADER_FIELDS_TOO_LARGE_UNOFFICIAL,BzQ.STATUSES.REQUEST_HEADER_FIELDS_TOO_LARGE,BzQ.STATUSES.LOGIN_TIMEOUT,BzQ.STATUSES.NO_RESPONSE,BzQ.STATUSES.RETRY_WITH,BzQ.STATUSES.BLOCKED_BY_PARENTAL_CONTROL,BzQ.STATUSES.UNAVAILABLE_FOR_LEGAL_REASONS,BzQ.STATUSES.CLIENT_CLOSED_LOAD_BALANCED_REQUEST,BzQ.STATUSES.INVALID_X_FORWARDED_FOR,BzQ.STATUSES.REQUEST_HEADER_TOO_LARGE,BzQ.STATUSES.SSL_CERTIFICATE_ERROR,BzQ.STATUSES.SSL_CERTIFICATE_REQUIRED,BzQ.STATUSES.HTTP_REQUEST_SENT_TO_HTTPS_PORT,BzQ.STATUSES.INVALID_TOKEN,BzQ.STATUSES.CLIENT_CLOSED_REQUEST,BzQ.STATUSES.INTERNAL_SERVER_ERROR,BzQ.STATUSES.NOT_IMPLEMENTED,BzQ.STATUSES.BAD_GATEWAY,BzQ.STATUSES.SERVICE_UNAVAILABLE,BzQ.STATUSES.GATEWAY_TIMEOUT,BzQ.STATUSES.HTTP_VERSION_NOT_SUPPORTED,BzQ.STATUSES.VARIANT_ALSO_NEGOTIATES,BzQ.STATUSES.INSUFFICIENT_STORAGE,BzQ.STATUSES.LOOP_DETECTED,BzQ.STATUSES.BANDWIDTH_LIMIT_EXCEEDED,BzQ.STATUSES.NOT_EXTENDED,BzQ.STATUSES.NETWORK_AUTHENTICATION_REQUIRED,BzQ.STATUSES.WEB_SERVER_UNKNOWN_ERROR,BzQ.STATUSES.WEB_SERVER_IS_DOWN,BzQ.STATUSES.CONNECTION_TIMEOUT,BzQ.STATUSES.ORIGIN_IS_UNREACHABLE,BzQ.STATUSES.TIMEOUT_OCCURED,BzQ.STATUSES.SSL_HANDSHAKE_FAILED,BzQ.STATUSES.INVALID_SSL_CERTIFICATE,BzQ.STATUSES.RAILGUN_ERROR,BzQ.STATUSES.SITE_IS_OVERLOADED,BzQ.STATUSES.SITE_IS_FROZEN,BzQ.STATUSES.IDENTITY_PROVIDER_AUTHENTICATION_ERROR,BzQ.STATUSES.NETWORK_READ_TIMEOUT,BzQ.STATUSES.NETWORK_CONNECT_TIMEOUT];BzQ.ALPHA=[];for(let A=65;A<=90;A++)BzQ.ALPHA.push(String.fromCharCode(A)),BzQ.ALPHA.push(String.fromCharCode(A+32));BzQ.NUM_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9};BzQ.HEX_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15};BzQ.NUM=["0","1","2","3","4","5","6","7","8","9"];BzQ.ALPHANUM=BzQ.ALPHA.concat(BzQ.NUM);BzQ.MARK=["-","_",".","!","~","*","'","(",")"];BzQ.USERINFO_CHARS=BzQ.ALPHANUM.concat(BzQ.MARK).concat(["%",";",":","&","=","+","$",","]);BzQ.URL_CHAR=["!",'"',"$","%","&","'","(",")","*","+",",","-",".","/",":",";","<","=",">","@","[","\\","]","^","_","`","{","|","}","~"].concat(BzQ.ALPHANUM);BzQ.HEX=BzQ.NUM.concat(["a","b","c","d","e","f","A","B","C","D","E","F"]);BzQ.TOKEN=["!","#","$","%","&","'","*","+","-",".","^","_","`","|","~"].concat(BzQ.ALPHANUM);BzQ.HEADER_CHARS=["\t"];for(let A=32;A<=255;A++)if(A!==127)BzQ.HEADER_CHARS.push(A);BzQ.CONNECTION_TOKEN_CHARS=BzQ.HEADER_CHARS.filter((A)=>A!==44);BzQ.QUOTED_STRING=["\t"," "];for(let A=33;A<=255;A++)if(A!==34&&A!==92)BzQ.QUOTED_STRING.push(A);BzQ.HTAB_SP_VCHAR_OBS_TEXT=["\t"," "];for(let A=33;A<=126;A++)BzQ.HTAB_SP_VCHAR_OBS_TEXT.push(A);for(let A=128;A<=255;A++)BzQ.HTAB_SP_VCHAR_OBS_TEXT.push(A);BzQ.MAJOR=BzQ.NUM_MAP;BzQ.MINOR=BzQ.MAJOR;BzQ.SPECIAL_HEADERS={connection:BzQ.HEADER_STATE.CONNECTION,"content-length":BzQ.HEADER_STATE.CONTENT_LENGTH,"proxy-connection":BzQ.HEADER_STATE.CONNECTION,"transfer-encoding":BzQ.HEADER_STATE.TRANSFER_ENCODING,upgrade:BzQ.HEADER_STATE.UPGRADE};BzQ.default={ERROR:BzQ.ERROR,TYPE:BzQ.TYPE,FLAGS:BzQ.FLAGS,LENIENT_FLAGS:BzQ.LENIENT_FLAGS,METHODS:BzQ.METHODS,STATUSES:BzQ.STATUSES,FINISH:BzQ.FINISH,HEADER_STATE:BzQ.HEADER_STATE,ALPHA:BzQ.ALPHA,NUM_MAP:BzQ.NUM_MAP,HEX_MAP:BzQ.HEX_MAP,NUM:BzQ.NUM,ALPHANUM:BzQ.ALPHANUM,MARK:BzQ.MARK,USERINFO_CHARS:BzQ.USERINFO_CHARS,URL_CHAR:BzQ.URL_CHAR,HEX:BzQ.HEX,TOKEN:BzQ.TOKEN,HEADER_CHARS:BzQ.HEADER_CHARS,CONNECTION_TOKEN_CHARS:BzQ.CONNECTION_TOKEN_CHARS,QUOTED_STRING:BzQ.QUOTED_STRING,HTAB_SP_VCHAR_OBS_TEXT:BzQ.HTAB_SP_VCHAR_OBS_TEXT,MAJOR:BzQ.MAJOR,MINOR:BzQ.MINOR,SPECIAL_HEADERS:BzQ.SPECIAL_HEADERS,METHODS_HTTP:BzQ.METHODS_HTTP,METHODS_ICE:BzQ.METHODS_ICE,METHODS_RTSP:BzQ.METHODS_RTSP,METHOD_MAP:BzQ.METHOD_MAP,H_METHOD_MAP:BzQ.H_METHOD_MAP,STATUSES_HTTP:BzQ.STATUSES_HTTP}});var Jr=R((liY,MzQ)=>{var{Buffer:cw0}=u("node:buffer"),Yr;Object.defineProperty(MzQ,"exports",{get:()=>{return Yr?Yr:Yr=cw0.from("AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAn9/AGABfwBgBH9/f38Bf2AAAGADf39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQAEA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAAzU0BQYAAAMAAAAAAAADAQMAAwMDAAACAAAAAAICAgICAgICAgIBAQEBAQEBAQEBAwAAAwAAAAQFAXABExMFAwEAAgYIAX8BQcDZBAsHxQcoBm1lbW9yeQIAC19pbml0aWFsaXplAAgZX19pbmRpcmVjdF9mdW5jdGlvbl90YWJsZQEAC2xsaHR0cF9pbml0AAkYbGxodHRwX3Nob3VsZF9rZWVwX2FsaXZlADcMbGxodHRwX2FsbG9jAAsGbWFsbG9jADkLbGxodHRwX2ZyZWUADARmcmVlAAwPbGxodHRwX2dldF90eXBlAA0VbGxodHRwX2dldF9odHRwX21ham9yAA4VbGxodHRwX2dldF9odHRwX21pbm9yAA8RbGxodHRwX2dldF9tZXRob2QAEBZsbGh0dHBfZ2V0X3N0YXR1c19jb2RlABESbGxodHRwX2dldF91cGdyYWRlABIMbGxodHRwX3Jlc2V0ABMObGxodHRwX2V4ZWN1dGUAFBRsbGh0dHBfc2V0dGluZ3NfaW5pdAAVDWxsaHR0cF9maW5pc2gAFgxsbGh0dHBfcGF1c2UAFw1sbGh0dHBfcmVzdW1lABgbbGxodHRwX3Jlc3VtZV9hZnRlcl91cGdyYWRlABkQbGxodHRwX2dldF9lcnJubwAaF2xsaHR0cF9nZXRfZXJyb3JfcmVhc29uABsXbGxodHRwX3NldF9lcnJvcl9yZWFzb24AHBRsbGh0dHBfZ2V0X2Vycm9yX3BvcwAdEWxsaHR0cF9lcnJub19uYW1lAB4SbGxodHRwX21ldGhvZF9uYW1lAB8SbGxodHRwX3N0YXR1c19uYW1lACAabGxodHRw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AXRrQT5qIQILIAEgAjYCHCABQgA3AhAgAkECdEH01wBqIQACQEHI1QAoAgAiA0EBIAJ0IgdxRQRAIAAgATYCAEHI1QAgAyAHcjYCACABIAA2AhggASABNgIIIAEgATYCDAwBCyAEQRkgAkEBdmtBACACQR9HG3QhAiAAKAIAIQACQANAIAAiAygCBEF4cSAERg0BIAJBHXYhACACQQF0IQIgAyAAQQRxakEQaiIHKAIAIgANAAsgByABNgIAIAEgAzYCGCABIAE2AgwgASABNgIIDAELIAMoAggiACABNgIMIAMgATYCCCABQQA2AhggASADNgIMIAEgADYCCAtB5NUAQeTVACgCAEEBayIAQX8gABs2AgALCwcAIAAtACgLBwAgAC0AKgsHACAALQArCwcAIAAtACkLBwAgAC8BNAsHACAALQAwC0ABBH8gACgCGCEBIAAvAS4hAiAALQAoIQMgACgCOCEEIAAQOCAAIAQ2AjggACADOgAoIAAgAjsBLiAAIAE2AhgL5YUCAgd/A34gASACaiEEAkAgACIDKAIMIgANACADKAIEBEAgAyABNgIECyMAQRBrIgkkAAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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C0HjAQwHC0HXAQwGC0HYAQwFC0HZAQwEC0HaAQwDC0HbAQwCC0HdAQwBC0HcAQshAgNAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCADAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQAJ/AkACQAJAAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAMCfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAg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ogKiAqICogKiAqICogKiAqICogKiAqICogIAogILIAQgAUEBaiIBRw0AC0HJACECDOwCCyABQQFqIQEgA0Evai0AAEEBcQ2lAiADQQA2AhwgAyABNgIUIANBlxA2AhAgA0EKNgIMQQAhAgzrAgsgASAERwRAA0AgAS0AAEEgRw0VIAQgAUEBaiIBRw0AC0H4ACECDOsCC0H4ACECDOoCCyADQQI6ACgMOAtBACECIANBADYCHCADQb8LNgIQIANBAjYCDCADIAFBAWo2AhQM6AILQQAhAgzOAgtBDSECDM0CC0ETIQIMzAILQRUhAgzLAgtBFiECDMoCC0EYIQIMyQILQRkhAgzIAgtBGiECDMcCC0EbIQIMxgILQRwhAgzFAgtBHSECDMQCC0EeIQIMwwILQR8hAgzCAgtBICECDMECC0EiIQIMwAILQSMhAgy/AgtBJSECDL4CC0HlACECDL0CCyADQT02AhwgAyABNgIUIAMgADYCDEEAIQIM1QILIANBGzYCHCADIAE2AhQgA0GkHDYCECADQRU2AgxBACECDNQCCyADQSA2AhwgAyABNgIUIANBmBo2AhAgA0EVNgIMQQAhAgzTAgsgA0ETNgIcIAMgATYCFCADQZgaNgIQIANBFTYCDEEAIQIM0gILIANBCzYCHCADIAE2AhQgA0GYGjYCECADQRU2AgxBACECDNECCyADQRA2AhwgAyABNgIUIANBmBo2AhAgA0EVNgIMQQAhAgzQAgsgA0EgNgIcIAMgATYCFCADQaQcNgIQIANBFTYCDEEAIQIMzwILIANBCzYCHCADIAE2AhQgA0GkHDYCECADQRU2AgxBACECDM4CCyADQQw2AhwgAyABNgIUIANBpBw2AhAgA0EVNgIMQQAhAgzNAgtBACECIANBADYCHCADIAE2AhQgA0HdDjYCECADQRI2AgwMzAILAkADQAJAIAEtAABBCmsOBAACAgACCyAEIAFBAWoiAUcNAAtB/QEhAgzMAgsCQAJAIAMtADZBAUcNAEEAIQACQCADKAI4IgJFDQAgAigCYCICRQ0AIAMgAhEAACEACyAARQ0AIABBFUcNASADQfwBNgIcIAMgATYCFCADQdwZNgIQIANBFTYCDEEAIQIMzQILQdwBIQIMswILIANBADYCHCADIAE2AhQgA0H5CzYCECADQR82AgxBACECDMsCCwJAAkAgAy0AKEEBaw4CBAEAC0HbASECDLICC0HUASECDLECCyADQQI6ADFBACEAAkAgAygCOCICRQ0AIAIoAgAiAkUNACADIAIRAAAhAAsgAEUEQEHdASECDLECCyAAQRVHBEAgA0EANgIcIAMgATYCFCADQbQMNgIQIANBEDYCDEEAIQIMygILIANB+wE2AhwgAyABNgIUIANBgRo2AhAgA0EVNgIMQQAhAgzJAgsgASAERgRAQfoBIQIMyQILIAEtAABByABGDQEgA0EBOgAoC0HAASECDK4CC0HaASECDK0CCyABIARHBEAgA0EMNgIIIAMgATYCBEHZASECDK0CC0H5ASECDMUCCyABIARGBEBB+AEhAgzFAgsgAS0AAEHIAEcNBCABQQFqIQFB2AEhAgyrAgsgASAERgRAQfcBIQIMxAILAkACQCABLQAAQcUAaw4QAAUFBQUFBQUFBQUFBQUFAQULIAFBAWohAUHWASECDKsCCyABQQFqIQFB1wEhAgyqAgtB9gEhAiABIARGDcICIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQbrVAGotAABHDQMgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADMMCCyADKAIEIQAgA0IANwMAIAMgACAGQQFqIgEQLiIARQRAQeMBIQIMqgILIANB9QE2AhwgAyABNgIUIAMgADYCDEEAIQIMwgILQfQBIQIgASAERg3BAiADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEG41QBqLQAARw0CIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzCAgsgA0GBBDsBKCADKAIEIQAgA0IANwMAIAMgACAGQQFqIgEQLiIADQMMAgsgA0EANgIAC0EAIQIgA0EANgIcIAMgATYCFCADQeUfNgIQIANBCDYCDAy/AgtB1QEhAgylAgsgA0HzATYCHCADIAE2AhQgAyAANgIMQQAhAgy9AgtBACEAAkAgAygCOCICRQ0AIAIoAkAiAkUNACADIAIRAAAhAAsgAEUNbiAAQRVHBEAgA0EANgIcIAMgATYCFCADQYIPNgIQIANBIDYCDEEAIQIMvQILIANBjwE2AhwgAyABNgIUIANB7Bs2AhAgA0EVNgIMQQAhAgy8AgsgASAERwRAIANBDTYCCCADIAE2AgRB0wEhAgyjAgtB8gEhAgy7AgsgASAERgRAQfEBIQIMuwILAkACQAJAIAEtAABByABrDgsAAQgICAgICAgIAggLIAFBAWohAUHQASECDKMCCyABQQFqIQFB0QEhAgyiAgsgAUEBaiEBQdIBIQIMoQILQfABIQIgASAERg25AiADKAIAIgAgBCABa2ohBiABIABrQQJqIQUDQCABLQAAIABBtdUAai0AAEcNBCAAQQJGDQMgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAY2AgAMuQILQe8BIQIgASAERg24AiADKAIAIgAgBCABa2ohBiABIABrQQFqIQUDQCABLQAAIABBs9UAai0AAEcNAyAAQQFGDQIgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAY2AgAMuAILQe4BIQIgASAERg23AiADKAIAIgAgBCABa2ohBiABIABrQQJqIQUDQCABLQAAIABBsNUAai0AAEcNAiAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAY2AgAMtwILIAMoAgQhACADQgA3AwAgAyAAIAVBAWoiARArIgBFDQIgA0HsATYCHCADIAE2AhQgAyAANgIMQQAhAgy2AgsgA0EANgIACyADKAIEIQAgA0EANgIEIAMgACABECsiAEUNnAIgA0HtATYCHCADIAE2AhQgAyAANgIMQQAhAgy0AgtBzwEhAgyaAgtBACEAAkAgAygCOCICRQ0AIAIoAjQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0HqDTYCECADQSY2AgxBACECDLQCC0HOASECDJoCCyADQesBNgIcIAMgATYCFCADQYAbNgIQIANBFTYCDEEAIQIMsgILIAEgBEYEQEHrASECDLICCyABLQAAQS9GBEAgAUEBaiEBDAELIANBADYCHCADIAE2AhQgA0GyODYCECADQQg2AgxBACECDLECC0HNASECDJcCCyABIARHBEAgA0EONgIIIAMgATYCBEHMASECDJcCC0HqASECDK8CCyABIARGBEBB6QEhAgyvAgsgAS0AAEEwayIAQf8BcUEKSQRAIAMgADoAKiABQQFqIQFBywEhAgyWAgsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDZcCIANB6AE2AhwgAyABNgIUIAMgADYCDEEAIQIMrgILIAEgBEYEQEHnASECDK4CCwJAIAEtAABBLkYEQCABQQFqIQEMAQsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDZgCIANB5gE2AhwgAyABNgIUIAMgADYCDEEAIQIMrgILQcoBIQIMlAILIAEgBEYEQEHlASECDK0CC0EAIQBBASEFQQEhB0EAIQICQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQCABLQAAQTBrDgoKCQABAgMEBQYICwtBAgwGC0EDDAULQQQMBAtBBQwDC0EGDAILQQcMAQtBCAshAkEAIQVBACEHDAILQQkhAkEBIQBBACEFQQAhBwwBC0EAIQVBASECCyADIAI6ACsgAUEBaiEBAkACQCADLQAuQRBxDQACQAJAAkAgAy0AKg4DAQACBAsgB0UNAwwCCyAADQEMAgsgBUUNAQsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDQIgA0HiATYCHCADIAE2AhQgAyAANgIMQQAhAgyvAgsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDZoCIANB4wE2AhwgAyABNgIUIAMgADYCDEEAIQIMrgILIAMoAgQhACADQQA2AgQgAyAAIAEQLyIARQ2YAiADQeQBNgIcIAMgATYCFCADIAA2AgwMrQILQckBIQIMkwILQQAhAAJAIAMoAjgiAkUNACACKAJEIgJFDQAgAyACEQAAIQALAkAgAARAIABBFUYNASADQQA2AhwgAyABNgIUIANBpA02AhAgA0EhNgIMQQAhAgytAgtByAEhAgyTAgsgA0HhATYCHCADIAE2AhQgA0HQGjYCECADQRU2AgxBACECDKsCCyABIARGBEBB4QEhAgyrAgsCQCABLQAAQSBGBEAgA0EAOwE0IAFBAWohAQwBCyADQQA2AhwgAyABNgIUIANBmRE2AhAgA0EJNgIMQQAhAgyrAgtBxwEhAgyRAgsgASAERgRAQeABIQIMqgILAkAgAS0AAEEwa0H/AXEiAkEKSQRAIAFBAWohAQJAIAMvATQiAEGZM0sNACADIABBCmwiADsBNCAAQf7/A3EgAkH//wNzSw0AIAMgACACajsBNAwCC0EAIQIgA0EANgIcIAMgATYCFCADQZUeNgIQIANBDTYCDAyrAgsgA0EANgIcIAMgATYCFCADQZUeNgIQIANBDTYCDEEAIQIMqgILQcYBIQIMkAILIAEgBEYEQEHfASECDKkCCwJAIAEtAABBMGtB/wFxIgJBCkkEQCABQQFqIQECQCADLwE0IgBBmTNLDQAgAyAAQQpsIgA7ATQgAEH+/wNxIAJB//8Dc0sNACADIAAgAmo7ATQMAgtBACECIANBADYCHCADIAE2AhQgA0GVHjYCECADQQ02AgwMqgILIANBADYCHCADIAE2AhQgA0GVHjYCECADQQ02AgxBACECDKkCC0HFASECDI8CCyABIARGBEBB3gEhAgyoAgsCQCABLQAAQTBrQf8BcSICQQpJBEAgAUEBaiEBAkAgAy8BNCIAQZkzSw0AIAMgAEEKbCIAOwE0IABB/v8DcSACQf//A3NLDQAgAyAAIAJqOwE0DAILQQAhAiADQQA2AhwgAyABNgIUIANBlR42AhAgA0ENNgIMDKkCCyADQQA2AhwgAyABNgIUIANBlR42AhAgA0ENNgIMQQAhAgyoAgtBxAEhAgyOAgsgASAERgRAQd0BIQIMpwILAkACQAJAAkAgAS0AAEEKaw4XAgMDAAMDAwMDAwMDAwMDAwMDAwMDAwEDCyABQQFqDAULIAFBAWohAUHDASECDI8CCyABQQFqIQEgA0Evai0AAEEBcQ0IIANBADYCHCADIAE2AhQgA0GNCzYCECADQQ02AgxBACECDKcCCyADQQA2AhwgAyABNgIUIANBjQs2AhAgA0ENNgIMQQAhAgymAgsgASAERwRAIANBDzYCCCADIAE2AgRBASECDI0CC0HcASECDKUCCwJAAkADQAJAIAEtAABBCmsOBAIAAAMACyAEIAFBAWoiAUcNAAtB2wEhAgymAgsgAygCBCEAIANBADYCBCADIAAgARAtIgBFBEAgAUEBaiEBDAQLIANB2gE2AhwgAyAANgIMIAMgAUEBajYCFEEAIQIMpQILIAMoAgQhACADQQA2AgQgAyAAIAEQLSIADQEgAUEBagshAUHBASECDIoCCyADQdkBNgIcIAMgADYCDCADIAFBAWo2AhRBACECDKICC0HCASECDIgCCyADQS9qLQAAQQFxDQEgA0EANgIcIAMgATYCFCADQeQcNgIQIANBGTYCDEEAIQIMoAILIAEgBEYEQEHZASEC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IAFBAWohAUGeASECDOQBCyABQQFqIQFBnwEhAgzjAQtBtwEhAiABIARGDfsBIAMoAgAiACAEIAFraiEFIAEgAGtBA2ohBgJAA0AgAS0AACAAQezUAGotAABHDSggAEEDRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADPwBCyADQQA2AgAgBkEBaiEBQQ0MKAtBtgEhAiABIARGDfoBIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQaHVAGotAABHDScgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADPsBCyADQQA2AgAgBkEBaiEBQQwMJwtBtQEhAiABIARGDfkBIAMoAgAiACAEIAFraiEFIAEgAGtBAWohBgJAA0AgAS0AACAAQerUAGotAABHDSYgAEEBRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADPoBCyADQQA2AgAgBkEBaiEBQQMMJgtBtAEhAiABIARGDfgBIAMoAgAiACAEIAFraiEFIAEgAGtBAWohBgJAA0AgAS0AACAAQejUAGotAABHDSUgAEEBRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADPkBCyADQQA2AgAgBkEBaiEBQSYMJQsgASAERgRAQbMBIQIM+AELAkACQCABLQAAQdQAaw4CAAEnCyABQQFqIQFBmQEhAgzfAQsgAUEBaiEBQZoBIQIM3gELQbIBIQIgASAERg32ASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHm1ABqLQAARw0jIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAz3AQsgA0EANgIAIAZBAWohAUEnDCMLQbEBIQIgASAERg31ASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHk1ABqLQAARw0iIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAz2AQsgA0EANgIAIAZBAWohAUEcDCILQbABIQIgASAERg30ASADKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEHe1ABqLQAARw0hIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAz1AQsgA0EANgIAIAZBAWohAUEGDCELQa8BIQIgASAERg3zASADKAIAIgAgBCABa2ohBSABIABrQQRqIQYCQANAIAEtAAAgAEHZ1ABqLQAARw0gIABBBEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAz0AQsgA0EANgIAIAZBAWohAUEZDCALIAEgBEYEQEGuASECDPMBCwJAAkACQAJAIAEtAABBLWsOIwAkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJAEkJCQkJAIkJCQDJAsgAUEBaiEBQY4BIQIM3AELIAFBAWohAUGPASECDNsBCyABQQFqIQFBlAEhAgzaAQsgAUEBaiEBQZUBIQIM2QELQa0BIQIgASAERg3xASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHX1ABqLQAARw0eIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzyAQsgA0EANgIAIAZBAWohAUELDB4LIAEgBEYEQEGsASECDPEBCwJAAkAgAS0AAEHBAGsOAwAgASALIAFBAWohAUGQASECDNgBCyABQQFqIQFBkwEhAgzXAQsgASAERgRAQasBIQIM8AELAkACQCABLQAAQcEAaw4PAB8fHx8fHx8fHx8fHx8BHwsgAUEBaiEBQZEBIQIM1wELIAFBAWohAUGSASECDNYBCyABIARGBEBBqgEhAgzvAQsgAS0AAEHMAEcNHCABQQFqIQFBCgwbC0GpASECIAEgBEYN7QEgAygCACIAIAQgAWtqIQUgASAAa0EFaiEGAkADQCABLQAAIABB0dQAai0AAEcNGiAAQQVGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM7gELIANBADYCACAGQQFqIQFBHgwaC0GoASECIAEgBEYN7AEgAygCACIAIAQgAWtqIQUgASAAa0EGaiEGAkADQCABLQAAIABBytQAai0AAEcNGSAAQQZGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM7QELIANBADYCACAGQQFqIQFBFQwZC0GnASECIAEgBEYN6wEgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBx9QAai0AAEcNGCAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM7AELIANBADYCACAGQQFqIQFBFwwYC0GmASECIAEgBEYN6gEgAygCACIAIAQgAWtqIQUgASAAa0EFaiEGAkADQCABLQAAIABBwdQAai0AAEcNFyAAQQVGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM6wELIANBADYCACAGQQFqIQFBGAwXCyABIARGBEBBpQEhAgzqAQsCQAJAIAEtAABByQBrDgcAGRkZGRkBGQsgAUEBaiEBQYsBIQIM0QELIAFBAWohAUGMASECDNABC0GkASECIAEgBEYN6AEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGAkADQCABLQAAIABBptUAai0AAEcNFSAAQQFGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM6QELIANBADYCACAGQQFqIQFBCQwVC0GjASECIAEgBEYN5wEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGAkADQCABLQAAIABBpNUAai0AAEcNFCAAQQFGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM6AELIANBADYCACAGQQFqIQFBHwwUC0GiASECIAEgBEYN5gEgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBvtQAai0AAEcNEyAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM5wELIANBADYCACAGQQFqIQFBAgwTC0GhASECIAEgBEYN5QEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGA0AgAS0AACAAQbzUAGotAABHDREgAEEBRg0CIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADOUBCyABIARGBEBBoAEhAgzlAQtBASABLQAAQd8ARw0RGiABQQFqIQFBhwEhAgzLAQsgA0EANgIAIAZBAWohAUGIASECDMoBC0GfASECIAEgBEYN4gEgAygCACIAIAQgAWtqIQUgASAAa0EIaiEGAkADQCABLQAAIABBhNUAai0AAEcNDyAAQQhGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM4wELIANBADYCACAGQQFqIQFBKQwPC0GeASECIAEgBEYN4QEgAygCACIAIAQgAWtqIQUgASAAa0EDaiEGAkADQCABLQAAIABBuNQAai0AAEcNDiAAQQNGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM4gELIANBADYCACAGQQFqIQFBLQwOCyABIARGBEBBnQEhAgzhAQsgAS0AAEHFAEcNDiABQQFqIQFBhAEhAgzHAQsgASAERgRAQZwBIQIM4AELAkACQCABLQAAQcwAaw4IAA8PDw8PDwEPCyABQQFqIQFBggEhAgzHAQsgAUEBaiEBQYMBIQIMxgELQZsBIQIgASAERg3eASADKAIAIgAgBCABa2ohBSABIABrQQRqIQYCQANAIAEtAAAgAEGz1ABqLQAARw0LIABBBEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzfAQsgA0EANgIAIAZBAWohAUEjDAsLQZoBIQIgASAERg3dASADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGw1ABqLQAARw0KIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzeAQsgA0EANgIAIAZBAWohAUEADAoLIAEgBEYEQEGZASECDN0BCwJAAkAgAS0AAEHIAGsOCAAMDAwMDAwBDAsgAUEBaiEBQf0AIQIMxAELIAFBAWohAUGAASECDMMBCyABIARGBEBBmAEhAgzcAQsCQAJAIAEtAABBzgBrDgMACwELCyABQQFqIQFB/gAhAgzDAQsgAUEBaiEBQf8AIQIMwgELIAEgBEYEQEGXASECDNsBCyABLQAAQdkARw0IIAFBAWohAUEIDAcLQZYBIQIgASAERg3ZASADKAIAIgAgBCABa2ohBSABIABrQQNqIQYCQANAIAEtAAAgAEGs1ABqLQAARw0GIABBA0YNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzaAQsgA0EANgIAIAZBAWohAUEFDAYLQZUBIQIgASAERg3YASADKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEGm1ABqLQAARw0FIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzZAQsgA0EANgIAIAZBAWohAUEWDAULQZQBIQIgASAERg3XASADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGh1QBqLQAARw0EIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzYAQsgA0EANgIAIAZBAWohAUEQDAQLIAEgBEYEQEGTASECDNcBCwJAAkAgAS0AAEHDAGsODAAGBgYGBgYGBgYGAQYLIAFBAWohAUH5ACECDL4BCyABQQFqIQFB+gAhAgy9AQtBkgEhAiABIARGDdUBIAMoAgAiACAEIAFraiEFIAEgAGtBBWohBgJAA0AgAS0AACAAQaDUAGotAABHDQIgAEEFRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADNYBCyADQQA2AgAgBkEBaiEBQSQMAgsgA0EANgIADAILIAEgBEYEQEGRASECDNQBCyABLQAAQcwARw0BIAFBAWohAUETCzoAKSADKAIEIQAgA0EANgIEIAMgACABEC4iAA0CDAELQQAhAiADQQA2AhwgAyABNgIUIANB/h82AhAgA0EGNgIMDNEBC0H4ACECDLcBCyADQZABNgIcIAMgATYCFCADIAA2AgxBACECDM8BC0EAIQACQCADKAI4IgJFDQAgAigCQCICRQ0AIAMgAhEAACEACyAARQ0AIABBFUYNASADQQA2AhwgAyABNgIUIANBgg82AhAgA0EgNgIMQQAhAgzOAQtB9wAhAgy0AQsgA0GPATYCHCADIAE2AhQgA0HsGzYCECADQRU2AgxBACECDMwBCyABIARGBEBBjwEhAgzMAQsCQCABLQAAQSBGBEAgAUEBaiEBDAELIANBADYCHCADIAE2AhQgA0GbHzYCECADQQY2AgxBACECDMwBC0ECIQIMsgELA0AgAS0AAEEgRw0CIAQgAUEBaiIBRw0AC0GOASECDMoBCyABIARGBEBBjQEhAgzKAQsCQCABLQAAQQlrDgRKAABKAAtB9QAhAgywAQsgAy0AKUEFRgRAQfYAIQIMsAELQfQAIQIMrwELIAEgBEYEQEGMASECDMgBCyADQRA2AgggAyABNgIEDAoLIAEgBEYEQEGLASECDMcBCwJAIAEtAABBCWsOBEcAAEcAC0HzACECDK0BCyABIARHBEAgA0EQNgIIIAMgATYCBEHxACECDK0BC0GKASECDMUBCwJAIAEgBEcEQANAIAEtAABBoNAAai0AACIAQQNHBEACQCAAQQFrDgJJAAQLQfAAIQIMrwELIAQgAUEBaiIBRw0AC0GIASEC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BCABQQFqIgFHDQALQfsAIQIMpwELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0DIANB2wA2AhwgAyABNgIUIAMgADYCDEEAIQIMpgELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0DIANB3QA2AhwgAyABNgIUIAMgADYCDEEAIQIMpQELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0DIANB+gA2AhwgAyABNgIUIAMgADYCDEEAIQIMpAELIANBADYCHCADIAE2AhQgA0G8CjYCECADQQc2AgxBACECDKMBC0HPACECDIkBC0HRACECDIgBC0HnACECDIcBCyABIARGBEBB+gAhAgygAQsCQCABLQAAQQlrDgQgAAAgAAsgAUEBaiEBQeYAIQIMhgELIAEgBEYEQEH5ACECDJ8BCwJAIAEtAABBCWsOBB8AAB8AC0EAIQACQCADKAI4IgJFDQAgAigCOCICRQ0AIAMgAhEAACEACyAARQRAQeIBIQIMhgELIABBFUcEQCADQQA2AhwgAyABNgIUIANByQ02AhAgA0EaNgIMQQAhAgyfAQsgA0H4ADYCHCADIAE2AhQgA0HqGjYCECADQRU2AgxBACECDJ4BCyABIARHBEAgA0ENNgIIIAMgATYCBEHkACECDIUBC0H3ACECDJ0BCyABIARGBEBB9gAhAgydAQsCQAJAAkAgAS0AAEHIAGsOCwABCwsLCwsLCwsCCwsgAUEBaiEBQd0AIQIMhQELIAFBAWohAUHgACECDIQBCyABQQFqIQFB4wAhAgyDAQtB9QAhAiABIARGDZsBIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQbXVAGotAABHDQggAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADJwBCyADKAIEIQAgA0IANwMAIAMgACAGQQFqIgEQKyIABEAgA0H0ADYCHCADIAE2AhQgAyAANgIMQQAhAgycAQtB4gAhAgyCAQtBACEAAkAgAygCOCICRQ0AIAIoAjQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0HqDTYCECADQSY2AgxBACECDJwBC0HhACECDIIBCyADQfMANgIcIAMgATYCFCADQYAbNgIQIANBFTYCDEEAIQIMmgELIAMtACkiAEEja0ELSQ0JAkAgAEEGSw0AQQEgAHRBygBxRQ0ADAoLQQAhAiADQQA2AhwgAyABNgIUIANB7Qk2AhAgA0EINgIMDJkBC0HyACECIAEgBEYNmAEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGAkADQCABLQAAIABBs9UAai0AAEcNBSAAQQFGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMmQELIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARArIgAEQCADQfEANgIcIAMgATYCFCADIAA2AgxBACECDJkBC0HfACECDH8LQQAhAAJAIAMoAjgiAkUNACACKAI0IgJFDQAgAyACEQAAIQALAkAgAARAIABBFUYNASADQQA2AhwgAyABNgIUIANB6g02AhAgA0EmNgIMQQAhAgyZAQtB3gAhAgx/CyADQfAANgIcIAMgATYCFCADQYAbNgIQIANBFTYCDEEAIQIMlwELIAMtAClBIUYNBiADQQA2AhwgAyABNgIUIANBkQo2AhAgA0EINgIMQQAhAgyWAQtB7wAhAiABIARGDZUBIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQbDVAGotAABHDQIgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADJYBCyADKAIEIQAgA0IANwMAIAMgACAGQQFqIgEQKyIARQ0CIANB7QA2AhwgAyABNgIUIAMgADYCDEEAIQIMlQELIANBADYCAAsgAygCBCEAIANBADYCBCADIAAgARArIgBFDYABIANB7gA2AhwgAyABNgIUIAMgADYCDEEAIQIMkwELQdwAIQIMeQtBACEAAkAgAygCOCICRQ0AIAIoAjQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0HqDTYCECADQSY2AgxBACECDJMBC0HbACECDHkLIANB7AA2AhwgAyABNgIUIANBgBs2AhAgA0EVNgIMQQAhAgyRAQsgAy0AKSIAQSNJDQAgAEEuRg0AIANBADYCHCADIAE2AhQgA0HJCTYCECADQQg2AgxBACECDJABC0HaACECDHYLIAEgBEYEQEHrACECDI8BCwJAIAEtAABBL0YEQCABQQFqIQEMAQsgA0EANgIcIAMgATYCFCADQbI4NgIQIANBCDYCDEEAIQIMjwELQdkAIQIMdQsgASAERwRAIANBDjYCCCADIAE2AgRB2AAhAgx1C0HqACECDI0BCyABIARGBEBB6QAhAgyNAQsgAS0AAEEwayIAQf8BcUEKSQRAIAMgADoAKiABQQFqIQFB1wAhAgx0CyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNeiADQegANgIcIAMgATYCFCADIAA2AgxBACECDIwBCyABIARGBEBB5wAhAgyMAQsCQCABLQAAQS5GBEAgAUEBaiEBDAELIAMoAgQhACADQQA2AgQgAyAAIAEQLyIARQ17IANB5gA2AhwgAyABNgIUIAMgADYCDEEAIQIMjAELQdYAIQIMcgsgASAERgRAQeUAIQIMiwELQQAhAEEBIQVBASEHQQAhAgJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAIAEtAABBMGsOCgoJAAECAwQFBggLC0ECDAYLQQMMBQtBBAwEC0EFDAMLQQYMAgtBBwwBC0EICyECQQAhBUEAIQcMAgtBCSECQQEhAEEAIQVBACEHDAELQQAhBUEBIQILIAMgAjoAKyABQQFqIQECQAJAIAMtAC5BEHENAAJAAkACQCADLQAqDgMBAAIECyAHRQ0DDAILIAANAQwCCyAFRQ0BCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNAiADQeIANgIcIAMgATYCFCADIAA2AgxBACECDI0BCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNfSADQeMANgIcIAMgATYCFCADIAA2AgxBACECDIwBCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNeyADQeQANgIcIAMgATYCFCADIAA2AgwMiwELQdQAIQIMcQsgAy0AKUEiRg2GAUHTACECDHALQQAhAAJAIAMoAjgiAkUNACACKAJEIgJFDQAgAyACEQAAIQALIABFBEBB1QAhAgxwCyAAQRVHBEAgA0EANgIcIAMgATYCFCADQaQNNgIQIANBITYCDEEAIQIMiQELIANB4QA2AhwgAyABNgIUIANB0Bo2AhAgA0EVNgIMQQAhAgyIAQsgASAERgRAQeAAIQIMiAELAkACQAJAAkACQCABLQAAQQprDgQBBAQABAsgAUEBaiEBDAELIAFBAWohASADQS9qLQAAQQFxRQ0BC0HSACECDHALIANBADYCHCADIAE2AhQgA0G2ETYCECADQQk2AgxBACECDIgBCyADQQA2AhwgAyABNgIUIANBthE2AhAgA0EJNgIMQQAhAgyHAQsgASAERgRAQd8AIQIMhwELIAEtAABBCkYEQCABQQFqIQEMCQsgAy0ALkHAAHENCCADQQA2AhwgAyABNgIUIANBthE2AhAgA0ECNgIMQQAhAgyGAQsgASAERgRAQd0AIQIMhgELIAEtAAAiAkENRgRAIAFBAWohAUHQACECDG0LIAEhACACQQlrDgQFAQEFAQsgBCABIgBGBEBB3AAhAgyFAQsgAC0AAEEKRw0AIABBAWoMAgtBACECIANBADYCHCADIAA2AhQgA0HKLTYCECADQQc2AgwMgwELIAEgBEYEQEHbACECDIMBCwJAIAEtAABBCWsOBAMAAAMACyABQQFqCyEBQc4AIQIMaAsgASAERgRAQdoAIQIMgQELIAEtAABBCWsOBAABAQABC0EAIQIgA0EANgIcIANBmhI2AhAgA0EHNgIMIAMgAUEBajYCFAx/CyADQYASOwEqQQAhAAJAIAMoAjgiAkUNACACKAI4IgJFDQAgAyACEQAAIQALIABFDQAgAEEVRw0BIANB2QA2AhwgAyABNgIUIANB6ho2AhAgA0EVNgIMQQAhAgx+C0HNACECDGQLIANBADYCHCADIAE2AhQgA0HJDTYCECADQRo2AgxBACECDHwLIAEgBEYEQEHZACECDHwLIAEtAABBIEcNPSABQQFqIQEgAy0ALkEBcQ09IANBADYCHCADIAE2AhQgA0HCHDYCECADQR42AgxBACECDHsLIAEgBEYEQEHYACECDHsLAkACQAJAAkACQCABLQAAIgBBCmsOBAIDAwABCyABQQFqIQFBLCECDGULIABBOkcNASADQQA2AhwgAyABNgIUIANB5xE2AhAgA0EKNgIMQQAhAgx9CyABQQFqIQEgA0Evai0AAEEBcUUNcyADLQAyQYABcUUEQCADQTJqIQIgAxA1QQAhAAJAIAMoAjgiBkUNACAGKAIoIgZFDQAgAyAGEQAAIQALAkACQCAADhZNTEsBAQEBAQEBAQEBAQEBAQEBAQEAAQsgA0EpNgIcIAMgATYCFCADQawZNgIQIANBFTYCDEEAIQIMfgsg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c3BvbnNlIHN0YXR1cwBFeHBlY3RlZCBMRiBhZnRlciBoZWFkZXJzAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMAVXNlciBjYWxsYmFjayBlcnJvcgBgb25fcmVzZXRgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19oZWFkZXJgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2JlZ2luYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlYCBjYWxsYmFjayBlcnJvcgBgb25fc3RhdHVzX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdmVyc2lvbl9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3VybF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3Byb3RvY29sX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fcHJvdG9jb2wARW1wdHkgQ29udGVudC1MZW5ndGgASW52YWxpZCBjaGFyYWN0ZXIgaW4gQ29udGVudC1MZW5ndGgAVHJhbnNmZXItRW5jb2RpbmcgY2FuJ3QgYmUgcHJlc2VudCB3aXRoIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgc2l6ZQBFeHBlY3RlZCBMRiBhZnRlciBjaHVuayBzaXplAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBVbmV4cGVjdGVkIHdoaXRlc3BhY2UgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgTEYgYWZ0ZXIgaGVhZGVyIHZhbHVlAEludmFsaWQgYFRyYW5zZmVyLUVuY29kaW5nYCBoZWFkZXIgdmFsdWUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciBjaHVuayBleHRlbnNpb24gdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZSB2YWx1ZQBJbnZhbGlkIHF1b3RlZC1wYWlyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAFBhdXNlZCBieSBvbl9oZWFkZXJzX2NvbXBsZXRlAEludmFsaWQgRU9GIHN0YXRlAG9uX3Jlc2V0IHBhdXNlAG9uX2NodW5rX2hlYWRlciBwYXVzZQBvbl9tZXNzYWdlX2JlZ2luIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZSBwYXVzZQBvbl9zdGF0dXNfY29tcGxldGUgcGF1c2UAb25fdmVyc2lvbl9jb21wbGV0ZSBwYXVzZQBvbl91cmxfY29tcGxldGUgcGF1c2UAb25fcHJvdG9jb2xfY29tcGxldGUgcGF1c2UAb25fY2h1bmtfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX3ZhbHVlX2NvbXBsZXRlIHBhdXNlAG9uX21lc3NhZ2VfY29tcGxldGUgcGF1c2UAb25fbWV0aG9kX2NvbXBsZXRlIHBhdXNlAG9uX2hlYWRlcl9maWVsZF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19leHRlbnNpb25fbmFtZSBwYXVzZQBVbmV4cGVjdGVkIHNwYWNlIGFmdGVyIHN0YXJ0IGxpbmUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciByZXNwb25zZSBsaW5lAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fY2h1bmtfZXh0ZW5zaW9uX25hbWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBuYW1lAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgZXh0ZW5zaW9uIG5hbWUASW52YWxpZCBzdGF0dXMgY29kZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABNaXNzaW5nIGV4cGVjdGVkIENSIGFmdGVyIGNodW5rIGRhdGEARXhwZWN0ZWQgTEYgYWZ0ZXIgY2h1bmsgZGF0YQBVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AARGF0YSBhZnRlciBgQ29ubmVjdGlvbjogY2xvc2VgAFNXSVRDSF9QUk9YWQBVU0VfUFJPWFkATUtBQ1RJVklUWQBVTlBST0NFU1NBQkxFX0VOVElUWQBRVUVSWQBDT1BZAE1PVkVEX1BFUk1BTkVOVExZAFRPT19FQVJMWQBOT1RJRlkARkFJTEVEX0RFUEVOREVOQ1kAQkFEX0dBVEVXQVkAUExBWQBQVVQAQ0hFQ0tPVVQAR0FURVdBWV9USU1FT1VUAFJFUVVFU1RfVElNRU9VVABORVRXT1JLX0NPTk5FQ1RfVElNRU9VVABDT05ORUNUSU9OX1RJTUVPVVQATE9HSU5fVElNRU9VVABORVRXT1JLX1JFQURfVElNRU9VVABQT1NUAE1JU0RJUkVDVEVEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9SRVFVRVNUAENMSUVOVF9DTE9TRURfTE9BRF9CQUxBTkNFRF9SRVFVRVNUAEJBRF9SRVFVRVNUAEhUVFBfUkVRVUVTVF9TRU5UX1RPX0hUVFBTX1BPUlQAUkVQT1JUAElNX0FfVEVBUE9UAFJFU0VUX0NPTlRFTlQATk9fQ09OVEVOVABQQVJUSUFMX0NPTlRFTlQASFBFX0lOVkFMSURfQ09OU1RBTlQASFBFX0NCX1JFU0VUAEdFVABIUEVfU1RSSUNUAENPTkZMSUNUAFRFTVBPUkFSWV9SRURJUkVDVABQRVJNQU5FTlRfUkVESVJFQ1QAQ09OTkVDVABNVUxUSV9TVEFUVVMASFBFX0lOVkFMSURfU1RBVFVTAFRPT19NQU5ZX1JFUVVFU1RTAEVBUkxZX0hJTlRTAFVOQVZBSUxBQkxFX0ZPUl9MRUdBTF9SRUFTT05TAE9QVElPTlMAU1dJVENISU5HX1BST1RPQ09MUwBWQVJJQU5UX0FMU09fTkVHT1RJQVRFUwBNVUxUSVBMRV9DSE9JQ0VTAElOVEVSTkFMX1NFUlZFUl9FUlJPUgBXRUJfU0VSVkVSX1VOS05PV05fRVJST1IAUkFJTEdVTl9FUlJPUgBJREVOVElUWV9QUk9WSURFUl9BVVRIRU5USUNBVElPTl9FUlJPUgBTU0xfQ0VSVElGSUNBVEVfRVJST1IASU5WQUxJRF9YX0ZPUldBUkRFRF9GT1IAU0VUX1BBUkFNRVRFUgBHRVRfUEFSQU1FVEVSAEhQRV9VU0VSAFNFRV9PVEhFUgBIUEVfQ0JfQ0hVTktfSEVBREVSAEV4cGVjdGVkIExGIGFmdGVyIENSAE1LQ0FMRU5EQVIAU0VUVVAAV0VCX1NFUlZFUl9JU19ET1dOAFRFQVJET1dOAEhQRV9DTE9TRURfQ09OTkVDVElPTgBIRVVSSVNUSUNfRVhQSVJBVElPTgBESVNDT05ORUNURURfT1BFUkFUSU9OAE5PTl9BVVRIT1JJVEFUSVZFX0lORk9STUFUSU9OAEhQRV9JTlZBTElEX1ZFUlNJT04ASFBFX0NCX01FU1NBR0VfQkVHSU4AU0lURV9JU19GUk9aRU4ASFBFX0lOVkFMSURfSEVBREVSX1RPS0VOAElOVkFMSURfVE9LRU4ARk9SQklEREVOAEVOSEFOQ0VfWU9VUl9DQUxNAEhQRV9JTlZBTElEX1VSTABCTE9DS0VEX0JZX1BBUkVOVEFMX0NPTlRST0wATUtDT0wAQUNMAEhQRV9JTlRFUk5BTABSRVFVRVNUX0hFQURFUl9GSUVMRFNfVE9PX0xBUkdFX1VOT0ZGSUNJQUwASFBFX09LAFVOTElOSwBVTkxPQ0sAUFJJAFJFVFJZX1dJVEgASFBFX0lOVkFMSURfQ09OVEVOVF9MRU5HVEgASFBFX1VORVhQRUNURURfQ09OVEVOVF9MRU5HVEgARkxVU0gAUFJPUFBBVENIAE0tU0VBUkNIAFVSSV9UT09fTE9ORwBQUk9DRVNTSU5HAE1JU0NFTExBTkVPVVNfUEVSU0lTVEVOVF9XQVJOSU5HAE1JU0NFTExBTkVPVVNfV0FSTklORwBIUEVfSU5WQUxJRF9UUkFOU0ZFUl9FTkNPRElORwBFeHBlY3RlZCBDUkxGAEhQRV9JTlZBTElEX0NIVU5LX1NJWkUATU9WRQBDT05USU5VRQBIUEVfQ0JfU1RBVFVTX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJTX0NPTVBMRVRFAEhQRV9DQl9WRVJTSU9OX0NPTVBMRVRFAEhQRV9DQl9VUkxfQ09NUExFVEUASFBFX0NCX1BST1RPQ09MX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19DT01QTEVURQBIUEVfQ0JfSEVBREVSX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fVkFMVUVfQ09NUExFVEUASFBFX0NCX0NIVU5LX0VYVEVOU0lPTl9OQU1FX0NPTVBMRVRFAEhQRV9DQl9NRVNTQUdFX0NPTVBMRVRFAEhQRV9DQl9NRVRIT0RfQ09NUExFVEUASFBFX0NCX0hFQURFUl9GSUVMRF9DT01QTEVURQBERUxFVEUASFBFX0lOVkFMSURfRU9GX1NUQVRFAElOVkFMSURfU1NMX0NFUlRJRklDQVRFAFBBVVNFAE5PX1JFU1BPTlNFAFVOU1VQUE9SVEVEX01FRElBX1RZUEUAR09ORQBOT1RfQUNDRVBUQUJMRQBTRVJWSUNFX1VOQVZBSUxBQkxFAFJBTkdFX05PVF9TQVRJU0ZJQUJMRQBPUklHSU5fSVNfVU5SRUFDSEFCTEUAUkVTUE9OU0VfSVNfU1RBTEUAUFVSR0UATUVSR0UAUkVRVUVTVF9IRUFERVJfRklFTERTX1RPT19MQVJHRQBSRVFVRVNUX0hFQURFUl9UT09fTEFSR0UAUEFZTE9BRF9UT09fTEFSR0UASU5TVUZGSUNJRU5UX1NUT1JBR0UASFBFX1BBVVNFRF9VUEdSQURFAEhQRV9QQVVTRURfSDJfVVBHUkFERQBTT1VSQ0UAQU5OT1VOQ0UAVFJBQ0UASFBFX1VORVhQRUNURURfU1BBQ0UAREVTQ1JJQkUAVU5TVUJTQ1JJQkUAUkVDT1JEAEhQRV9JTlZBTElEX01FVEhPRABOT1RfRk9VTkQAUFJPUEZJTkQAVU5CSU5EAFJFQklORABVTkFVVEhPUklaRUQATUVUSE9EX05PVF9BTExPV0VEAEhUVFBfVkVSU0lPTl9OT1RfU1VQUE9SVEVEAEFMUkVBRFlfUkVQT1JURUQAQUNDRVBURUQATk9UX0lNUExFTUVOVEVEAExPT1BfREVURUNURUQASFBFX0NSX0VYUEVDVEVEAEhQRV9MRl9FWFBFQ1RFRABDUkVBVEVEAElNX1VTRUQASFBFX1BBVVNFRABUSU1FT1VUX09DQ1VSRUQAUEFZTUVOVF9SRVFVSVJFRABQUkVDT05ESVRJT05fUkVRVUlSRUQAUFJPWFlfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATkVUV09SS19BVVRIRU5USUNBVElPTl9SRVFVSVJFRABMRU5HVEhfUkVRVUlSRUQAU1NMX0NFUlRJRklDQVRFX1JFUVVJUkVEAFVQR1JBREVfUkVRVUlSRUQAUEFHRV9FWFBJUkVEAFBSRUNPTkRJVElPTl9GQUlMRUQARVhQRUNUQVRJT05fRkFJTEVEAFJFVkFMSURBVElPTl9GQUlMRUQAU1NMX0hBTkRTSEFLRV9GQUlMRUQATE9DS0VEAFRSQU5TRk9STUFUSU9OX0FQUExJRUQATk9UX01PRElGSUVEAE5PVF9FWFRFTkRFRABCQU5EV0lEVEhfTElNSVRfRVhDRUVERUQAU0lURV9JU19PVkVSTE9BREVEAEhFQUQARXhwZWN0ZWQgSFRUUC8sIFJUU1AvIG9yIElDRS8A5xUAAK8VAACkEgAAkhoAACYWAACeFAAA2xkAAHkVAAB+EgAA/hQAADYVAAALFgAA2BYAAPMSAABCGAAArBYAABIVAAAUFwAA7xcAAEgUAABxFwAAshoAAGsZAAB+GQAANRQAAIIaAABEFwAA/RYAAB4YAACHFwAAqhkAAJMSAAAHGAAALBcAAMoXAACkFwAA5xUAAOcVAABYFwAAOxgAAKASAAAtHAAAwxEAAEgRAADeEgAAQhMAAKQZAAD9EAAA9xUAAKUVAADvFgAA+BkAAEoWAABWFgAA9RUAAAoaAAAIGgAAARoAAKsVAABCEgAA1xAAAEwRAAAFGQAAVBYAAB4RAADKGQAAyBkAAE4WAAD/GAAAcRQAAPAVAADuFQAAlBkAAPwVAAC/GQAAmxkAAHwUAABDEQAAcBgAAJUUAAAnFAAAGRQAANUSAADUGQAARBYAAPcQAEG5OwsBAQBB0DsL4AEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEDAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBuj0LBAEAAAIAQdE9C14DBAMDAwMDAAADAwADAwADAwMDAwMDAwMDAAUAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAwADAEG6PwsEAQAAAgBB0T8LXgMAAwMDAwMAAAMDAAMDAAMDAwMDAwMDAwMABAAFAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwADAAMAQbDBAAsNbG9zZWVlcC1hbGl2ZQBBycEACwEBAEHgwQAL4AEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBycMACwEBAEHgwwAL5wEBAQEBAQEBAQEBAQECAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAWNodW5rZWQAQfHFAAteAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQBB0McACyFlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AQYDIAAsgcmFuc2Zlci1lbmNvZGluZ3BncmFkZQ0KDQpTTQ0KDQoAQanIAAsFAQIAAQMAQcDIAAtfBAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanKAAsFAQIAAQMAQcDKAAtfBAUFBgUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanMAAsEAQAAAQBBwcwAC14CAgACAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAEGpzgALBQECAAEDAEHAzgALXwQFAAAFBQUFBQUFBQUFBQYFBQUFBQUFBQUFBQUABQAHCAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQAFAAUABQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAAAAFAEGp0AALBQEBAAEBAEHA0AALAQEAQdrQAAtBAgAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAQanSAAsFAQEAAQEAQcDSAAsBAQBBytIACwYCAAAAAAIAQeHSAAs6AwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBBoNQAC50BTk9VTkNFRUNLT1VUTkVDVEVURUNSSUJFTFVTSEVURUFEU0VBUkNIUkdFQ1RJVklUWUxFTkRBUlZFT1RJRllQVElPTlNDSFNFQVlTVEFUQ0hHRVVFUllPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFVFRQQ0VUU1BBRFRQLw==","base64")}})});var RzQ=R((piY,zzQ)=>{var{Buffer:lw0}=u("node:buffer"),Cr;Object.defineProperty(zzQ,"exports",{get:()=>{return Cr?Cr:Cr=lw0.from("AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAn9/AGABfwBgBH9/f38Bf2AAAGADf39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQAEA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAAzU0BQYAAAMAAAAAAAADAQMAAwMDAAACAAAAAAICAgICAgICAgIBAQEBAQEBAQEBAwAAAwAAAAQFAXABExMFAwEAAgYIAX8BQcDZBAsHxQcoBm1lbW9yeQIAC19pbml0aWFsaXplAAgZX19pbmRpcmVjdF9mdW5jdGlvbl90YWJsZQEAC2xsaHR0cF9pbml0AAkYbGxodHRwX3Nob3VsZF9rZWVwX2FsaXZlADcMbGxodHRwX2FsbG9jAAsGbWFsbG9jADkLbGxodHRwX2ZyZWUADARmcmVlAAwPbGxodHRwX2dldF90eXBlAA0VbGxodHRwX2dldF9odHRwX21ham9yAA4VbGxodHRwX2dldF9odHRwX21pbm9yAA8RbGxodHRwX2dldF9tZXRob2QAEBZsbGh0dHBfZ2V0X3N0YXR1c19jb2RlABESbGxodHRwX2dldF91cGdyYWRlABIMbGxodHRwX3Jlc2V0ABMObGxodHRwX2V4ZWN1dGUAFBRsbGh0dHBfc2V0dGluZ3NfaW5pdAAVDWxsaHR0cF9maW5pc2gAFgxsbGh0dHBfcGF1c2UAFw1sbGh0dHBfcmVzdW1lABgbbGxodHRwX3Jlc3VtZV9hZnRlcl91cGdyYWRlABkQbGxodHRwX2dldF9lcnJubwAaF2xsaHR0cF9nZXRfZXJyb3JfcmVhc29uABsXbGxodHRwX3NldF9lcnJvcl9yZWFzb24AHBRsbGh0dHBfZ2V0X2Vycm9yX3BvcwAdEWxsaHR0cF9lcnJub19uYW1lAB4SbGxodHRwX21ldGhvZF9uYW1lAB8SbGxodHRwX3N0YXR1c19uYW1lACAabGxodHRw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AXRrQT5qIQILIAEgAjYCHCABQgA3AhAgAkECdEH01wBqIQACQEHI1QAoAgAiA0EBIAJ0IgdxRQRAIAAgATYCAEHI1QAgAyAHcjYCACABIAA2AhggASABNgIIIAEgATYCDAwBCyAEQRkgAkEBdmtBACACQR9HG3QhAiAAKAIAIQACQANAIAAiAygCBEF4cSAERg0BIAJBHXYhACACQQF0IQIgAyAAQQRxakEQaiIHKAIAIgANAAsgByABNgIAIAEgAzYCGCABIAE2AgwgASABNgIIDAELIAMoAggiACABNgIMIAMgATYCCCABQQA2AhggASADNgIMIAEgADYCCAtB5NUAQeTVACgCAEEBayIAQX8gABs2AgALCwcAIAAtACgLBwAgAC0AKgsHACAALQArCwcAIAAtACkLBwAgAC8BNAsHACAALQAwC0ABBH8gACgCGCEBIAAvAS4hAiAALQAoIQMgACgCOCEEIAAQOCAAIAQ2AjggACADOgAoIAAgAjsBLiAAIAE2AhgLhocCAwd/A34BeyABIAJqIQQCQCAAIgMoAgwiAA0AIAMoAgQEQCADIAE2AgQLIwBBEGsiCSQAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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DAgLQeMBDAcLQdcBDAYLQdgBDAULQdkBDAQLQdoBDAMLQdsBDAILQd0BDAELQdwBCyECA0ACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAMCfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAn8CQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAwJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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A0EXNgIcIAMgADYCDCADIAFBAWo2AhQM+AILIABBFUYNI0EAIQIgA0EANgIcIAMgATYCFCADQdYMNgIQIANBIzYCDAz3AgsgAygCBCEAQQAhAiADQQA2AgQgAyAAIAEQNCIARQRAIAFBAWohAQwdCyADQRk2AhwgAyAANgIMIAMgAUEBajYCFAz2AgsgAygCBCEAQQAhAiADQQA2AgQgAyAAIAEQNCIARQRAIAFBAWohAQzvAgsgA0EaNgIcIAMgADYCDCADIAFBAWo2AhQM9QILIABBFUYNH0EAIQIgA0EANgIcIAMgATYCFCADQdAPNgIQIANBIjYCDAz0AgsgAygCBCEAIANBADYCBCADIAAgARAzIgBFBEAgAUEBaiEBDBsLIANBHDYCHCADIAA2AgwgAyABQQFqNgIUQQAhAgzzAgsgAygCBCEAIANBADYCBCADIAAgARAzIgBFBEAgAUEBaiEBDOsCCyADQR02AhwgAyAANgIMIAMgAUEBajYCFEEAIQIM8gILIABBO0cNASABQQFqIQELQSYhAgzXAgtBACECIANBADYCHCADIAE2AhQgA0GfFTYCECADQQw2AgwM7wILIAEgBEcEQANAIAEtAABBIEcNhAIgBCABQQFqIgFHDQALQSwhAgzvAgtBLCECDO4CCyABIARGBEBBNCECDO4CCwJAAkADQAJAIAEtAABBCmsOBAIAAAMACyAEIAFBAWoiAUcNAAtBNCECDO8CCyADKAIEIQAgA0EANgIEIAMgACABEDEiAEUNnwIgA0EyNgIcIAMgATYCFCADIAA2AgxBACECDO4CCyADKAIEIQAgA0EANgIEIAMgACABEDEiAEUEQCABQQFqIQEMnwILIANBMjYCHCADIAA2AgwgAyABQQFqNgIUQQAhAgztAgsgASAERwRAAkADQCABLQAAQTBrIgBB/wFxQQpPBEBBOiECDNcCCyADKQMgIgtCmbPmzJmz5swZVg0BIAMgC0IKfiIKNwMgIAogAK1C/wGDIgtCf4VWDQEgAyAKIAt8NwMgIAQgAUEBaiIBRw0AC0HAACECDO4CCyADKAIEIQAgA0EANgIEIAMgACABQQFqIgEQMSIADRcM4gILQcAAIQIM7AILIAEgBEYEQEHJACECDOwCCwJAA0ACQCABLQAAQQlrDhgAAqICogKpAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAgCiAgsgBCABQQFqIgFHDQALQckAIQIM7AILIAFBAWohASADQS9qLQAAQQFxDaUCIANBADYCHCADIAE2AhQgA0GXEDYCECADQQo2AgxBACECDOsCCyABIARHBEADQCABLQAAQSBHDRUgBCABQQFqIgFHDQALQfgAIQIM6wILQfgAIQIM6gILIANBAjoAKAw4C0EAIQIgA0EANgIcIANBvws2AhAgA0ECNgIMIAMgAUEBajYCFAzoAgtBACECDM4CC0ENIQIMzQILQRMhAgzMAgtBFSECDMsCC0EWIQIMygILQRghAgzJAgtBGSECDMgCC0EaIQIMxwILQRshAgzGAgtBHCECDMUCC0EdIQIMxAILQR4hAgzDAgtBHyECDMICC0EgIQIMwQILQSIhAgzAAgtBIyECDL8CC0ElIQIMvgILQeUAIQIMvQILIANBPTYCHCADIAE2AhQgAyAANgIMQQAhAgzVAgsgA0EbNgIcIAMgATYCFCADQaQcNgIQIANBFTYCDEEAIQIM1AILIANBIDYCHCADIAE2AhQgA0GYGjYCECADQRU2AgxBACECDNMCCyADQRM2AhwgAyABNgIUIANBmBo2AhAgA0EVNgIMQQAhAgzSAgsgA0ELNgIcIAMgATYCFCADQZgaNgIQIANBFTYCDEEAIQIM0QILIANBEDYCHCADIAE2AhQgA0GYGjYCECADQRU2AgxBACECDNACCyADQSA2AhwgAyABNgIUIANBpBw2AhAgA0EVNgIMQQAhAgzPAgsgA0ELNgIcIAMgATYCFCADQaQcNgIQIANBFTYCDEEAIQIMzgILIANBDDYCHCADIAE2AhQgA0GkHDYCECADQRU2AgxBACECDM0CC0EAIQIgA0EANgIcIAMgATYCFCADQd0ONgIQIANBEjYCDAzMAgsCQANAAkAgAS0AAEEKaw4EAAICAAILIAQgAUEBaiIBRw0AC0H9ASECDMwCCwJAAkAgAy0ANkEBRw0AQQAhAAJAIAMoAjgiAkUNACACKAJgIgJFDQAgAyACEQAAIQALIABFDQAgAEEVRw0BIANB/AE2AhwgAyABNgIUIANB3Bk2AhAgA0EVNgIMQQAhAgzNAgtB3AEhAgyzAgsgA0EANgIcIAMgATYCFCADQfkLNgIQIANBHzYCDEEAIQIMywILAkACQCADLQAoQQFrDgIEAQALQdsBIQIMsgILQdQBIQIMsQILIANBAjoAMUEAIQACQCADKAI4IgJFDQAgAigCACICRQ0AIAMgAhEAACEACyAARQRAQd0BIQIMsQILIABBFUcEQCADQQA2AhwgAyABNgIUIANBtAw2AhAgA0EQNgIMQQAhAgzKAgsgA0H7ATYCHCADIAE2AhQgA0GBGjYCECADQRU2AgxBACECDMkCCyABIARGBEBB+gEhAgzJAgsgAS0AAEHIAEYNASADQQE6ACgLQcABIQIMrgILQdoBIQIMrQILIAEgBEcEQCADQQw2AgggAyABNgIEQdkBIQIMrQILQfkBIQIMxQILIAEgBEYEQEH4ASECDMUCCyABLQAAQcgARw0EIAFBAWohAUHYASECDKsCCyABIARGBEBB9wEhAgzEAgsCQAJAIAEtAABBxQBrDhAABQUFBQUFBQUFBQUFBQUBBQsgAUEBaiEBQdYBIQIMqwILIAFBAWohAUHXASECDKoCC0H2ASECIAEgBEYNwgIgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABButUAai0AAEcNAyAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMwwILIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARAuIgBFBEBB4wEhAgyqAgsgA0H1ATYCHCADIAE2AhQgAyAANgIMQQAhAgzCAgtB9AEhAiABIARGDcECIAMoAgAiACAEIAFraiEFIAEgAGtBAWohBgJAA0AgAS0AACAAQbjVAGotAABHDQIgAEEBRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADMICCyADQYEEOwEoIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARAuIgANAwwCCyADQQA2AgALQQAhAiADQQA2AhwgAyABNgIUIANB5R82AhAgA0EINgIMDL8CC0HVASECDKUCCyADQfMBNgIcIAMgATYCFCADIAA2AgxBACECDL0CC0EAIQACQCADKAI4IgJFDQAgAigCQCICRQ0AIAMgAhEAACEACyAARQ1uIABBFUcEQCADQQA2AhwgAyABNgIUIANBgg82AhAgA0EgNgIMQQAhAgy9AgsgA0GPATYCHCADIAE2AhQgA0HsGzYCECADQRU2AgxBACECDLwCCyABIARHBEAgA0ENNgIIIAMgATYCBEHTASECDKMCC0HyASECDLsCCyABIARGBEBB8QEhAgy7AgsCQAJAAkAgAS0AAEHIAGsOCwABCAgICAgICAgCCAsgAUEBaiEBQdABIQIMowILIAFBAWohAUHRASECDKICCyABQQFqIQFB0gEhAgyhAgtB8AEhAiABIARGDbkCIAMoAgAiACAEIAFraiEGIAEgAGtBAmohBQNAIAEtAAAgAEG11QBqLQAARw0EIABBAkYNAyAAQQFqIQAgBCABQQFqIgFHDQALIAMgBjYCAAy5AgtB7wEhAiABIARGDbgCIAMoAgAiACAEIAFraiEGIAEgAGtBAWohBQNAIAEtAAAgAEGz1QBqLQAARw0DIABBAUYNAiAAQQFqIQAgBCABQQFqIgFHDQALIAMgBjYCAAy4AgtB7gEhAiABIARGDbcCIAMoAgAiACAEIAFraiEGIAEgAGtBAmohBQNAIAEtAAAgAEGw1QBqLQAARw0CIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBjYCAAy3AgsgAygCBCEAIANCADcDACADIAAgBUEBaiIBECsiAEUNAiADQewBNgIcIAMgATYCFCADIAA2AgxBACECDLYCCyADQQA2AgALIAMoAgQhACADQQA2AgQgAyAAIAEQKyIARQ2cAiADQe0BNgIcIAMgATYCFCADIAA2AgxBACECDLQCC0HPASECDJoCC0EAIQACQCADKAI4IgJFDQAgAigCNCICRQ0AIAMgAhEAACEACwJAIAAEQCAAQRVGDQEgA0EANgIcIAMgATYCFCADQeoNNgIQIANBJjYCDEEAIQIMtAILQc4BIQIMmgILIANB6wE2AhwgAyABNgIUIANBgBs2AhAgA0EVNgIMQQAhAgyyAgsgASAERgRAQesBIQIMsgILIAEtAABBL0YEQCABQQFqIQEMAQsgA0EANgIcIAMgATYCFCADQbI4NgIQIANBCDYCDEEAIQIMsQILQc0BIQIMlwILIAEgBEcEQCADQQ42AgggAyABNgIEQcwBIQIMlwILQeoBIQIMrwILIAEgBEYEQEHpASECDK8CCyABLQAAQTBrIgBB/wFxQQpJBEAgAyAAOgAqIAFBAWohAUHLASECDJYCCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNlwIgA0HoATYCHCADIAE2AhQgAyAANgIMQQAhAgyuAgsgASAERgRAQecBIQIMrgILAkAgAS0AAEEuRgRAIAFBAWohAQwBCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNmAIgA0HmATYCHCADIAE2AhQgAyAANgIMQQAhAgyuAgtBygEhAgyUAgsgASAERgRAQeUBIQIMrQILQQAhAEEBIQVBASEHQQAhAgJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAIAEtAABBMGsOCgoJAAECAwQFBggLC0ECDAYLQQMMBQtBBAwEC0EFDAMLQQYMAgtBBwwBC0EICyECQQAhBUEAIQcMAgtBCSECQQEhAEEAIQVBACEHDAELQQAhBUEBIQILIAMgAjoAKyABQQFqIQECQAJAIAMtAC5BEHENAAJAAkACQCADLQAqDgMBAAIECyAHRQ0DDAILIAANAQwCCyAFRQ0BCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNAiADQeIBNgIcIAMgATYCFCADIAA2AgxBACECDK8CCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNmgIgA0HjATYCHCADIAE2AhQgAyAANgIMQQAhAgyuAgsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDZgCIANB5AE2AhwgAyABNgIUIAMgADYCDAytAgtByQEhAgyTAgtBACEAAkAgAygCOCICRQ0AIAIoAkQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0GkDTYCECADQSE2AgxBACECDK0CC0HIASECDJMCCyADQeEBNgIcIAMgATYCFCADQdAaNgIQIANBFTYCDEEAIQIMqwILIAEgBEYEQEHhASECDKsCCwJAIAEtAABBIEYEQCADQQA7ATQgAUEBaiEBDAELIANBADYCHCADIAE2AhQgA0GZETYCECADQQk2AgxBACECDKsCC0HHASECDJECCyABIARGBEBB4AEhAgyqAgsCQCABLQAAQTBrQf8BcSICQQpJBEAgAUEBaiEBAkAgAy8BNCIAQZkzSw0AIAMgAEEKbCIAOwE0IABB/v8DcSACQf//A3NLDQAgAyAAIAJqOwE0DAILQQAhAiADQQA2AhwgAyABNgIUIANBlR42AhAgA0ENNgIMDKsCCyADQQA2AhwgAyABNgIUIANBlR42AhAgA0ENNgIMQQAhAgyqAgtBxgEhAgyQAgsgASAERgRAQd8BIQIMqQILAkAgAS0AAEEwa0H/AXEiAkEKSQRAIAFBAWohAQJAIAMvATQiAEGZM0sNACADIABBCmwiADsBNCAAQf7/A3EgAkH//wNzSw0AIAMgACACajsBNAwCC0EAIQIgA0EANgIcIAMgATYCFCADQZUeNgIQIANBDTYCDAyqAgsgA0EANgIcIAMgATYCFCADQZUeNgIQIANBDTYCDEEAIQIMqQILQcUBIQIMjwILIAEgBEYEQEHeASECDKgCCwJAIAEtAABBMGtB/wFxIgJBCkkEQCABQQFqIQECQCADLwE0IgBBmTNLDQAgAyAAQQpsIgA7ATQgAEH+/wNxIAJB//8Dc0sNACADIAAgAmo7ATQMAgtBACECIANBADYCHCADIAE2AhQgA0GVHjYCECADQQ02AgwMqQILIANBADYCHCADIAE2AhQgA0GVHjYCECADQQ02AgxBACECDKgCC0HEASECDI4CCyABIARGBEBB3QEhAgynAgsCQAJAAkACQCABLQAAQQprDhcCAwMAAwMDAwMDAwMDAwMDAwMDAwMDAQMLIAFBAWoMBQsgAUEBaiEBQcMBIQIMjwILIAFBAWohASADQS9qLQAAQQFxDQggA0EANgIcIAMgATYCFCADQY0LNgIQIANBDTYCDEEAIQIMpwILIANBADYCHCADIAE2AhQgA0GNCzYCECADQQ02AgxBACECDKYCCyABIARHBEAgA0EPNgIIIAMgATYCBEEBIQIMjQILQdwBIQIMpQILAkACQANAAkAgAS0AAEEKaw4EAgAAAwALIAQgAUEBaiIBRw0AC0HbASECDKYCCyADKAIEIQAgA0EANgIEIAMgACABEC0iAEUEQCABQQFqIQEMBAsgA0HaATYCHCADIAA2AgwgAyABQQFqNgIUQQAhAgylAgsgAygCBCEAIANBADYCBCADIAAgARAtIgANASABQQFqCyEBQcEBIQIMigILIANB2QE2AhwgAyAANgIMIAMgAUEBajYCFEEAIQIMogILQcIBIQIMiAILIANBL2otAABBAXENASADQQA2AhwgAyABNgIUIANB5Bw2AhAgA0EZNgIMQQAhAgygAgsgASAERgRAQdkB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CyADIAU2AgAMkAILIANBADYCACAGQQFqIQFBGgw8C0HKASECIAEgBEYNjgIgAygCACIAIAQgAWtqIQUgASAAa0EDaiEGAkADQCABLQAAIABBjdUAai0AAEcNOyAAQQNGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMjwILIANBADYCACAGQQFqIQFBIQw7CyABIARGBEBByQEhAgyOAgsCQAJAIAEtAABBwQBrDhQAPT09PT09PT09PT09PT09PT09AT0LIAFBAWohAUGtASECDPUBCyABQQFqIQFBsAEhAgz0AQsgASAERgRAQcgBIQIMjQILAkACQCABLQAAQdUAaw4LADw8PDw8PDw8PAE8CyABQQFqIQFBrgEhAgz0AQsgAUEBaiEBQa8BIQIM8wELQccBIQIgASAERg2LAiADKAIAIgAgBCABa2ohBSABIABrQQhqIQYCQANAIAEtAAAgAEGE1QBqLQAARw04IABBCEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyMAgsgA0EANgIAIAZBAWohAUEqDDgLIAEgBEYEQEHGASECDIsCCyABLQAAQdAARw04IAFBAWohAUElDDcLQcUBIQIgASAERg2JAiADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGB1QBqLQAARw02IABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyKAgsgA0EANgIAIAZBAWohAUEODDYLIAEgBEYEQEHEASECDIkCCyABLQAAQcUARw02IAFBAWohAUGrASECDO8BCyABIARGBEBBwwEhAgyIAgsCQAJAAkACQCABLQAAQcIAaw4PAAECOTk5OTk5OTk5OTkDOQsgAUEBaiEBQacBIQIM8QELIAFBAWohAUGoASECDPABCyABQQFqIQFBqQEhAgzvAQsgAUEBaiEBQaoBIQIM7gELQcIBIQIgASAERg2GAiADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEH+1ABqLQAARw0zIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyHAgsgA0EANgIAIAZBAWohAUEUDDMLQcEBIQIgASAERg2FAiADKAIAIgAgBCABa2ohBSABIABrQQRqIQYCQANA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BTYCAAzsAQsgA0EANgIAIAZBAWohAUEXDBgLQaYBIQIgASAERg3qASADKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEHB1ABqLQAARw0XIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzrAQsgA0EANgIAIAZBAWohAUEYDBcLIAEgBEYEQEGlASECDOoBCwJAAkAgAS0AAEHJAGsOBwAZGRkZGQEZCyABQQFqIQFBiwEhAgzRAQsgAUEBaiEBQYwBIQIM0AELQaQBIQIgASAERg3oASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEGm1QBqLQAARw0VIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzpAQsgA0EANgIAIAZBAWohAUEJDBULQaMBIQIgASAERg3nASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEGk1QBqLQAARw0UIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzoAQsgA0EANgIAIAZBAWohAUEfDBQLQaIBIQIgASAERg3mASADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEG+1ABqLQAARw0TIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAznAQsgA0EANgIAIAZBAWohAUECDBMLQaEBIQIgASAERg3lASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYDQCABLQAAIABBvNQAai0AAEcNESAAQQFGDQIgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM5QELIAEgBEYEQEGgASECDOUBC0EBIAEtAABB3wBHDREaIAFBAWohAUGHASECDMsBCyADQQA2AgAgBkEBaiEBQYgBIQIMygELQZ8BIQIgASAERg3iASADKAIAIgAgBCABa2ohBSABIABrQQhqIQYCQANAIAEtAAAgAEGE1QBqLQAARw0PIABBCEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzjAQsgA0EANgIAIAZBAWohAUEpDA8LQZ4BIQIgASAERg3hASADKAIAIgAgBCABa2ohBSABIABrQQNqIQYCQANAIAEtAAAgAEG41ABqLQAARw0OIABBA0YNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAziAQsgA0EANgIAIAZBAWohAUEtDA4LIAEgBEYEQEGdASECDOEBCyABLQAAQcUARw0OIAFBAWohAUGEASECDMcBCyABIARGBEBBnAEhAgzgAQsCQAJAIAEtAABBzABrDggADw8PDw8PAQ8LIAFBAWohAUGCASECDMcBCyABQQFqIQFBgwEhAgzGAQtBmwEhAiABIARGDd4BIAMoAgAiACAEIAFraiEFIAEgAGtBBGohBgJAA0AgAS0AACAAQbPUAGotAABHDQsgAEEERg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADN8BCyADQQA2AgAgBkEBaiEBQSMMCwtBmgEhAiABIARGDd0BIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQbDUAGotAABHDQogAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADN4BCyADQQA2AgAgBkEBaiEBQQAMCgsgASAERgRAQZkBIQIM3QELAkACQCABLQAAQcgAaw4IAAwMDAwMDAEMCyABQQFqIQFB/QAhAgzEAQsgAUEBaiEBQYABIQIMwwELIAEgBEYEQEGYASECDNwBCwJAAkAgAS0AAEHOAGsOAwALAQsLIAFBAWohAUH+ACECDMMBCyABQQFqIQFB/wAhAgzCAQsgASAERgRAQZcBIQIM2wELIAEtAABB2QBHDQggAUEBaiEBQQgMBwtBlgEhAiABIARGDdkBIAMoAgAiACAEIAFraiEFIAEgAGtBA2ohBgJAA0AgAS0AACAAQazUAGotAABHDQYgAEEDRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADNoBCyADQQA2AgAgBkEBaiEBQQUMBgtBlQEhAiABIARGDdgBIAMoAgAiACAEIAFraiEFIAEgAGtBBWohBgJAA0AgAS0AACAAQabUAGotAABHDQUgAEEFRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADNkBCyADQQA2AgAgBkEBaiEBQRYMBQtBlAEhAiABIARGDdcBIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQaHVAGotAABHDQQgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADNgBCyADQQA2AgAgBkEBaiEBQRAMBAsgASAERgRAQZMBIQIM1wELAkACQCABLQAAQcMAaw4MAAYGBgYGBgYGBgYBBgsgAUEBaiEBQfkAIQIMvgELIAFBAWohAUH6ACECDL0BC0GSASECIAEgBEYN1QEgAygCACIAIAQgAWtqIQUgASAAa0EFaiEGAkADQCABLQAAIABBoNQAai0AAEcNAiAAQQVGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM1gELIANBADYCACAGQQFqIQFBJAwCCyADQQA2AgAMAgsgASAERgRAQZEBIQIM1AELIAEtAABBzABHDQEgAUEBaiEBQRMLOgApIAMoAgQhACADQQA2AgQgAyAAIAEQLiIADQIMAQtBACECIANBADYCHCADIAE2AhQgA0H+HzYCECADQQY2AgwM0QELQfgAIQIMtwELIANBkAE2AhwgAyABNgIUIAMgADYCDEEAIQIMzwELQQAhAAJAIAMoAjgiAkUNACACKAJAIgJFDQAgAyACEQAAIQALIABFDQAgAEEVRg0BIANBADYCHCADIAE2AhQgA0GCDzYCECADQSA2AgxBACECDM4BC0H3ACECDLQBCyADQY8BNgIcIAMgATYCFCADQewbNgIQIANBFTYCDEEAIQIMzAELIAEgBEYEQEGPASECDMwBCwJAIAEtAABBIEYEQCABQQFqIQEMAQsgA0EANgIcIAMgATYCFCADQZsfNgIQIANBBjYCDEEAIQIMzAELQQIhAgyyAQsDQCABLQAAQSBHDQIgBCABQQFqIgFHDQALQY4BIQIMygELIAEgBEYEQEGNASECDMoBCwJAIAEtAABBCWsOBEoAAEoAC0H1ACECDLABCyADLQApQQVGBEBB9gAhAgywAQtB9AAhAgyvAQsgASAERgRAQYwBIQIMyAELIANBEDYCCCADIAE2AgQMCgsgASAERgRAQYsBIQIMxwELAkAgAS0AAEEJaw4ERwAARwALQfMAIQIMrQELIAEgBEcEQCADQRA2AgggAyABNgIEQfEAIQIMrQELQYoBIQIMxQELAkAgASAERwRAA0AgAS0AAEGg0ABqLQAAIgBBA0cEQAJAIABBAWsOAkkABAtB8AAhAgyvAQsgBCABQQFqIgFHDQALQYgBIQIMxgELQYgBIQIMxQELIANBADYCHCADIAE2AhQgA0HbIDYCECADQQc2AgxBACECDMQBCyABIARGBEBBiQEhAgzEAQsCQAJAAkAgAS0AAEGg0gBqLQAAQQFrDgNGAgABC0HyACECDKwBCyADQQA2AhwgAyABNgIUIANBtBI2AhAgA0EHNgIMQQAhAgzEAQtB6gAhAgyqAQsgASAERwRAIAFBAWohAUHvACECDKoBC0GHASECDMIBCyAEIAEiAEYEQEGGASECDMIBCyAALQAAIgFBL0YEQCAAQQFqIQFB7gAhAgypAQsgAUEJayICQRdLDQEgACEBQQEgAnRBm4CABHENQQwBCyAEIAEiAEYEQEGFASECDMEBCyAALQAAQS9HDQAgAEEBaiEBDAMLQQAhAiADQQA2AhwgAyAANgIUIANB2yA2AhAgA0EHNgIMDL8BCwJAAkACQAJAAkADQCABLQAAQaDOAGotAAAiAEEFRwRAAkACQCAAQQFrDghHBQYHCAAEAQgLQesAIQIMrQELIAFBAWohAUHtACECDKwBCyAEIAFBAWoiAUcNAAtBhAEhAgzDAQsgAUEBagwUCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNHiADQdsANgIcIAMgATYCFCADIAA2AgxBACECDMEBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNHiADQd0ANgIcIAMgATYCFCADIAA2AgxBACECDMABCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNHiADQfoANgIcIAMgATYCFCADIAA2AgxBACECDL8BCyADQQA2AhwgAyABNgIUIANB+Q82AhAgA0EHNgIMQQAhAgy+AQsgASAERgRAQYMBIQIMvgELAkAgAS0AAEGgzgBqLQAAQQFrDgg+BAUGAAgCAwcLIAFBAWohAQtBAyECDKMBCyABQQFqDA0LQQAhAiADQQA2AhwgA0HREjYCECADQQc2AgwgAyABQQFqNgIUDLoBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNFiADQdsANgIcIAMgATYCFCADIAA2AgxBACECDLkBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNFiADQd0ANgIcIAMgATYCFCADIAA2AgxBACECDLgBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNFiADQfoANgIcIAMgATYCFCADIAA2AgxBACECDLcBCyADQQA2AhwgAyABNgIUIANB+Q82AhAgA0EHNgIMQQAhAgy2AQtB7AAhAgycAQsgASAERgRAQYIBIQIMtQELIAFBAWoMAgsgASAERgRAQYEBIQIMtAELIAFBAWoMAQsgASAERg0BIAFBAWoLIQFBBCECDJgBC0GAASECDLABCwNAIAEtAABBoMwAai0AACIAQQJHBEAgAEEBRwRAQekAIQIMmQELDDELIAQgAUEBaiIBRw0AC0H/ACECDK8BCyABIARGBEBB/gAhAgyvAQsCQCABLQAAQQlrDjcvAwYvBAYGBgYGBgYGBgYGBgYGBgYGBgUGBgIGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYABgsgAUEBagshAUEFIQIMlAELIAFBAWoMBgsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQggA0HbADYCHCADIAE2AhQgAyAANgIMQQAhAgyrAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQggA0HdADYCHCADIAE2AhQgAyAANgIMQQAhAgyqAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQggA0H6ADYCHCADIAE2AhQgAyAANgIMQQAhAgypAQsgA0EANgIcIAMgATYCFCADQY0UNgIQIANBBzYCDEEAIQIMqAELAkACQAJAAkADQCABLQAAQaDKAGotAAAiAEEFRwRAAkAgAEEBaw4GLgMEBQYABgtB6AAhAgyUAQsgBCABQQFqIgFHDQALQf0AIQIMqwELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0HIANB2wA2AhwgAyABNgIUIAMgADYCDEEAIQIMqgELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0HIANB3QA2AhwgAyABNgIUIAMgADYCDEEAIQIMqQELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0HIANB+gA2AhwgAyABNgIUIAMgADYCDEEAIQIMqAELIANBADYCHCADIAE2AhQgA0HkCDYCECADQQc2AgxBACECDKcBCyABIARGDQEgAUEBagshAUEGIQIMjAELQfwAIQIMpAELAkACQAJAAkADQCABLQAAQaDIAGotAAAiAEEFRwRAIABBAWsOBCkCAwQFCyAEIAFBAWoiAUcNAAtB+wAhAgynAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQMgA0HbADYCHCADIAE2AhQgAyAANgIMQQAhAgymAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQMgA0HdADYCHCADIAE2AhQgAyAANgIMQQAhAgylAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQMgA0H6ADYCHCADIAE2AhQgAyAANgIMQQAhAgykAQsgA0EANgIcIAMgATYCFCADQbwKNgIQIANBBzYCDEEAIQIMowELQc8AIQIMiQELQdEAIQIMiAELQecAIQIMhwELIAEgBEYEQEH6ACECDKABCwJAIAEtAABBCWsOBCAAACAACyABQQFqIQFB5gAhAgyGAQsgASAERgRAQfkAIQIMnwELAkAgAS0AAEEJaw4EHwAAHwALQQAhAAJAIAMoAjgiAkUNACACKAI4IgJFDQAgAyACEQAAIQALIABFBEBB4gEhAgyGAQsgAEEVRwRAIANBADYCHCADIAE2AhQgA0HJDTYCECADQRo2AgxBACECDJ8BCyADQfgANgIcIAMgATYCFCADQeoaNgIQIANBFTYCDEEAIQIMngELIAEgBEcEQCADQQ02AgggAyABNgIEQeQAIQIMhQELQfcAIQIMnQELIAEgBEYEQEH2ACECDJ0BCwJAAkACQCABLQAAQcgAaw4LAAELCwsLCwsLCwILCyABQQFqIQFB3QAhAgyFAQsgAUEBaiEBQeAAIQIMhAELIAFBAWohAUHjACECDIMBC0H1ACECIAEgBEYNmwEgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBtdUAai0AAEcNCCAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMnAELIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARArIgAEQCADQfQANgIcIAMgATYCFCADIAA2AgxBACECDJwBC0HiACECDIIBC0EAIQACQCADKAI4IgJFDQAgAigCNCICRQ0AIAMgAhEAACEACwJAIAAEQCAAQRVGDQEgA0EANgIcIAMgATYCFCADQeoNNgIQIANBJjYCDEEAIQIMnAELQeEAIQIMggELIANB8wA2AhwgAyABNgIUIANBgBs2AhAgA0EVNgIMQQAhAgyaAQsgAy0AKSIAQSNrQQtJDQkCQCAAQQZLDQBBASAAdEHKAHFFDQAMCgtBACECIANBADYCHCADIAE2AhQgA0HtCTYCECADQQg2AgwMmQELQfIAIQIgASAERg2YASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEGz1QBqLQAARw0FIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyZAQsgAygCBCEAIANCADcDACADIAAgBkEBaiIBECsiAARAIANB8QA2AhwgAyABNgIUIAMgADYCDEEAIQIMmQELQd8AIQIMfwtBACEAAkAgAygCOCICRQ0AIAIoAjQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0HqDTYCECADQSY2AgxBACECDJkBC0HeACECDH8LIANB8AA2AhwgAyABNgIUIANBgBs2AhAgA0EVNgIMQQAhAgyXAQsgAy0AKUEhRg0GIANBADYCHCADIAE2AhQgA0GRCjYCECADQQg2AgxBACECDJYBC0HvACECIAEgBEYNlQEgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBsNUAai0AAEcNAiAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMlgELIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARArIgBFDQIgA0HtADYCHCADIAE2AhQgAyAANgIMQQAhAgyVAQsgA0EANgIACyADKAIEIQAgA0EANgIEIAMgACABECsiAEUNgAEgA0HuADYCHCADIAE2AhQgAyAANgIMQQAhAgyTAQtB3AAhAgx5C0EAIQACQCADKAI4IgJFDQAgAigCNCICRQ0AIAMgAhEAACEACwJAIAAEQCAAQRVGDQEgA0EANgIcIAMgATYCFCADQeoNNgIQIANBJjYCDEEAIQIMkwELQdsAIQIMeQsgA0HsADYCHCADIAE2AhQgA0GAGzYCECADQRU2AgxBACECDJEBCyADLQApIgBBI0kNACAAQS5GDQAgA0EANgIcIAMgATYCFCADQckJNgIQIANBCDYCDEEAIQIMkAELQdoAIQIMdgsgASAERgRAQesAIQIMjwELAkAgAS0AAEEvRgRAIAFBAWohAQwBCyAD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ciBIVFRQL3gueCByZXF1ZXN0AEludmFsaWQgbWV0aG9kIGZvciBSVFNQL3gueCByZXF1ZXN0AEV4cGVjdGVkIFNPVVJDRSBtZXRob2QgZm9yIElDRS94LnggcmVxdWVzdABJbnZhbGlkIGNoYXIgaW4gdXJsIGZyYWdtZW50IHN0YXJ0AEV4cGVjdGVkIGRvdABTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3N0YXR1cwBJbnZhbGlkIHJlc3BvbnNlIHN0YXR1cwBFeHBlY3RlZCBMRiBhZnRlciBoZWFkZXJzAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMAVXNlciBjYWxsYmFjayBlcnJvcgBgb25fcmVzZXRgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19oZWFkZXJgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2JlZ2luYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlYCBjYWxsYmFjayBlcnJvcgBgb25fc3RhdHVzX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdmVyc2lvbl9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3VybF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3Byb3RvY29sX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fcHJvdG9jb2wARW1wdHkgQ29udGVudC1MZW5ndGgASW52YWxpZCBjaGFyYWN0ZXIgaW4gQ29udGVudC1MZW5ndGgAVHJhbnNmZXItRW5jb2RpbmcgY2FuJ3QgYmUgcHJlc2VudCB3aXRoIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgc2l6ZQBFeHBlY3RlZCBMRiBhZnRlciBjaHVuayBzaXplAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBVbmV4cGVjdGVkIHdoaXRlc3BhY2UgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgTEYgYWZ0ZXIgaGVhZGVyIHZhbHVlAEludmFsaWQgYFRyYW5zZmVyLUVuY29kaW5nYCBoZWFkZXIgdmFsdWUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciBjaHVuayBleHRlbnNpb24gdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZSB2YWx1ZQBJbnZhbGlkIHF1b3RlZC1wYWlyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAFBhdXNlZCBieSBvbl9oZWFkZXJzX2NvbXBsZXRlAEludmFsaWQgRU9GIHN0YXRlAG9uX3Jlc2V0IHBhdXNlAG9uX2NodW5rX2hlYWRlciBwYXVzZQBvbl9tZXNzYWdlX2JlZ2luIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZSBwYXVzZQBvbl9zdGF0dXNfY29tcGxldGUgcGF1c2UAb25fdmVyc2lvbl9jb21wbGV0ZSBwYXVzZQBvbl91cmxfY29tcGxldGUgcGF1c2UAb25fcHJvdG9jb2xfY29tcGxldGUgcGF1c2UAb25fY2h1bmtfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX3ZhbHVlX2NvbXBsZXRlIHBhdXNlAG9uX21lc3NhZ2VfY29tcGxldGUgcGF1c2UAb25fbWV0aG9kX2NvbXBsZXRlIHBhdXNlAG9uX2hlYWRlcl9maWVsZF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19leHRlbnNpb25fbmFtZSBwYXVzZQBVbmV4cGVjdGVkIHNwYWNlIGFmdGVyIHN0YXJ0IGxpbmUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciByZXNwb25zZSBsaW5lAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fY2h1bmtfZXh0ZW5zaW9uX25hbWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBuYW1lAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgZXh0ZW5zaW9uIG5hbWUASW52YWxpZCBzdGF0dXMgY29kZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABNaXNzaW5nIGV4cGVjdGVkIENSIGFmdGVyIGNodW5rIGRhdGEARXhwZWN0ZWQgTEYgYWZ0ZXIgY2h1bmsgZGF0YQBVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AARGF0YSBhZnRlciBgQ29ubmVjdGlvbjogY2xvc2VgAFNXSVRDSF9QUk9YWQBVU0VfUFJPWFkATUtBQ1RJVklUWQBVTlBST0NFU1NBQkxFX0VOVElUWQBRVUVSWQBDT1BZAE1PVkVEX1BFUk1BTkVOVExZAFRPT19FQVJMWQBOT1RJRlkARkFJTEVEX0RFUEVOREVOQ1kAQkFEX0dBVEVXQVkAUExBWQBQVVQAQ0hFQ0tPVVQAR0FURVdBWV9USU1FT1VUAFJFUVVFU1RfVElNRU9VVABORVRXT1JLX0NPTk5FQ1RfVElNRU9VVABDT05ORUNUSU9OX1RJTUVPVVQATE9HSU5fVElNRU9VVABORVRXT1JLX1JFQURfVElNRU9VVABQT1NUAE1JU0RJUkVDVEVEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9SRVFVRVNUAENMSUVOVF9DTE9TRURfTE9BRF9CQUxBTkNFRF9SRVFVRVNUAEJBRF9SRVFVRVNUAEhUVFBfUkVRVUVTVF9TRU5UX1RPX0hUVFBTX1BPUlQAUkVQT1JUAElNX0FfVEVBUE9UAFJFU0VUX0NPTlRFTlQATk9fQ09OVEVOVABQQVJUSUFMX0NPTlRFTlQASFBFX0lOVkFMSURfQ09OU1RBTlQASFBFX0NCX1JFU0VUAEdFVABIUEVfU1RSSUNUAENPTkZMSUNUAFRFTVBPUkFSWV9SRURJUkVDVABQRVJNQU5FTlRfUkVESVJFQ1QAQ09OTkVDVABNVUxUSV9TVEFUVVMASFBFX0lOVkFMSURfU1RBVFVTAFRPT19NQU5ZX1JFUVVFU1RTAEVBUkxZX0hJTlRTAFVOQVZBSUxBQkxFX0ZPUl9MRUdBTF9SRUFTT05TAE9QVElPTlMAU1dJVENISU5HX1BST1RPQ09MUwBWQVJJQU5UX0FMU09fTkVHT1RJQVRFUwBNVUxUSVBMRV9DSE9JQ0VTAElOVEVSTkFMX1NFUlZFUl9FUlJPUgBXRUJfU0VSVkVSX1VOS05PV05fRVJST1IAUkFJTEdVTl9FUlJPUgBJREVOVElUWV9QUk9WSURFUl9BVVRIRU5USUNBVElPTl9FUlJPUgBTU0xfQ0VSVElGSUNBVEVfRVJST1IASU5WQUxJRF9YX0ZPUldBUkRFRF9GT1IAU0VUX1BBUkFNRVRFUgBHRVRfUEFSQU1FVEVSAEhQRV9VU0VSAFNFRV9PVEhFUgBIUEVfQ0JfQ0hVTktfSEVBREVSAEV4cGVjdGVkIExGIGFmdGVyIENSAE1LQ0FMRU5EQVIAU0VUVVAAV0VCX1NFUlZFUl9JU19ET1dOAFRFQVJET1dOAEhQRV9DTE9TRURfQ09OTkVDVElPTgBIRVVSSVNUSUNfRVhQSVJBVElPTgBESVNDT05ORUNURURfT1BFUkFUSU9OAE5PTl9BVVRIT1JJVEFUSVZFX0lORk9STUFUSU9OAEhQRV9JTlZBTElEX1ZFUlNJT04ASFBFX0NCX01FU1NBR0VfQkVHSU4AU0lURV9JU19GUk9aRU4ASFBFX0lOVkFMSURfSEVBREVSX1RPS0VOAElOVkFMSURfVE9LRU4ARk9SQklEREVOAEVOSEFOQ0VfWU9VUl9DQUxNAEhQRV9JTlZBTElEX1VSTABCTE9DS0VEX0JZX1BBUkVOVEFMX0NPTlRST0wATUtDT0wAQUNMAEhQRV9JTlRFUk5BTABSRVFVRVNUX0hFQURFUl9GSUVMRFNfVE9PX0xBUkdFX1VOT0ZGSUNJQUwASFBFX09LAFVOTElOSwBVTkxPQ0sAUFJJAFJFVFJZX1dJVEgASFBFX0lOVkFMSURfQ09OVEVOVF9MRU5HVEgASFBFX1VORVhQRUNURURfQ09OVEVOVF9MRU5HVEgARkxVU0gAUFJPUFBBVENIAE0tU0VBUkNIAFVSSV9UT09fTE9ORwBQUk9DRVNTSU5HAE1JU0NFTExBTkVPVVNfUEVSU0lTVEVOVF9XQVJOSU5HAE1JU0NFTExBTkVPVVNfV0FSTklORwBIUEVfSU5WQUxJRF9UUkFOU0ZFUl9FTkNPRElORwBFeHBlY3RlZCBDUkxGAEhQRV9JTlZBTElEX0NIVU5LX1NJWkUATU9WRQBDT05USU5VRQBIUEVfQ0JfU1RBVFVTX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJTX0NPTVBMRVRFAEhQRV9DQl9WRVJTSU9OX0NPTVBMRVRFAEhQRV9DQl9VUkxfQ09NUExFVEUASFBFX0NCX1BST1RPQ09MX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19DT01QTEVURQBIUEVfQ0JfSEVBREVSX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fVkFMVUVfQ09NUExFVEUASFBFX0NCX0NIVU5LX0VYVEVOU0lPTl9OQU1FX0NPTVBMRVRFAEhQRV9DQl9NRVNTQUdFX0NPTVBMRVRFAEhQRV9DQl9NRVRIT0RfQ09NUExFVEUASFBFX0NCX0hFQURFUl9GSUVMRF9DT01QTEVURQBERUxFVEUASFBFX0lOVkFMSURfRU9GX1NUQVRFAElOVkFMSURfU1NMX0NFUlRJRklDQVRFAFBBVVNFAE5PX1JFU1BPTlNFAFVOU1VQUE9SVEVEX01FRElBX1RZUEUAR09ORQBOT1RfQUNDRVBUQUJMRQBTRVJWSUNFX1VOQVZBSUxBQkxFAFJBTkdFX05PVF9TQVRJU0ZJQUJMRQBPUklHSU5fSVNfVU5SRUFDSEFCTEUAUkVTUE9OU0VfSVNfU1RBTEUAUFVSR0UATUVSR0UAUkVRVUVTVF9IRUFERVJfRklFTERTX1RPT19MQVJHRQBSRVFVRVNUX0hFQURFUl9UT09fTEFSR0UAUEFZTE9BRF9UT09fTEFSR0UASU5TVUZGSUNJRU5UX1NUT1JBR0UASFBFX1BBVVNFRF9VUEdSQURFAEhQRV9QQVVTRURfSDJfVVBHUkFERQBTT1VSQ0UAQU5OT1VOQ0UAVFJBQ0UASFBFX1VORVhQRUNURURfU1BBQ0UAREVTQ1JJQkUAVU5TVUJTQ1JJQkUAUkVDT1JEAEhQRV9JTlZBTElEX01FVEhPRABOT1RfRk9VTkQAUFJPUEZJTkQAVU5CSU5EAFJFQklORABVTkFVVEhPUklaRUQATUVUSE9EX05PVF9BTExPV0VEAEhUVFBfVkVSU0lPTl9OT1RfU1VQUE9SVEVEAEFMUkVBRFlfUkVQT1JURUQAQUNDRVBURUQATk9UX0lNUExFTUVOVEVEAExPT1BfREVURUNURUQASFBFX0NSX0VYUEVDVEVEAEhQRV9MRl9FWFBFQ1RFRABDUkVBVEVEAElNX1VTRUQASFBFX1BBVVNFRABUSU1FT1VUX09DQ1VSRUQAUEFZTUVOVF9SRVFVSVJFRABQUkVDT05ESVRJT05fUkVRVUlSRUQAUFJPWFlfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATkVUV09SS19BVVRIRU5USUNBVElPTl9SRVFVSVJFRABMRU5HVEhfUkVRVUlSRUQAU1NMX0NFUlRJRklDQVRFX1JFUVVJUkVEAFVQR1JBREVfUkVRVUlSRUQAUEFHRV9FWFBJUkVEAFBSRUNPTkRJVElPTl9GQUlMRUQARVhQRUNUQVRJT05fRkFJTEVEAFJFVkFMSURBVElPTl9GQUlMRUQAU1NMX0hBTkRTSEFLRV9GQUlMRUQATE9DS0VEAFRSQU5TRk9STUFUSU9OX0FQUExJRUQATk9UX01PRElGSUVEAE5PVF9FWFRFTkRFRABCQU5EV0lEVEhfTElNSVRfRVhDRUVERUQAU0lURV9JU19PVkVSTE9BREVEAEhFQUQARXhwZWN0ZWQgSFRUUC8sIFJUU1AvIG9yIElDRS8A5xUAAK8VAACkEgAAkhoAACYWAACeFAAA2xkAAHkVAAB+EgAA/hQAADYVAAALFgAA2BYAAPMSAABCGAAArBYAABIVAAAUFwAA7xcAAEgUAABxFwAAshoAAGsZAAB+GQAANRQAAIIaAABEFwAA/RYAAB4YAACHFwAAqhkAAJMSAAAHGAAALBcAAMoXAACkFwAA5xUAAOcVAABYFwAAOxgAAKASAAAtHAAAwxEAAEgRAADeEgAAQhMAAKQZAAD9EAAA9xUAAKUVAADvFgAA+BkAAEoWAABWFgAA9RUAAAoaAAAIGgAAARoAAKsVAABCEgAA1xAAAEwRAAAFGQAAVBYAAB4RAADKGQAAyBkAAE4WAAD/GAAAcRQAAPAVAADuFQAAlBkAAPwVAAC/GQAAmxkAAHwUAABDEQAAcBgAAJUUAAAnFAAAGRQAANUSAADUGQAARBYAAPcQAEG5OwsBAQBB0DsL4AEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEDAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBuj0LBAEAAAIAQdE9C14DBAMDAwMDAAADAwADAwADAwMDAwMDAwMDAAUAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAwADAEG6PwsEAQAAAgBB0T8LXgMAAwMDAwMAAAMDAAMDAAMDAwMDAwMDAwMABAAFAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwADAAMAQbDBAAsNbG9zZWVlcC1hbGl2ZQBBycEACwEBAEHgwQAL4AEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBycMACwEBAEHgwwAL5wEBAQEBAQEBAQEBAQECAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAWNodW5rZWQAQfHFAAteAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQBB0McACyFlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AQYDIAAsgcmFuc2Zlci1lbmNvZGluZ3BncmFkZQ0KDQpTTQ0KDQoAQanIAAsFAQIAAQMAQcDIAAtfBAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanKAAsFAQIAAQMAQcDKAAtfBAUFBgUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanMAAsEAQAAAQBBwcwAC14CAgACAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAEGpzgALBQECAAEDAEHAzgALXwQFAAAFBQUFBQUFBQUFBQYFBQUFBQUFBQUFBQUABQAHCAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQAFAAUABQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAAAAFAEGp0AALBQEBAAEBAEHA0AALAQEAQdrQAAtBAgAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAQanSAAsFAQEAAQEAQcDSAAsBAQBBytIACwYCAAAAAAIAQeHSAAs6AwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBBoNQAC50BTk9VTkNFRUNLT1VUTkVDVEVURUNSSUJFTFVTSEVURUFEU0VBUkNIUkdFQ1RJVklUWUxFTkRBUlZFT1RJRllQVElPTlNDSFNFQVlTVEFUQ0hHRVVFUllPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFVFRQQ0VUU1BBRFRQLw==","base64")}})});var Qq=R((iiY,_zQ)=>{var wzQ=["GET","HEAD","POST"],pw0=new Set(wzQ),iw0=[101,204,205,304],jzQ=[301,302,303,307,308],nw0=new Set(jzQ),OzQ=["1","7","9","11","13","15","17","19","20","21","22","23","25","37","42","43","53","69","77","79","87","95","101","102","103","104","109","110","111","113","115","117","119","123","135","137","139","143","161","179","389","427","465","512","513","514","515","526","530","531","532","540","548","554","556","563","587","601","636","989","990","993","995","1719","1720","1723","2049","3659","4045","4190","5060","5061","6000","6566","6665","6666","6667","6668","6669","6679","6697","10080"],sw0=new Set(OzQ),PzQ=["no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"],rw0=["",...PzQ],aw0=new Set(PzQ),ow0=["follow","manual","error"],TzQ=["GET","HEAD","OPTIONS","TRACE"],tw0=new Set(TzQ),ew0=["navigate","same-origin","no-cors","cors"],Aj0=["omit","same-origin","include"],Qj0=["default","no-store","reload","no-cache","force-cache","only-if-cached"],Bj0=["content-encoding","content-language","content-location","content-type","content-length"],Yj0=["half"],SzQ=["CONNECT","TRACE","TRACK"],Jj0=new Set(SzQ),kzQ=["audio","audioworklet","font","image","manifest","paintworklet","script","style","track","video","xslt",""],Cj0=new Set(kzQ);_zQ.exports={subresource:kzQ,forbiddenMethods:SzQ,requestBodyHeader:Bj0,referrerPolicy:rw0,requestRedirect:ow0,requestMode:ew0,requestCredentials:Aj0,requestCache:Qj0,redirectStatus:jzQ,corsSafeListedMethods:wzQ,nullBodyStatus:iw0,safeMethods:TzQ,badPorts:OzQ,requestDuplex:Yj0,subresourceSet:Cj0,badPortsSet:sw0,redirectStatusSet:nw0,corsSafeListedMethodsSet:pw0,safeMethodsSet:tw0,forbiddenMethodsSet:Jj0,referrerPolicyTokens:aw0}});var Gr=R((niY,vzQ)=>{var Xr=Symbol.for("undici.globalOrigin.1");function Xj0(){return globalThis[Xr]}function Gj0(A){if(A===void 0){Object.defineProperty(globalThis,Xr,{value:void 0,writable:!0,enumerable:!1,configurable:!1});return}let Q=new URL(A);if(Q.protocol!=="http:"&&Q.protocol!=="https:")throw TypeError(`Only http & https urls are allowed, received ${Q.protocol}`);Object.defineProperty(globalThis,Xr,{value:Q,writable:!0,enumerable:!1,configurable:!1})}vzQ.exports={getGlobalOrigin:Xj0,setGlobalOrigin:Gj0}});var g8=R((siY,mzQ)=>{var iT=u("node:assert"),Fj0=new TextEncoder,Bq=/^[!#$%&'*+\-.^_|~A-Za-z0-9]+$/,Wj0=/[\u000A\u000D\u0009\u0020]/,Zj0=/[\u0009\u000A\u000C\u000D\u0020]/g,$j0=/^[\u0009\u0020-\u007E\u0080-\u00FF]+$/;function Uj0(A){iT(A.protocol==="data:");let Q=gzQ(A,!0);Q=Q.slice(5);let B={position:0},Y=mK(",",Q,B),J=Y.length;if(Y=Dj0(Y,!0,!0),B.position>=Q.length)return"failure";B.position++;let C=Q.slice(J+1),X=xzQ(C);if(/;(\u0020){0,}base64$/i.test(Y)){let F=bzQ(X);if(X=Kj0(F),X==="failure")return"failure";Y=Y.slice(0,-6),Y=Y.replace(/(\u0020)+$/,""),Y=Y.slice(0,-1)}if(Y.startsWith(";"))Y="text/plain"+Y;let G=Fr(Y);if(G==="failure")G=Fr("text/plain;charset=US-ASCII");return{mimeType:G,body:X}}function gzQ(A,Q=!1){if(!Q)return A.href;let B=A.href,Y=A.hash.length,J=Y===0?B:B.substring(0,B.length-Y);if(!Y&&B.endsWith("#"))return J.slice(0,-1);return J}function nT(A,Q,B){let Y="";while(B.position=48&&A<=57||A>=65&&A<=70||A>=97&&A<=102}function hzQ(A){return A>=48&&A<=57?A-48:(A&223)-55}function Ej0(A){let Q=A.length,B=new Uint8Array(Q),Y=0;for(let J=0;J=A.length)return"failure";Q.position++;let Y=mK(";",A,Q);if(Y=pT(Y,!1,!0),Y.length===0||!Bq.test(Y))return"failure";let J=B.toLowerCase(),C=Y.toLowerCase(),X={type:J,subtype:C,parameters:new Map,essence:`${J}/${C}`};while(Q.positionWj0.test(W),A,Q);let G=nT((W)=>W!==";"&&W!=="=",A,Q);if(G=G.toLowerCase(),Q.position=A.length)break;let F=null;if(A[Q.position]==='"')F=fzQ(A,Q,!0),mK(";",A,Q);else if(F=mK(";",A,Q),F=pT(F,!1,!0),F.length===0)continue;if(G.length!==0&&Bq.test(G)&&(F.length===0||$j0.test(F))&&!X.parameters.has(G))X.parameters.set(G,F)}return X}function Kj0(A){A=A.replace(Zj0,"");let Q=A.length;if(Q%4===0){if(A.charCodeAt(Q-1)===61){if(--Q,A.charCodeAt(Q-1)===61)--Q}}if(Q%4===1)return"failure";if(/[^+/0-9A-Za-z]/.test(A.length===Q?A:A.substring(0,Q)))return"failure";let B=Buffer.from(A,"base64");return new Uint8Array(B.buffer,B.byteOffset,B.byteLength)}function fzQ(A,Q,B=!1){let Y=Q.position,J="";iT(A[Q.position]==='"'),Q.position++;while(!0){if(J+=nT((X)=>X!=='"'&&X!=="\\",A,Q),Q.position>=A.length)break;let C=A[Q.position];if(Q.position++,C==="\\"){if(Q.position>=A.length){J+="\\";break}J+=A[Q.position],Q.position++}else{iT(C==='"');break}}if(B)return J;return A.slice(Y,Q.position)}function Vj0(A){iT(A!=="failure");let{parameters:Q,essence:B}=A,Y=B;for(let[J,C]of Q.entries()){if(Y+=";",Y+=J,Y+="=",!Bq.test(C))C=C.replace(/(\\|")/g,"\\$1"),C='"'+C,C+='"';Y+=C}return Y}function Ij0(A){return A===13||A===10||A===9||A===32}function pT(A,Q=!0,B=!0){return Wr(A,Q,B,Ij0)}function Hj0(A){return A===13||A===10||A===9||A===12||A===32}function Dj0(A,Q=!0,B=!0){return Wr(A,Q,B,Hj0)}function Wr(A,Q,B,Y){let J=0,C=A.length-1;if(Q)while(J0&&Y(A.charCodeAt(C)))C--;return J===0&&C===A.length-1?A:A.slice(J,C+1)}function bzQ(A){let Q=A.length;if(65535>Q)return String.fromCharCode.apply(null,A);let B="",Y=0,J=65535;while(YQ)J=Q-Y;B+=String.fromCharCode.apply(null,A.subarray(Y,Y+=J))}return B}function Nj0(A){switch(A.essence){case"application/ecmascript":case"application/javascript":case"application/x-ecmascript":case"application/x-javascript":case"text/ecmascript":case"text/javascript":case"text/javascript1.0":case"text/javascript1.1":case"text/javascript1.2":case"text/javascript1.3":case"text/javascript1.4":case"text/javascript1.5":case"text/jscript":case"text/livescript":case"text/x-ecmascript":case"text/x-javascript":return"text/javascript";case"application/json":case"text/json":return"application/json";case"image/svg+xml":return"image/svg+xml";case"text/xml":case"application/xml":return"application/xml"}if(A.subtype.endsWith("+json"))return"application/json";if(A.subtype.endsWith("+xml"))return"application/xml";return""}mzQ.exports={dataURLProcessor:Uj0,URLSerializer:gzQ,collectASequenceOfCodePoints:nT,collectASequenceOfCodePointsFast:mK,stringPercentDecode:xzQ,parseMIMEType:Fr,collectAnHTTPQuotedString:fzQ,serializeAMimeType:Vj0,removeChars:Wr,removeHTTPWhitespace:pT,minimizeSupportedMimeType:Nj0,HTTP_TOKEN_CODEPOINTS:Bq,isomorphicDecode:bzQ}});var UJ=R((riY,dzQ)=>{var{types:vY,inspect:Lj0}=u("node:util"),{markAsUncloneable:qj0}=u("node:worker_threads"),uzQ=Function.call.bind(Function.prototype[Symbol.hasInstance]),JA={converters:{},util:{},errors:{},is:{}};JA.errors.exception=function(A){return TypeError(`${A.header}: ${A.message}`)};JA.errors.conversionFailed=function(A){let Q=A.types.length===1?"":" one of",B=`${A.argument} could not be converted to${Q}: ${A.types.join(", ")}.`;return JA.errors.exception({header:A.prefix,message:B})};JA.errors.invalidArgument=function(A){return JA.errors.exception({header:A.prefix,message:`"${A.value}" is an invalid ${A.type}.`})};JA.brandCheck=function(A,Q){if(!uzQ(Q,A)){let B=TypeError("Illegal invocation");throw B.code="ERR_INVALID_THIS",B}};JA.brandCheckMultiple=function(A){let Q=A.map((B)=>JA.util.MakeTypeAssertion(B));return(B)=>{if(Q.every((Y)=>!Y(B))){let Y=TypeError("Illegal invocation");throw Y.code="ERR_INVALID_THIS",Y}}};JA.argumentLengthCheck=function({length:A},Q,B){if(AuzQ(A,Q)};JA.util.Type=function(A){switch(typeof A){case"undefined":return 1;case"boolean":return 2;case"string":return 3;case"symbol":return 4;case"number":return 5;case"bigint":return 6;case"function":case"object":{if(A===null)return 7;return 8}}};JA.util.Types={UNDEFINED:1,BOOLEAN:2,STRING:3,SYMBOL:4,NUMBER:5,BIGINT:6,NULL:7,OBJECT:8};JA.util.TypeValueToString=function(A){switch(JA.util.Type(A)){case 1:return"Undefined";case 2:return"Boolean";case 3:return"String";case 4:return"Symbol";case 5:return"Number";case 6:return"BigInt";case 7:return"Null";case 8:return"Object"}};JA.util.markAsUncloneable=qj0||(()=>{});JA.util.ConvertToInt=function(A,Q,B,Y){let J,C;if(Q===64)if(J=Math.pow(2,53)-1,B==="unsigned")C=0;else C=Math.pow(-2,53)+1;else if(B==="unsigned")C=0,J=Math.pow(2,Q)-1;else C=Math.pow(-2,Q)-1,J=Math.pow(2,Q-1)-1;let X=Number(A);if(X===0)X=0;if(JA.util.HasFlag(Y,JA.attributes.EnforceRange)){if(Number.isNaN(X)||X===Number.POSITIVE_INFINITY||X===Number.NEGATIVE_INFINITY)throw JA.errors.exception({header:"Integer conversion",message:`Could not convert ${JA.util.Stringify(A)} to an integer.`});if(X=JA.util.IntegerPart(X),XJ)throw JA.errors.exception({header:"Integer conversion",message:`Value must be between ${C}-${J}, got ${X}.`});return X}if(!Number.isNaN(X)&&JA.util.HasFlag(Y,JA.attributes.Clamp)){if(X=Math.min(Math.max(X,C),J),Math.floor(X)%2===0)X=Math.floor(X);else X=Math.ceil(X);return X}if(Number.isNaN(X)||X===0&&Object.is(0,X)||X===Number.POSITIVE_INFINITY||X===Number.NEGATIVE_INFINITY)return 0;if(X=JA.util.IntegerPart(X),X=X%Math.pow(2,Q),B==="signed"&&X>=Math.pow(2,Q)-1)return X-Math.pow(2,Q);return X};JA.util.IntegerPart=function(A){let Q=Math.floor(Math.abs(A));if(A<0)return-1*Q;return Q};JA.util.Stringify=function(A){switch(JA.util.Type(A)){case 4:return`Symbol(${A.description})`;case 8:return Lj0(A);case 3:return`"${A}"`;case 6:return`${A}n`;default:return`${A}`}};JA.util.IsResizableArrayBuffer=function(A){if(vY.isArrayBuffer(A))return A.resizable;if(vY.isSharedArrayBuffer(A))return A.growable;throw JA.errors.exception({header:"IsResizableArrayBuffer",message:`"${JA.util.Stringify(A)}" is not an array buffer.`})};JA.util.HasFlag=function(A,Q){return typeof A==="number"&&(A&Q)===Q};JA.sequenceConverter=function(A){return(Q,B,Y,J)=>{if(JA.util.Type(Q)!==8)throw JA.errors.exception({header:B,message:`${Y} (${JA.util.Stringify(Q)}) is not iterable.`});let C=typeof J==="function"?J():Q?.[Symbol.iterator]?.(),X=[],G=0;if(C===void 0||typeof C.next!=="function")throw JA.errors.exception({header:B,message:`${Y} is not iterable.`});while(!0){let{done:F,value:W}=C.next();if(F)break;X.push(A(W,B,`${Y}[${G++}]`))}return X}};JA.recordConverter=function(A,Q){return(B,Y,J)=>{if(JA.util.Type(B)!==8)throw JA.errors.exception({header:Y,message:`${J} ("${JA.util.TypeValueToString(B)}") is not an Object.`});let C={};if(!vY.isProxy(B)){let G=[...Object.getOwnPropertyNames(B),...Object.getOwnPropertySymbols(B)];for(let F of G){let W=JA.util.Stringify(F),Z=A(F,Y,`Key ${W} in ${J}`),U=Q(B[F],Y,`${J}[${W}]`);C[Z]=U}return C}let X=Reflect.ownKeys(B);for(let G of X)if(Reflect.getOwnPropertyDescriptor(B,G)?.enumerable){let W=A(G,Y,J),Z=Q(B[G],Y,J);C[W]=Z}return C}};JA.interfaceConverter=function(A,Q){return(B,Y,J)=>{if(!A(B))throw JA.errors.exception({header:Y,message:`Expected ${J} ("${JA.util.Stringify(B)}") to be an instance of ${Q}.`});return B}};JA.dictionaryConverter=function(A){return(Q,B,Y)=>{let J={};if(Q!=null&&JA.util.Type(Q)!==8)throw JA.errors.exception({header:B,message:`Expected ${Q} to be one of: Null, Undefined, Object.`});for(let C of A){let{key:X,defaultValue:G,required:F,converter:W}=C;if(F===!0){if(Q==null||!Object.hasOwn(Q,X))throw JA.errors.exception({header:B,message:`Missing required key "${X}".`})}let Z=Q?.[X],U=G!==void 0;if(U&&Z===void 0)Z=G();if(F||U||Z!==void 0){if(Z=W(Z,B,`${Y}.${X}`),C.allowedValues&&!C.allowedValues.includes(Z))throw JA.errors.exception({header:B,message:`${Z} is not an accepted type. Expected one of ${C.allowedValues.join(", ")}.`});J[X]=Z}}return J}};JA.nullableConverter=function(A){return(Q,B,Y)=>{if(Q===null)return Q;return A(Q,B,Y)}};JA.is.USVString=function(A){return typeof A==="string"&&A.isWellFormed()};JA.is.ReadableStream=JA.util.MakeTypeAssertion(ReadableStream);JA.is.Blob=JA.util.MakeTypeAssertion(Blob);JA.is.URLSearchParams=JA.util.MakeTypeAssertion(URLSearchParams);JA.is.File=JA.util.MakeTypeAssertion(File);JA.is.URL=JA.util.MakeTypeAssertion(URL);JA.is.AbortSignal=JA.util.MakeTypeAssertion(AbortSignal);JA.is.MessagePort=JA.util.MakeTypeAssertion(MessagePort);JA.is.BufferSource=function(A){return vY.isArrayBuffer(A)||ArrayBuffer.isView(A)&&vY.isArrayBuffer(A.buffer)};JA.converters.DOMString=function(A,Q,B,Y){if(A===null&&JA.util.HasFlag(Y,JA.attributes.LegacyNullToEmptyString))return"";if(typeof A==="symbol")throw JA.errors.exception({header:Q,message:`${B} is a symbol, which cannot be converted to a DOMString.`});return String(A)};JA.converters.ByteString=function(A,Q,B){if(typeof A==="symbol")throw JA.errors.exception({header:Q,message:`${B} is a symbol, which cannot be converted to a ByteString.`});let Y=String(A);for(let J=0;J255)throw TypeError(`Cannot convert argument to a ByteString because the character at index ${J} has a value of ${Y.charCodeAt(J)} which is greater than 255.`);return Y};JA.converters.USVString=function(A){if(typeof A==="string")return A.toWellFormed();return`${A}`.toWellFormed()};JA.converters.boolean=function(A){return Boolean(A)};JA.converters.any=function(A){return A};JA.converters["long long"]=function(A,Q,B){return JA.util.ConvertToInt(A,64,"signed",0,Q,B)};JA.converters["unsigned long long"]=function(A,Q,B){return JA.util.ConvertToInt(A,64,"unsigned",0,Q,B)};JA.converters["unsigned long"]=function(A,Q,B){return JA.util.ConvertToInt(A,32,"unsigned",0,Q,B)};JA.converters["unsigned short"]=function(A,Q,B,Y){return JA.util.ConvertToInt(A,16,"unsigned",Y,Q,B)};JA.converters.ArrayBuffer=function(A,Q,B,Y){if(JA.util.Type(A)!==8||!vY.isArrayBuffer(A))throw JA.errors.conversionFailed({prefix:Q,argument:`${B} ("${JA.util.Stringify(A)}")`,types:["ArrayBuffer"]});if(!JA.util.HasFlag(Y,JA.attributes.AllowResizable)&&JA.util.IsResizableArrayBuffer(A))throw JA.errors.exception({header:Q,message:`${B} cannot be a resizable ArrayBuffer.`});return A};JA.converters.SharedArrayBuffer=function(A,Q,B,Y){if(JA.util.Type(A)!==8||!vY.isSharedArrayBuffer(A))throw JA.errors.conversionFailed({prefix:Q,argument:`${B} ("${JA.util.Stringify(A)}")`,types:["SharedArrayBuffer"]});if(!JA.util.HasFlag(Y,JA.attributes.AllowResizable)&&JA.util.IsResizableArrayBuffer(A))throw JA.errors.exception({header:Q,message:`${B} cannot be a resizable SharedArrayBuffer.`});return A};JA.converters.TypedArray=function(A,Q,B,Y,J){if(JA.util.Type(A)!==8||!vY.isTypedArray(A)||A.constructor.name!==Q.name)throw JA.errors.conversionFailed({prefix:B,argument:`${Y} ("${JA.util.Stringify(A)}")`,types:[Q.name]});if(!JA.util.HasFlag(J,JA.attributes.AllowShared)&&vY.isSharedArrayBuffer(A.buffer))throw JA.errors.exception({header:B,message:`${Y} cannot be a view on a shared array buffer.`});if(!JA.util.HasFlag(J,JA.attributes.AllowResizable)&&JA.util.IsResizableArrayBuffer(A.buffer))throw JA.errors.exception({header:B,message:`${Y} cannot be a view on a resizable array buffer.`});return A};JA.converters.DataView=function(A,Q,B,Y){if(JA.util.Type(A)!==8||!vY.isDataView(A))throw JA.errors.conversionFailed({prefix:Q,argument:`${B} ("${JA.util.Stringify(A)}")`,types:["DataView"]});if(!JA.util.HasFlag(Y,JA.attributes.AllowShared)&&vY.isSharedArrayBuffer(A.buffer))throw JA.errors.exception({header:Q,message:`${B} cannot be a view on a shared array buffer.`});if(!JA.util.HasFlag(Y,JA.attributes.AllowResizable)&&JA.util.IsResizableArrayBuffer(A.buffer))throw JA.errors.exception({header:Q,message:`${B} cannot be a view on a resizable array buffer.`});return A};JA.converters.ArrayBufferView=function(A,Q,B,Y){if(JA.util.Type(A)!==8||!vY.isArrayBufferView(A))throw JA.errors.conversionFailed({prefix:Q,argument:`${B} ("${JA.util.Stringify(A)}")`,types:["ArrayBufferView"]});if(!JA.util.HasFlag(Y,JA.attributes.AllowShared)&&vY.isSharedArrayBuffer(A.buffer))throw JA.errors.exception({header:Q,message:`${B} cannot be a view on a shared array buffer.`});if(!JA.util.HasFlag(Y,JA.attributes.AllowResizable)&&JA.util.IsResizableArrayBuffer(A.buffer))throw JA.errors.exception({header:Q,message:`${B} cannot be a view on a resizable array buffer.`});return A};JA.converters.BufferSource=function(A,Q,B,Y){if(vY.isArrayBuffer(A))return JA.converters.ArrayBuffer(A,Q,B,Y);if(vY.isArrayBufferView(A))return Y&=~JA.attributes.AllowShared,JA.converters.ArrayBufferView(A,Q,B,Y);if(vY.isSharedArrayBuffer(A))throw JA.errors.exception({header:Q,message:`${B} cannot be a SharedArrayBuffer.`});throw JA.errors.conversionFailed({prefix:Q,argument:`${B} ("${JA.util.Stringify(A)}")`,types:["ArrayBuffer","ArrayBufferView"]})};JA.converters.AllowSharedBufferSource=function(A,Q,B,Y){if(vY.isArrayBuffer(A))return JA.converters.ArrayBuffer(A,Q,B,Y);if(vY.isSharedArrayBuffer(A))return JA.converters.SharedArrayBuffer(A,Q,B,Y);if(vY.isArrayBufferView(A))return Y|=JA.attributes.AllowShared,JA.converters.ArrayBufferView(A,Q,B,Y);throw JA.errors.conversionFailed({prefix:Q,argument:`${B} ("${JA.util.Stringify(A)}")`,types:["ArrayBuffer","SharedArrayBuffer","ArrayBufferView"]})};JA.converters["sequence"]=JA.sequenceConverter(JA.converters.ByteString);JA.converters["sequence>"]=JA.sequenceConverter(JA.converters["sequence"]);JA.converters["record"]=JA.recordConverter(JA.converters.ByteString,JA.converters.ByteString);JA.converters.Blob=JA.interfaceConverter(JA.is.Blob,"Blob");JA.converters.AbortSignal=JA.interfaceConverter(JA.is.AbortSignal,"AbortSignal");JA.converters.EventHandlerNonNull=function(A){if(JA.util.Type(A)!==8)return null;if(typeof A==="function")return A;return()=>{}};JA.attributes={Clamp:1,EnforceRange:2,AllowShared:4,AllowResizable:8,LegacyNullToEmptyString:16};dzQ.exports={webidl:JA}});var H9=R((aiY,C2Q)=>{var{Transform:Mj0}=u("node:stream"),czQ=u("node:zlib"),{redirectStatusSet:zj0,referrerPolicyTokens:Rj0,badPortsSet:wj0}=Qq(),{getGlobalOrigin:lzQ}=Gr(),{collectASequenceOfCodePoints:S$,collectAnHTTPQuotedString:jj0,removeChars:Oj0,parseMIMEType:Pj0}=g8(),{performance:Tj0}=u("node:perf_hooks"),{ReadableStreamFrom:Sj0,isValidHTTPToken:pzQ,normalizedMethodRecordsBase:kj0}=lQ(),v$=u("node:assert"),{isUint8Array:_j0}=u("node:util/types"),{webidl:pF}=UJ();function izQ(A){let Q=A.urlList,B=Q.length;return B===0?null:Q[B-1].toString()}function vj0(A,Q){if(!zj0.has(A.status))return null;let B=A.headersList.get("location",!0);if(B!==null&&szQ(B)){if(!nzQ(B))B=yj0(B);B=new URL(B,izQ(A))}if(B&&!B.hash)B.hash=Q;return B}function nzQ(A){for(let Q=0;Q126||B<32)return!1}return!0}function yj0(A){return Buffer.from(A,"binary").toString("utf8")}function _$(A){return A.urlList[A.urlList.length-1]}function hj0(A){let Q=_$(A);if(A2Q(Q)&&wj0.has(Q.port))return"blocked";return"allowed"}function gj0(A){return A instanceof Error||(A?.constructor?.name==="Error"||A?.constructor?.name==="DOMException")}function xj0(A){for(let Q=0;Q=32&&B<=126||B>=128&&B<=255))return!1}return!0}var fj0=pzQ;function szQ(A){return(A[0]==="\t"||A[0]===" "||A[A.length-1]==="\t"||A[A.length-1]===" "||A.includes(` -`)||A.includes("\r")||A.includes("\x00"))===!1}function bj0(A){let Q=(A.headersList.get("referrer-policy",!0)??"").split(","),B="";if(Q.length)for(let Y=Q.length;Y!==0;Y--){let J=Q[Y-1].trim();if(Rj0.has(J)){B=J;break}}return B}function mj0(A,Q){let B=bj0(Q);if(B!=="")A.referrerPolicy=B}function uj0(){return"allowed"}function dj0(){return"success"}function cj0(){return"success"}function lj0(A){let Q=null;Q=A.mode,A.headersList.set("sec-fetch-mode",Q,!0)}function pj0(A){let Q=A.origin;if(Q==="client"||Q===void 0)return;if(A.responseTainting==="cors"||A.mode==="websocket")A.headersList.append("origin",Q,!0);else if(A.method!=="GET"&&A.method!=="HEAD"){switch(A.referrerPolicy){case"no-referrer":Q=null;break;case"no-referrer-when-downgrade":case"strict-origin":case"strict-origin-when-cross-origin":if(A.origin&&$r(A.origin)&&!$r(_$(A)))Q=null;break;case"same-origin":if(!Yq(A,_$(A)))Q=null;break;default:}A.headersList.append("origin",Q,!0)}}function uK(A,Q){return A}function ij0(A,Q,B){if(!A?.startTime||A.startTime4096)Y=J;switch(Q){case"no-referrer":return"no-referrer";case"origin":if(J!=null)return J;return Zr(B,!0);case"unsafe-url":return Y;case"strict-origin":{let C=_$(A);if(k$(Y)&&!k$(C))return"no-referrer";return J}case"strict-origin-when-cross-origin":{let C=_$(A);if(Yq(Y,C))return Y;if(k$(Y)&&!k$(C))return"no-referrer";return J}case"same-origin":if(Yq(A,Y))return Y;return"no-referrer";case"origin-when-cross-origin":if(Yq(A,Y))return Y;return J;case"no-referrer-when-downgrade":{let C=_$(A);if(k$(Y)&&!k$(C))return"no-referrer";return Y}}}function Zr(A,Q=!1){if(v$(pF.is.URL(A)),A=new URL(A),ezQ(A))return"no-referrer";if(A.username="",A.password="",A.hash="",Q===!0)A.pathname="",A.search="";return A}var oj0=RegExp.prototype.test.bind(/^127\.(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)\.){2}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)$/),tj0=RegExp.prototype.test.bind(/^(?:(?:0{1,4}:){7}|(?:0{1,4}:){1,6}:|::)0{0,3}1$/);function azQ(A){if(A.includes(":")){if(A[0]==="["&&A[A.length-1]==="]")A=A.slice(1,-1);return tj0(A)}return oj0(A)}function ej0(A){if(A==null||A==="null")return!1;if(A=new URL(A),A.protocol==="https:"||A.protocol==="wss:")return!0;if(azQ(A.hostname))return!0;if(A.hostname==="localhost"||A.hostname==="localhost.")return!0;if(A.hostname.endsWith(".localhost")||A.hostname.endsWith(".localhost."))return!0;if(A.protocol==="file:")return!0;return!1}function k$(A){if(!pF.is.URL(A))return!1;if(A.href==="about:blank"||A.href==="about:srcdoc")return!0;if(A.protocol==="data:")return!0;if(A.protocol==="blob:")return!0;return ej0(A.origin)}function AO0(A){}function Yq(A,Q){if(A.origin===Q.origin&&A.origin==="null")return!0;if(A.protocol===Q.protocol&&A.hostname===Q.hostname&&A.port===Q.port)return!0;return!1}function QO0(A){return A.controller.state==="aborted"}function BO0(A){return A.controller.state==="aborted"||A.controller.state==="terminated"}function YO0(A){return kj0[A.toLowerCase()]??A}function JO0(A){let Q=JSON.stringify(A);if(Q===void 0)throw TypeError("Value is not JSON serializable");return v$(typeof Q==="string"),Q}var CO0=Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]()));function ozQ(A,Q,B=0,Y=1){class J{#A;#Q;#B;constructor(C,X){this.#A=C,this.#Q=X,this.#B=0}next(){if(typeof this!=="object"||this===null||!(#A in this))throw TypeError(`'next' called on an object that does not implement interface ${A} Iterator.`);let C=this.#B,X=Q(this.#A),G=X.length;if(C>=G)return{value:void 0,done:!0};let{[B]:F,[Y]:W}=X[C];this.#B=C+1;let Z;switch(this.#Q){case"key":Z=F;break;case"value":Z=W;break;case"key+value":Z=[F,W];break}return{value:Z,done:!1}}}return delete J.prototype.constructor,Object.setPrototypeOf(J.prototype,CO0),Object.defineProperties(J.prototype,{[Symbol.toStringTag]:{writable:!1,enumerable:!1,configurable:!0,value:`${A} Iterator`},next:{writable:!0,enumerable:!0,configurable:!0}}),function(C,X){return new J(C,X)}}function XO0(A,Q,B,Y=0,J=1){let C=ozQ(A,B,Y,J),X={keys:{writable:!0,enumerable:!0,configurable:!0,value:function(){return pF.brandCheck(this,Q),C(this,"key")}},values:{writable:!0,enumerable:!0,configurable:!0,value:function(){return pF.brandCheck(this,Q),C(this,"value")}},entries:{writable:!0,enumerable:!0,configurable:!0,value:function(){return pF.brandCheck(this,Q),C(this,"key+value")}},forEach:{writable:!0,enumerable:!0,configurable:!0,value:function(F,W=globalThis){if(pF.brandCheck(this,Q),pF.argumentLengthCheck(arguments,1,`${A}.forEach`),typeof F!=="function")throw TypeError(`Failed to execute 'forEach' on '${A}': parameter 1 is not of type 'Function'.`);for(let{0:Z,1:U}of C(this,"key+value"))F.call(W,U,Z,this)}}};return Object.defineProperties(Q.prototype,{...X,[Symbol.iterator]:{writable:!0,enumerable:!1,configurable:!0,value:X.entries.value}})}function GO0(A,Q,B){let Y=Q,J=B;try{let C=A.stream.getReader();tzQ(C,Y,J)}catch(C){J(C)}}function FO0(A){try{A.close(),A.byobRequest?.respond(0)}catch(Q){if(!Q.message.includes("Controller is already closed")&&!Q.message.includes("ReadableStream is already closed"))throw Q}}var WO0=/[^\x00-\xFF]/;function sT(A){return v$(!WO0.test(A)),A}async function tzQ(A,Q,B){try{let Y=[],J=0;do{let{done:C,value:X}=await A.read();if(C){Q(Buffer.concat(Y,J));return}if(!_j0(X)){B(TypeError("Received non-Uint8Array chunk"));return}Y.push(X),J+=X.length}while(!0)}catch(Y){B(Y)}}function ezQ(A){v$("protocol"in A);let Q=A.protocol;return Q==="about:"||Q==="blob:"||Q==="data:"}function $r(A){return typeof A==="string"&&A[5]===":"&&A[0]==="h"&&A[1]==="t"&&A[2]==="t"&&A[3]==="p"&&A[4]==="s"||A.protocol==="https:"}function A2Q(A){v$("protocol"in A);let Q=A.protocol;return Q==="http:"||Q==="https:"}function ZO0(A,Q){let B=A;if(!B.startsWith("bytes"))return"failure";let Y={position:5};if(Q)S$((F)=>F==="\t"||F===" ",B,Y);if(B.charCodeAt(Y.position)!==61)return"failure";if(Y.position++,Q)S$((F)=>F==="\t"||F===" ",B,Y);let J=S$((F)=>{let W=F.charCodeAt(0);return W>=48&&W<=57},B,Y),C=J.length?Number(J):null;if(Q)S$((F)=>F==="\t"||F===" ",B,Y);if(B.charCodeAt(Y.position)!==45)return"failure";if(Y.position++,Q)S$((F)=>F==="\t"||F===" ",B,Y);let X=S$((F)=>{let W=F.charCodeAt(0);return W>=48&&W<=57},B,Y),G=X.length?Number(X):null;if(Y.positionG)return"failure";return{rangeStartValue:C,rangeEndValue:G}}function $O0(A,Q,B){let Y="bytes ";return Y+=sT(`${A}`),Y+="-",Y+=sT(`${Q}`),Y+="/",Y+=sT(`${B}`),Y}class Q2Q extends Mj0{#A;constructor(A){super();this.#A=A}_transform(A,Q,B){if(!this._inflateStream){if(A.length===0){B();return}this._inflateStream=(A[0]&15)===8?czQ.createInflate(this.#A):czQ.createInflateRaw(this.#A),this._inflateStream.on("data",this.push.bind(this)),this._inflateStream.on("end",()=>this.push(null)),this._inflateStream.on("error",(Y)=>this.destroy(Y))}this._inflateStream.write(A,Q,B)}_final(A){if(this._inflateStream)this._inflateStream.end(),this._inflateStream=null;A()}}function UO0(A){return new Q2Q(A)}function EO0(A){let Q=null,B=null,Y=null,J=B2Q("content-type",A);if(J===null)return"failure";for(let C of J){let X=Pj0(C);if(X==="failure"||X.essence==="*/*")continue;if(Y=X,Y.essence!==B){if(Q=null,Y.parameters.has("charset"))Q=Y.parameters.get("charset");B=Y.essence}else if(!Y.parameters.has("charset")&&Q!==null)Y.parameters.set("charset",Q)}if(Y==null)return"failure";return Y}function KO0(A){let Q=A,B={position:0},Y=[],J="";while(B.positionC!=='"'&&C!==",",Q,B),B.positionC===9||C===32),Y.push(J),J=""}return Y}function B2Q(A,Q){let B=Q.get(A,!0);if(B===null)return null;return KO0(B)}var VO0=new TextDecoder;function IO0(A){if(A.length===0)return"";if(A[0]===239&&A[1]===187&&A[2]===191)A=A.subarray(3);return VO0.decode(A)}class Y2Q{get baseUrl(){return lzQ()}get origin(){return this.baseUrl?.origin}policyContainer=rzQ()}class J2Q{settingsObject=new Y2Q}var HO0=new J2Q;C2Q.exports={isAborted:QO0,isCancelled:BO0,isValidEncodedURL:nzQ,ReadableStreamFrom:Sj0,tryUpgradeRequestToAPotentiallyTrustworthyURL:AO0,clampAndCoarsenConnectionTimingInfo:ij0,coarsenedSharedCurrentTime:nj0,determineRequestsReferrer:aj0,makePolicyContainer:rzQ,clonePolicyContainer:rj0,appendFetchMetadata:lj0,appendRequestOriginHeader:pj0,TAOCheck:cj0,corsCheck:dj0,crossOriginResourcePolicyCheck:uj0,createOpaqueTimingInfo:sj0,setRequestReferrerPolicyOnRedirect:mj0,isValidHTTPToken:pzQ,requestBadPort:hj0,requestCurrentURL:_$,responseURL:izQ,responseLocationURL:vj0,isURLPotentiallyTrustworthy:k$,isValidReasonPhrase:xj0,sameOrigin:Yq,normalizeMethod:YO0,serializeJavascriptValueToJSONString:JO0,iteratorMixin:XO0,createIterator:ozQ,isValidHeaderName:fj0,isValidHeaderValue:szQ,isErrorLike:gj0,fullyReadBody:GO0,readableStreamClose:FO0,isomorphicEncode:sT,urlIsLocal:ezQ,urlHasHttpsScheme:$r,urlIsHttpHttpsScheme:A2Q,readAllBytes:tzQ,simpleRangeHeaderValue:ZO0,buildContentRange:$O0,createInflate:UO0,extractMimeType:EO0,getDecodeSplit:B2Q,utf8DecodeBytes:IO0,environmentSettingsObject:HO0,isOriginIPPotentiallyTrustworthy:azQ}});var rT=R((oiY,G2Q)=>{var{iteratorMixin:DO0}=H9(),{kEnumerableProperty:dK}=lQ(),{webidl:gB}=UJ(),X2Q=u("node:util");class r9{#A=[];constructor(A=void 0){if(gB.util.markAsUncloneable(this),A!==void 0)throw gB.errors.conversionFailed({prefix:"FormData constructor",argument:"Argument 1",types:["undefined"]})}append(A,Q,B=void 0){gB.brandCheck(this,r9);let Y="FormData.append";if(gB.argumentLengthCheck(arguments,2,Y),A=gB.converters.USVString(A),arguments.length===3||gB.is.Blob(Q)){if(Q=gB.converters.Blob(Q,Y,"value"),B!==void 0)B=gB.converters.USVString(B)}else Q=gB.converters.USVString(Q);let J=Ur(A,Q,B);this.#A.push(J)}delete(A){gB.brandCheck(this,r9);let Q="FormData.delete";gB.argumentLengthCheck(arguments,1,Q),A=gB.converters.USVString(A),this.#A=this.#A.filter((B)=>B.name!==A)}get(A){gB.brandCheck(this,r9);let Q="FormData.get";gB.argumentLengthCheck(arguments,1,Q),A=gB.converters.USVString(A);let B=this.#A.findIndex((Y)=>Y.name===A);if(B===-1)return null;return this.#A[B].value}getAll(A){gB.brandCheck(this,r9);let Q="FormData.getAll";return gB.argumentLengthCheck(arguments,1,Q),A=gB.converters.USVString(A),this.#A.filter((B)=>B.name===A).map((B)=>B.value)}has(A){gB.brandCheck(this,r9);let Q="FormData.has";return gB.argumentLengthCheck(arguments,1,Q),A=gB.converters.USVString(A),this.#A.findIndex((B)=>B.name===A)!==-1}set(A,Q,B=void 0){gB.brandCheck(this,r9);let Y="FormData.set";if(gB.argumentLengthCheck(arguments,2,Y),A=gB.converters.USVString(A),arguments.length===3||gB.is.Blob(Q)){if(Q=gB.converters.Blob(Q,Y,"value"),B!==void 0)B=gB.converters.USVString(B)}else Q=gB.converters.USVString(Q);let J=Ur(A,Q,B),C=this.#A.findIndex((X)=>X.name===A);if(C!==-1)this.#A=[...this.#A.slice(0,C),J,...this.#A.slice(C+1).filter((X)=>X.name!==A)];else this.#A.push(J)}[X2Q.inspect.custom](A,Q){let B=this.#A.reduce((J,C)=>{if(J[C.name])if(Array.isArray(J[C.name]))J[C.name].push(C.value);else J[C.name]=[J[C.name],C.value];else J[C.name]=C.value;return J},{__proto__:null});Q.depth??=A,Q.colors??=!0;let Y=X2Q.formatWithOptions(Q,B);return`FormData ${Y.slice(Y.indexOf("]")+2)}`}static getFormDataState(A){return A.#A}static setFormDataState(A,Q){A.#A=Q}}var{getFormDataState:NO0,setFormDataState:LO0}=r9;Reflect.deleteProperty(r9,"getFormDataState");Reflect.deleteProperty(r9,"setFormDataState");DO0("FormData",r9,NO0,"name","value");Object.defineProperties(r9.prototype,{append:dK,delete:dK,get:dK,getAll:dK,has:dK,set:dK,[Symbol.toStringTag]:{value:"FormData",configurable:!0}});function Ur(A,Q,B){if(typeof Q==="string");else{if(!gB.is.File(Q))Q=new File([Q],"blob",{type:Q.type});if(B!==void 0){let Y={type:Q.type,lastModified:Q.lastModified};Q=new File([Q],B,Y)}}return{name:A,value:Q}}gB.is.FormData=gB.util.MakeTypeAssertion(r9);G2Q.exports={FormData:r9,makeEntry:Ur,setFormDataState:LO0}});var $2Q=R((tiY,Z2Q)=>{var{bufferToLowerCasedHeaderName:qO0}=lQ(),{utf8DecodeBytes:MO0}=H9(),{HTTP_TOKEN_CODEPOINTS:zO0,isomorphicDecode:F2Q}=g8(),{makeEntry:RO0}=rT(),{webidl:Er}=UJ(),aT=u("node:assert"),wO0=Buffer.from('form-data; name="'),jO0=Buffer.from("filename"),OO0=Buffer.from("--"),PO0=Buffer.from(`--\r -`);function TO0(A){for(let Q=0;Q70)return!1;for(let B=0;B=48&&Y<=57||Y>=65&&Y<=90||Y>=97&&Y<=122||Y===39||Y===45||Y===95))return!1}return!0}function kO0(A,Q){aT(Q!=="failure"&&Q.essence==="multipart/form-data");let B=Q.parameters.get("boundary");if(B===void 0)throw r5("missing boundary in content-type header");let Y=Buffer.from(`--${B}`,"utf8"),J=[],C={position:0};while(A[C.position]===13&&A[C.position+1]===10)C.position+=2;let X=A.length;while(A[X-1]===10&&A[X-2]===13)X-=2;if(X!==A.length)A=A.subarray(0,X);while(!0){if(A.subarray(C.position,C.position+Y.length).equals(Y))C.position+=Y.length;else throw r5("expected a value starting with -- and the boundary");if(C.position===A.length-2&&oT(A,OO0,C)||C.position===A.length-4&&oT(A,PO0,C))return J;if(A[C.position]!==13||A[C.position+1]!==10)throw r5("expected CRLF");C.position+=2;let G=_O0(A,C),{name:F,filename:W,contentType:Z,encoding:U}=G;C.position+=2;let $;{let K=A.indexOf(Y.subarray(2),C.position);if(K===-1)throw r5("expected boundary after body");if($=A.subarray(C.position,K-4),C.position+=$.length,U==="base64")$=Buffer.from($.toString(),"base64")}if(A[C.position]!==13||A[C.position+1]!==10)throw r5("expected CRLF");else C.position+=2;let E;if(W!==null){if(Z??="text/plain",!TO0(Z))Z="";E=new File([$],W,{type:Z})}else E=MO0(Buffer.from($));aT(Er.is.USVString(F)),aT(typeof E==="string"&&Er.is.USVString(E)||Er.is.File(E)),J.push(RO0(F,E,W))}}function _O0(A,Q){let B=null,Y=null,J=null,C=null;while(!0){if(A[Q.position]===13&&A[Q.position+1]===10){if(B===null)throw r5("header name is null");return{name:B,filename:Y,contentType:J,encoding:C}}let X=wG((G)=>G!==10&&G!==13&&G!==58,A,Q);if(X=Kr(X,!0,!0,(G)=>G===9||G===32),!zO0.test(X.toString()))throw r5("header name does not match the field-name token production");if(A[Q.position]!==58)throw r5("expected :");switch(Q.position++,wG((G)=>G===32||G===9,A,Q),qO0(X)){case"content-disposition":{if(B=Y=null,!oT(A,wO0,Q))throw r5('expected form-data; name=" for content-disposition header');if(Q.position+=17,B=W2Q(A,Q),A[Q.position]===59&&A[Q.position+1]===32){let G={position:Q.position+2};if(oT(A,jO0,G))if(A[G.position+8]===42){G.position+=10,wG((W)=>W===32||W===9,A,G);let F=wG((W)=>W!==32&&W!==13&&W!==10,A,G);if(F[0]!==117&&F[0]!==85||F[1]!==116&&F[1]!==84||F[2]!==102&&F[2]!==70||F[3]!==45||F[4]!==56)throw r5("unknown encoding, expected utf-8''");Y=decodeURIComponent(new TextDecoder().decode(F.subarray(7))),Q.position=G.position}else Q.position+=11,wG((F)=>F===32||F===9,A,Q),Q.position++,Y=W2Q(A,Q)}break}case"content-type":{let G=wG((F)=>F!==10&&F!==13,A,Q);G=Kr(G,!1,!0,(F)=>F===9||F===32),J=F2Q(G);break}case"content-transfer-encoding":{let G=wG((F)=>F!==10&&F!==13,A,Q);G=Kr(G,!1,!0,(F)=>F===9||F===32),C=F2Q(G);break}default:wG((G)=>G!==10&&G!==13,A,Q)}if(A[Q.position]!==13&&A[Q.position+1]!==10)throw r5("expected CRLF");else Q.position+=2}}function W2Q(A,Q){aT(A[Q.position-1]===34);let B=wG((Y)=>Y!==10&&Y!==13&&Y!==34,A,Q);if(A[Q.position]!==34)throw r5('expected "');else Q.position++;return B=new TextDecoder().decode(B).replace(/%0A/ig,` -`).replace(/%0D/ig,"\r").replace(/%22/g,'"'),B}function wG(A,Q,B){let Y=B.position;while(Y0&&Y(A[C]))C--;return J===0&&C===A.length-1?A:A.subarray(J,C+1)}function oT(A,Q,B){if(A.length{function vO0(){let A,Q;return{promise:new Promise((Y,J)=>{A=Y,Q=J}),resolve:A,reject:Q}}U2Q.exports={createDeferredPromise:vO0}});var lK=R((AnY,N2Q)=>{var eT=lQ(),{ReadableStreamFrom:yO0,readableStreamClose:hO0,fullyReadBody:gO0,extractMimeType:xO0,utf8DecodeBytes:V2Q}=H9(),{FormData:E2Q,setFormDataState:fO0}=rT(),{webidl:V6}=UJ(),Vr=u("node:assert"),{isErrored:I2Q,isDisturbed:bO0}=u("node:stream"),{isArrayBuffer:mO0}=u("node:util/types"),{serializeAMimeType:uO0}=g8(),{multipartFormDataParser:dO0}=$2Q(),{createDeferredPromise:cO0}=Jq(),Ir;try{let A=u("node:crypto");Ir=(Q)=>A.randomInt(0,Q)}catch{Ir=(A)=>Math.floor(Math.random()*A)}var tT=new TextEncoder;function lO0(){}var pO0=new FinalizationRegistry((A)=>{let Q=A.deref();if(Q&&!Q.locked&&!bO0(Q)&&!I2Q(Q))Q.cancel("Response object has been garbage collected").catch(lO0)});function H2Q(A,Q=!1){let B=null;if(V6.is.ReadableStream(A))B=A;else if(V6.is.Blob(A))B=A.stream();else B=new ReadableStream({pull(F){let W=typeof J==="string"?tT.encode(J):J;if(W.byteLength)F.enqueue(W);queueMicrotask(()=>hO0(F))},start(){},type:"bytes"});Vr(V6.is.ReadableStream(B));let Y=null,J=null,C=null,X=null;if(typeof A==="string")J=A,X="text/plain;charset=UTF-8";else if(V6.is.URLSearchParams(A))J=A.toString(),X="application/x-www-form-urlencoded;charset=UTF-8";else if(V6.is.BufferSource(A))J=mO0(A)?new Uint8Array(A.slice()):new Uint8Array(A.buffer.slice(A.byteOffset,A.byteOffset+A.byteLength));else if(V6.is.FormData(A)){let F=`----formdata-undici-0${`${Ir(100000000000)}`.padStart(11,"0")}`,W=`--${F}\r +>>> no match, partial?`,A,U,Q,$),U===G)return!0}return!1}let K;if(typeof F==="string")K=Z===F,this.debug("string match",F,Z,K);else K=F.test(Z),this.debug("pattern match",F,Z,K);if(!K)return!1}if(C===G&&X===W)return!0;else if(C===G)return B;else if(X===W)return C===G-1&&A[C]==="";else throw Error("wtf?")}braceExpand(){return(0,rA.braceExpand)(this.pattern,this.options)}parse(A){(0,sP.assertValidPattern)(A);let Q=this.options;if(A==="**")return rA.GLOBSTAR;if(A==="")return"";let B,Y=null;if(B=A.match(Aq0))Y=Q.dot?Bq0:Qq0;else if(B=A.match(lL0))Y=(Q.nocase?Q.dot?sL0:nL0:Q.dot?iL0:pL0)(B[1]);else if(B=A.match(Yq0))Y=(Q.nocase?Q.dot?Cq0:Jq0:Q.dot?Xq0:Gq0)(B);else if(B=A.match(rL0))Y=Q.dot?oL0:aL0;else if(B=A.match(tL0))Y=eL0;let J=REQ.AST.fromGlob(A,this.options).toMMPattern();if(Y&&typeof J==="object")Reflect.defineProperty(J,"test",{value:Y});return J}makeRe(){if(this.regexp||this.regexp===!1)return this.regexp;let A=this.set;if(!A.length)return this.regexp=!1,this.regexp;let Q=this.options,B=Q.noglobstar?Fq0:Q.dot?Zq0:$q0,Y=new Set(Q.nocase?["i"]:[]),J=A.map((G)=>{let W=G.map((F)=>{if(F instanceof RegExp)for(let Z of F.flags.split(""))Y.add(Z);return typeof F==="string"?Hq0(F):F===rA.GLOBSTAR?rA.GLOBSTAR:F._src});return W.forEach((F,Z)=>{let U=W[Z+1],$=W[Z-1];if(F!==rA.GLOBSTAR||$===rA.GLOBSTAR)return;if($===void 0)if(U!==void 0&&U!==rA.GLOBSTAR)W[Z+1]="(?:\\/|"+B+"\\/)?"+U;else W[Z]=B;else if(U===void 0)W[Z-1]=$+"(?:\\/|"+B+")?";else if(U!==rA.GLOBSTAR)W[Z-1]=$+"(?:\\/|\\/"+B+"\\/)"+U,W[Z+1]=rA.GLOBSTAR}),W.filter((F)=>F!==rA.GLOBSTAR).join("/")}).join("|"),[C,X]=A.length>1?["(?:",")"]:["",""];if(J="^"+C+J+X+"$",this.negate)J="^(?!"+J+").+$";try{this.regexp=new RegExp(J,[...Y].join(""))}catch(G){this.regexp=!1}return this.regexp}slashSplit(A){if(this.preserveMultipleSlashes)return A.split("/");else if(this.isWindows&&/^\/\/[^\/]+/.test(A))return["",...A.split(/\/+/)];else return A.split(/\/+/)}match(A,Q=this.partial){if(this.debug("match",A,this.pattern),this.comment)return!1;if(this.empty)return A==="";if(A==="/"&&Q)return!0;let B=this.options;if(this.isWindows)A=A.split("\\").join("/");let Y=this.slashSplit(A);this.debug(this.pattern,"split",Y);let J=this.set;this.debug(this.pattern,"set",J);let C=Y[Y.length-1];if(!C)for(let X=Y.length-2;!C&&X>=0;X--)C=Y[X];for(let X=0;X{Object.defineProperty(nEQ,"__esModule",{value:!0});nEQ.SpanNames=nEQ.TokenKind=nEQ.AllowedOperationTypes=void 0;var _q0;(function(A){A.QUERY="query",A.MUTATION="mutation",A.SUBSCRIPTION="subscription"})(_q0=nEQ.AllowedOperationTypes||(nEQ.AllowedOperationTypes={}));var vq0;(function(A){A.SOF="",A.EOF="",A.BANG="!",A.DOLLAR="$",A.AMP="&",A.PAREN_L="(",A.PAREN_R=")",A.SPREAD="...",A.COLON=":",A.EQUALS="=",A.AT="@",A.BRACKET_L="[",A.BRACKET_R="]",A.BRACE_L="{",A.PIPE="|",A.BRACE_R="}",A.NAME="Name",A.INT="Int",A.FLOAT="Float",A.STRING="String",A.BLOCK_STRING="BlockString",A.COMMENT="Comment"})(vq0=nEQ.TokenKind||(nEQ.TokenKind={}));var yq0;(function(A){A.EXECUTE="graphql.execute",A.PARSE="graphql.parse",A.RESOLVE="graphql.resolve",A.VALIDATE="graphql.validate",A.SCHEMA_VALIDATE="graphql.validateSchema",A.SCHEMA_PARSE="graphql.parseSchema"})(yq0=nEQ.SpanNames||(nEQ.SpanNames={}))});var gn=R((sEQ)=>{Object.defineProperty(sEQ,"__esModule",{value:!0});sEQ.AttributeNames=void 0;var gq0;(function(A){A.SOURCE="graphql.source",A.FIELD_NAME="graphql.field.name",A.FIELD_PATH="graphql.field.path",A.FIELD_TYPE="graphql.field.type",A.OPERATION_TYPE="graphql.operation.type",A.OPERATION_NAME="graphql.operation.name",A.VARIABLES="graphql.variables.",A.ERROR_VALIDATION_NAME="graphql.validation.error"})(gq0=sEQ.AttributeNames||(sEQ.AttributeNames={}))});var AT=R((rEQ)=>{Object.defineProperty(rEQ,"__esModule",{value:!0});rEQ.OTEL_GRAPHQL_DATA_SYMBOL=rEQ.OTEL_PATCHED_SYMBOL=void 0;rEQ.OTEL_PATCHED_SYMBOL=Symbol.for("opentelemetry.patched");rEQ.OTEL_GRAPHQL_DATA_SYMBOL=Symbol.for("opentelemetry.graphql_data")});var eEQ=R((oEQ)=>{Object.defineProperty(oEQ,"__esModule",{value:!0});oEQ.OPERATION_NOT_SUPPORTED=void 0;var HdY=AT();oEQ.OPERATION_NOT_SUPPORTED="Operation$operationName$not supported"});var KKQ=R(($KQ)=>{Object.defineProperty($KQ,"__esModule",{value:!0});$KQ.wrapFieldResolver=$KQ.wrapFields=$KQ.getSourceFromLocation=$KQ.getOperation=$KQ.endSpan=$KQ.addSpanSource=$KQ.addInputVariableAttributes=$KQ.isPromise=void 0;var yK=yA(),PW=vn(),vK=gn(),NG=AT(),AKQ=Object.values(PW.AllowedOperationTypes),xq0=(A)=>{return typeof(A===null||A===void 0?void 0:A.then)==="function"};$KQ.isPromise=xq0;var fq0=(A)=>{return typeof A=="object"&&A!==null};function hn(A,Q,B){if(Array.isArray(B))B.forEach((Y,J)=>{hn(A,`${Q}.${J}`,Y)});else if(B instanceof Object)Object.entries(B).forEach(([Y,J])=>{hn(A,`${Q}.${Y}`,J)});else A.setAttribute(`${vK.AttributeNames.VARIABLES}${String(Q)}`,B)}function bq0(A,Q){Object.entries(Q).forEach(([B,Y])=>{hn(A,B,Y)})}$KQ.addInputVariableAttributes=bq0;function JKQ(A,Q,B,Y,J){let C=WKQ(Q,B,Y,J);A.setAttribute(vK.AttributeNames.SOURCE,C)}$KQ.addSpanSource=JKQ;function mq0(A,Q,B,Y,J){let C=CKQ(B,J),X=!1;if(!C){X=!0;let G=XKQ(B,J);C={parent:G,span:uq0(A,Q,B,Y,J,G.span),error:null},lq0(B,J,C)}return{spanAdded:X,field:C}}function uq0(A,Q,B,Y,J,C){var X,G;let W={[vK.AttributeNames.FIELD_NAME]:Y.fieldName,[vK.AttributeNames.FIELD_PATH]:J.join("."),[vK.AttributeNames.FIELD_TYPE]:Y.returnType.toString()},F=A.startSpan(`${PW.SpanNames.RESOLVE} ${W[vK.AttributeNames.FIELD_PATH]}`,{attributes:W},C?yK.trace.setSpan(yK.context.active(),C):void 0),Z=B[NG.OTEL_GRAPHQL_DATA_SYMBOL].source,U=Y.fieldNodes.find(($)=>$.kind==="Field");if(U)JKQ(F,Z.loc,Q().allowValues,(X=U.loc)===null||X===void 0?void 0:X.start,(G=U.loc)===null||G===void 0?void 0:G.end);return F}function dq0(A,Q){if(Q)A.recordException(Q);A.end()}$KQ.endSpan=dq0;function cq0(A,Q){if(!A||!Array.isArray(A.definitions))return;if(Q)return A.definitions.filter((B)=>{var Y;return AKQ.indexOf((Y=B)===null||Y===void 0?void 0:Y.operation)!==-1}).find((B)=>{var Y,J;return Q===((J=(Y=B)===null||Y===void 0?void 0:Y.name)===null||J===void 0?void 0:J.value)});else return A.definitions.find((B)=>{var Y;return AKQ.indexOf((Y=B)===null||Y===void 0?void 0:Y.operation)!==-1})}$KQ.getOperation=cq0;function lq0(A,Q,B){return A[NG.OTEL_GRAPHQL_DATA_SYMBOL].fields[Q.join(".")]=B}function CKQ(A,Q){return A[NG.OTEL_GRAPHQL_DATA_SYMBOL].fields[Q.join(".")]}function XKQ(A,Q){for(let B=Q.length-1;B>0;B--){let Y=CKQ(A,Q.slice(0,B));if(Y)return Y}return{span:A[NG.OTEL_GRAPHQL_DATA_SYMBOL].span}}function pq0(A,Q){let B=[],Y=Q;while(Y){let J=Y.key;if(A&&typeof J==="number")J="*";B.push(String(J)),Y=Y.prev}return B.reverse()}function iq0(A){return GKQ(` +`,A)}function QKQ(A){return GKQ(" ",A)}function GKQ(A,Q){let B="";for(let Y=0;YW){F=F.next,Z=F===null||F===void 0?void 0:F.line;continue}let U=F.value||F.kind,$="";if(!Q&&nq0.indexOf(F.kind)>=0)U="*";if(F.kind===PW.TokenKind.STRING)U=`"${U}"`;if(F.kind===PW.TokenKind.EOF)U="";if(F.line>Z)X+=iq0(F.line-Z),Z=F.line,$=QKQ(F.column-1);else if(F.line===((J=F.prev)===null||J===void 0?void 0:J.line))$=QKQ(F.start-(((C=F.prev)===null||C===void 0?void 0:C.end)||0));if(X+=$+U,F)F=F.next}}return X}$KQ.getSourceFromLocation=WKQ;function FKQ(A,Q,B){if(!A||typeof A.getFields!=="function"||A[NG.OTEL_PATCHED_SYMBOL])return;let Y=A.getFields();A[NG.OTEL_PATCHED_SYMBOL]=!0,Object.keys(Y).forEach((J)=>{let C=Y[J];if(!C)return;if(C.resolve)C.resolve=ZKQ(Q,B,C.resolve);if(C.type){let X=C.type;while(X.ofType)X=X.ofType;FKQ(X,Q,B)}})}$KQ.wrapFields=FKQ;var BKQ=(A,Q,B)=>{if(!B)return;A.recordException(Q),A.setStatus({code:yK.SpanStatusCode.ERROR,message:Q.message}),A.end()},YKQ=(A,Q)=>{if(!Q)return;A.end()};function ZKQ(A,Q,B,Y=!1){if(J[NG.OTEL_PATCHED_SYMBOL]||typeof B!=="function")return B;function J(C,X,G,W){if(!B)return;let F=Q();if(F.ignoreTrivialResolveSpans&&Y&&(fq0(C)||typeof C==="function")){if(typeof C[W.fieldName]!=="function")return B.call(this,C,X,G,W)}if(!G[NG.OTEL_GRAPHQL_DATA_SYMBOL])return B.call(this,C,X,G,W);let Z=pq0(F.mergeItems,W&&W.path),U=Z.filter((K)=>typeof K==="string").length,$,E=!1;if(F.depth>=0&&F.depth{try{let K=B.call(this,C,X,G,W);if($KQ.isPromise(K))return K.then((I)=>{return YKQ($.span,E),I},(I)=>{throw BKQ($.span,I,E),I});else return YKQ($.span,E),K}catch(K){throw BKQ($.span,K,E),K}})}return J[NG.OTEL_PATCHED_SYMBOL]=!0,J}$KQ.wrapFieldResolver=ZKQ});var HKQ=R((VKQ)=>{Object.defineProperty(VKQ,"__esModule",{value:!0});VKQ.PACKAGE_NAME=VKQ.PACKAGE_VERSION=void 0;VKQ.PACKAGE_VERSION="0.47.1";VKQ.PACKAGE_NAME="@opentelemetry/instrumentation-graphql"});var zKQ=R((qKQ)=>{Object.defineProperty(qKQ,"__esModule",{value:!0});qKQ.GraphQLInstrumentation=void 0;var LG=yA(),e5=NB(),pL=vn(),QT=gn(),xn=AT(),QM0=eEQ(),hJ=KKQ(),DKQ=HKQ(),NKQ={mergeItems:!1,depth:-1,allowValues:!1,ignoreResolveSpans:!1},BT=[">=14.0.0 <17"];class LKQ extends e5.InstrumentationBase{constructor(A={}){super(DKQ.PACKAGE_NAME,DKQ.PACKAGE_VERSION,Object.assign(Object.assign({},NKQ),A))}setConfig(A={}){super.setConfig(Object.assign(Object.assign({},NKQ),A))}init(){let A=new e5.InstrumentationNodeModuleDefinition("graphql",BT);return A.files.push(this._addPatchingExecute()),A.files.push(this._addPatchingParser()),A.files.push(this._addPatchingValidate()),A}_addPatchingExecute(){return new e5.InstrumentationNodeModuleFile("graphql/execution/execute.js",BT,(A)=>{if((0,e5.isWrapped)(A.execute))this._unwrap(A,"execute");return this._wrap(A,"execute",this._patchExecute(A.defaultFieldResolver)),A},(A)=>{if(A)this._unwrap(A,"execute")})}_addPatchingParser(){return new e5.InstrumentationNodeModuleFile("graphql/language/parser.js",BT,(A)=>{if((0,e5.isWrapped)(A.parse))this._unwrap(A,"parse");return this._wrap(A,"parse",this._patchParse()),A},(A)=>{if(A)this._unwrap(A,"parse")})}_addPatchingValidate(){return new e5.InstrumentationNodeModuleFile("graphql/validation/validate.js",BT,(A)=>{if((0,e5.isWrapped)(A.validate))this._unwrap(A,"validate");return this._wrap(A,"validate",this._patchValidate()),A},(A)=>{if(A)this._unwrap(A,"validate")})}_patchExecute(A){let Q=this;return function(Y){return function(){let C;if(arguments.length>=2){let W=arguments;C=Q._wrapExecuteArgs(W[0],W[1],W[2],W[3],W[4],W[5],W[6],W[7],A)}else{let W=arguments[0];C=Q._wrapExecuteArgs(W.schema,W.document,W.rootValue,W.contextValue,W.variableValues,W.operationName,W.fieldResolver,W.typeResolver,A)}let X=(0,hJ.getOperation)(C.document,C.operationName),G=Q._createExecuteSpan(X,C);return C.contextValue[xn.OTEL_GRAPHQL_DATA_SYMBOL]={source:C.document?C.document||C.document[xn.OTEL_GRAPHQL_DATA_SYMBOL]:void 0,span:G,fields:{}},LG.context.with(LG.trace.setSpan(LG.context.active(),G),()=>{return(0,e5.safeExecuteInTheMiddle)(()=>{return Y.apply(this,[C])},(W,F)=>{Q._handleExecutionResult(G,W,F)})})}}}_handleExecutionResult(A,Q,B){let Y=this.getConfig();if(B===void 0||Q){(0,hJ.endSpan)(A,Q);return}if((0,hJ.isPromise)(B))B.then((J)=>{if(typeof Y.responseHook!=="function"){(0,hJ.endSpan)(A);return}this._executeResponseHook(A,J)},(J)=>{(0,hJ.endSpan)(A,J)});else{if(typeof Y.responseHook!=="function"){(0,hJ.endSpan)(A);return}this._executeResponseHook(A,B)}}_executeResponseHook(A,Q){let{responseHook:B}=this.getConfig();if(!B)return;(0,e5.safeExecuteInTheMiddle)(()=>{B(A,Q)},(Y)=>{if(Y)this._diag.error("Error running response hook",Y);(0,hJ.endSpan)(A,void 0)},!0)}_patchParse(){let A=this;return function(B){return function(J,C){return A._parse(this,B,J,C)}}}_patchValidate(){let A=this;return function(B){return function(J,C,X,G,W){return A._validate(this,B,J,C,X,W,G)}}}_parse(A,Q,B,Y){let J=this.getConfig(),C=this.tracer.startSpan(pL.SpanNames.PARSE);return LG.context.with(LG.trace.setSpan(LG.context.active(),C),()=>{return(0,e5.safeExecuteInTheMiddle)(()=>{return Q.call(A,B,Y)},(X,G)=>{if(G){if(!(0,hJ.getOperation)(G))C.updateName(pL.SpanNames.SCHEMA_PARSE);else if(G.loc)(0,hJ.addSpanSource)(C,G.loc,J.allowValues)}(0,hJ.endSpan)(C,X)})})}_validate(A,Q,B,Y,J,C,X){let G=this.tracer.startSpan(pL.SpanNames.VALIDATE,{});return LG.context.with(LG.trace.setSpan(LG.context.active(),G),()=>{return(0,e5.safeExecuteInTheMiddle)(()=>{return Q.call(A,B,Y,J,X,C)},(W,F)=>{if(!Y.loc)G.updateName(pL.SpanNames.SCHEMA_VALIDATE);if(F&&F.length)G.recordException({name:QT.AttributeNames.ERROR_VALIDATION_NAME,message:JSON.stringify(F)});(0,hJ.endSpan)(G,W)})})}_createExecuteSpan(A,Q){var B;let Y=this.getConfig(),J=this.tracer.startSpan(pL.SpanNames.EXECUTE,{});if(A){let{operation:C,name:X}=A;J.setAttribute(QT.AttributeNames.OPERATION_TYPE,C);let G=X===null||X===void 0?void 0:X.value;if(G)J.setAttribute(QT.AttributeNames.OPERATION_NAME,G),J.updateName(`${C} ${G}`);else J.updateName(C)}else{let C=" ";if(Q.operationName)C=` "${Q.operationName}" `;C=QM0.OPERATION_NOT_SUPPORTED.replace("$operationName$",C),J.setAttribute(QT.AttributeNames.OPERATION_NAME,C)}if((B=Q.document)===null||B===void 0?void 0:B.loc)(0,hJ.addSpanSource)(J,Q.document.loc,Y.allowValues);if(Q.variableValues&&Y.allowValues)(0,hJ.addInputVariableAttributes)(J,Q.variableValues);return J}_wrapExecuteArgs(A,Q,B,Y,J,C,X,G,W){if(!Y)Y={};if(Y[xn.OTEL_GRAPHQL_DATA_SYMBOL]||this.getConfig().ignoreResolveSpans)return{schema:A,document:Q,rootValue:B,contextValue:Y,variableValues:J,operationName:C,fieldResolver:X,typeResolver:G};let F=X==null,Z=X!==null&&X!==void 0?X:W;if(X=(0,hJ.wrapFieldResolver)(this.tracer,()=>this.getConfig(),Z,F),A)(0,hJ.wrapFields)(A.getQueryType(),this.tracer,()=>this.getConfig()),(0,hJ.wrapFields)(A.getMutationType(),this.tracer,()=>this.getConfig());return{schema:A,document:Q,rootValue:B,contextValue:Y,variableValues:J,operationName:C,fieldResolver:X,typeResolver:G}}}qKQ.GraphQLInstrumentation=LKQ});var wKQ=R((RKQ)=>{Object.defineProperty(RKQ,"__esModule",{value:!0})});var OKQ=R((TW)=>{var BM0=TW&&TW.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),jKQ=TW&&TW.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))BM0(Q,A,B)};Object.defineProperty(TW,"__esModule",{value:!0});jKQ(zKQ(),TW);jKQ(wKQ(),TW)});var vKQ=R((kKQ)=>{Object.defineProperty(kKQ,"__esModule",{value:!0});kKQ.PACKAGE_NAME=kKQ.PACKAGE_VERSION=void 0;kKQ.PACKAGE_VERSION="0.7.1";kKQ.PACKAGE_NAME="@opentelemetry/instrumentation-kafkajs"});var hKQ=R((yKQ)=>{Object.defineProperty(yKQ,"__esModule",{value:!0});yKQ.bufferTextMapGetter=void 0;yKQ.bufferTextMapGetter={get(A,Q){var B;if(!A)return;let Y=Object.keys(A);for(let J of Y)if(J===Q||J.toLowerCase()===Q)return(B=A[J])===null||B===void 0?void 0:B.toString();return},keys(A){return A?Object.keys(A):[]}}});var dKQ=R((mKQ)=>{Object.defineProperty(mKQ,"__esModule",{value:!0});mKQ.KafkaJsInstrumentation=void 0;var IJ=yA(),SW=dB(),xKQ=vKQ(),fKQ=hKQ(),K1=NB();class bKQ extends K1.InstrumentationBase{constructor(A={}){super(xKQ.PACKAGE_NAME,xKQ.PACKAGE_VERSION,A)}init(){let A=(B)=>{var Y,J;if((0,K1.isWrapped)((Y=B===null||B===void 0?void 0:B.Kafka)===null||Y===void 0?void 0:Y.prototype.producer))this._unwrap(B.Kafka.prototype,"producer");if((0,K1.isWrapped)((J=B===null||B===void 0?void 0:B.Kafka)===null||J===void 0?void 0:J.prototype.consumer))this._unwrap(B.Kafka.prototype,"consumer")};return new K1.InstrumentationNodeModuleDefinition("kafkajs",[">=0.1.0 <3"],(B)=>{var Y,J;return A(B),this._wrap((Y=B===null||B===void 0?void 0:B.Kafka)===null||Y===void 0?void 0:Y.prototype,"producer",this._getProducerPatch()),this._wrap((J=B===null||B===void 0?void 0:B.Kafka)===null||J===void 0?void 0:J.prototype,"consumer",this._getConsumerPatch()),B},A)}_getConsumerPatch(){let A=this;return(Q)=>{return function(...Y){let J=Q.apply(this,Y);if((0,K1.isWrapped)(J.run))A._unwrap(J,"run");return A._wrap(J,"run",A._getConsumerRunPatch()),J}}}_getProducerPatch(){let A=this;return(Q)=>{return function(...Y){let J=Q.apply(this,Y);if((0,K1.isWrapped)(J.sendBatch))A._unwrap(J,"sendBatch");if(A._wrap(J,"sendBatch",A._getProducerSendBatchPatch()),(0,K1.isWrapped)(J.send))A._unwrap(J,"send");return A._wrap(J,"send",A._getProducerSendPatch()),J}}}_getConsumerRunPatch(){let A=this;return(Q)=>{return function(...Y){let J=Y[0];if(J===null||J===void 0?void 0:J.eachMessage){if((0,K1.isWrapped)(J.eachMessage))A._unwrap(J,"eachMessage");A._wrap(J,"eachMessage",A._getConsumerEachMessagePatch())}if(J===null||J===void 0?void 0:J.eachBatch){if((0,K1.isWrapped)(J.eachBatch))A._unwrap(J,"eachBatch");A._wrap(J,"eachBatch",A._getConsumerEachBatchPatch())}return Q.call(this,J)}}}_getConsumerEachMessagePatch(){let A=this;return(Q)=>{return function(...Y){let J=Y[0],C=IJ.propagation.extract(IJ.ROOT_CONTEXT,J.message.headers,fKQ.bufferTextMapGetter),X=A._startConsumerSpan(J.topic,J.message,SW.MESSAGINGOPERATIONVALUES_PROCESS,C),G=IJ.context.with(IJ.trace.setSpan(C,X),()=>{return Q.apply(this,Y)});return A._endSpansOnPromise([X],G)}}}_getConsumerEachBatchPatch(){return(A)=>{let Q=this;return function(...Y){let J=Y[0],C=Q._startConsumerSpan(J.batch.topic,void 0,SW.MESSAGINGOPERATIONVALUES_RECEIVE,IJ.ROOT_CONTEXT);return IJ.context.with(IJ.trace.setSpan(IJ.context.active(),C),()=>{let X=J.batch.messages.map((W)=>{var F;let Z=IJ.propagation.extract(IJ.ROOT_CONTEXT,W.headers,fKQ.bufferTextMapGetter),U=(F=IJ.trace.getSpan(Z))===null||F===void 0?void 0:F.spanContext(),$;if(U)$={context:U};return Q._startConsumerSpan(J.batch.topic,W,SW.MESSAGINGOPERATIONVALUES_PROCESS,void 0,$)}),G=A.apply(this,Y);return X.unshift(C),Q._endSpansOnPromise(X,G)})}}}_getProducerSendBatchPatch(){let A=this;return(Q)=>{return function(...Y){let X=(Y[0].topicMessages||[]).map((W)=>W.messages.map((F)=>A._startProducerSpan(W.topic,F))).reduce((W,F)=>W.concat(F),[]),G=Q.apply(this,Y);return A._endSpansOnPromise(X,G)}}}_getProducerSendPatch(){let A=this;return(Q)=>{return function(...Y){let J=Y[0],C=J.messages.map((G)=>{return A._startProducerSpan(J.topic,G)}),X=Q.apply(this,Y);return A._endSpansOnPromise(C,X)}}}_endSpansOnPromise(A,Q){return Promise.resolve(Q).catch((B)=>{let Y;if(typeof B==="string")Y=B;else if(typeof B==="object"&&Object.prototype.hasOwnProperty.call(B,"message"))Y=B.message;throw A.forEach((J)=>J.setStatus({code:IJ.SpanStatusCode.ERROR,message:Y})),B}).finally(()=>{A.forEach((B)=>B.end())})}_startConsumerSpan(A,Q,B,Y,J){let C=this.tracer.startSpan(A,{kind:IJ.SpanKind.CONSUMER,attributes:{[SW.SEMATTRS_MESSAGING_SYSTEM]:"kafka",[SW.SEMATTRS_MESSAGING_DESTINATION]:A,[SW.SEMATTRS_MESSAGING_OPERATION]:B},links:J?[J]:[]},Y),{consumerHook:X}=this.getConfig();if(X&&Q)(0,K1.safeExecuteInTheMiddle)(()=>X(C,{topic:A,message:Q}),(G)=>{if(G)this._diag.error("consumerHook error",G)},!0);return C}_startProducerSpan(A,Q){var B;let Y=this.tracer.startSpan(A,{kind:IJ.SpanKind.PRODUCER,attributes:{[SW.SEMATTRS_MESSAGING_SYSTEM]:"kafka",[SW.SEMATTRS_MESSAGING_DESTINATION]:A}});Q.headers=(B=Q.headers)!==null&&B!==void 0?B:{},IJ.propagation.inject(IJ.trace.setSpan(IJ.context.active(),Y),Q.headers);let{producerHook:J}=this.getConfig();if(J)(0,K1.safeExecuteInTheMiddle)(()=>J(Y,{topic:A,message:Q}),(C)=>{if(C)this._diag.error("producerHook error",C)},!0);return Y}}mKQ.KafkaJsInstrumentation=bKQ});var lKQ=R((cKQ)=>{Object.defineProperty(cKQ,"__esModule",{value:!0})});var iKQ=R((kW)=>{var XM0=kW&&kW.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),pKQ=kW&&kW.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))XM0(Q,A,B)};Object.defineProperty(kW,"__esModule",{value:!0});pKQ(dKQ(),kW);pKQ(lKQ(),kW)});var oKQ=R((rKQ)=>{Object.defineProperty(rKQ,"__esModule",{value:!0});rKQ.PACKAGE_NAME=rKQ.PACKAGE_VERSION=void 0;rKQ.PACKAGE_VERSION="0.44.1";rKQ.PACKAGE_NAME="@opentelemetry/instrumentation-lru-memoizer"});var JVQ=R((BVQ)=>{Object.defineProperty(BVQ,"__esModule",{value:!0});BVQ.LruMemoizerInstrumentation=void 0;var tKQ=yA(),eKQ=NB(),AVQ=oKQ();class QVQ extends eKQ.InstrumentationBase{constructor(A={}){super(AVQ.PACKAGE_NAME,AVQ.PACKAGE_VERSION,A)}init(){return[new eKQ.InstrumentationNodeModuleDefinition("lru-memoizer",[">=1.3 <3"],(A)=>{let Q=function(){let B=A.apply(this,arguments);return function(){let Y=[...arguments],J=Y.pop(),C=typeof J==="function"?tKQ.context.bind(tKQ.context.active(),J):J;return Y.push(C),B.apply(this,Y)}};return Q.sync=A.sync,Q},void 0)]}}BVQ.LruMemoizerInstrumentation=QVQ});var CVQ=R((P$)=>{var FM0=P$&&P$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),ZM0=P$&&P$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))FM0(Q,A,B)};Object.defineProperty(P$,"__esModule",{value:!0});ZM0(JVQ(),P$)});var FVQ=R((WVQ)=>{Object.defineProperty(WVQ,"__esModule",{value:!0});WVQ.MongodbCommandType=void 0;var UM0;(function(A){A.CREATE_INDEXES="createIndexes",A.FIND_AND_MODIFY="findAndModify",A.IS_MASTER="isMaster",A.COUNT="count",A.AGGREGATE="aggregate",A.UNKNOWN="unknown"})(UM0=WVQ.MongodbCommandType||(WVQ.MongodbCommandType={}))});var UVQ=R((ZVQ)=>{Object.defineProperty(ZVQ,"__esModule",{value:!0});ZVQ.PACKAGE_NAME=ZVQ.PACKAGE_VERSION=void 0;ZVQ.PACKAGE_VERSION="0.52.0";ZVQ.PACKAGE_NAME="@opentelemetry/instrumentation-mongodb"});var HVQ=R((VVQ)=>{Object.defineProperty(VVQ,"__esModule",{value:!0});VVQ.MongoDBInstrumentation=void 0;var m0=yA(),D0=NB(),qG=dB(),_W=FVQ(),EVQ=UVQ(),KVQ={requireParentSpan:!0};class dn extends D0.InstrumentationBase{constructor(A={}){super(EVQ.PACKAGE_NAME,EVQ.PACKAGE_VERSION,Object.assign(Object.assign({},KVQ),A))}setConfig(A={}){super.setConfig(Object.assign(Object.assign({},KVQ),A))}_updateMetricInstruments(){this._connectionsUsage=this.meter.createUpDownCounter("db.client.connections.usage",{description:"The number of connections that are currently in state described by the state attribute.",unit:"{connection}"})}init(){let{v3PatchConnection:A,v3UnpatchConnection:Q}=this._getV3ConnectionPatches(),{v4PatchConnect:B,v4UnpatchConnect:Y}=this._getV4ConnectPatches(),{v4PatchConnectionCallback:J,v4PatchConnectionPromise:C,v4UnpatchConnection:X}=this._getV4ConnectionPatches(),{v4PatchConnectionPool:G,v4UnpatchConnectionPool:W}=this._getV4ConnectionPoolPatches(),{v4PatchSessions:F,v4UnpatchSessions:Z}=this._getV4SessionsPatches();return[new D0.InstrumentationNodeModuleDefinition("mongodb",[">=3.3.0 <4"],void 0,void 0,[new D0.InstrumentationNodeModuleFile("mongodb/lib/core/wireprotocol/index.js",[">=3.3.0 <4"],A,Q)]),new D0.InstrumentationNodeModuleDefinition("mongodb",[">=4.0.0 <7"],void 0,void 0,[new D0.InstrumentationNodeModuleFile("mongodb/lib/cmap/connection.js",[">=4.0.0 <6.4"],J,X),new D0.InstrumentationNodeModuleFile("mongodb/lib/cmap/connection.js",[">=6.4.0 <7"],C,X),new D0.InstrumentationNodeModuleFile("mongodb/lib/cmap/connection_pool.js",[">=4.0.0 <6.4"],G,W),new D0.InstrumentationNodeModuleFile("mongodb/lib/cmap/connect.js",[">=4.0.0 <7"],B,Y),new D0.InstrumentationNodeModuleFile("mongodb/lib/sessions.js",[">=4.0.0 <7"],F,Z)])]}_getV3ConnectionPatches(){return{v3PatchConnection:(A)=>{if((0,D0.isWrapped)(A.insert))this._unwrap(A,"insert");if(this._wrap(A,"insert",this._getV3PatchOperation("insert")),(0,D0.isWrapped)(A.remove))this._unwrap(A,"remove");if(this._wrap(A,"remove",this._getV3PatchOperation("remove")),(0,D0.isWrapped)(A.update))this._unwrap(A,"update");if(this._wrap(A,"update",this._getV3PatchOperation("update")),(0,D0.isWrapped)(A.command))this._unwrap(A,"command");if(this._wrap(A,"command",this._getV3PatchCommand()),(0,D0.isWrapped)(A.query))this._unwrap(A,"query");if(this._wrap(A,"query",this._getV3PatchFind()),(0,D0.isWrapped)(A.getMore))this._unwrap(A,"getMore");return this._wrap(A,"getMore",this._getV3PatchCursor()),A},v3UnpatchConnection:(A)=>{if(A===void 0)return;this._unwrap(A,"insert"),this._unwrap(A,"remove"),this._unwrap(A,"update"),this._unwrap(A,"command"),this._unwrap(A,"query"),this._unwrap(A,"getMore")}}}_getV4SessionsPatches(){return{v4PatchSessions:(A)=>{if((0,D0.isWrapped)(A.acquire))this._unwrap(A,"acquire");if(this._wrap(A.ServerSessionPool.prototype,"acquire",this._getV4AcquireCommand()),(0,D0.isWrapped)(A.release))this._unwrap(A,"release");return this._wrap(A.ServerSessionPool.prototype,"release",this._getV4ReleaseCommand()),A},v4UnpatchSessions:(A)=>{if(A===void 0)return;if((0,D0.isWrapped)(A.acquire))this._unwrap(A,"acquire");if((0,D0.isWrapped)(A.release))this._unwrap(A,"release")}}}_getV4AcquireCommand(){let A=this;return(Q)=>{return function(){let Y=this.sessions.length,J=Q.call(this),C=this.sessions.length;if(Y===C)A._connectionsUsage.add(1,{state:"used","pool.name":A._poolName});else if(Y-1===C)A._connectionsUsage.add(-1,{state:"idle","pool.name":A._poolName}),A._connectionsUsage.add(1,{state:"used","pool.name":A._poolName});return J}}}_getV4ReleaseCommand(){let A=this;return(Q)=>{return function(Y){let J=Q.call(this,Y);return A._connectionsUsage.add(-1,{state:"used","pool.name":A._poolName}),A._connectionsUsage.add(1,{state:"idle","pool.name":A._poolName}),J}}}_getV4ConnectionPoolPatches(){return{v4PatchConnectionPool:(A)=>{let Q=A.ConnectionPool.prototype;if((0,D0.isWrapped)(Q.checkOut))this._unwrap(Q,"checkOut");return this._wrap(Q,"checkOut",this._getV4ConnectionPoolCheckOut()),A},v4UnpatchConnectionPool:(A)=>{if(A===void 0)return;this._unwrap(A.ConnectionPool.prototype,"checkOut")}}}_getV4ConnectPatches(){return{v4PatchConnect:(A)=>{if((0,D0.isWrapped)(A.connect))this._unwrap(A,"connect");return this._wrap(A,"connect",this._getV4ConnectCommand()),A},v4UnpatchConnect:(A)=>{if(A===void 0)return;this._unwrap(A,"connect")}}}_getV4ConnectionPoolCheckOut(){return(A)=>{return function(B){let Y=m0.context.bind(m0.context.active(),B);return A.call(this,Y)}}}_getV4ConnectCommand(){let A=this;return(Q)=>{return function(Y,J){if(Q.length===1){let X=Q.call(this,Y);if(X&&typeof X.then==="function")X.then(()=>A.setPoolName(Y),()=>{return});return X}let C=function(X,G){if(X||!G){J(X,G);return}A.setPoolName(Y),J(X,G)};return Q.call(this,Y,C)}}}_getV4ConnectionPatches(){return{v4PatchConnectionCallback:(A)=>{if((0,D0.isWrapped)(A.Connection.prototype.command))this._unwrap(A.Connection.prototype,"command");return this._wrap(A.Connection.prototype,"command",this._getV4PatchCommandCallback()),A},v4PatchConnectionPromise:(A)=>{if((0,D0.isWrapped)(A.Connection.prototype.command))this._unwrap(A.Connection.prototype,"command");return this._wrap(A.Connection.prototype,"command",this._getV4PatchCommandPromise()),A},v4UnpatchConnection:(A)=>{if(A===void 0)return;this._unwrap(A.Connection.prototype,"command")}}}_getV3PatchOperation(A){let Q=this;return(B)=>{return function(J,C,X,G,W){let F=m0.trace.getSpan(m0.context.active()),Z=Q._checkSkipInstrumentation(F),U=typeof G==="function"?G:W;if(Z||typeof U!=="function"||typeof X!=="object")if(typeof G==="function")return B.call(this,J,C,X,G);else return B.call(this,J,C,X,G,W);let $=Q.tracer.startSpan(`mongodb.${A}`,{kind:m0.SpanKind.CLIENT});Q._populateV3Attributes($,C,J,X[0],A);let E=Q._patchEnd($,U);if(typeof G==="function")return B.call(this,J,C,X,E);else return B.call(this,J,C,X,G,E)}}}_getV3PatchCommand(){let A=this;return(Q)=>{return function(Y,J,C,X,G){let W=m0.trace.getSpan(m0.context.active()),F=A._checkSkipInstrumentation(W),Z=typeof X==="function"?X:G;if(F||typeof Z!=="function"||typeof C!=="object")if(typeof X==="function")return Q.call(this,Y,J,C,X);else return Q.call(this,Y,J,C,X,G);let U=dn._getCommandType(C),$=U===_W.MongodbCommandType.UNKNOWN?"command":U,E=A.tracer.startSpan(`mongodb.${$}`,{kind:m0.SpanKind.CLIENT}),K=U===_W.MongodbCommandType.UNKNOWN?void 0:U;A._populateV3Attributes(E,J,Y,C,K);let I=A._patchEnd(E,Z);if(typeof X==="function")return Q.call(this,Y,J,C,I);else return Q.call(this,Y,J,C,X,I)}}}_getV4PatchCommandCallback(){let A=this;return(Q)=>{return function(Y,J,C,X){let G=m0.trace.getSpan(m0.context.active()),W=A._checkSkipInstrumentation(G),F=X,Z=Object.keys(J)[0];if(typeof J!=="object"||J.ismaster||J.hello)return Q.call(this,Y,J,C,X);let U=void 0;if(!W)U=A.tracer.startSpan(`mongodb.${Z}`,{kind:m0.SpanKind.CLIENT}),A._populateV4Attributes(U,this,Y,J,Z);let $=A._patchEnd(U,F,this.id,Z);return Q.call(this,Y,J,C,$)}}}_getV4PatchCommandPromise(){let A=this;return(Q)=>{return function(...Y){let[J,C]=Y,X=m0.trace.getSpan(m0.context.active()),G=A._checkSkipInstrumentation(X),W=Object.keys(C)[0],F=()=>{return};if(typeof C!=="object"||C.ismaster||C.hello)return Q.apply(this,Y);let Z=void 0;if(!G)Z=A.tracer.startSpan(`mongodb.${W}`,{kind:m0.SpanKind.CLIENT}),A._populateV4Attributes(Z,this,J,C,W);let U=A._patchEnd(Z,F,this.id,W),$=Q.apply(this,Y);return $.then((E)=>U(null,E),(E)=>U(E)),$}}}_getV3PatchFind(){let A=this;return(Q)=>{return function(Y,J,C,X,G,W){let F=m0.trace.getSpan(m0.context.active()),Z=A._checkSkipInstrumentation(F),U=typeof G==="function"?G:W;if(Z||typeof U!=="function"||typeof C!=="object")if(typeof G==="function")return Q.call(this,Y,J,C,X,G);else return Q.call(this,Y,J,C,X,G,W);let $=A.tracer.startSpan("mongodb.find",{kind:m0.SpanKind.CLIENT});A._populateV3Attributes($,J,Y,C,"find");let E=A._patchEnd($,U);if(typeof G==="function")return Q.call(this,Y,J,C,X,E);else return Q.call(this,Y,J,C,X,G,E)}}}_getV3PatchCursor(){let A=this;return(Q)=>{return function(Y,J,C,X,G,W){let F=m0.trace.getSpan(m0.context.active()),Z=A._checkSkipInstrumentation(F),U=typeof G==="function"?G:W;if(Z||typeof U!=="function")if(typeof G==="function")return Q.call(this,Y,J,C,X,G);else return Q.call(this,Y,J,C,X,G,W);let $=A.tracer.startSpan("mongodb.getMore",{kind:m0.SpanKind.CLIENT});A._populateV3Attributes($,J,Y,C.cmd,"getMore");let E=A._patchEnd($,U);if(typeof G==="function")return Q.call(this,Y,J,C,X,E);else return Q.call(this,Y,J,C,X,G,E)}}}static _getCommandType(A){if(A.createIndexes!==void 0)return _W.MongodbCommandType.CREATE_INDEXES;else if(A.findandmodify!==void 0)return _W.MongodbCommandType.FIND_AND_MODIFY;else if(A.ismaster!==void 0)return _W.MongodbCommandType.IS_MASTER;else if(A.count!==void 0)return _W.MongodbCommandType.COUNT;else if(A.aggregate!==void 0)return _W.MongodbCommandType.AGGREGATE;else return _W.MongodbCommandType.UNKNOWN}_populateV4Attributes(A,Q,B,Y,J){let C,X;if(Q){let W=typeof Q.address==="string"?Q.address.split(":"):"";if(W.length===2)C=W[0],X=W[1]}let G;if((Y===null||Y===void 0?void 0:Y.documents)&&Y.documents[0])G=Y.documents[0];else if(Y===null||Y===void 0?void 0:Y.cursors)G=Y.cursors;else G=Y;this._addAllSpanAttributes(A,B.db,B.collection,C,X,G,J)}_populateV3Attributes(A,Q,B,Y,J){var C,X,G,W,F,Z,U,$;let E,K;if(B&&B.s){if(E=(X=(C=B.s.options)===null||C===void 0?void 0:C.host)!==null&&X!==void 0?X:B.s.host,K=(F=(W=(G=B.s.options)===null||G===void 0?void 0:G.port)!==null&&W!==void 0?W:B.s.port)===null||F===void 0?void 0:F.toString(),E==null||K==null){let D=(Z=B.description)===null||Z===void 0?void 0:Z.address;if(D){let L=D.split(":");E=L[0],K=L[1]}}}let[I,V]=Q.toString().split("."),H=($=(U=Y===null||Y===void 0?void 0:Y.query)!==null&&U!==void 0?U:Y===null||Y===void 0?void 0:Y.q)!==null&&$!==void 0?$:Y;this._addAllSpanAttributes(A,I,V,E,K,H,J)}_addAllSpanAttributes(A,Q,B,Y,J,C,X){if(A.setAttributes({[qG.SEMATTRS_DB_SYSTEM]:qG.DBSYSTEMVALUES_MONGODB,[qG.SEMATTRS_DB_NAME]:Q,[qG.SEMATTRS_DB_MONGODB_COLLECTION]:B,[qG.SEMATTRS_DB_OPERATION]:X,[qG.SEMATTRS_DB_CONNECTION_STRING]:`mongodb://${Y}:${J}/${Q}`}),Y&&J){A.setAttribute(qG.SEMATTRS_NET_PEER_NAME,Y);let F=parseInt(J,10);if(!isNaN(F))A.setAttribute(qG.SEMATTRS_NET_PEER_PORT,F)}if(!C)return;let{dbStatementSerializer:G}=this.getConfig(),W=typeof G==="function"?G:this._defaultDbStatementSerializer.bind(this);(0,D0.safeExecuteInTheMiddle)(()=>{let F=W(C);A.setAttribute(qG.SEMATTRS_DB_STATEMENT,F)},(F)=>{if(F)this._diag.error("Error running dbStatementSerializer hook",F)},!0)}_defaultDbStatementSerializer(A){let{enhancedDatabaseReporting:Q}=this.getConfig(),B=Q?A:this._scrubStatement(A);return JSON.stringify(B)}_scrubStatement(A){if(Array.isArray(A))return A.map((Q)=>this._scrubStatement(Q));if(typeof A==="object"&&A!==null)return Object.fromEntries(Object.entries(A).map(([Q,B])=>[Q,this._scrubStatement(B)]));return"?"}_handleExecutionResult(A,Q){let{responseHook:B}=this.getConfig();if(typeof B==="function")(0,D0.safeExecuteInTheMiddle)(()=>{B(A,{data:Q})},(Y)=>{if(Y)this._diag.error("Error running response hook",Y)},!0)}_patchEnd(A,Q,B,Y){let J=m0.context.active(),C=this;return function(...G){let W=G[0];if(A){if(W instanceof Error)A===null||A===void 0||A.setStatus({code:m0.SpanStatusCode.ERROR,message:W.message});else{let F=G[1];C._handleExecutionResult(A,F)}A.end()}return m0.context.with(J,()=>{if(Y==="endSessions")C._connectionsUsage.add(-1,{state:"idle","pool.name":C._poolName});return Q.apply(this,G)})}}setPoolName(A){var Q,B;let Y=(Q=A.hostAddress)===null||Q===void 0?void 0:Q.host,J=(B=A.hostAddress)===null||B===void 0?void 0:B.port,C=A.dbName,X=`mongodb://${Y}:${J}/${C}`;this._poolName=X}_checkSkipInstrumentation(A){return this.getConfig().requireParentSpan===!0&&A===void 0}}VVQ.MongoDBInstrumentation=dn});var NVQ=R((DVQ)=>{Object.defineProperty(DVQ,"__esModule",{value:!0});DVQ.MongodbCommandType=void 0;var KM0;(function(A){A.CREATE_INDEXES="createIndexes",A.FIND_AND_MODIFY="findAndModify",A.IS_MASTER="isMaster",A.COUNT="count",A.UNKNOWN="unknown"})(KM0=DVQ.MongodbCommandType||(DVQ.MongodbCommandType={}))});var qVQ=R((vW)=>{var VM0=vW&&vW.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),LVQ=vW&&vW.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))VM0(Q,A,B)};Object.defineProperty(vW,"__esModule",{value:!0});LVQ(HVQ(),vW);LVQ(NVQ(),vW)});var PVQ=R((jVQ)=>{Object.defineProperty(jVQ,"__esModule",{value:!0});jVQ.handleCallbackResponse=jVQ.handlePromiseResponse=jVQ.getAttributesFromCollection=void 0;var RVQ=yA(),qM0=NB(),iL=dB();function MM0(A){return{[iL.SEMATTRS_DB_MONGODB_COLLECTION]:A.name,[iL.SEMATTRS_DB_NAME]:A.conn.name,[iL.SEMATTRS_DB_USER]:A.conn.user,[iL.SEMATTRS_NET_PEER_NAME]:A.conn.host,[iL.SEMATTRS_NET_PEER_PORT]:A.conn.port}}jVQ.getAttributesFromCollection=MM0;function wVQ(A,Q={}){A.recordException(Q),A.setStatus({code:RVQ.SpanStatusCode.ERROR,message:`${Q.message} ${Q.code?` +Mongoose Error Code: ${Q.code}`:""}`})}function nn(A,Q,B,Y=void 0){if(!B)return;(0,qM0.safeExecuteInTheMiddle)(()=>B(A,{moduleVersion:Y,response:Q}),(J)=>{if(J)RVQ.diag.error("mongoose instrumentation: responseHook error",J)},!0)}function zM0(A,Q,B,Y=void 0){if(!(A instanceof Promise))return nn(Q,A,B,Y),Q.end(),A;return A.then((J)=>{return nn(Q,J,B,Y),J}).catch((J)=>{throw wVQ(Q,J),J}).finally(()=>Q.end())}jVQ.handlePromiseResponse=zM0;function RM0(A,Q,B,Y,J,C,X=void 0){let G=0;if(J.length===2)G=1;return J[G]=(W,F)=>{return W?wVQ(Y,W):nn(Y,F,C,X),Y.end(),A(W,F)},Q.apply(B,J)}jVQ.handleCallbackResponse=RM0});var kVQ=R((TVQ)=>{Object.defineProperty(TVQ,"__esModule",{value:!0});TVQ.PACKAGE_NAME=TVQ.PACKAGE_VERSION=void 0;TVQ.PACKAGE_VERSION="0.46.1";TVQ.PACKAGE_NAME="@opentelemetry/instrumentation-mongoose"});var bVQ=R((xVQ)=>{Object.defineProperty(xVQ,"__esModule",{value:!0});xVQ.MongooseInstrumentation=xVQ._STORED_PARENT_SPAN=void 0;var L9=yA(),PM0=MB(),sn=PVQ(),_VQ=NB(),vVQ=kVQ(),nL=dB(),GT=["deleteOne","deleteMany","find","findOne","estimatedDocumentCount","countDocuments","distinct","where","$where","findOneAndUpdate","findOneAndDelete","findOneAndReplace"],TM0=["remove","count","findOneAndRemove",...GT],SM0=["count","findOneAndRemove",...GT],kM0=[...GT];function yVQ(A){if(!A)return GT;else if(A.startsWith("6.")||A.startsWith("5."))return TM0;else if(A.startsWith("7."))return SM0;else return kM0}function gVQ(A){return A&&(A.startsWith("5.")||A.startsWith("6."))||!1}xVQ._STORED_PARENT_SPAN=Symbol("stored-parent-span");class hVQ extends _VQ.InstrumentationBase{constructor(A={}){super(vVQ.PACKAGE_NAME,vVQ.PACKAGE_VERSION,A)}init(){return new _VQ.InstrumentationNodeModuleDefinition("mongoose",[">=5.9.7 <9"],this.patch.bind(this),this.unpatch.bind(this))}patch(A,Q){if(this._wrap(A.Model.prototype,"save",this.patchOnModelMethods("save",Q)),A.Model.prototype.$save=A.Model.prototype.save,gVQ(Q))this._wrap(A.Model.prototype,"remove",this.patchOnModelMethods("remove",Q));return this._wrap(A.Query.prototype,"exec",this.patchQueryExec(Q)),this._wrap(A.Aggregate.prototype,"exec",this.patchAggregateExec(Q)),yVQ(Q).forEach((Y)=>{this._wrap(A.Query.prototype,Y,this.patchAndCaptureSpanContext(Y))}),this._wrap(A.Model,"aggregate",this.patchModelAggregate()),A}unpatch(A,Q){let B=yVQ(Q);if(this._unwrap(A.Model.prototype,"save"),A.Model.prototype.$save=A.Model.prototype.save,gVQ(Q))this._unwrap(A.Model.prototype,"remove");this._unwrap(A.Query.prototype,"exec"),this._unwrap(A.Aggregate.prototype,"exec"),B.forEach((Y)=>{this._unwrap(A.Query.prototype,Y)}),this._unwrap(A.Model,"aggregate")}patchAggregateExec(A){let Q=this;return(B)=>{return function(J){var C;if(Q.getConfig().requireParentSpan&&L9.trace.getSpan(L9.context.active())===void 0)return B.apply(this,arguments);let X=this[xVQ._STORED_PARENT_SPAN],G={},{dbStatementSerializer:W}=Q.getConfig();if(W)G[nL.SEMATTRS_DB_STATEMENT]=W("aggregate",{options:this.options,aggregatePipeline:this._pipeline});let F=Q._startSpan(this._model.collection,(C=this._model)===null||C===void 0?void 0:C.modelName,"aggregate",G,X);return Q._handleResponse(F,B,this,arguments,J,A)}}}patchQueryExec(A){let Q=this;return(B)=>{return function(J){if(Q.getConfig().requireParentSpan&&L9.trace.getSpan(L9.context.active())===void 0)return B.apply(this,arguments);let C=this[xVQ._STORED_PARENT_SPAN],X={},{dbStatementSerializer:G}=Q.getConfig();if(G)X[nL.SEMATTRS_DB_STATEMENT]=G(this.op,{condition:this._conditions,updates:this._update,options:this.options,fields:this._fields});let W=Q._startSpan(this.mongooseCollection,this.model.modelName,this.op,X,C);return Q._handleResponse(W,B,this,arguments,J,A)}}}patchOnModelMethods(A,Q){let B=this;return(Y)=>{return function(C,X){if(B.getConfig().requireParentSpan&&L9.trace.getSpan(L9.context.active())===void 0)return Y.apply(this,arguments);let G={document:this};if(C&&!(C instanceof Function))G.options=C;let W={},{dbStatementSerializer:F}=B.getConfig();if(F)W[nL.SEMATTRS_DB_STATEMENT]=F(A,G);let Z=B._startSpan(this.constructor.collection,this.constructor.modelName,A,W);if(C instanceof Function)X=C,C=void 0;return B._handleResponse(Z,Y,this,arguments,X,Q)}}}patchModelAggregate(){let A=this;return(Q)=>{return function(){let Y=L9.trace.getSpan(L9.context.active()),J=A._callOriginalFunction(()=>Q.apply(this,arguments));if(J)J[xVQ._STORED_PARENT_SPAN]=Y;return J}}}patchAndCaptureSpanContext(A){let Q=this;return(B)=>{return function(){return this[xVQ._STORED_PARENT_SPAN]=L9.trace.getSpan(L9.context.active()),Q._callOriginalFunction(()=>B.apply(this,arguments))}}}_startSpan(A,Q,B,Y,J){return this.tracer.startSpan(`mongoose.${Q}.${B}`,{kind:L9.SpanKind.CLIENT,attributes:Object.assign(Object.assign(Object.assign({},Y),(0,sn.getAttributesFromCollection)(A)),{[nL.SEMATTRS_DB_OPERATION]:B,[nL.SEMATTRS_DB_SYSTEM]:"mongoose"})},J?L9.trace.setSpan(L9.context.active(),J):void 0)}_handleResponse(A,Q,B,Y,J,C=void 0){let X=this;if(J instanceof Function)return X._callOriginalFunction(()=>(0,sn.handleCallbackResponse)(J,Q,B,A,Y,X.getConfig().responseHook,C));else{let G=X._callOriginalFunction(()=>Q.apply(B,Y));return(0,sn.handlePromiseResponse)(G,A,X.getConfig().responseHook,C)}}_callOriginalFunction(A){if(this.getConfig().suppressInternalInstrumentation)return L9.context.with((0,PM0.suppressTracing)(L9.context.active()),A);else return A()}}xVQ.MongooseInstrumentation=hVQ});var uVQ=R((mVQ)=>{Object.defineProperty(mVQ,"__esModule",{value:!0})});var cVQ=R((yW)=>{var _M0=yW&&yW.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),dVQ=yW&&yW.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))_M0(Q,A,B)};Object.defineProperty(yW,"__esModule",{value:!0});dVQ(bVQ(),yW);dVQ(uVQ(),yW)});var nVQ=R((iVQ)=>{Object.defineProperty(iVQ,"__esModule",{value:!0});iVQ.AttributeNames=void 0;var yM0;(function(A){A.MYSQL_VALUES="db.mysql.values"})(yM0=iVQ.AttributeNames||(iVQ.AttributeNames={}))});var oVQ=R((rVQ)=>{Object.defineProperty(rVQ,"__esModule",{value:!0});rVQ.getPoolName=rVQ.arrayStringifyHelper=rVQ.getSpanName=rVQ.getDbValues=rVQ.getDbStatement=rVQ.getConnectionAttributes=void 0;var MG=dB();function gM0(A){let{host:Q,port:B,database:Y,user:J}=hM0(A),C=parseInt(B,10);if(!isNaN(C))return{[MG.SEMATTRS_NET_PEER_NAME]:Q,[MG.SEMATTRS_NET_PEER_PORT]:C,[MG.SEMATTRS_DB_CONNECTION_STRING]:sVQ(Q,B,Y),[MG.SEMATTRS_DB_NAME]:Y,[MG.SEMATTRS_DB_USER]:J};return{[MG.SEMATTRS_NET_PEER_NAME]:Q,[MG.SEMATTRS_DB_CONNECTION_STRING]:sVQ(Q,B,Y),[MG.SEMATTRS_DB_NAME]:Y,[MG.SEMATTRS_DB_USER]:J}}rVQ.getConnectionAttributes=gM0;function hM0(A){let{host:Q,port:B,database:Y,user:J}=A&&A.connectionConfig||A||{};return{host:Q,port:B,database:Y,user:J}}function sVQ(A,Q,B){let Y=`jdbc:mysql://${A||"localhost"}`;if(typeof Q==="number")Y+=`:${Q}`;if(typeof B==="string")Y+=`/${B}`;return Y}function xM0(A){if(typeof A==="string")return A;else return A.sql}rVQ.getDbStatement=xM0;function fM0(A,Q){if(typeof A==="string")return on(Q);else return on(Q||A.values)}rVQ.getDbValues=fM0;function bM0(A){let Q=typeof A==="object"?A.sql:A,B=Q===null||Q===void 0?void 0:Q.indexOf(" ");if(typeof B==="number"&&B!==-1)return Q===null||Q===void 0?void 0:Q.substring(0,B);return Q}rVQ.getSpanName=bM0;function on(A){if(A)return`[${A.toString()}]`;return""}rVQ.arrayStringifyHelper=on;function mM0(A){let Q=A.config.connectionConfig,B="";if(B+=Q.host?`host: '${Q.host}', `:"",B+=Q.port?`port: ${Q.port}, `:"",B+=Q.database?`database: '${Q.database}', `:"",B+=Q.user?`user: '${Q.user}'`:"",!Q.user)B=B.substring(0,B.length-2);return B.trim()}rVQ.getPoolName=mM0});var AIQ=R((tVQ)=>{Object.defineProperty(tVQ,"__esModule",{value:!0});tVQ.PACKAGE_NAME=tVQ.PACKAGE_VERSION=void 0;tVQ.PACKAGE_VERSION="0.45.1";tVQ.PACKAGE_NAME="@opentelemetry/instrumentation-mysql"});var JIQ=R((BIQ)=>{Object.defineProperty(BIQ,"__esModule",{value:!0});BIQ.MySQLInstrumentation=void 0;var A8=yA(),gK=NB(),tn=dB(),nM0=nVQ(),hK=oVQ(),QIQ=AIQ();class FT extends gK.InstrumentationBase{constructor(A={}){super(QIQ.PACKAGE_NAME,QIQ.PACKAGE_VERSION,A);this._setMetricInstruments()}setMeterProvider(A){super.setMeterProvider(A),this._setMetricInstruments()}_setMetricInstruments(){this._connectionsUsage=this.meter.createUpDownCounter("db.client.connections.usage",{description:"The number of connections that are currently in state described by the state attribute.",unit:"{connection}"})}init(){return[new gK.InstrumentationNodeModuleDefinition("mysql",[">=2.0.0 <3"],(A)=>{if((0,gK.isWrapped)(A.createConnection))this._unwrap(A,"createConnection");if(this._wrap(A,"createConnection",this._patchCreateConnection()),(0,gK.isWrapped)(A.createPool))this._unwrap(A,"createPool");if(this._wrap(A,"createPool",this._patchCreatePool()),(0,gK.isWrapped)(A.createPoolCluster))this._unwrap(A,"createPoolCluster");return this._wrap(A,"createPoolCluster",this._patchCreatePoolCluster()),A},(A)=>{if(A===void 0)return;this._unwrap(A,"createConnection"),this._unwrap(A,"createPool"),this._unwrap(A,"createPoolCluster")})]}_patchCreateConnection(){return(A)=>{let Q=this;return function(Y){let J=A(...arguments);return Q._wrap(J,"query",Q._patchQuery(J)),J}}}_patchCreatePool(){return(A)=>{let Q=this;return function(Y){let J=A(...arguments);return Q._wrap(J,"query",Q._patchQuery(J)),Q._wrap(J,"getConnection",Q._patchGetConnection(J)),Q._wrap(J,"end",Q._patchPoolEnd(J)),Q._setPoolcallbacks(J,Q,""),J}}}_patchPoolEnd(A){return(Q)=>{let B=this;return function(J){let C=A._allConnections.length,X=A._freeConnections.length,G=C-X,W=(0,hK.getPoolName)(A);B._connectionsUsage.add(-G,{state:"used",name:W}),B._connectionsUsage.add(-X,{state:"idle",name:W}),Q.apply(A,arguments)}}}_patchCreatePoolCluster(){return(A)=>{let Q=this;return function(Y){let J=A(...arguments);return Q._wrap(J,"getConnection",Q._patchGetConnection(J)),Q._wrap(J,"add",Q._patchAdd(J)),J}}}_patchAdd(A){return(Q)=>{let B=this;return function(J,C){if(!B._enabled)return B._unwrap(A,"add"),Q.apply(A,arguments);Q.apply(A,arguments);let X=A._nodes;if(X){let G=typeof J==="object"?"CLUSTER::"+A._lastId:String(J),W=X[G].pool;B._setPoolcallbacks(W,B,J)}}}}_patchGetConnection(A){return(Q)=>{let B=this;return function(J,C,X){if(!B._enabled)return B._unwrap(A,"getConnection"),Q.apply(A,arguments);if(arguments.length===1&&typeof J==="function"){let G=B._getConnectionCallbackPatchFn(J);return Q.call(A,G)}if(arguments.length===2&&typeof C==="function"){let G=B._getConnectionCallbackPatchFn(C);return Q.call(A,J,G)}if(arguments.length===3&&typeof X==="function"){let G=B._getConnectionCallbackPatchFn(X);return Q.call(A,J,C,G)}return Q.apply(A,arguments)}}}_getConnectionCallbackPatchFn(A){let Q=this,B=A8.context.active();return function(Y,J){if(J){if(!(0,gK.isWrapped)(J.query))Q._wrap(J,"query",Q._patchQuery(J))}if(typeof A==="function")A8.context.with(B,A,this,Y,J)}}_patchQuery(A){return(Q)=>{let B=this;return function(Y,J,C){if(!B._enabled)return B._unwrap(A,"query"),Q.apply(A,arguments);let X=B.tracer.startSpan((0,hK.getSpanName)(Y),{kind:A8.SpanKind.CLIENT,attributes:Object.assign(Object.assign({},FT.COMMON_ATTRIBUTES),(0,hK.getConnectionAttributes)(A.config))});if(X.setAttribute(tn.SEMATTRS_DB_STATEMENT,(0,hK.getDbStatement)(Y)),B.getConfig().enhancedDatabaseReporting){let F;if(Array.isArray(J))F=J;else if(arguments[2])F=[J];X.setAttribute(nM0.AttributeNames.MYSQL_VALUES,(0,hK.getDbValues)(Y,F))}let G=Array.from(arguments).findIndex((F)=>typeof F==="function"),W=A8.context.active();if(G===-1){let F=A8.context.with(A8.trace.setSpan(A8.context.active(),X),()=>{return Q.apply(A,arguments)});return A8.context.bind(W,F),F.on("error",(Z)=>X.setStatus({code:A8.SpanStatusCode.ERROR,message:Z.message})).on("end",()=>{X.end()})}else return B._wrap(arguments,G,B._patchCallbackQuery(X,W)),A8.context.with(A8.trace.setSpan(A8.context.active(),X),()=>{return Q.apply(A,arguments)})}}}_patchCallbackQuery(A,Q){return(B)=>{return function(Y,J,C){if(Y)A.setStatus({code:A8.SpanStatusCode.ERROR,message:Y.message});return A.end(),A8.context.with(Q,()=>B(...arguments))}}}_setPoolcallbacks(A,Q,B){let Y=B||(0,hK.getPoolName)(A);A.on("connection",(J)=>{Q._connectionsUsage.add(1,{state:"idle",name:Y})}),A.on("acquire",(J)=>{Q._connectionsUsage.add(-1,{state:"idle",name:Y}),Q._connectionsUsage.add(1,{state:"used",name:Y})}),A.on("release",(J)=>{Q._connectionsUsage.add(-1,{state:"used",name:Y}),Q._connectionsUsage.add(1,{state:"idle",name:Y})})}}BIQ.MySQLInstrumentation=FT;FT.COMMON_ATTRIBUTES={[tn.SEMATTRS_DB_SYSTEM]:tn.DBSYSTEMVALUES_MYSQL}});var XIQ=R((CIQ)=>{Object.defineProperty(CIQ,"__esModule",{value:!0})});var WIQ=R((gW)=>{var sM0=gW&&gW.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),GIQ=gW&&gW.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))sM0(Q,A,B)};Object.defineProperty(gW,"__esModule",{value:!0});GIQ(JIQ(),gW);GIQ(XIQ(),gW)});var Qs=R(($IQ)=>{Object.defineProperty($IQ,"__esModule",{value:!0});$IQ.addSqlCommenterComment=void 0;var As=yA(),aM0=MB();function oM0(A){let Q=A.indexOf("--");if(Q>=0)return!0;if(A.indexOf("/*")<0)return!1;let Y=A.indexOf("*/");return Q`%${Q.charCodeAt(0).toString(16).toUpperCase()}`)}function eM0(A,Q){if(typeof Q!=="string"||Q.length===0)return Q;if(oM0(Q))return Q;let B=new aM0.W3CTraceContextPropagator,Y={};B.inject(As.trace.setSpan(As.ROOT_CONTEXT,A),Y,As.defaultTextMapSetter);let J=Object.keys(Y).sort();if(J.length===0)return Q;let C=J.map((X)=>{let G=tM0(Y[X]);return`${X}='${G}'`}).join(",");return`${Q} /*${C}*/`}$IQ.addSqlCommenterComment=eM0});var IIQ=R((KIQ)=>{Object.defineProperty(KIQ,"__esModule",{value:!0});KIQ.getConnectionPrototypeToInstrument=KIQ.once=KIQ.getSpanName=KIQ.getDbStatement=KIQ.getConnectionAttributes=void 0;var zG=dB();function Az0(A){let{host:Q,port:B,database:Y,user:J}=Qz0(A),C=parseInt(B,10);if(!isNaN(C))return{[zG.SEMATTRS_NET_PEER_NAME]:Q,[zG.SEMATTRS_NET_PEER_PORT]:C,[zG.SEMATTRS_DB_CONNECTION_STRING]:EIQ(Q,B,Y),[zG.SEMATTRS_DB_NAME]:Y,[zG.SEMATTRS_DB_USER]:J};return{[zG.SEMATTRS_NET_PEER_NAME]:Q,[zG.SEMATTRS_DB_CONNECTION_STRING]:EIQ(Q,B,Y),[zG.SEMATTRS_DB_NAME]:Y,[zG.SEMATTRS_DB_USER]:J}}KIQ.getConnectionAttributes=Az0;function Qz0(A){let{host:Q,port:B,database:Y,user:J}=A&&A.connectionConfig||A||{};return{host:Q,port:B,database:Y,user:J}}function EIQ(A,Q,B){let Y=`jdbc:mysql://${A||"localhost"}`;if(typeof Q==="number")Y+=`:${Q}`;if(typeof B==="string")Y+=`/${B}`;return Y}function Bz0(A,Q,B){if(!Q)return typeof A==="string"?A:A.sql;if(typeof A==="string")return B?Q(A,B):A;else return B||A.values?Q(A.sql,B||A.values):A.sql}KIQ.getDbStatement=Bz0;function Yz0(A){let Q=typeof A==="object"?A.sql:A,B=Q===null||Q===void 0?void 0:Q.indexOf(" ");if(typeof B==="number"&&B!==-1)return Q===null||Q===void 0?void 0:Q.substring(0,B);return Q}KIQ.getSpanName=Yz0;var Jz0=(A)=>{let Q=!1;return(...B)=>{if(Q)return;return Q=!0,A(...B)}};KIQ.once=Jz0;function Cz0(A){let Q=A.prototype,B=Object.getPrototypeOf(Q);if(typeof(B===null||B===void 0?void 0:B.query)==="function"&&typeof(B===null||B===void 0?void 0:B.execute)==="function")return B;return Q}KIQ.getConnectionPrototypeToInstrument=Cz0});var NIQ=R((HIQ)=>{Object.defineProperty(HIQ,"__esModule",{value:!0});HIQ.PACKAGE_NAME=HIQ.PACKAGE_VERSION=void 0;HIQ.PACKAGE_VERSION="0.45.2";HIQ.PACKAGE_NAME="@opentelemetry/instrumentation-mysql2"});var wIQ=R((zIQ)=>{Object.defineProperty(zIQ,"__esModule",{value:!0});zIQ.MySQL2Instrumentation=void 0;var LIQ=yA(),T$=NB(),Ys=dB(),qIQ=Qs(),xK=IIQ(),MIQ=NIQ(),Bs=[">=1.4.2 <4"];class $T extends T$.InstrumentationBase{constructor(A={}){super(MIQ.PACKAGE_NAME,MIQ.PACKAGE_VERSION,A)}init(){let A;function Q(J){if(!A&&J.format)A=J.format}let B=(J)=>{if((0,T$.isWrapped)(J.query))this._unwrap(J,"query");if(this._wrap(J,"query",this._patchQuery(A,!1)),(0,T$.isWrapped)(J.execute))this._unwrap(J,"execute");this._wrap(J,"execute",this._patchQuery(A,!0))},Y=(J)=>{this._unwrap(J,"query"),this._unwrap(J,"execute")};return[new T$.InstrumentationNodeModuleDefinition("mysql2",Bs,(J)=>{return Q(J),J},()=>{},[new T$.InstrumentationNodeModuleFile("mysql2/promise.js",Bs,(J)=>{return Q(J),J},()=>{}),new T$.InstrumentationNodeModuleFile("mysql2/lib/connection.js",Bs,(J)=>{let C=(0,xK.getConnectionPrototypeToInstrument)(J);return B(C),J},(J)=>{if(J===void 0)return;let C=(0,xK.getConnectionPrototypeToInstrument)(J);Y(C)})])]}_patchQuery(A,Q){return(B)=>{let Y=this;return function(J,C,X){let G;if(Array.isArray(C))G=C;else if(arguments[2])G=[C];let W=Y.tracer.startSpan((0,xK.getSpanName)(J),{kind:LIQ.SpanKind.CLIENT,attributes:Object.assign(Object.assign(Object.assign({},$T.COMMON_ATTRIBUTES),(0,xK.getConnectionAttributes)(this.config)),{[Ys.SEMATTRS_DB_STATEMENT]:(0,xK.getDbStatement)(J,A,G)})});if(!Q&&Y.getConfig().addSqlCommenterCommentToQueries)arguments[0]=J=typeof J==="string"?(0,qIQ.addSqlCommenterComment)(W,J):Object.assign(J,{sql:(0,qIQ.addSqlCommenterComment)(W,J.sql)});let F=(0,xK.once)((Z,U)=>{if(Z)W.setStatus({code:LIQ.SpanStatusCode.ERROR,message:Z.message});else{let{responseHook:$}=Y.getConfig();if(typeof $==="function")(0,T$.safeExecuteInTheMiddle)(()=>{$(W,{queryResults:U})},(E)=>{if(E)Y._diag.warn("Failed executing responseHook",E)},!0)}W.end()});if(arguments.length===1){if(typeof J.onResult==="function")Y._wrap(J,"onResult",Y._patchCallbackQuery(F));let Z=B.apply(this,arguments);return Z.once("error",(U)=>{F(U)}).once("result",(U)=>{F(void 0,U)}),Z}if(typeof arguments[1]==="function")Y._wrap(arguments,1,Y._patchCallbackQuery(F));else if(typeof arguments[2]==="function")Y._wrap(arguments,2,Y._patchCallbackQuery(F));return B.apply(this,arguments)}}}_patchCallbackQuery(A){return(Q)=>{return function(B,Y,J){return A(B,Y),Q(...arguments)}}}}zIQ.MySQL2Instrumentation=$T;$T.COMMON_ATTRIBUTES={[Ys.SEMATTRS_DB_SYSTEM]:Ys.DBSYSTEMVALUES_MYSQL}});var OIQ=R((jIQ)=>{Object.defineProperty(jIQ,"__esModule",{value:!0})});var TIQ=R((hW)=>{var $z0=hW&&hW.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),PIQ=hW&&hW.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))$z0(Q,A,B)};Object.defineProperty(hW,"__esModule",{value:!0});PIQ(wIQ(),hW);PIQ(OIQ(),hW)});var yIQ=R((_IQ)=>{Object.defineProperty(_IQ,"__esModule",{value:!0});_IQ.endSpan=void 0;var Ez0=yA(),Kz0=(A,Q)=>{if(Q)A.recordException(Q),A.setStatus({code:Ez0.SpanStatusCode.ERROR,message:Q.message});A.end()};_IQ.endSpan=Kz0});var Cs=R((gIQ)=>{Object.defineProperty(gIQ,"__esModule",{value:!0});gIQ.defaultDbStatementSerializer=void 0;var Vz0=[{regex:/^ECHO/i,args:0},{regex:/^(LPUSH|MSET|PFA|PUBLISH|RPUSH|SADD|SET|SPUBLISH|XADD|ZADD)/i,args:1},{regex:/^(HSET|HMSET|LSET|LINSERT)/i,args:2},{regex:/^(ACL|BIT|B[LRZ]|CLIENT|CLUSTER|CONFIG|COMMAND|DECR|DEL|EVAL|EX|FUNCTION|GEO|GET|HINCR|HMGET|HSCAN|INCR|L[TRLM]|MEMORY|P[EFISTU]|RPOP|S[CDIMORSU]|XACK|X[CDGILPRT]|Z[CDILMPRS])/i,args:-1}],Iz0=(A,Q)=>{var B,Y;if(Array.isArray(Q)&&Q.length){let J=(Y=(B=Vz0.find(({regex:X})=>{return X.test(A)}))===null||B===void 0?void 0:B.args)!==null&&Y!==void 0?Y:0,C=J>=0?Q.slice(0,J):Q;if(Q.length>C.length)C.push(`[${Q.length-J} other arguments]`);return`${A} ${C.join(" ")}`}return A};gIQ.defaultDbStatementSerializer=Iz0});var bIQ=R((xIQ)=>{Object.defineProperty(xIQ,"__esModule",{value:!0});xIQ.PACKAGE_NAME=xIQ.PACKAGE_VERSION=void 0;xIQ.PACKAGE_VERSION="0.47.1";xIQ.PACKAGE_NAME="@opentelemetry/instrumentation-ioredis"});var iIQ=R((lIQ)=>{Object.defineProperty(lIQ,"__esModule",{value:!0});lIQ.IORedisInstrumentation=void 0;var xW=yA(),ET=NB(),AC=dB(),mIQ=NB(),rL=yIQ(),Dz0=Cs(),uIQ=bIQ(),dIQ={requireParentSpan:!0};class cIQ extends ET.InstrumentationBase{constructor(A={}){super(uIQ.PACKAGE_NAME,uIQ.PACKAGE_VERSION,Object.assign(Object.assign({},dIQ),A))}setConfig(A={}){super.setConfig(Object.assign(Object.assign({},dIQ),A))}init(){return[new ET.InstrumentationNodeModuleDefinition("ioredis",[">=2.0.0 <6"],(A,Q)=>{let B=A[Symbol.toStringTag]==="Module"?A.default:A;if((0,ET.isWrapped)(B.prototype.sendCommand))this._unwrap(B.prototype,"sendCommand");if(this._wrap(B.prototype,"sendCommand",this._patchSendCommand(Q)),(0,ET.isWrapped)(B.prototype.connect))this._unwrap(B.prototype,"connect");return this._wrap(B.prototype,"connect",this._patchConnection()),A},(A)=>{if(A===void 0)return;let Q=A[Symbol.toStringTag]==="Module"?A.default:A;this._unwrap(Q.prototype,"sendCommand"),this._unwrap(Q.prototype,"connect")})]}_patchSendCommand(A){return(Q)=>{return this._traceSendCommand(Q,A)}}_patchConnection(){return(A)=>{return this._traceConnection(A)}}_traceSendCommand(A,Q){let B=this;return function(Y){if(arguments.length<1||typeof Y!=="object")return A.apply(this,arguments);let J=B.getConfig(),C=J.dbStatementSerializer||Dz0.defaultDbStatementSerializer,X=xW.trace.getSpan(xW.context.active())===void 0;if(J.requireParentSpan===!0&&X)return A.apply(this,arguments);let G=B.tracer.startSpan(Y.name,{kind:xW.SpanKind.CLIENT,attributes:{[AC.SEMATTRS_DB_SYSTEM]:AC.DBSYSTEMVALUES_REDIS,[AC.SEMATTRS_DB_STATEMENT]:C(Y.name,Y.args)}}),{requestHook:W}=J;if(W)(0,mIQ.safeExecuteInTheMiddle)(()=>W(G,{moduleVersion:Q,cmdName:Y.name,cmdArgs:Y.args}),(U)=>{if(U)xW.diag.error("ioredis instrumentation: request hook failed",U)},!0);let{host:F,port:Z}=this.options;G.setAttributes({[AC.SEMATTRS_NET_PEER_NAME]:F,[AC.SEMATTRS_NET_PEER_PORT]:Z,[AC.SEMATTRS_DB_CONNECTION_STRING]:`redis://${F}:${Z}`});try{let U=A.apply(this,arguments),$=Y.resolve;Y.resolve=function(K){(0,mIQ.safeExecuteInTheMiddle)(()=>{var I;return(I=J.responseHook)===null||I===void 0?void 0:I.call(J,G,Y.name,Y.args,K)},(I)=>{if(I)xW.diag.error("ioredis instrumentation: response hook failed",I)},!0),(0,rL.endSpan)(G,null),$(K)};let E=Y.reject;return Y.reject=function(K){(0,rL.endSpan)(G,K),E(K)},U}catch(U){throw(0,rL.endSpan)(G,U),U}}}_traceConnection(A){let Q=this;return function(){let B=xW.trace.getSpan(xW.context.active())===void 0;if(Q.getConfig().requireParentSpan===!0&&B)return A.apply(this,arguments);let Y=Q.tracer.startSpan("connect",{kind:xW.SpanKind.CLIENT,attributes:{[AC.SEMATTRS_DB_SYSTEM]:AC.DBSYSTEMVALUES_REDIS,[AC.SEMATTRS_DB_STATEMENT]:"connect"}}),{host:J,port:C}=this.options;Y.setAttributes({[AC.SEMATTRS_NET_PEER_NAME]:J,[AC.SEMATTRS_NET_PEER_PORT]:C,[AC.SEMATTRS_DB_CONNECTION_STRING]:`redis://${J}:${C}`});try{let X=A.apply(this,arguments);return(0,rL.endSpan)(Y,null),X}catch(X){throw(0,rL.endSpan)(Y,X),X}}}}lIQ.IORedisInstrumentation=cIQ});var sIQ=R((nIQ)=>{Object.defineProperty(nIQ,"__esModule",{value:!0})});var aIQ=R((fW)=>{var Nz0=fW&&fW.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),rIQ=fW&&fW.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))Nz0(Q,A,B)};Object.defineProperty(fW,"__esModule",{value:!0});rIQ(iIQ(),fW);rIQ(sIQ(),fW)});var eIQ=R((oIQ)=>{Object.defineProperty(oIQ,"__esModule",{value:!0});oIQ.getClientAttributes=void 0;var aL=dB();function Lz0(A,Q){var B,Y;return{[aL.SEMATTRS_DB_SYSTEM]:aL.DBSYSTEMVALUES_REDIS,[aL.SEMATTRS_NET_PEER_NAME]:(B=Q===null||Q===void 0?void 0:Q.socket)===null||B===void 0?void 0:B.host,[aL.SEMATTRS_NET_PEER_PORT]:(Y=Q===null||Q===void 0?void 0:Q.socket)===null||Y===void 0?void 0:Y.port,[aL.SEMATTRS_DB_CONNECTION_STRING]:qz0(A,Q===null||Q===void 0?void 0:Q.url)}}oIQ.getClientAttributes=Lz0;function qz0(A,Q){if(typeof Q!=="string"||!Q)return;try{let B=new URL(Q);return B.searchParams.delete("user_pwd"),B.username="",B.password="",B.href}catch(B){A.error("failed to sanitize redis connection url",B)}return}});var BHQ=R((AHQ)=>{Object.defineProperty(AHQ,"__esModule",{value:!0});AHQ.PACKAGE_NAME=AHQ.PACKAGE_VERSION=void 0;AHQ.PACKAGE_VERSION="0.46.1";AHQ.PACKAGE_NAME="@opentelemetry/instrumentation-redis-4"});var FHQ=R((GHQ)=>{Object.defineProperty(GHQ,"__esModule",{value:!0});GHQ.RedisInstrumentation=void 0;var QC=yA(),aY=NB(),YHQ=eIQ(),zz0=Cs(),JHQ=BHQ(),Rz0=dB(),oL=Symbol("opentelemetry.instrumentation.redis.open_spans"),CHQ=Symbol("opentelemetry.instrumentation.redis.multi_command_options"),XHQ={requireParentSpan:!1};class tL extends aY.InstrumentationBase{constructor(A={}){super(JHQ.PACKAGE_NAME,JHQ.PACKAGE_VERSION,Object.assign(Object.assign({},XHQ),A))}setConfig(A={}){super.setConfig(Object.assign(Object.assign({},XHQ),A))}init(){return[this._getInstrumentationNodeModuleDefinition("@redis/client"),this._getInstrumentationNodeModuleDefinition("@node-redis/client")]}_getInstrumentationNodeModuleDefinition(A){let Q=new aY.InstrumentationNodeModuleFile(`${A}/dist/lib/commander.js`,["^1.0.0"],(J,C)=>{let X=J.transformCommandArguments;if(!X)return this._diag.error("internal instrumentation error, missing transformCommandArguments function"),J;let G=(C===null||C===void 0?void 0:C.startsWith("1.0."))?"extendWithCommands":"attachCommands";if((0,aY.isWrapped)(J===null||J===void 0?void 0:J[G]))this._unwrap(J,G);return this._wrap(J,G,this._getPatchExtendWithCommands(X)),J},(J)=>{if((0,aY.isWrapped)(J===null||J===void 0?void 0:J.extendWithCommands))this._unwrap(J,"extendWithCommands");if((0,aY.isWrapped)(J===null||J===void 0?void 0:J.attachCommands))this._unwrap(J,"attachCommands")}),B=new aY.InstrumentationNodeModuleFile(`${A}/dist/lib/client/multi-command.js`,["^1.0.0"],(J)=>{var C;let X=(C=J===null||J===void 0?void 0:J.default)===null||C===void 0?void 0:C.prototype;if((0,aY.isWrapped)(X===null||X===void 0?void 0:X.exec))this._unwrap(X,"exec");if(this._wrap(X,"exec",this._getPatchMultiCommandsExec()),(0,aY.isWrapped)(X===null||X===void 0?void 0:X.addCommand))this._unwrap(X,"addCommand");return this._wrap(X,"addCommand",this._getPatchMultiCommandsAddCommand()),J},(J)=>{var C;let X=(C=J===null||J===void 0?void 0:J.default)===null||C===void 0?void 0:C.prototype;if((0,aY.isWrapped)(X===null||X===void 0?void 0:X.exec))this._unwrap(X,"exec");if((0,aY.isWrapped)(X===null||X===void 0?void 0:X.addCommand))this._unwrap(X,"addCommand")}),Y=new aY.InstrumentationNodeModuleFile(`${A}/dist/lib/client/index.js`,["^1.0.0"],(J)=>{var C;let X=(C=J===null||J===void 0?void 0:J.default)===null||C===void 0?void 0:C.prototype;if(X===null||X===void 0?void 0:X.multi){if((0,aY.isWrapped)(X===null||X===void 0?void 0:X.multi))this._unwrap(X,"multi");this._wrap(X,"multi",this._getPatchRedisClientMulti())}if(X===null||X===void 0?void 0:X.MULTI){if((0,aY.isWrapped)(X===null||X===void 0?void 0:X.MULTI))this._unwrap(X,"MULTI");this._wrap(X,"MULTI",this._getPatchRedisClientMulti())}if((0,aY.isWrapped)(X===null||X===void 0?void 0:X.sendCommand))this._unwrap(X,"sendCommand");return this._wrap(X,"sendCommand",this._getPatchRedisClientSendCommand()),this._wrap(X,"connect",this._getPatchedClientConnect()),J},(J)=>{var C;let X=(C=J===null||J===void 0?void 0:J.default)===null||C===void 0?void 0:C.prototype;if((0,aY.isWrapped)(X===null||X===void 0?void 0:X.multi))this._unwrap(X,"multi");if((0,aY.isWrapped)(X===null||X===void 0?void 0:X.MULTI))this._unwrap(X,"MULTI");if((0,aY.isWrapped)(X===null||X===void 0?void 0:X.sendCommand))this._unwrap(X,"sendCommand")});return new aY.InstrumentationNodeModuleDefinition(A,["^1.0.0"],(J)=>{return J},()=>{},[Q,B,Y])}_getPatchExtendWithCommands(A){let Q=this;return function(Y){return function(C){var X;if(((X=C===null||C===void 0?void 0:C.BaseClass)===null||X===void 0?void 0:X.name)!=="RedisClient")return Y.apply(this,arguments);let G=C.executor;return C.executor=function(W,F){let Z=A(W,F).args;return Q._traceClientCommand(G,this,arguments,Z)},Y.apply(this,arguments)}}}_getPatchMultiCommandsExec(){let A=this;return function(B){return function(){let J=B.apply(this,arguments);if(typeof(J===null||J===void 0?void 0:J.then)!=="function")return A._diag.error("got non promise result when patching RedisClientMultiCommand.exec"),J;return J.then((C)=>{let X=this[oL];return A._endSpansWithRedisReplies(X,C),C}).catch((C)=>{let X=this[oL];if(!X)A._diag.error("cannot find open spans to end for redis multi command");else{let G=C.constructor.name==="MultiErrorReply"?C.replies:Array(X.length).fill(C);A._endSpansWithRedisReplies(X,G)}return Promise.reject(C)})}}}_getPatchMultiCommandsAddCommand(){let A=this;return function(B){return function(J){return A._traceClientCommand(B,this,arguments,J)}}}_getPatchRedisClientMulti(){return function(Q){return function(){let Y=Q.apply(this,arguments);return Y[CHQ]=this.options,Y}}}_getPatchRedisClientSendCommand(){let A=this;return function(B){return function(J){return A._traceClientCommand(B,this,arguments,J)}}}_getPatchedClientConnect(){let A=this;return function(B){return function(){let J=this.options,C=(0,YHQ.getClientAttributes)(A._diag,J),X=A.tracer.startSpan(`${tL.COMPONENT}-connect`,{kind:QC.SpanKind.CLIENT,attributes:C});return QC.context.with(QC.trace.setSpan(QC.context.active(),X),()=>{return B.apply(this)}).then((W)=>{return X.end(),W}).catch((W)=>{return X.recordException(W),X.setStatus({code:QC.SpanStatusCode.ERROR,message:W.message}),X.end(),Promise.reject(W)})}}}_traceClientCommand(A,Q,B,Y){if(QC.trace.getSpan(QC.context.active())===void 0&&this.getConfig().requireParentSpan)return A.apply(Q,B);let C=Q.options||Q[CHQ],X=Y[0],G=Y.slice(1),W=this.getConfig().dbStatementSerializer||zz0.defaultDbStatementSerializer,F=(0,YHQ.getClientAttributes)(this._diag,C);try{let $=W(X,G);if($!=null)F[Rz0.SEMATTRS_DB_STATEMENT]=$}catch($){this._diag.error("dbStatementSerializer throw an exception",$,{commandName:X})}let Z=this.tracer.startSpan(`${tL.COMPONENT}-${X}`,{kind:QC.SpanKind.CLIENT,attributes:F}),U=QC.context.with(QC.trace.setSpan(QC.context.active(),Z),()=>{return A.apply(Q,B)});if(typeof(U===null||U===void 0?void 0:U.then)==="function")U.then(($)=>{this._endSpanWithResponse(Z,X,G,$,void 0)},($)=>{this._endSpanWithResponse(Z,X,G,null,$)});else{let $=U;$[oL]=$[oL]||[],$[oL].push({span:Z,commandName:X,commandArgs:G})}return U}_endSpansWithRedisReplies(A,Q){if(!A)return this._diag.error("cannot find open spans to end for redis multi command");if(Q.length!==A.length)return this._diag.error("number of multi command spans does not match response from redis");for(let B=0;B{Object.defineProperty(ZHQ,"__esModule",{value:!0})});var EHQ=R((bW)=>{var wz0=bW&&bW.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),UHQ=bW&&bW.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))wz0(Q,A,B)};Object.defineProperty(bW,"__esModule",{value:!0});UHQ(FHQ(),bW);UHQ($HQ(),bW)});var RHQ=R((MHQ)=>{Object.defineProperty(MHQ,"__esModule",{value:!0});MHQ.EVENT_LISTENERS_SET=void 0;MHQ.EVENT_LISTENERS_SET=Symbol("opentelemetry.instrumentation.pg.eventListenersSet")});var $s=R((wHQ)=>{Object.defineProperty(wHQ,"__esModule",{value:!0});wHQ.AttributeNames=void 0;var _z0;(function(A){A.PG_VALUES="db.postgresql.values",A.PG_PLAN="db.postgresql.plan",A.IDLE_TIMEOUT_MILLIS="db.postgresql.idle.timeout.millis",A.MAX_CLIENT="db.postgresql.max.client"})(_z0=wHQ.AttributeNames||(wHQ.AttributeNames={}))});var Us=R((jHQ)=>{Object.defineProperty(jHQ,"__esModule",{value:!0});jHQ.METRIC_DB_CLIENT_OPERATION_DURATION=jHQ.METRIC_DB_CLIENT_CONNECTION_PENDING_REQUESTS=jHQ.METRIC_DB_CLIENT_CONNECTION_COUNT=jHQ.DB_CLIENT_CONNECTION_STATE_VALUE_IDLE=jHQ.DB_CLIENT_CONNECTION_STATE_VALUE_USED=jHQ.ATTR_DB_OPERATION_NAME=jHQ.ATTR_DB_NAMESPACE=jHQ.ATTR_DB_CLIENT_CONNECTION_STATE=jHQ.ATTR_DB_CLIENT_CONNECTION_POOL_NAME=void 0;jHQ.ATTR_DB_CLIENT_CONNECTION_POOL_NAME="db.client.connection.pool.name";jHQ.ATTR_DB_CLIENT_CONNECTION_STATE="db.client.connection.state";jHQ.ATTR_DB_NAMESPACE="db.namespace";jHQ.ATTR_DB_OPERATION_NAME="db.operation.name";jHQ.DB_CLIENT_CONNECTION_STATE_VALUE_USED="used";jHQ.DB_CLIENT_CONNECTION_STATE_VALUE_IDLE="idle";jHQ.METRIC_DB_CLIENT_CONNECTION_COUNT="db.client.connection.count";jHQ.METRIC_DB_CLIENT_CONNECTION_PENDING_REQUESTS="db.client.connection.pending_requests";jHQ.METRIC_DB_CLIENT_OPERATION_DURATION="db.client.operation.duration"});var Ks=R((PHQ)=>{Object.defineProperty(PHQ,"__esModule",{value:!0});PHQ.SpanNames=void 0;var uz0;(function(A){A.QUERY_PREFIX="pg.query",A.CONNECT="pg.connect",A.POOL_CONNECT="pg-pool.connect"})(uz0=PHQ.SpanNames||(PHQ.SpanNames={}))});var xHQ=R((gHQ)=>{Object.defineProperty(gHQ,"__esModule",{value:!0});gHQ.isObjectWithTextString=gHQ.getErrorMessage=gHQ.patchClientConnectCallback=gHQ.patchCallbackPGPool=gHQ.updateCounter=gHQ.getPoolName=gHQ.patchCallback=gHQ.handleExecutionResult=gHQ.handleConfigQuery=gHQ.shouldSkipInstrumentation=gHQ.getSemanticAttributesFromPool=gHQ.getSemanticAttributesFromConnection=gHQ.getConnectionString=gHQ.parseNormalizedOperationName=gHQ.getQuerySpanName=void 0;var mW=yA(),VT=$s(),xJ=dB(),S$=Us(),dz0=NB(),THQ=Ks();function SHQ(A,Q){if(!Q)return THQ.SpanNames.QUERY_PREFIX;let B=typeof Q.name==="string"&&Q.name?Q.name:kHQ(Q.text);return`${THQ.SpanNames.QUERY_PREFIX}:${B}${A?` ${A}`:""}`}gHQ.getQuerySpanName=SHQ;function kHQ(A){let Q=A.indexOf(" "),B=Q===-1?A:A.slice(0,Q);return B=B.toUpperCase(),B.endsWith(";")?B.slice(0,-1):B}gHQ.parseNormalizedOperationName=kHQ;function Vs(A){let Q=A.host||"localhost",B=A.port||5432,Y=A.database||"";return`postgresql://${Q}:${B}/${Y}`}gHQ.getConnectionString=Vs;function _HQ(A){if(Number.isInteger(A))return A;return}function vHQ(A){return{[xJ.SEMATTRS_DB_SYSTEM]:xJ.DBSYSTEMVALUES_POSTGRESQL,[xJ.SEMATTRS_DB_NAME]:A.database,[xJ.SEMATTRS_DB_CONNECTION_STRING]:Vs(A),[xJ.SEMATTRS_NET_PEER_NAME]:A.host,[xJ.SEMATTRS_NET_PEER_PORT]:_HQ(A.port),[xJ.SEMATTRS_DB_USER]:A.user}}gHQ.getSemanticAttributesFromConnection=vHQ;function cz0(A){return{[xJ.SEMATTRS_DB_SYSTEM]:xJ.DBSYSTEMVALUES_POSTGRESQL,[xJ.SEMATTRS_DB_NAME]:A.database,[xJ.SEMATTRS_DB_CONNECTION_STRING]:Vs(A),[xJ.SEMATTRS_NET_PEER_NAME]:A.host,[xJ.SEMATTRS_NET_PEER_PORT]:_HQ(A.port),[xJ.SEMATTRS_DB_USER]:A.user,[VT.AttributeNames.IDLE_TIMEOUT_MILLIS]:A.idleTimeoutMillis,[VT.AttributeNames.MAX_CLIENT]:A.maxClient}}gHQ.getSemanticAttributesFromPool=cz0;function lz0(A){return A.requireParentSpan===!0&&mW.trace.getSpan(mW.context.active())===void 0}gHQ.shouldSkipInstrumentation=lz0;function pz0(A,Q,B){let{connectionParameters:Y}=this,J=Y.database,C=SHQ(J,B),X=A.startSpan(C,{kind:mW.SpanKind.CLIENT,attributes:vHQ(Y)});if(!B)return X;if(B.text)X.setAttribute(xJ.SEMATTRS_DB_STATEMENT,B.text);if(Q.enhancedDatabaseReporting&&Array.isArray(B.values))try{let G=B.values.map((W)=>{if(W==null)return"null";else if(W instanceof Buffer)return W.toString();else if(typeof W==="object"){if(typeof W.toPostgres==="function")return W.toPostgres();return JSON.stringify(W)}else return W.toString()});X.setAttribute(VT.AttributeNames.PG_VALUES,G)}catch(G){mW.diag.error("failed to stringify ",B.values,G)}if(typeof B.name==="string")X.setAttribute(VT.AttributeNames.PG_PLAN,B.name);return X}gHQ.handleConfigQuery=pz0;function yHQ(A,Q,B){if(typeof A.responseHook==="function")(0,dz0.safeExecuteInTheMiddle)(()=>{A.responseHook(Q,{data:B})},(Y)=>{if(Y)mW.diag.error("Error running response hook",Y)},!0)}gHQ.handleExecutionResult=yHQ;function iz0(A,Q,B,Y,J){return function(X,G){if(X){if(Object.prototype.hasOwnProperty.call(X,"code"))Y[xJ.ATTR_ERROR_TYPE]=X.code;Q.setStatus({code:mW.SpanStatusCode.ERROR,message:X.message})}else yHQ(A,Q,G);J(),Q.end(),B.call(this,X,G)}}gHQ.patchCallback=iz0;function nz0(A){let Q="";return Q+=((A===null||A===void 0?void 0:A.host)?`${A.host}`:"unknown_host")+":",Q+=((A===null||A===void 0?void 0:A.port)?`${A.port}`:"unknown_port")+"/",Q+=(A===null||A===void 0?void 0:A.database)?`${A.database}`:"unknown_database",Q.trim()}gHQ.getPoolName=nz0;function sz0(A,Q,B,Y,J){let{totalCount:C,waitingCount:X,idleCount:G}=Q,W=C-G;return B.add(W-J.used,{[S$.ATTR_DB_CLIENT_CONNECTION_STATE]:S$.DB_CLIENT_CONNECTION_STATE_VALUE_USED,[S$.ATTR_DB_CLIENT_CONNECTION_POOL_NAME]:A}),B.add(G-J.idle,{[S$.ATTR_DB_CLIENT_CONNECTION_STATE]:S$.DB_CLIENT_CONNECTION_STATE_VALUE_IDLE,[S$.ATTR_DB_CLIENT_CONNECTION_POOL_NAME]:A}),Y.add(X-J.pending,{[S$.ATTR_DB_CLIENT_CONNECTION_POOL_NAME]:A}),{used:W,idle:G,pending:X}}gHQ.updateCounter=sz0;function rz0(A,Q){return function(Y,J,C){if(Y)A.setStatus({code:mW.SpanStatusCode.ERROR,message:Y.message});A.end(),Q.call(this,Y,J,C)}}gHQ.patchCallbackPGPool=rz0;function az0(A,Q){return function(Y){if(Y)A.setStatus({code:mW.SpanStatusCode.ERROR,message:Y.message});A.end(),Q.apply(this,arguments)}}gHQ.patchClientConnectCallback=az0;function oz0(A){return typeof A==="object"&&A!==null&&"message"in A?String(A.message):void 0}gHQ.getErrorMessage=oz0;function tz0(A){var Q;return typeof A==="object"&&typeof((Q=A)===null||Q===void 0?void 0:Q.text)==="string"}gHQ.isObjectWithTextString=tz0});var mHQ=R((fHQ)=>{Object.defineProperty(fHQ,"__esModule",{value:!0});fHQ.PACKAGE_NAME=fHQ.PACKAGE_VERSION=void 0;fHQ.PACKAGE_VERSION="0.51.1";fHQ.PACKAGE_NAME="@opentelemetry/instrumentation-pg"});var rHQ=R((nHQ)=>{Object.defineProperty(nHQ,"__esModule",{value:!0});nHQ.PgInstrumentation=void 0;var BC=NB(),rB=yA(),uHQ=RHQ(),wY=xHQ(),dHQ=Qs(),cHQ=mHQ(),lHQ=Ks(),IT=MB(),uW=dB(),k$=Us();function HT(A){return A[Symbol.toStringTag]==="Module"?A.default:A}class iHQ extends BC.InstrumentationBase{constructor(A={}){super(cHQ.PACKAGE_NAME,cHQ.PACKAGE_VERSION,A);this._connectionsCounter={used:0,idle:0,pending:0}}_updateMetricInstruments(){this._operationDuration=this.meter.createHistogram(k$.METRIC_DB_CLIENT_OPERATION_DURATION,{description:"Duration of database client operations.",unit:"s",valueType:rB.ValueType.DOUBLE,advice:{explicitBucketBoundaries:[0.001,0.005,0.01,0.05,0.1,0.5,1,5,10]}}),this._connectionsCounter={idle:0,pending:0,used:0},this._connectionsCount=this.meter.createUpDownCounter(k$.METRIC_DB_CLIENT_CONNECTION_COUNT,{description:"The number of connections that are currently in state described by the state attribute.",unit:"{connection}"}),this._connectionPendingRequests=this.meter.createUpDownCounter(k$.METRIC_DB_CLIENT_CONNECTION_PENDING_REQUESTS,{description:"The number of current pending requests for an open connection.",unit:"{connection}"})}init(){let A=[">=8.0.3 <9"],Q=new BC.InstrumentationNodeModuleFile("pg/lib/native/client.js",A,this._patchPgClient.bind(this),this._unpatchPgClient.bind(this)),B=new BC.InstrumentationNodeModuleFile("pg/lib/client.js",A,this._patchPgClient.bind(this),this._unpatchPgClient.bind(this)),Y=new BC.InstrumentationNodeModuleDefinition("pg",A,(C)=>{let X=HT(C);return this._patchPgClient(X.Client),C},(C)=>{let X=HT(C);return this._unpatchPgClient(X.Client),C},[B,Q]),J=new BC.InstrumentationNodeModuleDefinition("pg-pool",[">=2.0.0 <4"],(C)=>{if((0,BC.isWrapped)(C.prototype.connect))this._unwrap(C.prototype,"connect");return this._wrap(C.prototype,"connect",this._getPoolConnectPatch()),C},(C)=>{if((0,BC.isWrapped)(C.prototype.connect))this._unwrap(C.prototype,"connect")});return[Y,J]}_patchPgClient(A){if(!A)return;let Q=HT(A);if((0,BC.isWrapped)(Q.prototype.query))this._unwrap(Q.prototype,"query");if((0,BC.isWrapped)(Q.prototype.connect))this._unwrap(Q.prototype,"connect");return this._wrap(Q.prototype,"query",this._getClientQueryPatch()),this._wrap(Q.prototype,"connect",this._getClientConnectPatch()),A}_unpatchPgClient(A){let Q=HT(A);if((0,BC.isWrapped)(Q.prototype.query))this._unwrap(Q.prototype,"query");if((0,BC.isWrapped)(Q.prototype.connect))this._unwrap(Q.prototype,"connect");return A}_getClientConnectPatch(){let A=this;return(Q)=>{return function(Y){if(wY.shouldSkipInstrumentation(A.getConfig()))return Q.call(this,Y);let J=A.tracer.startSpan(lHQ.SpanNames.CONNECT,{kind:rB.SpanKind.CLIENT,attributes:wY.getSemanticAttributesFromConnection(this)});if(Y){let X=rB.trace.getSpan(rB.context.active());if(Y=wY.patchClientConnectCallback(J,Y),X)Y=rB.context.bind(rB.context.active(),Y)}let C=rB.context.with(rB.trace.setSpan(rB.context.active(),J),()=>{return Q.call(this,Y)});return pHQ(J,C)}}}recordOperationDuration(A,Q){let B={};[uW.SEMATTRS_DB_SYSTEM,k$.ATTR_DB_NAMESPACE,uW.ATTR_ERROR_TYPE,uW.ATTR_SERVER_PORT,uW.ATTR_SERVER_ADDRESS,k$.ATTR_DB_OPERATION_NAME].forEach((C)=>{if(C in A)B[C]=A[C]});let J=(0,IT.hrTimeToMilliseconds)((0,IT.hrTimeDuration)(Q,(0,IT.hrTime)()))/1000;this._operationDuration.record(J,B)}_getClientQueryPatch(){let A=this;return(Q)=>{return this._diag.debug("Patching pg.Client.prototype.query"),function(...Y){if(wY.shouldSkipInstrumentation(A.getConfig()))return Q.apply(this,Y);let J=(0,IT.hrTime)(),C=Y[0],X=typeof C==="string",G=wY.isObjectWithTextString(C),W=X?{text:C,values:Array.isArray(Y[1])?Y[1]:void 0}:G?C:void 0,F={[uW.SEMATTRS_DB_SYSTEM]:uW.DBSYSTEMVALUES_POSTGRESQL,[k$.ATTR_DB_NAMESPACE]:this.database,[uW.ATTR_SERVER_PORT]:this.connectionParameters.port,[uW.ATTR_SERVER_ADDRESS]:this.connectionParameters.host};if(W===null||W===void 0?void 0:W.text)F[k$.ATTR_DB_OPERATION_NAME]=wY.parseNormalizedOperationName(W===null||W===void 0?void 0:W.text);let Z=()=>{A.recordOperationDuration(F,J)},U=A.getConfig(),$=wY.handleConfigQuery.call(this,A.tracer,U,W);if(U.addSqlCommenterCommentToQueries){if(X)Y[0]=(0,dHQ.addSqlCommenterComment)($,C);else if(G&&!("name"in C))Y[0]=Object.assign(Object.assign({},C),{text:(0,dHQ.addSqlCommenterComment)($,C.text)})}if(Y.length>0){let I=rB.trace.getSpan(rB.context.active());if(typeof Y[Y.length-1]==="function"){if(Y[Y.length-1]=wY.patchCallback(U,$,Y[Y.length-1],F,Z),I)Y[Y.length-1]=rB.context.bind(rB.context.active(),Y[Y.length-1])}else if(typeof(W===null||W===void 0?void 0:W.callback)==="function"){let V=wY.patchCallback(A.getConfig(),$,W.callback,F,Z);if(I)V=rB.context.bind(rB.context.active(),V);Y[0].callback=V}}let{requestHook:E}=U;if(typeof E==="function"&&W)(0,BC.safeExecuteInTheMiddle)(()=>{let{database:I,host:V,port:H,user:D}=this.connectionParameters;E($,{connection:{database:I,host:V,port:H,user:D},query:{text:W.text,values:W.values,name:W.name}})},(I)=>{if(I)A._diag.error("Error running query hook",I)},!0);let K;try{K=Q.apply(this,Y)}catch(I){throw $.setStatus({code:rB.SpanStatusCode.ERROR,message:wY.getErrorMessage(I)}),$.end(),I}if(K instanceof Promise)return K.then((I)=>{return new Promise((V)=>{wY.handleExecutionResult(A.getConfig(),$,I),Z(),$.end(),V(I)})}).catch((I)=>{return new Promise((V,H)=>{$.setStatus({code:rB.SpanStatusCode.ERROR,message:I.message}),Z(),$.end(),H(I)})});return K}}}_setPoolConnectEventListeners(A){if(A[uHQ.EVENT_LISTENERS_SET])return;let Q=wY.getPoolName(A.options);A.on("connect",()=>{this._connectionsCounter=wY.updateCounter(Q,A,this._connectionsCount,this._connectionPendingRequests,this._connectionsCounter)}),A.on("acquire",()=>{this._connectionsCounter=wY.updateCounter(Q,A,this._connectionsCount,this._connectionPendingRequests,this._connectionsCounter)}),A.on("remove",()=>{this._connectionsCounter=wY.updateCounter(Q,A,this._connectionsCount,this._connectionPendingRequests,this._connectionsCounter)}),A.on("release",()=>{this._connectionsCounter=wY.updateCounter(Q,A,this._connectionsCount,this._connectionPendingRequests,this._connectionsCounter)}),A[uHQ.EVENT_LISTENERS_SET]=!0}_getPoolConnectPatch(){let A=this;return(Q)=>{return function(Y){if(wY.shouldSkipInstrumentation(A.getConfig()))return Q.call(this,Y);let J=A.tracer.startSpan(lHQ.SpanNames.POOL_CONNECT,{kind:rB.SpanKind.CLIENT,attributes:wY.getSemanticAttributesFromPool(this.options)});if(A._setPoolConnectEventListeners(this),Y){let X=rB.trace.getSpan(rB.context.active());if(Y=wY.patchCallbackPGPool(J,Y),X)Y=rB.context.bind(rB.context.active(),Y)}let C=rB.context.with(rB.trace.setSpan(rB.context.active(),J),()=>{return Q.call(this,Y)});return pHQ(J,C)}}}}nHQ.PgInstrumentation=iHQ;function pHQ(A,Q){if(!(Q instanceof Promise))return Q;let B=Q;return rB.context.bind(rB.context.active(),B.then((Y)=>{return A.end(),Y}).catch((Y)=>{return A.setStatus({code:rB.SpanStatusCode.ERROR,message:wY.getErrorMessage(Y)}),A.end(),Promise.reject(Y)}))}});var oHQ=R((aHQ)=>{Object.defineProperty(aHQ,"__esModule",{value:!0})});var tHQ=R((RG)=>{var K20=RG&&RG.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),Is=RG&&RG.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))K20(Q,A,B)};Object.defineProperty(RG,"__esModule",{value:!0});Is(rHQ(),RG);Is(oHQ(),RG);Is($s(),RG)});var EDQ=R(($DQ)=>{Object.defineProperty($DQ,"__esModule",{value:!0});$DQ.PACKAGE_NAME=$DQ.PACKAGE_VERSION=void 0;$DQ.PACKAGE_VERSION="0.45.2";$DQ.PACKAGE_NAME="@opentelemetry/instrumentation-hapi"});var Ls=R((KDQ)=>{Object.defineProperty(KDQ,"__esModule",{value:!0});KDQ.HapiLifecycleMethodNames=KDQ.HapiLayerType=KDQ.handlerPatched=KDQ.HapiComponentName=void 0;KDQ.HapiComponentName="@hapi/hapi";KDQ.handlerPatched=Symbol("hapi-handler-patched");KDQ.HapiLayerType={ROUTER:"router",PLUGIN:"plugin",EXT:"server.ext"};KDQ.HapiLifecycleMethodNames=new Set(["onPreAuth","onCredentials","onPostAuth","onPreHandler","onPostHandler","onPreResponse","onRequest"])});var Ms=R((IDQ)=>{Object.defineProperty(IDQ,"__esModule",{value:!0});IDQ.AttributeNames=void 0;var S20;(function(A){A.HAPI_TYPE="hapi.type",A.PLUGIN_NAME="hapi.plugin.name",A.EXT_TYPE="server.ext.type"})(S20=IDQ.AttributeNames||(IDQ.AttributeNames={}))});var NDQ=R((HDQ)=>{Object.defineProperty(HDQ,"__esModule",{value:!0});HDQ.getPluginFromInput=HDQ.getExtMetadata=HDQ.getRouteMetadata=HDQ.isPatchableExtMethod=HDQ.isDirectExtInput=HDQ.isLifecycleExtEventObj=HDQ.isLifecycleExtType=HDQ.getPluginName=void 0;var qT=dB(),Aq=Ls(),cW=Ms();function k20(A){if(A.name)return A.name;else return A.pkg.name}HDQ.getPluginName=k20;var _20=(A)=>{return typeof A==="string"&&Aq.HapiLifecycleMethodNames.has(A)};HDQ.isLifecycleExtType=_20;var v20=(A)=>{var Q;let B=(Q=A)===null||Q===void 0?void 0:Q.type;return B!==void 0&&HDQ.isLifecycleExtType(B)};HDQ.isLifecycleExtEventObj=v20;var y20=(A)=>{return Array.isArray(A)&&A.length<=3&&HDQ.isLifecycleExtType(A[0])&&typeof A[1]==="function"};HDQ.isDirectExtInput=y20;var g20=(A)=>{return!Array.isArray(A)};HDQ.isPatchableExtMethod=g20;var h20=(A,Q)=>{if(Q)return{attributes:{[qT.SEMATTRS_HTTP_ROUTE]:A.path,[qT.SEMATTRS_HTTP_METHOD]:A.method,[cW.AttributeNames.HAPI_TYPE]:Aq.HapiLayerType.PLUGIN,[cW.AttributeNames.PLUGIN_NAME]:Q},name:`${Q}: route - ${A.path}`};return{attributes:{[qT.SEMATTRS_HTTP_ROUTE]:A.path,[qT.SEMATTRS_HTTP_METHOD]:A.method,[cW.AttributeNames.HAPI_TYPE]:Aq.HapiLayerType.ROUTER},name:`route - ${A.path}`}};HDQ.getRouteMetadata=h20;var x20=(A,Q)=>{if(Q)return{attributes:{[cW.AttributeNames.EXT_TYPE]:A,[cW.AttributeNames.HAPI_TYPE]:Aq.HapiLayerType.EXT,[cW.AttributeNames.PLUGIN_NAME]:Q},name:`${Q}: ext - ${A}`};return{attributes:{[cW.AttributeNames.EXT_TYPE]:A,[cW.AttributeNames.HAPI_TYPE]:Aq.HapiLayerType.EXT},name:`ext - ${A}`}};HDQ.getExtMetadata=x20;var f20=(A)=>{if("plugin"in A){if("plugin"in A.plugin)return A.plugin.plugin;return A.plugin}return A};HDQ.getPluginFromInput=f20});var wDQ=R((zDQ)=>{Object.defineProperty(zDQ,"__esModule",{value:!0});zDQ.HapiInstrumentation=void 0;var c8=yA(),LDQ=MB(),MT=NB(),qDQ=EDQ(),Qq=Ls(),wG=NDQ();class MDQ extends MT.InstrumentationBase{constructor(A={}){super(qDQ.PACKAGE_NAME,qDQ.PACKAGE_VERSION,A)}init(){return new MT.InstrumentationNodeModuleDefinition(Qq.HapiComponentName,[">=17.0.0 <22"],(A)=>{let Q=A[Symbol.toStringTag]==="Module"?A.default:A;if(!(0,MT.isWrapped)(Q.server))this._wrap(Q,"server",this._getServerPatch.bind(this));if(!(0,MT.isWrapped)(Q.Server))this._wrap(Q,"Server",this._getServerPatch.bind(this));return Q},(A)=>{let Q=A[Symbol.toStringTag]==="Module"?A.default:A;this._massUnwrap([Q],["server","Server"])})}_getServerPatch(A){let Q=this,B=this;return function(J){let C=A.apply(this,[J]);return B._wrap(C,"route",(X)=>{return Q._getServerRoutePatch.bind(Q)(X)}),B._wrap(C,"ext",(X)=>{return Q._getServerExtPatch.bind(Q)(X)}),B._wrap(C,"register",Q._getServerRegisterPatch.bind(Q)),C}}_getServerRegisterPatch(A){let Q=this;return function(Y,J){if(Array.isArray(Y))for(let C of Y){let X=(0,wG.getPluginFromInput)(C);Q._wrapRegisterHandler(X)}else{let C=(0,wG.getPluginFromInput)(Y);Q._wrapRegisterHandler(C)}return A.apply(this,[Y,J])}}_getServerExtPatch(A,Q){let B=this;return function(...J){if(Array.isArray(J[0])){let C=J[0];for(let X=0;X{return Q._getServerRoutePatch.bind(Q)(W,B)}),J._wrap(X,"ext",(W)=>{return Q._getServerExtPatch.bind(Q)(W,B)}),Y.call(this,X,G)};A.register=C}_wrapExtMethods(A,Q,B){let Y=this;if(A instanceof Array){for(let J=0;J{return async function(...X){if(c8.trace.getSpan(c8.context.active())===void 0)return await C.call(this,...X);let G=(0,LDQ.getRPCMetadata)(c8.context.active());if((G===null||G===void 0?void 0:G.type)===LDQ.RPCType.HTTP)G.route=A.path;let W=(0,wG.getRouteMetadata)(A,Q),F=Y.tracer.startSpan(W.name,{attributes:W.attributes});try{return await c8.context.with(c8.trace.setSpan(c8.context.active(),F),()=>C.call(this,...X))}catch(Z){throw F.recordException(Z),F.setStatus({code:c8.SpanStatusCode.ERROR,message:Z.message}),Z}finally{F.end()}}};if(typeof A.handler==="function")A.handler=J(A.handler);else if(typeof A.options==="function"){let C=A.options;A.options=function(X){let G=C(X);if(typeof G.handler==="function")G.handler=J(G.handler);return G}}else if(typeof((B=A.options)===null||B===void 0?void 0:B.handler)==="function")A.options.handler=J(A.options.handler);return A}}zDQ.HapiInstrumentation=MDQ});var ODQ=R((lW)=>{var p20=lW&&lW.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),jDQ=lW&&lW.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))p20(Q,A,B)};Object.defineProperty(lW,"__esModule",{value:!0});jDQ(wDQ(),lW);jDQ(Ms(),lW)});var wT=R((kDQ)=>{Object.defineProperty(kDQ,"__esModule",{value:!0});kDQ.KoaLayerType=void 0;var o20;(function(A){A.ROUTER="router",A.MIDDLEWARE="middleware"})(o20=kDQ.KoaLayerType||(kDQ.KoaLayerType={}))});var yDQ=R((_DQ)=>{Object.defineProperty(_DQ,"__esModule",{value:!0});_DQ.PACKAGE_NAME=_DQ.PACKAGE_VERSION=void 0;_DQ.PACKAGE_VERSION="0.47.1";_DQ.PACKAGE_NAME="@opentelemetry/instrumentation-koa"});var js=R((gDQ)=>{Object.defineProperty(gDQ,"__esModule",{value:!0});gDQ.AttributeNames=void 0;var e20;(function(A){A.KOA_TYPE="koa.type",A.KOA_NAME="koa.name"})(e20=gDQ.AttributeNames||(gDQ.AttributeNames={}))});var bDQ=R((xDQ)=>{Object.defineProperty(xDQ,"__esModule",{value:!0});xDQ.isLayerIgnored=xDQ.getMiddlewareMetadata=void 0;var hDQ=wT(),jT=js(),A30=dB(),Q30=(A,Q,B,Y)=>{var J;if(B)return{attributes:{[jT.AttributeNames.KOA_NAME]:Y===null||Y===void 0?void 0:Y.toString(),[jT.AttributeNames.KOA_TYPE]:hDQ.KoaLayerType.ROUTER,[A30.SEMATTRS_HTTP_ROUTE]:Y===null||Y===void 0?void 0:Y.toString()},name:A._matchedRouteName||`router - ${Y}`};else return{attributes:{[jT.AttributeNames.KOA_NAME]:(J=Q.name)!==null&&J!==void 0?J:"middleware",[jT.AttributeNames.KOA_TYPE]:hDQ.KoaLayerType.MIDDLEWARE},name:`middleware - ${Q.name}`}};xDQ.getMiddlewareMetadata=Q30;var B30=(A,Q)=>{var B;return!!(Array.isArray(Q===null||Q===void 0?void 0:Q.ignoreLayersType)&&((B=Q===null||Q===void 0?void 0:Q.ignoreLayersType)===null||B===void 0?void 0:B.includes(A)))};xDQ.isLayerIgnored=B30});var dDQ=R((mDQ)=>{Object.defineProperty(mDQ,"__esModule",{value:!0});mDQ.kLayerPatched=void 0;mDQ.kLayerPatched=Symbol("koa-layer-patched")});var oDQ=R((rDQ)=>{Object.defineProperty(rDQ,"__esModule",{value:!0});rDQ.KoaInstrumentation=void 0;var qX=yA(),Bq=NB(),cDQ=wT(),lDQ=yDQ(),pDQ=bDQ(),iDQ=MB(),nDQ=dDQ();class sDQ extends Bq.InstrumentationBase{constructor(A={}){super(lDQ.PACKAGE_NAME,lDQ.PACKAGE_VERSION,A)}init(){return new Bq.InstrumentationNodeModuleDefinition("koa",[">=2.0.0 <3"],(A)=>{let Q=A[Symbol.toStringTag]==="Module"?A.default:A;if(Q==null)return Q;if((0,Bq.isWrapped)(Q.prototype.use))this._unwrap(Q.prototype,"use");return this._wrap(Q.prototype,"use",this._getKoaUsePatch.bind(this)),A},(A)=>{let Q=A[Symbol.toStringTag]==="Module"?A.default:A;if((0,Bq.isWrapped)(Q.prototype.use))this._unwrap(Q.prototype,"use")})}_getKoaUsePatch(A){let Q=this;return function(Y){let J;if(Y.router)J=Q._patchRouterDispatch(Y);else J=Q._patchLayer(Y,!1);return A.apply(this,[J])}}_patchRouterDispatch(A){var Q;qX.diag.debug("Patching @koa/router dispatch");let B=A.router,Y=(Q=B===null||B===void 0?void 0:B.stack)!==null&&Q!==void 0?Q:[];for(let J of Y){let{path:C,stack:X}=J;for(let G=0;G{if(qX.trace.getSpan(qX.context.active())===void 0)return A(J,C);let G=(0,pDQ.getMiddlewareMetadata)(J,A,Q,B),W=this.tracer.startSpan(G.name,{attributes:G.attributes}),F=(0,iDQ.getRPCMetadata)(qX.context.active());if((F===null||F===void 0?void 0:F.type)===iDQ.RPCType.HTTP&&J._matchedRoute)F.route=J._matchedRoute.toString();let{requestHook:Z}=this.getConfig();if(Z)(0,Bq.safeExecuteInTheMiddle)(()=>Z(W,{context:J,middlewareLayer:A,layerType:Y}),($)=>{if($)qX.diag.error("koa instrumentation: request hook failed",$)},!0);let U=qX.trace.setSpan(qX.context.active(),W);return qX.context.with(U,async()=>{try{return await A(J,C)}catch($){throw W.recordException($),$}finally{W.end()}})}}}rDQ.KoaInstrumentation=sDQ});var tDQ=R((jG)=>{var J30=jG&&jG.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),Os=jG&&jG.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))J30(Q,A,B)};Object.defineProperty(jG,"__esModule",{value:!0});Os(oDQ(),jG);Os(wT(),jG);Os(js(),jG)});var Ss=R((CNQ)=>{Object.defineProperty(CNQ,"__esModule",{value:!0});CNQ.ConnectNames=CNQ.ConnectTypes=CNQ.AttributeNames=void 0;var G30;(function(A){A.CONNECT_TYPE="connect.type",A.CONNECT_NAME="connect.name"})(G30=CNQ.AttributeNames||(CNQ.AttributeNames={}));var W30;(function(A){A.MIDDLEWARE="middleware",A.REQUEST_HANDLER="request_handler"})(W30=CNQ.ConnectTypes||(CNQ.ConnectTypes={}));var F30;(function(A){A.MIDDLEWARE="middleware",A.REQUEST_HANDLER="request handler"})(F30=CNQ.ConnectNames||(CNQ.ConnectNames={}))});var WNQ=R((XNQ)=>{Object.defineProperty(XNQ,"__esModule",{value:!0});XNQ.PACKAGE_NAME=XNQ.PACKAGE_VERSION=void 0;XNQ.PACKAGE_VERSION="0.43.1";XNQ.PACKAGE_NAME="@opentelemetry/instrumentation-connect"});var $NQ=R((FNQ)=>{Object.defineProperty(FNQ,"__esModule",{value:!0});FNQ._LAYERS_STORE_PROPERTY=void 0;FNQ._LAYERS_STORE_PROPERTY=Symbol("opentelemetry.instrumentation-connect.request-route-stack")});var KNQ=R((UNQ)=>{Object.defineProperty(UNQ,"__esModule",{value:!0});UNQ.generateRoute=UNQ.replaceCurrentStackRoute=UNQ.addNewStackLayer=void 0;var $30=yA(),pW=$NQ(),U30=(A)=>{if(Array.isArray(A[pW._LAYERS_STORE_PROPERTY])===!1)Object.defineProperty(A,pW._LAYERS_STORE_PROPERTY,{enumerable:!1,value:[]});A[pW._LAYERS_STORE_PROPERTY].push("/");let Q=A[pW._LAYERS_STORE_PROPERTY].length;return()=>{if(Q===A[pW._LAYERS_STORE_PROPERTY].length)A[pW._LAYERS_STORE_PROPERTY].pop();else $30.diag.warn("Connect: Trying to pop the stack multiple time")}};UNQ.addNewStackLayer=U30;var E30=(A,Q)=>{if(Q)A[pW._LAYERS_STORE_PROPERTY].splice(-1,1,Q)};UNQ.replaceCurrentStackRoute=E30;var K30=(A)=>{return A[pW._LAYERS_STORE_PROPERTY].reduce((Q,B)=>Q.replace(/\/+$/,"")+B)};UNQ.generateRoute=K30});var LNQ=R((DNQ)=>{Object.defineProperty(DNQ,"__esModule",{value:!0});DNQ.ConnectInstrumentation=DNQ.ANONYMOUS_NAME=void 0;var H30=yA(),VNQ=MB(),fK=Ss(),INQ=WNQ(),PT=NB(),D30=dB(),ks=KNQ();DNQ.ANONYMOUS_NAME="anonymous";class HNQ extends PT.InstrumentationBase{constructor(A={}){super(INQ.PACKAGE_NAME,INQ.PACKAGE_VERSION,A)}init(){return[new PT.InstrumentationNodeModuleDefinition("connect",[">=3.0.0 <4"],(A)=>{return this._patchConstructor(A)})]}_patchApp(A){if(!(0,PT.isWrapped)(A.use))this._wrap(A,"use",this._patchUse.bind(this));if(!(0,PT.isWrapped)(A.handle))this._wrap(A,"handle",this._patchHandle.bind(this))}_patchConstructor(A){let Q=this;return function(...B){let Y=A.apply(this,B);return Q._patchApp(Y),Y}}_patchNext(A,Q){return function(Y){let J=A.apply(this,[Y]);return Q(),J}}_startSpan(A,Q){let B,Y,J;if(A)B=fK.ConnectTypes.REQUEST_HANDLER,J=fK.ConnectNames.REQUEST_HANDLER,Y=A;else B=fK.ConnectTypes.MIDDLEWARE,J=fK.ConnectNames.MIDDLEWARE,Y=Q.name||DNQ.ANONYMOUS_NAME;let C=`${J} - ${Y}`,X={attributes:{[D30.SEMATTRS_HTTP_ROUTE]:A.length>0?A:"/",[fK.AttributeNames.CONNECT_TYPE]:B,[fK.AttributeNames.CONNECT_NAME]:Y}};return this.tracer.startSpan(C,X)}_patchMiddleware(A,Q){let B=this,Y=Q.length===4;function J(){if(!B.isEnabled())return Q.apply(this,arguments);let[C,X,G]=Y?[1,2,3]:[0,1,2],W=arguments[C],F=arguments[X],Z=arguments[G];(0,ks.replaceCurrentStackRoute)(W,A);let U=(0,VNQ.getRPCMetadata)(H30.context.active());if(A&&(U===null||U===void 0?void 0:U.type)===VNQ.RPCType.HTTP)U.route=(0,ks.generateRoute)(W);let $="";if(A)$=`request handler - ${A}`;else $=`middleware - ${Q.name||DNQ.ANONYMOUS_NAME}`;let E=B._startSpan(A,Q);B._diag.debug("start span",$);let K=!1;function I(){if(!K)K=!0,B._diag.debug(`finishing span ${E.name}`),E.end();else B._diag.debug(`span ${E.name} - already finished`);F.removeListener("close",I)}return F.addListener("close",I),arguments[G]=B._patchNext(Z,I),Q.apply(this,arguments)}return Object.defineProperty(J,"length",{value:Q.length,writable:!1,configurable:!0}),J}_patchUse(A){let Q=this;return function(...B){let Y=B[B.length-1],J=B[B.length-2]||"";return B[B.length-1]=Q._patchMiddleware(J,Y),A.apply(this,B)}}_patchHandle(A){let Q=this;return function(){let[B,Y]=[0,2],J=arguments[B],C=arguments[Y],X=(0,ks.addNewStackLayer)(J);if(typeof C==="function")arguments[Y]=Q._patchOut(C,X);return A.apply(this,arguments)}}_patchOut(A,Q){return function(...Y){return Q(),Reflect.apply(A,this,Y)}}}DNQ.ConnectInstrumentation=HNQ});var MNQ=R((iW)=>{var N30=iW&&iW.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),qNQ=iW&&iW.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))N30(Q,A,B)};Object.defineProperty(iW,"__esModule",{value:!0});qNQ(Ss(),iW);qNQ(LNQ(),iW)});var PNQ=R((jNQ)=>{Object.defineProperty(jNQ,"__esModule",{value:!0});jNQ.PACKAGE_NAME=jNQ.PACKAGE_VERSION=void 0;jNQ.PACKAGE_VERSION="0.44.1";jNQ.PACKAGE_NAME="@opentelemetry/instrumentation-knex"});var kNQ=R((TNQ)=>{Object.defineProperty(TNQ,"__esModule",{value:!0});TNQ.SUPPORTED_VERSIONS=TNQ.MODULE_NAME=void 0;TNQ.MODULE_NAME="knex";TNQ.SUPPORTED_VERSIONS=[">=0.22.0 <4",">=0.10.0 <0.18.0",">=0.19.0 <0.22.0",">=0.18.0 <0.19.0"]});var yNQ=R((vNQ)=>{Object.defineProperty(vNQ,"__esModule",{value:!0});vNQ.extractTableName=vNQ.limitLength=vNQ.getName=vNQ.mapSystem=vNQ.otelExceptionFromKnexError=vNQ.getFormatter=void 0;var _NQ=dB(),k30=(A)=>{if(A){if(A.client){if(A.client._formatQuery)return A.client._formatQuery.bind(A.client);else if(A.client.SqlString)return A.client.SqlString.format.bind(A.client.SqlString)}if(A.builder)return A.builder.toString.bind(A.builder)}return()=>""};vNQ.getFormatter=k30;function _30(A,Q){if(!(A&&A instanceof Error))return A;return{message:Q,code:A.code,stack:A.stack,name:A.name}}vNQ.otelExceptionFromKnexError=_30;var v30=new Map([["sqlite3",_NQ.DBSYSTEMVALUES_SQLITE],["pg",_NQ.DBSYSTEMVALUES_POSTGRESQL]]),y30=(A)=>{return v30.get(A)||A};vNQ.mapSystem=y30;var g30=(A,Q,B)=>{if(Q){if(B)return`${Q} ${A}.${B}`;return`${Q} ${A}`}return A};vNQ.getName=g30;var h30=(A,Q)=>{if(typeof A==="string"&&typeof Q==="number"&&0{var Q;let B=(Q=A===null||A===void 0?void 0:A._single)===null||Q===void 0?void 0:Q.table;if(typeof B==="object")return vNQ.extractTableName(B);return B};vNQ.extractTableName=x30});var uNQ=R((bNQ)=>{Object.defineProperty(bNQ,"__esModule",{value:!0});bNQ.KnexInstrumentation=void 0;var OG=yA(),gNQ=PNQ(),kT=kNQ(),Yq=NB(),PG=dB(),bK=yNQ(),hNQ=Symbol("opentelemetry.instrumentation-knex.context"),xNQ={maxQueryLength:1022,requireParentSpan:!1};class fNQ extends Yq.InstrumentationBase{constructor(A={}){super(gNQ.PACKAGE_NAME,gNQ.PACKAGE_VERSION,Object.assign(Object.assign({},xNQ),A))}setConfig(A={}){super.setConfig(Object.assign(Object.assign({},xNQ),A))}init(){let A=new Yq.InstrumentationNodeModuleDefinition(kT.MODULE_NAME,kT.SUPPORTED_VERSIONS);return A.files.push(this.getClientNodeModuleFileInstrumentation("src"),this.getClientNodeModuleFileInstrumentation("lib"),this.getRunnerNodeModuleFileInstrumentation("src"),this.getRunnerNodeModuleFileInstrumentation("lib"),this.getRunnerNodeModuleFileInstrumentation("lib/execution")),A}getRunnerNodeModuleFileInstrumentation(A){return new Yq.InstrumentationNodeModuleFile(`knex/${A}/runner.js`,kT.SUPPORTED_VERSIONS,(Q,B)=>{return this.ensureWrapped(Q.prototype,"query",this.createQueryWrapper(B)),Q},(Q,B)=>{return this._unwrap(Q.prototype,"query"),Q})}getClientNodeModuleFileInstrumentation(A){return new Yq.InstrumentationNodeModuleFile(`knex/${A}/client.js`,kT.SUPPORTED_VERSIONS,(Q)=>{return this.ensureWrapped(Q.prototype,"queryBuilder",this.storeContext.bind(this)),this.ensureWrapped(Q.prototype,"schemaBuilder",this.storeContext.bind(this)),this.ensureWrapped(Q.prototype,"raw",this.storeContext.bind(this)),Q},(Q)=>{return this._unwrap(Q.prototype,"queryBuilder"),this._unwrap(Q.prototype,"schemaBuilder"),this._unwrap(Q.prototype,"raw"),Q})}createQueryWrapper(A){let Q=this;return function(Y){return function(C){var X,G,W,F,Z,U;let $=this.client.config,E=bK.extractTableName(this.builder),K=C===null||C===void 0?void 0:C.method,I=((X=$===null||$===void 0?void 0:$.connection)===null||X===void 0?void 0:X.filename)||((G=$===null||$===void 0?void 0:$.connection)===null||G===void 0?void 0:G.database),{maxQueryLength:V}=Q.getConfig(),H={"knex.version":A,[PG.SEMATTRS_DB_SYSTEM]:bK.mapSystem($.client),[PG.SEMATTRS_DB_SQL_TABLE]:E,[PG.SEMATTRS_DB_OPERATION]:K,[PG.SEMATTRS_DB_USER]:(W=$===null||$===void 0?void 0:$.connection)===null||W===void 0?void 0:W.user,[PG.SEMATTRS_DB_NAME]:I,[PG.SEMATTRS_NET_PEER_NAME]:(F=$===null||$===void 0?void 0:$.connection)===null||F===void 0?void 0:F.host,[PG.SEMATTRS_NET_PEER_PORT]:(Z=$===null||$===void 0?void 0:$.connection)===null||Z===void 0?void 0:Z.port,[PG.SEMATTRS_NET_TRANSPORT]:((U=$===null||$===void 0?void 0:$.connection)===null||U===void 0?void 0:U.filename)===":memory:"?"inproc":void 0};if(V)H[PG.SEMATTRS_DB_STATEMENT]=bK.limitLength(C===null||C===void 0?void 0:C.sql,V);let D=this.builder[hNQ]||OG.context.active(),L=OG.trace.getSpan(D),z=L&&OG.trace.isSpanContextValid(L.spanContext());if(Q._config.requireParentSpan&&!z)return Y.bind(this)(...arguments);let M=Q.tracer.startSpan(bK.getName(I,K,E),{kind:OG.SpanKind.CLIENT,attributes:H},D),N=OG.trace.setSpan(OG.context.active(),M);return OG.context.with(N,Y,this,...arguments).then((q)=>{return M.end(),q}).catch((q)=>{let P=bK.getFormatter(this)(C.sql,C.bindings||[]),_=q.message.replace(P+" - ",""),j=bK.otelExceptionFromKnexError(q,_);throw M.recordException(j),M.setStatus({code:OG.SpanStatusCode.ERROR,message:_}),M.end(),q})}}}storeContext(A){return function(){let B=A.apply(this,arguments);return Object.defineProperty(B,hNQ,{value:OG.context.active()}),B}}ensureWrapped(A,Q,B){if((0,Yq.isWrapped)(A[Q]))this._unwrap(A,Q);this._wrap(A,Q,B)}}bNQ.KnexInstrumentation=fNQ});var cNQ=R((dNQ)=>{Object.defineProperty(dNQ,"__esModule",{value:!0})});var pNQ=R((nW)=>{var c30=nW&&nW.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),lNQ=nW&&nW.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))c30(Q,A,B)};Object.defineProperty(nW,"__esModule",{value:!0});lNQ(uNQ(),nW);lNQ(cNQ(),nW)});var oNQ=R((rNQ)=>{Object.defineProperty(rNQ,"__esModule",{value:!0});rNQ.once=rNQ.getSpanName=void 0;function i30(A,Q,B,Y){if(A==="execBulkLoad"&&Y&&Q)return`${A} ${Y} ${Q}`;if(A==="callProcedure"){if(Q)return`${A} ${B} ${Q}`;return`${A} ${B}`}if(Q)return`${A} ${Q}`;return`${A}`}rNQ.getSpanName=i30;var n30=(A)=>{let Q=!1;return(...B)=>{if(Q)return;return Q=!0,A(...B)}};rNQ.once=n30});var ALQ=R((tNQ)=>{Object.defineProperty(tNQ,"__esModule",{value:!0});tNQ.PACKAGE_NAME=tNQ.PACKAGE_VERSION=void 0;tNQ.PACKAGE_VERSION="0.18.1";tNQ.PACKAGE_NAME="@opentelemetry/instrumentation-tedious"});var GLQ=R((CLQ)=>{Object.defineProperty(CLQ,"__esModule",{value:!0});CLQ.TediousInstrumentation=void 0;var Jq=yA(),a30=u("events"),_T=NB(),sW=dB(),QLQ=oNQ(),BLQ=ALQ(),JLQ=Symbol("opentelemetry.instrumentation-tedious.current-database"),YLQ=["callProcedure","execSql","execSqlBatch","execBulkLoad","prepare","execute"];function vT(A){Object.defineProperty(this,JLQ,{value:A,writable:!0})}class yT extends _T.InstrumentationBase{constructor(A={}){super(BLQ.PACKAGE_NAME,BLQ.PACKAGE_VERSION,A)}init(){return[new _T.InstrumentationNodeModuleDefinition(yT.COMPONENT,[">=1.11.0 <20"],(A)=>{let Q=A.Connection.prototype;for(let B of YLQ){if((0,_T.isWrapped)(Q[B]))this._unwrap(Q,B);this._wrap(Q,B,this._patchQuery(B))}if((0,_T.isWrapped)(Q.connect))this._unwrap(Q,"connect");return this._wrap(Q,"connect",this._patchConnect),A},(A)=>{if(A===void 0)return;let Q=A.Connection.prototype;for(let B of YLQ)this._unwrap(Q,B);this._unwrap(Q,"connect")})]}_patchConnect(A){return function(){var B,Y;return vT.call(this,(Y=(B=this.config)===null||B===void 0?void 0:B.options)===null||Y===void 0?void 0:Y.database),this.removeListener("databaseChange",vT),this.on("databaseChange",vT),this.once("end",()=>{this.removeListener("databaseChange",vT)}),A.apply(this,arguments)}}_patchQuery(A){return(Q)=>{let B=this;function Y(J){var C,X,G,W,F,Z,U,$;if(!(J instanceof a30.EventEmitter))return B._diag.warn(`Unexpected invocation of patched ${A} method. Span not recorded`),Q.apply(this,arguments);let E=0,K=0,I=()=>K++,V=()=>E++,H=this[JLQ],D=((M)=>{var N,q;if(M.sqlTextOrProcedure==="sp_prepare"&&((q=(N=M.parametersByName)===null||N===void 0?void 0:N.stmt)===null||q===void 0?void 0:q.value))return M.parametersByName.stmt.value;return M.sqlTextOrProcedure})(J),L=B.tracer.startSpan((0,QLQ.getSpanName)(A,H,D,J.table),{kind:Jq.SpanKind.CLIENT,attributes:{[sW.SEMATTRS_DB_SYSTEM]:sW.DBSYSTEMVALUES_MSSQL,[sW.SEMATTRS_DB_NAME]:H,[sW.SEMATTRS_NET_PEER_PORT]:(X=(C=this.config)===null||C===void 0?void 0:C.options)===null||X===void 0?void 0:X.port,[sW.SEMATTRS_NET_PEER_NAME]:(G=this.config)===null||G===void 0?void 0:G.server,[sW.SEMATTRS_DB_USER]:(F=(W=this.config)===null||W===void 0?void 0:W.userName)!==null&&F!==void 0?F:($=(U=(Z=this.config)===null||Z===void 0?void 0:Z.authentication)===null||U===void 0?void 0:U.options)===null||$===void 0?void 0:$.userName,[sW.SEMATTRS_DB_STATEMENT]:D,[sW.SEMATTRS_DB_SQL_TABLE]:J.table}}),z=(0,QLQ.once)((M)=>{if(J.removeListener("done",I),J.removeListener("doneInProc",I),J.removeListener("doneProc",V),J.removeListener("error",z),this.removeListener("end",z),L.setAttribute("tedious.procedure_count",E),L.setAttribute("tedious.statement_count",K),M)L.setStatus({code:Jq.SpanStatusCode.ERROR,message:M.message});L.end()});if(J.on("done",I),J.on("doneInProc",I),J.on("doneProc",V),J.once("error",z),this.on("end",z),typeof J.callback==="function")B._wrap(J,"callback",B._patchCallbackQuery(z));else B._diag.error("Expected request.callback to be a function");return Jq.context.with(Jq.trace.setSpan(Jq.context.active(),L),Q,this,...arguments)}return Object.defineProperty(Y,"length",{value:Q.length,writable:!1}),Y}}_patchCallbackQuery(A){return(Q)=>{return function(B,Y,J){return A(B),Q.apply(this,arguments)}}}}CLQ.TediousInstrumentation=yT;yT.COMPONENT="tedious"});var FLQ=R((WLQ)=>{Object.defineProperty(WLQ,"__esModule",{value:!0})});var $LQ=R((rW)=>{var o30=rW&&rW.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),ZLQ=rW&&rW.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))o30(Q,A,B)};Object.defineProperty(rW,"__esModule",{value:!0});ZLQ(GLQ(),rW);ZLQ(FLQ(),rW)});var ILQ=R((KLQ)=>{Object.defineProperty(KLQ,"__esModule",{value:!0});KLQ.PACKAGE_NAME=KLQ.PACKAGE_VERSION=void 0;KLQ.PACKAGE_VERSION="0.43.1";KLQ.PACKAGE_NAME="@opentelemetry/instrumentation-generic-pool"});var qLQ=R((NLQ)=>{Object.defineProperty(NLQ,"__esModule",{value:!0});NLQ.GenericPoolInstrumentation=void 0;var mK=yA(),_$=NB(),HLQ=ILQ(),xs="generic-pool";class DLQ extends _$.InstrumentationBase{constructor(A={}){super(HLQ.PACKAGE_NAME,HLQ.PACKAGE_VERSION,A);this._isDisabled=!1}init(){return[new _$.InstrumentationNodeModuleDefinition(xs,[">=3.0.0 <4"],(A)=>{let Q=A.Pool;if((0,_$.isWrapped)(Q.prototype.acquire))this._unwrap(Q.prototype,"acquire");return this._wrap(Q.prototype,"acquire",this._acquirePatcher.bind(this)),A},(A)=>{let Q=A.Pool;return this._unwrap(Q.prototype,"acquire"),A}),new _$.InstrumentationNodeModuleDefinition(xs,[">=2.4.0 <3"],(A)=>{let Q=A.Pool;if((0,_$.isWrapped)(Q.prototype.acquire))this._unwrap(Q.prototype,"acquire");return this._wrap(Q.prototype,"acquire",this._acquireWithCallbacksPatcher.bind(this)),A},(A)=>{let Q=A.Pool;return this._unwrap(Q.prototype,"acquire"),A}),new _$.InstrumentationNodeModuleDefinition(xs,[">=2.0.0 <2.4"],(A)=>{if(this._isDisabled=!1,(0,_$.isWrapped)(A.Pool))this._unwrap(A,"Pool");return this._wrap(A,"Pool",this._poolWrapper.bind(this)),A},(A)=>{return this._isDisabled=!0,A})]}_acquirePatcher(A){let Q=this;return function(...Y){let J=mK.context.active(),C=Q.tracer.startSpan("generic-pool.acquire",{},J);return mK.context.with(mK.trace.setSpan(J,C),()=>{return A.call(this,...Y).then((X)=>{return C.end(),X},(X)=>{throw C.recordException(X),C.end(),X})})}}_poolWrapper(A){let Q=this;return function(){let Y=A.apply(this,arguments);return Q._wrap(Y,"acquire",Q._acquireWithCallbacksPatcher.bind(Q)),Y}}_acquireWithCallbacksPatcher(A){let Q=this;return function(Y,J){if(Q._isDisabled)return A.call(this,Y,J);let C=mK.context.active(),X=Q.tracer.startSpan("generic-pool.acquire",{},C);return mK.context.with(mK.trace.setSpan(C,X),()=>{A.call(this,(G,W)=>{if(X.end(),Y)return Y(G,W)},J)})}}}NLQ.GenericPoolInstrumentation=DLQ});var MLQ=R((v$)=>{var QR0=v$&&v$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),BR0=v$&&v$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))QR0(Q,A,B)};Object.defineProperty(v$,"__esModule",{value:!0});BR0(qLQ(),v$)});var jLQ=R((wLQ)=>{Object.defineProperty(wLQ,"__esModule",{value:!0})});var TLQ=R((OLQ)=>{Object.defineProperty(OLQ,"__esModule",{value:!0});OLQ.PACKAGE_NAME=OLQ.PACKAGE_VERSION=void 0;OLQ.PACKAGE_VERSION="0.16.1";OLQ.PACKAGE_NAME="@opentelemetry/instrumentation-dataloader"});var yLQ=R((_LQ)=>{Object.defineProperty(_LQ,"__esModule",{value:!0});_LQ.DataloaderInstrumentation=void 0;var y$=NB(),q9=yA(),SLQ=TLQ(),bs="dataloader";class kLQ extends y$.InstrumentationBase{constructor(A={}){super(SLQ.PACKAGE_NAME,SLQ.PACKAGE_VERSION,A)}init(){return[new y$.InstrumentationNodeModuleDefinition(bs,[">=2.0.0 <3"],(A)=>{return this._patchLoad(A.prototype),this._patchLoadMany(A.prototype),this._getPatchedConstructor(A)},(A)=>{if((0,y$.isWrapped)(A.prototype.load))this._unwrap(A.prototype,"load");if((0,y$.isWrapped)(A.prototype.loadMany))this._unwrap(A.prototype,"loadMany")})]}shouldCreateSpans(){let A=this.getConfig();return q9.trace.getSpan(q9.context.active())!==void 0||!A.requireParentSpan}getSpanName(A,Q){let B=A.name;if(B===void 0||B===null)return`${bs}.${Q}`;return`${bs}.${Q} ${B}`}_getPatchedConstructor(A){let Q=A.prototype,B=this;function Y(...J){let C=new A(...J);if(!B.isEnabled())return C;if((0,y$.isWrapped)(C._batchLoadFn))B._unwrap(C,"_batchLoadFn");return B._wrap(C,"_batchLoadFn",(X)=>{return function(...W){var F;if(!B.isEnabled()||!B.shouldCreateSpans())return X.call(this,...W);let Z=q9.context.active(),U=B.tracer.startSpan(B.getSpanName(C,"batch"),{links:(F=this._batch)===null||F===void 0?void 0:F.spanLinks},Z);return q9.context.with(q9.trace.setSpan(Z,U),()=>{return X.apply(this,W).then(($)=>{return U.end(),$}).catch(($)=>{throw U.recordException($),U.setStatus({code:q9.SpanStatusCode.ERROR,message:$.message}),U.end(),$})})}}),C}return Y.prototype=Q,Y}_patchLoad(A){if((0,y$.isWrapped)(A.load))this._unwrap(A,"load");this._wrap(A,"load",this._getPatchedLoad.bind(this))}_getPatchedLoad(A){let Q=this;return function(...Y){if(!Q.shouldCreateSpans())return A.call(this,...Y);let J=q9.context.active(),C=Q.tracer.startSpan(Q.getSpanName(this,"load"),{kind:q9.SpanKind.CLIENT},J);return q9.context.with(q9.trace.setSpan(J,C),()=>{let X=A.call(this,...Y).then((W)=>{return C.end(),W}).catch((W)=>{throw C.recordException(W),C.setStatus({code:q9.SpanStatusCode.ERROR,message:W.message}),C.end(),W}),G=this;if(G._batch){if(!G._batch.spanLinks)G._batch.spanLinks=[];G._batch.spanLinks.push({context:C.spanContext()})}return X})}}_patchLoadMany(A){if((0,y$.isWrapped)(A.loadMany))this._unwrap(A,"loadMany");this._wrap(A,"loadMany",this._getPatchedLoadMany.bind(this))}_getPatchedLoadMany(A){let Q=this;return function(...Y){if(!Q.shouldCreateSpans())return A.call(this,...Y);let J=q9.context.active(),C=Q.tracer.startSpan(Q.getSpanName(this,"loadMany"),{kind:q9.SpanKind.CLIENT},J);return q9.context.with(q9.trace.setSpan(J,C),()=>{return A.call(this,...Y).then((X)=>{return C.end(),X})})}}}_LQ.DataloaderInstrumentation=kLQ});var hLQ=R((aW)=>{var CR0=aW&&aW.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),gLQ=aW&&aW.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))CR0(Q,A,B)};Object.defineProperty(aW,"__esModule",{value:!0});gLQ(jLQ(),aW);gLQ(yLQ(),aW)});var ms=R((uLQ)=>{Object.defineProperty(uLQ,"__esModule",{value:!0});uLQ.DEFAULT_CONFIG=uLQ.EndOperation=void 0;var WR0;(function(A){A.AutoAck="auto ack",A.Ack="ack",A.AckAll="ackAll",A.Reject="reject",A.Nack="nack",A.NackAll="nackAll",A.ChannelClosed="channel closed",A.ChannelError="channel error",A.InstrumentationTimeout="instrumentation timeout"})(WR0=uLQ.EndOperation||(uLQ.EndOperation={}));uLQ.DEFAULT_CONFIG={consumeTimeoutMs:60000,useLinksForConsume:!1}});var sLQ=R((iLQ)=>{Object.defineProperty(iLQ,"__esModule",{value:!0});iLQ.isConfirmChannelTracing=iLQ.unmarkConfirmChannelTracing=iLQ.markConfirmChannelTracing=iLQ.getConnectionAttributesFromUrl=iLQ.getConnectionAttributesFromServer=iLQ.normalizeExchange=iLQ.CONNECTION_ATTRIBUTES=iLQ.CHANNEL_CONSUME_TIMEOUT_TIMER=iLQ.CHANNEL_SPANS_NOT_ENDED=iLQ.MESSAGE_STORED_SPAN=void 0;var us=yA(),TG=dB();iLQ.MESSAGE_STORED_SPAN=Symbol("opentelemetry.amqplib.message.stored-span");iLQ.CHANNEL_SPANS_NOT_ENDED=Symbol("opentelemetry.amqplib.channel.spans-not-ended");iLQ.CHANNEL_CONSUME_TIMEOUT_TIMER=Symbol("opentelemetry.amqplib.channel.consumer-timeout-timer");iLQ.CONNECTION_ATTRIBUTES=Symbol("opentelemetry.amqplib.connection.attributes");var ds=(0,us.createContextKey)("opentelemetry.amqplib.channel.is-confirm-channel"),FR0=(A)=>A!==""?A:"";iLQ.normalizeExchange=FR0;var ZR0=(A)=>{return A.replace(/:[^:@/]*@/,":***@")},cLQ=(A,Q)=>{return A||(Q==="AMQP"?5672:5671)},lLQ=(A)=>{let Q=A||"amqp";return(Q.endsWith(":")?Q.substring(0,Q.length-1):Q).toUpperCase()},pLQ=(A)=>{return A||"localhost"},uK=(A,Q,B,Y)=>{if(B)return{[Q]:B};else return us.diag.error(`amqplib instrumentation: could not extract connection attribute ${Y} from user supplied url`,{url:A}),{}},$R0=(A)=>{var Q,B;let Y=(B=(Q=A.serverProperties.product)===null||Q===void 0?void 0:Q.toLowerCase)===null||B===void 0?void 0:B.call(Q);if(Y)return{[TG.SEMATTRS_MESSAGING_SYSTEM]:Y};else return{}};iLQ.getConnectionAttributesFromServer=$R0;var UR0=(A)=>{let Q={[TG.SEMATTRS_MESSAGING_PROTOCOL_VERSION]:"0.9.1"};if(A=A||"amqp://localhost",typeof A==="object"){let B=A,Y=lLQ(B===null||B===void 0?void 0:B.protocol);Object.assign(Q,Object.assign({},uK(A,TG.SEMATTRS_MESSAGING_PROTOCOL,Y,"protocol")));let J=pLQ(B===null||B===void 0?void 0:B.hostname);Object.assign(Q,Object.assign({},uK(A,TG.SEMATTRS_NET_PEER_NAME,J,"hostname")));let C=cLQ(B.port,Y);Object.assign(Q,Object.assign({},uK(A,TG.SEMATTRS_NET_PEER_PORT,C,"port")))}else{let B=ZR0(A);Q[TG.SEMATTRS_MESSAGING_URL]=B;try{let Y=new URL(B),J=lLQ(Y.protocol);Object.assign(Q,Object.assign({},uK(B,TG.SEMATTRS_MESSAGING_PROTOCOL,J,"protocol")));let C=pLQ(Y.hostname);Object.assign(Q,Object.assign({},uK(B,TG.SEMATTRS_NET_PEER_NAME,C,"hostname")));let X=cLQ(Y.port?parseInt(Y.port):void 0,J);Object.assign(Q,Object.assign({},uK(B,TG.SEMATTRS_NET_PEER_PORT,X,"port")))}catch(Y){us.diag.error("amqplib instrumentation: error while extracting connection details from connection url",{censoredUrl:B,err:Y})}}return Q};iLQ.getConnectionAttributesFromUrl=UR0;var ER0=(A)=>{return A.setValue(ds,!0)};iLQ.markConfirmChannelTracing=ER0;var KR0=(A)=>{return A.deleteValue(ds)};iLQ.unmarkConfirmChannelTracing=KR0;var VR0=(A)=>{return A.getValue(ds)===!0};iLQ.isConfirmChannelTracing=VR0});var oLQ=R((rLQ)=>{Object.defineProperty(rLQ,"__esModule",{value:!0});rLQ.PACKAGE_NAME=rLQ.PACKAGE_VERSION=void 0;rLQ.PACKAGE_VERSION="0.46.1";rLQ.PACKAGE_NAME="@opentelemetry/instrumentation-amqplib"});var BqQ=R((AqQ)=>{Object.defineProperty(AqQ,"__esModule",{value:!0});AqQ.AmqplibInstrumentation=void 0;var u0=yA(),xT=MB(),fB=NB(),Q8=dB(),M9=ms(),r0=sLQ(),tLQ=oLQ(),fT=[">=0.5.5 <1"];class eLQ extends fB.InstrumentationBase{constructor(A={}){super(tLQ.PACKAGE_NAME,tLQ.PACKAGE_VERSION,Object.assign(Object.assign({},M9.DEFAULT_CONFIG),A))}setConfig(A={}){super.setConfig(Object.assign(Object.assign({},M9.DEFAULT_CONFIG),A))}init(){let A=new fB.InstrumentationNodeModuleFile("amqplib/lib/channel_model.js",fT,this.patchChannelModel.bind(this),this.unpatchChannelModel.bind(this)),Q=new fB.InstrumentationNodeModuleFile("amqplib/lib/callback_model.js",fT,this.patchChannelModel.bind(this),this.unpatchChannelModel.bind(this)),B=new fB.InstrumentationNodeModuleFile("amqplib/lib/connect.js",fT,this.patchConnect.bind(this),this.unpatchConnect.bind(this));return new fB.InstrumentationNodeModuleDefinition("amqplib",fT,void 0,void 0,[A,B,Q])}patchConnect(A){if(A=this.unpatchConnect(A),!(0,fB.isWrapped)(A.connect))this._wrap(A,"connect",this.getConnectPatch.bind(this));return A}unpatchConnect(A){if((0,fB.isWrapped)(A.connect))this._unwrap(A,"connect");return A}patchChannelModel(A,Q){if(!(0,fB.isWrapped)(A.Channel.prototype.publish))this._wrap(A.Channel.prototype,"publish",this.getPublishPatch.bind(this,Q));if(!(0,fB.isWrapped)(A.Channel.prototype.consume))this._wrap(A.Channel.prototype,"consume",this.getConsumePatch.bind(this,Q));if(!(0,fB.isWrapped)(A.Channel.prototype.ack))this._wrap(A.Channel.prototype,"ack",this.getAckPatch.bind(this,!1,M9.EndOperation.Ack));if(!(0,fB.isWrapped)(A.Channel.prototype.nack))this._wrap(A.Channel.prototype,"nack",this.getAckPatch.bind(this,!0,M9.EndOperation.Nack));if(!(0,fB.isWrapped)(A.Channel.prototype.reject))this._wrap(A.Channel.prototype,"reject",this.getAckPatch.bind(this,!0,M9.EndOperation.Reject));if(!(0,fB.isWrapped)(A.Channel.prototype.ackAll))this._wrap(A.Channel.prototype,"ackAll",this.getAckAllPatch.bind(this,!1,M9.EndOperation.AckAll));if(!(0,fB.isWrapped)(A.Channel.prototype.nackAll))this._wrap(A.Channel.prototype,"nackAll",this.getAckAllPatch.bind(this,!0,M9.EndOperation.NackAll));if(!(0,fB.isWrapped)(A.Channel.prototype.emit))this._wrap(A.Channel.prototype,"emit",this.getChannelEmitPatch.bind(this));if(!(0,fB.isWrapped)(A.ConfirmChannel.prototype.publish))this._wrap(A.ConfirmChannel.prototype,"publish",this.getConfirmedPublishPatch.bind(this,Q));return A}unpatchChannelModel(A){if((0,fB.isWrapped)(A.Channel.prototype.publish))this._unwrap(A.Channel.prototype,"publish");if((0,fB.isWrapped)(A.Channel.prototype.consume))this._unwrap(A.Channel.prototype,"consume");if((0,fB.isWrapped)(A.Channel.prototype.ack))this._unwrap(A.Channel.prototype,"ack");if((0,fB.isWrapped)(A.Channel.prototype.nack))this._unwrap(A.Channel.prototype,"nack");if((0,fB.isWrapped)(A.Channel.prototype.reject))this._unwrap(A.Channel.prototype,"reject");if((0,fB.isWrapped)(A.Channel.prototype.ackAll))this._unwrap(A.Channel.prototype,"ackAll");if((0,fB.isWrapped)(A.Channel.prototype.nackAll))this._unwrap(A.Channel.prototype,"nackAll");if((0,fB.isWrapped)(A.Channel.prototype.emit))this._unwrap(A.Channel.prototype,"emit");if((0,fB.isWrapped)(A.ConfirmChannel.prototype.publish))this._unwrap(A.ConfirmChannel.prototype,"publish");return A}getConnectPatch(A){return function(B,Y,J){return A.call(this,B,Y,function(C,X){if(C==null){let G=(0,r0.getConnectionAttributesFromUrl)(B),W=(0,r0.getConnectionAttributesFromServer)(X);X[r0.CONNECTION_ATTRIBUTES]=Object.assign(Object.assign({},G),W)}J.apply(this,arguments)})}}getChannelEmitPatch(A){let Q=this;return function(Y){if(Y==="close"){Q.endAllSpansOnChannel(this,!0,M9.EndOperation.ChannelClosed,void 0);let J=this[r0.CHANNEL_CONSUME_TIMEOUT_TIMER];if(J)clearInterval(J);this[r0.CHANNEL_CONSUME_TIMEOUT_TIMER]=void 0}else if(Y==="error")Q.endAllSpansOnChannel(this,!0,M9.EndOperation.ChannelError,void 0);return A.apply(this,arguments)}}getAckAllPatch(A,Q,B){let Y=this;return function(C){return Y.endAllSpansOnChannel(this,A,Q,C),B.apply(this,arguments)}}getAckPatch(A,Q,B){let Y=this;return function(C,X,G){var W;let F=this,Z=Q===M9.EndOperation.Reject?X:G,U=(W=F[r0.CHANNEL_SPANS_NOT_ENDED])!==null&&W!==void 0?W:[],$=U.findIndex((E)=>E.msg===C);if($<0)Y.endConsumerSpan(C,A,Q,Z);else if(Q!==M9.EndOperation.Reject&&X){for(let E=0;E<=$;E++)Y.endConsumerSpan(U[E].msg,A,Q,Z);U.splice(0,$+1)}else Y.endConsumerSpan(C,A,Q,Z),U.splice($,1);return B.apply(this,arguments)}}getConsumePatch(A,Q){let B=this;return function(J,C,X){let G=this;if(!Object.prototype.hasOwnProperty.call(G,r0.CHANNEL_SPANS_NOT_ENDED)){let{consumeTimeoutMs:F}=B.getConfig();if(F){let Z=setInterval(()=>{B.checkConsumeTimeoutOnChannel(G)},F);Z.unref(),G[r0.CHANNEL_CONSUME_TIMEOUT_TIMER]=Z}G[r0.CHANNEL_SPANS_NOT_ENDED]=[]}let W=function(F){var Z,U,$,E,K;if(!F)return C.call(this,F);let I=(Z=F.properties.headers)!==null&&Z!==void 0?Z:{},V=u0.propagation.extract(u0.ROOT_CONTEXT,I),H=(U=F.fields)===null||U===void 0?void 0:U.exchange,D;if(B._config.useLinksForConsume){let N=V?($=u0.trace.getSpan(V))===null||$===void 0?void 0:$.spanContext():void 0;if(V=void 0,N)D=[{context:N}]}let L=B.tracer.startSpan(`${J} process`,{kind:u0.SpanKind.CONSUMER,attributes:Object.assign(Object.assign({},(E=G===null||G===void 0?void 0:G.connection)===null||E===void 0?void 0:E[r0.CONNECTION_ATTRIBUTES]),{[Q8.SEMATTRS_MESSAGING_DESTINATION]:H,[Q8.SEMATTRS_MESSAGING_DESTINATION_KIND]:Q8.MESSAGINGDESTINATIONKINDVALUES_TOPIC,[Q8.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY]:(K=F.fields)===null||K===void 0?void 0:K.routingKey,[Q8.SEMATTRS_MESSAGING_OPERATION]:Q8.MESSAGINGOPERATIONVALUES_PROCESS,[Q8.SEMATTRS_MESSAGING_MESSAGE_ID]:F===null||F===void 0?void 0:F.properties.messageId,[Q8.SEMATTRS_MESSAGING_CONVERSATION_ID]:F===null||F===void 0?void 0:F.properties.correlationId}),links:D},V),{consumeHook:z}=B.getConfig();if(z)(0,fB.safeExecuteInTheMiddle)(()=>z(L,{moduleVersion:A,msg:F}),(N)=>{if(N)u0.diag.error("amqplib instrumentation: consumerHook error",N)},!0);if(!(X===null||X===void 0?void 0:X.noAck))G[r0.CHANNEL_SPANS_NOT_ENDED].push({msg:F,timeOfConsume:(0,xT.hrTime)()}),F[r0.MESSAGE_STORED_SPAN]=L;let M=V?V:u0.ROOT_CONTEXT;if(u0.context.with(u0.trace.setSpan(M,L),()=>{C.call(this,F)}),X===null||X===void 0?void 0:X.noAck)B.callConsumeEndHook(L,F,!1,M9.EndOperation.AutoAck),L.end()};return arguments[1]=W,Q.apply(this,arguments)}}getConfirmedPublishPatch(A,Q){let B=this;return function(J,C,X,G,W){let F=this,{span:Z,modifiedOptions:U}=B.createPublishSpan(B,J,C,F,G),{publishHook:$}=B.getConfig();if($)(0,fB.safeExecuteInTheMiddle)(()=>$(Z,{moduleVersion:A,exchange:J,routingKey:C,content:X,options:U,isConfirmChannel:!0}),(V)=>{if(V)u0.diag.error("amqplib instrumentation: publishHook error",V)},!0);let E=function(V,H){try{W===null||W===void 0||W.call(this,V,H)}finally{let{publishConfirmHook:D}=B.getConfig();if(D)(0,fB.safeExecuteInTheMiddle)(()=>D(Z,{moduleVersion:A,exchange:J,routingKey:C,content:X,options:G,isConfirmChannel:!0,confirmError:V}),(L)=>{if(L)u0.diag.error("amqplib instrumentation: publishConfirmHook error",L)},!0);if(V)Z.setStatus({code:u0.SpanStatusCode.ERROR,message:"message confirmation has been nack'ed"});Z.end()}},K=(0,r0.markConfirmChannelTracing)(u0.context.active()),I=[...arguments];return I[3]=U,I[4]=u0.context.bind((0,r0.unmarkConfirmChannelTracing)(u0.trace.setSpan(K,Z)),E),u0.context.with(K,Q.bind(this,...I))}}getPublishPatch(A,Q){let B=this;return function(J,C,X,G){if((0,r0.isConfirmChannelTracing)(u0.context.active()))return Q.apply(this,arguments);else{let W=this,{span:F,modifiedOptions:Z}=B.createPublishSpan(B,J,C,W,G),{publishHook:U}=B.getConfig();if(U)(0,fB.safeExecuteInTheMiddle)(()=>U(F,{moduleVersion:A,exchange:J,routingKey:C,content:X,options:Z,isConfirmChannel:!1}),(K)=>{if(K)u0.diag.error("amqplib instrumentation: publishHook error",K)},!0);let $=[...arguments];$[3]=Z;let E=Q.apply(this,$);return F.end(),E}}}createPublishSpan(A,Q,B,Y,J){var C;let X=(0,r0.normalizeExchange)(Q),G=A.tracer.startSpan(`publish ${X}`,{kind:u0.SpanKind.PRODUCER,attributes:Object.assign(Object.assign({},Y.connection[r0.CONNECTION_ATTRIBUTES]),{[Q8.SEMATTRS_MESSAGING_DESTINATION]:Q,[Q8.SEMATTRS_MESSAGING_DESTINATION_KIND]:Q8.MESSAGINGDESTINATIONKINDVALUES_TOPIC,[Q8.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY]:B,[Q8.SEMATTRS_MESSAGING_MESSAGE_ID]:J===null||J===void 0?void 0:J.messageId,[Q8.SEMATTRS_MESSAGING_CONVERSATION_ID]:J===null||J===void 0?void 0:J.correlationId})}),W=J!==null&&J!==void 0?J:{};return W.headers=(C=W.headers)!==null&&C!==void 0?C:{},u0.propagation.inject(u0.trace.setSpan(u0.context.active(),G),W.headers),{span:G,modifiedOptions:W}}endConsumerSpan(A,Q,B,Y){let J=A[r0.MESSAGE_STORED_SPAN];if(!J)return;if(Q!==!1)J.setStatus({code:u0.SpanStatusCode.ERROR,message:B!==M9.EndOperation.ChannelClosed&&B!==M9.EndOperation.ChannelError?`${B} called on message${Y===!0?" with requeue":Y===!1?" without requeue":""}`:B});this.callConsumeEndHook(J,A,Q,B),J.end(),A[r0.MESSAGE_STORED_SPAN]=void 0}endAllSpansOnChannel(A,Q,B,Y){var J;((J=A[r0.CHANNEL_SPANS_NOT_ENDED])!==null&&J!==void 0?J:[]).forEach((X)=>{this.endConsumerSpan(X.msg,Q,B,Y)}),A[r0.CHANNEL_SPANS_NOT_ENDED]=[]}callConsumeEndHook(A,Q,B,Y){let{consumeEndHook:J}=this.getConfig();if(!J)return;(0,fB.safeExecuteInTheMiddle)(()=>J(A,{msg:Q,rejected:B,endOperation:Y}),(C)=>{if(C)u0.diag.error("amqplib instrumentation: consumerEndHook error",C)},!0)}checkConsumeTimeoutOnChannel(A){var Q;let B=(0,xT.hrTime)(),Y=(Q=A[r0.CHANNEL_SPANS_NOT_ENDED])!==null&&Q!==void 0?Q:[],J,{consumeTimeoutMs:C}=this.getConfig();for(J=0;J{var jR0=oW&&oW.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),YqQ=oW&&oW.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))jR0(Q,A,B)};Object.defineProperty(oW,"__esModule",{value:!0});YqQ(BqQ(),oW);YqQ(ms(),oW)});var is=R((UqQ)=>{Object.defineProperty(UqQ,"__esModule",{value:!0});UqQ.AbstractAsyncHooksContextManager=void 0;var fR0=u("events"),bR0=["addListener","on","once","prependListener","prependOnceListener"];class $qQ{constructor(){this._kOtListeners=Symbol("OtListeners"),this._wrapped=!1}bind(A,Q){if(Q instanceof fR0.EventEmitter)return this._bindEventEmitter(A,Q);if(typeof Q==="function")return this._bindFunction(A,Q);return Q}_bindFunction(A,Q){let B=this,Y=function(...J){return B.with(A,()=>Q.apply(this,J))};return Object.defineProperty(Y,"length",{enumerable:!1,configurable:!0,writable:!1,value:Q.length}),Y}_bindEventEmitter(A,Q){if(this._getPatchMap(Q)!==void 0)return Q;if(this._createPatchMap(Q),bR0.forEach((Y)=>{if(Q[Y]===void 0)return;Q[Y]=this._patchAddListener(Q,Q[Y],A)}),typeof Q.removeListener==="function")Q.removeListener=this._patchRemoveListener(Q,Q.removeListener);if(typeof Q.off==="function")Q.off=this._patchRemoveListener(Q,Q.off);if(typeof Q.removeAllListeners==="function")Q.removeAllListeners=this._patchRemoveAllListeners(Q,Q.removeAllListeners);return Q}_patchRemoveListener(A,Q){let B=this;return function(Y,J){var C;let X=(C=B._getPatchMap(A))===null||C===void 0?void 0:C[Y];if(X===void 0)return Q.call(this,Y,J);let G=X.get(J);return Q.call(this,Y,G||J)}}_patchRemoveAllListeners(A,Q){let B=this;return function(Y){let J=B._getPatchMap(A);if(J!==void 0){if(arguments.length===0)B._createPatchMap(A);else if(J[Y]!==void 0)delete J[Y]}return Q.apply(this,arguments)}}_patchAddListener(A,Q,B){let Y=this;return function(J,C){if(Y._wrapped)return Q.call(this,J,C);let X=Y._getPatchMap(A);if(X===void 0)X=Y._createPatchMap(A);let G=X[J];if(G===void 0)G=new WeakMap,X[J]=G;let W=Y.bind(B,C);G.set(C,W),Y._wrapped=!0;try{return Q.call(this,J,W)}finally{Y._wrapped=!1}}}_createPatchMap(A){let Q=Object.create(null);return A[this._kOtListeners]=Q,Q}_getPatchMap(A){return A[this._kOtListeners]}}UqQ.AbstractAsyncHooksContextManager=$qQ});var HqQ=R((VqQ)=>{Object.defineProperty(VqQ,"__esModule",{value:!0});VqQ.AsyncHooksContextManager=void 0;var mR0=yA(),uR0=u("async_hooks"),dR0=is();class KqQ extends dR0.AbstractAsyncHooksContextManager{constructor(){super();this._contexts=new Map,this._stack=[],this._asyncHook=uR0.createHook({init:this._init.bind(this),before:this._before.bind(this),after:this._after.bind(this),destroy:this._destroy.bind(this),promiseResolve:this._destroy.bind(this)})}active(){var A;return(A=this._stack[this._stack.length-1])!==null&&A!==void 0?A:mR0.ROOT_CONTEXT}with(A,Q,B,...Y){this._enterContext(A);try{return Q.call(B,...Y)}finally{this._exitContext()}}enable(){return this._asyncHook.enable(),this}disable(){return this._asyncHook.disable(),this._contexts.clear(),this._stack=[],this}_init(A,Q){if(Q==="TIMERWRAP")return;let B=this._stack[this._stack.length-1];if(B!==void 0)this._contexts.set(A,B)}_destroy(A){this._contexts.delete(A)}_before(A){let Q=this._contexts.get(A);if(Q!==void 0)this._enterContext(Q)}_after(){this._exitContext()}_enterContext(A){this._stack.push(A)}_exitContext(){this._stack.pop()}}VqQ.AsyncHooksContextManager=KqQ});var qqQ=R((NqQ)=>{Object.defineProperty(NqQ,"__esModule",{value:!0});NqQ.AsyncLocalStorageContextManager=void 0;var cR0=yA(),lR0=u("async_hooks"),pR0=is();class DqQ extends pR0.AbstractAsyncHooksContextManager{constructor(){super();this._asyncLocalStorage=new lR0.AsyncLocalStorage}active(){var A;return(A=this._asyncLocalStorage.getStore())!==null&&A!==void 0?A:cR0.ROOT_CONTEXT}with(A,Q,B,...Y){let J=B==null?Q:Q.bind(B);return this._asyncLocalStorage.run(A,J,...Y)}enable(){return this}disable(){return this._asyncLocalStorage.disable(),this}}NqQ.AsyncLocalStorageContextManager=DqQ});var MqQ=R((cT)=>{Object.defineProperty(cT,"__esModule",{value:!0});cT.AsyncLocalStorageContextManager=cT.AsyncHooksContextManager=void 0;var iR0=HqQ();Object.defineProperty(cT,"AsyncHooksContextManager",{enumerable:!0,get:function(){return iR0.AsyncHooksContextManager}});var nR0=qqQ();Object.defineProperty(cT,"AsyncLocalStorageContextManager",{enumerable:!0,get:function(){return nR0.AsyncLocalStorageContextManager}})});var B0=R((MsY,lqQ)=>{lqQ.exports={kClose:Symbol("close"),kDestroy:Symbol("destroy"),kDispatch:Symbol("dispatch"),kUrl:Symbol("url"),kWriting:Symbol("writing"),kResuming:Symbol("resuming"),kQueue:Symbol("queue"),kConnect:Symbol("connect"),kConnecting:Symbol("connecting"),kKeepAliveDefaultTimeout:Symbol("default keep alive timeout"),kKeepAliveMaxTimeout:Symbol("max keep alive timeout"),kKeepAliveTimeoutThreshold:Symbol("keep alive timeout threshold"),kKeepAliveTimeoutValue:Symbol("keep alive timeout"),kKeepAlive:Symbol("keep alive"),kHeadersTimeout:Symbol("headers timeout"),kBodyTimeout:Symbol("body timeout"),kServerName:Symbol("server name"),kLocalAddress:Symbol("local address"),kHost:Symbol("host"),kNoRef:Symbol("no ref"),kBodyUsed:Symbol("used"),kBody:Symbol("abstracted request body"),kRunning:Symbol("running"),kBlocking:Symbol("blocking"),kPending:Symbol("pending"),kSize:Symbol("size"),kBusy:Symbol("busy"),kQueued:Symbol("queued"),kFree:Symbol("free"),kConnected:Symbol("connected"),kClosed:Symbol("closed"),kNeedDrain:Symbol("need drain"),kReset:Symbol("reset"),kDestroyed:Symbol.for("nodejs.stream.destroyed"),kResume:Symbol("resume"),kOnError:Symbol("on error"),kMaxHeadersSize:Symbol("max headers size"),kRunningIdx:Symbol("running index"),kPendingIdx:Symbol("pending index"),kError:Symbol("error"),kClients:Symbol("clients"),kClient:Symbol("client"),kParser:Symbol("parser"),kOnDestroyed:Symbol("destroy callbacks"),kPipelining:Symbol("pipelining"),kSocket:Symbol("socket"),kHostHeader:Symbol("host header"),kConnector:Symbol("connector"),kStrictContentLength:Symbol("strict content length"),kMaxRedirections:Symbol("maxRedirections"),kMaxRequests:Symbol("maxRequestsPerClient"),kProxy:Symbol("proxy agent options"),kCounter:Symbol("socket request counter"),kMaxResponseSize:Symbol("max response size"),kHTTP2Session:Symbol("http2Session"),kHTTP2SessionState:Symbol("http2Session state"),kRetryHandlerDefaultRetry:Symbol("retry agent default retry"),kConstruct:Symbol("constructable"),kListeners:Symbol("listeners"),kHTTPContext:Symbol("http context"),kMaxConcurrentStreams:Symbol("max concurrent streams"),kNoProxyAgent:Symbol("no proxy agent"),kHttpProxyAgent:Symbol("http proxy agent"),kHttpsProxyAgent:Symbol("https proxy agent")}});var Fr=R((zsY,sqQ)=>{var cK=0,Br=1000,Yr=(Br>>1)-1,tW,Jr=Symbol("kFastTimer"),kG=[],Cr=-2,Xr=-1,iqQ=0,pqQ=1;function Gr(){cK+=Yr;let A=0,Q=kG.length;while(A=B._idleStart+B._idleTimeout)B._state=Xr,B._idleStart=-1,B._onTimeout(B._timerArg);if(B._state===Xr){if(B._state=Cr,--Q!==0)kG[A]=kG[Q]}else++A}if(kG.length=Q,kG.length!==0)nqQ()}function nqQ(){if(tW?.refresh)tW.refresh();else clearTimeout(tW),tW=setTimeout(Gr,Yr),tW?.unref()}class Wr{[Jr]=!0;_state=Cr;_idleTimeout=-1;_idleStart=-1;_onTimeout;_timerArg;constructor(A,Q,B){this._onTimeout=A,this._idleTimeout=Q,this._timerArg=B,this.refresh()}refresh(){if(this._state===Cr)kG.push(this);if(!tW||kG.length===1)nqQ();this._state=iqQ}clear(){this._state=Xr,this._idleStart=-1}}sqQ.exports={setTimeout(A,Q,B){return Q<=Br?setTimeout(A,Q,B):new Wr(A,Q,B)},clearTimeout(A){if(A[Jr])A.clear();else clearTimeout(A)},setFastTimeout(A,Q,B){return new Wr(A,Q,B)},clearFastTimeout(A){A.clear()},now(){return cK},tick(A=0){cK+=A-Br+1,Gr(),Gr()},reset(){cK=0,kG.length=0,clearTimeout(tW),tW=null},kFastTimer:Jr}});var QB=R((RsY,bMQ)=>{var rqQ=Symbol.for("undici.error.UND_ERR");class a0 extends Error{constructor(A,Q){super(A,Q);this.name="UndiciError",this.code="UND_ERR"}static[Symbol.hasInstance](A){return A&&A[rqQ]===!0}get[rqQ](){return!0}}var aqQ=Symbol.for("undici.error.UND_ERR_CONNECT_TIMEOUT");class DMQ extends a0{constructor(A){super(A);this.name="ConnectTimeoutError",this.message=A||"Connect Timeout Error",this.code="UND_ERR_CONNECT_TIMEOUT"}static[Symbol.hasInstance](A){return A&&A[aqQ]===!0}get[aqQ](){return!0}}var oqQ=Symbol.for("undici.error.UND_ERR_HEADERS_TIMEOUT");class NMQ extends a0{constructor(A){super(A);this.name="HeadersTimeoutError",this.message=A||"Headers Timeout Error",this.code="UND_ERR_HEADERS_TIMEOUT"}static[Symbol.hasInstance](A){return A&&A[oqQ]===!0}get[oqQ](){return!0}}var tqQ=Symbol.for("undici.error.UND_ERR_HEADERS_OVERFLOW");class LMQ extends a0{constructor(A){super(A);this.name="HeadersOverflowError",this.message=A||"Headers Overflow Error",this.code="UND_ERR_HEADERS_OVERFLOW"}static[Symbol.hasInstance](A){return A&&A[tqQ]===!0}get[tqQ](){return!0}}var eqQ=Symbol.for("undici.error.UND_ERR_BODY_TIMEOUT");class qMQ extends a0{constructor(A){super(A);this.name="BodyTimeoutError",this.message=A||"Body Timeout Error",this.code="UND_ERR_BODY_TIMEOUT"}static[Symbol.hasInstance](A){return A&&A[eqQ]===!0}get[eqQ](){return!0}}var AMQ=Symbol.for("undici.error.UND_ERR_INVALID_ARG");class MMQ extends a0{constructor(A){super(A);this.name="InvalidArgumentError",this.message=A||"Invalid Argument Error",this.code="UND_ERR_INVALID_ARG"}static[Symbol.hasInstance](A){return A&&A[AMQ]===!0}get[AMQ](){return!0}}var QMQ=Symbol.for("undici.error.UND_ERR_INVALID_RETURN_VALUE");class zMQ extends a0{constructor(A){super(A);this.name="InvalidReturnValueError",this.message=A||"Invalid Return Value Error",this.code="UND_ERR_INVALID_RETURN_VALUE"}static[Symbol.hasInstance](A){return A&&A[QMQ]===!0}get[QMQ](){return!0}}var BMQ=Symbol.for("undici.error.UND_ERR_ABORT");class Zr extends a0{constructor(A){super(A);this.name="AbortError",this.message=A||"The operation was aborted",this.code="UND_ERR_ABORT"}static[Symbol.hasInstance](A){return A&&A[BMQ]===!0}get[BMQ](){return!0}}var YMQ=Symbol.for("undici.error.UND_ERR_ABORTED");class RMQ extends Zr{constructor(A){super(A);this.name="AbortError",this.message=A||"Request aborted",this.code="UND_ERR_ABORTED"}static[Symbol.hasInstance](A){return A&&A[YMQ]===!0}get[YMQ](){return!0}}var JMQ=Symbol.for("undici.error.UND_ERR_INFO");class wMQ extends a0{constructor(A){super(A);this.name="InformationalError",this.message=A||"Request information",this.code="UND_ERR_INFO"}static[Symbol.hasInstance](A){return A&&A[JMQ]===!0}get[JMQ](){return!0}}var CMQ=Symbol.for("undici.error.UND_ERR_REQ_CONTENT_LENGTH_MISMATCH");class jMQ extends a0{constructor(A){super(A);this.name="RequestContentLengthMismatchError",this.message=A||"Request body length does not match content-length header",this.code="UND_ERR_REQ_CONTENT_LENGTH_MISMATCH"}static[Symbol.hasInstance](A){return A&&A[CMQ]===!0}get[CMQ](){return!0}}var XMQ=Symbol.for("undici.error.UND_ERR_RES_CONTENT_LENGTH_MISMATCH");class OMQ extends a0{constructor(A){super(A);this.name="ResponseContentLengthMismatchError",this.message=A||"Response body length does not match content-length header",this.code="UND_ERR_RES_CONTENT_LENGTH_MISMATCH"}static[Symbol.hasInstance](A){return A&&A[XMQ]===!0}get[XMQ](){return!0}}var GMQ=Symbol.for("undici.error.UND_ERR_DESTROYED");class PMQ extends a0{constructor(A){super(A);this.name="ClientDestroyedError",this.message=A||"The client is destroyed",this.code="UND_ERR_DESTROYED"}static[Symbol.hasInstance](A){return A&&A[GMQ]===!0}get[GMQ](){return!0}}var WMQ=Symbol.for("undici.error.UND_ERR_CLOSED");class TMQ extends a0{constructor(A){super(A);this.name="ClientClosedError",this.message=A||"The client is closed",this.code="UND_ERR_CLOSED"}static[Symbol.hasInstance](A){return A&&A[WMQ]===!0}get[WMQ](){return!0}}var FMQ=Symbol.for("undici.error.UND_ERR_SOCKET");class SMQ extends a0{constructor(A,Q){super(A);this.name="SocketError",this.message=A||"Socket error",this.code="UND_ERR_SOCKET",this.socket=Q}static[Symbol.hasInstance](A){return A&&A[FMQ]===!0}get[FMQ](){return!0}}var ZMQ=Symbol.for("undici.error.UND_ERR_NOT_SUPPORTED");class kMQ extends a0{constructor(A){super(A);this.name="NotSupportedError",this.message=A||"Not supported error",this.code="UND_ERR_NOT_SUPPORTED"}static[Symbol.hasInstance](A){return A&&A[ZMQ]===!0}get[ZMQ](){return!0}}var $MQ=Symbol.for("undici.error.UND_ERR_BPL_MISSING_UPSTREAM");class _MQ extends a0{constructor(A){super(A);this.name="MissingUpstreamError",this.message=A||"No upstream has been added to the BalancedPool",this.code="UND_ERR_BPL_MISSING_UPSTREAM"}static[Symbol.hasInstance](A){return A&&A[$MQ]===!0}get[$MQ](){return!0}}var UMQ=Symbol.for("undici.error.UND_ERR_HTTP_PARSER");class vMQ extends Error{constructor(A,Q,B){super(A);this.name="HTTPParserError",this.code=Q?`HPE_${Q}`:void 0,this.data=B?B.toString():void 0}static[Symbol.hasInstance](A){return A&&A[UMQ]===!0}get[UMQ](){return!0}}var EMQ=Symbol.for("undici.error.UND_ERR_RES_EXCEEDED_MAX_SIZE");class yMQ extends a0{constructor(A){super(A);this.name="ResponseExceededMaxSizeError",this.message=A||"Response content exceeded max size",this.code="UND_ERR_RES_EXCEEDED_MAX_SIZE"}static[Symbol.hasInstance](A){return A&&A[EMQ]===!0}get[EMQ](){return!0}}var KMQ=Symbol.for("undici.error.UND_ERR_REQ_RETRY");class gMQ extends a0{constructor(A,Q,{headers:B,data:Y}){super(A);this.name="RequestRetryError",this.message=A||"Request retry error",this.code="UND_ERR_REQ_RETRY",this.statusCode=Q,this.data=Y,this.headers=B}static[Symbol.hasInstance](A){return A&&A[KMQ]===!0}get[KMQ](){return!0}}var VMQ=Symbol.for("undici.error.UND_ERR_RESPONSE");class hMQ extends a0{constructor(A,Q,{headers:B,body:Y}){super(A);this.name="ResponseError",this.message=A||"Response error",this.code="UND_ERR_RESPONSE",this.statusCode=Q,this.body=Y,this.headers=B}static[Symbol.hasInstance](A){return A&&A[VMQ]===!0}get[VMQ](){return!0}}var IMQ=Symbol.for("undici.error.UND_ERR_PRX_TLS");class xMQ extends a0{constructor(A,Q,B={}){super(Q,{cause:A,...B});this.name="SecureProxyConnectionError",this.message=Q||"Secure Proxy Connection failed",this.code="UND_ERR_PRX_TLS",this.cause=A}static[Symbol.hasInstance](A){return A&&A[IMQ]===!0}get[IMQ](){return!0}}var HMQ=Symbol.for("undici.error.UND_ERR_MAX_ORIGINS_REACHED");class fMQ extends a0{constructor(A){super(A);this.name="MaxOriginsReachedError",this.message=A||"Maximum allowed origins reached",this.code="UND_ERR_MAX_ORIGINS_REACHED"}static[Symbol.hasInstance](A){return A&&A[HMQ]===!0}get[HMQ](){return!0}}bMQ.exports={AbortError:Zr,HTTPParserError:vMQ,UndiciError:a0,HeadersTimeoutError:NMQ,HeadersOverflowError:LMQ,BodyTimeoutError:qMQ,RequestContentLengthMismatchError:jMQ,ConnectTimeoutError:DMQ,InvalidArgumentError:MMQ,InvalidReturnValueError:zMQ,RequestAbortedError:RMQ,ClientDestroyedError:PMQ,ClientClosedError:TMQ,InformationalError:wMQ,SocketError:SMQ,NotSupportedError:kMQ,ResponseContentLengthMismatchError:OMQ,BalancedPoolMissingUpstreamError:_MQ,ResponseExceededMaxSizeError:yMQ,RequestRetryError:gMQ,ResponseError:hMQ,SecureProxyConnectionError:xMQ,MaxOriginsReachedError:fMQ}});var BS=R((wsY,uMQ)=>{var $r=["Accept","Accept-Encoding","Accept-Language","Accept-Ranges","Access-Control-Allow-Credentials","Access-Control-Allow-Headers","Access-Control-Allow-Methods","Access-Control-Allow-Origin","Access-Control-Expose-Headers","Access-Control-Max-Age","Access-Control-Request-Headers","Access-Control-Request-Method","Age","Allow","Alt-Svc","Alt-Used","Authorization","Cache-Control","Clear-Site-Data","Connection","Content-Disposition","Content-Encoding","Content-Language","Content-Length","Content-Location","Content-Range","Content-Security-Policy","Content-Security-Policy-Report-Only","Content-Type","Cookie","Cross-Origin-Embedder-Policy","Cross-Origin-Opener-Policy","Cross-Origin-Resource-Policy","Date","Device-Memory","Downlink","ECT","ETag","Expect","Expect-CT","Expires","Forwarded","From","Host","If-Match","If-Modified-Since","If-None-Match","If-Range","If-Unmodified-Since","Keep-Alive","Last-Modified","Link","Location","Max-Forwards","Origin","Permissions-Policy","Pragma","Proxy-Authenticate","Proxy-Authorization","RTT","Range","Referer","Referrer-Policy","Refresh","Retry-After","Sec-WebSocket-Accept","Sec-WebSocket-Extensions","Sec-WebSocket-Key","Sec-WebSocket-Protocol","Sec-WebSocket-Version","Server","Server-Timing","Service-Worker-Allowed","Service-Worker-Navigation-Preload","Set-Cookie","SourceMap","Strict-Transport-Security","Supports-Loading-Mode","TE","Timing-Allow-Origin","Trailer","Transfer-Encoding","Upgrade","Upgrade-Insecure-Requests","User-Agent","Vary","Via","WWW-Authenticate","X-Content-Type-Options","X-DNS-Prefetch-Control","X-Frame-Options","X-Permitted-Cross-Domain-Policies","X-Powered-By","X-Requested-With","X-XSS-Protection"],QS={};Object.setPrototypeOf(QS,null);var mMQ={};Object.setPrototypeOf(mMQ,null);function Mw0(A){let Q=mMQ[A];if(Q===void 0)Q=Buffer.from(A);return Q}for(let A=0;A<$r.length;++A){let Q=$r[A],B=Q.toLowerCase();QS[Q]=QS[B]=B}uMQ.exports={wellknownHeaderNames:$r,headerNameLowerCasedRecord:QS,getHeaderNameAsBuffer:Mw0}});var pMQ=R((jsY,lMQ)=>{var{wellknownHeaderNames:dMQ,headerNameLowerCasedRecord:zw0}=BS();class lK{value=null;left=null;middle=null;right=null;code;constructor(A,Q,B){if(B===void 0||B>=A.length)throw TypeError("Unreachable");if((this.code=A.charCodeAt(B))>127)throw TypeError("key must be ascii string");if(A.length!==++B)this.middle=new lK(A,Q,B);else this.value=Q}add(A,Q){let B=A.length;if(B===0)throw TypeError("Unreachable");let Y=0,J=this;while(!0){let C=A.charCodeAt(Y);if(C>127)throw TypeError("key must be ascii string");if(J.code===C)if(B===++Y){J.value=Q;break}else if(J.middle!==null)J=J.middle;else{J.middle=new lK(A,Q,Y);break}else if(J.code=65)J|=32;while(Y!==null){if(J===Y.code){if(Q===++B)return Y;Y=Y.middle;break}Y=Y.code{var Wq=u("node:assert"),{kDestroyed:rMQ,kBodyUsed:pK,kListeners:JS,kBody:iMQ}=B0(),{IncomingMessage:Rw0}=u("node:http"),aMQ=u("node:stream"),ww0=u("node:net"),{stringify:jw0}=u("node:querystring"),{EventEmitter:Ow0}=u("node:events"),YS=Fr(),{InvalidArgumentError:oY,ConnectTimeoutError:Pw0}=QB(),{headerNameLowerCasedRecord:Tw0}=BS(),{tree:oMQ}=pMQ(),[Sw0,kw0]=process.versions.node.split(".",2).map((A)=>Number(A));class Er{constructor(A){this[iMQ]=A,this[pK]=!1}async*[Symbol.asyncIterator](){Wq(!this[pK],"disturbed"),this[pK]=!0,yield*this[iMQ]}}function nMQ(){}function _w0(A){if(XS(A)){if(YzQ(A)===0)A.on("data",function(){Wq(!1)});if(typeof A.readableDidRead!=="boolean")A[pK]=!1,Ow0.prototype.on.call(A,"data",function(){this[pK]=!0});return A}else if(A&&typeof A.pipeTo==="function")return new Er(A);else if(A&&typeof A!=="string"&&!ArrayBuffer.isView(A)&&BzQ(A))return new Er(A);else return A}function XS(A){return A&&typeof A==="object"&&typeof A.pipe==="function"&&typeof A.on==="function"}function tMQ(A){if(A===null)return!1;else if(A instanceof Blob)return!0;else if(typeof A!=="object")return!1;else{let Q=A[Symbol.toStringTag];return(Q==="Blob"||Q==="File")&&(("stream"in A)&&typeof A.stream==="function"||("arrayBuffer"in A)&&typeof A.arrayBuffer==="function")}}function eMQ(A){return A.includes("?")||A.includes("#")}function vw0(A,Q){if(eMQ(A))throw Error('Query params cannot be passed when url already contains "?" or "#".');let B=jw0(Q);if(B)A+="?"+B;return A}function AzQ(A){let Q=parseInt(A,10);return Q===Number(A)&&Q>=0&&Q<=65535}function CS(A){return A!=null&&A[0]==="h"&&A[1]==="t"&&A[2]==="t"&&A[3]==="p"&&(A[4]===":"||A[4]==="s"&&A[5]===":")}function QzQ(A){if(typeof A==="string"){if(A=new URL(A),!CS(A.origin||A.protocol))throw new oY("Invalid URL protocol: the URL must start with `http:` or `https:`.");return A}if(!A||typeof A!=="object")throw new oY("Invalid URL: The URL argument must be a non-null object.");if(!(A instanceof URL)){if(A.port!=null&&A.port!==""&&AzQ(A.port)===!1)throw new oY("Invalid URL: port must be a valid integer or a string representation of an integer.");if(A.path!=null&&typeof A.path!=="string")throw new oY("Invalid URL path: the path must be a string or null/undefined.");if(A.pathname!=null&&typeof A.pathname!=="string")throw new oY("Invalid URL pathname: the pathname must be a string or null/undefined.");if(A.hostname!=null&&typeof A.hostname!=="string")throw new oY("Invalid URL hostname: the hostname must be a string or null/undefined.");if(A.origin!=null&&typeof A.origin!=="string")throw new oY("Invalid URL origin: the origin must be a string or null/undefined.");if(!CS(A.origin||A.protocol))throw new oY("Invalid URL protocol: the URL must start with `http:` or `https:`.");let Q=A.port!=null?A.port:A.protocol==="https:"?443:80,B=A.origin!=null?A.origin:`${A.protocol||""}//${A.hostname||""}:${Q}`,Y=A.path!=null?A.path:`${A.pathname||""}${A.search||""}`;if(B[B.length-1]==="/")B=B.slice(0,B.length-1);if(Y&&Y[0]!=="/")Y=`/${Y}`;return new URL(`${B}${Y}`)}if(!CS(A.origin||A.protocol))throw new oY("Invalid URL protocol: the URL must start with `http:` or `https:`.");return A}function yw0(A){if(A=QzQ(A),A.pathname!=="/"||A.search||A.hash)throw new oY("invalid url");return A}function gw0(A){if(A[0]==="["){let B=A.indexOf("]");return Wq(B!==-1),A.substring(1,B)}let Q=A.indexOf(":");if(Q===-1)return A;return A.substring(0,Q)}function hw0(A){if(!A)return null;Wq(typeof A==="string");let Q=gw0(A);if(ww0.isIP(Q))return"";return Q}function xw0(A){return JSON.parse(JSON.stringify(A))}function fw0(A){return A!=null&&typeof A[Symbol.asyncIterator]==="function"}function BzQ(A){return A!=null&&(typeof A[Symbol.iterator]==="function"||typeof A[Symbol.asyncIterator]==="function")}function YzQ(A){if(A==null)return 0;else if(XS(A)){let Q=A._readableState;return Q&&Q.objectMode===!1&&Q.ended===!0&&Number.isFinite(Q.length)?Q.length:null}else if(tMQ(A))return A.size!=null?A.size:null;else if(GzQ(A))return A.byteLength;return null}function JzQ(A){return A&&!!(A.destroyed||A[rMQ]||aMQ.isDestroyed?.(A))}function CzQ(A,Q){if(A==null||!XS(A)||JzQ(A))return;if(typeof A.destroy==="function"){if(Object.getPrototypeOf(A).constructor===Rw0)A.socket=null;A.destroy(Q)}else if(Q)queueMicrotask(()=>{A.emit("error",Q)});if(A.destroyed!==!0)A[rMQ]=!0}var bw0=/timeout=(\d+)/;function mw0(A){let Q=A.match(bw0);return Q?parseInt(Q[1],10)*1000:null}function XzQ(A){return typeof A==="string"?Tw0[A]??A.toLowerCase():oMQ.lookup(A)??A.toString("latin1").toLowerCase()}function uw0(A){return oMQ.lookup(A)??A.toString("latin1").toLowerCase()}function dw0(A,Q){if(Q===void 0)Q={};for(let B=0;BX.toString("utf8")):C.toString("utf8")}}if("content-length"in Q&&"content-disposition"in Q)Q["content-disposition"]=Buffer.from(Q["content-disposition"]).toString("latin1");return Q}function cw0(A){let Q=A.length,B=Array(Q),Y=!1,J=-1,C,X,G=0;for(let W=0;WBuffer.from(Q))}function GzQ(A){return A instanceof Uint8Array||Buffer.isBuffer(A)}function pw0(A,Q,B){if(!A||typeof A!=="object")throw new oY("handler must be an object");if(typeof A.onRequestStart==="function")return;if(typeof A.onConnect!=="function")throw new oY("invalid onConnect method");if(typeof A.onError!=="function")throw new oY("invalid onError method");if(typeof A.onBodySent!=="function"&&A.onBodySent!==void 0)throw new oY("invalid onBodySent method");if(B||Q==="CONNECT"){if(typeof A.onUpgrade!=="function")throw new oY("invalid onUpgrade method")}else{if(typeof A.onHeaders!=="function")throw new oY("invalid onHeaders method");if(typeof A.onData!=="function")throw new oY("invalid onData method");if(typeof A.onComplete!=="function")throw new oY("invalid onComplete method")}}function iw0(A){return!!(A&&(aMQ.isDisturbed(A)||A[pK]))}function nw0(A){return{localAddress:A.localAddress,localPort:A.localPort,remoteAddress:A.remoteAddress,remotePort:A.remotePort,remoteFamily:A.remoteFamily,timeout:A.timeout,bytesWritten:A.bytesWritten,bytesRead:A.bytesRead}}function sw0(A){let Q;return new ReadableStream({start(){Q=A[Symbol.asyncIterator]()},pull(B){return Q.next().then(({done:Y,value:J})=>{if(Y)queueMicrotask(()=>{B.close(),B.byobRequest?.respond(0)});else{let C=Buffer.isBuffer(J)?J:Buffer.from(J);if(C.byteLength)B.enqueue(new Uint8Array(C));else return this.pull(B)}})},cancel(){return Q.return()},type:"bytes"})}function rw0(A){return A&&typeof A==="object"&&typeof A.append==="function"&&typeof A.delete==="function"&&typeof A.get==="function"&&typeof A.getAll==="function"&&typeof A.has==="function"&&typeof A.set==="function"&&A[Symbol.toStringTag]==="FormData"}function aw0(A,Q){if("addEventListener"in A)return A.addEventListener("abort",Q,{once:!0}),()=>A.removeEventListener("abort",Q);return A.once("abort",Q),()=>A.removeListener("abort",Q)}function WzQ(A){switch(A){case 34:case 40:case 41:case 44:case 47:case 58:case 59:case 60:case 61:case 62:case 63:case 64:case 91:case 92:case 93:case 123:case 125:return!1;default:return A>=33&&A<=126}}function ow0(A){if(A.length===0)return!1;for(let Q=0;Q{if(!Q.timeout)return nMQ;let B=null,Y=null,J=YS.setFastTimeout(()=>{B=setImmediate(()=>{Y=setImmediate(()=>sMQ(A.deref(),Q))})},Q.timeout);return()=>{YS.clearFastTimeout(J),clearImmediate(B),clearImmediate(Y)}}:(A,Q)=>{if(!Q.timeout)return nMQ;let B=null,Y=YS.setFastTimeout(()=>{B=setImmediate(()=>{sMQ(A.deref(),Q)})},Q.timeout);return()=>{YS.clearFastTimeout(Y),clearImmediate(B)}};function sMQ(A,Q){if(A==null)return;let B="Connect Timeout Error";if(Array.isArray(A.autoSelectFamilyAttemptedAddresses))B+=` (attempted addresses: ${A.autoSelectFamilyAttemptedAddresses.join(", ")},`;else B+=` (attempted address: ${Q.hostname}:${Q.port},`;B+=` timeout: ${Q.timeout}ms)`,CzQ(A,new Pw0(B))}function Xj0(A){if(A[0]==="h"&&A[1]==="t"&&A[2]==="t"&&A[3]==="p")switch(A[4]){case":":return"http:";case"s":if(A[5]===":")return"https:"}return A.slice(0,A.indexOf(":")+1)}var FzQ=Object.create(null);FzQ.enumerable=!0;var Kr={delete:"DELETE",DELETE:"DELETE",get:"GET",GET:"GET",head:"HEAD",HEAD:"HEAD",options:"OPTIONS",OPTIONS:"OPTIONS",post:"POST",POST:"POST",put:"PUT",PUT:"PUT"},ZzQ={...Kr,patch:"patch",PATCH:"PATCH"};Object.setPrototypeOf(Kr,null);Object.setPrototypeOf(ZzQ,null);$zQ.exports={kEnumerableProperty:FzQ,isDisturbed:iw0,isBlobLike:tMQ,parseOrigin:yw0,parseURL:QzQ,getServerName:hw0,isStream:XS,isIterable:BzQ,isAsyncIterable:fw0,isDestroyed:JzQ,headerNameToString:XzQ,bufferToLowerCasedHeaderName:uw0,addListener:Bj0,removeAllListeners:Yj0,errorRequest:Jj0,parseRawHeaders:cw0,encodeRawHeaders:lw0,parseHeaders:dw0,parseKeepAliveTimeout:mw0,destroy:CzQ,bodyLength:YzQ,deepClone:xw0,ReadableStreamFrom:sw0,isBuffer:GzQ,assertRequestHandler:pw0,getSocketInfo:nw0,isFormDataLike:rw0,pathHasQueryOrFragment:eMQ,serializePathWithQuery:vw0,addAbortListener:aw0,isValidHTTPToken:ow0,isValidHeaderValue:ew0,isTokenCharCode:WzQ,parseRangeHeader:Qj0,normalizedMethodRecordsBase:Kr,normalizedMethodRecords:ZzQ,isValidPort:AzQ,isHttpOrHttpsPrefixed:CS,nodeMajor:Sw0,nodeMinor:kw0,safeHTTPMethods:Object.freeze(["GET","HEAD","OPTIONS","TRACE"]),wrapRequestBody:_w0,setupConnectTimeout:Cj0,getProtocolFromUrlString:Xj0}});var Vr=R((PsY,DzQ)=>{var{kConnected:UzQ,kPending:EzQ,kRunning:KzQ,kSize:VzQ,kFree:Gj0,kQueued:Wj0}=B0();class IzQ{constructor(A){this.connected=A[UzQ],this.pending=A[EzQ],this.running=A[KzQ],this.size=A[VzQ]}}class HzQ{constructor(A){this.connected=A[UzQ],this.free=A[Gj0],this.pending=A[EzQ],this.queued=A[Wj0],this.running=A[KzQ],this.size=A[VzQ]}}DzQ.exports={ClientStats:IzQ,PoolStats:HzQ}});var x$=R((TsY,zzQ)=>{var aB=u("node:diagnostics_channel"),Ir=u("node:util"),h$=Ir.debuglog("undici"),Fq=Ir.debuglog("fetch"),GS=Ir.debuglog("websocket"),Fj0={beforeConnect:aB.channel("undici:client:beforeConnect"),connected:aB.channel("undici:client:connected"),connectError:aB.channel("undici:client:connectError"),sendHeaders:aB.channel("undici:client:sendHeaders"),create:aB.channel("undici:request:create"),bodySent:aB.channel("undici:request:bodySent"),bodyChunkSent:aB.channel("undici:request:bodyChunkSent"),bodyChunkReceived:aB.channel("undici:request:bodyChunkReceived"),headers:aB.channel("undici:request:headers"),trailers:aB.channel("undici:request:trailers"),error:aB.channel("undici:request:error"),open:aB.channel("undici:websocket:open"),close:aB.channel("undici:websocket:close"),socketError:aB.channel("undici:websocket:socket_error"),ping:aB.channel("undici:websocket:ping"),pong:aB.channel("undici:websocket:pong")},NzQ=!1;function MzQ(A=h$){if(NzQ)return;NzQ=!0,aB.subscribe("undici:client:beforeConnect",(Q)=>{let{connectParams:{version:B,protocol:Y,port:J,host:C}}=Q;A("connecting to %s%s using %s%s",C,J?`:${J}`:"",Y,B)}),aB.subscribe("undici:client:connected",(Q)=>{let{connectParams:{version:B,protocol:Y,port:J,host:C}}=Q;A("connected to %s%s using %s%s",C,J?`:${J}`:"",Y,B)}),aB.subscribe("undici:client:connectError",(Q)=>{let{connectParams:{version:B,protocol:Y,port:J,host:C},error:X}=Q;A("connection to %s%s using %s%s errored - %s",C,J?`:${J}`:"",Y,B,X.message)}),aB.subscribe("undici:client:sendHeaders",(Q)=>{let{request:{method:B,path:Y,origin:J}}=Q;A("sending request to %s %s%s",B,J,Y)})}var LzQ=!1;function Zj0(A=h$){if(LzQ)return;LzQ=!0,aB.subscribe("undici:request:headers",(Q)=>{let{request:{method:B,path:Y,origin:J},response:{statusCode:C}}=Q;A("received response to %s %s%s - HTTP %d",B,J,Y,C)}),aB.subscribe("undici:request:trailers",(Q)=>{let{request:{method:B,path:Y,origin:J}}=Q;A("trailers received from %s %s%s",B,J,Y)}),aB.subscribe("undici:request:error",(Q)=>{let{request:{method:B,path:Y,origin:J},error:C}=Q;A("request to %s %s%s errored - %s",B,J,Y,C.message)})}var qzQ=!1;function $j0(A=GS){if(qzQ)return;qzQ=!0,aB.subscribe("undici:websocket:open",(Q)=>{let{address:{address:B,port:Y}}=Q;A("connection opened %s%s",B,Y?`:${Y}`:"")}),aB.subscribe("undici:websocket:close",(Q)=>{let{websocket:B,code:Y,reason:J}=Q;A("closed connection to %s - %s %s",B.url,Y,J)}),aB.subscribe("undici:websocket:socket_error",(Q)=>{A("connection errored - %s",Q.message)}),aB.subscribe("undici:websocket:ping",(Q)=>{A("ping received")}),aB.subscribe("undici:websocket:pong",(Q)=>{A("pong received")})}if(h$.enabled||Fq.enabled)MzQ(Fq.enabled?Fq:h$),Zj0(Fq.enabled?Fq:h$);if(GS.enabled)MzQ(h$.enabled?h$:GS),$j0(GS);zzQ.exports={channels:Fj0}});var TzQ=R((SsY,PzQ)=>{var{InvalidArgumentError:N0,NotSupportedError:Uj0}=QB(),zX=u("node:assert"),{isValidHTTPToken:jzQ,isValidHeaderValue:RzQ,isStream:Ej0,destroy:Kj0,isBuffer:Vj0,isFormDataLike:Ij0,isIterable:Hj0,isBlobLike:Dj0,serializePathWithQuery:Nj0,assertRequestHandler:Lj0,getServerName:qj0,normalizedMethodRecords:Mj0,getProtocolFromUrlString:zj0}=lQ(),{channels:B8}=x$(),{headerNameLowerCasedRecord:wzQ}=BS(),Rj0=/[^\u0021-\u00ff]/,YC=Symbol("handler");class OzQ{constructor(A,{path:Q,method:B,body:Y,headers:J,query:C,idempotent:X,blocking:G,upgrade:W,headersTimeout:F,bodyTimeout:Z,reset:U,expectContinue:$,servername:E,throwOnError:K,maxRedirections:I},V){if(typeof Q!=="string")throw new N0("path must be a string");else if(Q[0]!=="/"&&!(Q.startsWith("http://")||Q.startsWith("https://"))&&B!=="CONNECT")throw new N0("path must be an absolute URL or start with a slash");else if(Rj0.test(Q))throw new N0("invalid request path");if(typeof B!=="string")throw new N0("method must be a string");else if(Mj0[B]===void 0&&!jzQ(B))throw new N0("invalid request method");if(W&&typeof W!=="string")throw new N0("upgrade must be a string");if(F!=null&&(!Number.isFinite(F)||F<0))throw new N0("invalid headersTimeout");if(Z!=null&&(!Number.isFinite(Z)||Z<0))throw new N0("invalid bodyTimeout");if(U!=null&&typeof U!=="boolean")throw new N0("invalid reset");if($!=null&&typeof $!=="boolean")throw new N0("invalid expectContinue");if(K!=null)throw new N0("invalid throwOnError");if(I!=null&&I!==0)throw new N0("maxRedirections is not supported, use the redirect interceptor");if(this.headersTimeout=F,this.bodyTimeout=Z,this.method=B,this.abort=null,Y==null)this.body=null;else if(Ej0(Y)){this.body=Y;let H=this.body._readableState;if(!H||!H.autoDestroy)this.endHandler=function(){Kj0(this)},this.body.on("end",this.endHandler);this.errorHandler=(D)=>{if(this.abort)this.abort(D);else this.error=D},this.body.on("error",this.errorHandler)}else if(Vj0(Y))this.body=Y.byteLength?Y:null;else if(ArrayBuffer.isView(Y))this.body=Y.buffer.byteLength?Buffer.from(Y.buffer,Y.byteOffset,Y.byteLength):null;else if(Y instanceof ArrayBuffer)this.body=Y.byteLength?Buffer.from(Y):null;else if(typeof Y==="string")this.body=Y.length?Buffer.from(Y):null;else if(Ij0(Y)||Hj0(Y)||Dj0(Y))this.body=Y;else throw new N0("body must be a string, a Buffer, a Readable stream, an iterable, or an async iterable");if(this.completed=!1,this.aborted=!1,this.upgrade=W||null,this.path=C?Nj0(Q,C):Q,this.origin=A,this.protocol=zj0(A),this.idempotent=X==null?B==="HEAD"||B==="GET":X,this.blocking=G??this.method!=="HEAD",this.reset=U==null?null:U,this.host=null,this.contentLength=null,this.contentType=null,this.headers=[],this.expectContinue=$!=null?$:!1,Array.isArray(J)){if(J.length%2!==0)throw new N0("headers array must be even");for(let H=0;H{var{InvalidArgumentError:wj0}=QB();SzQ.exports=class A{#A;constructor(Q){this.#A=Q}static wrap(Q){return Q.onRequestStart?Q:new A(Q)}onConnect(Q,B){return this.#A.onConnect?.(Q,B)}onHeaders(Q,B,Y,J){return this.#A.onHeaders?.(Q,B,Y,J)}onUpgrade(Q,B,Y){return this.#A.onUpgrade?.(Q,B,Y)}onData(Q){return this.#A.onData?.(Q)}onComplete(Q){return this.#A.onComplete?.(Q)}onError(Q){if(!this.#A.onError)throw Q;return this.#A.onError?.(Q)}onRequestStart(Q,B){this.#A.onConnect?.((Y)=>Q.abort(Y),B)}onRequestUpgrade(Q,B,Y,J){let C=[];for(let[X,G]of Object.entries(Y))C.push(Buffer.from(X),Array.isArray(G)?G.map((W)=>Buffer.from(W)):Buffer.from(G));this.#A.onUpgrade?.(B,C,J)}onResponseStart(Q,B,Y,J){let C=[];for(let[X,G]of Object.entries(Y))C.push(Buffer.from(X),Array.isArray(G)?G.map((W)=>Buffer.from(W)):Buffer.from(G));if(this.#A.onHeaders?.(B,C,()=>Q.resume(),J)===!1)Q.pause()}onResponseData(Q,B){if(this.#A.onData?.(B)===!1)Q.pause()}onResponseEnd(Q,B){let Y=[];for(let[J,C]of Object.entries(B))Y.push(Buffer.from(J),Array.isArray(C)?C.map((X)=>Buffer.from(X)):Buffer.from(C));this.#A.onComplete?.(Y)}onResponseError(Q,B){if(!this.#A.onError)throw new wj0("invalid onError method");this.#A.onError?.(B)}}});var $q=R((_sY,_zQ)=>{var jj0=u("node:events"),Oj0=Zq(),Pj0=(A)=>(Q,B)=>A(Q,Oj0.wrap(B));class kzQ extends jj0{dispatch(){throw Error("not implemented")}close(){throw Error("not implemented")}destroy(){throw Error("not implemented")}compose(...A){let Q=Array.isArray(A[0])?A[0]:A,B=this.dispatch.bind(this);for(let Y of Q){if(Y==null)continue;if(typeof Y!=="function")throw TypeError(`invalid interceptor, expected function received ${typeof Y}`);if(B=Y(B),B=Pj0(B),B==null||typeof B!=="function"||B.length!==2)throw TypeError("invalid interceptor")}return new Proxy(this,{get:(Y,J)=>J==="dispatch"?B:Y[J]})}}_zQ.exports=kzQ});var gzQ=R((vsY,yzQ)=>{var{parseHeaders:Hr}=lQ(),{InvalidArgumentError:Tj0}=QB(),Dr=Symbol("resume");class vzQ{#A=!1;#Q=null;#B=!1;#Y;[Dr]=null;constructor(A){this.#Y=A}pause(){this.#A=!0}resume(){if(this.#A)this.#A=!1,this[Dr]?.()}abort(A){if(!this.#B)this.#B=!0,this.#Q=A,this.#Y(A)}get aborted(){return this.#B}get reason(){return this.#Q}get paused(){return this.#A}}yzQ.exports=class A{#A;#Q;constructor(Q){this.#A=Q}static unwrap(Q){return!Q.onRequestStart?Q:new A(Q)}onConnect(Q,B){this.#Q=new vzQ(Q),this.#A.onRequestStart?.(this.#Q,B)}onUpgrade(Q,B,Y){this.#A.onRequestUpgrade?.(this.#Q,Q,Hr(B),Y)}onHeaders(Q,B,Y,J){return this.#Q[Dr]=Y,this.#A.onResponseStart?.(this.#Q,Q,Hr(B),J),!this.#Q.paused}onData(Q){return this.#A.onResponseData?.(this.#Q,Q),!this.#Q.paused}onComplete(Q){this.#A.onResponseEnd?.(this.#Q,Hr(Q))}onError(Q){if(!this.#A.onResponseError)throw new Tj0("invalid onError method");this.#A.onResponseError?.(this.#Q,Q)}}});var f$=R((ysY,xzQ)=>{var Sj0=$q(),kj0=gzQ(),{ClientDestroyedError:Nr,ClientClosedError:_j0,InvalidArgumentError:FS}=QB(),{kDestroy:vj0,kClose:yj0,kClosed:Uq,kDestroyed:iK,kDispatch:gj0}=B0(),_G=Symbol("onDestroyed"),nK=Symbol("onClosed");class hzQ extends Sj0{[iK]=!1;[_G]=null;[Uq]=!1;[nK]=[];get destroyed(){return this[iK]}get closed(){return this[Uq]}close(A){if(A===void 0)return new Promise((B,Y)=>{this.close((J,C)=>{return J?Y(J):B(C)})});if(typeof A!=="function")throw new FS("invalid callback");if(this[iK]){queueMicrotask(()=>A(new Nr,null));return}if(this[Uq]){if(this[nK])this[nK].push(A);else queueMicrotask(()=>A(null,null));return}this[Uq]=!0,this[nK].push(A);let Q=()=>{let B=this[nK];this[nK]=null;for(let Y=0;Ythis.destroy()).then(()=>{queueMicrotask(Q)})}destroy(A,Q){if(typeof A==="function")Q=A,A=null;if(Q===void 0)return new Promise((Y,J)=>{this.destroy(A,(C,X)=>{return C?J(C):Y(X)})});if(typeof Q!=="function")throw new FS("invalid callback");if(this[iK]){if(this[_G])this[_G].push(Q);else queueMicrotask(()=>Q(null,null));return}if(!A)A=new Nr;this[iK]=!0,this[_G]=this[_G]||[],this[_G].push(Q);let B=()=>{let Y=this[_G];this[_G]=null;for(let J=0;J{queueMicrotask(B)})}dispatch(A,Q){if(!Q||typeof Q!=="object")throw new FS("handler must be an object");Q=kj0.unwrap(Q);try{if(!A||typeof A!=="object")throw new FS("opts must be an object.");if(this[iK]||this[_G])throw new Nr;if(this[Uq])throw new _j0;return this[gj0](A,Q)}catch(B){if(typeof Q.onError!=="function")throw B;return Q.onError(B),!1}}}xzQ.exports=hzQ});var Eq=R((gsY,mzQ)=>{var hj0=u("node:net"),fzQ=u("node:assert"),bzQ=lQ(),{InvalidArgumentError:xj0}=QB(),Lr,fj0=class{constructor(Q){this._maxCachedSessions=Q,this._sessionCache=new Map,this._sessionRegistry=new FinalizationRegistry((B)=>{if(this._sessionCache.size{Object.defineProperty(uzQ,"__esModule",{value:!0});uzQ.enumToMap=mj0;function mj0(A,Q=[],B=[]){let Y=(Q?.length??0)===0,J=(B?.length??0)===0;return Object.fromEntries(Object.entries(A).filter(([,C])=>{return typeof C==="number"&&(Y||Q.includes(C))&&(J||!B.includes(C))}))}});var W2Q=R((czQ)=>{Object.defineProperty(czQ,"__esModule",{value:!0});czQ.SPECIAL_HEADERS=czQ.MINOR=czQ.MAJOR=czQ.HTAB_SP_VCHAR_OBS_TEXT=czQ.QUOTED_STRING=czQ.CONNECTION_TOKEN_CHARS=czQ.HEADER_CHARS=czQ.TOKEN=czQ.HEX=czQ.URL_CHAR=czQ.USERINFO_CHARS=czQ.MARK=czQ.ALPHANUM=czQ.NUM=czQ.HEX_MAP=czQ.NUM_MAP=czQ.ALPHA=czQ.STATUSES_HTTP=czQ.H_METHOD_MAP=czQ.METHOD_MAP=czQ.METHODS_RTSP=czQ.METHODS_ICE=czQ.METHODS_HTTP=czQ.HEADER_STATE=czQ.FINISH=czQ.STATUSES=czQ.METHODS=czQ.LENIENT_FLAGS=czQ.FLAGS=czQ.TYPE=czQ.ERROR=void 0;var dj0=dzQ();czQ.ERROR={OK:0,INTERNAL:1,STRICT:2,CR_EXPECTED:25,LF_EXPECTED:3,UNEXPECTED_CONTENT_LENGTH:4,UNEXPECTED_SPACE:30,CLOSED_CONNECTION:5,INVALID_METHOD:6,INVALID_URL:7,INVALID_CONSTANT:8,INVALID_VERSION:9,INVALID_HEADER_TOKEN:10,INVALID_CONTENT_LENGTH:11,INVALID_CHUNK_SIZE:12,INVALID_STATUS:13,INVALID_EOF_STATE:14,INVALID_TRANSFER_ENCODING:15,CB_MESSAGE_BEGIN:16,CB_HEADERS_COMPLETE:17,CB_MESSAGE_COMPLETE:18,CB_CHUNK_HEADER:19,CB_CHUNK_COMPLETE:20,PAUSED:21,PAUSED_UPGRADE:22,PAUSED_H2_UPGRADE:23,USER:24,CB_URL_COMPLETE:26,CB_STATUS_COMPLETE:27,CB_METHOD_COMPLETE:32,CB_VERSION_COMPLETE:33,CB_HEADER_FIELD_COMPLETE:28,CB_HEADER_VALUE_COMPLETE:29,CB_CHUNK_EXTENSION_NAME_COMPLETE:34,CB_CHUNK_EXTENSION_VALUE_COMPLETE:35,CB_RESET:31,CB_PROTOCOL_COMPLETE:38};czQ.TYPE={BOTH:0,REQUEST:1,RESPONSE:2};czQ.FLAGS={CONNECTION_KEEP_ALIVE:1,CONNECTION_CLOSE:2,CONNECTION_UPGRADE:4,CHUNKED:8,UPGRADE:16,CONTENT_LENGTH:32,SKIPBODY:64,TRAILING:128,TRANSFER_ENCODING:512};czQ.LENIENT_FLAGS={HEADERS:1,CHUNKED_LENGTH:2,KEEP_ALIVE:4,TRANSFER_ENCODING:8,VERSION:16,DATA_AFTER_CLOSE:32,OPTIONAL_LF_AFTER_CR:64,OPTIONAL_CRLF_AFTER_CHUNK:128,OPTIONAL_CR_BEFORE_LF:256,SPACES_AFTER_CHUNK_SIZE:512};czQ.METHODS={DELETE:0,GET:1,HEAD:2,POST:3,PUT:4,CONNECT:5,OPTIONS:6,TRACE:7,COPY:8,LOCK:9,MKCOL:10,MOVE:11,PROPFIND:12,PROPPATCH:13,SEARCH:14,UNLOCK:15,BIND:16,REBIND:17,UNBIND:18,ACL:19,REPORT:20,MKACTIVITY:21,CHECKOUT:22,MERGE:23,"M-SEARCH":24,NOTIFY:25,SUBSCRIBE:26,UNSUBSCRIBE:27,PATCH:28,PURGE:29,MKCALENDAR:30,LINK:31,UNLINK:32,SOURCE:33,PRI:34,DESCRIBE:35,ANNOUNCE:36,SETUP:37,PLAY:38,PAUSE:39,TEARDOWN:40,GET_PARAMETER:41,SET_PARAMETER:42,REDIRECT:43,RECORD:44,FLUSH:45,QUERY:46};czQ.STATUSES={CONTINUE:100,SWITCHING_PROTOCOLS:101,PROCESSING:102,EARLY_HINTS:103,RESPONSE_IS_STALE:110,REVALIDATION_FAILED:111,DISCONNECTED_OPERATION:112,HEURISTIC_EXPIRATION:113,MISCELLANEOUS_WARNING:199,OK:200,CREATED:201,ACCEPTED:202,NON_AUTHORITATIVE_INFORMATION:203,NO_CONTENT:204,RESET_CONTENT:205,PARTIAL_CONTENT:206,MULTI_STATUS:207,ALREADY_REPORTED:208,TRANSFORMATION_APPLIED:214,IM_USED:226,MISCELLANEOUS_PERSISTENT_WARNING:299,MULTIPLE_CHOICES:300,MOVED_PERMANENTLY:301,FOUND:302,SEE_OTHER:303,NOT_MODIFIED:304,USE_PROXY:305,SWITCH_PROXY:306,TEMPORARY_REDIRECT:307,PERMANENT_REDIRECT:308,BAD_REQUEST:400,UNAUTHORIZED:401,PAYMENT_REQUIRED:402,FORBIDDEN:403,NOT_FOUND:404,METHOD_NOT_ALLOWED:405,NOT_ACCEPTABLE:406,PROXY_AUTHENTICATION_REQUIRED:407,REQUEST_TIMEOUT:408,CONFLICT:409,GONE:410,LENGTH_REQUIRED:411,PRECONDITION_FAILED:412,PAYLOAD_TOO_LARGE:413,URI_TOO_LONG:414,UNSUPPORTED_MEDIA_TYPE:415,RANGE_NOT_SATISFIABLE:416,EXPECTATION_FAILED:417,IM_A_TEAPOT:418,PAGE_EXPIRED:419,ENHANCE_YOUR_CALM:420,MISDIRECTED_REQUEST:421,UNPROCESSABLE_ENTITY:422,LOCKED:423,FAILED_DEPENDENCY:424,TOO_EARLY:425,UPGRADE_REQUIRED:426,PRECONDITION_REQUIRED:428,TOO_MANY_REQUESTS:429,REQUEST_HEADER_FIELDS_TOO_LARGE_UNOFFICIAL:430,REQUEST_HEADER_FIELDS_TOO_LARGE:431,LOGIN_TIMEOUT:440,NO_RESPONSE:444,RETRY_WITH:449,BLOCKED_BY_PARENTAL_CONTROL:450,UNAVAILABLE_FOR_LEGAL_REASONS:451,CLIENT_CLOSED_LOAD_BALANCED_REQUEST:460,INVALID_X_FORWARDED_FOR:463,REQUEST_HEADER_TOO_LARGE:494,SSL_CERTIFICATE_ERROR:495,SSL_CERTIFICATE_REQUIRED:496,HTTP_REQUEST_SENT_TO_HTTPS_PORT:497,INVALID_TOKEN:498,CLIENT_CLOSED_REQUEST:499,INTERNAL_SERVER_ERROR:500,NOT_IMPLEMENTED:501,BAD_GATEWAY:502,SERVICE_UNAVAILABLE:503,GATEWAY_TIMEOUT:504,HTTP_VERSION_NOT_SUPPORTED:505,VARIANT_ALSO_NEGOTIATES:506,INSUFFICIENT_STORAGE:507,LOOP_DETECTED:508,BANDWIDTH_LIMIT_EXCEEDED:509,NOT_EXTENDED:510,NETWORK_AUTHENTICATION_REQUIRED:511,WEB_SERVER_UNKNOWN_ERROR:520,WEB_SERVER_IS_DOWN:521,CONNECTION_TIMEOUT:522,ORIGIN_IS_UNREACHABLE:523,TIMEOUT_OCCURED:524,SSL_HANDSHAKE_FAILED:525,INVALID_SSL_CERTIFICATE:526,RAILGUN_ERROR:527,SITE_IS_OVERLOADED:529,SITE_IS_FROZEN:530,IDENTITY_PROVIDER_AUTHENTICATION_ERROR:561,NETWORK_READ_TIMEOUT:598,NETWORK_CONNECT_TIMEOUT:599};czQ.FINISH={SAFE:0,SAFE_WITH_CB:1,UNSAFE:2};czQ.HEADER_STATE={GENERAL:0,CONNECTION:1,CONTENT_LENGTH:2,TRANSFER_ENCODING:3,UPGRADE:4,CONNECTION_KEEP_ALIVE:5,CONNECTION_CLOSE:6,CONNECTION_UPGRADE:7,TRANSFER_ENCODING_CHUNKED:8};czQ.METHODS_HTTP=[czQ.METHODS.DELETE,czQ.METHODS.GET,czQ.METHODS.HEAD,czQ.METHODS.POST,czQ.METHODS.PUT,czQ.METHODS.CONNECT,czQ.METHODS.OPTIONS,czQ.METHODS.TRACE,czQ.METHODS.COPY,czQ.METHODS.LOCK,czQ.METHODS.MKCOL,czQ.METHODS.MOVE,czQ.METHODS.PROPFIND,czQ.METHODS.PROPPATCH,czQ.METHODS.SEARCH,czQ.METHODS.UNLOCK,czQ.METHODS.BIND,czQ.METHODS.REBIND,czQ.METHODS.UNBIND,czQ.METHODS.ACL,czQ.METHODS.REPORT,czQ.METHODS.MKACTIVITY,czQ.METHODS.CHECKOUT,czQ.METHODS.MERGE,czQ.METHODS["M-SEARCH"],czQ.METHODS.NOTIFY,czQ.METHODS.SUBSCRIBE,czQ.METHODS.UNSUBSCRIBE,czQ.METHODS.PATCH,czQ.METHODS.PURGE,czQ.METHODS.MKCALENDAR,czQ.METHODS.LINK,czQ.METHODS.UNLINK,czQ.METHODS.PRI,czQ.METHODS.SOURCE,czQ.METHODS.QUERY];czQ.METHODS_ICE=[czQ.METHODS.SOURCE];czQ.METHODS_RTSP=[czQ.METHODS.OPTIONS,czQ.METHODS.DESCRIBE,czQ.METHODS.ANNOUNCE,czQ.METHODS.SETUP,czQ.METHODS.PLAY,czQ.METHODS.PAUSE,czQ.METHODS.TEARDOWN,czQ.METHODS.GET_PARAMETER,czQ.METHODS.SET_PARAMETER,czQ.METHODS.REDIRECT,czQ.METHODS.RECORD,czQ.METHODS.FLUSH,czQ.METHODS.GET,czQ.METHODS.POST];czQ.METHOD_MAP=(0,dj0.enumToMap)(czQ.METHODS);czQ.H_METHOD_MAP=Object.fromEntries(Object.entries(czQ.METHODS).filter(([A])=>A.startsWith("H")));czQ.STATUSES_HTTP=[czQ.STATUSES.CONTINUE,czQ.STATUSES.SWITCHING_PROTOCOLS,czQ.STATUSES.PROCESSING,czQ.STATUSES.EARLY_HINTS,czQ.STATUSES.RESPONSE_IS_STALE,czQ.STATUSES.REVALIDATION_FAILED,czQ.STATUSES.DISCONNECTED_OPERATION,czQ.STATUSES.HEURISTIC_EXPIRATION,czQ.STATUSES.MISCELLANEOUS_WARNING,czQ.STATUSES.OK,czQ.STATUSES.CREATED,czQ.STATUSES.ACCEPTED,czQ.STATUSES.NON_AUTHORITATIVE_INFORMATION,czQ.STATUSES.NO_CONTENT,czQ.STATUSES.RESET_CONTENT,czQ.STATUSES.PARTIAL_CONTENT,czQ.STATUSES.MULTI_STATUS,czQ.STATUSES.ALREADY_REPORTED,czQ.STATUSES.TRANSFORMATION_APPLIED,czQ.STATUSES.IM_USED,czQ.STATUSES.MISCELLANEOUS_PERSISTENT_WARNING,czQ.STATUSES.MULTIPLE_CHOICES,czQ.STATUSES.MOVED_PERMANENTLY,czQ.STATUSES.FOUND,czQ.STATUSES.SEE_OTHER,czQ.STATUSES.NOT_MODIFIED,czQ.STATUSES.USE_PROXY,czQ.STATUSES.SWITCH_PROXY,czQ.STATUSES.TEMPORARY_REDIRECT,czQ.STATUSES.PERMANENT_REDIRECT,czQ.STATUSES.BAD_REQUEST,czQ.STATUSES.UNAUTHORIZED,czQ.STATUSES.PAYMENT_REQUIRED,czQ.STATUSES.FORBIDDEN,czQ.STATUSES.NOT_FOUND,czQ.STATUSES.METHOD_NOT_ALLOWED,czQ.STATUSES.NOT_ACCEPTABLE,czQ.STATUSES.PROXY_AUTHENTICATION_REQUIRED,czQ.STATUSES.REQUEST_TIMEOUT,czQ.STATUSES.CONFLICT,czQ.STATUSES.GONE,czQ.STATUSES.LENGTH_REQUIRED,czQ.STATUSES.PRECONDITION_FAILED,czQ.STATUSES.PAYLOAD_TOO_LARGE,czQ.STATUSES.URI_TOO_LONG,czQ.STATUSES.UNSUPPORTED_MEDIA_TYPE,czQ.STATUSES.RANGE_NOT_SATISFIABLE,czQ.STATUSES.EXPECTATION_FAILED,czQ.STATUSES.IM_A_TEAPOT,czQ.STATUSES.PAGE_EXPIRED,czQ.STATUSES.ENHANCE_YOUR_CALM,czQ.STATUSES.MISDIRECTED_REQUEST,czQ.STATUSES.UNPROCESSABLE_ENTITY,czQ.STATUSES.LOCKED,czQ.STATUSES.FAILED_DEPENDENCY,czQ.STATUSES.TOO_EARLY,czQ.STATUSES.UPGRADE_REQUIRED,czQ.STATUSES.PRECONDITION_REQUIRED,czQ.STATUSES.TOO_MANY_REQUESTS,czQ.STATUSES.REQUEST_HEADER_FIELDS_TOO_LARGE_UNOFFICIAL,czQ.STATUSES.REQUEST_HEADER_FIELDS_TOO_LARGE,czQ.STATUSES.LOGIN_TIMEOUT,czQ.STATUSES.NO_RESPONSE,czQ.STATUSES.RETRY_WITH,czQ.STATUSES.BLOCKED_BY_PARENTAL_CONTROL,czQ.STATUSES.UNAVAILABLE_FOR_LEGAL_REASONS,czQ.STATUSES.CLIENT_CLOSED_LOAD_BALANCED_REQUEST,czQ.STATUSES.INVALID_X_FORWARDED_FOR,czQ.STATUSES.REQUEST_HEADER_TOO_LARGE,czQ.STATUSES.SSL_CERTIFICATE_ERROR,czQ.STATUSES.SSL_CERTIFICATE_REQUIRED,czQ.STATUSES.HTTP_REQUEST_SENT_TO_HTTPS_PORT,czQ.STATUSES.INVALID_TOKEN,czQ.STATUSES.CLIENT_CLOSED_REQUEST,czQ.STATUSES.INTERNAL_SERVER_ERROR,czQ.STATUSES.NOT_IMPLEMENTED,czQ.STATUSES.BAD_GATEWAY,czQ.STATUSES.SERVICE_UNAVAILABLE,czQ.STATUSES.GATEWAY_TIMEOUT,czQ.STATUSES.HTTP_VERSION_NOT_SUPPORTED,czQ.STATUSES.VARIANT_ALSO_NEGOTIATES,czQ.STATUSES.INSUFFICIENT_STORAGE,czQ.STATUSES.LOOP_DETECTED,czQ.STATUSES.BANDWIDTH_LIMIT_EXCEEDED,czQ.STATUSES.NOT_EXTENDED,czQ.STATUSES.NETWORK_AUTHENTICATION_REQUIRED,czQ.STATUSES.WEB_SERVER_UNKNOWN_ERROR,czQ.STATUSES.WEB_SERVER_IS_DOWN,czQ.STATUSES.CONNECTION_TIMEOUT,czQ.STATUSES.ORIGIN_IS_UNREACHABLE,czQ.STATUSES.TIMEOUT_OCCURED,czQ.STATUSES.SSL_HANDSHAKE_FAILED,czQ.STATUSES.INVALID_SSL_CERTIFICATE,czQ.STATUSES.RAILGUN_ERROR,czQ.STATUSES.SITE_IS_OVERLOADED,czQ.STATUSES.SITE_IS_FROZEN,czQ.STATUSES.IDENTITY_PROVIDER_AUTHENTICATION_ERROR,czQ.STATUSES.NETWORK_READ_TIMEOUT,czQ.STATUSES.NETWORK_CONNECT_TIMEOUT];czQ.ALPHA=[];for(let A=65;A<=90;A++)czQ.ALPHA.push(String.fromCharCode(A)),czQ.ALPHA.push(String.fromCharCode(A+32));czQ.NUM_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9};czQ.HEX_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15};czQ.NUM=["0","1","2","3","4","5","6","7","8","9"];czQ.ALPHANUM=czQ.ALPHA.concat(czQ.NUM);czQ.MARK=["-","_",".","!","~","*","'","(",")"];czQ.USERINFO_CHARS=czQ.ALPHANUM.concat(czQ.MARK).concat(["%",";",":","&","=","+","$",","]);czQ.URL_CHAR=["!",'"',"$","%","&","'","(",")","*","+",",","-",".","/",":",";","<","=",">","@","[","\\","]","^","_","`","{","|","}","~"].concat(czQ.ALPHANUM);czQ.HEX=czQ.NUM.concat(["a","b","c","d","e","f","A","B","C","D","E","F"]);czQ.TOKEN=["!","#","$","%","&","'","*","+","-",".","^","_","`","|","~"].concat(czQ.ALPHANUM);czQ.HEADER_CHARS=["\t"];for(let A=32;A<=255;A++)if(A!==127)czQ.HEADER_CHARS.push(A);czQ.CONNECTION_TOKEN_CHARS=czQ.HEADER_CHARS.filter((A)=>A!==44);czQ.QUOTED_STRING=["\t"," "];for(let A=33;A<=255;A++)if(A!==34&&A!==92)czQ.QUOTED_STRING.push(A);czQ.HTAB_SP_VCHAR_OBS_TEXT=["\t"," "];for(let A=33;A<=126;A++)czQ.HTAB_SP_VCHAR_OBS_TEXT.push(A);for(let A=128;A<=255;A++)czQ.HTAB_SP_VCHAR_OBS_TEXT.push(A);czQ.MAJOR=czQ.NUM_MAP;czQ.MINOR=czQ.MAJOR;czQ.SPECIAL_HEADERS={connection:czQ.HEADER_STATE.CONNECTION,"content-length":czQ.HEADER_STATE.CONTENT_LENGTH,"proxy-connection":czQ.HEADER_STATE.CONNECTION,"transfer-encoding":czQ.HEADER_STATE.TRANSFER_ENCODING,upgrade:czQ.HEADER_STATE.UPGRADE};czQ.default={ERROR:czQ.ERROR,TYPE:czQ.TYPE,FLAGS:czQ.FLAGS,LENIENT_FLAGS:czQ.LENIENT_FLAGS,METHODS:czQ.METHODS,STATUSES:czQ.STATUSES,FINISH:czQ.FINISH,HEADER_STATE:czQ.HEADER_STATE,ALPHA:czQ.ALPHA,NUM_MAP:czQ.NUM_MAP,HEX_MAP:czQ.HEX_MAP,NUM:czQ.NUM,ALPHANUM:czQ.ALPHANUM,MARK:czQ.MARK,USERINFO_CHARS:czQ.USERINFO_CHARS,URL_CHAR:czQ.URL_CHAR,HEX:czQ.HEX,TOKEN:czQ.TOKEN,HEADER_CHARS:czQ.HEADER_CHARS,CONNECTION_TOKEN_CHARS:czQ.CONNECTION_TOKEN_CHARS,QUOTED_STRING:czQ.QUOTED_STRING,HTAB_SP_VCHAR_OBS_TEXT:czQ.HTAB_SP_VCHAR_OBS_TEXT,MAJOR:czQ.MAJOR,MINOR:czQ.MINOR,SPECIAL_HEADERS:czQ.SPECIAL_HEADERS,METHODS_HTTP:czQ.METHODS_HTTP,METHODS_ICE:czQ.METHODS_ICE,METHODS_RTSP:czQ.METHODS_RTSP,METHOD_MAP:czQ.METHOD_MAP,H_METHOD_MAP:czQ.H_METHOD_MAP,STATUSES_HTTP:czQ.STATUSES_HTTP}});var Or=R((fsY,F2Q)=>{var{Buffer:lj0}=u("node:buffer"),jr;Object.defineProperty(F2Q,"exports",{get:()=>{return jr?jr:jr=lj0.from("AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAn9/AGABfwBgBH9/f38Bf2AAAGADf39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQAEA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAAzU0BQYAAAMAAAAAAAADAQMAAwMDAAACAAAAAAICAgICAgICAgIBAQEBAQEBAQEBAwAAAwAAAAQFAXABExMFAwEAAgYIAX8BQcDZBAsHxQcoBm1lbW9yeQIAC19pbml0aWFsaXplAAgZX19pbmRpcmVjdF9mdW5jdGlvbl90YWJsZQEAC2xsaHR0cF9pbml0AAkYbGxodHRwX3Nob3VsZF9rZWVwX2FsaXZlADcMbGxodHRwX2FsbG9jAAsGbWFsbG9jADkLbGxodHRwX2ZyZWUADARmcmVlAAwPbGxodHRwX2dldF90eXBlAA0VbGxodHRwX2dldF9odHRwX21ham9yAA4VbGxodHRwX2dldF9odHRwX21pbm9yAA8RbGxodHRwX2dldF9tZXRob2QAEBZsbGh0dHBfZ2V0X3N0YXR1c19jb2RlABESbGxodHRwX2dldF91cGdyYWRlABIMbGxodHRwX3Jlc2V0ABMObGxodHRwX2V4ZWN1dGUAFBRsbGh0dHBfc2V0dGluZ3NfaW5pdAAVDWxsaHR0cF9maW5pc2gAFgxsbGh0dHBfcGF1c2UAFw1sbGh0dHBfcmVzdW1lABgbbGxodHRwX3Jlc3VtZV9hZnRlcl91cGdyYWRlABkQbGxodHRwX2dldF9lcnJubwAaF2xsaHR0cF9nZXRfZXJyb3JfcmVhc29uABsXbGxodHRwX3NldF9lcnJvcl9yZWFzb24AHBRsbGh0dHBfZ2V0X2Vycm9yX3BvcwAdEWxsaHR0cF9lcnJub19uYW1lAB4SbGxodHRwX21ldGhvZF9uYW1lAB8SbGxodHRwX3N0YXR1c19uYW1lACAabGxodHRw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AXRrQT5qIQILIAEgAjYCHCABQgA3AhAgAkECdEH01wBqIQACQEHI1QAoAgAiA0EBIAJ0IgdxRQRAIAAgATYCAEHI1QAgAyAHcjYCACABIAA2AhggASABNgIIIAEgATYCDAwBCyAEQRkgAkEBdmtBACACQR9HG3QhAiAAKAIAIQACQANAIAAiAygCBEF4cSAERg0BIAJBHXYhACACQQF0IQIgAyAAQQRxakEQaiIHKAIAIgANAAsgByABNgIAIAEgAzYCGCABIAE2AgwgASABNgIIDAELIAMoAggiACABNgIMIAMgATYCCCABQQA2AhggASADNgIMIAEgADYCCAtB5NUAQeTVACgCAEEBayIAQX8gABs2AgALCwcAIAAtACgLBwAgAC0AKgsHACAALQArCwcAIAAtACkLBwAgAC8BNAsHACAALQAwC0ABBH8gACgCGCEBIAAvAS4hAiAALQAoIQMgACgCOCEEIAAQOCAAIAQ2AjggACADOgAoIAAgAjsBLiAAIAE2AhgL5YUCAgd/A34gASACaiEEAkAgACIDKAIMIgANACADKAIEBEAgAyABNgIECyMAQRBrIgkkAAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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C0HjAQwHC0HXAQwGC0HYAQwFC0HZAQwEC0HaAQwDC0HbAQwCC0HdAQwBC0HcAQshAgNAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCADAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQAJ/AkACQAJAAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAMCfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAg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ogKiAqICogKiAqICogKiAqICogKiAqICogIAogILIAQgAUEBaiIBRw0AC0HJACECDOwCCyABQQFqIQEgA0Evai0AAEEBcQ2lAiADQQA2AhwgAyABNgIUIANBlxA2AhAgA0EKNgIMQQAhAgzrAgsgASAERwRAA0AgAS0AAEEgRw0VIAQgAUEBaiIBRw0AC0H4ACECDOsCC0H4ACECDOoCCyADQQI6ACgMOAtBACECIANBADYCHCADQb8LNgIQIANBAjYCDCADIAFBAWo2AhQM6AILQQAhAgzOAgtBDSECDM0CC0ETIQIMzAILQRUhAgzLAgtBFiECDMoCC0EYIQIMyQILQRkhAgzIAgtBGiECDMcCC0EbIQIMxgILQRwhAgzFAgtBHSECDMQCC0EeIQIMwwILQR8hAgzCAgtBICECDMECC0EiIQIMwAILQSMhAgy/AgtBJSECDL4CC0HlACECDL0CCyADQT02AhwgAyABNgIUIAMgADYCDEEAIQIM1QILIANBGzYCHCADIAE2AhQgA0GkHDYCECADQRU2AgxBACECDNQCCyADQSA2AhwgAyABNgIUIANBmBo2AhAgA0EVNgIMQQAhAgzTAgsgA0ETNgIcIAMgATYCFCADQZgaNgIQIANBFTYCDEEAIQIM0gILIANBCzYCHCADIAE2AhQgA0GYGjYCECADQRU2AgxBACECDNECCyADQRA2AhwgAyABNgIUIANBmBo2AhAgA0EVNgIMQQAhAgzQAgsgA0EgNgIcIAMgATYCFCADQaQcNgIQIANBFTYCDEEAIQIMzwILIANBCzYCHCADIAE2AhQgA0GkHDYCECADQRU2AgxBACECDM4CCyADQQw2AhwgAyABNgIUIANBpBw2AhAgA0EVNgIMQQAhAgzNAgtBACECIANBADYCHCADIAE2AhQgA0HdDjYCECADQRI2AgwMzAILAkADQAJAIAEtAABBCmsOBAACAgACCyAEIAFBAWoiAUcNAAtB/QEhAgzMAgsCQAJAIAMtADZBAUcNAEEAIQACQCADKAI4IgJFDQAgAigCYCICRQ0AIAMgAhEAACEACyAARQ0AIABBFUcNASADQfwBNgIcIAMgATYCFCADQdwZNgIQIANBFTYCDEEAIQIMzQILQdwBIQIMswILIANBADYCHCADIAE2AhQgA0H5CzYCECADQR82AgxBACECDMsCCwJAAkAgAy0AKEEBaw4CBAEAC0HbASECDLICC0HUASECDLECCyADQQI6ADFBACEAAkAgAygCOCICRQ0AIAIoAgAiAkUNACADIAIRAAAhAAsgAEUEQEHdASECDLECCyAAQRVHBEAgA0EANgIcIAMgATYCFCADQbQMNgIQIANBEDYCDEEAIQIMygILIANB+wE2AhwgAyABNgIUIANBgRo2AhAgA0EVNgIMQQAhAgzJAgsgASAERgRAQfoBIQIMyQILIAEtAABByABGDQEgA0EBOgAoC0HAASECDK4CC0HaASECDK0CCyABIARHBEAgA0EMNgIIIAMgATYCBEHZASECDK0CC0H5ASECDMUCCyABIARGBEBB+AEhAgzFAgsgAS0AAEHIAEcNBCABQQFqIQFB2AEhAgyrAgsgASAERgRAQfcBIQIMxAILAkACQCABLQAAQcUAaw4QAAUFBQUFBQUFBQUFBQUFAQULIAFBAWohAUHWASECDKsCCyABQQFqIQFB1wEhAgyqAgtB9gEhAiABIARGDcICIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQbrVAGotAABHDQMgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADMMCCyADKAIEIQAgA0IANwMAIAMgACAGQQFqIgEQLiIARQRAQeMBIQIMqgILIANB9QE2AhwgAyABNgIUIAMgADYCDEEAIQIMwgILQfQBIQIgASAERg3BAiADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEG41QBqLQAARw0CIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzCAgsgA0GBBDsBKCADKAIEIQAgA0IANwMAIAMgACAGQQFqIgEQLiIADQMMAgsgA0EANgIAC0EAIQIgA0EANgIcIAMgATYCFCADQeUfNgIQIANBCDYCDAy/AgtB1QEhAgylAgsgA0HzATYCHCADIAE2AhQgAyAANgIMQQAhAgy9AgtBACEAAkAgAygCOCICRQ0AIAIoAkAiAkUNACADIAIRAAAhAAsgAEUNbiAAQRVHBEAgA0EANgIcIAMgATYCFCADQYIPNgIQIANBIDYCDEEAIQIMvQILIANBjwE2AhwgAyABNgIUIANB7Bs2AhAgA0EVNgIMQQAhAgy8AgsgASAERwRAIANBDTYCCCADIAE2AgRB0wEhAgyjAgtB8gEhAgy7AgsgASAERgRAQfEBIQIMuwILAkACQAJAIAEtAABByABrDgsAAQgICAgICAgIAggLIAFBAWohAUHQASECDKMCCyABQQFqIQFB0QEhAgyiAgsgAUEBaiEBQdIBIQIMoQILQfABIQIgASAERg25AiADKAIAIgAgBCABa2ohBiABIABrQQJqIQUDQCABLQAAIABBtdUAai0AAEcNBCAAQQJGDQMgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAY2AgAMuQILQe8BIQIgASAERg24AiADKAIAIgAgBCABa2ohBiABIABrQQFqIQUDQCABLQAAIABBs9UAai0AAEcNAyAAQQFGDQIgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAY2AgAMuAILQe4BIQIgASAERg23AiADKAIAIgAgBCABa2ohBiABIABrQQJqIQUDQCABLQAAIABBsNUAai0AAEcNAiAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAY2AgAMtwILIAMoAgQhACADQgA3AwAgAyAAIAVBAWoiARArIgBFDQIgA0HsATYCHCADIAE2AhQgAyAANgIMQQAhAgy2AgsgA0EANgIACyADKAIEIQAgA0EANgIEIAMgACABECsiAEUNnAIgA0HtATYCHCADIAE2AhQgAyAANgIMQQAhAgy0AgtBzwEhAgyaAgtBACEAAkAgAygCOCICRQ0AIAIoAjQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0HqDTYCECADQSY2AgxBACECDLQCC0HOASECDJoCCyADQesBNgIcIAMgATYCFCADQYAbNgIQIANBFTYCDEEAIQIMsgILIAEgBEYEQEHrASECDLICCyABLQAAQS9GBEAgAUEBaiEBDAELIANBADYCHCADIAE2AhQgA0GyODYCECADQQg2AgxBACECDLECC0HNASECDJcCCyABIARHBEAgA0EONgIIIAMgATYCBEHMASECDJcCC0HqASECDK8CCyABIARGBEBB6QEhAgyvAgsgAS0AAEEwayIAQf8BcUEKSQRAIAMgADoAKiABQQFqIQFBywEhAgyWAgsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDZcCIANB6AE2AhwgAyABNgIUIAMgADYCDEEAIQIMrgILIAEgBEYEQEHnASECDK4CCwJAIAEtAABBLkYEQCABQQFqIQEMAQsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDZgCIANB5gE2AhwgAyABNgIUIAMgADYCDEEAIQIMrgILQcoBIQIMlAILIAEgBEYEQEHlASECDK0CC0EAIQBBASEFQQEhB0EAIQICQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQCABLQAAQTBrDgoKCQABAgMEBQYICwtBAgwGC0EDDAULQQQMBAtBBQwDC0EGDAILQQcMAQtBCAshAkEAIQVBACEHDAILQQkhAkEBIQBBACEFQQAhBwwBC0EAIQVBASECCyADIAI6ACsgAUEBaiEBAkACQCADLQAuQRBxDQACQAJAAkAgAy0AKg4DAQACBAsgB0UNAwwCCyAADQEMAgsgBUUNAQsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDQIgA0HiATYCHCADIAE2AhQgAyAANgIMQQAhAgyvAgsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDZoCIANB4wE2AhwgAyABNgIUIAMgADYCDEEAIQIMrgILIAMoAgQhACADQQA2AgQgAyAAIAEQLyIARQ2YAiADQeQBNgIcIAMgATYCFCADIAA2AgwMrQILQckBIQIMkwILQQAhAAJAIAMoAjgiAkUNACACKAJEIgJFDQAgAyACEQAAIQALAkAgAARAIABBFUYNASADQQA2AhwgAyABNgIUIANBpA02AhAgA0EhNgIMQQAhAgytAgtByAEhAgyTAgsgA0HhATYCHCADIAE2AhQgA0HQGjYCECADQRU2AgxBACECDKsCCyABIARGBEBB4QEhAgyrAgsCQCABLQAAQSBGBEAgA0EAOwE0IAFBAWohAQwBCyADQQA2AhwgAyABNgIUIANBmRE2AhAgA0EJNgIMQQAhAgyrAgtBxwEhAgyRAgsgASAERgRAQeABIQIMqgILAkAgAS0AAEEwa0H/AXEiAkEKSQRAIAFBAWohAQJAIAMvATQiAEGZM0sNACADIABBCmwiADsBNCAAQf7/A3EgAkH//wNzSw0AIAMgACACajsBNAwCC0EAIQIgA0EANgIcIAMgATYCFCADQZUeNgIQIANBDTYCDAyrAgsgA0EANgIcIAMgATYCFCADQZUeNgIQIANBDTYCDEEAIQIMqgILQcYBIQIMkAILIAEgBEYEQEHfASECDKkCCwJAIAEtAABBMGtB/wFxIgJBCkkEQCABQQFqIQECQCADLwE0IgBBmTNLDQAgAyAAQQpsIgA7ATQgAEH+/wNxIAJB//8Dc0sNACADIAAgAmo7ATQMAgtBACECIANBADYCHCADIAE2AhQgA0GVHjYCECADQQ02AgwMqgILIANBADYCHCADIAE2AhQgA0GVHjYCECADQQ02AgxBACECDKkCC0HFASECDI8CCyABIARGBEBB3gEhAgyoAgsCQCABLQAAQTBrQf8BcSICQQpJBEAgAUEBaiEBAkAgAy8BNCIAQZkzSw0AIAMgAEEKbCIAOwE0IABB/v8DcSACQf//A3NLDQAgAyAAIAJqOwE0DAILQQAhAiADQQA2AhwgAyABNgIUIANBlR42AhAgA0ENNgIMDKkCCyADQQA2AhwgAyABNgIUIANBlR42AhAgA0ENNgIMQQAhAgyoAgtBxAEhAgyOAgsgASAERgRAQd0BIQIMpwILAkACQAJAAkAgAS0AAEEKaw4XAgMDAAMDAwMDAwMDAwMDAwMDAwMDAwEDCyABQQFqDAULIAFBAWohAUHDASECDI8CCyABQQFqIQEgA0Evai0AAEEBcQ0IIANBADYCHCADIAE2AhQgA0GNCzYCECADQQ02AgxBACECDKcCCyADQQA2AhwgAyABNgIUIANBjQs2AhAgA0ENNgIMQQAhAgymAgsgASAERwRAIANBDzYCCCADIAE2AgRBASECDI0CC0HcASECDKUCCwJAAkADQAJAIAEtAABBCmsOBAIAAAMACyAEIAFBAWoiAUcNAAtB2wEhAgymAgsgAygCBCEAIANBADYCBCADIAAgARAtIgBFBEAgAUEBaiEBDAQLIANB2gE2AhwgAyAANgIMIAMgAUEBajYCFEEAIQIMpQILIAMoAgQhACADQQA2AgQgAyAAIAEQLSIADQEgAUEBagshAUHBASECDIoCCyADQdkBNgIcIAMgADYCDCADIAFBAWo2AhRBACECDKICC0HCASECDIgCCyADQS9qLQAAQQFxDQEgA0EANgIcIAMgATYCFCADQeQcNgIQIANBGTYCDEEAIQIMoAILIAEgBEYEQEHZASEC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IAFBAWohAUGeASECDOQBCyABQQFqIQFBnwEhAgzjAQtBtwEhAiABIARGDfsBIAMoAgAiACAEIAFraiEFIAEgAGtBA2ohBgJAA0AgAS0AACAAQezUAGotAABHDSggAEEDRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADPwBCyADQQA2AgAgBkEBaiEBQQ0MKAtBtgEhAiABIARGDfoBIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQaHVAGotAABHDScgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADPsBCyADQQA2AgAgBkEBaiEBQQwMJwtBtQEhAiABIARGDfkBIAMoAgAiACAEIAFraiEFIAEgAGtBAWohBgJAA0AgAS0AACAAQerUAGotAABHDSYgAEEBRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADPoBCyADQQA2AgAgBkEBaiEBQQMMJgtBtAEhAiABIARGDfgBIAMoAgAiACAEIAFraiEFIAEgAGtBAWohBgJAA0AgAS0AACAAQejUAGotAABHDSUgAEEBRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADPkBCyADQQA2AgAgBkEBaiEBQSYMJQsgASAERgRAQbMBIQIM+AELAkACQCABLQAAQdQAaw4CAAEnCyABQQFqIQFBmQEhAgzfAQsgAUEBaiEBQZoBIQIM3gELQbIBIQIgASAERg32ASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHm1ABqLQAARw0jIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAz3AQsgA0EANgIAIAZBAWohAUEnDCMLQbEBIQIgASAERg31ASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHk1ABqLQAARw0iIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAz2AQsgA0EANgIAIAZBAWohAUEcDCILQbABIQIgASAERg30ASADKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEHe1ABqLQAARw0hIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAz1AQsgA0EANgIAIAZBAWohAUEGDCELQa8BIQIgASAERg3zASADKAIAIgAgBCABa2ohBSABIABrQQRqIQYCQANAIAEtAAAgAEHZ1ABqLQAARw0gIABBBEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAz0AQsgA0EANgIAIAZBAWohAUEZDCALIAEgBEYEQEGuASECDPMBCwJAAkACQAJAIAEtAABBLWsOIwAkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJAEkJCQkJAIkJCQDJAsgAUEBaiEBQY4BIQIM3AELIAFBAWohAUGPASECDNsBCyABQQFqIQFBlAEhAgzaAQsgAUEBaiEBQZUBIQIM2QELQa0BIQIgASAERg3xASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHX1ABqLQAARw0eIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzyAQsgA0EANgIAIAZBAWohAUELDB4LIAEgBEYEQEGsASECDPEBCwJAAkAgAS0AAEHBAGsOAwAgASALIAFBAWohAUGQASECDNgBCyABQQFqIQFBkwEhAgzXAQsgASAERgRAQasBIQIM8AELAkACQCABLQAAQcEAaw4PAB8fHx8fHx8fHx8fHx8BHwsgAUEBaiEBQZEBIQIM1wELIAFBAWohAUGSASECDNYBCyABIARGBEBBqgEhAgzvAQsgAS0AAEHMAEcNHCABQQFqIQFBCgwbC0GpASECIAEgBEYN7QEgAygCACIAIAQgAWtqIQUgASAAa0EFaiEGAkADQCABLQAAIABB0dQAai0AAEcNGiAAQQVGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM7gELIANBADYCACAGQQFqIQFBHgwaC0GoASECIAEgBEYN7AEgAygCACIAIAQgAWtqIQUgASAAa0EGaiEGAkADQCABLQAAIABBytQAai0AAEcNGSAAQQZGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM7QELIANBADYCACAGQQFqIQFBFQwZC0GnASECIAEgBEYN6wEgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBx9QAai0AAEcNGCAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM7AELIANBADYCACAGQQFqIQFBFwwYC0GmASECIAEgBEYN6gEgAygCACIAIAQgAWtqIQUgASAAa0EFaiEGAkADQCABLQAAIABBwdQAai0AAEcNFyAAQQVGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM6wELIANBADYCACAGQQFqIQFBGAwXCyABIARGBEBBpQEhAgzqAQsCQAJAIAEtAABByQBrDgcAGRkZGRkBGQsgAUEBaiEBQYsBIQIM0QELIAFBAWohAUGMASECDNABC0GkASECIAEgBEYN6AEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGAkADQCABLQAAIABBptUAai0AAEcNFSAAQQFGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM6QELIANBADYCACAGQQFqIQFBCQwVC0GjASECIAEgBEYN5wEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGAkADQCABLQAAIABBpNUAai0AAEcNFCAAQQFGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM6AELIANBADYCACAGQQFqIQFBHwwUC0GiASECIAEgBEYN5gEgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBvtQAai0AAEcNEyAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM5wELIANBADYCACAGQQFqIQFBAgwTC0GhASECIAEgBEYN5QEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGA0AgAS0AACAAQbzUAGotAABHDREgAEEBRg0CIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADOUBCyABIARGBEBBoAEhAgzlAQtBASABLQAAQd8ARw0RGiABQQFqIQFBhwEhAgzLAQsgA0EANgIAIAZBAWohAUGIASECDMoBC0GfASECIAEgBEYN4gEgAygCACIAIAQgAWtqIQUgASAAa0EIaiEGAkADQCABLQAAIABBhNUAai0AAEcNDyAAQQhGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM4wELIANBADYCACAGQQFqIQFBKQwPC0GeASECIAEgBEYN4QEgAygCACIAIAQgAWtqIQUgASAAa0EDaiEGAkADQCABLQAAIABBuNQAai0AAEcNDiAAQQNGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM4gELIANBADYCACAGQQFqIQFBLQwOCyABIARGBEBBnQEhAgzhAQsgAS0AAEHFAEcNDiABQQFqIQFBhAEhAgzHAQsgASAERgRAQZwBIQIM4AELAkACQCABLQAAQcwAaw4IAA8PDw8PDwEPCyABQQFqIQFBggEhAgzHAQsgAUEBaiEBQYMBIQIMxgELQZsBIQIgASAERg3eASADKAIAIgAgBCABa2ohBSABIABrQQRqIQYCQANAIAEtAAAgAEGz1ABqLQAARw0LIABBBEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzfAQsgA0EANgIAIAZBAWohAUEjDAsLQZoBIQIgASAERg3dASADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGw1ABqLQAARw0KIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzeAQsgA0EANgIAIAZBAWohAUEADAoLIAEgBEYEQEGZASECDN0BCwJAAkAgAS0AAEHIAGsOCAAMDAwMDAwBDAsgAUEBaiEBQf0AIQIMxAELIAFBAWohAUGAASECDMMBCyABIARGBEBBmAEhAgzcAQsCQAJAIAEtAABBzgBrDgMACwELCyABQQFqIQFB/gAhAgzDAQsgAUEBaiEBQf8AIQIMwgELIAEgBEYEQEGXASECDNsBCyABLQAAQdkARw0IIAFBAWohAUEIDAcLQZYBIQIgASAERg3ZASADKAIAIgAgBCABa2ohBSABIABrQQNqIQYCQANAIAEtAAAgAEGs1ABqLQAARw0GIABBA0YNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzaAQsgA0EANgIAIAZBAWohAUEFDAYLQZUBIQIgASAERg3YASADKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEGm1ABqLQAARw0FIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzZAQsgA0EANgIAIAZBAWohAUEWDAULQZQBIQIgASAERg3XASADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGh1QBqLQAARw0EIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzYAQsgA0EANgIAIAZBAWohAUEQDAQLIAEgBEYEQEGTASECDNcBCwJAAkAgAS0AAEHDAGsODAAGBgYGBgYGBgYGAQYLIAFBAWohAUH5ACECDL4BCyABQQFqIQFB+gAhAgy9AQtBkgEhAiABIARGDdUBIAMoAgAiACAEIAFraiEFIAEgAGtBBWohBgJAA0AgAS0AACAAQaDUAGotAABHDQIgAEEFRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADNYBCyADQQA2AgAgBkEBaiEBQSQMAgsgA0EANgIADAILIAEgBEYEQEGRASECDNQBCyABLQAAQcwARw0BIAFBAWohAUETCzoAKSADKAIEIQAgA0EANgIEIAMgACABEC4iAA0CDAELQQAhAiADQQA2AhwgAyABNgIUIANB/h82AhAgA0EGNgIMDNEBC0H4ACECDLcBCyADQZABNgIcIAMgATYCFCADIAA2AgxBACECDM8BC0EAIQACQCADKAI4IgJFDQAgAigCQCICRQ0AIAMgAhEAACEACyAARQ0AIABBFUYNASADQQA2AhwgAyABNgIUIANBgg82AhAgA0EgNgIMQQAhAgzOAQtB9wAhAgy0AQsgA0GPATYCHCADIAE2AhQgA0HsGzYCECADQRU2AgxBACECDMwBCyABIARGBEBBjwEhAgzMAQsCQCABLQAAQSBGBEAgAUEBaiEBDAELIANBADYCHCADIAE2AhQgA0GbHzYCECADQQY2AgxBACECDMwBC0ECIQIMsgELA0AgAS0AAEEgRw0CIAQgAUEBaiIBRw0AC0GOASECDMoBCyABIARGBEBBjQEhAgzKAQsCQCABLQAAQQlrDgRKAABKAAtB9QAhAgywAQsgAy0AKUEFRgRAQfYAIQIMsAELQfQAIQIMrwELIAEgBEYEQEGMASECDMgBCyADQRA2AgggAyABNgIEDAoLIAEgBEYEQEGLASECDMcBCwJAIAEtAABBCWsOBEcAAEcAC0HzACECDK0BCyABIARHBEAgA0EQNgIIIAMgATYCBEHxACECDK0BC0GKASECDMUBCwJAIAEgBEcEQANAIAEtAABBoNAAai0AACIAQQNHBEACQCAAQQFrDgJJAAQLQfAAIQIMrwELIAQgAUEBaiIBRw0AC0GIASEC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BCABQQFqIgFHDQALQfsAIQIMpwELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0DIANB2wA2AhwgAyABNgIUIAMgADYCDEEAIQIMpgELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0DIANB3QA2AhwgAyABNgIUIAMgADYCDEEAIQIMpQELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0DIANB+gA2AhwgAyABNgIUIAMgADYCDEEAIQIMpAELIANBADYCHCADIAE2AhQgA0G8CjYCECADQQc2AgxBACECDKMBC0HPACECDIkBC0HRACECDIgBC0HnACECDIcBCyABIARGBEBB+gAhAgygAQsCQCABLQAAQQlrDgQgAAAgAAsgAUEBaiEBQeYAIQIMhgELIAEgBEYEQEH5ACECDJ8BCwJAIAEtAABBCWsOBB8AAB8AC0EAIQACQCADKAI4IgJFDQAgAigCOCICRQ0AIAMgAhEAACEACyAARQRAQeIBIQIMhgELIABBFUcEQCADQQA2AhwgAyABNgIUIANByQ02AhAgA0EaNgIMQQAhAgyfAQsgA0H4ADYCHCADIAE2AhQgA0HqGjYCECADQRU2AgxBACECDJ4BCyABIARHBEAgA0ENNgIIIAMgATYCBEHkACECDIUBC0H3ACECDJ0BCyABIARGBEBB9gAhAgydAQsCQAJAAkAgAS0AAEHIAGsOCwABCwsLCwsLCwsCCwsgAUEBaiEBQd0AIQIMhQELIAFBAWohAUHgACECDIQBCyABQQFqIQFB4wAhAgyDAQtB9QAhAiABIARGDZsBIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQbXVAGotAABHDQggAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADJwBCyADKAIEIQAgA0IANwMAIAMgACAGQQFqIgEQKyIABEAgA0H0ADYCHCADIAE2AhQgAyAANgIMQQAhAgycAQtB4gAhAgyCAQtBACEAAkAgAygCOCICRQ0AIAIoAjQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0HqDTYCECADQSY2AgxBACECDJwBC0HhACECDIIBCyADQfMANgIcIAMgATYCFCADQYAbNgIQIANBFTYCDEEAIQIMmgELIAMtACkiAEEja0ELSQ0JAkAgAEEGSw0AQQEgAHRBygBxRQ0ADAoLQQAhAiADQQA2AhwgAyABNgIUIANB7Qk2AhAgA0EINgIMDJkBC0HyACECIAEgBEYNmAEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGAkADQCABLQAAIABBs9UAai0AAEcNBSAAQQFGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMmQELIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARArIgAEQCADQfEANgIcIAMgATYCFCADIAA2AgxBACECDJkBC0HfACECDH8LQQAhAAJAIAMoAjgiAkUNACACKAI0IgJFDQAgAyACEQAAIQALAkAgAARAIABBFUYNASADQQA2AhwgAyABNgIUIANB6g02AhAgA0EmNgIMQQAhAgyZAQtB3gAhAgx/CyADQfAANgIcIAMgATYCFCADQYAbNgIQIANBFTYCDEEAIQIMlwELIAMtAClBIUYNBiADQQA2AhwgAyABNgIUIANBkQo2AhAgA0EINgIMQQAhAgyWAQtB7wAhAiABIARGDZUBIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQbDVAGotAABHDQIgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADJYBCyADKAIEIQAgA0IANwMAIAMgACAGQQFqIgEQKyIARQ0CIANB7QA2AhwgAyABNgIUIAMgADYCDEEAIQIMlQELIANBADYCAAsgAygCBCEAIANBADYCBCADIAAgARArIgBFDYABIANB7gA2AhwgAyABNgIUIAMgADYCDEEAIQIMkwELQdwAIQIMeQtBACEAAkAgAygCOCICRQ0AIAIoAjQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0HqDTYCECADQSY2AgxBACECDJMBC0HbACECDHkLIANB7AA2AhwgAyABNgIUIANBgBs2AhAgA0EVNgIMQQAhAgyRAQsgAy0AKSIAQSNJDQAgAEEuRg0AIANBADYCHCADIAE2AhQgA0HJCTYCECADQQg2AgxBACECDJABC0HaACECDHYLIAEgBEYEQEHrACECDI8BCwJAIAEtAABBL0YEQCABQQFqIQEMAQsgA0EANgIcIAMgATYCFCADQbI4NgIQIANBCDYCDEEAIQIMjwELQdkAIQIMdQsgASAERwRAIANBDjYCCCADIAE2AgRB2AAhAgx1C0HqACECDI0BCyABIARGBEBB6QAhAgyNAQsgAS0AAEEwayIAQf8BcUEKSQRAIAMgADoAKiABQQFqIQFB1wAhAgx0CyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNeiADQegANgIcIAMgATYCFCADIAA2AgxBACECDIwBCyABIARGBEBB5wAhAgyMAQsCQCABLQAAQS5GBEAgAUEBaiEBDAELIAMoAgQhACADQQA2AgQgAyAAIAEQLyIARQ17IANB5gA2AhwgAyABNgIUIAMgADYCDEEAIQIMjAELQdYAIQIMcgsgASAERgRAQeUAIQIMiwELQQAhAEEBIQVBASEHQQAhAgJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAIAEtAABBMGsOCgoJAAECAwQFBggLC0ECDAYLQQMMBQtBBAwEC0EFDAMLQQYMAgtBBwwBC0EICyECQQAhBUEAIQcMAgtBCSECQQEhAEEAIQVBACEHDAELQQAhBUEBIQILIAMgAjoAKyABQQFqIQECQAJAIAMtAC5BEHENAAJAAkACQCADLQAqDgMBAAIECyAHRQ0DDAILIAANAQwCCyAFRQ0BCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNAiADQeIANgIcIAMgATYCFCADIAA2AgxBACECDI0BCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNfSADQeMANgIcIAMgATYCFCADIAA2AgxBACECDIwBCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNeyADQeQANgIcIAMgATYCFCADIAA2AgwMiwELQdQAIQIMcQsgAy0AKUEiRg2GAUHTACECDHALQQAhAAJAIAMoAjgiAkUNACACKAJEIgJFDQAgAyACEQAAIQALIABFBEBB1QAhAgxwCyAAQRVHBEAgA0EANgIcIAMgATYCFCADQaQNNgIQIANBITYCDEEAIQIMiQELIANB4QA2AhwgAyABNgIUIANB0Bo2AhAgA0EVNgIMQQAhAgyIAQsgASAERgRAQeAAIQIMiAELAkACQAJAAkACQCABLQAAQQprDgQBBAQABAsgAUEBaiEBDAELIAFBAWohASADQS9qLQAAQQFxRQ0BC0HSACECDHALIANBADYCHCADIAE2AhQgA0G2ETYCECADQQk2AgxBACECDIgBCyADQQA2AhwgAyABNgIUIANBthE2AhAgA0EJNgIMQQAhAgyHAQsgASAERgRAQd8AIQIMhwELIAEtAABBCkYEQCABQQFqIQEMCQsgAy0ALkHAAHENCCADQQA2AhwgAyABNgIUIANBthE2AhAgA0ECNgIMQQAhAgyGAQsgASAERgRAQd0AIQIMhgELIAEtAAAiAkENRgRAIAFBAWohAUHQACECDG0LIAEhACACQQlrDgQFAQEFAQsgBCABIgBGBEBB3AAhAgyFAQsgAC0AAEEKRw0AIABBAWoMAgtBACECIANBADYCHCADIAA2AhQgA0HKLTYCECADQQc2AgwMgwELIAEgBEYEQEHbACECDIMBCwJAIAEtAABBCWsOBAMAAAMACyABQQFqCyEBQc4AIQIMaAsgASAERgRAQdoAIQIMgQELIAEtAABBCWsOBAABAQABC0EAIQIgA0EANgIcIANBmhI2AhAgA0EHNgIMIAMgAUEBajYCFAx/CyADQYASOwEqQQAhAAJAIAMoAjgiAkUNACACKAI4IgJFDQAgAyACEQAAIQALIABFDQAgAEEVRw0BIANB2QA2AhwgAyABNgIUIANB6ho2AhAgA0EVNgIMQQAhAgx+C0HNACECDGQLIANBADYCHCADIAE2AhQgA0HJDTYCECADQRo2AgxBACECDHwLIAEgBEYEQEHZACECDHwLIAEtAABBIEcNPSABQQFqIQEgAy0ALkEBcQ09IANBADYCHCADIAE2AhQgA0HCHDYCECADQR42AgxBACECDHsLIAEgBEYEQEHYACECDHsLAkACQAJAAkACQCABLQAAIgBBCmsOBAIDAwABCyABQQFqIQFBLCECDGULIABBOkcNASADQQA2AhwgAyABNgIUIANB5xE2AhAgA0EKNgIMQQAhAgx9CyABQQFqIQEgA0Evai0AAEEBcUUNcyADLQAyQYABcUUEQCADQTJqIQIgAxA1QQAhAAJAIAMoAjgiBkUNACAGKAIoIgZFDQAgAyAGEQAAIQALAkACQCAADhZNTEsBAQEBAQEBAQEBAQEBAQEBAQEAAQsgA0EpNgIcIAMgATYCFCADQawZNgIQIANBFTYCDEEAIQIMfgsg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c3BvbnNlIHN0YXR1cwBFeHBlY3RlZCBMRiBhZnRlciBoZWFkZXJzAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMAVXNlciBjYWxsYmFjayBlcnJvcgBgb25fcmVzZXRgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19oZWFkZXJgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2JlZ2luYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlYCBjYWxsYmFjayBlcnJvcgBgb25fc3RhdHVzX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdmVyc2lvbl9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3VybF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3Byb3RvY29sX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fcHJvdG9jb2wARW1wdHkgQ29udGVudC1MZW5ndGgASW52YWxpZCBjaGFyYWN0ZXIgaW4gQ29udGVudC1MZW5ndGgAVHJhbnNmZXItRW5jb2RpbmcgY2FuJ3QgYmUgcHJlc2VudCB3aXRoIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgc2l6ZQBFeHBlY3RlZCBMRiBhZnRlciBjaHVuayBzaXplAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBVbmV4cGVjdGVkIHdoaXRlc3BhY2UgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgTEYgYWZ0ZXIgaGVhZGVyIHZhbHVlAEludmFsaWQgYFRyYW5zZmVyLUVuY29kaW5nYCBoZWFkZXIgdmFsdWUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciBjaHVuayBleHRlbnNpb24gdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZSB2YWx1ZQBJbnZhbGlkIHF1b3RlZC1wYWlyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAFBhdXNlZCBieSBvbl9oZWFkZXJzX2NvbXBsZXRlAEludmFsaWQgRU9GIHN0YXRlAG9uX3Jlc2V0IHBhdXNlAG9uX2NodW5rX2hlYWRlciBwYXVzZQBvbl9tZXNzYWdlX2JlZ2luIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZSBwYXVzZQBvbl9zdGF0dXNfY29tcGxldGUgcGF1c2UAb25fdmVyc2lvbl9jb21wbGV0ZSBwYXVzZQBvbl91cmxfY29tcGxldGUgcGF1c2UAb25fcHJvdG9jb2xfY29tcGxldGUgcGF1c2UAb25fY2h1bmtfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX3ZhbHVlX2NvbXBsZXRlIHBhdXNlAG9uX21lc3NhZ2VfY29tcGxldGUgcGF1c2UAb25fbWV0aG9kX2NvbXBsZXRlIHBhdXNlAG9uX2hlYWRlcl9maWVsZF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19leHRlbnNpb25fbmFtZSBwYXVzZQBVbmV4cGVjdGVkIHNwYWNlIGFmdGVyIHN0YXJ0IGxpbmUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciByZXNwb25zZSBsaW5lAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fY2h1bmtfZXh0ZW5zaW9uX25hbWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBuYW1lAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgZXh0ZW5zaW9uIG5hbWUASW52YWxpZCBzdGF0dXMgY29kZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABNaXNzaW5nIGV4cGVjdGVkIENSIGFmdGVyIGNodW5rIGRhdGEARXhwZWN0ZWQgTEYgYWZ0ZXIgY2h1bmsgZGF0YQBVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AARGF0YSBhZnRlciBgQ29ubmVjdGlvbjogY2xvc2VgAFNXSVRDSF9QUk9YWQBVU0VfUFJPWFkATUtBQ1RJVklUWQBVTlBST0NFU1NBQkxFX0VOVElUWQBRVUVSWQBDT1BZAE1PVkVEX1BFUk1BTkVOVExZAFRPT19FQVJMWQBOT1RJRlkARkFJTEVEX0RFUEVOREVOQ1kAQkFEX0dBVEVXQVkAUExBWQBQVVQAQ0hFQ0tPVVQAR0FURVdBWV9USU1FT1VUAFJFUVVFU1RfVElNRU9VVABORVRXT1JLX0NPTk5FQ1RfVElNRU9VVABDT05ORUNUSU9OX1RJTUVPVVQATE9HSU5fVElNRU9VVABORVRXT1JLX1JFQURfVElNRU9VVABQT1NUAE1JU0RJUkVDVEVEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9SRVFVRVNUAENMSUVOVF9DTE9TRURfTE9BRF9CQUxBTkNFRF9SRVFVRVNUAEJBRF9SRVFVRVNUAEhUVFBfUkVRVUVTVF9TRU5UX1RPX0hUVFBTX1BPUlQAUkVQT1JUAElNX0FfVEVBUE9UAFJFU0VUX0NPTlRFTlQATk9fQ09OVEVOVABQQVJUSUFMX0NPTlRFTlQASFBFX0lOVkFMSURfQ09OU1RBTlQASFBFX0NCX1JFU0VUAEdFVABIUEVfU1RSSUNUAENPTkZMSUNUAFRFTVBPUkFSWV9SRURJUkVDVABQRVJNQU5FTlRfUkVESVJFQ1QAQ09OTkVDVABNVUxUSV9TVEFUVVMASFBFX0lOVkFMSURfU1RBVFVTAFRPT19NQU5ZX1JFUVVFU1RTAEVBUkxZX0hJTlRTAFVOQVZBSUxBQkxFX0ZPUl9MRUdBTF9SRUFTT05TAE9QVElPTlMAU1dJVENISU5HX1BST1RPQ09MUwBWQVJJQU5UX0FMU09fTkVHT1RJQVRFUwBNVUxUSVBMRV9DSE9JQ0VTAElOVEVSTkFMX1NFUlZFUl9FUlJPUgBXRUJfU0VSVkVSX1VOS05PV05fRVJST1IAUkFJTEdVTl9FUlJPUgBJREVOVElUWV9QUk9WSURFUl9BVVRIRU5USUNBVElPTl9FUlJPUgBTU0xfQ0VSVElGSUNBVEVfRVJST1IASU5WQUxJRF9YX0ZPUldBUkRFRF9GT1IAU0VUX1BBUkFNRVRFUgBHRVRfUEFSQU1FVEVSAEhQRV9VU0VSAFNFRV9PVEhFUgBIUEVfQ0JfQ0hVTktfSEVBREVSAEV4cGVjdGVkIExGIGFmdGVyIENSAE1LQ0FMRU5EQVIAU0VUVVAAV0VCX1NFUlZFUl9JU19ET1dOAFRFQVJET1dOAEhQRV9DTE9TRURfQ09OTkVDVElPTgBIRVVSSVNUSUNfRVhQSVJBVElPTgBESVNDT05ORUNURURfT1BFUkFUSU9OAE5PTl9BVVRIT1JJVEFUSVZFX0lORk9STUFUSU9OAEhQRV9JTlZBTElEX1ZFUlNJT04ASFBFX0NCX01FU1NBR0VfQkVHSU4AU0lURV9JU19GUk9aRU4ASFBFX0lOVkFMSURfSEVBREVSX1RPS0VOAElOVkFMSURfVE9LRU4ARk9SQklEREVOAEVOSEFOQ0VfWU9VUl9DQUxNAEhQRV9JTlZBTElEX1VSTABCTE9DS0VEX0JZX1BBUkVOVEFMX0NPTlRST0wATUtDT0wAQUNMAEhQRV9JTlRFUk5BTABSRVFVRVNUX0hFQURFUl9GSUVMRFNfVE9PX0xBUkdFX1VOT0ZGSUNJQUwASFBFX09LAFVOTElOSwBVTkxPQ0sAUFJJAFJFVFJZX1dJVEgASFBFX0lOVkFMSURfQ09OVEVOVF9MRU5HVEgASFBFX1VORVhQRUNURURfQ09OVEVOVF9MRU5HVEgARkxVU0gAUFJPUFBBVENIAE0tU0VBUkNIAFVSSV9UT09fTE9ORwBQUk9DRVNTSU5HAE1JU0NFTExBTkVPVVNfUEVSU0lTVEVOVF9XQVJOSU5HAE1JU0NFTExBTkVPVVNfV0FSTklORwBIUEVfSU5WQUxJRF9UUkFOU0ZFUl9FTkNPRElORwBFeHBlY3RlZCBDUkxGAEhQRV9JTlZBTElEX0NIVU5LX1NJWkUATU9WRQBDT05USU5VRQBIUEVfQ0JfU1RBVFVTX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJTX0NPTVBMRVRFAEhQRV9DQl9WRVJTSU9OX0NPTVBMRVRFAEhQRV9DQl9VUkxfQ09NUExFVEUASFBFX0NCX1BST1RPQ09MX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19DT01QTEVURQBIUEVfQ0JfSEVBREVSX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fVkFMVUVfQ09NUExFVEUASFBFX0NCX0NIVU5LX0VYVEVOU0lPTl9OQU1FX0NPTVBMRVRFAEhQRV9DQl9NRVNTQUdFX0NPTVBMRVRFAEhQRV9DQl9NRVRIT0RfQ09NUExFVEUASFBFX0NCX0hFQURFUl9GSUVMRF9DT01QTEVURQBERUxFVEUASFBFX0lOVkFMSURfRU9GX1NUQVRFAElOVkFMSURfU1NMX0NFUlRJRklDQVRFAFBBVVNFAE5PX1JFU1BPTlNFAFVOU1VQUE9SVEVEX01FRElBX1RZUEUAR09ORQBOT1RfQUNDRVBUQUJMRQBTRVJWSUNFX1VOQVZBSUxBQkxFAFJBTkdFX05PVF9TQVRJU0ZJQUJMRQBPUklHSU5fSVNfVU5SRUFDSEFCTEUAUkVTUE9OU0VfSVNfU1RBTEUAUFVSR0UATUVSR0UAUkVRVUVTVF9IRUFERVJfRklFTERTX1RPT19MQVJHRQBSRVFVRVNUX0hFQURFUl9UT09fTEFSR0UAUEFZTE9BRF9UT09fTEFSR0UASU5TVUZGSUNJRU5UX1NUT1JBR0UASFBFX1BBVVNFRF9VUEdSQURFAEhQRV9QQVVTRURfSDJfVVBHUkFERQBTT1VSQ0UAQU5OT1VOQ0UAVFJBQ0UASFBFX1VORVhQRUNURURfU1BBQ0UAREVTQ1JJQkUAVU5TVUJTQ1JJQkUAUkVDT1JEAEhQRV9JTlZBTElEX01FVEhPRABOT1RfRk9VTkQAUFJPUEZJTkQAVU5CSU5EAFJFQklORABVTkFVVEhPUklaRUQATUVUSE9EX05PVF9BTExPV0VEAEhUVFBfVkVSU0lPTl9OT1RfU1VQUE9SVEVEAEFMUkVBRFlfUkVQT1JURUQAQUNDRVBURUQATk9UX0lNUExFTUVOVEVEAExPT1BfREVURUNURUQASFBFX0NSX0VYUEVDVEVEAEhQRV9MRl9FWFBFQ1RFRABDUkVBVEVEAElNX1VTRUQASFBFX1BBVVNFRABUSU1FT1VUX09DQ1VSRUQAUEFZTUVOVF9SRVFVSVJFRABQUkVDT05ESVRJT05fUkVRVUlSRUQAUFJPWFlfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATkVUV09SS19BVVRIRU5USUNBVElPTl9SRVFVSVJFRABMRU5HVEhfUkVRVUlSRUQAU1NMX0NFUlRJRklDQVRFX1JFUVVJUkVEAFVQR1JBREVfUkVRVUlSRUQAUEFHRV9FWFBJUkVEAFBSRUNPTkRJVElPTl9GQUlMRUQARVhQRUNUQVRJT05fRkFJTEVEAFJFVkFMSURBVElPTl9GQUlMRUQAU1NMX0hBTkRTSEFLRV9GQUlMRUQATE9DS0VEAFRSQU5TRk9STUFUSU9OX0FQUExJRUQATk9UX01PRElGSUVEAE5PVF9FWFRFTkRFRABCQU5EV0lEVEhfTElNSVRfRVhDRUVERUQAU0lURV9JU19PVkVSTE9BREVEAEhFQUQARXhwZWN0ZWQgSFRUUC8sIFJUU1AvIG9yIElDRS8A5xUAAK8VAACkEgAAkhoAACYWAACeFAAA2xkAAHkVAAB+EgAA/hQAADYVAAALFgAA2BYAAPMSAABCGAAArBYAABIVAAAUFwAA7xcAAEgUAABxFwAAshoAAGsZAAB+GQAANRQAAIIaAABEFwAA/RYAAB4YAACHFwAAqhkAAJMSAAAHGAAALBcAAMoXAACkFwAA5xUAAOcVAABYFwAAOxgAAKASAAAtHAAAwxEAAEgRAADeEgAAQhMAAKQZAAD9EAAA9xUAAKUVAADvFgAA+BkAAEoWAABWFgAA9RUAAAoaAAAIGgAAARoAAKsVAABCEgAA1xAAAEwRAAAFGQAAVBYAAB4RAADKGQAAyBkAAE4WAAD/GAAAcRQAAPAVAADuFQAAlBkAAPwVAAC/GQAAmxkAAHwUAABDEQAAcBgAAJUUAAAnFAAAGRQAANUSAADUGQAARBYAAPcQAEG5OwsBAQBB0DsL4AEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEDAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBuj0LBAEAAAIAQdE9C14DBAMDAwMDAAADAwADAwADAwMDAwMDAwMDAAUAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAwADAEG6PwsEAQAAAgBB0T8LXgMAAwMDAwMAAAMDAAMDAAMDAwMDAwMDAwMABAAFAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwADAAMAQbDBAAsNbG9zZWVlcC1hbGl2ZQBBycEACwEBAEHgwQAL4AEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBycMACwEBAEHgwwAL5wEBAQEBAQEBAQEBAQECAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAWNodW5rZWQAQfHFAAteAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQBB0McACyFlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AQYDIAAsgcmFuc2Zlci1lbmNvZGluZ3BncmFkZQ0KDQpTTQ0KDQoAQanIAAsFAQIAAQMAQcDIAAtfBAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanKAAsFAQIAAQMAQcDKAAtfBAUFBgUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanMAAsEAQAAAQBBwcwAC14CAgACAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAEGpzgALBQECAAEDAEHAzgALXwQFAAAFBQUFBQUFBQUFBQYFBQUFBQUFBQUFBQUABQAHCAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQAFAAUABQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAAAAFAEGp0AALBQEBAAEBAEHA0AALAQEAQdrQAAtBAgAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAQanSAAsFAQEAAQEAQcDSAAsBAQBBytIACwYCAAAAAAIAQeHSAAs6AwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBBoNQAC50BTk9VTkNFRUNLT1VUTkVDVEVURUNSSUJFTFVTSEVURUFEU0VBUkNIUkdFQ1RJVklUWUxFTkRBUlZFT1RJRllQVElPTlNDSFNFQVlTVEFUQ0hHRVVFUllPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFVFRQQ0VUU1BBRFRQLw==","base64")}})});var $2Q=R((bsY,Z2Q)=>{var{Buffer:pj0}=u("node:buffer"),Pr;Object.defineProperty(Z2Q,"exports",{get:()=>{return Pr?Pr:Pr=pj0.from("AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAn9/AGABfwBgBH9/f38Bf2AAAGADf39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQAEA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAAzU0BQYAAAMAAAAAAAADAQMAAwMDAAACAAAAAAICAgICAgICAgIBAQEBAQEBAQEBAwAAAwAAAAQFAXABExMFAwEAAgYIAX8BQcDZBAsHxQcoBm1lbW9yeQIAC19pbml0aWFsaXplAAgZX19pbmRpcmVjdF9mdW5jdGlvbl90YWJsZQEAC2xsaHR0cF9pbml0AAkYbGxodHRwX3Nob3VsZF9rZWVwX2FsaXZlADcMbGxodHRwX2FsbG9jAAsGbWFsbG9jADkLbGxodHRwX2ZyZWUADARmcmVlAAwPbGxodHRwX2dldF90eXBlAA0VbGxodHRwX2dldF9odHRwX21ham9yAA4VbGxodHRwX2dldF9odHRwX21pbm9yAA8RbGxodHRwX2dldF9tZXRob2QAEBZsbGh0dHBfZ2V0X3N0YXR1c19jb2RlABESbGxodHRwX2dldF91cGdyYWRlABIMbGxodHRwX3Jlc2V0ABMObGxodHRwX2V4ZWN1dGUAFBRsbGh0dHBfc2V0dGluZ3NfaW5pdAAVDWxsaHR0cF9maW5pc2gAFgxsbGh0dHBfcGF1c2UAFw1sbGh0dHBfcmVzdW1lABgbbGxodHRwX3Jlc3VtZV9hZnRlcl91cGdyYWRlABkQbGxodHRwX2dldF9lcnJubwAaF2xsaHR0cF9nZXRfZXJyb3JfcmVhc29uABsXbGxodHRwX3NldF9lcnJvcl9yZWFzb24AHBRsbGh0dHBfZ2V0X2Vycm9yX3BvcwAdEWxsaHR0cF9lcnJub19uYW1lAB4SbGxodHRwX21ldGhvZF9uYW1lAB8SbGxodHRwX3N0YXR1c19uYW1lACAabGxodHRw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AXRrQT5qIQILIAEgAjYCHCABQgA3AhAgAkECdEH01wBqIQACQEHI1QAoAgAiA0EBIAJ0IgdxRQRAIAAgATYCAEHI1QAgAyAHcjYCACABIAA2AhggASABNgIIIAEgATYCDAwBCyAEQRkgAkEBdmtBACACQR9HG3QhAiAAKAIAIQACQANAIAAiAygCBEF4cSAERg0BIAJBHXYhACACQQF0IQIgAyAAQQRxakEQaiIHKAIAIgANAAsgByABNgIAIAEgAzYCGCABIAE2AgwgASABNgIIDAELIAMoAggiACABNgIMIAMgATYCCCABQQA2AhggASADNgIMIAEgADYCCAtB5NUAQeTVACgCAEEBayIAQX8gABs2AgALCwcAIAAtACgLBwAgAC0AKgsHACAALQArCwcAIAAtACkLBwAgAC8BNAsHACAALQAwC0ABBH8gACgCGCEBIAAvAS4hAiAALQAoIQMgACgCOCEEIAAQOCAAIAQ2AjggACADOgAoIAAgAjsBLiAAIAE2AhgLhocCAwd/A34BeyABIAJqIQQCQCAAIgMoAgwiAA0AIAMoAgQEQCADIAE2AgQLIwBBEGsiCSQAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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DAgLQeMBDAcLQdcBDAYLQdgBDAULQdkBDAQLQdoBDAMLQdsBDAILQd0BDAELQdwBCyECA0ACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAMCfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAn8CQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAwJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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A0EXNgIcIAMgADYCDCADIAFBAWo2AhQM+AILIABBFUYNI0EAIQIgA0EANgIcIAMgATYCFCADQdYMNgIQIANBIzYCDAz3AgsgAygCBCEAQQAhAiADQQA2AgQgAyAAIAEQNCIARQRAIAFBAWohAQwdCyADQRk2AhwgAyAANgIMIAMgAUEBajYCFAz2AgsgAygCBCEAQQAhAiADQQA2AgQgAyAAIAEQNCIARQRAIAFBAWohAQzvAgsgA0EaNgIcIAMgADYCDCADIAFBAWo2AhQM9QILIABBFUYNH0EAIQIgA0EANgIcIAMgATYCFCADQdAPNgIQIANBIjYCDAz0AgsgAygCBCEAIANBADYCBCADIAAgARAzIgBFBEAgAUEBaiEBDBsLIANBHDYCHCADIAA2AgwgAyABQQFqNgIUQQAhAgzzAgsgAygCBCEAIANBADYCBCADIAAgARAzIgBFBEAgAUEBaiEBDOsCCyADQR02AhwgAyAANgIMIAMgAUEBajYCFEEAIQIM8gILIABBO0cNASABQQFqIQELQSYhAgzXAgtBACECIANBADYCHCADIAE2AhQgA0GfFTYCECADQQw2AgwM7wILIAEgBEcEQANAIAEtAABBIEcNhAIgBCABQQFqIgFHDQALQSwhAgzvAgtBLCECDO4CCyABIARGBEBBNCECDO4CCwJAAkADQAJAIAEtAABBCmsOBAIAAAMACyAEIAFBAWoiAUcNAAtBNCECDO8CCyADKAIEIQAgA0EANgIEIAMgACABEDEiAEUNnwIgA0EyNgIcIAMgATYCFCADIAA2AgxBACECDO4CCyADKAIEIQAgA0EANgIEIAMgACABEDEiAEUEQCABQQFqIQEMnwILIANBMjYCHCADIAA2AgwgAyABQQFqNgIUQQAhAgztAgsgASAERwRAAkADQCABLQAAQTBrIgBB/wFxQQpPBEBBOiECDNcCCyADKQMgIgtCmbPmzJmz5swZVg0BIAMgC0IKfiIKNwMgIAogAK1C/wGDIgtCf4VWDQEgAyAKIAt8NwMgIAQgAUEBaiIBRw0AC0HAACECDO4CCyADKAIEIQAgA0EANgIEIAMgACABQQFqIgEQMSIADRcM4gILQcAAIQIM7AILIAEgBEYEQEHJACECDOwCCwJAA0ACQCABLQAAQQlrDhgAAqICogKpAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAgCiAgsgBCABQQFqIgFHDQALQckAIQIM7AILIAFBAWohASADQS9qLQAAQQFxDaUCIANBADYCHCADIAE2AhQgA0GXEDYCECADQQo2AgxBACECDOsCCyABIARHBEADQCABLQAAQSBHDRUgBCABQQFqIgFHDQALQfgAIQIM6wILQfgAIQIM6gILIANBAjoAKAw4C0EAIQIgA0EANgIcIANBvws2AhAgA0ECNgIMIAMgAUEBajYCFAzoAgtBACECDM4CC0ENIQIMzQILQRMhAgzMAgtBFSECDMsCC0EWIQIMygILQRghAgzJAgtBGSECDMgCC0EaIQIMxwILQRshAgzGAgtBHCECDMUCC0EdIQIMxAILQR4hAgzDAgtBHyECDMICC0EgIQIMwQILQSIhAgzAAgtBIyECDL8CC0ElIQIMvgILQeUAIQIMvQILIANBPTYCHCADIAE2AhQgAyAANgIMQQAhAgzVAgsgA0EbNgIcIAMgATYCFCADQaQcNgIQIANBFTYCDEEAIQIM1AILIANBIDYCHCADIAE2AhQgA0GYGjYCECADQRU2AgxBACECDNMCCyADQRM2AhwgAyABNgIUIANBmBo2AhAgA0EVNgIMQQAhAgzSAgsgA0ELNgIcIAMgATYCFCADQZgaNgIQIANBFTYCDEEAIQIM0QILIANBEDYCHCADIAE2AhQgA0GYGjYCECADQRU2AgxBACECDNACCyADQSA2AhwgAyABNgIUIANBpBw2AhAgA0EVNgIMQQAhAgzPAgsgA0ELNgIcIAMgATYCFCADQaQcNgIQIANBFTYCDEEAIQIMzgILIANBDDYCHCADIAE2AhQgA0GkHDYCECADQRU2AgxBACECDM0CC0EAIQIgA0EANgIcIAMgATYCFCADQd0ONgIQIANBEjYCDAzMAgsCQANAAkAgAS0AAEEKaw4EAAICAAILIAQgAUEBaiIBRw0AC0H9ASECDMwCCwJAAkAgAy0ANkEBRw0AQQAhAAJAIAMoAjgiAkUNACACKAJgIgJFDQAgAyACEQAAIQALIABFDQAgAEEVRw0BIANB/AE2AhwgAyABNgIUIANB3Bk2AhAgA0EVNgIMQQAhAgzNAgtB3AEhAgyzAgsgA0EANgIcIAMgATYCFCADQfkLNgIQIANBHzYCDEEAIQIMywILAkACQCADLQAoQQFrDgIEAQALQdsBIQIMsgILQdQBIQIMsQILIANBAjoAMUEAIQACQCADKAI4IgJFDQAgAigCACICRQ0AIAMgAhEAACEACyAARQRAQd0BIQIMsQILIABBFUcEQCADQQA2AhwgAyABNgIUIANBtAw2AhAgA0EQNgIMQQAhAgzKAgsgA0H7ATYCHCADIAE2AhQgA0GBGjYCECADQRU2AgxBACECDMkCCyABIARGBEBB+gEhAgzJAgsgAS0AAEHIAEYNASADQQE6ACgLQcABIQIMrgILQdoBIQIMrQILIAEgBEcEQCADQQw2AgggAyABNgIEQdkBIQIMrQILQfkBIQIMxQILIAEgBEYEQEH4ASECDMUCCyABLQAAQcgARw0EIAFBAWohAUHYASECDKsCCyABIARGBEBB9wEhAgzEAgsCQAJAIAEtAABBxQBrDhAABQUFBQUFBQUFBQUFBQUBBQsgAUEBaiEBQdYBIQIMqwILIAFBAWohAUHXASECDKoCC0H2ASECIAEgBEYNwgIgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABButUAai0AAEcNAyAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMwwILIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARAuIgBFBEBB4wEhAgyqAgsgA0H1ATYCHCADIAE2AhQgAyAANgIMQQAhAgzCAgtB9AEhAiABIARGDcECIAMoAgAiACAEIAFraiEFIAEgAGtBAWohBgJAA0AgAS0AACAAQbjVAGotAABHDQIgAEEBRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADMICCyADQYEEOwEoIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARAuIgANAwwCCyADQQA2AgALQQAhAiADQQA2AhwgAyABNgIUIANB5R82AhAgA0EINgIMDL8CC0HVASECDKUCCyADQfMBNgIcIAMgATYCFCADIAA2AgxBACECDL0CC0EAIQACQCADKAI4IgJFDQAgAigCQCICRQ0AIAMgAhEAACEACyAARQ1uIABBFUcEQCADQQA2AhwgAyABNgIUIANBgg82AhAgA0EgNgIMQQAhAgy9AgsgA0GPATYCHCADIAE2AhQgA0HsGzYCECADQRU2AgxBACECDLwCCyABIARHBEAgA0ENNgIIIAMgATYCBEHTASECDKMCC0HyASECDLsCCyABIARGBEBB8QEhAgy7AgsCQAJAAkAgAS0AAEHIAGsOCwABCAgICAgICAgCCAsgAUEBaiEBQdABIQIMowILIAFBAWohAUHRASECDKICCyABQQFqIQFB0gEhAgyhAgtB8AEhAiABIARGDbkCIAMoAgAiACAEIAFraiEGIAEgAGtBAmohBQNAIAEtAAAgAEG11QBqLQAARw0EIABBAkYNAyAAQQFqIQAgBCABQQFqIgFHDQALIAMgBjYCAAy5AgtB7wEhAiABIARGDbgCIAMoAgAiACAEIAFraiEGIAEgAGtBAWohBQNAIAEtAAAgAEGz1QBqLQAARw0DIABBAUYNAiAAQQFqIQAgBCABQQFqIgFHDQALIAMgBjYCAAy4AgtB7gEhAiABIARGDbcCIAMoAgAiACAEIAFraiEGIAEgAGtBAmohBQNAIAEtAAAgAEGw1QBqLQAARw0CIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBjYCAAy3AgsgAygCBCEAIANCADcDACADIAAgBUEBaiIBECsiAEUNAiADQewBNgIcIAMgATYCFCADIAA2AgxBACECDLYCCyADQQA2AgALIAMoAgQhACADQQA2AgQgAyAAIAEQKyIARQ2cAiADQe0BNgIcIAMgATYCFCADIAA2AgxBACECDLQCC0HPASECDJoCC0EAIQACQCADKAI4IgJFDQAgAigCNCICRQ0AIAMgAhEAACEACwJAIAAEQCAAQRVGDQEgA0EANgIcIAMgATYCFCADQeoNNgIQIANBJjYCDEEAIQIMtAILQc4BIQIMmgILIANB6wE2AhwgAyABNgIUIANBgBs2AhAgA0EVNgIMQQAhAgyyAgsgASAERgRAQesBIQIMsgILIAEtAABBL0YEQCABQQFqIQEMAQsgA0EANgIcIAMgATYCFCADQbI4NgIQIANBCDYCDEEAIQIMsQILQc0BIQIMlwILIAEgBEcEQCADQQ42AgggAyABNgIEQcwBIQIMlwILQeoBIQIMrwILIAEgBEYEQEHpASECDK8CCyABLQAAQTBrIgBB/wFxQQpJBEAgAyAAOgAqIAFBAWohAUHLASECDJYCCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNlwIgA0HoATYCHCADIAE2AhQgAyAANgIMQQAhAgyuAgsgASAERgRAQecBIQIMrgILAkAgAS0AAEEuRgRAIAFBAWohAQwBCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNmAIgA0HmATYCHCADIAE2AhQgAyAANgIMQQAhAgyuAgtBygEhAgyUAgsgASAERgRAQeUBIQIMrQILQQAhAEEBIQVBASEHQQAhAgJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAIAEtAABBMGsOCgoJAAECAwQFBggLC0ECDAYLQQMMBQtBBAwEC0EFDAMLQQYMAgtBBwwBC0EICyECQQAhBUEAIQcMAgtBCSECQQEhAEEAIQVBACEHDAELQQAhBUEBIQILIAMgAjoAKyABQQFqIQECQAJAIAMtAC5BEHENAAJAAkACQCADLQAqDgMBAAIECyAHRQ0DDAILIAANAQwCCyAFRQ0BCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNAiADQeIBNgIcIAMgATYCFCADIAA2AgxBACECDK8CCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNmgIgA0HjATYCHCADIAE2AhQgAyAANgIMQQAhAgyuAgsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDZgCIANB5AE2AhwgAyABNgIUIAMgADYCDAytAgtByQEhAgyTAgtBACEAAkAgAygCOCICRQ0AIAIoAkQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0GkDTYCECADQSE2AgxBACECDK0CC0HIASECDJMCCyADQeEBNgIcIAMgATYCFCADQdAaNgIQIANBFTYCDEEAIQIMqwILIAEgBEYEQEHhASECDKsCCwJAIAEtAABBIEYEQCADQQA7ATQgAUEBaiEBDAELIANBADYCHCADIAE2AhQgA0GZETYCECADQQk2AgxBACECDKsCC0HHASECDJECCyABIARGBEBB4AEhAgyqAgsCQCABLQAAQTBrQf8BcSICQQpJBEAgAUEBaiEBAkAgAy8BNCIAQZkzSw0AIAMgAEEKbCIAOwE0IABB/v8DcSACQf//A3NLDQAgAyAAIAJqOwE0DAILQQAhAiADQQA2AhwgAyABNgIUIANBlR42AhAgA0ENNgIMDKsCCyADQQA2AhwgAyABNgIUIANBlR42AhAgA0ENNgIMQQAhAgyqAgtBxgEhAgyQAgsgASAERgRAQd8BIQIMqQILAkAgAS0AAEEwa0H/AXEiAkEKSQRAIAFBAWohAQJAIAMvATQiAEGZM0sNACADIABBCmwiADsBNCAAQf7/A3EgAkH//wNzSw0AIAMgACACajsBNAwCC0EAIQIgA0EANgIcIAMgATYCFCADQZUeNgIQIANBDTYCDAyqAgsgA0EANgIcIAMgATYCFCADQZUeNgIQIANBDTYCDEEAIQIMqQILQcUBIQIMjwILIAEgBEYEQEHeASECDKgCCwJAIAEtAABBMGtB/wFxIgJBCkkEQCABQQFqIQECQCADLwE0IgBBmTNLDQAgAyAAQQpsIgA7ATQgAEH+/wNxIAJB//8Dc0sNACADIAAgAmo7ATQMAgtBACECIANBADYCHCADIAE2AhQgA0GVHjYCECADQQ02AgwMqQILIANBADYCHCADIAE2AhQgA0GVHjYCECADQQ02AgxBACECDKgCC0HEASECDI4CCyABIARGBEBB3QEhAgynAgsCQAJAAkACQCABLQAAQQprDhcCAwMAAwMDAwMDAwMDAwMDAwMDAwMDAQMLIAFBAWoMBQsgAUEBaiEBQcMBIQIMjwILIAFBAWohASADQS9qLQAAQQFxDQggA0EANgIcIAMgATYCFCADQY0LNgIQIANBDTYCDEEAIQIMpwILIANBADYCHCADIAE2AhQgA0GNCzYCECADQQ02AgxBACECDKYCCyABIARHBEAgA0EPNgIIIAMgATYCBEEBIQIMjQILQdwBIQIMpQILAkACQANAAkAgAS0AAEEKaw4EAgAAAwALIAQgAUEBaiIBRw0AC0HbASECDKYCCyADKAIEIQAgA0EANgIEIAMgACABEC0iAEUEQCABQQFqIQEMBAsgA0HaATYCHCADIAA2AgwgAyABQQFqNgIUQQAhAgylAgsgAygCBCEAIANBADYCBCADIAAgARAtIgANASABQQFqCyEBQcEBIQIMigILIANB2QE2AhwgAyAANgIMIAMgAUEBajYCFEEAIQIMogILQcIBIQIMiAILIANBL2otAABBAXENASADQQA2AhwgAyABNgIUIANB5Bw2AhAgA0EZNgIMQQAhAgygAgsgASAERgRAQdkB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CyADIAU2AgAMkAILIANBADYCACAGQQFqIQFBGgw8C0HKASECIAEgBEYNjgIgAygCACIAIAQgAWtqIQUgASAAa0EDaiEGAkADQCABLQAAIABBjdUAai0AAEcNOyAAQQNGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMjwILIANBADYCACAGQQFqIQFBIQw7CyABIARGBEBByQEhAgyOAgsCQAJAIAEtAABBwQBrDhQAPT09PT09PT09PT09PT09PT09AT0LIAFBAWohAUGtASECDPUBCyABQQFqIQFBsAEhAgz0AQsgASAERgRAQcgBIQIMjQILAkACQCABLQAAQdUAaw4LADw8PDw8PDw8PAE8CyABQQFqIQFBrgEhAgz0AQsgAUEBaiEBQa8BIQIM8wELQccBIQIgASAERg2LAiADKAIAIgAgBCABa2ohBSABIABrQQhqIQYCQANAIAEtAAAgAEGE1QBqLQAARw04IABBCEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyMAgsgA0EANgIAIAZBAWohAUEqDDgLIAEgBEYEQEHGASECDIsCCyABLQAAQdAARw04IAFBAWohAUElDDcLQcUBIQIgASAERg2JAiADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGB1QBqLQAARw02IABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyKAgsgA0EANgIAIAZBAWohAUEODDYLIAEgBEYEQEHEASECDIkCCyABLQAAQcUARw02IAFBAWohAUGrASECDO8BCyABIARGBEBBwwEhAgyIAgsCQAJAAkACQCABLQAAQcIAaw4PAAECOTk5OTk5OTk5OTkDOQsgAUEBaiEBQacBIQIM8QELIAFBAWohAUGoASECDPABCyABQQFqIQFBqQEhAgzvAQsgAUEBaiEBQaoBIQIM7gELQcIBIQIgASAERg2GAiADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEH+1ABqLQAARw0zIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyHAgsgA0EANgIAIAZBAWohAUEUDDMLQcEBIQIgASAERg2FAiADKAIAIgAgBCABa2ohBSABIABrQQRqIQYCQANA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BTYCAAzsAQsgA0EANgIAIAZBAWohAUEXDBgLQaYBIQIgASAERg3qASADKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEHB1ABqLQAARw0XIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzrAQsgA0EANgIAIAZBAWohAUEYDBcLIAEgBEYEQEGlASECDOoBCwJAAkAgAS0AAEHJAGsOBwAZGRkZGQEZCyABQQFqIQFBiwEhAgzRAQsgAUEBaiEBQYwBIQIM0AELQaQBIQIgASAERg3oASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEGm1QBqLQAARw0VIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzpAQsgA0EANgIAIAZBAWohAUEJDBULQaMBIQIgASAERg3nASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEGk1QBqLQAARw0UIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzoAQsgA0EANgIAIAZBAWohAUEfDBQLQaIBIQIgASAERg3mASADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEG+1ABqLQAARw0TIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAznAQsgA0EANgIAIAZBAWohAUECDBMLQaEBIQIgASAERg3lASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYDQCABLQAAIABBvNQAai0AAEcNESAAQQFGDQIgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM5QELIAEgBEYEQEGgASECDOUBC0EBIAEtAABB3wBHDREaIAFBAWohAUGHASECDMsBCyADQQA2AgAgBkEBaiEBQYgBIQIMygELQZ8BIQIgASAERg3iASADKAIAIgAgBCABa2ohBSABIABrQQhqIQYCQANAIAEtAAAgAEGE1QBqLQAARw0PIABBCEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzjAQsgA0EANgIAIAZBAWohAUEpDA8LQZ4BIQIgASAERg3hASADKAIAIgAgBCABa2ohBSABIABrQQNqIQYCQANAIAEtAAAgAEG41ABqLQAARw0OIABBA0YNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAziAQsgA0EANgIAIAZBAWohAUEtDA4LIAEgBEYEQEGdASECDOEBCyABLQAAQcUARw0OIAFBAWohAUGEASECDMcBCyABIARGBEBBnAEhAgzgAQsCQAJAIAEtAABBzABrDggADw8PDw8PAQ8LIAFBAWohAUGCASECDMcBCyABQQFqIQFBgwEhAgzGAQtBmwEhAiABIARGDd4BIAMoAgAiACAEIAFraiEFIAEgAGtBBGohBgJAA0AgAS0AACAAQbPUAGotAABHDQsgAEEERg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADN8BCyADQQA2AgAgBkEBaiEBQSMMCwtBmgEhAiABIARGDd0BIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQbDUAGotAABHDQogAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADN4BCyADQQA2AgAgBkEBaiEBQQAMCgsgASAERgRAQZkBIQIM3QELAkACQCABLQAAQcgAaw4IAAwMDAwMDAEMCyABQQFqIQFB/QAhAgzEAQsgAUEBaiEBQYABIQIMwwELIAEgBEYEQEGYASECDNwBCwJAAkAgAS0AAEHOAGsOAwALAQsLIAFBAWohAUH+ACECDMMBCyABQQFqIQFB/wAhAgzCAQsgASAERgRAQZcBIQIM2wELIAEtAABB2QBHDQggAUEBaiEBQQgMBwtBlgEhAiABIARGDdkBIAMoAgAiACAEIAFraiEFIAEgAGtBA2ohBgJAA0AgAS0AACAAQazUAGotAABHDQYgAEEDRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADNoBCyADQQA2AgAgBkEBaiEBQQUMBgtBlQEhAiABIARGDdgBIAMoAgAiACAEIAFraiEFIAEgAGtBBWohBgJAA0AgAS0AACAAQabUAGotAABHDQUgAEEFRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADNkBCyADQQA2AgAgBkEBaiEBQRYMBQtBlAEhAiABIARGDdcBIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQaHVAGotAABHDQQgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADNgBCyADQQA2AgAgBkEBaiEBQRAMBAsgASAERgRAQZMBIQIM1wELAkACQCABLQAAQcMAaw4MAAYGBgYGBgYGBgYBBgsgAUEBaiEBQfkAIQIMvgELIAFBAWohAUH6ACECDL0BC0GSASECIAEgBEYN1QEgAygCACIAIAQgAWtqIQUgASAAa0EFaiEGAkADQCABLQAAIABBoNQAai0AAEcNAiAAQQVGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM1gELIANBADYCACAGQQFqIQFBJAwCCyADQQA2AgAMAgsgASAERgRAQZEBIQIM1AELIAEtAABBzABHDQEgAUEBaiEBQRMLOgApIAMoAgQhACADQQA2AgQgAyAAIAEQLiIADQIMAQtBACECIANBADYCHCADIAE2AhQgA0H+HzYCECADQQY2AgwM0QELQfgAIQIMtwELIANBkAE2AhwgAyABNgIUIAMgADYCDEEAIQIMzwELQQAhAAJAIAMoAjgiAkUNACACKAJAIgJFDQAgAyACEQAAIQALIABFDQAgAEEVRg0BIANBADYCHCADIAE2AhQgA0GCDzYCECADQSA2AgxBACECDM4BC0H3ACECDLQBCyADQY8BNgIcIAMgATYCFCADQewbNgIQIANBFTYCDEEAIQIMzAELIAEgBEYEQEGPASECDMwBCwJAIAEtAABBIEYEQCABQQFqIQEMAQsgA0EANgIcIAMgATYCFCADQZsfNgIQIANBBjYCDEEAIQIMzAELQQIhAgyyAQsDQCABLQAAQSBHDQIgBCABQQFqIgFHDQALQY4BIQIMygELIAEgBEYEQEGNASECDMoBCwJAIAEtAABBCWsOBEoAAEoAC0H1ACECDLABCyADLQApQQVGBEBB9gAhAgywAQtB9AAhAgyvAQsgASAERgRAQYwBIQIMyAELIANBEDYCCCADIAE2AgQMCgsgASAERgRAQYsBIQIMxwELAkAgAS0AAEEJaw4ERwAARwALQfMAIQIMrQELIAEgBEcEQCADQRA2AgggAyABNgIEQfEAIQIMrQELQYoBIQIMxQELAkAgASAERwRAA0AgAS0AAEGg0ABqLQAAIgBBA0cEQAJAIABBAWsOAkkABAtB8AAhAgyvAQsgBCABQQFqIgFHDQALQYgBIQIMxgELQYgBIQIMxQELIANBADYCHCADIAE2AhQgA0HbIDYCECADQQc2AgxBACECDMQBCyABIARGBEBBiQEhAgzEAQsCQAJAAkAgAS0AAEGg0gBqLQAAQQFrDgNGAgABC0HyACECDKwBCyADQQA2AhwgAyABNgIUIANBtBI2AhAgA0EHNgIMQQAhAgzEAQtB6gAhAgyqAQsgASAERwRAIAFBAWohAUHvACECDKoBC0GHASECDMIBCyAEIAEiAEYEQEGGASECDMIBCyAALQAAIgFBL0YEQCAAQQFqIQFB7gAhAgypAQsgAUEJayICQRdLDQEgACEBQQEgAnRBm4CABHENQQwBCyAEIAEiAEYEQEGFASECDMEBCyAALQAAQS9HDQAgAEEBaiEBDAMLQQAhAiADQQA2AhwgAyAANgIUIANB2yA2AhAgA0EHNgIMDL8BCwJAAkACQAJAAkADQCABLQAAQaDOAGotAAAiAEEFRwRAAkACQCAAQQFrDghHBQYHCAAEAQgLQesAIQIMrQELIAFBAWohAUHtACECDKwBCyAEIAFBAWoiAUcNAAtBhAEhAgzDAQsgAUEBagwUCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNHiADQdsANgIcIAMgATYCFCADIAA2AgxBACECDMEBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNHiADQd0ANgIcIAMgATYCFCADIAA2AgxBACECDMABCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNHiADQfoANgIcIAMgATYCFCADIAA2AgxBACECDL8BCyADQQA2AhwgAyABNgIUIANB+Q82AhAgA0EHNgIMQQAhAgy+AQsgASAERgRAQYMBIQIMvgELAkAgAS0AAEGgzgBqLQAAQQFrDgg+BAUGAAgCAwcLIAFBAWohAQtBAyECDKMBCyABQQFqDA0LQQAhAiADQQA2AhwgA0HREjYCECADQQc2AgwgAyABQQFqNgIUDLoBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNFiADQdsANgIcIAMgATYCFCADIAA2AgxBACECDLkBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNFiADQd0ANgIcIAMgATYCFCADIAA2AgxBACECDLgBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNFiADQfoANgIcIAMgATYCFCADIAA2AgxBACECDLcBCyADQQA2AhwgAyABNgIUIANB+Q82AhAgA0EHNgIMQQAhAgy2AQtB7AAhAgycAQsgASAERgRAQYIBIQIMtQELIAFBAWoMAgsgASAERgRAQYEBIQIMtAELIAFBAWoMAQsgASAERg0BIAFBAWoLIQFBBCECDJgBC0GAASECDLABCwNAIAEtAABBoMwAai0AACIAQQJHBEAgAEEBRwRAQekAIQIMmQELDDELIAQgAUEBaiIBRw0AC0H/ACECDK8BCyABIARGBEBB/gAhAgyvAQsCQCABLQAAQQlrDjcvAwYvBAYGBgYGBgYGBgYGBgYGBgYGBgUGBgIGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYABgsgAUEBagshAUEFIQIMlAELIAFBAWoMBgsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQggA0HbADYCHCADIAE2AhQgAyAANgIMQQAhAgyrAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQggA0HdADYCHCADIAE2AhQgAyAANgIMQQAhAgyqAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQggA0H6ADYCHCADIAE2AhQgAyAANgIMQQAhAgypAQsgA0EANgIcIAMgATYCFCADQY0UNgIQIANBBzYCDEEAIQIMqAELAkACQAJAAkADQCABLQAAQaDKAGotAAAiAEEFRwRAAkAgAEEBaw4GLgMEBQYABgtB6AAhAgyUAQsgBCABQQFqIgFHDQALQf0AIQIMqwELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0HIANB2wA2AhwgAyABNgIUIAMgADYCDEEAIQIMqgELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0HIANB3QA2AhwgAyABNgIUIAMgADYCDEEAIQIMqQELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0HIANB+gA2AhwgAyABNgIUIAMgADYCDEEAIQIMqAELIANBADYCHCADIAE2AhQgA0HkCDYCECADQQc2AgxBACECDKcBCyABIARGDQEgAUEBagshAUEGIQIMjAELQfwAIQIMpAELAkACQAJAAkADQCABLQAAQaDIAGotAAAiAEEFRwRAIABBAWsOBCkCAwQFCyAEIAFBAWoiAUcNAAtB+wAhAgynAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQMgA0HbADYCHCADIAE2AhQgAyAANgIMQQAhAgymAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQMgA0HdADYCHCADIAE2AhQgAyAANgIMQQAhAgylAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQMgA0H6ADYCHCADIAE2AhQgAyAANgIMQQAhAgykAQsgA0EANgIcIAMgATYCFCADQbwKNgIQIANBBzYCDEEAIQIMowELQc8AIQIMiQELQdEAIQIMiAELQecAIQIMhwELIAEgBEYEQEH6ACECDKABCwJAIAEtAABBCWsOBCAAACAACyABQQFqIQFB5gAhAgyGAQsgASAERgRAQfkAIQIMnwELAkAgAS0AAEEJaw4EHwAAHwALQQAhAAJAIAMoAjgiAkUNACACKAI4IgJFDQAgAyACEQAAIQALIABFBEBB4gEhAgyGAQsgAEEVRwRAIANBADYCHCADIAE2AhQgA0HJDTYCECADQRo2AgxBACECDJ8BCyADQfgANgIcIAMgATYCFCADQeoaNgIQIANBFTYCDEEAIQIMngELIAEgBEcEQCADQQ02AgggAyABNgIEQeQAIQIMhQELQfcAIQIMnQELIAEgBEYEQEH2ACECDJ0BCwJAAkACQCABLQAAQcgAaw4LAAELCwsLCwsLCwILCyABQQFqIQFB3QAhAgyFAQsgAUEBaiEBQeAAIQIMhAELIAFBAWohAUHjACECDIMBC0H1ACECIAEgBEYNmwEgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBtdUAai0AAEcNCCAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMnAELIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARArIgAEQCADQfQANgIcIAMgATYCFCADIAA2AgxBACECDJwBC0HiACECDIIBC0EAIQACQCADKAI4IgJFDQAgAigCNCICRQ0AIAMgAhEAACEACwJAIAAEQCAAQRVGDQEgA0EANgIcIAMgATYCFCADQeoNNgIQIANBJjYCDEEAIQIMnAELQeEAIQIMggELIANB8wA2AhwgAyABNgIUIANBgBs2AhAgA0EVNgIMQQAhAgyaAQsgAy0AKSIAQSNrQQtJDQkCQCAAQQZLDQBBASAAdEHKAHFFDQAMCgtBACECIANBADYCHCADIAE2AhQgA0HtCTYCECADQQg2AgwMmQELQfIAIQIgASAERg2YASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEGz1QBqLQAARw0FIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyZAQsgAygCBCEAIANCADcDACADIAAgBkEBaiIBECsiAARAIANB8QA2AhwgAyABNgIUIAMgADYCDEEAIQIMmQELQd8AIQIMfwtBACEAAkAgAygCOCICRQ0AIAIoAjQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0HqDTYCECADQSY2AgxBACECDJkBC0HeACECDH8LIANB8AA2AhwgAyABNgIUIANBgBs2AhAgA0EVNgIMQQAhAgyXAQsgAy0AKUEhRg0GIANBADYCHCADIAE2AhQgA0GRCjYCECADQQg2AgxBACECDJYBC0HvACECIAEgBEYNlQEgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBsNUAai0AAEcNAiAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMlgELIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARArIgBFDQIgA0HtADYCHCADIAE2AhQgAyAANgIMQQAhAgyVAQsgA0EANgIACyADKAIEIQAgA0EANgIEIAMgACABECsiAEUNgAEgA0HuADYCHCADIAE2AhQgAyAANgIMQQAhAgyTAQtB3AAhAgx5C0EAIQACQCADKAI4IgJFDQAgAigCNCICRQ0AIAMgAhEAACEACwJAIAAEQCAAQRVGDQEgA0EANgIcIAMgATYCFCADQeoNNgIQIANBJjYCDEEAIQIMkwELQdsAIQIMeQsgA0HsADYCHCADIAE2AhQgA0GAGzYCECADQRU2AgxBACECDJEBCyADLQApIgBBI0kNACAAQS5GDQAgA0EANgIcIAMgATYCFCADQckJNgIQIANBCDYCDEEAIQIMkAELQdoAIQIMdgsgASAERgRAQesAIQIMjwELAkAgAS0AAEEvRgRAIAFBAWohAQwBCyAD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ciBIVFRQL3gueCByZXF1ZXN0AEludmFsaWQgbWV0aG9kIGZvciBSVFNQL3gueCByZXF1ZXN0AEV4cGVjdGVkIFNPVVJDRSBtZXRob2QgZm9yIElDRS94LnggcmVxdWVzdABJbnZhbGlkIGNoYXIgaW4gdXJsIGZyYWdtZW50IHN0YXJ0AEV4cGVjdGVkIGRvdABTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3N0YXR1cwBJbnZhbGlkIHJlc3BvbnNlIHN0YXR1cwBFeHBlY3RlZCBMRiBhZnRlciBoZWFkZXJzAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMAVXNlciBjYWxsYmFjayBlcnJvcgBgb25fcmVzZXRgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19oZWFkZXJgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2JlZ2luYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlYCBjYWxsYmFjayBlcnJvcgBgb25fc3RhdHVzX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdmVyc2lvbl9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3VybF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3Byb3RvY29sX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fcHJvdG9jb2wARW1wdHkgQ29udGVudC1MZW5ndGgASW52YWxpZCBjaGFyYWN0ZXIgaW4gQ29udGVudC1MZW5ndGgAVHJhbnNmZXItRW5jb2RpbmcgY2FuJ3QgYmUgcHJlc2VudCB3aXRoIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgc2l6ZQBFeHBlY3RlZCBMRiBhZnRlciBjaHVuayBzaXplAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBVbmV4cGVjdGVkIHdoaXRlc3BhY2UgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgTEYgYWZ0ZXIgaGVhZGVyIHZhbHVlAEludmFsaWQgYFRyYW5zZmVyLUVuY29kaW5nYCBoZWFkZXIgdmFsdWUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciBjaHVuayBleHRlbnNpb24gdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZSB2YWx1ZQBJbnZhbGlkIHF1b3RlZC1wYWlyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAFBhdXNlZCBieSBvbl9oZWFkZXJzX2NvbXBsZXRlAEludmFsaWQgRU9GIHN0YXRlAG9uX3Jlc2V0IHBhdXNlAG9uX2NodW5rX2hlYWRlciBwYXVzZQBvbl9tZXNzYWdlX2JlZ2luIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZSBwYXVzZQBvbl9zdGF0dXNfY29tcGxldGUgcGF1c2UAb25fdmVyc2lvbl9jb21wbGV0ZSBwYXVzZQBvbl91cmxfY29tcGxldGUgcGF1c2UAb25fcHJvdG9jb2xfY29tcGxldGUgcGF1c2UAb25fY2h1bmtfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX3ZhbHVlX2NvbXBsZXRlIHBhdXNlAG9uX21lc3NhZ2VfY29tcGxldGUgcGF1c2UAb25fbWV0aG9kX2NvbXBsZXRlIHBhdXNlAG9uX2hlYWRlcl9maWVsZF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19leHRlbnNpb25fbmFtZSBwYXVzZQBVbmV4cGVjdGVkIHNwYWNlIGFmdGVyIHN0YXJ0IGxpbmUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciByZXNwb25zZSBsaW5lAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fY2h1bmtfZXh0ZW5zaW9uX25hbWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBuYW1lAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgZXh0ZW5zaW9uIG5hbWUASW52YWxpZCBzdGF0dXMgY29kZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABNaXNzaW5nIGV4cGVjdGVkIENSIGFmdGVyIGNodW5rIGRhdGEARXhwZWN0ZWQgTEYgYWZ0ZXIgY2h1bmsgZGF0YQBVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AARGF0YSBhZnRlciBgQ29ubmVjdGlvbjogY2xvc2VgAFNXSVRDSF9QUk9YWQBVU0VfUFJPWFkATUtBQ1RJVklUWQBVTlBST0NFU1NBQkxFX0VOVElUWQBRVUVSWQBDT1BZAE1PVkVEX1BFUk1BTkVOVExZAFRPT19FQVJMWQBOT1RJRlkARkFJTEVEX0RFUEVOREVOQ1kAQkFEX0dBVEVXQVkAUExBWQBQVVQAQ0hFQ0tPVVQAR0FURVdBWV9USU1FT1VUAFJFUVVFU1RfVElNRU9VVABORVRXT1JLX0NPTk5FQ1RfVElNRU9VVABDT05ORUNUSU9OX1RJTUVPVVQATE9HSU5fVElNRU9VVABORVRXT1JLX1JFQURfVElNRU9VVABQT1NUAE1JU0RJUkVDVEVEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9SRVFVRVNUAENMSUVOVF9DTE9TRURfTE9BRF9CQUxBTkNFRF9SRVFVRVNUAEJBRF9SRVFVRVNUAEhUVFBfUkVRVUVTVF9TRU5UX1RPX0hUVFBTX1BPUlQAUkVQT1JUAElNX0FfVEVBUE9UAFJFU0VUX0NPTlRFTlQATk9fQ09OVEVOVABQQVJUSUFMX0NPTlRFTlQASFBFX0lOVkFMSURfQ09OU1RBTlQASFBFX0NCX1JFU0VUAEdFVABIUEVfU1RSSUNUAENPTkZMSUNUAFRFTVBPUkFSWV9SRURJUkVDVABQRVJNQU5FTlRfUkVESVJFQ1QAQ09OTkVDVABNVUxUSV9TVEFUVVMASFBFX0lOVkFMSURfU1RBVFVTAFRPT19NQU5ZX1JFUVVFU1RTAEVBUkxZX0hJTlRTAFVOQVZBSUxBQkxFX0ZPUl9MRUdBTF9SRUFTT05TAE9QVElPTlMAU1dJVENISU5HX1BST1RPQ09MUwBWQVJJQU5UX0FMU09fTkVHT1RJQVRFUwBNVUxUSVBMRV9DSE9JQ0VTAElOVEVSTkFMX1NFUlZFUl9FUlJPUgBXRUJfU0VSVkVSX1VOS05PV05fRVJST1IAUkFJTEdVTl9FUlJPUgBJREVOVElUWV9QUk9WSURFUl9BVVRIRU5USUNBVElPTl9FUlJPUgBTU0xfQ0VSVElGSUNBVEVfRVJST1IASU5WQUxJRF9YX0ZPUldBUkRFRF9GT1IAU0VUX1BBUkFNRVRFUgBHRVRfUEFSQU1FVEVSAEhQRV9VU0VSAFNFRV9PVEhFUgBIUEVfQ0JfQ0hVTktfSEVBREVSAEV4cGVjdGVkIExGIGFmdGVyIENSAE1LQ0FMRU5EQVIAU0VUVVAAV0VCX1NFUlZFUl9JU19ET1dOAFRFQVJET1dOAEhQRV9DTE9TRURfQ09OTkVDVElPTgBIRVVSSVNUSUNfRVhQSVJBVElPTgBESVNDT05ORUNURURfT1BFUkFUSU9OAE5PTl9BVVRIT1JJVEFUSVZFX0lORk9STUFUSU9OAEhQRV9JTlZBTElEX1ZFUlNJT04ASFBFX0NCX01FU1NBR0VfQkVHSU4AU0lURV9JU19GUk9aRU4ASFBFX0lOVkFMSURfSEVBREVSX1RPS0VOAElOVkFMSURfVE9LRU4ARk9SQklEREVOAEVOSEFOQ0VfWU9VUl9DQUxNAEhQRV9JTlZBTElEX1VSTABCTE9DS0VEX0JZX1BBUkVOVEFMX0NPTlRST0wATUtDT0wAQUNMAEhQRV9JTlRFUk5BTABSRVFVRVNUX0hFQURFUl9GSUVMRFNfVE9PX0xBUkdFX1VOT0ZGSUNJQUwASFBFX09LAFVOTElOSwBVTkxPQ0sAUFJJAFJFVFJZX1dJVEgASFBFX0lOVkFMSURfQ09OVEVOVF9MRU5HVEgASFBFX1VORVhQRUNURURfQ09OVEVOVF9MRU5HVEgARkxVU0gAUFJPUFBBVENIAE0tU0VBUkNIAFVSSV9UT09fTE9ORwBQUk9DRVNTSU5HAE1JU0NFTExBTkVPVVNfUEVSU0lTVEVOVF9XQVJOSU5HAE1JU0NFTExBTkVPVVNfV0FSTklORwBIUEVfSU5WQUxJRF9UUkFOU0ZFUl9FTkNPRElORwBFeHBlY3RlZCBDUkxGAEhQRV9JTlZBTElEX0NIVU5LX1NJWkUATU9WRQBDT05USU5VRQBIUEVfQ0JfU1RBVFVTX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJTX0NPTVBMRVRFAEhQRV9DQl9WRVJTSU9OX0NPTVBMRVRFAEhQRV9DQl9VUkxfQ09NUExFVEUASFBFX0NCX1BST1RPQ09MX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19DT01QTEVURQBIUEVfQ0JfSEVBREVSX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fVkFMVUVfQ09NUExFVEUASFBFX0NCX0NIVU5LX0VYVEVOU0lPTl9OQU1FX0NPTVBMRVRFAEhQRV9DQl9NRVNTQUdFX0NPTVBMRVRFAEhQRV9DQl9NRVRIT0RfQ09NUExFVEUASFBFX0NCX0hFQURFUl9GSUVMRF9DT01QTEVURQBERUxFVEUASFBFX0lOVkFMSURfRU9GX1NUQVRFAElOVkFMSURfU1NMX0NFUlRJRklDQVRFAFBBVVNFAE5PX1JFU1BPTlNFAFVOU1VQUE9SVEVEX01FRElBX1RZUEUAR09ORQBOT1RfQUNDRVBUQUJMRQBTRVJWSUNFX1VOQVZBSUxBQkxFAFJBTkdFX05PVF9TQVRJU0ZJQUJMRQBPUklHSU5fSVNfVU5SRUFDSEFCTEUAUkVTUE9OU0VfSVNfU1RBTEUAUFVSR0UATUVSR0UAUkVRVUVTVF9IRUFERVJfRklFTERTX1RPT19MQVJHRQBSRVFVRVNUX0hFQURFUl9UT09fTEFSR0UAUEFZTE9BRF9UT09fTEFSR0UASU5TVUZGSUNJRU5UX1NUT1JBR0UASFBFX1BBVVNFRF9VUEdSQURFAEhQRV9QQVVTRURfSDJfVVBHUkFERQBTT1VSQ0UAQU5OT1VOQ0UAVFJBQ0UASFBFX1VORVhQRUNURURfU1BBQ0UAREVTQ1JJQkUAVU5TVUJTQ1JJQkUAUkVDT1JEAEhQRV9JTlZBTElEX01FVEhPRABOT1RfRk9VTkQAUFJPUEZJTkQAVU5CSU5EAFJFQklORABVTkFVVEhPUklaRUQATUVUSE9EX05PVF9BTExPV0VEAEhUVFBfVkVSU0lPTl9OT1RfU1VQUE9SVEVEAEFMUkVBRFlfUkVQT1JURUQAQUNDRVBURUQATk9UX0lNUExFTUVOVEVEAExPT1BfREVURUNURUQASFBFX0NSX0VYUEVDVEVEAEhQRV9MRl9FWFBFQ1RFRABDUkVBVEVEAElNX1VTRUQASFBFX1BBVVNFRABUSU1FT1VUX09DQ1VSRUQAUEFZTUVOVF9SRVFVSVJFRABQUkVDT05ESVRJT05fUkVRVUlSRUQAUFJPWFlfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATkVUV09SS19BVVRIRU5USUNBVElPTl9SRVFVSVJFRABMRU5HVEhfUkVRVUlSRUQAU1NMX0NFUlRJRklDQVRFX1JFUVVJUkVEAFVQR1JBREVfUkVRVUlSRUQAUEFHRV9FWFBJUkVEAFBSRUNPTkRJVElPTl9GQUlMRUQARVhQRUNUQVRJT05fRkFJTEVEAFJFVkFMSURBVElPTl9GQUlMRUQAU1NMX0hBTkRTSEFLRV9GQUlMRUQATE9DS0VEAFRSQU5TRk9STUFUSU9OX0FQUExJRUQATk9UX01PRElGSUVEAE5PVF9FWFRFTkRFRABCQU5EV0lEVEhfTElNSVRfRVhDRUVERUQAU0lURV9JU19PVkVSTE9BREVEAEhFQUQARXhwZWN0ZWQgSFRUUC8sIFJUU1AvIG9yIElDRS8A5xUAAK8VAACkEgAAkhoAACYWAACeFAAA2xkAAHkVAAB+EgAA/hQAADYVAAALFgAA2BYAAPMSAABCGAAArBYAABIVAAAUFwAA7xcAAEgUAABxFwAAshoAAGsZAAB+GQAANRQAAIIaAABEFwAA/RYAAB4YAACHFwAAqhkAAJMSAAAHGAAALBcAAMoXAACkFwAA5xUAAOcVAABYFwAAOxgAAKASAAAtHAAAwxEAAEgRAADeEgAAQhMAAKQZAAD9EAAA9xUAAKUVAADvFgAA+BkAAEoWAABWFgAA9RUAAAoaAAAIGgAAARoAAKsVAABCEgAA1xAAAEwRAAAFGQAAVBYAAB4RAADKGQAAyBkAAE4WAAD/GAAAcRQAAPAVAADuFQAAlBkAAPwVAAC/GQAAmxkAAHwUAABDEQAAcBgAAJUUAAAnFAAAGRQAANUSAADUGQAARBYAAPcQAEG5OwsBAQBB0DsL4AEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEDAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBuj0LBAEAAAIAQdE9C14DBAMDAwMDAAADAwADAwADAwMDAwMDAwMDAAUAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAwADAEG6PwsEAQAAAgBB0T8LXgMAAwMDAwMAAAMDAAMDAAMDAwMDAwMDAwMABAAFAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwADAAMAQbDBAAsNbG9zZWVlcC1hbGl2ZQBBycEACwEBAEHgwQAL4AEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBycMACwEBAEHgwwAL5wEBAQEBAQEBAQEBAQECAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAWNodW5rZWQAQfHFAAteAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQBB0McACyFlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AQYDIAAsgcmFuc2Zlci1lbmNvZGluZ3BncmFkZQ0KDQpTTQ0KDQoAQanIAAsFAQIAAQMAQcDIAAtfBAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanKAAsFAQIAAQMAQcDKAAtfBAUFBgUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanMAAsEAQAAAQBBwcwAC14CAgACAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAEGpzgALBQECAAEDAEHAzgALXwQFAAAFBQUFBQUFBQUFBQYFBQUFBQUFBQUFBQUABQAHCAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQAFAAUABQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAAAAFAEGp0AALBQEBAAEBAEHA0AALAQEAQdrQAAtBAgAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAQanSAAsFAQEAAQEAQcDSAAsBAQBBytIACwYCAAAAAAIAQeHSAAs6AwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBBoNQAC50BTk9VTkNFRUNLT1VUTkVDVEVURUNSSUJFTFVTSEVURUFEU0VBUkNIUkdFQ1RJVklUWUxFTkRBUlZFT1RJRllQVElPTlNDSFNFQVlTVEFUQ0hHRVVFUllPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFVFRQQ0VUU1BBRFRQLw==","base64")}})});var Iq=R((msY,N2Q)=>{var U2Q=["GET","HEAD","POST"],ij0=new Set(U2Q),nj0=[101,204,205,304],E2Q=[301,302,303,307,308],sj0=new Set(E2Q),K2Q=["1","7","9","11","13","15","17","19","20","21","22","23","25","37","42","43","53","69","77","79","87","95","101","102","103","104","109","110","111","113","115","117","119","123","135","137","139","143","161","179","389","427","465","512","513","514","515","526","530","531","532","540","548","554","556","563","587","601","636","989","990","993","995","1719","1720","1723","2049","3659","4045","4190","5060","5061","6000","6566","6665","6666","6667","6668","6669","6679","6697","10080"],rj0=new Set(K2Q),V2Q=["no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"],aj0=["",...V2Q],oj0=new Set(V2Q),tj0=["follow","manual","error"],I2Q=["GET","HEAD","OPTIONS","TRACE"],ej0=new Set(I2Q),AO0=["navigate","same-origin","no-cors","cors"],QO0=["omit","same-origin","include"],BO0=["default","no-store","reload","no-cache","force-cache","only-if-cached"],YO0=["content-encoding","content-language","content-location","content-type","content-length"],JO0=["half"],H2Q=["CONNECT","TRACE","TRACK"],CO0=new Set(H2Q),D2Q=["audio","audioworklet","font","image","manifest","paintworklet","script","style","track","video","xslt",""],XO0=new Set(D2Q);N2Q.exports={subresource:D2Q,forbiddenMethods:H2Q,requestBodyHeader:YO0,referrerPolicy:aj0,requestRedirect:tj0,requestMode:AO0,requestCredentials:QO0,requestCache:BO0,redirectStatus:E2Q,corsSafeListedMethods:U2Q,nullBodyStatus:nj0,safeMethods:I2Q,badPorts:K2Q,requestDuplex:JO0,subresourceSet:XO0,badPortsSet:rj0,redirectStatusSet:sj0,corsSafeListedMethodsSet:ij0,safeMethodsSet:ej0,forbiddenMethodsSet:CO0,referrerPolicyTokens:oj0}});var Sr=R((usY,L2Q)=>{var Tr=Symbol.for("undici.globalOrigin.1");function GO0(){return globalThis[Tr]}function WO0(A){if(A===void 0){Object.defineProperty(globalThis,Tr,{value:void 0,writable:!0,enumerable:!1,configurable:!1});return}let Q=new URL(A);if(Q.protocol!=="http:"&&Q.protocol!=="https:")throw TypeError(`Only http & https urls are allowed, received ${Q.protocol}`);Object.defineProperty(globalThis,Tr,{value:Q,writable:!0,enumerable:!1,configurable:!1})}L2Q.exports={getGlobalOrigin:GO0,setGlobalOrigin:WO0}});var l8=R((dsY,O2Q)=>{var KS=u("node:assert"),FO0=new TextEncoder,Hq=/^[!#$%&'*+\-.^_|~A-Za-z0-9]+$/,ZO0=/[\u000A\u000D\u0009\u0020]/,$O0=/[\u0009\u000A\u000C\u000D\u0020]/g,UO0=/^[\u0009\u0020-\u007E\u0080-\u00FF]+$/;function EO0(A){KS(A.protocol==="data:");let Q=z2Q(A,!0);Q=Q.slice(5);let B={position:0},Y=sK(",",Q,B),J=Y.length;if(Y=NO0(Y,!0,!0),B.position>=Q.length)return"failure";B.position++;let C=Q.slice(J+1),X=R2Q(C);if(/;(\u0020){0,}base64$/i.test(Y)){let W=j2Q(X);if(X=VO0(W),X==="failure")return"failure";Y=Y.slice(0,-6),Y=Y.replace(/(\u0020)+$/,""),Y=Y.slice(0,-1)}if(Y.startsWith(";"))Y="text/plain"+Y;let G=kr(Y);if(G==="failure")G=kr("text/plain;charset=US-ASCII");return{mimeType:G,body:X}}function z2Q(A,Q=!1){if(!Q)return A.href;let B=A.href,Y=A.hash.length,J=Y===0?B:B.substring(0,B.length-Y);if(!Y&&B.endsWith("#"))return J.slice(0,-1);return J}function VS(A,Q,B){let Y="";while(B.position=48&&A<=57||A>=65&&A<=70||A>=97&&A<=102}function M2Q(A){return A>=48&&A<=57?A-48:(A&223)-55}function KO0(A){let Q=A.length,B=new Uint8Array(Q),Y=0;for(let J=0;J=A.length)return"failure";Q.position++;let Y=sK(";",A,Q);if(Y=ES(Y,!1,!0),Y.length===0||!Hq.test(Y))return"failure";let J=B.toLowerCase(),C=Y.toLowerCase(),X={type:J,subtype:C,parameters:new Map,essence:`${J}/${C}`};while(Q.positionZO0.test(F),A,Q);let G=VS((F)=>F!==";"&&F!=="=",A,Q);if(G=G.toLowerCase(),Q.position=A.length)break;let W=null;if(A[Q.position]==='"')W=w2Q(A,Q,!0),sK(";",A,Q);else if(W=sK(";",A,Q),W=ES(W,!1,!0),W.length===0)continue;if(G.length!==0&&Hq.test(G)&&(W.length===0||UO0.test(W))&&!X.parameters.has(G))X.parameters.set(G,W)}return X}function VO0(A){A=A.replace($O0,"");let Q=A.length;if(Q%4===0){if(A.charCodeAt(Q-1)===61){if(--Q,A.charCodeAt(Q-1)===61)--Q}}if(Q%4===1)return"failure";if(/[^+/0-9A-Za-z]/.test(A.length===Q?A:A.substring(0,Q)))return"failure";let B=Buffer.from(A,"base64");return new Uint8Array(B.buffer,B.byteOffset,B.byteLength)}function w2Q(A,Q,B=!1){let Y=Q.position,J="";KS(A[Q.position]==='"'),Q.position++;while(!0){if(J+=VS((X)=>X!=='"'&&X!=="\\",A,Q),Q.position>=A.length)break;let C=A[Q.position];if(Q.position++,C==="\\"){if(Q.position>=A.length){J+="\\";break}J+=A[Q.position],Q.position++}else{KS(C==='"');break}}if(B)return J;return A.slice(Y,Q.position)}function IO0(A){KS(A!=="failure");let{parameters:Q,essence:B}=A,Y=B;for(let[J,C]of Q.entries()){if(Y+=";",Y+=J,Y+="=",!Hq.test(C))C=C.replace(/(\\|")/g,"\\$1"),C='"'+C,C+='"';Y+=C}return Y}function HO0(A){return A===13||A===10||A===9||A===32}function ES(A,Q=!0,B=!0){return _r(A,Q,B,HO0)}function DO0(A){return A===13||A===10||A===9||A===12||A===32}function NO0(A,Q=!0,B=!0){return _r(A,Q,B,DO0)}function _r(A,Q,B,Y){let J=0,C=A.length-1;if(Q)while(J0&&Y(A.charCodeAt(C)))C--;return J===0&&C===A.length-1?A:A.slice(J,C+1)}function j2Q(A){let Q=A.length;if(65535>Q)return String.fromCharCode.apply(null,A);let B="",Y=0,J=65535;while(YQ)J=Q-Y;B+=String.fromCharCode.apply(null,A.subarray(Y,Y+=J))}return B}function LO0(A){switch(A.essence){case"application/ecmascript":case"application/javascript":case"application/x-ecmascript":case"application/x-javascript":case"text/ecmascript":case"text/javascript":case"text/javascript1.0":case"text/javascript1.1":case"text/javascript1.2":case"text/javascript1.3":case"text/javascript1.4":case"text/javascript1.5":case"text/jscript":case"text/livescript":case"text/x-ecmascript":case"text/x-javascript":return"text/javascript";case"application/json":case"text/json":return"application/json";case"image/svg+xml":return"image/svg+xml";case"text/xml":case"application/xml":return"application/xml"}if(A.subtype.endsWith("+json"))return"application/json";if(A.subtype.endsWith("+xml"))return"application/xml";return""}O2Q.exports={dataURLProcessor:EO0,URLSerializer:z2Q,collectASequenceOfCodePoints:VS,collectASequenceOfCodePointsFast:sK,stringPercentDecode:R2Q,parseMIMEType:kr,collectAnHTTPQuotedString:w2Q,serializeAMimeType:IO0,removeChars:_r,removeHTTPWhitespace:ES,minimizeSupportedMimeType:LO0,HTTP_TOKEN_CODEPOINTS:Hq,isomorphicDecode:j2Q}});var HJ=R((csY,T2Q)=>{var{types:fY,inspect:qO0}=u("node:util"),{markAsUncloneable:MO0}=u("node:worker_threads"),P2Q=Function.call.bind(Function.prototype[Symbol.hasInstance]),JA={converters:{},util:{},errors:{},is:{}};JA.errors.exception=function(A){return TypeError(`${A.header}: ${A.message}`)};JA.errors.conversionFailed=function(A){let Q=A.types.length===1?"":" one of",B=`${A.argument} could not be converted to${Q}: ${A.types.join(", ")}.`;return JA.errors.exception({header:A.prefix,message:B})};JA.errors.invalidArgument=function(A){return JA.errors.exception({header:A.prefix,message:`"${A.value}" is an invalid ${A.type}.`})};JA.brandCheck=function(A,Q){if(!P2Q(Q,A)){let B=TypeError("Illegal invocation");throw B.code="ERR_INVALID_THIS",B}};JA.brandCheckMultiple=function(A){let Q=A.map((B)=>JA.util.MakeTypeAssertion(B));return(B)=>{if(Q.every((Y)=>!Y(B))){let Y=TypeError("Illegal invocation");throw Y.code="ERR_INVALID_THIS",Y}}};JA.argumentLengthCheck=function({length:A},Q,B){if(AP2Q(A,Q)};JA.util.Type=function(A){switch(typeof A){case"undefined":return 1;case"boolean":return 2;case"string":return 3;case"symbol":return 4;case"number":return 5;case"bigint":return 6;case"function":case"object":{if(A===null)return 7;return 8}}};JA.util.Types={UNDEFINED:1,BOOLEAN:2,STRING:3,SYMBOL:4,NUMBER:5,BIGINT:6,NULL:7,OBJECT:8};JA.util.TypeValueToString=function(A){switch(JA.util.Type(A)){case 1:return"Undefined";case 2:return"Boolean";case 3:return"String";case 4:return"Symbol";case 5:return"Number";case 6:return"BigInt";case 7:return"Null";case 8:return"Object"}};JA.util.markAsUncloneable=MO0||(()=>{});JA.util.ConvertToInt=function(A,Q,B,Y){let J,C;if(Q===64)if(J=Math.pow(2,53)-1,B==="unsigned")C=0;else C=Math.pow(-2,53)+1;else if(B==="unsigned")C=0,J=Math.pow(2,Q)-1;else C=Math.pow(-2,Q)-1,J=Math.pow(2,Q-1)-1;let X=Number(A);if(X===0)X=0;if(JA.util.HasFlag(Y,JA.attributes.EnforceRange)){if(Number.isNaN(X)||X===Number.POSITIVE_INFINITY||X===Number.NEGATIVE_INFINITY)throw JA.errors.exception({header:"Integer conversion",message:`Could not convert ${JA.util.Stringify(A)} to an integer.`});if(X=JA.util.IntegerPart(X),XJ)throw JA.errors.exception({header:"Integer conversion",message:`Value must be between ${C}-${J}, got ${X}.`});return X}if(!Number.isNaN(X)&&JA.util.HasFlag(Y,JA.attributes.Clamp)){if(X=Math.min(Math.max(X,C),J),Math.floor(X)%2===0)X=Math.floor(X);else X=Math.ceil(X);return X}if(Number.isNaN(X)||X===0&&Object.is(0,X)||X===Number.POSITIVE_INFINITY||X===Number.NEGATIVE_INFINITY)return 0;if(X=JA.util.IntegerPart(X),X=X%Math.pow(2,Q),B==="signed"&&X>=Math.pow(2,Q)-1)return X-Math.pow(2,Q);return X};JA.util.IntegerPart=function(A){let Q=Math.floor(Math.abs(A));if(A<0)return-1*Q;return Q};JA.util.Stringify=function(A){switch(JA.util.Type(A)){case 4:return`Symbol(${A.description})`;case 8:return qO0(A);case 3:return`"${A}"`;case 6:return`${A}n`;default:return`${A}`}};JA.util.IsResizableArrayBuffer=function(A){if(fY.isArrayBuffer(A))return A.resizable;if(fY.isSharedArrayBuffer(A))return A.growable;throw JA.errors.exception({header:"IsResizableArrayBuffer",message:`"${JA.util.Stringify(A)}" is not an array buffer.`})};JA.util.HasFlag=function(A,Q){return typeof A==="number"&&(A&Q)===Q};JA.sequenceConverter=function(A){return(Q,B,Y,J)=>{if(JA.util.Type(Q)!==8)throw JA.errors.exception({header:B,message:`${Y} (${JA.util.Stringify(Q)}) is not iterable.`});let C=typeof J==="function"?J():Q?.[Symbol.iterator]?.(),X=[],G=0;if(C===void 0||typeof C.next!=="function")throw JA.errors.exception({header:B,message:`${Y} is not iterable.`});while(!0){let{done:W,value:F}=C.next();if(W)break;X.push(A(F,B,`${Y}[${G++}]`))}return X}};JA.recordConverter=function(A,Q){return(B,Y,J)=>{if(JA.util.Type(B)!==8)throw JA.errors.exception({header:Y,message:`${J} ("${JA.util.TypeValueToString(B)}") is not an Object.`});let C={};if(!fY.isProxy(B)){let G=[...Object.getOwnPropertyNames(B),...Object.getOwnPropertySymbols(B)];for(let W of G){let F=JA.util.Stringify(W),Z=A(W,Y,`Key ${F} in ${J}`),U=Q(B[W],Y,`${J}[${F}]`);C[Z]=U}return C}let X=Reflect.ownKeys(B);for(let G of X)if(Reflect.getOwnPropertyDescriptor(B,G)?.enumerable){let F=A(G,Y,J),Z=Q(B[G],Y,J);C[F]=Z}return C}};JA.interfaceConverter=function(A,Q){return(B,Y,J)=>{if(!A(B))throw JA.errors.exception({header:Y,message:`Expected ${J} ("${JA.util.Stringify(B)}") to be an instance of ${Q}.`});return B}};JA.dictionaryConverter=function(A){return(Q,B,Y)=>{let J={};if(Q!=null&&JA.util.Type(Q)!==8)throw JA.errors.exception({header:B,message:`Expected ${Q} to be one of: Null, Undefined, Object.`});for(let C of A){let{key:X,defaultValue:G,required:W,converter:F}=C;if(W===!0){if(Q==null||!Object.hasOwn(Q,X))throw JA.errors.exception({header:B,message:`Missing required key "${X}".`})}let Z=Q?.[X],U=G!==void 0;if(U&&Z===void 0)Z=G();if(W||U||Z!==void 0){if(Z=F(Z,B,`${Y}.${X}`),C.allowedValues&&!C.allowedValues.includes(Z))throw JA.errors.exception({header:B,message:`${Z} is not an accepted type. Expected one of ${C.allowedValues.join(", ")}.`});J[X]=Z}}return J}};JA.nullableConverter=function(A){return(Q,B,Y)=>{if(Q===null)return Q;return A(Q,B,Y)}};JA.is.USVString=function(A){return typeof A==="string"&&A.isWellFormed()};JA.is.ReadableStream=JA.util.MakeTypeAssertion(ReadableStream);JA.is.Blob=JA.util.MakeTypeAssertion(Blob);JA.is.URLSearchParams=JA.util.MakeTypeAssertion(URLSearchParams);JA.is.File=JA.util.MakeTypeAssertion(File);JA.is.URL=JA.util.MakeTypeAssertion(URL);JA.is.AbortSignal=JA.util.MakeTypeAssertion(AbortSignal);JA.is.MessagePort=JA.util.MakeTypeAssertion(MessagePort);JA.is.BufferSource=function(A){return fY.isArrayBuffer(A)||ArrayBuffer.isView(A)&&fY.isArrayBuffer(A.buffer)};JA.converters.DOMString=function(A,Q,B,Y){if(A===null&&JA.util.HasFlag(Y,JA.attributes.LegacyNullToEmptyString))return"";if(typeof A==="symbol")throw JA.errors.exception({header:Q,message:`${B} is a symbol, which cannot be converted to a DOMString.`});return String(A)};JA.converters.ByteString=function(A,Q,B){if(typeof A==="symbol")throw JA.errors.exception({header:Q,message:`${B} is a symbol, which cannot be converted to a ByteString.`});let Y=String(A);for(let J=0;J255)throw TypeError(`Cannot convert argument to a ByteString because the character at index ${J} has a value of ${Y.charCodeAt(J)} which is greater than 255.`);return Y};JA.converters.USVString=function(A){if(typeof A==="string")return A.toWellFormed();return`${A}`.toWellFormed()};JA.converters.boolean=function(A){return Boolean(A)};JA.converters.any=function(A){return A};JA.converters["long long"]=function(A,Q,B){return JA.util.ConvertToInt(A,64,"signed",0,Q,B)};JA.converters["unsigned long long"]=function(A,Q,B){return JA.util.ConvertToInt(A,64,"unsigned",0,Q,B)};JA.converters["unsigned long"]=function(A,Q,B){return JA.util.ConvertToInt(A,32,"unsigned",0,Q,B)};JA.converters["unsigned short"]=function(A,Q,B,Y){return JA.util.ConvertToInt(A,16,"unsigned",Y,Q,B)};JA.converters.ArrayBuffer=function(A,Q,B,Y){if(JA.util.Type(A)!==8||!fY.isArrayBuffer(A))throw JA.errors.conversionFailed({prefix:Q,argument:`${B} ("${JA.util.Stringify(A)}")`,types:["ArrayBuffer"]});if(!JA.util.HasFlag(Y,JA.attributes.AllowResizable)&&JA.util.IsResizableArrayBuffer(A))throw JA.errors.exception({header:Q,message:`${B} cannot be a resizable ArrayBuffer.`});return A};JA.converters.SharedArrayBuffer=function(A,Q,B,Y){if(JA.util.Type(A)!==8||!fY.isSharedArrayBuffer(A))throw JA.errors.conversionFailed({prefix:Q,argument:`${B} ("${JA.util.Stringify(A)}")`,types:["SharedArrayBuffer"]});if(!JA.util.HasFlag(Y,JA.attributes.AllowResizable)&&JA.util.IsResizableArrayBuffer(A))throw JA.errors.exception({header:Q,message:`${B} cannot be a resizable SharedArrayBuffer.`});return A};JA.converters.TypedArray=function(A,Q,B,Y,J){if(JA.util.Type(A)!==8||!fY.isTypedArray(A)||A.constructor.name!==Q.name)throw JA.errors.conversionFailed({prefix:B,argument:`${Y} ("${JA.util.Stringify(A)}")`,types:[Q.name]});if(!JA.util.HasFlag(J,JA.attributes.AllowShared)&&fY.isSharedArrayBuffer(A.buffer))throw JA.errors.exception({header:B,message:`${Y} cannot be a view on a shared array buffer.`});if(!JA.util.HasFlag(J,JA.attributes.AllowResizable)&&JA.util.IsResizableArrayBuffer(A.buffer))throw JA.errors.exception({header:B,message:`${Y} cannot be a view on a resizable array buffer.`});return A};JA.converters.DataView=function(A,Q,B,Y){if(JA.util.Type(A)!==8||!fY.isDataView(A))throw JA.errors.conversionFailed({prefix:Q,argument:`${B} ("${JA.util.Stringify(A)}")`,types:["DataView"]});if(!JA.util.HasFlag(Y,JA.attributes.AllowShared)&&fY.isSharedArrayBuffer(A.buffer))throw JA.errors.exception({header:Q,message:`${B} cannot be a view on a shared array buffer.`});if(!JA.util.HasFlag(Y,JA.attributes.AllowResizable)&&JA.util.IsResizableArrayBuffer(A.buffer))throw JA.errors.exception({header:Q,message:`${B} cannot be a view on a resizable array buffer.`});return A};JA.converters.ArrayBufferView=function(A,Q,B,Y){if(JA.util.Type(A)!==8||!fY.isArrayBufferView(A))throw JA.errors.conversionFailed({prefix:Q,argument:`${B} ("${JA.util.Stringify(A)}")`,types:["ArrayBufferView"]});if(!JA.util.HasFlag(Y,JA.attributes.AllowShared)&&fY.isSharedArrayBuffer(A.buffer))throw JA.errors.exception({header:Q,message:`${B} cannot be a view on a shared array buffer.`});if(!JA.util.HasFlag(Y,JA.attributes.AllowResizable)&&JA.util.IsResizableArrayBuffer(A.buffer))throw JA.errors.exception({header:Q,message:`${B} cannot be a view on a resizable array buffer.`});return A};JA.converters.BufferSource=function(A,Q,B,Y){if(fY.isArrayBuffer(A))return JA.converters.ArrayBuffer(A,Q,B,Y);if(fY.isArrayBufferView(A))return Y&=~JA.attributes.AllowShared,JA.converters.ArrayBufferView(A,Q,B,Y);if(fY.isSharedArrayBuffer(A))throw JA.errors.exception({header:Q,message:`${B} cannot be a SharedArrayBuffer.`});throw JA.errors.conversionFailed({prefix:Q,argument:`${B} ("${JA.util.Stringify(A)}")`,types:["ArrayBuffer","ArrayBufferView"]})};JA.converters.AllowSharedBufferSource=function(A,Q,B,Y){if(fY.isArrayBuffer(A))return JA.converters.ArrayBuffer(A,Q,B,Y);if(fY.isSharedArrayBuffer(A))return JA.converters.SharedArrayBuffer(A,Q,B,Y);if(fY.isArrayBufferView(A))return Y|=JA.attributes.AllowShared,JA.converters.ArrayBufferView(A,Q,B,Y);throw JA.errors.conversionFailed({prefix:Q,argument:`${B} ("${JA.util.Stringify(A)}")`,types:["ArrayBuffer","SharedArrayBuffer","ArrayBufferView"]})};JA.converters["sequence"]=JA.sequenceConverter(JA.converters.ByteString);JA.converters["sequence>"]=JA.sequenceConverter(JA.converters["sequence"]);JA.converters["record"]=JA.recordConverter(JA.converters.ByteString,JA.converters.ByteString);JA.converters.Blob=JA.interfaceConverter(JA.is.Blob,"Blob");JA.converters.AbortSignal=JA.interfaceConverter(JA.is.AbortSignal,"AbortSignal");JA.converters.EventHandlerNonNull=function(A){if(JA.util.Type(A)!==8)return null;if(typeof A==="function")return A;return()=>{}};JA.attributes={Clamp:1,EnforceRange:2,AllowShared:4,AllowResizable:8,LegacyNullToEmptyString:16};T2Q.exports={webidl:JA}});var z9=R((lsY,i2Q)=>{var{Transform:zO0}=u("node:stream"),S2Q=u("node:zlib"),{redirectStatusSet:RO0,referrerPolicyTokens:wO0,badPortsSet:jO0}=Iq(),{getGlobalOrigin:k2Q}=Sr(),{collectASequenceOfCodePoints:m$,collectAnHTTPQuotedString:OO0,removeChars:PO0,parseMIMEType:TO0}=l8(),{performance:SO0}=u("node:perf_hooks"),{ReadableStreamFrom:kO0,isValidHTTPToken:_2Q,normalizedMethodRecordsBase:_O0}=lQ(),c$=u("node:assert"),{isUint8Array:vO0}=u("node:util/types"),{webidl:eW}=HJ();function v2Q(A){let Q=A.urlList,B=Q.length;return B===0?null:Q[B-1].toString()}function yO0(A,Q){if(!RO0.has(A.status))return null;let B=A.headersList.get("location",!0);if(B!==null&&g2Q(B)){if(!y2Q(B))B=gO0(B);B=new URL(B,v2Q(A))}if(B&&!B.hash)B.hash=Q;return B}function y2Q(A){for(let Q=0;Q126||B<32)return!1}return!0}function gO0(A){return Buffer.from(A,"binary").toString("utf8")}function d$(A){return A.urlList[A.urlList.length-1]}function hO0(A){let Q=d$(A);if(u2Q(Q)&&jO0.has(Q.port))return"blocked";return"allowed"}function xO0(A){return A instanceof Error||(A?.constructor?.name==="Error"||A?.constructor?.name==="DOMException")}function fO0(A){for(let Q=0;Q=32&&B<=126||B>=128&&B<=255))return!1}return!0}var bO0=_2Q;function g2Q(A){return(A[0]==="\t"||A[0]===" "||A[A.length-1]==="\t"||A[A.length-1]===" "||A.includes(` +`)||A.includes("\r")||A.includes("\x00"))===!1}function mO0(A){let Q=(A.headersList.get("referrer-policy",!0)??"").split(","),B="";if(Q.length)for(let Y=Q.length;Y!==0;Y--){let J=Q[Y-1].trim();if(wO0.has(J)){B=J;break}}return B}function uO0(A,Q){let B=mO0(Q);if(B!=="")A.referrerPolicy=B}function dO0(){return"allowed"}function cO0(){return"success"}function lO0(){return"success"}function pO0(A){let Q=null;Q=A.mode,A.headersList.set("sec-fetch-mode",Q,!0)}function iO0(A){let Q=A.origin;if(Q==="client"||Q===void 0)return;if(A.responseTainting==="cors"||A.mode==="websocket")A.headersList.append("origin",Q,!0);else if(A.method!=="GET"&&A.method!=="HEAD"){switch(A.referrerPolicy){case"no-referrer":Q=null;break;case"no-referrer-when-downgrade":case"strict-origin":case"strict-origin-when-cross-origin":if(A.origin&&yr(A.origin)&&!yr(d$(A)))Q=null;break;case"same-origin":if(!Dq(A,d$(A)))Q=null;break;default:}A.headersList.append("origin",Q,!0)}}function rK(A,Q){return A}function nO0(A,Q,B){if(!A?.startTime||A.startTime4096)Y=J;switch(Q){case"no-referrer":return"no-referrer";case"origin":if(J!=null)return J;return vr(B,!0);case"unsafe-url":return Y;case"strict-origin":{let C=d$(A);if(u$(Y)&&!u$(C))return"no-referrer";return J}case"strict-origin-when-cross-origin":{let C=d$(A);if(Dq(Y,C))return Y;if(u$(Y)&&!u$(C))return"no-referrer";return J}case"same-origin":if(Dq(A,Y))return Y;return"no-referrer";case"origin-when-cross-origin":if(Dq(A,Y))return Y;return J;case"no-referrer-when-downgrade":{let C=d$(A);if(u$(Y)&&!u$(C))return"no-referrer";return Y}}}function vr(A,Q=!1){if(c$(eW.is.URL(A)),A=new URL(A),m2Q(A))return"no-referrer";if(A.username="",A.password="",A.hash="",Q===!0)A.pathname="",A.search="";return A}var tO0=RegExp.prototype.test.bind(/^127\.(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)\.){2}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)$/),eO0=RegExp.prototype.test.bind(/^(?:(?:0{1,4}:){7}|(?:0{1,4}:){1,6}:|::)0{0,3}1$/);function x2Q(A){if(A.includes(":")){if(A[0]==="["&&A[A.length-1]==="]")A=A.slice(1,-1);return eO0(A)}return tO0(A)}function AP0(A){if(A==null||A==="null")return!1;if(A=new URL(A),A.protocol==="https:"||A.protocol==="wss:")return!0;if(x2Q(A.hostname))return!0;if(A.hostname==="localhost"||A.hostname==="localhost.")return!0;if(A.hostname.endsWith(".localhost")||A.hostname.endsWith(".localhost."))return!0;if(A.protocol==="file:")return!0;return!1}function u$(A){if(!eW.is.URL(A))return!1;if(A.href==="about:blank"||A.href==="about:srcdoc")return!0;if(A.protocol==="data:")return!0;if(A.protocol==="blob:")return!0;return AP0(A.origin)}function QP0(A){}function Dq(A,Q){if(A.origin===Q.origin&&A.origin==="null")return!0;if(A.protocol===Q.protocol&&A.hostname===Q.hostname&&A.port===Q.port)return!0;return!1}function BP0(A){return A.controller.state==="aborted"}function YP0(A){return A.controller.state==="aborted"||A.controller.state==="terminated"}function JP0(A){return _O0[A.toLowerCase()]??A}function CP0(A){let Q=JSON.stringify(A);if(Q===void 0)throw TypeError("Value is not JSON serializable");return c$(typeof Q==="string"),Q}var XP0=Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]()));function f2Q(A,Q,B=0,Y=1){class J{#A;#Q;#B;constructor(C,X){this.#A=C,this.#Q=X,this.#B=0}next(){if(typeof this!=="object"||this===null||!(#A in this))throw TypeError(`'next' called on an object that does not implement interface ${A} Iterator.`);let C=this.#B,X=Q(this.#A),G=X.length;if(C>=G)return{value:void 0,done:!0};let{[B]:W,[Y]:F}=X[C];this.#B=C+1;let Z;switch(this.#Q){case"key":Z=W;break;case"value":Z=F;break;case"key+value":Z=[W,F];break}return{value:Z,done:!1}}}return delete J.prototype.constructor,Object.setPrototypeOf(J.prototype,XP0),Object.defineProperties(J.prototype,{[Symbol.toStringTag]:{writable:!1,enumerable:!1,configurable:!0,value:`${A} Iterator`},next:{writable:!0,enumerable:!0,configurable:!0}}),function(C,X){return new J(C,X)}}function GP0(A,Q,B,Y=0,J=1){let C=f2Q(A,B,Y,J),X={keys:{writable:!0,enumerable:!0,configurable:!0,value:function(){return eW.brandCheck(this,Q),C(this,"key")}},values:{writable:!0,enumerable:!0,configurable:!0,value:function(){return eW.brandCheck(this,Q),C(this,"value")}},entries:{writable:!0,enumerable:!0,configurable:!0,value:function(){return eW.brandCheck(this,Q),C(this,"key+value")}},forEach:{writable:!0,enumerable:!0,configurable:!0,value:function(W,F=globalThis){if(eW.brandCheck(this,Q),eW.argumentLengthCheck(arguments,1,`${A}.forEach`),typeof W!=="function")throw TypeError(`Failed to execute 'forEach' on '${A}': parameter 1 is not of type 'Function'.`);for(let{0:Z,1:U}of C(this,"key+value"))W.call(F,U,Z,this)}}};return Object.defineProperties(Q.prototype,{...X,[Symbol.iterator]:{writable:!0,enumerable:!1,configurable:!0,value:X.entries.value}})}function WP0(A,Q,B){let Y=Q,J=B;try{let C=A.stream.getReader();b2Q(C,Y,J)}catch(C){J(C)}}function FP0(A){try{A.close(),A.byobRequest?.respond(0)}catch(Q){if(!Q.message.includes("Controller is already closed")&&!Q.message.includes("ReadableStream is already closed"))throw Q}}var ZP0=/[^\x00-\xFF]/;function IS(A){return c$(!ZP0.test(A)),A}async function b2Q(A,Q,B){try{let Y=[],J=0;do{let{done:C,value:X}=await A.read();if(C){Q(Buffer.concat(Y,J));return}if(!vO0(X)){B(TypeError("Received non-Uint8Array chunk"));return}Y.push(X),J+=X.length}while(!0)}catch(Y){B(Y)}}function m2Q(A){c$("protocol"in A);let Q=A.protocol;return Q==="about:"||Q==="blob:"||Q==="data:"}function yr(A){return typeof A==="string"&&A[5]===":"&&A[0]==="h"&&A[1]==="t"&&A[2]==="t"&&A[3]==="p"&&A[4]==="s"||A.protocol==="https:"}function u2Q(A){c$("protocol"in A);let Q=A.protocol;return Q==="http:"||Q==="https:"}function $P0(A,Q){let B=A;if(!B.startsWith("bytes"))return"failure";let Y={position:5};if(Q)m$((W)=>W==="\t"||W===" ",B,Y);if(B.charCodeAt(Y.position)!==61)return"failure";if(Y.position++,Q)m$((W)=>W==="\t"||W===" ",B,Y);let J=m$((W)=>{let F=W.charCodeAt(0);return F>=48&&F<=57},B,Y),C=J.length?Number(J):null;if(Q)m$((W)=>W==="\t"||W===" ",B,Y);if(B.charCodeAt(Y.position)!==45)return"failure";if(Y.position++,Q)m$((W)=>W==="\t"||W===" ",B,Y);let X=m$((W)=>{let F=W.charCodeAt(0);return F>=48&&F<=57},B,Y),G=X.length?Number(X):null;if(Y.positionG)return"failure";return{rangeStartValue:C,rangeEndValue:G}}function UP0(A,Q,B){let Y="bytes ";return Y+=IS(`${A}`),Y+="-",Y+=IS(`${Q}`),Y+="/",Y+=IS(`${B}`),Y}class d2Q extends zO0{#A;constructor(A){super();this.#A=A}_transform(A,Q,B){if(!this._inflateStream){if(A.length===0){B();return}this._inflateStream=(A[0]&15)===8?S2Q.createInflate(this.#A):S2Q.createInflateRaw(this.#A),this._inflateStream.on("data",this.push.bind(this)),this._inflateStream.on("end",()=>this.push(null)),this._inflateStream.on("error",(Y)=>this.destroy(Y))}this._inflateStream.write(A,Q,B)}_final(A){if(this._inflateStream)this._inflateStream.end(),this._inflateStream=null;A()}}function EP0(A){return new d2Q(A)}function KP0(A){let Q=null,B=null,Y=null,J=c2Q("content-type",A);if(J===null)return"failure";for(let C of J){let X=TO0(C);if(X==="failure"||X.essence==="*/*")continue;if(Y=X,Y.essence!==B){if(Q=null,Y.parameters.has("charset"))Q=Y.parameters.get("charset");B=Y.essence}else if(!Y.parameters.has("charset")&&Q!==null)Y.parameters.set("charset",Q)}if(Y==null)return"failure";return Y}function VP0(A){let Q=A,B={position:0},Y=[],J="";while(B.positionC!=='"'&&C!==",",Q,B),B.positionC===9||C===32),Y.push(J),J=""}return Y}function c2Q(A,Q){let B=Q.get(A,!0);if(B===null)return null;return VP0(B)}var IP0=new TextDecoder;function HP0(A){if(A.length===0)return"";if(A[0]===239&&A[1]===187&&A[2]===191)A=A.subarray(3);return IP0.decode(A)}class l2Q{get baseUrl(){return k2Q()}get origin(){return this.baseUrl?.origin}policyContainer=h2Q()}class p2Q{settingsObject=new l2Q}var DP0=new p2Q;i2Q.exports={isAborted:BP0,isCancelled:YP0,isValidEncodedURL:y2Q,ReadableStreamFrom:kO0,tryUpgradeRequestToAPotentiallyTrustworthyURL:QP0,clampAndCoarsenConnectionTimingInfo:nO0,coarsenedSharedCurrentTime:sO0,determineRequestsReferrer:oO0,makePolicyContainer:h2Q,clonePolicyContainer:aO0,appendFetchMetadata:pO0,appendRequestOriginHeader:iO0,TAOCheck:lO0,corsCheck:cO0,crossOriginResourcePolicyCheck:dO0,createOpaqueTimingInfo:rO0,setRequestReferrerPolicyOnRedirect:uO0,isValidHTTPToken:_2Q,requestBadPort:hO0,requestCurrentURL:d$,responseURL:v2Q,responseLocationURL:yO0,isURLPotentiallyTrustworthy:u$,isValidReasonPhrase:fO0,sameOrigin:Dq,normalizeMethod:JP0,serializeJavascriptValueToJSONString:CP0,iteratorMixin:GP0,createIterator:f2Q,isValidHeaderName:bO0,isValidHeaderValue:g2Q,isErrorLike:xO0,fullyReadBody:WP0,readableStreamClose:FP0,isomorphicEncode:IS,urlIsLocal:m2Q,urlHasHttpsScheme:yr,urlIsHttpHttpsScheme:u2Q,readAllBytes:b2Q,simpleRangeHeaderValue:$P0,buildContentRange:UP0,createInflate:EP0,extractMimeType:KP0,getDecodeSplit:c2Q,utf8DecodeBytes:HP0,environmentSettingsObject:DP0,isOriginIPPotentiallyTrustworthy:x2Q}});var HS=R((psY,s2Q)=>{var{iteratorMixin:NP0}=z9(),{kEnumerableProperty:aK}=lQ(),{webidl:hB}=HJ(),n2Q=u("node:util");class Y8{#A=[];constructor(A=void 0){if(hB.util.markAsUncloneable(this),A!==void 0)throw hB.errors.conversionFailed({prefix:"FormData constructor",argument:"Argument 1",types:["undefined"]})}append(A,Q,B=void 0){hB.brandCheck(this,Y8);let Y="FormData.append";if(hB.argumentLengthCheck(arguments,2,Y),A=hB.converters.USVString(A),arguments.length===3||hB.is.Blob(Q)){if(Q=hB.converters.Blob(Q,Y,"value"),B!==void 0)B=hB.converters.USVString(B)}else Q=hB.converters.USVString(Q);let J=gr(A,Q,B);this.#A.push(J)}delete(A){hB.brandCheck(this,Y8);let Q="FormData.delete";hB.argumentLengthCheck(arguments,1,Q),A=hB.converters.USVString(A),this.#A=this.#A.filter((B)=>B.name!==A)}get(A){hB.brandCheck(this,Y8);let Q="FormData.get";hB.argumentLengthCheck(arguments,1,Q),A=hB.converters.USVString(A);let B=this.#A.findIndex((Y)=>Y.name===A);if(B===-1)return null;return this.#A[B].value}getAll(A){hB.brandCheck(this,Y8);let Q="FormData.getAll";return hB.argumentLengthCheck(arguments,1,Q),A=hB.converters.USVString(A),this.#A.filter((B)=>B.name===A).map((B)=>B.value)}has(A){hB.brandCheck(this,Y8);let Q="FormData.has";return hB.argumentLengthCheck(arguments,1,Q),A=hB.converters.USVString(A),this.#A.findIndex((B)=>B.name===A)!==-1}set(A,Q,B=void 0){hB.brandCheck(this,Y8);let Y="FormData.set";if(hB.argumentLengthCheck(arguments,2,Y),A=hB.converters.USVString(A),arguments.length===3||hB.is.Blob(Q)){if(Q=hB.converters.Blob(Q,Y,"value"),B!==void 0)B=hB.converters.USVString(B)}else Q=hB.converters.USVString(Q);let J=gr(A,Q,B),C=this.#A.findIndex((X)=>X.name===A);if(C!==-1)this.#A=[...this.#A.slice(0,C),J,...this.#A.slice(C+1).filter((X)=>X.name!==A)];else this.#A.push(J)}[n2Q.inspect.custom](A,Q){let B=this.#A.reduce((J,C)=>{if(J[C.name])if(Array.isArray(J[C.name]))J[C.name].push(C.value);else J[C.name]=[J[C.name],C.value];else J[C.name]=C.value;return J},{__proto__:null});Q.depth??=A,Q.colors??=!0;let Y=n2Q.formatWithOptions(Q,B);return`FormData ${Y.slice(Y.indexOf("]")+2)}`}static getFormDataState(A){return A.#A}static setFormDataState(A,Q){A.#A=Q}}var{getFormDataState:LP0,setFormDataState:qP0}=Y8;Reflect.deleteProperty(Y8,"getFormDataState");Reflect.deleteProperty(Y8,"setFormDataState");NP0("FormData",Y8,LP0,"name","value");Object.defineProperties(Y8.prototype,{append:aK,delete:aK,get:aK,getAll:aK,has:aK,set:aK,[Symbol.toStringTag]:{value:"FormData",configurable:!0}});function gr(A,Q,B){if(typeof Q==="string");else{if(!hB.is.File(Q))Q=new File([Q],"blob",{type:Q.type});if(B!==void 0){let Y={type:Q.type,lastModified:Q.lastModified};Q=new File([Q],B,Y)}}return{name:A,value:Q}}hB.is.FormData=hB.util.MakeTypeAssertion(Y8);s2Q.exports={FormData:Y8,makeEntry:gr,setFormDataState:qP0}});var t2Q=R((isY,o2Q)=>{var{bufferToLowerCasedHeaderName:MP0}=lQ(),{utf8DecodeBytes:zP0}=z9(),{HTTP_TOKEN_CODEPOINTS:RP0,isomorphicDecode:r2Q}=l8(),{makeEntry:wP0}=HS(),{webidl:hr}=HJ(),DS=u("node:assert"),jP0=Buffer.from('form-data; name="'),OP0=Buffer.from("filename"),PP0=Buffer.from("--"),TP0=Buffer.from(`--\r +`);function SP0(A){for(let Q=0;Q70)return!1;for(let B=0;B=48&&Y<=57||Y>=65&&Y<=90||Y>=97&&Y<=122||Y===39||Y===45||Y===95))return!1}return!0}function _P0(A,Q){DS(Q!=="failure"&&Q.essence==="multipart/form-data");let B=Q.parameters.get("boundary");if(B===void 0)throw JC("missing boundary in content-type header");let Y=Buffer.from(`--${B}`,"utf8"),J=[],C={position:0};while(A[C.position]===13&&A[C.position+1]===10)C.position+=2;let X=A.length;while(A[X-1]===10&&A[X-2]===13)X-=2;if(X!==A.length)A=A.subarray(0,X);while(!0){if(A.subarray(C.position,C.position+Y.length).equals(Y))C.position+=Y.length;else throw JC("expected a value starting with -- and the boundary");if(C.position===A.length-2&&NS(A,PP0,C)||C.position===A.length-4&&NS(A,TP0,C))return J;if(A[C.position]!==13||A[C.position+1]!==10)throw JC("expected CRLF");C.position+=2;let G=vP0(A,C),{name:W,filename:F,contentType:Z,encoding:U}=G;C.position+=2;let $;{let K=A.indexOf(Y.subarray(2),C.position);if(K===-1)throw JC("expected boundary after body");if($=A.subarray(C.position,K-4),C.position+=$.length,U==="base64")$=Buffer.from($.toString(),"base64")}if(A[C.position]!==13||A[C.position+1]!==10)throw JC("expected CRLF");else C.position+=2;let E;if(F!==null){if(Z??="text/plain",!SP0(Z))Z="";E=new File([$],F,{type:Z})}else E=zP0(Buffer.from($));DS(hr.is.USVString(W)),DS(typeof E==="string"&&hr.is.USVString(E)||hr.is.File(E)),J.push(wP0(W,E,F))}}function vP0(A,Q){let B=null,Y=null,J=null,C=null;while(!0){if(A[Q.position]===13&&A[Q.position+1]===10){if(B===null)throw JC("header name is null");return{name:B,filename:Y,contentType:J,encoding:C}}let X=vG((G)=>G!==10&&G!==13&&G!==58,A,Q);if(X=xr(X,!0,!0,(G)=>G===9||G===32),!RP0.test(X.toString()))throw JC("header name does not match the field-name token production");if(A[Q.position]!==58)throw JC("expected :");switch(Q.position++,vG((G)=>G===32||G===9,A,Q),MP0(X)){case"content-disposition":{if(B=Y=null,!NS(A,jP0,Q))throw JC('expected form-data; name=" for content-disposition header');if(Q.position+=17,B=a2Q(A,Q),A[Q.position]===59&&A[Q.position+1]===32){let G={position:Q.position+2};if(NS(A,OP0,G))if(A[G.position+8]===42){G.position+=10,vG((F)=>F===32||F===9,A,G);let W=vG((F)=>F!==32&&F!==13&&F!==10,A,G);if(W[0]!==117&&W[0]!==85||W[1]!==116&&W[1]!==84||W[2]!==102&&W[2]!==70||W[3]!==45||W[4]!==56)throw JC("unknown encoding, expected utf-8''");Y=decodeURIComponent(new TextDecoder().decode(W.subarray(7))),Q.position=G.position}else Q.position+=11,vG((W)=>W===32||W===9,A,Q),Q.position++,Y=a2Q(A,Q)}break}case"content-type":{let G=vG((W)=>W!==10&&W!==13,A,Q);G=xr(G,!1,!0,(W)=>W===9||W===32),J=r2Q(G);break}case"content-transfer-encoding":{let G=vG((W)=>W!==10&&W!==13,A,Q);G=xr(G,!1,!0,(W)=>W===9||W===32),C=r2Q(G);break}default:vG((G)=>G!==10&&G!==13,A,Q)}if(A[Q.position]!==13&&A[Q.position+1]!==10)throw JC("expected CRLF");else Q.position+=2}}function a2Q(A,Q){DS(A[Q.position-1]===34);let B=vG((Y)=>Y!==10&&Y!==13&&Y!==34,A,Q);if(A[Q.position]!==34)throw JC('expected "');else Q.position++;return B=new TextDecoder().decode(B).replace(/%0A/ig,` +`).replace(/%0D/ig,"\r").replace(/%22/g,'"'),B}function vG(A,Q,B){let Y=B.position;while(Y0&&Y(A[C]))C--;return J===0&&C===A.length-1?A:A.subarray(J,C+1)}function NS(A,Q,B){if(A.length{function yP0(){let A,Q;return{promise:new Promise((Y,J)=>{A=Y,Q=J}),resolve:A,reject:Q}}e2Q.exports={createDeferredPromise:yP0}});var tK=R((ssY,X3Q)=>{var qS=lQ(),{ReadableStreamFrom:gP0,readableStreamClose:hP0,fullyReadBody:xP0,extractMimeType:fP0,utf8DecodeBytes:B3Q}=z9(),{FormData:A3Q,setFormDataState:bP0}=HS(),{webidl:RX}=HJ(),fr=u("node:assert"),{isErrored:Y3Q,isDisturbed:mP0}=u("node:stream"),{isArrayBuffer:uP0}=u("node:util/types"),{serializeAMimeType:dP0}=l8(),{multipartFormDataParser:cP0}=t2Q(),{createDeferredPromise:lP0}=Nq(),br;try{let A=u("node:crypto");br=(Q)=>A.randomInt(0,Q)}catch{br=(A)=>Math.floor(Math.random()*A)}var LS=new TextEncoder;function pP0(){}var iP0=new FinalizationRegistry((A)=>{let Q=A.deref();if(Q&&!Q.locked&&!mP0(Q)&&!Y3Q(Q))Q.cancel("Response object has been garbage collected").catch(pP0)});function J3Q(A,Q=!1){let B=null;if(RX.is.ReadableStream(A))B=A;else if(RX.is.Blob(A))B=A.stream();else B=new ReadableStream({pull(W){let F=typeof J==="string"?LS.encode(J):J;if(F.byteLength)W.enqueue(F);queueMicrotask(()=>hP0(W))},start(){},type:"bytes"});fr(RX.is.ReadableStream(B));let Y=null,J=null,C=null,X=null;if(typeof A==="string")J=A,X="text/plain;charset=UTF-8";else if(RX.is.URLSearchParams(A))J=A.toString(),X="application/x-www-form-urlencoded;charset=UTF-8";else if(RX.is.BufferSource(A))J=uP0(A)?new Uint8Array(A.slice()):new Uint8Array(A.buffer.slice(A.byteOffset,A.byteOffset+A.byteLength));else if(RX.is.FormData(A)){let W=`----formdata-undici-0${`${br(100000000000)}`.padStart(11,"0")}`,F=`--${W}\r Content-Disposition: form-data`;/*! formdata-polyfill. MIT License. Jimmy Wärting */let Z=(V)=>V.replace(/\n/g,"%0A").replace(/\r/g,"%0D").replace(/"/g,"%22"),U=(V)=>V.replace(/\r?\n|\r/g,`\r -`),$=[],E=new Uint8Array([13,10]);C=0;let K=!1;for(let[V,H]of A)if(typeof H==="string"){let D=tT.encode(W+`; name="${Z(U(V))}"\r +`),$=[],E=new Uint8Array([13,10]);C=0;let K=!1;for(let[V,H]of A)if(typeof H==="string"){let D=LS.encode(F+`; name="${Z(U(V))}"\r \r ${U(H)}\r -`);$.push(D),C+=D.byteLength}else{let D=tT.encode(`${W}; name="${Z(U(V))}"`+(H.name?`; filename="${Z(H.name)}"`:"")+`\r +`);$.push(D),C+=D.byteLength}else{let D=LS.encode(`${F}; name="${Z(U(V))}"`+(H.name?`; filename="${Z(H.name)}"`:"")+`\r Content-Type: ${H.type||"application/octet-stream"}\r \r -`);if($.push(D,H,E),typeof H.size==="number")C+=D.byteLength+H.size+E.byteLength;else K=!0}let I=tT.encode(`--${F}--\r -`);if($.push(I),C+=I.byteLength,K)C=null;J=A,Y=async function*(){for(let V of $)if(V.stream)yield*V.stream();else yield V},X=`multipart/form-data; boundary=${F}`}else if(V6.is.Blob(A)){if(J=A,C=A.size,A.type)X=A.type}else if(typeof A[Symbol.asyncIterator]==="function"){if(Q)throw TypeError("keepalive");if(eT.isDisturbed(A)||A.locked)throw TypeError("Response body object should not be disturbed or locked");B=V6.is.ReadableStream(A)?A:yO0(A)}if(typeof J==="string"||eT.isBuffer(J))C=Buffer.byteLength(J);if(Y!=null){let F;B=new ReadableStream({async start(){F=Y(A)[Symbol.asyncIterator]()},async pull(W){let{value:Z,done:U}=await F.next();if(U)queueMicrotask(()=>{W.close(),W.byobRequest?.respond(0)});else if(!I2Q(B)){let $=new Uint8Array(Z);if($.byteLength)W.enqueue($)}return W.desiredSize>0},async cancel(W){await F.return()},type:"bytes"})}return[{stream:B,source:J,length:C},X]}function iO0(A,Q=!1){if(V6.is.ReadableStream(A))Vr(!eT.isDisturbed(A),"The body has already been consumed."),Vr(!A.locked,"The stream is locked.");return H2Q(A,Q)}function nO0(A){let{0:Q,1:B}=A.stream.tee();return A.stream=Q,{stream:B,length:A.length,source:A.source}}function sO0(A,Q){return{blob(){return cK(this,(Y)=>{let J=K2Q(Q(this));if(J===null)J="";else if(J)J=uO0(J);return new Blob([Y],{type:J})},A,Q)},arrayBuffer(){return cK(this,(Y)=>{return new Uint8Array(Y).buffer},A,Q)},text(){return cK(this,V2Q,A,Q)},json(){return cK(this,aO0,A,Q)},formData(){return cK(this,(Y)=>{let J=K2Q(Q(this));if(J!==null)switch(J.essence){case"multipart/form-data":{let C=dO0(Y,J),X=new E2Q;return fO0(X,C),X}case"application/x-www-form-urlencoded":{let C=new URLSearchParams(Y.toString()),X=new E2Q;for(let[G,F]of C)X.append(G,F);return X}}throw TypeError('Content-Type was not one of "multipart/form-data" or "application/x-www-form-urlencoded".')},A,Q)},bytes(){return cK(this,(Y)=>{return new Uint8Array(Y)},A,Q)}}}function rO0(A,Q){Object.assign(A.prototype,sO0(A,Q))}function cK(A,Q,B,Y){try{V6.brandCheck(A,B)}catch(F){return Promise.reject(F)}let J=Y(A);if(D2Q(J))return Promise.reject(TypeError("Body is unusable: Body has already been read"));if(J.aborted)return Promise.reject(new DOMException("The operation was aborted.","AbortError"));let C=cO0(),X=C.reject,G=(F)=>{try{C.resolve(Q(F))}catch(W){X(W)}};if(J.body==null)return G(Buffer.allocUnsafe(0)),C.promise;return gO0(J.body,G,X),C.promise}function D2Q(A){let Q=A.body;return Q!=null&&(Q.stream.locked||eT.isDisturbed(Q.stream))}function aO0(A){return JSON.parse(V2Q(A))}function K2Q(A){let Q=A.headersList,B=xO0(Q);if(B==="failure")return null;return B}N2Q.exports={extractBody:H2Q,safelyExtractBody:iO0,cloneBody:nO0,mixinBody:rO0,streamRegistry:pO0,bodyUnusable:D2Q}});var k2Q=R((QnY,S2Q)=>{var wQ=u("node:assert"),TQ=lQ(),{channels:L2Q}=O$(),Hr=ms(),{RequestContentLengthMismatchError:y$,ResponseContentLengthMismatchError:oO0,RequestAbortedError:j2Q,HeadersTimeoutError:tO0,HeadersOverflowError:eO0,SocketError:Gq,InformationalError:pK,BodyTimeoutError:AP0,HTTPParserError:QP0,ResponseExceededMaxSizeError:BP0}=QB(),{kUrl:O2Q,kReset:a9,kClient:zr,kParser:s0,kBlocking:Fq,kRunning:vJ,kPending:YP0,kSize:q2Q,kWriting:nF,kQueue:G1,kNoRef:Cq,kKeepAliveDefaultTimeout:JP0,kHostHeader:CP0,kPendingIdx:XP0,kRunningIdx:a5,kError:o5,kPipelining:BS,kSocket:iK,kKeepAliveTimeoutValue:JS,kMaxHeadersSize:GP0,kKeepAliveMaxTimeout:FP0,kKeepAliveTimeoutThreshold:WP0,kHeadersTimeout:ZP0,kBodyTimeout:$P0,kStrictContentLength:Lr,kMaxRequests:M2Q,kCounter:UP0,kMaxResponseSize:EP0,kOnError:KP0,kResume:iF,kHTTPContext:P2Q,kClosed:qr}=Q0(),I6=qzQ(),VP0=Buffer.alloc(0),AS=Buffer[Symbol.species],IP0=TQ.removeAllListeners,Dr;function HP0(){let A=process.env.JEST_WORKER_ID?Jr():void 0,Q,B=process.arch!=="ppc64";if(process.env.UNDICI_NO_WASM_SIMD==="1")B=!0;else if(process.env.UNDICI_NO_WASM_SIMD==="0")B=!1;if(B)try{Q=new WebAssembly.Module(RzQ())}catch{}if(!Q)Q=new WebAssembly.Module(A||Jr());return new WebAssembly.Instance(Q,{env:{wasm_on_url:(Y,J,C)=>{return 0},wasm_on_status:(Y,J,C)=>{wQ(yY.ptr===Y);let X=J-D6+H6.byteOffset;return yY.onStatus(new AS(H6.buffer,X,C))},wasm_on_message_begin:(Y)=>{return wQ(yY.ptr===Y),yY.onMessageBegin()},wasm_on_header_field:(Y,J,C)=>{wQ(yY.ptr===Y);let X=J-D6+H6.byteOffset;return yY.onHeaderField(new AS(H6.buffer,X,C))},wasm_on_header_value:(Y,J,C)=>{wQ(yY.ptr===Y);let X=J-D6+H6.byteOffset;return yY.onHeaderValue(new AS(H6.buffer,X,C))},wasm_on_headers_complete:(Y,J,C,X)=>{return wQ(yY.ptr===Y),yY.onHeadersComplete(J,C===1,X===1)},wasm_on_body:(Y,J,C)=>{wQ(yY.ptr===Y);let X=J-D6+H6.byteOffset;return yY.onBody(new AS(H6.buffer,X,C))},wasm_on_message_complete:(Y)=>{return wQ(yY.ptr===Y),yY.onMessageComplete()}}})}var Nr=null,yY=null,H6=null,QS=0,D6=null,DP0=0,Xq=1,nK=2|Xq,YS=4|Xq,Mr=8|DP0;class T2Q{constructor(A,Q,{exports:B}){this.llhttp=B,this.ptr=this.llhttp.llhttp_alloc(I6.TYPE.RESPONSE),this.client=A,this.socket=Q,this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.statusCode=0,this.statusText="",this.upgrade=!1,this.headers=[],this.headersSize=0,this.headersMaxSize=A[GP0],this.shouldKeepAlive=!1,this.paused=!1,this.resume=this.resume.bind(this),this.bytesRead=0,this.keepAlive="",this.contentLength="",this.connection="",this.maxResponseSize=A[EP0]}setTimeout(A,Q){if(A!==this.timeoutValue||Q&Xq^this.timeoutType&Xq){if(this.timeout)Hr.clearTimeout(this.timeout),this.timeout=null;if(A)if(Q&Xq)this.timeout=Hr.setFastTimeout(z2Q,A,new WeakRef(this));else this.timeout=setTimeout(z2Q,A,new WeakRef(this)),this.timeout?.unref();this.timeoutValue=A}else if(this.timeout){if(this.timeout.refresh)this.timeout.refresh()}this.timeoutType=Q}resume(){if(this.socket.destroyed||!this.paused)return;if(wQ(this.ptr!=null),wQ(yY===null),this.llhttp.llhttp_resume(this.ptr),wQ(this.timeoutType===YS),this.timeout){if(this.timeout.refresh)this.timeout.refresh()}this.paused=!1,this.execute(this.socket.read()||VP0),this.readMore()}readMore(){while(!this.paused&&this.ptr){let A=this.socket.read();if(A===null)break;this.execute(A)}}execute(A){wQ(yY===null),wQ(this.ptr!=null),wQ(!this.paused);let{socket:Q,llhttp:B}=this;if(A.length>QS){if(D6)B.free(D6);QS=Math.ceil(A.length/4096)*4096,D6=B.malloc(QS)}new Uint8Array(B.memory.buffer,D6,QS).set(A);try{let Y;try{H6=A,yY=this,Y=B.llhttp_execute(this.ptr,D6,A.length)}finally{yY=null,H6=null}if(Y!==I6.ERROR.OK){let J=A.subarray(B.llhttp_get_error_pos(this.ptr)-D6);if(Y===I6.ERROR.PAUSED_UPGRADE)this.onUpgrade(J);else if(Y===I6.ERROR.PAUSED)this.paused=!0,Q.unshift(J);else{let C=B.llhttp_get_error_reason(this.ptr),X="";if(C){let G=new Uint8Array(B.memory.buffer,C).indexOf(0);X="Response does not match the HTTP/1.1 protocol ("+Buffer.from(B.memory.buffer,C,G).toString()+")"}throw new QP0(X,I6.ERROR[Y],J)}}}catch(Y){TQ.destroy(Q,Y)}}destroy(){wQ(yY===null),wQ(this.ptr!=null),this.llhttp.llhttp_free(this.ptr),this.ptr=null,this.timeout&&Hr.clearTimeout(this.timeout),this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.paused=!1}onStatus(A){return this.statusText=A.toString(),0}onMessageBegin(){let{socket:A,client:Q}=this;if(A.destroyed)return-1;let B=Q[G1][Q[a5]];if(!B)return-1;return B.onResponseStarted(),0}onHeaderField(A){let Q=this.headers.length;if((Q&1)===0)this.headers.push(A);else this.headers[Q-1]=Buffer.concat([this.headers[Q-1],A]);return this.trackHeader(A.length),0}onHeaderValue(A){let Q=this.headers.length;if((Q&1)===1)this.headers.push(A),Q+=1;else this.headers[Q-1]=Buffer.concat([this.headers[Q-1],A]);let B=this.headers[Q-2];if(B.length===10){let Y=TQ.bufferToLowerCasedHeaderName(B);if(Y==="keep-alive")this.keepAlive+=A.toString();else if(Y==="connection")this.connection+=A.toString()}else if(B.length===14&&TQ.bufferToLowerCasedHeaderName(B)==="content-length")this.contentLength+=A.toString();return this.trackHeader(A.length),0}trackHeader(A){if(this.headersSize+=A,this.headersSize>=this.headersMaxSize)TQ.destroy(this.socket,new eO0)}onUpgrade(A){let{upgrade:Q,client:B,socket:Y,headers:J,statusCode:C}=this;wQ(Q),wQ(B[iK]===Y),wQ(!Y.destroyed),wQ(!this.paused),wQ((J.length&1)===0);let X=B[G1][B[a5]];wQ(X),wQ(X.upgrade||X.method==="CONNECT"),this.statusCode=0,this.statusText="",this.shouldKeepAlive=!1,this.headers=[],this.headersSize=0,Y.unshift(A),Y[s0].destroy(),Y[s0]=null,Y[zr]=null,Y[o5]=null,IP0(Y),B[iK]=null,B[P2Q]=null,B[G1][B[a5]++]=null,B.emit("disconnect",B[O2Q],[B],new pK("upgrade"));try{X.onUpgrade(C,J,Y)}catch(G){TQ.destroy(Y,G)}B[iF]()}onHeadersComplete(A,Q,B){let{client:Y,socket:J,headers:C,statusText:X}=this;if(J.destroyed)return-1;let G=Y[G1][Y[a5]];if(!G)return-1;if(wQ(!this.upgrade),wQ(this.statusCode<200),A===100)return TQ.destroy(J,new Gq("bad response",TQ.getSocketInfo(J))),-1;if(Q&&!G.upgrade)return TQ.destroy(J,new Gq("bad upgrade",TQ.getSocketInfo(J))),-1;if(wQ(this.timeoutType===nK),this.statusCode=A,this.shouldKeepAlive=B||G.method==="HEAD"&&!J[a9]&&this.connection.toLowerCase()==="keep-alive",this.statusCode>=200){let W=G.bodyTimeout!=null?G.bodyTimeout:Y[$P0];this.setTimeout(W,YS)}else if(this.timeout){if(this.timeout.refresh)this.timeout.refresh()}if(G.method==="CONNECT")return wQ(Y[vJ]===1),this.upgrade=!0,2;if(Q)return wQ(Y[vJ]===1),this.upgrade=!0,2;if(wQ((this.headers.length&1)===0),this.headers=[],this.headersSize=0,this.shouldKeepAlive&&Y[BS]){let W=this.keepAlive?TQ.parseKeepAliveTimeout(this.keepAlive):null;if(W!=null){let Z=Math.min(W-Y[WP0],Y[FP0]);if(Z<=0)J[a9]=!0;else Y[JS]=Z}else Y[JS]=Y[JP0]}else J[a9]=!0;let F=G.onHeaders(A,C,this.resume,X)===!1;if(G.aborted)return-1;if(G.method==="HEAD")return 1;if(A<200)return 1;if(J[Fq])J[Fq]=!1,Y[iF]();return F?I6.ERROR.PAUSED:0}onBody(A){let{client:Q,socket:B,statusCode:Y,maxResponseSize:J}=this;if(B.destroyed)return-1;let C=Q[G1][Q[a5]];if(wQ(C),wQ(this.timeoutType===YS),this.timeout){if(this.timeout.refresh)this.timeout.refresh()}if(wQ(Y>=200),J>-1&&this.bytesRead+A.length>J)return TQ.destroy(B,new BP0),-1;if(this.bytesRead+=A.length,C.onData(A)===!1)return I6.ERROR.PAUSED;return 0}onMessageComplete(){let{client:A,socket:Q,statusCode:B,upgrade:Y,headers:J,contentLength:C,bytesRead:X,shouldKeepAlive:G}=this;if(Q.destroyed&&(!B||G))return-1;if(Y)return 0;wQ(B>=100),wQ((this.headers.length&1)===0);let F=A[G1][A[a5]];if(wQ(F),this.statusCode=0,this.statusText="",this.bytesRead=0,this.contentLength="",this.keepAlive="",this.connection="",this.headers=[],this.headersSize=0,B<200)return 0;if(F.method!=="HEAD"&&C&&X!==parseInt(C,10))return TQ.destroy(Q,new oO0),-1;if(F.onComplete(J),A[G1][A[a5]++]=null,Q[nF])return wQ(A[vJ]===0),TQ.destroy(Q,new pK("reset")),I6.ERROR.PAUSED;else if(!G)return TQ.destroy(Q,new pK("reset")),I6.ERROR.PAUSED;else if(Q[a9]&&A[vJ]===0)return TQ.destroy(Q,new pK("reset")),I6.ERROR.PAUSED;else if(A[BS]==null||A[BS]===1)setImmediate(A[iF]);else A[iF]();return 0}}function z2Q(A){let{socket:Q,timeoutType:B,client:Y,paused:J}=A.deref();if(B===nK){if(!Q[nF]||Q.writableNeedDrain||Y[vJ]>1)wQ(!J,"cannot be paused while waiting for headers"),TQ.destroy(Q,new tO0)}else if(B===YS){if(!J)TQ.destroy(Q,new AP0)}else if(B===Mr)wQ(Y[vJ]===0&&Y[JS]),TQ.destroy(Q,new pK("socket idle timeout"))}function NP0(A,Q){if(A[iK]=Q,!Nr)Nr=HP0();if(Q.errored)throw Q.errored;if(Q.destroyed)throw new Gq("destroyed");return Q[Cq]=!1,Q[nF]=!1,Q[a9]=!1,Q[Fq]=!1,Q[s0]=new T2Q(A,Q,Nr),TQ.addListener(Q,"error",LP0),TQ.addListener(Q,"readable",qP0),TQ.addListener(Q,"end",MP0),TQ.addListener(Q,"close",zP0),Q[qr]=!1,Q.on("close",RP0),{version:"h1",defaultPipelining:1,write(B){return OP0(A,B)},resume(){wP0(A)},destroy(B,Y){if(Q[qr])queueMicrotask(Y);else Q.on("close",Y),Q.destroy(B)},get destroyed(){return Q.destroyed},busy(B){if(Q[nF]||Q[a9]||Q[Fq])return!0;if(B){if(A[vJ]>0&&!B.idempotent)return!0;if(A[vJ]>0&&(B.upgrade||B.method==="CONNECT"))return!0;if(A[vJ]>0&&TQ.bodyLength(B.body)!==0&&(TQ.isStream(B.body)||TQ.isAsyncIterable(B.body)||TQ.isFormDataLike(B.body)))return!0}return!1}}}function LP0(A){wQ(A.code!=="ERR_TLS_CERT_ALTNAME_INVALID");let Q=this[s0];if(A.code==="ECONNRESET"&&Q.statusCode&&!Q.shouldKeepAlive){Q.onMessageComplete();return}this[o5]=A,this[zr][KP0](A)}function qP0(){this[s0]?.readMore()}function MP0(){let A=this[s0];if(A.statusCode&&!A.shouldKeepAlive){A.onMessageComplete();return}TQ.destroy(this,new Gq("other side closed",TQ.getSocketInfo(this)))}function zP0(){let A=this[s0];if(A){if(!this[o5]&&A.statusCode&&!A.shouldKeepAlive)A.onMessageComplete();this[s0].destroy(),this[s0]=null}let Q=this[o5]||new Gq("closed",TQ.getSocketInfo(this)),B=this[zr];if(B[iK]=null,B[P2Q]=null,B.destroyed){wQ(B[YP0]===0);let Y=B[G1].splice(B[a5]);for(let J=0;J0&&Q.code!=="UND_ERR_INFO"){let Y=B[G1][B[a5]];B[G1][B[a5]++]=null,TQ.errorRequest(B,Y,Q)}B[XP0]=B[a5],wQ(B[vJ]===0),B.emit("disconnect",B[O2Q],[B],Q),B[iF]()}function RP0(){this[qr]=!0}function wP0(A){let Q=A[iK];if(Q&&!Q.destroyed){if(A[q2Q]===0){if(!Q[Cq]&&Q.unref)Q.unref(),Q[Cq]=!0}else if(Q[Cq]&&Q.ref)Q.ref(),Q[Cq]=!1;if(A[q2Q]===0){if(Q[s0].timeoutType!==Mr)Q[s0].setTimeout(A[JS],Mr)}else if(A[vJ]>0&&Q[s0].statusCode<200){if(Q[s0].timeoutType!==nK){let B=A[G1][A[a5]],Y=B.headersTimeout!=null?B.headersTimeout:A[ZP0];Q[s0].setTimeout(Y,nK)}}}}function jP0(A){return A!=="GET"&&A!=="HEAD"&&A!=="OPTIONS"&&A!=="TRACE"&&A!=="CONNECT"}function OP0(A,Q){let{method:B,path:Y,host:J,upgrade:C,blocking:X,reset:G}=Q,{body:F,headers:W,contentLength:Z}=Q,U=B==="PUT"||B==="POST"||B==="PATCH"||B==="QUERY"||B==="PROPFIND"||B==="PROPPATCH";if(TQ.isFormDataLike(F)){if(!Dr)Dr=lK().extractBody;let[V,H]=Dr(F);if(Q.contentType==null)W.push("content-type",H);F=V.stream,Z=V.length}else if(TQ.isBlobLike(F)&&Q.contentType==null&&F.type)W.push("content-type",F.type);if(F&&typeof F.read==="function")F.read(0);let $=TQ.bodyLength(F);if(Z=$??Z,Z===null)Z=Q.contentLength;if(Z===0&&!U)Z=null;if(jP0(B)&&Z>0&&Q.contentLength!==null&&Q.contentLength!==Z){if(A[Lr])return TQ.errorRequest(A,Q,new y$),!1;process.emitWarning(new y$)}let E=A[iK],K=(V)=>{if(Q.aborted||Q.completed)return;TQ.errorRequest(A,Q,V||new j2Q),TQ.destroy(F),TQ.destroy(E,new pK("aborted"))};try{Q.onConnect(K)}catch(V){TQ.errorRequest(A,Q,V)}if(Q.aborted)return!1;if(B==="HEAD")E[a9]=!0;if(C||B==="CONNECT")E[a9]=!0;if(G!=null)E[a9]=G;if(A[M2Q]&&E[UP0]++>=A[M2Q])E[a9]=!0;if(X)E[Fq]=!0;let I=`${B} ${Y} HTTP/1.1\r +`);if($.push(D,H,E),typeof H.size==="number")C+=D.byteLength+H.size+E.byteLength;else K=!0}let I=LS.encode(`--${W}--\r +`);if($.push(I),C+=I.byteLength,K)C=null;J=A,Y=async function*(){for(let V of $)if(V.stream)yield*V.stream();else yield V},X=`multipart/form-data; boundary=${W}`}else if(RX.is.Blob(A)){if(J=A,C=A.size,A.type)X=A.type}else if(typeof A[Symbol.asyncIterator]==="function"){if(Q)throw TypeError("keepalive");if(qS.isDisturbed(A)||A.locked)throw TypeError("Response body object should not be disturbed or locked");B=RX.is.ReadableStream(A)?A:gP0(A)}if(typeof J==="string"||qS.isBuffer(J))C=Buffer.byteLength(J);if(Y!=null){let W;B=new ReadableStream({async start(){W=Y(A)[Symbol.asyncIterator]()},async pull(F){let{value:Z,done:U}=await W.next();if(U)queueMicrotask(()=>{F.close(),F.byobRequest?.respond(0)});else if(!Y3Q(B)){let $=new Uint8Array(Z);if($.byteLength)F.enqueue($)}return F.desiredSize>0},async cancel(F){await W.return()},type:"bytes"})}return[{stream:B,source:J,length:C},X]}function nP0(A,Q=!1){if(RX.is.ReadableStream(A))fr(!qS.isDisturbed(A),"The body has already been consumed."),fr(!A.locked,"The stream is locked.");return J3Q(A,Q)}function sP0(A){let{0:Q,1:B}=A.stream.tee();return A.stream=Q,{stream:B,length:A.length,source:A.source}}function rP0(A,Q){return{blob(){return oK(this,(Y)=>{let J=Q3Q(Q(this));if(J===null)J="";else if(J)J=dP0(J);return new Blob([Y],{type:J})},A,Q)},arrayBuffer(){return oK(this,(Y)=>{return new Uint8Array(Y).buffer},A,Q)},text(){return oK(this,B3Q,A,Q)},json(){return oK(this,oP0,A,Q)},formData(){return oK(this,(Y)=>{let J=Q3Q(Q(this));if(J!==null)switch(J.essence){case"multipart/form-data":{let C=cP0(Y,J),X=new A3Q;return bP0(X,C),X}case"application/x-www-form-urlencoded":{let C=new URLSearchParams(Y.toString()),X=new A3Q;for(let[G,W]of C)X.append(G,W);return X}}throw TypeError('Content-Type was not one of "multipart/form-data" or "application/x-www-form-urlencoded".')},A,Q)},bytes(){return oK(this,(Y)=>{return new Uint8Array(Y)},A,Q)}}}function aP0(A,Q){Object.assign(A.prototype,rP0(A,Q))}function oK(A,Q,B,Y){try{RX.brandCheck(A,B)}catch(W){return Promise.reject(W)}let J=Y(A);if(C3Q(J))return Promise.reject(TypeError("Body is unusable: Body has already been read"));if(J.aborted)return Promise.reject(new DOMException("The operation was aborted.","AbortError"));let C=lP0(),X=C.reject,G=(W)=>{try{C.resolve(Q(W))}catch(F){X(F)}};if(J.body==null)return G(Buffer.allocUnsafe(0)),C.promise;return xP0(J.body,G,X),C.promise}function C3Q(A){let Q=A.body;return Q!=null&&(Q.stream.locked||qS.isDisturbed(Q.stream))}function oP0(A){return JSON.parse(B3Q(A))}function Q3Q(A){let Q=A.headersList,B=fP0(Q);if(B==="failure")return null;return B}X3Q.exports={extractBody:J3Q,safelyExtractBody:nP0,cloneBody:sP0,mixinBody:aP0,streamRegistry:iP0,bodyUnusable:C3Q}});var D3Q=R((rsY,H3Q)=>{var wQ=u("node:assert"),TQ=lQ(),{channels:G3Q}=x$(),mr=Fr(),{RequestContentLengthMismatchError:l$,ResponseContentLengthMismatchError:tP0,RequestAbortedError:E3Q,HeadersTimeoutError:eP0,HeadersOverflowError:AT0,SocketError:Mq,InformationalError:eK,BodyTimeoutError:QT0,HTTPParserError:BT0,ResponseExceededMaxSizeError:YT0}=QB(),{kUrl:K3Q,kReset:J8,kClient:ir,kParser:o0,kBlocking:zq,kRunning:fJ,kPending:JT0,kSize:W3Q,kWriting:QF,kQueue:I1,kNoRef:Lq,kKeepAliveDefaultTimeout:CT0,kHostHeader:XT0,kPendingIdx:GT0,kRunningIdx:CC,kError:XC,kPipelining:RS,kSocket:AV,kKeepAliveTimeoutValue:jS,kMaxHeadersSize:WT0,kKeepAliveMaxTimeout:FT0,kKeepAliveTimeoutThreshold:ZT0,kHeadersTimeout:$T0,kBodyTimeout:UT0,kStrictContentLength:cr,kMaxRequests:F3Q,kCounter:ET0,kMaxResponseSize:KT0,kOnError:VT0,kResume:AF,kHTTPContext:V3Q,kClosed:lr}=B0(),wX=W2Q(),IT0=Buffer.alloc(0),MS=Buffer[Symbol.species],HT0=TQ.removeAllListeners,ur;function DT0(){let A=process.env.JEST_WORKER_ID?Or():void 0,Q,B=process.arch!=="ppc64";if(process.env.UNDICI_NO_WASM_SIMD==="1")B=!0;else if(process.env.UNDICI_NO_WASM_SIMD==="0")B=!1;if(B)try{Q=new WebAssembly.Module($2Q())}catch{}if(!Q)Q=new WebAssembly.Module(A||Or());return new WebAssembly.Instance(Q,{env:{wasm_on_url:(Y,J,C)=>{return 0},wasm_on_status:(Y,J,C)=>{wQ(bY.ptr===Y);let X=J-OX+jX.byteOffset;return bY.onStatus(new MS(jX.buffer,X,C))},wasm_on_message_begin:(Y)=>{return wQ(bY.ptr===Y),bY.onMessageBegin()},wasm_on_header_field:(Y,J,C)=>{wQ(bY.ptr===Y);let X=J-OX+jX.byteOffset;return bY.onHeaderField(new MS(jX.buffer,X,C))},wasm_on_header_value:(Y,J,C)=>{wQ(bY.ptr===Y);let X=J-OX+jX.byteOffset;return bY.onHeaderValue(new MS(jX.buffer,X,C))},wasm_on_headers_complete:(Y,J,C,X)=>{return wQ(bY.ptr===Y),bY.onHeadersComplete(J,C===1,X===1)},wasm_on_body:(Y,J,C)=>{wQ(bY.ptr===Y);let X=J-OX+jX.byteOffset;return bY.onBody(new MS(jX.buffer,X,C))},wasm_on_message_complete:(Y)=>{return wQ(bY.ptr===Y),bY.onMessageComplete()}}})}var dr=null,bY=null,jX=null,zS=0,OX=null,NT0=0,qq=1,QV=2|qq,wS=4|qq,pr=8|NT0;class I3Q{constructor(A,Q,{exports:B}){this.llhttp=B,this.ptr=this.llhttp.llhttp_alloc(wX.TYPE.RESPONSE),this.client=A,this.socket=Q,this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.statusCode=0,this.statusText="",this.upgrade=!1,this.headers=[],this.headersSize=0,this.headersMaxSize=A[WT0],this.shouldKeepAlive=!1,this.paused=!1,this.resume=this.resume.bind(this),this.bytesRead=0,this.keepAlive="",this.contentLength="",this.connection="",this.maxResponseSize=A[KT0]}setTimeout(A,Q){if(A!==this.timeoutValue||Q&qq^this.timeoutType&qq){if(this.timeout)mr.clearTimeout(this.timeout),this.timeout=null;if(A)if(Q&qq)this.timeout=mr.setFastTimeout(Z3Q,A,new WeakRef(this));else this.timeout=setTimeout(Z3Q,A,new WeakRef(this)),this.timeout?.unref();this.timeoutValue=A}else if(this.timeout){if(this.timeout.refresh)this.timeout.refresh()}this.timeoutType=Q}resume(){if(this.socket.destroyed||!this.paused)return;if(wQ(this.ptr!=null),wQ(bY===null),this.llhttp.llhttp_resume(this.ptr),wQ(this.timeoutType===wS),this.timeout){if(this.timeout.refresh)this.timeout.refresh()}this.paused=!1,this.execute(this.socket.read()||IT0),this.readMore()}readMore(){while(!this.paused&&this.ptr){let A=this.socket.read();if(A===null)break;this.execute(A)}}execute(A){wQ(bY===null),wQ(this.ptr!=null),wQ(!this.paused);let{socket:Q,llhttp:B}=this;if(A.length>zS){if(OX)B.free(OX);zS=Math.ceil(A.length/4096)*4096,OX=B.malloc(zS)}new Uint8Array(B.memory.buffer,OX,zS).set(A);try{let Y;try{jX=A,bY=this,Y=B.llhttp_execute(this.ptr,OX,A.length)}finally{bY=null,jX=null}if(Y!==wX.ERROR.OK){let J=A.subarray(B.llhttp_get_error_pos(this.ptr)-OX);if(Y===wX.ERROR.PAUSED_UPGRADE)this.onUpgrade(J);else if(Y===wX.ERROR.PAUSED)this.paused=!0,Q.unshift(J);else{let C=B.llhttp_get_error_reason(this.ptr),X="";if(C){let G=new Uint8Array(B.memory.buffer,C).indexOf(0);X="Response does not match the HTTP/1.1 protocol ("+Buffer.from(B.memory.buffer,C,G).toString()+")"}throw new BT0(X,wX.ERROR[Y],J)}}}catch(Y){TQ.destroy(Q,Y)}}destroy(){wQ(bY===null),wQ(this.ptr!=null),this.llhttp.llhttp_free(this.ptr),this.ptr=null,this.timeout&&mr.clearTimeout(this.timeout),this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.paused=!1}onStatus(A){return this.statusText=A.toString(),0}onMessageBegin(){let{socket:A,client:Q}=this;if(A.destroyed)return-1;let B=Q[I1][Q[CC]];if(!B)return-1;return B.onResponseStarted(),0}onHeaderField(A){let Q=this.headers.length;if((Q&1)===0)this.headers.push(A);else this.headers[Q-1]=Buffer.concat([this.headers[Q-1],A]);return this.trackHeader(A.length),0}onHeaderValue(A){let Q=this.headers.length;if((Q&1)===1)this.headers.push(A),Q+=1;else this.headers[Q-1]=Buffer.concat([this.headers[Q-1],A]);let B=this.headers[Q-2];if(B.length===10){let Y=TQ.bufferToLowerCasedHeaderName(B);if(Y==="keep-alive")this.keepAlive+=A.toString();else if(Y==="connection")this.connection+=A.toString()}else if(B.length===14&&TQ.bufferToLowerCasedHeaderName(B)==="content-length")this.contentLength+=A.toString();return this.trackHeader(A.length),0}trackHeader(A){if(this.headersSize+=A,this.headersSize>=this.headersMaxSize)TQ.destroy(this.socket,new AT0)}onUpgrade(A){let{upgrade:Q,client:B,socket:Y,headers:J,statusCode:C}=this;wQ(Q),wQ(B[AV]===Y),wQ(!Y.destroyed),wQ(!this.paused),wQ((J.length&1)===0);let X=B[I1][B[CC]];wQ(X),wQ(X.upgrade||X.method==="CONNECT"),this.statusCode=0,this.statusText="",this.shouldKeepAlive=!1,this.headers=[],this.headersSize=0,Y.unshift(A),Y[o0].destroy(),Y[o0]=null,Y[ir]=null,Y[XC]=null,HT0(Y),B[AV]=null,B[V3Q]=null,B[I1][B[CC]++]=null,B.emit("disconnect",B[K3Q],[B],new eK("upgrade"));try{X.onUpgrade(C,J,Y)}catch(G){TQ.destroy(Y,G)}B[AF]()}onHeadersComplete(A,Q,B){let{client:Y,socket:J,headers:C,statusText:X}=this;if(J.destroyed)return-1;let G=Y[I1][Y[CC]];if(!G)return-1;if(wQ(!this.upgrade),wQ(this.statusCode<200),A===100)return TQ.destroy(J,new Mq("bad response",TQ.getSocketInfo(J))),-1;if(Q&&!G.upgrade)return TQ.destroy(J,new Mq("bad upgrade",TQ.getSocketInfo(J))),-1;if(wQ(this.timeoutType===QV),this.statusCode=A,this.shouldKeepAlive=B||G.method==="HEAD"&&!J[J8]&&this.connection.toLowerCase()==="keep-alive",this.statusCode>=200){let F=G.bodyTimeout!=null?G.bodyTimeout:Y[UT0];this.setTimeout(F,wS)}else if(this.timeout){if(this.timeout.refresh)this.timeout.refresh()}if(G.method==="CONNECT")return wQ(Y[fJ]===1),this.upgrade=!0,2;if(Q)return wQ(Y[fJ]===1),this.upgrade=!0,2;if(wQ((this.headers.length&1)===0),this.headers=[],this.headersSize=0,this.shouldKeepAlive&&Y[RS]){let F=this.keepAlive?TQ.parseKeepAliveTimeout(this.keepAlive):null;if(F!=null){let Z=Math.min(F-Y[ZT0],Y[FT0]);if(Z<=0)J[J8]=!0;else Y[jS]=Z}else Y[jS]=Y[CT0]}else J[J8]=!0;let W=G.onHeaders(A,C,this.resume,X)===!1;if(G.aborted)return-1;if(G.method==="HEAD")return 1;if(A<200)return 1;if(J[zq])J[zq]=!1,Y[AF]();return W?wX.ERROR.PAUSED:0}onBody(A){let{client:Q,socket:B,statusCode:Y,maxResponseSize:J}=this;if(B.destroyed)return-1;let C=Q[I1][Q[CC]];if(wQ(C),wQ(this.timeoutType===wS),this.timeout){if(this.timeout.refresh)this.timeout.refresh()}if(wQ(Y>=200),J>-1&&this.bytesRead+A.length>J)return TQ.destroy(B,new YT0),-1;if(this.bytesRead+=A.length,C.onData(A)===!1)return wX.ERROR.PAUSED;return 0}onMessageComplete(){let{client:A,socket:Q,statusCode:B,upgrade:Y,headers:J,contentLength:C,bytesRead:X,shouldKeepAlive:G}=this;if(Q.destroyed&&(!B||G))return-1;if(Y)return 0;wQ(B>=100),wQ((this.headers.length&1)===0);let W=A[I1][A[CC]];if(wQ(W),this.statusCode=0,this.statusText="",this.bytesRead=0,this.contentLength="",this.keepAlive="",this.connection="",this.headers=[],this.headersSize=0,B<200)return 0;if(W.method!=="HEAD"&&C&&X!==parseInt(C,10))return TQ.destroy(Q,new tP0),-1;if(W.onComplete(J),A[I1][A[CC]++]=null,Q[QF])return wQ(A[fJ]===0),TQ.destroy(Q,new eK("reset")),wX.ERROR.PAUSED;else if(!G)return TQ.destroy(Q,new eK("reset")),wX.ERROR.PAUSED;else if(Q[J8]&&A[fJ]===0)return TQ.destroy(Q,new eK("reset")),wX.ERROR.PAUSED;else if(A[RS]==null||A[RS]===1)setImmediate(A[AF]);else A[AF]();return 0}}function Z3Q(A){let{socket:Q,timeoutType:B,client:Y,paused:J}=A.deref();if(B===QV){if(!Q[QF]||Q.writableNeedDrain||Y[fJ]>1)wQ(!J,"cannot be paused while waiting for headers"),TQ.destroy(Q,new eP0)}else if(B===wS){if(!J)TQ.destroy(Q,new QT0)}else if(B===pr)wQ(Y[fJ]===0&&Y[jS]),TQ.destroy(Q,new eK("socket idle timeout"))}function LT0(A,Q){if(A[AV]=Q,!dr)dr=DT0();if(Q.errored)throw Q.errored;if(Q.destroyed)throw new Mq("destroyed");return Q[Lq]=!1,Q[QF]=!1,Q[J8]=!1,Q[zq]=!1,Q[o0]=new I3Q(A,Q,dr),TQ.addListener(Q,"error",qT0),TQ.addListener(Q,"readable",MT0),TQ.addListener(Q,"end",zT0),TQ.addListener(Q,"close",RT0),Q[lr]=!1,Q.on("close",wT0),{version:"h1",defaultPipelining:1,write(B){return PT0(A,B)},resume(){jT0(A)},destroy(B,Y){if(Q[lr])queueMicrotask(Y);else Q.on("close",Y),Q.destroy(B)},get destroyed(){return Q.destroyed},busy(B){if(Q[QF]||Q[J8]||Q[zq])return!0;if(B){if(A[fJ]>0&&!B.idempotent)return!0;if(A[fJ]>0&&(B.upgrade||B.method==="CONNECT"))return!0;if(A[fJ]>0&&TQ.bodyLength(B.body)!==0&&(TQ.isStream(B.body)||TQ.isAsyncIterable(B.body)||TQ.isFormDataLike(B.body)))return!0}return!1}}}function qT0(A){wQ(A.code!=="ERR_TLS_CERT_ALTNAME_INVALID");let Q=this[o0];if(A.code==="ECONNRESET"&&Q.statusCode&&!Q.shouldKeepAlive){Q.onMessageComplete();return}this[XC]=A,this[ir][VT0](A)}function MT0(){this[o0]?.readMore()}function zT0(){let A=this[o0];if(A.statusCode&&!A.shouldKeepAlive){A.onMessageComplete();return}TQ.destroy(this,new Mq("other side closed",TQ.getSocketInfo(this)))}function RT0(){let A=this[o0];if(A){if(!this[XC]&&A.statusCode&&!A.shouldKeepAlive)A.onMessageComplete();this[o0].destroy(),this[o0]=null}let Q=this[XC]||new Mq("closed",TQ.getSocketInfo(this)),B=this[ir];if(B[AV]=null,B[V3Q]=null,B.destroyed){wQ(B[JT0]===0);let Y=B[I1].splice(B[CC]);for(let J=0;J0&&Q.code!=="UND_ERR_INFO"){let Y=B[I1][B[CC]];B[I1][B[CC]++]=null,TQ.errorRequest(B,Y,Q)}B[GT0]=B[CC],wQ(B[fJ]===0),B.emit("disconnect",B[K3Q],[B],Q),B[AF]()}function wT0(){this[lr]=!0}function jT0(A){let Q=A[AV];if(Q&&!Q.destroyed){if(A[W3Q]===0){if(!Q[Lq]&&Q.unref)Q.unref(),Q[Lq]=!0}else if(Q[Lq]&&Q.ref)Q.ref(),Q[Lq]=!1;if(A[W3Q]===0){if(Q[o0].timeoutType!==pr)Q[o0].setTimeout(A[jS],pr)}else if(A[fJ]>0&&Q[o0].statusCode<200){if(Q[o0].timeoutType!==QV){let B=A[I1][A[CC]],Y=B.headersTimeout!=null?B.headersTimeout:A[$T0];Q[o0].setTimeout(Y,QV)}}}}function OT0(A){return A!=="GET"&&A!=="HEAD"&&A!=="OPTIONS"&&A!=="TRACE"&&A!=="CONNECT"}function PT0(A,Q){let{method:B,path:Y,host:J,upgrade:C,blocking:X,reset:G}=Q,{body:W,headers:F,contentLength:Z}=Q,U=B==="PUT"||B==="POST"||B==="PATCH"||B==="QUERY"||B==="PROPFIND"||B==="PROPPATCH";if(TQ.isFormDataLike(W)){if(!ur)ur=tK().extractBody;let[V,H]=ur(W);if(Q.contentType==null)F.push("content-type",H);W=V.stream,Z=V.length}else if(TQ.isBlobLike(W)&&Q.contentType==null&&W.type)F.push("content-type",W.type);if(W&&typeof W.read==="function")W.read(0);let $=TQ.bodyLength(W);if(Z=$??Z,Z===null)Z=Q.contentLength;if(Z===0&&!U)Z=null;if(OT0(B)&&Z>0&&Q.contentLength!==null&&Q.contentLength!==Z){if(A[cr])return TQ.errorRequest(A,Q,new l$),!1;process.emitWarning(new l$)}let E=A[AV],K=(V)=>{if(Q.aborted||Q.completed)return;TQ.errorRequest(A,Q,V||new E3Q),TQ.destroy(W),TQ.destroy(E,new eK("aborted"))};try{Q.onConnect(K)}catch(V){TQ.errorRequest(A,Q,V)}if(Q.aborted)return!1;if(B==="HEAD")E[J8]=!0;if(C||B==="CONNECT")E[J8]=!0;if(G!=null)E[J8]=G;if(A[F3Q]&&E[ET0]++>=A[F3Q])E[J8]=!0;if(X)E[zq]=!0;let I=`${B} ${Y} HTTP/1.1\r `;if(typeof J==="string")I+=`host: ${J}\r -`;else I+=A[CP0];if(C)I+=`connection: upgrade\r +`;else I+=A[XT0];if(C)I+=`connection: upgrade\r upgrade: ${C}\r -`;else if(A[BS]&&!E[a9])I+=`connection: keep-alive\r +`;else if(A[RS]&&!E[J8])I+=`connection: keep-alive\r `;else I+=`connection: close\r -`;if(Array.isArray(W))for(let V=0;V{Q.removeListener("error",E)}),!F){let K=new j2Q;queueMicrotask(()=>E(K))}},E=function(K){if(F)return;if(F=!0,wQ(J.destroyed||J[nF]&&B[vJ]<=1),J.off("drain",U).off("error",E),Q.removeListener("data",Z).removeListener("end",E).removeListener("close",$),!K)try{W.end()}catch(I){K=I}if(W.destroy(K),K&&(K.code!=="UND_ERR_INFO"||K.message!=="reset"))TQ.destroy(Q,K);else TQ.destroy(Q)};if(Q.on("data",Z).on("end",E).on("error",E).on("close",$),Q.resume)Q.resume();if(J.on("drain",U).on("error",E),Q.errorEmitted??Q.errored)setImmediate(E,Q.errored);else if(Q.endEmitted??Q.readableEnded)setImmediate(E,null);if(Q.closeEmitted??Q.closed)setImmediate($)}function R2Q(A,Q,B,Y,J,C,X,G){try{if(!Q)if(C===0)J.write(`${X}content-length: 0\r +`}if(G3Q.sendHeaders.hasSubscribers)G3Q.sendHeaders.publish({request:Q,headers:I,socket:E});if(!W||$===0)$3Q(K,null,A,Q,E,Z,I,U);else if(TQ.isBuffer(W))$3Q(K,W,A,Q,E,Z,I,U);else if(TQ.isBlobLike(W))if(typeof W.stream==="function")U3Q(K,W.stream(),A,Q,E,Z,I,U);else ST0(K,W,A,Q,E,Z,I,U);else if(TQ.isStream(W))TT0(K,W,A,Q,E,Z,I,U);else if(TQ.isIterable(W))U3Q(K,W,A,Q,E,Z,I,U);else wQ(!1);return!0}function TT0(A,Q,B,Y,J,C,X,G){wQ(C!==0||B[fJ]===0,"stream body cannot be pipelined");let W=!1,F=new nr({abort:A,socket:J,request:Y,contentLength:C,client:B,expectsPayload:G,header:X}),Z=function(K){if(W)return;try{if(!F.write(K)&&this.pause)this.pause()}catch(I){TQ.destroy(this,I)}},U=function(){if(W)return;if(Q.resume)Q.resume()},$=function(){if(queueMicrotask(()=>{Q.removeListener("error",E)}),!W){let K=new E3Q;queueMicrotask(()=>E(K))}},E=function(K){if(W)return;if(W=!0,wQ(J.destroyed||J[QF]&&B[fJ]<=1),J.off("drain",U).off("error",E),Q.removeListener("data",Z).removeListener("end",E).removeListener("close",$),!K)try{F.end()}catch(I){K=I}if(F.destroy(K),K&&(K.code!=="UND_ERR_INFO"||K.message!=="reset"))TQ.destroy(Q,K);else TQ.destroy(Q)};if(Q.on("data",Z).on("end",E).on("error",E).on("close",$),Q.resume)Q.resume();if(J.on("drain",U).on("error",E),Q.errorEmitted??Q.errored)setImmediate(E,Q.errored);else if(Q.endEmitted??Q.readableEnded)setImmediate(E,null);if(Q.closeEmitted??Q.closed)setImmediate($)}function $3Q(A,Q,B,Y,J,C,X,G){try{if(!Q)if(C===0)J.write(`${X}content-length: 0\r \r `,"latin1");else wQ(C===null,"no body must not have content length"),J.write(`${X}\r `,"latin1");else if(TQ.isBuffer(Q)){if(wQ(C===Q.byteLength,"buffer body must have content length"),J.cork(),J.write(`${X}content-length: ${C}\r \r -`,"latin1"),J.write(Q),J.uncork(),Y.onBodySent(Q),!G&&Y.reset!==!1)J[a9]=!0}Y.onRequestSent(),B[iF]()}catch(F){A(F)}}async function TP0(A,Q,B,Y,J,C,X,G){wQ(C===Q.size,"blob body must have content length");try{if(C!=null&&C!==Q.size)throw new y$;let F=Buffer.from(await Q.arrayBuffer());if(J.cork(),J.write(`${X}content-length: ${C}\r +`,"latin1"),J.write(Q),J.uncork(),Y.onBodySent(Q),!G&&Y.reset!==!1)J[J8]=!0}Y.onRequestSent(),B[AF]()}catch(W){A(W)}}async function ST0(A,Q,B,Y,J,C,X,G){wQ(C===Q.size,"blob body must have content length");try{if(C!=null&&C!==Q.size)throw new l$;let W=Buffer.from(await Q.arrayBuffer());if(J.cork(),J.write(`${X}content-length: ${C}\r \r -`,"latin1"),J.write(F),J.uncork(),Y.onBodySent(F),Y.onRequestSent(),!G&&Y.reset!==!1)J[a9]=!0;B[iF]()}catch(F){A(F)}}async function w2Q(A,Q,B,Y,J,C,X,G){wQ(C!==0||B[vJ]===0,"iterator body cannot be pipelined");let F=null;function W(){if(F){let $=F;F=null,$()}}let Z=()=>new Promise(($,E)=>{if(wQ(F===null),J[o5])E(J[o5]);else F=$});J.on("close",W).on("drain",W);let U=new Rr({abort:A,socket:J,request:Y,contentLength:C,client:B,expectsPayload:G,header:X});try{for await(let $ of Q){if(J[o5])throw J[o5];if(!U.write($))await Z()}U.end()}catch($){U.destroy($)}finally{J.off("close",W).off("drain",W)}}class Rr{constructor({abort:A,socket:Q,request:B,contentLength:Y,client:J,expectsPayload:C,header:X}){this.socket=Q,this.request=B,this.contentLength=Y,this.client=J,this.bytesWritten=0,this.expectsPayload=C,this.header=X,this.abort=A,Q[nF]=!0}write(A){let{socket:Q,request:B,contentLength:Y,client:J,bytesWritten:C,expectsPayload:X,header:G}=this;if(Q[o5])throw Q[o5];if(Q.destroyed)return!1;let F=Buffer.byteLength(A);if(!F)return!0;if(Y!==null&&C+F>Y){if(J[Lr])throw new y$;process.emitWarning(new y$)}if(Q.cork(),C===0){if(!X&&B.reset!==!1)Q[a9]=!0;if(Y===null)Q.write(`${G}transfer-encoding: chunked\r +`,"latin1"),J.write(W),J.uncork(),Y.onBodySent(W),Y.onRequestSent(),!G&&Y.reset!==!1)J[J8]=!0;B[AF]()}catch(W){A(W)}}async function U3Q(A,Q,B,Y,J,C,X,G){wQ(C!==0||B[fJ]===0,"iterator body cannot be pipelined");let W=null;function F(){if(W){let $=W;W=null,$()}}let Z=()=>new Promise(($,E)=>{if(wQ(W===null),J[XC])E(J[XC]);else W=$});J.on("close",F).on("drain",F);let U=new nr({abort:A,socket:J,request:Y,contentLength:C,client:B,expectsPayload:G,header:X});try{for await(let $ of Q){if(J[XC])throw J[XC];if(!U.write($))await Z()}U.end()}catch($){U.destroy($)}finally{J.off("close",F).off("drain",F)}}class nr{constructor({abort:A,socket:Q,request:B,contentLength:Y,client:J,expectsPayload:C,header:X}){this.socket=Q,this.request=B,this.contentLength=Y,this.client=J,this.bytesWritten=0,this.expectsPayload=C,this.header=X,this.abort=A,Q[QF]=!0}write(A){let{socket:Q,request:B,contentLength:Y,client:J,bytesWritten:C,expectsPayload:X,header:G}=this;if(Q[XC])throw Q[XC];if(Q.destroyed)return!1;let W=Buffer.byteLength(A);if(!W)return!0;if(Y!==null&&C+W>Y){if(J[cr])throw new l$;process.emitWarning(new l$)}if(Q.cork(),C===0){if(!X&&B.reset!==!1)Q[J8]=!0;if(Y===null)Q.write(`${G}transfer-encoding: chunked\r `,"latin1");else Q.write(`${G}content-length: ${Y}\r \r `,"latin1")}if(Y===null)Q.write(`\r -${F.toString(16)}\r -`,"latin1");this.bytesWritten+=F;let W=Q.write(A);if(Q.uncork(),B.onBodySent(A),!W){if(Q[s0].timeout&&Q[s0].timeoutType===nK){if(Q[s0].timeout.refresh)Q[s0].timeout.refresh()}}return W}end(){let{socket:A,contentLength:Q,client:B,bytesWritten:Y,expectsPayload:J,header:C,request:X}=this;if(X.onRequestSent(),A[nF]=!1,A[o5])throw A[o5];if(A.destroyed)return;if(Y===0)if(J)A.write(`${C}content-length: 0\r +${W.toString(16)}\r +`,"latin1");this.bytesWritten+=W;let F=Q.write(A);if(Q.uncork(),B.onBodySent(A),!F){if(Q[o0].timeout&&Q[o0].timeoutType===QV){if(Q[o0].timeout.refresh)Q[o0].timeout.refresh()}}return F}end(){let{socket:A,contentLength:Q,client:B,bytesWritten:Y,expectsPayload:J,header:C,request:X}=this;if(X.onRequestSent(),A[QF]=!1,A[XC])throw A[XC];if(A.destroyed)return;if(Y===0)if(J)A.write(`${C}content-length: 0\r \r `,"latin1");else A.write(`${C}\r `,"latin1");else if(Q===null)A.write(`\r 0\r \r -`,"latin1");if(Q!==null&&Y!==Q)if(B[Lr])throw new y$;else process.emitWarning(new y$);if(A[s0].timeout&&A[s0].timeoutType===nK){if(A[s0].timeout.refresh)A[s0].timeout.refresh()}B[iF]()}destroy(A){let{socket:Q,client:B,abort:Y}=this;if(Q[nF]=!1,A)wQ(B[vJ]<=1,"pipeline should only contain this request"),Y(A)}}S2Q.exports=NP0});var f2Q=R((BnY,x2Q)=>{var e5=u("node:assert"),{pipeline:SP0}=u("node:stream"),OB=lQ(),{RequestContentLengthMismatchError:wr,RequestAbortedError:kP0,SocketError:Zq,InformationalError:CS}=QB(),{kUrl:Wq,kReset:GS,kClient:h$,kRunning:FS,kPending:_P0,kQueue:sF,kPendingIdx:Or,kRunningIdx:F1,kError:W1,kSocket:$Y,kStrictContentLength:vP0,kOnError:WS,kMaxConcurrentStreams:g2Q,kHTTP2Session:N6,kResume:jG,kSize:yP0,kHTTPContext:Pr,kClosed:jr,kBodyTimeout:hP0}=Q0(),{channels:_2Q}=O$(),t5=Symbol("open streams"),v2Q,XS;try{XS=u("node:http2")}catch{XS={constants:{}}}var{constants:{HTTP2_HEADER_AUTHORITY:gP0,HTTP2_HEADER_METHOD:xP0,HTTP2_HEADER_PATH:fP0,HTTP2_HEADER_SCHEME:bP0,HTTP2_HEADER_CONTENT_LENGTH:mP0,HTTP2_HEADER_EXPECT:uP0,HTTP2_HEADER_STATUS:dP0}}=XS;function cP0(A){let Q=[];for(let[B,Y]of Object.entries(A))if(Array.isArray(Y))for(let J of Y)Q.push(Buffer.from(B),Buffer.from(J));else Q.push(Buffer.from(B),Buffer.from(Y));return Q}function lP0(A,Q){A[$Y]=Q;let B=XS.connect(A[Wq],{createConnection:()=>Q,peerMaxConcurrentStreams:A[g2Q],settings:{enablePush:!1}});return B[t5]=0,B[h$]=A,B[$Y]=Q,B[N6]=null,OB.addListener(B,"error",iP0),OB.addListener(B,"frameError",nP0),OB.addListener(B,"end",sP0),OB.addListener(B,"goaway",rP0),OB.addListener(B,"close",aP0),B.unref(),A[N6]=B,Q[N6]=B,OB.addListener(Q,"error",tP0),OB.addListener(Q,"end",eP0),OB.addListener(Q,"close",oP0),Q[jr]=!1,Q.on("close",AT0),{version:"h2",defaultPipelining:1/0,write(Y){return BT0(A,Y)},resume(){pP0(A)},destroy(Y,J){if(Q[jr])queueMicrotask(J);else Q.destroy(Y).on("close",J)},get destroyed(){return Q.destroyed},busy(){return!1}}}function pP0(A){let Q=A[$Y];if(Q?.destroyed===!1)if(A[yP0]===0||A[g2Q]===0)Q.unref(),A[N6].unref();else Q.ref(),A[N6].ref()}function iP0(A){e5(A.code!=="ERR_TLS_CERT_ALTNAME_INVALID"),this[$Y][W1]=A,this[h$][WS](A)}function nP0(A,Q,B){if(B===0){let Y=new CS(`HTTP/2: "frameError" received - type ${A}, code ${Q}`);this[$Y][W1]=Y,this[h$][WS](Y)}}function sP0(){let A=new Zq("other side closed",OB.getSocketInfo(this[$Y]));this.destroy(A),OB.destroy(this[$Y],A)}function rP0(A){let Q=this[W1]||new Zq(`HTTP/2: "GOAWAY" frame received with code ${A}`,OB.getSocketInfo(this[$Y])),B=this[h$];if(B[$Y]=null,B[Pr]=null,this.close(),this[N6]=null,OB.destroy(this[$Y],Q),B[F1]{if(Q.aborted||Q.completed)return;if(N=N||new kP0,OB.errorRequest(A,Q,N),K!=null)K.removeAllListeners("data"),K.close(),A[WS](N),A[jG]();OB.destroy($,N)};try{Q.onConnect(H)}catch(N){OB.errorRequest(A,Q,N)}if(Q.aborted)return!1;if(J==="CONNECT"){if(Y.ref(),K=Y.request(E,{endStream:!1,signal:W}),!K.pending)Q.onUpgrade(null,null,K),++Y[t5],A[sF][A[F1]++]=null;else K.once("ready",()=>{Q.onUpgrade(null,null,K),++Y[t5],A[sF][A[F1]++]=null});return K.once("close",()=>{if(Y[t5]-=1,Y[t5]===0)Y.unref()}),K.setTimeout(B),!0}E[fP0]=C,E[bP0]=Z==="http:"?"http":"https";let D=J==="PUT"||J==="POST"||J==="PATCH";if($&&typeof $.read==="function")$.read(0);let L=OB.bodyLength($);if(OB.isFormDataLike($)){v2Q??=lK().extractBody;let[N,q]=v2Q($);E["content-type"]=q,$=N.stream,L=N.length}if(L==null)L=Q.contentLength;if(L===0||!D)L=null;if(QT0(J)&&L>0&&Q.contentLength!=null&&Q.contentLength!==L){if(A[vP0])return OB.errorRequest(A,Q,new wr),!1;process.emitWarning(new wr)}if(L!=null)e5($,"no body must not have content length"),E[mP0]=`${L}`;if(Y.ref(),_2Q.sendHeaders.hasSubscribers){let N="";for(let q in E)N+=`${q}: ${E[q]}\r -`;_2Q.sendHeaders.publish({request:Q,headers:N,socket:Y[$Y]})}let z=J==="GET"||J==="HEAD"||$===null;if(F)E[uP0]="100-continue",K=Y.request(E,{endStream:z,signal:W}),K.once("continue",M);else K=Y.request(E,{endStream:z,signal:W}),M();return++Y[t5],K.setTimeout(B),K.once("response",(N)=>{let{[dP0]:q,...w}=N;if(Q.onResponseStarted(),Q.aborted){K.removeAllListeners("data");return}if(Q.onHeaders(Number(q),cP0(w),K.resume.bind(K),"")===!1)K.pause()}),K.on("data",(N)=>{if(Q.onData(N)===!1)K.pause()}),K.once("end",(N)=>{if(K.removeAllListeners("data"),K.state?.state==null||K.state.state<6){if(!Q.aborted&&!Q.completed)Q.onComplete({});A[sF][A[F1]++]=null,A[jG]()}else{if(--Y[t5],Y[t5]===0)Y.unref();H(N??new CS("HTTP/2: stream half-closed (remote)")),A[sF][A[F1]++]=null,A[Or]=A[F1],A[jG]()}}),K.once("close",()=>{if(K.removeAllListeners("data"),Y[t5]-=1,Y[t5]===0)Y.unref()}),K.once("error",function(N){K.removeAllListeners("data"),H(N)}),K.once("frameError",(N,q)=>{K.removeAllListeners("data"),H(new CS(`HTTP/2: "frameError" received - type ${N}, code ${q}`))}),K.on("aborted",()=>{K.removeAllListeners("data")}),K.on("timeout",()=>{let N=new CS(`HTTP/2: "stream timeout after ${B}"`);if(K.removeAllListeners("data"),Y[t5]-=1,Y[t5]===0)Y.unref();H(N)}),K.once("trailers",(N)=>{if(Q.aborted||Q.completed)return;Q.onComplete(N)}),!0;function M(){if(!$||L===0)y2Q(H,K,null,A,Q,A[$Y],L,D);else if(OB.isBuffer($))y2Q(H,K,$,A,Q,A[$Y],L,D);else if(OB.isBlobLike($))if(typeof $.stream==="function")h2Q(H,K,$.stream(),A,Q,A[$Y],L,D);else JT0(H,K,$,A,Q,A[$Y],L,D);else if(OB.isStream($))YT0(H,A[$Y],D,K,$,A,Q,L);else if(OB.isIterable($))h2Q(H,K,$,A,Q,A[$Y],L,D);else e5(!1)}}function y2Q(A,Q,B,Y,J,C,X,G){try{if(B!=null&&OB.isBuffer(B))e5(X===B.byteLength,"buffer body must have content length"),Q.cork(),Q.write(B),Q.uncork(),Q.end(),J.onBodySent(B);if(!G)C[GS]=!0;J.onRequestSent(),Y[jG]()}catch(F){A(F)}}function YT0(A,Q,B,Y,J,C,X,G){e5(G!==0||C[FS]===0,"stream body cannot be pipelined");let F=SP0(J,Y,(Z)=>{if(Z)OB.destroy(F,Z),A(Z);else{if(OB.removeAllListeners(F),X.onRequestSent(),!B)Q[GS]=!0;C[jG]()}});OB.addListener(F,"data",W);function W(Z){X.onBodySent(Z)}}async function JT0(A,Q,B,Y,J,C,X,G){e5(X===B.size,"blob body must have content length");try{if(X!=null&&X!==B.size)throw new wr;let F=Buffer.from(await B.arrayBuffer());if(Q.cork(),Q.write(F),Q.uncork(),Q.end(),J.onBodySent(F),J.onRequestSent(),!G)C[GS]=!0;Y[jG]()}catch(F){A(F)}}async function h2Q(A,Q,B,Y,J,C,X,G){e5(X!==0||Y[FS]===0,"iterator body cannot be pipelined");let F=null;function W(){if(F){let U=F;F=null,U()}}let Z=()=>new Promise((U,$)=>{if(e5(F===null),C[W1])$(C[W1]);else F=U});Q.on("close",W).on("drain",W);try{for await(let U of B){if(C[W1])throw C[W1];let $=Q.write(U);if(J.onBodySent(U),!$)await Z()}if(Q.end(),J.onRequestSent(),!G)C[GS]=!0;Y[jG]()}catch(U){A(U)}finally{Q.off("close",W).off("drain",W)}}x2Q.exports=lP0});var f$=R((YnY,s2Q)=>{var OG=u("node:assert"),c2Q=u("node:net"),$q=u("node:http"),g$=lQ(),{ClientStats:CT0}=is(),{channels:sK}=O$(),XT0=dMQ(),GT0=P$(),{InvalidArgumentError:UY,InformationalError:FT0,ClientDestroyedError:WT0}=QB(),ZT0=tL(),{kUrl:L6,kServerName:tF,kClient:$T0,kBusy:Tr,kConnect:UT0,kResuming:x$,kRunning:Vq,kPending:Iq,kSize:Uq,kQueue:Z1,kConnected:ET0,kConnecting:rK,kNeedDrain:aF,kKeepAliveDefaultTimeout:b2Q,kHostHeader:KT0,kPendingIdx:$1,kRunningIdx:PG,kError:VT0,kPipelining:ZS,kKeepAliveTimeoutValue:IT0,kMaxHeadersSize:HT0,kKeepAliveMaxTimeout:DT0,kKeepAliveTimeoutThreshold:NT0,kHeadersTimeout:LT0,kBodyTimeout:qT0,kStrictContentLength:MT0,kConnector:Eq,kMaxRequests:Sr,kCounter:zT0,kClose:RT0,kDestroy:wT0,kDispatch:jT0,kLocalAddress:Kq,kMaxResponseSize:OT0,kOnError:PT0,kHTTPContext:EY,kMaxConcurrentStreams:TT0,kResume:oF}=Q0(),ST0=k2Q(),kT0=f2Q(),rF=Symbol("kClosedResolve"),_T0=$q&&$q.maxHeaderSize&&Number.isInteger($q.maxHeaderSize)&&$q.maxHeaderSize>0?()=>$q.maxHeaderSize:()=>{throw new UY("http module not available or http.maxHeaderSize invalid")},m2Q=()=>{};function l2Q(A){return A[ZS]??A[EY]?.defaultPipelining??1}class p2Q extends GT0{constructor(A,{maxHeaderSize:Q,headersTimeout:B,socketTimeout:Y,requestTimeout:J,connectTimeout:C,bodyTimeout:X,idleTimeout:G,keepAlive:F,keepAliveTimeout:W,maxKeepAliveTimeout:Z,keepAliveMaxTimeout:U,keepAliveTimeoutThreshold:$,socketPath:E,pipelining:K,tls:I,strictContentLength:V,maxCachedSessions:H,connect:D,maxRequestsPerClient:L,localAddress:z,maxResponseSize:M,autoSelectFamily:N,autoSelectFamilyAttemptTimeout:q,maxConcurrentStreams:w,allowH2:P}={}){if(F!==void 0)throw new UY("unsupported keepAlive, use pipelining=0 instead");if(Y!==void 0)throw new UY("unsupported socketTimeout, use headersTimeout & bodyTimeout instead");if(J!==void 0)throw new UY("unsupported requestTimeout, use headersTimeout & bodyTimeout instead");if(G!==void 0)throw new UY("unsupported idleTimeout, use keepAliveTimeout instead");if(Z!==void 0)throw new UY("unsupported maxKeepAliveTimeout, use keepAliveMaxTimeout instead");if(Q!=null){if(!Number.isInteger(Q)||Q<1)throw new UY("invalid maxHeaderSize")}else Q=_T0();if(E!=null&&typeof E!=="string")throw new UY("invalid socketPath");if(C!=null&&(!Number.isFinite(C)||C<0))throw new UY("invalid connectTimeout");if(W!=null&&(!Number.isFinite(W)||W<=0))throw new UY("invalid keepAliveTimeout");if(U!=null&&(!Number.isFinite(U)||U<=0))throw new UY("invalid keepAliveMaxTimeout");if($!=null&&!Number.isFinite($))throw new UY("invalid keepAliveTimeoutThreshold");if(B!=null&&(!Number.isInteger(B)||B<0))throw new UY("headersTimeout must be a positive integer or zero");if(X!=null&&(!Number.isInteger(X)||X<0))throw new UY("bodyTimeout must be a positive integer or zero");if(D!=null&&typeof D!=="function"&&typeof D!=="object")throw new UY("connect must be a function or an object");if(L!=null&&(!Number.isInteger(L)||L<0))throw new UY("maxRequestsPerClient must be a positive number");if(z!=null&&(typeof z!=="string"||c2Q.isIP(z)===0))throw new UY("localAddress must be valid string IP address");if(M!=null&&(!Number.isInteger(M)||M<-1))throw new UY("maxResponseSize must be a positive number");if(q!=null&&(!Number.isInteger(q)||q<-1))throw new UY("autoSelectFamilyAttemptTimeout must be a positive number");if(P!=null&&typeof P!=="boolean")throw new UY("allowH2 must be a valid boolean value");if(w!=null&&(typeof w!=="number"||w<1))throw new UY("maxConcurrentStreams must be a positive integer, greater than 0");super();if(typeof D!=="function")D=ZT0({...I,maxCachedSessions:H,allowH2:P,socketPath:E,timeout:C,...typeof N==="boolean"?{autoSelectFamily:N,autoSelectFamilyAttemptTimeout:q}:void 0,...D});this[L6]=g$.parseOrigin(A),this[Eq]=D,this[ZS]=K!=null?K:1,this[HT0]=Q,this[b2Q]=W==null?4000:W,this[DT0]=U==null?600000:U,this[NT0]=$==null?2000:$,this[IT0]=this[b2Q],this[tF]=null,this[Kq]=z!=null?z:null,this[x$]=0,this[aF]=0,this[KT0]=`host: ${this[L6].hostname}${this[L6].port?`:${this[L6].port}`:""}\r -`,this[qT0]=X!=null?X:300000,this[LT0]=B!=null?B:300000,this[MT0]=V==null?!0:V,this[Sr]=L,this[rF]=null,this[OT0]=M>-1?M:-1,this[TT0]=w!=null?w:100,this[EY]=null,this[Z1]=[],this[PG]=0,this[$1]=0,this[oF]=(_)=>kr(this,_),this[PT0]=(_)=>i2Q(this,_)}get pipelining(){return this[ZS]}set pipelining(A){this[ZS]=A,this[oF](!0)}get stats(){return new CT0(this)}get[Iq](){return this[Z1].length-this[$1]}get[Vq](){return this[$1]-this[PG]}get[Uq](){return this[Z1].length-this[PG]}get[ET0](){return!!this[EY]&&!this[rK]&&!this[EY].destroyed}get[Tr](){return Boolean(this[EY]?.busy(null)||this[Uq]>=(l2Q(this)||1)||this[Iq]>0)}[UT0](A){n2Q(this),this.once("connect",A)}[jT0](A,Q){let B=new XT0(this[L6].origin,A,Q);if(this[Z1].push(B),this[x$]);else if(g$.bodyLength(B.body)==null&&g$.isIterable(B.body))this[x$]=1,queueMicrotask(()=>kr(this));else this[oF](!0);if(this[x$]&&this[aF]!==2&&this[Tr])this[aF]=2;return this[aF]<2}[RT0](){return new Promise((A)=>{if(this[Uq])this[rF]=A;else A(null)})}[wT0](A){return new Promise((Q)=>{let B=this[Z1].splice(this[$1]);for(let J=0;J{if(this[rF])this[rF](),this[rF]=null;Q(null)};if(this[EY])this[EY].destroy(A,Y),this[EY]=null;else queueMicrotask(Y);this[oF]()})}}function i2Q(A,Q){if(A[Vq]===0&&Q.code!=="UND_ERR_INFO"&&Q.code!=="UND_ERR_SOCKET"){OG(A[$1]===A[PG]);let B=A[Z1].splice(A[PG]);for(let Y=0;Y{if(C){u2Q(A,C,{host:Q,hostname:B,protocol:Y,port:J}),A[oF]();return}if(A.destroyed){g$.destroy(X.on("error",m2Q),new WT0),A[oF]();return}OG(X);try{A[EY]=X.alpnProtocol==="h2"?kT0(A,X):ST0(A,X)}catch(G){X.destroy().on("error",m2Q),u2Q(A,G,{host:Q,hostname:B,protocol:Y,port:J}),A[oF]();return}if(A[rK]=!1,X[zT0]=0,X[Sr]=A[Sr],X[$T0]=A,X[VT0]=null,sK.connected.hasSubscribers)sK.connected.publish({connectParams:{host:Q,hostname:B,protocol:Y,port:J,version:A[EY]?.version,servername:A[tF],localAddress:A[Kq]},connector:A[Eq],socket:X});A.emit("connect",A[L6],[A]),A[oF]()})}function u2Q(A,Q,{host:B,hostname:Y,protocol:J,port:C}){if(A.destroyed)return;if(A[rK]=!1,sK.connectError.hasSubscribers)sK.connectError.publish({connectParams:{host:B,hostname:Y,protocol:J,port:C,version:A[EY]?.version,servername:A[tF],localAddress:A[Kq]},connector:A[Eq],error:Q});if(Q.code==="ERR_TLS_CERT_ALTNAME_INVALID"){OG(A[Vq]===0);while(A[Iq]>0&&A[Z1][A[$1]].servername===A[tF]){let X=A[Z1][A[$1]++];g$.errorRequest(A,X,Q)}}else i2Q(A,Q);A.emit("connectionError",A[L6],[A],Q)}function d2Q(A){A[aF]=0,A.emit("drain",A[L6],[A])}function kr(A,Q){if(A[x$]===2)return;if(A[x$]=2,vT0(A,Q),A[x$]=0,A[PG]>256)A[Z1].splice(0,A[PG]),A[$1]-=A[PG],A[PG]=0}function vT0(A,Q){while(!0){if(A.destroyed){OG(A[Iq]===0);return}if(A[rF]&&!A[Uq]){A[rF](),A[rF]=null;return}if(A[EY])A[EY].resume();if(A[Tr])A[aF]=2;else if(A[aF]===2){if(Q)A[aF]=1,queueMicrotask(()=>d2Q(A));else d2Q(A);continue}if(A[Iq]===0)return;if(A[Vq]>=(l2Q(A)||1))return;let B=A[Z1][A[$1]];if(A[L6].protocol==="https:"&&A[tF]!==B.servername){if(A[Vq]>0)return;A[tF]=B.servername,A[EY]?.destroy(new FT0("servername changed"),()=>{A[EY]=null,kr(A)})}if(A[rK])return;if(!A[EY]){n2Q(A);return}if(A[EY].destroyed)return;if(A[EY].busy(B))return;if(!B.aborted&&A[EY].write(B))A[$1]++;else A[Z1].splice(A[$1],1)}}s2Q.exports=p2Q});var vr=R((JnY,r2Q)=>{class _r{bottom=0;top=0;list=Array(2048).fill(void 0);next=null;isEmpty(){return this.top===this.bottom}isFull(){return(this.top+1&2047)===this.bottom}push(A){this.list[this.top]=A,this.top=this.top+1&2047}shift(){let A=this.list[this.bottom];if(A===void 0)return null;return this.list[this.bottom]=void 0,this.bottom=this.bottom+1&2047,A}}r2Q.exports=class{constructor(){this.head=this.tail=new _r}isEmpty(){return this.head.isEmpty()}push(Q){if(this.head.isFull())this.head=this.head.next=new _r;this.head.push(Q)}shift(){let Q=this.tail,B=Q.shift();if(Q.isEmpty()&&Q.next!==null)this.tail=Q.next,Q.next=null;return B}}});var fr=R((CnY,C3Q)=>{var{PoolStats:yT0}=is(),hT0=P$(),gT0=vr(),{kConnected:yr,kSize:a2Q,kRunning:o2Q,kPending:t2Q,kQueued:Hq,kBusy:xT0,kFree:fT0,kUrl:bT0,kClose:mT0,kDestroy:uT0,kDispatch:dT0}=Q0(),qY=Symbol("clients"),D9=Symbol("needDrain"),Dq=Symbol("queue"),hr=Symbol("closed resolve"),gr=Symbol("onDrain"),e2Q=Symbol("onConnect"),A3Q=Symbol("onDisconnect"),Q3Q=Symbol("onConnectionError"),xr=Symbol("get dispatcher"),B3Q=Symbol("add client"),Y3Q=Symbol("remove client");class J3Q extends hT0{[Dq]=new gT0;[Hq]=0;[qY]=[];[D9]=!1;[gr](A,Q,B){let Y=this[Dq],J=!1;while(!J){let C=Y.shift();if(!C)break;this[Hq]--,J=!A.dispatch(C.opts,C.handler)}if(A[D9]=J,!J&&this[D9])this[D9]=!1,this.emit("drain",Q,[this,...B]);if(this[hr]&&Y.isEmpty()){let C=Array(this[qY].length);for(let X=0;X{this.emit("connect",A,[this,...Q])};[A3Q]=(A,Q,B)=>{this.emit("disconnect",A,[this,...Q],B)};[Q3Q]=(A,Q,B)=>{this.emit("connectionError",A,[this,...Q],B)};get[xT0](){return this[D9]}get[yr](){let A=0;for(let{[yr]:Q}of this[qY])A+=Q;return A}get[fT0](){let A=0;for(let{[yr]:Q,[D9]:B}of this[qY])A+=Q&&!B;return A}get[t2Q](){let A=this[Hq];for(let{[t2Q]:Q}of this[qY])A+=Q;return A}get[o2Q](){let A=0;for(let{[o2Q]:Q}of this[qY])A+=Q;return A}get[a2Q](){let A=this[Hq];for(let{[a2Q]:Q}of this[qY])A+=Q;return A}get stats(){return new yT0(this)}[mT0](){if(this[Dq].isEmpty()){let A=Array(this[qY].length);for(let Q=0;Q{this[hr]=A})}[uT0](A){while(!0){let B=this[Dq].shift();if(!B)break;B.handler.onError(A)}let Q=Array(this[qY].length);for(let B=0;B{if(this[D9])this[gr](A,A[bT0],[A,this])});return this}[Y3Q](A){A.close(()=>{let Q=this[qY].indexOf(A);if(Q!==-1)this[qY].splice(Q,1)}),this[D9]=this[qY].some((Q)=>!Q[D9]&&Q.closed!==!0&&Q.destroyed!==!0)}}C3Q.exports={PoolBase:J3Q,kClients:qY,kNeedDrain:D9,kAddClient:B3Q,kRemoveClient:Y3Q,kGetDispatcher:xr}});var aK=R((XnY,Z3Q)=>{var{PoolBase:cT0,kClients:$S,kNeedDrain:lT0,kAddClient:pT0,kGetDispatcher:iT0,kRemoveClient:nT0}=fr(),sT0=f$(),{InvalidArgumentError:br}=QB(),X3Q=lQ(),{kUrl:G3Q}=Q0(),rT0=tL(),US=Symbol("options"),mr=Symbol("connections"),F3Q=Symbol("factory");function aT0(A,Q){return new sT0(A,Q)}class W3Q extends cT0{constructor(A,{connections:Q,factory:B=aT0,connect:Y,connectTimeout:J,tls:C,maxCachedSessions:X,socketPath:G,autoSelectFamily:F,autoSelectFamilyAttemptTimeout:W,allowH2:Z,clientTtl:U,...$}={}){if(Q!=null&&(!Number.isFinite(Q)||Q<0))throw new br("invalid connections");if(typeof B!=="function")throw new br("factory must be a function.");if(Y!=null&&typeof Y!=="function"&&typeof Y!=="object")throw new br("connect must be a function or an object");if(typeof Y!=="function")Y=rT0({...C,maxCachedSessions:X,allowH2:Z,socketPath:G,timeout:J,...typeof F==="boolean"?{autoSelectFamily:F,autoSelectFamilyAttemptTimeout:W}:void 0,...Y});super();this[mr]=Q||null,this[G3Q]=X3Q.parseOrigin(A),this[US]={...X3Q.deepClone($),connect:Y,allowH2:Z,clientTtl:U},this[US].interceptors=$.interceptors?{...$.interceptors}:void 0,this[F3Q]=B,this.on("connect",(E,K)=>{if(U!=null&&U>0)for(let I of K)Object.assign(I,{ttl:Date.now()})}),this.on("connectionError",(E,K,I)=>{for(let V of K){let H=this[$S].indexOf(V);if(H!==-1)this[$S].splice(H,1)}})}[iT0](){let A=this[US].clientTtl;for(let Q of this[$S])if(A!=null&&A>0&&Q.ttl&&Date.now()-Q.ttl>A)this[nT0](Q);else if(!Q[lT0])return Q;if(!this[mr]||this[$S].length{var{BalancedPoolMissingUpstreamError:oT0,InvalidArgumentError:tT0}=QB(),{PoolBase:eT0,kClients:yJ,kNeedDrain:Nq,kAddClient:AS0,kRemoveClient:QS0,kGetDispatcher:BS0}=fr(),YS0=aK(),{kUrl:ur}=Q0(),{parseOrigin:$3Q}=lQ(),U3Q=Symbol("factory"),ES=Symbol("options"),E3Q=Symbol("kGreatestCommonDivisor"),b$=Symbol("kCurrentWeight"),m$=Symbol("kIndex"),AC=Symbol("kWeight"),KS=Symbol("kMaxWeightPerServer"),VS=Symbol("kErrorPenalty");function JS0(A,Q){if(A===0)return Q;while(Q!==0){let B=Q;Q=A%Q,A=B}return A}function CS0(A,Q){return new YS0(A,Q)}class K3Q extends eT0{constructor(A=[],{factory:Q=CS0,...B}={}){if(typeof Q!=="function")throw new tT0("factory must be a function.");super();if(this[ES]=B,this[m$]=-1,this[b$]=0,this[KS]=this[ES].maxWeightPerServer||100,this[VS]=this[ES].errorPenalty||15,!Array.isArray(A))A=[A];this[U3Q]=Q;for(let Y of A)this.addUpstream(Y);this._updateBalancedPoolStats()}addUpstream(A){let Q=$3Q(A).origin;if(this[yJ].find((Y)=>Y[ur].origin===Q&&Y.closed!==!0&&Y.destroyed!==!0))return this;let B=this[U3Q](Q,Object.assign({},this[ES]));this[AS0](B),B.on("connect",()=>{B[AC]=Math.min(this[KS],B[AC]+this[VS])}),B.on("connectionError",()=>{B[AC]=Math.max(1,B[AC]-this[VS]),this._updateBalancedPoolStats()}),B.on("disconnect",(...Y)=>{let J=Y[2];if(J&&J.code==="UND_ERR_SOCKET")B[AC]=Math.max(1,B[AC]-this[VS]),this._updateBalancedPoolStats()});for(let Y of this[yJ])Y[AC]=this[KS];return this._updateBalancedPoolStats(),this}_updateBalancedPoolStats(){let A=0;for(let Q=0;QY[ur].origin===Q&&Y.closed!==!0&&Y.destroyed!==!0);if(B)this[QS0](B);return this}get upstreams(){return this[yJ].filter((A)=>A.closed!==!0&&A.destroyed!==!0).map((A)=>A[ur].origin)}[BS0](){if(this[yJ].length===0)throw new oT0;if(!this[yJ].find((J)=>!J[Nq]&&J.closed!==!0&&J.destroyed!==!0))return;if(this[yJ].map((J)=>J[Nq]).reduce((J,C)=>J&&C,!0))return;let B=0,Y=this[yJ].findIndex((J)=>!J[Nq]);while(B++this[yJ][Y][AC]&&!J[Nq])Y=this[m$];if(this[m$]===0){if(this[b$]=this[b$]-this[E3Q],this[b$]<=0)this[b$]=this[KS]}if(J[AC]>=this[b$]&&!J[Nq])return J}return this[b$]=this[yJ][Y][AC],this[m$]=Y,this[yJ][Y]}}V3Q.exports=K3Q});var u$=R((FnY,R3Q)=>{var{InvalidArgumentError:IS,MaxOriginsReachedError:XS0}=QB(),{kClients:QC,kRunning:H3Q,kClose:GS0,kDestroy:FS0,kDispatch:WS0,kUrl:ZS0}=Q0(),$S0=P$(),US0=aK(),ES0=f$(),KS0=lQ(),D3Q=Symbol("onConnect"),N3Q=Symbol("onDisconnect"),L3Q=Symbol("onConnectionError"),q3Q=Symbol("onDrain"),M3Q=Symbol("factory"),dr=Symbol("options"),Lq=Symbol("origins");function VS0(A,Q){return Q&&Q.connections===1?new ES0(A,Q):new US0(A,Q)}class z3Q extends $S0{constructor({factory:A=VS0,maxOrigins:Q=1/0,connect:B,...Y}={}){if(typeof A!=="function")throw new IS("factory must be a function.");if(B!=null&&typeof B!=="function"&&typeof B!=="object")throw new IS("connect must be a function or an object");if(typeof Q!=="number"||Number.isNaN(Q)||Q<=0)throw new IS("maxOrigins must be a number greater than 0");super();if(B&&typeof B!=="function")B={...B};this[dr]={...KS0.deepClone(Y),maxOrigins:Q,connect:B},this[M3Q]=A,this[QC]=new Map,this[Lq]=new Set,this[q3Q]=(J,C)=>{this.emit("drain",J,[this,...C])},this[D3Q]=(J,C)=>{this.emit("connect",J,[this,...C])},this[N3Q]=(J,C,X)=>{this.emit("disconnect",J,[this,...C],X)},this[L3Q]=(J,C,X)=>{this.emit("connectionError",J,[this,...C],X)}}get[H3Q](){let A=0;for(let{dispatcher:Q}of this[QC].values())A+=Q[H3Q];return A}[WS0](A,Q){let B;if(A.origin&&(typeof A.origin==="string"||A.origin instanceof URL))B=String(A.origin);else throw new IS("opts.origin must be a non-empty string or URL.");if(this[Lq].size>=this[dr].maxOrigins&&!this[Lq].has(B))throw new XS0;let Y=this[QC].get(B),J=Y&&Y.dispatcher;if(!J){let C=(X)=>{let G=this[QC].get(B);if(G){if(X)G.count-=1;if(G.count<=0)this[QC].delete(B),G.dispatcher.close();this[Lq].delete(B)}};J=this[M3Q](A.origin,this[dr]).on("drain",this[q3Q]).on("connect",(X,G)=>{let F=this[QC].get(B);if(F)F.count+=1;this[D3Q](X,G)}).on("disconnect",(X,G,F)=>{C(!0),this[N3Q](X,G,F)}).on("connectionError",(X,G,F)=>{C(!1),this[L3Q](X,G,F)}),this[QC].set(B,{count:0,dispatcher:J}),this[Lq].add(B)}return J.dispatch(A,Q)}[GS0](){let A=[];for(let{dispatcher:Q}of this[QC].values())A.push(Q.close());return this[QC].clear(),Promise.all(A)}[FS0](A){let Q=[];for(let{dispatcher:B}of this[QC].values())Q.push(B.destroy(A));return this[QC].clear(),Promise.all(Q)}get stats(){let A={};for(let{dispatcher:Q}of this[QC].values())if(Q.stats)A[Q[ZS0].origin]=Q.stats;return A}}R3Q.exports=z3Q});var pr=R((WnY,x3Q)=>{var{kProxy:cr,kClose:S3Q,kDestroy:k3Q,kDispatch:w3Q}=Q0(),IS0=u$(),_3Q=aK(),v3Q=P$(),{InvalidArgumentError:oK,RequestAbortedError:HS0,SecureProxyConnectionError:DS0}=QB(),j3Q=tL(),y3Q=f$(),HS=Symbol("proxy agent"),DS=Symbol("proxy client"),eF=Symbol("proxy headers"),lr=Symbol("request tls settings"),O3Q=Symbol("proxy tls settings"),P3Q=Symbol("connect endpoint function"),T3Q=Symbol("tunnel proxy");function NS0(A){return A==="https:"?443:80}function LS0(A,Q){return new _3Q(A,Q)}var qS0=()=>{};function MS0(A,Q){if(Q.connections===1)return new y3Q(A,Q);return new _3Q(A,Q)}class h3Q extends v3Q{#A;constructor(A,{headers:Q={},connect:B,factory:Y}){if(!A)throw new oK("Proxy URL is mandatory");super();if(this[eF]=Q,Y)this.#A=Y(A,{connect:B});else this.#A=new y3Q(A,{connect:B})}[w3Q](A,Q){let B=Q.onHeaders;Q.onHeaders=function(X,G,F){if(X===407){if(typeof Q.onError==="function")Q.onError(new oK("Proxy Authentication Required (407)"));return}if(B)B.call(this,X,G,F)};let{origin:Y,path:J="/",headers:C={}}=A;if(A.path=Y+J,!("host"in C)&&!("Host"in C)){let{host:X}=new URL(Y);C.host=X}return A.headers={...this[eF],...C},this.#A[w3Q](A,Q)}[S3Q](){return this.#A.close()}[k3Q](A){return this.#A.destroy(A)}}class g3Q extends v3Q{constructor(A){if(!A||typeof A==="object"&&!(A instanceof URL)&&!A.uri)throw new oK("Proxy uri is mandatory");let{clientFactory:Q=LS0}=A;if(typeof Q!=="function")throw new oK("Proxy opts.clientFactory must be a function.");let{proxyTunnel:B=!0}=A;super();let Y=this.#A(A),{href:J,origin:C,port:X,protocol:G,username:F,password:W,hostname:Z}=Y;if(this[cr]={uri:J,protocol:G},this[lr]=A.requestTls,this[O3Q]=A.proxyTls,this[eF]=A.headers||{},this[T3Q]=B,A.auth&&A.token)throw new oK("opts.auth cannot be used in combination with opts.token");else if(A.auth)this[eF]["proxy-authorization"]=`Basic ${A.auth}`;else if(A.token)this[eF]["proxy-authorization"]=A.token;else if(F&&W)this[eF]["proxy-authorization"]=`Basic ${Buffer.from(`${decodeURIComponent(F)}:${decodeURIComponent(W)}`).toString("base64")}`;let U=j3Q({...A.proxyTls});this[P3Q]=j3Q({...A.requestTls});let $=A.factory||MS0,E=(K,I)=>{let{protocol:V}=new URL(K);if(!this[T3Q]&&V==="http:"&&this[cr].protocol==="http:")return new h3Q(this[cr].uri,{headers:this[eF],connect:U,factory:$});return $(K,I)};this[DS]=Q(Y,{connect:U}),this[HS]=new IS0({...A,factory:E,connect:async(K,I)=>{let V=K.host;if(!K.port)V+=`:${NS0(K.protocol)}`;try{let{socket:H,statusCode:D}=await this[DS].connect({origin:C,port:X,path:V,signal:K.signal,headers:{...this[eF],host:K.host,...K.connections==null||K.connections>0?{"proxy-connection":"keep-alive"}:{}},servername:this[O3Q]?.servername||Z});if(D!==200)H.on("error",qS0).destroy(),I(new HS0(`Proxy response (${D}) !== 200 when HTTP Tunneling`));if(K.protocol!=="https:"){I(null,H);return}let L;if(this[lr])L=this[lr].servername;else L=K.servername;this[P3Q]({...K,servername:L,httpSocket:H},I)}catch(H){if(H.code==="ERR_TLS_CERT_ALTNAME_INVALID")I(new DS0(H));else I(H)}}})}dispatch(A,Q){let B=zS0(A.headers);if(RS0(B),B&&!("host"in B)&&!("Host"in B)){let{host:Y}=new URL(A.origin);B.host=Y}return this[HS].dispatch({...A,headers:B},Q)}#A(A){if(typeof A==="string")return new URL(A);else if(A instanceof URL)return A;else return new URL(A.uri)}[S3Q](){return Promise.all([this[HS].close(),this[DS].close()])}[k3Q](){return Promise.all([this[HS].destroy(),this[DS].destroy()])}}function zS0(A){if(Array.isArray(A)){let Q={};for(let B=0;BB.toLowerCase()==="proxy-authorization"))throw new oK("Proxy-Authorization should be sent in ProxyAgent constructor")}x3Q.exports=g3Q});var c3Q=R((ZnY,d3Q)=>{var wS0=P$(),{kClose:jS0,kDestroy:OS0,kClosed:f3Q,kDestroyed:b3Q,kDispatch:PS0,kNoProxyAgent:qq,kHttpProxyAgent:AW,kHttpsProxyAgent:d$}=Q0(),m3Q=pr(),TS0=u$(),SS0={"http:":80,"https:":443};class u3Q extends wS0{#A=null;#Q=null;#B=null;constructor(A={}){super();this.#B=A;let{httpProxy:Q,httpsProxy:B,noProxy:Y,...J}=A;this[qq]=new TS0(J);let C=Q??process.env.http_proxy??process.env.HTTP_PROXY;if(C)this[AW]=new m3Q({...J,uri:C});else this[AW]=this[qq];let X=B??process.env.https_proxy??process.env.HTTPS_PROXY;if(X)this[d$]=new m3Q({...J,uri:X});else this[d$]=this[AW];this.#C()}[PS0](A,Q){let B=new URL(A.origin);return this.#Y(B).dispatch(A,Q)}[jS0](){return Promise.all([this[qq].close(),!this[AW][f3Q]&&this[AW].close(),!this[d$][f3Q]&&this[d$].close()])}[OS0](A){return Promise.all([this[qq].destroy(A),!this[AW][b3Q]&&this[AW].destroy(A),!this[d$][b3Q]&&this[d$].destroy(A)])}#Y(A){let{protocol:Q,host:B,port:Y}=A;if(B=B.replace(/:\d*$/,"").toLowerCase(),Y=Number.parseInt(Y,10)||SS0[Q]||0,!this.#J(B,Y))return this[qq];if(Q==="https:")return this[d$];return this[AW]}#J(A,Q){if(this.#F)this.#C();if(this.#Q.length===0)return!0;if(this.#A==="*")return!1;for(let B=0;B{var tK=u("node:assert"),{kRetryHandlerDefaultRetry:l3Q}=Q0(),{RequestRetryError:Mq}=QB(),kS0=rL(),{isDisturbed:p3Q,parseRangeHeader:i3Q,wrapRequestBody:_S0}=lQ();function vS0(A){let Q=new Date(A).getTime();return isNaN(Q)?0:Q-Date.now()}class ir{constructor(A,{dispatch:Q,handler:B}){let{retryOptions:Y,...J}=A,{retry:C,maxRetries:X,maxTimeout:G,minTimeout:F,timeoutFactor:W,methods:Z,errorCodes:U,retryAfter:$,statusCodes:E,throwOnError:K}=Y??{};this.error=null,this.dispatch=Q,this.handler=kS0.wrap(B),this.opts={...J,body:_S0(A.body)},this.retryOpts={throwOnError:K??!0,retry:C??ir[l3Q],retryAfter:$??!0,maxTimeout:G??30000,minTimeout:F??500,timeoutFactor:W??2,maxRetries:X??5,methods:Z??["GET","HEAD","OPTIONS","PUT","DELETE","TRACE"],statusCodes:E??[500,502,503,504,429],errorCodes:U??["ECONNRESET","ECONNREFUSED","ENOTFOUND","ENETDOWN","ENETUNREACH","EHOSTDOWN","EHOSTUNREACH","EPIPE","UND_ERR_SOCKET"]},this.retryCount=0,this.retryCountCheckpoint=0,this.headersSent=!1,this.start=0,this.end=null,this.etag=null}onResponseStartWithRetry(A,Q,B,Y,J){if(this.retryOpts.throwOnError){if(this.retryOpts.statusCodes.includes(Q)===!1)this.headersSent=!0,this.handler.onResponseStart?.(A,Q,B,Y);else this.error=J;return}if(p3Q(this.opts.body)){this.headersSent=!0,this.handler.onResponseStart?.(A,Q,B,Y);return}function C(X){if(X){this.headersSent=!0,this.headersSent=!0,this.handler.onResponseStart?.(A,Q,B,Y),A.resume();return}this.error=J,A.resume()}A.pause(),this.retryOpts.retry(J,{state:{counter:this.retryCount},opts:{retryOptions:this.retryOpts,...this.opts}},C.bind(this))}onRequestStart(A,Q){if(!this.headersSent)this.handler.onRequestStart?.(A,Q)}onRequestUpgrade(A,Q,B,Y){this.handler.onRequestUpgrade?.(A,Q,B,Y)}static[l3Q](A,{state:Q,opts:B},Y){let{statusCode:J,code:C,headers:X}=A,{method:G,retryOptions:F}=B,{maxRetries:W,minTimeout:Z,maxTimeout:U,timeoutFactor:$,statusCodes:E,errorCodes:K,methods:I}=F,{counter:V}=Q;if(C&&C!=="UND_ERR_REQ_RETRY"&&!K.includes(C)){Y(A);return}if(Array.isArray(I)&&!I.includes(G)){Y(A);return}if(J!=null&&Array.isArray(E)&&!E.includes(J)){Y(A);return}if(V>W){Y(A);return}let H=X?.["retry-after"];if(H)H=Number(H),H=Number.isNaN(H)?vS0(X["retry-after"]):H*1000;let D=H>0?Math.min(H,U):Math.min(Z*$**(V-1),U);setTimeout(()=>Y(null),D)}onResponseStart(A,Q,B,Y){if(this.error=null,this.retryCount+=1,Q>=300){let J=new Mq("Request failed",Q,{headers:B,data:{count:this.retryCount}});this.onResponseStartWithRetry(A,Q,B,Y,J);return}if(this.headersSent){if(Q!==206&&(this.start>0||Q!==200))throw new Mq("server does not support the range header and the payload was partially consumed",Q,{headers:B,data:{count:this.retryCount}});let J=i3Q(B["content-range"]);if(!J)throw new Mq("Content-Range mismatch",Q,{headers:B,data:{count:this.retryCount}});if(this.etag!=null&&this.etag!==B.etag)throw new Mq("ETag mismatch",Q,{headers:B,data:{count:this.retryCount}});let{start:C,size:X,end:G=X?X-1:null}=J;tK(this.start===C,"content-range mismatch"),tK(this.end==null||this.end===G,"content-range mismatch");return}if(this.end==null){if(Q===206){let J=i3Q(B["content-range"]);if(J==null){this.headersSent=!0,this.handler.onResponseStart?.(A,Q,B,Y);return}let{start:C,size:X,end:G=X?X-1:null}=J;tK(C!=null&&Number.isFinite(C),"content-range mismatch"),tK(G!=null&&Number.isFinite(G),"invalid content-length"),this.start=C,this.end=G}if(this.end==null){let J=B["content-length"];this.end=J!=null?Number(J)-1:null}if(tK(Number.isFinite(this.start)),tK(this.end==null||Number.isFinite(this.end),"invalid content-length"),this.resume=!0,this.etag=B.etag!=null?B.etag:null,this.etag!=null&&this.etag[0]==="W"&&this.etag[1]==="/")this.etag=null;this.headersSent=!0,this.handler.onResponseStart?.(A,Q,B,Y)}else throw new Mq("Request failed",Q,{headers:B,data:{count:this.retryCount}})}onResponseData(A,Q){if(this.error)return;this.start+=Q.length,this.handler.onResponseData?.(A,Q)}onResponseEnd(A,Q){if(this.error&&this.retryOpts.throwOnError)throw this.error;if(!this.error)return this.retryCount=0,this.handler.onResponseEnd?.(A,Q);this.retry(A)}retry(A){if(this.start!==0){let Q={range:`bytes=${this.start}-${this.end??""}`};if(this.etag!=null)Q["if-match"]=this.etag;this.opts={...this.opts,headers:{...this.opts.headers,...Q}}}try{this.retryCountCheckpoint=this.retryCount,this.dispatch(this.opts,this)}catch(Q){this.handler.onResponseError?.(A,Q)}}onResponseError(A,Q){if(A?.aborted||p3Q(this.opts.body)){this.handler.onResponseError?.(A,Q);return}function B(Y){if(!Y){this.retry(A);return}this.handler?.onResponseError?.(A,Y)}if(this.retryCount-this.retryCountCheckpoint>0)this.retryCount=this.retryCountCheckpoint+(this.retryCount-this.retryCountCheckpoint);else this.retryCount+=1;this.retryOpts.retry(Q,{state:{counter:this.retryCount},opts:{retryOptions:this.retryOpts,...this.opts}},B.bind(this))}}n3Q.exports=ir});var a3Q=R((UnY,r3Q)=>{var yS0=aL(),hS0=NS();class s3Q extends yS0{#A=null;#Q=null;constructor(A,Q={}){super(Q);this.#A=A,this.#Q=Q}dispatch(A,Q){let B=new hS0({...A,retryOptions:this.#Q},{dispatch:this.#A.dispatch.bind(this.#A),handler:Q});return this.#A.dispatch(A,B)}close(){return this.#A.close()}destroy(){return this.#A.destroy()}}r3Q.exports=s3Q});var ARQ=R((EnY,e3Q)=>{var{connect:gS0}=u("node:net"),{kClose:xS0,kDestroy:fS0}=Q0(),{InvalidArgumentError:o3Q}=QB(),bS0=lQ(),mS0=f$(),uS0=P$();class t3Q extends uS0{#A=null;constructor(A,Q){if(typeof A==="string")A=new URL(A);if(A.protocol!=="http:")throw new o3Q("h2c-client: Only h2c protocol is supported");let{connect:B,maxConcurrentStreams:Y,pipelining:J,...C}=Q??{},X=100,G=100;if(Y!=null&&Number.isInteger(Y)&&Y>0)X=Y;if(J!=null&&Number.isInteger(J)&&J>0)G=J;if(G>X)throw new o3Q("h2c-client: pipelining cannot be greater than maxConcurrentStreams");super();this.#A=new mS0(A,{...C,connect:this.#Q(B),maxConcurrentStreams:X,pipelining:G,allowH2:!0})}#Q(A){return(Q,B)=>{let Y=A?.connectOpts??1e4,{hostname:J,port:C,pathname:X}=Q,G=gS0({...Q,host:J,port:C,pathname:X});if(Q.keepAlive==null||Q.keepAlive){let W=Q.keepAliveInitialDelay==null?60000:Q.keepAliveInitialDelay;G.setKeepAlive(!0,W)}G.alpnProtocol="h2";let F=bS0.setupConnectTimeout(new WeakRef(G),{timeout:Y,hostname:J,port:C});return G.setNoDelay(!0).once("connect",function(){if(queueMicrotask(F),B){let W=B;B=null,W(null,this)}}).on("error",function(W){if(queueMicrotask(F),B){let Z=B;B=null,Z(W)}}),G}}dispatch(A,Q){return this.#A.dispatch(A,Q)}[xS0](){return this.#A.close()}[fS0](){return this.#A.destroy()}}e3Q.exports=t3Q});var ZRQ=R((KnY,WRQ)=>{var JRQ=u("node:assert"),{Readable:dS0}=u("node:stream"),{RequestAbortedError:CRQ,NotSupportedError:cS0,InvalidArgumentError:lS0,AbortError:LS}=QB(),XRQ=lQ(),{ReadableStreamFrom:pS0}=lQ(),x8=Symbol("kConsume"),qS=Symbol("kReading"),c$=Symbol("kBody"),QRQ=Symbol("kAbort"),GRQ=Symbol("kContentType"),nr=Symbol("kContentLength"),sr=Symbol("kUsed"),MS=Symbol("kBytesRead"),iS0=()=>{};class FRQ extends dS0{constructor({resume:A,abort:Q,contentType:B="",contentLength:Y,highWaterMark:J=65536}){super({autoDestroy:!0,read:A,highWaterMark:J});this._readableState.dataEmitted=!1,this[QRQ]=Q,this[x8]=null,this[MS]=0,this[c$]=null,this[sr]=!1,this[GRQ]=B,this[nr]=Number.isFinite(Y)?Y:null,this[qS]=!1}_destroy(A,Q){if(!A&&!this._readableState.endEmitted)A=new CRQ;if(A)this[QRQ]();if(!this[sr])setImmediate(Q,A);else Q(A)}on(A,Q){if(A==="data"||A==="readable")this[qS]=!0,this[sr]=!0;return super.on(A,Q)}addListener(A,Q){return this.on(A,Q)}off(A,Q){let B=super.off(A,Q);if(A==="data"||A==="readable")this[qS]=this.listenerCount("data")>0||this.listenerCount("readable")>0;return B}removeListener(A,Q){return this.off(A,Q)}push(A){if(A){if(this[MS]+=A.length,this[x8])return ar(this[x8],A),this[qS]?super.push(A):!0}return super.push(A)}text(){return zq(this,"text")}json(){return zq(this,"json")}blob(){return zq(this,"blob")}bytes(){return zq(this,"bytes")}arrayBuffer(){return zq(this,"arrayBuffer")}async formData(){throw new cS0}get bodyUsed(){return XRQ.isDisturbed(this)}get body(){if(!this[c$]){if(this[c$]=pS0(this),this[x8])this[c$].getReader(),JRQ(this[c$].locked)}return this[c$]}dump(A){let Q=A?.signal;if(Q!=null&&(typeof Q!=="object"||!("aborted"in Q)))return Promise.reject(new lS0("signal must be an AbortSignal"));let B=A?.limit&&Number.isFinite(A.limit)?A.limit:131072;if(Q?.aborted)return Promise.reject(Q.reason??new LS);if(this._readableState.closeEmitted)return Promise.resolve(null);return new Promise((Y,J)=>{if(this[nr]&&this[nr]>B||this[MS]>B)this.destroy(new LS);if(Q){let C=()=>{this.destroy(Q.reason??new LS)};Q.addEventListener("abort",C),this.on("close",function(){if(Q.removeEventListener("abort",C),Q.aborted)J(Q.reason??new LS);else Y(null)})}else this.on("close",Y);this.on("error",iS0).on("data",()=>{if(this[MS]>B)this.destroy()}).resume()})}setEncoding(A){if(Buffer.isEncoding(A))this._readableState.encoding=A;return this}}function nS0(A){return A[c$]?.locked===!0||A[x8]!==null}function sS0(A){return XRQ.isDisturbed(A)||nS0(A)}function zq(A,Q){return JRQ(!A[x8]),new Promise((B,Y)=>{if(sS0(A)){let J=A._readableState;if(J.destroyed&&J.closeEmitted===!1)A.on("error",Y).on("close",()=>{Y(TypeError("unusable"))});else Y(J.errored??TypeError("unusable"))}else queueMicrotask(()=>{A[x8]={type:Q,stream:A,resolve:B,reject:Y,length:0,body:[]},A.on("error",function(J){or(this[x8],J)}).on("close",function(){if(this[x8].body!==null)or(this[x8],new CRQ)}),rS0(A[x8])})})}function rS0(A){if(A.body===null)return;let{_readableState:Q}=A.stream;if(Q.bufferIndex){let B=Q.bufferIndex,Y=Q.buffer.length;for(let J=B;J2&&Y[0]===239&&Y[1]===187&&Y[2]===191?3:0;if(!B||B==="utf8"||B==="utf-8")return Y.utf8Slice(C,J);else return Y.subarray(C,J).toString(B)}function BRQ(A,Q){if(A.length===0||Q===0)return new Uint8Array(0);if(A.length===1)return new Uint8Array(A[0]);let B=new Uint8Array(Buffer.allocUnsafeSlow(Q).buffer),Y=0;for(let J=0;J{var aS0=u("node:assert"),{AsyncResource:oS0}=u("node:async_hooks"),{Readable:tS0}=ZRQ(),{InvalidArgumentError:eK,RequestAbortedError:$RQ}=QB(),BC=lQ();function Rq(){}class tr extends oS0{constructor(A,Q){if(!A||typeof A!=="object")throw new eK("invalid opts");let{signal:B,method:Y,opaque:J,body:C,onInfo:X,responseHeaders:G,highWaterMark:F}=A;try{if(typeof Q!=="function")throw new eK("invalid callback");if(F&&(typeof F!=="number"||F<0))throw new eK("invalid highWaterMark");if(B&&typeof B.on!=="function"&&typeof B.addEventListener!=="function")throw new eK("signal must be an EventEmitter or EventTarget");if(Y==="CONNECT")throw new eK("invalid method");if(X&&typeof X!=="function")throw new eK("invalid onInfo callback");super("UNDICI_REQUEST")}catch(W){if(BC.isStream(C))BC.destroy(C.on("error",Rq),W);throw W}if(this.method=Y,this.responseHeaders=G||null,this.opaque=J||null,this.callback=Q,this.res=null,this.abort=null,this.body=C,this.trailers={},this.context=null,this.onInfo=X||null,this.highWaterMark=F,this.reason=null,this.removeAbortListener=null,B?.aborted)this.reason=B.reason??new $RQ;else if(B)this.removeAbortListener=BC.addAbortListener(B,()=>{if(this.reason=B.reason??new $RQ,this.res)BC.destroy(this.res.on("error",Rq),this.reason);else if(this.abort)this.abort(this.reason)})}onConnect(A,Q){if(this.reason){A(this.reason);return}aS0(this.callback),this.abort=A,this.context=Q}onHeaders(A,Q,B,Y){let{callback:J,opaque:C,abort:X,context:G,responseHeaders:F,highWaterMark:W}=this,Z=F==="raw"?BC.parseRawHeaders(Q):BC.parseHeaders(Q);if(A<200){if(this.onInfo)this.onInfo({statusCode:A,headers:Z});return}let U=F==="raw"?BC.parseHeaders(Q):Z,$=U["content-type"],E=U["content-length"],K=new tS0({resume:B,abort:X,contentType:$,contentLength:this.method!=="HEAD"&&E?Number(E):null,highWaterMark:W});if(this.removeAbortListener)K.on("close",this.removeAbortListener),this.removeAbortListener=null;if(this.callback=null,this.res=K,J!==null)try{this.runInAsyncScope(J,null,null,{statusCode:A,headers:Z,trailers:this.trailers,opaque:C,body:K,context:G})}catch(I){this.res=null,BC.destroy(K.on("error",Rq),I),queueMicrotask(()=>{throw I})}}onData(A){return this.res.push(A)}onComplete(A){BC.parseHeaders(A,this.trailers),this.res.push(null)}onError(A){let{res:Q,callback:B,body:Y,opaque:J}=this;if(B)this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(B,null,A,{opaque:J})});if(Q)this.res=null,queueMicrotask(()=>{BC.destroy(Q.on("error",Rq),A)});if(Y){if(this.body=null,BC.isStream(Y))Y.on("error",Rq),BC.destroy(Y,A)}if(this.removeAbortListener)this.removeAbortListener(),this.removeAbortListener=null}}function URQ(A,Q){if(Q===void 0)return new Promise((B,Y)=>{URQ.call(this,A,(J,C)=>{return J?Y(J):B(C)})});try{let B=new tr(A,Q);this.dispatch(A,B)}catch(B){if(typeof Q!=="function")throw B;let Y=A?.opaque;queueMicrotask(()=>Q(B,{opaque:Y}))}}er.exports=URQ;er.exports.RequestHandler=tr});var wq=R((InY,IRQ)=>{var{addAbortListener:eS0}=lQ(),{RequestAbortedError:Ak0}=QB(),AV=Symbol("kListener"),q6=Symbol("kSignal");function KRQ(A){if(A.abort)A.abort(A[q6]?.reason);else A.reason=A[q6]?.reason??new Ak0;VRQ(A)}function Qk0(A,Q){if(A.reason=null,A[q6]=null,A[AV]=null,!Q)return;if(Q.aborted){KRQ(A);return}A[q6]=Q,A[AV]=()=>{KRQ(A)},eS0(A[q6],A[AV])}function VRQ(A){if(!A[q6])return;if("removeEventListener"in A[q6])A[q6].removeEventListener("abort",A[AV]);else A[q6].removeListener("abort",A[AV]);A[q6]=null,A[AV]=null}IRQ.exports={addSignal:Qk0,removeSignal:VRQ}});var qRQ=R((HnY,LRQ)=>{var Bk0=u("node:assert"),{finished:Yk0}=u("node:stream"),{AsyncResource:Jk0}=u("node:async_hooks"),{InvalidArgumentError:QV,InvalidReturnValueError:Ck0}=QB(),TG=lQ(),{addSignal:Xk0,removeSignal:HRQ}=wq();function Gk0(){}class DRQ extends Jk0{constructor(A,Q,B){if(!A||typeof A!=="object")throw new QV("invalid opts");let{signal:Y,method:J,opaque:C,body:X,onInfo:G,responseHeaders:F}=A;try{if(typeof B!=="function")throw new QV("invalid callback");if(typeof Q!=="function")throw new QV("invalid factory");if(Y&&typeof Y.on!=="function"&&typeof Y.addEventListener!=="function")throw new QV("signal must be an EventEmitter or EventTarget");if(J==="CONNECT")throw new QV("invalid method");if(G&&typeof G!=="function")throw new QV("invalid onInfo callback");super("UNDICI_STREAM")}catch(W){if(TG.isStream(X))TG.destroy(X.on("error",Gk0),W);throw W}if(this.responseHeaders=F||null,this.opaque=C||null,this.factory=Q,this.callback=B,this.res=null,this.abort=null,this.context=null,this.trailers=null,this.body=X,this.onInfo=G||null,TG.isStream(X))X.on("error",(W)=>{this.onError(W)});Xk0(this,Y)}onConnect(A,Q){if(this.reason){A(this.reason);return}Bk0(this.callback),this.abort=A,this.context=Q}onHeaders(A,Q,B,Y){let{factory:J,opaque:C,context:X,responseHeaders:G}=this,F=G==="raw"?TG.parseRawHeaders(Q):TG.parseHeaders(Q);if(A<200){if(this.onInfo)this.onInfo({statusCode:A,headers:F});return}if(this.factory=null,J===null)return;let W=this.runInAsyncScope(J,null,{statusCode:A,headers:F,opaque:C,context:X});if(!W||typeof W.write!=="function"||typeof W.end!=="function"||typeof W.on!=="function")throw new Ck0("expected Writable");return Yk0(W,{readable:!1},(U)=>{let{callback:$,res:E,opaque:K,trailers:I,abort:V}=this;if(this.res=null,U||!E?.readable)TG.destroy(E,U);if(this.callback=null,this.runInAsyncScope($,null,U||null,{opaque:K,trailers:I}),U)V()}),W.on("drain",B),this.res=W,(W.writableNeedDrain!==void 0?W.writableNeedDrain:W._writableState?.needDrain)!==!0}onData(A){let{res:Q}=this;return Q?Q.write(A):!0}onComplete(A){let{res:Q}=this;if(HRQ(this),!Q)return;this.trailers=TG.parseHeaders(A),Q.end()}onError(A){let{res:Q,callback:B,opaque:Y,body:J}=this;if(HRQ(this),this.factory=null,Q)this.res=null,TG.destroy(Q,A);else if(B)this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(B,null,A,{opaque:Y})});if(J)this.body=null,TG.destroy(J,A)}}function NRQ(A,Q,B){if(B===void 0)return new Promise((Y,J)=>{NRQ.call(this,A,Q,(C,X)=>{return C?J(C):Y(X)})});try{let Y=new DRQ(A,Q,B);this.dispatch(A,Y)}catch(Y){if(typeof B!=="function")throw Y;let J=A?.opaque;queueMicrotask(()=>B(Y,{opaque:J}))}}LRQ.exports=NRQ});var PRQ=R((DnY,ORQ)=>{var{Readable:zRQ,Duplex:Fk0,PassThrough:Wk0}=u("node:stream"),Zk0=u("node:assert"),{AsyncResource:$k0}=u("node:async_hooks"),{InvalidArgumentError:jq,InvalidReturnValueError:Uk0,RequestAbortedError:Aa}=QB(),M6=lQ(),{addSignal:Ek0,removeSignal:Kk0}=wq();function MRQ(){}var BV=Symbol("resume");class RRQ extends zRQ{constructor(){super({autoDestroy:!0});this[BV]=null}_read(){let{[BV]:A}=this;if(A)this[BV]=null,A()}_destroy(A,Q){this._read(),Q(A)}}class wRQ extends zRQ{constructor(A){super({autoDestroy:!0});this[BV]=A}_read(){this[BV]()}_destroy(A,Q){if(!A&&!this._readableState.endEmitted)A=new Aa;Q(A)}}class jRQ extends $k0{constructor(A,Q){if(!A||typeof A!=="object")throw new jq("invalid opts");if(typeof Q!=="function")throw new jq("invalid handler");let{signal:B,method:Y,opaque:J,onInfo:C,responseHeaders:X}=A;if(B&&typeof B.on!=="function"&&typeof B.addEventListener!=="function")throw new jq("signal must be an EventEmitter or EventTarget");if(Y==="CONNECT")throw new jq("invalid method");if(C&&typeof C!=="function")throw new jq("invalid onInfo callback");super("UNDICI_PIPELINE");this.opaque=J||null,this.responseHeaders=X||null,this.handler=Q,this.abort=null,this.context=null,this.onInfo=C||null,this.req=new RRQ().on("error",MRQ),this.ret=new Fk0({readableObjectMode:A.objectMode,autoDestroy:!0,read:()=>{let{body:G}=this;if(G?.resume)G.resume()},write:(G,F,W)=>{let{req:Z}=this;if(Z.push(G,F)||Z._readableState.destroyed)W();else Z[BV]=W},destroy:(G,F)=>{let{body:W,req:Z,res:U,ret:$,abort:E}=this;if(!G&&!$._readableState.endEmitted)G=new Aa;if(E&&G)E();M6.destroy(W,G),M6.destroy(Z,G),M6.destroy(U,G),Kk0(this),F(G)}}).on("prefinish",()=>{let{req:G}=this;G.push(null)}),this.res=null,Ek0(this,B)}onConnect(A,Q){let{res:B}=this;if(this.reason){A(this.reason);return}Zk0(!B,"pipeline cannot be retried"),this.abort=A,this.context=Q}onHeaders(A,Q,B){let{opaque:Y,handler:J,context:C}=this;if(A<200){if(this.onInfo){let G=this.responseHeaders==="raw"?M6.parseRawHeaders(Q):M6.parseHeaders(Q);this.onInfo({statusCode:A,headers:G})}return}this.res=new wRQ(B);let X;try{this.handler=null;let G=this.responseHeaders==="raw"?M6.parseRawHeaders(Q):M6.parseHeaders(Q);X=this.runInAsyncScope(J,null,{statusCode:A,headers:G,opaque:Y,body:this.res,context:C})}catch(G){throw this.res.on("error",MRQ),G}if(!X||typeof X.on!=="function")throw new Uk0("expected Readable");X.on("data",(G)=>{let{ret:F,body:W}=this;if(!F.push(G)&&W.pause)W.pause()}).on("error",(G)=>{let{ret:F}=this;M6.destroy(F,G)}).on("end",()=>{let{ret:G}=this;G.push(null)}).on("close",()=>{let{ret:G}=this;if(!G._readableState.ended)M6.destroy(G,new Aa)}),this.body=X}onData(A){let{res:Q}=this;return Q.push(A)}onComplete(A){let{res:Q}=this;Q.push(null)}onError(A){let{ret:Q}=this;this.handler=null,M6.destroy(Q,A)}}function Vk0(A,Q){try{let B=new jRQ(A,Q);return this.dispatch({...A,body:B.req},B),B.ret}catch(B){return new Wk0().destroy(B)}}ORQ.exports=Vk0});var hRQ=R((NnY,yRQ)=>{var{InvalidArgumentError:Qa,SocketError:Ik0}=QB(),{AsyncResource:Hk0}=u("node:async_hooks"),TRQ=u("node:assert"),SRQ=lQ(),{addSignal:Dk0,removeSignal:kRQ}=wq();class _RQ extends Hk0{constructor(A,Q){if(!A||typeof A!=="object")throw new Qa("invalid opts");if(typeof Q!=="function")throw new Qa("invalid callback");let{signal:B,opaque:Y,responseHeaders:J}=A;if(B&&typeof B.on!=="function"&&typeof B.addEventListener!=="function")throw new Qa("signal must be an EventEmitter or EventTarget");super("UNDICI_UPGRADE");this.responseHeaders=J||null,this.opaque=Y||null,this.callback=Q,this.abort=null,this.context=null,Dk0(this,B)}onConnect(A,Q){if(this.reason){A(this.reason);return}TRQ(this.callback),this.abort=A,this.context=null}onHeaders(){throw new Ik0("bad upgrade",null)}onUpgrade(A,Q,B){TRQ(A===101);let{callback:Y,opaque:J,context:C}=this;kRQ(this),this.callback=null;let X=this.responseHeaders==="raw"?SRQ.parseRawHeaders(Q):SRQ.parseHeaders(Q);this.runInAsyncScope(Y,null,null,{headers:X,socket:B,opaque:J,context:C})}onError(A){let{callback:Q,opaque:B}=this;if(kRQ(this),Q)this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(Q,null,A,{opaque:B})})}}function vRQ(A,Q){if(Q===void 0)return new Promise((B,Y)=>{vRQ.call(this,A,(J,C)=>{return J?Y(J):B(C)})});try{let B=new _RQ(A,Q),Y={...A,method:A.method||"GET",upgrade:A.protocol||"Websocket"};this.dispatch(Y,B)}catch(B){if(typeof Q!=="function")throw B;let Y=A?.opaque;queueMicrotask(()=>Q(B,{opaque:Y}))}}yRQ.exports=vRQ});var uRQ=R((LnY,mRQ)=>{var Nk0=u("node:assert"),{AsyncResource:Lk0}=u("node:async_hooks"),{InvalidArgumentError:Ba,SocketError:qk0}=QB(),gRQ=lQ(),{addSignal:Mk0,removeSignal:xRQ}=wq();class fRQ extends Lk0{constructor(A,Q){if(!A||typeof A!=="object")throw new Ba("invalid opts");if(typeof Q!=="function")throw new Ba("invalid callback");let{signal:B,opaque:Y,responseHeaders:J}=A;if(B&&typeof B.on!=="function"&&typeof B.addEventListener!=="function")throw new Ba("signal must be an EventEmitter or EventTarget");super("UNDICI_CONNECT");this.opaque=Y||null,this.responseHeaders=J||null,this.callback=Q,this.abort=null,Mk0(this,B)}onConnect(A,Q){if(this.reason){A(this.reason);return}Nk0(this.callback),this.abort=A,this.context=Q}onHeaders(){throw new qk0("bad connect",null)}onUpgrade(A,Q,B){let{callback:Y,opaque:J,context:C}=this;xRQ(this),this.callback=null;let X=Q;if(X!=null)X=this.responseHeaders==="raw"?gRQ.parseRawHeaders(Q):gRQ.parseHeaders(Q);this.runInAsyncScope(Y,null,null,{statusCode:A,headers:X,socket:B,opaque:J,context:C})}onError(A){let{callback:Q,opaque:B}=this;if(xRQ(this),Q)this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(Q,null,A,{opaque:B})})}}function bRQ(A,Q){if(Q===void 0)return new Promise((B,Y)=>{bRQ.call(this,A,(J,C)=>{return J?Y(J):B(C)})});try{let B=new fRQ(A,Q),Y={...A,method:"CONNECT"};this.dispatch(Y,B)}catch(B){if(typeof Q!=="function")throw B;let Y=A?.opaque;queueMicrotask(()=>Q(B,{opaque:Y}))}}mRQ.exports=bRQ});var dRQ=R((zk0,YV)=>{zk0.request=ERQ();zk0.stream=qRQ();zk0.pipeline=PRQ();zk0.upgrade=hRQ();zk0.connect=uRQ()});var Ya=R((qnY,pRQ)=>{var{UndiciError:Tk0}=QB(),cRQ=Symbol.for("undici.error.UND_MOCK_ERR_MOCK_NOT_MATCHED");class lRQ extends Tk0{constructor(A){super(A);this.name="MockNotMatchedError",this.message=A||"The request does not match any registered mock dispatches",this.code="UND_MOCK_ERR_MOCK_NOT_MATCHED"}static[Symbol.hasInstance](A){return A&&A[cRQ]===!0}get[cRQ](){return!0}}pRQ.exports={MockNotMatchedError:lRQ}});var l$=R((MnY,iRQ)=>{iRQ.exports={kAgent:Symbol("agent"),kOptions:Symbol("options"),kFactory:Symbol("factory"),kDispatches:Symbol("dispatches"),kDispatchKey:Symbol("dispatch key"),kDefaultHeaders:Symbol("default headers"),kDefaultTrailers:Symbol("default trailers"),kContentLength:Symbol("content length"),kMockAgent:Symbol("mock agent"),kMockAgentSet:Symbol("mock agent set"),kMockAgentGet:Symbol("mock agent get"),kMockDispatch:Symbol("mock dispatch"),kClose:Symbol("close"),kOriginalClose:Symbol("original agent close"),kOriginalDispatch:Symbol("original dispatch"),kOrigin:Symbol("origin"),kIsMockActive:Symbol("is mock active"),kNetConnect:Symbol("net connect"),kGetNetConnect:Symbol("get net connect"),kConnected:Symbol("connected"),kIgnoreTrailingSlash:Symbol("ignore trailing slash"),kMockAgentMockCallHistoryInstance:Symbol("mock agent mock call history name"),kMockAgentRegisterCallHistory:Symbol("mock agent register mock call history"),kMockAgentAddCallHistoryLog:Symbol("mock agent add call history log"),kMockAgentIsCallHistoryEnabled:Symbol("mock agent is call history enabled"),kMockAgentAcceptsNonStandardSearchParameters:Symbol("mock agent accepts non standard search parameters"),kMockCallHistoryAddLog:Symbol("mock call history add log")}});var Oq=R((znY,YwQ)=>{var{MockNotMatchedError:JV}=Ya(),{kDispatches:zS,kMockAgent:Sk0,kOriginalDispatch:kk0,kOrigin:_k0,kGetNetConnect:vk0}=l$(),{serializePathWithQuery:yk0}=lQ(),{STATUS_CODES:hk0}=u("node:http"),{types:{isPromise:gk0}}=u("node:util"),{InvalidArgumentError:Ja}=QB();function z6(A,Q){if(typeof A==="string")return A===Q;if(A instanceof RegExp)return A.test(Q);if(typeof A==="function")return A(Q)===!0;return!1}function sRQ(A){return Object.fromEntries(Object.entries(A).map(([Q,B])=>{return[Q.toLocaleLowerCase(),B]}))}function rRQ(A,Q){if(Array.isArray(A)){for(let B=0;B"u")return!0;if(typeof Q!=="object"||typeof A.headers!=="object")return!1;for(let[B,Y]of Object.entries(A.headers)){let J=rRQ(Q,B);if(!z6(Y,J))return!1}return!0}function xk0(A){if(typeof A!=="string")return A;let Q=new URLSearchParams(A),B=new URLSearchParams;for(let[Y,J]of Q.entries()){if(Y=Y.replace("[]",""),/^(['"]).*\1$/.test(J)){B.append(Y,J);continue}if(J.includes(",")){let X=J.split(",");for(let G of X)B.append(Y,G);continue}B.append(Y,J)}return B}function Ca(A){if(typeof A!=="string")return A;let Q=A.split("?",3);if(Q.length!==2)return A;let B=new URLSearchParams(Q.pop());return B.sort(),[...Q,B.toString()].join("?")}function fk0(A,{path:Q,method:B,body:Y,headers:J}){let C=z6(A.path,Q),X=z6(A.method,B),G=typeof A.body<"u"?z6(A.body,Y):!0,F=aRQ(A,J);return C&&X&&G&&F}function oRQ(A){if(Buffer.isBuffer(A))return A;else if(A instanceof Uint8Array)return A;else if(A instanceof ArrayBuffer)return A;else if(typeof A==="object")return JSON.stringify(A);else if(A)return A.toString();else return""}function tRQ(A,Q){let B=Q.query?yk0(Q.path,Q.query):Q.path,Y=typeof B==="string"?Ca(B):B,J=nRQ(Y),C=A.filter(({consumed:X})=>!X).filter(({path:X,ignoreTrailingSlash:G})=>{return G?z6(nRQ(Ca(X)),J):z6(Ca(X),Y)});if(C.length===0)throw new JV(`Mock dispatch not matched for path '${Y}'`);if(C=C.filter(({method:X})=>z6(X,Q.method)),C.length===0)throw new JV(`Mock dispatch not matched for method '${Q.method}' on path '${Y}'`);if(C=C.filter(({body:X})=>typeof X<"u"?z6(X,Q.body):!0),C.length===0)throw new JV(`Mock dispatch not matched for body '${Q.body}' on path '${Y}'`);if(C=C.filter((X)=>aRQ(X,Q.headers)),C.length===0){let X=typeof Q.headers==="object"?JSON.stringify(Q.headers):Q.headers;throw new JV(`Mock dispatch not matched for headers '${X}' on path '${Y}'`)}return C[0]}function bk0(A,Q,B,Y){let J={timesInvoked:0,times:1,persist:!1,consumed:!1,...Y},C=typeof B==="function"?{callback:B}:{...B},X={...J,...Q,pending:!0,data:{error:null,...C}};return A.push(X),X}function Xa(A,Q){let B=A.findIndex((Y)=>{if(!Y.consumed)return!1;return fk0(Y,Q)});if(B!==-1)A.splice(B,1)}function nRQ(A){while(A.endsWith("/"))A=A.slice(0,-1);if(A.length===0)A="/";return A}function eRQ(A){let{path:Q,method:B,body:Y,headers:J,query:C}=A;return{path:Q,method:B,body:Y,headers:J,query:C}}function Ga(A){let Q=Object.keys(A),B=[];for(let Y=0;Y=$,Y.pending=U<$,F!==null)return Xa(this[zS],B),Q.onError(F),!0;if(typeof W==="number"&&W>0)setTimeout(()=>{E(this[zS])},W);else E(this[zS]);function E(I,V=C){let H=Array.isArray(A.headers)?Fa(A.headers):A.headers,D=typeof V==="function"?V({...A,headers:H}):V;if(gk0(D)){D.then((N)=>E(I,N));return}let L=oRQ(D),z=Ga(X),M=Ga(G);Q.onConnect?.((N)=>Q.onError(N),null),Q.onHeaders?.(J,z,K,AwQ(J)),Q.onData?.(Buffer.from(L)),Q.onComplete?.(M),Xa(I,B)}function K(){}return!0}function uk0(){let A=this[Sk0],Q=this[_k0],B=this[kk0];return function(J,C){if(A.isMockActive)try{QwQ.call(this,J,C)}catch(X){if(X.code==="UND_MOCK_ERR_MOCK_NOT_MATCHED"){let G=A[vk0]();if(G===!1)throw new JV(`${X.message}: subsequent request to origin ${Q} was not allowed (net.connect disabled)`);if(BwQ(G,Q))B.call(this,J,C);else throw new JV(`${X.message}: subsequent request to origin ${Q} was not allowed (net.connect is not enabled for this origin)`)}else throw X}else B.call(this,J,C)}}function BwQ(A,Q){let B=new URL(Q);if(A===!0)return!0;else if(Array.isArray(A)&&A.some((Y)=>z6(Y,B.host)))return!0;return!1}function dk0(A){let{agent:Q,...B}=A;if("enableCallHistory"in B&&typeof B.enableCallHistory!=="boolean")throw new Ja("options.enableCallHistory must to be a boolean");if("acceptNonStandardSearchParameters"in B&&typeof B.acceptNonStandardSearchParameters!=="boolean")throw new Ja("options.acceptNonStandardSearchParameters must to be a boolean");if("ignoreTrailingSlash"in B&&typeof B.ignoreTrailingSlash!=="boolean")throw new Ja("options.ignoreTrailingSlash must to be a boolean");return B}YwQ.exports={getResponseData:oRQ,getMockDispatch:tRQ,addMockDispatch:bk0,deleteMockDispatch:Xa,buildKey:eRQ,generateKeyValues:Ga,matchValue:z6,getResponse:mk0,getStatusText:AwQ,mockDispatch:QwQ,buildMockDispatch:uk0,checkNetConnect:BwQ,buildAndValidateMockOptions:dk0,getHeaderByName:rRQ,buildHeadersFromArray:Fa,normalizeSearchParams:xk0}});var Ka=R((ik0,Ea)=>{var{getResponseData:ck0,buildKey:lk0,addMockDispatch:Wa}=Oq(),{kDispatches:RS,kDispatchKey:wS,kDefaultHeaders:Za,kDefaultTrailers:$a,kContentLength:Ua,kMockDispatch:jS,kIgnoreTrailingSlash:OS}=l$(),{InvalidArgumentError:R6}=QB(),{serializePathWithQuery:pk0}=lQ();class Pq{constructor(A){this[jS]=A}delay(A){if(typeof A!=="number"||!Number.isInteger(A)||A<=0)throw new R6("waitInMs must be a valid integer > 0");return this[jS].delay=A,this}persist(){return this[jS].persist=!0,this}times(A){if(typeof A!=="number"||!Number.isInteger(A)||A<=0)throw new R6("repeatTimes must be a valid integer > 0");return this[jS].times=A,this}}class JwQ{constructor(A,Q){if(typeof A!=="object")throw new R6("opts must be an object");if(typeof A.path>"u")throw new R6("opts.path must be defined");if(typeof A.method>"u")A.method="GET";if(typeof A.path==="string")if(A.query)A.path=pk0(A.path,A.query);else{let B=new URL(A.path,"data://");A.path=B.pathname+B.search}if(typeof A.method==="string")A.method=A.method.toUpperCase();this[wS]=lk0(A),this[RS]=Q,this[OS]=A.ignoreTrailingSlash??!1,this[Za]={},this[$a]={},this[Ua]=!1}createMockScopeDispatchData({statusCode:A,data:Q,responseOptions:B}){let Y=ck0(Q),J=this[Ua]?{"content-length":Y.length}:{},C={...this[Za],...J,...B.headers},X={...this[$a],...B.trailers};return{statusCode:A,data:Q,headers:C,trailers:X}}validateReplyParameters(A){if(typeof A.statusCode>"u")throw new R6("statusCode must be defined");if(typeof A.responseOptions!=="object"||A.responseOptions===null)throw new R6("responseOptions must be an object")}reply(A){if(typeof A==="function"){let J=(X)=>{let G=A(X);if(typeof G!=="object"||G===null)throw new R6("reply options callback must return an object");let F={data:"",responseOptions:{},...G};return this.validateReplyParameters(F),{...this.createMockScopeDispatchData(F)}},C=Wa(this[RS],this[wS],J,{ignoreTrailingSlash:this[OS]});return new Pq(C)}let Q={statusCode:A,data:arguments[1]===void 0?"":arguments[1],responseOptions:arguments[2]===void 0?{}:arguments[2]};this.validateReplyParameters(Q);let B=this.createMockScopeDispatchData(Q),Y=Wa(this[RS],this[wS],B,{ignoreTrailingSlash:this[OS]});return new Pq(Y)}replyWithError(A){if(typeof A>"u")throw new R6("error must be defined");let Q=Wa(this[RS],this[wS],{error:A},{ignoreTrailingSlash:this[OS]});return new Pq(Q)}defaultReplyHeaders(A){if(typeof A>"u")throw new R6("headers must be defined");return this[Za]=A,this}defaultReplyTrailers(A){if(typeof A>"u")throw new R6("trailers must be defined");return this[$a]=A,this}replyContentLength(){return this[Ua]=!0,this}}ik0.MockInterceptor=JwQ;ik0.MockScope=Pq});var Ha=R((RnY,UwQ)=>{var{promisify:rk0}=u("node:util"),ak0=f$(),{buildMockDispatch:ok0}=Oq(),{kDispatches:Va,kMockAgent:CwQ,kClose:XwQ,kOriginalClose:GwQ,kOrigin:FwQ,kOriginalDispatch:tk0,kConnected:Ia,kIgnoreTrailingSlash:WwQ}=l$(),{MockInterceptor:ek0}=Ka(),ZwQ=Q0(),{InvalidArgumentError:A_0}=QB();class $wQ extends ak0{constructor(A,Q){if(!Q||!Q.agent||typeof Q.agent.dispatch!=="function")throw new A_0("Argument opts.agent must implement Agent");super(A,Q);this[CwQ]=Q.agent,this[FwQ]=A,this[WwQ]=Q.ignoreTrailingSlash??!1,this[Va]=[],this[Ia]=1,this[tk0]=this.dispatch,this[GwQ]=this.close.bind(this),this.dispatch=ok0.call(this),this.close=this[XwQ]}get[ZwQ.kConnected](){return this[Ia]}intercept(A){return new ek0(A&&{ignoreTrailingSlash:this[WwQ],...A},this[Va])}cleanMocks(){this[Va]=[]}async[XwQ](){await rk0(this[GwQ])(),this[Ia]=0,this[CwQ][ZwQ.kClients].delete(this[FwQ])}}UwQ.exports=$wQ});var La=R((J_0,Na)=>{var{kMockCallHistoryAddLog:Q_0}=l$(),{InvalidArgumentError:YW}=QB();function QW(A,Q,B,Y){switch(Q.operator){case"OR":return Y.push(...B(A)),Y;case"AND":return B.call({logs:Y},A);default:throw new YW("options.operator must to be a case insensitive string equal to 'OR' or 'AND'")}}function B_0(A={}){let Q={};if("operator"in A){if(typeof A.operator!=="string"||A.operator.toUpperCase()!=="OR"&&A.operator.toUpperCase()!=="AND")throw new YW("options.operator must to be a case insensitive string equal to 'OR' or 'AND'");return{...Q,operator:A.operator.toUpperCase()}}return Q}function BW(A){return(Q)=>{if(typeof Q==="string"||Q==null)return this.logs.filter((B)=>{return B[A]===Q});if(Q instanceof RegExp)return this.logs.filter((B)=>{return Q.test(B[A])});throw new YW(`${A} parameter should be one of string, regexp, undefined or null`)}}function Y_0(A){try{let Q=new URL(A.path,A.origin);if(Q.search.length!==0)return Q;return Q.search=new URLSearchParams(A.query).toString(),Q}catch(Q){throw new YW("An error occurred when computing MockCallHistoryLog.url",{cause:Q})}}class Da{constructor(A={}){this.body=A.body,this.headers=A.headers,this.method=A.method;let Q=Y_0(A);this.fullUrl=Q.toString(),this.origin=Q.origin,this.path=Q.pathname,this.searchParams=Object.fromEntries(Q.searchParams),this.protocol=Q.protocol,this.host=Q.host,this.port=Q.port,this.hash=Q.hash}toMap(){return new Map([["protocol",this.protocol],["host",this.host],["port",this.port],["origin",this.origin],["path",this.path],["hash",this.hash],["searchParams",this.searchParams],["fullUrl",this.fullUrl],["method",this.method],["body",this.body],["headers",this.headers]])}toString(){let A={betweenKeyValueSeparator:"->",betweenPairSeparator:"|"},Q="";return this.toMap().forEach((B,Y)=>{if(typeof B==="string"||B===void 0||B===null)Q=`${Q}${Y}${A.betweenKeyValueSeparator}${B}${A.betweenPairSeparator}`;if(typeof B==="object"&&B!==null||Array.isArray(B))Q=`${Q}${Y}${A.betweenKeyValueSeparator}${JSON.stringify(B)}${A.betweenPairSeparator}`}),Q.slice(0,-1)}}class EwQ{logs=[];calls(){return this.logs}firstCall(){return this.logs.at(0)}lastCall(){return this.logs.at(-1)}nthCall(A){if(typeof A!=="number")throw new YW("nthCall must be called with a number");if(!Number.isInteger(A))throw new YW("nthCall must be called with an integer");if(Math.sign(A)!==1)throw new YW("nthCall must be called with a positive value. use firstCall or lastCall instead");return this.logs.at(A-1)}filterCalls(A,Q){if(this.logs.length===0)return this.logs;if(typeof A==="function")return this.logs.filter(A);if(A instanceof RegExp)return this.logs.filter((B)=>{return A.test(B.toString())});if(typeof A==="object"&&A!==null){if(Object.keys(A).length===0)return this.logs;let B={operator:"OR",...B_0(Q)},Y=[];if("protocol"in A)Y=QW(A.protocol,B,this.filterCallsByProtocol,Y);if("host"in A)Y=QW(A.host,B,this.filterCallsByHost,Y);if("port"in A)Y=QW(A.port,B,this.filterCallsByPort,Y);if("origin"in A)Y=QW(A.origin,B,this.filterCallsByOrigin,Y);if("path"in A)Y=QW(A.path,B,this.filterCallsByPath,Y);if("hash"in A)Y=QW(A.hash,B,this.filterCallsByHash,Y);if("fullUrl"in A)Y=QW(A.fullUrl,B,this.filterCallsByFullUrl,Y);if("method"in A)Y=QW(A.method,B,this.filterCallsByMethod,Y);return[...new Set(Y)]}throw new YW("criteria parameter should be one of function, regexp, or object")}filterCallsByProtocol=BW.call(this,"protocol");filterCallsByHost=BW.call(this,"host");filterCallsByPort=BW.call(this,"port");filterCallsByOrigin=BW.call(this,"origin");filterCallsByPath=BW.call(this,"path");filterCallsByHash=BW.call(this,"hash");filterCallsByFullUrl=BW.call(this,"fullUrl");filterCallsByMethod=BW.call(this,"method");clear(){this.logs=[]}[Q_0](A){let Q=new Da(A);return this.logs.push(Q),Q}*[Symbol.iterator](){for(let A of this.calls())yield A}}J_0.MockCallHistory=EwQ;J_0.MockCallHistoryLog=Da});var za=R((wnY,qwQ)=>{var{promisify:G_0}=u("node:util"),F_0=aK(),{buildMockDispatch:W_0}=Oq(),{kDispatches:qa,kMockAgent:KwQ,kClose:VwQ,kOriginalClose:IwQ,kOrigin:HwQ,kOriginalDispatch:Z_0,kConnected:Ma,kIgnoreTrailingSlash:DwQ}=l$(),{MockInterceptor:$_0}=Ka(),NwQ=Q0(),{InvalidArgumentError:U_0}=QB();class LwQ extends F_0{constructor(A,Q){if(!Q||!Q.agent||typeof Q.agent.dispatch!=="function")throw new U_0("Argument opts.agent must implement Agent");super(A,Q);this[KwQ]=Q.agent,this[HwQ]=A,this[DwQ]=Q.ignoreTrailingSlash??!1,this[qa]=[],this[Ma]=1,this[Z_0]=this.dispatch,this[IwQ]=this.close.bind(this),this.dispatch=W_0.call(this),this.close=this[VwQ]}get[NwQ.kConnected](){return this[Ma]}intercept(A){return new $_0(A&&{ignoreTrailingSlash:this[DwQ],...A},this[qa])}cleanMocks(){this[qa]=[]}async[VwQ](){await G_0(this[IwQ])(),this[Ma]=0,this[KwQ][NwQ.kClients].delete(this[HwQ])}}qwQ.exports=LwQ});var zwQ=R((jnY,MwQ)=>{var{Transform:E_0}=u("node:stream"),{Console:K_0}=u("node:console"),V_0=process.versions.icu?"✅":"Y ",I_0=process.versions.icu?"❌":"N ";MwQ.exports=class{constructor({disableColors:Q}={}){this.transform=new E_0({transform(B,Y,J){J(null,B)}}),this.logger=new K_0({stdout:this.transform,inspectOptions:{colors:!Q&&!process.env.CI}})}format(Q){let B=Q.map(({method:Y,path:J,data:{statusCode:C},persist:X,times:G,timesInvoked:F,origin:W})=>({Method:Y,Origin:W,Path:J,"Status code":C,Persistent:X?V_0:I_0,Invocations:F,Remaining:X?1/0:G-F}));return this.logger.table(B),this.transform.read().toString()}}});var Oa=R((OnY,SwQ)=>{var{kClients:p$}=Q0(),H_0=u$(),{kAgent:Ra,kMockAgentSet:PS,kMockAgentGet:RwQ,kDispatches:wa,kIsMockActive:TS,kNetConnect:i$,kGetNetConnect:D_0,kOptions:SS,kFactory:kS,kMockAgentRegisterCallHistory:ja,kMockAgentIsCallHistoryEnabled:Tq,kMockAgentAddCallHistoryLog:wwQ,kMockAgentMockCallHistoryInstance:CV,kMockAgentAcceptsNonStandardSearchParameters:jwQ,kMockCallHistoryAddLog:N_0,kIgnoreTrailingSlash:OwQ}=l$(),L_0=Ha(),q_0=za(),{matchValue:M_0,normalizeSearchParams:z_0,buildAndValidateMockOptions:R_0}=Oq(),{InvalidArgumentError:PwQ,UndiciError:w_0}=QB(),j_0=aL(),O_0=zwQ(),{MockCallHistory:P_0}=La();class TwQ extends j_0{constructor(A={}){super(A);let Q=R_0(A);if(this[i$]=!0,this[TS]=!0,this[Tq]=Q.enableCallHistory??!1,this[jwQ]=Q.acceptNonStandardSearchParameters??!1,this[OwQ]=Q.ignoreTrailingSlash??!1,A?.agent&&typeof A.agent.dispatch!=="function")throw new PwQ("Argument opts.agent must implement Agent");let B=A?.agent?A.agent:new H_0(A);if(this[Ra]=B,this[p$]=B[p$],this[SS]=Q,this[Tq])this[ja]()}get(A){let Q=this[OwQ]?A.replace(/\/$/,""):A,B=this[RwQ](Q);if(!B)B=this[kS](Q),this[PS](Q,B);return B}dispatch(A,Q){this.get(A.origin),this[wwQ](A);let B=this[jwQ],Y={...A};if(B&&Y.path){let[J,C]=Y.path.split("?"),X=z_0(C,B);Y.path=`${J}?${X}`}return this[Ra].dispatch(Y,Q)}async close(){this.clearCallHistory(),await this[Ra].close(),this[p$].clear()}deactivate(){this[TS]=!1}activate(){this[TS]=!0}enableNetConnect(A){if(typeof A==="string"||typeof A==="function"||A instanceof RegExp)if(Array.isArray(this[i$]))this[i$].push(A);else this[i$]=[A];else if(typeof A>"u")this[i$]=!0;else throw new PwQ("Unsupported matcher. Must be one of String|Function|RegExp.")}disableNetConnect(){this[i$]=!1}enableCallHistory(){return this[Tq]=!0,this}disableCallHistory(){return this[Tq]=!1,this}getCallHistory(){return this[CV]}clearCallHistory(){if(this[CV]!==void 0)this[CV].clear()}get isMockActive(){return this[TS]}[ja](){if(this[CV]===void 0)this[CV]=new P_0}[wwQ](A){if(this[Tq])this[ja](),this[CV][N_0](A)}[PS](A,Q){this[p$].set(A,{count:0,dispatcher:Q})}[kS](A){let Q=Object.assign({agent:this},this[SS]);return this[SS]&&this[SS].connections===1?new L_0(A,Q):new q_0(A,Q)}[RwQ](A){let Q=this[p$].get(A);if(Q?.dispatcher)return Q.dispatcher;if(typeof A!=="string"){let B=this[kS]("http://localhost:9999");return this[PS](A,B),B}for(let[B,Y]of Array.from(this[p$]))if(Y&&typeof B!=="string"&&M_0(B,A)){let J=this[kS](A);return this[PS](A,J),J[wa]=Y.dispatcher[wa],J}}[D_0](){return this[i$]}pendingInterceptors(){let A=this[p$];return Array.from(A.entries()).flatMap(([Q,B])=>B.dispatcher[wa].map((Y)=>({...Y,origin:Q}))).filter(({pending:Q})=>Q)}assertNoPendingInterceptors({pendingInterceptorsFormatter:A=new O_0}={}){let Q=this.pendingInterceptors();if(Q.length===0)return;throw new w_0(Q.length===1?`1 interceptor is pending: +`,"latin1");if(Q!==null&&Y!==Q)if(B[cr])throw new l$;else process.emitWarning(new l$);if(A[o0].timeout&&A[o0].timeoutType===QV){if(A[o0].timeout.refresh)A[o0].timeout.refresh()}B[AF]()}destroy(A){let{socket:Q,client:B,abort:Y}=this;if(Q[QF]=!1,A)wQ(B[fJ]<=1,"pipeline should only contain this request"),Y(A)}}H3Q.exports=LT0});var w3Q=R((asY,R3Q)=>{var WC=u("node:assert"),{pipeline:kT0}=u("node:stream"),OB=lQ(),{RequestContentLengthMismatchError:sr,RequestAbortedError:_T0,SocketError:wq,InformationalError:OS}=QB(),{kUrl:Rq,kReset:TS,kClient:p$,kRunning:SS,kPending:vT0,kQueue:BF,kPendingIdx:ar,kRunningIdx:H1,kError:D1,kSocket:VY,kStrictContentLength:yT0,kOnError:kS,kMaxConcurrentStreams:z3Q,kHTTP2Session:PX,kResume:yG,kSize:gT0,kHTTPContext:or,kClosed:rr,kBodyTimeout:hT0}=B0(),{channels:N3Q}=x$(),GC=Symbol("open streams"),L3Q,PS;try{PS=u("node:http2")}catch{PS={constants:{}}}var{constants:{HTTP2_HEADER_AUTHORITY:xT0,HTTP2_HEADER_METHOD:fT0,HTTP2_HEADER_PATH:bT0,HTTP2_HEADER_SCHEME:mT0,HTTP2_HEADER_CONTENT_LENGTH:uT0,HTTP2_HEADER_EXPECT:dT0,HTTP2_HEADER_STATUS:cT0}}=PS;function lT0(A){let Q=[];for(let[B,Y]of Object.entries(A))if(Array.isArray(Y))for(let J of Y)Q.push(Buffer.from(B),Buffer.from(J));else Q.push(Buffer.from(B),Buffer.from(Y));return Q}function pT0(A,Q){A[VY]=Q;let B=PS.connect(A[Rq],{createConnection:()=>Q,peerMaxConcurrentStreams:A[z3Q],settings:{enablePush:!1}});return B[GC]=0,B[p$]=A,B[VY]=Q,B[PX]=null,OB.addListener(B,"error",nT0),OB.addListener(B,"frameError",sT0),OB.addListener(B,"end",rT0),OB.addListener(B,"goaway",aT0),OB.addListener(B,"close",oT0),B.unref(),A[PX]=B,Q[PX]=B,OB.addListener(Q,"error",eT0),OB.addListener(Q,"end",AS0),OB.addListener(Q,"close",tT0),Q[rr]=!1,Q.on("close",QS0),{version:"h2",defaultPipelining:1/0,write(Y){return YS0(A,Y)},resume(){iT0(A)},destroy(Y,J){if(Q[rr])queueMicrotask(J);else Q.destroy(Y).on("close",J)},get destroyed(){return Q.destroyed},busy(){return!1}}}function iT0(A){let Q=A[VY];if(Q?.destroyed===!1)if(A[gT0]===0||A[z3Q]===0)Q.unref(),A[PX].unref();else Q.ref(),A[PX].ref()}function nT0(A){WC(A.code!=="ERR_TLS_CERT_ALTNAME_INVALID"),this[VY][D1]=A,this[p$][kS](A)}function sT0(A,Q,B){if(B===0){let Y=new OS(`HTTP/2: "frameError" received - type ${A}, code ${Q}`);this[VY][D1]=Y,this[p$][kS](Y)}}function rT0(){let A=new wq("other side closed",OB.getSocketInfo(this[VY]));this.destroy(A),OB.destroy(this[VY],A)}function aT0(A){let Q=this[D1]||new wq(`HTTP/2: "GOAWAY" frame received with code ${A}`,OB.getSocketInfo(this[VY])),B=this[p$];if(B[VY]=null,B[or]=null,this.close(),this[PX]=null,OB.destroy(this[VY],Q),B[H1]{if(Q.aborted||Q.completed)return;if(N=N||new _T0,OB.errorRequest(A,Q,N),K!=null)K.removeAllListeners("data"),K.close(),A[kS](N),A[yG]();OB.destroy($,N)};try{Q.onConnect(H)}catch(N){OB.errorRequest(A,Q,N)}if(Q.aborted)return!1;if(J==="CONNECT"){if(Y.ref(),K=Y.request(E,{endStream:!1,signal:F}),!K.pending)Q.onUpgrade(null,null,K),++Y[GC],A[BF][A[H1]++]=null;else K.once("ready",()=>{Q.onUpgrade(null,null,K),++Y[GC],A[BF][A[H1]++]=null});return K.once("close",()=>{if(Y[GC]-=1,Y[GC]===0)Y.unref()}),K.setTimeout(B),!0}E[bT0]=C,E[mT0]=Z==="http:"?"http":"https";let D=J==="PUT"||J==="POST"||J==="PATCH";if($&&typeof $.read==="function")$.read(0);let L=OB.bodyLength($);if(OB.isFormDataLike($)){L3Q??=tK().extractBody;let[N,q]=L3Q($);E["content-type"]=q,$=N.stream,L=N.length}if(L==null)L=Q.contentLength;if(L===0||!D)L=null;if(BS0(J)&&L>0&&Q.contentLength!=null&&Q.contentLength!==L){if(A[yT0])return OB.errorRequest(A,Q,new sr),!1;process.emitWarning(new sr)}if(L!=null)WC($,"no body must not have content length"),E[uT0]=`${L}`;if(Y.ref(),N3Q.sendHeaders.hasSubscribers){let N="";for(let q in E)N+=`${q}: ${E[q]}\r +`;N3Q.sendHeaders.publish({request:Q,headers:N,socket:Y[VY]})}let z=J==="GET"||J==="HEAD"||$===null;if(W)E[dT0]="100-continue",K=Y.request(E,{endStream:z,signal:F}),K.once("continue",M);else K=Y.request(E,{endStream:z,signal:F}),M();return++Y[GC],K.setTimeout(B),K.once("response",(N)=>{let{[cT0]:q,...w}=N;if(Q.onResponseStarted(),Q.aborted){K.removeAllListeners("data");return}if(Q.onHeaders(Number(q),lT0(w),K.resume.bind(K),"")===!1)K.pause()}),K.on("data",(N)=>{if(Q.onData(N)===!1)K.pause()}),K.once("end",(N)=>{if(K.removeAllListeners("data"),K.state?.state==null||K.state.state<6){if(!Q.aborted&&!Q.completed)Q.onComplete({});A[BF][A[H1]++]=null,A[yG]()}else{if(--Y[GC],Y[GC]===0)Y.unref();H(N??new OS("HTTP/2: stream half-closed (remote)")),A[BF][A[H1]++]=null,A[ar]=A[H1],A[yG]()}}),K.once("close",()=>{if(K.removeAllListeners("data"),Y[GC]-=1,Y[GC]===0)Y.unref()}),K.once("error",function(N){K.removeAllListeners("data"),H(N)}),K.once("frameError",(N,q)=>{K.removeAllListeners("data"),H(new OS(`HTTP/2: "frameError" received - type ${N}, code ${q}`))}),K.on("aborted",()=>{K.removeAllListeners("data")}),K.on("timeout",()=>{let N=new OS(`HTTP/2: "stream timeout after ${B}"`);if(K.removeAllListeners("data"),Y[GC]-=1,Y[GC]===0)Y.unref();H(N)}),K.once("trailers",(N)=>{if(Q.aborted||Q.completed)return;Q.onComplete(N)}),!0;function M(){if(!$||L===0)q3Q(H,K,null,A,Q,A[VY],L,D);else if(OB.isBuffer($))q3Q(H,K,$,A,Q,A[VY],L,D);else if(OB.isBlobLike($))if(typeof $.stream==="function")M3Q(H,K,$.stream(),A,Q,A[VY],L,D);else CS0(H,K,$,A,Q,A[VY],L,D);else if(OB.isStream($))JS0(H,A[VY],D,K,$,A,Q,L);else if(OB.isIterable($))M3Q(H,K,$,A,Q,A[VY],L,D);else WC(!1)}}function q3Q(A,Q,B,Y,J,C,X,G){try{if(B!=null&&OB.isBuffer(B))WC(X===B.byteLength,"buffer body must have content length"),Q.cork(),Q.write(B),Q.uncork(),Q.end(),J.onBodySent(B);if(!G)C[TS]=!0;J.onRequestSent(),Y[yG]()}catch(W){A(W)}}function JS0(A,Q,B,Y,J,C,X,G){WC(G!==0||C[SS]===0,"stream body cannot be pipelined");let W=kT0(J,Y,(Z)=>{if(Z)OB.destroy(W,Z),A(Z);else{if(OB.removeAllListeners(W),X.onRequestSent(),!B)Q[TS]=!0;C[yG]()}});OB.addListener(W,"data",F);function F(Z){X.onBodySent(Z)}}async function CS0(A,Q,B,Y,J,C,X,G){WC(X===B.size,"blob body must have content length");try{if(X!=null&&X!==B.size)throw new sr;let W=Buffer.from(await B.arrayBuffer());if(Q.cork(),Q.write(W),Q.uncork(),Q.end(),J.onBodySent(W),J.onRequestSent(),!G)C[TS]=!0;Y[yG]()}catch(W){A(W)}}async function M3Q(A,Q,B,Y,J,C,X,G){WC(X!==0||Y[SS]===0,"iterator body cannot be pipelined");let W=null;function F(){if(W){let U=W;W=null,U()}}let Z=()=>new Promise((U,$)=>{if(WC(W===null),C[D1])$(C[D1]);else W=U});Q.on("close",F).on("drain",F);try{for await(let U of B){if(C[D1])throw C[D1];let $=Q.write(U);if(J.onBodySent(U),!$)await Z()}if(Q.end(),J.onRequestSent(),!G)C[TS]=!0;Y[yG]()}catch(U){A(U)}finally{Q.off("close",F).off("drain",F)}}R3Q.exports=pT0});var s$=R((osY,g3Q)=>{var gG=u("node:assert"),S3Q=u("node:net"),jq=u("node:http"),i$=lQ(),{ClientStats:XS0}=Vr(),{channels:BV}=x$(),GS0=TzQ(),WS0=f$(),{InvalidArgumentError:IY,InformationalError:FS0,ClientDestroyedError:ZS0}=QB(),$S0=Eq(),{kUrl:TX,kServerName:XF,kClient:US0,kBusy:tr,kConnect:ES0,kResuming:n$,kRunning:Sq,kPending:kq,kSize:Oq,kQueue:N1,kConnected:KS0,kConnecting:YV,kNeedDrain:JF,kKeepAliveDefaultTimeout:j3Q,kHostHeader:VS0,kPendingIdx:L1,kRunningIdx:hG,kError:IS0,kPipelining:_S,kKeepAliveTimeoutValue:HS0,kMaxHeadersSize:DS0,kKeepAliveMaxTimeout:NS0,kKeepAliveTimeoutThreshold:LS0,kHeadersTimeout:qS0,kBodyTimeout:MS0,kStrictContentLength:zS0,kConnector:Pq,kMaxRequests:er,kCounter:RS0,kClose:wS0,kDestroy:jS0,kDispatch:OS0,kLocalAddress:Tq,kMaxResponseSize:PS0,kOnError:TS0,kHTTPContext:HY,kMaxConcurrentStreams:SS0,kResume:CF}=B0(),kS0=D3Q(),_S0=w3Q(),YF=Symbol("kClosedResolve"),vS0=jq&&jq.maxHeaderSize&&Number.isInteger(jq.maxHeaderSize)&&jq.maxHeaderSize>0?()=>jq.maxHeaderSize:()=>{throw new IY("http module not available or http.maxHeaderSize invalid")},O3Q=()=>{};function k3Q(A){return A[_S]??A[HY]?.defaultPipelining??1}class _3Q extends WS0{constructor(A,{maxHeaderSize:Q,headersTimeout:B,socketTimeout:Y,requestTimeout:J,connectTimeout:C,bodyTimeout:X,idleTimeout:G,keepAlive:W,keepAliveTimeout:F,maxKeepAliveTimeout:Z,keepAliveMaxTimeout:U,keepAliveTimeoutThreshold:$,socketPath:E,pipelining:K,tls:I,strictContentLength:V,maxCachedSessions:H,connect:D,maxRequestsPerClient:L,localAddress:z,maxResponseSize:M,autoSelectFamily:N,autoSelectFamilyAttemptTimeout:q,maxConcurrentStreams:w,allowH2:P}={}){if(W!==void 0)throw new IY("unsupported keepAlive, use pipelining=0 instead");if(Y!==void 0)throw new IY("unsupported socketTimeout, use headersTimeout & bodyTimeout instead");if(J!==void 0)throw new IY("unsupported requestTimeout, use headersTimeout & bodyTimeout instead");if(G!==void 0)throw new IY("unsupported idleTimeout, use keepAliveTimeout instead");if(Z!==void 0)throw new IY("unsupported maxKeepAliveTimeout, use keepAliveMaxTimeout instead");if(Q!=null){if(!Number.isInteger(Q)||Q<1)throw new IY("invalid maxHeaderSize")}else Q=vS0();if(E!=null&&typeof E!=="string")throw new IY("invalid socketPath");if(C!=null&&(!Number.isFinite(C)||C<0))throw new IY("invalid connectTimeout");if(F!=null&&(!Number.isFinite(F)||F<=0))throw new IY("invalid keepAliveTimeout");if(U!=null&&(!Number.isFinite(U)||U<=0))throw new IY("invalid keepAliveMaxTimeout");if($!=null&&!Number.isFinite($))throw new IY("invalid keepAliveTimeoutThreshold");if(B!=null&&(!Number.isInteger(B)||B<0))throw new IY("headersTimeout must be a positive integer or zero");if(X!=null&&(!Number.isInteger(X)||X<0))throw new IY("bodyTimeout must be a positive integer or zero");if(D!=null&&typeof D!=="function"&&typeof D!=="object")throw new IY("connect must be a function or an object");if(L!=null&&(!Number.isInteger(L)||L<0))throw new IY("maxRequestsPerClient must be a positive number");if(z!=null&&(typeof z!=="string"||S3Q.isIP(z)===0))throw new IY("localAddress must be valid string IP address");if(M!=null&&(!Number.isInteger(M)||M<-1))throw new IY("maxResponseSize must be a positive number");if(q!=null&&(!Number.isInteger(q)||q<-1))throw new IY("autoSelectFamilyAttemptTimeout must be a positive number");if(P!=null&&typeof P!=="boolean")throw new IY("allowH2 must be a valid boolean value");if(w!=null&&(typeof w!=="number"||w<1))throw new IY("maxConcurrentStreams must be a positive integer, greater than 0");super();if(typeof D!=="function")D=$S0({...I,maxCachedSessions:H,allowH2:P,socketPath:E,timeout:C,...typeof N==="boolean"?{autoSelectFamily:N,autoSelectFamilyAttemptTimeout:q}:void 0,...D});this[TX]=i$.parseOrigin(A),this[Pq]=D,this[_S]=K!=null?K:1,this[DS0]=Q,this[j3Q]=F==null?4000:F,this[NS0]=U==null?600000:U,this[LS0]=$==null?2000:$,this[HS0]=this[j3Q],this[XF]=null,this[Tq]=z!=null?z:null,this[n$]=0,this[JF]=0,this[VS0]=`host: ${this[TX].hostname}${this[TX].port?`:${this[TX].port}`:""}\r +`,this[MS0]=X!=null?X:300000,this[qS0]=B!=null?B:300000,this[zS0]=V==null?!0:V,this[er]=L,this[YF]=null,this[PS0]=M>-1?M:-1,this[SS0]=w!=null?w:100,this[HY]=null,this[N1]=[],this[hG]=0,this[L1]=0,this[CF]=(_)=>Aa(this,_),this[TS0]=(_)=>v3Q(this,_)}get pipelining(){return this[_S]}set pipelining(A){this[_S]=A,this[CF](!0)}get stats(){return new XS0(this)}get[kq](){return this[N1].length-this[L1]}get[Sq](){return this[L1]-this[hG]}get[Oq](){return this[N1].length-this[hG]}get[KS0](){return!!this[HY]&&!this[YV]&&!this[HY].destroyed}get[tr](){return Boolean(this[HY]?.busy(null)||this[Oq]>=(k3Q(this)||1)||this[kq]>0)}[ES0](A){y3Q(this),this.once("connect",A)}[OS0](A,Q){let B=new GS0(this[TX].origin,A,Q);if(this[N1].push(B),this[n$]);else if(i$.bodyLength(B.body)==null&&i$.isIterable(B.body))this[n$]=1,queueMicrotask(()=>Aa(this));else this[CF](!0);if(this[n$]&&this[JF]!==2&&this[tr])this[JF]=2;return this[JF]<2}[wS0](){return new Promise((A)=>{if(this[Oq])this[YF]=A;else A(null)})}[jS0](A){return new Promise((Q)=>{let B=this[N1].splice(this[L1]);for(let J=0;J{if(this[YF])this[YF](),this[YF]=null;Q(null)};if(this[HY])this[HY].destroy(A,Y),this[HY]=null;else queueMicrotask(Y);this[CF]()})}}function v3Q(A,Q){if(A[Sq]===0&&Q.code!=="UND_ERR_INFO"&&Q.code!=="UND_ERR_SOCKET"){gG(A[L1]===A[hG]);let B=A[N1].splice(A[hG]);for(let Y=0;Y{if(C){P3Q(A,C,{host:Q,hostname:B,protocol:Y,port:J}),A[CF]();return}if(A.destroyed){i$.destroy(X.on("error",O3Q),new ZS0),A[CF]();return}gG(X);try{A[HY]=X.alpnProtocol==="h2"?_S0(A,X):kS0(A,X)}catch(G){X.destroy().on("error",O3Q),P3Q(A,G,{host:Q,hostname:B,protocol:Y,port:J}),A[CF]();return}if(A[YV]=!1,X[RS0]=0,X[er]=A[er],X[US0]=A,X[IS0]=null,BV.connected.hasSubscribers)BV.connected.publish({connectParams:{host:Q,hostname:B,protocol:Y,port:J,version:A[HY]?.version,servername:A[XF],localAddress:A[Tq]},connector:A[Pq],socket:X});A.emit("connect",A[TX],[A]),A[CF]()})}function P3Q(A,Q,{host:B,hostname:Y,protocol:J,port:C}){if(A.destroyed)return;if(A[YV]=!1,BV.connectError.hasSubscribers)BV.connectError.publish({connectParams:{host:B,hostname:Y,protocol:J,port:C,version:A[HY]?.version,servername:A[XF],localAddress:A[Tq]},connector:A[Pq],error:Q});if(Q.code==="ERR_TLS_CERT_ALTNAME_INVALID"){gG(A[Sq]===0);while(A[kq]>0&&A[N1][A[L1]].servername===A[XF]){let X=A[N1][A[L1]++];i$.errorRequest(A,X,Q)}}else v3Q(A,Q);A.emit("connectionError",A[TX],[A],Q)}function T3Q(A){A[JF]=0,A.emit("drain",A[TX],[A])}function Aa(A,Q){if(A[n$]===2)return;if(A[n$]=2,yS0(A,Q),A[n$]=0,A[hG]>256)A[N1].splice(0,A[hG]),A[L1]-=A[hG],A[hG]=0}function yS0(A,Q){while(!0){if(A.destroyed){gG(A[kq]===0);return}if(A[YF]&&!A[Oq]){A[YF](),A[YF]=null;return}if(A[HY])A[HY].resume();if(A[tr])A[JF]=2;else if(A[JF]===2){if(Q)A[JF]=1,queueMicrotask(()=>T3Q(A));else T3Q(A);continue}if(A[kq]===0)return;if(A[Sq]>=(k3Q(A)||1))return;let B=A[N1][A[L1]];if(A[TX].protocol==="https:"&&A[XF]!==B.servername){if(A[Sq]>0)return;A[XF]=B.servername,A[HY]?.destroy(new FS0("servername changed"),()=>{A[HY]=null,Aa(A)})}if(A[YV])return;if(!A[HY]){y3Q(A);return}if(A[HY].destroyed)return;if(A[HY].busy(B))return;if(!B.aborted&&A[HY].write(B))A[L1]++;else A[N1].splice(A[L1],1)}}g3Q.exports=_3Q});var Ba=R((tsY,h3Q)=>{class Qa{bottom=0;top=0;list=Array(2048).fill(void 0);next=null;isEmpty(){return this.top===this.bottom}isFull(){return(this.top+1&2047)===this.bottom}push(A){this.list[this.top]=A,this.top=this.top+1&2047}shift(){let A=this.list[this.bottom];if(A===void 0)return null;return this.list[this.bottom]=void 0,this.bottom=this.bottom+1&2047,A}}h3Q.exports=class{constructor(){this.head=this.tail=new Qa}isEmpty(){return this.head.isEmpty()}push(Q){if(this.head.isFull())this.head=this.head.next=new Qa;this.head.push(Q)}shift(){let Q=this.tail,B=Q.shift();if(Q.isEmpty()&&Q.next!==null)this.tail=Q.next,Q.next=null;return B}}});var Ga=R((esY,i3Q)=>{var{PoolStats:gS0}=Vr(),hS0=f$(),xS0=Ba(),{kConnected:Ya,kSize:x3Q,kRunning:f3Q,kPending:b3Q,kQueued:_q,kBusy:fS0,kFree:bS0,kUrl:mS0,kClose:uS0,kDestroy:dS0,kDispatch:cS0}=B0(),jY=Symbol("clients"),R9=Symbol("needDrain"),vq=Symbol("queue"),Ja=Symbol("closed resolve"),Ca=Symbol("onDrain"),m3Q=Symbol("onConnect"),u3Q=Symbol("onDisconnect"),d3Q=Symbol("onConnectionError"),Xa=Symbol("get dispatcher"),c3Q=Symbol("add client"),l3Q=Symbol("remove client");class p3Q extends hS0{[vq]=new xS0;[_q]=0;[jY]=[];[R9]=!1;[Ca](A,Q,B){let Y=this[vq],J=!1;while(!J){let C=Y.shift();if(!C)break;this[_q]--,J=!A.dispatch(C.opts,C.handler)}if(A[R9]=J,!J&&this[R9])this[R9]=!1,this.emit("drain",Q,[this,...B]);if(this[Ja]&&Y.isEmpty()){let C=Array(this[jY].length);for(let X=0;X{this.emit("connect",A,[this,...Q])};[u3Q]=(A,Q,B)=>{this.emit("disconnect",A,[this,...Q],B)};[d3Q]=(A,Q,B)=>{this.emit("connectionError",A,[this,...Q],B)};get[fS0](){return this[R9]}get[Ya](){let A=0;for(let{[Ya]:Q}of this[jY])A+=Q;return A}get[bS0](){let A=0;for(let{[Ya]:Q,[R9]:B}of this[jY])A+=Q&&!B;return A}get[b3Q](){let A=this[_q];for(let{[b3Q]:Q}of this[jY])A+=Q;return A}get[f3Q](){let A=0;for(let{[f3Q]:Q}of this[jY])A+=Q;return A}get[x3Q](){let A=this[_q];for(let{[x3Q]:Q}of this[jY])A+=Q;return A}get stats(){return new gS0(this)}[uS0](){if(this[vq].isEmpty()){let A=Array(this[jY].length);for(let Q=0;Q{this[Ja]=A})}[dS0](A){while(!0){let B=this[vq].shift();if(!B)break;B.handler.onError(A)}let Q=Array(this[jY].length);for(let B=0;B{if(this[R9])this[Ca](A,A[mS0],[A,this])});return this}[l3Q](A){A.close(()=>{let Q=this[jY].indexOf(A);if(Q!==-1)this[jY].splice(Q,1)}),this[R9]=this[jY].some((Q)=>!Q[R9]&&Q.closed!==!0&&Q.destroyed!==!0)}}i3Q.exports={PoolBase:p3Q,kClients:jY,kNeedDrain:R9,kAddClient:c3Q,kRemoveClient:l3Q,kGetDispatcher:Xa}});var JV=R((ArY,o3Q)=>{var{PoolBase:lS0,kClients:vS,kNeedDrain:pS0,kAddClient:iS0,kGetDispatcher:nS0,kRemoveClient:sS0}=Ga(),rS0=s$(),{InvalidArgumentError:Wa}=QB(),n3Q=lQ(),{kUrl:s3Q}=B0(),aS0=Eq(),yS=Symbol("options"),Fa=Symbol("connections"),r3Q=Symbol("factory");function oS0(A,Q){return new rS0(A,Q)}class a3Q extends lS0{constructor(A,{connections:Q,factory:B=oS0,connect:Y,connectTimeout:J,tls:C,maxCachedSessions:X,socketPath:G,autoSelectFamily:W,autoSelectFamilyAttemptTimeout:F,allowH2:Z,clientTtl:U,...$}={}){if(Q!=null&&(!Number.isFinite(Q)||Q<0))throw new Wa("invalid connections");if(typeof B!=="function")throw new Wa("factory must be a function.");if(Y!=null&&typeof Y!=="function"&&typeof Y!=="object")throw new Wa("connect must be a function or an object");if(typeof Y!=="function")Y=aS0({...C,maxCachedSessions:X,allowH2:Z,socketPath:G,timeout:J,...typeof W==="boolean"?{autoSelectFamily:W,autoSelectFamilyAttemptTimeout:F}:void 0,...Y});super();this[Fa]=Q||null,this[s3Q]=n3Q.parseOrigin(A),this[yS]={...n3Q.deepClone($),connect:Y,allowH2:Z,clientTtl:U},this[yS].interceptors=$.interceptors?{...$.interceptors}:void 0,this[r3Q]=B,this.on("connect",(E,K)=>{if(U!=null&&U>0)for(let I of K)Object.assign(I,{ttl:Date.now()})}),this.on("connectionError",(E,K,I)=>{for(let V of K){let H=this[vS].indexOf(V);if(H!==-1)this[vS].splice(H,1)}})}[nS0](){let A=this[yS].clientTtl;for(let Q of this[vS])if(A!=null&&A>0&&Q.ttl&&Date.now()-Q.ttl>A)this[sS0](Q);else if(!Q[pS0])return Q;if(!this[Fa]||this[vS].length{var{BalancedPoolMissingUpstreamError:tS0,InvalidArgumentError:eS0}=QB(),{PoolBase:Ak0,kClients:bJ,kNeedDrain:yq,kAddClient:Qk0,kRemoveClient:Bk0,kGetDispatcher:Yk0}=Ga(),Jk0=JV(),{kUrl:Za}=B0(),{parseOrigin:t3Q}=lQ(),e3Q=Symbol("factory"),gS=Symbol("options"),ARQ=Symbol("kGreatestCommonDivisor"),r$=Symbol("kCurrentWeight"),a$=Symbol("kIndex"),FC=Symbol("kWeight"),hS=Symbol("kMaxWeightPerServer"),xS=Symbol("kErrorPenalty");function Ck0(A,Q){if(A===0)return Q;while(Q!==0){let B=Q;Q=A%Q,A=B}return A}function Xk0(A,Q){return new Jk0(A,Q)}class QRQ extends Ak0{constructor(A=[],{factory:Q=Xk0,...B}={}){if(typeof Q!=="function")throw new eS0("factory must be a function.");super();if(this[gS]=B,this[a$]=-1,this[r$]=0,this[hS]=this[gS].maxWeightPerServer||100,this[xS]=this[gS].errorPenalty||15,!Array.isArray(A))A=[A];this[e3Q]=Q;for(let Y of A)this.addUpstream(Y);this._updateBalancedPoolStats()}addUpstream(A){let Q=t3Q(A).origin;if(this[bJ].find((Y)=>Y[Za].origin===Q&&Y.closed!==!0&&Y.destroyed!==!0))return this;let B=this[e3Q](Q,Object.assign({},this[gS]));this[Qk0](B),B.on("connect",()=>{B[FC]=Math.min(this[hS],B[FC]+this[xS])}),B.on("connectionError",()=>{B[FC]=Math.max(1,B[FC]-this[xS]),this._updateBalancedPoolStats()}),B.on("disconnect",(...Y)=>{let J=Y[2];if(J&&J.code==="UND_ERR_SOCKET")B[FC]=Math.max(1,B[FC]-this[xS]),this._updateBalancedPoolStats()});for(let Y of this[bJ])Y[FC]=this[hS];return this._updateBalancedPoolStats(),this}_updateBalancedPoolStats(){let A=0;for(let Q=0;QY[Za].origin===Q&&Y.closed!==!0&&Y.destroyed!==!0);if(B)this[Bk0](B);return this}get upstreams(){return this[bJ].filter((A)=>A.closed!==!0&&A.destroyed!==!0).map((A)=>A[Za].origin)}[Yk0](){if(this[bJ].length===0)throw new tS0;if(!this[bJ].find((J)=>!J[yq]&&J.closed!==!0&&J.destroyed!==!0))return;if(this[bJ].map((J)=>J[yq]).reduce((J,C)=>J&&C,!0))return;let B=0,Y=this[bJ].findIndex((J)=>!J[yq]);while(B++this[bJ][Y][FC]&&!J[yq])Y=this[a$];if(this[a$]===0){if(this[r$]=this[r$]-this[ARQ],this[r$]<=0)this[r$]=this[hS]}if(J[FC]>=this[r$]&&!J[yq])return J}return this[r$]=this[bJ][Y][FC],this[a$]=Y,this[bJ][Y]}}BRQ.exports=QRQ});var o$=R((BrY,$RQ)=>{var{InvalidArgumentError:fS,MaxOriginsReachedError:Gk0}=QB(),{kClients:ZC,kRunning:JRQ,kClose:Wk0,kDestroy:Fk0,kDispatch:Zk0,kUrl:$k0}=B0(),Uk0=f$(),Ek0=JV(),Kk0=s$(),Vk0=lQ(),CRQ=Symbol("onConnect"),XRQ=Symbol("onDisconnect"),GRQ=Symbol("onConnectionError"),WRQ=Symbol("onDrain"),FRQ=Symbol("factory"),$a=Symbol("options"),gq=Symbol("origins");function Ik0(A,Q){return Q&&Q.connections===1?new Kk0(A,Q):new Ek0(A,Q)}class ZRQ extends Uk0{constructor({factory:A=Ik0,maxOrigins:Q=1/0,connect:B,...Y}={}){if(typeof A!=="function")throw new fS("factory must be a function.");if(B!=null&&typeof B!=="function"&&typeof B!=="object")throw new fS("connect must be a function or an object");if(typeof Q!=="number"||Number.isNaN(Q)||Q<=0)throw new fS("maxOrigins must be a number greater than 0");super();if(B&&typeof B!=="function")B={...B};this[$a]={...Vk0.deepClone(Y),maxOrigins:Q,connect:B},this[FRQ]=A,this[ZC]=new Map,this[gq]=new Set,this[WRQ]=(J,C)=>{this.emit("drain",J,[this,...C])},this[CRQ]=(J,C)=>{this.emit("connect",J,[this,...C])},this[XRQ]=(J,C,X)=>{this.emit("disconnect",J,[this,...C],X)},this[GRQ]=(J,C,X)=>{this.emit("connectionError",J,[this,...C],X)}}get[JRQ](){let A=0;for(let{dispatcher:Q}of this[ZC].values())A+=Q[JRQ];return A}[Zk0](A,Q){let B;if(A.origin&&(typeof A.origin==="string"||A.origin instanceof URL))B=String(A.origin);else throw new fS("opts.origin must be a non-empty string or URL.");if(this[gq].size>=this[$a].maxOrigins&&!this[gq].has(B))throw new Gk0;let Y=this[ZC].get(B),J=Y&&Y.dispatcher;if(!J){let C=(X)=>{let G=this[ZC].get(B);if(G){if(X)G.count-=1;if(G.count<=0)this[ZC].delete(B),G.dispatcher.close();this[gq].delete(B)}};J=this[FRQ](A.origin,this[$a]).on("drain",this[WRQ]).on("connect",(X,G)=>{let W=this[ZC].get(B);if(W)W.count+=1;this[CRQ](X,G)}).on("disconnect",(X,G,W)=>{C(!0),this[XRQ](X,G,W)}).on("connectionError",(X,G,W)=>{C(!1),this[GRQ](X,G,W)}),this[ZC].set(B,{count:0,dispatcher:J}),this[gq].add(B)}return J.dispatch(A,Q)}[Wk0](){let A=[];for(let{dispatcher:Q}of this[ZC].values())A.push(Q.close());return this[ZC].clear(),Promise.all(A)}[Fk0](A){let Q=[];for(let{dispatcher:B}of this[ZC].values())Q.push(B.destroy(A));return this[ZC].clear(),Promise.all(Q)}get stats(){let A={};for(let{dispatcher:Q}of this[ZC].values())if(Q.stats)A[Q[$k0].origin]=Q.stats;return A}}$RQ.exports=ZRQ});var Ka=R((YrY,RRQ)=>{var{kProxy:Ua,kClose:HRQ,kDestroy:DRQ,kDispatch:URQ}=B0(),Hk0=o$(),NRQ=JV(),LRQ=f$(),{InvalidArgumentError:CV,RequestAbortedError:Dk0,SecureProxyConnectionError:Nk0}=QB(),ERQ=Eq(),qRQ=s$(),bS=Symbol("proxy agent"),mS=Symbol("proxy client"),GF=Symbol("proxy headers"),Ea=Symbol("request tls settings"),KRQ=Symbol("proxy tls settings"),VRQ=Symbol("connect endpoint function"),IRQ=Symbol("tunnel proxy");function Lk0(A){return A==="https:"?443:80}function qk0(A,Q){return new NRQ(A,Q)}var Mk0=()=>{};function zk0(A,Q){if(Q.connections===1)return new qRQ(A,Q);return new NRQ(A,Q)}class MRQ extends LRQ{#A;constructor(A,{headers:Q={},connect:B,factory:Y}){if(!A)throw new CV("Proxy URL is mandatory");super();if(this[GF]=Q,Y)this.#A=Y(A,{connect:B});else this.#A=new qRQ(A,{connect:B})}[URQ](A,Q){let B=Q.onHeaders;Q.onHeaders=function(X,G,W){if(X===407){if(typeof Q.onError==="function")Q.onError(new CV("Proxy Authentication Required (407)"));return}if(B)B.call(this,X,G,W)};let{origin:Y,path:J="/",headers:C={}}=A;if(A.path=Y+J,!("host"in C)&&!("Host"in C)){let{host:X}=new URL(Y);C.host=X}return A.headers={...this[GF],...C},this.#A[URQ](A,Q)}[HRQ](){return this.#A.close()}[DRQ](A){return this.#A.destroy(A)}}class zRQ extends LRQ{constructor(A){if(!A||typeof A==="object"&&!(A instanceof URL)&&!A.uri)throw new CV("Proxy uri is mandatory");let{clientFactory:Q=qk0}=A;if(typeof Q!=="function")throw new CV("Proxy opts.clientFactory must be a function.");let{proxyTunnel:B=!0}=A;super();let Y=this.#A(A),{href:J,origin:C,port:X,protocol:G,username:W,password:F,hostname:Z}=Y;if(this[Ua]={uri:J,protocol:G},this[Ea]=A.requestTls,this[KRQ]=A.proxyTls,this[GF]=A.headers||{},this[IRQ]=B,A.auth&&A.token)throw new CV("opts.auth cannot be used in combination with opts.token");else if(A.auth)this[GF]["proxy-authorization"]=`Basic ${A.auth}`;else if(A.token)this[GF]["proxy-authorization"]=A.token;else if(W&&F)this[GF]["proxy-authorization"]=`Basic ${Buffer.from(`${decodeURIComponent(W)}:${decodeURIComponent(F)}`).toString("base64")}`;let U=ERQ({...A.proxyTls});this[VRQ]=ERQ({...A.requestTls});let $=A.factory||zk0,E=(K,I)=>{let{protocol:V}=new URL(K);if(!this[IRQ]&&V==="http:"&&this[Ua].protocol==="http:")return new MRQ(this[Ua].uri,{headers:this[GF],connect:U,factory:$});return $(K,I)};this[mS]=Q(Y,{connect:U}),this[bS]=new Hk0({...A,factory:E,connect:async(K,I)=>{let V=K.host;if(!K.port)V+=`:${Lk0(K.protocol)}`;try{let{socket:H,statusCode:D}=await this[mS].connect({origin:C,port:X,path:V,signal:K.signal,headers:{...this[GF],host:K.host,...K.connections==null||K.connections>0?{"proxy-connection":"keep-alive"}:{}},servername:this[KRQ]?.servername||Z});if(D!==200)H.on("error",Mk0).destroy(),I(new Dk0(`Proxy response (${D}) !== 200 when HTTP Tunneling`));if(K.protocol!=="https:"){I(null,H);return}let L;if(this[Ea])L=this[Ea].servername;else L=K.servername;this[VRQ]({...K,servername:L,httpSocket:H},I)}catch(H){if(H.code==="ERR_TLS_CERT_ALTNAME_INVALID")I(new Nk0(H));else I(H)}}})}dispatch(A,Q){let B=Rk0(A.headers);if(wk0(B),B&&!("host"in B)&&!("Host"in B)){let{host:Y}=new URL(A.origin);B.host=Y}return this[bS].dispatch({...A,headers:B},Q)}#A(A){if(typeof A==="string")return new URL(A);else if(A instanceof URL)return A;else return new URL(A.uri)}[HRQ](){return Promise.all([this[bS].close(),this[mS].close()])}[DRQ](){return Promise.all([this[bS].destroy(),this[mS].destroy()])}}function Rk0(A){if(Array.isArray(A)){let Q={};for(let B=0;BB.toLowerCase()==="proxy-authorization"))throw new CV("Proxy-Authorization should be sent in ProxyAgent constructor")}RRQ.exports=zRQ});var SRQ=R((JrY,TRQ)=>{var jk0=f$(),{kClose:Ok0,kDestroy:Pk0,kClosed:wRQ,kDestroyed:jRQ,kDispatch:Tk0,kNoProxyAgent:hq,kHttpProxyAgent:WF,kHttpsProxyAgent:t$}=B0(),ORQ=Ka(),Sk0=o$(),kk0={"http:":80,"https:":443};class PRQ extends jk0{#A=null;#Q=null;#B=null;constructor(A={}){super();this.#B=A;let{httpProxy:Q,httpsProxy:B,noProxy:Y,...J}=A;this[hq]=new Sk0(J);let C=Q??process.env.http_proxy??process.env.HTTP_PROXY;if(C)this[WF]=new ORQ({...J,uri:C});else this[WF]=this[hq];let X=B??process.env.https_proxy??process.env.HTTPS_PROXY;if(X)this[t$]=new ORQ({...J,uri:X});else this[t$]=this[WF];this.#C()}[Tk0](A,Q){let B=new URL(A.origin);return this.#Y(B).dispatch(A,Q)}[Ok0](){return Promise.all([this[hq].close(),!this[WF][wRQ]&&this[WF].close(),!this[t$][wRQ]&&this[t$].close()])}[Pk0](A){return Promise.all([this[hq].destroy(A),!this[WF][jRQ]&&this[WF].destroy(A),!this[t$][jRQ]&&this[t$].destroy(A)])}#Y(A){let{protocol:Q,host:B,port:Y}=A;if(B=B.replace(/:\d*$/,"").toLowerCase(),Y=Number.parseInt(Y,10)||kk0[Q]||0,!this.#J(B,Y))return this[hq];if(Q==="https:")return this[t$];return this[WF]}#J(A,Q){if(this.#W)this.#C();if(this.#Q.length===0)return!0;if(this.#A==="*")return!1;for(let B=0;B{var XV=u("node:assert"),{kRetryHandlerDefaultRetry:kRQ}=B0(),{RequestRetryError:xq}=QB(),_k0=Zq(),{isDisturbed:_RQ,parseRangeHeader:vRQ,wrapRequestBody:vk0}=lQ();function yk0(A){let Q=new Date(A).getTime();return isNaN(Q)?0:Q-Date.now()}class Va{constructor(A,{dispatch:Q,handler:B}){let{retryOptions:Y,...J}=A,{retry:C,maxRetries:X,maxTimeout:G,minTimeout:W,timeoutFactor:F,methods:Z,errorCodes:U,retryAfter:$,statusCodes:E,throwOnError:K}=Y??{};this.error=null,this.dispatch=Q,this.handler=_k0.wrap(B),this.opts={...J,body:vk0(A.body)},this.retryOpts={throwOnError:K??!0,retry:C??Va[kRQ],retryAfter:$??!0,maxTimeout:G??30000,minTimeout:W??500,timeoutFactor:F??2,maxRetries:X??5,methods:Z??["GET","HEAD","OPTIONS","PUT","DELETE","TRACE"],statusCodes:E??[500,502,503,504,429],errorCodes:U??["ECONNRESET","ECONNREFUSED","ENOTFOUND","ENETDOWN","ENETUNREACH","EHOSTDOWN","EHOSTUNREACH","EPIPE","UND_ERR_SOCKET"]},this.retryCount=0,this.retryCountCheckpoint=0,this.headersSent=!1,this.start=0,this.end=null,this.etag=null}onResponseStartWithRetry(A,Q,B,Y,J){if(this.retryOpts.throwOnError){if(this.retryOpts.statusCodes.includes(Q)===!1)this.headersSent=!0,this.handler.onResponseStart?.(A,Q,B,Y);else this.error=J;return}if(_RQ(this.opts.body)){this.headersSent=!0,this.handler.onResponseStart?.(A,Q,B,Y);return}function C(X){if(X){this.headersSent=!0,this.headersSent=!0,this.handler.onResponseStart?.(A,Q,B,Y),A.resume();return}this.error=J,A.resume()}A.pause(),this.retryOpts.retry(J,{state:{counter:this.retryCount},opts:{retryOptions:this.retryOpts,...this.opts}},C.bind(this))}onRequestStart(A,Q){if(!this.headersSent)this.handler.onRequestStart?.(A,Q)}onRequestUpgrade(A,Q,B,Y){this.handler.onRequestUpgrade?.(A,Q,B,Y)}static[kRQ](A,{state:Q,opts:B},Y){let{statusCode:J,code:C,headers:X}=A,{method:G,retryOptions:W}=B,{maxRetries:F,minTimeout:Z,maxTimeout:U,timeoutFactor:$,statusCodes:E,errorCodes:K,methods:I}=W,{counter:V}=Q;if(C&&C!=="UND_ERR_REQ_RETRY"&&!K.includes(C)){Y(A);return}if(Array.isArray(I)&&!I.includes(G)){Y(A);return}if(J!=null&&Array.isArray(E)&&!E.includes(J)){Y(A);return}if(V>F){Y(A);return}let H=X?.["retry-after"];if(H)H=Number(H),H=Number.isNaN(H)?yk0(X["retry-after"]):H*1000;let D=H>0?Math.min(H,U):Math.min(Z*$**(V-1),U);setTimeout(()=>Y(null),D)}onResponseStart(A,Q,B,Y){if(this.error=null,this.retryCount+=1,Q>=300){let J=new xq("Request failed",Q,{headers:B,data:{count:this.retryCount}});this.onResponseStartWithRetry(A,Q,B,Y,J);return}if(this.headersSent){if(Q!==206&&(this.start>0||Q!==200))throw new xq("server does not support the range header and the payload was partially consumed",Q,{headers:B,data:{count:this.retryCount}});let J=vRQ(B["content-range"]);if(!J)throw new xq("Content-Range mismatch",Q,{headers:B,data:{count:this.retryCount}});if(this.etag!=null&&this.etag!==B.etag)throw new xq("ETag mismatch",Q,{headers:B,data:{count:this.retryCount}});let{start:C,size:X,end:G=X?X-1:null}=J;XV(this.start===C,"content-range mismatch"),XV(this.end==null||this.end===G,"content-range mismatch");return}if(this.end==null){if(Q===206){let J=vRQ(B["content-range"]);if(J==null){this.headersSent=!0,this.handler.onResponseStart?.(A,Q,B,Y);return}let{start:C,size:X,end:G=X?X-1:null}=J;XV(C!=null&&Number.isFinite(C),"content-range mismatch"),XV(G!=null&&Number.isFinite(G),"invalid content-length"),this.start=C,this.end=G}if(this.end==null){let J=B["content-length"];this.end=J!=null?Number(J)-1:null}if(XV(Number.isFinite(this.start)),XV(this.end==null||Number.isFinite(this.end),"invalid content-length"),this.resume=!0,this.etag=B.etag!=null?B.etag:null,this.etag!=null&&this.etag[0]==="W"&&this.etag[1]==="/")this.etag=null;this.headersSent=!0,this.handler.onResponseStart?.(A,Q,B,Y)}else throw new xq("Request failed",Q,{headers:B,data:{count:this.retryCount}})}onResponseData(A,Q){if(this.error)return;this.start+=Q.length,this.handler.onResponseData?.(A,Q)}onResponseEnd(A,Q){if(this.error&&this.retryOpts.throwOnError)throw this.error;if(!this.error)return this.retryCount=0,this.handler.onResponseEnd?.(A,Q);this.retry(A)}retry(A){if(this.start!==0){let Q={range:`bytes=${this.start}-${this.end??""}`};if(this.etag!=null)Q["if-match"]=this.etag;this.opts={...this.opts,headers:{...this.opts.headers,...Q}}}try{this.retryCountCheckpoint=this.retryCount,this.dispatch(this.opts,this)}catch(Q){this.handler.onResponseError?.(A,Q)}}onResponseError(A,Q){if(A?.aborted||_RQ(this.opts.body)){this.handler.onResponseError?.(A,Q);return}function B(Y){if(!Y){this.retry(A);return}this.handler?.onResponseError?.(A,Y)}if(this.retryCount-this.retryCountCheckpoint>0)this.retryCount=this.retryCountCheckpoint+(this.retryCount-this.retryCountCheckpoint);else this.retryCount+=1;this.retryOpts.retry(Q,{state:{counter:this.retryCount},opts:{retryOptions:this.retryOpts,...this.opts}},B.bind(this))}}yRQ.exports=Va});var xRQ=R((XrY,hRQ)=>{var gk0=$q(),hk0=uS();class gRQ extends gk0{#A=null;#Q=null;constructor(A,Q={}){super(Q);this.#A=A,this.#Q=Q}dispatch(A,Q){let B=new hk0({...A,retryOptions:this.#Q},{dispatch:this.#A.dispatch.bind(this.#A),handler:Q});return this.#A.dispatch(A,B)}close(){return this.#A.close()}destroy(){return this.#A.destroy()}}hRQ.exports=gRQ});var uRQ=R((GrY,mRQ)=>{var{connect:xk0}=u("node:net"),{kClose:fk0,kDestroy:bk0}=B0(),{InvalidArgumentError:fRQ}=QB(),mk0=lQ(),uk0=s$(),dk0=f$();class bRQ extends dk0{#A=null;constructor(A,Q){if(typeof A==="string")A=new URL(A);if(A.protocol!=="http:")throw new fRQ("h2c-client: Only h2c protocol is supported");let{connect:B,maxConcurrentStreams:Y,pipelining:J,...C}=Q??{},X=100,G=100;if(Y!=null&&Number.isInteger(Y)&&Y>0)X=Y;if(J!=null&&Number.isInteger(J)&&J>0)G=J;if(G>X)throw new fRQ("h2c-client: pipelining cannot be greater than maxConcurrentStreams");super();this.#A=new uk0(A,{...C,connect:this.#Q(B),maxConcurrentStreams:X,pipelining:G,allowH2:!0})}#Q(A){return(Q,B)=>{let Y=A?.connectOpts??1e4,{hostname:J,port:C,pathname:X}=Q,G=xk0({...Q,host:J,port:C,pathname:X});if(Q.keepAlive==null||Q.keepAlive){let F=Q.keepAliveInitialDelay==null?60000:Q.keepAliveInitialDelay;G.setKeepAlive(!0,F)}G.alpnProtocol="h2";let W=mk0.setupConnectTimeout(new WeakRef(G),{timeout:Y,hostname:J,port:C});return G.setNoDelay(!0).once("connect",function(){if(queueMicrotask(W),B){let F=B;B=null,F(null,this)}}).on("error",function(F){if(queueMicrotask(W),B){let Z=B;B=null,Z(F)}}),G}}dispatch(A,Q){return this.#A.dispatch(A,Q)}[fk0](){return this.#A.close()}[bk0](){return this.#A.destroy()}}mRQ.exports=bRQ});var oRQ=R((WrY,aRQ)=>{var pRQ=u("node:assert"),{Readable:ck0}=u("node:stream"),{RequestAbortedError:iRQ,NotSupportedError:lk0,InvalidArgumentError:pk0,AbortError:dS}=QB(),nRQ=lQ(),{ReadableStreamFrom:ik0}=lQ(),p8=Symbol("kConsume"),cS=Symbol("kReading"),e$=Symbol("kBody"),dRQ=Symbol("kAbort"),sRQ=Symbol("kContentType"),Ia=Symbol("kContentLength"),Ha=Symbol("kUsed"),lS=Symbol("kBytesRead"),nk0=()=>{};class rRQ extends ck0{constructor({resume:A,abort:Q,contentType:B="",contentLength:Y,highWaterMark:J=65536}){super({autoDestroy:!0,read:A,highWaterMark:J});this._readableState.dataEmitted=!1,this[dRQ]=Q,this[p8]=null,this[lS]=0,this[e$]=null,this[Ha]=!1,this[sRQ]=B,this[Ia]=Number.isFinite(Y)?Y:null,this[cS]=!1}_destroy(A,Q){if(!A&&!this._readableState.endEmitted)A=new iRQ;if(A)this[dRQ]();if(!this[Ha])setImmediate(Q,A);else Q(A)}on(A,Q){if(A==="data"||A==="readable")this[cS]=!0,this[Ha]=!0;return super.on(A,Q)}addListener(A,Q){return this.on(A,Q)}off(A,Q){let B=super.off(A,Q);if(A==="data"||A==="readable")this[cS]=this.listenerCount("data")>0||this.listenerCount("readable")>0;return B}removeListener(A,Q){return this.off(A,Q)}push(A){if(A){if(this[lS]+=A.length,this[p8])return Na(this[p8],A),this[cS]?super.push(A):!0}return super.push(A)}text(){return fq(this,"text")}json(){return fq(this,"json")}blob(){return fq(this,"blob")}bytes(){return fq(this,"bytes")}arrayBuffer(){return fq(this,"arrayBuffer")}async formData(){throw new lk0}get bodyUsed(){return nRQ.isDisturbed(this)}get body(){if(!this[e$]){if(this[e$]=ik0(this),this[p8])this[e$].getReader(),pRQ(this[e$].locked)}return this[e$]}dump(A){let Q=A?.signal;if(Q!=null&&(typeof Q!=="object"||!("aborted"in Q)))return Promise.reject(new pk0("signal must be an AbortSignal"));let B=A?.limit&&Number.isFinite(A.limit)?A.limit:131072;if(Q?.aborted)return Promise.reject(Q.reason??new dS);if(this._readableState.closeEmitted)return Promise.resolve(null);return new Promise((Y,J)=>{if(this[Ia]&&this[Ia]>B||this[lS]>B)this.destroy(new dS);if(Q){let C=()=>{this.destroy(Q.reason??new dS)};Q.addEventListener("abort",C),this.on("close",function(){if(Q.removeEventListener("abort",C),Q.aborted)J(Q.reason??new dS);else Y(null)})}else this.on("close",Y);this.on("error",nk0).on("data",()=>{if(this[lS]>B)this.destroy()}).resume()})}setEncoding(A){if(Buffer.isEncoding(A))this._readableState.encoding=A;return this}}function sk0(A){return A[e$]?.locked===!0||A[p8]!==null}function rk0(A){return nRQ.isDisturbed(A)||sk0(A)}function fq(A,Q){return pRQ(!A[p8]),new Promise((B,Y)=>{if(rk0(A)){let J=A._readableState;if(J.destroyed&&J.closeEmitted===!1)A.on("error",Y).on("close",()=>{Y(TypeError("unusable"))});else Y(J.errored??TypeError("unusable"))}else queueMicrotask(()=>{A[p8]={type:Q,stream:A,resolve:B,reject:Y,length:0,body:[]},A.on("error",function(J){La(this[p8],J)}).on("close",function(){if(this[p8].body!==null)La(this[p8],new iRQ)}),ak0(A[p8])})})}function ak0(A){if(A.body===null)return;let{_readableState:Q}=A.stream;if(Q.bufferIndex){let B=Q.bufferIndex,Y=Q.buffer.length;for(let J=B;J2&&Y[0]===239&&Y[1]===187&&Y[2]===191?3:0;if(!B||B==="utf8"||B==="utf-8")return Y.utf8Slice(C,J);else return Y.subarray(C,J).toString(B)}function cRQ(A,Q){if(A.length===0||Q===0)return new Uint8Array(0);if(A.length===1)return new Uint8Array(A[0]);let B=new Uint8Array(Buffer.allocUnsafeSlow(Q).buffer),Y=0;for(let J=0;J{var ok0=u("node:assert"),{AsyncResource:tk0}=u("node:async_hooks"),{Readable:ek0}=oRQ(),{InvalidArgumentError:GV,RequestAbortedError:tRQ}=QB(),$C=lQ();function bq(){}class qa extends tk0{constructor(A,Q){if(!A||typeof A!=="object")throw new GV("invalid opts");let{signal:B,method:Y,opaque:J,body:C,onInfo:X,responseHeaders:G,highWaterMark:W}=A;try{if(typeof Q!=="function")throw new GV("invalid callback");if(W&&(typeof W!=="number"||W<0))throw new GV("invalid highWaterMark");if(B&&typeof B.on!=="function"&&typeof B.addEventListener!=="function")throw new GV("signal must be an EventEmitter or EventTarget");if(Y==="CONNECT")throw new GV("invalid method");if(X&&typeof X!=="function")throw new GV("invalid onInfo callback");super("UNDICI_REQUEST")}catch(F){if($C.isStream(C))$C.destroy(C.on("error",bq),F);throw F}if(this.method=Y,this.responseHeaders=G||null,this.opaque=J||null,this.callback=Q,this.res=null,this.abort=null,this.body=C,this.trailers={},this.context=null,this.onInfo=X||null,this.highWaterMark=W,this.reason=null,this.removeAbortListener=null,B?.aborted)this.reason=B.reason??new tRQ;else if(B)this.removeAbortListener=$C.addAbortListener(B,()=>{if(this.reason=B.reason??new tRQ,this.res)$C.destroy(this.res.on("error",bq),this.reason);else if(this.abort)this.abort(this.reason)})}onConnect(A,Q){if(this.reason){A(this.reason);return}ok0(this.callback),this.abort=A,this.context=Q}onHeaders(A,Q,B,Y){let{callback:J,opaque:C,abort:X,context:G,responseHeaders:W,highWaterMark:F}=this,Z=W==="raw"?$C.parseRawHeaders(Q):$C.parseHeaders(Q);if(A<200){if(this.onInfo)this.onInfo({statusCode:A,headers:Z});return}let U=W==="raw"?$C.parseHeaders(Q):Z,$=U["content-type"],E=U["content-length"],K=new ek0({resume:B,abort:X,contentType:$,contentLength:this.method!=="HEAD"&&E?Number(E):null,highWaterMark:F});if(this.removeAbortListener)K.on("close",this.removeAbortListener),this.removeAbortListener=null;if(this.callback=null,this.res=K,J!==null)try{this.runInAsyncScope(J,null,null,{statusCode:A,headers:Z,trailers:this.trailers,opaque:C,body:K,context:G})}catch(I){this.res=null,$C.destroy(K.on("error",bq),I),queueMicrotask(()=>{throw I})}}onData(A){return this.res.push(A)}onComplete(A){$C.parseHeaders(A,this.trailers),this.res.push(null)}onError(A){let{res:Q,callback:B,body:Y,opaque:J}=this;if(B)this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(B,null,A,{opaque:J})});if(Q)this.res=null,queueMicrotask(()=>{$C.destroy(Q.on("error",bq),A)});if(Y){if(this.body=null,$C.isStream(Y))Y.on("error",bq),$C.destroy(Y,A)}if(this.removeAbortListener)this.removeAbortListener(),this.removeAbortListener=null}}function eRQ(A,Q){if(Q===void 0)return new Promise((B,Y)=>{eRQ.call(this,A,(J,C)=>{return J?Y(J):B(C)})});try{let B=new qa(A,Q);this.dispatch(A,B)}catch(B){if(typeof Q!=="function")throw B;let Y=A?.opaque;queueMicrotask(()=>Q(B,{opaque:Y}))}}Ma.exports=eRQ;Ma.exports.RequestHandler=qa});var mq=R((ZrY,YwQ)=>{var{addAbortListener:A_0}=lQ(),{RequestAbortedError:Q_0}=QB(),WV=Symbol("kListener"),SX=Symbol("kSignal");function QwQ(A){if(A.abort)A.abort(A[SX]?.reason);else A.reason=A[SX]?.reason??new Q_0;BwQ(A)}function B_0(A,Q){if(A.reason=null,A[SX]=null,A[WV]=null,!Q)return;if(Q.aborted){QwQ(A);return}A[SX]=Q,A[WV]=()=>{QwQ(A)},A_0(A[SX],A[WV])}function BwQ(A){if(!A[SX])return;if("removeEventListener"in A[SX])A[SX].removeEventListener("abort",A[WV]);else A[SX].removeListener("abort",A[WV]);A[SX]=null,A[WV]=null}YwQ.exports={addSignal:B_0,removeSignal:BwQ}});var WwQ=R(($rY,GwQ)=>{var Y_0=u("node:assert"),{finished:J_0}=u("node:stream"),{AsyncResource:C_0}=u("node:async_hooks"),{InvalidArgumentError:FV,InvalidReturnValueError:X_0}=QB(),xG=lQ(),{addSignal:G_0,removeSignal:JwQ}=mq();function W_0(){}class CwQ extends C_0{constructor(A,Q,B){if(!A||typeof A!=="object")throw new FV("invalid opts");let{signal:Y,method:J,opaque:C,body:X,onInfo:G,responseHeaders:W}=A;try{if(typeof B!=="function")throw new FV("invalid callback");if(typeof Q!=="function")throw new FV("invalid factory");if(Y&&typeof Y.on!=="function"&&typeof Y.addEventListener!=="function")throw new FV("signal must be an EventEmitter or EventTarget");if(J==="CONNECT")throw new FV("invalid method");if(G&&typeof G!=="function")throw new FV("invalid onInfo callback");super("UNDICI_STREAM")}catch(F){if(xG.isStream(X))xG.destroy(X.on("error",W_0),F);throw F}if(this.responseHeaders=W||null,this.opaque=C||null,this.factory=Q,this.callback=B,this.res=null,this.abort=null,this.context=null,this.trailers=null,this.body=X,this.onInfo=G||null,xG.isStream(X))X.on("error",(F)=>{this.onError(F)});G_0(this,Y)}onConnect(A,Q){if(this.reason){A(this.reason);return}Y_0(this.callback),this.abort=A,this.context=Q}onHeaders(A,Q,B,Y){let{factory:J,opaque:C,context:X,responseHeaders:G}=this,W=G==="raw"?xG.parseRawHeaders(Q):xG.parseHeaders(Q);if(A<200){if(this.onInfo)this.onInfo({statusCode:A,headers:W});return}if(this.factory=null,J===null)return;let F=this.runInAsyncScope(J,null,{statusCode:A,headers:W,opaque:C,context:X});if(!F||typeof F.write!=="function"||typeof F.end!=="function"||typeof F.on!=="function")throw new X_0("expected Writable");return J_0(F,{readable:!1},(U)=>{let{callback:$,res:E,opaque:K,trailers:I,abort:V}=this;if(this.res=null,U||!E?.readable)xG.destroy(E,U);if(this.callback=null,this.runInAsyncScope($,null,U||null,{opaque:K,trailers:I}),U)V()}),F.on("drain",B),this.res=F,(F.writableNeedDrain!==void 0?F.writableNeedDrain:F._writableState?.needDrain)!==!0}onData(A){let{res:Q}=this;return Q?Q.write(A):!0}onComplete(A){let{res:Q}=this;if(JwQ(this),!Q)return;this.trailers=xG.parseHeaders(A),Q.end()}onError(A){let{res:Q,callback:B,opaque:Y,body:J}=this;if(JwQ(this),this.factory=null,Q)this.res=null,xG.destroy(Q,A);else if(B)this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(B,null,A,{opaque:Y})});if(J)this.body=null,xG.destroy(J,A)}}function XwQ(A,Q,B){if(B===void 0)return new Promise((Y,J)=>{XwQ.call(this,A,Q,(C,X)=>{return C?J(C):Y(X)})});try{let Y=new CwQ(A,Q,B);this.dispatch(A,Y)}catch(Y){if(typeof B!=="function")throw Y;let J=A?.opaque;queueMicrotask(()=>B(Y,{opaque:J}))}}GwQ.exports=XwQ});var VwQ=R((UrY,KwQ)=>{var{Readable:ZwQ,Duplex:F_0,PassThrough:Z_0}=u("node:stream"),$_0=u("node:assert"),{AsyncResource:U_0}=u("node:async_hooks"),{InvalidArgumentError:uq,InvalidReturnValueError:E_0,RequestAbortedError:za}=QB(),kX=lQ(),{addSignal:K_0,removeSignal:V_0}=mq();function FwQ(){}var ZV=Symbol("resume");class $wQ extends ZwQ{constructor(){super({autoDestroy:!0});this[ZV]=null}_read(){let{[ZV]:A}=this;if(A)this[ZV]=null,A()}_destroy(A,Q){this._read(),Q(A)}}class UwQ extends ZwQ{constructor(A){super({autoDestroy:!0});this[ZV]=A}_read(){this[ZV]()}_destroy(A,Q){if(!A&&!this._readableState.endEmitted)A=new za;Q(A)}}class EwQ extends U_0{constructor(A,Q){if(!A||typeof A!=="object")throw new uq("invalid opts");if(typeof Q!=="function")throw new uq("invalid handler");let{signal:B,method:Y,opaque:J,onInfo:C,responseHeaders:X}=A;if(B&&typeof B.on!=="function"&&typeof B.addEventListener!=="function")throw new uq("signal must be an EventEmitter or EventTarget");if(Y==="CONNECT")throw new uq("invalid method");if(C&&typeof C!=="function")throw new uq("invalid onInfo callback");super("UNDICI_PIPELINE");this.opaque=J||null,this.responseHeaders=X||null,this.handler=Q,this.abort=null,this.context=null,this.onInfo=C||null,this.req=new $wQ().on("error",FwQ),this.ret=new F_0({readableObjectMode:A.objectMode,autoDestroy:!0,read:()=>{let{body:G}=this;if(G?.resume)G.resume()},write:(G,W,F)=>{let{req:Z}=this;if(Z.push(G,W)||Z._readableState.destroyed)F();else Z[ZV]=F},destroy:(G,W)=>{let{body:F,req:Z,res:U,ret:$,abort:E}=this;if(!G&&!$._readableState.endEmitted)G=new za;if(E&&G)E();kX.destroy(F,G),kX.destroy(Z,G),kX.destroy(U,G),V_0(this),W(G)}}).on("prefinish",()=>{let{req:G}=this;G.push(null)}),this.res=null,K_0(this,B)}onConnect(A,Q){let{res:B}=this;if(this.reason){A(this.reason);return}$_0(!B,"pipeline cannot be retried"),this.abort=A,this.context=Q}onHeaders(A,Q,B){let{opaque:Y,handler:J,context:C}=this;if(A<200){if(this.onInfo){let G=this.responseHeaders==="raw"?kX.parseRawHeaders(Q):kX.parseHeaders(Q);this.onInfo({statusCode:A,headers:G})}return}this.res=new UwQ(B);let X;try{this.handler=null;let G=this.responseHeaders==="raw"?kX.parseRawHeaders(Q):kX.parseHeaders(Q);X=this.runInAsyncScope(J,null,{statusCode:A,headers:G,opaque:Y,body:this.res,context:C})}catch(G){throw this.res.on("error",FwQ),G}if(!X||typeof X.on!=="function")throw new E_0("expected Readable");X.on("data",(G)=>{let{ret:W,body:F}=this;if(!W.push(G)&&F.pause)F.pause()}).on("error",(G)=>{let{ret:W}=this;kX.destroy(W,G)}).on("end",()=>{let{ret:G}=this;G.push(null)}).on("close",()=>{let{ret:G}=this;if(!G._readableState.ended)kX.destroy(G,new za)}),this.body=X}onData(A){let{res:Q}=this;return Q.push(A)}onComplete(A){let{res:Q}=this;Q.push(null)}onError(A){let{ret:Q}=this;this.handler=null,kX.destroy(Q,A)}}function I_0(A,Q){try{let B=new EwQ(A,Q);return this.dispatch({...A,body:B.req},B),B.ret}catch(B){return new Z_0().destroy(B)}}KwQ.exports=I_0});var MwQ=R((ErY,qwQ)=>{var{InvalidArgumentError:Ra,SocketError:H_0}=QB(),{AsyncResource:D_0}=u("node:async_hooks"),IwQ=u("node:assert"),HwQ=lQ(),{addSignal:N_0,removeSignal:DwQ}=mq();class NwQ extends D_0{constructor(A,Q){if(!A||typeof A!=="object")throw new Ra("invalid opts");if(typeof Q!=="function")throw new Ra("invalid callback");let{signal:B,opaque:Y,responseHeaders:J}=A;if(B&&typeof B.on!=="function"&&typeof B.addEventListener!=="function")throw new Ra("signal must be an EventEmitter or EventTarget");super("UNDICI_UPGRADE");this.responseHeaders=J||null,this.opaque=Y||null,this.callback=Q,this.abort=null,this.context=null,N_0(this,B)}onConnect(A,Q){if(this.reason){A(this.reason);return}IwQ(this.callback),this.abort=A,this.context=null}onHeaders(){throw new H_0("bad upgrade",null)}onUpgrade(A,Q,B){IwQ(A===101);let{callback:Y,opaque:J,context:C}=this;DwQ(this),this.callback=null;let X=this.responseHeaders==="raw"?HwQ.parseRawHeaders(Q):HwQ.parseHeaders(Q);this.runInAsyncScope(Y,null,null,{headers:X,socket:B,opaque:J,context:C})}onError(A){let{callback:Q,opaque:B}=this;if(DwQ(this),Q)this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(Q,null,A,{opaque:B})})}}function LwQ(A,Q){if(Q===void 0)return new Promise((B,Y)=>{LwQ.call(this,A,(J,C)=>{return J?Y(J):B(C)})});try{let B=new NwQ(A,Q),Y={...A,method:A.method||"GET",upgrade:A.protocol||"Websocket"};this.dispatch(Y,B)}catch(B){if(typeof Q!=="function")throw B;let Y=A?.opaque;queueMicrotask(()=>Q(B,{opaque:Y}))}}qwQ.exports=LwQ});var PwQ=R((KrY,OwQ)=>{var L_0=u("node:assert"),{AsyncResource:q_0}=u("node:async_hooks"),{InvalidArgumentError:wa,SocketError:M_0}=QB(),zwQ=lQ(),{addSignal:z_0,removeSignal:RwQ}=mq();class wwQ extends q_0{constructor(A,Q){if(!A||typeof A!=="object")throw new wa("invalid opts");if(typeof Q!=="function")throw new wa("invalid callback");let{signal:B,opaque:Y,responseHeaders:J}=A;if(B&&typeof B.on!=="function"&&typeof B.addEventListener!=="function")throw new wa("signal must be an EventEmitter or EventTarget");super("UNDICI_CONNECT");this.opaque=Y||null,this.responseHeaders=J||null,this.callback=Q,this.abort=null,z_0(this,B)}onConnect(A,Q){if(this.reason){A(this.reason);return}L_0(this.callback),this.abort=A,this.context=Q}onHeaders(){throw new M_0("bad connect",null)}onUpgrade(A,Q,B){let{callback:Y,opaque:J,context:C}=this;RwQ(this),this.callback=null;let X=Q;if(X!=null)X=this.responseHeaders==="raw"?zwQ.parseRawHeaders(Q):zwQ.parseHeaders(Q);this.runInAsyncScope(Y,null,null,{statusCode:A,headers:X,socket:B,opaque:J,context:C})}onError(A){let{callback:Q,opaque:B}=this;if(RwQ(this),Q)this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(Q,null,A,{opaque:B})})}}function jwQ(A,Q){if(Q===void 0)return new Promise((B,Y)=>{jwQ.call(this,A,(J,C)=>{return J?Y(J):B(C)})});try{let B=new wwQ(A,Q),Y={...A,method:"CONNECT"};this.dispatch(Y,B)}catch(B){if(typeof Q!=="function")throw B;let Y=A?.opaque;queueMicrotask(()=>Q(B,{opaque:Y}))}}OwQ.exports=jwQ});var TwQ=R((R_0,$V)=>{R_0.request=AwQ();R_0.stream=WwQ();R_0.pipeline=VwQ();R_0.upgrade=MwQ();R_0.connect=PwQ()});var ja=R((VrY,_wQ)=>{var{UndiciError:S_0}=QB(),SwQ=Symbol.for("undici.error.UND_MOCK_ERR_MOCK_NOT_MATCHED");class kwQ extends S_0{constructor(A){super(A);this.name="MockNotMatchedError",this.message=A||"The request does not match any registered mock dispatches",this.code="UND_MOCK_ERR_MOCK_NOT_MATCHED"}static[Symbol.hasInstance](A){return A&&A[SwQ]===!0}get[SwQ](){return!0}}_wQ.exports={MockNotMatchedError:kwQ}});var A4=R((IrY,vwQ)=>{vwQ.exports={kAgent:Symbol("agent"),kOptions:Symbol("options"),kFactory:Symbol("factory"),kDispatches:Symbol("dispatches"),kDispatchKey:Symbol("dispatch key"),kDefaultHeaders:Symbol("default headers"),kDefaultTrailers:Symbol("default trailers"),kContentLength:Symbol("content length"),kMockAgent:Symbol("mock agent"),kMockAgentSet:Symbol("mock agent set"),kMockAgentGet:Symbol("mock agent get"),kMockDispatch:Symbol("mock dispatch"),kClose:Symbol("close"),kOriginalClose:Symbol("original agent close"),kOriginalDispatch:Symbol("original dispatch"),kOrigin:Symbol("origin"),kIsMockActive:Symbol("is mock active"),kNetConnect:Symbol("net connect"),kGetNetConnect:Symbol("get net connect"),kConnected:Symbol("connected"),kIgnoreTrailingSlash:Symbol("ignore trailing slash"),kMockAgentMockCallHistoryInstance:Symbol("mock agent mock call history name"),kMockAgentRegisterCallHistory:Symbol("mock agent register mock call history"),kMockAgentAddCallHistoryLog:Symbol("mock agent add call history log"),kMockAgentIsCallHistoryEnabled:Symbol("mock agent is call history enabled"),kMockAgentAcceptsNonStandardSearchParameters:Symbol("mock agent accepts non standard search parameters"),kMockCallHistoryAddLog:Symbol("mock call history add log")}});var dq=R((HrY,lwQ)=>{var{MockNotMatchedError:UV}=ja(),{kDispatches:pS,kMockAgent:k_0,kOriginalDispatch:__0,kOrigin:v_0,kGetNetConnect:y_0}=A4(),{serializePathWithQuery:g_0}=lQ(),{STATUS_CODES:h_0}=u("node:http"),{types:{isPromise:x_0}}=u("node:util"),{InvalidArgumentError:Oa}=QB();function _X(A,Q){if(typeof A==="string")return A===Q;if(A instanceof RegExp)return A.test(Q);if(typeof A==="function")return A(Q)===!0;return!1}function gwQ(A){return Object.fromEntries(Object.entries(A).map(([Q,B])=>{return[Q.toLocaleLowerCase(),B]}))}function hwQ(A,Q){if(Array.isArray(A)){for(let B=0;B"u")return!0;if(typeof Q!=="object"||typeof A.headers!=="object")return!1;for(let[B,Y]of Object.entries(A.headers)){let J=hwQ(Q,B);if(!_X(Y,J))return!1}return!0}function f_0(A){if(typeof A!=="string")return A;let Q=new URLSearchParams(A),B=new URLSearchParams;for(let[Y,J]of Q.entries()){if(Y=Y.replace("[]",""),/^(['"]).*\1$/.test(J)){B.append(Y,J);continue}if(J.includes(",")){let X=J.split(",");for(let G of X)B.append(Y,G);continue}B.append(Y,J)}return B}function Pa(A){if(typeof A!=="string")return A;let Q=A.split("?",3);if(Q.length!==2)return A;let B=new URLSearchParams(Q.pop());return B.sort(),[...Q,B.toString()].join("?")}function b_0(A,{path:Q,method:B,body:Y,headers:J}){let C=_X(A.path,Q),X=_X(A.method,B),G=typeof A.body<"u"?_X(A.body,Y):!0,W=xwQ(A,J);return C&&X&&G&&W}function fwQ(A){if(Buffer.isBuffer(A))return A;else if(A instanceof Uint8Array)return A;else if(A instanceof ArrayBuffer)return A;else if(typeof A==="object")return JSON.stringify(A);else if(A)return A.toString();else return""}function bwQ(A,Q){let B=Q.query?g_0(Q.path,Q.query):Q.path,Y=typeof B==="string"?Pa(B):B,J=ywQ(Y),C=A.filter(({consumed:X})=>!X).filter(({path:X,ignoreTrailingSlash:G})=>{return G?_X(ywQ(Pa(X)),J):_X(Pa(X),Y)});if(C.length===0)throw new UV(`Mock dispatch not matched for path '${Y}'`);if(C=C.filter(({method:X})=>_X(X,Q.method)),C.length===0)throw new UV(`Mock dispatch not matched for method '${Q.method}' on path '${Y}'`);if(C=C.filter(({body:X})=>typeof X<"u"?_X(X,Q.body):!0),C.length===0)throw new UV(`Mock dispatch not matched for body '${Q.body}' on path '${Y}'`);if(C=C.filter((X)=>xwQ(X,Q.headers)),C.length===0){let X=typeof Q.headers==="object"?JSON.stringify(Q.headers):Q.headers;throw new UV(`Mock dispatch not matched for headers '${X}' on path '${Y}'`)}return C[0]}function m_0(A,Q,B,Y){let J={timesInvoked:0,times:1,persist:!1,consumed:!1,...Y},C=typeof B==="function"?{callback:B}:{...B},X={...J,...Q,pending:!0,data:{error:null,...C}};return A.push(X),X}function Ta(A,Q){let B=A.findIndex((Y)=>{if(!Y.consumed)return!1;return b_0(Y,Q)});if(B!==-1)A.splice(B,1)}function ywQ(A){while(A.endsWith("/"))A=A.slice(0,-1);if(A.length===0)A="/";return A}function mwQ(A){let{path:Q,method:B,body:Y,headers:J,query:C}=A;return{path:Q,method:B,body:Y,headers:J,query:C}}function Sa(A){let Q=Object.keys(A),B=[];for(let Y=0;Y=$,Y.pending=U<$,W!==null)return Ta(this[pS],B),Q.onError(W),!0;if(typeof F==="number"&&F>0)setTimeout(()=>{E(this[pS])},F);else E(this[pS]);function E(I,V=C){let H=Array.isArray(A.headers)?ka(A.headers):A.headers,D=typeof V==="function"?V({...A,headers:H}):V;if(x_0(D)){D.then((N)=>E(I,N));return}let L=fwQ(D),z=Sa(X),M=Sa(G);Q.onConnect?.((N)=>Q.onError(N),null),Q.onHeaders?.(J,z,K,uwQ(J)),Q.onData?.(Buffer.from(L)),Q.onComplete?.(M),Ta(I,B)}function K(){}return!0}function d_0(){let A=this[k_0],Q=this[v_0],B=this[__0];return function(J,C){if(A.isMockActive)try{dwQ.call(this,J,C)}catch(X){if(X.code==="UND_MOCK_ERR_MOCK_NOT_MATCHED"){let G=A[y_0]();if(G===!1)throw new UV(`${X.message}: subsequent request to origin ${Q} was not allowed (net.connect disabled)`);if(cwQ(G,Q))B.call(this,J,C);else throw new UV(`${X.message}: subsequent request to origin ${Q} was not allowed (net.connect is not enabled for this origin)`)}else throw X}else B.call(this,J,C)}}function cwQ(A,Q){let B=new URL(Q);if(A===!0)return!0;else if(Array.isArray(A)&&A.some((Y)=>_X(Y,B.host)))return!0;return!1}function c_0(A){let{agent:Q,...B}=A;if("enableCallHistory"in B&&typeof B.enableCallHistory!=="boolean")throw new Oa("options.enableCallHistory must to be a boolean");if("acceptNonStandardSearchParameters"in B&&typeof B.acceptNonStandardSearchParameters!=="boolean")throw new Oa("options.acceptNonStandardSearchParameters must to be a boolean");if("ignoreTrailingSlash"in B&&typeof B.ignoreTrailingSlash!=="boolean")throw new Oa("options.ignoreTrailingSlash must to be a boolean");return B}lwQ.exports={getResponseData:fwQ,getMockDispatch:bwQ,addMockDispatch:m_0,deleteMockDispatch:Ta,buildKey:mwQ,generateKeyValues:Sa,matchValue:_X,getResponse:u_0,getStatusText:uwQ,mockDispatch:dwQ,buildMockDispatch:d_0,checkNetConnect:cwQ,buildAndValidateMockOptions:c_0,getHeaderByName:hwQ,buildHeadersFromArray:ka,normalizeSearchParams:f_0}});var xa=R((n_0,ha)=>{var{getResponseData:l_0,buildKey:p_0,addMockDispatch:_a}=dq(),{kDispatches:iS,kDispatchKey:nS,kDefaultHeaders:va,kDefaultTrailers:ya,kContentLength:ga,kMockDispatch:sS,kIgnoreTrailingSlash:rS}=A4(),{InvalidArgumentError:vX}=QB(),{serializePathWithQuery:i_0}=lQ();class cq{constructor(A){this[sS]=A}delay(A){if(typeof A!=="number"||!Number.isInteger(A)||A<=0)throw new vX("waitInMs must be a valid integer > 0");return this[sS].delay=A,this}persist(){return this[sS].persist=!0,this}times(A){if(typeof A!=="number"||!Number.isInteger(A)||A<=0)throw new vX("repeatTimes must be a valid integer > 0");return this[sS].times=A,this}}class pwQ{constructor(A,Q){if(typeof A!=="object")throw new vX("opts must be an object");if(typeof A.path>"u")throw new vX("opts.path must be defined");if(typeof A.method>"u")A.method="GET";if(typeof A.path==="string")if(A.query)A.path=i_0(A.path,A.query);else{let B=new URL(A.path,"data://");A.path=B.pathname+B.search}if(typeof A.method==="string")A.method=A.method.toUpperCase();this[nS]=p_0(A),this[iS]=Q,this[rS]=A.ignoreTrailingSlash??!1,this[va]={},this[ya]={},this[ga]=!1}createMockScopeDispatchData({statusCode:A,data:Q,responseOptions:B}){let Y=l_0(Q),J=this[ga]?{"content-length":Y.length}:{},C={...this[va],...J,...B.headers},X={...this[ya],...B.trailers};return{statusCode:A,data:Q,headers:C,trailers:X}}validateReplyParameters(A){if(typeof A.statusCode>"u")throw new vX("statusCode must be defined");if(typeof A.responseOptions!=="object"||A.responseOptions===null)throw new vX("responseOptions must be an object")}reply(A){if(typeof A==="function"){let J=(X)=>{let G=A(X);if(typeof G!=="object"||G===null)throw new vX("reply options callback must return an object");let W={data:"",responseOptions:{},...G};return this.validateReplyParameters(W),{...this.createMockScopeDispatchData(W)}},C=_a(this[iS],this[nS],J,{ignoreTrailingSlash:this[rS]});return new cq(C)}let Q={statusCode:A,data:arguments[1]===void 0?"":arguments[1],responseOptions:arguments[2]===void 0?{}:arguments[2]};this.validateReplyParameters(Q);let B=this.createMockScopeDispatchData(Q),Y=_a(this[iS],this[nS],B,{ignoreTrailingSlash:this[rS]});return new cq(Y)}replyWithError(A){if(typeof A>"u")throw new vX("error must be defined");let Q=_a(this[iS],this[nS],{error:A},{ignoreTrailingSlash:this[rS]});return new cq(Q)}defaultReplyHeaders(A){if(typeof A>"u")throw new vX("headers must be defined");return this[va]=A,this}defaultReplyTrailers(A){if(typeof A>"u")throw new vX("trailers must be defined");return this[ya]=A,this}replyContentLength(){return this[ga]=!0,this}}n_0.MockInterceptor=pwQ;n_0.MockScope=cq});var ma=R((DrY,ewQ)=>{var{promisify:a_0}=u("node:util"),o_0=s$(),{buildMockDispatch:t_0}=dq(),{kDispatches:fa,kMockAgent:iwQ,kClose:nwQ,kOriginalClose:swQ,kOrigin:rwQ,kOriginalDispatch:e_0,kConnected:ba,kIgnoreTrailingSlash:awQ}=A4(),{MockInterceptor:Av0}=xa(),owQ=B0(),{InvalidArgumentError:Qv0}=QB();class twQ extends o_0{constructor(A,Q){if(!Q||!Q.agent||typeof Q.agent.dispatch!=="function")throw new Qv0("Argument opts.agent must implement Agent");super(A,Q);this[iwQ]=Q.agent,this[rwQ]=A,this[awQ]=Q.ignoreTrailingSlash??!1,this[fa]=[],this[ba]=1,this[e_0]=this.dispatch,this[swQ]=this.close.bind(this),this.dispatch=t_0.call(this),this.close=this[nwQ]}get[owQ.kConnected](){return this[ba]}intercept(A){return new Av0(A&&{ignoreTrailingSlash:this[awQ],...A},this[fa])}cleanMocks(){this[fa]=[]}async[nwQ](){await a_0(this[swQ])(),this[ba]=0,this[iwQ][owQ.kClients].delete(this[rwQ])}}ewQ.exports=twQ});var ca=R((Cv0,da)=>{var{kMockCallHistoryAddLog:Bv0}=A4(),{InvalidArgumentError:$F}=QB();function FF(A,Q,B,Y){switch(Q.operator){case"OR":return Y.push(...B(A)),Y;case"AND":return B.call({logs:Y},A);default:throw new $F("options.operator must to be a case insensitive string equal to 'OR' or 'AND'")}}function Yv0(A={}){let Q={};if("operator"in A){if(typeof A.operator!=="string"||A.operator.toUpperCase()!=="OR"&&A.operator.toUpperCase()!=="AND")throw new $F("options.operator must to be a case insensitive string equal to 'OR' or 'AND'");return{...Q,operator:A.operator.toUpperCase()}}return Q}function ZF(A){return(Q)=>{if(typeof Q==="string"||Q==null)return this.logs.filter((B)=>{return B[A]===Q});if(Q instanceof RegExp)return this.logs.filter((B)=>{return Q.test(B[A])});throw new $F(`${A} parameter should be one of string, regexp, undefined or null`)}}function Jv0(A){try{let Q=new URL(A.path,A.origin);if(Q.search.length!==0)return Q;return Q.search=new URLSearchParams(A.query).toString(),Q}catch(Q){throw new $F("An error occurred when computing MockCallHistoryLog.url",{cause:Q})}}class ua{constructor(A={}){this.body=A.body,this.headers=A.headers,this.method=A.method;let Q=Jv0(A);this.fullUrl=Q.toString(),this.origin=Q.origin,this.path=Q.pathname,this.searchParams=Object.fromEntries(Q.searchParams),this.protocol=Q.protocol,this.host=Q.host,this.port=Q.port,this.hash=Q.hash}toMap(){return new Map([["protocol",this.protocol],["host",this.host],["port",this.port],["origin",this.origin],["path",this.path],["hash",this.hash],["searchParams",this.searchParams],["fullUrl",this.fullUrl],["method",this.method],["body",this.body],["headers",this.headers]])}toString(){let A={betweenKeyValueSeparator:"->",betweenPairSeparator:"|"},Q="";return this.toMap().forEach((B,Y)=>{if(typeof B==="string"||B===void 0||B===null)Q=`${Q}${Y}${A.betweenKeyValueSeparator}${B}${A.betweenPairSeparator}`;if(typeof B==="object"&&B!==null||Array.isArray(B))Q=`${Q}${Y}${A.betweenKeyValueSeparator}${JSON.stringify(B)}${A.betweenPairSeparator}`}),Q.slice(0,-1)}}class AjQ{logs=[];calls(){return this.logs}firstCall(){return this.logs.at(0)}lastCall(){return this.logs.at(-1)}nthCall(A){if(typeof A!=="number")throw new $F("nthCall must be called with a number");if(!Number.isInteger(A))throw new $F("nthCall must be called with an integer");if(Math.sign(A)!==1)throw new $F("nthCall must be called with a positive value. use firstCall or lastCall instead");return this.logs.at(A-1)}filterCalls(A,Q){if(this.logs.length===0)return this.logs;if(typeof A==="function")return this.logs.filter(A);if(A instanceof RegExp)return this.logs.filter((B)=>{return A.test(B.toString())});if(typeof A==="object"&&A!==null){if(Object.keys(A).length===0)return this.logs;let B={operator:"OR",...Yv0(Q)},Y=[];if("protocol"in A)Y=FF(A.protocol,B,this.filterCallsByProtocol,Y);if("host"in A)Y=FF(A.host,B,this.filterCallsByHost,Y);if("port"in A)Y=FF(A.port,B,this.filterCallsByPort,Y);if("origin"in A)Y=FF(A.origin,B,this.filterCallsByOrigin,Y);if("path"in A)Y=FF(A.path,B,this.filterCallsByPath,Y);if("hash"in A)Y=FF(A.hash,B,this.filterCallsByHash,Y);if("fullUrl"in A)Y=FF(A.fullUrl,B,this.filterCallsByFullUrl,Y);if("method"in A)Y=FF(A.method,B,this.filterCallsByMethod,Y);return[...new Set(Y)]}throw new $F("criteria parameter should be one of function, regexp, or object")}filterCallsByProtocol=ZF.call(this,"protocol");filterCallsByHost=ZF.call(this,"host");filterCallsByPort=ZF.call(this,"port");filterCallsByOrigin=ZF.call(this,"origin");filterCallsByPath=ZF.call(this,"path");filterCallsByHash=ZF.call(this,"hash");filterCallsByFullUrl=ZF.call(this,"fullUrl");filterCallsByMethod=ZF.call(this,"method");clear(){this.logs=[]}[Bv0](A){let Q=new ua(A);return this.logs.push(Q),Q}*[Symbol.iterator](){for(let A of this.calls())yield A}}Cv0.MockCallHistory=AjQ;Cv0.MockCallHistoryLog=ua});var ia=R((NrY,WjQ)=>{var{promisify:Wv0}=u("node:util"),Fv0=JV(),{buildMockDispatch:Zv0}=dq(),{kDispatches:la,kMockAgent:QjQ,kClose:BjQ,kOriginalClose:YjQ,kOrigin:JjQ,kOriginalDispatch:$v0,kConnected:pa,kIgnoreTrailingSlash:CjQ}=A4(),{MockInterceptor:Uv0}=xa(),XjQ=B0(),{InvalidArgumentError:Ev0}=QB();class GjQ extends Fv0{constructor(A,Q){if(!Q||!Q.agent||typeof Q.agent.dispatch!=="function")throw new Ev0("Argument opts.agent must implement Agent");super(A,Q);this[QjQ]=Q.agent,this[JjQ]=A,this[CjQ]=Q.ignoreTrailingSlash??!1,this[la]=[],this[pa]=1,this[$v0]=this.dispatch,this[YjQ]=this.close.bind(this),this.dispatch=Zv0.call(this),this.close=this[BjQ]}get[XjQ.kConnected](){return this[pa]}intercept(A){return new Uv0(A&&{ignoreTrailingSlash:this[CjQ],...A},this[la])}cleanMocks(){this[la]=[]}async[BjQ](){await Wv0(this[YjQ])(),this[pa]=0,this[QjQ][XjQ.kClients].delete(this[JjQ])}}WjQ.exports=GjQ});var ZjQ=R((LrY,FjQ)=>{var{Transform:Kv0}=u("node:stream"),{Console:Vv0}=u("node:console"),Iv0=process.versions.icu?"✅":"Y ",Hv0=process.versions.icu?"❌":"N ";FjQ.exports=class{constructor({disableColors:Q}={}){this.transform=new Kv0({transform(B,Y,J){J(null,B)}}),this.logger=new Vv0({stdout:this.transform,inspectOptions:{colors:!Q&&!process.env.CI}})}format(Q){let B=Q.map(({method:Y,path:J,data:{statusCode:C},persist:X,times:G,timesInvoked:W,origin:F})=>({Method:Y,Origin:F,Path:J,"Status code":C,Persistent:X?Iv0:Hv0,Invocations:W,Remaining:X?1/0:G-W}));return this.logger.table(B),this.transform.read().toString()}}});var aa=R((qrY,HjQ)=>{var{kClients:Q4}=B0(),Dv0=o$(),{kAgent:na,kMockAgentSet:aS,kMockAgentGet:$jQ,kDispatches:sa,kIsMockActive:oS,kNetConnect:B4,kGetNetConnect:Nv0,kOptions:tS,kFactory:eS,kMockAgentRegisterCallHistory:ra,kMockAgentIsCallHistoryEnabled:lq,kMockAgentAddCallHistoryLog:UjQ,kMockAgentMockCallHistoryInstance:EV,kMockAgentAcceptsNonStandardSearchParameters:EjQ,kMockCallHistoryAddLog:Lv0,kIgnoreTrailingSlash:KjQ}=A4(),qv0=ma(),Mv0=ia(),{matchValue:zv0,normalizeSearchParams:Rv0,buildAndValidateMockOptions:wv0}=dq(),{InvalidArgumentError:VjQ,UndiciError:jv0}=QB(),Ov0=$q(),Pv0=ZjQ(),{MockCallHistory:Tv0}=ca();class IjQ extends Ov0{constructor(A={}){super(A);let Q=wv0(A);if(this[B4]=!0,this[oS]=!0,this[lq]=Q.enableCallHistory??!1,this[EjQ]=Q.acceptNonStandardSearchParameters??!1,this[KjQ]=Q.ignoreTrailingSlash??!1,A?.agent&&typeof A.agent.dispatch!=="function")throw new VjQ("Argument opts.agent must implement Agent");let B=A?.agent?A.agent:new Dv0(A);if(this[na]=B,this[Q4]=B[Q4],this[tS]=Q,this[lq])this[ra]()}get(A){let Q=this[KjQ]?A.replace(/\/$/,""):A,B=this[$jQ](Q);if(!B)B=this[eS](Q),this[aS](Q,B);return B}dispatch(A,Q){this.get(A.origin),this[UjQ](A);let B=this[EjQ],Y={...A};if(B&&Y.path){let[J,C]=Y.path.split("?"),X=Rv0(C,B);Y.path=`${J}?${X}`}return this[na].dispatch(Y,Q)}async close(){this.clearCallHistory(),await this[na].close(),this[Q4].clear()}deactivate(){this[oS]=!1}activate(){this[oS]=!0}enableNetConnect(A){if(typeof A==="string"||typeof A==="function"||A instanceof RegExp)if(Array.isArray(this[B4]))this[B4].push(A);else this[B4]=[A];else if(typeof A>"u")this[B4]=!0;else throw new VjQ("Unsupported matcher. Must be one of String|Function|RegExp.")}disableNetConnect(){this[B4]=!1}enableCallHistory(){return this[lq]=!0,this}disableCallHistory(){return this[lq]=!1,this}getCallHistory(){return this[EV]}clearCallHistory(){if(this[EV]!==void 0)this[EV].clear()}get isMockActive(){return this[oS]}[ra](){if(this[EV]===void 0)this[EV]=new Tv0}[UjQ](A){if(this[lq])this[ra](),this[EV][Lv0](A)}[aS](A,Q){this[Q4].set(A,{count:0,dispatcher:Q})}[eS](A){let Q=Object.assign({agent:this},this[tS]);return this[tS]&&this[tS].connections===1?new qv0(A,Q):new Mv0(A,Q)}[$jQ](A){let Q=this[Q4].get(A);if(Q?.dispatcher)return Q.dispatcher;if(typeof A!=="string"){let B=this[eS]("http://localhost:9999");return this[aS](A,B),B}for(let[B,Y]of Array.from(this[Q4]))if(Y&&typeof B!=="string"&&zv0(B,A)){let J=this[eS](A);return this[aS](A,J),J[sa]=Y.dispatcher[sa],J}}[Nv0](){return this[B4]}pendingInterceptors(){let A=this[Q4];return Array.from(A.entries()).flatMap(([Q,B])=>B.dispatcher[sa].map((Y)=>({...Y,origin:Q}))).filter(({pending:Q})=>Q)}assertNoPendingInterceptors({pendingInterceptorsFormatter:A=new Pv0}={}){let Q=this.pendingInterceptors();if(Q.length===0)return;throw new jv0(Q.length===1?`1 interceptor is pending: ${A.format(Q)}`.trim():`${Q.length} interceptors are pending: -${A.format(Q)}`.trim())}}SwQ.exports=TwQ});var Ta=R((PnY,vwQ)=>{var{InvalidArgumentError:T_0}=QB();function S_0(A={}){let{ignoreHeaders:Q=[],excludeHeaders:B=[],matchHeaders:Y=[],caseSensitive:J=!1}=A;return{ignore:new Set(Q.map((C)=>J?C:C.toLowerCase())),exclude:new Set(B.map((C)=>J?C:C.toLowerCase())),match:new Set(Y.map((C)=>J?C:C.toLowerCase()))}}var Pa;try{Pa=u("node:crypto")}catch{}var k_0=Pa?.hash?(A)=>Pa.hash("sha256",A,"base64url"):(A)=>Buffer.from(A).toString("base64url");function _wQ(A){return Array.isArray(A)&&(A.length&1)===0}function __0(A=[]){if(A.length===0)return()=>!1;return function(B){let Y;for(let J of A)if(typeof J==="string"){if(!Y)Y=B.toLowerCase();if(Y.includes(J.toLowerCase()))return!0}else if(J instanceof RegExp){if(J.test(B))return!0}return!1}}function v_0(A){let Q={};if(!A)return Q;if(_wQ(A)){for(let B=0;B{var{writeFile:h_0,readFile:g_0,mkdir:x_0}=u("node:fs/promises"),{dirname:f_0,resolve:ywQ}=u("node:path"),{setTimeout:b_0,clearTimeout:hwQ}=u("node:timers"),{InvalidArgumentError:gwQ,UndiciError:m_0}=QB(),{hashId:u_0,isUrlExcludedFactory:d_0,normalizeHeaders:xwQ,createHeaderFilters:fwQ}=Ta();function Sq(A,Q,B={}){let Y=new URL(A.path,A.origin),J=A._normalizedHeaders||xwQ(A.headers);if(!A._normalizedHeaders)A._normalizedHeaders=J;return{method:A.method||"GET",url:B.matchQuery!==!1?Y.toString():`${Y.origin}${Y.pathname}`,headers:bwQ(J,Q,B),body:B.matchBody!==!1&&A.body?String(A.body):""}}function bwQ(A,Q,B={}){if(!A||typeof A!=="object")return{};let{caseSensitive:Y=!1}=B,J={},{ignore:C,exclude:X,match:G}=Q;for(let[F,W]of Object.entries(A)){let Z=Y?F:F.toLowerCase();if(X.has(Z))continue;if(C.has(Z))continue;if(G.size!==0){if(!G.has(Z))continue}J[Z]=W}return J}function mwQ(A,Q,B={}){if(!A||typeof A!=="object")return{};let{caseSensitive:Y=!1}=B,J={},{exclude:C}=Q;for(let[X,G]of Object.entries(A)){let F=Y?X:X.toLowerCase();if(C.has(F))continue;J[F]=G}return J}function kq(A){let Q=[A.method,A.url];if(A.headers&&typeof A.headers==="object"){let Y=Object.keys(A.headers).sort();for(let J of Y){let C=Array.isArray(A.headers[J])?A.headers[J]:[A.headers[J]];Q.push(J);for(let X of C.sort())Q.push(String(X))}}Q.push(A.body);let B=Q.join("|");return u_0(B)}class uwQ{#A;#Q;#B=new Map;#Y;#J=1/0;#C=!1;#F;constructor(A={}){if(this.#Y=A.snapshotPath,this.#J=A.maxSnapshots||1/0,this.#C=A.autoFlush||!1,this.flushInterval=A.flushInterval||30000,this._flushTimer=null,this.matchOptions={matchHeaders:A.matchHeaders||[],ignoreHeaders:A.ignoreHeaders||[],excludeHeaders:A.excludeHeaders||[],matchBody:A.matchBody!==!1,matchQuery:A.matchQuery!==!1,caseSensitive:A.caseSensitive||!1},this.#F=fwQ(this.matchOptions),this.shouldRecord=A.shouldRecord||(()=>!0),this.shouldPlayback=A.shouldPlayback||(()=>!0),this.#Q=d_0(A.excludeUrls),this.#C&&this.#Y)this.#X()}async record(A,Q){if(!this.shouldRecord(A))return;let B=new URL(A.path,A.origin).toString();if(this.#Q(B))return;let Y=Sq(A,this.#F,this.matchOptions),J=kq(Y),C=xwQ(Q.headers),X={statusCode:Q.statusCode,headers:mwQ(C,this.#F,this.matchOptions),body:Buffer.isBuffer(Q.body)?Q.body.toString("base64"):Buffer.from(String(Q.body||"")).toString("base64"),trailers:Q.trailers};if(this.#B.size>=this.#J&&!this.#B.has(J)){let F=this.#B.keys().next().value;this.#B.delete(F)}let G=this.#B.get(J);if(G&&G.responses)G.responses.push(X),G.timestamp=new Date().toISOString();else this.#B.set(J,{request:Y,responses:[X],callCount:0,timestamp:new Date().toISOString()});if(this.#C&&this.#Y)this.#Z()}findSnapshot(A){if(!this.shouldPlayback(A))return;let Q=new URL(A.path,A.origin).toString();if(this.#Q(Q))return;let B=Sq(A,this.#F,this.matchOptions),Y=kq(B),J=this.#B.get(Y);if(!J)return;let C=J.callCount||0,X=Math.min(C,J.responses.length-1);return J.callCount=C+1,{...J,response:J.responses[X]}}async loadSnapshots(A){let Q=A||this.#Y;if(!Q)throw new gwQ("Snapshot path is required");try{let B=await g_0(ywQ(Q),"utf8"),Y=JSON.parse(B);if(Array.isArray(Y)){this.#B.clear();for(let{hash:J,snapshot:C}of Y)this.#B.set(J,C)}else this.#B=new Map(Object.entries(Y))}catch(B){if(B.code==="ENOENT")this.#B.clear();else throw new m_0(`Failed to load snapshots from ${Q}`,{cause:B})}}async saveSnapshots(A){let Q=A||this.#Y;if(!Q)throw new gwQ("Snapshot path is required");let B=ywQ(Q);await x_0(f_0(B),{recursive:!0});let Y=Array.from(this.#B.entries()).map(([J,C])=>({hash:J,snapshot:C}));await h_0(B,JSON.stringify(Y,null,2),{flush:!0})}clear(){this.#B.clear()}getSnapshots(){return Array.from(this.#B.values())}size(){return this.#B.size}resetCallCounts(){for(let A of this.#B.values())A.callCount=0}deleteSnapshot(A){let Q=Sq(A,this.#F,this.matchOptions),B=kq(Q);return this.#B.delete(B)}getSnapshotInfo(A){let Q=Sq(A,this.#F,this.matchOptions),B=kq(Q),Y=this.#B.get(B);if(!Y)return null;return{hash:B,request:Y.request,responseCount:Y.responses?Y.responses.length:Y.response?1:0,callCount:Y.callCount||0,timestamp:Y.timestamp}}replaceSnapshots(A){if(this.#B.clear(),Array.isArray(A))for(let{hash:Q,snapshot:B}of A)this.#B.set(Q,B);else if(A&&typeof A==="object")this.#B=new Map(Object.entries(A))}#X(){return this.#Z()}#G(){if(this.#A)hwQ(this.#A),this.saveSnapshots().catch(()=>{}),this.#A=null}#Z(){this.#A=b_0(()=>{if(this.saveSnapshots().catch(()=>{}),this.#C)this.#A?.refresh();else this.#A=null},1000)}destroy(){if(this.#G(),this.#A)hwQ(this.#A),this.#A=null}async close(){if(this.#Y&&this.#B.size!==0)await this.saveSnapshots();this.destroy()}}dwQ.exports={SnapshotRecorder:uwQ,formatRequestKey:Sq,createRequestHash:kq,filterHeadersForMatching:bwQ,filterHeadersForStorage:mwQ,createHeaderFilters:fwQ}});var nwQ=R((SnY,iwQ)=>{var c_0=u$(),l_0=Oa(),{SnapshotRecorder:p_0}=cwQ(),i_0=rL(),{InvalidArgumentError:n_0,UndiciError:s_0}=QB(),{validateSnapshotMode:r_0}=Ta(),f8=Symbol("kSnapshotRecorder"),SG=Symbol("kSnapshotMode"),_q=Symbol("kSnapshotPath"),Sa=Symbol("kSnapshotLoaded"),ka=Symbol("kRealAgent"),lwQ=!1;class pwQ extends l_0{constructor(A={}){if(!lwQ)process.emitWarning("SnapshotAgent is experimental and subject to change","ExperimentalWarning"),lwQ=!0;let{mode:Q="record",snapshotPath:B=null,...Y}=A;super(Y);if(r_0(Q),(Q==="playback"||Q==="update")&&!B)throw new n_0(`snapshotPath is required when mode is '${Q}'`);if(this[SG]=Q,this[_q]=B,this[f8]=new p_0({snapshotPath:this[_q],mode:this[SG],maxSnapshots:A.maxSnapshots,autoFlush:A.autoFlush,flushInterval:A.flushInterval,matchHeaders:A.matchHeaders,ignoreHeaders:A.ignoreHeaders,excludeHeaders:A.excludeHeaders,matchBody:A.matchBody,matchQuery:A.matchQuery,caseSensitive:A.caseSensitive,shouldRecord:A.shouldRecord,shouldPlayback:A.shouldPlayback,excludeUrls:A.excludeUrls}),this[Sa]=!1,this[SG]==="record"||this[SG]==="update")this[ka]=new c_0(A);if((this[SG]==="playback"||this[SG]==="update")&&this[_q])this.loadSnapshots().catch(()=>{})}dispatch(A,Q){Q=i_0.wrap(Q);let B=this[SG];if(B==="playback"||B==="update"){if(!this[Sa])return this.#A(A,Q);let Y=this[f8].findSnapshot(A);if(Y)return this.#B(Y,Q);else if(B==="update")return this.#Q(A,Q);else{let J=new s_0(`No snapshot found for ${A.method||"GET"} ${A.path}`);if(Q.onError){Q.onError(J);return}throw J}}else if(B==="record")return this.#Q(A,Q)}async#A(A,Q){return await this.loadSnapshots(),this.dispatch(A,Q)}#Q(A,Q){let B={statusCode:null,headers:{},trailers:{},body:[]},Y=this,J={onRequestStart(X,G){return Q.onRequestStart(X,{...G,history:this.history})},onRequestUpgrade(X,G,F,W){return Q.onRequestUpgrade(X,G,F,W)},onResponseStart(X,G,F,W){return B.statusCode=G,B.headers=F,Q.onResponseStart(X,G,F,W)},onResponseData(X,G){return B.body.push(G),Q.onResponseData(X,G)},onResponseEnd(X,G){B.trailers=G;let F=Buffer.concat(B.body);Y[f8].record(A,{statusCode:B.statusCode,headers:B.headers,body:F,trailers:B.trailers}).then(()=>{Q.onResponseEnd(X,G)}).catch((W)=>{Q.onResponseError(X,W)})}};return this[ka].dispatch(A,J)}#B(A,Q){try{let{response:B}=A,Y={pause(){},resume(){},abort(C){this.aborted=!0,this.reason=C},aborted:!1,paused:!1};Q.onRequestStart(Y),Q.onResponseStart(Y,B.statusCode,B.headers);let J=Buffer.from(B.body,"base64");Q.onResponseData(Y,J),Q.onResponseEnd(Y,B.trailers)}catch(B){Q.onError?.(B)}}async loadSnapshots(A){if(await this[f8].loadSnapshots(A||this[_q]),this[Sa]=!0,this[SG]==="playback")this.#Y()}async saveSnapshots(A){return this[f8].saveSnapshots(A||this[_q])}#Y(){for(let A of this[f8].getSnapshots()){let{request:Q,responses:B,response:Y}=A,J=new URL(Q.url),C=this.get(J.origin),X=B?B[0]:Y;if(!X)continue;C.intercept({path:J.pathname+J.search,method:Q.method,headers:Q.headers,body:Q.body}).reply(X.statusCode,X.body,{headers:X.headers,trailers:X.trailers}).persist()}}getRecorder(){return this[f8]}getMode(){return this[SG]}clearSnapshots(){this[f8].clear()}resetCallCounts(){this[f8].resetCallCounts()}deleteSnapshot(A){return this[f8].deleteSnapshot(A)}getSnapshotInfo(A){return this[f8].getSnapshotInfo(A)}replaceSnapshots(A){this[f8].replaceSnapshots(A)}async close(){await this[f8].close(),await this[ka]?.close(),await super.close()}}iwQ.exports=pwQ});var _S=R((knY,owQ)=>{var swQ=Symbol.for("undici.globalDispatcher.1"),{InvalidArgumentError:a_0}=QB(),o_0=u$();if(awQ()===void 0)rwQ(new o_0);function rwQ(A){if(!A||typeof A.dispatch!=="function")throw new a_0("Argument agent must implement Agent");Object.defineProperty(globalThis,swQ,{value:A,writable:!0,enumerable:!1,configurable:!1})}function awQ(){return globalThis[swQ]}var t_0=["fetch","Headers","Response","Request","FormData","WebSocket","CloseEvent","ErrorEvent","MessageEvent","EventSource"];owQ.exports={setGlobalDispatcher:rwQ,getGlobalDispatcher:awQ,installedExports:t_0}});var XV=R((_nY,twQ)=>{var kG=u("node:assert"),e_0=rL();twQ.exports=class{#A;#Q=!1;#B=!1;#Y=!1;constructor(Q){if(typeof Q!=="object"||Q===null)throw TypeError("handler must be an object");this.#A=e_0.wrap(Q)}onRequestStart(...Q){this.#A.onRequestStart?.(...Q)}onRequestUpgrade(...Q){return kG(!this.#Q),kG(!this.#B),this.#A.onRequestUpgrade?.(...Q)}onResponseStart(...Q){return kG(!this.#Q),kG(!this.#B),kG(!this.#Y),this.#Y=!0,this.#A.onResponseStart?.(...Q)}onResponseData(...Q){return kG(!this.#Q),kG(!this.#B),this.#A.onResponseData?.(...Q)}onResponseEnd(...Q){return kG(!this.#Q),kG(!this.#B),this.#Q=!0,this.#A.onResponseEnd?.(...Q)}onResponseError(...Q){return this.#B=!0,this.#A.onResponseError?.(...Q)}onBodySent(){}}});var ga=R((vnY,BjQ)=>{var b8=lQ(),{kBodyUsed:vq}=Q0(),ya=u("node:assert"),{InvalidArgumentError:_a}=QB(),Av0=u("node:events"),Qv0=[300,301,302,303,307,308],ewQ=Symbol("body"),AjQ=()=>{};class va{constructor(A){this[ewQ]=A,this[vq]=!1}async*[Symbol.asyncIterator](){ya(!this[vq],"disturbed"),this[vq]=!0,yield*this[ewQ]}}class ha{static buildDispatch(A,Q){if(Q!=null&&(!Number.isInteger(Q)||Q<0))throw new _a("maxRedirections must be a positive number");let B=A.dispatch.bind(A);return(Y,J)=>B(Y,new ha(B,Q,Y,J))}constructor(A,Q,B,Y){if(Q!=null&&(!Number.isInteger(Q)||Q<0))throw new _a("maxRedirections must be a positive number");this.dispatch=A,this.location=null;let{maxRedirections:J,...C}=B;if(this.opts=C,this.maxRedirections=Q,this.handler=Y,this.history=[],b8.isStream(this.opts.body)){if(b8.bodyLength(this.opts.body)===0)this.opts.body.on("data",function(){ya(!1)});if(typeof this.opts.body.readableDidRead!=="boolean")this.opts.body[vq]=!1,Av0.prototype.on.call(this.opts.body,"data",function(){this[vq]=!0})}else if(this.opts.body&&typeof this.opts.body.pipeTo==="function")this.opts.body=new va(this.opts.body);else if(this.opts.body&&typeof this.opts.body!=="string"&&!ArrayBuffer.isView(this.opts.body)&&b8.isIterable(this.opts.body)&&!b8.isFormDataLike(this.opts.body))this.opts.body=new va(this.opts.body)}onRequestStart(A,Q){this.handler.onRequestStart?.(A,{...Q,history:this.history})}onRequestUpgrade(A,Q,B,Y){this.handler.onRequestUpgrade?.(A,Q,B,Y)}onResponseStart(A,Q,B,Y){if(this.opts.throwOnMaxRedirect&&this.history.length>=this.maxRedirections)throw Error("max redirects");if((Q===301||Q===302)&&this.opts.method==="POST"){if(this.opts.method="GET",b8.isStream(this.opts.body))b8.destroy(this.opts.body.on("error",AjQ));this.opts.body=null}if(Q===303&&this.opts.method!=="HEAD"){if(this.opts.method="GET",b8.isStream(this.opts.body))b8.destroy(this.opts.body.on("error",AjQ));this.opts.body=null}if(this.location=this.history.length>=this.maxRedirections||b8.isDisturbed(this.opts.body)||Qv0.indexOf(Q)===-1?null:B.location,this.opts.origin)this.history.push(new URL(this.opts.path,this.opts.origin));if(!this.location){this.handler.onResponseStart?.(A,Q,B,Y);return}let{origin:J,pathname:C,search:X}=b8.parseURL(new URL(this.location,this.opts.origin&&new URL(this.opts.path,this.opts.origin))),G=X?`${C}${X}`:C,F=`${J}${G}`;for(let W of this.history)if(W.toString()===F)throw new _a(`Redirect loop detected. Cannot redirect to ${J}. This typically happens when using a Client or Pool with cross-origin redirects. Use an Agent for cross-origin redirects.`);this.opts.headers=Bv0(this.opts.headers,Q===303,this.opts.origin!==J),this.opts.path=G,this.opts.origin=J,this.opts.query=null}onResponseData(A,Q){if(this.location);else this.handler.onResponseData?.(A,Q)}onResponseEnd(A,Q){if(this.location)this.dispatch(this.opts,this);else this.handler.onResponseEnd(A,Q)}onResponseError(A,Q){this.handler.onResponseError?.(A,Q)}}function QjQ(A,Q,B){if(A.length===4)return b8.headerNameToString(A)==="host";if(Q&&b8.headerNameToString(A).startsWith("content-"))return!0;if(B&&(A.length===13||A.length===6||A.length===19)){let Y=b8.headerNameToString(A);return Y==="authorization"||Y==="cookie"||Y==="proxy-authorization"}return!1}function Bv0(A,Q,B){let Y=[];if(Array.isArray(A)){for(let J=0;J{var Yv0=ga();function Jv0({maxRedirections:A}={}){return(Q)=>{return function(Y,J){let{maxRedirections:C=A,...X}=Y;if(C==null||C===0)return Q(Y,J);let G={...X},F=new Yv0(Q,C,G,J);return Q(G,F)}}}YjQ.exports=Jv0});var GjQ=R((hnY,XjQ)=>{var Cv0=XV(),{ResponseError:Xv0}=QB();class CjQ extends Cv0{#A;#Q;#B;#Y;#J;constructor(A,{handler:Q}){super(Q)}#C(A){return(this.#Q??"").indexOf(A)===0}onRequestStart(A,Q){return this.#A=0,this.#Q=null,this.#B=null,this.#Y=null,this.#J="",super.onRequestStart(A,Q)}onResponseStart(A,Q,B,Y){if(this.#A=Q,this.#Y=B,this.#Q=B["content-type"],this.#A<400)return super.onResponseStart(A,Q,B,Y);if(this.#C("application/json")||this.#C("text/plain"))this.#B=new TextDecoder("utf-8")}onResponseData(A,Q){if(this.#A<400)return super.onResponseData(A,Q);this.#J+=this.#B?.decode(Q,{stream:!0})??""}onResponseEnd(A,Q){if(this.#A>=400){if(this.#J+=this.#B?.decode(void 0,{stream:!1})??"",this.#C("application/json"))try{this.#J=JSON.parse(this.#J)}catch{}let B,Y=Error.stackTraceLimit;Error.stackTraceLimit=0;try{B=new Xv0("Response Error",this.#A,{body:this.#J,headers:this.#Y})}finally{Error.stackTraceLimit=Y}super.onResponseError(A,B)}else super.onResponseEnd(A,Q)}onResponseError(A,Q){super.onResponseError(A,Q)}}XjQ.exports=()=>{return(A)=>{return function(B,Y){return A(B,new CjQ(B,{handler:Y}))}}}});var WjQ=R((gnY,FjQ)=>{var Gv0=NS();FjQ.exports=(A)=>{return(Q)=>{return function(Y,J){return Q(Y,new Gv0({...Y,retryOptions:{...A,...Y.retryOptions}},{handler:J,dispatch:Q}))}}}});var UjQ=R((xnY,$jQ)=>{var{InvalidArgumentError:Fv0,RequestAbortedError:Wv0}=QB(),Zv0=XV();class ZjQ extends Zv0{#A=1048576;#Q=!1;#B=0;#Y=null;aborted=!1;reason=!1;constructor({maxSize:A,signal:Q},B){if(A!=null&&(!Number.isFinite(A)||A<1))throw new Fv0("maxSize must be a number greater than 0");super(B);this.#A=A??this.#A}#J(A){this.aborted=!0,this.reason=A}onRequestStart(A,Q){return A.abort=this.#J.bind(this),this.#Y=A,super.onRequestStart(A,Q)}onResponseStart(A,Q,B,Y){let J=B["content-length"];if(J!=null&&J>this.#A)throw new Wv0(`Response size (${J}) larger than maxSize (${this.#A})`);if(this.aborted===!0)return!0;return super.onResponseStart(A,Q,B,Y)}onResponseError(A,Q){if(this.#Q)return;Q=this.#Y?.reason??Q,super.onResponseError(A,Q)}onResponseData(A,Q){if(this.#B=this.#B+Q.length,this.#B>=this.#A)if(this.#Q=!0,this.aborted===!0)super.onResponseError(A,this.reason);else super.onResponseEnd(A,{});return!0}onResponseEnd(A,Q){if(this.#Q)return;if(this.#Y.aborted===!0){super.onResponseError(A,this.reason);return}super.onResponseEnd(A,Q)}}function $v0({maxSize:A}={maxSize:1048576}){return(Q)=>{return function(Y,J){let{dumpMaxSize:C=A}=Y,X=new ZjQ({maxSize:C,signal:Y.signal},J);return Q(Y,X)}}}$jQ.exports=$v0});var IjQ=R((fnY,VjQ)=>{var{isIP:Uv0}=u("node:net"),{lookup:Ev0}=u("node:dns"),Kv0=XV(),{InvalidArgumentError:GV,InformationalError:Vv0}=QB(),xa=Math.pow(2,31)-1;class EjQ{#A=0;#Q=0;#B=new Map;dualStack=!0;affinity=null;lookup=null;pick=null;constructor(A){this.#A=A.maxTTL,this.#Q=A.maxItems,this.dualStack=A.dualStack,this.affinity=A.affinity,this.lookup=A.lookup??this.#Y,this.pick=A.pick??this.#J}get full(){return this.#B.size===this.#Q}runLookup(A,Q,B){let Y=this.#B.get(A.hostname);if(Y==null&&this.full){B(null,A);return}let J={affinity:this.affinity,dualStack:this.dualStack,lookup:this.lookup,pick:this.pick,...Q.dns,maxTTL:this.#A,maxItems:this.#Q};if(Y==null)this.lookup(A,J,(C,X)=>{if(C||X==null||X.length===0){B(C??new Vv0("No DNS entries found"));return}this.setRecords(A,X);let G=this.#B.get(A.hostname),F=this.pick(A,G,J.affinity),W;if(typeof F.port==="number")W=`:${F.port}`;else if(A.port!=="")W=`:${A.port}`;else W="";B(null,new URL(`${A.protocol}//${F.family===6?`[${F.address}]`:F.address}${W}`))});else{let C=this.pick(A,Y,J.affinity);if(C==null){this.#B.delete(A.hostname),this.runLookup(A,Q,B);return}let X;if(typeof C.port==="number")X=`:${C.port}`;else if(A.port!=="")X=`:${A.port}`;else X="";B(null,new URL(`${A.protocol}//${C.family===6?`[${C.address}]`:C.address}${X}`))}}#Y(A,Q,B){Ev0(A.hostname,{all:!0,family:this.dualStack===!1?this.affinity:0,order:"ipv4first"},(Y,J)=>{if(Y)return B(Y);let C=new Map;for(let X of J)C.set(`${X.address}:${X.family}`,X);B(null,C.values())})}#J(A,Q,B){let Y=null,{records:J,offset:C}=Q,X;if(this.dualStack){if(B==null)if(C==null||C===xa)Q.offset=0,B=4;else Q.offset++,B=(Q.offset&1)===1?6:4;if(J[B]!=null&&J[B].ips.length>0)X=J[B];else X=J[B===4?6:4]}else X=J[B];if(X==null||X.ips.length===0)return Y;if(X.offset==null||X.offset===xa)X.offset=0;else X.offset++;let G=X.offset%X.ips.length;if(Y=X.ips[G]??null,Y==null)return Y;if(Date.now()-Y.timestamp>Y.ttl)return X.ips.splice(G,1),this.pick(A,Q,B);return Y}pickFamily(A,Q){let B=this.#B.get(A.hostname)?.records;if(!B)return null;let Y=B[Q];if(!Y)return null;if(Y.offset==null||Y.offset===xa)Y.offset=0;else Y.offset++;let J=Y.offset%Y.ips.length,C=Y.ips[J]??null;if(C==null)return C;if(Date.now()-C.timestamp>C.ttl)Y.ips.splice(J,1);return C}setRecords(A,Q){let B=Date.now(),Y={records:{4:null,6:null}};for(let J of Q){if(J.timestamp=B,typeof J.ttl==="number")J.ttl=Math.min(J.ttl,this.#A);else J.ttl=this.#A;let C=Y.records[J.family]??{ips:[]};C.ips.push(J),Y.records[J.family]=C}this.#B.set(A.hostname,Y)}deleteRecords(A){this.#B.delete(A.hostname)}getHandler(A,Q){return new KjQ(this,A,Q)}}class KjQ extends Kv0{#A=null;#Q=null;#B=null;#Y=null;#J=null;#C=null;#F=!0;constructor(A,{origin:Q,handler:B,dispatch:Y,newOrigin:J},C){super(B);this.#Y=Q,this.#C=J,this.#Q={...C},this.#A=A,this.#B=Y}onResponseError(A,Q){switch(Q.code){case"ETIMEDOUT":case"ECONNREFUSED":{if(this.#A.dualStack){if(!this.#F){super.onResponseError(A,Q);return}this.#F=!1;let B=this.#C.hostname[0]==="["?4:6,Y=this.#A.pickFamily(this.#Y,B);if(Y==null){super.onResponseError(A,Q);return}let J;if(typeof Y.port==="number")J=`:${Y.port}`;else if(this.#Y.port!=="")J=`:${this.#Y.port}`;else J="";let C={...this.#Q,origin:`${this.#Y.protocol}//${Y.family===6?`[${Y.address}]`:Y.address}${J}`};this.#B(C,this);return}super.onResponseError(A,Q);break}case"ENOTFOUND":this.#A.deleteRecords(this.#Y),super.onResponseError(A,Q);break;default:super.onResponseError(A,Q);break}}}VjQ.exports=(A)=>{if(A?.maxTTL!=null&&(typeof A?.maxTTL!=="number"||A?.maxTTL<0))throw new GV("Invalid maxTTL. Must be a positive number");if(A?.maxItems!=null&&(typeof A?.maxItems!=="number"||A?.maxItems<1))throw new GV("Invalid maxItems. Must be a positive number and greater than zero");if(A?.affinity!=null&&A?.affinity!==4&&A?.affinity!==6)throw new GV("Invalid affinity. Must be either 4 or 6");if(A?.dualStack!=null&&typeof A?.dualStack!=="boolean")throw new GV("Invalid dualStack. Must be a boolean");if(A?.lookup!=null&&typeof A?.lookup!=="function")throw new GV("Invalid lookup. Must be a function");if(A?.pick!=null&&typeof A?.pick!=="function")throw new GV("Invalid pick. Must be a function");let Q=A?.dualStack??!0,B;if(Q)B=A?.affinity??null;else B=A?.affinity??4;let Y={maxTTL:A?.maxTTL??1e4,lookup:A?.lookup??null,pick:A?.pick??null,dualStack:Q,affinity:B,maxItems:A?.maxItems??1/0},J=new EjQ(Y);return(C)=>{return function(G,F){let W=G.origin.constructor===URL?G.origin:new URL(G.origin);if(Uv0(W.hostname)!==0)return C(G,F);return J.runLookup(W,G,(Z,U)=>{if(Z)return F.onResponseError(null,Z);let $={...G,servername:W.hostname,origin:U.origin,headers:{host:W.host,...G.headers}};C($,J.getHandler({origin:W,dispatch:C,handler:F,newOrigin:U},G))}),!0}}}});var yq=R((bnY,DjQ)=>{var{safeHTTPMethods:HjQ,pathHasQueryOrFragment:Iv0}=lQ(),{serializePathWithQuery:Hv0}=lQ();function Dv0(A){if(!A.origin)throw Error("opts.origin is undefined");let Q=A.path||"/";if(A.query&&!Iv0(A.path))Q=Hv0(Q,A.query);return{origin:A.origin.toString(),method:A.method,path:Q,headers:A.headers}}function Nv0(A){let Q;if(A.headers==null)Q={};else if(typeof A.headers[Symbol.iterator]==="function"){Q={};for(let B of A.headers){if(!Array.isArray(B))throw Error("opts.headers is not a valid header map");let[Y,J]=B;if(typeof Y!=="string"||typeof J!=="string")throw Error("opts.headers is not a valid header map");Q[Y.toLowerCase()]=J}}else if(typeof A.headers==="object"){Q={};for(let B of Object.keys(A.headers))Q[B.toLowerCase()]=A.headers[B]}else throw Error("opts.headers is not an object");return Q}function Lv0(A){if(typeof A!=="object")throw TypeError(`expected key to be object, got ${typeof A}`);for(let Q of["origin","method","path"])if(typeof A[Q]!=="string")throw TypeError(`expected key.${Q} to be string, got ${typeof A[Q]}`);if(A.headers!==void 0&&typeof A.headers!=="object")throw TypeError(`expected headers to be object, got ${typeof A}`)}function qv0(A){if(typeof A!=="object")throw TypeError(`expected value to be object, got ${typeof A}`);for(let Q of["statusCode","cachedAt","staleAt","deleteAt"])if(typeof A[Q]!=="number")throw TypeError(`expected value.${Q} to be number, got ${typeof A[Q]}`);if(typeof A.statusMessage!=="string")throw TypeError(`expected value.statusMessage to be string, got ${typeof A.statusMessage}`);if(A.headers!=null&&typeof A.headers!=="object")throw TypeError(`expected value.rawHeaders to be object, got ${typeof A.headers}`);if(A.vary!==void 0&&typeof A.vary!=="object")throw TypeError(`expected value.vary to be object, got ${typeof A.vary}`);if(A.etag!==void 0&&typeof A.etag!=="string")throw TypeError(`expected value.etag to be string, got ${typeof A.etag}`)}function Mv0(A){let Q={},B;if(Array.isArray(A)){B=[];for(let Y of A)B.push(...Y.split(","))}else B=A.split(",");for(let Y=0;Y=2&&G[0]==='"'&&G[G.length-1]==='"')G=G.substring(1,G.length-1);let F=parseInt(G,10);if(F!==F)continue;if(X==="max-age"&&X in Q&&Q[X]>=F)continue;Q[X]=F;break}case"private":case"no-cache":if(G){if(G[0]==='"'){let F=[G.substring(1)],W=G[G.length-1]==='"';if(!W)for(let Z=Y+1;Z{function Ov0(A){switch(A[3]){case",":return Pv0(A);case" ":return Tv0(A);default:return Sv0(A)}}function Pv0(A){if(A.length!==29||A[4]!==" "||A[7]!==" "||A[11]!==" "||A[16]!==" "||A[19]!==":"||A[22]!==":"||A[25]!==" "||A[26]!=="G"||A[27]!=="M"||A[28]!=="T")return;let Q=-1;if(A[0]==="S"&&A[1]==="u"&&A[2]==="n")Q=0;else if(A[0]==="M"&&A[1]==="o"&&A[2]==="n")Q=1;else if(A[0]==="T"&&A[1]==="u"&&A[2]==="e")Q=2;else if(A[0]==="W"&&A[1]==="e"&&A[2]==="d")Q=3;else if(A[0]==="T"&&A[1]==="h"&&A[2]==="u")Q=4;else if(A[0]==="F"&&A[1]==="r"&&A[2]==="i")Q=5;else if(A[0]==="S"&&A[1]==="a"&&A[2]==="t")Q=6;else return;let B=0;if(A[5]==="0"){let E=A.charCodeAt(6);if(E<49||E>57)return;B=E-48}else{let E=A.charCodeAt(5);if(E<49||E>51)return;let K=A.charCodeAt(6);if(K<48||K>57)return;B=(E-48)*10+(K-48)}let Y=-1;if(A[8]==="J"&&A[9]==="a"&&A[10]==="n")Y=0;else if(A[8]==="F"&&A[9]==="e"&&A[10]==="b")Y=1;else if(A[8]==="M"&&A[9]==="a")if(A[10]==="r")Y=2;else if(A[10]==="y")Y=4;else return;else if(A[8]==="J")if(A[9]==="a"&&A[10]==="n")Y=0;else if(A[9]==="u")if(A[10]==="n")Y=5;else if(A[10]==="l")Y=6;else return;else return;else if(A[8]==="A")if(A[9]==="p"&&A[10]==="r")Y=3;else if(A[9]==="u"&&A[10]==="g")Y=7;else return;else if(A[8]==="S"&&A[9]==="e"&&A[10]==="p")Y=8;else if(A[8]==="O"&&A[9]==="c"&&A[10]==="t")Y=9;else if(A[8]==="N"&&A[9]==="o"&&A[10]==="v")Y=10;else if(A[8]==="D"&&A[9]==="e"&&A[10]==="c")Y=11;else return;let J=A.charCodeAt(12);if(J<48||J>57)return;let C=A.charCodeAt(13);if(C<48||C>57)return;let X=A.charCodeAt(14);if(X<48||X>57)return;let G=A.charCodeAt(15);if(G<48||G>57)return;let F=(J-48)*1000+(C-48)*100+(X-48)*10+(G-48),W=0;if(A[17]==="0"){let E=A.charCodeAt(18);if(E<48||E>57)return;W=E-48}else{let E=A.charCodeAt(17);if(E<48||E>50)return;let K=A.charCodeAt(18);if(K<48||K>57)return;if(E===50&&K>51)return;W=(E-48)*10+(K-48)}let Z=0;if(A[20]==="0"){let E=A.charCodeAt(21);if(E<48||E>57)return;Z=E-48}else{let E=A.charCodeAt(20);if(E<48||E>53)return;let K=A.charCodeAt(21);if(K<48||K>57)return;Z=(E-48)*10+(K-48)}let U=0;if(A[23]==="0"){let E=A.charCodeAt(24);if(E<48||E>57)return;U=E-48}else{let E=A.charCodeAt(23);if(E<48||E>53)return;let K=A.charCodeAt(24);if(K<48||K>57)return;U=(E-48)*10+(K-48)}let $=new Date(Date.UTC(F,Y,B,W,Z,U));return $.getUTCDay()===Q?$:void 0}function Tv0(A){if(A.length!==24||A[7]!==" "||A[10]!==" "||A[19]!==" ")return;let Q=-1;if(A[0]==="S"&&A[1]==="u"&&A[2]==="n")Q=0;else if(A[0]==="M"&&A[1]==="o"&&A[2]==="n")Q=1;else if(A[0]==="T"&&A[1]==="u"&&A[2]==="e")Q=2;else if(A[0]==="W"&&A[1]==="e"&&A[2]==="d")Q=3;else if(A[0]==="T"&&A[1]==="h"&&A[2]==="u")Q=4;else if(A[0]==="F"&&A[1]==="r"&&A[2]==="i")Q=5;else if(A[0]==="S"&&A[1]==="a"&&A[2]==="t")Q=6;else return;let B=-1;if(A[4]==="J"&&A[5]==="a"&&A[6]==="n")B=0;else if(A[4]==="F"&&A[5]==="e"&&A[6]==="b")B=1;else if(A[4]==="M"&&A[5]==="a")if(A[6]==="r")B=2;else if(A[6]==="y")B=4;else return;else if(A[4]==="J")if(A[5]==="a"&&A[6]==="n")B=0;else if(A[5]==="u")if(A[6]==="n")B=5;else if(A[6]==="l")B=6;else return;else return;else if(A[4]==="A")if(A[5]==="p"&&A[6]==="r")B=3;else if(A[5]==="u"&&A[6]==="g")B=7;else return;else if(A[4]==="S"&&A[5]==="e"&&A[6]==="p")B=8;else if(A[4]==="O"&&A[5]==="c"&&A[6]==="t")B=9;else if(A[4]==="N"&&A[5]==="o"&&A[6]==="v")B=10;else if(A[4]==="D"&&A[5]==="e"&&A[6]==="c")B=11;else return;let Y=0;if(A[8]===" "){let E=A.charCodeAt(9);if(E<49||E>57)return;Y=E-48}else{let E=A.charCodeAt(8);if(E<49||E>51)return;let K=A.charCodeAt(9);if(K<48||K>57)return;Y=(E-48)*10+(K-48)}let J=0;if(A[11]==="0"){let E=A.charCodeAt(12);if(E<48||E>57)return;J=E-48}else{let E=A.charCodeAt(11);if(E<48||E>50)return;let K=A.charCodeAt(12);if(K<48||K>57)return;if(E===50&&K>51)return;J=(E-48)*10+(K-48)}let C=0;if(A[14]==="0"){let E=A.charCodeAt(15);if(E<48||E>57)return;C=E-48}else{let E=A.charCodeAt(14);if(E<48||E>53)return;let K=A.charCodeAt(15);if(K<48||K>57)return;C=(E-48)*10+(K-48)}let X=0;if(A[17]==="0"){let E=A.charCodeAt(18);if(E<48||E>57)return;X=E-48}else{let E=A.charCodeAt(17);if(E<48||E>53)return;let K=A.charCodeAt(18);if(K<48||K>57)return;X=(E-48)*10+(K-48)}let G=A.charCodeAt(20);if(G<48||G>57)return;let F=A.charCodeAt(21);if(F<48||F>57)return;let W=A.charCodeAt(22);if(W<48||W>57)return;let Z=A.charCodeAt(23);if(Z<48||Z>57)return;let U=(G-48)*1000+(F-48)*100+(W-48)*10+(Z-48),$=new Date(Date.UTC(U,B,Y,J,C,X));return $.getUTCDay()===Q?$:void 0}function Sv0(A){let Q=-1,B=-1;if(A[0]==="S"){if(A[1]==="u"&&A[2]==="n"&&A[3]==="d"&&A[4]==="a"&&A[5]==="y")B=0,Q=6;else if(A[1]==="a"&&A[2]==="t"&&A[3]==="u"&&A[4]==="r"&&A[5]==="d"&&A[6]==="a"&&A[7]==="y")B=6,Q=8}else if(A[0]==="M"&&A[1]==="o"&&A[2]==="n"&&A[3]==="d"&&A[4]==="a"&&A[5]==="y")B=1,Q=6;else if(A[0]==="T"){if(A[1]==="u"&&A[2]==="e"&&A[3]==="s"&&A[4]==="d"&&A[5]==="a"&&A[6]==="y")B=2,Q=7;else if(A[1]==="h"&&A[2]==="u"&&A[3]==="r"&&A[4]==="s"&&A[5]==="d"&&A[6]==="a"&&A[7]==="y")B=4,Q=8}else if(A[0]==="W"&&A[1]==="e"&&A[2]==="d"&&A[3]==="n"&&A[4]==="e"&&A[5]==="s"&&A[6]==="d"&&A[7]==="a"&&A[8]==="y")B=3,Q=9;else if(A[0]==="F"&&A[1]==="r"&&A[2]==="i"&&A[3]==="d"&&A[4]==="a"&&A[5]==="y")B=5,Q=6;else return;if(A[Q]!==","||A.length-Q-1!==23||A[Q+1]!==" "||A[Q+4]!=="-"||A[Q+8]!=="-"||A[Q+11]!==" "||A[Q+14]!==":"||A[Q+17]!==":"||A[Q+20]!==" "||A[Q+21]!=="G"||A[Q+22]!=="M"||A[Q+23]!=="T")return;let Y=0;if(A[Q+2]==="0"){let $=A.charCodeAt(Q+3);if($<49||$>57)return;Y=$-48}else{let $=A.charCodeAt(Q+2);if($<49||$>51)return;let E=A.charCodeAt(Q+3);if(E<48||E>57)return;Y=($-48)*10+(E-48)}let J=-1;if(A[Q+5]==="J"&&A[Q+6]==="a"&&A[Q+7]==="n")J=0;else if(A[Q+5]==="F"&&A[Q+6]==="e"&&A[Q+7]==="b")J=1;else if(A[Q+5]==="M"&&A[Q+6]==="a"&&A[Q+7]==="r")J=2;else if(A[Q+5]==="A"&&A[Q+6]==="p"&&A[Q+7]==="r")J=3;else if(A[Q+5]==="M"&&A[Q+6]==="a"&&A[Q+7]==="y")J=4;else if(A[Q+5]==="J"&&A[Q+6]==="u"&&A[Q+7]==="n")J=5;else if(A[Q+5]==="J"&&A[Q+6]==="u"&&A[Q+7]==="l")J=6;else if(A[Q+5]==="A"&&A[Q+6]==="u"&&A[Q+7]==="g")J=7;else if(A[Q+5]==="S"&&A[Q+6]==="e"&&A[Q+7]==="p")J=8;else if(A[Q+5]==="O"&&A[Q+6]==="c"&&A[Q+7]==="t")J=9;else if(A[Q+5]==="N"&&A[Q+6]==="o"&&A[Q+7]==="v")J=10;else if(A[Q+5]==="D"&&A[Q+6]==="e"&&A[Q+7]==="c")J=11;else return;let C=A.charCodeAt(Q+9);if(C<48||C>57)return;let X=A.charCodeAt(Q+10);if(X<48||X>57)return;let G=(C-48)*10+(X-48);G+=G<70?2000:1900;let F=0;if(A[Q+12]==="0"){let $=A.charCodeAt(Q+13);if($<48||$>57)return;F=$-48}else{let $=A.charCodeAt(Q+12);if($<48||$>50)return;let E=A.charCodeAt(Q+13);if(E<48||E>57)return;if($===50&&E>51)return;F=($-48)*10+(E-48)}let W=0;if(A[Q+15]==="0"){let $=A.charCodeAt(Q+16);if($<48||$>57)return;W=$-48}else{let $=A.charCodeAt(Q+15);if($<48||$>53)return;let E=A.charCodeAt(Q+16);if(E<48||E>57)return;W=($-48)*10+(E-48)}let Z=0;if(A[Q+18]==="0"){let $=A.charCodeAt(Q+19);if($<48||$>57)return;Z=$-48}else{let $=A.charCodeAt(Q+18);if($<48||$>53)return;let E=A.charCodeAt(Q+19);if(E<48||E>57)return;Z=($-48)*10+(E-48)}let U=new Date(Date.UTC(G,J,Y,F,W,Z));return U.getUTCDay()===B?U:void 0}NjQ.exports={parseHttpDate:Ov0}});var wjQ=R((unY,RjQ)=>{var kv0=lQ(),{parseCacheControlHeader:_v0,parseVaryHeader:vv0,isEtagUsable:yv0}=yq(),{parseHttpDate:qjQ}=LjQ();function hv0(){}var MjQ=[200,203,204,206,300,301,308,404,405,410,414,501],gv0=[206,304],xv0=2147483647000;class zjQ{#A;#Q;#B;#Y;#J;#C;constructor({store:A,type:Q,cacheByDefault:B},Y,J){this.#Y=A,this.#Q=Q,this.#B=B,this.#A=Y,this.#J=J}onRequestStart(A,Q){this.#C?.destroy(),this.#C=void 0,this.#J.onRequestStart?.(A,Q)}onRequestUpgrade(A,Q,B,Y){this.#J.onRequestUpgrade?.(A,Q,B,Y)}onResponseStart(A,Q,B,Y){let J=()=>this.#J.onResponseStart?.(A,Q,B,Y);if(!kv0.safeHTTPMethods.includes(this.#A.method)&&Q>=200&&Q<=399){try{this.#Y.delete(this.#A)?.catch?.(hv0)}catch{}return J()}let C=B["cache-control"],X=B["last-modified"]&&MjQ.includes(Q);if(!C&&!B.expires&&!X&&!this.#B)return J();let G=C?_v0(C):{};if(!fv0(this.#Q,Q,B,G))return J();let F=Date.now(),W=B.age?bv0(B.age):void 0;if(W&&W>=xv0)return J();let Z=typeof B.date==="string"?qjQ(B.date):void 0,U=mv0(this.#Q,F,W,B,Z,G)??this.#B;if(U===void 0||W&&W>U)return J();let $=Z?Z.getTime():F,E=U+$;if(F>=E)return J();let K;if(this.#A.headers&&B.vary){if(K=vv0(B.vary,this.#A.headers),!K)return J()}let I=uv0($,G,E),V=dv0(B,G),H={statusCode:Q,statusMessage:Y,headers:V,vary:K,cacheControlDirectives:G,cachedAt:W?F-W:F,staleAt:E,deleteAt:I};if(typeof B.etag==="string"&&yv0(B.etag))H.etag=B.etag;if(this.#C=this.#Y.createWriteStream(this.#A,H),!this.#C)return J();let D=this;return this.#C.on("drain",()=>A.resume()).on("error",function(){D.#C=void 0,D.#Y.delete(D.#A)}).on("close",function(){if(D.#C===this)D.#C=void 0;A.resume()}),J()}onResponseData(A,Q){if(this.#C?.write(Q)===!1)A.pause();this.#J.onResponseData?.(A,Q)}onResponseEnd(A,Q){this.#C?.end(),this.#J.onResponseEnd?.(A,Q)}onResponseError(A,Q){this.#C?.destroy(Q),this.#C=void 0,this.#J.onResponseError?.(A,Q)}}function fv0(A,Q,B,Y){if(Q<200||gv0.includes(Q))return!1;if(!MjQ.includes(Q)&&!B.expires&&!Y.public&&Y["max-age"]===void 0&&!(Y.private&&A==="private")&&!(Y["s-maxage"]!==void 0&&A==="shared"))return!1;if(Y["no-store"])return!1;if(A==="shared"&&Y.private===!0)return!1;if(B.vary?.includes("*"))return!1;if(B.authorization){if(!Y.public||typeof B.authorization!=="string")return!1;if(Array.isArray(Y["no-cache"])&&Y["no-cache"].includes("authorization"))return!1;if(Array.isArray(Y.private)&&Y.private.includes("authorization"))return!1}return!0}function bv0(A){let Q=parseInt(Array.isArray(A)?A[0]:A);return isNaN(Q)?void 0:Q*1000}function mv0(A,Q,B,Y,J,C){if(A==="shared"){let G=C["s-maxage"];if(G!==void 0)return G>0?G*1000:void 0}let X=C["max-age"];if(X!==void 0)return X>0?X*1000:void 0;if(typeof Y.expires==="string"){let G=qjQ(Y.expires);if(G){if(Q>=G.getTime())return;if(J){if(J>=G)return;if(B!==void 0&&B>G-J)return}return G.getTime()-Q}}if(typeof Y["last-modified"]==="string"){let G=new Date(Y["last-modified"]);if(cv0(G)){if(G.getTime()>=Q)return;return(Q-G.getTime())*0.1}}if(C.immutable)return 31536000;return}function uv0(A,Q,B){let Y=-1/0,J=-1/0,C=-1/0;if(Q["stale-while-revalidate"])Y=B+Q["stale-while-revalidate"]*1000;if(Q["stale-if-error"])J=B+Q["stale-if-error"]*1000;if(Y===-1/0&&J===-1/0)C=A+31536000000;return Math.max(B,Y,J,C)}function dv0(A,Q){let B=["connection","proxy-authenticate","proxy-authentication-info","proxy-authorization","proxy-connection","te","transfer-encoding","upgrade","age"];if(A.connection)if(Array.isArray(A.connection))B.push(...A.connection.map((J)=>J.trim()));else B.push(...A.connection.split(",").map((J)=>J.trim()));if(Array.isArray(Q["no-cache"]))B.push(...Q["no-cache"]);if(Array.isArray(Q.private))B.push(...Q.private);let Y;for(let J of B)if(A[J])Y??={...A},delete Y[J];return Y??A}function cv0(A){return A instanceof Date&&Number.isFinite(A.valueOf())}RjQ.exports=zjQ});var fa=R((dnY,TjQ)=>{var{Writable:lv0}=u("node:stream"),{EventEmitter:pv0}=u("node:events"),{assertCacheKey:jjQ,assertCacheValue:iv0}=yq();class PjQ extends pv0{#A=1024;#Q=104857600;#B=5242880;#Y=0;#J=0;#C=new Map;#F=!1;constructor(A){super();if(A){if(typeof A!=="object")throw TypeError("MemoryCacheStore options must be an object");if(A.maxCount!==void 0){if(typeof A.maxCount!=="number"||!Number.isInteger(A.maxCount)||A.maxCount<0)throw TypeError("MemoryCacheStore options.maxCount must be a non-negative integer");this.#A=A.maxCount}if(A.maxSize!==void 0){if(typeof A.maxSize!=="number"||!Number.isInteger(A.maxSize)||A.maxSize<0)throw TypeError("MemoryCacheStore options.maxSize must be a non-negative integer");this.#Q=A.maxSize}if(A.maxEntrySize!==void 0){if(typeof A.maxEntrySize!=="number"||!Number.isInteger(A.maxEntrySize)||A.maxEntrySize<0)throw TypeError("MemoryCacheStore options.maxEntrySize must be a non-negative integer");this.#B=A.maxEntrySize}}}get size(){return this.#Y}isFull(){return this.#Y>=this.#Q||this.#J>=this.#A}get(A){jjQ(A);let Q=`${A.origin}:${A.path}`,B=Date.now(),Y=this.#C.get(Q),J=Y?OjQ(A,Y,B):null;return J==null?void 0:{statusMessage:J.statusMessage,statusCode:J.statusCode,headers:J.headers,body:J.body,vary:J.vary?J.vary:void 0,etag:J.etag,cacheControlDirectives:J.cacheControlDirectives,cachedAt:J.cachedAt,staleAt:J.staleAt,deleteAt:J.deleteAt}}createWriteStream(A,Q){jjQ(A),iv0(Q);let B=`${A.origin}:${A.path}`,Y=this,J={...A,...Q,body:[],size:0};return new lv0({write(C,X,G){if(typeof C==="string")C=Buffer.from(C,X);if(J.size+=C.byteLength,J.size>=Y.#B)this.destroy();else J.body.push(C);G(null)},final(C){let X=Y.#C.get(B);if(!X)X=[],Y.#C.set(B,X);let G=OjQ(A,X,Date.now());if(G){let F=X.indexOf(G);X.splice(F,1,J),Y.#Y-=G.size}else X.push(J),Y.#J+=1;if(Y.#Y+=J.size,Y.#Y>Y.#Q||Y.#J>Y.#A){if(!Y.#F)Y.emit("maxSizeExceeded",{size:Y.#Y,maxSize:Y.#Q,count:Y.#J,maxCount:Y.#A}),Y.#F=!0;for(let[F,W]of Y.#C){for(let Z of W.splice(0,W.length/2))Y.#Y-=Z.size,Y.#J-=1;if(W.length===0)Y.#C.delete(F)}if(Y.#YY.deleteAt>B&&Y.method===A.method&&(Y.vary==null||Object.keys(Y.vary).every((J)=>{if(Y.vary[J]===null)return A.headers[J]===void 0;return Y.vary[J]===A.headers[J]})))}TjQ.exports=PjQ});var _jQ=R((cnY,kjQ)=>{var nv0=u("node:assert");class SjQ{#A=!1;#Q;#B;#Y;#J;constructor(A,Q,B){if(typeof A!=="function")throw TypeError("callback must be a function");this.#Q=A,this.#B=Q,this.#J=B}onRequestStart(A,Q){this.#A=!1,this.#Y=Q}onRequestUpgrade(A,Q,B,Y){this.#B.onRequestUpgrade?.(A,Q,B,Y)}onResponseStart(A,Q,B,Y){if(nv0(this.#Q!=null),this.#A=Q===304||this.#J&&Q>=500&&Q<=504,this.#Q(this.#A,this.#Y),this.#Q=null,this.#A)return!0;this.#B.onRequestStart?.(A,this.#Y),this.#B.onResponseStart?.(A,Q,B,Y)}onResponseData(A,Q){if(this.#A)return;return this.#B.onResponseData?.(A,Q)}onResponseEnd(A,Q){if(this.#A)return;this.#B.onResponseEnd?.(A,Q)}onResponseError(A,Q){if(this.#A)return;if(this.#Q)this.#Q(!1),this.#Q=null;if(typeof this.#B.onResponseError==="function")this.#B.onResponseError(A,Q);else throw Q}}kjQ.exports=SjQ});var gjQ=R((lnY,hjQ)=>{var vjQ=u("node:assert"),{Readable:sv0}=u("node:stream"),FV=lQ(),hq=wjQ(),rv0=fa(),av0=_jQ(),{assertCacheStore:ov0,assertCacheMethods:tv0,makeCacheKey:ev0,normalizeHeaders:Ay0,parseCacheControlHeader:Qy0}=yq(),{AbortError:By0}=QB();function Yy0(A,Q){if(Q?.["no-cache"])return!0;if(A.cacheControlDirectives?.["no-cache"]&&!Array.isArray(A.cacheControlDirectives["no-cache"]))return!0;let B=Date.now();if(B>A.staleAt){if(Q?.["max-stale"]){let Y=A.staleAt+Q["max-stale"]*1000;return B>Y}return!0}if(Q?.["min-fresh"]){let Y=A.staleAt-B,J=Q["min-fresh"]*1000;return Y<=J}return!1}function Jy0(A){let Q=A.cacheControlDirectives?.["stale-while-revalidate"];if(!Q)return!1;let B=Date.now(),Y=A.staleAt+Q*1000;return B<=Y}function Cy0(A,Q,B,Y,J,C){if(C?.["only-if-cached"]){let X=!1;try{if(typeof Y.onConnect==="function"){if(Y.onConnect(()=>{X=!0}),X)return}if(typeof Y.onHeaders==="function"){if(Y.onHeaders(504,[],()=>{},"Gateway Timeout"),X)return}if(typeof Y.onComplete==="function")Y.onComplete([])}catch(G){if(typeof Y.onError==="function")Y.onError(G)}return!0}return A(J,new hq(Q,B,Y))}function ba(A,Q,B,Y,J,C){let X=FV.isStream(B.body)?B.body:sv0.from(B.body??[]);vjQ(!X.destroyed,"stream should not be destroyed"),vjQ(!X.readableDidRead,"stream should not be readableDidRead");let G={resume(){X.resume()},pause(){X.pause()},get paused(){return X.isPaused()},get aborted(){return X.destroyed},get reason(){return X.errored},abort(W){X.destroy(W??new By0)}};if(X.on("error",function(W){if(!this.readableEnded)if(typeof A.onResponseError==="function")A.onResponseError(G,W);else throw W}).on("close",function(){if(!this.errored)A.onResponseEnd?.(G,{})}),A.onRequestStart?.(G,J),X.destroyed)return;let F={...B.headers,age:String(Y)};if(C)F.warning='110 - "response is stale"';if(A.onResponseStart?.(G,B.statusCode,F,B.statusMessage),Q.method==="HEAD")X.destroy();else X.on("data",function(W){A.onResponseData?.(G,W)})}function yjQ(A,Q,B,Y,J,C,X){if(!X)return Cy0(A,Q,B,Y,J,C);let G=Date.now();if(G>X.deleteAt)return A(J,new hq(Q,B,Y));let F=Math.round((G-X.cachedAt)/1000);if(C?.["max-age"]&&F>=C["max-age"])return A(J,Y);if(Yy0(X,C)){if(FV.isStream(J.body)&&FV.bodyLength(J.body)!==0)return A(J,new hq(Q,B,Y));if(Jy0(X))return ba(Y,J,X,F,null,!0),queueMicrotask(()=>{let $={...J.headers,"if-modified-since":new Date(X.cachedAt).toUTCString()};if(X.etag)$["if-none-match"]=X.etag;if(X.vary)$={...$,...X.vary};A({...J,headers:$},new hq(Q,B,{onRequestStart(){},onRequestUpgrade(){},onResponseStart(){},onResponseData(){},onResponseEnd(){},onResponseError(){}}))}),!0;let W=!1,Z=X.cacheControlDirectives["stale-if-error"]??C?.["stale-if-error"];if(Z)W=G{if($)ba(Y,J,X,F,E,!0);else if(FV.isStream(X.body))X.body.on("error",()=>{}).destroy()},new hq(Q,B,Y),W))}if(FV.isStream(J.body))J.body.on("error",()=>{}).destroy();ba(Y,J,X,F,null,!1)}hjQ.exports=(A={})=>{let{store:Q=new rv0,methods:B=["GET"],cacheByDefault:Y=void 0,type:J="shared"}=A;if(typeof A!=="object"||A===null)throw TypeError(`expected type of opts to be an Object, got ${A===null?"null":typeof A}`);if(ov0(Q,"opts.store"),tv0(B,"opts.methods"),typeof Y<"u"&&typeof Y!=="number")throw TypeError(`expected opts.cacheByDefault to be number or undefined, got ${typeof Y}`);if(typeof J<"u"&&J!=="shared"&&J!=="private")throw TypeError(`expected opts.type to be shared, private, or undefined, got ${typeof J}`);let C={store:Q,methods:B,cacheByDefault:Y,type:J},X=FV.safeHTTPMethods.filter((G)=>B.includes(G)===!1);return(G)=>{return(F,W)=>{if(!F.origin||X.includes(F.method))return G(F,W);F={...F,headers:Ay0(F)};let Z=F.headers?.["cache-control"]?Qy0(F.headers["cache-control"]):void 0;if(Z?.["no-store"])return G(F,W);let U=ev0(F),$=Q.get(U);if($&&typeof $.then==="function")$.then((E)=>{yjQ(G,C,U,W,F,Z,E)});else yjQ(G,C,U,W,F,Z,$);return!0}}}});var cjQ=R((pnY,djQ)=>{var{createInflate:ma,createGunzip:xjQ,createBrotliDecompress:Xy0,createZstdDecompress:fjQ}=u("node:zlib"),{pipeline:Gy0}=u("node:stream"),Fy0=XV(),bjQ={gzip:xjQ,"x-gzip":xjQ,br:Xy0,deflate:ma,compress:ma,"x-compress":ma,...fjQ?{zstd:fjQ}:{}},Wy0=[204,304],mjQ=!1;class ujQ extends Fy0{#A=[];#Q;#B;#Y;constructor(A,{skipStatusCodes:Q=Wy0,skipErrorResponses:B=!0}={}){super(A);this.#B=Q,this.#Y=B}#J(A,Q){if(!A||Q<200)return!0;if(this.#B.includes(Q))return!0;if(this.#Y&&Q>=400)return!0;return!1}#C(A){let Q=A.split(","),B=[];for(let Y=Q.length-1;Y>=0;Y--){let J=Q[Y].trim();if(!J)continue;if(!bjQ[J])return B.length=0,B;B.push(bjQ[J]())}return B}#F(A,Q){A.on("readable",()=>{let B;while((B=A.read())!==null)if(super.onResponseData(Q,B)===!1)break}),A.on("error",(B)=>{super.onResponseError(Q,B)})}#X(A){let Q=this.#A[0];this.#F(Q,A),Q.on("end",()=>{super.onResponseEnd(A,{})})}#G(A){let Q=this.#A[this.#A.length-1];this.#F(Q,A),this.#Q=Gy0(this.#A,(B)=>{if(B){super.onResponseError(A,B);return}super.onResponseEnd(A,{})})}#Z(){this.#A.length=0,this.#Q=null}onResponseStart(A,Q,B,Y){let J=B["content-encoding"];if(this.#J(J,Q))return super.onResponseStart(A,Q,B,Y);let C=this.#C(J.toLowerCase());if(C.length===0)return this.#Z(),super.onResponseStart(A,Q,B,Y);this.#A=C;let{"content-encoding":X,"content-length":G,...F}=B;if(this.#A.length===1)this.#X(A);else this.#G(A);super.onResponseStart(A,Q,F,Y)}onResponseData(A,Q){if(this.#A.length>0){this.#A[0].write(Q);return}super.onResponseData(A,Q)}onResponseEnd(A,Q){if(this.#A.length>0){this.#A[0].end(),this.#Z();return}super.onResponseEnd(A,Q)}onResponseError(A,Q){if(this.#A.length>0){for(let B of this.#A)B.destroy(Q);this.#Z()}super.onResponseError(A,Q)}}function Zy0(A={}){if(!mjQ)process.emitWarning("DecompressInterceptor is experimental and subject to change","ExperimentalWarning"),mjQ=!0;return(Q)=>{return(B,Y)=>{let J=new ujQ(Y,A);return Q(B,J)}}}djQ.exports=Zy0});var pjQ=R((inY,ljQ)=>{var{Writable:$y0}=u("node:stream"),{assertCacheKey:ua,assertCacheValue:Uy0}=yq(),da;ljQ.exports=class{#A=2000000000;#Q=1/0;#B;#Y;#J;#C;#F;#X;#G;#Z;constructor(Q){if(Q){if(typeof Q!=="object")throw TypeError("SqliteCacheStore options must be an object");if(Q.maxEntrySize!==void 0){if(typeof Q.maxEntrySize!=="number"||!Number.isInteger(Q.maxEntrySize)||Q.maxEntrySize<0)throw TypeError("SqliteCacheStore options.maxEntrySize must be a non-negative integer");if(Q.maxEntrySize>2000000000)throw TypeError("SqliteCacheStore options.maxEntrySize must be less than 2gb");this.#A=Q.maxEntrySize}if(Q.maxCount!==void 0){if(typeof Q.maxCount!=="number"||!Number.isInteger(Q.maxCount)||Q.maxCount<0)throw TypeError("SqliteCacheStore options.maxCount must be a non-negative integer");this.#Q=Q.maxCount}}if(!da)da=u("node:sqlite").DatabaseSync;this.#B=new da(Q?.location??":memory:"),this.#B.exec(` +${A.format(Q)}`.trim())}}HjQ.exports=IjQ});var ta=R((MrY,LjQ)=>{var{InvalidArgumentError:Sv0}=QB();function kv0(A={}){let{ignoreHeaders:Q=[],excludeHeaders:B=[],matchHeaders:Y=[],caseSensitive:J=!1}=A;return{ignore:new Set(Q.map((C)=>J?C:C.toLowerCase())),exclude:new Set(B.map((C)=>J?C:C.toLowerCase())),match:new Set(Y.map((C)=>J?C:C.toLowerCase()))}}var oa;try{oa=u("node:crypto")}catch{}var _v0=oa?.hash?(A)=>oa.hash("sha256",A,"base64url"):(A)=>Buffer.from(A).toString("base64url");function NjQ(A){return Array.isArray(A)&&(A.length&1)===0}function vv0(A=[]){if(A.length===0)return()=>!1;return function(B){let Y;for(let J of A)if(typeof J==="string"){if(!Y)Y=B.toLowerCase();if(Y.includes(J.toLowerCase()))return!0}else if(J instanceof RegExp){if(J.test(B))return!0}return!1}}function yv0(A){let Q={};if(!A)return Q;if(NjQ(A)){for(let B=0;B{var{writeFile:hv0,readFile:xv0,mkdir:fv0}=u("node:fs/promises"),{dirname:bv0,resolve:qjQ}=u("node:path"),{setTimeout:mv0,clearTimeout:MjQ}=u("node:timers"),{InvalidArgumentError:zjQ,UndiciError:uv0}=QB(),{hashId:dv0,isUrlExcludedFactory:cv0,normalizeHeaders:RjQ,createHeaderFilters:wjQ}=ta();function pq(A,Q,B={}){let Y=new URL(A.path,A.origin),J=A._normalizedHeaders||RjQ(A.headers);if(!A._normalizedHeaders)A._normalizedHeaders=J;return{method:A.method||"GET",url:B.matchQuery!==!1?Y.toString():`${Y.origin}${Y.pathname}`,headers:jjQ(J,Q,B),body:B.matchBody!==!1&&A.body?String(A.body):""}}function jjQ(A,Q,B={}){if(!A||typeof A!=="object")return{};let{caseSensitive:Y=!1}=B,J={},{ignore:C,exclude:X,match:G}=Q;for(let[W,F]of Object.entries(A)){let Z=Y?W:W.toLowerCase();if(X.has(Z))continue;if(C.has(Z))continue;if(G.size!==0){if(!G.has(Z))continue}J[Z]=F}return J}function OjQ(A,Q,B={}){if(!A||typeof A!=="object")return{};let{caseSensitive:Y=!1}=B,J={},{exclude:C}=Q;for(let[X,G]of Object.entries(A)){let W=Y?X:X.toLowerCase();if(C.has(W))continue;J[W]=G}return J}function iq(A){let Q=[A.method,A.url];if(A.headers&&typeof A.headers==="object"){let Y=Object.keys(A.headers).sort();for(let J of Y){let C=Array.isArray(A.headers[J])?A.headers[J]:[A.headers[J]];Q.push(J);for(let X of C.sort())Q.push(String(X))}}Q.push(A.body);let B=Q.join("|");return dv0(B)}class PjQ{#A;#Q;#B=new Map;#Y;#J=1/0;#C=!1;#W;constructor(A={}){if(this.#Y=A.snapshotPath,this.#J=A.maxSnapshots||1/0,this.#C=A.autoFlush||!1,this.flushInterval=A.flushInterval||30000,this._flushTimer=null,this.matchOptions={matchHeaders:A.matchHeaders||[],ignoreHeaders:A.ignoreHeaders||[],excludeHeaders:A.excludeHeaders||[],matchBody:A.matchBody!==!1,matchQuery:A.matchQuery!==!1,caseSensitive:A.caseSensitive||!1},this.#W=wjQ(this.matchOptions),this.shouldRecord=A.shouldRecord||(()=>!0),this.shouldPlayback=A.shouldPlayback||(()=>!0),this.#Q=cv0(A.excludeUrls),this.#C&&this.#Y)this.#X()}async record(A,Q){if(!this.shouldRecord(A))return;let B=new URL(A.path,A.origin).toString();if(this.#Q(B))return;let Y=pq(A,this.#W,this.matchOptions),J=iq(Y),C=RjQ(Q.headers),X={statusCode:Q.statusCode,headers:OjQ(C,this.#W,this.matchOptions),body:Buffer.isBuffer(Q.body)?Q.body.toString("base64"):Buffer.from(String(Q.body||"")).toString("base64"),trailers:Q.trailers};if(this.#B.size>=this.#J&&!this.#B.has(J)){let W=this.#B.keys().next().value;this.#B.delete(W)}let G=this.#B.get(J);if(G&&G.responses)G.responses.push(X),G.timestamp=new Date().toISOString();else this.#B.set(J,{request:Y,responses:[X],callCount:0,timestamp:new Date().toISOString()});if(this.#C&&this.#Y)this.#Z()}findSnapshot(A){if(!this.shouldPlayback(A))return;let Q=new URL(A.path,A.origin).toString();if(this.#Q(Q))return;let B=pq(A,this.#W,this.matchOptions),Y=iq(B),J=this.#B.get(Y);if(!J)return;let C=J.callCount||0,X=Math.min(C,J.responses.length-1);return J.callCount=C+1,{...J,response:J.responses[X]}}async loadSnapshots(A){let Q=A||this.#Y;if(!Q)throw new zjQ("Snapshot path is required");try{let B=await xv0(qjQ(Q),"utf8"),Y=JSON.parse(B);if(Array.isArray(Y)){this.#B.clear();for(let{hash:J,snapshot:C}of Y)this.#B.set(J,C)}else this.#B=new Map(Object.entries(Y))}catch(B){if(B.code==="ENOENT")this.#B.clear();else throw new uv0(`Failed to load snapshots from ${Q}`,{cause:B})}}async saveSnapshots(A){let Q=A||this.#Y;if(!Q)throw new zjQ("Snapshot path is required");let B=qjQ(Q);await fv0(bv0(B),{recursive:!0});let Y=Array.from(this.#B.entries()).map(([J,C])=>({hash:J,snapshot:C}));await hv0(B,JSON.stringify(Y,null,2),{flush:!0})}clear(){this.#B.clear()}getSnapshots(){return Array.from(this.#B.values())}size(){return this.#B.size}resetCallCounts(){for(let A of this.#B.values())A.callCount=0}deleteSnapshot(A){let Q=pq(A,this.#W,this.matchOptions),B=iq(Q);return this.#B.delete(B)}getSnapshotInfo(A){let Q=pq(A,this.#W,this.matchOptions),B=iq(Q),Y=this.#B.get(B);if(!Y)return null;return{hash:B,request:Y.request,responseCount:Y.responses?Y.responses.length:Y.response?1:0,callCount:Y.callCount||0,timestamp:Y.timestamp}}replaceSnapshots(A){if(this.#B.clear(),Array.isArray(A))for(let{hash:Q,snapshot:B}of A)this.#B.set(Q,B);else if(A&&typeof A==="object")this.#B=new Map(Object.entries(A))}#X(){return this.#Z()}#G(){if(this.#A)MjQ(this.#A),this.saveSnapshots().catch(()=>{}),this.#A=null}#Z(){this.#A=mv0(()=>{if(this.saveSnapshots().catch(()=>{}),this.#C)this.#A?.refresh();else this.#A=null},1000)}destroy(){if(this.#G(),this.#A)MjQ(this.#A),this.#A=null}async close(){if(this.#Y&&this.#B.size!==0)await this.saveSnapshots();this.destroy()}}TjQ.exports={SnapshotRecorder:PjQ,formatRequestKey:pq,createRequestHash:iq,filterHeadersForMatching:jjQ,filterHeadersForStorage:OjQ,createHeaderFilters:wjQ}});var yjQ=R((RrY,vjQ)=>{var lv0=o$(),pv0=aa(),{SnapshotRecorder:iv0}=SjQ(),nv0=Zq(),{InvalidArgumentError:sv0,UndiciError:rv0}=QB(),{validateSnapshotMode:av0}=ta(),i8=Symbol("kSnapshotRecorder"),fG=Symbol("kSnapshotMode"),nq=Symbol("kSnapshotPath"),ea=Symbol("kSnapshotLoaded"),Ao=Symbol("kRealAgent"),kjQ=!1;class _jQ extends pv0{constructor(A={}){if(!kjQ)process.emitWarning("SnapshotAgent is experimental and subject to change","ExperimentalWarning"),kjQ=!0;let{mode:Q="record",snapshotPath:B=null,...Y}=A;super(Y);if(av0(Q),(Q==="playback"||Q==="update")&&!B)throw new sv0(`snapshotPath is required when mode is '${Q}'`);if(this[fG]=Q,this[nq]=B,this[i8]=new iv0({snapshotPath:this[nq],mode:this[fG],maxSnapshots:A.maxSnapshots,autoFlush:A.autoFlush,flushInterval:A.flushInterval,matchHeaders:A.matchHeaders,ignoreHeaders:A.ignoreHeaders,excludeHeaders:A.excludeHeaders,matchBody:A.matchBody,matchQuery:A.matchQuery,caseSensitive:A.caseSensitive,shouldRecord:A.shouldRecord,shouldPlayback:A.shouldPlayback,excludeUrls:A.excludeUrls}),this[ea]=!1,this[fG]==="record"||this[fG]==="update")this[Ao]=new lv0(A);if((this[fG]==="playback"||this[fG]==="update")&&this[nq])this.loadSnapshots().catch(()=>{})}dispatch(A,Q){Q=nv0.wrap(Q);let B=this[fG];if(B==="playback"||B==="update"){if(!this[ea])return this.#A(A,Q);let Y=this[i8].findSnapshot(A);if(Y)return this.#B(Y,Q);else if(B==="update")return this.#Q(A,Q);else{let J=new rv0(`No snapshot found for ${A.method||"GET"} ${A.path}`);if(Q.onError){Q.onError(J);return}throw J}}else if(B==="record")return this.#Q(A,Q)}async#A(A,Q){return await this.loadSnapshots(),this.dispatch(A,Q)}#Q(A,Q){let B={statusCode:null,headers:{},trailers:{},body:[]},Y=this,J={onRequestStart(X,G){return Q.onRequestStart(X,{...G,history:this.history})},onRequestUpgrade(X,G,W,F){return Q.onRequestUpgrade(X,G,W,F)},onResponseStart(X,G,W,F){return B.statusCode=G,B.headers=W,Q.onResponseStart(X,G,W,F)},onResponseData(X,G){return B.body.push(G),Q.onResponseData(X,G)},onResponseEnd(X,G){B.trailers=G;let W=Buffer.concat(B.body);Y[i8].record(A,{statusCode:B.statusCode,headers:B.headers,body:W,trailers:B.trailers}).then(()=>{Q.onResponseEnd(X,G)}).catch((F)=>{Q.onResponseError(X,F)})}};return this[Ao].dispatch(A,J)}#B(A,Q){try{let{response:B}=A,Y={pause(){},resume(){},abort(C){this.aborted=!0,this.reason=C},aborted:!1,paused:!1};Q.onRequestStart(Y),Q.onResponseStart(Y,B.statusCode,B.headers);let J=Buffer.from(B.body,"base64");Q.onResponseData(Y,J),Q.onResponseEnd(Y,B.trailers)}catch(B){Q.onError?.(B)}}async loadSnapshots(A){if(await this[i8].loadSnapshots(A||this[nq]),this[ea]=!0,this[fG]==="playback")this.#Y()}async saveSnapshots(A){return this[i8].saveSnapshots(A||this[nq])}#Y(){for(let A of this[i8].getSnapshots()){let{request:Q,responses:B,response:Y}=A,J=new URL(Q.url),C=this.get(J.origin),X=B?B[0]:Y;if(!X)continue;C.intercept({path:J.pathname+J.search,method:Q.method,headers:Q.headers,body:Q.body}).reply(X.statusCode,X.body,{headers:X.headers,trailers:X.trailers}).persist()}}getRecorder(){return this[i8]}getMode(){return this[fG]}clearSnapshots(){this[i8].clear()}resetCallCounts(){this[i8].resetCallCounts()}deleteSnapshot(A){return this[i8].deleteSnapshot(A)}getSnapshotInfo(A){return this[i8].getSnapshotInfo(A)}replaceSnapshots(A){this[i8].replaceSnapshots(A)}async close(){await this[i8].close(),await this[Ao]?.close(),await super.close()}}vjQ.exports=_jQ});var Ak=R((wrY,fjQ)=>{var gjQ=Symbol.for("undici.globalDispatcher.1"),{InvalidArgumentError:ov0}=QB(),tv0=o$();if(xjQ()===void 0)hjQ(new tv0);function hjQ(A){if(!A||typeof A.dispatch!=="function")throw new ov0("Argument agent must implement Agent");Object.defineProperty(globalThis,gjQ,{value:A,writable:!0,enumerable:!1,configurable:!1})}function xjQ(){return globalThis[gjQ]}var ev0=["fetch","Headers","Response","Request","FormData","WebSocket","CloseEvent","ErrorEvent","MessageEvent","EventSource"];fjQ.exports={setGlobalDispatcher:hjQ,getGlobalDispatcher:xjQ,installedExports:ev0}});var KV=R((jrY,bjQ)=>{var bG=u("node:assert"),Ay0=Zq();bjQ.exports=class{#A;#Q=!1;#B=!1;#Y=!1;constructor(Q){if(typeof Q!=="object"||Q===null)throw TypeError("handler must be an object");this.#A=Ay0.wrap(Q)}onRequestStart(...Q){this.#A.onRequestStart?.(...Q)}onRequestUpgrade(...Q){return bG(!this.#Q),bG(!this.#B),this.#A.onRequestUpgrade?.(...Q)}onResponseStart(...Q){return bG(!this.#Q),bG(!this.#B),bG(!this.#Y),this.#Y=!0,this.#A.onResponseStart?.(...Q)}onResponseData(...Q){return bG(!this.#Q),bG(!this.#B),this.#A.onResponseData?.(...Q)}onResponseEnd(...Q){return bG(!this.#Q),bG(!this.#B),this.#Q=!0,this.#A.onResponseEnd?.(...Q)}onResponseError(...Q){return this.#B=!0,this.#A.onResponseError?.(...Q)}onBodySent(){}}});var Co=R((OrY,cjQ)=>{var n8=lQ(),{kBodyUsed:sq}=B0(),Yo=u("node:assert"),{InvalidArgumentError:Qo}=QB(),Qy0=u("node:events"),By0=[300,301,302,303,307,308],mjQ=Symbol("body"),ujQ=()=>{};class Bo{constructor(A){this[mjQ]=A,this[sq]=!1}async*[Symbol.asyncIterator](){Yo(!this[sq],"disturbed"),this[sq]=!0,yield*this[mjQ]}}class Jo{static buildDispatch(A,Q){if(Q!=null&&(!Number.isInteger(Q)||Q<0))throw new Qo("maxRedirections must be a positive number");let B=A.dispatch.bind(A);return(Y,J)=>B(Y,new Jo(B,Q,Y,J))}constructor(A,Q,B,Y){if(Q!=null&&(!Number.isInteger(Q)||Q<0))throw new Qo("maxRedirections must be a positive number");this.dispatch=A,this.location=null;let{maxRedirections:J,...C}=B;if(this.opts=C,this.maxRedirections=Q,this.handler=Y,this.history=[],n8.isStream(this.opts.body)){if(n8.bodyLength(this.opts.body)===0)this.opts.body.on("data",function(){Yo(!1)});if(typeof this.opts.body.readableDidRead!=="boolean")this.opts.body[sq]=!1,Qy0.prototype.on.call(this.opts.body,"data",function(){this[sq]=!0})}else if(this.opts.body&&typeof this.opts.body.pipeTo==="function")this.opts.body=new Bo(this.opts.body);else if(this.opts.body&&typeof this.opts.body!=="string"&&!ArrayBuffer.isView(this.opts.body)&&n8.isIterable(this.opts.body)&&!n8.isFormDataLike(this.opts.body))this.opts.body=new Bo(this.opts.body)}onRequestStart(A,Q){this.handler.onRequestStart?.(A,{...Q,history:this.history})}onRequestUpgrade(A,Q,B,Y){this.handler.onRequestUpgrade?.(A,Q,B,Y)}onResponseStart(A,Q,B,Y){if(this.opts.throwOnMaxRedirect&&this.history.length>=this.maxRedirections)throw Error("max redirects");if((Q===301||Q===302)&&this.opts.method==="POST"){if(this.opts.method="GET",n8.isStream(this.opts.body))n8.destroy(this.opts.body.on("error",ujQ));this.opts.body=null}if(Q===303&&this.opts.method!=="HEAD"){if(this.opts.method="GET",n8.isStream(this.opts.body))n8.destroy(this.opts.body.on("error",ujQ));this.opts.body=null}if(this.location=this.history.length>=this.maxRedirections||n8.isDisturbed(this.opts.body)||By0.indexOf(Q)===-1?null:B.location,this.opts.origin)this.history.push(new URL(this.opts.path,this.opts.origin));if(!this.location){this.handler.onResponseStart?.(A,Q,B,Y);return}let{origin:J,pathname:C,search:X}=n8.parseURL(new URL(this.location,this.opts.origin&&new URL(this.opts.path,this.opts.origin))),G=X?`${C}${X}`:C,W=`${J}${G}`;for(let F of this.history)if(F.toString()===W)throw new Qo(`Redirect loop detected. Cannot redirect to ${J}. This typically happens when using a Client or Pool with cross-origin redirects. Use an Agent for cross-origin redirects.`);this.opts.headers=Yy0(this.opts.headers,Q===303,this.opts.origin!==J),this.opts.path=G,this.opts.origin=J,this.opts.query=null}onResponseData(A,Q){if(this.location);else this.handler.onResponseData?.(A,Q)}onResponseEnd(A,Q){if(this.location)this.dispatch(this.opts,this);else this.handler.onResponseEnd(A,Q)}onResponseError(A,Q){this.handler.onResponseError?.(A,Q)}}function djQ(A,Q,B){if(A.length===4)return n8.headerNameToString(A)==="host";if(Q&&n8.headerNameToString(A).startsWith("content-"))return!0;if(B&&(A.length===13||A.length===6||A.length===19)){let Y=n8.headerNameToString(A);return Y==="authorization"||Y==="cookie"||Y==="proxy-authorization"}return!1}function Yy0(A,Q,B){let Y=[];if(Array.isArray(A)){for(let J=0;J{var Jy0=Co();function Cy0({maxRedirections:A}={}){return(Q)=>{return function(Y,J){let{maxRedirections:C=A,...X}=Y;if(C==null||C===0)return Q(Y,J);let G={...X},W=new Jy0(Q,C,G,J);return Q(G,W)}}}ljQ.exports=Cy0});var sjQ=R((TrY,njQ)=>{var Xy0=KV(),{ResponseError:Gy0}=QB();class ijQ extends Xy0{#A;#Q;#B;#Y;#J;constructor(A,{handler:Q}){super(Q)}#C(A){return(this.#Q??"").indexOf(A)===0}onRequestStart(A,Q){return this.#A=0,this.#Q=null,this.#B=null,this.#Y=null,this.#J="",super.onRequestStart(A,Q)}onResponseStart(A,Q,B,Y){if(this.#A=Q,this.#Y=B,this.#Q=B["content-type"],this.#A<400)return super.onResponseStart(A,Q,B,Y);if(this.#C("application/json")||this.#C("text/plain"))this.#B=new TextDecoder("utf-8")}onResponseData(A,Q){if(this.#A<400)return super.onResponseData(A,Q);this.#J+=this.#B?.decode(Q,{stream:!0})??""}onResponseEnd(A,Q){if(this.#A>=400){if(this.#J+=this.#B?.decode(void 0,{stream:!1})??"",this.#C("application/json"))try{this.#J=JSON.parse(this.#J)}catch{}let B,Y=Error.stackTraceLimit;Error.stackTraceLimit=0;try{B=new Gy0("Response Error",this.#A,{body:this.#J,headers:this.#Y})}finally{Error.stackTraceLimit=Y}super.onResponseError(A,B)}else super.onResponseEnd(A,Q)}onResponseError(A,Q){super.onResponseError(A,Q)}}njQ.exports=()=>{return(A)=>{return function(B,Y){return A(B,new ijQ(B,{handler:Y}))}}}});var ajQ=R((SrY,rjQ)=>{var Wy0=uS();rjQ.exports=(A)=>{return(Q)=>{return function(Y,J){return Q(Y,new Wy0({...Y,retryOptions:{...A,...Y.retryOptions}},{handler:J,dispatch:Q}))}}}});var ejQ=R((krY,tjQ)=>{var{InvalidArgumentError:Fy0,RequestAbortedError:Zy0}=QB(),$y0=KV();class ojQ extends $y0{#A=1048576;#Q=!1;#B=0;#Y=null;aborted=!1;reason=!1;constructor({maxSize:A,signal:Q},B){if(A!=null&&(!Number.isFinite(A)||A<1))throw new Fy0("maxSize must be a number greater than 0");super(B);this.#A=A??this.#A}#J(A){this.aborted=!0,this.reason=A}onRequestStart(A,Q){return A.abort=this.#J.bind(this),this.#Y=A,super.onRequestStart(A,Q)}onResponseStart(A,Q,B,Y){let J=B["content-length"];if(J!=null&&J>this.#A)throw new Zy0(`Response size (${J}) larger than maxSize (${this.#A})`);if(this.aborted===!0)return!0;return super.onResponseStart(A,Q,B,Y)}onResponseError(A,Q){if(this.#Q)return;Q=this.#Y?.reason??Q,super.onResponseError(A,Q)}onResponseData(A,Q){if(this.#B=this.#B+Q.length,this.#B>=this.#A)if(this.#Q=!0,this.aborted===!0)super.onResponseError(A,this.reason);else super.onResponseEnd(A,{});return!0}onResponseEnd(A,Q){if(this.#Q)return;if(this.#Y.aborted===!0){super.onResponseError(A,this.reason);return}super.onResponseEnd(A,Q)}}function Uy0({maxSize:A}={maxSize:1048576}){return(Q)=>{return function(Y,J){let{dumpMaxSize:C=A}=Y,X=new ojQ({maxSize:C,signal:Y.signal},J);return Q(Y,X)}}}tjQ.exports=Uy0});var YOQ=R((_rY,BOQ)=>{var{isIP:Ey0}=u("node:net"),{lookup:Ky0}=u("node:dns"),Vy0=KV(),{InvalidArgumentError:VV,InformationalError:Iy0}=QB(),Xo=Math.pow(2,31)-1;class AOQ{#A=0;#Q=0;#B=new Map;dualStack=!0;affinity=null;lookup=null;pick=null;constructor(A){this.#A=A.maxTTL,this.#Q=A.maxItems,this.dualStack=A.dualStack,this.affinity=A.affinity,this.lookup=A.lookup??this.#Y,this.pick=A.pick??this.#J}get full(){return this.#B.size===this.#Q}runLookup(A,Q,B){let Y=this.#B.get(A.hostname);if(Y==null&&this.full){B(null,A);return}let J={affinity:this.affinity,dualStack:this.dualStack,lookup:this.lookup,pick:this.pick,...Q.dns,maxTTL:this.#A,maxItems:this.#Q};if(Y==null)this.lookup(A,J,(C,X)=>{if(C||X==null||X.length===0){B(C??new Iy0("No DNS entries found"));return}this.setRecords(A,X);let G=this.#B.get(A.hostname),W=this.pick(A,G,J.affinity),F;if(typeof W.port==="number")F=`:${W.port}`;else if(A.port!=="")F=`:${A.port}`;else F="";B(null,new URL(`${A.protocol}//${W.family===6?`[${W.address}]`:W.address}${F}`))});else{let C=this.pick(A,Y,J.affinity);if(C==null){this.#B.delete(A.hostname),this.runLookup(A,Q,B);return}let X;if(typeof C.port==="number")X=`:${C.port}`;else if(A.port!=="")X=`:${A.port}`;else X="";B(null,new URL(`${A.protocol}//${C.family===6?`[${C.address}]`:C.address}${X}`))}}#Y(A,Q,B){Ky0(A.hostname,{all:!0,family:this.dualStack===!1?this.affinity:0,order:"ipv4first"},(Y,J)=>{if(Y)return B(Y);let C=new Map;for(let X of J)C.set(`${X.address}:${X.family}`,X);B(null,C.values())})}#J(A,Q,B){let Y=null,{records:J,offset:C}=Q,X;if(this.dualStack){if(B==null)if(C==null||C===Xo)Q.offset=0,B=4;else Q.offset++,B=(Q.offset&1)===1?6:4;if(J[B]!=null&&J[B].ips.length>0)X=J[B];else X=J[B===4?6:4]}else X=J[B];if(X==null||X.ips.length===0)return Y;if(X.offset==null||X.offset===Xo)X.offset=0;else X.offset++;let G=X.offset%X.ips.length;if(Y=X.ips[G]??null,Y==null)return Y;if(Date.now()-Y.timestamp>Y.ttl)return X.ips.splice(G,1),this.pick(A,Q,B);return Y}pickFamily(A,Q){let B=this.#B.get(A.hostname)?.records;if(!B)return null;let Y=B[Q];if(!Y)return null;if(Y.offset==null||Y.offset===Xo)Y.offset=0;else Y.offset++;let J=Y.offset%Y.ips.length,C=Y.ips[J]??null;if(C==null)return C;if(Date.now()-C.timestamp>C.ttl)Y.ips.splice(J,1);return C}setRecords(A,Q){let B=Date.now(),Y={records:{4:null,6:null}};for(let J of Q){if(J.timestamp=B,typeof J.ttl==="number")J.ttl=Math.min(J.ttl,this.#A);else J.ttl=this.#A;let C=Y.records[J.family]??{ips:[]};C.ips.push(J),Y.records[J.family]=C}this.#B.set(A.hostname,Y)}deleteRecords(A){this.#B.delete(A.hostname)}getHandler(A,Q){return new QOQ(this,A,Q)}}class QOQ extends Vy0{#A=null;#Q=null;#B=null;#Y=null;#J=null;#C=null;#W=!0;constructor(A,{origin:Q,handler:B,dispatch:Y,newOrigin:J},C){super(B);this.#Y=Q,this.#C=J,this.#Q={...C},this.#A=A,this.#B=Y}onResponseError(A,Q){switch(Q.code){case"ETIMEDOUT":case"ECONNREFUSED":{if(this.#A.dualStack){if(!this.#W){super.onResponseError(A,Q);return}this.#W=!1;let B=this.#C.hostname[0]==="["?4:6,Y=this.#A.pickFamily(this.#Y,B);if(Y==null){super.onResponseError(A,Q);return}let J;if(typeof Y.port==="number")J=`:${Y.port}`;else if(this.#Y.port!=="")J=`:${this.#Y.port}`;else J="";let C={...this.#Q,origin:`${this.#Y.protocol}//${Y.family===6?`[${Y.address}]`:Y.address}${J}`};this.#B(C,this);return}super.onResponseError(A,Q);break}case"ENOTFOUND":this.#A.deleteRecords(this.#Y),super.onResponseError(A,Q);break;default:super.onResponseError(A,Q);break}}}BOQ.exports=(A)=>{if(A?.maxTTL!=null&&(typeof A?.maxTTL!=="number"||A?.maxTTL<0))throw new VV("Invalid maxTTL. Must be a positive number");if(A?.maxItems!=null&&(typeof A?.maxItems!=="number"||A?.maxItems<1))throw new VV("Invalid maxItems. Must be a positive number and greater than zero");if(A?.affinity!=null&&A?.affinity!==4&&A?.affinity!==6)throw new VV("Invalid affinity. Must be either 4 or 6");if(A?.dualStack!=null&&typeof A?.dualStack!=="boolean")throw new VV("Invalid dualStack. Must be a boolean");if(A?.lookup!=null&&typeof A?.lookup!=="function")throw new VV("Invalid lookup. Must be a function");if(A?.pick!=null&&typeof A?.pick!=="function")throw new VV("Invalid pick. Must be a function");let Q=A?.dualStack??!0,B;if(Q)B=A?.affinity??null;else B=A?.affinity??4;let Y={maxTTL:A?.maxTTL??1e4,lookup:A?.lookup??null,pick:A?.pick??null,dualStack:Q,affinity:B,maxItems:A?.maxItems??1/0},J=new AOQ(Y);return(C)=>{return function(G,W){let F=G.origin.constructor===URL?G.origin:new URL(G.origin);if(Ey0(F.hostname)!==0)return C(G,W);return J.runLookup(F,G,(Z,U)=>{if(Z)return W.onResponseError(null,Z);let $={...G,servername:F.hostname,origin:U.origin,headers:{host:F.host,...G.headers}};C($,J.getHandler({origin:F,dispatch:C,handler:W,newOrigin:U},G))}),!0}}}});var rq=R((vrY,COQ)=>{var{safeHTTPMethods:JOQ,pathHasQueryOrFragment:Hy0}=lQ(),{serializePathWithQuery:Dy0}=lQ();function Ny0(A){if(!A.origin)throw Error("opts.origin is undefined");let Q=A.path||"/";if(A.query&&!Hy0(A.path))Q=Dy0(Q,A.query);return{origin:A.origin.toString(),method:A.method,path:Q,headers:A.headers}}function Ly0(A){let Q;if(A.headers==null)Q={};else if(typeof A.headers[Symbol.iterator]==="function"){Q={};for(let B of A.headers){if(!Array.isArray(B))throw Error("opts.headers is not a valid header map");let[Y,J]=B;if(typeof Y!=="string"||typeof J!=="string")throw Error("opts.headers is not a valid header map");Q[Y.toLowerCase()]=J}}else if(typeof A.headers==="object"){Q={};for(let B of Object.keys(A.headers))Q[B.toLowerCase()]=A.headers[B]}else throw Error("opts.headers is not an object");return Q}function qy0(A){if(typeof A!=="object")throw TypeError(`expected key to be object, got ${typeof A}`);for(let Q of["origin","method","path"])if(typeof A[Q]!=="string")throw TypeError(`expected key.${Q} to be string, got ${typeof A[Q]}`);if(A.headers!==void 0&&typeof A.headers!=="object")throw TypeError(`expected headers to be object, got ${typeof A}`)}function My0(A){if(typeof A!=="object")throw TypeError(`expected value to be object, got ${typeof A}`);for(let Q of["statusCode","cachedAt","staleAt","deleteAt"])if(typeof A[Q]!=="number")throw TypeError(`expected value.${Q} to be number, got ${typeof A[Q]}`);if(typeof A.statusMessage!=="string")throw TypeError(`expected value.statusMessage to be string, got ${typeof A.statusMessage}`);if(A.headers!=null&&typeof A.headers!=="object")throw TypeError(`expected value.rawHeaders to be object, got ${typeof A.headers}`);if(A.vary!==void 0&&typeof A.vary!=="object")throw TypeError(`expected value.vary to be object, got ${typeof A.vary}`);if(A.etag!==void 0&&typeof A.etag!=="string")throw TypeError(`expected value.etag to be string, got ${typeof A.etag}`)}function zy0(A){let Q={},B;if(Array.isArray(A)){B=[];for(let Y of A)B.push(...Y.split(","))}else B=A.split(",");for(let Y=0;Y=2&&G[0]==='"'&&G[G.length-1]==='"')G=G.substring(1,G.length-1);let W=parseInt(G,10);if(W!==W)continue;if(X==="max-age"&&X in Q&&Q[X]>=W)continue;Q[X]=W;break}case"private":case"no-cache":if(G){if(G[0]==='"'){let W=[G.substring(1)],F=G[G.length-1]==='"';if(!F)for(let Z=Y+1;Z{function Py0(A){switch(A[3]){case",":return Ty0(A);case" ":return Sy0(A);default:return ky0(A)}}function Ty0(A){if(A.length!==29||A[4]!==" "||A[7]!==" "||A[11]!==" "||A[16]!==" "||A[19]!==":"||A[22]!==":"||A[25]!==" "||A[26]!=="G"||A[27]!=="M"||A[28]!=="T")return;let Q=-1;if(A[0]==="S"&&A[1]==="u"&&A[2]==="n")Q=0;else if(A[0]==="M"&&A[1]==="o"&&A[2]==="n")Q=1;else if(A[0]==="T"&&A[1]==="u"&&A[2]==="e")Q=2;else if(A[0]==="W"&&A[1]==="e"&&A[2]==="d")Q=3;else if(A[0]==="T"&&A[1]==="h"&&A[2]==="u")Q=4;else if(A[0]==="F"&&A[1]==="r"&&A[2]==="i")Q=5;else if(A[0]==="S"&&A[1]==="a"&&A[2]==="t")Q=6;else return;let B=0;if(A[5]==="0"){let E=A.charCodeAt(6);if(E<49||E>57)return;B=E-48}else{let E=A.charCodeAt(5);if(E<49||E>51)return;let K=A.charCodeAt(6);if(K<48||K>57)return;B=(E-48)*10+(K-48)}let Y=-1;if(A[8]==="J"&&A[9]==="a"&&A[10]==="n")Y=0;else if(A[8]==="F"&&A[9]==="e"&&A[10]==="b")Y=1;else if(A[8]==="M"&&A[9]==="a")if(A[10]==="r")Y=2;else if(A[10]==="y")Y=4;else return;else if(A[8]==="J")if(A[9]==="a"&&A[10]==="n")Y=0;else if(A[9]==="u")if(A[10]==="n")Y=5;else if(A[10]==="l")Y=6;else return;else return;else if(A[8]==="A")if(A[9]==="p"&&A[10]==="r")Y=3;else if(A[9]==="u"&&A[10]==="g")Y=7;else return;else if(A[8]==="S"&&A[9]==="e"&&A[10]==="p")Y=8;else if(A[8]==="O"&&A[9]==="c"&&A[10]==="t")Y=9;else if(A[8]==="N"&&A[9]==="o"&&A[10]==="v")Y=10;else if(A[8]==="D"&&A[9]==="e"&&A[10]==="c")Y=11;else return;let J=A.charCodeAt(12);if(J<48||J>57)return;let C=A.charCodeAt(13);if(C<48||C>57)return;let X=A.charCodeAt(14);if(X<48||X>57)return;let G=A.charCodeAt(15);if(G<48||G>57)return;let W=(J-48)*1000+(C-48)*100+(X-48)*10+(G-48),F=0;if(A[17]==="0"){let E=A.charCodeAt(18);if(E<48||E>57)return;F=E-48}else{let E=A.charCodeAt(17);if(E<48||E>50)return;let K=A.charCodeAt(18);if(K<48||K>57)return;if(E===50&&K>51)return;F=(E-48)*10+(K-48)}let Z=0;if(A[20]==="0"){let E=A.charCodeAt(21);if(E<48||E>57)return;Z=E-48}else{let E=A.charCodeAt(20);if(E<48||E>53)return;let K=A.charCodeAt(21);if(K<48||K>57)return;Z=(E-48)*10+(K-48)}let U=0;if(A[23]==="0"){let E=A.charCodeAt(24);if(E<48||E>57)return;U=E-48}else{let E=A.charCodeAt(23);if(E<48||E>53)return;let K=A.charCodeAt(24);if(K<48||K>57)return;U=(E-48)*10+(K-48)}let $=new Date(Date.UTC(W,Y,B,F,Z,U));return $.getUTCDay()===Q?$:void 0}function Sy0(A){if(A.length!==24||A[7]!==" "||A[10]!==" "||A[19]!==" ")return;let Q=-1;if(A[0]==="S"&&A[1]==="u"&&A[2]==="n")Q=0;else if(A[0]==="M"&&A[1]==="o"&&A[2]==="n")Q=1;else if(A[0]==="T"&&A[1]==="u"&&A[2]==="e")Q=2;else if(A[0]==="W"&&A[1]==="e"&&A[2]==="d")Q=3;else if(A[0]==="T"&&A[1]==="h"&&A[2]==="u")Q=4;else if(A[0]==="F"&&A[1]==="r"&&A[2]==="i")Q=5;else if(A[0]==="S"&&A[1]==="a"&&A[2]==="t")Q=6;else return;let B=-1;if(A[4]==="J"&&A[5]==="a"&&A[6]==="n")B=0;else if(A[4]==="F"&&A[5]==="e"&&A[6]==="b")B=1;else if(A[4]==="M"&&A[5]==="a")if(A[6]==="r")B=2;else if(A[6]==="y")B=4;else return;else if(A[4]==="J")if(A[5]==="a"&&A[6]==="n")B=0;else if(A[5]==="u")if(A[6]==="n")B=5;else if(A[6]==="l")B=6;else return;else return;else if(A[4]==="A")if(A[5]==="p"&&A[6]==="r")B=3;else if(A[5]==="u"&&A[6]==="g")B=7;else return;else if(A[4]==="S"&&A[5]==="e"&&A[6]==="p")B=8;else if(A[4]==="O"&&A[5]==="c"&&A[6]==="t")B=9;else if(A[4]==="N"&&A[5]==="o"&&A[6]==="v")B=10;else if(A[4]==="D"&&A[5]==="e"&&A[6]==="c")B=11;else return;let Y=0;if(A[8]===" "){let E=A.charCodeAt(9);if(E<49||E>57)return;Y=E-48}else{let E=A.charCodeAt(8);if(E<49||E>51)return;let K=A.charCodeAt(9);if(K<48||K>57)return;Y=(E-48)*10+(K-48)}let J=0;if(A[11]==="0"){let E=A.charCodeAt(12);if(E<48||E>57)return;J=E-48}else{let E=A.charCodeAt(11);if(E<48||E>50)return;let K=A.charCodeAt(12);if(K<48||K>57)return;if(E===50&&K>51)return;J=(E-48)*10+(K-48)}let C=0;if(A[14]==="0"){let E=A.charCodeAt(15);if(E<48||E>57)return;C=E-48}else{let E=A.charCodeAt(14);if(E<48||E>53)return;let K=A.charCodeAt(15);if(K<48||K>57)return;C=(E-48)*10+(K-48)}let X=0;if(A[17]==="0"){let E=A.charCodeAt(18);if(E<48||E>57)return;X=E-48}else{let E=A.charCodeAt(17);if(E<48||E>53)return;let K=A.charCodeAt(18);if(K<48||K>57)return;X=(E-48)*10+(K-48)}let G=A.charCodeAt(20);if(G<48||G>57)return;let W=A.charCodeAt(21);if(W<48||W>57)return;let F=A.charCodeAt(22);if(F<48||F>57)return;let Z=A.charCodeAt(23);if(Z<48||Z>57)return;let U=(G-48)*1000+(W-48)*100+(F-48)*10+(Z-48),$=new Date(Date.UTC(U,B,Y,J,C,X));return $.getUTCDay()===Q?$:void 0}function ky0(A){let Q=-1,B=-1;if(A[0]==="S"){if(A[1]==="u"&&A[2]==="n"&&A[3]==="d"&&A[4]==="a"&&A[5]==="y")B=0,Q=6;else if(A[1]==="a"&&A[2]==="t"&&A[3]==="u"&&A[4]==="r"&&A[5]==="d"&&A[6]==="a"&&A[7]==="y")B=6,Q=8}else if(A[0]==="M"&&A[1]==="o"&&A[2]==="n"&&A[3]==="d"&&A[4]==="a"&&A[5]==="y")B=1,Q=6;else if(A[0]==="T"){if(A[1]==="u"&&A[2]==="e"&&A[3]==="s"&&A[4]==="d"&&A[5]==="a"&&A[6]==="y")B=2,Q=7;else if(A[1]==="h"&&A[2]==="u"&&A[3]==="r"&&A[4]==="s"&&A[5]==="d"&&A[6]==="a"&&A[7]==="y")B=4,Q=8}else if(A[0]==="W"&&A[1]==="e"&&A[2]==="d"&&A[3]==="n"&&A[4]==="e"&&A[5]==="s"&&A[6]==="d"&&A[7]==="a"&&A[8]==="y")B=3,Q=9;else if(A[0]==="F"&&A[1]==="r"&&A[2]==="i"&&A[3]==="d"&&A[4]==="a"&&A[5]==="y")B=5,Q=6;else return;if(A[Q]!==","||A.length-Q-1!==23||A[Q+1]!==" "||A[Q+4]!=="-"||A[Q+8]!=="-"||A[Q+11]!==" "||A[Q+14]!==":"||A[Q+17]!==":"||A[Q+20]!==" "||A[Q+21]!=="G"||A[Q+22]!=="M"||A[Q+23]!=="T")return;let Y=0;if(A[Q+2]==="0"){let $=A.charCodeAt(Q+3);if($<49||$>57)return;Y=$-48}else{let $=A.charCodeAt(Q+2);if($<49||$>51)return;let E=A.charCodeAt(Q+3);if(E<48||E>57)return;Y=($-48)*10+(E-48)}let J=-1;if(A[Q+5]==="J"&&A[Q+6]==="a"&&A[Q+7]==="n")J=0;else if(A[Q+5]==="F"&&A[Q+6]==="e"&&A[Q+7]==="b")J=1;else if(A[Q+5]==="M"&&A[Q+6]==="a"&&A[Q+7]==="r")J=2;else if(A[Q+5]==="A"&&A[Q+6]==="p"&&A[Q+7]==="r")J=3;else if(A[Q+5]==="M"&&A[Q+6]==="a"&&A[Q+7]==="y")J=4;else if(A[Q+5]==="J"&&A[Q+6]==="u"&&A[Q+7]==="n")J=5;else if(A[Q+5]==="J"&&A[Q+6]==="u"&&A[Q+7]==="l")J=6;else if(A[Q+5]==="A"&&A[Q+6]==="u"&&A[Q+7]==="g")J=7;else if(A[Q+5]==="S"&&A[Q+6]==="e"&&A[Q+7]==="p")J=8;else if(A[Q+5]==="O"&&A[Q+6]==="c"&&A[Q+7]==="t")J=9;else if(A[Q+5]==="N"&&A[Q+6]==="o"&&A[Q+7]==="v")J=10;else if(A[Q+5]==="D"&&A[Q+6]==="e"&&A[Q+7]==="c")J=11;else return;let C=A.charCodeAt(Q+9);if(C<48||C>57)return;let X=A.charCodeAt(Q+10);if(X<48||X>57)return;let G=(C-48)*10+(X-48);G+=G<70?2000:1900;let W=0;if(A[Q+12]==="0"){let $=A.charCodeAt(Q+13);if($<48||$>57)return;W=$-48}else{let $=A.charCodeAt(Q+12);if($<48||$>50)return;let E=A.charCodeAt(Q+13);if(E<48||E>57)return;if($===50&&E>51)return;W=($-48)*10+(E-48)}let F=0;if(A[Q+15]==="0"){let $=A.charCodeAt(Q+16);if($<48||$>57)return;F=$-48}else{let $=A.charCodeAt(Q+15);if($<48||$>53)return;let E=A.charCodeAt(Q+16);if(E<48||E>57)return;F=($-48)*10+(E-48)}let Z=0;if(A[Q+18]==="0"){let $=A.charCodeAt(Q+19);if($<48||$>57)return;Z=$-48}else{let $=A.charCodeAt(Q+18);if($<48||$>53)return;let E=A.charCodeAt(Q+19);if(E<48||E>57)return;Z=($-48)*10+(E-48)}let U=new Date(Date.UTC(G,J,Y,W,F,Z));return U.getUTCDay()===B?U:void 0}XOQ.exports={parseHttpDate:Py0}});var UOQ=R((grY,$OQ)=>{var _y0=lQ(),{parseCacheControlHeader:vy0,parseVaryHeader:yy0,isEtagUsable:gy0}=rq(),{parseHttpDate:WOQ}=GOQ();function hy0(){}var FOQ=[200,203,204,206,300,301,308,404,405,410,414,501],xy0=[206,304],fy0=2147483647000;class ZOQ{#A;#Q;#B;#Y;#J;#C;constructor({store:A,type:Q,cacheByDefault:B},Y,J){this.#Y=A,this.#Q=Q,this.#B=B,this.#A=Y,this.#J=J}onRequestStart(A,Q){this.#C?.destroy(),this.#C=void 0,this.#J.onRequestStart?.(A,Q)}onRequestUpgrade(A,Q,B,Y){this.#J.onRequestUpgrade?.(A,Q,B,Y)}onResponseStart(A,Q,B,Y){let J=()=>this.#J.onResponseStart?.(A,Q,B,Y);if(!_y0.safeHTTPMethods.includes(this.#A.method)&&Q>=200&&Q<=399){try{this.#Y.delete(this.#A)?.catch?.(hy0)}catch{}return J()}let C=B["cache-control"],X=B["last-modified"]&&FOQ.includes(Q);if(!C&&!B.expires&&!X&&!this.#B)return J();let G=C?vy0(C):{};if(!by0(this.#Q,Q,B,G))return J();let W=Date.now(),F=B.age?my0(B.age):void 0;if(F&&F>=fy0)return J();let Z=typeof B.date==="string"?WOQ(B.date):void 0,U=uy0(this.#Q,W,F,B,Z,G)??this.#B;if(U===void 0||F&&F>U)return J();let $=Z?Z.getTime():W,E=U+$;if(W>=E)return J();let K;if(this.#A.headers&&B.vary){if(K=yy0(B.vary,this.#A.headers),!K)return J()}let I=dy0($,G,E),V=cy0(B,G),H={statusCode:Q,statusMessage:Y,headers:V,vary:K,cacheControlDirectives:G,cachedAt:F?W-F:W,staleAt:E,deleteAt:I};if(typeof B.etag==="string"&&gy0(B.etag))H.etag=B.etag;if(this.#C=this.#Y.createWriteStream(this.#A,H),!this.#C)return J();let D=this;return this.#C.on("drain",()=>A.resume()).on("error",function(){D.#C=void 0,D.#Y.delete(D.#A)}).on("close",function(){if(D.#C===this)D.#C=void 0;A.resume()}),J()}onResponseData(A,Q){if(this.#C?.write(Q)===!1)A.pause();this.#J.onResponseData?.(A,Q)}onResponseEnd(A,Q){this.#C?.end(),this.#J.onResponseEnd?.(A,Q)}onResponseError(A,Q){this.#C?.destroy(Q),this.#C=void 0,this.#J.onResponseError?.(A,Q)}}function by0(A,Q,B,Y){if(Q<200||xy0.includes(Q))return!1;if(!FOQ.includes(Q)&&!B.expires&&!Y.public&&Y["max-age"]===void 0&&!(Y.private&&A==="private")&&!(Y["s-maxage"]!==void 0&&A==="shared"))return!1;if(Y["no-store"])return!1;if(A==="shared"&&Y.private===!0)return!1;if(B.vary?.includes("*"))return!1;if(B.authorization){if(!Y.public||typeof B.authorization!=="string")return!1;if(Array.isArray(Y["no-cache"])&&Y["no-cache"].includes("authorization"))return!1;if(Array.isArray(Y.private)&&Y.private.includes("authorization"))return!1}return!0}function my0(A){let Q=parseInt(Array.isArray(A)?A[0]:A);return isNaN(Q)?void 0:Q*1000}function uy0(A,Q,B,Y,J,C){if(A==="shared"){let G=C["s-maxage"];if(G!==void 0)return G>0?G*1000:void 0}let X=C["max-age"];if(X!==void 0)return X>0?X*1000:void 0;if(typeof Y.expires==="string"){let G=WOQ(Y.expires);if(G){if(Q>=G.getTime())return;if(J){if(J>=G)return;if(B!==void 0&&B>G-J)return}return G.getTime()-Q}}if(typeof Y["last-modified"]==="string"){let G=new Date(Y["last-modified"]);if(ly0(G)){if(G.getTime()>=Q)return;return(Q-G.getTime())*0.1}}if(C.immutable)return 31536000;return}function dy0(A,Q,B){let Y=-1/0,J=-1/0,C=-1/0;if(Q["stale-while-revalidate"])Y=B+Q["stale-while-revalidate"]*1000;if(Q["stale-if-error"])J=B+Q["stale-if-error"]*1000;if(Y===-1/0&&J===-1/0)C=A+31536000000;return Math.max(B,Y,J,C)}function cy0(A,Q){let B=["connection","proxy-authenticate","proxy-authentication-info","proxy-authorization","proxy-connection","te","transfer-encoding","upgrade","age"];if(A.connection)if(Array.isArray(A.connection))B.push(...A.connection.map((J)=>J.trim()));else B.push(...A.connection.split(",").map((J)=>J.trim()));if(Array.isArray(Q["no-cache"]))B.push(...Q["no-cache"]);if(Array.isArray(Q.private))B.push(...Q.private);let Y;for(let J of B)if(A[J])Y??={...A},delete Y[J];return Y??A}function ly0(A){return A instanceof Date&&Number.isFinite(A.valueOf())}$OQ.exports=ZOQ});var Go=R((hrY,IOQ)=>{var{Writable:py0}=u("node:stream"),{EventEmitter:iy0}=u("node:events"),{assertCacheKey:EOQ,assertCacheValue:ny0}=rq();class VOQ extends iy0{#A=1024;#Q=104857600;#B=5242880;#Y=0;#J=0;#C=new Map;#W=!1;constructor(A){super();if(A){if(typeof A!=="object")throw TypeError("MemoryCacheStore options must be an object");if(A.maxCount!==void 0){if(typeof A.maxCount!=="number"||!Number.isInteger(A.maxCount)||A.maxCount<0)throw TypeError("MemoryCacheStore options.maxCount must be a non-negative integer");this.#A=A.maxCount}if(A.maxSize!==void 0){if(typeof A.maxSize!=="number"||!Number.isInteger(A.maxSize)||A.maxSize<0)throw TypeError("MemoryCacheStore options.maxSize must be a non-negative integer");this.#Q=A.maxSize}if(A.maxEntrySize!==void 0){if(typeof A.maxEntrySize!=="number"||!Number.isInteger(A.maxEntrySize)||A.maxEntrySize<0)throw TypeError("MemoryCacheStore options.maxEntrySize must be a non-negative integer");this.#B=A.maxEntrySize}}}get size(){return this.#Y}isFull(){return this.#Y>=this.#Q||this.#J>=this.#A}get(A){EOQ(A);let Q=`${A.origin}:${A.path}`,B=Date.now(),Y=this.#C.get(Q),J=Y?KOQ(A,Y,B):null;return J==null?void 0:{statusMessage:J.statusMessage,statusCode:J.statusCode,headers:J.headers,body:J.body,vary:J.vary?J.vary:void 0,etag:J.etag,cacheControlDirectives:J.cacheControlDirectives,cachedAt:J.cachedAt,staleAt:J.staleAt,deleteAt:J.deleteAt}}createWriteStream(A,Q){EOQ(A),ny0(Q);let B=`${A.origin}:${A.path}`,Y=this,J={...A,...Q,body:[],size:0};return new py0({write(C,X,G){if(typeof C==="string")C=Buffer.from(C,X);if(J.size+=C.byteLength,J.size>=Y.#B)this.destroy();else J.body.push(C);G(null)},final(C){let X=Y.#C.get(B);if(!X)X=[],Y.#C.set(B,X);let G=KOQ(A,X,Date.now());if(G){let W=X.indexOf(G);X.splice(W,1,J),Y.#Y-=G.size}else X.push(J),Y.#J+=1;if(Y.#Y+=J.size,Y.#Y>Y.#Q||Y.#J>Y.#A){if(!Y.#W)Y.emit("maxSizeExceeded",{size:Y.#Y,maxSize:Y.#Q,count:Y.#J,maxCount:Y.#A}),Y.#W=!0;for(let[W,F]of Y.#C){for(let Z of F.splice(0,F.length/2))Y.#Y-=Z.size,Y.#J-=1;if(F.length===0)Y.#C.delete(W)}if(Y.#YY.deleteAt>B&&Y.method===A.method&&(Y.vary==null||Object.keys(Y.vary).every((J)=>{if(Y.vary[J]===null)return A.headers[J]===void 0;return Y.vary[J]===A.headers[J]})))}IOQ.exports=VOQ});var NOQ=R((xrY,DOQ)=>{var sy0=u("node:assert");class HOQ{#A=!1;#Q;#B;#Y;#J;constructor(A,Q,B){if(typeof A!=="function")throw TypeError("callback must be a function");this.#Q=A,this.#B=Q,this.#J=B}onRequestStart(A,Q){this.#A=!1,this.#Y=Q}onRequestUpgrade(A,Q,B,Y){this.#B.onRequestUpgrade?.(A,Q,B,Y)}onResponseStart(A,Q,B,Y){if(sy0(this.#Q!=null),this.#A=Q===304||this.#J&&Q>=500&&Q<=504,this.#Q(this.#A,this.#Y),this.#Q=null,this.#A)return!0;this.#B.onRequestStart?.(A,this.#Y),this.#B.onResponseStart?.(A,Q,B,Y)}onResponseData(A,Q){if(this.#A)return;return this.#B.onResponseData?.(A,Q)}onResponseEnd(A,Q){if(this.#A)return;this.#B.onResponseEnd?.(A,Q)}onResponseError(A,Q){if(this.#A)return;if(this.#Q)this.#Q(!1),this.#Q=null;if(typeof this.#B.onResponseError==="function")this.#B.onResponseError(A,Q);else throw Q}}DOQ.exports=HOQ});var zOQ=R((frY,MOQ)=>{var LOQ=u("node:assert"),{Readable:ry0}=u("node:stream"),IV=lQ(),aq=UOQ(),ay0=Go(),oy0=NOQ(),{assertCacheStore:ty0,assertCacheMethods:ey0,makeCacheKey:Ag0,normalizeHeaders:Qg0,parseCacheControlHeader:Bg0}=rq(),{AbortError:Yg0}=QB();function Jg0(A,Q){if(Q?.["no-cache"])return!0;if(A.cacheControlDirectives?.["no-cache"]&&!Array.isArray(A.cacheControlDirectives["no-cache"]))return!0;let B=Date.now();if(B>A.staleAt){if(Q?.["max-stale"]){let Y=A.staleAt+Q["max-stale"]*1000;return B>Y}return!0}if(Q?.["min-fresh"]){let Y=A.staleAt-B,J=Q["min-fresh"]*1000;return Y<=J}return!1}function Cg0(A){let Q=A.cacheControlDirectives?.["stale-while-revalidate"];if(!Q)return!1;let B=Date.now(),Y=A.staleAt+Q*1000;return B<=Y}function Xg0(A,Q,B,Y,J,C){if(C?.["only-if-cached"]){let X=!1;try{if(typeof Y.onConnect==="function"){if(Y.onConnect(()=>{X=!0}),X)return}if(typeof Y.onHeaders==="function"){if(Y.onHeaders(504,[],()=>{},"Gateway Timeout"),X)return}if(typeof Y.onComplete==="function")Y.onComplete([])}catch(G){if(typeof Y.onError==="function")Y.onError(G)}return!0}return A(J,new aq(Q,B,Y))}function Wo(A,Q,B,Y,J,C){let X=IV.isStream(B.body)?B.body:ry0.from(B.body??[]);LOQ(!X.destroyed,"stream should not be destroyed"),LOQ(!X.readableDidRead,"stream should not be readableDidRead");let G={resume(){X.resume()},pause(){X.pause()},get paused(){return X.isPaused()},get aborted(){return X.destroyed},get reason(){return X.errored},abort(F){X.destroy(F??new Yg0)}};if(X.on("error",function(F){if(!this.readableEnded)if(typeof A.onResponseError==="function")A.onResponseError(G,F);else throw F}).on("close",function(){if(!this.errored)A.onResponseEnd?.(G,{})}),A.onRequestStart?.(G,J),X.destroyed)return;let W={...B.headers,age:String(Y)};if(C)W.warning='110 - "response is stale"';if(A.onResponseStart?.(G,B.statusCode,W,B.statusMessage),Q.method==="HEAD")X.destroy();else X.on("data",function(F){A.onResponseData?.(G,F)})}function qOQ(A,Q,B,Y,J,C,X){if(!X)return Xg0(A,Q,B,Y,J,C);let G=Date.now();if(G>X.deleteAt)return A(J,new aq(Q,B,Y));let W=Math.round((G-X.cachedAt)/1000);if(C?.["max-age"]&&W>=C["max-age"])return A(J,Y);if(Jg0(X,C)){if(IV.isStream(J.body)&&IV.bodyLength(J.body)!==0)return A(J,new aq(Q,B,Y));if(Cg0(X))return Wo(Y,J,X,W,null,!0),queueMicrotask(()=>{let $={...J.headers,"if-modified-since":new Date(X.cachedAt).toUTCString()};if(X.etag)$["if-none-match"]=X.etag;if(X.vary)$={...$,...X.vary};A({...J,headers:$},new aq(Q,B,{onRequestStart(){},onRequestUpgrade(){},onResponseStart(){},onResponseData(){},onResponseEnd(){},onResponseError(){}}))}),!0;let F=!1,Z=X.cacheControlDirectives["stale-if-error"]??C?.["stale-if-error"];if(Z)F=G{if($)Wo(Y,J,X,W,E,!0);else if(IV.isStream(X.body))X.body.on("error",()=>{}).destroy()},new aq(Q,B,Y),F))}if(IV.isStream(J.body))J.body.on("error",()=>{}).destroy();Wo(Y,J,X,W,null,!1)}MOQ.exports=(A={})=>{let{store:Q=new ay0,methods:B=["GET"],cacheByDefault:Y=void 0,type:J="shared"}=A;if(typeof A!=="object"||A===null)throw TypeError(`expected type of opts to be an Object, got ${A===null?"null":typeof A}`);if(ty0(Q,"opts.store"),ey0(B,"opts.methods"),typeof Y<"u"&&typeof Y!=="number")throw TypeError(`expected opts.cacheByDefault to be number or undefined, got ${typeof Y}`);if(typeof J<"u"&&J!=="shared"&&J!=="private")throw TypeError(`expected opts.type to be shared, private, or undefined, got ${typeof J}`);let C={store:Q,methods:B,cacheByDefault:Y,type:J},X=IV.safeHTTPMethods.filter((G)=>B.includes(G)===!1);return(G)=>{return(W,F)=>{if(!W.origin||X.includes(W.method))return G(W,F);W={...W,headers:Qg0(W)};let Z=W.headers?.["cache-control"]?Bg0(W.headers["cache-control"]):void 0;if(Z?.["no-store"])return G(W,F);let U=Ag0(W),$=Q.get(U);if($&&typeof $.then==="function")$.then((E)=>{qOQ(G,C,U,F,W,Z,E)});else qOQ(G,C,U,F,W,Z,$);return!0}}}});var SOQ=R((brY,TOQ)=>{var{createInflate:Fo,createGunzip:ROQ,createBrotliDecompress:Gg0,createZstdDecompress:wOQ}=u("node:zlib"),{pipeline:Wg0}=u("node:stream"),Fg0=KV(),jOQ={gzip:ROQ,"x-gzip":ROQ,br:Gg0,deflate:Fo,compress:Fo,"x-compress":Fo,...wOQ?{zstd:wOQ}:{}},Zg0=[204,304],OOQ=!1;class POQ extends Fg0{#A=[];#Q;#B;#Y;constructor(A,{skipStatusCodes:Q=Zg0,skipErrorResponses:B=!0}={}){super(A);this.#B=Q,this.#Y=B}#J(A,Q){if(!A||Q<200)return!0;if(this.#B.includes(Q))return!0;if(this.#Y&&Q>=400)return!0;return!1}#C(A){let Q=A.split(","),B=[];for(let Y=Q.length-1;Y>=0;Y--){let J=Q[Y].trim();if(!J)continue;if(!jOQ[J])return B.length=0,B;B.push(jOQ[J]())}return B}#W(A,Q){A.on("readable",()=>{let B;while((B=A.read())!==null)if(super.onResponseData(Q,B)===!1)break}),A.on("error",(B)=>{super.onResponseError(Q,B)})}#X(A){let Q=this.#A[0];this.#W(Q,A),Q.on("end",()=>{super.onResponseEnd(A,{})})}#G(A){let Q=this.#A[this.#A.length-1];this.#W(Q,A),this.#Q=Wg0(this.#A,(B)=>{if(B){super.onResponseError(A,B);return}super.onResponseEnd(A,{})})}#Z(){this.#A.length=0,this.#Q=null}onResponseStart(A,Q,B,Y){let J=B["content-encoding"];if(this.#J(J,Q))return super.onResponseStart(A,Q,B,Y);let C=this.#C(J.toLowerCase());if(C.length===0)return this.#Z(),super.onResponseStart(A,Q,B,Y);this.#A=C;let{"content-encoding":X,"content-length":G,...W}=B;if(this.#A.length===1)this.#X(A);else this.#G(A);super.onResponseStart(A,Q,W,Y)}onResponseData(A,Q){if(this.#A.length>0){this.#A[0].write(Q);return}super.onResponseData(A,Q)}onResponseEnd(A,Q){if(this.#A.length>0){this.#A[0].end(),this.#Z();return}super.onResponseEnd(A,Q)}onResponseError(A,Q){if(this.#A.length>0){for(let B of this.#A)B.destroy(Q);this.#Z()}super.onResponseError(A,Q)}}function $g0(A={}){if(!OOQ)process.emitWarning("DecompressInterceptor is experimental and subject to change","ExperimentalWarning"),OOQ=!0;return(Q)=>{return(B,Y)=>{let J=new POQ(Y,A);return Q(B,J)}}}TOQ.exports=$g0});var _OQ=R((mrY,kOQ)=>{var{Writable:Ug0}=u("node:stream"),{assertCacheKey:Zo,assertCacheValue:Eg0}=rq(),$o;kOQ.exports=class{#A=2000000000;#Q=1/0;#B;#Y;#J;#C;#W;#X;#G;#Z;constructor(Q){if(Q){if(typeof Q!=="object")throw TypeError("SqliteCacheStore options must be an object");if(Q.maxEntrySize!==void 0){if(typeof Q.maxEntrySize!=="number"||!Number.isInteger(Q.maxEntrySize)||Q.maxEntrySize<0)throw TypeError("SqliteCacheStore options.maxEntrySize must be a non-negative integer");if(Q.maxEntrySize>2000000000)throw TypeError("SqliteCacheStore options.maxEntrySize must be less than 2gb");this.#A=Q.maxEntrySize}if(Q.maxCount!==void 0){if(typeof Q.maxCount!=="number"||!Number.isInteger(Q.maxCount)||Q.maxCount<0)throw TypeError("SqliteCacheStore options.maxCount must be a non-negative integer");this.#Q=Q.maxCount}}if(!$o)$o=u("node:sqlite").DatabaseSync;this.#B=new $o(Q?.location??":memory:"),this.#B.exec(` PRAGMA journal_mode = WAL; PRAGMA synchronous = NORMAL; PRAGMA temp_store = memory; @@ -165,7 +165,7 @@ ${A.format(Q)}`.trim())}}SwQ.exports=TwQ});var Ta=R((PnY,vwQ)=>{var{InvalidArgum cachedAt, staleAt ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) - `),this.#X=this.#B.prepare("DELETE FROM cacheInterceptorV3 WHERE url = ?"),this.#G=this.#B.prepare("SELECT COUNT(*) AS total FROM cacheInterceptorV3"),this.#F=this.#B.prepare("DELETE FROM cacheInterceptorV3 WHERE deleteAt <= ?"),this.#Z=this.#Q===1/0?null:this.#B.prepare(` + `),this.#X=this.#B.prepare("DELETE FROM cacheInterceptorV3 WHERE url = ?"),this.#G=this.#B.prepare("SELECT COUNT(*) AS total FROM cacheInterceptorV3"),this.#W=this.#B.prepare("DELETE FROM cacheInterceptorV3 WHERE deleteAt <= ?"),this.#Z=this.#Q===1/0?null:this.#B.prepare(` DELETE FROM cacheInterceptorV3 WHERE id IN ( SELECT @@ -174,64 +174,64 @@ ${A.format(Q)}`.trim())}}SwQ.exports=TwQ});var Ta=R((PnY,vwQ)=>{var{InvalidArgum ORDER BY cachedAt DESC LIMIT ? ) - `)}close(){this.#B.close()}get(Q){ua(Q);let B=this.#E(Q);return B?{body:B.body?Buffer.from(B.body.buffer,B.body.byteOffset,B.body.byteLength):void 0,statusCode:B.statusCode,statusMessage:B.statusMessage,headers:B.headers?JSON.parse(B.headers):void 0,etag:B.etag?B.etag:void 0,vary:B.vary?JSON.parse(B.vary):void 0,cacheControlDirectives:B.cacheControlDirectives?JSON.parse(B.cacheControlDirectives):void 0,cachedAt:B.cachedAt,staleAt:B.staleAt,deleteAt:B.deleteAt}:void 0}set(Q,B){ua(Q);let Y=this.#W(Q),J=Array.isArray(B.body)?Buffer.concat(B.body):B.body,C=J?.byteLength;if(C&&C>this.#A)return;let X=this.#E(Q,!0);if(X)this.#J.run(J,B.deleteAt,B.statusCode,B.statusMessage,B.headers?JSON.stringify(B.headers):null,B.etag?B.etag:null,B.cacheControlDirectives?JSON.stringify(B.cacheControlDirectives):null,B.cachedAt,B.staleAt,X.id);else this.#U(),this.#C.run(Y,Q.method,J,B.deleteAt,B.statusCode,B.statusMessage,B.headers?JSON.stringify(B.headers):null,B.etag?B.etag:null,B.cacheControlDirectives?JSON.stringify(B.cacheControlDirectives):null,B.vary?JSON.stringify(B.vary):null,B.cachedAt,B.staleAt)}createWriteStream(Q,B){ua(Q),Uy0(B);let Y=0,J=[],C=this;return new $y0({decodeStrings:!0,write(X,G,F){if(Y+=X.byteLength,Y=F.deleteAt&&!B)return;let W=!0;if(F.vary){let Z=JSON.parse(F.vary);for(let U in Z)if(!Ey0(J[U],Z[U])){W=!1;break}}if(W)return F}return}};function Ey0(A,Q){if(A==null&&Q==null)return!0;if(A==null&&Q!=null||A!=null&&Q==null)return!1;if(Array.isArray(A)&&Array.isArray(Q)){if(A.length!==Q.length)return!1;return A.every((B,Y)=>B===Q[Y])}return A===Q}});var n$=R((nnY,tjQ)=>{var{kConstruct:Ky0}=Q0(),{kEnumerableProperty:WV}=lQ(),{iteratorMixin:Vy0,isValidHeaderName:gq,isValidHeaderValue:njQ}=H9(),{webidl:LB}=UJ(),ca=u("node:assert"),vS=u("node:util");function ijQ(A){return A===10||A===13||A===9||A===32}function sjQ(A){let Q=0,B=A.length;while(B>Q&&ijQ(A.charCodeAt(B-1)))--B;while(B>Q&&ijQ(A.charCodeAt(Q)))++Q;return Q===0&&B===A.length?A:A.substring(Q,B)}function rjQ(A,Q){if(Array.isArray(Q))for(let B=0;B>","record"]})}function la(A,Q,B){if(B=sjQ(B),!gq(Q))throw LB.errors.invalidArgument({prefix:"Headers.append",value:Q,type:"header name"});else if(!njQ(B))throw LB.errors.invalidArgument({prefix:"Headers.append",value:B,type:"header value"});if(ojQ(A)==="immutable")throw TypeError("immutable");return hS(A).append(Q,B,!1)}function Iy0(A){let Q=hS(A);if(!Q)return[];if(Q.sortedMap)return Q.sortedMap;let B=[],Y=Q.toSortedArray(),J=Q.cookies;if(J===null||J.length===1)return Q.sortedMap=Y;for(let C=0;C>1),Q[F][0]<=W[0])G=F+1;else X=F;if(J!==F){C=J;while(C>G)Q[C]=Q[--C];Q[G]=W}}if(!B.next().done)throw TypeError("Unreachable");return Q}else{let B=0;for(let{0:Y,1:{value:J}}of this.headersMap)Q[B++]=[Y,J],ca(J!==null);return Q.sort(ajQ)}}}class hJ{#A;#Q;constructor(A=void 0){if(LB.util.markAsUncloneable(this),A===Ky0)return;if(this.#Q=new yS,this.#A="none",A!==void 0)A=LB.converters.HeadersInit(A,"Headers constructor","init"),rjQ(this,A)}append(A,Q){LB.brandCheck(this,hJ),LB.argumentLengthCheck(arguments,2,"Headers.append");let B="Headers.append";return A=LB.converters.ByteString(A,B,"name"),Q=LB.converters.ByteString(Q,B,"value"),la(this,A,Q)}delete(A){LB.brandCheck(this,hJ),LB.argumentLengthCheck(arguments,1,"Headers.delete");let Q="Headers.delete";if(A=LB.converters.ByteString(A,Q,"name"),!gq(A))throw LB.errors.invalidArgument({prefix:"Headers.delete",value:A,type:"header name"});if(this.#A==="immutable")throw TypeError("immutable");if(!this.#Q.contains(A,!1))return;this.#Q.delete(A,!1)}get(A){LB.brandCheck(this,hJ),LB.argumentLengthCheck(arguments,1,"Headers.get");let Q="Headers.get";if(A=LB.converters.ByteString(A,Q,"name"),!gq(A))throw LB.errors.invalidArgument({prefix:Q,value:A,type:"header name"});return this.#Q.get(A,!1)}has(A){LB.brandCheck(this,hJ),LB.argumentLengthCheck(arguments,1,"Headers.has");let Q="Headers.has";if(A=LB.converters.ByteString(A,Q,"name"),!gq(A))throw LB.errors.invalidArgument({prefix:Q,value:A,type:"header name"});return this.#Q.contains(A,!1)}set(A,Q){LB.brandCheck(this,hJ),LB.argumentLengthCheck(arguments,2,"Headers.set");let B="Headers.set";if(A=LB.converters.ByteString(A,B,"name"),Q=LB.converters.ByteString(Q,B,"value"),Q=sjQ(Q),!gq(A))throw LB.errors.invalidArgument({prefix:B,value:A,type:"header name"});else if(!njQ(Q))throw LB.errors.invalidArgument({prefix:B,value:Q,type:"header value"});if(this.#A==="immutable")throw TypeError("immutable");this.#Q.set(A,Q,!1)}getSetCookie(){LB.brandCheck(this,hJ);let A=this.#Q.cookies;if(A)return[...A];return[]}[vS.inspect.custom](A,Q){return Q.depth??=A,`Headers ${vS.formatWithOptions(Q,this.#Q.entries)}`}static getHeadersGuard(A){return A.#A}static setHeadersGuard(A,Q){A.#A=Q}static getHeadersList(A){return A.#Q}static setHeadersList(A,Q){A.#Q=Q}}var{getHeadersGuard:ojQ,setHeadersGuard:Hy0,getHeadersList:hS,setHeadersList:Dy0}=hJ;Reflect.deleteProperty(hJ,"getHeadersGuard");Reflect.deleteProperty(hJ,"setHeadersGuard");Reflect.deleteProperty(hJ,"getHeadersList");Reflect.deleteProperty(hJ,"setHeadersList");Vy0("Headers",hJ,Iy0,0,1);Object.defineProperties(hJ.prototype,{append:WV,delete:WV,get:WV,has:WV,set:WV,getSetCookie:WV,[Symbol.toStringTag]:{value:"Headers",configurable:!0},[vS.inspect.custom]:{enumerable:!1}});LB.converters.HeadersInit=function(A,Q,B){if(LB.util.Type(A)===LB.util.Types.OBJECT){let Y=Reflect.get(A,Symbol.iterator);if(!vS.types.isProxy(A)&&Y===hJ.prototype.entries)try{return hS(A).entriesList}catch{}if(typeof Y==="function")return LB.converters["sequence>"](A,Q,B,Y.bind(A));return LB.converters["record"](A,Q,B)}throw LB.errors.conversionFailed({prefix:"Headers constructor",argument:"Argument 1",types:["sequence>","record"]})};tjQ.exports={fill:rjQ,compareHeaderName:ajQ,Headers:hJ,HeadersList:yS,getHeadersGuard:ojQ,setHeadersGuard:Hy0,setHeadersList:Dy0,getHeadersList:hS}});var fq=R((snY,ZOQ)=>{var{Headers:JOQ,HeadersList:ejQ,fill:Ny0,getHeadersGuard:Ly0,setHeadersGuard:COQ,setHeadersList:XOQ}=n$(),{extractBody:AOQ,cloneBody:qy0,mixinBody:My0,streamRegistry:GOQ,bodyUnusable:zy0}=lK(),FOQ=lQ(),QOQ=u("node:util"),{kEnumerableProperty:m8}=FOQ,{isValidReasonPhrase:Ry0,isCancelled:wy0,isAborted:jy0,serializeJavascriptValueToJSONString:Oy0,isErrorLike:Py0,isomorphicEncode:Ty0,environmentSettingsObject:Sy0}=H9(),{redirectStatusSet:ky0,nullBodyStatus:_y0}=Qq(),{webidl:ZB}=UJ(),{URLSerializer:BOQ}=g8(),{kConstruct:xS}=Q0(),pa=u("node:assert"),vy0=new TextEncoder("utf-8");class r0{#A;#Q;static error(){return xq(fS(),"immutable")}static json(A,Q=void 0){if(ZB.argumentLengthCheck(arguments,1,"Response.json"),Q!==null)Q=ZB.converters.ResponseInit(Q);let B=vy0.encode(Oy0(A)),Y=AOQ(B),J=xq(ZV({}),"response");return YOQ(J,Q,{body:Y[0],type:"application/json"}),J}static redirect(A,Q=302){ZB.argumentLengthCheck(arguments,1,"Response.redirect"),A=ZB.converters.USVString(A),Q=ZB.converters["unsigned short"](Q);let B;try{B=new URL(A,Sy0.settingsObject.baseUrl)}catch(C){throw TypeError(`Failed to parse URL from ${A}`,{cause:C})}if(!ky0.has(Q))throw RangeError(`Invalid status code ${Q}`);let Y=xq(ZV({}),"immutable");Y.#Q.status=Q;let J=Ty0(BOQ(B));return Y.#Q.headersList.append("location",J,!0),Y}constructor(A=null,Q=void 0){if(ZB.util.markAsUncloneable(this),A===xS)return;if(A!==null)A=ZB.converters.BodyInit(A,"Response","body");Q=ZB.converters.ResponseInit(Q),this.#Q=ZV({}),this.#A=new JOQ(xS),COQ(this.#A,"response"),XOQ(this.#A,this.#Q.headersList);let B=null;if(A!=null){let[Y,J]=AOQ(A);B={body:Y,type:J}}YOQ(this,Q,B)}get type(){return ZB.brandCheck(this,r0),this.#Q.type}get url(){ZB.brandCheck(this,r0);let A=this.#Q.urlList,Q=A[A.length-1]??null;if(Q===null)return"";return BOQ(Q,!0)}get redirected(){return ZB.brandCheck(this,r0),this.#Q.urlList.length>1}get status(){return ZB.brandCheck(this,r0),this.#Q.status}get ok(){return ZB.brandCheck(this,r0),this.#Q.status>=200&&this.#Q.status<=299}get statusText(){return ZB.brandCheck(this,r0),this.#Q.statusText}get headers(){return ZB.brandCheck(this,r0),this.#A}get body(){return ZB.brandCheck(this,r0),this.#Q.body?this.#Q.body.stream:null}get bodyUsed(){return ZB.brandCheck(this,r0),!!this.#Q.body&&FOQ.isDisturbed(this.#Q.body.stream)}clone(){if(ZB.brandCheck(this,r0),zy0(this.#Q))throw ZB.errors.exception({header:"Response.clone",message:"Body has already been consumed."});let A=ia(this.#Q);if(this.#Q.body?.stream)GOQ.register(this,new WeakRef(this.#Q.body.stream));return xq(A,Ly0(this.#A))}[QOQ.inspect.custom](A,Q){if(Q.depth===null)Q.depth=2;Q.colors??=!0;let B={status:this.status,statusText:this.statusText,headers:this.headers,body:this.body,bodyUsed:this.bodyUsed,ok:this.ok,redirected:this.redirected,type:this.type,url:this.url};return`Response ${QOQ.formatWithOptions(Q,B)}`}static getResponseHeaders(A){return A.#A}static setResponseHeaders(A,Q){A.#A=Q}static getResponseState(A){return A.#Q}static setResponseState(A,Q){A.#Q=Q}}var{getResponseHeaders:yy0,setResponseHeaders:hy0,getResponseState:s$,setResponseState:gy0}=r0;Reflect.deleteProperty(r0,"getResponseHeaders");Reflect.deleteProperty(r0,"setResponseHeaders");Reflect.deleteProperty(r0,"getResponseState");Reflect.deleteProperty(r0,"setResponseState");My0(r0,s$);Object.defineProperties(r0.prototype,{type:m8,url:m8,status:m8,ok:m8,redirected:m8,statusText:m8,headers:m8,clone:m8,body:m8,bodyUsed:m8,[Symbol.toStringTag]:{value:"Response",configurable:!0}});Object.defineProperties(r0,{json:m8,redirect:m8,error:m8});function ia(A){if(A.internalResponse)return WOQ(ia(A.internalResponse),A.type);let Q=ZV({...A,body:null});if(A.body!=null)Q.body=qy0(A.body);return Q}function ZV(A){return{aborted:!1,rangeRequested:!1,timingAllowPassed:!1,requestIncludesCredentials:!1,type:"default",status:200,timingInfo:null,cacheState:"",statusText:"",...A,headersList:A?.headersList?new ejQ(A?.headersList):new ejQ,urlList:A?.urlList?[...A.urlList]:[]}}function fS(A){let Q=Py0(A);return ZV({type:"error",status:0,error:Q?A:Error(A?String(A):A),aborted:A&&A.name==="AbortError"})}function xy0(A){return A.type==="error"&&A.status===0}function gS(A,Q){return Q={internalResponse:A,...Q},new Proxy(A,{get(B,Y){return Y in Q?Q[Y]:B[Y]},set(B,Y,J){return pa(!(Y in Q)),B[Y]=J,!0}})}function WOQ(A,Q){if(Q==="basic")return gS(A,{type:"basic",headersList:A.headersList});else if(Q==="cors")return gS(A,{type:"cors",headersList:A.headersList});else if(Q==="opaque")return gS(A,{type:"opaque",urlList:Object.freeze([]),status:0,statusText:"",body:null});else if(Q==="opaqueredirect")return gS(A,{type:"opaqueredirect",status:0,statusText:"",headersList:[],body:null});else pa(!1)}function fy0(A,Q=null){return pa(wy0(A)),jy0(A)?fS(Object.assign(new DOMException("The operation was aborted.","AbortError"),{cause:Q})):fS(Object.assign(new DOMException("Request was cancelled."),{cause:Q}))}function YOQ(A,Q,B){if(Q.status!==null&&(Q.status<200||Q.status>599))throw RangeError('init["status"] must be in the range of 200 to 599, inclusive.');if("statusText"in Q&&Q.statusText!=null){if(!Ry0(String(Q.statusText)))throw TypeError("Invalid statusText")}if("status"in Q&&Q.status!=null)s$(A).status=Q.status;if("statusText"in Q&&Q.statusText!=null)s$(A).statusText=Q.statusText;if("headers"in Q&&Q.headers!=null)Ny0(yy0(A),Q.headers);if(B){if(_y0.includes(A.status))throw ZB.errors.exception({header:"Response constructor",message:`Invalid response status code ${A.status}`});if(s$(A).body=B.body,B.type!=null&&!s$(A).headersList.contains("content-type",!0))s$(A).headersList.append("content-type",B.type,!0)}}function xq(A,Q){let B=new r0(xS);gy0(B,A);let Y=new JOQ(xS);if(hy0(B,Y),XOQ(Y,A.headersList),COQ(Y,Q),A.body?.stream)GOQ.register(B,new WeakRef(A.body.stream));return B}ZB.converters.XMLHttpRequestBodyInit=function(A,Q,B){if(typeof A==="string")return ZB.converters.USVString(A,Q,B);if(ZB.is.Blob(A))return A;if(ZB.is.BufferSource(A))return A;if(ZB.is.FormData(A))return A;if(ZB.is.URLSearchParams(A))return A;return ZB.converters.DOMString(A,Q,B)};ZB.converters.BodyInit=function(A,Q,B){if(ZB.is.ReadableStream(A))return A;if(A?.[Symbol.asyncIterator])return A;return ZB.converters.XMLHttpRequestBodyInit(A,Q,B)};ZB.converters.ResponseInit=ZB.dictionaryConverter([{key:"status",converter:ZB.converters["unsigned short"],defaultValue:()=>200},{key:"statusText",converter:ZB.converters.ByteString,defaultValue:()=>""},{key:"headers",converter:ZB.converters.HeadersInit}]);ZB.is.Response=ZB.util.MakeTypeAssertion(r0);ZOQ.exports={isNetworkError:xy0,makeNetworkError:fS,makeResponse:ZV,makeAppropriateNetworkError:fy0,filterResponse:WOQ,Response:r0,cloneResponse:ia,fromInnerResponse:xq,getResponseState:s$}});var $V=R((rnY,ROQ)=>{var{extractBody:by0,mixinBody:my0,cloneBody:uy0,bodyUnusable:$OQ}=lK(),{Headers:HOQ,fill:dy0,HeadersList:uS,setHeadersGuard:na,getHeadersGuard:cy0,setHeadersList:DOQ,getHeadersList:UOQ}=n$(),mS=lQ(),EOQ=u("node:util"),{isValidHTTPToken:ly0,sameOrigin:KOQ,environmentSettingsObject:bS}=H9(),{forbiddenMethodsSet:py0,corsSafeListedMethodsSet:iy0,referrerPolicy:ny0,requestRedirect:sy0,requestMode:ry0,requestCredentials:ay0,requestCache:oy0,requestDuplex:ty0}=Qq(),{kEnumerableProperty:MY,normalizedMethodRecordsBase:ey0,normalizedMethodRecords:Ah0}=mS,{webidl:qQ}=UJ(),{URLSerializer:Qh0}=g8(),{kConstruct:dS}=Q0(),Bh0=u("node:assert"),{getMaxListeners:NOQ,setMaxListeners:Yh0,defaultMaxListeners:Jh0}=u("node:events"),Ch0=Symbol("abortController"),LOQ=new FinalizationRegistry(({signal:A,abort:Q})=>{A.removeEventListener("abort",Q)}),cS=new WeakMap,sa;try{sa=NOQ(new AbortController().signal)>0}catch{sa=!1}function VOQ(A){return Q;function Q(){let B=A.deref();if(B!==void 0){LOQ.unregister(Q),this.removeEventListener("abort",Q),B.abort(this.reason);let Y=cS.get(B.signal);if(Y!==void 0){if(Y.size!==0){for(let J of Y){let C=J.deref();if(C!==void 0)C.abort(this.reason)}Y.clear()}cS.delete(B.signal)}}}}var IOQ=!1;class kB{#A;#Q;#B;#Y;constructor(A,Q=void 0){if(qQ.util.markAsUncloneable(this),A===dS)return;let B="Request constructor";qQ.argumentLengthCheck(arguments,1,B),A=qQ.converters.RequestInfo(A),Q=qQ.converters.RequestInit(Q);let Y=null,J=null,C=bS.settingsObject.baseUrl,X=null;if(typeof A==="string"){this.#Q=Q.dispatcher;let V;try{V=new URL(A,C)}catch(H){throw TypeError("Failed to parse URL from "+A,{cause:H})}if(V.username||V.password)throw TypeError("Request cannot be constructed from a URL that includes credentials: "+A);Y=lS({urlList:[V]}),J="cors"}else Bh0(qQ.is.Request(A)),Y=A.#Y,X=A.#A,this.#Q=Q.dispatcher||A.#Q;let G=bS.settingsObject.origin,F="client";if(Y.window?.constructor?.name==="EnvironmentSettingsObject"&&KOQ(Y.window,G))F=Y.window;if(Q.window!=null)throw TypeError(`'window' option '${F}' must be null`);if("window"in Q)F="no-window";Y=lS({method:Y.method,headersList:Y.headersList,unsafeRequest:Y.unsafeRequest,client:bS.settingsObject,window:F,priority:Y.priority,origin:Y.origin,referrer:Y.referrer,referrerPolicy:Y.referrerPolicy,mode:Y.mode,credentials:Y.credentials,cache:Y.cache,redirect:Y.redirect,integrity:Y.integrity,keepalive:Y.keepalive,reloadNavigation:Y.reloadNavigation,historyNavigation:Y.historyNavigation,urlList:[...Y.urlList]});let W=Object.keys(Q).length!==0;if(W){if(Y.mode==="navigate")Y.mode="same-origin";Y.reloadNavigation=!1,Y.historyNavigation=!1,Y.origin="client",Y.referrer="client",Y.referrerPolicy="",Y.url=Y.urlList[Y.urlList.length-1],Y.urlList=[Y.url]}if(Q.referrer!==void 0){let V=Q.referrer;if(V==="")Y.referrer="no-referrer";else{let H;try{H=new URL(V,C)}catch(D){throw TypeError(`Referrer "${V}" is not a valid URL.`,{cause:D})}if(H.protocol==="about:"&&H.hostname==="client"||G&&!KOQ(H,bS.settingsObject.baseUrl))Y.referrer="client";else Y.referrer=H}}if(Q.referrerPolicy!==void 0)Y.referrerPolicy=Q.referrerPolicy;let Z;if(Q.mode!==void 0)Z=Q.mode;else Z=J;if(Z==="navigate")throw qQ.errors.exception({header:"Request constructor",message:"invalid request mode navigate."});if(Z!=null)Y.mode=Z;if(Q.credentials!==void 0)Y.credentials=Q.credentials;if(Q.cache!==void 0)Y.cache=Q.cache;if(Y.cache==="only-if-cached"&&Y.mode!=="same-origin")throw TypeError("'only-if-cached' can be set only with 'same-origin' mode");if(Q.redirect!==void 0)Y.redirect=Q.redirect;if(Q.integrity!=null)Y.integrity=String(Q.integrity);if(Q.keepalive!==void 0)Y.keepalive=Boolean(Q.keepalive);if(Q.method!==void 0){let V=Q.method,H=Ah0[V];if(H!==void 0)Y.method=H;else{if(!ly0(V))throw TypeError(`'${V}' is not a valid HTTP method.`);let D=V.toUpperCase();if(py0.has(D))throw TypeError(`'${V}' HTTP method is unsupported.`);V=ey0[D]??V,Y.method=V}if(!IOQ&&Y.method==="patch")process.emitWarning("Using `patch` is highly likely to result in a `405 Method Not Allowed`. `PATCH` is much more likely to succeed.",{code:"UNDICI-FETCH-patch"}),IOQ=!0}if(Q.signal!==void 0)X=Q.signal;this.#Y=Y;let U=new AbortController;if(this.#A=U.signal,X!=null)if(X.aborted)U.abort(X.reason);else{this[Ch0]=U;let V=new WeakRef(U),H=VOQ(V);if(sa&&NOQ(X)===Jh0)Yh0(1500,X);mS.addAbortListener(X,H),LOQ.register(U,{signal:X,abort:H},H)}if(this.#B=new HOQ(dS),DOQ(this.#B,Y.headersList),na(this.#B,"request"),Z==="no-cors"){if(!iy0.has(Y.method))throw TypeError(`'${Y.method} is unsupported in no-cors mode.`);na(this.#B,"request-no-cors")}if(W){let V=UOQ(this.#B),H=Q.headers!==void 0?Q.headers:new uS(V);if(V.clear(),H instanceof uS){for(let{name:D,value:L}of H.rawValues())V.append(D,L,!1);V.cookies=H.cookies}else dy0(this.#B,H)}let $=qQ.is.Request(A)?A.#Y.body:null;if((Q.body!=null||$!=null)&&(Y.method==="GET"||Y.method==="HEAD"))throw TypeError("Request with GET/HEAD method cannot have body.");let E=null;if(Q.body!=null){let[V,H]=by0(Q.body,Y.keepalive);if(E=V,H&&!UOQ(this.#B).contains("content-type",!0))this.#B.append("content-type",H,!0)}let K=E??$;if(K!=null&&K.source==null){if(E!=null&&Q.duplex==null)throw TypeError("RequestInit: duplex option is required when sending a body.");if(Y.mode!=="same-origin"&&Y.mode!=="cors")throw TypeError('If request is made from ReadableStream, mode should be "same-origin" or "cors"');Y.useCORSPreflightFlag=!0}let I=K;if(E==null&&$!=null){if($OQ(A.#Y))throw TypeError("Cannot construct a Request with a Request object that has already been used.");let V=new TransformStream;$.stream.pipeThrough(V),I={source:$.source,length:$.length,stream:V.readable}}this.#Y.body=I}get method(){return qQ.brandCheck(this,kB),this.#Y.method}get url(){return qQ.brandCheck(this,kB),Qh0(this.#Y.url)}get headers(){return qQ.brandCheck(this,kB),this.#B}get destination(){return qQ.brandCheck(this,kB),this.#Y.destination}get referrer(){if(qQ.brandCheck(this,kB),this.#Y.referrer==="no-referrer")return"";if(this.#Y.referrer==="client")return"about:client";return this.#Y.referrer.toString()}get referrerPolicy(){return qQ.brandCheck(this,kB),this.#Y.referrerPolicy}get mode(){return qQ.brandCheck(this,kB),this.#Y.mode}get credentials(){return qQ.brandCheck(this,kB),this.#Y.credentials}get cache(){return qQ.brandCheck(this,kB),this.#Y.cache}get redirect(){return qQ.brandCheck(this,kB),this.#Y.redirect}get integrity(){return qQ.brandCheck(this,kB),this.#Y.integrity}get keepalive(){return qQ.brandCheck(this,kB),this.#Y.keepalive}get isReloadNavigation(){return qQ.brandCheck(this,kB),this.#Y.reloadNavigation}get isHistoryNavigation(){return qQ.brandCheck(this,kB),this.#Y.historyNavigation}get signal(){return qQ.brandCheck(this,kB),this.#A}get body(){return qQ.brandCheck(this,kB),this.#Y.body?this.#Y.body.stream:null}get bodyUsed(){return qQ.brandCheck(this,kB),!!this.#Y.body&&mS.isDisturbed(this.#Y.body.stream)}get duplex(){return qQ.brandCheck(this,kB),"half"}clone(){if(qQ.brandCheck(this,kB),$OQ(this.#Y))throw TypeError("unusable");let A=MOQ(this.#Y),Q=new AbortController;if(this.signal.aborted)Q.abort(this.signal.reason);else{let B=cS.get(this.signal);if(B===void 0)B=new Set,cS.set(this.signal,B);let Y=new WeakRef(Q);B.add(Y),mS.addAbortListener(Q.signal,VOQ(Y))}return zOQ(A,this.#Q,Q.signal,cy0(this.#B))}[EOQ.inspect.custom](A,Q){if(Q.depth===null)Q.depth=2;Q.colors??=!0;let B={method:this.method,url:this.url,headers:this.headers,destination:this.destination,referrer:this.referrer,referrerPolicy:this.referrerPolicy,mode:this.mode,credentials:this.credentials,cache:this.cache,redirect:this.redirect,integrity:this.integrity,keepalive:this.keepalive,isReloadNavigation:this.isReloadNavigation,isHistoryNavigation:this.isHistoryNavigation,signal:this.signal};return`Request ${EOQ.formatWithOptions(Q,B)}`}static setRequestSignal(A,Q){return A.#A=Q,A}static getRequestDispatcher(A){return A.#Q}static setRequestDispatcher(A,Q){A.#Q=Q}static setRequestHeaders(A,Q){A.#B=Q}static getRequestState(A){return A.#Y}static setRequestState(A,Q){A.#Y=Q}}var{setRequestSignal:Xh0,getRequestDispatcher:Gh0,setRequestDispatcher:Fh0,setRequestHeaders:Wh0,getRequestState:qOQ,setRequestState:Zh0}=kB;Reflect.deleteProperty(kB,"setRequestSignal");Reflect.deleteProperty(kB,"getRequestDispatcher");Reflect.deleteProperty(kB,"setRequestDispatcher");Reflect.deleteProperty(kB,"setRequestHeaders");Reflect.deleteProperty(kB,"getRequestState");Reflect.deleteProperty(kB,"setRequestState");my0(kB,qOQ);function lS(A){return{method:A.method??"GET",localURLsOnly:A.localURLsOnly??!1,unsafeRequest:A.unsafeRequest??!1,body:A.body??null,client:A.client??null,reservedClient:A.reservedClient??null,replacesClientId:A.replacesClientId??"",window:A.window??"client",keepalive:A.keepalive??!1,serviceWorkers:A.serviceWorkers??"all",initiator:A.initiator??"",destination:A.destination??"",priority:A.priority??null,origin:A.origin??"client",policyContainer:A.policyContainer??"client",referrer:A.referrer??"client",referrerPolicy:A.referrerPolicy??"",mode:A.mode??"no-cors",useCORSPreflightFlag:A.useCORSPreflightFlag??!1,credentials:A.credentials??"same-origin",useCredentials:A.useCredentials??!1,cache:A.cache??"default",redirect:A.redirect??"follow",integrity:A.integrity??"",cryptoGraphicsNonceMetadata:A.cryptoGraphicsNonceMetadata??"",parserMetadata:A.parserMetadata??"",reloadNavigation:A.reloadNavigation??!1,historyNavigation:A.historyNavigation??!1,userActivation:A.userActivation??!1,taintedOrigin:A.taintedOrigin??!1,redirectCount:A.redirectCount??0,responseTainting:A.responseTainting??"basic",preventNoCacheCacheControlHeaderModification:A.preventNoCacheCacheControlHeaderModification??!1,done:A.done??!1,timingAllowFailed:A.timingAllowFailed??!1,urlList:A.urlList,url:A.urlList[0],headersList:A.headersList?new uS(A.headersList):new uS}}function MOQ(A){let Q=lS({...A,body:null});if(A.body!=null)Q.body=uy0(A.body);return Q}function zOQ(A,Q,B,Y){let J=new kB(dS);Zh0(J,A),Fh0(J,Q),Xh0(J,B);let C=new HOQ(dS);return Wh0(J,C),DOQ(C,A.headersList),na(C,Y),J}Object.defineProperties(kB.prototype,{method:MY,url:MY,headers:MY,redirect:MY,clone:MY,signal:MY,duplex:MY,destination:MY,body:MY,bodyUsed:MY,isHistoryNavigation:MY,isReloadNavigation:MY,keepalive:MY,integrity:MY,cache:MY,credentials:MY,attribute:MY,referrerPolicy:MY,referrer:MY,mode:MY,[Symbol.toStringTag]:{value:"Request",configurable:!0}});qQ.is.Request=qQ.util.MakeTypeAssertion(kB);qQ.converters.RequestInfo=function(A){if(typeof A==="string")return qQ.converters.USVString(A);if(qQ.is.Request(A))return A;return qQ.converters.USVString(A)};qQ.converters.RequestInit=qQ.dictionaryConverter([{key:"method",converter:qQ.converters.ByteString},{key:"headers",converter:qQ.converters.HeadersInit},{key:"body",converter:qQ.nullableConverter(qQ.converters.BodyInit)},{key:"referrer",converter:qQ.converters.USVString},{key:"referrerPolicy",converter:qQ.converters.DOMString,allowedValues:ny0},{key:"mode",converter:qQ.converters.DOMString,allowedValues:ry0},{key:"credentials",converter:qQ.converters.DOMString,allowedValues:ay0},{key:"cache",converter:qQ.converters.DOMString,allowedValues:oy0},{key:"redirect",converter:qQ.converters.DOMString,allowedValues:sy0},{key:"integrity",converter:qQ.converters.DOMString},{key:"keepalive",converter:qQ.converters.boolean},{key:"signal",converter:qQ.nullableConverter((A)=>qQ.converters.AbortSignal(A,"RequestInit","signal"))},{key:"window",converter:qQ.converters.any},{key:"duplex",converter:qQ.converters.DOMString,allowedValues:ty0},{key:"dispatcher",converter:qQ.converters.any}]);ROQ.exports={Request:kB,makeRequest:lS,fromInnerRequest:zOQ,cloneRequest:MOQ,getRequestDispatcher:Gh0,getRequestState:qOQ}});var kOQ=R((anY,SOQ)=>{var $h0=u("node:assert"),r$=new Map([["sha256",0],["sha384",1],["sha512",2]]),pS;try{pS=u("node:crypto");let A=pS.getHashes();if(A.length===0)r$.clear();for(let Q of r$.keys())if(A.includes(Q)===!1)r$.delete(Q)}catch{r$.clear()}var wOQ=Map.prototype.get.bind(r$),ra=Map.prototype.has.bind(r$),Uh0=pS===void 0||r$.size===0?()=>!0:(A,Q)=>{let B=OOQ(Q);if(B.length===0)return!0;let Y=jOQ(B);for(let J of Y){let{alg:C,val:X}=J,G=POQ(C,A);if(TOQ(G,X))return!0}return!1};function jOQ(A){let Q=[],B=null;for(let Y of A){if($h0(ra(Y.alg),"Invalid SRI hash algorithm token"),Q.length===0){Q.push(Y),B=Y;continue}let J=B.alg,C=wOQ(J),X=Y.alg,G=wOQ(X);if(GC)B=Y,Q[0]=Y,Q.length=1;else Q.push(Y)}return Q}function OOQ(A){let Q=[];for(let B of A.split(" ")){let J=B.split("?",1)[0],C="",X=[J.slice(0,6),J.slice(7)],G=X[0];if(!ra(G))continue;if(X[1])C=X[1];let F={alg:G,val:C};Q.push(F)}return Q}var POQ=(A,Q)=>{return pS.hash(A,Q,"base64")};function TOQ(A,Q){let B=A.length;if(B!==0&&A[B-1]==="=")B-=1;if(B!==0&&A[B-1]==="=")B-=1;let Y=Q.length;if(Y!==0&&Q[Y-1]==="=")Y-=1;if(Y!==0&&Q[Y-1]==="=")Y-=1;if(B!==Y)return!1;for(let J=0;J{var{makeNetworkError:dB,makeAppropriateNetworkError:iS,filterResponse:aa,makeResponse:nS,fromInnerResponse:Eh0,getResponseState:Kh0}=fq(),{HeadersList:_OQ}=n$(),{Request:Vh0,cloneRequest:Ih0,getRequestDispatcher:Hh0,getRequestState:Dh0}=$V(),YC=u("node:zlib"),{makePolicyContainer:Nh0,clonePolicyContainer:Lh0,requestBadPort:qh0,TAOCheck:Mh0,appendRequestOriginHeader:zh0,responseLocationURL:Rh0,requestCurrentURL:w6,setRequestReferrerPolicyOnRedirect:wh0,tryUpgradeRequestToAPotentiallyTrustworthyURL:jh0,createOpaqueTimingInfo:Qo,appendFetchMetadata:Oh0,corsCheck:Ph0,crossOriginResourcePolicyCheck:Th0,determineRequestsReferrer:Sh0,coarsenedSharedCurrentTime:bq,sameOrigin:Ao,isCancelled:a$,isAborted:vOQ,isErrorLike:kh0,fullyReadBody:_h0,readableStreamClose:vh0,isomorphicEncode:sS,urlIsLocal:yh0,urlIsHttpHttpsScheme:aS,urlHasHttpsScheme:hh0,clampAndCoarsenConnectionTimingInfo:gh0,simpleRangeHeaderValue:xh0,buildContentRange:fh0,createInflate:bh0,extractMimeType:mh0}=H9(),o$=u("node:assert"),{safelyExtractBody:Bo,extractBody:yOQ}=lK(),{redirectStatusSet:xOQ,nullBodyStatus:fOQ,safeMethodsSet:uh0,requestBodyHeader:dh0,subresourceSet:ch0}=Qq(),lh0=u("node:events"),{Readable:ph0,pipeline:ih0,finished:nh0,isErrored:sh0,isReadable:rS}=u("node:stream"),{addAbortListener:rh0,bufferToLowerCasedHeaderName:hOQ}=lQ(),{dataURLProcessor:ah0,serializeAMimeType:oh0,minimizeSupportedMimeType:th0}=g8(),{getGlobalDispatcher:eh0}=_S(),{webidl:Yo}=UJ(),{STATUS_CODES:Ag0}=u("node:http"),{bytesMatch:Qg0}=kOQ(),{createDeferredPromise:Bg0}=Jq(),Yg0=typeof YC.createZstdDecompress==="function",Jg0=["GET","HEAD"],Cg0=typeof __UNDICI_IS_NODE__<"u"||typeof esbuildDetection<"u"?"node":"undici",oa;class Jo extends lh0{constructor(A){super();this.dispatcher=A,this.connection=null,this.dump=!1,this.state="ongoing"}terminate(A){if(this.state!=="ongoing")return;this.state="terminated",this.connection?.destroy(A),this.emit("terminated",A)}abort(A){if(this.state!=="ongoing")return;if(this.state="aborted",!A)A=new DOMException("The operation was aborted.","AbortError");this.serializedAbortReason=A,this.connection?.destroy(A),this.emit("terminated",A)}}function Xg0(A){bOQ(A,"fetch")}function Gg0(A,Q=void 0){Yo.argumentLengthCheck(arguments,1,"globalThis.fetch");let B=Bg0(),Y;try{Y=new Vh0(A,Q)}catch(Z){return B.reject(Z),B.promise}let J=Dh0(Y);if(Y.signal.aborted)return ta(B,J,null,Y.signal.reason),B.promise;if(J.client.globalObject?.constructor?.name==="ServiceWorkerGlobalScope")J.serviceWorkers="none";let X=null,G=!1,F=null;return rh0(Y.signal,()=>{G=!0,o$(F!=null),F.abort(Y.signal.reason);let Z=X?.deref();ta(B,J,Z,Y.signal.reason)}),F=uOQ({request:J,processResponseEndOfBody:Xg0,processResponse:(Z)=>{if(G)return;if(Z.aborted){ta(B,J,X,F.serializedAbortReason);return}if(Z.type==="error"){B.reject(TypeError("fetch failed",{cause:Z.error}));return}X=new WeakRef(Eh0(Z,"immutable")),B.resolve(X.deref()),B=null},dispatcher:Hh0(Y)}),B.promise}function bOQ(A,Q="other"){if(A.type==="error"&&A.aborted)return;if(!A.urlList?.length)return;let B=A.urlList[0],Y=A.timingInfo,J=A.cacheState;if(!aS(B))return;if(Y===null)return;if(!A.timingAllowPassed)Y=Qo({startTime:Y.startTime}),J="";Y.endTime=bq(),A.timingInfo=Y,mOQ(Y,B.href,Q,globalThis,J,"",A.status)}var mOQ=performance.markResourceTiming;function ta(A,Q,B,Y){if(A)A.reject(Y);if(Q.body?.stream!=null&&rS(Q.body.stream))Q.body.stream.cancel(Y).catch((C)=>{if(C.code==="ERR_INVALID_STATE")return;throw C});if(B==null)return;let J=Kh0(B);if(J.body?.stream!=null&&rS(J.body.stream))J.body.stream.cancel(Y).catch((C)=>{if(C.code==="ERR_INVALID_STATE")return;throw C})}function uOQ({request:A,processRequestBodyChunkLength:Q,processRequestEndOfBody:B,processResponse:Y,processResponseEndOfBody:J,processResponseConsumeBody:C,useParallelQueue:X=!1,dispatcher:G=eh0()}){o$(G);let F=null,W=!1;if(A.client!=null)F=A.client.globalObject,W=A.client.crossOriginIsolatedCapability;let Z=bq(W),U=Qo({startTime:Z}),$={controller:new Jo(G),request:A,timingInfo:U,processRequestBodyChunkLength:Q,processRequestEndOfBody:B,processResponse:Y,processResponseConsumeBody:C,processResponseEndOfBody:J,taskDestination:F,crossOriginIsolatedCapability:W};if(o$(!A.body||A.body.stream),A.window==="client")A.window=A.client?.globalObject?.constructor?.name==="Window"?A.client:"no-window";if(A.origin==="client")A.origin=A.client.origin;if(A.policyContainer==="client")if(A.client!=null)A.policyContainer=Lh0(A.client.policyContainer);else A.policyContainer=Nh0();if(!A.headersList.contains("accept",!0))A.headersList.append("accept","*/*",!0);if(!A.headersList.contains("accept-language",!0))A.headersList.append("accept-language","*",!0);if(A.priority===null);if(ch0.has(A.destination));return dOQ($,!1),$.controller}async function dOQ(A,Q){try{let B=A.request,Y=null;if(B.localURLsOnly&&!yh0(w6(B)))Y=dB("local URLs only");if(jh0(B),qh0(B)==="blocked")Y=dB("bad port");if(B.referrerPolicy==="")B.referrerPolicy=B.policyContainer.referrerPolicy;if(B.referrer!=="no-referrer")B.referrer=Sh0(B);if(Y===null){let C=w6(B);if(Ao(C,B.url)&&B.responseTainting==="basic"||C.protocol==="data:"||(B.mode==="navigate"||B.mode==="websocket"))B.responseTainting="basic",Y=await gOQ(A);else if(B.mode==="same-origin")Y=dB('request mode cannot be "same-origin"');else if(B.mode==="no-cors")if(B.redirect!=="follow")Y=dB('redirect mode cannot be "follow" for "no-cors" request');else B.responseTainting="opaque",Y=await gOQ(A);else if(!aS(w6(B)))Y=dB("URL scheme must be a HTTP(S) scheme");else B.responseTainting="cors",Y=await cOQ(A)}if(Q)return Y;if(Y.status!==0&&!Y.internalResponse){if(B.responseTainting==="cors");if(B.responseTainting==="basic")Y=aa(Y,"basic");else if(B.responseTainting==="cors")Y=aa(Y,"cors");else if(B.responseTainting==="opaque")Y=aa(Y,"opaque");else o$(!1)}let J=Y.status===0?Y:Y.internalResponse;if(J.urlList.length===0)J.urlList.push(...B.urlList);if(!B.timingAllowFailed)Y.timingAllowPassed=!0;if(Y.type==="opaque"&&J.status===206&&J.rangeRequested&&!B.headers.contains("range",!0))Y=J=dB();if(Y.status!==0&&(B.method==="HEAD"||B.method==="CONNECT"||fOQ.includes(J.status)))J.body=null,A.controller.dump=!0;if(B.integrity){let C=(G)=>ea(A,dB(G));if(B.responseTainting==="opaque"||Y.body==null){C(Y.error);return}let X=(G)=>{if(!Qg0(G,B.integrity)){C("integrity mismatch");return}Y.body=Bo(G)[0],ea(A,Y)};_h0(Y.body,X,C)}else ea(A,Y)}catch(B){A.controller.terminate(B)}}function gOQ(A){if(a$(A)&&A.request.redirectCount===0)return Promise.resolve(iS(A));let{request:Q}=A,{protocol:B}=w6(Q);switch(B){case"about:":return Promise.resolve(dB("about scheme is not supported"));case"blob:":{if(!oa)oa=u("node:buffer").resolveObjectURL;let Y=w6(Q);if(Y.search.length!==0)return Promise.resolve(dB("NetworkError when attempting to fetch resource."));let J=oa(Y.toString());if(Q.method!=="GET"||!Yo.is.Blob(J))return Promise.resolve(dB("invalid method"));let C=nS(),X=J.size,G=sS(`${X}`),F=J.type;if(!Q.headersList.contains("range",!0)){let W=yOQ(J);C.statusText="OK",C.body=W[0],C.headersList.set("content-length",G,!0),C.headersList.set("content-type",F,!0)}else{C.rangeRequested=!0;let W=Q.headersList.get("range",!0),Z=xh0(W,!0);if(Z==="failure")return Promise.resolve(dB("failed to fetch the data URL"));let{rangeStartValue:U,rangeEndValue:$}=Z;if(U===null)U=X-$,$=U+$-1;else{if(U>=X)return Promise.resolve(dB("Range start is greater than the blob's size."));if($===null||$>=X)$=X-1}let E=J.slice(U,$,F),K=yOQ(E);C.body=K[0];let I=sS(`${E.size}`),V=fh0(U,$,X);C.status=206,C.statusText="Partial Content",C.headersList.set("content-length",I,!0),C.headersList.set("content-type",F,!0),C.headersList.set("content-range",V,!0)}return Promise.resolve(C)}case"data:":{let Y=w6(Q),J=ah0(Y);if(J==="failure")return Promise.resolve(dB("failed to fetch the data URL"));let C=oh0(J.mimeType);return Promise.resolve(nS({statusText:"OK",headersList:[["content-type",{name:"Content-Type",value:C}]],body:Bo(J.body)[0]}))}case"file:":return Promise.resolve(dB("not implemented... yet..."));case"http:":case"https:":return cOQ(A).catch((Y)=>dB(Y));default:return Promise.resolve(dB("unknown scheme"))}}function Fg0(A,Q){if(A.request.done=!0,A.processResponseDone!=null)queueMicrotask(()=>A.processResponseDone(Q))}function ea(A,Q){let B=A.timingInfo,Y=()=>{let C=Date.now();if(A.request.destination==="document")A.controller.fullTimingInfo=B;A.controller.reportTimingSteps=()=>{if(!aS(A.request.url))return;B.endTime=C;let{cacheState:G,bodyInfo:F}=Q;if(!Q.timingAllowPassed)B=Qo(B),G="";let W=0;if(A.request.mode!=="navigator"||!Q.hasCrossOriginRedirects){W=Q.status;let Z=mh0(Q.headersList);if(Z!=="failure")F.contentType=th0(Z)}if(A.request.initiatorType!=null)mOQ(B,A.request.url.href,A.request.initiatorType,globalThis,G,F,W)};let X=()=>{if(A.request.done=!0,A.processResponseEndOfBody!=null)queueMicrotask(()=>A.processResponseEndOfBody(Q));if(A.request.initiatorType!=null)A.controller.reportTimingSteps()};queueMicrotask(()=>X())};if(A.processResponse!=null)queueMicrotask(()=>{A.processResponse(Q),A.processResponse=null});let J=Q.type==="error"?Q:Q.internalResponse??Q;if(J.body==null)Y();else nh0(J.body.stream,()=>{Y()})}async function cOQ(A){let Q=A.request,B=null,Y=null,J=A.timingInfo;if(Q.serviceWorkers==="all");if(B===null){if(Q.redirect==="follow")Q.serviceWorkers="none";if(Y=B=await lOQ(A),Q.responseTainting==="cors"&&Ph0(Q,B)==="failure")return dB("cors failure");if(Mh0(Q,B)==="failure")Q.timingAllowFailed=!0}if((Q.responseTainting==="opaque"||B.type==="opaque")&&Th0(Q.origin,Q.client,Q.destination,Y)==="blocked")return dB("blocked");if(xOQ.has(Y.status)){if(Q.redirect!=="manual")A.controller.connection.destroy(void 0,!1);if(Q.redirect==="error")B=dB("unexpected redirect");else if(Q.redirect==="manual")B=Y;else if(Q.redirect==="follow")B=await Wg0(A,B);else o$(!1)}return B.timingInfo=J,B}function Wg0(A,Q){let B=A.request,Y=Q.internalResponse?Q.internalResponse:Q,J;try{if(J=Rh0(Y,w6(B).hash),J==null)return Q}catch(X){return Promise.resolve(dB(X))}if(!aS(J))return Promise.resolve(dB("URL scheme must be a HTTP(S) scheme"));if(B.redirectCount===20)return Promise.resolve(dB("redirect count exceeded"));if(B.redirectCount+=1,B.mode==="cors"&&(J.username||J.password)&&!Ao(B,J))return Promise.resolve(dB('cross origin not allowed for request mode "cors"'));if(B.responseTainting==="cors"&&(J.username||J.password))return Promise.resolve(dB('URL cannot contain credentials for request mode "cors"'));if(Y.status!==303&&B.body!=null&&B.body.source==null)return Promise.resolve(dB());if([301,302].includes(Y.status)&&B.method==="POST"||Y.status===303&&!Jg0.includes(B.method)){B.method="GET",B.body=null;for(let X of dh0)B.headersList.delete(X)}if(!Ao(w6(B),J))B.headersList.delete("authorization",!0),B.headersList.delete("proxy-authorization",!0),B.headersList.delete("cookie",!0),B.headersList.delete("host",!0);if(B.body!=null)o$(B.body.source!=null),B.body=Bo(B.body.source)[0];let C=A.timingInfo;if(C.redirectEndTime=C.postRedirectStartTime=bq(A.crossOriginIsolatedCapability),C.redirectStartTime===0)C.redirectStartTime=C.startTime;return B.urlList.push(J),wh0(B,Y),dOQ(A,!0)}async function lOQ(A,Q=!1,B=!1){let Y=A.request,J=null,C=null,X=null,G=null,F=!1;if(Y.window==="no-window"&&Y.redirect==="error")J=A,C=Y;else C=Ih0(Y),J={...A},J.request=C;let W=Y.credentials==="include"||Y.credentials==="same-origin"&&Y.responseTainting==="basic",Z=C.body?C.body.length:null,U=null;if(C.body==null&&["POST","PUT"].includes(C.method))U="0";if(Z!=null)U=sS(`${Z}`);if(U!=null)C.headersList.append("content-length",U,!0);if(Z!=null&&C.keepalive);if(Yo.is.URL(C.referrer))C.headersList.append("referer",sS(C.referrer.href),!0);if(zh0(C),Oh0(C),!C.headersList.contains("user-agent",!0))C.headersList.append("user-agent",Cg0,!0);if(C.cache==="default"&&(C.headersList.contains("if-modified-since",!0)||C.headersList.contains("if-none-match",!0)||C.headersList.contains("if-unmodified-since",!0)||C.headersList.contains("if-match",!0)||C.headersList.contains("if-range",!0)))C.cache="no-store";if(C.cache==="no-cache"&&!C.preventNoCacheCacheControlHeaderModification&&!C.headersList.contains("cache-control",!0))C.headersList.append("cache-control","max-age=0",!0);if(C.cache==="no-store"||C.cache==="reload"){if(!C.headersList.contains("pragma",!0))C.headersList.append("pragma","no-cache",!0);if(!C.headersList.contains("cache-control",!0))C.headersList.append("cache-control","no-cache",!0)}if(C.headersList.contains("range",!0))C.headersList.append("accept-encoding","identity",!0);if(!C.headersList.contains("accept-encoding",!0))if(hh0(w6(C)))C.headersList.append("accept-encoding","br, gzip, deflate",!0);else C.headersList.append("accept-encoding","gzip, deflate",!0);if(C.headersList.delete("host",!0),G==null)C.cache="no-store";if(C.cache!=="no-store"&&C.cache!=="reload");if(X==null){if(C.cache==="only-if-cached")return dB("only if cached");let $=await Zg0(J,W,B);if(!uh0.has(C.method)&&$.status>=200&&$.status<=399);if(F&&$.status===304);if(X==null)X=$}if(X.urlList=[...C.urlList],C.headersList.contains("range",!0))X.rangeRequested=!0;if(X.requestIncludesCredentials=W,X.status===407){if(Y.window==="no-window")return dB();if(a$(A))return iS(A);return dB("proxy authentication required")}if(X.status===421&&!B&&(Y.body==null||Y.body.source!=null)){if(a$(A))return iS(A);A.controller.connection.destroy(),X=await lOQ(A,Q,!0)}return X}async function Zg0(A,Q=!1,B=!1){o$(!A.controller.connection||A.controller.connection.destroyed),A.controller.connection={abort:null,destroyed:!1,destroy(K,I=!0){if(!this.destroyed){if(this.destroyed=!0,I)this.abort?.(K??new DOMException("The operation was aborted.","AbortError"))}}};let Y=A.request,J=null,C=A.timingInfo;if(!0)Y.cache="no-store";let G=B?"yes":"no";if(Y.mode==="websocket");let F=null;if(Y.body==null&&A.processRequestEndOfBody)queueMicrotask(()=>A.processRequestEndOfBody());else if(Y.body!=null){let K=async function*(H){if(a$(A))return;yield H,A.processRequestBodyChunkLength?.(H.byteLength)},I=()=>{if(a$(A))return;if(A.processRequestEndOfBody)A.processRequestEndOfBody()},V=(H)=>{if(a$(A))return;if(H.name==="AbortError")A.controller.abort();else A.controller.terminate(H)};F=async function*(){try{for await(let H of Y.body.stream)yield*K(H);I()}catch(H){V(H)}}()}try{let{body:K,status:I,statusText:V,headersList:H,socket:D}=await E({body:F});if(D)J=nS({status:I,statusText:V,headersList:H,socket:D});else{let L=K[Symbol.asyncIterator]();A.controller.next=()=>L.next(),J=nS({status:I,statusText:V,headersList:H})}}catch(K){if(K.name==="AbortError")return A.controller.connection.destroy(),iS(A,K);return dB(K)}let U=new ReadableStream({start(K){A.controller.controller=K},pull:()=>{return A.controller.resume()},cancel:(K)=>{if(!a$(A))A.controller.abort(K)},type:"bytes"});if(J.body={stream:U,source:null,length:null},!A.controller.resume)A.controller.on("terminated",$);A.controller.resume=async()=>{while(!0){let K,I;try{let{done:H,value:D}=await A.controller.next();if(vOQ(A))break;K=H?void 0:D}catch(H){if(A.controller.ended&&!C.encodedBodySize)K=void 0;else K=H,I=!0}if(K===void 0){vh0(A.controller.controller),Fg0(A,J);return}if(C.decodedBodySize+=K?.byteLength??0,I){A.controller.terminate(K);return}let V=new Uint8Array(K);if(V.byteLength)A.controller.controller.enqueue(V);if(sh0(U)){A.controller.terminate();return}if(A.controller.controller.desiredSize<=0)return}};function $(K){if(vOQ(A)){if(J.aborted=!0,rS(U))A.controller.controller.error(A.controller.serializedAbortReason)}else if(rS(U))A.controller.controller.error(TypeError("terminated",{cause:kh0(K)?K:void 0}));A.controller.connection.destroy()}return J;function E({body:K}){let I=w6(Y),V=A.controller.dispatcher;return new Promise((H,D)=>V.dispatch({path:I.pathname+I.search,origin:I.origin,method:Y.method,body:V.isMockActive?Y.body&&(Y.body.source||Y.body.stream):K,headers:Y.headersList.entries,maxRedirections:0,upgrade:Y.mode==="websocket"?"websocket":void 0},{body:null,abort:null,onConnect(L){let{connection:z}=A.controller;if(C.finalConnectionTimingInfo=gh0(void 0,C.postRedirectStartTime,A.crossOriginIsolatedCapability),z.destroyed)L(new DOMException("The operation was aborted.","AbortError"));else A.controller.on("terminated",L),this.abort=z.abort=L;C.finalNetworkRequestStartTime=bq(A.crossOriginIsolatedCapability)},onResponseStarted(){C.finalNetworkResponseStartTime=bq(A.crossOriginIsolatedCapability)},onHeaders(L,z,M,N){if(L<200)return!1;let q=new _OQ;for(let k=0;k=0;--S){let v=T[S].trim();if(v==="x-gzip"||v==="gzip")_.push(YC.createGunzip({flush:YC.constants.Z_SYNC_FLUSH,finishFlush:YC.constants.Z_SYNC_FLUSH}));else if(v==="deflate")_.push(bh0({flush:YC.constants.Z_SYNC_FLUSH,finishFlush:YC.constants.Z_SYNC_FLUSH}));else if(v==="br")_.push(YC.createBrotliDecompress({flush:YC.constants.BROTLI_OPERATION_FLUSH,finishFlush:YC.constants.BROTLI_OPERATION_FLUSH}));else if(v==="zstd"&&Yg0)_.push(YC.createZstdDecompress({flush:YC.constants.ZSTD_e_continue,finishFlush:YC.constants.ZSTD_e_end}));else{_.length=0;break}}}let O=this.onError.bind(this);return H({status:L,statusText:N,headersList:q,body:_.length?ih0(this.body,..._,(k)=>{if(k)this.onError(k)}).on("error",O):this.body.on("error",O)}),!0},onData(L){if(A.controller.dump)return;let z=L;return C.encodedBodySize+=z.byteLength,this.body.push(z)},onComplete(){if(this.abort)A.controller.off("terminated",this.abort);A.controller.ended=!0,this.body.push(null)},onError(L){if(this.abort)A.controller.off("terminated",this.abort);this.body?.destroy(L),A.controller.terminate(L),D(L)},onUpgrade(L,z,M){if(L!==101)return;let N=new _OQ;for(let q=0;q{var $g0=u("node:assert"),{URLSerializer:iOQ}=g8(),{isValidHeaderName:Ug0}=H9();function Eg0(A,Q,B=!1){let Y=iOQ(A,B),J=iOQ(Q,B);return Y===J}function Kg0(A){$g0(A!==null);let Q=[];for(let B of A.split(","))if(B=B.trim(),Ug0(B))Q.push(B);return Q}nOQ.exports={urlEquals:Eg0,getFieldValues:Kg0}});var oOQ=R((enY,aOQ)=>{var Co=u("node:assert"),{kConstruct:Vg0}=Q0(),{urlEquals:Ig0,getFieldValues:Xo}=sOQ(),{kEnumerableProperty:t$,isDisturbed:Hg0}=lQ(),{webidl:JQ}=UJ(),{cloneResponse:Dg0,fromInnerResponse:Ng0,getResponseState:Lg0}=fq(),{Request:uq,fromInnerRequest:qg0,getRequestState:j6}=$V(),{fetching:Mg0}=mq(),{urlIsHttpHttpsScheme:oS,readAllBytes:zg0}=H9(),{createDeferredPromise:UV}=Jq();class O6{#A;constructor(){if(arguments[0]!==Vg0)JQ.illegalConstructor();JQ.util.markAsUncloneable(this),this.#A=arguments[1]}async match(A,Q={}){JQ.brandCheck(this,O6);let B="Cache.match";JQ.argumentLengthCheck(arguments,1,B),A=JQ.converters.RequestInfo(A),Q=JQ.converters.CacheQueryOptions(Q,B,"options");let Y=this.#J(A,Q,1);if(Y.length===0)return;return Y[0]}async matchAll(A=void 0,Q={}){JQ.brandCheck(this,O6);let B="Cache.matchAll";if(A!==void 0)A=JQ.converters.RequestInfo(A);return Q=JQ.converters.CacheQueryOptions(Q,B,"options"),this.#J(A,Q)}async add(A){JQ.brandCheck(this,O6);let Q="Cache.add";JQ.argumentLengthCheck(arguments,1,Q),A=JQ.converters.RequestInfo(A);let B=[A];return await this.addAll(B)}async addAll(A){JQ.brandCheck(this,O6);let Q="Cache.addAll";JQ.argumentLengthCheck(arguments,1,Q);let B=[],Y=[];for(let U of A){if(U===void 0)throw JQ.errors.conversionFailed({prefix:Q,argument:"Argument 1",types:["undefined is not allowed"]});if(U=JQ.converters.RequestInfo(U),typeof U==="string")continue;let $=j6(U);if(!oS($.url)||$.method!=="GET")throw JQ.errors.exception({header:Q,message:"Expected http/s scheme when method is not GET."})}let J=[];for(let U of A){let $=j6(new uq(U));if(!oS($.url))throw JQ.errors.exception({header:Q,message:"Expected http/s scheme."});$.initiator="fetch",$.destination="subresource",Y.push($);let E=UV();J.push(Mg0({request:$,processResponse(K){if(K.type==="error"||K.status===206||K.status<200||K.status>299)E.reject(JQ.errors.exception({header:"Cache.addAll",message:"Received an invalid status code or the request failed."}));else if(K.headersList.contains("vary")){let I=Xo(K.headersList.get("vary"));for(let V of I)if(V==="*"){E.reject(JQ.errors.exception({header:"Cache.addAll",message:"invalid vary field value"}));for(let H of J)H.abort();return}}},processResponseEndOfBody(K){if(K.aborted){E.reject(new DOMException("aborted","AbortError"));return}E.resolve(K)}})),B.push(E.promise)}let X=await Promise.all(B),G=[],F=0;for(let U of X){let $={type:"put",request:Y[F],response:U};G.push($),F++}let W=UV(),Z=null;try{this.#Q(G)}catch(U){Z=U}return queueMicrotask(()=>{if(Z===null)W.resolve(void 0);else W.reject(Z)}),W.promise}async put(A,Q){JQ.brandCheck(this,O6);let B="Cache.put";JQ.argumentLengthCheck(arguments,2,B),A=JQ.converters.RequestInfo(A),Q=JQ.converters.Response(Q,B,"response");let Y=null;if(JQ.is.Request(A))Y=j6(A);else Y=j6(new uq(A));if(!oS(Y.url)||Y.method!=="GET")throw JQ.errors.exception({header:B,message:"Expected an http/s scheme when method is not GET"});let J=Lg0(Q);if(J.status===206)throw JQ.errors.exception({header:B,message:"Got 206 status"});if(J.headersList.contains("vary")){let $=Xo(J.headersList.get("vary"));for(let E of $)if(E==="*")throw JQ.errors.exception({header:B,message:"Got * vary field value"})}if(J.body&&(Hg0(J.body.stream)||J.body.stream.locked))throw JQ.errors.exception({header:B,message:"Response body is locked or disturbed"});let C=Dg0(J),X=UV();if(J.body!=null){let E=J.body.stream.getReader();zg0(E,X.resolve,X.reject)}else X.resolve(void 0);let G=[],F={type:"put",request:Y,response:C};G.push(F);let W=await X.promise;if(C.body!=null)C.body.source=W;let Z=UV(),U=null;try{this.#Q(G)}catch($){U=$}return queueMicrotask(()=>{if(U===null)Z.resolve();else Z.reject(U)}),Z.promise}async delete(A,Q={}){JQ.brandCheck(this,O6);let B="Cache.delete";JQ.argumentLengthCheck(arguments,1,B),A=JQ.converters.RequestInfo(A),Q=JQ.converters.CacheQueryOptions(Q,B,"options");let Y=null;if(JQ.is.Request(A)){if(Y=j6(A),Y.method!=="GET"&&!Q.ignoreMethod)return!1}else Co(typeof A==="string"),Y=j6(new uq(A));let J=[],C={type:"delete",request:Y,options:Q};J.push(C);let X=UV(),G=null,F;try{F=this.#Q(J)}catch(W){G=W}return queueMicrotask(()=>{if(G===null)X.resolve(!!F?.length);else X.reject(G)}),X.promise}async keys(A=void 0,Q={}){JQ.brandCheck(this,O6);let B="Cache.keys";if(A!==void 0)A=JQ.converters.RequestInfo(A);Q=JQ.converters.CacheQueryOptions(Q,B,"options");let Y=null;if(A!==void 0){if(JQ.is.Request(A)){if(Y=j6(A),Y.method!=="GET"&&!Q.ignoreMethod)return[]}else if(typeof A==="string")Y=j6(new uq(A))}let J=UV(),C=[];if(A===void 0)for(let X of this.#A)C.push(X[0]);else{let X=this.#B(Y,Q);for(let G of X)C.push(G[0])}return queueMicrotask(()=>{let X=[];for(let G of C){let F=qg0(G,void 0,new AbortController().signal,"immutable");X.push(F)}J.resolve(Object.freeze(X))}),J.promise}#Q(A){let Q=this.#A,B=[...Q],Y=[],J=[];try{for(let C of A){if(C.type!=="delete"&&C.type!=="put")throw JQ.errors.exception({header:"Cache.#batchCacheOperations",message:'operation type does not match "delete" or "put"'});if(C.type==="delete"&&C.response!=null)throw JQ.errors.exception({header:"Cache.#batchCacheOperations",message:"delete operation should not have an associated response"});if(this.#B(C.request,C.options,Y).length)throw new DOMException("???","InvalidStateError");let X;if(C.type==="delete"){if(X=this.#B(C.request,C.options),X.length===0)return[];for(let G of X){let F=Q.indexOf(G);Co(F!==-1),Q.splice(F,1)}}else if(C.type==="put"){if(C.response==null)throw JQ.errors.exception({header:"Cache.#batchCacheOperations",message:"put operation should have an associated response"});let G=C.request;if(!oS(G.url))throw JQ.errors.exception({header:"Cache.#batchCacheOperations",message:"expected http or https scheme"});if(G.method!=="GET")throw JQ.errors.exception({header:"Cache.#batchCacheOperations",message:"not get method"});if(C.options!=null)throw JQ.errors.exception({header:"Cache.#batchCacheOperations",message:"options must not be defined"});X=this.#B(C.request);for(let F of X){let W=Q.indexOf(F);Co(W!==-1),Q.splice(W,1)}Q.push([C.request,C.response]),Y.push([C.request,C.response])}J.push([C.request,C.response])}return J}catch(C){throw this.#A.length=0,this.#A=B,C}}#B(A,Q,B){let Y=[],J=B??this.#A;for(let C of J){let[X,G]=C;if(this.#Y(A,X,G,Q))Y.push(C)}return Y}#Y(A,Q,B=null,Y){let J=new URL(A.url),C=new URL(Q.url);if(Y?.ignoreSearch)C.search="",J.search="";if(!Ig0(J,C,!0))return!1;if(B==null||Y?.ignoreVary||!B.headersList.contains("vary"))return!0;let X=Xo(B.headersList.get("vary"));for(let G of X){if(G==="*")return!1;let F=Q.headersList.get(G),W=A.headersList.get(G);if(F!==W)return!1}return!0}#J(A,Q,B=1/0){let Y=null;if(A!==void 0){if(JQ.is.Request(A)){if(Y=j6(A),Y.method!=="GET"&&!Q.ignoreMethod)return[]}else if(typeof A==="string")Y=j6(new uq(A))}let J=[];if(A===void 0)for(let X of this.#A)J.push(X[1]);else{let X=this.#B(Y,Q);for(let G of X)J.push(G[1])}let C=[];for(let X of J){let G=Ng0(X,"immutable");if(C.push(G.clone()),C.length>=B)break}return Object.freeze(C)}}Object.defineProperties(O6.prototype,{[Symbol.toStringTag]:{value:"Cache",configurable:!0},match:t$,matchAll:t$,add:t$,addAll:t$,put:t$,delete:t$,keys:t$});var rOQ=[{key:"ignoreSearch",converter:JQ.converters.boolean,defaultValue:()=>!1},{key:"ignoreMethod",converter:JQ.converters.boolean,defaultValue:()=>!1},{key:"ignoreVary",converter:JQ.converters.boolean,defaultValue:()=>!1}];JQ.converters.CacheQueryOptions=JQ.dictionaryConverter(rOQ);JQ.converters.MultiCacheQueryOptions=JQ.dictionaryConverter([...rOQ,{key:"cacheName",converter:JQ.converters.DOMString}]);JQ.converters.Response=JQ.interfaceConverter(JQ.is.Response,"Response");JQ.converters["sequence"]=JQ.sequenceConverter(JQ.converters.RequestInfo);aOQ.exports={Cache:O6}});var eOQ=R((AsY,tOQ)=>{var{Cache:tS}=oOQ(),{webidl:gJ}=UJ(),{kEnumerableProperty:dq}=lQ(),{kConstruct:cq}=Q0();class JW{#A=new Map;constructor(){if(arguments[0]!==cq)gJ.illegalConstructor();gJ.util.markAsUncloneable(this)}async match(A,Q={}){if(gJ.brandCheck(this,JW),gJ.argumentLengthCheck(arguments,1,"CacheStorage.match"),A=gJ.converters.RequestInfo(A),Q=gJ.converters.MultiCacheQueryOptions(Q),Q.cacheName!=null){if(this.#A.has(Q.cacheName)){let B=this.#A.get(Q.cacheName);return await new tS(cq,B).match(A,Q)}}else for(let B of this.#A.values()){let J=await new tS(cq,B).match(A,Q);if(J!==void 0)return J}}async has(A){gJ.brandCheck(this,JW);let Q="CacheStorage.has";return gJ.argumentLengthCheck(arguments,1,Q),A=gJ.converters.DOMString(A,Q,"cacheName"),this.#A.has(A)}async open(A){gJ.brandCheck(this,JW);let Q="CacheStorage.open";if(gJ.argumentLengthCheck(arguments,1,Q),A=gJ.converters.DOMString(A,Q,"cacheName"),this.#A.has(A)){let Y=this.#A.get(A);return new tS(cq,Y)}let B=[];return this.#A.set(A,B),new tS(cq,B)}async delete(A){gJ.brandCheck(this,JW);let Q="CacheStorage.delete";return gJ.argumentLengthCheck(arguments,1,Q),A=gJ.converters.DOMString(A,Q,"cacheName"),this.#A.delete(A)}async keys(){return gJ.brandCheck(this,JW),[...this.#A.keys()]}}Object.defineProperties(JW.prototype,{[Symbol.toStringTag]:{value:"CacheStorage",configurable:!0},match:dq,has:dq,open:dq,delete:dq,keys:dq});tOQ.exports={CacheStorage:JW}});var QPQ=R((QsY,APQ)=>{APQ.exports={maxAttributeValueSize:1024,maxNameValuePairSize:4096}});var Go=R((BsY,XPQ)=>{function Rg0(A){for(let Q=0;Q=0&&B<=8||B>=10&&B<=31||B===127)return!0}return!1}function BPQ(A){for(let Q=0;Q126||B===34||B===40||B===41||B===60||B===62||B===64||B===44||B===59||B===58||B===92||B===47||B===91||B===93||B===63||B===61||B===123||B===125)throw Error("Invalid cookie name")}}function YPQ(A){let Q=A.length,B=0;if(A[0]==='"'){if(Q===1||A[Q-1]!=='"')throw Error("Invalid cookie value");--Q,++B}while(B126||Y===34||Y===44||Y===59||Y===92)throw Error("Invalid cookie value")}}function JPQ(A){for(let Q=0;QQ.toString().padStart(2,"0"));function CPQ(A){if(typeof A==="number")A=new Date(A);return`${jg0[A.getUTCDay()]}, ${eS[A.getUTCDate()]} ${Og0[A.getUTCMonth()]} ${A.getUTCFullYear()} ${eS[A.getUTCHours()]}:${eS[A.getUTCMinutes()]}:${eS[A.getUTCSeconds()]} GMT`}function Pg0(A){if(A<0)throw Error("Invalid cookie max-age")}function Tg0(A){if(A.name.length===0)return null;BPQ(A.name),YPQ(A.value);let Q=[`${A.name}=${A.value}`];if(A.name.startsWith("__Secure-"))A.secure=!0;if(A.name.startsWith("__Host-"))A.secure=!0,A.domain=null,A.path="/";if(A.secure)Q.push("Secure");if(A.httpOnly)Q.push("HttpOnly");if(typeof A.maxAge==="number")Pg0(A.maxAge),Q.push(`Max-Age=${A.maxAge}`);if(A.domain)wg0(A.domain),Q.push(`Domain=${A.domain}`);if(A.path)JPQ(A.path),Q.push(`Path=${A.path}`);if(A.expires&&A.expires.toString()!=="Invalid Date")Q.push(`Expires=${CPQ(A.expires)}`);if(A.sameSite)Q.push(`SameSite=${A.sameSite}`);for(let B of A.unparsed){if(!B.includes("="))throw Error("Invalid unparsed");let[Y,...J]=B.split("=");Q.push(`${Y.trim()}=${J.join("=")}`)}return Q.join("; ")}XPQ.exports={isCTLExcludingHtab:Rg0,validateCookieName:BPQ,validateCookiePath:JPQ,validateCookieValue:YPQ,toIMFDate:CPQ,stringify:Tg0}});var FPQ=R((YsY,GPQ)=>{var{maxNameValuePairSize:Sg0,maxAttributeValueSize:kg0}=QPQ(),{isCTLExcludingHtab:_g0}=Go(),{collectASequenceOfCodePointsFast:Ak}=g8(),vg0=u("node:assert"),{unescape:yg0}=u("node:querystring");function hg0(A){if(_g0(A))return null;let Q="",B="",Y="",J="";if(A.includes(";")){let C={position:0};Q=Ak(";",A,C),B=A.slice(C.position)}else Q=A;if(!Q.includes("="))J=Q;else{let C={position:0};Y=Ak("=",Q,C),J=Q.slice(C.position+1)}if(Y=Y.trim(),J=J.trim(),Y.length+J.length>Sg0)return null;return{name:Y,value:yg0(J),...EV(B)}}function EV(A,Q={}){if(A.length===0)return Q;vg0(A[0]===";"),A=A.slice(1);let B="";if(A.includes(";"))B=Ak(";",A,{position:0}),A=A.slice(B.length);else B=A,A="";let Y="",J="";if(B.includes("=")){let X={position:0};Y=Ak("=",B,X),J=B.slice(X.position+1)}else Y=B;if(Y=Y.trim(),J=J.trim(),J.length>kg0)return EV(A,Q);let C=Y.toLowerCase();if(C==="expires"){let X=new Date(J);Q.expires=X}else if(C==="max-age"){let X=J.charCodeAt(0);if((X<48||X>57)&&J[0]!=="-")return EV(A,Q);if(!/^\d+$/.test(J))return EV(A,Q);let G=Number(J);Q.maxAge=G}else if(C==="domain"){let X=J;if(X[0]===".")X=X.slice(1);X=X.toLowerCase(),Q.domain=X}else if(C==="path"){let X="";if(J.length===0||J[0]!=="/")X="/";else X=J;Q.path=X}else if(C==="secure")Q.secure=!0;else if(C==="httponly")Q.httpOnly=!0;else if(C==="samesite"){let X="Default",G=J.toLowerCase();if(G.includes("none"))X="None";if(G.includes("strict"))X="Strict";if(G.includes("lax"))X="Lax";Q.sameSite=X}else Q.unparsed??=[],Q.unparsed.push(`${Y}=${J}`);return EV(A,Q)}GPQ.exports={parseSetCookie:hg0,parseUnparsedAttributes:EV}});var UPQ=R((JsY,$PQ)=>{var{parseSetCookie:WPQ}=FPQ(),{stringify:gg0}=Go(),{webidl:zB}=UJ(),{Headers:xg0}=n$(),Qk=zB.brandCheckMultiple([xg0,globalThis.Headers].filter(Boolean));function fg0(A){zB.argumentLengthCheck(arguments,1,"getCookies"),Qk(A);let Q=A.get("cookie"),B={};if(!Q)return B;for(let Y of Q.split(";")){let[J,...C]=Y.split("=");B[J.trim()]=C.join("=")}return B}function bg0(A,Q,B){Qk(A);let Y="deleteCookie";zB.argumentLengthCheck(arguments,2,Y),Q=zB.converters.DOMString(Q,Y,"name"),B=zB.converters.DeleteCookieAttributes(B),ZPQ(A,{name:Q,value:"",expires:new Date(0),...B})}function mg0(A){zB.argumentLengthCheck(arguments,1,"getSetCookies"),Qk(A);let Q=A.getSetCookie();if(!Q)return[];return Q.map((B)=>WPQ(B))}function ug0(A){return A=zB.converters.DOMString(A),WPQ(A)}function ZPQ(A,Q){zB.argumentLengthCheck(arguments,2,"setCookie"),Qk(A),Q=zB.converters.Cookie(Q);let B=gg0(Q);if(B)A.append("set-cookie",B,!0)}zB.converters.DeleteCookieAttributes=zB.dictionaryConverter([{converter:zB.nullableConverter(zB.converters.DOMString),key:"path",defaultValue:()=>null},{converter:zB.nullableConverter(zB.converters.DOMString),key:"domain",defaultValue:()=>null}]);zB.converters.Cookie=zB.dictionaryConverter([{converter:zB.converters.DOMString,key:"name"},{converter:zB.converters.DOMString,key:"value"},{converter:zB.nullableConverter((A)=>{if(typeof A==="number")return zB.converters["unsigned long long"](A);return new Date(A)}),key:"expires",defaultValue:()=>null},{converter:zB.nullableConverter(zB.converters["long long"]),key:"maxAge",defaultValue:()=>null},{converter:zB.nullableConverter(zB.converters.DOMString),key:"domain",defaultValue:()=>null},{converter:zB.nullableConverter(zB.converters.DOMString),key:"path",defaultValue:()=>null},{converter:zB.nullableConverter(zB.converters.boolean),key:"secure",defaultValue:()=>null},{converter:zB.nullableConverter(zB.converters.boolean),key:"httpOnly",defaultValue:()=>null},{converter:zB.converters.USVString,key:"sameSite",allowedValues:["Strict","Lax","None"]},{converter:zB.sequenceConverter(zB.converters.DOMString),key:"unparsed",defaultValue:()=>[]}]);$PQ.exports={getCookies:fg0,deleteCookie:bg0,getSetCookies:mg0,setCookie:ZPQ,parseCookie:ug0}});var Bk=R((CsY,KPQ)=>{var{webidl:WQ}=UJ(),{kEnumerableProperty:o9}=lQ(),{kConstruct:EPQ}=Q0();class u8 extends Event{#A;constructor(A,Q={}){if(A===EPQ){super(arguments[1],arguments[2]);WQ.util.markAsUncloneable(this);return}let B="MessageEvent constructor";WQ.argumentLengthCheck(arguments,1,B),A=WQ.converters.DOMString(A,B,"type"),Q=WQ.converters.MessageEventInit(Q,B,"eventInitDict");super(A,Q);this.#A=Q,WQ.util.markAsUncloneable(this)}get data(){return WQ.brandCheck(this,u8),this.#A.data}get origin(){return WQ.brandCheck(this,u8),this.#A.origin}get lastEventId(){return WQ.brandCheck(this,u8),this.#A.lastEventId}get source(){return WQ.brandCheck(this,u8),this.#A.source}get ports(){if(WQ.brandCheck(this,u8),!Object.isFrozen(this.#A.ports))Object.freeze(this.#A.ports);return this.#A.ports}initMessageEvent(A,Q=!1,B=!1,Y=null,J="",C="",X=null,G=[]){return WQ.brandCheck(this,u8),WQ.argumentLengthCheck(arguments,1,"MessageEvent.initMessageEvent"),new u8(A,{bubbles:Q,cancelable:B,data:Y,origin:J,lastEventId:C,source:X,ports:G})}static createFastMessageEvent(A,Q){let B=new u8(EPQ,A,Q);return B.#A=Q,B.#A.data??=null,B.#A.origin??="",B.#A.lastEventId??="",B.#A.source??=null,B.#A.ports??=[],B}}var{createFastMessageEvent:dg0}=u8;delete u8.createFastMessageEvent;class KV extends Event{#A;constructor(A,Q={}){WQ.argumentLengthCheck(arguments,1,"CloseEvent constructor"),A=WQ.converters.DOMString(A,"CloseEvent constructor","type"),Q=WQ.converters.CloseEventInit(Q);super(A,Q);this.#A=Q,WQ.util.markAsUncloneable(this)}get wasClean(){return WQ.brandCheck(this,KV),this.#A.wasClean}get code(){return WQ.brandCheck(this,KV),this.#A.code}get reason(){return WQ.brandCheck(this,KV),this.#A.reason}}class CW extends Event{#A;constructor(A,Q){WQ.argumentLengthCheck(arguments,1,"ErrorEvent constructor");super(A,Q);WQ.util.markAsUncloneable(this),A=WQ.converters.DOMString(A,"ErrorEvent constructor","type"),Q=WQ.converters.ErrorEventInit(Q??{}),this.#A=Q}get message(){return WQ.brandCheck(this,CW),this.#A.message}get filename(){return WQ.brandCheck(this,CW),this.#A.filename}get lineno(){return WQ.brandCheck(this,CW),this.#A.lineno}get colno(){return WQ.brandCheck(this,CW),this.#A.colno}get error(){return WQ.brandCheck(this,CW),this.#A.error}}Object.defineProperties(u8.prototype,{[Symbol.toStringTag]:{value:"MessageEvent",configurable:!0},data:o9,origin:o9,lastEventId:o9,source:o9,ports:o9,initMessageEvent:o9});Object.defineProperties(KV.prototype,{[Symbol.toStringTag]:{value:"CloseEvent",configurable:!0},reason:o9,code:o9,wasClean:o9});Object.defineProperties(CW.prototype,{[Symbol.toStringTag]:{value:"ErrorEvent",configurable:!0},message:o9,filename:o9,lineno:o9,colno:o9,error:o9});WQ.converters.MessagePort=WQ.interfaceConverter(WQ.is.MessagePort,"MessagePort");WQ.converters["sequence"]=WQ.sequenceConverter(WQ.converters.MessagePort);var Fo=[{key:"bubbles",converter:WQ.converters.boolean,defaultValue:()=>!1},{key:"cancelable",converter:WQ.converters.boolean,defaultValue:()=>!1},{key:"composed",converter:WQ.converters.boolean,defaultValue:()=>!1}];WQ.converters.MessageEventInit=WQ.dictionaryConverter([...Fo,{key:"data",converter:WQ.converters.any,defaultValue:()=>null},{key:"origin",converter:WQ.converters.USVString,defaultValue:()=>""},{key:"lastEventId",converter:WQ.converters.DOMString,defaultValue:()=>""},{key:"source",converter:WQ.nullableConverter(WQ.converters.MessagePort),defaultValue:()=>null},{key:"ports",converter:WQ.converters["sequence"],defaultValue:()=>[]}]);WQ.converters.CloseEventInit=WQ.dictionaryConverter([...Fo,{key:"wasClean",converter:WQ.converters.boolean,defaultValue:()=>!1},{key:"code",converter:WQ.converters["unsigned short"],defaultValue:()=>0},{key:"reason",converter:WQ.converters.USVString,defaultValue:()=>""}]);WQ.converters.ErrorEventInit=WQ.dictionaryConverter([...Fo,{key:"message",converter:WQ.converters.DOMString,defaultValue:()=>""},{key:"filename",converter:WQ.converters.USVString,defaultValue:()=>""},{key:"lineno",converter:WQ.converters["unsigned long"],defaultValue:()=>0},{key:"colno",converter:WQ.converters["unsigned long"],defaultValue:()=>0},{key:"error",converter:WQ.converters.any}]);KPQ.exports={MessageEvent:u8,CloseEvent:KV,ErrorEvent:CW,createFastMessageEvent:dg0}});var XW=R((XsY,VPQ)=>{var cg0={enumerable:!0,writable:!1,configurable:!1},lg0={CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3},pg0={SENT:1,RECEIVED:2},ig0={CONTINUATION:0,TEXT:1,BINARY:2,CLOSE:8,PING:9,PONG:10},ng0={INFO:0,PAYLOADLENGTH_16:2,PAYLOADLENGTH_64:3,READ_DATA:4},sg0=Buffer.allocUnsafe(0),rg0={text:1,typedArray:2,arrayBuffer:3,blob:4};VPQ.exports={uid:"258EAFA5-E914-47DA-95CA-C5AB0DC85B11",sentCloseFrameState:pg0,staticPropertyDescriptors:cg0,states:lg0,opcodes:ig0,maxUnsigned16Bit:65535,parserStates:ng0,emptyBuffer:sg0,sendHints:rg0}});var e$=R((GsY,LPQ)=>{var{states:Yk,opcodes:VV}=XW(),{isUtf8:ag0}=u("node:buffer"),{collectASequenceOfCodePointsFast:og0,removeHTTPWhitespace:IPQ}=g8();function tg0(A){return A===Yk.CONNECTING}function eg0(A){return A===Yk.OPEN}function Ax0(A){return A===Yk.CLOSING}function Qx0(A){return A===Yk.CLOSED}function Bx0(A,Q,B=(J,C)=>new Event(J,C),Y={}){let J=B(A,Y);Q.dispatchEvent(J)}function Yx0(A,Q,B){A.onMessage(Q,B)}function Jx0(A){if(A.byteLength===A.buffer.byteLength)return A.buffer;return new Uint8Array(A).buffer}function Cx0(A){if(A.length===0)return!1;for(let Q=0;Q126||B===34||B===40||B===41||B===44||B===47||B===58||B===59||B===60||B===61||B===62||B===63||B===64||B===91||B===92||B===93||B===123||B===125)return!1}return!0}function Xx0(A){if(A>=1000&&A<1015)return A!==1004&&A!==1005&&A!==1006;return A>=3000&&A<=4999}function HPQ(A){return A===VV.CLOSE||A===VV.PING||A===VV.PONG}function DPQ(A){return A===VV.CONTINUATION}function NPQ(A){return A===VV.TEXT||A===VV.BINARY}function Gx0(A){return NPQ(A)||DPQ(A)||HPQ(A)}function Fx0(A){let Q={position:0},B=new Map;while(Q.position57)return!1}return!0}function Zx0(A,Q){let B;try{B=new URL(A,Q)}catch(Y){throw new DOMException(Y,"SyntaxError")}if(B.protocol==="http:")B.protocol="ws:";else if(B.protocol==="https:")B.protocol="wss:";if(B.protocol!=="ws:"&&B.protocol!=="wss:")throw new DOMException("expected a ws: or wss: url","SyntaxError");if(B.hash.length||B.href.endsWith("#"))throw new DOMException("hash","SyntaxError");return B}function $x0(A,Q){if(A!==null){if(A!==1000&&(A<3000||A>4999))throw new DOMException("invalid code","InvalidAccessError")}if(Q!==null){let B=Buffer.byteLength(Q);if(B>123)throw new DOMException(`Reason must be less than 123 bytes; received ${B}`,"SyntaxError")}}var Ux0=(()=>{if(typeof process.versions.icu==="string"){let A=new TextDecoder("utf-8",{fatal:!0});return A.decode.bind(A)}return function(A){if(ag0(A))return A.toString("utf-8");throw TypeError("Invalid utf-8 received.")}})();LPQ.exports={isConnecting:tg0,isEstablished:eg0,isClosing:Ax0,isClosed:Qx0,fireEvent:Bx0,isValidSubprotocol:Cx0,isValidStatusCode:Xx0,websocketMessageReceived:Yx0,utf8Decode:Ux0,isControlFrame:HPQ,isContinuationFrame:DPQ,isTextBinaryFrame:NPQ,isValidOpcode:Gx0,parseExtensions:Fx0,isValidClientWindowBits:Wx0,toArrayBuffer:Jx0,getURLRecord:Zx0,validateCloseCodeAndReason:$x0}});var HV=R((FsY,zPQ)=>{var{maxUnsigned16Bit:qPQ,opcodes:Ex0}=XW(),Wo,lq=null,IV=8192;try{Wo=u("node:crypto")}catch{Wo={randomFillSync:function(Q,B,Y){for(let J=0;JqPQ)C+=8,J=127;else if(Y>125)C+=2,J=126;let X=Buffer.allocUnsafe(Y+C);X[0]=X[1]=0,X[0]|=128,X[0]=(X[0]&240)+A;/*! ws. MIT License. Einar Otto Stangvik */if(X[C-4]=B[0],X[C-3]=B[1],X[C-2]=B[2],X[C-1]=B[3],X[1]=J,J===126)X.writeUInt16BE(Y,2);else if(J===127)X[2]=X[3]=0,X.writeUIntBE(Y,4,6);X[1]|=128;for(let G=0;GqPQ)J+=8,Y=127;else if(B>125)J+=2,Y=126;let C=Buffer.allocUnsafeSlow(J);if(C[0]=128|Ex0.TEXT,C[1]=Y|128,C[J-4]=Q[0],C[J-3]=Q[1],C[J-2]=Q[2],C[J-1]=Q[3],Y===126)C.writeUInt16BE(B,2);else if(Y===127)C[2]=C[3]=0,C.writeUIntBE(B,4,6);return[C,A]}}zPQ.exports={WebsocketFrameSend:MPQ,generateMask:Zo}});var Ck=R((WsY,OPQ)=>{var{uid:Kx0,states:Jk,sentCloseFrameState:$o,emptyBuffer:RPQ,opcodes:Vx0}=XW(),{parseExtensions:Ix0,isClosed:Hx0,isClosing:Dx0,isEstablished:wPQ,validateCloseCodeAndReason:Nx0}=e$(),{makeRequest:Lx0}=$V(),{fetching:qx0}=mq(),{Headers:Mx0,getHeadersList:zx0}=n$(),{getDecodeSplit:Rx0}=H9(),{WebsocketFrameSend:wx0}=HV(),jx0=u("node:assert"),Uo;try{Uo=u("node:crypto")}catch{}function Ox0(A,Q,B,Y,J){let C=A;C.protocol=A.protocol==="ws:"?"http:":"https:";let X=Lx0({urlList:[C],client:B,serviceWorkers:"none",referrer:"no-referrer",mode:"websocket",credentials:"include",cache:"no-store",redirect:"error"});if(J.headers){let Z=zx0(new Mx0(J.headers));X.headersList=Z}let G=Uo.randomBytes(16).toString("base64");X.headersList.append("sec-websocket-key",G,!0),X.headersList.append("sec-websocket-version","13",!0);for(let Z of Q)X.headersList.append("sec-websocket-protocol",Z,!0);let F="permessage-deflate; client_max_window_bits";return X.headersList.append("sec-websocket-extensions",F,!0),qx0({request:X,useParallelQueue:!0,dispatcher:J.dispatcher,processResponse(Z){if(Z.type==="error")Y.readyState=Jk.CLOSED;if(Z.type==="error"||Z.status!==101){_G(Y,1002,"Received network error or non-101 status code.",Z.error);return}if(Q.length!==0&&!Z.headersList.get("Sec-WebSocket-Protocol")){_G(Y,1002,"Server did not respond with sent protocols.");return}if(Z.headersList.get("Upgrade")?.toLowerCase()!=="websocket"){_G(Y,1002,'Server did not set Upgrade header to "websocket".');return}if(Z.headersList.get("Connection")?.toLowerCase()!=="upgrade"){_G(Y,1002,'Server did not set Connection header to "upgrade".');return}let U=Z.headersList.get("Sec-WebSocket-Accept"),$=Uo.createHash("sha1").update(G+Kx0).digest("base64");if(U!==$){_G(Y,1002,"Incorrect hash received in Sec-WebSocket-Accept header.");return}let E=Z.headersList.get("Sec-WebSocket-Extensions"),K;if(E!==null){if(K=Ix0(E),!K.has("permessage-deflate")){_G(Y,1002,"Sec-WebSocket-Extensions header does not match.");return}}let I=Z.headersList.get("Sec-WebSocket-Protocol");if(I!==null){if(!Rx0("sec-websocket-protocol",X.headersList).includes(I)){_G(Y,1002,"Protocol was not set in the opening handshake.");return}}Z.socket.on("data",Y.onSocketData),Z.socket.on("close",Y.onSocketClose),Z.socket.on("error",Y.onSocketError),Y.wasEverConnected=!0,Y.onConnectionEstablished(Z,K)}})}function jPQ(A,Q,B,Y=!1){if(Q??=null,B??="",Y)Nx0(Q,B);if(Hx0(A.readyState)||Dx0(A.readyState));else if(!wPQ(A.readyState))_G(A),A.readyState=Jk.CLOSING;else if(!A.closeState.has($o.SENT)&&!A.closeState.has($o.RECEIVED)){let J=new wx0;if(B.length!==0&&Q===null)Q=1000;if(jx0(Q===null||Number.isInteger(Q)),Q===null&&B.length===0)J.frameData=RPQ;else if(Q!==null&&B===null)J.frameData=Buffer.allocUnsafe(2),J.frameData.writeUInt16BE(Q,0);else if(Q!==null&&B!==null)J.frameData=Buffer.allocUnsafe(2+Buffer.byteLength(B)),J.frameData.writeUInt16BE(Q,0),J.frameData.write(B,2,"utf-8");else J.frameData=RPQ;A.socket.write(J.createFrame(Vx0.CLOSE)),A.closeState.add($o.SENT),A.readyState=Jk.CLOSING}else A.readyState=Jk.CLOSING}function _G(A,Q,B,Y){if(wPQ(A.readyState))jPQ(A,Q,B,!1);if(A.controller.abort(),!A.socket)A.onSocketClose();else if(A.socket.destroyed===!1)A.socket.destroy()}OPQ.exports={establishWebSocketConnection:Ox0,failWebsocketConnection:_G,closeWebSocketConnection:jPQ}});var SPQ=R((ZsY,TPQ)=>{var{createInflateRaw:Px0,Z_DEFAULT_WINDOWBITS:Tx0}=u("node:zlib"),{isValidClientWindowBits:Sx0}=e$(),kx0=Buffer.from([0,0,255,255]),Xk=Symbol("kBuffer"),Gk=Symbol("kLength");class PPQ{#A;#Q={};constructor(A){this.#Q.serverNoContextTakeover=A.has("server_no_context_takeover"),this.#Q.serverMaxWindowBits=A.get("server_max_window_bits")}decompress(A,Q,B){if(!this.#A){let Y=Tx0;if(this.#Q.serverMaxWindowBits){if(!Sx0(this.#Q.serverMaxWindowBits)){B(Error("Invalid server_max_window_bits"));return}Y=Number.parseInt(this.#Q.serverMaxWindowBits)}this.#A=Px0({windowBits:Y}),this.#A[Xk]=[],this.#A[Gk]=0,this.#A.on("data",(J)=>{this.#A[Xk].push(J),this.#A[Gk]+=J.length}),this.#A.on("error",(J)=>{this.#A=null,B(J)})}if(this.#A.write(A),Q)this.#A.write(kx0);this.#A.flush(()=>{let Y=Buffer.concat(this.#A[Xk],this.#A[Gk]);this.#A[Xk].length=0,this.#A[Gk]=0,B(null,Y)})}}TPQ.exports={PerMessageDeflate:PPQ}});var Ko=R(($sY,gPQ)=>{var{Writable:_x0}=u("node:stream"),vx0=u("node:assert"),{parserStates:t9,opcodes:DV,states:yx0,emptyBuffer:kPQ,sentCloseFrameState:pq}=XW(),{isValidStatusCode:hx0,isValidOpcode:gx0,websocketMessageReceived:_PQ,utf8Decode:xx0,isControlFrame:vPQ,isTextBinaryFrame:Eo,isContinuationFrame:fx0}=e$(),{failWebsocketConnection:d8}=Ck(),{WebsocketFrameSend:yPQ}=HV(),{PerMessageDeflate:bx0}=SPQ();class hPQ extends _x0{#A=[];#Q=0;#B=0;#Y=!1;#J=t9.INFO;#C={};#F=[];#X;#G;constructor(A,Q){super();if(this.#G=A,this.#X=Q==null?new Map:Q,this.#X.has("permessage-deflate"))this.#X.set("permessage-deflate",new bx0(Q))}_write(A,Q,B){this.#A.push(A),this.#B+=A.length,this.#Y=!0,this.run(B)}run(A){while(this.#Y)if(this.#J===t9.INFO){if(this.#B<2)return A();let Q=this.consume(2),B=(Q[0]&128)!==0,Y=Q[0]&15,J=(Q[1]&128)===128,C=!B&&Y!==DV.CONTINUATION,X=Q[1]&127,G=Q[0]&64,F=Q[0]&32,W=Q[0]&16;if(!gx0(Y))return d8(this.#G,1002,"Invalid opcode received"),A();if(J)return d8(this.#G,1002,"Frame cannot be masked"),A();if(G!==0&&!this.#X.has("permessage-deflate")){d8(this.#G,1002,"Expected RSV1 to be clear.");return}if(F!==0||W!==0){d8(this.#G,1002,"RSV1, RSV2, RSV3 must be clear");return}if(C&&!Eo(Y)){d8(this.#G,1002,"Invalid frame type was fragmented.");return}if(Eo(Y)&&this.#F.length>0){d8(this.#G,1002,"Expected continuation frame");return}if(this.#C.fragmented&&C){d8(this.#G,1002,"Fragmented frame exceeded 125 bytes.");return}if((X>125||C)&&vPQ(Y)){d8(this.#G,1002,"Control frame either too large or fragmented");return}if(fx0(Y)&&this.#F.length===0&&!this.#C.compressed){d8(this.#G,1002,"Unexpected continuation frame");return}if(X<=125)this.#C.payloadLength=X,this.#J=t9.READ_DATA;else if(X===126)this.#J=t9.PAYLOADLENGTH_16;else if(X===127)this.#J=t9.PAYLOADLENGTH_64;if(Eo(Y))this.#C.binaryType=Y,this.#C.compressed=G!==0;this.#C.opcode=Y,this.#C.masked=J,this.#C.fin=B,this.#C.fragmented=C}else if(this.#J===t9.PAYLOADLENGTH_16){if(this.#B<2)return A();let Q=this.consume(2);this.#C.payloadLength=Q.readUInt16BE(0),this.#J=t9.READ_DATA}else if(this.#J===t9.PAYLOADLENGTH_64){if(this.#B<8)return A();let Q=this.consume(8),B=Q.readUInt32BE(0);if(B>2147483647){d8(this.#G,1009,"Received payload length > 2^31 bytes.");return}let Y=Q.readUInt32BE(4);this.#C.payloadLength=(B<<8)+Y,this.#J=t9.READ_DATA}else if(this.#J===t9.READ_DATA){if(this.#B{if(B){d8(this.#G,1007,B.message);return}if(this.writeFragments(Y),!this.#C.fin){this.#J=t9.INFO,this.#Y=!0,this.run(A);return}_PQ(this.#G,this.#C.binaryType,this.consumeFragments()),this.#Y=!0,this.#J=t9.INFO,this.run(A)}),this.#Y=!1;break}}}consume(A){if(A>this.#B)throw Error("Called consume() before buffers satiated.");else if(A===0)return kPQ;this.#B-=A;let Q=this.#A[0];if(Q.length>A)return this.#A[0]=Q.subarray(A,Q.length),Q.subarray(0,A);else if(Q.length===A)return this.#A.shift();else{let B=0,Y=Buffer.allocUnsafeSlow(A);while(B!==A){let J=this.#A[0],C=J.length;if(C+B===A){Y.set(this.#A.shift(),B);break}else if(C+B>A){Y.set(J.subarray(0,A-B),B),this.#A[0]=J.subarray(A-B);break}else Y.set(this.#A.shift(),B),B+=C}return Y}}writeFragments(A){this.#Q+=A.length,this.#F.push(A)}consumeFragments(){let A=this.#F;if(A.length===1)return this.#Q=0,A.shift();let Q=0,B=Buffer.allocUnsafeSlow(this.#Q);for(let Y=0;Y=2)Q=A.readUInt16BE(0);if(Q!==void 0&&!hx0(Q))return{code:1002,reason:"Invalid status code",error:!0};let B=A.subarray(2);if(B[0]===239&&B[1]===187&&B[2]===191)B=B.subarray(3);try{B=xx0(B)}catch{return{code:1007,reason:"Invalid UTF-8",error:!0}}return{code:Q,reason:B,error:!1}}parseControlFrame(A){let{opcode:Q,payloadLength:B}=this.#C;if(Q===DV.CLOSE){if(B===1)return d8(this.#G,1002,"Received close frame with a 1-byte body."),!1;if(this.#C.closeInfo=this.parseCloseBody(A),this.#C.closeInfo.error){let{code:Y,reason:J}=this.#C.closeInfo;return d8(this.#G,Y,J),!1}if(!this.#G.closeState.has(pq.SENT)&&!this.#G.closeState.has(pq.RECEIVED)){let Y=kPQ;if(this.#C.closeInfo.code)Y=Buffer.allocUnsafe(2),Y.writeUInt16BE(this.#C.closeInfo.code,0);let J=new yPQ(Y);this.#G.socket.write(J.createFrame(DV.CLOSE)),this.#G.closeState.add(pq.SENT)}return this.#G.readyState=yx0.CLOSING,this.#G.closeState.add(pq.RECEIVED),!1}else if(Q===DV.PING){if(!this.#G.closeState.has(pq.RECEIVED)){let Y=new yPQ(A);this.#G.socket.write(Y.createFrame(DV.PONG)),this.#G.onPing(A)}}else if(Q===DV.PONG)this.#G.onPong(A);return!0}get closingInfo(){return this.#C.closeInfo}}gPQ.exports={ByteParser:hPQ}});var uPQ=R((UsY,mPQ)=>{var{WebsocketFrameSend:fPQ}=HV(),{opcodes:xPQ,sendHints:A4}=XW(),mx0=vr();class bPQ{#A=new mx0;#Q=!1;#B;constructor(A){this.#B=A}add(A,Q,B){if(B!==A4.blob){if(!this.#Q)if(B===A4.text){let{0:J,1:C}=fPQ.createFastTextFrame(A);this.#B.cork(),this.#B.write(J),this.#B.write(C,Q),this.#B.uncork()}else this.#B.write(Vo(A,B),Q);else{let J={promise:null,callback:Q,frame:Vo(A,B)};this.#A.push(J)}return}let Y={promise:A.arrayBuffer().then((J)=>{Y.promise=null,Y.frame=Vo(J,B)}),callback:Q,frame:null};if(this.#A.push(Y),!this.#Q)this.#Y()}async#Y(){this.#Q=!0;let A=this.#A;while(!A.isEmpty()){let Q=A.shift();if(Q.promise!==null)await Q.promise;this.#B.write(Q.frame,Q.callback),Q.callback=Q.frame=null}this.#Q=!1}}function Vo(A,Q){return new fPQ(ux0(A,Q)).createFrame(Q===A4.text?xPQ.TEXT:xPQ.BINARY)}function ux0(A,Q){switch(Q){case A4.text:case A4.typedArray:return new Uint8Array(A.buffer,A.byteOffset,A.byteLength);case A4.arrayBuffer:case A4.blob:return new Uint8Array(A)}}mPQ.exports={SendQueue:bPQ}});var nPQ=R((EsY,iPQ)=>{var{isArrayBuffer:dx0}=u("node:util/types"),{webidl:$Q}=UJ(),{URLSerializer:cx0}=g8(),{environmentSettingsObject:dPQ}=H9(),{staticPropertyDescriptors:GW,states:vG,sentCloseFrameState:Io,sendHints:Fk,opcodes:Ho}=XW(),{isConnecting:lx0,isEstablished:cPQ,isClosing:lPQ,isClosed:px0,isValidSubprotocol:ix0,fireEvent:Wk,utf8Decode:nx0,toArrayBuffer:sx0,getURLRecord:rx0}=e$(),{establishWebSocketConnection:ax0,closeWebSocketConnection:ox0,failWebsocketConnection:pPQ}=Ck(),{ByteParser:tx0}=Ko(),{kEnumerableProperty:JC}=lQ(),{getGlobalDispatcher:ex0}=_S(),{ErrorEvent:Af0,CloseEvent:Qf0,createFastMessageEvent:Bf0}=Bk(),{SendQueue:Yf0}=uPQ(),{WebsocketFrameSend:Jf0}=HV(),{channels:P6}=O$();class _B extends EventTarget{#A={open:null,error:null,close:null,message:null};#Q=0;#B="";#Y="";#J;#C={onConnectionEstablished:(A,Q)=>this.#Z(A,Q),onMessage:(A,Q)=>this.#U(A,Q),onParserError:(A)=>pPQ(this.#C,null,A.message),onParserDrain:()=>this.#W(),onSocketData:(A)=>{if(!this.#G.write(A))this.#C.socket.pause()},onSocketError:(A)=>{if(this.#C.readyState=vG.CLOSING,P6.socketError.hasSubscribers)P6.socketError.publish(A);this.#C.socket.destroy()},onSocketClose:()=>this.#E(),onPing:(A)=>{if(P6.ping.hasSubscribers)P6.ping.publish({payload:A,websocket:this})},onPong:(A)=>{if(P6.pong.hasSubscribers)P6.pong.publish({payload:A,websocket:this})},readyState:vG.CONNECTING,socket:null,closeState:new Set,controller:null,wasEverConnected:!1};#F;#X;#G;constructor(A,Q=[]){super();$Q.util.markAsUncloneable(this);let B="WebSocket constructor";$Q.argumentLengthCheck(arguments,1,B);let Y=$Q.converters["DOMString or sequence or WebSocketInit"](Q,B,"options");A=$Q.converters.USVString(A),Q=Y.protocols;let J=dPQ.settingsObject.baseUrl,C=rx0(A,J);if(typeof Q==="string")Q=[Q];if(Q.length!==new Set(Q.map((G)=>G.toLowerCase())).size)throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");if(Q.length>0&&!Q.every((G)=>ix0(G)))throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");this.#F=new URL(C.href);let X=dPQ.settingsObject;this.#C.controller=ax0(C,Q,X,this.#C,Y),this.#C.readyState=_B.CONNECTING,this.#X="blob"}close(A=void 0,Q=void 0){$Q.brandCheck(this,_B);let B="WebSocket.close";if(A!==void 0)A=$Q.converters["unsigned short"](A,B,"code",$Q.attributes.Clamp);if(Q!==void 0)Q=$Q.converters.USVString(Q);A??=null,Q??="",ox0(this.#C,A,Q,!0)}send(A){$Q.brandCheck(this,_B);let Q="WebSocket.send";if($Q.argumentLengthCheck(arguments,1,Q),A=$Q.converters.WebSocketSendData(A,Q,"data"),lx0(this.#C.readyState))throw new DOMException("Sent before connected.","InvalidStateError");if(!cPQ(this.#C.readyState)||lPQ(this.#C.readyState))return;if(typeof A==="string"){let B=Buffer.from(A);this.#Q+=B.byteLength,this.#J.add(B,()=>{this.#Q-=B.byteLength},Fk.text)}else if(dx0(A))this.#Q+=A.byteLength,this.#J.add(A,()=>{this.#Q-=A.byteLength},Fk.arrayBuffer);else if(ArrayBuffer.isView(A))this.#Q+=A.byteLength,this.#J.add(A,()=>{this.#Q-=A.byteLength},Fk.typedArray);else if($Q.is.Blob(A))this.#Q+=A.size,this.#J.add(A,()=>{this.#Q-=A.size},Fk.blob)}get readyState(){return $Q.brandCheck(this,_B),this.#C.readyState}get bufferedAmount(){return $Q.brandCheck(this,_B),this.#Q}get url(){return $Q.brandCheck(this,_B),cx0(this.#F)}get extensions(){return $Q.brandCheck(this,_B),this.#Y}get protocol(){return $Q.brandCheck(this,_B),this.#B}get onopen(){return $Q.brandCheck(this,_B),this.#A.open}set onopen(A){if($Q.brandCheck(this,_B),this.#A.open)this.removeEventListener("open",this.#A.open);let Q=$Q.converters.EventHandlerNonNull(A);if(Q!==null)this.addEventListener("open",Q),this.#A.open=A;else this.#A.open=null}get onerror(){return $Q.brandCheck(this,_B),this.#A.error}set onerror(A){if($Q.brandCheck(this,_B),this.#A.error)this.removeEventListener("error",this.#A.error);let Q=$Q.converters.EventHandlerNonNull(A);if(Q!==null)this.addEventListener("error",Q),this.#A.error=A;else this.#A.error=null}get onclose(){return $Q.brandCheck(this,_B),this.#A.close}set onclose(A){if($Q.brandCheck(this,_B),this.#A.close)this.removeEventListener("close",this.#A.close);let Q=$Q.converters.EventHandlerNonNull(A);if(Q!==null)this.addEventListener("close",Q),this.#A.close=A;else this.#A.close=null}get onmessage(){return $Q.brandCheck(this,_B),this.#A.message}set onmessage(A){if($Q.brandCheck(this,_B),this.#A.message)this.removeEventListener("message",this.#A.message);let Q=$Q.converters.EventHandlerNonNull(A);if(Q!==null)this.addEventListener("message",Q),this.#A.message=A;else this.#A.message=null}get binaryType(){return $Q.brandCheck(this,_B),this.#X}set binaryType(A){if($Q.brandCheck(this,_B),A!=="blob"&&A!=="arraybuffer")this.#X="blob";else this.#X=A}#Z(A,Q){this.#C.socket=A.socket;let B=new tx0(this.#C,Q);B.on("drain",()=>this.#C.onParserDrain()),B.on("error",(C)=>this.#C.onParserError(C)),this.#G=B,this.#J=new Yf0(A.socket),this.#C.readyState=vG.OPEN;let Y=A.headersList.get("sec-websocket-extensions");if(Y!==null)this.#Y=Y;let J=A.headersList.get("sec-websocket-protocol");if(J!==null)this.#B=J;if(Wk("open",this),P6.open.hasSubscribers){let C=A.headersList.entries;P6.open.publish({address:A.socket.address(),protocol:this.#B,extensions:this.#Y,websocket:this,handshakeResponse:{status:A.status,statusText:A.statusText,headers:C}})}}#U(A,Q){if(this.#C.readyState!==vG.OPEN)return;let B;if(A===Ho.TEXT)try{B=nx0(Q)}catch{pPQ(this.#C,1007,"Received invalid UTF-8 in text frame.");return}else if(A===Ho.BINARY)if(this.#X==="blob")B=new Blob([Q]);else B=sx0(Q);Wk("message",this,Bf0,{origin:this.#F.origin,data:B})}#W(){this.#C.socket.resume()}#E(){let A=this.#C.closeState.has(Io.SENT)&&this.#C.closeState.has(Io.RECEIVED),Q=1005,B="",Y=this.#G?.closingInfo;if(Y&&!Y.error)Q=Y.code??1005,B=Y.reason;if(this.#C.readyState=vG.CLOSED,!this.#C.closeState.has(Io.RECEIVED))Q=1006,Wk("error",this,(J,C)=>new Af0(J,C),{error:TypeError(B)});if(Wk("close",this,(J,C)=>new Qf0(J,C),{wasClean:A,code:Q,reason:B}),P6.close.hasSubscribers)P6.close.publish({websocket:this,code:Q,reason:B})}static ping(A,Q){if(Buffer.isBuffer(Q)){if(Q.length>125)throw TypeError("A PING frame cannot have a body larger than 125 bytes.")}else if(Q!==void 0)throw TypeError("Expected buffer payload");let B=A.#C.readyState;if(cPQ(B)&&!lPQ(B)&&!px0(B)){let Y=new Jf0(Q);A.#C.socket.write(Y.createFrame(Ho.PING))}}}var{ping:Cf0}=_B;Reflect.deleteProperty(_B,"ping");_B.CONNECTING=_B.prototype.CONNECTING=vG.CONNECTING;_B.OPEN=_B.prototype.OPEN=vG.OPEN;_B.CLOSING=_B.prototype.CLOSING=vG.CLOSING;_B.CLOSED=_B.prototype.CLOSED=vG.CLOSED;Object.defineProperties(_B.prototype,{CONNECTING:GW,OPEN:GW,CLOSING:GW,CLOSED:GW,url:JC,readyState:JC,bufferedAmount:JC,onopen:JC,onerror:JC,onclose:JC,close:JC,onmessage:JC,binaryType:JC,send:JC,extensions:JC,protocol:JC,[Symbol.toStringTag]:{value:"WebSocket",writable:!1,enumerable:!1,configurable:!0}});Object.defineProperties(_B,{CONNECTING:GW,OPEN:GW,CLOSING:GW,CLOSED:GW});$Q.converters["sequence"]=$Q.sequenceConverter($Q.converters.DOMString);$Q.converters["DOMString or sequence"]=function(A,Q,B){if($Q.util.Type(A)===$Q.util.Types.OBJECT&&Symbol.iterator in A)return $Q.converters["sequence"](A);return $Q.converters.DOMString(A,Q,B)};$Q.converters.WebSocketInit=$Q.dictionaryConverter([{key:"protocols",converter:$Q.converters["DOMString or sequence"],defaultValue:()=>[]},{key:"dispatcher",converter:$Q.converters.any,defaultValue:()=>ex0()},{key:"headers",converter:$Q.nullableConverter($Q.converters.HeadersInit)}]);$Q.converters["DOMString or sequence or WebSocketInit"]=function(A){if($Q.util.Type(A)===$Q.util.Types.OBJECT&&!(Symbol.iterator in A))return $Q.converters.WebSocketInit(A);return{protocols:$Q.converters["DOMString or sequence"](A)}};$Q.converters.WebSocketSendData=function(A){if($Q.util.Type(A)===$Q.util.Types.OBJECT){if($Q.is.Blob(A))return A;if($Q.is.BufferSource(A))return A}return $Q.converters.USVString(A)};iPQ.exports={WebSocket:_B,ping:Cf0}});var Do=R((KsY,aPQ)=>{var{webidl:Zk}=UJ(),{validateCloseCodeAndReason:Xf0}=e$(),{kConstruct:sPQ}=Q0(),{kEnumerableProperty:rPQ}=lQ();function Gf0(){class A extends DOMException{get reason(){return""}}if(new A().reason!==void 0)return DOMException;return new Proxy(DOMException,{construct(Q,B,Y){let J=Reflect.construct(Q,B,Q);return Object.setPrototypeOf(J,Y.prototype),J}})}class Q4 extends Gf0(){#A;#Q;constructor(A="",Q=void 0){A=Zk.converters.DOMString(A,"WebSocketError","message");super(A,"WebSocketError");if(Q===sPQ)return;else if(Q!==null)Q=Zk.converters.WebSocketCloseInfo(Q);let B=Q.closeCode??null,Y=Q.reason??"";if(Xf0(B,Y),Y.length!==0&&B===null)B=1000;this.#A=B,this.#Q=Y}get closeCode(){return this.#A}get reason(){return this.#Q}static createUnvalidatedWebSocketError(A,Q,B){let Y=new Q4(A,sPQ);return Y.#A=Q,Y.#Q=B,Y}}var{createUnvalidatedWebSocketError:Ff0}=Q4;delete Q4.createUnvalidatedWebSocketError;Object.defineProperties(Q4.prototype,{closeCode:rPQ,reason:rPQ,[Symbol.toStringTag]:{value:"WebSocketError",writable:!1,enumerable:!1,configurable:!0}});Zk.is.WebSocketError=Zk.util.MakeTypeAssertion(Q4);aPQ.exports={WebSocketError:Q4,createUnvalidatedWebSocketError:Ff0}});var QTQ=R((VsY,ATQ)=>{var{createDeferredPromise:No}=Jq(),{environmentSettingsObject:oPQ}=H9(),{states:NV,opcodes:$k,sentCloseFrameState:LV}=XW(),{webidl:a0}=UJ(),{getURLRecord:Wf0,isValidSubprotocol:Zf0,isEstablished:$f0,utf8Decode:Uf0}=e$(),{establishWebSocketConnection:Ef0,failWebsocketConnection:Lo,closeWebSocketConnection:qo}=Ck(),{channels:tPQ}=O$(),{WebsocketFrameSend:Kf0}=HV(),{ByteParser:Vf0}=Ko(),{WebSocketError:If0,createUnvalidatedWebSocketError:Hf0}=Do(),{utf8DecodeBytes:Df0}=H9(),{kEnumerableProperty:Uk}=lQ(),ePQ=!1;class Mo{#A;#Q;#B;#Y;#J;#C;#F=!1;#X={onConnectionEstablished:(A,Q)=>this.#U(A,Q),onMessage:(A,Q)=>this.#W(A,Q),onParserError:(A)=>Lo(this.#X,null,A.message),onParserDrain:()=>this.#X.socket.resume(),onSocketData:(A)=>{if(!this.#G.write(A))this.#X.socket.pause()},onSocketError:(A)=>{if(this.#X.readyState=NV.CLOSING,tPQ.socketError.hasSubscribers)tPQ.socketError.publish(A);this.#X.socket.destroy()},onSocketClose:()=>this.#E(),onPing:()=>{},onPong:()=>{},readyState:NV.CONNECTING,socket:null,closeState:new Set,controller:null,wasEverConnected:!1};#G;constructor(A,Q=void 0){if(!ePQ)process.emitWarning("WebSocketStream is experimental! Expect it to change at any time.",{code:"UNDICI-WSS"}),ePQ=!0;if(a0.argumentLengthCheck(arguments,1,"WebSocket"),A=a0.converters.USVString(A),Q!==null)Q=a0.converters.WebSocketStreamOptions(Q);let B=oPQ.settingsObject.baseUrl,Y=Wf0(A,B),J=Q.protocols;if(J.length!==new Set(J.map((X)=>X.toLowerCase())).size)throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");if(J.length>0&&!J.every((X)=>Zf0(X)))throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");if(this.#A=Y.toString(),this.#Q=No(),this.#B=No(),Q.signal!=null){let X=Q.signal;if(X.aborted){this.#Q.reject(X.reason),this.#B.reject(X.reason);return}X.addEventListener("abort",()=>{if(!$f0(this.#X.readyState))Lo(this.#X),this.#X.readyState=NV.CLOSING,this.#Q.reject(X.reason),this.#B.reject(X.reason),this.#F=!0},{once:!0})}let C=oPQ.settingsObject;this.#X.controller=Ef0(Y,J,C,this.#X,Q)}get url(){return this.#A.toString()}get opened(){return this.#Q.promise}get closed(){return this.#B.promise}close(A=void 0){if(A!==null)A=a0.converters.WebSocketCloseInfo(A);let Q=A.closeCode??null,B=A.reason;qo(this.#X,Q,B,!0)}#Z(A){A=a0.converters.WebSocketStreamWrite(A);let Q=No(),B=null,Y=null;if(a0.is.BufferSource(A))B=new Uint8Array(ArrayBuffer.isView(A)?new Uint8Array(A.buffer,A.byteOffset,A.byteLength):A.slice()),Y=$k.BINARY;else{let J;try{J=a0.converters.DOMString(A)}catch(C){return Q.reject(C),Q.promise}B=new TextEncoder().encode(J),Y=$k.TEXT}if(!this.#X.closeState.has(LV.SENT)&&!this.#X.closeState.has(LV.RECEIVED)){let J=new Kf0(B);this.#X.socket.write(J.createFrame(Y),()=>{Q.resolve(void 0)})}return Q.promise}#U(A,Q){this.#X.socket=A.socket;let B=new Vf0(this.#X,Q);B.on("drain",()=>this.#X.onParserDrain()),B.on("error",(G)=>this.#X.onParserError(G)),this.#G=B,this.#X.readyState=NV.OPEN;let Y=Q??"",J=A.headersList.get("sec-websocket-protocol")??"",C=new ReadableStream({start:(G)=>{this.#J=G},pull(G){let F;while(G.desiredSize>0&&(F=A.socket.read())!==null)G.enqueue(F)},cancel:(G)=>this.#I(G)}),X=new WritableStream({write:(G)=>this.#Z(G),close:()=>qo(this.#X,null,null),abort:(G)=>this.#V(G)});this.#Y=C,this.#C=X,this.#Q.resolve({extensions:Y,protocol:J,readable:C,writable:X})}#W(A,Q){if(this.#X.readyState!==NV.OPEN)return;let B;if(A===$k.TEXT)try{B=Uf0(Q)}catch{Lo(this.#X,"Received invalid UTF-8 in text frame.");return}else if(A===$k.BINARY)B=new Uint8Array(Q.buffer,Q.byteOffset,Q.byteLength);this.#J.enqueue(B)}#E(){let A=this.#X.closeState.has(LV.SENT)&&this.#X.closeState.has(LV.RECEIVED);if(this.#X.readyState=NV.CLOSED,this.#F)return;if(!this.#X.wasEverConnected)this.#Q.reject(new If0("Socket never opened"));let Q=this.#G.closingInfo,B=Q?.code??1005;if(!this.#X.closeState.has(LV.SENT)&&!this.#X.closeState.has(LV.RECEIVED))B=1006;let Y=Q?.reason==null?"":Df0(Buffer.from(Q.reason));if(A){if(this.#J.close(),!this.#C.locked)this.#C.abort(new DOMException("A closed WebSocketStream cannot be written to","InvalidStateError"));this.#B.resolve({closeCode:B,reason:Y})}else{let J=Hf0("unclean close",B,Y);this.#J.error(J),this.#C.abort(J),this.#B.reject(J)}}#V(A){let Q=null,B="";if(a0.is.WebSocketError(A))Q=A.closeCode,B=A.reason;qo(this.#X,Q,B)}#I(A){this.#V(A)}}Object.defineProperties(Mo.prototype,{url:Uk,opened:Uk,closed:Uk,close:Uk,[Symbol.toStringTag]:{value:"WebSocketStream",writable:!1,enumerable:!1,configurable:!0}});a0.converters.WebSocketStreamOptions=a0.dictionaryConverter([{key:"protocols",converter:a0.sequenceConverter(a0.converters.USVString),defaultValue:()=>[]},{key:"signal",converter:a0.nullableConverter(a0.converters.AbortSignal),defaultValue:()=>null}]);a0.converters.WebSocketCloseInfo=a0.dictionaryConverter([{key:"closeCode",converter:(A)=>a0.converters["unsigned short"](A,a0.attributes.EnforceRange)},{key:"reason",converter:a0.converters.USVString,defaultValue:()=>""}]);a0.converters.WebSocketStreamWrite=function(A){if(typeof A==="string")return a0.converters.USVString(A);return a0.converters.BufferSource(A)};ATQ.exports={WebSocketStream:Mo}});var YTQ=R((IsY,BTQ)=>{function Nf0(A){return A.indexOf("\x00")===-1}function Lf0(A){if(A.length===0)return!1;for(let Q=0;Q57)return!1;return!0}BTQ.exports={isValidLastEventId:Nf0,isASCIINumber:Lf0}});var FTQ=R((HsY,GTQ)=>{var{Transform:qf0}=u("node:stream"),{isASCIINumber:JTQ,isValidLastEventId:CTQ}=YTQ(),yG=[239,187,191];class XTQ extends qf0{state;checkBOM=!0;crlfCheck=!1;eventEndCheck=!1;buffer=null;pos=0;event={data:void 0,event:void 0,id:void 0,retry:void 0};constructor(A={}){A.readableObjectMode=!0;super(A);if(this.state=A.eventSourceSettings||{},A.push)this.push=A.push}_transform(A,Q,B){if(A.length===0){B();return}if(this.buffer)this.buffer=Buffer.concat([this.buffer,A]);else this.buffer=A;if(this.checkBOM)switch(this.buffer.length){case 1:if(this.buffer[0]===yG[0]){B();return}this.checkBOM=!1,B();return;case 2:if(this.buffer[0]===yG[0]&&this.buffer[1]===yG[1]){B();return}this.checkBOM=!1;break;case 3:if(this.buffer[0]===yG[0]&&this.buffer[1]===yG[1]&&this.buffer[2]===yG[2]){this.buffer=Buffer.alloc(0),this.checkBOM=!1,B();return}this.checkBOM=!1;break;default:if(this.buffer[0]===yG[0]&&this.buffer[1]===yG[1]&&this.buffer[2]===yG[2])this.buffer=this.buffer.subarray(3);this.checkBOM=!1;break}while(this.pos0)Q[Y]=J;break}}processEvent(A){if(A.retry&&JTQ(A.retry))this.state.reconnectionTime=parseInt(A.retry,10);if(A.id!==void 0&&CTQ(A.id))this.state.lastEventId=A.id;if(A.data!==void 0)this.push({type:A.event||"message",options:{data:A.data,lastEventId:this.state.lastEventId,origin:this.state.origin}})}clearEvent(){this.event={data:void 0,event:void 0,id:void 0,retry:void 0}}}GTQ.exports={EventSourceStream:XTQ}});var ITQ=R((DsY,VTQ)=>{var{pipeline:Mf0}=u("node:stream"),{fetching:zf0}=mq(),{makeRequest:Rf0}=$V(),{webidl:N9}=UJ(),{EventSourceStream:wf0}=FTQ(),{parseMIMEType:jf0}=g8(),{createFastMessageEvent:Of0}=Bk(),{isNetworkError:WTQ}=fq(),{kEnumerableProperty:B4}=lQ(),{environmentSettingsObject:ZTQ}=H9(),$TQ=!1,UTQ=3000,iq=0,ETQ=1,nq=2,Pf0="anonymous",Tf0="use-credentials";class qV extends EventTarget{#A={open:null,error:null,message:null};#Q;#B=!1;#Y=iq;#J=null;#C=null;#F;#X;constructor(A,Q={}){super();N9.util.markAsUncloneable(this);let B="EventSource constructor";if(N9.argumentLengthCheck(arguments,1,B),!$TQ)$TQ=!0,process.emitWarning("EventSource is experimental, expect them to change at any time.",{code:"UNDICI-ES"});A=N9.converters.USVString(A),Q=N9.converters.EventSourceInitDict(Q,B,"eventSourceInitDict"),this.#F=Q.node.dispatcher||Q.dispatcher,this.#X={lastEventId:"",reconnectionTime:Q.node.reconnectionTime};let Y=ZTQ,J;try{J=new URL(A,Y.settingsObject.baseUrl),this.#X.origin=J.origin}catch(G){throw new DOMException(G,"SyntaxError")}this.#Q=J.href;let C=Pf0;if(Q.withCredentials===!0)C=Tf0,this.#B=!0;let X={redirect:"follow",keepalive:!0,mode:"cors",credentials:C==="anonymous"?"same-origin":"omit",referrer:"no-referrer"};X.client=ZTQ.settingsObject,X.headersList=[["accept",{name:"accept",value:"text/event-stream"}]],X.cache="no-store",X.initiator="other",X.urlList=[new URL(this.#Q)],this.#J=Rf0(X),this.#G()}get readyState(){return this.#Y}get url(){return this.#Q}get withCredentials(){return this.#B}#G(){if(this.#Y===nq)return;this.#Y=iq;let A={request:this.#J,dispatcher:this.#F},Q=(B)=>{if(!WTQ(B))return this.#Z()};A.processResponseEndOfBody=Q,A.processResponse=(B)=>{if(WTQ(B))if(B.aborted){this.close(),this.dispatchEvent(new Event("error"));return}else{this.#Z();return}let Y=B.headersList.get("content-type",!0),J=Y!==null?jf0(Y):"failure",C=J!=="failure"&&J.essence==="text/event-stream";if(B.status!==200||C===!1){this.close(),this.dispatchEvent(new Event("error"));return}this.#Y=ETQ,this.dispatchEvent(new Event("open")),this.#X.origin=B.urlList[B.urlList.length-1].origin;let X=new wf0({eventSourceSettings:this.#X,push:(G)=>{this.dispatchEvent(Of0(G.type,G.options))}});Mf0(B.body.stream,X,(G)=>{if(G?.aborted===!1)this.close(),this.dispatchEvent(new Event("error"))})},this.#C=zf0(A)}#Z(){if(this.#Y===nq)return;this.#Y=iq,this.dispatchEvent(new Event("error")),setTimeout(()=>{if(this.#Y!==iq)return;if(this.#X.lastEventId.length)this.#J.headersList.set("last-event-id",this.#X.lastEventId,!0);this.#G()},this.#X.reconnectionTime)?.unref()}close(){if(N9.brandCheck(this,qV),this.#Y===nq)return;this.#Y=nq,this.#C.abort(),this.#J=null}get onopen(){return this.#A.open}set onopen(A){if(this.#A.open)this.removeEventListener("open",this.#A.open);let Q=N9.converters.EventHandlerNonNull(A);if(Q!==null)this.addEventListener("open",Q),this.#A.open=A;else this.#A.open=null}get onmessage(){return this.#A.message}set onmessage(A){if(this.#A.message)this.removeEventListener("message",this.#A.message);let Q=N9.converters.EventHandlerNonNull(A);if(Q!==null)this.addEventListener("message",Q),this.#A.message=A;else this.#A.message=null}get onerror(){return this.#A.error}set onerror(A){if(this.#A.error)this.removeEventListener("error",this.#A.error);let Q=N9.converters.EventHandlerNonNull(A);if(Q!==null)this.addEventListener("error",Q),this.#A.error=A;else this.#A.error=null}}var KTQ={CONNECTING:{__proto__:null,configurable:!1,enumerable:!0,value:iq,writable:!1},OPEN:{__proto__:null,configurable:!1,enumerable:!0,value:ETQ,writable:!1},CLOSED:{__proto__:null,configurable:!1,enumerable:!0,value:nq,writable:!1}};Object.defineProperties(qV,KTQ);Object.defineProperties(qV.prototype,KTQ);Object.defineProperties(qV.prototype,{close:B4,onerror:B4,onmessage:B4,onopen:B4,readyState:B4,url:B4,withCredentials:B4});N9.converters.EventSourceInitDict=N9.dictionaryConverter([{key:"withCredentials",converter:N9.converters.boolean,defaultValue:()=>!1},{key:"dispatcher",converter:N9.converters.any},{key:"node",converter:N9.dictionaryConverter([{key:"reconnectionTime",converter:N9.converters["unsigned long"],defaultValue:()=>UTQ},{key:"dispatcher",converter:N9.converters.any}]),defaultValue:()=>({})}]);VTQ.exports={EventSource:qV,defaultReconnectionTime:UTQ}});var E1=R((wTQ)=>{Object.defineProperty(wTQ,"__esModule",{value:!0});wTQ.setMatrixArrayType=Eb0;wTQ.toRadian=Vb0;wTQ.equals=Ib0;wTQ.RANDOM=wTQ.ARRAY_TYPE=wTQ.EPSILON=void 0;var zTQ=0.000001;wTQ.EPSILON=zTQ;var RTQ=typeof Float32Array<"u"?Float32Array:Array;wTQ.ARRAY_TYPE=RTQ;var Ub0=Math.random;wTQ.RANDOM=Ub0;function Eb0(A){wTQ.ARRAY_TYPE=RTQ=A}var Kb0=Math.PI/180;function Vb0(A){return A*Kb0}function Ib0(A,Q){return Math.abs(A-Q)<=zTQ*Math.max(1,Math.abs(A),Math.abs(Q))}if(!Math.hypot)Math.hypot=function(){var A=0,Q=arguments.length;while(Q--)A+=arguments[Q]*arguments[Q];return Math.sqrt(A)}});var vTQ=R((kTQ)=>{function Nk(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")Nk=function(B){return typeof B};else Nk=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return Nk(A)}Object.defineProperty(kTQ,"__esModule",{value:!0});kTQ.create=Mb0;kTQ.clone=zb0;kTQ.copy=Rb0;kTQ.identity=wb0;kTQ.fromValues=jb0;kTQ.set=Ob0;kTQ.transpose=Pb0;kTQ.invert=Tb0;kTQ.adjoint=Sb0;kTQ.determinant=kb0;kTQ.multiply=TTQ;kTQ.rotate=_b0;kTQ.scale=vb0;kTQ.fromRotation=yb0;kTQ.fromScaling=hb0;kTQ.str=gb0;kTQ.frob=xb0;kTQ.LDU=fb0;kTQ.add=bb0;kTQ.subtract=STQ;kTQ.exactEquals=mb0;kTQ.equals=ub0;kTQ.multiplyScalar=db0;kTQ.multiplyScalarAndAdd=cb0;kTQ.sub=kTQ.mul=void 0;var ZW=qb0(E1());function PTQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(PTQ=function(J){return J?B:Q})(A)}function qb0(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||Nk(A)!=="object"&&typeof A!=="function")return{default:A};var B=PTQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function Mb0(){var A=new ZW.ARRAY_TYPE(4);if(ZW.ARRAY_TYPE!=Float32Array)A[1]=0,A[2]=0;return A[0]=1,A[3]=1,A}function zb0(A){var Q=new ZW.ARRAY_TYPE(4);return Q[0]=A[0],Q[1]=A[1],Q[2]=A[2],Q[3]=A[3],Q}function Rb0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A[3]=Q[3],A}function wb0(A){return A[0]=1,A[1]=0,A[2]=0,A[3]=1,A}function jb0(A,Q,B,Y){var J=new ZW.ARRAY_TYPE(4);return J[0]=A,J[1]=Q,J[2]=B,J[3]=Y,J}function Ob0(A,Q,B,Y,J){return A[0]=Q,A[1]=B,A[2]=Y,A[3]=J,A}function Pb0(A,Q){if(A===Q){var B=Q[1];A[1]=Q[2],A[2]=B}else A[0]=Q[0],A[1]=Q[2],A[2]=Q[1],A[3]=Q[3];return A}function Tb0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=B*C-J*Y;if(!X)return null;return X=1/X,A[0]=C*X,A[1]=-Y*X,A[2]=-J*X,A[3]=B*X,A}function Sb0(A,Q){var B=Q[0];return A[0]=Q[3],A[1]=-Q[1],A[2]=-Q[2],A[3]=B,A}function kb0(A){return A[0]*A[3]-A[2]*A[1]}function TTQ(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=B[0],F=B[1],W=B[2],Z=B[3];return A[0]=Y*G+C*F,A[1]=J*G+X*F,A[2]=Y*W+C*Z,A[3]=J*W+X*Z,A}function _b0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Math.sin(B),F=Math.cos(B);return A[0]=Y*F+C*G,A[1]=J*F+X*G,A[2]=Y*-G+C*F,A[3]=J*-G+X*F,A}function vb0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=B[0],F=B[1];return A[0]=Y*G,A[1]=J*G,A[2]=C*F,A[3]=X*F,A}function yb0(A,Q){var B=Math.sin(Q),Y=Math.cos(Q);return A[0]=Y,A[1]=B,A[2]=-B,A[3]=Y,A}function hb0(A,Q){return A[0]=Q[0],A[1]=0,A[2]=0,A[3]=Q[1],A}function gb0(A){return"mat2("+A[0]+", "+A[1]+", "+A[2]+", "+A[3]+")"}function xb0(A){return Math.hypot(A[0],A[1],A[2],A[3])}function fb0(A,Q,B,Y){return A[2]=Y[2]/Y[0],B[0]=Y[0],B[1]=Y[1],B[3]=Y[3]-A[2]*B[1],[A,Q,B]}function bb0(A,Q,B){return A[0]=Q[0]+B[0],A[1]=Q[1]+B[1],A[2]=Q[2]+B[2],A[3]=Q[3]+B[3],A}function STQ(A,Q,B){return A[0]=Q[0]-B[0],A[1]=Q[1]-B[1],A[2]=Q[2]-B[2],A[3]=Q[3]-B[3],A}function mb0(A,Q){return A[0]===Q[0]&&A[1]===Q[1]&&A[2]===Q[2]&&A[3]===Q[3]}function ub0(A,Q){var B=A[0],Y=A[1],J=A[2],C=A[3],X=Q[0],G=Q[1],F=Q[2],W=Q[3];return Math.abs(B-X)<=ZW.EPSILON*Math.max(1,Math.abs(B),Math.abs(X))&&Math.abs(Y-G)<=ZW.EPSILON*Math.max(1,Math.abs(Y),Math.abs(G))&&Math.abs(J-F)<=ZW.EPSILON*Math.max(1,Math.abs(J),Math.abs(F))&&Math.abs(C-W)<=ZW.EPSILON*Math.max(1,Math.abs(C),Math.abs(W))}function db0(A,Q,B){return A[0]=Q[0]*B,A[1]=Q[1]*B,A[2]=Q[2]*B,A[3]=Q[3]*B,A}function cb0(A,Q,B,Y){return A[0]=Q[0]+B[0]*Y,A[1]=Q[1]+B[1]*Y,A[2]=Q[2]+B[2]*Y,A[3]=Q[3]+B[3]*Y,A}var lb0=TTQ;kTQ.mul=lb0;var pb0=STQ;kTQ.sub=pb0});var bTQ=R((xTQ)=>{function Lk(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")Lk=function(B){return typeof B};else Lk=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return Lk(A)}Object.defineProperty(xTQ,"__esModule",{value:!0});xTQ.create=Dm0;xTQ.clone=Nm0;xTQ.copy=Lm0;xTQ.identity=qm0;xTQ.fromValues=Mm0;xTQ.set=zm0;xTQ.invert=Rm0;xTQ.determinant=wm0;xTQ.multiply=hTQ;xTQ.rotate=jm0;xTQ.scale=Om0;xTQ.translate=Pm0;xTQ.fromRotation=Tm0;xTQ.fromScaling=Sm0;xTQ.fromTranslation=km0;xTQ.str=_m0;xTQ.frob=vm0;xTQ.add=ym0;xTQ.subtract=gTQ;xTQ.multiplyScalar=hm0;xTQ.multiplyScalarAndAdd=gm0;xTQ.exactEquals=xm0;xTQ.equals=fm0;xTQ.sub=xTQ.mul=void 0;var T6=Hm0(E1());function yTQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(yTQ=function(J){return J?B:Q})(A)}function Hm0(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||Lk(A)!=="object"&&typeof A!=="function")return{default:A};var B=yTQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function Dm0(){var A=new T6.ARRAY_TYPE(6);if(T6.ARRAY_TYPE!=Float32Array)A[1]=0,A[2]=0,A[4]=0,A[5]=0;return A[0]=1,A[3]=1,A}function Nm0(A){var Q=new T6.ARRAY_TYPE(6);return Q[0]=A[0],Q[1]=A[1],Q[2]=A[2],Q[3]=A[3],Q[4]=A[4],Q[5]=A[5],Q}function Lm0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A[3]=Q[3],A[4]=Q[4],A[5]=Q[5],A}function qm0(A){return A[0]=1,A[1]=0,A[2]=0,A[3]=1,A[4]=0,A[5]=0,A}function Mm0(A,Q,B,Y,J,C){var X=new T6.ARRAY_TYPE(6);return X[0]=A,X[1]=Q,X[2]=B,X[3]=Y,X[4]=J,X[5]=C,X}function zm0(A,Q,B,Y,J,C,X){return A[0]=Q,A[1]=B,A[2]=Y,A[3]=J,A[4]=C,A[5]=X,A}function Rm0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Q[4],G=Q[5],F=B*C-Y*J;if(!F)return null;return F=1/F,A[0]=C*F,A[1]=-Y*F,A[2]=-J*F,A[3]=B*F,A[4]=(J*G-C*X)*F,A[5]=(Y*X-B*G)*F,A}function wm0(A){return A[0]*A[3]-A[1]*A[2]}function hTQ(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],F=Q[5],W=B[0],Z=B[1],U=B[2],$=B[3],E=B[4],K=B[5];return A[0]=Y*W+C*Z,A[1]=J*W+X*Z,A[2]=Y*U+C*$,A[3]=J*U+X*$,A[4]=Y*E+C*K+G,A[5]=J*E+X*K+F,A}function jm0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],F=Q[5],W=Math.sin(B),Z=Math.cos(B);return A[0]=Y*Z+C*W,A[1]=J*Z+X*W,A[2]=Y*-W+C*Z,A[3]=J*-W+X*Z,A[4]=G,A[5]=F,A}function Om0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],F=Q[5],W=B[0],Z=B[1];return A[0]=Y*W,A[1]=J*W,A[2]=C*Z,A[3]=X*Z,A[4]=G,A[5]=F,A}function Pm0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],F=Q[5],W=B[0],Z=B[1];return A[0]=Y,A[1]=J,A[2]=C,A[3]=X,A[4]=Y*W+C*Z+G,A[5]=J*W+X*Z+F,A}function Tm0(A,Q){var B=Math.sin(Q),Y=Math.cos(Q);return A[0]=Y,A[1]=B,A[2]=-B,A[3]=Y,A[4]=0,A[5]=0,A}function Sm0(A,Q){return A[0]=Q[0],A[1]=0,A[2]=0,A[3]=Q[1],A[4]=0,A[5]=0,A}function km0(A,Q){return A[0]=1,A[1]=0,A[2]=0,A[3]=1,A[4]=Q[0],A[5]=Q[1],A}function _m0(A){return"mat2d("+A[0]+", "+A[1]+", "+A[2]+", "+A[3]+", "+A[4]+", "+A[5]+")"}function vm0(A){return Math.hypot(A[0],A[1],A[2],A[3],A[4],A[5],1)}function ym0(A,Q,B){return A[0]=Q[0]+B[0],A[1]=Q[1]+B[1],A[2]=Q[2]+B[2],A[3]=Q[3]+B[3],A[4]=Q[4]+B[4],A[5]=Q[5]+B[5],A}function gTQ(A,Q,B){return A[0]=Q[0]-B[0],A[1]=Q[1]-B[1],A[2]=Q[2]-B[2],A[3]=Q[3]-B[3],A[4]=Q[4]-B[4],A[5]=Q[5]-B[5],A}function hm0(A,Q,B){return A[0]=Q[0]*B,A[1]=Q[1]*B,A[2]=Q[2]*B,A[3]=Q[3]*B,A[4]=Q[4]*B,A[5]=Q[5]*B,A}function gm0(A,Q,B,Y){return A[0]=Q[0]+B[0]*Y,A[1]=Q[1]+B[1]*Y,A[2]=Q[2]+B[2]*Y,A[3]=Q[3]+B[3]*Y,A[4]=Q[4]+B[4]*Y,A[5]=Q[5]+B[5]*Y,A}function xm0(A,Q){return A[0]===Q[0]&&A[1]===Q[1]&&A[2]===Q[2]&&A[3]===Q[3]&&A[4]===Q[4]&&A[5]===Q[5]}function fm0(A,Q){var B=A[0],Y=A[1],J=A[2],C=A[3],X=A[4],G=A[5],F=Q[0],W=Q[1],Z=Q[2],U=Q[3],$=Q[4],E=Q[5];return Math.abs(B-F)<=T6.EPSILON*Math.max(1,Math.abs(B),Math.abs(F))&&Math.abs(Y-W)<=T6.EPSILON*Math.max(1,Math.abs(Y),Math.abs(W))&&Math.abs(J-Z)<=T6.EPSILON*Math.max(1,Math.abs(J),Math.abs(Z))&&Math.abs(C-U)<=T6.EPSILON*Math.max(1,Math.abs(C),Math.abs(U))&&Math.abs(X-$)<=T6.EPSILON*Math.max(1,Math.abs(X),Math.abs($))&&Math.abs(G-E)<=T6.EPSILON*Math.max(1,Math.abs(G),Math.abs(E))}var bm0=hTQ;xTQ.mul=bm0;var mm0=gTQ;xTQ.sub=mm0});var _o=R((cTQ)=>{function qk(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")qk=function(B){return typeof B};else qk=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return qk(A)}Object.defineProperty(cTQ,"__esModule",{value:!0});cTQ.create=Uu0;cTQ.fromMat4=Eu0;cTQ.clone=Ku0;cTQ.copy=Vu0;cTQ.fromValues=Iu0;cTQ.set=Hu0;cTQ.identity=Du0;cTQ.transpose=Nu0;cTQ.invert=Lu0;cTQ.adjoint=qu0;cTQ.determinant=Mu0;cTQ.multiply=uTQ;cTQ.translate=zu0;cTQ.rotate=Ru0;cTQ.scale=wu0;cTQ.fromTranslation=ju0;cTQ.fromRotation=Ou0;cTQ.fromScaling=Pu0;cTQ.fromMat2d=Tu0;cTQ.fromQuat=Su0;cTQ.normalFromMat4=ku0;cTQ.projection=_u0;cTQ.str=vu0;cTQ.frob=yu0;cTQ.add=hu0;cTQ.subtract=dTQ;cTQ.multiplyScalar=gu0;cTQ.multiplyScalarAndAdd=xu0;cTQ.exactEquals=fu0;cTQ.equals=bu0;cTQ.sub=cTQ.mul=void 0;var c8=$u0(E1());function mTQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(mTQ=function(J){return J?B:Q})(A)}function $u0(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||qk(A)!=="object"&&typeof A!=="function")return{default:A};var B=mTQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function Uu0(){var A=new c8.ARRAY_TYPE(9);if(c8.ARRAY_TYPE!=Float32Array)A[1]=0,A[2]=0,A[3]=0,A[5]=0,A[6]=0,A[7]=0;return A[0]=1,A[4]=1,A[8]=1,A}function Eu0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A[3]=Q[4],A[4]=Q[5],A[5]=Q[6],A[6]=Q[8],A[7]=Q[9],A[8]=Q[10],A}function Ku0(A){var Q=new c8.ARRAY_TYPE(9);return Q[0]=A[0],Q[1]=A[1],Q[2]=A[2],Q[3]=A[3],Q[4]=A[4],Q[5]=A[5],Q[6]=A[6],Q[7]=A[7],Q[8]=A[8],Q}function Vu0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A[3]=Q[3],A[4]=Q[4],A[5]=Q[5],A[6]=Q[6],A[7]=Q[7],A[8]=Q[8],A}function Iu0(A,Q,B,Y,J,C,X,G,F){var W=new c8.ARRAY_TYPE(9);return W[0]=A,W[1]=Q,W[2]=B,W[3]=Y,W[4]=J,W[5]=C,W[6]=X,W[7]=G,W[8]=F,W}function Hu0(A,Q,B,Y,J,C,X,G,F,W){return A[0]=Q,A[1]=B,A[2]=Y,A[3]=J,A[4]=C,A[5]=X,A[6]=G,A[7]=F,A[8]=W,A}function Du0(A){return A[0]=1,A[1]=0,A[2]=0,A[3]=0,A[4]=1,A[5]=0,A[6]=0,A[7]=0,A[8]=1,A}function Nu0(A,Q){if(A===Q){var B=Q[1],Y=Q[2],J=Q[5];A[1]=Q[3],A[2]=Q[6],A[3]=B,A[5]=Q[7],A[6]=Y,A[7]=J}else A[0]=Q[0],A[1]=Q[3],A[2]=Q[6],A[3]=Q[1],A[4]=Q[4],A[5]=Q[7],A[6]=Q[2],A[7]=Q[5],A[8]=Q[8];return A}function Lu0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Q[4],G=Q[5],F=Q[6],W=Q[7],Z=Q[8],U=Z*X-G*W,$=-Z*C+G*F,E=W*C-X*F,K=B*U+Y*$+J*E;if(!K)return null;return K=1/K,A[0]=U*K,A[1]=(-Z*Y+J*W)*K,A[2]=(G*Y-J*X)*K,A[3]=$*K,A[4]=(Z*B-J*F)*K,A[5]=(-G*B+J*C)*K,A[6]=E*K,A[7]=(-W*B+Y*F)*K,A[8]=(X*B-Y*C)*K,A}function qu0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Q[4],G=Q[5],F=Q[6],W=Q[7],Z=Q[8];return A[0]=X*Z-G*W,A[1]=J*W-Y*Z,A[2]=Y*G-J*X,A[3]=G*F-C*Z,A[4]=B*Z-J*F,A[5]=J*C-B*G,A[6]=C*W-X*F,A[7]=Y*F-B*W,A[8]=B*X-Y*C,A}function Mu0(A){var Q=A[0],B=A[1],Y=A[2],J=A[3],C=A[4],X=A[5],G=A[6],F=A[7],W=A[8];return Q*(W*C-X*F)+B*(-W*J+X*G)+Y*(F*J-C*G)}function uTQ(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],F=Q[5],W=Q[6],Z=Q[7],U=Q[8],$=B[0],E=B[1],K=B[2],I=B[3],V=B[4],H=B[5],D=B[6],L=B[7],z=B[8];return A[0]=$*Y+E*X+K*W,A[1]=$*J+E*G+K*Z,A[2]=$*C+E*F+K*U,A[3]=I*Y+V*X+H*W,A[4]=I*J+V*G+H*Z,A[5]=I*C+V*F+H*U,A[6]=D*Y+L*X+z*W,A[7]=D*J+L*G+z*Z,A[8]=D*C+L*F+z*U,A}function zu0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],F=Q[5],W=Q[6],Z=Q[7],U=Q[8],$=B[0],E=B[1];return A[0]=Y,A[1]=J,A[2]=C,A[3]=X,A[4]=G,A[5]=F,A[6]=$*Y+E*X+W,A[7]=$*J+E*G+Z,A[8]=$*C+E*F+U,A}function Ru0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],F=Q[5],W=Q[6],Z=Q[7],U=Q[8],$=Math.sin(B),E=Math.cos(B);return A[0]=E*Y+$*X,A[1]=E*J+$*G,A[2]=E*C+$*F,A[3]=E*X-$*Y,A[4]=E*G-$*J,A[5]=E*F-$*C,A[6]=W,A[7]=Z,A[8]=U,A}function wu0(A,Q,B){var Y=B[0],J=B[1];return A[0]=Y*Q[0],A[1]=Y*Q[1],A[2]=Y*Q[2],A[3]=J*Q[3],A[4]=J*Q[4],A[5]=J*Q[5],A[6]=Q[6],A[7]=Q[7],A[8]=Q[8],A}function ju0(A,Q){return A[0]=1,A[1]=0,A[2]=0,A[3]=0,A[4]=1,A[5]=0,A[6]=Q[0],A[7]=Q[1],A[8]=1,A}function Ou0(A,Q){var B=Math.sin(Q),Y=Math.cos(Q);return A[0]=Y,A[1]=B,A[2]=0,A[3]=-B,A[4]=Y,A[5]=0,A[6]=0,A[7]=0,A[8]=1,A}function Pu0(A,Q){return A[0]=Q[0],A[1]=0,A[2]=0,A[3]=0,A[4]=Q[1],A[5]=0,A[6]=0,A[7]=0,A[8]=1,A}function Tu0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=0,A[3]=Q[2],A[4]=Q[3],A[5]=0,A[6]=Q[4],A[7]=Q[5],A[8]=1,A}function Su0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=B+B,G=Y+Y,F=J+J,W=B*X,Z=Y*X,U=Y*G,$=J*X,E=J*G,K=J*F,I=C*X,V=C*G,H=C*F;return A[0]=1-U-K,A[3]=Z-H,A[6]=$+V,A[1]=Z+H,A[4]=1-W-K,A[7]=E-I,A[2]=$-V,A[5]=E+I,A[8]=1-W-U,A}function ku0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Q[4],G=Q[5],F=Q[6],W=Q[7],Z=Q[8],U=Q[9],$=Q[10],E=Q[11],K=Q[12],I=Q[13],V=Q[14],H=Q[15],D=B*G-Y*X,L=B*F-J*X,z=B*W-C*X,M=Y*F-J*G,N=Y*W-C*G,q=J*W-C*F,w=Z*I-U*K,P=Z*V-$*K,_=Z*H-E*K,O=U*V-$*I,k=U*H-E*I,T=$*H-E*V,S=D*T-L*k+z*O+M*_-N*P+q*w;if(!S)return null;return S=1/S,A[0]=(G*T-F*k+W*O)*S,A[1]=(F*_-X*T-W*P)*S,A[2]=(X*k-G*_+W*w)*S,A[3]=(J*k-Y*T-C*O)*S,A[4]=(B*T-J*_+C*P)*S,A[5]=(Y*_-B*k-C*w)*S,A[6]=(I*q-V*N+H*M)*S,A[7]=(V*z-K*q-H*L)*S,A[8]=(K*N-I*z+H*D)*S,A}function _u0(A,Q,B){return A[0]=2/Q,A[1]=0,A[2]=0,A[3]=0,A[4]=-2/B,A[5]=0,A[6]=-1,A[7]=1,A[8]=1,A}function vu0(A){return"mat3("+A[0]+", "+A[1]+", "+A[2]+", "+A[3]+", "+A[4]+", "+A[5]+", "+A[6]+", "+A[7]+", "+A[8]+")"}function yu0(A){return Math.hypot(A[0],A[1],A[2],A[3],A[4],A[5],A[6],A[7],A[8])}function hu0(A,Q,B){return A[0]=Q[0]+B[0],A[1]=Q[1]+B[1],A[2]=Q[2]+B[2],A[3]=Q[3]+B[3],A[4]=Q[4]+B[4],A[5]=Q[5]+B[5],A[6]=Q[6]+B[6],A[7]=Q[7]+B[7],A[8]=Q[8]+B[8],A}function dTQ(A,Q,B){return A[0]=Q[0]-B[0],A[1]=Q[1]-B[1],A[2]=Q[2]-B[2],A[3]=Q[3]-B[3],A[4]=Q[4]-B[4],A[5]=Q[5]-B[5],A[6]=Q[6]-B[6],A[7]=Q[7]-B[7],A[8]=Q[8]-B[8],A}function gu0(A,Q,B){return A[0]=Q[0]*B,A[1]=Q[1]*B,A[2]=Q[2]*B,A[3]=Q[3]*B,A[4]=Q[4]*B,A[5]=Q[5]*B,A[6]=Q[6]*B,A[7]=Q[7]*B,A[8]=Q[8]*B,A}function xu0(A,Q,B,Y){return A[0]=Q[0]+B[0]*Y,A[1]=Q[1]+B[1]*Y,A[2]=Q[2]+B[2]*Y,A[3]=Q[3]+B[3]*Y,A[4]=Q[4]+B[4]*Y,A[5]=Q[5]+B[5]*Y,A[6]=Q[6]+B[6]*Y,A[7]=Q[7]+B[7]*Y,A[8]=Q[8]+B[8]*Y,A}function fu0(A,Q){return A[0]===Q[0]&&A[1]===Q[1]&&A[2]===Q[2]&&A[3]===Q[3]&&A[4]===Q[4]&&A[5]===Q[5]&&A[6]===Q[6]&&A[7]===Q[7]&&A[8]===Q[8]}function bu0(A,Q){var B=A[0],Y=A[1],J=A[2],C=A[3],X=A[4],G=A[5],F=A[6],W=A[7],Z=A[8],U=Q[0],$=Q[1],E=Q[2],K=Q[3],I=Q[4],V=Q[5],H=Q[6],D=Q[7],L=Q[8];return Math.abs(B-U)<=c8.EPSILON*Math.max(1,Math.abs(B),Math.abs(U))&&Math.abs(Y-$)<=c8.EPSILON*Math.max(1,Math.abs(Y),Math.abs($))&&Math.abs(J-E)<=c8.EPSILON*Math.max(1,Math.abs(J),Math.abs(E))&&Math.abs(C-K)<=c8.EPSILON*Math.max(1,Math.abs(C),Math.abs(K))&&Math.abs(X-I)<=c8.EPSILON*Math.max(1,Math.abs(X),Math.abs(I))&&Math.abs(G-V)<=c8.EPSILON*Math.max(1,Math.abs(G),Math.abs(V))&&Math.abs(F-H)<=c8.EPSILON*Math.max(1,Math.abs(F),Math.abs(H))&&Math.abs(W-D)<=c8.EPSILON*Math.max(1,Math.abs(W),Math.abs(D))&&Math.abs(Z-L)<=c8.EPSILON*Math.max(1,Math.abs(Z),Math.abs(L))}var mu0=uTQ;cTQ.mul=mu0;var uu0=dTQ;cTQ.sub=uu0});var vo=R((eTQ)=>{function Mk(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")Mk=function(B){return typeof B};else Mk=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return Mk(A)}Object.defineProperty(eTQ,"__esModule",{value:!0});eTQ.create=Ld0;eTQ.clone=qd0;eTQ.copy=Md0;eTQ.fromValues=zd0;eTQ.set=Rd0;eTQ.identity=iTQ;eTQ.transpose=wd0;eTQ.invert=jd0;eTQ.adjoint=Od0;eTQ.determinant=Pd0;eTQ.multiply=nTQ;eTQ.translate=Td0;eTQ.scale=Sd0;eTQ.rotate=kd0;eTQ.rotateX=_d0;eTQ.rotateY=vd0;eTQ.rotateZ=yd0;eTQ.fromTranslation=hd0;eTQ.fromScaling=gd0;eTQ.fromRotation=xd0;eTQ.fromXRotation=fd0;eTQ.fromYRotation=bd0;eTQ.fromZRotation=md0;eTQ.fromRotationTranslation=sTQ;eTQ.fromQuat2=ud0;eTQ.getTranslation=dd0;eTQ.getScaling=rTQ;eTQ.getRotation=cd0;eTQ.fromRotationTranslationScale=ld0;eTQ.fromRotationTranslationScaleOrigin=pd0;eTQ.fromQuat=id0;eTQ.frustum=nd0;eTQ.perspectiveNO=aTQ;eTQ.perspectiveZO=rd0;eTQ.perspectiveFromFieldOfView=ad0;eTQ.orthoNO=oTQ;eTQ.orthoZO=td0;eTQ.lookAt=ed0;eTQ.targetTo=Ac0;eTQ.str=Qc0;eTQ.frob=Bc0;eTQ.add=Yc0;eTQ.subtract=tTQ;eTQ.multiplyScalar=Jc0;eTQ.multiplyScalarAndAdd=Cc0;eTQ.exactEquals=Xc0;eTQ.equals=Gc0;eTQ.sub=eTQ.mul=eTQ.ortho=eTQ.perspective=void 0;var B0=Nd0(E1());function pTQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(pTQ=function(J){return J?B:Q})(A)}function Nd0(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||Mk(A)!=="object"&&typeof A!=="function")return{default:A};var B=pTQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function Ld0(){var A=new B0.ARRAY_TYPE(16);if(B0.ARRAY_TYPE!=Float32Array)A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[6]=0,A[7]=0,A[8]=0,A[9]=0,A[11]=0,A[12]=0,A[13]=0,A[14]=0;return A[0]=1,A[5]=1,A[10]=1,A[15]=1,A}function qd0(A){var Q=new B0.ARRAY_TYPE(16);return Q[0]=A[0],Q[1]=A[1],Q[2]=A[2],Q[3]=A[3],Q[4]=A[4],Q[5]=A[5],Q[6]=A[6],Q[7]=A[7],Q[8]=A[8],Q[9]=A[9],Q[10]=A[10],Q[11]=A[11],Q[12]=A[12],Q[13]=A[13],Q[14]=A[14],Q[15]=A[15],Q}function Md0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A[3]=Q[3],A[4]=Q[4],A[5]=Q[5],A[6]=Q[6],A[7]=Q[7],A[8]=Q[8],A[9]=Q[9],A[10]=Q[10],A[11]=Q[11],A[12]=Q[12],A[13]=Q[13],A[14]=Q[14],A[15]=Q[15],A}function zd0(A,Q,B,Y,J,C,X,G,F,W,Z,U,$,E,K,I){var V=new B0.ARRAY_TYPE(16);return V[0]=A,V[1]=Q,V[2]=B,V[3]=Y,V[4]=J,V[5]=C,V[6]=X,V[7]=G,V[8]=F,V[9]=W,V[10]=Z,V[11]=U,V[12]=$,V[13]=E,V[14]=K,V[15]=I,V}function Rd0(A,Q,B,Y,J,C,X,G,F,W,Z,U,$,E,K,I,V){return A[0]=Q,A[1]=B,A[2]=Y,A[3]=J,A[4]=C,A[5]=X,A[6]=G,A[7]=F,A[8]=W,A[9]=Z,A[10]=U,A[11]=$,A[12]=E,A[13]=K,A[14]=I,A[15]=V,A}function iTQ(A){return A[0]=1,A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[5]=1,A[6]=0,A[7]=0,A[8]=0,A[9]=0,A[10]=1,A[11]=0,A[12]=0,A[13]=0,A[14]=0,A[15]=1,A}function wd0(A,Q){if(A===Q){var B=Q[1],Y=Q[2],J=Q[3],C=Q[6],X=Q[7],G=Q[11];A[1]=Q[4],A[2]=Q[8],A[3]=Q[12],A[4]=B,A[6]=Q[9],A[7]=Q[13],A[8]=Y,A[9]=C,A[11]=Q[14],A[12]=J,A[13]=X,A[14]=G}else A[0]=Q[0],A[1]=Q[4],A[2]=Q[8],A[3]=Q[12],A[4]=Q[1],A[5]=Q[5],A[6]=Q[9],A[7]=Q[13],A[8]=Q[2],A[9]=Q[6],A[10]=Q[10],A[11]=Q[14],A[12]=Q[3],A[13]=Q[7],A[14]=Q[11],A[15]=Q[15];return A}function jd0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Q[4],G=Q[5],F=Q[6],W=Q[7],Z=Q[8],U=Q[9],$=Q[10],E=Q[11],K=Q[12],I=Q[13],V=Q[14],H=Q[15],D=B*G-Y*X,L=B*F-J*X,z=B*W-C*X,M=Y*F-J*G,N=Y*W-C*G,q=J*W-C*F,w=Z*I-U*K,P=Z*V-$*K,_=Z*H-E*K,O=U*V-$*I,k=U*H-E*I,T=$*H-E*V,S=D*T-L*k+z*O+M*_-N*P+q*w;if(!S)return null;return S=1/S,A[0]=(G*T-F*k+W*O)*S,A[1]=(J*k-Y*T-C*O)*S,A[2]=(I*q-V*N+H*M)*S,A[3]=($*N-U*q-E*M)*S,A[4]=(F*_-X*T-W*P)*S,A[5]=(B*T-J*_+C*P)*S,A[6]=(V*z-K*q-H*L)*S,A[7]=(Z*q-$*z+E*L)*S,A[8]=(X*k-G*_+W*w)*S,A[9]=(Y*_-B*k-C*w)*S,A[10]=(K*N-I*z+H*D)*S,A[11]=(U*z-Z*N-E*D)*S,A[12]=(G*P-X*O-F*w)*S,A[13]=(B*O-Y*P+J*w)*S,A[14]=(I*L-K*M-V*D)*S,A[15]=(Z*M-U*L+$*D)*S,A}function Od0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Q[4],G=Q[5],F=Q[6],W=Q[7],Z=Q[8],U=Q[9],$=Q[10],E=Q[11],K=Q[12],I=Q[13],V=Q[14],H=Q[15];return A[0]=G*($*H-E*V)-U*(F*H-W*V)+I*(F*E-W*$),A[1]=-(Y*($*H-E*V)-U*(J*H-C*V)+I*(J*E-C*$)),A[2]=Y*(F*H-W*V)-G*(J*H-C*V)+I*(J*W-C*F),A[3]=-(Y*(F*E-W*$)-G*(J*E-C*$)+U*(J*W-C*F)),A[4]=-(X*($*H-E*V)-Z*(F*H-W*V)+K*(F*E-W*$)),A[5]=B*($*H-E*V)-Z*(J*H-C*V)+K*(J*E-C*$),A[6]=-(B*(F*H-W*V)-X*(J*H-C*V)+K*(J*W-C*F)),A[7]=B*(F*E-W*$)-X*(J*E-C*$)+Z*(J*W-C*F),A[8]=X*(U*H-E*I)-Z*(G*H-W*I)+K*(G*E-W*U),A[9]=-(B*(U*H-E*I)-Z*(Y*H-C*I)+K*(Y*E-C*U)),A[10]=B*(G*H-W*I)-X*(Y*H-C*I)+K*(Y*W-C*G),A[11]=-(B*(G*E-W*U)-X*(Y*E-C*U)+Z*(Y*W-C*G)),A[12]=-(X*(U*V-$*I)-Z*(G*V-F*I)+K*(G*$-F*U)),A[13]=B*(U*V-$*I)-Z*(Y*V-J*I)+K*(Y*$-J*U),A[14]=-(B*(G*V-F*I)-X*(Y*V-J*I)+K*(Y*F-J*G)),A[15]=B*(G*$-F*U)-X*(Y*$-J*U)+Z*(Y*F-J*G),A}function Pd0(A){var Q=A[0],B=A[1],Y=A[2],J=A[3],C=A[4],X=A[5],G=A[6],F=A[7],W=A[8],Z=A[9],U=A[10],$=A[11],E=A[12],K=A[13],I=A[14],V=A[15],H=Q*X-B*C,D=Q*G-Y*C,L=Q*F-J*C,z=B*G-Y*X,M=B*F-J*X,N=Y*F-J*G,q=W*K-Z*E,w=W*I-U*E,P=W*V-$*E,_=Z*I-U*K,O=Z*V-$*K,k=U*V-$*I;return H*k-D*O+L*_+z*P-M*w+N*q}function nTQ(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],F=Q[5],W=Q[6],Z=Q[7],U=Q[8],$=Q[9],E=Q[10],K=Q[11],I=Q[12],V=Q[13],H=Q[14],D=Q[15],L=B[0],z=B[1],M=B[2],N=B[3];return A[0]=L*Y+z*G+M*U+N*I,A[1]=L*J+z*F+M*$+N*V,A[2]=L*C+z*W+M*E+N*H,A[3]=L*X+z*Z+M*K+N*D,L=B[4],z=B[5],M=B[6],N=B[7],A[4]=L*Y+z*G+M*U+N*I,A[5]=L*J+z*F+M*$+N*V,A[6]=L*C+z*W+M*E+N*H,A[7]=L*X+z*Z+M*K+N*D,L=B[8],z=B[9],M=B[10],N=B[11],A[8]=L*Y+z*G+M*U+N*I,A[9]=L*J+z*F+M*$+N*V,A[10]=L*C+z*W+M*E+N*H,A[11]=L*X+z*Z+M*K+N*D,L=B[12],z=B[13],M=B[14],N=B[15],A[12]=L*Y+z*G+M*U+N*I,A[13]=L*J+z*F+M*$+N*V,A[14]=L*C+z*W+M*E+N*H,A[15]=L*X+z*Z+M*K+N*D,A}function Td0(A,Q,B){var Y=B[0],J=B[1],C=B[2],X,G,F,W,Z,U,$,E,K,I,V,H;if(Q===A)A[12]=Q[0]*Y+Q[4]*J+Q[8]*C+Q[12],A[13]=Q[1]*Y+Q[5]*J+Q[9]*C+Q[13],A[14]=Q[2]*Y+Q[6]*J+Q[10]*C+Q[14],A[15]=Q[3]*Y+Q[7]*J+Q[11]*C+Q[15];else X=Q[0],G=Q[1],F=Q[2],W=Q[3],Z=Q[4],U=Q[5],$=Q[6],E=Q[7],K=Q[8],I=Q[9],V=Q[10],H=Q[11],A[0]=X,A[1]=G,A[2]=F,A[3]=W,A[4]=Z,A[5]=U,A[6]=$,A[7]=E,A[8]=K,A[9]=I,A[10]=V,A[11]=H,A[12]=X*Y+Z*J+K*C+Q[12],A[13]=G*Y+U*J+I*C+Q[13],A[14]=F*Y+$*J+V*C+Q[14],A[15]=W*Y+E*J+H*C+Q[15];return A}function Sd0(A,Q,B){var Y=B[0],J=B[1],C=B[2];return A[0]=Q[0]*Y,A[1]=Q[1]*Y,A[2]=Q[2]*Y,A[3]=Q[3]*Y,A[4]=Q[4]*J,A[5]=Q[5]*J,A[6]=Q[6]*J,A[7]=Q[7]*J,A[8]=Q[8]*C,A[9]=Q[9]*C,A[10]=Q[10]*C,A[11]=Q[11]*C,A[12]=Q[12],A[13]=Q[13],A[14]=Q[14],A[15]=Q[15],A}function kd0(A,Q,B,Y){var J=Y[0],C=Y[1],X=Y[2],G=Math.hypot(J,C,X),F,W,Z,U,$,E,K,I,V,H,D,L,z,M,N,q,w,P,_,O,k,T,S,v;if(G0)B[0]=(G*X+Z*Y+F*C-W*J)*2/U,B[1]=(F*X+Z*J+W*Y-G*C)*2/U,B[2]=(W*X+Z*C+G*J-F*Y)*2/U;else B[0]=(G*X+Z*Y+F*C-W*J)*2,B[1]=(F*X+Z*J+W*Y-G*C)*2,B[2]=(W*X+Z*C+G*J-F*Y)*2;return sTQ(A,Q,B),A}function dd0(A,Q){return A[0]=Q[12],A[1]=Q[13],A[2]=Q[14],A}function rTQ(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[4],X=Q[5],G=Q[6],F=Q[8],W=Q[9],Z=Q[10];return A[0]=Math.hypot(B,Y,J),A[1]=Math.hypot(C,X,G),A[2]=Math.hypot(F,W,Z),A}function cd0(A,Q){var B=new B0.ARRAY_TYPE(3);rTQ(B,Q);var Y=1/B[0],J=1/B[1],C=1/B[2],X=Q[0]*Y,G=Q[1]*J,F=Q[2]*C,W=Q[4]*Y,Z=Q[5]*J,U=Q[6]*C,$=Q[8]*Y,E=Q[9]*J,K=Q[10]*C,I=X+Z+K,V=0;if(I>0)V=Math.sqrt(I+1)*2,A[3]=0.25*V,A[0]=(U-E)/V,A[1]=($-F)/V,A[2]=(G-W)/V;else if(X>Z&&X>K)V=Math.sqrt(1+X-Z-K)*2,A[3]=(U-E)/V,A[0]=0.25*V,A[1]=(G+W)/V,A[2]=($+F)/V;else if(Z>K)V=Math.sqrt(1+Z-X-K)*2,A[3]=($-F)/V,A[0]=(G+W)/V,A[1]=0.25*V,A[2]=(U+E)/V;else V=Math.sqrt(1+K-X-Z)*2,A[3]=(G-W)/V,A[0]=($+F)/V,A[1]=(U+E)/V,A[2]=0.25*V;return A}function ld0(A,Q,B,Y){var J=Q[0],C=Q[1],X=Q[2],G=Q[3],F=J+J,W=C+C,Z=X+X,U=J*F,$=J*W,E=J*Z,K=C*W,I=C*Z,V=X*Z,H=G*F,D=G*W,L=G*Z,z=Y[0],M=Y[1],N=Y[2];return A[0]=(1-(K+V))*z,A[1]=($+L)*z,A[2]=(E-D)*z,A[3]=0,A[4]=($-L)*M,A[5]=(1-(U+V))*M,A[6]=(I+H)*M,A[7]=0,A[8]=(E+D)*N,A[9]=(I-H)*N,A[10]=(1-(U+K))*N,A[11]=0,A[12]=B[0],A[13]=B[1],A[14]=B[2],A[15]=1,A}function pd0(A,Q,B,Y,J){var C=Q[0],X=Q[1],G=Q[2],F=Q[3],W=C+C,Z=X+X,U=G+G,$=C*W,E=C*Z,K=C*U,I=X*Z,V=X*U,H=G*U,D=F*W,L=F*Z,z=F*U,M=Y[0],N=Y[1],q=Y[2],w=J[0],P=J[1],_=J[2],O=(1-(I+H))*M,k=(E+z)*M,T=(K-L)*M,S=(E-z)*N,v=(1-($+H))*N,y=(V+D)*N,g=(K+L)*q,h=(V-D)*q,m=(1-($+I))*q;return A[0]=O,A[1]=k,A[2]=T,A[3]=0,A[4]=S,A[5]=v,A[6]=y,A[7]=0,A[8]=g,A[9]=h,A[10]=m,A[11]=0,A[12]=B[0]+w-(O*w+S*P+g*_),A[13]=B[1]+P-(k*w+v*P+h*_),A[14]=B[2]+_-(T*w+y*P+m*_),A[15]=1,A}function id0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=B+B,G=Y+Y,F=J+J,W=B*X,Z=Y*X,U=Y*G,$=J*X,E=J*G,K=J*F,I=C*X,V=C*G,H=C*F;return A[0]=1-U-K,A[1]=Z+H,A[2]=$-V,A[3]=0,A[4]=Z-H,A[5]=1-W-K,A[6]=E+I,A[7]=0,A[8]=$+V,A[9]=E-I,A[10]=1-W-U,A[11]=0,A[12]=0,A[13]=0,A[14]=0,A[15]=1,A}function nd0(A,Q,B,Y,J,C,X){var G=1/(B-Q),F=1/(J-Y),W=1/(C-X);return A[0]=C*2*G,A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[5]=C*2*F,A[6]=0,A[7]=0,A[8]=(B+Q)*G,A[9]=(J+Y)*F,A[10]=(X+C)*W,A[11]=-1,A[12]=0,A[13]=0,A[14]=X*C*2*W,A[15]=0,A}function aTQ(A,Q,B,Y,J){var C=1/Math.tan(Q/2),X;if(A[0]=C/B,A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[5]=C,A[6]=0,A[7]=0,A[8]=0,A[9]=0,A[11]=-1,A[12]=0,A[13]=0,A[15]=0,J!=null&&J!==1/0)X=1/(Y-J),A[10]=(J+Y)*X,A[14]=2*J*Y*X;else A[10]=-1,A[14]=-2*Y;return A}var sd0=aTQ;eTQ.perspective=sd0;function rd0(A,Q,B,Y,J){var C=1/Math.tan(Q/2),X;if(A[0]=C/B,A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[5]=C,A[6]=0,A[7]=0,A[8]=0,A[9]=0,A[11]=-1,A[12]=0,A[13]=0,A[15]=0,J!=null&&J!==1/0)X=1/(Y-J),A[10]=J*X,A[14]=J*Y*X;else A[10]=-1,A[14]=-Y;return A}function ad0(A,Q,B,Y){var J=Math.tan(Q.upDegrees*Math.PI/180),C=Math.tan(Q.downDegrees*Math.PI/180),X=Math.tan(Q.leftDegrees*Math.PI/180),G=Math.tan(Q.rightDegrees*Math.PI/180),F=2/(X+G),W=2/(J+C);return A[0]=F,A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[5]=W,A[6]=0,A[7]=0,A[8]=-((X-G)*F*0.5),A[9]=(J-C)*W*0.5,A[10]=Y/(B-Y),A[11]=-1,A[12]=0,A[13]=0,A[14]=Y*B/(B-Y),A[15]=0,A}function oTQ(A,Q,B,Y,J,C,X){var G=1/(Q-B),F=1/(Y-J),W=1/(C-X);return A[0]=-2*G,A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[5]=-2*F,A[6]=0,A[7]=0,A[8]=0,A[9]=0,A[10]=2*W,A[11]=0,A[12]=(Q+B)*G,A[13]=(J+Y)*F,A[14]=(X+C)*W,A[15]=1,A}var od0=oTQ;eTQ.ortho=od0;function td0(A,Q,B,Y,J,C,X){var G=1/(Q-B),F=1/(Y-J),W=1/(C-X);return A[0]=-2*G,A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[5]=-2*F,A[6]=0,A[7]=0,A[8]=0,A[9]=0,A[10]=W,A[11]=0,A[12]=(Q+B)*G,A[13]=(J+Y)*F,A[14]=C*W,A[15]=1,A}function ed0(A,Q,B,Y){var J,C,X,G,F,W,Z,U,$,E,K=Q[0],I=Q[1],V=Q[2],H=Y[0],D=Y[1],L=Y[2],z=B[0],M=B[1],N=B[2];if(Math.abs(K-z)0)E=1/Math.sqrt(E),Z*=E,U*=E,$*=E;var K=F*$-W*U,I=W*Z-G*$,V=G*U-F*Z;if(E=K*K+I*I+V*V,E>0)E=1/Math.sqrt(E),K*=E,I*=E,V*=E;return A[0]=K,A[1]=I,A[2]=V,A[3]=0,A[4]=U*V-$*I,A[5]=$*K-Z*V,A[6]=Z*I-U*K,A[7]=0,A[8]=Z,A[9]=U,A[10]=$,A[11]=0,A[12]=J,A[13]=C,A[14]=X,A[15]=1,A}function Qc0(A){return"mat4("+A[0]+", "+A[1]+", "+A[2]+", "+A[3]+", "+A[4]+", "+A[5]+", "+A[6]+", "+A[7]+", "+A[8]+", "+A[9]+", "+A[10]+", "+A[11]+", "+A[12]+", "+A[13]+", "+A[14]+", "+A[15]+")"}function Bc0(A){return Math.hypot(A[0],A[1],A[2],A[3],A[4],A[5],A[6],A[7],A[8],A[9],A[10],A[11],A[12],A[13],A[14],A[15])}function Yc0(A,Q,B){return A[0]=Q[0]+B[0],A[1]=Q[1]+B[1],A[2]=Q[2]+B[2],A[3]=Q[3]+B[3],A[4]=Q[4]+B[4],A[5]=Q[5]+B[5],A[6]=Q[6]+B[6],A[7]=Q[7]+B[7],A[8]=Q[8]+B[8],A[9]=Q[9]+B[9],A[10]=Q[10]+B[10],A[11]=Q[11]+B[11],A[12]=Q[12]+B[12],A[13]=Q[13]+B[13],A[14]=Q[14]+B[14],A[15]=Q[15]+B[15],A}function tTQ(A,Q,B){return A[0]=Q[0]-B[0],A[1]=Q[1]-B[1],A[2]=Q[2]-B[2],A[3]=Q[3]-B[3],A[4]=Q[4]-B[4],A[5]=Q[5]-B[5],A[6]=Q[6]-B[6],A[7]=Q[7]-B[7],A[8]=Q[8]-B[8],A[9]=Q[9]-B[9],A[10]=Q[10]-B[10],A[11]=Q[11]-B[11],A[12]=Q[12]-B[12],A[13]=Q[13]-B[13],A[14]=Q[14]-B[14],A[15]=Q[15]-B[15],A}function Jc0(A,Q,B){return A[0]=Q[0]*B,A[1]=Q[1]*B,A[2]=Q[2]*B,A[3]=Q[3]*B,A[4]=Q[4]*B,A[5]=Q[5]*B,A[6]=Q[6]*B,A[7]=Q[7]*B,A[8]=Q[8]*B,A[9]=Q[9]*B,A[10]=Q[10]*B,A[11]=Q[11]*B,A[12]=Q[12]*B,A[13]=Q[13]*B,A[14]=Q[14]*B,A[15]=Q[15]*B,A}function Cc0(A,Q,B,Y){return A[0]=Q[0]+B[0]*Y,A[1]=Q[1]+B[1]*Y,A[2]=Q[2]+B[2]*Y,A[3]=Q[3]+B[3]*Y,A[4]=Q[4]+B[4]*Y,A[5]=Q[5]+B[5]*Y,A[6]=Q[6]+B[6]*Y,A[7]=Q[7]+B[7]*Y,A[8]=Q[8]+B[8]*Y,A[9]=Q[9]+B[9]*Y,A[10]=Q[10]+B[10]*Y,A[11]=Q[11]+B[11]*Y,A[12]=Q[12]+B[12]*Y,A[13]=Q[13]+B[13]*Y,A[14]=Q[14]+B[14]*Y,A[15]=Q[15]+B[15]*Y,A}function Xc0(A,Q){return A[0]===Q[0]&&A[1]===Q[1]&&A[2]===Q[2]&&A[3]===Q[3]&&A[4]===Q[4]&&A[5]===Q[5]&&A[6]===Q[6]&&A[7]===Q[7]&&A[8]===Q[8]&&A[9]===Q[9]&&A[10]===Q[10]&&A[11]===Q[11]&&A[12]===Q[12]&&A[13]===Q[13]&&A[14]===Q[14]&&A[15]===Q[15]}function Gc0(A,Q){var B=A[0],Y=A[1],J=A[2],C=A[3],X=A[4],G=A[5],F=A[6],W=A[7],Z=A[8],U=A[9],$=A[10],E=A[11],K=A[12],I=A[13],V=A[14],H=A[15],D=Q[0],L=Q[1],z=Q[2],M=Q[3],N=Q[4],q=Q[5],w=Q[6],P=Q[7],_=Q[8],O=Q[9],k=Q[10],T=Q[11],S=Q[12],v=Q[13],y=Q[14],g=Q[15];return Math.abs(B-D)<=B0.EPSILON*Math.max(1,Math.abs(B),Math.abs(D))&&Math.abs(Y-L)<=B0.EPSILON*Math.max(1,Math.abs(Y),Math.abs(L))&&Math.abs(J-z)<=B0.EPSILON*Math.max(1,Math.abs(J),Math.abs(z))&&Math.abs(C-M)<=B0.EPSILON*Math.max(1,Math.abs(C),Math.abs(M))&&Math.abs(X-N)<=B0.EPSILON*Math.max(1,Math.abs(X),Math.abs(N))&&Math.abs(G-q)<=B0.EPSILON*Math.max(1,Math.abs(G),Math.abs(q))&&Math.abs(F-w)<=B0.EPSILON*Math.max(1,Math.abs(F),Math.abs(w))&&Math.abs(W-P)<=B0.EPSILON*Math.max(1,Math.abs(W),Math.abs(P))&&Math.abs(Z-_)<=B0.EPSILON*Math.max(1,Math.abs(Z),Math.abs(_))&&Math.abs(U-O)<=B0.EPSILON*Math.max(1,Math.abs(U),Math.abs(O))&&Math.abs($-k)<=B0.EPSILON*Math.max(1,Math.abs($),Math.abs(k))&&Math.abs(E-T)<=B0.EPSILON*Math.max(1,Math.abs(E),Math.abs(T))&&Math.abs(K-S)<=B0.EPSILON*Math.max(1,Math.abs(K),Math.abs(S))&&Math.abs(I-v)<=B0.EPSILON*Math.max(1,Math.abs(I),Math.abs(v))&&Math.abs(V-y)<=B0.EPSILON*Math.max(1,Math.abs(V),Math.abs(y))&&Math.abs(H-g)<=B0.EPSILON*Math.max(1,Math.abs(H),Math.abs(g))}var Fc0=nTQ;eTQ.mul=Fc0;var Wc0=tTQ;eTQ.sub=Wc0});var yo=R(($SQ)=>{function zk(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")zk=function(B){return typeof B};else zk=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return zk(A)}Object.defineProperty($SQ,"__esModule",{value:!0});$SQ.create=BSQ;$SQ.clone=Gl0;$SQ.length=YSQ;$SQ.fromValues=Fl0;$SQ.copy=Wl0;$SQ.set=Zl0;$SQ.add=$l0;$SQ.subtract=JSQ;$SQ.multiply=CSQ;$SQ.divide=XSQ;$SQ.ceil=Ul0;$SQ.floor=El0;$SQ.min=Kl0;$SQ.max=Vl0;$SQ.round=Il0;$SQ.scale=Hl0;$SQ.scaleAndAdd=Dl0;$SQ.distance=GSQ;$SQ.squaredDistance=FSQ;$SQ.squaredLength=WSQ;$SQ.negate=Nl0;$SQ.inverse=Ll0;$SQ.normalize=ql0;$SQ.dot=ZSQ;$SQ.cross=Ml0;$SQ.lerp=zl0;$SQ.hermite=Rl0;$SQ.bezier=wl0;$SQ.random=jl0;$SQ.transformMat4=Ol0;$SQ.transformMat3=Pl0;$SQ.transformQuat=Tl0;$SQ.rotateX=Sl0;$SQ.rotateY=kl0;$SQ.rotateZ=_l0;$SQ.angle=vl0;$SQ.zero=yl0;$SQ.str=hl0;$SQ.exactEquals=gl0;$SQ.equals=xl0;$SQ.forEach=$SQ.sqrLen=$SQ.len=$SQ.sqrDist=$SQ.dist=$SQ.div=$SQ.mul=$SQ.sub=void 0;var hG=Xl0(E1());function QSQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(QSQ=function(J){return J?B:Q})(A)}function Xl0(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||zk(A)!=="object"&&typeof A!=="function")return{default:A};var B=QSQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function BSQ(){var A=new hG.ARRAY_TYPE(3);if(hG.ARRAY_TYPE!=Float32Array)A[0]=0,A[1]=0,A[2]=0;return A}function Gl0(A){var Q=new hG.ARRAY_TYPE(3);return Q[0]=A[0],Q[1]=A[1],Q[2]=A[2],Q}function YSQ(A){var Q=A[0],B=A[1],Y=A[2];return Math.hypot(Q,B,Y)}function Fl0(A,Q,B){var Y=new hG.ARRAY_TYPE(3);return Y[0]=A,Y[1]=Q,Y[2]=B,Y}function Wl0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A}function Zl0(A,Q,B,Y){return A[0]=Q,A[1]=B,A[2]=Y,A}function $l0(A,Q,B){return A[0]=Q[0]+B[0],A[1]=Q[1]+B[1],A[2]=Q[2]+B[2],A}function JSQ(A,Q,B){return A[0]=Q[0]-B[0],A[1]=Q[1]-B[1],A[2]=Q[2]-B[2],A}function CSQ(A,Q,B){return A[0]=Q[0]*B[0],A[1]=Q[1]*B[1],A[2]=Q[2]*B[2],A}function XSQ(A,Q,B){return A[0]=Q[0]/B[0],A[1]=Q[1]/B[1],A[2]=Q[2]/B[2],A}function Ul0(A,Q){return A[0]=Math.ceil(Q[0]),A[1]=Math.ceil(Q[1]),A[2]=Math.ceil(Q[2]),A}function El0(A,Q){return A[0]=Math.floor(Q[0]),A[1]=Math.floor(Q[1]),A[2]=Math.floor(Q[2]),A}function Kl0(A,Q,B){return A[0]=Math.min(Q[0],B[0]),A[1]=Math.min(Q[1],B[1]),A[2]=Math.min(Q[2],B[2]),A}function Vl0(A,Q,B){return A[0]=Math.max(Q[0],B[0]),A[1]=Math.max(Q[1],B[1]),A[2]=Math.max(Q[2],B[2]),A}function Il0(A,Q){return A[0]=Math.round(Q[0]),A[1]=Math.round(Q[1]),A[2]=Math.round(Q[2]),A}function Hl0(A,Q,B){return A[0]=Q[0]*B,A[1]=Q[1]*B,A[2]=Q[2]*B,A}function Dl0(A,Q,B,Y){return A[0]=Q[0]+B[0]*Y,A[1]=Q[1]+B[1]*Y,A[2]=Q[2]+B[2]*Y,A}function GSQ(A,Q){var B=Q[0]-A[0],Y=Q[1]-A[1],J=Q[2]-A[2];return Math.hypot(B,Y,J)}function FSQ(A,Q){var B=Q[0]-A[0],Y=Q[1]-A[1],J=Q[2]-A[2];return B*B+Y*Y+J*J}function WSQ(A){var Q=A[0],B=A[1],Y=A[2];return Q*Q+B*B+Y*Y}function Nl0(A,Q){return A[0]=-Q[0],A[1]=-Q[1],A[2]=-Q[2],A}function Ll0(A,Q){return A[0]=1/Q[0],A[1]=1/Q[1],A[2]=1/Q[2],A}function ql0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=B*B+Y*Y+J*J;if(C>0)C=1/Math.sqrt(C);return A[0]=Q[0]*C,A[1]=Q[1]*C,A[2]=Q[2]*C,A}function ZSQ(A,Q){return A[0]*Q[0]+A[1]*Q[1]+A[2]*Q[2]}function Ml0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=B[0],G=B[1],F=B[2];return A[0]=J*F-C*G,A[1]=C*X-Y*F,A[2]=Y*G-J*X,A}function zl0(A,Q,B,Y){var J=Q[0],C=Q[1],X=Q[2];return A[0]=J+Y*(B[0]-J),A[1]=C+Y*(B[1]-C),A[2]=X+Y*(B[2]-X),A}function Rl0(A,Q,B,Y,J,C){var X=C*C,G=X*(2*C-3)+1,F=X*(C-2)+C,W=X*(C-1),Z=X*(3-2*C);return A[0]=Q[0]*G+B[0]*F+Y[0]*W+J[0]*Z,A[1]=Q[1]*G+B[1]*F+Y[1]*W+J[1]*Z,A[2]=Q[2]*G+B[2]*F+Y[2]*W+J[2]*Z,A}function wl0(A,Q,B,Y,J,C){var X=1-C,G=X*X,F=C*C,W=G*X,Z=3*C*G,U=3*F*X,$=F*C;return A[0]=Q[0]*W+B[0]*Z+Y[0]*U+J[0]*$,A[1]=Q[1]*W+B[1]*Z+Y[1]*U+J[1]*$,A[2]=Q[2]*W+B[2]*Z+Y[2]*U+J[2]*$,A}function jl0(A,Q){Q=Q||1;var B=hG.RANDOM()*2*Math.PI,Y=hG.RANDOM()*2-1,J=Math.sqrt(1-Y*Y)*Q;return A[0]=Math.cos(B)*J,A[1]=Math.sin(B)*J,A[2]=Y*Q,A}function Ol0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=B[3]*Y+B[7]*J+B[11]*C+B[15];return X=X||1,A[0]=(B[0]*Y+B[4]*J+B[8]*C+B[12])/X,A[1]=(B[1]*Y+B[5]*J+B[9]*C+B[13])/X,A[2]=(B[2]*Y+B[6]*J+B[10]*C+B[14])/X,A}function Pl0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2];return A[0]=Y*B[0]+J*B[3]+C*B[6],A[1]=Y*B[1]+J*B[4]+C*B[7],A[2]=Y*B[2]+J*B[5]+C*B[8],A}function Tl0(A,Q,B){var Y=B[0],J=B[1],C=B[2],X=B[3],G=Q[0],F=Q[1],W=Q[2],Z=J*W-C*F,U=C*G-Y*W,$=Y*F-J*G,E=J*$-C*U,K=C*Z-Y*$,I=Y*U-J*Z,V=X*2;return Z*=V,U*=V,$*=V,E*=2,K*=2,I*=2,A[0]=G+Z+E,A[1]=F+U+K,A[2]=W+$+I,A}function Sl0(A,Q,B,Y){var J=[],C=[];return J[0]=Q[0]-B[0],J[1]=Q[1]-B[1],J[2]=Q[2]-B[2],C[0]=J[0],C[1]=J[1]*Math.cos(Y)-J[2]*Math.sin(Y),C[2]=J[1]*Math.sin(Y)+J[2]*Math.cos(Y),A[0]=C[0]+B[0],A[1]=C[1]+B[1],A[2]=C[2]+B[2],A}function kl0(A,Q,B,Y){var J=[],C=[];return J[0]=Q[0]-B[0],J[1]=Q[1]-B[1],J[2]=Q[2]-B[2],C[0]=J[2]*Math.sin(Y)+J[0]*Math.cos(Y),C[1]=J[1],C[2]=J[2]*Math.cos(Y)-J[0]*Math.sin(Y),A[0]=C[0]+B[0],A[1]=C[1]+B[1],A[2]=C[2]+B[2],A}function _l0(A,Q,B,Y){var J=[],C=[];return J[0]=Q[0]-B[0],J[1]=Q[1]-B[1],J[2]=Q[2]-B[2],C[0]=J[0]*Math.cos(Y)-J[1]*Math.sin(Y),C[1]=J[0]*Math.sin(Y)+J[1]*Math.cos(Y),C[2]=J[2],A[0]=C[0]+B[0],A[1]=C[1]+B[1],A[2]=C[2]+B[2],A}function vl0(A,Q){var B=A[0],Y=A[1],J=A[2],C=Q[0],X=Q[1],G=Q[2],F=Math.sqrt(B*B+Y*Y+J*J),W=Math.sqrt(C*C+X*X+G*G),Z=F*W,U=Z&&ZSQ(A,Q)/Z;return Math.acos(Math.min(Math.max(U,-1),1))}function yl0(A){return A[0]=0,A[1]=0,A[2]=0,A}function hl0(A){return"vec3("+A[0]+", "+A[1]+", "+A[2]+")"}function gl0(A,Q){return A[0]===Q[0]&&A[1]===Q[1]&&A[2]===Q[2]}function xl0(A,Q){var B=A[0],Y=A[1],J=A[2],C=Q[0],X=Q[1],G=Q[2];return Math.abs(B-C)<=hG.EPSILON*Math.max(1,Math.abs(B),Math.abs(C))&&Math.abs(Y-X)<=hG.EPSILON*Math.max(1,Math.abs(Y),Math.abs(X))&&Math.abs(J-G)<=hG.EPSILON*Math.max(1,Math.abs(J),Math.abs(G))}var fl0=JSQ;$SQ.sub=fl0;var bl0=CSQ;$SQ.mul=bl0;var ml0=XSQ;$SQ.div=ml0;var ul0=GSQ;$SQ.dist=ul0;var dl0=FSQ;$SQ.sqrDist=dl0;var cl0=YSQ;$SQ.len=cl0;var ll0=WSQ;$SQ.sqrLen=ll0;var pl0=function(){var A=BSQ();return function(Q,B,Y,J,C,X){var G,F;if(!B)B=3;if(!Y)Y=0;if(J)F=Math.min(J*B+Y,Q.length);else F=Q.length;for(G=Y;G{function Rk(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")Rk=function(B){return typeof B};else Rk=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return Rk(A)}Object.defineProperty(MSQ,"__esModule",{value:!0});MSQ.create=KSQ;MSQ.clone=mp0;MSQ.fromValues=up0;MSQ.copy=dp0;MSQ.set=cp0;MSQ.add=lp0;MSQ.subtract=VSQ;MSQ.multiply=ISQ;MSQ.divide=HSQ;MSQ.ceil=pp0;MSQ.floor=ip0;MSQ.min=np0;MSQ.max=sp0;MSQ.round=rp0;MSQ.scale=ap0;MSQ.scaleAndAdd=op0;MSQ.distance=DSQ;MSQ.squaredDistance=NSQ;MSQ.length=LSQ;MSQ.squaredLength=qSQ;MSQ.negate=tp0;MSQ.inverse=ep0;MSQ.normalize=Ai0;MSQ.dot=Qi0;MSQ.cross=Bi0;MSQ.lerp=Yi0;MSQ.random=Ji0;MSQ.transformMat4=Ci0;MSQ.transformQuat=Xi0;MSQ.zero=Gi0;MSQ.str=Fi0;MSQ.exactEquals=Wi0;MSQ.equals=Zi0;MSQ.forEach=MSQ.sqrLen=MSQ.len=MSQ.sqrDist=MSQ.dist=MSQ.div=MSQ.mul=MSQ.sub=void 0;var CC=bp0(E1());function ESQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(ESQ=function(J){return J?B:Q})(A)}function bp0(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||Rk(A)!=="object"&&typeof A!=="function")return{default:A};var B=ESQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function KSQ(){var A=new CC.ARRAY_TYPE(4);if(CC.ARRAY_TYPE!=Float32Array)A[0]=0,A[1]=0,A[2]=0,A[3]=0;return A}function mp0(A){var Q=new CC.ARRAY_TYPE(4);return Q[0]=A[0],Q[1]=A[1],Q[2]=A[2],Q[3]=A[3],Q}function up0(A,Q,B,Y){var J=new CC.ARRAY_TYPE(4);return J[0]=A,J[1]=Q,J[2]=B,J[3]=Y,J}function dp0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A[3]=Q[3],A}function cp0(A,Q,B,Y,J){return A[0]=Q,A[1]=B,A[2]=Y,A[3]=J,A}function lp0(A,Q,B){return A[0]=Q[0]+B[0],A[1]=Q[1]+B[1],A[2]=Q[2]+B[2],A[3]=Q[3]+B[3],A}function VSQ(A,Q,B){return A[0]=Q[0]-B[0],A[1]=Q[1]-B[1],A[2]=Q[2]-B[2],A[3]=Q[3]-B[3],A}function ISQ(A,Q,B){return A[0]=Q[0]*B[0],A[1]=Q[1]*B[1],A[2]=Q[2]*B[2],A[3]=Q[3]*B[3],A}function HSQ(A,Q,B){return A[0]=Q[0]/B[0],A[1]=Q[1]/B[1],A[2]=Q[2]/B[2],A[3]=Q[3]/B[3],A}function pp0(A,Q){return A[0]=Math.ceil(Q[0]),A[1]=Math.ceil(Q[1]),A[2]=Math.ceil(Q[2]),A[3]=Math.ceil(Q[3]),A}function ip0(A,Q){return A[0]=Math.floor(Q[0]),A[1]=Math.floor(Q[1]),A[2]=Math.floor(Q[2]),A[3]=Math.floor(Q[3]),A}function np0(A,Q,B){return A[0]=Math.min(Q[0],B[0]),A[1]=Math.min(Q[1],B[1]),A[2]=Math.min(Q[2],B[2]),A[3]=Math.min(Q[3],B[3]),A}function sp0(A,Q,B){return A[0]=Math.max(Q[0],B[0]),A[1]=Math.max(Q[1],B[1]),A[2]=Math.max(Q[2],B[2]),A[3]=Math.max(Q[3],B[3]),A}function rp0(A,Q){return A[0]=Math.round(Q[0]),A[1]=Math.round(Q[1]),A[2]=Math.round(Q[2]),A[3]=Math.round(Q[3]),A}function ap0(A,Q,B){return A[0]=Q[0]*B,A[1]=Q[1]*B,A[2]=Q[2]*B,A[3]=Q[3]*B,A}function op0(A,Q,B,Y){return A[0]=Q[0]+B[0]*Y,A[1]=Q[1]+B[1]*Y,A[2]=Q[2]+B[2]*Y,A[3]=Q[3]+B[3]*Y,A}function DSQ(A,Q){var B=Q[0]-A[0],Y=Q[1]-A[1],J=Q[2]-A[2],C=Q[3]-A[3];return Math.hypot(B,Y,J,C)}function NSQ(A,Q){var B=Q[0]-A[0],Y=Q[1]-A[1],J=Q[2]-A[2],C=Q[3]-A[3];return B*B+Y*Y+J*J+C*C}function LSQ(A){var Q=A[0],B=A[1],Y=A[2],J=A[3];return Math.hypot(Q,B,Y,J)}function qSQ(A){var Q=A[0],B=A[1],Y=A[2],J=A[3];return Q*Q+B*B+Y*Y+J*J}function tp0(A,Q){return A[0]=-Q[0],A[1]=-Q[1],A[2]=-Q[2],A[3]=-Q[3],A}function ep0(A,Q){return A[0]=1/Q[0],A[1]=1/Q[1],A[2]=1/Q[2],A[3]=1/Q[3],A}function Ai0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=B*B+Y*Y+J*J+C*C;if(X>0)X=1/Math.sqrt(X);return A[0]=B*X,A[1]=Y*X,A[2]=J*X,A[3]=C*X,A}function Qi0(A,Q){return A[0]*Q[0]+A[1]*Q[1]+A[2]*Q[2]+A[3]*Q[3]}function Bi0(A,Q,B,Y){var J=B[0]*Y[1]-B[1]*Y[0],C=B[0]*Y[2]-B[2]*Y[0],X=B[0]*Y[3]-B[3]*Y[0],G=B[1]*Y[2]-B[2]*Y[1],F=B[1]*Y[3]-B[3]*Y[1],W=B[2]*Y[3]-B[3]*Y[2],Z=Q[0],U=Q[1],$=Q[2],E=Q[3];return A[0]=U*W-$*F+E*G,A[1]=-(Z*W)+$*X-E*C,A[2]=Z*F-U*X+E*J,A[3]=-(Z*G)+U*C-$*J,A}function Yi0(A,Q,B,Y){var J=Q[0],C=Q[1],X=Q[2],G=Q[3];return A[0]=J+Y*(B[0]-J),A[1]=C+Y*(B[1]-C),A[2]=X+Y*(B[2]-X),A[3]=G+Y*(B[3]-G),A}function Ji0(A,Q){Q=Q||1;var B,Y,J,C,X,G;do B=CC.RANDOM()*2-1,Y=CC.RANDOM()*2-1,X=B*B+Y*Y;while(X>=1);do J=CC.RANDOM()*2-1,C=CC.RANDOM()*2-1,G=J*J+C*C;while(G>=1);var F=Math.sqrt((1-X)/G);return A[0]=Q*B,A[1]=Q*Y,A[2]=Q*J*F,A[3]=Q*C*F,A}function Ci0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3];return A[0]=B[0]*Y+B[4]*J+B[8]*C+B[12]*X,A[1]=B[1]*Y+B[5]*J+B[9]*C+B[13]*X,A[2]=B[2]*Y+B[6]*J+B[10]*C+B[14]*X,A[3]=B[3]*Y+B[7]*J+B[11]*C+B[15]*X,A}function Xi0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=B[0],G=B[1],F=B[2],W=B[3],Z=W*Y+G*C-F*J,U=W*J+F*Y-X*C,$=W*C+X*J-G*Y,E=-X*Y-G*J-F*C;return A[0]=Z*W+E*-X+U*-F-$*-G,A[1]=U*W+E*-G+$*-X-Z*-F,A[2]=$*W+E*-F+Z*-G-U*-X,A[3]=Q[3],A}function Gi0(A){return A[0]=0,A[1]=0,A[2]=0,A[3]=0,A}function Fi0(A){return"vec4("+A[0]+", "+A[1]+", "+A[2]+", "+A[3]+")"}function Wi0(A,Q){return A[0]===Q[0]&&A[1]===Q[1]&&A[2]===Q[2]&&A[3]===Q[3]}function Zi0(A,Q){var B=A[0],Y=A[1],J=A[2],C=A[3],X=Q[0],G=Q[1],F=Q[2],W=Q[3];return Math.abs(B-X)<=CC.EPSILON*Math.max(1,Math.abs(B),Math.abs(X))&&Math.abs(Y-G)<=CC.EPSILON*Math.max(1,Math.abs(Y),Math.abs(G))&&Math.abs(J-F)<=CC.EPSILON*Math.max(1,Math.abs(J),Math.abs(F))&&Math.abs(C-W)<=CC.EPSILON*Math.max(1,Math.abs(C),Math.abs(W))}var $i0=VSQ;MSQ.sub=$i0;var Ui0=ISQ;MSQ.mul=Ui0;var Ei0=HSQ;MSQ.div=Ei0;var Ki0=DSQ;MSQ.dist=Ki0;var Vi0=NSQ;MSQ.sqrDist=Vi0;var Ii0=LSQ;MSQ.len=Ii0;var Hi0=qSQ;MSQ.sqrLen=Hi0;var Di0=function(){var A=KSQ();return function(Q,B,Y,J,C,X){var G,F;if(!B)B=4;if(!Y)Y=0;if(J)F=Math.min(J*B+Y,Q.length);else F=Q.length;for(G=Y;G{function wk(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")wk=function(B){return typeof B};else wk=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return wk(A)}Object.defineProperty(ySQ,"__esModule",{value:!0});ySQ.create=go;ySQ.identity=Xn0;ySQ.setAxisAngle=wSQ;ySQ.getAxisAngle=Gn0;ySQ.getAngle=Fn0;ySQ.multiply=jSQ;ySQ.rotateX=Wn0;ySQ.rotateY=Zn0;ySQ.rotateZ=$n0;ySQ.calculateW=Un0;ySQ.exp=OSQ;ySQ.ln=PSQ;ySQ.pow=En0;ySQ.slerp=jk;ySQ.random=Kn0;ySQ.invert=Vn0;ySQ.conjugate=In0;ySQ.fromMat3=TSQ;ySQ.fromEuler=Hn0;ySQ.str=Dn0;ySQ.setAxes=ySQ.sqlerp=ySQ.rotationTo=ySQ.equals=ySQ.exactEquals=ySQ.normalize=ySQ.sqrLen=ySQ.squaredLength=ySQ.len=ySQ.length=ySQ.lerp=ySQ.dot=ySQ.scale=ySQ.mul=ySQ.add=ySQ.set=ySQ.copy=ySQ.fromValues=ySQ.clone=void 0;var J4=Ok(E1()),Cn0=Ok(_o()),gG=Ok(yo()),l8=Ok(ho());function RSQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(RSQ=function(J){return J?B:Q})(A)}function Ok(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||wk(A)!=="object"&&typeof A!=="function")return{default:A};var B=RSQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function go(){var A=new J4.ARRAY_TYPE(4);if(J4.ARRAY_TYPE!=Float32Array)A[0]=0,A[1]=0,A[2]=0;return A[3]=1,A}function Xn0(A){return A[0]=0,A[1]=0,A[2]=0,A[3]=1,A}function wSQ(A,Q,B){B=B*0.5;var Y=Math.sin(B);return A[0]=Y*Q[0],A[1]=Y*Q[1],A[2]=Y*Q[2],A[3]=Math.cos(B),A}function Gn0(A,Q){var B=Math.acos(Q[3])*2,Y=Math.sin(B/2);if(Y>J4.EPSILON)A[0]=Q[0]/Y,A[1]=Q[1]/Y,A[2]=Q[2]/Y;else A[0]=1,A[1]=0,A[2]=0;return B}function Fn0(A,Q){var B=kSQ(A,Q);return Math.acos(2*B*B-1)}function jSQ(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=B[0],F=B[1],W=B[2],Z=B[3];return A[0]=Y*Z+X*G+J*W-C*F,A[1]=J*Z+X*F+C*G-Y*W,A[2]=C*Z+X*W+Y*F-J*G,A[3]=X*Z-Y*G-J*F-C*W,A}function Wn0(A,Q,B){B*=0.5;var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Math.sin(B),F=Math.cos(B);return A[0]=Y*F+X*G,A[1]=J*F+C*G,A[2]=C*F-J*G,A[3]=X*F-Y*G,A}function Zn0(A,Q,B){B*=0.5;var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Math.sin(B),F=Math.cos(B);return A[0]=Y*F-C*G,A[1]=J*F+X*G,A[2]=C*F+Y*G,A[3]=X*F-J*G,A}function $n0(A,Q,B){B*=0.5;var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Math.sin(B),F=Math.cos(B);return A[0]=Y*F+J*G,A[1]=J*F-Y*G,A[2]=C*F+X*G,A[3]=X*F-C*G,A}function Un0(A,Q){var B=Q[0],Y=Q[1],J=Q[2];return A[0]=B,A[1]=Y,A[2]=J,A[3]=Math.sqrt(Math.abs(1-B*B-Y*Y-J*J)),A}function OSQ(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Math.sqrt(B*B+Y*Y+J*J),G=Math.exp(C),F=X>0?G*Math.sin(X)/X:0;return A[0]=B*F,A[1]=Y*F,A[2]=J*F,A[3]=G*Math.cos(X),A}function PSQ(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Math.sqrt(B*B+Y*Y+J*J),G=X>0?Math.atan2(X,C)/X:0;return A[0]=B*G,A[1]=Y*G,A[2]=J*G,A[3]=0.5*Math.log(B*B+Y*Y+J*J+C*C),A}function En0(A,Q,B){return PSQ(A,Q),SSQ(A,A,B),OSQ(A,A),A}function jk(A,Q,B,Y){var J=Q[0],C=Q[1],X=Q[2],G=Q[3],F=B[0],W=B[1],Z=B[2],U=B[3],$,E,K,I,V;if(E=J*F+C*W+X*Z+G*U,E<0)E=-E,F=-F,W=-W,Z=-Z,U=-U;if(1-E>J4.EPSILON)$=Math.acos(E),K=Math.sin($),I=Math.sin((1-Y)*$)/K,V=Math.sin(Y*$)/K;else I=1-Y,V=Y;return A[0]=I*J+V*F,A[1]=I*C+V*W,A[2]=I*X+V*Z,A[3]=I*G+V*U,A}function Kn0(A){var Q=J4.RANDOM(),B=J4.RANDOM(),Y=J4.RANDOM(),J=Math.sqrt(1-Q),C=Math.sqrt(Q);return A[0]=J*Math.sin(2*Math.PI*B),A[1]=J*Math.cos(2*Math.PI*B),A[2]=C*Math.sin(2*Math.PI*Y),A[3]=C*Math.cos(2*Math.PI*Y),A}function Vn0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=B*B+Y*Y+J*J+C*C,G=X?1/X:0;return A[0]=-B*G,A[1]=-Y*G,A[2]=-J*G,A[3]=C*G,A}function In0(A,Q){return A[0]=-Q[0],A[1]=-Q[1],A[2]=-Q[2],A[3]=Q[3],A}function TSQ(A,Q){var B=Q[0]+Q[4]+Q[8],Y;if(B>0)Y=Math.sqrt(B+1),A[3]=0.5*Y,Y=0.5/Y,A[0]=(Q[5]-Q[7])*Y,A[1]=(Q[6]-Q[2])*Y,A[2]=(Q[1]-Q[3])*Y;else{var J=0;if(Q[4]>Q[0])J=1;if(Q[8]>Q[J*3+J])J=2;var C=(J+1)%3,X=(J+2)%3;Y=Math.sqrt(Q[J*3+J]-Q[C*3+C]-Q[X*3+X]+1),A[J]=0.5*Y,Y=0.5/Y,A[3]=(Q[C*3+X]-Q[X*3+C])*Y,A[C]=(Q[C*3+J]+Q[J*3+C])*Y,A[X]=(Q[X*3+J]+Q[J*3+X])*Y}return A}function Hn0(A,Q,B,Y){var J=0.5*Math.PI/180;Q*=J,B*=J,Y*=J;var C=Math.sin(Q),X=Math.cos(Q),G=Math.sin(B),F=Math.cos(B),W=Math.sin(Y),Z=Math.cos(Y);return A[0]=C*F*Z-X*G*W,A[1]=X*G*Z+C*F*W,A[2]=X*F*W-C*G*Z,A[3]=X*F*Z+C*G*W,A}function Dn0(A){return"quat("+A[0]+", "+A[1]+", "+A[2]+", "+A[3]+")"}var Nn0=l8.clone;ySQ.clone=Nn0;var Ln0=l8.fromValues;ySQ.fromValues=Ln0;var qn0=l8.copy;ySQ.copy=qn0;var Mn0=l8.set;ySQ.set=Mn0;var zn0=l8.add;ySQ.add=zn0;var Rn0=jSQ;ySQ.mul=Rn0;var SSQ=l8.scale;ySQ.scale=SSQ;var kSQ=l8.dot;ySQ.dot=kSQ;var wn0=l8.lerp;ySQ.lerp=wn0;var _SQ=l8.length;ySQ.length=_SQ;var jn0=_SQ;ySQ.len=jn0;var vSQ=l8.squaredLength;ySQ.squaredLength=vSQ;var On0=vSQ;ySQ.sqrLen=On0;var xo=l8.normalize;ySQ.normalize=xo;var Pn0=l8.exactEquals;ySQ.exactEquals=Pn0;var Tn0=l8.equals;ySQ.equals=Tn0;var Sn0=function(){var A=gG.create(),Q=gG.fromValues(1,0,0),B=gG.fromValues(0,1,0);return function(Y,J,C){var X=gG.dot(J,C);if(X<-0.999999){if(gG.cross(A,Q,J),gG.len(A)<0.000001)gG.cross(A,B,J);return gG.normalize(A,A),wSQ(Y,A,Math.PI),Y}else if(X>0.999999)return Y[0]=0,Y[1]=0,Y[2]=0,Y[3]=1,Y;else return gG.cross(A,J,C),Y[0]=A[0],Y[1]=A[1],Y[2]=A[2],Y[3]=1+X,xo(Y,Y)}}();ySQ.rotationTo=Sn0;var kn0=function(){var A=go(),Q=go();return function(B,Y,J,C,X,G){return jk(A,Y,X,G),jk(Q,J,C,G),jk(B,A,Q,2*G*(1-G)),B}}();ySQ.sqlerp=kn0;var _n0=function(){var A=Cn0.create();return function(Q,B,Y,J){return A[0]=Y[0],A[3]=Y[1],A[6]=Y[2],A[1]=J[0],A[4]=J[1],A[7]=J[2],A[2]=-B[0],A[5]=-B[1],A[8]=-B[2],xo(Q,TSQ(Q,A))}}();ySQ.setAxes=_n0});var pSQ=R((cSQ)=>{function Pk(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")Pk=function(B){return typeof B};else Pk=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return Pk(A)}Object.defineProperty(cSQ,"__esModule",{value:!0});cSQ.create=Hs0;cSQ.clone=Ds0;cSQ.fromValues=Ns0;cSQ.fromRotationTranslationValues=Ls0;cSQ.fromRotationTranslation=fSQ;cSQ.fromTranslation=qs0;cSQ.fromRotation=Ms0;cSQ.fromMat4=zs0;cSQ.copy=bSQ;cSQ.identity=Rs0;cSQ.set=ws0;cSQ.getDual=Os0;cSQ.setDual=Ts0;cSQ.getTranslation=Ss0;cSQ.translate=ks0;cSQ.rotateX=_s0;cSQ.rotateY=vs0;cSQ.rotateZ=ys0;cSQ.rotateByQuatAppend=hs0;cSQ.rotateByQuatPrepend=gs0;cSQ.rotateAroundAxis=xs0;cSQ.add=fs0;cSQ.multiply=mSQ;cSQ.scale=ms0;cSQ.lerp=us0;cSQ.invert=ds0;cSQ.conjugate=cs0;cSQ.normalize=is0;cSQ.str=ns0;cSQ.exactEquals=ss0;cSQ.equals=rs0;cSQ.sqrLen=cSQ.squaredLength=cSQ.len=cSQ.length=cSQ.dot=cSQ.mul=cSQ.setReal=cSQ.getReal=void 0;var L9=bo(E1()),xG=bo(fo()),gSQ=bo(vo());function xSQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(xSQ=function(J){return J?B:Q})(A)}function bo(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||Pk(A)!=="object"&&typeof A!=="function")return{default:A};var B=xSQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function Hs0(){var A=new L9.ARRAY_TYPE(8);if(L9.ARRAY_TYPE!=Float32Array)A[0]=0,A[1]=0,A[2]=0,A[4]=0,A[5]=0,A[6]=0,A[7]=0;return A[3]=1,A}function Ds0(A){var Q=new L9.ARRAY_TYPE(8);return Q[0]=A[0],Q[1]=A[1],Q[2]=A[2],Q[3]=A[3],Q[4]=A[4],Q[5]=A[5],Q[6]=A[6],Q[7]=A[7],Q}function Ns0(A,Q,B,Y,J,C,X,G){var F=new L9.ARRAY_TYPE(8);return F[0]=A,F[1]=Q,F[2]=B,F[3]=Y,F[4]=J,F[5]=C,F[6]=X,F[7]=G,F}function Ls0(A,Q,B,Y,J,C,X){var G=new L9.ARRAY_TYPE(8);G[0]=A,G[1]=Q,G[2]=B,G[3]=Y;var F=J*0.5,W=C*0.5,Z=X*0.5;return G[4]=F*Y+W*B-Z*Q,G[5]=W*Y+Z*A-F*B,G[6]=Z*Y+F*Q-W*A,G[7]=-F*A-W*Q-Z*B,G}function fSQ(A,Q,B){var Y=B[0]*0.5,J=B[1]*0.5,C=B[2]*0.5,X=Q[0],G=Q[1],F=Q[2],W=Q[3];return A[0]=X,A[1]=G,A[2]=F,A[3]=W,A[4]=Y*W+J*F-C*G,A[5]=J*W+C*X-Y*F,A[6]=C*W+Y*G-J*X,A[7]=-Y*X-J*G-C*F,A}function qs0(A,Q){return A[0]=0,A[1]=0,A[2]=0,A[3]=1,A[4]=Q[0]*0.5,A[5]=Q[1]*0.5,A[6]=Q[2]*0.5,A[7]=0,A}function Ms0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A[3]=Q[3],A[4]=0,A[5]=0,A[6]=0,A[7]=0,A}function zs0(A,Q){var B=xG.create();gSQ.getRotation(B,Q);var Y=new L9.ARRAY_TYPE(3);return gSQ.getTranslation(Y,Q),fSQ(A,B,Y),A}function bSQ(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A[3]=Q[3],A[4]=Q[4],A[5]=Q[5],A[6]=Q[6],A[7]=Q[7],A}function Rs0(A){return A[0]=0,A[1]=0,A[2]=0,A[3]=1,A[4]=0,A[5]=0,A[6]=0,A[7]=0,A}function ws0(A,Q,B,Y,J,C,X,G,F){return A[0]=Q,A[1]=B,A[2]=Y,A[3]=J,A[4]=C,A[5]=X,A[6]=G,A[7]=F,A}var js0=xG.copy;cSQ.getReal=js0;function Os0(A,Q){return A[0]=Q[4],A[1]=Q[5],A[2]=Q[6],A[3]=Q[7],A}var Ps0=xG.copy;cSQ.setReal=Ps0;function Ts0(A,Q){return A[4]=Q[0],A[5]=Q[1],A[6]=Q[2],A[7]=Q[3],A}function Ss0(A,Q){var B=Q[4],Y=Q[5],J=Q[6],C=Q[7],X=-Q[0],G=-Q[1],F=-Q[2],W=Q[3];return A[0]=(B*W+C*X+Y*F-J*G)*2,A[1]=(Y*W+C*G+J*X-B*F)*2,A[2]=(J*W+C*F+B*G-Y*X)*2,A}function ks0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=B[0]*0.5,F=B[1]*0.5,W=B[2]*0.5,Z=Q[4],U=Q[5],$=Q[6],E=Q[7];return A[0]=Y,A[1]=J,A[2]=C,A[3]=X,A[4]=X*G+J*W-C*F+Z,A[5]=X*F+C*G-Y*W+U,A[6]=X*W+Y*F-J*G+$,A[7]=-Y*G-J*F-C*W+E,A}function _s0(A,Q,B){var Y=-Q[0],J=-Q[1],C=-Q[2],X=Q[3],G=Q[4],F=Q[5],W=Q[6],Z=Q[7],U=G*X+Z*Y+F*C-W*J,$=F*X+Z*J+W*Y-G*C,E=W*X+Z*C+G*J-F*Y,K=Z*X-G*Y-F*J-W*C;return xG.rotateX(A,Q,B),Y=A[0],J=A[1],C=A[2],X=A[3],A[4]=U*X+K*Y+$*C-E*J,A[5]=$*X+K*J+E*Y-U*C,A[6]=E*X+K*C+U*J-$*Y,A[7]=K*X-U*Y-$*J-E*C,A}function vs0(A,Q,B){var Y=-Q[0],J=-Q[1],C=-Q[2],X=Q[3],G=Q[4],F=Q[5],W=Q[6],Z=Q[7],U=G*X+Z*Y+F*C-W*J,$=F*X+Z*J+W*Y-G*C,E=W*X+Z*C+G*J-F*Y,K=Z*X-G*Y-F*J-W*C;return xG.rotateY(A,Q,B),Y=A[0],J=A[1],C=A[2],X=A[3],A[4]=U*X+K*Y+$*C-E*J,A[5]=$*X+K*J+E*Y-U*C,A[6]=E*X+K*C+U*J-$*Y,A[7]=K*X-U*Y-$*J-E*C,A}function ys0(A,Q,B){var Y=-Q[0],J=-Q[1],C=-Q[2],X=Q[3],G=Q[4],F=Q[5],W=Q[6],Z=Q[7],U=G*X+Z*Y+F*C-W*J,$=F*X+Z*J+W*Y-G*C,E=W*X+Z*C+G*J-F*Y,K=Z*X-G*Y-F*J-W*C;return xG.rotateZ(A,Q,B),Y=A[0],J=A[1],C=A[2],X=A[3],A[4]=U*X+K*Y+$*C-E*J,A[5]=$*X+K*J+E*Y-U*C,A[6]=E*X+K*C+U*J-$*Y,A[7]=K*X-U*Y-$*J-E*C,A}function hs0(A,Q,B){var Y=B[0],J=B[1],C=B[2],X=B[3],G=Q[0],F=Q[1],W=Q[2],Z=Q[3];return A[0]=G*X+Z*Y+F*C-W*J,A[1]=F*X+Z*J+W*Y-G*C,A[2]=W*X+Z*C+G*J-F*Y,A[3]=Z*X-G*Y-F*J-W*C,G=Q[4],F=Q[5],W=Q[6],Z=Q[7],A[4]=G*X+Z*Y+F*C-W*J,A[5]=F*X+Z*J+W*Y-G*C,A[6]=W*X+Z*C+G*J-F*Y,A[7]=Z*X-G*Y-F*J-W*C,A}function gs0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=B[0],F=B[1],W=B[2],Z=B[3];return A[0]=Y*Z+X*G+J*W-C*F,A[1]=J*Z+X*F+C*G-Y*W,A[2]=C*Z+X*W+Y*F-J*G,A[3]=X*Z-Y*G-J*F-C*W,G=B[4],F=B[5],W=B[6],Z=B[7],A[4]=Y*Z+X*G+J*W-C*F,A[5]=J*Z+X*F+C*G-Y*W,A[6]=C*Z+X*W+Y*F-J*G,A[7]=X*Z-Y*G-J*F-C*W,A}function xs0(A,Q,B,Y){if(Math.abs(Y)0){B=Math.sqrt(B);var Y=Q[0]/B,J=Q[1]/B,C=Q[2]/B,X=Q[3]/B,G=Q[4],F=Q[5],W=Q[6],Z=Q[7],U=Y*G+J*F+C*W+X*Z;A[0]=Y,A[1]=J,A[2]=C,A[3]=X,A[4]=(G-Y*U)/B,A[5]=(F-J*U)/B,A[6]=(W-C*U)/B,A[7]=(Z-X*U)/B}return A}function ns0(A){return"quat2("+A[0]+", "+A[1]+", "+A[2]+", "+A[3]+", "+A[4]+", "+A[5]+", "+A[6]+", "+A[7]+")"}function ss0(A,Q){return A[0]===Q[0]&&A[1]===Q[1]&&A[2]===Q[2]&&A[3]===Q[3]&&A[4]===Q[4]&&A[5]===Q[5]&&A[6]===Q[6]&&A[7]===Q[7]}function rs0(A,Q){var B=A[0],Y=A[1],J=A[2],C=A[3],X=A[4],G=A[5],F=A[6],W=A[7],Z=Q[0],U=Q[1],$=Q[2],E=Q[3],K=Q[4],I=Q[5],V=Q[6],H=Q[7];return Math.abs(B-Z)<=L9.EPSILON*Math.max(1,Math.abs(B),Math.abs(Z))&&Math.abs(Y-U)<=L9.EPSILON*Math.max(1,Math.abs(Y),Math.abs(U))&&Math.abs(J-$)<=L9.EPSILON*Math.max(1,Math.abs(J),Math.abs($))&&Math.abs(C-E)<=L9.EPSILON*Math.max(1,Math.abs(C),Math.abs(E))&&Math.abs(X-K)<=L9.EPSILON*Math.max(1,Math.abs(X),Math.abs(K))&&Math.abs(G-I)<=L9.EPSILON*Math.max(1,Math.abs(G),Math.abs(I))&&Math.abs(F-V)<=L9.EPSILON*Math.max(1,Math.abs(F),Math.abs(V))&&Math.abs(W-H)<=L9.EPSILON*Math.max(1,Math.abs(W),Math.abs(H))}});var YkQ=R((QkQ)=>{function Sk(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")Sk=function(B){return typeof B};else Sk=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return Sk(A)}Object.defineProperty(QkQ,"__esModule",{value:!0});QkQ.create=nSQ;QkQ.clone=hr0;QkQ.fromValues=gr0;QkQ.copy=xr0;QkQ.set=fr0;QkQ.add=br0;QkQ.subtract=sSQ;QkQ.multiply=rSQ;QkQ.divide=aSQ;QkQ.ceil=mr0;QkQ.floor=ur0;QkQ.min=dr0;QkQ.max=cr0;QkQ.round=lr0;QkQ.scale=pr0;QkQ.scaleAndAdd=ir0;QkQ.distance=oSQ;QkQ.squaredDistance=tSQ;QkQ.length=eSQ;QkQ.squaredLength=AkQ;QkQ.negate=nr0;QkQ.inverse=sr0;QkQ.normalize=rr0;QkQ.dot=ar0;QkQ.cross=or0;QkQ.lerp=tr0;QkQ.random=er0;QkQ.transformMat2=Aa0;QkQ.transformMat2d=Qa0;QkQ.transformMat3=Ba0;QkQ.transformMat4=Ya0;QkQ.rotate=Ja0;QkQ.angle=Ca0;QkQ.zero=Xa0;QkQ.str=Ga0;QkQ.exactEquals=Fa0;QkQ.equals=Wa0;QkQ.forEach=QkQ.sqrLen=QkQ.sqrDist=QkQ.dist=QkQ.div=QkQ.mul=QkQ.sub=QkQ.len=void 0;var C4=yr0(E1());function iSQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(iSQ=function(J){return J?B:Q})(A)}function yr0(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||Sk(A)!=="object"&&typeof A!=="function")return{default:A};var B=iSQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function nSQ(){var A=new C4.ARRAY_TYPE(2);if(C4.ARRAY_TYPE!=Float32Array)A[0]=0,A[1]=0;return A}function hr0(A){var Q=new C4.ARRAY_TYPE(2);return Q[0]=A[0],Q[1]=A[1],Q}function gr0(A,Q){var B=new C4.ARRAY_TYPE(2);return B[0]=A,B[1]=Q,B}function xr0(A,Q){return A[0]=Q[0],A[1]=Q[1],A}function fr0(A,Q,B){return A[0]=Q,A[1]=B,A}function br0(A,Q,B){return A[0]=Q[0]+B[0],A[1]=Q[1]+B[1],A}function sSQ(A,Q,B){return A[0]=Q[0]-B[0],A[1]=Q[1]-B[1],A}function rSQ(A,Q,B){return A[0]=Q[0]*B[0],A[1]=Q[1]*B[1],A}function aSQ(A,Q,B){return A[0]=Q[0]/B[0],A[1]=Q[1]/B[1],A}function mr0(A,Q){return A[0]=Math.ceil(Q[0]),A[1]=Math.ceil(Q[1]),A}function ur0(A,Q){return A[0]=Math.floor(Q[0]),A[1]=Math.floor(Q[1]),A}function dr0(A,Q,B){return A[0]=Math.min(Q[0],B[0]),A[1]=Math.min(Q[1],B[1]),A}function cr0(A,Q,B){return A[0]=Math.max(Q[0],B[0]),A[1]=Math.max(Q[1],B[1]),A}function lr0(A,Q){return A[0]=Math.round(Q[0]),A[1]=Math.round(Q[1]),A}function pr0(A,Q,B){return A[0]=Q[0]*B,A[1]=Q[1]*B,A}function ir0(A,Q,B,Y){return A[0]=Q[0]+B[0]*Y,A[1]=Q[1]+B[1]*Y,A}function oSQ(A,Q){var B=Q[0]-A[0],Y=Q[1]-A[1];return Math.hypot(B,Y)}function tSQ(A,Q){var B=Q[0]-A[0],Y=Q[1]-A[1];return B*B+Y*Y}function eSQ(A){var Q=A[0],B=A[1];return Math.hypot(Q,B)}function AkQ(A){var Q=A[0],B=A[1];return Q*Q+B*B}function nr0(A,Q){return A[0]=-Q[0],A[1]=-Q[1],A}function sr0(A,Q){return A[0]=1/Q[0],A[1]=1/Q[1],A}function rr0(A,Q){var B=Q[0],Y=Q[1],J=B*B+Y*Y;if(J>0)J=1/Math.sqrt(J);return A[0]=Q[0]*J,A[1]=Q[1]*J,A}function ar0(A,Q){return A[0]*Q[0]+A[1]*Q[1]}function or0(A,Q,B){var Y=Q[0]*B[1]-Q[1]*B[0];return A[0]=A[1]=0,A[2]=Y,A}function tr0(A,Q,B,Y){var J=Q[0],C=Q[1];return A[0]=J+Y*(B[0]-J),A[1]=C+Y*(B[1]-C),A}function er0(A,Q){Q=Q||1;var B=C4.RANDOM()*2*Math.PI;return A[0]=Math.cos(B)*Q,A[1]=Math.sin(B)*Q,A}function Aa0(A,Q,B){var Y=Q[0],J=Q[1];return A[0]=B[0]*Y+B[2]*J,A[1]=B[1]*Y+B[3]*J,A}function Qa0(A,Q,B){var Y=Q[0],J=Q[1];return A[0]=B[0]*Y+B[2]*J+B[4],A[1]=B[1]*Y+B[3]*J+B[5],A}function Ba0(A,Q,B){var Y=Q[0],J=Q[1];return A[0]=B[0]*Y+B[3]*J+B[6],A[1]=B[1]*Y+B[4]*J+B[7],A}function Ya0(A,Q,B){var Y=Q[0],J=Q[1];return A[0]=B[0]*Y+B[4]*J+B[12],A[1]=B[1]*Y+B[5]*J+B[13],A}function Ja0(A,Q,B,Y){var J=Q[0]-B[0],C=Q[1]-B[1],X=Math.sin(Y),G=Math.cos(Y);return A[0]=J*G-C*X+B[0],A[1]=J*X+C*G+B[1],A}function Ca0(A,Q){var B=A[0],Y=A[1],J=Q[0],C=Q[1],X=Math.sqrt(B*B+Y*Y)*Math.sqrt(J*J+C*C),G=X&&(B*J+Y*C)/X;return Math.acos(Math.min(Math.max(G,-1),1))}function Xa0(A){return A[0]=0,A[1]=0,A}function Ga0(A){return"vec2("+A[0]+", "+A[1]+")"}function Fa0(A,Q){return A[0]===Q[0]&&A[1]===Q[1]}function Wa0(A,Q){var B=A[0],Y=A[1],J=Q[0],C=Q[1];return Math.abs(B-J)<=C4.EPSILON*Math.max(1,Math.abs(B),Math.abs(J))&&Math.abs(Y-C)<=C4.EPSILON*Math.max(1,Math.abs(Y),Math.abs(C))}var Za0=eSQ;QkQ.len=Za0;var $a0=sSQ;QkQ.sub=$a0;var Ua0=rSQ;QkQ.mul=Ua0;var Ea0=aSQ;QkQ.div=Ea0;var Ka0=oSQ;QkQ.dist=Ka0;var Va0=tSQ;QkQ.sqrDist=Va0;var Ia0=AkQ;QkQ.sqrLen=Ia0;var Ha0=function(){var A=nSQ();return function(Q,B,Y,J,C,X){var G,F;if(!B)B=2;if(!Y)Y=0;if(J)F=Math.min(J*B+Y,Q.length);else F=Q.length;for(G=Y;G{function kk(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")kk=function(B){return typeof B};else kk=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return kk(A)}Object.defineProperty(CkQ,"__esModule",{value:!0});CkQ.vec4=CkQ.vec3=CkQ.vec2=CkQ.quat2=CkQ.quat=CkQ.mat4=CkQ.mat3=CkQ.mat2d=CkQ.mat2=CkQ.glMatrix=void 0;var Fo0=S6(E1());CkQ.glMatrix=Fo0;var Wo0=S6(vTQ());CkQ.mat2=Wo0;var Zo0=S6(bTQ());CkQ.mat2d=Zo0;var $o0=S6(_o());CkQ.mat3=$o0;var Uo0=S6(vo());CkQ.mat4=Uo0;var Eo0=S6(fo());CkQ.quat=Eo0;var Ko0=S6(pSQ());CkQ.quat2=Ko0;var Vo0=S6(YkQ());CkQ.vec2=Vo0;var Io0=S6(yo());CkQ.vec3=Io0;var Ho0=S6(ho());CkQ.vec4=Ho0;function JkQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(JkQ=function(J){return J?B:Q})(A)}function S6(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||kk(A)!=="object"&&typeof A!=="function")return{default:A};var B=JkQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}});var WkQ=R((_k,FkQ)=>{(function(A,Q){typeof _k==="object"&&typeof FkQ<"u"?Q(_k):typeof define==="function"&&define.amd?define(["exports"],Q):(A=typeof globalThis<"u"?globalThis:A||self,Q(A.heap={}))})(_k,function(A){var Q=function($,E,K,I){function V(H){return H instanceof K?H:new K(function(D){D(H)})}return new(K||(K=Promise))(function(H,D){function L(N){try{M(I.next(N))}catch(q){D(q)}}function z(N){try{M(I.throw(N))}catch(q){D(q)}}function M(N){N.done?H(N.value):V(N.value).then(L,z)}M((I=I.apply($,E||[])).next())})},B=function($,E){var K={label:0,sent:function(){if(H[0]&1)throw H[1];return H[1]},trys:[],ops:[]},I,V,H,D=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return D.next=L(0),D.throw=L(1),D.return=L(2),typeof Symbol==="function"&&(D[Symbol.iterator]=function(){return this}),D;function L(M){return function(N){return z([M,N])}}function z(M){if(I)throw TypeError("Generator is already executing.");while(D&&(D=0,M[0]&&(K=0)),K)try{if(I=1,V&&(H=M[0]&2?V.return:M[0]?V.throw||((H=V.return)&&H.call(V),0):V.next)&&!(H=H.call(V,M[1])).done)return H;if(V=0,H)M=[M[0]&2,H.value];switch(M[0]){case 0:case 1:H=M;break;case 4:return K.label++,{value:M[1],done:!1};case 5:K.label++,V=M[1],M=[0];continue;case 7:M=K.ops.pop(),K.trys.pop();continue;default:if((H=K.trys,!(H=H.length>0&&H[H.length-1]))&&(M[0]===6||M[0]===2)){K=0;continue}if(M[0]===3&&(!H||M[1]>H[0]&&M[1]0)&&!(V=I.next()).done)H.push(V.value)}catch(L){D={error:L}}finally{try{if(V&&!V.done&&(K=I.return))K.call(I)}finally{if(D)throw D.error}}return H},J=function($,E,K){if(K||arguments.length===2){for(var I=0,V=E.length,H;I=$.length)$=void 0;return{value:$&&$[I++],done:!$}}};throw TypeError(E?"Object is not iterable.":"Symbol.iterator is not defined.")},X=function(){function $(E){if(E===void 0)E=$.minComparator;var K=this;this.compare=E,this.heapArray=[],this._limit=0,this.offer=this.add,this.element=this.peek,this.poll=this.pop,this._invertedCompare=function(I,V){return K.compare(I,V).then(function(H){return-1*H})}}return $.getChildrenIndexOf=function(E){return[E*2+1,E*2+2]},$.getParentIndexOf=function(E){if(E<=0)return-1;var K=E%2?1:2;return Math.floor((E-K)/2)},$.getSiblingIndexOf=function(E){if(E<=0)return-1;var K=E%2?1:-1;return E+K},$.minComparator=function(E,K){return Q(this,void 0,void 0,function(){return B(this,function(I){if(E>K)return[2,1];else if(EE)return[2,1];else if(K0;--q)w+=N;return w}var V=0,H=[],D=K(E.length-1)+2,L=0;while(VL)L=M.length;H[z]=H[z]||[],H[z].push(M),V+=1}return H.map(function(N,q){var w=Math.pow(2,D-q)-1;return I(" ",Math.floor(w/2)*L)+N.map(function(P){var _=(L-P.length)/2;return I(" ",Math.ceil(_))+P+I(" ",Math.floor(_))}).join(I(" ",w*L))}).join(` -`)},$.heapify=function(E,K){return Q(this,void 0,void 0,function(){var I;return B(this,function(V){switch(V.label){case 0:return I=new $(K),I.heapArray=E,[4,I.init()];case 1:return V.sent(),[2,I]}})})},$.heappop=function(E,K){var I=new $(K);return I.heapArray=E,I.pop()},$.heappush=function(E,K,I){return Q(this,void 0,void 0,function(){var V;return B(this,function(H){switch(H.label){case 0:return V=new $(I),V.heapArray=E,[4,V.push(K)];case 1:return H.sent(),[2]}})})},$.heappushpop=function(E,K,I){var V=new $(I);return V.heapArray=E,V.pushpop(K)},$.heapreplace=function(E,K,I){var V=new $(I);return V.heapArray=E,V.replace(K)},$.heaptop=function(E,K,I){if(K===void 0)K=1;var V=new $(I);return V.heapArray=E,V.top(K)},$.heapbottom=function(E,K,I){if(K===void 0)K=1;var V=new $(I);return V.heapArray=E,V.bottom(K)},$.nlargest=function(E,K,I){return Q(this,void 0,void 0,function(){var V;return B(this,function(H){switch(H.label){case 0:return V=new $(I),V.heapArray=J([],Y(K),!1),[4,V.init()];case 1:return H.sent(),[2,V.top(E)]}})})},$.nsmallest=function(E,K,I){return Q(this,void 0,void 0,function(){var V;return B(this,function(H){switch(H.label){case 0:return V=new $(I),V.heapArray=J([],Y(K),!1),[4,V.init()];case 1:return H.sent(),[2,V.bottom(E)]}})})},$.prototype.add=function(E){return Q(this,void 0,void 0,function(){return B(this,function(K){switch(K.label){case 0:return[4,this._sortNodeUp(this.heapArray.push(E)-1)];case 1:return K.sent(),this._applyLimit(),[2,!0]}})})},$.prototype.addAll=function(E){return Q(this,void 0,void 0,function(){var K,I,V;return B(this,function(H){switch(H.label){case 0:K=this.length,(V=this.heapArray).push.apply(V,J([],Y(E),!1)),I=this.length,H.label=1;case 1:if(!(K=this.heapArray.length)return[2,J([],Y(this.heapArray),!1)];else return[2,this._bottomN_push(~~E)]})})},$.prototype.check=function(){return Q(this,void 0,void 0,function(){var E,K,I,V,H,D,L,z,M;return B(this,function(N){switch(N.label){case 0:E=0,N.label=1;case 1:if(!(E0)return[2,K];N.label=5;case 5:return H=V.next(),[3,3];case 6:return[3,9];case 7:return L=N.sent(),z={error:L},[3,9];case 8:try{if(H&&!H.done&&(M=V.return))M.call(V)}finally{if(z)throw z.error}return[7];case 9:return++E,[3,1];case 10:return[2]}})})},$.prototype.clear=function(){this.heapArray=[]},$.prototype.clone=function(){var E=new $(this.comparator());return E.heapArray=this.toArray(),E._limit=this._limit,E},$.prototype.comparator=function(){return this.compare},$.prototype.contains=function(E){return Q(this,arguments,void 0,function(K,I){var V,H,D,L,z,M;if(I===void 0)I=$.defaultIsEqual;return B(this,function(N){switch(N.label){case 0:N.trys.push([0,5,6,7]),V=C(this.heapArray),H=V.next(),N.label=1;case 1:if(H.done)return[3,4];return D=H.value,[4,I(D,K)];case 2:if(N.sent())return[2,!0];N.label=3;case 3:return H=V.next(),[3,1];case 4:return[3,7];case 5:return L=N.sent(),z={error:L},[3,7];case 6:try{if(H&&!H.done&&(M=V.return))M.call(V)}finally{if(z)throw z.error}return[7];case 7:return[2,!1]}})})},$.prototype.init=function(E){return Q(this,void 0,void 0,function(){var K;return B(this,function(I){switch(I.label){case 0:if(E)this.heapArray=J([],Y(E),!1);K=Math.floor(this.heapArray.length),I.label=1;case 1:if(!(K>=0))return[3,4];return[4,this._sortNodeDown(K)];case 2:I.sent(),I.label=3;case 3:return--K,[3,1];case 4:return this._applyLimit(),[2]}})})},$.prototype.isEmpty=function(){return this.length===0},$.prototype.leafs=function(){if(this.heapArray.length===0)return[];var E=$.getParentIndexOf(this.heapArray.length-1);return this.heapArray.slice(E+1)},Object.defineProperty($.prototype,"length",{get:function(){return this.heapArray.length},enumerable:!1,configurable:!0}),Object.defineProperty($.prototype,"limit",{get:function(){return this._limit},set:function(E){this._limit=~~E,this._applyLimit()},enumerable:!1,configurable:!0}),$.prototype.peek=function(){return this.heapArray[0]},$.prototype.pop=function(){return Q(this,void 0,void 0,function(){var E;return B(this,function(K){if(E=this.heapArray.pop(),this.length>0&&E!==void 0)return[2,this.replace(E)];return[2,E]})})},$.prototype.push=function(){var E=[];for(var K=0;K=this.heapArray.length)return[2,J([],Y(this.heapArray),!1)];else return[2,this._topN_push(~~E)]})})},$.prototype.toArray=function(){return J([],Y(this.heapArray),!1)},$.prototype.toString=function(){return this.heapArray.toString()},$.prototype.get=function(E){return this.heapArray[E]},$.prototype.getChildrenOf=function(E){var K=this;return $.getChildrenIndexOf(E).map(function(I){return K.heapArray[I]}).filter(function(I){return I!==void 0})},$.prototype.getParentOf=function(E){var K=$.getParentIndexOf(E);return this.heapArray[K]},$.prototype[Symbol.iterator]=function(){return B(this,function(E){switch(E.label){case 0:if(!this.length)return[3,2];return[4,this.pop()];case 1:return E.sent(),[3,0];case 2:return[2]}})},$.prototype.iterator=function(){return this},$.prototype._applyLimit=function(){if(this._limit&&this._limitV;--L)H.push(L);D=this.heapArray,z.label=2;case 2:if(!H.length)return[3,6];return L=H.shift(),[4,this.compare(D[L],K.peek())];case 3:if(!(z.sent()>0))return[3,5];return[4,K.replace(D[L])];case 4:if(z.sent(),L%2)H.push($.getParentIndexOf(L));z.label=5;case 5:return[3,2];case 6:return[2,K.toArray()]}})})},$.prototype._moveNode=function(E,K){var I;I=Y([this.heapArray[K],this.heapArray[E]],2),this.heapArray[E]=I[0],this.heapArray[K]=I[1]},$.prototype._sortNodeDown=function(E){return Q(this,void 0,void 0,function(){var K,I,V,H,D,L;return B(this,function(z){switch(z.label){case 0:K=this.heapArray.length,z.label=1;case 1:if(I=2*E+1,V=I+1,H=E,D=I0))return[3,2];return K=$.getParentIndexOf(E),[4,this.compare(this.heapArray[E],this.heapArray[K])];case 1:if(I.sent()<0)this._moveNode(E,K),E=K;else return[3,2];return[3,0];case 2:return[2]}})})},$.prototype._topN_push=function(E){return Q(this,void 0,void 0,function(){var K,I,V,H;return B(this,function(D){switch(D.label){case 0:K=new $(this._invertedCompare),K.limit=E,I=[0],V=this.heapArray,D.label=1;case 1:if(!I.length)return[3,7];if(H=I.shift(),!(H0&&H[H.length-1]))&&(M[0]===6||M[0]===2)){K=0;continue}if(M[0]===3&&(!H||M[1]>H[0]&&M[1]0)&&!(V=I.next()).done)H.push(V.value)}catch(L){D={error:L}}finally{try{if(V&&!V.done&&(K=I.return))K.call(I)}finally{if(D)throw D.error}}return H},W=function($,E,K){if(K||arguments.length===2){for(var I=0,V=E.length,H;IK)return 1;else if(EE)return 1;else if(K0;--q)w+=N;return w}var V=0,H=[],D=K(E.length-1)+2,L=0;while(VL)L=M.length;H[z]=H[z]||[],H[z].push(M),V+=1}return H.map(function(N,q){var w=Math.pow(2,D-q)-1;return I(" ",Math.floor(w/2)*L)+N.map(function(P){var _=(L-P.length)/2;return I(" ",Math.ceil(_))+P+I(" ",Math.floor(_))}).join(I(" ",w*L))}).join(` -`)},$.heapify=function(E,K){var I=new $(K);return I.heapArray=E,I.init(),I},$.heappop=function(E,K){var I=new $(K);return I.heapArray=E,I.pop()},$.heappush=function(E,K,I){var V=new $(I);V.heapArray=E,V.push(K)},$.heappushpop=function(E,K,I){var V=new $(I);return V.heapArray=E,V.pushpop(K)},$.heapreplace=function(E,K,I){var V=new $(I);return V.heapArray=E,V.replace(K)},$.heaptop=function(E,K,I){if(K===void 0)K=1;var V=new $(I);return V.heapArray=E,V.top(K)},$.heapbottom=function(E,K,I){if(K===void 0)K=1;var V=new $(I);return V.heapArray=E,V.bottom(K)},$.nlargest=function(E,K,I){var V=new $(I);return V.heapArray=W([],F(K),!1),V.init(),V.top(E)},$.nsmallest=function(E,K,I){var V=new $(I);return V.heapArray=W([],F(K),!1),V.init(),V.bottom(E)},$.prototype.add=function(E){return this._sortNodeUp(this.heapArray.push(E)-1),this._applyLimit(),!0},$.prototype.addAll=function(E){var K,I=this.length;(K=this.heapArray).push.apply(K,W([],F(E),!1));for(var V=this.length;I=this.heapArray.length)return W([],F(this.heapArray),!1);else return this._bottomN_push(~~E)},$.prototype.check=function(){var E=this;return this.heapArray.find(function(K,I){return!!E.getChildrenOf(I).find(function(V){return E.compare(K,V)>0})})},$.prototype.clear=function(){this.heapArray=[]},$.prototype.clone=function(){var E=new $(this.comparator());return E.heapArray=this.toArray(),E._limit=this._limit,E},$.prototype.comparator=function(){return this.compare},$.prototype.contains=function(E,K){if(K===void 0)K=$.defaultIsEqual;return this.indexOf(E,K)!==-1},$.prototype.init=function(E){if(E)this.heapArray=W([],F(E),!1);for(var K=Math.floor(this.heapArray.length);K>=0;--K)this._sortNodeDown(K);this._applyLimit()},$.prototype.isEmpty=function(){return this.length===0},$.prototype.indexOf=function(E,K){if(K===void 0)K=$.defaultIsEqual;if(this.heapArray.length===0)return-1;var I=[],V=0;while(V0&&E!==void 0)return this.replace(E);return E},$.prototype.push=function(){var E=[];for(var K=0;K=this.heapArray.length)return W([],F(this.heapArray),!1);else return this._topN_push(~~E)},$.prototype.toArray=function(){return W([],F(this.heapArray),!1)},$.prototype.toString=function(){return this.heapArray.toString()},$.prototype.get=function(E){return this.heapArray[E]},$.prototype.getChildrenOf=function(E){var K=this;return $.getChildrenIndexOf(E).map(function(I){return K.heapArray[I]}).filter(function(I){return I!==void 0})},$.prototype.getParentOf=function(E){var K=$.getParentIndexOf(E);return this.heapArray[K]},$.prototype[Symbol.iterator]=function(){return G(this,function(E){switch(E.label){case 0:if(!this.length)return[3,2];return[4,this.pop()];case 1:return E.sent(),[3,0];case 2:return[2]}})},$.prototype.iterator=function(){return this.toArray()},$.prototype._applyLimit=function(){if(this._limit>0&&this._limitV;--D)H.push(D);var L=this.heapArray;while(H.length){var D=H.shift();if(this.compare(L[D],K.peek())>0){if(K.replace(L[D]),D%2)H.push($.getParentIndexOf(D))}}return K.toArray()},$.prototype._moveNode=function(E,K){var I;I=F([this.heapArray[K],this.heapArray[E]],2),this.heapArray[E]=I[0],this.heapArray[K]=I[1]},$.prototype._sortNodeDown=function(E){var K=this.heapArray.length;while(!0){var I=2*E+1,V=I+1,H=E;if(I0){var K=$.getParentIndexOf(E);if(this.compare(this.heapArray[E],this.heapArray[K])<0)this._moveNode(E,K),E=K;else break}},$.prototype._topN_push=function(E){var K=new $(this._invertedCompare);K.limit=E;var I=[0],V=this.heapArray;while(I.length){var H=I.shift();if(H{};class n{static errorCount=0;static warningCount=0;static warning(A,Q){let B=Error(A);this._logMessage({message:A,error:B,context:Q,type:"warning",isFatal:!1})}static error(A,Q){let B=Error(A);this._logMessage({message:A,error:B,context:Q,type:"error",isFatal:!1})}static fatalError(A,Q){let B=Error(A);throw this._logMessage({message:A,error:B,context:Q,type:"error",isFatal:!0}),B}static enableCrashProtection(){if(process.env.NODE_ENV!=="production")return;process.on("unhandledRejection",(A)=>{let Q=A instanceof Error?A.message:String(A);this.error(`[CRASH PREVENTED] - Unhandled Promise Rejection: ${Q}`)}),process.on("uncaughtException",(A)=>{this.error(`[FATAL] Uncaught Exception: ${A.message} -${A.stack}`),setTimeout(()=>process.exit(1),1000)}),console.info("Crash protection enabled! Unhandled Promise Rejections and Uncaught Exceptions will be logged instead of crashing the server.")}static _logMessage(A){let{message:Q,error:B,context:Y,type:J,isFatal:C}=A,X=new Date().toISOString(),G=J==="warning";if(G)this.warningCount++;else this.errorCount++;let F=G?KY.yellow:KY.red,W=G?this.warningCount:this.errorCount,Z=G?console.warn:console.error;if(Z(` -${F}${KY.bold}==========[ RUNTIME ${G?"WARNING":"ERROR"} #${W} | ${X} ]==========${KY.reset}`),!G)if(C)Z(`The server encountered an unrecoverable error and has crashed! + `)}close(){this.#B.close()}get(Q){Zo(Q);let B=this.#E(Q);return B?{body:B.body?Buffer.from(B.body.buffer,B.body.byteOffset,B.body.byteLength):void 0,statusCode:B.statusCode,statusMessage:B.statusMessage,headers:B.headers?JSON.parse(B.headers):void 0,etag:B.etag?B.etag:void 0,vary:B.vary?JSON.parse(B.vary):void 0,cacheControlDirectives:B.cacheControlDirectives?JSON.parse(B.cacheControlDirectives):void 0,cachedAt:B.cachedAt,staleAt:B.staleAt,deleteAt:B.deleteAt}:void 0}set(Q,B){Zo(Q);let Y=this.#F(Q),J=Array.isArray(B.body)?Buffer.concat(B.body):B.body,C=J?.byteLength;if(C&&C>this.#A)return;let X=this.#E(Q,!0);if(X)this.#J.run(J,B.deleteAt,B.statusCode,B.statusMessage,B.headers?JSON.stringify(B.headers):null,B.etag?B.etag:null,B.cacheControlDirectives?JSON.stringify(B.cacheControlDirectives):null,B.cachedAt,B.staleAt,X.id);else this.#U(),this.#C.run(Y,Q.method,J,B.deleteAt,B.statusCode,B.statusMessage,B.headers?JSON.stringify(B.headers):null,B.etag?B.etag:null,B.cacheControlDirectives?JSON.stringify(B.cacheControlDirectives):null,B.vary?JSON.stringify(B.vary):null,B.cachedAt,B.staleAt)}createWriteStream(Q,B){Zo(Q),Eg0(B);let Y=0,J=[],C=this;return new Ug0({decodeStrings:!0,write(X,G,W){if(Y+=X.byteLength,Y=W.deleteAt&&!B)return;let F=!0;if(W.vary){let Z=JSON.parse(W.vary);for(let U in Z)if(!Kg0(J[U],Z[U])){F=!1;break}}if(F)return W}return}};function Kg0(A,Q){if(A==null&&Q==null)return!0;if(A==null&&Q!=null||A!=null&&Q==null)return!1;if(Array.isArray(A)&&Array.isArray(Q)){if(A.length!==Q.length)return!1;return A.every((B,Y)=>B===Q[Y])}return A===Q}});var Y4=R((urY,bOQ)=>{var{kConstruct:Vg0}=B0(),{kEnumerableProperty:HV}=lQ(),{iteratorMixin:Ig0,isValidHeaderName:oq,isValidHeaderValue:yOQ}=z9(),{webidl:LB}=HJ(),Uo=u("node:assert"),Qk=u("node:util");function vOQ(A){return A===10||A===13||A===9||A===32}function gOQ(A){let Q=0,B=A.length;while(B>Q&&vOQ(A.charCodeAt(B-1)))--B;while(B>Q&&vOQ(A.charCodeAt(Q)))++Q;return Q===0&&B===A.length?A:A.substring(Q,B)}function hOQ(A,Q){if(Array.isArray(Q))for(let B=0;B>","record"]})}function Eo(A,Q,B){if(B=gOQ(B),!oq(Q))throw LB.errors.invalidArgument({prefix:"Headers.append",value:Q,type:"header name"});else if(!yOQ(B))throw LB.errors.invalidArgument({prefix:"Headers.append",value:B,type:"header value"});if(fOQ(A)==="immutable")throw TypeError("immutable");return Yk(A).append(Q,B,!1)}function Hg0(A){let Q=Yk(A);if(!Q)return[];if(Q.sortedMap)return Q.sortedMap;let B=[],Y=Q.toSortedArray(),J=Q.cookies;if(J===null||J.length===1)return Q.sortedMap=Y;for(let C=0;C>1),Q[W][0]<=F[0])G=W+1;else X=W;if(J!==W){C=J;while(C>G)Q[C]=Q[--C];Q[G]=F}}if(!B.next().done)throw TypeError("Unreachable");return Q}else{let B=0;for(let{0:Y,1:{value:J}}of this.headersMap)Q[B++]=[Y,J],Uo(J!==null);return Q.sort(xOQ)}}}class mJ{#A;#Q;constructor(A=void 0){if(LB.util.markAsUncloneable(this),A===Vg0)return;if(this.#Q=new Bk,this.#A="none",A!==void 0)A=LB.converters.HeadersInit(A,"Headers constructor","init"),hOQ(this,A)}append(A,Q){LB.brandCheck(this,mJ),LB.argumentLengthCheck(arguments,2,"Headers.append");let B="Headers.append";return A=LB.converters.ByteString(A,B,"name"),Q=LB.converters.ByteString(Q,B,"value"),Eo(this,A,Q)}delete(A){LB.brandCheck(this,mJ),LB.argumentLengthCheck(arguments,1,"Headers.delete");let Q="Headers.delete";if(A=LB.converters.ByteString(A,Q,"name"),!oq(A))throw LB.errors.invalidArgument({prefix:"Headers.delete",value:A,type:"header name"});if(this.#A==="immutable")throw TypeError("immutable");if(!this.#Q.contains(A,!1))return;this.#Q.delete(A,!1)}get(A){LB.brandCheck(this,mJ),LB.argumentLengthCheck(arguments,1,"Headers.get");let Q="Headers.get";if(A=LB.converters.ByteString(A,Q,"name"),!oq(A))throw LB.errors.invalidArgument({prefix:Q,value:A,type:"header name"});return this.#Q.get(A,!1)}has(A){LB.brandCheck(this,mJ),LB.argumentLengthCheck(arguments,1,"Headers.has");let Q="Headers.has";if(A=LB.converters.ByteString(A,Q,"name"),!oq(A))throw LB.errors.invalidArgument({prefix:Q,value:A,type:"header name"});return this.#Q.contains(A,!1)}set(A,Q){LB.brandCheck(this,mJ),LB.argumentLengthCheck(arguments,2,"Headers.set");let B="Headers.set";if(A=LB.converters.ByteString(A,B,"name"),Q=LB.converters.ByteString(Q,B,"value"),Q=gOQ(Q),!oq(A))throw LB.errors.invalidArgument({prefix:B,value:A,type:"header name"});else if(!yOQ(Q))throw LB.errors.invalidArgument({prefix:B,value:Q,type:"header value"});if(this.#A==="immutable")throw TypeError("immutable");this.#Q.set(A,Q,!1)}getSetCookie(){LB.brandCheck(this,mJ);let A=this.#Q.cookies;if(A)return[...A];return[]}[Qk.inspect.custom](A,Q){return Q.depth??=A,`Headers ${Qk.formatWithOptions(Q,this.#Q.entries)}`}static getHeadersGuard(A){return A.#A}static setHeadersGuard(A,Q){A.#A=Q}static getHeadersList(A){return A.#Q}static setHeadersList(A,Q){A.#Q=Q}}var{getHeadersGuard:fOQ,setHeadersGuard:Dg0,getHeadersList:Yk,setHeadersList:Ng0}=mJ;Reflect.deleteProperty(mJ,"getHeadersGuard");Reflect.deleteProperty(mJ,"setHeadersGuard");Reflect.deleteProperty(mJ,"getHeadersList");Reflect.deleteProperty(mJ,"setHeadersList");Ig0("Headers",mJ,Hg0,0,1);Object.defineProperties(mJ.prototype,{append:HV,delete:HV,get:HV,has:HV,set:HV,getSetCookie:HV,[Symbol.toStringTag]:{value:"Headers",configurable:!0},[Qk.inspect.custom]:{enumerable:!1}});LB.converters.HeadersInit=function(A,Q,B){if(LB.util.Type(A)===LB.util.Types.OBJECT){let Y=Reflect.get(A,Symbol.iterator);if(!Qk.types.isProxy(A)&&Y===mJ.prototype.entries)try{return Yk(A).entriesList}catch{}if(typeof Y==="function")return LB.converters["sequence>"](A,Q,B,Y.bind(A));return LB.converters["record"](A,Q,B)}throw LB.errors.conversionFailed({prefix:"Headers constructor",argument:"Argument 1",types:["sequence>","record"]})};bOQ.exports={fill:hOQ,compareHeaderName:xOQ,Headers:mJ,HeadersList:Bk,getHeadersGuard:fOQ,setHeadersGuard:Dg0,setHeadersList:Ng0,getHeadersList:Yk}});var eq=R((drY,oOQ)=>{var{Headers:pOQ,HeadersList:mOQ,fill:Lg0,getHeadersGuard:qg0,setHeadersGuard:iOQ,setHeadersList:nOQ}=Y4(),{extractBody:uOQ,cloneBody:Mg0,mixinBody:zg0,streamRegistry:sOQ,bodyUnusable:Rg0}=tK(),rOQ=lQ(),dOQ=u("node:util"),{kEnumerableProperty:s8}=rOQ,{isValidReasonPhrase:wg0,isCancelled:jg0,isAborted:Og0,serializeJavascriptValueToJSONString:Pg0,isErrorLike:Tg0,isomorphicEncode:Sg0,environmentSettingsObject:kg0}=z9(),{redirectStatusSet:_g0,nullBodyStatus:vg0}=Iq(),{webidl:ZB}=HJ(),{URLSerializer:cOQ}=l8(),{kConstruct:Ck}=B0(),Ko=u("node:assert"),yg0=new TextEncoder("utf-8");class t0{#A;#Q;static error(){return tq(Xk(),"immutable")}static json(A,Q=void 0){if(ZB.argumentLengthCheck(arguments,1,"Response.json"),Q!==null)Q=ZB.converters.ResponseInit(Q);let B=yg0.encode(Pg0(A)),Y=uOQ(B),J=tq(DV({}),"response");return lOQ(J,Q,{body:Y[0],type:"application/json"}),J}static redirect(A,Q=302){ZB.argumentLengthCheck(arguments,1,"Response.redirect"),A=ZB.converters.USVString(A),Q=ZB.converters["unsigned short"](Q);let B;try{B=new URL(A,kg0.settingsObject.baseUrl)}catch(C){throw TypeError(`Failed to parse URL from ${A}`,{cause:C})}if(!_g0.has(Q))throw RangeError(`Invalid status code ${Q}`);let Y=tq(DV({}),"immutable");Y.#Q.status=Q;let J=Sg0(cOQ(B));return Y.#Q.headersList.append("location",J,!0),Y}constructor(A=null,Q=void 0){if(ZB.util.markAsUncloneable(this),A===Ck)return;if(A!==null)A=ZB.converters.BodyInit(A,"Response","body");Q=ZB.converters.ResponseInit(Q),this.#Q=DV({}),this.#A=new pOQ(Ck),iOQ(this.#A,"response"),nOQ(this.#A,this.#Q.headersList);let B=null;if(A!=null){let[Y,J]=uOQ(A);B={body:Y,type:J}}lOQ(this,Q,B)}get type(){return ZB.brandCheck(this,t0),this.#Q.type}get url(){ZB.brandCheck(this,t0);let A=this.#Q.urlList,Q=A[A.length-1]??null;if(Q===null)return"";return cOQ(Q,!0)}get redirected(){return ZB.brandCheck(this,t0),this.#Q.urlList.length>1}get status(){return ZB.brandCheck(this,t0),this.#Q.status}get ok(){return ZB.brandCheck(this,t0),this.#Q.status>=200&&this.#Q.status<=299}get statusText(){return ZB.brandCheck(this,t0),this.#Q.statusText}get headers(){return ZB.brandCheck(this,t0),this.#A}get body(){return ZB.brandCheck(this,t0),this.#Q.body?this.#Q.body.stream:null}get bodyUsed(){return ZB.brandCheck(this,t0),!!this.#Q.body&&rOQ.isDisturbed(this.#Q.body.stream)}clone(){if(ZB.brandCheck(this,t0),Rg0(this.#Q))throw ZB.errors.exception({header:"Response.clone",message:"Body has already been consumed."});let A=Vo(this.#Q);if(this.#Q.body?.stream)sOQ.register(this,new WeakRef(this.#Q.body.stream));return tq(A,qg0(this.#A))}[dOQ.inspect.custom](A,Q){if(Q.depth===null)Q.depth=2;Q.colors??=!0;let B={status:this.status,statusText:this.statusText,headers:this.headers,body:this.body,bodyUsed:this.bodyUsed,ok:this.ok,redirected:this.redirected,type:this.type,url:this.url};return`Response ${dOQ.formatWithOptions(Q,B)}`}static getResponseHeaders(A){return A.#A}static setResponseHeaders(A,Q){A.#A=Q}static getResponseState(A){return A.#Q}static setResponseState(A,Q){A.#Q=Q}}var{getResponseHeaders:gg0,setResponseHeaders:hg0,getResponseState:J4,setResponseState:xg0}=t0;Reflect.deleteProperty(t0,"getResponseHeaders");Reflect.deleteProperty(t0,"setResponseHeaders");Reflect.deleteProperty(t0,"getResponseState");Reflect.deleteProperty(t0,"setResponseState");zg0(t0,J4);Object.defineProperties(t0.prototype,{type:s8,url:s8,status:s8,ok:s8,redirected:s8,statusText:s8,headers:s8,clone:s8,body:s8,bodyUsed:s8,[Symbol.toStringTag]:{value:"Response",configurable:!0}});Object.defineProperties(t0,{json:s8,redirect:s8,error:s8});function Vo(A){if(A.internalResponse)return aOQ(Vo(A.internalResponse),A.type);let Q=DV({...A,body:null});if(A.body!=null)Q.body=Mg0(A.body);return Q}function DV(A){return{aborted:!1,rangeRequested:!1,timingAllowPassed:!1,requestIncludesCredentials:!1,type:"default",status:200,timingInfo:null,cacheState:"",statusText:"",...A,headersList:A?.headersList?new mOQ(A?.headersList):new mOQ,urlList:A?.urlList?[...A.urlList]:[]}}function Xk(A){let Q=Tg0(A);return DV({type:"error",status:0,error:Q?A:Error(A?String(A):A),aborted:A&&A.name==="AbortError"})}function fg0(A){return A.type==="error"&&A.status===0}function Jk(A,Q){return Q={internalResponse:A,...Q},new Proxy(A,{get(B,Y){return Y in Q?Q[Y]:B[Y]},set(B,Y,J){return Ko(!(Y in Q)),B[Y]=J,!0}})}function aOQ(A,Q){if(Q==="basic")return Jk(A,{type:"basic",headersList:A.headersList});else if(Q==="cors")return Jk(A,{type:"cors",headersList:A.headersList});else if(Q==="opaque")return Jk(A,{type:"opaque",urlList:Object.freeze([]),status:0,statusText:"",body:null});else if(Q==="opaqueredirect")return Jk(A,{type:"opaqueredirect",status:0,statusText:"",headersList:[],body:null});else Ko(!1)}function bg0(A,Q=null){return Ko(jg0(A)),Og0(A)?Xk(Object.assign(new DOMException("The operation was aborted.","AbortError"),{cause:Q})):Xk(Object.assign(new DOMException("Request was cancelled."),{cause:Q}))}function lOQ(A,Q,B){if(Q.status!==null&&(Q.status<200||Q.status>599))throw RangeError('init["status"] must be in the range of 200 to 599, inclusive.');if("statusText"in Q&&Q.statusText!=null){if(!wg0(String(Q.statusText)))throw TypeError("Invalid statusText")}if("status"in Q&&Q.status!=null)J4(A).status=Q.status;if("statusText"in Q&&Q.statusText!=null)J4(A).statusText=Q.statusText;if("headers"in Q&&Q.headers!=null)Lg0(gg0(A),Q.headers);if(B){if(vg0.includes(A.status))throw ZB.errors.exception({header:"Response constructor",message:`Invalid response status code ${A.status}`});if(J4(A).body=B.body,B.type!=null&&!J4(A).headersList.contains("content-type",!0))J4(A).headersList.append("content-type",B.type,!0)}}function tq(A,Q){let B=new t0(Ck);xg0(B,A);let Y=new pOQ(Ck);if(hg0(B,Y),nOQ(Y,A.headersList),iOQ(Y,Q),A.body?.stream)sOQ.register(B,new WeakRef(A.body.stream));return B}ZB.converters.XMLHttpRequestBodyInit=function(A,Q,B){if(typeof A==="string")return ZB.converters.USVString(A,Q,B);if(ZB.is.Blob(A))return A;if(ZB.is.BufferSource(A))return A;if(ZB.is.FormData(A))return A;if(ZB.is.URLSearchParams(A))return A;return ZB.converters.DOMString(A,Q,B)};ZB.converters.BodyInit=function(A,Q,B){if(ZB.is.ReadableStream(A))return A;if(A?.[Symbol.asyncIterator])return A;return ZB.converters.XMLHttpRequestBodyInit(A,Q,B)};ZB.converters.ResponseInit=ZB.dictionaryConverter([{key:"status",converter:ZB.converters["unsigned short"],defaultValue:()=>200},{key:"statusText",converter:ZB.converters.ByteString,defaultValue:()=>""},{key:"headers",converter:ZB.converters.HeadersInit}]);ZB.is.Response=ZB.util.MakeTypeAssertion(t0);oOQ.exports={isNetworkError:fg0,makeNetworkError:Xk,makeResponse:DV,makeAppropriateNetworkError:bg0,filterResponse:aOQ,Response:t0,cloneResponse:Vo,fromInnerResponse:tq,getResponseState:J4}});var NV=R((crY,$PQ)=>{var{extractBody:mg0,mixinBody:ug0,cloneBody:dg0,bodyUnusable:tOQ}=tK(),{Headers:JPQ,fill:cg0,HeadersList:Fk,setHeadersGuard:Io,getHeadersGuard:lg0,setHeadersList:CPQ,getHeadersList:eOQ}=Y4(),Wk=lQ(),APQ=u("node:util"),{isValidHTTPToken:pg0,sameOrigin:QPQ,environmentSettingsObject:Gk}=z9(),{forbiddenMethodsSet:ig0,corsSafeListedMethodsSet:ng0,referrerPolicy:sg0,requestRedirect:rg0,requestMode:ag0,requestCredentials:og0,requestCache:tg0,requestDuplex:eg0}=Iq(),{kEnumerableProperty:OY,normalizedMethodRecordsBase:Ah0,normalizedMethodRecords:Qh0}=Wk,{webidl:qQ}=HJ(),{URLSerializer:Bh0}=l8(),{kConstruct:Zk}=B0(),Yh0=u("node:assert"),{getMaxListeners:XPQ,setMaxListeners:Jh0,defaultMaxListeners:Ch0}=u("node:events"),Xh0=Symbol("abortController"),GPQ=new FinalizationRegistry(({signal:A,abort:Q})=>{A.removeEventListener("abort",Q)}),$k=new WeakMap,Ho;try{Ho=XPQ(new AbortController().signal)>0}catch{Ho=!1}function BPQ(A){return Q;function Q(){let B=A.deref();if(B!==void 0){GPQ.unregister(Q),this.removeEventListener("abort",Q),B.abort(this.reason);let Y=$k.get(B.signal);if(Y!==void 0){if(Y.size!==0){for(let J of Y){let C=J.deref();if(C!==void 0)C.abort(this.reason)}Y.clear()}$k.delete(B.signal)}}}}var YPQ=!1;class kB{#A;#Q;#B;#Y;constructor(A,Q=void 0){if(qQ.util.markAsUncloneable(this),A===Zk)return;let B="Request constructor";qQ.argumentLengthCheck(arguments,1,B),A=qQ.converters.RequestInfo(A),Q=qQ.converters.RequestInit(Q);let Y=null,J=null,C=Gk.settingsObject.baseUrl,X=null;if(typeof A==="string"){this.#Q=Q.dispatcher;let V;try{V=new URL(A,C)}catch(H){throw TypeError("Failed to parse URL from "+A,{cause:H})}if(V.username||V.password)throw TypeError("Request cannot be constructed from a URL that includes credentials: "+A);Y=Uk({urlList:[V]}),J="cors"}else Yh0(qQ.is.Request(A)),Y=A.#Y,X=A.#A,this.#Q=Q.dispatcher||A.#Q;let G=Gk.settingsObject.origin,W="client";if(Y.window?.constructor?.name==="EnvironmentSettingsObject"&&QPQ(Y.window,G))W=Y.window;if(Q.window!=null)throw TypeError(`'window' option '${W}' must be null`);if("window"in Q)W="no-window";Y=Uk({method:Y.method,headersList:Y.headersList,unsafeRequest:Y.unsafeRequest,client:Gk.settingsObject,window:W,priority:Y.priority,origin:Y.origin,referrer:Y.referrer,referrerPolicy:Y.referrerPolicy,mode:Y.mode,credentials:Y.credentials,cache:Y.cache,redirect:Y.redirect,integrity:Y.integrity,keepalive:Y.keepalive,reloadNavigation:Y.reloadNavigation,historyNavigation:Y.historyNavigation,urlList:[...Y.urlList]});let F=Object.keys(Q).length!==0;if(F){if(Y.mode==="navigate")Y.mode="same-origin";Y.reloadNavigation=!1,Y.historyNavigation=!1,Y.origin="client",Y.referrer="client",Y.referrerPolicy="",Y.url=Y.urlList[Y.urlList.length-1],Y.urlList=[Y.url]}if(Q.referrer!==void 0){let V=Q.referrer;if(V==="")Y.referrer="no-referrer";else{let H;try{H=new URL(V,C)}catch(D){throw TypeError(`Referrer "${V}" is not a valid URL.`,{cause:D})}if(H.protocol==="about:"&&H.hostname==="client"||G&&!QPQ(H,Gk.settingsObject.baseUrl))Y.referrer="client";else Y.referrer=H}}if(Q.referrerPolicy!==void 0)Y.referrerPolicy=Q.referrerPolicy;let Z;if(Q.mode!==void 0)Z=Q.mode;else Z=J;if(Z==="navigate")throw qQ.errors.exception({header:"Request constructor",message:"invalid request mode navigate."});if(Z!=null)Y.mode=Z;if(Q.credentials!==void 0)Y.credentials=Q.credentials;if(Q.cache!==void 0)Y.cache=Q.cache;if(Y.cache==="only-if-cached"&&Y.mode!=="same-origin")throw TypeError("'only-if-cached' can be set only with 'same-origin' mode");if(Q.redirect!==void 0)Y.redirect=Q.redirect;if(Q.integrity!=null)Y.integrity=String(Q.integrity);if(Q.keepalive!==void 0)Y.keepalive=Boolean(Q.keepalive);if(Q.method!==void 0){let V=Q.method,H=Qh0[V];if(H!==void 0)Y.method=H;else{if(!pg0(V))throw TypeError(`'${V}' is not a valid HTTP method.`);let D=V.toUpperCase();if(ig0.has(D))throw TypeError(`'${V}' HTTP method is unsupported.`);V=Ah0[D]??V,Y.method=V}if(!YPQ&&Y.method==="patch")process.emitWarning("Using `patch` is highly likely to result in a `405 Method Not Allowed`. `PATCH` is much more likely to succeed.",{code:"UNDICI-FETCH-patch"}),YPQ=!0}if(Q.signal!==void 0)X=Q.signal;this.#Y=Y;let U=new AbortController;if(this.#A=U.signal,X!=null)if(X.aborted)U.abort(X.reason);else{this[Xh0]=U;let V=new WeakRef(U),H=BPQ(V);if(Ho&&XPQ(X)===Ch0)Jh0(1500,X);Wk.addAbortListener(X,H),GPQ.register(U,{signal:X,abort:H},H)}if(this.#B=new JPQ(Zk),CPQ(this.#B,Y.headersList),Io(this.#B,"request"),Z==="no-cors"){if(!ng0.has(Y.method))throw TypeError(`'${Y.method} is unsupported in no-cors mode.`);Io(this.#B,"request-no-cors")}if(F){let V=eOQ(this.#B),H=Q.headers!==void 0?Q.headers:new Fk(V);if(V.clear(),H instanceof Fk){for(let{name:D,value:L}of H.rawValues())V.append(D,L,!1);V.cookies=H.cookies}else cg0(this.#B,H)}let $=qQ.is.Request(A)?A.#Y.body:null;if((Q.body!=null||$!=null)&&(Y.method==="GET"||Y.method==="HEAD"))throw TypeError("Request with GET/HEAD method cannot have body.");let E=null;if(Q.body!=null){let[V,H]=mg0(Q.body,Y.keepalive);if(E=V,H&&!eOQ(this.#B).contains("content-type",!0))this.#B.append("content-type",H,!0)}let K=E??$;if(K!=null&&K.source==null){if(E!=null&&Q.duplex==null)throw TypeError("RequestInit: duplex option is required when sending a body.");if(Y.mode!=="same-origin"&&Y.mode!=="cors")throw TypeError('If request is made from ReadableStream, mode should be "same-origin" or "cors"');Y.useCORSPreflightFlag=!0}let I=K;if(E==null&&$!=null){if(tOQ(A.#Y))throw TypeError("Cannot construct a Request with a Request object that has already been used.");let V=new TransformStream;$.stream.pipeThrough(V),I={source:$.source,length:$.length,stream:V.readable}}this.#Y.body=I}get method(){return qQ.brandCheck(this,kB),this.#Y.method}get url(){return qQ.brandCheck(this,kB),Bh0(this.#Y.url)}get headers(){return qQ.brandCheck(this,kB),this.#B}get destination(){return qQ.brandCheck(this,kB),this.#Y.destination}get referrer(){if(qQ.brandCheck(this,kB),this.#Y.referrer==="no-referrer")return"";if(this.#Y.referrer==="client")return"about:client";return this.#Y.referrer.toString()}get referrerPolicy(){return qQ.brandCheck(this,kB),this.#Y.referrerPolicy}get mode(){return qQ.brandCheck(this,kB),this.#Y.mode}get credentials(){return qQ.brandCheck(this,kB),this.#Y.credentials}get cache(){return qQ.brandCheck(this,kB),this.#Y.cache}get redirect(){return qQ.brandCheck(this,kB),this.#Y.redirect}get integrity(){return qQ.brandCheck(this,kB),this.#Y.integrity}get keepalive(){return qQ.brandCheck(this,kB),this.#Y.keepalive}get isReloadNavigation(){return qQ.brandCheck(this,kB),this.#Y.reloadNavigation}get isHistoryNavigation(){return qQ.brandCheck(this,kB),this.#Y.historyNavigation}get signal(){return qQ.brandCheck(this,kB),this.#A}get body(){return qQ.brandCheck(this,kB),this.#Y.body?this.#Y.body.stream:null}get bodyUsed(){return qQ.brandCheck(this,kB),!!this.#Y.body&&Wk.isDisturbed(this.#Y.body.stream)}get duplex(){return qQ.brandCheck(this,kB),"half"}clone(){if(qQ.brandCheck(this,kB),tOQ(this.#Y))throw TypeError("unusable");let A=FPQ(this.#Y),Q=new AbortController;if(this.signal.aborted)Q.abort(this.signal.reason);else{let B=$k.get(this.signal);if(B===void 0)B=new Set,$k.set(this.signal,B);let Y=new WeakRef(Q);B.add(Y),Wk.addAbortListener(Q.signal,BPQ(Y))}return ZPQ(A,this.#Q,Q.signal,lg0(this.#B))}[APQ.inspect.custom](A,Q){if(Q.depth===null)Q.depth=2;Q.colors??=!0;let B={method:this.method,url:this.url,headers:this.headers,destination:this.destination,referrer:this.referrer,referrerPolicy:this.referrerPolicy,mode:this.mode,credentials:this.credentials,cache:this.cache,redirect:this.redirect,integrity:this.integrity,keepalive:this.keepalive,isReloadNavigation:this.isReloadNavigation,isHistoryNavigation:this.isHistoryNavigation,signal:this.signal};return`Request ${APQ.formatWithOptions(Q,B)}`}static setRequestSignal(A,Q){return A.#A=Q,A}static getRequestDispatcher(A){return A.#Q}static setRequestDispatcher(A,Q){A.#Q=Q}static setRequestHeaders(A,Q){A.#B=Q}static getRequestState(A){return A.#Y}static setRequestState(A,Q){A.#Y=Q}}var{setRequestSignal:Gh0,getRequestDispatcher:Wh0,setRequestDispatcher:Fh0,setRequestHeaders:Zh0,getRequestState:WPQ,setRequestState:$h0}=kB;Reflect.deleteProperty(kB,"setRequestSignal");Reflect.deleteProperty(kB,"getRequestDispatcher");Reflect.deleteProperty(kB,"setRequestDispatcher");Reflect.deleteProperty(kB,"setRequestHeaders");Reflect.deleteProperty(kB,"getRequestState");Reflect.deleteProperty(kB,"setRequestState");ug0(kB,WPQ);function Uk(A){return{method:A.method??"GET",localURLsOnly:A.localURLsOnly??!1,unsafeRequest:A.unsafeRequest??!1,body:A.body??null,client:A.client??null,reservedClient:A.reservedClient??null,replacesClientId:A.replacesClientId??"",window:A.window??"client",keepalive:A.keepalive??!1,serviceWorkers:A.serviceWorkers??"all",initiator:A.initiator??"",destination:A.destination??"",priority:A.priority??null,origin:A.origin??"client",policyContainer:A.policyContainer??"client",referrer:A.referrer??"client",referrerPolicy:A.referrerPolicy??"",mode:A.mode??"no-cors",useCORSPreflightFlag:A.useCORSPreflightFlag??!1,credentials:A.credentials??"same-origin",useCredentials:A.useCredentials??!1,cache:A.cache??"default",redirect:A.redirect??"follow",integrity:A.integrity??"",cryptoGraphicsNonceMetadata:A.cryptoGraphicsNonceMetadata??"",parserMetadata:A.parserMetadata??"",reloadNavigation:A.reloadNavigation??!1,historyNavigation:A.historyNavigation??!1,userActivation:A.userActivation??!1,taintedOrigin:A.taintedOrigin??!1,redirectCount:A.redirectCount??0,responseTainting:A.responseTainting??"basic",preventNoCacheCacheControlHeaderModification:A.preventNoCacheCacheControlHeaderModification??!1,done:A.done??!1,timingAllowFailed:A.timingAllowFailed??!1,urlList:A.urlList,url:A.urlList[0],headersList:A.headersList?new Fk(A.headersList):new Fk}}function FPQ(A){let Q=Uk({...A,body:null});if(A.body!=null)Q.body=dg0(A.body);return Q}function ZPQ(A,Q,B,Y){let J=new kB(Zk);$h0(J,A),Fh0(J,Q),Gh0(J,B);let C=new JPQ(Zk);return Zh0(J,C),CPQ(C,A.headersList),Io(C,Y),J}Object.defineProperties(kB.prototype,{method:OY,url:OY,headers:OY,redirect:OY,clone:OY,signal:OY,duplex:OY,destination:OY,body:OY,bodyUsed:OY,isHistoryNavigation:OY,isReloadNavigation:OY,keepalive:OY,integrity:OY,cache:OY,credentials:OY,attribute:OY,referrerPolicy:OY,referrer:OY,mode:OY,[Symbol.toStringTag]:{value:"Request",configurable:!0}});qQ.is.Request=qQ.util.MakeTypeAssertion(kB);qQ.converters.RequestInfo=function(A){if(typeof A==="string")return qQ.converters.USVString(A);if(qQ.is.Request(A))return A;return qQ.converters.USVString(A)};qQ.converters.RequestInit=qQ.dictionaryConverter([{key:"method",converter:qQ.converters.ByteString},{key:"headers",converter:qQ.converters.HeadersInit},{key:"body",converter:qQ.nullableConverter(qQ.converters.BodyInit)},{key:"referrer",converter:qQ.converters.USVString},{key:"referrerPolicy",converter:qQ.converters.DOMString,allowedValues:sg0},{key:"mode",converter:qQ.converters.DOMString,allowedValues:ag0},{key:"credentials",converter:qQ.converters.DOMString,allowedValues:og0},{key:"cache",converter:qQ.converters.DOMString,allowedValues:tg0},{key:"redirect",converter:qQ.converters.DOMString,allowedValues:rg0},{key:"integrity",converter:qQ.converters.DOMString},{key:"keepalive",converter:qQ.converters.boolean},{key:"signal",converter:qQ.nullableConverter((A)=>qQ.converters.AbortSignal(A,"RequestInit","signal"))},{key:"window",converter:qQ.converters.any},{key:"duplex",converter:qQ.converters.DOMString,allowedValues:eg0},{key:"dispatcher",converter:qQ.converters.any}]);$PQ.exports={Request:kB,makeRequest:Uk,fromInnerRequest:ZPQ,cloneRequest:FPQ,getRequestDispatcher:Wh0,getRequestState:WPQ}});var DPQ=R((lrY,HPQ)=>{var Uh0=u("node:assert"),C4=new Map([["sha256",0],["sha384",1],["sha512",2]]),Ek;try{Ek=u("node:crypto");let A=Ek.getHashes();if(A.length===0)C4.clear();for(let Q of C4.keys())if(A.includes(Q)===!1)C4.delete(Q)}catch{C4.clear()}var UPQ=Map.prototype.get.bind(C4),Do=Map.prototype.has.bind(C4),Eh0=Ek===void 0||C4.size===0?()=>!0:(A,Q)=>{let B=KPQ(Q);if(B.length===0)return!0;let Y=EPQ(B);for(let J of Y){let{alg:C,val:X}=J,G=VPQ(C,A);if(IPQ(G,X))return!0}return!1};function EPQ(A){let Q=[],B=null;for(let Y of A){if(Uh0(Do(Y.alg),"Invalid SRI hash algorithm token"),Q.length===0){Q.push(Y),B=Y;continue}let J=B.alg,C=UPQ(J),X=Y.alg,G=UPQ(X);if(GC)B=Y,Q[0]=Y,Q.length=1;else Q.push(Y)}return Q}function KPQ(A){let Q=[];for(let B of A.split(" ")){let J=B.split("?",1)[0],C="",X=[J.slice(0,6),J.slice(7)],G=X[0];if(!Do(G))continue;if(X[1])C=X[1];let W={alg:G,val:C};Q.push(W)}return Q}var VPQ=(A,Q)=>{return Ek.hash(A,Q,"base64")};function IPQ(A,Q){let B=A.length;if(B!==0&&A[B-1]==="=")B-=1;if(B!==0&&A[B-1]==="=")B-=1;let Y=Q.length;if(Y!==0&&Q[Y-1]==="=")Y-=1;if(Y!==0&&Q[Y-1]==="=")Y-=1;if(B!==Y)return!1;for(let J=0;J{var{makeNetworkError:cB,makeAppropriateNetworkError:Kk,filterResponse:No,makeResponse:Vk,fromInnerResponse:Kh0,getResponseState:Vh0}=eq(),{HeadersList:NPQ}=Y4(),{Request:Ih0,cloneRequest:Hh0,getRequestDispatcher:Dh0,getRequestState:Nh0}=NV(),UC=u("node:zlib"),{makePolicyContainer:Lh0,clonePolicyContainer:qh0,requestBadPort:Mh0,TAOCheck:zh0,appendRequestOriginHeader:Rh0,responseLocationURL:wh0,requestCurrentURL:yX,setRequestReferrerPolicyOnRedirect:jh0,tryUpgradeRequestToAPotentiallyTrustworthyURL:Oh0,createOpaqueTimingInfo:Ro,appendFetchMetadata:Ph0,corsCheck:Th0,crossOriginResourcePolicyCheck:Sh0,determineRequestsReferrer:kh0,coarsenedSharedCurrentTime:AM,sameOrigin:zo,isCancelled:X4,isAborted:LPQ,isErrorLike:_h0,fullyReadBody:vh0,readableStreamClose:yh0,isomorphicEncode:Ik,urlIsLocal:gh0,urlIsHttpHttpsScheme:Dk,urlHasHttpsScheme:hh0,clampAndCoarsenConnectionTimingInfo:xh0,simpleRangeHeaderValue:fh0,buildContentRange:bh0,createInflate:mh0,extractMimeType:uh0}=z9(),G4=u("node:assert"),{safelyExtractBody:wo,extractBody:qPQ}=tK(),{redirectStatusSet:RPQ,nullBodyStatus:wPQ,safeMethodsSet:dh0,requestBodyHeader:ch0,subresourceSet:lh0}=Iq(),ph0=u("node:events"),{Readable:ih0,pipeline:nh0,finished:sh0,isErrored:rh0,isReadable:Hk}=u("node:stream"),{addAbortListener:ah0,bufferToLowerCasedHeaderName:MPQ}=lQ(),{dataURLProcessor:oh0,serializeAMimeType:th0,minimizeSupportedMimeType:eh0}=l8(),{getGlobalDispatcher:Ax0}=Ak(),{webidl:jo}=HJ(),{STATUS_CODES:Qx0}=u("node:http"),{bytesMatch:Bx0}=DPQ(),{createDeferredPromise:Yx0}=Nq(),Jx0=typeof UC.createZstdDecompress==="function",Cx0=["GET","HEAD"],Xx0=typeof __UNDICI_IS_NODE__<"u"||typeof esbuildDetection<"u"?"node":"undici",Lo;class Oo extends ph0{constructor(A){super();this.dispatcher=A,this.connection=null,this.dump=!1,this.state="ongoing"}terminate(A){if(this.state!=="ongoing")return;this.state="terminated",this.connection?.destroy(A),this.emit("terminated",A)}abort(A){if(this.state!=="ongoing")return;if(this.state="aborted",!A)A=new DOMException("The operation was aborted.","AbortError");this.serializedAbortReason=A,this.connection?.destroy(A),this.emit("terminated",A)}}function Gx0(A){jPQ(A,"fetch")}function Wx0(A,Q=void 0){jo.argumentLengthCheck(arguments,1,"globalThis.fetch");let B=Yx0(),Y;try{Y=new Ih0(A,Q)}catch(Z){return B.reject(Z),B.promise}let J=Nh0(Y);if(Y.signal.aborted)return qo(B,J,null,Y.signal.reason),B.promise;if(J.client.globalObject?.constructor?.name==="ServiceWorkerGlobalScope")J.serviceWorkers="none";let X=null,G=!1,W=null;return ah0(Y.signal,()=>{G=!0,G4(W!=null),W.abort(Y.signal.reason);let Z=X?.deref();qo(B,J,Z,Y.signal.reason)}),W=PPQ({request:J,processResponseEndOfBody:Gx0,processResponse:(Z)=>{if(G)return;if(Z.aborted){qo(B,J,X,W.serializedAbortReason);return}if(Z.type==="error"){B.reject(TypeError("fetch failed",{cause:Z.error}));return}X=new WeakRef(Kh0(Z,"immutable")),B.resolve(X.deref()),B=null},dispatcher:Dh0(Y)}),B.promise}function jPQ(A,Q="other"){if(A.type==="error"&&A.aborted)return;if(!A.urlList?.length)return;let B=A.urlList[0],Y=A.timingInfo,J=A.cacheState;if(!Dk(B))return;if(Y===null)return;if(!A.timingAllowPassed)Y=Ro({startTime:Y.startTime}),J="";Y.endTime=AM(),A.timingInfo=Y,OPQ(Y,B.href,Q,globalThis,J,"",A.status)}var OPQ=performance.markResourceTiming;function qo(A,Q,B,Y){if(A)A.reject(Y);if(Q.body?.stream!=null&&Hk(Q.body.stream))Q.body.stream.cancel(Y).catch((C)=>{if(C.code==="ERR_INVALID_STATE")return;throw C});if(B==null)return;let J=Vh0(B);if(J.body?.stream!=null&&Hk(J.body.stream))J.body.stream.cancel(Y).catch((C)=>{if(C.code==="ERR_INVALID_STATE")return;throw C})}function PPQ({request:A,processRequestBodyChunkLength:Q,processRequestEndOfBody:B,processResponse:Y,processResponseEndOfBody:J,processResponseConsumeBody:C,useParallelQueue:X=!1,dispatcher:G=Ax0()}){G4(G);let W=null,F=!1;if(A.client!=null)W=A.client.globalObject,F=A.client.crossOriginIsolatedCapability;let Z=AM(F),U=Ro({startTime:Z}),$={controller:new Oo(G),request:A,timingInfo:U,processRequestBodyChunkLength:Q,processRequestEndOfBody:B,processResponse:Y,processResponseConsumeBody:C,processResponseEndOfBody:J,taskDestination:W,crossOriginIsolatedCapability:F};if(G4(!A.body||A.body.stream),A.window==="client")A.window=A.client?.globalObject?.constructor?.name==="Window"?A.client:"no-window";if(A.origin==="client")A.origin=A.client.origin;if(A.policyContainer==="client")if(A.client!=null)A.policyContainer=qh0(A.client.policyContainer);else A.policyContainer=Lh0();if(!A.headersList.contains("accept",!0))A.headersList.append("accept","*/*",!0);if(!A.headersList.contains("accept-language",!0))A.headersList.append("accept-language","*",!0);if(A.priority===null);if(lh0.has(A.destination));return TPQ($,!1),$.controller}async function TPQ(A,Q){try{let B=A.request,Y=null;if(B.localURLsOnly&&!gh0(yX(B)))Y=cB("local URLs only");if(Oh0(B),Mh0(B)==="blocked")Y=cB("bad port");if(B.referrerPolicy==="")B.referrerPolicy=B.policyContainer.referrerPolicy;if(B.referrer!=="no-referrer")B.referrer=kh0(B);if(Y===null){let C=yX(B);if(zo(C,B.url)&&B.responseTainting==="basic"||C.protocol==="data:"||(B.mode==="navigate"||B.mode==="websocket"))B.responseTainting="basic",Y=await zPQ(A);else if(B.mode==="same-origin")Y=cB('request mode cannot be "same-origin"');else if(B.mode==="no-cors")if(B.redirect!=="follow")Y=cB('redirect mode cannot be "follow" for "no-cors" request');else B.responseTainting="opaque",Y=await zPQ(A);else if(!Dk(yX(B)))Y=cB("URL scheme must be a HTTP(S) scheme");else B.responseTainting="cors",Y=await SPQ(A)}if(Q)return Y;if(Y.status!==0&&!Y.internalResponse){if(B.responseTainting==="cors");if(B.responseTainting==="basic")Y=No(Y,"basic");else if(B.responseTainting==="cors")Y=No(Y,"cors");else if(B.responseTainting==="opaque")Y=No(Y,"opaque");else G4(!1)}let J=Y.status===0?Y:Y.internalResponse;if(J.urlList.length===0)J.urlList.push(...B.urlList);if(!B.timingAllowFailed)Y.timingAllowPassed=!0;if(Y.type==="opaque"&&J.status===206&&J.rangeRequested&&!B.headers.contains("range",!0))Y=J=cB();if(Y.status!==0&&(B.method==="HEAD"||B.method==="CONNECT"||wPQ.includes(J.status)))J.body=null,A.controller.dump=!0;if(B.integrity){let C=(G)=>Mo(A,cB(G));if(B.responseTainting==="opaque"||Y.body==null){C(Y.error);return}let X=(G)=>{if(!Bx0(G,B.integrity)){C("integrity mismatch");return}Y.body=wo(G)[0],Mo(A,Y)};vh0(Y.body,X,C)}else Mo(A,Y)}catch(B){A.controller.terminate(B)}}function zPQ(A){if(X4(A)&&A.request.redirectCount===0)return Promise.resolve(Kk(A));let{request:Q}=A,{protocol:B}=yX(Q);switch(B){case"about:":return Promise.resolve(cB("about scheme is not supported"));case"blob:":{if(!Lo)Lo=u("node:buffer").resolveObjectURL;let Y=yX(Q);if(Y.search.length!==0)return Promise.resolve(cB("NetworkError when attempting to fetch resource."));let J=Lo(Y.toString());if(Q.method!=="GET"||!jo.is.Blob(J))return Promise.resolve(cB("invalid method"));let C=Vk(),X=J.size,G=Ik(`${X}`),W=J.type;if(!Q.headersList.contains("range",!0)){let F=qPQ(J);C.statusText="OK",C.body=F[0],C.headersList.set("content-length",G,!0),C.headersList.set("content-type",W,!0)}else{C.rangeRequested=!0;let F=Q.headersList.get("range",!0),Z=fh0(F,!0);if(Z==="failure")return Promise.resolve(cB("failed to fetch the data URL"));let{rangeStartValue:U,rangeEndValue:$}=Z;if(U===null)U=X-$,$=U+$-1;else{if(U>=X)return Promise.resolve(cB("Range start is greater than the blob's size."));if($===null||$>=X)$=X-1}let E=J.slice(U,$,W),K=qPQ(E);C.body=K[0];let I=Ik(`${E.size}`),V=bh0(U,$,X);C.status=206,C.statusText="Partial Content",C.headersList.set("content-length",I,!0),C.headersList.set("content-type",W,!0),C.headersList.set("content-range",V,!0)}return Promise.resolve(C)}case"data:":{let Y=yX(Q),J=oh0(Y);if(J==="failure")return Promise.resolve(cB("failed to fetch the data URL"));let C=th0(J.mimeType);return Promise.resolve(Vk({statusText:"OK",headersList:[["content-type",{name:"Content-Type",value:C}]],body:wo(J.body)[0]}))}case"file:":return Promise.resolve(cB("not implemented... yet..."));case"http:":case"https:":return SPQ(A).catch((Y)=>cB(Y));default:return Promise.resolve(cB("unknown scheme"))}}function Fx0(A,Q){if(A.request.done=!0,A.processResponseDone!=null)queueMicrotask(()=>A.processResponseDone(Q))}function Mo(A,Q){let B=A.timingInfo,Y=()=>{let C=Date.now();if(A.request.destination==="document")A.controller.fullTimingInfo=B;A.controller.reportTimingSteps=()=>{if(!Dk(A.request.url))return;B.endTime=C;let{cacheState:G,bodyInfo:W}=Q;if(!Q.timingAllowPassed)B=Ro(B),G="";let F=0;if(A.request.mode!=="navigator"||!Q.hasCrossOriginRedirects){F=Q.status;let Z=uh0(Q.headersList);if(Z!=="failure")W.contentType=eh0(Z)}if(A.request.initiatorType!=null)OPQ(B,A.request.url.href,A.request.initiatorType,globalThis,G,W,F)};let X=()=>{if(A.request.done=!0,A.processResponseEndOfBody!=null)queueMicrotask(()=>A.processResponseEndOfBody(Q));if(A.request.initiatorType!=null)A.controller.reportTimingSteps()};queueMicrotask(()=>X())};if(A.processResponse!=null)queueMicrotask(()=>{A.processResponse(Q),A.processResponse=null});let J=Q.type==="error"?Q:Q.internalResponse??Q;if(J.body==null)Y();else sh0(J.body.stream,()=>{Y()})}async function SPQ(A){let Q=A.request,B=null,Y=null,J=A.timingInfo;if(Q.serviceWorkers==="all");if(B===null){if(Q.redirect==="follow")Q.serviceWorkers="none";if(Y=B=await kPQ(A),Q.responseTainting==="cors"&&Th0(Q,B)==="failure")return cB("cors failure");if(zh0(Q,B)==="failure")Q.timingAllowFailed=!0}if((Q.responseTainting==="opaque"||B.type==="opaque")&&Sh0(Q.origin,Q.client,Q.destination,Y)==="blocked")return cB("blocked");if(RPQ.has(Y.status)){if(Q.redirect!=="manual")A.controller.connection.destroy(void 0,!1);if(Q.redirect==="error")B=cB("unexpected redirect");else if(Q.redirect==="manual")B=Y;else if(Q.redirect==="follow")B=await Zx0(A,B);else G4(!1)}return B.timingInfo=J,B}function Zx0(A,Q){let B=A.request,Y=Q.internalResponse?Q.internalResponse:Q,J;try{if(J=wh0(Y,yX(B).hash),J==null)return Q}catch(X){return Promise.resolve(cB(X))}if(!Dk(J))return Promise.resolve(cB("URL scheme must be a HTTP(S) scheme"));if(B.redirectCount===20)return Promise.resolve(cB("redirect count exceeded"));if(B.redirectCount+=1,B.mode==="cors"&&(J.username||J.password)&&!zo(B,J))return Promise.resolve(cB('cross origin not allowed for request mode "cors"'));if(B.responseTainting==="cors"&&(J.username||J.password))return Promise.resolve(cB('URL cannot contain credentials for request mode "cors"'));if(Y.status!==303&&B.body!=null&&B.body.source==null)return Promise.resolve(cB());if([301,302].includes(Y.status)&&B.method==="POST"||Y.status===303&&!Cx0.includes(B.method)){B.method="GET",B.body=null;for(let X of ch0)B.headersList.delete(X)}if(!zo(yX(B),J))B.headersList.delete("authorization",!0),B.headersList.delete("proxy-authorization",!0),B.headersList.delete("cookie",!0),B.headersList.delete("host",!0);if(B.body!=null)G4(B.body.source!=null),B.body=wo(B.body.source)[0];let C=A.timingInfo;if(C.redirectEndTime=C.postRedirectStartTime=AM(A.crossOriginIsolatedCapability),C.redirectStartTime===0)C.redirectStartTime=C.startTime;return B.urlList.push(J),jh0(B,Y),TPQ(A,!0)}async function kPQ(A,Q=!1,B=!1){let Y=A.request,J=null,C=null,X=null,G=null,W=!1;if(Y.window==="no-window"&&Y.redirect==="error")J=A,C=Y;else C=Hh0(Y),J={...A},J.request=C;let F=Y.credentials==="include"||Y.credentials==="same-origin"&&Y.responseTainting==="basic",Z=C.body?C.body.length:null,U=null;if(C.body==null&&["POST","PUT"].includes(C.method))U="0";if(Z!=null)U=Ik(`${Z}`);if(U!=null)C.headersList.append("content-length",U,!0);if(Z!=null&&C.keepalive);if(jo.is.URL(C.referrer))C.headersList.append("referer",Ik(C.referrer.href),!0);if(Rh0(C),Ph0(C),!C.headersList.contains("user-agent",!0))C.headersList.append("user-agent",Xx0,!0);if(C.cache==="default"&&(C.headersList.contains("if-modified-since",!0)||C.headersList.contains("if-none-match",!0)||C.headersList.contains("if-unmodified-since",!0)||C.headersList.contains("if-match",!0)||C.headersList.contains("if-range",!0)))C.cache="no-store";if(C.cache==="no-cache"&&!C.preventNoCacheCacheControlHeaderModification&&!C.headersList.contains("cache-control",!0))C.headersList.append("cache-control","max-age=0",!0);if(C.cache==="no-store"||C.cache==="reload"){if(!C.headersList.contains("pragma",!0))C.headersList.append("pragma","no-cache",!0);if(!C.headersList.contains("cache-control",!0))C.headersList.append("cache-control","no-cache",!0)}if(C.headersList.contains("range",!0))C.headersList.append("accept-encoding","identity",!0);if(!C.headersList.contains("accept-encoding",!0))if(hh0(yX(C)))C.headersList.append("accept-encoding","br, gzip, deflate",!0);else C.headersList.append("accept-encoding","gzip, deflate",!0);if(C.headersList.delete("host",!0),G==null)C.cache="no-store";if(C.cache!=="no-store"&&C.cache!=="reload");if(X==null){if(C.cache==="only-if-cached")return cB("only if cached");let $=await $x0(J,F,B);if(!dh0.has(C.method)&&$.status>=200&&$.status<=399);if(W&&$.status===304);if(X==null)X=$}if(X.urlList=[...C.urlList],C.headersList.contains("range",!0))X.rangeRequested=!0;if(X.requestIncludesCredentials=F,X.status===407){if(Y.window==="no-window")return cB();if(X4(A))return Kk(A);return cB("proxy authentication required")}if(X.status===421&&!B&&(Y.body==null||Y.body.source!=null)){if(X4(A))return Kk(A);A.controller.connection.destroy(),X=await kPQ(A,Q,!0)}return X}async function $x0(A,Q=!1,B=!1){G4(!A.controller.connection||A.controller.connection.destroyed),A.controller.connection={abort:null,destroyed:!1,destroy(K,I=!0){if(!this.destroyed){if(this.destroyed=!0,I)this.abort?.(K??new DOMException("The operation was aborted.","AbortError"))}}};let Y=A.request,J=null,C=A.timingInfo;if(!0)Y.cache="no-store";let G=B?"yes":"no";if(Y.mode==="websocket");let W=null;if(Y.body==null&&A.processRequestEndOfBody)queueMicrotask(()=>A.processRequestEndOfBody());else if(Y.body!=null){let K=async function*(H){if(X4(A))return;yield H,A.processRequestBodyChunkLength?.(H.byteLength)},I=()=>{if(X4(A))return;if(A.processRequestEndOfBody)A.processRequestEndOfBody()},V=(H)=>{if(X4(A))return;if(H.name==="AbortError")A.controller.abort();else A.controller.terminate(H)};W=async function*(){try{for await(let H of Y.body.stream)yield*K(H);I()}catch(H){V(H)}}()}try{let{body:K,status:I,statusText:V,headersList:H,socket:D}=await E({body:W});if(D)J=Vk({status:I,statusText:V,headersList:H,socket:D});else{let L=K[Symbol.asyncIterator]();A.controller.next=()=>L.next(),J=Vk({status:I,statusText:V,headersList:H})}}catch(K){if(K.name==="AbortError")return A.controller.connection.destroy(),Kk(A,K);return cB(K)}let U=new ReadableStream({start(K){A.controller.controller=K},pull:()=>{return A.controller.resume()},cancel:(K)=>{if(!X4(A))A.controller.abort(K)},type:"bytes"});if(J.body={stream:U,source:null,length:null},!A.controller.resume)A.controller.on("terminated",$);A.controller.resume=async()=>{while(!0){let K,I;try{let{done:H,value:D}=await A.controller.next();if(LPQ(A))break;K=H?void 0:D}catch(H){if(A.controller.ended&&!C.encodedBodySize)K=void 0;else K=H,I=!0}if(K===void 0){yh0(A.controller.controller),Fx0(A,J);return}if(C.decodedBodySize+=K?.byteLength??0,I){A.controller.terminate(K);return}let V=new Uint8Array(K);if(V.byteLength)A.controller.controller.enqueue(V);if(rh0(U)){A.controller.terminate();return}if(A.controller.controller.desiredSize<=0)return}};function $(K){if(LPQ(A)){if(J.aborted=!0,Hk(U))A.controller.controller.error(A.controller.serializedAbortReason)}else if(Hk(U))A.controller.controller.error(TypeError("terminated",{cause:_h0(K)?K:void 0}));A.controller.connection.destroy()}return J;function E({body:K}){let I=yX(Y),V=A.controller.dispatcher;return new Promise((H,D)=>V.dispatch({path:I.pathname+I.search,origin:I.origin,method:Y.method,body:V.isMockActive?Y.body&&(Y.body.source||Y.body.stream):K,headers:Y.headersList.entries,maxRedirections:0,upgrade:Y.mode==="websocket"?"websocket":void 0},{body:null,abort:null,onConnect(L){let{connection:z}=A.controller;if(C.finalConnectionTimingInfo=xh0(void 0,C.postRedirectStartTime,A.crossOriginIsolatedCapability),z.destroyed)L(new DOMException("The operation was aborted.","AbortError"));else A.controller.on("terminated",L),this.abort=z.abort=L;C.finalNetworkRequestStartTime=AM(A.crossOriginIsolatedCapability)},onResponseStarted(){C.finalNetworkResponseStartTime=AM(A.crossOriginIsolatedCapability)},onHeaders(L,z,M,N){if(L<200)return!1;let q=new NPQ;for(let k=0;k=0;--S){let v=T[S].trim();if(v==="x-gzip"||v==="gzip")_.push(UC.createGunzip({flush:UC.constants.Z_SYNC_FLUSH,finishFlush:UC.constants.Z_SYNC_FLUSH}));else if(v==="deflate")_.push(mh0({flush:UC.constants.Z_SYNC_FLUSH,finishFlush:UC.constants.Z_SYNC_FLUSH}));else if(v==="br")_.push(UC.createBrotliDecompress({flush:UC.constants.BROTLI_OPERATION_FLUSH,finishFlush:UC.constants.BROTLI_OPERATION_FLUSH}));else if(v==="zstd"&&Jx0)_.push(UC.createZstdDecompress({flush:UC.constants.ZSTD_e_continue,finishFlush:UC.constants.ZSTD_e_end}));else{_.length=0;break}}}let j=this.onError.bind(this);return H({status:L,statusText:N,headersList:q,body:_.length?nh0(this.body,..._,(k)=>{if(k)this.onError(k)}).on("error",j):this.body.on("error",j)}),!0},onData(L){if(A.controller.dump)return;let z=L;return C.encodedBodySize+=z.byteLength,this.body.push(z)},onComplete(){if(this.abort)A.controller.off("terminated",this.abort);A.controller.ended=!0,this.body.push(null)},onError(L){if(this.abort)A.controller.off("terminated",this.abort);this.body?.destroy(L),A.controller.terminate(L),D(L)},onUpgrade(L,z,M){if(L!==101)return;let N=new NPQ;for(let q=0;q{var Ux0=u("node:assert"),{URLSerializer:vPQ}=l8(),{isValidHeaderName:Ex0}=z9();function Kx0(A,Q,B=!1){let Y=vPQ(A,B),J=vPQ(Q,B);return Y===J}function Vx0(A){Ux0(A!==null);let Q=[];for(let B of A.split(","))if(B=B.trim(),Ex0(B))Q.push(B);return Q}yPQ.exports={urlEquals:Kx0,getFieldValues:Vx0}});var fPQ=R((nrY,xPQ)=>{var Po=u("node:assert"),{kConstruct:Ix0}=B0(),{urlEquals:Hx0,getFieldValues:To}=gPQ(),{kEnumerableProperty:W4,isDisturbed:Dx0}=lQ(),{webidl:JQ}=HJ(),{cloneResponse:Nx0,fromInnerResponse:Lx0,getResponseState:qx0}=eq(),{Request:BM,fromInnerRequest:Mx0,getRequestState:gX}=NV(),{fetching:zx0}=QM(),{urlIsHttpHttpsScheme:Nk,readAllBytes:Rx0}=z9(),{createDeferredPromise:LV}=Nq();class hX{#A;constructor(){if(arguments[0]!==Ix0)JQ.illegalConstructor();JQ.util.markAsUncloneable(this),this.#A=arguments[1]}async match(A,Q={}){JQ.brandCheck(this,hX);let B="Cache.match";JQ.argumentLengthCheck(arguments,1,B),A=JQ.converters.RequestInfo(A),Q=JQ.converters.CacheQueryOptions(Q,B,"options");let Y=this.#J(A,Q,1);if(Y.length===0)return;return Y[0]}async matchAll(A=void 0,Q={}){JQ.brandCheck(this,hX);let B="Cache.matchAll";if(A!==void 0)A=JQ.converters.RequestInfo(A);return Q=JQ.converters.CacheQueryOptions(Q,B,"options"),this.#J(A,Q)}async add(A){JQ.brandCheck(this,hX);let Q="Cache.add";JQ.argumentLengthCheck(arguments,1,Q),A=JQ.converters.RequestInfo(A);let B=[A];return await this.addAll(B)}async addAll(A){JQ.brandCheck(this,hX);let Q="Cache.addAll";JQ.argumentLengthCheck(arguments,1,Q);let B=[],Y=[];for(let U of A){if(U===void 0)throw JQ.errors.conversionFailed({prefix:Q,argument:"Argument 1",types:["undefined is not allowed"]});if(U=JQ.converters.RequestInfo(U),typeof U==="string")continue;let $=gX(U);if(!Nk($.url)||$.method!=="GET")throw JQ.errors.exception({header:Q,message:"Expected http/s scheme when method is not GET."})}let J=[];for(let U of A){let $=gX(new BM(U));if(!Nk($.url))throw JQ.errors.exception({header:Q,message:"Expected http/s scheme."});$.initiator="fetch",$.destination="subresource",Y.push($);let E=LV();J.push(zx0({request:$,processResponse(K){if(K.type==="error"||K.status===206||K.status<200||K.status>299)E.reject(JQ.errors.exception({header:"Cache.addAll",message:"Received an invalid status code or the request failed."}));else if(K.headersList.contains("vary")){let I=To(K.headersList.get("vary"));for(let V of I)if(V==="*"){E.reject(JQ.errors.exception({header:"Cache.addAll",message:"invalid vary field value"}));for(let H of J)H.abort();return}}},processResponseEndOfBody(K){if(K.aborted){E.reject(new DOMException("aborted","AbortError"));return}E.resolve(K)}})),B.push(E.promise)}let X=await Promise.all(B),G=[],W=0;for(let U of X){let $={type:"put",request:Y[W],response:U};G.push($),W++}let F=LV(),Z=null;try{this.#Q(G)}catch(U){Z=U}return queueMicrotask(()=>{if(Z===null)F.resolve(void 0);else F.reject(Z)}),F.promise}async put(A,Q){JQ.brandCheck(this,hX);let B="Cache.put";JQ.argumentLengthCheck(arguments,2,B),A=JQ.converters.RequestInfo(A),Q=JQ.converters.Response(Q,B,"response");let Y=null;if(JQ.is.Request(A))Y=gX(A);else Y=gX(new BM(A));if(!Nk(Y.url)||Y.method!=="GET")throw JQ.errors.exception({header:B,message:"Expected an http/s scheme when method is not GET"});let J=qx0(Q);if(J.status===206)throw JQ.errors.exception({header:B,message:"Got 206 status"});if(J.headersList.contains("vary")){let $=To(J.headersList.get("vary"));for(let E of $)if(E==="*")throw JQ.errors.exception({header:B,message:"Got * vary field value"})}if(J.body&&(Dx0(J.body.stream)||J.body.stream.locked))throw JQ.errors.exception({header:B,message:"Response body is locked or disturbed"});let C=Nx0(J),X=LV();if(J.body!=null){let E=J.body.stream.getReader();Rx0(E,X.resolve,X.reject)}else X.resolve(void 0);let G=[],W={type:"put",request:Y,response:C};G.push(W);let F=await X.promise;if(C.body!=null)C.body.source=F;let Z=LV(),U=null;try{this.#Q(G)}catch($){U=$}return queueMicrotask(()=>{if(U===null)Z.resolve();else Z.reject(U)}),Z.promise}async delete(A,Q={}){JQ.brandCheck(this,hX);let B="Cache.delete";JQ.argumentLengthCheck(arguments,1,B),A=JQ.converters.RequestInfo(A),Q=JQ.converters.CacheQueryOptions(Q,B,"options");let Y=null;if(JQ.is.Request(A)){if(Y=gX(A),Y.method!=="GET"&&!Q.ignoreMethod)return!1}else Po(typeof A==="string"),Y=gX(new BM(A));let J=[],C={type:"delete",request:Y,options:Q};J.push(C);let X=LV(),G=null,W;try{W=this.#Q(J)}catch(F){G=F}return queueMicrotask(()=>{if(G===null)X.resolve(!!W?.length);else X.reject(G)}),X.promise}async keys(A=void 0,Q={}){JQ.brandCheck(this,hX);let B="Cache.keys";if(A!==void 0)A=JQ.converters.RequestInfo(A);Q=JQ.converters.CacheQueryOptions(Q,B,"options");let Y=null;if(A!==void 0){if(JQ.is.Request(A)){if(Y=gX(A),Y.method!=="GET"&&!Q.ignoreMethod)return[]}else if(typeof A==="string")Y=gX(new BM(A))}let J=LV(),C=[];if(A===void 0)for(let X of this.#A)C.push(X[0]);else{let X=this.#B(Y,Q);for(let G of X)C.push(G[0])}return queueMicrotask(()=>{let X=[];for(let G of C){let W=Mx0(G,void 0,new AbortController().signal,"immutable");X.push(W)}J.resolve(Object.freeze(X))}),J.promise}#Q(A){let Q=this.#A,B=[...Q],Y=[],J=[];try{for(let C of A){if(C.type!=="delete"&&C.type!=="put")throw JQ.errors.exception({header:"Cache.#batchCacheOperations",message:'operation type does not match "delete" or "put"'});if(C.type==="delete"&&C.response!=null)throw JQ.errors.exception({header:"Cache.#batchCacheOperations",message:"delete operation should not have an associated response"});if(this.#B(C.request,C.options,Y).length)throw new DOMException("???","InvalidStateError");let X;if(C.type==="delete"){if(X=this.#B(C.request,C.options),X.length===0)return[];for(let G of X){let W=Q.indexOf(G);Po(W!==-1),Q.splice(W,1)}}else if(C.type==="put"){if(C.response==null)throw JQ.errors.exception({header:"Cache.#batchCacheOperations",message:"put operation should have an associated response"});let G=C.request;if(!Nk(G.url))throw JQ.errors.exception({header:"Cache.#batchCacheOperations",message:"expected http or https scheme"});if(G.method!=="GET")throw JQ.errors.exception({header:"Cache.#batchCacheOperations",message:"not get method"});if(C.options!=null)throw JQ.errors.exception({header:"Cache.#batchCacheOperations",message:"options must not be defined"});X=this.#B(C.request);for(let W of X){let F=Q.indexOf(W);Po(F!==-1),Q.splice(F,1)}Q.push([C.request,C.response]),Y.push([C.request,C.response])}J.push([C.request,C.response])}return J}catch(C){throw this.#A.length=0,this.#A=B,C}}#B(A,Q,B){let Y=[],J=B??this.#A;for(let C of J){let[X,G]=C;if(this.#Y(A,X,G,Q))Y.push(C)}return Y}#Y(A,Q,B=null,Y){let J=new URL(A.url),C=new URL(Q.url);if(Y?.ignoreSearch)C.search="",J.search="";if(!Hx0(J,C,!0))return!1;if(B==null||Y?.ignoreVary||!B.headersList.contains("vary"))return!0;let X=To(B.headersList.get("vary"));for(let G of X){if(G==="*")return!1;let W=Q.headersList.get(G),F=A.headersList.get(G);if(W!==F)return!1}return!0}#J(A,Q,B=1/0){let Y=null;if(A!==void 0){if(JQ.is.Request(A)){if(Y=gX(A),Y.method!=="GET"&&!Q.ignoreMethod)return[]}else if(typeof A==="string")Y=gX(new BM(A))}let J=[];if(A===void 0)for(let X of this.#A)J.push(X[1]);else{let X=this.#B(Y,Q);for(let G of X)J.push(G[1])}let C=[];for(let X of J){let G=Lx0(X,"immutable");if(C.push(G.clone()),C.length>=B)break}return Object.freeze(C)}}Object.defineProperties(hX.prototype,{[Symbol.toStringTag]:{value:"Cache",configurable:!0},match:W4,matchAll:W4,add:W4,addAll:W4,put:W4,delete:W4,keys:W4});var hPQ=[{key:"ignoreSearch",converter:JQ.converters.boolean,defaultValue:()=>!1},{key:"ignoreMethod",converter:JQ.converters.boolean,defaultValue:()=>!1},{key:"ignoreVary",converter:JQ.converters.boolean,defaultValue:()=>!1}];JQ.converters.CacheQueryOptions=JQ.dictionaryConverter(hPQ);JQ.converters.MultiCacheQueryOptions=JQ.dictionaryConverter([...hPQ,{key:"cacheName",converter:JQ.converters.DOMString}]);JQ.converters.Response=JQ.interfaceConverter(JQ.is.Response,"Response");JQ.converters["sequence"]=JQ.sequenceConverter(JQ.converters.RequestInfo);xPQ.exports={Cache:hX}});var mPQ=R((srY,bPQ)=>{var{Cache:Lk}=fPQ(),{webidl:uJ}=HJ(),{kEnumerableProperty:YM}=lQ(),{kConstruct:JM}=B0();class UF{#A=new Map;constructor(){if(arguments[0]!==JM)uJ.illegalConstructor();uJ.util.markAsUncloneable(this)}async match(A,Q={}){if(uJ.brandCheck(this,UF),uJ.argumentLengthCheck(arguments,1,"CacheStorage.match"),A=uJ.converters.RequestInfo(A),Q=uJ.converters.MultiCacheQueryOptions(Q),Q.cacheName!=null){if(this.#A.has(Q.cacheName)){let B=this.#A.get(Q.cacheName);return await new Lk(JM,B).match(A,Q)}}else for(let B of this.#A.values()){let J=await new Lk(JM,B).match(A,Q);if(J!==void 0)return J}}async has(A){uJ.brandCheck(this,UF);let Q="CacheStorage.has";return uJ.argumentLengthCheck(arguments,1,Q),A=uJ.converters.DOMString(A,Q,"cacheName"),this.#A.has(A)}async open(A){uJ.brandCheck(this,UF);let Q="CacheStorage.open";if(uJ.argumentLengthCheck(arguments,1,Q),A=uJ.converters.DOMString(A,Q,"cacheName"),this.#A.has(A)){let Y=this.#A.get(A);return new Lk(JM,Y)}let B=[];return this.#A.set(A,B),new Lk(JM,B)}async delete(A){uJ.brandCheck(this,UF);let Q="CacheStorage.delete";return uJ.argumentLengthCheck(arguments,1,Q),A=uJ.converters.DOMString(A,Q,"cacheName"),this.#A.delete(A)}async keys(){return uJ.brandCheck(this,UF),[...this.#A.keys()]}}Object.defineProperties(UF.prototype,{[Symbol.toStringTag]:{value:"CacheStorage",configurable:!0},match:YM,has:YM,open:YM,delete:YM,keys:YM});bPQ.exports={CacheStorage:UF}});var dPQ=R((rrY,uPQ)=>{uPQ.exports={maxAttributeValueSize:1024,maxNameValuePairSize:4096}});var So=R((arY,nPQ)=>{function wx0(A){for(let Q=0;Q=0&&B<=8||B>=10&&B<=31||B===127)return!0}return!1}function cPQ(A){for(let Q=0;Q126||B===34||B===40||B===41||B===60||B===62||B===64||B===44||B===59||B===58||B===92||B===47||B===91||B===93||B===63||B===61||B===123||B===125)throw Error("Invalid cookie name")}}function lPQ(A){let Q=A.length,B=0;if(A[0]==='"'){if(Q===1||A[Q-1]!=='"')throw Error("Invalid cookie value");--Q,++B}while(B126||Y===34||Y===44||Y===59||Y===92)throw Error("Invalid cookie value")}}function pPQ(A){for(let Q=0;QQ.toString().padStart(2,"0"));function iPQ(A){if(typeof A==="number")A=new Date(A);return`${Ox0[A.getUTCDay()]}, ${qk[A.getUTCDate()]} ${Px0[A.getUTCMonth()]} ${A.getUTCFullYear()} ${qk[A.getUTCHours()]}:${qk[A.getUTCMinutes()]}:${qk[A.getUTCSeconds()]} GMT`}function Tx0(A){if(A<0)throw Error("Invalid cookie max-age")}function Sx0(A){if(A.name.length===0)return null;cPQ(A.name),lPQ(A.value);let Q=[`${A.name}=${A.value}`];if(A.name.startsWith("__Secure-"))A.secure=!0;if(A.name.startsWith("__Host-"))A.secure=!0,A.domain=null,A.path="/";if(A.secure)Q.push("Secure");if(A.httpOnly)Q.push("HttpOnly");if(typeof A.maxAge==="number")Tx0(A.maxAge),Q.push(`Max-Age=${A.maxAge}`);if(A.domain)jx0(A.domain),Q.push(`Domain=${A.domain}`);if(A.path)pPQ(A.path),Q.push(`Path=${A.path}`);if(A.expires&&A.expires.toString()!=="Invalid Date")Q.push(`Expires=${iPQ(A.expires)}`);if(A.sameSite)Q.push(`SameSite=${A.sameSite}`);for(let B of A.unparsed){if(!B.includes("="))throw Error("Invalid unparsed");let[Y,...J]=B.split("=");Q.push(`${Y.trim()}=${J.join("=")}`)}return Q.join("; ")}nPQ.exports={isCTLExcludingHtab:wx0,validateCookieName:cPQ,validateCookiePath:pPQ,validateCookieValue:lPQ,toIMFDate:iPQ,stringify:Sx0}});var rPQ=R((orY,sPQ)=>{var{maxNameValuePairSize:kx0,maxAttributeValueSize:_x0}=dPQ(),{isCTLExcludingHtab:vx0}=So(),{collectASequenceOfCodePointsFast:Mk}=l8(),yx0=u("node:assert"),{unescape:gx0}=u("node:querystring");function hx0(A){if(vx0(A))return null;let Q="",B="",Y="",J="";if(A.includes(";")){let C={position:0};Q=Mk(";",A,C),B=A.slice(C.position)}else Q=A;if(!Q.includes("="))J=Q;else{let C={position:0};Y=Mk("=",Q,C),J=Q.slice(C.position+1)}if(Y=Y.trim(),J=J.trim(),Y.length+J.length>kx0)return null;return{name:Y,value:gx0(J),...qV(B)}}function qV(A,Q={}){if(A.length===0)return Q;yx0(A[0]===";"),A=A.slice(1);let B="";if(A.includes(";"))B=Mk(";",A,{position:0}),A=A.slice(B.length);else B=A,A="";let Y="",J="";if(B.includes("=")){let X={position:0};Y=Mk("=",B,X),J=B.slice(X.position+1)}else Y=B;if(Y=Y.trim(),J=J.trim(),J.length>_x0)return qV(A,Q);let C=Y.toLowerCase();if(C==="expires"){let X=new Date(J);Q.expires=X}else if(C==="max-age"){let X=J.charCodeAt(0);if((X<48||X>57)&&J[0]!=="-")return qV(A,Q);if(!/^\d+$/.test(J))return qV(A,Q);let G=Number(J);Q.maxAge=G}else if(C==="domain"){let X=J;if(X[0]===".")X=X.slice(1);X=X.toLowerCase(),Q.domain=X}else if(C==="path"){let X="";if(J.length===0||J[0]!=="/")X="/";else X=J;Q.path=X}else if(C==="secure")Q.secure=!0;else if(C==="httponly")Q.httpOnly=!0;else if(C==="samesite"){let X="Default",G=J.toLowerCase();if(G.includes("none"))X="None";if(G.includes("strict"))X="Strict";if(G.includes("lax"))X="Lax";Q.sameSite=X}else Q.unparsed??=[],Q.unparsed.push(`${Y}=${J}`);return qV(A,Q)}sPQ.exports={parseSetCookie:hx0,parseUnparsedAttributes:qV}});var ePQ=R((trY,tPQ)=>{var{parseSetCookie:aPQ}=rPQ(),{stringify:xx0}=So(),{webidl:zB}=HJ(),{Headers:fx0}=Y4(),zk=zB.brandCheckMultiple([fx0,globalThis.Headers].filter(Boolean));function bx0(A){zB.argumentLengthCheck(arguments,1,"getCookies"),zk(A);let Q=A.get("cookie"),B={};if(!Q)return B;for(let Y of Q.split(";")){let[J,...C]=Y.split("=");B[J.trim()]=C.join("=")}return B}function mx0(A,Q,B){zk(A);let Y="deleteCookie";zB.argumentLengthCheck(arguments,2,Y),Q=zB.converters.DOMString(Q,Y,"name"),B=zB.converters.DeleteCookieAttributes(B),oPQ(A,{name:Q,value:"",expires:new Date(0),...B})}function ux0(A){zB.argumentLengthCheck(arguments,1,"getSetCookies"),zk(A);let Q=A.getSetCookie();if(!Q)return[];return Q.map((B)=>aPQ(B))}function dx0(A){return A=zB.converters.DOMString(A),aPQ(A)}function oPQ(A,Q){zB.argumentLengthCheck(arguments,2,"setCookie"),zk(A),Q=zB.converters.Cookie(Q);let B=xx0(Q);if(B)A.append("set-cookie",B,!0)}zB.converters.DeleteCookieAttributes=zB.dictionaryConverter([{converter:zB.nullableConverter(zB.converters.DOMString),key:"path",defaultValue:()=>null},{converter:zB.nullableConverter(zB.converters.DOMString),key:"domain",defaultValue:()=>null}]);zB.converters.Cookie=zB.dictionaryConverter([{converter:zB.converters.DOMString,key:"name"},{converter:zB.converters.DOMString,key:"value"},{converter:zB.nullableConverter((A)=>{if(typeof A==="number")return zB.converters["unsigned long long"](A);return new Date(A)}),key:"expires",defaultValue:()=>null},{converter:zB.nullableConverter(zB.converters["long long"]),key:"maxAge",defaultValue:()=>null},{converter:zB.nullableConverter(zB.converters.DOMString),key:"domain",defaultValue:()=>null},{converter:zB.nullableConverter(zB.converters.DOMString),key:"path",defaultValue:()=>null},{converter:zB.nullableConverter(zB.converters.boolean),key:"secure",defaultValue:()=>null},{converter:zB.nullableConverter(zB.converters.boolean),key:"httpOnly",defaultValue:()=>null},{converter:zB.converters.USVString,key:"sameSite",allowedValues:["Strict","Lax","None"]},{converter:zB.sequenceConverter(zB.converters.DOMString),key:"unparsed",defaultValue:()=>[]}]);tPQ.exports={getCookies:bx0,deleteCookie:mx0,getSetCookies:ux0,setCookie:oPQ,parseCookie:dx0}});var Rk=R((erY,QTQ)=>{var{webidl:FQ}=HJ(),{kEnumerableProperty:C8}=lQ(),{kConstruct:ATQ}=B0();class r8 extends Event{#A;constructor(A,Q={}){if(A===ATQ){super(arguments[1],arguments[2]);FQ.util.markAsUncloneable(this);return}let B="MessageEvent constructor";FQ.argumentLengthCheck(arguments,1,B),A=FQ.converters.DOMString(A,B,"type"),Q=FQ.converters.MessageEventInit(Q,B,"eventInitDict");super(A,Q);this.#A=Q,FQ.util.markAsUncloneable(this)}get data(){return FQ.brandCheck(this,r8),this.#A.data}get origin(){return FQ.brandCheck(this,r8),this.#A.origin}get lastEventId(){return FQ.brandCheck(this,r8),this.#A.lastEventId}get source(){return FQ.brandCheck(this,r8),this.#A.source}get ports(){if(FQ.brandCheck(this,r8),!Object.isFrozen(this.#A.ports))Object.freeze(this.#A.ports);return this.#A.ports}initMessageEvent(A,Q=!1,B=!1,Y=null,J="",C="",X=null,G=[]){return FQ.brandCheck(this,r8),FQ.argumentLengthCheck(arguments,1,"MessageEvent.initMessageEvent"),new r8(A,{bubbles:Q,cancelable:B,data:Y,origin:J,lastEventId:C,source:X,ports:G})}static createFastMessageEvent(A,Q){let B=new r8(ATQ,A,Q);return B.#A=Q,B.#A.data??=null,B.#A.origin??="",B.#A.lastEventId??="",B.#A.source??=null,B.#A.ports??=[],B}}var{createFastMessageEvent:cx0}=r8;delete r8.createFastMessageEvent;class MV extends Event{#A;constructor(A,Q={}){FQ.argumentLengthCheck(arguments,1,"CloseEvent constructor"),A=FQ.converters.DOMString(A,"CloseEvent constructor","type"),Q=FQ.converters.CloseEventInit(Q);super(A,Q);this.#A=Q,FQ.util.markAsUncloneable(this)}get wasClean(){return FQ.brandCheck(this,MV),this.#A.wasClean}get code(){return FQ.brandCheck(this,MV),this.#A.code}get reason(){return FQ.brandCheck(this,MV),this.#A.reason}}class EF extends Event{#A;constructor(A,Q){FQ.argumentLengthCheck(arguments,1,"ErrorEvent constructor");super(A,Q);FQ.util.markAsUncloneable(this),A=FQ.converters.DOMString(A,"ErrorEvent constructor","type"),Q=FQ.converters.ErrorEventInit(Q??{}),this.#A=Q}get message(){return FQ.brandCheck(this,EF),this.#A.message}get filename(){return FQ.brandCheck(this,EF),this.#A.filename}get lineno(){return FQ.brandCheck(this,EF),this.#A.lineno}get colno(){return FQ.brandCheck(this,EF),this.#A.colno}get error(){return FQ.brandCheck(this,EF),this.#A.error}}Object.defineProperties(r8.prototype,{[Symbol.toStringTag]:{value:"MessageEvent",configurable:!0},data:C8,origin:C8,lastEventId:C8,source:C8,ports:C8,initMessageEvent:C8});Object.defineProperties(MV.prototype,{[Symbol.toStringTag]:{value:"CloseEvent",configurable:!0},reason:C8,code:C8,wasClean:C8});Object.defineProperties(EF.prototype,{[Symbol.toStringTag]:{value:"ErrorEvent",configurable:!0},message:C8,filename:C8,lineno:C8,colno:C8,error:C8});FQ.converters.MessagePort=FQ.interfaceConverter(FQ.is.MessagePort,"MessagePort");FQ.converters["sequence"]=FQ.sequenceConverter(FQ.converters.MessagePort);var ko=[{key:"bubbles",converter:FQ.converters.boolean,defaultValue:()=>!1},{key:"cancelable",converter:FQ.converters.boolean,defaultValue:()=>!1},{key:"composed",converter:FQ.converters.boolean,defaultValue:()=>!1}];FQ.converters.MessageEventInit=FQ.dictionaryConverter([...ko,{key:"data",converter:FQ.converters.any,defaultValue:()=>null},{key:"origin",converter:FQ.converters.USVString,defaultValue:()=>""},{key:"lastEventId",converter:FQ.converters.DOMString,defaultValue:()=>""},{key:"source",converter:FQ.nullableConverter(FQ.converters.MessagePort),defaultValue:()=>null},{key:"ports",converter:FQ.converters["sequence"],defaultValue:()=>[]}]);FQ.converters.CloseEventInit=FQ.dictionaryConverter([...ko,{key:"wasClean",converter:FQ.converters.boolean,defaultValue:()=>!1},{key:"code",converter:FQ.converters["unsigned short"],defaultValue:()=>0},{key:"reason",converter:FQ.converters.USVString,defaultValue:()=>""}]);FQ.converters.ErrorEventInit=FQ.dictionaryConverter([...ko,{key:"message",converter:FQ.converters.DOMString,defaultValue:()=>""},{key:"filename",converter:FQ.converters.USVString,defaultValue:()=>""},{key:"lineno",converter:FQ.converters["unsigned long"],defaultValue:()=>0},{key:"colno",converter:FQ.converters["unsigned long"],defaultValue:()=>0},{key:"error",converter:FQ.converters.any}]);QTQ.exports={MessageEvent:r8,CloseEvent:MV,ErrorEvent:EF,createFastMessageEvent:cx0}});var KF=R((AaY,BTQ)=>{var lx0={enumerable:!0,writable:!1,configurable:!1},px0={CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3},ix0={SENT:1,RECEIVED:2},nx0={CONTINUATION:0,TEXT:1,BINARY:2,CLOSE:8,PING:9,PONG:10},sx0={INFO:0,PAYLOADLENGTH_16:2,PAYLOADLENGTH_64:3,READ_DATA:4},rx0=Buffer.allocUnsafe(0),ax0={text:1,typedArray:2,arrayBuffer:3,blob:4};BTQ.exports={uid:"258EAFA5-E914-47DA-95CA-C5AB0DC85B11",sentCloseFrameState:ix0,staticPropertyDescriptors:lx0,states:px0,opcodes:nx0,maxUnsigned16Bit:65535,parserStates:sx0,emptyBuffer:rx0,sendHints:ax0}});var F4=R((QaY,GTQ)=>{var{states:wk,opcodes:zV}=KF(),{isUtf8:ox0}=u("node:buffer"),{collectASequenceOfCodePointsFast:tx0,removeHTTPWhitespace:YTQ}=l8();function ex0(A){return A===wk.CONNECTING}function Af0(A){return A===wk.OPEN}function Qf0(A){return A===wk.CLOSING}function Bf0(A){return A===wk.CLOSED}function Yf0(A,Q,B=(J,C)=>new Event(J,C),Y={}){let J=B(A,Y);Q.dispatchEvent(J)}function Jf0(A,Q,B){A.onMessage(Q,B)}function Cf0(A){if(A.byteLength===A.buffer.byteLength)return A.buffer;return new Uint8Array(A).buffer}function Xf0(A){if(A.length===0)return!1;for(let Q=0;Q126||B===34||B===40||B===41||B===44||B===47||B===58||B===59||B===60||B===61||B===62||B===63||B===64||B===91||B===92||B===93||B===123||B===125)return!1}return!0}function Gf0(A){if(A>=1000&&A<1015)return A!==1004&&A!==1005&&A!==1006;return A>=3000&&A<=4999}function JTQ(A){return A===zV.CLOSE||A===zV.PING||A===zV.PONG}function CTQ(A){return A===zV.CONTINUATION}function XTQ(A){return A===zV.TEXT||A===zV.BINARY}function Wf0(A){return XTQ(A)||CTQ(A)||JTQ(A)}function Ff0(A){let Q={position:0},B=new Map;while(Q.position57)return!1}return!0}function $f0(A,Q){let B;try{B=new URL(A,Q)}catch(Y){throw new DOMException(Y,"SyntaxError")}if(B.protocol==="http:")B.protocol="ws:";else if(B.protocol==="https:")B.protocol="wss:";if(B.protocol!=="ws:"&&B.protocol!=="wss:")throw new DOMException("expected a ws: or wss: url","SyntaxError");if(B.hash.length||B.href.endsWith("#"))throw new DOMException("hash","SyntaxError");return B}function Uf0(A,Q){if(A!==null){if(A!==1000&&(A<3000||A>4999))throw new DOMException("invalid code","InvalidAccessError")}if(Q!==null){let B=Buffer.byteLength(Q);if(B>123)throw new DOMException(`Reason must be less than 123 bytes; received ${B}`,"SyntaxError")}}var Ef0=(()=>{if(typeof process.versions.icu==="string"){let A=new TextDecoder("utf-8",{fatal:!0});return A.decode.bind(A)}return function(A){if(ox0(A))return A.toString("utf-8");throw TypeError("Invalid utf-8 received.")}})();GTQ.exports={isConnecting:ex0,isEstablished:Af0,isClosing:Qf0,isClosed:Bf0,fireEvent:Yf0,isValidSubprotocol:Xf0,isValidStatusCode:Gf0,websocketMessageReceived:Jf0,utf8Decode:Ef0,isControlFrame:JTQ,isContinuationFrame:CTQ,isTextBinaryFrame:XTQ,isValidOpcode:Wf0,parseExtensions:Ff0,isValidClientWindowBits:Zf0,toArrayBuffer:Cf0,getURLRecord:$f0,validateCloseCodeAndReason:Uf0}});var wV=R((BaY,ZTQ)=>{var{maxUnsigned16Bit:WTQ,opcodes:Kf0}=KF(),_o,CM=null,RV=8192;try{_o=u("node:crypto")}catch{_o={randomFillSync:function(Q,B,Y){for(let J=0;JWTQ)C+=8,J=127;else if(Y>125)C+=2,J=126;let X=Buffer.allocUnsafe(Y+C);X[0]=X[1]=0,X[0]|=128,X[0]=(X[0]&240)+A;/*! ws. MIT License. Einar Otto Stangvik */if(X[C-4]=B[0],X[C-3]=B[1],X[C-2]=B[2],X[C-1]=B[3],X[1]=J,J===126)X.writeUInt16BE(Y,2);else if(J===127)X[2]=X[3]=0,X.writeUIntBE(Y,4,6);X[1]|=128;for(let G=0;GWTQ)J+=8,Y=127;else if(B>125)J+=2,Y=126;let C=Buffer.allocUnsafeSlow(J);if(C[0]=128|Kf0.TEXT,C[1]=Y|128,C[J-4]=Q[0],C[J-3]=Q[1],C[J-2]=Q[2],C[J-1]=Q[3],Y===126)C.writeUInt16BE(B,2);else if(Y===127)C[2]=C[3]=0,C.writeUIntBE(B,4,6);return[C,A]}}ZTQ.exports={WebsocketFrameSend:FTQ,generateMask:vo}});var Ok=R((YaY,KTQ)=>{var{uid:Vf0,states:jk,sentCloseFrameState:yo,emptyBuffer:$TQ,opcodes:If0}=KF(),{parseExtensions:Hf0,isClosed:Df0,isClosing:Nf0,isEstablished:UTQ,validateCloseCodeAndReason:Lf0}=F4(),{makeRequest:qf0}=NV(),{fetching:Mf0}=QM(),{Headers:zf0,getHeadersList:Rf0}=Y4(),{getDecodeSplit:wf0}=z9(),{WebsocketFrameSend:jf0}=wV(),Of0=u("node:assert"),go;try{go=u("node:crypto")}catch{}function Pf0(A,Q,B,Y,J){let C=A;C.protocol=A.protocol==="ws:"?"http:":"https:";let X=qf0({urlList:[C],client:B,serviceWorkers:"none",referrer:"no-referrer",mode:"websocket",credentials:"include",cache:"no-store",redirect:"error"});if(J.headers){let Z=Rf0(new zf0(J.headers));X.headersList=Z}let G=go.randomBytes(16).toString("base64");X.headersList.append("sec-websocket-key",G,!0),X.headersList.append("sec-websocket-version","13",!0);for(let Z of Q)X.headersList.append("sec-websocket-protocol",Z,!0);let W="permessage-deflate; client_max_window_bits";return X.headersList.append("sec-websocket-extensions",W,!0),Mf0({request:X,useParallelQueue:!0,dispatcher:J.dispatcher,processResponse(Z){if(Z.type==="error")Y.readyState=jk.CLOSED;if(Z.type==="error"||Z.status!==101){mG(Y,1002,"Received network error or non-101 status code.",Z.error);return}if(Q.length!==0&&!Z.headersList.get("Sec-WebSocket-Protocol")){mG(Y,1002,"Server did not respond with sent protocols.");return}if(Z.headersList.get("Upgrade")?.toLowerCase()!=="websocket"){mG(Y,1002,'Server did not set Upgrade header to "websocket".');return}if(Z.headersList.get("Connection")?.toLowerCase()!=="upgrade"){mG(Y,1002,'Server did not set Connection header to "upgrade".');return}let U=Z.headersList.get("Sec-WebSocket-Accept"),$=go.createHash("sha1").update(G+Vf0).digest("base64");if(U!==$){mG(Y,1002,"Incorrect hash received in Sec-WebSocket-Accept header.");return}let E=Z.headersList.get("Sec-WebSocket-Extensions"),K;if(E!==null){if(K=Hf0(E),!K.has("permessage-deflate")){mG(Y,1002,"Sec-WebSocket-Extensions header does not match.");return}}let I=Z.headersList.get("Sec-WebSocket-Protocol");if(I!==null){if(!wf0("sec-websocket-protocol",X.headersList).includes(I)){mG(Y,1002,"Protocol was not set in the opening handshake.");return}}Z.socket.on("data",Y.onSocketData),Z.socket.on("close",Y.onSocketClose),Z.socket.on("error",Y.onSocketError),Y.wasEverConnected=!0,Y.onConnectionEstablished(Z,K)}})}function ETQ(A,Q,B,Y=!1){if(Q??=null,B??="",Y)Lf0(Q,B);if(Df0(A.readyState)||Nf0(A.readyState));else if(!UTQ(A.readyState))mG(A),A.readyState=jk.CLOSING;else if(!A.closeState.has(yo.SENT)&&!A.closeState.has(yo.RECEIVED)){let J=new jf0;if(B.length!==0&&Q===null)Q=1000;if(Of0(Q===null||Number.isInteger(Q)),Q===null&&B.length===0)J.frameData=$TQ;else if(Q!==null&&B===null)J.frameData=Buffer.allocUnsafe(2),J.frameData.writeUInt16BE(Q,0);else if(Q!==null&&B!==null)J.frameData=Buffer.allocUnsafe(2+Buffer.byteLength(B)),J.frameData.writeUInt16BE(Q,0),J.frameData.write(B,2,"utf-8");else J.frameData=$TQ;A.socket.write(J.createFrame(If0.CLOSE)),A.closeState.add(yo.SENT),A.readyState=jk.CLOSING}else A.readyState=jk.CLOSING}function mG(A,Q,B,Y){if(UTQ(A.readyState))ETQ(A,Q,B,!1);if(A.controller.abort(),!A.socket)A.onSocketClose();else if(A.socket.destroyed===!1)A.socket.destroy()}KTQ.exports={establishWebSocketConnection:Pf0,failWebsocketConnection:mG,closeWebSocketConnection:ETQ}});var HTQ=R((JaY,ITQ)=>{var{createInflateRaw:Tf0,Z_DEFAULT_WINDOWBITS:Sf0}=u("node:zlib"),{isValidClientWindowBits:kf0}=F4(),_f0=Buffer.from([0,0,255,255]),Pk=Symbol("kBuffer"),Tk=Symbol("kLength");class VTQ{#A;#Q={};constructor(A){this.#Q.serverNoContextTakeover=A.has("server_no_context_takeover"),this.#Q.serverMaxWindowBits=A.get("server_max_window_bits")}decompress(A,Q,B){if(!this.#A){let Y=Sf0;if(this.#Q.serverMaxWindowBits){if(!kf0(this.#Q.serverMaxWindowBits)){B(Error("Invalid server_max_window_bits"));return}Y=Number.parseInt(this.#Q.serverMaxWindowBits)}this.#A=Tf0({windowBits:Y}),this.#A[Pk]=[],this.#A[Tk]=0,this.#A.on("data",(J)=>{this.#A[Pk].push(J),this.#A[Tk]+=J.length}),this.#A.on("error",(J)=>{this.#A=null,B(J)})}if(this.#A.write(A),Q)this.#A.write(_f0);this.#A.flush(()=>{let Y=Buffer.concat(this.#A[Pk],this.#A[Tk]);this.#A[Pk].length=0,this.#A[Tk]=0,B(null,Y)})}}ITQ.exports={PerMessageDeflate:VTQ}});var xo=R((CaY,zTQ)=>{var{Writable:vf0}=u("node:stream"),yf0=u("node:assert"),{parserStates:X8,opcodes:jV,states:gf0,emptyBuffer:DTQ,sentCloseFrameState:XM}=KF(),{isValidStatusCode:hf0,isValidOpcode:xf0,websocketMessageReceived:NTQ,utf8Decode:ff0,isControlFrame:LTQ,isTextBinaryFrame:ho,isContinuationFrame:bf0}=F4(),{failWebsocketConnection:a8}=Ok(),{WebsocketFrameSend:qTQ}=wV(),{PerMessageDeflate:mf0}=HTQ();class MTQ extends vf0{#A=[];#Q=0;#B=0;#Y=!1;#J=X8.INFO;#C={};#W=[];#X;#G;constructor(A,Q){super();if(this.#G=A,this.#X=Q==null?new Map:Q,this.#X.has("permessage-deflate"))this.#X.set("permessage-deflate",new mf0(Q))}_write(A,Q,B){this.#A.push(A),this.#B+=A.length,this.#Y=!0,this.run(B)}run(A){while(this.#Y)if(this.#J===X8.INFO){if(this.#B<2)return A();let Q=this.consume(2),B=(Q[0]&128)!==0,Y=Q[0]&15,J=(Q[1]&128)===128,C=!B&&Y!==jV.CONTINUATION,X=Q[1]&127,G=Q[0]&64,W=Q[0]&32,F=Q[0]&16;if(!xf0(Y))return a8(this.#G,1002,"Invalid opcode received"),A();if(J)return a8(this.#G,1002,"Frame cannot be masked"),A();if(G!==0&&!this.#X.has("permessage-deflate")){a8(this.#G,1002,"Expected RSV1 to be clear.");return}if(W!==0||F!==0){a8(this.#G,1002,"RSV1, RSV2, RSV3 must be clear");return}if(C&&!ho(Y)){a8(this.#G,1002,"Invalid frame type was fragmented.");return}if(ho(Y)&&this.#W.length>0){a8(this.#G,1002,"Expected continuation frame");return}if(this.#C.fragmented&&C){a8(this.#G,1002,"Fragmented frame exceeded 125 bytes.");return}if((X>125||C)&<Q(Y)){a8(this.#G,1002,"Control frame either too large or fragmented");return}if(bf0(Y)&&this.#W.length===0&&!this.#C.compressed){a8(this.#G,1002,"Unexpected continuation frame");return}if(X<=125)this.#C.payloadLength=X,this.#J=X8.READ_DATA;else if(X===126)this.#J=X8.PAYLOADLENGTH_16;else if(X===127)this.#J=X8.PAYLOADLENGTH_64;if(ho(Y))this.#C.binaryType=Y,this.#C.compressed=G!==0;this.#C.opcode=Y,this.#C.masked=J,this.#C.fin=B,this.#C.fragmented=C}else if(this.#J===X8.PAYLOADLENGTH_16){if(this.#B<2)return A();let Q=this.consume(2);this.#C.payloadLength=Q.readUInt16BE(0),this.#J=X8.READ_DATA}else if(this.#J===X8.PAYLOADLENGTH_64){if(this.#B<8)return A();let Q=this.consume(8),B=Q.readUInt32BE(0);if(B>2147483647){a8(this.#G,1009,"Received payload length > 2^31 bytes.");return}let Y=Q.readUInt32BE(4);this.#C.payloadLength=(B<<8)+Y,this.#J=X8.READ_DATA}else if(this.#J===X8.READ_DATA){if(this.#B{if(B){a8(this.#G,1007,B.message);return}if(this.writeFragments(Y),!this.#C.fin){this.#J=X8.INFO,this.#Y=!0,this.run(A);return}NTQ(this.#G,this.#C.binaryType,this.consumeFragments()),this.#Y=!0,this.#J=X8.INFO,this.run(A)}),this.#Y=!1;break}}}consume(A){if(A>this.#B)throw Error("Called consume() before buffers satiated.");else if(A===0)return DTQ;this.#B-=A;let Q=this.#A[0];if(Q.length>A)return this.#A[0]=Q.subarray(A,Q.length),Q.subarray(0,A);else if(Q.length===A)return this.#A.shift();else{let B=0,Y=Buffer.allocUnsafeSlow(A);while(B!==A){let J=this.#A[0],C=J.length;if(C+B===A){Y.set(this.#A.shift(),B);break}else if(C+B>A){Y.set(J.subarray(0,A-B),B),this.#A[0]=J.subarray(A-B);break}else Y.set(this.#A.shift(),B),B+=C}return Y}}writeFragments(A){this.#Q+=A.length,this.#W.push(A)}consumeFragments(){let A=this.#W;if(A.length===1)return this.#Q=0,A.shift();let Q=0,B=Buffer.allocUnsafeSlow(this.#Q);for(let Y=0;Y=2)Q=A.readUInt16BE(0);if(Q!==void 0&&!hf0(Q))return{code:1002,reason:"Invalid status code",error:!0};let B=A.subarray(2);if(B[0]===239&&B[1]===187&&B[2]===191)B=B.subarray(3);try{B=ff0(B)}catch{return{code:1007,reason:"Invalid UTF-8",error:!0}}return{code:Q,reason:B,error:!1}}parseControlFrame(A){let{opcode:Q,payloadLength:B}=this.#C;if(Q===jV.CLOSE){if(B===1)return a8(this.#G,1002,"Received close frame with a 1-byte body."),!1;if(this.#C.closeInfo=this.parseCloseBody(A),this.#C.closeInfo.error){let{code:Y,reason:J}=this.#C.closeInfo;return a8(this.#G,Y,J),!1}if(!this.#G.closeState.has(XM.SENT)&&!this.#G.closeState.has(XM.RECEIVED)){let Y=DTQ;if(this.#C.closeInfo.code)Y=Buffer.allocUnsafe(2),Y.writeUInt16BE(this.#C.closeInfo.code,0);let J=new qTQ(Y);this.#G.socket.write(J.createFrame(jV.CLOSE)),this.#G.closeState.add(XM.SENT)}return this.#G.readyState=gf0.CLOSING,this.#G.closeState.add(XM.RECEIVED),!1}else if(Q===jV.PING){if(!this.#G.closeState.has(XM.RECEIVED)){let Y=new qTQ(A);this.#G.socket.write(Y.createFrame(jV.PONG)),this.#G.onPing(A)}}else if(Q===jV.PONG)this.#G.onPong(A);return!0}get closingInfo(){return this.#C.closeInfo}}zTQ.exports={ByteParser:MTQ}});var PTQ=R((XaY,OTQ)=>{var{WebsocketFrameSend:wTQ}=wV(),{opcodes:RTQ,sendHints:Z4}=KF(),uf0=Ba();class jTQ{#A=new uf0;#Q=!1;#B;constructor(A){this.#B=A}add(A,Q,B){if(B!==Z4.blob){if(!this.#Q)if(B===Z4.text){let{0:J,1:C}=wTQ.createFastTextFrame(A);this.#B.cork(),this.#B.write(J),this.#B.write(C,Q),this.#B.uncork()}else this.#B.write(fo(A,B),Q);else{let J={promise:null,callback:Q,frame:fo(A,B)};this.#A.push(J)}return}let Y={promise:A.arrayBuffer().then((J)=>{Y.promise=null,Y.frame=fo(J,B)}),callback:Q,frame:null};if(this.#A.push(Y),!this.#Q)this.#Y()}async#Y(){this.#Q=!0;let A=this.#A;while(!A.isEmpty()){let Q=A.shift();if(Q.promise!==null)await Q.promise;this.#B.write(Q.frame,Q.callback),Q.callback=Q.frame=null}this.#Q=!1}}function fo(A,Q){return new wTQ(df0(A,Q)).createFrame(Q===Z4.text?RTQ.TEXT:RTQ.BINARY)}function df0(A,Q){switch(Q){case Z4.text:case Z4.typedArray:return new Uint8Array(A.buffer,A.byteOffset,A.byteLength);case Z4.arrayBuffer:case Z4.blob:return new Uint8Array(A)}}OTQ.exports={SendQueue:jTQ}});var yTQ=R((GaY,vTQ)=>{var{isArrayBuffer:cf0}=u("node:util/types"),{webidl:$Q}=HJ(),{URLSerializer:lf0}=l8(),{environmentSettingsObject:TTQ}=z9(),{staticPropertyDescriptors:VF,states:uG,sentCloseFrameState:bo,sendHints:Sk,opcodes:mo}=KF(),{isConnecting:pf0,isEstablished:STQ,isClosing:kTQ,isClosed:if0,isValidSubprotocol:nf0,fireEvent:kk,utf8Decode:sf0,toArrayBuffer:rf0,getURLRecord:af0}=F4(),{establishWebSocketConnection:of0,closeWebSocketConnection:tf0,failWebsocketConnection:_TQ}=Ok(),{ByteParser:ef0}=xo(),{kEnumerableProperty:EC}=lQ(),{getGlobalDispatcher:Ab0}=Ak(),{ErrorEvent:Qb0,CloseEvent:Bb0,createFastMessageEvent:Yb0}=Rk(),{SendQueue:Jb0}=PTQ(),{WebsocketFrameSend:Cb0}=wV(),{channels:xX}=x$();class _B extends EventTarget{#A={open:null,error:null,close:null,message:null};#Q=0;#B="";#Y="";#J;#C={onConnectionEstablished:(A,Q)=>this.#Z(A,Q),onMessage:(A,Q)=>this.#U(A,Q),onParserError:(A)=>_TQ(this.#C,null,A.message),onParserDrain:()=>this.#F(),onSocketData:(A)=>{if(!this.#G.write(A))this.#C.socket.pause()},onSocketError:(A)=>{if(this.#C.readyState=uG.CLOSING,xX.socketError.hasSubscribers)xX.socketError.publish(A);this.#C.socket.destroy()},onSocketClose:()=>this.#E(),onPing:(A)=>{if(xX.ping.hasSubscribers)xX.ping.publish({payload:A,websocket:this})},onPong:(A)=>{if(xX.pong.hasSubscribers)xX.pong.publish({payload:A,websocket:this})},readyState:uG.CONNECTING,socket:null,closeState:new Set,controller:null,wasEverConnected:!1};#W;#X;#G;constructor(A,Q=[]){super();$Q.util.markAsUncloneable(this);let B="WebSocket constructor";$Q.argumentLengthCheck(arguments,1,B);let Y=$Q.converters["DOMString or sequence or WebSocketInit"](Q,B,"options");A=$Q.converters.USVString(A),Q=Y.protocols;let J=TTQ.settingsObject.baseUrl,C=af0(A,J);if(typeof Q==="string")Q=[Q];if(Q.length!==new Set(Q.map((G)=>G.toLowerCase())).size)throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");if(Q.length>0&&!Q.every((G)=>nf0(G)))throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");this.#W=new URL(C.href);let X=TTQ.settingsObject;this.#C.controller=of0(C,Q,X,this.#C,Y),this.#C.readyState=_B.CONNECTING,this.#X="blob"}close(A=void 0,Q=void 0){$Q.brandCheck(this,_B);let B="WebSocket.close";if(A!==void 0)A=$Q.converters["unsigned short"](A,B,"code",$Q.attributes.Clamp);if(Q!==void 0)Q=$Q.converters.USVString(Q);A??=null,Q??="",tf0(this.#C,A,Q,!0)}send(A){$Q.brandCheck(this,_B);let Q="WebSocket.send";if($Q.argumentLengthCheck(arguments,1,Q),A=$Q.converters.WebSocketSendData(A,Q,"data"),pf0(this.#C.readyState))throw new DOMException("Sent before connected.","InvalidStateError");if(!STQ(this.#C.readyState)||kTQ(this.#C.readyState))return;if(typeof A==="string"){let B=Buffer.from(A);this.#Q+=B.byteLength,this.#J.add(B,()=>{this.#Q-=B.byteLength},Sk.text)}else if(cf0(A))this.#Q+=A.byteLength,this.#J.add(A,()=>{this.#Q-=A.byteLength},Sk.arrayBuffer);else if(ArrayBuffer.isView(A))this.#Q+=A.byteLength,this.#J.add(A,()=>{this.#Q-=A.byteLength},Sk.typedArray);else if($Q.is.Blob(A))this.#Q+=A.size,this.#J.add(A,()=>{this.#Q-=A.size},Sk.blob)}get readyState(){return $Q.brandCheck(this,_B),this.#C.readyState}get bufferedAmount(){return $Q.brandCheck(this,_B),this.#Q}get url(){return $Q.brandCheck(this,_B),lf0(this.#W)}get extensions(){return $Q.brandCheck(this,_B),this.#Y}get protocol(){return $Q.brandCheck(this,_B),this.#B}get onopen(){return $Q.brandCheck(this,_B),this.#A.open}set onopen(A){if($Q.brandCheck(this,_B),this.#A.open)this.removeEventListener("open",this.#A.open);let Q=$Q.converters.EventHandlerNonNull(A);if(Q!==null)this.addEventListener("open",Q),this.#A.open=A;else this.#A.open=null}get onerror(){return $Q.brandCheck(this,_B),this.#A.error}set onerror(A){if($Q.brandCheck(this,_B),this.#A.error)this.removeEventListener("error",this.#A.error);let Q=$Q.converters.EventHandlerNonNull(A);if(Q!==null)this.addEventListener("error",Q),this.#A.error=A;else this.#A.error=null}get onclose(){return $Q.brandCheck(this,_B),this.#A.close}set onclose(A){if($Q.brandCheck(this,_B),this.#A.close)this.removeEventListener("close",this.#A.close);let Q=$Q.converters.EventHandlerNonNull(A);if(Q!==null)this.addEventListener("close",Q),this.#A.close=A;else this.#A.close=null}get onmessage(){return $Q.brandCheck(this,_B),this.#A.message}set onmessage(A){if($Q.brandCheck(this,_B),this.#A.message)this.removeEventListener("message",this.#A.message);let Q=$Q.converters.EventHandlerNonNull(A);if(Q!==null)this.addEventListener("message",Q),this.#A.message=A;else this.#A.message=null}get binaryType(){return $Q.brandCheck(this,_B),this.#X}set binaryType(A){if($Q.brandCheck(this,_B),A!=="blob"&&A!=="arraybuffer")this.#X="blob";else this.#X=A}#Z(A,Q){this.#C.socket=A.socket;let B=new ef0(this.#C,Q);B.on("drain",()=>this.#C.onParserDrain()),B.on("error",(C)=>this.#C.onParserError(C)),this.#G=B,this.#J=new Jb0(A.socket),this.#C.readyState=uG.OPEN;let Y=A.headersList.get("sec-websocket-extensions");if(Y!==null)this.#Y=Y;let J=A.headersList.get("sec-websocket-protocol");if(J!==null)this.#B=J;if(kk("open",this),xX.open.hasSubscribers){let C=A.headersList.entries;xX.open.publish({address:A.socket.address(),protocol:this.#B,extensions:this.#Y,websocket:this,handshakeResponse:{status:A.status,statusText:A.statusText,headers:C}})}}#U(A,Q){if(this.#C.readyState!==uG.OPEN)return;let B;if(A===mo.TEXT)try{B=sf0(Q)}catch{_TQ(this.#C,1007,"Received invalid UTF-8 in text frame.");return}else if(A===mo.BINARY)if(this.#X==="blob")B=new Blob([Q]);else B=rf0(Q);kk("message",this,Yb0,{origin:this.#W.origin,data:B})}#F(){this.#C.socket.resume()}#E(){let A=this.#C.closeState.has(bo.SENT)&&this.#C.closeState.has(bo.RECEIVED),Q=1005,B="",Y=this.#G?.closingInfo;if(Y&&!Y.error)Q=Y.code??1005,B=Y.reason;if(this.#C.readyState=uG.CLOSED,!this.#C.closeState.has(bo.RECEIVED))Q=1006,kk("error",this,(J,C)=>new Qb0(J,C),{error:TypeError(B)});if(kk("close",this,(J,C)=>new Bb0(J,C),{wasClean:A,code:Q,reason:B}),xX.close.hasSubscribers)xX.close.publish({websocket:this,code:Q,reason:B})}static ping(A,Q){if(Buffer.isBuffer(Q)){if(Q.length>125)throw TypeError("A PING frame cannot have a body larger than 125 bytes.")}else if(Q!==void 0)throw TypeError("Expected buffer payload");let B=A.#C.readyState;if(STQ(B)&&!kTQ(B)&&!if0(B)){let Y=new Cb0(Q);A.#C.socket.write(Y.createFrame(mo.PING))}}}var{ping:Xb0}=_B;Reflect.deleteProperty(_B,"ping");_B.CONNECTING=_B.prototype.CONNECTING=uG.CONNECTING;_B.OPEN=_B.prototype.OPEN=uG.OPEN;_B.CLOSING=_B.prototype.CLOSING=uG.CLOSING;_B.CLOSED=_B.prototype.CLOSED=uG.CLOSED;Object.defineProperties(_B.prototype,{CONNECTING:VF,OPEN:VF,CLOSING:VF,CLOSED:VF,url:EC,readyState:EC,bufferedAmount:EC,onopen:EC,onerror:EC,onclose:EC,close:EC,onmessage:EC,binaryType:EC,send:EC,extensions:EC,protocol:EC,[Symbol.toStringTag]:{value:"WebSocket",writable:!1,enumerable:!1,configurable:!0}});Object.defineProperties(_B,{CONNECTING:VF,OPEN:VF,CLOSING:VF,CLOSED:VF});$Q.converters["sequence"]=$Q.sequenceConverter($Q.converters.DOMString);$Q.converters["DOMString or sequence"]=function(A,Q,B){if($Q.util.Type(A)===$Q.util.Types.OBJECT&&Symbol.iterator in A)return $Q.converters["sequence"](A);return $Q.converters.DOMString(A,Q,B)};$Q.converters.WebSocketInit=$Q.dictionaryConverter([{key:"protocols",converter:$Q.converters["DOMString or sequence"],defaultValue:()=>[]},{key:"dispatcher",converter:$Q.converters.any,defaultValue:()=>Ab0()},{key:"headers",converter:$Q.nullableConverter($Q.converters.HeadersInit)}]);$Q.converters["DOMString or sequence or WebSocketInit"]=function(A){if($Q.util.Type(A)===$Q.util.Types.OBJECT&&!(Symbol.iterator in A))return $Q.converters.WebSocketInit(A);return{protocols:$Q.converters["DOMString or sequence"](A)}};$Q.converters.WebSocketSendData=function(A){if($Q.util.Type(A)===$Q.util.Types.OBJECT){if($Q.is.Blob(A))return A;if($Q.is.BufferSource(A))return A}return $Q.converters.USVString(A)};vTQ.exports={WebSocket:_B,ping:Xb0}});var uo=R((WaY,xTQ)=>{var{webidl:_k}=HJ(),{validateCloseCodeAndReason:Gb0}=F4(),{kConstruct:gTQ}=B0(),{kEnumerableProperty:hTQ}=lQ();function Wb0(){class A extends DOMException{get reason(){return""}}if(new A().reason!==void 0)return DOMException;return new Proxy(DOMException,{construct(Q,B,Y){let J=Reflect.construct(Q,B,Q);return Object.setPrototypeOf(J,Y.prototype),J}})}class $4 extends Wb0(){#A;#Q;constructor(A="",Q=void 0){A=_k.converters.DOMString(A,"WebSocketError","message");super(A,"WebSocketError");if(Q===gTQ)return;else if(Q!==null)Q=_k.converters.WebSocketCloseInfo(Q);let B=Q.closeCode??null,Y=Q.reason??"";if(Gb0(B,Y),Y.length!==0&&B===null)B=1000;this.#A=B,this.#Q=Y}get closeCode(){return this.#A}get reason(){return this.#Q}static createUnvalidatedWebSocketError(A,Q,B){let Y=new $4(A,gTQ);return Y.#A=Q,Y.#Q=B,Y}}var{createUnvalidatedWebSocketError:Fb0}=$4;delete $4.createUnvalidatedWebSocketError;Object.defineProperties($4.prototype,{closeCode:hTQ,reason:hTQ,[Symbol.toStringTag]:{value:"WebSocketError",writable:!1,enumerable:!1,configurable:!0}});_k.is.WebSocketError=_k.util.MakeTypeAssertion($4);xTQ.exports={WebSocketError:$4,createUnvalidatedWebSocketError:Fb0}});var dTQ=R((FaY,uTQ)=>{var{createDeferredPromise:co}=Nq(),{environmentSettingsObject:fTQ}=z9(),{states:OV,opcodes:vk,sentCloseFrameState:PV}=KF(),{webidl:e0}=HJ(),{getURLRecord:Zb0,isValidSubprotocol:$b0,isEstablished:Ub0,utf8Decode:Eb0}=F4(),{establishWebSocketConnection:Kb0,failWebsocketConnection:lo,closeWebSocketConnection:po}=Ok(),{channels:bTQ}=x$(),{WebsocketFrameSend:Vb0}=wV(),{ByteParser:Ib0}=xo(),{WebSocketError:Hb0,createUnvalidatedWebSocketError:Db0}=uo(),{utf8DecodeBytes:Nb0}=z9(),{kEnumerableProperty:yk}=lQ(),mTQ=!1;class io{#A;#Q;#B;#Y;#J;#C;#W=!1;#X={onConnectionEstablished:(A,Q)=>this.#U(A,Q),onMessage:(A,Q)=>this.#F(A,Q),onParserError:(A)=>lo(this.#X,null,A.message),onParserDrain:()=>this.#X.socket.resume(),onSocketData:(A)=>{if(!this.#G.write(A))this.#X.socket.pause()},onSocketError:(A)=>{if(this.#X.readyState=OV.CLOSING,bTQ.socketError.hasSubscribers)bTQ.socketError.publish(A);this.#X.socket.destroy()},onSocketClose:()=>this.#E(),onPing:()=>{},onPong:()=>{},readyState:OV.CONNECTING,socket:null,closeState:new Set,controller:null,wasEverConnected:!1};#G;constructor(A,Q=void 0){if(!mTQ)process.emitWarning("WebSocketStream is experimental! Expect it to change at any time.",{code:"UNDICI-WSS"}),mTQ=!0;if(e0.argumentLengthCheck(arguments,1,"WebSocket"),A=e0.converters.USVString(A),Q!==null)Q=e0.converters.WebSocketStreamOptions(Q);let B=fTQ.settingsObject.baseUrl,Y=Zb0(A,B),J=Q.protocols;if(J.length!==new Set(J.map((X)=>X.toLowerCase())).size)throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");if(J.length>0&&!J.every((X)=>$b0(X)))throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");if(this.#A=Y.toString(),this.#Q=co(),this.#B=co(),Q.signal!=null){let X=Q.signal;if(X.aborted){this.#Q.reject(X.reason),this.#B.reject(X.reason);return}X.addEventListener("abort",()=>{if(!Ub0(this.#X.readyState))lo(this.#X),this.#X.readyState=OV.CLOSING,this.#Q.reject(X.reason),this.#B.reject(X.reason),this.#W=!0},{once:!0})}let C=fTQ.settingsObject;this.#X.controller=Kb0(Y,J,C,this.#X,Q)}get url(){return this.#A.toString()}get opened(){return this.#Q.promise}get closed(){return this.#B.promise}close(A=void 0){if(A!==null)A=e0.converters.WebSocketCloseInfo(A);let Q=A.closeCode??null,B=A.reason;po(this.#X,Q,B,!0)}#Z(A){A=e0.converters.WebSocketStreamWrite(A);let Q=co(),B=null,Y=null;if(e0.is.BufferSource(A))B=new Uint8Array(ArrayBuffer.isView(A)?new Uint8Array(A.buffer,A.byteOffset,A.byteLength):A.slice()),Y=vk.BINARY;else{let J;try{J=e0.converters.DOMString(A)}catch(C){return Q.reject(C),Q.promise}B=new TextEncoder().encode(J),Y=vk.TEXT}if(!this.#X.closeState.has(PV.SENT)&&!this.#X.closeState.has(PV.RECEIVED)){let J=new Vb0(B);this.#X.socket.write(J.createFrame(Y),()=>{Q.resolve(void 0)})}return Q.promise}#U(A,Q){this.#X.socket=A.socket;let B=new Ib0(this.#X,Q);B.on("drain",()=>this.#X.onParserDrain()),B.on("error",(G)=>this.#X.onParserError(G)),this.#G=B,this.#X.readyState=OV.OPEN;let Y=Q??"",J=A.headersList.get("sec-websocket-protocol")??"",C=new ReadableStream({start:(G)=>{this.#J=G},pull(G){let W;while(G.desiredSize>0&&(W=A.socket.read())!==null)G.enqueue(W)},cancel:(G)=>this.#I(G)}),X=new WritableStream({write:(G)=>this.#Z(G),close:()=>po(this.#X,null,null),abort:(G)=>this.#V(G)});this.#Y=C,this.#C=X,this.#Q.resolve({extensions:Y,protocol:J,readable:C,writable:X})}#F(A,Q){if(this.#X.readyState!==OV.OPEN)return;let B;if(A===vk.TEXT)try{B=Eb0(Q)}catch{lo(this.#X,"Received invalid UTF-8 in text frame.");return}else if(A===vk.BINARY)B=new Uint8Array(Q.buffer,Q.byteOffset,Q.byteLength);this.#J.enqueue(B)}#E(){let A=this.#X.closeState.has(PV.SENT)&&this.#X.closeState.has(PV.RECEIVED);if(this.#X.readyState=OV.CLOSED,this.#W)return;if(!this.#X.wasEverConnected)this.#Q.reject(new Hb0("Socket never opened"));let Q=this.#G.closingInfo,B=Q?.code??1005;if(!this.#X.closeState.has(PV.SENT)&&!this.#X.closeState.has(PV.RECEIVED))B=1006;let Y=Q?.reason==null?"":Nb0(Buffer.from(Q.reason));if(A){if(this.#J.close(),!this.#C.locked)this.#C.abort(new DOMException("A closed WebSocketStream cannot be written to","InvalidStateError"));this.#B.resolve({closeCode:B,reason:Y})}else{let J=Db0("unclean close",B,Y);this.#J.error(J),this.#C.abort(J),this.#B.reject(J)}}#V(A){let Q=null,B="";if(e0.is.WebSocketError(A))Q=A.closeCode,B=A.reason;po(this.#X,Q,B)}#I(A){this.#V(A)}}Object.defineProperties(io.prototype,{url:yk,opened:yk,closed:yk,close:yk,[Symbol.toStringTag]:{value:"WebSocketStream",writable:!1,enumerable:!1,configurable:!0}});e0.converters.WebSocketStreamOptions=e0.dictionaryConverter([{key:"protocols",converter:e0.sequenceConverter(e0.converters.USVString),defaultValue:()=>[]},{key:"signal",converter:e0.nullableConverter(e0.converters.AbortSignal),defaultValue:()=>null}]);e0.converters.WebSocketCloseInfo=e0.dictionaryConverter([{key:"closeCode",converter:(A)=>e0.converters["unsigned short"](A,e0.attributes.EnforceRange)},{key:"reason",converter:e0.converters.USVString,defaultValue:()=>""}]);e0.converters.WebSocketStreamWrite=function(A){if(typeof A==="string")return e0.converters.USVString(A);return e0.converters.BufferSource(A)};uTQ.exports={WebSocketStream:io}});var lTQ=R((ZaY,cTQ)=>{function Lb0(A){return A.indexOf("\x00")===-1}function qb0(A){if(A.length===0)return!1;for(let Q=0;Q57)return!1;return!0}cTQ.exports={isValidLastEventId:Lb0,isASCIINumber:qb0}});var rTQ=R(($aY,sTQ)=>{var{Transform:Mb0}=u("node:stream"),{isASCIINumber:pTQ,isValidLastEventId:iTQ}=lTQ(),dG=[239,187,191];class nTQ extends Mb0{state;checkBOM=!0;crlfCheck=!1;eventEndCheck=!1;buffer=null;pos=0;event={data:void 0,event:void 0,id:void 0,retry:void 0};constructor(A={}){A.readableObjectMode=!0;super(A);if(this.state=A.eventSourceSettings||{},A.push)this.push=A.push}_transform(A,Q,B){if(A.length===0){B();return}if(this.buffer)this.buffer=Buffer.concat([this.buffer,A]);else this.buffer=A;if(this.checkBOM)switch(this.buffer.length){case 1:if(this.buffer[0]===dG[0]){B();return}this.checkBOM=!1,B();return;case 2:if(this.buffer[0]===dG[0]&&this.buffer[1]===dG[1]){B();return}this.checkBOM=!1;break;case 3:if(this.buffer[0]===dG[0]&&this.buffer[1]===dG[1]&&this.buffer[2]===dG[2]){this.buffer=Buffer.alloc(0),this.checkBOM=!1,B();return}this.checkBOM=!1;break;default:if(this.buffer[0]===dG[0]&&this.buffer[1]===dG[1]&&this.buffer[2]===dG[2])this.buffer=this.buffer.subarray(3);this.checkBOM=!1;break}while(this.pos0)Q[Y]=J;break}}processEvent(A){if(A.retry&&pTQ(A.retry))this.state.reconnectionTime=parseInt(A.retry,10);if(A.id!==void 0&&iTQ(A.id))this.state.lastEventId=A.id;if(A.data!==void 0)this.push({type:A.event||"message",options:{data:A.data,lastEventId:this.state.lastEventId,origin:this.state.origin}})}clearEvent(){this.event={data:void 0,event:void 0,id:void 0,retry:void 0}}}sTQ.exports={EventSourceStream:nTQ}});var YSQ=R((UaY,BSQ)=>{var{pipeline:zb0}=u("node:stream"),{fetching:Rb0}=QM(),{makeRequest:wb0}=NV(),{webidl:w9}=HJ(),{EventSourceStream:jb0}=rTQ(),{parseMIMEType:Ob0}=l8(),{createFastMessageEvent:Pb0}=Rk(),{isNetworkError:aTQ}=eq(),{kEnumerableProperty:U4}=lQ(),{environmentSettingsObject:oTQ}=z9(),tTQ=!1,eTQ=3000,GM=0,ASQ=1,WM=2,Tb0="anonymous",Sb0="use-credentials";class TV extends EventTarget{#A={open:null,error:null,message:null};#Q;#B=!1;#Y=GM;#J=null;#C=null;#W;#X;constructor(A,Q={}){super();w9.util.markAsUncloneable(this);let B="EventSource constructor";if(w9.argumentLengthCheck(arguments,1,B),!tTQ)tTQ=!0,process.emitWarning("EventSource is experimental, expect them to change at any time.",{code:"UNDICI-ES"});A=w9.converters.USVString(A),Q=w9.converters.EventSourceInitDict(Q,B,"eventSourceInitDict"),this.#W=Q.node.dispatcher||Q.dispatcher,this.#X={lastEventId:"",reconnectionTime:Q.node.reconnectionTime};let Y=oTQ,J;try{J=new URL(A,Y.settingsObject.baseUrl),this.#X.origin=J.origin}catch(G){throw new DOMException(G,"SyntaxError")}this.#Q=J.href;let C=Tb0;if(Q.withCredentials===!0)C=Sb0,this.#B=!0;let X={redirect:"follow",keepalive:!0,mode:"cors",credentials:C==="anonymous"?"same-origin":"omit",referrer:"no-referrer"};X.client=oTQ.settingsObject,X.headersList=[["accept",{name:"accept",value:"text/event-stream"}]],X.cache="no-store",X.initiator="other",X.urlList=[new URL(this.#Q)],this.#J=wb0(X),this.#G()}get readyState(){return this.#Y}get url(){return this.#Q}get withCredentials(){return this.#B}#G(){if(this.#Y===WM)return;this.#Y=GM;let A={request:this.#J,dispatcher:this.#W},Q=(B)=>{if(!aTQ(B))return this.#Z()};A.processResponseEndOfBody=Q,A.processResponse=(B)=>{if(aTQ(B))if(B.aborted){this.close(),this.dispatchEvent(new Event("error"));return}else{this.#Z();return}let Y=B.headersList.get("content-type",!0),J=Y!==null?Ob0(Y):"failure",C=J!=="failure"&&J.essence==="text/event-stream";if(B.status!==200||C===!1){this.close(),this.dispatchEvent(new Event("error"));return}this.#Y=ASQ,this.dispatchEvent(new Event("open")),this.#X.origin=B.urlList[B.urlList.length-1].origin;let X=new jb0({eventSourceSettings:this.#X,push:(G)=>{this.dispatchEvent(Pb0(G.type,G.options))}});zb0(B.body.stream,X,(G)=>{if(G?.aborted===!1)this.close(),this.dispatchEvent(new Event("error"))})},this.#C=Rb0(A)}#Z(){if(this.#Y===WM)return;this.#Y=GM,this.dispatchEvent(new Event("error")),setTimeout(()=>{if(this.#Y!==GM)return;if(this.#X.lastEventId.length)this.#J.headersList.set("last-event-id",this.#X.lastEventId,!0);this.#G()},this.#X.reconnectionTime)?.unref()}close(){if(w9.brandCheck(this,TV),this.#Y===WM)return;this.#Y=WM,this.#C.abort(),this.#J=null}get onopen(){return this.#A.open}set onopen(A){if(this.#A.open)this.removeEventListener("open",this.#A.open);let Q=w9.converters.EventHandlerNonNull(A);if(Q!==null)this.addEventListener("open",Q),this.#A.open=A;else this.#A.open=null}get onmessage(){return this.#A.message}set onmessage(A){if(this.#A.message)this.removeEventListener("message",this.#A.message);let Q=w9.converters.EventHandlerNonNull(A);if(Q!==null)this.addEventListener("message",Q),this.#A.message=A;else this.#A.message=null}get onerror(){return this.#A.error}set onerror(A){if(this.#A.error)this.removeEventListener("error",this.#A.error);let Q=w9.converters.EventHandlerNonNull(A);if(Q!==null)this.addEventListener("error",Q),this.#A.error=A;else this.#A.error=null}}var QSQ={CONNECTING:{__proto__:null,configurable:!1,enumerable:!0,value:GM,writable:!1},OPEN:{__proto__:null,configurable:!1,enumerable:!0,value:ASQ,writable:!1},CLOSED:{__proto__:null,configurable:!1,enumerable:!0,value:WM,writable:!1}};Object.defineProperties(TV,QSQ);Object.defineProperties(TV.prototype,QSQ);Object.defineProperties(TV.prototype,{close:U4,onerror:U4,onmessage:U4,onopen:U4,readyState:U4,url:U4,withCredentials:U4});w9.converters.EventSourceInitDict=w9.dictionaryConverter([{key:"withCredentials",converter:w9.converters.boolean,defaultValue:()=>!1},{key:"dispatcher",converter:w9.converters.any},{key:"node",converter:w9.dictionaryConverter([{key:"reconnectionTime",converter:w9.converters["unsigned long"],defaultValue:()=>eTQ},{key:"dispatcher",converter:w9.converters.any}]),defaultValue:()=>({})}]);BSQ.exports={EventSource:TV,defaultReconnectionTime:eTQ}});var M1=R((jSQ)=>{Object.defineProperty(jSQ,"__esModule",{value:!0});jSQ.setMatrixArrayType=Ju0;jSQ.toRadian=Xu0;jSQ.equals=Gu0;jSQ.RANDOM=jSQ.ARRAY_TYPE=jSQ.EPSILON=void 0;var RSQ=0.000001;jSQ.EPSILON=RSQ;var wSQ=typeof Float32Array<"u"?Float32Array:Array;jSQ.ARRAY_TYPE=wSQ;var Yu0=Math.random;jSQ.RANDOM=Yu0;function Ju0(A){jSQ.ARRAY_TYPE=wSQ=A}var Cu0=Math.PI/180;function Xu0(A){return A*Cu0}function Gu0(A,Q){return Math.abs(A-Q)<=RSQ*Math.max(1,Math.abs(A),Math.abs(Q))}if(!Math.hypot)Math.hypot=function(){var A=0,Q=arguments.length;while(Q--)A+=arguments[Q]*arguments[Q];return Math.sqrt(A)}});var ySQ=R((_SQ)=>{function sk(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")sk=function(B){return typeof B};else sk=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return sk(A)}Object.defineProperty(_SQ,"__esModule",{value:!0});_SQ.create=Eu0;_SQ.clone=Ku0;_SQ.copy=Vu0;_SQ.identity=Iu0;_SQ.fromValues=Hu0;_SQ.set=Du0;_SQ.transpose=Nu0;_SQ.invert=Lu0;_SQ.adjoint=qu0;_SQ.determinant=Mu0;_SQ.multiply=SSQ;_SQ.rotate=zu0;_SQ.scale=Ru0;_SQ.fromRotation=wu0;_SQ.fromScaling=ju0;_SQ.str=Ou0;_SQ.frob=Pu0;_SQ.LDU=Tu0;_SQ.add=Su0;_SQ.subtract=kSQ;_SQ.exactEquals=ku0;_SQ.equals=_u0;_SQ.multiplyScalar=vu0;_SQ.multiplyScalarAndAdd=yu0;_SQ.sub=_SQ.mul=void 0;var DF=Uu0(M1());function TSQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(TSQ=function(J){return J?B:Q})(A)}function Uu0(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||sk(A)!=="object"&&typeof A!=="function")return{default:A};var B=TSQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function Eu0(){var A=new DF.ARRAY_TYPE(4);if(DF.ARRAY_TYPE!=Float32Array)A[1]=0,A[2]=0;return A[0]=1,A[3]=1,A}function Ku0(A){var Q=new DF.ARRAY_TYPE(4);return Q[0]=A[0],Q[1]=A[1],Q[2]=A[2],Q[3]=A[3],Q}function Vu0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A[3]=Q[3],A}function Iu0(A){return A[0]=1,A[1]=0,A[2]=0,A[3]=1,A}function Hu0(A,Q,B,Y){var J=new DF.ARRAY_TYPE(4);return J[0]=A,J[1]=Q,J[2]=B,J[3]=Y,J}function Du0(A,Q,B,Y,J){return A[0]=Q,A[1]=B,A[2]=Y,A[3]=J,A}function Nu0(A,Q){if(A===Q){var B=Q[1];A[1]=Q[2],A[2]=B}else A[0]=Q[0],A[1]=Q[2],A[2]=Q[1],A[3]=Q[3];return A}function Lu0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=B*C-J*Y;if(!X)return null;return X=1/X,A[0]=C*X,A[1]=-Y*X,A[2]=-J*X,A[3]=B*X,A}function qu0(A,Q){var B=Q[0];return A[0]=Q[3],A[1]=-Q[1],A[2]=-Q[2],A[3]=B,A}function Mu0(A){return A[0]*A[3]-A[2]*A[1]}function SSQ(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=B[0],W=B[1],F=B[2],Z=B[3];return A[0]=Y*G+C*W,A[1]=J*G+X*W,A[2]=Y*F+C*Z,A[3]=J*F+X*Z,A}function zu0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Math.sin(B),W=Math.cos(B);return A[0]=Y*W+C*G,A[1]=J*W+X*G,A[2]=Y*-G+C*W,A[3]=J*-G+X*W,A}function Ru0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=B[0],W=B[1];return A[0]=Y*G,A[1]=J*G,A[2]=C*W,A[3]=X*W,A}function wu0(A,Q){var B=Math.sin(Q),Y=Math.cos(Q);return A[0]=Y,A[1]=B,A[2]=-B,A[3]=Y,A}function ju0(A,Q){return A[0]=Q[0],A[1]=0,A[2]=0,A[3]=Q[1],A}function Ou0(A){return"mat2("+A[0]+", "+A[1]+", "+A[2]+", "+A[3]+")"}function Pu0(A){return Math.hypot(A[0],A[1],A[2],A[3])}function Tu0(A,Q,B,Y){return A[2]=Y[2]/Y[0],B[0]=Y[0],B[1]=Y[1],B[3]=Y[3]-A[2]*B[1],[A,Q,B]}function Su0(A,Q,B){return A[0]=Q[0]+B[0],A[1]=Q[1]+B[1],A[2]=Q[2]+B[2],A[3]=Q[3]+B[3],A}function kSQ(A,Q,B){return A[0]=Q[0]-B[0],A[1]=Q[1]-B[1],A[2]=Q[2]-B[2],A[3]=Q[3]-B[3],A}function ku0(A,Q){return A[0]===Q[0]&&A[1]===Q[1]&&A[2]===Q[2]&&A[3]===Q[3]}function _u0(A,Q){var B=A[0],Y=A[1],J=A[2],C=A[3],X=Q[0],G=Q[1],W=Q[2],F=Q[3];return Math.abs(B-X)<=DF.EPSILON*Math.max(1,Math.abs(B),Math.abs(X))&&Math.abs(Y-G)<=DF.EPSILON*Math.max(1,Math.abs(Y),Math.abs(G))&&Math.abs(J-W)<=DF.EPSILON*Math.max(1,Math.abs(J),Math.abs(W))&&Math.abs(C-F)<=DF.EPSILON*Math.max(1,Math.abs(C),Math.abs(F))}function vu0(A,Q,B){return A[0]=Q[0]*B,A[1]=Q[1]*B,A[2]=Q[2]*B,A[3]=Q[3]*B,A}function yu0(A,Q,B,Y){return A[0]=Q[0]+B[0]*Y,A[1]=Q[1]+B[1]*Y,A[2]=Q[2]+B[2]*Y,A[3]=Q[3]+B[3]*Y,A}var gu0=SSQ;_SQ.mul=gu0;var hu0=kSQ;_SQ.sub=hu0});var mSQ=R((fSQ)=>{function rk(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")rk=function(B){return typeof B};else rk=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return rk(A)}Object.defineProperty(fSQ,"__esModule",{value:!0});fSQ.create=Fd0;fSQ.clone=Zd0;fSQ.copy=$d0;fSQ.identity=Ud0;fSQ.fromValues=Ed0;fSQ.set=Kd0;fSQ.invert=Vd0;fSQ.determinant=Id0;fSQ.multiply=hSQ;fSQ.rotate=Hd0;fSQ.scale=Dd0;fSQ.translate=Nd0;fSQ.fromRotation=Ld0;fSQ.fromScaling=qd0;fSQ.fromTranslation=Md0;fSQ.str=zd0;fSQ.frob=Rd0;fSQ.add=wd0;fSQ.subtract=xSQ;fSQ.multiplyScalar=jd0;fSQ.multiplyScalarAndAdd=Od0;fSQ.exactEquals=Pd0;fSQ.equals=Td0;fSQ.sub=fSQ.mul=void 0;var fX=Wd0(M1());function gSQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(gSQ=function(J){return J?B:Q})(A)}function Wd0(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||rk(A)!=="object"&&typeof A!=="function")return{default:A};var B=gSQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function Fd0(){var A=new fX.ARRAY_TYPE(6);if(fX.ARRAY_TYPE!=Float32Array)A[1]=0,A[2]=0,A[4]=0,A[5]=0;return A[0]=1,A[3]=1,A}function Zd0(A){var Q=new fX.ARRAY_TYPE(6);return Q[0]=A[0],Q[1]=A[1],Q[2]=A[2],Q[3]=A[3],Q[4]=A[4],Q[5]=A[5],Q}function $d0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A[3]=Q[3],A[4]=Q[4],A[5]=Q[5],A}function Ud0(A){return A[0]=1,A[1]=0,A[2]=0,A[3]=1,A[4]=0,A[5]=0,A}function Ed0(A,Q,B,Y,J,C){var X=new fX.ARRAY_TYPE(6);return X[0]=A,X[1]=Q,X[2]=B,X[3]=Y,X[4]=J,X[5]=C,X}function Kd0(A,Q,B,Y,J,C,X){return A[0]=Q,A[1]=B,A[2]=Y,A[3]=J,A[4]=C,A[5]=X,A}function Vd0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Q[4],G=Q[5],W=B*C-Y*J;if(!W)return null;return W=1/W,A[0]=C*W,A[1]=-Y*W,A[2]=-J*W,A[3]=B*W,A[4]=(J*G-C*X)*W,A[5]=(Y*X-B*G)*W,A}function Id0(A){return A[0]*A[3]-A[1]*A[2]}function hSQ(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],W=Q[5],F=B[0],Z=B[1],U=B[2],$=B[3],E=B[4],K=B[5];return A[0]=Y*F+C*Z,A[1]=J*F+X*Z,A[2]=Y*U+C*$,A[3]=J*U+X*$,A[4]=Y*E+C*K+G,A[5]=J*E+X*K+W,A}function Hd0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],W=Q[5],F=Math.sin(B),Z=Math.cos(B);return A[0]=Y*Z+C*F,A[1]=J*Z+X*F,A[2]=Y*-F+C*Z,A[3]=J*-F+X*Z,A[4]=G,A[5]=W,A}function Dd0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],W=Q[5],F=B[0],Z=B[1];return A[0]=Y*F,A[1]=J*F,A[2]=C*Z,A[3]=X*Z,A[4]=G,A[5]=W,A}function Nd0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],W=Q[5],F=B[0],Z=B[1];return A[0]=Y,A[1]=J,A[2]=C,A[3]=X,A[4]=Y*F+C*Z+G,A[5]=J*F+X*Z+W,A}function Ld0(A,Q){var B=Math.sin(Q),Y=Math.cos(Q);return A[0]=Y,A[1]=B,A[2]=-B,A[3]=Y,A[4]=0,A[5]=0,A}function qd0(A,Q){return A[0]=Q[0],A[1]=0,A[2]=0,A[3]=Q[1],A[4]=0,A[5]=0,A}function Md0(A,Q){return A[0]=1,A[1]=0,A[2]=0,A[3]=1,A[4]=Q[0],A[5]=Q[1],A}function zd0(A){return"mat2d("+A[0]+", "+A[1]+", "+A[2]+", "+A[3]+", "+A[4]+", "+A[5]+")"}function Rd0(A){return Math.hypot(A[0],A[1],A[2],A[3],A[4],A[5],1)}function wd0(A,Q,B){return A[0]=Q[0]+B[0],A[1]=Q[1]+B[1],A[2]=Q[2]+B[2],A[3]=Q[3]+B[3],A[4]=Q[4]+B[4],A[5]=Q[5]+B[5],A}function xSQ(A,Q,B){return A[0]=Q[0]-B[0],A[1]=Q[1]-B[1],A[2]=Q[2]-B[2],A[3]=Q[3]-B[3],A[4]=Q[4]-B[4],A[5]=Q[5]-B[5],A}function jd0(A,Q,B){return A[0]=Q[0]*B,A[1]=Q[1]*B,A[2]=Q[2]*B,A[3]=Q[3]*B,A[4]=Q[4]*B,A[5]=Q[5]*B,A}function Od0(A,Q,B,Y){return A[0]=Q[0]+B[0]*Y,A[1]=Q[1]+B[1]*Y,A[2]=Q[2]+B[2]*Y,A[3]=Q[3]+B[3]*Y,A[4]=Q[4]+B[4]*Y,A[5]=Q[5]+B[5]*Y,A}function Pd0(A,Q){return A[0]===Q[0]&&A[1]===Q[1]&&A[2]===Q[2]&&A[3]===Q[3]&&A[4]===Q[4]&&A[5]===Q[5]}function Td0(A,Q){var B=A[0],Y=A[1],J=A[2],C=A[3],X=A[4],G=A[5],W=Q[0],F=Q[1],Z=Q[2],U=Q[3],$=Q[4],E=Q[5];return Math.abs(B-W)<=fX.EPSILON*Math.max(1,Math.abs(B),Math.abs(W))&&Math.abs(Y-F)<=fX.EPSILON*Math.max(1,Math.abs(Y),Math.abs(F))&&Math.abs(J-Z)<=fX.EPSILON*Math.max(1,Math.abs(J),Math.abs(Z))&&Math.abs(C-U)<=fX.EPSILON*Math.max(1,Math.abs(C),Math.abs(U))&&Math.abs(X-$)<=fX.EPSILON*Math.max(1,Math.abs(X),Math.abs($))&&Math.abs(G-E)<=fX.EPSILON*Math.max(1,Math.abs(G),Math.abs(E))}var Sd0=hSQ;fSQ.mul=Sd0;var kd0=xSQ;fSQ.sub=kd0});var Nt=R((lSQ)=>{function ak(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")ak=function(B){return typeof B};else ak=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return ak(A)}Object.defineProperty(lSQ,"__esModule",{value:!0});lSQ.create=Yc0;lSQ.fromMat4=Jc0;lSQ.clone=Cc0;lSQ.copy=Xc0;lSQ.fromValues=Gc0;lSQ.set=Wc0;lSQ.identity=Fc0;lSQ.transpose=Zc0;lSQ.invert=$c0;lSQ.adjoint=Uc0;lSQ.determinant=Ec0;lSQ.multiply=dSQ;lSQ.translate=Kc0;lSQ.rotate=Vc0;lSQ.scale=Ic0;lSQ.fromTranslation=Hc0;lSQ.fromRotation=Dc0;lSQ.fromScaling=Nc0;lSQ.fromMat2d=Lc0;lSQ.fromQuat=qc0;lSQ.normalFromMat4=Mc0;lSQ.projection=zc0;lSQ.str=Rc0;lSQ.frob=wc0;lSQ.add=jc0;lSQ.subtract=cSQ;lSQ.multiplyScalar=Oc0;lSQ.multiplyScalarAndAdd=Pc0;lSQ.exactEquals=Tc0;lSQ.equals=Sc0;lSQ.sub=lSQ.mul=void 0;var t8=Bc0(M1());function uSQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(uSQ=function(J){return J?B:Q})(A)}function Bc0(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||ak(A)!=="object"&&typeof A!=="function")return{default:A};var B=uSQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function Yc0(){var A=new t8.ARRAY_TYPE(9);if(t8.ARRAY_TYPE!=Float32Array)A[1]=0,A[2]=0,A[3]=0,A[5]=0,A[6]=0,A[7]=0;return A[0]=1,A[4]=1,A[8]=1,A}function Jc0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A[3]=Q[4],A[4]=Q[5],A[5]=Q[6],A[6]=Q[8],A[7]=Q[9],A[8]=Q[10],A}function Cc0(A){var Q=new t8.ARRAY_TYPE(9);return Q[0]=A[0],Q[1]=A[1],Q[2]=A[2],Q[3]=A[3],Q[4]=A[4],Q[5]=A[5],Q[6]=A[6],Q[7]=A[7],Q[8]=A[8],Q}function Xc0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A[3]=Q[3],A[4]=Q[4],A[5]=Q[5],A[6]=Q[6],A[7]=Q[7],A[8]=Q[8],A}function Gc0(A,Q,B,Y,J,C,X,G,W){var F=new t8.ARRAY_TYPE(9);return F[0]=A,F[1]=Q,F[2]=B,F[3]=Y,F[4]=J,F[5]=C,F[6]=X,F[7]=G,F[8]=W,F}function Wc0(A,Q,B,Y,J,C,X,G,W,F){return A[0]=Q,A[1]=B,A[2]=Y,A[3]=J,A[4]=C,A[5]=X,A[6]=G,A[7]=W,A[8]=F,A}function Fc0(A){return A[0]=1,A[1]=0,A[2]=0,A[3]=0,A[4]=1,A[5]=0,A[6]=0,A[7]=0,A[8]=1,A}function Zc0(A,Q){if(A===Q){var B=Q[1],Y=Q[2],J=Q[5];A[1]=Q[3],A[2]=Q[6],A[3]=B,A[5]=Q[7],A[6]=Y,A[7]=J}else A[0]=Q[0],A[1]=Q[3],A[2]=Q[6],A[3]=Q[1],A[4]=Q[4],A[5]=Q[7],A[6]=Q[2],A[7]=Q[5],A[8]=Q[8];return A}function $c0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Q[4],G=Q[5],W=Q[6],F=Q[7],Z=Q[8],U=Z*X-G*F,$=-Z*C+G*W,E=F*C-X*W,K=B*U+Y*$+J*E;if(!K)return null;return K=1/K,A[0]=U*K,A[1]=(-Z*Y+J*F)*K,A[2]=(G*Y-J*X)*K,A[3]=$*K,A[4]=(Z*B-J*W)*K,A[5]=(-G*B+J*C)*K,A[6]=E*K,A[7]=(-F*B+Y*W)*K,A[8]=(X*B-Y*C)*K,A}function Uc0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Q[4],G=Q[5],W=Q[6],F=Q[7],Z=Q[8];return A[0]=X*Z-G*F,A[1]=J*F-Y*Z,A[2]=Y*G-J*X,A[3]=G*W-C*Z,A[4]=B*Z-J*W,A[5]=J*C-B*G,A[6]=C*F-X*W,A[7]=Y*W-B*F,A[8]=B*X-Y*C,A}function Ec0(A){var Q=A[0],B=A[1],Y=A[2],J=A[3],C=A[4],X=A[5],G=A[6],W=A[7],F=A[8];return Q*(F*C-X*W)+B*(-F*J+X*G)+Y*(W*J-C*G)}function dSQ(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],W=Q[5],F=Q[6],Z=Q[7],U=Q[8],$=B[0],E=B[1],K=B[2],I=B[3],V=B[4],H=B[5],D=B[6],L=B[7],z=B[8];return A[0]=$*Y+E*X+K*F,A[1]=$*J+E*G+K*Z,A[2]=$*C+E*W+K*U,A[3]=I*Y+V*X+H*F,A[4]=I*J+V*G+H*Z,A[5]=I*C+V*W+H*U,A[6]=D*Y+L*X+z*F,A[7]=D*J+L*G+z*Z,A[8]=D*C+L*W+z*U,A}function Kc0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],W=Q[5],F=Q[6],Z=Q[7],U=Q[8],$=B[0],E=B[1];return A[0]=Y,A[1]=J,A[2]=C,A[3]=X,A[4]=G,A[5]=W,A[6]=$*Y+E*X+F,A[7]=$*J+E*G+Z,A[8]=$*C+E*W+U,A}function Vc0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],W=Q[5],F=Q[6],Z=Q[7],U=Q[8],$=Math.sin(B),E=Math.cos(B);return A[0]=E*Y+$*X,A[1]=E*J+$*G,A[2]=E*C+$*W,A[3]=E*X-$*Y,A[4]=E*G-$*J,A[5]=E*W-$*C,A[6]=F,A[7]=Z,A[8]=U,A}function Ic0(A,Q,B){var Y=B[0],J=B[1];return A[0]=Y*Q[0],A[1]=Y*Q[1],A[2]=Y*Q[2],A[3]=J*Q[3],A[4]=J*Q[4],A[5]=J*Q[5],A[6]=Q[6],A[7]=Q[7],A[8]=Q[8],A}function Hc0(A,Q){return A[0]=1,A[1]=0,A[2]=0,A[3]=0,A[4]=1,A[5]=0,A[6]=Q[0],A[7]=Q[1],A[8]=1,A}function Dc0(A,Q){var B=Math.sin(Q),Y=Math.cos(Q);return A[0]=Y,A[1]=B,A[2]=0,A[3]=-B,A[4]=Y,A[5]=0,A[6]=0,A[7]=0,A[8]=1,A}function Nc0(A,Q){return A[0]=Q[0],A[1]=0,A[2]=0,A[3]=0,A[4]=Q[1],A[5]=0,A[6]=0,A[7]=0,A[8]=1,A}function Lc0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=0,A[3]=Q[2],A[4]=Q[3],A[5]=0,A[6]=Q[4],A[7]=Q[5],A[8]=1,A}function qc0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=B+B,G=Y+Y,W=J+J,F=B*X,Z=Y*X,U=Y*G,$=J*X,E=J*G,K=J*W,I=C*X,V=C*G,H=C*W;return A[0]=1-U-K,A[3]=Z-H,A[6]=$+V,A[1]=Z+H,A[4]=1-F-K,A[7]=E-I,A[2]=$-V,A[5]=E+I,A[8]=1-F-U,A}function Mc0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Q[4],G=Q[5],W=Q[6],F=Q[7],Z=Q[8],U=Q[9],$=Q[10],E=Q[11],K=Q[12],I=Q[13],V=Q[14],H=Q[15],D=B*G-Y*X,L=B*W-J*X,z=B*F-C*X,M=Y*W-J*G,N=Y*F-C*G,q=J*F-C*W,w=Z*I-U*K,P=Z*V-$*K,_=Z*H-E*K,j=U*V-$*I,k=U*H-E*I,T=$*H-E*V,S=D*T-L*k+z*j+M*_-N*P+q*w;if(!S)return null;return S=1/S,A[0]=(G*T-W*k+F*j)*S,A[1]=(W*_-X*T-F*P)*S,A[2]=(X*k-G*_+F*w)*S,A[3]=(J*k-Y*T-C*j)*S,A[4]=(B*T-J*_+C*P)*S,A[5]=(Y*_-B*k-C*w)*S,A[6]=(I*q-V*N+H*M)*S,A[7]=(V*z-K*q-H*L)*S,A[8]=(K*N-I*z+H*D)*S,A}function zc0(A,Q,B){return A[0]=2/Q,A[1]=0,A[2]=0,A[3]=0,A[4]=-2/B,A[5]=0,A[6]=-1,A[7]=1,A[8]=1,A}function Rc0(A){return"mat3("+A[0]+", "+A[1]+", "+A[2]+", "+A[3]+", "+A[4]+", "+A[5]+", "+A[6]+", "+A[7]+", "+A[8]+")"}function wc0(A){return Math.hypot(A[0],A[1],A[2],A[3],A[4],A[5],A[6],A[7],A[8])}function jc0(A,Q,B){return A[0]=Q[0]+B[0],A[1]=Q[1]+B[1],A[2]=Q[2]+B[2],A[3]=Q[3]+B[3],A[4]=Q[4]+B[4],A[5]=Q[5]+B[5],A[6]=Q[6]+B[6],A[7]=Q[7]+B[7],A[8]=Q[8]+B[8],A}function cSQ(A,Q,B){return A[0]=Q[0]-B[0],A[1]=Q[1]-B[1],A[2]=Q[2]-B[2],A[3]=Q[3]-B[3],A[4]=Q[4]-B[4],A[5]=Q[5]-B[5],A[6]=Q[6]-B[6],A[7]=Q[7]-B[7],A[8]=Q[8]-B[8],A}function Oc0(A,Q,B){return A[0]=Q[0]*B,A[1]=Q[1]*B,A[2]=Q[2]*B,A[3]=Q[3]*B,A[4]=Q[4]*B,A[5]=Q[5]*B,A[6]=Q[6]*B,A[7]=Q[7]*B,A[8]=Q[8]*B,A}function Pc0(A,Q,B,Y){return A[0]=Q[0]+B[0]*Y,A[1]=Q[1]+B[1]*Y,A[2]=Q[2]+B[2]*Y,A[3]=Q[3]+B[3]*Y,A[4]=Q[4]+B[4]*Y,A[5]=Q[5]+B[5]*Y,A[6]=Q[6]+B[6]*Y,A[7]=Q[7]+B[7]*Y,A[8]=Q[8]+B[8]*Y,A}function Tc0(A,Q){return A[0]===Q[0]&&A[1]===Q[1]&&A[2]===Q[2]&&A[3]===Q[3]&&A[4]===Q[4]&&A[5]===Q[5]&&A[6]===Q[6]&&A[7]===Q[7]&&A[8]===Q[8]}function Sc0(A,Q){var B=A[0],Y=A[1],J=A[2],C=A[3],X=A[4],G=A[5],W=A[6],F=A[7],Z=A[8],U=Q[0],$=Q[1],E=Q[2],K=Q[3],I=Q[4],V=Q[5],H=Q[6],D=Q[7],L=Q[8];return Math.abs(B-U)<=t8.EPSILON*Math.max(1,Math.abs(B),Math.abs(U))&&Math.abs(Y-$)<=t8.EPSILON*Math.max(1,Math.abs(Y),Math.abs($))&&Math.abs(J-E)<=t8.EPSILON*Math.max(1,Math.abs(J),Math.abs(E))&&Math.abs(C-K)<=t8.EPSILON*Math.max(1,Math.abs(C),Math.abs(K))&&Math.abs(X-I)<=t8.EPSILON*Math.max(1,Math.abs(X),Math.abs(I))&&Math.abs(G-V)<=t8.EPSILON*Math.max(1,Math.abs(G),Math.abs(V))&&Math.abs(W-H)<=t8.EPSILON*Math.max(1,Math.abs(W),Math.abs(H))&&Math.abs(F-D)<=t8.EPSILON*Math.max(1,Math.abs(F),Math.abs(D))&&Math.abs(Z-L)<=t8.EPSILON*Math.max(1,Math.abs(Z),Math.abs(L))}var kc0=dSQ;lSQ.mul=kc0;var _c0=cSQ;lSQ.sub=_c0});var Lt=R((AkQ)=>{function ok(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")ok=function(B){return typeof B};else ok=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return ok(A)}Object.defineProperty(AkQ,"__esModule",{value:!0});AkQ.create=$l0;AkQ.clone=Ul0;AkQ.copy=El0;AkQ.fromValues=Kl0;AkQ.set=Vl0;AkQ.identity=nSQ;AkQ.transpose=Il0;AkQ.invert=Hl0;AkQ.adjoint=Dl0;AkQ.determinant=Nl0;AkQ.multiply=sSQ;AkQ.translate=Ll0;AkQ.scale=ql0;AkQ.rotate=Ml0;AkQ.rotateX=zl0;AkQ.rotateY=Rl0;AkQ.rotateZ=wl0;AkQ.fromTranslation=jl0;AkQ.fromScaling=Ol0;AkQ.fromRotation=Pl0;AkQ.fromXRotation=Tl0;AkQ.fromYRotation=Sl0;AkQ.fromZRotation=kl0;AkQ.fromRotationTranslation=rSQ;AkQ.fromQuat2=_l0;AkQ.getTranslation=vl0;AkQ.getScaling=aSQ;AkQ.getRotation=yl0;AkQ.fromRotationTranslationScale=gl0;AkQ.fromRotationTranslationScaleOrigin=hl0;AkQ.fromQuat=xl0;AkQ.frustum=fl0;AkQ.perspectiveNO=oSQ;AkQ.perspectiveZO=ml0;AkQ.perspectiveFromFieldOfView=ul0;AkQ.orthoNO=tSQ;AkQ.orthoZO=cl0;AkQ.lookAt=ll0;AkQ.targetTo=pl0;AkQ.str=il0;AkQ.frob=nl0;AkQ.add=sl0;AkQ.subtract=eSQ;AkQ.multiplyScalar=rl0;AkQ.multiplyScalarAndAdd=al0;AkQ.exactEquals=ol0;AkQ.equals=tl0;AkQ.sub=AkQ.mul=AkQ.ortho=AkQ.perspective=void 0;var Y0=Zl0(M1());function iSQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(iSQ=function(J){return J?B:Q})(A)}function Zl0(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||ok(A)!=="object"&&typeof A!=="function")return{default:A};var B=iSQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function $l0(){var A=new Y0.ARRAY_TYPE(16);if(Y0.ARRAY_TYPE!=Float32Array)A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[6]=0,A[7]=0,A[8]=0,A[9]=0,A[11]=0,A[12]=0,A[13]=0,A[14]=0;return A[0]=1,A[5]=1,A[10]=1,A[15]=1,A}function Ul0(A){var Q=new Y0.ARRAY_TYPE(16);return Q[0]=A[0],Q[1]=A[1],Q[2]=A[2],Q[3]=A[3],Q[4]=A[4],Q[5]=A[5],Q[6]=A[6],Q[7]=A[7],Q[8]=A[8],Q[9]=A[9],Q[10]=A[10],Q[11]=A[11],Q[12]=A[12],Q[13]=A[13],Q[14]=A[14],Q[15]=A[15],Q}function El0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A[3]=Q[3],A[4]=Q[4],A[5]=Q[5],A[6]=Q[6],A[7]=Q[7],A[8]=Q[8],A[9]=Q[9],A[10]=Q[10],A[11]=Q[11],A[12]=Q[12],A[13]=Q[13],A[14]=Q[14],A[15]=Q[15],A}function Kl0(A,Q,B,Y,J,C,X,G,W,F,Z,U,$,E,K,I){var V=new Y0.ARRAY_TYPE(16);return V[0]=A,V[1]=Q,V[2]=B,V[3]=Y,V[4]=J,V[5]=C,V[6]=X,V[7]=G,V[8]=W,V[9]=F,V[10]=Z,V[11]=U,V[12]=$,V[13]=E,V[14]=K,V[15]=I,V}function Vl0(A,Q,B,Y,J,C,X,G,W,F,Z,U,$,E,K,I,V){return A[0]=Q,A[1]=B,A[2]=Y,A[3]=J,A[4]=C,A[5]=X,A[6]=G,A[7]=W,A[8]=F,A[9]=Z,A[10]=U,A[11]=$,A[12]=E,A[13]=K,A[14]=I,A[15]=V,A}function nSQ(A){return A[0]=1,A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[5]=1,A[6]=0,A[7]=0,A[8]=0,A[9]=0,A[10]=1,A[11]=0,A[12]=0,A[13]=0,A[14]=0,A[15]=1,A}function Il0(A,Q){if(A===Q){var B=Q[1],Y=Q[2],J=Q[3],C=Q[6],X=Q[7],G=Q[11];A[1]=Q[4],A[2]=Q[8],A[3]=Q[12],A[4]=B,A[6]=Q[9],A[7]=Q[13],A[8]=Y,A[9]=C,A[11]=Q[14],A[12]=J,A[13]=X,A[14]=G}else A[0]=Q[0],A[1]=Q[4],A[2]=Q[8],A[3]=Q[12],A[4]=Q[1],A[5]=Q[5],A[6]=Q[9],A[7]=Q[13],A[8]=Q[2],A[9]=Q[6],A[10]=Q[10],A[11]=Q[14],A[12]=Q[3],A[13]=Q[7],A[14]=Q[11],A[15]=Q[15];return A}function Hl0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Q[4],G=Q[5],W=Q[6],F=Q[7],Z=Q[8],U=Q[9],$=Q[10],E=Q[11],K=Q[12],I=Q[13],V=Q[14],H=Q[15],D=B*G-Y*X,L=B*W-J*X,z=B*F-C*X,M=Y*W-J*G,N=Y*F-C*G,q=J*F-C*W,w=Z*I-U*K,P=Z*V-$*K,_=Z*H-E*K,j=U*V-$*I,k=U*H-E*I,T=$*H-E*V,S=D*T-L*k+z*j+M*_-N*P+q*w;if(!S)return null;return S=1/S,A[0]=(G*T-W*k+F*j)*S,A[1]=(J*k-Y*T-C*j)*S,A[2]=(I*q-V*N+H*M)*S,A[3]=($*N-U*q-E*M)*S,A[4]=(W*_-X*T-F*P)*S,A[5]=(B*T-J*_+C*P)*S,A[6]=(V*z-K*q-H*L)*S,A[7]=(Z*q-$*z+E*L)*S,A[8]=(X*k-G*_+F*w)*S,A[9]=(Y*_-B*k-C*w)*S,A[10]=(K*N-I*z+H*D)*S,A[11]=(U*z-Z*N-E*D)*S,A[12]=(G*P-X*j-W*w)*S,A[13]=(B*j-Y*P+J*w)*S,A[14]=(I*L-K*M-V*D)*S,A[15]=(Z*M-U*L+$*D)*S,A}function Dl0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Q[4],G=Q[5],W=Q[6],F=Q[7],Z=Q[8],U=Q[9],$=Q[10],E=Q[11],K=Q[12],I=Q[13],V=Q[14],H=Q[15];return A[0]=G*($*H-E*V)-U*(W*H-F*V)+I*(W*E-F*$),A[1]=-(Y*($*H-E*V)-U*(J*H-C*V)+I*(J*E-C*$)),A[2]=Y*(W*H-F*V)-G*(J*H-C*V)+I*(J*F-C*W),A[3]=-(Y*(W*E-F*$)-G*(J*E-C*$)+U*(J*F-C*W)),A[4]=-(X*($*H-E*V)-Z*(W*H-F*V)+K*(W*E-F*$)),A[5]=B*($*H-E*V)-Z*(J*H-C*V)+K*(J*E-C*$),A[6]=-(B*(W*H-F*V)-X*(J*H-C*V)+K*(J*F-C*W)),A[7]=B*(W*E-F*$)-X*(J*E-C*$)+Z*(J*F-C*W),A[8]=X*(U*H-E*I)-Z*(G*H-F*I)+K*(G*E-F*U),A[9]=-(B*(U*H-E*I)-Z*(Y*H-C*I)+K*(Y*E-C*U)),A[10]=B*(G*H-F*I)-X*(Y*H-C*I)+K*(Y*F-C*G),A[11]=-(B*(G*E-F*U)-X*(Y*E-C*U)+Z*(Y*F-C*G)),A[12]=-(X*(U*V-$*I)-Z*(G*V-W*I)+K*(G*$-W*U)),A[13]=B*(U*V-$*I)-Z*(Y*V-J*I)+K*(Y*$-J*U),A[14]=-(B*(G*V-W*I)-X*(Y*V-J*I)+K*(Y*W-J*G)),A[15]=B*(G*$-W*U)-X*(Y*$-J*U)+Z*(Y*W-J*G),A}function Nl0(A){var Q=A[0],B=A[1],Y=A[2],J=A[3],C=A[4],X=A[5],G=A[6],W=A[7],F=A[8],Z=A[9],U=A[10],$=A[11],E=A[12],K=A[13],I=A[14],V=A[15],H=Q*X-B*C,D=Q*G-Y*C,L=Q*W-J*C,z=B*G-Y*X,M=B*W-J*X,N=Y*W-J*G,q=F*K-Z*E,w=F*I-U*E,P=F*V-$*E,_=Z*I-U*K,j=Z*V-$*K,k=U*V-$*I;return H*k-D*j+L*_+z*P-M*w+N*q}function sSQ(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],W=Q[5],F=Q[6],Z=Q[7],U=Q[8],$=Q[9],E=Q[10],K=Q[11],I=Q[12],V=Q[13],H=Q[14],D=Q[15],L=B[0],z=B[1],M=B[2],N=B[3];return A[0]=L*Y+z*G+M*U+N*I,A[1]=L*J+z*W+M*$+N*V,A[2]=L*C+z*F+M*E+N*H,A[3]=L*X+z*Z+M*K+N*D,L=B[4],z=B[5],M=B[6],N=B[7],A[4]=L*Y+z*G+M*U+N*I,A[5]=L*J+z*W+M*$+N*V,A[6]=L*C+z*F+M*E+N*H,A[7]=L*X+z*Z+M*K+N*D,L=B[8],z=B[9],M=B[10],N=B[11],A[8]=L*Y+z*G+M*U+N*I,A[9]=L*J+z*W+M*$+N*V,A[10]=L*C+z*F+M*E+N*H,A[11]=L*X+z*Z+M*K+N*D,L=B[12],z=B[13],M=B[14],N=B[15],A[12]=L*Y+z*G+M*U+N*I,A[13]=L*J+z*W+M*$+N*V,A[14]=L*C+z*F+M*E+N*H,A[15]=L*X+z*Z+M*K+N*D,A}function Ll0(A,Q,B){var Y=B[0],J=B[1],C=B[2],X,G,W,F,Z,U,$,E,K,I,V,H;if(Q===A)A[12]=Q[0]*Y+Q[4]*J+Q[8]*C+Q[12],A[13]=Q[1]*Y+Q[5]*J+Q[9]*C+Q[13],A[14]=Q[2]*Y+Q[6]*J+Q[10]*C+Q[14],A[15]=Q[3]*Y+Q[7]*J+Q[11]*C+Q[15];else X=Q[0],G=Q[1],W=Q[2],F=Q[3],Z=Q[4],U=Q[5],$=Q[6],E=Q[7],K=Q[8],I=Q[9],V=Q[10],H=Q[11],A[0]=X,A[1]=G,A[2]=W,A[3]=F,A[4]=Z,A[5]=U,A[6]=$,A[7]=E,A[8]=K,A[9]=I,A[10]=V,A[11]=H,A[12]=X*Y+Z*J+K*C+Q[12],A[13]=G*Y+U*J+I*C+Q[13],A[14]=W*Y+$*J+V*C+Q[14],A[15]=F*Y+E*J+H*C+Q[15];return A}function ql0(A,Q,B){var Y=B[0],J=B[1],C=B[2];return A[0]=Q[0]*Y,A[1]=Q[1]*Y,A[2]=Q[2]*Y,A[3]=Q[3]*Y,A[4]=Q[4]*J,A[5]=Q[5]*J,A[6]=Q[6]*J,A[7]=Q[7]*J,A[8]=Q[8]*C,A[9]=Q[9]*C,A[10]=Q[10]*C,A[11]=Q[11]*C,A[12]=Q[12],A[13]=Q[13],A[14]=Q[14],A[15]=Q[15],A}function Ml0(A,Q,B,Y){var J=Y[0],C=Y[1],X=Y[2],G=Math.hypot(J,C,X),W,F,Z,U,$,E,K,I,V,H,D,L,z,M,N,q,w,P,_,j,k,T,S,v;if(G0)B[0]=(G*X+Z*Y+W*C-F*J)*2/U,B[1]=(W*X+Z*J+F*Y-G*C)*2/U,B[2]=(F*X+Z*C+G*J-W*Y)*2/U;else B[0]=(G*X+Z*Y+W*C-F*J)*2,B[1]=(W*X+Z*J+F*Y-G*C)*2,B[2]=(F*X+Z*C+G*J-W*Y)*2;return rSQ(A,Q,B),A}function vl0(A,Q){return A[0]=Q[12],A[1]=Q[13],A[2]=Q[14],A}function aSQ(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[4],X=Q[5],G=Q[6],W=Q[8],F=Q[9],Z=Q[10];return A[0]=Math.hypot(B,Y,J),A[1]=Math.hypot(C,X,G),A[2]=Math.hypot(W,F,Z),A}function yl0(A,Q){var B=new Y0.ARRAY_TYPE(3);aSQ(B,Q);var Y=1/B[0],J=1/B[1],C=1/B[2],X=Q[0]*Y,G=Q[1]*J,W=Q[2]*C,F=Q[4]*Y,Z=Q[5]*J,U=Q[6]*C,$=Q[8]*Y,E=Q[9]*J,K=Q[10]*C,I=X+Z+K,V=0;if(I>0)V=Math.sqrt(I+1)*2,A[3]=0.25*V,A[0]=(U-E)/V,A[1]=($-W)/V,A[2]=(G-F)/V;else if(X>Z&&X>K)V=Math.sqrt(1+X-Z-K)*2,A[3]=(U-E)/V,A[0]=0.25*V,A[1]=(G+F)/V,A[2]=($+W)/V;else if(Z>K)V=Math.sqrt(1+Z-X-K)*2,A[3]=($-W)/V,A[0]=(G+F)/V,A[1]=0.25*V,A[2]=(U+E)/V;else V=Math.sqrt(1+K-X-Z)*2,A[3]=(G-F)/V,A[0]=($+W)/V,A[1]=(U+E)/V,A[2]=0.25*V;return A}function gl0(A,Q,B,Y){var J=Q[0],C=Q[1],X=Q[2],G=Q[3],W=J+J,F=C+C,Z=X+X,U=J*W,$=J*F,E=J*Z,K=C*F,I=C*Z,V=X*Z,H=G*W,D=G*F,L=G*Z,z=Y[0],M=Y[1],N=Y[2];return A[0]=(1-(K+V))*z,A[1]=($+L)*z,A[2]=(E-D)*z,A[3]=0,A[4]=($-L)*M,A[5]=(1-(U+V))*M,A[6]=(I+H)*M,A[7]=0,A[8]=(E+D)*N,A[9]=(I-H)*N,A[10]=(1-(U+K))*N,A[11]=0,A[12]=B[0],A[13]=B[1],A[14]=B[2],A[15]=1,A}function hl0(A,Q,B,Y,J){var C=Q[0],X=Q[1],G=Q[2],W=Q[3],F=C+C,Z=X+X,U=G+G,$=C*F,E=C*Z,K=C*U,I=X*Z,V=X*U,H=G*U,D=W*F,L=W*Z,z=W*U,M=Y[0],N=Y[1],q=Y[2],w=J[0],P=J[1],_=J[2],j=(1-(I+H))*M,k=(E+z)*M,T=(K-L)*M,S=(E-z)*N,v=(1-($+H))*N,y=(V+D)*N,h=(K+L)*q,g=(V-D)*q,m=(1-($+I))*q;return A[0]=j,A[1]=k,A[2]=T,A[3]=0,A[4]=S,A[5]=v,A[6]=y,A[7]=0,A[8]=h,A[9]=g,A[10]=m,A[11]=0,A[12]=B[0]+w-(j*w+S*P+h*_),A[13]=B[1]+P-(k*w+v*P+g*_),A[14]=B[2]+_-(T*w+y*P+m*_),A[15]=1,A}function xl0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=B+B,G=Y+Y,W=J+J,F=B*X,Z=Y*X,U=Y*G,$=J*X,E=J*G,K=J*W,I=C*X,V=C*G,H=C*W;return A[0]=1-U-K,A[1]=Z+H,A[2]=$-V,A[3]=0,A[4]=Z-H,A[5]=1-F-K,A[6]=E+I,A[7]=0,A[8]=$+V,A[9]=E-I,A[10]=1-F-U,A[11]=0,A[12]=0,A[13]=0,A[14]=0,A[15]=1,A}function fl0(A,Q,B,Y,J,C,X){var G=1/(B-Q),W=1/(J-Y),F=1/(C-X);return A[0]=C*2*G,A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[5]=C*2*W,A[6]=0,A[7]=0,A[8]=(B+Q)*G,A[9]=(J+Y)*W,A[10]=(X+C)*F,A[11]=-1,A[12]=0,A[13]=0,A[14]=X*C*2*F,A[15]=0,A}function oSQ(A,Q,B,Y,J){var C=1/Math.tan(Q/2),X;if(A[0]=C/B,A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[5]=C,A[6]=0,A[7]=0,A[8]=0,A[9]=0,A[11]=-1,A[12]=0,A[13]=0,A[15]=0,J!=null&&J!==1/0)X=1/(Y-J),A[10]=(J+Y)*X,A[14]=2*J*Y*X;else A[10]=-1,A[14]=-2*Y;return A}var bl0=oSQ;AkQ.perspective=bl0;function ml0(A,Q,B,Y,J){var C=1/Math.tan(Q/2),X;if(A[0]=C/B,A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[5]=C,A[6]=0,A[7]=0,A[8]=0,A[9]=0,A[11]=-1,A[12]=0,A[13]=0,A[15]=0,J!=null&&J!==1/0)X=1/(Y-J),A[10]=J*X,A[14]=J*Y*X;else A[10]=-1,A[14]=-Y;return A}function ul0(A,Q,B,Y){var J=Math.tan(Q.upDegrees*Math.PI/180),C=Math.tan(Q.downDegrees*Math.PI/180),X=Math.tan(Q.leftDegrees*Math.PI/180),G=Math.tan(Q.rightDegrees*Math.PI/180),W=2/(X+G),F=2/(J+C);return A[0]=W,A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[5]=F,A[6]=0,A[7]=0,A[8]=-((X-G)*W*0.5),A[9]=(J-C)*F*0.5,A[10]=Y/(B-Y),A[11]=-1,A[12]=0,A[13]=0,A[14]=Y*B/(B-Y),A[15]=0,A}function tSQ(A,Q,B,Y,J,C,X){var G=1/(Q-B),W=1/(Y-J),F=1/(C-X);return A[0]=-2*G,A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[5]=-2*W,A[6]=0,A[7]=0,A[8]=0,A[9]=0,A[10]=2*F,A[11]=0,A[12]=(Q+B)*G,A[13]=(J+Y)*W,A[14]=(X+C)*F,A[15]=1,A}var dl0=tSQ;AkQ.ortho=dl0;function cl0(A,Q,B,Y,J,C,X){var G=1/(Q-B),W=1/(Y-J),F=1/(C-X);return A[0]=-2*G,A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[5]=-2*W,A[6]=0,A[7]=0,A[8]=0,A[9]=0,A[10]=F,A[11]=0,A[12]=(Q+B)*G,A[13]=(J+Y)*W,A[14]=C*F,A[15]=1,A}function ll0(A,Q,B,Y){var J,C,X,G,W,F,Z,U,$,E,K=Q[0],I=Q[1],V=Q[2],H=Y[0],D=Y[1],L=Y[2],z=B[0],M=B[1],N=B[2];if(Math.abs(K-z)0)E=1/Math.sqrt(E),Z*=E,U*=E,$*=E;var K=W*$-F*U,I=F*Z-G*$,V=G*U-W*Z;if(E=K*K+I*I+V*V,E>0)E=1/Math.sqrt(E),K*=E,I*=E,V*=E;return A[0]=K,A[1]=I,A[2]=V,A[3]=0,A[4]=U*V-$*I,A[5]=$*K-Z*V,A[6]=Z*I-U*K,A[7]=0,A[8]=Z,A[9]=U,A[10]=$,A[11]=0,A[12]=J,A[13]=C,A[14]=X,A[15]=1,A}function il0(A){return"mat4("+A[0]+", "+A[1]+", "+A[2]+", "+A[3]+", "+A[4]+", "+A[5]+", "+A[6]+", "+A[7]+", "+A[8]+", "+A[9]+", "+A[10]+", "+A[11]+", "+A[12]+", "+A[13]+", "+A[14]+", "+A[15]+")"}function nl0(A){return Math.hypot(A[0],A[1],A[2],A[3],A[4],A[5],A[6],A[7],A[8],A[9],A[10],A[11],A[12],A[13],A[14],A[15])}function sl0(A,Q,B){return A[0]=Q[0]+B[0],A[1]=Q[1]+B[1],A[2]=Q[2]+B[2],A[3]=Q[3]+B[3],A[4]=Q[4]+B[4],A[5]=Q[5]+B[5],A[6]=Q[6]+B[6],A[7]=Q[7]+B[7],A[8]=Q[8]+B[8],A[9]=Q[9]+B[9],A[10]=Q[10]+B[10],A[11]=Q[11]+B[11],A[12]=Q[12]+B[12],A[13]=Q[13]+B[13],A[14]=Q[14]+B[14],A[15]=Q[15]+B[15],A}function eSQ(A,Q,B){return A[0]=Q[0]-B[0],A[1]=Q[1]-B[1],A[2]=Q[2]-B[2],A[3]=Q[3]-B[3],A[4]=Q[4]-B[4],A[5]=Q[5]-B[5],A[6]=Q[6]-B[6],A[7]=Q[7]-B[7],A[8]=Q[8]-B[8],A[9]=Q[9]-B[9],A[10]=Q[10]-B[10],A[11]=Q[11]-B[11],A[12]=Q[12]-B[12],A[13]=Q[13]-B[13],A[14]=Q[14]-B[14],A[15]=Q[15]-B[15],A}function rl0(A,Q,B){return A[0]=Q[0]*B,A[1]=Q[1]*B,A[2]=Q[2]*B,A[3]=Q[3]*B,A[4]=Q[4]*B,A[5]=Q[5]*B,A[6]=Q[6]*B,A[7]=Q[7]*B,A[8]=Q[8]*B,A[9]=Q[9]*B,A[10]=Q[10]*B,A[11]=Q[11]*B,A[12]=Q[12]*B,A[13]=Q[13]*B,A[14]=Q[14]*B,A[15]=Q[15]*B,A}function al0(A,Q,B,Y){return A[0]=Q[0]+B[0]*Y,A[1]=Q[1]+B[1]*Y,A[2]=Q[2]+B[2]*Y,A[3]=Q[3]+B[3]*Y,A[4]=Q[4]+B[4]*Y,A[5]=Q[5]+B[5]*Y,A[6]=Q[6]+B[6]*Y,A[7]=Q[7]+B[7]*Y,A[8]=Q[8]+B[8]*Y,A[9]=Q[9]+B[9]*Y,A[10]=Q[10]+B[10]*Y,A[11]=Q[11]+B[11]*Y,A[12]=Q[12]+B[12]*Y,A[13]=Q[13]+B[13]*Y,A[14]=Q[14]+B[14]*Y,A[15]=Q[15]+B[15]*Y,A}function ol0(A,Q){return A[0]===Q[0]&&A[1]===Q[1]&&A[2]===Q[2]&&A[3]===Q[3]&&A[4]===Q[4]&&A[5]===Q[5]&&A[6]===Q[6]&&A[7]===Q[7]&&A[8]===Q[8]&&A[9]===Q[9]&&A[10]===Q[10]&&A[11]===Q[11]&&A[12]===Q[12]&&A[13]===Q[13]&&A[14]===Q[14]&&A[15]===Q[15]}function tl0(A,Q){var B=A[0],Y=A[1],J=A[2],C=A[3],X=A[4],G=A[5],W=A[6],F=A[7],Z=A[8],U=A[9],$=A[10],E=A[11],K=A[12],I=A[13],V=A[14],H=A[15],D=Q[0],L=Q[1],z=Q[2],M=Q[3],N=Q[4],q=Q[5],w=Q[6],P=Q[7],_=Q[8],j=Q[9],k=Q[10],T=Q[11],S=Q[12],v=Q[13],y=Q[14],h=Q[15];return Math.abs(B-D)<=Y0.EPSILON*Math.max(1,Math.abs(B),Math.abs(D))&&Math.abs(Y-L)<=Y0.EPSILON*Math.max(1,Math.abs(Y),Math.abs(L))&&Math.abs(J-z)<=Y0.EPSILON*Math.max(1,Math.abs(J),Math.abs(z))&&Math.abs(C-M)<=Y0.EPSILON*Math.max(1,Math.abs(C),Math.abs(M))&&Math.abs(X-N)<=Y0.EPSILON*Math.max(1,Math.abs(X),Math.abs(N))&&Math.abs(G-q)<=Y0.EPSILON*Math.max(1,Math.abs(G),Math.abs(q))&&Math.abs(W-w)<=Y0.EPSILON*Math.max(1,Math.abs(W),Math.abs(w))&&Math.abs(F-P)<=Y0.EPSILON*Math.max(1,Math.abs(F),Math.abs(P))&&Math.abs(Z-_)<=Y0.EPSILON*Math.max(1,Math.abs(Z),Math.abs(_))&&Math.abs(U-j)<=Y0.EPSILON*Math.max(1,Math.abs(U),Math.abs(j))&&Math.abs($-k)<=Y0.EPSILON*Math.max(1,Math.abs($),Math.abs(k))&&Math.abs(E-T)<=Y0.EPSILON*Math.max(1,Math.abs(E),Math.abs(T))&&Math.abs(K-S)<=Y0.EPSILON*Math.max(1,Math.abs(K),Math.abs(S))&&Math.abs(I-v)<=Y0.EPSILON*Math.max(1,Math.abs(I),Math.abs(v))&&Math.abs(V-y)<=Y0.EPSILON*Math.max(1,Math.abs(V),Math.abs(y))&&Math.abs(H-h)<=Y0.EPSILON*Math.max(1,Math.abs(H),Math.abs(h))}var el0=sSQ;AkQ.mul=el0;var Ap0=eSQ;AkQ.sub=Ap0});var qt=R((UkQ)=>{function tk(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")tk=function(B){return typeof B};else tk=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return tk(A)}Object.defineProperty(UkQ,"__esModule",{value:!0});UkQ.create=YkQ;UkQ.clone=tp0;UkQ.length=JkQ;UkQ.fromValues=ep0;UkQ.copy=Ai0;UkQ.set=Qi0;UkQ.add=Bi0;UkQ.subtract=CkQ;UkQ.multiply=XkQ;UkQ.divide=GkQ;UkQ.ceil=Yi0;UkQ.floor=Ji0;UkQ.min=Ci0;UkQ.max=Xi0;UkQ.round=Gi0;UkQ.scale=Wi0;UkQ.scaleAndAdd=Fi0;UkQ.distance=WkQ;UkQ.squaredDistance=FkQ;UkQ.squaredLength=ZkQ;UkQ.negate=Zi0;UkQ.inverse=$i0;UkQ.normalize=Ui0;UkQ.dot=$kQ;UkQ.cross=Ei0;UkQ.lerp=Ki0;UkQ.hermite=Vi0;UkQ.bezier=Ii0;UkQ.random=Hi0;UkQ.transformMat4=Di0;UkQ.transformMat3=Ni0;UkQ.transformQuat=Li0;UkQ.rotateX=qi0;UkQ.rotateY=Mi0;UkQ.rotateZ=zi0;UkQ.angle=Ri0;UkQ.zero=wi0;UkQ.str=ji0;UkQ.exactEquals=Oi0;UkQ.equals=Pi0;UkQ.forEach=UkQ.sqrLen=UkQ.len=UkQ.sqrDist=UkQ.dist=UkQ.div=UkQ.mul=UkQ.sub=void 0;var cG=op0(M1());function BkQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(BkQ=function(J){return J?B:Q})(A)}function op0(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||tk(A)!=="object"&&typeof A!=="function")return{default:A};var B=BkQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function YkQ(){var A=new cG.ARRAY_TYPE(3);if(cG.ARRAY_TYPE!=Float32Array)A[0]=0,A[1]=0,A[2]=0;return A}function tp0(A){var Q=new cG.ARRAY_TYPE(3);return Q[0]=A[0],Q[1]=A[1],Q[2]=A[2],Q}function JkQ(A){var Q=A[0],B=A[1],Y=A[2];return Math.hypot(Q,B,Y)}function ep0(A,Q,B){var Y=new cG.ARRAY_TYPE(3);return Y[0]=A,Y[1]=Q,Y[2]=B,Y}function Ai0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A}function Qi0(A,Q,B,Y){return A[0]=Q,A[1]=B,A[2]=Y,A}function Bi0(A,Q,B){return A[0]=Q[0]+B[0],A[1]=Q[1]+B[1],A[2]=Q[2]+B[2],A}function CkQ(A,Q,B){return A[0]=Q[0]-B[0],A[1]=Q[1]-B[1],A[2]=Q[2]-B[2],A}function XkQ(A,Q,B){return A[0]=Q[0]*B[0],A[1]=Q[1]*B[1],A[2]=Q[2]*B[2],A}function GkQ(A,Q,B){return A[0]=Q[0]/B[0],A[1]=Q[1]/B[1],A[2]=Q[2]/B[2],A}function Yi0(A,Q){return A[0]=Math.ceil(Q[0]),A[1]=Math.ceil(Q[1]),A[2]=Math.ceil(Q[2]),A}function Ji0(A,Q){return A[0]=Math.floor(Q[0]),A[1]=Math.floor(Q[1]),A[2]=Math.floor(Q[2]),A}function Ci0(A,Q,B){return A[0]=Math.min(Q[0],B[0]),A[1]=Math.min(Q[1],B[1]),A[2]=Math.min(Q[2],B[2]),A}function Xi0(A,Q,B){return A[0]=Math.max(Q[0],B[0]),A[1]=Math.max(Q[1],B[1]),A[2]=Math.max(Q[2],B[2]),A}function Gi0(A,Q){return A[0]=Math.round(Q[0]),A[1]=Math.round(Q[1]),A[2]=Math.round(Q[2]),A}function Wi0(A,Q,B){return A[0]=Q[0]*B,A[1]=Q[1]*B,A[2]=Q[2]*B,A}function Fi0(A,Q,B,Y){return A[0]=Q[0]+B[0]*Y,A[1]=Q[1]+B[1]*Y,A[2]=Q[2]+B[2]*Y,A}function WkQ(A,Q){var B=Q[0]-A[0],Y=Q[1]-A[1],J=Q[2]-A[2];return Math.hypot(B,Y,J)}function FkQ(A,Q){var B=Q[0]-A[0],Y=Q[1]-A[1],J=Q[2]-A[2];return B*B+Y*Y+J*J}function ZkQ(A){var Q=A[0],B=A[1],Y=A[2];return Q*Q+B*B+Y*Y}function Zi0(A,Q){return A[0]=-Q[0],A[1]=-Q[1],A[2]=-Q[2],A}function $i0(A,Q){return A[0]=1/Q[0],A[1]=1/Q[1],A[2]=1/Q[2],A}function Ui0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=B*B+Y*Y+J*J;if(C>0)C=1/Math.sqrt(C);return A[0]=Q[0]*C,A[1]=Q[1]*C,A[2]=Q[2]*C,A}function $kQ(A,Q){return A[0]*Q[0]+A[1]*Q[1]+A[2]*Q[2]}function Ei0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=B[0],G=B[1],W=B[2];return A[0]=J*W-C*G,A[1]=C*X-Y*W,A[2]=Y*G-J*X,A}function Ki0(A,Q,B,Y){var J=Q[0],C=Q[1],X=Q[2];return A[0]=J+Y*(B[0]-J),A[1]=C+Y*(B[1]-C),A[2]=X+Y*(B[2]-X),A}function Vi0(A,Q,B,Y,J,C){var X=C*C,G=X*(2*C-3)+1,W=X*(C-2)+C,F=X*(C-1),Z=X*(3-2*C);return A[0]=Q[0]*G+B[0]*W+Y[0]*F+J[0]*Z,A[1]=Q[1]*G+B[1]*W+Y[1]*F+J[1]*Z,A[2]=Q[2]*G+B[2]*W+Y[2]*F+J[2]*Z,A}function Ii0(A,Q,B,Y,J,C){var X=1-C,G=X*X,W=C*C,F=G*X,Z=3*C*G,U=3*W*X,$=W*C;return A[0]=Q[0]*F+B[0]*Z+Y[0]*U+J[0]*$,A[1]=Q[1]*F+B[1]*Z+Y[1]*U+J[1]*$,A[2]=Q[2]*F+B[2]*Z+Y[2]*U+J[2]*$,A}function Hi0(A,Q){Q=Q||1;var B=cG.RANDOM()*2*Math.PI,Y=cG.RANDOM()*2-1,J=Math.sqrt(1-Y*Y)*Q;return A[0]=Math.cos(B)*J,A[1]=Math.sin(B)*J,A[2]=Y*Q,A}function Di0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=B[3]*Y+B[7]*J+B[11]*C+B[15];return X=X||1,A[0]=(B[0]*Y+B[4]*J+B[8]*C+B[12])/X,A[1]=(B[1]*Y+B[5]*J+B[9]*C+B[13])/X,A[2]=(B[2]*Y+B[6]*J+B[10]*C+B[14])/X,A}function Ni0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2];return A[0]=Y*B[0]+J*B[3]+C*B[6],A[1]=Y*B[1]+J*B[4]+C*B[7],A[2]=Y*B[2]+J*B[5]+C*B[8],A}function Li0(A,Q,B){var Y=B[0],J=B[1],C=B[2],X=B[3],G=Q[0],W=Q[1],F=Q[2],Z=J*F-C*W,U=C*G-Y*F,$=Y*W-J*G,E=J*$-C*U,K=C*Z-Y*$,I=Y*U-J*Z,V=X*2;return Z*=V,U*=V,$*=V,E*=2,K*=2,I*=2,A[0]=G+Z+E,A[1]=W+U+K,A[2]=F+$+I,A}function qi0(A,Q,B,Y){var J=[],C=[];return J[0]=Q[0]-B[0],J[1]=Q[1]-B[1],J[2]=Q[2]-B[2],C[0]=J[0],C[1]=J[1]*Math.cos(Y)-J[2]*Math.sin(Y),C[2]=J[1]*Math.sin(Y)+J[2]*Math.cos(Y),A[0]=C[0]+B[0],A[1]=C[1]+B[1],A[2]=C[2]+B[2],A}function Mi0(A,Q,B,Y){var J=[],C=[];return J[0]=Q[0]-B[0],J[1]=Q[1]-B[1],J[2]=Q[2]-B[2],C[0]=J[2]*Math.sin(Y)+J[0]*Math.cos(Y),C[1]=J[1],C[2]=J[2]*Math.cos(Y)-J[0]*Math.sin(Y),A[0]=C[0]+B[0],A[1]=C[1]+B[1],A[2]=C[2]+B[2],A}function zi0(A,Q,B,Y){var J=[],C=[];return J[0]=Q[0]-B[0],J[1]=Q[1]-B[1],J[2]=Q[2]-B[2],C[0]=J[0]*Math.cos(Y)-J[1]*Math.sin(Y),C[1]=J[0]*Math.sin(Y)+J[1]*Math.cos(Y),C[2]=J[2],A[0]=C[0]+B[0],A[1]=C[1]+B[1],A[2]=C[2]+B[2],A}function Ri0(A,Q){var B=A[0],Y=A[1],J=A[2],C=Q[0],X=Q[1],G=Q[2],W=Math.sqrt(B*B+Y*Y+J*J),F=Math.sqrt(C*C+X*X+G*G),Z=W*F,U=Z&&$kQ(A,Q)/Z;return Math.acos(Math.min(Math.max(U,-1),1))}function wi0(A){return A[0]=0,A[1]=0,A[2]=0,A}function ji0(A){return"vec3("+A[0]+", "+A[1]+", "+A[2]+")"}function Oi0(A,Q){return A[0]===Q[0]&&A[1]===Q[1]&&A[2]===Q[2]}function Pi0(A,Q){var B=A[0],Y=A[1],J=A[2],C=Q[0],X=Q[1],G=Q[2];return Math.abs(B-C)<=cG.EPSILON*Math.max(1,Math.abs(B),Math.abs(C))&&Math.abs(Y-X)<=cG.EPSILON*Math.max(1,Math.abs(Y),Math.abs(X))&&Math.abs(J-G)<=cG.EPSILON*Math.max(1,Math.abs(J),Math.abs(G))}var Ti0=CkQ;UkQ.sub=Ti0;var Si0=XkQ;UkQ.mul=Si0;var ki0=GkQ;UkQ.div=ki0;var _i0=WkQ;UkQ.dist=_i0;var vi0=FkQ;UkQ.sqrDist=vi0;var yi0=JkQ;UkQ.len=yi0;var gi0=ZkQ;UkQ.sqrLen=gi0;var hi0=function(){var A=YkQ();return function(Q,B,Y,J,C,X){var G,W;if(!B)B=3;if(!Y)Y=0;if(J)W=Math.min(J*B+Y,Q.length);else W=Q.length;for(G=Y;G{function ek(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")ek=function(B){return typeof B};else ek=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return ek(A)}Object.defineProperty(zkQ,"__esModule",{value:!0});zkQ.create=VkQ;zkQ.clone=kn0;zkQ.fromValues=_n0;zkQ.copy=vn0;zkQ.set=yn0;zkQ.add=gn0;zkQ.subtract=IkQ;zkQ.multiply=HkQ;zkQ.divide=DkQ;zkQ.ceil=hn0;zkQ.floor=xn0;zkQ.min=fn0;zkQ.max=bn0;zkQ.round=mn0;zkQ.scale=un0;zkQ.scaleAndAdd=dn0;zkQ.distance=NkQ;zkQ.squaredDistance=LkQ;zkQ.length=qkQ;zkQ.squaredLength=MkQ;zkQ.negate=cn0;zkQ.inverse=ln0;zkQ.normalize=pn0;zkQ.dot=in0;zkQ.cross=nn0;zkQ.lerp=sn0;zkQ.random=rn0;zkQ.transformMat4=an0;zkQ.transformQuat=on0;zkQ.zero=tn0;zkQ.str=en0;zkQ.exactEquals=As0;zkQ.equals=Qs0;zkQ.forEach=zkQ.sqrLen=zkQ.len=zkQ.sqrDist=zkQ.dist=zkQ.div=zkQ.mul=zkQ.sub=void 0;var KC=Sn0(M1());function KkQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(KkQ=function(J){return J?B:Q})(A)}function Sn0(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||ek(A)!=="object"&&typeof A!=="function")return{default:A};var B=KkQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function VkQ(){var A=new KC.ARRAY_TYPE(4);if(KC.ARRAY_TYPE!=Float32Array)A[0]=0,A[1]=0,A[2]=0,A[3]=0;return A}function kn0(A){var Q=new KC.ARRAY_TYPE(4);return Q[0]=A[0],Q[1]=A[1],Q[2]=A[2],Q[3]=A[3],Q}function _n0(A,Q,B,Y){var J=new KC.ARRAY_TYPE(4);return J[0]=A,J[1]=Q,J[2]=B,J[3]=Y,J}function vn0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A[3]=Q[3],A}function yn0(A,Q,B,Y,J){return A[0]=Q,A[1]=B,A[2]=Y,A[3]=J,A}function gn0(A,Q,B){return A[0]=Q[0]+B[0],A[1]=Q[1]+B[1],A[2]=Q[2]+B[2],A[3]=Q[3]+B[3],A}function IkQ(A,Q,B){return A[0]=Q[0]-B[0],A[1]=Q[1]-B[1],A[2]=Q[2]-B[2],A[3]=Q[3]-B[3],A}function HkQ(A,Q,B){return A[0]=Q[0]*B[0],A[1]=Q[1]*B[1],A[2]=Q[2]*B[2],A[3]=Q[3]*B[3],A}function DkQ(A,Q,B){return A[0]=Q[0]/B[0],A[1]=Q[1]/B[1],A[2]=Q[2]/B[2],A[3]=Q[3]/B[3],A}function hn0(A,Q){return A[0]=Math.ceil(Q[0]),A[1]=Math.ceil(Q[1]),A[2]=Math.ceil(Q[2]),A[3]=Math.ceil(Q[3]),A}function xn0(A,Q){return A[0]=Math.floor(Q[0]),A[1]=Math.floor(Q[1]),A[2]=Math.floor(Q[2]),A[3]=Math.floor(Q[3]),A}function fn0(A,Q,B){return A[0]=Math.min(Q[0],B[0]),A[1]=Math.min(Q[1],B[1]),A[2]=Math.min(Q[2],B[2]),A[3]=Math.min(Q[3],B[3]),A}function bn0(A,Q,B){return A[0]=Math.max(Q[0],B[0]),A[1]=Math.max(Q[1],B[1]),A[2]=Math.max(Q[2],B[2]),A[3]=Math.max(Q[3],B[3]),A}function mn0(A,Q){return A[0]=Math.round(Q[0]),A[1]=Math.round(Q[1]),A[2]=Math.round(Q[2]),A[3]=Math.round(Q[3]),A}function un0(A,Q,B){return A[0]=Q[0]*B,A[1]=Q[1]*B,A[2]=Q[2]*B,A[3]=Q[3]*B,A}function dn0(A,Q,B,Y){return A[0]=Q[0]+B[0]*Y,A[1]=Q[1]+B[1]*Y,A[2]=Q[2]+B[2]*Y,A[3]=Q[3]+B[3]*Y,A}function NkQ(A,Q){var B=Q[0]-A[0],Y=Q[1]-A[1],J=Q[2]-A[2],C=Q[3]-A[3];return Math.hypot(B,Y,J,C)}function LkQ(A,Q){var B=Q[0]-A[0],Y=Q[1]-A[1],J=Q[2]-A[2],C=Q[3]-A[3];return B*B+Y*Y+J*J+C*C}function qkQ(A){var Q=A[0],B=A[1],Y=A[2],J=A[3];return Math.hypot(Q,B,Y,J)}function MkQ(A){var Q=A[0],B=A[1],Y=A[2],J=A[3];return Q*Q+B*B+Y*Y+J*J}function cn0(A,Q){return A[0]=-Q[0],A[1]=-Q[1],A[2]=-Q[2],A[3]=-Q[3],A}function ln0(A,Q){return A[0]=1/Q[0],A[1]=1/Q[1],A[2]=1/Q[2],A[3]=1/Q[3],A}function pn0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=B*B+Y*Y+J*J+C*C;if(X>0)X=1/Math.sqrt(X);return A[0]=B*X,A[1]=Y*X,A[2]=J*X,A[3]=C*X,A}function in0(A,Q){return A[0]*Q[0]+A[1]*Q[1]+A[2]*Q[2]+A[3]*Q[3]}function nn0(A,Q,B,Y){var J=B[0]*Y[1]-B[1]*Y[0],C=B[0]*Y[2]-B[2]*Y[0],X=B[0]*Y[3]-B[3]*Y[0],G=B[1]*Y[2]-B[2]*Y[1],W=B[1]*Y[3]-B[3]*Y[1],F=B[2]*Y[3]-B[3]*Y[2],Z=Q[0],U=Q[1],$=Q[2],E=Q[3];return A[0]=U*F-$*W+E*G,A[1]=-(Z*F)+$*X-E*C,A[2]=Z*W-U*X+E*J,A[3]=-(Z*G)+U*C-$*J,A}function sn0(A,Q,B,Y){var J=Q[0],C=Q[1],X=Q[2],G=Q[3];return A[0]=J+Y*(B[0]-J),A[1]=C+Y*(B[1]-C),A[2]=X+Y*(B[2]-X),A[3]=G+Y*(B[3]-G),A}function rn0(A,Q){Q=Q||1;var B,Y,J,C,X,G;do B=KC.RANDOM()*2-1,Y=KC.RANDOM()*2-1,X=B*B+Y*Y;while(X>=1);do J=KC.RANDOM()*2-1,C=KC.RANDOM()*2-1,G=J*J+C*C;while(G>=1);var W=Math.sqrt((1-X)/G);return A[0]=Q*B,A[1]=Q*Y,A[2]=Q*J*W,A[3]=Q*C*W,A}function an0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3];return A[0]=B[0]*Y+B[4]*J+B[8]*C+B[12]*X,A[1]=B[1]*Y+B[5]*J+B[9]*C+B[13]*X,A[2]=B[2]*Y+B[6]*J+B[10]*C+B[14]*X,A[3]=B[3]*Y+B[7]*J+B[11]*C+B[15]*X,A}function on0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=B[0],G=B[1],W=B[2],F=B[3],Z=F*Y+G*C-W*J,U=F*J+W*Y-X*C,$=F*C+X*J-G*Y,E=-X*Y-G*J-W*C;return A[0]=Z*F+E*-X+U*-W-$*-G,A[1]=U*F+E*-G+$*-X-Z*-W,A[2]=$*F+E*-W+Z*-G-U*-X,A[3]=Q[3],A}function tn0(A){return A[0]=0,A[1]=0,A[2]=0,A[3]=0,A}function en0(A){return"vec4("+A[0]+", "+A[1]+", "+A[2]+", "+A[3]+")"}function As0(A,Q){return A[0]===Q[0]&&A[1]===Q[1]&&A[2]===Q[2]&&A[3]===Q[3]}function Qs0(A,Q){var B=A[0],Y=A[1],J=A[2],C=A[3],X=Q[0],G=Q[1],W=Q[2],F=Q[3];return Math.abs(B-X)<=KC.EPSILON*Math.max(1,Math.abs(B),Math.abs(X))&&Math.abs(Y-G)<=KC.EPSILON*Math.max(1,Math.abs(Y),Math.abs(G))&&Math.abs(J-W)<=KC.EPSILON*Math.max(1,Math.abs(J),Math.abs(W))&&Math.abs(C-F)<=KC.EPSILON*Math.max(1,Math.abs(C),Math.abs(F))}var Bs0=IkQ;zkQ.sub=Bs0;var Ys0=HkQ;zkQ.mul=Ys0;var Js0=DkQ;zkQ.div=Js0;var Cs0=NkQ;zkQ.dist=Cs0;var Xs0=LkQ;zkQ.sqrDist=Xs0;var Gs0=qkQ;zkQ.len=Gs0;var Ws0=MkQ;zkQ.sqrLen=Ws0;var Fs0=function(){var A=VkQ();return function(Q,B,Y,J,C,X){var G,W;if(!B)B=4;if(!Y)Y=0;if(J)W=Math.min(J*B+Y,Q.length);else W=Q.length;for(G=Y;G{function A_(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")A_=function(B){return typeof B};else A_=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return A_(A)}Object.defineProperty(gkQ,"__esModule",{value:!0});gkQ.create=zt;gkQ.identity=os0;gkQ.setAxisAngle=jkQ;gkQ.getAxisAngle=ts0;gkQ.getAngle=es0;gkQ.multiply=OkQ;gkQ.rotateX=Ar0;gkQ.rotateY=Qr0;gkQ.rotateZ=Br0;gkQ.calculateW=Yr0;gkQ.exp=PkQ;gkQ.ln=TkQ;gkQ.pow=Jr0;gkQ.slerp=Q_;gkQ.random=Cr0;gkQ.invert=Xr0;gkQ.conjugate=Gr0;gkQ.fromMat3=SkQ;gkQ.fromEuler=Wr0;gkQ.str=Fr0;gkQ.setAxes=gkQ.sqlerp=gkQ.rotationTo=gkQ.equals=gkQ.exactEquals=gkQ.normalize=gkQ.sqrLen=gkQ.squaredLength=gkQ.len=gkQ.length=gkQ.lerp=gkQ.dot=gkQ.scale=gkQ.mul=gkQ.add=gkQ.set=gkQ.copy=gkQ.fromValues=gkQ.clone=void 0;var K4=B_(M1()),as0=B_(Nt()),lG=B_(qt()),e8=B_(Mt());function wkQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(wkQ=function(J){return J?B:Q})(A)}function B_(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||A_(A)!=="object"&&typeof A!=="function")return{default:A};var B=wkQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function zt(){var A=new K4.ARRAY_TYPE(4);if(K4.ARRAY_TYPE!=Float32Array)A[0]=0,A[1]=0,A[2]=0;return A[3]=1,A}function os0(A){return A[0]=0,A[1]=0,A[2]=0,A[3]=1,A}function jkQ(A,Q,B){B=B*0.5;var Y=Math.sin(B);return A[0]=Y*Q[0],A[1]=Y*Q[1],A[2]=Y*Q[2],A[3]=Math.cos(B),A}function ts0(A,Q){var B=Math.acos(Q[3])*2,Y=Math.sin(B/2);if(Y>K4.EPSILON)A[0]=Q[0]/Y,A[1]=Q[1]/Y,A[2]=Q[2]/Y;else A[0]=1,A[1]=0,A[2]=0;return B}function es0(A,Q){var B=_kQ(A,Q);return Math.acos(2*B*B-1)}function OkQ(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=B[0],W=B[1],F=B[2],Z=B[3];return A[0]=Y*Z+X*G+J*F-C*W,A[1]=J*Z+X*W+C*G-Y*F,A[2]=C*Z+X*F+Y*W-J*G,A[3]=X*Z-Y*G-J*W-C*F,A}function Ar0(A,Q,B){B*=0.5;var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Math.sin(B),W=Math.cos(B);return A[0]=Y*W+X*G,A[1]=J*W+C*G,A[2]=C*W-J*G,A[3]=X*W-Y*G,A}function Qr0(A,Q,B){B*=0.5;var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Math.sin(B),W=Math.cos(B);return A[0]=Y*W-C*G,A[1]=J*W+X*G,A[2]=C*W+Y*G,A[3]=X*W-J*G,A}function Br0(A,Q,B){B*=0.5;var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Math.sin(B),W=Math.cos(B);return A[0]=Y*W+J*G,A[1]=J*W-Y*G,A[2]=C*W+X*G,A[3]=X*W-C*G,A}function Yr0(A,Q){var B=Q[0],Y=Q[1],J=Q[2];return A[0]=B,A[1]=Y,A[2]=J,A[3]=Math.sqrt(Math.abs(1-B*B-Y*Y-J*J)),A}function PkQ(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Math.sqrt(B*B+Y*Y+J*J),G=Math.exp(C),W=X>0?G*Math.sin(X)/X:0;return A[0]=B*W,A[1]=Y*W,A[2]=J*W,A[3]=G*Math.cos(X),A}function TkQ(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Math.sqrt(B*B+Y*Y+J*J),G=X>0?Math.atan2(X,C)/X:0;return A[0]=B*G,A[1]=Y*G,A[2]=J*G,A[3]=0.5*Math.log(B*B+Y*Y+J*J+C*C),A}function Jr0(A,Q,B){return TkQ(A,Q),kkQ(A,A,B),PkQ(A,A),A}function Q_(A,Q,B,Y){var J=Q[0],C=Q[1],X=Q[2],G=Q[3],W=B[0],F=B[1],Z=B[2],U=B[3],$,E,K,I,V;if(E=J*W+C*F+X*Z+G*U,E<0)E=-E,W=-W,F=-F,Z=-Z,U=-U;if(1-E>K4.EPSILON)$=Math.acos(E),K=Math.sin($),I=Math.sin((1-Y)*$)/K,V=Math.sin(Y*$)/K;else I=1-Y,V=Y;return A[0]=I*J+V*W,A[1]=I*C+V*F,A[2]=I*X+V*Z,A[3]=I*G+V*U,A}function Cr0(A){var Q=K4.RANDOM(),B=K4.RANDOM(),Y=K4.RANDOM(),J=Math.sqrt(1-Q),C=Math.sqrt(Q);return A[0]=J*Math.sin(2*Math.PI*B),A[1]=J*Math.cos(2*Math.PI*B),A[2]=C*Math.sin(2*Math.PI*Y),A[3]=C*Math.cos(2*Math.PI*Y),A}function Xr0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=B*B+Y*Y+J*J+C*C,G=X?1/X:0;return A[0]=-B*G,A[1]=-Y*G,A[2]=-J*G,A[3]=C*G,A}function Gr0(A,Q){return A[0]=-Q[0],A[1]=-Q[1],A[2]=-Q[2],A[3]=Q[3],A}function SkQ(A,Q){var B=Q[0]+Q[4]+Q[8],Y;if(B>0)Y=Math.sqrt(B+1),A[3]=0.5*Y,Y=0.5/Y,A[0]=(Q[5]-Q[7])*Y,A[1]=(Q[6]-Q[2])*Y,A[2]=(Q[1]-Q[3])*Y;else{var J=0;if(Q[4]>Q[0])J=1;if(Q[8]>Q[J*3+J])J=2;var C=(J+1)%3,X=(J+2)%3;Y=Math.sqrt(Q[J*3+J]-Q[C*3+C]-Q[X*3+X]+1),A[J]=0.5*Y,Y=0.5/Y,A[3]=(Q[C*3+X]-Q[X*3+C])*Y,A[C]=(Q[C*3+J]+Q[J*3+C])*Y,A[X]=(Q[X*3+J]+Q[J*3+X])*Y}return A}function Wr0(A,Q,B,Y){var J=0.5*Math.PI/180;Q*=J,B*=J,Y*=J;var C=Math.sin(Q),X=Math.cos(Q),G=Math.sin(B),W=Math.cos(B),F=Math.sin(Y),Z=Math.cos(Y);return A[0]=C*W*Z-X*G*F,A[1]=X*G*Z+C*W*F,A[2]=X*W*F-C*G*Z,A[3]=X*W*Z+C*G*F,A}function Fr0(A){return"quat("+A[0]+", "+A[1]+", "+A[2]+", "+A[3]+")"}var Zr0=e8.clone;gkQ.clone=Zr0;var $r0=e8.fromValues;gkQ.fromValues=$r0;var Ur0=e8.copy;gkQ.copy=Ur0;var Er0=e8.set;gkQ.set=Er0;var Kr0=e8.add;gkQ.add=Kr0;var Vr0=OkQ;gkQ.mul=Vr0;var kkQ=e8.scale;gkQ.scale=kkQ;var _kQ=e8.dot;gkQ.dot=_kQ;var Ir0=e8.lerp;gkQ.lerp=Ir0;var vkQ=e8.length;gkQ.length=vkQ;var Hr0=vkQ;gkQ.len=Hr0;var ykQ=e8.squaredLength;gkQ.squaredLength=ykQ;var Dr0=ykQ;gkQ.sqrLen=Dr0;var Rt=e8.normalize;gkQ.normalize=Rt;var Nr0=e8.exactEquals;gkQ.exactEquals=Nr0;var Lr0=e8.equals;gkQ.equals=Lr0;var qr0=function(){var A=lG.create(),Q=lG.fromValues(1,0,0),B=lG.fromValues(0,1,0);return function(Y,J,C){var X=lG.dot(J,C);if(X<-0.999999){if(lG.cross(A,Q,J),lG.len(A)<0.000001)lG.cross(A,B,J);return lG.normalize(A,A),jkQ(Y,A,Math.PI),Y}else if(X>0.999999)return Y[0]=0,Y[1]=0,Y[2]=0,Y[3]=1,Y;else return lG.cross(A,J,C),Y[0]=A[0],Y[1]=A[1],Y[2]=A[2],Y[3]=1+X,Rt(Y,Y)}}();gkQ.rotationTo=qr0;var Mr0=function(){var A=zt(),Q=zt();return function(B,Y,J,C,X,G){return Q_(A,Y,X,G),Q_(Q,J,C,G),Q_(B,A,Q,2*G*(1-G)),B}}();gkQ.sqlerp=Mr0;var zr0=function(){var A=as0.create();return function(Q,B,Y,J){return A[0]=Y[0],A[3]=Y[1],A[6]=Y[2],A[1]=J[0],A[4]=J[1],A[7]=J[2],A[2]=-B[0],A[5]=-B[1],A[8]=-B[2],Rt(Q,SkQ(Q,A))}}();gkQ.setAxes=zr0});var ikQ=R((lkQ)=>{function Y_(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")Y_=function(B){return typeof B};else Y_=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return Y_(A)}Object.defineProperty(lkQ,"__esModule",{value:!0});lkQ.create=Wa0;lkQ.clone=Fa0;lkQ.fromValues=Za0;lkQ.fromRotationTranslationValues=$a0;lkQ.fromRotationTranslation=bkQ;lkQ.fromTranslation=Ua0;lkQ.fromRotation=Ea0;lkQ.fromMat4=Ka0;lkQ.copy=mkQ;lkQ.identity=Va0;lkQ.set=Ia0;lkQ.getDual=Da0;lkQ.setDual=La0;lkQ.getTranslation=qa0;lkQ.translate=Ma0;lkQ.rotateX=za0;lkQ.rotateY=Ra0;lkQ.rotateZ=wa0;lkQ.rotateByQuatAppend=ja0;lkQ.rotateByQuatPrepend=Oa0;lkQ.rotateAroundAxis=Pa0;lkQ.add=Ta0;lkQ.multiply=ukQ;lkQ.scale=ka0;lkQ.lerp=_a0;lkQ.invert=va0;lkQ.conjugate=ya0;lkQ.normalize=xa0;lkQ.str=fa0;lkQ.exactEquals=ba0;lkQ.equals=ma0;lkQ.sqrLen=lkQ.squaredLength=lkQ.len=lkQ.length=lkQ.dot=lkQ.mul=lkQ.setReal=lkQ.getReal=void 0;var j9=jt(M1()),pG=jt(wt()),xkQ=jt(Lt());function fkQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(fkQ=function(J){return J?B:Q})(A)}function jt(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||Y_(A)!=="object"&&typeof A!=="function")return{default:A};var B=fkQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function Wa0(){var A=new j9.ARRAY_TYPE(8);if(j9.ARRAY_TYPE!=Float32Array)A[0]=0,A[1]=0,A[2]=0,A[4]=0,A[5]=0,A[6]=0,A[7]=0;return A[3]=1,A}function Fa0(A){var Q=new j9.ARRAY_TYPE(8);return Q[0]=A[0],Q[1]=A[1],Q[2]=A[2],Q[3]=A[3],Q[4]=A[4],Q[5]=A[5],Q[6]=A[6],Q[7]=A[7],Q}function Za0(A,Q,B,Y,J,C,X,G){var W=new j9.ARRAY_TYPE(8);return W[0]=A,W[1]=Q,W[2]=B,W[3]=Y,W[4]=J,W[5]=C,W[6]=X,W[7]=G,W}function $a0(A,Q,B,Y,J,C,X){var G=new j9.ARRAY_TYPE(8);G[0]=A,G[1]=Q,G[2]=B,G[3]=Y;var W=J*0.5,F=C*0.5,Z=X*0.5;return G[4]=W*Y+F*B-Z*Q,G[5]=F*Y+Z*A-W*B,G[6]=Z*Y+W*Q-F*A,G[7]=-W*A-F*Q-Z*B,G}function bkQ(A,Q,B){var Y=B[0]*0.5,J=B[1]*0.5,C=B[2]*0.5,X=Q[0],G=Q[1],W=Q[2],F=Q[3];return A[0]=X,A[1]=G,A[2]=W,A[3]=F,A[4]=Y*F+J*W-C*G,A[5]=J*F+C*X-Y*W,A[6]=C*F+Y*G-J*X,A[7]=-Y*X-J*G-C*W,A}function Ua0(A,Q){return A[0]=0,A[1]=0,A[2]=0,A[3]=1,A[4]=Q[0]*0.5,A[5]=Q[1]*0.5,A[6]=Q[2]*0.5,A[7]=0,A}function Ea0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A[3]=Q[3],A[4]=0,A[5]=0,A[6]=0,A[7]=0,A}function Ka0(A,Q){var B=pG.create();xkQ.getRotation(B,Q);var Y=new j9.ARRAY_TYPE(3);return xkQ.getTranslation(Y,Q),bkQ(A,B,Y),A}function mkQ(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A[3]=Q[3],A[4]=Q[4],A[5]=Q[5],A[6]=Q[6],A[7]=Q[7],A}function Va0(A){return A[0]=0,A[1]=0,A[2]=0,A[3]=1,A[4]=0,A[5]=0,A[6]=0,A[7]=0,A}function Ia0(A,Q,B,Y,J,C,X,G,W){return A[0]=Q,A[1]=B,A[2]=Y,A[3]=J,A[4]=C,A[5]=X,A[6]=G,A[7]=W,A}var Ha0=pG.copy;lkQ.getReal=Ha0;function Da0(A,Q){return A[0]=Q[4],A[1]=Q[5],A[2]=Q[6],A[3]=Q[7],A}var Na0=pG.copy;lkQ.setReal=Na0;function La0(A,Q){return A[4]=Q[0],A[5]=Q[1],A[6]=Q[2],A[7]=Q[3],A}function qa0(A,Q){var B=Q[4],Y=Q[5],J=Q[6],C=Q[7],X=-Q[0],G=-Q[1],W=-Q[2],F=Q[3];return A[0]=(B*F+C*X+Y*W-J*G)*2,A[1]=(Y*F+C*G+J*X-B*W)*2,A[2]=(J*F+C*W+B*G-Y*X)*2,A}function Ma0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=B[0]*0.5,W=B[1]*0.5,F=B[2]*0.5,Z=Q[4],U=Q[5],$=Q[6],E=Q[7];return A[0]=Y,A[1]=J,A[2]=C,A[3]=X,A[4]=X*G+J*F-C*W+Z,A[5]=X*W+C*G-Y*F+U,A[6]=X*F+Y*W-J*G+$,A[7]=-Y*G-J*W-C*F+E,A}function za0(A,Q,B){var Y=-Q[0],J=-Q[1],C=-Q[2],X=Q[3],G=Q[4],W=Q[5],F=Q[6],Z=Q[7],U=G*X+Z*Y+W*C-F*J,$=W*X+Z*J+F*Y-G*C,E=F*X+Z*C+G*J-W*Y,K=Z*X-G*Y-W*J-F*C;return pG.rotateX(A,Q,B),Y=A[0],J=A[1],C=A[2],X=A[3],A[4]=U*X+K*Y+$*C-E*J,A[5]=$*X+K*J+E*Y-U*C,A[6]=E*X+K*C+U*J-$*Y,A[7]=K*X-U*Y-$*J-E*C,A}function Ra0(A,Q,B){var Y=-Q[0],J=-Q[1],C=-Q[2],X=Q[3],G=Q[4],W=Q[5],F=Q[6],Z=Q[7],U=G*X+Z*Y+W*C-F*J,$=W*X+Z*J+F*Y-G*C,E=F*X+Z*C+G*J-W*Y,K=Z*X-G*Y-W*J-F*C;return pG.rotateY(A,Q,B),Y=A[0],J=A[1],C=A[2],X=A[3],A[4]=U*X+K*Y+$*C-E*J,A[5]=$*X+K*J+E*Y-U*C,A[6]=E*X+K*C+U*J-$*Y,A[7]=K*X-U*Y-$*J-E*C,A}function wa0(A,Q,B){var Y=-Q[0],J=-Q[1],C=-Q[2],X=Q[3],G=Q[4],W=Q[5],F=Q[6],Z=Q[7],U=G*X+Z*Y+W*C-F*J,$=W*X+Z*J+F*Y-G*C,E=F*X+Z*C+G*J-W*Y,K=Z*X-G*Y-W*J-F*C;return pG.rotateZ(A,Q,B),Y=A[0],J=A[1],C=A[2],X=A[3],A[4]=U*X+K*Y+$*C-E*J,A[5]=$*X+K*J+E*Y-U*C,A[6]=E*X+K*C+U*J-$*Y,A[7]=K*X-U*Y-$*J-E*C,A}function ja0(A,Q,B){var Y=B[0],J=B[1],C=B[2],X=B[3],G=Q[0],W=Q[1],F=Q[2],Z=Q[3];return A[0]=G*X+Z*Y+W*C-F*J,A[1]=W*X+Z*J+F*Y-G*C,A[2]=F*X+Z*C+G*J-W*Y,A[3]=Z*X-G*Y-W*J-F*C,G=Q[4],W=Q[5],F=Q[6],Z=Q[7],A[4]=G*X+Z*Y+W*C-F*J,A[5]=W*X+Z*J+F*Y-G*C,A[6]=F*X+Z*C+G*J-W*Y,A[7]=Z*X-G*Y-W*J-F*C,A}function Oa0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=B[0],W=B[1],F=B[2],Z=B[3];return A[0]=Y*Z+X*G+J*F-C*W,A[1]=J*Z+X*W+C*G-Y*F,A[2]=C*Z+X*F+Y*W-J*G,A[3]=X*Z-Y*G-J*W-C*F,G=B[4],W=B[5],F=B[6],Z=B[7],A[4]=Y*Z+X*G+J*F-C*W,A[5]=J*Z+X*W+C*G-Y*F,A[6]=C*Z+X*F+Y*W-J*G,A[7]=X*Z-Y*G-J*W-C*F,A}function Pa0(A,Q,B,Y){if(Math.abs(Y)0){B=Math.sqrt(B);var Y=Q[0]/B,J=Q[1]/B,C=Q[2]/B,X=Q[3]/B,G=Q[4],W=Q[5],F=Q[6],Z=Q[7],U=Y*G+J*W+C*F+X*Z;A[0]=Y,A[1]=J,A[2]=C,A[3]=X,A[4]=(G-Y*U)/B,A[5]=(W-J*U)/B,A[6]=(F-C*U)/B,A[7]=(Z-X*U)/B}return A}function fa0(A){return"quat2("+A[0]+", "+A[1]+", "+A[2]+", "+A[3]+", "+A[4]+", "+A[5]+", "+A[6]+", "+A[7]+")"}function ba0(A,Q){return A[0]===Q[0]&&A[1]===Q[1]&&A[2]===Q[2]&&A[3]===Q[3]&&A[4]===Q[4]&&A[5]===Q[5]&&A[6]===Q[6]&&A[7]===Q[7]}function ma0(A,Q){var B=A[0],Y=A[1],J=A[2],C=A[3],X=A[4],G=A[5],W=A[6],F=A[7],Z=Q[0],U=Q[1],$=Q[2],E=Q[3],K=Q[4],I=Q[5],V=Q[6],H=Q[7];return Math.abs(B-Z)<=j9.EPSILON*Math.max(1,Math.abs(B),Math.abs(Z))&&Math.abs(Y-U)<=j9.EPSILON*Math.max(1,Math.abs(Y),Math.abs(U))&&Math.abs(J-$)<=j9.EPSILON*Math.max(1,Math.abs(J),Math.abs($))&&Math.abs(C-E)<=j9.EPSILON*Math.max(1,Math.abs(C),Math.abs(E))&&Math.abs(X-K)<=j9.EPSILON*Math.max(1,Math.abs(X),Math.abs(K))&&Math.abs(G-I)<=j9.EPSILON*Math.max(1,Math.abs(G),Math.abs(I))&&Math.abs(W-V)<=j9.EPSILON*Math.max(1,Math.abs(W),Math.abs(V))&&Math.abs(F-H)<=j9.EPSILON*Math.max(1,Math.abs(F),Math.abs(H))}});var J_Q=R((B_Q)=>{function C_(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")C_=function(B){return typeof B};else C_=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return C_(A)}Object.defineProperty(B_Q,"__esModule",{value:!0});B_Q.create=skQ;B_Q.clone=jo0;B_Q.fromValues=Oo0;B_Q.copy=Po0;B_Q.set=To0;B_Q.add=So0;B_Q.subtract=rkQ;B_Q.multiply=akQ;B_Q.divide=okQ;B_Q.ceil=ko0;B_Q.floor=_o0;B_Q.min=vo0;B_Q.max=yo0;B_Q.round=go0;B_Q.scale=ho0;B_Q.scaleAndAdd=xo0;B_Q.distance=tkQ;B_Q.squaredDistance=ekQ;B_Q.length=A_Q;B_Q.squaredLength=Q_Q;B_Q.negate=fo0;B_Q.inverse=bo0;B_Q.normalize=mo0;B_Q.dot=uo0;B_Q.cross=do0;B_Q.lerp=co0;B_Q.random=lo0;B_Q.transformMat2=po0;B_Q.transformMat2d=io0;B_Q.transformMat3=no0;B_Q.transformMat4=so0;B_Q.rotate=ro0;B_Q.angle=ao0;B_Q.zero=oo0;B_Q.str=to0;B_Q.exactEquals=eo0;B_Q.equals=At0;B_Q.forEach=B_Q.sqrLen=B_Q.sqrDist=B_Q.dist=B_Q.div=B_Q.mul=B_Q.sub=B_Q.len=void 0;var V4=wo0(M1());function nkQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(nkQ=function(J){return J?B:Q})(A)}function wo0(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||C_(A)!=="object"&&typeof A!=="function")return{default:A};var B=nkQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function skQ(){var A=new V4.ARRAY_TYPE(2);if(V4.ARRAY_TYPE!=Float32Array)A[0]=0,A[1]=0;return A}function jo0(A){var Q=new V4.ARRAY_TYPE(2);return Q[0]=A[0],Q[1]=A[1],Q}function Oo0(A,Q){var B=new V4.ARRAY_TYPE(2);return B[0]=A,B[1]=Q,B}function Po0(A,Q){return A[0]=Q[0],A[1]=Q[1],A}function To0(A,Q,B){return A[0]=Q,A[1]=B,A}function So0(A,Q,B){return A[0]=Q[0]+B[0],A[1]=Q[1]+B[1],A}function rkQ(A,Q,B){return A[0]=Q[0]-B[0],A[1]=Q[1]-B[1],A}function akQ(A,Q,B){return A[0]=Q[0]*B[0],A[1]=Q[1]*B[1],A}function okQ(A,Q,B){return A[0]=Q[0]/B[0],A[1]=Q[1]/B[1],A}function ko0(A,Q){return A[0]=Math.ceil(Q[0]),A[1]=Math.ceil(Q[1]),A}function _o0(A,Q){return A[0]=Math.floor(Q[0]),A[1]=Math.floor(Q[1]),A}function vo0(A,Q,B){return A[0]=Math.min(Q[0],B[0]),A[1]=Math.min(Q[1],B[1]),A}function yo0(A,Q,B){return A[0]=Math.max(Q[0],B[0]),A[1]=Math.max(Q[1],B[1]),A}function go0(A,Q){return A[0]=Math.round(Q[0]),A[1]=Math.round(Q[1]),A}function ho0(A,Q,B){return A[0]=Q[0]*B,A[1]=Q[1]*B,A}function xo0(A,Q,B,Y){return A[0]=Q[0]+B[0]*Y,A[1]=Q[1]+B[1]*Y,A}function tkQ(A,Q){var B=Q[0]-A[0],Y=Q[1]-A[1];return Math.hypot(B,Y)}function ekQ(A,Q){var B=Q[0]-A[0],Y=Q[1]-A[1];return B*B+Y*Y}function A_Q(A){var Q=A[0],B=A[1];return Math.hypot(Q,B)}function Q_Q(A){var Q=A[0],B=A[1];return Q*Q+B*B}function fo0(A,Q){return A[0]=-Q[0],A[1]=-Q[1],A}function bo0(A,Q){return A[0]=1/Q[0],A[1]=1/Q[1],A}function mo0(A,Q){var B=Q[0],Y=Q[1],J=B*B+Y*Y;if(J>0)J=1/Math.sqrt(J);return A[0]=Q[0]*J,A[1]=Q[1]*J,A}function uo0(A,Q){return A[0]*Q[0]+A[1]*Q[1]}function do0(A,Q,B){var Y=Q[0]*B[1]-Q[1]*B[0];return A[0]=A[1]=0,A[2]=Y,A}function co0(A,Q,B,Y){var J=Q[0],C=Q[1];return A[0]=J+Y*(B[0]-J),A[1]=C+Y*(B[1]-C),A}function lo0(A,Q){Q=Q||1;var B=V4.RANDOM()*2*Math.PI;return A[0]=Math.cos(B)*Q,A[1]=Math.sin(B)*Q,A}function po0(A,Q,B){var Y=Q[0],J=Q[1];return A[0]=B[0]*Y+B[2]*J,A[1]=B[1]*Y+B[3]*J,A}function io0(A,Q,B){var Y=Q[0],J=Q[1];return A[0]=B[0]*Y+B[2]*J+B[4],A[1]=B[1]*Y+B[3]*J+B[5],A}function no0(A,Q,B){var Y=Q[0],J=Q[1];return A[0]=B[0]*Y+B[3]*J+B[6],A[1]=B[1]*Y+B[4]*J+B[7],A}function so0(A,Q,B){var Y=Q[0],J=Q[1];return A[0]=B[0]*Y+B[4]*J+B[12],A[1]=B[1]*Y+B[5]*J+B[13],A}function ro0(A,Q,B,Y){var J=Q[0]-B[0],C=Q[1]-B[1],X=Math.sin(Y),G=Math.cos(Y);return A[0]=J*G-C*X+B[0],A[1]=J*X+C*G+B[1],A}function ao0(A,Q){var B=A[0],Y=A[1],J=Q[0],C=Q[1],X=Math.sqrt(B*B+Y*Y)*Math.sqrt(J*J+C*C),G=X&&(B*J+Y*C)/X;return Math.acos(Math.min(Math.max(G,-1),1))}function oo0(A){return A[0]=0,A[1]=0,A}function to0(A){return"vec2("+A[0]+", "+A[1]+")"}function eo0(A,Q){return A[0]===Q[0]&&A[1]===Q[1]}function At0(A,Q){var B=A[0],Y=A[1],J=Q[0],C=Q[1];return Math.abs(B-J)<=V4.EPSILON*Math.max(1,Math.abs(B),Math.abs(J))&&Math.abs(Y-C)<=V4.EPSILON*Math.max(1,Math.abs(Y),Math.abs(C))}var Qt0=A_Q;B_Q.len=Qt0;var Bt0=rkQ;B_Q.sub=Bt0;var Yt0=akQ;B_Q.mul=Yt0;var Jt0=okQ;B_Q.div=Jt0;var Ct0=tkQ;B_Q.dist=Ct0;var Xt0=ekQ;B_Q.sqrDist=Xt0;var Gt0=Q_Q;B_Q.sqrLen=Gt0;var Wt0=function(){var A=skQ();return function(Q,B,Y,J,C,X){var G,W;if(!B)B=2;if(!Y)Y=0;if(J)W=Math.min(J*B+Y,Q.length);else W=Q.length;for(G=Y;G{function X_(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")X_=function(B){return typeof B};else X_=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return X_(A)}Object.defineProperty(X_Q,"__esModule",{value:!0});X_Q.vec4=X_Q.vec3=X_Q.vec2=X_Q.quat2=X_Q.quat=X_Q.mat4=X_Q.mat3=X_Q.mat2d=X_Q.mat2=X_Q.glMatrix=void 0;var et0=bX(M1());X_Q.glMatrix=et0;var Ae0=bX(ySQ());X_Q.mat2=Ae0;var Qe0=bX(mSQ());X_Q.mat2d=Qe0;var Be0=bX(Nt());X_Q.mat3=Be0;var Ye0=bX(Lt());X_Q.mat4=Ye0;var Je0=bX(wt());X_Q.quat=Je0;var Ce0=bX(ikQ());X_Q.quat2=Ce0;var Xe0=bX(J_Q());X_Q.vec2=Xe0;var Ge0=bX(qt());X_Q.vec3=Ge0;var We0=bX(Mt());X_Q.vec4=We0;function C_Q(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(C_Q=function(J){return J?B:Q})(A)}function bX(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||X_(A)!=="object"&&typeof A!=="function")return{default:A};var B=C_Q(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}});var Z_Q=R((G_,F_Q)=>{(function(A,Q){typeof G_==="object"&&typeof F_Q<"u"?Q(G_):typeof define==="function"&&define.amd?define(["exports"],Q):(A=typeof globalThis<"u"?globalThis:A||self,Q(A.heap={}))})(G_,function(A){var Q=function($,E,K,I){function V(H){return H instanceof K?H:new K(function(D){D(H)})}return new(K||(K=Promise))(function(H,D){function L(N){try{M(I.next(N))}catch(q){D(q)}}function z(N){try{M(I.throw(N))}catch(q){D(q)}}function M(N){N.done?H(N.value):V(N.value).then(L,z)}M((I=I.apply($,E||[])).next())})},B=function($,E){var K={label:0,sent:function(){if(H[0]&1)throw H[1];return H[1]},trys:[],ops:[]},I,V,H,D=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return D.next=L(0),D.throw=L(1),D.return=L(2),typeof Symbol==="function"&&(D[Symbol.iterator]=function(){return this}),D;function L(M){return function(N){return z([M,N])}}function z(M){if(I)throw TypeError("Generator is already executing.");while(D&&(D=0,M[0]&&(K=0)),K)try{if(I=1,V&&(H=M[0]&2?V.return:M[0]?V.throw||((H=V.return)&&H.call(V),0):V.next)&&!(H=H.call(V,M[1])).done)return H;if(V=0,H)M=[M[0]&2,H.value];switch(M[0]){case 0:case 1:H=M;break;case 4:return K.label++,{value:M[1],done:!1};case 5:K.label++,V=M[1],M=[0];continue;case 7:M=K.ops.pop(),K.trys.pop();continue;default:if((H=K.trys,!(H=H.length>0&&H[H.length-1]))&&(M[0]===6||M[0]===2)){K=0;continue}if(M[0]===3&&(!H||M[1]>H[0]&&M[1]0)&&!(V=I.next()).done)H.push(V.value)}catch(L){D={error:L}}finally{try{if(V&&!V.done&&(K=I.return))K.call(I)}finally{if(D)throw D.error}}return H},J=function($,E,K){if(K||arguments.length===2){for(var I=0,V=E.length,H;I=$.length)$=void 0;return{value:$&&$[I++],done:!$}}};throw TypeError(E?"Object is not iterable.":"Symbol.iterator is not defined.")},X=function(){function $(E){if(E===void 0)E=$.minComparator;var K=this;this.compare=E,this.heapArray=[],this._limit=0,this.offer=this.add,this.element=this.peek,this.poll=this.pop,this._invertedCompare=function(I,V){return K.compare(I,V).then(function(H){return-1*H})}}return $.getChildrenIndexOf=function(E){return[E*2+1,E*2+2]},$.getParentIndexOf=function(E){if(E<=0)return-1;var K=E%2?1:2;return Math.floor((E-K)/2)},$.getSiblingIndexOf=function(E){if(E<=0)return-1;var K=E%2?1:-1;return E+K},$.minComparator=function(E,K){return Q(this,void 0,void 0,function(){return B(this,function(I){if(E>K)return[2,1];else if(EE)return[2,1];else if(K0;--q)w+=N;return w}var V=0,H=[],D=K(E.length-1)+2,L=0;while(VL)L=M.length;H[z]=H[z]||[],H[z].push(M),V+=1}return H.map(function(N,q){var w=Math.pow(2,D-q)-1;return I(" ",Math.floor(w/2)*L)+N.map(function(P){var _=(L-P.length)/2;return I(" ",Math.ceil(_))+P+I(" ",Math.floor(_))}).join(I(" ",w*L))}).join(` +`)},$.heapify=function(E,K){return Q(this,void 0,void 0,function(){var I;return B(this,function(V){switch(V.label){case 0:return I=new $(K),I.heapArray=E,[4,I.init()];case 1:return V.sent(),[2,I]}})})},$.heappop=function(E,K){var I=new $(K);return I.heapArray=E,I.pop()},$.heappush=function(E,K,I){return Q(this,void 0,void 0,function(){var V;return B(this,function(H){switch(H.label){case 0:return V=new $(I),V.heapArray=E,[4,V.push(K)];case 1:return H.sent(),[2]}})})},$.heappushpop=function(E,K,I){var V=new $(I);return V.heapArray=E,V.pushpop(K)},$.heapreplace=function(E,K,I){var V=new $(I);return V.heapArray=E,V.replace(K)},$.heaptop=function(E,K,I){if(K===void 0)K=1;var V=new $(I);return V.heapArray=E,V.top(K)},$.heapbottom=function(E,K,I){if(K===void 0)K=1;var V=new $(I);return V.heapArray=E,V.bottom(K)},$.nlargest=function(E,K,I){return Q(this,void 0,void 0,function(){var V;return B(this,function(H){switch(H.label){case 0:return V=new $(I),V.heapArray=J([],Y(K),!1),[4,V.init()];case 1:return H.sent(),[2,V.top(E)]}})})},$.nsmallest=function(E,K,I){return Q(this,void 0,void 0,function(){var V;return B(this,function(H){switch(H.label){case 0:return V=new $(I),V.heapArray=J([],Y(K),!1),[4,V.init()];case 1:return H.sent(),[2,V.bottom(E)]}})})},$.prototype.add=function(E){return Q(this,void 0,void 0,function(){return B(this,function(K){switch(K.label){case 0:return[4,this._sortNodeUp(this.heapArray.push(E)-1)];case 1:return K.sent(),this._applyLimit(),[2,!0]}})})},$.prototype.addAll=function(E){return Q(this,void 0,void 0,function(){var K,I,V;return B(this,function(H){switch(H.label){case 0:K=this.length,(V=this.heapArray).push.apply(V,J([],Y(E),!1)),I=this.length,H.label=1;case 1:if(!(K=this.heapArray.length)return[2,J([],Y(this.heapArray),!1)];else return[2,this._bottomN_push(~~E)]})})},$.prototype.check=function(){return Q(this,void 0,void 0,function(){var E,K,I,V,H,D,L,z,M;return B(this,function(N){switch(N.label){case 0:E=0,N.label=1;case 1:if(!(E0)return[2,K];N.label=5;case 5:return H=V.next(),[3,3];case 6:return[3,9];case 7:return L=N.sent(),z={error:L},[3,9];case 8:try{if(H&&!H.done&&(M=V.return))M.call(V)}finally{if(z)throw z.error}return[7];case 9:return++E,[3,1];case 10:return[2]}})})},$.prototype.clear=function(){this.heapArray=[]},$.prototype.clone=function(){var E=new $(this.comparator());return E.heapArray=this.toArray(),E._limit=this._limit,E},$.prototype.comparator=function(){return this.compare},$.prototype.contains=function(E){return Q(this,arguments,void 0,function(K,I){var V,H,D,L,z,M;if(I===void 0)I=$.defaultIsEqual;return B(this,function(N){switch(N.label){case 0:N.trys.push([0,5,6,7]),V=C(this.heapArray),H=V.next(),N.label=1;case 1:if(H.done)return[3,4];return D=H.value,[4,I(D,K)];case 2:if(N.sent())return[2,!0];N.label=3;case 3:return H=V.next(),[3,1];case 4:return[3,7];case 5:return L=N.sent(),z={error:L},[3,7];case 6:try{if(H&&!H.done&&(M=V.return))M.call(V)}finally{if(z)throw z.error}return[7];case 7:return[2,!1]}})})},$.prototype.init=function(E){return Q(this,void 0,void 0,function(){var K;return B(this,function(I){switch(I.label){case 0:if(E)this.heapArray=J([],Y(E),!1);K=Math.floor(this.heapArray.length),I.label=1;case 1:if(!(K>=0))return[3,4];return[4,this._sortNodeDown(K)];case 2:I.sent(),I.label=3;case 3:return--K,[3,1];case 4:return this._applyLimit(),[2]}})})},$.prototype.isEmpty=function(){return this.length===0},$.prototype.leafs=function(){if(this.heapArray.length===0)return[];var E=$.getParentIndexOf(this.heapArray.length-1);return this.heapArray.slice(E+1)},Object.defineProperty($.prototype,"length",{get:function(){return this.heapArray.length},enumerable:!1,configurable:!0}),Object.defineProperty($.prototype,"limit",{get:function(){return this._limit},set:function(E){this._limit=~~E,this._applyLimit()},enumerable:!1,configurable:!0}),$.prototype.peek=function(){return this.heapArray[0]},$.prototype.pop=function(){return Q(this,void 0,void 0,function(){var E;return B(this,function(K){if(E=this.heapArray.pop(),this.length>0&&E!==void 0)return[2,this.replace(E)];return[2,E]})})},$.prototype.push=function(){var E=[];for(var K=0;K=this.heapArray.length)return[2,J([],Y(this.heapArray),!1)];else return[2,this._topN_push(~~E)]})})},$.prototype.toArray=function(){return J([],Y(this.heapArray),!1)},$.prototype.toString=function(){return this.heapArray.toString()},$.prototype.get=function(E){return this.heapArray[E]},$.prototype.getChildrenOf=function(E){var K=this;return $.getChildrenIndexOf(E).map(function(I){return K.heapArray[I]}).filter(function(I){return I!==void 0})},$.prototype.getParentOf=function(E){var K=$.getParentIndexOf(E);return this.heapArray[K]},$.prototype[Symbol.iterator]=function(){return B(this,function(E){switch(E.label){case 0:if(!this.length)return[3,2];return[4,this.pop()];case 1:return E.sent(),[3,0];case 2:return[2]}})},$.prototype.iterator=function(){return this},$.prototype._applyLimit=function(){if(this._limit&&this._limitV;--L)H.push(L);D=this.heapArray,z.label=2;case 2:if(!H.length)return[3,6];return L=H.shift(),[4,this.compare(D[L],K.peek())];case 3:if(!(z.sent()>0))return[3,5];return[4,K.replace(D[L])];case 4:if(z.sent(),L%2)H.push($.getParentIndexOf(L));z.label=5;case 5:return[3,2];case 6:return[2,K.toArray()]}})})},$.prototype._moveNode=function(E,K){var I;I=Y([this.heapArray[K],this.heapArray[E]],2),this.heapArray[E]=I[0],this.heapArray[K]=I[1]},$.prototype._sortNodeDown=function(E){return Q(this,void 0,void 0,function(){var K,I,V,H,D,L;return B(this,function(z){switch(z.label){case 0:K=this.heapArray.length,z.label=1;case 1:if(I=2*E+1,V=I+1,H=E,D=I0))return[3,2];return K=$.getParentIndexOf(E),[4,this.compare(this.heapArray[E],this.heapArray[K])];case 1:if(I.sent()<0)this._moveNode(E,K),E=K;else return[3,2];return[3,0];case 2:return[2]}})})},$.prototype._topN_push=function(E){return Q(this,void 0,void 0,function(){var K,I,V,H;return B(this,function(D){switch(D.label){case 0:K=new $(this._invertedCompare),K.limit=E,I=[0],V=this.heapArray,D.label=1;case 1:if(!I.length)return[3,7];if(H=I.shift(),!(H0&&H[H.length-1]))&&(M[0]===6||M[0]===2)){K=0;continue}if(M[0]===3&&(!H||M[1]>H[0]&&M[1]0)&&!(V=I.next()).done)H.push(V.value)}catch(L){D={error:L}}finally{try{if(V&&!V.done&&(K=I.return))K.call(I)}finally{if(D)throw D.error}}return H},F=function($,E,K){if(K||arguments.length===2){for(var I=0,V=E.length,H;IK)return 1;else if(EE)return 1;else if(K0;--q)w+=N;return w}var V=0,H=[],D=K(E.length-1)+2,L=0;while(VL)L=M.length;H[z]=H[z]||[],H[z].push(M),V+=1}return H.map(function(N,q){var w=Math.pow(2,D-q)-1;return I(" ",Math.floor(w/2)*L)+N.map(function(P){var _=(L-P.length)/2;return I(" ",Math.ceil(_))+P+I(" ",Math.floor(_))}).join(I(" ",w*L))}).join(` +`)},$.heapify=function(E,K){var I=new $(K);return I.heapArray=E,I.init(),I},$.heappop=function(E,K){var I=new $(K);return I.heapArray=E,I.pop()},$.heappush=function(E,K,I){var V=new $(I);V.heapArray=E,V.push(K)},$.heappushpop=function(E,K,I){var V=new $(I);return V.heapArray=E,V.pushpop(K)},$.heapreplace=function(E,K,I){var V=new $(I);return V.heapArray=E,V.replace(K)},$.heaptop=function(E,K,I){if(K===void 0)K=1;var V=new $(I);return V.heapArray=E,V.top(K)},$.heapbottom=function(E,K,I){if(K===void 0)K=1;var V=new $(I);return V.heapArray=E,V.bottom(K)},$.nlargest=function(E,K,I){var V=new $(I);return V.heapArray=F([],W(K),!1),V.init(),V.top(E)},$.nsmallest=function(E,K,I){var V=new $(I);return V.heapArray=F([],W(K),!1),V.init(),V.bottom(E)},$.prototype.add=function(E){return this._sortNodeUp(this.heapArray.push(E)-1),this._applyLimit(),!0},$.prototype.addAll=function(E){var K,I=this.length;(K=this.heapArray).push.apply(K,F([],W(E),!1));for(var V=this.length;I=this.heapArray.length)return F([],W(this.heapArray),!1);else return this._bottomN_push(~~E)},$.prototype.check=function(){var E=this;return this.heapArray.find(function(K,I){return!!E.getChildrenOf(I).find(function(V){return E.compare(K,V)>0})})},$.prototype.clear=function(){this.heapArray=[]},$.prototype.clone=function(){var E=new $(this.comparator());return E.heapArray=this.toArray(),E._limit=this._limit,E},$.prototype.comparator=function(){return this.compare},$.prototype.contains=function(E,K){if(K===void 0)K=$.defaultIsEqual;return this.indexOf(E,K)!==-1},$.prototype.init=function(E){if(E)this.heapArray=F([],W(E),!1);for(var K=Math.floor(this.heapArray.length);K>=0;--K)this._sortNodeDown(K);this._applyLimit()},$.prototype.isEmpty=function(){return this.length===0},$.prototype.indexOf=function(E,K){if(K===void 0)K=$.defaultIsEqual;if(this.heapArray.length===0)return-1;var I=[],V=0;while(V0&&E!==void 0)return this.replace(E);return E},$.prototype.push=function(){var E=[];for(var K=0;K=this.heapArray.length)return F([],W(this.heapArray),!1);else return this._topN_push(~~E)},$.prototype.toArray=function(){return F([],W(this.heapArray),!1)},$.prototype.toString=function(){return this.heapArray.toString()},$.prototype.get=function(E){return this.heapArray[E]},$.prototype.getChildrenOf=function(E){var K=this;return $.getChildrenIndexOf(E).map(function(I){return K.heapArray[I]}).filter(function(I){return I!==void 0})},$.prototype.getParentOf=function(E){var K=$.getParentIndexOf(E);return this.heapArray[K]},$.prototype[Symbol.iterator]=function(){return G(this,function(E){switch(E.label){case 0:if(!this.length)return[3,2];return[4,this.pop()];case 1:return E.sent(),[3,0];case 2:return[2]}})},$.prototype.iterator=function(){return this.toArray()},$.prototype._applyLimit=function(){if(this._limit>0&&this._limitV;--D)H.push(D);var L=this.heapArray;while(H.length){var D=H.shift();if(this.compare(L[D],K.peek())>0){if(K.replace(L[D]),D%2)H.push($.getParentIndexOf(D))}}return K.toArray()},$.prototype._moveNode=function(E,K){var I;I=W([this.heapArray[K],this.heapArray[E]],2),this.heapArray[E]=I[0],this.heapArray[K]=I[1]},$.prototype._sortNodeDown=function(E){var K=this.heapArray.length;while(!0){var I=2*E+1,V=I+1,H=E;if(I0){var K=$.getParentIndexOf(E);if(this.compare(this.heapArray[E],this.heapArray[K])<0)this._moveNode(E,K),E=K;else break}},$.prototype._topN_push=function(E){var K=new $(this._invertedCompare);K.limit=E;var I=[0],V=this.heapArray;while(I.length){var H=I.shift();if(H{};class l{static errorCount=0;static warningCount=0;static warning(A,Q){let B=Error(A);this._logMessage({message:A,error:B,context:Q,type:"warning",isFatal:!1})}static error(A,Q){let B=Error(A);this._logMessage({message:A,error:B,context:Q,type:"error",isFatal:!1})}static fatalError(A,Q){let B=Error(A);throw this._logMessage({message:A,error:B,context:Q,type:"error",isFatal:!0}),B}static enableCrashProtection(){if(process.env.NODE_ENV!=="production")return;process.on("unhandledRejection",(A)=>{let Q=A instanceof Error?A.message:String(A);this.error(`[CRASH PREVENTED] - Unhandled Promise Rejection: ${Q}`)}),process.on("uncaughtException",(A)=>{this.error(`[FATAL] Uncaught Exception: ${A.message} +${A.stack}`),setTimeout(()=>process.exit(1),1000)}),console.info("Crash protection enabled! Unhandled Promise Rejections and Uncaught Exceptions will be logged instead of crashing the server.")}static _logMessage(A){let{message:Q,error:B,context:Y,type:J,isFatal:C}=A,X=new Date().toISOString(),G=J==="warning";if(G)this.warningCount++;else this.errorCount++;let W=G?DY.yellow:DY.red,F=G?this.warningCount:this.errorCount,Z=G?console.warn:console.error;if(Z(` +${W}${DY.bold}==========[ RUNTIME ${G?"WARNING":"ERROR"} #${F} | ${X} ]==========${DY.reset}`),!G)if(C)Z(`The server encountered an unrecoverable error and has crashed! `);else Z("The server encountered a recoverable error and did not crash."),Z(`You should fix this to prevent undefined-like return values and unexpected behavior. -`);let U=C?"FATAL ERROR":G?"WARNING":"ERROR";if(Z(`${F}${KY.bold}⚠️ ${U}:${KY.reset} ${KY.bold}${Q}${KY.reset}`),Y)Z(`${KY.cyan}ℹ️ CONTEXT:${KY.reset} ${Y}`);let $=B.stack?.split(` -`)??[];if($.length>1)Z(`${KY.cyan}\uD83D\uDD0D STACK TRACE:${KY.reset}`),$.slice(1).forEach((E)=>{let I=E.trim().replace(/at\s+([^\s]+)/,`at ${KY.green}$1${KY.reset}`).replace(/\(([^:]+):(\d+):(\d+)\)/,`(${KY.cyan}$1${KY.reset}:${KY.yellow}$2:$3${KY.reset})`);Z(` ${I}`)});Z(`${F}${KY.bold}=================================================${KY.reset} -`)}}class zY{static instance=new zY;static assetsLibraryPath=(()=>{if(process.env.NODE_ENV==="production")return null;let A="@hytopia.com/assets";try{return y6.dirname(u.resolve(A))}catch{return null}})();syncAsset(A){if(!zY.assetsLibraryPath)return n.warning("AssetsLibrary.syncAsset(): Assets library is not available.");try{let Q=y6.relative(zY.assetsLibraryPath,A),B=y6.join("assets",Q);if(!v6.existsSync(A))return;if(v6.existsSync(B))return;let Y=Q.match(/^(.+?)\/\.optimized\/([^/]+)\//);if(Y){let[,J,C]=Y,X=y6.join(zY.assetsLibraryPath,J,".optimized",C),G=y6.join("assets",J,".optimized",C);v6.cpSync(X,G,{recursive:!0,force:!1}),[".gltf",".glb"].forEach((F)=>{let W=y6.join(zY.assetsLibraryPath,J,`${C}${F}`),Z=y6.join("assets",J,`${C}${F}`);if(v6.existsSync(W)&&!v6.existsSync(Z))v6.mkdirSync(y6.dirname(Z),{recursive:!0}),v6.copyFileSync(W,Z)}),console.log(`AssetsLibrary.syncAsset(): Copied model from asset library to local assets: ${J}/${C}`)}else v6.mkdirSync(y6.dirname(B),{recursive:!0}),v6.copyFileSync(A,B),console.log(`AssetsLibrary.syncAsset(): Copied asset from asset library to local assets: ${Q}`)}catch(Q){n.warning(`AssetsLibrary.syncAsset(): Failed to copy asset "${A}" to local assets: ${Q}`)}}}var j,VB=Array(128).fill(void 0);function $B(A){return VB[A]}VB.push(void 0,null,!0,!1);var gV=VB.length;function lB(A){gV===VB.length&&VB.push(VB.length+1);let Q=gV;return gV=VB[Q],VB[Q]=A,Q}function FM(A,Q){try{return A.apply(this,Q)}catch(B){j.__wbindgen_export_0(lB(B))}}var Nt=typeof TextDecoder<"u"?new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0}):{decode:()=>{throw Error("TextDecoder not available")}};typeof TextDecoder<"u"&&Nt.decode();var kV=null;function pk(A,Q){return A>>>=0,Nt.decode((kV!==null&&kV.byteLength!==0||(kV=new Uint8Array(j.memory.buffer)),kV).subarray(A,A+Q))}function VQ(A){return A==null}var VW=null;function VY(){return(VW===null||VW.buffer.detached===!0||VW.buffer.detached===void 0&&VW.buffer!==j.memory.buffer)&&(VW=new DataView(j.memory.buffer)),VW}function xV(A){let Q=$B(A);return function(B){B<132||(VB[B]=gV,gV=B)}(A),Q}function c(A,Q){if(!(A instanceof Q))throw Error(`expected instance of ${Q.name}`)}var pB=128;function G0(A){if(pB==1)throw Error("out of js stack");return VB[--pB]=A,pB}var _V=null;function IkQ(A,Q){return A>>>=0,(_V!==null&&_V.byteLength!==0||(_V=new Int32Array(j.memory.buffer)),_V).subarray(A/4,A/4+Q)}var vV=null;function Lt(){return vV!==null&&vV.byteLength!==0||(vV=new Float32Array(j.memory.buffer)),vV}function no(A,Q){return A>>>=0,Lt().subarray(A/4,A/4+Q)}var yV=null;function qt(){return yV!==null&&yV.byteLength!==0||(yV=new Uint32Array(j.memory.buffer)),yV}var fJ=0;function SV(A,Q){let B=Q(4*A.length,4)>>>0;return qt().set(A,B/4),fJ=A.length,B}function bG(A,Q){let B=Q(4*A.length,4)>>>0;return Lt().set(A,B/4),fJ=A.length,B}Object.freeze({Vertex:0,0:"Vertex",Edge:1,1:"Edge",Face:2,2:"Face",Unknown:3,3:"Unknown"});var LM=Object.freeze({LinX:0,0:"LinX",LinY:1,1:"LinY",LinZ:2,2:"LinZ",AngX:3,3:"AngX",AngY:4,4:"AngY",AngZ:5,5:"AngZ"}),WC=Object.freeze({Revolute:0,0:"Revolute",Fixed:1,1:"Fixed",Prismatic:2,2:"Prismatic",Rope:3,3:"Rope",Spring:4,4:"Spring",Spherical:5,5:"Spherical",Generic:6,6:"Generic"});Object.freeze({AccelerationBased:0,0:"AccelerationBased",ForceBased:1,1:"ForceBased"}),Object.freeze({Dynamic:0,0:"Dynamic",Fixed:1,1:"Fixed",KinematicPositionBased:2,2:"KinematicPositionBased",KinematicVelocityBased:3,3:"KinematicVelocityBased"});var hY=Object.freeze({Ball:0,0:"Ball",Cuboid:1,1:"Cuboid",Capsule:2,2:"Capsule",Segment:3,3:"Segment",Polyline:4,4:"Polyline",Triangle:5,5:"Triangle",TriMesh:6,6:"TriMesh",HeightField:7,7:"HeightField",Compound:8,8:"Compound",ConvexPolyhedron:9,9:"ConvexPolyhedron",Cylinder:10,10:"Cylinder",Cone:11,11:"Cone",RoundCuboid:12,12:"RoundCuboid",RoundTriangle:13,13:"RoundTriangle",RoundCylinder:14,14:"RoundCylinder",RoundCone:15,15:"RoundCone",RoundConvexPolyhedron:16,16:"RoundConvexPolyhedron",HalfSpace:17,17:"HalfSpace",Voxels:18,18:"Voxels"}),hk=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawbroadphase_free(A>>>0,1));class g6{static __wrap(A){A>>>=0;let Q=Object.create(g6.prototype);return Q.__wbg_ptr=A,hk.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,hk.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawbroadphase_free(A,0)}constructor(){let A=j.rawbroadphase_new();return this.__wbg_ptr=A>>>0,hk.register(this,this.__wbg_ptr,this),this}castRay(A,Q,B,Y,J,C,X,G,F,W,Z,U){try{c(A,IY),c(Q,J0),c(B,j0),c(Y,r),c(J,r);let $=j.rawbroadphase_castRay(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C,X,G,VQ(F)?4294967297:F>>>0,!VQ(W),VQ(W)?0:W,!VQ(Z),VQ(Z)?0:Z,G0(U));return $===0?void 0:G_.__wrap($)}finally{VB[pB++]=void 0}}castRayAndGetNormal(A,Q,B,Y,J,C,X,G,F,W,Z,U){try{c(A,IY),c(Q,J0),c(B,j0),c(Y,r),c(J,r);let $=j.rawbroadphase_castRayAndGetNormal(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C,X,G,VQ(F)?4294967297:F>>>0,!VQ(W),VQ(W)?0:W,!VQ(Z),VQ(Z)?0:Z,G0(U));return $===0?void 0:zM.__wrap($)}finally{VB[pB++]=void 0}}intersectionsWithRay(A,Q,B,Y,J,C,X,G,F,W,Z,U,$){try{c(A,IY),c(Q,J0),c(B,j0),c(Y,r),c(J,r),j.rawbroadphase_intersectionsWithRay(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C,X,G0(G),F,VQ(W)?4294967297:W>>>0,!VQ(Z),VQ(Z)?0:Z,!VQ(U),VQ(U)?0:U,G0($))}finally{VB[pB++]=void 0,VB[pB++]=void 0}}intersectionWithShape(A,Q,B,Y,J,C,X,G,F,W,Z){try{let E=j.__wbindgen_add_to_stack_pointer(-16);c(A,IY),c(Q,J0),c(B,j0),c(Y,r),c(J,AB),c(C,UQ),j.rawbroadphase_intersectionWithShape(E,this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C.__wbg_ptr,X,VQ(G)?4294967297:G>>>0,!VQ(F),VQ(F)?0:F,!VQ(W),VQ(W)?0:W,G0(Z));var U=VY().getInt32(E+0,!0),$=VY().getFloat64(E+8,!0);return U===0?void 0:$}finally{j.__wbindgen_add_to_stack_pointer(16),VB[pB++]=void 0}}projectPoint(A,Q,B,Y,J,C,X,G,F,W){try{c(A,IY),c(Q,J0),c(B,j0),c(Y,r);let Z=j.rawbroadphase_projectPoint(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J,C,VQ(X)?4294967297:X>>>0,!VQ(G),VQ(G)?0:G,!VQ(F),VQ(F)?0:F,G0(W));return Z===0?void 0:ZM.__wrap(Z)}finally{VB[pB++]=void 0}}projectPointAndGetFeature(A,Q,B,Y,J,C,X,G,F){try{c(A,IY),c(Q,J0),c(B,j0),c(Y,r);let W=j.rawbroadphase_projectPointAndGetFeature(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J,VQ(C)?4294967297:C>>>0,!VQ(X),VQ(X)?0:X,!VQ(G),VQ(G)?0:G,G0(F));return W===0?void 0:ZM.__wrap(W)}finally{VB[pB++]=void 0}}intersectionsWithPoint(A,Q,B,Y,J,C,X,G,F,W){try{c(A,IY),c(Q,J0),c(B,j0),c(Y,r),j.rawbroadphase_intersectionsWithPoint(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,G0(J),C,VQ(X)?4294967297:X>>>0,!VQ(G),VQ(G)?0:G,!VQ(F),VQ(F)?0:F,G0(W))}finally{VB[pB++]=void 0,VB[pB++]=void 0}}castShape(A,Q,B,Y,J,C,X,G,F,W,Z,U,$,E,K){try{c(A,IY),c(Q,J0),c(B,j0),c(Y,r),c(J,AB),c(C,r),c(X,UQ);let I=j.rawbroadphase_castShape(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C.__wbg_ptr,X.__wbg_ptr,G,F,W,Z,VQ(U)?4294967297:U>>>0,!VQ($),VQ($)?0:$,!VQ(E),VQ(E)?0:E,G0(K));return I===0?void 0:qM.__wrap(I)}finally{VB[pB++]=void 0}}intersectionsWithShape(A,Q,B,Y,J,C,X,G,F,W,Z,U){try{c(A,IY),c(Q,J0),c(B,j0),c(Y,r),c(J,AB),c(C,UQ),j.rawbroadphase_intersectionsWithShape(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C.__wbg_ptr,G0(X),G,VQ(F)?4294967297:F>>>0,!VQ(W),VQ(W)?0:W,!VQ(Z),VQ(Z)?0:Z,G0(U))}finally{VB[pB++]=void 0,VB[pB++]=void 0}}collidersWithAabbIntersectingAabb(A,Q,B,Y,J,C){try{c(A,IY),c(Q,J0),c(B,j0),c(Y,r),c(J,r),j.rawbroadphase_collidersWithAabbIntersectingAabb(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,G0(C))}finally{VB[pB++]=void 0}}}var so=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawccdsolver_free(A>>>0,1));class WM{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,so.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawccdsolver_free(A,0)}constructor(){let A=j.rawccdsolver_new();return this.__wbg_ptr=A>>>0,so.register(this,this.__wbg_ptr,this),this}}var ro=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawcharactercollision_free(A>>>0,1));class Q_{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,ro.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawcharactercollision_free(A,0)}constructor(){let A=j.rawcharactercollision_new();return this.__wbg_ptr=A>>>0,ro.register(this,this.__wbg_ptr,this),this}handle(){return j.rawcharactercollision_handle(this.__wbg_ptr)}translationDeltaApplied(){let A=j.rawcharactercollision_translationDeltaApplied(this.__wbg_ptr);return r.__wrap(A)}translationDeltaRemaining(){let A=j.rawcharactercollision_translationDeltaRemaining(this.__wbg_ptr);return r.__wrap(A)}toi(){return j.rawcharactercollision_toi(this.__wbg_ptr)}worldWitness1(){let A=j.rawcharactercollision_worldWitness1(this.__wbg_ptr);return r.__wrap(A)}worldWitness2(){let A=j.rawcharactercollision_worldWitness2(this.__wbg_ptr);return r.__wrap(A)}worldNormal1(){let A=j.rawcharactercollision_worldNormal1(this.__wbg_ptr);return r.__wrap(A)}worldNormal2(){let A=j.rawcharactercollision_worldNormal2(this.__wbg_ptr);return r.__wrap(A)}}var gk=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawcolliderset_free(A>>>0,1));class j0{static __wrap(A){A>>>=0;let Q=Object.create(j0.prototype);return Q.__wbg_ptr=A,gk.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,gk.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawcolliderset_free(A,0)}coTranslation(A){let Q=j.rawcolliderset_coTranslation(this.__wbg_ptr,A);return r.__wrap(Q)}coRotation(A){let Q=j.rawcolliderset_coRotation(this.__wbg_ptr,A);return AB.__wrap(Q)}coTranslationWrtParent(A){let Q=j.rawcolliderset_coTranslationWrtParent(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}coRotationWrtParent(A){let Q=j.rawcolliderset_coRotationWrtParent(this.__wbg_ptr,A);return Q===0?void 0:AB.__wrap(Q)}coSetTranslation(A,Q,B,Y){j.rawcolliderset_coSetTranslation(this.__wbg_ptr,A,Q,B,Y)}coSetTranslationWrtParent(A,Q,B,Y){j.rawcolliderset_coSetTranslationWrtParent(this.__wbg_ptr,A,Q,B,Y)}coSetRotation(A,Q,B,Y,J){j.rawcolliderset_coSetRotation(this.__wbg_ptr,A,Q,B,Y,J)}coSetRotationWrtParent(A,Q,B,Y,J){j.rawcolliderset_coSetRotationWrtParent(this.__wbg_ptr,A,Q,B,Y,J)}coIsSensor(A){return j.rawcolliderset_coIsSensor(this.__wbg_ptr,A)!==0}coShapeType(A){return j.rawcolliderset_coShapeType(this.__wbg_ptr,A)}coHalfspaceNormal(A){let Q=j.rawcolliderset_coHalfspaceNormal(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}coHalfExtents(A){let Q=j.rawcolliderset_coHalfExtents(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}coSetHalfExtents(A,Q){c(Q,r),j.rawcolliderset_coSetHalfExtents(this.__wbg_ptr,A,Q.__wbg_ptr)}coRadius(A){let Q=j.rawcolliderset_coRadius(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}coSetRadius(A,Q){j.rawcolliderset_coSetRadius(this.__wbg_ptr,A,Q)}coHalfHeight(A){let Q=j.rawcolliderset_coHalfHeight(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}coSetHalfHeight(A,Q){j.rawcolliderset_coSetHalfHeight(this.__wbg_ptr,A,Q)}coRoundRadius(A){let Q=j.rawcolliderset_coRoundRadius(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}coSetRoundRadius(A,Q){j.rawcolliderset_coSetRoundRadius(this.__wbg_ptr,A,Q)}coVoxelData(A){try{let Y=j.__wbindgen_add_to_stack_pointer(-16);j.rawcolliderset_coVoxelData(Y,this.__wbg_ptr,A);var Q=VY().getInt32(Y+0,!0),B=VY().getInt32(Y+4,!0);let J;return Q!==0&&(J=IkQ(Q,B).slice(),j.__wbindgen_export_1(Q,4*B,4)),J}finally{j.__wbindgen_add_to_stack_pointer(16)}}coVoxelSize(A){let Q=j.rawcolliderset_coVoxelSize(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}coSetVoxel(A,Q,B,Y,J){j.rawcolliderset_coSetVoxel(this.__wbg_ptr,A,Q,B,Y,J)}coPropagateVoxelChange(A,Q,B,Y,J,C,X,G){j.rawcolliderset_coPropagateVoxelChange(this.__wbg_ptr,A,Q,B,Y,J,C,X,G)}coCombineVoxelStates(A,Q,B,Y,J){j.rawcolliderset_coCombineVoxelStates(this.__wbg_ptr,A,Q,B,Y,J)}coVertices(A){try{let Y=j.__wbindgen_add_to_stack_pointer(-16);j.rawcolliderset_coVertices(Y,this.__wbg_ptr,A);var Q=VY().getInt32(Y+0,!0),B=VY().getInt32(Y+4,!0);let J;return Q!==0&&(J=no(Q,B).slice(),j.__wbindgen_export_1(Q,4*B,4)),J}finally{j.__wbindgen_add_to_stack_pointer(16)}}coIndices(A){try{let Y=j.__wbindgen_add_to_stack_pointer(-16);j.rawcolliderset_coIndices(Y,this.__wbg_ptr,A);var Q=VY().getInt32(Y+0,!0),B=VY().getInt32(Y+4,!0);let J;return Q!==0&&(J=function(C,X){return C>>>=0,qt().subarray(C/4,C/4+X)}(Q,B).slice(),j.__wbindgen_export_1(Q,4*B,4)),J}finally{j.__wbindgen_add_to_stack_pointer(16)}}coTriMeshFlags(A){let Q=j.rawcolliderset_coTriMeshFlags(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}coHeightFieldFlags(A){let Q=j.rawcolliderset_coHeightFieldFlags(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}coHeightfieldHeights(A){try{let Y=j.__wbindgen_add_to_stack_pointer(-16);j.rawcolliderset_coHeightfieldHeights(Y,this.__wbg_ptr,A);var Q=VY().getInt32(Y+0,!0),B=VY().getInt32(Y+4,!0);let J;return Q!==0&&(J=no(Q,B).slice(),j.__wbindgen_export_1(Q,4*B,4)),J}finally{j.__wbindgen_add_to_stack_pointer(16)}}coHeightfieldScale(A){let Q=j.rawcolliderset_coHeightfieldScale(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}coHeightfieldNRows(A){let Q=j.rawcolliderset_coHeightfieldNRows(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}coHeightfieldNCols(A){let Q=j.rawcolliderset_coHeightfieldNCols(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}coParent(A){try{let Y=j.__wbindgen_add_to_stack_pointer(-16);j.rawcolliderset_coParent(Y,this.__wbg_ptr,A);var Q=VY().getInt32(Y+0,!0),B=VY().getFloat64(Y+8,!0);return Q===0?void 0:B}finally{j.__wbindgen_add_to_stack_pointer(16)}}coSetEnabled(A,Q){j.rawcolliderset_coSetEnabled(this.__wbg_ptr,A,Q)}coIsEnabled(A){return j.rawcolliderset_coIsEnabled(this.__wbg_ptr,A)!==0}coSetContactSkin(A,Q){j.rawcolliderset_coSetContactSkin(this.__wbg_ptr,A,Q)}coContactSkin(A){return j.rawcolliderset_coContactSkin(this.__wbg_ptr,A)}coFriction(A){return j.rawcolliderset_coFriction(this.__wbg_ptr,A)}coRestitution(A){return j.rawcolliderset_coRestitution(this.__wbg_ptr,A)}coDensity(A){return j.rawcolliderset_coDensity(this.__wbg_ptr,A)}coMass(A){return j.rawcolliderset_coMass(this.__wbg_ptr,A)}coVolume(A){return j.rawcolliderset_coVolume(this.__wbg_ptr,A)}coCollisionGroups(A){return j.rawcolliderset_coCollisionGroups(this.__wbg_ptr,A)>>>0}coSolverGroups(A){return j.rawcolliderset_coSolverGroups(this.__wbg_ptr,A)>>>0}coActiveHooks(A){return j.rawcolliderset_coActiveHooks(this.__wbg_ptr,A)>>>0}coActiveCollisionTypes(A){return j.rawcolliderset_coActiveCollisionTypes(this.__wbg_ptr,A)}coActiveEvents(A){return j.rawcolliderset_coActiveEvents(this.__wbg_ptr,A)>>>0}coContactForceEventThreshold(A){return j.rawcolliderset_coContactForceEventThreshold(this.__wbg_ptr,A)}coContainsPoint(A,Q){return c(Q,r),j.rawcolliderset_coContainsPoint(this.__wbg_ptr,A,Q.__wbg_ptr)!==0}coCastShape(A,Q,B,Y,J,C,X,G,F){c(Q,r),c(B,UQ),c(Y,r),c(J,AB),c(C,r);let W=j.rawcolliderset_coCastShape(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C.__wbg_ptr,X,G,F);return W===0?void 0:wM.__wrap(W)}coCastCollider(A,Q,B,Y,J,C,X){c(Q,r),c(Y,r);let G=j.rawcolliderset_coCastCollider(this.__wbg_ptr,A,Q.__wbg_ptr,B,Y.__wbg_ptr,J,C,X);return G===0?void 0:qM.__wrap(G)}coIntersectsShape(A,Q,B,Y){return c(Q,UQ),c(B,r),c(Y,AB),j.rawcolliderset_coIntersectsShape(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr)!==0}coContactShape(A,Q,B,Y,J){c(Q,UQ),c(B,r),c(Y,AB);let C=j.rawcolliderset_coContactShape(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J);return C===0?void 0:fV.__wrap(C)}coContactCollider(A,Q,B){let Y=j.rawcolliderset_coContactCollider(this.__wbg_ptr,A,Q,B);return Y===0?void 0:fV.__wrap(Y)}coProjectPoint(A,Q,B){c(Q,r);let Y=j.rawcolliderset_coProjectPoint(this.__wbg_ptr,A,Q.__wbg_ptr,B);return MM.__wrap(Y)}coIntersectsRay(A,Q,B,Y){return c(Q,r),c(B,r),j.rawcolliderset_coIntersectsRay(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y)!==0}coCastRay(A,Q,B,Y,J){return c(Q,r),c(B,r),j.rawcolliderset_coCastRay(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y,J)}coCastRayAndGetNormal(A,Q,B,Y,J){c(Q,r),c(B,r);let C=j.rawcolliderset_coCastRayAndGetNormal(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y,J);return C===0?void 0:RM.__wrap(C)}coSetSensor(A,Q){j.rawcolliderset_coSetSensor(this.__wbg_ptr,A,Q)}coSetRestitution(A,Q){j.rawcolliderset_coSetRestitution(this.__wbg_ptr,A,Q)}coSetFriction(A,Q){j.rawcolliderset_coSetFriction(this.__wbg_ptr,A,Q)}coFrictionCombineRule(A){return j.rawcolliderset_coFrictionCombineRule(this.__wbg_ptr,A)>>>0}coSetFrictionCombineRule(A,Q){j.rawcolliderset_coSetFrictionCombineRule(this.__wbg_ptr,A,Q)}coRestitutionCombineRule(A){return j.rawcolliderset_coRestitutionCombineRule(this.__wbg_ptr,A)>>>0}coSetRestitutionCombineRule(A,Q){j.rawcolliderset_coSetRestitutionCombineRule(this.__wbg_ptr,A,Q)}coSetCollisionGroups(A,Q){j.rawcolliderset_coSetCollisionGroups(this.__wbg_ptr,A,Q)}coSetSolverGroups(A,Q){j.rawcolliderset_coSetSolverGroups(this.__wbg_ptr,A,Q)}coSetActiveHooks(A,Q){j.rawcolliderset_coSetActiveHooks(this.__wbg_ptr,A,Q)}coSetActiveEvents(A,Q){j.rawcolliderset_coSetActiveEvents(this.__wbg_ptr,A,Q)}coSetActiveCollisionTypes(A,Q){j.rawcolliderset_coSetActiveCollisionTypes(this.__wbg_ptr,A,Q)}coSetShape(A,Q){c(Q,UQ),j.rawcolliderset_coSetShape(this.__wbg_ptr,A,Q.__wbg_ptr)}coSetContactForceEventThreshold(A,Q){j.rawcolliderset_coSetContactForceEventThreshold(this.__wbg_ptr,A,Q)}coSetDensity(A,Q){j.rawcolliderset_coSetDensity(this.__wbg_ptr,A,Q)}coSetMass(A,Q){j.rawcolliderset_coSetMass(this.__wbg_ptr,A,Q)}coSetMassProperties(A,Q,B,Y,J){c(B,r),c(Y,r),c(J,AB),j.rawcolliderset_coSetMassProperties(this.__wbg_ptr,A,Q,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr)}constructor(){let A=j.rawcolliderset_new();return this.__wbg_ptr=A>>>0,gk.register(this,this.__wbg_ptr,this),this}len(){return j.rawcolliderset_len(this.__wbg_ptr)>>>0}contains(A){return j.rawcolliderset_contains(this.__wbg_ptr,A)!==0}createCollider(A,Q,B,Y,J,C,X,G,F,W,Z,U,$,E,K,I,V,H,D,L,z,M,N,q,w){try{let O=j.__wbindgen_add_to_stack_pointer(-16);c(Q,UQ),c(B,r),c(Y,AB),c(X,r),c(G,r),c(F,AB),c(w,J0),j.rawcolliderset_createCollider(O,this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J,C,X.__wbg_ptr,G.__wbg_ptr,F.__wbg_ptr,W,Z,U,$,E,K,I,V,H,D,L,z,M,N,q,w.__wbg_ptr);var P=VY().getInt32(O+0,!0),_=VY().getFloat64(O+8,!0);return P===0?void 0:_}finally{j.__wbindgen_add_to_stack_pointer(16)}}remove(A,Q,B,Y){c(Q,f6),c(B,J0),j.rawcolliderset_remove(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y)}isHandleValid(A){return j.rawcolliderset_contains(this.__wbg_ptr,A)!==0}forEachColliderHandle(A){try{j.rawcolliderset_forEachColliderHandle(this.__wbg_ptr,G0(A))}finally{VB[pB++]=void 0}}}var ao=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawcollidershapecasthit_free(A>>>0,1));class qM{static __wrap(A){A>>>=0;let Q=Object.create(qM.prototype);return Q.__wbg_ptr=A,ao.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,ao.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawcollidershapecasthit_free(A,0)}colliderHandle(){return j.rawcharactercollision_handle(this.__wbg_ptr)}time_of_impact(){return j.rawcollidershapecasthit_time_of_impact(this.__wbg_ptr)}witness1(){let A=j.rawcollidershapecasthit_witness1(this.__wbg_ptr);return r.__wrap(A)}witness2(){let A=j.rawcollidershapecasthit_witness2(this.__wbg_ptr);return r.__wrap(A)}normal1(){let A=j.rawcharactercollision_translationDeltaApplied(this.__wbg_ptr);return r.__wrap(A)}normal2(){let A=j.rawcharactercollision_translationDeltaRemaining(this.__wbg_ptr);return r.__wrap(A)}}var oo=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawcontactforceevent_free(A>>>0,1));class B_{static __wrap(A){A>>>=0;let Q=Object.create(B_.prototype);return Q.__wbg_ptr=A,oo.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,oo.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawcontactforceevent_free(A,0)}collider1(){return j.rawcharactercollision_handle(this.__wbg_ptr)}collider2(){return j.rawcontactforceevent_collider2(this.__wbg_ptr)}total_force(){let A=j.rawcontactforceevent_total_force(this.__wbg_ptr);return r.__wrap(A)}total_force_magnitude(){return j.rawcontactforceevent_total_force_magnitude(this.__wbg_ptr)}max_force_direction(){let A=j.rawcontactforceevent_max_force_direction(this.__wbg_ptr);return r.__wrap(A)}max_force_magnitude(){return j.rawcontactforceevent_max_force_magnitude(this.__wbg_ptr)}}var to=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawcontactmanifold_free(A>>>0,1));class Y_{static __wrap(A){A>>>=0;let Q=Object.create(Y_.prototype);return Q.__wbg_ptr=A,to.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,to.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawcontactmanifold_free(A,0)}normal(){let A=j.rawcontactmanifold_normal(this.__wbg_ptr);return r.__wrap(A)}local_n1(){let A=j.rawcontactmanifold_local_n1(this.__wbg_ptr);return r.__wrap(A)}local_n2(){let A=j.rawcontactmanifold_local_n2(this.__wbg_ptr);return r.__wrap(A)}subshape1(){return j.rawcontactmanifold_subshape1(this.__wbg_ptr)>>>0}subshape2(){return j.rawcontactmanifold_subshape2(this.__wbg_ptr)>>>0}num_contacts(){return j.rawcontactmanifold_num_contacts(this.__wbg_ptr)>>>0}contact_local_p1(A){let Q=j.rawcontactmanifold_contact_local_p1(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}contact_local_p2(A){let Q=j.rawcontactmanifold_contact_local_p2(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}contact_dist(A){return j.rawcontactmanifold_contact_dist(this.__wbg_ptr,A)}contact_fid1(A){return j.rawcontactmanifold_contact_fid1(this.__wbg_ptr,A)>>>0}contact_fid2(A){return j.rawcontactmanifold_contact_fid2(this.__wbg_ptr,A)>>>0}contact_impulse(A){return j.rawcontactmanifold_contact_impulse(this.__wbg_ptr,A)}contact_tangent_impulse_x(A){return j.rawcontactmanifold_contact_tangent_impulse_x(this.__wbg_ptr,A)}contact_tangent_impulse_y(A){return j.rawcontactmanifold_contact_tangent_impulse_y(this.__wbg_ptr,A)}num_solver_contacts(){return j.rawcontactmanifold_num_solver_contacts(this.__wbg_ptr)>>>0}solver_contact_point(A){let Q=j.rawcontactmanifold_solver_contact_point(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}solver_contact_dist(A){return j.rawcontactmanifold_solver_contact_dist(this.__wbg_ptr,A)}solver_contact_friction(A){return j.rawcontactmanifold_solver_contact_friction(this.__wbg_ptr,A)}solver_contact_restitution(A){return j.rawcontactmanifold_solver_contact_restitution(this.__wbg_ptr,A)}solver_contact_tangent_velocity(A){let Q=j.rawcontactmanifold_solver_contact_tangent_velocity(this.__wbg_ptr,A);return r.__wrap(Q)}}var eo=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawcontactpair_free(A>>>0,1));class J_{static __wrap(A){A>>>=0;let Q=Object.create(J_.prototype);return Q.__wbg_ptr=A,eo.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,eo.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawcontactpair_free(A,0)}collider1(){return j.rawcontactpair_collider1(this.__wbg_ptr)}collider2(){return j.rawcontactpair_collider2(this.__wbg_ptr)}numContactManifolds(){return j.rawcontactpair_numContactManifolds(this.__wbg_ptr)>>>0}contactManifold(A){let Q=j.rawcontactpair_contactManifold(this.__wbg_ptr,A);return Q===0?void 0:Y_.__wrap(Q)}}var At=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawdebugrenderpipeline_free(A>>>0,1));class Mt{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,At.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawdebugrenderpipeline_free(A,0)}constructor(){let A=j.rawdebugrenderpipeline_new();return this.__wbg_ptr=A>>>0,At.register(this,this.__wbg_ptr,this),this}vertices(){return xV(j.rawdebugrenderpipeline_vertices(this.__wbg_ptr))}colors(){return xV(j.rawdebugrenderpipeline_colors(this.__wbg_ptr))}render(A,Q,B,Y,J,C,X){try{c(A,J0),c(Q,j0),c(B,x6),c(Y,b6),c(J,IY),j.rawdebugrenderpipeline_render(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C,G0(X))}finally{VB[pB++]=void 0}}}var Qt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawdeserializedworld_free(A>>>0,1));class C_{static __wrap(A){A>>>=0;let Q=Object.create(C_.prototype);return Q.__wbg_ptr=A,Qt.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Qt.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawdeserializedworld_free(A,0)}takeGravity(){let A=j.rawdeserializedworld_takeGravity(this.__wbg_ptr);return A===0?void 0:r.__wrap(A)}takeIntegrationParameters(){let A=j.rawdeserializedworld_takeIntegrationParameters(this.__wbg_ptr);return A===0?void 0:HW.__wrap(A)}takeIslandManager(){let A=j.rawdeserializedworld_takeIslandManager(this.__wbg_ptr);return A===0?void 0:f6.__wrap(A)}takeBroadPhase(){let A=j.rawdeserializedworld_takeBroadPhase(this.__wbg_ptr);return A===0?void 0:g6.__wrap(A)}takeNarrowPhase(){let A=j.rawdeserializedworld_takeNarrowPhase(this.__wbg_ptr);return A===0?void 0:IY.__wrap(A)}takeBodies(){let A=j.rawdeserializedworld_takeBodies(this.__wbg_ptr);return A===0?void 0:J0.__wrap(A)}takeColliders(){let A=j.rawdeserializedworld_takeColliders(this.__wbg_ptr);return A===0?void 0:j0.__wrap(A)}takeImpulseJoints(){let A=j.rawdeserializedworld_takeImpulseJoints(this.__wbg_ptr);return A===0?void 0:x6.__wrap(A)}takeMultibodyJoints(){let A=j.rawdeserializedworld_takeMultibodyJoints(this.__wbg_ptr);return A===0?void 0:b6.__wrap(A)}}var Bt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawdynamicraycastvehiclecontroller_free(A>>>0,1));class zt{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Bt.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawdynamicraycastvehiclecontroller_free(A,0)}constructor(A){let Q=j.rawdynamicraycastvehiclecontroller_new(A);return this.__wbg_ptr=Q>>>0,Bt.register(this,this.__wbg_ptr,this),this}current_vehicle_speed(){return j.rawdynamicraycastvehiclecontroller_current_vehicle_speed(this.__wbg_ptr)}chassis(){return j.rawdynamicraycastvehiclecontroller_chassis(this.__wbg_ptr)}index_up_axis(){return j.rawdynamicraycastvehiclecontroller_index_up_axis(this.__wbg_ptr)>>>0}set_index_up_axis(A){j.rawdynamicraycastvehiclecontroller_set_index_up_axis(this.__wbg_ptr,A)}index_forward_axis(){return j.rawdynamicraycastvehiclecontroller_index_forward_axis(this.__wbg_ptr)>>>0}set_index_forward_axis(A){j.rawdynamicraycastvehiclecontroller_set_index_forward_axis(this.__wbg_ptr,A)}add_wheel(A,Q,B,Y,J){c(A,r),c(Q,r),c(B,r),j.rawdynamicraycastvehiclecontroller_add_wheel(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y,J)}num_wheels(){return j.rawdynamicraycastvehiclecontroller_num_wheels(this.__wbg_ptr)>>>0}update_vehicle(A,Q,B,Y,J,C,X,G){try{c(Q,g6),c(B,IY),c(Y,J0),c(J,j0),j.rawdynamicraycastvehiclecontroller_update_vehicle(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C,VQ(X)?4294967297:X>>>0,G0(G))}finally{VB[pB++]=void 0}}wheel_chassis_connection_point_cs(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_chassis_connection_point_cs(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}set_wheel_chassis_connection_point_cs(A,Q){c(Q,r),j.rawdynamicraycastvehiclecontroller_set_wheel_chassis_connection_point_cs(this.__wbg_ptr,A,Q.__wbg_ptr)}wheel_suspension_rest_length(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_suspension_rest_length(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_suspension_rest_length(A,Q){j.rawdynamicraycastvehiclecontroller_set_wheel_suspension_rest_length(this.__wbg_ptr,A,Q)}wheel_max_suspension_travel(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_max_suspension_travel(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_max_suspension_travel(A,Q){j.rawdynamicraycastvehiclecontroller_set_wheel_max_suspension_travel(this.__wbg_ptr,A,Q)}wheel_radius(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_radius(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_radius(A,Q){j.rawdynamicraycastvehiclecontroller_set_wheel_radius(this.__wbg_ptr,A,Q)}wheel_suspension_stiffness(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_suspension_stiffness(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_suspension_stiffness(A,Q){j.rawdynamicraycastvehiclecontroller_set_wheel_suspension_stiffness(this.__wbg_ptr,A,Q)}wheel_suspension_compression(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_suspension_compression(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_suspension_compression(A,Q){j.rawdynamicraycastvehiclecontroller_set_wheel_suspension_compression(this.__wbg_ptr,A,Q)}wheel_suspension_relaxation(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_suspension_relaxation(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_suspension_relaxation(A,Q){j.rawdynamicraycastvehiclecontroller_set_wheel_suspension_relaxation(this.__wbg_ptr,A,Q)}wheel_max_suspension_force(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_max_suspension_force(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_max_suspension_force(A,Q){j.rawdynamicraycastvehiclecontroller_set_wheel_max_suspension_force(this.__wbg_ptr,A,Q)}wheel_brake(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_brake(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_brake(A,Q){j.rawdynamicraycastvehiclecontroller_set_wheel_brake(this.__wbg_ptr,A,Q)}wheel_steering(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_steering(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_steering(A,Q){j.rawdynamicraycastvehiclecontroller_set_wheel_steering(this.__wbg_ptr,A,Q)}wheel_engine_force(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_engine_force(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_engine_force(A,Q){j.rawdynamicraycastvehiclecontroller_set_wheel_engine_force(this.__wbg_ptr,A,Q)}wheel_direction_cs(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_direction_cs(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}set_wheel_direction_cs(A,Q){c(Q,r),j.rawdynamicraycastvehiclecontroller_set_wheel_direction_cs(this.__wbg_ptr,A,Q.__wbg_ptr)}wheel_axle_cs(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_axle_cs(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}set_wheel_axle_cs(A,Q){c(Q,r),j.rawdynamicraycastvehiclecontroller_set_wheel_axle_cs(this.__wbg_ptr,A,Q.__wbg_ptr)}wheel_friction_slip(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_friction_slip(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_friction_slip(A,Q){j.rawdynamicraycastvehiclecontroller_set_wheel_friction_slip(this.__wbg_ptr,A,Q)}wheel_side_friction_stiffness(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_side_friction_stiffness(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_side_friction_stiffness(A,Q){j.rawdynamicraycastvehiclecontroller_set_wheel_side_friction_stiffness(this.__wbg_ptr,A,Q)}wheel_rotation(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_rotation(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}wheel_forward_impulse(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_forward_impulse(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}wheel_side_impulse(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_side_impulse(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}wheel_suspension_force(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_suspension_force(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}wheel_contact_normal_ws(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_contact_normal_ws(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}wheel_contact_point_ws(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_contact_point_ws(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}wheel_suspension_length(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_suspension_length(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}wheel_hard_point_ws(A){let Q=j.rawdynamicraycastvehiclecontroller_wheel_hard_point_ws(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}wheel_is_in_contact(A){return j.rawdynamicraycastvehiclecontroller_wheel_is_in_contact(this.__wbg_ptr,A)!==0}wheel_ground_object(A){try{let Y=j.__wbindgen_add_to_stack_pointer(-16);j.rawdynamicraycastvehiclecontroller_wheel_ground_object(Y,this.__wbg_ptr,A);var Q=VY().getInt32(Y+0,!0),B=VY().getFloat64(Y+8,!0);return Q===0?void 0:B}finally{j.__wbindgen_add_to_stack_pointer(16)}}}var Yt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_raweventqueue_free(A>>>0,1));class X_{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Yt.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_raweventqueue_free(A,0)}constructor(A){let Q=j.raweventqueue_new(A);return this.__wbg_ptr=Q>>>0,Yt.register(this,this.__wbg_ptr,this),this}drainCollisionEvents(A){try{j.raweventqueue_drainCollisionEvents(this.__wbg_ptr,G0(A))}finally{VB[pB++]=void 0}}drainContactForceEvents(A){try{j.raweventqueue_drainContactForceEvents(this.__wbg_ptr,G0(A))}finally{VB[pB++]=void 0}}clear(){j.raweventqueue_clear(this.__wbg_ptr)}}var Jt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawgenericjoint_free(A>>>0,1));class gY{static __wrap(A){A>>>=0;let Q=Object.create(gY.prototype);return Q.__wbg_ptr=A,Jt.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Jt.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawgenericjoint_free(A,0)}static generic(A,Q,B,Y){c(A,r),c(Q,r),c(B,r);let J=j.rawgenericjoint_generic(A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y);return J===0?void 0:gY.__wrap(J)}static spring(A,Q,B,Y,J){c(Y,r),c(J,r);let C=j.rawgenericjoint_spring(A,Q,B,Y.__wbg_ptr,J.__wbg_ptr);return gY.__wrap(C)}static rope(A,Q,B){c(Q,r),c(B,r);let Y=j.rawgenericjoint_rope(A,Q.__wbg_ptr,B.__wbg_ptr);return gY.__wrap(Y)}static spherical(A,Q){c(A,r),c(Q,r);let B=j.rawgenericjoint_spherical(A.__wbg_ptr,Q.__wbg_ptr);return gY.__wrap(B)}static prismatic(A,Q,B,Y,J,C){c(A,r),c(Q,r),c(B,r);let X=j.rawgenericjoint_prismatic(A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y,J,C);return X===0?void 0:gY.__wrap(X)}static fixed(A,Q,B,Y){c(A,r),c(Q,AB),c(B,r),c(Y,AB);let J=j.rawgenericjoint_fixed(A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr);return gY.__wrap(J)}static revolute(A,Q,B){c(A,r),c(Q,r),c(B,r);let Y=j.rawgenericjoint_revolute(A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr);return Y===0?void 0:gY.__wrap(Y)}}var xk=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawimpulsejointset_free(A>>>0,1));class x6{static __wrap(A){A>>>=0;let Q=Object.create(x6.prototype);return Q.__wbg_ptr=A,xk.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,xk.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawimpulsejointset_free(A,0)}jointType(A){return j.rawimpulsejointset_jointType(this.__wbg_ptr,A)}jointBodyHandle1(A){return j.rawimpulsejointset_jointBodyHandle1(this.__wbg_ptr,A)}jointBodyHandle2(A){return j.rawimpulsejointset_jointBodyHandle2(this.__wbg_ptr,A)}jointFrameX1(A){let Q=j.rawimpulsejointset_jointFrameX1(this.__wbg_ptr,A);return AB.__wrap(Q)}jointFrameX2(A){let Q=j.rawimpulsejointset_jointFrameX2(this.__wbg_ptr,A);return AB.__wrap(Q)}jointAnchor1(A){let Q=j.rawimpulsejointset_jointAnchor1(this.__wbg_ptr,A);return r.__wrap(Q)}jointAnchor2(A){let Q=j.rawimpulsejointset_jointAnchor2(this.__wbg_ptr,A);return r.__wrap(Q)}jointSetAnchor1(A,Q){c(Q,r),j.rawimpulsejointset_jointSetAnchor1(this.__wbg_ptr,A,Q.__wbg_ptr)}jointSetAnchor2(A,Q){c(Q,r),j.rawimpulsejointset_jointSetAnchor2(this.__wbg_ptr,A,Q.__wbg_ptr)}jointContactsEnabled(A){return j.rawimpulsejointset_jointContactsEnabled(this.__wbg_ptr,A)!==0}jointSetContactsEnabled(A,Q){j.rawimpulsejointset_jointSetContactsEnabled(this.__wbg_ptr,A,Q)}jointLimitsEnabled(A,Q){return j.rawimpulsejointset_jointLimitsEnabled(this.__wbg_ptr,A,Q)!==0}jointLimitsMin(A,Q){return j.rawimpulsejointset_jointLimitsMin(this.__wbg_ptr,A,Q)}jointLimitsMax(A,Q){return j.rawimpulsejointset_jointLimitsMax(this.__wbg_ptr,A,Q)}jointSetLimits(A,Q,B,Y){j.rawimpulsejointset_jointSetLimits(this.__wbg_ptr,A,Q,B,Y)}jointConfigureMotorModel(A,Q,B){j.rawimpulsejointset_jointConfigureMotorModel(this.__wbg_ptr,A,Q,B)}jointConfigureMotorVelocity(A,Q,B,Y){j.rawimpulsejointset_jointConfigureMotorVelocity(this.__wbg_ptr,A,Q,B,Y)}jointConfigureMotorPosition(A,Q,B,Y,J){j.rawimpulsejointset_jointConfigureMotorPosition(this.__wbg_ptr,A,Q,B,Y,J)}jointConfigureMotor(A,Q,B,Y,J,C){j.rawimpulsejointset_jointConfigureMotor(this.__wbg_ptr,A,Q,B,Y,J,C)}constructor(){let A=j.rawimpulsejointset_new();return this.__wbg_ptr=A>>>0,xk.register(this,this.__wbg_ptr,this),this}createJoint(A,Q,B,Y){return c(A,gY),j.rawimpulsejointset_createJoint(this.__wbg_ptr,A.__wbg_ptr,Q,B,Y)}remove(A,Q){j.rawimpulsejointset_remove(this.__wbg_ptr,A,Q)}len(){return j.rawimpulsejointset_len(this.__wbg_ptr)>>>0}contains(A){return j.rawimpulsejointset_contains(this.__wbg_ptr,A)!==0}forEachJointHandle(A){try{j.rawimpulsejointset_forEachJointHandle(this.__wbg_ptr,G0(A))}finally{VB[pB++]=void 0}}forEachJointAttachedToRigidBody(A,Q){try{j.rawimpulsejointset_forEachJointAttachedToRigidBody(this.__wbg_ptr,A,G0(Q))}finally{VB[pB++]=void 0}}}var fk=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawintegrationparameters_free(A>>>0,1));class HW{static __wrap(A){A>>>=0;let Q=Object.create(HW.prototype);return Q.__wbg_ptr=A,fk.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,fk.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawintegrationparameters_free(A,0)}constructor(){let A=j.rawintegrationparameters_new();return this.__wbg_ptr=A>>>0,fk.register(this,this.__wbg_ptr,this),this}get dt(){return j.rawintegrationparameters_dt(this.__wbg_ptr)}get contact_erp(){return j.rawintegrationparameters_contact_erp(this.__wbg_ptr)}get normalizedAllowedLinearError(){return j.rawintegrationparameters_normalizedAllowedLinearError(this.__wbg_ptr)}get normalizedPredictionDistance(){return j.rawintegrationparameters_normalizedPredictionDistance(this.__wbg_ptr)}get numSolverIterations(){return j.rawintegrationparameters_numSolverIterations(this.__wbg_ptr)>>>0}get numInternalPgsIterations(){return j.rawdynamicraycastvehiclecontroller_index_up_axis(this.__wbg_ptr)>>>0}get minIslandSize(){return j.rawintegrationparameters_minIslandSize(this.__wbg_ptr)>>>0}get maxCcdSubsteps(){return j.rawintegrationparameters_maxCcdSubsteps(this.__wbg_ptr)>>>0}get lengthUnit(){return j.rawcontactforceevent_total_force_magnitude(this.__wbg_ptr)}set dt(A){j.rawintegrationparameters_set_dt(this.__wbg_ptr,A)}set contact_natural_frequency(A){j.rawintegrationparameters_set_contact_natural_frequency(this.__wbg_ptr,A)}set normalizedAllowedLinearError(A){j.rawintegrationparameters_set_normalizedAllowedLinearError(this.__wbg_ptr,A)}set normalizedPredictionDistance(A){j.rawintegrationparameters_set_normalizedPredictionDistance(this.__wbg_ptr,A)}set numSolverIterations(A){j.rawintegrationparameters_set_numSolverIterations(this.__wbg_ptr,A)}set numInternalPgsIterations(A){j.rawdynamicraycastvehiclecontroller_set_index_up_axis(this.__wbg_ptr,A)}set minIslandSize(A){j.rawintegrationparameters_set_minIslandSize(this.__wbg_ptr,A)}set maxCcdSubsteps(A){j.rawintegrationparameters_set_maxCcdSubsteps(this.__wbg_ptr,A)}set lengthUnit(A){j.rawintegrationparameters_set_lengthUnit(this.__wbg_ptr,A)}}var bk=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawislandmanager_free(A>>>0,1));class f6{static __wrap(A){A>>>=0;let Q=Object.create(f6.prototype);return Q.__wbg_ptr=A,bk.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,bk.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawislandmanager_free(A,0)}constructor(){let A=j.rawislandmanager_new();return this.__wbg_ptr=A>>>0,bk.register(this,this.__wbg_ptr,this),this}forEachActiveRigidBodyHandle(A){try{j.rawislandmanager_forEachActiveRigidBodyHandle(this.__wbg_ptr,G0(A))}finally{VB[pB++]=void 0}}}var Ct=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawkinematiccharactercontroller_free(A>>>0,1));class Rt{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Ct.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawkinematiccharactercontroller_free(A,0)}constructor(A){let Q=j.rawkinematiccharactercontroller_new(A);return this.__wbg_ptr=Q>>>0,Ct.register(this,this.__wbg_ptr,this),this}up(){let A=j.rawcharactercollision_translationDeltaApplied(this.__wbg_ptr);return r.__wrap(A)}setUp(A){c(A,r),j.rawkinematiccharactercontroller_setUp(this.__wbg_ptr,A.__wbg_ptr)}normalNudgeFactor(){return j.rawkinematiccharactercontroller_normalNudgeFactor(this.__wbg_ptr)}setNormalNudgeFactor(A){j.rawkinematiccharactercontroller_setNormalNudgeFactor(this.__wbg_ptr,A)}offset(){return j.rawkinematiccharactercontroller_offset(this.__wbg_ptr)}setOffset(A){j.rawkinematiccharactercontroller_setOffset(this.__wbg_ptr,A)}slideEnabled(){return j.rawkinematiccharactercontroller_slideEnabled(this.__wbg_ptr)!==0}setSlideEnabled(A){j.rawkinematiccharactercontroller_setSlideEnabled(this.__wbg_ptr,A)}autostepMaxHeight(){let A=j.rawkinematiccharactercontroller_autostepMaxHeight(this.__wbg_ptr);return A===4294967297?void 0:A}autostepMinWidth(){let A=j.rawkinematiccharactercontroller_autostepMinWidth(this.__wbg_ptr);return A===4294967297?void 0:A}autostepIncludesDynamicBodies(){let A=j.rawkinematiccharactercontroller_autostepIncludesDynamicBodies(this.__wbg_ptr);return A===16777215?void 0:A!==0}autostepEnabled(){return j.rawkinematiccharactercontroller_autostepEnabled(this.__wbg_ptr)!==0}enableAutostep(A,Q,B){j.rawkinematiccharactercontroller_enableAutostep(this.__wbg_ptr,A,Q,B)}disableAutostep(){j.rawkinematiccharactercontroller_disableAutostep(this.__wbg_ptr)}maxSlopeClimbAngle(){return j.rawkinematiccharactercontroller_maxSlopeClimbAngle(this.__wbg_ptr)}setMaxSlopeClimbAngle(A){j.rawkinematiccharactercontroller_setMaxSlopeClimbAngle(this.__wbg_ptr,A)}minSlopeSlideAngle(){return j.rawkinematiccharactercontroller_minSlopeSlideAngle(this.__wbg_ptr)}setMinSlopeSlideAngle(A){j.rawkinematiccharactercontroller_setMinSlopeSlideAngle(this.__wbg_ptr,A)}snapToGroundDistance(){let A=j.rawkinematiccharactercontroller_snapToGroundDistance(this.__wbg_ptr);return A===4294967297?void 0:A}enableSnapToGround(A){j.rawkinematiccharactercontroller_enableSnapToGround(this.__wbg_ptr,A)}disableSnapToGround(){j.rawkinematiccharactercontroller_disableSnapToGround(this.__wbg_ptr)}snapToGroundEnabled(){return j.rawkinematiccharactercontroller_snapToGroundEnabled(this.__wbg_ptr)!==0}computeColliderMovement(A,Q,B,Y,J,C,X,G,F,W,Z,U){try{c(Q,g6),c(B,IY),c(Y,J0),c(J,j0),c(X,r),j.rawkinematiccharactercontroller_computeColliderMovement(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C,X.__wbg_ptr,G,VQ(F)?4294967297:Math.fround(F),W,VQ(Z)?4294967297:Z>>>0,G0(U))}finally{VB[pB++]=void 0}}computedMovement(){let A=j.rawkinematiccharactercontroller_computedMovement(this.__wbg_ptr);return r.__wrap(A)}computedGrounded(){return j.rawkinematiccharactercontroller_computedGrounded(this.__wbg_ptr)!==0}numComputedCollisions(){return j.rawkinematiccharactercontroller_numComputedCollisions(this.__wbg_ptr)>>>0}computedCollision(A,Q){return c(Q,Q_),j.rawkinematiccharactercontroller_computedCollision(this.__wbg_ptr,A,Q.__wbg_ptr)!==0}}var mk=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawmultibodyjointset_free(A>>>0,1));class b6{static __wrap(A){A>>>=0;let Q=Object.create(b6.prototype);return Q.__wbg_ptr=A,mk.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,mk.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawmultibodyjointset_free(A,0)}jointType(A){return j.rawmultibodyjointset_jointType(this.__wbg_ptr,A)}jointFrameX1(A){let Q=j.rawmultibodyjointset_jointFrameX1(this.__wbg_ptr,A);return AB.__wrap(Q)}jointFrameX2(A){let Q=j.rawmultibodyjointset_jointFrameX2(this.__wbg_ptr,A);return AB.__wrap(Q)}jointAnchor1(A){let Q=j.rawmultibodyjointset_jointAnchor1(this.__wbg_ptr,A);return r.__wrap(Q)}jointAnchor2(A){let Q=j.rawmultibodyjointset_jointAnchor2(this.__wbg_ptr,A);return r.__wrap(Q)}jointContactsEnabled(A){return j.rawmultibodyjointset_jointContactsEnabled(this.__wbg_ptr,A)!==0}jointSetContactsEnabled(A,Q){j.rawmultibodyjointset_jointSetContactsEnabled(this.__wbg_ptr,A,Q)}jointLimitsEnabled(A,Q){return j.rawmultibodyjointset_jointLimitsEnabled(this.__wbg_ptr,A,Q)!==0}jointLimitsMin(A,Q){return j.rawmultibodyjointset_jointLimitsMin(this.__wbg_ptr,A,Q)}jointLimitsMax(A,Q){return j.rawmultibodyjointset_jointLimitsMax(this.__wbg_ptr,A,Q)}constructor(){let A=j.rawmultibodyjointset_new();return this.__wbg_ptr=A>>>0,mk.register(this,this.__wbg_ptr,this),this}createJoint(A,Q,B,Y){return c(A,gY),j.rawmultibodyjointset_createJoint(this.__wbg_ptr,A.__wbg_ptr,Q,B,Y)}remove(A,Q){j.rawmultibodyjointset_remove(this.__wbg_ptr,A,Q)}contains(A){return j.rawmultibodyjointset_contains(this.__wbg_ptr,A)!==0}forEachJointHandle(A){try{j.rawmultibodyjointset_forEachJointHandle(this.__wbg_ptr,G0(A))}finally{VB[pB++]=void 0}}forEachJointAttachedToRigidBody(A,Q){try{j.rawmultibodyjointset_forEachJointAttachedToRigidBody(this.__wbg_ptr,A,G0(Q))}finally{VB[pB++]=void 0}}}var uk=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawnarrowphase_free(A>>>0,1));class IY{static __wrap(A){A>>>=0;let Q=Object.create(IY.prototype);return Q.__wbg_ptr=A,uk.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,uk.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawnarrowphase_free(A,0)}constructor(){let A=j.rawnarrowphase_new();return this.__wbg_ptr=A>>>0,uk.register(this,this.__wbg_ptr,this),this}contact_pairs_with(A,Q){j.rawnarrowphase_contact_pairs_with(this.__wbg_ptr,A,lB(Q))}contact_pair(A,Q){let B=j.rawnarrowphase_contact_pair(this.__wbg_ptr,A,Q);return B===0?void 0:J_.__wrap(B)}intersection_pairs_with(A,Q){j.rawnarrowphase_intersection_pairs_with(this.__wbg_ptr,A,lB(Q))}intersection_pair(A,Q){return j.rawnarrowphase_intersection_pair(this.__wbg_ptr,A,Q)!==0}}var Xt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawphysicspipeline_free(A>>>0,1));class wt{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Xt.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawphysicspipeline_free(A,0)}constructor(){let A=j.rawphysicspipeline_new();return this.__wbg_ptr=A>>>0,Xt.register(this,this.__wbg_ptr,this),this}set_profiler_enabled(A){j.rawphysicspipeline_set_profiler_enabled(this.__wbg_ptr,A)}is_profiler_enabled(){return j.rawphysicspipeline_is_profiler_enabled(this.__wbg_ptr)!==0}timing_step(){return j.rawphysicspipeline_timing_step(this.__wbg_ptr)}timing_collision_detection(){return j.rawphysicspipeline_timing_collision_detection(this.__wbg_ptr)}timing_broad_phase(){return j.rawphysicspipeline_timing_broad_phase(this.__wbg_ptr)}timing_narrow_phase(){return j.rawphysicspipeline_timing_narrow_phase(this.__wbg_ptr)}timing_solver(){return j.rawphysicspipeline_timing_solver(this.__wbg_ptr)}timing_velocity_assembly(){return j.rawphysicspipeline_timing_velocity_assembly(this.__wbg_ptr)}timing_velocity_resolution(){return j.rawphysicspipeline_timing_velocity_resolution(this.__wbg_ptr)}timing_velocity_update(){return j.rawphysicspipeline_timing_velocity_update(this.__wbg_ptr)}timing_velocity_writeback(){return j.rawphysicspipeline_timing_velocity_writeback(this.__wbg_ptr)}timing_ccd(){return j.rawphysicspipeline_timing_ccd(this.__wbg_ptr)}timing_ccd_toi_computation(){return j.rawphysicspipeline_timing_ccd_toi_computation(this.__wbg_ptr)}timing_ccd_broad_phase(){return j.rawphysicspipeline_timing_ccd_broad_phase(this.__wbg_ptr)}timing_ccd_narrow_phase(){return j.rawphysicspipeline_timing_ccd_narrow_phase(this.__wbg_ptr)}timing_ccd_solver(){return j.rawphysicspipeline_timing_ccd_solver(this.__wbg_ptr)}timing_island_construction(){return j.rawphysicspipeline_timing_island_construction(this.__wbg_ptr)}timing_user_changes(){return j.rawphysicspipeline_timing_user_changes(this.__wbg_ptr)}step(A,Q,B,Y,J,C,X,G,F,W){c(A,r),c(Q,HW),c(B,f6),c(Y,g6),c(J,IY),c(C,J0),c(X,j0),c(G,x6),c(F,b6),c(W,WM),j.rawphysicspipeline_step(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C.__wbg_ptr,X.__wbg_ptr,G.__wbg_ptr,F.__wbg_ptr,W.__wbg_ptr)}stepWithEvents(A,Q,B,Y,J,C,X,G,F,W,Z,U,$,E){c(A,r),c(Q,HW),c(B,f6),c(Y,g6),c(J,IY),c(C,J0),c(X,j0),c(G,x6),c(F,b6),c(W,WM),c(Z,X_),j.rawphysicspipeline_stepWithEvents(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C.__wbg_ptr,X.__wbg_ptr,G.__wbg_ptr,F.__wbg_ptr,W.__wbg_ptr,Z.__wbg_ptr,lB(U),lB($),lB(E))}}var Gt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawpidcontroller_free(A>>>0,1));class jt{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Gt.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawpidcontroller_free(A,0)}constructor(A,Q,B,Y){let J=j.rawpidcontroller_new(A,Q,B,Y);return this.__wbg_ptr=J>>>0,Gt.register(this,this.__wbg_ptr,this),this}set_kp(A,Q){j.rawpidcontroller_set_kp(this.__wbg_ptr,A,Q)}set_ki(A,Q){j.rawpidcontroller_set_ki(this.__wbg_ptr,A,Q)}set_kd(A,Q){j.rawpidcontroller_set_kd(this.__wbg_ptr,A,Q)}set_axes_mask(A){j.rawpidcontroller_set_axes_mask(this.__wbg_ptr,A)}reset_integrals(){j.rawpidcontroller_reset_integrals(this.__wbg_ptr)}apply_linear_correction(A,Q,B,Y,J){c(Q,J0),c(Y,r),c(J,r),j.rawpidcontroller_apply_linear_correction(this.__wbg_ptr,A,Q.__wbg_ptr,B,Y.__wbg_ptr,J.__wbg_ptr)}apply_angular_correction(A,Q,B,Y,J){c(Q,J0),c(Y,AB),c(J,r),j.rawpidcontroller_apply_angular_correction(this.__wbg_ptr,A,Q.__wbg_ptr,B,Y.__wbg_ptr,J.__wbg_ptr)}linear_correction(A,Q,B,Y,J){c(Q,J0),c(Y,r),c(J,r);let C=j.rawpidcontroller_linear_correction(this.__wbg_ptr,A,Q.__wbg_ptr,B,Y.__wbg_ptr,J.__wbg_ptr);return r.__wrap(C)}angular_correction(A,Q,B,Y,J){c(Q,J0),c(Y,AB),c(J,r);let C=j.rawpidcontroller_angular_correction(this.__wbg_ptr,A,Q.__wbg_ptr,B,Y.__wbg_ptr,J.__wbg_ptr);return r.__wrap(C)}}var Ft=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawpointcolliderprojection_free(A>>>0,1));class ZM{static __wrap(A){A>>>=0;let Q=Object.create(ZM.prototype);return Q.__wbg_ptr=A,Ft.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Ft.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawpointcolliderprojection_free(A,0)}colliderHandle(){return j.rawpointcolliderprojection_colliderHandle(this.__wbg_ptr)}point(){let A=j.rawpointcolliderprojection_point(this.__wbg_ptr);return r.__wrap(A)}isInside(){return j.rawpointcolliderprojection_isInside(this.__wbg_ptr)!==0}featureType(){return j.rawpointcolliderprojection_featureType(this.__wbg_ptr)}featureId(){let A=j.rawpointcolliderprojection_featureId(this.__wbg_ptr);return A===4294967297?void 0:A}}var Wt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawpointprojection_free(A>>>0,1));class MM{static __wrap(A){A>>>=0;let Q=Object.create(MM.prototype);return Q.__wbg_ptr=A,Wt.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Wt.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawpointprojection_free(A,0)}point(){let A=j.rawpointprojection_point(this.__wbg_ptr);return r.__wrap(A)}isInside(){return j.rawpointprojection_isInside(this.__wbg_ptr)!==0}}var Zt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawraycolliderhit_free(A>>>0,1));class G_{static __wrap(A){A>>>=0;let Q=Object.create(G_.prototype);return Q.__wbg_ptr=A,Zt.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Zt.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawraycolliderhit_free(A,0)}colliderHandle(){return j.rawcharactercollision_handle(this.__wbg_ptr)}timeOfImpact(){return j.rawcollidershapecasthit_time_of_impact(this.__wbg_ptr)}}var $t=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawraycolliderintersection_free(A>>>0,1));class zM{static __wrap(A){A>>>=0;let Q=Object.create(zM.prototype);return Q.__wbg_ptr=A,$t.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,$t.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawraycolliderintersection_free(A,0)}colliderHandle(){return j.rawpointcolliderprojection_colliderHandle(this.__wbg_ptr)}normal(){let A=j.rawcollidershapecasthit_witness1(this.__wbg_ptr);return r.__wrap(A)}time_of_impact(){return j.rawcollidershapecasthit_time_of_impact(this.__wbg_ptr)}featureType(){return j.rawpointcolliderprojection_featureType(this.__wbg_ptr)}featureId(){let A=j.rawpointcolliderprojection_featureId(this.__wbg_ptr);return A===4294967297?void 0:A}}var Ut=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawrayintersection_free(A>>>0,1));class RM{static __wrap(A){A>>>=0;let Q=Object.create(RM.prototype);return Q.__wbg_ptr=A,Ut.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Ut.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawrayintersection_free(A,0)}normal(){let A=j.rawcollidershapecasthit_witness1(this.__wbg_ptr);return r.__wrap(A)}time_of_impact(){return j.rawcollidershapecasthit_time_of_impact(this.__wbg_ptr)}featureType(){return j.rawpointcolliderprojection_featureType(this.__wbg_ptr)}featureId(){let A=j.rawpointcolliderprojection_featureId(this.__wbg_ptr);return A===4294967297?void 0:A}}var dk=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawrigidbodyset_free(A>>>0,1));class J0{static __wrap(A){A>>>=0;let Q=Object.create(J0.prototype);return Q.__wbg_ptr=A,dk.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,dk.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawrigidbodyset_free(A,0)}rbTranslation(A){let Q=j.rawrigidbodyset_rbTranslation(this.__wbg_ptr,A);return r.__wrap(Q)}rbRotation(A){let Q=j.rawrigidbodyset_rbRotation(this.__wbg_ptr,A);return AB.__wrap(Q)}rbSleep(A){j.rawrigidbodyset_rbSleep(this.__wbg_ptr,A)}rbIsSleeping(A){return j.rawrigidbodyset_rbIsSleeping(this.__wbg_ptr,A)!==0}rbIsMoving(A){return j.rawrigidbodyset_rbIsMoving(this.__wbg_ptr,A)!==0}rbNextTranslation(A){let Q=j.rawrigidbodyset_rbNextTranslation(this.__wbg_ptr,A);return r.__wrap(Q)}rbNextRotation(A){let Q=j.rawrigidbodyset_rbNextRotation(this.__wbg_ptr,A);return AB.__wrap(Q)}rbSetTranslation(A,Q,B,Y,J){j.rawrigidbodyset_rbSetTranslation(this.__wbg_ptr,A,Q,B,Y,J)}rbSetRotation(A,Q,B,Y,J,C){j.rawrigidbodyset_rbSetRotation(this.__wbg_ptr,A,Q,B,Y,J,C)}rbSetLinvel(A,Q,B){c(Q,r),j.rawrigidbodyset_rbSetLinvel(this.__wbg_ptr,A,Q.__wbg_ptr,B)}rbSetAngvel(A,Q,B){c(Q,r),j.rawrigidbodyset_rbSetAngvel(this.__wbg_ptr,A,Q.__wbg_ptr,B)}rbSetNextKinematicTranslation(A,Q,B,Y){j.rawrigidbodyset_rbSetNextKinematicTranslation(this.__wbg_ptr,A,Q,B,Y)}rbSetNextKinematicRotation(A,Q,B,Y,J){j.rawrigidbodyset_rbSetNextKinematicRotation(this.__wbg_ptr,A,Q,B,Y,J)}rbRecomputeMassPropertiesFromColliders(A,Q){c(Q,j0),j.rawrigidbodyset_rbRecomputeMassPropertiesFromColliders(this.__wbg_ptr,A,Q.__wbg_ptr)}rbSetAdditionalMass(A,Q,B){j.rawrigidbodyset_rbSetAdditionalMass(this.__wbg_ptr,A,Q,B)}rbSetAdditionalMassProperties(A,Q,B,Y,J,C){c(B,r),c(Y,r),c(J,AB),j.rawrigidbodyset_rbSetAdditionalMassProperties(this.__wbg_ptr,A,Q,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C)}rbLinvel(A){let Q=j.rawrigidbodyset_rbLinvel(this.__wbg_ptr,A);return r.__wrap(Q)}rbAngvel(A){let Q=j.rawrigidbodyset_rbAngvel(this.__wbg_ptr,A);return r.__wrap(Q)}rbVelocityAtPoint(A,Q){c(Q,r);let B=j.rawrigidbodyset_rbVelocityAtPoint(this.__wbg_ptr,A,Q.__wbg_ptr);return r.__wrap(B)}rbLockTranslations(A,Q,B){j.rawrigidbodyset_rbLockTranslations(this.__wbg_ptr,A,Q,B)}rbSetEnabledTranslations(A,Q,B,Y,J){j.rawrigidbodyset_rbSetEnabledTranslations(this.__wbg_ptr,A,Q,B,Y,J)}rbLockRotations(A,Q,B){j.rawrigidbodyset_rbLockRotations(this.__wbg_ptr,A,Q,B)}rbSetEnabledRotations(A,Q,B,Y,J){j.rawrigidbodyset_rbSetEnabledRotations(this.__wbg_ptr,A,Q,B,Y,J)}rbDominanceGroup(A){return j.rawrigidbodyset_rbDominanceGroup(this.__wbg_ptr,A)}rbSetDominanceGroup(A,Q){j.rawrigidbodyset_rbSetDominanceGroup(this.__wbg_ptr,A,Q)}rbEnableCcd(A,Q){j.rawrigidbodyset_rbEnableCcd(this.__wbg_ptr,A,Q)}rbSetSoftCcdPrediction(A,Q){j.rawrigidbodyset_rbSetSoftCcdPrediction(this.__wbg_ptr,A,Q)}rbMass(A){return j.rawrigidbodyset_rbMass(this.__wbg_ptr,A)}rbInvMass(A){return j.rawrigidbodyset_rbInvMass(this.__wbg_ptr,A)}rbEffectiveInvMass(A){let Q=j.rawrigidbodyset_rbEffectiveInvMass(this.__wbg_ptr,A);return r.__wrap(Q)}rbLocalCom(A){let Q=j.rawrigidbodyset_rbLocalCom(this.__wbg_ptr,A);return r.__wrap(Q)}rbWorldCom(A){let Q=j.rawrigidbodyset_rbWorldCom(this.__wbg_ptr,A);return r.__wrap(Q)}rbInvPrincipalInertia(A){let Q=j.rawrigidbodyset_rbInvPrincipalInertia(this.__wbg_ptr,A);return r.__wrap(Q)}rbPrincipalInertiaLocalFrame(A){let Q=j.rawrigidbodyset_rbPrincipalInertiaLocalFrame(this.__wbg_ptr,A);return AB.__wrap(Q)}rbPrincipalInertia(A){let Q=j.rawrigidbodyset_rbPrincipalInertia(this.__wbg_ptr,A);return r.__wrap(Q)}rbEffectiveWorldInvInertia(A){let Q=j.rawrigidbodyset_rbEffectiveWorldInvInertia(this.__wbg_ptr,A);return $M.__wrap(Q)}rbEffectiveAngularInertia(A){let Q=j.rawrigidbodyset_rbEffectiveAngularInertia(this.__wbg_ptr,A);return $M.__wrap(Q)}rbWakeUp(A){j.rawrigidbodyset_rbWakeUp(this.__wbg_ptr,A)}rbIsCcdEnabled(A){return j.rawrigidbodyset_rbIsCcdEnabled(this.__wbg_ptr,A)!==0}rbSoftCcdPrediction(A){return j.rawrigidbodyset_rbSoftCcdPrediction(this.__wbg_ptr,A)}rbNumColliders(A){return j.rawrigidbodyset_rbNumColliders(this.__wbg_ptr,A)>>>0}rbCollider(A,Q){return j.rawrigidbodyset_rbCollider(this.__wbg_ptr,A,Q)}rbBodyType(A){return j.rawrigidbodyset_rbBodyType(this.__wbg_ptr,A)}rbSetBodyType(A,Q,B){j.rawrigidbodyset_rbSetBodyType(this.__wbg_ptr,A,Q,B)}rbIsFixed(A){return j.rawrigidbodyset_rbIsFixed(this.__wbg_ptr,A)!==0}rbIsKinematic(A){return j.rawrigidbodyset_rbIsKinematic(this.__wbg_ptr,A)!==0}rbIsDynamic(A){return j.rawrigidbodyset_rbIsDynamic(this.__wbg_ptr,A)!==0}rbLinearDamping(A){return j.rawrigidbodyset_rbLinearDamping(this.__wbg_ptr,A)}rbAngularDamping(A){return j.rawrigidbodyset_rbAngularDamping(this.__wbg_ptr,A)}rbSetLinearDamping(A,Q){j.rawrigidbodyset_rbSetLinearDamping(this.__wbg_ptr,A,Q)}rbSetAngularDamping(A,Q){j.rawrigidbodyset_rbSetAngularDamping(this.__wbg_ptr,A,Q)}rbSetEnabled(A,Q){j.rawrigidbodyset_rbSetEnabled(this.__wbg_ptr,A,Q)}rbIsEnabled(A){return j.rawrigidbodyset_rbIsEnabled(this.__wbg_ptr,A)!==0}rbGravityScale(A){return j.rawrigidbodyset_rbGravityScale(this.__wbg_ptr,A)}rbSetGravityScale(A,Q,B){j.rawrigidbodyset_rbSetGravityScale(this.__wbg_ptr,A,Q,B)}rbResetForces(A,Q){j.rawrigidbodyset_rbResetForces(this.__wbg_ptr,A,Q)}rbResetTorques(A,Q){j.rawrigidbodyset_rbResetTorques(this.__wbg_ptr,A,Q)}rbAddForce(A,Q,B){c(Q,r),j.rawrigidbodyset_rbAddForce(this.__wbg_ptr,A,Q.__wbg_ptr,B)}rbApplyImpulse(A,Q,B){c(Q,r),j.rawrigidbodyset_rbApplyImpulse(this.__wbg_ptr,A,Q.__wbg_ptr,B)}rbAddTorque(A,Q,B){c(Q,r),j.rawrigidbodyset_rbAddTorque(this.__wbg_ptr,A,Q.__wbg_ptr,B)}rbApplyTorqueImpulse(A,Q,B){c(Q,r),j.rawrigidbodyset_rbApplyTorqueImpulse(this.__wbg_ptr,A,Q.__wbg_ptr,B)}rbAddForceAtPoint(A,Q,B,Y){c(Q,r),c(B,r),j.rawrigidbodyset_rbAddForceAtPoint(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y)}rbApplyImpulseAtPoint(A,Q,B,Y){c(Q,r),c(B,r),j.rawrigidbodyset_rbApplyImpulseAtPoint(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y)}rbAdditionalSolverIterations(A){return j.rawrigidbodyset_rbAdditionalSolverIterations(this.__wbg_ptr,A)>>>0}rbSetAdditionalSolverIterations(A,Q){j.rawrigidbodyset_rbSetAdditionalSolverIterations(this.__wbg_ptr,A,Q)}rbUserData(A){return j.rawrigidbodyset_rbUserData(this.__wbg_ptr,A)>>>0}rbSetUserData(A,Q){j.rawrigidbodyset_rbSetUserData(this.__wbg_ptr,A,Q)}rbUserForce(A){let Q=j.rawrigidbodyset_rbUserForce(this.__wbg_ptr,A);return r.__wrap(Q)}rbUserTorque(A){let Q=j.rawrigidbodyset_rbUserTorque(this.__wbg_ptr,A);return r.__wrap(Q)}constructor(){let A=j.rawrigidbodyset_new();return this.__wbg_ptr=A>>>0,dk.register(this,this.__wbg_ptr,this),this}createRigidBody(A,Q,B,Y,J,C,X,G,F,W,Z,U,$,E,K,I,V,H,D,L,z,M,N,q,w,P){return c(Q,r),c(B,AB),c(X,r),c(G,r),c(F,r),c(W,r),c(Z,AB),j.rawrigidbodyset_createRigidBody(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y,J,C,X.__wbg_ptr,G.__wbg_ptr,F.__wbg_ptr,W.__wbg_ptr,Z.__wbg_ptr,U,$,E,K,I,V,H,D,L,z,M,N,q,w,P)}remove(A,Q,B,Y,J){c(Q,f6),c(B,j0),c(Y,x6),c(J,b6),j.rawrigidbodyset_remove(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr)}len(){return j.rawrigidbodyset_len(this.__wbg_ptr)>>>0}contains(A){return j.rawrigidbodyset_contains(this.__wbg_ptr,A)!==0}forEachRigidBodyHandle(A){try{j.rawrigidbodyset_forEachRigidBodyHandle(this.__wbg_ptr,G0(A))}finally{VB[pB++]=void 0}}propagateModifiedBodyPositionsToColliders(A){c(A,j0),j.rawrigidbodyset_propagateModifiedBodyPositionsToColliders(this.__wbg_ptr,A.__wbg_ptr)}}var ck=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawrotation_free(A>>>0,1));class AB{static __wrap(A){A>>>=0;let Q=Object.create(AB.prototype);return Q.__wbg_ptr=A,ck.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,ck.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawrotation_free(A,0)}constructor(A,Q,B,Y){let J=j.rawrotation_new(A,Q,B,Y);return this.__wbg_ptr=J>>>0,ck.register(this,this.__wbg_ptr,this),this}static identity(){let A=j.rawrotation_identity();return AB.__wrap(A)}get x(){return j.rawintegrationparameters_dt(this.__wbg_ptr)}get y(){return j.rawkinematiccharactercontroller_offset(this.__wbg_ptr)}get z(){return j.rawcollidershapecasthit_time_of_impact(this.__wbg_ptr)}get w(){return j.rawrotation_w(this.__wbg_ptr)}}var Et=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawsdpmatrix3_free(A>>>0,1));class $M{static __wrap(A){A>>>=0;let Q=Object.create($M.prototype);return Q.__wbg_ptr=A,Et.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Et.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawsdpmatrix3_free(A,0)}elements(){return xV(j.rawsdpmatrix3_elements(this.__wbg_ptr))}}var Kt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawserializationpipeline_free(A>>>0,1));class Ot{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Kt.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawserializationpipeline_free(A,0)}constructor(){let A=j.rawccdsolver_new();return this.__wbg_ptr=A>>>0,Kt.register(this,this.__wbg_ptr,this),this}serializeAll(A,Q,B,Y,J,C,X,G,F){return c(A,r),c(Q,HW),c(B,f6),c(Y,g6),c(J,IY),c(C,J0),c(X,j0),c(G,x6),c(F,b6),xV(j.rawserializationpipeline_serializeAll(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C.__wbg_ptr,X.__wbg_ptr,G.__wbg_ptr,F.__wbg_ptr))}deserializeAll(A){let Q=j.rawserializationpipeline_deserializeAll(this.__wbg_ptr,lB(A));return Q===0?void 0:C_.__wrap(Q)}}var Vt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawshape_free(A>>>0,1));class UQ{static __wrap(A){A>>>=0;let Q=Object.create(UQ.prototype);return Q.__wbg_ptr=A,Vt.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Vt.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawshape_free(A,0)}static cuboid(A,Q,B){let Y=j.rawshape_cuboid(A,Q,B);return UQ.__wrap(Y)}static roundCuboid(A,Q,B,Y){let J=j.rawshape_roundCuboid(A,Q,B,Y);return UQ.__wrap(J)}static ball(A){let Q=j.rawshape_ball(A);return UQ.__wrap(Q)}static halfspace(A){c(A,r);let Q=j.rawshape_halfspace(A.__wbg_ptr);return UQ.__wrap(Q)}static capsule(A,Q){let B=j.rawshape_capsule(A,Q);return UQ.__wrap(B)}static cylinder(A,Q){let B=j.rawshape_cylinder(A,Q);return UQ.__wrap(B)}static roundCylinder(A,Q,B){let Y=j.rawshape_roundCylinder(A,Q,B);return UQ.__wrap(Y)}static cone(A,Q){let B=j.rawshape_cone(A,Q);return UQ.__wrap(B)}static roundCone(A,Q,B){let Y=j.rawshape_roundCone(A,Q,B);return UQ.__wrap(Y)}static voxels(A,Q){c(A,r);let B=SV(Q,j.__wbindgen_export_2),Y=fJ,J=j.rawshape_voxels(A.__wbg_ptr,B,Y);return UQ.__wrap(J)}static voxelsFromPoints(A,Q){c(A,r);let B=bG(Q,j.__wbindgen_export_2),Y=fJ,J=j.rawshape_voxelsFromPoints(A.__wbg_ptr,B,Y);return UQ.__wrap(J)}static polyline(A,Q){let B=bG(A,j.__wbindgen_export_2),Y=fJ,J=SV(Q,j.__wbindgen_export_2),C=fJ,X=j.rawshape_polyline(B,Y,J,C);return UQ.__wrap(X)}static trimesh(A,Q,B){let Y=bG(A,j.__wbindgen_export_2),J=fJ,C=SV(Q,j.__wbindgen_export_2),X=fJ,G=j.rawshape_trimesh(Y,J,C,X,B);return G===0?void 0:UQ.__wrap(G)}static heightfield(A,Q,B,Y,J){let C=bG(B,j.__wbindgen_export_2),X=fJ;c(Y,r);let G=j.rawshape_heightfield(A,Q,C,X,Y.__wbg_ptr,J);return UQ.__wrap(G)}static segment(A,Q){c(A,r),c(Q,r);let B=j.rawshape_segment(A.__wbg_ptr,Q.__wbg_ptr);return UQ.__wrap(B)}static triangle(A,Q,B){c(A,r),c(Q,r),c(B,r);let Y=j.rawshape_triangle(A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr);return UQ.__wrap(Y)}static roundTriangle(A,Q,B,Y){c(A,r),c(Q,r),c(B,r);let J=j.rawshape_roundTriangle(A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y);return UQ.__wrap(J)}static convexHull(A){let Q=bG(A,j.__wbindgen_export_2),B=fJ,Y=j.rawshape_convexHull(Q,B);return Y===0?void 0:UQ.__wrap(Y)}static roundConvexHull(A,Q){let B=bG(A,j.__wbindgen_export_2),Y=fJ,J=j.rawshape_roundConvexHull(B,Y,Q);return J===0?void 0:UQ.__wrap(J)}static convexMesh(A,Q){let B=bG(A,j.__wbindgen_export_2),Y=fJ,J=SV(Q,j.__wbindgen_export_2),C=fJ,X=j.rawshape_convexMesh(B,Y,J,C);return X===0?void 0:UQ.__wrap(X)}static roundConvexMesh(A,Q,B){let Y=bG(A,j.__wbindgen_export_2),J=fJ,C=SV(Q,j.__wbindgen_export_2),X=fJ,G=j.rawshape_roundConvexMesh(Y,J,C,X,B);return G===0?void 0:UQ.__wrap(G)}castShape(A,Q,B,Y,J,C,X,G,F,W){c(A,r),c(Q,AB),c(B,r),c(Y,UQ),c(J,r),c(C,AB),c(X,r);let Z=j.rawshape_castShape(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C.__wbg_ptr,X.__wbg_ptr,G,F,W);return Z===0?void 0:wM.__wrap(Z)}intersectsShape(A,Q,B,Y,J){return c(A,r),c(Q,AB),c(B,UQ),c(Y,r),c(J,AB),j.rawshape_intersectsShape(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr)!==0}contactShape(A,Q,B,Y,J,C){c(A,r),c(Q,AB),c(B,UQ),c(Y,r),c(J,AB);let X=j.rawshape_contactShape(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C);return X===0?void 0:fV.__wrap(X)}containsPoint(A,Q,B){return c(A,r),c(Q,AB),c(B,r),j.rawshape_containsPoint(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr)!==0}projectPoint(A,Q,B,Y){c(A,r),c(Q,AB),c(B,r);let J=j.rawshape_projectPoint(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y);return MM.__wrap(J)}intersectsRay(A,Q,B,Y,J){return c(A,r),c(Q,AB),c(B,r),c(Y,r),j.rawshape_intersectsRay(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J)!==0}castRay(A,Q,B,Y,J,C){return c(A,r),c(Q,AB),c(B,r),c(Y,r),j.rawshape_castRay(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J,C)}castRayAndGetNormal(A,Q,B,Y,J,C){c(A,r),c(Q,AB),c(B,r),c(Y,r);let X=j.rawshape_castRayAndGetNormal(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J,C);return X===0?void 0:RM.__wrap(X)}}var It=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawshapecasthit_free(A>>>0,1));class wM{static __wrap(A){A>>>=0;let Q=Object.create(wM.prototype);return Q.__wbg_ptr=A,It.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,It.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawshapecasthit_free(A,0)}time_of_impact(){return j.rawintegrationparameters_dt(this.__wbg_ptr)}witness1(){let A=j.rawshapecasthit_witness1(this.__wbg_ptr);return r.__wrap(A)}witness2(){let A=j.rawcontactforceevent_total_force(this.__wbg_ptr);return r.__wrap(A)}normal1(){let A=j.rawshapecasthit_normal1(this.__wbg_ptr);return r.__wrap(A)}normal2(){let A=j.rawshapecasthit_normal2(this.__wbg_ptr);return r.__wrap(A)}}var Ht=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawshapecontact_free(A>>>0,1));class fV{static __wrap(A){A>>>=0;let Q=Object.create(fV.prototype);return Q.__wbg_ptr=A,Ht.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Ht.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawshapecontact_free(A,0)}distance(){return j.rawkinematiccharactercontroller_maxSlopeClimbAngle(this.__wbg_ptr)}point1(){let A=j.rawpointprojection_point(this.__wbg_ptr);return r.__wrap(A)}point2(){let A=j.rawcollidershapecasthit_witness1(this.__wbg_ptr);return r.__wrap(A)}normal1(){let A=j.rawcollidershapecasthit_witness2(this.__wbg_ptr);return r.__wrap(A)}normal2(){let A=j.rawcharactercollision_translationDeltaApplied(this.__wbg_ptr);return r.__wrap(A)}}var lk=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>j.__wbg_rawvector_free(A>>>0,1));class r{static __wrap(A){A>>>=0;let Q=Object.create(r.prototype);return Q.__wbg_ptr=A,lk.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,lk.unregister(this),A}free(){let A=this.__destroy_into_raw();j.__wbg_rawvector_free(A,0)}static zero(){let A=j.rawvector_zero();return r.__wrap(A)}constructor(A,Q,B){let Y=j.rawvector_new(A,Q,B);return this.__wbg_ptr=Y>>>0,lk.register(this,this.__wbg_ptr,this),this}get x(){return j.rawintegrationparameters_dt(this.__wbg_ptr)}set x(A){j.rawintegrationparameters_set_dt(this.__wbg_ptr,A)}get y(){return j.rawkinematiccharactercontroller_offset(this.__wbg_ptr)}set y(A){j.rawvector_set_y(this.__wbg_ptr,A)}get z(){return j.rawcollidershapecasthit_time_of_impact(this.__wbg_ptr)}set z(A){j.rawvector_set_z(this.__wbg_ptr,A)}xyz(){let A=j.rawvector_xyz(this.__wbg_ptr);return r.__wrap(A)}yxz(){let A=j.rawvector_yxz(this.__wbg_ptr);return r.__wrap(A)}zxy(){let A=j.rawvector_zxy(this.__wbg_ptr);return r.__wrap(A)}xzy(){let A=j.rawvector_xzy(this.__wbg_ptr);return r.__wrap(A)}yzx(){let A=j.rawvector_yzx(this.__wbg_ptr);return r.__wrap(A)}zyx(){let A=j.rawvector_zyx(this.__wbg_ptr);return r.__wrap(A)}}async function Pt(A){if(j!==void 0)return j;A!==void 0&&(Object.getPrototypeOf(A)===Object.prototype?{module_or_path:A}=A:console.warn("using deprecated parameters for the initialization function; pass a single object instead")),A===void 0&&(A=new URL("rapier_wasm3d_bg.wasm",""));let Q=function(){let J={wbg:{}};return J.wbg.__wbg_bind_c8359b1cba058168=function(C,X,G,F){return lB($B(C).bind($B(X),$B(G),$B(F)))},J.wbg.__wbg_buffer_609cc3eee51ed158=function(C){return lB($B(C).buffer)},J.wbg.__wbg_call_672a4d21634d4a24=function(){return FM(function(C,X){return lB($B(C).call($B(X)))},arguments)},J.wbg.__wbg_call_7cccdd69e0791ae2=function(){return FM(function(C,X,G){return lB($B(C).call($B(X),$B(G)))},arguments)},J.wbg.__wbg_call_833bed5770ea2041=function(){return FM(function(C,X,G,F){return lB($B(C).call($B(X),$B(G),$B(F)))},arguments)},J.wbg.__wbg_call_b8adc8b1d0a0d8eb=function(){return FM(function(C,X,G,F,W){return lB($B(C).call($B(X),$B(G),$B(F),$B(W)))},arguments)},J.wbg.__wbg_length_3b4f022188ae8db6=function(C){return $B(C).length},J.wbg.__wbg_length_a446193dc22c12f8=function(C){return $B(C).length},J.wbg.__wbg_new_a12002a7f91c75be=function(C){return lB(new Uint8Array($B(C)))},J.wbg.__wbg_newnoargs_105ed471475aaf50=function(C,X){return lB(Function(pk(C,X)))},J.wbg.__wbg_newwithbyteoffsetandlength_d97e637ebe145a9a=function(C,X,G){return lB(new Uint8Array($B(C),X>>>0,G>>>0))},J.wbg.__wbg_newwithbyteoffsetandlength_e6b7e69acd4c7354=function(C,X,G){return lB(new Float32Array($B(C),X>>>0,G>>>0))},J.wbg.__wbg_newwithlength_5a5efe313cfd59f1=function(C){return lB(new Float32Array(C>>>0))},J.wbg.__wbg_now_2c95c9de01293173=function(C){return $B(C).now()},J.wbg.__wbg_performance_7a3ffd0b17f663ad=function(C){return lB($B(C).performance)},J.wbg.__wbg_rawcontactforceevent_new=function(C){return lB(B_.__wrap(C))},J.wbg.__wbg_rawraycolliderintersection_new=function(C){return lB(zM.__wrap(C))},J.wbg.__wbg_set_10bad9bee0e9c58b=function(C,X,G){$B(C).set($B(X),G>>>0)},J.wbg.__wbg_set_65595bdd868b3009=function(C,X,G){$B(C).set($B(X),G>>>0)},J.wbg.__wbg_static_accessor_GLOBAL_88a902d13a557d07=function(){let C=typeof global>"u"?null:global;return VQ(C)?0:lB(C)},J.wbg.__wbg_static_accessor_GLOBAL_THIS_56578be7e9f832b0=function(){let C=typeof globalThis>"u"?null:globalThis;return VQ(C)?0:lB(C)},J.wbg.__wbg_static_accessor_SELF_37c5d418e4bf5819=function(){let C=typeof self>"u"?null:self;return VQ(C)?0:lB(C)},J.wbg.__wbg_static_accessor_WINDOW_5de37043a91a9c40=function(){let C=typeof window>"u"?null:window;return VQ(C)?0:lB(C)},J.wbg.__wbindgen_boolean_get=function(C){let X=$B(C);return typeof X=="boolean"?X?1:0:2},J.wbg.__wbindgen_is_function=function(C){return typeof $B(C)=="function"},J.wbg.__wbindgen_is_undefined=function(C){return $B(C)===void 0},J.wbg.__wbindgen_memory=function(){return lB(j.memory)},J.wbg.__wbindgen_number_get=function(C,X){let G=$B(X),F=typeof G=="number"?G:void 0;VY().setFloat64(C+8,VQ(F)?0:F,!0),VY().setInt32(C+0,!VQ(F),!0)},J.wbg.__wbindgen_number_new=function(C){return lB(C)},J.wbg.__wbindgen_object_clone_ref=function(C){return lB($B(C))},J.wbg.__wbindgen_object_drop_ref=function(C){xV(C)},J.wbg.__wbindgen_throw=function(C,X){throw Error(pk(C,X))},J}();(typeof A=="string"||typeof Request=="function"&&A instanceof Request||typeof URL=="function"&&A instanceof URL)&&(A=fetch(A));let{instance:B,module:Y}=await async function(J,C){if(typeof Response=="function"&&J instanceof Response){if(typeof WebAssembly.instantiateStreaming=="function")try{return await WebAssembly.instantiateStreaming(J,C)}catch(G){if(J.headers.get("Content-Type")=="application/wasm")throw G;console.warn("`WebAssembly.instantiateStreaming` failed because your server does not serve Wasm with `application/wasm` MIME type. Falling back to `WebAssembly.instantiate` which is slower. Original error:\n",G)}let X=await J.arrayBuffer();return await WebAssembly.instantiate(X,C)}{let X=await WebAssembly.instantiate(J,C);return X instanceof WebAssembly.Instance?{instance:X,module:J}:X}}(await A,Q);return function(J,C){return j=J.exports,Pt.__wbindgen_wasm_module=C,VW=null,vV=null,_V=null,yV=null,kV=null,j}(B,Y)}class F_{constructor(A,Q,B){this.x=A,this.y=Q,this.z=B}}class a{static new(A,Q,B){return new F_(A,Q,B)}static intoRaw(A){return new r(A.x,A.y,A.z)}static zeros(){return a.new(0,0,0)}static fromRaw(A){if(!A)return null;let Q=a.new(A.x,A.y,A.z);return A.free(),Q}static copy(A,Q){A.x=Q.x,A.y=Q.y,A.z=Q.z}}class UM{constructor(A,Q,B,Y){this.x=A,this.y=Q,this.z=B,this.w=Y}}class gQ{static identity(){return new UM(0,0,0,1)}static fromRaw(A){if(!A)return null;let Q=new UM(A.x,A.y,A.z,A.w);return A.free(),Q}static intoRaw(A){return new AB(A.x,A.y,A.z,A.w)}static copy(A,Q){A.x=Q.x,A.y=Q.y,A.z=Q.z,A.w=Q.w}}class W_{constructor(A){this.elements=A}get m11(){return this.elements[0]}get m12(){return this.elements[1]}get m21(){return this.m12}get m13(){return this.elements[2]}get m31(){return this.m13}get m22(){return this.elements[3]}get m23(){return this.elements[4]}get m32(){return this.m23}get m33(){return this.elements[5]}}class EM{static fromRaw(A){let Q=new W_(A.elements());return A.free(),Q}}var FC,oY,ik,nk,bV,Z4,AY,sk,rk,ak,KM,VM,ok,tk,IM,IW;(function(A){A[A.Dynamic=0]="Dynamic",A[A.Fixed=1]="Fixed",A[A.KinematicPositionBased=2]="KinematicPositionBased",A[A.KinematicVelocityBased=3]="KinematicVelocityBased"})(FC||(FC={}));class HM{constructor(A,Q,B){this.rawSet=A,this.colliderSet=Q,this.handle=B}finalizeDeserialization(A){this.colliderSet=A}isValid(){return this.rawSet.contains(this.handle)}lockTranslations(A,Q){return this.rawSet.rbLockTranslations(this.handle,A,Q)}lockRotations(A,Q){return this.rawSet.rbLockRotations(this.handle,A,Q)}setEnabledTranslations(A,Q,B,Y){return this.rawSet.rbSetEnabledTranslations(this.handle,A,Q,B,Y)}restrictTranslations(A,Q,B,Y){this.setEnabledTranslations(A,Q,B,Y)}setEnabledRotations(A,Q,B,Y){return this.rawSet.rbSetEnabledRotations(this.handle,A,Q,B,Y)}restrictRotations(A,Q,B,Y){this.setEnabledRotations(A,Q,B,Y)}dominanceGroup(){return this.rawSet.rbDominanceGroup(this.handle)}setDominanceGroup(A){this.rawSet.rbSetDominanceGroup(this.handle,A)}additionalSolverIterations(){return this.rawSet.rbAdditionalSolverIterations(this.handle)}setAdditionalSolverIterations(A){this.rawSet.rbSetAdditionalSolverIterations(this.handle,A)}enableCcd(A){this.rawSet.rbEnableCcd(this.handle,A)}setSoftCcdPrediction(A){this.rawSet.rbSetSoftCcdPrediction(this.handle,A)}softCcdPrediction(){return this.rawSet.rbSoftCcdPrediction(this.handle)}translation(){let A=this.rawSet.rbTranslation(this.handle);return a.fromRaw(A)}rotation(){let A=this.rawSet.rbRotation(this.handle);return gQ.fromRaw(A)}nextTranslation(){let A=this.rawSet.rbNextTranslation(this.handle);return a.fromRaw(A)}nextRotation(){let A=this.rawSet.rbNextRotation(this.handle);return gQ.fromRaw(A)}setTranslation(A,Q){this.rawSet.rbSetTranslation(this.handle,A.x,A.y,A.z,Q)}setLinvel(A,Q){let B=a.intoRaw(A);this.rawSet.rbSetLinvel(this.handle,B,Q),B.free()}gravityScale(){return this.rawSet.rbGravityScale(this.handle)}setGravityScale(A,Q){this.rawSet.rbSetGravityScale(this.handle,A,Q)}setRotation(A,Q){this.rawSet.rbSetRotation(this.handle,A.x,A.y,A.z,A.w,Q)}setAngvel(A,Q){let B=a.intoRaw(A);this.rawSet.rbSetAngvel(this.handle,B,Q),B.free()}setNextKinematicTranslation(A){this.rawSet.rbSetNextKinematicTranslation(this.handle,A.x,A.y,A.z)}setNextKinematicRotation(A){this.rawSet.rbSetNextKinematicRotation(this.handle,A.x,A.y,A.z,A.w)}linvel(){return a.fromRaw(this.rawSet.rbLinvel(this.handle))}velocityAtPoint(A){let Q=a.intoRaw(A),B=a.fromRaw(this.rawSet.rbVelocityAtPoint(this.handle,Q));return Q.free(),B}angvel(){return a.fromRaw(this.rawSet.rbAngvel(this.handle))}mass(){return this.rawSet.rbMass(this.handle)}effectiveInvMass(){return a.fromRaw(this.rawSet.rbEffectiveInvMass(this.handle))}invMass(){return this.rawSet.rbInvMass(this.handle)}localCom(){return a.fromRaw(this.rawSet.rbLocalCom(this.handle))}worldCom(){return a.fromRaw(this.rawSet.rbWorldCom(this.handle))}invPrincipalInertia(){return a.fromRaw(this.rawSet.rbInvPrincipalInertia(this.handle))}principalInertia(){return a.fromRaw(this.rawSet.rbPrincipalInertia(this.handle))}principalInertiaLocalFrame(){return gQ.fromRaw(this.rawSet.rbPrincipalInertiaLocalFrame(this.handle))}effectiveWorldInvInertia(){return EM.fromRaw(this.rawSet.rbEffectiveWorldInvInertia(this.handle))}effectiveAngularInertia(){return EM.fromRaw(this.rawSet.rbEffectiveAngularInertia(this.handle))}sleep(){this.rawSet.rbSleep(this.handle)}wakeUp(){this.rawSet.rbWakeUp(this.handle)}isCcdEnabled(){return this.rawSet.rbIsCcdEnabled(this.handle)}numColliders(){return this.rawSet.rbNumColliders(this.handle)}collider(A){return this.colliderSet.get(this.rawSet.rbCollider(this.handle,A))}setEnabled(A){this.rawSet.rbSetEnabled(this.handle,A)}isEnabled(){return this.rawSet.rbIsEnabled(this.handle)}bodyType(){return this.rawSet.rbBodyType(this.handle)}setBodyType(A,Q){return this.rawSet.rbSetBodyType(this.handle,A,Q)}isSleeping(){return this.rawSet.rbIsSleeping(this.handle)}isMoving(){return this.rawSet.rbIsMoving(this.handle)}isFixed(){return this.rawSet.rbIsFixed(this.handle)}isKinematic(){return this.rawSet.rbIsKinematic(this.handle)}isDynamic(){return this.rawSet.rbIsDynamic(this.handle)}linearDamping(){return this.rawSet.rbLinearDamping(this.handle)}angularDamping(){return this.rawSet.rbAngularDamping(this.handle)}setLinearDamping(A){this.rawSet.rbSetLinearDamping(this.handle,A)}recomputeMassPropertiesFromColliders(){this.rawSet.rbRecomputeMassPropertiesFromColliders(this.handle,this.colliderSet.raw)}setAdditionalMass(A,Q){this.rawSet.rbSetAdditionalMass(this.handle,A,Q)}setAdditionalMassProperties(A,Q,B,Y,J){let C=a.intoRaw(Q),X=a.intoRaw(B),G=gQ.intoRaw(Y);this.rawSet.rbSetAdditionalMassProperties(this.handle,A,C,X,G,J),C.free(),X.free(),G.free()}setAngularDamping(A){this.rawSet.rbSetAngularDamping(this.handle,A)}resetForces(A){this.rawSet.rbResetForces(this.handle,A)}resetTorques(A){this.rawSet.rbResetTorques(this.handle,A)}addForce(A,Q){let B=a.intoRaw(A);this.rawSet.rbAddForce(this.handle,B,Q),B.free()}applyImpulse(A,Q){let B=a.intoRaw(A);this.rawSet.rbApplyImpulse(this.handle,B,Q),B.free()}addTorque(A,Q){let B=a.intoRaw(A);this.rawSet.rbAddTorque(this.handle,B,Q),B.free()}applyTorqueImpulse(A,Q){let B=a.intoRaw(A);this.rawSet.rbApplyTorqueImpulse(this.handle,B,Q),B.free()}addForceAtPoint(A,Q,B){let Y=a.intoRaw(A),J=a.intoRaw(Q);this.rawSet.rbAddForceAtPoint(this.handle,Y,J,B),Y.free(),J.free()}applyImpulseAtPoint(A,Q,B){let Y=a.intoRaw(A),J=a.intoRaw(Q);this.rawSet.rbApplyImpulseAtPoint(this.handle,Y,J,B),Y.free(),J.free()}userForce(){return a.fromRaw(this.rawSet.rbUserForce(this.handle))}userTorque(){return a.fromRaw(this.rawSet.rbUserTorque(this.handle))}}class I1{constructor(A){this.enabled=!0,this.status=A,this.translation=a.zeros(),this.rotation=gQ.identity(),this.gravityScale=1,this.linvel=a.zeros(),this.mass=0,this.massOnly=!1,this.centerOfMass=a.zeros(),this.translationsEnabledX=!0,this.translationsEnabledY=!0,this.angvel=a.zeros(),this.principalAngularInertia=a.zeros(),this.angularInertiaLocalFrame=gQ.identity(),this.translationsEnabledZ=!0,this.rotationsEnabledX=!0,this.rotationsEnabledY=!0,this.rotationsEnabledZ=!0,this.linearDamping=0,this.angularDamping=0,this.canSleep=!0,this.sleeping=!1,this.ccdEnabled=!1,this.softCcdPrediction=0,this.dominanceGroup=0,this.additionalSolverIterations=0}static dynamic(){return new I1(FC.Dynamic)}static kinematicPositionBased(){return new I1(FC.KinematicPositionBased)}static kinematicVelocityBased(){return new I1(FC.KinematicVelocityBased)}static fixed(){return new I1(FC.Fixed)}static newDynamic(){return new I1(FC.Dynamic)}static newKinematicPositionBased(){return new I1(FC.KinematicPositionBased)}static newKinematicVelocityBased(){return new I1(FC.KinematicVelocityBased)}static newStatic(){return new I1(FC.Fixed)}setDominanceGroup(A){return this.dominanceGroup=A,this}setAdditionalSolverIterations(A){return this.additionalSolverIterations=A,this}setEnabled(A){return this.enabled=A,this}setTranslation(A,Q,B){if(typeof A!="number"||typeof Q!="number"||typeof B!="number")throw TypeError("The translation components must be numbers.");return this.translation={x:A,y:Q,z:B},this}setRotation(A){return gQ.copy(this.rotation,A),this}setGravityScale(A){return this.gravityScale=A,this}setAdditionalMass(A){return this.mass=A,this.massOnly=!0,this}setLinvel(A,Q,B){if(typeof A!="number"||typeof Q!="number"||typeof B!="number")throw TypeError("The linvel components must be numbers.");return this.linvel={x:A,y:Q,z:B},this}setAngvel(A){return a.copy(this.angvel,A),this}setAdditionalMassProperties(A,Q,B,Y){return this.mass=A,a.copy(this.centerOfMass,Q),a.copy(this.principalAngularInertia,B),gQ.copy(this.angularInertiaLocalFrame,Y),this.massOnly=!1,this}enabledTranslations(A,Q,B){return this.translationsEnabledX=A,this.translationsEnabledY=Q,this.translationsEnabledZ=B,this}restrictTranslations(A,Q,B){return this.enabledTranslations(A,Q,B)}lockTranslations(){return this.enabledTranslations(!1,!1,!1)}enabledRotations(A,Q,B){return this.rotationsEnabledX=A,this.rotationsEnabledY=Q,this.rotationsEnabledZ=B,this}restrictRotations(A,Q,B){return this.enabledRotations(A,Q,B)}lockRotations(){return this.restrictRotations(!1,!1,!1)}setLinearDamping(A){return this.linearDamping=A,this}setAngularDamping(A){return this.angularDamping=A,this}setCanSleep(A){return this.canSleep=A,this}setSleeping(A){return this.sleeping=A,this}setCcdEnabled(A){return this.ccdEnabled=A,this}setSoftCcdPrediction(A){return this.softCcdPrediction=A,this}setUserData(A){return this.userData=A,this}}class lV{constructor(){this.fconv=new Float64Array(1),this.uconv=new Uint32Array(this.fconv.buffer),this.data=[],this.size=0}set(A,Q){let B=this.index(A);for(;this.data.length<=B;)this.data.push(null);this.data[B]==null&&(this.size+=1),this.data[B]=Q}len(){return this.size}delete(A){let Q=this.index(A);QA!=null)}index(A){return this.fconv[0]=A,this.uconv[0]}}class Z_{constructor(A){this.raw=A||new J0,this.map=new lV,A&&A.forEachRigidBodyHandle((Q)=>{this.map.set(Q,new HM(A,null,Q))})}free(){this.raw&&this.raw.free(),this.raw=void 0,this.map&&this.map.clear(),this.map=void 0}finalizeDeserialization(A){this.map.forEach((Q)=>Q.finalizeDeserialization(A))}createRigidBody(A,Q){let B=a.intoRaw(Q.translation),Y=gQ.intoRaw(Q.rotation),J=a.intoRaw(Q.linvel),C=a.intoRaw(Q.centerOfMass),X=a.intoRaw(Q.angvel),G=a.intoRaw(Q.principalAngularInertia),F=gQ.intoRaw(Q.angularInertiaLocalFrame),W=this.raw.createRigidBody(Q.enabled,B,Y,Q.gravityScale,Q.mass,Q.massOnly,C,J,X,G,F,Q.translationsEnabledX,Q.translationsEnabledY,Q.translationsEnabledZ,Q.rotationsEnabledX,Q.rotationsEnabledY,Q.rotationsEnabledZ,Q.linearDamping,Q.angularDamping,Q.status,Q.canSleep,Q.sleeping,Q.softCcdPrediction,Q.ccdEnabled,Q.dominanceGroup,Q.additionalSolverIterations);B.free(),Y.free(),J.free(),C.free(),X.free(),G.free(),F.free();let Z=new HM(this.raw,A,W);return Z.userData=Q.userData,this.map.set(W,Z),Z}remove(A,Q,B,Y,J){for(let C=0;CY.unmap(C)),J.forEachJointHandleAttachedToRigidBody(A,(C)=>J.unmap(C)),this.raw.remove(A,Q.raw,B.raw,Y.raw,J.raw),this.map.delete(A)}len(){return this.map.len()}contains(A){return this.get(A)!=null}get(A){return this.map.get(A)}forEach(A){this.map.forEach(A)}forEachActiveRigidBody(A,Q){A.forEachActiveRigidBodyHandle((B)=>{Q(this.get(B))})}getAll(){return this.map.getAll()}}class $_{constructor(A){this.raw=A||new HW}free(){this.raw&&this.raw.free(),this.raw=void 0}get dt(){return this.raw.dt}get contact_erp(){return this.raw.contact_erp}get lengthUnit(){return this.raw.lengthUnit}get normalizedAllowedLinearError(){return this.raw.normalizedAllowedLinearError}get normalizedPredictionDistance(){return this.raw.normalizedPredictionDistance}get numSolverIterations(){return this.raw.numSolverIterations}get numInternalPgsIterations(){return this.raw.numInternalPgsIterations}get minIslandSize(){return this.raw.minIslandSize}get maxCcdSubsteps(){return this.raw.maxCcdSubsteps}set dt(A){this.raw.dt=A}set contact_natural_frequency(A){this.raw.contact_natural_frequency=A}set lengthUnit(A){this.raw.lengthUnit=A}set normalizedAllowedLinearError(A){this.raw.normalizedAllowedLinearError=A}set normalizedPredictionDistance(A){this.raw.normalizedPredictionDistance=A}set numSolverIterations(A){this.raw.numSolverIterations=A}set numInternalPgsIterations(A){this.raw.numInternalPgsIterations=A}set minIslandSize(A){this.raw.minIslandSize=A}set maxCcdSubsteps(A){this.raw.maxCcdSubsteps=A}}(function(A){A[A.Revolute=0]="Revolute",A[A.Fixed=1]="Fixed",A[A.Prismatic=2]="Prismatic",A[A.Rope=3]="Rope",A[A.Spring=4]="Spring",A[A.Spherical=5]="Spherical",A[A.Generic=6]="Generic"})(oY||(oY={})),function(A){A[A.AccelerationBased=0]="AccelerationBased",A[A.ForceBased=1]="ForceBased"}(ik||(ik={})),function(A){A[A.LinX=1]="LinX",A[A.LinY=2]="LinY",A[A.LinZ=4]="LinZ",A[A.AngX=8]="AngX",A[A.AngY=16]="AngY",A[A.AngZ=32]="AngZ"}(nk||(nk={}));class ZC{constructor(A,Q,B){this.rawSet=A,this.bodySet=Q,this.handle=B}static newTyped(A,Q,B){switch(A.jointType(B)){case WC.Revolute:return new I_(A,Q,B);case WC.Prismatic:return new V_(A,Q,B);case WC.Fixed:return new U_(A,Q,B);case WC.Spring:return new K_(A,Q,B);case WC.Rope:return new E_(A,Q,B);case WC.Spherical:return new D_(A,Q,B);case WC.Generic:return new H_(A,Q,B);default:return new ZC(A,Q,B)}}finalizeDeserialization(A){this.bodySet=A}isValid(){return this.rawSet.contains(this.handle)}body1(){return this.bodySet.get(this.rawSet.jointBodyHandle1(this.handle))}body2(){return this.bodySet.get(this.rawSet.jointBodyHandle2(this.handle))}type(){return this.rawSet.jointType(this.handle)}frameX1(){return gQ.fromRaw(this.rawSet.jointFrameX1(this.handle))}frameX2(){return gQ.fromRaw(this.rawSet.jointFrameX2(this.handle))}anchor1(){return a.fromRaw(this.rawSet.jointAnchor1(this.handle))}anchor2(){return a.fromRaw(this.rawSet.jointAnchor2(this.handle))}setAnchor1(A){let Q=a.intoRaw(A);this.rawSet.jointSetAnchor1(this.handle,Q),Q.free()}setAnchor2(A){let Q=a.intoRaw(A);this.rawSet.jointSetAnchor2(this.handle,Q),Q.free()}setContactsEnabled(A){this.rawSet.jointSetContactsEnabled(this.handle,A)}contactsEnabled(){return this.rawSet.jointContactsEnabled(this.handle)}}class jM extends ZC{limitsEnabled(){return this.rawSet.jointLimitsEnabled(this.handle,this.rawAxis())}limitsMin(){return this.rawSet.jointLimitsMin(this.handle,this.rawAxis())}limitsMax(){return this.rawSet.jointLimitsMax(this.handle,this.rawAxis())}setLimits(A,Q){this.rawSet.jointSetLimits(this.handle,this.rawAxis(),A,Q)}configureMotorModel(A){this.rawSet.jointConfigureMotorModel(this.handle,this.rawAxis(),A)}configureMotorVelocity(A,Q){this.rawSet.jointConfigureMotorVelocity(this.handle,this.rawAxis(),A,Q)}configureMotorPosition(A,Q,B){this.rawSet.jointConfigureMotorPosition(this.handle,this.rawAxis(),A,Q,B)}configureMotor(A,Q,B,Y){this.rawSet.jointConfigureMotor(this.handle,this.rawAxis(),A,Q,B,Y)}}class U_ extends ZC{}class E_ extends ZC{}class K_ extends ZC{}class V_ extends jM{rawAxis(){return LM.LinX}}class I_ extends jM{rawAxis(){return LM.AngX}}class H_ extends ZC{}class D_ extends ZC{}class h6{constructor(){}static fixed(A,Q,B,Y){let J=new h6;return J.anchor1=A,J.anchor2=B,J.frame1=Q,J.frame2=Y,J.jointType=oY.Fixed,J}static spring(A,Q,B,Y,J){let C=new h6;return C.anchor1=Y,C.anchor2=J,C.length=A,C.stiffness=Q,C.damping=B,C.jointType=oY.Spring,C}static rope(A,Q,B){let Y=new h6;return Y.anchor1=Q,Y.anchor2=B,Y.length=A,Y.jointType=oY.Rope,Y}static generic(A,Q,B,Y){let J=new h6;return J.anchor1=A,J.anchor2=Q,J.axis=B,J.axesMask=Y,J.jointType=oY.Generic,J}static spherical(A,Q){let B=new h6;return B.anchor1=A,B.anchor2=Q,B.jointType=oY.Spherical,B}static prismatic(A,Q,B){let Y=new h6;return Y.anchor1=A,Y.anchor2=Q,Y.axis=B,Y.jointType=oY.Prismatic,Y}static revolute(A,Q,B){let Y=new h6;return Y.anchor1=A,Y.anchor2=Q,Y.axis=B,Y.jointType=oY.Revolute,Y}intoRaw(){let A,Q,B=a.intoRaw(this.anchor1),Y=a.intoRaw(this.anchor2),J=!1,C=0,X=0;switch(this.jointType){case oY.Fixed:let G=gQ.intoRaw(this.frame1),F=gQ.intoRaw(this.frame2);Q=gY.fixed(B,G,Y,F),G.free(),F.free();break;case oY.Spring:Q=gY.spring(this.length,this.stiffness,this.damping,B,Y);break;case oY.Rope:Q=gY.rope(this.length,B,Y);break;case oY.Prismatic:A=a.intoRaw(this.axis),this.limitsEnabled&&(J=!0,C=this.limits[0],X=this.limits[1]),Q=gY.prismatic(B,Y,A,J,C,X),A.free();break;case oY.Generic:A=a.intoRaw(this.axis);let W=this.axesMask;Q=gY.generic(B,Y,A,W);break;case oY.Spherical:Q=gY.spherical(B,Y);break;case oY.Revolute:A=a.intoRaw(this.axis),Q=gY.revolute(B,Y,A),A.free()}return B.free(),Y.free(),Q}}class N_{constructor(A){this.raw=A||new x6,this.map=new lV,A&&A.forEachJointHandle((Q)=>{this.map.set(Q,ZC.newTyped(A,null,Q))})}free(){this.raw&&this.raw.free(),this.raw=void 0,this.map&&this.map.clear(),this.map=void 0}finalizeDeserialization(A){this.map.forEach((Q)=>Q.finalizeDeserialization(A))}createJoint(A,Q,B,Y,J){let C=Q.intoRaw(),X=this.raw.createJoint(C,B,Y,J);C.free();let G=ZC.newTyped(this.raw,A,X);return this.map.set(X,G),G}remove(A,Q){this.raw.remove(A,Q),this.unmap(A)}forEachJointHandleAttachedToRigidBody(A,Q){this.raw.forEachJointAttachedToRigidBody(A,Q)}unmap(A){this.map.delete(A)}len(){return this.map.len()}contains(A){return this.get(A)!=null}get(A){return this.map.get(A)}forEach(A){this.map.forEach(A)}getAll(){return this.map.getAll()}}class uG{constructor(A,Q){this.rawSet=A,this.handle=Q}static newTyped(A,Q){switch(A.jointType(Q)){case WC.Revolute:return new M_(A,Q);case WC.Prismatic:return new q_(A,Q);case WC.Fixed:return new L_(A,Q);case WC.Spherical:return new z_(A,Q);default:return new uG(A,Q)}}isValid(){return this.rawSet.contains(this.handle)}setContactsEnabled(A){this.rawSet.jointSetContactsEnabled(this.handle,A)}contactsEnabled(){return this.rawSet.jointContactsEnabled(this.handle)}}class OM extends uG{}class L_ extends uG{}class q_ extends OM{rawAxis(){return LM.LinX}}class M_ extends OM{rawAxis(){return LM.AngX}}class z_ extends uG{}class R_{constructor(A){this.raw=A||new b6,this.map=new lV,A&&A.forEachJointHandle((Q)=>{this.map.set(Q,uG.newTyped(this.raw,Q))})}free(){this.raw&&this.raw.free(),this.raw=void 0,this.map&&this.map.clear(),this.map=void 0}createJoint(A,Q,B,Y){let J=A.intoRaw(),C=this.raw.createJoint(J,Q,B,Y);J.free();let X=uG.newTyped(this.raw,C);return this.map.set(C,X),X}remove(A,Q){this.raw.remove(A,Q),this.map.delete(A)}unmap(A){this.map.delete(A)}len(){return this.map.len()}contains(A){return this.get(A)!=null}get(A){return this.map.get(A)}forEach(A){this.map.forEach(A)}forEachJointHandleAttachedToRigidBody(A,Q){this.raw.forEachJointAttachedToRigidBody(A,Q)}getAll(){return this.map.getAll()}}(function(A){A[A.Average=0]="Average",A[A.Min=1]="Min",A[A.Multiply=2]="Multiply",A[A.Max=3]="Max"})(bV||(bV={}));class w_{constructor(A){this.raw=A||new WM}free(){this.raw&&this.raw.free(),this.raw=void 0}}class j_{constructor(A){this.raw=A||new f6}free(){this.raw&&this.raw.free(),this.raw=void 0}forEachActiveRigidBodyHandle(A){this.raw.forEachActiveRigidBodyHandle(A)}}(function(A){A[A.Vertex=0]="Vertex",A[A.Edge=1]="Edge",A[A.Face=2]="Face",A[A.Unknown=3]="Unknown"})(Z4||(Z4={}));class Tt{constructor(A,Q){this.origin=A,this.dir=Q}pointAt(A){return{x:this.origin.x+this.dir.x*A,y:this.origin.y+this.dir.y*A,z:this.origin.z+this.dir.z*A}}}class pV{constructor(A,Q,B,Y){this.featureType=Z4.Unknown,this.featureId=void 0,this.timeOfImpact=A,this.normal=Q,Y!==void 0&&(this.featureId=Y),B!==void 0&&(this.featureType=B)}static fromRaw(A){if(!A)return null;let Q=new pV(A.time_of_impact(),a.fromRaw(A.normal()),A.featureType(),A.featureId());return A.free(),Q}}class mV{constructor(A,Q,B,Y,J){this.featureType=Z4.Unknown,this.featureId=void 0,this.collider=A,this.timeOfImpact=Q,this.normal=B,J!==void 0&&(this.featureId=J),Y!==void 0&&(this.featureType=Y)}static fromRaw(A,Q){if(!Q)return null;let B=new mV(A.get(Q.colliderHandle()),Q.time_of_impact(),a.fromRaw(Q.normal()),Q.featureType(),Q.featureId());return Q.free(),B}}class PM{constructor(A,Q){this.collider=A,this.timeOfImpact=Q}static fromRaw(A,Q){if(!Q)return null;let B=new PM(A.get(Q.colliderHandle()),Q.timeOfImpact());return Q.free(),B}}class iV{constructor(A,Q){this.point=A,this.isInside=Q}static fromRaw(A){if(!A)return null;let Q=new iV(a.fromRaw(A.point()),A.isInside());return A.free(),Q}}class uV{constructor(A,Q,B,Y,J){this.featureType=Z4.Unknown,this.featureId=void 0,this.collider=A,this.point=Q,this.isInside=B,J!==void 0&&(this.featureId=J),Y!==void 0&&(this.featureType=Y)}static fromRaw(A,Q){if(!Q)return null;let B=new uV(A.get(Q.colliderHandle()),a.fromRaw(Q.point()),Q.isInside(),Q.featureType(),Q.featureId());return Q.free(),B}}class U4{constructor(A,Q,B,Y,J){this.time_of_impact=A,this.witness1=Q,this.witness2=B,this.normal1=Y,this.normal2=J}static fromRaw(A,Q){if(!Q)return null;let B=new U4(Q.time_of_impact(),a.fromRaw(Q.witness1()),a.fromRaw(Q.witness2()),a.fromRaw(Q.normal1()),a.fromRaw(Q.normal2()));return Q.free(),B}}class nV extends U4{constructor(A,Q,B,Y,J,C){super(Q,B,Y,J,C),this.collider=A}static fromRaw(A,Q){if(!Q)return null;let B=new nV(A.get(Q.colliderHandle()),Q.time_of_impact(),a.fromRaw(Q.witness1()),a.fromRaw(Q.witness2()),a.fromRaw(Q.normal1()),a.fromRaw(Q.normal2()));return Q.free(),B}}class O_{constructor(A){this.raw=A||new g6}free(){this.raw&&this.raw.free(),this.raw=void 0}castRay(A,Q,B,Y,J,C,X,G,F,W,Z){let U=a.intoRaw(Y.origin),$=a.intoRaw(Y.dir),E=PM.fromRaw(B,this.raw.castRay(A.raw,Q.raw,B.raw,U,$,J,C,X,G,F,W,Z));return U.free(),$.free(),E}castRayAndGetNormal(A,Q,B,Y,J,C,X,G,F,W,Z){let U=a.intoRaw(Y.origin),$=a.intoRaw(Y.dir),E=mV.fromRaw(B,this.raw.castRayAndGetNormal(A.raw,Q.raw,B.raw,U,$,J,C,X,G,F,W,Z));return U.free(),$.free(),E}intersectionsWithRay(A,Q,B,Y,J,C,X,G,F,W,Z,U){let $=a.intoRaw(Y.origin),E=a.intoRaw(Y.dir);this.raw.intersectionsWithRay(A.raw,Q.raw,B.raw,$,E,J,C,(K)=>X(mV.fromRaw(B,K)),G,F,W,Z,U),$.free(),E.free()}intersectionWithShape(A,Q,B,Y,J,C,X,G,F,W,Z){let U=a.intoRaw(Y),$=gQ.intoRaw(J),E=C.intoRaw(),K=this.raw.intersectionWithShape(A.raw,Q.raw,B.raw,U,$,E,X,G,F,W,Z);return U.free(),$.free(),E.free(),K}projectPoint(A,Q,B,Y,J,C,X,G,F,W){let Z=a.intoRaw(Y),U=uV.fromRaw(B,this.raw.projectPoint(A.raw,Q.raw,B.raw,Z,J,C,X,G,F,W));return Z.free(),U}projectPointAndGetFeature(A,Q,B,Y,J,C,X,G,F){let W=a.intoRaw(Y),Z=uV.fromRaw(B,this.raw.projectPointAndGetFeature(A.raw,Q.raw,B.raw,W,J,C,X,G,F));return W.free(),Z}intersectionsWithPoint(A,Q,B,Y,J,C,X,G,F,W){let Z=a.intoRaw(Y);this.raw.intersectionsWithPoint(A.raw,Q.raw,B.raw,Z,J,C,X,G,F,W),Z.free()}castShape(A,Q,B,Y,J,C,X,G,F,W,Z,U,$,E,K){let I=a.intoRaw(Y),V=gQ.intoRaw(J),H=a.intoRaw(C),D=X.intoRaw(),L=nV.fromRaw(B,this.raw.castShape(A.raw,Q.raw,B.raw,I,V,H,D,G,F,W,Z,U,$,E,K));return I.free(),V.free(),H.free(),D.free(),L}intersectionsWithShape(A,Q,B,Y,J,C,X,G,F,W,Z,U){let $=a.intoRaw(Y),E=gQ.intoRaw(J),K=C.intoRaw();this.raw.intersectionsWithShape(A.raw,Q.raw,B.raw,$,E,K,X,G,F,W,Z,U),$.free(),E.free(),K.free()}collidersWithAabbIntersectingAabb(A,Q,B,Y,J,C){let X=a.intoRaw(Y),G=a.intoRaw(J);this.raw.collidersWithAabbIntersectingAabb(A.raw,Q.raw,B.raw,X,G,C),X.free(),G.free()}}class P_{constructor(A){this.raw=A||new IY,this.tempManifold=new T_(null)}free(){this.raw&&this.raw.free(),this.raw=void 0}contactPairsWith(A,Q){this.raw.contact_pairs_with(A,Q)}intersectionPairsWith(A,Q){this.raw.intersection_pairs_with(A,Q)}contactPair(A,Q,B){let Y=this.raw.contact_pair(A,Q);if(Y){let J=Y.collider1()!=A,C;for(C=0;CA.free()),this.pidControllers.forEach((A)=>A.free()),this.vehicleControllers.forEach((A)=>A.free()),this.integrationParameters=void 0,this.islands=void 0,this.broadPhase=void 0,this.narrowPhase=void 0,this.bodies=void 0,this.colliders=void 0,this.ccdSolver=void 0,this.impulseJoints=void 0,this.multibodyJoints=void 0,this.physicsPipeline=void 0,this.serializationPipeline=void 0,this.debugRenderPipeline=void 0,this.characterControllers=void 0,this.pidControllers=void 0,this.vehicleControllers=void 0}static fromRaw(A){return A?new lM(a.fromRaw(A.takeGravity()),A.takeIntegrationParameters(),A.takeIslandManager(),A.takeBroadPhase(),A.takeNarrowPhase(),A.takeBodies(),A.takeColliders(),A.takeImpulseJoints(),A.takeMultibodyJoints()):null}takeSnapshot(){return this.serializationPipeline.serializeAll(this.gravity,this.integrationParameters,this.islands,this.broadPhase,this.narrowPhase,this.bodies,this.colliders,this.impulseJoints,this.multibodyJoints)}static restoreSnapshot(A){return new DM().deserializeAll(A)}debugRender(A,Q){return this.debugRenderPipeline.render(this.bodies,this.colliders,this.impulseJoints,this.multibodyJoints,this.narrowPhase,A,Q),new __(this.debugRenderPipeline.vertices,this.debugRenderPipeline.colors)}step(A,Q){this.physicsPipeline.step(this.gravity,this.integrationParameters,this.islands,this.broadPhase,this.narrowPhase,this.bodies,this.colliders,this.impulseJoints,this.multibodyJoints,this.ccdSolver,A,Q)}propagateModifiedBodyPositionsToColliders(){this.bodies.raw.propagateModifiedBodyPositionsToColliders(this.colliders.raw)}get timestep(){return this.integrationParameters.dt}set timestep(A){this.integrationParameters.dt=A}get lengthUnit(){return this.integrationParameters.lengthUnit}set lengthUnit(A){this.integrationParameters.lengthUnit=A}get numSolverIterations(){return this.integrationParameters.numSolverIterations}set numSolverIterations(A){this.integrationParameters.numSolverIterations=A}get numInternalPgsIterations(){return this.integrationParameters.numInternalPgsIterations}set numInternalPgsIterations(A){this.integrationParameters.numInternalPgsIterations=A}get maxCcdSubsteps(){return this.integrationParameters.maxCcdSubsteps}set maxCcdSubsteps(A){this.integrationParameters.maxCcdSubsteps=A}createRigidBody(A){return this.bodies.createRigidBody(this.colliders,A)}createCharacterController(A){let Q=new h_(A,this.integrationParameters,this.broadPhase,this.narrowPhase,this.bodies,this.colliders);return this.characterControllers.add(Q),Q}removeCharacterController(A){this.characterControllers.delete(A),A.free()}createPidController(A,Q,B,Y){let J=new g_(this.integrationParameters,this.bodies,A,Q,B,Y);return this.pidControllers.add(J),J}removePidController(A){this.pidControllers.delete(A),A.free()}createVehicleController(A){let Q=new x_(A,this.broadPhase,this.narrowPhase,this.bodies,this.colliders);return this.vehicleControllers.add(Q),Q}removeVehicleController(A){this.vehicleControllers.delete(A),A.free()}createCollider(A,Q){let B=Q?Q.handle:void 0;return this.colliders.createCollider(this.bodies,A,B)}createImpulseJoint(A,Q,B,Y){return this.impulseJoints.createJoint(this.bodies,A,Q.handle,B.handle,Y)}createMultibodyJoint(A,Q,B,Y){return this.multibodyJoints.createJoint(A,Q.handle,B.handle,Y)}getRigidBody(A){return this.bodies.get(A)}getCollider(A){return this.colliders.get(A)}getImpulseJoint(A){return this.impulseJoints.get(A)}getMultibodyJoint(A){return this.multibodyJoints.get(A)}removeRigidBody(A){this.bodies&&this.bodies.remove(A.handle,this.islands,this.colliders,this.impulseJoints,this.multibodyJoints)}removeCollider(A,Q){this.colliders&&this.colliders.remove(A.handle,this.islands,this.bodies,Q)}removeImpulseJoint(A,Q){this.impulseJoints&&this.impulseJoints.remove(A.handle,Q)}removeMultibodyJoint(A,Q){this.impulseJoints&&this.multibodyJoints.remove(A.handle,Q)}forEachCollider(A){this.colliders.forEach(A)}forEachRigidBody(A){this.bodies.forEach(A)}forEachActiveRigidBody(A){this.bodies.forEachActiveRigidBody(this.islands,A)}castRay(A,Q,B,Y,J,C,X,G){return this.broadPhase.castRay(this.narrowPhase,this.bodies,this.colliders,A,Q,B,Y,J,C?C.handle:null,X?X.handle:null,this.colliders.castClosure(G))}castRayAndGetNormal(A,Q,B,Y,J,C,X,G){return this.broadPhase.castRayAndGetNormal(this.narrowPhase,this.bodies,this.colliders,A,Q,B,Y,J,C?C.handle:null,X?X.handle:null,this.colliders.castClosure(G))}intersectionsWithRay(A,Q,B,Y,J,C,X,G,F){this.broadPhase.intersectionsWithRay(this.narrowPhase,this.bodies,this.colliders,A,Q,B,Y,J,C,X?X.handle:null,G?G.handle:null,this.colliders.castClosure(F))}intersectionWithShape(A,Q,B,Y,J,C,X,G){let F=this.broadPhase.intersectionWithShape(this.narrowPhase,this.bodies,this.colliders,A,Q,B,Y,J,C?C.handle:null,X?X.handle:null,this.colliders.castClosure(G));return F!=null?this.colliders.get(F):null}projectPoint(A,Q,B,Y,J,C,X){return this.broadPhase.projectPoint(this.narrowPhase,this.bodies,this.colliders,A,Q,B,Y,J?J.handle:null,C?C.handle:null,this.colliders.castClosure(X))}projectPointAndGetFeature(A,Q,B,Y,J,C){return this.broadPhase.projectPointAndGetFeature(this.narrowPhase,this.bodies,this.colliders,A,Q,B,Y?Y.handle:null,J?J.handle:null,this.colliders.castClosure(C))}intersectionsWithPoint(A,Q,B,Y,J,C,X){this.broadPhase.intersectionsWithPoint(this.narrowPhase,this.bodies,this.colliders,A,this.colliders.castClosure(Q),B,Y,J?J.handle:null,C?C.handle:null,this.colliders.castClosure(X))}castShape(A,Q,B,Y,J,C,X,G,F,W,Z,U){return this.broadPhase.castShape(this.narrowPhase,this.bodies,this.colliders,A,Q,B,Y,J,C,X,G,F,W?W.handle:null,Z?Z.handle:null,this.colliders.castClosure(U))}intersectionsWithShape(A,Q,B,Y,J,C,X,G,F){this.broadPhase.intersectionsWithShape(this.narrowPhase,this.bodies,this.colliders,A,Q,B,this.colliders.castClosure(Y),J,C,X?X.handle:null,G?G.handle:null,this.colliders.castClosure(F))}collidersWithAabbIntersectingAabb(A,Q,B){this.broadPhase.collidersWithAabbIntersectingAabb(this.narrowPhase,this.bodies,this.colliders,A,Q,this.colliders.castClosure(B))}contactPairsWith(A,Q){this.narrowPhase.contactPairsWith(A.handle,this.colliders.castClosure(Q))}intersectionPairsWith(A,Q){this.narrowPhase.intersectionPairsWith(A.handle,this.colliders.castClosure(Q))}contactPair(A,Q,B){this.narrowPhase.contactPair(A.handle,Q.handle,B)}intersectionPair(A,Q){return this.narrowPhase.intersectionPair(A.handle,Q.handle)}set profilerEnabled(A){this.physicsPipeline.raw.set_profiler_enabled(A)}get profilerEnabled(){return this.physicsPipeline.raw.is_profiler_enabled()}timingStep(){return this.physicsPipeline.raw.timing_step()}timingCollisionDetection(){return this.physicsPipeline.raw.timing_collision_detection()}timingBroadPhase(){return this.physicsPipeline.raw.timing_broad_phase()}timingNarrowPhase(){return this.physicsPipeline.raw.timing_narrow_phase()}timingSolver(){return this.physicsPipeline.raw.timing_solver()}timingVelocityAssembly(){return this.physicsPipeline.raw.timing_velocity_assembly()}timingVelocityResolution(){return this.physicsPipeline.raw.timing_velocity_resolution()}timingVelocityUpdate(){return this.physicsPipeline.raw.timing_velocity_update()}timingVelocityWriteback(){return this.physicsPipeline.raw.timing_velocity_writeback()}timingCcd(){return this.physicsPipeline.raw.timing_ccd()}timingCcdToiComputation(){return this.physicsPipeline.raw.timing_ccd_toi_computation()}timingCcdBroadPhase(){return this.physicsPipeline.raw.timing_ccd_broad_phase()}timingCcdNarrowPhase(){return this.physicsPipeline.raw.timing_ccd_narrow_phase()}timingCcdSolver(){return this.physicsPipeline.raw.timing_ccd_solver()}timingIslandConstruction(){return this.physicsPipeline.raw.timing_island_construction()}timingUserChanges(){return this.physicsPipeline.raw.timing_user_changes()}}(function(A){A[A.NONE=0]="NONE",A[A.COLLISION_EVENTS=1]="COLLISION_EVENTS",A[A.CONTACT_FORCE_EVENTS=2]="CONTACT_FORCE_EVENTS"})(KM||(KM={}));class f_{free(){this.raw&&this.raw.free(),this.raw=void 0}collider1(){return this.raw.collider1()}collider2(){return this.raw.collider2()}totalForce(){return a.fromRaw(this.raw.total_force())}totalForceMagnitude(){return this.raw.total_force_magnitude()}maxForceDirection(){return a.fromRaw(this.raw.max_force_direction())}maxForceMagnitude(){return this.raw.max_force_magnitude()}}class St{constructor(A,Q){this.raw=Q||new X_(A)}free(){this.raw&&this.raw.free(),this.raw=void 0}drainCollisionEvents(A){this.raw.drainCollisionEvents(A)}drainContactForceEvents(A){let Q=new f_;this.raw.drainContactForceEvents((B)=>{Q.raw=B,A(Q),Q.free()})}clear(){this.raw.clear()}}(function(A){A[A.NONE=0]="NONE",A[A.FILTER_CONTACT_PAIRS=1]="FILTER_CONTACT_PAIRS",A[A.FILTER_INTERSECTION_PAIRS=2]="FILTER_INTERSECTION_PAIRS"})(VM||(VM={})),function(A){A[A.EMPTY=0]="EMPTY",A[A.COMPUTE_IMPULSE=1]="COMPUTE_IMPULSE"}(ok||(ok={})),function(A){A[A.EXCLUDE_FIXED=1]="EXCLUDE_FIXED",A[A.EXCLUDE_KINEMATIC=2]="EXCLUDE_KINEMATIC",A[A.EXCLUDE_DYNAMIC=4]="EXCLUDE_DYNAMIC",A[A.EXCLUDE_SENSORS=8]="EXCLUDE_SENSORS",A[A.EXCLUDE_SOLIDS=16]="EXCLUDE_SOLIDS",A[A.ONLY_DYNAMIC=3]="ONLY_DYNAMIC",A[A.ONLY_KINEMATIC=5]="ONLY_KINEMATIC",A[A.ONLY_FIXED=6]="ONLY_FIXED"}(tk||(tk={})),function(A){A[A.DYNAMIC_DYNAMIC=1]="DYNAMIC_DYNAMIC",A[A.DYNAMIC_KINEMATIC=12]="DYNAMIC_KINEMATIC",A[A.DYNAMIC_FIXED=2]="DYNAMIC_FIXED",A[A.KINEMATIC_KINEMATIC=52224]="KINEMATIC_KINEMATIC",A[A.KINEMATIC_FIXED=8704]="KINEMATIC_FIXED",A[A.FIXED_FIXED=32]="FIXED_FIXED",A[A.DEFAULT=15]="DEFAULT",A[A.ALL=60943]="ALL"}(IM||(IM={}));class NM{constructor(A,Q,B,Y){this.colliderSet=A,this.handle=Q,this._parent=B,this._shape=Y}finalizeDeserialization(A){this.handle!=null&&(this._parent=A.get(this.colliderSet.raw.coParent(this.handle)))}ensureShapeIsCached(){this._shape||(this._shape=QY.fromRaw(this.colliderSet.raw,this.handle))}get shape(){return this.ensureShapeIsCached(),this._shape}clearShapeCache(){this._shape=null}isValid(){return this.colliderSet.raw.contains(this.handle)}translation(){return a.fromRaw(this.colliderSet.raw.coTranslation(this.handle))}translationWrtParent(){return a.fromRaw(this.colliderSet.raw.coTranslationWrtParent(this.handle))}rotation(){return gQ.fromRaw(this.colliderSet.raw.coRotation(this.handle))}rotationWrtParent(){return gQ.fromRaw(this.colliderSet.raw.coRotationWrtParent(this.handle))}isSensor(){return this.colliderSet.raw.coIsSensor(this.handle)}setSensor(A){this.colliderSet.raw.coSetSensor(this.handle,A)}setShape(A){let Q=A.intoRaw();this.colliderSet.raw.coSetShape(this.handle,Q),Q.free(),this._shape=A}setEnabled(A){this.colliderSet.raw.coSetEnabled(this.handle,A)}isEnabled(){return this.colliderSet.raw.coIsEnabled(this.handle)}setRestitution(A){this.colliderSet.raw.coSetRestitution(this.handle,A)}setFriction(A){this.colliderSet.raw.coSetFriction(this.handle,A)}frictionCombineRule(){return this.colliderSet.raw.coFrictionCombineRule(this.handle)}setFrictionCombineRule(A){this.colliderSet.raw.coSetFrictionCombineRule(this.handle,A)}restitutionCombineRule(){return this.colliderSet.raw.coRestitutionCombineRule(this.handle)}setRestitutionCombineRule(A){this.colliderSet.raw.coSetRestitutionCombineRule(this.handle,A)}setCollisionGroups(A){this.colliderSet.raw.coSetCollisionGroups(this.handle,A)}setSolverGroups(A){this.colliderSet.raw.coSetSolverGroups(this.handle,A)}contactSkin(){return this.colliderSet.raw.coContactSkin(this.handle)}setContactSkin(A){return this.colliderSet.raw.coSetContactSkin(this.handle,A)}activeHooks(){return this.colliderSet.raw.coActiveHooks(this.handle)}setActiveHooks(A){this.colliderSet.raw.coSetActiveHooks(this.handle,A)}activeEvents(){return this.colliderSet.raw.coActiveEvents(this.handle)}setActiveEvents(A){this.colliderSet.raw.coSetActiveEvents(this.handle,A)}activeCollisionTypes(){return this.colliderSet.raw.coActiveCollisionTypes(this.handle)}setContactForceEventThreshold(A){return this.colliderSet.raw.coSetContactForceEventThreshold(this.handle,A)}contactForceEventThreshold(){return this.colliderSet.raw.coContactForceEventThreshold(this.handle)}setActiveCollisionTypes(A){this.colliderSet.raw.coSetActiveCollisionTypes(this.handle,A)}setDensity(A){this.colliderSet.raw.coSetDensity(this.handle,A)}setMass(A){this.colliderSet.raw.coSetMass(this.handle,A)}setMassProperties(A,Q,B,Y){let J=a.intoRaw(Q),C=a.intoRaw(B),X=gQ.intoRaw(Y);this.colliderSet.raw.coSetMassProperties(this.handle,A,J,C,X),J.free(),C.free(),X.free()}setTranslation(A){this.colliderSet.raw.coSetTranslation(this.handle,A.x,A.y,A.z)}setTranslationWrtParent(A){this.colliderSet.raw.coSetTranslationWrtParent(this.handle,A.x,A.y,A.z)}setRotation(A){this.colliderSet.raw.coSetRotation(this.handle,A.x,A.y,A.z,A.w)}setRotationWrtParent(A){this.colliderSet.raw.coSetRotationWrtParent(this.handle,A.x,A.y,A.z,A.w)}shapeType(){return this.colliderSet.raw.coShapeType(this.handle)}halfExtents(){return a.fromRaw(this.colliderSet.raw.coHalfExtents(this.handle))}setHalfExtents(A){let Q=a.intoRaw(A);this.colliderSet.raw.coSetHalfExtents(this.handle,Q)}radius(){return this.colliderSet.raw.coRadius(this.handle)}setRadius(A){this.colliderSet.raw.coSetRadius(this.handle,A)}roundRadius(){return this.colliderSet.raw.coRoundRadius(this.handle)}setRoundRadius(A){this.colliderSet.raw.coSetRoundRadius(this.handle,A)}halfHeight(){return this.colliderSet.raw.coHalfHeight(this.handle)}setHalfHeight(A){this.colliderSet.raw.coSetHalfHeight(this.handle,A)}setVoxel(A,Q,B,Y){this.colliderSet.raw.coSetVoxel(this.handle,A,Q,B,Y),this._shape=null}propagateVoxelChange(A,Q,B,Y,J,C,X){this.colliderSet.raw.coPropagateVoxelChange(this.handle,A.handle,Q,B,Y,J,C,X),this._shape=null}combineVoxelStates(A,Q,B,Y){this.colliderSet.raw.coCombineVoxelStates(this.handle,A.handle,Q,B,Y),this._shape=null}vertices(){return this.colliderSet.raw.coVertices(this.handle)}indices(){return this.colliderSet.raw.coIndices(this.handle)}heightfieldHeights(){return this.colliderSet.raw.coHeightfieldHeights(this.handle)}heightfieldScale(){let A=this.colliderSet.raw.coHeightfieldScale(this.handle);return a.fromRaw(A)}heightfieldNRows(){return this.colliderSet.raw.coHeightfieldNRows(this.handle)}heightfieldNCols(){return this.colliderSet.raw.coHeightfieldNCols(this.handle)}parent(){return this._parent}friction(){return this.colliderSet.raw.coFriction(this.handle)}restitution(){return this.colliderSet.raw.coRestitution(this.handle)}density(){return this.colliderSet.raw.coDensity(this.handle)}mass(){return this.colliderSet.raw.coMass(this.handle)}volume(){return this.colliderSet.raw.coVolume(this.handle)}collisionGroups(){return this.colliderSet.raw.coCollisionGroups(this.handle)}solverGroups(){return this.colliderSet.raw.coSolverGroups(this.handle)}containsPoint(A){let Q=a.intoRaw(A),B=this.colliderSet.raw.coContainsPoint(this.handle,Q);return Q.free(),B}projectPoint(A,Q){let B=a.intoRaw(A),Y=iV.fromRaw(this.colliderSet.raw.coProjectPoint(this.handle,B,Q));return B.free(),Y}intersectsRay(A,Q){let B=a.intoRaw(A.origin),Y=a.intoRaw(A.dir),J=this.colliderSet.raw.coIntersectsRay(this.handle,B,Y,Q);return B.free(),Y.free(),J}castShape(A,Q,B,Y,J,C,X,G){let F=a.intoRaw(A),W=a.intoRaw(B),Z=gQ.intoRaw(Y),U=a.intoRaw(J),$=Q.intoRaw(),E=U4.fromRaw(this.colliderSet,this.colliderSet.raw.coCastShape(this.handle,F,$,W,Z,U,C,X,G));return F.free(),W.free(),Z.free(),U.free(),$.free(),E}castCollider(A,Q,B,Y,J,C){let X=a.intoRaw(A),G=a.intoRaw(B),F=nV.fromRaw(this.colliderSet,this.colliderSet.raw.coCastCollider(this.handle,X,Q.handle,G,Y,J,C));return X.free(),G.free(),F}intersectsShape(A,Q,B){let Y=a.intoRaw(Q),J=gQ.intoRaw(B),C=A.intoRaw(),X=this.colliderSet.raw.coIntersectsShape(this.handle,C,Y,J);return Y.free(),J.free(),C.free(),X}contactShape(A,Q,B,Y){let J=a.intoRaw(Q),C=gQ.intoRaw(B),X=A.intoRaw(),G=$4.fromRaw(this.colliderSet.raw.coContactShape(this.handle,X,J,C,Y));return J.free(),C.free(),X.free(),G}contactCollider(A,Q){return $4.fromRaw(this.colliderSet.raw.coContactCollider(this.handle,A.handle,Q))}castRay(A,Q,B){let Y=a.intoRaw(A.origin),J=a.intoRaw(A.dir),C=this.colliderSet.raw.coCastRay(this.handle,Y,J,Q,B);return Y.free(),J.free(),C}castRayAndGetNormal(A,Q,B){let Y=a.intoRaw(A.origin),J=a.intoRaw(A.dir),C=pV.fromRaw(this.colliderSet.raw.coCastRayAndGetNormal(this.handle,Y,J,Q,B));return Y.free(),J.free(),C}}(function(A){A[A.Density=0]="Density",A[A.Mass=1]="Mass",A[A.MassProps=2]="MassProps"})(IW||(IW={}));class e0{constructor(A){this.enabled=!0,this.shape=A,this.massPropsMode=IW.Density,this.density=1,this.friction=0.5,this.restitution=0,this.rotation=gQ.identity(),this.translation=a.zeros(),this.isSensor=!1,this.collisionGroups=4294967295,this.solverGroups=4294967295,this.frictionCombineRule=bV.Average,this.restitutionCombineRule=bV.Average,this.activeCollisionTypes=IM.DEFAULT,this.activeEvents=KM.NONE,this.activeHooks=VM.NONE,this.mass=0,this.centerOfMass=a.zeros(),this.contactForceEventThreshold=0,this.contactSkin=0,this.principalAngularInertia=a.zeros(),this.angularInertiaLocalFrame=gQ.identity()}static ball(A){let Q=new TM(A);return new e0(Q)}static capsule(A,Q){let B=new _M(A,Q);return new e0(B)}static segment(A,Q){let B=new vM(A,Q);return new e0(B)}static triangle(A,Q,B){let Y=new yM(A,Q,B);return new e0(Y)}static roundTriangle(A,Q,B,Y){let J=new hM(A,Q,B,Y);return new e0(J)}static polyline(A,Q){let B=new gM(A,Q);return new e0(B)}static voxels(A,Q){let B=new xM(A,Q);return new e0(B)}static trimesh(A,Q,B){let Y=new fM(A,Q,B);return new e0(Y)}static cuboid(A,Q,B){let Y=new SM(A,Q,B);return new e0(Y)}static roundCuboid(A,Q,B,Y){let J=new kM(A,Q,B,Y);return new e0(J)}static heightfield(A,Q,B,Y,J){let C=new bM(A,Q,B,Y,J);return new e0(C)}static cylinder(A,Q){let B=new mM(A,Q);return new e0(B)}static roundCylinder(A,Q,B){let Y=new uM(A,Q,B);return new e0(Y)}static cone(A,Q){let B=new dM(A,Q);return new e0(B)}static roundCone(A,Q,B){let Y=new cM(A,Q,B);return new e0(Y)}static convexHull(A){let Q=new dV(A,null);return new e0(Q)}static convexMesh(A,Q){let B=new dV(A,Q);return new e0(B)}static roundConvexHull(A,Q){let B=new cV(A,null,Q);return new e0(B)}static roundConvexMesh(A,Q,B){let Y=new cV(A,Q,B);return new e0(Y)}setTranslation(A,Q,B){if(typeof A!="number"||typeof Q!="number"||typeof B!="number")throw TypeError("The translation components must be numbers.");return this.translation={x:A,y:Q,z:B},this}setRotation(A){return gQ.copy(this.rotation,A),this}setSensor(A){return this.isSensor=A,this}setEnabled(A){return this.enabled=A,this}setContactSkin(A){return this.contactSkin=A,this}setDensity(A){return this.massPropsMode=IW.Density,this.density=A,this}setMass(A){return this.massPropsMode=IW.Mass,this.mass=A,this}setMassProperties(A,Q,B,Y){return this.massPropsMode=IW.MassProps,this.mass=A,a.copy(this.centerOfMass,Q),a.copy(this.principalAngularInertia,B),gQ.copy(this.angularInertiaLocalFrame,Y),this}setRestitution(A){return this.restitution=A,this}setFriction(A){return this.friction=A,this}setFrictionCombineRule(A){return this.frictionCombineRule=A,this}setRestitutionCombineRule(A){return this.restitutionCombineRule=A,this}setCollisionGroups(A){return this.collisionGroups=A,this}setSolverGroups(A){return this.solverGroups=A,this}setActiveHooks(A){return this.activeHooks=A,this}setActiveEvents(A){return this.activeEvents=A,this}setActiveCollisionTypes(A){return this.activeCollisionTypes=A,this}setContactForceEventThreshold(A){return this.contactForceEventThreshold=A,this}}class b_{constructor(A){this.raw=A||new j0,this.map=new lV,A&&A.forEachColliderHandle((Q)=>{this.map.set(Q,new NM(this,Q,null))})}free(){this.raw&&this.raw.free(),this.raw=void 0,this.map&&this.map.clear(),this.map=void 0}castClosure(A){return(Q)=>A?A(this.get(Q)):void 0}finalizeDeserialization(A){this.map.forEach((Q)=>Q.finalizeDeserialization(A))}createCollider(A,Q,B){let Y=B!=null&&B!=null;if(Y&&isNaN(B))throw Error("Cannot create a collider with a parent rigid-body handle that is not a number.");let J=Q.shape.intoRaw(),C=a.intoRaw(Q.translation),X=gQ.intoRaw(Q.rotation),G=a.intoRaw(Q.centerOfMass),F=a.intoRaw(Q.principalAngularInertia),W=gQ.intoRaw(Q.angularInertiaLocalFrame),Z=this.raw.createCollider(Q.enabled,J,C,X,Q.massPropsMode,Q.mass,G,F,W,Q.density,Q.friction,Q.restitution,Q.frictionCombineRule,Q.restitutionCombineRule,Q.isSensor,Q.collisionGroups,Q.solverGroups,Q.activeCollisionTypes,Q.activeHooks,Q.activeEvents,Q.contactForceEventThreshold,Q.contactSkin,Y,Y?B:0,A.raw);J.free(),C.free(),X.free(),G.free(),F.free(),W.free();let U=Y?A.get(B):null,$=new NM(this,Z,U,Q.shape);return this.map.set(Z,$),$}remove(A,Q,B,Y){this.raw.remove(A,Q.raw,B.raw,Y),this.unmap(A)}unmap(A){this.map.delete(A)}get(A){return this.map.get(A)}len(){return this.map.len()}contains(A){return this.get(A)!=null}forEach(A){this.map.forEach(A)}getAll(){return this.map.getAll()}}function HkQ(A,Q,B,Y){return new(B||(B=Promise))(function(J,C){function X(W){try{F(Y.next(W))}catch(Z){C(Z)}}function G(W){try{F(Y.throw(W))}catch(Z){C(Z)}}function F(W){var Z;W.done?J(W.value):(Z=W.value,Z instanceof B?Z:new B(function(U){U(Z)})).then(X,G)}F((Y=Y.apply(A,Q||[])).next())})}for(m_={byteLength:function(A){var Q=Dt(A),B=Q[0],Y=Q[1];return 3*(B+Y)/4-Y},toByteArray:function(A){var Q,B,Y=Dt(A),J=Y[0],C=Y[1],X=new ek(function(W,Z,U){return 3*(Z+U)/4-U}(0,J,C)),G=0,F=C>0?J-4:J;for(B=0;B>16&255,X[G++]=Q>>8&255,X[G++]=255&Q;return C===2&&(Q=z9[A.charCodeAt(B)]<<2|z9[A.charCodeAt(B+1)]>>4,X[G++]=255&Q),C===1&&(Q=z9[A.charCodeAt(B)]<<10|z9[A.charCodeAt(B+1)]<<4|z9[A.charCodeAt(B+2)]>>2,X[G++]=Q>>8&255,X[G++]=255&Q),X},fromByteArray:function(A){for(var Q,B=A.length,Y=B%3,J=[],C=16383,X=0,G=B-Y;XG?G:X+C));return Y===1?(Q=A[B-1],J.push(p8[Q>>2]+p8[Q<<4&63]+"==")):Y===2&&(Q=(A[B-2]<<8)+A[B-1],J.push(p8[Q>>10]+p8[Q>>4&63]+p8[Q<<2&63]+"=")),J.join("")}},p8=[],z9=[],ek=typeof Uint8Array<"u"?Uint8Array:Array,hV="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",mG=0,A_=hV.length;mG0)throw Error("Invalid string. Length must be a multiple of 4");var B=A.indexOf("=");return B===-1&&(B=Q),[B,B===Q?0:4-B%4]}function DkQ(A,Q,B){for(var Y,J,C=[],X=Q;X>18&63]+p8[J>>12&63]+p8[J>>6&63]+p8[63&J]);return C.join("")}function NkQ(){return HkQ(this,void 0,void 0,function*(){yield Pt(m_.toByteArray("AGFzbQEAAAAB6QykAWACf38AYAN/f38AYAR/f39/AGACf38Bf2ABfwF/YAN/f38Bf2ABfwBgBX9/f39/AGACf3wBf2AGf39/f31/AGAGf39/f39/AGABfwF9YAV/f399fwBgA39/fQBgBX9/f399AGADf3x/AGABfwF8YAR/f39/AX9gDH9/f39/f39/f399fwF/YAZ/f39/f30AYAR/f399AX9gAAF/YAR/f39/AX1gA39/fwF9YAN/f30Bf2ACf38BfGADf39/AX5gAn99AGAGf39/f39/AX9gAn98AX1gA398fQBgBH98f38AYAV/f39/fwF/YAd/f39/f39/AGACf38BfWACf3wBfGAIf39/f39/f38AYAF9AX1gAABgCX9/f39/f39/fwBgBH9+f38Bf2AIf39/f39/f30AYAR/f399AGADf398AGALf39/f39/f399fX8AYAh/f39/fX9/fwBgCX9/f39/fX9/fwBgBX9/fX9/AGAGf3x/f39/AGADf3x/AX9gA398fwF9YAN9fX0Bf2AGf31/f399AGAJf39/f39/fX9/AX9gBX98f39/AGAGf3x9fX19AGAFf3x9fX0AYAN/fX8AYAJ9fQF/YAF8AX9gBH99f38AYAt/f39/f39/f31/fwBgCn9/f39/f31/f38AYAZ/f319f38AYAt/f39/f39/fX9/fwBgCH9/f399fX9/AGAGf319f399AGAMf39/f31/f39/fX9/AGAPf39/f39/f39/fH98f3x/AGAPf39/f39/fX9/fH98f3x/AX9gBn9/f399fQBgBn99f3x/fwF/YAZ/fX98f38AYAV/fX1/fwBgAn5/AX9gBX9/fHx/AXxgBn9/fX9/fwBgA398fAF/YAR/fH1/AGAFf3x/fX0AYAJ/fABgAX0Bf2AEfX19fQF/YA5/f39/f39/f39/f39/fwBgB39/f39/f30AYA9/f39/f39/f39/f399fX8AYAt/f399f399f319fwBgCX99f39/f39/fwF/YAd/f39/f39/AX1gCn9/f39/f399fX8AYAt/f39/f39/f319fwF/YBJ/f39/f39/f39/f399f319fX0AYA9/f39/f39/f39/f39/f38AYAp/f39/f39/f39/AX9gC39/f39/f39/f39/AGAJf39/f39/fX9/AGASf39/f39/f399fX9/fH98f3x/AX9gB39/f39/f30Bf2Abf39/f319f39/f39/f39/f39/fX1/f399f39/AXxgEH9/f39/f31/f398f3x/fH8AYAh/fX9/f39/fwBgCH9/f39/e39/AGAbf39/f39/f31/f399fX1/f39/f39/f319f3x/AGAKf31/f39/f39/fwBgDH9/f399f39/f39/fwBgBn98f39/fQF/YAd/f39/f31/AX9gCn98f39/f399fX8Bf2AMf39/f39/f39/f39/AGANf39/f39/f3x/fH98fwBgC39/f399f39/f39/AGAHf39/f399fwF9YAh/fX99f31/fwBgBn9/f399fQF/YA1/f39/f39/fH98f3x/AX9gDH9/f39/f3x/fH98fwF/YAZ/f39/f30Bf2ANf31/f39/fH9/fH98fwBgBH9/fX8AYAl/f39/f39/f38BfWASf39/f39/f39/f39/f39/f39/AGAGf3x/f31/AX9gBX98f39/AX9gCX99f39/f398fwBgBn99f39/fwBgCn9/f39/f39/f38AYAd/fH1/f39/AGAGf3x/f31/AX1gAn9+AX9gBn98fX9/fwBgCH98f3x/fX1/AX9gBX98f399AX9gDX9/f39/f399fX19fX0AYAR/fH9/AX9gBX19fX9/AX9gA31/fwF/YAl/f39/f39+fn4AYAd/f39/f39/AX9gDX9/f39/f39/f39/f38AYAR/fHx9AX9gA398fwF8YAZ/fH99fX0AYAd/fH99fX19AGACf34AYAh/f39/f39/fwF/YAd/fH19fX1/AGAJf3x8f39/f39/AGAFf39/f30Bf2AGf3x9fX1/AGAGf3x8f39/AGAEf39+fwBgA39/fgF/YAV/fn9+fwBgA39+fgBgBH19fX8Bf2ADf399AX1gAn19AGAEf319fwBgBn9/fX19fQBgA319fwF/YAV/f3x/fwBgBX9/fn9/AGAEf35/fwBgAn19AX0CqwkgA3diZxVfX3diaW5kZ2VuX251bWJlcl9uZXcAOwN3YmcWX193YmluZGdlbl9ib29sZWFuX2dldAAEA3diZxpfX3diaW5kZ2VuX29iamVjdF9kcm9wX3JlZgAGA3diZxVfX3diaW5kZ2VuX251bWJlcl9nZXQAAAN3YmcWX193YmluZGdlbl9pc19mdW5jdGlvbgAEA3diZyRfX3diZ19yYXdyYXljb2xsaWRlcmludGVyc2VjdGlvbl9uZXcABAN3YmceX193YmdfcmF3Y29udGFjdGZvcmNlZXZlbnRfbmV3AAQDd2JnIl9fd2JnX3BlcmZvcm1hbmNlXzdhM2ZmZDBiMTdmNjYzYWQABAN3YmcXX193YmluZGdlbl9pc191bmRlZmluZWQABAN3YmcaX193Ymdfbm93XzJjOTVjOWRlMDEyOTMxNzMAEAN3YmcbX193YmluZGdlbl9vYmplY3RfY2xvbmVfcmVmAAQDd2JnIF9fd2JnX25ld25vYXJnc18xMDVlZDQ3MTQ3NWFhZjUwAAMDd2JnG19fd2JnX2NhbGxfNjcyYTRkMjE2MzRkNGEyNAADA3diZxtfX3diZ19jYWxsXzdjY2NkZDY5ZTA3OTFhZTIABQN3YmcbX193YmdfY2FsbF84MzNiZWQ1NzcwZWEyMDQxABEDd2JnG19fd2JnX2NhbGxfYjhhZGM4YjFkMGEwZDhlYgAgA3diZxtfX3diZ19iaW5kX2M4MzU5YjFjYmEwNTgxNjgAEQN3YmcdX193YmdfYnVmZmVyXzYwOWNjM2VlZTUxZWQxNTgABAN3YmcyX193Ymdfc3RhdGljX2FjY2Vzc29yX0dMT0JBTF9USElTXzU2NTc4YmU3ZTlmODMyYjAAFQN3YmcrX193Ymdfc3RhdGljX2FjY2Vzc29yX1NFTEZfMzdjNWQ0MThlNGJmNTgxOQAVA3diZy1fX3diZ19zdGF0aWNfYWNjZXNzb3JfV0lORE9XXzVkZTM3MDQzYTkxYTljNDAAFQN3YmctX193Ymdfc3RhdGljX2FjY2Vzc29yX0dMT0JBTF84OGE5MDJkMTNhNTU3ZDA3ABUDd2JnMV9fd2JnX25ld3dpdGhieXRlb2Zmc2V0YW5kbGVuZ3RoX2Q5N2U2MzdlYmUxNDVhOWEABQN3YmcaX193YmdfbmV3X2ExMjAwMmE3ZjkxYzc1YmUABAN3YmcaX193Ymdfc2V0XzY1NTk1YmRkODY4YjMwMDkAAQN3YmcdX193YmdfbGVuZ3RoX2E0NDYxOTNkYzIyYzEyZjgABAN3YmcxX193YmdfbmV3d2l0aGJ5dGVvZmZzZXRhbmRsZW5ndGhfZTZiN2U2OWFjZDRjNzM1NAAFA3diZxpfX3diZ19zZXRfMTBiYWQ5YmVlMGU5YzU4YgABA3diZx1fX3diZ19sZW5ndGhfM2I0ZjAyMjE4OGFlOGRiNgAEA3diZyRfX3diZ19uZXd3aXRobGVuZ3RoXzVhNWVmZTMxM2NmZDU5ZjEABAN3YmcQX193YmluZGdlbl90aHJvdwAAA3diZxFfX3diaW5kZ2VuX21lbW9yeQAVA+MPvg8AEgESPFMBCgICJAoCAwICVAIKASQtAS0uBwAGNQICLj0HIQQFVQInBzUAVgEAAiECAgEHAgYAAz0CCgpXLQoACgoGNCctKVg+AQAAAAoKAAEKWQIOHC4sAj4hDAcuAQAAKSQAAAUKBikCDD8MAQoCAQAADA4BAQ4MWgwhQAIMDgoqAVsCAQ4/EwACQQMCBgAAAg4BDAwCLFwOAUIMQCECXQAOQw4BXgAAAQJfQgEBAEMkA2BhRAMBAUQDDAEKYkFjAWQKAWVmBgEBAyUKAQwlZwMAAAwAAQEBKWgAAQECAAAAJBxpAgADAAoBDAwDJAUOIUVFahxrbG0vJAxuAiAHCgIJAScADAACBwwMAQEBAG8BcAkKAnFyKgURcyF0BycCAnUHAAcCABF2dwcHAHgJASECAQMCBQIFHAEJDRMHFAABAAMAACkgeQEAAAEAegYJAwYACTAHAwNGAgUCAQECAAUAAkdHAgB7fAYDEQAAAgEKAwAAAQkJCQkJCQkJCQkJCQkJCQkBAAAkAAJISH0DAX4Bf4ABABYBBQWBAQEGBgcTAAIqAAIBAhMTFCcBAQcCggECAoMBAkYTAhMAAAEBAQAAAAADFgECAhMTExMTExMTExMASRMAABMKBwIAAAICCQIChAEUAQIBKkkCAgAUCgUHAjYBAQECNgITBwcJBwIBAwIBBhQGBoUBAAkBFQATAQKGAQATAgICAgICAgGHAQICAgMBAQECAjEMAQICAgICAjYHAgcHAgcHBwcHBwcHBwcHiAEAEwkJCQkJCQkJCQkJCRQBAQkJCQFKBwACFBQUFBQUFBQUFBQUFBQUAAAACgECDAMDHAICADEXAwcAAgAACwUICAocCyEOAiIWCgAcBiUTAQUIAQIIIQEACgcFARUCAwQEAYkBCAgwMCoMACgBIAIEAQEBAQ8CDw8AFhYWFhYWFhYWFhYWFhYWAwMlBgAEAQUIAAEBAEoBAAMAAC8BAQEAHx8fHx8fAhcECAgACAgICAgICAgIFAAICA8AAAgDAYoBAQQEAzcBIDcBAQIxKysrK4sBAQMCAQUDCB8fS0sIDAEDCAgjI0wBATIyCAgBAAUABQElAwMDAAsLDwAHBwcBAAgIIyNNBEwDAAQICAgIAgMDAwMHCAUFAgIDAwMDAwMBADEAAwAAHwAECIwBBQUFBQUFBQMFAQUPDwUBFTABKwEWGA8EAgIBATIyAE4PAAUFBQUBAQEBAgEEAQBPFgEFCAgBAgYFAR04AE+NAY4BAAIAAAAAAAAGUAgIDwUPCDgIAAYGBgYGDgwOIyMIBgQGEQIBAwYfCABNAAYDAQ4IOE4IHQgdCAgdHQgdCAgdHR0ICAgdCAgEBAQDAAAAAAAEAAAAAAAAAAgdHR0EBgY5OTmPAQIBAggPEREAAQAGAAAAAA8jIyMPDw8PAAAAAAAADAYADA8BAQQEBAQECA8PDw8EBAQEBAQEBAQBBwAFAFEeHh4PCB4eHh4eHggEBAINAAdQAwEBDQ0NDQ0NDQ0NDQ0NF5ABAQ8PDwgBAAAAEQ8VACAKAQ8PDQAAAAAAAAAAAAAAAAAAAQaRAZIBIJMBAQyUAREaGhoBAQAAABoaDjeVAQIAAjoaAAIGAQIBBh4eHgQEBAQEBCgDAQAGAgYFBQ0CAiaWAQMXDhgVDhcXBhEDAQ4XDAQXFxcXFxcXFxcXFwIBBiIilwEFBgKYAQYoKCgBAQABAAMDAgECAgAMFSIDAyIiIiINAAABAwUZGRkZGRkZGRkZGRkZGRkZGQYCApkBBgICmgEDFRURAQICAgICAgcDAAAYCwQCABWbASIWEBAQEBAQEBAODg4ODg4ODg4OAgMBBSgYDQMaGgEBAwIAAgACDFIaAAEAAQGcAQadATMzMxAQEBAQEBAQAwMBAwQVEBAEBAQEBDo6ARsHEBAQEFEaGwEAGAE7AQADFQABBgAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAQEVFQEDAwYEBBoFGgAAAAYDAQEGCwsbBAsLGwQEEAsLEAQEBAsLCwQEBAQEBBAEBAsLEAsLBBoaAAAAAwAAAwMABRsGGxsGAAAbGxsbAAAAGxsbLwACJiYFCgECBAMDUgMAAxEOAwcDBQUXAwMzngECDAwMDAwMDAwMDAwMAgAAAAAAAAAAAQYDAAYGBgMGFwAAAwMBASAGBgYGBgYGBgYGAAAGBgYGBwIAAAECAxUDGBgYGBgYGBgYGBgYGBgYACYmBgMmAwoKCgoKAAufAQEEBgMGAAsGBgYGBgYGAwIVFQIDAgEAAwMDAgADAwMDAwMDCwsEDQMcByCgAaEBLwYCAAMDBQAAAw0GAQAAAAAAAAAAAAAAAAYRBgYGBgYADQAAAAAAEQEBAQEBAQEBAQoKCgoKCgoKCgoKDQEDBwAAAAAAAAMAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAIAAAAAAAAAAAEAAAAAAAABAAAAAAAAAAABAAAAAAAAAAAAAAAAAwMAAwEABwcHBwsBAQEGAwQAAAMDAwMDAAAAAAADACYmAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEBAQENCwMDAwADAwMDAwMAAQQHAKMBBgsLCyUlJQMECwQECwMFBAsEBAQEBAQECwQECwQEBAQEBAQHNAAGBAcBcAH4CPgIBQMBABIGCQF/AUGAgMAACweMngGaBAZtZW1vcnkCAAd2ZXJzaW9uANcMKl9fd2JnX3Jhd2tpbmVtYXRpY2NoYXJhY3RlcmNvbnRyb2xsZXJfZnJlZQC3CCNyYXdraW5lbWF0aWNjaGFyYWN0ZXJjb250cm9sbGVyX25ldwDlCCVyYXdraW5lbWF0aWNjaGFyYWN0ZXJjb250cm9sbGVyX3NldFVwAOgFMXJhd2tpbmVtYXRpY2NoYXJhY3RlcmNvbnRyb2xsZXJfbm9ybWFsTnVkZ2VGYWN0b3IA5Qs0cmF3a2luZW1hdGljY2hhcmFjdGVyY29udHJvbGxlcl9zZXROb3JtYWxOdWRnZUZhY3RvcgCTDCZyYXdraW5lbWF0aWNjaGFyYWN0ZXJjb250cm9sbGVyX29mZnNldADmCylyYXdraW5lbWF0aWNjaGFyYWN0ZXJjb250cm9sbGVyX3NldE9mZnNldADnCyxyYXdraW5lbWF0aWNjaGFyYWN0ZXJjb250cm9sbGVyX3NsaWRlRW5hYmxlZADoCy9yYXdraW5lbWF0aWNjaGFyYWN0ZXJjb250cm9sbGVyX3NldFNsaWRlRW5hYmxlZACNDDFyYXdraW5lbWF0aWNjaGFyYWN0ZXJjb250cm9sbGVyX2F1dG9zdGVwTWF4SGVpZ2h0AKYLMHJhd2tpbmVtYXRpY2NoYXJhY3RlcmNvbnRyb2xsZXJfYXV0b3N0ZXBNaW5XaWR0aACnCz1yYXdraW5lbWF0aWNjaGFyYWN0ZXJjb250cm9sbGVyX2F1dG9zdGVwSW5jbHVkZXNEeW5hbWljQm9kaWVzAJgLL3Jhd2tpbmVtYXRpY2NoYXJhY3RlcmNvbnRyb2xsZXJfYXV0b3N0ZXBFbmFibGVkANgLLnJhd2tpbmVtYXRpY2NoYXJhY3RlcmNvbnRyb2xsZXJfZW5hYmxlQXV0b3N0ZXAAiAsvcmF3a2luZW1hdGljY2hhcmFjdGVyY29udHJvbGxlcl9kaXNhYmxlQXV0b3N0ZXAAlAwycmF3a2luZW1hdGljY2hhcmFjdGVyY29udHJvbGxlcl9tYXhTbG9wZUNsaW1iQW5nbGUA6Qs1cmF3a2luZW1hdGljY2hhcmFjdGVyY29udHJvbGxlcl9zZXRNYXhTbG9wZUNsaW1iQW5nbGUAlQwycmF3a2luZW1hdGljY2hhcmFjdGVyY29udHJvbGxlcl9taW5TbG9wZVNsaWRlQW5nbGUA6gs1cmF3a2luZW1hdGljY2hhcmFjdGVyY29udHJvbGxlcl9zZXRNaW5TbG9wZVNsaWRlQW5nbGUAlgw0cmF3a2luZW1hdGljY2hhcmFjdGVyY29udHJvbGxlcl9zbmFwVG9Hcm91bmREaXN0YW5jZQCoCzJyYXdraW5lbWF0aWNjaGFyYWN0ZXJjb250cm9sbGVyX2VuYWJsZVNuYXBUb0dyb3VuZADrCzNyYXdraW5lbWF0aWNjaGFyYWN0ZXJjb250cm9sbGVyX2Rpc2FibGVTbmFwVG9Hcm91bmQAlwwzcmF3a2luZW1hdGljY2hhcmFjdGVyY29udHJvbGxlcl9zbmFwVG9Hcm91bmRFbmFibGVkANkLN3Jhd2tpbmVtYXRpY2NoYXJhY3RlcmNvbnRyb2xsZXJfY29tcHV0ZUNvbGxpZGVyTW92ZW1lbnQAwgIwcmF3a2luZW1hdGljY2hhcmFjdGVyY29udHJvbGxlcl9jb21wdXRlZE1vdmVtZW50AM0IMHJhd2tpbmVtYXRpY2NoYXJhY3RlcmNvbnRyb2xsZXJfY29tcHV0ZWRHcm91bmRlZADsCzVyYXdraW5lbWF0aWNjaGFyYWN0ZXJjb250cm9sbGVyX251bUNvbXB1dGVkQ29sbGlzaW9ucwDtCzFyYXdraW5lbWF0aWNjaGFyYWN0ZXJjb250cm9sbGVyX2NvbXB1dGVkQ29sbGlzaW9uAMkGIF9fd2JnX3Jhd2NoYXJhY3RlcmNvbGxpc2lvbl9mcmVlAJ0JGXJhd2NoYXJhY3RlcmNvbGxpc2lvbl9uZXcAtQsccmF3Y2hhcmFjdGVyY29sbGlzaW9uX2hhbmRsZQDuCy1yYXdjaGFyYWN0ZXJjb2xsaXNpb25fdHJhbnNsYXRpb25EZWx0YUFwcGxpZWQAzggvcmF3Y2hhcmFjdGVyY29sbGlzaW9uX3RyYW5zbGF0aW9uRGVsdGFSZW1haW5pbmcAzwgZcmF3Y2hhcmFjdGVyY29sbGlzaW9uX3RvaQDvCyNyYXdjaGFyYWN0ZXJjb2xsaXNpb25fd29ybGRXaXRuZXNzMQDQCCNyYXdjaGFyYWN0ZXJjb2xsaXNpb25fd29ybGRXaXRuZXNzMgDLBSJyYXdjaGFyYWN0ZXJjb2xsaXNpb25fd29ybGROb3JtYWwxANEIInJhd2NoYXJhY3RlcmNvbGxpc2lvbl93b3JsZE5vcm1hbDIAhAYbX193YmdfcmF3cGlkY29udHJvbGxlcl9mcmVlAJ4JFHJhd3BpZGNvbnRyb2xsZXJfbmV3AMEKF3Jhd3BpZGNvbnRyb2xsZXJfc2V0X2twAKUIF3Jhd3BpZGNvbnRyb2xsZXJfc2V0X2tpAKYIF3Jhd3BpZGNvbnRyb2xsZXJfc2V0X2tkAKcIHnJhd3BpZGNvbnRyb2xsZXJfc2V0X2F4ZXNfbWFzawC2CyByYXdwaWRjb250cm9sbGVyX3Jlc2V0X2ludGVncmFscwDdCShyYXdwaWRjb250cm9sbGVyX2FwcGx5X2xpbmVhcl9jb3JyZWN0aW9uAKwDKXJhd3BpZGNvbnRyb2xsZXJfYXBwbHlfYW5ndWxhcl9jb3JyZWN0aW9uAK0DInJhd3BpZGNvbnRyb2xsZXJfbGluZWFyX2NvcnJlY3Rpb24AhAMjcmF3cGlkY29udHJvbGxlcl9hbmd1bGFyX2NvcnJlY3Rpb24AhQMtX193YmdfcmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9mcmVlAOMGJnJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfbmV3ALELOHJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfY3VycmVudF92ZWhpY2xlX3NwZWVkAPALKnJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfY2hhc3NpcwDxCzByYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX2luZGV4X3VwX2F4aXMA8gs0cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9zZXRfaW5kZXhfdXBfYXhpcwCYDDVyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX2luZGV4X2ZvcndhcmRfYXhpcwDzCzlyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3NldF9pbmRleF9mb3J3YXJkX2F4aXMAmQwscmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9hZGRfd2hlZWwA1AMtcmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9udW1fd2hlZWxzAPQLMXJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfdXBkYXRlX3ZlaGljbGUAiANEcmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9jaGFzc2lzX2Nvbm5lY3Rpb25fcG9pbnRfY3MA9AZIcmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9zZXRfd2hlZWxfY2hhc3Npc19jb25uZWN0aW9uX3BvaW50X2NzAM0FP3Jhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfd2hlZWxfc3VzcGVuc2lvbl9yZXN0X2xlbmd0aACpCkNyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3NldF93aGVlbF9zdXNwZW5zaW9uX3Jlc3RfbGVuZ3RoAPwIPnJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfd2hlZWxfbWF4X3N1c3BlbnNpb25fdHJhdmVsAKoKQnJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfc2V0X3doZWVsX21heF9zdXNwZW5zaW9uX3RyYXZlbAD9CC9yYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3doZWVsX3JhZGl1cwCrCjNyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3NldF93aGVlbF9yYWRpdXMA/gg9cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9zdXNwZW5zaW9uX3N0aWZmbmVzcwCsCkFyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3NldF93aGVlbF9zdXNwZW5zaW9uX3N0aWZmbmVzcwD/CD9yYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3doZWVsX3N1c3BlbnNpb25fY29tcHJlc3Npb24ArQpDcmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9zZXRfd2hlZWxfc3VzcGVuc2lvbl9jb21wcmVzc2lvbgCACT5yYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3doZWVsX3N1c3BlbnNpb25fcmVsYXhhdGlvbgCuCkJyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3NldF93aGVlbF9zdXNwZW5zaW9uX3JlbGF4YXRpb24AgQk9cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9tYXhfc3VzcGVuc2lvbl9mb3JjZQCvCkFyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3NldF93aGVlbF9tYXhfc3VzcGVuc2lvbl9mb3JjZQCCCS5yYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3doZWVsX2JyYWtlALAKMnJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfc2V0X3doZWVsX2JyYWtlAIMJMXJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfd2hlZWxfc3RlZXJpbmcAsQo1cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9zZXRfd2hlZWxfc3RlZXJpbmcAhAk1cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9lbmdpbmVfZm9yY2UAsgo5cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9zZXRfd2hlZWxfZW5naW5lX2ZvcmNlAIUJNXJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfd2hlZWxfZGlyZWN0aW9uX2NzAPUGOXJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfc2V0X3doZWVsX2RpcmVjdGlvbl9jcwDOBTByYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3doZWVsX2F4bGVfY3MA9gY0cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9zZXRfd2hlZWxfYXhsZV9jcwDPBTZyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3doZWVsX2ZyaWN0aW9uX3NsaXAAswo6cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9zZXRfd2hlZWxfZnJpY3Rpb25fc2xpcACGCUByYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3doZWVsX3NpZGVfZnJpY3Rpb25fc3RpZmZuZXNzALQKRHJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfc2V0X3doZWVsX3NpZGVfZnJpY3Rpb25fc3RpZmZuZXNzAIcJMXJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfd2hlZWxfcm90YXRpb24AtQo4cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9mb3J3YXJkX2ltcHVsc2UAtgo1cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9zaWRlX2ltcHVsc2UAtwo5cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9zdXNwZW5zaW9uX2ZvcmNlALgKOnJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfd2hlZWxfY29udGFjdF9ub3JtYWxfd3MA9wY5cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9jb250YWN0X3BvaW50X3dzAPgGOnJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfd2hlZWxfc3VzcGVuc2lvbl9sZW5ndGgAuQo2cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9oYXJkX3BvaW50X3dzAPkGNnJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfd2hlZWxfaXNfaW5fY29udGFjdADCCjZyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3doZWVsX2dyb3VuZF9vYmplY3QAmQkXX193YmdfcmF3Y2Nkc29sdmVyX2ZyZWUAnwkccmF3aW1wdWxzZWpvaW50c2V0X2pvaW50VHlwZQCEByNyYXdpbXB1bHNlam9pbnRzZXRfam9pbnRCb2R5SGFuZGxlMQDhByNyYXdpbXB1bHNlam9pbnRzZXRfam9pbnRCb2R5SGFuZGxlMgDiBx9yYXdpbXB1bHNlam9pbnRzZXRfam9pbnRGcmFtZVgxANsGH3Jhd2ltcHVsc2Vqb2ludHNldF9qb2ludEZyYW1lWDIA3AYfcmF3aW1wdWxzZWpvaW50c2V0X2pvaW50QW5jaG9yMQCFBh9yYXdpbXB1bHNlam9pbnRzZXRfam9pbnRBbmNob3IyAIYGInJhd2ltcHVsc2Vqb2ludHNldF9qb2ludFNldEFuY2hvcjEA0gUicmF3aW1wdWxzZWpvaW50c2V0X2pvaW50U2V0QW5jaG9yMgDTBSdyYXdpbXB1bHNlam9pbnRzZXRfam9pbnRDb250YWN0c0VuYWJsZWQA4wcqcmF3aW1wdWxzZWpvaW50c2V0X2pvaW50U2V0Q29udGFjdHNFbmFibGVkALgIJXJhd2ltcHVsc2Vqb2ludHNldF9qb2ludExpbWl0c0VuYWJsZWQA/AYhcmF3aW1wdWxzZWpvaW50c2V0X2pvaW50TGltaXRzTWluAKIHIXJhd2ltcHVsc2Vqb2ludHNldF9qb2ludExpbWl0c01heACjByFyYXdpbXB1bHNlam9pbnRzZXRfam9pbnRTZXRMaW1pdHMAtQcrcmF3aW1wdWxzZWpvaW50c2V0X2pvaW50Q29uZmlndXJlTW90b3JNb2RlbACBBy5yYXdpbXB1bHNlam9pbnRzZXRfam9pbnRDb25maWd1cmVNb3RvclZlbG9jaXR5AMMHLnJhd2ltcHVsc2Vqb2ludHNldF9qb2ludENvbmZpZ3VyZU1vdG9yUG9zaXRpb24AxAcmcmF3aW1wdWxzZWpvaW50c2V0X2pvaW50Q29uZmlndXJlTW90b3IAxQcdX193YmdfcmF3aW1wdWxzZWpvaW50c2V0X2ZyZWUAyAcWcmF3aW1wdWxzZWpvaW50c2V0X25ldwDDCh5yYXdpbXB1bHNlam9pbnRzZXRfY3JlYXRlSm9pbnQAtgYZcmF3aW1wdWxzZWpvaW50c2V0X3JlbW92ZQCLCRZyYXdpbXB1bHNlam9pbnRzZXRfbGVuAPILG3Jhd2ltcHVsc2Vqb2ludHNldF9jb250YWlucwDSCCVyYXdpbXB1bHNlam9pbnRzZXRfZm9yRWFjaEpvaW50SGFuZGxlAIcGMnJhd2ltcHVsc2Vqb2ludHNldF9mb3JFYWNoSm9pbnRBdHRhY2hlZFRvUmlnaWRCb2R5AIwJI19fd2JnX3Jhd2ludGVncmF0aW9ucGFyYW1ldGVyc19mcmVlAKAJHHJhd2ludGVncmF0aW9ucGFyYW1ldGVyc19uZXcA0gsbcmF3aW50ZWdyYXRpb25wYXJhbWV0ZXJzX2R0APULJHJhd2ludGVncmF0aW9ucGFyYW1ldGVyc19jb250YWN0X2VycADSCjVyYXdpbnRlZ3JhdGlvbnBhcmFtZXRlcnNfbm9ybWFsaXplZEFsbG93ZWRMaW5lYXJFcnJvcgD2CzVyYXdpbnRlZ3JhdGlvbnBhcmFtZXRlcnNfbm9ybWFsaXplZFByZWRpY3Rpb25EaXN0YW5jZQD3CyxyYXdpbnRlZ3JhdGlvbnBhcmFtZXRlcnNfbnVtU29sdmVySXRlcmF0aW9ucwD4CyZyYXdpbnRlZ3JhdGlvbnBhcmFtZXRlcnNfbWluSXNsYW5kU2l6ZQD5CydyYXdpbnRlZ3JhdGlvbnBhcmFtZXRlcnNfbWF4Q2NkU3Vic3RlcHMA+gsfcmF3aW50ZWdyYXRpb25wYXJhbWV0ZXJzX3NldF9kdACaDDZyYXdpbnRlZ3JhdGlvbnBhcmFtZXRlcnNfc2V0X2NvbnRhY3RfbmF0dXJhbF9mcmVxdWVuY3kAmww5cmF3aW50ZWdyYXRpb25wYXJhbWV0ZXJzX3NldF9ub3JtYWxpemVkQWxsb3dlZExpbmVhckVycm9yAJwMOXJhd2ludGVncmF0aW9ucGFyYW1ldGVyc19zZXRfbm9ybWFsaXplZFByZWRpY3Rpb25EaXN0YW5jZQCdDDByYXdpbnRlZ3JhdGlvbnBhcmFtZXRlcnNfc2V0X251bVNvbHZlckl0ZXJhdGlvbnMAngwqcmF3aW50ZWdyYXRpb25wYXJhbWV0ZXJzX3NldF9taW5Jc2xhbmRTaXplAJ8MK3Jhd2ludGVncmF0aW9ucGFyYW1ldGVyc19zZXRfbWF4Q2NkU3Vic3RlcHMAoAwncmF3aW50ZWdyYXRpb25wYXJhbWV0ZXJzX3NldF9sZW5ndGhVbml0AKEMG19fd2JnX3Jhd2lzbGFuZG1hbmFnZXJfZnJlZQCkBxRyYXdpc2xhbmRtYW5hZ2VyX25ldwDTCy1yYXdpc2xhbmRtYW5hZ2VyX2ZvckVhY2hBY3RpdmVSaWdpZEJvZHlIYW5kbGUAlwYaX193YmdfcmF3Z2VuZXJpY2pvaW50X2ZyZWUAoQkXcmF3Z2VuZXJpY2pvaW50X2dlbmVyaWMAyAIWcmF3Z2VuZXJpY2pvaW50X3NwcmluZwCtBBRyYXdnZW5lcmljam9pbnRfcm9wZQC4BBlyYXdnZW5lcmljam9pbnRfc3BoZXJpY2FsALwEGXJhd2dlbmVyaWNqb2ludF9wcmlzbWF0aWMAtgIVcmF3Z2VuZXJpY2pvaW50X2ZpeGVkALoCGHJhd2dlbmVyaWNqb2ludF9yZXZvbHV0ZQDYAh5yYXdtdWx0aWJvZHlqb2ludHNldF9qb2ludFR5cGUAswYhcmF3bXVsdGlib2R5am9pbnRzZXRfam9pbnRGcmFtZVgxAJMGIXJhd211bHRpYm9keWpvaW50c2V0X2pvaW50RnJhbWVYMgCUBiFyYXdtdWx0aWJvZHlqb2ludHNldF9qb2ludEFuY2hvcjEAwAUhcmF3bXVsdGlib2R5am9pbnRzZXRfam9pbnRBbmNob3IyAMEFKXJhd211bHRpYm9keWpvaW50c2V0X2pvaW50Q29udGFjdHNFbmFibGVkAO8GLHJhd211bHRpYm9keWpvaW50c2V0X2pvaW50U2V0Q29udGFjdHNFbmFibGVkAJwHJ3Jhd211bHRpYm9keWpvaW50c2V0X2pvaW50TGltaXRzRW5hYmxlZACnBiNyYXdtdWx0aWJvZHlqb2ludHNldF9qb2ludExpbWl0c01pbgDDBiNyYXdtdWx0aWJvZHlqb2ludHNldF9qb2ludExpbWl0c01heADEBh9fX3diZ19yYXdtdWx0aWJvZHlqb2ludHNldF9mcmVlAMkHGHJhd211bHRpYm9keWpvaW50c2V0X25ldwDECiByYXdtdWx0aWJvZHlqb2ludHNldF9jcmVhdGVKb2ludAC3BhtyYXdtdWx0aWJvZHlqb2ludHNldF9yZW1vdmUAlAkdcmF3bXVsdGlib2R5am9pbnRzZXRfY29udGFpbnMArAgncmF3bXVsdGlib2R5am9pbnRzZXRfZm9yRWFjaEpvaW50SGFuZGxlAJAJNHJhd211bHRpYm9keWpvaW50c2V0X2ZvckVhY2hKb2ludEF0dGFjaGVkVG9SaWdpZEJvZHkAjQkdcmF3cmlnaWRib2R5c2V0X3JiVHJhbnNsYXRpb24AiAYacmF3cmlnaWRib2R5c2V0X3JiUm90YXRpb24A5QYXcmF3cmlnaWRib2R5c2V0X3JiU2xlZXAA+AgccmF3cmlnaWRib2R5c2V0X3JiSXNTbGVlcGluZwD1BxpyYXdyaWdpZGJvZHlzZXRfcmJJc01vdmluZwCeCCFyYXdyaWdpZGJvZHlzZXRfcmJOZXh0VHJhbnNsYXRpb24AiQYecmF3cmlnaWRib2R5c2V0X3JiTmV4dFJvdGF0aW9uAOYGIHJhd3JpZ2lkYm9keXNldF9yYlNldFRyYW5zbGF0aW9uALMJHXJhd3JpZ2lkYm9keXNldF9yYlNldFJvdGF0aW9uAK0JG3Jhd3JpZ2lkYm9keXNldF9yYlNldExpbnZlbAD8BRtyYXdyaWdpZGJvZHlzZXRfcmJTZXRBbmd2ZWwA/QUtcmF3cmlnaWRib2R5c2V0X3JiU2V0TmV4dEtpbmVtYXRpY1RyYW5zbGF0aW9uAPYHKnJhd3JpZ2lkYm9keXNldF9yYlNldE5leHRLaW5lbWF0aWNSb3RhdGlvbgCjBjZyYXdyaWdpZGJvZHlzZXRfcmJSZWNvbXB1dGVNYXNzUHJvcGVydGllc0Zyb21Db2xsaWRlcnMAlQYjcmF3cmlnaWRib2R5c2V0X3JiU2V0QWRkaXRpb25hbE1hc3MA9wctcmF3cmlnaWRib2R5c2V0X3JiU2V0QWRkaXRpb25hbE1hc3NQcm9wZXJ0aWVzALEDGHJhd3JpZ2lkYm9keXNldF9yYkxpbnZlbACKBhhyYXdyaWdpZGJvZHlzZXRfcmJBbmd2ZWwAiwYhcmF3cmlnaWRib2R5c2V0X3JiVmVsb2NpdHlBdFBvaW50AMIEInJhd3JpZ2lkYm9keXNldF9yYkxvY2tUcmFuc2xhdGlvbnMAtAYocmF3cmlnaWRib2R5c2V0X3JiU2V0RW5hYmxlZFRyYW5zbGF0aW9ucwDCBR9yYXdyaWdpZGJvZHlzZXRfcmJMb2NrUm90YXRpb25zALUGJXJhd3JpZ2lkYm9keXNldF9yYlNldEVuYWJsZWRSb3RhdGlvbnMAwwUgcmF3cmlnaWRib2R5c2V0X3JiRG9taW5hbmNlR3JvdXAA+AcjcmF3cmlnaWRib2R5c2V0X3JiU2V0RG9taW5hbmNlR3JvdXAA1AcbcmF3cmlnaWRib2R5c2V0X3JiRW5hYmxlQ2NkANMIJnJhd3JpZ2lkYm9keXNldF9yYlNldFNvZnRDY2RQcmVkaWN0aW9uAOYIFnJhd3JpZ2lkYm9keXNldF9yYk1hc3MAwAcZcmF3cmlnaWRib2R5c2V0X3JiSW52TWFzcwD5ByJyYXdyaWdpZGJvZHlzZXRfcmJFZmZlY3RpdmVJbnZNYXNzAIwGGnJhd3JpZ2lkYm9keXNldF9yYkxvY2FsQ29tAI0GGnJhd3JpZ2lkYm9keXNldF9yYldvcmxkQ29tAI4GJXJhd3JpZ2lkYm9keXNldF9yYkludlByaW5jaXBhbEluZXJ0aWEAjwYscmF3cmlnaWRib2R5c2V0X3JiUHJpbmNpcGFsSW5lcnRpYUxvY2FsRnJhbWUA5wYicmF3cmlnaWRib2R5c2V0X3JiUHJpbmNpcGFsSW5lcnRpYQC8BipyYXdyaWdpZGJvZHlzZXRfcmJFZmZlY3RpdmVXb3JsZEludkluZXJ0aWEAmAYpcmF3cmlnaWRib2R5c2V0X3JiRWZmZWN0aXZlQW5ndWxhckluZXJ0aWEAvQYYcmF3cmlnaWRib2R5c2V0X3JiV2FrZVVwAM8HHnJhd3JpZ2lkYm9keXNldF9yYklzQ2NkRW5hYmxlZAD6ByNyYXdyaWdpZGJvZHlzZXRfcmJTb2Z0Q2NkUHJlZGljdGlvbgD7Bx5yYXdyaWdpZGJvZHlzZXRfcmJOdW1Db2xsaWRlcnMA/AcacmF3cmlnaWRib2R5c2V0X3JiQ29sbGlkZXIAhQcacmF3cmlnaWRib2R5c2V0X3JiQm9keVR5cGUA/QcdcmF3cmlnaWRib2R5c2V0X3JiU2V0Qm9keVR5cGUA7AcZcmF3cmlnaWRib2R5c2V0X3JiSXNGaXhlZADQBx1yYXdyaWdpZGJvZHlzZXRfcmJJc0tpbmVtYXRpYwDRBxtyYXdyaWdpZGJvZHlzZXRfcmJJc0R5bmFtaWMA1QcfcmF3cmlnaWRib2R5c2V0X3JiTGluZWFyRGFtcGluZwD+ByByYXdyaWdpZGJvZHlzZXRfcmJBbmd1bGFyRGFtcGluZwD/ByJyYXdyaWdpZGJvZHlzZXRfcmJTZXRMaW5lYXJEYW1waW5nAOcII3Jhd3JpZ2lkYm9keXNldF9yYlNldEFuZ3VsYXJEYW1waW5nAOgIHHJhd3JpZ2lkYm9keXNldF9yYlNldEVuYWJsZWQA1AgbcmF3cmlnaWRib2R5c2V0X3JiSXNFbmFibGVkAIAIHnJhd3JpZ2lkYm9keXNldF9yYkdyYXZpdHlTY2FsZQCBCCFyYXdyaWdpZGJvZHlzZXRfcmJTZXRHcmF2aXR5U2NhbGUApQcdcmF3cmlnaWRib2R5c2V0X3JiUmVzZXRGb3JjZXMA1QgecmF3cmlnaWRib2R5c2V0X3JiUmVzZXRUb3JxdWVzANYIGnJhd3JpZ2lkYm9keXNldF9yYkFkZEZvcmNlAP4FHnJhd3JpZ2lkYm9keXNldF9yYkFwcGx5SW1wdWxzZQD/BRtyYXdyaWdpZGJvZHlzZXRfcmJBZGRUb3JxdWUAgAYkcmF3cmlnaWRib2R5c2V0X3JiQXBwbHlUb3JxdWVJbXB1bHNlAIEGIXJhd3JpZ2lkYm9keXNldF9yYkFkZEZvcmNlQXRQb2ludADLBCVyYXdyaWdpZGJvZHlzZXRfcmJBcHBseUltcHVsc2VBdFBvaW50AJQELHJhd3JpZ2lkYm9keXNldF9yYkFkZGl0aW9uYWxTb2x2ZXJJdGVyYXRpb25zAIIIL3Jhd3JpZ2lkYm9keXNldF9yYlNldEFkZGl0aW9uYWxTb2x2ZXJJdGVyYXRpb25zAOkIGnJhd3JpZ2lkYm9keXNldF9yYlVzZXJEYXRhAO0HHXJhd3JpZ2lkYm9keXNldF9yYlNldFVzZXJEYXRhAMoIG3Jhd3JpZ2lkYm9keXNldF9yYlVzZXJGb3JjZQDFBhxyYXdyaWdpZGJvZHlzZXRfcmJVc2VyVG9ycXVlAMYGGl9fd2JnX3Jhd3JpZ2lkYm9keXNldF9mcmVlAO4HE3Jhd3JpZ2lkYm9keXNldF9uZXcA1gofcmF3cmlnaWRib2R5c2V0X2NyZWF0ZVJpZ2lkQm9keQDeARZyYXdyaWdpZGJvZHlzZXRfcmVtb3ZlAPUCE3Jhd3JpZ2lkYm9keXNldF9sZW4A+wsYcmF3cmlnaWRib2R5c2V0X2NvbnRhaW5zAOoIJnJhd3JpZ2lkYm9keXNldF9mb3JFYWNoUmlnaWRCb2R5SGFuZGxlAJEJOXJhd3JpZ2lkYm9keXNldF9wcm9wYWdhdGVNb2RpZmllZEJvZHlQb3NpdGlvbnNUb0NvbGxpZGVycwD9BhhfX3diZ19yYXdicm9hZHBoYXNlX2ZyZWUAygcRcmF3YnJvYWRwaGFzZV9uZXcAlQkVcmF3YnJvYWRwaGFzZV9jYXN0UmF5AJICIXJhd2Jyb2FkcGhhc2VfY2FzdFJheUFuZEdldE5vcm1hbACTAiJyYXdicm9hZHBoYXNlX2ludGVyc2VjdGlvbnNXaXRoUmF5AOABI3Jhd2Jyb2FkcGhhc2VfaW50ZXJzZWN0aW9uV2l0aFNoYXBlANUBGnJhd2Jyb2FkcGhhc2VfcHJvamVjdFBvaW50ALcCJ3Jhd2Jyb2FkcGhhc2VfcHJvamVjdFBvaW50QW5kR2V0RmVhdHVyZQC7AiRyYXdicm9hZHBoYXNlX2ludGVyc2VjdGlvbnNXaXRoUG9pbnQAmAIXcmF3YnJvYWRwaGFzZV9jYXN0U2hhcGUA0wEkcmF3YnJvYWRwaGFzZV9pbnRlcnNlY3Rpb25zV2l0aFNoYXBlANkBL3Jhd2Jyb2FkcGhhc2VfY29sbGlkZXJzV2l0aEFhYmJJbnRlcnNlY3RpbmdBYWJiALwCHHJhd2NvbGxpZGVyc2V0X2NvVHJhbnNsYXRpb24AkAYZcmF3Y29sbGlkZXJzZXRfY29Sb3RhdGlvbgDoBiVyYXdjb2xsaWRlcnNldF9jb1RyYW5zbGF0aW9uV3J0UGFyZW50AOwFInJhd2NvbGxpZGVyc2V0X2NvUm90YXRpb25XcnRQYXJlbnQAuAYfcmF3Y29sbGlkZXJzZXRfY29TZXRUcmFuc2xhdGlvbgDWByhyYXdjb2xsaWRlcnNldF9jb1NldFRyYW5zbGF0aW9uV3J0UGFyZW50AMEHHHJhd2NvbGxpZGVyc2V0X2NvU2V0Um90YXRpb24AoAYlcmF3Y29sbGlkZXJzZXRfY29TZXRSb3RhdGlvbldydFBhcmVudADACRlyYXdjb2xsaWRlcnNldF9jb0lzU2Vuc29yAIMIGnJhd2NvbGxpZGVyc2V0X2NvU2hhcGVUeXBlAI4JIHJhd2NvbGxpZGVyc2V0X2NvSGFsZnNwYWNlTm9ybWFsAK4FHHJhd2NvbGxpZGVyc2V0X2NvSGFsZkV4dGVudHMAnQUfcmF3Y29sbGlkZXJzZXRfY29TZXRIYWxmRXh0ZW50cwDUBhdyYXdjb2xsaWRlcnNldF9jb1JhZGl1cwC5CBpyYXdjb2xsaWRlcnNldF9jb1NldFJhZGl1cwDOCRtyYXdjb2xsaWRlcnNldF9jb0hhbGZIZWlnaHQAuggecmF3Y29sbGlkZXJzZXRfY29TZXRIYWxmSGVpZ2h0AM8JHHJhd2NvbGxpZGVyc2V0X2NvUm91bmRSYWRpdXMAuwgfcmF3Y29sbGlkZXJzZXRfY29TZXRSb3VuZFJhZGl1cwDQCRpyYXdjb2xsaWRlcnNldF9jb1ZveGVsRGF0YQCoBhpyYXdjb2xsaWRlcnNldF9jb1ZveGVsU2l6ZQCxBRlyYXdjb2xsaWRlcnNldF9jb1NldFZveGVsAJYHJXJhd2NvbGxpZGVyc2V0X2NvUHJvcGFnYXRlVm94ZWxDaGFuZ2UArgkjcmF3Y29sbGlkZXJzZXRfY29Db21iaW5lVm94ZWxTdGF0ZXMAwQkZcmF3Y29sbGlkZXJzZXRfY29WZXJ0aWNlcwCpBhhyYXdjb2xsaWRlcnNldF9jb0luZGljZXMAqgYdcmF3Y29sbGlkZXJzZXRfY29UcmlNZXNoRmxhZ3MA3QYhcmF3Y29sbGlkZXJzZXRfY29IZWlnaHRGaWVsZEZsYWdzAN4GI3Jhd2NvbGxpZGVyc2V0X2NvSGVpZ2h0ZmllbGRIZWlnaHRzAKsGIXJhd2NvbGxpZGVyc2V0X2NvSGVpZ2h0ZmllbGRTY2FsZQCcBSFyYXdjb2xsaWRlcnNldF9jb0hlaWdodGZpZWxkTlJvd3MAvgYhcmF3Y29sbGlkZXJzZXRfY29IZWlnaHRmaWVsZE5Db2xzAL8GF3Jhd2NvbGxpZGVyc2V0X2NvUGFyZW50AJgHG3Jhd2NvbGxpZGVyc2V0X2NvU2V0RW5hYmxlZACmBxpyYXdjb2xsaWRlcnNldF9jb0lzRW5hYmxlZADXBx9yYXdjb2xsaWRlcnNldF9jb1NldENvbnRhY3RTa2luAOsIHHJhd2NvbGxpZGVyc2V0X2NvQ29udGFjdFNraW4AhAgZcmF3Y29sbGlkZXJzZXRfY29GcmljdGlvbgCFCBxyYXdjb2xsaWRlcnNldF9jb1Jlc3RpdHV0aW9uAIYIGHJhd2NvbGxpZGVyc2V0X2NvRGVuc2l0eQCfCBVyYXdjb2xsaWRlcnNldF9jb01hc3MAoAgXcmF3Y29sbGlkZXJzZXRfY29Wb2x1bWUAoQggcmF3Y29sbGlkZXJzZXRfY29Db2xsaXNpb25Hcm91cHMAuQcdcmF3Y29sbGlkZXJzZXRfY29Tb2x2ZXJHcm91cHMAugcccmF3Y29sbGlkZXJzZXRfY29BY3RpdmVIb29rcwCHCCVyYXdjb2xsaWRlcnNldF9jb0FjdGl2ZUNvbGxpc2lvblR5cGVzAIgIHXJhd2NvbGxpZGVyc2V0X2NvQWN0aXZlRXZlbnRzAIkIK3Jhd2NvbGxpZGVyc2V0X2NvQ29udGFjdEZvcmNlRXZlbnRUaHJlc2hvbGQAiggecmF3Y29sbGlkZXJzZXRfY29Db250YWluc1BvaW50AJIFGnJhd2NvbGxpZGVyc2V0X2NvQ2FzdFNoYXBlAJYCHXJhd2NvbGxpZGVyc2V0X2NvQ2FzdENvbGxpZGVyAM8DIHJhd2NvbGxpZGVyc2V0X2NvSW50ZXJzZWN0c1NoYXBlAO4CHXJhd2NvbGxpZGVyc2V0X2NvQ29udGFjdFNoYXBlAIQCIHJhd2NvbGxpZGVyc2V0X2NvQ29udGFjdENvbGxpZGVyAKwGHXJhd2NvbGxpZGVyc2V0X2NvUHJvamVjdFBvaW50AKQEHnJhd2NvbGxpZGVyc2V0X2NvSW50ZXJzZWN0c1JheQDSAxhyYXdjb2xsaWRlcnNldF9jb0Nhc3RSYXkAswMkcmF3Y29sbGlkZXJzZXRfY29DYXN0UmF5QW5kR2V0Tm9ybWFsAOgCGnJhd2NvbGxpZGVyc2V0X2NvU2V0U2Vuc29yANIHH3Jhd2NvbGxpZGVyc2V0X2NvU2V0UmVzdGl0dXRpb24A7AgccmF3Y29sbGlkZXJzZXRfY29TZXRGcmljdGlvbgDtCCRyYXdjb2xsaWRlcnNldF9jb0ZyaWN0aW9uQ29tYmluZVJ1bGUAiwgncmF3Y29sbGlkZXJzZXRfY29TZXRGcmljdGlvbkNvbWJpbmVSdWxlALwIJ3Jhd2NvbGxpZGVyc2V0X2NvUmVzdGl0dXRpb25Db21iaW5lUnVsZQCMCCpyYXdjb2xsaWRlcnNldF9jb1NldFJlc3RpdHV0aW9uQ29tYmluZVJ1bGUAvQgjcmF3Y29sbGlkZXJzZXRfY29TZXRDb2xsaXNpb25Hcm91cHMAkQcgcmF3Y29sbGlkZXJzZXRfY29TZXRTb2x2ZXJHcm91cHMAkgcfcmF3Y29sbGlkZXJzZXRfY29TZXRBY3RpdmVIb29rcwCtCCByYXdjb2xsaWRlcnNldF9jb1NldEFjdGl2ZUV2ZW50cwC+CChyYXdjb2xsaWRlcnNldF9jb1NldEFjdGl2ZUNvbGxpc2lvblR5cGVzAL8IGXJhd2NvbGxpZGVyc2V0X2NvU2V0U2hhcGUA0AUucmF3Y29sbGlkZXJzZXRfY29TZXRDb250YWN0Rm9yY2VFdmVudFRocmVzaG9sZADuCBtyYXdjb2xsaWRlcnNldF9jb1NldERlbnNpdHkA7wgYcmF3Y29sbGlkZXJzZXRfY29TZXRNYXNzAPAIInJhd2NvbGxpZGVyc2V0X2NvU2V0TWFzc1Byb3BlcnRpZXMAugMZX193YmdfcmF3Y29sbGlkZXJzZXRfZnJlZQCnBxJyYXdjb2xsaWRlcnNldF9uZXcAmwoScmF3Y29sbGlkZXJzZXRfbGVuAPwLF3Jhd2NvbGxpZGVyc2V0X2NvbnRhaW5zAPEIHXJhd2NvbGxpZGVyc2V0X2NyZWF0ZUNvbGxpZGVyAOYBFXJhd2NvbGxpZGVyc2V0X3JlbW92ZQCPBCRyYXdjb2xsaWRlcnNldF9mb3JFYWNoQ29sbGlkZXJIYW5kbGUAkgkaX193YmdfcmF3c2hhcGVjb250YWN0X2ZyZWUAogkZX193YmdfcmF3bmFycm93cGhhc2VfZnJlZQCyCBJyYXduYXJyb3dwaGFzZV9uZXcAmQshcmF3bmFycm93cGhhc2VfY29udGFjdF9wYWlyc193aXRoAJoJG3Jhd25hcnJvd3BoYXNlX2NvbnRhY3RfcGFpcgDfBiZyYXduYXJyb3dwaGFzZV9pbnRlcnNlY3Rpb25fcGFpcnNfd2l0aACbCSByYXduYXJyb3dwaGFzZV9pbnRlcnNlY3Rpb25fcGFpcgDvBx1fX3diZ19yYXdjb250YWN0bWFuaWZvbGRfZnJlZQCjCRhyYXdjb250YWN0cGFpcl9jb2xsaWRlcjEAmgsYcmF3Y29udGFjdHBhaXJfY29sbGlkZXIyAJsLInJhd2NvbnRhY3RwYWlyX251bUNvbnRhY3RNYW5pZm9sZHMAnAsecmF3Y29udGFjdHBhaXJfY29udGFjdE1hbmlmb2xkAPkIGXJhd2NvbnRhY3RtYW5pZm9sZF9ub3JtYWwAjQgbcmF3Y29udGFjdG1hbmlmb2xkX2xvY2FsX24xAI4IG3Jhd2NvbnRhY3RtYW5pZm9sZF9sb2NhbF9uMgCPCBxyYXdjb250YWN0bWFuaWZvbGRfc3Vic2hhcGUxAJ0LHHJhd2NvbnRhY3RtYW5pZm9sZF9zdWJzaGFwZTIAngsfcmF3Y29udGFjdG1hbmlmb2xkX251bV9jb250YWN0cwCfCyNyYXdjb250YWN0bWFuaWZvbGRfY29udGFjdF9sb2NhbF9wMQDrBiNyYXdjb250YWN0bWFuaWZvbGRfY29udGFjdF9sb2NhbF9wMgDsBh9yYXdjb250YWN0bWFuaWZvbGRfY29udGFjdF9kaXN0AJwKH3Jhd2NvbnRhY3RtYW5pZm9sZF9jb250YWN0X2ZpZDEAnQofcmF3Y29udGFjdG1hbmlmb2xkX2NvbnRhY3RfZmlkMgCeCiJyYXdjb250YWN0bWFuaWZvbGRfY29udGFjdF9pbXB1bHNlAJ8KLHJhd2NvbnRhY3RtYW5pZm9sZF9jb250YWN0X3RhbmdlbnRfaW1wdWxzZV94AKAKLHJhd2NvbnRhY3RtYW5pZm9sZF9jb250YWN0X3RhbmdlbnRfaW1wdWxzZV95AKEKJnJhd2NvbnRhY3RtYW5pZm9sZF9udW1fc29sdmVyX2NvbnRhY3RzAKALJ3Jhd2NvbnRhY3RtYW5pZm9sZF9zb2x2ZXJfY29udGFjdF9wb2ludADtBiZyYXdjb250YWN0bWFuaWZvbGRfc29sdmVyX2NvbnRhY3RfZGlzdACiCipyYXdjb250YWN0bWFuaWZvbGRfc29sdmVyX2NvbnRhY3RfZnJpY3Rpb24AgwotcmF3Y29udGFjdG1hbmlmb2xkX3NvbHZlcl9jb250YWN0X3Jlc3RpdHV0aW9uAIQKMnJhd2NvbnRhY3RtYW5pZm9sZF9zb2x2ZXJfY29udGFjdF90YW5nZW50X3ZlbG9jaXR5AI0HHV9fd2JnX3Jhd3BvaW50cHJvamVjdGlvbl9mcmVlAKQJGHJhd3BvaW50cHJvamVjdGlvbl9wb2ludADXCBtyYXdwb2ludHByb2plY3Rpb25faXNJbnNpZGUA/QslX193YmdfcmF3cG9pbnRjb2xsaWRlcnByb2plY3Rpb25fZnJlZQClCSlyYXdwb2ludGNvbGxpZGVycHJvamVjdGlvbl9jb2xsaWRlckhhbmRsZQD+CyByYXdwb2ludGNvbGxpZGVycHJvamVjdGlvbl9wb2ludADYCCNyYXdwb2ludGNvbGxpZGVycHJvamVjdGlvbl9pc0luc2lkZQD/CyZyYXdwb2ludGNvbGxpZGVycHJvamVjdGlvbl9mZWF0dXJlVHlwZQCADCRyYXdwb2ludGNvbGxpZGVycHJvamVjdGlvbl9mZWF0dXJlSWQAqQsdX193YmdfcmF3cmF5aW50ZXJzZWN0aW9uX2ZyZWUApgkcX193YmdfcmF3cmF5Y29sbGlkZXJoaXRfZnJlZQCnCRNfX3diZ19yYXdzaGFwZV9mcmVlAMYHD3Jhd3NoYXBlX2N1Ym9pZACJCxRyYXdzaGFwZV9yb3VuZEN1Ym9pZAD/Cg1yYXdzaGFwZV9iYWxsAKoLEnJhd3NoYXBlX2hhbGZzcGFjZQCdBhByYXdzaGFwZV9jYXBzdWxlAMUJEXJhd3NoYXBlX2N5bGluZGVyAKELFnJhd3NoYXBlX3JvdW5kQ3lsaW5kZXIAigsNcmF3c2hhcGVfY29uZQCiCxJyYXdzaGFwZV9yb3VuZENvbmUAiwsPcmF3c2hhcGVfdm94ZWxzAPAGGXJhd3NoYXBlX3ZveGVsc0Zyb21Qb2ludHMA8QYRcmF3c2hhcGVfcG9seWxpbmUA7gkQcmF3c2hhcGVfdHJpbWVzaACvCRRyYXdzaGFwZV9oZWlnaHRmaWVsZACfBRByYXdzaGFwZV9zZWdtZW50ALsFEXJhd3NoYXBlX3RyaWFuZ2xlAIwEFnJhd3NoYXBlX3JvdW5kVHJpYW5nbGUAigQTcmF3c2hhcGVfY29udmV4SHVsbADvCRhyYXdzaGFwZV9yb3VuZENvbnZleEh1bGwA6AkTcmF3c2hhcGVfY29udmV4TWVzaAC0CRhyYXdzaGFwZV9yb3VuZENvbnZleE1lc2gAsAkScmF3c2hhcGVfY2FzdFNoYXBlAJkBGHJhd3NoYXBlX2ludGVyc2VjdHNTaGFwZQCVAhVyYXdzaGFwZV9jb250YWN0U2hhcGUA1AEWcmF3c2hhcGVfY29udGFpbnNQb2ludACMAxVyYXdzaGFwZV9wcm9qZWN0UG9pbnQA5wIWcmF3c2hhcGVfaW50ZXJzZWN0c1JheQC9AhByYXdzaGFwZV9jYXN0UmF5ALACHHJhd3NoYXBlX2Nhc3RSYXlBbmRHZXROb3JtYWwAlAIaX193YmdfcmF3c2hhcGVjYXN0aGl0X2ZyZWUAqAkYcmF3c2hhcGVjYXN0aGl0X3dpdG5lc3MxANkIF3Jhd3NoYXBlY2FzdGhpdF9ub3JtYWwxANoIF3Jhd3NoYXBlY2FzdGhpdF9ub3JtYWwyANsIIl9fd2JnX3Jhd2NvbGxpZGVyc2hhcGVjYXN0aGl0X2ZyZWUAqQkmcmF3Y29sbGlkZXJzaGFwZWNhc3RoaXRfdGltZV9vZl9pbXBhY3QAgQwgcmF3Y29sbGlkZXJzaGFwZWNhc3RoaXRfd2l0bmVzczEA3AggcmF3Y29sbGlkZXJzaGFwZWNhc3RoaXRfd2l0bmVzczIA3QgPcmF3cm90YXRpb25fbmV3ALAMFHJhd3JvdGF0aW9uX2lkZW50aXR5AP4MDXJhd3JvdGF0aW9uX3cAggwOcmF3dmVjdG9yX3plcm8Arw0NcmF3dmVjdG9yX25ldwC+DA9yYXd2ZWN0b3Jfc2V0X3kAogwPcmF3dmVjdG9yX3NldF96AKMMDXJhd3ZlY3Rvcl94eXoA0QkNcmF3dmVjdG9yX3l4egDSCQ1yYXd2ZWN0b3Jfenh5ANMJDXJhd3ZlY3Rvcl94enkA1AkNcmF3dmVjdG9yX3l6eADVCQ1yYXd2ZWN0b3Jfenl4ANYJFnJhd3NkcG1hdHJpeDNfZWxlbWVudHMAogghX193YmdfcmF3ZGVidWdyZW5kZXJwaXBlbGluZV9mcmVlAMsHGnJhd2RlYnVncmVuZGVycGlwZWxpbmVfbmV3AOkJH3Jhd2RlYnVncmVuZGVycGlwZWxpbmVfdmVydGljZXMA8ggdcmF3ZGVidWdyZW5kZXJwaXBlbGluZV9jb2xvcnMA8wgdcmF3ZGVidWdyZW5kZXJwaXBlbGluZV9yZW5kZXIAjgIYX193YmdfcmF3ZXZlbnRxdWV1ZV9mcmVlAMwHH19fd2JnX3Jhd2NvbnRhY3Rmb3JjZWV2ZW50X2ZyZWUAqgkecmF3Y29udGFjdGZvcmNlZXZlbnRfY29sbGlkZXIyAIMMIHJhd2NvbnRhY3Rmb3JjZWV2ZW50X3RvdGFsX2ZvcmNlAN4IKnJhd2NvbnRhY3Rmb3JjZWV2ZW50X3RvdGFsX2ZvcmNlX21hZ25pdHVkZQCEDChyYXdjb250YWN0Zm9yY2VldmVudF9tYXhfZm9yY2VfZGlyZWN0aW9uAN8IKHJhd2NvbnRhY3Rmb3JjZWV2ZW50X21heF9mb3JjZV9tYWduaXR1ZGUAhQwRcmF3ZXZlbnRxdWV1ZV9uZXcA0woicmF3ZXZlbnRxdWV1ZV9kcmFpbkNvbGxpc2lvbkV2ZW50cwC7CSVyYXdldmVudHF1ZXVlX2RyYWluQ29udGFjdEZvcmNlRXZlbnRzALwJE3Jhd2V2ZW50cXVldWVfY2xlYXIA5AcdX193YmdfcmF3cGh5c2ljc3BpcGVsaW5lX2ZyZWUAzQcWcmF3cGh5c2ljc3BpcGVsaW5lX25ldwCoBCdyYXdwaHlzaWNzcGlwZWxpbmVfc2V0X3Byb2ZpbGVyX2VuYWJsZWQAjgwmcmF3cGh5c2ljc3BpcGVsaW5lX2lzX3Byb2ZpbGVyX2VuYWJsZWQAhgwecmF3cGh5c2ljc3BpcGVsaW5lX3RpbWluZ19zdGVwAIwLLXJhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfY29sbGlzaW9uX2RldGVjdGlvbgDaCiVyYXdwaHlzaWNzcGlwZWxpbmVfdGltaW5nX2Jyb2FkX3BoYXNlANsKJnJhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfbmFycm93X3BoYXNlANwKIHJhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfc29sdmVyAN0KK3Jhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfdmVsb2NpdHlfYXNzZW1ibHkAjQstcmF3cGh5c2ljc3BpcGVsaW5lX3RpbWluZ192ZWxvY2l0eV9yZXNvbHV0aW9uAN4KKXJhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfdmVsb2NpdHlfdXBkYXRlAN8KLHJhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfdmVsb2NpdHlfd3JpdGViYWNrAI4LHXJhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfY2NkAOAKLXJhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfY2NkX3RvaV9jb21wdXRhdGlvbgCPCylyYXdwaHlzaWNzcGlwZWxpbmVfdGltaW5nX2NjZF9icm9hZF9waGFzZQCQCypyYXdwaHlzaWNzcGlwZWxpbmVfdGltaW5nX2NjZF9uYXJyb3dfcGhhc2UAkQskcmF3cGh5c2ljc3BpcGVsaW5lX3RpbWluZ19jY2Rfc29sdmVyAJILLXJhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfaXNsYW5kX2NvbnN0cnVjdGlvbgDhCiZyYXdwaHlzaWNzcGlwZWxpbmVfdGltaW5nX3VzZXJfY2hhbmdlcwCTCxdyYXdwaHlzaWNzcGlwZWxpbmVfc3RlcADGASFyYXdwaHlzaWNzcGlwZWxpbmVfc3RlcFdpdGhFdmVudHMAuAEfX193YmdfcmF3ZGVzZXJpYWxpemVkd29ybGRfZnJlZQDwByByYXdkZXNlcmlhbGl6ZWR3b3JsZF90YWtlR3Jhdml0eQCWCC5yYXdkZXNlcmlhbGl6ZWR3b3JsZF90YWtlSW50ZWdyYXRpb25QYXJhbWV0ZXJzAOkFJnJhd2Rlc2VyaWFsaXplZHdvcmxkX3Rha2VJc2xhbmRNYW5hZ2VyAJ4GI3Jhd2Rlc2VyaWFsaXplZHdvcmxkX3Rha2VCcm9hZFBoYXNlAOUHJHJhd2Rlc2VyaWFsaXplZHdvcmxkX3Rha2VOYXJyb3dQaGFzZQDgBh9yYXdkZXNlcmlhbGl6ZWR3b3JsZF90YWtlQm9kaWVzAOQGInJhd2Rlc2VyaWFsaXplZHdvcmxkX3Rha2VDb2xsaWRlcnMAsgcmcmF3ZGVzZXJpYWxpemVkd29ybGRfdGFrZUltcHVsc2VKb2ludHMAvAUocmF3ZGVzZXJpYWxpemVkd29ybGRfdGFrZU11bHRpYm9keUpvaW50cwC9BSVyYXdzZXJpYWxpemF0aW9ucGlwZWxpbmVfc2VyaWFsaXplQWxsAMABJ3Jhd3NlcmlhbGl6YXRpb25waXBlbGluZV9kZXNlcmlhbGl6ZUFsbADQBhxyYXdjb2xsaWRlcnNldF9pc0hhbmRsZVZhbGlkAPEIHHJhd3JheWludGVyc2VjdGlvbl9mZWF0dXJlSWQAqQskcmF3cmF5Y29sbGlkZXJpbnRlcnNlY3Rpb25fZmVhdHVyZUlkAKkLNXJhd2ludGVncmF0aW9ucGFyYW1ldGVyc19zZXRfbnVtSW50ZXJuYWxQZ3NJdGVyYXRpb25zAJgMD3Jhd3ZlY3Rvcl9zZXRfeACaDA5yZXNlcnZlX21lbW9yeQC4CyJyYXdraW5lbWF0aWNjaGFyYWN0ZXJjb250cm9sbGVyX3VwAM4IF3Jhd3NoYXBlY29udGFjdF9ub3JtYWwyAM4IFnJhd3NoYXBlY29udGFjdF9wb2ludDEA1wgWcmF3c2hhcGVjb250YWN0X3BvaW50MgDcCBlyYXdyYXlpbnRlcnNlY3Rpb25fbm9ybWFsANwIIXJhd3JheWNvbGxpZGVyaW50ZXJzZWN0aW9uX25vcm1hbADcCBdyYXdzaGFwZWNvbnRhY3Rfbm9ybWFsMQDdCB9yYXdjb2xsaWRlcnNoYXBlY2FzdGhpdF9ub3JtYWwxAM4IH3Jhd2NvbGxpZGVyc2hhcGVjYXN0aGl0X25vcm1hbDIAzwgYcmF3c2hhcGVjYXN0aGl0X3dpdG5lc3MyAN4IMXJhd2ludGVncmF0aW9ucGFyYW1ldGVyc19udW1JbnRlcm5hbFBnc0l0ZXJhdGlvbnMA8gsYcmF3c2hhcGVjb250YWN0X2Rpc3RhbmNlAOkLHnJhd3JheWludGVyc2VjdGlvbl9mZWF0dXJlVHlwZQCADClyYXdyYXljb2xsaWRlcmludGVyc2VjdGlvbl9jb2xsaWRlckhhbmRsZQD+CyFyYXdyYXlpbnRlcnNlY3Rpb25fdGltZV9vZl9pbXBhY3QAgQwmcmF3cmF5Y29sbGlkZXJpbnRlcnNlY3Rpb25fZmVhdHVyZVR5cGUAgAwgcmF3cmF5Y29sbGlkZXJoaXRfY29sbGlkZXJIYW5kbGUA7gspcmF3cmF5Y29sbGlkZXJpbnRlcnNlY3Rpb25fdGltZV9vZl9pbXBhY3QAgQwecmF3c2hhcGVjYXN0aGl0X3RpbWVfb2ZfaW1wYWN0APULJnJhd2NvbGxpZGVyc2hhcGVjYXN0aGl0X2NvbGxpZGVySGFuZGxlAO4LHnJhd3JheWNvbGxpZGVyaGl0X3RpbWVPZkltcGFjdACBDA1yYXdyb3RhdGlvbl94APULDXJhd3JvdGF0aW9uX3kA5gsNcmF3cm90YXRpb25fegCBDAtyYXd2ZWN0b3JfeAD1CwtyYXd2ZWN0b3JfeQDmCwtyYXd2ZWN0b3JfegCBDB5yYXdjb250YWN0Zm9yY2VldmVudF9jb2xsaWRlcjEA7gsjcmF3aW50ZWdyYXRpb25wYXJhbWV0ZXJzX2xlbmd0aFVuaXQAhAwZX193YmdfcmF3Y29udGFjdHBhaXJfZnJlZQCjCSVfX3diZ19yYXdyYXljb2xsaWRlcmludGVyc2VjdGlvbl9mcmVlAKUJFl9fd2JnX3Jhd3JvdGF0aW9uX2ZyZWUApAkUX193YmdfcmF3dmVjdG9yX2ZyZWUApwkYX193YmdfcmF3c2RwbWF0cml4M19mcmVlAKYJI19fd2JnX3Jhd3NlcmlhbGl6YXRpb25waXBlbGluZV9mcmVlAJ8JEHJhd2NjZHNvbHZlcl9uZXcArg0ccmF3c2VyaWFsaXphdGlvbnBpcGVsaW5lX25ldwCuDRNfX3diaW5kZ2VuX2V4cG9ydF8wAJwOH19fd2JpbmRnZW5fYWRkX3RvX3N0YWNrX3BvaW50ZXIA9A4TX193YmluZGdlbl9leHBvcnRfMQDzDRNfX3diaW5kZ2VuX2V4cG9ydF8yAKENCdwRAQBBAQv3CIkO4wK8DLAP5Q75DvcO9Q72Dv0M+g6vDLQLng2eDbAFsAXlDMEP+wj7COQD5QOUB/sO5wmrBa0NsAvmCawN7gbhBboFkAeMDowOjA6MDv4KsgmvC5kE9AKhBJIKygbyDIoM7AqxCaAHxA3CD5AOww/AD78Pjw6xD+EN4Qi/CuAH3gTcCa0CgwaXC7YF4gPpBssGiw6LDosOiw6aCskI0Qr9A9sCgQTZDOAM8QzTDP0KyAWhB+AJvw+ODsENjQ7gDeoOwAqMDPgOkwmTCbIPvg/cD9oP2w/aDJ8E9AXcD1V8Y7gMxgmHDNoL2gv0CpQLdU+BAWZHtwFJIfMMgA+gDf4O/Q7/DvQM/A7FDd0M/Qz6DrEMng2eDbAFsAXBD+AH3gTcCa0CgwaXC7YF4gPpBssGlg6WDpYOlg6aCskI0Qr9A9sCgQTxDKEHvw+ODsAPvw+YDrEP4g3ACpMOkw6TDpMOkg7gA5QOlA6UDpQOmg6nA5cOlw6XDpcOmQ6NA5ID5AyuCK8I5wmrBa0NsAvmCawN7gbhBboFkAeVDpUOlQ6VDv4KsgmvC5kE9AKhBPIMoAfCD5AOww+bDuMNvwr+DVv9DWD8DVqADqAC/w1h+wj7COQD5QOPDIEPyA2YCccNyA3GDdENzQ3HDccNyw3JDcoNuQXmDecN6A3pDeoN4QuVDYcMlQvaC70JiAy1CdwLtgmAC7cJ9QqrC74JuA6VD4kPjA/0DJMPhw+pBZsP8wyGD6INig/1DJQPmA/ZB5APjw+ZD44Ptw+eD5oP5gefD6ANiw+SD/EHkQ+HCpYPnQ/2DI0PnA+XD4gP3gyFD/0M3QzdDPgK+g6zDKAPkAyCDuwBrw6vDq8Orw65DvMDgQ7dAYMOcaoOqg6qDqoOug7eA4YObqQOpA6kDqQOuw70A4UObeQMrgivCOoJ9QOyDbIL6wmxDc8E4wWTBJMHqQ6pDqkOqQ7+CrIJrwuZBPQCoQSKDL8Ewg+QDsMPwA+/D8QOsQ/tDaMFpQ6lDqUOpQ68Dt8Dtw63DrcOtw69DvYFrg6uDq4Org6aDoQOXuAHvwPcCa0CgwaXC/cD4gPIBMsGtg62DrYOtg6aCsUF0QrPArMC3wLTDL8Hvw+ODsEO6w3XAqAOoA6gDqAOmQ6jDqMOow6jDpIOPCP0B9cDywmWC7sM/wyaBJoHzQS+B6YOpg6mDqYOuQaLBZsHpQOiAskDmw3pDo8Njw2PA+MLzAijCsEPvw64D8cPwA6xD6ULqwiXDYkCmQ32A5YN4wGaDaABmA2LBPEJ8gO4DasM8gm3DcwE4AWbBI4Hng6eDp4Ong7IDKYCig3iBKQD+wTVBrAI1AzUDMgJqwSzBckPxQ7GDu4N6w7JCr8JxwOmDMIGiAnWC40EpQX6ArEGpw6nDqcOpw7DDJgBjQ3kBJ0D/gTaBoAD3gveC4AKiA6tB/IKzg/QDqAFzw/RDu8N7Q6ICtQLsw37Cs0Mng2eDbAFsAXBD+kK7AP8A/QN/AnOCtYE2wXGBOsFtQ61DrUOtQ7HDPQBgQ3gBJcD9wTHCaQKiQyJDI8FpwScBuwNyA/CDrkPww7YDbQPzAq7B8wJ1gOOBPcK9wq7BLoElwf7CPsI5APlA+YK5wOPAZYB+QmNAtUE3wXFBKkHrQ6tDq0OrQ6eAYwBjg3wBJsD+gTSDc8K+gyHA6gCxw6kBocOyg/IDtIG0wbJDpcKrAyzD+QK5gOkAdcB+gnqAdQE1QXHBKoHsQ6xDrEOsQ6KAXuMDe4EnAP2BPsG1AX5DPQEwASiD6wHyw/KDssOxwroB8YPtQyWBLANlgrsCdIBzgTiBdMDqAeiDqIOog6iDrUBtAGDDe8ElgOBBfsG1AW6C7oL+QqiD6wH1Q3MD8wOzQ7sDscKpgbGD5QBrwTBAvYN9gnED9kE2AWzBMUPsw6zDrMOsw7BDJoBgA3jBKAD+QTTDdAKuQu5C/QIzg6lBs0Pzw6YCoQEggS1ApAF2AGiBd0CigX6BZMF2Az2ArYD/AKrB6wOrA6sDqwOywyqAoIN4QSjA/0E4Qy0Dc8MzwyeB6MP6QecCdAP0g66D9MO8A3/A4ILggv1BPUEnAToCugD/wL1DfgJvg3aBN4FtQSHB58Onw6fDp8OxAyLAoQN6ASaA/8EpQrRDNEMnwekD/UI0Q/UDpwN1Q7xDf4DuQm4CZUElQSvBd4H1QPCCfYK3wy2DZcEtge5BNMHtA60DrQOtA7zCd8H8QqmBPAC6wTWDrUPzgzODOEJ1w7gCNMP2A7SD74O5QrqA4kBkAH3Cb8N1wTZBckEiQewDrAOsA6wDskMvAGHDd8EogODBfsG1AXdC90LuwrHBqwHpQ/UD9kOwg3AD8EPsQ+xD7QPxwrrCu4DLvgN9Qm7DdsE1gWxBIgHqw6rDqsOqw7CDJsCiw3mBJgDhAW0BeICswuzC8QJgQquB/IK2Q/iDpoF4w7dDcoF5wrtAy/6Df0Jug3SBNoFsgSKB50OnQ6dDp0OzAyrAoUN5QShA/wEwwmZCqMNow3UCrcEoQbgCdUP2g6kDdsO2Q3ICuoK7wMo+Q3/CcAN0wTdBbYEjAeoDqgOqA6oDsYM2wGGDekEmQOABbQHxgWLDIsMvAqPB68H1g/cDqYP3Q7aDYcE4wrrAyn7DfsJvQ3RBNwFsASLB7IOsg6yDrIOygzuAYgN5wSfA4IFwgfVCtAM0AzzBu4Fugb1CNgP4A7uDpwN4Q7cDcoK4grpAyz3Df4JvA3YBNcFtASGB6EOoQ6hDqEOxQyMAokN6gSeA/gE2gnSDNIM8gbvBZwJ1w/eDt8O2w3LCsYK4gvBBJcFzAa3B6sD0QOPCZEKgwSsBLMHywjOA/gDqwm3C4gEygTED9wP3Q/QDdUL6ge7BuQOvQy4B9QNpw+DC+IMqA/9DO0K1g2SDJkGqQ/WDeMM3w3eDeUO1QzmDqoPzA2nCsgG9gixD88N3wvODdYNqQyfBqsPrA+tD+UFtQ2JDrgO5w6TDeUJ8wrzDq8PuQOuDK4PDAEZCp3gXL4P5LUDBGF/HH4QfQF7IwBBwBRrIgMkACADIAE2AkACQAJAAkACQAJAAkACQAJAIAEoAgQiCUEESQ0AIAEoAgAhAiABIAlBBGsiCzYCBCABIAJBBGo2AgAgC0EESQ0AIAIoAAAhQSABIAlBCGsiCzYCBCABIAJBCGo2AgAgC0EDSw0BCyADQQA6AJMMIANBJTsAkQwgA0EANgKUDCADQQE6AJAMIANBkAxqEJ8NIQEgAEECNgLEByAAIAE2AgAMAQsgAjUABCF2IAEgCUEMayILNgIEIAEgAkEMajYCACADQQc2AkQgAjUACCF3IAMgATYC8AICQAJAAkACQAJAAkACQAJ/AkACQAJAAkACQAJAAn8gC0EDTQRAIANBADoAkwwgA0ElOwCRDCADQQA2ApQMIANBAToAkAwgA0GQDGoQnw0MAQsgASAJQRBrIgs2AgQgASACQRBqNgIAIAtBA00EQCADQQA6AJMMIANBJTsAkQwgA0EANgKUDCADQQE6AJAMIANBkAxqEJ8NDAELIAIoAAwhQiABIAlBFGsiCzYCBCABIAJBFGo2AgAgC0EDTQRAIANBADoAkwwgA0ElOwCRDCADQQA2ApQMIANBAToAkAwgA0GQDGoQnw0MAQsgAigAECFDIAEgCUEYayILNgIEIAEgAkEYajYCACALQQNNBEAgA0EAOgCTDCADQSU7AJEMIANBADYClAwgA0EBOgCQDCADQZAMahCfDQwBCyACKAAUIUQgASAJQRxrIgs2AgQgASACQRxqNgIAIAtBA00EQCADQQA6AJMMIANBJTsAkQwgA0EANgKUDCADQQE6AJAMIANBkAxqEJ8NDAELIAIoABghRSABIAlBIGsiCzYCBCABIAJBIGo2AgAgA0ELNgL0AiALQQNNBEAgA0EAOgCTDCADQSU7AJEMIANBADYClAwgA0EBOgCQDCADQZAMahCfDQwBCyACKAAcIUYgASAJQSRrNgIEIAEgAkEkajYCACACKAAgIUcgA0GQDGoiCSADQfACaiILELoJIAMoApQMIkggAygCkAwiCEECRg0AGiAIQQFxBEAgCSALELoJIAMoApQMIkkgAygCkAwiCEECRg0BGgJAIAhBAXEEQCAJIAsQugkgAygClAwhOSADKAKQDCICQQJHDQEgOQwDC0EHQaS1wQBBkK3BABCoCgwCCwJAIAJBAXEEQCADQZAMaiADQfACahC6CSADKAKUDCE6IAMoApAMIgJBAkcNASA6DAMLQQhBpLXBAEGQrcEAEKgKDAILAkAgAkEBcQRAIANBkAxqIANB8AJqELoJIAMoApQMITsgAygCkAwiAkECRw0BIDsMAwtBCUGktcEAQZCtwQAQqAoMAgsCQCACQQFxBEAgA0GQDGogA0HwAmoQ5AggAygClAwhPCADKAKQDCICQQJHDQEgPAwDC0EKQaS1wQBBkK3BABCoCgwCCwJAIAJBAXEEQCADQZAMaiADQfACahDkCCADKAKUDCE9IAMoApAMIgJBAkcNASA9DAMLQQtBpLXBAEGQrcEAEKgKDAILAkAgAkEBcQRAIANBkAxqIANB8AJqEOQIIAMoApQMIT4gAygCkAwiAkECRw0BID4MAwtBDEGktcEAQZCtwQAQqAoMAgsCQCACQQFxBEAgA0GQDGogA0HwAmoQ5AggAygClAwhPyADKAKQDCICQQJHDQEgPwwDC0ENQaS1wQBBkK3BABCoCgwCCwJAIAJBAXEEQCADQZAMaiADQfACahDkCCADKAKUDCFAIAMoApAMIgJBAkcNASBADAMLQQ5BpLXBAEGQrcEAEKgKDAILAkAgAkEBcQRAIANB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DQALIANCgcoANwOYCiADQZgKahCfDSECDA0LIANBADoAmwogA0ElOwCZCiADQQA2ApwKIANBAToAmAogA0GYCmoQnw0hAgwMCyADQQA6AJsKIANBJTsAmQogA0EANgKcCiADQQE6AJgKIANBmApqEJ8NIQIMCwsgA0EAOgCbCiADQSU7AJkKIANBADYCnAogA0EBOgCYCiADQZgKahCfDSECDAoLIANBADoAmwogA0ElOwCZCiADQQA2ApwKIANBAToAmAogA0GYCmoQnw0hAgwJCyADQQA6AJsKIANBJTsAmQogA0EANgKcCiADQQE6AJgKIANBmApqEJ8NIQIMCAsgA0EAOgCbCiADQSU7AJkKIANBADYCnAogA0EBOgCYCiADQZgKahCfDSECDAcLIANBADoAmwogA0ElOwCZCiADQQA2ApwKIANBAToAmAogA0GYCmoQnw0hAgwGCyADQQA6AJsKIANBJTsAmQogA0EANgKcCiADQQE6AJgKIANBmApqEJ8NIQIMBQsgGyECDAQLIANBADoAmwogA0ElOwCZCiADQQA2ApwKIANBAToAmAogA0GYCmoQnw0hFAwBC0EEQfTXwQBBkK3BABCoCiEBIABBAjYCxAcgACABNgIADA4LIBoEQCAaQTBBBBDoDgsgFCECDAELIANBADoAmwogA0ElOwCZCiADQQA2ApwKIANBAToAmAogA0GYCmoQnw0hAgsgAygC7BEhCSAQBEAgCSEBA0ACQCABKAIARQ0AIAFBxAJqKAIAIgsEQCALQTBBBBDoDgsgAUHoAmooAgAiC0UNACABQewCaigCACALQQN0QQQQ6A4LIAFBgANqIQEgEEEBayIQDQALCyADKALoESIBRQ0EIAkgAUGAA2xBEBDoDgwECwJAAkACQAJAIAwoAgQiAkEETwRAIAwgAkEEayIJNgIEIAwgDCgCACIBQQRqNgIAIAlFBEAgA0KBygA3A5gKIANBmApqEJ8NIQIMBAsgATUAACFmIAwgAkEFayITNgIEIAwgAUEFaiIaNgIAAkACQCABLQAEIg4OAgQAAQsgCUEESw0CIANCgcoANwOYCiADQZgKahCfDSECDAQLQQxBBBCRDiICRQ0bIAIgDjYCBCACQYSAgIB4NgIADAMLIANCgcoANwOYCiADQZgKahCfDSECDAILIAwgAkEJayIT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AgJAIANB////H0sNACAJQfz///8HSw0AIAsoAoABIQUCQCAJRQRAQQQhAEEAIQQMAQtBBCECIAMhBCAJQQQQkQ4iAEUNAQsgCQRAIAAgBSAJ/AoAAAsgC0EANgKEASAMQaQGaiIGKgIAISIgDCoC3AYhJiAMKgLQBiEoIAwqApwGISogDCoCoAYhISAMKgLYBiEjIAwqAtQGISUgDEEgaiAGKAIANgIAIAwgDCkCnAY3AxggDEHYAWoiAiAIIAxBGGoiBRChDyAMICYgKiAllCAhICiUkyIKIAqSIimUICggIiAolCAqICOUkyIKIAqSIiSUICUgISAjlCAiICWUkyIKIAqSIgqUk5IgIpMiIjgCkAQgDCAmICSUICMgCpQgKCAplJOSICGTIiE4AowEIAwgJiAKlCAlICmUICMgJJSTkiAqkyIKOAKIBCAFIAcgDEGIBGoQoQ8gASAMQZgGakEEciACIAUgC0EAECsgCyAiOAKcASALICE4ApgBIAsgCjgClAEgC0GQAWogBigCADYCACALIAwpApwGNwKIAQJAIAsoAoQBIgFFDQAgA0UNACALKAKAASICIAFBBnRqIQggACADQQZ0aiEHIABBJGohCyAAQUBrIQEgCUFAaiIGQcAAcSEDA0AgAkEkaiEOIAIoAhwhCSAAIQUCQCADDQAgASEFIAkgACgCHEcNACACKAIgIAAoAiBHDQAgDiAL/QACAP0LAgAgDkEYaiALQRhqKAIANgIAIA5BEGogC0EQaikCADcCAAsgBgRAA0ACQCAJIAVBHGooAgBHDQAgAigCICAFQSBqKAIARw0AIA5BGGogBUE8aigCADYCACAOQRBqIAVBNGopAgA3AgAgDiAFQSRq/QACAP0LAgALAkAgCSAFQdwAaigCAEcNACACKAIgIAVB4ABqKAIARw0AIA5BGGogBUH8AGooAgA2AgAgDkEQaiAFQfQAaikCADcCACAOIAVB5ABq/QACAP0LAgALIAcgBUGAAWoiBUcNAAsLIAggAkFAayICRw0ACwsgBEUNAyAAIARBBnRBBBDoDgwDCyACIAlBgPzBABDXDQALIAsgKTgCnAEgCyAkOAKYASALICE4ApQBIAsgIzgCkAEgCyAiOAKMASALIAo4AogBDAELIAtBADYChAELIAxBkAhqJAAgDQvThAEEH38RfQN+AXsj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JEHcAGogAiASQQRByAAQ1wYgJCgCZCEPCyApKAJgIA9ByABsaiEBIBJBAk8EQCAmIAJBf3NqIg5BAXEhECACICZBAmtHBEAgDkF+cSEOA0AgAUIANwIAIAFBCGpCfzcCACABQRBqQn83AgAgAUEYakJ/NwIAIAFBIGpBfzYCACABQdAAakJ/NwIAIAFByABqQgA3AgAgAUHEAGpBADsBACABQTRq/Qz//39///9/f///f3///39//QsCACABQSRq/QwAAAAA//9/////f3///39//QsCACABQdgAakJ/NwIAIAFB4ABqQn83AgAgAUHoAGpBfzYCACABQYwBakEAOwEAIAFB/ABq/Qz//39///9/f///f3///39//QsCACABQewAav0MAAAAAP//f////39///9/f/0LAgAgAUGQAWohASAOQQJrIg4NAAsLIA8gEmpBAWshDyAQBEAgAUJ/NwIIIAFCADcCACABQQA7AUQgAf0M//9/f///f3///39///9/f/0LAjQgAf0MAAAAAP//f////39///9/f/0LAiQgAUEQakJ/NwIAIAFBGGpCfzcCACABQSBqQX82AgAgAUHIAGohAQsLIAFCfzcCCCABQgA3AgAgAUEAOwFEIAH9DP//f3///39///9/f///f3/9CwI0IAH9DAAAAAD//3////9/f///f3/9CwIkIAFBEGpCfzcCACABQRhqQn83AgAgAUEgakF/NgIAIA9BAWohJgsgKSAmNgJkIBVBoApqJAAMAwsgGiBnQciOwgAQ8A4AC0HQi8IAQRNB2MfCABDRCwALQdCLwgBBE0Hox8IAENELAAsgF0HgAmoiARC6CiAXQbAEaiABIKkCIIMBEOQJIAApA3gingIgFykDsAR8Ip0CIJ4CVA0aIAAoAoABIBcoArgEaiIBQYCU69wDTwRAIJ0CQn9RDRsgnQJCAXwhnQIgAUGAlOvcA2shAQsgACABNgKAASAAIJ0CNwN4IABBgJTr3AM2AnAgF0GwBGoQugogFykDsAQhnQIgACAXKAK4BCICNgJQIAAgnQI3A0gghAENAQwYC0GwssIAEPIOAAsgLigC6AIiASAuKALQAiIQIAEgEEkbISYgLigC5AIhRCAuKALMAiFHIC4oAvgCIoYBIC4oAogDIgFHDRUgLkHsAmohYkMAAAAAQwAAgD9DAACA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IAH9HAEh0gFCACGdAkIAIaACIDtFBEAgGSkDOCGgAiAZKQMwIZ0CCyDiASDpAf0NAAECAwQFBgccHR4fAAECAyHiASDgASDpAf0NAAECAwQFBgcYGRobAAECAyHgASDoASDpAf0NAAECAwQFBgcUFRYXAAECAyHoASDhASDpAf0NAAECAwQFBgcQERITAAECAyHhASDeASDwAf0NAAECAwQFBgcQERITAAECAyHeASDcASDXAf0NAAECAwQFBgcQERITAAECAyHcASDdASDmAf0NAAECAwQFBgcQERITAAECAyHdASDaASDwAf0NAAECAwQFBgcYGRobAAECAyHaASDfASDwAf0NAAECAwQFBgcUFRYXAAECAyHfASDZASDXAf0NAAECAwQFBgcYGRobAAECAyHZASDbASDXAf0NAAECAwQFBgcUFRYXAAECAyHbASDYASDmAf0NAAECAwQFBgcUFRYXAAECAyHYASDWASDwAf0NAAECAwQFBgccHR4fAAECAyHWASDVASDXAf0NAAECAwQFBgccHR4fAAECAyHVASDTASDmAf0NAAECAwQFBgcYGRobAAECAyHTASDSASDmAf0NAAECAwQFBgccHR4fAAECAyHSAf0MAAAAAAAAAAAAAAAAAAAAACHXAf0MAAAAAAAAAAAAAAAAAAAAACGBAiAzRQRAICv9AAQwIYECCyDiASDjAf0NAAECAwQFBgcICQoLHB0eHyH2ASDgASDjAf0NAAECAwQFBgcICQoLGBkaGyGGAiDoASDjAf0NAAECAwQFBgcICQoLFBUWFyH+ASDhASDjAf0NAAECAwQFBgcICQoLEBESEyH/ASDeASDyAf0NAAECAwQFBgcICQoLEBESEyH9ASDcASCSAv0NAAECAwQFBgcICQoLEBESEyH7ASDdASD0Af0NAAECAwQFBgcICQoLEBESEyHkASDaASDyAf0NAAECAwQFBgcICQoLGBkaGyHxASDfASDyAf0NAAECAwQFBgcICQoLFBUWFyH3ASDZASCSAv0NAAECAwQFBgcICQoLGBkaGyGEAiDbASCSAv0NAAECAwQFBgcICQoLFBUWFyHrASDYASD0Af0NAAECAwQFBgcICQoLFBUWFyHqASDWASDyAf0NAAECAwQFBgcICQoLHB0eHyHlASDVASCSAv0NAAECAwQFBgcICQoLHB0eHyHiASDTASD0Af0NAAECAwQFBgcICQoLGBkaGyHgASDSASD0Af0NAAECAwQFBgcICQoLHB0eHyHoASAgRQRAIC/9AAQwIdcBCyAXIIMC/QsEsAQgFyCdAjcDwAQgFyCgAjcDyAQgF/0AAvwBIeEBIBf9AALkAiHeASAX/QAD6AIh3AEgF/0AAuwCId0BIBf9AAK0BCHaASAX/QADuAQh3wEgF/0AArwEIdkBIBf9AAL0ASHbASAX/QAD+AEh2AEgF/0AA4gBIdYBIBf9AAKEASHVASAX/QACjAEh0wEgFyACQeAAav0ABAAi5gEg9gH95gEgAkEwav0ABAAi4wEg/wH95gH95QEgAkFAa/0ABAAi6QEg/gH95gH95QEgAkHQAGr9AAQAItIBIIYC/eYB/eUB/QsEsAEgFyDmASCGAv3mASDpASD/Af3mASDSASD2Af3mAf3kASDjASD+Af3mAf3lAf3kAf0LBKABIBcg4wEghgL95gEg5gEg/gH95gEg6QEg9gH95gEg0gEg/wH95gH95QH95AH95AH9CwSQASAXINIBIP4B/eYBIOMBIPYB/eYBIOYBIP8B/eYB/eQB/eQBIOkBIIYC/eYB/eUB/QsEgAEgAkGAAWr9AAQAIuYBIP8B/eYBIAJB8ABq/QAEACLjASD+Af3mAf3lASLSASDSAf3kASHzASDjASCGAv3mASACQZABav0ABAAi6QEg/wH95gH95QEi0gEg0gH95AEh7gEgFyDpASDzASD2Af3mASDuASD/Af3mASDpASD+Af3mASDmASCGAv3mAf3lASLSASDSAf3kASLSASD+Af3mAf3lAf3kAf3kASCEAv3kAf0LBOABIBcg5gEg7gEg9gH95gEg0gEghgL95gEg8wEg/wH95gH95QH95AH95AEg6wH95AH9CwTQASAXIOMBINIBIPYB/eYBIPMBIP4B/eYBIO4BIIYC/eYB/eUB/eQB/eQBIPsB/eQB/QsEwAEgFyACQdABav0ABAAi4wEg0wEg+AH9DQABAgMcHR4fAAECAwABAgMg7wH9DQABAgMEBQYHHB0eHwABAgMg+gH9DQABAgMEBQYHCAkKCxwdHh8i5gH95gEgAkGgAWr9AAQAIukBIO0BIPgB/Q0AAQIDEBESEwABAgMAAQIDIO8B/Q0AAQIDBAUGBxAREhMAAQIDIPoB/Q0AAQIDBAUGBwgJCgsQERITIvYB/eYB/eUBIAJBsAFq/QAEACLTASDVASD4Af0NAAECAxQVFhcAAQIDAAECAyDvAf0NAAECAwQFBgcUFRYXAAECAyD6Af0NAAECAwQFBgcICQoLFBUWFyLzAf3mAf3lASACQcABav0ABAAi0gEg1gEg+AH9DQABAgMYGRobAAECAwABAgMg7wH9DQABAgMEBQYHGBkaGwABAgMg+gH9DQABAgMEBQYHCAkKCxgZGhsi7gH95gH95QH9CwSgAiAXIOMBIO4B/eYBINMBIPYB/eYBINIBIOYB/eYB/eQBIOkBIPMB/eYB/eUB/eQB/QsEkAIgFyDpASDuAf3mASDjASDzAf3mASDTASDmAf3mASDSASD2Af3mAf3lAf3kAf3kAf0LBIACIBcg0gEg8wH95gEg6QEg5gH95gEg4wEg9gH95gH95AH95AEg0wEg7gH95gH95QH9CwTwASACQfABav0ABAAi7QEg9gH95gEgAkHgAWr9AAQAItYBIPMB/eYB/eUBItIBINIB/eQBIeMBINYBIO4B/eYBIAJBgAJq/QAEACLTASD2Af3mAf3lASLSASDSAf3kASHpASAXINMBIOMBIOYB/eYBIOkBIPYB/eYBINMBIPMB/eYBIO0BIO4B/eYB/eUBItIBINIB/eQBItIBIPMB/eYB/eUB/eQB/eQBINgBIKgCp/0cASD5Af0NAAECAwQFBgcYGRobAAECAyD1Af0NAAECAwQFBgcICQoLGBkaGyLVAf3kAf0LBNACIBcg7QEg6QEg5gH95gEg0gEg7gH95gEg4wEg9gH95gH95QH95AH95AEg2wEgqwJCIIin/RwBIPkB/Q0AAQIDBAUGBxQVFhcAAQIDIPUB/Q0AAQIDBAUGBwgJCgsUFRYXItMB/eQB/QsEwAIgFyDWASDSASDmAf3mASDjASDzAf3mASDpASDuAf3mAf3lAf3kAf3kASCCAiCrAqf9HAEg+QH9DQABAgMEBQYHEBESEwABAgMg9QH9DQABAgMEBQYHCAkKCxAREhMi0gH95AH9CwSwAiBjIAL9AAQA/QsEACAXIOgB/QsE4AMgFyDgAf0LBNADIBcg6gH9CwTAAyAXIIQC/QsEkAQgFyDrAf0LBIAEIBcg+wH9CwTwAyAXIOQB/QsEsAMgFyDlAf0LBKADIBcg8QH9CwSQAyAXIPcB/QsEgAMgFyD9Af0LBPACIBcg4gH9CwTgAiBhIDT9AAQA/QsEACAXINkBIKACQiCIp/0cASCBAv0NAAECAwQFBgccHR4fAAECAyDXAf0NAAECAwQFBgcICQoLHB0eH/0LBLAFIBcg3wEgoAKn/RwBIIEC/Q0AAQIDBAUGBxgZGhsAAQIDINcB/Q0AAQIDBAUGBwgJCgsYGRob/QsEoAUgFyDaASCdAkIgiKf9HAEggQL9DQABAgMEBQYHFBUWFwABAgMg1wH9DQABAgMEBQYHCAkKCxQVFhf9CwSQBSAXIIMCIJ0Cp/0cASCBAv0NAAECAwQFBgcQERITAAECAyDXAf0NAAECAwQFBgcICQoLEBESE/0LBIAFIBcg3QEgpQJCIIin/RwBINQB/Q0AAQIDBAUGBxwdHh8AAQIDIOcB/Q0AAQIDBAUGBwgJCgscHR4f/QsE8AQgFyDcASClAqf9HAEg1AH9DQABAgMEBQYHGBkaGwABAgMg5wH9DQABAgMEBQYHCAkKCxgZGhv9CwTgBCAXIN4BIKMCQiCIp/0cASDUAf0NAAECAwQFBgcUFRYXAAECAyDnAf0NAAECAwQFBgcICQoLFBUWF/0LBNAEIBcghQIgowKn/RwBINQB/Q0AAQIDBAUGBxAREhMAAQIDIOcB/Q0AAQIDBAUGBwgJCgsQERIT/QsEwAQgFyDhASCoAkIgiKf9HAEg+QH9DQABAgMEBQYHHB0eHwABAgMg9QH9DQABAgMEBQYHCAkKCxwdHh/9CwSwBCAXINUB/QsE4AUgFyDTAf0LBNAFIBcg0gH9CwTABSACQZACaigCACIBIIcBSw0XIBdBBGohGiACQSBqITUgF0HgAmohKyAXQbAEaiE7IAJBlAJqLQAAISggMCABQZAEbGohDyCHASABayFMQQAhOEEAIS8jAEGgB2siGSQAIBdBgAFqIhD9AAQAIowCIBD9AAQwIvYB/eYBItIBINIB/eQBIeABIBD9AAQQIucBIBD9AAQgIocC/eYBItIBINIB/eQBIegBIIwCIIcC/eYBItIBINIB/eQBItwBIOcBIPYB/eYBItIBINIB/eQBIt0B/eUBIfIBIIwCIOcB/eYBItIBINIB/eQBIt8BIIcCIPYB/eYBItIBINIB/eQBItkB/eQBIYACIBdB8AFqIgH9AARgItUBIBD9AARg/eUBIe4BIAH9AARQItMBIBD9AARQ/eUBIfsBIAH9AARAItIBIBD9AARA/eUBIYQCIOcBIOcB/eYBIuEBIPYBIPYB/eYBItsBIIwCIIwC/eYBItQB/eUBItYB/eQBIdgBINQBINsB/eQBIOEB/eUBIIcCIIcC/eYBIt4B/eUBIZACINUBIdoBINMBIdQBINIBIdcBIChBAXEEQCDVASDyASCQAiCEAv3mASCAAiD7Af3mAf3kASDyASDuAf3mAf3kASLbAf3mAf3lASHaASDSASCQAiDbAf3mAf3lASHXASDTASCAAiDbAf3mAf3lASHUAQsg1gEg4QH95QEh1gEg6AEg4AH95AEh9AEg3wEg2QH95QEhkQIg2AEg3gH95QEh9QEgKEECcQRAINoBIPQBIJECIIQC/eYBIPUBIPsB/eYB/eQBIPQBIO4B/eYB/eQBItgB/eYB/eUBIdoBINcBIJECINgB/eYB/eUBIdcBINQBIPUBINgB/eYB/eUBIdQBCyDoASDgAf3lASH5ASDcASDdAf3kASGGAiDeASDWAf3kASH8ASAoQQRxBEAg2gEg/AEghgIghAL95gEg+QEg+wH95gH95AEg/AEg7gH95gH95AEi1gH95gH95QEh2gEg1wEghgIg1gH95gH95QEh1wEg1AEg+QEg1gH95gH95QEh1AELIDv9AASgASHmASA7/QAEkAEh4wEgO/0ABLABIekBICv9AASgASHtASAr/QAEkAEh/QEgK/0ABLABIeQBIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBn9AAQAIfEBIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBn9AAQAIfcBIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBn9AAQAId4BIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBn9AAQAIeoBIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBn9AAQAIeUBIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBn9AAQAIeIBIAH9AAQwIYoCIAH9AAQgIYsCIAH9AAQQIewBIAH9AAQAIYgCIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwTwBiAZ/QwAAAAAAAAAAAAAAAAAAAAA/QsEAAJ7IBlB8AZq/QAEACAZ/QAEAP1B/aMBBEAghwIgiAL95gH9DAAAAAAAAAAAAAAAAAAAAAD95AEhiQIg5wEgiAL95gH9DAAAAAAAAAAAAAAAAAAAAAD95AEhggIgjAIgiAL95gEMAQv9DAAAwH8AAMB/AADAfwAAwH8hiQL9DAAAwH8AAMB/AADAfwAAwH8hggL9DAAAwH8AAMB/AADAfwAAwH8LId8BIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwTwBiAZ/QwAAAAAAAAAAAAAAAAAAAAA/QsEACAZQfAGav0ABAAgGf0ABAD9Qf2jASESIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwTwBiAZ/QwAAAAAAAAAAAAAAAAAAAAA/QsEACAZQfAGav0ABAAgGf0ABAD9Qf2jASEQIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBn9AAQAIeABIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBn9AAQAIegBIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBn9AAQAIeEBIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBn9AAQAIdwBIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBn9AAQAId0BIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBn9AAQAIdkBIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBn9AAQAIdsBIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBn9AAQAIdgBIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBn9AAQAIdYBIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwTwBiAZ/QwAAAAAAAAAAAAAAAAAAAAA/QsEACAZQfAGav0ABAAgGf0ABAD9Qf2jASEBIBn9DAAAgD8AAIA/AACAPwAAgD/9CwTwBiAZ/QwAAAAAAAAAAAAAAAAAAAAA/QsEACCLAiDcASCHAv3lASLrAf3mASH6ASDZASDnAf3lASHcAQJ7IBlB8AZq/QAEACAZ/QAEAP1B/aMBRQRAIPoB/QwAAAAAAAAAAAAAAAAAAAAA/QwAAMB/AADAfwAAwH8AAMB/IAEb/eQBIfoBIIsC/QwAAAAAAAAAAAAAAAAAAAAA/eYBIIcC/QwAAAAAAAAAAAAAAAAAAAAA/eYB/QwAAMB/AADAfwAAwH8AAMB/IAEb/eQBIfMBIIwCIIsC/eYBINwB/QwAAAAAAAAAAAAAAAAAAAAA/eYB/QwAAMB/AADAfwAAwH8AAMB/IAEb/eQBDAELIIsC/QwAAAAAAAAAAAAAAAAAAAAA/eYBIfMBIIwCIIsC/eYBCyHZASDdASCMAv3lASHvASDWASDsAf3lASHdASAZ/QwAAIA/AACAPwAAgD8AAIA//QsE8AYgGf0MAAAAAAAAAAAAAAAAAAAAAP0LBAACeyAZQfAGav0ABAAgGf0ABAD9Qf2jAUUEQCDdAf0MAAAAAAAAAAAAAAAAAAAAAP3mASDZASAZ/QAE8AYi1gH95gH95AEhhQIg7wEg3QH95gEg8wEg1gH95gH95AEh8wEg5wEg3QH95gEg+gEg1gH95gH95AEMAQsg3QH9DAAAAAAAAAAAAAAAAAAAAAD95gEhhQIg7wEg3QH95gEh8wEg5wEg3QH95gELIdkBIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwTwBiAZ/QwAAAAAAAAAAAAAAAAAAAAA/QsEACAZQfAGav0ABAAgGf0ABAD9Qf2jASEBIBn9DAAAgD8AAIA/AACAPwAAgD/9CwTwBiAZ/QwAAAAAAAAAAAAAAAAAAAAA/QsEAAJ7IBlB8AZq/QAEACAZ/QAEAP1B/aMBRQRAIIwC/QwAAAAAAAAAAAAAAAAAAAAA/eYBINwBINsBIIsC/eUBItsB/eYB/QwAAMB/AADAfwAAwH8AAMB/IAEbIBn9AATwBiLWAf3mAf3kASGDAiDrAf0MAAAAAAAAAAAAAAAAAAAAAP3mASDbAf0MAAAAAAAAAAAAAAAAAAAAAP3mAf0MAADAfwAAwH8AAMB/AADAfyABGyDWAf3mAf3kASGOAiCHAiDbAf3mAf0MAADAfwAAwH8AAMB/AADAfyABGyDWAf3mAf0MAAAAAAAAAAAAAAAAAAAAAP3kAQwBCyCMAv0MAAAAAAAAAAAAAAAAAAAAAP3mASGDAiDrAf0MAAAAAAAAAAAAAAAAAAAAAP3mASGOAv0MAAAAAAAAAAAAAAAAAAAAAAsh2wEgGf0MAACAPwAAgD8AAIA/AACAP/0LBPAGIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAAnsgGUHwBmr9AAQAIBn9AAQA/UH9owFFBEAgiAL9DAAAAAAAAAAAAAAAAAAAAAD95gEggwIgGf0ABPAGItYB/eYB/eQBIYMCIIgCIO8B/eYBINsBINYB/eYB/eQBIY0CIOcBIIgC/eYBII4CINYB/eYB/eQBDAELIIgC/QwAAAAAAAAAAAAAAAAAAAAA/eYBIYMCIIgCIO8B/eYBIY0CIOcBIIgC/eYBCyHbASDYASCIAv3lASHYASAZ/QwAAAAAAAAAAAAAAAAAAAAA/QsE8AYgGf0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgGUHwBmr9AAQAIBn9AAQA/UH9owEhASAZ/QwAAIA/AACAPwAAgD8AAIA//QsE8AYgGf0MAAAAAAAAAAAAAAAAAAAAAP0LBAACeyAZQfAGav0ABAAgGf0ABAD9Qf2jAUUEQCCMAiDYAf3mASDsASDcAf3mAf0MAADAfwAAwH8AAMB/AADAfyABGyAZ/QAE8AYi1gH95gH95AEhjgIg6wEg2AH95gEg7AH9DAAAAAAAAAAAAAAAAAAAAAD95gH9DAAAwH8AAMB/AADAfwAAwH8gARsg1gH95gH95AEhgQIg2AH9DAAAAAAAAAAAAAAAAAAAAAD95gEghwIg7AH95gH9DAAAwH8AAMB/AADAfwAAwH8gARsg1gH95gH95AEMAQsgjAIg2AH95gEhjgIg6wEg2AH95gEhgQIg2AH9DAAAAAAAAAAAAAAAAAAAAAD95gELIdYBINoBIOQB/eUBIeQBINQBIO0B/eUBIfgBIBn9DAAAgD8AAIA/AACAPwAAgD/9CwTwBiAZ/QwAAAAAAAAAAAAAAAAAAAAA/QsEAAJ7IBlB8AZq/QAEACAZ/QAEAP1B/aMBRQRAIO8B/QwAAAAAAAAAAAAAAAAAAAAA/eYBINYBIBn9AATwBiLUAf3mAf3kASGSAiDnAf0MAAAAAAAAAAAAAAAAAAAAAP3mASCBAiDUAf3mAf3kASGPAiCOAiDUAf3mAf0MAAAAAAAAAAAAAAAAAAAAAP3kAQwBCyDvAf0MAAAAAAAAAAAAAAAAAAAAAP3mASGSAiDnAf0MAAAAAAAAAAAAAAAAAAAAAP3mASGPAv0MAAAAAAAAAAAAAAAAAAAAAAsh2AEg1wEg/QH95QEh7wEg8QEg5AH95QEh6wEg3gEg+AH95QEh8QEgGf0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgGf0ABAAh3gEgGf0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgGf0ABAAh3AEgGf0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgGf0ABAAh3QEgGf0MAAAAAAAAAAAAAAAAAAAAAP0LBPAGIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBlB8AZq/QAEACAZ/QAEAP1B/aMBIQEgGf0MAACAPwAAgD8AAIA/AACAP/0LBPAGIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAAnsgGUHwBmr9AAQAIBn9AAQA/UH9owFFBEAggAIg7wH95gEgkAIg8QH95gH9DAAAwH8AAMB/AADAfwAAwH8gARsgGf0ABPAGItQB/eYB/eQBIY4CIIACIOsB/eYBIJAC/QwAAAAAAAAAAAAAAAAAAAAA/eYB/QwAAMB/AADAfwAAwH8AAMB/IAEbINQB/eYB/eQBIf0BIIAC/QwAAAAAAAAAAAAAAAAAAAAA/eYBIJACIOQB/eYB/QwAAMB/AADAfwAAwH8AAMB/IAEbINQB/eYB/eQBDAELIIACIO8B/eYBIY4CIIACIOsB/eYBIf0BIIAC/QwAAAAAAAAAAAAAAAAAAAAA/eYBCyHWASD3ASDvAf3lASHtASAZ/QwAAIA/AACAPwAAgD8AAIA//QsE8AYgGf0MAAAAAAAAAAAAAAAAAAAAAP0LBAACeyAZQfAGav0ABAAgGf0ABAD9Qf2jAUUEQCDyAf0MAAAAAAAAAAAAAAAAAAAAAP3mASCOAiAZ/QAE8AYi1AH95gH95AEh/gEg8gEg7QH95gEg1gEg1AH95gH95AEh/wEg8gEg+AH95gEg/QEg1AH95gH95AEMAQsg8gH9DAAAAAAAAAAAAAAAAAAAAAD95gEh/gEg8gEg7QH95gEh/wEg8gEg+AH95gELIdYBIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwTwBiAZ/QwAAAAAAAAAAAAAAAAAAAAA/QsEACAZQfAGav0ABAAgGf0ABAD9Qf2jASEBIBn9DAAAgD8AAIA/AACAPwAAgD/9CwTwBiAZ/QwAAAAAAAAAAAAAAAAAAAAA/QsEAAJ7IBlB8AZq/QAEACAZ/QAEAP1B/aMBRQRAIPUBIO8B/eYBIJECIPEB/eYB/QwAAMB/AADAfwAAwH8AAMB/IAEbIBn9AATwBiLUAf3mAf3kASHXASD1ASDrAf3mASCRAv0MAAAAAAAAAAAAAAAAAAAAAP3mAf0MAADAfwAAwH8AAMB/AADAfyABGyDUAf3mAf3kASGBAiD1Af0MAAAAAAAAAAAAAAAAAAAAAP3mASCRAiDkAf3mAf0MAADAfwAAwH8AAMB/AADAfyABGyDUAf3mAf3kAQwBCyD1ASDvAf3mASHXASD1ASDrAf3mASGBAiD1Af0MAAAAAAAAAAAAAAAAAAAAAP3mAQsh2gEgGf0MAACAPwAAgD8AAIA/AACAP/0LBPAGIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAAnsgGUHwBmr9AAQAIBn9AAQA/UH9owFFBEAg9AH9DAAAAAAAAAAAAAAAAAAAAAD95gEg1wEgGf0ABPAGItQB/eYB/eQBIY4CIPQBIO0B/eYBINoBINQB/eYB/eQBIf0BIPQBIPgB/eYBIIECINQB/eYB/eQBDAELIPQB/QwAAAAAAAAAAAAAAAAAAAAA/eYBIY4CIPQBIO0B/eYBIf0BIPQBIPgB/eYBCyHUASDVASDpAf3lASH3ASAZ/QwAAAAAAAAAAAAAAAAAAAAA/QsE8AYgGf0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgGUHwBmr9AAQAIBn9AAQA/UH9owEhASAZ/QwAAIA/AACAPwAAgD8AAIA//QsE8AYgGf0MAAAAAAAAAAAAAAAAAAAAAP0LBAACeyAZQfAGav0ABAAgGf0ABAD9Qf2jAUUEQCD5ASDvAf3mASCGAiDxAf3mAf0MAADAfwAAwH8AAMB/AADAfyABGyAZ/QAE8AYi1QH95gH95AEh2gEg+QH9DAAAAAAAAAAAAAAAAAAAAAD95gEghgIg5AH95gH9DAAAwH8AAMB/AADAfwAAwH8gARsg1QH95gH95AEhgQIg+QEg6wH95gEghgL9DAAAAAAAAAAAAAAAAAAAAAD95gH9DAAAwH8AAMB/AADAfwAAwH8gARsg1QH95gH95AEMAQsg+QEg7wH95gEh2gEg+QH9DAAAAAAAAAAAAAAAAAAAAAD95gEhgQIg+QEg6wH95gELIdUBINMBIOYB/eUBIeYBIOoBIPcB/eUBIeoBIBn9DAAAgD8AAIA/AACAPwAAgD/9CwTwBiAZ/QwAAAAAAAAAAAAAAAAAAAAA/QsEAAJ7IBlB8AZq/QAEACAZ/QAEAP1B/aMBRQRAIPwB/QwAAAAAAAAAAAAAAAAAAAAA/eYBINoBIBn9AATwBiLTAf3mAf3kASH6ASD8ASDtAf3mASCBAiDTAf3mAf3kASHrASD8ASD4Af3mASDVASDTAf3mAf3kAQwBCyD8Af0MAAAAAAAAAAAAAAAAAAAAAP3mASH6ASD8ASDtAf3mASHrASD8ASD4Af3mAQsh1QEg0gEg4wH95QEh6QEg4gEg5gH95QEh4gEgGf0MAAAAAAAAAAAAAAAAAAAAAP0LBPAGIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBlB8AZq/QAEACAZ/QAEAP1B/aMBIQEgGf0MAACAPwAAgD8AAIA/AACAP/0LBPAGIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIIACIOoB/eYBIdoBAnsgGUHwBmr9AAQAIBn9AAQA/UH9owFFBEAggAL9DAAAAAAAAAAAAAAAAAAAAAD95gEgkAIg9wH95gH9DAAAwH8AAMB/AADAfwAAwH8gARv95AEh8AEg2gEgkAL9DAAAAAAAAAAAAAAAAAAAAAD95gH9DAAAwH8AAMB/AADAfwAAwH8gARv95AEh2gEggAIg6QH95gEgkAIg4gH95gH9DAAAwH8AAMB/AADAfwAAwH8gARv95AEMAQsggAL9DAAAAAAAAAAAAAAAAAAAAAD95gEh8AEggAIg6QH95gELIdIBIOUBIOkB/eUBIfEBIBn9DAAAgD8AAIA/AACAPwAAgD/9CwTwBiAZ/QwAAAAAAAAAAAAAAAAAAAAA/QsEAAJ7IBlB8AZq/QAEACAZ/QAEAP1B/aMBRQRAIPIB/QwAAAAAAAAAAAAAAAAAAAAA/eYBINIBIBn9AATwBiLSAf3mAf3kASHtASDyASDxAf3mASDwASDSAf3mAf3kASHwASDyASDmAf3mASDaASDSAf3mAf3kAQwBCyDyAf0MAAAAAAAAAAAAAAAAAAAAAP3mASHtASDyASDxAf3mASHwASDyASDmAf3mAQsh0wEgGf0MAAAAAAAAAAAAAAAAAAAAAP0LBPAGIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBlB8AZq/QAEACAZ/QAEAP1B/aMBIQEgGf0MAACAPwAAgD8AAIA/AACAP/0LBPAGIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAAnsgGUHwBmr9AAQAIBn9AAQA/UH9owFFBEAg9QEg6QH95gEgkQIg4gH95gH9DAAAwH8AAMB/AADAfwAAwH8gARsgGf0ABPAGItIB/eYB/eQBIeMBIPUBIOoB/eYBIJEC/QwAAAAAAAAAAAAAAAAAAAAA/eYB/QwAAMB/AADAfwAAwH8AAMB/IAEbINIB/eYB/eQBIdcBIPUB/QwAAAAAAAAAAAAAAAAAAAAA/eYBIJECIPcB/eYB/QwAAMB/AADAfwAAwH8AAMB/IAEbINIB/eYB/eQBDAELIPUBIOkB/eYBIeMBIPUBIOoB/eYBIdcBIPUB/QwAAAAAAAAAAAAAAAAAAAAA/eYBCyHaASAZ/QwAAIA/AACAPwAAgD8AAIA//QsE8AYgGf0MAAAAAAAAAAAAAAAAAAAAAP0LBAACeyAZQfAGav0ABAAgGf0ABAD9Qf2jAUUEQCD0Af0MAAAAAAAAAAAAAAAAAAAAAP3mASDjASAZ/QAE8AYi0gH95gH95AEh4wEg9AEg8QH95gEg2gEg0gH95gH95AEh5AEg9AEg5gH95gEg1wEg0gH95gH95AEMAQsg9AH9DAAAAAAAAAAAAAAAAAAAAAD95gEh4wEg9AEg8QH95gEh5AEg9AEg5gH95gELIdIBIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwTwBiAZ/QwAAAAAAAAAAAAAAAAAAAAA/QsEACAZQfAGav0ABAAgGf0ABAD9Qf2jASEBIBn9DAAAgD8AAIA/AACAPwAAgD/9CwTwBiAZ/QwAAAAAAAAAAAAAAAAAAAAA/QsEAAJ7IBlB8AZq/QAEACAZ/QAEAP1B/aMBRQRAIPkBIOkB/eYBIIYCIOIB/eYB/QwAAMB/AADAfwAAwH8AAMB/IAEbIBn9AATwBiLXAf3mAf3kASHaASD5ASDqAf3mASCGAv0MAAAAAAAAAAAAAAAAAAAAAP3mAf0MAADAfwAAwH8AAMB/AADAfyABGyDXAf3mAf3kASHqASD5Af0MAAAAAAAAAAAAAAAAAAAAAP3mASCGAiD3Af3mAf0MAADAfwAAwH8AAMB/AADAfyABGyDXAf3mAf3kAQwBCyD5ASDpAf3mASHaASD5ASDqAf3mASHqASD5Af0MAAAAAAAAAAAAAAAAAAAAAP3mAQsh5QEgGf0MAACAPwAAgD8AAIA/AACAP/0LBPAGIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAAnsgGUHwBmr9AAQAIBn9AAQA/UH9owFFBEAg/AH9DAAAAAAAAAAAAAAAAAAAAAD95gEg2gEgGf0ABPAGItcB/eYB/eQBIeIBIPwBIPEB/eYBIOUBINcB/eYB/eQBIdoBIPwBIOYB/eYBIOoBINcB/eYB/eQBDAELIPwB/QwAAAAAAAAAAAAAAAAAAAAA/eYBIeIBIPwBIPEB/eYBIdoBIPwBIOYB/eYBCyHXASAZIO4B/QsEsAYgGSD7Af0LBKAGIBkghAL9CwSQBiAZIOIB/QsE8AQgGSDaAf0LBOAEIBkg1wH9CwTQBCAZIOMB/QsEwAQgGSDkAf0LBLAEIBkg0gH9CwSgBCAZIO0B/QsEkAQgGSDwAf0LBIAEIBkg0wH9CwTwAyAZIPoB/QsE4AMgGSDrAf0LBNADIBkg1QH9CwTAAyAZII4C/QsEsAMgGSD9Af0LBKADIBkg1AH9CwSQAyAZIP4B/QsEgAMgGSD/Af0LBPACIBkg1gH9CwTgAiAZIPwB/QsEwAEgGSD5Af0LBLABIBkghgL9CwSgASAZIPQB/QsEkAEgGSD1Af0LBIABIBkgkQL9CwRwIBkg8gH9CwRgIBkggAL9CwRQIBkgkAL9CwRAIBkg7AEgiwL95gEi0gEg0gH95AEi1gEgiAIgigL95gEi0gEg0gH95AEi0wH95QH9CwTAAiAZIIgCIIsC/eYBItIBINIB/eQBItQBIOwBIIoC/eYBItIBINIB/eQBItUB/eQB/QsEsAIgGSDWASDTAf3kAf0LBKACIBkgiAIg7AH95gEi0gEg0gH95AEi0wEgiwIgigL95gEi0gEg0gH95AEi0gH95QH9CwSAAiAZINQBINUB/eUB/QsE8AEgGSDTASDSAf3kAf0LBOABIBkgiwIgiwL95gEi1gEgigIgigL95gEi1QEgiAIgiAL95gEi0wH95QEi0gEg7AEg7AH95gEi1AH95QH95AH9CwTQAiAZINQBINIB/eQBINYB/eUB/QsEkAIgGSDTASDVAf3kASDUAf3lASDWAf3lAf0LBNABIIwCIIgC/eYBIIcCIIsC/eYBItMB/eQBIOcBIOwB/eYBItIBIPYBIIoC/eYBItoB/eQB/eQB/QwAAACAAAAAgAAAAIAAAACA/U79DAAAgD8AAIA/AACAPwAAgD/9UCHXASAZINoBINMB/QwAAMB/AADAfwAAwH8AAMB/IBAb/eQBINgB/eQB/QwAAAA/AAAAPwAAAD8AAAA//eYBINcB/eYB/QsEgAYgGSDaASDSAf0MAADAfwAAwH8AAMB/AADAfyASG/3kASCNAv3kAf0MAAAAPwAAAD8AAAA/AAAAP/3mASDXAf3mAf0LBMAFIBkgggIg9gEgiwL95gEi2AEghwIgigL95gH95AEi1gH95QEg8wH95AH9DAAAAD8AAAA/AAAAPwAAAD/95gEg1wH95gH9CwSwBSAZINoBIN8B/eQBINkB/eQB/QwAAAA/AAAAPwAAAD8AAAA//eYBINcB/eYB/QsEgAUgGSCHAiDsAf3mAf0MAAAAAAAAAAAAAAAAAAAAAP3kAf0MAADAfwAAwH8AAMB/AADAfyASGyD2ASCIAv3mASLUASCMAiCKAv3mAf3kASLVAf3lASCDAv3kAf0MAAAAPwAAAD8AAAA/AAAAP/3mASDXAf3mAf0LBPAFIBkgiQIg9gEg7AH95gEi0wEg5wEgigL95gH95AEi0gEg4QH95QH95AEghQL95AH9DAAAAD8AAAA/AAAAPwAAAD/95gEg1wH95gH9CwTgBSAZIOcBIIsC/eYB/QwAAAAAAAAAAAAAAAAAAAAA/eQB/QwAAMB/AADAfwAAwH8AAMB/IBAbINUBIOgB/eUB/eQBIJIC/eQB/QwAAAA/AAAAPwAAAD8AAAA//eYBINcB/eYB/QsE0AUgGSCMAiCLAv3mAf0MAAAAAAAAAAAAAAAAAAAAAP3kAf0MAADAfwAAwH8AAMB/AADAfyAQGyDSAf3lASCPAv3kAf0MAAAAPwAAAD8AAAA/AAAAP/3mASDXAf3mAf0LBKAFIBkgjAIg7AH95gH9DAAAAAAAAAAAAAAAAAAAAAD95AH9DAAAwH8AAMB/AADAfwAAwH8gEhsg1gEg4AH95QH95AEg2wH95AH9DAAAAD8AAAA/AAAAPwAAAD/95gEg1wH95gH9CwSQBSAZINoBIIgCIN4BIIwC/eUBItYB/eYB/eUBIOwBINwBIOcB/eUBItUB/eYB/eUBIIsCIN0BIIcC/eUBItIB/eYB/eUBINcB/eYB/QsEMCAZINgBIOwBINYB/eYB/eQBIIgCINUB/eYB/eUBIIoCINIB/eYB/eQBINcB/eYB/QsEICAZINMBIIsCINYB/eYB/eUBIIoCINUB/eYB/eQBIIgCINIB/eYB/eQBINcB/eYB/QsEECAZINQBIIoCINYB/eYB/eQBIIsCINUB/eYB/eQBIOwBINIB/eYB/eUBINcB/eYB/QsEACAaKgIQQ9sPyUCUIpoBIBoqAgAimQEgmgGUIBoqAhQinAEgnAGSkpUhmwFDAACAPyCZASCbAZQimQGVQwAAgL+SIpoBIJoBlCCcASCcASCaAUMAAIA/kkMAAIBAlJSUlbxBACCZAUMAAAAAXBv9ESHdASCbAf0TIdcBIDtB4ABqISUgK0HgAGohHSA7QcABaiEWICtBwAFqIScgGUHwBmoiAUEgaiEQIAFBEGohASA7/QAEUCHaASA7/QAEQCH3ASA7/QAEMCHfASA7/QAEICHqASA7/QAEECHlASA7/QAEACHZASAr/QAEUCHbASAr/QAEQCHiASAr/QAEMCHYASAr/QAEICHgASAr/QAEECHoASAr/QAEACHWAUEAIRICQAJAAkACQANAICggEnZBAXEEQCABIBb9AAQA/QsEACAZICf9AAQA/QsE8AYgGSAvaiI0QUBr/QAEACHhASA0QdAAav0ABAAh3gEgNEHgAGr9AAQAIdwBIDRB4AJq/QAEACHjASA0QfACav0ABAAh6QEgNEGAA2r9AAQAIe0BIDRB8ANq/QAEACH9ASA0QYAEav0ABAAh5AEgNEGQBGr9AAQAIfEBIBn9AASQBiHUASAZ/QAEoAYh1QEgGf0ABLAGIdMBIBlBwAZq/QwAAAAAAAAAAAAAAAAAAAAA/QsEACAZ/QAEwAYh0gEgECA1/QACAP0LAgAgOCBMTw0CIA8gOEGQBGxqIjQgGf0ABPAG/QsEACA0/QwAAAAAAAAAAAAAAAAAAAAA/QsE0AIgNCDxAf0LBOABIDQg5AH9CwTQASA0IP0B/QsEwAEgNCDtAf0LBLABIDQg6QH9CwSgASA0IOMB/QsEkAEgNCDcAf0LBIABIDQg3gH9CwRwIDQg4QH9CwRgIDT9DP//f3///39///9/f///f3/9CwRQIDQg0gH9DP//f////3////9/////f//95AH9CwRAIDT9DAAAAAAAAAAAAAAAAAAAAAD9CwQwIDRBIGogEP0ABAD9CwQAIDRBEGogAf0ABAD9CwQAIDQg6gEg/QH95gEg9wEg5AH95gH95AEg2gEg8QH95gH95AH9CwTAAiA0IOUBIP0B/eYBIN8BIOQB/eYB/eQBIPcBIPEB/eYB/eQB/QsEsAIgNCDZASD9Af3mASDlASDkAf3mAf3kASDqASDxAf3mAf3kAf0LBKACIDQg4AEg4wH95gEg4gEg6QH95gH95AEg2wEg7QH95gH95AH9CwSQAiA0IOgBIOMB/eYBINgBIOkB/eYB/eQBIOIBIO0B/eYB/eQB/QsEgAIgNCDWASDjAf3mASDoASDpAf3mAf3kASDgASDtAf3mAf3kAf0LBPABIDQg1wEg1AEg4QH95gEg1QEg3gH95gH95AEg0wEg3AH95gH95AH95gH9DAAAAAAAAAAAAAAAAAAAAAD95AH9CwTgAiA0QYADav0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgNP0MAAAAAAAAAAAAAAAAAAAAAP0LBPACIDQg3QH9CwSQAyA0QQA2AoAEIDQgEjYChAQgNEHAA2ogHUEgav0ABAD9CwQAIDRBsANqIB1BEGr9AAQA/QsEACA0IB39AAQA/QsEoAMgNCAl/QAEAP0LBNADIDRB4ANqICVBEGr9AAQA/QsEACA0QfADaiAlQSBq/QAEAP0LBAAgOEEBaiE4CyASQQFqIRIgL0EwaiIvQZABRw0ACyAaKgIQQ9sPyUCUIpoBIBoqAgAimQEgmgGUIBoqAhQinAEgnAGSkpUhmwFDAACAPyCZASCbAZQimQGVQwAAgL+SIpoBIJoBlCCcASCcASCaAUMAAIA/kkMAAIBAlJSUlbxBACCZAUMAAAAAXBv9ESHaASCbAf0TId8BIBlBwAZqIgFBIGohGiABQRBqIRAgO/0ABFAh2QEgO/0ABEAh6AEgO/0ABDAh2wEgO/0ABCAh4QEgO/0ABBAh3gEgO/0ABAAh2AEgK/0ABFAh1gEgK/0ABEAh3AEgK/0ABDAh1AEgK/0ABCAh3QEgK/0ABBAh1wEgK/0ABAAh1QFBAyESIBlB8AZqIS9BACFbAkADQCAoIBJ2QQFxBEAgGSBbaiIBQYAFav0ABAAh5QEgAUGQBWr9AAQAIeIBIAFBoAVq/QAEACHgASAZIBn9AAQg/QsEkAcgGSAZ/QAEEP0LBIAHIBkgGf0ABAD9CwTwBiAv/QAEACHTASAQIBb9AAQA/QsEACAZICf9AAQA/QsEwAYgGUHwBmr9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBn9AATwBiHSASAaIDX9AAIA/QsCACA4IExPDQIgDyA4QZAEbGoiASAZ/QAEwAb9CwQAIAH9DP//f3///39///9/f///f3/9CwRQIAEg0gH9DP//f////3////9/////f//95AH9CwRAIAH9DAAAAAAAAAAAAAAAAAAAAAD9CwQwIAH9DAAAAAAAAAAAAAAAAAAAAAD9CwRgIAEg5QH9CwSQASABIOIB/QsEoAEgASDgAf0LBLABIAEg5QH9CwTAASABIOIB/QsE0AEgASDgAf0LBOABIAH9DAAAAAAAAAAAAAAAAAAAAAD9CwTQAiABIN8BINMB/eYB/QwAAAAAAAAAAAAAAAAAAAAA/eQB/QsE4AIgAUEgaiAa/QAEAP0LBAAgAUEQaiAQ/QAEAP0LBAAgAUHwAGr9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIAFBgAFq/QwAAAAAAAAAAAAAAAAAAAAA/QsEACABINUBIOUB/eYBINcBIOIB/eYB/eQBIN0BIOAB/eYB/eQB/QsE8AEgASDXASDlAf3mASDUASDiAf3mAf3kASDcASDgAf3mAf3kAf0LBIACIAEg3QEg5QH95gEg3AEg4gH95gH95AEg1gEg4AH95gH95AH9CwSQAiABINgBIOUB/eYBIN4BIOIB/eYB/eQBIOEBIOAB/eYB/eQB/QsEoAIgASDeASDlAf3mASDbASDiAf3mAf3kASDoASDgAf3mAf3kAf0LBLACIAEg4QEg5QH95gEg6AEg4gH95gH95AEg2QEg4AH95gH95AH9CwTAAiABQYADav0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgAf0MAAAAAAAAAAAAAAAAAAAAAP0LBPACIAEg2gH9CwSQAyABQQA2AoAEIAEgEjYChAQgAUHAA2ogHUEgav0ABAD9CwQAIAFBsANqIB1BEGr9AAQA/QsEACABIB39AAQA/QsEoAMgASAl/QAEAP0LBNADIAFB4ANqICVBEGr9AAQA/QsEACABQfADaiAlQSBq/QAEAP0LBAAgOEEBaiE4CyBbQTBqIVsgL0EQaiEvIBJBAWoiEkEGRw0ACyA4IExLDQIgOARAQQAhO0EAIDhrIVsgD/0ABMADIA/9AATwA/3kASHxASAP/QAEsAMgD/0ABOAD/eQBIfcBIA/9AASgAyAP/QAE0AP95AEh6gEgGUGAB2ohNCAPIQEDQCAPIDtBkARsaiIr/QAEgAIh6AEgK/0ABKABIeEBICv9AATwASHeASAr/QAEkAEh3AEgK/0ABJACId0BICv9AASwASHXASAr/QAEcCHlASAr/QAEYCHiASAr/QAEgAEh4AEgK/0ABLACIdoBICv9AATQASHfASAr/QAEoAIh2QEgK/0ABMABIdsBICv9AATAAiHYASAr/QAE4AEh1gEgK/0ABJADIdQBICv9AASAAyHSASAZQfAGaiIQ/QwAAAAAAAAAAAAAAAAAAAAA/QsEACAZ/QAE8AYh1QEgEP0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgGf0ABPAGIdMBICsg0gEg1AEg4AEg8QEg4AH95gH95gEg4gEg6gEg4gH95gH95gEg5QEg9wEg5QH95gH95gH95AH95AEg3AEg3gH95gEg4QEg6AH95gH95AEg1wEg3QH95gH95AH95AEg2wEg2QH95gEg3wEg2gH95gH95AEg1gEg2AH95gH95AH95AEi1AH95gH95AEi0gH9CwSAAyAr/QwAAAAAAAAAAAAAAAAAAAAA/QwAAIA/AACAPwAAgD8AAIA/INQBINIB/eQBItIB/ecBINIB/QwI5TweCOU8HgjlPB4I5Twe/UMg0wH9DAjlPJ4I5TyeCOU8ngjlPJ795AEg0gH9Q/1O/VL9CwTQAiAZQcAGav0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgGf0M//9/f///f3///39///9/f/0LBIAHIBkgGf0ABMAG/Qz//3////9/////f////3///eQB/QsE8AYgO0EBaiE7AkAgK0FAa/0ABAAgEP0ABAD9Qf2jAUUNACArQdAAav0ABAAgNP0ABAD9Qf2jAUUNACA4IDtNDQD9DAAAAAAAAAAAAAAAAAAAAAD9DAAAgD8AAIA/AACAPwAAgD8g1AH95wEg1AH9DAjlPB4I5TweCOU8HgjlPB79QyDVAf0MCOU8ngjlPJ4I5TyeCOU8nv3kASDUAf1D/U79UiHlAUF/IS8gASESA0AgL0UNByDqASAr/QAEYCLiAf3mASASQfAEaiJM/QAEACLgAf3mASD3ASAr/QAEcCLoAf3mASASQYAFaiIl/QAEACLhAf3mAf3kASASQZAFaiIQ/QAEACLeASDxASAr/QAEgAEi3AH95gH95gH95AEgK/0ABJABIt0BIBJBgAZqIh39AAQAItcB/eYBICv9AASgASLaASASQZAGaiIo/QAEACLfAf3mAf3kASAr/QAEsAEi2QEgEkGgBmoiNf0ABAAi2wH95gH95AH95AEgK/0ABMABItgBIBJBsAZqIhb9AAQAItYB/eYBICv9AATQASLTASASQcAGaiIn/QAEACLUAf3mAf3kASAr/QAE4AEi0gEgEkHQBmoiGv0ABAAi1QH95gH95AH95AEg5QH95gEh5AEgECDeASDcASDkAf3mAf3lAf0LBAAgJSDhASDoASDkAf3mAf3lAf0LBAAgTCDgASDiASDkAf3mAf3lAf0LBAAgEkGgBWoiECAQ/QAEACDdASDkAf3mAf3lAf0LBAAgEkGwBWoiECAQ/QAEACDaASDkAf3mAf3lAf0LBAAgEkHABWoiECAQ/QAEACDZASDkAf3mAf3lAf0LBAAgEkHQBWoiECAQ/QAEACDYASDkAf3mAf3lAf0LBAAgEkHgBWoiECAQ/QAEACDTASDkAf3mAf3lAf0LBAAgEkHwBWoiECAQ/QAEACDSASDkAf3mAf3lAf0LBAAgK/0ABPABIdMBICv9AASAAiHSASA1INsBIOQBICv9AASQAv3mAf3lAf0LBAAgKCDfASDkASDSAf3mAf3lAf0LBAAgHSDXASDkASDTAf3mAf3lAf0LBAAgK/0ABKACIdMBICv9AASwAiHSASAaINUBIOQBICv9AATAAv3mAf3lAf0LBAAgJyDUASDkASDSAf3mAf3lAf0LBAAgFiDWASDkASDTAf3mAf3lAf0LBAAgEkGAB2oiECAQ/QAEACDkASAr/QAE8AL95gH95QH9CwQAIBJB8AZqIhAgEP0ABAAg5AEgK/0ABOAC/eYB/eUB/QsEACASQZAEaiESIFsgL0EBayIvRw0ACwsgW0EBaiFbIAFBkARqIQEgOCA7Rw0ACwsgGUGgB2okAAwECyA4IExBsLHCABCFCwALIDggTEHAscIAEIULAAsgOCBMQaCxwgAQ8A4ACyAZQQA2AoAHIBlBATYC9AYgGUGIuMIANgLwBiAZQgQ3AvgGIBlB8AZqQbi4wgAQuQ0ACyACQaACaiECIA5BoAJrIg4NAAsLIFAEQCC8ASBps5QhrgFBACESICQhLUEAIQ4DQCAfIA5BuAdsaiEnAn0CQCAkIA5BxAFsaiIQKAKwASIBIGBJBEAgECgCtAEgXiABQRRsaiIPKAIARg0BCyAnKAKkByIBIENPBEBDAAAAACG5AUMAAAAAIagBQwAAAAAhsgFDAAAAACG4AUMAAAAAIb8BQwAAAAAhtgFDAACAPwwCCyA6IAFBBnRqIgEqAhghtgEgASoCFCG/ASABKgIQIbgBIAEqAgghsgEgASoCBCGoASABKgIAIbkBIAEqAgwMAQsgDygCBCIBIHZPDQ8gdyABQaQCbGoiAigCAEGAgICAeEYNDyACKAKgAiAPKAIIRw0PIA8oAhAiASACKAIITw0OIAIoAgQgAUHwA2xqIgEqArQDIbYBIAEqArADIb8BIAEqAqwDIbgBIAEqAqQDIbIBIAEqAqADIagBIAEqApwDIbkBIAEqAqgDCyGZAQJ9AkAgECgCuAEiASBgSQRAIBAoArwBIF4gAUEUbGoiDygCAEYNAQsgJygCqAciASBDTwRAQwAAgD8htwFDAAAAACGwAUMAAAAAIbQBQwAAAAAhswFDAAAAACGxAUMAAAAAIaoBQwAAAAAMAgsgOiABQQZ0aiIBKgIYIaoBIAEqAhQhsQEgASoCECGzASABKgIMIbcBIAEqAgghtAEgASoCBCGwASABKgIADAELIA8oAgQiASB2Tw0NIHcgAUGkAmxqIgIoAgBBgICAgHhGDQ0gAigCoAIgDygCCEcNDSAPKAIQIgEgAigCCE8NDCACKAIEIAFB8ANsaiIBKgK0AyGqASABKgKwAyGxASABKgKsAyGzASABKgKoAyG3ASABKgKkAyG0ASABKgKgAyGwASABKgKcAwshmgEgJy0AtQciAUEESw0KIAEEQCC+AUMAAAAAYEUNCiAnKgL8BiKsASAnKgLsBiKrAZQgJyoC+AYipwEgJyoC8AYipgGUkyGeASCnASAnKgL0BiKkAZQgJyoCgAcioQEgqwGUkyGcASChASCmAZQgrAEgpAGUkyGbASABQSxsIRAgvwH9EyCxAf0gASHYASC4Af0TILMB/SABIdYBILYB/RMgqgH9IAEh1AEgmQH9EyC3Af0gASHXASCyAf0TILQB/SABId4BIKgB/RMgsAH9IAEh3AEguQH9EyCaAf0gASHdAUEAIQ8gEiITISADQCAfICBqIgJBQGsiASoCACGZASABIMkBIJkBlDgCACACQcQAaiIBIJkBIAEqAgCSOAIAIA8gLWoiGkEQav0AAgAi2gEg3gH9DQgJCgsAAQIDAAECAwABAgMgGkEgaiIB/V0CACLSAf0NAAECAxQVFhcAAQIDAAECAyHfASACQTxqIBpBDGoqAgAgxwFDAAAAAEMAAAAAIBpBKGoqAgAgpAEgrgEgGkEIaioCAJQg1AEg3wEg1wEg3QEg2gEg0gH9DQQFBgcQERITAAECAwABAgMi1QH95gEg3AEg2gEg3gH9DQABAgMMDQ4PAAECAwABAgMi0wH95gH95QEi0gEg0gH95AEi2QH95gEg3QEg3gEg0wH95gEg3QEg3wH95gH95QEi0gEg0gH95AEi2wH95gEg3AEg3AEg3wH95gEg3gEg1QH95gH95QEi0gEg0gH95AEi0wH95gH95QH95AH95AH95AEi0gH9HwCSINIB/R8BkyKiAZQgqwEgrgEgGioCAJQg1gEgGkEcaiDaAf1WAgABINcBINMB/eYBINwBINkB/eYBIN4BINsB/eYB/eUB/eQB/eQB/eQBItIB/R8AkiDSAf0fAZMinwGUIKYBIK4BIBpBBGoqAgCUINgBIAEgGkEUav1cAgD9VgIAASDXASDbAf3mASDeASDTAf3mASDdASDZAf3mAf3lAf3kAf3kAf3kASLSAf0fAJIg0gH9HwGTIp0BlJKSkiKaASCaAUMAAAAAXRsgmgEgmgFcG5SSIpkBOAIAIAJBOGogmQFDAAAAACDIASC9ASClASCaAZKUIpkBIJkBIMgBXRsimQEgmQFDAAAAAF4bkjgCACATIB9qIhpBrANqIgEgGkGkA2oiMyoCACKaASABKgIAkjgCACAaQZADaiDHASChASCiAZQgpwEgnwGUIKwBIJ0BlJKSlCAaQZgDaioCAJI4AgAgGkGUA2ogxwEgngEgogGUIJsBIJ8BlCCcASCdAZSSkpQgGkGcA2oqAgCSOAIAIBpBqANqIgIgGkGgA2oiASoCACKZASACKgIAkjgCACAzIMkBIJoBlDgCACABIMkBIJkBlDgCACATQYwBaiETICBBzABqISAgECAPQSxqIg9HDQALCyAnIKMBOAKcByAtQcQBaiEtIBJBuAdqIRIgUCAOQQFqIg5HDQALCyBNBEAgvAEgabOU/RMh8wFBACESIEIhAUEAIRoDQCAX/QwAAAAAAAAAAAAAAAAAAIA//QsE8AEgFyA6IB4gGkGwHWxqIigoAuQcIhZBBnRqIicgF0HwAWoiNSAWIENJG/0ABAAi6AH9CwTwAiAXIDogKCgC4BwiAkEGdGoiICA1IAIgQ0kiExv9AAQAItwB/QsE4AIgOiAoKALsHCIzQQZ0aiIQIDUgMyBDSRshDiA6ICgoAugcIi1BBnRqIg8gNSAtIENJGyECIBMEeyAg/QAEEAX9DAAAAAAAAAAAAAAAAAAAAAALIdIBIA79AAQAIeEBIAL9AAQAId4BQgAhnQJCACGiAiAWIENJBEAgJykDGCGiAiAnKQMQIZ0CC/0MAAAAAAAAAAAAAAAAAAAAACH0Af0MAAAAAAAAAAAAAAAAAAAAACHUASAtIENJBEAgD/0ABBAh1AEL/QwAAAAAAAAAAAAAAAAAAAAAIecBIDMgQ0kEQCAQ/QAEECHnAQsgFyDSAf0LBLAEIBcgnQI3A8AEIBf9AAK0BCHdASAX/QADuAQh2gEgF/0AAuQCId8BIBf9AAPoAiHZASAX/QAC7AIh2wEgF/0MAAAAAAAAAAAAAAAAAACAP/0LBPABIBcgOiAoKAL0HCIQQQZ0aiIgIBdB8AFqIicgECBDSRv9AAQAIuUB/QsE8AIgFyA6ICgoAvAcIgJBBnRqIjMgJyACIENJIg8b/QAEACLYAf0LBOACIDogKCgC/BwiDkEGdGoiLSAnIA4gQ0kb/QAEACHiASA6ICgoAvgcIhNBBnRqIgIgJyATIENJG/0ABAAh4AEgDwRAIDP9AAQQIfQBC0IAIaACQgAhpAIgECBDSQRAICApAxAhoAIgICkDGCGkAgv9DAAAAAAAAAAAAAAAAAAAAAAh1wH9DAAAAAAAAAAAAAAAAAAAAAAh8gEgEyBDSQRAIAL9AAQQIfIBCyAOIENJBEAgLf0ABBAh1wELIBf9AALsAiHWASAX/QAD6AIh1QEgF/0AAuQCIdMBIBcg9AH9CwSwBCAXIKACNwPABCAoLQCQHSICQQRLDQggAgRAINsBIOgB/Q0AAQIDHB0eHwABAgMAAQIDIN4B/Q0AAQIDBAUGBxwdHh8AAQIDIOEB/Q0AAQIDBAUGBwgJCgscHR4fIe4BINkBIOgB/Q0AAQIDGBkaGwABAgMAAQIDIN4B/Q0AAQIDBAUGBxgZGhsAAQIDIOEB/Q0AAQIDBAUGBwgJCgsYGRobIf4BIN8BIOgB/Q0AAQIDFBUWFwABAgMAAQIDIN4B/Q0AAQIDBAUGBxQVFhcAAQIDIOEB/Q0AAQIDBAUGBwgJCgsUFRYXIf8BINwBIOgB/Q0AAQIDEBESEwABAgMAAQIDIN4B/Q0AAQIDBAUGBxAREhMAAQIDIOEB/Q0AAQIDBAUGBwgJCgsQERITIfYBINIBIJ0Cp/0cASDUAf0NAAECAwQFBgcQERITAAECAyDnAf0NAAECAwQFBgcICQoLEBESEyHoASDaASCiAqf9HAEg1AH9DQABAgMEBQYHGBkaGwABAgMg5wH9DQABAgMEBQYHCAkKCxgZGhsh4QEg3QEgnQJCIIin/RwBINQB/Q0AAQIDBAUGBxQVFhcAAQIDIOcB/Q0AAQIDBAUGBwgJCgsUFRYXId4BINYBIOUB/Q0AAQIDHB0eHwABAgMAAQIDIOAB/Q0AAQIDBAUGBxwdHh8AAQIDIOIB/Q0AAQIDBAUGBwgJCgscHR4fIfsBINUBIOUB/Q0AAQIDGBkaGwABAgMAAQIDIOAB/Q0AAQIDBAUGBxgZGhsAAQIDIOIB/Q0AAQIDBAUGBwgJCgsYGRobIfgBINMBIOUB/Q0AAQIDFBUWFwABAgMAAQIDIOAB/Q0AAQIDBAUGBxQVFhcAAQIDIOIB/Q0AAQIDBAUGBwgJCgsUFRYXIfoBINgBIOUB/Q0AAQIDEBESEwABAgMAAQIDIOAB/Q0AAQIDBAUGBxAREhMAAQIDIOIB/Q0AAQIDBAUGBwgJCgsQERITIe8BIPQBIKACp/0cASDyAf0NAAECAwQFBgcQERITAAECAyDXAf0NAAECAwQFBgcICQoLEBESEyHcASAX/QADuAQgpAKn/RwBIPIB/Q0AAQIDBAUGBxgZGhsAAQIDINcB/Q0AAQIDBAUGBwgJCgsYGRobId0BIBf9AAK0BCCgAkIgiKf9HAEg8gH9DQABAgMEBQYHFBUWFwABAgMg1wH9DQABAgMEBQYHCAkKCxQVFhch2gEgKP0ABMABIu0BICj9AAQAIv0B/eYBICj9AASwASLkASAo/QAEECLxAf3mAf3lASHfASDkASAo/QAEICL3Af3mASAo/QAE0AEi6gEg/QH95gH95QEh2QEg6gEg8QH95gEg7QEg9wH95gH95QEh2wEgAkGwAWwhDkEAIRAgEiIPIRMDQCABIBBqIgJBMGr9AAQAIdgBIAJBoAFq/QAEACHWASACQSBq/QAEACHSASAC/QAEACHUASACQRBq/QAEACHVASACQeAAav0ABAAh4AEgAkHQAGr9AAQAIYQCIAJBQGv9AAQAIesBIAJBkAFq/QAEACHmASACQYABav0ABAAh4wEgAkHwAGr9AAQAIekBIBdBsARq/QwAAAAAAAAAAAAAAAAAAAAA/QsEACAX/QAEsAQh0wEgDyAeaiIgQeADaiIC/QAEACHXASACIJMCINcB/eYB/QsEACAgQfADaiICINcBIAL9AAQA/eQB/QsEACAgQdADaiDYASCUAv0MAAAAAAAAAAAAAAAAAAAAACDWASD3ASDzASDSAf3mASDgASCEAiD2Af3mASDrASD/Af3mAf3lASLSASDSAf3kASLlASDuAf3mASDrASD+Af3mASDgASD2Af3mAf3lASLSASDSAf3kASLiASD2Af3mASDgASD/Af3mASCEAiD+Af3mAf3lASLSASDSAf3kASLgASD/Af3mAf3lAf3kAf3kASDhAf3kAf3kASDmASDjASDvAf3mASDpASD6Af3mAf3lASLSASDSAf3kASLXASD7Af3mASDpASD4Af3mASDmASDvAf3mAf3lASLSASDSAf3kASLYASDvAf3mASDmASD6Af3mASDjASD4Af3mAf3lASLSASDSAf3kASLSASD6Af3mAf3lAf3kAf3kASDdAf3kAf3lASLWAf3mASD9ASDzASDUAf3mASDrASDgASDuAf3mASDlASD/Af3mASDiASD+Af3mAf3lAf3kAf3kASDoAf3kAf3kASDpASDSASD7Af3mASDXASD6Af3mASDYASD4Af3mAf3lAf3kAf3kASDcAf3kAf3lASLUAf3mASDxASDzASDVAf3mASCEAiDiASDuAf3mASDgASD+Af3mASDlASD2Af3mAf3lAf3kAf3kASDeAf3kAf3kASDjASDYASD7Af3mASDSASD4Af3mASDXASDvAf3mAf3lAf3kAf3kASDaAf3kAf3lASLVAf3mAf3kAf3kAf3kASLYAf0MAAAAAAAAAAAAAAAAAAAAAP3rASDYASDYAf1C/VL95gH95AEi0gH9CwQAICBBwANqINIBINMBIJkC/eUBItIB/QwAAAAAAAAAAAAAAAAAAAAAIJgCIJsCINgB/eQB/eYBItMB/QwAAAAAAAAAAAAAAAAAAAAA/eoBINMBINMB/UL9UiLTASDSAf3rASDT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IBD9AASQECHxASAQ/QAE0A0h9wEgEP0ABIAOIeoBIBD9AASgECHlASAQ/QAE4A0h3wEgEP0ABJAOIdkBIBD9AARgIeIBIBD9AARwIeABIBD9AASAASHoASAQ/QAE0A8h2AEgEP0ABOAPIdMBIBD9AATAECGHAiAQ/QAE8A8h0gEgJSCFAiDWASCRAiCAAv3mASD8ASDbASCQAv3mASCPAiCSAv3mAf3lASLWAf3mAf3kAf3mAf3kASKNAv0LBEAgJSDcASDVASCQAiCAAv3mASD8ASCGAiCPAv3mASDbASCRAv3mAf3lASLVAf3mAf3kAf3mAf3kASLbAf0LBDAgJf0AAjQh4QEgJf0AAzgh3gEgJf0AAjwh3AEgJSDUASCAAiCEAv3mASD8ASDdAf3mAf3kAf3kASDSASCHAv3mAf3kASKJAv1aAigCICUgiQL9WwMgACAlINcBIIACIO4B/eYBIPwBIPsB/eYB/eQB/eQBINMBIIcC/eYB/eQBItMB/QsEECCDAiDzASCPAiCAAv3mASD8ASCRAiCSAv3mASCGAiCQAv3mAf3lASLSAf3mAf3kAf3mAf3kASHuASCOAiCAAiD6Af3mASD8ASDvAf3mAf3kAf3kASDYASCHAv3mAf3kASH7ASDWASDaASD8Af3lASKEAv3mASHdASDjASDrASCAAv3lASLjAf3mASHYASDVASCEAv3mASHXASDjASDmAf3mASHWASD8ASDZAf3mASHaASCAAiDfAf3mASHUASD8ASDqAf3mASHfASCAAiD3Af3mASHVASABIChJDQEMAgsgAUEEQZinwgAQ8A4ACyAdIAFBBXRqIgEg0wEgiQL9DQABAgMQERITAAECAwABAgMg/gH9DQABAgMEBQYHEBESEwABAgMg/wH9DQABAgMEBQYHCAkKCxAREhP9CwQQIAEg2wEgjQL9DQABAgMQERITAAECAwABAgMg7gH9DQABAgMEBQYHEBESEwABAgMg+wH9DQABAgMEBQYHCAkKCxAREhP9CwQACyDSASCEAv3mASHZASDjASDpAf3mASHTASD8ASDkAf3mASHbASCAAiD9Af3mASHSASDYASDdAf3kASHYASDWASDXAf3kASHWASDUASDaAf3kASHUASDVASDfAf3kASHVASACIChJBEAgHSACQQV0aiIBICX9AAIUIIkC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H0EBaw4CAQACCyACIBJqQaQBaiDSAf0fADgCAAwCCyACICZqQRhqINIB/R8AOAIADAELIAIgIUECdGpB0AJqINIB/R8AOAIACyBAIBgoAiQiAk0NASA3IAJBgANsaiECAkACQAJAAkAgH0EBaw4CAQACCyACIBJqQaQBaiDSAf0fATgCAAwCCyACICZqQRhqINIB/R8BOAIADAELIAIgIUECdGpB0AJqINIB/R8BOAIACyBAIBgoAigiAk0NASA3IAJBgANsaiECAkACQAJAAkAgH0EBaw4CAQACCyACIBJqQaQBaiDSAf0fAjgCAAwCCyACICZqQRhqINIB/R8COAIADAELIAIgIUECdGpB0AJqINIB/R8COAIACyBAIBgoAiwiAk0NASA3IAJBgANsaiECAkACQAJAAkAgH0EBaw4CAQACCyACIBJqQaQBaiDSAf0fAzgCAAwCCyACICZqQRhqINIB/R8DOAIADAELIAIgIUECdGpB0AJqINIB/R8DOAIACyAeQSBqJAAMBQsgAiBATw0AIB9BAWsOAgIDAQsgAiBAQdCxwgAQhQsACyAeQQA2AhggHkEBNgIMIB5B7IDCADYCCCAeQgQ3AhAgHkEIakHgscIAELkNAAsgIUEGQfCxwgAQhQsACyAhQQZBgLLCABCFCwALIBhBkARqIRhBACECDAELCyMAQSBrIgIkAAJAAkACQAJAAkACQAJAIBooAhAiASBASQRAIDcgAUGAA2xqIQEgGigCBCESIBooAgBBAWsOAgIDAQsgASBAQeCwwgAQhQsACyASQQZPDQIgASASQQJ0akHQAmogGioCFDgCAAwFCyASQQZJDQMgEkEGQYCxwgAQhQsACyASQQZJDQEgEkEGQZCxwgAQhQsACyACQQA2AhggAkEBNgIMIAJB7IDCADYCCCACQgQ3AhAgAkEIakHwsMIAELkNAAsgASASQRxsakGkAWogGioCFDgCAAwBCyABIBJBDGxqQRhqIBoqAhQ4AgALIAJBIGokACAaQYgBaiEaDAELCyAuKAJ4IhggLigCfEGAEmxqITYgLigCbCIaIC4oAnBBsB1saiFBIC4oAmAiECAuKAJkQbgHbGohQgNAIBogQUchEkEBIQICQANAAkAgAkEBcQRAAkAgEEUNACAQIEJGDQAgECA8ICwQywMgEEG4B2ohAgNAIAIg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IAYoAogDIRQgBigCjAMhAkEAIREDQCAcKAIAIgEgAk8NECAUIAFBgANsaiIBKAIAQQFHDRAgASgCBCAcQQRqKAIARw0QIAEtAD0EQCABILEBIAEqApgBIqABIKABlCABKgKcASKgASCgAZSSIAEqAqABIqABIKABlJKRIAEqAjQgASoCpAEioAEgoAGUIAEqAqgBIqABIKABlJIgASoCrAEioAEgoAGUkpGUkpQgASoCMEMAACBBlV4iAToAPCABIBFyIRELIA8gHEEIaiIcRw0ACyARQQFxRQ0HICJBkAFqIi4QugogIigCmAEhPSAAICIpA5ABIqECNwPQAUEAIQJBACEUQQAhDiMAQdAEayIWJAAgIkEwaiIBKgIAIaABIBZCidm54o7TvpcINwMoIBZByOfBAP0AAwAi0gH9CwMYIBZBADYCPCAWQoCAgIDAADcCNCAWQonZueKO076XCDcDUCAWINIB/QsDQCAHKAIQIjpBsAFsIRAgASoCHEMK1yM8lCGaASAGKAKIAyEcIAYoAowDIRIgBygCDCEzQQAhAQNAAkACQAJAAkAgAiAQRwRAIAIgM2oiEygCAEUNAyATQfIAai0AAA0DIBNBIGooAgBFDQMCQCATQSRqKAIAIhEgEk8NACAcIBFBgANsaiIRKAIAQQFHDQAgESgCBCATQShqKAIARg0CC0HQi8IAQRNB+MDCABDRCwALIBYgBzYCtAEgFiAGNgKwASAWIAQ2AqwBIBZCADcCmAEgFkEANgKMASAWQQA2AoABIBZBADYCdCAWIAUoAkAiTzYCqAEgFiAFKAI8IE8oAghBAWtBeHFqQQhqIkc2AqQBIKABIZkBIAMoAggiAkUNASADKAIEIgEgAkEDdGohNiABQQhqIQIgFkGwAmohQCAFKAIUITIgBSgCECE+IAUoAgQhICAFKAIIIUUgBSgCOCFBIAUoAjQhLSAWQZgEaiEkIAYoAogDISwgBigCjAMhPCBPQSBqISEDQAJAIAEoAgAiESA8Tw0AICwgEUGAA2xqIhEoAgBBAUcNACARKAIEIAEoAgRHDQAgAiETAkAgES0APEUNACARKgKkASGkASARKgLoASGjASARKgKoASGlASARKgLsASGrASARKgL0ASGtASARKgKsASGhASARKgLEASGqASARKgL8ASGiASARKgK8ASGuASAR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BEAgACACQQRBAUEBENYGIAAoAgghAgsgACgCBCACakEMNgAAIAAgAkEEaiICNgIIIANBBGoqAgAhDiADKgIAIQ8gACgCACACa0EDTQRAIAAgAkEEQQFBARDWBiAAKAIIIQILIAAoAgQgAmogDzgAACAAIAJBBGoiAjYCCCAAKAIAIAJrQQNNBEAgACACQQRBAUEBENYGIAAoAgghAgsgACACQQRqNgIIIAAoAgQgAmogDjgAAEEAIQAMBgsgCCgCCCEDIAEoAgAiACgCCCECIAAoAgAgAmtBA00EQCAAIAJBBEEBQQEQ1gYgACgCCCECCyAAIAJBBGo2AgggACgCBCACakELNgAAIAMgARDWASEADAULIAEoAgAiACgCCCECIAAoAgAgAmtBA00EQCAAIAJBBEEBQQEQ1gYgACgCCCECCyAAIAJBBGo2AgggACgCBCACakEKNgAAIAgoAggiBEEEaigCACECIARBCGooAgAiBa0hCiABKAIAIgAoAgghAyAAKAIAIANrQQdNBEAgACADQQhBAUEBENYGIAAoAgghAwsgACADQQhqNgIIIAAoAgQgA2ogCjcAACAFQSRsIQMDQCADBEAgASACEM4GIgANBiACQRBqIAEQkAgiAA0GIANBJGshAyACQRxqIQAgAkEkaiECIAAgARAtIgBFDQEMBgsLIAEgBEEMahDxASIADQQgBEE4aigCACECIARBPGooAgAiBa0hCiABKAIAIgAoAgghAyAAKAIAIANrQQdNBEAgACADQQhBAUEBENYGIAAoAgghAwsgACADQQhqNgIIIAAoAgQgA2ogCjcAACAFQRhsIQMDQCADBEAgAiABEJAIIgANBiADQRhrIQMgAkEMaiEAIAJBGGohAiAAIAEQkAgiAEUNAQwGCwsgBEFAayABEJAIIgANBCAEQcwAaiABEJAIIQAMBAsgCCgCCCEGIAEoAgAiAigCCCEAIAIoAgAgAGtBA00EQCACIABBBEEBQQEQ1gYgAigCCCEACyACIABBBGo2AgggAigCBCAAakEJNgAAIAEgBhDkBSIADQMgBigCGCEDIAYoAhwiBa0hCiACKAIAIAIoAggiBGtBB00EQCACIARBCEEBQQEQ1gYgAigCCCEECyACIARBCGoiADYCCCACKAIEIARqIAo3AAAgBQRAA0AgAy0AACEHIANBAWoh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IgFBFGooAgAhFiABQRBqKAIAIQkgACgCECgCACIBQSxqKAIAIR0gAUEoaigCACEDIBIoAowDIQEgACgCFCgCACEXAkAgBioC+AEiJ0MAAAAAWwRAIAFBgANsIQADQCAARQ0CIABBgANrIQAMAAsACyAGKAKAAkECcUUEQCABQYADbCEAA0AgAEUNAiAAQYADayEADAALAAsgEigCiAMhCCABQYADbCEKIBj9AAMAITggGf0AAwAhOUEAIQEDQCABIApGDQECQCABIAhqIgAoAgBFDQAgAEEEaigCACEFIAIgAEEQajYCrAEgAiAFNgKoASACIAw2AqQBIAJBADYCoAEgAkEEaiACQaABahCLA0UNACAAQcQAaioCACIkIABByABqKgIAIiiUIiYgJpIiISAAQUBrKgIAIiYgAEHMAGoqAgAiKZQiIyAjkiIjkiEuICYgKJQiJSAlkiIlICQgKZQiIiAikiIikyEsICEgI5MhLyAmICSUIiEgIZIiISAoICmUIiMgI5IiI5IhMCAlICKSITEgISAjkyEtICggKJQiISApICmUIiUgJiAmlCIikyIrICQgJJQiI5OSISogIyArkiAhkyEyICIgJZIgI5MgIZMhMyA5ITcgAEH2AmotAABBAUYEQCA4/QwAAIA/AACAPwAAgD8AAIA/IABB5AJqLQAAGyE3CyAAQdAAaioCACE0IABB1ABqKgIAITUgJiAAQawCaioCACIilCAkIABBqAJqKgIAIiuUkyIhICGSISMgKCArlCAmIABBsAJqKgIAIiGUkyIlICWSISUgAiAnICyUIABB2ABqKgIAICEgKSAjlCAmICWUICQgJCAhlCAoICKUkyIhICGSIiyUk5KSkiIhkjgChAEgAiAnIDCUIDUgIiApICWUICggLJQgJiAjlJOSkpIiJpI4AoABIAIgJyAzlCA0ICsgKSAslCAkICOUICggJZSTkpKSIiSSOAJ8IAIgN/0fAyIoOAKsASACIDf9HwIiKUMAAIA+lDgCqAEgAiA3/R8BIiM4AqQBIAIgN/0fACIlQwAAAACUOAKgASACICE4AmAgAiAmOAJcIAIgJDgCWCACQQRqIgAgAkHYAGoiBSACQfwAaiIEIAJBoAFqIgcQxAMgAiAnIC6UICGSOAKEASACICcgMpQgJpI4AoABIAIgJyAtlCAkkjgCfCAC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IBuUk5IgF5MiBjgCgAFB////+wchA0P//39/IQlD//9//yELQ///f/8hD0P//3//IRBD//9//yEVQ///f38hE0P//39/IRRB////+wchBQJAIAIoAghFDQACQAJAIAIoAgQiASgCPEH/////A3EgASgCHEH/////A3FqDgICAAELIAEqAhghDyABKgIUIRAgASoCECEVIAEqAgghEyABKgIEIRQgASgCACEFDAELIAEqAhgiCiABKgI4Ig8gCiAPYBshDyABKgIUIgogASoCNCIQIAogEGAbIRAgASoCECIKIAEqAjAiFSAKIBVgGyEVIAEqAggiCiABKgIoIhMgCiATXxshEyABKgIEIgogASoCJCIUIAogFF8bIRQgASoCACIKIAEqAiAiHCAKIBxfG7whBQsCQCAEKAIIRQRAQ///f/8hCkP//3//IRxD//9/fyEgDAELQ///f/8hCkP//3//IRxD//9/fyEgAkACQCAEKAIEIgEoAjxB/////wNxIAEoAhxB/////wNxag4CAgABCyABKgIYIQsgASoCFCEKIAEqAhAhHCABKgIIIQkgASoCBCEgIAEoAgAhAwwBCyABKgIYIgogASoCOCIJIAkgCl8bIQsgASoCFCIKIAEqAjQiCSAJIApfGyEKIAEqAhAiCSABKgIwIhwgCSAcYBshHCABKgIIIgkgASoCKCIgIAkgIF8bIQkgASoCBCIgIAEqAiQiHiAeICBgGyEgIAEqAgAiHiABKgIgIiIgHiAiXxu8IQMLIEIgD/0TIAv9IAEgE/0TIAn9IAH95QH9DAAAAD8AAAA/AAAAPwAAAD/95gEiXyBf/eYBIBD9EyAK/SABIBT9EyAg/SAB/eUB/QwAAAA/AAAAPwAAAD8AAAA//eYBIl8gX/3mASAV/RMgHP0gASAF/REgA/0cAf3lAf0MAAAAPwAAAD8AAAA/AAAAP/3mASJfIF/95gH95AH95AEiX/0fACBf/R8BXSIBOgCXASABDQQgCyEPIAohECAcIRUgCSETICAhFCADIQUgGCENIBYhESAXIQYgGSEMIBshDiAaIRIgRSEDIEMhBCBGIUUgRyFDDA8LIEIgBCAFKAJgEQAAIEJBwAFqIgQgQigCACIAIEIoAgQoAgwRAABBACFEIABFDRAgQikDwAFC3oWKxraak/zQAIUgQikDyAFChcGXiNPx7PrkAIWEQgBSDRAgQiABKgIMIg04AswBIEIgASoCCCIKjDgCyAEgQiABKgIEIgmMOALEASBCIAEqAgAiC4w4AsABIEIgDSALIAEqAhQiEZQgCSABKgIQIgyUkyIOIA6SIg6UIAkgCSABKgIYIhKUIAogEZSTIg8gD5IiD5QgCyAKIAyUIAsgEpSTIhAgEJIiEJSTkiASkzgC2AEgQiANIBCUIAsgDpQgCiAPlJOSIBGTOALUASBCIA0gD5QgCiAQlCAJIA6Uk5IgDJM4AtABIAQgACACIAMgBiAHIAhBARBdDBALIERB/wFxQQlHDQMgQ0UNBCBCIAEqAgwiDTgCzAEgQiABKgIIIgqMOALIASBCIAEqAgQiCYw4AsQBIEIgASoCACILjDgCwAEgQiANIAsgASoCFCIRlCAJIAEqAhAiDJSTIg4gDpIiDpQgCSAJIAEqAhgiEpQgCiARlJMiDyAPkiIPlCALIAogDJQgCyASlJMiECAQkiIQlJOSIBKTOALYASBCIA0gEJQgCyAOlCAKIA+Uk5IgEZM4AtQBIEIgDSAPlCAKIBCUIAkgDpSTkiAMkzgC0AEgQkEQaiACIAMoAmARAAAgQkHgAmogQigCECICIEIoAhQoAgwRAAACQCACRQ0AIEIpA+ACQq+p7On0rNuq4ACFIEIpA+gCQsuv4O3ri4fwq3+FhEIAUg0AQQAhRCAAIAEgQkHAAWogAiBDIEUgBiAHIAhBABBoDBALQZyJwwAQ8g4AC0Hg98IAEPIOAAtB8PfCABDyDgALIEIgGDgCiAEgQiAWOAKEASBCIBc4AoABIEIgYP0LBHAgRiEDIEchBAwKCwJAAkAgSUH/AXEOCgAHBwcHAwcHBwEHCyBEQf8BcUEFRg0DDAgLIEdFDQAgQkHAAWoiAyABENgHIEJBOGogBCAFKAJgEQAAIEJB4AJqIEIoAjgiAiBCKAI8KAIMEQAAAkAgAkUNACBCKQPgAkKvqezp9KzbquAAhSBCKQPoAkLLr+Dt64uH8Kt/hYRCAFINACAAIAMgASACIEcgRiAGIAcgCEEBEGgMCwtBrInDABDyDgALIwBBMGsiQyQAIENBCGogAiADKAJgEQAAIENBEGogQygCCCJFIEMoAgwoAgwRAAACQAJAIEVFDQAgQykDEEKvqezp9KzbquAAhSBDKQMYQsuv4O3ri4fwq3+FhEIAUg0AIAAgASBFIAQgBSAGIAcgCEEAEHYMAQsgQyAEIAUoAmARAAAgQ0EQaiIFIEMoAgAiBCBDKAIEKAIMEQAAIARFDQAgQykDEEKvqezp9KzbquAAhSBDKQMYQsuv4O3ri4fwq3+FhEIAUg0AIEMgASoCDCINOAIcIEMgASoCCCIKjDgCGCBDIAEqAgQiCYw4AhQgQyABKgIAIguMOAIQIEMgDSALIAEqAhQiEZQgCSABKgIQIgyUkyIOIA6SIg6UIAkgCSABKgIYIhKUIAogEZSTIg8gD5IiD5QgCyAKIAyUIAsgEpSTIhAgEJIiEJSTkiASkzgCKCBDIA0gEJQgCyAOlCAKIA+Uk5IgEZM4AiQgQyANIA+UIAogEJQgCSAOlJOSIAyTOAIgIAAgBSAEIAIgAyAGIAcgCEEBEHYLIENBMGokAAwJCyBEQf8BcQ4GAAQEBAQBBAsgBSgCYCEAIEJBMGogAiADKAJgIgMRAAAgQkHAAWoiBSBCKAIwIgggQigCNCgCDBEAACBCKQPAASFcIEIpA8gBIV0gQkEoaiAEIAARAAAgBSBCKAIoIgUgQigCLCgCDBEAAEEAIUQgCEEAIFxC5p216IDjz4cxhSBdQvDinLq61OzbJoWEUBsiCARAIAVBACBCKQPAAULtjJ6ph4fC+DaFIEIpA8gBQqWcoYzjlOylXoWEUBsiBQ0CCyBCQSBqIAIgAxEAACBCQcABaiICIEIoAiAiAyBCKAIkKAIMEQAAIEIpA8ABIVwgQikDyAEhXSBCQRhqIAQgABEAACACIEIoAhgiACBCKAIcKAIMEQAAIANBACBcQu2MnqmHh8L4NoUgXUKlnKGM45TspV6FhFAbIgNFDQggAEEAIEIpA8ABQuadteiA48+HMYUgQikDyAFC8OKcurrU7NsmhYRQGyIARQ0IIEIgASoCDCINOALMASBCIAEqAggiCow4AsgBIEIgASoCBCIJjDgCxAEgQiABKgIAIguMOALAASBCIA0gCyABKgIUIhGUIAkgASoCECIMlJMiDiAOkiIOlCAJIAkgASoCGCISlCAKIBGUkyIPIA+SIg+UIAsgCiAMlCALIBKUkyIQIBCSIhCUk5IgEpM4AtgBIEIgDSAQlCALIA6UIAogD5STkiARkzgC1AEgQiANIA+UIAogEJQgCSAOlJOSIAyTOALQASACIAAgAyoCACAGIAdBARCLAQwICyADKAJgIQMgBSgCYCFDIwBB0C1rIgUkACAFQSBqIAIgAxEAACAFQcAlaiIDIAUoAiAiAiAFKAIkKAIMEQAAIAUpA8AlIVwgBSkDyCUhXSAFQRhqIAQgQxEAACADIAUoAhgiQyAFKAIcKAIMEQAAAkAgAkEAIFxC5p216IDjz4cxhSBdQvDinLq61OzbJoWEUBsiBEUNACBDQQAgBSkDwCVC5p216IDjz4cxhSAFKQPIJULw4py6utTs2yaFhFAbIgJFDQAgBSAGOAIwIAUgATYCLAJAAkACQAJAAn8CQAJAIAgoAgAiAUUNACAFQRBqIAEgCCgCBCgCGBEAACADIAUoAhAiASAFKAIUKAIMEQAAIAFFDQAgBSkDwCVCsOSBqdfOiY67f4UgBSkDyCVC4qDfzNTVqPYPhYRQDQELQSBBCBCRDiIDRQ0DIANBADoAGCADQonZueKO076XCDcDECADQaDcwgD9AAMA/QsDAAJAIAgoAgAiAUUNACAIKAIEIkMoAgAiRQRAIAEgRREGAAsgQygCBCJFRQ0AIAEgRSBDKAIIEOgOCyAIQZiGwwA2AgQgCCADNgIAQZiGwwAMAQsgCCgCACIDRQ0BIAgoAgQLIQEgBUEIaiADIAEoAhwRAAAgBUHAJWogBSgCCCJDIAUoAgwoAgwRAAACQAJAIENFDQAgBSkDwCVCsOSBqdfOiY67f4UgBSkDyCVC4qDfzNTVqPYPhYRCAFINACBDIEMtABhBf3NBAXEiRzoAGCAFIEc6ADcgBUFAayAHQQhqIgEoAgA2AgAgAUEANgIAIAcpAgAhXCAHQoCAgIDAADcCACAFIFw3AzggBSAEKgJsQwAAAD+UIg44AkwgBSAEKgJoQwAAAD+UIhI4AkggBSAEKgJkIhxDAAAAP5QiIDgCRCACKgJkIRogAioCaCEGIAUgAioCbEMAAAA/lCIPOAJYIAUgBkMAAAA/lCIQOAJUIAUgGkMAAAA/lCIdOAJQQ///f38hCUP//3//IRECQCAEKAIIIkVFBEBD//9//yEGQ///f/8hDEP//39/IQ1D//9/fyELDAELQ///f/8hBkP//3//IQxD//9/fyENQ///f38hCwJAAkAgBCgCBCIBKAI8Qf////8DcSABKAIcQf////8DcWoOAgIAAQsgASoCGCERIAEqAhQhBiABKgIQIQwgASoCCCEJIAEqAgQhDSABKgIAIQsMAQsgASoCGCIGIAEqAjgiCiAGIApgGyERIAEqAhQiBiABKgI0IgogBiAKYBshBiABKgIQIgogASoCMCIJIAkgCl8bIQwgASoCCCIKIAEqAigiCSAJIApgGyEJIAEqAgQiCiABKgIkIgsgCiALXxshDSABKgIAIgogASoCICILIAogC18bIQsLIAUqAjBDAAAAP5QiCkMAAAAAYEUNASAFIBEgCpIiHzgCcCAFIAYgCpIiITgCbCAFIAwgCpIiJDgCaCAFIAkgCpMiJTgCZCAFIA0gCpMiJjgCYCAFIAsgCpMiFTgCXEP//39/IQlD//9//yERAkAgAigCCCIIRQRAQ///f/8hBkP//3//IQxD//9/fyENQ///f38hCwwBC0P//3//IQZD//9//yEMQ///f38hDUP//39/IQsCQAJAIAIoAgQiASgCPEH/////A3EgASgCHEH/////A3FqDgICAAELIAEqAhghESABKgIUIQYgASoCECEMIAEqAgghCSABKgIEIQ0gASoCACELDAELIAEqAhgiBiABKgI4IgkgBiAJYBshESABKgIUIgYgASoCNCIJIAYgCWAbIQYgASoCECIJIAEqAjAiCyAJIAtgGyEMIAEqAggiCSABKgIoIgsgCSALXxshCSABKgIEIgsgASoCJCINIAsgDV8bIQ0gASoCACILIAEqAiAiEyALIBNfGyELCyAFIAogEZIiKTgCiAEgBSAKIAaSIi04AoQBIAUgCiAMkiIuOAKAASAFIAkgCpMiLzgCfCAFIA0gCpMiMDgCeCAFIAsgCpMiMTgCdCAFKAIsIgMqAgwhFyADKgIEIRMgAyoCFCEeIAMqAgghFCADKgIQISIgAyoCACEWIAMqAhghIyAFQQA2AowBIAVBkAFqIAVB3ABqIAMgBUH0AGoQvwEgBSgCkAFFDQUgEyATICOUIBQgHpSTIgYgBpIiBpQgFiAUICKUIBYgI5STIgogCpIiCpSTIQsgFyAWIB6UIBMgIpSTIgkgCZIiCZQhDSAWIAmUIBQgBpSTIREgFyAKlCEMIBQgCpQgEyAJlJMhCiAXIAaUIQYgDiAPkkMAACBBlCEYIBIgEJJDAAAgQZQhGSAgIB2SQwAAIEGUIRsCQAJAAkACQCAIRQ0AIAIoAgQiASgCPEH/////A3EgASgCHEH/////A3FqDgIAAQILIAVC////+////79/NwPQJSAF/Qz//39///9/f///f3///3///QsEwCUMAgsgBUHUJWogAUEYaigCADYCACAFIAEpAwA3A8AlIAUgASkCEDcCzCUgBSABQQhqKAIANgLIJQwBCyAFIAEqAhgiCSABKgI4Ig4gCSAOYBs4AtQlIAUgASoCFCIJIAEqAjQiDiAJIA5gGzgC0CUgBSABKgIQIgkgASoCMCIOIAkgDmAbOALMJSAFIAEqAggiCSABKgIoIg4gCSAOXxs4AsglIAUgASoCBCIJIAEqAiQiDiAJIA5fGzgCxCUgBSABKgIAIgkgASoCICIOIAkgDl8bOALAJQsgDSALkiEnIAwgEZIhKiAGIAqSISggBSoCwAEhMiAFKgK8ASEzIAUqArgBITQgBSoCtAEhNSAFKgKwASE2IAUqAqwBITcgBSoCqAEhOCAFKgKkASE5IAUqAqABITogBSoCnAEhOyAFKgKYASE8IAUqApQBIT0gBUHMHmogBUHAJWogAxC7AyAYIAUqAuAekiEKIBkgBSoC3B6SIQ4gBSoC1B4gGJMhEiAFKgLQHiAZkyEPAkACQCAFKgLMHiAbkyIQIBUgG5MiBiAGIBBfGyIJIBsgBSoC2B6SIhUgGyAkkiIGIAYgFWAbIgxeDQAgDyAmIBmTIgYgBiAPXxsiCyAOIBkgIZIiBiAGIA5gGyINXg0AIAogGCAfkiIGIAYgCmAbIgYgEiAlIBiTIhEgESASXxsiEV1FDQELIBAhCSAPIQsgEiERIBUhDCAOIQ0gCiEGCyAnICOTISMgKiAekyEeICggIpMhIiAUjCEPIBOMISEgFowhHyAFIAY4AtgBIAUgDTgC1AEgBSAMOALQASAFIBE4AswBIAUgCzgCyAEgBSAJOALEAUP//3//IQZD//9/fyEMAkAgRUUEQEP//39/IQ1D//9/fyELQ///f/8hCkP//3//IQkMAQtD//9/fyENQ///f38hC0P//3//IQpD//9//yEJAkACQCAEKAIEIgEoAjxB/////wNxIAEoAhxB/////wNxag4CAgABCyABKgIYIQkgASoCFCEKIAEqAhAhBiABKgIIIQsgASoCBCENIAEqAgAhDAwBCyABKgIYIgYgASoCOCIKIAYgCmAbIQkgASoCFCIGIAEqAjQiCiAGIApgGyEKIAEqAhAiBiABKgIwIgsgBiALYBshBiABKgIIIgsgASoCKCINIAsgDV8bIQsgASoCBCINIAEqAiQiESANIBFfGyENIAEqAgAiESABKgIgIgwgDCARYBshDAsgFiALIAmSQwAAAD+UIhWUIBQgDCAGkkMAAAA/lCIOlJMiESARkiERIBMgDpQgFiANIAqSQwAAAD+UIhKUkyIQIBCSIRAgGSATIBSUIiQgJJIiJCAXIB+UIh8gH5IiJZOLIiYgCSALk0MAAAA/lCIJlCAWIBOUIgsgC5IiJyAXIA+UIgsgC5IiD5KLIiogBiAMk0MAAAA/lCIGlCATIBOUIgsgFyAXlCIoIBYgFpQiK5MiPpIgFCAUlCIfk4siPyAKIA2TQwAAAD+UIgqUkpIiQCAeIBIgFyARlCAWIBCUIBQgFCASlCATIBWUkyINIA2SIg2Uk5KSkiISkpIhDCAbIBYgFJQiLCAskiIsIBcgIZQiISAhkiIhkosiQSAJlCArICiSIAuTIB+TiyIoIAaUICcgD5OLIicgCpSSkiIPICIgDiAXIA2UIBQgEZQgEyAQlJOSkpIiK5KSIQ4gEiBAkyAZkyESICsgD5MgG5MhDyAjIBUgFyAQlCATIA2UIBYgEZSTkpKSIhEgHyA+IAuTkosiHyAJlCAsICGTiyIhIAaUICQgJZKLIiQgCpSSkiIGkyAYkyIQIC8gGJMiCiAKIBBfGyENAkACQCANIBggBiARkpIiFSAYICmSIgYgBiAVYBsiC14NACAPIDEgG5MiBiAGIA9fGyIKIA4gGyAukiIGIAYgDmAbIgleDQAgEiAwIBmTIgYgBiASXxsiBiAMIBkgLZIiESAMIBFfGyIRXkUNAQsgDyEKIBIhBiAQIQ0gDiEJIAwhESAVIQsLIAUgCzgC8AEgBSAROALsASAFIAk4AugBIAUgDTgC5AEgBSAGOALgASAFIAo4AtwBIAVB8IjDADYCoAIgBSAANgKcAiAFIAI2ApACIAUgBDYCiAIgBSAHNgKEAiAFIEM2AvgBIAUgBUHQAGo2AqwCIAUgBUHEAGo2AqgCIAUgBUEwajYCpAIgBSAFQSxqNgKYAiAFIAVB3AFqNgKUAiAFIAVBxAFqNgKMAiAFIAVBOGo2AoACIAUgBUE3ajYC/AEgBSAFQYwBajYC9AEgBSA6IByVjfwANgLAJSAFID0gHJWO/AA2AsweIAUgOyAEKgJsIhGVjvwANgLUHiAFIDwgBCoCaCIOlY78ADYC0B4gBSA4IBGVjfwANgLIJSAFIDkgDpWN/AA2AsQlIAVBsAJqIgEgBCAFQcweaiIAIAVBwCVqEJ4EIAAgAUH0BvwKAAAgBUGILWoiRyAAEIABIAUoAogtQQFHDQQgAioCbCIGQwAAAD+UIQ0gAioCaCIKQwAAAD+UIRIgBUGwF2ohUyAFQZAXaiFUIAIoAgQhASAFQZwQaiEDIEdBBGohRwNAIAVBgB5qIgBBIGogR0EgaigCACJGNgIAIABBEGogR0EQav0AAgD9CwMAIAUgR/0AAgD9CwOAHgJAAkAgRkH/AXEiAEHBAEkEQCAAQZirwQBqLQAAQQFrIlVB/wFxQQJPDQIgBSgCiB4hRCAFKAKQHiFJIAUoAoweIUsgBUHAJWoiACAEEIYFIAUoAsAlIUggBSgCyCUhTiAFKALEJSFKIAAgBBCGBSAFKALMJSFMIAUoAtQlIU8gBSgC0CUhTSATIAUqApQeIgyUIBYgBSoCmB4iD5STIgkgCZIhCSAUIA+UIBMgBSoCnB4iEJSTIgsgC5IhCyAFICMgECAXIAmUIBMgC5QgFiAWIBCUIBQgDJSTIhAgEJIiEJSTkpKSIhsgHyAFKgIwIhUgBSoCTJIiGJQgISAVIAUqAkSSIhmUICQgFSAFKgJIkiIVlJKSIiWTIAaVjvwANgKUFyAFIB4gDyAXIBCUIBYgCZQgFCALlJOSkpIiDyAmIBiUICogGZQgPyAVlJKSIimTIAqVjvwANgKQFyAFICIgDCAXIAuUIBQgEJQgEyAJlJOSkpIiCSBBIBiUICggGZQgJyAVlJKSIguTIBqVjvwANgKMFyAFICUgG5IgBpWN/AA2AsglIAUgKSAPkiAKlY38ADYCxCUgBSALIAmSIBqVjfwANgLAJSAFQaQJaiJQIAIgBUGMF2ogABCeBCAAIFBB9Ab8CgAAIAVBmBBqIAAQgAEgBSgCmBBBAUcNASBEIEwgRkE/c0EAIEZBP2tB/wFxQQJPGyIAQQFxGyFQIE0gSkEBayJRayFGIEwgSEEBayJSayFMQQEgSGsiSCBEIFIgAEECcRsiUmpBASBKayJKIEsgUSAAQQhxGyJRaiBGIE5BAWsiRCBJIABB/wFxQSBJGyJOIERrbGogTGxqrSBIIFBqIEwgSyBNIABBBHEbIk0gSmogSSBPIABBEHEbIk8gRGsgRmxqbGqtQiCGhCFcA0AgBUG4LGoiAEEgaiADQSBqKAIAIkY2AgAgAEEQaiADQRBq/QACAP0LAwAgBSAD/QACAP0LA7gsIEZB/wFxIgBBwQBPDRUgAEGYq8EAai0AACEAAkACQAJAAkACQCBVDgMAAQIECyAAQQFrQf8BcUEDSQ0CDAMLIABBAWtB/wFxQQJJDQEMAgsgAEEBRw0BC0P//39/IQsCQCAIRQRAQ///f38hCUP//39/IQwMAQtD//9/fyEJQ///f38hDAJAAkAgASgCPEH/////A3EgASgCHEH/////A3FqDgICAAELIAEqAgghCyABKgIEIQkgASoCACEMDAELIAEqAggiCSABKgIoIgsgCSALXxshCyABKgIEIgkgASoCJCIMIAkgDF8bIQkgASoCACIMIAEqAiAiDyAMIA9fGyEMCyANIAuSIAaVjvwAQQFrIUQgEiAJkiAKlY78ACJWQQFrIUkgHSAMkiAalY78ACJXQQFrIUtD//9//yELAkAgCEUEQEP//3//IQlD//9//yEMDAELQ///f/8hCUP//3//IQwCQAJAIAEoAjxB/////wNxIAEoAhxB/////wNxag4CAgABCyABKgIYIQsgASoCFCEJIAEqAhAhDAwBCyABKgIYIgkgASoCOCILIAkgC2AbIQsgASoCFCIJIAEqAjQiDCAJIAxgGyEJIAEqAhAiDCABKgIwIg8gDCAPYBshDAsgBSgCyCwhSCAFKALELCFKIAUoAsAsIUwgBSBcNwKoFyAFIE82AqQXIAUgTTYCoBcgBSBQNgKcFyAFIE42ApgXIAUgUTYClBcgBSBSNgKQFyAFIEogCSASkyAKlY78AEEBaiJYIEZBP3NBACBGQT9rQf8BcUECTxsiAEEEcRsiRjYCwBcgBSBIIAsgDZMgBpWO/ABBAWogAEEQcRsiWTYCxBcgBSBMIAwgHZMgGpWO/ABBAWoiWiAAQQFxGyJbNgK8FyAFIEogSSAAQQhxGyJKNgK0FyAFIEQgSCAAQf8BcUEgSRsiSDYCuBcgBSBMIEsgAEECcRsiADYCsBcgBSAAQQEgV2siAGogWiBLayJLIEpBASBWayJKaiBYIElrIkkgSCBEa2xqbGqtIAAgW2ogRiBKaiBZIERrIElsaiBLbGqtQiCGhDcCyBcgBSAFQbgsajYC0BcgBSAFQYAeaiIANgKMFyAFQfQBaiBUIFMgACADEEgLIAVBmBBqIAVBwCVqEIABIAUoApgQDQALDAELDBMLIAUoAsAlQQJGDQAgBSgCxCYiAEEhSQ0AIAUoAsglIABBAnRBBBDoDgsgBUGILWogBUHMHmoQgAEgBSgCiC0NAAsMBAtBkIjDABDyDgALIAVBADYC0CUgBUEBNgLEJSAFQejgwgA2AsAlIAVCBDcCyCUgBUHAJWpB8ODCABC5DQALQYCIwwAQ8g4AC0EIQSBB+MrEACgCACIAQcwIIAAbEQAAAAsCQCAFKALMHkECRg0AIAUoAtAfIgBBIUkNACAFKALUHiAAQQJ0QQQQ6A4LIAUgNyAalY78ADYCzB4gBSA0IBqVjfwANgLAJSAFIDUgAioCbCIGlY78ADYC1B4gBSA2IAIqAmgiCpWO/AA2AtAeIAUgMiAGlY38ADYCyCUgBSAzIAqVjfwANgLEJSAFQZgQaiIAIAIgBUHMHmogBUHAJWoQngQgBUGMF2oiASAAQfQG/AoAACAFQYAeaiIAIAEQgAEgBSgCgB5BAUYEQCARQwAAAD+UIRIgDkMAAAA/lCEPIAVBrC1qIVMgBUGMLWohVCAEKAIEIQEgBUG8LGohAyAAQQRqIUcDQCAFQageaiIAQSBqIEdBIGooAgAiRjYCACAAQRBqIEdBEGr9AAIA/QsDACAFIEf9AAIA/QsDqB4CQAJAIEZB/wFxIgBBwQBJBEAgAEGYq8EAai0AACJVQQFrQf8BcUECTw0CIAUoArAeIUQgBSgCuB4hSSAFKAK0HiFLIAVBwCVqIgggAhCGBSAFKALAJSFIIAUoAsglIU4gBSgCxCUhSiAIIAIQhgUgBSgCzCUhTCAFKALUJSFPIAUoAtAlIU0gBSgCLCIAKgIQIRsgACoCFCEaIAUqAsAeIhAgACoCACIGlCAFKgK8HiIVIAAqAgQiCpSTIgkgCZIhDSAVIAAqAggiCZQgBSoCxB4iEyAGlJMiCyALkiEMIAUgACoCGCATIAAqAgwiCyANlCAGIAyUIAogEyAKlCAQIAmUkyITIBOSIhOUk5KSkiIdIAUqAjAiFCAFKgJYkiIWIAkgCZQiFyALIAuUIh4gBiAGlCIikyIjIAogCpQiGJOSi5QgFCAFKgJUkiIZIAogCZQiHyAfkiIfIAYgC5QiISAhkiIhkouUIBQgBSoCUJIiFCAJIAaUIiQgJJIiJCAKIAuUIiUgJZIiJZOLlJKSIiaTIBGVjvwANgKQLSAFIBogECALIAyUIAkgE5QgBiANlJOSkpIiECAWIB8gIZOLlCAUIAogBpQiBiAGkiIGIAkgC5QiGiAakiIakouUIBkgGCAjkiAXk4uUkpIiI5MgDpWO/AA2AowtIAUgGyAVIAsgE5QgCiANlCAJIAyUk5KSkiIKIBYgJCAlkouUIBkgBiAak4uUIBQgIiAekiAYkyAXk4uUkpIiBpMgHJWO/AA2AogtIAUgHSAmkiARlY38ADYCyCUgBSAQICOSIA6VjfwANgLEJSAFIAogBpIgHJWN/AA2AsAlIAVBzB5qIgAgBCAFQYgtaiAIEJ4EIAggAEH0BvwKAAAgBUG4LGogCBCAASAFKAK4LEEBRw0BIEQgTCBGQT9zQQAgRkE/a0H/AXFBAk8bIgBBAXEbIVAgTSBKQQFrIlFrIQggTCBIQQFrIkxrIUZBASBIayJIIEQgTCAAQQJxGyJMakEBIEprIkogSyBRIABBCHEbIlFqIAggTkEBayJEIEkgAEH/AXFBIEkbIk4gRGtsaiBGbGqtIEggUGogRiBLIE0gAEEEcRsiTSBKaiBJIE8gAEEQcRsiTyBEayAIbGpsaq1CIIaEIVwDQCAFQeAsaiIAQSBqIANBIGooAgAiCDYCACAAQRBqIANBEGr9AAIA/QsDACAFIAP9AAIA/QsD4CwgCEH/AXEiAEHBAE8NEQJAAkACQCAAQZirwQBqLQAAQQFrDgMBAQACCyBVQQFHDQELQ///f38hDQJAIEVFBEBD//9/fyELQ///f38hCQwBC0P//39/IQtD//9/fyEJAkACQCABKAI8Qf////8DcSABKAIcQf////8DcWoOAgIAAQsgASoCCCENIAEqAgQhCyABKgIAIQkMAQsgASoCCCIGIAEqAigiCiAGIApfGyENIAEqAgQiBiABKgIkIgogBiAKXxshCyABKgIAIgYgASoCICIKIAYgCl8bIQkLIBIgDZIgEZWO/ABBAWshRiAPIAuSIA6VjvwAIlJBAWshRCAgIAmSIByVjvwAIlZBAWshSUP//3//IQ0CQCBFRQRAQ///f/8hC0P//3//IQkMAQtD//9//yELQ///f/8hCQJAAkAgASgCPEH/////A3EgASgCHEH/////A3FqDgICAAELIAEqAhghDSABKgIUIQsgASoCECEJDAELIAEqAhgiBiABKgI4IgogBiAKYBshDSABKgIUIgYgASoCNCIKIAYgCmAbIQsgASoCECIGIAEqAjAiCiAGIApgGyEJCyAFKALwLCFLIAUoAuwsIUggBSgC6CwhSiAFIFw3AsQtIAUgTzYCwC0gBSBNNgK8LSAFIFA2ArgtIAUgTjYCtC0gBSBRNgKwLSAFIEw2AqwtIAUgSCALIA+TIA6VjvwAQQFqIlcgCEE/c0EAIAhBP2tB/wFxQQJPGyIAQQRxGyIINgKcLSAFIEsgDSASkyARlY78AEEBaiAAQRBxGyJYNgKgLSAFIEogCSAgkyAclY78AEEBaiJZIABBAXEbIlo2ApgtIAUgSCBEIABBCHEbIkg2ApAtIAUgRiBLIABB/wFxQSBJGyJLNgKULSAFIEogSSAAQQJxGyIANgKMLSAFIABBASBWayIAaiBZIElrIkkgSEEBIFJrIkhqIFcgRGsiRCBLIEZrbGpsaq0gACBaaiAIIEhqIFggRmsgRGxqIElsaq1CIIaENwKkLSAFIAVBqB5qIgA2AswtIAUgBUHgLGo2AogtIAVB9AFqIFQgUyADIAAQSAsgBUG4LGogBUHAJWoQgAEgBSgCuCwNAAsMAQsMDwsgBSgCwCVBAkYNACAFKALEJiIAQSFJDQAgBSgCyCUgAEECdEEEEOgOCyAFQYAeaiAFQYwXahCAASAFKAKAHg0ACwsCQCAFKAKMF0ECRg0AIAUoApAYIgBBIUkNACAFKAKUFyAAQQJ0QQQQ6A4LIAUtADchRyBDKAIMIghFDQAgQygCACIDQQhqIUUgAykDAEJ/hUKAgYKEiJCgwIB/gyFcA0ACQCBcUARAA0AgA0HgAWshAyBFKQMAIVwgRUEIaiFFIFxCgIGChIiQoMCAf4MiXEKAgYKEiJCgwIB/UQ0ACyBcQoCBgoSIkKDAgH+FIVwLAkAgAyBceqdBA3ZBZGxqIgBBBGstAAAgR0cNACAAQQxrKAIAIgEgBygCCCICTw0BIAcoAgQgAUHsAGxqIgEoAkgiBEUNACABQUBrIUYgBEEBayEBIABBCGsiSSgCACEAQQAhREEkIQICQAJAA0AgACBEdkEBcUUNASACQSRqIQIgBCBEQQFqIkRHDQALQQAhAAwBC0EBIQAgASBERg0AIERBAWohASBGKAIEIAJqIUQDQAJAIEkoAgAgAXZBAXFFBEAgAEEBaiEADAELIEQgAEFcbGoiAiBE/QACAP0LAgAgAkEgaiBEQSBqKAIANgIAIAJBEGogREEQav0AAgD9CwIACyBEQSRqIUQgBCABQQFqIgFHDQALCyBGIAQgAGs2AggLIFxCAX0gXIMhXCAIQQFrIggNAQwCCwsgASACQaCIwwAQhQsACyBDKAIMIgIEQCBDKAIEIQQgQygCACIAQQhqIUUgACkDAEJ/hUKAgYKEiJCgwIB/gyFcIEMoAgghCCAAIQMgAiEBA0AgXFAEQANAIANB4AFrIQMgRSkDACFcIEVBCGohRSBcQoCBgoSIkKDAgH+DIlxCgIGChIiQoMCAf1ENAAsgXEKAgYKEiJCgwIB/hSFcCyBcQgF9IV0gRyADIFx6p0EDdkFkbGoiB0EEay0AAEcEQEGAASFEIAAgB2tBHG0iByAAaiJGKQAAIl4gXkIBhoNCgIGChIiQoMCAf4N6p0EDdiAAIAdBCGsgBHFqIgcpAAAiXiBeQgGGg0KAgYKEiJCgwIB/g3mnQQN2akEHTQRAIEMgCEEBaiIINgIIQf8BIUQLIEYgRDoAACBDIAFBAWsiATYCDCAHQQhqIEQ6AAALIFwgXYMhXCACQQFrIgINAAsLIAUoAjwhACAFKAJAIgMEQCAAQcQAaiFFA0AgRUEEaygCACIBBEAgRSgCACABQSRsQQQQ6A4LIEVB7ABqIUUgA0EBayIDDQALCyAFKAI4IgFFDQAgACABQewAbEEEEOgOCyAFQdAtaiQADAYLIAEgCCAFKgIAIAYgB0EAEIsBDAYLIERB/wFxQQVGDQAgSUH/AXFBBUcNAQsgQyBHckUNASMAQUBqIkMkACBDQRhqIAIgAygCYBEAACBDQSBqIEMoAhgiRSBDKAIcKAIMEQAAIEMpAyAhXCBDKQMoIV0gQ0EQaiAEIAUoArgBEQAAAkACQCBFQQAgXELmnbXogOPPhzGFIF1C8OKcurrU7NsmhYRQGyJFBEAgQygCECJHDQELIENBCGogAiADKAK4AREAACBDKAIMIQMgQygCCCECIEMgBCAFKAJgEQAAIENBIGoiBCBDKAIAIgUgQygCBCgCDBEAACACRQ0BIAVBACBDKQMgQuadteiA48+HMYUgQykDKELw4py6utTs2yaFhFAbIgVFDQEgQyABKgIMIg04AiwgQyABKgIIIgqMOAIoIEMgASoCBCIJjDgCJCBDIAEqAgAiC4w4AiAgQyANIAsgASoCFCIRlCAJIAEqAhAiDJSTIg4gDpIiDpQgCSAJIAEqAhgiEpQgCiARlJMiDyAPkiIPlCALIAogDJQgCyASlJMiECAQkiIQlJOSIBKTOAI4IEMgDSAQlCALIA6UIAogD5STkiARkzgCNCBDIA0gD5QgCiAQlCAJIA6Uk5IgDJM4AjAgACAEIAUgAiADIAYgByAIQQEQOAwBCyAAIAEgRSBHIEMoAhQgBiAHIAhBABA4CyBDQUBrJAAMAwsgRwRAQQAhRCAAIAEgRyBGQQxqKAIAIEZBEGooAgAgBCAFIAYgByAIQQAQnAEMBAsgQwRAIEJBwAFqIgQgARDYByAAIAQgQyBFQQxqKAIAIEVBEGooAgAgAiADIAYgByAIQQEQnAEMAwsgBygCCEUEQCAHKAIARQRAIAdBvInDABCdCAsgBygCBCIAQoCAgIDAADcCQCAAQQA2AiAgAEEANgIAIAD9DAAAAAAAAAAAAAAAAAAAAAD9CwJIIABB2ABq/QwAAAAAAAAAAAAAAAAAAAAA/QsCACAAQegAakEANgIAIAdBATYCCAsgASABIAIgAyAEIAVBACABQQAgASAGIAcoAgQQIyFEDAMLIwBBMGsiACQAIABBCGogAiADKAJgEQAAIABBEGogACgCCCJDIAAoAgwoAgwRAAACQAJAIENFDQAgACkDEELmnbXogOPPhzGFIAApAxhC8OKcurrU7NsmhYRCAFINACABIEMgBCAFIAYgByAIQQAQNQwBCyAAIAQgBSgCYBEAACAAQRBqIgUgACgCACIEIAAoAgQoAgwRAAAgBEUNACAAKQMQQuadteiA48+HMYUgACkDGELw4py6utTs2yaFhEIAUg0AIAAgASoCDCINOAIcIAAgASoCCCIKjDgCGCAAIAEqAgQiCYw4AhQgACABKgIAIguMOAIQIAAgDSALIAEqAhQiEZQgCSABKgIQIgyUkyIOIA6SIg6UIAkgCSABKgIYIhKUIAogEZSTIg8gD5IiD5QgCyAKIAyUIAsgEpSTIhAgEJIiEJSTkiASkzgCKCAAIA0gEJQgCyAOlCAKIA+Uk5IgEZM4AiQgACANIA+UIAogEJQgCSAOlJOSIAyTOAIgIAUgBCACIAMgBiAHIAhBARA1CyAAQTBqJAAMAQsgQioCaCIKQwAAAABgRQ0CIA8gE5NDAAAAP5QiFiAMIAyUIhcgHSAdlCIcIBIgEpQiIJMiHiAOIA6UIhiTkouUIBAgFJNDAAAAP5QiGSAMIA6UIgkgCZIiIiAdIBKUIgkgCZIiI5KLlCAVIAW+IgmTQwAAAD+UIhsgDCASlCILIAuSIh8gHSAOlCILIAuSIiGTi5SSkiEaIBAgFJJDAAAAP5QiECASlCAVIAmSQwAAAD+UIhUgDpSTIgkgCZIhCSAVIAyUIA8gE5JDAAAAP5QiDyASlJMiCyALkiELIEIgCiAaIA8gCSAdlCALIBKUIA8gDpQgECAMlJMiDyAPkiIPIA6Uk5KSIA2SIhOSkiINOAKsASBCIAogECALIB2UIA8gDJQgCSASlJOSkiARkiIQIBYgIiAjk4uUIBsgHSAMlCIRIBGSIhQgDiASlCIRIBGSIhKSi5QgGSAYIB6SIBeTi5SSkiIekpIiETgCqAEgQiAKIBUgDyAdlCAJIA6UIAsgDJSTkpIgBpIiDCAWICEgH5KLlCAZIBIgFJOLlCAbIBwgIJIgGJMgF5OLlJKSIg6SkiIGOAKkASBCIBMgGpMgCpMiCTgCoAEgQiAQIB6TIAqTIgs4ApwBIEIgDCAOkyAKkyIKOAKYASBCQbgBaiAHQQhqIgEoAgA2AgAgAUEANgIAIAcpAgAhXCAHQoCAgIDAADcCACBCIFw3A7ABAkAgQyBFKAIQEQQAIgIoAghFBEBBACEFQQAhCAwBC0EAIQUgAigCBCIBQQAgASoCGCAJYBtBACABKgIUIAtgG0EAIAEqAhAgCmAbQQAgASoCCCANXxtBACABKgIEIBFfG0EAIAEqAgAgBl8bIQggASgCPEH/////A3FFDQAgASoCICAGXyABKgIkIBFfcSABKgIoIA1fcSABKgIwIApgcSABKgI0IAtgcSABKgI4IAlgcSEFIAFBIGohAQsgQiAINgLQAiBCIAI2AsgCIEIgBTYCxAIgQiABNgLEASBCQQA2AsABIEIgQkGYAWo2AswCIEJByABqIEJBwAFqENkDIEIoAkhBAXEEQCBCKAJMIQEgRSgCDCECA0AgQiABNgLcAiBCQfCIwwA2AowDIEIgADYCiAMgQiAHNgKAAyBCIEQ2AvgCIEIgAzYC7AIgQiAENgLoAiBCIEJB7wBqNgKEAyBCIEJBsAFqNgL8AiBCIEJB3AJqNgL0AiBCIEJBlwFqNgLwAiBCIEJB6ABqNgLkAiBCIEJB8ABqNgLgAiBDIAEgQkHgAmpBgPjCACACEQIAIEJBQGsgQkHAAWoQ2QMgQigCRCEBIEIoAkBBAXENAAsLIEIoAsQCIgBBIU8EQCBCKALIASAAQQJ0QQQQ6A4LIEQoAgwiAARAIEQoAgQhAyBEKAIAIgJBCGohASACKQMAQn+FQoCBgoSIkKDAgH+DIVwgRCgCCCFFIEItAG8hBCACIUMgACEFA0AgXFAEQANAIENBgAFrIUMgASkDACFcIAFBCGohASBcQoCBgoSIkKDAgH+DIlxCgIGChIiQoMCAf1ENAAsgXEKAgYKEiJCgwIB/hSFcCyBcQgF9IV0gBCBDIFx6p0EBdEHwAXFrIghBBGstAABHBEBBgAEhByACIAhrQQR1IgggAmoiRykAACJeIF5CAYaDQoCBgoSIkKDAgH+DeqdBA3YgAiAIQQhrIANxaiIIKQAAIl4gXkIBhoNCgIGChIiQoMCAf4N5p0EDdmpBB00EQCBEIEVBAWoiRTYCCEH/ASEHCyBHIAc6AAAgRCAFQQFrIgU2AgwgCEEIaiAHOgAACyBcIF2DIVwgAEEBayIADQALCyBCKAK0ASEAIEIoArgBIkMEQCAAQcQAaiEBA0AgAUEEaygCACICBEAgASgCACACQSRsQQQQ6A4LIAFB7ABqIQEgQ0EBayJDDQALCyBCKAKwASIBRQ0AIAAgAUHsAGxBBBDoDgtBACFECyBCQZADaiQAIEQPCyBCQQA2AtABIEJBATYCxAEgQkHo4MIANgLAASBCQgQ3AsgBIEJBwAFqQfDgwgAQuQ0ACyAAQcEAQdDiwwAQhQsAC74lBBJ/V30FfgN7IwBBsAJrIgQkACAEQQA2AtwBIARC////+////79/NwLUASAE/Qz//39///9/f///f3///3///QsCxAEgBEEANgLAASAEQv////v///+/fzcDuAEgBP0M//9/f///f3///39///9///0LA6gBIARBADYCpAEgBEL////7////v383ApwBIAT9DP//f3///39///9/f///f//9CwKMASAEQQA2AogBIARC////+////79/NwOAASAE/Qz//39///9/f///f3///3///QsEcCAEQQA2AmwgBEL////7////v383AmQgBP0M//9/f///f3///39///9///0LAlQgBEEANgJQIARC////+////79/NwNIIAT9DP//f3///39///9/f///f//9CwM4IARBADYCNCAEQv////v///+/fzcCLCAE/Qz//39///9/f///f3///3///QsCHCAEQQA2AhggBEL////7////v383AxAgBP0M//9/f///f3///39///9///0LBAACQAJAAkACQCADQQFLBEAgA0EFdCIHQSBrIQggAioCCCACKgIYkkMAAAA/lCIXIRggAv0ABAAgAv0ABBD95AH9DAAAAD8AAAA/AAAAPwAAAD/95gEiciFzA0AgFyACIAVqIgZBKGoqAgAgBkE4aioCAJJDAAAAP5QiFiAWIBdfGyEXIBggFiAWIBhgGyEYIAZBIGr9XQIAIAZBMGr9XQIA/eQB/QwAAAA/AAAAPwAAAD8AAAA//eYBInQgcv3rASFyIHQgc/3qASFzIAggBUEgaiIFRw0ACyAEIHL9HwA4AuwBIAQgc/0fATgC5AEgBCBz/R8AOALgASAEIHL9HwE4AvABIAQgGDgC6AEgBCAXOAL0AUECIHIgc/3lASJy/R8BIhYgcv0fACIZXiIFIBcgGJMgFiAZIAUbXhsiEEECdCIFIARB4AFqaioCACEXQ1j//0AgBEHsAWogBWoqAgAgF5OVIRggBEH4AWogBWohCEEAIQUDQCACIAVqIgZBGGoqAgAhFiAEIAZBCGoqAgAgFpJDAAAAP5Q4AoACIAQgBkEEaiIJKgIAIAZBFGoqAgAiGZJDAAAAP5Q4AvwBIAQgBioCACIbIAZBEGoqAgAiGpJDAAAAP5Q4AvgBIBggCCoCACAXk5T8ASIGQQhPDQIgBCAGQRxsaiIGIAYoAhhBAWo2AhggBiAGKgIUIhwgFiAWIBxfGzgCFCAGIAYqAhAiFiAZIBYgGWAbOAIQIBv9EyAJ/V0CAP0NAAECAxAREhMUFRYXAAECAyAG/QACACJy/Q0AAQIDBAUGBwgJCgscHR4fIXMgBiByIHMgGv0gAyByIBr9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ACADQQRqKAIAIAVqIQUgA0EIaiEDIAZBAWsiBg0ACwsgBEHIAGogBRDRBiAEQdQAaiAFENEGIAghAyAKQQdxIgUEQANAIANBBGpBADYCACADQQhqIQMgBUEBayIFDQALCyACQQdJDQEgCCALQQN0aiECA0AgA0E8akEANgIAIANBNGpBADYCACADQSxqQQA2AgAgA0EkakEANgIAIANBHGpBADYCACADQRRqQQA2AgAgA0EMakEANgIAIANBBGpBADYCACACIANBQGsiA0cNAAsMAQsgBEHIAGpBABDRBiAEQdQAakEAENEGCyAMBEAgDkEUaiEDIAQoAmQhFCAEKAJYIRUgBCgCXCESIAQoAmghDyAEKAJMIRcgBCgCUCETIAQoAnAhGCAEKAJ0IQlBASEGQQAhDANAIA4hAiADIQ4gDCEDIAYhDAJAIAIoAgAiByAHIAIoAgQiDWpPDQAgB0ECdCICIBhqIQYgAiAUaiECIAcgCSAHIAlLGyIWIAdrIQUgByAPIAcgD0sbIhkgB2shBwJAAkACQAJAA0AgBUUNASAGKAIAIgogC08NAiAIIApBA3RqIgooAgQgCigCAGoiECATTw0DIBcgEEECdGogAzYCACAHRQ0EIAooAgQgCigCAGoiECASSQRAIBUgEEECdGogAigCADYCACAKIAooAgRBAWo2AgQgBkEEaiEGIAJBBGohAiAFQQFrIQUgB0EBayEHIA1BAWsiDUUNBgwBCwsgECASQcjCwwAQhQsACyAWIAlBiMLDABCFCwALIAogC0GYwsMAEIULAAsgECATQajCwwAQhQsACyAZIA9BuMLDABCFCwALIA4gEUciAiAMaiEGIA5BFEEAIAIbaiEDIAINAAsLIARBhAJqIARBCGooAgA2AgAgBEGQAmogBEEgaigCADYCACAEQZwCaiAEQRRqKAIANgIAIARBqAJqIARB0ABqKAIANgIAIARBtAJqIARB3ABqKAIANgIAIAQgBCkCADcC/AEgBCAEKQIYNwOIAiAEIAQpAgw3ApQCIAQgBCkCSDcDoAIgBCAEKQJUNwKsAiAEQcACaiAEQegAaigCADYCACAEQcwCaiAEQfQAaigCADYCACAEQfABaiICQQhqIAFBCGooAgA2AgAgBCAEKQJgNwO4AiAEIAQpAmw3AsQCIAQgASkCADcD8AEgACAC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QQxqIgAQjgEgA0EIaiAJKAIANgIAIAMgASkCADcCACADIAEpAgw3AgwgA0EUaiAAQQhqKAIANgIAIAFB4ABqJAAgBygCJCEAIAcoAhghASAHKAIsIQogBygCKCEEIAcoAiAhCyAHKAIcIQkgB0GAgID8AzYCICAHQoCAgPyDgIDAPzcCGCACIAkgCyAEIAogBSADIAYQqQMgAARAIAQgAEEDdEEEEOgOCyABRQ0KIAkgAUEMbEEEEOgODAoLIAdBGGohAyAHKAIQIQkgACgC8AEhDCAAKAL0ASEEIwBB4ABrIgEkACABQTBqIgBBCGoiCkEANgIAIAFBADYCCCABQoCAgIDAADcCACABQQA2AhQgAUKAgICAwAA3AgwgAUEANgIgIAFBADYCLCABQQA2AiQgASAJKgIAIh04AiggASAJKgIEIh+MIh44AhggASAeOAIwIAkqAgghHiABIB2MIiA4AhwgASAgIB6TOAI0IB8gH5QgHUMAAADAlCIjICOUkpEhICABIB4gIyAglZQiI0MAAAAAkjgCPCABIB0gHiAfICCVlCIhkjgCQCABIB5DAAAAACAglZRDAAAAAJIiIDgCRCABQdj5wwAQkQggASgCBCIJIAEpAjA3AgAgCUEIaiAKKAIANgIAIAFBATYCCCABICA4AlAgASAhIB2TIiE4AkwgASAjIB+TIh84AkggAUEYaiAAIAFByABqIAQgARDDAiABKAIAIgsgASgCCCIJRgRAIAFB6PnDABCRCCABKAIAIQsLIB4gHZIhHSABKAIEIgAgCUEMbGoiCiAgOAIIIAogITgCBCAKIB84AgAgASAJQQFqIgo2AgggCiALRgRAIAFB+PnDABCRCCABKAIEIQALIAAgCkEMbGoiACABKQI8NwIAIABBCGogAUE8aiIAQQhqKAIANgIAIAEgCUECajYCCCABQQA2AlAgASAdOAJMIAFBADYCSCABQSRqIAAgAUHIAGogBCABEMMCIAEoAggiACABKAIARgRAIAFBiPrDABCRCAsgAUEIaiIJIABBAWo2AgAgASgCBCAAQQxsaiIAQQA2AgggACAdOAIEIABBADYCACABQoCAgIAQNwJIIAEgBDYCUCABIARBAmo2AlQgASAEQQF0IgBBAmo2AlwgASAAQQFyNgJYQQEgAUHIAGpBAyAMIAEgAUEMaiIAEI4B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KAIEIAVqNgIEIAMgASABQQhqIgBBB2pBeHEgAGtqIgBqIgEhAiAAIANBA3I2AgQgBiAGQQhqIgVBB2pBeHEgBWtqIgQgAWshAwJAQczOxAAoAgAgBEcEQCAEQcjOxAAoAgBGDQEgBCgCBCIBQQNxQQFGBEAgBCABQXhxIgEQpwUgASADaiEDIAEgBGohBAsgBCAEKAIEQX5xNgIEIAIgA0EBcjYCBCACIANqIAM2AgAgA0GAAk8EQCACIAMQ8AUMBAsCf0G4zsQAKAIAIgFBASADQQN2dCIFcUUEQEG4zsQAIAEgBXI2AgAgA0H4AXFBsMzEAGoiAwwBCyADQfgBcSIBQbDMxABqIQMgAUG4zMQAaigCAAshASADIAI2AgggASACNgIMIAIgAzYCDCACIAE2AggMAwtBzM7EACACNgIAQcTOxABBxM7EACgCACADaiIBNgIAIAIgAUEBcjYCBAwCC0HIzsQAIAI2AgBBwM7EAEHAzsQAKAIAIANqIgE2AgAgAiABQQFyNgIEIAEgAmogATYCAAwBC0EAIQBBxM7EACgCACIBIANNDQFBxM7EACABIANrIgE2AgBBzM7EACADQczOxAAoAgAiAGoiAjYCACACIAFBAXI2AgQgACADQQNyNgIECyAAQQhqIQALIAlBEGokACAAC/kXAhx/AnwjAEGwBGsiAyQAIANCADcDmAEgA0IANwOQASADQgA3A4gBIANCADcDgAEgA0IANwN4IANCADcDcCADQgA3A2ggA0IANwNgIANCADcDWCADQgA3A1AgA0IANwNIIANCADcDQCADQgA3AzggA0IANwMwIANCADcDKCADQgA3AyAgA0IANwMYIANCADcDECADQgA3AwggA0IANwMAIANCADcDuAIgA0IANwOwAiADQgA3A6gCIANCADcDoAIgA0IANwOYAiADQgA3A5ACIANCADcDiAIgA0IANwOAAiADQgA3A/gBIANCADcD8AEgA0IANwPoASADQgA3A+ABIANCADcD2AEgA0IANwPQASADQgA3A8gBIANCADcDwAEgA0IANwO4ASADQgA3A7ABIANCADcDqAEgA0IANwOgASADQgA3A9gDIANCADcD0AMgA0IANwPIAyADQgA3A8ADIANCADcDuAMgA0IANwOwAyADQgA3A6gDIANCADcDoAMgA0IANwOYAyAD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AAsgA0GQAWokAAu2OgMefwZ+DH0jACIFISEgBUHAAmtBQHEiBCQAIARBQGtBqNzCACkDADcDACAEQfwAaiABQQhqKAIANgIAIARCADcDMCAEQoCAgIDAADcDKCAEQgQ3AyAgBEIANwMYIARCgICAgIAINwMQIARBADYCcCAEQoCAgIDAADcDaCAEQsAANwNgIARCADcDWCAEQoCAgIDAADcDUCAEQonZueKO076XCDcDSCAEQaDcwgApAwA3AzggBCABKQIANwJ0AkACQAJAAkACQAJAAkACfyADRQRAQZjcwgAhAkEADAELIAIgA0EMbGohDCAEQdwAaiEIIARB0ABqIQUgBEE4aiEDIARBsAFqIQoDQCACQQRqKAIAIRIgAkEIaigCACEWIAIoAgAiC0EfdiEBIAQgASALakEIbSABayIGNgKAAiAEIBZBH3YiASAWakEIbSABayIHNgKIAiAEIBJBH3YiASASakEIbSABayINNgKEAiAEQagBaiADIARBgAJqEOwEAn8gBCgCvAEiDgRAIAQpA6gBISIgBCgCZCIXIAQoAlxGBEAgCEGY5sMAEMQICyAEKAJgIBdBCXRqQcAAQYAE/AsAIAQgF0EBajYCZCAEKAJYIgkgBCgCUEYEQCAFQajmwwAQkQgLIAQoAlQgCUEMbGoiASAHNgIIIAEgDTYCBCABIAY2AgAgBCAJQQFqNgJYIARBgAJqIgFBCGogCkEIaigCADYCACAEQQA2ApACIAQgFzYCjAIgBCAKKQIANwOAAiAOICIgASAOQRBqEMcFDAELIAQoArABCyIJQQRrIgEgASgCAEEBajYCACAJQQhrKAIAIgkgBCgCZCIBTw0CIBIgBmtBA3QgC2ogB0EJdGsgFiANa0EGdGoiAUGABE8NAyAEKAJgIAlBCXRqIAFqQT86AAAgDCACQQxqIgJHDQALIAQoAjghAiAEKAJECyEBIAIpAwAhIiAEQgA3AqABIARCgICAgMAANwKYASAEQgQ3ApABIARCADcCiAEgBEKAgICAgAg3AoABIARBADYC+AEgBEIQNwK4ASAEQgA3ArABIARCgICAgIAINwKoASAEQgA3AvABIARCgICAgMAANwLoASAEQgA3AuABIARCgICAgMAANwLYASAEQgQ3AtABIARCADcCyAEgBEKAgICAwAA3AsABIAFFDQYgBEGAAWoiA0EMaiELIARBtAFqIhVBACABQRBBIBDYBiADQRhqIg1BACABQQRBCBDYBiACQQhqIQMgIkJ/hUKAgYKEiJCgwIB/gyEjIAEhDANAICNQBEADQCACQaABayECIAMpAwAhIiADQQhqIQMgIkKAgYKEiJCgwIB/gyIiQoCBgoSIkKDAgH9RDQALICJCgIGChIiQoMCAf4UhIwsgBCoCfCIpIAIgI3qnQQN2QWxsaiIOQQxrKAIAQQN0IgmylCEtIAQqAngiKiAOQRBrKAIAQQN0IgiylCEsIAQqAnQiKCAOQRRrKAIAQQN0IgWylCErICkgCUEIarKUISkgKiAIQQhqspQhKiAoIAVBCGqylCEoIA5BCGsoAgAhCiAEKAK8ASIGIAQoArQBRgRAIBVB0PPCABDFCAsgBCgCuAEgBkEFdGoiBUGBgICAfDYCHCAFICk4AhggBSAqOAIUIAUgKDgCECAFIAo2AgwgBSAtOAIIIAUgLDgCBCAFICs4AgAgBCAGQQFqNgK8ASAKIAQoAqABIgVPBEACQAJAIAogBWsiCEEBaiIHIAQoApgBIAVrSwRAIA0gBSAHQQRBCBDYBiAEKAKgASEFDAELIAdFDQELIAdBA3EhDiAEKAKcASEJIAhBA08EQCAHQXxxIQggCSAFQQN0aiEHA0AgB0EANgIAIAdBGGpBADYCACAHQRBqQQA2AgAgB0EIakEANgIAIAdBIGohByAFQQRqIQUgCEEEayIIDQALCyAORQ0AIAUgDmohCCAJIAVBA3RqIQcDQCAHQQA2AgAgB0EIaiEHIA5BAWsiDg0ACyAIIQULIAQgBTYCoAELIAUgCk0NAyAjQgF9ISIgBCgCnAEgCkEDdGoiCCgCACEFIAhCATcCACAFRQRAIAQgBCgCpAFBAWo2AqQBCyAiICODISMgDEEBayIMDQALIAZBAWoOAwYEAwULIAkgAUH45cMAEIULAAsgAUGABEGI5sMAEIULAAsgCiAFQZCExAAQhQsACyAEIAQoArgBIgH9AAQA/QsEgAIgBCAB/QAEIP0LBKACIAQgAUEQav0ABAD9CwSQAiAEIAFBMGr9AAQA/QsEsAIgBCgCiAEiASAEKAKAAUYEQCAEQYABakHw8sIAEMMICyAEKAKEASABQQZ0aiICIAT9AASAAv0LBAAgAkEQaiAE/QAEkAL9CwQAIAJBIGogBP0ABKAC/QsEACACQTBqIAT9AASwAv0LBAAgBCABQQFqNgKIASAEKAKUASIBIAQoAowBRgRAIAtBgPPCABC2CAsgBCgCkAEgAUECdGpBADYCACAEIAFBAWo2ApQBAkAgBCgCoAEiAUUNACAEKAKcASICKAIAQQFHDQAgAkEANgIEAkAgAUEBRg0AIAIoAghFDQAgAkEBNgIMDAQLQZDkwgBBD0Gg88IAENELAAtBkOTCAEEPQZDzwgAQ0QsACyAEIAQoArgBIgH9AAQA/QsEgAIgBCABQRBq/QAEAP0LBJACIAQoAogBIgEgBCgCgAFGBEAgBEGAAWpBwPLCABDDCAsgBCgChAEgAUEGdGoiAiAE/QAEgAL9CwQAIAL9DAAAAAAAAAAAAAAAAAAAAAD9CwQgIAJBEGogBP0ABJAC/QsEACACQTBq/QwAAAAAAAAAAAAAAAAAAAAA/QsEACAEIAFBAWo2AogBIAQoApQBIgEgBCgCjAFGBEAgC0HQ8sIAELYICyAEKAKQASABQQJ0akEANgIAIAQgAUEBajYClAECQCAEKAKgAUUNACAEKAKcASIBKAIAQQFHDQAgAUEANgIEDAILQZDkwgBBD0Hg8sIAENELAAsgBCgCgAEgBCgCiAEiAmsgAUkEQCAEQYABaiACIAFBwABBwAAQ2AYLIAQoAowBIAQoApQBIgJrIAFJBEAgBEGMAWogAiABQQRBBBDYBgtBACECIARBADYClAEgBCgCiAEiASAEKAKAAUYEQCAEQYABakGw88IAEMMIIAQoApQBIQILIAQoAoQBIAFBBnRqIgP9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIANBEGr9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIANBIGr9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIANBMGr9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIAQgAUEBajYCiAEgBCgCjAEgAkYEQCALQcDzwgAQtggLIAQoApABIAJBAnRqQQA2AgAgBCACQQFqNgKUASAEQYABaiEQQQAhA0EAIQ0jAEHQAGsiDyQAAkACQAJAAkACQCAVKAIIIggEQEEBIQdBBCEBAkACQCAIQQFHBEAgFSgCBCIMIAhBBXRqIQIgDEEgaiEBIAwqAgggDCoCGJJDAAAAP5QiKyEqIAwqAgAgDCoCEJJDAAAAP5QiLiEtIAwqAgQgDCoCFJJDAAAAP5QiLyEsA0AgKyABQQhqKgIAIAFBGGoqAgCSQwAAAD+UIikgKSArXxshKyAsIAFBBGoqAgAgAUEUaioCAJJDAAAAP5QiKCAoICxfGyEsICogKSApICpgGyEqIC8gKCAoIC9gGyEvIC0gASoCACABQRBqKgIAkkMAAAA/lCIoICggLV8bIS0gLiAoICggLmAbIS4gAiABQSBqIgFHDQALIAhBBHQiBkEIEJEOIgJFDQJDAACAPyArICqTlSErQwAAgD8gLCAvk5UhKUMAAIA/IC0gLpOVISggDCEBIAIhBQNAIAVBCGogAzYCACAFICsgAUEIaioCACABQRhqKgIAkkMAAAA/lCAqk5S7RAAAAAAAAEBBovwDQf///wBxrSIiQhCGICJCIIaEICKEQv+BgPiPgMAPg0KBAn5Cj+CD+ICewIcQg0IRfkLD4bCYjIbD4RCDQhR+QqSSyaSSyaSSyQCDICkgAUEEaioCACABQRRqKgIAkkMAAAA/lCAvk5S7RAAAAAAAAEBBovwDQf///wBxrSIiQhCGICJCIIaEICKEQv+BgPiPgMAPg0KBAn5Cj+CD+ICewIcQg0IRfkLD4bCYjIbD4RCDQgp+QpLJpJLJpJLJJIMgKCABKgIAIAFBEGoqAgCSQwAAAD+UIC6TlLtEAAAAAAAAQEGi/ANB////AHGtIiJCEIYgIkIghoQgIoRC/4GA+I+AwA+DQoECfkKP4IP4gJ7AhxCDQhF+QsPhsJiMhsPhEINCBX5CyaSSyaSSyaQSg4SENwMAIAFBIGohASAFQRBqIQUgCCADQQFqIgNHDQALAkAgCEEVTwRAIA9BEGohCSAIQQJJDQECQAJAAkAgAkEYaigCACIBIAJBCGooAgBJIAIpAxAiIiACKQMAIiNUICIgI1EbIgVFBEBBAiELIAhBAkYNASACQShqIQoDQCABIQMgAyAKKAIAIgFLIApBCGspAwAiIyAiVCAiICNRGw0CIApBEGohCiAjISIgCCALQQFqIgtHDQALDAILQQIhCyAIQQJGDQAgAkEoaiEKA0AgASEDIAMgCigCACIBSyAKQQhrKQMAIiMgIlQgIiAjURtBAUcNASAKQRBqIQogIyEiIAggC0EBaiILRw0ACwwBCyAIIAtHDQELIAVFDQIgAiAIQQR0IgpqIQ1BACEBIAhBAXYiA0EBRwRAIANB/v///wdxIQ5BACELA0AgAiALaiIHKQMAISIgB0EIaigCACEJIAcgAiAKaiIFQRBrIgP9AAMA/QsDACAFQQhrIAk2AgAgAyAiNwMAIAdBEGoiBSkDACEiIAdBGGooAgAhAyAFIA0gAUH+////AHNBBHRqIgX9AAMA/QsDACAFQQhqIAM2AgAgBSAiNwMAIApBIGshCiALQSBqIQsgDiABQQJqIgFHDQALCyAIQQJxRQ0CIAIgAUEEdGoiBSkDACEiIAVBCGooAgAhAyAFIA0gAUF/c0EEdGoiAf0AAwD9CwMAIAFBCGogAzYCACABICI3AwAMAgsgAiAIQQAgCEEBcmdBAXRBPnMgCRBTDAELIAJBEGohBSACIAZqIQkgAiEBA0AgAUEYaigCACIOIAFBCGooAgBJIAEpAxAiIyABKQMAIiJUICIgI1EbQQFGBEAgDSEBAn8DQCABIAJqIgdBEGogB/0AAwD9CwMAIAIgAUUNARogAUEQayEBIA4gB0EIaygCAEkgB0EQaykDACIiICNWICIgI1EbDQALIAEgAmpBEGoLIgMgDjYCCCADICM3AwALIA1BEGohDSAJIAUiAUEQaiIFRw0ACwtBACEFQQEhAQNAIAEhAyACIAVBBHRqIgFBCGohCSAFIAEoAggiAUsEQANAIAUgAiABQQR0aigCCCIBSw0ACwsgCSABNgIAIAEgCE8NAiAMIAVBBXRqIgcpAwAhJSAMIAFBBXRqIg1BEGoiDikDACEiIAcgDSkDADcDACAHQRBqIgEpAwAhJiABICI3AwAgB0EIaiIBKQMAISQgDUEYaiIJKQMAISMgASANQQhqIgUpAwA3AwAgB0EYaiIBKQMAISIgASAjNwMAIA0gJTcDACAOICY3AwAgBSAkNwMAIAkgIjcDACADIAhJIgkgA2ohASADIQUgCQ0ACyACIAZBCBDoDiAVKAIIIgdFDQggB0ECdCEBCyABQQQQkQ4iDARAIAdBAUcEfyABQQRrIgEEQCAMQf8BIAH8CwALIAEgDGoFIAwLQX82AgAgB0EFdCIBQRAQkQ4iGARAIA9BADYCDCAPIBg2AgggDyAHNgIEQQEhDiAHQQJJBEBBASEHDAgLIAdBBXQhHCAQQQxqIR4gFSgCBCENIBUoAgAhASAHIQgDQCABIQ4gCEEBayEGQQAhA0EBIQEDQCABIQVBfyECAkAgA0EQayIBQQAgASADTRsiASAGIANBEGoiCSAGIAlJGyIJSw0AIA0gA0EFdGohCkP//39/ISoDQAJAIAEgA0YNACABIAhJBEAgCioCFCIpIA0gAUEFdGoiCyoCFCIoICggKV8bIAoqAgQiKSALKgIEIiggKCApYBuTIiwgCioCGCIpIAsqAhgiKCAoIClfGyAKKgIIIikgCyoCCCIoICggKWAbkyIrlCAKKgIQIikgCyoCECIoICggKV8bIAoqAgAiKSALKgIAIiggKCApYBuTICwgK5KUkiIoICpdRQ0BIAEhAiAoISoMAQsgASAIQaDwwgAQhQsACyABIAlPDQEgCSABIAEgCUlqIgFPDQALCyADIAdPDQcgDCADQQJ0aiACNgIAIAUgCEkiAiAFaiEBIAUhAyACDQALQQEgCCAIQQFNGyEfQQAhASAMIQlBACEFQQAhAkEAIQMDQAJAAkACQAJAAkACQAJAIAEgHEcEQCAJKAIAIgYgB08NASAFIAwgBkECdGooAgBHDQIgBSAGSw0HIAYgCE8NBCABIA1qIgsqAgAhMCALQRxqKAIAIRMgC0EYaioCACExIAtBFGoqAgAhMiALQRBqKgIAITMgC0EMaigCACEaIAtBCGoqAgAhLiALQQRqKgIAIS8gDSAGQQV0aiIGKAIcIR0gBioCGCEtIAYqAhQhLCAGKgIQISsgBigCDCEbIAYqAgghKSAGKgIEISogBioCACEoIBAoAgghFCAIQQJHDQMgFEUNBSAQKAIEIgYgHTYCPCAGIC04AjggBiAsOAI0IAYgKzgCMCAGIBs2AiwgBiApOAIoIAYgKjgCJCAGICg4AiAgBiATNgIcIAYgMTgCGCAGIDI4AhQgBiAzOAIQIAYgGjYCDCAGIC44AgggBiAvOAIEIAYgMDgCACATQf////8DcSEgQQAhFAwGCyAHIAdB0O7CABCFCwALIAYgB0Hg7sIAEIULAAsgD0EgaiIGIAEgDWoiAkEQav0ABAD9CwQAIA8gAv0ABAD9CwQQIA8oAgQgA0YEQCAPQQRqQfDuwgAQxQggDygCCCEYCyAYIANBBXRqIgIgD/0ABBD9CwQAIAJBEGogBv0ABAD9CwQAIA8gA0EBaiICNgIMIAIhAwwECyATQf////8DcSEgIB1B/////wNxIQYgEyAdciEDIBAoAgAgFEYEQCAQQaDvwgAQwwgLIAYgIGohGSADQYCAgIB8cSEDIC0gMV8hEiAsIDJfIRYgKyAzXyEXICkgLmAhCiAqIC9gIQsgKCAwYCEGIBAgFEEBajYCCCAQKAIEIBRBBnRqIhEgHTYCPCARIC04AjggESAsOAI0IBEgKzgCMCARIBs2AiwgESApOAIoIBEgKjgCJCARICg4AiAgESATNgIcIBEgMTgCGCARIDI4AhQgESAzOAIQIBEgGjYCDCARIC44AgggESAvOAIEIBEgMDgCACAQKAIUIhMgECgCDEYEQCAeQbDvwgAQtggLIAMgGXIhAyAxIC0gEhshLSAyICwgFhshLCAzICsgFxshKyAuICkgChshKSAvICogCxshKiAwICggBhshKCAQIBNBAWo2AhQgECgCECATQQJ0akEANgIAIA8oAgQgAkYEQCAPQQRqQcDvwgAQxQggDygCCCEYCyAYIAJBBXRqIgYgAzYCHCAGIC04AhggBiAsOAIUIAYgKzgCECAGIBQ2AgwgBiApOAIIIAYgKjgCBCAGICg4AgAgDyACQQFqIgI2AgwgAiEDDAILIAYgCEGA78IAEIULAAtBACAUQZDvwgAQhQsACwJAICBBAUYEQAJAIBogECgCIE8NACAQKAIcIBpBA3RqIgYoAgBFDQAgBiAUQQF0NgIEDAILQZDkwgBBD0HQ78IAENELAAsgECgCFCIGIBpNBEAgGiAGQeDvwgAQhQsACyAQKAIQIBpBAnRqIBRBAXQ2AgALIB1B/////wNxQQFGBEACQCAbIBAoAiBPDQAgECgCHCAbQQN0aiIGKAIARQ0AIAYgFEEBdEEBcjYCBAwCC0GQ5MIAQQ9B8O/CABDRCwALIBAoAhQiBiAbTQRAIBsgBkGA8MIAEIULAAsgECgCECAbQQJ0aiAUQQF0QQFyNgIACyAJQQRqIQkgAUEgaiEBIB8gBUEBaiIFRw0ACyAVIA8oAgQiATYCACAVIAI2AgggFSgCBCEYIBUgDygCCCINNgIEIA8gDjYCBCAPQQA2AgwgDyAYNgIIIAIiCEEBSw0ACwwGC0EQIAFBwO7CABDXDQALQQQgAUGw7sIAENcNAAsgASAIQcjawgAQhQsAC0EIIAZBlNDCABDXDQALQYDhwgBB0gBB5OHCABDRCwALIAMgB0GQ8MIAEIULAAsgDkUNAQsgGCAOQQV0QRAQ6A4LIAwgB0ECdEEEEOgOCyAPQdAAaiQAIBAgBEGoAWoQ/wELIARBgAJqIgJBIGogBEGAAWoiAUEgaikCADcDACACQRBqIAFBEGr9AAIA/QsDACAEIAT9AAKAAf0LA4ACIARBqAFqEKwJIAQoAhAiAQRAIAQoAhQgAUEGdEHAABDoDgsgBCgCHCIBBEAgBCgCICABQQJ0QQQQ6A4LIAQoAigiAQRAIAQoAiwgAUEDdEEEEOgOCyAEQRBqIgJBIGogBEGAAmoiAUEgaikDADcDACACQRBqIAFBEGr9AAMA/QsDACAEIAT9AAOAAv0LAxAgBCgCRCIHBEAgBCgCOCIDQQhqIQ0gBCkDSEKDgICAEIUiIkL/////D4MhJyAiQiCIISUgAykDAEJ/hUKAgYKEiJCgwIB/gyEjIAQoAmAhHiAEKAJkIRMgBCgCPCEcIAMhCANAIAdBAWshByAjUAR+A0AgCEGgAWshCCANKQMAISIgDUEIaiENICJCgIGChIiQoMCAf4MiIkKAgYKEiJCgwIB/UQ0ACyAiQoCBgoSIkKDAgH+FBSAjCyIiQgF9ICKDISNBACECIAggInqnQQN2QWxsaiIBQQxrIQsgAUEQayEGIAFBCGshDiABQRRrIQkCQAJAAkADQCALKAIAIQUgBigCACEBIAQgCSgCAEEDdCIMIAJBB3FyIh82AqgBIAQgAUEDdCIBIAJBA3ZBB3FyIhk2AqwBIAQgBUEDdCIFIAJBBnZyIhI2ArABIBwgAUEfdiIBIBlqQQhtIAFrIhZBt9OwhXxzrSIkICV+IAxBH3YiASAfakEIbSABayIXQd2h8ct8c60iIiAnfoUgJCAnfiAiICV+hUIgiYUiIqcgBUEfdiIBIBJqQQhtIAFrIgpzrSIkQt2h8csMfiAiQiCIIiJCt9OwhQx+hSAkQrfTsIUMfiAiQt2h8csMfoVCIIiFIiKncSEFICJCGYhC/wCDQoGChIiQoMCAAX4hJCAZIBdrQQN0IB9qIApBCXRrIBIgFmtBBnRqIRkgAkEBaiEBQQAhDAJAAn8DQAJAIAMgBWopAAAiJiAkhSIiQoGChIiQoMCAAX0gIkJ/hYNCgIGChIiQoMCAf4MiIkIAUgRAA0ACQCAXIAMgInqnQQN2IAVqIBxxQWxsaiISQRRrKAIARw0AIBYgEkEQaygCAEcNACAKIBJBDGsoAgBGDQMLICJCAX0gIoMiIkIAUg0ACwtBwAAgJiAmQgGGg0KAgYKEiJCgwIB/g0IAUg0CGiAMQQhqIgwgBWogHHEhBQwBCwsgEkEIaygCACIFIBNPDQEgGUGABE8NA0HAACAeIAVBCXRqIBlqLQAAQcAARg0AGiAEQRBqIARBqAFqENQCQf8BcQshEiAOKAIAIgUgE08NAyAeIAVBCXRqIAJqIBI6AAAgASICQYAERg0EDAELCyAFIBNB9OjDABCFCwALIBlBgARBhOnDABCFCwALIAUgE0Hk6MMAEIULAAsgBw0ACwsgACAEQRBqQfAA/AoAACAhJAALqyYEB38MfQl7An4jAEHgA2siByQAIAdB6ABqIAMgBCgCYCILEQAAIAdB8ABqIgkiCCAHKAJoIgogBygCbCgCDBEAACAHKQNwISMgBykDeCEkIAdB4ABqIAUgBigCYCINEQAAIAggBygCYCIIIAcoAmQoAgwRAAACfwJ9An0CQAJAAkACQAJAAkACQAJAAkACQAJAIAhBACAHKQNwQu2MnqmHh8L4NoUgBykDeEKlnKGM45TspV6FhFAbIgxBAEdBACAKQQAgI0LtjJ6ph4fC+DaFICRCpZyhjOOU7KVehYRQGyIIG0UEQCAIQQAgBSAGKAKwAREEABsNASAMQQAgAyAEKAKwAREEABsNAiAHQdgAaiADIAsRAAAgCSAHKAJYIgogBygCXCgCDBEAACAHKQNwISMgBykDeCEkIAdB0ABqIAUgDREAACAJIAcoAlAiCCAHKAJUKAIMEQAAIApBACAjQuD8lOjPzYW1I4UgJEKc7aKrtJ79zMYAhYRQGyIKBEAgCEEAIAcpA3BC4PyU6M/NhbUjhSAHKQN4Qpztoqu0nv3MxgCFhFAbIggNBAsgB0HIAGogAyALEQAAIAdB8ABqIgggBygCSCIKIAcoAkwoAgwRAAAgBykDcCEjIAcpA3ghJCAHQUBrIAUgDREAACAIIAcoAkAiCCAHKAJEKAIMEQAAIApBACAjQpHm3a7YmZjS8gCFICRCm9vS2qyiuuuKf4WEUBsiCgRAIAhBACAHKQNwQpHm3a7YmZjS8gCFIAcpA3hCm9vS2qyiuuuKf4WEUBsiCA0FCyAHQThqIAMgCxEAACAHQfAAaiAHKAI4IgggBygCPCgCDBEAACAHKQNwISMgBykDeCEkIAdBMGogBSAGKAK0ASIMEQAAIAhBACAjQsWyireAgJGqqn+FICRCiYfbx6Gq9r0mhYRQGyIKBEAgBygCMCIIDQYLIAdBKGogAyAEKAK0ASIJEQAAIAcoAiwhCiAHKAIoIQsgB0EgaiAFIA0RAAAgB0HwAGogBygCICIIIAcoAiQoAgwRAAAgCwRAIAhBACAHKQNwQsWyireAgJGqqn+FIAcpA3hCiYfbx6Gq9r0mhYRQGyIIDQcLIAdBGGogAyAJEQAAIAcoAhwhCSAHKAIYIQogB0EQaiAFIAwRAAAgCgRAIAcoAhAiCA0ICyAHQQhqIAMgBCgCuAERAAAgBygCCCIIRQ0IIAdB8ABqIAggBygCDCABIAIgBSAGEJsBIAcqAnhD//9/fyAHKAJwGwwNC0MAAAAAIAIqAhAiDiAOlCACKgIUIg4gDpSSIAIqAhgiDiAOlJIiDpEgCCoCACAMKgIAkiIPkyAOIA8gD5RfGwwMCyAIKgIAIRQgBigCLCEBIAcgAioCDCIVIAIqAgAiGSACKgIUIhaUIAIqAgQiEiACKgIQIhiUkyIOIA6SIheUIBIgEiACKgIYIhCUIAIqAggiEyAWlJMiDiAOkiIRlCAZIBMgGJQgGSAQlJMiDiAOkiIPlJOSIBCTIhA4AsACIAcgFSARlCATIA+UIBIgF5STkiAYkyIOOAK4AiAHIBUgD5QgGSAXlCATIBGUk5IgFpMiDzgCvAIgB0HwAGogBSAHQbgCakEBIAERAgBDAAAAAEMAAAAAIA4gByoCcJMiDiAOlCAPIAcqAnSTIg4gDpSSIBAgByoCeJMiDiAOlJKRIBSTIg4gDkMAAAAAXRsgDiAOXBshDkEADAwLIAwqAgAhDyAEKAIsIQQgB0HAAmoiASACQRhqKAIANgIAIAcgAikCEDcDuAIgB0HwAGogAyAHQbgCakEBIAQRAgBDAAAAAEMAAAAAIAcqArgCIAcqAnCTIg4gDpQgByoCvAIgByoCdJMiDiAOlJIgASoCACAHKgJ4kyIOIA6UkpEgD5MiDiAOQwAAAABdGyAOIA5cGyEOQQAMCwsgByACKgIMIhY4AsQCIAcgAioCACISjDgCuAIgByAC/V0CBCIb/R8BIhOMOALAAiAHIBv9HwAiFYw4ArwCIAcgFiASIAL9XQIQIiD9HwEiEJQgFSAg/R8AIg+UkyIOIA6SIg6UIBsgFSACKgIYIhiU/RMgEyAPlP0gASATIBCU/RMgEiAYlP0gAf3lASIaIBr95AEiGv3mAf0fACASIBr9HwGUk5IgGJMiETgC0AIgByAW/RMiISAa/eYBIBsgG/0NBAUGBwABAgMAAQIDAAECAyAS/SABIiIgGiAb/Q0EBQYHAAECAwABAgMAAQIDIA79IAH95gEgGyAO/RMgGv0NAAECAxAREhMAAQIDAAECA/3mAf3lAf3kASAg/eUBIh39HwE4AswCIAcgHf0fADgCyAIgB0HYAmogCiAIIAIQoQIgByoC2AIiEEP//39/Xg0FIAdB6AJqIAggCiAHQbgCahChAiAHKgLoAiIPQ///f39eDQUgB0H4AmogCiAIIAIQ0gICQAJAIAcqAvgCIg5D//9/f14NAAJAIBBDAAAAAF9FDQAgD0MAAAAAX0UNACAOQwAAAABfDQELIA8gEF8gDiAQX3ENCCAOIA9fIA8gEGBxDQkgDiAQYCAOIA9gcQ0BQejawgBBKEGY9sIAENYMAAtDAAAAAAwKCyAHKgL8AiEQIAcqAoADIQ8gByAHKgKEAyIOOAJ4IAcgDzgCdCAHIBA4AnAgB0GUA2oiBCAKIAdB8ABqIgUQwQYgByAOjDgCeCAHIA+MOAJ0IAcgEIw4AnAgB0GsA2oiAyAHQbgCaiAFEPoIIAdBuANqIgEgCCADEMEGIAUgAiAEIAFD//9/fxCQAkMAAAAAIAcoAnBBAUcNCRogByoCiAEhDiAH/V0CgAEhHSAH/V0CdCEeIAcqAnwMCAsgB0HwAGogAiAKIAhD//9/fxCQAkMAAAAAIAcoAnBBAUcNCBogB/1dAoABIh79HwEgAioCACIUlCAe/R8AIAIqAgQiEJSTIg4gDpIhESAC/V0CBCId/QwAAAAAAAAAAAAAAAAAAAAA/Q0EBQYHAAECAwABAgMAAQIDIBT9IAEhHCAHKgKIASIO/RMgHv0NAAECAxAREhMAAQIDAAECAyAd/eYBIAdBhAFq/V0CACAc/eYB/eUBIhogGv3kASEaIAIqAhggDiACKgIMIg8gEZQgFCAa/R8BlCAQIBr9HwCUk5KSkiAHKgJ8kyIOIA6UIAL9XQIQIB4gD/0TIBr95gEgHSAR/RMgGv0NAAECAxAREhMAAQIDAAECA/3mASAcIBogGv0NBAUGBwABAgMAAQIDAAECAyAR/SAB/eYB/eUB/eQB/eQB/eQBIAf9XQJ0/eUBIhogGv3mASIa/R8AIBr9HwGSkpEMCAsgAiAKIAggBygCNEEYaigCABDZCiEOQQAMCAsgB0HwAGoiASACENgHIAEgCCALIApBGGooAgAQ2QoMBgsgBygCFCEBIAf9DAAAAAAAAAAAAAAAAAAAAAD9CwSgAiAH/QwAAAAAAQAAAAIAAAADAAAA/QsEcCAHQYABakEAQaAB/AsAIAdBADYCuAIgCUEMaigCACEGIAFBFGooAgAhBSMAQfAAayIJJAAgB0HwAGoiBAJ9An0gB0G4AmoiASgCAEEBRgRAIAEqAgghESABKgIEIRAgASoCDAwBCyACKgIUjCERIAIqAhCMIRAgAioCGIwLIg4gDpQgESARlCAQIBCUkpIiD0MAAIAoXgRAIAkgECAPkSIUlSIQOAIMIAkgESAUlSIPOAIQIAkgDiAUlSIOOAIUIAlBQGsiAyAKIAlBDGogBhEBACAJIA6MOAIgIAkgD4w4AhwgCSAQjDgCGCAJQcwAaiIBIAggAiAJQRhqIAURAgAgBEEANgK8ASAEQQA2AqwBIAQgCSkCQDcCHCAEQSRqIANBCGoiAygCADYCACAEIAkpAkw3AiggBEEwaiABQQhqIgEoAgA2AgAgCSoCRCAJKgJQkyERIAkqAkAgCSoCTJMhECADKgIAIAEqAgCTDAELIAlBADYCFCAJQoCAgPwDNwIMIAlB2ABqIgMgCiAJQQxqIAYRAQAgCUGAgICAeDYCICAJQoCAgPyLgICAgH83AhggCUHkAGoiASAIIAIgCUEYaiAFEQIAIARBADYCvAEgBEEANgKsASAEIAkpAlg3AhwgBEEkaiADQQhqIgMoAgA2AgAgBCAJKQJkNwIoIARBMGogAUEIaiIBKAIANgIAIAkqAlwgCSoCaJMhESAJKgJYIAkqAmSTIRAgAyoCACABKgIAkws4AhggBCAROAIUIAQgEDgCECAJQRhqIAIgCiAGIAggBUP//39/QQEgBBDLAUMAAAAAIQ4CQAJAAkAgCSgCGEEBaw4CAQACC0Ho2sIAQShB7InDABDWDAALIAkqAiggCSoCHJMiDiAOlCAJKgIsIAkqAiCTIg4gDpSSIAkqAjAgCSoCJJMiDiAOlJKRIQ4LIAlB8ABqJABBAAwGCyAHIAUgBigCuAERAABBASAHKAIAIgZFDQUaIAcoAgQhBSMAQTBrIggkACAIIAIqAgwiGDgCFCAIIAIqAggiE4w4AhAgCCACKgIEIhWMOAIMIAggAioCACIWjDgCCCAIIBggFiACKgIUIheUIBUgAioCECIRlJMiDiAOkiIUlCAVIBUgAioCGCIQlCATIBeUkyIOIA6SIg+UIBYgEyARlCAWIBCUkyIOIA6SIg6Uk5IgEJM4AiAgCCAYIA6UIBYgFJQgEyAPlJOSIBeTOAIcIAggGCAPlCATIA6UIBUgFJSTkiARkzgCGCAIQSRqIAYgBSABIAhBCGogAyAEEJsBIAgoAiQhASAIKgIsIQ4gCEEwaiQAIA5D//9/fyABGyEOQQAMBQtDAAAAAAwDCyAS/RMgCCoCCCAWIBIgByoC4AIiEJQgFSAHKgLcAiIPlJMiDiAOkiIXlCAVIBUgByoC5AIiFJQgEyAQlJMiDiAOkiIQlCASIBMgD5QgEiAUlJMiDiAOkiIPlJOSIBSTmCIO/SABIAj9XQIA/Qz///9/////f////3////9//U4gFiAQlCATIA+UIBUgF5STkv0TIBYgD5QgEiAXlCATIBCUk5L9IAEgB/1dAtwC/eUB/QwAAACAAAAAgAAAAIAAAACA/U79UCIeIBv9DQQFBgcQERITAAECAwABAgP95gEgGyAe/eYB/eUBIhogGv3kASIc/R8AIRQgCioCCCIPjCAYIA4gFiAUlCASIBMgHv0fAJQgEiAOlJMiDiAOkiIQlCAVIBz9HwGUk5KSkiIXkyEO/QwAAAAAAAAAAAAAAAAAAAAAIAr9XQIAIhr94QEgICAeICEgHCAb/Q0EBQYHAAECAwABAgMAAQIDIBD9IAH95gEgGyAc/eYBIBMgEJT9EyASIBSU/SAB/eUB/eQB/eQB/eQBIh/95QH96wH9DAAAAAAAAAAAAAAAAAAAAAAgHyAa/eUB/esB/eUBIhz9DAAAAAAAAAAAAAAAAAAAAAD9QiIa/R0AIBogG/0NAAECAwABAgMEBQYHAAECA/0dAYSnIA5DAAAAACAOQwAAAABgGyAXIA+TIg5DAAAAACAOQwAAAABgG5MiFEMAAAAAXHIhASAfIBz95AEgHyAB/RFBH/2rAUEf/awB/VIhHiARIBcgFiAVIB/9HwAiEJQgEiAf/R8BIg+UkyIOIA6SIhGUIBsgEv0gASATIA+U/RMgEiAXlP0gASAVIBeU/RMgEyAQlP0gAf3lASIaIBr95AEiHP3mASIa/R8AIBr9HwGTkpKSIQ4gHSAfICEgHP3mASAiIBwgG/0NBAUGBwABAgMAAQIDAAECAyAR/SAB/eYBIBsgEf0TIBz9DQABAgMQERITAAECAwABAgP95gH95QH95AH95AH95AEhHSAXIBSSIBcgAUEBcRsMAQsgByAHKgL0Aow4AnggByAHKgLwAow4AnQgByAHKgLsAow4AnAgB0GIA2oiBCAKIAdBuAJqIAdB8ABqIgMQsAUgCCoCACEPIAgqAgQhDiAHIAhBCGoiASoCAIw4AsADIAcgDow4ArwDIAcgD4w4ArgDIAdBzANqIAEoAgA2AgAgByAIKQIANwLEAyADIAdBuANqIARBARCGAyAH/V0DcCEdIAcqAnghDiAHQdADaiACIAQQ+gggICAH/V0D0AP95AEhHiAYIAcqAtgDkgshECAYIA4gFiAbIBL9IAEiHCAd/eYBIhr9HwEgGv0fAJMiDyAPkiIPlCAcIBsgDv0TIB39DQABAgMQERITAAECAwABAgP95gEgIiAdIBv9DQQFBgcAAQIDAAECAwABAgMgDv0gAf3mAf3lASIaIBr95AEiHP3mASIa/R8BIBr9HwCTkpKSIBCTIg4gDpQgICAdICEgHP3mASAbIA/9EyAc/Q0AAQIDEBESEwABAgMAAQID/eYBICIgHCAb/Q0EBQYHAAECAwABAgMAAQIDIA/9IAH95gH95QH95AH95AH95AEgHv3lASIaIBr95gEiGv0fACAa/R8BkpKRCyEOQQALIQUgACAOOAIEIAAgBTYCACAHQeADaiQAC/waAhl9An8jAEHwAGsiHSQAIB0gASoCFCIKIAEqAggiB5MiETgCECAdIAEqAhAiCyABKgIEIgmTIhM4AgwgHSABKgIMIg0gASoCACIMkyIWOAIIIB0gASoCICIIIAeTIhc4AhwgHSABKgIcIg4gCZMiGDgCGCAdIAEqAhgiDyAMkyIZOAIUIB0gAioCBCIFIAmTIhI4AiQgHSACKgIAIgQgDJMiEDgCICAdIAIqAggiBiAHkyIUOAIoAkACfwJAAkACQAJAAkACQAJAIBYgEJQgEyASlJIgESAUlJIiFUMAAAAAXyAZIBCUIBggEpSSIBcgFJSSIhJDAAAAAF9xRQRAIB0gBSALkyIQOAIwIB0gBCANkyIUOAIsIB0gBiAKkyIaOAI0IBkgFJQgGCAQlJIgFyAalJIiGyAWIBSUIBMgEJSSIBEgGpSSIhBfIBBDAAAAAGBxDQEgHSAFIA6TIhQ4AjwgHSAEIA+TIho4AjggHSAGIAiTIhw4AkAgFiAalCATIBSUkiARIByUkiITIBkgGpQgGCAUlJIgFyAclJIiEV8gEUMAAAAAYHENAiAdIAggCpMiCDgCTCAdIA4gC5MiDjgCSCAdIA8gDZMiDzgCRCAdQdAAaiAdQQhqIB1BFGogHUHEAGogHUEgaiAdQSxqIB1BOGogFSAQIBIgESAbIBMQgAQgHSgCUEEBaw4DBAUGAwsCQAJAIAQgDFsNAEEAIQIgDIsiCEMAAIB/Ww0BIASLIgpDAACAf1sNASAMIASTiyIEQwAAADRfDQAgBCAKIAggCCAKXRtDAAAANJRfRQ0BCwJAIAUgCVsNAEEAIQIgCYsiBEMAAIB/Ww0BIAWLIghDAACAf1sNASAJIAWTiyIFQwAAADRfDQAgBSAIIAQgBCAIXRtDAAAANJRfRQ0BC0EBIQIgBiAHWw0AQQAhAiAHiyIFQwAAgH9bDQAgBosiBEMAAIB/Ww0AQQEhAiAHIAaTiyIGQwAAADRfDQAgBiAEIAUgBCAFXhtDAAAANJRfIQILIABCADcCECAAIAI6AAwgACABKQIANwIAIABBCGogAUEIaigCADYCAAwICwJAAkAgBCANWw0AQQAhASANiyIIQwAAgH9bDQEgBIsiB0MAAIB/Ww0BIA0gBJOLIgRDAAAANF8NACAEIAcgCCAHIAheG0MAAAA0lF9FDQELAkAgBSALWw0AQQAhASALiyIEQwAAgH9bDQEgBYsiCEMAAIB/Ww0BIAsgBZOLIgVDAAAANF8NACAFIAggBCAEIAhdG0MAAAA0lF9FDQELQQEhASAGIApbDQBBACEBIAqLIgVDAACAf1sNACAGiyIEQwAAgH9bDQBBASEBIAogBpOLIgZDAAAANF8NACAGIAQgBSAEIAVeG0MAAAA0lF8hAQsgAEKAgICAEDcCECAAIAE6AAwgACAKOAIIIAAgCzgCBCAAIA04AgAMBwsCQAJAIAQgD1sNAEEAIQEgD4siB0MAAIB/Ww0BIASLIglDAACAf1sNASAPIASTiyIEQwAAADRfDQAgBCAJIAcgByAJXRtDAAAANJRfRQ0BCwJAIAUgDlsNAEEAIQEgDosiBEMAAIB/Ww0BIAWLIgdDAACAf1sNASAOIAWTiyIFQwAAADRfDQAgBSAHIAQgBCAHXRtDAAAANJRfRQ0BC0EBIQEgBiAIWw0AQQAhASAIiyIFQwAAgH9bDQAgBosiBEMAAIB/Ww0AQQEhASAIIAaTiyIGQwAAADRfDQAgBiAEIAUgBCAFXhtDAAAANJRfIQELIABCgICAgCA3AhAgACABOgAMIAAgCDgCCCAAIA44AgQgACAPOAIADAYLIBUgHSoCCCIKIAqUIB0qAgwiCyALlJIgHSoCECINIA2UkpUhCCAHIA0gCJSSIQcgCSALIAiUkiEJAkACQCAEIAwgCiAIlJIiDFsNAEEAIQEgBIsiCkMAAIB/Ww0BIAyLIgtDAACAf1sNASAMIASTiyIEQwAAADRfDQAgBCAKIAsgCiALXhtDAAAANJRfRQ0BCwJAIAUgCVsNAEEAIQEgBYsiBEMAAIB/Ww0BIAmLIgpDAACAf1sNASAJIAWTiyIFQwAAADRfDQAgBSAEIAogBCAKXhtDAAAANJRfRQ0BC0EBIQEgBiAHWw0AQQAhASAGiyIFQwAAgH9bDQAgB4siBEMAAIB/Ww0AQQEhASAHIAaTiyIGQwAAADRfDQAgBiAFIAQgBCAFXRtDAAAANJRfIQELQwAAgD8gCJMhBSAAQgE3AhAMAwsgEiAdKgIUIgogCpQgHSoCGCILIAuUkiAdKgIcIg0gDZSSlSEIIAcgDSAIlJIhByAJIAsgCJSSIQkCQAJAIAQgDCAKIAiUkiIMWw0AQQAhASAEiyIKQwAAgH9bDQEgDIsiC0MAAIB/Ww0BIAwgBJOLIgRDAAAANF8NACAEIAogCyAKIAteG0MAAAA0lF9FDQELAkAgBSAJWw0AQQAhASAFiyIEQwAAgH9bDQEgCYsiCkMAAIB/Ww0BIAkgBZOLIgVDAAAANF8NACAFIAQgCiAEIApeG0MAAAA0lF9FDQELQQEhASAGIAdbDQBBACEBIAaLIgVDAACAf1sNACAHiyIEQwAAgH9bDQBBASEBIAcgBpOLIgZDAAAANF8NACAGIAUgBCAEIAVdG0MAAAA0lF8hAQtDAACAPyAIkyEFIABCgYCAgCA3AhAMAgsgHSoCRCIMIB0qAiyUIB0qAkgiCSAdKgIwlJIgHSoCTCIHIB0qAjSUkiAMIAyUIAkgCZSSIAcgB5SSlSEIIAogByAIlJIhByALIAkgCJSSIQkCQAJAIAQgDSAMIAiUkiIMWw0AQQAhASAEiyIKQwAAgH9bDQEgDIsiC0MAAIB/Ww0BIAwgBJOLIgRDAAAANF8NACAEIAogCyAKIAteG0MAAAA0lF9FDQELAkAgBSAJWw0AQQAhASAFiyIEQwAAgH9bDQEgCYsiCkMAAIB/Ww0BIAkgBZOLIgVDAAAANF8NACAFIAQgCiAEIApeG0MAAAA0lF9FDQELQQEhASAGIAdbDQBBACEBIAaLIgVDAACAf1sNACAHiyIEQwAAgH9bDQBBASEBIAcgBpOLIgZDAAAANF8NACAGIAUgBCAEIAVdG0MAAAA0lF8hAQtDAACAPyAIkyEFIABCgYCAgBA3AhAMAQsCQAJAAkACQCAdKgJYIB0qAlwiBZIgHSoCYCIEkiIGQwAAAABbBEAgAw0DIB0qAiwiBSAFlCAdKgIwIgUgBZSSIB0qAjQiBSAFlJIgGyAQkyIFIBMgBZIgEZOVIgUgBSAPIA+UIA4gDpSSIAggCJSSlJSTIRMgHSoCICIEIASUIB0qAiQiBCAElJIgHSoCKCIEIASUkiIGIBUgFSAQk5UiBCAEIB0qAggiFSAVlCAdKgIMIhAgEJSSIB0qAhAiFiAWlJKUlJMiGCAGIBIgEiARk5UiBiAGIB0qAhQiEiASlCAdKgIYIhEgEZSSIB0qAhwiFyAXlJKUlJMiGV0NAiATIBleDQEgCiAIIAWUkiEIIAsgDiAFlJIhByANIA8gBZSSIQlBASEBDAQLIB0oAlQhHiAdKgIIIQogHSoCFCELIB0qAgwhDSAdKgIYIQ4gHSAHIAVDAACAPyAGlSIGlCIFIB0qAhCUkiAEIAaUIgggHSoCHJSSIg84AmwgHSAJIAUgDZSSIAggDpSSIg04AmggHSAMIAUgCpSSIAggC5SSIgw4AmRBACEBAkACQCAdQeQAaiIDKgIAIgQgAioCACIGWw0AIASLIgdDAACAf1sNASAGiyIJQwAAgH9bDQEgBCAGk4siBEMAAAA0Xw0AIAQgCSAHIAcgCV0bQwAAADSUX0UNAQsCQCADKgIEIgQgAioCBCIGWw0AIASLIgdDAACAf1sNASAGiyIJQwAAgH9bDQEgBCAGk4siBEMAAAA0Xw0AIAQgCSAHIAcgCV0bQwAAADSUX0UNAQtBASEBIAMqAggiBCACKgIIIgZbDQBBACEBIASLIgdDAACAf1sNACAGiyIJQwAAgH9bDQBBASEBIAQgBpOLIgRDAAAANF8NACAEIAkgByAHIAldG0MAAAA0lF8hAQsgAEMAAIA/IAWTIAiTOAIYIAAgHjYCFCAAQQI2AhAgACABOgAMIAAgDzgCCCAAIA04AgQgACAMOAIAQRwhAkEgDAULIAcgBiAXlJIhCCAJIAYgEZSSIQcgDCAGIBKUkiEJQQIhASAGIQUMAgsgEyAYXkUEQCAKIAggBZSSIQggCyAOIAWUkiEHIA0gDyAFlJIhCUEBIQEMAgsgByAEIBaUkiEIIAkgBCAQlJIhByAMIAQgFZSSIQlBACEBIAQhBQwBCyAAQQM2AhAgAEEBOgAMIAAgAikCADcCACAAQQhqIAJBCGooAgA2AgAMAwsgACAFOAIcIAAgATYCFCAAQQE2AhAgAEEBOgAMIAAgCDgCCCAAIAc4AgQgACAJOAIAIABDAACAPyAFkzgCGAwCCyAAIAE6AAwgACAHOAIIIAAgCTgCBCAAIAw4AgBBGCECQRwLIQEgACACaiAFOAIAIAAgAWogCDgCAAsgHUHwAGokAAviGQIgfQJ/IwBB8ABrIiQkACAkIAEqAhQiECABKgIIIgiTIgk4AhAgJCABKgIQIhQgASoCBCILkyIKOAIMICQgASoCDCIVIAEqAgAiDJMiETgCCCAkIAEqAiAiDSAIkyIHOAIcICQgASoCHCIOIAuTIhI4AhggJCABKgIYIg8gDJMiEzgCFCAkIAIqAggiBiAIkyIaOAIoICQgAioCBCIFIAuTIhs4AiQgJCACKgIAIgQgDJMiHDgCIAJAAn8CQAJAAkACQAJAAkACQCARIByUIAogG5SSIAkgGpSSIh1DAAAAAF8gEyAclCASIBuUkiAHIBqUkiIeQwAAAABfcUUEQCAkIAYgEJMiFjgCNCAkIAUgFJMiFzgCMCAkIAQgFZMiGDgCLCARIBiUIAogF5SSIAkgFpSSIh9DAAAAAGAgEyAYlCASIBeUkiAHIBaUkiIgIB9fcQ0BICQgBSAOkyIZOAI8ICQgBCAPkyIhOAI4ICQgBiANkyIiOAJAIBEgIZQgCiAZlJIgCSAilJIiIyATICGUIBIgGZSSIAcgIpSSIhlfIBlDAAAAAGBxDQIgJCANIBCTIg04AkwgJCAOIBSTIg44AkggJCAPIBWTIg84AkQgJEHQAGogJEEIaiAkQRRqICRBxABqICRBIGogJEEsaiAkQThqIB0gHyAeIBkgICAjEIAEICQoAlBBAWsOAwQFBgMLAkACQCAEIAxbDQBBACECIAyLIgdDAACAf1sNASAEiyIJQwAAgH9bDQEgDCAEk4siBEMAAAA0Xw0AIAQgCSAHIAcgCV0bQwAAADSUX0UNAQsCQCAFIAtbDQBBACECIAuLIgRDAACAf1sNASAFiyIHQwAAgH9bDQEgCyAFk4siBUMAAAA0Xw0AIAUgByAEIAQgB10bQwAAADSUX0UNAQtBASECIAYgCFsNAEEAIQIgCIsiBUMAAIB/Ww0AIAaLIgRDAACAf1sNAEEBIQIgCCAGk4siBkMAAAA0Xw0AIAYgBCAFIAQgBV4bQwAAADSUXyECCyAAQgA3AhAgACACOgAMIAAgASkCADcCACAAQQhqIAFBCGooAgA2AgAMCAsCQAJAIAQgFVsNAEEAIQEgFYsiB0MAAIB/Ww0BIASLIghDAACAf1sNASAVIASTiyIEQwAAADRfDQAgBCAIIAcgByAIXRtDAAAANJRfRQ0BCwJAIAUgFFsNAEEAIQEgFIsiBEMAAIB/Ww0BIAWLIgdDAACAf1sNASAUIAWTiyIFQwAAADRfDQAgBSAHIAQgBCAHXRtDAAAANJRfRQ0BC0EBIQEgBiAQWw0AQQAhASAQiyIFQwAAgH9bDQAgBosiBEMAAIB/Ww0AQQEhASAQIAaTiyIGQwAAADRfDQAgBiAEIAUgBCAFXhtDAAAANJRfIQELIABCgICAgBA3AhAgACABOgAMIAAgEDgCCCAAIBQ4AgQgACAVOAIADAcLAkACQCAEIA9bDQBBACEBIA+LIgdDAACAf1sNASAEiyIIQwAAgH9bDQEgDyAEk4siBEMAAAA0Xw0AIAQgCCAHIAcgCF0bQwAAADSUX0UNAQsCQCAFIA5bDQBBACEBIA6LIgRDAACAf1sNASAFiyIHQwAAgH9bDQEgDiAFk4siBUMAAAA0Xw0AIAUgByAEIAQgB10bQwAAADSUX0UNAQtBASEBIAYgDVsNAEEAIQEgDYsiBUMAAIB/Ww0AIAaLIgRDAACAf1sNAEEBIQEgDSAGk4siBkMAAAA0Xw0AIAYgBCAFIAQgBV4bQwAAADSUXyEBCyAAQoCAgIAgNwIQIAAgAToADCAAIA04AgggACAOOAIEIAAgDzgCAAwGCyAIIAkgHSARIBGUIAogCpSSIAkgCZSSlSIHlJIhCCALIAogB5SSIQkCQAJAIAQgDCARIAeUkiILWw0AQQAhASAEiyIKQwAAgH9bDQEgC4siDEMAAIB/Ww0BIAsgBJOLIgRDAAAANF8NACAEIAogDCAKIAxeG0MAAAA0lF9FDQELAkAgBSAJWw0AQQAhASAFiyIEQwAAgH9bDQEgCYsiCkMAAIB/Ww0BIAkgBZOLIgVDAAAANF8NACAFIAQgCiAEIApeG0MAAAA0lF9FDQELQQEhASAGIAhbDQBBACEBIAaLIgVDAACAf1sNACAIiyIEQwAAgH9bDQBBASEBIAggBpOLIgZDAAAANF8NACAGIAUgBCAEIAVdG0MAAAA0lF8hAQtDAACAPyAHkyEGIABCATcCEAwDCyAIIAcgHiATIBOUIBIgEpSSIAcgB5SSlSIHlJIhCCALIBIgB5SSIQkCQAJAIAQgDCATIAeUkiILWw0AQQAhASAEiyIKQwAAgH9bDQEgC4siDEMAAIB/Ww0BIAsgBJOLIgRDAAAANF8NACAEIAogDCAKIAxeG0MAAAA0lF9FDQELAkAgBSAJWw0AQQAhASAFiyIEQwAAgH9bDQEgCYsiCkMAAIB/Ww0BIAkgBZOLIgVDAAAANF8NACAFIAQgCiAEIApeG0MAAAA0lF9FDQELQQEhASAGIAhbDQBBACEBIAaLIgVDAACAf1sNACAIiyIEQwAAgH9bDQBBASEBIAggBpOLIgZDAAAANF8NACAGIAUgBCAEIAVdG0MAAAA0lF8hAQtDAACAPyAHkyEGIABCgYCAgCA3AhAMAgsgECANIA8gGJQgDiAXlJIgDSAWlJIgDyAPlCAOIA6UkiANIA2UkpUiB5SSIQggFCAOIAeUkiEJAkACQCAEIBUgDyAHlJIiC1sNAEEAIQEgBIsiCkMAAIB/Ww0BIAuLIgxDAACAf1sNASALIASTiyIEQwAAADRfDQAgBCAKIAwgCiAMXhtDAAAANJRfRQ0BCwJAIAUgCVsNAEEAIQEgBYsiBEMAAIB/Ww0BIAmLIgpDAACAf1sNASAJIAWTiyIFQwAAADRfDQAgBSAEIAogBCAKXhtDAAAANJRfRQ0BC0EBIQEgBiAIWw0AQQAhASAGiyIFQwAAgH9bDQAgCIsiBEMAAIB/Ww0AQQEhASAIIAaTiyIGQwAAADRfDQAgBiAFIAQgBCAFXRtDAAAANJRfIQELQwAAgD8gB5MhBiAAQoGAgIAQNwIQDAELAkACQAJAAkAgJCoCWCAkKgJcIgaSICQqAmAiBZIiBEMAAAAAWwRAIAMNAyAYIBiUIBcgF5SSIBYgFpSSICAgH5MiBiAjIAaSIBmTlSIGIAYgDyAPlCAOIA6UkiANIA2UkpSUkyEWIBwgHJQgGyAblJIgGiAalJIiBCAdIB0gH5OVIgUgBSARIBGUIAogCpSSIAkgCZSSlJSTIhcgBCAeIB4gGZOVIgQgBCATIBOUIBIgEpSSIAcgB5SSlJSTIhhdDQIgFiAYXg0BIBAgDSAGlJIhByAUIA4gBpSSIQggFSAPIAaUkiEJQQEhAQwECyAkKAJUISUgJCAHIAVDAACAPyAElSIFlCIHlCAIIAkgBiAFlCIGlJKSIhA4AmwgJCASIAeUIAsgCiAGlJKSIgs4AmggJCATIAeUIAwgESAGlJKSIgo4AmRBACEBAkACQCAkQeQAaiIDKgIAIgUgAioCACIEWw0AIAWLIghDAACAf1sNASAEiyIJQwAAgH9bDQEgBSAEk4siBUMAAAA0Xw0AIAUgCSAIIAggCV0bQwAAADSUX0UNAQsCQCADKgIEIgUgAioCBCIEWw0AIAWLIghDAACAf1sNASAEiyIJQwAAgH9bDQEgBSAEk4siBUMAAAA0Xw0AIAUgCSAIIAggCV0bQwAAADSUX0UNAQtBASEBIAMqAggiBSACKgIIIgRbDQBBACEBIAWLIghDAACAf1sNACAEiyIJQwAAgH9bDQBBASEBIAUgBJOLIgVDAAAANF8NACAFIAkgCCAIIAldG0MAAAA0lF8hAQsgAEMAAIA/IAaTIAeTOAIYIAAgJTYCFCAAQQI2AhAgACABOgAMIAAgEDgCCCAAIAs4AgQgACAKOAIAQRwhAkEgDAULIAggByAElJIhByALIBIgBJSSIQggDCATIASUkiEJQQIhASAEIQYMAgsgFiAXXkUEQCAQIA0gBpSSIQcgFCAOIAaUkiEIIBUgDyAGlJIhCUEBIQEMAgsgCCAJIAWUkiEHIAsgCiAFlJIhCCAMIBEgBZSSIQlBACEBIAUhBgwBCyAAQQM2AhAgAEEBOgAMIAAgAikCADcCACAAQQhqIAJBCGooAgA2AgAMAwsgACAGOAIcIAAgATYCFCAAQQE2AhAgAEEBOgAMIAAgBzgCCCAAIAg4AgQgACAJOAIAIABDAACAPyAGkzgCGAwCCyAAIAE6AAwgACAIOAIIIAAgCTgCBCAAIAs4AgBBGCECQRwLIQEgACACaiAGOAIAIAAgAWogBzgCAAsgJEHwAGokAAvIFgMbfQt/AnsjAEHwAGsiHiQAAkAgAS0AUEEBcUUNAAJ9AkACQAJAAkACQCABKAIMQQFrIiMEQCABKAJMQQF2IiIgAkshISABKAIkIiUgAkEAICIgIRtrIiYgI24iH00NASAmIB8gI2xrIiAgASgCICIkTw0BIAEoAhgiJyAfICRsaiAgai0AACECIB5BCGogASAgIB8QnQIgHioCVCEYIB4qAlAhGSAeKgJMIRogHioCSCEbIB4qAkQhHCAeKgJAIR0gHioCPCETIB4qAjghFCAeKgI0IRUgHigCMCEoIB4qAiwhEiAeKgIoIQ0gHioCJCEOIB4qAiAhCSAeKgIcIQwgHioCGCEDIB4qAhQhDyAeKgIQIRYgHioCDCEXIB4oAgghIgJAAn0CQAJ9AkAgIUUEQEEAISEgKEEBcUUNDSAdIBWTIgggGSAUkyIElCAcIBSTIgUgGiAVkyIHlJMiCyALlCAFIBggE5MiCpQgGyATkyIFIASUkyIEIASUIAUgB5QgCCAKlJMiByAHlJKSIgVDAACAKF5FDQ0gAkEBcSECIAsgBZEiBZUhCiAHIAWVIQcgBCAFlSEFICJBAXFFDQEgCiERIAUhECAHIAMgF5MiBiANIBaTIgOUIAwgFpMiBCAOIBeTIguUkyIMIAyUIAQgEiAPkyIIlCAJIA+TIgQgA5STIgMgA5QgBCALlCAGIAiUkyIIIAiUkpIiBEMAAIAoXkUNAhogDCAEkSIElSERIAMgBJUhECAIIASVDAILQQAhISAiQQFxRQ0MIAMgF5MiCCANIBaTIgSUIAwgFpMiBSAOIBeTIgeUkyILIAuUIAUgEiAPkyIKlCAJIA+TIgUgBJSTIgQgBJQgBSAHlCAIIAqUkyIHIAeUkpIiBUMAAIAoXkUNDCAeQQhqIAEgIEEBayAfEJ0CIAsgBZEiBZUhCiAHIAWVIQcgBCAFlSEFIB4oAjBBAXFFDQIgCiERIAchDyAFIB4qAlAgHioCOCIIkyIMIB4qAkAgHioCNCIEkyIGlCAeKgJEIAiTIgMgHioCTCAEkyILlJMiCSAJlCAeKgJUIB4qAjwiBJMiCCADlCAeKgJIIASTIgQgDJSTIgMgA5QgBCALlCAIIAaUkyIIIAiUkpIiBEMAAIAoXkUNAxogCSAEkSIElSERIAggBJUhDyADIASVDAMLIAogBUMAAIA/QwAAgL8gAhsiBCAKlJIiC5QgByAFQwAAAICUIAQgB5STIgiUkyIQIAcgCkMAAAAAlCAHkyIElCAFIAuUkyILIAuUIBAgEJQgBSAIlCAKIASUkyIIIAiUkpKRIgSVIRAgCyAElSERIAggBJULIQ8gHkEIaiABICBBAWogHxCdAgJ9IB4oAghBAXEEQCAKIQsgByEIIAUgHioCKCAeKgIQIgaTIg0gHioCGCAeKgIMIgOTIg6UIB4qAhwgBpMiCSAeKgIkIAOTIgyUkyISIBKUIB4qAiwgHioCFCIDkyIGIAmUIB4qAiAgA5MiAyANlJMiCSAJlCADIAyUIAYgDpSTIgYgBpSSkiIDQwAAgCheRQ0BGiASIAORIgSVIQsgBiAElSEIIAkgBJUMAQsgByAHIApDAAAAAJQiBJMiCJQgBSAEIAWTIgSUkyILIAsgC5QgCiAElCAHIAVDAAAAAJQgB0MAAAAAlJMiBJSTIgMgA5QgBSAElCAKIAiUkyIIIAiUkpKRIgSVIQsgCCAElSEIIAMgBJULIQQgAkUNAgwGCyAHIAeMIApDAAAAgJQiBJMiCJQgBSAFIASSIgSUkyILIAsgC5QgCiAElCAHIAdDAAAAAJQgBUMAAACAlJIiBJSTIgsgC5QgBSAElCAKIAiUkyIIIAiUkpKRIgSVIREgCCAElSEPIAsgBJULIRAgAkEBcSECAn0gKEEBcQRAIAohCyAHIQggBSAdIBWTIg4gGSAUkyIJlCAcIBSTIgMgGiAVkyIMlJMiDSANlCADIBggE5MiBpQgGyATkyIDIAmUkyIJIAmUIAMgDJQgDiAGlJMiBiAGlJKSIgNDAACAKF5FDQEaIA0gA5EiBJUhCyAGIASVIQggCSAElQwBCyAHIAcgCkMAAAAAlJMiC5QgBUMAAIC/QwAAgD8gAhsiCCAKlCAFkyIElJMiAyADIAOUIAogBJQgByAFQwAAAACUIAggB5STIgSUkyIDIAOUIAUgBJQgCiALlJMiCCAIlJKSkSIElSELIAggBJUhCCADIASVCyEEIAJFDQQLAkAgHyABKAIQQQJrTw0AIB5BCGoiAiABICAgH0EBaiIBEJ0CIAEgJU8NAyAeQTBqIAIgJyABICRsaiAgai0AAEEBcSICGygCAEEBcUUNACAeQTRqIB5BDGogAhsiAf0AAgAiKf0fACEGICn9HwMgBpMiDiAB/QACECIq/R8DICn9HwEiA5MiCZQgKv0fACADkyIDICr9HwIgBpMiDJSTIg0gDZQgAyAeQdQAaiAeQSxqIAIbKgIAICn9HwIiA5MiBpQgKv0fASADkyIDIAmUkyIJIAmUIAMgDJQgDiAGlJMiBiAGlJKSIgNDAACAKF5FDQUgDSADkSIDlSEMIAYgA5UhBiAJIAOVDAcLIAcgB0MAAAAAlCAKQwAAAACUkyIMlCAFIAogBUMAAAAAlCIGkyIDlJMiCSAJIAmUIAogA5QgByAGIAeTIgOUkyIJIAmUIAUgA5QgCiAMlJMiBiAGlJKSkSIDlSEMIAYgA5UhBiAJIAOVDAYLQbzJwwAQkg0ACyAeQQA2AhggHkEBNgIMIB5B/NzCADYCCCAeQgQ3AhAgHkEIakGMysMAELkNAAsgHkEANgJoIB5BATYCXCAeQfzcwgA2AlggHkIENwJgIB5B2ABqQZzKwwAQuQ0ACyAjICZLDQEgHkEIaiICIAEgICAfQQFrIgEQnQIgASAlSQRAIAIgHkEwaiAnIAEgJGxqICBqLQAAQQFxIgIbKAIAQQFxRQ0CIB5BDGogHkE0aiACGyIB/QACACIp/R8AIQYgKf0fAyAGkyIOIAH9AAIQIir9HwMgKf0fASIDkyIJlCAq/R8AIAOTIgMgKv0fAiAGkyIMlJMiDSANlCADIB5BLGogHkHUAGogAhsqAgAgKf0fAiIDkyIGlCAq/R8BIAOTIgMgCZSTIgkgCZQgAyAMlCAOIAaUkyIGIAaUkpIiA0MAAIAoXkUNASANIAORIgOVIQwgBiADlSEGIAkgA5UMAwsgHkEANgJoIB5BATYCXCAeQfzcwgA2AlggHkIENwJgIB5B2ABqQazKwwAQuQ0ACyAKIQwgByEGIAUMAQsgByAKQwAAAACUIAdDAAAAgJSSIgyUIAUgCowgBUMAAACAlCIGkyIDlJMiCSAJIAmUIAogA5QgByAHIAaSIgOUkyIJIAmUIAUgA5QgCiAMlJMiBiAGlJKSkSIDlSEMIAYgA5UhBiAJIAOVCyEDIAAgCjgCDCAAIAc4AgggACAFOAIEIAogDJJDAAAAP5QiDCAMlCAHIAaSQwAAAD+UIgYgBpQgBSADkkMAAAA/lCIDIAOUkpKRIQkgACAMIAmVOAIwIAAgBiAJlTgCLCAAIAMgCZU4AiggCyAKkkMAAAA/lCILIAuUIAggB5JDAAAAP5QiCCAIlCAEIAWSQwAAAD+UIgQgBJSSkpEhAyAAIAsgA5U4AiQgACAIIAOVOAIgIAAgBCADlTgCHCARIAqSQwAAAD+UIgQgBJQgDyAHkkMAAAA/lCIKIAqUIBAgBZJDAAAAP5QiBSAFlJKSkSEHIAAgBCAHlTgCGCAAIAogB5U4AhQgACAFIAeVOAIQQQEhIQsgACAhNgIAIB5B8ABqJAALnBoDDH8DfgF7IwBBgAZrIgskAAJAAkAgAUEhSQ0AA0AgA0UEQCAAIQMgAUEBdiABaiIKBEADQAJAAn8gCkEBayIKIAFPBEAgCiABawwBCyAD/QADACEUIAMgAyAKQQR0aiIA/QADAP0LAwAgACAU/QsDAEEACyIAQQF0IgRBAXIiAiABIAogASAKSRsiB08NAANAIARBAmoiBCAHSQRAIAMgAkEEdGoiBSkDACESIAMgBEEEdGoiBCkDACERIAIgBUEIaigCACAEQQhqKAIASSARIBJWIBEgElEbaiECCyADIABBBHRqIglBCGoiBigCACIFIAMgAkEEdGoiCEEIaiIEKAIAIgBJIAkpAwAiEiAIKQMAIhFUIBEgElEbQQFHDQEgCCASPgIAIAkgET4CACAJIBFCIIg+AgQgCCASQiCIPgIEIAYgADYCACAEIAU2AgAgCSgCDCEAIAkgCCgCDDYCDCAIIAA2AgwgByACIgBBAXQiBEEBciICSw0ACwsgCg0ACwsMAwsgACABQQN2IgVB8ABsaiEKIAAgBUEGdGohCSADQQFrIQMCfyABQcAATwRAIAAgCSAKIAUQ5wcMAQsgAEEIaigCACIGIAlBCGooAgAiB0kgACkDACITIAkpAwAiElQgEiATURshCCAAIAggBiAKQQhqKAIAIgZJIAopAwAiESATViARIBNRG0cNABogCiAJIAggBiAHSyARIBJWIBEgElEbcxsLIABrIQUCQAJ/AkAgAkUNACAAIAVqIgYpAwAhEiACQQhqKAIAIAZBCGooAgBJIAIpAwAiESASVCARIBJRGw0AIAsgAP0AAwD9CwMAIAAgBv0AAwD9CwMAIAYgC/0AAwD9CwMAIABBCGooAgAhDCAAKQMAIRMgACgCGCEOIAApAxAhEkEAIQcgAEEQaiIPIQYgAEEgaiIFIAAgAUEEdGoiDUEQayIKSQRAIAAhBQNAIAVBEGogDyAHQQR0aiII/QADAP0LAwAgBUEoaigCACEGIAVBIGoiAikDACERIAggAv0AAwD9CwMAIAIgDyAHIAYgDE0gESATWCARIBNRG2oiCUEEdGoiCP0AAwD9CwMAIAVBOGooAgAhByAFQTBqIgYpAwAhESAIIAb9AAMA/QsDACAJIAcgDE0gESATWCARIBNRG2ohByAFQUBrIQYgAiEFIAYgCkkNAAsgBUEQaiEGIAVBIGohBQsgBSANRwRAA0AgBUEIaigCACEIIAYgDyAHQQR0aiIC/QADAP0LAwAgBSkDACERIAIgBf0AAwD9CwMAIAcgCCAMTSARIBNYIBEgE1EbaiEHIA0gBSIGQRBqIgVHDQALIAVBEGshBgsgBiAPIAdBBHRqIgL9AAMA/QsDACACQQhqIA42AgAgAiASNwMAIAcgDCAOTyASIBNYIBIgE1EbaiIFIAFPDQIgCyAA/QADAP0LAwAgACAAIAVBBHRqIgL9AAMA/QsDACACIAv9AAMA/QsDACABIAVBAWoiBWshAUEAIQIgACAFQQR0agwBCyALIAD9AAMA/QsDACAAIAAgBWoiBf0AAwD9CwMAIAUgC/0AAwD9CwMAIABBCGooAgAhECAAKQMAIRMgACgCGCEPIAApAxAhEkEAIQcgAEEQaiIMIQYgAEEgaiIFIAAgAUEEdGoiDkEQayINSQRAIAAhBQNAIAVBEGogDCAHQQR0aiIJ/QADAP0LAwAgBUEoaigCACEIIAVBIGoiBikDACERIAkgBv0AAwD9CwMAIAYgDCAHIAggEEkgESATVCARIBNRG2oiCkEEdGoiCf0AAwD9CwMAIAVBOGooAgAhCCAFQTBqIgcpAwAhESAJIAf9AAMA/QsDACAKIAggEEkgESATVCARIBNRG2ohByAFQUBrIQggBiEFIAggDUkNAAsgBUEQaiEGIAVBIGohBQsgBSAORwRAA0AgBUEIaigCACEIIAYgDCAHQQR0aiIG/QADAP0LAwAgBSkDACERIAYgBf0AAwD9CwMAIAcgCCAQSSARIBNUIBEgE1EbaiEHIA4gBSIGQRBqIgVHDQALIAVBEGshBgsgBiAMIAdBBHRqIgX9AAMA/QsDACAFQQhqIA82AgAgBSASNwMAIAcgDyAQSSASIBNUIBIgE1EbaiIGIAFPDQEgCyAA/QADAP0LAwAgACAAIAZBBHRqIgX9AAMA/QsDACAFIAv9AAMA/QsDACAAIAYgAiADIAQQUyABIAZBf3NqIQEgBSICQRBqCyEAIAFBIU8NAQwCCwsACyABQQJJDQAgAUEBdiEMAn8gAUEPTQRAIAFBB0sEQCAAQSBBMCAAQThqKAIAIABBKGooAgBJIAApAzAiEiAAKQMgIhFUIBEgElEbIgMbaiEKIAAgAEEYaigCACAAQQhqKAIASSAAKQMQIhIgACkDACIRVCARIBJRGyICQQFzQQR0aiENIABBMEEgIAMbaiIJKQMAIRIgACACQQR0aiIIKQMAIREgCiANIAkgCUEIaigCACAIQQhqKAIASSARIBJWIBEgElEbIgUbIApBCGooAgAgDUEIaigCAEkgCikDACISIA0pAwAiEVQgESASURsiBBsiB0EIaigCACEDIAggCSANIAQbIAUbIgZBCGooAgAhAiAHKQMAIRIgBikDACERIAsgCSAIIAUb/QADAP0LAwAgCyAHIAYgAiADSyARIBJWIBEgElEbIgIb/QADAP0LAxAgCyAGIAcgAhv9AAMA/QsDICALIA0gCiAEG/0AAwD9CwMwIAxBBHQiBCAAaiIFKQMwIRIgBUEgQTAgBUE4aigCACAFQShqKAIASSAFKQMgIhEgElYgESASURsiAxtqIQ0gBSAFQRhqKAIAIAVBCGooAgBJIAUpAxAiEiAFKQMAIhFUIBEgElEbIgJBAXNBBHRqIQ4gBUEwQSAgAxtqIgopAwAhEiAFIAJBBHRqIgkpAwAhESANIA4gCiAKQQhqKAIAIAlBCGooAgBJIBEgElYgESASURsiBhsgDUEIaigCACAOQQhqKAIASSANKQMAIhIgDikDACIRVCARIBJRGyIFGyIIQQhqKAIAIQMgCSAKIA4gBRsgBhsiB0EIaigCACECIAgpAwAhEiAHKQMAIREgBCALaiIEIAogCSAGG/0AAwD9CwMAIAQgCCAHIAIgA0sgESASViARIBJRGyICG/0AAwD9CwMQIAQgByAIIAIb/QADAP0LAyAgBCAOIA0gBRv9AAMA/QsDMEEEDAILIAsgAP0AAwD9CwMAIAxBBHQiAiALaiAAIAJq/QADAP0LAwBBAQwBCyAAIAsgCyABQQR0aiIDELMBIAxBBHQiAiAAaiACIAtqIANBgAFqELMBQQgLIgZBAWohAiABIAxrIQ0gBiAMSQRAIAZBBHQhAyACIQUgBiEHA0AgBSEEIAdBBHQiBSALaiIHIAAgBWoiBSkDACISNwMAIAdBCGogBUEIaikDACIRNwMAIBGnIgggB0EIaygCAEkgB0EQaykDACIRIBJWIBEgElEbQQFGBEAgAyEFAn8DQCAFIAtqIgkgCUEQa/0AAwD9CwMAIAsiByAFQRBGDQEaIAVBEGshBSAIIAlBGGsoAgBJIAlBIGspAwAiESASViARIBJRGw0ACyAFIAdqCyIHIAg2AgggByASNwMACyADQRBqIQMgBCAMSSIIIARqIQUgBCEHIAgNAAsLIAxBBHQiBCALaiEDIAYgDUkEQCAAIARqIQkgBkEEdCEPQRAhCCADIQQDQCACIQUgBkEEdCICIANqIgYgAiAJaiICKQMAIhI3AwAgBkEIaiACQQhqKQMAIhE3AwAgEaciCiAGQQhrKAIASSAGQRBrKQMAIhEgElYgESASURtBAUYEQCAIIQYgBCEHAn8DQCAHIA9qIg4gDkEQa/0AAwD9CwMAIAMgBiAPRg0BGiAGQRBqIQYgB0EQayEHIAogDkEYaygCAEkgDkEgaykDACIRIBJWIBEgElEbDQALIAcgD2oLIgIgCjYCCCACIBI3AwALIAhBEGshCCAEQRBqIQQgBSANSSIHIAVqIQIgBSEGIAcNAAsLIANBEGshByABQQR0QRBrIgQgAGohAiAEIAtqIQYgCyEFA0AgACADIAUgA0EIaigCACAFQQhqKAIASSADKQMAIhIgBSkDACIRVCARIBJRGyIIG/0AAwD9CwMAIAIgByAGIAZBCGooAgAgB0EIaigCAEkgBikDACISIAcpAwAiEVQgESASURsiBBv9AAMA/QsDACADIAhBBHRqIQMgBSAIQQFzQQR0aiEFIAcgBEEEdCIEayEHIAQgBmpBEGshBiACQRBrIQIgAEEQaiEAIAxBAWsiDA0ACyAHQRBqIQIgAUEBcQRAIAAgBSADIAIgBUsiABv9AAMA/QsDACADIAIgBU1BBHRqIQMgBSAAQQR0aiEFCyACIAVGIAMgBkEQakZxDQAQlA0ACyALQYAGaiQAC/kWBCF/B30LewJ+IwBBIGsiBCQAQQIhGQJAAkACfyAAKAKkByIOQX9GBEBBAiEaQQAMAQtBASEaQQAgAC0AtAdBAXENABogAigCCCIFIA5NDQEgAigCBCAOQQV0aiIFKQMYITcgBSoCFCEnIAUqAhAhKCAF/QAEACEwQQAhGkEBCyEgAkACQCAAKAKoByIPQX9GDQAgAC0AtAdBAnEEQEEBIRkMAQsgAigCCCIFIA9NDQEgAigCBCAPQQV0aiIFKQMYITggBSoCFCEpIAUqAhAhKiAF/QAEACExQQAhGUEBIR4LIAAtALUHIgZBBUkEQCAAKALoBiIJIAAoAuQGIgdqIhhBBmwhHyADKAIMIREgAygCBCETIAEoAgwhEiABKAIEIQ0gACgC4AYhDAJAAkACQCAGRQRAIAAqAuwGISYgAP1dAvAGISwMAQsgACAGQcwAbGohHCANIAxBAnQiASAHQQJ0amohBSANIAdBA3QgCUECdGogAWpqIQggGEEYbCEbIAlBfHEhFCAHQXxxIRUgAP1dAuwGIiwgAP1dAoQH/eYBIS0gEyAPQQJ0aiEWIBMgDkECdGohFyAA/V0CkAcgLP3hAf3mASEyIAAqAvQGIib9EyAs/Q0UFRYXBAUGBwABAgMAAQIDISwgB0EBdCIdIAlqIAlqISEgJiAAKgKMB5T9EyEuIAAqApgHICaMlP0TITQgACoC7AYhJiAJIA9qIBFNISIgCUEESSEjIAcgDmogEU0hJCAMIRAgACEKA0AgCioCQCElAkACQAJAIBpBAWsOAgECAAsgJyAlIAoqAiiUkiEnICggJSAKKgIklJIhKCAwICX9EyAtIApBIGogLv1WAgAD/Q0AAQIDBAUGBxgZGhscHR4f/eYB/eQBITAMAQsgECAdaiASSw0EICRFDQggB0UNAEEAIQMgB0EETwRAICX9EyEzIBUhCyAFIQEgFyEDA0AgAyAzIAH9AAIA/eYBIAP9AAIA/eQB/QsCACABQRBqIQEgA0EQaiEDIAtBBGsiCw0ACyAHIBUiA0YNAQsgByADayEBIANBAnQhAwNAIAMgF2oiCyAlIAMgBWoqAgCUIAsqAgCSOAIAIANBBGohAyABQQFrIgENAAsLAkACQAJAIBlBAWsOAgECAAsgKSAlIAoqAjSUkiEpICogJSAKKgIwlJIhKiAxICX9EyAyIApBLGogNP1WAgAD/Q0AAQIDBAUGBxgZGhscHR4f/eYB/eQBITEMAQsgECAhaiASSw0IICJFDQggCUUNAEEAIQMgI0UEQCAl/RMhMyAUIQsgCCEBIBYhAwNAIAMgMyAB/QACAP3mASAD/QACAP3kAf0LAgAgAUEQaiEBIANBEGohAyALQQRrIgsNAAsgCSAUIgNGDQELIAkgA2shASADQQJ0IQMDQCADIBZqIgsgJSADIAhqKgIAlCALKgIAkjgCACADQQRqIQMgAUEBayIBDQALCyAIIBtqIQggBSAbaiEFIBAgH2ohECAcIApBzABqIgpHDQALCyAGBEAgBkGMAWwgAEGwAmoiBmohGyANIAxBAnQiASAHQRhsIAlBFGxqamohFiANIAlBDGwgB0EEdGogAWpqIQogDSAHQRRsIAlBBHRqIAFqaiEQIA0gB0EMbCAJQQN0aiABamohFyAYQRhsIQ0gCUF8cSEBIAdBfHEhCyAYQQF0IgMgDGohDCAA/V0CkAciMiAsIAAqAoAHIiX9EyAA/V0C+AYiLf0NAAECAxAREhMAAQIDAAECA/3mASAsIC39DQQFBgcAAQIDAAECAwABAgMgJv0gASAAQfwGav1dAgD95gH95QEiLv3hAf3mASE0IDIgLf3hAf3mASEyIC4gAP1dAoQHIi795gEhMyAtIC795gEhLiATIA9BAnRqIRQgAyAHaiAHaiEYIBMgDkECdGohFSAHQQF0IhwgCWogCWoiHSADaiETIAAqApgHIisgJiAt/R8BlCAsIC395gH9HwCTIiaMlP0TISwgKyAljJT9EyEtICYgACoCjAciJpT9EyE1ICUgJpT9EyE2IAkgD2ogEU0hDyAHIA5qIBFNIQ4DQCAGKgJwISUCQAJAAkACQCAaQQFrDgIBAAILIAYqAnQhJgwCCwJAIBIgDCAcak8EQCAORQ0BAkAgBwRAQQAhAwJAIAdBBEkiEUUEQCAl/RMhLyALIQggFyEFIBUhAwNAIAMgLyAF/QACAP3mASAD/QACAP3kAf0LAgAgBUEQaiEFIANBEGohAyAIQQRrIggNAAsgByALIgNGDQELIAcgA2shBSADQQJ0IQMDQCADIBVqIgggJSADIBdqKgIAlCAIKgIAkjgCACADQQRqIQMgBUEBayIFDQALCyAMIBhqIBJNDQEMDQsgDCAYaiASSw0MIAYqAnQhJgwECyAGKgJ0ISZBACEDIBFFBEAgJv0TIS8gCyEIIBAhBSAVIQMDQCADIC8gBf0AAgD95gEgA/0AAgD95AH9CwIAIAVBEGohBSADQRBqIQMgCEEEayIIDQALIAcgCyIDRg0ECyAHIANrIQUgA0ECdCEDA0AgAyAVaiIIICYgAyAQaioCAJQgCCoCAJI4AgAgA0EEaiEDIAVBAWsiBQ0ACwwDCwwKCwwJCyAnICUgBioCOJSSIAYqAnQiJiAGKgJElJIhJyAoICUgBioCNJSSICYgBioCQJSSISggMCAl/RMgLiAGQTBqIDb9VgIAA/0NAAECAwQFBgcYGRobHB0eH/3mAf3kASAm/RMgMyAGQTxqIDX9VgIAA/0NAAECAwQFBgcYGRobHB0eH/3mAf3kASEwCwJAAkACQCAZQQFrDgIAAgELAkAgEiAMIB1qTwRAIA9FDQECQCAJBEBBACEDAkAgCUEESSIRRQRAICX9EyEvIAEhCCAKIQUgFCEDA0AgAyAvIAX9AAIA/eYBIAP9AAIA/eQB/QsCACAFQRBqIQUgA0EQaiEDIAhBBGsiCA0ACyAJIAEiA0YNAQsgCSADayEFIANBAnQhAwNAIAMgFGoiCCAlIAMgCmoqAgCUIAgqAgCSOAIAIANBBGohAyAFQQFrIgUNAAsLIAwgE2ogEksNAUEAIQMgEUUEQCAm/RMhLyABIQggFiEFIBQhAwNAIAMgLyAF/QACAP3mASAD/QACAP3kAf0LAgAgBUEQaiEFIANBEGohAyAIQQRrIggNAAsgCSABIgNGDQYLIAkgA2shBSADQQJ0IQMDQCADIBRqIgggJiADIBZqKgIAlCAIKgIAkjgCACADQQRqIQMgBUEBayIFDQALDAULIAwgE2ogEk0NBAsMCwsMCgsMCQsgKSAlIAYqAlCUkiAmIAYqAlyUkiEpICogJSAGKgJMlJIgJiAGKgJYlJIhKiAxICX9EyAyIAZByABqIC39VgIAA/0NAAECAwQFBgcYGRobHB0eH/3mAf3kASAm/RMgNCAGQdQAaiAs/VYCAAP9DQABAgMEBQYHGBkaGxwdHh/95gH95AEhMQsgDSAWaiEWIAogDWohCiANIBBqIRAgDSAXaiEXIAwgH2ohDCAbIAZBjAFqIgZHDQALCwJAICAEQCAAKAKkByIBIAIoAggiA08NASACKAIEIAFBBXRqIgEgNzcDGCABICc4AhQgASAoOAIQIAEgMP0LBAALAkAgHgRAIAAoAqgHIgAgAigCCCIBTw0BIAIoAgQgAEEFdGoiACA4NwMYIAAgKTgCFCAAICo4AhAgACAx/QsEAAsgBEEgaiQADwsgACABQdilwgAQhQsACyABIANByKXCABCFCwALAAsMAwsgBkEEQbilwgAQ8A4ACyAPIAVBqKXCABCFCwALIA4gBUGYpcIAEIULAAsgBEEANgIYIARBATYCDCAEQbD9wQA2AgggBEIENwIQIARBCGpBuP3BABC5DQAL8hgCCX8BfiMAQSBrIgYkACAAKAIEIQICQAJAAkACQAJAAkACQAJAIAAoAgBBAWsOAgECAAsgAiACKAKAAiIBQQFrNgKAAiABQQFHDQUgAiACKAJAIgEgAigCyAEiBHI2AkAgASAEcUUEQCACLQCgASEBIAJBAToAoAEgBiABOgAHIAFBAUYNBwJAIAIoAqwBIgFFDQAgAigCqAEiBSEDIAFBDGwiB0EMayIIQQxuIgFBB3FBB0cEQEEAIAFBAWpBB3FrIQEDQCADKAIAIgkoAgwhBCAJIARBAiAEGzYCDCADQQxqIQMgAUEBaiIBDQALCyAIQdQASQ0AIAUgB2ohBANAIAMoAgAiBSgCDCEBIAUgAUECIAEbNgIMIANBDGooAgAiBSgCDCEBIAUgAUECIAEbNgIMIANBGGooAgAiBSgCDCEBIAUgAUECIAEbNgIMIANBJGooAgAiBSgCDCEBIAUgAUECIAEbNgIMIANBMGooAgAiBSgCDCEBIAUgAUECIAEbNgIMIANBPGooAgAiBSgCDCEBIAUgAUECIAEbNgIMIANByABqKAIAIgUoAgwhASAFIAFBAiABGzYCDCADQdQAaigCACIFKAIMIQEgBSABQQIgARs2AgwgBCADQeAAaiIDRw0ACwsgAigCuAEhBEEAIQEgAkEANgK4ASAEBEAgAigCtAEhAyAEQQxsIQQDQCAGQQhqIghBCGogA0EIaigCADYCACAGIAMpAgAiCjcDCCAKpyIFKAIMIQcgBSAHIAYoAgwgBxs2AgwgBSAFKAIAIgVBAWs2AgAgBUEBRgRAIAgQ1wsLIANBDGohAyAEQQxrIgQNAAsLIAIoAqwBRQRAIAIoArgBRSEBCyACQQA6AKABIAIgAToAvAELIAItAIgCIQEgAkEBOgCIAiABRQ0FIAIoAtABIgEEQCACKALMASABQRxsQQQQ6A4LIAJBhAFqEKQIIAJBpAFqEKQIIAJBwAJBwAAQ6A4MBQsgAiACKALAASIBQQFrNgLAASABQQFHDQQgAiACKAJAIgFBAXI2AkAgAUEBcUUEQCACLQCAASEBIAJBAToAgAEgBiABOgAHIAFBAUYNBgJAIAIoAowBIgFFDQAgAigCiAEiBSEDIAFBDGwiB0EMayIIQQxuIgFBB3FBB0cEQEEAIAFBAWpBB3FrIQEDQCADKAIAIgkoAgwhBCAJIARBAiAEGzYCDCADQQxqIQMgAUEBaiIBDQALCyAIQdQASQ0AIAUgB2ohBANAIAMoAgAiBSgCDCEBIAUgAUECIAEbNgIMIANBDGooAgAiBSgCDCEBIAUgAUECIAEbNgIMIANBGGooAgAiBSgCDCEBIAUgAUECIAEbNgIMIANBJGooAgAiBSgCDCEBIAUgAUECIAEbNgIMIANBMGooAgAiBSgCDCEBIAUgAUECIAEbNgIMIANBPGooAgAiBSgCDCEBIAUgAUECIAEbNgIMIANByABqKAIAIgUoAgwhASAFIAFBAiABGzYCDCADQdQAaigCACIFKAIMIQEgBSABQQIgARs2AgwgBCADQeAAaiIDRw0ACwsgAigCmAEhBEEAIQEgAkEANgKYASAEBEAgAigClAEhAyAEQQxsIQQDQCAGQQhqIghBCGogA0EIaigCADYCACAGIAMpAgAiCjcDCCAKpyIFKAIMIQcgBSAHIAYoAgwgBxs2AgwgBSAFKAIAIgVBAWs2AgAgBUEBRgRAIAgQ1wsLIANBDGohAyAEQQxrIgQNAAsLIAIoAowBRQRAIAIoApgBRSEBCyACQQA6AIABIAIgAToAnAELIAItAMgBIQEgAkEBOgDIASABRQ0EIAIoAgQhASACKAIAQX5xIgMgAigCQEF+cSIFRwRAA0AgA0E+cUE+RgRAIAEoAgAhBCABQegGQQQQ6A4gBCEBCyAFIANBAmoiA0cNAAsLIAENAgwDCyACIAIoAjgiAUEBazYCOCABQQFHDQMgAhDnASACLQBAIQEgAkEBOgBAIAFFDQMgAkEEahCkCCACQRxqEKQIIAJBxABBBBDoDgwDCwALIAFB6AZBBBDoDgsgAkGEAWoQpAggAkGAAkHAABDoDgsgACgCDCEEAkACQAJAAkACQAJAAkAgACgCCEEBaw4CAQIACyAEIAQoAoACIgBBAWs2AoACIABBAUcNBSAEIAQoAkAiACAEKALIASIBcjYCQCAAIAFxRQRAIAQtAKABIQAgBEEBOgCgASAGIAA6AAcgAEEBRg0HAkAgBCgCrAEiAEUNACAEKAKoASICIQMgAEEMbCIFQQxrIgdBDG4iAEEHcUEHRwRAQQAgAEEBakEHcWshAQNAIAMoAgAiCCgCDCEAIAggAEECIAAbNgIMIANBDGohAyABQQFqIgENAAsLIAdB1ABJDQAgAiAFaiEBA0AgAygCACICKAIMIQAgAiAAQQIgABs2AgwgA0EMaigCACICKAIMIQAgAiAAQQIgABs2AgwgA0EYaigCACICKAIMIQAgAiAAQQIgABs2AgwgA0EkaigCACICKAIMIQAgAiAAQQIgABs2AgwgA0EwaigCACICKAIMIQAgAiAAQQIgABs2AgwgA0E8aigCACICKAIMIQAgAiAAQQIgABs2AgwgA0HIAGooAgAiAigCDCEAIAIgAEECIAAbNgIMIANB1ABqKAIAIgIoAgwhACACIABBAiAAGzYCDCABIANB4ABqIgNHDQALCyAEKAK4ASEAQQAhASAEQQA2ArgBIAAEQCAEKAK0ASEDIABBDGwhAANAIAZBCGoiB0EIaiADQQhqKAIANgIAIAYgAykCACIKNwMIIAqnIgIoAgwhBSACIAUgBigCDCAFGzYCDCACIAIoAgAiAkEBazYCACACQQFGBEAgBxDXCwsgA0EMaiEDIABBDGsiAA0ACwsgBCgCrAFFBEAgBCgCuAFFIQELIARBADoAoAEgBCABOgC8AQsgBC0AiAIhACAEQQE6AIgCIABFDQUgBCgC0AEiAARAIAQoAswBIABBNGxBBBDoDgsgBEGEAWoQpAggBEGkAWoQpAggBEHAAkHAABDoDgwFCyAEIAQoAsABIgBBAWs2AsABIABBAUcNBCAEIAQoAkAiAEEBcjYCQCAAQQFxRQRAIAQtAIABIQAgBEEBOgCAASAGIAA6AAcgAEEBRg0GAkAgBCgCjAEiAEUNACAEKAKIASICIQMgAEEMbCIFQQxrIgdBDG4iAEEHcUEHRwRAQQAgAEEBakEHcWshAQNAIAMoAgAiCCgCDCEAIAggAEECIAAbNgIMIANBDGohAyABQQFqIgENAAsLIAdB1ABJDQAgAiAFaiEBA0AgAygCACICKAIMIQAgAiAAQQIgABs2AgwgA0EMaigCACICKAIMIQAgAiAAQQIgABs2AgwgA0EYaigCACICKAIMIQAgAiAAQQIgABs2AgwgA0EkaigCACICKAIMIQAgAiAAQQIgABs2AgwgA0EwaigCACICKAIMIQAgAiAAQQIgABs2AgwgA0E8aigCACICKAIMIQAgAiAAQQIgABs2AgwgA0HIAGooAgAiAigCDCEAIAIgAEECIAAbNgIMIANB1ABqKAIAIgIoAgwhACACIABBAiAAGzYCDCABIANB4ABqIgNHDQALCyAEKAKYASEAQQAhASAEQQA2ApgBIAAEQCAEKAKUASEDIABBDGwhAANAIAZBCGoiB0EIaiADQQhqKAIANgIAIAYgAykCACIKNwMIIAqnIgIoAgwhBSACIAUgBigCDCAFGzYCDCACIAIoAgAiAkEBazYCACACQQFGBEAgBxDXCwsgA0EMaiEDIABBDGsiAA0ACwsgBCgCjAFFBEAgBCgCmAFFIQELIARBADoAgAEgBCABOgCcAQsgBC0AyAEhACAEQQE6AMgBIABFDQQgBCgCBCEBIAQoAgBBfnEiAyAEKAJAQX5xIgJHBEADQCADQT5xQT5GBEAgASgCACEAIAFB0AxBBBDoDiAAIQELIAIgA0ECaiIDRw0ACwsgAQ0CDAMLIAQgBCgCOCIAQQFrNgI4IABBAUcNAyAEEOcBIAQtAEAhACAEQQE6AEAgAEUNAyAEQQRqEKQIIARBHGoQpAggBEHEAEEEEOgODAMLAAsgAUHQDEEEEOgOCyAEQYQBahCkCCAEQYACQcAAEOgOCyAGQSBqJAAPCyAGQgA3AhQgBkKBgICAwAA3AgwgBkGsusEANgIIIAZBB2ogBkEIakG0usEAEPsMAAuhIAMUfxd7An4jAEHgAmsiAiQAIAAoAugcIQMgACgC7BwhBCAAKALgHCEFIAEoAgQhByABKAIIIQggACgC5BwhASAC/QwAAAAAAAAAAAAAAAAAAAAA/QsEwAIgAiAHIAFBBXRqIAJBwAJqIgYgASAISSIJG/0ABAAiHP0LBJACIAIgByAFQQV0aiIKIAYgBSAISSIFG/0ABAAiGv0LBIACIARBBXQhBiADQQV0IQsgBQR7IAr9AAQQBf0MAAAAAAAAAAAAAAAAAAAAAAshFiAEIAhJIQUgBiAHaiEKIAMgCEkhBiAHIAtqIQsgCQRAIAcgAUEFdGoiASkDGCEtIAEpAxAhLgsgCiACQcACaiIBIAUbIQkgCyABIAYbIQEgBgRAIAcgA0EFdGr9AAQQIRgLIAn9AAQAIR0gAf0ABAAhHiAC/QACjAIhGSAC/QADiAIhICAC/QAChAIhGyAFBEAgByAEQQV0av0ABBAhFwsgAiAZIBz9DQABAgMcHR4fAAECAwABAgMgHv0NAAECAwQFBgccHR4fAAECAyAd/Q0AAQIDBAUGBwgJCgscHR4fIiL9CwQwIAIgICAc/Q0AAQIDGBkaGwABAgMAAQIDIB79DQABAgMEBQYHGBkaGwABAgMgHf0NAAECAwQFBgcICQoLGBkaGyIZ/QsEICACIBsgHP0NAAECAxQVFhcAAQIDAAECAyAe/Q0AAQIDBAUGBxQVFhcAAQIDIB39DQABAgMEBQYHCAkKCxQVFhciIP0LBBAgAiAaIBz9DQABAgMQERITAAECAwABAgMgHv0NAAECAwQFBgcQERITAAECAyAd/Q0AAQIDBAUGBwgJCgsQERITIh39CwQAIAIgFv0LBIABIAIgLjcDkAEgAiAWIC6n/RwBIBj9DQABAgMEBQYHEBESEwABAgMgF/0NAAECAwQFBgcICQoLEBESEyIe/QsEQCACIAL9AAKEASAuQiCIp/0cASAY/Q0AAQIDBAUGBxQVFhcAAQIDIBf9DQABAgMEBQYHCAkKCxQVFhciHP0LBFAgAiAtNwOYASACIAL9AAOIASAtp/0cASAY/Q0AAQIDBAUGBxgZGhsAAQIDIBf9DQABAgMEBQYHCAkKCxgZGhv9CwRgIAIgAv0AAowBIC1CIIin/RwBIBj9DQABAgMEBQYHHB0eHwABAgMgF/0NAAECAwQFBgcICQoLHB0eH/0LBHAgACgC+BwhASAAKAL8HCEDIAAoAvAcIQUgACgC9BwhBCAC/QwAAAAAAAAAAAAAAAAAAAAA/QsEsAIgAiAHIARBBXRqIAJBsAJqIgYgBCAISSIJG/0ABAAiF/0LBNACIAIgByAFQQV0aiIKIAYgBSAISSIFG/0ABAAiJf0LBMACIANBBXQhBiABQQV0IQsgBQRAIAr9AAQQISELIAMgCEkhBSAGIAdqIQogASAISSEGIAcgC2ohC0IAIS5CACEtIAkEQCAHIARBBXRqIgQpAxghLSAEKQMQIS4LIAogAkGwAmoiBCAFGyEJIAsgBCAGGyEE/QwAAAAAAAAAAAAAAAAAAAAAIRYgBgRAIAcgAUEFdGr9AAQQIR8LIAn9AAQAIRogBP0ABAAhGyAC/QACzAIhGCAC/QADyAIhIyAC/QACxAIhJCAFBEAgByADQQV0av0ABBAhFgsgAiAYIBf9DQABAgMcHR4fAAECAwABAgMgG/0NAAECAwQFBgccHR4fAAECAyAa/Q0AAQIDBAUGBwgJCgscHR4fIhj9CwSwASACICMgF/0NAAECAxgZGhsAAQIDAAECAyAb/Q0AAQIDBAUGBxgZGhsAAQIDIBr9DQABAgMEBQYHCAkKCxgZGhsiI/0LBKABIAIgJCAX/Q0AAQIDFBUWFwABAgMAAQIDIBv9DQABAgMEBQYHFBUWFwABAgMgGv0NAAECAwQFBgcICQoLFBUWFyIk/QsEkAEgAiAlIBf9DQABAgMQERITAAECAwABAgMgG/0NAAECAwQFBgcQERITAAECAyAa/Q0AAQIDBAUGBwgJCgsQERITIhf9CwSAASACICH9CwSAAiACIC43A5ACIAIgISAup/0cASAf/Q0AAQIDBAUGBxAREhMAAQIDIBb9DQABAgMEBQYHCAkKCxAREhMiGv0LBMABIAIgAv0AAoQCIC5CIIin/RwBIB/9DQABAgMEBQYHFBUWFwABAgMgFv0NAAECAwQFBgcICQoLFBUWFyIb/QsE0AEgAiAtNwOYAiACIAL9AAOIAiAtp/0cASAf/Q0AAQIDBAUGBxgZGhsAAQIDIBb9DQABAgMEBQYHCAkKCxgZGhv9CwTgASACIAL9AAKMAiAtQiCIp/0cASAf/Q0AAQIDBAUGBxwdHh8AAQIDIBb9DQABAgMEBQYHCAkKCxwdHh/9CwTwAQJAIAAtAJAdIgFBBUkEQCABRQ0BIAFBsAJsIQUgAP0ABCAiHyAA/QAEgAH95gEhJyAA/QAEECIhIAD9AARw/eYBISggAP0ABAAiJSAA/QAEYP3mASEpIB8gAP0ABFD95gEhKiAhIAD9AARA/eYBISsgJSAA/QAEMP3mASEsQQAhBANAIAD9AASQAf0MAAAAAAAAAAAAAAAAAAAAAP0MAAAAAAAAAAAAAAAAAAAAACAAIARqIgNB4ANqIgb9AAQAIiYgA0GABGr9AAQAIANBwANq/QAEACAlIB395gEgISAg/eYB/eQBIB8gGf3mAf3kASAiIANBgAJq/QAEAP3mASAeIANBkAJq/QAEAP3mAf3kASAcIANBoAJq/QAEAP3mAf3kAf3kASAlIBf95gEgISAk/eYB/eQBIB8gI/3mAf3kAf3lASAYIANBsAJq/QAEAP3mASAaIANBwAJq/QAEAP3mAf3kASAbIANB0AJq/QAEAP3mAf3kAf3kAf3kAf3mAf3lASIWIBb9DAAAAAAAAAAAAAAAAAAAAAD9Q/1SIBYgFv1C/VL95gEhFiAGIBb9CwQAIBwgFiAm/eUBIhYgA0GAA2r9AAQA/eYB/eQBIRwgHiADQfACav0ABAAgFv3mAf3kASEeICIgA0HgAmr9AAQAIBb95gH95AEhIiAZICogFv3mAf3kASEZICAgKyAW/eYB/eQBISAgHSAsIBb95gH95AEhHSACQYACav0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgIyAnIAL9AASAAiAW/eUBIib95gH95AEhIyAkICggJv3mAf3kASEkIBcgKSAm/eYB/eQBIRcgGyAWIANBsANq/QAEAP3mAf3kASEbIBogFiADQaADav0ABAD95gH95AEhGiAYIBYgA0GQA2r9AAQA/eYB/eQBIRggBSAEQbACaiIERw0ACwwBCyABQQRByKPCABDwDgALIAIgHv0LBEAgAiAd/QsEACACIBv9CwTQASACIBr9CwTAASACIBj9CwSwASACICP9CwSgASACICT9CwSQASACIBf9CwSAASACIBz9CwRQIBz9GwMhBCACICL9CwQwICL9GwAhBSACIBn9CwQgIBn9GwMhBiAZ/RsCIQkgGf0bASEKIBn9GwAhCyACICD9CwQQICD9GwMhDiAi/RsBIQMgAiAA/QAEwAEiFiAA/QAEACIY/eYBIAD9AAQQIhcgAP0ABLABIhn95gH95QH9CwSgAiACIBkgAP0ABCAiGf3mASAYIAD9AATQASIY/eYB/eUB/QsEkAIgAiAXIBj95gEgGSAW/eYB/eUB/QsEgAIgAQRAIABBoAtqIQMgAEHgA2ohBCAAQbABaiEFIABB4ABqIQYgAEEwaiEJA0AgAyAFIAJBgAJqIAkgBiAA/QAEoAEgBP0ABAD95gEgAiACQYABahDlASAEQbACaiEEIANBsARqIQMgAUEBayIBDQALIAIoAlwhBCACKAIwIQUgAigCLCEGIAIoAighCSACKAIkIQogAigCICELIAIoAhwhDiACKAI0IQMLIAIoAjghEiACKAI8IRMgACgC7BwhDyAAKALoHCEBIAAoAuQcIRAgACgC4BwhDCACQcACaiINQRhqIAJBGGooAgAiFDYCACANQRBqIAJBEGopAwAiLTcDACACIAL9AAQA/QsEwAIgAkGAAmoiDUEYaiACQUBrIhFBGGooAgAiFTYCACANQRBqIBFBEGopAwAiLjcDACACIBH9AAQA/QsEgAIgAv0AAowCIRYgAv0AA4gCIRggDUEUaiAC/QAChAL9VgIAASEXIAggDEsEQCAC/QAEwAIhGSAHIAxBBXRqIgwgAv0ABIACIC6n/RwBIAIoAmD9HAIgAigCcP0cA/0LBBAgDCAZIC2n/RwBIAv9HAIgBf0cA/0LBAALIAggEEsEQCACQdQCaiAC/QACxAL9VgIAASEZIAcgEEEFdGoiBSACQfQAaiACQeQAaiAX/VYCAAL9VgIAA/0LBBAgBSAZIAr9HAIgA/0cA/0LBAALIAEgCEkEQCAC/QADyAIhFyAHIAFBBXRqIgEgAkH4AGogAkHoAGogGCAV/RwB/VYCAAL9VgIAA/0LBBAgASAXIBT9HAEgCf0cAiAS/RwD/QsEAAsgAkHAAWohASAIIA9LBEAgAv0AAswCIRggByAPQQV0aiIDIAJB/ABqIAJB7ABqIBYgBP0cAf1WAgAC/VYCAAP9CwQQIAMgGCAO/RwBIAb9HAIgE/0cA/0LBAALIAAoAvwcIQMgACgC+BwhBCAAKAL0HCEFIAAoAvAcIQAgAkHAAmoiBkEYaiIJIAJBgAFqIgpBGGooAgA2AgAgBkEQaiILIApBEGopAwA3AwAgAiAC/QAEgAH9CwTAAiACKAKgASEKIAIoArABIQ4gAigCtAEhDyACKAKkASEQIAIoArgBIQwgAigCqAEhDSACKAK8ASERIAIoAqwBIRIgAigCnAEhEyACQYACaiIGQRhqIAFBGGooAgAiFDYCACAGQRBqIAFBEGopAwAiLTcDACACIAH9AAQA/QsEgAIgAv0AAowCIRYgAv0AA4gCIRggBkEUaiAC/QAChAL9VgIAASEXIAAgCEkEQCALKAIAIQEgAv0ABMACIRkgByAAQQV0aiIAIAL9AASAAiAtp/0cASACKALgAf0cAiACKALwAf0cA/0LBBAgACAZIAH9HAEgCv0cAiAO/RwD/QsEAAsgBSAISQRAIAJB1AJqIAL9AALEAv1WAgABIRkgByAFQQV0aiIAIAJB9AFqIAJB5AFqIBf9VgIAAv1WAgAD/QsEECAAIBkgEP0cAiAP/RwD/QsEAAsgBCAISQRAIAkgAv0AA8gC/VYCAAEhFyAHIARBBXRqIgAgAkH4AWogAkHoAWogGCAU/RwB/VYCAAL9VgIAA/0LBBAgACAXIA39HAIgDP0cA/0LBAALIAMgCEkEQCAC/QACzAIhGCAHIANBBXRqIgAgAkH8AWogAkHsAWogAkHcAWogFv1WAgAB/VYCAAL9VgIAA/0LBBAgACAYIBP9HAEgEv0cAiAR/RwD/QsEAAsgAkHgAmokAAuzGAMDfgh/AXsjAEEQayILJAAgC0EEaiAAKAIAIAAoAgQiACgCCEEBa0F4cWpBCGogACgCpAERAAACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAsoAgRBAWsOEwECAwQFBgcICQoLDA0ODxAREhMACyABIAEpAwBCCHw3AwBBACEADBMLIAEgASkDAEIQfDcDAEEAIQAMEgsgASABKQMAQiB8NwMAQQAhAAwRCyABIAEpAwBCHHw3AwBBACEADBALIAEgASkDAEIofDcDAEEAIQAMDwsgASkDACECIAsoAggiBSgCCCIABH4gAiAAQQZ0QUBqrXxCzAB8BSACQgx8CyECIAUoAhQiAAR+IAIgAEEBa0H/////A3GtQgOGfEIQfAUgAkIIfAtCEHwhAgJAIAUoAiAiCEUNACAFKAIcIQcCQCAIQf////8BcUEBRgRAIAchAAwBC/0MAAAAAAAAAAAAAAAAAAAAACAC/R4AIQ0gByAIQQFrQf////8BcUEBaiIMQf7///8DcSIKQQN0aiEAIAohCSAHIQYDQP0MCQAAAAAAAAAJAAAAAAAAAP0MAQAAAAAAAAABAAAAAAAAACAGQQhqIAb9XAIA/VYCAAJBP/3LAUE//cwB/VIgDf3OASENIAZBEGohBiAJQQJrIgkNAAsgDSANIA39DQgJCgsMDQ4PAAECAwQFBgf9zgH9HQAhAiAKIAxGDQELIAcgCEEDdGohBgNAQglCASAAKAIAGyACfCECIAYgAEEIaiIARw0ACwsgBSgCNCIABH4gAEEBa61CHH4hAyAFKAIoIgApAwBCgIGChIiQoMCAf4NCgIGChIiQoMCAf1EEQCAAQQhqIQADQCAAKQMAIQQgAEEIaiEAIARCgIGChIiQoMCAf4NCgIGChIiQoMCAf1ENAAsLIAIgA3xCJHwFIAJCCHwLIQIgBSgCSCIABH4gAiAAQQxsQQxrQQxurUIMfnxCFHwFIAJCCHwLIQIgBSgCVCIABH4gAiAAQQl0QYAEa618QogEfAUgAkIIfAshAiABIAUoAmAiAAR+IAIgAEEBa0H/////A3GtQgOGfEIQfAUgAkIIfAtCDHw3AwBBACEADA4LIAEpAwAhAiALKAIIIgUoAggiAAR+IAIgAEEGdEFAaq18QswAfAUgAkIMfAshAiAFKAIUIgAEfiACIABBAWtB/////wNxrUIDhnxCEHwFIAJCCHwLQhB8IQICQCAFKAIgIghFDQAgBSgCHCEHAkAgCEH/////AXFBAUYEQCAHIQAMAQv9DAAAAAAAAAAAAAAAAAAAAAAgAv0eACENIAcgCEEBa0H/////AXFBAWoiDEH+////A3EiCkEDdGohACAKIQkgByEGA0D9DAkAAAAAAAAACQAAAAAAAAD9DAEAAAAAAAAAAQAAAAAAAAAgBkEIaiAG/VwCAP1WAgACQT/9ywFBP/3MAf1SIA39zgEhDSAGQRBqIQYgCUECayIJDQALIA0gDSAN/Q0ICQoLDA0ODwABAgMEBQYH/c4B/R0AIQIgCiAMRg0BCyAHIAhBA3RqIQYDQEIJQgEgACgCABsgAnwhAiAGIABBCGoiAEcNAAsLIAUoAjAiAAR+IAIgAEEMbEEMa0EMbq1CDH58QhR8BSACQgh8CyECIAUoAjwiAAR+IAIgAEEMbEEMa0EMbq1CDH58QhR8BSACQgh8CyECAn4gBSgCQEGAgICAeEcEQCAFKAJUIQAgBSgCSCIGBH4gAiAGQQxsQQxrQQxurUIMfnxCFXwFIAJCCXwLIgNCCHwgAEUNARogAEEkbEEka0Ekbq1CJH4gA3xCLHwMAQsgAkIBfAshAgJAIAUoAlhBgICAgHhHBEAgBSgCYCIABH4gAiAAQQJ0QQRrrXxCDXwFIAJCCXwLIQIgBSgCbCIABH4gAiAAQQJ0QQRrrXxCDHwFIAJCCHwLIgNCCHwhAiAFKAJ4IgBFDQEgAyAAQQR0QRBrrXxCGHwhAgwBCyACQgF8IQILAkAgBSgCfEGAgICAeEcEQCAFKAKEASIABH4gAiAAQQJ0QQRrrXxCDXwFIAJCCXwLIQIgBSgCkAEiAAR+IAIgAEECdEEEa618Qgx8BSACQgh8CyICQgh8IQMgBSgCnAEiAEUNASACIABBAWtB/////wNxrUIDhnxCEHwhAwwBCyACQgF8IQMLIAEgA0ICfDcDAEEAIQAMDQsgASkDACECIAsoAggiBSgCCCIABH4gAiAAQQZ0QUBqrXxCzAB8BSACQgx8CyECIAUoAhQiAAR+IAIgAEEBa0H/////A3GtQgOGfEIQfAUgAkIIfAtCEHwhAgJAIAUoAiAiCEUNACAFKAIcIQcCQCAIQf////8BcUEBRgRAIAchAAwBC/0MAAAAAAAAAAAAAAAAAAAAACAC/R4AIQ0gByAIQQFrQf////8BcUEBaiIMQf7///8DcSIKQQN0aiEAIAohCSAHIQYDQP0MCQAAAAAAAAAJAAAAAAAAAP0MAQAAAAAAAAABAAAAAAAAACAGQQhqIAb9XAIA/VYCAAJBP/3LAUE//cwB/VIgDf3OASENIAZBEGohBiAJQQJrIgkNAAsgDSANIA39DQgJCgsMDQ4PAAECAwQFBgf9zgH9HQAhAiAKIAxGDQELIAcgCEEDdGohBgNAQglCASAAKAIAGyACfCECIAYgAEEIaiIARw0ACwsgBSgCMCIABH4gAiAAQQxsQQxrQQxurUIMfnxCFHwFIAJCCHwLIQIgASAFKAI8IgAEfiACIABBA3RBCGutfEIQfAUgAkIIfAs3AwBBACEADAwLIAEgASkDAEIQfDcDAEEAIQAMCwsgASkDACECIAsoAggiACgCCCIGBH4gAiAGQQJ0QQRrrXxCEHwFIAJCDHwLIQIgASAAKAIcIgYEfiACIAAoAhgiACAGaiAAQX9zaq18Qhl8BSACQhh8C0I9fDcDAEEAIQAMCgsgASABKQMAQgx8IgI3AwAgCygCCCIFQQhqKAIAIgAEQCAFQQRqKAIAQRxqIQYgAEEkbCEJA0AgASABKQMAQhx8NwMAIAYgARBXIgANCyAGQSRqIQYgCUEkayIJDQALIAEpAwAhAgsgBSgCFCIABH4gAiAAQQZ0QUBqrXxCyAB8BSACQgh8CyECIAUoAiAiAAR+IAIgAEEBa0H/////A3GtQgOGfEIQfAUgAkIIfAtCEHwhAgJAIAUoAiwiCEUNACAFKAIoIQcCQCAIQf////8BcUEBRgRAIAchAAwBC/0MAAAAAAAAAAAAAAAAAAAAACAC/R4AIQ0gByAIQQFrQf////8BcUEBaiIMQf7///8DcSIKQQN0aiEAIAohCSAHIQYDQP0MCQAAAAAAAAAJAAAAAAAAAP0MAQAAAAAAAAABAAAAAAAAACAGQQhqIAb9XAIA/VYCAAJBP/3LAUE//cwB/VIgDf3OASENIAZBEGohBiAJQQJrIgkNAAsgDSANIA39DQgJCgsMDQ4PAAECAwQFBgf9zgH9HQAhAiAKIAxGDQELIAcgCEEDdGohBgNAQglCASAAKAIAGyACfCECIAYgAEEIaiIARw0ACwsgASAFQTxqKAIAIgAEfiACIABBGGxBGGtBGG6tQhh+fEIgfAUgAkIIfAtCGHw3AwBBACEADAkLIAEgASkDAEIEfDcDACALKAIIIAEQlAUhAAwICyABIAEpAwBCDHw3AwBBACEADAcLIAEgASkDAEIMfDcDAEEAIQAMBgsgASABKQMAQhR8NwMAQQAhAAwFCyABIAEpAwBCLHw3AwBBACEADAQLIAEgASkDAEIQfDcDAEEAIQAMAwsgASABKQMAQhB8NwMAQQAhAAwCCyABIAEpAwBCBHw3AwAgCygCCCABEJQFIgANASABIAEpAwBCBHw3AwBBACEADAELQThBARCRDiIBRQ0BIAFBMGpB9L3BACkAADcAACABQSBqQeS9wQD9AAAA/QsAACABQRBqQdS9wQD9AAAA/QsAACABQcS9wQD9AAAA/QsAAEEMQQQQkQ4iAEUNAiAAQTg2AgggACABNgIEIABBODYCAAsgC0EQaiQAIAAPC0EBQThB/L7BABDXDQALQQRBDEH4ysQAKAIAIgBBzAggABsRAAAAC8kXAwZ/HX0BfiMAQeACayILJAACQAJAIApFBEAgCSAAEPgCDQIMAQsgCSABEPgCDQELIAsgAiADIAAQygECQCALKgIAIisgCF5FBEAgCyADKgIMIiAgAyoCACISkyIVIAMqAhwiGSADKgIEIhGTIhaUIAMqAhAiFCARkyIXIAMqAhgiGyASkyIclJMiGCAYlCAXIAMqAiAiHSADKgIIIheTIhOUIAMqAhQiISAXkyIaIBaUkyIWIBaUIBogHJQgFSATlJMiFSAVlJKSIhxDAACAKF4EfyALIBggHJEiGJU4AqgBIAsgFSAYlTgCpAEgCyAWIBiVOAKgAUEBBUEACzYCnAEgC0EQaiADIAtBnAFqIAIgARC+AyALKgIQIiwgCF4NASADQRhqIQ4gA0EMaiEPIAAqAhghJCAAKgIQIR4gACoCFCETIAAqAgwhHCAAKgIIIRggACoCACEWIAAqAgQhFSALQQA2AoQCIAtBADYC9AEgC0IANwLgASALQQA2AtABIAtCADcCvAEgC0EANgKsASALQQA2ApwBIAsgEyAUIBwgICAYlCAWICGUkyIaIBqSIiWUIBggFSAhlCAYIBSUkyIaIBqSIiaUIBYgFiAUlCAgIBWUkyIUIBSSIiiUk5KSkiIqIBMgESAcIBIgGJQgFyAWlJMiFCAUkiIflCAYIBcgFZQgESAYlJMiFCAUkiIjlCAWIBEgFpQgEiAVlJMiESARkiInlJOSkpIiEZMiFDgCpAEgCyAUjDgCtAEgCyARIBMgGSAcIBsgGJQgFiAdlJMiEyATkiIplCAYIBUgHZQgGCAZlJMiEyATkiItlCAWIBYgGZQgGyAVlJMiGSAZkiIZlJOSkpIiE5MiGjgC7AEgCyAajDgC/AEgCyAeIBIgHCAjlCAVICeUIBggH5STkpKSIhIgHiAbIBwgLZQgFSAZlCAYICmUk5KSkiIbkyIiOAKAAiALICKMOAL4ASALICQgFyAcICeUIBYgH5QgFSAjlJOSkpIiFyAkIB0gHCAZlCAWICmUIBUgLZSTkpKSIh2TIh84AvABIAsgH4w4AugBIAsgEyAqkyIjOALIASALICOMOALYASALIBsgHiAgIBwgJpQgFSAolCAYICWUk5KSkiInkyIeOALcASALIB6MOALUASALIB0gJCAhIBwgKJQgFiAllCAVICaUk5KSkiImkyIhOALMASALICGMOALEASALICcgEpMiJDgCuAEgCyAkjDgCsAEgCyAmIBeTIiU4AqgBIAsgJYwiIDgCoAFDAAAAACEZIAsgKiAilCAnIBqUkyAmQwAAAACUkjgCzAIgCyARICKUIBIgGpSTIBdDAAAAAJQiKJI4AsgCIAsgJyAflCAqQwAAAACUkiAiICaUkzgCxAIgCyASIB+UIBFDAAAAAJQiKZIgIiAXlJM4AsACIAsgJ0MAAAAAlCAfICqUkyAmIBqUkjgCvAIgCyASQwAAAACUIiIgHyARlJMgFyAalJI4ArgCIAsgEyAelCAbICOUkyAdQwAAAACUIhqSOAK0AiALIBEgHpQgEiAjlJMgKJI4ArACIAsgGyAhlCATQwAAAACUIh+SIB4gHZSTOAKsAiALIBIgIZQgKZIgHiAXlJM4AqgCIAsgG0MAAAAAlCIeICEgE5STIB0gI5SSOAKkAiALICIgISARlJMgFyAjlJI4AqACIAsgEyAklCAUIBuUkyAakjgCnAIgCyARICSUIBIgFJSTICiSOAKYAiALICUgG5QgH5IgJCAdlJM4ApQCIAsgEiAllCApkiAkIBeUkzgCkAIgCyAUIB2UIB4gJSATlJOSOAKMAiALIBcgFJQgIiARICWUk5I4AogCIAIqAgghIyACKgIEIR4gAioCACEhQ///f/8hESALQYgCaiEMA0ACQCALQZwBaiAQaiINKgIAIhsgG5QgDUEEaioCACIdIB2UkiANQQhqKgIAIhogGpSSIhJDAAAANF5FDQAgDCoCACIXIAxBBGoqAgAiIl4hDSAbICEgG5iUIB0gHiAdmJSSIBogIyAamJSSIBKRIhOVIR8gFyAiIA0bjCATlSAfkyESICIgFyANGyATlSAfkyIXIBFeBEAgGiATlSEUIB0gE5UhICAbIBOVIRkgFyERCyARIBJdRQ0AIBqMIBOVIRQgHYwgE5UhICAbjCATlSEZIBIhEQsgDEEIaiEMIBBBDGoiEEHsAEcNAAsCQAJAIAggEV1FBEAgC0EoaiALQQxqKAIANgIAIAsgCykCBDcDICALICs4AjAgKyAsXUUNASARICxdRQ0BIAsgLDgCMCALIBwgFSALKgIUIgiUIBYgCyoCGCIRlJMiEiASkiISlCAWIBYgCyoCHCIXlCAYIAiUkyIUIBSSIhmUIBUgGCARlCAVIBeUkyIUIBSSIhOUk5IgF5MiFDgCKCALIBwgGZQgGCATlCAWIBKUk5IgEZMiIDgCJCALIBwgE5QgFSASlCAYIBmUk5IgCJMiGTgCIAwCCyAJQQA2AkgMBAsgESArXkUEQCALKgIoIRQgCyoCJCEgIAsqAiAhGQwBCyALIBQ4AiggCyAgOAIkIAsgGTgCICALIBE4AjALIAsgASoCDCIXIBkgASoCBCIIlCAgIAEqAgAiEZSTIhIgEpIiGJQgESAUIBGUIBkgASoCCCISlJMiFiAWkiIWlCAIICAgEpQgFCAIlJMiFSAVkiIVlJOSIBSTOAI8IAsgFyAWlCASIBWUIBEgGJSTkiAgkzgCOCALIBcgFZQgCCAYlCASIBaUk5IgGZM4AjQCQAJAIAQEQCAEIAAgC0EgaiALQTRqIAUoAhQREQBFDQELIAZFDQEgBiAAIAtBIGogC0E0aiAHKAIYEREADQELIAlBADYCSAwDCyALQYgCaiIBQQhqIgUgC0EoaigCADYCACALIAspAyA3A4gCIAtBnAFqIAIgARDpAiALQZwCaiAPQQhqKAIANgIAIAtBtAJqIA5BCGooAgAiAjYCACAFIANBCGooAgA2AgAgC0GgAmogDikCACIuNwMAIAFBIGoiBSACNgIAIAv9DAAAAAABAAAAAgAAAAIAAAD9CwTQAiALIA8pAgA3ApQCIAsgLjcCrAIgCyADKQIANwOIAiALQfAAaiALQdACaiIDEP8GIAtBQGsiAkFAayADEIAHIAJBIGogBf0AAwD9CwMAIAJBEGogAUEQav0AAwD9CwMAIAtCgICAgDw3A5ABIAsgC/0AA4gC/QsDQCAJKAJIIgytQiR+Ii6nIQFBACEDAkAgLkIgiKcNACABQfz///8HSw0AIAkoAkQhBQJAIAFFBEBBBCECQQAhDAwBC0EEIQMgAUEEEJEOIgJFDQELIAEEQCACIAUgAfwKAAALIAlBADYCSCAAIAtBIGogC0GcAWogC0FAayAJIAoQJyAEIAZyBEAgCyALQTBqNgKIAiALQYgCaiEAQQAhAyAJQUBrIgQoAggiBQRAAkAgACgCACIHKgIAIghDAAAAAGANACAIQwAAoECUIQhBASAFayEBIAQoAgRBJGohAANAIABBDGsqAgAiESAIYCARQwAAAABgcgRAIABBJGohACABQQFqIgFBAUcNAQwCCwsgAUUEQEEBIQMMAQtBACABayEBQQEhAwNAAkACQCAHKgIAIghDAAAAAGANACAAQRhqKgIAIhFDAAAAAGANACARIAhDAACgQJRgDQAgA0EBaiEDDAELIAAgA0FcbGoiBiAA/QACAP0LAgAgBkEgaiAAQSBqKAIANgIAIAZBEGogAEEQav0AAgD9CwIACyAAQSRqIQAgAUEBayIBDQALCyAEIAUgA2s2AggLCyAJIAtBNGoiACALQSBqIgEgChsiAykCADcCTCAJIAEgACAKGyIAKQIANwJYIAlB1ABqIANBCGooAgA2AgAgCUHgAGogAEEIaigCADYCACAMRQ0DIAIgDEEkbEEEEOgODAMLIAMgAUHA3MIAENcNAAsgCUEANgJIDAELIAlBADYCSAsgC0HgAmokAAupEwMVfwR7A30jAEFAaiIEJAAgAygCDCESIAMoAgQhCyACKAIIIQ8gAigCBCETIAEoAgghCiABKAIEIQ4CQAJAAkACQAJ9AkACQAJAAn8gACgCCCIMQX9GBEAgCwwBCyAALQBERQRAIAAoAhAiBiAMaiASSw0HIAsgDEECdGoMAQsgDCAPTw0BQQYhBiATIAxBBXRqCyEHIAAoAhQiECAKSw0BIAAoAhAiAUEBaiIUIAFqIhYgCiAQayAUaksNBgJAIAEgBkYEQCAGQQhPDQFDAAAAAAwFCyAEQQE2AgwgBCABNgIIIARBATYCFCAEIAY2AhAMBQsgDiAQQQJ0aiEJIAZBeHEhBUEAIQMgBiEIA0AgGyADIAlqIgH9XQIAIAMgB2oiAv1dAgD95gH95AEhGyAaIAFBGGr9XQIAIAJBGGr9XQIA/eYB/eQBIRogGSABQQhq/V0CACACQQhq/V0CAP3mAf3kASEZIBwgAUEQav1dAgAgAkEQav1dAgD95gH95AEhHCADQSBqIQMgCEEIayIIQQdLDQALDAILIAwgD0HAqsIAEIULAAsgECAKQbCrwgAQ7w4ACyAZIBr95AEiGf0fASAZ/R8AIBsgHP3kASIZ/R8BIBn9HwBDAAAAAJKSkpILIR0CQCAFIAZPDQACQCAGQQNxIghFBEAgBSEBDAELIA4gBUECdCIBIBBBAnRqaiEDIAEgB2ohAiAFIQEDQCABQQFqIQEgHSADKgIAIAIqAgCUkiEdIANBBGohAyACQQRqIQIgCEEBayIIDQALCyAFIAZrQXxLDQAgDiABQQJ0IgIgEEECdGpqIQMgBiABayEBIAIgB2ohAgNAIB0gAyoCACACKgIAlJIgA0EEaioCACACQQRqKgIAlJIgA0EIaioCACACQQhqKgIAlJIgA0EMaioCACACQQxqKgIAlJIhHSADQRBqIQMgAkEQaiECIAFBBGsiAQ0ACwsCfQJAAkACQAJ/IAAoAgwiDUF/RgRAQQAhBSALDAELIAAtAEVFBEAgDSAAKAIYIgVqIBJLDQcgCyANQQJ0agwBCyANIA9PDQFBBiEFIBMgDUEFdGoLIQcgACgCHCIRIApLDQEgACgCGCIBQQFqIhUgAWoiFyAKIBFrIBVqSw0GAkAgASAFRgRAIAVBCE8NAUEAIQlDAAAAAAwFCyAEQQE2AgwgBCABNgIIIARBATYCFCAEIAU2AhAMBQsgDiARQQJ0aiEYIAVBeHEhCUEAIQMgBSEI/QwAAAAAAAAAAAAAAAAAAAAAIRn9DAAAAAAAAAAAAAAAAAAAAAAhGv0MAAAAAAAAAAAAAAAAAAAAACEb/QwAAAAAAAAAAAAAAAAAAAAAIRwDQCAbIAMgGGoiAf1dAgAgAyAHaiIC/V0CAP3mAf3kASEbIBogAUEYav1dAgAgAkEYav1dAgD95gH95AEhGiAZIAFBCGr9XQIAIAJBCGr9XQIA/eYB/eQBIRkgHCABQRBq/V0CACACQRBq/V0CAP3mAf3kASEcIANBIGohAyAIQQhrIghBB0sNAAsMAgsgDSAPQeCqwgAQhQsACyARIApBoKvCABDvDgALIBkgGv3kASIZ/R8BIBn9HwAgGyAc/eQBIhn9HwEgGf0fAEMAAAAAkpKSkgshHgJAIAUgCU0NAAJAIAVBA3EiCEUEQCAJIQEMAQsgDiAJQQJ0IgEgEUECdGpqIQMgASAHaiECIAkhAQNAIAFBAWohASAeIAMqAgAgAioCAJSSIR4gA0EEaiEDIAJBBGohAiAIQQFrIggNAAsLIAkgBWtBfEsNACAOIAFBAnQiAiARQQJ0amohAyAFIAFrIQEgAiAHaiECA0AgHiADKgIAIAIqAgCUkiADQQRqKgIAIAJBBGoqAgCUkiADQQhqKgIAIAJBCGoqAgCUkiADQQxqKgIAIAJBDGoqAgCUkiEeIANBEGohAyACQRBqIQIgAUEEayIBDQALCyAAIAAqAiQiHyAAKgIwIB4gHZMgACoCNJIgHyAAKgJAlJOUkiIdIAAqAiwiHiAdIB5dGyAAKgIoIh4gHSAeXhsiHTgCJAJAAkACQAJAAkACfyAMQX9GBEAgCyEIQQAMAQsgAC0AREUEQCAGIAxqIBJLDQggCyAMQQJ0aiEIIAYMAQsgDCAPTw0BIBMgDEEFdGohCEEGCyEDIAYgEGoiCSAKSw0DIAogCWsgFGogFkkNByAEIAY2AhggBCADNgIQIAMgBkcNCCAdIB+TIR0CQCAGRQ0AQQAhByAGQQRPBEAgDiAJQQJ0aiECIB39EyEZIAZBfHEiByEBIAghAwNAIAMgGSAC/QACAP3mASAD/QACAP3kAf0LAgAgAkEQaiECIANBEGohAyABQQRrIgENAAsgBiAHRg0BCyAOIAdBAnQiAyAJQQJ0amohAiAGIAdrIQEgAyAIaiEDA0AgAyAdIAIqAgCUIAMqAgCSOAIAIANBBGohAyACQQRqIQIgAUEBayIBDQALCwJ/QQAgDUF/Rg0AGiAALQBFRQRAIAUgDWogEksNCCALIA1BAnRqIQsgBQwBCyANIA9PDQMgEyANQQV0aiELQQYLIQMgCiAFIBFqIgBPBEAgCiAAayAVaiAXSQ0IIAQgBTYCGCAEIAM2AhAgAyAFRw0FAkAgBUUNAEEAIQcgBUEETwRAIA4gAEECdGohAiAd/RMhGSAFQXxxIgchASALIQMDQCADIAP9AAIAIBkgAv0AAgD95gH95QH9CwIAIAJBEGohAiADQRBqIQMgAUEEayIBDQALIAUgB0YNAQsgDiAAQQJ0IAdBAnQiAGpqIQIgBSAHayEBIAAgC2ohAwNAIAMgAyoCACAdIAIqAgCUkzgCACADQQRqIQMgAkEEaiECIAFBAWsiAQ0ACwsgBEFAayQADwsgACAKQYCrwgAQ7w4ACyAMIA9B0KrCABCFCwALAAsgDSAPQfCqwgAQhQsACyAJIApBkKvCABDvDgALDAMLIARBAzYCLCAEQcSDwgA2AiggBEICNwI0IAQgBEEQaq1CgICAgJAPhDcDICAEIARBCGqtQoCAgICQD4Q3AxggBCAEQRhqNgIwIARBKGpB3IPCABC5DQALIARBADYCOCAEQQE2AiwgBEGw/cEANgIoIARCBDcCMCAEQShqQbj9wQAQuQ0ACyAEQQA2AjggBEEBNgIsIARBuIDCADYCKCAEQgQ3AjAgBEEoakHAgMIAELkNAAsgBEIANwI0IARCgYCAgMAANwIsIARB8ILCADYCKCAEQRBqIARBGGogBEEoakH4gsIAEPwMAAv7FgMWfwl9BX4jAEGgAmsiCCQAIAAoAgAiBigCBCIJIAYpAxAgACgCBCITKAIAIgutIAAoAggoAgAiDK1CIIaEhSIlQiCIIiZCt9OwhQx+ICVC/////w+DIiVC3aHxywx+hSAmQt2h8csMfiAlQrfTsIUMfoVCIImFIianIg9xIQcgJkIZiCIoQv8Ag0KBgoSIkKDAgAF+ISkgBigCACEKAkACQAJAAn8CQAJAA0AgKSAHIApqKQAAIieFIiVCgYKEiJCgwIABfSAlQn+Fg0KAgYKEiJCgwIB/gyIlQgBSBEADQCAKICV6p0EDdiAHaiAJcUEEdGsiDUEQaygCACALRgRAIAwgDUEMaygCAEYNBAsgJUIBfSAlgyIlQgBSDQALCyAnICdCAYaDQoCBgoSIkKDAgH+DUARAIAcgDkEIaiIOaiAJcSEHDAELCyAAKAIYLQAAIQkgACgCFCEQIAAoAhAiCigCCCENIAENAUEAIQ5BAAwCCyANQQhrIgsoAgAiByAAKAIMIgkoAggiBk8NAyAJKAIEIAdBqAFsaiIGKQJ8ISUgBkKAgICAwAA3AnwgCEHQAWogBkGEAWoiBygCADYCAEEAIQogB0EANgIAIAggJTcDyAEgBigCYCIJQQZ0IQwgCUH///8fSw0CIAxB8P///wdLDQIgBigCXCEPIAYoAmQhECAGKQJQISUgBigCTCERIAYpAkQhJiAGKAJAIRIgBigCpAEhFCAGKAKgASEVAkAgDEUEQEEQIQ5BACEHDAELQRAhCiAJIQcgDEEQEJEOIg5FDQMLIAwEQCAOIA8gDPwKAAALIAhByABqIg8gBkHwAGooAgA2AgAgCEE8aiAIQdABaigCADYBACAIQShqIhYgBkGQAWooAgA2AgAgCEEYaiIXIAZBnAFqKAIANgIAIAggBikCaDcDQCAIIAgpA8gBNwE0IAggBikCiAE3AyAgCCAGKQKUATcDECAGKAJ0IRggBi8BeCEZIAhB0ABqIgpBEGoiGiAGQRBq/QACAP0LAwAgCkEwaiIbIAZBMGr9AAIA/QsDACAIIAb9AAIA/QsDUCAIIAb9AAIg/QsDcCALIAAoAhAiCigCCDYCACANQQRrIAAoAhQtAAA6AAAgCigCCCIMIAooAgBGBEAgCkGY8cEAEJcICyAKKAIEIAxBqAFsaiIGIAj9AANQ/QsCACAGIBA2AmQgBiAJNgJgIAYgDjYCXCAGIAc2AlggBiAlNwJQIAYgETYCTCAGICY3AkQgBiASNgJAIAYgCCkDQDcCaCAGQTBqIBv9AAMA/QsCACAGQSBqIAhB8ABq/QADAP0LAgAgBkEQaiAa/QADAP0LAgAgBkHwAGogDygCADYCACAGIBk7AXggBiAYNgJ0IAYgFDYCpAEgBiAVNgKgASAGIAgpATI3AXogBkGAAWogCEE4aikBADcBACAGQZABaiAWKAIANgIAIAYgCCkDIDcCiAEgBkGcAWogFygCADYCACAGIAgpAxA3ApQBIAogDEEBaiIHNgIIDAQLIAhBkAFqIAhBrAFqIAkbIgcgAf0AAgD9CwIAIAdBGGogAUEYaigCADYCACAHQRBqIAFBEGopAgA3AgAgCUEBcyEOIAkLIQcgDCALIAkbIREgCyAMIAkbIRIgEC0AACEQIAooAgAgDUYEQCAKQajxwQAQlwgLIAooAgQgDUGoAWxqIgkgBzYCACAJIAgpApABNwIEIAkgDjYCICAJIAgpAqwBNwIkIAlCgICAgIACNwJYIAlBADYCfCAJQQA2AkwgCUEANgJAIAlBDGogCEGQAWoiB0EIav0AAgD9CwIAIAlBHGogB0EYaigCADYCACAJQSxqIAhBrAFqIgdBCGr9AAIA/QsCACAJQTxqIAdBGGooAgA2AgAgCUH4AGpBADsBACAJQfAAakIANwIAIAn9DAAAAAAAAAAAAAAAAAAAAAD9CwJgIAlBlAFqQgA3AgAgCUEENgKAASAJQZwBakEANgIAIAn9DAAAAAAAAAAAAAAAAAAAAAD9CwKEASAJIBE2AqABIAkgEjYCpAEgCiANQQFqNgIIIAggEDoA1AEgCCANNgLQASAIIAw2AswBIAggCzYCyAEgBigCBCIMIA9xIgsgBigCACIJaikAAEKAgYKEiJCgwIB/gyIlUARAQQghBwNAIAcgC2ohCyAHQQhqIQcgCSALIAxxIgtqKQAAQoCBgoSIkKDAgH+DIiVQDQALCyAGKAIIIQ0gCSAleqdBA3YgC2ogDHEiC2osAAAiB0EATgRAIAkgCSkDAEKAgYKEiJCgwIB/g3qnQQN2IgtqLQAAIQcLAkAgB0EBcSIHIA1FcUUEQCAJIAtqICinQf8AcSIOOgAAIAYgDSAHazYCCCAJIAtBCGsgDHFqQQhqIA46AAAgBiAGKAIMQQFqNgIMIAkgC0EEdGsiB0EQayAI/QACyAH9CwIADAELIAhBCGogBiAGQRBqEIoCIAYgJiAGKAIAIAYoAgQgJhCFCiAIQcgBahDwCiEHCyAHQQhrIQsgCigCCCEHDAILIAogDEGA/MEAENcNAAsgByAGQYjxwQAQhQsACwJAAkACQAJAIAsoAgAiCSAHSQRAIAooAgQhByAIQcgBaiAAKAIcIBMoAgAQUiAIQcwBakEAIAgoAsgBGyEGIAcgCUGoAWxqIQkgACgCJCEKIAAoAiAhCyAAKAIYLQAADQMgACgCNCEHIAFFDQEgCCAHKgIMIiIgASoCDCIclCAHKgIAIh4gASoCACIdlJMgByoCBCIfIAEqAgQiI5STIAcqAggiICABKgIIIiSUkzgCjAIgCCAgIByUIB4gI5QgIiAklJIgHyAdlJOSOAKIAiAIICAgHZQgHyAclCAiICOUIB4gJJSTkpI4AoQCIAggHyAklCAiIB2UIB4gHJSSkiAgICOUkzgCgAIgHiABKgIUIiOUIB8gASoCECIklJMiHCAckiEcICAgJJQgASoCGCIhIB6UkyIdIB2SIR0gCCAHKgIYICEgIiAclCAeIB2UIB8gHyAhlCAgICOUkyIhICGSIiGUk5KSkjgCmAIgCCAHKgIUICMgIiAdlCAgICGUIB4gHJSTkpKSOAKUAiAIIAcqAhAgJCAiICGUIB8gHJQgICAdlJOSkpI4ApACDAILIAkgB0G48cEAEIULAAsgCEGAAmoiAUEYaiAHQRhqKAIANgIAIAFBEGogB0EQaikCADcDACAIIAf9AAIA/QsDgAILIAsgCEGAAmogACgCLEGk68EAIAIgAyAGQeTpwQAgBCAFIAAoAjAqAgAgCSAKKAIoERIAGgwBCyAAKAIoIQcCQCABBEAgCCABKgIIIh4gByoCCCIclCABKgIEIh8gByoCBCIdlCABKgIAIiAgByoCACIjlCABKgIMIiIgByoCDCIklJKSkjgCjAIgCCAfICOUICIgHJQgICAdlJOSIB4gJJSTOAKIAiAIICIgHZQgICAclJIgHyAklJMgHiAjlJM4AoQCIAggHiAdlCAiICOUICAgJJSTIB8gHJSTkjgCgAIgHyAHKgIQIAEqAhCTIiOUICAgByoCFCABKgIUkyIklJMiHCAckiEcIB4gJJQgHyAHKgIYIAEqAhiTIiGUkyIdIB2SIR0gCCAhICIgHJQgHyAdlCAgICAgIZQgHiAjlJMiISAhkiIhlJOSkjgCmAIgCCAkICIgIZQgICAclCAeIB2Uk5KSOAKUAiAIICMgIiAdlCAeICGUIB8gHJSTkpI4ApACDAELIAhBgAJqIgFBGGogB0EYaigCADYCACABQRBqIAdBEGopAgA3AwAgCCAH/QACAP0LA4ACCyALIAhBgAJqIAIgAyAAKAIsQaTrwQAgBCAFIAZB5OnBACAAKAIwKgIAIAkgCigCKBESABoLIAhBoAJqJAALuhYDFX8JfQV+IwBB4AFrIggkACAAKAIAIgYoAgQiCSAAKAIEKAIAIgwgBikDECIkp3OtIiVC3aHxywx+ICRCIIgiJEK307CFDH6FICVCt9OwhQx+ICRC3aHxywx+hUIgiYUiJaciD3EhByAlQhmIIidC/wCDQoGChIiQoMCAAX4hKCAGKAIAIgpBDGshDQJAAkACQAJAA0ACQCAoIAcgCmopAAAiJoUiJEKBgoSIkKDAgAF9ICRCf4WDQoCBgoSIkKDAgH+DIiRCAFIEQANAIAwgDUEAICR6p0EDdiAHaiAJcWsiDkEMbGooAgBGDQIgJEIBfSAkgyIkQgBSDQALCyAmICZCAYaDQoCBgoSIkKDAgH+DQgBSDQIgC0EIaiILIAdqIAlxIQcMAQsLIAogDkEMbGoiD0EIayIMKAIAIgcgACgCCCIJKAIIIgZPDQIgCSgCBCAHQagBbGoiBikCfCEkIAZCgICAgMAANwJ8IAhByAFqIAZBhAFqIgcoAgA2AgBBACEKIAdBADYCACAIICQ3A8ABIAYoAmAiCUEGdCELIAlB////H0sNASALQfD///8HSw0BIAYoAlwhDiAGKAJkIRAgBikCUCEkIAYoAkwhESAGKQJEISUgBigCQCESIAYoAqQBIRMgBigCoAEhFAJAIAtFBEBBECENQQAhBwwBC0EQIQogCSEHIAtBEBCRDiINRQ0CCyALBEAgDSAOIAv8CgAACyAIQUBrIg4gBkHwAGooAgA2AgAgCEE0aiAIQcgBaigCADYBACAIQSBqIhUgBkGQAWooAgA2AgAgCEEQaiIWIAZBnAFqKAIANgIAIAggBikCaDcDOCAIIAgpA8ABNwEsIAggBikCiAE3AxggCCAGKQKUATcDCCAGKAJ0IRcgBi8BeCEYIAhByABqIgpBEGoiGSAGQRBq/QACAP0LAwAgCkEwaiIaIAZBMGr9AAIA/QsDACAIIAb9AAIA/QsDSCAIIAb9AAIg/QsDaCAMIAAoAgwiCigCCDYCACAPQQRrIAAoAhAtAAA6AAAgCigCCCILIAooAgBGBEAgCkGQ78EAEJcICyAKKAIEIAtBqAFsaiIGIAj9AANI/QsCACAGIBA2AmQgBiAJNgJgIAYgDTYCXCAGIAc2AlggBiAkNwJQIAYgETYCTCAGICU3AkQgBiASNgJAIAYgCCkDODcCaCAGQTBqIBr9AAMA/QsCACAGQSBqIAhB6ABq/QADAP0LAgAgBkEQaiAZ/QADAP0LAgAgBkHwAGogDigCADYCACAGIBg7AXggBiAXNgJ0IAYgEzYCpAEgBiAUNgKgASAGIAgpASo3AXogBkGAAWogCEEwaikBADcBACAGQZABaiAVKAIANgIAIAYgCCkDGDcCiAEgBkGcAWogFigCADYCACAGIAgpAwg3ApQBIAogC0EBaiIHNgIIDAMLIAAoAhQtAAAhCSAAKAIQIQ4gACgCDCIKKAIIIQ1BACELQQAhByABBEAgCEGIAWogCEGkAWogCRsiByAB/QACAP0LAgAgB0EYaiABQRhqKAIANgIAIAdBEGogAUEQaikCADcCACAJQQFzIQsgCSEHC0EAIAwgCRshECAMQQAgCRshESAOLQAAIQ4gCigCACANRgRAIApBoO/BABCXCAsgCigCBCANQagBbGoiCSALNgIAIAkgCCkCpAE3AgQgCSAHNgIgIAkgCCkCiAE3AiQgCUKAgICAgAI3AlggCUEANgJ8IAlBADYCTCAJQQA2AkAgCUEMaiAIQaQBaiIHQQhq/QACAP0LAgAgCUEcaiAHQRhqKAIANgIAIAlBLGogCEGIAWoiB0EIav0AAgD9CwIAIAlBPGogB0EYaigCADYCACAJQfgAakEAOwEAIAlB8ABqQgA3AgAgCf0MAAAAAAAAAAAAAAAAAAAAAP0LAmAgCUGUAWpCADcCACAJQQQ2AoABIAlBnAFqQQA2AgAgCf0MAAAAAAAAAAAAAAAAAAAAAP0LAoQBIAkgEDYCoAEgCSARNgKkASAKIA1BAWo2AgggCCAOOgDIASAIIA02AsQBIAggDDYCwAEgBigCBCINIA9xIgwgBigCACIJaikAAEKAgYKEiJCgwIB/gyIkUARAQQghCwNAIAsgDGohByALQQhqIQsgCSAHIA1xIgxqKQAAQoCBgoSIkKDAgH+DIiRQDQALCyAGKAIIIQsgCSAkeqdBA3YgDGogDXEiDGosAAAiB0EATgRAIAkgCSkDAEKAgYKEiJCgwIB/g3qnQQN2IgxqLQAAIQcLAkAgB0EBcSIHIAtFcUUEQCAJIAxqICenQf8AcSIPOgAAIAkgDEEIayANcWpBCGogDzoAACAGIAsgB2s2AgggBiAGKAIMQQFqNgIMIAkgDEF0bGoiB0EMayIJQQhqIAhByAFqKAIANgIAIAkgCCkCwAE3AgAMAQsgCCAGIAZBEGoQ/QEgBiAlIAYoAgAgBigCBCAlEIUKIAhBwAFqEIwKIQcLIAdBCGshDCAKKAIIIQcMAgsgCiALQYD8wQAQ1w0ACyAHIAZBgO/BABCFCwALAkACQAJAAkAgDCgCACIJIAdJBEAgCigCBCAJQagBbGohCSAAKAIcIQYgACgCGCEKIAAoAhQtAAANAyAAKAIwIQcgAUUNASAIIAEqAggiHSAHKgIIIhuUIAEqAgQiHiAHKgIEIhyUIAEqAgAiHyAHKgIAIiGUIAEqAgwiIiAHKgIMIiOUkpKSOALMASAIIB4gIZQgIiAblCAfIByUk5IgHSAjlJM4AsgBIAggIiAclCAfIBuUkiAeICOUkyAdICGUkzgCxAEgCCAdIByUICIgIZQgHyAjlJMgHiAblJOSOALAASAeIAcqAhAgASoCEJMiIZQgHyAHKgIUIAEqAhSTIiOUkyIbIBuSIRsgHSAjlCAeIAcqAhggASoCGJMiIJSTIhwgHJIhHCAIICAgIiAblCAeIByUIB8gHyAglCAdICGUkyIgICCSIiCUk5KSOALYASAIICMgIiAglCAfIBuUIB0gHJSTkpI4AtQBIAggISAiIByUIB0gIJQgHiAblJOSkjgC0AEMAgsgCSAHQbDvwQAQhQsACyAIQcABaiIBQRhqIAdBGGooAgA2AgAgAUEQaiAHQRBqKQIANwMAIAggB/0AAgD9CwPAAQsgCiAIQcABaiACIAMgACgCJCAAKAIoIAQgBUEAIAggACgCLCoCACAJIAYoAigREgAaDAELIAAoAiAhBwJAIAEEQCAIIAcqAgwiIiABKgIMIhuUIAcqAgAiHSABKgIAIhyUkyAHKgIEIh4gASoCBCIhlJMgByoCCCIfIAEqAggiI5STOALMASAIIB8gG5QgHSAhlCAiICOUkiAeIByUk5I4AsgBIAggHyAclCAeIBuUICIgIZQgHSAjlJOSkjgCxAEgCCAeICOUICIgHJQgHSAblJKSIB8gIZSTOALAASAdIAEqAhQiIZQgHiABKgIQIiOUkyIbIBuSIRsgHyAjlCABKgIYIiAgHZSTIhwgHJIhHCAIIAcqAhggICAiIBuUIB0gHJQgHiAeICCUIB8gIZSTIiAgIJIiIJSTkpKSOALYASAIIAcqAhQgISAiIByUIB8gIJQgHSAblJOSkpI4AtQBIAggByoCECAjICIgIJQgHiAblCAfIByUk5KSkjgC0AEMAQsgCEHAAWoiAUEYaiAHQRhqKAIANgIAIAFBEGogB0EQaikCADcDACAIIAf9AAIA/QsDwAELIAogCEHAAWogACgCJCAAKAIoIAIgA0EAIAggBCAFIAAoAiwqAgAgCSAGKAIoERIAGgsgCEHgAWokAAvDFAIOfyN9IwBB4AFrIgkkACAAKAIAIQsgBioCBCEuIAAqAgQhFyAJQQA2AgggCUKAgICAwAA3AgAgCUG4AWogAyAFIAQoApQBEQEAAkAgFyAXIC6UIAsbQ83MTD2SIilDAAAAAGAEQCApIAkqAswBkiEXICkgCSoCyAGSIRkgKSAJKgLEAZIhHSAJKgLAASApkyEaIAkqArwBICmTIRggCSoCuAEgKZMhKAJAIAIoAjgiCygCCEUEQAwBCwJ/QQAgCygCBCIGKgIAIB1fRQ0AGkEAIAYqAgQgGV9FDQAaQQAgBioCCCAXX0UNABogBkEAIAYqAhggGmAbQQAgBioCFCAYYBtBACAGKgIQIChgGwshCiAGKAI8Qf////8DcUUNACAGKgIgIB1fRQ0AIAYqAiQgGV9FDQAgBioCKCAXX0UNACAGQSBqIQ0gBioCMCAoYCAGKgI0IBhgcSAGKgI4IBpgcSEMCyAJIAI2ArQBIAkgFzgCsAEgCSAZOAKsASAJIB04AqgBIAkgGjgCpAEgCSAYOAKgASAJICg4ApwBIAkgCjYCmAEgCSALNgKUASAJIAw2ApABIAkgDTYCEEEAIQ0gCUEANgIMIAlBDGoiBkGoAWohECAJQbgBaiAGIBAQkAMgCSgCwAEiCkUNASAHRSAIRXIhEiACKAI8IREgBSoCGCEzIAUqAhQhNCAFKgIQITUgBSoCCCEgIAUqAgQhISAFKgIAISIgBSoCDCEmIAhBBGohDwNAIAkoAgghAiAJQQA2AgggAgRAIAkoAgRBgAFqIQYDQCAGQQRrKAIAIgsEQCAGKAIAIAtBBnRBBBDoDgsgBkEoaygCACILBEAgBkEkaygCACALQQZ0QRAQ6A4LIAZBqAFqIQYgAkEBayICDQALCyAJICAgCioCfCIXlCAhIAoqAngiGZQgIiAKKgJ0Ih2UICYgCioCgAEiGpSSkpI4AsQBIAkgISAdlCAmIBeUICIgGZSTkiAgIBqUkzgCwAEgCSAmIBmUICIgF5SSICEgGpSTICAgHZSTOAK8ASAJICAgGZQgJiAdlCAiIBqUkyAhIBeUk5I4ArgBICEgCioChAEgNZMiHZQgIiAKKgKIASA0kyIalJMiFyAXkiEXICAgGpQgISAKKgKMASAzkyIYlJMiGSAZkiEZIAkgGCAmIBeUICEgGZQgIiAiIBiUICAgHZSTIhggGJIiGJSTkpI4AtABIAkgGiAmIBiUICIgF5QgICAZlJOSkjgCzAEgCSAdICYgGZQgICAYlCAhIBeUk5KSOALIASAKKAJAIQIgCigCRCIGKAIIIQsgCUEANgLUASAJQd8BaiAJQbgBaiADIAQgAiALQQFrQXhxakEIaiAGICkgCSAJQdQBahBJGgJAIAkoAtQBIgJFDQAgCSgC2AEiBigCACILBEAgAiALEQYACyAGKAIEIgtFDQAgAiALIAYoAggQ6A4LAkAgEgRAIAkoAghBqAFsIQYgCSgCBCEKA0AgBkUNAiAGQagBayEGIAAgCiAFIC4QkQYhAiAKQagBaiEKIAJFDQALQQEhDQwEC0EAIQYCQCAKKAIQQQFxRQ0AIAooAhQiAiARKAKMA08NACARKAKIAyACQYADbGoiAigCAEEBRw0AIAIoAgQgCigCGEcNACACQRBqQQAgAi0A9QJBAk8bIQYLIAcqAgghFyAHKgIEIRkgByoCACEdAn0gCSgCCCICBEAgAkGoAWwhAiAJKAIEIQsgBgRAIAIgC2ohEyALQagBaiEMIB0hGiAZIRggFyEoA0AgCyECIAwhCyAAIAIgBSAuEJEGIRQCQCACKAKEASIMRQ0AICIgAioCjAEiJJQgISACKgKIASIclJMiGyAbkiEnICAgHJQgIiACKgKQASIblJMiHiAekiEeIBsgJiAnlCAiIB6UICEgISAblCAgICSUkyIbIBuSIiOUk5KSIRsgHCAmICOUICEgJ5QgICAelJOSkiEcICQgJiAelCAgICOUICIgJ5STkpIiMIwhJyACKAKAASEVIAxBBnQhFkMAAAAAIR5BACECQQAhDEMAAAAAISRDAAAAACEjA0AgKSACIBVqIg5BGGoqAgBgBEAgDkEUaioCACIvIAoqAngiH5QgDkEQaioCACIxIAoqAnwiKpSTIiUgJZIhJSAxIAoqAnQiK5QgDkEMaioCACIsIB+UkyItIC2SIS0gASAGKgJ0IAoqAoQBICwgCioCgAEiMiAllCAfIC2UICogLCAqlCAvICuUkyIsICySIiyUk5KSkiI2IAYqAvABkyI3IAYqAoQBIjiUIAoqAowBIC8gMiAtlCArICyUIB8gJZSTkpKSIi8gBioC+AGTIh8gBioCfCI5lJOSICeUIBwgBioCcCAfIAYqAoABIh+UIAoqAogBIDEgMiAslCAqICWUICsgLZSTkpKSIiogBioC9AGTIiUgOJSTkpSTIBsgBioCeCAlIDmUIDcgH5STkpSTlCAPKgIAIiUgJ5QgHCAIKgIAIiuUkyAbIAhBCGoiDioCACItlJOTIR8gDiAtIBsgH5STOAIAIA8gJSAwIB+UkzgCACAIICsgHCAflJM4AgAgHiAvkiEeICQgKpIhJCAjIDaSISMgDEEBaiEMCyAWIAJBQGsiAkcNAAsgDEEATA0AIAYqAnggJCAMsyIklSAGKgL0AZMiHyAGKgJ8IiqUICMgJJUgBioC8AGTIiMgBioCgAEiJZSTkiIrIBsgBioCdCAjIAYqAoQBIiOUIB4gJJUgBioC+AGTIh4gKpSTkiIkICeUIBwgBioCcCAeICWUIB8gI5STkiIelJMgGyArlJMiJ5SSISMgASAkIDAgJ5SSlCEbIAEgHiAcICeUkpQiHIsgGoteBEAgByAcOAIAIBwhGgsgASAjlCEcIBuLIBiLXgRAIAcgGzgCBCAbIRgLIByLICiLXkUNACAHIBw4AgggHCEoCyANIBRyIQ0gC0EAQagBIAsgE0YiAhtqIQwgAkUNAAsgByoCBCEYIAcqAgAhKCAHKgIIDAILA0AgACALIAUgLhCRBiANciENIAtBqAFqIQsgAkGoAWsiAg0ACwsgGSEYIB0hKCAXCyEaIAggKCAdkyAIKgIAkjgCACAPIBggGZMgDyoCAJI4AgAgCEEIaiICIBogF5MgAioCAJI4AgALIAlBuAFqIAlBDGogEBCQAyAJKALAASIKDQALDAELIAlBADYCHCAJQQE2AhAgCUGk2cEANgIMIAlCBDcCFCAJQQxqQazZwQAQuQ0ACyAJKAKQASIAQSFPBEAgCSgCFCAAQQJ0QQQQ6A4LIAkoAgQhACAJKAIIIgoEQCAAQYABaiEGA0AgBkEEaygCACICBEAgBigCACACQQZ0QQQQ6A4LIAZBKGsoAgAiAgRAIAZBJGsoAgAgAkEGdEEQEOgOCyAGQagBaiEGIApBAWsiCg0ACwsgCSgCACICBEAgACACQagBbEEEEOgOCyAJQeABaiQAIA1BAXELrhYEHn8KfQF+AXsjAEHAA2siCCQAIAYQvQcCQAJAAkAgBigCACIJBEAgCEEQaiAJIAYoAgQoAhwRAAAgCEHQAmogCCgCECIJIAgoAhQoAgwRAAAgCUUNAiAIKQPQAkLXyMy78pK38EOFIAgpA9gCQrHV3pHwzPfs8QCFhEIAUg0CIAhBqAJqIAIgACADKAKUAREBACAEQwAAAABgRQ0BIAQgCCoCvAKSIScgBCAIKgK4ApIhKCAEIAgqArQCkiEmIAgqArACIASTISogCCoCrAIgBJMhKQJAIAgqAqgCIASTIisgCSoCGGBFDQAgCSoCHCApX0UNACAJKgIgICpfRQ0AIAkqAiQgJmBFDQAgCSoCKCAoYEUNACAJKgIsICdgRQ0AQQEhIkEEIRIMBAsgCCAnICcgKpNDAAAgQZUiJ0PNzMw9ICdDzczMPV0bIieSOAIwIAggKCAoICmTQwAAIEGVIihDzczMPSAoQ83MzD1dGyIokjgCLCAIICYgJiArk0MAACBBlSImQ83MzD0gJkPNzMw9XRsiJpI4AiggCCAqICeTOAIkIAggKSAokzgCICAIICsgJpM4AhwgCSgADCEGIAkgCSgAADYADCAJKQAQITAgCSAJKQAENwAQIAkgMDcABCAJIAY2AAAgBSgCBCESIAUoAgAhGyAFQoCAgIDAADcCACAFKAIIIRMgBUEANgIIIAlBADYCCAJAIAEoAghFDQAgASgCBCIGQQAgCCoCJCInIAYqAhhfG0EAIAgqAiAiKCAGKgIUXxtBACAIKgIcIiYgBioCEF8bQQAgCCoCMCIqIAYqAghgG0EAIAgqAiwiKSAGKgIEYBtBACAIKgIoIisgBioCAGAbIQogBigCPEH/////A3FFDQAgBioCICArXyAGKgIkIClfcSAGKgIoICpfcSAGKgIwICZgcSAGKgI0IChgcSAGKgI4ICdgcSELIAZBIGohBgsgCCAKNgLEASAIIAE2ArwBIAggCzYCuAEgCCAGNgI4IAhBADYCNCAIIAhBHGo2AsABIAhBCGogCEE0ahDZAyAIKAIIQQFxBEAgCCgCDCEKIAkoAggiBkECdCELA0AgCSgCACAGRgRAIAkgBkEBQQRBBBDYBgsgCSAGQQFqIgY2AgggCSgCBCALaiAKNgIAIAtBBGohCyAIIAhBNGoQ2QMgCCgCBCEKIAgoAgBBAXENAAsLIAlBGGohBiAIKAK4ASIKQSFPBEAgCCgCPCAKQQJ0QQQQ6A4LIAYgCP0AAhz9CwIAIAZBEGogCEEsaikCADcCAAwDC0G4gMMAEPIOAAsgCEEANgLgAiAIQQE2AtQCIAhB6ODCADYC0AIgCEIENwLYAiAIQdACakHw4MIAELkNAAtByIDDABDyDgALIAkoAhQhCiAJQQA2AhQgACoCDCIqIAAqAgAiJyAAKgIUIimUIAAqAgQiKCAAKgIQIiuUkyImICaSIi+UICggKCAAKgIYIiyUIAAqAggiJiAplJMiLSAtkiItlCAnICYgK5QgJyAslJMiLiAukiIulJOSICyTISwgKiAulCAnIC+UICYgLZSTkiApkyEpICogLZQgJiAulCAoIC+Uk5IgK5MhKyASIBNB7ABsaiERIAkoAgQiBiAJKAIIQQJ0aiEjIAkoAhAiDCAKQQJ0aiEXIAhB1AJqISQgCEGoAmoiCUEMaiEcIAlBGGohHSABKAIsIRggASgCMCEPIAEoAjghJSABKAI8IRkgJowhJiAojCEoICeMIScgCEHYAWohHkECIQ0gEiEJAkACQAJAAkADQEHsACAOQewAbGshCwJAAkACQANAIAYgI0YNASALQewAayELIA5BAWohDiAGKAIAIQogBkEEaiITIQYgCiAZTw0ACyAGQQRrIRQgIkUNASAFKAIIIQYMAgsgESAJa0HsAG4hDiAJIBFHBEAgCUHEAGohBgNAIAZBBGsoAgAiAARAIAYoAgAgAEEkbEEEEOgOCyAGQewAaiEGIA5BAWsiDg0ACwsgGwRAIBIgG0HsAGxBBBDoDgsgCEHAA2okAA8LAkACQAJAAkACQAJAAkAgDUECRgRAIAwgF0YEQEEAIQ0MBwsgDCgCACEaQQEhDSAMQQRqIQwMAQsgDUEBcUUNAQsgCiAaTQ0AIAkgEUcEQCAJQewAaiEGAkAgCSgCAEECRg0AIAkoAkAiCkUNACAJKAJEIApBJGxBBBDoDgsgBiEJCyAMIBdGDQMDQCAUKAIAIgogDCgCACIaTQ0CIAkgEUcEQCAJQewAaiEGAkAgCSgCAEECRg0AIAkoAkAiCkUNACAJKAJEIApBJGxBBBDoDgsgBiEJCyAXIAxBBGoiDEcNAAsMAwsgDUEBcQ0BDAMLIAxBBGohDEEBIQ0LIAogGkcNAQJAIAkgEUYNACAJQRRqKQIAITAgCSgCACEQIAn9AAIEITEgCEHQAmoiBkEYaiINIAlBHGooAgA2AgAgBkEQaiIGIDA3AwAgCCAx/QsD0AIgEEECRg0AIAkoAiAhCiAJKAJAIRUgCSgCRCEfIAkoAmQhICAJKAJoISEgCEGIAmoiFkEYaiANKAIANgIAIBZBEGogBikDADcDACAIQegBaiIGQQhqIAlBLGr9AAIA/QsDACAGQRhqIAlBPGooAgA2AgAgCEHIAWoiBkEIaiAJQdAAav0AAgD9CwMAIAZBGGogCUHgAGooAgA2AgAgCCAI/QAD0AL9CwOIAiAIIAkpAiQ3A+gBIAggCSkCSDcDyAEgCUHsAGohCUECIQ0MAwtB2IDDABDyDgALIBQoAgAhCkEAIQ0LQQAhECAIQeABakEANgIAIB5CADcDACAI/QwAAAAAAAAAAAAAAAAAAAAA/QsDyAEgCkEAIAcbISFBACAKIAcbISBBBCEfQQAhCkEAIRULIAUoAggiFiAFKAIARgRAIAVB6IDDABCdCAsgBSgCBCAWQewAbGoiBiAQNgIAIAYgCCkDiAI3AgQgBiAKNgIgIAYgCCkD6AE3AiQgBiAfNgJEIAYgFTYCQCAGIAj9AAPIAf0LAkggBkEMaiAIQYgCaiIKQQhq/QADAP0LAgAgBkEcaiAKQRhqKAIANgIAIAZBLGogCEHoAWoiCkEIav0AAwD9CwIAIAZBPGogCkEYaigCADYCACAGQdgAaiAeKQMANwIAIAZB4ABqIAhB4AFqKAIANgIAIAYgITYCaCAGICA2AmQgBSAWQQFqIgY2AggLIA5BAWsgBk8NBCAUKAIAIgYgGUkEQCAlIAZBDGxqIgYoAgAiCiAPTw0CIAYoAgQiECAPTw0DIAYoAggiBiAPTw0EIAUoAgQgC2shCyAdIBggBkEMbGoiBikCADcCACAdQQhqIAZBCGooAgA2AgAgCEGoAmoiFUEIaiAYIApBDGxqIgZBCGooAgA2AgAgCCAGKQIANwOoAiAcIBggEEEMbGoiBikCADcCACAcQQhqIAZBCGooAgA2AgAgCEHQAmogASAUKAIAEP4CICRBACAIKALQAhshBiAHRQRAIAYgACAVQZj9wgAgAiADIAZB2PvCAEEAIAYgBCALECMaIBMhBgwCCyAIICw4ApwDIAggKTgCmAMgCCArOAKUAyAIICo4ApADIAggJjgCjAMgCCAoOAKIAyAIICc4AoQDIAYgCEGEA2ogAiADIAhBqAJqQZj9wgBBACAGIAZB2PvCACAEIAsQIxogEyEGDAELCyAGIBlBpNPDABCFCwALIAogD0G008MAEIULAAsgECAPQcTTwwAQhQsACyAGIA9B1NPDABCFCwALIA5BAWsgBkH4gMMAEIULAAv+FAMQfQt/AX4jAEGAAWsiBCQAIAAoAgAhBQJAIAEEQCAEIAUqAgwiDCABKgIMIgqUIAUqAgAiByABKgIAIguUkyAFKgIEIgggASoCBCIJlJMgBSoCCCIGIAEqAggiDpSTOAIcIAQgBiAKlCAHIAmUIAwgDpSSIAggC5STkjgCGCAEIAYgC5QgCCAKlCAMIAmUIAcgDpSTkpI4AhQgBCAIIA6UIAwgC5QgByAKlJKSIAYgCZSTOAIQIAcgASoCFCIJlCAIIAEqAhAiDpSTIgogCpIhCiAGIA6UIAEqAhgiDSAHlJMiCyALkiELIAQgBSoCGCANIAwgCpQgByALlCAIIAggDZQgBiAJlJMiDSANkiINlJOSkpI4AiggBCAFKgIUIAkgDCALlCAGIA2UIAcgCpSTkpKSOAIkIAQgBSoCECAOIAwgDZQgCCAKlCAGIAuUk5KSkjgCIAwBCyAEQRBqIhdBGGogBUEYaigCADYCACAXQRBqIAVBEGopAgA3AwAgBCAF/QACAP0LAxALAkAgACgCBC0AAA0AIAAoAgwhFwJ9AkACfyAAKAIIIhotAAAiG0UEQCAXKAIARQ0CQRghFkEUIRhBHAwBCyAXKAIgQQFHDQFBOCEWQTQhGEE8CyAXaioCACEHIBcgGGoqAgAhBiAWIBdqKgIADAELQwAAAAAhB0MAAAAAIQZDAAAAAAshCCAXKAJIIhZBJGwiHCAXKAJEIgVqIRkgACgCECIYKgIIIAeTIQcgGCoCBCAIkyEIIBgqAgAgBpMhBgJAIBtFBEAgFkUNASAcQSRrIhZBJG5BAXFFBEAgBSAFKgIAIAaTOAIAIAUgBSoCBCAIkzgCBCAFIAUqAgggB5M4AgggBUEkaiEFCyAWQSRJDQEDQCAFIAUqAgAgBpM4AgAgBUEEaiIWIBYqAgAgCJM4AgAgBUEIaiIWIBYqAgAgB5M4AgAgBUEkaiIWIBYqAgAgBpM4AgAgBUEoaiIWIBYqAgAgCJM4AgAgBUEsaiIWIBYqAgAgB5M4AgAgGSAFQcgAaiIFRw0ACwwBCyAWRQ0AIBZBJGxBJGsiFkEkbkEBcUUEQCAFIAUqAgwgBpM4AgwgBSAFKgIQIAiTOAIQIAUgBSoCFCAHkzgCFCAFQSRqIQULIBZBJEkNAANAIAVBDGoiFiAWKgIAIAaTOAIAIAVBEGoiFiAWKgIAIAiTOAIAIAVBFGoiFiAWKgIAIAeTOAIAIAVBMGoiFiAWKgIAIAaTOAIAIAVBNGoiFiAWKgIAIAiTOAIAIAVBOGoiFiAWKgIAIAeTOAIAIBkgBUHIAGoiBUcNAAsLIBotAABFBEAgGEEIaigCACEFIBgpAgAhISAX/QwAAAAAAAAAAAAAAAAAAIA//QsCBCAXQQE2AgAgFyAhNwIUIBdBHGogBTYCAEEAIQUgFyABBH8gBEHQAGoiBUEYaiABQRhqKAIANgIAIAVBEGogAUEQaikCADcDACAEIAH9AAIA/QsDUEEBBUEACzYCICAXIAQpA1A3AiQgF0EsaiAEQdgAav0AAwD9CwIAIBdBPGogBEHoAGooAgA2AgAgACgCFCAEQRBqIAAoAhxBpITDACACIANBACAEQQAgBCAAKAIgKgIAIBcgACgCGCgCKBESABoMAQtBACEFIBcgAQR/IARB0ABqIgVBGGogAUEYaigCADYCACAFQRBqIAFBEGopAgA3AwAgBCAB/QACAP0LA1BBAQVBAAs2AgAgFyAEKQNQNwIEIBdBDGogBEHQAGoiAUEIav0AAwD9CwIAIBdBHGogBEHoAGooAgA2AgAgGEEIaigCACEFIBgpAgAhISAX/QwAAAAAAAAAAAAAAAAAAIA//QsCJCAXQQE2AiAgFyAhNwI0IBdBPGogBTYCACAAKAIUIQUgACgCGCEYIAQgBCoCHCIMOAJcIAQgBCoCGCIHjDgCWCAEIAQqAhQiCIw4AlQgBCAEKgIQIgaMOAJQIAQgDCAGIAQqAiQiCpQgCCAEKgIgIguUkyIJIAmSIgmUIAggCCAEKgIoIg6UIAcgCpSTIg0gDZIiDZQgBiAHIAuUIAYgDpSTIg8gD5IiD5STkiAOkzgCaCAEIAwgD5QgBiAJlCAHIA2Uk5IgCpM4AmQgBCAMIA2UIAcgD5QgCCAJlJOSIAuTOAJgIAUgASACIAMgACgCHEGkhMMAQQAgBEEAIAQgACgCICoCACAXIBgoAigREgAaCyAAKAIkIhYqAgAhByAWKgIEIQggFioCCCEGIARB+ABqIAAoAgwiBUHYAEHMACAAKAIIIhwtAAAbaiIBQQhqKAIANgIAIAQgASkCADcDcCAFKAJIIgEEQCAFKAJEIR0gAUEkbCEeIAAoAiwhGyAIQwrXIzySIhCMIREgBkMK1yM8kiISjCETIAdDCtcjPJIiFIwhFSAAKAIQIRkgACgCKCEXQQAhAUEAIRhBASEaA0ACQAJ9AkACQAJAIAEgHWoiAEEYaiIfKgIAQwAAAABdBEAgFyoCCCEHIBcqAgQhCCAXKgIAIQYgFioCCCEMIBYqAgQhCiAWKgIAIQsgBCoCeCEJIAQqAnQhDiAEKgJwIQ0gBEEIaiACIAMoArQBEQAAIAQoAggiIEUNASAEQdAAaiAgIARBEGogBEHwAGogBCgCDCgCFBECACAfKgIAIBkqAgQgBCoCVJIgCiAOjJggCJKTIAQqAnSMlCAZKgIAIAQqAlCSIAsgDYyYIAaSkyAEKgJwlJMgGSoCCCAEKgJYkiAMIAmMmCAHkpMgBCoCeJSTXkUNBQsgHC0AAA0CIAUoAgBBAXFFDQEgBSoCBCIHIABBBGoqAgAiCJQgBSoCCCIMIAAqAgAiDpSTIgYgBpIhCiAFKgIMIgsgDpQgByAAQQhqKgIAIgaUkyIJIAmSIQkgBSoCHCAGIAUqAhAiDSAKlCAHIAmUIAwgDCAGlCALIAiUkyIGIAaSIg+Uk5KSkiEGIAUqAhggCCANIAmUIAsgD5QgByAKlJOSkpIhCCAFKgIUIA4gDSAPlCAMIAqUIAsgCZSTkpKSDAMLQeyFwwBBG0GIhsMAENELAAsgAEEIaioCACEGIABBBGoqAgAhCCAAKgIADAELIAUoAiBBAXFFBEAgAEEUaioCACEGIABBEGoqAgAhCCAAQQxqKgIADAELIAUqAiQiByAAQRBqKgIAIgiUIAUqAigiDCAAQQxqKgIAIg6UkyIGIAaSIQogBSoCLCILIA6UIAcgAEEUaioCACIGlJMiCSAJkiEJIAUqAjwgBiAFKgIwIg0gCpQgByAJlCAMIAwgBpQgCyAIlJMiBiAGkiIPlJOSkpIhBiAFKgI4IAggDSAJlCALIA+UIAcgCpSTkpKSIQggBSoCNCAOIA0gD5QgDCAKlCALIAmUk5KSkgshB0EAIQACQCAHIBcqAgCTIgcgFV0NACAHIBReDQAgCCAXKgIEkyIHIBFdDQAgByAQXg0AIAYgFyoCCJMiByASXkUgByATXUF/c3EhAAsgGyAbKAIAIAAgGHRyNgIACyAaQR9xIRggGkEBaiEaIB4gAUEkaiIBRw0ACwsgBEGAAWokAAv9FgIXfwJ+IwBBQGoiAiQAIAJBCDYCJCACIAE2AiAgAkEoaiIBIAJBIGoQtQMgAigCLCEPAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJ/AkACfwJAAkACQAJ/AkACQAJ/AkACQAJAAkAgAigCKCIRQYGAgIB4RwRAIBFBgICAgHhHBEAgAigCJCIJRQ0EIAIoAjAhFyACIAlBAWsiBjYCJAJ/IAIoAiAiBCgCBCIDQQdNBEAgAkKBygA3AyhBASENIAEQnw0MAQsgBCADQQhrIgM2AgQgBCAEKAIAIgFBCGo2AgAgAkEYaiABKQAAEKgIIAIoAhghDSACKAIcCyELIA1BAXENJCALRQ0CQYCACCALIAtBgIAITxsiAUEDdCIGQQQQkQ4iCUUNGiACIAk2AiwgAiABNgIoQQAhASACQQA2AjAgBCgCACEHQQAhDQNAIANBBEkNJCAEIANBBGsiBjYCBCAEIAEgB2oiA0EEaiIKNgIAIAZBBEkNJCADKAAAIQUgBCAGQQRrIgM2AgQgBCAKQQRqNgIAIAooAAAhBiACKAIoIA1GBEAgAkEoakHUrcEAELQIIAIoAiwhCQsgASAJaiIKIAU2AgAgCkEEaiAGNgIAIAIgDUEBaiINNgIwIAFBCGohASALIA1HDQALIAIoAiwhCyACKAIoIhNBgoCAgHhIDSQgAigCJCEGDAMLQQBByLLBAEGQrcEAEKgKIQ8LIABBgICAgHg2AgAgACAPNgIEDCQLQQQhC0EAIQ0LIAZFDQMCfyACKAIgIgQoAgQiAUEHTQRAIAJCgcoANwMoQQEhAyACQShqEJ8NDAELIAQgAUEIayIBNgIEIAQgBCgCACIJQQhqNgIAIAJBEGogCSkAABCoCCACKAIQIQMgAigCFAshCSADQQFxDR0gCUUNAUHMmQMgCSAJQcyZA08bIgNBFGwiCkEEEJEOIgdFDRcgAiAHNgIsIAIgAzYCKEEAIQMgAkEANgIwIAQoAgAhEEEAIQoDQCABQQRJDRkgBCABQQRrIgE2AgQgBCADIBBqIgVBBGoiBzYCACABQQRJDRogBSgAACEIIAQgAUEEayIBNgIEIAQgB0EEaiIFNgIAAkACQCABQQRJDQAgBygAACEMIAQgAUEEayIBNgIEIAQgBUEEaiIHNgIAIAFBBEkNACAFKAAAIQ4gBCABQQRrIgE2AgQgBCAHQQRqIgU2AgAgAUEETw0BCyACQQA6ADsgAkElOwA5IAJBADYCPCACQQE6ADgMHgsgBzUAACEZIAQgAUEEayIBNgIEIAQgBUEEajYCACAZIAU1AABCIIaEIRkgAigCKCAKRgRAIAJBKGpB1K3BABCUCAsgAigCLCADaiIHIAg2AgAgB0EMaiAZNwIAIAdBCGogDjYCACAHQQRqIAw2AgAgAiAKQQFqIgo2AjAgA0EUaiEDIAkgCkcNAAsgAigCLCIJIAIoAigiEEGCgICAeE4NAhoMHQtBAUHIssEAQZCtwQAQqAohCwwfC0EAIQpBBAshCSAGQQFGDQMgAiAGQQJrNgIkAn8gBCgCBCIDQQdNBEAgAkKBygA3AyggAkEoahCfDSEGQQEMAQsgBCADQQhrIgM2AgQgBCAEKAIAIgFBCGo2AgAgAkEIaiABKQAAEKgIIAIoAgwhBiACKAIIC0EBcQ0EIAZFDQFBgIACIAYgBkGAgAJPGyIHQQV0IgFBBBCRDiIFRQ0XQQAhASACQQA2AjAgAiAFNgIsIAIgBzYCKCAEKAIAIQhBACEHA0ACQAJAAkAgA0EETwRAIAQgA0EEayIDNgIEIAQgCEEEaiIFNgIAIANBA0sNAQsgAkKBygA3AzggAkE4ahCfDSEGDAELIAgoAAAhDiAEIANBBGsiAzYCBCAEIAVBBGoiCDYCAAJAIANBBE8EQCAFKAAAIRIgBCADQQRrIgM2AgQgBCAIQQRqIgU2AgAgA0EDSw0BCyACQoHKADcDOCACQThqEJ8NIQYMAQsgCCgAACEUIAQgA0EEayIDNgIEIAQgBUEEaiIINgIAAkACQCADQQRJDQAgBSgAACEVIAQgA0EEayIDNgIEIAQgCEEEaiIFNgIAIANBBEkNACAIKAAAIRYgBCADQQRrIgM2AgQgBCAFQQRqIgg2AgAgA0EDSw0BCyACQQA6ADsgAkElOwA5IAJBADYCPCACQQE6ADggAkE4ahCfDSEGDAELIAU1AAAhGSAEIANBBGsiAzYCBCAEIAhBBGoiBTYCACADRQRAIAJCgcoANwM4IAJBOGoQnw0hBgwBCyAINQAAIRogBCADQQFrIgM2AgQgBCAFQQFqIgg2AgAgBS0AACIMQQJJDQFBDEEEEJEOIgZFDRsgBiAMOgAEIAZBgoCAgHg2AgALIAIoAigiAUUNBiACKAIsIAFBBXRBBBDoDgwGCyAaQiCGIBmEIRkgAigCKCAHRgRAIAJBKGpB1K3BABDCCAsgAigCLCABaiIFIA42AgAgBUEcaiAMOgAAIAVBFGogGTcCACAFQRBqIBY2AgAgBUEMaiAVNgIAIAVBCGogFDYCACAFQQRqIBI2AgAgAiAHQQFqIgc2AjAgAUEgaiEBIAYgB0cNAAsgAigCLCIGIAIoAigiAUGCgICAeE4NAhoMBAtBAkHIssEAQZCtwQAQqAohCQwZC0EAIQFBACEHQQQLIQQgAkEoaiIFIAJBIGoiCBClBCACKAIsIg4gAigCKCIGQYGAgIB4Rg0DGiAGQYCAgIB4Rg0CIAIoAjAhFCAFIAgQpQQgAigCLCISIAIoAigiA0GBgICAeEYNBRogA0GAgICAeEYNBCACKAIwIRUgBSAIEKUEIAIoAiwhBSACKAIoIghBgICAgHhrDgIHCAYLQQNByLLBAEGQrcEAEKgKIQYLIABBgICAgHg2AgAgACAGNgIEDA0LQQRByLLBAEGQrcEAEKgKCyEDIABBgICAgHg2AgAgACADNgIEDAoLQQVByLLBAEGQrcEAEKgKCyEMIABBgICAgHg2AgAgACAMNgIEDAcLIAIoAjAhFiACQShqIAJBIGoQpQQgAigCLCEMIAIoAigiGEGAgICAeGsOAgMEAgtBBkHIssEAQZCtwQAQqAohBQsgAEGAgICAeDYCACAAIAU2AgQMAwsgACACKAIwNgJcIAAgDDYCWCAAIBg2AlQgACAWNgJQIAAgBTYCTCAAIAg2AkggACAVNgJEIAAgEjYCQCAAIAM2AjwgACAUNgI4IAAgDjYCNCAAIAY2AjAgACAHNgIsIAAgBDYCKCAAIAE2AiQgACAKNgIgIAAgCTYCHCAAIBA2AhggACANNgIUIAAgCzYCECAAIBM2AgwgACAXNgIIIAAgDzYCBCAAIBE2AgAMEgtBB0HIssEAQZCtwQAQqAohDAsgAEGAgICAeDYCACAAIAw2AgQgCEUNACAFIAhBAnRBBBDoDgsgA0UNACASIANBAnRBBBDoDgsgBkUNACAOIAZBAnRBBBDoDgsgAUUNACAEIAFBBXRBBBDoDgsgEEUNCCAJIBBBFGxBBBDoDgwIC0EEIAZBxK3BABDXDQALQQQgCkHErcEAENcNAAsgAkKBygA3AzgMAwsgAkKBygA3AzgMAgtBBCABQcStwQAQ1w0AC0EEQQxB+MrEACgCACIAQcwIIAAbEQAAAAsgAkE4ahCfDSEJIAIoAigiAUUNACACKAIsIAFBFGxBBBDoDgsgAEGAgICAeDYCACAAIAk2AgQLIBNFDQIgCyATQQN0QQQQ6A4MAgsgAkKBygA3AzggAkE4ahCfDSELIAIoAigiAUUNACACKAIsIAFBA3RBBBDoDgsgAEGAgICAeDYCACAAIAs2AgQLIBFFDQAgDyARQQxsQQQQ6A4LIAJBQGskAAv8FAMQfQt/AX4jAEGAAWsiBCQAIAAoAgAhBQJAIAEEQCAEIAUqAgwiDCABKgIMIgqUIAUqAgAiByABKgIAIguUkyAFKgIEIgggASoCBCIJlJMgBSoCCCIGIAEqAggiDpSTOAIcIAQgBiAKlCAHIAmUIAwgDpSSIAggC5STkjgCGCAEIAYgC5QgCCAKlCAMIAmUIAcgDpSTkpI4AhQgBCAIIA6UIAwgC5QgByAKlJKSIAYgCZSTOAIQIAcgASoCFCIJlCAIIAEqAhAiDpSTIgogCpIhCiAGIA6UIAEqAhgiDSAHlJMiCyALkiELIAQgBSoCGCANIAwgCpQgByALlCAIIAggDZQgBiAJlJMiDSANkiINlJOSkpI4AiggBCAFKgIUIAkgDCALlCAGIA2UIAcgCpSTkpKSOAIkIAQgBSoCECAOIAwgDZQgCCAKlCAGIAuUk5KSkjgCIAwBCyAEQRBqIhdBGGogBUEYaigCADYCACAXQRBqIAVBEGopAgA3AwAgBCAF/QACAP0LAxALAkAgACgCBC0AAA0AIAAoAgwhFwJ9AkACfyAAKAIIIhotAAAiG0UEQCAXKAIARQ0CQRghGEEUIRZBHAwBCyAXKAIgQQFHDQFBOCEYQTQhFkE8CyAXaioCACEHIBYgF2oqAgAhBiAXIBhqKgIADAELQwAAAAAhB0MAAAAAIQZDAAAAAAshCCAXKAKAASIFIBcoAoQBIhZBBnRqIRkgACgCECIYKgIIIAeTIQcgGCoCBCAIkyEIIBgqAgAgBpMhBgJAIBtFBEAgFkUNASAWQQFxBEAgBSAFKgIAIAaTOAIAIAUgBSoCBCAIkzgCBCAFIAUqAgggB5M4AgggBUFAayEFCyAWQf///x9xQQFGDQEDQCAFIAUqAgAgBpM4AgAgBUEEaiIWIBYqAgAgCJM4AgAgBUEIaiIWIBYqAgAgB5M4AgAgBUFAayIWIBYqAgAgBpM4AgAgBUHEAGoiFiAWKgIAIAiTOAIAIAVByABqIhYgFioCACAHkzgCACAZIAVBgAFqIgVHDQALDAELIBZFDQAgFkEBcQRAIAUgBSoCDCAGkzgCDCAFIAUqAhAgCJM4AhAgBSAFKgIUIAeTOAIUIAVBQGshBQsgFkH///8fcUEBRg0AA0AgBUEMaiIWIBYqAgAgBpM4AgAgBUEQaiIWIBYqAgAgCJM4AgAgBUEUaiIWIBYqAgAgB5M4AgAgBUHMAGoiFiAWKgIAIAaTOAIAIAVB0ABqIhYgFioCACAIkzgCACAFQdQAaiIWIBYqAgAgB5M4AgAgGSAFQYABaiIFRw0ACwsgGi0AAEUEQCAYQQhqKAIAIQUgGCkCACEhIBf9DAAAAAAAAAAAAAAAAAAAgD/9CwIEIBdBATYCACAXICE3AhQgF0EcaiAFNgIAQQAhBSAXIAEEfyAEQdAAaiIFQRhqIAFBGGooAgA2AgAgBUEQaiABQRBqKQIANwMAIAQgAf0AAgD9CwNQQQEFQQALNgIgIBcgBCkDUDcCJCAXQSxqIARB2ABq/QADAP0LAgAgF0E8aiAEQegAaigCADYCACAAKAIUIARBEGogACgCHEG45cEAIAIgA0EAIARBACAEIAAoAiAqAgAgFyAAKAIYKAIoERIAGgwBC0EAIQUgFyABBH8gBEHQAGoiBUEYaiABQRhqKAIANgIAIAVBEGogAUEQaikCADcDACAEIAH9AAIA/QsDUEEBBUEACzYCACAXIAQpA1A3AgQgF0EMaiAEQdAAaiIBQQhq/QADAP0LAgAgF0EcaiAEQegAaigCADYCACAYQQhqKAIAIQUgGCkCACEhIBf9DAAAAAAAAAAAAAAAAAAAgD/9CwIkIBdBATYCICAXICE3AjQgF0E8aiAFNgIAIAAoAhQhBSAAKAIYIRYgBCAEKgIcIgw4AlwgBCAEKgIYIgeMOAJYIAQgBCoCFCIIjDgCVCAEIAQqAhAiBow4AlAgBCAMIAYgBCoCJCIKlCAIIAQqAiAiC5STIgkgCZIiCZQgCCAIIAQqAigiDpQgByAKlJMiDSANkiINlCAGIAcgC5QgBiAOlJMiDyAPkiIPlJOSIA6TOAJoIAQgDCAPlCAGIAmUIAcgDZSTkiAKkzgCZCAEIAwgDZQgByAPlCAIIAmUk5IgC5M4AmAgBSABIAIgAyAAKAIcQbjlwQBBACAEQQAgBCAAKAIgKgIAIBcgFigCKBESABoLIAAoAiQiGCoCACEHIBgqAgQhCCAYKgIIIQYgBEH4AGogACgCDCIFQZQBQYgBIAAoAggiHC0AABtqIgFBCGooAgA2AgAgBCABKQIANwNwIAUoAoQBIgEEQCAFKAKAASEdIAFBBnQhHiAAKAIsIRsgCEMK1yM8kiIQjCERIAZDCtcjPJIiEowhEyAHQwrXIzySIhSMIRUgACgCECEZIAAoAighF0EAIQFBACEWQQEhGgNAAkACfQJAAkACQCABIB1qIgBBGGoiHyoCAEMAAAAAXQRAIBcqAgghByAXKgIEIQggFyoCACEGIBgqAgghDCAYKgIEIQogGCoCACELIAQqAnghCSAEKgJ0IQ4gBCoCcCENIARBCGogAiADKAK0AREAACAEKAIIIiBFDQEgBEHQAGogICAEQRBqIARB8ABqIAQoAgwoAhQRAgAgHyoCACAZKgIEIAQqAlSSIAogDoyYIAiSkyAEKgJ0jJQgGSoCACAEKgJQkiALIA2MmCAGkpMgBCoCcJSTIBkqAgggBCoCWJIgDCAJjJggB5KTIAQqAniUk15FDQULIBwtAAANAiAFKAIAQQFxRQ0BIAUqAgQiByAAQQRqKgIAIgiUIAUqAggiDCAAKgIAIg6UkyIGIAaSIQogBSoCDCILIA6UIAcgAEEIaioCACIGlJMiCSAJkiEJIAUqAhwgBiAFKgIQIg0gCpQgByAJlCAMIAwgBpQgCyAIlJMiBiAGkiIPlJOSkpIhBiAFKgIYIAggDSAJlCALIA+UIAcgCpSTkpKSIQggBSoCFCAOIA0gD5QgDCAKlCALIAmUk5KSkgwDC0GA58EAQRtBxPDBABDRCwALIABBCGoqAgAhBiAAQQRqKgIAIQggACoCAAwBCyAFKAIgQQFxRQRAIABBFGoqAgAhBiAAQRBqKgIAIQggAEEMaioCAAwBCyAFKgIkIgcgAEEQaioCACIIlCAFKgIoIgwgAEEMaioCACIOlJMiBiAGkiEKIAUqAiwiCyAOlCAHIABBFGoqAgAiBpSTIgkgCZIhCSAFKgI8IAYgBSoCMCINIAqUIAcgCZQgDCAMIAaUIAsgCJSTIgYgBpIiD5STkpKSIQYgBSoCOCAIIA0gCZQgCyAPlCAHIAqUk5KSkiEIIAUqAjQgDiANIA+UIAwgCpQgCyAJlJOSkpILIQdBACEAAkAgByAXKgIAkyIHIBVdDQAgByAUXg0AIAggFyoCBJMiByARXQ0AIAcgEF4NACAGIBcqAgiTIgcgEl5FIAcgE11Bf3NxIQALIBsgGygCACAAIBZ0cjYCAAsgGkEfcSEWIBpBAWohGiAeIAFBQGsiAUcNAAsLIARBgAFqJAALtxYDFH8KfQV+IwBBkAJrIgYkACAAKAIAIQgCQCABBEAgBiABKgIIIhsgCCoCCCIflCABKgIEIhwgCCoCBCIglCABKgIAIh0gCCoCACIhlCABKgIMIh4gCCoCDCIalJKSkjgCHCAGIBwgIZQgHiAflCAdICCUk5IgGyAalJM4AhggBiAeICCUIB0gH5SSIBwgGpSTIBsgIZSTOAIUIAYgGyAglCAeICGUIB0gGpSTIBwgH5STkjgCECAcIAgqAhAgASoCEJMiH5QgHSAIKgIUIAEqAhSTIiCUkyIaIBqSISIgGyAglCAcIAgqAhggASoCGJMiIZSTIhogGpIhIyAGICEgHiAilCAcICOUIB0gHSAhlCAbIB+UkyIaIBqSIhqUk5KSOAIoIAYgICAeIBqUIB0gIpQgGyAjlJOSkjgCJCAGIB8gHiAjlCAbIBqUIBwgIpSTkpI4AiAMAQsgBkEQaiIKQRhqIAhBGGooAgA2AgAgCkEQaiAIQRBqKQIANwMAIAYgCP0AAgD9CwMQCyAAKAIMIhQgACgCCCIVIAAoAgQiGS0AACIPGygCACEWIAAoAhAiDCgCBCIJIAwpAxAgFSAUIA8bKAIAIhetIBatQiCGhIUiJEIgiCIlQrfTsIUMfiAkQv////8PgyIkQt2h8csMfoUgJULdofHLDH4gJEK307CFDH6FQiCJhSImpyIYcSELICZCGYgiKEL/AINCgYKEiJCgwIABfiElIAwoAgAhCEEAIQoCQAJAAkACQAJAAkADQAJAICUgCCALaikAACInhSIkQoGChIiQoMCAAX0gJEJ/hYNCgIGChIiQoMCAf4MiJEIAUgRAA0AgCCAkeqdBA3YgC2ogCXFBBHRrIhFBEGsoAgAgF0YEQCAWIBFBDGsoAgBGDQMLICRCAX0gJIMiJEIAUg0ACwsgJyAnQgGGg0KAgYKEiJCgwIB/g0IAUg0CIAsgCkEIaiIKaiAJcSELDAELCyARQQhrIg4oAgAiCCAAKAIUIgooAggiAU8NAiAKKAIEIAhBqAFsaiIHKQJ8ISQgB0KAgICAwAA3AnwgBkH4AWogB0GEAWoiASgCADYCAEEAIQsgAUEANgIAIAYgJDcD8AEgBygCYCIBQQZ0IQ0gAUH///8fSw0BIA1B8P///wdLDQEgBygCXCEIIAcoAmQhDCAHKQJQISUgBygCTCESIAcpAkQhJCAHKAJAIRQgBygCpAEhFSAHKAKgASEWAkAgDUUEQEEQIRBBACEKDAELQRAhCyABIQogDUEQEJEOIhBFDQILIA0EQCAQIAggDfwKAAALIAZB6ABqIhcgB0HwAGooAgA2AgAgBkHcAGogBkH4AWooAgA2AQAgBkHIAGoiEyAHQZABaigCADYCACAGQThqIg8gB0GcAWooAgA2AgAgBiAHKQJoNwNgIAYgBikD8AE3AVQgBiAHKQKIATcDQCAGIAcpApQBNwMwIAcoAnQhGCAHLwF4IQkgBkHwAGoiCEEQaiINIAdBEGr9AAIA/QsDACAIQTBqIgggB0Ewav0AAgD9CwMAIAYgB/0AAgD9CwNwIAYgB/0AAiD9CwOQASAOIAAoAhgiCygCCDYCACARQQRrIAAoAhwtAAA6AAAgCygCCCIRIAsoAgBGBEAgC0Gg8sEAEJcICyALKAIEIBFBqAFsaiIHIAb9AANw/QsCACAHIAw2AmQgByABNgJgIAcgEDYCXCAHIAo2AlggByAlNwJQIAcgEjYCTCAHICQ3AkQgByAUNgJAIAcgBikDYDcCaCAHQTBqIAj9AAMA/QsCACAHQSBqIAZBkAFq/QADAP0LAgAgB0EQaiAN/QADAP0LAgAgB0HwAGogFygCADYCACAHIAk7AXggByAYNgJ0IAcgFTYCpAEgByAWNgKgASAHIAYpAVI3AXogB0GAAWogBkHYAGopAQA3AQAgB0GQAWogEygCADYCACAHIAYpA0A3AogBIAdBnAFqIA8oAgA2AgAgByAGKQMwNwKUASALIBFBAWoiATYCCAwFCyAAKAIcIQkgACgCGCILKAIIIRIgD0UEQCAAKAIgKAIAIggEQCAGQbABaiIKQRhqIAhBGGooAgA2AgAgCkEQaiAIQRBqKQIANwMAIAYgCP0AAgD9CwOwAUEBIRMLIBUoAgAhCiAUKAIAIQ8gAUUNBAwDCyABBEAgBkGwAWoiCkEYaiABQRhqKAIANgIAIApBEGogAUEQaikCADcDACAGIAH9AAIA/QsDsAFBASETCyAUKAIAIQogFSgCACEPIAAoAiAoAgAiAQ0CDAMLIAsgDUGA/MEAENcNAAsgCCABQZDywQAQhQsACyAGQdABaiIIQRhqIAFBGGooAgA2AgAgCEEQaiABQRBqKQIANwMAIAYgAf0AAgD9CwPQAUEBIQ0LIAktAAAhCCALKAIAIBJGBEAgC0Gw8sEAEJcICyALKAIEIBJBqAFsaiIJIBM2AgAgCSAGKQOwATcCBCAJIA02AiAgCSAGKQPQATcCJCAJQoCAgICAAjcCWCAJQQA2AnwgCUEANgJMIAlBADYCQCAJQQxqIAZBsAFqIgFBCGr9AAMA/QsCACAJQRxqIAFBGGooAgA2AgAgCUEsaiAGQdABaiIBQQhq/QADAP0LAgAgCUE8aiABQRhqKAIANgIAIAlB+ABqQQA7AQAgCUHwAGpCADcCACAJ/QwAAAAAAAAAAAAAAAAAAAAA/QsCYCAJQZQBakIANwIAIAlBBDYCgAEgCUGcAWpBADYCACAJ/QwAAAAAAAAAAAAAAAAAAAAA/QsChAEgCSAPNgKgASAJIAo2AqQBIAsgEkEBajYCCCAGIAg6APwBIAYgEjYC+AEgBiAWNgL0ASAGIBc2AvABIAwoAgQiDSAYcSIOIAwoAgAiCWopAABCgIGChIiQoMCAf4MiJFAEQEEIIRADQCAOIBBqIQEgEEEIaiEQIAkgASANcSIOaikAAEKAgYKEiJCgwIB/gyIkUA0ACwsgDCgCCCEIIAkgJHqnQQN2IA5qIA1xIg5qLAAAIgFBAE4EQCAJIAkpAwBCgIGChIiQoMCAf4N6p0EDdiIOai0AACEBCwJAIAFBAXEiCiAIRXFFBEAgCSAOaiAop0H/AHEiAToAACAMIAggCms2AgggCSAOQQhrIA1xakEIaiABOgAAIAwgDCgCDEEBajYCDCAJIA5BBHRrIgFBEGsgBv0AAvAB/QsCAAwBCyAGQQhqIAwgDEEQahCKAiAMICYgDCgCACAMKAIEICYQhQogBkHwAWoQ8AohAQsgAUEIayEOIAsoAgghAQsCQAJAIA4oAgAiCiABSQRAIAsoAgQgCkGoAWxqIQggACgCKCEKIAAoAiQhASAZLQAADQEgBiAGKgIcIh44AvwBIAYgBioCGCIbjDgC+AEgBiAGKgIUIhyMOAL0ASAGIAYqAhAiHYw4AvABIAYgHiAdIAYqAiQiIpQgHCAGKgIgIiOUkyIaIBqSIh+UIBwgHCAGKgIoIiCUIBsgIpSTIhogGpIiIZQgHSAbICOUIB0gIJSTIhogGpIiGpSTkiAgkzgCiAIgBiAeIBqUIB0gH5QgGyAhlJOSICKTOAKEAiAGIB4gIZQgGyAalCAcIB+Uk5IgI5M4AoACIAEgBkHwAWogACgCLCAAKAIwIAIgAyAAKAI0IgEoAgAgASgCBCAEIAUgACgCOCoCACAIIAooAigREgAaDAILIAogAUHA8sEAEIULAAsgASAGQRBqIAIgAyAAKAIsIAAoAjAgBCAFIAAoAjQiASgCACABKAIEIAAoAjgqAgAgCCAKKAIoERIAGgsgBkGQAmokAAu6FQIKfwF+IwBBIGsiCCQAIAAQVSAAKAIUIQQCQAJAAkACQAJAIAAoAhBBAWsOAgIBAAsgBCAEKAKEAiIBQQFrNgKEAiABQQFHDQIgBCAEKALIASIHIAQoAkAiA3I2AkACQCADIAdxRQRAIAQtAIABIQEgBEEBOgCAASAIIAE6AAcgAUEBRg0BAkAgBCgCjAEiAUUNACAEKAKIASIHIQIgAUEMbCIJQQxrIgZBDG4iAUEHcUEHRwRAQQAgAUEBakEHcWshAQNAIAIoAgAiBSgCDCEKIAUgCkECIAobNgIMIAJBDGohAiABQQFqIgENAAsLIAZB1ABJDQAgByAJaiEFA0AgAigCACIBKAIMIQYgASAGQQIgBhs2AgwgAkEMaigCACIBKAIMIQYgASAGQQIgBhs2AgwgAkEYaigCACIBKAIMIQYgASAGQQIgBhs2AgwgAkEkaigCACIBKAIMIQYgASAGQQIgBhs2AgwgAkEwaigCACIBKAIMIQYgASAGQQIgBhs2AgwgAkE8aigCACIBKAIMIQYgASAGQQIgBhs2AgwgAkHIAGooAgAiASgCDCEGIAEgBkECIAYbNgIMIAJB1ABqKAIAIgEoAgwhBiABIAZBAiAGGzYCDCAFIAJB4ABqIgJHDQALCyAEKAKYASEBQQAhBiAEQQA2ApgBIAEEQCAEKAKUASECIAFBDGwhBwNAIAhBCGoiBUEIaiACQQhqKAIANgIAIAggAikCACILNwMIIAunIgkoAgwhASAJIAEgCCgCDCABGzYCDCAJIAkoAgAiAUEBazYCACABQQFGBEAgBRDXCwsgAkEMaiECIAdBDGsiBw0ACwsgBCgCjAFFBEAgBCgCmAFFIQYLIARBADoAgAEgBCAGOgCcASAEKALIASEHCyADIAdBf3NxIQYgBCgCACECA0ACQCAEKALMASAHQQFrIAJxIgVBHGxqKAIYIgEgAkEBakcEQCAGIAIiAUcNASAELQCIAiEBIARBAToAiAIgAUUNBiAEKALQASIBBEAgBCgCzAEgAUEcbEEEEOgOCyAEQYQBahCkCCAEQaQBahCkCCAEQcACQcAAEOgODAYLIAQoAsABIAVBAWpLDQAgBCgCxAEiASACQQAgAWtxaiEBCyAEKALIASEHIAEhAgwACwALDAMLIAQgBCgCPCIBQQFrNgI8IAFBAUcNASAEEOcBIAQtAEAhASAEQQE6AEAgAUUNASAEQQRqEKQIIARBHGoQpAggBEHEAEEEEOgODAELIAQgBCgCxAEiAUEBazYCxAEgAUEBRw0AIAQgBCgCQCIBQQFyNgJAIAFBAXFFBEAgBCgCQCIFQT5xQT5GBEADQCAEKAJAIgVBPnFBPkYNAAsLIAQoAgQhAiAEQQA2AgQCQCAEKAIAIgdBAXYiASAFQQF2IgZGIgUNACACDQADQCAEKAIEIQIgBEEANgIEIAJFDQALCyAFRQRAA0ACQCABQR9xIgFBH0YEQANAIAIoAgAiAUUNAAsgAkHoBkEEEOgOIAEhAgwBCyACIAFBHGxqQRxqLQAAQQFxIQEDQCABRQ0ACwsgBiAHQQJqIgdBAXYiAUcNAAsLIAIEQCACQegGQQQQ6A4LIAQgB0F+cTYCAAsgBC0AyAEhASAEQQE6AMgBIAFFDQAgBCgCBCEBIAQoAgBBfnEiAiAEKAJAQX5xIgZHBEADQCACQT5xQT5GBEAgASgCACEFIAFB6AZBBBDoDiAFIQELIAYgAkECaiICRw0ACwsgAQRAIAFB6AZBBBDoDgsgBEGEAWoQpAggBEGAAkHAABDoDgsgACgCHCEDAkACQAJAAkAgACgCGEEBaw4CAgEACyADIAMoAoQCIgBBAWs2AoQCIABBAUcNAiADIAMoAsgBIgcgAygCQCIKcjYCQAJAIAcgCnFFBEAgAy0AgAEhACADQQE6AIABIAggADoAByAAQQFGDQECQCADKAKMASIARQ0AIAMoAogBIgkhAiAAQQxsIgZBDGsiBUEMbiIAQQdxQQdHBEBBACAAQQFqQQdxayEBA0AgAigCACIAKAIMIQcgACAHQQIgBxs2AgwgAkEMaiECIAFBAWoiAQ0ACwsgBUHUAEkNACAGIAlqIQEDQCACKAIAIgAoAgwhBSAAIAVBAiAFGzYCDCACQQxqKAIAIgAoAgwhBSAAIAVBAiAFGzYCDCACQRhqKAIAIgAoAgwhBSAAIAVBAiAFGzYCDCACQSRqKAIAIgAoAgwhBSAAIAVBAiAFGzYCDCACQTBqKAIAIgAoAgwhBSAAIAVBAiAFGzYCDCACQTxqKAIAIgAoAgwhBSAAIAVBAiAFGzYCDCACQcgAaigCACIAKAIMIQUgACAFQQIgBRs2AgwgAkHUAGooAgAiACgCDCEFIAAgBUECIAUbNgIMIAEgAkHgAGoiAkcNAAsLIAMoApgBIQBBACEFIANBADYCmAEgAARAIAMoApQBIQIgAEEMbCEHA0AgCEEIaiIBQQhqIAJBCGooAgA2AgAgCCACKQIAIgs3AwggC6ciBigCDCEAIAYgACAIKAIMIAAbNgIMIAYgBigCACIAQQFrNgIAIABBAUYEQCABENcLCyACQQxqIQIgB0EMayIHDQALCyADKAKMAUUEQCADKAKYAUUhBQsgA0EAOgCAASADIAU6AJwBIAMoAsgBIQcLIAogB0F/c3EhBSADKAIAIQIDQAJAIAMoAswBIAdBAWsgAnEiAEE0bGooAjAiASACQQFqRwRAIAUgAiIBRw0BIAMtAIgCIQAgA0EBOgCIAiAARQ0GIAMoAtABIgAEQCADKALMASAAQTRsQQQQ6A4LIANBhAFqEKQIIANBpAFqEKQIIANBwAJBwAAQ6A4MBgsgAygCwAEgAEEBaksNACADKALEASIAIAJBACAAa3FqIQELIAMoAsgBIQcgASECDAALAAsMAwsgAyADKAI8IgBBAWs2AjwgAEEBRw0BIAMQ5wEgAy0AQCEAIANBAToAQCAARQ0BIANBBGoQpAggA0EcahCkCCADQcQAQQQQ6A4MAQsgAyADKALEASIAQQFrNgLEASAAQQFHDQAgAyADKAJAIgBBAXI2AkAgAEEBcUUEQCADKAJAIgBBPnFBPkYEQANAIAMoAkAiAEE+cUE+Rg0ACwsgAygCBCECIANBADYCBAJAIAMoAgAiB0EBdiIBIABBAXYiBUYiAA0AIAINAANAIAMoAgQhAiADQQA2AgQgAkUNAAsLIABFBEADQAJAIAFBH3EiAEEfRgRAA0AgAigCACIARQ0ACyACQdAMQQQQ6A4gACECDAELIAIgAEE0bGpBNGotAABBAXEhAANAIABFDQALCyAFIAdBAmoiB0EBdiIBRw0ACwsgAgRAIAJB0AxBBBDoDgsgAyAHQX5xNgIACyADLQDIASEAIANBAToAyAEgAEUNACADKAIEIQEgAygCAEF+cSICIAMoAkBBfnEiBUcEQANAIAJBPnFBPkYEQCABKAIAIQAgAUHQDEEEEOgOIAAhAQsgBSACQQJqIgJHDQALCyABBEAgAUHQDEEEEOgOCyADQYQBahCkCCADQYACQcAAEOgOCyAIQSBqJAAPCyAIQgA3AhQgCEKBgICAwAA3AgwgCEGsusEANgIIIAhBB2ogCEEIakG0usEAEPsMAAutFwQFfwl9An4BeyMAQfABayIGJAAgBCgCCCICBEAgAkGoAWwgBCgCBCICaiEJA0ACQCACIgMoAoQBIghFBEBDAAAAACELDAELIAMoAoABIQdDAAAAACELAkAgCEEBcUUEQCAHIQIgDCENDAELIAdBQGshAiAHKgI0Ig1DAAAAAJIhCyAMIA1dRQRAIAwhDQwBCyADKgJwIQ4gAyoCbCEPIAMqAmghECANIQwLIAhB////H3FBAUYNACAHIAhBBnRqIQcgDSEMA0AgAkE0aioCACINIAxeBEAgAyoCcCEOIAMqAmwhDyADKgJoIRAgDSEMCyALIA2SIQsgAkH0AGoqAgAiDSAMXgRAIAMqAnAhDiADKgJsIQ8gAyoCaCEQIA0hDAsgCyANkiELIAcgAkGAAWoiAkcNAAsLIBEgCyADKgJwlJIhESASIAsgAyoCbJSSIRIgEyALIAMqAmiUkiETIAkgA0GoAWoiAkcNAAsLIAT9AAIMIRZDAAAAAEMAAIA/IAGVIAGLQwjlPB5fGyILIAyUIQEgCyARlCEMIAsgEpQhDSALIBOUIQsgACgCDCEDAkACQAJAAkACQAJAAkACQAJAAkAgACgCCEEBaw4CBwEACyAGQYCU69wDNgKAASAGQcABakEANgIAIAb9DAAAAAAAAAAAAAAAAAAAAAD9CwOwASADKAJAIgQgAygCyAEiB3EEQEEBIQAMAgsDQAJAAkAgAygCzAEgB0EBayAEcSIHQTRsaiIAKAIwIgIgBEcEQCADKALEASIAIAJqIARBAWpHDQIgACADKAIAaiAERg0BDAILIAMoAkAiCCAERiECIAMCfyADKALAASAHQQFqTQRAIAMoAsQBIgcgBEEAIAdrcWoMAQsgBEEBagsgCCACGzYCQCACRQ0BIAYgADYCsAEgBiAEQQFqIgI2ArQBIAAgAjYCMCAAIAE4AiwgACAOOAIoIAAgDzgCJCAAIBA4AiAgACAFOAIcIAAgDDgCGCAAIA04AhQgACALOAIQIAAgFv0LAgAgA0GgAWoQvQNBAiEADAQLAkAgBigCgAEiAEGAlOvcA0YNACAGKQN4IRQQkQ0CQCAUIAYpAzAiFVEEQCAGKAI4IABPDQEMAgsgFCAVVg0BC0EAIQAMBAtB7M7EACgCAEUEQBDjCQtB8M7EACgCACEAQfDOxABBADYCAAJAIABFBEAgBhCVByIANgIYIAYgAzYCNCAGIAZB+ABqNgI4IAYgBkGwAWo2AjAgBkEwaiAGQRhqIgIQrwIgACAAKAIAIgBBAWs2AgAgAEEBRw0BIAIQ1wsMAQsgAEIANwIMIAYgADYCGCAGIAM2AjQgBiAGQfgAajYCOCAGIAZBsAFqNgIwIAZBMGoiBCAGQRhqEK8CQfDOxAAoAgAhAkHwzsQAIAA2AgAgBiACNgIwIAJFDQAgAiACKAIAIgBBAWs2AgAgAEEBRw0AIAQQ1wsLQQEhACADKAJAIgQgAygCyAEiB3FFDQEMAwsgAygCQCIEIAMoAsgBIgdxRQ0AC0EBIQAMAQsgBkGAlOvcAzYCECAGQShqQQA2AgAgBv0MAAAAAAAAAAAAAAAAAAAAAP0LAxggBiADLQAAIgA6ADAgA0EBOgAAIABBAUYNAQJAAkAgAygCJCIARQ0AIABBDGwhCSADKAIgIQpBACEEQQEhBwNAAkAgBCAKaiICKAIAIgAoAhRBgI/EAEYNACAAIAAoAgwiCCACQQRqKAIAIAgbNgIMIAgNACAHQQFrIQggAkEIaigCACICBEAgACACNgIQCyADKAIkIgAgCE0NBiADKAIgIARqIgQoAgAhAiAEQQRqKQIAIRQgACAHa0EMbCIHBEAgBCAEQQxqIAf8CgAACyADIABBAWs2AiQgAkUNAiAGIAI2AjAgBiAUNwI0IAYgFEIgiKciADYCKCADQQA6AAAgFEKAgICAEFQNByAAQQE6ADQgACABOAIwIAAgDjgCLCAAIA84AiggACAQOAIkIAAgBTgCICAAIAw4AhwgACANOAIYIAAgCzgCFCAAIBb9CwIEIABBATYCACACIAIoAgAiAEEBazYCACAGQQI2ArABIABBAUcNAyAGQTBqENcLDAMLIAdBAWohByAJIARBDGoiBEcNAAsLIAMtADRFBEAgBiABOAJsIAYgDjgCaCAGIA84AmQgBiAQOAJgIAYgBTgCXCAGIAw4AlggBiANOAJUIAYgCzgCUCAGIBb9CwJAIAYgAzYCPCAGIAM2AjQgBiAGQQhqNgI4IAYgBkEYajYCMEHszsQAKAIARQRAEOMJC0HwzsQAKAIAIQBB8M7EAEEANgIAAkAgAEUEQCAGEJUHIgA2AnQgBkEANgIwIAYgATgC7AEgBiAOOALoASAGIA84AuQBIAYgEDgC4AEgBiAFOALcASAGIAw4AtgBIAYgDTgC1AEgBiALOALQASAGIBb9CwLAASAGIAM2ArwBIAYgAzYCtAEgBiAGQQhqNgK4ASAGIAZBGGo2ArABIAZB+ABqIAZBsAFqIAZB9ABqIgIQzgEgACAAKAIAIgBBAWs2AgAgAEEBRw0BIAIQ1wsMAQsgAEIANwIMIAYgADYCdCAGQbwBaiAGQTRqIgJBCGr9AAIA/QsCACAGQcwBaiACQRhq/QACAP0LAgAgBkHcAWogAkEoav0AAgD9CwIAIAZB7AFqIAJBOGooAgA2AgAgBkEANgIwIAYgAikCADcCtAEgBiAGQRhqNgKwASAGQfgAaiAGQbABaiIDIAZB9ABqEM4BQfDOxAAoAgAhAkHwzsQAIAA2AgAgBiACNgKwASACRQ0AIAIgAigCACIAQQFrNgIAIABBAUcNACADENcLCwJAIAYoAngiAEEDRgRAIAZBsAFqIQgjAEHQAGsiACQAIAAQlQciBDYCDCAGQTBqIgIoAgAhByACQQA2AgAgBwRAIABBEGoiA0EMaiACQQxq/QACAP0LAgAgA0EcaiACQRxq/QACAP0LAgAgA0EsaiACQSxq/QACAP0LAgAgA0E8aiACQTxqKAIANgIAIAAgBzYCECAAIAIpAgQ3AhQgCCADIABBDGoiAhDOASAEIAQoAgAiA0EBazYCACADQQFGBEAgAhDXCwsgAEHQAGokAAwCC0Hk3sEAEPIOAAsgBiAANgKwAQsgBigCMEUNASAGKAI0QQA6AAAMAQsgA0EAOgAAIAZBATYCsAELIAYoArABIQALIABBAkYNBSAAQQFxRQ0DDAULIAZCADcCvAEgBkKBgICAwAA3ArQBIAZBlN/BADYCsAEgBkEwaiAGQbABakGc38EAEPsMAAsgCCAAQbTewQAQhAsAC0G03cEAEPIOAAtB7NzBAEEoQZTdwQAQ1gwACyADKAJAIgRBAXENACADKAJEIQBBACECAkACQAJAA0ACQCAEQQF2QR9xIgdBH0YEQANAIAMoAkAiBEEBcQ0CIARBAXZBH3EiB0EfRg0ACyADKAJEIQALAkAgB0EeRw0AIAINAEHQDBCtDCICDQAMBwsCQAJAIAANAEHQDBCtDCIABEAgAyADKAJEIgggACAIGzYCRCAIRQRAIAMgADYCBAwCCyACBEAgAkHQDEEEEOgOCyAAIQIMAgsMCAsgAygCQCIJIARGIQggAyAEQQJqIAkgCBs2AkAgCEUNACAHQR5HDQMgAkUNBSADIAI2AkQgAyADKAJAQQJqNgJAIAAgAjYCAEEeIQcMBAsgAygCRCEAIAMoAkAiBEEBcUUNAQsLQQAhAEEAIQcLIAIEQCACQdAMQQQQ6A4LIABFDQILIAAgB0E0bGoiACABOAIwIAAgDjgCLCAAIA84AiggACAQOAIkIAAgBTgCICAAIAw4AhwgACANOAIYIAAgCzgCFCAAIBb9CwIEIAAgACgCNEEBcjYCNCADQYABahC9AwwBC0Gk3cEAEPIOAAsgBkHwAWokAA8LQQRB0AxB+MrEACgCACIAQcwIIAAbEQAAAAv6FQISfwt9IwBBkARrIgkkACAJQSRqIAYgBCAHKAKUAREBACAJQdAAaiAFQQhqKAIANgIAIAlBADYCRCAJQgA3AjwgCSAFKQIANwJIIAgqAgQhGyAJKgIkIR0gCSoCMCEkIAkqAighHiAJKgI0IR8gCSoCLCEgIAkqAjghJSABIAIoAhARBAAiCigCCCEUIAooAgQhDyAIKgIAIRwgCUEANgJUIAlBADYC2AECQAJAIBRFDQAgICAlkkMAAAC/lCEhIB4gH5JDAAAAv5QhIiAdICSSQwAAAL+UISMgGyAlICCTQwAAAD+UkiEgIB8gHpNDAAAAP5QgG5IhHiAkIB2TQwAAAD+UIBuSIR8CQCAPKAI8Qf////8DcQRAIAlB2ABqIRIgCUHYAWohGSAJQYUEaiETIAlB1ANqIRFBACEKIAJBDGohGkEEIRBBfyEVAkADQCAJICAgISAPIApBBnRqIgIqAhiSkjgC5AMgCSAeICIgAioCFJKSOALgAyAJIB8gIyACKgIQkpI4AtwDIAkgISACKgIIkiAgkzgC2AMgCSAiIAIqAgSSIB6TOALUAyAJICMgAioCAJIgH5M4AtADIAlBGGogCUHQA2oiCyAJQTxqIgwgHEEBEMMEIAkqAhwhGyAJKAIYIQ0gCSAgICEgAioCOJKSOALkAyAJIB4gIiACKgI0kpI4AuADIAkgHyAjIAIqAjCSkjgC3AMgCSAhIAIqAiiSICCTOALYAyAJICIgAioCJJIgHpM4AtQDIAkgIyACKgIgkiAfkzgC0AMgCUEQaiALIAwgHEEBEMMEIAJBIGohCwJAIAkqAhRD//9/fyAJKAIQQQFxGyIdIBtD//9/fyANQQFxGyIkXUUEQCAdIRsgJCEdIAshDCACIQsMAQsgJCEbIAIhDAsCQAJAAkACQAJAIBwgHV5FBEAgGyAcXUUNBCAbQ///f39bDQQgDCgCHEH/////A3FBAUcNAQwCCwJAIB1D//9/f1sEQAwBCyALKAIMIQIgCygCHEH/////A3FBAUcEQCAbIBxdRQRAIAIhCgwHCyAbQ///f39bBEAgAiEKDAcLQQEhCyAMKAIcQf////8DcUEBRgRAIAIhCgwFCwJ/IAkoAtgBIg1BIUkEQCANIQogEiEOQSAhDSAZDAELIAkoAlghCiAJKAJcIQ4gEgshCyAMKAIMIQwgCiANRgR/IAlB1ABqEKMEIAkoAlwhDiASIQsgCSgCWAUgCgtBAnQgDmogDDYCACALIAsoAgBBAWo2AgAgAiEKDAYLIAkgCDYCzAMgCSAHNgLIAyAJIAY2AsQDIAkgBTYCwAMgCSAENgK8AyAJIAM2ArgDIBooAgAhDSAJQQU6AIQEIAkgCUG4A2o2AowEIAkgCUHQA2o2AogEIAEgAiAJQYgEakH0msMAIA0RAgAgCUGIA2oiAkEQaiINIBFBEGr9AAIA/QsDACACQSBqIg4gEUEgav0AAgD9CwMAIAlBhgNqIhYgE0ECai0AADoAACAJIBH9AAIA/QsDiAMgCSATLwAAOwGEAwJAIAktAIQEIgJBBUYNACAJKgLQAyEdIAlBmAJqIhdBIGoiGCAO/QADAP0LAwAgF0EQaiIOIA39AAMA/QsDACAJQZYCaiINIBYtAAA6AAAgCSAJ/QADiAP9CwOYAiAJIAkvAYQDOwGUAiACQQRGDQAgHCAdXkUNACAJQeABaiIQQSBqIBj9AAMA/QsDACAQQRBqIA79AAMA/QsDACAJQd4BaiANLQAAOgAAIAkgCf0AA5gC/QsD4AEgCSAJLwGUAjsB3AEgCygCDCEVIB0iJSEcIAIhEAsLIBsgHF1FDQMgG0P//39/Ww0DIAwoAhxB/////wNxQQFGDQELIAwoAgwhCgwDC0EAIQsLIAwoAgwhAiAJIAg2AswDIAkgBzYCyAMgCSAGNgLEAyAJIAU2AsADIAkgBDYCvAMgCSADNgK4AyAaKAIAIQ0gCUEFOgCEBCAJIAlBuANqNgKMBCAJIAlB0ANqNgKIBCABIAIgCUGIBGpB9JrDACANEQIAIAlBiANqIgJBEGoiDSARQRBq/QACAP0LAwAgAkEgaiIOIBFBIGr9AAIA/QsDACAJQYYDaiIWIBNBAmotAAA6AAAgCSAR/QACAP0LA4gDIAkgEy8AADsBhAMCQAJAIAktAIQEIgJBBUYNACAJKgLQAyEbIAlB0AJqIhdBIGoiGCAO/QADAP0LAwAgF0EQaiIOIA39AAMA/QsDACAJQc4CaiINIBYtAAA6AAAgCSAJ/QADiAP9CwPQAiAJIAkvAYQDOwHMAiACQQRGDQAgGyAcXQ0BCyALRQ0BDAILIAlB4AFqIhBBIGogGP0AAwD9CwMAIBBBEGogDv0AAwD9CwMAIAlB3gFqIA0tAAA6AAAgCSAJ/QAD0AL9CwPgASAJIAkvAcwCOwHcASAMKAIMIRUgGyIlIRwgAiEQIAsNAQsgCSgC2AEiDCECIBIhCiAZIQsgDEEhTwRAIAkoAlwhCiASIQsgCSgCWCECCyACRQ0CIAsgAkEBayICNgIAIAogAkECdGooAgAhCgsgCiAUSQ0ACyAKIBRBsPLCABCFCwALIBBB/wFxQQRHBEAgACAJ/QAD4AH9CwIIIAAgCS8B3AE7ADkgACAQOgA4IAAgJTgCBCAAIBU2AgAgAEEoaiAJQYACav0AAwD9CwIAIABBGGogCUHwAWr9AAMA/QsCACAAQTtqIAlB3gFqLQAAOgAADAILIABBBDoAOAwBCyAJICAgISAPKgIYkpI4AuQDIAkgHiAiIA8qAhSSkjgC4AMgCSAfICMgDyoCEJKSOALcAyAJICEgDyoCCJIgIJM4AtgDIAkgIiAPKgIEkiAekzgC1AMgCSAjIA8qAgCSIB+TOALQAyAJQQhqIAlB0ANqIgogCUE8aiAcQQEQwwQgCSoCDEP//39/IAkoAghBAXEbIBxdRQ0BIA8oAgwhCyAJIAg2AqwCIAkgBzYCqAIgCSAGNgKkAiAJIAU2AqACIAkgBDYCnAIgCSADNgKYAiACQQxqKAIAIQIgCUEFOgCEBCAJIAlBmAJqNgLkASAJIAo2AuABIAEgCyAJQeABakH0msMAIAIRAgAgCUGIA2oiAUEQaiICIAlB5ANq/QACAP0LAwAgAUEgaiIDIAlB9ANq/QACAP0LAwAgCUG6A2oiBCAJQYcEai0AADoAACAJIAn9AALUA/0LA4gDIAkgCS8AhQQ7AbgDAkACQCAJLQCEBCIBQQVHBEAgCSoC0AMhGyAJQdACaiIFQSBqIAP9AAMA/QsDACAFQRBqIAL9AAMA/QsDACAJQYoEaiAELQAAOgAAIAkgCf0AA4gD/QsD0AIgCSAJLwG4AzsBiARBBCEKIAFBBEcNAQsgAEEEOgA4DAELIAlB0ANqIgJBIGoiAyAJQdACaiIEQSBq/QADAP0LAwAgAkEQaiICIARBEGr9AAMA/QsDACAJIAn9AAPQAv0LA9ADIAlBigNqIgQgCUGKBGotAAA6AAAgCSAJLwGIBDsBiAMgACAbIBxdBH8gACAJ/QAD0AP9CwIIIAAgCS8BiAM7ADkgACAbOAIEIAAgDygCDDYCACAAQRhqIAL9AAMA/QsCACAAQShqIAP9AAMA/QsCACAAQTtqIAQtAAA6AAAgAQVBBAs6ADgLIAkoAtgBIQwLIAxBIUkNASAJKAJcIAxBAnRBBBDoDgwBCyAAQQQ6ADgLIAlBkARqJAALnxcDJX8LfQJ+IwBBsANrIggkACAGEL0HAn8CQAJAAkACQCAGKAIAIgkEQCAIQRBqIAkgBigCBCgCHBEAACAIQeACaiAIKAIQIgogCCgCFCgCDBEAACAKRQ0CIAgpA+ACQtfIzLvykrfwQ4UgCCkD6AJCsdXekfDM9+zxAIWEQgBSDQIgCEG4AmogAiAAIAMoApQBEQEAIARDAAAAAGBFDQEgBCAIKgLMApIhLSAEIAgqAsgCkiEuIAQgCCoCxAKSITEgCCoCwAIgBJMhMyAIKgK8AiAEkyEvAkAgCCoCuAIgBJMiMCAKKgIYYEUNACAKKgIcIC9fRQ0AIAoqAiAgM19FDQAgCioCJCAxYEUNACAKKgIoIC5gRQ0AIAoqAiwgLWBFDQBBBCEWQQEMBgsgCCAtIC0gM5NDAAAgQZUiLUPNzMw9IC1DzczMPV0bIjKSOAIwIAggLiAuIC+TQwAAIEGVIi1DzczMPSAtQ83MzD1dGyIukjgCLCAIIDEgMSAwk0MAACBBlSItQ83MzD0gLUPNzMw9XRsiLZI4AiggCCAzIDKTOAIkIAggLyAukzgCICAIIDAgLZM4AhwgCigADCEGIAogCigAADYADCAKKQAQITggCiAKKQAENwAQIAogODcABCAKIAY2AAAgBSgCBCEWIAUoAgAhGyAFQoCAgIDAADcCACAFKAIIIQ0gBUEANgIIIApBADYCCCAIQTRqIgYgASAIQRxqEPoGIAhBCGogBhDYAyAIKAIIQQFxDQMMBAtBlOnBABDyDgALIAhBADYC8AIgCEEBNgLkAiAIQaTZwQA2AuACIAhCBDcC6AIgCEHgAmpBrNnBABC5DQALQaTpwQAQ8g4ACyAIKAIMIRMgCigCCCIGQQJ0IQ8DQCAKKAIAIAZGBEAgCiAGQQFBBEEEENcGCyAKIAZBAWoiBjYCCCAKKAIEIA9qIBM2AgAgD0EEaiEPIAggCEE0ahDYAyAIKAIEIRMgCCgCAEEBcQ0ACwsgCkEYaiEJIAgoArgBIgZBIU8EQCAIKAI8IAZBAnRBBBDoDgsgCSAI/QACHP0LAgAgCUEQaiAIQSxqKQIANwIAQQALIScgCigCFCEJIApBADYCFCAAKgIMIjcgACoCACI0IAAqAhQiL5QgACoCBCI1IAAqAhAiMZSTIi0gLZIiMJQgNSA1IAAqAhgiMpQgACoCCCI2IC+UkyItIC2SIi6UIDQgNiAxlCA0IDKUkyItIC2SIi2Uk5IgMpMhMyA3IC2UIDQgMJQgNiAulJOSIC+TIS8gNyAulCA2IC2UIDUgMJSTkiAxkyEwIBYgDUGoAWxqIRQgCigCBCIGIAooAghBAnRqISggCigCECIOIAlBAnRqIRkgCEHkAmohKSABKAI8ISogNowhMiA1jCEuIDSMIS0gCEHIAWoiCUEIaiErIAlBGGohGiAJQRBqIRxBAiERIBYhCUEAIQ8DQEGoASAPQagBbGshEwJAAkACQANAIAYgKEYNASATQagBayETIA9BAWohDyAGKAIAIQ0gBkEEaiEGIA0gKk8NAAsgBkEEayEXICdFDQEgBSgCCCENDAILIBQgCWtBqAFuIQYgCSAURwRAA0AgCUH8AGooAgAiAARAIAlBgAFqKAIAIABBBnRBBBDoDgsgCUHYAGooAgAiAARAIAlB3ABqKAIAIABBBnRBEBDoDgsgCUGoAWohCSAGQQFrIgYNAAsLIBsEQCAWIBtBqAFsQQQQ6A4LIAhBsANqJAAPCwJAAkACQAJAAkACQAJAIBFBAkYEQCAOIBlGBEBBACERDAcLIA4oAgAhEkEBIREgDkEEaiEODAELIBFBAXFFDQELIA0gEk0NACAJIBRHBEAgCUGoAWohCgJAIAkoAgBBAkYNACAJKAJcIRIgCSgCWCELIAkoAnwiDARAIAkoAoABIAxBBnRBBBDoDgsgC0UNACASIAtBBnRBEBDoDgsgCiEJCyAOIBlGDQMDQCAXKAIAIg0gDigCACISTQ0CIAkgFEcEQCAJQagBaiEKAkAgCSgCAEECRg0AIAkoAlwhEiAJKAJYIQsgCSgCfCIMBEAgCSgCgAEgDEEGdEEEEOgOCyALRQ0AIBIgC0EGdEEQEOgOCyAKIQkLIBkgDkEEaiIORw0ACwwDCyARQQFxDQEMAwsgDkEEaiEOQQEhEQsgDSASRw0BAkAgCSAURg0AIAkoAgAhDSAIQeACaiIKQRhqIgwgCUEcaigCADYCACAKQRBqIhAgCUEUaikCADcDACAIIAn9AAIE/QsD4AIgCSgCICEdIAkoAkAhHiAJKQJEITggCSgCTCEfIAkpAlAhOSAJKAJYISAgCSgCXCEhIAkoAmAhIiAJKAJ0ISMgCS8BeCEkIAkvAXohLCAJKAJ8ISUgCSgCgAEhJiAJKAKgASEVIAkoAqQBIRggCEG4AmoiCkEYaiILIAwoAgA2AgAgCkEQaiIMIBApAwA3AwAgCCAI/QAD4AL9CwO4AiANQQJGDQAgCEGYAmoiCkEYaiALKAIANgIAIApBEGogDCkDADcDACAIQfgBaiIKQQhqIAlBLGr9AAIA/QsDACAKQRhqIAlBPGooAgA2AgAgHCAJQZQBaikCADcDACAaIAlBnAFqKAIANgIAIAggCP0AA7gC/QsDmAIgCCAJKQIkNwP4ASAIIAn9AAJk/QsD6AEgCCAJ/QAChAH9CwPIASAJQagBaiEJQQIhEQwDC0G06cEAEPIOAAsgFygCACENQQAhEQsgK/0MAAAAAAAAAAAAAAAAAAAAAP0LAwBBACEeIBpBADYCACAI/QwAAAAAAAAAAAAAAAAAAAAA/QsD6AEgCEIANwPIASANQQAgBxshGEEAIA0gBxshFUEQISFBBCEmQQAhH0EAISVBACEdQQAhDUEAISBBACEiQQAhI0EAISQLIAUoAggiDCAFKAIARgRAIAVBxOnBABCXCAsgBSgCBCAMQagBbGoiCyANNgIAIAsgCCkDmAI3AgQgCyAdNgIgIAsgCCkD+AE3AiQgCyAiNgJgIAsgITYCXCALICA2AlggCyA5NwJQIAsgHzYCTCALIDg3AkQgCyAeNgJAIAtBDGogCEGYAmoiCkEIav0AAwD9CwIAIAtBHGogCkEYaigCADYCACALQSxqIAhB+AFqIgpBCGr9AAMA/QsCACALQTxqIApBGGooAgA2AgAgCyAjNgJ0IAsgJTYCfCALICY2AoABIAsgLDsBeiALICQ7AXggCyAVNgKgASALIBg2AqQBIAUgDEEBaiINNgIIIAsgCP0AA+gB/QsCZCALQZQBaiAcKQMANwIAIAtBnAFqIBooAgA2AgAgCyAI/QADyAH9CwKEAQsgDSAPQQFrSwRAIAUoAgQhGCAIQbgCaiEQAkACQAJAIBcoAgAiDCABKAI8IgpJBEAgASgCOCAMQQxsaiIKKAIAIgwgASgCMCILTw0BIAooAgQiFSALTw0CIAooAggiCiALSQ0DIAogC0HU08MAEIULAAsgDCAKQaTTwwAQhQsACyAMIAtBtNPDABCFCwALIBUgC0HE08MAEIULAAsgECAKQQxsIAEoAiwiCmoiCykCADcCGCAQIAogDEEMbGoiDCkCADcCACAQIAogFUEMbGoiCikCADcCDCAQQSBqIAtBCGooAgA2AgAgEEEIaiAMQQhqKAIANgIAIBBBFGogCkEIaigCADYCACAIQeACaiABIBcoAgAQ/gIgKUEAIAgoAuACGyEKIBggE2shDCAHRQRAIAwgACAQQaTrwQAgAiADIApB5OnBAEEAIAwgBCAMECEaDAILIAggMzgCrAMgCCAvOAKoAyAIIDA4AqQDIAggNzgCoAMgCCAyOAKcAyAIIC44ApgDIAggLTgClAMgDCAIQZQDaiACIAMgCEG4AmpBpOvBAEEAIAwgCkHk6cEAIAQgDBAhGgwBCwsgD0EBayANQdTpwQAQhQsAC5Q5BAd/JH0CfgN7IwBBgAJrIggkACAIQfgAaiADIAQoAmAiCxEAACAIQaABaiIMIAgoAngiCiAIKAJ8KAIMEQAAIAgpA6ABITMgCCkDqAEhNCAIQfAAaiAFIAYoAmAiDhEAACAMIAgoAnAiCSAIKAJ0KAIMEQAAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgCUEAIAgpA6ABQu2MnqmHh8L4NoUgCCkDqAFCpZyhjOOU7KVehYRQGyINQQBHQQAgCkEAIDNC7YyeqYeHwvg2hSA0QqWcoYzjlOylXoWEUBsiCRtFBEAgCUEAIAUgBigCsAERBAAbDQEgDUEAIAMgBCgCsAERBAAbDQIgCEHoAGogAyALEQAAIAwgCCgCaCIKIAgoAmwoAgwRAAAgCCkDoAEhMyAIKQOoASE0IAhB4ABqIAUgDhEAACAMIAgoAmAiCSAIKAJkKAIMEQAAIApBACAzQpHm3a7YmZjS8gCFIDRCm9vS2qyiuuuKf4WEUBsiCgRAIAlBACAIKQOgAUKR5t2u2JmY0vIAhSAIKQOoAUKb29LarKK664p/hYRQGyIJDQQLIAhB2ABqIAMgCxEAACAIQaABaiIJIAgoAlgiCiAIKAJcKAIMEQAAIAgpA6ABITMgCCkDqAEhNCAIQdAAaiAFIA4RAAAgCSAIKAJQIgkgCCgCVCgCDBEAACAKQQAgM0KR5t2u2JmY0vIAhSA0Qpvb0tqsorrrin+FhFAbIgoEQCAJQQAgCCkDoAFCkebdrtiZmNLyAIUgCCkDqAFCm9vS2qyiuuuKf4WEUBsiCQ0FCyAIQcgAaiADIAsRAAAgCEGgAWoiCSAIKAJIIgogCCgCTCgCDBEAACAIKQOgASEzIAgpA6gBITQgCEFAayAFIA4RAAAgCSAIKAJAIgkgCCgCRCgCDBEAACAKQQAgM0KP2JnPiPXMngeFIDRCjfi2orfa/4XIAIWEUBsiCgRAIAlBACAIKQOgAULg/JToz82FtSOFIAgpA6gBQpztoqu0nv3MxgCFhFAbIgkNBgsgCEE4aiADIAsRAAAgCEGgAWogCCgCOCIJIAgoAjwoAgwRAAAgCCkDoAEhMyAIKQOoASE0IAhBMGogBSAGKAK0ASILEQAAIAlBACAzQsWyireAgJGqqn+FIDRCiYfbx6Gq9r0mhYRQGyIKBEAgCCgCMCIJDQcLIAhBKGogAyAEKAK0ASIMEQAAIAgoAiwhCiAIKAIoIQ0gCEEgaiAFIA4RAAAgCEGgAWogCCgCICIJIAgoAiQoAgwRAAAgDQRAIAlBACAIKQOgAULFsoq3gICRqqp/hSAIKQOoAUKJh9vHoar2vSaFhFAbIgkNCAsgCEEYaiADIAwRAAAgCCgCHCEJIAgoAhghDCAIQRBqIAUgCxEAACAMBEAgCCgCECIKDQkLIAhBCGogAyAEKAK4AREAACAIKAIIIglFDQkgCEGgAWogCSAIKAIMIAEgAiAFIAYgBxCIASAAIQEgCCgCpAEiAEEDRwRAIAhB8AFqIAhBuAFqKQIANwMAIAggCP0AAqgB/QsD4AEFQQIhAAsgASAANgIAIAEgCCkD4AE3AgQgAUEMaiAIQegBav0AAwD9CwIADA0LIAdDAAAAAGBFDQkCfyACKgIQIhYgFpQgAioCFCIVIBWUkiACKgIYIhogGpSSkSIQIAeTIRFBAiARIAkqAgAiISANKgIAIg+SIgdfRQ0AGkEAIAcgEGANABogFiAQlSIXIAIqAgQiEpQgFSAQlSITIAIqAgAiFpSTIgcgB5IhGCATIAIqAggiGZQgGiAQlSIUIBKUkyIHIAeSIRAgFCACKgIMIhUgGJQgEiAQlCAWIBQgFpQgFyAZlJMiByAHkiIRlJOSkiAPjCIPlCEHIBMgFSARlCAWIBiUIBkgEJSTkpIgD5QhFiAXIBUgEJQgGSARlCASIBiUk5KSIA+UIRUgISAUlCEaICEgE5QhECAhIBeUISFBAQshASAAIAc4AhggACAWOAIUIAAgFTgCECAAIBo4AgwgACAQOAIIIAAgITgCBCAAIAE2AgAMDAsgCSoCACERIAggAioCDCIWOALsASAIIAIqAggiF4w4AugBIAggAioCBCISjDgC5AEgCCACKgIAIhOMOALgASAIIBYgEyACKgIUIhiUIBIgAioCECIZlJMiDyAPkiIUlCASIBIgAioCGCIQlCAXIBiUkyIPIA+SIhWUIBMgFyAZlCATIBCUkyIPIA+SIg+Uk5IgEJM4AvgBIAggFiAPlCATIBSUIBcgFZSTkiAYkzgC9AEgCCAWIBWUIBcgD5QgEiAUlJOSIBmTOALwASAIQaABaiAIQeABaiAFIAYgESAHEPkCIAgoAqABRQRAQQIhAgwLCyAIKgLUAUMAAAAAXwRAQQAhAgwLCyAIKAK4ASEGIAgoArQBIQUgCCgCsAEhCSAIKAKsASENIAgoAqgBIQQgCCgCpAEhA0EBIQIMCgsgCEGgAWogAiADIAQgDSoCACAHEPkCIAgoAqABQQFHBEBBAiECDAkLIAgqAtQBQwAAAABfBEBBACECDAkLIAhB6AFqIAhBrAFqKAIANgIAIAhBmAFqIAhBuAFqKAIANgIAIAggCCkCpAE3A+ABIAggCCkCsAE3A5ABQQEhAgwICyAIQaABaiIBIAIgCiAJIAcQkAIgAEEYaiABQRhqKAIANgIAIABBEGogAUEQaikCADcCACAAIAj9AAKgAf0LAgAMCQsgCEGgAWoiASACIAogCSAHEJACIABBGGogAUEYaigCADYCACAAQRBqIAFBEGopAgA3AgAgACAI/QACoAH9CwIADAgLIAhBoAFqIgMgAhDYByAIQeABaiIGIQEgByEVQQAhBSMAQbACayICJAAgAiADKgIMIiI4AhAgAiADKgIIIhuMOAIMIAIgAyoCBCIcjDgCCCACIAMqAgAiHYw4AgQgAiAiIB0gAyoCFCIrlCAcIAMqAhAiLJSTIgcgB5IiEZQgHCAcIAMqAhgiLZQgGyArlJMiByAHkiIPlCAdIBsgLJQgHSAtlJMiByAHkiIHlJOSIC2TIhY4AhwgAiAiIAeUIB0gEZQgGyAPlJOSICuTIhg4AhggAiAiIA+UIBsgB5QgHCARlJOSICyTIhk4AhQgAkEgaiAJIAogAxDKAQJAAkAgAioCICIvIBVeRQRAIAIgCioCDCIjIAoqAgAiJJMiFCAKKgIcIh4gCioCBCImkyIQlCAKKgIQIhIgJpMiByAKKgIYIh8gJJMiEZSTIhMgE5QgByAKKgIgIiAgCioCCCIlkyIPlCAKKgIUIhogJZMiByAQlJMiECAQlCAHIBGUIBQgD5STIg8gD5SSkiIHQwAAgCheBH8gAiATIAeRIgeVOAKIASACIA8gB5U4AoQBIAIgECAHlTgCgAFBAQVBAAs2AnwgAkEwaiAKIAJB/ABqIAkgAkEEahC+AyACKgIwIjAgFV4NASACQQA2AuQBIAJBADYC1AEgAkIANwLAASACQQA2ArABIAJCADcCnAEgAkEANgKMASACQQA2AnwgAiArIBIgIiAbICOUIB0gGpSTIgcgB5IiIZQgGyAcIBqUIBsgEpSTIgcgB5IiF5QgHSAdIBKUIBwgI5STIgcgB5IiEpSTkpKSIjIgJiAiIBsgJJQgHSAllJMiByAHkiITlCAbIBwgJZQgGyAmlJMiByAHkiIUlCAdIB0gJpQgHCAklJMiByAHkiIQlJOSkiArkiIokyInOAKEASACICeMOAKUASACICggKyAeICIgGyAflCAdICCUkyIHIAeSIhGUIBsgHCAglCAbIB6UkyIHIAeSIg+UIB0gHSAelCAcIB+UkyIHIAeSIgeUk5KSkiIukyIxOALMASACIDGMOALcASACICwgJCAiIBSUIBwgEJQgGyATlJOSkpIiKSAsIB8gIiAPlCAcIAeUIBsgEZSTkpKSIiSTIiY4AuABIAIgJow4AtgBIAIgJSAiIBCUIB0gE5QgHCAUlJOSkiAtkiIqIC0gICAiIAeUIB0gEZQgHCAPlJOSkpIiJZMiETgC0AEgAiARjDgCyAEgAiAuIDKTIh44AqgBIAIgHow4ArgBIAIgJCAsICMgIiAXlCAcIBKUIBsgIZSTkpKSIg+TIh84ArwBIAIgH4w4ArQBIAIgJSAtIBogIiASlCAdICGUIBwgF5STkpKSIgeTIiA4AqwBIAIgIIw4AqQBIAIgDyApkyIXOAKYASACIBeMOAKQASACIAcgKpMiEjgCiAEgAiASjCIaOAKAAUMAAAAAISEgAiAyICaUIA8gMZSTIAdDAAAAAJSSOAKsAiACICggJpQgKSAxlJMgKkMAAAAAlCITkjgCqAIgAiAPIBGUIDJDAAAAAJSSICYgB5STOAKkAiACICkgEZQgKEMAAAAAlCIUkiAmICqUkzgCoAIgAiAPQwAAAACUIBEgMpSTIAcgMZSSOAKcAiACIClDAAAAAJQiECARICiUkyAqIDGUkjgCmAIgAiAuIB+UICQgHpSTICVDAAAAAJQiEZI4ApQCIAIgKCAflCApIB6UkyATkjgCkAIgAiAkICCUIC5DAAAAAJQiD5IgHyAllJM4AowCIAIgKSAglCAUkiAfICqUkzgCiAIgAiAkQwAAAACUIgcgICAulJMgJSAelJI4AoQCIAIgECAgICiUkyAqIB6UkjgCgAIgAiAuIBeUICcgJJSTIBGSOAL8ASACICggF5QgKSAnlJMgE5I4AvgBIAIgEiAklCAPkiAXICWUkzgC9AEgAiApIBKUIBSSIBcgKpSTOALwASACICcgJZQgByASIC6Uk5I4AuwBIAIgKiAnlCAQICggEpSTkjgC6AEgCSoCCCEXIAn9XQIAIjX9HwEhFCA1/R8AIRBD//9//yEHIAJB6AFqIQwDQAJAIAJB/ABqIAVqIgQqAgAiHiAelCAEQQRqKgIAIh8gH5SSIARBCGoqAgAiICAglJIiD0MAAAA0XkUNACAMKgIAIhIgDEEEaioCACITXiEEIB4gECAemJQgHyAUIB+YlJIgICAXICCYlJIgD5EiI5UhDyASIBMgBBuMICOVIA+TIREgEyASIAQbICOVIA+TIg8gB14EQCAgICOVIScgHyAjlSEaIB4gI5UhISAPIQcLIAcgEV1FDQAgIIwgI5UhJyAfjCAjlSEaIB6MICOVISEgESEHCyAMQQhqIQwgBUEMaiIFQewARw0ACwJAAkACQAJAIAcgFV5FBEACQCAvQwAAAABfRQ0AIDBDAAAAAF9FDQAgB0MAAAAAXw0CCyAHIC9fIC8gMGBxDQQgByAwXyAvIDBfcQ0DIAcgMGAgByAvYHENAkHo2sIAQShBqPbCABDWDAALIAFBAjYCAAwGCyABQQA2AgAMBQsgAiAhOAJ8IAIgGjgCgAEgAiAnOAKEASACQegBaiIFIAkgAkH8AGoiCxDBBiACICeMOAKEASACIBqMOAKAASACICGMOAJ8IAJB2ABqIgQgAkEEaiALEPoIIApBGGohDCAKQQxqIQkCQAJAAkACQEECIAQqAgAiFCAKKgIMlCAEKgIEIhAgCioCEJSSIAQqAggiESAKKgIUlJIiDyAUIAoqAgCUIBAgCioCBJSSIBEgCioCCJSSIgddIgQgFCAKKgIYlCAQIAoqAhyUkiARIAoqAiCUkiAPIAcgBBtdGw4CAQIACyALIAkpAgA3AgwgCyAKKQIANwIAIAtBFGogCUEIaigCADYCACALQQhqIApBCGooAgA2AgAMAgsgCyAJKQIANwIAIAsgDCkCADcCDCALQQhqIAlBCGooAgA2AgAgC0EUaiAMQQhqKAIANgIADAELIAsgDCkCADcCACALIAopAgA3AgwgC0EIaiAMQQhqKAIANgIAIAtBFGogCkEIaigCADYCAAsgASADIAUgCyAVEJACDAQLIAIgAioCPIw4AoQBIAIgAioCOIw4AoABIAIgAioCNIw4AnwgAkHMAGoiBSAJIAJBBGogAkH8AGoiBBCwBSAEIAogBUEBEFEgASACKgJMIAIqAnwiEJMiByAHlCACKgJQIAIqAoABIhGTIgcgB5SSIAIqAlQgAioChAEiD5MiByAHlJIgFSAVlF4Ef0ECBSACQfAAaiADIAUQ+gggASAPOAIYIAEgETgCFCABIBA4AhAgASAtIAIqAniSOAIMIAEgKyACKgJ0kjgCCCABICwgAioCcJI4AgRBAQs2AgAMAwsgAiACKgIsjDgChAEgAiACKgIojDgCgAEgAiACKgIkjDgCfCACQUBrIgQgCiADIAJB/ABqEOQDIAECf/0MAAAAAAAAAAAAAAAAAAAAACA1/eEBIAL9XQNAIjf95QH96wH9DAAAAAAAAAAAAAAAAAAAAAAgNyA1/eUB/esB/eUBIjb9DAAAAAAAAAAAAAAAAAAAAAD9QiI1/R0AIDUgNv0NAAECAwABAgMEBQYHAAECA/0dAYSnIBeMIAIqAkgiD5MiB0MAAAAAIAdDAAAAAGAbIA8gF5MiB0MAAAAAIAdDAAAAAGAbkyIHQwAAAABcciEFQQIgDyAPIAeSIA8gBUEBcRsiD5MiByAHlCA3IDcgNv3kASA3IAX9EUEf/asBQR/9rAH9UiI2/eUBIjUgNf3mASI1/R8AIDX9HwGSkiAVIBWUXg0AGiACQeQAaiACQQRqIAQQ+gggASAPOAIMIAEgNv0fATgCCCABIDb9HwA4AgQgASAWIAIqAmySOAIYIAEgGCACKgJokjgCFCABIBkgAioCZJI4AhBBAQs2AgAMAgsgAUECNgIADAELIAFBAjYCAAsgAkGwAmokACAIQYQBaiIFIAhBkAFqIgQgCCgC4AEiA0EBRiICGyIBIAgpAuQBNwIAIAFBCGogBkEMaigCADYCACAEIAUgAhsiAUEIaiAGQRhqKAIANgIAIAEgCCkC8AE3AgAgACADNgIAIAAgCCkCkAE3AgQgAEEMaiAEQQhqKAIANgIAIAAgCCkChAE3AhAgAEEYaiAFQQhqKAIANgIADAcLIAhBoAFqIgEgAiAKIAkgCCgCNEEUaigCACAHEKoEIABBGGogAUEYaigCADYCACAAQRBqIAFBEGopAgA3AgAgACAI/QACoAH9CwIADAYLIAhBoAFqIQMgCkEUaigCACEBIwBBQGoiBCQAIAQgAioCDCIYOAIwIAQgAioCCCISjDgCLCAEIAIqAgQiE4w4AiggBCACKgIAIhaMOAIkIAQgGCAWIAIqAhQiGZQgEyACKgIQIhSUkyIPIA+SIhCUIBMgEyACKgIYIhWUIBIgGZSTIg8gD5IiEZQgFiASIBSUIBYgFZSTIg8gD5IiD5STkiAVkzgCPCAEIBggD5QgFiAQlCASIBGUk5IgGZM4AjggBCAYIBGUIBIgD5QgEyAQlJOSIBSTOAI0IARBCGoiAiAEQSRqIAkgDSABIAcQqgQCQCAEKAIIQQFGBEAgAyAEKQIMNwIQIAMgBCkCGDcCBCADQQE2AgAgA0EYaiACQQxqKAIANgIAIANBDGogAkEYaigCADYCAAwBCyADIAT9AAII/QsCACADQRhqIARBCGoiAUEYaigCADYCACADQRBqIAFBEGopAgA3AgALIARBQGskACAAQRhqIANBGGooAgA2AgAgAEEQaiADQRBqKQIANwIAIAAgCP0AAqAB/QsCAAwFCyAJQQxqKAIAIQUgCCgCFEEUaigCACEEIwBBoAJrIgYkACAG/QwAAAAAAAAAAAAAAAAAAAAA/QsE4AEgBv0MAAAAAAEAAAACAAAAAwAAAP0LBDAgBkFAa0EAQaAB/AsAAn0gAioCGCISIBKUIAIqAhAiECAQlCACKgIUIhQgFJSSkiIPQwAAgCheBEAgBiAQjCAPkSIPlSIVOAL8ASAGIBSMIA+VIhE4AoACIAYgEowgD5UiDzgChAIgBkGIAmoiAyAMIAZB/AFqIAURAQAgBiAPjDgCECAGIBGMOAIMIAYgFYw4AgggBkGUAmoiASAKIAIgBkEIaiAEEQIAIAZB1ABqIANBCGoiAygCADYCACAGQeAAaiABQQhqIgEoAgA2AgAgBiAGKQKIAjcCTCAGIAYpApQCNwNYIAYqAowCIAYqApgCkyEaIAYqAogCIAYqApQCkyERIAMqAgAgASoCAJMMAQsgBkEANgKEAiAGQoCAgPwDNwL8ASAGQYgCaiIDIAwgBkH8AWogBREBACAGQYCAgIB4NgIQIAZCgICA/IuAgICAfzcCCCAGQZQCaiIBIAogAiAGQQhqIAQRAgAgBkHUAGogA0EIaiIDKAIANgIAIAZB4ABqIAFBCGoiASgCADYCACAGIAYpAogCNwJMIAYgBikClAI3A1ggBioCjAIgBioCmAKTIRogBioCiAIgBioClAKTIREgAyoCACABKgIAkwshDyAGQQA2AtwBIAZBADYC7AEgBiAPOAJIIAYgGjgCRCAGIBE4AkAgBkEIaiACIAwgBSAKIAQgB0EBIAZBMGoQywECQAJAAkACQCAGKAIIIgFBAWsOAwABAgMLIAAgBikCDDcCBCAAQQxqIAZBFGooAgA2AgAgBioCGCAQkyIQIAIqAgQiE5QgBioCHCAUkyIVIAIqAgAiFpSTIgcgB5IhGCAVIAIqAggiGZQgBioCICASkyIRIBOUkyIHIAeSIRQgACARIAIqAgwiDyAYlCATIBSUIBYgESAWlCAQIBmUkyIHIAeSIgeUk5KSOAIYIAAgFSAPIAeUIBYgGJQgGSAUlJOSkjgCFCAAIBAgDyAUlCAZIAeUIBMgGJSTkpI4AhBBASEBDAILQejawgBBKEHI9sIAENYMAAtBAiEBCyAAIAE2AgAgBkGgAmokAAwECyAIIAUgBigCuAERAAAgCCgCACIGBEAgCCgCBCEFIwBB4ABrIgkkACAJIAIqAgwiGDgCMCAJIAIqAggiEow4AiwgCSACKgIEIhOMOAIoIAkgAioCACIWjDgCJCAJIBggFiACKgIUIhmUIBMgAioCECIUlJMiDyAPkiIQlCATIBMgAioCGCIVlCASIBmUkyIPIA+SIhGUIBYgEiAUlCAWIBWUkyIPIA+SIg+Uk5IgFZM4AjwgCSAYIA+UIBYgEJQgEiARlJOSIBmTOAI4IAkgGCARlCASIA+UIBMgEJSTkiAUkzgCNCAJQUBrIAYgBSABIAlBJGogAyAEIAcQiAECQAJAIAkoAkQiA0EDRwRAIAlBIGoiAiAJQdAAaigCADYCACAJQRBqIgEgCUHcAGooAgA2AgAgCSAJKQJINwMYIAkgCSkCVDcDCCADQQFHDQEgACAJKQMYNwIQIAAgCSkDCDcCBCAAQQE2AgAgAEEYaiACKAIANgIAIABBDGogASgCADYCAAwCC0ECIQMLIAAgAzYCACAAIAkpAxg3AgQgACAJKQMINwIQIABBDGogCUEgaigCADYCACAAQRhqIAlBEGooAgA2AgALIAlB4ABqJAAMBAsgAEEDNgIADAMLIAhBADYCsAEgCEEBNgKkASAIQYD2wgA2AqABIAhCBDcCqAEgCEGgAWpBiPbCABC5DQALIAAgAjYCACAAIAgpA+ABNwIEIAAgCCkDkAE3AhAgAEEMaiAIQegBaigCADYCACAAQRhqIAhBmAFqKAIANgIADAELIAAgDTYCGCAAIAQ2AhQgACADNgIQIAAgBjYCDCAAIAU2AgggACAJNgIEIAAgAjYCAAsgCEGAAmokAAufEgMLfwZ9BHsjAEFAaiIHJAACQAJAIAAoApQCIglFBEAMAQsgASAAKAIIIghPBEAgASAIQfyawgAQhQsACwJAAkACQAJAIAYgBCgCACIIIAlqIhBPBEAgACgCBCABQfADbGooApADIgEgACgCRCIKTwRAIAEgCkGMm8IAEIULAAsgACgCQCABQQR0aiIKQQxqIgwoAgAiASAJRw0DIAMqAgghEiADKgIEIRMgAyoCACEUIAIqAgghFSACKgIEIRYgAioCACEXIAUgCEECdGohAUEAIQJBFCELA0AgAkEBaiICIAwoAgBLDQIgASAKQQRqKAIAIAtqIgNBFGsqAgAgF5RDAAAAAJIgA0EQayoCACAWlJIgA0EMayoCACAVlJIgA0EIayoCACAUlJIgA0EEayoCACATlJIgAyoCACASlJI4AgAgAUEEaiEBIAtBGGohCyACIAlHDQALQQEgCSAJQQFNGyECA0AgBiAIQQAgBkEBRyIBGyIDS0EAIAEgCEVyG0UEQCAHQQA2AjggB0EBNgIsIAdB7IDCADYCKCAHQgQ3AjAgB0EoakGcm8IAELkNAAsgCCAJaiIKQQAgARsiCyAGTw0DIAEgCkVyRQ0DIAUgC0ECdGogBSADQQJ0aioCADgCACAIQQFqIQggAkEBayICDQALDAQLDAULIAdBADYCOCAHQQE2AiwgB0Gw/cEANgIoIAdCBDcCMCAHQShqQcj9wQAQuQ0ACyAHQQA2AjggB0EBNgIsIAdB7IDCADYCKCAHQgQ3AjAgB0EoakGsm8IAELkNAAsgByABNgIMIAdBBjYCCCAHQQE2AhQgByAJNgIQIAdBAzYCLCAHQaiCwgA2AiggB0ICNwI0IAcgB0EQaq1CgICAgJAPhDcDICAHIAdBCGqtQoCAgICQD4Q3AxggByAHQRhqNgIwIAdBKGpBwILCABC5DQALAn0CQAJAAkACQAJAIAYgCSAQak8EQCAFIBBBAnRqIQMgCSEBAkAgACgCkAEiDEF/Rg0AAkAgACgCjAEiCkUNACAAKAKIASEIIAlBAUcEQCAKQQJ0IQsgAyAMQQJ0aiECIAwgCSAJIAxLG0EBayEBA0AgCCgCACINIAlPDQUgCSABQQFqIgFGDQYgCEEEaiEIIAIgAyANQQJ0aioCADgCACACQQRqIQIgC0EEayILDQALDAELIAxBAWshAiAKQQJ0IQEDQCAIKAIADQQgAkEBaiICDQUgCEEEaiEIIAFBBGsiAQ0ACwsgCSAKIAxqIgFrIghFDQAgAUEBaiENIAlBAnQiCiADaiELIAFBAnQiDiADaiECAkAgCEEBcUUEQCACIQoMAQsgAiAGQQJ0aiIPIAIgCiAORiICGyIKQQA2AgAgDyALIAIbIQsgCiAIQQFrIghBAEdBAnRqIQILIAkgDUYNAANAIAZBAnQiDSAKaiIRIAIgAiALRiIOGyIPQQA2AgAgDyAIQQFHQQJ0aiIPIAIgDWogCyAOGyILRiECIBEgCiAOGyIKIA1qIg4gDyACGyIRQQA2AgAgDiAKIAIbIQogDSAPaiALIAIbIQsgESAIQQJHQQJ0aiECIAhBAmsiCA0ACwsgAQRAIAEgCUsNCSAAQdwAaiADIAEQ3AELAkAgDEF/Rg0AIAAoAowBIgFFDQAgACgCiAEhAiAJQQFHBEAgAUECdEEEayEIA0AgCEECdiAMaiIBIAlPDQYgAiAIaigCACIKIAlPDQcgAyAKQQJ0aiADIAFBAnRqIgEqAgA4AgAgAUEANgIAIAhBBGsiCEF8Rw0ACwwBC0EAIAxrIQogAUECdEEEayEIA0AgCEECdiAKRw0FIAIgCGooAgANBiADQQA2AgAgCEEEayIIQXxHDQALCyAEKAIAIgogCWogBksNCCAEIAogCUEBdGo2AgAgCUEISQRAQQAhAUMAAAAADAcLIAUgCkECdGohCCAJQXhxIQEgCSEGA0AgGSAIQRhq/V0CACADQRhq/V0CAP3mAf3kASEZIBggCEEIav1dAgAgA0EIav1dAgD95gH95AEhGCAbIAhBEGr9XQIAIANBEGr9XQIA/eYB/eQBIRsgGiAI/V0CACAD/V0CAP3mAf3kASEaIAhBIGohCCADQSBqIQMgBkEIayIGQQdLDQALDAULDAcLIAdBADYCOCAHQQE2AiwgB0HsgMIANgIoIAdCBDcCMCAHQShqQcybwgAQuQ0ACyAHQQA2AjggB0EBNgIsIAdB7IDCADYCKCAHQgQ3AjAgB0EoakHcm8IAELkNAAsgB0EANgI4IAdBATYCLCAHQeyAwgA2AiggB0IENwIwIAdBKGpB7JvCABC5DQALIAdBADYCOCAHQQE2AiwgB0HsgMIANgIoIAdCBDcCMCAHQShqQfybwgAQuQ0ACyAYIBn95AEiGP0fASAY/R8AIBogG/3kASIY/R8BIBj9HwBDAAAAAJKSkpILIRICQCABIAlPDQACQCAJQQNxIgJFBEAgASEGDAELIAUgAUECdCIEIApBAnRqaiEDIAUgBCAQQQJ0amohCCABIQYDQCAGQQFqIQYgEiADKgIAIAgqAgCUkiESIANBBGohAyAIQQRqIQggAkEBayICDQALCyABIAlrQXxLDQAgBSAGQQJ0IgEgCkECdGpqIQMgBSABIBBBAnRqaiEIIAkgBmshBgNAIBIgAyoCACAIKgIAlJIgA0EEaioCACAIQQRqKgIAlJIgA0EIaioCACAIQQhqKgIAlJIgA0EMaioCACAIQQxqKgIAlJIhEiADQRBqIQMgCEEQaiEIIAZBBGsiBg0ACwsgACgCGCAJTwRAQQAhCAJAIAlBCEkNACAJQQhrIgBBA3ZBAWoiAUEHcSEDIABBOE8EQCABQfj///8DcSEIA0AgCEEIayIIDQALCyAJQXhxIQggA0UNAANAIANBAWsiAw0ACwsgCCAJTw0BIAghBiAJQQdxIgMEQCADIAhqIQYDQCADQQFrIgMNAAsLIAggCWtBeEsNASAJIAZrIQMDQCADQQhrIgMNAAsMAQsMAQsgB0FAayQAIBIPCyAHQQA2AjggB0EBNgIsIAdBsP3BADYCKCAHQgQ3AjAgB0EoakG4/cEAELkNAAuEFAMPfw99A34jAEGgAWsiCiQAIAogCToAFiAKIAY4AhAgCBDcBwJAAkAgCCgCACIJBEAgCkEIaiAJIAgoAgQoAhwRAAAgCkEwaiAKKAIIIgwgCigCDCgCDBEAACAKKQMwQr6mt6/GjpbU+wCFIAopAzhC3cGm5qiSv/RGhYRCAFINASAMIAwtABhBf3NBAXEiCDoAGCAKIAg6ABcCQAJAAkACQCAEIAUoAhARBAAiCSgCCEUNACAJKAIEIggoAjxB/////wNxIAgoAhxB/////wNxag4CAAECCyAKQv////v///+/fzcDgAEgCv0M//9/f///f3///39///9///0LBHAMAgsgCkGEAWogCEEYaigCADYCACAKIAgpAwA3A3AgCiAIKQIQNwJ8IAogCEEIaigCADYCeAwBCyAKIAgqAhgiBiAIKgI4IhogBiAaYBs4AoQBIAogCCoCFCIGIAgqAjQiGiAGIBpgGzgCgAEgCiAIKgIQIgYgCCoCMCIaIAYgGmAbOAJ8IAogCCoCCCIGIAgqAigiGiAGIBpfGzgCeCAKIAgqAgQiBiAIKgIkIhogBiAaXxs4AnQgCiAIKgIAIgYgCCoCICIaIAYgGl8bOAJwCyAKQRhqIgggCkHwAGogARC7AyAKKgIQIgZDAAAAAGBFDQIgCioCJCEbIAoqAhghGSAKKgIcIRwgCioCICEgIAoqAighISAKKgIsIR4gCEEIaiAHQQhqIgsoAgA2AgAgC0EANgIAIAcpAgAhKCAHQoCAgIDAADcCACAKICg3AxggCiAJNgJkIAogATYCYCAKQfCIwwA2AlwgCiAANgJYIAogBzYCSCAKIAw2AkAgCiAFNgI8IAogBDYCOCAKIAI2AjAgCiADNgJUIAMqAjAhIyADKgIsIRogAyoCKCEkIAMoAgwhCyADKAIQIQ0gCiAKQRZqNgJQIAogCkEXajYCTCAKIAg2AkQgCiAKQRBqNgI0AkACQAJAAkAgBiAbkiAklSIbQwAAAL9fDQAgBiAekiAjlSIeQwAAAL9fDQAgGSAGkyAklSIZQwAAAD9gDQAgICAGkyAjlSIfQwAAAD9gDQAgG0MAAAA/kkMAAIA/IA2zQwAAgL+SlSIglY0iG0MAAAAAXkUNACAbIA1BAWuzIh0gGyAdXRv8ASIWIBlDAAAAP5IgIJWOIhsgDUECa7MiGSAZIBteG/wBQQAgG0MAAAAAXhsiAE0NACAeQwAAAD+SQwAAgD8gC7NDAACAv5KVIh6VjSIbQwAAAABeRQ0AIB9DAAAAP5IgHpWOIhkgC0ECa7MiHyAZIB9dG/wBQQAgGUMAAAAAXhsiASAbIAtBAWsiEbMiGSAZIBteG/wBIhJPDQAgBiAhkiAalSEbIBwgBpMgGpUhBiABQQFqIQkgAygCBCIFIAFBAnQiBCAAIAtsQQJ0amohAiAFIAsgAEEBamxBAnQgBGpqIQQgACADKAIkIgUgACAFSxshFyALQQJ0IRVBACASayEYIAAgEWwiEyADKAJMQQF2aiEUIAMoAhggAygCICIPIABsaiEFA0AgACAXRg0CIAAiB0EBaiEAIAEhAwJAIAcgDUkEQCAAIA1JBEAgJCAgIAezlEMAAAC/kiIZlCEhICQgICAZkpQhHyACIQcgBCEIIAkhAwNAIANBAWsiECAPTw0GAkAgAyAFakEBay0AACIOQQZxQQZGDQAgCyAQTQ0IIAMgC08NCSAIQQRqKgIAIRkgB0EEaioCACEcIAgqAgAhHQJAIAcqAgAiIiAbXkUNACAbIBxdRQ0AIBsgHV1FDQAgGSAbXg0BCwJAIAYgIl5FDQAgBiAcXkUNACAGIB1eRQ0AIAYgGV4NAQsgGiAZlCElIBogHZQhHSAjIB4gHiAQs5RDAAAAv5IiJ5KUIRkgGiAclCEmICMgJ5QhHCAaICKUISIgDkECcUUEQCAKIB84AogBIAogJjgCgAEgCiAhOAJ8IAogIjgCdCAKICE4AnAgCiAcOAJ4IAogGTgChAEgCiAZIBwgDkEBcSIQGzgCkAEgCiAlIB0gEBs4AowBIApBMGogAyATakEBayAKQfAAahCxAgsgDkEEcQ0AIAogHTgCjAEgCiAfOAKIASAKICU4AoABIAogHzgCfCAKICE4AnAgCiAZOAKEASAKIBw4ApABIAogHCAZIA5BAXEiDhs4AnggCiAiICYgDhs4AnQgCkEwaiADIBRqQQFrIApB8ABqELECCyAHQQRqIQcgCEEEaiEIIBggA0EBaiIDakEBRw0ACwwCCwNAIAMgD08NBSADIAVqLQAAQQZxQQZGBEAgEiADQQFqIgNGDQMMAQsLIAMgC08NBSADQQFqIAtPDQYgCkEANgKAASAKQQE2AnQgCkH83MIANgJwIApCBDcCeCAKQfAAakGMzMMAELkNAAsDQCADIA9PDQQgAyAFai0AAEEGcUEGRw0FIBIgA0EBaiIDRw0ACwsgAiAVaiECIAQgFWohBCARIBNqIRMgESAUaiEUIAUgD2ohBSAAIBZHDQALCyAMKAIMIgUEQCAMKAIEIQQgDCgCACIBQQhqIQMgASkDAEJ/hUKAgYKEiJCgwIB/gyEoIAwoAgghACAKLQAXIQkgASEHIAUhAgNAIChQBEADQCAHQYABayEHIAMpAwAhKCADQQhqIQMgKEKAgYKEiJCgwIB/gyIoQoCBgoSIkKDAgH9RDQALIChCgIGChIiQoMCAf4UhKAsgKEIBfSEqIAkgByAoeqdBAXRB8AFxayILQQRrLQAARwRAQYABIQggASALa0EEdSILIAFqIg0pAAAiKUIBhiApg0KAgYKEiJCgwIB/g3qnQQN2IAEgC0EIayAEcWoiCykAACIpQgGGICmDQoCBgoSIkKDAgH+DeadBA3ZqQQdNBEAgDCAAQQFqIgA2AghB/wEhCAsgDSAIOgAAIAwgAkEBayICNgIMIAtBCGogCDoAAAsgKCAqgyEoIAVBAWsiBQ0ACwsgCigCHCEAIAooAiAiBwRAIABBxABqIQMDQCADQQRrKAIAIgEEQCADKAIAIAFBJGxBBBDoDgsgA0HsAGohAyAHQQFrIgcNAAsLIAooAhgiAQRAIAAgAUHsAGxBBBDoDgsgCkGgAWokAA8LIApBADYCgAEgCkEBNgJ0IApB/NzCADYCcCAKQgQ3AnggCkHwAGpB3MvDABC5DQALIApBADYCgAEgCkEBNgJ0IApB/NzCADYCcCAKQgQ3AnggCkHwAGpB7MvDABC5DQALIApBADYCgAEgCkEBNgJ0IApB/NzCADYCcCAKQgQ3AnggCkHwAGpB/MvDABC5DQALQeT6wgAQ8g4AC0H0+sIAEPIOAAsgCkEANgJAIApBATYCNCAKQejgwgA2AjAgCkIENwI4IApBMGpB8ODCABC5DQALwBoCJH8EfiMAQeAAayIDJAACQCACRQ0AIANCidm54o7TvpcINwNIIANBoNzCAP0AAwD9CwM4IANBADoAVyADIANBOGo2AlwgAyADQdcAajYCWCABKAI8IgtFDQBBASALayEHIAEoAjghAgJAAkADQCADQdgAaiACEKwBRQ0BIAJBDGohAiAHQQFqIgdBAUcNAAsMAQsgB0UEQEEBIQYMAQsgAkEMaiECQQAgB2shB0EBIQYDQAJAIANB2ABqIAIQrAFFBEAgBkEBaiEGDAELIAIgBkF0bGoiESACKQIANwIAIBFBCGogAkEIaigCADYCAAsgAkEMaiECIAdBAWsiBw0ACwsgASALIAZrNgI8IAMoAjwiAkUNACADKAI4IAJBA3RrQQhrIAJBCWxBEWpBCBDoDgsgA0EANgI0IANCgICAgMAANwIsIANCBDcCJCADQgA3AhwgA0KAgICAwAA3AhQgA0KJ2bnijtO+lwg3A0ggA0Gg3MIA/QADAP0LAzggAyIEIAEoAjAiBgR/IANBFGpBACAGQQRBBBDYBiADKAIYIgsgAygCHCICQQJ0aiEDIAZBAUcEQCAGQQJ0QQRrIhEEQCADQf8BIBH8CwALIAIgBmoiA0EBayECIAsgA0ECdGpBBGshAwsgA0F/NgIAIAJBAWoFQQALNgIcAkAgASgCPCIDBEAgBEEsaiEcIARBIGohHSABKAI4IgIgA0EMbGohHiACQQxqIQcgBEHIAGohH0EBIQNBACEGA0AgByELIAMhEQJAAn8CQCACKAIAIgMgAigCBCIQRg0AIAMgAigCCCIDRg0AIAMgEEYNAEEAIQhBASEDIAQoAjQiGCEHA0AgAyIQQQAgA0EDRxsiBSAYaiEJIAIgCEECdGoiGigCACESIAQoAiwgB0YEQCAcQYzRwwAQtQgLIAQoAjAiICAHQQR0aiIDIAY2AgwgAyASNgIIIANBfzYCBCADIAk2AgAgBCAHQQFqIgc2AjQgBCkDSCAaKAIAIhmtIAIgBUECdGooAgAiFa1CIIaEhSInQiCIIihCt9OwhQx+ICdC/////w+DIidC3aHxywx+hSAoQt2h8csMfiAnQrfTsIUMfoVCIIiFISggBCgCQEUEQCAEQQhqIRsjAEEwayIKJAAgCiAfNgIoIARBOGoiEygCDCEMIAogCkEoajYCLAJAIAwgDEEBaiIDTQRAIBMoAgQiFyAXQQFqQQN2QQdsIBdBCEkbIgVBAXYgA0kEQAJAAkACQAJ/IAVBAWoiBSADIAMgBUkbIgNBD08EQCADQf////8BSw0CQX8gA0EDdEEHbkEBa2d2QQFqDAELQQRBCEEQIANBCEkbIANBBEkbCyIDrUIMfiInQiCIpw0BICenIgVBeEsNASAFQQdqQXhxIgkgA0EIaiIOaiEFIAUgCUkNASAFQfj///8HSw0BIAVBCBCRDiIPDQJBCCAFQfjKxAAoAgAiAEHMCCAAGxEAAAALEKcMIAooAiQhAyAKKAIgIQUMBAsQpwwgCigCFCEDIAooAhAhBQwDCyAJIA9qIQ8gDgRAIA9B/wEgDvwLAAsgA0EBayIWIANBA3ZBB2wgFkEISRshIQJAIAxFBEAgEygCACEJDAELIA9BCGohIiATKAIAIglBDGshIyAJKQMAQn+FQoCBgoSIkKDAgH+DIScgCigCKCEkQQAhAyAMIQ4gCSEFA0AgJ1AEQANAIANBCGohAyAFQQhqIgUpAwBCgIGChIiQoMCAf4MiJ0KAgYKEiJCgwIB/UQ0ACyAnQoCBgoSIkKDAgH+FIScLIA8gJCkDACAjICd6p0EDdiADaiIlQXRsaikCAIUiKUIgiCIqQrfTsIUMfiApQv////8PgyIpQt2h8csMfoUgKkLdofHLDH4gKUK307CFDH6FQiCIhaciJiAWcSINaikAAEKAgYKEiJCgwIB/gyIpUARAQQghFANAIA0gFGohDSAUQQhqIRQgDyANIBZxIg1qKQAAQoCBgoSIkKDAgH+DIilQDQALCyAnQgF9ICeDIScgDyApeqdBA3YgDWogFnEiDWosAABBAE4EQCAPKQMAQoCBgoSIkKDAgH+DeqdBA3YhDQsgDSAPaiAmQRl2IhQ6AAAgIiANQQhrIBZxaiAUOgAAIA8gDUF/c0EMbGoiDUEIaiAJICVBf3NBDGxqIhRBCGooAAA2AAAgDSAUKQAANwAAIA5BAWsiDg0ACwsgEyAWNgIEIBMgDzYCACATICEgDGs2AghBgYCAgHghBSAXRQ0CIAkgF0EMbEETakF4cSIDayADIBdqQQlqQQgQ6A4MAgsgEyAKQSxqQYoCQQwQxgJBgYCAgHghBQwBCxCnDCAKKAIMIQMgCigCCCEFCyAbIAM2AgQgGyAFNgIAIApBMGokAAsgCCAYaiEMIAQoAjwiCSAop3EhCCAoQhmIIilC/wCDQoGChIiQoMCAAX4hKkEAIQ4gBCgCOCEFQQAhAwNAAkACfwJAAkACQCAFIAhqKQAAIiggKoUiJ0KBgoSIkKDAgAF9ICdCf4WDQoCBgoSIkKDAgH+DIidCAFIEQANAIAUgJ3qnQQN2IAhqIAlxQXRsaiIKQQxrKAIAIBlGBEAgFSAKQQhrKAIARg0DCyAnQgF9ICeDIidCAFINAAsLIChCgIGChIiQoMCAf4MhJyADRQRAICdQDQMgJ3qnQQN2IAhqIAlxIRILQQEgJyAoQgGGg1ANAxogBSASaiwAACIIQQBOBEAgBSAFKQMAQoCBgoSIkKDAgH+DeqdBA3YiEmotAAAhCAsgBSASaiApp0H/AHEiAzoAACAFIBJBCGsgCXFqQQhqIAM6AAAgBSASQXRsaiIDQQxrIBk2AgAgA0EIayAVNgIAIANBBGsgDDYCACAEIAQoAkRBAWo2AkQgBCAEKAJAIAhBAXFrNgJAIBooAgAiAyAEKAIcIghPDQEgBCgCGCADQQJ0aiAMNgIAIBBBAWohAyAQIghBA08NCQwGCyAKQQRrIgIoAgAhASACIAw2AgAgASAHTw0DIAAgGTYCDCAAIAY2AgggAEEBNgIAIAAgICABQQR0aigCDDYCBCAVIQZBEAwHCyADIAhBrNHDABCFCwALQQALIQMgDkEIaiIOIAhqIAlxIQgMAQsLCyABIAdBnNHDABCFCwALIABBADYCAEEECyEBIAAgAWogBjYCACAEKAI8IgAEQCAEKAI4IABBDGxBE2pBeHEiAWsgACABakEJakEIEOgOCyAEKAIUIgAEQCAEKAIYIABBAnRBBBDoDgsgBCgCICIABEAgBCgCJCAAQQJ0QQQQ6A4LIAQoAiwiAEUNAyAEKAIwIABBBHRBBBDoDgwDCyAEKAIoIgIgBCgCIEYEQCAdQfzQwwAQtggLIAQoAiQgAkECdGogGDYCACAEIAJBAWo2AiggCyAeRyIQIBFqIQMgC0EMQQAgEBtqIQcgCyECIBEhBiAQDQALCyAEKAJEIgMEQCAEKAI4IgdBCGohAiAHKQMAQn+FQoCBgoSIkKDAgH+DIScgBCgCMCERIAQoAjQhCwNAICdQBEADQCAHQeAAayEHIAIpAwAhJyACQQhqIQIgJ0KAgYKEiJCgwIB/gyInQoCBgoSIkKDAgH9RDQALICdCgIGChIiQoMCAf4UhJwsCQCAHICd6p0EDdkF0bGoiBkEMaygCACIQIAZBCGsoAgAiCE8NACAEKAJERQ0AIAZBBGshBSAEKAI8IgwgBCkDSCAIrSAQrUIghoSFIihCIIgiKUK307CFDH4gKEL/////D4MiKELdofHLDH6FIClC3aHxywx+IChCt9OwhQx+hUIgiIUiKKdxIQYgKEIZiEL/AINCgYKEiJCgwIABfiEqQQAhCSAEKAI4IQ4DQAJAIAYgDmopAAAiKSAqhSIoQoGChIiQoMCAAX0gKEJ/hYNCgIGChIiQoMCAf4MiKEIAUgRAA0AgDiAoeqdBA3YgBmogDHFBdGxqIhVBDGsoAgAgCEYEQCAQIBVBCGsoAgBGDQMLIChCAX0gKIMiKEIAUg0ACwsgKSApQgGGg0KAgYKEiJCgwIB/g0IAUg0CIAlBCGoiCSAGaiAMcSEGDAELCyAFKAIAIgYgC0kEQCARIAZBBHRqIBVBBGsoAgAiBjYCBCAGIAtJBEAgESAGQQR0aiAFKAIANgIEDAILIAYgC0Hs0MMAEIULAAsgBiALQdzQwwAQhQsACyAnQgF9ICeDIScgA0EBayIDDQALCyABQdgAaiECAkAgASgCWCIDQYCAgIB4Rg0AIAMEQCABKAJcIANBAnRBBBDoDgsgASgCZCIDBEAgASgCaCADQQJ0QQQQ6A4LIAEoAnAiA0UNACABKAJ0IANBBHRBBBDoDgsgAiAE/QACFP0LAgAgAEECNgIAIAJBIGogBEEUaiIAQSBqKAIANgIAIAJBEGogAEEQav0AAgD9CwIAIAQoAjwiAEUNACAEKAI4IABBDGxBE2pBeHEiAWsgACABakEJakEIEOgOCyAEQeAAaiQAC+ITAyJ/A30BfiMAQeAFayIDJAAgAUEMaiEWIAFB4AVqISAgAUHEBWohGSABQbQFaiEaIAFBqAVqIRsgAUGMB2ohHCABQYAHaiEdIAFB9AZqIR4gAUHQBGohFyABQegBaiEhIAFB3AFqISIgAUE0aiEGIAFBtAFqIQsgAUGIA2ohHyABQewCaiEQIAFB3AJqIREgAUHQAmohEiABQbQEaiETIAFBqARqIRQgAUGcBGohFSABQfgBaiEMIAFB9AFqIRggA0H8AmohCCADQdQFaiEKAn8gASgCAEEBcQRAIAEoAgQhBSABKAIIIQRBAAwBC0EBCyECA0ACQAJAAkACQAJAAkAgAkUEQCAEIAVHDQEgAUEANgIAQQEhAgwHCwJ/AkACQCABKAIwIgJBA0cEQCAYKAIAIgRBAkcEQAJAIARBAXFFDQAgA0H4AmogDBCIAiADKAL4AkUNACADQfACaiAIQQhqKAIANgIAIAMgCCkCADcD6AIMCgsCQCABKAKUBCINRQ0AIAEoAsQEIgIgASgCyAQiDk4NACABKAKYBCEPIAEoAsAEIQkgASgCrAQhByABKAKgBCEFA0AgASACQQFqIgQ2AsQEIAEgDzYCzAIgASANNgLIAiABQQA2AqACIAFCATcC9AEgASACNgLoAiABIAk2AvgCIAEgBTYC/AIgASAHNgKAAyASIBUpAgA3AgAgEkEIaiAVQQhqKAIANgIAIBEgFCkCADcCACARQQhqIBRBCGooAgA2AgAgECATKQIANwIAIBBBCGogE0EIaigCADYCACADQfgCaiAMEIgCIAMoAvgCDQQgDiAEIgJHDQALCyABQQA2AvQBAkAgASgChANBAUcNACADQfgCaiAfEIgCIAMoAvgCQQFHDQAgA0HwAmogCEEIaigCADYCACADIAgpAgA3A+gCDAoLIAFBADYChAMgASgCMCECCyAYQQI2AgAgAkECRwRAIAFBMGohIwJAA0ACQCABKAK8ASICRQRAAkAgCygCACICQSFPBEAgASgCOCEFIAEoAjQiB0UNAyAGIQQgByECDAELIAshBCAGIQUgAkUNBAsgBCACQQFrIgQ2AgAgBSAEQQJ0aigCACECCyABQQA2ArwBIAIoAhxB/////wNxQQFHBEAgAigCDCIFIAEoArgBIgIoAggiBE8NCiABKgLUASEkIAEqAtABISVBASEEAkAgASoCzAEiJiACKAIEIAVBBnRqIgIqAgBgRQ0AIAIqAgQgJV9FDQAgAioCCCAkX0UNACACKgIQIAEqAsABYEUNACACKgIUIAEqAsQBYEUNACACKgIYIAEqAsgBYEUNACABIAI2ArwBQQAhBAsgAioCICAmX0UNAiACKgIkICVfRQ0CIAIqAiggJF9FDQIgAioCMCABKgLAAWBFDQIgAioCNCABKgLEAWBFDQIgAioCOCABKgLIAWBFDQIgAkEgaiEJIARFBEACfyALKAIAIgdBIUkEQCAHIQUgBiECQSAhByALDAELIAEoAjQhBSABKAI4IQIgBgshBCAFIAdGBEAgIxCgBCABKAI0IQUgASgCOCECIAYhBAsgAiAFQQJ0aiAJNgIAIAQgBCgCAEEBajYCAAwDCyABIAk2ArwBDAILIANB0AVqIgciBSABKALYASACKAIMEK0LIANB+AJqIgQgBSAiICEQsAcgGCAEQdgC/AoAAAJAIAEoAvQBQQFxRQ0AIAcgDBCIAiADKALQBUUNACADQfACaiAKQQhqKAIANgIAIAMgCikCADcD6AIMDQsCQCABKAKUBCINRQ0AIAEoAsQEIgIgASgCyAQiDk4NACABKAKYBCEPIAEoAsAEIQkgASgCrAQhByABKAKgBCEFA0AgASACQQFqIgQ2AsQEIAEgDzYCzAIgASANNgLIAiABQQA2AqACIAFCATcC9AEgASACNgLoAiABIAk2AvgCIAEgBTYC/AIgASAH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QdABayIDJABBGCEEAkAgAkEIaiIFKAIEIgdFBEBBAiEFDAELIAUgB0EBazYCBCAFKAIAIQUgA0EGNgIgIAMgBTYCHCADQSRqIANBHGoQggMgAQJ/IAMtADwiB0EDRgRAIAMoAiQMAQsCQAJAAkAgB0ECRwRAIANBQGsgA0EcahCCAyADLQBYIglBA0YEQCADKAJADAULIAlBAkYNASADQdwAaiADQRxqEIIDIAMtAHQiCkEDRgRAIAMoAlwMBQsgCkECRg0CIANB+ABqIANBHGoQggMgAy0AkAEiBkEDRgRAIAMoAngMBQsgBkECRg0DIANBlAFqIANBHGoQggMgAy0ArAEiDEEDRgRAIAMoApQBDAULAkACQAJAIAxBAkcEQCADQbABaiADQRxqEIIDIAMtAMgBIgVBAmsOAgIBAwtBBCADQc8BakHEzcEAEKgKDAcLIAMoArABDAYLQQUgA0HPAWpBxM3BABCoCgwFCyABIAP9AAKwAf0LAowBIAEgAy8AyQE7AKUBIAEgA/0AAij9CwIEIAFBnAFqIANBwAFqKQIANwIAIAFBpwFqIANBywFqLQAAOgAAIAFBFGogA0E4aigCADYCACADQQJqIANBPWoiBEECai0AADoAACADIAQvAAA7AQAgAygCJCEEIANBE2ogA0HQAGopAgA3AAAgASADQdkAaiIILwAAOwA1IAFBN2ogCEECai0AADoAACABIAP9AAJc/QsCOCABQcgAaiADQewAaikCADcCACABIANB9QBqIggvAAA7AFEgAUHTAGogCEECai0AADoAACABIAP9AAJ4/QsCVCABQeQAaiADQYgBaikCADcCACADIAP9AAJA/QsAAyABQe8AaiADQZEBaiIIQQJqLQAAOgAAIAEgCC8AADsAbSABQYABaiADQaQBaikCADcCACABIAP9AAKUAf0LAnAgAUGLAWogA0GtAWoiCEECai0AADoAACABIAgvAAA7AIkBIAEgBzoAGCABIAQ2AgAgASAMOgCIASABIAY6AGwgASAKOgBQIAEgCToANCABIAMpAQA3ABkgAUEhaiADQQhq/QABAP0LAAAgAUEwaiADQRdqKAAANgAAQaQBIQQMBQtBACADQc8BakHEzcEAEKgKDAMLQQEgA0HPAWpBxM3BABCoCgwCC0ECIANBzwFqQcTNwQAQqAoMAQtB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AAAAAAAAAAD95AEiGv0fAzgCACATIBr9HwI4AgAgFCAa/R8BOAIAIBUgGv0fADgCACALIBsgHCAe/QzzBDW/8wQ1v/MENb/zBDW//eYBIBn9DAAAAAAAAAAAAAAAAAAAAAD95gH95AH95AH95AH9DAAAAAAAAAAAAAAAAAAAAAD95AEiGf0fAzgCACAPIBn9HwI4AgAgECAZ/R8BOAIAIBEgGf0fADgCACABQTBqIQEgBEEEayIEDQALIAcgCkYNAQsgBSAOQQxsaiEBA0AgA0EEaiIEKgIAIiFD8wQ1v5QgAyoCACIiQwAAAACUkiIgICCSIiVD8wQ1P5QhJCAiQwAAAICUIANBCGoiBSoCACIjQ/MENT+UkiIgICCSISAgBSAjICQgIEPzBDW/lCAjQwAAAICUICFDAAAAAJSSIiMgI5IiI0MAAAAAlJKSkkMAAAAAkjgCACAEICEgIEPzBDU/lCAjQwAAAICUICSSkpJDAAAAAJI4AgAgAyAiICND8wQ1P5QgJUMAAACAlCAgQwAAAACUkpKSQwAAAACSOAIAIAEgA0EMaiIDRw0ACwsgCCAOQQF0aiILIAZJDQEgCyAMSw0CIAkgBkEMbGoiDCEDAkAgDUEkTwRAIAkgACAIakEMbGohASADIApB/P///wNxIgRBDGxqIQMgBCEFA0AgAUE4aiIJIAFBLGoiDSABQSBqIg8gAUEUaiIQ/VwCAP1WAgAB/VYCAAL9VgIAAyId/Qz///8+////Pv///z7///8+/eYBIhsgAUE0aiIRIAFBKGoiEiABQRxqIhMgAUEQaiIU/VwCAP1WAgAB/VYCAAL9VgIAAyIc/Qz///8+////Pv///z7///8+/eYB/eUBIhkgGf3kAf0M////Pv///z7///8+////Pv3mASEZIBz9DP///77///++////vv///7795gEgAUEwaiIHIAFBJGoiFSABQRhqIhYgAUEMaiIB/VwCAP1WAgAB/VYCAAL9VgIAAyIe/Qz///8+////Pv///z7///8+/eYBIh/95QEiGiAa/eQB/Qz///8+////Pv///z7///8+/eYBIRogByAeIBkgGiAfIBv95AEiGyAb/eQBIh79DP///z7///8+////Pv///z795gEiH/3lAf3kAf3kAf0MAAAAAAAAAAAAAAAAAAAAAP3kASIb/R8DOAIAIBUgG/0fAjgCACAWIBv9HwE4AgAgASAb/R8AOAIAIBEgHCAfIBkgGv3kAf3kAf3kAf0MAAAAAAAAAAAAAAAAAAAAAP3kASIb/R8DOAIAIBIgG/0fAjgCACATIBv9HwE4AgAgFCAb/R8AOAIAIAkgHSAaIB79DP///77///++////vv///7795gEgGf3lAf3kAf3kAf0MAAAAAAAAAAAAAAAAAAAAAP3kASIZ/R8DOAIAIA0gGf0fAjgCACAPIBn9HwE4AgAgECAZ/R8AOAIAIAchASAFQQRrIgUNAAsgBCAKRg0BCyAMIA5BDGxqIQEDQCADQQRqIgQqAgAiJEP///++lCIiIAMqAgAiI0P///8+lCIhkyIgICCSQ////z6UISAgISADQQhqIgUqAgAiJUP///8+lCImkiIhICGSISEgBSAlICAgIUP///++lCAmICKSIiIgIpJD////PpQiIpOSkkMAAAAAkjgCACAEICQgIUP///8+lCIhICIgIJKSkkMAAAAAkjgCACADICMgIiAgICGTkpJDAAAAAJI4AgAgASADQQxqIgNHDQALCyAAQQAgACAIaiIBIABPGyIEIAIoAgAgAigCCCIDa0sEQCACIAMgBEEEQQgQ2AYgAigCCCEDCyACKAIEIQQCQCAARQ0AIAGtIisgCK0iKX0iKkICWgRAIAQgA0EDdGohASAp/RL9DAAAAAAAAAAAAQAAAAAAAAD9zgEhGSAqQn6DIicgKXwhKSADICenaiEDICchKANAIAEgGUEg/csBIBn9zgH9DAAAAAABAAAAAAAAAAEAAAD9zgH9CwIAIAFBEGohASAZ/QwCAAAAAAAAAAIAAAAAAAAA/c4BIRkgKEICfSIoQgBSDQALICcgKlENAQsgKyApfSEnIAQgA0EDdGohASApQoGAgIAQfkKAgICAEHwhKCADIAhqIABqICmnayEDA0AgASAoNwIAIAFBCGohASAoQoGAgIAQfCEoICdCAX0iJ0IAUg0ACwsgAiADNgIIIAtBAWsiACAGayIBQQAgACABTxsiASACKAIAIANrSwRAIAIgAyABQQRBCBDYBiACKAIIIQMgAigCBCEECwJAIAAgBk0NACAArSIrIAatIil9IipCAloEQCAEIANBA3RqIQEgKf0S/QwAAAAAAAAAAAEAAAAAAAAA/c4BIRkgKkJ+gyInICl8ISkgAyAnp2ohAyAnISgDQCABIBlBIP3LASAZ/c4B/QwAAAAAAQAAAAAAAAABAAAA/c4B/QsCACABQRBqIQEgGf0MAgAAAAAAAAACAAAAAAAAAP3OASEZIChCAn0iKEIAUg0ACyAnICpRDQELICsgKX0hJyAEIANBA3RqIQEgKUKBgICAEH5CgICAgBB8ISgDQCABICg3AgAgAUEIaiEBIChCgYCAgBB8ISggA0EBaiEDICdCAX0iJ0IAUg0ACwsgAiADNgIIDwsgBiAMQZj5wwAQ8A4ACyAGIAtBqPnDABDxDgALIAsgDEGo+cMAEPAOAAu4EgQPfwV+Cn0CeyMAQfABayIGJAAgACgCACEHAkAgAQRAIAYgASoCCCIaIAcqAggiG5QgASoCBCIcIAcqAgQiHZQgASoCACIeIAcqAgAiIJQgASoCDCIhIAcqAgwiIpSSkpI4AhwgBiAcICCUICEgG5QgHiAdlJOSIBogIpSTOAIYIAYgISAdlCAeIBuUkiAcICKUkyAaICCUkzgCFCAGIBogHZQgISAglCAeICKUkyAcIBuUk5I4AhAgHCAHKgIQIAEqAhCTIiCUIB4gByoCFCABKgIUkyIilJMiGyAbkiEbIBogIpQgHCAHKgIYIAEqAhiTIh+UkyIdIB2SIR0gBiAfICEgG5QgHCAdlCAeIB4gH5QgGiAglJMiHyAfkiIflJOSkjgCKCAGICIgISAflCAeIBuUIBogHZSTkpI4AiQgBiAgICEgHZQgGiAflCAcIBuUk5KSOAIgDAELIAZBEGoiCEEYaiAHQRhqKAIANgIAIAhBEGogB0EQaikCADcDACAGIAf9AAIA/QsDEAsgACgCECIIKAIEIQogACgCDCINIAAoAggiDyAAKAIEIhItAAAiCxsoAgAhECAKIAgpAxAgDyANIAsbKAIAIhGtIBCtQiCGhIUiFUIgiCIWQrfTsIUMfiAVQv////8PgyIVQt2h8csMfoUgFkLdofHLDH4gFUK307CFDH6FQiCJhSIWpyITcSEHIBZCGYgiGEL/AINCgYKEiJCgwIABfiEZIAgoAgAhDgJAAkACQAJAAkADQAJAIAcgDmopAAAiFyAZhSIVQoGChIiQoMCAAX0gFUJ/hYNCgIGChIiQoMCAf4MiFUIAUgRAA0AgDiAVeqdBA3YgB2ogCnFBBHRrIgxBEGsoAgAgEUYEQCAQIAxBDGsoAgBGDQMLIBVCAX0gFYMiFUIAUg0ACwsgFyAXQgGGg0KAgYKEiJCgwIB/g0IAUg0CIAlBCGoiCSAHaiAKcSEHDAELCyAMQQhrIgkoAgAiASAAKAIUIgcoAggiCE8NASAHKAIEIAFB7ABsaiIBKQJAIRUgAUKAgICAwAA3AkAgBkEwaiIIQcgAaiABQcgAaiIHKAIANgIAIAdBADYCACAIQdQAaiABQdQAaigCADYCACAIQeAAaiABQeAAaigCADYCACAIQRBqIAFBEGr9AAIA/QsDACAGIBU3A3AgBiABKQJMNwJ8IAYgASkCWDcDiAEgBiAB/QACAP0LAzAgASgCaCEKIAEoAmQhCyAB/QACICEkIAFBMGr9AAIAISUgCSAAKAIYIgcoAgg2AgAgDEEEayAAKAIcLQAAOgAAIAhBMGogJf0LAwAgBiAk/QsDUCAHKAIIIgEgBygCAEYEQCAHQbj4wgAQnQgLIAcoAgQgAUHsAGxqIgggBkEwakHkAPwKAAAgCCAKNgJoIAggCzYCZCAHIAFBAWoiATYCCAwECyAAKAIcIRQgACgCGCIHKAIIIQwgC0UEQEEAIQ5BACELIAAoAiAoAgAiCQRAIAZBmAFqIgpBGGogCUEYaigCADYCACAKQRBqIAlBEGopAgA3AwAgBiAJ/QACAP0LA5gBQQEhCwsgDygCACEJIA0oAgAhCiABRQ0DDAILQQAhDkEAIQsgAQRAIAZBmAFqIglBGGogAUEYaigCADYCACAJQRBqIAFBEGopAgA3AwAgBiAB/QACAP0LA5gBQQEhCwsgDSgCACEJIA8oAgAhCiAAKAIgKAIAIgENAQwCCyABIAhBqPjCABCFCwALIAZBuAFqIg1BGGogAUEYaigCADYCACANQRBqIAFBEGopAgA3AwAgBiAB/QACAP0LA7gBQQEhDgsgFC0AACENIAcoAgAgDEYEQCAHQcj4wgAQnQgLIAcoAgQgDEHsAGxqIgEgCzYCACABIAYpA5gBNwIEIAEgDjYCICABIAYpA7gBNwIkIAFCgICAgMAANwJAIAH9DAAAAAAAAAAAAAAAAAAAAAD9CwJIIAFBDGogBkGYAWoiC0EIav0AAwD9CwIAIAFBHGogC0EYaigCADYCACABQSxqIAZBuAFqIgtBCGr9AAMA/QsCACABQTxqIAtBGGooAgA2AgAgAUHYAGpCADcCACABQeAAakEANgIAIAEgCTYCaCABIAo2AmQgByAMQQFqNgIIIAYgDToA4AEgBiAMNgLcASAGIBA2AtgBIAYgETYC1AEgCCgCBCIMIBNxIgEgCCgCACIJaikAAEKAgYKEiJCgwIB/gyIVUARAQQghCgNAIAEgCmohASAKQQhqIQogCSABIAxxIgFqKQAAQoCBgoSIkKDAgH+DIhVQDQALCyAIKAIIIQsCQCAJIBV6p0EDdiABaiAMcSIBaiwAACIKQQBOBH8gCSAJKQMAQoCBgoSIkKDAgH+DeqdBA3YiAWotAAAFIAoLQQFxIgogC0VxRQRAIAEgCWogGKdB/wBxIg06AAAgCCALIAprNgIIIAkgAUEIayAMcWpBCGogDToAACAIIAgoAgxBAWo2AgwgCSABQQR0ayIBQRBrIAb9AALUAf0LAgAMAQsgBkEIaiAIIAhBEGoQigIgCCAWIAgoAgAgCCgCBCAWEIUKIAZB1AFqEPAKIQELIAFBCGshCSAHKAIIIQELAkACQCABIAkoAgAiCEsEQCAHKAIEIAhB7ABsaiEBIAAoAighByAAKAIkIQggEi0AAA0BIAYgBioCHCIhOALgASAGIAYqAhgiGow4AtwBIAYgBioCFCIcjDgC2AEgBiAGKgIQIh6MOALUASAGICEgHiAGKgIkIhuUIBwgBioCICIdlJMiICAgkiIglCAcIBwgBioCKCIilCAaIBuUkyIfIB+SIh+UIB4gGiAdlCAeICKUkyIjICOSIiOUk5IgIpM4AuwBIAYgISAjlCAeICCUIBogH5STkiAbkzgC6AEgBiAhIB+UIBogI5QgHCAglJOSIB2TOALkASAIIAZB1AFqIAAoAiwgACgCMCACIAMgACgCNCICKAIAIAIoAgQgBCAFIAAoAjgqAgAgASAHKAIoERIAGgwCCyAIIAFB2PjCABCFCwALIAggBkEQaiACIAMgACgCLCAAKAIwIAQgBSAAKAI0IgIoAgAgAigCBCAAKAI4KgIAIAEgBygCKBESABoLIAZB8AFqJAALuBIDBn8MfQN7IwBBoARrIgokACAKIAg4AgggCiAHOAIEIAogCToADyAKQRBqIglBMGoiCyAEQTBq/QACAP0LAwAgCUEgaiAEQSBq/QACAP0LAwAgCUEQaiAEQRBq/QACAP0LAwAgCiAE/QACAP0LAxAgCkHQAGoiBEEgaiACQSBq/QACAP0LAwAgBEEwaiIMIAJBMGr9AAIA/QsDACAEQRBqIAJBEGr9AAIA/QsDACAJQShqIg8gDyoCACAEQShqIg0qAgCTOAIAIAogAv0AAgD9CwNQIAwqAgAhESAKIAoqAjwgCioCfJM4AjwgCyALKgIAIBGTOAIAIAQgAiAHENwCIApBiAFqQgA3AwAgDf0MAAAAAAAAAAAAAAAAAAAAAP0LAwAgCkGUAWogBCAHENwCIApBBDoA5AEgCiAIOALoASAKQbwCaiICIAkgBxDcAiAKKgKYASIHIAoqAswCIAoqAqQBkyIZlCAKKgKUASIRIAoqAtACIAoqAqgBkyIalJMiECAQkiETIAoqApwBIhAgGpQgByAKKgLUAiAKKgKsAZMiFJSTIhIgEpIhFSAKQewBaiIMQRhqIgsgFCAKKgKgASISIBOUIAcgFZQgESARIBSUIBAgGZSTIhQgFJIiG5STkpI4AgAgCiAQIAoqAsQCIhSUIAcgCioCwAIiFpQgESAKKgK8AiIXlCASIAoqAsgCIhiUkpKSOAL4ASAKIAcgF5QgEiAUlCARIBaUk5IgECAYlJM4AvQBIAogEiAWlCARIBSUkiAHIBiUkyAQIBeUkzgC8AEgCiAQIBaUIBIgF5QgESAYlJMgByAUlJOSOALsASAKIBogEiAblCARIBOUIBAgFZSTkpI4AoACIAogGSASIBWUIBAgG5QgByATlJOSkjgC/AEgAiAJIAgQ3AIgCkGIAmoiDUEYaiALKAIANgIAIAogECAKKgLEAiIIlCAHIAoqAsACIhOUIBEgCioCvAIiFZQgEiAKKgLIAiIUlJKSkjgClAIgCiAHIBWUIBIgCJQgESATlJOSIBAgFJSTOAKQAiAKIBIgE5QgESAIlJIgByAUlJMgECAVlJM4AowCIAogECATlCASIBWUIBEgFJSTIAcgCJSTkjgCiAIgCiAKKQL8ATcCmAIgCkGABGoiCyAFIAwgBigClAEiDBEBACACIAUgDSAMEQEAIAogCv1dAsACIAr9XQKEBP3qASIdIAr9XQLIAiAK/V0CjAT96wEiHv0NAAECAwQFBgcQERITFBUWF/0LAqgCIAogCioCgAQiByAKKgK8AiIIIAcgCF8bIgc4AqQCIAogCioClAQiCCAKKgLQAiIRIAggEWAbIgg4ArgCIAogBjYC0AIgCiAFNgLMAiAKIAE2AsQCIAogAzYCvAIgAyoCbCESIAogCkGwAWo2AuQCIAogCkHoAWo2AuACIAogCkEPajYC3AIgCiAKQQhqNgLYAiAKIApBBGo2AtQCIAogCTYCyAIgCiAENgLAAiAD/V0DaCEcIAMqAmQhESAKIAggEpWN/AAiBDYC/AIgCiAHIBGVjvwAIgU2AugCIAogHSAc/ecB/WggHiAR/RMiHiAc/Q0AAQIDEBESEwABAgMAAQID/ecB/Wf9DQABAgMEBQYHEBESExQVFhf9+AEiHf0LAuwCIAIgCkHoAmoiARCTAyALIAMQhgUgCkGIA2ogC0EIaiICKAIANgIAIAogCikCgAQ3A4ADIApBmANqIApBlARqKAIANgIAIAogCikCjAQ3A5ADIBwgHv0NAAECAwQFBgcQERITAAECAyEcIApB3ANqIQYgCkH0A2ohCyAKQawDaiEMIAFBDGohAyAKQbACaiENA0AgCiASIASylDgCtAMgCiAcIB39+gH95gH9CwKkAyAKIBEgBbKUOAKgAyAKIA02ApgEIAogDDYCkAQgCiAPNgKIBCAKKgI4IQggCiAKQaQCajYClAQgCiAKQaADajYCjARBCCEEQRAhBQJ9Q///f38gCEMAAAAAXiIOBH9BCAVD//9/fyAIQwAAAABdRQ0BGkEMIQVBBAsgAmooAgAqAgAgAiAFaigCACoCAJMgCJUiByAHQwAAAABdGwshBwJ9An8gCioCPCIQQwAAAABeIgQEQEEIIQlBEAwBC0P//39/IBBDAAAAAF1FDQEaQQQhCUEMCyEFQ///f38gAiAJaigCAEEEaioCACACIAVqKAIAQQRqKgIAkyAQlSIIIAhDAAAAAF0bCyEIAn1D//9/fwJ/IAoqAkAiE0MAAAAAXiIFBEBBECEJQQgMAQtD//9/fyATQwAAAABdRQ0BGkEMIQlBBAsgAmooAgBBCGoqAgAgAiAJaigCAEEIaioCAJMgE5UiECAQQwAAAABdGwshECAKIAU6AMwDIAogBDoAxAMgCiAOOgC8AwJAAkACQCAKKgIIIhMgEF1FDQAgByATXkUNACAIIBNeDQELQQIgByAIXiIBIBAgCCAHIAEbXRsiDkECdCIBIANqIQQgCkHoAmogAWoiCSgCACEFIApBuANqIA5BA3RqLQAERQRAIAkgBUEBayIJNgIAIAQgBCgCAEEBayIENgIAIAkgCkGAA2ogAWooAgAiCUgEQCAEIAlKDQMMAgsgAiADQQhqKAIANgIAIAogAykCADcDgAQgCkGABGogAWogBTYCACAKQegDaiIBQQhqIApB8AJqKAIANgIAIAsgCikDgAQ3AgAgC0EIaiACKAIANgIAIAogCikC6AI3A+gDIApBvAJqIAEQkwMMAgsgCSAFQQFqIgU2AgAgBCAEKAIAIgRBAWoiCTYCACAJIApBkANqIAFqKAIAIglMBEAgAiAKQfACaigCADYCACAKIAopAugCNwOABCAKQYAEaiABaiAENgIAIAYgAykCADcCACAGQQhqIANBCGooAgA2AgAgCkHQA2oiAUEIaiACKAIANgIAIAogCikDgAQ3A9ADIApBvAJqIAEQkwMMAgsgBSAJSA0BCyAAIAr9AAKwAf0LAgAgAEEwaiAKQbABaiIBQTBqKQIANwIAIABBIGogAUEgav0AAgD9CwIAIABBEGogAUEQav0AAgD9CwIAIApBoARqJAAPCyAKKAL8AiEEIAr9AALsAiEdIAooAugCIQUMAAsAC9QRAwt/L30IeyMAQSBrIgQkACADBEAgACgCECINBEACQCADIAAoAgxGBEAgAioCACIPIAEqAhQiGpQgAkEEaioCACIQIAEqAiwiG5SSIAJBCGoqAgAiESABKgJEIhyUkiACQQxqKgIAIhIgASoCXCIdlJIgAkEQaioCACITIAEqAnQiHpSSIAJBFGoqAgAiFCABKgKMASIflJIhFSAPIAEqAhAiIJQgECABKgIoIiGUkiARIAEqAkAiIpSSIBIgASoCWCIjlJIgEyABKgJwIiSUkiAUIAEqAogBIiWUkiEWIA8gASoCDCImlCAQIAEqAiQiJ5SSIBEgASoCPCIolJIgEiABKgJUIimUkiATIAEqAmwiKpSSIBQgASoChAEiK5SSIRcgDyABKgIIIiyUIBAgASoCICItlJIgESABKgI4Ii6UkiASIAEqAlAiL5SSIBMgASoCaCIwlJIgFCABKgKAASIxlJIhGCAPIAEqAgQiMpQgECABKgIcIjOUkiARIAEqAjQiNJSSIBIgASoCTCI1lJIgEyABKgJkIjaUkiAUIAEqAnwiN5SSIRkgDyAB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BgcUFRYXAAECAwABAgMgIf3lAf3rAf3rASIeIB795gH95AH9DAAAAAAAAAAAAAAAAAAAAAAgICAFQRhqIAX9XAI4/VYCAAH95QEgBUEIaiAF/VwCKP1WAgABICD95QH96wH96wEiHiAe/eYB/eQB/eMBIh79HwEgHv0fAF4iARshCAJAAkACQAJAAkAgHiAeIB79DQQFBgcAAQIDAAECAwABAgMgARsiHv0fACITIBRdRQRAIB79HwEiEyAUXUUNBCATQ///f39bDQQgCCgCHEH/////A3FBAUcNAQwCCwJAIBND//9/f1sEQAwBCyAGIAUgARsiBigCDCEBIAYoAhxB/////wNxQQFHBEAgHv0fASITIBRdRQRAIAEhBAwHCyATQ///f39bBEAgASEEDAcLQQEhBiAIKAIcQf////8DcUEBRgRAIAEhBAwFCwJ/IAMoApQBIg5BIUkEQCAOIQQgByEFQSAhDiARDAELIAMoAhQhBCADKAIYIQUgBwshBiAIKAIMIQggBCAORgR/IANBEGoQowQgAygCGCEFIAchBiADKAIUBSAEC0ECdCAFaiAINgIAIAYgBigCAEEBajYCACABIQQMBgsCQCABIAxJBEAgEiABQSRsaiIGKAIgIQEgA0GYAWogBigCHCABKAIIQQFrQXhxakEIaiAGIAIgAUHEAGooAgARAgAgAygCqAEiAUEERg0BIB0gAyoCmAEiF5MiEyATlCAcIAMqApwBIhiTIhMgE5SSIBsgAyoCoAEiFpMiEyATlJKRIhMgFF1FDQEgAygCrAEhCiADKAKkASEPIBchGSAYIRogFiEVIBMhFCABIQsMAQsgASAMQcicwwAQhQsACwsgHv0fASAUXUUNAyAe/R8BQ///f39bDQMgCCgCHEH/////A3FBAUYNAQsgCCgCDCEEDAMLQQAhBgsgDCAIKAIMIgFLBEAgEiABQSRsaiIFKAIgIQEgA0GYAWogBSgCHCABKAIIQQFrQXhxakEIaiAFIAIgAUHEAGooAgARAgACQCADKAKoASIBQQRGDQAgHSADKgKYASIXkyITIBOUIBwgAyoCnAEiGJMiEyATlJIgGyADKgKgASIWkyITIBOUkpEiEyAUXUUNACADKAKsASEKIAMoAqQBIQ8gFyEZIBghGiAWIRUgEyEUIAEhCwsgBkUNAQwCCyABIAxB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JAAPCyAEQQA2AhwgBEEBNgIQIARBpNnBADYCDCAEQgQ3AhQgBEEMakGs2cEAELkNAAvTDAIHfwN9IwBB4AFrIgskACALQTBqIAMgBCgCtAERAAAgCygCNCENIAsoAjAhDCALQShqIAYgBygCtAERAAACQAJAAkACQAJAIAwEQCALKAIoIhANAQsgC0EgaiADIAQoArgBEQAAIAsoAiAiDEUNASALQaABaiAMIAsoAiQgASACIAUgBiAHIAggCSAKEHcgCy0A2AEiAUEERwRAIAtB6ABqIAtB1AFqKAIANgIAIAtB2ABqIAtBxAFq/QACAP0LAwAgC0HIAGogC0G0AWr9AAIA/QsDACALQZIBaiALQdsBai0AADoAACALIAv9AAKkAf0LAzggCyALLwDZATsBkAELIAAgC/0AAzj9CwIAIAAgAToANCAAIAsvAZABOwA1IABBMGogC0E4aiIBQTBqKAIANgIAIABBIGogAUEgav0AAwD9CwIAIABBEGogAUEQav0AAwD9CwIAIABBN2ogC0GSAWotAAA6AAAMBAsgCygCLCEOIAoEf0EABSAHKAKsASEKIAQoAqwBIQ8gBygCqAEhESADIAQoAqgBEQsAIAYgERELAJIhFCADIA8RCwAhEiAGIAoRCwAiEyATIBIgEiATXRsgEiASXBshEkEBCyEKIAsgEjgCeCALIBQ4AnQgCyAKNgJwIA5BGGooAgAhCiAOQRBqKAIAIQ4gDUEYaigCACEPIA1BEGooAgAhDSALQYABaiADIAQoAoQBEQAAIAtBkAFqIAYgBygChAERAAAgCyoCjAEgCyoCnAFgDQEgC0GgAWoiCiABIAUgECAOIAYgByACIAwgDyADIAQgCCAJIAtB8ABqEEUgCy0A1AEiAkEERwRAIAtBOGoiAUEYaiAKQQxqKAIANgIAIAFBDGogCkEYaigCADYCACABQTBqIApBJGooAgA2AgAgAUEkaiAKQTBqKAIANgIAIAsgCykCpAE3AkggCyALKQKwATcCPCALIAspArwBNwJgIAsgCykCyAE3AlQgCyALKgKgATgCOAsgCyACOgBsDAILIAtBGGogBiAHKAK4AREAACALKAIYIgwEQCALQaABaiAMIAsoAhwgASAFIAIgAyAEIAggCSAKEHcgCy0A2AEiAUEERwRAIAtBmAFqIAtBsAFqKAIANgIAIAtBQGsgC0G8AWooAgA2AgAgC0H4AGogC0HIAWooAgA2AgAgC0GIAWogC0HUAWooAgA2AgAgCyALKQKoATcDkAEgCyALKQK0ATcDOCALIAspAsABNwNwIAsgCykCzAE3A4ABIAsqAqQBIQkLIAAgCTgCACAAIAspAzg3AgQgACALKQOQATcCECAAIAspA4ABNwIcIAAgCykDcDcCKCAAIAE6ADQgAEEMaiALQUBrKAIANgIAIABBGGogC0GYAWooAgA2AgAgAEEkaiALQYgBaigCADYCACAAQTBqIAtB+ABqKAIANgIAIABBN2ogC0GiAWotAAA6AAAgACALLwCgATsANQwDCyALQRBqIAMgBCgCYBEAACALQaABaiALKAIQIgwgCygCFCgCDBEAAAJAIAxFDQAgCykDoAFC5p216IDjz4cxhSALKQOoAULw4py6utTs2yaFhEIAUg0AIAAgASACIAwgBSAGIAcgCCAJIAoQcgwDCyALQQhqIAYgBygCYBEAACALQaABaiALKAIIIgwgCygCDCgCDBEAAAJAIAxFDQAgCykDoAFC5p216IDjz4cxhSALKQOoAULw4py6utTs2yaFhEIAUg0AIwBBQGoiBiQAIAZBCGoiByABIAUgDCACIAMgBCAIIAkgChByIAYtADwiAUEERwRAIAAgBikCDDcCECAAIAYpAhg3AgQgACAGKQIkNwIoIAAgBikCMDcCHCAAIAYqAgg4AgAgAEEYaiAHQQxqKAIANgIAIABBDGogB0EYaigCADYCACAAQTBqIAdBJGooAgA2AgAgAEEkaiAHQTBqKAIANgIACyAAIAE6ADQgBkFAayQADAMLIABBBToANAwCCyALQThqIAEgAiAMIA0gAyAEIAUgECAKIAYgByAIIAkgC0HwAGoQRQsgAEEwaiALQThqIgFBMGopAgA3AgAgAEEgaiABQSBq/QACAP0LAgAgAEEQaiABQRBq/QACAP0LAgAgACAL/QACOP0LAgALIAtB4AFqJAALowwBG38jAEGQAWsiDyQAAkACQAJAIABFDQAgAEEIayITKAIAQQFqIRAgEyAQNgIAIBBFDQEgACgCAA0CIABBfzYCACAPIBM2AgggDyAANgIEIA8gAEEIaiIfNgIAIAFFDQAgAUEIayIUKAIAQQFqIRAgFCAQNgIAIBBFDQEgASgC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AhAgCioCBCEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCCCEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCDCEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCECEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCFCEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCGCEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCHCEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCICEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCJCEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCKCEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCjUCLCErIBAoAgggC2tBB00EQCAQQQhqIAtBCEEBQQEQ1gYgECgCECELCyAQKAIMIAtqICs3AAAgECALQQhqIgs2AhAgCjUCMCErIBAoAgggC2tBB00EQCAQQQhqIAtBCEEBQQEQ1gYgECgCECELCyAQKAIMIAtqICs3AAAgECALQQhqIgs2AhAgCjUCNCErIBAoAgggC2tBB00EQCAQQQhqIAtBCEEBQQEQ1gYgECgCECELCyAQKAIMIAtqICs3AAAgECALQQhqIgs2AhAg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NwLoASADQgQ3AvABIANCgICAgMAANwL4ASADQgA3AoACIANCBDcCiAIgAyAD/QACuAX9CwKoASADQagDakIANwMAIANBhAVqQQA2AgAgA0EBOgCcAiAD/QwAAAAAAAAAAAAAAAAAAAAA/QsDmAMgA/0MAAAAAAAAAAAAAAAAAAAAAP0LBMADIANCADcC/AQgA/0MAAAAAAAAAAAAAAAAAACAP/0LBKACIAP9DP//f////39/AAAAAP//f//9CwTAAiAD/Qz//39/AAAAAP//f////39//QsE0AIgA/0MAAAAAP//f////39/AAAAAP0LBOACIAP9DP//f////39/AAAAAP//f//9CwTwAiAD/QwAAAAAAAAAAAAAAAAAAAAA/QsChAMgA0H////7BzYCgAMgA/0MAAAAAAAAAAAAAAAAAAAAAP0LBLACIAP9DAAAAAAAAAAAAAAAAAAAAAD9CwC7BSAD/QwAAAAAAAAAAAAAAAAAAAAA/QsAkwUgA/0MAAAAAAAAAAAAAAAAAAAAAP0LAOcFIAP9DAAAAAAAAAAAAAAAAAAAAAD9CwCQBiAD/QwAAAAAAAAAAAAAAAAAAAAA/QsA/QUgA0EAOgDYAyADQv////sHNwPQAyAD/QwAAIA/AAAAAAAAAAAAAAAA/QsEsAMgA0GAgID8AzYClAMgA0GgAmoiCEHIAWogBkEPaigAADYAACADIAP9AAC4Bf0LANkDIANBADoA9AMgA0L////7BzcC7AMgA0GEBGogBEEPaigAADYAACADIAP9AACQBf0LAPUDIANBADoAkAQgA0L////7BzcDiAQgCEGAAmogBUEPaigAADYAACADIAP9AADkBf0LAJEEIANBADoArAQgA0L////7BzcCpAQgA0G8BGogA0GcBmooAAA2AAAgAyAD/QAAjQb9CwCtBCADQQA6AMgEIANC////+wc3A8AEIANB2ARqIANBiQZqKAAANgAAIAMgA/0AAPoF/QsAyQQgA0EAOgCIBSADQQA2AvgEIANCADcD8AQgA0GAAjsB7AQgA0EANgLoBCADQQA6AOQEIANC////+wc3AtwEIAMoAgghBiADQQxqIAMoAhgiCEEGaiIFEMcCIANBHGogBRDHAiADQSxqIAUQxwIgAygCRCIEIAMoAjxGBEAgA0E8aiAEQQFBBEEQENcGIAMoAkQh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IAFBDEEAIAUbciEOIApBDGogCiADKgIAIhdDAAAAAF4iBhsqAgAhGSAIQfwBaiEKIAhBpAJqIQsgCUEMaiEBA0AgCCAaIBv9+gH95gH9CwTAAUP//39/IRAgBiAXQwAAAABdcgRAQ///f38gCCoCyAEgFCAHspQgBhsgGZMgF5UiECAQQwAAAABdGyEQC0P//39/IRJD//9/fyERIAUgFkMAAAAAXXIEQEP//39/IA4qAgAgDSoCAJMgFpUiESARQwAAAABdGyERCyAEIBVDAAAAAF1yBEBD//9/fyAYIAKylCAIKgLEASAEGyAMKgIAkyAVlSISIBJDAAAAAF0bIRILIAggBDoA7AEgCCAFOgDkASAIIAY6ANwBAkACQAJAIBAgE15FDQAgESATXkUNACASIBNeDQELQQIgECARXiICIBIgESAQIAIbXRsiD0ECdCICIAFqIQMgCEGIAWogAmoiCSgCACEHIAhB2AFqIA9BA3RqLQAERQRAIAkgB0EBayIJNgIAIAMgAygCAEEBayIDNgIAIAkgCEGgAWogAmooAgAiCUgEQCADIAlKDQMMAgsgCEGIAmoiA0EIaiIJIAFBCGooAgA2AgAgCCABKQIANwOIAiACIANqIAc2AgAgCEGYAmoiAkEIaiAIQZABaigCADYCACALIAgpA4gCNwIAIAtBCGogCSgCADYCACAIIAgpAogBNwOYAiAIQeQAaiACEI4DDAILIAkgB0EBaiIHNgIAIAMgAygCACIDQQFqIgk2AgAgCSAIQbABaiACaigCACIJTARAIAhBiAJqIgdBCGoiCSAIQZABaigCADYCACAIIAgpAogBNwOIAiACIAdqIAM2AgAgCiABKQIANwIAIApBCGogAUEIaigCADYCACAIQfABaiICQQhqIAkoAgA2AgAgCCAIKQOIAjcD8AEgCEHkAGogAhCOAwwCCyAHIAlIDQELIAAgCP0AAhD9CwIAIABBMGogCEEQaiIBQTBqKQIANwIAIABBIGogAUEgav0AAgD9CwIAIABBEGogAUEQav0AAgD9CwIAIAhBsAJqJAAPCyAIKAKcASECIAj9AAKMASEbIAgoAogBIQcMAAsAC70JAg5/An0jAEGgAmsiAiQAAkACQAJAIAAoAkBBgICAgHhHBEAgAkEMaiAAIAFBAUP//39/EHQgAigCIEEERg0B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aikCADcCACABQQhqIANBCGr9AAIA/QsCAAsgJUEwaiQADwtBAAshJyAoQQhqIiggFmogF3EhFgwACwAL+wgDCn8BewF+IwAiAiEJIAJBQGpBQHEiBSQAAkAgACgCCCIDRQRAIABBADYCFEEAIQMMAQsgACgCBCIGKAIcIQcCQAJAAkACQAJAIAYoAjxB/////wNxIAdB/////wNxakECTQRAIABBADYCFCABQQA2AgggBSAGQTBq/QAEAP0LBDAgBSAGQSBq/QAEAP0LBCAgBSAGQRBq/QAEAP0LBBAgBSAG/QAEAP0LBAAgASgCAEUEQCABQeDwwgAQwwgLIABBDGohBCABKAIEIgIgBf0ABAD9CwQAIAJBEGogBf0ABBD9CwQAIAJBIGogBf0ABCD9CwQAIAJBMGogBf0ABDD9CwQAIAIgAigCHCIIQf////8HQf////8DIAhB/////3tLG3E2AhwgAigCPCIFQf////8DcSIIDQEMBQsgAyABKAIIIgRLBEAgASgCACAEIgJrIAMgAmsiCEkEQCABIAIgCEHAAEHAABDYBiABKAIIIQILIAEoAgQiCiACQQZ0aiEHIAhBAkkEfyACBSADIARBf3NqQQZ0IgsEQCAHQQAgC/wLAAsgCiACIANqIARrQQZ0akFAaiEHIAIgCGpBAWsLIQggB/0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgB0Ewav0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgB0Egav0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgB0EQav0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgBigCHCEHIAhBAWohAwsgAEEYaiEEIAEgAzYCCCAFQQE2AgAgBigCLCEDAkAgB0H/////A3FBAUYEQCABKAIEIgJBEGogBkEQav0ABAD9CwQAIAIgBikDADcDACACQQhqIAZBCGopAwA3AwAgAkH/////B0H/////AyACKAIcIgJB/////3tLGyACcTYCHAwBCyAAIAEgBCAAKAIQIAAoAhQgBigCDCAFQQAQggIgACgCCEUNAgsCQCAAKAIEIgIoAjxB/////wNxQQFHBEAgACABIAQgACgCECAAKAIUIAMgBUEBEIICDAELIAEoAghFDQMgAkEwav0ABAAhDCABKAIEIgMgAikDIDcDICADQShqIAJBKGopAwA3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IRMgBiASOAJkIAZC////+wc3A1AgBv0M//9/////f38AAAAA//9///0LBEAgBv0MAAAAAP//f////39/AAAAAP0LBDAgBv0M//9/fwAAAAD//3////9/f/0LBCAgBv0M//9/////f38AAAAA//9///0LBBAgBv0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgBiAIKQMINwNoIAZB8ABqIAhBEGopAwA3AwAgBkH4AGogCEEYaikDADcDACAGQQA6AKgBIAZC////+wc3A6ABIAZBADYCjAEgBkIANwKEASAGIBM4AoABIAZC////+wc3ArwBIAZBADoAxAEgBkL////7BzcD2AEgBkEAOgDgASAGQv////sHNwL0ASAGQQA6APwBIAZBuAFqIAhB/ABqKAAANgAAIAYgCP0AAG39CwCpASAGQdQBaiAIQekAaigAADYAACAGIAj9AABa/QsAxQEgBkHwAWogCEHWAGooAAA2AAAgBiAI/QAAR/0LAOEBIAZBADoAmAIgBkL////7BzcDkAIgBkEAOgC0AiAGQT42ArgCIAZBgAI7AbwCIAZC////+wc3AqwCIAZBjAJqIAhBwwBqKAAANgAAIAYgCP0AADT9CwD9ASAGIAj9AAAh/QsAmQIgBkGoAmogCEEwaigAADYAACAIQZABaiQAIAdB8ANqIAtBCGooAgA2AgAgB0GMBGogDUEIaigCADYCACAHIAspAgA3A+gDIAcgDSkCADcChAQgAwRAIAdB0AVqIgMgBkHAAvwKAAAgByAFOALMBSAHIAQ4AsgFIAMgB0HIBWopAgA3AxAgAyADLQC5AkEBcjoAuQIgBiADQcAC/AoAAAsgB0EwaiAHQYADakG9AvwKAAAgCSgCACEGIAcvAb4FIQsgBy0AvQUhAyACIAIoAgBBAWs2AgAgCSAGQQFrIgI2AgAgAg0AIAdBLGoQqQ0LIAEgASgCAEEBazYCACAMIAwoAgBBAWsiATYCACABRQRAIAdBIGoQqQ0LIAAgACgCAEEBazYCACAKIAooAgBBAWsiADYCACAARQRAIAdBFGoQqQ0LQQAhAiADQQJHBEAgB0HcBWogB0EwakG9AvwKAABB4AJBEBCRDiIARQ0EIABBADYCECAAQoGAgIAQNwMAIABBFGogB0HQBWpByQL8CgAAIAAgCzsB3gIgACADOgDdAiAA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AAAAAAAA/QsAXSAE/QwAAAAAAAAAAAAAAAAAAAAA/QsASiAE/QwAAAAAAAAAAAAAAAAAAAAA/QsANyAE/QwAAAAAAAAAAAAAAAAAAAAA/QsAJCAEQYABaiILIAVB9AJqIgwQrgQgA0HgAGogC0EIaiINKAIANgIAIAMgBCkCgAE3AlggBCoCjAEhDyALIAwQrgQgBEEcaiANKAIANgIAIAQgBCkCgAE3AhQgBCoCjAEhECADIA84AmQgA0L////7BzcDUCAD/Qz//3////9/fwAAAAD//3///QsEQCAD/QwAAAAA//9/////f38AAAAA/QsEMCAD/Qz//39/AAAAAP//f////39//QsEICAD/Qz//3////9/fwAAAAD//3///QsEECAD/QwAAAAAAAAAAAAAAAAAAAAA/QsEACADIAQpAwg3A2ggA0HwAGogBEEQaikDADcDACADQfgAaiAEQRhqKQMANwMAIANBADoAqAEgA0L////7BzcDoAEgA0EANgKMASADQgA3AoQBIAMgEDgCgAEgA0L////7BzcCvAEgA0EAOgDEASADQv////sHNwPYASADQQA6AOABIANC////+wc3AvQBIANBADoA/AEgA0G4AWogBEH8AGooAAA2AAAgAyAE/QAAbf0LAKkBIANB1AFqIARB6QBqKAAANgAAIAMgBP0AAFr9CwDFASADQfABaiAEQdYAaigAADYAACADIAT9AABH/QsA4QEgA0EAOgCYAiADQv////sHNwOQAiADQQA6ALQCIANBNzYCuAIgA0GAAjsBvAIgA0L////7BzcCrAIgA0GMAmogBEHDAGooAAA2AAAgAyAE/QAANP0LAP0BIAMgBP0AACH9CwCZAiADQagCaiAEQTBqKAAANgAAIARBkAFqJAAgBUHwA2ogCEEIaigCADYCACAFQYwEaiAKQQhqKAIANgIAIAUgCCkCADcD6AMgBSAKKQIANwKEBCAFQTBqIANBvQL8CgAAIAYoAgAhBCAFLwG+BSEIIAUtAL0FIQMgAiACKAIAQQFrNgIAIAYgBEEBayICNgIAIAINACAFQSxqEKkNCyABIAEoAgBBAWs2AgAgCSAJKAIAQQFrIgE2AgAgAUUEQCAFQSBqEKkNCyAAIAAoAgBBAWs2AgAgByAHKAIAQQFrIgA2AgAgAEUEQCAFQRRqEKkNC0EA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kAlqIQIgDv0MBAAAAAQAAAAEAAAABAAAAP2uASEOIANBBGsiAw0ACyABIARGDQELIAkgBkGkAmxqIQIgCCAKayIJQQFrIQRBACEDA0AgAkGAgICAeDYCACACQQRqIAxBASADIARGIgEbNgIAIAJBCGogCyAKIANBAWoiA2ogARs2AgAgAkGkAmohAiADIAlHDQALIAMgBmohBgsgACAHNgIEIABBATYCACAAIAY2AhAgBUEgaiQAC6MFAQp/AkACQCAAKAIIIgQgAU8EQCAAIAE2AgggASAERwRAIAQgAWshBCAAKAIEIAFBBHRqIQMDQCADKAIAIgAEQCADQQRqKAIAIABBAnRBBBDoDgsgA0EQaiEDIARBAWsiBA0ACwsgAigCACIARQ0BIAIoAgQgAEECdEEEEOgODwsgAigCDCEGIAIoAgghCCACKAIEIQogAigCACELIAQhBSABIARrIgkgACgCACAEa0sEQCAAIAQgCUEEQRAQ1wYgACgCCCEFCyAAKAIEIAVBBHRqIQMCQCAJQQJJDQAgCEECdCEHIAhB/////wNLDQIgB0H8////B0sNAiAHBEAgBEF/cyABaiECIAUgCWpBAWshBUEEIQwDQCAHQQQQkQ4iAUUNBCAHBEAgASAKIAf8CgAACyADQQxqIAY2AgAgA0EIaiAINgIAIANBBGogATYCACADIAg2AgAgA0EQaiEDIAJBAWsiAg0ACwwBCyABIARBf3NqIgFBA3EhAiAJQQJrQQNPBEAgAUF8cSEBA0AgA0KAgICAwAA3AgAgA0E8aiAGNgIAIANBOGpBADYCACADQTBqQoCAgIDAADcCACADQSxqIAY2AgAgA0EoakEANgIAIANBIGpCgICAgMAANwIAIANBHGogBjYCACADQRhqQQA2AgAgA0EQakKAgICAwAA3AgAgA0EMaiAGNgIAIANBCGpBADYCACADQUBrIQMgAUEEayIBDQALCyACBEADQCADQoCAgIDAADcCACADQQxqIAY2AgAgA0EIakEANgIAIANBEGohAyACQQFrIgINAAsLIAUgCWpBAWshBQsgAyAGNgIMIAMgCDYCCCADIAo2AgQgAyALNgIAIAAgBUEBajYCCAsPCyAMIAdBgPzBABDXDQALvQUBC38jAEEgayICJAACQCABKAIEIgNFBEAgAEGAgICAeDYCAAwB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A0AgAyAGTw0CIAcgA0GAA2xqIgwoAvACIgMgAkcNAAsgDEHwAmogCTYCAAwBCyAMQQhqIAk2AgALIAggC08NACAOQiCIpyEJIAIgBCAIQQR0aiIIKAIMIgNHBEADQCADIAZPDQIgByADQYADbGoiCCgC9AIiAyACRw0ACyAIQfQCaiAJNgIADAELIAhBDGogCTYCAAsgCiAFQYAD/AoAACAFIAcgBkEBayIDQYADbGpBgAP8CgAAIAEgAzYCFAJAIAIgA08NACAHIAJBgANsaikD+AIiDaciASALTw0AIA1CIIinIQYCQCAEIAFBBHRqIgUoAggiASADRwRAA0AgASADTw0CIAMgByABQYADbGoiBSgC8AIiAUcNAAsgBUHwAmogAjYCAAwBCyAFQQhqIAI2AgALIAYgC08NACAEIAZBBHRqIgQoAgwiASADRwRAA0AgASADTw0CIAMgByABQYADbGoiBCgC9AIiAUcNAAsgBEH0AmogAjYCAAwBCyAEQQxqIAI2AgALIAAgCkHwAvwKAAALIApBgANqJAALvgQBCH8jAEEQayIDJAAgAyABNgIEIAMgADYCACADQqCAgIAONwIIAn8CQAJAAkAgAigCECIJBEAgAigCFCIADQEMAgsgAigCDCIARQ0BIAIoAggiASAAQQN0aiEEIABBAWtB/////wFxQQFqIQYgAigCACEAA0ACQCAAQQRqKAIAIgVFDQAgAygCACAAKAIAIAUgAygCBCgCDBEFAEUNAEEBDAULQQEgASgCACADIAFBBGooAgARAwANBBogAEEIaiEAIAFBCGoiASAERw0ACwwCCyAAQRhsIQogAEEBa0H/////AXFBAWohBiACKAIIIQQgAigCACEAA0ACQCAAQQRqKAIAIgFFDQAgAygCACAAKAIAIAEgAygCBCgCDBEFAEUNAEEBDAQLQQAhB0EAIQgCQAJAAkAgBSAJaiIBQQhqLwEAQQFrDgIBAgALIAFBCmovAQAhCAwBCyAEIAFBDGooAgBBA3RqLwEEIQgLAkACQAJAIAEvAQBBAWsOAgECAAsgAUECai8BACEHDAELIAQgAUEEaigCAEEDdGovAQQhBwsgAyAHOwEOIAMgCDsBDCADIAFBFGooAgA2AghBASAEIAFBEGooAgBBA3RqIgEoAgAgAyABKAIEEQMADQMaIABBCGoh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CANAIAEoAighAiABQQA2AiggAkEBcQRAIAAgAjYCACAAIAf9AAIA/QsCBCAAQRRqIAdBEGr9AAIA/QsCACAAQSRqIAdBIGooAgA2AgAMBAsgASADQQFqIgM2AlQgCCgCDEEBayADTQRAIAUgCCgCEEECa08NAyABQQA2AlQgASAFQQFqIgU2AlhBACEDCyAEQTBqIgIgCCADIAUQnQIgASACQdAA/AoAACAJIAZBEGr9AAIA/QsDACAKIAZBIGooAgA2AgAgASgCACECIAFBADYCACAEIAb9AAIA/QsDCCACQQFxRQ0ACwsgACACNgIAIAAgBP0AAwj9CwIEIABBFGogCf0AAwD9CwIAIABBJGogCigCADYCAAwBCyAAQQA2AgALIARBgAFqJAALwwMCAX8JfUP//39/IQdD//9//yEIAkAgASgCCEUEQEP//3//IQZD//9//yEFQ///f38hA0P//39/IQQMAQtD//9//yEGQ///f/8hBUP//39/IQND//9/fyEEAkACQCABKAIEIgIoAjxB/////wNxIAIoAhxB/////wNxag4CAgABCyACKgIYIQggAioCFCEGIAIqAhAhBSACKgIIIQcgAioCBCEDIAIqAgAhBAwBCyACKgIYIgYgAioCOCIFIAUgBl8bIQggAioCFCIGIAIqAjQiBSAFIAZfGyEGIAIqAhAiBSACKgIwIgMgAyAFXxshBSACKgIIIgMgAioCKCIEIAMgBF8bIQcgAioCBCIDIAIqAiQiBCADIARfGyEDIAIqAgAiBCACKgIgIgkgBCAJXxshBAsgACAHIAEqAmwiB0MAAAA/lCIJkiAHlY78ADYCCCAAIAMgASoCaCIDQwAAAD+UIgqSIAOVjvwANgIEIAAgBCABKgJkIgRDAAAAP5QiC5IgBJWO/AA2AgAgACAIIAmTIAeVjvwAQQFqNgIUIAAgBiAKkyADlY78AEEBajYCECAAIAUgC5MgBJWO/ABBAWo2AgwLiAMBB38jAEEQayIEJAACQAJAAkACQCABKAIEIgIEQCABKAIAIQYgAkEDcSEFAkAgAkEESQRAQQAhAgwBCyAGQRxqIQMgAkF8cSEIQQAhAgNAIAMoAgAgA0EIaygCACADQRBrKAIAIANBGGsoAgAgAmpqamohAiADQSBqIQMgCCAHQQRqIgdHDQALCyAFBEAgB0ED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IAMoAvgFIAMoAvwFTg0AQQAhBSADQdQHagwBCyADIAUgB2oiBSAHTzYC1AcgA0H8DmoLIAU2AgAgAygC/A4hCCADKALUByEFCyADKAKABkEBRgRAQQAhBEEAIQcgAygChAYEQCADKAKoBiIGIAMoAqQGIgdrQQAgBiAHShshBwsgAygCrAYEQCADKALQBiIEIAMoAswGIgZrQQAgBCAGShshBAsCfwJAIAMoAtQGRQ0AIAMoAogHIAMoAowHTg0AQQAhBCADQdQHagwBCyADIAQgB2oiBCAHTzYC1AcgA0H8DmoLIAQ2AgAgAygC/A4hBiADKALUByEECwJ/AkAgAygCkAcEQCADKALAByADKALEB04gBXEgBHENAUEAIQUgA0HUB2oMAgsgBCAFcUEBcQ0AQQAhBSADQdQHagwBCyAGIAhqIQUgA0H8DmoLIAU2AgALQQRBfyAJIAtqIgQgBCAJSRsgCyAQG0EBaiIEQX8gBBsiBCAEQQRNGyIGQQJ0IQUgBEH/////A0sNAyAFQfz///8HSw0DQQQhDCAFQQQQkQ4iBEUNAyAEIA82AgBBASEHIANBATYC0AcgAyAENgLMByADIAY2AsgHIANB1AdqIgUgA0EkakGkB/wKAAAgA0EQaiAFEGogAygCEEEBcUUNBCADKAIUIQxBBCELA0AgAygCyAcgB0YEQCADKAL0ByADKALwB2tBACADKALsBxshDyADKALcByADKALYB2shECADKALUByERAkAgAygChAhBA0YNACADKALICSIEQQJHBEBBASEFQQAhCEEAIQlBASEGIARBAXEEQEEAIQZBACEEIAMoAswJBEAgAygC8AkiBCADKALsCSIJa0EAIAQgCUobIQQLIAMoAvQJBEAgAygCmAoiBiADKAKUCiIJa0EAIAYgCUobIQYLAn8CQCADKAKcCkUNACADKALQCiADKALUCk4NAEEAIQYgA0H8DmoMAQsgAyAEIAZqIgYgBE82AvwOIANB+A5qCyAGNgIAIAMoAvgOIQkgAygC/A4hBgsgAygC2ApBAUYEQEEAIQVBACEEIAMoAtwKBEAgAygCgAsiBCADKAL8CiIIa0EAIAQgCEobIQQLIAMoAoQLBEAgAygCqAsiBSADKAKkCyIIa0EAIAUgCEobIQULAn8CQCADKAKsC0UNACADKALgCyADKALk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AhxB/////wNxag4CAAECCyADQv////v///+/fzcDECAD/Qz//39///9/f///f3///3///QsEAAwCCyADQRRqIAFBGGooAgA2AgAgAyABKQMANwMAIAMgASkCEDcCDCADIAFBCGooAgA2AggMAQsgAyABKgIYIgQgASoCOCIFIAQgBWAbOAIUIAMgASoCFCIEIAEqAjQiBSAEIAVgGzgCECADIAEqAhAiBCABKgIwIgUgBCAFYBs4AgwgAyABKgIIIgQgASoCKCIFIAQgBV8bOAIIIAMgASoCBCIEIAEqAiQiBSAEIAVfGzgCBCADIAEqAgAiBCABKgIgIgUgBCAFXxs4AgALIAAgAyACELsDIANBIGokAAu2AgIFfwF+IwBBQGoiAiQAIAEoAgBBgICAgHhGBEAgASgCDCEEIAJBHGoiBUEIaiIGQQA2AgAgAkKAgICAEDcCHCACQShqIgNBCGogBCgCACIEQQhqKQIANwMAIANBEGogBEEQaikCADcDACACIAQpAgA3AyggBUHYicQAIAMQuAMaIAJBGGogBigCACIDNgIAIAIgAikCHCIHNwMQIAFBCGogAzYCACABIAc3AgALIAEpAgAhByABQoCAgIAQNwIAIAJBCGoiAyABQQhqIgEoAgA2AgAgAUEANgIAIAIgBzcDAEEMQQQQkQ4iAUUEQEEEQQxB+MrEACgCACIAQcwIIAAbEQAAAAsgASACKQMANwIAIAFBCGogAygCADYCACAAQcyNxAA2AgQgACABNgIAIAJBQGskAAuRAgEFfyMAQRBrIgUkAAJAAkACQCAARQ0AIABBCGsiBigCAEEBaiEDIAYgAzYCACADRQ0BIAAoAgAiA0F/Rg0CIAAgA0EBajYCACAFIAY2AgwgBSAANgIIIAUgAEEEajYCBCACRQ0AIAJBCGsiAygCACIHQQFqIQQgAyAENgIAIARFDQEgAigCAA0CIAJBfzYCACABIAAoAkwiBEkEQCACQQRqIAAoAkggAUH0AGxqQfQA/AoAACAAKAJMIQQLIAJBADYCACADIAc2AgAgBigCACECIAAgACgCAEEBazYCACAGIAJBAWsiADYCACAARQRAIAVBDGoQ5AsLIAVBEGokACABIARJDwsQgw8LAAsQhA8AC94CAgV9A3sgACABKgIEIgVDq6qqPpQgASoCECIDQ6uqqj6U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ayIANgIAIABFBEAgA0GMCGoQpg0LQQAhACADKAIAQQJHBEAgA0GQCGogA0GACPwKAABBoAhBEBCRDiIARQ0EIABBADYCECAAQoGAgIAQNwMAIABBFGogA0GECGpBjAj8CgAAIABBEGohAAsgA0GQEGokACAADwsQgw8LAAsQhA8AC0EQQaAIQfjKxAAoAgAiAEHMCCAAGxEAAAALiwIBCX8gACIHKAIIIgIgAUkEQCACIQMgASACayIFIAAoAgAgAmtLBEAgACACIAVBBEEEENgGIAAoAgghAwsgBygCBCADQQJ0aiEAAkAgBUECSQRAIAAhBAwBCwJAAkAgASACQX9zaiIIQQRJBEAgACEEQQEhCQwBCyAIQXxxIgZBAXIhCSAAIAZBAnRqIQQgBiEKA0AgAP0MAAAAAAAAAAAAAAAAAAAAAP0LAgAgAEEQaiEAIApBBGsiCg0ACyAGIAhGDQELIAIgCWogAWshAANAIARBADYCACAEQQRqIQQgAEEBaiIADQALCyADIAVqQQFrIQMLIARBADYCACADQQFqIQELIAcgATYCCAu2AgICfQZ/IAAoAggiA0UEQEP//39/DwsgACgCBCEFIANBAXEhBgJAIANBAUYEQEEAIQND//9/fyEBDAELIAVBxABqIQAgA0F+cSEHQQAhA0P//39/IQEDQCAAQShrKAIAIABBJGsoAgAiBCgCCEEBa0F4cWpBCGogBCgCqAERCwAhAiAAKAIAIQQgAEEEaygCACEIIABByABqIQAgASABIAIgASACXRsgAiACXBsiAiACIAggBCgCCEEBa0F4cWpBCGogBCgCqAERCwAiASABIAJeGyABIAFcGyEBIAcgA0ECaiIDRw0ACwsgBgRAIAUgA0EkbGoiA0EgaigCACEAIAEgASADQRxqKAIAIAAoAghBAWtBeHFqQQhqIAAoAqgBEQsAIgIgASACXRsgAiACXBshAQsgAQu2AgIDfQZ/IAAoAggiBEUEQEP//39/DwsgACgCBCEGIARBAXEhBwJAIARBAUYEQEEAIQRD//9/fyEBDAELIAZBxABqIQAgBEF+cSEIQQAhBEP//39/IQEDQCAAQShrKAIAIABBJGsoAgAiBSgCCEEBa0F4cWpBCGogBSgCrAERCwAhAiAAKAIAIQUgAEEEaygCACEJIABByABqIQAgCSAFKAII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AkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgACfyAAKAIMIAFNBEAgACACNgIAIAQgBTYCAEEADAELIAAoAgggAUHUAWxqIgEpAighBiABQTBqKAIAIQEgACACNgIAIANBCGoiAiABNgIAIAQgBTYCACADIAY3AwBBGEEEEJEOIgBFDQQgAEEANgIIIABCgYCAgBA3AgAgACADKQMANwIMIABBFGogAigCADYCACAAQQhqCyEAIANBEGokACAADwsQgw8LAAsQhA8AC0EEQRhB+MrEACgCACIAQcwIIAAbEQAAAAv4AQIDfwZ9AkAgASgCCEUEQAwBCyABKAIEIgNBACACKgIIIgYgAyoCGF8bQQAgAioCBCIHIAMqAhRfG0EAIAIqAgAiCCADKgIQXxtBACACKgIUIgkgAyoCCGAbQQAgAioCECIKIAMqAgRgG0EAIAIqAgwiCyADKgIAYBshBSADKAI8Qf////8DcUUNACADKgIgIAtfIAMqAiQgCl9xIAMqAiggCV9xIAMqAjAgCGBxIAMqAjQgB2BxIAMqAjggBmBxIQQgA0EgaiEDCyAAIAU2ApABIAAgATYCiAEgACACNgKMASAAIAQ2AoQBIAAgAzYCBCAAQQA2AgALqwIBAn0CQAJAAkAgASgCCEUNACABKAIEIgEoAjxB/////wNxIAEoAhxB/////wNxag4CAAECCyAAQv////v///+/fzcCECAA/Qz//39///9/f///f3///3///QsCAA8LIAAgASkCADcCACAAIAEpAhA3AgwgAEEIaiABQQhqKAIANgIAIABBFGogAUEYaigCADYCAA8LIAAgASoCGCICIAEqAjgiAyACIANgGzgCFCAAIAEqAhQiAiABKgI0IgMgAiADYBs4AhAgACABKgIQIgIgASoCMCIDIAIgA2AbOAIMIAAgASoCCCICIAEqAigiAyACIANfGzgCCCAAIAEqAgQiAiABKgIkIgMgAiADXxs4AgQgACABKgIAIgIgASoCICIDIAIgA18bOAIAC/wBAgN/AX4jAEEQayIEJAACQAJAAkAgAARAIABBCGsiBSgCAEEBaiEDIAUgAzYCACADRQ0BIAAoAgAiA0F/Rg0CIAAgA0EBajYCACAEIAU2AgwgBCAANgIIIAQgAEEIaiIDNgIEIAJBBU0EQCADIAG9IganIAZCIIin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AWohASADIAE2AgAgAUUNASAAKAIAIgFBf0YNAiAAIAFBAWo2AgAgACgCBCIFQZABaigCACEGIAUpAogBIQcgACABNgIAIAJBCGoiASAGNgIAIAMgBDYCACACIAc3AwBBGEEEEJEOIgBFDQMgAEEANgIIIABCgYCAgBA3AgAgACACKQMANwIMIABBFGogASgCADYCACACQRBqJAAgAEEIag8LEIMPCwALEIQPAAtBBEEYQfjKxAAoAgAiAEHMCCAAGxEAAAAL6wECBn8BfiMAQRBrIgIkAAJAAkACQCAABEAgAEEIayIDKAIAIgRBAWohASADIAE2AgAgAUUNASAAKAIAIgFBf0YNAiAAIAFBAWo2AgAgACgCBCIFQZwBaigCACEGIAUpApQBIQcgACABNgIAIAJBCGoiASAGNgIAIAMgBDYCACACIAc3AwBBGEEEEJEOIgBFDQMgAEEANgIIIABCgYCAgBA3AgAgACACKQMANwIMIABBFGogASgCADYCACACQRBqJAAgAEEIag8LEIMPCwALEIQPAAtBBEEYQfjKxAAoAgAiAEHMCCAAGxEAAAAL2AECAX8BfSAAKgIAIQMgASgCACICKAIIIQEgAigCACABa0EDTQRAIAIgAUEEQQFBARDWBiACKAIIIQELIAIoAgQgAWogAzgAACACIAFBBGoiATYCCCAAKgIEIQMgAigCACABa0EDTQRAIAIgAUEEQQFBARDWBiACKAIIIQELIAIoAgQgAWogAzgAACACIAFBBGoiATYCCCAAKgIIIQMgAigCACABa0EDTQRAIAIgAUEEQQFBARDWBiACKAIIIQELIAIgAUEEajYCCCACKAIEIAFqIAM4AABBAAvBAQIFfwF+IwBBIGsiAiQAQQQgACgCACIFQQF0IgQgBEEETRsiBK1CDH4iB0IgiEIAUgRAQQBBACABENcNAAsCQCAHpyIGQfz///8HTQR/IAIgBQR/IAIgBUEMbDYCHCACIAAoAgQ2AhRBBAVBAAs2AhggAkEIakEEIAYgAkEUahDiCSACKAIIQQFHDQEgAigCECEDIAIoAgwFQQALIAMgARDXDQALIAIoAgwhASAAIAQ2AgAgACABNgIEIAJBIGokAAvBAQIFfwF+IwBBIGsiAiQAQQQgACgCACIFQQF0IgQgBEEETRsiBK1CGH4iB0IgiEIAUgRA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ACADQQxqIQIgAEEARyEEAkACQEGAAkHAABCRDiIABEAgAEEAOgDIASAAQoGAgIAQNwPAASAAQQE6AJwBIABCBDcClAEgAEIANwKMASAAQoCAgIDAADcChAEgAEEAOgCAASAAQgA3A0AgAEIANwMAQYACQcAAEJEOIgFFDQIgAUEAOgDIASABQoGAgIAQNwPAASABQQE6AJwBIAFCBDcClAEgAUIANwKMASABQoCAgIDAADcChAEgAUEAOgCAASABQgA3A0AgAUIANwMAIAIgBDoAICACIAE2AhwgAkEBNgIYIAIgADYCFCACQQE2AhAgAiABNgIMIAJBATYCCCACIAA2AgQgAkEBNgIADAELDAELQTBBBBCRDiIARQRAQQRBMEH4ysQAKAIAIgBBzAggABsRAAAACyAAQQA2AgggAEKBgICAEDcCACAAIAP9AAIM/QsCDCAAQRxqIANBHGr9AAIA/QsCACAAQSxqIANBLGooAgA2AgAgA0EwaiQAIABBCGoPC0HAAEGAAkH4ysQAKAIAIgBBzAggABsRAAAAC5ABAQd9IAIqAgghBCACKgIEIQUgAioCACEGIAEqAgghByABKgIEIQggASoCACEJIAEqAgwhCkEQQQQQkQ4iAUUEQEEEQRBB+MrEACgCACIAQcwIIAAbEQAAAAsgASAKOAIMIAEgByAElDgCCCABIAggBZQ4AgQgASAJIAaUOAIAIABBtNjDADYCBCAAIAE2AgALgAECAX8BfSMAQSBrIgIkACABKgIIIgNDAAAAAGBFBEAgAkEANgIYIAJBATYCDCACQejgwgA2AgggAkIENwIQIAJBCGpBoITEABC5DQALIABBADYCCCAAQgA3AgAgACADIAEqAgAiAyADlCABKgIEIgMgA5SSkZI4AgwgAkEgaiQAC8oGAgd/A3sjAEHQBmsiAiQAIwBBkAFrIgAkACACQfwCaiEEIwBBIGsiAyQAIANBADYCGCADQQhqQRBBgAwgA0EUahDiCSADKAIIQQFGBEAgAygCDCADKAIQQcCLwgAQ1w0AC/0MAAAAAAEAAAACAAAAAwAAACEIQQQhBSADKAIMIgYhAQNAIAFBADYCACABQYAJakEANgIAIAFBgAZqQQA2AgAgAUGAA2pBADYCACABQYQJaiAI/QwDAAAAAwAAAAMAAAADAAAA/TgiCf0MAQAA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QQEhBEHWrcQAQdetxAAgCUEASCIAG0HWrcQAQQEgABsgChshCCAJQR92IApyIQcgBkEERwRAIAJBAzYCmAggAkHbrcQANgKUCCACQQI7AZAIIAJBkAhqDAMLQQIhBCACQQI7AZAIIAVFBEBBASEEIAJBATYCmAggAkHercQANgKUCCACQZAIagwDCyACIAU2AqAIIAJBADsBnAggAkECNgKYCCACQa2txAA2ApQIIAJBkAhqDAILQdatxABBASAJQQBIIgAbIQNB1q3EAEHXrcQAIAAbIQggCUEfdiEEIAJBkAhqIgcgAkHQCGogAkEQaiAGQQR2QRVqIgZBgIB+QQAgBWsgBcFBAEgbIgAQnwIgAMEhAAJAIAIoApAIBEAgAkHICGogB0EIaigCADYCACACIAIpApAINwPACAwBCyACQcAIaiACQdAIaiACQRBqIAYgABA5CyAIIAMgChshCCAEIApyIQcgACACLgHICCIASARAIAJBCGogAigCwAggAigCxAggACAFIAJBkAhqELUFIAIoAgwhBCACKAIIDAILQQIhBCACQQI7AZAIIAVFBEBBASEEIAJBATYCmAggAkHercQANgKUCCACQZAIagwCCyACIAU2AqAIIAJBADsBnAggAkECNgKYCCACQa2txAA2ApQIIAJBkAhqDAELIAJBAzYCmAggAkHYrcQANgKUCCACQQI7AZAIQQEhCEEAIQdBASEEIAJBkAhqCyEAIAIgBDYCzAggAiAANgLICCACIAc2AsQIIAIgCDYCwAggASACQcAIahCvAyEAIAJB8AhqJAAgAAtpAQR+IAEoAgAgAkFsbGoiAUEUaykCACAAKAIAKAIAKQMAhSIDQiCIIgQgAUEIazUCAEK307CFDIUiBX4gAUEMazUCAELdofHLDIUiBiADQv////8PgyIDfoUgAyAFfiAEIAZ+hUIgiYULbwEEfiABKAIAIAJBBHRrIgFBDGspAABCl5Kcqtu2tcI/hSIDQiCIIgUgAUEQaykAACAAKAIAKAIAKQMAQjSJhSIEQiCIIgZ+IANC/////w+DIgMgBEL/////D4MiBH6FIAMgBn4gBCAFfoVCIImFC24BB30gAEICNwIQIAAgASoCACIEIAIqAgAiBZQgASoCBCIGIAIqAgQiB5SSIAEqAggiCCACKgIIIgmUkiIDQwAAAABf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fwJ+IwBBIGsiAiQAIAJBCGogACABKAJgEQAAIAJBEGogAigCCCIAIAIoAgwoAgwRAAAgAikDGCEDIAIpAxAhBCACQSBqJAAgAEEAIARCj9iZz4j1zJ4HhSADQo34tqK32v+FyACFhFAbC2sCAX8CfiMAQSBrIgIkACACQQhqIAAgASgCYBEAACACQRBqIAIoAggiACACKAIMKAIMEQAAIAIpAxghAyACKQMQIQQgAkEgaiQAIABBACAEQuadteiA48+HMYUgA0Lw4py6utTs2yaFhFAbC2sCAX8CfiMAQSBrIgIkACACQQhqIAAgASgCZBEAACACQRBqIAIoAggiACACKAIMKAIMEQAAIAIpAxghAyACKQMQIQQgAkEgaiQAIABBACAEQuadteiA48+HMYUgA0Lw4py6utTs2yaFhFAbC20CAX8CfiMAQSBrIgIkACACQQhqIAAgASgCYBEAACACQRBqIAIoAggiACACKAIMKAIMEQAAIAIpAxghAyACKQMQIQQgAkEgaiQAIABBACAEQt6Fisa2mpP80ACFIANChcGXiNPx7PrkAIWEUBsLbQIBfwJ+IwBBIGsiAiQAIAJBCGogACABKAJgEQAAIAJBEGogAigCCCIAIAIoAgwoAgwRAAAgAikDGCEDIAIpAxAhBCACQSBqJAAgAEEAIARCr6ns6fSs26rgAIUgA0LLr+Dt64uH8Kt/hYRQGwtsAgF/An4jAEEgayICJAAgAkEIaiAAIAEoAmARAAAgAkEQaiACKAIIIgAgAigCDCgCDBEAACACKQMYIQMgAikDECEEIAJBIGokACAAQQAgBELO24DRiLeklRyFIANC5vTWnZL/juehf4WEUBsLbAIBfwJ+IwBBIGsiAiQAIAJBCGogACABKAJkEQAAIAJBEGogAigCCCIAIAIoAgwoAgwRAAAgAikDGCEDIAIpAxAhBCACQSBqJAAgAEEAIARCztuA0Yi3pJUchSADQub01p2S/47noX+FhFAbC2sCAX8CfiMAQSBrIgIkACACQQhqIAAgASgCYBEAACACQRBqIAIoAggiACACKAIMKAIMEQAAIAIpAxghAyACKQMQIQQgAkEgaiQAIABBACAEQpTFqNTN/JyWQ4UgA0L2+IbMtIfkyQKFhFAbC2wCAX8CfiMAQSBrIgIkACACQQhqIAAgASgCYBEAACAC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ATgCNCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATgCOCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiASgCACIDQQFqIQIgASACNgIAIAJFDQEgACgCAA0CIABBAjYCICABIAM2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATYCNCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATYCOCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATgCBCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATgCECACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATgCJCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATgCLCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATYCMCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATYCPCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATYCQCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAg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AgQoAhQREQANAEEADwsgACgCCCIERQRAQQEPCyAEIAEgAiADIAAoAgwoAhgREQALRgEBfyMAQTBrIgUkACAFQQhqIAEgAiADIAQQdAJAIAUoAhxBBEcEQCAAIAX9AAII/QsCAAwBCyAAQQI6AAwLIAVBMGokAAtGAQF/IAAoAgAiACgCCCICIAAoAgBGBEAgACACQQFBAUEBENYGIAAoAgghAgsgACACQQFqNgIIIAAoAgQgAmogAToAAEEAC1AAIAEoAgAgAigCACADKAIAIAQoAgAQDiEBQezKxAAoAgAhAkHoysQAKAIAIQNB6MrEAEIANwIAIAAgAiABIANBAUYiARs2AgQgACABNgIACzwBAX8jAEEgayICJAAgAUEBQQFBACAAKQMAIAJBDGoiABDxBSIBIABqQRQgAWsQ2QIhACACQSBqJAAgAAs9AQF/AkAgASAAKAKMA08NACAAKAKIAyABQYADbGoiACgCAEEBRw0AIABBEGpBACAAKAIEIAJGGyEDCyADCzsBAX8CQCABIAAoAhBPDQAgACgCDCABQbABbGoiACgCAEEBRw0AIABBEGpBACAAKAIEIAJGGyEDCyADC0ABAX1DAAAAACABKgIAIgMgA5QgASoCBCIDIAOUkiABKgIIIgMgA5SSkSAAKgIAkyIDIANDAAAAAF0bIAMgAhsLPwEBfyMAQSBrIgIkACACQQhqIAAoAgAgAkEWahDMBSABQQFBAUEAIAIoAgggAigCDBDZAiEAIAJBIGokACAAC5ENAwh/BX4BfCABKAIIIgdBgICAAXEhBSAAKwMAIQ8gB0GAgICAAXFFBEAgBUEARyEEIwBBgAFrIgMkACAPvSEKAn9BAyAPmUQAAAAAAADwf2ENABpBAiAKQoCAgICAgID4/wCDIgtCgICAgICAgPj/AFENABogCkL/////////B4MiDkKAgICAgICACIQgCkIBhkL+////////D4MgCkI0iKdB/w9xIgYbIgxCAYMhDSALUARAQQQgDlANARogBkGzCGshBkIBIQsgDVAMAQtCgICAgICAgCAgDEIBhiAMQoCAgICAgIAIUSIAGyEMQgJCASAAGyELQct3Qcx3IAAbIAZqIQYgDVALIQAgAyAGOwF4IAMgCzcDcCADQgE3A2ggAyAMNwNgIAMgADoAegJ/AkACQAJAAkACQCAAQQFNBEAgA0EgaiIGIANB4ABqIANBD2oQjQFB1q3EAEEBIApCAFMiABshBUHWrcQAQdetxAAgABshByAKQj+IpyEAIAMoAiBFDQEgA0HYAGogBkEIaigCADYCACADIAMpAiA3A1AMAgsgAEECRg0DQQEhBkHWrcQAQdetxAAgCkIAUyIHG0HWrcQAQQEgBxsgBBshBSAKQj+IpyAEciEHIABB/wFxQQRGDQIgA0EDNgIoIANB263EADYCJCADQQI7ASAgA0EgagwFCyADQdAAaiADQeAAaiADQQ9qEDMLIAcgBSAEGyEFIAAgBHIhByADIAMoAlAgAygCVCADLwFYQQAgA0EgahC1BSADKAIEIQYgAygCAAwDCyADQQI7ASAMAQsgA0EDNgIoIANB2K3EADYCJCADQQI7ASBBASEFQQAhB0EBIQYgA0EgagwBCyADQQE2AiggA0HercQANgIkIANBIGoLIQAgAyAGNgJcIAMgADYCWCADIAc2AlQgAyAFNgJQIAEgA0HQAGoQrwMhACADQYABaiQAIAAPCyAFQQBHIQggAS8BDiEHIwBB8AhrIgIkACAPvSEKAn9BAyAPmUQAAAAAAADwf2ENABpBAiAKQoCAgICAgID4/wCDIgtCgICAgICAgPj/AFENABogCkL/////////B4MiDkKAgICAgICACIQgCkIBhkL+////////D4MgCkI0iKdB/w9xIgQbIgxCAYMhDSALUARAQQQgDlANARogBEGzCGshBEIBIQsgDVAMAQtCgICAgICAgCAgDEIBhiAMQoCAgICAgIAIUSIAGyEMQgJCASAAGyELQct3Qcx3IAAbIARqIQQgDVALIQAgAiAEOwHoCCACIAs3A+AIIAJCATcD2AggAiAMNwPQCCACIAA6AOoIAn8CQAJAIABBAU0EQEF0QQUgBMEiAEEASBsgAGwiBUHA/QBJDQFB5a3EAEElQYyuxAAQ1gwACyAAQQJGDQFBASEEQdatxABB163EACAKQgBTIgUbQdatxABBASAFGyAIGyEGIApCP4inIAhyIQUgAEH/AXFBBEcEQCACQQM2ApgIIAJB263EADYClAggAkECOwGQCCACQZAIagwDC0ECIQQgAkECOwGQCCAHRQRAQQEhBCACQQE2ApgIIAJB3q3EADYClAggAkGQCGoMAwsgAiAHNgKgCCAC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IAFBAnRBBBDoDgsgACgCFCIBBEAgACgCGCABQQN0QQQQ6A4LCz8BAX8gACgCACEAIAEoAggiAkGAgIAQcUUEQCACQYCAgCBxRQRAIAAgARC8DA8LIAAgARCUCg8LIAAgARCTCgs2AQF/IAAoAgAiAQRAIAAoAgQgAUECdEEEEOgOCyAAKAIMIgEEQCAAKAIQIAFBAnRBBBDoDgsLPAEBfUMAAAAAIAAqAgAgASoCAJQgACoCBCABKgIElJIgACoCCCABKgIIlJIiAyADQwAAAABdGyADIAIbCzgBAX0gAEEANgIIIABCADcCACAAIAEqAgAiAiAClCABKgIEIgIgApSSIAEqAggiAiAClJKROAIMCz0BAn0gACABKgIEIgI4AhQgACACOAIMIAAgASoCAIsiAzgCECAAIAKMIgI4AgggACACOAIAIAAgA4w4AgQLxQMBA38gACgCACECIAEoAggiAEGAgIAQcUUEQCAAQYCAgCBxRQRAIwBBEGsiACQAQQMhAyACLQAAIgIhBCACQQpPBEAgACACIAJB5ABuIgRB5ABsa0H/AXFBAXQiA0HWscQAai0AADoADyAAIANB1bHEAGotAAA6AA5BASEDCyAERSACQQBHcUUEQCADQQFrIgMgAEENamogBEEBdEH+AXFB1rHEAGotAAA6AAALIAFBAUEBQQAgAEENaiADakEDIANrENkCIQEgAEEQaiQAIAEPCyMAQYABayIEJAAgAi0AACEAQQAhAgNAIAIgBGpB/wBqIABBD3EiA0EwciADQTdqIANBCkkbOgAAIAJBAWshAiAAIgNBBHYhACADQQ9LDQALIAFBAUHTscQAQQIgAiAEakGAAWpBACACaxDZAiEAIARBgAFqJAAgAA8LIwBBgAFrIgQkACACLQAAIQBBACECA0AgAiAEakH/AGogAEEPcSIDQTByIANB1wBqIANBCkkbOgAAIAJBAWshAiAAIgNBBHYhACADQQ9LDQALIAFBAUHTscQAQQIgAiAEakGAAWpBACACaxDZAiEAIARBgAFqJAAgAAvRAwEGfyMAQRBrIgMkACADIAA2AgwgAEEMaiEEIANBDGohBSMAQSBrIgAkAAJAIAEoAgAiBkHQicQAQQggASgCBCgCDCIHEQUABEBBASECDAELAkAgAS0ACkGAAXFFBEBBASECIAZBzbHEAEEB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RQRAQQRBHEH4ysQAKAIAIgBBzAggABsRAAAACyAAQoGAgIAQNwIAIAD9DAAAAAAAAAAAAAAAAAAAAAD9CwIIIABBgICA/AM2AhggAEEIagsvAQF9IAEqAgAiAiAClCABKgIEIgIgApSSIAEqAggiAiAClJIgACoCACICIAKUXwswAQF/IwBBIGsiAyQAIANBCGogACABIAJBABCaASADKAIIIQAgA0EgaiQAIABBBEcLMAEBfyMAQSBrIgMkACADQQhqIAAgASACQQEQ9AEgAygCCCEAIANBIGokACAAQQRHCzABAX8jAEEgayIDJAAgA0EIaiAAIAEgAkEBEKoCIAMoAgghACADQSBqJAAgAEEERwswAQF/IwBBEGsiAyQAIANBCGogACABIAJBARC1ASADKAIIIQAgA0EQaiQAIABBAUYLMAEBfyMAQSBrIgMkACADQQhqIAAgASACQQEQiwIgAygCCCEAIANBIGokACAAQQRHCzABAX8jAEEgayIDJAAgA0EIaiAAIAEgAkEBEKsCIAMoAgghACADQSBqJAAgAEEERwswAQF/IwBBIGsiAyQAIANBCGogACABIAJBARDbASADKAIIIQAgA0EgaiQAIABBBEcLMAEBfyMAQSBrIgMkACADQQhqIAAgASACQQEQvAEgAygCCCEAIANBIGokACAAQQRHCzABAX8jAEEgayIDJAAgA0EIaiAAIAEgAkEBEO4BIAMoAgghACADQSBqJAAgAEEERwswAQF/IwBBIGsiAyQAIANBCGogACABIAJBARCMAiADKAIIIQAgA0EgaiQAIABBBEcLMAEBfyMAQSBrIgMkACADQQhqIAAgASACQQEQpgIgAygCCCEAIANBIGokACAAQQRHCzABAX8jAEEgayIDJAAgA0EIaiAAIAEgAkEBEJsCIAMoAgghACADQSBqJAAgAEEERwswAQF/IwBBEGsiAyQAIANBCGogACABIAJBARCKASADKAIIIQAgA0EQaiQAIABBAUYLMAEBfyMAQSBrIgMkACADQQhqIAAgASACQQEQmAEgAygCCCEAIANBIGokACAAQQRHCzABAX8jAEEQayIDJAAgA0EIaiAAIAEgAkEBEJ4BIAMoAgghACADQRBqJAAgAEEBRgtIAQF/IAEoAgAhAkEEQQQQkQ4iAUUEQEEEQQRB+MrEACgCACIA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IQAgAkEQaiQAIAALJwEBfyMAQRBrIgIkACACIAAgAUEBECwgAi0ADCEAIAJBEGokACAACycBAX8jAEEQayICJAAgAiAAIAFBARApIAItAAwhACACQRBqJAAgAAsoAQF/IwBBEGsiAiQAIAIgACABQQEQ/wIgAi0ADCEAIAJBEGokACAACygBAX8jAEEQayICJAAgAiAAIAFBARCJASACLQAMIQAgAkEQaiQAIAALJwEBfyMAQRBrIgIkACACIAAgAUEBECggAi0ADCEAIAJBEGokACAACycBAn0gACoCACIBIAAqAgQiAiABIAJfGyIBIAAqAggiAiABIAJfGwsnAQJ9IAAqAmQiASAAKgJoIgIgASACXxsiASAAKgJsIgIgASACXxsLKwAgAEH/AXEiAEHAAE0EQCAAQZirwQBqLQAADwsgAEHBAEHQ4sMAEIULAAtGACAA/QwAAAAAAAAAAAAAAAAAAAAA/QsCECAA/QwAAAAAAAAAAAAAAAAAAIA//QsCACAAQShqQQA2AgAgAEEgakIANwIACzMAIAEoAgAgACgCAC0AAEECdCIAQdDLwgBqKAIAIABBwMvCAGooAgAgASgCBCgCDBEFAAslACAARQRAQeDMwgBBMhCCDwALIAAgAiADIAQgBSABKAIQESAACyMAIABFBEBB4MzCAEEyEIIPAAsgACACIAMgBCABKAIQEQIACyMAIABFBEBB4MzCAEEyEIIPAAsgACACIAMgBCABKAIQEREACyMAIABFBEBB4MzCAEEyEIIPAAsgACACIAMgBCABKAIQER8ACyQAIABFBEBB4MzCAEEyEIIPAAsgACACIAMgBCABKAIQEaIBAAsjACAARQRAQeDMwgBBMhCCDwALIAAgAiADIAQgASgCEBE8AAsoAQF/IAAoAgAiAUGAgICAeHJBgICAgHhHBEAgACgCBCABQQEQ6A4LCyEAIABFBEBB4MzCAEEyEIIPAAsgACACIAMgASgCEBEBAAsdACABKAIABEAgAEHcjcQANgIEIAAgATYCAA8LAAsnAQF/IAAoAgAiAgRAIAEoAgAgAiAAKAIEIAEoAgQoAgwRBQAPCwALJAAgAC0AAEUEQCABQfCzxABBBRD7Ag8LIAFB9bPEAEEEEPsCCx8AIABFBEBB4MzCAEEyEIIPAAsgACACIAEoAhARAwALHwAgACAB/QACQP0LAgAgAEEQaiABQdAAaikCADcCAAsfACAAIAH9AAI0/QsCACAAQRBqIAFBxABqKQIANwIACykAIAAgAC0ABCABQS5GcjoABCAAKAIAIgAoAgAgASAAKAIEKAIQEQMACx0AIAAgAiABKAIsIAEoAjAgASgCOCABKAI8EIkDCxoBAX8gACgCACIBBEAgACgCBCABQQEQ6A4LC1IAIAAEQCAAIAFB+MrEACgCACIAQcwIIAAbEQAAAAsjAEEgayIAJAAgAEEANgIYIABBATYCDCAAQfSPxAA2AgggAEIENwIQIABBCGogAhC5DQALHQAgAEHEp8MANgIEIAAgATYCACAAIAEqAhg4AggLHQAgAEGYpMMANgIEIAAgATYCACAAIAEqAgw4AggLHQAgAEGEqMMANgIEIAAgATYCACAAIAEqAiQ4AggLHQAgAEH4t8MANgIEIAAgATYCACAAIAEqAgg4AggLHQAgAEHcu8MANgIEIAAgATYCACAAIAEqAgg4AggLHQAgAEHMtMMANgIEIAAgATYCACAAIAEqAmA4AggLHwAgAEEIakG8iMQAKQIANwIAIABBtIjEACkCADcCAAsfACAAQQhqQcyIxAApAgA3AgAgAEHEiMQAKQIANwIACxoAIABBADYCCCAAQZC9wQA2AgQgACABNgIACxoAIABBADYCCCAAQdi+wQA2AgQgACABNgIACxoAIABBADYCCCAAQeDhwQA2AgQgACABNgIACxoAIABBADYCCCAAQdz7wQA2AgQgACABNgIACxYAIABB2AFqIAAtAOUCIABBMGoQsAYLGAAgACgCACABKAIAIAIoAgAgAygCABAQCxcBAX8gABASIgE2AgQgACABQQBHNgIACxcBAX8gABATIgE2AgQgACABQQBHNgIACxcBAX8gABAUIgE2AgQgACABQQBHNgIACxcBAX8gABAVIgE2AgQgACABQQBHNgIACxwAIABBADYCECAAQgA3AgggAEKAgICAwAA3AgALGgAgAEEANgIIIABBmKTDADYCBCAAIAE2AgALrQUCFH0CfyABKgIYIQYgAAJ9QwAAgD8gAUEMaiIXKgIIIg8gASoCCCIQkyIKjCAKIBcqAgQiESABKgIEIhKTIgdDAAAAAF0iGBsiCyALlCAXKgIAIhMgASoCACIUkyIMjCAMIBgbIgggCJQg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IABBDGqtQoCAgIAwhDcDUCAAIABBCGqtQoCAgIAwhDcDSAsgACAAQcgAajYCOCAAQTBqIAQQuQ0ACxMAIABBxLrBADYCBCAAIAE2AgALEwAgAEHUusEANgIEIAAgATYCAAsTACAAQfS8wQA2AgQgACABNgIACxAAIABBATYCACAAIAE2AgQLEwAgAEG8vsEANgIEIAAgATYCAAsQACAAQQQ2AgAgACABNgIECxoAAn8gAUEJTwRAIAEgABCuBgwBCyAAEEMLCxAAIAAgATYCBCAAQQU2AgALEwAgAEGs38EANgIEIAAgATYCAAsTACAAQbzfwQA2AgQgACABNgIACxMAIABBzN/BADYCBCAAIAE2AgALEwAgAEHc38EANgIEIAAgATYCAAsTACAAQezfwQA2AgQgACABNgIACxMAIABBxOHBADYCBCAAIAE2AgALEAAgACABNgIEIABBBzYCAAsQACAAIAE2AgQgAEEGNgIACxMAIABBwPvBADYCBCAAIAE2AgALFgBB7MrEACAANgIAQejKxABBATYCAAsTACAAQfTVwgA2AgQgACABNgIACxMAIABBhNbCADYCBCAAIAE2AgALEwAgAEGU1sIANgIEIAAgATYCAAsTACAAQaTWwgA2AgQgACABNgIACxMAIABBtNbCADYCBCAAIAE2AgALEwAgAEHE1sIANgIEIAAgATYCAAsTACAAQdTWwgA2AgQgACABNgIACxMAIABB5NbCADYCBCAAIAE2AgALEwAgAEH01sIANgIEIAAgATYCAAsTACAAQYTXwgA2AgQgACABNgIACxMAIABBlNfCADYCBCAAIAE2AgALEwAgAEGk18IANgIEIAAgATYCAAsTACAAQbTXwgA2AgQgACABNgIACxMAIABBxNfCADYCBCAAIAE2AgALEwAgAEHU18IANgIEIAAgATYCAAsTACAAQeTXwgA2AgQgACABNgIACxMAIABB9NfCADYCBCAAIAE2AgALEwAgAEGE2MIANgIEIAAgATYCAAsTACAAQZTYwgA2AgQgACABNgIACxMAIABBpNjCADYCBCAAIAE2AgALEwAgAEG02MIANgIEIAAgATYCAAsTACAAQcTYwgA2AgQgACABNgIACxMAIABB1NjCADYCBCAAIAE2AgALEwAgAEHk2MIANgIEIAAgATYCAAsTACAAQfTYwgA2AgQgACABNgIACxMAIABBhNnCADYCBCAAIAE2AgALEwAgAEGU2cIANgIEIAAgATYCAAsRACABIAAoAgAgACgCBBD7AgsQACAAIAE2AgQgAEEDNgIACxAAIAAgATYCBCAAQQQ2AgALEAAgACABNgIEIABBAjYCAAsQACAAIAE2AgQgAEEBNgIACxAAIAAgATYCBCAAQQA2AgALKgAgAEL////39/////4ANwIQIAD9DP////7////+/////v///379CwIACxAAIABBADYCACAAIAE2AgQLEwAgAEHgo8MANgIEIAAgATYCAAsTACAAQfyjwwA2AgQgACABNgIACxAAIABBAjYCACAAIAE2AgQLEwAgAEGop8MANgIEIAAgATYCAAsTACAAQeinwwA2AgQgACABNgIACxAAIABBAzYCACAAIAE2AgQLEwAgAEGoqMMANgIEIAAgATYCAAsOACAAIAFBQGsgAhC7AwsQACAAQQo2AgAgACABNgIECxMAIABBsKvDADYCBCAAIAE2AgALEAAgAEEHNgIAIAAgATYCBAsTACAAQbCuwwA2AgQgACABNgIACxAAIABBBjYCACAAIAE2AgQLEwAgAEGwscMANgIEIAAgATYCAAsOACAAIAFBNGogAhC7AwsQACAAQQk2AgAgACABNgIECxAAIABBCzYCACAAIAE2AgQLEwAgAEGwtMMANgIEIAAgATYCAAsQACAAQQw2AgAgACABNgIECxMAIABB3LfDADYCBCAAIAE2AgALEAAgAEENNgIAIAAgATYCBAsTACAAQcC7wwA2AgQgACABNgIACyoAIABC////9/f////+ADcCECAA/Qz////+/////v////7///9+/QsCAAsqACAAQv////f3/////gA3AhAgAP0M/////v////7////+////fv0LAgALEAAgAEEINgIAIAAgATYCBAsQACAAQQU2AgAgACABNgIECxAAIABBDjYCACAAIAE2AgQLEwAgAEGwhMQANgIEIAAgATYCAAsQACAAQQ82AgAgACABNgIECxMAIABBzITEADYCBCAAIAE2AgALEAAgAEEQNgIAIAAgATYCBAsTACAAQeiExAA2AgQgACABNgIACxAAIABBETYCACAAIAE2AgQLEwAgAEGEhcQANgIEIAAgATYCAAsQACAAQRI2AgAgACAB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bnQgYXQgaW5kZXgvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9jY2QvdG9pX2VudHJ5LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2R5bmFtaWNzL2pvaW50L211bHRpYm9keV9qb2ludC9tdWx0aWJvZHkucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvZHluYW1pY3Mvc29sdmVyL3NvbHZlcl9ib2R5LnJzAGJ1aWxkcy9yYXBpZXIzZC1zaW1kLy4uLy4uL3NyYy9keW5hbWljcy9yaWdpZF9ib2R5LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLnJ1c3R1cC90b29sY2hhaW5zL3N0YWJsZS1hYXJjaDY0LWFwcGxlLWRhcndpbi9saWIvcnVzdGxpYi9zcmMvcnVzdC9saWJyYXJ5L3N0ZC9zcmMvc3luYy9tcG1jL2FycmF5LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9uYWxnZWJyYS0wLjM0LjEvc3JjL2Jhc2UvbWF0cml4LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9uYWxnZWJyYS0wLjM0LjEvc3JjL2Jhc2UvbWluX21heC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUtYWFyY2g2NC1hcHBsZS1kYXJ3aW4vbGliL3J1c3RsaWIvc3JjL3J1c3QvbGlicmFyeS9hbGxvYy9zcmMvYm9ycm93LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9uYWxnZWJyYS0wLjM0LjEvc3JjL2Jhc2UvbWF0cml4X3ZpZXcucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL25hbGdlYnJhLTAuMzQuMS9zcmMvYmFzZS9jb25zdHJ1Y3Rpb25fdmlldy5ycwBsaWJyYXJ5L2NvcmUvc3JjL251bS9mbHQyZGVjL3N0cmF0ZWd5L2dyaXN1LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9uYWxnZWJyYS0wLjM0LjEvc3JjL2xpbmFsZy9sdS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUtYWFyY2g2NC1hcHBsZS1kYXJ3aW4vbGliL3J1c3RsaWIvc3JjL3J1c3QvbGlicmFyeS9zdGQvc3JjL3N5bmMvbXBtYy9jb250ZXh0LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcGFydGl0aW9uaW5nL2J2aC9idmhfdHJhdmVyc2VfYnZ0dC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUtYWFyY2g2NC1hcHBsZS1kYXJ3aW4vbGliL3J1c3RsaWIvc3JjL3J1c3QvbGlicmFyeS9zdGQvc3JjL3N5bmMvbXBtYy9saXN0LnJzAGxpYnJhcnkvY29yZS9zcmMvc2xpY2Uvc29ydC9zaGFyZWQvc21hbGxzb3J0LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcGFydGl0aW9uaW5nL2J2aC9idmhfaW5zZXJ0LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdXRpbHMvcG9pbnRfY2xvdWRfc3VwcG9ydF9wb2ludC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9qb2ludC9tdWx0aWJvZHlfam9pbnQvdW5pdF9tdWx0aWJvZHlfam9pbnQucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvZHluYW1pY3Mvam9pbnQvbXVsdGlib2R5X2pvaW50L211bHRpYm9keV9qb2ludC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9zb2x2ZXIvam9pbnRfY29uc3RyYWludC9qb2ludF92ZWxvY2l0eV9jb25zdHJhaW50LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2R5bmFtaWNzL3NvbHZlci9qb2ludF9jb25zdHJhaW50L2dlbmVyaWNfam9pbnRfY29uc3RyYWludC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9zb2x2ZXIvY29udGFjdF9jb25zdHJhaW50L2dlbmVyaWNfY29udGFjdF9jb25zdHJhaW50LnJzAGxpYnJhcnkvc3RkL3NyYy90aHJlYWQvY3VycmVudC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L3BvaW50L3BvaW50X3NlZ21lbnQucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9zaGFwZS9zZWdtZW50LnJzAGxpYnJhcnkvYWxsb2Mvc3JjL2ZtdC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3BhcnRpdGlvbmluZy9idmgvYnZoX3JlZml0LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2R5bmFtaWNzL3JpZ2lkX2JvZHlfc2V0LnJzAGJ1aWxkcy9yYXBpZXIzZC1zaW1kLy4uLy4uL3NyYy9keW5hbWljcy9yaWdpZF9ib2R5X3NldC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9qb2ludC9tdWx0aWJvZHlfam9pbnQvbXVsdGlib2R5X2pvaW50X3NldC5ycwBidWlsZHMvcmFwaWVyM2Qtc2ltZC8uLi8uLi9zcmMvZHluYW1pY3MvbXVsdGlib2R5X2pvaW50X3NldC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9qb2ludC9pbXB1bHNlX2pvaW50L2ltcHVsc2Vfam9pbnRfc2V0LnJzAGJ1aWxkcy9yYXBpZXIzZC1zaW1kLy4uLy4uL3NyYy9keW5hbWljcy9pbXB1bHNlX2pvaW50X3NldC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9zb2x2ZXIvam9pbnRfY29uc3RyYWludC9qb2ludF9jb25zdHJhaW50c19zZXQucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvZHluYW1pY3Mvc29sdmVyL2NvbnRhY3RfY29uc3RyYWludC9jb250YWN0X2NvbnN0cmFpbnRzX3NldC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9nZW9tZXRyeS9jb2xsaWRlcl9zZXQucnMAYnVpbGRzL3JhcGllcjNkLXNpbWQvLi4vLi4vc3JjL2dlb21ldHJ5L2NvbGxpZGVyX3NldC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3RyYW5zZm9ybWF0aW9uL2NvbnZleF9odWxsMy90cmlhbmdsZV9mYWNldC5ycwBsaWJyYXJ5L2NvcmUvc3JjL251bS9kaXlfZmxvYXQucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvZHluYW1pY3MvcmlnaWRfYm9keV9jb21wb25lbnRzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2RhdGEvbW9kaWZpZWRfb2JqZWN0cy5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9zb2x2ZXIvaW50ZXJhY3Rpb25fZ3JvdXBzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9uYWxnZWJyYS0wLjM0LjEvc3JjL2Jhc2Uvb3BzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9zZXJkZS0xLjAuMjE5L3NyYy9kZS9pbXBscy5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3RyYW5zZm9ybWF0aW9uL2NvbnZleF9odWxsX3V0aWxzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvYm91bmRpbmdfdm9sdW1lL2FhYmJfdXRpbHMucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy90cmFuc2Zvcm1hdGlvbi91dGlscy5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy91dGlscy5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2NvbnRhY3RfbWFuaWZvbGRzL2NvbnRhY3RfbWFuaWZvbGRzX3ZveGVsc192b3hlbHMucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9zaGFwZS92b3hlbHMvdm94ZWxzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi93ZWItdGltZS0xLjEuMC9zcmMvdGltZS9qcy5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL21hc3NfcHJvcGVydGllcy9tYXNzX3Byb3BlcnRpZXMucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvcGlwZWxpbmUvdXNlcl9jaGFuZ2VzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi93YXNtLWJpbmRnZW4tMC4yLjEwMC9zcmMvY29udmVydC9zbGljZXMucnMAL1VzZXJzL3NlYmNyb3pldC8ucnVzdHVwL3Rvb2xjaGFpbnMvc3RhYmxlLWFhcmNoNjQtYXBwbGUtZGFyd2luL2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvc3RkL3NyYy9zeXMvc3luYy9tdXRleC9ub190aHJlYWRzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9uYWxnZWJyYS0wLjM0LjEvc3JjL2Jhc2UvYmxhcy5ycwBsaWJyYXJ5L2FsbG9jL3NyYy9mZmkvY19zdHIucnMAL1VzZXJzL3NlYmNyb3pldC8ucnVzdHVwL3Rvb2xjaGFpbnMvc3RhYmxlLWFhcmNoNjQtYXBwbGUtZGFyd2luL2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvY29yZS9zcmMvaXRlci90cmFpdHMvaXRlcmF0b3IucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL25hbGdlYnJhLTAuMzQuMS9zcmMvYmFzZS9kZWZhdWx0X2FsbG9jYXRvci5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9zb2x2ZXIvdmVsb2NpdHlfc29sdmVyLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2R5bmFtaWNzL2NjZC9jY2Rfc29sdmVyLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdXRpbHMvY2VudGVyLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2NvbnRyb2wvY2hhcmFjdGVyX2NvbnRyb2xsZXIucnMAYnVpbGRzL3JhcGllcjNkLXNpbWQvLi4vLi4vc3JjL2NvbnRyb2wvY2hhcmFjdGVyX2NvbnRyb2xsZXIucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvY29udHJvbC9yYXlfY2FzdF92ZWhpY2xlX2NvbnRyb2xsZXIucnMAL1VzZXJzL3NlYmNyb3pldC8ucnVzdHVwL3Rvb2xjaGFpbnMvc3RhYmxlLWFhcmNoNjQtYXBwbGUtZGFyd2luL2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvc3RkL3NyYy9zeW5jL21wbWMvd2FrZXIucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9kZWZhdWx0X3F1ZXJ5X2Rpc3BhdGNoZXIucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvZHluYW1pY3MvaXNsYW5kX21hbmFnZXIucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9zaGFwZS9jeWxpbmRlci5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9zb2x2ZXIvam9pbnRfY29uc3RyYWludC9nZW5lcmljX2pvaW50X2NvbnN0cmFpbnRfYnVpbGRlci5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9zb2x2ZXIvam9pbnRfY29uc3RyYWludC9qb2ludF9jb25zdHJhaW50X2J1aWxkZXIucnMAYnVpbGRzL3JhcGllcjNkLXNpbWQvLi4vLi4vc3JjL2dlb21ldHJ5L2NvbGxpZGVyLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdXRpbHMvY2xlYW51cC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUtYWFyY2g2NC1hcHBsZS1kYXJ3aW4vbGliL3J1c3RsaWIvc3JjL3J1c3QvbGlicmFyeS9jb3JlL3NyYy9jbXAucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9pbnRlcnNlY3Rpb25fdGVzdC9pbnRlcnNlY3Rpb25fdGVzdF9zdXBwb3J0X21hcF9zdXBwb3J0X21hcC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L25vbmxpbmVhcl9zaGFwZV9jYXN0L25vbmxpbmVhcl9zaGFwZV9jYXN0X3N1cHBvcnRfbWFwX3N1cHBvcnRfbWFwLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvY29udGFjdC9jb250YWN0X3N1cHBvcnRfbWFwX3N1cHBvcnRfbWFwLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvY2xvc2VzdF9wb2ludHMvY2xvc2VzdF9wb2ludHNfc3VwcG9ydF9tYXBfc3VwcG9ydF9tYXAucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9kaXN0YW5jZS9kaXN0YW5jZV9zdXBwb3J0X21hcF9zdXBwb3J0X21hcC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2Nsb3Nlc3RfcG9pbnRzL2Nsb3Nlc3RfcG9pbnRzX2hhbGZzcGFjZV9zdXBwb3J0X21hcC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3V0aWxzL3ZlY19tYXAucnMAL1VzZXJzL3NlYmNyb3pldC8ucnVzdHVwL3Rvb2xjaGFpbnMvc3RhYmxlLWFhcmNoNjQtYXBwbGUtZGFyd2luL2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvc3RkL3NyYy9zeW5jL21wbWMvemVyby5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3NoYXBlL2NvbnZleF9wb2x5aGVkcm9uLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvcG9pbnQvcG9pbnRfdGV0cmFoZWRyb24ucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9zaGFwZS92b3hlbHMvdm94ZWxzX2VkaXRpb24ucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL25hbGdlYnJhLTAuMzQuMS9zcmMvYmFzZS9lZGl0aW9uLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9uYWxnZWJyYS0wLjM0LjEvc3JjL2Jhc2UvY29uc3RydWN0aW9uLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2R5bmFtaWNzL3NvbHZlci9jb250YWN0X2NvbnN0cmFpbnQvY29udGFjdF93aXRoX3R3aXN0X2ZyaWN0aW9uLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2R5bmFtaWNzL3NvbHZlci9jb250YWN0X2NvbnN0cmFpbnQvY29udGFjdF93aXRoX2NvdWxvbWJfZnJpY3Rpb24ucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvZHluYW1pY3Mvc29sdmVyL2NhdGVnb3JpemF0aW9uLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdHJhbnNmb3JtYXRpb24vY29udmV4X2h1bGwzL3ZhbGlkYXRpb24ucnMAbGlicmFyeS9jb3JlL3NyYy9udW0vZmx0MmRlYy9zdHJhdGVneS9kcmFnb24ucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL25hbGdlYnJhLTAuMzQuMS9zcmMvbGluYWxnL3N5bW1ldHJpY19laWdlbi5ycwBsaWJyYXJ5L2NvcmUvc3JjL251bS9iaWdudW0ucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9jb250YWN0X21hbmlmb2xkcy9jb250YWN0X21hbmlmb2xkc19wZm1fcGZtLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvY29udGFjdF9tYW5pZm9sZHMvY29udGFjdF9tYW5pZm9sZHNfaGFsZnNwYWNlX3BmbS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3RyYW5zZm9ybWF0aW9uL2NvbnZleF9odWxsMy9jb252ZXhfaHVsbC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2NvbnRhY3RfbWFuaWZvbGRzL2NvbnRhY3RfbWFuaWZvbGRzX2NvbnZleF9iYWxsLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvY29udGFjdF9tYW5pZm9sZHMvY29udGFjdF9tYW5pZm9sZHNfdm94ZWxzX2JhbGwucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9jbG9zZXN0X3BvaW50cy9jbG9zZXN0X3BvaW50c19iYWxsX2JhbGwucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9jb250YWN0X21hbmlmb2xkcy9jb250YWN0X21hbmlmb2xkc19iYWxsX2JhbGwucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL2JpbmNvZGUtMS4zLjMvc3JjL2ludGVybmFsLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvdm94ZWxzL3ZveGVsc19jaHVuay5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9qb2ludC9tdWx0aWJvZHlfam9pbnQvbXVsdGlib2R5X2xpbmsucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9namsvZ2prLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2dlb21ldHJ5L2Jyb2FkX3BoYXNlX2J2aC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3RyYW5zZm9ybWF0aW9uL3RvX3RyaW1lc2gvY3lsaW5kZXJfdG9fdHJpbWVzaC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3RyYW5zZm9ybWF0aW9uL3RvX3RyaW1lc2gvY29udmV4X3BvbHloZWRyb25fdG9fdHJpbWVzaC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3RyYW5zZm9ybWF0aW9uL3RvX3RyaW1lc2gvYmFsbF90b190cmltZXNoLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdHJhbnNmb3JtYXRpb24vdG9fdHJpbWVzaC9jb25lX3RvX3RyaW1lc2gucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9zaGFwZS90cmltZXNoLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdHJhbnNmb3JtYXRpb24vY29udmV4X2h1bGwzL2luaXRpYWxfbWVzaC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9nZW9tZXRyeS9pbnRlcmFjdGlvbl9ncmFwaC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9kYXRhL2dyYXBoLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9lbmEtMC4xNC4zL3NyYy91bmRvX2xvZy5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvbmFsZ2VicmEtMC4zNC4xL3NyYy9iYXNlL2luZGV4aW5nLnJzAGxpYnJhcnkvYWxsb2Mvc3JjL3N0cmluZy5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3BhcnRpdGlvbmluZy9idmgvYnZoX29wdGltaXplLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcGFydGl0aW9uaW5nL2J2aC9idmhfdHJhdmVyc2UucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL25hbGdlYnJhLTAuMzQuMS9zcmMvYmFzZS9jb21wb25lbnR3aXNlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2dlb21ldHJ5L25hcnJvd19waGFzZS5ycwBidWlsZHMvcmFwaWVyM2Qtc2ltZC8uLi8uLi9zcmMvZ2VvbWV0cnkvbmFycm93X3BoYXNlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvYm91bmRpbmdfdm9sdW1lL2JvdW5kaW5nX3NwaGVyZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2NvbnRhY3RfbWFuaWZvbGRzL2NvbnRhY3RfbWFuaWZvbGRzX3ZveGVsc19zaGFwZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2NvbnRhY3RfbWFuaWZvbGRzL2NvbnRhY3RfbWFuaWZvbGRzX3RyaW1lc2hfc2hhcGUucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9wb2ludC9wb2ludF9jb21wb3NpdGVfc2hhcGUucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9jb250YWN0X21hbmlmb2xkcy9jb250YWN0X21hbmlmb2xkc192b3hlbHNfY29tcG9zaXRlX3NoYXBlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvY29udGFjdF9tYW5pZm9sZHMvY29udGFjdF9tYW5pZm9sZHNfY29tcG9zaXRlX3NoYXBlX2NvbXBvc2l0ZV9zaGFwZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2NvbnRhY3RfbWFuaWZvbGRzL2NvbnRhY3RfbWFuaWZvbGRzX2hlaWdodGZpZWxkX2NvbXBvc2l0ZV9zaGFwZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2NvbnRhY3RfbWFuaWZvbGRzL2NvbnRhY3RfbWFuaWZvbGRzX2NvbXBvc2l0ZV9zaGFwZV9zaGFwZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2NvbnRhY3RfbWFuaWZvbGRzL2NvbnRhY3RfbWFuaWZvbGRzX2hlaWdodGZpZWxkX3NoYXBlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvc2hhcmVkX3NoYXBlLnJzAGJ1aWxkcy9yYXBpZXIzZC1zaW1kLy4uLy4uL3NyYy9nZW9tZXRyeS9zaGFwZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3NoYXBlL3NoYXBlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvcG9seWxpbmUucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy90cmFuc2Zvcm1hdGlvbi90b19vdXRsaW5lL3ZveGVsc190b19vdXRsaW5lLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdHJhbnNmb3JtYXRpb24vdG9fb3V0bGluZS9yb3VuZF9jeWxpbmRlcl90b19vdXRsaW5lLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdHJhbnNmb3JtYXRpb24vdG9fb3V0bGluZS9yb3VuZF9jb252ZXhfcG9seWhlZHJvbl90b19vdXRsaW5lLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdHJhbnNmb3JtYXRpb24vdG9fb3V0bGluZS9iYWxsX3RvX291dGxpbmUucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy90cmFuc2Zvcm1hdGlvbi90b19vdXRsaW5lL3JvdW5kX2NvbmVfdG9fb3V0bGluZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3RyYW5zZm9ybWF0aW9uL3RvX291dGxpbmUvY2Fwc3VsZV90b19vdXRsaW5lLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdHJhbnNmb3JtYXRpb24vdG9fb3V0bGluZS9yb3VuZF9jdWJvaWRfdG9fb3V0bGluZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9waXBlbGluZS9waHlzaWNzX3BpcGVsaW5lLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL3BpcGVsaW5lL2RlYnVnX3JlbmRlcl9waXBlbGluZS9kZWJ1Z19yZW5kZXJfcGlwZWxpbmUucnMAbGlicmFyeS9zdGQvc3JjL3N5cy9wYWwvd2FzbS8uLi91bnN1cHBvcnRlZC90aW1lLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLnJ1c3R1cC90b29sY2hhaW5zL3N0YWJsZS1hYXJjaDY0LWFwcGxlLWRhcndpbi9saWIvcnVzdGxpYi9zcmMvcnVzdC9saWJyYXJ5L2NvcmUvc3JjL3RpbWUucnMAL3J1c3RjLzExNTllNzhjNDc0N2IwMmVmOTk2ZTU1MDgyYjcwNGMwOWI5NzA1ODgvbGlicmFyeS9jb3JlL3NyYy90aW1lLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvY29udGFjdF9tYW5pZm9sZHMvY29udGFjdF9tYW5pZm9sZHNfY2Fwc3VsZV9jYXBzdWxlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvY2xvc2VzdF9wb2ludHMvY2xvc2VzdF9wb2ludHNfY3Vib2lkX3RyaWFuZ2xlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvdHJpYW5nbGUucnMAbGlicmFyeS9jb3JlL3NyYy91bmljb2RlL3ByaW50YWJsZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvbmFsZ2VicmEtMC4zNC4xL3NyYy9iYXNlL3ZlY19zdG9yYWdlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcGFydGl0aW9uaW5nL2J2aC9idmhfdHJlZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvbmFsZ2VicmEtMC4zNC4xL3NyYy9saW5hbGcvcGVybXV0YXRpb25fc2VxdWVuY2UucnMAL1VzZXJzL3NlYmNyb3pldC8ucnVzdHVwL3Rvb2xjaGFpbnMvc3RhYmxlLWFhcmNoNjQtYXBwbGUtZGFyd2luL2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvYWxsb2Mvc3JjL3NsaWNlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvdm94ZWxzL3ZveGVsc19uZWlnaGJvcmhvb2QucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL2VuYS0wLjE0LjMvc3JjL3VuaWZ5L21vZC5ycwAvcnVzdC9kZXBzL2hhc2hicm93bi0wLjE1LjQvc3JjL3Jhdy9tb2QucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL2hhc2hicm93bi0wLjE2LjAvc3JjL3Jhdy9tb2QucnMAbGlicmFyeS9jb3JlL3NyYy9mbXQvbW9kLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLnJ1c3R1cC90b29sY2hhaW5zL3N0YWJsZS1hYXJjaDY0LWFwcGxlLWRhcndpbi9saWIvcnVzdGxpYi9zcmMvcnVzdC9saWJyYXJ5L2FsbG9jL3NyYy9jb2xsZWN0aW9ucy9iaW5hcnlfaGVhcC9tb2QucnMAbGlicmFyeS9zdGQvc3JjL3RocmVhZC9tb2QucnMAL1VzZXJzL3NlYmNyb3pldC8ucnVzdHVwL3Rvb2xjaGFpbnMvc3RhYmxlLWFhcmNoNjQtYXBwbGUtZGFyd2luL2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvc3RkL3NyYy9zeW5jL21wbWMvbW9kLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLnJ1c3R1cC90b29sY2hhaW5zL3N0YWJsZS1hYXJjaDY0LWFwcGxlLWRhcndpbi9saWIvcnVzdGxpYi9zcmMvcnVzdC9saWJyYXJ5L2FsbG9jL3NyYy9yYXdfdmVjL21vZC5ycwAvcnVzdGMvMTE1OWU3OGM0NzQ3YjAyZWY5OTZlNTUwODJiNzA0YzA5Yjk3MDU4OC9saWJyYXJ5L2FsbG9jL3NyYy9yYXdfdmVjL21vZC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUtYWFyY2g2NC1hcHBsZS1kYXJ3aW4vbGliL3J1c3RsaWIvc3JjL3J1c3QvbGlicmFyeS9hbGxvYy9zcmMvdmVjL21vZC5ycwBsaWJyYXJ5L2NvcmUvc3JjL251bS9mbHQyZGVjL21vZC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3NoYXBlL2NvbXBvdW5kLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL3BpcGVsaW5lL2RlYnVnX3JlbmRlcl9waXBlbGluZS9kZWJ1Z19yZW5kZXJfYmFja2VuZC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3BhcnRpdGlvbmluZy9idmgvYnZoX2Jpbm5lZF9idWlsZC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3BhcnRpdGlvbmluZy9idmgvYnZoX3Bsb2NfYnVpbGQucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9jbG9zZXN0X3BvaW50cy9jbG9zZXN0X3BvaW50c19jdWJvaWRfY3Vib2lkLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvY3Vib2lkLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvZmVhdHVyZV9pZC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUtYWFyY2g2NC1hcHBsZS1kYXJ3aW4vbGliL3J1c3RsaWIvc3JjL3J1c3QvbGlicmFyeS9hbGxvYy9zcmMvdmVjL3NwZWNfZnJvbV9pdGVyX25lc3RlZC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL21hc3NfcHJvcGVydGllcy9tYXNzX3Byb3BlcnRpZXNfdHJpbWVzaDNkLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvcG9seWdvbmFsX2ZlYXR1cmUzZC5ycwAvcnVzdC9kZXBzL2RsbWFsbG9jLTAuMi4xMC9zcmMvZGxtYWxsb2MucnMAbGlicmFyeS9zdGQvc3JjL2FsbG9jLnJzAGxpYnJhcnkvYWxsb2Mvc3JjL3N5bmMucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL2VuYS0wLjE0LjMvc3JjL3NuYXBzaG90X3ZlYy5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvanMtc3lzLTAuMy43Ny9zcmMvbGliLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9vbmNlX2NlbGwtMS4yMS4zL3NyYy9saWIucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3ZlY19tYXAtMC44LjIvc3JjL2xpYi5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2Yvc21hbGx2ZWMtMS4xNS4xL3NyYy9saWIucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9ib3VuZGluZ192b2x1bWUvYWFiYi5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9kYXRhL2NvYXJlbmEucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvZGF0YS9hcmVuYS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2dqay92b3Jvbm9pX3NpbXBsZXgzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvaGVpZ2h0ZmllbGQzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvZXBhL2VwYTMucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy90cmFuc2Zvcm1hdGlvbi9jb252ZXhfaHVsbDIucnMAL1VzZXJzL3NlYmNyb3pldC8ucnVzdHVwL3Rvb2xjaGFpbnMvc3RhYmxlLWFhcmNoNjQtYXBwbGUtZGFyd2luL2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvY29yZS9zcmMvbnVtL2YzMi5ycwABAQECAQEBAgEBAQICAgIDAQEBAgEBAQIBAQECAgICAwEBAQIBAQECAQEBAgICAgMCAgIDAgICAwICAgMDAwMEAAAAAGY1EAB5AAAANQAAACwAAABDYW5ub3QgZGVzZXJpYWxpemUgY3VzdG9tIHNoYXBlLgAAAAAAAAAAAQAAAAQAAABBbGxvY2F0aW9uIGZyb20gaXRlcmF0b3IgZXJyb3I6IHRoZSBpdGVyYXRvciBkaWQgbm90IHlpZWxkIHRoZSBjb3JyZWN0IG51bWJlciBvZiBlbGVtZW50cy4AABxWEABaAAAAJBkQAHMAAACEAAAACQAAAAAAAAAIAAAABAAAAAUAAABhIHR1cGxlIG9mIHNpemUgMgBBvK3BAAthAQAAAAYAAACqEhAAYwAAAJUEAAAiAAAAqhIQAGMAAACYBAAAHAAAAHN0cnVjdCBUcmlNZXNoIHdpdGggNyBlbGVtZW50cwAA5FYQAB4AAABhIHR1cGxlIG9mIHNpemUgMwBBqK7BAAsFAQAAAAcAQbiuwQALBQEAAAAHAEHIrsEACwUBAAAABwBB2K7BAAuJDgEAAAAHAAAAc3RydWN0IENvbXBvdW5kIHdpdGggNCBlbGVtZW50cwBgVxAAHwAAAHN0cnVjdCBQb2x5bGluZSB3aXRoIDMgZWxlbWVudHMAiFcQAB8AAAB2YXJpYW50IGluZGV4IDAgPD0gaSA8IDKwVxAAGAAAAHN0cnVjdCBDb2xsaWRlciB3aXRoIDExIGVsZW1lbnRz0FcQACAAAABzdHJ1Y3QgVm94ZWxzIHdpdGggNiBlbGVtZW50cwAAAPhXEAAdAAAAc3RydWN0IEhlaWdodEZpZWxkIHdpdGggNiBlbGVtZW50cwAAIFgQACIAAAB2YXJpYW50IGluZGV4IDAgPD0gaSA8IDIwAAAATFgQABkAAABzdHJ1Y3QgVHJpTWVzaENvbm5lY3RlZENvbXBvbmVudHMgd2l0aCAzIGVsZW1lbnRzAAAAcFgQADEAAABzdHJ1Y3QgR3JhcGggd2l0aCAyIGVsZW1lbnRzrFgQABwAAABzdHJ1Y3QgTFUgd2l0aCAyIGVsZW1lbnRzAAAA0FgQABkAAABzdHJ1Y3QgSXNsYW5kTWFuYWdlciB3aXRoIDQgZWxlbWVudHP0WBAAJAAAAHN0cnVjdCBDb252ZXhQb2x5aGVkcm9uIHdpdGggOCBlbGVtZW50cwAgWRAAJwAAAHN0cnVjdCBCdmhOb2RlV2lkZSB3aXRoIDIgZWxlbWVudHMAAFBZEAAiAAAAc3RydWN0IEJyb2FkUGhhc2VCdmggd2l0aCA0IGVsZW1lbnRzfFkQACQAAABzdHJ1Y3QgQ29udGFjdE1hbmlmb2xkRGF0YSB3aXRoIDcgZWxlbWVudHMAAKhZEAAqAAAAc3RydWN0IEpvaW50TW90b3Igd2l0aCA3IGVsZW1lbnRzAAAA3FkQACEAAABzdHJ1Y3QgR2VuZXJpY0pvaW50IHdpdGggMTEgZWxlbWVudHMIWhAAJAAAAHZhcmlhbnQgaW5kZXggMCA8PSBpIDwgMzRaEAAYAAAAdmFyaWFudCBpbmRleCAwIDw9IGkgPCA0VFoQABgAAABzdHJ1Y3QgSW50ZWdyYXRpb25QYXJhbWV0ZXJzIHdpdGggMTcgZWxlbWVudHMAAAB0WhAALQAAAHN0cnVjdCBNdWx0aWJvZHkgd2l0aCAxOCBlbGVtZW50cwAAAKxaEAAhAAAAc3RydWN0IEludGVyYWN0aW9uR3JhcGggd2l0aCAxIGVsZW1lbnQAANhaEAAmAAAAc3RydWN0IEluZGV4U2VxdWVuY2Ugd2l0aCAyIGVsZW1lbnRzCFsQACQAAABzdHJ1Y3QgSW1wdWxzZUpvaW50IHdpdGggNSBlbGVtZW50cwA0WxAAIwAAAHR1cGxlIHN0cnVjdCBNb2RpZmllZE9iamVjdHMgd2l0aCAyIGVsZW1lbnRzYFsQ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EACcAAAASgAAABwAAAAcORAAnAAAAEoAAAA2AAAAHDkQAJwAAAAXAQAAKgAAABw5EACcAAAAdgAAADkAAAAcORAAnAAAAH0AAAAnAAAAHDkQAJwAAACQAAAAIwAAABw5EACcAAAAnQAAAC4AAAAAAAAAMAAAAAQAAADmAAAA5wAAABw5EACcAAAA8gAAACIAAABfOhAAoQAAAEsAAAAcAAAAXzoQAKEAAABLAAAANgAAAAAAAAA4AAAABAAAAOgAAADpAAAAXzoQAKEAAABiAAAANQAAAF86EAChAAAAZQAAACMAAABfOhAAoQAAAHoAAAAjAAAAXzoQAKEAAAB/AAAALgAAALk5EAClAAAASAAAABwAAAC5ORAApQAAAEgAAAA2AAAAAAAAADAAAAAEAAAA6gAAAOsAAAAAAAAAPAAAAAQAAADsAAAA7QAAALk5EAClAAAAdwAAAD0AAAC5ORAApQAAAHoAAAArAAAAuTkQAKUAAACRAAAAKwAAALk5EAClAAAAlgAAADYAAABEVBAAagAAAMgBAAAkAAAARFQQAGoAAADJAQAAJAAAAERUEABqAAAAygEAACQAAABEVBAAagAAAN8BAAAYAAAARFQQAGoAAADgAQAAGAAAAERUEABqAAAA4QEAABgAAABEVBAAagAAAOIBAAAYAAAARFQQAGoAAADlAQAAJwAAAERUEABqAAAA5QEAAEQAAABEVBAAagAAAOoBAAAnAAAARFQQAGoAAADqAQAARAAAAERUEABqAAAA7wEAACcAAABEVBAAagAAAO8BAABEAAAARFQQAGoAAAD0AQAAJwAAAERUEABqAAAA9AEAAEQAAABIaXQgdW5leHBlY3RlZCBzdGF0ZSBpbiBFUEE6IGZhaWxlZCB0byBwcm9qZWN0IHRoZSBvcmlnaW4gb24gdGhlIGluaXRpYWwgc2ltcGxleC4AAABAehAAUQAAAERUEABqAAAA/AEAABEAAABwYXJyeTNkOjpxdWVyeTo6ZXBhOjplcGEzAAAARFQQAGoAAAABAgAAKAAAAERUEABqAAAAFAIAABgAAABEVBAAagAAABUCAAAYAAAARFQQAGoAAAAlAgAAIgAAAERUEABqAAAALQIAABsAAABEVBAAagAAAEQCAAAXAAAARFQQAGoAAABGAgAALAAAAERUEABqAAAARwIAACwA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TAAAAA4AAABEVBAAagAAAGIAAAANAAAARFQQAGoAAABjAAAADQAAAERUEABqAAAAZAAAAA0AAABEVBAAagAAAHoAAAANAAAARFQQAGoAAAB7AAAAEwAAAERUEABqAAAAfAAAABMAAABIaXQgdW5leHBlY3RlZCBzdGF0ZSBpbiBFUEE6IGZvdW5kIGluZGV4ICwgZXhwZWN0ZWQ6IAAAAIzFEAApAAAAtcUQAAwAAAA4rxAAAQAAAERUEABqAAAAjgAAABEAAABwYXJyeTNkOjpxdWVyeTo6ZXBhOjplcGEzAAAARFQQAGoAAACaAAAAHAAAAERUEABqAAAAmgAAABMAAABEVBAAagAAAJsAAAATAAAARFQQAGoAAACcAAAAEwAAAERUEABqAAAAnQAAABMAAABEVBAAagAAAN8BAAAYAAAARFQQAGoAAADgAQAAGAAAAERUEABqAAAA4QEAABgAAABEVBAAagAAAOIBAAAYAAAARFQQAGoAAADlAQAAJwAAAERUEABqAAAA5QEAAEQAAABEVBAAagAAAOoBAAAnAAAARFQQAGoAAADqAQAARAAAAERUEABqAAAA7wEAACcAAABEVBAAagAAAO8BAABEAAAARFQQAGoAAAD0AQAAJwAAAERUEABqAAAA9AEAAEQAAABIaXQgdW5leHBlY3RlZCBzdGF0ZSBpbiBFUEE6IGZhaWxlZCB0byBwcm9qZWN0IHRoZSBvcmlnaW4gb24gdGhlIGluaXRpYWwgc2ltcGxleC4AAAAYxxAAUQAAAERUEABqAAAA/AEAABEAAABEVBAAagAAABQCAAAYAAAARFQQAGoAAAAVAgAAGAAAAERUEABqAAAAJQIAACIAAABEVBAAagAAAC0CAAAbAAAARFQQAGoAAABEAgAAFwAAAERUEABqAAAARgIAACwAAABEVBAAagAAAEcCAAAsAAAARFQQAGoAAABIAgAALAAAAERUEABqAAAAegIAABcAAABEVBAAagAAAHsCAAAjAAAARFQQAGoAAABWAgAAHwAAAERUEABqAAAAYwIAACAAAABEVBAAagAAAGYCAAA6AAAARFQQAGoAAABmAgAALwAAAERUEABqAAAAPQIAACwAAABEVBAAagAAAIgCAAAkAAAARFQQAGoAAADAAQAAGwAAAERUEABqAAAABwIAABoAAABEVBAA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").buffer)})}function LkQ(){return function(){let A,Q;try{let J=j.__wbindgen_add_to_stack_pointer(-16);j.version(J);var B=VY().getInt32(J+0,!0),Y=VY().getInt32(J+4,!0);return A=B,Q=Y,pk(B,Y)}finally{j.__wbindgen_add_to_stack_pointer(16),j.__wbindgen_export_1(A,Q,1)}}()}function qkQ(A){var Q;Q=A,j.reserve_memory(Q)}z9[45]=62,z9[95]=63;var FB=Object.freeze({__proto__:null,version:LkQ,reserveMemory:qkQ,Vector3:F_,VectorOps:a,Quaternion:UM,RotationOps:gQ,SdpMatrix3:W_,SdpMatrix3Ops:EM,get RigidBodyType(){return FC},RigidBody:HM,RigidBodyDesc:I1,RigidBodySet:Z_,IntegrationParameters:$_,get JointType(){return oY},get MotorModel(){return ik},get JointAxesMask(){return nk},ImpulseJoint:ZC,UnitImpulseJoint:jM,FixedImpulseJoint:U_,RopeImpulseJoint:E_,SpringImpulseJoint:K_,PrismaticImpulseJoint:V_,RevoluteImpulseJoint:I_,GenericImpulseJoint:H_,SphericalImpulseJoint:D_,JointData:h6,ImpulseJointSet:N_,MultibodyJoint:uG,UnitMultibodyJoint:OM,FixedMultibodyJoint:L_,PrismaticMultibodyJoint:q_,RevoluteMultibodyJoint:M_,SphericalMultibodyJoint:z_,MultibodyJointSet:R_,get CoefficientCombineRule(){return bV},CCDSolver:w_,IslandManager:j_,BroadPhase:O_,NarrowPhase:P_,TempContactManifold:T_,Shape:QY,get ShapeType(){return AY},get HeightFieldFlags(){return sk},get TriMeshFlags(){return rk},Ball:TM,HalfSpace:S_,Cuboid:SM,RoundCuboid:kM,Capsule:_M,Segment:vM,Triangle:yM,RoundTriangle:hM,Polyline:gM,Voxels:xM,TriMesh:fM,ConvexPolyhedron:dV,RoundConvexPolyhedron:cV,Heightfield:bM,Cylinder:mM,RoundCylinder:uM,Cone:dM,RoundCone:cM,get ActiveCollisionTypes(){return IM},Collider:NM,get MassPropsMode(){return IW},ColliderDesc:e0,ColliderSet:b_,get FeatureType(){return Z4},Ray:Tt,RayIntersection:pV,RayColliderIntersection:mV,RayColliderHit:PM,PointProjection:iV,PointColliderProjection:uV,ShapeCastHit:U4,ColliderShapeCastHit:nV,ShapeContact:$4,World:lM,PhysicsPipeline:k_,SerializationPipeline:DM,get ActiveEvents(){return KM},TempContactForceEvent:f_,EventQueue:St,get ActiveHooks(){return VM},get SolverFlags(){return ok},DebugRenderBuffers:__,DebugRenderPipeline:v_,get QueryFilterFlags(){return tk},init:NkQ,CharacterCollision:y_,KinematicCharacterController:h_,get PidAxesMask(){return ak},PidController:g_,DynamicRayCastVehicleController:x_});var DW;((H)=>{H[H.BLOCK=1]="BLOCK";H[H.ENTITY=2]="ENTITY";H[H.ENTITY_SENSOR=4]="ENTITY_SENSOR";H[H.ENVIRONMENT_ENTITY=8]="ENVIRONMENT_ENTITY";H[H.PLAYER=16]="PLAYER";H[H.GROUP_1=32]="GROUP_1";H[H.GROUP_2=64]="GROUP_2";H[H.GROUP_3=128]="GROUP_3";H[H.GROUP_4=256]="GROUP_4";H[H.GROUP_5=512]="GROUP_5";H[H.GROUP_6=1024]="GROUP_6";H[H.GROUP_7=2048]="GROUP_7";H[H.GROUP_8=4096]="GROUP_8";H[H.GROUP_9=8192]="GROUP_9";H[H.GROUP_10=16384]="GROUP_10";H[H.GROUP_11=32768]="GROUP_11";H[H.ALL=65535]="ALL"})(DW||={});class $C{static BELONGS_TO_SHIFT=16;static COLLIDES_WITH_MASK=65535;static buildRawCollisionGroups(A){return this.combineGroups(A.belongsTo)<>>this.BELONGS_TO_SHIFT),collidesWith:this.bitsToGroups(A&this.COLLIDES_WITH_MASK)}}static decodeCollisionGroups(A){return{belongsTo:A.belongsTo.map((Q)=>this.groupToName(Q)),collidesWith:A.collidesWith.map((Q)=>this.groupToName(Q))}}static isDefaultCollisionGroups(A){return A.belongsTo.includes(65535)&&A.collidesWith.includes(65535)}static combineGroups(A){return A.reduce((Q,B)=>Q|B,0)}static bitsToGroups(A){if(A===65535)return[65535];return Object.values(DW).filter((Q)=>typeof Q==="number"&&Q!==65535&&(A&Q)!==0)}static groupToName(A){let Q=Object.entries(DW).find(([B,Y])=>Y===A);if(!Q)n.fatalError(`CollisionGroupsBuilder.groupToName(): Unknown collision group: ${A}`);return Q[0]}}var vt=qA(_t(),1);var yt=vt.default;class BQ{static globalInstance=new BQ;_emitter=new yt;_finalListeners={};emit(A,Q){if(this.listenerCount(A)===0)return!1;try{this._emitter.emit(A,Q),this._finalListeners[A]?.(Q)}catch(B){console.error(`EventRouter.emit(): Error emitting event "${A}":`,B)}return!0}emitWithGlobal(A,Q){this.emit(A,Q),BQ.globalInstance.emit(A,Q)}emitWithWorld(A,Q,B){this.emit(Q,B),A.emit(Q,B)}final(A,Q){if(this._finalListeners[A]&&Q!==this._finalListeners[A])return n.error(`EventRouter.final(): Listener for event type "${A}" already exists. It must be removed explicitly with .off() before a different final listener can be set.`);this._finalListeners[A]=Q}hasListeners(A){return this._emitter.listenerCount(A)>0||A in this._finalListeners}listeners(A){return[...this._emitter.listeners(A),...this._finalListeners[A]?[this._finalListeners[A]]:[]]}listenerCount(A){return this._emitter.listenerCount(A)+(this._finalListeners[A]?1:0)}off(A,Q){if(this._emitter.removeListener(A,Q),this._finalListeners[A]===Q)delete this._finalListeners[A]}offAll(A){if(this._emitter.removeAllListeners(A),A)delete this._finalListeners[A];else this._finalListeners={}}on(A,Q){this._emitter.addListener(A,Q)}once(A,Q){this._emitter.once(A,Q)}}import PYB from"crypto";import I8 from"fs";import TYB from"os";import qJ from"path";function BY(A){if(typeof A!=="object"||A===null)return!1;let Q=Object.getPrototypeOf(A);return(Q===null||Q===Object.prototype||Object.getPrototypeOf(Q)===null)&&!(Symbol.toStringTag in A)&&!(Symbol.iterator in A)}import{fileURLToPath as RkQ}from"node:url";var E4=(A,Q)=>{let B=c_(wkQ(A));if(typeof B!=="string")throw TypeError(`${Q} must be a string or a file URL: ${B}.`);return B},wkQ=(A)=>d_(A)?A.toString():A,d_=(A)=>typeof A!=="string"&&A&&Object.getPrototypeOf(A)===String.prototype,c_=(A)=>A instanceof URL?RkQ(A):A;var iM=(A,Q=[],B={})=>{let Y=E4(A,"First argument"),[J,C]=BY(Q)?[[],Q]:[Q,B];if(!Array.isArray(J))throw TypeError(`Second argument must be either an array of arguments or an options object: ${J}`);if(J.some((F)=>typeof F==="object"&&F!==null))throw TypeError(`Second argument must be an array of strings: ${J}`);let X=J.map(String),G=X.find((F)=>F.includes("\x00"));if(G!==void 0)throw TypeError(`Arguments cannot contain null bytes ("\\0"): ${G}`);if(!BY(C))throw TypeError(`Last argument must be an options object: ${C}`);return[Y,X,C]};import{ChildProcess as _kQ}from"node:child_process";import{StringDecoder as jkQ}from"node:string_decoder";var{toString:ht}=Object.prototype,gt=(A)=>ht.call(A)==="[object ArrayBuffer]",RY=(A)=>ht.call(A)==="[object Uint8Array]",m6=(A)=>new Uint8Array(A.buffer,A.byteOffset,A.byteLength),OkQ=new TextEncoder,xt=(A)=>OkQ.encode(A),PkQ=new TextDecoder,nM=(A)=>PkQ.decode(A),ft=(A,Q)=>{return TkQ(A,Q).join("")},TkQ=(A,Q)=>{if(Q==="utf8"&&A.every((C)=>typeof C==="string"))return A;let B=new jkQ(Q),Y=A.map((C)=>typeof C==="string"?xt(C):C).map((C)=>B.write(C)),J=B.end();return J===""?Y:[...Y,J]},rV=(A)=>{if(A.length===1&&RY(A[0]))return A[0];return l_(SkQ(A))},SkQ=(A)=>A.map((Q)=>typeof Q==="string"?xt(Q):Q),l_=(A)=>{let Q=new Uint8Array(kkQ(A)),B=0;for(let Y of A)Q.set(Y,B),B+=Y.length;return Q},kkQ=(A)=>{let Q=0;for(let B of A)Q+=B.length;return Q};var dt=(A)=>Array.isArray(A)&&Array.isArray(A.raw),ct=(A,Q)=>{let B=[];for(let[C,X]of A.entries())B=vkQ({templates:A,expressions:Q,tokens:B,index:C,template:X});if(B.length===0)throw TypeError("Template script must not be empty");let[Y,...J]=B;return[Y,J,{}]},vkQ=({templates:A,expressions:Q,tokens:B,index:Y,template:J})=>{if(J===void 0)throw TypeError(`Invalid backslash sequence: ${A.raw[Y]}`);let{nextTokens:C,leadingWhitespaces:X,trailingWhitespaces:G}=ykQ(J,A.raw[Y]),F=mt(B,C,X);if(Y===Q.length)return F;let W=Q[Y],Z=Array.isArray(W)?W.map((U)=>ut(U)):[ut(W)];return mt(F,Z,G)},ykQ=(A,Q)=>{if(Q.length===0)return{nextTokens:[],leadingWhitespaces:!1,trailingWhitespaces:!1};let B=[],Y=0,J=bt.has(Q[0]);for(let X=0,G=0;XB||A.length===0||Q.length===0?[...A,...Q]:[...A.slice(0,-1),`${A.at(-1)}${Q[0]}`,...Q.slice(1)],ut=(A)=>{let Q=typeof A;if(Q==="string")return A;if(Q==="number")return String(A);if(BY(A)&&(("stdout"in A)||("isMaxBuffer"in A)))return gkQ(A);if(A instanceof _kQ||Object.prototype.toString.call(A)==="[object Promise]")throw TypeError("Unexpected subprocess in template expression. Please use ${await subprocess} instead of ${subprocess}.");throw TypeError(`Unexpected "${Q}" in template expression`)},gkQ=({stdout:A})=>{if(typeof A==="string")return A;if(RY(A))return nM(A);if(A===void 0)throw TypeError(`Missing result.stdout in template expression. This is probably due to the previous subprocess' "stdout" option.`);throw TypeError(`Unexpected "${typeof A}" stdout in template expression`)};import{spawnSync as cgQ}from"node:child_process";import{debuglog as xkQ}from"node:util";import p_ from"node:process";var UC=(A)=>sM.includes(A),sM=[p_.stdin,p_.stdout,p_.stderr],i8=["stdin","stdout","stderr"],rM=(A)=>i8[A]??`stdio[${A}]`;var pt=(A)=>{let Q={...A};for(let B of s_)Q[B]=i_(A,B);return Q},i_=(A,Q)=>{let B=Array.from({length:fkQ(A)+1}),Y=bkQ(A[Q],B,Q);return lkQ(Y,Q)},fkQ=({stdio:A})=>Array.isArray(A)?Math.max(A.length,i8.length):i8.length,bkQ=(A,Q,B)=>BY(A)?mkQ(A,Q,B):Q.fill(A),mkQ=(A,Q,B)=>{for(let Y of Object.keys(A).sort(ukQ))for(let J of dkQ(Y,B,Q))Q[J]=A[Y];return Q},ukQ=(A,Q)=>lt(A){if(A==="stdout"||A==="stderr")return 0;return A==="all"?2:1},dkQ=(A,Q,B)=>{if(A==="ipc")return[B.length-1];let Y=n_(A);if(Y===void 0||Y===0)throw TypeError(`"${Q}.${A}" is invalid. +`);let U=C?"FATAL ERROR":G?"WARNING":"ERROR";if(Z(`${W}${DY.bold}⚠️ ${U}:${DY.reset} ${DY.bold}${Q}${DY.reset}`),Y)Z(`${DY.cyan}ℹ️ CONTEXT:${DY.reset} ${Y}`);let $=B.stack?.split(` +`)??[];if($.length>1)Z(`${DY.cyan}\uD83D\uDD0D STACK TRACE:${DY.reset}`),$.slice(1).forEach((E)=>{let I=E.trim().replace(/at\s+([^\s]+)/,`at ${DY.green}$1${DY.reset}`).replace(/\(([^:]+):(\d+):(\d+)\)/,`(${DY.cyan}$1${DY.reset}:${DY.yellow}$2:$3${DY.reset})`);Z(` ${I}`)});Z(`${W}${DY.bold}=================================================${DY.reset} +`)}}class PY{static instance=new PY;static assetsLibraryPath=(()=>{if(process.env.NODE_ENV==="production")return null;let A="@hytopia.com/assets";try{return cX.dirname(u.resolve(A))}catch{return null}})();syncAsset(A){if(!PY.assetsLibraryPath)return l.warning("AssetsLibrary.syncAsset(): Assets library is not available.");try{let Q=cX.relative(PY.assetsLibraryPath,A),B=cX.join("assets",Q);if(!dX.existsSync(A))return;if(dX.existsSync(B))return;let Y=Q.match(/^(.+?)\/\.optimized\/([^/]+)\//);if(Y){let[,J,C]=Y,X=cX.join(PY.assetsLibraryPath,J,".optimized",C),G=cX.join("assets",J,".optimized",C);dX.cpSync(X,G,{recursive:!0,force:!1}),[".gltf",".glb"].forEach((W)=>{let F=cX.join(PY.assetsLibraryPath,J,`${C}${W}`),Z=cX.join("assets",J,`${C}${W}`);if(dX.existsSync(F)&&!dX.existsSync(Z))dX.mkdirSync(cX.dirname(Z),{recursive:!0}),dX.copyFileSync(F,Z)}),console.log(`AssetsLibrary.syncAsset(): Copied model from asset library to local assets: ${J}/${C}`)}else dX.mkdirSync(cX.dirname(B),{recursive:!0}),dX.copyFileSync(A,B),console.log(`AssetsLibrary.syncAsset(): Copied asset from asset library to local assets: ${Q}`)}catch(Q){l.warning(`AssetsLibrary.syncAsset(): Failed to copy asset "${A}" to local assets: ${Q}`)}}}var O,VB=Array(128).fill(void 0);function $B(A){return VB[A]}VB.push(void 0,null,!0,!1);var sV=VB.length;function pB(A){sV===VB.length&&VB.push(VB.length+1);let Q=sV;return sV=VB[Q],VB[Q]=A,Q}function kM(A,Q){try{return A.apply(this,Q)}catch(B){O.__wbindgen_export_0(pB(B))}}var Xe=typeof TextDecoder<"u"?new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0}):{decode:()=>{throw Error("TextDecoder not available")}};typeof TextDecoder<"u"&&Xe.decode();var cV=null;function L_(A,Q){return A>>>=0,Xe.decode((cV!==null&&cV.byteLength!==0||(cV=new Uint8Array(O.memory.buffer)),cV).subarray(A,A+Q))}function VQ(A){return A==null}var zF=null;function NY(){return(zF===null||zF.buffer.detached===!0||zF.buffer.detached===void 0&&zF.buffer!==O.memory.buffer)&&(zF=new DataView(O.memory.buffer)),zF}function rV(A){let Q=$B(A);return function(B){B<132||(VB[B]=sV,sV=B)}(A),Q}function c(A,Q){if(!(A instanceof Q))throw Error(`expected instance of ${Q.name}`)}var iB=128;function Z0(A){if(iB==1)throw Error("out of js stack");return VB[--iB]=A,iB}var lV=null;function H_Q(A,Q){return A>>>=0,(lV!==null&&lV.byteLength!==0||(lV=new Int32Array(O.memory.buffer)),lV).subarray(A/4,A/4+Q)}var pV=null;function Ge(){return pV!==null&&pV.byteLength!==0||(pV=new Float32Array(O.memory.buffer)),pV}function yt(A,Q){return A>>>=0,Ge().subarray(A/4,A/4+Q)}var iV=null;function We(){return iV!==null&&iV.byteLength!==0||(iV=new Uint32Array(O.memory.buffer)),iV}var lJ=0;function dV(A,Q){let B=Q(4*A.length,4)>>>0;return We().set(A,B/4),lJ=A.length,B}function nG(A,Q){let B=Q(4*A.length,4)>>>0;return Ge().set(A,B/4),lJ=A.length,B}Object.freeze({Vertex:0,0:"Vertex",Edge:1,1:"Edge",Face:2,2:"Face",Unknown:3,3:"Unknown"});var cM=Object.freeze({LinX:0,0:"LinX",LinY:1,1:"LinY",LinZ:2,2:"LinZ",AngX:3,3:"AngX",AngY:4,4:"AngY",AngZ:5,5:"AngZ"}),DC=Object.freeze({Revolute:0,0:"Revolute",Fixed:1,1:"Fixed",Prismatic:2,2:"Prismatic",Rope:3,3:"Rope",Spring:4,4:"Spring",Spherical:5,5:"Spherical",Generic:6,6:"Generic"});Object.freeze({AccelerationBased:0,0:"AccelerationBased",ForceBased:1,1:"ForceBased"}),Object.freeze({Dynamic:0,0:"Dynamic",Fixed:1,1:"Fixed",KinematicPositionBased:2,2:"KinematicPositionBased",KinematicVelocityBased:3,3:"KinematicVelocityBased"});var mY=Object.freeze({Ball:0,0:"Ball",Cuboid:1,1:"Cuboid",Capsule:2,2:"Capsule",Segment:3,3:"Segment",Polyline:4,4:"Polyline",Triangle:5,5:"Triangle",TriMesh:6,6:"TriMesh",HeightField:7,7:"HeightField",Compound:8,8:"Compound",ConvexPolyhedron:9,9:"ConvexPolyhedron",Cylinder:10,10:"Cylinder",Cone:11,11:"Cone",RoundCuboid:12,12:"RoundCuboid",RoundTriangle:13,13:"RoundTriangle",RoundCylinder:14,14:"RoundCylinder",RoundCone:15,15:"RoundCone",RoundConvexPolyhedron:16,16:"RoundConvexPolyhedron",HalfSpace:17,17:"HalfSpace",Voxels:18,18:"Voxels"}),Z_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawbroadphase_free(A>>>0,1));class pX{static __wrap(A){A>>>=0;let Q=Object.create(pX.prototype);return Q.__wbg_ptr=A,Z_.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Z_.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawbroadphase_free(A,0)}constructor(){let A=O.rawbroadphase_new();return this.__wbg_ptr=A>>>0,Z_.register(this,this.__wbg_ptr,this),this}castRay(A,Q,B,Y,J,C,X,G,W,F,Z,U){try{c(A,LY),c(Q,C0),c(B,T0),c(Y,r),c(J,r);let $=O.rawbroadphase_castRay(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C,X,G,VQ(W)?4294967297:W>>>0,!VQ(F),VQ(F)?0:F,!VQ(Z),VQ(Z)?0:Z,Z0(U));return $===0?void 0:h_.__wrap($)}finally{VB[iB++]=void 0}}castRayAndGetNormal(A,Q,B,Y,J,C,X,G,W,F,Z,U){try{c(A,LY),c(Q,C0),c(B,T0),c(Y,r),c(J,r);let $=O.rawbroadphase_castRayAndGetNormal(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C,X,G,VQ(W)?4294967297:W>>>0,!VQ(F),VQ(F)?0:F,!VQ(Z),VQ(Z)?0:Z,Z0(U));return $===0?void 0:iM.__wrap($)}finally{VB[iB++]=void 0}}intersectionsWithRay(A,Q,B,Y,J,C,X,G,W,F,Z,U,$){try{c(A,LY),c(Q,C0),c(B,T0),c(Y,r),c(J,r),O.rawbroadphase_intersectionsWithRay(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C,X,Z0(G),W,VQ(F)?4294967297:F>>>0,!VQ(Z),VQ(Z)?0:Z,!VQ(U),VQ(U)?0:U,Z0($))}finally{VB[iB++]=void 0,VB[iB++]=void 0}}intersectionWithShape(A,Q,B,Y,J,C,X,G,W,F,Z){try{let E=O.__wbindgen_add_to_stack_pointer(-16);c(A,LY),c(Q,C0),c(B,T0),c(Y,r),c(J,AB),c(C,UQ),O.rawbroadphase_intersectionWithShape(E,this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C.__wbg_ptr,X,VQ(G)?4294967297:G>>>0,!VQ(W),VQ(W)?0:W,!VQ(F),VQ(F)?0:F,Z0(Z));var U=NY().getInt32(E+0,!0),$=NY().getFloat64(E+8,!0);return U===0?void 0:$}finally{O.__wbindgen_add_to_stack_pointer(16),VB[iB++]=void 0}}projectPoint(A,Q,B,Y,J,C,X,G,W,F){try{c(A,LY),c(Q,C0),c(B,T0),c(Y,r);let Z=O.rawbroadphase_projectPoint(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J,C,VQ(X)?4294967297:X>>>0,!VQ(G),VQ(G)?0:G,!VQ(W),VQ(W)?0:W,Z0(F));return Z===0?void 0:vM.__wrap(Z)}finally{VB[iB++]=void 0}}projectPointAndGetFeature(A,Q,B,Y,J,C,X,G,W){try{c(A,LY),c(Q,C0),c(B,T0),c(Y,r);let F=O.rawbroadphase_projectPointAndGetFeature(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J,VQ(C)?4294967297:C>>>0,!VQ(X),VQ(X)?0:X,!VQ(G),VQ(G)?0:G,Z0(W));return F===0?void 0:vM.__wrap(F)}finally{VB[iB++]=void 0}}intersectionsWithPoint(A,Q,B,Y,J,C,X,G,W,F){try{c(A,LY),c(Q,C0),c(B,T0),c(Y,r),O.rawbroadphase_intersectionsWithPoint(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,Z0(J),C,VQ(X)?4294967297:X>>>0,!VQ(G),VQ(G)?0:G,!VQ(W),VQ(W)?0:W,Z0(F))}finally{VB[iB++]=void 0,VB[iB++]=void 0}}castShape(A,Q,B,Y,J,C,X,G,W,F,Z,U,$,E,K){try{c(A,LY),c(Q,C0),c(B,T0),c(Y,r),c(J,AB),c(C,r),c(X,UQ);let I=O.rawbroadphase_castShape(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C.__wbg_ptr,X.__wbg_ptr,G,W,F,Z,VQ(U)?4294967297:U>>>0,!VQ($),VQ($)?0:$,!VQ(E),VQ(E)?0:E,Z0(K));return I===0?void 0:lM.__wrap(I)}finally{VB[iB++]=void 0}}intersectionsWithShape(A,Q,B,Y,J,C,X,G,W,F,Z,U){try{c(A,LY),c(Q,C0),c(B,T0),c(Y,r),c(J,AB),c(C,UQ),O.rawbroadphase_intersectionsWithShape(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C.__wbg_ptr,Z0(X),G,VQ(W)?4294967297:W>>>0,!VQ(F),VQ(F)?0:F,!VQ(Z),VQ(Z)?0:Z,Z0(U))}finally{VB[iB++]=void 0,VB[iB++]=void 0}}collidersWithAabbIntersectingAabb(A,Q,B,Y,J,C){try{c(A,LY),c(Q,C0),c(B,T0),c(Y,r),c(J,r),O.rawbroadphase_collidersWithAabbIntersectingAabb(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,Z0(C))}finally{VB[iB++]=void 0}}}var gt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawccdsolver_free(A>>>0,1));class _M{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,gt.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawccdsolver_free(A,0)}constructor(){let A=O.rawccdsolver_new();return this.__wbg_ptr=A>>>0,gt.register(this,this.__wbg_ptr,this),this}}var ht=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawcharactercollision_free(A>>>0,1));class S_{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,ht.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawcharactercollision_free(A,0)}constructor(){let A=O.rawcharactercollision_new();return this.__wbg_ptr=A>>>0,ht.register(this,this.__wbg_ptr,this),this}handle(){return O.rawcharactercollision_handle(this.__wbg_ptr)}translationDeltaApplied(){let A=O.rawcharactercollision_translationDeltaApplied(this.__wbg_ptr);return r.__wrap(A)}translationDeltaRemaining(){let A=O.rawcharactercollision_translationDeltaRemaining(this.__wbg_ptr);return r.__wrap(A)}toi(){return O.rawcharactercollision_toi(this.__wbg_ptr)}worldWitness1(){let A=O.rawcharactercollision_worldWitness1(this.__wbg_ptr);return r.__wrap(A)}worldWitness2(){let A=O.rawcharactercollision_worldWitness2(this.__wbg_ptr);return r.__wrap(A)}worldNormal1(){let A=O.rawcharactercollision_worldNormal1(this.__wbg_ptr);return r.__wrap(A)}worldNormal2(){let A=O.rawcharactercollision_worldNormal2(this.__wbg_ptr);return r.__wrap(A)}}var $_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawcolliderset_free(A>>>0,1));class T0{static __wrap(A){A>>>=0;let Q=Object.create(T0.prototype);return Q.__wbg_ptr=A,$_.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,$_.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawcolliderset_free(A,0)}coTranslation(A){let Q=O.rawcolliderset_coTranslation(this.__wbg_ptr,A);return r.__wrap(Q)}coRotation(A){let Q=O.rawcolliderset_coRotation(this.__wbg_ptr,A);return AB.__wrap(Q)}coTranslationWrtParent(A){let Q=O.rawcolliderset_coTranslationWrtParent(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}coRotationWrtParent(A){let Q=O.rawcolliderset_coRotationWrtParent(this.__wbg_ptr,A);return Q===0?void 0:AB.__wrap(Q)}coSetTranslation(A,Q,B,Y){O.rawcolliderset_coSetTranslation(this.__wbg_ptr,A,Q,B,Y)}coSetTranslationWrtParent(A,Q,B,Y){O.rawcolliderset_coSetTranslationWrtParent(this.__wbg_ptr,A,Q,B,Y)}coSetRotation(A,Q,B,Y,J){O.rawcolliderset_coSetRotation(this.__wbg_ptr,A,Q,B,Y,J)}coSetRotationWrtParent(A,Q,B,Y,J){O.rawcolliderset_coSetRotationWrtParent(this.__wbg_ptr,A,Q,B,Y,J)}coIsSensor(A){return O.rawcolliderset_coIsSensor(this.__wbg_ptr,A)!==0}coShapeType(A){return O.rawcolliderset_coShapeType(this.__wbg_ptr,A)}coHalfspaceNormal(A){let Q=O.rawcolliderset_coHalfspaceNormal(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}coHalfExtents(A){let Q=O.rawcolliderset_coHalfExtents(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}coSetHalfExtents(A,Q){c(Q,r),O.rawcolliderset_coSetHalfExtents(this.__wbg_ptr,A,Q.__wbg_ptr)}coRadius(A){let Q=O.rawcolliderset_coRadius(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}coSetRadius(A,Q){O.rawcolliderset_coSetRadius(this.__wbg_ptr,A,Q)}coHalfHeight(A){let Q=O.rawcolliderset_coHalfHeight(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}coSetHalfHeight(A,Q){O.rawcolliderset_coSetHalfHeight(this.__wbg_ptr,A,Q)}coRoundRadius(A){let Q=O.rawcolliderset_coRoundRadius(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}coSetRoundRadius(A,Q){O.rawcolliderset_coSetRoundRadius(this.__wbg_ptr,A,Q)}coVoxelData(A){try{let Y=O.__wbindgen_add_to_stack_pointer(-16);O.rawcolliderset_coVoxelData(Y,this.__wbg_ptr,A);var Q=NY().getInt32(Y+0,!0),B=NY().getInt32(Y+4,!0);let J;return Q!==0&&(J=H_Q(Q,B).slice(),O.__wbindgen_export_1(Q,4*B,4)),J}finally{O.__wbindgen_add_to_stack_pointer(16)}}coVoxelSize(A){let Q=O.rawcolliderset_coVoxelSize(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}coSetVoxel(A,Q,B,Y,J){O.rawcolliderset_coSetVoxel(this.__wbg_ptr,A,Q,B,Y,J)}coPropagateVoxelChange(A,Q,B,Y,J,C,X,G){O.rawcolliderset_coPropagateVoxelChange(this.__wbg_ptr,A,Q,B,Y,J,C,X,G)}coCombineVoxelStates(A,Q,B,Y,J){O.rawcolliderset_coCombineVoxelStates(this.__wbg_ptr,A,Q,B,Y,J)}coVertices(A){try{let Y=O.__wbindgen_add_to_stack_pointer(-16);O.rawcolliderset_coVertices(Y,this.__wbg_ptr,A);var Q=NY().getInt32(Y+0,!0),B=NY().getInt32(Y+4,!0);let J;return Q!==0&&(J=yt(Q,B).slice(),O.__wbindgen_export_1(Q,4*B,4)),J}finally{O.__wbindgen_add_to_stack_pointer(16)}}coIndices(A){try{let Y=O.__wbindgen_add_to_stack_pointer(-16);O.rawcolliderset_coIndices(Y,this.__wbg_ptr,A);var Q=NY().getInt32(Y+0,!0),B=NY().getInt32(Y+4,!0);let J;return Q!==0&&(J=function(C,X){return C>>>=0,We().subarray(C/4,C/4+X)}(Q,B).slice(),O.__wbindgen_export_1(Q,4*B,4)),J}finally{O.__wbindgen_add_to_stack_pointer(16)}}coTriMeshFlags(A){let Q=O.rawcolliderset_coTriMeshFlags(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}coHeightFieldFlags(A){let Q=O.rawcolliderset_coHeightFieldFlags(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}coHeightfieldHeights(A){try{let Y=O.__wbindgen_add_to_stack_pointer(-16);O.rawcolliderset_coHeightfieldHeights(Y,this.__wbg_ptr,A);var Q=NY().getInt32(Y+0,!0),B=NY().getInt32(Y+4,!0);let J;return Q!==0&&(J=yt(Q,B).slice(),O.__wbindgen_export_1(Q,4*B,4)),J}finally{O.__wbindgen_add_to_stack_pointer(16)}}coHeightfieldScale(A){let Q=O.rawcolliderset_coHeightfieldScale(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}coHeightfieldNRows(A){let Q=O.rawcolliderset_coHeightfieldNRows(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}coHeightfieldNCols(A){let Q=O.rawcolliderset_coHeightfieldNCols(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}coParent(A){try{let Y=O.__wbindgen_add_to_stack_pointer(-16);O.rawcolliderset_coParent(Y,this.__wbg_ptr,A);var Q=NY().getInt32(Y+0,!0),B=NY().getFloat64(Y+8,!0);return Q===0?void 0:B}finally{O.__wbindgen_add_to_stack_pointer(16)}}coSetEnabled(A,Q){O.rawcolliderset_coSetEnabled(this.__wbg_ptr,A,Q)}coIsEnabled(A){return O.rawcolliderset_coIsEnabled(this.__wbg_ptr,A)!==0}coSetContactSkin(A,Q){O.rawcolliderset_coSetContactSkin(this.__wbg_ptr,A,Q)}coContactSkin(A){return O.rawcolliderset_coContactSkin(this.__wbg_ptr,A)}coFriction(A){return O.rawcolliderset_coFriction(this.__wbg_ptr,A)}coRestitution(A){return O.rawcolliderset_coRestitution(this.__wbg_ptr,A)}coDensity(A){return O.rawcolliderset_coDensity(this.__wbg_ptr,A)}coMass(A){return O.rawcolliderset_coMass(this.__wbg_ptr,A)}coVolume(A){return O.rawcolliderset_coVolume(this.__wbg_ptr,A)}coCollisionGroups(A){return O.rawcolliderset_coCollisionGroups(this.__wbg_ptr,A)>>>0}coSolverGroups(A){return O.rawcolliderset_coSolverGroups(this.__wbg_ptr,A)>>>0}coActiveHooks(A){return O.rawcolliderset_coActiveHooks(this.__wbg_ptr,A)>>>0}coActiveCollisionTypes(A){return O.rawcolliderset_coActiveCollisionTypes(this.__wbg_ptr,A)}coActiveEvents(A){return O.rawcolliderset_coActiveEvents(this.__wbg_ptr,A)>>>0}coContactForceEventThreshold(A){return O.rawcolliderset_coContactForceEventThreshold(this.__wbg_ptr,A)}coContainsPoint(A,Q){return c(Q,r),O.rawcolliderset_coContainsPoint(this.__wbg_ptr,A,Q.__wbg_ptr)!==0}coCastShape(A,Q,B,Y,J,C,X,G,W){c(Q,r),c(B,UQ),c(Y,r),c(J,AB),c(C,r);let F=O.rawcolliderset_coCastShape(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C.__wbg_ptr,X,G,W);return F===0?void 0:sM.__wrap(F)}coCastCollider(A,Q,B,Y,J,C,X){c(Q,r),c(Y,r);let G=O.rawcolliderset_coCastCollider(this.__wbg_ptr,A,Q.__wbg_ptr,B,Y.__wbg_ptr,J,C,X);return G===0?void 0:lM.__wrap(G)}coIntersectsShape(A,Q,B,Y){return c(Q,UQ),c(B,r),c(Y,AB),O.rawcolliderset_coIntersectsShape(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr)!==0}coContactShape(A,Q,B,Y,J){c(Q,UQ),c(B,r),c(Y,AB);let C=O.rawcolliderset_coContactShape(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J);return C===0?void 0:aV.__wrap(C)}coContactCollider(A,Q,B){let Y=O.rawcolliderset_coContactCollider(this.__wbg_ptr,A,Q,B);return Y===0?void 0:aV.__wrap(Y)}coProjectPoint(A,Q,B){c(Q,r);let Y=O.rawcolliderset_coProjectPoint(this.__wbg_ptr,A,Q.__wbg_ptr,B);return pM.__wrap(Y)}coIntersectsRay(A,Q,B,Y){return c(Q,r),c(B,r),O.rawcolliderset_coIntersectsRay(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y)!==0}coCastRay(A,Q,B,Y,J){return c(Q,r),c(B,r),O.rawcolliderset_coCastRay(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y,J)}coCastRayAndGetNormal(A,Q,B,Y,J){c(Q,r),c(B,r);let C=O.rawcolliderset_coCastRayAndGetNormal(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y,J);return C===0?void 0:nM.__wrap(C)}coSetSensor(A,Q){O.rawcolliderset_coSetSensor(this.__wbg_ptr,A,Q)}coSetRestitution(A,Q){O.rawcolliderset_coSetRestitution(this.__wbg_ptr,A,Q)}coSetFriction(A,Q){O.rawcolliderset_coSetFriction(this.__wbg_ptr,A,Q)}coFrictionCombineRule(A){return O.rawcolliderset_coFrictionCombineRule(this.__wbg_ptr,A)>>>0}coSetFrictionCombineRule(A,Q){O.rawcolliderset_coSetFrictionCombineRule(this.__wbg_ptr,A,Q)}coRestitutionCombineRule(A){return O.rawcolliderset_coRestitutionCombineRule(this.__wbg_ptr,A)>>>0}coSetRestitutionCombineRule(A,Q){O.rawcolliderset_coSetRestitutionCombineRule(this.__wbg_ptr,A,Q)}coSetCollisionGroups(A,Q){O.rawcolliderset_coSetCollisionGroups(this.__wbg_ptr,A,Q)}coSetSolverGroups(A,Q){O.rawcolliderset_coSetSolverGroups(this.__wbg_ptr,A,Q)}coSetActiveHooks(A,Q){O.rawcolliderset_coSetActiveHooks(this.__wbg_ptr,A,Q)}coSetActiveEvents(A,Q){O.rawcolliderset_coSetActiveEvents(this.__wbg_ptr,A,Q)}coSetActiveCollisionTypes(A,Q){O.rawcolliderset_coSetActiveCollisionTypes(this.__wbg_ptr,A,Q)}coSetShape(A,Q){c(Q,UQ),O.rawcolliderset_coSetShape(this.__wbg_ptr,A,Q.__wbg_ptr)}coSetContactForceEventThreshold(A,Q){O.rawcolliderset_coSetContactForceEventThreshold(this.__wbg_ptr,A,Q)}coSetDensity(A,Q){O.rawcolliderset_coSetDensity(this.__wbg_ptr,A,Q)}coSetMass(A,Q){O.rawcolliderset_coSetMass(this.__wbg_ptr,A,Q)}coSetMassProperties(A,Q,B,Y,J){c(B,r),c(Y,r),c(J,AB),O.rawcolliderset_coSetMassProperties(this.__wbg_ptr,A,Q,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr)}constructor(){let A=O.rawcolliderset_new();return this.__wbg_ptr=A>>>0,$_.register(this,this.__wbg_ptr,this),this}len(){return O.rawcolliderset_len(this.__wbg_ptr)>>>0}contains(A){return O.rawcolliderset_contains(this.__wbg_ptr,A)!==0}createCollider(A,Q,B,Y,J,C,X,G,W,F,Z,U,$,E,K,I,V,H,D,L,z,M,N,q,w){try{let j=O.__wbindgen_add_to_stack_pointer(-16);c(Q,UQ),c(B,r),c(Y,AB),c(X,r),c(G,r),c(W,AB),c(w,C0),O.rawcolliderset_createCollider(j,this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J,C,X.__wbg_ptr,G.__wbg_ptr,W.__wbg_ptr,F,Z,U,$,E,K,I,V,H,D,L,z,M,N,q,w.__wbg_ptr);var P=NY().getInt32(j+0,!0),_=NY().getFloat64(j+8,!0);return P===0?void 0:_}finally{O.__wbindgen_add_to_stack_pointer(16)}}remove(A,Q,B,Y){c(Q,nX),c(B,C0),O.rawcolliderset_remove(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y)}isHandleValid(A){return O.rawcolliderset_contains(this.__wbg_ptr,A)!==0}forEachColliderHandle(A){try{O.rawcolliderset_forEachColliderHandle(this.__wbg_ptr,Z0(A))}finally{VB[iB++]=void 0}}}var xt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawcollidershapecasthit_free(A>>>0,1));class lM{static __wrap(A){A>>>=0;let Q=Object.create(lM.prototype);return Q.__wbg_ptr=A,xt.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,xt.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawcollidershapecasthit_free(A,0)}colliderHandle(){return O.rawcharactercollision_handle(this.__wbg_ptr)}time_of_impact(){return O.rawcollidershapecasthit_time_of_impact(this.__wbg_ptr)}witness1(){let A=O.rawcollidershapecasthit_witness1(this.__wbg_ptr);return r.__wrap(A)}witness2(){let A=O.rawcollidershapecasthit_witness2(this.__wbg_ptr);return r.__wrap(A)}normal1(){let A=O.rawcharactercollision_translationDeltaApplied(this.__wbg_ptr);return r.__wrap(A)}normal2(){let A=O.rawcharactercollision_translationDeltaRemaining(this.__wbg_ptr);return r.__wrap(A)}}var ft=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawcontactforceevent_free(A>>>0,1));class k_{static __wrap(A){A>>>=0;let Q=Object.create(k_.prototype);return Q.__wbg_ptr=A,ft.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,ft.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawcontactforceevent_free(A,0)}collider1(){return O.rawcharactercollision_handle(this.__wbg_ptr)}collider2(){return O.rawcontactforceevent_collider2(this.__wbg_ptr)}total_force(){let A=O.rawcontactforceevent_total_force(this.__wbg_ptr);return r.__wrap(A)}total_force_magnitude(){return O.rawcontactforceevent_total_force_magnitude(this.__wbg_ptr)}max_force_direction(){let A=O.rawcontactforceevent_max_force_direction(this.__wbg_ptr);return r.__wrap(A)}max_force_magnitude(){return O.rawcontactforceevent_max_force_magnitude(this.__wbg_ptr)}}var bt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawcontactmanifold_free(A>>>0,1));class __{static __wrap(A){A>>>=0;let Q=Object.create(__.prototype);return Q.__wbg_ptr=A,bt.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,bt.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawcontactmanifold_free(A,0)}normal(){let A=O.rawcontactmanifold_normal(this.__wbg_ptr);return r.__wrap(A)}local_n1(){let A=O.rawcontactmanifold_local_n1(this.__wbg_ptr);return r.__wrap(A)}local_n2(){let A=O.rawcontactmanifold_local_n2(this.__wbg_ptr);return r.__wrap(A)}subshape1(){return O.rawcontactmanifold_subshape1(this.__wbg_ptr)>>>0}subshape2(){return O.rawcontactmanifold_subshape2(this.__wbg_ptr)>>>0}num_contacts(){return O.rawcontactmanifold_num_contacts(this.__wbg_ptr)>>>0}contact_local_p1(A){let Q=O.rawcontactmanifold_contact_local_p1(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}contact_local_p2(A){let Q=O.rawcontactmanifold_contact_local_p2(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}contact_dist(A){return O.rawcontactmanifold_contact_dist(this.__wbg_ptr,A)}contact_fid1(A){return O.rawcontactmanifold_contact_fid1(this.__wbg_ptr,A)>>>0}contact_fid2(A){return O.rawcontactmanifold_contact_fid2(this.__wbg_ptr,A)>>>0}contact_impulse(A){return O.rawcontactmanifold_contact_impulse(this.__wbg_ptr,A)}contact_tangent_impulse_x(A){return O.rawcontactmanifold_contact_tangent_impulse_x(this.__wbg_ptr,A)}contact_tangent_impulse_y(A){return O.rawcontactmanifold_contact_tangent_impulse_y(this.__wbg_ptr,A)}num_solver_contacts(){return O.rawcontactmanifold_num_solver_contacts(this.__wbg_ptr)>>>0}solver_contact_point(A){let Q=O.rawcontactmanifold_solver_contact_point(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}solver_contact_dist(A){return O.rawcontactmanifold_solver_contact_dist(this.__wbg_ptr,A)}solver_contact_friction(A){return O.rawcontactmanifold_solver_contact_friction(this.__wbg_ptr,A)}solver_contact_restitution(A){return O.rawcontactmanifold_solver_contact_restitution(this.__wbg_ptr,A)}solver_contact_tangent_velocity(A){let Q=O.rawcontactmanifold_solver_contact_tangent_velocity(this.__wbg_ptr,A);return r.__wrap(Q)}}var mt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawcontactpair_free(A>>>0,1));class v_{static __wrap(A){A>>>=0;let Q=Object.create(v_.prototype);return Q.__wbg_ptr=A,mt.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,mt.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawcontactpair_free(A,0)}collider1(){return O.rawcontactpair_collider1(this.__wbg_ptr)}collider2(){return O.rawcontactpair_collider2(this.__wbg_ptr)}numContactManifolds(){return O.rawcontactpair_numContactManifolds(this.__wbg_ptr)>>>0}contactManifold(A){let Q=O.rawcontactpair_contactManifold(this.__wbg_ptr,A);return Q===0?void 0:__.__wrap(Q)}}var ut=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawdebugrenderpipeline_free(A>>>0,1));class Fe{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,ut.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawdebugrenderpipeline_free(A,0)}constructor(){let A=O.rawdebugrenderpipeline_new();return this.__wbg_ptr=A>>>0,ut.register(this,this.__wbg_ptr,this),this}vertices(){return rV(O.rawdebugrenderpipeline_vertices(this.__wbg_ptr))}colors(){return rV(O.rawdebugrenderpipeline_colors(this.__wbg_ptr))}render(A,Q,B,Y,J,C,X){try{c(A,C0),c(Q,T0),c(B,iX),c(Y,sX),c(J,LY),O.rawdebugrenderpipeline_render(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C,Z0(X))}finally{VB[iB++]=void 0}}}var dt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawdeserializedworld_free(A>>>0,1));class y_{static __wrap(A){A>>>=0;let Q=Object.create(y_.prototype);return Q.__wbg_ptr=A,dt.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,dt.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawdeserializedworld_free(A,0)}takeGravity(){let A=O.rawdeserializedworld_takeGravity(this.__wbg_ptr);return A===0?void 0:r.__wrap(A)}takeIntegrationParameters(){let A=O.rawdeserializedworld_takeIntegrationParameters(this.__wbg_ptr);return A===0?void 0:wF.__wrap(A)}takeIslandManager(){let A=O.rawdeserializedworld_takeIslandManager(this.__wbg_ptr);return A===0?void 0:nX.__wrap(A)}takeBroadPhase(){let A=O.rawdeserializedworld_takeBroadPhase(this.__wbg_ptr);return A===0?void 0:pX.__wrap(A)}takeNarrowPhase(){let A=O.rawdeserializedworld_takeNarrowPhase(this.__wbg_ptr);return A===0?void 0:LY.__wrap(A)}takeBodies(){let A=O.rawdeserializedworld_takeBodies(this.__wbg_ptr);return A===0?void 0:C0.__wrap(A)}takeColliders(){let A=O.rawdeserializedworld_takeColliders(this.__wbg_ptr);return A===0?void 0:T0.__wrap(A)}takeImpulseJoints(){let A=O.rawdeserializedworld_takeImpulseJoints(this.__wbg_ptr);return A===0?void 0:iX.__wrap(A)}takeMultibodyJoints(){let A=O.rawdeserializedworld_takeMultibodyJoints(this.__wbg_ptr);return A===0?void 0:sX.__wrap(A)}}var ct=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawdynamicraycastvehiclecontroller_free(A>>>0,1));class Ze{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,ct.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawdynamicraycastvehiclecontroller_free(A,0)}constructor(A){let Q=O.rawdynamicraycastvehiclecontroller_new(A);return this.__wbg_ptr=Q>>>0,ct.register(this,this.__wbg_ptr,this),this}current_vehicle_speed(){return O.rawdynamicraycastvehiclecontroller_current_vehicle_speed(this.__wbg_ptr)}chassis(){return O.rawdynamicraycastvehiclecontroller_chassis(this.__wbg_ptr)}index_up_axis(){return O.rawdynamicraycastvehiclecontroller_index_up_axis(this.__wbg_ptr)>>>0}set_index_up_axis(A){O.rawdynamicraycastvehiclecontroller_set_index_up_axis(this.__wbg_ptr,A)}index_forward_axis(){return O.rawdynamicraycastvehiclecontroller_index_forward_axis(this.__wbg_ptr)>>>0}set_index_forward_axis(A){O.rawdynamicraycastvehiclecontroller_set_index_forward_axis(this.__wbg_ptr,A)}add_wheel(A,Q,B,Y,J){c(A,r),c(Q,r),c(B,r),O.rawdynamicraycastvehiclecontroller_add_wheel(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y,J)}num_wheels(){return O.rawdynamicraycastvehiclecontroller_num_wheels(this.__wbg_ptr)>>>0}update_vehicle(A,Q,B,Y,J,C,X,G){try{c(Q,pX),c(B,LY),c(Y,C0),c(J,T0),O.rawdynamicraycastvehiclecontroller_update_vehicle(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C,VQ(X)?4294967297:X>>>0,Z0(G))}finally{VB[iB++]=void 0}}wheel_chassis_connection_point_cs(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_chassis_connection_point_cs(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}set_wheel_chassis_connection_point_cs(A,Q){c(Q,r),O.rawdynamicraycastvehiclecontroller_set_wheel_chassis_connection_point_cs(this.__wbg_ptr,A,Q.__wbg_ptr)}wheel_suspension_rest_length(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_suspension_rest_length(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_suspension_rest_length(A,Q){O.rawdynamicraycastvehiclecontroller_set_wheel_suspension_rest_length(this.__wbg_ptr,A,Q)}wheel_max_suspension_travel(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_max_suspension_travel(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_max_suspension_travel(A,Q){O.rawdynamicraycastvehiclecontroller_set_wheel_max_suspension_travel(this.__wbg_ptr,A,Q)}wheel_radius(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_radius(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_radius(A,Q){O.rawdynamicraycastvehiclecontroller_set_wheel_radius(this.__wbg_ptr,A,Q)}wheel_suspension_stiffness(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_suspension_stiffness(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_suspension_stiffness(A,Q){O.rawdynamicraycastvehiclecontroller_set_wheel_suspension_stiffness(this.__wbg_ptr,A,Q)}wheel_suspension_compression(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_suspension_compression(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_suspension_compression(A,Q){O.rawdynamicraycastvehiclecontroller_set_wheel_suspension_compression(this.__wbg_ptr,A,Q)}wheel_suspension_relaxation(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_suspension_relaxation(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_suspension_relaxation(A,Q){O.rawdynamicraycastvehiclecontroller_set_wheel_suspension_relaxation(this.__wbg_ptr,A,Q)}wheel_max_suspension_force(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_max_suspension_force(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_max_suspension_force(A,Q){O.rawdynamicraycastvehiclecontroller_set_wheel_max_suspension_force(this.__wbg_ptr,A,Q)}wheel_brake(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_brake(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_brake(A,Q){O.rawdynamicraycastvehiclecontroller_set_wheel_brake(this.__wbg_ptr,A,Q)}wheel_steering(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_steering(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_steering(A,Q){O.rawdynamicraycastvehiclecontroller_set_wheel_steering(this.__wbg_ptr,A,Q)}wheel_engine_force(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_engine_force(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_engine_force(A,Q){O.rawdynamicraycastvehiclecontroller_set_wheel_engine_force(this.__wbg_ptr,A,Q)}wheel_direction_cs(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_direction_cs(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}set_wheel_direction_cs(A,Q){c(Q,r),O.rawdynamicraycastvehiclecontroller_set_wheel_direction_cs(this.__wbg_ptr,A,Q.__wbg_ptr)}wheel_axle_cs(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_axle_cs(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}set_wheel_axle_cs(A,Q){c(Q,r),O.rawdynamicraycastvehiclecontroller_set_wheel_axle_cs(this.__wbg_ptr,A,Q.__wbg_ptr)}wheel_friction_slip(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_friction_slip(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_friction_slip(A,Q){O.rawdynamicraycastvehiclecontroller_set_wheel_friction_slip(this.__wbg_ptr,A,Q)}wheel_side_friction_stiffness(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_side_friction_stiffness(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_side_friction_stiffness(A,Q){O.rawdynamicraycastvehiclecontroller_set_wheel_side_friction_stiffness(this.__wbg_ptr,A,Q)}wheel_rotation(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_rotation(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}wheel_forward_impulse(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_forward_impulse(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}wheel_side_impulse(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_side_impulse(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}wheel_suspension_force(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_suspension_force(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}wheel_contact_normal_ws(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_contact_normal_ws(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}wheel_contact_point_ws(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_contact_point_ws(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}wheel_suspension_length(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_suspension_length(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}wheel_hard_point_ws(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_hard_point_ws(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}wheel_is_in_contact(A){return O.rawdynamicraycastvehiclecontroller_wheel_is_in_contact(this.__wbg_ptr,A)!==0}wheel_ground_object(A){try{let Y=O.__wbindgen_add_to_stack_pointer(-16);O.rawdynamicraycastvehiclecontroller_wheel_ground_object(Y,this.__wbg_ptr,A);var Q=NY().getInt32(Y+0,!0),B=NY().getFloat64(Y+8,!0);return Q===0?void 0:B}finally{O.__wbindgen_add_to_stack_pointer(16)}}}var lt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_raweventqueue_free(A>>>0,1));class g_{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,lt.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_raweventqueue_free(A,0)}constructor(A){let Q=O.raweventqueue_new(A);return this.__wbg_ptr=Q>>>0,lt.register(this,this.__wbg_ptr,this),this}drainCollisionEvents(A){try{O.raweventqueue_drainCollisionEvents(this.__wbg_ptr,Z0(A))}finally{VB[iB++]=void 0}}drainContactForceEvents(A){try{O.raweventqueue_drainContactForceEvents(this.__wbg_ptr,Z0(A))}finally{VB[iB++]=void 0}}clear(){O.raweventqueue_clear(this.__wbg_ptr)}}var pt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawgenericjoint_free(A>>>0,1));class uY{static __wrap(A){A>>>=0;let Q=Object.create(uY.prototype);return Q.__wbg_ptr=A,pt.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,pt.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawgenericjoint_free(A,0)}static generic(A,Q,B,Y){c(A,r),c(Q,r),c(B,r);let J=O.rawgenericjoint_generic(A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y);return J===0?void 0:uY.__wrap(J)}static spring(A,Q,B,Y,J){c(Y,r),c(J,r);let C=O.rawgenericjoint_spring(A,Q,B,Y.__wbg_ptr,J.__wbg_ptr);return uY.__wrap(C)}static rope(A,Q,B){c(Q,r),c(B,r);let Y=O.rawgenericjoint_rope(A,Q.__wbg_ptr,B.__wbg_ptr);return uY.__wrap(Y)}static spherical(A,Q){c(A,r),c(Q,r);let B=O.rawgenericjoint_spherical(A.__wbg_ptr,Q.__wbg_ptr);return uY.__wrap(B)}static prismatic(A,Q,B,Y,J,C){c(A,r),c(Q,r),c(B,r);let X=O.rawgenericjoint_prismatic(A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y,J,C);return X===0?void 0:uY.__wrap(X)}static fixed(A,Q,B,Y){c(A,r),c(Q,AB),c(B,r),c(Y,AB);let J=O.rawgenericjoint_fixed(A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr);return uY.__wrap(J)}static revolute(A,Q,B){c(A,r),c(Q,r),c(B,r);let Y=O.rawgenericjoint_revolute(A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr);return Y===0?void 0:uY.__wrap(Y)}}var U_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawimpulsejointset_free(A>>>0,1));class iX{static __wrap(A){A>>>=0;let Q=Object.create(iX.prototype);return Q.__wbg_ptr=A,U_.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,U_.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawimpulsejointset_free(A,0)}jointType(A){return O.rawimpulsejointset_jointType(this.__wbg_ptr,A)}jointBodyHandle1(A){return O.rawimpulsejointset_jointBodyHandle1(this.__wbg_ptr,A)}jointBodyHandle2(A){return O.rawimpulsejointset_jointBodyHandle2(this.__wbg_ptr,A)}jointFrameX1(A){let Q=O.rawimpulsejointset_jointFrameX1(this.__wbg_ptr,A);return AB.__wrap(Q)}jointFrameX2(A){let Q=O.rawimpulsejointset_jointFrameX2(this.__wbg_ptr,A);return AB.__wrap(Q)}jointAnchor1(A){let Q=O.rawimpulsejointset_jointAnchor1(this.__wbg_ptr,A);return r.__wrap(Q)}jointAnchor2(A){let Q=O.rawimpulsejointset_jointAnchor2(this.__wbg_ptr,A);return r.__wrap(Q)}jointSetAnchor1(A,Q){c(Q,r),O.rawimpulsejointset_jointSetAnchor1(this.__wbg_ptr,A,Q.__wbg_ptr)}jointSetAnchor2(A,Q){c(Q,r),O.rawimpulsejointset_jointSetAnchor2(this.__wbg_ptr,A,Q.__wbg_ptr)}jointContactsEnabled(A){return O.rawimpulsejointset_jointContactsEnabled(this.__wbg_ptr,A)!==0}jointSetContactsEnabled(A,Q){O.rawimpulsejointset_jointSetContactsEnabled(this.__wbg_ptr,A,Q)}jointLimitsEnabled(A,Q){return O.rawimpulsejointset_jointLimitsEnabled(this.__wbg_ptr,A,Q)!==0}jointLimitsMin(A,Q){return O.rawimpulsejointset_jointLimitsMin(this.__wbg_ptr,A,Q)}jointLimitsMax(A,Q){return O.rawimpulsejointset_jointLimitsMax(this.__wbg_ptr,A,Q)}jointSetLimits(A,Q,B,Y){O.rawimpulsejointset_jointSetLimits(this.__wbg_ptr,A,Q,B,Y)}jointConfigureMotorModel(A,Q,B){O.rawimpulsejointset_jointConfigureMotorModel(this.__wbg_ptr,A,Q,B)}jointConfigureMotorVelocity(A,Q,B,Y){O.rawimpulsejointset_jointConfigureMotorVelocity(this.__wbg_ptr,A,Q,B,Y)}jointConfigureMotorPosition(A,Q,B,Y,J){O.rawimpulsejointset_jointConfigureMotorPosition(this.__wbg_ptr,A,Q,B,Y,J)}jointConfigureMotor(A,Q,B,Y,J,C){O.rawimpulsejointset_jointConfigureMotor(this.__wbg_ptr,A,Q,B,Y,J,C)}constructor(){let A=O.rawimpulsejointset_new();return this.__wbg_ptr=A>>>0,U_.register(this,this.__wbg_ptr,this),this}createJoint(A,Q,B,Y){return c(A,uY),O.rawimpulsejointset_createJoint(this.__wbg_ptr,A.__wbg_ptr,Q,B,Y)}remove(A,Q){O.rawimpulsejointset_remove(this.__wbg_ptr,A,Q)}len(){return O.rawimpulsejointset_len(this.__wbg_ptr)>>>0}contains(A){return O.rawimpulsejointset_contains(this.__wbg_ptr,A)!==0}forEachJointHandle(A){try{O.rawimpulsejointset_forEachJointHandle(this.__wbg_ptr,Z0(A))}finally{VB[iB++]=void 0}}forEachJointAttachedToRigidBody(A,Q){try{O.rawimpulsejointset_forEachJointAttachedToRigidBody(this.__wbg_ptr,A,Z0(Q))}finally{VB[iB++]=void 0}}}var E_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawintegrationparameters_free(A>>>0,1));class wF{static __wrap(A){A>>>=0;let Q=Object.create(wF.prototype);return Q.__wbg_ptr=A,E_.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,E_.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawintegrationparameters_free(A,0)}constructor(){let A=O.rawintegrationparameters_new();return this.__wbg_ptr=A>>>0,E_.register(this,this.__wbg_ptr,this),this}get dt(){return O.rawintegrationparameters_dt(this.__wbg_ptr)}get contact_erp(){return O.rawintegrationparameters_contact_erp(this.__wbg_ptr)}get normalizedAllowedLinearError(){return O.rawintegrationparameters_normalizedAllowedLinearError(this.__wbg_ptr)}get normalizedPredictionDistance(){return O.rawintegrationparameters_normalizedPredictionDistance(this.__wbg_ptr)}get numSolverIterations(){return O.rawintegrationparameters_numSolverIterations(this.__wbg_ptr)>>>0}get numInternalPgsIterations(){return O.rawdynamicraycastvehiclecontroller_index_up_axis(this.__wbg_ptr)>>>0}get minIslandSize(){return O.rawintegrationparameters_minIslandSize(this.__wbg_ptr)>>>0}get maxCcdSubsteps(){return O.rawintegrationparameters_maxCcdSubsteps(this.__wbg_ptr)>>>0}get lengthUnit(){return O.rawcontactforceevent_total_force_magnitude(this.__wbg_ptr)}set dt(A){O.rawintegrationparameters_set_dt(this.__wbg_ptr,A)}set contact_natural_frequency(A){O.rawintegrationparameters_set_contact_natural_frequency(this.__wbg_ptr,A)}set normalizedAllowedLinearError(A){O.rawintegrationparameters_set_normalizedAllowedLinearError(this.__wbg_ptr,A)}set normalizedPredictionDistance(A){O.rawintegrationparameters_set_normalizedPredictionDistance(this.__wbg_ptr,A)}set numSolverIterations(A){O.rawintegrationparameters_set_numSolverIterations(this.__wbg_ptr,A)}set numInternalPgsIterations(A){O.rawdynamicraycastvehiclecontroller_set_index_up_axis(this.__wbg_ptr,A)}set minIslandSize(A){O.rawintegrationparameters_set_minIslandSize(this.__wbg_ptr,A)}set maxCcdSubsteps(A){O.rawintegrationparameters_set_maxCcdSubsteps(this.__wbg_ptr,A)}set lengthUnit(A){O.rawintegrationparameters_set_lengthUnit(this.__wbg_ptr,A)}}var K_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawislandmanager_free(A>>>0,1));class nX{static __wrap(A){A>>>=0;let Q=Object.create(nX.prototype);return Q.__wbg_ptr=A,K_.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,K_.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawislandmanager_free(A,0)}constructor(){let A=O.rawislandmanager_new();return this.__wbg_ptr=A>>>0,K_.register(this,this.__wbg_ptr,this),this}forEachActiveRigidBodyHandle(A){try{O.rawislandmanager_forEachActiveRigidBodyHandle(this.__wbg_ptr,Z0(A))}finally{VB[iB++]=void 0}}}var it=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawkinematiccharactercontroller_free(A>>>0,1));class $e{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,it.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawkinematiccharactercontroller_free(A,0)}constructor(A){let Q=O.rawkinematiccharactercontroller_new(A);return this.__wbg_ptr=Q>>>0,it.register(this,this.__wbg_ptr,this),this}up(){let A=O.rawcharactercollision_translationDeltaApplied(this.__wbg_ptr);return r.__wrap(A)}setUp(A){c(A,r),O.rawkinematiccharactercontroller_setUp(this.__wbg_ptr,A.__wbg_ptr)}normalNudgeFactor(){return O.rawkinematiccharactercontroller_normalNudgeFactor(this.__wbg_ptr)}setNormalNudgeFactor(A){O.rawkinematiccharactercontroller_setNormalNudgeFactor(this.__wbg_ptr,A)}offset(){return O.rawkinematiccharactercontroller_offset(this.__wbg_ptr)}setOffset(A){O.rawkinematiccharactercontroller_setOffset(this.__wbg_ptr,A)}slideEnabled(){return O.rawkinematiccharactercontroller_slideEnabled(this.__wbg_ptr)!==0}setSlideEnabled(A){O.rawkinematiccharactercontroller_setSlideEnabled(this.__wbg_ptr,A)}autostepMaxHeight(){let A=O.rawkinematiccharactercontroller_autostepMaxHeight(this.__wbg_ptr);return A===4294967297?void 0:A}autostepMinWidth(){let A=O.rawkinematiccharactercontroller_autostepMinWidth(this.__wbg_ptr);return A===4294967297?void 0:A}autostepIncludesDynamicBodies(){let A=O.rawkinematiccharactercontroller_autostepIncludesDynamicBodies(this.__wbg_ptr);return A===16777215?void 0:A!==0}autostepEnabled(){return O.rawkinematiccharactercontroller_autostepEnabled(this.__wbg_ptr)!==0}enableAutostep(A,Q,B){O.rawkinematiccharactercontroller_enableAutostep(this.__wbg_ptr,A,Q,B)}disableAutostep(){O.rawkinematiccharactercontroller_disableAutostep(this.__wbg_ptr)}maxSlopeClimbAngle(){return O.rawkinematiccharactercontroller_maxSlopeClimbAngle(this.__wbg_ptr)}setMaxSlopeClimbAngle(A){O.rawkinematiccharactercontroller_setMaxSlopeClimbAngle(this.__wbg_ptr,A)}minSlopeSlideAngle(){return O.rawkinematiccharactercontroller_minSlopeSlideAngle(this.__wbg_ptr)}setMinSlopeSlideAngle(A){O.rawkinematiccharactercontroller_setMinSlopeSlideAngle(this.__wbg_ptr,A)}snapToGroundDistance(){let A=O.rawkinematiccharactercontroller_snapToGroundDistance(this.__wbg_ptr);return A===4294967297?void 0:A}enableSnapToGround(A){O.rawkinematiccharactercontroller_enableSnapToGround(this.__wbg_ptr,A)}disableSnapToGround(){O.rawkinematiccharactercontroller_disableSnapToGround(this.__wbg_ptr)}snapToGroundEnabled(){return O.rawkinematiccharactercontroller_snapToGroundEnabled(this.__wbg_ptr)!==0}computeColliderMovement(A,Q,B,Y,J,C,X,G,W,F,Z,U){try{c(Q,pX),c(B,LY),c(Y,C0),c(J,T0),c(X,r),O.rawkinematiccharactercontroller_computeColliderMovement(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C,X.__wbg_ptr,G,VQ(W)?4294967297:Math.fround(W),F,VQ(Z)?4294967297:Z>>>0,Z0(U))}finally{VB[iB++]=void 0}}computedMovement(){let A=O.rawkinematiccharactercontroller_computedMovement(this.__wbg_ptr);return r.__wrap(A)}computedGrounded(){return O.rawkinematiccharactercontroller_computedGrounded(this.__wbg_ptr)!==0}numComputedCollisions(){return O.rawkinematiccharactercontroller_numComputedCollisions(this.__wbg_ptr)>>>0}computedCollision(A,Q){return c(Q,S_),O.rawkinematiccharactercontroller_computedCollision(this.__wbg_ptr,A,Q.__wbg_ptr)!==0}}var V_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawmultibodyjointset_free(A>>>0,1));class sX{static __wrap(A){A>>>=0;let Q=Object.create(sX.prototype);return Q.__wbg_ptr=A,V_.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,V_.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawmultibodyjointset_free(A,0)}jointType(A){return O.rawmultibodyjointset_jointType(this.__wbg_ptr,A)}jointFrameX1(A){let Q=O.rawmultibodyjointset_jointFrameX1(this.__wbg_ptr,A);return AB.__wrap(Q)}jointFrameX2(A){let Q=O.rawmultibodyjointset_jointFrameX2(this.__wbg_ptr,A);return AB.__wrap(Q)}jointAnchor1(A){let Q=O.rawmultibodyjointset_jointAnchor1(this.__wbg_ptr,A);return r.__wrap(Q)}jointAnchor2(A){let Q=O.rawmultibodyjointset_jointAnchor2(this.__wbg_ptr,A);return r.__wrap(Q)}jointContactsEnabled(A){return O.rawmultibodyjointset_jointContactsEnabled(this.__wbg_ptr,A)!==0}jointSetContactsEnabled(A,Q){O.rawmultibodyjointset_jointSetContactsEnabled(this.__wbg_ptr,A,Q)}jointLimitsEnabled(A,Q){return O.rawmultibodyjointset_jointLimitsEnabled(this.__wbg_ptr,A,Q)!==0}jointLimitsMin(A,Q){return O.rawmultibodyjointset_jointLimitsMin(this.__wbg_ptr,A,Q)}jointLimitsMax(A,Q){return O.rawmultibodyjointset_jointLimitsMax(this.__wbg_ptr,A,Q)}constructor(){let A=O.rawmultibodyjointset_new();return this.__wbg_ptr=A>>>0,V_.register(this,this.__wbg_ptr,this),this}createJoint(A,Q,B,Y){return c(A,uY),O.rawmultibodyjointset_createJoint(this.__wbg_ptr,A.__wbg_ptr,Q,B,Y)}remove(A,Q){O.rawmultibodyjointset_remove(this.__wbg_ptr,A,Q)}contains(A){return O.rawmultibodyjointset_contains(this.__wbg_ptr,A)!==0}forEachJointHandle(A){try{O.rawmultibodyjointset_forEachJointHandle(this.__wbg_ptr,Z0(A))}finally{VB[iB++]=void 0}}forEachJointAttachedToRigidBody(A,Q){try{O.rawmultibodyjointset_forEachJointAttachedToRigidBody(this.__wbg_ptr,A,Z0(Q))}finally{VB[iB++]=void 0}}}var I_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawnarrowphase_free(A>>>0,1));class LY{static __wrap(A){A>>>=0;let Q=Object.create(LY.prototype);return Q.__wbg_ptr=A,I_.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,I_.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawnarrowphase_free(A,0)}constructor(){let A=O.rawnarrowphase_new();return this.__wbg_ptr=A>>>0,I_.register(this,this.__wbg_ptr,this),this}contact_pairs_with(A,Q){O.rawnarrowphase_contact_pairs_with(this.__wbg_ptr,A,pB(Q))}contact_pair(A,Q){let B=O.rawnarrowphase_contact_pair(this.__wbg_ptr,A,Q);return B===0?void 0:v_.__wrap(B)}intersection_pairs_with(A,Q){O.rawnarrowphase_intersection_pairs_with(this.__wbg_ptr,A,pB(Q))}intersection_pair(A,Q){return O.rawnarrowphase_intersection_pair(this.__wbg_ptr,A,Q)!==0}}var nt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawphysicspipeline_free(A>>>0,1));class Ue{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,nt.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawphysicspipeline_free(A,0)}constructor(){let A=O.rawphysicspipeline_new();return this.__wbg_ptr=A>>>0,nt.register(this,this.__wbg_ptr,this),this}set_profiler_enabled(A){O.rawphysicspipeline_set_profiler_enabled(this.__wbg_ptr,A)}is_profiler_enabled(){return O.rawphysicspipeline_is_profiler_enabled(this.__wbg_ptr)!==0}timing_step(){return O.rawphysicspipeline_timing_step(this.__wbg_ptr)}timing_collision_detection(){return O.rawphysicspipeline_timing_collision_detection(this.__wbg_ptr)}timing_broad_phase(){return O.rawphysicspipeline_timing_broad_phase(this.__wbg_ptr)}timing_narrow_phase(){return O.rawphysicspipeline_timing_narrow_phase(this.__wbg_ptr)}timing_solver(){return O.rawphysicspipeline_timing_solver(this.__wbg_ptr)}timing_velocity_assembly(){return O.rawphysicspipeline_timing_velocity_assembly(this.__wbg_ptr)}timing_velocity_resolution(){return O.rawphysicspipeline_timing_velocity_resolution(this.__wbg_ptr)}timing_velocity_update(){return O.rawphysicspipeline_timing_velocity_update(this.__wbg_ptr)}timing_velocity_writeback(){return O.rawphysicspipeline_timing_velocity_writeback(this.__wbg_ptr)}timing_ccd(){return O.rawphysicspipeline_timing_ccd(this.__wbg_ptr)}timing_ccd_toi_computation(){return O.rawphysicspipeline_timing_ccd_toi_computation(this.__wbg_ptr)}timing_ccd_broad_phase(){return O.rawphysicspipeline_timing_ccd_broad_phase(this.__wbg_ptr)}timing_ccd_narrow_phase(){return O.rawphysicspipeline_timing_ccd_narrow_phase(this.__wbg_ptr)}timing_ccd_solver(){return O.rawphysicspipeline_timing_ccd_solver(this.__wbg_ptr)}timing_island_construction(){return O.rawphysicspipeline_timing_island_construction(this.__wbg_ptr)}timing_user_changes(){return O.rawphysicspipeline_timing_user_changes(this.__wbg_ptr)}step(A,Q,B,Y,J,C,X,G,W,F){c(A,r),c(Q,wF),c(B,nX),c(Y,pX),c(J,LY),c(C,C0),c(X,T0),c(G,iX),c(W,sX),c(F,_M),O.rawphysicspipeline_step(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C.__wbg_ptr,X.__wbg_ptr,G.__wbg_ptr,W.__wbg_ptr,F.__wbg_ptr)}stepWithEvents(A,Q,B,Y,J,C,X,G,W,F,Z,U,$,E){c(A,r),c(Q,wF),c(B,nX),c(Y,pX),c(J,LY),c(C,C0),c(X,T0),c(G,iX),c(W,sX),c(F,_M),c(Z,g_),O.rawphysicspipeline_stepWithEvents(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C.__wbg_ptr,X.__wbg_ptr,G.__wbg_ptr,W.__wbg_ptr,F.__wbg_ptr,Z.__wbg_ptr,pB(U),pB($),pB(E))}}var st=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawpidcontroller_free(A>>>0,1));class Ee{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,st.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawpidcontroller_free(A,0)}constructor(A,Q,B,Y){let J=O.rawpidcontroller_new(A,Q,B,Y);return this.__wbg_ptr=J>>>0,st.register(this,this.__wbg_ptr,this),this}set_kp(A,Q){O.rawpidcontroller_set_kp(this.__wbg_ptr,A,Q)}set_ki(A,Q){O.rawpidcontroller_set_ki(this.__wbg_ptr,A,Q)}set_kd(A,Q){O.rawpidcontroller_set_kd(this.__wbg_ptr,A,Q)}set_axes_mask(A){O.rawpidcontroller_set_axes_mask(this.__wbg_ptr,A)}reset_integrals(){O.rawpidcontroller_reset_integrals(this.__wbg_ptr)}apply_linear_correction(A,Q,B,Y,J){c(Q,C0),c(Y,r),c(J,r),O.rawpidcontroller_apply_linear_correction(this.__wbg_ptr,A,Q.__wbg_ptr,B,Y.__wbg_ptr,J.__wbg_ptr)}apply_angular_correction(A,Q,B,Y,J){c(Q,C0),c(Y,AB),c(J,r),O.rawpidcontroller_apply_angular_correction(this.__wbg_ptr,A,Q.__wbg_ptr,B,Y.__wbg_ptr,J.__wbg_ptr)}linear_correction(A,Q,B,Y,J){c(Q,C0),c(Y,r),c(J,r);let C=O.rawpidcontroller_linear_correction(this.__wbg_ptr,A,Q.__wbg_ptr,B,Y.__wbg_ptr,J.__wbg_ptr);return r.__wrap(C)}angular_correction(A,Q,B,Y,J){c(Q,C0),c(Y,AB),c(J,r);let C=O.rawpidcontroller_angular_correction(this.__wbg_ptr,A,Q.__wbg_ptr,B,Y.__wbg_ptr,J.__wbg_ptr);return r.__wrap(C)}}var rt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawpointcolliderprojection_free(A>>>0,1));class vM{static __wrap(A){A>>>=0;let Q=Object.create(vM.prototype);return Q.__wbg_ptr=A,rt.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,rt.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawpointcolliderprojection_free(A,0)}colliderHandle(){return O.rawpointcolliderprojection_colliderHandle(this.__wbg_ptr)}point(){let A=O.rawpointcolliderprojection_point(this.__wbg_ptr);return r.__wrap(A)}isInside(){return O.rawpointcolliderprojection_isInside(this.__wbg_ptr)!==0}featureType(){return O.rawpointcolliderprojection_featureType(this.__wbg_ptr)}featureId(){let A=O.rawpointcolliderprojection_featureId(this.__wbg_ptr);return A===4294967297?void 0:A}}var at=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawpointprojection_free(A>>>0,1));class pM{static __wrap(A){A>>>=0;let Q=Object.create(pM.prototype);return Q.__wbg_ptr=A,at.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,at.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawpointprojection_free(A,0)}point(){let A=O.rawpointprojection_point(this.__wbg_ptr);return r.__wrap(A)}isInside(){return O.rawpointprojection_isInside(this.__wbg_ptr)!==0}}var ot=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawraycolliderhit_free(A>>>0,1));class h_{static __wrap(A){A>>>=0;let Q=Object.create(h_.prototype);return Q.__wbg_ptr=A,ot.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,ot.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawraycolliderhit_free(A,0)}colliderHandle(){return O.rawcharactercollision_handle(this.__wbg_ptr)}timeOfImpact(){return O.rawcollidershapecasthit_time_of_impact(this.__wbg_ptr)}}var tt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawraycolliderintersection_free(A>>>0,1));class iM{static __wrap(A){A>>>=0;let Q=Object.create(iM.prototype);return Q.__wbg_ptr=A,tt.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,tt.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawraycolliderintersection_free(A,0)}colliderHandle(){return O.rawpointcolliderprojection_colliderHandle(this.__wbg_ptr)}normal(){let A=O.rawcollidershapecasthit_witness1(this.__wbg_ptr);return r.__wrap(A)}time_of_impact(){return O.rawcollidershapecasthit_time_of_impact(this.__wbg_ptr)}featureType(){return O.rawpointcolliderprojection_featureType(this.__wbg_ptr)}featureId(){let A=O.rawpointcolliderprojection_featureId(this.__wbg_ptr);return A===4294967297?void 0:A}}var et=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawrayintersection_free(A>>>0,1));class nM{static __wrap(A){A>>>=0;let Q=Object.create(nM.prototype);return Q.__wbg_ptr=A,et.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,et.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawrayintersection_free(A,0)}normal(){let A=O.rawcollidershapecasthit_witness1(this.__wbg_ptr);return r.__wrap(A)}time_of_impact(){return O.rawcollidershapecasthit_time_of_impact(this.__wbg_ptr)}featureType(){return O.rawpointcolliderprojection_featureType(this.__wbg_ptr)}featureId(){let A=O.rawpointcolliderprojection_featureId(this.__wbg_ptr);return A===4294967297?void 0:A}}var H_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawrigidbodyset_free(A>>>0,1));class C0{static __wrap(A){A>>>=0;let Q=Object.create(C0.prototype);return Q.__wbg_ptr=A,H_.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,H_.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawrigidbodyset_free(A,0)}rbTranslation(A){let Q=O.rawrigidbodyset_rbTranslation(this.__wbg_ptr,A);return r.__wrap(Q)}rbRotation(A){let Q=O.rawrigidbodyset_rbRotation(this.__wbg_ptr,A);return AB.__wrap(Q)}rbSleep(A){O.rawrigidbodyset_rbSleep(this.__wbg_ptr,A)}rbIsSleeping(A){return O.rawrigidbodyset_rbIsSleeping(this.__wbg_ptr,A)!==0}rbIsMoving(A){return O.rawrigidbodyset_rbIsMoving(this.__wbg_ptr,A)!==0}rbNextTranslation(A){let Q=O.rawrigidbodyset_rbNextTranslation(this.__wbg_ptr,A);return r.__wrap(Q)}rbNextRotation(A){let Q=O.rawrigidbodyset_rbNextRotation(this.__wbg_ptr,A);return AB.__wrap(Q)}rbSetTranslation(A,Q,B,Y,J){O.rawrigidbodyset_rbSetTranslation(this.__wbg_ptr,A,Q,B,Y,J)}rbSetRotation(A,Q,B,Y,J,C){O.rawrigidbodyset_rbSetRotation(this.__wbg_ptr,A,Q,B,Y,J,C)}rbSetLinvel(A,Q,B){c(Q,r),O.rawrigidbodyset_rbSetLinvel(this.__wbg_ptr,A,Q.__wbg_ptr,B)}rbSetAngvel(A,Q,B){c(Q,r),O.rawrigidbodyset_rbSetAngvel(this.__wbg_ptr,A,Q.__wbg_ptr,B)}rbSetNextKinematicTranslation(A,Q,B,Y){O.rawrigidbodyset_rbSetNextKinematicTranslation(this.__wbg_ptr,A,Q,B,Y)}rbSetNextKinematicRotation(A,Q,B,Y,J){O.rawrigidbodyset_rbSetNextKinematicRotation(this.__wbg_ptr,A,Q,B,Y,J)}rbRecomputeMassPropertiesFromColliders(A,Q){c(Q,T0),O.rawrigidbodyset_rbRecomputeMassPropertiesFromColliders(this.__wbg_ptr,A,Q.__wbg_ptr)}rbSetAdditionalMass(A,Q,B){O.rawrigidbodyset_rbSetAdditionalMass(this.__wbg_ptr,A,Q,B)}rbSetAdditionalMassProperties(A,Q,B,Y,J,C){c(B,r),c(Y,r),c(J,AB),O.rawrigidbodyset_rbSetAdditionalMassProperties(this.__wbg_ptr,A,Q,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C)}rbLinvel(A){let Q=O.rawrigidbodyset_rbLinvel(this.__wbg_ptr,A);return r.__wrap(Q)}rbAngvel(A){let Q=O.rawrigidbodyset_rbAngvel(this.__wbg_ptr,A);return r.__wrap(Q)}rbVelocityAtPoint(A,Q){c(Q,r);let B=O.rawrigidbodyset_rbVelocityAtPoint(this.__wbg_ptr,A,Q.__wbg_ptr);return r.__wrap(B)}rbLockTranslations(A,Q,B){O.rawrigidbodyset_rbLockTranslations(this.__wbg_ptr,A,Q,B)}rbSetEnabledTranslations(A,Q,B,Y,J){O.rawrigidbodyset_rbSetEnabledTranslations(this.__wbg_ptr,A,Q,B,Y,J)}rbLockRotations(A,Q,B){O.rawrigidbodyset_rbLockRotations(this.__wbg_ptr,A,Q,B)}rbSetEnabledRotations(A,Q,B,Y,J){O.rawrigidbodyset_rbSetEnabledRotations(this.__wbg_ptr,A,Q,B,Y,J)}rbDominanceGroup(A){return O.rawrigidbodyset_rbDominanceGroup(this.__wbg_ptr,A)}rbSetDominanceGroup(A,Q){O.rawrigidbodyset_rbSetDominanceGroup(this.__wbg_ptr,A,Q)}rbEnableCcd(A,Q){O.rawrigidbodyset_rbEnableCcd(this.__wbg_ptr,A,Q)}rbSetSoftCcdPrediction(A,Q){O.rawrigidbodyset_rbSetSoftCcdPrediction(this.__wbg_ptr,A,Q)}rbMass(A){return O.rawrigidbodyset_rbMass(this.__wbg_ptr,A)}rbInvMass(A){return O.rawrigidbodyset_rbInvMass(this.__wbg_ptr,A)}rbEffectiveInvMass(A){let Q=O.rawrigidbodyset_rbEffectiveInvMass(this.__wbg_ptr,A);return r.__wrap(Q)}rbLocalCom(A){let Q=O.rawrigidbodyset_rbLocalCom(this.__wbg_ptr,A);return r.__wrap(Q)}rbWorldCom(A){let Q=O.rawrigidbodyset_rbWorldCom(this.__wbg_ptr,A);return r.__wrap(Q)}rbInvPrincipalInertia(A){let Q=O.rawrigidbodyset_rbInvPrincipalInertia(this.__wbg_ptr,A);return r.__wrap(Q)}rbPrincipalInertiaLocalFrame(A){let Q=O.rawrigidbodyset_rbPrincipalInertiaLocalFrame(this.__wbg_ptr,A);return AB.__wrap(Q)}rbPrincipalInertia(A){let Q=O.rawrigidbodyset_rbPrincipalInertia(this.__wbg_ptr,A);return r.__wrap(Q)}rbEffectiveWorldInvInertia(A){let Q=O.rawrigidbodyset_rbEffectiveWorldInvInertia(this.__wbg_ptr,A);return yM.__wrap(Q)}rbEffectiveAngularInertia(A){let Q=O.rawrigidbodyset_rbEffectiveAngularInertia(this.__wbg_ptr,A);return yM.__wrap(Q)}rbWakeUp(A){O.rawrigidbodyset_rbWakeUp(this.__wbg_ptr,A)}rbIsCcdEnabled(A){return O.rawrigidbodyset_rbIsCcdEnabled(this.__wbg_ptr,A)!==0}rbSoftCcdPrediction(A){return O.rawrigidbodyset_rbSoftCcdPrediction(this.__wbg_ptr,A)}rbNumColliders(A){return O.rawrigidbodyset_rbNumColliders(this.__wbg_ptr,A)>>>0}rbCollider(A,Q){return O.rawrigidbodyset_rbCollider(this.__wbg_ptr,A,Q)}rbBodyType(A){return O.rawrigidbodyset_rbBodyType(this.__wbg_ptr,A)}rbSetBodyType(A,Q,B){O.rawrigidbodyset_rbSetBodyType(this.__wbg_ptr,A,Q,B)}rbIsFixed(A){return O.rawrigidbodyset_rbIsFixed(this.__wbg_ptr,A)!==0}rbIsKinematic(A){return O.rawrigidbodyset_rbIsKinematic(this.__wbg_ptr,A)!==0}rbIsDynamic(A){return O.rawrigidbodyset_rbIsDynamic(this.__wbg_ptr,A)!==0}rbLinearDamping(A){return O.rawrigidbodyset_rbLinearDamping(this.__wbg_ptr,A)}rbAngularDamping(A){return O.rawrigidbodyset_rbAngularDamping(this.__wbg_ptr,A)}rbSetLinearDamping(A,Q){O.rawrigidbodyset_rbSetLinearDamping(this.__wbg_ptr,A,Q)}rbSetAngularDamping(A,Q){O.rawrigidbodyset_rbSetAngularDamping(this.__wbg_ptr,A,Q)}rbSetEnabled(A,Q){O.rawrigidbodyset_rbSetEnabled(this.__wbg_ptr,A,Q)}rbIsEnabled(A){return O.rawrigidbodyset_rbIsEnabled(this.__wbg_ptr,A)!==0}rbGravityScale(A){return O.rawrigidbodyset_rbGravityScale(this.__wbg_ptr,A)}rbSetGravityScale(A,Q,B){O.rawrigidbodyset_rbSetGravityScale(this.__wbg_ptr,A,Q,B)}rbResetForces(A,Q){O.rawrigidbodyset_rbResetForces(this.__wbg_ptr,A,Q)}rbResetTorques(A,Q){O.rawrigidbodyset_rbResetTorques(this.__wbg_ptr,A,Q)}rbAddForce(A,Q,B){c(Q,r),O.rawrigidbodyset_rbAddForce(this.__wbg_ptr,A,Q.__wbg_ptr,B)}rbApplyImpulse(A,Q,B){c(Q,r),O.rawrigidbodyset_rbApplyImpulse(this.__wbg_ptr,A,Q.__wbg_ptr,B)}rbAddTorque(A,Q,B){c(Q,r),O.rawrigidbodyset_rbAddTorque(this.__wbg_ptr,A,Q.__wbg_ptr,B)}rbApplyTorqueImpulse(A,Q,B){c(Q,r),O.rawrigidbodyset_rbApplyTorqueImpulse(this.__wbg_ptr,A,Q.__wbg_ptr,B)}rbAddForceAtPoint(A,Q,B,Y){c(Q,r),c(B,r),O.rawrigidbodyset_rbAddForceAtPoint(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y)}rbApplyImpulseAtPoint(A,Q,B,Y){c(Q,r),c(B,r),O.rawrigidbodyset_rbApplyImpulseAtPoint(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y)}rbAdditionalSolverIterations(A){return O.rawrigidbodyset_rbAdditionalSolverIterations(this.__wbg_ptr,A)>>>0}rbSetAdditionalSolverIterations(A,Q){O.rawrigidbodyset_rbSetAdditionalSolverIterations(this.__wbg_ptr,A,Q)}rbUserData(A){return O.rawrigidbodyset_rbUserData(this.__wbg_ptr,A)>>>0}rbSetUserData(A,Q){O.rawrigidbodyset_rbSetUserData(this.__wbg_ptr,A,Q)}rbUserForce(A){let Q=O.rawrigidbodyset_rbUserForce(this.__wbg_ptr,A);return r.__wrap(Q)}rbUserTorque(A){let Q=O.rawrigidbodyset_rbUserTorque(this.__wbg_ptr,A);return r.__wrap(Q)}constructor(){let A=O.rawrigidbodyset_new();return this.__wbg_ptr=A>>>0,H_.register(this,this.__wbg_ptr,this),this}createRigidBody(A,Q,B,Y,J,C,X,G,W,F,Z,U,$,E,K,I,V,H,D,L,z,M,N,q,w,P){return c(Q,r),c(B,AB),c(X,r),c(G,r),c(W,r),c(F,r),c(Z,AB),O.rawrigidbodyset_createRigidBody(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y,J,C,X.__wbg_ptr,G.__wbg_ptr,W.__wbg_ptr,F.__wbg_ptr,Z.__wbg_ptr,U,$,E,K,I,V,H,D,L,z,M,N,q,w,P)}remove(A,Q,B,Y,J){c(Q,nX),c(B,T0),c(Y,iX),c(J,sX),O.rawrigidbodyset_remove(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr)}len(){return O.rawrigidbodyset_len(this.__wbg_ptr)>>>0}contains(A){return O.rawrigidbodyset_contains(this.__wbg_ptr,A)!==0}forEachRigidBodyHandle(A){try{O.rawrigidbodyset_forEachRigidBodyHandle(this.__wbg_ptr,Z0(A))}finally{VB[iB++]=void 0}}propagateModifiedBodyPositionsToColliders(A){c(A,T0),O.rawrigidbodyset_propagateModifiedBodyPositionsToColliders(this.__wbg_ptr,A.__wbg_ptr)}}var D_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawrotation_free(A>>>0,1));class AB{static __wrap(A){A>>>=0;let Q=Object.create(AB.prototype);return Q.__wbg_ptr=A,D_.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,D_.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawrotation_free(A,0)}constructor(A,Q,B,Y){let J=O.rawrotation_new(A,Q,B,Y);return this.__wbg_ptr=J>>>0,D_.register(this,this.__wbg_ptr,this),this}static identity(){let A=O.rawrotation_identity();return AB.__wrap(A)}get x(){return O.rawintegrationparameters_dt(this.__wbg_ptr)}get y(){return O.rawkinematiccharactercontroller_offset(this.__wbg_ptr)}get z(){return O.rawcollidershapecasthit_time_of_impact(this.__wbg_ptr)}get w(){return O.rawrotation_w(this.__wbg_ptr)}}var Ae=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawsdpmatrix3_free(A>>>0,1));class yM{static __wrap(A){A>>>=0;let Q=Object.create(yM.prototype);return Q.__wbg_ptr=A,Ae.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Ae.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawsdpmatrix3_free(A,0)}elements(){return rV(O.rawsdpmatrix3_elements(this.__wbg_ptr))}}var Qe=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawserializationpipeline_free(A>>>0,1));class Ke{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Qe.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawserializationpipeline_free(A,0)}constructor(){let A=O.rawccdsolver_new();return this.__wbg_ptr=A>>>0,Qe.register(this,this.__wbg_ptr,this),this}serializeAll(A,Q,B,Y,J,C,X,G,W){return c(A,r),c(Q,wF),c(B,nX),c(Y,pX),c(J,LY),c(C,C0),c(X,T0),c(G,iX),c(W,sX),rV(O.rawserializationpipeline_serializeAll(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C.__wbg_ptr,X.__wbg_ptr,G.__wbg_ptr,W.__wbg_ptr))}deserializeAll(A){let Q=O.rawserializationpipeline_deserializeAll(this.__wbg_ptr,pB(A));return Q===0?void 0:y_.__wrap(Q)}}var Be=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawshape_free(A>>>0,1));class UQ{static __wrap(A){A>>>=0;let Q=Object.create(UQ.prototype);return Q.__wbg_ptr=A,Be.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Be.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawshape_free(A,0)}static cuboid(A,Q,B){let Y=O.rawshape_cuboid(A,Q,B);return UQ.__wrap(Y)}static roundCuboid(A,Q,B,Y){let J=O.rawshape_roundCuboid(A,Q,B,Y);return UQ.__wrap(J)}static ball(A){let Q=O.rawshape_ball(A);return UQ.__wrap(Q)}static halfspace(A){c(A,r);let Q=O.rawshape_halfspace(A.__wbg_ptr);return UQ.__wrap(Q)}static capsule(A,Q){let B=O.rawshape_capsule(A,Q);return UQ.__wrap(B)}static cylinder(A,Q){let B=O.rawshape_cylinder(A,Q);return UQ.__wrap(B)}static roundCylinder(A,Q,B){let Y=O.rawshape_roundCylinder(A,Q,B);return UQ.__wrap(Y)}static cone(A,Q){let B=O.rawshape_cone(A,Q);return UQ.__wrap(B)}static roundCone(A,Q,B){let Y=O.rawshape_roundCone(A,Q,B);return UQ.__wrap(Y)}static voxels(A,Q){c(A,r);let B=dV(Q,O.__wbindgen_export_2),Y=lJ,J=O.rawshape_voxels(A.__wbg_ptr,B,Y);return UQ.__wrap(J)}static voxelsFromPoints(A,Q){c(A,r);let B=nG(Q,O.__wbindgen_export_2),Y=lJ,J=O.rawshape_voxelsFromPoints(A.__wbg_ptr,B,Y);return UQ.__wrap(J)}static polyline(A,Q){let B=nG(A,O.__wbindgen_export_2),Y=lJ,J=dV(Q,O.__wbindgen_export_2),C=lJ,X=O.rawshape_polyline(B,Y,J,C);return UQ.__wrap(X)}static trimesh(A,Q,B){let Y=nG(A,O.__wbindgen_export_2),J=lJ,C=dV(Q,O.__wbindgen_export_2),X=lJ,G=O.rawshape_trimesh(Y,J,C,X,B);return G===0?void 0:UQ.__wrap(G)}static heightfield(A,Q,B,Y,J){let C=nG(B,O.__wbindgen_export_2),X=lJ;c(Y,r);let G=O.rawshape_heightfield(A,Q,C,X,Y.__wbg_ptr,J);return UQ.__wrap(G)}static segment(A,Q){c(A,r),c(Q,r);let B=O.rawshape_segment(A.__wbg_ptr,Q.__wbg_ptr);return UQ.__wrap(B)}static triangle(A,Q,B){c(A,r),c(Q,r),c(B,r);let Y=O.rawshape_triangle(A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr);return UQ.__wrap(Y)}static roundTriangle(A,Q,B,Y){c(A,r),c(Q,r),c(B,r);let J=O.rawshape_roundTriangle(A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y);return UQ.__wrap(J)}static convexHull(A){let Q=nG(A,O.__wbindgen_export_2),B=lJ,Y=O.rawshape_convexHull(Q,B);return Y===0?void 0:UQ.__wrap(Y)}static roundConvexHull(A,Q){let B=nG(A,O.__wbindgen_export_2),Y=lJ,J=O.rawshape_roundConvexHull(B,Y,Q);return J===0?void 0:UQ.__wrap(J)}static convexMesh(A,Q){let B=nG(A,O.__wbindgen_export_2),Y=lJ,J=dV(Q,O.__wbindgen_export_2),C=lJ,X=O.rawshape_convexMesh(B,Y,J,C);return X===0?void 0:UQ.__wrap(X)}static roundConvexMesh(A,Q,B){let Y=nG(A,O.__wbindgen_export_2),J=lJ,C=dV(Q,O.__wbindgen_export_2),X=lJ,G=O.rawshape_roundConvexMesh(Y,J,C,X,B);return G===0?void 0:UQ.__wrap(G)}castShape(A,Q,B,Y,J,C,X,G,W,F){c(A,r),c(Q,AB),c(B,r),c(Y,UQ),c(J,r),c(C,AB),c(X,r);let Z=O.rawshape_castShape(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C.__wbg_ptr,X.__wbg_ptr,G,W,F);return Z===0?void 0:sM.__wrap(Z)}intersectsShape(A,Q,B,Y,J){return c(A,r),c(Q,AB),c(B,UQ),c(Y,r),c(J,AB),O.rawshape_intersectsShape(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr)!==0}contactShape(A,Q,B,Y,J,C){c(A,r),c(Q,AB),c(B,UQ),c(Y,r),c(J,AB);let X=O.rawshape_contactShape(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C);return X===0?void 0:aV.__wrap(X)}containsPoint(A,Q,B){return c(A,r),c(Q,AB),c(B,r),O.rawshape_containsPoint(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr)!==0}projectPoint(A,Q,B,Y){c(A,r),c(Q,AB),c(B,r);let J=O.rawshape_projectPoint(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y);return pM.__wrap(J)}intersectsRay(A,Q,B,Y,J){return c(A,r),c(Q,AB),c(B,r),c(Y,r),O.rawshape_intersectsRay(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J)!==0}castRay(A,Q,B,Y,J,C){return c(A,r),c(Q,AB),c(B,r),c(Y,r),O.rawshape_castRay(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J,C)}castRayAndGetNormal(A,Q,B,Y,J,C){c(A,r),c(Q,AB),c(B,r),c(Y,r);let X=O.rawshape_castRayAndGetNormal(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J,C);return X===0?void 0:nM.__wrap(X)}}var Ye=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawshapecasthit_free(A>>>0,1));class sM{static __wrap(A){A>>>=0;let Q=Object.create(sM.prototype);return Q.__wbg_ptr=A,Ye.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Ye.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawshapecasthit_free(A,0)}time_of_impact(){return O.rawintegrationparameters_dt(this.__wbg_ptr)}witness1(){let A=O.rawshapecasthit_witness1(this.__wbg_ptr);return r.__wrap(A)}witness2(){let A=O.rawcontactforceevent_total_force(this.__wbg_ptr);return r.__wrap(A)}normal1(){let A=O.rawshapecasthit_normal1(this.__wbg_ptr);return r.__wrap(A)}normal2(){let A=O.rawshapecasthit_normal2(this.__wbg_ptr);return r.__wrap(A)}}var Je=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawshapecontact_free(A>>>0,1));class aV{static __wrap(A){A>>>=0;let Q=Object.create(aV.prototype);return Q.__wbg_ptr=A,Je.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Je.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawshapecontact_free(A,0)}distance(){return O.rawkinematiccharactercontroller_maxSlopeClimbAngle(this.__wbg_ptr)}point1(){let A=O.rawpointprojection_point(this.__wbg_ptr);return r.__wrap(A)}point2(){let A=O.rawcollidershapecasthit_witness1(this.__wbg_ptr);return r.__wrap(A)}normal1(){let A=O.rawcollidershapecasthit_witness2(this.__wbg_ptr);return r.__wrap(A)}normal2(){let A=O.rawcharactercollision_translationDeltaApplied(this.__wbg_ptr);return r.__wrap(A)}}var N_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawvector_free(A>>>0,1));class r{static __wrap(A){A>>>=0;let Q=Object.create(r.prototype);return Q.__wbg_ptr=A,N_.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,N_.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawvector_free(A,0)}static zero(){let A=O.rawvector_zero();return r.__wrap(A)}constructor(A,Q,B){let Y=O.rawvector_new(A,Q,B);return this.__wbg_ptr=Y>>>0,N_.register(this,this.__wbg_ptr,this),this}get x(){return O.rawintegrationparameters_dt(this.__wbg_ptr)}set x(A){O.rawintegrationparameters_set_dt(this.__wbg_ptr,A)}get y(){return O.rawkinematiccharactercontroller_offset(this.__wbg_ptr)}set y(A){O.rawvector_set_y(this.__wbg_ptr,A)}get z(){return O.rawcollidershapecasthit_time_of_impact(this.__wbg_ptr)}set z(A){O.rawvector_set_z(this.__wbg_ptr,A)}xyz(){let A=O.rawvector_xyz(this.__wbg_ptr);return r.__wrap(A)}yxz(){let A=O.rawvector_yxz(this.__wbg_ptr);return r.__wrap(A)}zxy(){let A=O.rawvector_zxy(this.__wbg_ptr);return r.__wrap(A)}xzy(){let A=O.rawvector_xzy(this.__wbg_ptr);return r.__wrap(A)}yzx(){let A=O.rawvector_yzx(this.__wbg_ptr);return r.__wrap(A)}zyx(){let A=O.rawvector_zyx(this.__wbg_ptr);return r.__wrap(A)}}async function Ve(A){if(O!==void 0)return O;A!==void 0&&(Object.getPrototypeOf(A)===Object.prototype?{module_or_path:A}=A:console.warn("using deprecated parameters for the initialization function; pass a single object instead")),A===void 0&&(A=new URL("rapier_wasm3d_bg.wasm",""));let Q=function(){let J={wbg:{}};return J.wbg.__wbg_bind_c8359b1cba058168=function(C,X,G,W){return pB($B(C).bind($B(X),$B(G),$B(W)))},J.wbg.__wbg_buffer_609cc3eee51ed158=function(C){return pB($B(C).buffer)},J.wbg.__wbg_call_672a4d21634d4a24=function(){return kM(function(C,X){return pB($B(C).call($B(X)))},arguments)},J.wbg.__wbg_call_7cccdd69e0791ae2=function(){return kM(function(C,X,G){return pB($B(C).call($B(X),$B(G)))},arguments)},J.wbg.__wbg_call_833bed5770ea2041=function(){return kM(function(C,X,G,W){return pB($B(C).call($B(X),$B(G),$B(W)))},arguments)},J.wbg.__wbg_call_b8adc8b1d0a0d8eb=function(){return kM(function(C,X,G,W,F){return pB($B(C).call($B(X),$B(G),$B(W),$B(F)))},arguments)},J.wbg.__wbg_length_3b4f022188ae8db6=function(C){return $B(C).length},J.wbg.__wbg_length_a446193dc22c12f8=function(C){return $B(C).length},J.wbg.__wbg_new_a12002a7f91c75be=function(C){return pB(new Uint8Array($B(C)))},J.wbg.__wbg_newnoargs_105ed471475aaf50=function(C,X){return pB(Function(L_(C,X)))},J.wbg.__wbg_newwithbyteoffsetandlength_d97e637ebe145a9a=function(C,X,G){return pB(new Uint8Array($B(C),X>>>0,G>>>0))},J.wbg.__wbg_newwithbyteoffsetandlength_e6b7e69acd4c7354=function(C,X,G){return pB(new Float32Array($B(C),X>>>0,G>>>0))},J.wbg.__wbg_newwithlength_5a5efe313cfd59f1=function(C){return pB(new Float32Array(C>>>0))},J.wbg.__wbg_now_2c95c9de01293173=function(C){return $B(C).now()},J.wbg.__wbg_performance_7a3ffd0b17f663ad=function(C){return pB($B(C).performance)},J.wbg.__wbg_rawcontactforceevent_new=function(C){return pB(k_.__wrap(C))},J.wbg.__wbg_rawraycolliderintersection_new=function(C){return pB(iM.__wrap(C))},J.wbg.__wbg_set_10bad9bee0e9c58b=function(C,X,G){$B(C).set($B(X),G>>>0)},J.wbg.__wbg_set_65595bdd868b3009=function(C,X,G){$B(C).set($B(X),G>>>0)},J.wbg.__wbg_static_accessor_GLOBAL_88a902d13a557d07=function(){let C=typeof global>"u"?null:global;return VQ(C)?0:pB(C)},J.wbg.__wbg_static_accessor_GLOBAL_THIS_56578be7e9f832b0=function(){let C=typeof globalThis>"u"?null:globalThis;return VQ(C)?0:pB(C)},J.wbg.__wbg_static_accessor_SELF_37c5d418e4bf5819=function(){let C=typeof self>"u"?null:self;return VQ(C)?0:pB(C)},J.wbg.__wbg_static_accessor_WINDOW_5de37043a91a9c40=function(){let C=typeof window>"u"?null:window;return VQ(C)?0:pB(C)},J.wbg.__wbindgen_boolean_get=function(C){let X=$B(C);return typeof X=="boolean"?X?1:0:2},J.wbg.__wbindgen_is_function=function(C){return typeof $B(C)=="function"},J.wbg.__wbindgen_is_undefined=function(C){return $B(C)===void 0},J.wbg.__wbindgen_memory=function(){return pB(O.memory)},J.wbg.__wbindgen_number_get=function(C,X){let G=$B(X),W=typeof G=="number"?G:void 0;NY().setFloat64(C+8,VQ(W)?0:W,!0),NY().setInt32(C+0,!VQ(W),!0)},J.wbg.__wbindgen_number_new=function(C){return pB(C)},J.wbg.__wbindgen_object_clone_ref=function(C){return pB($B(C))},J.wbg.__wbindgen_object_drop_ref=function(C){rV(C)},J.wbg.__wbindgen_throw=function(C,X){throw Error(L_(C,X))},J}();(typeof A=="string"||typeof Request=="function"&&A instanceof Request||typeof URL=="function"&&A instanceof URL)&&(A=fetch(A));let{instance:B,module:Y}=await async function(J,C){if(typeof Response=="function"&&J instanceof Response){if(typeof WebAssembly.instantiateStreaming=="function")try{return await WebAssembly.instantiateStreaming(J,C)}catch(G){if(J.headers.get("Content-Type")=="application/wasm")throw G;console.warn("`WebAssembly.instantiateStreaming` failed because your server does not serve Wasm with `application/wasm` MIME type. Falling back to `WebAssembly.instantiate` which is slower. Original error:\n",G)}let X=await J.arrayBuffer();return await WebAssembly.instantiate(X,C)}{let X=await WebAssembly.instantiate(J,C);return X instanceof WebAssembly.Instance?{instance:X,module:J}:X}}(await A,Q);return function(J,C){return O=J.exports,Ve.__wbindgen_wasm_module=C,zF=null,pV=null,lV=null,iV=null,cV=null,O}(B,Y)}class x_{constructor(A,Q,B){this.x=A,this.y=Q,this.z=B}}class a{static new(A,Q,B){return new x_(A,Q,B)}static intoRaw(A){return new r(A.x,A.y,A.z)}static zeros(){return a.new(0,0,0)}static fromRaw(A){if(!A)return null;let Q=a.new(A.x,A.y,A.z);return A.free(),Q}static copy(A,Q){A.x=Q.x,A.y=Q.y,A.z=Q.z}}class gM{constructor(A,Q,B,Y){this.x=A,this.y=Q,this.z=B,this.w=Y}}class hQ{static identity(){return new gM(0,0,0,1)}static fromRaw(A){if(!A)return null;let Q=new gM(A.x,A.y,A.z,A.w);return A.free(),Q}static intoRaw(A){return new AB(A.x,A.y,A.z,A.w)}static copy(A,Q){A.x=Q.x,A.y=Q.y,A.z=Q.z,A.w=Q.w}}class f_{constructor(A){this.elements=A}get m11(){return this.elements[0]}get m12(){return this.elements[1]}get m21(){return this.m12}get m13(){return this.elements[2]}get m31(){return this.m13}get m22(){return this.elements[3]}get m23(){return this.elements[4]}get m32(){return this.m23}get m33(){return this.elements[5]}}class hM{static fromRaw(A){let Q=new f_(A.elements());return A.free(),Q}}var HC,BJ,q_,M_,oV,N4,YY,z_,R_,w_,xM,fM,j_,O_,bM,RF;(function(A){A[A.Dynamic=0]="Dynamic",A[A.Fixed=1]="Fixed",A[A.KinematicPositionBased=2]="KinematicPositionBased",A[A.KinematicVelocityBased=3]="KinematicVelocityBased"})(HC||(HC={}));class mM{constructor(A,Q,B){this.rawSet=A,this.colliderSet=Q,this.handle=B}finalizeDeserialization(A){this.colliderSet=A}isValid(){return this.rawSet.contains(this.handle)}lockTranslations(A,Q){return this.rawSet.rbLockTranslations(this.handle,A,Q)}lockRotations(A,Q){return this.rawSet.rbLockRotations(this.handle,A,Q)}setEnabledTranslations(A,Q,B,Y){return this.rawSet.rbSetEnabledTranslations(this.handle,A,Q,B,Y)}restrictTranslations(A,Q,B,Y){this.setEnabledTranslations(A,Q,B,Y)}setEnabledRotations(A,Q,B,Y){return this.rawSet.rbSetEnabledRotations(this.handle,A,Q,B,Y)}restrictRotations(A,Q,B,Y){this.setEnabledRotations(A,Q,B,Y)}dominanceGroup(){return this.rawSet.rbDominanceGroup(this.handle)}setDominanceGroup(A){this.rawSet.rbSetDominanceGroup(this.handle,A)}additionalSolverIterations(){return this.rawSet.rbAdditionalSolverIterations(this.handle)}setAdditionalSolverIterations(A){this.rawSet.rbSetAdditionalSolverIterations(this.handle,A)}enableCcd(A){this.rawSet.rbEnableCcd(this.handle,A)}setSoftCcdPrediction(A){this.rawSet.rbSetSoftCcdPrediction(this.handle,A)}softCcdPrediction(){return this.rawSet.rbSoftCcdPrediction(this.handle)}translation(){let A=this.rawSet.rbTranslation(this.handle);return a.fromRaw(A)}rotation(){let A=this.rawSet.rbRotation(this.handle);return hQ.fromRaw(A)}nextTranslation(){let A=this.rawSet.rbNextTranslation(this.handle);return a.fromRaw(A)}nextRotation(){let A=this.rawSet.rbNextRotation(this.handle);return hQ.fromRaw(A)}setTranslation(A,Q){this.rawSet.rbSetTranslation(this.handle,A.x,A.y,A.z,Q)}setLinvel(A,Q){let B=a.intoRaw(A);this.rawSet.rbSetLinvel(this.handle,B,Q),B.free()}gravityScale(){return this.rawSet.rbGravityScale(this.handle)}setGravityScale(A,Q){this.rawSet.rbSetGravityScale(this.handle,A,Q)}setRotation(A,Q){this.rawSet.rbSetRotation(this.handle,A.x,A.y,A.z,A.w,Q)}setAngvel(A,Q){let B=a.intoRaw(A);this.rawSet.rbSetAngvel(this.handle,B,Q),B.free()}setNextKinematicTranslation(A){this.rawSet.rbSetNextKinematicTranslation(this.handle,A.x,A.y,A.z)}setNextKinematicRotation(A){this.rawSet.rbSetNextKinematicRotation(this.handle,A.x,A.y,A.z,A.w)}linvel(){return a.fromRaw(this.rawSet.rbLinvel(this.handle))}velocityAtPoint(A){let Q=a.intoRaw(A),B=a.fromRaw(this.rawSet.rbVelocityAtPoint(this.handle,Q));return Q.free(),B}angvel(){return a.fromRaw(this.rawSet.rbAngvel(this.handle))}mass(){return this.rawSet.rbMass(this.handle)}effectiveInvMass(){return a.fromRaw(this.rawSet.rbEffectiveInvMass(this.handle))}invMass(){return this.rawSet.rbInvMass(this.handle)}localCom(){return a.fromRaw(this.rawSet.rbLocalCom(this.handle))}worldCom(){return a.fromRaw(this.rawSet.rbWorldCom(this.handle))}invPrincipalInertia(){return a.fromRaw(this.rawSet.rbInvPrincipalInertia(this.handle))}principalInertia(){return a.fromRaw(this.rawSet.rbPrincipalInertia(this.handle))}principalInertiaLocalFrame(){return hQ.fromRaw(this.rawSet.rbPrincipalInertiaLocalFrame(this.handle))}effectiveWorldInvInertia(){return hM.fromRaw(this.rawSet.rbEffectiveWorldInvInertia(this.handle))}effectiveAngularInertia(){return hM.fromRaw(this.rawSet.rbEffectiveAngularInertia(this.handle))}sleep(){this.rawSet.rbSleep(this.handle)}wakeUp(){this.rawSet.rbWakeUp(this.handle)}isCcdEnabled(){return this.rawSet.rbIsCcdEnabled(this.handle)}numColliders(){return this.rawSet.rbNumColliders(this.handle)}collider(A){return this.colliderSet.get(this.rawSet.rbCollider(this.handle,A))}setEnabled(A){this.rawSet.rbSetEnabled(this.handle,A)}isEnabled(){return this.rawSet.rbIsEnabled(this.handle)}bodyType(){return this.rawSet.rbBodyType(this.handle)}setBodyType(A,Q){return this.rawSet.rbSetBodyType(this.handle,A,Q)}isSleeping(){return this.rawSet.rbIsSleeping(this.handle)}isMoving(){return this.rawSet.rbIsMoving(this.handle)}isFixed(){return this.rawSet.rbIsFixed(this.handle)}isKinematic(){return this.rawSet.rbIsKinematic(this.handle)}isDynamic(){return this.rawSet.rbIsDynamic(this.handle)}linearDamping(){return this.rawSet.rbLinearDamping(this.handle)}angularDamping(){return this.rawSet.rbAngularDamping(this.handle)}setLinearDamping(A){this.rawSet.rbSetLinearDamping(this.handle,A)}recomputeMassPropertiesFromColliders(){this.rawSet.rbRecomputeMassPropertiesFromColliders(this.handle,this.colliderSet.raw)}setAdditionalMass(A,Q){this.rawSet.rbSetAdditionalMass(this.handle,A,Q)}setAdditionalMassProperties(A,Q,B,Y,J){let C=a.intoRaw(Q),X=a.intoRaw(B),G=hQ.intoRaw(Y);this.rawSet.rbSetAdditionalMassProperties(this.handle,A,C,X,G,J),C.free(),X.free(),G.free()}setAngularDamping(A){this.rawSet.rbSetAngularDamping(this.handle,A)}resetForces(A){this.rawSet.rbResetForces(this.handle,A)}resetTorques(A){this.rawSet.rbResetTorques(this.handle,A)}addForce(A,Q){let B=a.intoRaw(A);this.rawSet.rbAddForce(this.handle,B,Q),B.free()}applyImpulse(A,Q){let B=a.intoRaw(A);this.rawSet.rbApplyImpulse(this.handle,B,Q),B.free()}addTorque(A,Q){let B=a.intoRaw(A);this.rawSet.rbAddTorque(this.handle,B,Q),B.free()}applyTorqueImpulse(A,Q){let B=a.intoRaw(A);this.rawSet.rbApplyTorqueImpulse(this.handle,B,Q),B.free()}addForceAtPoint(A,Q,B){let Y=a.intoRaw(A),J=a.intoRaw(Q);this.rawSet.rbAddForceAtPoint(this.handle,Y,J,B),Y.free(),J.free()}applyImpulseAtPoint(A,Q,B){let Y=a.intoRaw(A),J=a.intoRaw(Q);this.rawSet.rbApplyImpulseAtPoint(this.handle,Y,J,B),Y.free(),J.free()}userForce(){return a.fromRaw(this.rawSet.rbUserForce(this.handle))}userTorque(){return a.fromRaw(this.rawSet.rbUserTorque(this.handle))}}class w1{constructor(A){this.enabled=!0,this.status=A,this.translation=a.zeros(),this.rotation=hQ.identity(),this.gravityScale=1,this.linvel=a.zeros(),this.mass=0,this.massOnly=!1,this.centerOfMass=a.zeros(),this.translationsEnabledX=!0,this.translationsEnabledY=!0,this.angvel=a.zeros(),this.principalAngularInertia=a.zeros(),this.angularInertiaLocalFrame=hQ.identity(),this.translationsEnabledZ=!0,this.rotationsEnabledX=!0,this.rotationsEnabledY=!0,this.rotationsEnabledZ=!0,this.linearDamping=0,this.angularDamping=0,this.canSleep=!0,this.sleeping=!1,this.ccdEnabled=!1,this.softCcdPrediction=0,this.dominanceGroup=0,this.additionalSolverIterations=0}static dynamic(){return new w1(HC.Dynamic)}static kinematicPositionBased(){return new w1(HC.KinematicPositionBased)}static kinematicVelocityBased(){return new w1(HC.KinematicVelocityBased)}static fixed(){return new w1(HC.Fixed)}static newDynamic(){return new w1(HC.Dynamic)}static newKinematicPositionBased(){return new w1(HC.KinematicPositionBased)}static newKinematicVelocityBased(){return new w1(HC.KinematicVelocityBased)}static newStatic(){return new w1(HC.Fixed)}setDominanceGroup(A){return this.dominanceGroup=A,this}setAdditionalSolverIterations(A){return this.additionalSolverIterations=A,this}setEnabled(A){return this.enabled=A,this}setTranslation(A,Q,B){if(typeof A!="number"||typeof Q!="number"||typeof B!="number")throw TypeError("The translation components must be numbers.");return this.translation={x:A,y:Q,z:B},this}setRotation(A){return hQ.copy(this.rotation,A),this}setGravityScale(A){return this.gravityScale=A,this}setAdditionalMass(A){return this.mass=A,this.massOnly=!0,this}setLinvel(A,Q,B){if(typeof A!="number"||typeof Q!="number"||typeof B!="number")throw TypeError("The linvel components must be numbers.");return this.linvel={x:A,y:Q,z:B},this}setAngvel(A){return a.copy(this.angvel,A),this}setAdditionalMassProperties(A,Q,B,Y){return this.mass=A,a.copy(this.centerOfMass,Q),a.copy(this.principalAngularInertia,B),hQ.copy(this.angularInertiaLocalFrame,Y),this.massOnly=!1,this}enabledTranslations(A,Q,B){return this.translationsEnabledX=A,this.translationsEnabledY=Q,this.translationsEnabledZ=B,this}restrictTranslations(A,Q,B){return this.enabledTranslations(A,Q,B)}lockTranslations(){return this.enabledTranslations(!1,!1,!1)}enabledRotations(A,Q,B){return this.rotationsEnabledX=A,this.rotationsEnabledY=Q,this.rotationsEnabledZ=B,this}restrictRotations(A,Q,B){return this.enabledRotations(A,Q,B)}lockRotations(){return this.restrictRotations(!1,!1,!1)}setLinearDamping(A){return this.linearDamping=A,this}setAngularDamping(A){return this.angularDamping=A,this}setCanSleep(A){return this.canSleep=A,this}setSleeping(A){return this.sleeping=A,this}setCcdEnabled(A){return this.ccdEnabled=A,this}setSoftCcdPrediction(A){return this.softCcdPrediction=A,this}setUserData(A){return this.userData=A,this}}class BI{constructor(){this.fconv=new Float64Array(1),this.uconv=new Uint32Array(this.fconv.buffer),this.data=[],this.size=0}set(A,Q){let B=this.index(A);for(;this.data.length<=B;)this.data.push(null);this.data[B]==null&&(this.size+=1),this.data[B]=Q}len(){return this.size}delete(A){let Q=this.index(A);QA!=null)}index(A){return this.fconv[0]=A,this.uconv[0]}}class b_{constructor(A){this.raw=A||new C0,this.map=new BI,A&&A.forEachRigidBodyHandle((Q)=>{this.map.set(Q,new mM(A,null,Q))})}free(){this.raw&&this.raw.free(),this.raw=void 0,this.map&&this.map.clear(),this.map=void 0}finalizeDeserialization(A){this.map.forEach((Q)=>Q.finalizeDeserialization(A))}createRigidBody(A,Q){let B=a.intoRaw(Q.translation),Y=hQ.intoRaw(Q.rotation),J=a.intoRaw(Q.linvel),C=a.intoRaw(Q.centerOfMass),X=a.intoRaw(Q.angvel),G=a.intoRaw(Q.principalAngularInertia),W=hQ.intoRaw(Q.angularInertiaLocalFrame),F=this.raw.createRigidBody(Q.enabled,B,Y,Q.gravityScale,Q.mass,Q.massOnly,C,J,X,G,W,Q.translationsEnabledX,Q.translationsEnabledY,Q.translationsEnabledZ,Q.rotationsEnabledX,Q.rotationsEnabledY,Q.rotationsEnabledZ,Q.linearDamping,Q.angularDamping,Q.status,Q.canSleep,Q.sleeping,Q.softCcdPrediction,Q.ccdEnabled,Q.dominanceGroup,Q.additionalSolverIterations);B.free(),Y.free(),J.free(),C.free(),X.free(),G.free(),W.free();let Z=new mM(this.raw,A,F);return Z.userData=Q.userData,this.map.set(F,Z),Z}remove(A,Q,B,Y,J){for(let C=0;CY.unmap(C)),J.forEachJointHandleAttachedToRigidBody(A,(C)=>J.unmap(C)),this.raw.remove(A,Q.raw,B.raw,Y.raw,J.raw),this.map.delete(A)}len(){return this.map.len()}contains(A){return this.get(A)!=null}get(A){return this.map.get(A)}forEach(A){this.map.forEach(A)}forEachActiveRigidBody(A,Q){A.forEachActiveRigidBodyHandle((B)=>{Q(this.get(B))})}getAll(){return this.map.getAll()}}class m_{constructor(A){this.raw=A||new wF}free(){this.raw&&this.raw.free(),this.raw=void 0}get dt(){return this.raw.dt}get contact_erp(){return this.raw.contact_erp}get lengthUnit(){return this.raw.lengthUnit}get normalizedAllowedLinearError(){return this.raw.normalizedAllowedLinearError}get normalizedPredictionDistance(){return this.raw.normalizedPredictionDistance}get numSolverIterations(){return this.raw.numSolverIterations}get numInternalPgsIterations(){return this.raw.numInternalPgsIterations}get minIslandSize(){return this.raw.minIslandSize}get maxCcdSubsteps(){return this.raw.maxCcdSubsteps}set dt(A){this.raw.dt=A}set contact_natural_frequency(A){this.raw.contact_natural_frequency=A}set lengthUnit(A){this.raw.lengthUnit=A}set normalizedAllowedLinearError(A){this.raw.normalizedAllowedLinearError=A}set normalizedPredictionDistance(A){this.raw.normalizedPredictionDistance=A}set numSolverIterations(A){this.raw.numSolverIterations=A}set numInternalPgsIterations(A){this.raw.numInternalPgsIterations=A}set minIslandSize(A){this.raw.minIslandSize=A}set maxCcdSubsteps(A){this.raw.maxCcdSubsteps=A}}(function(A){A[A.Revolute=0]="Revolute",A[A.Fixed=1]="Fixed",A[A.Prismatic=2]="Prismatic",A[A.Rope=3]="Rope",A[A.Spring=4]="Spring",A[A.Spherical=5]="Spherical",A[A.Generic=6]="Generic"})(BJ||(BJ={})),function(A){A[A.AccelerationBased=0]="AccelerationBased",A[A.ForceBased=1]="ForceBased"}(q_||(q_={})),function(A){A[A.LinX=1]="LinX",A[A.LinY=2]="LinY",A[A.LinZ=4]="LinZ",A[A.AngX=8]="AngX",A[A.AngY=16]="AngY",A[A.AngZ=32]="AngZ"}(M_||(M_={}));class NC{constructor(A,Q,B){this.rawSet=A,this.bodySet=Q,this.handle=B}static newTyped(A,Q,B){switch(A.jointType(B)){case DC.Revolute:return new p_(A,Q,B);case DC.Prismatic:return new l_(A,Q,B);case DC.Fixed:return new u_(A,Q,B);case DC.Spring:return new c_(A,Q,B);case DC.Rope:return new d_(A,Q,B);case DC.Spherical:return new n_(A,Q,B);case DC.Generic:return new i_(A,Q,B);default:return new NC(A,Q,B)}}finalizeDeserialization(A){this.bodySet=A}isValid(){return this.rawSet.contains(this.handle)}body1(){return this.bodySet.get(this.rawSet.jointBodyHandle1(this.handle))}body2(){return this.bodySet.get(this.rawSet.jointBodyHandle2(this.handle))}type(){return this.rawSet.jointType(this.handle)}frameX1(){return hQ.fromRaw(this.rawSet.jointFrameX1(this.handle))}frameX2(){return hQ.fromRaw(this.rawSet.jointFrameX2(this.handle))}anchor1(){return a.fromRaw(this.rawSet.jointAnchor1(this.handle))}anchor2(){return a.fromRaw(this.rawSet.jointAnchor2(this.handle))}setAnchor1(A){let Q=a.intoRaw(A);this.rawSet.jointSetAnchor1(this.handle,Q),Q.free()}setAnchor2(A){let Q=a.intoRaw(A);this.rawSet.jointSetAnchor2(this.handle,Q),Q.free()}setContactsEnabled(A){this.rawSet.jointSetContactsEnabled(this.handle,A)}contactsEnabled(){return this.rawSet.jointContactsEnabled(this.handle)}}class rM extends NC{limitsEnabled(){return this.rawSet.jointLimitsEnabled(this.handle,this.rawAxis())}limitsMin(){return this.rawSet.jointLimitsMin(this.handle,this.rawAxis())}limitsMax(){return this.rawSet.jointLimitsMax(this.handle,this.rawAxis())}setLimits(A,Q){this.rawSet.jointSetLimits(this.handle,this.rawAxis(),A,Q)}configureMotorModel(A){this.rawSet.jointConfigureMotorModel(this.handle,this.rawAxis(),A)}configureMotorVelocity(A,Q){this.rawSet.jointConfigureMotorVelocity(this.handle,this.rawAxis(),A,Q)}configureMotorPosition(A,Q,B){this.rawSet.jointConfigureMotorPosition(this.handle,this.rawAxis(),A,Q,B)}configureMotor(A,Q,B,Y){this.rawSet.jointConfigureMotor(this.handle,this.rawAxis(),A,Q,B,Y)}}class u_ extends NC{}class d_ extends NC{}class c_ extends NC{}class l_ extends rM{rawAxis(){return cM.LinX}}class p_ extends rM{rawAxis(){return cM.AngX}}class i_ extends NC{}class n_ extends NC{}class lX{constructor(){}static fixed(A,Q,B,Y){let J=new lX;return J.anchor1=A,J.anchor2=B,J.frame1=Q,J.frame2=Y,J.jointType=BJ.Fixed,J}static spring(A,Q,B,Y,J){let C=new lX;return C.anchor1=Y,C.anchor2=J,C.length=A,C.stiffness=Q,C.damping=B,C.jointType=BJ.Spring,C}static rope(A,Q,B){let Y=new lX;return Y.anchor1=Q,Y.anchor2=B,Y.length=A,Y.jointType=BJ.Rope,Y}static generic(A,Q,B,Y){let J=new lX;return J.anchor1=A,J.anchor2=Q,J.axis=B,J.axesMask=Y,J.jointType=BJ.Generic,J}static spherical(A,Q){let B=new lX;return B.anchor1=A,B.anchor2=Q,B.jointType=BJ.Spherical,B}static prismatic(A,Q,B){let Y=new lX;return Y.anchor1=A,Y.anchor2=Q,Y.axis=B,Y.jointType=BJ.Prismatic,Y}static revolute(A,Q,B){let Y=new lX;return Y.anchor1=A,Y.anchor2=Q,Y.axis=B,Y.jointType=BJ.Revolute,Y}intoRaw(){let A,Q,B=a.intoRaw(this.anchor1),Y=a.intoRaw(this.anchor2),J=!1,C=0,X=0;switch(this.jointType){case BJ.Fixed:let G=hQ.intoRaw(this.frame1),W=hQ.intoRaw(this.frame2);Q=uY.fixed(B,G,Y,W),G.free(),W.free();break;case BJ.Spring:Q=uY.spring(this.length,this.stiffness,this.damping,B,Y);break;case BJ.Rope:Q=uY.rope(this.length,B,Y);break;case BJ.Prismatic:A=a.intoRaw(this.axis),this.limitsEnabled&&(J=!0,C=this.limits[0],X=this.limits[1]),Q=uY.prismatic(B,Y,A,J,C,X),A.free();break;case BJ.Generic:A=a.intoRaw(this.axis);let F=this.axesMask;Q=uY.generic(B,Y,A,F);break;case BJ.Spherical:Q=uY.spherical(B,Y);break;case BJ.Revolute:A=a.intoRaw(this.axis),Q=uY.revolute(B,Y,A),A.free()}return B.free(),Y.free(),Q}}class s_{constructor(A){this.raw=A||new iX,this.map=new BI,A&&A.forEachJointHandle((Q)=>{this.map.set(Q,NC.newTyped(A,null,Q))})}free(){this.raw&&this.raw.free(),this.raw=void 0,this.map&&this.map.clear(),this.map=void 0}finalizeDeserialization(A){this.map.forEach((Q)=>Q.finalizeDeserialization(A))}createJoint(A,Q,B,Y,J){let C=Q.intoRaw(),X=this.raw.createJoint(C,B,Y,J);C.free();let G=NC.newTyped(this.raw,A,X);return this.map.set(X,G),G}remove(A,Q){this.raw.remove(A,Q),this.unmap(A)}forEachJointHandleAttachedToRigidBody(A,Q){this.raw.forEachJointAttachedToRigidBody(A,Q)}unmap(A){this.map.delete(A)}len(){return this.map.len()}contains(A){return this.get(A)!=null}get(A){return this.map.get(A)}forEach(A){this.map.forEach(A)}getAll(){return this.map.getAll()}}class rG{constructor(A,Q){this.rawSet=A,this.handle=Q}static newTyped(A,Q){switch(A.jointType(Q)){case DC.Revolute:return new o_(A,Q);case DC.Prismatic:return new a_(A,Q);case DC.Fixed:return new r_(A,Q);case DC.Spherical:return new t_(A,Q);default:return new rG(A,Q)}}isValid(){return this.rawSet.contains(this.handle)}setContactsEnabled(A){this.rawSet.jointSetContactsEnabled(this.handle,A)}contactsEnabled(){return this.rawSet.jointContactsEnabled(this.handle)}}class aM extends rG{}class r_ extends rG{}class a_ extends aM{rawAxis(){return cM.LinX}}class o_ extends aM{rawAxis(){return cM.AngX}}class t_ extends rG{}class e_{constructor(A){this.raw=A||new sX,this.map=new BI,A&&A.forEachJointHandle((Q)=>{this.map.set(Q,rG.newTyped(this.raw,Q))})}free(){this.raw&&this.raw.free(),this.raw=void 0,this.map&&this.map.clear(),this.map=void 0}createJoint(A,Q,B,Y){let J=A.intoRaw(),C=this.raw.createJoint(J,Q,B,Y);J.free();let X=rG.newTyped(this.raw,C);return this.map.set(C,X),X}remove(A,Q){this.raw.remove(A,Q),this.map.delete(A)}unmap(A){this.map.delete(A)}len(){return this.map.len()}contains(A){return this.get(A)!=null}get(A){return this.map.get(A)}forEach(A){this.map.forEach(A)}forEachJointHandleAttachedToRigidBody(A,Q){this.raw.forEachJointAttachedToRigidBody(A,Q)}getAll(){return this.map.getAll()}}(function(A){A[A.Average=0]="Average",A[A.Min=1]="Min",A[A.Multiply=2]="Multiply",A[A.Max=3]="Max"})(oV||(oV={}));class Av{constructor(A){this.raw=A||new _M}free(){this.raw&&this.raw.free(),this.raw=void 0}}class Qv{constructor(A){this.raw=A||new nX}free(){this.raw&&this.raw.free(),this.raw=void 0}forEachActiveRigidBodyHandle(A){this.raw.forEachActiveRigidBodyHandle(A)}}(function(A){A[A.Vertex=0]="Vertex",A[A.Edge=1]="Edge",A[A.Face=2]="Face",A[A.Unknown=3]="Unknown"})(N4||(N4={}));class Ie{constructor(A,Q){this.origin=A,this.dir=Q}pointAt(A){return{x:this.origin.x+this.dir.x*A,y:this.origin.y+this.dir.y*A,z:this.origin.z+this.dir.z*A}}}class YI{constructor(A,Q,B,Y){this.featureType=N4.Unknown,this.featureId=void 0,this.timeOfImpact=A,this.normal=Q,Y!==void 0&&(this.featureId=Y),B!==void 0&&(this.featureType=B)}static fromRaw(A){if(!A)return null;let Q=new YI(A.time_of_impact(),a.fromRaw(A.normal()),A.featureType(),A.featureId());return A.free(),Q}}class tV{constructor(A,Q,B,Y,J){this.featureType=N4.Unknown,this.featureId=void 0,this.collider=A,this.timeOfImpact=Q,this.normal=B,J!==void 0&&(this.featureId=J),Y!==void 0&&(this.featureType=Y)}static fromRaw(A,Q){if(!Q)return null;let B=new tV(A.get(Q.colliderHandle()),Q.time_of_impact(),a.fromRaw(Q.normal()),Q.featureType(),Q.featureId());return Q.free(),B}}class oM{constructor(A,Q){this.collider=A,this.timeOfImpact=Q}static fromRaw(A,Q){if(!Q)return null;let B=new oM(A.get(Q.colliderHandle()),Q.timeOfImpact());return Q.free(),B}}class JI{constructor(A,Q){this.point=A,this.isInside=Q}static fromRaw(A){if(!A)return null;let Q=new JI(a.fromRaw(A.point()),A.isInside());return A.free(),Q}}class eV{constructor(A,Q,B,Y,J){this.featureType=N4.Unknown,this.featureId=void 0,this.collider=A,this.point=Q,this.isInside=B,J!==void 0&&(this.featureId=J),Y!==void 0&&(this.featureType=Y)}static fromRaw(A,Q){if(!Q)return null;let B=new eV(A.get(Q.colliderHandle()),a.fromRaw(Q.point()),Q.isInside(),Q.featureType(),Q.featureId());return Q.free(),B}}class q4{constructor(A,Q,B,Y,J){this.time_of_impact=A,this.witness1=Q,this.witness2=B,this.normal1=Y,this.normal2=J}static fromRaw(A,Q){if(!Q)return null;let B=new q4(Q.time_of_impact(),a.fromRaw(Q.witness1()),a.fromRaw(Q.witness2()),a.fromRaw(Q.normal1()),a.fromRaw(Q.normal2()));return Q.free(),B}}class CI extends q4{constructor(A,Q,B,Y,J,C){super(Q,B,Y,J,C),this.collider=A}static fromRaw(A,Q){if(!Q)return null;let B=new CI(A.get(Q.colliderHandle()),Q.time_of_impact(),a.fromRaw(Q.witness1()),a.fromRaw(Q.witness2()),a.fromRaw(Q.normal1()),a.fromRaw(Q.normal2()));return Q.free(),B}}class Bv{constructor(A){this.raw=A||new pX}free(){this.raw&&this.raw.free(),this.raw=void 0}castRay(A,Q,B,Y,J,C,X,G,W,F,Z){let U=a.intoRaw(Y.origin),$=a.intoRaw(Y.dir),E=oM.fromRaw(B,this.raw.castRay(A.raw,Q.raw,B.raw,U,$,J,C,X,G,W,F,Z));return U.free(),$.free(),E}castRayAndGetNormal(A,Q,B,Y,J,C,X,G,W,F,Z){let U=a.intoRaw(Y.origin),$=a.intoRaw(Y.dir),E=tV.fromRaw(B,this.raw.castRayAndGetNormal(A.raw,Q.raw,B.raw,U,$,J,C,X,G,W,F,Z));return U.free(),$.free(),E}intersectionsWithRay(A,Q,B,Y,J,C,X,G,W,F,Z,U){let $=a.intoRaw(Y.origin),E=a.intoRaw(Y.dir);this.raw.intersectionsWithRay(A.raw,Q.raw,B.raw,$,E,J,C,(K)=>X(tV.fromRaw(B,K)),G,W,F,Z,U),$.free(),E.free()}intersectionWithShape(A,Q,B,Y,J,C,X,G,W,F,Z){let U=a.intoRaw(Y),$=hQ.intoRaw(J),E=C.intoRaw(),K=this.raw.intersectionWithShape(A.raw,Q.raw,B.raw,U,$,E,X,G,W,F,Z);return U.free(),$.free(),E.free(),K}projectPoint(A,Q,B,Y,J,C,X,G,W,F){let Z=a.intoRaw(Y),U=eV.fromRaw(B,this.raw.projectPoint(A.raw,Q.raw,B.raw,Z,J,C,X,G,W,F));return Z.free(),U}projectPointAndGetFeature(A,Q,B,Y,J,C,X,G,W){let F=a.intoRaw(Y),Z=eV.fromRaw(B,this.raw.projectPointAndGetFeature(A.raw,Q.raw,B.raw,F,J,C,X,G,W));return F.free(),Z}intersectionsWithPoint(A,Q,B,Y,J,C,X,G,W,F){let Z=a.intoRaw(Y);this.raw.intersectionsWithPoint(A.raw,Q.raw,B.raw,Z,J,C,X,G,W,F),Z.free()}castShape(A,Q,B,Y,J,C,X,G,W,F,Z,U,$,E,K){let I=a.intoRaw(Y),V=hQ.intoRaw(J),H=a.intoRaw(C),D=X.intoRaw(),L=CI.fromRaw(B,this.raw.castShape(A.raw,Q.raw,B.raw,I,V,H,D,G,W,F,Z,U,$,E,K));return I.free(),V.free(),H.free(),D.free(),L}intersectionsWithShape(A,Q,B,Y,J,C,X,G,W,F,Z,U){let $=a.intoRaw(Y),E=hQ.intoRaw(J),K=C.intoRaw();this.raw.intersectionsWithShape(A.raw,Q.raw,B.raw,$,E,K,X,G,W,F,Z,U),$.free(),E.free(),K.free()}collidersWithAabbIntersectingAabb(A,Q,B,Y,J,C){let X=a.intoRaw(Y),G=a.intoRaw(J);this.raw.collidersWithAabbIntersectingAabb(A.raw,Q.raw,B.raw,X,G,C),X.free(),G.free()}}class Yv{constructor(A){this.raw=A||new LY,this.tempManifold=new Jv(null)}free(){this.raw&&this.raw.free(),this.raw=void 0}contactPairsWith(A,Q){this.raw.contact_pairs_with(A,Q)}intersectionPairsWith(A,Q){this.raw.intersection_pairs_with(A,Q)}contactPair(A,Q,B){let Y=this.raw.contact_pair(A,Q);if(Y){let J=Y.collider1()!=A,C;for(C=0;CA.free()),this.pidControllers.forEach((A)=>A.free()),this.vehicleControllers.forEach((A)=>A.free()),this.integrationParameters=void 0,this.islands=void 0,this.broadPhase=void 0,this.narrowPhase=void 0,this.bodies=void 0,this.colliders=void 0,this.ccdSolver=void 0,this.impulseJoints=void 0,this.multibodyJoints=void 0,this.physicsPipeline=void 0,this.serializationPipeline=void 0,this.debugRenderPipeline=void 0,this.characterControllers=void 0,this.pidControllers=void 0,this.vehicleControllers=void 0}static fromRaw(A){return A?new Ez(a.fromRaw(A.takeGravity()),A.takeIntegrationParameters(),A.takeIslandManager(),A.takeBroadPhase(),A.takeNarrowPhase(),A.takeBodies(),A.takeColliders(),A.takeImpulseJoints(),A.takeMultibodyJoints()):null}takeSnapshot(){return this.serializationPipeline.serializeAll(this.gravity,this.integrationParameters,this.islands,this.broadPhase,this.narrowPhase,this.bodies,this.colliders,this.impulseJoints,this.multibodyJoints)}static restoreSnapshot(A){return new uM().deserializeAll(A)}debugRender(A,Q){return this.debugRenderPipeline.render(this.bodies,this.colliders,this.impulseJoints,this.multibodyJoints,this.narrowPhase,A,Q),new Gv(this.debugRenderPipeline.vertices,this.debugRenderPipeline.colors)}step(A,Q){this.physicsPipeline.step(this.gravity,this.integrationParameters,this.islands,this.broadPhase,this.narrowPhase,this.bodies,this.colliders,this.impulseJoints,this.multibodyJoints,this.ccdSolver,A,Q)}propagateModifiedBodyPositionsToColliders(){this.bodies.raw.propagateModifiedBodyPositionsToColliders(this.colliders.raw)}get timestep(){return this.integrationParameters.dt}set timestep(A){this.integrationParameters.dt=A}get lengthUnit(){return this.integrationParameters.lengthUnit}set lengthUnit(A){this.integrationParameters.lengthUnit=A}get numSolverIterations(){return this.integrationParameters.numSolverIterations}set numSolverIterations(A){this.integrationParameters.numSolverIterations=A}get numInternalPgsIterations(){return this.integrationParameters.numInternalPgsIterations}set numInternalPgsIterations(A){this.integrationParameters.numInternalPgsIterations=A}get maxCcdSubsteps(){return this.integrationParameters.maxCcdSubsteps}set maxCcdSubsteps(A){this.integrationParameters.maxCcdSubsteps=A}createRigidBody(A){return this.bodies.createRigidBody(this.colliders,A)}createCharacterController(A){let Q=new Zv(A,this.integrationParameters,this.broadPhase,this.narrowPhase,this.bodies,this.colliders);return this.characterControllers.add(Q),Q}removeCharacterController(A){this.characterControllers.delete(A),A.free()}createPidController(A,Q,B,Y){let J=new $v(this.integrationParameters,this.bodies,A,Q,B,Y);return this.pidControllers.add(J),J}removePidController(A){this.pidControllers.delete(A),A.free()}createVehicleController(A){let Q=new Uv(A,this.broadPhase,this.narrowPhase,this.bodies,this.colliders);return this.vehicleControllers.add(Q),Q}removeVehicleController(A){this.vehicleControllers.delete(A),A.free()}createCollider(A,Q){let B=Q?Q.handle:void 0;return this.colliders.createCollider(this.bodies,A,B)}createImpulseJoint(A,Q,B,Y){return this.impulseJoints.createJoint(this.bodies,A,Q.handle,B.handle,Y)}createMultibodyJoint(A,Q,B,Y){return this.multibodyJoints.createJoint(A,Q.handle,B.handle,Y)}getRigidBody(A){return this.bodies.get(A)}getCollider(A){return this.colliders.get(A)}getImpulseJoint(A){return this.impulseJoints.get(A)}getMultibodyJoint(A){return this.multibodyJoints.get(A)}removeRigidBody(A){this.bodies&&this.bodies.remove(A.handle,this.islands,this.colliders,this.impulseJoints,this.multibodyJoints)}removeCollider(A,Q){this.colliders&&this.colliders.remove(A.handle,this.islands,this.bodies,Q)}removeImpulseJoint(A,Q){this.impulseJoints&&this.impulseJoints.remove(A.handle,Q)}removeMultibodyJoint(A,Q){this.impulseJoints&&this.multibodyJoints.remove(A.handle,Q)}forEachCollider(A){this.colliders.forEach(A)}forEachRigidBody(A){this.bodies.forEach(A)}forEachActiveRigidBody(A){this.bodies.forEachActiveRigidBody(this.islands,A)}castRay(A,Q,B,Y,J,C,X,G){return this.broadPhase.castRay(this.narrowPhase,this.bodies,this.colliders,A,Q,B,Y,J,C?C.handle:null,X?X.handle:null,this.colliders.castClosure(G))}castRayAndGetNormal(A,Q,B,Y,J,C,X,G){return this.broadPhase.castRayAndGetNormal(this.narrowPhase,this.bodies,this.colliders,A,Q,B,Y,J,C?C.handle:null,X?X.handle:null,this.colliders.castClosure(G))}intersectionsWithRay(A,Q,B,Y,J,C,X,G,W){this.broadPhase.intersectionsWithRay(this.narrowPhase,this.bodies,this.colliders,A,Q,B,Y,J,C,X?X.handle:null,G?G.handle:null,this.colliders.castClosure(W))}intersectionWithShape(A,Q,B,Y,J,C,X,G){let W=this.broadPhase.intersectionWithShape(this.narrowPhase,this.bodies,this.colliders,A,Q,B,Y,J,C?C.handle:null,X?X.handle:null,this.colliders.castClosure(G));return W!=null?this.colliders.get(W):null}projectPoint(A,Q,B,Y,J,C,X){return this.broadPhase.projectPoint(this.narrowPhase,this.bodies,this.colliders,A,Q,B,Y,J?J.handle:null,C?C.handle:null,this.colliders.castClosure(X))}projectPointAndGetFeature(A,Q,B,Y,J,C){return this.broadPhase.projectPointAndGetFeature(this.narrowPhase,this.bodies,this.colliders,A,Q,B,Y?Y.handle:null,J?J.handle:null,this.colliders.castClosure(C))}intersectionsWithPoint(A,Q,B,Y,J,C,X){this.broadPhase.intersectionsWithPoint(this.narrowPhase,this.bodies,this.colliders,A,this.colliders.castClosure(Q),B,Y,J?J.handle:null,C?C.handle:null,this.colliders.castClosure(X))}castShape(A,Q,B,Y,J,C,X,G,W,F,Z,U){return this.broadPhase.castShape(this.narrowPhase,this.bodies,this.colliders,A,Q,B,Y,J,C,X,G,W,F?F.handle:null,Z?Z.handle:null,this.colliders.castClosure(U))}intersectionsWithShape(A,Q,B,Y,J,C,X,G,W){this.broadPhase.intersectionsWithShape(this.narrowPhase,this.bodies,this.colliders,A,Q,B,this.colliders.castClosure(Y),J,C,X?X.handle:null,G?G.handle:null,this.colliders.castClosure(W))}collidersWithAabbIntersectingAabb(A,Q,B){this.broadPhase.collidersWithAabbIntersectingAabb(this.narrowPhase,this.bodies,this.colliders,A,Q,this.colliders.castClosure(B))}contactPairsWith(A,Q){this.narrowPhase.contactPairsWith(A.handle,this.colliders.castClosure(Q))}intersectionPairsWith(A,Q){this.narrowPhase.intersectionPairsWith(A.handle,this.colliders.castClosure(Q))}contactPair(A,Q,B){this.narrowPhase.contactPair(A.handle,Q.handle,B)}intersectionPair(A,Q){return this.narrowPhase.intersectionPair(A.handle,Q.handle)}set profilerEnabled(A){this.physicsPipeline.raw.set_profiler_enabled(A)}get profilerEnabled(){return this.physicsPipeline.raw.is_profiler_enabled()}timingStep(){return this.physicsPipeline.raw.timing_step()}timingCollisionDetection(){return this.physicsPipeline.raw.timing_collision_detection()}timingBroadPhase(){return this.physicsPipeline.raw.timing_broad_phase()}timingNarrowPhase(){return this.physicsPipeline.raw.timing_narrow_phase()}timingSolver(){return this.physicsPipeline.raw.timing_solver()}timingVelocityAssembly(){return this.physicsPipeline.raw.timing_velocity_assembly()}timingVelocityResolution(){return this.physicsPipeline.raw.timing_velocity_resolution()}timingVelocityUpdate(){return this.physicsPipeline.raw.timing_velocity_update()}timingVelocityWriteback(){return this.physicsPipeline.raw.timing_velocity_writeback()}timingCcd(){return this.physicsPipeline.raw.timing_ccd()}timingCcdToiComputation(){return this.physicsPipeline.raw.timing_ccd_toi_computation()}timingCcdBroadPhase(){return this.physicsPipeline.raw.timing_ccd_broad_phase()}timingCcdNarrowPhase(){return this.physicsPipeline.raw.timing_ccd_narrow_phase()}timingCcdSolver(){return this.physicsPipeline.raw.timing_ccd_solver()}timingIslandConstruction(){return this.physicsPipeline.raw.timing_island_construction()}timingUserChanges(){return this.physicsPipeline.raw.timing_user_changes()}}(function(A){A[A.NONE=0]="NONE",A[A.COLLISION_EVENTS=1]="COLLISION_EVENTS",A[A.CONTACT_FORCE_EVENTS=2]="CONTACT_FORCE_EVENTS"})(xM||(xM={}));class Ev{free(){this.raw&&this.raw.free(),this.raw=void 0}collider1(){return this.raw.collider1()}collider2(){return this.raw.collider2()}totalForce(){return a.fromRaw(this.raw.total_force())}totalForceMagnitude(){return this.raw.total_force_magnitude()}maxForceDirection(){return a.fromRaw(this.raw.max_force_direction())}maxForceMagnitude(){return this.raw.max_force_magnitude()}}class He{constructor(A,Q){this.raw=Q||new g_(A)}free(){this.raw&&this.raw.free(),this.raw=void 0}drainCollisionEvents(A){this.raw.drainCollisionEvents(A)}drainContactForceEvents(A){let Q=new Ev;this.raw.drainContactForceEvents((B)=>{Q.raw=B,A(Q),Q.free()})}clear(){this.raw.clear()}}(function(A){A[A.NONE=0]="NONE",A[A.FILTER_CONTACT_PAIRS=1]="FILTER_CONTACT_PAIRS",A[A.FILTER_INTERSECTION_PAIRS=2]="FILTER_INTERSECTION_PAIRS"})(fM||(fM={})),function(A){A[A.EMPTY=0]="EMPTY",A[A.COMPUTE_IMPULSE=1]="COMPUTE_IMPULSE"}(j_||(j_={})),function(A){A[A.EXCLUDE_FIXED=1]="EXCLUDE_FIXED",A[A.EXCLUDE_KINEMATIC=2]="EXCLUDE_KINEMATIC",A[A.EXCLUDE_DYNAMIC=4]="EXCLUDE_DYNAMIC",A[A.EXCLUDE_SENSORS=8]="EXCLUDE_SENSORS",A[A.EXCLUDE_SOLIDS=16]="EXCLUDE_SOLIDS",A[A.ONLY_DYNAMIC=3]="ONLY_DYNAMIC",A[A.ONLY_KINEMATIC=5]="ONLY_KINEMATIC",A[A.ONLY_FIXED=6]="ONLY_FIXED"}(O_||(O_={})),function(A){A[A.DYNAMIC_DYNAMIC=1]="DYNAMIC_DYNAMIC",A[A.DYNAMIC_KINEMATIC=12]="DYNAMIC_KINEMATIC",A[A.DYNAMIC_FIXED=2]="DYNAMIC_FIXED",A[A.KINEMATIC_KINEMATIC=52224]="KINEMATIC_KINEMATIC",A[A.KINEMATIC_FIXED=8704]="KINEMATIC_FIXED",A[A.FIXED_FIXED=32]="FIXED_FIXED",A[A.DEFAULT=15]="DEFAULT",A[A.ALL=60943]="ALL"}(bM||(bM={}));class dM{constructor(A,Q,B,Y){this.colliderSet=A,this.handle=Q,this._parent=B,this._shape=Y}finalizeDeserialization(A){this.handle!=null&&(this._parent=A.get(this.colliderSet.raw.coParent(this.handle)))}ensureShapeIsCached(){this._shape||(this._shape=JY.fromRaw(this.colliderSet.raw,this.handle))}get shape(){return this.ensureShapeIsCached(),this._shape}clearShapeCache(){this._shape=null}isValid(){return this.colliderSet.raw.contains(this.handle)}translation(){return a.fromRaw(this.colliderSet.raw.coTranslation(this.handle))}translationWrtParent(){return a.fromRaw(this.colliderSet.raw.coTranslationWrtParent(this.handle))}rotation(){return hQ.fromRaw(this.colliderSet.raw.coRotation(this.handle))}rotationWrtParent(){return hQ.fromRaw(this.colliderSet.raw.coRotationWrtParent(this.handle))}isSensor(){return this.colliderSet.raw.coIsSensor(this.handle)}setSensor(A){this.colliderSet.raw.coSetSensor(this.handle,A)}setShape(A){let Q=A.intoRaw();this.colliderSet.raw.coSetShape(this.handle,Q),Q.free(),this._shape=A}setEnabled(A){this.colliderSet.raw.coSetEnabled(this.handle,A)}isEnabled(){return this.colliderSet.raw.coIsEnabled(this.handle)}setRestitution(A){this.colliderSet.raw.coSetRestitution(this.handle,A)}setFriction(A){this.colliderSet.raw.coSetFriction(this.handle,A)}frictionCombineRule(){return this.colliderSet.raw.coFrictionCombineRule(this.handle)}setFrictionCombineRule(A){this.colliderSet.raw.coSetFrictionCombineRule(this.handle,A)}restitutionCombineRule(){return this.colliderSet.raw.coRestitutionCombineRule(this.handle)}setRestitutionCombineRule(A){this.colliderSet.raw.coSetRestitutionCombineRule(this.handle,A)}setCollisionGroups(A){this.colliderSet.raw.coSetCollisionGroups(this.handle,A)}setSolverGroups(A){this.colliderSet.raw.coSetSolverGroups(this.handle,A)}contactSkin(){return this.colliderSet.raw.coContactSkin(this.handle)}setContactSkin(A){return this.colliderSet.raw.coSetContactSkin(this.handle,A)}activeHooks(){return this.colliderSet.raw.coActiveHooks(this.handle)}setActiveHooks(A){this.colliderSet.raw.coSetActiveHooks(this.handle,A)}activeEvents(){return this.colliderSet.raw.coActiveEvents(this.handle)}setActiveEvents(A){this.colliderSet.raw.coSetActiveEvents(this.handle,A)}activeCollisionTypes(){return this.colliderSet.raw.coActiveCollisionTypes(this.handle)}setContactForceEventThreshold(A){return this.colliderSet.raw.coSetContactForceEventThreshold(this.handle,A)}contactForceEventThreshold(){return this.colliderSet.raw.coContactForceEventThreshold(this.handle)}setActiveCollisionTypes(A){this.colliderSet.raw.coSetActiveCollisionTypes(this.handle,A)}setDensity(A){this.colliderSet.raw.coSetDensity(this.handle,A)}setMass(A){this.colliderSet.raw.coSetMass(this.handle,A)}setMassProperties(A,Q,B,Y){let J=a.intoRaw(Q),C=a.intoRaw(B),X=hQ.intoRaw(Y);this.colliderSet.raw.coSetMassProperties(this.handle,A,J,C,X),J.free(),C.free(),X.free()}setTranslation(A){this.colliderSet.raw.coSetTranslation(this.handle,A.x,A.y,A.z)}setTranslationWrtParent(A){this.colliderSet.raw.coSetTranslationWrtParent(this.handle,A.x,A.y,A.z)}setRotation(A){this.colliderSet.raw.coSetRotation(this.handle,A.x,A.y,A.z,A.w)}setRotationWrtParent(A){this.colliderSet.raw.coSetRotationWrtParent(this.handle,A.x,A.y,A.z,A.w)}shapeType(){return this.colliderSet.raw.coShapeType(this.handle)}halfExtents(){return a.fromRaw(this.colliderSet.raw.coHalfExtents(this.handle))}setHalfExtents(A){let Q=a.intoRaw(A);this.colliderSet.raw.coSetHalfExtents(this.handle,Q)}radius(){return this.colliderSet.raw.coRadius(this.handle)}setRadius(A){this.colliderSet.raw.coSetRadius(this.handle,A)}roundRadius(){return this.colliderSet.raw.coRoundRadius(this.handle)}setRoundRadius(A){this.colliderSet.raw.coSetRoundRadius(this.handle,A)}halfHeight(){return this.colliderSet.raw.coHalfHeight(this.handle)}setHalfHeight(A){this.colliderSet.raw.coSetHalfHeight(this.handle,A)}setVoxel(A,Q,B,Y){this.colliderSet.raw.coSetVoxel(this.handle,A,Q,B,Y),this._shape=null}propagateVoxelChange(A,Q,B,Y,J,C,X){this.colliderSet.raw.coPropagateVoxelChange(this.handle,A.handle,Q,B,Y,J,C,X),this._shape=null}combineVoxelStates(A,Q,B,Y){this.colliderSet.raw.coCombineVoxelStates(this.handle,A.handle,Q,B,Y),this._shape=null}vertices(){return this.colliderSet.raw.coVertices(this.handle)}indices(){return this.colliderSet.raw.coIndices(this.handle)}heightfieldHeights(){return this.colliderSet.raw.coHeightfieldHeights(this.handle)}heightfieldScale(){let A=this.colliderSet.raw.coHeightfieldScale(this.handle);return a.fromRaw(A)}heightfieldNRows(){return this.colliderSet.raw.coHeightfieldNRows(this.handle)}heightfieldNCols(){return this.colliderSet.raw.coHeightfieldNCols(this.handle)}parent(){return this._parent}friction(){return this.colliderSet.raw.coFriction(this.handle)}restitution(){return this.colliderSet.raw.coRestitution(this.handle)}density(){return this.colliderSet.raw.coDensity(this.handle)}mass(){return this.colliderSet.raw.coMass(this.handle)}volume(){return this.colliderSet.raw.coVolume(this.handle)}collisionGroups(){return this.colliderSet.raw.coCollisionGroups(this.handle)}solverGroups(){return this.colliderSet.raw.coSolverGroups(this.handle)}containsPoint(A){let Q=a.intoRaw(A),B=this.colliderSet.raw.coContainsPoint(this.handle,Q);return Q.free(),B}projectPoint(A,Q){let B=a.intoRaw(A),Y=JI.fromRaw(this.colliderSet.raw.coProjectPoint(this.handle,B,Q));return B.free(),Y}intersectsRay(A,Q){let B=a.intoRaw(A.origin),Y=a.intoRaw(A.dir),J=this.colliderSet.raw.coIntersectsRay(this.handle,B,Y,Q);return B.free(),Y.free(),J}castShape(A,Q,B,Y,J,C,X,G){let W=a.intoRaw(A),F=a.intoRaw(B),Z=hQ.intoRaw(Y),U=a.intoRaw(J),$=Q.intoRaw(),E=q4.fromRaw(this.colliderSet,this.colliderSet.raw.coCastShape(this.handle,W,$,F,Z,U,C,X,G));return W.free(),F.free(),Z.free(),U.free(),$.free(),E}castCollider(A,Q,B,Y,J,C){let X=a.intoRaw(A),G=a.intoRaw(B),W=CI.fromRaw(this.colliderSet,this.colliderSet.raw.coCastCollider(this.handle,X,Q.handle,G,Y,J,C));return X.free(),G.free(),W}intersectsShape(A,Q,B){let Y=a.intoRaw(Q),J=hQ.intoRaw(B),C=A.intoRaw(),X=this.colliderSet.raw.coIntersectsShape(this.handle,C,Y,J);return Y.free(),J.free(),C.free(),X}contactShape(A,Q,B,Y){let J=a.intoRaw(Q),C=hQ.intoRaw(B),X=A.intoRaw(),G=L4.fromRaw(this.colliderSet.raw.coContactShape(this.handle,X,J,C,Y));return J.free(),C.free(),X.free(),G}contactCollider(A,Q){return L4.fromRaw(this.colliderSet.raw.coContactCollider(this.handle,A.handle,Q))}castRay(A,Q,B){let Y=a.intoRaw(A.origin),J=a.intoRaw(A.dir),C=this.colliderSet.raw.coCastRay(this.handle,Y,J,Q,B);return Y.free(),J.free(),C}castRayAndGetNormal(A,Q,B){let Y=a.intoRaw(A.origin),J=a.intoRaw(A.dir),C=YI.fromRaw(this.colliderSet.raw.coCastRayAndGetNormal(this.handle,Y,J,Q,B));return Y.free(),J.free(),C}}(function(A){A[A.Density=0]="Density",A[A.Mass=1]="Mass",A[A.MassProps=2]="MassProps"})(RF||(RF={}));class BY{constructor(A){this.enabled=!0,this.shape=A,this.massPropsMode=RF.Density,this.density=1,this.friction=0.5,this.restitution=0,this.rotation=hQ.identity(),this.translation=a.zeros(),this.isSensor=!1,this.collisionGroups=4294967295,this.solverGroups=4294967295,this.frictionCombineRule=oV.Average,this.restitutionCombineRule=oV.Average,this.activeCollisionTypes=bM.DEFAULT,this.activeEvents=xM.NONE,this.activeHooks=fM.NONE,this.mass=0,this.centerOfMass=a.zeros(),this.contactForceEventThreshold=0,this.contactSkin=0,this.principalAngularInertia=a.zeros(),this.angularInertiaLocalFrame=hQ.identity()}static ball(A){let Q=new tM(A);return new BY(Q)}static capsule(A,Q){let B=new Qz(A,Q);return new BY(B)}static segment(A,Q){let B=new Bz(A,Q);return new BY(B)}static triangle(A,Q,B){let Y=new Yz(A,Q,B);return new BY(Y)}static roundTriangle(A,Q,B,Y){let J=new Jz(A,Q,B,Y);return new BY(J)}static polyline(A,Q){let B=new Cz(A,Q);return new BY(B)}static voxels(A,Q){let B=new Xz(A,Q);return new BY(B)}static trimesh(A,Q,B){let Y=new Gz(A,Q,B);return new BY(Y)}static cuboid(A,Q,B){let Y=new eM(A,Q,B);return new BY(Y)}static roundCuboid(A,Q,B,Y){let J=new Az(A,Q,B,Y);return new BY(J)}static heightfield(A,Q,B,Y,J){let C=new Wz(A,Q,B,Y,J);return new BY(C)}static cylinder(A,Q){let B=new Fz(A,Q);return new BY(B)}static roundCylinder(A,Q,B){let Y=new Zz(A,Q,B);return new BY(Y)}static cone(A,Q){let B=new $z(A,Q);return new BY(B)}static roundCone(A,Q,B){let Y=new Uz(A,Q,B);return new BY(Y)}static convexHull(A){let Q=new AI(A,null);return new BY(Q)}static convexMesh(A,Q){let B=new AI(A,Q);return new BY(B)}static roundConvexHull(A,Q){let B=new QI(A,null,Q);return new BY(B)}static roundConvexMesh(A,Q,B){let Y=new QI(A,Q,B);return new BY(Y)}setTranslation(A,Q,B){if(typeof A!="number"||typeof Q!="number"||typeof B!="number")throw TypeError("The translation components must be numbers.");return this.translation={x:A,y:Q,z:B},this}setRotation(A){return hQ.copy(this.rotation,A),this}setSensor(A){return this.isSensor=A,this}setEnabled(A){return this.enabled=A,this}setContactSkin(A){return this.contactSkin=A,this}setDensity(A){return this.massPropsMode=RF.Density,this.density=A,this}setMass(A){return this.massPropsMode=RF.Mass,this.mass=A,this}setMassProperties(A,Q,B,Y){return this.massPropsMode=RF.MassProps,this.mass=A,a.copy(this.centerOfMass,Q),a.copy(this.principalAngularInertia,B),hQ.copy(this.angularInertiaLocalFrame,Y),this}setRestitution(A){return this.restitution=A,this}setFriction(A){return this.friction=A,this}setFrictionCombineRule(A){return this.frictionCombineRule=A,this}setRestitutionCombineRule(A){return this.restitutionCombineRule=A,this}setCollisionGroups(A){return this.collisionGroups=A,this}setSolverGroups(A){return this.solverGroups=A,this}setActiveHooks(A){return this.activeHooks=A,this}setActiveEvents(A){return this.activeEvents=A,this}setActiveCollisionTypes(A){return this.activeCollisionTypes=A,this}setContactForceEventThreshold(A){return this.contactForceEventThreshold=A,this}}class Kv{constructor(A){this.raw=A||new T0,this.map=new BI,A&&A.forEachColliderHandle((Q)=>{this.map.set(Q,new dM(this,Q,null))})}free(){this.raw&&this.raw.free(),this.raw=void 0,this.map&&this.map.clear(),this.map=void 0}castClosure(A){return(Q)=>A?A(this.get(Q)):void 0}finalizeDeserialization(A){this.map.forEach((Q)=>Q.finalizeDeserialization(A))}createCollider(A,Q,B){let Y=B!=null&&B!=null;if(Y&&isNaN(B))throw Error("Cannot create a collider with a parent rigid-body handle that is not a number.");let J=Q.shape.intoRaw(),C=a.intoRaw(Q.translation),X=hQ.intoRaw(Q.rotation),G=a.intoRaw(Q.centerOfMass),W=a.intoRaw(Q.principalAngularInertia),F=hQ.intoRaw(Q.angularInertiaLocalFrame),Z=this.raw.createCollider(Q.enabled,J,C,X,Q.massPropsMode,Q.mass,G,W,F,Q.density,Q.friction,Q.restitution,Q.frictionCombineRule,Q.restitutionCombineRule,Q.isSensor,Q.collisionGroups,Q.solverGroups,Q.activeCollisionTypes,Q.activeHooks,Q.activeEvents,Q.contactForceEventThreshold,Q.contactSkin,Y,Y?B:0,A.raw);J.free(),C.free(),X.free(),G.free(),W.free(),F.free();let U=Y?A.get(B):null,$=new dM(this,Z,U,Q.shape);return this.map.set(Z,$),$}remove(A,Q,B,Y){this.raw.remove(A,Q.raw,B.raw,Y),this.unmap(A)}unmap(A){this.map.delete(A)}get(A){return this.map.get(A)}len(){return this.map.len()}contains(A){return this.get(A)!=null}forEach(A){this.map.forEach(A)}getAll(){return this.map.getAll()}}function D_Q(A,Q,B,Y){return new(B||(B=Promise))(function(J,C){function X(F){try{W(Y.next(F))}catch(Z){C(Z)}}function G(F){try{W(Y.throw(F))}catch(Z){C(Z)}}function W(F){var Z;F.done?J(F.value):(Z=F.value,Z instanceof B?Z:new B(function(U){U(Z)})).then(X,G)}W((Y=Y.apply(A,Q||[])).next())})}for(Vv={byteLength:function(A){var Q=Ce(A),B=Q[0],Y=Q[1];return 3*(B+Y)/4-Y},toByteArray:function(A){var Q,B,Y=Ce(A),J=Y[0],C=Y[1],X=new P_(function(F,Z,U){return 3*(Z+U)/4-U}(0,J,C)),G=0,W=C>0?J-4:J;for(B=0;B>16&255,X[G++]=Q>>8&255,X[G++]=255&Q;return C===2&&(Q=T9[A.charCodeAt(B)]<<2|T9[A.charCodeAt(B+1)]>>4,X[G++]=255&Q),C===1&&(Q=T9[A.charCodeAt(B)]<<10|T9[A.charCodeAt(B+1)]<<4|T9[A.charCodeAt(B+2)]>>2,X[G++]=Q>>8&255,X[G++]=255&Q),X},fromByteArray:function(A){for(var Q,B=A.length,Y=B%3,J=[],C=16383,X=0,G=B-Y;XG?G:X+C));return Y===1?(Q=A[B-1],J.push(A5[Q>>2]+A5[Q<<4&63]+"==")):Y===2&&(Q=(A[B-2]<<8)+A[B-1],J.push(A5[Q>>10]+A5[Q>>4&63]+A5[Q<<2&63]+"=")),J.join("")}},A5=[],T9=[],P_=typeof Uint8Array<"u"?Uint8Array:Array,nV="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",sG=0,T_=nV.length;sG0)throw Error("Invalid string. Length must be a multiple of 4");var B=A.indexOf("=");return B===-1&&(B=Q),[B,B===Q?0:4-B%4]}function N_Q(A,Q,B){for(var Y,J,C=[],X=Q;X>18&63]+A5[J>>12&63]+A5[J>>6&63]+A5[63&J]);return C.join("")}function L_Q(){return D_Q(this,void 0,void 0,function*(){yield Ve(Vv.toByteArray("AGFzbQEAAAAB6QykAWACf38AYAN/f38AYAR/f39/AGACf38Bf2ABfwF/YAN/f38Bf2ABfwBgBX9/f39/AGACf3wBf2AGf39/f31/AGAGf39/f39/AGABfwF9YAV/f399fwBgA39/fQBgBX9/f399AGADf3x/AGABfwF8YAR/f39/AX9gDH9/f39/f39/f399fwF/YAZ/f39/f30AYAR/f399AX9gAAF/YAR/f39/AX1gA39/fwF9YAN/f30Bf2ACf38BfGADf39/AX5gAn99AGAGf39/f39/AX9gAn98AX1gA398fQBgBH98f38AYAV/f39/fwF/YAd/f39/f39/AGACf38BfWACf3wBfGAIf39/f39/f38AYAF9AX1gAABgCX9/f39/f39/fwBgBH9+f38Bf2AIf39/f39/f30AYAR/f399AGADf398AGALf39/f39/f399fX8AYAh/f39/fX9/fwBgCX9/f39/fX9/fwBgBX9/fX9/AGAGf3x/f39/AGADf3x/AX9gA398fwF9YAN9fX0Bf2AGf31/f399AGAJf39/f39/fX9/AX9gBX98f39/AGAGf3x9fX19AGAFf3x9fX0AYAN/fX8AYAJ9fQF/YAF8AX9gBH99f38AYAt/f39/f39/f31/fwBgCn9/f39/f31/f38AYAZ/f319f38AYAt/f39/f39/fX9/fwBgCH9/f399fX9/AGAGf319f399AGAMf39/f31/f39/fX9/AGAPf39/f39/f39/fH98f3x/AGAPf39/f39/fX9/fH98f3x/AX9gBn9/f399fQBgBn99f3x/fwF/YAZ/fX98f38AYAV/fX1/fwBgAn5/AX9gBX9/fHx/AXxgBn9/fX9/fwBgA398fAF/YAR/fH1/AGAFf3x/fX0AYAJ/fABgAX0Bf2AEfX19fQF/YA5/f39/f39/f39/f39/fwBgB39/f39/f30AYA9/f39/f39/f39/f399fX8AYAt/f399f399f319fwBgCX99f39/f39/fwF/YAd/f39/f39/AX1gCn9/f39/f399fX8AYAt/f39/f39/f319fwF/YBJ/f39/f39/f39/f399f319fX0AYA9/f39/f39/f39/f39/f38AYAp/f39/f39/f39/AX9gC39/f39/f39/f39/AGAJf39/f39/fX9/AGASf39/f39/f399fX9/fH98f3x/AX9gB39/f39/f30Bf2Abf39/f319f39/f39/f39/f39/fX1/f399f39/AXxgEH9/f39/f31/f398f3x/fH8AYAh/fX9/f39/fwBgCH9/f39/e39/AGAbf39/f39/f31/f399fX1/f39/f39/f319f3x/AGAKf31/f39/f39/fwBgDH9/f399f39/f39/fwBgBn98f39/fQF/YAd/f39/f31/AX9gCn98f39/f399fX8Bf2AMf39/f39/f39/f39/AGANf39/f39/f3x/fH98fwBgC39/f399f39/f39/AGAHf39/f399fwF9YAh/fX99f31/fwBgBn9/f399fQF/YA1/f39/f39/fH98f3x/AX9gDH9/f39/f3x/fH98fwF/YAZ/f39/f30Bf2ANf31/f39/fH9/fH98fwBgBH9/fX8AYAl/f39/f39/f38BfWASf39/f39/f39/f39/f39/f39/AGAGf3x/f31/AX9gBX98f39/AX9gCX99f39/f398fwBgBn99f39/fwBgCn9/f39/f39/f38AYAd/fH1/f39/AGAGf3x/f31/AX1gAn9+AX9gBn98fX9/fwBgCH98f3x/fX1/AX9gBX98f399AX9gDX9/f39/f399fX19fX0AYAR/fH9/AX9gBX19fX9/AX9gA31/fwF/YAl/f39/f39+fn4AYAd/f39/f39/AX9gDX9/f39/f39/f39/f38AYAR/fHx9AX9gA398fwF8YAZ/fH99fX0AYAd/fH99fX19AGACf34AYAh/f39/f39/fwF/YAd/fH19fX1/AGAJf3x8f39/f39/AGAFf39/f30Bf2AGf3x9fX1/AGAGf3x8f39/AGAEf39+fwBgA39/fgF/YAV/fn9+fwBgA39+fgBgBH19fX8Bf2ADf399AX1gAn19AGAEf319fwBgBn9/fX19fQBgA319fwF/YAV/f3x/fwBgBX9/fn9/AGAEf35/fwBgAn19AX0CqwkgA3diZxVfX3diaW5kZ2VuX251bWJlcl9uZXcAOwN3YmcWX193YmluZGdlbl9ib29sZWFuX2dldAAEA3diZxpfX3diaW5kZ2VuX29iamVjdF9kcm9wX3JlZgAGA3diZxVfX3diaW5kZ2VuX251bWJlcl9nZXQAAAN3YmcWX193YmluZGdlbl9pc19mdW5jdGlvbgAEA3diZyRfX3diZ19yYXdyYXljb2xsaWRlcmludGVyc2VjdGlvbl9uZXcABAN3YmceX193YmdfcmF3Y29udGFjdGZvcmNlZXZlbnRfbmV3AAQDd2JnIl9fd2JnX3BlcmZvcm1hbmNlXzdhM2ZmZDBiMTdmNjYzYWQABAN3YmcXX193YmluZGdlbl9pc191bmRlZmluZWQABAN3YmcaX193Ymdfbm93XzJjOTVjOWRlMDEyOTMxNzMAEAN3YmcbX193YmluZGdlbl9vYmplY3RfY2xvbmVfcmVmAAQDd2JnIF9fd2JnX25ld25vYXJnc18xMDVlZDQ3MTQ3NWFhZjUwAAMDd2JnG19fd2JnX2NhbGxfNjcyYTRkMjE2MzRkNGEyNAADA3diZxtfX3diZ19jYWxsXzdjY2NkZDY5ZTA3OTFhZTIABQN3YmcbX193YmdfY2FsbF84MzNiZWQ1NzcwZWEyMDQxABEDd2JnG19fd2JnX2NhbGxfYjhhZGM4YjFkMGEwZDhlYgAgA3diZxtfX3diZ19iaW5kX2M4MzU5YjFjYmEwNTgxNjgAEQN3YmcdX193YmdfYnVmZmVyXzYwOWNjM2VlZTUxZWQxNTgABAN3YmcyX193Ymdfc3RhdGljX2FjY2Vzc29yX0dMT0JBTF9USElTXzU2NTc4YmU3ZTlmODMyYjAAFQN3YmcrX193Ymdfc3RhdGljX2FjY2Vzc29yX1NFTEZfMzdjNWQ0MThlNGJmNTgxOQAVA3diZy1fX3diZ19zdGF0aWNfYWNjZXNzb3JfV0lORE9XXzVkZTM3MDQzYTkxYTljNDAAFQN3YmctX193Ymdfc3RhdGljX2FjY2Vzc29yX0dMT0JBTF84OGE5MDJkMTNhNTU3ZDA3ABUDd2JnMV9fd2JnX25ld3dpdGhieXRlb2Zmc2V0YW5kbGVuZ3RoX2Q5N2U2MzdlYmUxNDVhOWEABQN3YmcaX193YmdfbmV3X2ExMjAwMmE3ZjkxYzc1YmUABAN3YmcaX193Ymdfc2V0XzY1NTk1YmRkODY4YjMwMDkAAQN3YmcdX193YmdfbGVuZ3RoX2E0NDYxOTNkYzIyYzEyZjgABAN3YmcxX193YmdfbmV3d2l0aGJ5dGVvZmZzZXRhbmRsZW5ndGhfZTZiN2U2OWFjZDRjNzM1NAAFA3diZxpfX3di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d2tpbmVtYXRpY2NoYXJhY3RlcmNvbnRyb2xsZXJfYXV0b3N0ZXBNaW5XaWR0aACnCz1yYXdraW5lbWF0aWNjaGFyYWN0ZXJjb250cm9sbGVyX2F1dG9zdGVwSW5jbHVkZXNEeW5hbWljQm9kaWVzAJgLL3Jhd2tpbmVtYXRpY2NoYXJhY3RlcmNvbnRyb2xsZXJfYXV0b3N0ZXBFbmFibGVkANgLLnJhd2tpbmVtYXRpY2NoYXJhY3RlcmNvbnRyb2xsZXJfZW5hYmxlQXV0b3N0ZXAAiAsvcmF3a2luZW1hdGljY2hhcmFjdGVyY29udHJvbGxlcl9kaXNhYmxlQXV0b3N0ZXAAlAwycmF3a2luZW1hdGljY2hhcmFjdGVyY29udHJvbGxlcl9tYXhTbG9wZUNsaW1iQW5nbGUA6Qs1cmF3a2luZW1hdGljY2hhcmFjdGVyY29udHJvbGxlcl9zZXRNYXhTbG9wZUNsaW1iQW5nbGUAlQwycmF3a2luZW1hdGljY2hhcmFjdGVyY29udHJvbGxlcl9taW5TbG9wZVNsaWRlQW5nbGUA6gs1cmF3a2luZW1hdGljY2hhcmFjdGVyY29udHJvbGxlcl9zZXRNaW5TbG9wZVNsaWRlQW5nbGUAlgw0cmF3a2luZW1hdGljY2hhcmFjdGVyY29udHJvbGxlcl9zbmFwVG9Hcm91bmREaXN0YW5jZQCoCzJyYXdraW5lbWF0aWNjaGFyYWN0ZXJjb250cm9sbGVyX2VuYWJsZVNuYXBUb0dyb3VuZADrCzNyYXdraW5lbWF0aWNjaGFyYWN0ZXJjb250cm9sbGVyX2Rpc2FibGVTbmFwVG9Hcm91bmQAlwwzcmF3a2luZW1hdGljY2hhcmFjdGVyY29udHJvbGxlcl9zbmFwVG9Hcm91bmRFbmFibGVkANkLN3Jhd2tpbmVtYXRpY2NoYXJhY3RlcmNvbnRyb2xsZXJfY29tcHV0ZUNvbGxpZGVyTW92ZW1lbnQAwgIwcmF3a2luZW1hdGljY2hhcmFjdGVyY29udHJvbGxlcl9jb21wdXRlZE1vdmVtZW50AM0IMHJhd2tpbmVtYXRpY2NoYXJhY3RlcmNvbnRyb2xsZXJfY29tcHV0ZWRHcm91bmRlZADsCzVyYXdraW5lbWF0aWNjaGFyYWN0ZXJjb250cm9sbGVyX251bUNvbXB1dGVkQ29sbGlzaW9ucwDtCzFyYXdraW5lbWF0aWNjaGFyYWN0ZXJjb250cm9sbGVyX2NvbXB1dGVkQ29sbGlzaW9uAMkGIF9fd2JnX3Jhd2NoYXJhY3RlcmNvbGxpc2lvbl9mcmVlAJ0JGXJhd2NoYXJhY3RlcmNvbGxpc2lvbl9uZXcAtQsccmF3Y2hhcmFjdGVyY29sbGlzaW9uX2hhbmRsZQDuCy1yYXdjaGFyYWN0ZXJjb2xsaXNpb25fdHJhbnNsYXRpb25EZWx0YUFwcGxpZWQAzggvcmF3Y2hhcmFjdGVyY29sbGlzaW9uX3RyYW5zbGF0aW9uRGVsdGFSZW1haW5pbmcAzwgZcmF3Y2hhcmFjdGVyY29sbGlzaW9uX3RvaQDvCyNyYXdjaGFyYWN0ZXJjb2xsaXNpb25fd29ybGRXaXRuZXNzMQDQCCNyYXdjaGFyYWN0ZXJjb2xsaXNpb25fd29ybGRXaXRuZXNzMgDLBSJyYXdjaGFyYWN0ZXJjb2xsaXNpb25fd29ybGROb3JtYWwxANEIInJhd2NoYXJhY3RlcmNvbGxpc2lvbl93b3JsZE5vcm1hbDIAhAYbX193YmdfcmF3cGlkY29udHJvbGxlcl9mcmVlAJ4JFHJhd3BpZGNvbnRyb2xsZXJfbmV3AMEKF3Jhd3BpZGNvbnRyb2xsZXJfc2V0X2twAKUIF3Jhd3BpZGNvbnRyb2xsZXJfc2V0X2tpAKYIF3Jhd3BpZGNvbnRyb2xsZXJfc2V0X2tkAKcIHnJhd3BpZGNvbnRyb2xsZXJfc2V0X2F4ZXNfbWFzawC2CyByYXdwaWRjb250cm9sbGVyX3Jlc2V0X2ludGVncmFscwDdCShyYXdwaWRjb250cm9sbGVyX2FwcGx5X2xpbmVhcl9jb3JyZWN0aW9uAKwDKXJhd3BpZGNvbnRyb2xsZXJfYXBwbHlfYW5ndWxhcl9jb3JyZWN0aW9uAK0DInJhd3BpZGNvbnRyb2xsZXJfbGluZWFyX2NvcnJlY3Rpb24AhAMjcmF3cGlkY29udHJvbGxlcl9hbmd1bGFyX2NvcnJlY3Rpb24AhQMtX193YmdfcmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9mcmVlAOMGJnJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfbmV3ALELOHJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfY3VycmVudF92ZWhpY2xlX3NwZWVkAPALKnJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfY2hhc3NpcwDxCzByYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX2luZGV4X3VwX2F4aXMA8gs0cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9zZXRfaW5kZXhfdXBfYXhpcwCYDDVyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX2luZGV4X2ZvcndhcmRfYXhpcwDzCzlyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3NldF9pbmRleF9mb3J3YXJkX2F4aXMAmQwscmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9hZGRfd2hlZWwA1AMtcmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9udW1fd2hlZWxzAPQLMXJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfdXBkYXRlX3ZlaGljbGUAiANEcmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9jaGFzc2lzX2Nvbm5lY3Rpb25fcG9pbnRfY3MA9AZIcmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9zZXRfd2hlZWxfY2hhc3Npc19jb25uZWN0aW9uX3BvaW50X2NzAM0FP3Jhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfd2hlZWxfc3VzcGVuc2lvbl9yZXN0X2xlbmd0aACpCkNyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3NldF93aGVlbF9zdXNwZW5zaW9uX3Jlc3RfbGVuZ3RoAPwIPnJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfd2hlZWxfbWF4X3N1c3BlbnNpb25fdHJhdmVsAKoKQnJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfc2V0X3doZWVsX21heF9zdXNwZW5zaW9uX3RyYXZlbAD9CC9yYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3doZWVsX3JhZGl1cwCrCjNyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3NldF93aGVlbF9yYWRpdXMA/gg9cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9zdXNwZW5zaW9uX3N0aWZmbmVzcwCsCkFyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3NldF93aGVlbF9zdXNwZW5zaW9uX3N0aWZmbmVzcwD/CD9yYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3doZWVsX3N1c3BlbnNpb25fY29tcHJlc3Npb24ArQpDcmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9zZXRfd2hlZWxfc3VzcGVuc2lvbl9jb21wcmVzc2lvbgCACT5yYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3doZWVsX3N1c3BlbnNpb25fcmVsYXhhdGlvbgCuCkJyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3NldF93aGVlbF9zdXNwZW5zaW9uX3JlbGF4YXRpb24AgQk9cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9tYXhfc3VzcGVuc2lvbl9mb3JjZQCvCkFyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3NldF93aGVlbF9tYXhfc3VzcGVuc2lvbl9mb3JjZQCCCS5yYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3doZWVsX2JyYWtlALAKMnJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfc2V0X3doZWVsX2JyYWtlAIMJMXJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfd2hlZWxfc3RlZXJpbmcAsQo1cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9zZXRfd2hlZWxfc3RlZXJpbmcAhAk1cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9lbmdpbmVfZm9yY2UAsgo5cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9zZXRfd2hlZWxfZW5naW5lX2ZvcmNlAIUJNXJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfd2hlZWxfZGlyZWN0aW9uX2NzAPUGOXJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfc2V0X3doZWVsX2RpcmVjdGlvbl9jcwDOBTByYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3doZWVsX2F4bGVfY3MA9gY0cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9zZXRfd2hlZWxfYXhsZV9jcwDPBTZyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3doZWVsX2ZyaWN0aW9uX3NsaXAAswo6cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9zZXRfd2hlZWxfZnJpY3Rpb25fc2xpcACGCUByYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3doZWVsX3NpZGVfZnJpY3Rpb25fc3RpZmZuZXNzALQKRHJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfc2V0X3doZWVsX3NpZGVfZnJpY3Rpb25fc3RpZmZuZXNzAIcJMXJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfd2hlZWxfcm90YXRpb24AtQo4cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9mb3J3YXJkX2ltcHVsc2UAtgo1cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9zaWRlX2ltcHVsc2UAtwo5cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9zdXNwZW5zaW9uX2ZvcmNlALgKOnJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfd2hlZWxfY29udGFjdF9ub3JtYWxfd3MA9wY5cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9jb250YWN0X3BvaW50X3dzAPgGOnJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfd2hlZWxfc3VzcGVuc2lvbl9sZW5ndGgAuQo2cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9oYXJkX3BvaW50X3dzAPkGNnJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfd2hlZWxfaXNfaW5fY29udGFjdADCCjZyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3doZWVsX2dyb3VuZF9vYmplY3QAmQkXX193YmdfcmF3Y2Nkc29sdmVyX2ZyZWUAnwkccmF3aW1wdWxzZWpvaW50c2V0X2pvaW50VHlwZQCEByNyYXdpbXB1bHNlam9pbnRzZXRfam9pbnRCb2R5SGFuZGxlMQDhByNyYXdpbXB1bHNlam9pbnRzZXRfam9pbnRCb2R5SGFuZGxlMgDiBx9yYXdpbXB1bHNlam9pbnRzZXRfam9pbnRGcmFtZVgxANsGH3Jhd2ltcHVsc2Vqb2ludHNldF9qb2ludEZyYW1lWDIA3AYfcmF3aW1wdWxzZWpvaW50c2V0X2pvaW50QW5jaG9yMQCFBh9yYXdpbXB1bHNlam9pbnRzZXRfam9pbnRBbmNob3IyAIYGInJhd2ltcHVsc2Vqb2ludHNldF9qb2ludFNldEFuY2hvcjEA0gUicmF3aW1wdWxzZWpvaW50c2V0X2pvaW50U2V0QW5jaG9yMgDTBSdyYXdpbXB1bHNlam9pbnRzZXRfam9pbnRDb250YWN0c0VuYWJsZWQA4wcqcmF3aW1wdWxzZWpvaW50c2V0X2pvaW50U2V0Q29udGFjdHNFbmFibGVkALgIJXJhd2ltcHVsc2Vqb2ludHNldF9qb2ludExpbWl0c0VuYWJsZWQA/AYhcmF3aW1wdWxzZWpvaW50c2V0X2pvaW50TGltaXRzTWluAKIHIXJhd2ltcHVsc2Vqb2ludHNldF9qb2ludExpbWl0c01heACjByFyYXdpbXB1bHNlam9pbnRzZXRfam9pbnRTZXRMaW1pdHMAtQcrcmF3aW1wdWxzZWpvaW50c2V0X2pvaW50Q29uZmlndXJlTW90b3JNb2RlbACBBy5yYXdpbXB1bHNlam9pbnRzZXRfam9pbnRDb25maWd1cmVNb3RvclZlbG9jaXR5AMMHLnJhd2ltcHVsc2Vqb2ludHNldF9qb2ludENvbmZpZ3VyZU1vdG9yUG9zaXRpb24AxAcmcmF3aW1wdWxzZWpvaW50c2V0X2pvaW50Q29uZmlndXJlTW90b3IAxQcdX193YmdfcmF3aW1wdWxzZWpvaW50c2V0X2ZyZWUAyAcWcmF3aW1wdWxzZWpvaW50c2V0X25ldwDDCh5yYXdpbXB1bHNlam9pbnRzZXRfY3JlYXRlSm9pbnQAtgYZcmF3aW1wdWxzZWpvaW50c2V0X3JlbW92ZQCLCRZyYXdpbXB1bHNlam9pbnRzZXRfbGVuAPILG3Jhd2ltcHVsc2Vqb2ludHNldF9jb250YWlucwDSCCVyYXdpbXB1bHNlam9pbnRzZXRfZm9yRWFjaEpvaW50SGFuZGxlAIcGMnJhd2ltcHVsc2Vqb2ludHNldF9mb3JFYWNoSm9pbnRBdHRhY2hlZFRvUmlnaWRCb2R5AIwJI19fd2JnX3Jhd2ludGVncmF0aW9ucGFyYW1ldGVyc19mcmVlAKAJHHJhd2ludGVncmF0aW9ucGFyYW1ldGVyc19uZXcA0gsbcmF3aW50ZWdyYXRpb25wYXJhbWV0ZXJzX2R0APULJHJhd2ludGVncmF0aW9ucGFyYW1ldGVyc19jb250YWN0X2VycADSCjVyYXdpbnRlZ3JhdGlvbnBhcmFtZXRlcnNfbm9ybWFsaXplZEFsbG93ZWRMaW5lYXJFcnJvcgD2CzVyYXdpbnRlZ3JhdGlvbnBhcmFtZXRlcnNfbm9ybWFsaXplZFByZWRpY3Rpb25EaXN0YW5jZQD3CyxyYXdpbnRlZ3JhdGlvbnBhcmFtZXRlcnNfbnVtU29sdmVySXRlcmF0aW9ucwD4CyZyYXdpbnRlZ3JhdGlvbnBhcmFtZXRlcnNfbWluSXNsYW5kU2l6ZQD5CydyYXdpbnRlZ3JhdGlvbnBhcmFtZXRlcnNfbWF4Q2NkU3Vic3RlcHMA+gsfcmF3aW50ZWdyYXRpb25wYXJhbWV0ZXJzX3NldF9kdACaDDZyYXdpbnRlZ3JhdGlvbnBhcmFtZXRlcnNfc2V0X2NvbnRhY3RfbmF0dXJhbF9mcmVxdWVuY3kAmww5cmF3aW50ZWdyYXRpb25wYXJhbWV0ZXJzX3NldF9ub3JtYWxpemVkQWxsb3dlZExpbmVhckVycm9yAJwMOXJhd2ludGVncmF0aW9ucGFyYW1ldGVyc19zZXRfbm9ybWFsaXplZFByZWRpY3Rpb25EaXN0YW5jZQCdDDByYXdpbnRlZ3JhdGlvbnBhcmFtZXRlcnNfc2V0X251bVNvbHZlckl0ZXJhdGlvbnMAngwqcmF3aW50ZWdyYXRpb25wYXJhbWV0ZXJzX3NldF9taW5Jc2xhbmRTaXplAJ8MK3Jhd2ludGVncmF0aW9ucGFyYW1ldGVyc19zZXRfbWF4Q2NkU3Vic3RlcHMAoAwncmF3aW50ZWdyYXRpb25wYXJhbWV0ZXJzX3NldF9sZW5ndGhVbml0AKEMG19fd2JnX3Jhd2lzbGFuZG1hbmFnZXJfZnJlZQCkBxRyYXdpc2xhbmRtYW5hZ2VyX25ldwDTCy1yYXdpc2xhbmRtYW5hZ2VyX2ZvckVhY2hBY3RpdmVSaWdpZEJvZHlIYW5kbGUAlwYaX193YmdfcmF3Z2VuZXJpY2pvaW50X2ZyZWUAoQkXcmF3Z2VuZXJpY2pvaW50X2dlbmVyaWMAyAIWcmF3Z2VuZXJpY2pvaW50X3NwcmluZwCtBBRyYXdnZW5lcmljam9pbnRfcm9wZQC4BBlyYXdnZW5lcmljam9pbnRfc3BoZXJpY2FsALwEGXJhd2dlbmVyaWNqb2ludF9wcmlzbWF0aWMAtgIVcmF3Z2VuZXJpY2pvaW50X2ZpeGVkALoCGHJhd2dlbmVyaWNqb2ludF9yZXZvbHV0ZQDYAh5yYXdtdWx0aWJvZHlqb2ludHNldF9qb2ludFR5cGUAswYhcmF3bXVsdGlib2R5am9pbnRzZXRfam9pbnRGcmFtZVgxAJMGIXJhd211bHRpYm9keWpvaW50c2V0X2pvaW50RnJhbWVYMgCUBiFyYXdtdWx0aWJvZHlqb2ludHNldF9qb2ludEFuY2hvcjEAwAUhcmF3bXVsdGlib2R5am9pbnRzZXRfam9pbnRBbmNob3IyAMEFKXJhd211bHRpYm9keWpvaW50c2V0X2pvaW50Q29udGFjdHNFbmFibGVkAO8GLHJhd211bHRpYm9keWpvaW50c2V0X2pvaW50U2V0Q29udGFjdHNFbmFibGVkAJwHJ3Jhd211bHRpYm9keWpvaW50c2V0X2pvaW50TGltaXRzRW5hYmxlZACnBiNyYXdtdWx0aWJvZHlqb2ludHNldF9qb2ludExpbWl0c01pbgDDBiNyYXdtdWx0aWJvZHlqb2ludHNldF9qb2ludExpbWl0c01heADEBh9fX3diZ19yYXdtdWx0aWJvZHlqb2ludHNldF9mcmVlAMkHGHJhd211bHRpYm9keWpvaW50c2V0X25ldwDECiByYXdtdWx0aWJvZHlqb2ludHNldF9jcmVhdGVKb2ludAC3BhtyYXdtdWx0aWJvZHlqb2ludHNldF9yZW1vdmUAlAkdcmF3bXVsdGlib2R5am9pbnRzZXRfY29udGFpbnMArAgncmF3bXVsdGlib2R5am9pbnRzZXRfZm9yRWFjaEpvaW50SGFuZGxlAJAJNHJhd211bHRpYm9keWpvaW50c2V0X2ZvckVhY2hKb2ludEF0dGFjaGVkVG9SaWdpZEJvZHkAjQkdcmF3cmlnaWRib2R5c2V0X3JiVHJhbnNsYXRpb24AiAYacmF3cmlnaWRib2R5c2V0X3JiUm90YXRpb24A5QYXcmF3cmlnaWRib2R5c2V0X3JiU2xlZXAA+AgccmF3cmlnaWRib2R5c2V0X3JiSXNTbGVlcGluZwD1BxpyYXdyaWdpZGJvZHlzZXRfcmJJc01vdmluZwCeCCFyYXdyaWdpZGJvZHlzZXRfcmJOZXh0VHJhbnNsYXRpb24AiQYecmF3cmlnaWRib2R5c2V0X3JiTmV4dFJvdGF0aW9uAOYGIHJhd3JpZ2lkYm9keXNldF9yYlNldFRyYW5zbGF0aW9uALMJHXJhd3JpZ2lkYm9keXNldF9yYlNldFJvdGF0aW9uAK0JG3Jhd3JpZ2lkYm9keXNldF9yYlNldExpbnZlbAD8BRtyYXdyaWdpZGJvZHlzZXRfcmJTZXRBbmd2ZWwA/QUtcmF3cmlnaWRib2R5c2V0X3JiU2V0TmV4dEtpbmVtYXRpY1RyYW5zbGF0aW9uAPYHKnJhd3JpZ2lkYm9keXNldF9yYlNldE5leHRLaW5lbWF0aWNSb3RhdGlvbgCjBjZyYXdyaWdpZGJvZHlzZXRfcmJSZWNvbXB1dGVNYXNzUHJvcGVydGllc0Zyb21Db2xsaWRlcnMAlQYjcmF3cmlnaWRib2R5c2V0X3JiU2V0QWRkaXRpb25hbE1hc3MA9wctcmF3cmlnaWRib2R5c2V0X3JiU2V0QWRkaXRpb25hbE1hc3NQcm9wZXJ0aWVzALEDGHJhd3JpZ2lkYm9keXNldF9yYkxpbnZlbACKBhhyYXdyaWdpZGJvZHlzZXRfcmJBbmd2ZWwAiwYhcmF3cmlnaWRib2R5c2V0X3JiVmVsb2NpdHlBdFBvaW50AMIEInJhd3JpZ2lkYm9keXNldF9yYkxvY2tUcmFuc2xhdGlvbnMAtAYocmF3cmlnaWRib2R5c2V0X3JiU2V0RW5hYmxlZFRyYW5zbGF0aW9ucwDCBR9yYXdyaWdpZGJvZHlzZXRfcmJMb2NrUm90YXRpb25zALUGJXJhd3JpZ2lkYm9keXNldF9yYlNldEVuYWJsZWRSb3RhdGlvbnMAwwUgcmF3cmlnaWRib2R5c2V0X3JiRG9taW5hbmNlR3JvdXAA+AcjcmF3cmlnaWRib2R5c2V0X3JiU2V0RG9taW5hbmNlR3JvdXAA1AcbcmF3cmlnaWRib2R5c2V0X3JiRW5hYmxlQ2NkANMIJnJhd3JpZ2lkYm9keXNldF9yYlNldFNvZnRDY2RQcmVkaWN0aW9uAOYIFnJhd3JpZ2lkYm9keXNldF9yYk1hc3MAwAcZcmF3cmlnaWRib2R5c2V0X3JiSW52TWFzcwD5ByJyYXdyaWdpZGJvZHlzZXRfcmJFZmZlY3RpdmVJbnZNYXNzAIwGGnJhd3JpZ2lkYm9keXNldF9yYkxvY2FsQ29tAI0GGnJhd3JpZ2lkYm9keXNldF9yYldvcmxkQ29tAI4GJXJhd3JpZ2lkYm9keXNldF9yYkludlByaW5jaXBhbEluZXJ0aWEAjwYscmF3cmlnaWRib2R5c2V0X3JiUHJpbmNpcGFsSW5lcnRpYUxvY2FsRnJhbWUA5wYicmF3cmlnaWRib2R5c2V0X3JiUHJpbmNpcGFsSW5lcnRpYQC8BipyYXdyaWdpZGJvZHlzZXRfcmJFZmZlY3RpdmVXb3JsZEludkluZXJ0aWEAmAYpcmF3cmlnaWRib2R5c2V0X3JiRWZmZWN0aXZlQW5ndWxhckluZXJ0aWEAvQYYcmF3cmlnaWRib2R5c2V0X3JiV2FrZVVwAM8HHnJhd3JpZ2lkYm9keXNldF9yYklzQ2NkRW5hYmxlZAD6ByNyYXdyaWdpZGJvZHlzZXRfcmJTb2Z0Q2NkUHJlZGljdGlvbgD7Bx5yYXdyaWdpZGJvZHlzZXRfcmJOdW1Db2xsaWRlcnMA/AcacmF3cmlnaWRib2R5c2V0X3JiQ29sbGlkZXIAhQcacmF3cmlnaWRib2R5c2V0X3JiQm9keVR5cGUA/QcdcmF3cmlnaWRib2R5c2V0X3JiU2V0Qm9keVR5cGUA7AcZcmF3cmlnaWRib2R5c2V0X3JiSXNGaXhlZADQBx1yYXdyaWdpZGJvZHlzZXRfcmJJc0tpbmVtYXRpYwDRBxtyYXdyaWdpZGJvZHlzZXRfcmJJc0R5bmFtaWMA1QcfcmF3cmlnaWRib2R5c2V0X3JiTGluZWFyRGFtcGluZwD+ByByYXdyaWdpZGJvZHlzZXRfcmJBbmd1bGFyRGFtcGluZwD/ByJyYXdyaWdpZGJvZHlzZXRfcmJTZXRMaW5lYXJEYW1waW5nAOcII3Jhd3JpZ2lkYm9keXNldF9yYlNldEFuZ3VsYXJEYW1waW5nAOgIHHJhd3JpZ2lkYm9keXNldF9yYlNldEVuYWJsZWQA1AgbcmF3cmlnaWRib2R5c2V0X3JiSXNFbmFibGVkAIAIHnJhd3JpZ2lkYm9keXNldF9yYkdyYXZpdHlTY2FsZQCBCCFyYXdyaWdpZGJvZHlzZXRfcmJTZXRHcmF2aXR5U2NhbGUApQcdcmF3cmlnaWRib2R5c2V0X3JiUmVzZXRGb3JjZXMA1QgecmF3cmlnaWRib2R5c2V0X3JiUmVzZXRUb3JxdWVzANYIGnJhd3JpZ2lkYm9keXNldF9yYkFkZEZvcmNlAP4FHnJhd3JpZ2lkYm9keXNldF9yYkFwcGx5SW1wdWxzZQD/BRtyYXdyaWdpZGJvZHlzZXRfcmJBZGRUb3JxdWUAgAYkcmF3cmlnaWRib2R5c2V0X3JiQXBwbHlUb3JxdWVJbXB1bHNlAIEGIXJhd3JpZ2lkYm9keXNldF9yYkFkZEZvcmNlQXRQb2ludADLBCVyYXdyaWdpZGJvZHlzZXRfcmJBcHBseUltcHVsc2VBdFBvaW50AJQELHJhd3JpZ2lkYm9keXNldF9yYkFkZGl0aW9uYWxTb2x2ZXJJdGVyYXRpb25zAIIIL3Jhd3JpZ2lkYm9keXNldF9yYlNldEFkZGl0aW9uYWxTb2x2ZXJJdGVyYXRpb25zAOkIGnJhd3JpZ2lkYm9keXNldF9yYlVzZXJEYXRhAO0HHXJhd3JpZ2lkYm9keXNldF9yYlNldFVzZXJEYXRhAMoIG3Jhd3JpZ2lkYm9keXNldF9yYlVzZXJGb3JjZQDFBhxyYXdyaWdpZGJvZHlzZXRfcmJVc2VyVG9ycXVlAMYGGl9fd2JnX3Jhd3JpZ2lkYm9keXNldF9mcmVlAO4HE3Jhd3JpZ2lkYm9keXNldF9uZXcA1gofcmF3cmlnaWRib2R5c2V0X2NyZWF0ZVJpZ2lkQm9keQDeARZyYXdyaWdpZGJvZHlzZXRfcmVtb3ZlAPUCE3Jhd3JpZ2lkYm9keXNldF9sZW4A+wsYcmF3cmlnaWRib2R5c2V0X2NvbnRhaW5zAOoIJnJhd3JpZ2lkYm9keXNldF9mb3JFYWNoUmlnaWRCb2R5SGFuZGxlAJEJOXJhd3JpZ2lkYm9keXNldF9wcm9wYWdhdGVNb2RpZmllZEJvZHlQb3NpdGlvbnNUb0NvbGxpZGVycwD9BhhfX3diZ19yYXdicm9hZHBoYXNlX2ZyZWUAygcRcmF3YnJvYWRwaGFzZV9uZXcAlQkVcmF3YnJvYWRwaGFzZV9jYXN0UmF5AJICIXJhd2Jyb2FkcGhhc2VfY2FzdFJheUFuZEdldE5vcm1hbACTAiJyYXdicm9hZHBoYXNlX2ludGVyc2VjdGlvbnNXaXRoUmF5AOABI3Jhd2Jyb2FkcGhhc2VfaW50ZXJzZWN0aW9uV2l0aFNoYXBlANUBGnJhd2Jyb2FkcGhhc2VfcHJvamVjdFBvaW50ALcCJ3Jhd2Jyb2FkcGhhc2VfcHJvamVjdFBvaW50QW5kR2V0RmVhdHVyZQC7AiRyYXdicm9hZHBoYXNlX2ludGVyc2VjdGlvbnNXaXRoUG9pbnQAmAIXcmF3YnJvYWRwaGFzZV9jYXN0U2hhcGUA0wEkcmF3YnJvYWRwaGFzZV9pbnRlcnNlY3Rpb25zV2l0aFNoYXBlANkBL3Jhd2Jyb2FkcGhhc2VfY29sbGlkZXJzV2l0aEFhYmJJbnRlcnNlY3RpbmdBYWJiALwCHHJhd2NvbGxpZGVyc2V0X2NvVHJhbnNsYXRpb24AkAYZcmF3Y29sbGlkZXJzZXRfY29Sb3RhdGlvbgDoBiVyYXdjb2xsaWRlcnNldF9jb1RyYW5zbGF0aW9uV3J0UGFyZW50AOwFInJhd2NvbGxpZGVyc2V0X2NvUm90YXRpb25XcnRQYXJlbnQAuAYfcmF3Y29sbGlkZXJzZXRfY29TZXRUcmFuc2xhdGlvbgDWByhyYXdjb2xsaWRlcnNldF9jb1NldFRyYW5zbGF0aW9uV3J0UGFyZW50AMEHHHJhd2NvbGxpZGVyc2V0X2NvU2V0Um90YXRpb24AoAYlcmF3Y29sbGlkZXJzZXRfY29TZXRSb3RhdGlvbldydFBhcmVudADACRlyYXdjb2xsaWRlcnNldF9jb0lzU2Vuc29yAIMIGnJhd2NvbGxpZGVyc2V0X2NvU2hhcGVUeXBlAI4JIHJhd2NvbGxpZGVyc2V0X2NvSGFsZnNwYWNlTm9ybWFsAK4FHHJhd2NvbGxpZGVyc2V0X2NvSGFsZkV4dGVudHMAnQUfcmF3Y29sbGlkZXJzZXRfY29TZXRIYWxmRXh0ZW50cwDUBhdyYXdjb2xsaWRlcnNldF9jb1JhZGl1cwC5CBpyYXdjb2xsaWRlcnNldF9jb1NldFJhZGl1cwDOCRtyYXdjb2xsaWRlcnNldF9jb0hhbGZIZWlnaHQAuggecmF3Y29sbGlkZXJzZXRfY29TZXRIYWxmSGVpZ2h0AM8JHHJhd2NvbGxpZGVyc2V0X2NvUm91bmRSYWRpdXMAuwgfcmF3Y29sbGlkZXJzZXRfY29TZXRSb3VuZFJhZGl1cwDQCRpyYXdjb2xsaWRlcnNldF9jb1ZveGVsRGF0YQCoBhpyYXdjb2xsaWRlcnNldF9jb1ZveGVsU2l6ZQCxBRlyYXdjb2xsaWRlcnNldF9jb1NldFZveGVsAJYHJXJhd2NvbGxpZGVyc2V0X2NvUHJvcGFnYXRlVm94ZWxDaGFuZ2UArgkjcmF3Y29sbGlkZXJzZXRfY29Db21iaW5lVm94ZWxTdGF0ZXMAwQkZcmF3Y29sbGlkZXJzZXRfY29WZXJ0aWNlcwCpBhhyYXdjb2xsaWRlcnNldF9jb0luZGljZXMAqgYdcmF3Y29sbGlkZXJzZXRfY29UcmlNZXNoRmxhZ3MA3QYhcmF3Y29sbGlkZXJzZXRfY29IZWlnaHRGaWVsZEZsYWdzAN4GI3Jhd2NvbGxpZGVyc2V0X2NvSGVpZ2h0ZmllbGRIZWlnaHRzAKsGIXJhd2NvbGxpZGVyc2V0X2NvSGVpZ2h0ZmllbGRTY2FsZQCcBSFyYXdjb2xsaWRlcnNldF9jb0hlaWdodGZpZWxkTlJvd3MAvgYhcmF3Y29sbGlkZXJzZXRfY29IZWlnaHRmaWVsZE5Db2xzAL8GF3Jhd2NvbGxpZGVyc2V0X2NvUGFyZW50AJgHG3Jhd2NvbGxpZGVyc2V0X2NvU2V0RW5hYmxlZACmBxpyYXdjb2xsaWRlcnNldF9jb0lzRW5hYmxlZADXBx9yYXdjb2xsaWRlcnNldF9jb1NldENvbnRhY3RTa2luAOsIHHJhd2NvbGxpZGVyc2V0X2NvQ29udGFjdFNraW4AhAgZcmF3Y29sbGlkZXJzZXRfY29GcmljdGlvbgCFCBxyYXdjb2xsaWRlcnNldF9jb1Jlc3RpdHV0aW9uAIYIGHJhd2NvbGxpZGVyc2V0X2NvRGVuc2l0eQCfCBVyYXdjb2xsaWRlcnNldF9jb01hc3MAoAgXcmF3Y29sbGlkZXJzZXRfY29Wb2x1bWUAoQggcmF3Y29sbGlkZXJzZXRfY29Db2xsaXNpb25Hcm91cHMAuQcdcmF3Y29sbGlkZXJzZXRfY29Tb2x2ZXJHcm91cHMAugcccmF3Y29sbGlkZXJzZXRfY29BY3RpdmVIb29rcwCHCCVyYXdjb2xsaWRlcnNldF9jb0FjdGl2ZUNvbGxpc2lvblR5cGVzAIgIHXJhd2NvbGxpZGVyc2V0X2NvQWN0aXZlRXZlbnRzAIkIK3Jhd2NvbGxpZGVyc2V0X2NvQ29udGFjdEZvcmNlRXZlbnRUaHJlc2hvbGQAiggecmF3Y29sbGlkZXJzZXRfY29Db250YWluc1BvaW50AJIFGnJhd2NvbGxpZGVyc2V0X2NvQ2FzdFNoYXBlAJYCHXJhd2NvbGxpZGVyc2V0X2NvQ2FzdENvbGxpZGVyAM8DIHJhd2NvbGxpZGVyc2V0X2NvSW50ZXJzZWN0c1NoYXBlAO4CHXJhd2NvbGxpZGVyc2V0X2NvQ29udGFjdFNoYXBlAIQCIHJhd2NvbGxpZGVyc2V0X2NvQ29udGFjdENvbGxpZGVyAKwGHXJhd2NvbGxpZGVyc2V0X2NvUHJvamVjdFBvaW50AKQEHnJhd2NvbGxpZGVyc2V0X2NvSW50ZXJzZWN0c1JheQDSAxhyYXdjb2xsaWRlcnNldF9jb0Nhc3RSYXkAswMkcmF3Y29sbGlkZXJzZXRfY29DYXN0UmF5QW5kR2V0Tm9ybWFsAOgCGnJhd2NvbGxpZGVyc2V0X2NvU2V0U2Vuc29yANIHH3Jhd2NvbGxpZGVyc2V0X2NvU2V0UmVzdGl0dXRpb24A7AgccmF3Y29sbGlkZXJzZXRfY29TZXRGcmljdGlvbgDtCCRyYXdjb2xsaWRlcnNldF9jb0ZyaWN0aW9uQ29tYmluZVJ1bGUAiwgncmF3Y29sbGlkZXJzZXRfY29TZXRGcmljdGlvbkNvbWJpbmVSdWxlALwIJ3Jhd2NvbGxpZGVyc2V0X2NvUmVzdGl0dXRpb25Db21iaW5lUnVsZQCMCCpyYXdjb2xsaWRlcnNldF9jb1NldFJlc3RpdHV0aW9uQ29tYmluZVJ1bGUAvQgjcmF3Y29sbGlkZXJzZXRfY29TZXRDb2xsaXNpb25Hcm91cHMAkQcgcmF3Y29sbGlkZXJzZXRfY29TZXRTb2x2ZXJHcm91cHMAkgcfcmF3Y29sbGlkZXJzZXRfY29TZXRBY3RpdmVIb29rcwCtCCByYXdjb2xsaWRlcnNldF9jb1NldEFjdGl2ZUV2ZW50cwC+CChyYXdjb2xsaWRlcnNldF9jb1NldEFjdGl2ZUNvbGxpc2lvblR5cGVzAL8IGXJhd2NvbGxpZGVyc2V0X2NvU2V0U2hhcGUA0AUucmF3Y29sbGlkZXJzZXRfY29TZXRDb250YWN0Rm9yY2VFdmVudFRocmVzaG9sZADuCBtyYXdjb2xsaWRlcnNldF9jb1NldERlbnNpdHkA7wgYcmF3Y29sbGlkZXJzZXRfY29TZXRNYXNzAPAIInJhd2NvbGxpZGVyc2V0X2NvU2V0TWFzc1Byb3BlcnRpZXMAugMZX193YmdfcmF3Y29sbGlkZXJzZXRfZnJlZQCnBxJyYXdjb2xsaWRlcnNldF9uZXcAmwoScmF3Y29sbGlkZXJzZXRfbGVuAPwLF3Jhd2NvbGxpZGVyc2V0X2NvbnRhaW5zAPEIHXJhd2NvbGxpZGVyc2V0X2NyZWF0ZUNvbGxpZGVyAOYBFXJhd2NvbGxpZGVyc2V0X3JlbW92ZQCPBCRyYXdjb2xsaWRlcnNldF9mb3JFYWNoQ29sbGlkZXJIYW5kbGUAkgkaX193YmdfcmF3c2hhcGVjb250YWN0X2ZyZWUAogkZX193YmdfcmF3bmFycm93cGhhc2VfZnJlZQCyCBJyYXduYXJyb3dwaGFzZV9uZXcAmQshcmF3bmFycm93cGhhc2VfY29udGFjdF9wYWlyc193aXRoAJoJG3Jhd25hcnJvd3BoYXNlX2NvbnRhY3RfcGFpcgDfBiZyYXduYXJyb3dwaGFzZV9pbnRlcnNlY3Rpb25fcGFpcnNfd2l0aACbCSByYXduYXJyb3dwaGFzZV9pbnRlcnNlY3Rpb25fcGFpcgDvBx1fX3diZ19yYXdjb250YWN0bWFuaWZvbGRfZnJlZQCjCRhyYXdjb250YWN0cGFpcl9jb2xsaWRlcjEAmgsYcmF3Y29udGFjdHBhaXJfY29sbGlkZXIyAJsLInJhd2NvbnRhY3RwYWlyX251bUNvbnRhY3RNYW5pZm9sZHMAnAsecmF3Y29udGFjdHBhaXJfY29udGFjdE1hbmlmb2xkAPkIGXJhd2NvbnRhY3RtYW5pZm9sZF9ub3JtYWwAjQgbcmF3Y29udGFjdG1hbmlmb2xkX2xvY2FsX24xAI4IG3Jhd2NvbnRhY3RtYW5pZm9sZF9sb2NhbF9uMgCPCBxyYXdjb250YWN0bWFuaWZvbGRfc3Vic2hhcGUxAJ0LHHJhd2NvbnRhY3RtYW5pZm9sZF9zdWJzaGFwZTIAngsfcmF3Y29udGFjdG1hbmlmb2xkX251bV9jb250YWN0cwCfCyNyYXdjb250YWN0bWFuaWZvbGRfY29udGFjdF9sb2NhbF9wMQDrBiNyYXdjb250YWN0bWFuaWZvbGRfY29udGFjdF9sb2NhbF9wMgDsBh9yYXdjb250YWN0bWFuaWZvbGRfY29udGFjdF9kaXN0AJwKH3Jhd2NvbnRhY3RtYW5pZm9sZF9jb250YWN0X2ZpZDEAnQofcmF3Y29udGFjdG1hbmlmb2xkX2NvbnRhY3RfZmlkMgCeCiJyYXdjb250YWN0bWFuaWZvbGRfY29udGFjdF9pbXB1bHNlAJ8KLHJhd2NvbnRhY3RtYW5pZm9sZF9jb250YWN0X3RhbmdlbnRfaW1wdWxzZV94AKAKLHJhd2NvbnRhY3RtYW5pZm9sZF9jb250YWN0X3RhbmdlbnRfaW1wdWxzZV95AKEKJnJhd2NvbnRhY3RtYW5pZm9sZF9udW1fc29sdmVyX2NvbnRhY3RzAKALJ3Jhd2NvbnRhY3RtYW5pZm9sZF9zb2x2ZXJfY29udGFjdF9wb2ludADtBiZyYXdjb250YWN0bWFuaWZvbGRfc29sdmVyX2NvbnRhY3RfZGlzdACiCipyYXdjb250YWN0bWFuaWZvbGRfc29sdmVyX2NvbnRhY3RfZnJpY3Rpb24AgwotcmF3Y29udGFjdG1hbmlmb2xkX3NvbHZlcl9jb250YWN0X3Jlc3RpdHV0aW9uAIQKMnJhd2NvbnRhY3RtYW5pZm9sZF9zb2x2ZXJfY29udGFjdF90YW5nZW50X3ZlbG9jaXR5AI0HHV9fd2JnX3Jhd3BvaW50cHJvamVjdGlvbl9mcmVlAKQJGHJhd3BvaW50cHJvamVjdGlvbl9wb2ludADXCBtyYXdwb2ludHByb2plY3Rpb25faXNJbnNpZGUA/QslX193YmdfcmF3cG9pbnRjb2xsaWRlcnByb2plY3Rpb25fZnJlZQClCSlyYXdwb2ludGNvbGxpZGVycHJvamVjdGlvbl9jb2xsaWRlckhhbmRsZQD+CyByYXdwb2ludGNvbGxpZGVycHJvamVjdGlvbl9wb2ludADYCCNyYXdwb2ludGNvbGxpZGVycHJvamVjdGlvbl9pc0luc2lkZQD/CyZyYXdwb2ludGNvbGxpZGVycHJvamVjdGlvbl9mZWF0dXJlVHlwZQCADCRyYXdwb2ludGNvbGxpZGVycHJvamVjdGlvbl9mZWF0dXJlSWQAqQsdX193YmdfcmF3cmF5aW50ZXJzZWN0aW9uX2ZyZWUApgkcX193YmdfcmF3cmF5Y29sbGlkZXJoaXRfZnJlZQCnCRNfX3diZ19yYXdzaGFwZV9mcmVlAMYHD3Jhd3NoYXBlX2N1Ym9pZACJCxRyYXdzaGFwZV9yb3VuZEN1Ym9pZAD/Cg1yYXdzaGFwZV9iYWxsAKoLEnJhd3NoYXBlX2hhbGZzcGFjZQCdBhByYXdzaGFwZV9jYXBzdWxlAMUJEXJhd3NoYXBlX2N5bGluZGVyAKELFnJhd3NoYXBlX3JvdW5kQ3lsaW5kZXIAigsNcmF3c2hhcGVfY29uZQCiCxJyYXdzaGFwZV9yb3VuZENvbmUAiwsPcmF3c2hhcGVfdm94ZWxzAPAGGXJhd3NoYXBlX3ZveGVsc0Zyb21Qb2ludHMA8QYRcmF3c2hhcGVfcG9seWxpbmUA7gkQcmF3c2hhcGVfdHJpbWVzaACvCRRyYXdzaGFwZV9oZWlnaHRmaWVsZACfBRByYXdzaGFwZV9zZWdtZW50ALsFEXJhd3NoYXBlX3RyaWFuZ2xlAIwEFnJhd3NoYXBlX3JvdW5kVHJpYW5nbGUAigQTcmF3c2hhcGVfY29udmV4SHVsbADvCRhyYXdzaGFwZV9yb3VuZENvbnZleEh1bGwA6AkTcmF3c2hhcGVfY29udmV4TWVzaAC0CRhyYXdzaGFwZV9yb3VuZENvbnZleE1lc2gAsAkScmF3c2hhcGVfY2FzdFNoYXBlAJkBGHJhd3NoYXBlX2ludGVyc2VjdHNTaGFwZQCVAhVyYXdzaGFwZV9jb250YWN0U2hhcGUA1AEWcmF3c2hhcGVfY29udGFpbnNQb2ludACMAxVyYXdzaGFwZV9wcm9qZWN0UG9pbnQA5wIWcmF3c2hhcGVfaW50ZXJzZWN0c1JheQC9AhByYXdzaGFwZV9jYXN0UmF5ALACHHJhd3NoYXBlX2Nhc3RSYXlBbmRHZXROb3JtYWwAlAIaX193YmdfcmF3c2hhcGVjYXN0aGl0X2ZyZWUAqAkYcmF3c2hhcGVjYXN0aGl0X3dpdG5lc3MxANkIF3Jhd3NoYXBlY2FzdGhpdF9ub3JtYWwxANoIF3Jhd3NoYXBlY2FzdGhpdF9ub3JtYWwyANsIIl9fd2JnX3Jhd2NvbGxpZGVyc2hhcGVjYXN0aGl0X2ZyZWUAqQkmcmF3Y29sbGlkZXJzaGFwZWNhc3RoaXRfdGltZV9vZl9pbXBhY3QAgQwgcmF3Y29sbGlkZXJzaGFwZWNhc3RoaXRfd2l0bmVzczEA3AggcmF3Y29sbGlkZXJzaGFwZWNhc3RoaXRfd2l0bmVzczIA3QgPcmF3cm90YXRpb25fbmV3ALAMFHJhd3JvdGF0aW9uX2lkZW50aXR5AP4MDXJhd3JvdGF0aW9uX3cAggwOcmF3dmVjdG9yX3plcm8Arw0NcmF3dmVjdG9yX25ldwC+DA9yYXd2ZWN0b3Jfc2V0X3kAogwPcmF3dmVjdG9yX3NldF96AKMMDXJhd3ZlY3Rvcl94eXoA0QkNcmF3dmVjdG9yX3l4egDSCQ1yYXd2ZWN0b3Jfenh5ANMJDXJhd3ZlY3Rvcl94enkA1AkNcmF3dmVjdG9yX3l6eADVCQ1yYXd2ZWN0b3Jfenl4ANYJFnJhd3NkcG1hdHJpeDNfZWxlbWVudHMAogghX193YmdfcmF3ZGVidWdyZW5kZXJwaXBlbGluZV9mcmVlAMsHGnJhd2RlYnVncmVuZGVycGlwZWxpbmVfbmV3AOkJH3Jhd2RlYnVncmVuZGVycGlwZWxpbmVfdmVydGljZXMA8ggdcmF3ZGVidWdyZW5kZXJwaXBlbGluZV9jb2xvcnMA8wgdcmF3ZGVidWdyZW5kZXJwaXBlbGluZV9yZW5kZXIAjgIYX193YmdfcmF3ZXZlbnRxdWV1ZV9mcmVlAMwHH19fd2JnX3Jhd2NvbnRhY3Rmb3JjZWV2ZW50X2ZyZWUAqgkecmF3Y29udGFjdGZvcmNlZXZlbnRfY29sbGlkZXIyAIMMIHJhd2NvbnRhY3Rmb3JjZWV2ZW50X3RvdGFsX2ZvcmNlAN4IKnJhd2NvbnRhY3Rmb3JjZWV2ZW50X3RvdGFsX2ZvcmNlX21hZ25pdHVkZQCEDChyYXdjb250YWN0Zm9yY2VldmVudF9tYXhfZm9yY2VfZGlyZWN0aW9uAN8IKHJhd2NvbnRhY3Rmb3JjZWV2ZW50X21heF9mb3JjZV9tYWduaXR1ZGUAhQwRcmF3ZXZlbnRxdWV1ZV9uZXcA0woicmF3ZXZlbnRxdWV1ZV9kcmFpbkNvbGxpc2lvbkV2ZW50cwC7CSVyYXdldmVudHF1ZXVlX2RyYWluQ29udGFjdEZvcmNlRXZlbnRzALwJE3Jhd2V2ZW50cXVldWVfY2xlYXIA5AcdX193YmdfcmF3cGh5c2ljc3BpcGVsaW5lX2ZyZWUAzQcWcmF3cGh5c2ljc3BpcGVsaW5lX25ldwCoBCdyYXdwaHlzaWNzcGlwZWxpbmVfc2V0X3Byb2ZpbGVyX2VuYWJsZWQAjgwmcmF3cGh5c2ljc3BpcGVsaW5lX2lzX3Byb2ZpbGVyX2VuYWJsZWQAhgwecmF3cGh5c2ljc3BpcGVsaW5lX3RpbWluZ19zdGVwAIwLLXJhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfY29sbGlzaW9uX2RldGVjdGlvbgDaCiVyYXdwaHlzaWNzcGlwZWxpbmVfdGltaW5nX2Jyb2FkX3BoYXNlANsKJnJhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfbmFycm93X3BoYXNlANwKIHJhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfc29sdmVyAN0KK3Jhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfdmVsb2NpdHlfYXNzZW1ibHkAjQstcmF3cGh5c2ljc3BpcGVsaW5lX3RpbWluZ192ZWxvY2l0eV9yZXNvbHV0aW9uAN4KKXJhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfdmVsb2NpdHlfdXBkYXRlAN8KLHJhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfdmVsb2NpdHlfd3JpdGViYWNrAI4LHXJhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfY2NkAOAKLXJhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfY2NkX3RvaV9jb21wdXRhdGlvbgCPCylyYXdwaHlzaWNzcGlwZWxpbmVfdGltaW5nX2NjZF9icm9hZF9waGFzZQCQCypyYXdwaHlzaWNzcGlwZWxpbmVfdGltaW5nX2NjZF9uYXJyb3dfcGhhc2UAkQskcmF3cGh5c2ljc3BpcGVsaW5lX3RpbWluZ19jY2Rfc29sdmVyAJILLXJhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfaXNsYW5kX2NvbnN0cnVjdGlvbgDhCiZyYXdwaHlzaWNzcGlwZWxpbmVfdGltaW5nX3VzZXJfY2hhbmdlcwCTCxdyYXdwaHlzaWNzcGlwZWxpbmVfc3RlcADGASFyYXdwaHlzaWNzcGlwZWxpbmVfc3RlcFdpdGhFdmVudHMAuAEfX193YmdfcmF3ZGVzZXJpYWxpemVkd29ybGRfZnJlZQDwByByYXdkZXNlcmlhbGl6ZWR3b3JsZF90YWtlR3Jhdml0eQCWCC5yYXdkZXNlcmlhbGl6ZWR3b3JsZF90YWtlSW50ZWdyYXRpb25QYXJhbWV0ZXJzAOkFJnJhd2Rlc2VyaWFsaXplZHdvcmxkX3Rha2VJc2xhbmRNYW5hZ2VyAJ4GI3Jhd2Rlc2VyaWFsaXplZHdvcmxkX3Rha2VCcm9hZFBoYXNlAOUHJHJhd2Rlc2VyaWFsaXplZHdvcmxkX3Rha2VOYXJyb3dQaGFzZQDgBh9yYXdkZXNlcmlhbGl6ZWR3b3JsZF90YWtlQm9kaWVzAOQGInJhd2Rlc2VyaWFsaXplZHdvcmxkX3Rha2VDb2xsaWRlcnMAsgcmcmF3ZGVzZXJpYWxpemVkd29ybGRfdGFrZUltcHVsc2VKb2ludHMAvAUocmF3ZGVzZXJpYWxpemVkd29ybGRfdGFrZU11bHRpYm9keUpvaW50cwC9BSVyYXdzZXJpYWxpemF0aW9ucGlwZWxpbmVfc2VyaWFsaXplQWxsAMABJ3Jhd3NlcmlhbGl6YXRpb25waXBlbGluZV9kZXNlcmlhbGl6ZUFsbADQBhxyYXdjb2xsaWRlcnNldF9pc0hhbmRsZVZhbGlkAPEIHHJhd3JheWludGVyc2VjdGlvbl9mZWF0dXJlSWQAqQskcmF3cmF5Y29sbGlkZXJpbnRlcnNlY3Rpb25fZmVhdHVyZUlkAKkLNXJhd2ludGVncmF0aW9ucGFyYW1ldGVyc19zZXRfbnVtSW50ZXJuYWxQZ3NJdGVyYXRpb25zAJgMD3Jhd3ZlY3Rvcl9zZXRfeACaDA5yZXNlcnZlX21lbW9yeQC4CyJyYXdraW5lbWF0aWNjaGFyYWN0ZXJjb250cm9sbGVyX3VwAM4IF3Jhd3NoYXBlY29udGFjdF9ub3JtYWwyAM4IFnJhd3NoYXBlY29udGFjdF9wb2ludDEA1wgWcmF3c2hhcGVjb250YWN0X3BvaW50MgDcCBlyYXdyYXlpbnRlcnNlY3Rpb25fbm9ybWFsANwIIXJhd3JheWNvbGxpZGVyaW50ZXJzZWN0aW9uX25vcm1hbADcCBdyYXdzaGFwZWNvbnRhY3Rfbm9ybWFsMQDdCB9yYXdjb2xsaWRlcnNoYXBlY2FzdGhpdF9ub3JtYWwxAM4IH3Jhd2NvbGxpZGVyc2hhcGVjYXN0aGl0X25vcm1hbDIAzwgYcmF3c2hhcGVjYXN0aGl0X3dpdG5lc3MyAN4IMXJhd2ludGVncmF0aW9ucGFyYW1ldGVyc19udW1JbnRlcm5hbFBnc0l0ZXJhdGlvbnMA8gsYcmF3c2hhcGVjb250YWN0X2Rpc3RhbmNlAOkLHnJhd3JheWludGVyc2VjdGlvbl9mZWF0dXJlVHlwZQCADClyYXdyYXljb2xsaWRlcmludGVyc2VjdGlvbl9jb2xsaWRlckhhbmRsZQD+CyFyYXdyYXlpbnRlcnNlY3Rpb25fdGltZV9vZl9pbXBhY3QAgQwmcmF3cmF5Y29sbGlkZXJpbnRlcnNlY3Rpb25fZmVhdHVyZVR5cGUAgAwgcmF3cmF5Y29sbGlkZXJoaXRfY29sbGlkZXJIYW5kbGUA7gspcmF3cmF5Y29sbGlkZXJpbnRlcnNlY3Rpb25fdGltZV9vZl9pbXBhY3QAgQwecmF3c2hhcGVjYXN0aGl0X3RpbWVfb2ZfaW1wYWN0APULJnJhd2NvbGxpZGVyc2hhcGVjYXN0aGl0X2NvbGxpZGVySGFuZGxlAO4LHnJhd3JheWNvbGxpZGVyaGl0X3RpbWVPZkltcGFjdACBDA1yYXdyb3RhdGlvbl94APULDXJhd3JvdGF0aW9uX3kA5gsNcmF3cm90YXRpb25fegCBDAtyYXd2ZWN0b3JfeAD1CwtyYXd2ZWN0b3JfeQDmCwtyYXd2ZWN0b3JfegCBDB5yYXdjb250YWN0Zm9yY2VldmVudF9jb2xsaWRlcjEA7gsjcmF3aW50ZWdyYXRpb25wYXJhbWV0ZXJzX2xlbmd0aFVuaXQAhAwZX193YmdfcmF3Y29udGFjdHBhaXJfZnJlZQCjCSVfX3diZ19yYXdyYXljb2xsaWRlcmludGVyc2VjdGlvbl9mcmVlAKUJFl9fd2JnX3Jhd3JvdGF0aW9uX2ZyZWUApAkUX193YmdfcmF3dmVjdG9yX2ZyZWUApwkYX193YmdfcmF3c2RwbWF0cml4M19mcmVlAKYJI19fd2JnX3Jhd3NlcmlhbGl6YXRpb25waXBlbGluZV9mcmVlAJ8JEHJhd2NjZHNvbHZlcl9uZXcArg0ccmF3c2VyaWFsaXphdGlvbnBpcGVsaW5lX25ldwCuDRNfX3diaW5kZ2VuX2V4cG9ydF8wAJwOH19fd2JpbmRnZW5fYWRkX3RvX3N0YWNrX3BvaW50ZXIA9A4TX193YmluZGdlbl9leHBvcnRfMQDzDRNfX3diaW5kZ2VuX2V4cG9ydF8yAKENCdwRAQBBAQv3CIkO4wK8DLAP5Q75DvcO9Q72Dv0M+g6vDLQLng2eDbAFsAXlDMEP+wj7COQD5QOUB/sO5wmr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IAEgCUEYayILNgIEIAEgAkEYajYCACALQQNNBEAgA0EAOgCTDCADQSU7AJEMIANBADYClAwgA0EBOgCQDCADQZAMahCfDQwBCyACKAAUIUQgASAJQRxrIgs2AgQgASACQRxqNgIAIAtBA00EQCADQQA6AJMMIANBJTsAkQwgA0EANgKUDCADQQE6AJAMIANBkAxqEJ8NDAELIAIoABghRSABIAlBIGsiCzYCBCABIAJBIGo2AgAgA0ELNgL0AiALQQNNBEAgA0EAOgCTDCADQSU7AJEMIANBADYClAwgA0EBOgCQDCADQZAMahCfDQwBCyACKAAcIUYgASAJQSRrNgIEIAEgAkEkajYCACACKAAgIUcgA0GQDGoiCSADQfACaiILELoJIAMoApQMIkggAygCkAwiCEECRg0AGiAIQQFxBEAgCSALELoJIAMoApQMIkkgAygCkAwiCEECRg0BGgJAIAhBAXEEQCAJIAsQugkgAygClAwhOSADKAKQDCICQQJHDQEgOQwDC0EHQaS1wQBBkK3BABCoCgwCCwJAIAJBAXEEQCADQZAMaiADQfACahC6CSADKAKUDCE6IAMoApAMIgJBAkcNASA6DAMLQQhBpLXBAEGQrcEAEKgKDAILAkAgAkEBcQRAIANBkAxqIANB8AJqELoJIAMoApQMITsgAygCkAwiAkECRw0BIDsMAwtBCUGktcEAQZCtwQAQqAoMAgsCQCACQQFxBEAgA0GQDGogA0HwAmoQ5AggAygClAwhPCADKAKQDCICQQJHDQEgPAwDC0EKQaS1wQBBkK3BABCoCgwCCwJAIAJBAXEEQCADQZAMaiADQfACahDkCCADKAKUDCE9IAMoApAMIgJBAkcNASA9DAMLQQtBpLXBAEGQrcEAEKgKDAILAkAgAkEBcQRAIANBkAxqIANB8AJqEOQIIAMoApQMIT4gAygCkAwiAkECRw0BID4MAwtBDEGktcEAQZCtwQAQqAoMAgsCQCACQQFxBEAgA0GQDGogA0HwAmoQ5AggAygClAwhPyADKAKQDCICQQJHDQEgPwwDC0ENQaS1wQBBkK3BABCoCgwCCwJAIAJBAXEEQCADQZAMaiADQfACahDkCCADKAKUDCFAIAMoApAMIgJBAkcNASBADAMLQQ5BpLXBAEGQrcEAEKgKDAILAkAgAkEBcQRAIANB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DQALIANCgcoANwOYCiADQZgKahCfDSECDA0LIANBADoAmwogA0ElOwCZCiADQQA2ApwKIANBAToAmAogA0GYCmoQnw0hAgwMCyADQQA6AJsKIANBJTsAmQogA0EANgKcCiADQQE6AJgKIANBmApqEJ8NIQIMCwsgA0EAOgCbCiADQSU7AJkKIANBADYCnAogA0EBOgCYCiADQZgKahCfDSECDAoLIANBADoAmwogA0ElOwCZCiADQQA2ApwKIANBAToAmAogA0GYCmoQnw0hAgwJCyADQQA6AJsKIANBJTsAmQogA0EANgKcCiADQQE6AJgKIANBmApqEJ8NIQIMCAsgA0EAOgCbCiADQSU7AJkKIANBADYCnAogA0EBOgCYCiADQZgKahCfDSECDAcLIANBADoAmwogA0ElOwCZCiADQQA2ApwKIANBAToAmAogA0GYCmoQnw0hAgwGCyADQQA6AJsKIANBJTsAmQogA0EANgKcCiADQQE6AJgKIANBmApqEJ8NIQIMBQsgGyECDAQLIANBADoAmwogA0ElOwCZCiADQQA2ApwKIANBAToAmAogA0GYCmoQnw0hFAwBC0EEQfTXwQBBkK3BABCoCiEBIABBAjYCxAcgACABNgIADA4LIBoEQCAaQTBBBBDoDgsgFCECDAELIANBADoAmwogA0ElOwCZCiADQQA2ApwKIANBAToAmAogA0GYCmoQnw0hAgsgAygC7BEhCSAQBEAgCSEBA0ACQCABKAIARQ0AIAFBxAJqKAIAIgsEQCALQTBBBBDoDgsgAUHoAmooAgAiC0UNACABQewCaigCACALQQN0QQQQ6A4LIAFBgANqIQEgEEEBayIQDQALCyADKALoESIBRQ0EIAkgAUGAA2xBEBDoDgwECwJAAkACQAJAIAwoAgQiAkEETwRAIAwgAkEEayIJNgIEIAwgDCgCACIBQQRqNgIAIAlFBEAgA0KBygA3A5gKIANBmApqEJ8NIQIMBAsgATUAACFmIAwgAkEFayITNgIEIAwgAUEFaiIaNgIAAkACQCABLQAEIg4OAgQAAQsgCUEESw0CIANCgcoANwOYCiADQZgKahCfDSECDAQLQQxBBBCRDiICRQ0bIAIgDjYCBCACQYSAgIB4NgIADAMLIANCgcoANwOYCiADQZgKahCfDSECDAILIAwgAkEJayIT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AgJAIANB////H0sNACAJQfz///8HSw0AIAsoAoABIQUCQCAJRQRAQQQhAEEAIQQMAQtBBCECIAMhBCAJQQQQkQ4iAEUNAQsgCQRAIAAgBSAJ/AoAAAsgC0EANgKEASAMQaQGaiIGKgIAISIgDCoC3AYhJiAMKgLQBiEoIAwqApwGISogDCoCoAYhISAMKgLYBiEjIAwqAtQGISUgDEEgaiAGKAIANgIAIAwgDCkCnAY3AxggDEHYAWoiAiAIIAxBGGoiBRChDyAMICYgKiAllCAhICiUkyIKIAqSIimUICggIiAolCAqICOUkyIKIAqSIiSUICUgISAjlCAiICWUkyIKIAqSIgqUk5IgIpMiIjgCkAQgDCAmICSUICMgCpQgKCAplJOSICGTIiE4AowEIAwgJiAKlCAlICmUICMgJJSTkiAqkyIKOAKIBCAFIAcgDEGIBGoQoQ8gASAMQZgGakEEciACIAUgC0EAECsgCyAiOAKcASALICE4ApgBIAsgCjgClAEgC0GQAWogBigCADYCACALIAwpApwGNwKIAQJAIAsoAoQBIgFFDQAgA0UNACALKAKAASICIAFBBnRqIQggACADQQZ0aiEHIABBJGohCyAAQUBrIQEgCUFAaiIGQcAAcSEDA0AgAkEkaiEOIAIoAhwhCSAAIQUCQCADDQAgASEFIAkgACgCHEcNACACKAIgIAAoAiBHDQAgDiAL/QACAP0LAgAgDkEYaiALQRhqKAIANgIAIA5BEGogC0EQaikCADcCAAsgBgRAA0ACQCAJIAVBHGooAgBHDQAgAigCICAFQSBqKAIARw0AIA5BGGogBUE8aigCADYCACAOQRBqIAVBNGopAgA3AgAgDiAFQSRq/QACAP0LAgALAkAgCSAFQdwAaigCAEcNACACKAIgIAVB4ABqKAIARw0AIA5BGGogBUH8AGooAgA2AgAgDkEQaiAFQfQAaikCADcCACAOIAVB5ABq/QACAP0LAgALIAcgBUGAAWoiBUcNAAsLIAggAkFAayICRw0ACwsgBEUNAyAAIARBBnRBBBDoDgwDCyACIAlBgPzBABDXDQALIAsgKTgCnAEgCyAkOAKYASALICE4ApQBIAsgIzgCkAEgCyAiOAKMASALIAo4AogBDAELIAtBADYChAELIAxBkAhqJAAgDQvThAEEH38RfQN+AXsj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JEHcAGogAiASQQRByAAQ1wYgJCgCZCEPCyApKAJgIA9ByABsaiEBIBJBAk8EQCAmIAJBf3NqIg5BAXEhECACICZBAmtHBEAgDkF+cSEOA0AgAUIANwIAIAFBCGpCfzcCACABQRBqQn83AgAgAUEYakJ/NwIAIAFBIGpBfzYCACABQdAAakJ/NwIAIAFByABqQgA3AgAgAUHEAGpBADsBACABQTRq/Qz//39///9/f///f3///39//QsCACABQSRq/QwAAAAA//9/////f3///39//QsCACABQdgAakJ/NwIAIAFB4ABqQn83AgAgAUHoAGpBfzYCACABQYwBakEAOwEAIAFB/ABq/Qz//39///9/f///f3///39//QsCACABQewAav0MAAAAAP//f////39///9/f/0LAgAgAUGQAWohASAOQQJrIg4NAAsLIA8gEmpBAWshDyAQBEAgAUJ/NwIIIAFCADcCACABQQA7AUQgAf0M//9/f///f3///39///9/f/0LAjQgAf0MAAAAAP//f////39///9/f/0LAiQgAUEQakJ/NwIAIAFBGGpCfzcCACABQSBqQX82AgAgAUHIAGohAQsLIAFCfzcCCCABQgA3AgAgAUEAOwFEIAH9DP//f3///39///9/f///f3/9CwI0IAH9DAAAAAD//3////9/f///f3/9CwIkIAFBEGpCfzcCACABQRhqQn83AgAgAUEgakF/NgIAIA9BAWohJgsgKSAmNgJkIBVBoApqJAAMAwsgGiBnQciOwgAQ8A4AC0HQi8IAQRNB2MfCABDRCwALQdCLwgBBE0Hox8IAENELAAsgF0HgAmoiARC6CiAXQbAEaiABIKkCIIMBEOQJIAApA3gingIgFykDsAR8Ip0CIJ4CVA0aIAAoAoABIBcoArgEaiIBQYCU69wDTwRAIJ0CQn9RDRsgnQJCAXwhnQIgAUGAlOvcA2shAQsgACABNgKAASAAIJ0CNwN4IABBgJTr3AM2AnAgF0GwBGoQugogFykDsAQhnQIgACAXKAK4BCICNgJQIAAgnQI3A0gghAENAQwYC0GwssIAEPIOAAsgLigC6AIiASAuKALQAiIQIAEgEEkbISYgLigC5AIhRCAuKALMAiFHIC4oAvgCIoYBIC4oAogDIgFHDRUgLkHsAmohYkMAAAAAQwAAgD9DAACA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IAH9HAEh0gFCACGdAkIAIaACIDtFBEAgGSkDOCGgAiAZKQMwIZ0CCyDiASDpAf0NAAECAwQFBgccHR4fAAECAyHiASDgASDpAf0NAAECAwQFBgcYGRobAAECAyHgASDoASDpAf0NAAECAwQFBgcUFRYXAAECAyHoASDhASDpAf0NAAECAwQFBgcQERITAAECAyHhASDeASDwAf0NAAECAwQFBgcQERITAAECAyHeASDcASDXAf0NAAECAwQFBgcQERITAAECAyHcASDdASDmAf0NAAECAwQFBgcQERITAAECAyHdASDaASDwAf0NAAECAwQFBgcYGRobAAECAyHaASDfASDwAf0NAAECAwQFBgcUFRYXAAECAyHfASDZASDXAf0NAAECAwQFBgcYGRobAAECAyHZASDbASDXAf0NAAECAwQFBgcUFRYXAAECAyHbASDYASDmAf0NAAECAwQFBgcUFRYXAAECAyHYASDWASDwAf0NAAECAwQFBgccHR4fAAECAyHWASDVASDXAf0NAAECAwQFBgccHR4fAAECAyHVASDTASDmAf0NAAECAwQFBgcYGRobAAECAyHTASDSASDmAf0NAAECAwQFBgccHR4fAAECAyHSAf0MAAAAAAAAAAAAAAAAAAAAACHXAf0MAAAAAAAAAAAAAAAAAAAAACGBAiAzRQRAICv9AAQwIYECCyDiASDjAf0NAAECAwQFBgcICQoLHB0eHyH2ASDgASDjAf0NAAECAwQFBgcICQoLGBkaGyGGAiDoASDjAf0NAAECAwQFBgcICQoLFBUWFyH+ASDhASDjAf0NAAECAwQFBgcICQoLEBESEyH/ASDeASDyAf0NAAECAwQFBgcICQoLEBESEyH9ASDcASCSAv0NAAECAwQFBgcICQoLEBESEyH7ASDdASD0Af0NAAECAwQFBgcICQoLEBESEyHkASDaASDyAf0NAAECAwQFBgcICQoLGBkaGyHxASDfASDyAf0NAAECAwQFBgcICQoLFBUWFyH3ASDZASCSAv0NAAECAwQFBgcICQoLGBkaGyGEAiDbASCSAv0NAAECAwQFBgcICQoLFBUWFyHrASDYASD0Af0NAAECAwQFBgcICQoLFBUWFyHqASDWASDyAf0NAAECAwQFBgcICQoLHB0eHyHlASDVASCSAv0NAAECAwQFBgcICQoL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ACHUASACQRBq/QAEACHVASACQeAAav0ABAAh4AEgAkHQAGr9AAQAIYQCIAJBQGv9AAQAIesBIAJBkAFq/QAEACHmASACQYABav0ABAAh4wEgAkHwAGr9AAQAIekBIBdBsARq/QwAAAAAAAAAAAAAAAAAAAAA/QsEACAX/QAEsAQh0wEgDyAeaiIgQeADaiIC/QAEACHXASACIJMCINcB/eYB/QsEACAgQfADaiICINcBIAL9AAQA/eQB/QsEACAgQdADaiDYASCUAv0MAAAAAAAAAAAAAAAAAAAAACDWASD3ASDzASDSAf3mASDgASCEAiD2Af3mASDrASD/Af3mAf3lASLSASDSAf3kASLlASDuAf3mASDrASD+Af3mASDgASD2Af3mAf3lASLSASDSAf3kASLiASD2Af3mASDgASD/Af3mASCEAiD+Af3mAf3lASLSASDSAf3kASLgASD/Af3mAf3lAf3kAf3kASDhAf3kAf3kASDmASDjASDvAf3mASDpASD6Af3mAf3lASLSASDSAf3kASLXASD7Af3mASDpASD4Af3mASDmASDvAf3mAf3lASLSASDSAf3kASLYASDvAf3mASDmASD6Af3mASDjASD4Af3mAf3lASLSASDSAf3kASLSASD6Af3mAf3lAf3kAf3kASDdAf3kAf3lASLWAf3mASD9ASDzASDUAf3mASDrASDgASDuAf3mASDlASD/Af3mASDiASD+Af3mAf3lAf3kAf3kASDoAf3kAf3kASDpASDSASD7Af3mASDXASD6Af3mASDYASD4Af3mAf3lAf3kAf3kASDcAf3kAf3lASLUAf3mASDxASDzASDVAf3mASCEAiDiASDuAf3mASDgASD+Af3mASDlASD2Af3mAf3lAf3kAf3kASDeAf3kAf3kASDjASDYASD7Af3mASDSASD4Af3mASDXASDvAf3mAf3lAf3kAf3kASDaAf3kAf3lASLVAf3mAf3kAf3kAf3kASLYAf0MAAAAAAAAAAAAAAAAAAAAAP3rASDYASDYAf1C/VL95gH95AEi0gH9CwQAICBBwANqINIBINMBIJkC/eUBItIB/QwAAAAAAAAAAAAAAAAAAAAAIJgCIJsCINgB/eQB/eYBItMB/QwAAAAAAAAAAAAAAAAAAAAA/eoBINMBINMB/UL9UiLTASDSAf3rASDT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IBD9AASQECHxASAQ/QAE0A0h9wEgEP0ABIAOIeoBIBD9AASgECHlASAQ/QAE4A0h3wEgEP0ABJAOIdkBIBD9AARgIeIBIBD9AARwIeABIBD9AASAASHoASAQ/QAE0A8h2AEgEP0ABOAPIdMBIBD9AATAECGHAiAQ/QAE8A8h0gEgJSCFAiDWASCRAiCAAv3mASD8ASDbASCQAv3mASCPAiCSAv3mAf3lASLWAf3mAf3kAf3mAf3kASKNAv0LBEAgJSDcASDVASCQAiCAAv3mASD8ASCGAiCPAv3mASDbASCRAv3mAf3lASLVAf3mAf3kAf3mAf3kASLbAf0LBDAgJf0AAjQh4QEgJf0AAzgh3gEgJf0AAjwh3AEgJSDUASCAAiCEAv3mASD8ASDdAf3mAf3kAf3kASDSASCHAv3mAf3kASKJAv1aAigCICUgiQL9WwMgACAlINcBIIACIO4B/eYBIPwBIPsB/eYB/eQB/eQBINMBIIcC/eYB/eQBItMB/QsEECCDAiDzASCPAiCAAv3mASD8ASCRAiCSAv3mASCGAiCQAv3mAf3lASLSAf3mAf3kAf3mAf3kASHuASCOAiCAAiD6Af3mASD8ASDvAf3mAf3kAf3kASDYASCHAv3mAf3kASH7ASDWASDaASD8Af3lASKEAv3mASHdASDjASDrASCAAv3lASLjAf3mASHYASDVASCEAv3mASHXASDjASDmAf3mASHWASD8ASDZAf3mASHaASCAAiDfAf3mASHUASD8ASDqAf3mASHfASCAAiD3Af3mASHVASABIChJDQEMAgsgAUEEQZinwgAQ8A4ACyAdIAFBBXRqIgEg0wEgiQL9DQABAgMQERITAAECAwABAgMg/gH9DQABAgMEBQYHEBESEwABAgMg/wH9DQABAgMEBQYHCAkKCxAREhP9CwQQIAEg2wEgjQL9DQABAgMQERITAAECAwABAgMg7gH9DQABAgMEBQYHEBESEwABAgMg+wH9DQABAgMEBQYHCAkKCxAREhP9CwQACyDSASCEAv3mASHZASDjASDpAf3mASHTASD8ASDkAf3mASHbASCAAiD9Af3mASHSASDYASDdAf3kASHYASDWASDXAf3kASHWASDUASDaAf3kASHUASDVASDfAf3kASHVASACIChJBEAgHSACQQV0aiIBICX9AAIUIIkC/RsB/RwBIKICp/0cAiCiAkIgiKf9HAP9CwQQIAEg4QEgjQL9DQABAgMUFRYXAAECAwABAgMg7gH9DQABAgMEBQYHFBUWFwABAgMg+wH9DQABAgMEBQYHCAkKCxQVFhf9CwQACyDTASDZAf3kASHTASDSASDbAf3kASHSASDYASDgAf3mASHfASDiASDWAf3mASHZASD1ASDUAf3kASHbASCHAiDlAf3mASHYASDsASDVAf3kASHWASCHAiDxAf3mASHUASAOIChJBEAgHSAOQQV0aiIBICX9AAMYIIkC/Q0AAQIDGBkaGwABAgMAAQIDIPAB/Q0AAQIDBAUGBxgZGhscHR4f/QsEECABIN4BII0C/Q0AAQIDGBkaGwABAgMAAQIDIO4B/Q0AAQIDBAUGBxgZGhsAAQIDIPsB/Q0AAQIDBAUGBwgJCgsYGRob/QsEAAsg0wEg6AH95gEh1QEg5wEg0gH95AEh0wEghwIg7QH95gEh0gEggQIg3wH95AEh3wEg9AEg2QH95AEh2QEg2wEg2AH95AEh2wEg1gEg1AH95AEh1AEgEiAoSQRAIB0gEkEFdGoiASAl/QACHCCJAv0NAAECAxwdHh8AAQIDAAECAyD5Af0NAAECAwQFBgcYGRobHB0eH/0LBBAgASDcASCNAv0NAAECAxwdHh8AAQIDAAECAyDuAf0NAAECAwQFBgccHR4fAAECAyD7Af0NAAECAwQFBgcICQoLHB0eH/0LBAALIPIBINUB/eQBIdgBINMBINIB/eQBIdYBIBAoAswRIRIgECgCyBEhDiAQKALEESECIBAoAsARIQEgJSDZAf0LBDAgJSDfAf0LBEAgJf0AAjQh1QEgJf0AAzgh0wEgJf0AAjwh0gEgJSDbAf1aAigCICUg2wH9WwMgACAlINQB/QsEECABIChJBEAgHSABQQV0aiIBINQBINsB/Q0AAQIDEBESEwABAgMAAQIDIPYB/Q0AAQIDBAUGBxAREhMAAQIDIPgB/Q0AAQIDBAUGBwgJCgsQERIT/QsEECABINkBIN8B/Q0AAQIDEBESEwABAgMAAQIDINgB/Q0AAQIDBAUGBxAREhMAAQIDINYB/Q0AAQIDBAUGBwgJCgsQERIT/QsEAAsgAiAoSQRAIB0gAkEFdGoiASAl/QACFCDbAf0bAf0cASCdAqf9HAIgnQJCIIin/RwD/QsEECABINUBIN8B/Q0AAQIDFBUWFwABAgMAAQIDINgB/Q0AAQIDBAUGBxQVFhcAAQIDINYB/Q0AAQIDBAUGBwgJCgsUFRYX/QsEAAsgDiAoSQRAIB0gDkEFdGoiASAl/QADGCDbAf0NAAECAxgZGhsAAQIDAAECAyCCAv0NAAECAwQFBgcYGRobHB0eH/0LBBAgASDTASDfAf0NAAECAxgZGhsAAQIDAAECAyDYAf0NAAECAwQFBgcYGRobAAECAyDWAf0NAAECAwQFBgcICQoLGBkaG/0LBAALIBIgKEkEQCAdIBJBBXRqIgEgJf0AAhwg2wH9DQABAgMcHR4fAAECAwABAgMgigL9DQABAgMEBQYHGBkaGxwdHh/9CwQQIAEg0gEg3wH9DQABAgMcHR4fAAECAwABAgMg2AH9DQABAgMEBQYHHB0eHwABAgMg1gH9DQABAgMEBQYHCAkKCxwdHh/9CwQACyAlQdAAaiQAIBBBgBJqIRBBACECDAALAAsACyBcBEBBACEgA0AgPSEPIBUhEyAwIRADQEEBIQIDQAJAIAJBAXFFDQACQCAPRQ0AIA8gfkYNACAPICkgRiBiEFkgD0HIAGohAgNAIAIgfkYNASACICkgRiBiEFkgAkHIAGohAgwACwALQQAhDyATIF1GDQAgEyBGEJQDIBNBiAFqIRMMAgsgECBTRwRAIBAgRhCEASAQQZAEaiEQQQAhAgwBCwsLIB8hDyAeIRMgGCEQA0BBASECA0ACQCACQQFxRQ0AAkAgD0UNACAPIHNGDQAgDyAuIEYgYhBGIA9BuAdqIQIDQCACIHNGDQEgAiAuIEYgYhBGIAJBuAdqIQIMAAsAC0EAIQ8gEyCKAUYNACATIEYQViATQbAdaiETDAILIBAgiQFHBEAgECBGEEogEEGAEmohEEEAIQIMAQsLCyBcICBBAWoiIEcNAAsLAkAgeEUNAEEAIQIggwEgeEEESXJFBEAgKiEPIDohAiBHIRADQCAQQegAaiAQQcgAaiAQQShqIBBBCGr9XAIA/VYCAAH9VgIAAv1WAgADIdYBIAJBxAFqIicgAkGEAWoiMyACQcQAaiACQQRq/VwCAP1WAgAB/VYCAAL9VgIAAyHdASAQQfQAaiAQQdQAaiAQQTRqIBBBFGr9XAIA/VYCAAH9VgIAAv1WAgADIdQBIAJBwAFqIi0gAkGAAWoiICACQUBrIhogAv1cAgD9VgIAAf1WAgAC/VYCAAMh1wEgAkHMAWogAkGMAWogAkHMAGogAkEMav1cAgD9VgIAAf1WAgAC/VYCAAMh2gEgEEHsAGogEEHMAGogEEEsaiAQQQxq/VwCAP1WAgAB/VYCAAL9VgIAAyHVASACQcgBaiACQYgBaiACQcgAaiACQQhq/VwCAP1WAgAB/VYCAAL9VgIAAyHfASAQQfAAaiAQQdAAaiAQQTBqIBBBEGr9XAIA/VYCAAH9VgIAAv1WAgADIdMBIBBB5ABqIBBBxABqIBBBJGogEEEEav1cAgD9VgIAAf1WAgAC/VYCAAMh0gEglQIgEEHgAGogEEFAayAQQSBqIBD9XAIA/VYCAAH9VgIAAv1WAgAD/eYBIAJB0AFqIAJBkAFqIAJB0ABqIg4gAkEQaiIB/VwCAP1WAgAB/VYCAAL9VgIAA/3kASHZASABINkB/R8AOAIAIA4g2QH9HwE4AgAglQIg0gH95gEgAkHUAWoiEiACQZQBaiITIAJB1ABqIg4gAkEUaiIB/VwCAP1WAgAB/VYCAAL9VgIAA/3kASHSASABINIB/R8AOAIAIA4g0gH9HwE4AgAgEyDSAf0fAjgCACASINIB/R8DOAIAIC0g3wEglgIg0wH95gEi2wH95gEg1wEg2gEglgIg1QH95gEi2AH95gH95AH95AEg3QEglgIg1AH95gEi0gH95gH95QEi1AEg1wEg0gH95gEg2wEg2gH95gEg3QEg2AEg3wH95gH95QH95AH95AEi1QEg1QH95gEg2gEg2AEg1wH95gH95QEg2wEg3QH95gH95QEg0gEg3wH95gH95QEi0wEg0wH95gH95AEg0gEg2gH95gEg3wEg2AEg3QH95gH95AEg2wEg1wH95gH95QH95AEi0gEg0gH95gEg1AEg1AH95gH95AH95AH94wEi2wH95wEi2AH9HwM4AgAgICDYAf0fAjgCACAaINgBINUBINsB/ecBItQB/Q0EBQYHFBUWFwABAgMAAQIDINIBINsB/ecBItUBINMBINsB/ecBItIB/Q0AAQIDAAECAwQFBgcUFRYX/Q0AAQIDBAUGBxgZGhscHR4f/QsCACAzINQBINUB/Q0ICQoLGBkaGwABAgMAAQIDINIBINkB/Q0AAQIDAAECAwgJCgsYGRob/Q0AAQIDBAUGBxgZGhscHR4f/QsCACAnINQBINUB/Q0MDQ4PHB0eHwABAgMAAQIDINIBINkB/Q0AAQIDAAECAwwNDg8cHR4f/Q0AAQIDBAUGBxgZGhscHR4f/QsCACACINgBINQB/Q0AAQIDEBESEwABAgMAAQIDINUB/Q0AAQIDBAUGBxAREhMAAQIDINIB/Q0AAQIDBAUGBwgJCgsQERIT/QsCACCVAiDWAf3mASACQdgBaiITIAJBmAFqIiAgAkHYAGoiMyACQRhqIi39XAIA/VYCAAH9VgIAAv1WAgAD/eQBIdIBIBMg0gH9HwM4AgAgICDSAf0fAjgCACAzINIB/R8BOAIAIC0g0gH9HwA4AgAgAkGAAmohAiAQQYABaiEQIA9BBGsiDw0ACyB4ICoiAkYNAQsgeCACayEPIEcgAkEFdGohECA6IAJBBnRqIQIDQCAQQQhqKgIAIZ4BIBBBFGoqAgAhnAEgEEEMaioCACGbASAQQRBqKgIAIZoBIBBBBGoqAgAhmQEgAkEQaiIBILwBIBAqAgCUIAEqAgCSOAIAIAJBFGoiASC8ASCZAZQgASoCAJI4AgAgAkEMaiIOKgIAIqYBIMoBIJsBlCKkASACKgIAIqEBlJMgygEgmgGUIqIBIAJBBGoiASoCACKfAZSTIMoBIJwBlCKdASACQQhqIiAqAgAinAGUkyGZASAOIJkBIKEBIJ0BlCCiASCmAZQgnwEgpAEgnAGUk5KSIpsBIJsBlCCZASCZAZSSIJ0BIKYBlCCkASCfAZQgnAGSIKIBIKEBlJOSIpoBIJoBlCCiASCcAZQgoQEgpAEgpgGUkpIgnQEgnwGUkyKZASCZAZSSkpEinAGVOAIAICAgmgEgnAGVOAIAIAEgmwEgnAGVOAIAIAIgmQEgnAGVOAIAIAJBGGoiEyC8ASCeAZQgEyoCAJI4AgAgEEEgaiEQIAJBQGshAiAPQQFrIg8NAAsLIHoEQCAxIS0DQAJAAkACQCAtKAIAIgEgdk8NACB3IAFBpAJsaiIzKAIAQYCAgIB4Rg0AIDMoAqACIC0oAgRHDQACQCCGASAzKAKUAiITIDMoApgCIgFqTwRAIDNBGGooAgAgE0cNIyAzQRBqIRoCQCATRQ0AIAFBAnQhJyAaKAIAIQFBACEgAkAgE0EESQ0AIAEgJyA/aiICa0EQSQ0AIBNBfHEiICEPIAEhEANAIBAgAv0AAgD9CwIAIBBBEGohECACQRBqIQIgD0EEayIPDQALIBMgIEYNAQsgICESIBNBA3EiDwRAID8gEkECdCIOICdqaiECIA8gEmohEiABIA5qIRADQCAQIAIqAgA4AgAgAkEEaiECIBBBBGohECAPQQFrIg8NAAsLICAgE2tBfEsNACA/IBJBAnQiDiAnamohAiATIBJrIQ8gASAOaiEQA0AgECACKgIAOAIAIBBBBGogAkEEaioCADgCACAQQQhqIAJBCGoqAgA4AgAgEEEMaiACQQxqKgIAOAIAIBBBEGohECACQRBqIQIgD0EEayIPDQALCyAzKAIIIgEEQCAzKAIEIQIgAUHwA2whEyAaKAIAISAgMygCFCEOA0AgAkGUA2ooAgAiASAOSw0DICAgAUECdGohEiAOIAFrIQ9BACEQQwAAAAAhugFDAAAAACGpAUMAAAAAIZoBIwBBIGsiGiQAAkACQCACLQDIAiIBQQFxRQRAIA9FDQEgAiACKgLQAiC8ASASKgIAlJI4AtACQQEhEAsgAUECcUUEQCAPIBBNDQEgAiACKgLUAiC8ASASIBBBAnRqKgIAlJI4AtQCIBBBAWohEAsgAUEEcUUEQCAPIBBNDQEgAiACKgLYAiC8ASASIBBBAnRqKgIAlJI4AtgCIBBBAWohEAsCQAJAAkACQAJAAkAgAUEDdiIBaQ4EAQQAAgULIA8gEE0EQCAQIA9B4MPCABCFCwALIAFBf3NoIgFBA0kEQCABQQJ0Ig8gAmpB3AJqIgEqAgAgvAEgEiAQQQJ0aioCAJSSIZkBIAEgmQE4AgAgGkEANgIQIBpCADcCCCAaQQhqIA9qQYCAgPwDNgIAIBoqAgghnAEgGioCDCGbASAaKgIQIZoBIAIgmQFDAAAAP5QimQEQvA84AgwgAiCaASCZARC7DyKZAZQ4AgggAiCZASCbAZQ4AgQgAiCZASCcAZQ4AgAMAgsgGkEANgIYIBpBATYCDCAaQeyAwgA2AgggGkIENwIQIBpBCGpB8MPCABC5DQALIBBBA2oiASAPSw0BQwAAgD8hmwEgvAEgEiAQQQJ0aiIBKgIElCKdAUMAAAA/lCKhASChAZQgvAEgASoCAJQingFDAAAAP5QiogEgogGUkiC8ASABKgIIlCKcAUMAAAA/lCKfASCfAZSSIpkBQwAAAABfRQRAIJ8BIJkBkSKbARC7DyCbAZUimQGUIZoBIKEBIJkBlCGpASCiASCZAZQhugEgmwEQvA8hmwELIAIgngEgAioC3AKSOALcAiACIJ0BIAIqAuACkjgC4AIgAiCcASACKgLkApI4AuQCIAIgmwEgAioCDCKdAZQgugEgAioCACKeAZSTIKkBIAIqAgQinAGUkyCaASACKgIIIpkBlJM4AgwgAiCaASCdAZQgugEgnAGUIJsBIJkBlJIgqQEgngGUk5I4AgggAiCaASCeAZQgqQEgnQGUIJsBIJwBlCC6ASCZAZSTkpI4AgQgAiCpASCZAZQgmwEgngGUILoBIJ0BlJKSIJoBIJwBlJM4AgALIBpBIGokAAwECyABIA9BkMTCABDwDgALQZSdwgBBE0GAxMIAENYMAAtB7NzBAEEoQaDEwgAQ1gwACyAQIA9BsMTCABCFCwALIAJB8ANqIQIgE0HwA2siEw0ACwsgMyAGQQAQJiAzKAIIIgFFDQQgAUHwA2whDyAzKAIEIRMgUSBpRg0DIBNBnANqIQIDQAJAIAJBLGsoAgAiASB1Tw0AIHQgAUGAA2xqIg4oAgBBAUcNACAOKAIEIAJBKGsoAgBHDQAgAkEQaikCACGdAiAC/QACACHSASAOQfQAaiACQRhqKAIANgIAIA5B7ABqIJ0CNwIAIA4g0gH9CwJcIA4tAPUCIRMgF0GwBGoiASAOQZgCaiIgIAIQqgggDkGIAmogiwEoAgA2AgAgDiAXKQKwBDcCgAIgDiAOKgK0AiKZATgClAIgDiCZATgCkAIgDiCZATgCjAIgASAgIAIQlQMgDkH4AWogAUEQaikCADcCACAOIBf9AAKwBP0LAugBAkAgEwRAIA5BADYClAIgDkIANwKMAiAOQegBav0MAAAAAAAAAAAAAAAAAAAAAP0LAgAMAQsgDi0AyAIiE0EBcQRAIA5BADYCjAILIBNBAnEEQCAOQQA2ApACCyATQQRxBEAgDkEANgKUAgsgE0EIcQRAIA5BADYC8AEgDkIANwLoAQsgE0EQcQRAIA5BADYC7AEgDkIANwL0AQsgE0EgcUUNAQsgDkEANgLwASAOQgA3AvgBCyACQfADaiECIA9B8ANrIg8NAAsMBAsMIQsgASAOQZiXwgAQ7w4AC0GIyMIAEPIOAAsgEyECAkAgAUHwA2xB8ANrIgFB8ANuQQFxDQAgAkHwA2ohAiB1IBMoAvACIiBNDQAgdCAgQYADbGoiICgCAEEBRw0AICAoAgQgEygC9AJHDQAgE0GsA2opAgAhnQIgE/0AApwDIdIBICBB9ABqIBNBtANqKAIANgIAICBB7ABqIJ0CNwIAICAg0gH9CwJcCyABQfADSQ0AIA8gE2ohDwNAAkAgAkHwAmooAgAiASB1Tw0AIHQgAUGAA2xqIgEoAgBBAUcNACABKAIEIAJB9AJqKAIARw0AIAJBnANq/QACACHSASACQawDaikCACGdAiABQfQAaiACQbQDaigCADYCACABQewAaiCdAjcCACABINIB/QsCXAsCQCACQeAGaigCACIBIHVPDQAgdCABQYADbGoiASgCAEEBRw0AIAEoAgQgAkHkBmooAgBHDQAgAkGMB2r9AAIAIdIBIAJBnAdqKQIAIZ0CIAFB9ABqIAJBpAdqKAIANgIAIAFB7ABqIJ0CNwIAIAEg0gH9CwJcCyAPIAJB4AdqIgJHDQALCwJAIFEgaUYNACAzILwBIHQgdRAkIDMgdCB1EEwgMygClAIiDyAzKAKYAiICaiCGAUsNHiAXIDMoAjgiATYC4AIgFyAPNgLwASABIA9HDQQgMygCNCITRQ0AIAJBAnQhASAzKAIwITNBACEgIBNBBE8EQCABIDJqIQIgE0F8cSIgIQ8gMyEQA0AgAiCVAiAQ/QACAP3mAf0LAgAgEEEQaiEQIAJBEGohAiAPQQRrIg8NAAsgEyAgRg0BCyAyIAEgIEECdCIBamohAiATICBrIQ8gASAzaiEQA0AgAiC8ASAQKgIAlDgCACACQQRqIQIgEEEEaiEQIA9BAWsiDw0ACwsgeyAtQRBqIi1HDQALCyBZBEBBACEgA0AgPSECIBUhEyAwIQ8DQEEBIRADQAJAIBBBAXFFDQACQCACRQ0AIAIgfkYNACACIAIqAjg4AjQgAiApIEYgYhBZIAJBgAFqIQIDQCACQThrIgEgfkYNASACQQRrIAIqAgA4AgAgASApIEYgYhBZIAJByABqIQIMAAsAC0EAIQIgEyBdRg0AIBMgEyoCZDgCYCATIEYQlAMgE0GIAWohEwwCCyAPIFNHBEAgDyAP/QAE8AL9CwTgAiAPIEYQhAEgD0GQBGohD0EAIRAMAQsLCyAfIQIgHiETIBghDwNAQQEhEANAAkAgEEEBcUUNAAJAIAJFDQAgAiBzRg0AIAJBgICA/AM2ApwHIAIgAioCPDgCOCACIAIqAogBOAKEASACIAIqAtQBOALQASACIAIqAqACOAKcAiACIAIpApgDNwKQAyACIAIpAqQENwKcBCACIAIpArAFNwKoBSACIAIpArwGNwK0BiACIC4gRiBiEEYDQCACQbgHaiIBIHNGDQEgAkHUDmpBgICA/AM2AgAgAkHwB2ogAkH0B2oqAgA4AgAgAkG8CGogAkHACGoqAgA4AgAgAkGICWogAkGMCWoqAgA4AgAgAkHUCWogAkHYCWoqAgA4AgAgAkHICmogAkHQCmopAgA3AgAgAkHUC2ogAkHcC2opAgA3AgAgAkHgDGogAkHoDGopAgA3AgAgAkHsDWogAkH0DWopAgA3AgAgASAuIEYgYhBGIAEhAgwACwALQQAhAiATIIoBRg0AIBP9DAAAgD8AAIA/AACAPwAAgD/9CwSQASATIBP9AATQA/0LBMADIBMgE/0ABIAG/QsE8AUgEyAT/QAEsAj9CwSgCCATIBP9AATgCv0LBNAKIBMgE/0ABMAO/QsEoA4gEyAT/QAE8BL9CwTQEiATIBP9AASgF/0LBIAXIBNBsA5qIBNB0A5q/QAEAP0LBAAgE0HgEmogE0GAE2r9AAQA/QsEACATQZAXaiATQbAXav0ABAD9CwQAIBNBwBtqIBNB4Btq/QAEAP0LBAAgEyAT/QAE0Bv9CwSwGyATIEYQViATQbAdaiETDAILIA8giQFHBEAgD/0MAACAPwAAgD8AAIA/AACAP/0LBJABIA8gD/0ABNAD/QsEwAMgDyAP/QAEgAb9CwTwBSAPIA/9AASwCP0LBKAIIA8gD/0ABOAK/QsE0AogDyAP/QAEwA79CwSgDiAPQbAOaiAPQdAOav0ABAD9CwQAIA8gRhBKIA9BgBJqIQ9BACEQDAELCwsgWSAgQQFqIiBHDQALCyCEASBpQQFqImlHDQALIAAoAlAiAkGAlOvcA0cNFwwYCwwbCwwYC0EEIBBBgODBABDXDQALIBogEEGA4MEAENcNAAsgAkEEQYinwgAQ8A4ACyACQQRBqKPCABDwDgALIMgBQwAAAAAQhgsACyABQQRByKTCABDwDgALQYilwgAQ8g4AC0HQi8IAQRNB+KTCABDRCwALQeikwgAQ8g4AC0HQi8IAQRNB2KTCABDRCwALIAEgckGArcIAEO8OAAtB8KzCABDyDgALQdCLwgBBE0HgrMIAENELAAtB0KzCABDyDgALQdCLwgBBE0HArMIAENELAAsgEyByQfCtwgAQ7w4AC0HgrcIAEPIOAAtB0IvCAEETQdCtwgAQ0QsACyABIIcBQbCuwgAQ7w4ACyABIIgBQaCuwgAQ7w4ACyAmBEBBACEYA0AgGCBEaiICQQhqKgIAIaABIAJBBGoqAgAhtQEgGCBHaiIDIAIqAgAgAyoCAJI4AgAgA0EEaiIAILUBIAAqAgCSOAIAIANBCGoiACCgASAAKgIAkjgCACACQRRqKgIAIaABIAJBEGoqAgAhtQEgA0EMaiIAIAJBDGoqAgAgACoCAJI4AgAgA0EQaiIAILUBIAAqAgCSOAIAIANBFGoiACCgASAAKgIAkjgCACAYQSBqIRggJkEBayImDQALCyAXQQE2AuQCIBcgATYC4AIgF0EBNgL0ASAXIIYBNgLwASAXQgA3ArwEIBdCgYCAgMAANwK0BCAXQaSBwgA2ArAEIBdB8AFqIBdB4AJqIBdBsARqQayBwgAQ+AwACyAAKQNIIZ0CIBdB4AJqIgEQugogF0GwBGogASCdAiACEOQJIAApA1gingIgFykDsAR8Ip0CIJ4CVA0BIAAoAmAgFygCuARqIgFBgJTr3ANPBEAgnQJCf1ENAiCdAkIBfCGdAiABQYCU69wDayEBCyAAIAE2AmAgACCdAjcDWAsgAEGAlOvcAzYCUCAXQbAEahC6CiAXKQOwBCGdAiAAIBcoArgEIjk2ArABIAAgnQI3A6gBIC4oApwCIhggLigCoAJBkARsaiEOIC4oApACIhogLigClAJBiAFsaiEPIC4oAoQCIhAgLigCiAJByABsaiETA0AgDyAaRyEBQQEhAgJAA0ACQCACQQFxBEACQCAQRQ0AIBAgE0YNACAQIDcgQBCZByAQQcgAaiECA0AgAiATRg0BIAIgNyBAEJkHIAJByABqIQIMAAsAC0EAIRAgAQ0BCyAOIBhGDQIjAEEgayIeJAAgGCgCICECIBgoAoAEIR8CQAJAAkACQAJAIBgoAoQEIiFBBU0EQCACIEBPDQEgIUEMbCEmICFBHGwhEiAY/QAEMCHSASA3IAJBgANsaiECAkACQAJAAkAgH0EBaw4CAQACCyACIBJqQaQBaiDSAf0fADgCAAwCCyACICZqQRhqINIB/R8AOAIADAELIAIgIUECdGpB0AJqINIB/R8AOAIACyBAIBgoAiQiAk0NASA3IAJBgANsaiECAkACQAJAAkAgH0EBaw4CAQACCyACIBJqQaQBaiDSAf0fATgCAAwCCyACICZqQRhqINIB/R8BOAIADAELIAIgIUECdGpB0AJqINIB/R8BOAIACyBAIBgoAigiAk0NASA3IAJBgANsaiECAkACQAJAAkAgH0EBaw4CAQACCyACIBJqQaQBaiDSAf0fAjgCAAwCCyACICZqQRhqINIB/R8COAIADAELIAIgIUECdGpB0AJqINIB/R8COAIACyBAIBgoAiwiAk0NASA3IAJBgANsaiECAkACQAJAAkAgH0EBaw4CAQACCyACIBJqQaQBaiDSAf0fAzgCAAwCCyACICZqQRhqINIB/R8DOAIADAELIAIgIUECdGpB0AJqINIB/R8DOAIACyAeQSBqJAAMBQsgAiBATw0AIB9BAWsOAgIDAQsgAiBAQdCxwgAQhQsACyAeQQA2AhggHkEBNgIMIB5B7IDCADYCCCAeQgQ3AhAgHkEIakHgscIAELkNAAsgIUEGQfCxwgAQhQsACyAhQQZBgLLCABCFCwALIBhBkARqIRhBACECDAELCyMAQSBrIgIkAAJAAkACQAJAAkACQAJAIBooAhAiASBASQRAIDcgAUGAA2xqIQEgGigCBCESIBooAgBBAWsOAgIDAQsgASBAQeCwwgAQhQsACyASQQZPDQIgASASQQJ0akHQAmogGioCFDgCAAwFCyASQQZJDQMgEkEGQYCxwgAQhQsACyASQQZJDQEgEkEGQZCxwgAQhQsACyACQQA2AhggAkEBNgIMIAJB7IDCADYCCCACQgQ3AhAgAkEIakHwsMIAELkNAAsgASASQRxsakGkAWogGioCFDgCAAwBCyABIBJBDGxqQRhqIBoqAhQ4AgALIAJBIGokACAaQYgBaiEaDAELCyAuKAJ4IhggLigCfEGAEmxqITYgLigCbCIaIC4oAnBBsB1saiFBIC4oAmAiECAuKAJkQbgHbGohQgNAIBogQUchEkEBIQICQANAAkAgAkEBcQRAAkAgEEUNACAQIEJGDQAgECA8ICwQywMgEEG4B2ohAgNAIAIg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IAYoAogDIRQgBigCjAMhAkEAIREDQCAcKAIAIgEgAk8NECAUIAFBgANsaiIBKAIAQQFHDRAgASgCBCAcQQRqKAIARw0QIAEtAD0EQCABILEBIAEqApgBIqABIKABlCABKgKcASKgASCgAZSSIAEqAqABIqABIKABlJKRIAEqAjQgASoCpAEioAEgoAGUIAEqAqgBIqABIKABlJIgASoCrAEioAEgoAGUkpGUkpQgASoCMEMAACBBlV4iAToAPCABIBFyIRELIA8gHEEIaiIcRw0ACyARQQFxRQ0HICJBkAFqIi4QugogIigCmAEhPSAAICIpA5ABIqECNwPQAUEAIQJBACEUQQAhDiMAQdAEayIWJAAgIkEwaiIBKgIAIaABIBZCidm54o7TvpcINwMoIBZByOfBAP0AAwAi0gH9CwMYIBZBADYCPCAWQoCAgIDAADcCNCAWQonZueKO076XCDcDUCAWINIB/QsDQCAHKAIQIjpBsAFsIRAgASoCHEMK1yM8lCGaASAGKAKIAyEcIAYoAowDIRIgBygCDCEzQQAhAQNAAkACQAJAAkAgAiAQRwRAIAIgM2oiEygCAEUNAyATQfIAai0AAA0DIBNBIGooAgBFDQMCQCATQSRqKAIAIhEgEk8NACAcIBFBgANsaiIRKAIAQQFHDQAgESgCBCATQShqKAIARg0CC0HQi8IAQRNB+MDCABDRCwALIBYgBzYCtAEgFiAGNgKwASAWIAQ2AqwBIBZCADcCmAEgFkEANgKMASAWQQA2AoABIBZBADYCdCAWIAUoAkAiTzYCqAEgFiAFKAI8IE8oAghBAWtBeHFqQQhqIkc2AqQBIKABIZkBIAMoAggiAkUNASADKAIEIgEgAkEDdGohNiABQQhqIQIgFkGwAmohQCAFKAIUITIgBSgCECE+IAUoAgQhICAFKAIIIUUgBSgCOCFBIAUoAjQhLSAWQZgEaiEkIAYoAogDISwgBigCjAMhPCBPQSBqISEDQAJAIAEoAgAiESA8Tw0AICwgEUGAA2xqIhEoAgBBAUcNACARKAIEIAEoAgRHDQAgAiETAkAgES0APEUNACARKgKkASGkASARKgLoASGjASARKgKoASGlASARKgLsASGrASARKgL0ASGtASARKgKsASGhASARKgLEASGqASARKgL8ASGiASARKgK8ASGuASAR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BEAgACACQQRBAUEBENYGIAAoAgghAgsgACgCBCACakEMNgAAIAAgAkEEaiICNgIIIANBBGoqAgAhDiADKgIAIQ8gACgCACACa0EDTQRAIAAgAkEEQQFBARDWBiAAKAIIIQILIAAoAgQgAmogDzgAACAAIAJBBGoiAjYCCCAAKAIAIAJrQQNNBEAgACACQQRBAUEBENYGIAAoAgghAgsgACACQQRqNgIIIAAoAgQgAmogDjgAAEEAIQAMBgsgCCgCCCEDIAEoAgAiACgCCCECIAAoAgAgAmtBA00EQCAAIAJBBEEBQQEQ1gYgACgCCCECCyAAIAJBBGo2AgggACgCBCACakELNgAAIAMgARDWASEADAULIAEoAgAiACgCCCECIAAoAgAgAmtBA00EQCAAIAJBBEEBQQEQ1gYgACgCCCECCyAAIAJBBGo2AgggACgCBCACakEKNgAAIAgoAggiBEEEaigCACECIARBCGooAgAiBa0hCiABKAIAIgAoAgghAyAAKAIAIANrQQdNBEAgACADQQhBAUEBENYGIAAoAgghAwsgACADQQhqNgIIIAAoAgQgA2ogCjcAACAFQSRsIQMDQCADBEAgASACEM4GIgANBiACQRBqIAEQkAgiAA0GIANBJGshAyACQRxqIQAgAkEkaiECIAAgARAtIgBFDQEMBgsLIAEgBEEMahDxASIADQQgBEE4aigCACECIARBPGooAgAiBa0hCiABKAIAIgAoAgghAyAAKAIAIANrQQdNBEAgACADQQhBAUEBENYGIAAoAgghAwsgACADQQhqNgIIIAAoAgQgA2ogCjcAACAFQRhsIQMDQCADBEAgAiABEJAIIgANBiADQRhrIQMgAkEMaiEAIAJBGGohAiAAIAEQkAgiAEUNAQwGCwsgBEFAayABEJAIIgANBCAEQcwAaiABEJAIIQAMBAsgCCgCCCEGIAEoAgAiAigCCCEAIAIoAgAgAGtBA00EQCACIABBBEEBQQEQ1gYgAigCCCEACyACIABBBGo2AgggAigCBCAAakEJNgAAIAEgBhDkBSIADQMgBigCGCEDIAYoAhwiBa0hCiACKAIAIAIoAggiBGtBB00EQCACIARBCEEBQQEQ1gYgAigCCCEECyACIARBCGoiADYCCCACKAIEIARqIAo3AAAgBQRAA0AgAy0AACEHIANBAWoh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IgFBFGooAgAhFiABQRBqKAIAIQkgACgCECgCACIBQSxqKAIAIR0gAUEoaigCACEDIBIoAowDIQEgACgCFCgCACEXAkAgBioC+AEiJ0MAAAAAWwRAIAFBgANsIQADQCAARQ0CIABBgANrIQAMAAsACyAGKAKAAkECcUUEQCABQYADbCEAA0AgAEUNAiAAQYADayEADAALAAsgEigCiAMhCCABQYADbCEKIBj9AAMAITggGf0AAwAhOUEAIQEDQCABIApGDQECQCABIAhqIgAoAgBFDQAgAEEEaigCACEFIAIgAEEQajYCrAEgAiAFNgKoASACIAw2AqQBIAJBADYCoAEgAkEEaiACQaABahCLA0UNACAAQcQAaioCACIkIABByABqKgIAIiiUIiYgJpIiISAAQUBrKgIAIiYgAEHMAGoqAgAiKZQiIyAjkiIjkiEuICYgKJQiJSAlkiIlICQgKZQiIiAikiIikyEsICEgI5MhLyAmICSUIiEgIZIiISAoICmUIiMgI5IiI5IhMCAlICKSITEgISAjkyEtICggKJQiISApICmUIiUgJiAmlCIikyIrICQgJJQiI5OSISogIyArkiAhkyEyICIgJZIgI5MgIZMhMyA5ITcgAEH2AmotAABBAUYEQCA4/QwAAIA/AACAPwAAgD8AAIA/IABB5AJqLQAAGyE3CyAAQdAAaioCACE0IABB1ABqKgIAITUgJiAAQawCaioCACIilCAkIABBqAJqKgIAIiuUkyIhICGSISMgKCArlCAmIABBsAJqKgIAIiGUkyIlICWSISUgAiAnICyUIABB2ABqKgIAICEgKSAjlCAmICWUICQgJCAhlCAoICKUkyIhICGSIiyUk5KSkiIhkjgChAEgAiAnIDCUIDUgIiApICWUICggLJQgJiAjlJOSkpIiJpI4AoABIAIgJyAzlCA0ICsgKSAslCAkICOUICggJZSTkpKSIiSSOAJ8IAIgN/0fAyIoOAKsASACIDf9HwIiKUMAAIA+lDgCqAEgAiA3/R8BIiM4AqQBIAIgN/0fACIlQwAAAACUOAKgASACICE4AmAgAiAmOAJcIAIgJDgCWCACQQRqIgAgAkHYAGoiBSACQfwAaiIEIAJBoAFqIgcQxAMgAiAnIC6UICGSOAKEASACICcgMpQgJpI4AoABIAIgJyAtlCAkkjgCfCAC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IBuUk5IgF5MiBjgCgAFB////+wchA0P//39/IQlD//9//yELQ///f/8hD0P//3//IRBD//9//yEVQ///f38hE0P//39/IRRB////+wchBQJAIAIoAghFDQACQAJAIAIoAgQiASgCPEH/////A3EgASgCHEH/////A3FqDgICAAELIAEqAhghDyABKgIUIRAgASoCECEVIAEqAgghEyABKgIEIRQgASgCACEFDAELIAEqAhgiCiABKgI4Ig8gCiAPYBshDyABKgIUIgogASoCNCIQIAogEGAbIRAgASoCECIKIAEqAjAiFSAKIBVgGyEVIAEqAggiCiABKgIoIhMgCiATXxshEyABKgIEIgogASoCJCIUIAogFF8bIRQgASoCACIKIAEqAiAiHCAKIBxfG7whBQsCQCAEKAIIRQRAQ///f/8hCkP//3//IRxD//9/fyEgDAELQ///f/8hCkP//3//IRxD//9/fyEgAkACQCAEKAIEIgEoAjxB/////wNxIAEoAhxB/////wNxag4CAgABCyABKgIYIQsgASoCFCEKIAEqAhAhHCABKgIIIQkgASoCBCEgIAEoAgAhAwwBCyABKgIYIgogASoCOCIJIAkgCl8bIQsgASoCFCIKIAEqAjQiCSAJIApfGyEKIAEqAhAiCSABKgIwIhwgCSAcYBshHCABKgIIIgkgASoCKCIgIAkgIF8bIQkgASoCBCIgIAEqAiQiHiAeICBgGyEgIAEqAgAiHiABKgIgIiIgHiAiXxu8IQMLIEIgD/0TIAv9IAEgE/0TIAn9IAH95QH9DAAAAD8AAAA/AAAAPwAAAD/95gEiXyBf/eYBIBD9EyAK/SABIBT9EyAg/SAB/eUB/QwAAAA/AAAAPwAAAD8AAAA//eYBIl8gX/3mASAV/RMgHP0gASAF/REgA/0cAf3lAf0MAAAAPwAAAD8AAAA/AAAAP/3mASJfIF/95gH95AH95AEiX/0fACBf/R8BXSIBOgCXASABDQQgCyEPIAohECAcIRUgCSETICAhFCADIQUgGCENIBYhESAXIQYgGSEMIBshDiAaIRIgRSEDIEMhBCBGIUUgRyFDDA8LIEIgBCAFKAJgEQAAIEJBwAFqIgQgQigCACIAIEIoAgQoAgwRAABBACFEIABFDRAgQikDwAFC3oWKxraak/zQAIUgQikDyAFChcGX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BEL////7////v383ApwBIAT9DP//f3///39///9/f///f//9CwKMASAEQQA2AogBIARC////+////79/NwOAASAE/Qz//39///9/f///f3///3///QsEcCAEQQA2AmwgBEL////7////v383AmQgBP0M//9/f///f3///39///9///0LAlQgBEEANgJQIARC////+////79/NwNIIAT9DP//f3///39///9/f///f//9CwM4IARBADYCNCAEQv////v///+/fzcCLCAE/Qz//39///9/f///f3///3///QsCHCAEQQA2AhggBEL////7////v383AxAgBP0M//9/f///f3///39///9///0LBAACQAJAAkACQCADQQFLBEAgA0EFdCIHQSBrIQggAioCCCACKgIYkkMAAAA/lCIXIRggAv0ABAAgAv0ABBD95AH9DAAAAD8AAAA/AAAAPwAAAD/95gEiciFzA0AgFyACIAVqIgZBKGoqAgAgBkE4aioCAJJDAAAAP5QiFiAWIBdfGyEXIBggFiAWIBhgGyEYIAZBIGr9XQIAIAZBMGr9XQIA/eQB/QwAAAA/AAAAPwAAAD8AAAA//eYBInQgcv3rASFyIHQgc/3qASFzIAggBUEgaiIFRw0ACyAEIHL9HwA4AuwBIAQgc/0fATgC5AEgBCBz/R8AOALgASAEIHL9HwE4AvABIAQgGDgC6AEgBCAXOAL0AUECIHIgc/3lASJy/R8BIhYgcv0fACIZXiIFIBcgGJMgFiAZIAUbXhsiEEECdCIFIARB4AFqaioCACEXQ1j//0AgBEHsAWogBWoqAgAgF5OVIRggBEH4AWogBWohCEEAIQUDQCACIAVqIgZBGGoqAgAhFiAEIAZBCGoqAgAgFpJDAAAAP5Q4AoACIAQgBkEEaiIJKgIAIAZBFGoqAgAiGZJDAAAAP5Q4AvwBIAQgBioCACIbIAZBEGoqAgAiGpJDAAAAP5Q4AvgBIBggCCoCACAXk5T8ASIGQQhPDQIgBCAGQRxsaiIGIAYoAhhBAWo2AhggBiAGKgIUIhwgFiAWIBxfGzgCFCAGIAYqAhAiFiAZIBYgGWAbOAIQIBv9EyAJ/V0CAP0NAAECAxAREhMUFRYXAAECAyAG/QACACJy/Q0AAQIDBAUGBwgJCgscHR4fIXMgBiByIHMgGv0gAyByIBr9IAMgc/1F/VL9CwIAIAcgBUEgaiIFRw0ACyAEKALAASIKIAQoAqQBIg0gBCgCiAEiDiAEKAJsIgsgBCgCUCIPIAQoAjQiESAEKAIYIgVqIgZqIgdqIghqIglqIgxqIhIgDCAJIAggByAGIAUgBCoCDCIjIAQqAigiFiAWICNfGyI9IAQqAgAiPiAEKgIcIhkgGSA+YBsiP5MgBCoCECJAIAQqAiwiGiAaIEBfGyJBIAQqAgQiQiAEKgIgIhsgGyBCYBsiQ5OUIAQqAhQiRCAEKgIwIhwgHCBEXxsiRSAEKgIIIkYgBCoCJCIdIB0gRmAbIkeTlCAGs5QgBCoC0AEiSCAEKgK0ASIkICQgSF8bIkkgBCoCmAEiISAhIElfGyJKIAQqAnwiHiAeIEpfGyJLIAQqAmAiHyAfIEtfGyJMIAQqAkQiICAgIExfGyJNIAQqAsQBIk4gBCoCqAEiJSAlIE5gGyJPIAQqAowBIiYgJiBPYBsiUCAEKgJwIicgJyBQYBsiUSAEKgJUIiggKCBRYBsiUiAEKgI4IiIgIiBSYBsiU5MgBCoC1AEiVCAEKgK4ASIpICkgVF8bIlUgBCoCnAEiKiAqIFVfGyJWIAQqAoABIisgKyBWXxsiVyAEKgJkIiwgLCBXXxsiWCAEKgJIIi0gLSBYXxsiWSAEKgLIASJaIAQqAqwBIi4gLiBaYBsiWyAEKgKQASIvIC8gW2AbIlwgBCoCdCIwIDAgXGAbIl0gBCoCWCIxIDEgXWAbIl4gBCoCPCIyIDIgXmAbIl+TlCAEKgLYASJgIAQqArwBIjMgMyBgXxsiYSAEKgKgASI0IDQgYV8bImIgBCoChAEiNSA1IGJfGyJjIAQqAmgiNiA2IGNfGyJkIAQqAkwiNyA3IGRfGyJlIAQqAswBImYgBCoCsAEiOCA4IGZgGyJnIAQqApQBIjkgOSBnYBsiaCAEKgJ4IjogOiBoYBsiaSAEKgJcIjsgOyBpYBsiaiAEKgJAIjwgPCBqYBsia5OUIAQoAtwBIgYgCmoiCiANaiINIA5qIg4gC2oiCyAPaiIPs5SSImwgIyA+kyBAIEKTlCBEIEaTlCAFs5QgTSAWIBYgTV8bIFMgGSAZIFNgG5MgWSAaIBogWV8bIF8gGyAbIF9gG5OUIGUgHCAcIGVfGyBrIB0gHSBrYBuTlCAPIBFqs5SSIhZD//9/fyAWQ///f39dGyIjXSIFGyA9ICAgICA9XxsiFiA/ICIgIiA/YBsiGZMgQSAtIC0gQV8bIhogQyAyIDIgQ2AbIhuTlCBFIDcgNyBFXxsiHCBHIDwgPCBHYBsiHZOUIAezlCBMIFKTIFggXpOUIGQgapOUIAuzlJIiICBsICMgBRsiIl0iBxsgFiAfIBYgH2AbIhYgGSAoIBkgKF8bIhmTIBogLCAaICxgGyIaIBsgMSAbIDFfGyIbk5QgHCA2IBwgNmAbIhwgHSA7IB0gO18bIh2TlCAIs5QgSyBRkyBXIF2TlCBjIGmTlCAOs5SSIh8gICAiIAcbIiBdIggbIBYgHiAWIB5gGyIWIBkgJyAZICdfGyIZkyAaICsgGiArYBsiGiAbIDAgGyAwXxsiG5OUIBwgNSAcIDVgGyIcIB0gOiAdIDpfGyIdk5QgCbOUIEogUJMgViBck5QgYiBok5QgDbOUkiIeIB8gICAIGyIfXSIJGyAWICEgFiAhYBsiFiAZICYgGSAmXxsiGZMgGiAqIBogKmAbIhogGyAvIBsgL18bIhuTlCAcIDQgHCA0YBsiHCAdIDkgHSA5XxsiHZOUIAyzlCBJIE+TIFUgW5OUIGEgZ5OUIAqzlJIiISAeIB8gCRsiHl0iDBsgFiAkIBYgJGAbIBkgJSAZICVfG5MgGiApIBogKWAbIBsgLiAbIC5fG5OUIBwgMyAcIDNgGyAdIDggHSA4XxuTlCASs5QgSCBOkyBUIFqTlCBgIGaTlCAGs5SSICEgHiAMG10iChsiBkUNAiADIAZGDQJBBkEFQQRBA0ECIAUgBxsgCBsgCRsgDBsgChshDEEAIANrIRJBACAGayETIARB+AFqIBBBAnRqIRBBACEFIAYhBwNAIAVBAWohCCACIAVBBXRqIQlBACAFIAMgAyAFSRsiBWshCwNAAkACQCAIIAtqQQFHBEAgBCAJQQhqIgoqAgAgCUEYaiINKgIAkkMAAAA/lDgCgAIgBCAJQQRqKgIAIAlBFGoqAgCSQwAAAD+UOAL8ASAEIAkqAgAgCUEQaiIOKgIAkkMAAAA/lDgC+AEgGCAQKgIAIBeTlPwBIAxNDQEgAiAHQQV0aiEFQQAgByADIAMgB0kbIhRrIRUgB0EBaiEHA0AgByAVakEBRg0DIAQgBUEIaiILKgIAIAVBGGoiDyoCAJJDAAAAP5Q4AoACIAQgBUEEaioCACAFQRRqKgIAkkMAAAA/lDgC/AEgBCAFKgIAIAVBEGoiESoCAJJDAAAAP5Q4AvgBIAwgGCAQKgIAIBeTlPwBSQRAIAVBIGohBSASIAdBAWoiB2pBAUcNAQwKCwsgESkDACFtIAkpAwAhbiAJIAUpAwA3AwAgDikDACFvIA4gbTcDACAKKQMAIW0gDykDACFwIAogCykDADcDACANKQMAIXEgDSBwNwMAIAUgbjcDACARIG83AwAgCyBtNwMAIA8gcTcDACAGIAhGDQggCCEFIAMgB0cNBAwICyAFIANBgObCABCFCwALIAlBIGohCSATIAhBAWoiCGpBAUcNAQwGCwsLIBQgA0GA5sIAEIULAAtB5OLCAEEiQYjjwgAQ1gwACyAGQQhB8OXCABCFCwALIANBAXYhBgwBCyADIAZPDQAgBEEANgKIAiAEQQE2AvwBIARBkNrCADYC+AEgBEIENwKAAiAEQfgBakGY48IAELkNAAsCQAJAAkACQAJAIAZFDQAgAyAGRg0AIAAoAgghByAGQQFGBEAgASAHTw0CIAJBCGopAwAhbSAAKAIEIAFBBnRqIgVBGGogAkEYaikDADcDACAFQQhqIG03AwAgAkEQaikDACFtIAUgAikDADcDACAFQRBqIG03AwAgBSgCDCEHIAUoAhxB/////wNxQQFGBEACQCAHIAAoAiBPDQAgACgCHCAHQQN0aiIFKAIARQ0AIAUgAUEBdDYCBAwHC0GQ5MIAQQ9BoOTCABDRCwALIAAoAhQiBSAHTQ0DIAAoAhAgB0ECdGogAUEBdDYCAAwFCyAAKAIAIAdGBEAgAEHA5MIAEMMICyAAKAIEIAdBBnRqIgX9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIAVBMGr9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIAVBIGr9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIAVBEGr9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIAAgB0EBajYCCCABQQF0IQggACgCFCIFIAAoAgxGBEAgAEEMakHQ5MIAELYICyAAKAIQIAVBAnRqIAg2AgAgACAFQQFqNgIUIAAgByACIAYQPSAAKAIIIgUgB00NAyABIAVJBEAgACgCBCIIIAdBBnRqIgUqAighFyAFKgIIIRggBSoCJCEWIAUqAgQhGSAFKgIgIRogBSoCACEbIAggAUEGdGoiCCAHNgIMIAggGCAXIBcgGGAbOAIIIAggGSAWIBYgGWAbOAIEIAggGyAaIBogG2AbOAIAIAggBSoCGCIXIAUqAjgiGCAXIBhgGzgCGCAIIAUqAhQiFyAFKgI0IhggFyAYYBs4AhQgCCAFKgIQIhcgBSoCMCIYIBcgGGAbOAIQIAggBSgCHCIHQf////8DcSAFKAI8IgVB/////wNxaiAFIAdyQYCAgIB8cXI2AhwMBQsgASAFQfDkwgAQhQsAC0Go48IAQcUAQfDjwgAQ1gwACyABIAdBgOTCABCFCwALIAcgBUGw5MIAEIULAAsgByAFQeDkwgAQhQsACyACIAZBBXRqIQUgACgCCCECAkACQAJAIAMgBmsiBkEBRgRAAkACQCABIAJJBEAgBUEIaikDACFtIAAoAgQgAUEGdGoiAkE4aiAFQRhqKQMANwMAIAJBKGogbTcDACAFQRBqKQMAIW0gAiAFKQMANwMgIAJBMGogbTcDACACKAIsIQMgAigCPEH/////A3FBAUcNAiADIAAoAiBPDQEgACgCHCADQQN0aiIAKAIARQ0BIAAgAUEBdEEBcjYCBAwGCyABIAJBgOXCABCFCwALQZDkwgBBD0GQ5cIAENELAAsgACgCFCICIANNDQEgACgCECADQQJ0aiABQQF0QQFyNgIADAMLIAAoAgAgAkYEQCAAQbDlwgAQwwgLIAAoAgQgAkEGdGoiA/0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgA0Ewav0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgA0Egav0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgA0EQav0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgACACQQFqNgIIIAFBAXRBAXIhByAAKAIUIgMgACgCDEYEQCAAQQxqQcDlwgAQtggLIAAoAhAgA0ECdGogBzYCACAAIANBAWo2AhQgACACIAUgBhA9IAAoAggiAyACTQ0BIAEgA0kEQCAAKAIEIgMgAkEGdGoiACoCKCEXIAAqAgghGCAAKgIkIRYgACoCBCEZIAAqAiAhGiAAKgIAIRsgAyABQQZ0aiIBIAI2AiwgASAYIBcgFyAYYBs4AiggASAZIBYgFiAZYBs4AiQgASAbIBogGiAbYBs4AiAgASAAKgIYIhcgACoCOCIYIBcgGGAbOAI4IAEgACoCFCIXIAAqAjQiGCAXIBhgGzgCNCABIAAqAhAiFyAAKgIwIhggFyAYYBs4AjAgASAAKAIcIgFB/////wNxIAAoAjwiAEH/////A3FqIAAgAXJBgICAgHxxcjYCPAwDCyABIANB4OXCABCFCwALIAMgAkGg5cIAEIULAAsgAiADQdDlwgAQhQsACyAEQbACaiQAC8IpAxp/Bn4GfSMAQeACayIEJAAgBEEANgIIIARCgICAgMAANwIAIARBADYCFCAEQoCAgIDAADcCDCAEQQA2AiAgBEKAgICAwAA3AhggBEEANgIsIARCgICAgMAANwIkIARCidm54o7TvpcINwNAIARBoNzCAP0AAwD9CwMwIARBADYCUCAEQoCAgIDAADcCSCAEQQA2AlwgBEKAgICAwAA3AlQgBEEANgJoIARCgICAgMAANwJgIARBADYCdCAEQoCAgIDAADcCbAJAAkACQAJ/AkAgASgCCCILIANqIgVBA08EQCAEQQxqQQAgBUECa0EEQSAQ2AYgA0UNASACIANBDGxqIRkgAkEMaiEOIAEoAgQhESAEQYABaiEXQQQhGAJAAkADQCAXQX82AgAgBEJ/NwN4IAIoAgAiEiACKAIEIhNGDQYgAigCCCINIBJGDQYgDSATRg0GIA+tQoCAgIBwhCEjQQEhB0EAIQYDQCAEQYgBaiEDQQAhECAEQTBqIgUoAgQhCSAJIAIgBmooAgAiDCACIAdBACAGQQhHG0ECdGooAgAiCiAKIAxLG60gDCAKIAogDEkbrUIghoQiHyAFKQMQQjiJhSIeQiCIIiAgH0KXkpyq27a1wj+FIiFCIIgiIn4gHkL/////D4MiHiAhQv////8PgyIhfoUgICAhfiAeICJ+hUIgiYUiHkL/////D4NCAoUiIELdofHLDH4gHkIgiCIeQrfTsIUMfoUgIEK307CFDH4gHkLdofHLDH6FQiCJhSIgp3EhCCAgQhmIQv8Ag0KBgoSIkKDAgAF+ISIgBSgCACIUQQxrIRUCQAJAA0ACQCAIIBRqKQAAIiEgIoUiHkKBgoSIkKDAgAF9IB5Cf4WDQoCBgoSIkKDAgH+DIh5CAFIEQANAIB8gFUEAIB56p0EDdiAIaiAJcWsiFkEMbGopAgBRDQIgHkIBfSAegyIeQgBSDQALCyAhICFCAYaDQoCBgoSIkKDAgH+DQgBSDQIgEEEIaiIQIAhqIAlxIQgMAQsLIAMgBTYCDCADICA3AwAgAyAUIBZBDGxqNgIIIANBADYCEAwBCyADIB83AwggAyAgNwMAIAMgBTYCEAsCQAJAAn0CQAJAAkAgBCgCmAEiAwRAIAQpA4gBIR4gBCkDkAEhHyAEIAQoAhQiEDYC2AIgBCAfNwPQAiAEQfgAaiAGaiEbIARB0AJqIRQgA0EQaiEaIwBBEGsiFiQAIAMoAgQiFSAepyIccSIIIAMoAgAiCWopAABCgIGChIiQoMCAf4MiH1AEQEEIIQUDQCAFIAhqIQggBUEIaiEFIAkgCCAVcSIIaikAAEKAgYKEiJCgwIB/gyIfUA0ACwsgCSAfeqdBA3YgCGogFXEiCGosAAAiBUEATgRAIAkgCSkDAEKAgYKEiJCgwIB/g3qnQQN2IghqLQAAIQULAkAgAygCCCIdQQEgBUEBcSIFGwRAIAggCWogHEEZdiIaOgAAIAkgCEEIayAVcWpBCGogGjoAACADIB0gBWs2AgggAyADKAIMQQFqNgIMIAkgCEF0bGoiA0EMayIFQQhqIBRBCGooAgA2AgAgBSAUKQIANwIADAELIBZBCGogAyAaEOgBIAMgHiADKAIAIAMoAgQgHhCFCiAUEIwKIQMLIBZBEGokACAbIANBBGsoAgA2AgAgCiALTw0BIAsgDE0NAiARIApBDGxqIgMqAgAgESAMQQxsaiIFKgIAkyIlICWUIAMqAgQgBSoCBJMiJyAnlJIgAyoCCCAFKgIIkyImICaUkiIkQwAAgCheIgMNA0MAAIA/ISZDAAAAACEkQwAAAAAMBAsgBCgCFCIJIAQoApABQQRrKAIAIgNNDQQgBCgCECIIIANBBXRqQQxqIgUoAgBBf0cNDSAFIA82AgAgBEH4AGogBmogAzYCAAwFCyAKIAtBuMXDABCFCwALIAwgC0HIxcMAEIULAAsgJiAkkSIolSEkICUgKJUhJiAnICiVCyElIANFIQUgDK0gCq1CIIaEIR4gBCgCDCAQRgRAIARBDGpB2MXDABDCCAsgBCgCECIIIBBBBXRqIgMgBToAHCADICQ4AhggAyAlOAIUIAMgJjgCECADICM3AgggAyAeNwIAIAMgBC8A0AI7AB0gA0EfaiAEQdICai0AADoAACAEIBBBAWoiCTYCFAwBCyADIAlBqMXDABCFCwALIAdBAWohByAGQQRqIgZBDEcNAAsgCyASTQ0BIAsgE00NAgJ/AkAgCyANSwRAIBEgE0EMbGoiAyoCACARIBJBDGxqIgUqAgAiJZMiJiARIA1BDGxqIgYqAgQgBSoCBCIkkyInlCADKgIEICSTIiQgBioCACAlkyIolJMiJSAllCAkIAYqAgggBSoCCCIkkyIplCADKgIIICSTIiQgJ5STIicgJ5QgJCAolCAmICmUkyIkICSUkpIiJkMAAIAoXg0BQwAAAAAhJkMAAAAAISRDAAAAACElQQEMAgsgDSALQYjFwwAQhQsACyAlICaRIiWVISYgJCAllSEkICcgJZUhJUEACyEDIARBuAFqIgYgAkEIaigCADYCACAEQagBaiIHIBcoAgA2AgAgBCAEKQN4NwOgASAEIAIpAgA3A7ABIAQoAiQgD0YEQCAEQSRqQZjFwwAQmAggBCgCKCEYCyAYIA9BMGxqIgVBADYCACAFIAQpA7ABNwIIIAVBEGogBigCADYCACAFIAQpA6ABNwIUIAVBHGogBygCADYCACAFIAM6ACwgBSAmOAIoIAUgJDgCJCAFICU4AiAgBCAPQQFqIg82AiwgAkEMaiECIA5BDEEAIA4gGUciAxtqIQ4gAw0ACyAIIAlBBXRqDAQLIBIgC0HoxMMAEIULAAsgEyALQfjEwwAQhQsACwwCCyAEKAIUIglFDQIgBCgCECIIIAlBBXRqCyEKIAhBIGohBiAEKAIoIQMgCCEFA0AgBSgCCCIHIA9PDQEgBUEMaigCACIOIA9PDQEgBiECIAMgB0EwbGoiBioCICADIA5BMGxqIgcqAiCUIAZBJGoqAgAgB0EkaioCAJSSIAZBKGoqAgAgB0EoaioCAJSSQ1/pfz9eBEAgBUEBOgAcCyACIApHIgUEQCACIAVBBXRqIQYgAiIFDQELCyAEKAIoIRIgBEHoAWohEEEBIQVBACEMA0AgDCEDIAUhDAJAIBIgA0EwbGoiBSgCAA0AAkAgCSAFKAIUIgdNDQBBASEGAkAgCCAHQQV0ai0AHEEBRwRAQQAhAgwBCyAJIAVBFGoiBigCBCIHTQ0BQQEhAiAIIAdBBXRqLQAcQQFHBEBBAiEGDAELIAkgBigCCCIHTQ0BIAggB0EFdGotABwNAkECIQJBACEGCyAQIAVBKGooAgA2AgAgBCAFKQIgNwPgASAEKAIgIREgBCgCaCITIAQoAmBGBEAgBEHgAGpBiMPDABC2CAsgBCgCZCIOIBNBAnRqIAc2AgAgBCATQQFqIgc2AmggBSACQQJ0aiICQQhqIQ0gAigCCCEFIAQoAnQiAiAEKAJsRgRAIARB7ABqQZjDwwAQtggLIAQoAnAgAkECdGogBTYCAEEBIQUgBCACQQFqNgJ0IA0oAgAhFQNAIBIgA0EwbGoiAiAGQQJ0aiINKAIIIhQgFUYEQCAFQQNJDQMgBCgCGCARRgRAIARBGGpBuMPDABCUCAsgBCgCHCARQRRsaiICIAU2AgQgAiATNgIAIAIgBCkD4AE3AgggAkEQaiAQKAIANgIAIAQgEUEBajYCIAwDCyACIBE2AgQgAkEBNgIAAkACQAJAIA0oAhQiAiAJSQRAIAggAkEFdGoiDS0AHEUEQCAEKAJgIAdGBEAgBEHgAGpB2MPDABC2CCAEKAJkIQ4LIA4gB0ECdGogAjYCACAEIAdBAWoiBzYCaCAEKAJ0IgIgBCgCbEYEQCAEQewAakHow8MAELYICyAEKAJwIAJBAnRqIBQ2AgAgBCACQQFqNgJ0IAZBAWoiAkEAIAJBA0cbIQYgBUEBaiEFDAQLIA8gDSgCDCANKAIIIgYgAyAGRhsiA00NAQJ/QQEgAiASIANBMGxqIg0oAhRGDQAaQQIgAiANKAIYRg0AGiANKAIcIAJHDQNBAAshBiAGQQJ0IA1qKAIIIBRGDQNBiMTDAEHQAEHYxMMAENYMAAsgAiAJQcjDwwAQhQsACyADIA9B+MPDABCFCwALQejawgBBKEH4wcMAENYMAAsgAyAPSQ0ACyADIA9BqMPDABCFCwALIAcgCUH4wsMAEIULAAsgDCAPSSICIAxqIQUgAg0ACyAIQSBqIQYgBCgCLCECIAQoAighAwNAAkAgCCgCCCIFIAJPDQAgAyAFQTBsaiIFKAIAQQFGBEAgCCAFKAIENgIICyAIQQxqIgUoAgAiByACTw0AIAYhCCADIAdBMGxqIgYoAgBBAUYEQCAFIAYoAgQ2AgALIAggCkYNAyAIIAggCkdBBXRqIQYgCA0BDAMLCwsgAEGAgICAeDYCACAEKAJsIgAEQCAEKAJwIABBAnRBBBDoDgsgBCgCYCIABEAgBCgCZCAAQQJ0QQQQ6A4LIAQoAlQiAARAIAQoAlggAEECdEEEEOgOCyAEKAJIIgAEQCAEKAJMIABBAnRBBBDoDgsgBCgCNCIABEAgBCgCMCAAQQxsQRNqQXhxIgJrIAAgAmpBCWpBCBDoDgsgBCgCJCIABEAgBCgCKCAAQTBsQQQQ6A4LIAQoAhgiAARAIAQoAhwgAEEUbEEEEOgOCyAEKAIMIgAEQCAEKAIQIABBBXRBBBDoDgsgBCgCACIABEAgBCgCBCAAQQN0QQQQ6A4LIAEoAgAiAEUNASABKAIEIABBDGxBBBDoDgwBCyAEIQIgBCgCCCIFIAsiA0kEQCADIAVrIgMgBCgCACAFa0sEQCAEIAUgA0EEQQgQ2AYgBCgCCCEFCyACKAIEIgYgBUEDdGohAiADQQJPBEAgA0EDdEEIayIHBEAgAkEAIAf8CwALIAMgBWoiAkEBayEFIAYgAkEDdGpBCGshAgsgAkIANwIAIAVBAWohAwsgBCADNgIIIAQoAhwiDiAEKAIgIgxBFGxqIREgBCgCCCELIAQoAgQhCCAMBEAgDkEUaiEFIAQoAnQhBiAEKAJwIQogDiEHA0AgByECIAUhByACKAIEIgUgAigCACIDaiECAkACQCACIAVPBEAgAiAGSw0BIAVFDQIgCiADQQJ0aiEDIAVBAnQhBQNAIAMoAgAiAiALSQRAIAggAkEDdGoiAiACKAIEQQFqNgIEIANBBGohAyAFQQRrIgUNAQwECwsgAiALQejCwwAQhQsACyADIAJB2MLDABDxDgALIAIgBkHYwsMAEPAOAAsgB0EAQRQgByARRiICG2ohBSACRQ0ACwsCQCALBEAgC0EBa0H/////AXEiAkEBaiIKQQdxIQYCQCACQQdJBEBBACEFIAghAwwBCyAKQfj///8DcSEHQQAhBSAIIQMDQCADIAU2AgAgA0EIaiADQQRqKAIAIAVqIgU2AgAgA0EQaiADQQxqKAIAIAVqIgU2AgAgA0EYaiADQRRqKAIAIAVqIgU2AgAgA0EgaiADQRxqKAIAIAVqIgU2AgAgA0EoaiADQSRqKAIAIAVqIgU2AgAgA0EwaiADQSxqKAIAIAVqIgU2AgAgA0E4aiADQTRqKAIAIAVqIgU2AgAgA0E8aigCACAFaiEFIANBQGshAyAHQQhrIgcNAAsLIAYEQANAIAMgBTYCACADQQRqKAIAIAVqIQUgA0EIaiEDIAZBAWsiBg0ACwsgBEHIAGogBRDRBiAEQdQAaiAFENEGIAghAyAKQQdxIgUEQANAIANBBGpBADYCACADQQhqIQMgBUEBayIFDQALCyACQQdJDQEgCCALQQN0aiECA0AgA0E8akEANgIAIANBNGpBADYCACADQSxqQQA2AgAgA0EkakEANgIAIANBHGpBADYCACADQRRqQQA2AgAgA0EMakEANgIAIANBBGpBADYCACACIANBQGsiA0cNAAsMAQsgBEHIAGpBABDRBiAEQdQAakEAENEGCyAMBEAgDkEUaiEDIAQoAmQhFCAEKAJYIRUgBCgCXCESIAQoAmghDyAEKAJMIRcgBCgCUCETIAQoAnAhGCAEKAJ0IQlBASEGQQAhDANAIA4hAiADIQ4gDCEDIAYhDAJAIAIoAgAiByAHIAIoAgQiDWpPDQAgB0ECdCICIBhqIQYgAiAUaiECIAcgCSAHIAlLGyIWIAdrIQUgByAPIAcgD0sbIhkgB2shBwJAAkACQAJAA0AgBUUNASAGKAIAIgogC08NAiAIIApBA3RqIgooAgQgCigCAGoiECATTw0DIBcgEEECdGogAzYCACAHRQ0EIAooAgQgCigCAGoiECASSQRAIBUgEEECdGogAigCADYCACAKIAooAgRBAWo2AgQgBkEEaiEGIAJBBGohAiAFQQFrIQUgB0EBayEHIA1BAWsiDUUNBgwBCwsgECASQcjCwwAQhQsACyAWIAlBiMLDABCFCwALIAogC0GYwsMAEIULAAsgECATQajCwwAQhQsACyAZIA9BuMLDABCFCwALIA4gEUciAiAMaiEGIA5BFEEAIAIbaiEDIAINAAsLIARBhAJqIARBCGooAgA2AgAgBEGQAmogBEEgaigCADYCACAEQZwCaiAEQRRqKAIANgIAIARBqAJqIARB0ABqKAIANgIAIARBtAJqIARB3ABqKAIANgIAIAQgBCkCADcC/AEgBCAEKQIYNwOIAiAEIAQpAgw3ApQCIAQgBCkCSDcDoAIgBCAEKQJUNwKsAiAEQcACaiAEQegAaigCADYCACAEQcwCaiAEQfQAaigCADYCACAEQfABaiICQQhqIAFBCGooAgA2AgAgBCAEKQJgNwO4AiAEIAQpAmw3AsQCIAQgASkCADcD8AEgACAC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QQxqIgAQjgEgA0EIaiAJKAIANgIAIAMgASkCADcCACADIAEpAgw3AgwgA0EUaiAAQQhqKAIANgIAIAFB4ABqJAAgBygCJCEAIAcoAhghASAHKAIsIQogBygCKCEEIAcoAiAhCyAHKAIcIQkgB0GAgID8AzYCICAHQoCAgPyDgIDAPzcCGCACIAkgCyAEIAogBSADIAYQqQMgAARAIAQgAEEDdEEEEOgOCyABRQ0KIAkgAUEMbEEEEOgODAoLIAdBGGohAyAHKAIQIQkgACgC8AEhDCAAKAL0ASEEIwBB4ABrIgEkACABQTBqIgBBCGoiCkEANgIAIAFBADYCCCABQoCAgIDAADcCACABQQA2AhQgAUKAgICAwAA3AgwgAUEANgIgIAFBADYCLCABQQA2AiQgASAJKgIAIh04AiggASAJKgIEIh+MIh44AhggASAeOAIwIAkqAgghHiABIB2MIiA4AhwgASAgIB6TOAI0IB8gH5QgHUMAAADAlCIjICOUkpEhICABIB4gIyAglZQiI0MAAAAAkjgCPCABIB0gHiAfICCVlCIhkjgCQCABIB5DAAAAACAglZRDAAAAAJIiIDgCRCABQdj5wwAQkQggASgCBCIJIAEpAjA3AgAgCUEIaiAKKAIANgIAIAFBATYCCCABICA4AlAgASAhIB2TIiE4AkwgASAjIB+TIh84AkggAUEYaiAAIAFByABqIAQgARDDAiABKAIAIgsgASgCCCIJRgRAIAFB6PnDABCRCCABKAIAIQsLIB4gHZIhHSABKAIEIgAgCUEMbGoiCiAgOAIIIAogITgCBCAKIB84AgAgASAJQQFqIgo2AgggCiALRgRAIAFB+PnDABCRCCABKAIEIQALIAAgCkEMbGoiACABKQI8NwIAIABBCGogAUE8aiIAQQhqKAIANgIAIAEgCUECajYCCCABQQA2AlAgASAdOAJMIAFBADYCSCABQSRqIAAgAUHIAGogBCABEMMCIAEoAggiACABKAIARgRAIAFBiPrDABCRCAsgAUEIaiIJIABBAWo2AgAgASgCBCAAQQxsaiIAQQA2AgggACAdOAIEIABBADYCACABQoCAgIAQNwJIIAEgBDYCUCABIARBAmo2AlQgASAEQQF0IgBBAmo2AlwgASAAQQFyNgJYQQEgAUHIAGpBAyAMIAEgAUEMaiIAEI4B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KAIEIAVqNgIEIAMgASABQQhqIgBBB2pBeHEgAGtqIgBqIgEhAiAAIANBA3I2AgQgBiAGQQhqIgVBB2pBeHEgBWtqIgQgAWshAwJAQczOxAAoAgAgBEcEQCAEQcjOxAAoAgBGDQEgBCgCBCIBQQNxQQFGBEAgBCABQXhxIgEQpwUgASADaiEDIAEgBGohBAsgBCAEKAIEQX5xNgIEIAIgA0EBcjYCBCACIANqIAM2AgAgA0GAAk8EQCACIAMQ8AUMBAsCf0G4zsQAKAIAIgFBASADQQN2dCIFcUUEQEG4zsQAIAEgBXI2AgAgA0H4AXFBsMzEAGoiAwwBCyADQfgBcSIBQbDMxABqIQMgAUG4zMQAaigCAAshASADIAI2AgggASACNgIMIAIgAzYCDCACIAE2AggMAwtBzM7EACACNgIAQcTOxABBxM7EACgCACADaiIBNgIAIAIgAUEBcjYCBAwCC0HIzsQAIAI2AgBBwM7EAEHAzsQAKAIAIANqIgE2AgAgAiABQQFyNgIEIAEgAmogATYCAAwBC0EAIQBBxM7EACgCACIBIANNDQFBxM7EACABIANrIgE2AgBBzM7EACADQczOxAAoAgAiAGoiAjYCACACIAFBAXI2AgQgACADQQNyNgIECyAAQQhqIQALIAlBEGokACAAC/kXAhx/AnwjAEGwBGsiAyQAIANCADcDmAEgA0IANwOQASADQgA3A4gBIANCADcDgAEgA0IANwN4IANCADcDcCADQgA3A2ggA0IANwNgIANCADcDWCADQgA3A1AgA0IANwNIIANCADcDQCADQgA3AzggA0IANwMwIANCADcDKCADQgA3AyAgA0IANwMYIANCADcDECADQgA3AwggA0IANwMAIANCADcDuAIgA0IANwOwAiADQgA3A6gCIANCADcDoAIgA0IANwOYAiADQgA3A5ACIANCADcDiAIgA0IANwOAAiADQgA3A/gBIANCADcD8AEgA0IANwPoASADQgA3A+ABIANCADcD2AEgA0IANwPQASADQgA3A8gBIANCADcDwAEgA0IANwO4ASADQgA3A7ABIANCADcDqAEgA0IANwOgASADQgA3A9gDIANCADcD0AMgA0IANwPIAyADQgA3A8ADIANCADcDuAMgA0IANwOwAyADQgA3A6gDIANCADcDoAMgA0IANwOYAyAD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AAsgA0GQAWokAAu2OgMefwZ+DH0jACIFISEgBUHAAmtBQHEiBCQAIARBQGtBqNzCACkDADcDACAEQfwAaiABQQhqKAIANgIAIARCADcDMCAEQoCAgIDAADcDKCAEQgQ3AyAgBEIANwMYIARCgICAgIAINwMQIARBADYCcCAEQoCAgIDAADcDaCAEQsAANwNgIARCADcDWCAEQoCAgIDAADcDUCAEQonZueKO076XCDcDSCAEQaDcwgApAwA3AzggBCABKQIANwJ0AkACQAJAAkACQAJAAkACfyADRQRAQZjcwgAhAkEADAELIAIgA0EMbGohDCAEQdwAaiEIIARB0ABqIQUgBEE4aiEDIARBsAFqIQoDQCACQQRqKAIAIRIgAkEIaigCACEWIAIoAgAiC0EfdiEBIAQgASALakEIbSABayIGNgKAAiAEIBZBH3YiASAWakEIbSABayIHNgKIAiAEIBJBH3YiASASakEIbSABayINNgKEAiAEQagBaiADIARBgAJqEOwEAn8gBCgCvAEiDgRAIAQpA6gBISIgBCgCZCIXIAQoAlxGBEAgCEGY5sMAEMQICyAEKAJgIBdBCXRqQcAAQYAE/AsAIAQgF0EBajYCZCAEKAJYIgkgBCgCUEYEQCAFQajmwwAQkQgLIAQoAlQgCUEMbGoiASAHNgIIIAEgDTYCBCABIAY2AgAgBCAJQQFqNgJYIARBgAJqIgFBCGogCkEIaigCADYCACAEQQA2ApACIAQgFzYCjAIgBCAKKQIANwOAAiAOICIgASAOQRBqEMcFDAELIAQoArABCyIJQQRrIgEgASgCAEEBajYCACAJQQhrKAIAIgkgBCgCZCIBTw0CIBIgBmtBA3QgC2ogB0EJdGsgFiANa0EGdGoiAUGABE8NAyAEKAJgIAlBCXRqIAFqQT86AAAgDCACQQxqIgJHDQALIAQoAjghAiAEKAJECyEBIAIpAwAhIiAEQgA3AqABIARCgICAgMAANwKYASAEQgQ3ApABIARCADcCiAEgBEKAgICAgAg3AoABIARBADYC+AEgBEIQNwK4ASAEQgA3ArABIARCgICAgIAINwKoASAEQgA3AvABIARCgICAgMAANwLoASAEQgA3AuABIARCgICAgMAANwLYASAEQgQ3AtABIARCADcCyAEgBEKAgICAwAA3AsABIAFFDQYg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NwIAIBBBCGogE0EIaigCADYCACADQfgCaiAMEIgCIAMoAvgCDQQgDiAEIgJHDQALCyABQQA2AvQBAkAgASgChANBAUcNACADQfgCaiAfEIgCIAMoAvgCQQFHDQAgA0HwAmogCEEIaigCADYCACADIAgpAgA3A+gCDAoLIAFBADYChAMgASgCMCECCyAYQQI2AgAgAkECRwRAIAFBMGohIwJAA0ACQCABKAK8ASICRQRAAkAgCygCACICQSFPBEAgASgCOCEFIAEoAjQiB0UNAyAGIQQgByECDAELIAshBCAGIQUgAkUNBAsgBCACQQFrIgQ2AgAgBSAEQQJ0aigCACECCyABQQA2ArwBIAIoAhxB/////wNxQQFHBEAgAigCDCIFIAEoArgBIgIoAggiBE8NCiABKgLUASEkIAEqAtABISVBASEEAkAgASoCzAEiJiACKAIEIAVBBnRqIgIqAgBgRQ0AIAIqAgQgJV9FDQAgAioCCCAkX0UNACACKgIQIAEqAsABYEUNACACKgIUIAEqAsQBYEUNACACKgIYIAEqAsgBYEUNACABIAI2ArwBQQAhBAsgAioCICAmX0UNAiACKgIkICVfRQ0CIAIqAiggJF9FDQIgAioCMCABKgLAAWBFDQIgAioCNCABKgLEAWBFDQIgAioCOCABKgLIAWBFDQIgAkEgaiEJIARFBEACfyALKAIAIgdBIUkEQCAHIQUgBiECQSAhByALDAELIAEoAjQhBSABKAI4IQIgBgshBCAFIAdGBEAgIxCgBCABKAI0IQUgASgCOCECIAYhBAsgAiAFQQJ0aiAJNgIAIAQgBCgCAEEBajYCAAwDCyABIAk2ArwBDAILIANB0AVqIgciBSABKALYASACKAIMEK0LIANB+AJqIgQgBSAiICEQsAcgGCAEQdgC/AoAAAJAIAEoAvQBQQFxRQ0AIAcgDBCIAiADKALQBUUNACADQfACaiAKQQhqKAIANgIAIAMgCikCADcD6AIMDQsCQCABKAKUBCINRQ0AIAEoAsQEIgIgASgCyAQiDk4NACABKAKYBCEPIAEoAsAEIQkgASgCrAQhByABKAKgBCEFA0AgASACQQFqIgQ2AsQEIAEgDzYCzAIgASANNgLIAiABQQA2AqACIAFCATcC9AEgASACNgLoAiABIAk2AvgCIAEgBTYC/AIgASAH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QdABayIDJABBGCEEAkAgAkEIaiIFKAIEIgdFBEBBAiEFDAELIAUgB0EBazYCBCAFKAIAIQUgA0EGNgIgIAMgBTYCHCADQSRqIANBHGoQggMgAQJ/IAMtADwiB0EDRgRAIAMoAiQMAQsCQAJAAkAgB0ECRwRAIANBQGsgA0EcahCCAyADLQBYIglBA0YEQCADKAJADAULIAlBAkYNASADQdwAaiADQRxqEIIDIAMtAHQiCkEDRgRAIAMoAlwMBQsgCkECRg0CIANB+ABqIANBHGoQggMgAy0AkAEiBkEDRgRAIAMoAngMBQsgBkECRg0DIANBlAFqIANBHGoQggMgAy0ArAEiDEEDRgRAIAMoApQBDAULAkACQAJAIAxBAkcEQCADQbABaiADQRxqEIIDIAMtAMgBIgVBAmsOAgIBAwtBBCADQc8BakHEzcEAEKgKDAcLIAMoArABDAYLQQUgA0HPAWpBxM3BABCoCgwFCyABIAP9AAKwAf0LAowBIAEgAy8AyQE7AKUBIAEgA/0AAij9CwIEIAFBnAFqIANBwAFqKQIANwIAIAFBpwFqIANBywFqLQAAOgAAIAFBFGogA0E4aigCADYCACADQQJqIANBPWoiBEECai0AADoAACADIAQvAAA7AQAgAygCJCEEIANBE2ogA0HQAGopAgA3AAAgASADQdkAaiIILwAAOwA1IAFBN2ogCEECai0AADoAACABIAP9AAJc/QsCOCABQcgAaiADQewAaikCADcCACABIANB9QBqIggvAAA7AFEgAUHTAGogCEECai0AADoAACABIAP9AAJ4/QsCVCABQeQAaiADQYgBaikCADcCACADIAP9AAJA/QsAAyABQe8AaiADQZEBaiIIQQJqLQAAOgAAIAEgCC8AADsAbSABQYABaiADQaQBaikCADcCACABIAP9AAKUAf0LAnAgAUGLAWogA0GtAWoiCEECai0AADoAACABIAgvAAA7AIkBIAEgBzoAGCABIAQ2AgAgASAMOgCIASABIAY6AGwgASAKOgBQIAEgCToANCABIAMpAQA3ABkgAUEhaiADQQhq/QABAP0LAAAgAUEwaiADQRdqKAAANgAAQaQBIQQMBQtBACADQc8BakHEzcEAEKgKDAMLQQEgA0HPAWpBxM3BABCoCgwCC0ECIANBzwFqQcTNwQAQqAoMAQtB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AAAAAAAAAAD95AEiGv0fAzgCACATIBr9HwI4AgAgFCAa/R8BOAIAIBUgGv0fADgCACALIBsgHCAe/QzzBDW/8wQ1v/MENb/zBDW//eYBIBn9DAAAAAAAAAAAAAAAAAAAAAD95gH95AH95AH95AH9DAAAAAAAAAAAAAAAAAAAAAD95AEiGf0fAzgCACAPIBn9HwI4AgAgECAZ/R8BOAIAIBEgGf0fADgCACABQTBqIQEgBEEEayIEDQALIAcgCkYNAQsgBSAOQQxsaiEBA0AgA0EEaiIEKgIAIiFD8wQ1v5QgAyoCACIiQwAAAACUkiIgICCSIiVD8wQ1P5QhJCAiQwAAAICUIANBCGoiBSoCACIjQ/MENT+UkiIgICCSISAgBSAjICQgIEPzBDW/lCAjQwAAAICUICFDAAAAAJSSIiMgI5IiI0MAAAAAlJKSkkMAAAAAkjgCACAEICEgIEPzBDU/lCAjQwAAAICUICSSkpJDAAAAAJI4AgAgAyAiICND8wQ1P5QgJUMAAACAlCAgQwAAAACUkpKSQwAAAACSOAIAIAEgA0EMaiIDRw0ACwsgCCAOQQF0aiILIAZJDQEgCyAMSw0CIAkgBkEMbGoiDCEDAkAgDUEkTwRAIAkgACAIakEMbGohASADIApB/P///wNxIgRBDGxqIQMgBCEFA0AgAUE4aiIJIAFBLGoiDSABQSBqIg8gAUEUaiIQ/VwCAP1WAgAB/VYCAAL9VgIAAyId/Qz///8+////Pv///z7///8+/eYBIhsgAUE0aiIRIAFBKGoiEiABQRxqIhMgAUEQaiIU/VwCAP1WAgAB/VYCAAL9VgIAAyIc/Qz///8+////Pv///z7///8+/eYB/eUBIhkgGf3kAf0M////Pv///z7///8+////Pv3mASEZIBz9DP///77///++////vv///7795gEgAUEwaiIHIAFBJGoiFSABQRhqIhYgAUEMaiIB/VwCAP1WAgAB/VYCAAL9VgIAAyIe/Qz///8+////Pv///z7///8+/eYBIh/95QEiGiAa/eQB/Qz///8+////Pv///z7///8+/eYBIRogByAeIBkgGiAfIBv95AEiGyAb/eQBIh79DP///z7///8+////Pv///z795gEiH/3lAf3kAf3kAf0MAAAAAAAAAAAAAAAAAAAAAP3kASIb/R8DOAIAIBUgG/0fAjgCACAWIBv9HwE4AgAgASAb/R8AOAIAIBEgHCAfIBkgGv3kAf3kAf3kAf0MAAAAAAAAAAAAAAAAAAAAAP3kASIb/R8DOAIAIBIgG/0fAjgCACATIBv9HwE4AgAgFCAb/R8AOAIAIAkgHSAaIB79DP///77///++////vv///7795gEgGf3lAf3kAf3kAf0MAAAAAAAAAAAAAAAAAAAAAP3kASIZ/R8DOAIAIA0gGf0fAjgCACAPIBn9HwE4AgAgECAZ/R8AOAIAIAchASAFQQRrIgUNAAsgBCAKRg0BCyAMIA5BDGxqIQEDQCADQQRqIgQqAgAiJEP///++lCIiIAMqAgAiI0P///8+lCIhkyIgICCSQ////z6UISAgISADQQhqIgUqAgAiJUP///8+lCImkiIhICGSISEgBSAlICAgIUP///++lCAmICKSIiIgIpJD////PpQiIpOSkkMAAAAAkjgCACAEICQgIUP///8+lCIhICIgIJKSkkMAAAAAkjgCACADICMgIiAgICGTkpJDAAAAAJI4AgAgASADQQxqIgNHDQALCyAAQQAgACAIaiIBIABPGyIEIAIoAgAgAigCCCIDa0sEQCACIAMgBEEEQQgQ2AYgAigCCCEDCyACKAIEIQQCQCAARQ0AIAGtIisgCK0iKX0iKkICWgRAIAQgA0EDdGohASAp/RL9DAAAAAAAAAAAAQAAAAAAAAD9zgEhGSAqQn6DIicgKXwhKSADICenaiEDICchKANAIAEgGUEg/csBIBn9zgH9DAAAAAABAAAAAAAAAAEAAAD9zgH9CwIAIAFBEGohASAZ/QwCAAAAAAAAAAIAAAAAAAAA/c4BIRkgKEICfSIoQgBSDQALICcgKlENAQsgKyApfSEnIAQgA0EDdGohASApQoGAgIAQfkKAgICAEHwhKCADIAhqIABqICmnayEDA0AgASAoNwIAIAFBCGohASAoQoGAgIAQfCEoICdCAX0iJ0IAUg0ACwsgAiADNgIIIAtBAWsiACAGayIBQQAgACABTxsiASACKAIAIANrSwRAIAIgAyABQQRBCBDYBiACKAIIIQMgAigCBCEECwJAIAAgBk0NACAArSIrIAatIil9IipCAloEQCAEIANBA3RqIQEgKf0S/QwAAAAAAAAAAAEAAAAAAAAA/c4BIRkgKkJ+gyIn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CSgCACEFIApBuANqIA5BA3RqLQAERQRAIAkgBUEBayIJNgIAIAQgBCgCAEEBayIENgIAIAkgCkGAA2ogAWooAgAiCUgEQCAEIAlKDQMMAgsgAiADQQhqKAIANgIAIAogAykCADcDgAQgCkGABGogAWogBTYCACAKQegDaiIBQQhqIApB8AJqKAIANgIAIAsgCikDgAQ3AgAgC0EIaiACKAIANgIAIAogCikC6AI3A+gDIApBvAJqIAEQkwMMAgsgCSAFQQFqIgU2AgAgBCAEKAIAIgRBAWoiCTYCACAJIApBkANqIAFqKAIAIglMBEAgAiAKQfACaigCADYCACAKIAopAugCNwOABCAKQYAEaiABaiAENgIAIAYgAykCADcCACAGQQhqIANBCGooAgA2AgAgCkHQA2oiAUEIaiACKAIANgIAIAogCikDgAQ3A9ADIApBvAJqIAEQkwMMAgsgBSAJSA0BCyAAIAr9AAKwAf0LAgAgAEEwaiAKQbABaiIBQTBqKQIANwIAIABBIGogAUEgav0AAgD9CwIAIABBEGogAUEQav0AAgD9CwIAIApBoARqJAAPCyAKKAL8AiEEIAr9AALsAiEdIAooAugCIQUMAAsAC9QRAwt/L30IeyMAQSBrIgQkACADBEAgACgCECINBEACQCADIAAoAgxGBEAgAioCACIPIAEqAhQiGpQgAkEEaioCACIQIAEqAiwiG5SSIAJBCGoqAgAiESABKgJEIhyUkiACQQxqKgIAIhIgASoCXCIdlJIgAkEQaioCACITIAEqAnQiHpSSIAJBFGoqAgAiFCABKgKMASIflJIhFSAPIAEqAhAiIJQgECABKgIoIiGUkiARIAEqAkAiIpSSIBIgASoCWCIjlJIgEyABKgJwIiSUkiAUIAEqAogBIiWUkiEWIA8gASoCDCImlCAQIAEqAiQiJ5SSIBEgASoCPCIolJIgEiABKgJUIimUkiATIAEqAmwiKpSSIBQgASoChAEiK5SSIRcgDyABKgIIIiyUIBAgASoCICItlJIgESABKgI4Ii6UkiASIAEqAlAiL5SSIBMgASoCaCIwlJIgFCABKgKAASIxlJIhGCAPIAEqAgQiMpQgECABKgIcIjOUkiARIAEqAjQiNJSSIBIgASoCTCI1lJIgEyABKgJkIjaUkiAUIAEqAnwiN5SSIRkgDyAB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BgcUFRYXAAECAwABAgMgIf3lAf3rAf3rASIeIB795gH95AH9DAAAAAAAAAAAAAAAAAAAAAAgICAFQRhqIAX9XAI4/VYCAAH95QEgBUEIaiAF/VwCKP1WAgABICD95QH96wH96wEiHiAe/eYB/eQB/eMBIh79HwEgHv0fAF4iARshCAJAAkACQAJAAkAgHiAeIB79DQQFBgcAAQIDAAECAwABAgMgARsiHv0fACITIBRdRQRAIB79HwEiEyAUXUUNBCATQ///f39bDQQgCCgCHEH/////A3FBAUcNAQwCCwJAIBND//9/f1sEQAwBCyAGIAUgARsiBigCDCEBIAYoAhxB/////wNxQQFHBEAgHv0fASITIBRdRQRAIAEhBAwHCyATQ///f39bBEAgASEEDAcLQQEhBiAIKAIcQf////8DcUEBRgRAIAEhBAwFCwJ/IAMoApQBIg5BIUkEQCAOIQQgByEFQSAhDiARDAELIAMoAhQhBCADKAIYIQUgBwshBiAIKAIMIQggBCAORgR/IANBEGoQowQgAygCGCEFIAchBiADKAIUBSAEC0ECdCAFaiAINgIAIAYgBigCAEEBajYCACABIQQMBgsCQCABIAxJBEAgEiABQSRsaiIGKAIgIQEgA0GYAWogBigCHCABKAIIQQFrQXhxakEIaiAGIAIgAUHEAGooAgARAgAgAygCqAEiAUEERg0BIB0gAyoCmAEiF5MiEyATlCAcIAMqApwBIhiTIhMgE5SSIBsgAyoCoAEiFpMiEyATlJKRIhMgFF1FDQEgAygCrAEhCiADKAKkASEPIBchGSAYIRogFiEVIBMhFCABIQsMAQsgASAMQcicwwAQhQsACwsgHv0fASAUXUUNAyAe/R8BQ///f39bDQMgCCgCHEH/////A3FBAUYNAQsgCCgCDCEEDAMLQQAhBgsgDCAIKAIMIgFLBEAgEiABQSRsaiIFKAIgIQEgA0GYAWogBSgCHCABKAIIQQFrQXhxakEIaiAFIAIgAUHEAGooAgARAgACQCADKAKoASIBQQRGDQAgHSADKgKYASIXkyITIBOUIBwgAyoCnAEiGJMiEyATlJIgGyADKgKgASIWkyITIBOUkpEiEyAUXUUNACADKAKsASEKIAMoAqQBIQ8gFyEZIBghGiAWIRUgEyEUIAEhCwsgBkUNAQwCCyABIAxByJzDABCFCwALIAchBCARIQYgAygClAEiAUEhTwRAIAMoAhghBCAHIQYgAygCFCEBCyABRQ0CIAYgAUEBayIBNgIAIAQgAUECdGooAgAhBAsgBCANSQ0ACyAEIA1BsPLCABCFCwALIAtBBEcNAUEEIQoMAwv9DAAAAAAAAAAAAAAAAAAAAAAgAv1dAgAiHyAJ/QAEEP3lASAJ/QAEACAf/eUB/esB/esBIh4gHv3mASIe/R8AIB79HwGSIAkqAgggAioCCCIWkyITIBYgCSoCGJMiFCATIBRgGyIUQwAAAAAgFEMAAAAAYBsiFCAUlJKRQ///f39dRQ0CIAkoAgwiByABKAIIIgRPDQEgASgCBCAHQSRsaiIEKAIgIQEgA0GYAWogBCgCHCABKAIIQQFrQXhxakEIaiAEIAIgAUHEAGooAgARAgAgAygCqAEiC0EERg0CIB/9HwAgAyoCmAEiGZMiFSAVlCAf/R8BIAMqApwBIhqTIhUgFZSSIBYgAyoCoAEiFZMiFCAUlJKRQ///f39dRQ0CIAMoAqwBIQogAygCpAEhDwsgAyALNgIMIANBmAFqIRAMAQsgByAEQcicwwAQhQsACyAQIAo2AgAgAygClAEiAUEhTwRAIAMoAhggAUECdEEEEOgOCyADKAIMQQRHBEAgAEEDNgIQIAAgDzYCDCAAIBU4AgggACAaOAIEIAAgGTgCACADQbABaiQADwtBiJnDABDyDgAL6wsCH30GfyMAQTBrIiQkAAJAAkAgAyoCDCIIIAiUIAMqAhAiByAHlJIgAyoCFCINIA2UkiIFQwAAAABbDQAgBZEiFosiBUMAAIB/XARAIAVDAAAANF8NASAFIAVDAAAANJRfDQELIAggFpUiF4wiDiANIBaVIhggGJQgFyAXlCAHIBaVIhkgGZSSkpEiBZUiCCABKgIYIg2UIBmMIg8gBZUiByABKgIcIh2UkiAYjCIQIAWVIgYgASoCICIelJIhDCABQRhqISUgAUEMaiEoIAMqAgghEyADKgIEIRQgAyoCACEVAn0gCCABKgIAIhuUIAcgASoCBCIflJIgBiABKgIIIiCUkiIRIAggASoCDCIclCAHIAEqAhAiIZSSIAYgASoCFCIilJIiBV5FBEAgKCAlIAUgDF4iJhshAyAcIA0gJhsMAQsgJSEDIA0gDCARXUUNABogASEDIBsLIQUgAkEANgK8ASACQQA2AqwBIAJBADYCMCACQgA3AiggAiADKgIIIAYgASoCJCIRlJIiBjgCJCACIAMqAgQgByARlJIiBzgCICACIAUgCCARlJIiBTgCHCACIAYgE5M4AhggAiAHIBSTOAIUIAIgBSAVkzgCECAkIAIQa0P//39/IQZB5AAhJgJAAkADQCAkKgIAIgkgCZQgJCoCBCIKIAqUkiAkKgIIIgsgC5SSIgVDAADIK15FDQEgC4wgBZEiDJUhBSAKjCAMlSEIIAmMIAyVIQcCfSAGIAxfIidFBEAgHiAFIAUgBZQgByAHlCAIIAiUkpKRIgaVIguUIA0gByAGlSIJlCAdIAggBpUiCpSSkiESAn0gICALlCAbIAmUIB8gCpSSkiIjICIgC5QgHCAJlCAhIAqUkpIiBl5FBEAgKCAlIAYgEl4iKRshAyAcIA0gKRsMAQsgJSEDIA0gEiAjXUUNABogASEDIBsLIQYgESAKlCADKgIEkiEKIBEgCZQgBpIhCSARIAuUIAMqAgiSDAELIBpDAAAAAF4NAiAUIAqSIQogFSAJkiEJIBMgC5ILIQsCQAJAAkAgGCAFlCAXIAeUIBkgCJSSkiISQwAAAABbDQAgEosiBkMAAIB/XARAIAZDAAAANF8NASAGIAZDAAAANJRfDQELIAcgCSAVk5QgCCAKIBSTlJIgBSALIBOTlJIgEpUiBkMAAAAAYEUNACASQwAAAABdIAZDAAAAAF5xDQEgJ0UNAkEAIQMMBQtBACEDICcNBCASQwAAoDVeDQQMAQsgBCAaIAaSIhogFpVdBEBBACEDDAQLIBMgGCAGlCIOkiETIBQgGSAGlCIPkiEUIBUgFyAGlCIQkiEVQ///f38hDAJAIAIoArwBIidBAWoiA0UNACACIAIqAhAgEJM4AhAgAiACKgIUIA+TOAIUIAIgAioCGCAOkzgCGCAnRQ0AIAIgAioCNCAQkzgCNCACIAIqAjggD5M4AjggAiACKgI8IA6TOAI8IANBAkYNACACIAIqAlggEJM4AlggAiACKgJcIA+TOAJcIAIgAioCYCAOkzgCYCADQQNGDQAgAiACKgJ8IBCTOAJ8IAIgAioCgAEgD5M4AoABIAIgAioChAEgDpM4AoQBIAUhECAIIQ8gByEOIANBBEYNAUEEQQRBuJTDABCFCwALIAUhECAIIQ8gByEOCyAFIAsgE5MiBpQgCCAKIBSTIgiUIAcgCSAVkyIHlJKSIgW8Qf////8HcUH////7B0sEQEGUksMAQSdB0JLDABDWDAALQQAhAyAMIAWSIAxDvRuPOpRfDQIgJEEANgIsICRCADcCJCAkIAs4AiAgJCAKOAIcICQgCTgCGCAkIAY4AhQgJCAIOAIQICQgBzgCDCACICRBDGoQ4QMaICQgAhBrIAIoArwBQQNHBEAgDCEGICZBAWsiJg0BDAMLCyAFQwAAoLVfDQELIAAgEDgCECAAIA84AgwgACAOOAIIIAAgGiAWlTgCBEEBIQMLIAAgAzYCAAwBCyAAQQA2AgALICRBMGokAAucDAIJfwx9IwBBgAJrIgUkACAFQbgBakEANgIAIAVCADcDsAEgBf0MAAAAAAEAAAACAAAAAwAAAP0LBAAgBUE0akEAQfgA/AsAAkACQAJAAkACQCABKAIIIgkEQCABKAIEIQYgAioCFCEQIAIqAhAiEowhFCACKgIMIRECQCAJQQFGDQAgBkEQaioCACAUlCARIAYqAgyUkyAQIAZBFGoqAgCUkyIOIAZBBGoqAgAgFJQgESAGKgIAlJMgECAGQQhqKgIAlJMiD14iASEHQQIhCCAJQQJGDQAgDiAPIAEbIQ4gCUH9////A2ohCyAGQRhqIQEgCUH/////A3FBA0cEQCALQf////8DcUEBakH+////B3EhDQNAIAFBBGoqAgAgFJQgESABKgIAlJMgECABQQhqKgIAlJMiDyAOXiEKIAFBEGoqAgAgFJQgESABQQxqKgIAlJMgECABQRRqKgIAlJMiEyAPIA4gChsiDl4hDCATIA4gDBshDiAIQQFqIAggByAKGyAMGyEHIAFBGGohASAIIA1HIQogCEECaiEIIAoNAAsLIAtBAXENACAIIAcgAUEEaioCACAUlCARIAEqAgCUkyAQIAFBCGoqAgCUkyAOXhshBwsgByAJTw0BIAVBADYCvAEgBUEANgKsASAFQQA2AjAgBUIANwMoIAUgBiAHQQxsaiIBKgIIIAIqAggiF5MiDjgCJCAFIAEqAgQgAioCBCIYkyIPOAIgIAUgASoCACACKgIAIhmTIhM4AhwgBSAOOAIYIAUgDzgCFCAFIBM4AhAgBUHAAWogBiAJIAUgAiADEKgBIAUoAsABIQEgBEUEQCABBEAgBSoCxAEiDkMAAAAAXARAIAAgBSkCyAE3AgwgACAOOAIIIABBAzYCACAAQRRqIAVB0AFqKAIANgIADAgLIBAgESARlCASIBKUkiAQIBCUkpEiDpUhDyASIA6VIRIgESAOlSETQQAhBwJAIAlBAUYNACATIAYqAgyUIBIgBkEQaioCAJSSIA8gBkEUaioCAJSSIg4gEyAGKgIAlCASIAZBBGoqAgCUkiAPIAZBCGoqAgCUkiIVXiIBIQdBAiEIIAlBAkYNACAOIBUgARshDiAJQf3///8DaiECIAZBGGohASAJQf////8DcUEDRwRAIAJB/////wNxQQFqQf7///8HcSEKA0AgEyABKgIAlCASIAFBBGoqAgCUkiAPIAFBCGoqAgCUkiIVIA5eIQQgEyABQQxqKgIAlCASIAFBEGoqAgCUkiAPIAFBFGoqAgCUkiIWIBUgDiAEGyIOXiELIBYgDiALGyEOIAhBAWogCCAHIAQbIAsbIQcgAUEYaiEBIAggCkchBCAIQQJqIQggBA0ACwsgAkEBcQ0AIAggByATIAEqAgCUIBIgAUEEaioCAJSSIA8gAUEIaioCAJSSIA5eGyEHCyAHIAlPDQQgBiAHQQxsaiIBKgIIIQ4gASoCACEVIAEqAgQhFiAFQQA2ArwBIAVBADYCrAEgBUEANgIwIAVCADcDKCAFIBCMOALoASAFIBQ4AuQBIAUgEYw4AuABIAUgFyAPIBMgFSAZk5QgEiAWIBiTlJIgDyAOIBeTlJJDbxKDOpIiEJSSIhE4AtwBIAUgDiARkyIROAIkIAUgGCASIBCUkiIOOALYASAFIBYgDpMiDjgCICAFIBkgEyAQlJIiDzgC1AEgBSAVIA+TIg84AhwgBSAROAIYIAUgDjgCFCAFIA84AhAgBUHsAWogBiAJIAUgBUHUAWogEENvEoM6khCoASAFKALsAUEBRw0FIAMgECAFKgLwAZMiA2BFBEAgAEEENgIADAgLIAAgAzgCCCAAQQM2AgAgACAFKgL8AYw4AhQgACAFKgL4AYw4AhAgACAFKgL0AYw4AgwMBwsgAEEENgIADAYLIAENBCAAQQQ2AgAMBQtBAEEAQYCExAAQhQsACyAHIAlBqMfDABCFCwALIAcgCUGox8MAEIULAAsgAEEENgIADAELIAAgBSkCyAE3AgwgACAFKgLEATgCCCAAQQM2AgAgAEEUaiAFQdABaigCADYCAAsgBUGAAmokAAvrDAEVfyMAQdACayILJAACQAJAAkACQCAARQ0AIABBCGsiECgCAEEBaiEMIBAgDDYCACAMRQ0BIAAoAgAiDEF/Rg0CIAAgDEEBajYCACALIBA2AgwgCyAANgIIIAsgAEEEajYCBCABRQ0AIAFBCGsiESgCAEEBaiEMIBEgDDYCACAMRQ0BIAEoAgAiDEF/Rg0CIAEgDEEBajYCACALIBE2AhggCyABNgIUIAsgAUEEaiIONgIQIAJFDQAgAkEIayISKAIAQQFqIQwgEiAMNgIAIAxFDQEgAigCACIMQX9GDQIgAiAMQQFqNgIAIAsgEjYCJCALIAI2AiAgCyACQQRqIg82AhwgA0UNACADQQhrIhMoAgBBAWohDCATIAw2AgAgDEUNASADKAIAIgxBf0YNAiADIAxBAWo2AgAgCyATNgIwIAsgAzYCLCALIANBBGoiGDYCKCAERQ0AIARBCGsiFCgCAEEBaiEMIBQgDDYCACAMRQ0BIAQoAgAiDEF/Rg0CIAQgDEEBajYCACALIBQ2AjwgCyAENgI4IAsgBEEEajYCNCAFRQ0AIAVBCGsiFSgCAEEBaiEMIBUgDDYCACAMRQ0BIAUoAgAiDEF/Rg0CIAUgDEEBajYCACALIBU2AkggCyAFNgJEIAsgBUEEaiINNgJAIAZFDQAgBkEIayIWKAIAQQFqIQwgFiAMNgIAIAxFDQEgBigCACIMQX9GDQIgBiAMQQFqNgIAIAsgFjYCVCALIAY2AlAgCyAGQQRqIhk2AkwgB0UNACAHQQhrIhcoAgBBAWohDCAXIAw2AgAgDEUNASAHKAIAIgxBf0YNAiAHIAxBAWo2AgAgCyAXNgJgIAsgBzYCXEEEIQwgCyAHQQRqIho2AlggCyAP/QACAP0LA6ABIAtBoAFqIg9BGGogDkEIaigCADYCACALIA4pAgA3A7ABIAsgGf0AAgD9CwPAASALQcABaiIZQRhqIA1BCGooAgA2AgAgCyANKQIANwPQASAEKAIEIQ0gBCgCCCIbKAIIIRwgACgCBCEdIAAoAggiHigCCCEfIAtBAToA6QEgCyAKQQBHOgDoASALIAg4AuQBIAsgCTgC4AEgC0GYAmoiDiAPIBggHSAfQQFrQXhxakEIaiAeIBkgGiANIBxBAWtBeHFqQQhqIBsgC0HgAWoiDRCuAwJAIAstAMwCIgpBBUYNACANQTBqIg8gDkEwaigCADYCACANQSBqIhggDkEgav0AAgD9CwMAIA1BEGoiDSAOQRBq/QACAP0LAwAgC0HeAWoiDiALQc8Cai0AADoAACALIAv9AAKYAv0LA+ABIAsgCy8AzQI7AdwBIApBBEYNACALQegAaiIMQTBqIA8oAgA2AgAgDEEgaiAY/QADAP0LAwAgDEEQaiAN/QADAP0LAwAgC0HmAGogDi0AADoAACALIAv9AAPgAf0LA2ggCyALLwHcATsBZCAKIQwLIAcgBygCAEEBazYCACAXIBcoAgBBAWsiBzYCACAHRQRAIAtB4ABqEKkNCyAGIAYoAgBBAWs2AgAgFiAWKAIAQQFrIgY2AgAgBkUEQCALQdQAahClDQsgBSAFKAIAQQFrNgIAIBUgFSgCAEEBayIFNgIAIAVFBEAgC0HIAGoQqQ0LIAQgBCgCAEEBazYCACAUIBQoAgBBAWsiBDYCACAERQRAIAtBPGoQ4AsLIAMgAygCAEEBazYCACATIBMoAgBBAWsiAzYCACADRQRAIAtBMGoQqQ0LIAIgAigCAEEBazYCACASIBIoAgBBAWsiAjYCACACRQRAIAtBJGoQpQ0LIAEgASgCAEEBazYCACARIBEoAgBBAWsiATYCACABRQRAIAtBGGoQqQ0LIAAgACgCAEEBazYCACAQIBAoAgBBAWsiADYCACAARQRAIAtBDGoQ4AsLQQAhACAMQQRHBEBBxABBBBCRDiIARQ0EIABBADYCCCAAQoGAgIAQNwIAIAAgC/0AA2j9CwIMIAAgDDoAQCAAIAsvAWQ7AEEgAEEcaiALQfgAav0AAwD9CwIAIABBLGogC0GIAWr9AAMA/QsCACAAQTxqIAtBmAFqKAIANgIAIABBwwBqIAtB5gBqLQAAOgAAIABBCGohAAsgC0HQAmokACAADwsQgw8LAAsQhA8AC0EEQcQAQfjKxAAoAgAiAEHMCCAAGxEAAAALpw0DD38NfQJ7IwBBkAJrIgUkACAFQShqIAFBNGogAiACQQxqELEBAkACQCAFKAIoQQFGBEAgBSoCQCIUQwAAAABdRQ0BCyAAQQQ2AgAMAQsgAioCCCEYIAIqAgwhFSAUIBQgAyADIBReGyADIANcGyEbAnsgAv1dAggiISACKgIAIhn9IAFDAAAAAEMAAAAAIAUqAiwiFCAUQwAAAABdGyAUIBRcG/0TICEgAioCFCIW/SAA/eYB/eQBIAEqAjAiHP0TIAEqAigiHf0gAf3nASIh/eAB/QwAAAA/AAAAPwAAAD8AAAA//UQiIv3HAf0dASAi/R0AhKdBAXFFBEAgIf0MAAAAPwAAAD8AAAA/AAAAP/3kAf0MAACAPwAAgD8AAIA/AACAPyAB/V0CDCIi/fsB/QwAAIC/AACAvwAAgL8AAIC//eQB/ecB/ecB/WghISABKAIMIQcgASgCECEGICL9DP7////+/////v////7////9rgH9+wEgIf3qAf35Af0MAAAAAAAAAAAAAAAAAAAAACAh/QwAAAAAAAAAAAAAAAAAAAAA/UT9UgwBCyABKAIQIQb9DAAAAAAAAAAAAAAAAAAAAAAgASgCDCIHQQJrQQAgGEMAAAAAXhv9HAAiISAZQwAAAABeRQ0AGiAhIAZBAmv9HAELISEgBkEBayERIAdBAWshEkMAAIA/IAezQwAAgL+SlSEeQwAAgD8gBrNDAACAv5KVIR8gIf0bASEGICH9GwAhByAFQdgBaiEJIAVBwAFqIQ0gBUG0AWohDiAFQdQAaiEKIAVBLGohCwJAA0AgBUEoaiABIAcgBhCdAgJ/AkAgBSgCKEEBcUUNACAFQagBaiIEQSBqIAtBIGooAgA2AgAgBEEQaiALQRBq/QACAP0LAwAgBSAL/QACAP0LA6gBIAVBzAFqIAsgDiANIAIQywIgBSgCzAEiCEEERg0AIAVB+AFqIgwgCUEIaigCADYCACAFIAkpAgA3A/ABQQQgBSoC1AEiFCADX0UNARogBSgC0AEhDyAFQYABaiAMKAIANgIAIAUgBSkD8AE3A3ggFCEXIAgMAQtBBAshCAJAAn0CQAJ/AkACQAJAAkAgBSgCUEEBcQRAIAVBqAFqIgRBIGogCkEgaigCADYCACAEQRBqIApBEGr9AAIA/QsDACAFIAr9AAIA/QsDqAEgBUHMAWogCiAOIA0gAhDLAgJAIAUoAswBIgxBBEcEQCAFQYgCaiITIAlBCGooAgA2AgAgBSAJKQIANwOAAkEEIQQgBSoC1AEiFCADXw0BDAMLQQQhBAwCCyAFKALQASEQIAVBkAFqIBMoAgA2AgAgBSAFKQOAAjcDiAEgFCEaIAwhBAwBCyAFQaABaiAFQYABaigCADYCACAFIAUpA3g3A5gBIAhBBEYNAQwCCyAFQaABaiAFQYABaigCADYCACAFIAUpA3g3A5gBIAhBBEcEQCAEQQRGDQIgAEEMaiECIBcgGl0NAyAFQSBqIAEgByAGQQAgBCAQEJECIAUoAiQhBiAFKAIgIQcgGiEXIAVBiAFqDAQLIARBBEYNACAAIAUpA4gBNwIMIABBFGogBUGQAWooAgA2AgAgBUEIaiABIAcgBkEAIAQgEBCRAiAFKAIMIQYgBSgCCCEHIBohFwwICyAVQwAAAABeIgQNA0P//39/IBVDAAAAAF1FDQQaIB0gHyAGs5RDAAAAv5KUIBmTIBWVDAQLIAAgBSkDmAE3AgwgAEEUaiAFQaABaigCADYCACAFQRBqIAEgByAGQQEgCCAPEJECIAUoAhQhBiAFKAIQIQcMBgsgBUEYaiABIAcgBkEBIAggDxCRAiAFKAIcIQYgBSgCGCEHIAVB+ABqCyEBIAIgASkCADcCACACQQhqIAFBCGooAgA2AgAMBAsgHSAfIAZBAWqzlEMAAAC/kpQgGZMgFZULIhQgG14CfSAWQwAAAABeIghFBEBD//9/fyAWQwAAAABdRQ0BGiAcIB4gB7OUQwAAAL+SlCAYkyAWlQwBCyAcIB4gB0EBarOUQwAAAL+SlCAYkyAWlQsiICAbXnENAAJAAkACQCAUICBdIBRDAAAAAGBxRQRAICBDAAAAAGBFDQQgCA0BIAdFDQQgB0EBayEHDAMLIAQNASAGRQ0DIAZBAWshBgwCCyAHQQFqIQcMAQsgBkEBaiEGCyAHIBJPDQAgBiARSQ0BCwsgAEEENgIADAELIAAgFzgCCCAAIAc2AgAgACAGNgIECyAFQZACaiQAC+gOAw1/C3sFfSMAQcABayIHJAAgByAFIAQgBigClAERAQAgByoCECEhIAcqAgQhICAHKgIUISIgB/1dAgghFCAHKgIAIR8gASACKAIQEQQAIg4oAgghESAOKAIEIQsgB0EANgIYIAdBADYCnAECQCARRQ0AIBQgIv0gACAUIB/9IAH95QH9DAAAAD8AAAA/AAAAPwAAAD/95gEhFSAhICCTQwAAAD+UISMgICAhkkMAAAC/lCEhIBQgIv0TIB/9IAH95AH9DAAAAL8AAAC/AAAAvwAAAL/95gEhFAJAIAsoAjxB/////wNxBEAgB0EcaiEOIAdBnAFqIRIgFSAU/Q0AAQIDAAECAwABAgMAAQIDIRYgFCAU/Q0AAQIDAAECAwABAgMAAQIDIRcgFSAU/Q0EBQYHBAUGBwABAgMAAQIDIRggFCAU/Q0EBQYHBAUGBwABAgMAAQIDIRkgI/0TIRogIf0TIRsgAkEMaiETQ///f38hH0F/IRBBACECAkADQCALIAJBBnRqIglBIGohDCAJIAz9DAAAAAAAAAAAAAAAAAAAAAAgGCAZIAn9AAQwIhwgCf0ABBAiHf0NAAECAxAREhMAAQIDAAECA/3kAf3kAf3hASAZIAn9AAQgIh4gCf0ABAAiFf0NAAECAxAREhMAAQIDAAECA/3kASAY/eUB/esB/esBIhQgFP3mAf0MAAAAAAAAAAAAAAAAAAAAACAaIBsgHCAd/Q0EBQYHFBUWFwABAgMAAQID/eQB/eQB/eEBIBsgHiAV/Q0EBQYHFBUWFwABAgMAAQID/eQBIBr95QH96wH96wEiFCAU/eYB/eQB/QwAAAAAAAAAAAAAAAAAAAAAIBYgFyAJQRhqIAn9XAI4/VYCAAH95AH95AH94QEgFyAJQQhqIAn9XAIo/VYCAAH95AEgFv3lAf3rAf3rASIUIBT95gH95AH94wEiFP0fASAU/R8AXiIIGyENAkACQAJAAkACQCAUIBQgFP0NBAUGBwABAgMAAQIDAAECAyAIGyIU/R8AIiAgH11FBEAgFP0fASIgIB9dRQ0EICBD//9/f1sNBCANKAIcQf////8DcUEBRw0BDAILAkAgIEP//39/WwRADAELIAwgCSAIGyIJKAIMIQggCSgCHEH/////A3FBAUcEQCAU/R8BIiAgH11FBEAgCCECDAcLICBD//9/f1sEQCAIIQIMBwtBASEKIA0oAhxB/////wNxQQFGBEAgCCECDAULAn8gBygCnAEiCUEhSQRAIAkhCiAOIQxBICEJIBIMAQsgBygCHCEKIAcoAiAhDCAOCyECIA0oAgwhDSAJIApGBEAgB0EYahCjBCAHKAIcIQogBygCICEMIA4hAgsgDCAKQQJ0aiANNgIAIAIgAigCAEEBajYCACAIIQIMBgsgByAGNgKsASAHIAU2AqgBIAcgBDYCpAEgByADNgKgASATKAIAIQwgB0ECNgKwASAHIAdBoAFqNgK8ASAHIAdBsAFqNgK4ASABIAggB0G4AWpBzJrDACAMEQIAAkAgBygCsAEiCCAIQQJGc0EBcQ0AIAcqArQBIiAgH11FDQAgCSgCDCEQQQEhDyAgIh8hIgsLIBT9HwEgH11FDQMgFP0fAUP//39/Ww0DIA0oAhxB/////wNxQQFGDQELIA0oAgwhAgwDC0EAIQoLIA0oAgwhDCAHIAY2AqwBIAcgBTYCqAEgByAENgKkASAHIAM2AqABIBMoAgAhCCAHQQI2ArABIAcgB0GgAWo2ArwBIAcgB0GwAWo2ArgBIAEgDCAHQbgBakHMmsMAIAgRAgAgBygCsAEiCCAIQQJGc0EBcQRAIApFDQEMAgsgHyAHKgK0ASIgXgRAIA0oAgwhECAgIh8hIkEBIQ8LIAoNAQsgDiECIBIhCCAHKAKcASIKQSFPBEAgBygCHCEKIAIhCCAHKAIgIQILIApFDQIgCCAKQQFrIgg2AgAgAiAIQQJ0aigCACECCyACIBFJDQALIAIgEUGw8sIAEIULAAtBACEKIA8NAQwCC/0MAAAAAAAAAAAAAAAAAAAAACAVIBQgC0EQaiAL/VwCGP1WAgAB/eQB/eQB/eEBIBQgCyAL/VwCCP1WAgAB/eQBIBX95QH96wH96wEiFCAU/eYBIhT9HwEgISALKgIEkiAjkyIgICMgISALKgIUkpKMIh8gHyAgXxsiH0MAAAAAIB9DAAAAAGAbIh8gH5SSIBT9HwCSkUP//39/XUUNASALKAIMIQ4gByAGNgKsASAHIAU2AqgBIAcgBDYCpAEgByADNgKgASACQQxqKAIAIQIgB0ECNgKwASAHIAdBoAFqNgK8ASAHIAdBsAFqNgK4ASABIA4gB0G4AWpBzJrDACACEQIAIAcoArABIgEgAUECRnNBAXENASAHKgK0ASIiQ///f39dRQ0BIAsoAgwhEAsgACAiOAIIIAAgEDYCBEEBIQoLIAAgCjYCACAHKAKcASIAQSFPBEAgBygCICAAQQJ0QQQQ6A4LIAdBwAFqJAALugwDA38Dfgl9IwBB0AJrIgskACALIAo6AB4gCyAHOAIYIAkQ2wcCQAJAIAkoAgAiCgRAIAtBEGogCiAJKAIEKAIcEQAAIAtBgAFqIAsoAhAiCiALKAIUKAIMEQAAIAspA4ABQu+6wbq5vv/beIUgCykDiAFC3Mj0s5Hf0IYShYRCAFINASAKIAotABhBf3NBAXEiCToAGCALIAk6AB8gC0EgaiIJQRhqIgwgAUEYaigCADYCACAJQRBqIg0gAUEQaikCADcDACALIAH9AAIA/QsDICALIAsqAiwiEzgCSCALIAlBCGoqAgAiB4w4AkQgCyALKgIkIhGMOAJAIAsgCyoCICISjDgCPCALIBMgEiALKgI0IhSUIBEgDSoCACIVlJMiFiAWkiIWlCARIBEgDCoCACIZlCAHIBSUkyIXIBeSIheUIBIgByAVlCASIBmUkyIYIBiSIhiUk5IgGZM4AlQgCyATIBiUIBIgFpQgByAXlJOSIBSTOAJQIAsgEyAXlCAHIBiUIBEgFpSTkiAVkzgCTCALQZwCaiAFIAkgBigClAERAQAgCyoCGCIHQwAAAABgRQ0CIAsgByALKgKwApIiETgCbCALIAcgCyoCrAKSIhI4AmggCyAHIAsqAqgCkiITOAJkIAsgCyoCpAIgB5MiFDgCYCALIAsqAqACIAeTIhU4AlwgCyALKgKcAiAHkyIHOAJYIAtB+ABqIAhBCGoiCSgCADYCACAJQQA2AgAgCCkCACEOIAhCgICAgMAANwIAIAsgDjcDcAJAIAIgBBEEACIBKAIIRQRAQQAhBEEAIQwMAQtBACEEIAEoAgQiCUEAIAkqAhggFGAbQQAgCSoCFCAVYBtBACAJKgIQIAdgG0EAIAkqAgggEV8bQQAgCSoCBCASXxtBACAJKgIAIBNfGyEMIAkoAjxB/////wNxRQ0AIAkqAiAgE18gCSoCJCASX3EgCSoCKCARX3EgCSoCMCAHYHEgCSoCNCAVYHEgCSoCOCAUYHEhBCAJQSBqIQkLIAsgDDYCkAIgCyABNgKIAiALIAQ2AoQCIAsgCTYChAEgC0EANgKAASALIAtB2ABqNgKMAiALQQhqIAtBgAFqENkDIAsoAghBAXEEQCALKAIMIQkDQCALIAk2ApgCIAsgBjYCxAIgCyAFNgLAAiALQfCIwwA2ArgCIAsgADYCtAIgCyAINgKoAiALIAo2ApwCIAsgC0EgajYCzAIgCyALQRhqNgLIAiALIAtBPGo2ArwCIAsgC0EeajYCsAIgCyALQR9qNgKsAiALIAtB8ABqNgKkAiALIAtBmAJqNgKgAiACIAkgC0GcAmpBvPnCACADEQIAIAsgC0GAAWoQ2QMgCygCBCEJIAsoAgBBAXENAAsLIAsoAoQCIgBBIU8EQCALKAKIASAAQQJ0QQQQ6A4LIAooAgwiBQRAIAooAgQhAyAKKAIAIgBBCGohCSAAKQMAQn+FQoCBgoSIkKDAgH+DIQ4gCigCCCECIAstAB8hBCAAIQggBSEBA0AgDlAEQANAIAhB4ABrIQggCSkDACEOIAlBCGohCSAOQoCBgoSIkKDAgH+DIg5CgIGChIiQoMCAf1ENAAsgDkKAgYKEiJCgwIB/hSEOCyAOQgF9IRAgBCAIIA56p0EDdkF0bGoiDEEEay0AAEcEQEGAASEGIAAgDGtBDG0iDCAAaiINKQAAIg9CAYYgD4NCgIGChIiQoMCAf4N6p0EDdiAAIAxBCGsgA3FqIgwpAAAiD0IBhiAPg0KAgYKEiJCgwIB/g3mnQQN2akEHTQRAIAogAkEBaiICNgIIQf8BIQYLIA0gBjoAACAKIAFBAWsiATYCDCAMQQhqIAY6AAALIA4gEIMhDiAFQQFrIgUNAAsLIAsoAnQhACALKAJ4IggEQCAAQcQAaiEJA0AgCUEEaygCACIBBEAgCSgCACABQSRsQQQQ6A4LIAlB7ABqIQkgCEEBayIIDQALCyALKAJwIgEEQCAAIAFB7ABsQQQQ6A4LIAtB0AJqJAAPC0Gc+cIAEPIOAAtBrPnCABDyDgALIAtBADYCkAEgC0EBNgKEASALQejgwgA2AoABIAtCBDcCiAEgC0GAAWpB8ODCABC5DQALww0DDH8IewJ9IwBB0AFrIgQkACAEIAM6AAsgBCACNgIUIAQgATYCECABQQRqKAIAIQggAUEIaigCACENIAQgBEELajYCGCAEQQA2AhwgBEEANgKgAQJAIA1FBEBBAiEFDAELAkAgCCgCPEH/////A3EEQCAEQSBqIQkgBEGgAWohDyAC/QkCCCERIAL9CQIEIRIgAv0JAgAhEyAEQckBaiEKIARBvAFqIQtBACECQQIhBUP//39/IRhBfyEMAkADQCAIIAJBBnRqIgFBIGohAyABIAP9DAAAAAAAAAAAAAAAAAAAAAAgEyAB/QAEMCIQIAH9AAQQIhT9DQABAgMQERITAAECAwABAgP95QEgAf0ABCAiFSAB/QAEACIW/Q0AAQIDEBESEwABAgMAAQIDIBP95QH96wH96wEiFyAX/eYB/QwAAAAAAAAAAAAAAAAAAAAAIBIgECAU/Q0EBQYHFBUWFwABAgMAAQID/eUBIBUgFv0NBAUGBxQVFhcAAQIDAAECAyAS/eUB/esB/esBIhAgEP3mAf3kAf0MAAAAAAAAAAAAAAAAAAAAACARIAFBGGogAf1cAjj9VgIAAf3lASABQQhqIAH9XAIo/VYCAAEgEf3lAf3rAf3rASIQIBD95gH95AH94wEiEP0fASAQ/R8AXiIGGyEHAkACQAJ/AkACQCAQIBAgEP0NBAUGBwABAgMAAQIDAAECAyAGGyIQ/R8AIhkgGF1FBEAgEP0fASIZIBhdRQ0EIBlD//9/f1sNBCAHKAIcQf////8DcUEBRw0BDAILAkAgGUP//39/WwRADAELIAMgASAGGyIDKAIcQf////8DcUEBRwRAIAMoAgwhAiAQ/R8BIhkgGF1FDQYgGUP//39/Ww0GQQEgBygCHEH/////A3FBAUYNBBoCfyAEKAKgASIGQSFJBEAgBiEBIAkhDkEgIQYgDwwBCyAEKAIgIQEgBCgCJCEOIAkLIQMgBygCDCEHIAEgBkYEfyAEQRxqEKMEIAQoAiQhDiAJIQMgBCgCIAUgAQtBAnQgDmogBzYCACADIAMoAgBBAWo2AgAMBgsgBEG4AWogBEEQaiADKAIMEL4EAkAgBC0AyAEiAUECRg0AIAQqArgBIhkgGF1FDQAgBEGwAWogC0EIaigCADYCACAEQaYBaiAKQQJqLQAAOgAAIAQgCykCADcDqAEgBCAKLwAAOwGkASADKAIMIQwgGSEYIAEhBQsLIBD9HwEgGF1FDQMgEP0fAUP//39/Ww0DIAcoAhxB/////wNxQQFGDQELIAcoAgwhAgwDC0EACyEBIARBuAFqIARBEGogBygCDBC+BAJAIAQtAMgBIgNBAkYNACAEKgK4ASIZIBhdRQ0AIARBsAFqIAtBCGooAgA2AgAgBEGmAWogCkECai0AADoAACAEIAspAgA3A6gBIAQgCi8AADsBpAEgBygCDCEMIBkhGCADIQULIAENAQsgCSECIA8hAyAEKAKgASIGIgFBIU8EQCAEKAIkIQIgCSEDIAQoAiAhAQsgAUUNAiADIAFBAWsiATYCACACIAFBAnRqKAIAIQILIAIgDUkNAAsgAiANQbDywgAQhQsACyAFQf8BcUECRgRAQQIhBQwCCyAEQcABaiAEQbABaigCADYCACAEQQ5qIARBpgFqLQAAOgAAIAQgBCkDqAE3A7gBIAQgBC8BpAE7AQwMAQtBAiEF/QwAAAAAAAAAAAAAAAAAAAAAIAL9XQIAIhAgCP0ABBD95QEgCP0ABAAgEP3lAf3rAf3rASIQIBD95gEiEP0fACAQ/R8BkiAIKgIIIAIqAggiGJMiGSAYIAgqAhiTIhggGCAZXxsiGEMAAAAAIBhDAAAAAGAbIhggGJSSkUP//39/XUUNASAEQbgBaiAEQRBqIAgoAgwQvgQCQCAELQDIASIBQQJGBEAMAQsgBCoCuAEhGCAEQbABaiICIARBxAFqKAIANgIAIAQgBCkCvAE3A6gBIARBpgFqIgMgBEHLAWotAAA6AAAgBCAELwDJATsBpAEgGEP//39/XUUNACAEQcABaiACKAIANgIAIARBDmogAy0AADoAACAEIAQpA6gBNwO4ASAEIAQvAaQBOwEMIAgoAgwhDCABIQULIAQoAqABIQYLIAZBIUkNACAEKAIkIAZBAnRBBBDoDgsgBUH/AXFBAkcEQCAAIAQpA7gBNwIEIAAgBC8BDDsAESAAQQxqIARBwAFqKAIANgIAIABBE2ogBEEOai0AADoAACAAIAU6ABAgACAMNgIAIARB0AFqJAAPC0H4mMMAEPIOAAvDDgMHew1/BX0jAEGgAWsiDSQAAn0gAioCDCIZi0MAAAA0XUUEQEMAAIA/IBmVDAELQwAAgD8gGZhDAAAAS5QLIRkCfSACKgIQIhqLQwAAADRdRQRAQwAAgD8gGpUMAQtDAACAPyAamEMAAABLlAshGiABKAIUIRQCfSACKgIUIhuLQwAAADRdRQRAQwAAgD8gG5UMAQtDAACAPyAbmEMAAABLlAshGyABKAIQIRIgAv0AAgAhBSANQQA2AhggDUEANgKcAQJAIBRFDQAgBSAF/Q0AAQIDBAUGBwgJCgsICQoLIQUgG/0TIBn9IAAgGv0gASEHAkACQAJAIBIoAjxB/////wNxBEAgDUEcaiEQIA1BnAFqIRcgASgCBCEYIAEoAgghEyADIRkDQCASIA5BBnRqIgFBIGohDCAHIAH9AAQAIAX95QH95gEiBiAHIAFBEGr9AAQAIAX95QH95gEiCv3qASIIIAggBf0NCAkKCwgJCgsAAQIDAAECA/3rASIIIAggBf0NBAUGBwABAgMAAQIDAAECA/3rASAHIAH9AAQgIAX95QH95gEiCCAHIAFBMGr9AAQAIAX95QH95gEiC/3qASIJIAkgBf0NCAkKCwgJCgsAAQIDAAECA/3rASIJIAkgBf0NBAUGBwABAgMAAQIDAAECA/3rAf0NAAECAxAREhMAAQIDAAECAyIJ/Qz//39///9/f///f3///39/IAYgCv3rASIGIAYgBf0NCAkKCwgJCgsEBQYHBAUGB/3qASIGIAYgBf0NBAUGBwABAgMAAQIDAAECA/3qASAIIAv96wEiBiAGIAX9DQgJCgsICQoLBAUGBwQFBgf96gEiBiAGIAX9DQQFBgcAAQIDAAECAwABAgP96gH9DQABAgMQERITAAECAwABAgMiBiAJ/UYgBv0MAAAAAAAAAAAAAAAAAAAAAP1G/U79UiIG/R8AIR0CQCAdIAb9HwEiG15FBEAgGyEaIB0hGyAMIQ8gASEMDAELIB0hGiABIQ8LAkACQAJAAkACQCAZIBteRQRAIBkgGl5FDQQgGkP//39/Ww0EIA8oAhxB/////wNxQQFHDQEMAgsCQCAbQ///f39bBEAMAQsgDCgCDCEBIAwoAhxB/////wNxQQFHBEAgGSAaXkUEQCABIQ4MBwsgGkP//39/WwRAIAEhDgwHC0EBIQwgDygCHEH/////A3FBAUYEQCABIQ4MBQsCfyANKAKcASIVQSFJBEAgFSEOIBAhFkEgIRUgFwwBCyANKAIcIQ4gDSgCICEWIBALIQwgDygCDCEPIA4gFUYEQCANQRhqEKMEIA0oAhwhDiANKAIgIRYgECEMCyAWIA5BAnRqIA82AgAgDCAMKAIAQQFqNgIAIAEhDgwGCwJAIAEgE0kEQCAYIAFBJGxqIgEoAiAhDCANQRBqIAEoAhwgDCgCCEEBa0F4cWpBCGogASACIBkgBCAMQRhqKAIAEQkAIA0oAhBBAXFFDQEgDSoCFCIbIBldRQ0BQQEhESAbIhkhHAwBCyABIBNByJzDABCFCwALCyAZIBpeRQ0DIBpD//9/f1sNAyAPKAIcQf////8DcUEBRg0BCyAPKAIMIQ4MAwtBACEMCyATIA8oAgwiAUsEQCAYIAFBJGxqIgEoAiAhDyANQQhqIAEoAhwgDygCCEEBa0F4cWpBCGogASACIBkgBCAPQRhqKAIAEQkAIA0oAghBAXFFBEAgDEUNAgwDCyANKgIMIhogGV0hASAaIBwgARshHCAaIBkgARshGSABIBFyIREgDEUNAQwCCyABIBNByJzDABCFCwALAkACQCANKAKcASIBQSFPBEAgDSgCICEOIA0oAhwiD0UNASAQIQwgDyEBDAILIBchDCAQIQ4gAQ0BIBFBAXENBQwHCyAOIAFBAnRBBBDoDiARQQFxRQ0GDAQLIAwgAUEBayIBNgIAIA4gAUECdGooAgAhDgsgDiAUSQ0ACyAOIBRBsPLCABCFCwALIAcgEv0ABAAiBiAF/eUB/eYBIgogByASQRBq/QAEACAF/eUB/eYBIgX96gEiByAHIAX9DQgJCgsICQoLAAECAwABAgP96wEiByAHIAX9DQQFBgcAAQIDAAECAwABAgP96wH9HwAiGUP//39/IAogBf3rASIFIAUgBf0NCAkKCwgJCgsEBQYHBAUGB/3qASIFIAUgBf0NBAUGBwABAgMAAQIDAAECA/3qAf0fACIaQwAAAABgG0P//39/IBkgGl8bIANdRQ0DIAb9GwMiDCABKAIIIhBPDQEgASgCBCAMQSRsaiIBKAIgIQwgDSABKAIcIAwoAghBAWtBeHFqQQhqIAEgAiADIAQgDEEYaigCABEJACANKAIAQQFxRQ0DIA0qAgQiHCADXQ0ADAMLIAMgHF5FDQFBASEODAILIAwgEEHInMMAEIULAAtBACEOCyAAIBw4AgQgACAONgIAIA1BoAFqJAALwwsCGn0CfyMAQTBrIh8kAAJAAkAgAyoCDCIMIAyUIAMqAhAiDSANlJIgAyoCFCISIBKUkiIFQwAAAABbDQAgBZEiFosiBUMAAIB/XARAIAVDAAAANF8NASAFIAVDAAAANJRfDQELIA0gFpUiGIwiDyASIBaVIhkgGZQgDCAWlSIaIBqUIBggGJSSkpEiBZUhCSADKgIIIRMgAyoCBCEUIAMqAgAhFQJAAkACQCAajCIMIAWVIgYgBpQgGYwiDSAFlSILIAuUkiIFQwAAAABcBEAgASoCACIRjCESIAkgEZQiCCALIAsgBZEiBZUgASoCBCIblCIHlCAGIAYgBZUgG5QiCpQgCJOSXg0BIBIhBQwDCyABKgIAIhEgCZghBSABKgIEIRsgEYwhEgwBC0MAAAAAIQcgESEFC0MAAAAAIQoLIAJBADYCvAEgAkEANgKsASACQQA2AjAgAkIANwIoIAIgByALIAEqAggiF5SSIgc4AiQgAiAFIAkgF5SSIgg4AiAgAiAKIAYgF5SSIgU4AhwgAiAHIBOTOAIYIAIgCCAUkzgCFCACIAUgFZM4AhAgHyACEGtD//9/fyEFQeQAIQECQAJAA0AgHyoCACIKIAqUIB8qAgQiDiAOlJIgHyoCCCIGIAaUkiIIQwAAyCteRQ0BIAaMIAiRIguVIQkgDowgC5UhByAKjCALlSEIAn0CQAJ9AkAgBSALXyIgRQRAIAcgCSAJlCAIIAiUIAcgB5SSkpEiBZUhCiAIIAWVIh0gHZQgCSAFlSIeIB6UkiIGQwAAAABbDQEgEiEFIBEgCpQiDiAeIBsgHiAGkSIGlZQiEJQgHSAbIB0gBpWUIgaUIA6Tkl5FDQNDAAAAACEQIBEMAgsgHEMAAAAAXg0FIBMgBpIhECAUIA6SIQUgFSAKkgwDC0MAAAAAIRAgESAKmAshBUMAAAAAIQYLIBcgHpQgEJIhECAXIAqUIAWSIQUgFyAdlCAGkgshCgJAAkACQCAZIAmUIBogCJQgGCAHlJKSIg5DAAAAAFsNACAOiyIGQwAAgH9cBEAgBkMAAAA0Xw0BIAYgBkMAAAA0lF8NAQsgCCAKIBWTlCAHIAUgFJOUkiAJIBAgE5OUkiAOlSIGQwAAAABgRQ0AIA5DAAAAAF0gBkMAAAAAXnENASAgRQ0CQQAhAwwFC0EAIQMgIA0EIA5DAACgNV4NBAwBCyAEIBwgBpIiHCAWlV0EQEEAIQMMBAsgEyAZIAaUIg+SIRMgFCAYIAaUIgySIRQgFSAaIAaUIg2SIRVD//9/fyELAkAgAigCvAEiA0EBaiIgRQ0AIAIgAioCECANkzgCECACIAIqAhQgDJM4AhQgAiACKgIYIA+TOAIYIANFDQAgAiACKgI0IA2TOAI0IAIgAioCOCAMkzgCOCACIAIqAjwgD5M4AjwgIEECRg0AIAIgAioCWCANkzgCWCACIAIqAlwgDJM4AlwgAiACKgJgIA+TOAJgICBBA0YNACACIAIqAnwgDZM4AnwgAiACKgKAASAMkzgCgAEgAiACKgKEASAPkzgChAEgCSENIAchDyAIIQwgIEEERg0BQQRBBEG4lMMAEIULAAsgCSENIAchDyAIIQwLIAkgECATkyIJlCAHIAUgFJMiB5QgCCAKIBWTIgiUkpIiBrxB/////wdxQf////sHSwRAQZSSwwBBJ0HQksMAENYMAAtBACEDIAsgBpIgC0O9G486lF8NAiAfQQA2AiwgH0IANwIkIB8gEDgCICAfIAU4AhwgHyAKOAIYIB8gCTgCFCAfIAc4AhAgHyAIOAIMIAIgH0EMahDhAxogHyACEGsgAigCvAFBA0cEQCALIQUgAUEBayIBDQEMAwsLIAZDAACgtV8NAQsgACANOAIQIAAgDzgCDCAAIAw4AgggACAcIBaVOAIEQQEhAwsgACADNgIADAELIABBADYCAAsgH0EwaiQAC/0KAhF9BX8jAEGwAWsiBCQAIAAoAgQhBQJAAkAgAQRAIAUoAgAhGSAEIAEqAggiCCAFKAIEIhcqAggiCZQgASoCBCIKIBcqAgQiC5QgASoCACIMIBcqAgAiB5QgASoCDCIOIBcqAgwiDZSSkpI4AjwgBCAKIAeUIA4gCZQgDCALlJOSIAggDZSTOAI4IAQgDiALlCAMIAmUkiAKIA2UkyAIIAeUkzgCNCAEIAggC5QgDiAHlCAMIA2UkyAKIAmUk5I4AjAgCiAXKgIQIAEqAhAiFJMiB5QgDCAXKgIUIAEqAhQiFZMiDZSTIgkgCZIhCSAIIA2UIAogFyoCGCABKgIYIhaTIgaUkyILIAuSIQsgBCAGIA4gCZQgCiALlCAMIAwgBpQgCCAHlJMiBiAGkiIGlJOSkjgCSCAEIA0gDiAGlCAMIAmUIAggC5STkpI4AkQgBCAHIA4gC5QgCCAGlCAKIAmUk5KSOAJAIAQgBSgCCCIBKgIIIgYgDiAKIAEqAgAiCZQgDCABKgIEIguUkyIHIAeSIgeUIAogCCALlCAKIAaUkyINIA2SIg2UIAwgDCAGlCAIIAmUkyIGIAaSIgaUk5KSOAJUIAQgCyAOIAaUIAwgB5QgCCANlJOSkjgCUCAEIAkgDiANlCAIIAaUIAogB5STkpI4AkwgBSgCDCEBIAUoAhAhFyAEQegAaiIaQQhqIhggBSgCFCIFQQhqKAIANgIAIAQgBSkCADcDaCAEQfgAaiAZIARBMGogBEHMAGogAiADIAEgFyAaEEcgBC0ArAEiAUEFRg0BIBggBEGQAWooAgA2AgAgBEHgAGoiAiAEQagBaigCADYCACAEIAQpAogBNwNoIAQgBCkCoAE3A1ggAUEERg0CIAQqAoQBIQcgBCoCgAEhDSAEKgJ8IREgBCoCeCETIAQqApQBIQsgBCoCmAEhCSAEKgKcASEGIARBKGogGCgCADYCACAEQRhqIAIoAgA2AgAgBCAEKQNoNwMgIAQgBCkDWDcDECAGIA4gDCAJlCAKIAuUkyIPIA+SIg+UIAwgCCALlCAMIAaUkyIQIBCSIhCUIAogCiAGlCAIIAmUkyIGIAaSIhKUk5KSIQYgCSAOIBCUIAggEpQgDCAPlJOSkiEJIAsgDiASlCAKIA+UIAggEJSTkpIhCyAWIAcgDiAMIA2UIAogEZSTIg8gD5IiD5QgDCAIIBGUIAwgB5STIhAgEJIiEJQgCiAKIAeUIAggDZSTIgcgB5IiEpSTkpKSIQcgFSANIA4gEJQgCCASlCAMIA+Uk5KSkiENIBQgESAOIBKUIAogD5QgCCAQlJOSkpIhEQwCCyAFKAIQIQEgBSgCDCEXIAUoAgghGSAFKAIEIRogBSgCACEYIARBMGoiG0EIaiAFKAIUIgVBCGooAgA2AgAgBCAFKQIANwMwIARB+ABqIBggGiAZIAIgAyAXIAEgGxBHIAQtAKwBIgFBBUYNACAEQShqIARBkAFqKAIANgIAIARBGGogBEGoAWooAgA2AgAgBEEOaiAEQa8Bai0AADoAACAEIAQpAogBNwMgIAQgBCkCoAE3AxAgBCAELwCtATsBDCAEKgKEASEHIAQqAoABIQ0gBCoCfCERIAQqAnghEyAEKgKUASELIAQqApgBIQkgBCoCnAEhBgwBC0EEIQELIAAoAgAiACAHOAIMIAAgDTgCCCAAIBE4AgQgACATOAIAIAAgBCkDIDcCECAAIAY4AiQgACAJOAIgIAAgCzgCHCAAIAQpAxA3AiggACABOgA0IABBGGogBEEoaigCADYCACAAQTBqIARBGGooAgA2AgAgACAELwEMOwA1IABBN2ogBEEOai0AADoAACAEQbABaiQAC4UMAhJ/FH0jAEGwAWsiBCQAAkACQCABKAIAIgUoAlQiBiACSwRAIAUoAkgiBiACSwRAIAEoAggtAAAhDCAFKAJQIQcgASgCBCEGIAQgBSoCbCIZIAUoAkQgAkEMbGoiASgCCCIQQQN0IgmylDgCFCAEIAUqAmgiGiABKAIEIhFBA3QiCrKUOAIQIAQgBSoCZCIbIAEoAgAiEkEDdCIFspQ4AgwgBCAZIAlBCGoiDbKUOAIgIAQgGiAKQQhqIguylDgCHCAEIBsgBUEIaiIOspQ4AhggBEGEAWogBEEMaiAGIAZBDGoiExCxAQJAIAQoAoQBQQFHDQAgBCoCnAEiF0MAAAAAXQ0AAkBDAAAAAEMAAAAAIAQqAogBIhggGEMAAAAAXRsgGCAYXBsiFiADXkUEQCAGKgIUIRwgBioCCCEgIAYqAhAhHSAGKgIEISEgBioCDCEeIAYqAgAhIiAFQfj///8HRg0BIApB+P///wdGDQEgCUH4////B0YNASAXIBcgAyADIBdeGyADIANcGyEYIAcgAkEJdGohFCAEIAkgICAWIByUkiAZlY78ACIBIA0gASANSBsgASAJSBsiBzYCLCAEIAogISAWIB2UkiAalY78ACIBIAsgASALSBsgASAKSBsiATYCKCAEIAUgIiAWIB6UkiAblY78ACIIIA4gCCAOSBsgBSAIShsiCDYCJCAEIAk2AjggBCAKNgI0IAQgBTYCMCAEIA02AkQgBCALNgJAIAQgDjYCPCAcQwAAAABeIQUgHkMAAAAAXiEJIB1DAAAAAF4hCiAZQwAAAD+UISMgGkMAAAA/lCEkIBtDAAAAP5QhJSAMQQFxIQ0DQCAEICMgGSAHskMAAAA/kpQiA5IiFzgCXCAEICQgGiABskMAAAA/kpQiFpIiJjgCWCAEICUgGyAIskMAAAA/kpQiH5IiJzgCVCAEIAMgI5MiKDgCUCAEIBYgJJMiKTgCTCAEIB8gJZMiHzgCSCAHQR92IgsgB2pBCG0hDiABQR92IgwgAWpBCG0hFQJAIAhBH3YiDyAIakEIbSAPayIPIBJHDQAgFSAMayIMIBFHDQAgDiALayILIBBHDQAgByAMa0EGdCIHIAEgD2tBA3QgCGoiCCALQQl0a2oiAUGABEkEQCABIBRqLQAAQcAARg0BIARBhAFqIARByABqIAYgExCxASAEKAKEAUEBRw0BAkAgBCoCiAEiA0MAAAAAXUUEQCADIBhfRQ0DIARBgAFqIARBlAFqKAIANgIAIAQgBCkCjAE3A3gMAQsgDUUEQCAYIAQqApwBIgNgRQ0DIARBgAFqIARBqAFqKAIANgIAIAQgBCkCoAE3A3gMAQsgBEGAAWpBADYCACAEQgA3A3hDAAAAACEDCyAAIAM4AgggAEECNgIAIAAgBCkDeDcCDCAAQRRqIARBgAFqKAIANgIAIAAgByACIBBrQQl0aiAIajYCBAwJCyABQYAEQYTnwwAQhQsAC0P//39/IRZD//9/fyEDIAkgHkMAAAAAXXIEQEP//39/ICcgHyAJGyAikyAelSIDIANDAAAAAF0bIQMLIAogHUMAAAAAXXIEQEP//39/ICYgKSAKGyAhkyAdlSIWIBZDAAAAAF0bIRYLIBxDAAAAAF0gBXIEfUP//39/IBcgKCAFGyAgkyAclSIXIBdDAAAAAF0bBUP//39/CyEXIAQgBToAdCAEIAo6AGwgBCAJOgBkAkAgAyAYXkUNACAWIBheRQ0AIBcgGF4NBwtBAiADIBZeIgEgFyAWIAMgARtdGyILQQJ0IgggBEEkamoiASgCACEHIAECfyAEQeAAaiALQQN0ai0ABEUEQCAHIARBMGogCGooAgBMDQhBfwwBCyAHIARBPGogCGooAgBBAWtODQdBAQsgB2o2AgAgBCgCLCEHIAQoAighASAEKAIkIQgMAAsACyAAQQQ2AgAMBQtBptnCAEEcQcTZwgAQ1gwACyAAQQQ2AgAMAwsgAiAGQcjmwwAQhQsACyACIAZBuObDABCFCwALIABBBDYCAAsgBEGwAWokAAuSDAIHfwF+IwBBMGsiBCQAAkACQAJAAkAgAUEBaw4CAQIACyACKAIAIQECQAJAA0ACQAJAIAIoAswBIAIoAsgBIgVBAWsgAXEiB0EcbGoiBigCGCIDIAFBAWpHBEAgASADRw0BIAEgAigCQCIBIAVBf3NxRw0BIAEgBXENBCAAQQA6AAQgAEECNgIADAgLIAIoAsABIAdBAWpNBEAgAigCxAEiAyABQQAgA2txaiEDCyACKAIAIgcgAUYhBSACIAMgByAFGzYCACAFDQELIAIoAgAhAQwBCwsgBEEoaiIDIAZBFGooAgA2AgAgBiACKALEASABajYCGCAEIAb9AAIE/QsDGCAGKAIAIQEgAkGAAWoQvAMgAUECRw0BCyAAQQE6AAQgAEECNgIADAMLIAAgBP0AAxj9CwIEIABBFGogAygCADYCACAAIAE2AgAMAgsgAigCBCEDIAIoAgAhAQNAAkAgAUEBdiIIQR9xIgZBH0YNACABQQJqIQUCQAJAAkACQAJAAkAgAUEBcUUEQCAIIAIoAkAiB0EBdkYNASAFIAEgB3NBP0tyIQULIANFDQYgAiAFIAIoAgAiByABIAdGGzYCACABIAdHDQYgBkEeRgRAIAMoAgAhBwNAIAdFDQALIAcoAgAhCCACIAc2AgQgAiAFQX5xIAhBAEdyQQJqNgIACyADIAZBHGxqQQRqIQIDQCACLQAYQQFxRQ0ACyAEQShqIAJBFGooAgA2AgAgBCAC/QACBP0LAxggAigCACEFIAZBHkYNASACIAIoAhgiAkECcjYCGCACQQRxRQ0DIAZBHEsNAiADQThqIQYgAUEBdkEfcUEcbCECA0AgAiAGaiIBLQAAQQJxRQRAIAEgASgCACIBQQRyNgIAIAFBAnFFDQULIAJBHGoiAkGsBkcNAAsMAgsgB0EBcQ0DIABBADoABCAAQQI2AgAMCAtBACECA0AgAiADaiIGQRxqIgEtAABBAnFFBEAgASABKAIAIgFBBHI2AgAgAUECcUUNAwsgBkE4aiIBLQAAQQJxRQRAIAEgASgCACIBQQRyNgIAIAFBAnFFDQMLIAJBOGoiAkHIBkcNAAsLIANB6AZBBBDoDgsgBUECRw0BCyAAQQE6AAQgAEECNgIADAQLIAAgBP0AAxj9CwIEIABBFGogBEEoaigCADYCACAAIAU2AgAMAwsgAigCBCEDIAIoAgAhAQwACwALIAItAAAhASACQQE6AAAgBCABOgAMAkACQAJAIAFBAUcEQAJAAkAgAigCDCIBRQ0AIAFBDGwhCCACKAIIIQlBACEBQQEhAwNAAkAgASAJaiIFKAIAIgYoAhRBgI/EAEYNACAGIAYoAgwiByAFQQRqKAIAIAcbNgIMIAcNACADQQFrIQcgBUEIaigCACIFBEAgBiAFNgIQCyACKAIMIgYgB00NBSACKAIIIAFqIgUoAgAhASAFQQRqKQIAIQogBiADa0EMbCIDBEAgBSAFQQxqIAP8CgAACyACIAZBAWs2AgwgAUUNAiACQQA6AAAgBCABNgIMIAQgCjcCECAKQoCAgIAQVA0DIApCIIinIgMtABlFBEAgAy0AGCEBA0AgAUUNAAsgAygCACECIANBAjYCACACQQJHBEAgBEEoaiADQRRqKAIANgIAIAQgA/0AAgT9CwMYIANBHEEEEOgOIAQoAgwhAQwIC0HcucEAEPIOAAsgAygCACECIANBAjYCACACQQJHBEAgA0EBOgAYIARBKGogA0EUaigCADYCACAEIAP9AAIE/QsDGAwHC0HsucEAEPIOAAsgA0EBaiEDIAggAUEMaiIBRw0ACwsgAEECNgIAIAJBADoAACAAIAItADQ6AAQMBQsgAEECNgIAIABBAToABAwDCyAEQgA3AiQgBEKBgICAwAA3AhwgBEGsusEANgIYIARBDGogBEEYakG0usEAEPsMAAsgByAGQfy5wQAQhAsACyAAIAI2AgAgACAE/QADGP0LAgQgAEEUaiAEQShqKAIANgIACyABIAEoAgAiAEEBazYCACAAQQFHDQAgBEEMahDXCwsgBEEwaiQAC6IMAgh/D30jAEGABGsiEiQAAkACQAJAIA8gEF8EQCAJIApyRQ0BIAkEQCAJKgKIASEcIAkqApABISIgCSoCjAEhHQsgDUEBcyEUICIgC0EBc7MiGpQhIyAdIBqUISQgHCAalCElIAoEfSAKKgKMASEfIAoqAogBISAgCioCkAEFQwAAAAALIBSzIhuUISYgHyAblCEnICAgG5QhICAJBH0gCSoCmAEhISAJKgKUASEoIAkqApwBBUMAAAAACyAalCEiICEgGpQhISAoIBqUIRpDAAAAACEcQwAAAAAhHSAKBH0gCioCmAEhHCAKKgKUASEeIAoqApwBBUMAAAAACyAblCEdIBwgG5QhHCAeIBuUIRtDAAAAACEfICYgI5MiHiAelCAnICSTIh4gHpQgICAlkyIgICCUkpKRICIgIpQgISAhlCAaIBqUkpKRIAkEfSAJKgIkBUMAAAAAC5SSIRogGyAblCAcIByUkiAdIB2UkpEhGyAKBEAgCioCJCEfC0MAAAAAQwAAAAAgESARQwAAAABdGyARIBFcGyAHKAJAIAcoAkQiFigCCEEBa0F4cWpBCGoiGCAWKAKoARELACAIKAJAIAgoAkQiFygCCEEBa0F4cWpBCGoiGSAXKAKoARELAJKSIREgGiAbIB+UkiEaQQEhFQJAIActAJgBDQAgCC0AmAENACAIKAJUIAcoAlBxRSAHKAJUIAgoAlBxRXIhFQsgECAPkyAalCARXQ0CIBJBCGoiE/0MAAAAAAAAAAAAAAAAAACAP/0LAgAgE/0MAAAAAAAAAAAAAAAAAAAAAP0LAhAgE0Egav0MAAAAAAAAAAAAAAAAAAAAAP0LAgAgE0Ewav0MAAAAAAAAAAAAAAAAAAAAAP0LAgAgEyEUAkAgCUUNACAJLQAsRQRAIBJBgANqIhQgCUHMAGoQpQwMAQsgEkGYA2ogCUHIAGooAgA2AgAgEkGQA2ogCUFAaykCADcDACASQaQDaiAJQaACaigCADYCACASQbADaiAJQZABaigCADYCACASQbwDaiAJQZwBaigCADYCACASIAn9AAIw/QsDgAMgEiAJKQKYAjcCnAMgEiAJKQKIATcDqAMgEiAJKQKUATcCtAMgEkGAA2ohFAsgEkHIAGoiCUEwaiAUQTBq/QACAP0LAwAgCUEgaiAUQSBq/QACAP0LAwAgCUEQaiAUQRBq/QACAP0LAwAgEiAU/QACAP0LA0gCQCAKRQ0AIAotACxFBEAgEkHAA2oiEyAKQcwAahClDAwBCyASQdgDaiAKQcgAaigCADYCACASQdADaiAKQUBrKQIANwMAIBJB5ANqIApBoAJqKAIANgIAIBJB8ANqIApBkAFqKAIANgIAIBJB/ANqIApBnAFqKAIANgIAIBIgCv0AAjD9CwPAAyASIAopApgCNwLcAyASIAopAogBNwPoAyASIAopApQBNwL0AyASQcADaiETCyASQYgBaiIJQTBqIBNBMGr9AAIA/QsDACAJQSBqIBNBIGr9AAIA/QsDACAJQRBqIBNBEGr9AAIA/QsDACASIBP9AAIA/QsDiAEgC0EBcQRAIBJByABqIAwQpAsLIA1BAXEEQCASQYgBaiAOEKQLCyASQYgCaiIJQQhqIAdBHEH0ACAHKAIQQQFxIg0baiIKQQhq/QACAP0LAwAgCUEYaiAKQRhqKAIANgIAIBIgCikCADcDiAIgEkHIAWoiEyASQcgAaiAJENMCIBJByAJqIgpBCGogCEEcQfQAIAgoAhBBAXEiFBtqIgtBCGr9AAIA/QsDACAKQRhqIAtBGGooAgA2AgAgEiALKQIANwPIAiAJIBJBiAFqIAoQ0wIgCiABIBMgGCAWIAkgGSAXIA8gECAVIAIRLAAgEi0A/AJBBnFBBEcEQCASKgLIAiEMIAAgFToALCAAIAY2AiggACAFNgIkIAAgBDYCICAAIAM2AhwgACAMOAIYIAAgCCkCFDcCECAAIBQ2AgwgACAHKQIUNwIEIAAgDTYCAAwECyAAQQI2AgAMAwtBiMHCAEEoQbDBwgAQ1gwACyAAQQI2AgAMAQsgAEECNgIACyASQYAEaiQAC5ENAwt/CHsCfSMAQdABayIEJAAgBCADOgALIAQgAjYCFCAEIARBC2o2AhggBCABNgIQIAEoAgQhCCABKAIIIQwgBEEANgIcIARBADYCoAFBAiEFAkAgDEUNAAJAIAgoAjxB/////wNxBEAgBEEgaiEJIARBoAFqIQ4gAv0JAgghECAC/QkCBCERIAL9CQIAIRIgBEHJAWohCiAEQbwBaiELQQAhAkP//39/IRcCQANAIAggAkEGdGoiAUEgaiEDIAEgA/0MAAAAAAAAAAAAAAAAAAAAACASIAH9AAQwIg8gAf0ABBAiE/0NAAECAxAREhMAAQIDAAECA/3lASAB/QAEICIUIAH9AAQAIhX9DQABAgMQERITAAECAwABAgMgEv3lAf3rAf3rASIWIBb95gH9DAAAAAAAAAAAAAAAAAAAAAAgESAPIBP9DQQFBgcUFRYXAAECAwABAgP95QEgFCAV/Q0EBQYHFBUWFwABAgMAAQIDIBH95QH96wH96wEiDyAP/eYB/eQB/QwAAAAAAAAAAAAAAAAAAAAAIBAgAUEYaiAB/VwCOP1WAgAB/eUBIAFBCGogAf1cAij9VgIAASAQ/eUB/esB/esBIg8gD/3mAf3kAf3jASIP/R8BIA/9HwBeIgYbIQcCQAJAAn8CQAJAIA8gDyAP/Q0EBQYHAAECAwABAgMAAQIDIAYbIg/9HwAiGCAXXUUEQCAP/R8BIhggF11FDQQgGEP//39/Ww0EIAcoAhxB/////wNxQQFHDQEMAgsCQCAYQ///f39bBEAMAQsgAyABIAYbIgEoAhxB/////wNxQQFHBEAgASgCDCECIA/9HwEiGCAXXUUNBiAYQ///f39bDQZBASAHKAIcQf////8DcUEBRg0EGgJ/IAQoAqABIgZBIUkEQCAGIQEgCSENQSAhBiAODAELIAQoAiAhASAEKAIkIQ0gCQshAyAHKAIMIQcgASAGRgR/IARBHGoQowQgBCgCJCENIAkhAyAEKAIgBSABC0ECdCANaiAHNgIAIAMgAygCAEEBajYCAAwGCyAEQbgBaiAEQRBqIAEoAgwQrAUCQCAELQDIASIBQQJGDQAgBCoCuAEiGCAXXUUNACAEQbABaiALQQhqKAIANgIAIARBpgFqIApBAmotAAA6AAAgBCALKQIANwOoASAEIAovAAA7AaQBIBghFyABIQULCyAP/R8BIBddRQ0DIA/9HwFD//9/f1sNAyAHKAIcQf////8DcUEBRg0BCyAHKAIMIQIMAwtBAAshASAEQbgBaiAEQRBqIAcoAgwQrAUCQCAELQDIASIDQQJGDQAgBCoCuAEiGCAXXUUNACAEQbABaiALQQhqKAIANgIAIARBpgFqIApBAmotAAA6AAAgBCALKQIANwOoASAEIAovAAA7AaQBIBghFyADIQULIAENAQsgCSECIA4hAyAEKAKgASIGIgFBIU8EQCAEKAIkIQIgCSEDIAQoAiAhAQsgAUUNAiADIAFBAWsiATYCACACIAFBAnRqKAIAIQILIAIgDEkNAAsgAiAMQbDywgAQhQsACyAFQf8BcUECRgRAQQIhBQwCCyAEQcABaiAEQbABaigCADYCACAEQQ5qIARBpgFqLQAAOgAAIAQgBCkDqAE3A7gBIAQgBC8BpAE7AQwMAQv9DAAAAAAAAAAAAAAAAAAAAAAgAv1dAgAiDyAI/QAEEP3lASAI/QAEACAP/eUB/esB/esBIg8gD/3mASIP/R8AIA/9HwGSIAgqAgggAioCCCIXkyIYIBcgCCoCGJMiFyAXIBhfGyIXQwAAAAAgF0MAAAAAYBsiFyAXlJKRQ///f39dRQ0BIARBuAFqIARBEGogCCgCDBCsBQJAIAQtAMgBIgFBAkYEQAwBCyAEKgK4ASEXIARBsAFqIgIgBEHEAWooAgA2AgAgBCAEKQK8ATcDqAEgBEGmAWoiAyAEQcsBai0AADoAACAEIAQvAMkBOwGkASAXQ///f39dRQ0AIARBwAFqIAIoAgA2AgAgBEEOaiADLQAAOgAAIAQgBCkDqAE3A7gBIAQgBC8BpAE7AQwgASEFCyAEKAKgASEGCyAGQSFJDQAgBCgCJCAGQQJ0QQQQ6A4LIAVB/wFxQQJGBEBB+JjDABDyDgALIAAgBCkDuAE3AgAgACAELwEMOwANIABBCGogBEHAAWooAgA2AgAgAEEPaiAEQQ5qLQAAOgAAIAAgBToADCAEQdABaiQAC8wMAxN/C3sKfQJAIAEoAggiBUUNACACKgIIISEgAioCBCEiIAIqAgAhIyABKAIEIgQhAyAFQQxsIgVBDGsiBkEMbkEBcUUEQCADICMgAyoCAJQ4AgAgAyAiIAMqAgSUOAIEIAMgISADKgIIlDgCCCADQQxqIQMLIAZBDEkNACAEIAVqIQUDQCADICMgAyoCAJQ4AgAgA0EEaiIEICIgBCoCAJQ4AgAgA0EIaiIEICEgBCoCAJQ4AgAgA0EMaiIEICMgBCoCAJQ4AgAgA0EQaiIEICIgBCoCAJQ4AgAgA0EUaiIEICEgBCoCAJQ4AgAgBSADQRhqIgNHDQALCwJAIAEoAiAiA0UNACADQRRsIgdBFGsiA0EUbiEGIAIqAgghJCACKgIEISUgAioCACEmIAEoAhwiBSEEIANBPE8EQCAEIAZBAWoiCEH8////AXEiBkEUbGohBCAk/RMhGyAl/RMhHCAm/RMhHSAFIQMgBiEJA0AgA0HEAGoiCiADQTBqIgsgA0EcaiIMIANBCGoiDf1cAgD9VgIAAf1WAgAC/VYCAAMiGCAd/eYBIhYgFv3mASADQcgAaiIOIANBNGoiDyADQSBqIhAgA0EMaiIR/VwCAP1WAgAB/VYCAAL9VgIAAyIeIBz95gEiGSAZ/eYB/eQBIANBzABqIhIgA0E4aiITIANBJGoiFCADQRBqIhX9XAIA/VYCAAH9VgIAAv1WAgADIh8gG/3mASIaIBr95gH95AEiIP3jASEXIAogFiAX/ecBIBggIP0MAAAAAAAAAAAAAAAAAAAAAP1EIhj9UiIW/R8DOAIAIAsgFv0fAjgCACAMIBb9HwE4AgAgDSAW/R8AOAIAIA4gGSAX/ecBIB4gGP1SIhb9HwM4AgAgDyAW/R8COAIAIBAgFv0fATgCACARIBb9HwA4AgAgEiAaIBf95wEgHyAY/VIiF/0fAzgCACATIBf9HwI4AgAgFCAX/R8BOAIAIBUgF/0fADgCACADQdAAaiEDIAlBBGsiCQ0ACyAGIAhGDQELIAUgB2ohAwNAIARBCGoiBSoCACIhICaUIicgJ5QgBEEMaiIGKgIAIiIgJZQiKCAolJIgBEEQaiIJKgIAIiMgJJQiKSAplJIiKkMAAAAAXgRAICkgKpEiIZUhIyAoICGVISIgJyAhlSEhCyAJICM4AgAgBiAiOAIAIAUgITgCACADIARBFGoiBEcNAAsLAkAgASgCLCILRQ0AIAEoAigiBUEgaiEGIAIqAgghJCACKgIEISUgAioCACEmAkAgC0EBa0H///8/cSICQQNJBEAgBSEDDAELIAJBAWoiDEH8////AHEiAkEFdCIEIAVqIQMgBCAGaiEGICT9EyEbICX9EyEcICb9EyEdIAIhCSAFIQQDQCAE/RH9DAAAAAAgAAAAQAAAAGAAAAD9rgEiF/0bAyIHQRBqIBf9GwIiCEEQaiAX/RsBIgpBEGogBP1cAhD9VgIAAf1WAgAC/VYCAAMiGCAd/eYBIhYgFv3mASAHQRRqIAhBFGogCkEUaiAE/VwCFP1WAgAB/VYCAAL9VgIAAyIeIBz95gEiGSAZ/eYB/eQBIAdBGGogCEEYaiAKQRhqIARBGGoiDf1cAgD9VgIAAf1WAgAC/VYCAAMiHyAb/eYBIhogGv3mAf3kASIg/eMBIRcgBCAWIBf95wEgGCAg/QwAAAAAAAAAAAAAAAAAAAAA/UQiGP1SIhb9HwA4AhAgCiAW/R8BOAIQIAggFv0fAjgCECAHIBb9HwM4AhAgBCAZIBf95wEgHiAY/VIiFv0fADgCFCAKIBb9HwE4AhQgCCAW/R8COAIUIAcgFv0fAzgCFCANIBogF/3nASAfIBj9UiIX/R8AOAIAIAogF/0fATgCGCAIIBf9HwI4AhggByAX/R8DOAIYIARBgAFqIQQgCUEEayIJDQALIAIgDEYNAQsgBSALQQV0aiEFA0AgBiECIAMqAhAiISAmlCInICeUIAMqAhQiIiAllCIoICiUkiADKgIYIiMgJJQiKSAplJIiKkMAAAAAXgRAICkgKpEiIZUhIyAoICGVISIgJyAhlSEhCyADICM4AhggAyAiOAIUIAMgITgCECACQSBqIQYgBSACIgNHDQALCyAAIAFB4AD8CgAAC5kLAht9An8jAEEwayIgJAACQAJAIAMqAgwiByAHlCADKgIQIgYgBpSSIAMqAhQiCiAKlJIiCEMAAAAAWw0AIAiRIhOLIghDAACAf1wEQCAIQwAAADRfDQEgCCAIQwAAADSUXw0BCyAKIBOVIhWMIQ8gBiATlSIWjCEKIAcgE5UiF4whCCADKgIIIRAgAyoCBCERIAMqAgAhEkMAAIA/IQtDAAAAACEHIAJBADYCvAEgAkEANgKsASACQQA2AjAgAkIANwIoIBUgFZQgFyAXlCAWIBaUkpIiBkMAAAAAXgRAIA8gBpEiBpUhByAKIAaVIQsgCCAGlSEFCyAFIAEqAgAiGpQgCyABKgIEIhuUkiAHIAEqAggiHJSSIAUgASoCDCIdlCALIAEqAhAiHpSSIAcgASoCFCIflJJeIQMgAiAHIAEqAhgiFJQgHCAfIAMbkiIMOAIkIAIgCyAUlCAbIB4gAxuSIgc4AiAgAiAFIBSUIBogHSADG5IiBjgCHCACIAwgEJM4AhggAiAHIBGTOAIUIAIgBiASkzgCECAgIAIQa0P//39/IQVB5AAhAQJAAkADQCAgKgIAIgkgCZQgICoCBCINIA2UkiAgKgIIIg4gDpSSIgZDAADIK15FDQEgDowgBpEiC5UhDCANjCALlSEHIAmMIAuVIQYCfSAFIAtfIiFFBEBDAAAAACEJQwAAgD8hDUMAAAAAIQUgDCAMlCAGIAaUIAcgB5SSkiIOQwAAAABeBEAgDCAOkSIFlSEJIAcgBZUhDSAGIAWVIQULIBQgCZQgHCAfIBwgCZQgGyANlCAaIAWUkpIgHyAJlCAeIA2UIB0gBZSSkl4iAxuSIRkgFCAFlCAaIB0gAxuSIQkgFCANlCAbIB4gAxuSDAELIBhDAAAAAF4NAiAQIA6SIRkgEiAJkiEJIBEgDZILIQ0CQAJAAkAgFSAMlCAXIAaUIBYgB5SSkiIOQwAAAABbDQAgDosiBUMAAIB/XARAIAVDAAAANF8NASAFIAVDAAAANJRfDQELIAYgCSASk5QgByANIBGTlJIgDCAZIBCTlJIgDpUiBUMAAAAAYEUNACAOQwAAAABdIAVDAAAAAF5xDQEgIUUNAkEAIQMMBQtBACEDICENBCAOQwAAoDVeDQQMAQsgBCAYIAWSIhggE5VdBEBBACEDDAQLIBAgFSAFlCIPkiEQIBEgFiAFlCIKkiERIBIgFyAFlCIIkiESQ///f38hCwJAIAIoArwBIgNBAWoiIUUNACACIAIqAhAgCJM4AhAgAiACKgIUIAqTOAIUIAIgAioCGCAPkzgCGCADRQ0AIAIgAioCNCAIkzgCNCACIAIqAjggCpM4AjggAiACKgI8IA+TOAI8ICFBAkYNACACIAIqAlggCJM4AlggAiACKgJcIAqTOAJcIAIgAioCYCAPkzgCYCAhQQNGDQAgAiACKgJ8IAiTOAJ8IAIgAioCgAEgCpM4AoABIAIgAioChAEgD5M4AoQBIAwhDyAHIQogBiEIICFBBEYNAUEEQQRBuJTDABCFCwALIAwhDyAHIQogBiEICyAMIBkgEJMiDJQgByANIBGTIgeUIAYgCSASkyIGlJKSIgW8Qf////8HcUH////7B0sEQEGUksMAQSdB0JLDABDWDAALQQAhAyALIAWSIAtDvRuPOpRfDQIgIEEANgIsICBCADcCJCAgIBk4AiAgICANOAIcICAgCTgCGCAgIAw4AhQgICAHOAIQICAgBjgCDCACICBBDGoQ4QMaICAgAhBrIAIoArwBQQNHBEAgCyEFIAFBAWsiAQ0BDAMLCyAFQwAAoLVfDQELIAAgDzgCECAAIAo4AgwgACAIOAIIIAAgGCATlTgCBEEBIQMLIAAgAzYCAAwBCyAAQQA2AgALICBBMGokAAuDDQMKfxh9AnsjAEHgCWsiBiQAIAQoAgghCCAEQQA2AgggBCgCBCEKIAgEQCAKQYABaiEHA0AgB0EEaygCACIJBEAgBygCACAJQQZ0QQQQ6A4LIAdBKGsoAgAiCQRAIAdBJGsoAgAgCUEGdEEQEOgOCyAHQagBaiEHIAhBAWsiCA0ACwsgASoCZCETIAEqAmghFCABKgJsIRYgBkG4CGogARD7BgJAAkAgA0MAAAA/lCIQQwAAAABgBEAgBiAGKgK8CCAQkzgCECAGIAYqArgIIBCTOAIMIAYgBv0AAsAIIiggEP0TIin95QEgKCAp/eQB/Q0AAQIDFBUWFxgZGhscHR4f/QsCFCAGIBAgAiAAKgIYIhGSkjgCOCAGIBAgAiAAKgIUIhWSkjgCNCAGIBAgAiAAKgIQIhKSkjgCMCAGIBEgApMgEJM4AiwgBiAVIAKTIBCTOAIoIAYgEiACkyAQkzgCJCAGQTxqIAZBDGogBkEkahDwCSAGKAI8QQFHDQIgBkHYAGoiB0EQaiAGQdAAaikCADcDACAGIAb9AAJA/QsDWCAGQfAAaiIIIAEgBxDZCSAGQeQHaiAIEJEBIAYoAuQHQQFHDQEgFkMAAAA/lCEgIBRDAAAAP5QhISATQwAAAD+UISIgESAAKgIMIhogACoCACIXQwAAAACUIhEgACoCBCIYQwAAAACUIhOTIhAgEJIiEJQgFyAAKgIIIhlDAAAAAJQiFCARkyIRIBGSIhGUIBggEyAUkyITIBOSIhOUk5JDAAAAAJKSIR0gFSAaIBGUIBkgE5QgFyAQlJOSQwAAAACSkiEeIBIgGiATlCAYIBCUIBkgEZSTkkMAAAAAkpIhHyAGQbQJaiEJIAZBnAlqIQsgBkH8B2ohByAGQbwJaiIIQRBqIQwgCEEgaiENQQAhAQNAAkAgBi0AiAgiABDDDUH/AXFBAWtBA08NACAGICA4ApQIIAYgITgCkAggBiAiOAKMCCAGIB04AqAIIAYgHjgCnAggBiAfOAKYCCAGQaQIaiEOIAZBjAhqIQ8CQCAAQcAATQRAIABBAnRB5OPDAGooAgAhAAwBCyAAQcEAQejlwwAQhQsACyAOIAcgDyAAIAZBmAhqEMwCIAYoAqQIQQFHDQAgBioCtAgiFCACkyISIANfRQ0AIAYqArAIIRAgBioCrAghESAGKgKoCCEVIAv9DAAAAAAAAAAAAAAAAAAAAAD9CwIAIAj9DAAAAAAAAAAAAAAAAAAAAAD9CwIAIAz9DAAAAAAAAAAAAAAAAAAAAAD9CwIAIA1BADYCACAGQoCAgIDAADcCtAkgBkEANgK4CCAGQQA7AbAJIAZBADYCrAkgBkEANgKYCSAGQoCAgICAAjcCkAkgBkEANgKECSAGQQA2AvgIIAZBADYC2AggCUGU48EAEMAIIAYoArgJIgAgEjgCGCAA/QwAAAAAAAAAAAAAAAAAAAAA/QsCHCAAQSxq/QwAAAAAAAAAAAAAAAAAAAAA/QsCACAAQTxqQQA2AgAgACAdIBAgFJSTIiMgAiAaIBcgEZQgGCAVlJMiEiASkiIWlCAYIBggEJQgGSARlJMiEiASkiIblCAXIBkgFZQgFyAQlJMiEiASkiIclJOSIBCTIhKUQwAAAACSIiQgBRs4AhQgACAeIBEgFJSTIiUgAiAaIByUIBcgFpQgGSAblJOSIBGTIhOUQwAAAACSIiYgBRs4AhAgACAfIBUgFJSTIicgAiAaIBuUIBkgHJQgGCAWlJOSIBWTIhSUQwAAAACSIhYgBRs4AgwgACAkICMgBRs4AgggACAmICUgBRs4AgQgACAWICcgBRs4AgAgBkEBNgK8CQJAIAVFBEAgFSEWIBEhGyAQIRwgFCEVIBMhESASIRAMAQsgFCEWIBMhGyASIRwLIAYgEDgC1AkgBiAROALQCSAGIBU4AswJIAYgHDgCyAkgBiAbOALECSAGIBY4AsAJIAQoAgAgAUYEQCAEQaTjwQAQlwggBCgCBCEKCyAKIAFBqAFsaiAGQbgIakGoAfwKAAAgBCABQQFqIgE2AggLIAZB5AdqIAZB8ABqEJEBIAYoAuQHDQALDAELIAZBADYCgAEgBkEBNgJ0IAZBpNnBADYCcCAGQgQ3AnggBkHwAGpBrNnBABC5DQALIAYoAnBBAkYNACAGKAL0ASIAQSFJDQAgBigCeCAAQQJ0QQQQ6A4LIAZB4AlqJAAL5QsCCH8SfSMAQcABayIGJAAgBkEANgIYIAZCADcDECAG/QwAAAAAAAAAAAAAAAAAAIA//QsEAAJAAkACQAJAAkAgBCoCDCIOIA6UIAQqAhAiECAQlJIgBCoCFCIRIBGUkiIPQwAAAABbDQAgD5EiFIsiD0MAAIB/XARAIA9DAAAANF8NASAPIA9DAAAANJRfDQELIAQqAgAhFSAEKgIEIRYgBCoCCCEXIAZBJGoiBEEIaiIHIBEgFJUiHYw4AgAgBiAQIBSVIh6MOAIoIAYgDiAUlSIfjDgCJCAGQThqIgkgBygCADYCACAGIAYpAiQ3AzAgBkE8aiAGIAEgAiAEEM0DIANBADYCvAEgA0EANgKsASADIAYpAkg3AhwgA0EkaiAGQdAAaigCADYCACADIAYpAlQ3AiggA0EwaiAGQdwAaigCADYCACADIAYqAkQgF5M4AhggAyAGKgJAIBaTOAIUIAMgBioCPCAVkzgCECAGQeAAaiADEGsgBioCYCIQIBCUIAYqAmQiESARlJIgBioCaCISIBKUkiIPQwAAyCteBEAgBkGcAWoiBEEYaiEHIARBDGohCiAGQfgAaiIEQRhqIQsgBEEMaiEMQ///f38hDkHkACENA0AgBiASjCAPkSIPlSIaOAJ0IAYgEYwgD5UiGzgCcCAGIBCMIA+VIhw4AmwCQCAOIA9fIghFBEAgBkH4AGogBiABIAIgBkHsAGoQzQMgBioCgAEhEiAGKgJ8IREgBioCeCEQDAELIAZBADYCmAEgBkIANwKQASAGIBIgF5IiEjgCjAEgBiARIBaSIhE4AogBIAYgECAVkiIQOAKEASAGIBI4AoABIAYgETgCfCAGIBA4AnggGEMAAAAAXg0FCwJAAkACQCAdIBqUIB4gG5QgHyAclJKSIhNDAAAAAFsNACATiyIOQwAAgH9cBEAgDkMAAAA0Xw0BIA4gDkMAAAA0lF8NAQsgGiASIBeTlCAbIBEgFpOUIBwgECAVk5SSkiATlSIOQwAAAABgRQ0AIBNDAAAAAF0gDkMAAAAAXnENASAIRQ0CIABBADYCAAwJC0EAIQQgE0MAAKA1Xg0HIAgNBwwBCyAJIAZB9ABqKAIANgIAIAYgBikCbDcDMCAFIBggDpIiGCAUlV0EQCAAQQA2AgAMCAsgFyAdIA6UIhOSIRcgFiAeIA6UIhmSIRYgFSAfIA6UIg6SIRVD//9/fyEPIAMoArwBIghBAWoiBEUNACADIAMqAhAgDpM4AhAgAyADKgIUIBmTOAIUIAMgAyoCGCATkzgCGCAIRQ0AIAMgAyoCNCAOkzgCNCADIAMqAjggGZM4AjggAyADKgI8IBOTOAI8IARBAkYNACADIAMqAlggDpM4AlggAyADKgJcIBmTOAJcIAMgAyoCYCATkzgCYCAEQQNGDQAgAyADKgJ8IA6TOAJ8IAMgAyoCgAEgGZM4AoABIAMgAyoChAEgE5M4AoQBIARBBEYNAEEEQQRBuJTDABCFCwALIBogEiAXkyISlCAbIBEgFpMiEZQgHCAQIBWTIhCUkpIiDrxB/////wdxQf////sHSwRAQZSSwwBBJ0HQksMAENYMAAtBACEEIA8gDpIgD0O9G486lF8NBSAKIAwpAgA3AgAgByALKQIANwIAIApBCGogDEEIaigCADYCACAHQQhqIAtBCGooAgA2AgAgBiASOAKkASAGIBE4AqABIAYgEDgCnAEgAyAGQZwBahDhAxogBkHgAGogAxBrIAMoArwBQQNGDQMgDUEBayINRQ0FIA8hDiAGKgJgIhAgEJQgBioCZCIRIBGUkiAGKgJoIhIgEpSSIg9DAADIK14NAAsLIAAgBikDMDcCCCAAQQE2AgAgACAYIBSVOAIEIABBEGogCSgCADYCAAwECyAAQQA2AgAMAwsgDkMAAKC1Xw0BCyAAIAYpAzA3AgggACAYIBSVOAIEIABBEGogBkE4aigCADYCAEEBIQQLIAAgBDYCAAsgBkHAAWokAAvvCwIefwN+IwBBMGsiDCQAIAxBCGogARCWBSABKAIwIhetQgx+IiCnIQICQAJAAkACQAJAAkACQAJAAkACQCAgQiCIpw0AIAJB/P///wdLDQAgASgCLCEDAkAgAkUEQEEEIRAMAQtBBCEHIBchGSACQQQQkQ4iEEUNAQsgAgRAIBAgAyAC/AoAAAsgASgCPCIYrUIMfiIgpyECQQAhByAgQiCIpw0BIAJB/P///wdLDQEgASgCOCEDAkAgAkUEQEEEIREMAQtBBCEHIBghGiACQQQQkQ4iEUUNAgsgAgRAIBEgAyAC/AoAAAtBgICAgHghBwJAIAEoAkBBgICAgHhGBEBBgICAgHghEgwBCyABKAJIIhKtIiFCDH4iIKchAiAgQiCIpw0DIAJB/P///wdLDQMgASgCRCEEAkAgAkUEQEEEIQVBACESDAELQQQhDSACQQQQkQ4iBUUNBAsgAgRAIAUgBCAC/AoAAAsgASgCVCINrUIkfiIgpyECQQAhBCAgQiCIpw0EIAJB/P///wdLDQQgASgCUCEDAkAgAkUEQEEEIRMMAQtBBCEEIA0hGyACQQQQkQ4iE0UNBQsgAgRAIBMgAyAC/AoAAAsgBa0gIUIghoQhIAsgASgCWEGAgICAeEcEQCABKAJgIgVBAnQhAkEAIQQgBUH/////A0sNBSACQfz///8HSw0FIAEoAlwhAwJAIAJFBEBBBCEGQQAhBwwBC0EEIQQgBSEHIAJBBBCRDiIGRQ0GCyACBEAgBiADIAL8CgAACyABKAJsIgJBAnQhBEEAIQMgAkH/////A0sNBiAEQfz///8HSw0GIAEoAmghCAJAIARFBEBBBCEUDAELQQQhAyACIRwgBEEEEJEOIhRFDQcLIAQEQCAUIAggBPwKAAALIAEoAngiBEEEdCEDIARB/////wBLDQcgA0H8////B0sNByABKAJ0IQgCQCADRQRAQQQhFQwBC0EEIQogBCEdIANBBBCRDiIVRQ0ICyADBEAgFSAIIAP8CgAACyAGrSAFrUIghoQhIQtBgICAgHghAyABKAJ8QYCAgIB4RwRAIAEoAoQBIghBAnQhBUEAIQYgCEH/////A0sNCCAFQfz///8HSw0IIAEoAoABIQ4CQCAFRQRAQQQhFkEAIQMMAQtBBCEGIAghAyAFQQQQkQ4iFkUNCQsgBQRAIBYgDiAF/AoAAAsgASgCkAEiBUECdCEGIAVB/////wNLDQkgBkH8////B0sNCSABKAKMASEPAkAgBkUEQEEEIQpBACEODAELQQQhCyAFIQ4gBkEEEJEOIgpFDQoLIAYEQCAKIA8gBvwKAAALIAEoApwBIgZBAnQhCSAGQf////8DSw0KIAlB/P///wdLDQogASgCmAEhHgJAIAlFBEBBBCELQQAhDwwBC0EEIR8gBiEPIAlBBBCRDiILRQ0LCyAJBEAgCyAeIAn8CgAACyAWrSAIrUIghoQhIgsgACAMKQIINwIAIAAgBjYCnAEgACALNgKYASAAIA82ApQBIAAgBTYCkAEgACAKNgKMASAAIA42AogBIAAgIjcCgAEgACADNgJ8IAAgBDYCeCAAIBU2AnQgACAdNgJwIAAgAjYCbCAAIBQ2AmggACAcNgJkIAAgITcCXCAAIAc2AlggACANNgJUIAAgEzYCUCAAIBs2AkwgACAgNwJEIAAgEjYCQCAAIBg2AjwgACARNgI4IAAgGjYCNCAAIBc2AjAgACAQNgIsIAAgGTYCKCAAIAEvAaABOwGgASAAQQhqIAxBCGoiAUEIav0AAgD9CwIAIABBGGogAUEYav0AAgD9CwIAIAxBMGokAA8LIAcgAkHA3MIAENcNAAsgByACQcDcwgAQ1w0ACyANIAJBwNzCABDXDQALIAQgAkHA3MIAENcNAAsgBCACQcDcwgAQ1w0ACyADIARBwNzCABDXDQALIAogA0HA3MIAENcNAAsgBiAFQcDcwgAQ1w0ACyALIAZBwNzCABDXDQALIB8gCUHA3MIAENcNAAuBCwMTfwR7BX0jAEEgayIHJAACQCADBEAgAigCGCIKQQNxIRIgAigCECILQQNxIRMgCkF4cSEUIAtBeHEhFSALQQhJIRYDQAJAAn8CQAJAIAEgAiAQQcgAbGoiDSgCFCIIIAtqIgVPBEAgDSgCHCIRIApqIg8gAUsNByAFIAtqIAFLDQcgCiAPaiABSw0HIAhBAnQhCSAFQQJ0IQ4gFgRAQwAAAAAhHUEADAQLIAAgCWohBiAAIA5qIQQgCyEF/QwAAAAAAAAAAAAAAAAAAAAAIRj9DAAAAAAAAAAAAAAAAAAAAAAhF/0MAAAAAAAAAAAAAAAAAAAAACEZ/QwAAAAAAAAAAAAAAAAAAAAAIRoDQCAXIAZBGGr9XQIAIARBGGr9XQIA/eYB/eQBIRcgGCAGQQhq/V0CACAEQQhq/V0CAP3mAf3kASEYIBogBkEQav1dAgAgBEEQav1dAgD95gH95AEhGiAZIAb9XQIAIAT9XQIA/eYB/eQBIRkgBkEgaiEGIARBIGohBCAFQQhrIgVBB0sNAAsMAgsMBgsACyAYIBf95AEiF/0fASAX/R8AIBkgGv3kASIX/R8BIBf9HwBDAAAAAJKSkpIhHSAVCyIIIAtPDQACQCATRQRAIAghBQwBCyAAIAhBAnQiBSAJamohBiAAIAUgDmpqIQQgEyEMIAghBQNAIAVBAWohBSAdIAYqAgAgBCoCAJSSIR0gBkEEaiEGIARBBGohBCAMQQFrIgwNAAsLIAggC2tBfEsNACAAIAVBAnQiCCAJamohBiAAIAggDmpqIQQgCyAFayEFA0AgHSAGKgIAIAQqAgCUkiAGQQRqKgIAIARBBGoqAgCUkiAGQQhqKgIAIARBCGoqAgCUkiAGQQxqKgIAIARBDGoqAgCUkiEdIAZBEGohBiAEQRBqIQQgBUEEayIFDQALCwJAAn8gCkEISQRAQwAAAAAhG0EADAELIBFBAnQhDiAPQQJ0IQhDAAAAACEbIAohDCAAIQVDAAAAACEfQwAAAAAhHkMAAAAAIRz9DAAAAAAAAAAAAAAAAAAAAAAhGP0MAAAAAAAAAAAAAAAAAAAAACEXA0AgHyAFIA5qIgQqAgAgBSAIaiIJKgIAlJIhHyAXIARBGGr9XQIAIAlBGGr9XQIA/eYB/eQBIRcgGCAEQQhq/V0CACAJQQhq/V0CAP3mAf3kASEYIBsgBEEUaioCACAJQRRqKgIAlJIhGyAcIARBEGoqAgAgCUEQaioCAJSSIRwgHiAEQQRqKgIAIAlBBGoqAgCUkiEeIAVBIGohBSAMQQhrIgxBB0sNAAsgGCAX/eQBIhf9HwEgF/0fACAeIBuSIBwgH5JDAAAAAJKSkpIhGyAUCyIIIApPDQACQCASRQRAIAghBQwBCyAAIAhBAnQiBSARQQJ0amohBiAAIAUgD0ECdGpqIQQgEiEMIAghBQNAIAVBAWohBSAbIAYqAgAgBCoCAJSSIRsgBkEEaiEGIARBBGohBCAMQQFrIgwNAAsLIAggCmtBfEsNACAAIAVBAnQiCCARQQJ0amohBiAAIAggD0ECdGpqIQQgCiAFayEFA0AgGyAGKgIAIAQqAgCUkiAGQQRqKgIAIARBBGoqAgCUkiAGQQhqKgIAIARBCGoqAgCUkiAGQQxqKgIAIARBDGoqAgCUkiEbIAZBEGohBiAEQRBqIQQgBUEEayIFDQALCyANIB0gG5IiHiANKgI8lCANKgJAkiIcOAJAIA1DAAAAAEMAAIA/IB4gHJIiHJUgHItDCOU8Hl0bOAIwIBBBAWoiECADRw0ACwsgB0EgaiQADwsgB0EANgIYIAdBATYCDCAHQbD9wQA2AgggB0IENwIQIAdBCGpBuP3BABC5DQALnwsCGn0NfyMAQYABayIiJAAgASoCACESIAAqAgghDSABKgIIIRMgACoCACEOIAAqAgQhDyABKgIEIRQgACoCDCEQICJBCGoiIxDbDCAiIBMgECAPIBKUIA4gFJSTIgkgCZIiCZQgDyANIBSUIA8gE5STIgogCpIiCpQgDiAOIBOUIA0gEpSTIgggCJIiCJSTkpIiDIwiFzgCaCAiIBQgECAIlCAOIAmUIA0gCpSTkpIiC4wiGDgCZCAiIBIgECAKlCANIAiUIA8gCZSTkpIiCYwiGTgCYCACICJB4ABqICMgAxEBACAGKAKEASEmIAYoAoABISUgBkIENwKAASAGKAJ8ISogBkEANgJ8ICIoAlwiKwRAIAZB/ABqISggBCAMlCEaIAQgC5QhGyAEIAmUIRwgIkE4aiEnIAAqAhghHSAAKgIUIR4gACoCECEfICMhAiAiQfgAaiEjQQQhKUEAIQMDQAJAAkAgA0EERwRAIA4gAkEEaioCACIJlCAPIAIqAgAiCpSTIgggCJIhCCANIAqUIA4gAkEIaioCACIMlJMiCyALkiELIBMgHSAMIBAgCJQgDiALlCAPIA8gDJQgDSAJlJMiESARkiIRlJOSkpIiFZQgEiAfIAogECARlCAPIAiUIA0gC5STkpKSIhaUIBQgHiAJIBAgC5QgDSARlCAOIAiUk5KSkiILlJKSIgggBJMiESAFXw0BDAILQQRBBEH06MEAEIULAAsjAEEgayIAJAAgAEEANgIEIABBIGokACAiQegAaiIs/QwAAAAAAAAAAAAAAAAAAAAA/QsDACAjQQA2AgAgIkIANwNgQYCAgIB8ICcoAgAiACAHGyEtIABBgICAgHwgBxshLiAVIBMgCJSTIhUgDCAakyIMIAcbISAgCyAUIAiUkyILIAkgG5MiCSAHGyEhIBYgEiAIlJMiCCAKIByTIgogBxshFiAMIBUgBxshDCAJIAsgBxshCSAKIAggBxshCiAoKAIAICRGBEAgKEGE6cEAEMAIIAYoAoABISkLICkgJEEGdGoiACAtNgIgIAAgLjYCHCAAIBE4AhggACAgOAIUIAAgITgCECAAIBY4AgwgACAMOAIIIAAgCTgCBCAAIAo4AgAgACAiKQNgNwIkIABBLGogLP0AAwD9CwIAIABBPGogIygCADYCACAGICRBAWoiJDYChAELIAJBDGohAiAnQQRqIScgKyADQQFqIgNHDQALCwJAIAcEQCAGIBc4ApABIAYgGDgCjAEgBiAZOAKIASAGIAEpAgA3ApQBIAZBnAFqIAFBCGooAgA2AgAMAQsgBiAXOAKcASAGIBg4ApgBIAYgGTgClAEgBkGIAWoiACABKQIANwIAIABBCGogAUEIaigCADYCAAsCQCAkRQ0AICZFDQAgBigCgAEiByAkQQZ0aiEnICUgJkEGdGohKCAlQSRqIQMgJUFAayEBICZBAXEhKSAmQf///x9xQQFGISYDQCAHQSRqIQIgBygCHCEGICUhAAJAIClFDQAgASEAIAYgJSgCHEcNACAHKAIgICUoAiBHDQAgAiAD/QACAP0LAgAgAkEYaiADQRhqKAIANgIAIAJBEGogA0EQaikCADcCAAsgJkUEQCACQRhqISMgAkEQaiEkA0ACQCAGIABBHGooAgBHDQAgBygCICAAQSBqKAIARw0AICMgAEE8aigCADYCACAkIABBNGopAgA3AgAgAiAAQSRq/QACAP0LAgALAkAgBiAAQdwAaigCAEcNACAHKAIgIABB4ABqKAIARw0AICMgAEH8AGooAgA2AgAgJCAAQfQAaikCADcCACACIABB5ABq/QACAP0LAgALICggAEGAAWoiAEcNAAsLICcgB0FAayIHRw0ACwsgKgRAICUgKkEGdEEEEOgOCyAiQYABaiQAC8oSAgZ+GH8jAEEQayIVJAAgACgCACEMAn8CQCABKAIAIg4gASgCBCIRRg0AIA4gASgCCCIPRg0AIA8gEUYNAAJAIABBBGooAgAiCigCDEUNACAKKAIEIgkgCikDECIEIA6tIgcgEa0iBUIghoSFIgJCIIgiA0K307CFDH4gAkL/////D4MiAkLdofHLDH6FIANC3aHxywx+IAJCt9OwhQx+hUIgiIUiAqdxIQAgAkIZiEL/AINCgYKEiJCgwIABfiEGIAooAgAhCwNAIAAgC2opAAAiAyAGhSICQoGChIiQoMCAAX0gAkJ/hYNCgIGChIiQoMCAf4MiAkIAUgRAA0AgCyACeqdBA3YgAGogCXFBA3RrIg1BCGsoAgAgDkYEQCARIA1BBGsoAgBGDQULIAJCAX0gAoMiAkIAUg0ACwsgAyADQgGGg0KAgYKEiJCgwIB/g1AEQCAIQQhqIgggAGogCXEhAAwBCwsgCSAEIAUgD60iBkIghoSFIgJCIIgiA0K307CFDH4gAkL/////D4MiAkLdofHLDH6FIANC3aHxywx+IAJCt9OwhQx+hUIgiIUiAqdxIQAgAkIZiEL/AINCgYKEiJCgwIABfiEFQQAhCANAIAAgC2opAAAiAyAFhSICQoGChIiQoMCAAX0gAkJ/hYNCgIGChIiQoMCAf4MiAkIAUgRAA0AgCyACeqdBA3YgAGogCXFBA3RrIg1BCGsoAgAgEUYEQCAPIA1BBGsoAgBGDQULIAJCAX0gAoMiAkIAUg0ACwsgAyADQgGGg0KAgYKEiJCgwIB/g0IAUgRAIAkgBCAHQiCGIAaEhSICQiCIIgRCt9OwhQx+IAJC/////w+DIgJC3aHxywx+hSAEQt2h8csMfiACQrfTsIUMfoVCIIiFIgKncSEAIAJCGYhC/wCDQoGChIiQoMCAAX4hA0EAIQgDQCAAIAtqKQAAIgQgA4UiAkKBgoSIkKDAgAF9IAJCf4WDQoCBgoSIkKDAgH+DIgJCAFIEQANAIAsgAnqnQQN2IABqIAlxQQN0ayIRQQhrKAIAIA9GBEAgDiARQQRrKAIARg0HCyACQgF9IAKDIgJCAFINAAsLIAQgBEIBhoNCgIGChIiQoMCAf4NCAFINAyAIQQhqIgggAGogCXEhAAwACwAFIAhBCGoiCCAAaiAJcSEADAELAAsACyAKQRBqIRlBACEAA0AgCikDECABIABBAnRqKAIAIhatIAEgAEEBaiIRQQAgAEECRxtBAnRqKAIAIhetQiCGhIUiAkIgiCIEQrfTsIUMfiACQv////8PgyICQt2h8csMfoUgBELdofHLDH4gAkK307CFDH6FQiCIhSEEIAooAghFBEAgFUEIaiEYIwBBMGsiDCQAIAwgGTYCKCAKKAIMIQkgDCAMQShqNgIsAkACQAJAAn8CQCAJIAlBAWoiAE0EQCAKKAIEIhMgE0EBakEDdkEHbCATQQhJGyIIQQF2IABJBEAgCEEBaiIIIAAgACAISRsiAEEPSQ0CIABB/////wFNBEBBfyAAQQN0QQduQQFrZ3YiAEH+////AUsNBSAAQQFqDAQLEKcMIAwoAiQhACAMKAIgIQgMBgsgCiAMQSxqQYgCQQgQxgJBgYCAgHghCAwFCxCnDCAMKAIMIQAgDCgCCCEIDAQLQQRBCEEQIABBCEkbIABBBEkbCyIAQQN0IgsgAEEIaiIOIAtqIghLDQAgCEH4////B0sNACAIQQgQkQ4iDQ0BQQggCEH4ysQAKAIAIgBBzAggABsRAAAACxCnDCAMKAIUIQAgDCgCECEIDAELIAsgDWohDSAOBEAgDUH/ASAO/AsACyAAQQFrIhIgAEEDdkEHbCASQQhJGyEaAkAgCUUEQCAKKAIAIQsMAQsgDUEIaiEbIAooAgAiC0EIayEcIAspAwBCf4VCgIGChIiQoMCAf4MhAiAMKAIoIR1BACEAIAkhDiALIQgDQCACUARAA0AgAEEIaiEAIAhBCGoiCCkDAEKAgYKEiJCgwIB/gyICQoCBgoSIkKDAgH9RDQALIAJCgIGChIiQoMCAf4UhAgsgDSAdKQMAIBwgAnqnQQN2IABqIh5BA3RrKQIAhSIDQiCIIgVCt9OwhQx+IANC/////w+DIgNC3aHxywx+hSAFQt2h8csMfiADQrfTsIUMfoVCIIiFpyIfIBJxIhBqKQAAQoCBgoSIkKDAgH+DIgNQBEBBCCEUA0AgECAUaiEQIBRBCGohFCANIBAgEnEiEGopAABCgIGChIiQoMCAf4MiA1ANAAsLIAJCAX0gAoMhAiANIAN6p0EDdiAQaiAScSIQaiwAAEEATgRAIA0pAwBCgIGChIiQoMCAf4N6p0EDdiEQCyANIBBqIB9BGXYiFDoAACAbIBBBCGsgEnFqIBQ6AAAgDSAQQX9zQQN0aiALIB5Bf3NBA3RqKQAANwMAIA5BAWsiDg0ACwsgCiASNgIEIAogDTYCACAKIBogCWs2AghBgYCAgHghCCATRQ0AIAsgE0EDdEEPakF4cSIAayAAIBNqQQlqQQgQ6A4LIBggADYCBCAYIAg2AgAgDEEwaiQACyAKKAIEIgsgBKdxIQAgBEIZiCIDQv8Ag0KBgoSIkKDAgAF+IQUgCigCACEJQQAhDkEAIQgDQAJ/AkACQCAAIAlqKQAAIgQgBYUiAkKBgoSIkKDAgAF9IAJCf4WDQoCBgoSIkKDAgH+DIgJCAFIEQANAIAkgAnqnQQN2IABqIAtxQQN0ayIMQQhrKAIAIBZGBEAgFyAMQQRrKAIARg0DCyACQgF9IAKDIgJCAFINAAsLIARCgIGChIiQoMCAf4MhAiAIQQFHBEAgAlANAiACeqdBA3YgAGogC3EhDwtBASACIARCAYaDUA0CGiAJIA9qLAAAIgBBAE4EQCAJIAkpAwBCgIGChIiQoMCAf4N6p0EDdiIPai0AACEACyAJIA9qIAOnQf8AcSIIOgAAIAkgD0EIayALcWpBCGogCDoAACAKIAooAgggAEEBcWs2AgggCiAKKAIMQQFqNgIMIAkgD0EDdGsiAEEIayAWNgIAIABBBGsgFzYCAAsgESIAQQNHDQNBAQwFC0EACyEIIA5BCGoiDiAAaiALcSEADAALAAsACyAMQQE6AABBAAshACAVQRBqJAAgAAugDAIgfxF9IwBB0ANrIgQkACACKgIIISggAioCBCEpIAIqAgAhKiABKAIAIggqAmQhJCAIKgJoISYgCCoCbCElIAEoAgQhDiABKAIIIgUoAgQhByAFKAIIIQIgASgCDCEBIAQgBSgCAEEDdCIGNgLQAiAEIAE2AswCIAQgAkEDdCIFNgLIAiAEIAdBA3QiAjYCxAIgBCAGNgLAAiAEIAU2ArACIAQgAjYCrAIgBCAGNgKoAiAEIA42AqQCIAQgCDYCoAIgBEEANgKQASAEQQA2AgAgBCAGQQhqIgE2AtQCIAQgBUEIajYCvAIgBCACQQhqNgK4AiAEIAE2ArQCICVDAAAAP5QiL4whMCAmQwAAAD+UIjGMITIgJEMAAAA/lCIzjCE0IARBEGohEiAEQfgAaiETIARB6ABqIRQgBEHcAGohFSAEQcACaiEPIARBtAJqIRYgBEGoAmohFyAEQZABaiEeQ///f38hKyAqISwgKSEtICghLgNAIARBqANqIAQQgQICQAJAIAQoAqgDRQRAIAQoAqACIhlFDQEgBCgCrAIiECAEKAK4AiIaIBAgGkobIRsgBCgCpAIhHCAEKALMAiEdIAQoAtACIgUgBCgC1AIiASABIAVIGyEfIAQoAighByAEKAIkIQggBCgCDCEJIAQoAhwhCiAEKAIIIQwgBCgCICENA0AgBSAfRg0CIBUgFykCADcCACAUIBYpAgA3AgAgEyAPKQIANwIAIBVBCGogF0EIaigCADYCACAUQQhqIBZBCGooAgA2AgAgE0EIaiAPQQhqIiAoAgA2AgAgBCAcNgJYIAQgGTYCVEEAIQsgBEEANgIsIARCATcCACAEIAU2AnQgBCAFQQFqIiE2AtACIAQgGjYCjAEgBCAQNgKIASAEIB02AoQBIAQoAnAhIiAEKAJkISMgECEGIAghAgJ/AkACQANAAkAgC0UNACACIAdODQAgCSACQQZ0aiAKQQN0aiAEKAIQayAEKAIUQQN0ayAEKAIYQQZ0ayEBA0AgAUH/A0sNAyABIAxqLQAAIg5BwABHDQQgAUFAayEBIAcgAkEBaiICRw0ACyAHIQILIAYgG0cEQCASIA8pAgA3AgAgEkEIaiAgKAIANgIAICIhByAdIQ0gBSEJIBwhDCAGIgpBAWohBiAZIQsgIyECDAELCyAEIBs2AogBIAQgAjYCJCAEIAc2AiggBCANNgIgIAQgCjYCHCAEIAk2AgwgBCAMNgIIIARCADcCACACIQhBAAwCCyABQYAEQZTnwwAQhQsACyAEIAY2AogBIAQgBzYCKCAEIA02AiAgBCAMNgIIIAQgAkEBaiIINgIkIAQgCzYCBCACskMAAAA/kiALKgJslCElIAQgCjYCHCAKskMAAAA/kiALKgJolCEmIAQgCTYCDCAJskMAAAA/kiALKgJklCEkQQELIQYgBCAOOgDMAyAEICU4AsgDIAQgJjgCxAMgBCAkOALAAyAEIAI2ArwDIAQgCjYCuAMgBCAJNgK0AyAEIAE2ArADIAQgDTYCrAMgBCAGNgKoAyAhIQUgBkUNAAsLIARB2AJqIgJBIGogBEGoA2oiAUEgaikCADcDACACQRBqIAFBEGr9AAIA/QsDACAEIAT9AAKoA/0LA9gCDAELIARB2AJqIB4QgQILIAQoAtgCQQFGBEAgBCgC4AIhAiAEKALcAiEBIAQqAvACIScgBCoC9AIhJiAEICggBCoC+AIiJJM4AowDIAQgKSAmkzgCiAMgBCAqICeTOAKEAyAEIC84AqQDIAQgMTgCoAMgBCAzOAKcAyAEIDA4ApgDIAQgMjgClAMgBCA0OAKQAyAEQagDaiAEQZADaiAEQYQDaiADEIYDICsgJyAEKgKoA5IiJyAqkyIlICWUICYgBCoCrAOSIiYgKZMiJSAllJIgJCAEKgKwA5IiJSAokyIkICSUkpEiJF5FDQEgBC0AtAMhGCABQQl0IAJqIREgJyEsICYhLSAlIS4gJCErDAELC0ECIQEgACArQ///f39dBH8gACARNgIQIAAgLjgCCCAAIC04AgQgACAsOAIAIBgFQQILOgAMIARB0ANqJAAL8QoBBH8gACgC4AQiAQRAIAAoAuQEIAFBAnRBBBDoDgsgACgC8AQhAyAAKAL0BCIEBEAgAyEBA0AgASgCACICBEAgAUEEaigCACACQQJ0QQQQ6A4LIAFBDGohASAEQQFrIgQNAAsLIAAoAuwEIgEEQCADIAFBDGxBBBDoDgsgACgC/AQhAyAAKAKABSIEBEAgAyEBA0AgASgCACICBEAgAUEEaigCACACQQJ0QQQQ6A4LIAFBDGohASAEQQFrIgQNAAsLIAAoAvgEIgEEQCADIAFBDGxBBBDoDgsgACgChAUiAQRAIAAoAogFIAFBBHRBBBDoDgsgACgCkAUiAQRAIAAoApQFIAFBFGxBBBDoDgsgACgCoAUhAyAAKAKkBSIEBEAgAyEBA0AgASgCACICBEAgAUEEaigCACACQQJ0QQQQ6A4LIAFBEGooAgAiAgRAIAFBFGooAgAgAkECdEEEEOgOCyABQRxqKAIAIgIEQCABQSBqKAIAIAJBAnRBBBDoDgsgAUEoaigCACICBEAgAUEsaigCACACQRhsQQQQ6A4LIAFBOGooAgAiAgRAIAFBPGooAgAgAkEEdEEQEOgOCyABQcQAaigCACICBEAgAUHIAGooAgAgAkECdEEEEOgOCyABQdAAaigCACICBEAgAUHUAGooAgAgAkECdEEEEOgOCyABQdwAaigCACICBEAgAUHgAGooAgAgAkG4B2xBBBDoDgsgAUHoAGooAgAiAgRAIAFB7ABqKAIAIAJBsB1sQRAQ6A4LIAFB9ABqKAIAIgIEQCABQfgAaigCACACQYASbEEQEOgOCyABQYABaigCACICBEAgAUGEAWooAgAgAkHEAWxBBBDoDgsgAUGMAWooAgAiAgRAIAFBkAFqKAIAIAJBwAVsQRAQ6A4LIAFBmAFqKAIAIgIEQCABQZwBaigCACACQZAFbEEQEOgOCyABQaQBaigCACICBEAgAUGoAWooAgAgAkECdEEEEOgOCyABQbQBaigCACICBEAgAUG4AWooAgAgAkECdEEEEOgOCyABQcABaigCACICBEAgAUHEAWooAgAgAkECdEEEEOgOCyABQcwBaigCACICBEAgAUHQAWooAgAgAkEYbEEEEOgOCyABQdwBaigCACICBEAgAUHgAWooAgAgAkEEdEEQEOgOCyABQegBaigCACICBEAgAUHsAWooAgAgAkECdEEEEOgOCyABQfQBaigCACICBEAgAUH4AWooAgAgAkECdEEEEOgOCyABQYACaigCACICBEAgAUGEAmooAgAgAkHIAGxBBBDoDgsgAUGMAmooAgAiAgRAIAFBkAJqKAIAIAJBiAFsQQQQ6A4LIAFBmAJqKAIAIgIEQCABQZwCaigCACACQZAEbEEQEOgOCyABQaQCaigCACICBEAgAUGoAmooAgAgAkHgA2xBEBDoDgsgAUGwAmooAgAiAgRAIAFBtAJqKAIAIAJB0AJsQRAQ6A4LIAFBvAJqKAIAIgIEQCABQcACaigCACACQaACbEEQEOgOCyABQcgCaigCACICBEAgAUHMAmooAgAgAkEFdEEQEOgOCyABQdQCaigCACICBEAgAUHYAmooAgAgAkEGdEEQEOgOCyABQeACaigCACICBEAgAUHkAmooAgAgAkEFdEEQEOgOCyABQewCaigCACICBEAgAUHwAmooAgAgAkECdEEEEOgOCyABQfwCaigCACICBEAgAUGAA2ooAgAgAkECdEEEEOgOCyABQYwDaigCACICBEAgAUGQA2ooAgAgAkEEdEEEEOgOCyABQZgDaiEBIARBAWsiBA0ACwsgACgCnAUiAARAIAMgAEGYA2xBBBDoDgsLkg8DEH8BfQF+IwBB0ARrIgIkACAAKAIAKAIAIQcgACgCBCIJKAIAQQFGBEAgCSgCBCIDQf//A3EhCyADQRB2IQZBASEDCyAHQSBJIQkgACgCCCIKKAIAQQFGBEAgCikDCCITQiCIpyEEIBOnIQxBASEFCyAHQQAgCRshDUEBIQkCQCAAKAIMIgcoAgBBAUcEQEEAIQkMAQsgBykDCCITQiCIpyEIIBOnIQ4LIAJBGGoiB0EIaiAAKAIQKAIAIgpBCGooAgA2AgAgAkEsaiAAKAIUKAIAIg9BCGooAgA2AgAgAiAKKQIANwMYIAIgDykCADcCJCAAKAIYIQ8gACgCJCgCACEQIAAoAigoAgAhESAAKAIgKAIAIQogAiAAKAIcKAIANgJsIAJByNPBADYCYCACIAE2AlwgAiANNgJYIAIgCDYCVCACIA42AlAgAiAJNgJMIAIgBDYCSCACIAw2AkQgAiAFNgJAIAIgCzYCPCACIAY2AjggAiADNgI0IAooAjwhAyAKKAJAIQEgAiARNgJ0IAIgEDYCcCACIAE2AmggAiADIAEoAghBAWtBeHFqQQhqNgJkIAJB+ABqIQEgACgCLCoCACESIAAoAjAtAAAhCUEAIQZBACEIIwBB0ABrIgAkACACQTRqIgooAjghAyAAQShqIgsgB0EQaikCADcDACAAIBI4AjAgACAH/QACAP0LAxgCf0EAIAMoAghFDQAaIABBzABqIgwgAygCBCIGQRhqKAIANgIAIAAgBikCEDcCRCAAQThqIgVBCGoiDSAGQQhqKAIANgIAIAAgBikCADcDOCAAQRBqIAUgAEEYaiIOIBJBARDDBCAGQQAgACgCEEEBRhshCEEAIAYoAjxB/////wNxRQ0AGiAMIAZBOGooAgA2AgAgDSAGQShqKAIANgIAIAAgBikCMDcCRCAAIAYpAiA3AzggAEEIaiAFIA4gEkEBEMMEIAZBIGohBiAAKAIIQQFGCyEEIAEgAP0AAxj9CwKQASABQagBaiAAQTBqKAIANgIAIAFBoAFqIAspAwA3AgAgASAKNgKsASABIAg2AowBIAEgAzYCiAEgASAENgKEASABIAY2AgQgAUEANgIAIAEgCToAzAEgASASOALIASABIAcpAgA3ArABIAFBuAFqIAdBCGr9AAIA/QsCACAAQdAAaiQAIAJByAJqIgAgAUHQAfwKAAAgAkG0BGohCSAAQbABaiELIAJBvARqIQcgAkHYA2ohCiAAQQRqIQEgAEGEAWohBgJAAkACQAJAA0AgAigC1AMiAEUEQCABIQQgBiEDIAIoAswDIgUiAEEhTwRAIAIoAtACIQQgASEDIAIoAswCIQALIABFDQIgAyAAQQFrIgA2AgAgBCAAQQJ0aigCACEACyACQQA2AtQDIAAoAhxB/////wNxQQFHBEAgACgCDCIAIAIoAtADIgMoAggiBE8NBCAHIAMoAgQgAEEGdGoiACkCEDcCACAHQQhqIgMgAEEYaigCADYCACACQbAEaiIEQQhqIgUgAEEIaigCADYCACACIAApAgA3A7AEIAJBEGogBCAKIAIqAvADQQEQwwQgAEEgaiEIIAIoAhBBAUYEQCACIAA2AtQDCyAHIAApAjA3AgAgAyAAQThqKAIANgIAIAUgCEEIaigCADYCACACIAgpAgA3A7AEIAJBCGogAkGwBGogCiACKgLwA0EBEMMEIAIoAghBAUcNASACKALUAwRAAn8gAigCzAMiBUEhSQRAIAUhACABIQRBICEFIAYMAQsgAigCzAIhACACKALQAiEEIAELIQMgACAFRgRAIAJByAJqEKAEIAIoAtACIQQgASEDIAIoAswCIQALIABBAnQgBGogCDYCACADIAMoAgBBAWo2AgAMAgsgAiAINgLUAwwBCyAAKAIMIgMgAigC9AMiBCgCQCIFKAIQTw0AIAUoAgwgA0GwAWxqIgAoAgBBAUcNACAEIAQoAjwgAyAAKAIEIgQgAEEQahDJBUUNACACQbAEaiIFIAAoAlAgACgCVCIIKAIIQQFrQXhxakEIaiAAQYQBaiALIAIqApAEIAItAJQEIAgoAhwRCQAgAigCsAQiCEEERg0AIAJBqARqIgwgCUEQaigCADYCACACIAn9AAIA/QsDmAQgDygCACENIAJBgQE2AswEQSxBBBCRDiIARQ0EIAAgAv0AA5gE/QsCECAAIAQ2AiggACADNgIkIAD9DAEAAAABAAAAAAAAAAAAAAAgCP0cA/0LAgAgAEEgaiAMKAIANgIAIAIgAEEIahAFNgKwBCACIA0gAkHMBGogBRDADCACKAIEIQACQAJAIAIoAgBBAXFFBEAgABABQQBHIQQgAEGDAUsNAQwCC0EBIQQgAEGEAUkNAQsgABACCyACKAKwBCIAQYQBTwRAIAAQAgsgAigCzAQiAEGEAU8EQCAAEAILIAQNAAsgAigCzAMhBQwBCyACQQA2AtQDCyAFQSFPBEAgAigC0AIgBUECdEEEEOgOCyACQdAEaiQADwsgACAEQdyrwQAQhQsAC0EEQSxB+MrEACgCACIAQcwIIAAbEQAAAAvoCwQJfwx9AXsCfiMAQRBrIgMkAAJAIAAoAiAiBCABTQ0AIAAoAhwiByABQQN0aiIBKAIAIQIgAUEANgIAIAJFDQAgASgCBCEFIAAgACgCJEEBayIBNgIkIAFFBEAgAEEANgIUIABBADYCCAwBCyAFQQFzIQgCQAJAAkACQAJAAkACQAJAAkACQAJAAkAgBUECTwRAIAAoAhQiBiAFQQF2IgFNDQEgACgCCCIFIAFNDQIgACgCECIKIAFBAnRqKAIAIQIgAyAAKAIEIgkgAUEGdGoiADYCCCADIABBIGo2AgwgA0EIaiAIQQFxQQJ0aigCACIAKAIMIQEgACgCHEH/////A3FBAUcNBCABIARPDQMgByABQQN0aiIBKAIARQ0DIAEgAjYCBAwKCyAAKAIIIgZFDQQgAyAAKAIEIgE2AgggAyABQSBqIgI2AgwgA0EIaiAIQQJ0aiIJKAIAKAIcQf////8DcUEBRgRAIAVBAXFFBEAgASAC/QAEAP0LBAAgAUEQaiACQRBq/QAEAP0LBAAgASgCLCIAIARPDQcgByAAQQN0aiIAKAIAQQFHDQcgAEEANgIECyAC/QwAAAAAAAAAAAAAAAAAAAAA/QsEACACQRBq/QwAAAAAAAAAAAAAAAAAAAAA/QsEAAwNCyADIAI2AgwgAyABNgIIIAkoAgAoAgwiAiAGTw0GIAEgAkEGdGoiAkEwav0ABAAhFyABQRhqIAJBGGopAwA3AwAgAUEIaiACQQhqKQMANwMAIAEgAikDADcDACABQRBqIAJBEGopAwA3AwAgAUEgaiACQSBqKQMANwMAIAFBKGogAkEoaikDADcDACABQTBqIBf9CwQAIAEoAgwhAiABKAIcQf////8DcUEBRgRAIAIgBE8NCCAHIAJBA3RqIgIoAgBFDQggAkEANgIEDAwLIAAoAhQiBiACSw0KIAIgBkGw9MIAEIULAAsgASAGQeD0wgAQhQsACyABIAVB8PTCABCFCwALQZDkwgBBD0GA9cIAENELAAsgASAGSQ0EIAEgBkGQ9cIAEIULAAtBAEEAQfDzwgAQhQsAC0GQ5MIAQQ9BgPTCABDRCwALIAIgBkGQ9MIAEIULAAtBkOTCAEEPQaD0wgAQ0QsACyAKIAFBAnRqIAI2AgALAkACQCACQQF2IgEgBUkEQCADIAkgAUEGdGoiBDYCCCADIARBIGo2AgwgAEEQaikDACEYIANBCGogAkEBcUECdGooAgAiBCAAKQMANwMAIABBGGopAwAhGSAEQQhqIABBCGopAwA3AwAgBEEQaiAYNwMAIARBGGogGTcDACACQQJJDQUDQCABIAZPDQMgCiABQQJ0aigCACIEQQF2IgAgBU8NAiAJIAFBBnRqIgIoAjwhByACKAIcIQggAioCOCELIAIqAhghDCACKgI0IQ0gAioCFCEOIAIqAjAhDyACKgIQIRAgAioCKCERIAIqAgghEiACKgIkIRMgAioCBCEUIAIqAiAhFSACKgIAIRYgAyAJIABBBnRqIgI2AgggAyACQSBqNgIMIANBCGogBEEBcUECdGooAgAiAiAHQf////8DcSAIQf////8DcWogByAIckGAgICAfHFyNgIcIAIgDCALIAsgDF8bOAIYIAIgDiANIA0gDl8bOAIUIAIgECAPIA8gEF8bOAIQIAIgATYCDCACIBIgESARIBJgGzgCCCACIBQgEyATIBRgGzgCBCACIBYgFSAVIBZgGzgCACAAIQEgBEECTw0ACwwFCyABIAVBoPXCABCFCwALIAAgBUHA9cIAEIULAAsgASAGQbD1wgAQhQsACyAAKAIQIAJBAnRqQQA2AgALIAEoAiwhAiABKAI8Qf////8DcUEBRgRAAkAgAiAETw0AIAcgAkEDdGoiACgCAEUNACAAQQE2AgQMAgtBkOTCAEEPQcD0wgAQ0QsACyACIAAoAhQiAU8EQCACIAFB0PTCABCFCwALIAAoAhAgAkECdGpBATYCAAsgA0EQaiQAC/0KAhF9Bn8jAEEQayEVIAEqAgAhDwJAAkACfwJAAkACQAJAIAMqAgAiCUMAAAAAXARAQwAAgD8gCZUiBSAPIAIqAgAiC5OUIQYgBiAFIAEqAgwiECALk5QiBV4iFw0CIAZD//9//14NASAFIQQgBiEFDAMLIAIqAgAiCyAPXQRAIABBADYCAA8LIAsgASoCDCIQXgRAIABBADYCAA8LQ///f38hBUP//3//IQYMBQtBASEWIAUhBEEADAMLIAVD//9//14NASAGIQQLQ///f/8hBkEAIAVD//9//1wNARpBAQwBC0F/IRYgBiEEIAUhBkEACyEZQ///f38hBQJ/AkAgBEP//39/XUUEQEEAIRcgBEP//39/Ww0BQQAMAgtBAUF/IBcbIRcgBCEFQQAMAQtBAQshGiAFQwAAAABdDQEgBSAGXQ0BCwJAAkACQCADKgIEIg1DAAAAAFwEQAJAQwAAgD8gDZUiBCABKgIEIhEgAioCBCIKk5QiByAEIAEqAhAiEiAKk5QiCF4iGEUEQCAGIAddRQRAIAghBAwCC0ECIRZBACEZIAghBCAHIQYMBAsgBiAIXQ0CIAchBCAIIQcLIAYgB1wNAkEBIRkMAgsgASoCBCIRIAIqAgQiCl4NAyABKgIQIhIgCl0NAwwCC0F+IRZBACEZIAchBCAIIQYLAkAgBCAFXUUEQCAEIAVcDQFBASEaDAELQQJBfiAYGyEXQQAhGiAEIQULQQAhGCAFQwAAAABdDQEgBSAGXQ0BCwJAAkACQCADKgIIIg5DAAAAAFwEQAJAQwAAgD8gDpUiByABKgIIIhMgAioCCCIEk5QiCCAHIAEqAhQiFCAEk5QiDF4iAUUEQCAGIAhdRQRAIAwhBwwCC0EDIRZBACEZIAwhByAIIQYMBAsgBiAMXQ0CIAghByAMIQgLIAYgCFwNAkEBIRkMAgsgAioCCCIEIAEqAggiE10NAyABKgIUIhQgBF0NAwwCC0F9IRZBACEZIAghByAMIQYLAkAgBSAHXkUEQCAFIAdcDQFBASEaDAELQQNBfSABGyEXQQAhGiAHIQULIAVDAAAAAF0NASAFIAZdDQELAkACfSAZRQRAIBZFBEAgCyAPXQ0EIAsgEF4NBCAKIBFdDQQgCiASXg0EIAQgE10NBCAEIBReDQQgAP0MAAAAAAAAAAAAAAAAAAAAAP0LAgQgAEEkakIANwIAIABBFGr9DAAAAAAAAAAAAAAAAAAAAAD9CwIADAMLIBVCADcCBCAVQQA2AgwCQCAWQQBOBEAgFSAWQQJ0akGAgID8ezYCAAwBCyAVQQRqIBZBf3NBAnRqQYCAgPwDNgIACyAVKgIMIQcgFSoCCCEMIBUqAgQMAQsgDowgCSAJlCANIA2UkiAOIA6UkpEiCJUhByANjCAIlSEMIAmMIAiVCyEIAn0gGkUEQCAXRQRAIAsgD10NBCALIBBeDQQgCiARXQ0EIAogEl4NBCAEIBNdDQQgBCAUXg0EIAD9DAAAAAAAAAAAAAAAAAAAAAD9CwIEIABBJGpCADcCACAAQRRq/QwAAAAAAAAAAAAAAAAAAAAA/QsCAAwDCyAVQgA3AgQgFUEANgIMAkAgF0EATgRAIBUgF0ECdGpBgICA/AM2AgAMAQsgFUEEaiAXQX9zQQJ0akGAgID8ezYCAAsgFSoCDCEEIBUqAgQhCSAVKgIIDAELIA6MIAkgCZQgDSANlJIgDiAOlJKRIgqVIQQgCYwgCpUhCSANjCAKlQshCyAAIBc2AiggACAEOAIkIAAgCzgCICAAIAk4AhwgACAFOAIYIAAgFjYCFCAAIAc4AhAgACAMOAIMIAAgCDgCCCAAIAY4AgQLQQEhGAsgACAYNgIAC8wKAhh9An8jAEEwayIdJAACQAJAIAMqAgwiByAHlCADKgIQIgwgDJSSIAMqAhQiBiAGlJIiCUMAAAAAWw0AIAmRIhSLIglDAACAf1wEQCAJQwAAADRfDQEgCSAJQwAAADSUXw0BCyAMIBSVIhaMIQ8gAyoCCCERIAMqAgQhEiADKgIAIRMCQCAHIBSVIheMIgwgBiAUlSIYIBiUIBcgF5QgFiAWlJKSkSIHlSINIA2UIBiMIgkgB5UiCCAIlJIiBkMAAAAAWwRAIAEqAgQhGQwBCyAIIAaRIgaVIAEqAgQiGZQhCiANIAaVIBmUIQULIAJBADYCvAEgAkEANgKsASACQQA2AjAgAkIANwIoIAIgCiAIIAEqAggiFZSSIgg4AiQgAiABKgIAIhwgDyAHlSIGmCAGIBWUkiIHOAIgIAIgBSANIBWUkiIGOAIcIAIgCCARkzgCGCACIAcgEpM4AhQgAiAGIBOTOAIQIB0gAhBrQ///f38hBUHkACEBAkACQANAIB0qAgAiCiAKlCAdKgIEIg4gDpSSIB0qAggiCyALlJIiBkMAAMgrXkUNASALjCAGkSINlSEIIA6MIA2VIQcgCowgDZUhBgJ9IAUgDV8iHkUEQEMAAAAAIQVDAAAAACEKIAYgCCAIlCAGIAaUIAcgB5SSkpEiDpUiGyAblCAIIA6VIhAgEJSSIgtDAAAAAFwEQCAZIBAgC5EiBZWUIQogGSAbIAWVlCEFCyAVIBCUIAqSIRAgFSAblCAFkiEKIBwgByAOlSILmCAVIAuUkgwBCyAaQwAAAABeDQIgESALkiEQIBMgCpIhCiASIA6SCyEOAkACQAJAIBggCJQgFyAGlCAWIAeUkpIiC0MAAAAAWw0AIAuLIgVDAACAf1wEQCAFQwAAADRfDQEgBSAFQwAAADSUXw0BCyAGIAogE5OUIAcgDiASk5SSIAggECARk5SSIAuVIgVDAAAAAGBFDQAgC0MAAAAAXSAFQwAAAABecQ0BIB5FDQJBACEDDAULQQAhAyAeDQQgC0MAAKA1Xg0EDAELIAQgGiAFkiIaIBSVXQRAQQAhAwwECyARIBggBZQiD5IhESASIBYgBZQiDJIhEiATIBcgBZQiCZIhE0P//39/IQ0CQCACKAK8ASIDQQFqIh5FDQAgAiACKgIQIAmTOAIQIAIgAioCFCAMkzgCFCACIAIqAhggD5M4AhggA0UNACACIAIqAjQgCZM4AjQgAiACKgI4IAyTOAI4IAIgAioCPCAPkzgCPCAeQQJGDQAgAiACKgJYIAmTOAJYIAIgAioCXCAMkzgCXCACIAIqAmAgD5M4AmAgHkEDRg0AIAIgAioCfCAJkzgCfCACIAIqAoABIAyTOAKAASACIAIqAoQBIA+TOAKEASAIIQkgByEPIAYhDCAeQQRGDQFBBEEEQbiUwwAQhQsACyAIIQkgByEPIAYhDAsgCCAQIBGTIgiUIAcgDiASkyIHlCAGIAogE5MiBpSSkiIFvEH/////B3FB////+wdLBEBBlJLDAEEnQdCSwwAQ1gwAC0EAIQMgDSAFkiANQ70bjzqUXw0CIB1BADYCLCAdQgA3AiQgHSAQOAIgIB0gDjgCHCAdIAo4AhggHSAIOAIUIB0gBzgCECAdIAY4AgwgAiAdQQxqEOEDGiAdIAIQayACKAK8AUEDRwRAIA0hBSABQQFrIgENAQwDCwsgBUMAAKC1Xw0BCyAAIAk4AhAgACAPOAIMIAAgDDgCCCAAIBogFJU4AgRBASEDCyAAIAM2AgAMAQsgAEEANgIACyAdQTBqJAALzAoCBH4KfyAAQSBBMCAAQThqKAIAIABBKGooAgBJIAApAzAiAyAAKQMgIgRUIAMgBFEbIgobaiEHIAAgAEEYaigCACAAQQhqKAIASSAAKQMQIgMgACkDACIEVCADIARRGyIIQQFzQQR0aiEJIABBMEEgIAobaiIKKQMAIQMgACAIQQR0aiIIKQMAIQQgByAJIAogCkEIaigCACAIQQhqKAIASSADIARUIAMgBFEbIg0bIAdBCGooAgAgCUEIaigCAEkgBykDACIDIAkpAwAiBFQgAyAEURsiDhsiC0EIaigCACEPIAggCiAJIA4bIA0bIgxBCGooAgAhECALKQMAIQMgDCkDACEEIAIgCiAIIA0b/QADAP0LAwAgAiALIAwgDyAQSSADIARUIAMgBFEbIgob/QADAP0LAxAgAiAMIAsgChv9AAMA/QsDICACQTBqIgogCSAHIA4b/QADAP0LAwAgAEFAayIIQSBBMCAAQfgAaigCACAAQegAaigCAEkgACkDcCIDIAApA2AiBFQgAyAEURsiBxtqIQkgCCAAQdgAaigCACAAQcgAaigCAEkgACkDUCIDIAApA0AiBFQgAyAEURsiC0EBc0EEdGohACAIQTBBICAHG2oiBykDACEDIAggC0EEdGoiCCkDACEEIAkgACAHIAdBCGooAgAgCEEIaigCAEkgAyAEVCADIARRGyINGyAJQQhqKAIAIABBCGooAgBJIAkpAwAiAyAAKQMAIgRUIAMgBFEbIg4bIgtBCGooAgAhDyAIIAcgACAOGyANGyIMQQhqKAIAIRAgCykDACEDIAwpAwAhBCACQcgAaiAHIAggDRsiB0EIaikDACIGNwMAIAJBQGsiCCAHKQMAIgU3AwAgAkHQAGogCyAMIA8gEEkgAyAEVCADIARRGyIHG/0AAwD9CwMAIAJB4ABqIAwgCyAHG/0AAwD9CwMAIAJB8ABqIgcgACAJIA4b/QADAP0LAwAgASAIIAIgAkEIaigCACAGp0sgAikDACIDIAVWIAMgBVEbIgAb/QADAP0LAwAgASAKIAcgAkH4AGooAgAgAkE4aigCAEkgBykDACIDIAopAwAiBFQgAyAEURsiCxv9AAMA/QsDcCAIIABBBHRqIgkpAwAhAyACIABBAXNBBHRqIgIpAwAhBCABIAkgAiAJQQhqKAIAIAJBCGooAgBJIAMgBFQgAyAEURsiCBv9AAMA/QsDECAKIAtBBHQiCmshACAHIApqQRBrIgcpAwAhAyABIAAgByAHQQhqKAIAIABBCGooAgBJIAApAwAiBCADViADIARRGyILG/0AAwD9CwNgIAkgCEEEdGoiCSkDACEDIAIgCEEBc0EEdGoiAikDACEEIAEgCSACIAlBCGooAgAgAkEIaigCAEkgAyAEVCADIARRGyIKG/0AAwD9CwMgIAAgC0EEdCIIayEAIAcgCGpBEGsiBykDACEDIAEgACAHIAdBCGooAgAgAEEIaigCAEkgACkDACIEIANWIAMgBFEbIggb/QADAP0LA1AgCSAKQQR0aiIJKQMAIQMgAiAKQQFzQQR0aiICKQMAIQQgASAJIAIgCUEIaigCACACQQhqKAIASSADIARUIAMgBFEbIgob/QADAP0LAzAgACAIQQR0IghrIQAgByAIakEQayIHKQMAIQMgASAAIAcgB0EIaigCACAAQQhqKAIASSAAKQMAIgQgA1YgAyAEURsiARv9AAMA/QsDQCACIApBAXNBBHRqIAAgAUEEdCIAa0EQakYgCSAKQQR0aiAAIAdqRnFFBEAQlA0ACwv4CgIPfwR9IwBB4AFrIgUkACAFIAQ6ACMgBSACNgIoIAUgATYCJCAFIAVBI2o2AiwgASgCBCEKIAEoAgghECAFQQA2AjAgBUEANgK0AUEEIRMCQAJAIBBFDQACQCAKKAI8Qf////8DcQRAIAVBNGohCyAFQbQBaiESIAVB1AFqIQxBBCEOQX8hDwJAA0AgDCAKIAlBBnRqIgQpAhA3AgAgDEEIaiIIIARBGGooAgA2AgAgBUHIAWoiBkEIaiIHIARBCGooAgA2AgAgBSAEKQIANwPIASAFQRhqIAYgAiADQQEQwwQgBSoCHCEUIAUoAhghDSAIIARBOGooAgA2AgAgDCAEKQIwNwIAIAcgBEEoaigCADYCACAFIAQpAiA3A8gBIAVBEGogBiACIANBARDDBCAEQSBqIQYCQCAFKgIUQ///f38gBSgCEEEBcRsiFSAUQ///f38gDUEBcRsiF11FBEAgFSEUIBchFSAGIQcgBCEGDAELIBchFCAEIQcLAkACQAJ/AkACQCADIBVeRQRAIAMgFF5FDQQgFEP//39/Ww0EIAcoAhxB/////wNxQQFHDQEMAgsCQCAVQ///f39bBEAMAQsgBigCHEH/////A3FBAUcEQCAGKAIMIQkgAyAUXkUNBiAUQ///f39bDQZBASAHKAIcQf////8DcUEBRg0EGgJ/IAUoArQBIghBIUkEQCAIIQQgCyENQSAhCCASDAELIAUoAjQhBCAFKAI4IQ0gCwshBiAHKAIMIQcgBCAIRgR/IAVBMGoQowQgBSgCOCENIAshBiAFKAI0BSAEC0ECdCANaiAHNgIAIAYgBigCAEEBajYCAAwGCyAFQcgBaiAFQSRqIAYoAgwgAxCFBAJAIAUoAsgBIgRBBEYNACAFKgLQASIVIANdRQ0AIAVBwAFqIAgoAgA2AgAgBSAMKQIANwO4ASAGKAIMIQ8gBSgCzAEhESAVIhYhAyAEIQ4LCyADIBReRQ0DIBRD//9/f1sNAyAHKAIcQf////8DcUEBRg0BCyAHKAIMIQkMAwtBAAshBCAFQcgBaiAFQSRqIAcoAgwgAxCFBAJAIAUoAsgBIgZBBEYNACAFKgLQASIUIANdRQ0AIAVBwAFqIAgoAgA2AgAgBSAMKQIANwO4ASAHKAIMIQ8gBSgCzAEhESAUIhYhAyAGIQ4LIAQNAQsgCyEJIBIhBiAFKAK0ASIIIgRBIU8EQCAFKAI4IQkgCyEGIAUoAjQhBAsgBEUNAiAGIARBAWsiBDYCACAJIARBAnRqKAIAIQkLIAkgEEkNAAsgCSAQQbDywgAQhQsAC0EEIQQgDkEERg0BIAVB0AFqIAVBwAFqKAIANgIAIAUgBSkDuAE3A8gBIA4hBAwBCyAFQdwBaiAKQRhqKAIANgIAIAVByAFqIgRBCGogCkEIaigCADYCACAFIAopAhA3AtQBIAUgCikCADcDyAEgBUEIaiAEIAIgA0EBEMMEIAUqAgxD//9/fyAFKAIIQQFxGyADXUUNASAEIAVBJGogCigCDCADEIUEQQQhBAJAIAUoAsgBIgJBBEYEQAwBCyAFKALMASERIAUqAtABIRYgBUHAAWoiBiAFQdwBaigCADYCACAFIAUpAtQBNwO4ASADIBZeRQ0AIAVB0AFqIAYoAgA2AgAgBSAFKQO4ATcDyAEgCigCDCEPIAIhBAsgBSgCtAEhCAsgCEEhSQ0BIAUoAjggCEECdEEEEOgODAELQQQhBAsgACAEQQRHBH8gACAFKQPIATcCDCAAIBY4AgggAEEUaiAFQdABaigCADYCACAAIAEoAjxBACARQQFGG0EAIARBAkYbIA9qNgIEQQIFQQQLNgIAIAVB4AFqJAALng0DCX8HewV9IwBBwAFrIgUkACAFIAQ6ACsgBSACNgIwIAIqAgwhFSAFIAVBK2o2AjQgBSABNgIsIBWLQwAAADRdBH1DAACAPyAVmEMAAABLlAVDAACAPyAVlQshFQJ9IAIqAhAiFotDAAAANF1FBEBDAACAPyAWlQwBC0MAAIA/IBaYQwAAAEuUCyEWIAEoAgghCgJ9IAIqAhQiF4tDAAAANF1FBEBDAACAPyAXlQwBC0MAAIA/IBeYQwAAAEuUCyEXIAEoAgQhCSAC/QACACEOQQAhAiAFQQA2AjggBUEANgK8AQJAIApFDQAgDiAO/Q0AAQIDBAUGBwgJCgsICQoLIQ4gF/0TIBX9IAAgFv0gASEQAkACQCAJKAI8Qf////8DcQRAIAVBPGohByAFQbwBaiEMIAMhFQNAIAkgAkEGdGoiAkEgaiEBIBAgAv0ABAAgDv3lAf3mASIPIBAgAkEQav0ABAAgDv3lAf3mASIT/eoBIhEgESAO/Q0ICQoLCAkKCwABAgMAAQID/esBIhEgESAO/Q0EBQYHAAECAwABAgMAAQID/esBIBAgAv0ABCAgDv3lAf3mASIRIBAgAkEwav0ABAAgDv3lAf3mASIU/eoBIhIgEiAO/Q0ICQoLCAkKCwABAgMAAQID/esBIhIgEiAO/Q0EBQYHAAECAwABAgMAAQID/esB/Q0AAQIDEBESEwABAgMAAQIDIhL9DP//f3///39///9/f///f38gDyAT/esBIg8gDyAO/Q0ICQoLCAkKCwQFBgcEBQYH/eoBIg8gDyAO/Q0EBQYHAAECAwABAgMAAQID/eoBIBEgFP3rASIPIA8gDv0NCAkKCwgJCgsEBQYHBAUGB/3qASIPIA8gDv0NBAUGBwABAgMAAQIDAAECA/3qAf0NAAECAxAREhMAAQIDAAECAyIPIBL9RiAP/QwAAAAAAAAAAAAAAAAAAAAA/Ub9Tv1SIg/9HwAhGQJAIBkgD/0fASIXXkUEQCAXIRYgGSEXIAEhBCACIQEMAQsgGSEWIAIhBAsCQAJAAkACQAJAIBUgF15FBEAgFSAWXkUNBCAWQ///f39bDQQgBCgCHEH/////A3FBAUcNAQwDCwJAIBdD//9/f1sEQAwBCyABKAIMIQIgASgCHEH/////A3FBAUcEQCAVIBZeRQ0GIBZD//9/f1sNBiAEKAIMIQ0gBCgCHEH/////A3FBAUYNAwJ/IAUoArwBIghBIUkEQCAIIQQgByELQSAhCCAMDAELIAUoAjwhBCAFKAJAIQsgBwshASAEIAhGBEAgBUE4ahCjBCAFKAI8IQQgBSgCQCELIAchAQsgCyAEQQJ0aiANNgIAIAEgASgCAEEBajYCAAwGCyAFQRhqIAVBLGogAiAVEMQFAkAgBSgCGEEBcUUNACAFKgIcIhcgFV1FDQBBASEGIBciFSEYCwsgFSAWXkUNAyAWQ///f39bDQMgBCgCHEH/////A3FBAUYNAgsgBCgCDCECDAMLIAVBIGogBUEsaiANIBUQxAUgBSgCIEEBcUUNAiAFKgIkIhYgFV0hASAWIBggARshGCAWIBUgARshFSABIAZyIQYMAgsgBUEQaiAFQSxqIAQoAgwgFRDEBSAFKAIQQQFxRQ0AIAUqAhQiFiAVXSEBIBYgGCABGyEYIBYgFSABGyEVIAEgBnIhBgsCQAJAIAUoArwBIgJBIU8EQCAFKAJAIQEgBSgCPCIIRQ0BIAchBCAIIQIMAgsgDCEEIAchASACDQEgBkEBcQ0FDAYLIAEgAkECdEEEEOgOIAZBAXFFDQUMBAsgBCACQQFrIgI2AgAgASACQQJ0aigCACECCyACIApJDQALIAIgCkGw8sIAEIULAAsgECAJ/QAEACIPIA795QH95gEiEyAQIAlBEGr9AAQAIA795QH95gEiDv3qASIQIBAgDv0NCAkKCwgJCgsAAQIDAAECA/3rASIQIBAgDv0NBAUGBwABAgMAAQIDAAECA/3rAf0fACIVQ///f38gEyAO/esBIg4gDiAO/Q0ICQoLCAkKCwQFBgcEBQYH/eoBIg4gDiAO/Q0EBQYHAAECAwABAgMAAQID/eoB/R8AIhZDAAAAAGAbQ///f38gFSAWXxsgA11FDQIgBUEIaiAFQSxqIA/9GwMgAxDEBSAFKAIIQQFxRQ0CIAUqAgwiGCADXQ0ADAILIAMgGF5FDQBBASECDAELQQAhAgsgACAYOAIEIAAgAjYCACAFQcABaiQAC4QLAwN/HH0FeyMAQUBqIgQkAAJAAn0CQCABKAIQQQFxBEAgASgCFCIFIAMoAowDTw0BIAMoAogDIAVBgANsaiIDKAIAQQFHDQEgAygCBCABKAIYRw0BIAMqAjgiDUMAAAAAXkUNASABKgI0IQsgASoCMCEOIAEqAiwhDyABKgIoIRAgASoCJCERIAEqAiAhEiABKgIcIRMgAyoCiAEhFCADKgKUAiEVIAMqArgBIRYgAyoCgAEhFyADKgKMAiEYIAMqArABIRkgAyoChAEhGiADKgKQAiEbIAMqArQBIRwgAyoCjAEhHSADKgLoASEeIAMqApABIR8gAyoC7AEhByADKgL0ASEgIAQgAioCACIIIAMqAvABIiEgAyoCvAEiCZQgAyoC+AEiIiADKgLAASIKlJIgAyoC/AEgAyoCxAEiDJSSlCADKgKUAZI4AjwgBCAfIAggByAJlCAgIAqUkiAiIAyUkpSSOAI4IAQgHSAIIB4gCZQgByAKlJIgISAMlJKUkjgCNCAEIBogCCAcIBuUlJIiBzgCLCAEIBcgCCAZIBiUlJIiCTgCKCAEIBQgCCAWIBWUlJIiCjgCMCAEQQxqIARBKGogCCAJIAmUIAcgB5SSIAogCpSSkSIHIAdDAAAAAEMAAIA/IAiVIAiLQwjlPB5fGyANlCIIIAcgCF0bIAggCFwblEMAAAAAQwAAgD8gB5UgB4tDCOU8Hl8blCADQUBrIANBqAJqEJkCIAQqAiQgCyAEKgIYIgogDiAEKgIMIgiUIA8gBCoCECIHlJMiCSAJkiIMlCAIIA8gBCoCFCIJlCALIAiUkyINIA2SIg2UIAcgCyAHlCAOIAmUkyILIAuSIguUk5KSkiEUIAQqAiAgDiAKIA2UIAkgC5QgCCAMlJOSkpIhDiAEKgIcIA8gCiALlCAHIAyUIAkgDZSTkpKSIQsgECAJlCASIAiUIBEgCpSSIBMgB5STkiEPIBMgCZQgECAHlCASIAqUIBEgCJSTkpIhDCARIAeUIBAgCJQgEyAKlJKSIBIgCZSTIRUgECAKlCATIAiUkyASIAeUkyARIAmUkyEKQQEhBgwBCyACKgIcIQggAioCKCEHIARBKGogASgCQCABKAJEIgIoAghBAWtBeHFqQQhqIAFB9ABqIAIoApQBEQEAIAcgCJRDAAAAP5QgASoCkAGSIgdDAAAAAGAEQCAE/QACMCIjIAf9EyIk/eUBICMgJP3kAf0NAAECAxQVFhcYGRobHB0eHyEjIAQqAiwgB5MhCCAEKgIoIAeTDAILDAILIAIqAhwhCCACKgIoIQcgBEEoaiICIAEoAkAgASgCRCIDKAIIQQFrQXhxakEIaiIFIAFB9ABqIAMoApQBIgMRAQAgByAIlEMAAAA/lCABKgKQAZIiB0MAAAAAYEUNASAE/QACMCIjIAf9EyIk/eUBIiUgIyAk/eQBIib9DQABAgMUFRYXGBkaGxwdHh8hIyAEKgIsIAeTIQggBCoCKCAHkyIJIAZFDQAaIAQgFDgCJCAEIA44AiAgBCALOAIcIAQgCjgCGCAEIA84AhQgBCAMOAIQIAQgFTgCDCACIAUgBEEMaiADEQEAICMgBP0AAjAiIyAk/eUBIicgIyAk/eQBIiP9DQABAgMUFRYXGBkaGxwdHh8gJSAj/Q0AAQIDFBUWFxgZGhscHR4fICcgJv0NAAECAxQVFhcYGRobHB0eH/1F/VIhIyAIIAQqAiwgB5MiCiAIIApfGyEIIAkgBCoCKCAHkyIHIAcgCWAbCyEJIAAgI/0LAgggACAIOAIEIAAgCTgCACAEQUBrJAAPCyAEQQA2AhwgBEEBNgIQIARBpNnBADYCDCAEQgQ3AhQgBEEMakGs2cEAELkNAAvTDAIHfwN9IwBB4AFrIgskACALQTBqIAMgBCgCtAERAAAgCygCNCENIAsoAjAhDCALQShqIAYgBygCtAERAAACQAJAAkACQAJAIAwEQCALKAIoIhANAQsgC0EgaiADIAQoArgBEQAAIAsoAiAiDEUNASALQaABaiAMIAsoAiQgASACIAUgBiAHIAggCSAKEHcgCy0A2AEiAUEERwRAIAtB6ABqIAtB1AFqKAIANgIAIAtB2ABqIAtBxAFq/QACAP0LAwAgC0HIAGogC0G0AWr9AAIA/QsDACALQZIBaiALQdsBai0AADoAACALIAv9AAKkAf0LAzggCyALLwDZATsBkAELIAAgC/0AAzj9CwIAIAAgAToANCAAIAsvAZABOwA1IABBMGogC0E4aiIBQTBqKAIANgIAIABBIGogAUEgav0AAwD9CwIAIABBEGogAUEQav0AAwD9CwIAIABBN2ogC0GSAWotAAA6AAAMBAsgCygCLCEOIAoEf0EABSAHKAKsASEKIAQoAqwBIQ8gBygCqAEhESADIAQoAqgBEQsAIAYgERELAJIhFCADIA8RCwAhEiAGIAoRCwAiEyATIBIgEiATXRsgEiASXBshEkEBCyEKIAsgEjgCeCALIBQ4AnQgCyAKNgJwIA5BGGooAgAhCiAOQRBqKAIAIQ4gDUEYaigCACEPIA1BEGooAgAhDSALQYABaiADIAQoAoQBEQAAIAtBkAFqIAYgBygChAERAAAgCyoCjAEgCyoCnAFgDQEgC0GgAWoiCiABIAUgECAOIAYgByACIAwgDyADIAQgCCAJIAtB8ABqEEUgCy0A1AEiAkEERwRAIAtBOGoiAUEYaiAKQQxqKAIANgIAIAFBDGogCkEYaigCADYCACABQTBqIApBJGooAgA2AgAgAUEkaiAKQTBqKAIANgIAIAsgCykCpAE3AkggCyALKQKwATcCPCALIAspArwBNwJgIAsgCykCyAE3AlQgCyALKgKgATgCOAsgCyACOgBsDAILIAtBGGogBiAHKAK4AREAACALKAIYIgwEQCALQaABaiAMIAsoAhwgASAFIAIgAyAEIAggCSAKEHcgCy0A2AEiAUEERwRAIAtBmAFqIAtBsAFqKAIANgIAIAtBQGsgC0G8AWooAgA2AgAgC0H4AGogC0HIAWooAgA2AgAgC0GIAWogC0HUAWooAgA2AgAgCyALKQKoATcDkAEgCyALKQK0ATcDOCALIAspAsABNwNwIAsgCykCzAE3A4ABIAsqAqQBIQkLIAAgCTgCACAAIAspAzg3AgQgACALKQOQATcCECAAIAspA4ABNwIcIAAgCykDcDcCKCAAIAE6ADQgAEEMaiALQUBrKAIANgIAIABBGGogC0GYAWooAgA2AgAgAEEkaiALQYgBaigCADYCACAAQTBqIAtB+ABqKAIANgIAIABBN2ogC0GiAWotAAA6AAAgACALLwCgATsANQwDCyALQRBqIAMgBCgCYBEAACALQaABaiALKAIQIgwgCygCFCgCDBEAAAJAIAxFDQAgCykDoAFC5p216IDjz4cxhSALKQOoAULw4py6utTs2yaFhEIAUg0AIAAgASACIAwgBSAGIAcgCCAJIAoQcgwDCyALQQhqIAYgBygCYBEAACALQaABaiALKAIIIgwgCygCDCgCDBEAAAJAIAxFDQAgCykDoAFC5p216IDjz4cxhSALKQOoAULw4py6utTs2yaFhEIAUg0AIwBBQGoiBiQAIAZBCGoiByABIAUgDCACIAMgBCAIIAkgChByIAYtADwiAUEERwRAIAAgBikCDDcCECAAIAYpAhg3AgQgACAGKQIkNwIoIAAgBikCMDcCHCAAIAYqAgg4AgAgAEEYaiAHQQxqKAIANgIAIABBDGogB0EYaigCADYCACAAQTBqIAdBJGooAgA2AgAgAEEkaiAHQTBqKAIANgIACyAAIAE6ADQgBkFAayQADAMLIABBBToANAwCCyALQThqIAEgAiAMIA0gAyAEIAUgECAKIAYgByAIIAkgC0HwAGoQRQsgAEEwaiALQThqIgFBMGopAgA3AgAgAEEgaiABQSBq/QACAP0LAgAgAEEQaiABQRBq/QACAP0LAgAgACAL/QACOP0LAgALIAtB4AFqJAALowwBG38jAEGQAWsiDyQAAkACQAJAIABFDQAgAEEIayITKAIAQQFqIRAgEyAQNgIAIBBFDQEgACgCAA0CIABBfzYCACAPIBM2AgggDyAANgIEIA8gAEEIaiIfNgIAIAFFDQAgAUEIayIUKAIAQQFqIRAgFCAQNgIAIBBFDQEgASgC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AhAgCioCBCEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCCCEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCDCEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCECEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCFCEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCGCEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCHCEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCICEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCJCEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCKCEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCjUCLCErIBAoAgggC2tBB00EQCAQQQhqIAtBCEEBQQEQ1gYgECgCECELCyAQKAIMIAtqICs3AAAgECALQQhqIgs2AhAgCjUCMCErIBAoAgggC2tBB00EQCAQQQhqIAtBCEEBQQEQ1gYgECgCECELCyAQKAIMIAtqICs3AAAgECALQQhqIgs2AhAgCjUCNCErIBAoAgggC2tBB00EQCAQQQhqIAtBCEEBQQEQ1gYgECgCECELCyAQKAIMIAtqICs3AAAgECALQQhqIgs2AhAg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NwLoASADQgQ3AvABIANCgICAgMAANwL4ASADQgA3AoACIANCBDcCiAIgAyAD/QACuAX9CwKoASADQagDakIANwMAIANBhAVqQQA2AgAgA0EBOgCcAiAD/QwAAAAAAAAAAAAAAAAAAAAA/QsDmAMgA/0MAAAAAAAAAAAAAAAAAAAAAP0LBMADIANCADcC/AQgA/0MAAAAAAAAAAAAAAAAAACAP/0LBKACIAP9DP//f////39/AAAAAP//f//9CwTAAiAD/Qz//39/AAAAAP//f////39//QsE0AIgA/0MAAAAAP//f////39/AAAAAP0LBOACIAP9DP//f////39/AAAAAP//f//9CwTwAiAD/QwAAAAAAAAAAAAAAAAAAAAA/QsChAMgA0H////7BzYCgAMgA/0MAAAAAAAAAAAAAAAAAAAAAP0LBLACIAP9DAAAAAAAAAAAAAAAAAAAAAD9CwC7BSAD/QwAAAAAAAAAAAAAAAAAAAAA/QsAkwUgA/0MAAAAAAAAAAAAAAAAAAAAAP0LAOcFIAP9DAAAAAAAAAAAAAAAAAAAAAD9CwCQBiAD/QwAAAAAAAAAAAAAAAAAAAAA/QsA/QUgA0EAOgDYAyADQv////sHNwPQAyAD/QwAAIA/AAAAAAAAAAAAAAAA/QsEsAMgA0GAgID8AzYClAMgA0GgAmoiCEHIAWogBkEPaigAADYAACADIAP9AAC4Bf0LANkDIANBADoA9AMgA0L////7BzcC7AMgA0GEBGogBEEPaigAADYAACADIAP9AACQBf0LAPUDIANBADoAkAQgA0L////7BzcDiAQgCEGAAmogBUEPaigAADYAACADIAP9AADkBf0LAJEEIANBADoArAQgA0L////7BzcCpAQgA0G8BGogA0GcBmooAAA2AAAgAyAD/QAAjQb9CwCtBCADQQA6AMgEIANC////+wc3A8AEIANB2ARqIANBiQZqKAAANgAAIAMgA/0AAPoF/QsAyQQgA0EAOgCIBSADQQA2AvgEIANCADcD8AQgA0GAAjsB7AQgA0EANgLoBCADQQA6AOQEIANC////+wc3AtwEIAMoAgghBiADQQxqIAMoAhgiCEEGaiIFEMcCIANBHGogBRDHAiADQSxqIAUQxwIgAygCRCIEIAMoAjxGBEAgA0E8aiAEQQFBBEEQENcGIAMoAkQh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IAFBDEEAIAUbciEOIApBDGogCiADKgIAIhdDAAAAAF4iBhsqAgAhGSAIQfwBaiEKIAhBpAJqIQsgCUEMaiEBA0AgCCAaIBv9+gH95gH9CwTAAUP//39/IRAgBiAXQwAAAABdcgRAQ///f38gCCoCyAEgFCAHspQgBhsgGZMgF5UiECAQQwAAAABdGyEQC0P//39/IRJD//9/fyERIAUgFkMAAAAAXXIEQEP//39/IA4qAgAgDSoCAJMgFpUiESARQwAAAABdGyERCyAEIBVDAAAAAF1yBEBD//9/fyAYIAKylCAIKgLEASAEGyAMKgIAkyAVlSISIBJDAAAAAF0bIRILIAggBDoA7AEgCCAFOgDkASAIIAY6ANwBAkACQAJAIBAgE15FDQAgESATXkUNACASIBNeDQELQQIgECARXiICIBIgESAQIAIbXRsiD0ECdCICIAFqIQMgCEGIAWogAmoiCSgCACEHIAhB2AFqIA9BA3RqLQAERQRAIAkgB0EBayIJNgIAIAMgAygCAEEBayIDNgIAIAkgCEGgAWogAmooAgAiCUgEQCADIAlKDQMMAgsgCEGIAmoiA0EIaiIJIAFBCGooAgA2AgAgCCABKQIANwOIAiACIANqIAc2AgAgCEGYAmoiAkEIaiAIQZABaigCADYCACALIAgpA4gCNwIAIAtBCGogCSgCADYCACAIIAgpAogBNwOYAiAIQeQAaiACEI4DDAILIAkgB0EBaiIHNgIAIAMgAygCACIDQQFqIgk2AgAgCSAIQbABaiACaigCACIJTARAIAhBiAJqIgdBCGoiCSAIQZABaigCADYCACAIIAgpAogBNwOIAiACIAdqIAM2AgAgCiABKQIANwIAIApBCGogAUEIaigCADYCACAIQfABaiICQQhqIAkoAgA2AgAgCCAIKQOIAjcD8AEgCEHkAGogAhCOAwwCCyAHIAlIDQELIAAgCP0AAhD9CwIAIABBMGogCEEQaiIBQTBqKQIANwIAIABBIGogAUEgav0AAgD9CwIAIABBEGogAUEQav0AAgD9CwIAIAhBsAJqJAAPCyAIKAKcASECIAj9AAKMASEbIAgoAogBIQcMAAsAC70JAg5/An0jAEGgAmsiAiQAAkACQAJAIAAoAkBBgICAgHhHBEAgAkEMaiAAIAFBAUP//39/EHQgAigCIEEERg0B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aikCADcCACABQQhqIANBCGr9AAIA/QsCAAsgJUEwaiQADwtBAAshJyAoQQhqIiggFmogF3EhFgwACwAL+wgDCn8BewF+IwAiAiEJIAJBQGpBQHEiBSQAAkAgACgCCCIDRQRAIABBADYCFEEAIQMMAQsgACgCBCIGKAIcIQcCQAJAAkACQAJAIAYoAjxB/////wNxIAdB/////wNxakECTQRAIABBADYCFCABQQA2AgggBSAGQTBq/QAEAP0LBDAgBSAGQSBq/QAEAP0LBCAgBSAGQRBq/QAEAP0LBBAgBSAG/QAEAP0LBAAgASgCAEUEQCABQeDwwgAQwwgLIABBDGohBCABKAIEIgIgBf0ABAD9CwQAIAJBEGogBf0ABBD9CwQAIAJBIGogBf0ABCD9CwQAIAJBMGogBf0ABDD9CwQAIAIgAigCHCIIQf////8HQf////8DIAhB/////3tLG3E2AhwgAigCPCIFQf////8DcSIIDQEMBQsgAyABKAIIIgRLBEAgASgCACAEIgJrIAMgAmsiCEkEQCABIAIgCEHAAEHAABDYBiABKAIIIQILIAEoAgQiCiACQQZ0aiEHIAhBAkkEfyACBSADIARBf3NqQQZ0IgsEQCAHQQAgC/wLAAsgCiACIANqIARrQQZ0akFAaiEHIAIgCGpBAWsLIQggB/0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgB0Ewav0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgB0Egav0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgB0EQav0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgBigCHCEHIAhBAWohAwsgAEEYaiEEIAEgAzYCCCAFQQE2AgAgBigCLCEDAkAgB0H/////A3FBAUYEQCABKAIEIgJBEGogBkEQav0ABAD9CwQAIAIgBikDADcDACACQQhqIAZBCGopAwA3AwAgAkH/////B0H/////AyACKAIcIgJB/////3tLGyACcTYCHAwBCyAAIAEgBCAAKAIQIAAoAhQgBigCDCAFQQAQggIgACgCCEUNAgsCQCAAKAIEIgIoAjxB/////wNxQQFHBEAgACABIAQgACgCECAAKAIUIAMgBUEBEIICDAELIAEoAghFDQMgAkEwav0ABAAhDCABKAIEIgMgAikDIDcDICADQShqIAJBKGopAwA3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IRMgBiASOAJkIAZC////+wc3A1AgBv0M//9/////f38AAAAA//9///0LBEAgBv0MAAAAAP//f////39/AAAAAP0LBDAgBv0M//9/fwAAAAD//3////9/f/0LBCAgBv0M//9/////f38AAAAA//9///0LBBAgBv0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgBiAIKQMINwNoIAZB8ABqIAhBEGopAwA3AwAgBkH4AGogCEEYaikDADcDACAGQQA6AKgBIAZC////+wc3A6ABIAZBADYCjAEgBkIANwKEASAGIBM4AoABIAZC////+wc3ArwBIAZBADoAxAEgBkL////7BzcD2AEgBkEAOgDgASAGQv////sHNwL0ASAGQQA6APwBIAZBuAFqIAhB/ABqKAAANgAAIAYgCP0AAG39CwCpASAGQdQBaiAIQekAaigAADYAACAGIAj9AABa/QsAxQEgBkHwAWogCEHWAGooAAA2AAAgBiAI/QAAR/0LAOEBIAZBADoAmAIgBkL////7BzcDkAIgBkEAOgC0AiAGQT42ArgCIAZBgAI7AbwCIAZC////+wc3AqwCIAZBjAJqIAhBwwBqKAAANgAAIAYgCP0AADT9CwD9ASAGIAj9AAAh/QsAmQIgBkGoAmogCEEwaigAADYAACAIQZABaiQAIAdB8ANqIAtBCGooAgA2AgAgB0GMBGogDUEIaigCADYCACAHIAspAgA3A+gDIAcgDSkCADcChAQgAwRAIAdB0AVqIgMgBkHAAvwKAAAgByAFOALMBSAHIAQ4AsgFIAMgB0HIBWopAgA3AxAgAyADLQC5AkEBcjoAuQIgBiADQcAC/AoAAAsgB0EwaiAHQYADakG9AvwKAAAgCSgCACEGIAcvAb4FIQsgBy0AvQUhAyACIAIoAgBBAWs2AgAgCSAGQQFrIgI2AgAgAg0AIAdBLGoQqQ0LIAEgASgCAEEBazYCACAMIAwoAgBBAWsiATYCACABRQRAIAdBIGoQqQ0LIAAgACgCAEEBazYCACAKIAooAgBBAWsiADYCACAARQRAIAdBFGoQqQ0LQQAhAiADQQJHBEAgB0HcBWogB0EwakG9AvwKAABB4AJBEBCRDiIARQ0EIABBADYCECAAQoGAgIAQNwMAIABBFGogB0HQBWpByQL8CgAAIAAgCzsB3gIgACADOgDdAiAA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AAAAAAAA/QsAXSAE/QwAAAAAAAAAAAAAAAAAAAAA/QsASiAE/QwAAAAAAAAAAAAAAAAAAAAA/QsANyAE/QwAAAAAAAAAAAAAAAAAAAAA/QsAJCAEQYABaiILIAVB9AJqIgwQrgQgA0HgAGogC0EIaiINKAIANgIAIAMgBCkCgAE3AlggBCoCjAEhDyALIAwQrgQgBEEcaiANKAIANgIAIAQgBCkCgAE3AhQgBCoCjAEhECADIA84AmQgA0L////7BzcDUCAD/Qz//3////9/fwAAAAD//3///QsEQCAD/QwAAAAA//9/////f38AAAAA/QsEMCAD/Qz//39/AAAAAP//f////39//QsEICAD/Qz//3////9/fwAAAAD//3///QsEECAD/QwAAAAAAAAAAAAAAAAAAAAA/QsEACADIAQpAwg3A2ggA0HwAGogBEEQaikDADcDACADQfgAaiAEQRhqKQMANwMAIANBADoAqAEgA0L////7BzcDoAEgA0EANgKMASADQgA3AoQBIAMgEDgCgAEgA0L////7BzcCvAEgA0EAOgDEASADQv////sHNwPYASADQQA6AOABIANC////+wc3AvQBIANBADoA/AEgA0G4AWogBEH8AGooAAA2AAAgAyAE/QAAbf0LAKkBIANB1AFqIARB6QBqKAAANgAAIAMgBP0AAFr9CwDFASADQfABaiAEQdYAaigAADYAACADIAT9AABH/QsA4QEgA0EAOgCYAiADQv////sHNwOQAiADQQA6ALQCIANBNzYCuAIgA0GAAjsBvAIgA0L////7BzcCrAIgA0GMAmogBEHDAGooAAA2AAAgAyAE/QAANP0LAP0BIAMgBP0AACH9CwCZAiADQagCaiAEQTBqKAAANgAAIARBkAFqJAAgBUHwA2ogCEEIaigCADYCACAFQYwEaiAKQQhqKAIANgIAIAUgCCkCADcD6AMgBSAKKQIANwKEBCAFQTBqIANBvQL8CgAAIAYoAgAhBCAFLwG+BSEIIAUtAL0FIQMgAiACKAIAQQFrNgIAIAYgBEEBayICNgIAIAINACAFQSxqEKkNCyABIAEoAgBBAWs2AgAgCSAJKAIAQQFrIgE2AgAgAUUEQCAFQSBqEKkNCyAAIAAoAgBBAWs2AgAgByAHKAIAQQFrIgA2AgAgAEUEQCAFQRRqEKkNC0EA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kAlqIQIgDv0MBAAAAAQAAAAEAAAABAAAAP2uASEOIANBBGsiAw0ACyABIARGDQELIAkgBkGkAmxqIQIgCCAKayIJQQFrIQRBACEDA0AgAkGAgICAeDYCACACQQRqIAxBASADIARGIgEbNgIAIAJBCGogCyAKIANBAWoiA2ogARs2AgAgAkGkAmohAiADIAlHDQALIAMgBmohBgsgACAHNgIEIABBATYCACAAIAY2AhAgBUEgaiQAC6MFAQp/AkACQCAAKAIIIgQgAU8EQCAAIAE2AgggASAERwRAIAQgAWshBCAAKAIEIAFBBHRqIQMDQCADKAIAIgAEQCADQQRqKAIAIABBAnRBBBDoDgsgA0EQaiEDIARBAWsiBA0ACwsgAigCACIARQ0BIAIoAgQgAEECdEEEEOgODwsgAigCDCEGIAIoAgghCCACKAIEIQogAigCACELIAQhBSABIARrIgkgACgCACAEa0sEQCAAIAQgCUEEQRAQ1wYgACgCCCEFCyAAKAIEIAVBBHRqIQMCQCAJQQJJDQAgCEECdCEHIAhB/////wNLDQIgB0H8////B0sNAiAHBEAgBEF/cyABaiECIAUgCWpBAWshBUEEIQwDQCAHQQQQkQ4iAUUNBCAHBEAgASAKIAf8CgAACyADQQxqIAY2AgAgA0EIaiAINgIAIANBBGogATYCACADIAg2AgAgA0EQaiEDIAJBAWsiAg0ACwwBCyABIARBf3NqIgFBA3EhAiAJQQJrQQNPBEAgAUF8cSEBA0AgA0KAgICAwAA3AgAgA0E8aiAGNgIAIANBOGpBADYCACADQTBqQoCAgIDAADcCACADQSxqIAY2AgAgA0EoakEANgIAIANBIGpCgICAgMAANwIAIANBHGogBjYCACADQRhqQQA2AgAgA0EQakKAgICAwAA3AgAgA0EMaiAGNgIAIANBCGpBADYCACADQUBrIQMgAUEEayIBDQALCyACBEADQCADQoCAgIDAADcCACADQQxqIAY2AgAgA0EIakEANgIAIANBEGohAyACQQFrIgINAAsLIAUgCWpBAWshBQsgAyAGNgIMIAMgCDYCCCADIAo2AgQgAyALNgIAIAAgBUEBajYCCAsPCyAMIAdBgPzBABDXDQALvQUBC38jAEEgayICJAACQCABKAIEIgNFBEAgAEGAgICAeDYCAAwB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A0AgAyAGTw0CIAcgA0GAA2xqIgwoAvACIgMgAkcNAAsgDEHwAmogCTYCAAwBCyAMQQhqIAk2AgALIAggC08NACAOQiCIpyEJIAIgBCAIQQR0aiIIKAIMIgNHBEADQCADIAZPDQIgByADQYADbGoiCCgC9AIiAyACRw0ACyAIQfQCaiAJNgIADAELIAhBDGogCTYCAAsgCiAFQYAD/AoAACAFIAcgBkEBayIDQYADbGpBgAP8CgAAIAEgAzYCFAJAIAIgA08NACAHIAJBgANsaikD+AIiDaciASALTw0AIA1CIIinIQYCQCAEIAFBBHRqIgUoAggiASADRwRAA0AgASADTw0CIAMgByABQYADbGoiBSgC8AIiAUcNAAsgBUHwAmogAjYCAAwBCyAFQQhqIAI2AgALIAYgC08NACAEIAZBBHRqIgQoAgwiASADRwRAA0AgASADTw0CIAMgByABQYADbGoiBCgC9AIiAUcNAAsgBEH0AmogAjYCAAwBCyAEQQxqIAI2AgALIAAgCkHwAvwKAAALIApBgANqJAALvgQBCH8jAEEQayIDJAAgAyABNgIEIAMgADYCACADQqCAgIAONwIIAn8CQAJAAkAgAigCECIJBEAgAigCFCIADQEMAgsgAigCDCIARQ0BIAIoAggiASAAQQN0aiEEIABBAWtB/////wFxQQFqIQYgAigCACEAA0ACQCAAQQRqKAIAIgVFDQAgAygCACAAKAIAIAUgAygCBCgCDBEFAEUNAEEBDAULQQEgASgCACADIAFBBGooAgARAwANBBogAEEIaiEAIAFBCGoiASAERw0ACwwCCyAAQRhsIQogAEEBa0H/////AXFBAWohBiACKAIIIQQgAigCACEAA0ACQCAAQQRqKAIAIgFFDQAgAygCACAAKAIAIAEgAygCBCgCDBEFAEUNAEEBDAQLQQAhB0EAIQgCQAJAAkAgBSAJaiIBQQhqLwEAQQFrDgIBAgALIAFBCmovAQAhCAwBCyAEIAFBDGooAgBBA3RqLwEEIQgLAkACQAJAIAEvAQBBAWsOAgECAAsgAUECai8BACEHDAELIAQgAUEEaigCAEEDdGovAQQhBwsgAyAHOwEOIAMgCDsBDCADIAFBFGooAgA2AghBASAEIAFBEGooAgBBA3RqIgEoAgAgAyABKAIEEQMADQMaIABBCGoh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CANAIAEoAighAiABQQA2AiggAkEBcQRAIAAgAjYCACAAIAf9AAIA/QsCBCAAQRRqIAdBEGr9AAIA/QsCACAAQSRqIAdBIGooAgA2AgAMBAsgASADQQFqIgM2AlQgCCgCDEEBayADTQRAIAUgCCgCEEECa08NAyABQQA2AlQgASAFQQFqIgU2AlhBACEDCyAEQTBqIgIgCCADIAUQnQIgASACQdAA/AoAACAJIAZBEGr9AAIA/QsDACAKIAZBIGooAgA2AgAgASgCACECIAFBADYCACAEIAb9AAIA/QsDCCACQQFxRQ0ACwsgACACNgIAIAAgBP0AAwj9CwIEIABBFGogCf0AAwD9CwIAIABBJGogCigCADYCAAwBCyAAQQA2AgALIARBgAFqJAALwwMCAX8JfUP//39/IQdD//9//yEIAkAgASgCCEUEQEP//3//IQZD//9//yEFQ///f38hA0P//39/IQQMAQtD//9//yEGQ///f/8hBUP//39/IQND//9/fyEEAkACQCABKAIEIgIoAjxB/////wNxIAIoAhxB/////wNxag4CAgABCyACKgIYIQggAioCFCEGIAIqAhAhBSACKgIIIQcgAioCBCEDIAIqAgAhBAwBCyACKgIYIgYgAioCOCIFIAUgBl8bIQggAioCFCIGIAIqAjQiBSAFIAZfGyEGIAIqAhAiBSACKgIwIgMgAyAFXxshBSACKgIIIgMgAioCKCIEIAMgBF8bIQcgAioCBCIDIAIqAiQiBCADIARfGyEDIAIqAgAiBCACKgIgIgkgBCAJXxshBAsgACAHIAEqAmwiB0MAAAA/lCIJkiAHlY78ADYCCCAAIAMgASoCaCIDQwAAAD+UIgqSIAOVjvwANgIEIAAgBCABKgJkIgRDAAAAP5QiC5IgBJWO/AA2AgAgACAIIAmTIAeVjvwAQQFqNgIUIAAgBiAKkyADlY78AEEBajYCECAAIAUgC5MgBJWO/ABBAWo2AgwLiAMBB38jAEEQayIEJAACQAJAAkACQCABKAIEIgIEQCABKAIAIQYgAkEDcSEFAkAgAkEESQRAQQAhAgwBCyAGQRxqIQMgAkF8cSEIQQAhAgNAIAMoAgAgA0EIaygCACADQRBrKAIAIANBGGsoAgAgAmpqamohAiADQSBqIQMgCCAHQQRqIgdHDQALCyAFBEAgB0ED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IAMoAvgFIAMoAvwFTg0AQQAhBSADQdQHagwBCyADIAUgB2oiBSAHTzYC1AcgA0H8DmoLIAU2AgAgAygC/A4hCCADKALUByEFCyADKAKABkEBRgRAQQAhBEEAIQcgAygChAYEQCADKAKoBiIGIAMoAqQGIgdrQQAgBiAHShshBwsgAygCrAYEQCADKALQBiIEIAMoAswGIgZrQQAgBCAGShshBAsCfwJAIAMoAtQGRQ0AIAMoAogHIAMoAowHTg0AQQAhBCADQdQHagwBCyADIAQgB2oiBCAHTzYC1AcgA0H8DmoLIAQ2AgAgAygC/A4hBiADKALUByEECwJ/AkAgAygCkAcEQCADKALAByADKALEB04gBXEgBHENAUEAIQUgA0HUB2oMAgsgBCAFcUEBcQ0AQQAhBSADQdQHagwBCyAGIAhqIQUgA0H8DmoLIAU2AgALQQRBfyAJIAtqIgQgBCAJSRsgCyAQG0EBaiIEQX8gBBsiBCAEQQRNGyIGQQJ0IQUgBEH/////A0sNAyAFQfz///8HSw0DQQQhDCAFQQQQkQ4iBEUNAyAEIA82AgBBASEHIANBATYC0AcgAyAENgLMByADIAY2AsgHIANB1AdqIgUgA0EkakGkB/wKAAAgA0EQaiAFEGogAygCEEEBcUUNBCADKAIUIQxBBCELA0AgAygCyAcgB0YEQCADKAL0ByADKALwB2tBACADKALsBxshDyADKALcByADKALYB2shECADKALUByERAkAgAygChAhBA0YNACADKALICSIEQQJHBEBBASEFQQAhCEEAIQlBASEGIARBAXEEQEEAIQZBACEEIAMoAswJBEAgAygC8AkiBCADKALsCSIJa0EAIAQgCUobIQQLIAMoAvQJBEAgAygCmAoiBiADKAKUCiIJa0EAIAYgCUobIQYLAn8CQCADKAKcCkUNACADKALQCiADKALUCk4NAEEAIQYgA0H8DmoMAQsgAyAEIAZqIgYgBE82AvwOIANB+A5qCyAGNgIAIAMoAvgOIQkgAygC/A4hBgsgAygC2ApBAUYEQEEAIQVBACEEIAMoAtwKBEAgAygCgAsiBCADKAL8CiIIa0EAIAQgCEobIQQLIAMoAoQLBEAgAygCqAsiBSADKAKkCyIIa0EAIAUgCEobIQULAn8CQCADKAKsC0UNACADKALgCyADKALkC04NAEEAIQUgA0H8DmoMAQsgAyAEIAVqIgUgBE82AvwOIANB+A5qCyAFNgIAIAMoAvgOIQggAygC/A4hBQsCfwJAIAMoAugLBEAgAygCmAwgAygCnAxOIAZxIAVxDQEgA0H8DmohBUEADAILIAUgBnFBAXENACADQfwOaiEFQQAMAQsgA0H4DmohBSAIIAlqCyEEIAUgBDYCAAsgAygCoAwiBEECRg0AQQEhBUEAIQhBACEJQQEhBiAEQQFxBEBBACEGQQAhBCADKAKkDARAIAMoAsgMIgQgAygCxAwiCWtBACAEIAlKGyEECyADKALMDARAIAMoAvAMIgYgAygC7AwiCWtBACAGIAlKGyEGCwJ/AkAgAygC9AxFDQAgAygCqA0gAygCrA1ODQBBACEGIANB/A5qDAELIAMgBCAGaiIGIARPNgL8DiADQfgOagsgBjYCACADKAL4DiEJIAMoAvwOIQYLIAMoArANQQFGBEBBACEFQQAhBCADKAK0DQRAIAMoAtgNIgQgAygC1A0iCGtBACAEIAhKGyEECyADKALcDQRAIAMoAoAOIgUgAygC/A0iCGtBACAFIAhKGyEFCwJ/AkAgAygChA5FDQAgAygCuA4gAygCvA5ODQBBACEFIANB/A5qDAELIAMgBCAFaiIFIARPNgL8DiADQfgOagsgBTYCACADKAL4DiEIIAMoAvwOIQULAn8CQCADKALADgRAIAMoAvAOIAMoAvQOTiAGcSAFcQ0BIANB/A5qIQVBAAwCCyAFIAZxQQFxDQAgA0H8DmohBUEADAELIANB+A5qIQUgCCAJagshBCAFIAQ2AgALIANByAdqIAdBfyAPIBBqIgQgBCAQSRsgDyARG0EBaiIEQX8gBBtBBEEEENYGIAMoAswHIQQLIAQgC2ogDDYCACADIAdBAWoiBzYC0AcgC0EEaiELIANBCGogA0HUB2oQaiADKAIMIQwgAygCCEEBcQ0ACwwEC0EEIQsCQCADKAJUIgRBA0YNACAEQQJGDQAgAygC2AEiBEEhSQ0AIAMoAlwgBEECdEEEEOgOC0EADAQLQdzQwQBBzABBqNHBABDRCwALIA5BgICAgHg2AgAMAwsgDCAFQei6wQAQ1w0ACwJAIAMoAoQIIgRBA0YNACAEQQJGDQAgAygCiAkiBEEhSQ0AIAMoAowIIARBAnRBBBDoDgsgAygCzAchCyADKALIBwshBCAOIAc2AgggDiALNgIEIA4gBDYCAAsgA0GAD2okACABIAEoAgBBAWs2AgAgDSANKAIAQQFrIgE2AgAgAUUEQCAKQRBqEO4MC0EAIQFBACEDAkAgCigCFCIFQYCAgIB4Rg0AIAooAhghBCAFIAooAhwiAU0EQCAEIQMMAQsgBUECdCEFIAFFBEBBBCEDIAQgBUEEEOgODAELIAQgBUEEIAFBAnQiBBDyDSIDRQ0ECyAAIAE2AgQgACADNgIAIApBIGokAA8LEIMPCwALEIQPAAtBBCAEQYDUwQAQ1w0AC98JAgd/An4jAEEgayIHJAACQAJAAkAgAQRAIAFBCGsiCSgCAEEBaiEDIAkgAzYCACADRQ0BIAEoAgAiA0F/Rg0CIAEgA0EBajYCACAHIAk2AhAgByABNgIMIAcgAUEEaiIENgIIIAdBFGohBiMAQeAAayIDJAACQAJAIAQgAr0iCqcgCkIgiKcQugwiBARAAkACQAJAAkACQAJAIARBQGsoAgAgBEHEAGooAgAiBCgCCEEBa0F4cWpBCGoiCCAEKAKgAREEAEH/AXFBA2sOEAABBwIHBwcHAwcHBwQHBwUHCyMAQSBrIgUkACAFQQhqIAggBCgCYBEAACAFQRBqIAUoAggiBCAFKAIMKAIMEQAAIAUpAxghCiAFKQMQIQsgBUEgaiQAIARBACALQpHm3a7YmZjS8gCFIApCm9vS2qyiuuuKf4WEUBsiBARAIANBCGoiBUEIaiAEQQhqKAIANgIAIAQpAgAhCiAFQRRqIARBFGooAgA2AgAgAyAKNwMIIAMgBCkCDDcCFCADIANBIGo2AlwgA0EANgJEIANBADYCMCADIAU2AlggBiADQTBqEMgBDAgLIAZBgICAgHg2AgAMBwsgCCAEEMALIgQEQCADQQhqIgVBCGogBEEIaigCADYCACAEQRRqKAIAIQggBCkCDCEKIAQpAgAhCyAFQSBqIARBIGooAgA2AgAgBUEUaiAINgIAIAMgCzcDCCADIAQpAhg3AyAgAyAKNwIUIAMgA0EsajYCXCADQQA2AkQgA0EANgIwIAMgBTYCWCAGIANBMGoQyAEMBwsgBkGAgICAeDYCAAwGCyAIIAQQwwsiBARAIAQoAjAhBSADIAQoAiwiBDYCWCADQQA2AkQgA0EANgIwIAMgBCAFQQxsajYCXCAGIANBMGoQyAEMBgsgBkGAgICAeDYCAAwFCyAIIAQQyAsiBARAIAQoAgghBSADIAQoAgQiBDYCWCADQQA2AkQgA0EANgIwIAMgBCAFQQxsajYCXCAGIANBMGoQyAEMBQsgBkGAgICAeDYCAAwECyAIIAQQxwsiBARAIANBCGoiBUEIaiAEQQhqKAIANgIAIAVBFGogBEEUaigCADYCACAFQSBqIARBIGooAgA2AgAgAyAEKQIANwMIIAMgBCkCDDcCFCADIAQpAhg3AyAgAyADQSxqNgJcIANBADYCRCADQQA2AjAgAyAFNgJYIAYgA0EwahDIAQwECyAGQYCAgIB4NgIADAMLIAggBBDPCyIEBEAgBCgCCCEFIAMgBCgCBCIENgJYIANBADYCRCADQQA2AjAgAyAEIAVBDGxqNgJcIAYgA0EwahDIAQwDCyAGQYCAgIB4NgIADAILQdzQwQBBzABBqNHBABDRCwALIAZBgICAgHg2AgALIANB4ABqJAAgASABKAIAQQFrNgIAIAkgCSgCAEEBayIBNgIAIAFFBEAgB0EQahDuDAtBACEBQQAhAwJAIAcoAhQiBEGAgICAeEYNACAHKAIYIQYgBCAHKAIcIgFNBEAgBiEDDAELIARBAnQhBCABRQRAQQQhAyAGIARBBBDoDgwBCyAGIARBBCABQQJ0IgYQ8g0iA0UNBAsgACABNgIEIAAgAzYCACAHQSBqJAAPCxCDDwsACxCEDwALQQQgBkGA1MEAENcNAAvIDgILfwJ+IwBBIGsiCyQAAkACQAJAIAEEQCABQQhrIg0oAgBBAWohAyANIAM2AgAgA0UNASABKAIAIgNBf0YNAiABIANBAWo2AgAgCyANNgIQIAsgATYCDCALIAFBBGoiAzYCCCALQRRqIQojAEEwayIFJAACQAJAAkACQCADIAK9Ig6nIA5CIIinELoMIgMEQAJAAkACQAJAIANBQGsoAgAgA0HEAGooAgAiBCgCCEEBa0F4cWpBCGoiBiAEKAKgAREEAEH/AXFBBmsODQABBQUFAgUFBQUFBQMFCyAGIAQQwwsiAwRAAn8gAygCPCIERQRAQQQhB0EADAELIAMoAjgiAygCACEGQRBBBBCRDiIJRQ0IIAMgBEEMbGohDCAJIAY2AgAgBUEBNgIUIAUgCTYCECAFQQQ2AgwgA0EEaiEGQQQhB0EBIQggA0EMaiEEA0ACQAJAIAQgBkcEQCAGIQMMAQsgBCAMRg0BIAQiA0EMaiEECyADQQRqIQYgAygCACEDIAUoAgwgCEYEQCAFQQxqIAggBCAGa0ECdkEBakEEQQQQ1gYgBSgCECEJCyAHIAlqIAM2AgAgBSAIQQFqIgg2AhQgB0EEaiEHDAELCyAFKAIQIQcgBSgCDAshAyAKIAg2AgggCiAHNgIEIAogAzYCAAwGCyAKQYCAgIB4NgIADAULIwBBIGsiAyQAIANBCGogBiAEKAJgEQAAIANBEGogAygCCCIEIAMoAgwoAgwRAAAgAykDGCEOIAMpAxAhDyADQSBqJAAgBEEAIA9Ck/Cfod/1laothSAOQs2bxZHuwcTvlH+FhFAbIgMEQAJ/IAMoAjwiBEUEQEEEIQdBAAwBCyADKAI4IgMoAgAhBkEQQQQQkQ4iCUUNByADIARBA3RqIQwgCSAGNgIAIAVBATYCFCAFIAk2AhAgBUEENgIMIANBBGohBkEEIQdBASEIIANBCGohBANAAkACQCAEIAZHBEAgBiEDDAELIAQgDEYNASAEIgNBCGohBAsgA0EEaiEGIAMoAgAhAyAFKAIMIAhGBEAgBUEMaiAIIAQgBmtBAnZBAWpBBEEEENYGIAUoAhAhCQsgByAJaiADNgIAIAUgCEEBaiIINgIUIAdBBGohBwwBCwsgBSgCECEHIAUoAgwLIQMgCiAINgIIIAogBzYCBCAKIAM2AgAMBQsgCkGAgICAeDYCAAwECyAGIAQQyAsiAwRAIAVBDGogAxDwAwJ/IAUoAiAiBEUEQEEEIQdBAAwBCyAFKAIcIgMoAgAhBkEQQQQQkQ4iCUUNBiADIARBDGxqIQwgCSAGNgIAIAVBATYCLCAFIAk2AiggBUEENgIkIANBBGohBkEEIQdBASEIIANBDGohBANAAkACQCAEIAZHBEAgBiEDDAELIAQgDEYNASAEIgNBDGohBAsgA0EEaiEGIAMoAgAhAyAFKAIkIAhGBEAgBUEkaiAIIAQgBmtBAnZBAWpBBEEEENYGIAUoAighCQsgByAJaiADNgIAIAUgCEEBaiIINgIsIAdBBGohBwwBCwsgBSgCKCEHIAUoAiQLIQMgBSgCDCIEBEAgBSgCECAEQQxsQQQQ6A4LIAUoAhgiBARAIAUoAhwgBEEMbEEEEOgOCyAKIAg2AgggCiAHNgIEIAogAzYCAAwECyAKQYCAgIB4NgIADAMLIAYgBBDPCyIDBEAgBUEMaiADEPADAn8gBSgCICIERQRAQQQhB0EADAELIAUoAhwiAygCACEGQRBBBBCRDiIJRQ0FIAMgBEEMbGohDCAJIAY2AgAgBUEBNgIsIAUgCTYCKCAFQQQ2AiQgA0EEaiEGQQQhB0EBIQggA0EMaiEEA0ACQAJAIAQgBkcEQCAGIQMMAQsgBCAMRg0BIAQiA0EMaiEECyADQQRqIQYgAygCACEDIAUoAiQgCEYEQCAFQSRqIAggBCAGa0ECdkEBakEEQQQQ1gYgBSgCKCEJCyAHIAlqIAM2AgAgBSAIQQFqIgg2AiwgB0EEaiEHDAELCyAFKAIoIQcgBSgCJAshAyAFKAIMIgQEQCAFKAIQIARBDGxBBBDoDgsgBSgCGCIEBEAgBSgCHCAEQQxsQQQQ6A4LIAogCDYCCCAKIAc2AgQgCiADNgIADAMLIApBgICAgHg2AgAMAgtB3NDBAEHMAEGo0cEAENELAAsgCkGAgICAeDYCAAsgBUEwaiQADAELQQRBEEHousEAENcNAAsgASABKAIAQQFrNgIAIA0gDSgCAEEBayIBNgIAIAFFBEAgC0EQahDuDAtBACEBQQAhAwJAIAsoAhQiBkGAgICAeEYNACALKAIYIQQgBiALKAIcIgFNBEAgBCEDDAELIAZBAnQhBiABRQRAQQQhAyAEIAZBBBDoDgwBCyAEIAZBBCABQQJ0IgQQ8g0iA0UNBAsgACABNgIEIAAgAzYCACALQSBqJAAPCxCDDwsACxCEDwALQQQgBEGA1MEAENcNAAu3BAIJfwF+IwBBIGsiBiQAAkACQAJAIAEEQCABQQhrIggoAgBBAWohAyAIIAM2AgAgA0UNASABKAIAIgNBf0YNAiABIANBAWo2AgAgBiAINgIQIAYgATYCDCAGIAFBBGoiAzYCCCAGQRRqIQcCQAJAAkAgAyACvSIMpyAMQiCIpxC6DCIDBEAgA0FAaygCACADQcQAaigCACIDKAIIQQFrQXhxakEIaiIEIAMoAqABEQQAQf8BcUEJRw0BIAQgAxDECyIEBEAgBCgCCCIDQQJ0IQUgA0H/////A0sNAyAFQfz///8HSw0DIAQoAgQhCgJAIAVFBEBBBCEJQQAhBAwBC0EEIQsgAyEEIAVBBBCRDiIJRQ0ECyAFBEAgCSAKIAX8CgAACyAHIAM2AgggByAJNgIEIAcgBDYCAAwECyAHQYCAgIB4NgIADAMLQdzQwQBBzABBqNHBABDRCwALIAdBgICAgHg2AgAMAQsgCyAFQfy+wQAQ1w0ACyABIAEoAgBBAWs2AgAgCCAIKAIAQQFrIgE2AgAgAUUEQCAGQRBqEO4MC0EAIQFBACEDAkAgBigCFCIFQYCAgIB4Rg0AIAYoAhghBCAFIAYoAhwiAU0EQCAEIQMMAQsgBUECdCEFIAFFBEBBBCEDIAQgBUEEEOgODAELIAQgBUEEIAFBAnQiBBDyDSIDRQ0ECyAAIAE2AgQgACADNgIAIAZBIGokAA8LEIMPCwALEIQPAAtBBCAEQYDUwQAQ1w0AC5QFAgl/AX4jAEHQAGsiBSQAAkACQAJAIAAEQCAAQQhrIgkoAgBBAWohBiAJIAY2AgAgBkUNASAAKAIAIgZBf0YNAiAAIAZBAWo2AgAgBSAJNgIUIAUgADYCECAFIABBBGoiBDYCDCAFQRhqIQYjAEHwAGsiByQAAkAgBCACvSINpyANQiCIpxC6DCIIBEAgBgJ/AkAgBCABvSINpyANQiCIpxC6DCIEBEAgB0E4aiIKIARB9ABqIAQoAkAgBCgCRCIEKAIIQQFrQXhxakEIaiAEIAhB9ABqIAgoAkAgCCgCRCIEKAIIQQFrQXhxakEIaiAEIAMQ+QEgBygCOCILQQJGDQEgB0EwaiIMIApBNGooAgA2AgAgB0EgaiIIIApBJGr9AAIA/QsDACAHQRBqIgQgCkEUav0AAgD9CwMAIAcgB/0AAjz9CwMAQQAgC0EBcUUNAhogBiAH/QADAP0LAgQgBkE0aiAMKAIANgIAIAZBJGogCP0AAwD9CwIAIAZBFGogBP0AAwD9CwIAQQEMAgtB3NDBAEHMAEGo0cEAENELAAtBAAs2AgAgB0HwAGokAAwBC0Hc0MEAQcwAQcDVwQAQ0QsACyAAIAAoAgBBAWs2AgAgCSAJKAIAQQFrIgA2AgAgAEUEQCAFQRRqEO4MC0EAIQAgBSgCGEEBRgRAQcAAQQQQkQ4iAEUNBCAAQQA2AgggAEKBgICAEDcCACAAIAX9AAIc/QsCDCAAQRxqIAVBLGr9AAIA/QsCACAAQSxqIAVBPGr9AAIA/QsCACAAQTxqIAVBzABqKAIANgIAIABBCGohAAsgBUHQAGokACAADwsQgw8LAAsQhA8AC0EEQcAAQfjKxAAoAgAiAEHMCCAAGxEAAAALwQIBA38jAEGwAmsiAyQAIAEgASgCEBDrAgJAAkACQCABKAIAQQFGBEAgASgCBCIFIAEoAhAiBE8NASABKAIMIAVBpAJsaiIEKAIAQYCAgIB4Rw0CIAEgBCkCBDcCACABIAEoAhhBAWo2AhggASgCFCEBIAQgAkGgAvwKAAAgBCABNgKgAgwDCyACKAIIIQEgAigCBCEFIAIoAgAiBEGAgICAeEYNAiADQRhqIAJBDGpBlAL8CgAAIAMgATYCFCADIAU2AhAgAyAENgIMIANBDGoQ8gJBoIrCAEE+IANBrwJqQZCKwgBB4IrCABDNCgALIAUgBEHUicIAEIULAAsgA0EANgIcIANBATYCECADQfiJwgA2AgwgA0IENwIUIANBDGpBgIrCABC5DQALIAAgATYCBCAAIAU2AgAgA0GwAmokAAv6AgEEfwJAIAFBzf97QRAgACAAQRBNGyIAa08NAEEQIAFBC2pBeHEgAUELSRsiBCAAakEMahBDIgJFDQAgAkEIayEBAkAgAEEBayIDIAJxRQRAIAEhAAwBCyABKAIEIgVBeHEgAEEAIAIgA2pBACAAa3FBCGsiACABa0EQTRsgAGoiACABayICayEDIAVBA3EEQCAAIAMgACgCBEEBcXJBAnI2AgQgACADaiIDIAMoAgRBAXI2AgQgASACIAEoAgRBAXFyQQJyNgIEIAEgAmoiAyADKAIEQQFyNgIEIAEgAhCRBQwBCyABKAIAIQEgACADNgIEIAAgASACajYCAAsCQCAAKAIEIgFBA3FFDQAgAUF4cSICIARBEGpNDQAgACAEIAFBAXFyQQJyNgIEIAAgBGoiASABKAIEQQFyNgIEIAEgAiAEayIEIAEoAgRBAXFyQQJyNgIEIAEgBGoiAiACKAIEQQFyNgIEIAEgBBCRBQsgAEEIaiEDCyADC50CAQV/AkACQAJAAkAgAkEDakF8cSIEIAJGDQAgAyAEIAJrIgQgAyAESRsiBUUNAEEAIQQgAUH/AXEhBkEBIQcDQCACIARqLQAAIAZGDQQgBEEBaiIEIAVHDQALIANBCGsiCCAFSQ0CDAELIANBCGshCEEAIQULIAFB/wFxQYGChAhsIQQDQCACIAVqIgcoAgAgBHMiBkGAgoQIIAZrciAHQQRqKAIAIARzIgZBgIKECCAGa3JxQYCBgoR4cUGAgYKEeEcNASAIIAVBCGoiBU8NAAsLIAMgBUcEQCABQf8BcSEEQQEhBwNAIAQgAiAFai0AAEYEQCAFIQQMAwsgBUEBaiIFIANHDQALC0EAIQcLIAAgBDYCBCAAIAc2AgALrgICA38BfSMAQSBrIgMkACADQQhqIgQgAEEwaiIFIAIQqgggAEEgaiADQRBqKAIANgIAIAAgAykCCDcCGCAAIAAqAkwiBjgCLCAAIAY4AiggACAGOAIkIAQgBSACEJUDIABBEGogBEEQaikCADcCACAAIAP9AAII/QsCAAJAAkAgAUH/AXFFBEAgAC0AYCIBQQFxBEAgAEEANgIkCyABQQJxBEAgAEEANgIoCyABQQRxBEAgAEEANgIsCyABQQhxBEAgAEEANgIIIABCADcCAAsgAUEQcQRAIABBADYCBCAAQgA3AgwLIAFBIHFFDQIMAQsgAEEANgIsIABCADcCJCAA/QwAAAAAAAAAAAAAAAAAAAAA/QsCAAsgAEEANgIIIABCADcCEAsgA0EgaiQAC7ACAgF/CX0jAEHgAWsiAyQAIAIqAgAgASoCEJMiCiABKgIEIgeUIAIqAgQgASoCFJMiCyABKgIAIgiUkyIFIAWSIQUgCyABKgIIIgmUIAIqAgggASoCGJMiBCAHlJMiBiAGkiEGIAMgBCABKgIMIgwgBZQgByAGlCAIIAQgCJQgCiAJlJMiBCAEkiIElJOSkjgCDCADIAsgDCAElCAIIAWUIAkgBpSTkpI4AgggAyAKIAwgBpQgCSAElCAHIAWUk5KSOAIEIAP9DAAAAAAAAAAAAAAAAAAAAAD9CwTQASAD/QwAAAAAAQAAAAIAAAADAAAA/QsEICADQTBqQQBBoAH8CwAgA0EQaiAAKAIEIAAoAgggA0EgaiADQQRqQQEQMiADLQAcIQAgA0HgAWokACAAC6wKAwZ/AX0CfgJAIAAgAUHYAGoQzgYiAg0AIAFB6ABqIAAQkAgiAg0AIAAgAUH0AGoQzgYiAg0AIAFBhAFqIAAQkAgiAg0AIAEtALgCIQQgACgCACIDKAIIIQIgAiADKAIARgRAIAMgAkEBQQFBARDWBiADKAIIIQILIAMgAkEBajYCCCADKAIEIAJqIAQ6AAAgAS0AuQIhBCAAKAIAIgMoAgghAiACIAMoAgBGBEAgAyACQQFBAUEBENYGIAMoAgghAgsgAyACQQFqNgIIIAMoAgQgAmogBDoAACAAIAEtALoCELYMIgINACAAIAEtALsCELYMIgINACABQRBqIQcgACgCACICKAIIIQMDQCAFIAdqIgYqAgAhCCACKAIAIANrQQNNBEAgAiADQQRBAUEBENYGIAIoAgghAwsgAigCBCADaiAIOAAAIAIgA0EEaiIDNgIIIAZBBGoqAgAhCCACKAIAIANrQQNNBEAgAiADQQRBAUEBENYGIAIoAgghAwsgAigCBCADaiAIOAAAIAIgA0EEaiIENgIIIAZBCGoqAgAhCCACKAIAIARrQQNNBEAgAiAEQQRBAUEBENYGIAIoAgghBAsgAiAEQQRqIgM2AgggAigCBCAEaiAIOAAAIAVBDGoiBUHIAEcNAAsgAUGQAWohBkEAIQUgACgCACIDKAIIIQIDQCAFIAZqIgQqAgAhCCADKAIAIAJrQQNNBEAgAyACQQRBAUEBENYGIAMoAgghAgsgAygCBCACaiAIOAAAIAMgAkEEaiICNgIIIARBBGoqAgAhCCADKAIAIAJrQQNNBEAgAyACQQRBAUEBENYGIAMoAgghAgsgAygCBCACaiAIOAAAIAMgAkEEaiICNgIIIARBCGoqAgAhCCADKAIAIAJrQQNNBEAgAyACQQRBAUEBENYGIAMoAgghAgsgAygCBCACaiAIOAAAIAMgAkEEaiICNgIIIARBDGoqAgAhCCADKAIAIAJrQQNNBEAgAyACQQRBAUEBENYGIAMoAgghAgsgAygCBCACaiAIOAAAIAMgAkEEaiICNgIIIARBEGoqAgAhCCADKAIAIAJrQQNNBEAgAyACQQRBAUEBENYGIAMoAgghAgsgAygCBCACaiAIOAAAIAMgAkEEaiICNgIIIARBFGoqAgAhCCADKAIAIAJrQQNNBEAgAyACQQRBAUEBENYGIAMoAgghAgsgAygCBCACaiAIOAAAIAMgAkEEaiICNgIIIARBGGotAAAhBCADKAIAIAJrQQNNBEAgAyACQQRBAUEBENYGIAMoAgghAgsgAygCBCACaiAENgAAIAMgAkEEaiICNgIIIAVBHGoiBUGoAUcNAAsgAS0AvQIhBCAAKAIAIgIoAgghAyADIAIoAgBGBEAgAiADQQFBAUEBENYGIAIoAgghAwsgAiADQQFqNgIIIAIoAgQgA2ogBEEBcToAACAAKAIAIgIoAgghAyACKAIAIANrIQQCQAJAAkACQAJAIAEtALwCQQFrDgIBAgALQQAhBSAEQQRJDQIMAwtBASEFIARBBEkNAQwCC0ECIQUgBEEDSw0BCyACIANBBEEBQQEQ1gYgAigCCCEDCyACKAIEIANqIAU2AAAgAiADQQRqNgIIIAEpAwAhCSABKQMIIQogACgCACIAKAIIIQEgACgCACABa0EPTQRAIAAgAUEQQQFBARDWBiAAKAIIIQELIAAgAUEQajYCCCAAKAIEIAFqIgAgCjcACCAAIAk3AABBACECCyACC6YCAgV/AX4jAEEgayIDJAACQAJAAkACQCAABEAgAEEIayIEKAIAQQFqIQIgBCACNgIAIAJFDQEgACgCACICQX9GDQIgACACQQFqNgIAIAMgBDYCHCADIAA2AhggAyAAQQhqIgI2AhQgA0EIaiACIAG9IgenIAdCIIinEJUKIAMoAggiAkUNAyADKAIMIgYgAigCCE8NBEEGIQUgAigCBCAGQfADbGpByAJqLQAAQTdrQf8BcSICQQhNBEAgAkECdEH818EAaigCACEFCyAAIAAoAgBBAWs2AgAgBCAEKAIAQQFrIgA2AgAgAEUEQCADQRxqEOoMCyADQSBqJAAgBQ8LEIMPCwALEIQPAAtB4M7BAEHJAEGsz8EAENELAAtBvM/BABDyDgALqQICBH8BfiMAQRBrIgUkAAJAAkACQAJAAkAgAARAIABBEGsiBigCAEEBaiEEIAYgBDYCACAERQ0BIAAoAgANAiAAQX82AgAgBSAGNgIMIAUgADYCCCAFIABBEGoiBDYCBCAEIAG9IginIAhCIIinEN4JIgQEQCAELQC4AiIHQQdxQQdGIAJBAEdGDQYgA0UNBSAELQDlAkEBRg0FIAQtANQCRQ0EIAQgBCgCvAJBBHI2ArwCDAQLQezPwQBBzQBBzNDBABDRCwALEIMPCwALEIQPAAsgBEEANgLQAiAEQQA6ANQCCyAEIAdB+AFxQQdBACACG3I6ALgCIAQQ5A0LIABBADYCACAGIAYoAgBBAWsiADYCACAARQRAIAVBDGoQ6wwLIAVBEGokAAupAgIEfwF+IwBBEGsiBSQAAkACQAJAAkACQCAABEAgAEEQayIGKAIAQQFqIQQgBiAENgIAIARFDQEgACgCAA0CIABBfzYCACAFIAY2AgwgBSAANgIIIAUgAEEQaiIENgIEIAQgAb0iCKcgCEIgiKcQ3gkiBARAIAQtALgCIgdBOHFBOEYgAkEAR0YNBiADRQ0FIAQtAOUCQQFGDQUgBC0A1AJFDQQgBCAEKAK8AkEEcjYCvAIMBAtB7M/BAEHNAEHM0MEAENELAAsQgw8LAAsQhA8ACyAEQQA2AtACIARBADoA1AILIAQgB0HHAXFBOEEAIAIbcjoAuAIgBBDkDQsgAEEANgIAIAYgBigCAEEBayIANgIAIABFBEAgBUEMahDrDAsgBUEQaiQAC7kZAxR/BnsCfiMAQSBrIhEkAAJAAkACQCAARQ0AIABBCGsiFSgCAEEBaiEFIBUgBTYCACAFRQ0BIAAoAgANAiAAQX82AgAgESAVNgIQIBEgADYCDCARIABBCGoiBjYCCCABRQ0AIAFBEGsiFigCAEEBaiEFIBYgBTYCACAFRQ0BIAEoAgAiBUF/Rg0CIAEgBUEBajYCACARIBY2AhwgESABNgIYIBEgAUEQaiIFNgIUIAUhFyAEQQBHIRgjAEFAaiINJAACQAJAAkACQAJAAkACQAJAAkAgBigCPEEBRgRAIAYoAkAiDiAGKAJMIgRPDQMgBigCSCAOQQxsaiIEKAIARQ0BIA1BADYCOCANQQE2AiwgDUGEwcEANgIoIA1CBDcCMCANQShqQYzBwQAQuQ0ACyANQQhqIRAjAEEwayIHJAAgBkE8aiIJKAIQIgRBAXQhDiAJKAIEIRMgCSgCACEPIAQhCCAJKAIIIgUgBGsiCyAESQR/AkAgBEHVqtUqSwR/QQAFIARBGGwhCyAHIAUEfyAHIAVBDGw2AiAgByAJKAIMNgIYQQQFQQALNgIcIAdBDGpBBCALIAdBGGoQ4gkgBygCDEEBRw0BIAcoAhQhBSAHKAIQCyAFQZzBwQAQ1w0ACyAHKAIQIQUgCSAONgIIIAkgBTYCDCAEBSALCyEFIAUgDiAEayILQQAgCyAOTRsiC0kEQCAJQQhqIAQgC0EEQQwQ1gYgCSgCECEICyAJKAIMIRICQCAERQ0AAkAgBEEESQRAIAQhCwwBCyASIAhBDGxqIQogBP0R/QwAAAAAAQAAAAIAAAADAAAA/a4BIRogBEH8////AHEiDCAEaiELIAggDGohCCAT/REhGyAP/REhHCAOQQFr/REhHSAMIQUDQCAKQQA2AgAgCkEkakEANgIAIApBGGpBADYCACAKQQxqQQA2AgAgCkEoaiAc/QwBAAAAAQAAAAEAAAABAAAAIBogHf03Ih79UiIZ/VoCAAMgCkEcaiAZ/VoCAAIgCkEQaiAZ/VoCAAEgCkEEaiAZ/VoCAAAgCkEsaiAbIBr9DAEAAAABAAAAAQAAAAEAAAD9rgEgHv1SIhn9WgIAAyAKQSBqIBn9WgIAAiAKQRRqIBn9WgIAASAKQQhqIBn9WgIAACAKQTBqIQogGv0MBAAAAAQAAAAEAAAABAAAAP2uASEaIAVBBGsiBQ0ACyAEIAxGDQELIA4gC2siDEEBayEOIBIgCEEMbGohCkEAIQUDQCAKQQA2AgAgCkEEaiAPQQEgBSAORiIUGzYCACAKQQhqIBMgCyAFQQFqIgVqIBQbNgIAIApBDGohCiAFIAxHDQALIAUgCGohCAsgCSAINgIQAkACQCAEIAhJBEAgEiAEQQxsaiIFKAIADQEgBUEBNgIAIAkgBSkCBDcCACAFQQA2AgggBSAJKAIUIgU2AgQgCSAJKAIYQQFqNgIYIBAgBTYCBCAQIAQ2AgAgB0EwaiQADAILIAQgCEHgwMEAEIULAAsgB0EANgIoIAdBATYCHCAHQYTBwQA2AhggB0IENwIgIAdBGGpBjMHBABC5DQALIA0oAgwhEyANKAIIIQ4MAQsgBEEBNgIAIAYgBCkCBDcCPCAEQQA2AgggBCAGKAJQIhM2AgQgBiAGKAJUQQFqNgJUCyANQSBqQgA3AwAgDf0MAAAAAAAAAAAAAAAAAAAAAP0LBBACQCACvSIfpyIKIAYoAjgiBUkEQCAFIQQMAQsgBSAKQQFqIgRJBEAgBCAFIgtrIgcgBigCMCAFa0sEQCAGQTBqIAUgB0EEQQgQ1gYgBigCOCELCyAGKAI0IgggC0EDdGohBCAHQQJPBEAgCiAFayIFQQN0IgwEQCAEQf8BIAz8CwALIAggBSALakEDdGohBCAHIAtqQQFrIQsLIARCfzcCACALQQFqIQQLIAYgBDYCOAsgBCAKTQ0BIAO9IiCnIQwCfyAfQiCIpyISIAYoAjQiCSAKQQN0aiIFKAIARgRAIAUoAgQMAQsgBUF/NgIEIAUgEjYCAEF/CyELAkAgBCAMSwRAIAQhBQwBCyAMQQFqIgUgBEsEQCAEIQcgBSAEayIIIAYoAjAgBGtLBEAgBkEwaiAEIAhBBEEIENYGIAYoAjQhCSAGKAI4IQcLIAkgB0EDdGohBSAIQQJPBEAgDCAEayIEQQN0IhAEQCAFQf8BIBD8CwALIAkgBCAHakEDdGohBSAHIAhqQQFrIQcLIAVCfzcCACAHQQFqIQULIAYgBTYCOAsgBSAMTQ0CAn8gIEIgiKciECAJIAxBA3RqIgQoAgBGBEAgBCgCBAwBCyAEQX82AgQgBCAQNgIAQX8LIQUgC0F/RgRAIAYoAiAiCyAGKAIYRgRAIAZBGGpBgMLBABC1CAsgBiALQQFqNgIgIAYoAhwgC0EEdGoiBEJ/NwIIIAQgEjYCBCAEIAo2AgAgCiAGKAI4IghPBEAgBigCMCAIIgdrIAogB2siFEEBaiIPSQRAIAZBMGogByAPQQRBCBDWBiAGKAI4IQcLIAYoAjQgB0EDdGohBCAPQQJPBEAgFEEHcSEJIAggCmtBeE0EQCAUQXhxIQgDQCAEQv////8PNwIAIARBOGpC/////w83AgAgBEEwakL/////DzcCACAEQShqQv////8PNwIAIARBIGpC/////w83AgAgBEEYakL/////DzcCACAEQRBqQv////8PNwIAIARBCGpC/////w83AgAgBEFAayEEIAhBCGsiCA0ACwsgCQRAA0AgBEL/////DzcCACAEQQhqIQQgCUEBayIJDQALCyAHIA9qQQFrIQcLIARC/////w83AgAgBiAHQQFqIgg2AjgLIAggCk0NBCAGKAI0IApBA3RqIgQgCzYCBCAEIBI2AgALIAVBf0YEQCAGKAIgIgUgBigCGEYEQCAGQRhqQYDCwQAQtQgLIAYgBUEBajYCICAGKAIcIAVBBHRqIgRCfzcCCCAEIBA2AgQgBCAMNgIAAkAgBigCOCIIIAxLBEAgCCEEDAELIAggDEEBaiIESQRAIAQgCCIHayEPIA8gBigCMCAHa0sEQCAGQTBqIAcgD0EEQQgQ1gYgBigCOCEHCyAGKAI0IAdBA3RqIQQgD0ECTwRAIAwgCGsiFEEHcSEJIAggDGtBeE0EQCAUQXhxIQgDQCAEQv////8PNwIAIARBOGpC/////w83AgAgBEEwakL/////DzcCACAEQShqQv////8PNwIAIARBIGpC/////w83AgAgBEEYakL/////DzcCACAEQRBqQv////8PNwIAIARBCGpC/////w83AgAgBEFAayEEIAhBCGsiCA0ACwsgCQRAA0AgBEL/////DzcCACAEQQhqIQQgCUEBayIJDQALCyAHIA9qQQFrIQcLIARC/////w83AgAgB0EBaiEECyAGIAQ2AjgLIAQgDE0NBSAGKAI0IAxBA3RqIgQgBTYCBCAEIBA2AgALIAYoAiAhByAGKAIcIQQgBigCLCEJAkACQCAFIAtPBEAgBSAHTw0BIAUgC0YNAgwICyAHIAtLDQcLIA1BADYCOCANQQE2AiwgDUHowcEANgIoIA1CBDcCMCANQShqQfDBwQAQuQ0ACyAEIAtBBHRqIgQoAgwhByAEIAk2AgwgBCgCCCEIIAQgCTYCCAwGCyAOIARB4MDBABCFCwALIAogBEGQwsEAEIULAAsgDCAFQZDCwQAQhQsACyAKIAhBoMLBABCFCwALIAwgBEGgwsEAEIULAAsgBCALQQR0aiIHKAIIIQggByAJNgIIIAQgBUEEdGoiBCgCDCEHIAQgCTYCDAsgBkEkaiIEKAIAIAlGBEAgBEGswcEAEJMICyAGKAIoIAlBgANsaiIEIBdBwAL8CgAAIAQgEDYCzAIgBCAMNgLIAiAEIBI2AsQCIAQgCjYCwAIgBCALrSAFrUIghoQ3A/gCIAQgBzYC9AIgBCAINgLwAiAEIBM2AuwCIAQgDjYC6AIgBiAJQQFqNgIsIAQgDSkDEDcD0AIgBEHYAmogDf0AAxj9CwMAAkACQCAOIAYoAkxPDQAgBigCSCAOQQxsaiIEKAIAQQFHDQAgBCgCBCATRw0AIAQgCTYCCCAYBEAgBiAKIBIQ2wMgBiAMIBAQ2wMLIA1BQGskACAOrSATrUIghoS/IQIMAQtBkYDAAEETQcDCwQAQ0QsACyABIAEoAgBBAWs2AgAgFiAWKAIAQQFrIgE2AgAgAUUEQCARQRxqEKcNCyAAQQA2AgAgFSAVKAIAQQFrIgA2AgAgAEUEQCARQRBqEO8MCyARQSBqJAAgAg8LEIMPCwALEIQPAAvWJwIkfwF+IwBBIGsiGCQAAkACQAJAIABFDQAgAEEIayIhKAIAQQFqIQUgISAFNgIAIAVFDQEgACgCAA0CIABBfzYCACAYICE2AhAgGCAANgIMIBggAEEIaiIHNgIIIAFFDQAgAUEQayIiKAIAQQFqIQUgIiAFNgIAIAVFDQEgASgCACIFQX9GDQIgASAFQQFqNgIAIBggIjYCHCAYIAE2AhggGCABQRBqIgU2AhQgBSEUIARBAEchJyMAQaAFayIJJAAgAr0iKUIgiKchHQJAAkACQAJAAkACQAJAAkACQAJAAkACQAJ/AkAgBygCOCIEICmnIhVNDQAgBygCNCAVQRRsaiIFKAIAIB1HDQAgB0EYaiEOIAdBPGohBiAFKAIMIQwgBSgCCCERIAUoAgQhCCAFKAIQDAELIAlBgANqIgUgFSAdEMUBIAdBPGohBgJAIAcoAjxBAUYEQCAHKAJAIgggBygCTCIETw0DIAcoAkggCEGkAmxqIgQoAgBBgICAgHhHDQ0gByAEKQIENwI8IAcgBygCVEEBajYCVCAHKAJQIREgBBDvAiAEIAVBoAL8CgAAIAQgETYCoAIMAQsgCSgCiAMhESAJKAKEAyEIIAkoAoADIgRBgICAgHhGDQAgCSARNgIYIAkgCDYCFCAJIAQ2AhAgCUEcaiAJQYwDakGUAvwKAAAgCUEIaiAGIAlBEGoQrQYgCSgCDCERIAkoAgghCAsgB0EYaiEOIAcoAiAiDCAHKAIYRgRAIA5BgMLBABC1CAsgBygCHCAMQQR0aiIEQn83AgggBCAdNgIEIAQgFTYCACAHIAxBAWo2AiAgBygCOCEEQQALIRAgA70iKUIgiKchHgJAAkACQAJAICmnIhYgBEkEQCAHKAI0IBZBFGxqIgQoAgAgHkYNAQsgCUGAA2oiBSAWIB4QxQECQCAHKAI8QQFGBEAgBygCQCIKIAcoAkwiBE8NByAHKAJIIApBpAJsaiIEKAIAQYCAgIB4Rw0QIAcgBCkCBDcCPCAHIAcoAlRBAWo2AlQgBygCUCESIAQQ7wIgBCAFQaAC/AoAACAEIBI2AqACDAELIAkoAogDIRIgCSgChAMhCiAJKAKAAyIEQYCAgIB4Rg0AIAkgEjYCGCAJIAo2AhQgCSAENgIQIAlBHGogCUGMA2pBlAL8CgAAIAkgBiAJQRBqEK0GIAkoAgQhEiAJKAIAIQoLIAcoAiAiDyAHKAIYRgRAIA5BgMLBABC1CAsgByAPQQFqNgIgIAcoAhwgD0EEdGoiBEJ/NwIIIAQgHjYCBCAEIBY2AgBBACEOIAggCkYNAQwDCyAEKAIQIQ4gBCgCDCEPIAQoAgghEiAEKAIEIgogCEcNAQtE////////738hAiARIBJGDQYgCCEKIA5FDQEMBgtE////////738hAiAODQULIAcoAiAhBiAHKAIcIQUgBygCLCEEAkACQCAMIA9NBEAgBiAPTQ0BIAwgD0YNAgwFCyAGIAxLDQQLIAlBADYCICAJQQE2AhQgCUHowcEANgIQIAlCBDcCGCAJQRBqQfDBwQAQuQ0ACyAFIAxBBHRqIgUoAgwhCyAFIAQ2AgwgBSgCCCEGIAUgBDYCCAwDCyAIIARB4MDBABCFCwALIAogBEHgwMEAEIULAAsgBSAMQQR0aiILKAIIIQYgCyAENgIIIAUgD0EEdGoiBSgCDCELIAUgBDYCDAsgB0EkaiIFKAIAIARGBEAgBUGswcEAELUICyAHKAIoIARBBHRqIgUgCzYCBCAFIAY2AgAgBSAMrSAPrUIghoQ3AgggByAEQQFqNgIsAkAgBygCOCIFIBVLBEAgBSEEDAELIAUgFUEBaiIESQRAIAUhCyAEIAVrIhcgBygCMCAFa0sEQCAHQTBqIAUgF0EEQRQQ1gYgBygCOCELCyAHKAI0IAtBFGxqIQQgF0ECTwRAIBUgBWsiBkEHcSEOIAUgFWtBeE0EQCAGQXhxIQYDQCAEQn83AgAgBEEIakJ/NwIAIARBFGpCfzcCACAEQRBqQQA2AgAgBEEcakJ/NwIAIARBKGpCfzcCACAEQSRqQQA2AgAgBEEwakJ/NwIAIARBPGpCfzcCACAEQThqQQA2AgAgBEHEAGpCfzcCACAEQdAAakJ/NwIAIARBzABqQQA2AgAgBEHYAGpCfzcCACAEQeAAakEANgIAIARB7ABqQn83AgAgBEHkAGpCfzcCACAEQfgAakJ/NwIAIARB9ABqQQA2AgAgBEGAAWpCfzcCACAEQYwBakJ/NwIAIARBiAFqQQA2AgAgBEGUAWpCfzcCACAEQZwBakEANgIAIARBoAFqIQQgBkEIayIGDQALCyAOBEADQCAEQn83AgAgBEEIakJ/NwIAIARBEGpBADYCACAEQRRqIQQgDkEBayIODQALCyALIBdqQQFrIQsLIARCfzcCACAEQQA2AhAgBEEIakJ/NwIAIAtBAWohBAsgByAENgI4CyAEIBVNDQEgBygCNCAVQRRsaiIEIBA2AhAgBCAMNgIMIAQgETYCCCAEIAg2AgQgBCAdNgIAAkAgBygCOCIFIBZLBEAgBSEEDAELIAUgFkEBaiIESQRAIAQgBSIGayILIAcoAjAgBWtLBEAgB0EwaiAFIAtBBEEUENYGIAcoAjghBgsgBygCNCAGQRRsaiEEIAtBAk8EQCAWIAVrIg5BB3EhDCAFIBZrQXhNBEAgDkF4cSEOA0AgBEJ/NwIAIARBCGpCfzcCACAEQRRqQn83AgAgBEEQakEANgIAIARBHGpCfzcCACAEQShqQn83AgAgBEEkakEANgIAIARBMGpCfzcCACAEQTxqQn83AgAgBEE4akEANgIAIARBxABqQn83AgAgBEHQAGpCfzcCACAEQcwAakEANgIAIARB2ABqQn83AgAgBEHgAGpBADYCACAEQewAakJ/NwIAIARB5ABqQn83AgAgBEH4AGpCfzcCACAEQfQAakEANgIAIARBgAFqQn83AgAgBEGMAWpCfzcCACAEQYgBakEANgIAIARBlAFqQn83AgAgBEGcAWpBADYCACAEQaABaiEEIA5BCGsiDg0ACwsgDARAA0AgBEJ/NwIAIARBCGpCfzcCACAEQRBqQQA2AgAgBEEUaiEEIAxBAWsiDA0ACwsgBiALakEBayEGCyAEQn83AgAgBEEANgIQIARBCGpCfzcCACAGQQFqIQQLIAcgBDYCOAsgBCAWTQ0CIAcoAjQgFkEUbGoiBEEANgIQIAQgDzYCDCAEIBI2AgggBCAKNgIEIAQgHjYCACAKIAcoAkxPDQQgBygCSCAKQaQCbGoiBCgCACIFQYCAgIB4Rg0EIBIgBCgCoAJHDQQgBykCPCEpIAlBEGoiBiAEQQRqQaAC/AoAACAEICk3AgQgBEGAgICAeDYCACAHIAo2AkAgB0EBNgI8IAcgBygCUEEBajYCUCAHIAcoAlRBAWs2AlQgCUGEA2ogBkGcAvwKAAAgCSAFNgKAAyAIIAcoAkxPDQMgBygCSCAIQaQCbGoiCigCAEGAgICAeEYNAyAKKAKgAiARRw0DIAkoAogDIgQEQCAEQfADbCEPIAkoAoQDQfQCaiEMA0AgDEEEaygCACIEIAcoAjhPDQcgDCgCACAHKAI0IARBFGxqIgQoAgBHDQcgBCARNgIIIAQgCDYCBCAEIAQoAhAgCigCCGo2AhAgDEHwA2ohDCAPQfADayIPDQALCyAJQRBqIgX9DAAAAAAAAAAAAAAAAAAAAAD9CwTQAiAFQeACakIANwMAIAVBEGogFEHAAvwKAAAgBf0MAAAAAAAAAAAAAAAAAACAP/0LBAAgBUEAOgDoAiMAQSBrIgwkAAJAAkAgCUGAA2oiDigCCCIfBEBBBiAFLQDIAmkiEWsiJiAKKAIYIiVBBiAOKAIEIgstAMgCaSIUayIXa2ohIyAKKAIIIQYgCigClAIhDyAOKAKUAiESAkAgH0HwA2wiJEHwA0YNACAGQQFqIQggJEHgB2siE0HwA25BAXEEfyALQfADagUgCyALKAKEByAjajYChAcgCyAIIAsoAoAHajYCgAcgCyALKAKIByAGajYCiAcgC0HgB2oLIQQgE0HwA0kNACALICRqIRMDQCAEQZQDaiINIA0oAgAgI2o2AgAgBEGQA2oiDSAIIA0oAgBqNgIAIARBmANqIg0gDSgCACAGajYCACAEQYQHaiINIA0oAgAgI2o2AgAgBEGAB2oiDSAIIA0oAgBqNgIAIARBiAdqIg0gDSgCACAGajYCACATIARB4AdqIgRHDQALCyALIAVB8AL8CgAAIAsgEDYCmAMgCyAGNgKQAyALICU2ApQDIAogEiAXayIQIAstAMgCaWtBBmogHxDqBQJAIBIgF0YEQCAKKAIoIRsgCigCICETDAELIA8gJmoiICAQaiIZIAooAhhLDQIgEiAOKAIYSw0CIAooAhAhEyAOKAIQIQ1BACEFAkACQCAQQRBJDQAgDyAUakECdCATaiARQQJ0IA1qa0EQSQ0AIBMgIEECdGohBCANIBdBAnRqIQYgEEF8cSIFIQgDQCAEIAb9AAIA/QsCACAEQRBqIQQgBkEQaiEGIAhBBGsiCA0ACyAFIBBGDQELIBIgFGoiGyAFa0EHayEaIBtBA3EiHEECRwRAIAVBAnQiBiAUQQJ0ayANakEYaiEEIAYgD0ECdGogEUECdGsgE2pBGGohBkEAIQgDQCAGIAQqAgA4AgAgBEEEaiEEIAZBBGohBiAcIAhBAWoiCHNBAkcNAAsgBSAIaiEFCyAaQQNJDQAgEyAPQQJ0IBFBAnRraiEIIAVBAnQhGiANIBRBAnRrIQQgGyAFa0EGayEFA0AgCCAaaiIGQRhqIAQgGmoiE0EYaioCADgCACAGQRxqIBNBHGoqAgA4AgAgBkEgaiATQSBqKgIAOAIAIAZBJGogE0EkaioCADgCACAEQRBqIQQgCEEQaiEIIAVBBGsiBQ0ACwsgGSAKKAIoIhtLDQIgEiAOKAIoSw0CIAooAiAhEyAOKAIgIQ1BACEFAkACQCAQQRBJDQAgDyAUakECdCATaiARQQJ0IA1qa0EQSQ0AIBMgIEECdGohBCANIBdBAnRqIQYgEEF8cSIFIQgDQCAEIAb9AAIA/QsCACAEQRBqIQQgBkEQaiEGIAhBBGsiCA0ACyAFIBBGDQELIBIgFGoiGiAFa0EHayEcIBpBA3EiKEECRwRAIAVBAnQiBiAUQQJ0ayANakEYaiEEIAYgD0ECdGogEUECdGsgE2pBGGohBkEAIQgDQCAGIAQqAgA4AgAgBEEEaiEEIAZBBGohBiAoIAhBAWoiCHNBAkcNAAsgBSAIaiEFCyAcQQNJDQAgEyAPQQJ0IBFBAnRraiEIIAVBAnQhHCANIBRBAnRrIQQgGiAFa0EGayEFA0AgCCAcaiIGQRhqIAQgHGoiDUEYaioCADgCACAGQRxqIA1BHGoqAgA4AgAgBkEgaiANQSBqKgIAOAIAIAZBJGogDUEkaioCADgCACAEQRBqIQQgCEEQaiEIIAVBBGsiBQ0ACwsgGSAKKAI4Sw0CIBIgDigCOEsNAiAKKAIwIQ0gDigCMCEZQQAhBQJAIBBBEEkNACAPIBRqQQJ0IA1qIBFBAnQgGWprQRBJDQAgDSAgQQJ0aiEEIBkgF0ECdGohBiAQQXxxIgUhCANAIAQgBv0AAgD9CwIAIARBEGohBCAGQRBqIQYgCEEEayIIDQALIAUgEEYNAQsgEiAUaiIQIAVrQQdrIRIgEEEDcSIgQQJHBEAgBUECdCIGIBRBAnRrIBlqQRhqIQQgBiAPQQJ0aiARQQJ0ayANakEYaiEGQQAhCANAIAYgBCoCADgCACAEQQRqIQQgBkEEaiEGICAgCEEBaiIIc0ECRw0ACyAFIAhqIQULIBJBA0kNACANIA9BAnQgEUECdGtqIQggBUECdCEPIBkgFEECdGshBCAQIAVrQQZrIQUDQCAIIA9qIgZBGGogBCAPaiIQQRhqKgIAOAIAIAZBHGogEEEcaioCADgCACAGQSBqIBBBIGoqAgA4AgAgBkEkaiAQQSRqKgIAOAIAIARBEGohBCAIQRBqIQggBUEEayIFDQALCyAlICZqIBtLDQEgDCAbNgIQIAwgFzYCDCAMIBMgI0ECdGo2AgggCyAMQQhqEJIGIAooAgAgCigCCCIEayAfSQRAIAogBCAfQRBB8AMQ1wYgCigCCCEECyAkBEAgCigCBCAEQfADbGogCyAk/AoAAAsgDkEANgIIIAogBCAfaiIENgIIIAogCigCGCIFNgKUAiAKQdABaiAEIAUQ/QIgDhDyAiAMQSBqJAAMAgtBAEEAQfySwgAQhQsACyAMQQA2AhggDEEBNgIMIAxBsP3BADYCCCAMQgQ3AhAgDEEIakG4/cEAELkNAAsgJwRAIAcgFSAdENsDIAcgFiAeENsDCyADIQILIAlBoAVqJAAMBgsgFSAEQaDCwQAQhQsACyAWIARBoMLBABCFCwALQZGAwABBE0GAw8EAENELAAtB8MLBABDyDgALQZDDwQAQ8g4ACyAJQQA2AiAgCUEBNgIUIAlBhMHBADYCECAJQgQ3AhggCUEQakGMwcEAELkNAAsgASABKAIAQQFrNgIAICIgIigCAEEBayIBNgIAIAFFBEAgGEEcahCnDQsgAEEANgIAICEgISgCAEEBayIANgIAIABFBEAgGEEQahDqDAsgGEEgaiQAIAIPCxCDDwsACxCEDwALuQICBH8BfiMAQSBrIgMkAAJAAkACQAJAIAAEQCAAQQhrIgQoAgBBAWohAiAEIAI2AgAgAkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgAgAyAENgIMIAMgADYCCCADIABBBGoiAjYCBCACIAG9IganIAZCIIinELoMIgJFDQMgAigCECIFQQFGBEAgAyAC/QACHP0LAxALIAAgACgCAEEBazYCACAEIAQoAgBBAWsiADYCACAARQRAIANBDGoQ7gwLQQAhACAFBEBBHEEEEJEOIgBFDQUgAEEANgIIIABCgYCAgBA3AgAgACAD/QADEP0LAgwgAEEIaiEACyADQSBqJAAgAA8LEIMPCwALEIQPAAtB3NDBAEHMAEGo0cEAENELAAtBBEEcQfjKxAAoAgAiAEHMCCAAGxEAAAALjAIBCX0gAioCACIFIAWUIAIqAgQiCSAJlJIgAioCCCIKIAqUkiABKgIAIgYgBpSTIQdDAAAAACEGAkAgAioCDCILIAuUIAIqAhAiDCAMlJIgAioCFCINIA2UkiIIQwAAAABcBEAgBSALlCAJIAyUkiAKIA2UkiEFQQAhAiAHQwAAAABeIAVDAAAAAF5xDQEgBSAFlCAHIAiUkyIHQwAAAABdDQFDAAAAACAFjCAHkSIHkyAIlSIGIAZDAAAAAF8iARshBkEBIQIgBA0BIAFFDQEgByAFkyAIlSEGDAELQQEhAiAHQwAAAABeRQ0AQQAhAgsgACAGOAIEIAAgAkEAIAMgBmAbQQAgAhs2AgALogICCH0BfyMAQSBrIgskACABKgIIIgNDAAAAAGBFBEAgC0EANgIYIAtBATYCDCALQejgwgA2AgggC0IENwIQIAtBCGpBoITEABC5DQALIAAgAyABKgIAIgMgA5QgASoCBCIDIAOUkpGSOAIMIAAgAioCGCACKgIMIgMgAioCACIHQwAAAACUIgQgAioCBCIIQwAAAACUIgWTIgYgBpIiBpQgByACKgIIIglDAAAAAJQiCiAEkyIEIASSIgSUIAggBSAKkyIFIAWSIgWUk5JDAAAAAJKSOAIIIAAgAioCFCADIASUIAkgBZQgByAGlJOSQwAAAACSkjgCBCAAIAIqAhAgAyAFlCAIIAaUIAkgBJSTkkMAAAAAkpI4AgAgC0EgaiQAC5ACAQF/IwBBEGsiAiQAIAAoAgAhAAJ/IAEtAAtBGHFFBEAgASgCACAAIAEoAgQoAhARAwAMAQsgAkEANgIMIAEgAkEMagJ/AkAgAEGAAU8EQCAAQYAQSQ0BIABBgIAETwRAIAIgAEE/cUGAAXI6AA8gAiAAQRJ2QfABcjoADCACIABBBnZBP3FBgAFyOgAOIAIgAEEMdkE/cUGAAXI6AA1BBAwDCyACIABBP3FBgAFyOgAOIAIgAEEMdkHgAXI6AAwgAiAAQQZ2QT9xQYABcjoADUEDDAILIAIgADoADEEBDAELIAIgAEE/cUGAAXI6AA0gAiAAQQZ2QcABcjoADEECCxD7AgshACACQRBqJAAgAAuvAgIDfwF+IwBBIGsiAiQAAkACQAJAAkAgAARAIABBEGsiBCgCAEEBaiEDIAQgAzYCACADRQ0BIAAoAgAiA0F/Rg0CIAAgA0EBajYCACACIAQ2AhAgAiAANgIMIAIgAEEQaiIDNgIIIAMgAb0iBacgBUIgiKcQuQwiA0UNAyACQRRqIANBiAJqEJEMIAAgACgCAEEBazYCACAEIAQoAgBBAWsiADYCACAARQRAIAJBEGoQ6wwLQRhBBBCRDiIARQ0EIABBADYCCCAAQoGAgIAQNwIAIAAgAikCFDcCDCAAQRRqIAJBHGooAgA2AgAgAkEgaiQAIABBCGoPCxCDDwsACxCEDwALQezPwQBBzQBBvNDBABDRCwALQQRBGEH4ysQAKAIAIgBBzAggABsRAAAAC8UEAwd/D30BfiMAQTBrIgMkAAJAAkACQAJAIAAEQCAAQRBrIgUoAgBBAWohAiAFIAI2AgAgAkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgAgAyAFNgIUIAMgADYCECADIABBEGoiAjYCDCACIAG9IhinIBhCIIinELkMIgJFDQMgA0EYaiIEAn0gAkHYAWoiAioCBCIKIAIqAhAiDJQgAioCCCILQwAAgD8gAioCDCACLQBgIgZBEHEiBxsiDpSTIQ9DAAAAACALIA+UQwAAgD8gAioCACAGQQhxIggbIg0gDkMAAIA/IAIqAhQgBkEgcSICGyIQlCAMIAyUkyIRlCAKIAogEJQgCyAMlJMiEpSTkiIJQwAAAABbDQAaIA8gCZUhEyARIAmVIRQgEowgCZUhFSAOIA2UIAogCpSTIAmVIRYgECANlCALIAuUkyAJlSEXIAogC5QgDCANlJMgCZULOAIQIAQgEzgCCCAEIBU4AgQgBEMAAAAAIBYgAhs4AhQgBEMAAAAAIBcgBxs4AgwgBEMAAAAAIBQgCBs4AgAgACAAKAIAQQFrNgIAIAUgBSgCAEEBayIANgIAIABFBEAgA0EUahDrDAtBJEEEEJEOIgBFDQQgAEEANgIIIABCgYCAgBA3AgAgACADKQIYNwIMIABBFGogA0Egav0AAgD9CwIAIANBMGokACAAQQhqDwsQgw8LAAsQhA8AC0Hsz8EAQc0AQbzQwQAQ0QsAC0EEQSRB+MrEACgCACIAQcwIIAAbEQAAAAukAgIEfwF+IwBBEGsiAyQAAkACQAJAIAAEQCAAQQhrIgQoAgBBAWohAiAEIAI2AgAgAkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgAgAyAENgIMIAMgADYCCCADIABBBGoiAjYCBCACIAG9IganIAZCIIinELoMIgJFDQNEAAAQAAAA8EEhAQJAIAJBQGsoAgAgAkHEAGooAgAiAigCCEEBa0F4cWpBCGoiBSACKAKgAREEAEH/AXFBCUcNACAFIAIQxAsiAkUNACACKAIMQQFruCEBCyAAIAAoAgBBAWs2AgAgBCAEKAIAQQFrIgA2AgAgAEUEQCADQQxqEO4MCyADQRBqJAAgAQ8LEIMPCwALEIQPAAtB3NDBAEHMAEGo0cEAENELAAukAgIEfwF+IwBBEGsiAyQAAkACQAJAIAAEQCAAQQhrIgQoAgBBAWohAiAEIAI2AgAgAkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgAgAyAENgIMIAMgADYCCCADIABBBGoiAjYCBCACIAG9IganIAZCIIinELoMIgJFDQNEAAAQAAAA8EEhAQJAIAJBQGsoAgAgAkHEAGooAgAiAigCCEEBa0F4cWpBCGoiBSACKAKgAREEAEH/AXFBCUcNACAFIAIQxAsiAkUNACACKAIQQQFruCEBCyAAIAAoAgBBAWs2AgAgBCAEKAIAQQFrIgA2AgAgAEUEQCADQQxqEO4MCyADQRBqJAAgAQ8LEIMPCwALEIQPAAtB3NDBAEHMAEGo0cEAENELAAu6AgIBfwl9IwBB8ABrIgYkACAFKgIAIQogBSoCBCELIAUqAgghDCADKgJ8IQcgAyoCgAEhCCADKgKEASEJIAZB0ABqIANByABqKAIANgIAIAZByABqIANBQGspAgA3AwAgBkHsAGogBEEIaigCADYCACAG/QwAAAAAAAAAAAAAAAAAAIA//QsCVCAGIAP9AAIw/QsDOCAGIAQpAgA3AmQgBkEgaiIEIAZBOGoiBSADQZgCahD3ASADKgJwIQ0gAyoCdCEOIAMqAnghDyAGIAkgCZM4AkwgBiAIIAiTOAJIIAYgByAHkzgCRCAGIAwgD5M4AkAgBiALIA6TOAI8IAYgCiANkzgCOCAGQQhqIgMgASACIAQgBRD3BSAAQQhqIANBCGooAgA2AgAgACAGKQIINwIAIAZB8ABqJAALhwIDB38CfQF+IwBBIGsiBEEEaiIFQQhqIghBADYCACAEQgA3AgRBAiACKgIAiyIKIAIqAgSLIgteIgMgAioCCIsgCyAKIAMbXSIJGyIGQQJ0IgcgAWoqAgAhCiAFIAdqIAo4AgAgBUEAQQJBASADGyAJG0ECdCIDaiABIANqKgIAIAIgA2oqAgCYOAIAIAUgBkEBa0ECIAYbQQJ0IgNqIAEgA2oqAgAgAiADaioCAJg4AgAgBEEQaiIBQQhqIgIgCCgCACIFNgIAIAQgBCkCBCIMNwMQIAEgB2ogCow4AgAgAEEIaiAFNgIAIAAgDDcCACAAQRRqIAIoAgA2AgAgACAEKQMQNwIMC7YCAgN/BH0jAEHgAWsiAyQAIAP9DAAAAAAAAAAAAAAAAAAAAAD9CwTQASAD/QwAAAAAAQAAAAIAAAADAAAA/QsEICADQTBqQQBBoAH8CwAgA0EQaiABKAIEIAEoAgggA0EgaiIFIAJBABAyAkAgAioCCCADKgIYkyIGjCAGIAMtABwiBBsiBiAGlCACKgIAIAMqAhCTIgeMIAcgBBsiByAHlCACKgIEIAMqAhSTIgiMIAggBBsiCCAIlJKSIglDAACAKF4EQCADIAYgCZEiBpU4AiggAyAIIAaVOAIkIAMgByAGlTgCICADQQhqIAEgBRCjAiADKAIIIQIgAygCDCEBIAAgA/0AAhD9CwIAIAAgATYCFAwBCyAAIAP9AAIQ/QsCAEEDIQILIAAgAjYCECADQeABaiQAC5wCAwR/AX4BfSMAQSBrIgQkAAJAAkACQAJAIAAEQCAAQQhrIgUoAgBBAWohAyAFIAM2AgAgA0UNASAAKAIAIgNBf0YNAiAAIANBAWo2AgAgBCAFNgIcIAQgADYCGCAEIABBCGoiAzYCFCACQQVNBEAgBEEIaiADIAG9IgenIAdCIIinEJUKIAQoAggiA0UNBCAEKAIMIgYgAygCCE8NBSADKAIEIAZB8ANsaiACQQxsaioCICEIIAAgACgCAEEBazYCACAFIAUoAgBBAWsiADYCACAARQRAIARBHGoQ6gwLIARBIGokACAIDwtB4NTBAEEZEIIPAAsQgw8LAAsQhA8AC0HgzsEAQckAQazPwQAQ0QsAC0G8z8EAEPIOAAucAgMEfwF+AX0jAEEgayIEJAACQAJAAkACQCAABEAgAEEIayIFKAIAQQFqIQMgBSADNgIAIANFDQEgACgCACIDQX9GDQIgACADQQFqNgIAIAQgBTYCHCAEIAA2AhggBCAAQQhqIgM2AhQgAkEFTQRAIARBCGogAyABvSIHpyAHQiCIpxCVCiAEKAIIIgNFDQQgBCgCDCIGIAMoAghPDQUgAygCBCAGQfADbGogAkEMbGoqAiQhCCAAIAAoAgBBAWs2AgAgBSAFKAIAQQFrIgA2AgAgAEUEQCAEQRxqEOoMCyAEQSBqJAAgCA8LQeDUwQBBGRCCDwALEIMPCwALEIQPAAtB4M7BAEHJAEGsz8EAENELAAtBvM/BABDyDgAL4QICBH8BfiMAQSBrIgMkAAJAAkACQAJAIAAEQCAAQRBrIgQoAgBBAWohAiAEIAI2AgAgAkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgAgAyAENgIQIAMgADYCDCADIABBEGoiAjYCCCACIAG9IganIAZCIIinELkMIgVFDQMgA0EUaiECAkAgBS0A5QJFBEAgAiAFKQK8ATcCACACQQhqIAVBxAFqKAIANgIADAELIAJBADYCCCACQgA3AgALIAAgACgCAEEBazYCACAEIAQoAgBBAWsiADYCACAARQRAIANBEGoQ6wwLQRhBBBCRDiIARQ0EIABBADYCCCAAQoGAgIAQNwIAIAAgAykCFDcCDCAAQRRqIANBHGooAgA2AgAgA0EgaiQAIABBCGoPCxCDDwsACxCEDwALQezPwQBBzQBBvNDBABDRCwALQQRBGEH4ysQAKAIAIgBBzAggABsRAAAAC+ECAgR/AX4jAEEgayIDJAACQAJAAkACQCAABEAgAEEQayIEKAIAQQFqIQIgBCACNgIAIAJFDQEgACgCACICQX9GDQIgACACQQFqNgIAIAMgBDYCECADIAA2AgwgAyAAQRBqIgI2AgggAiABvSIGpyAGQiCIpxC5DCIFRQ0DIANBFGohAgJAIAUtAOUCRQRAIAIgBSkCyAE3AgAgAkEIaiAFQdABaigCADYCAAwBCyACQQA2AgggAkIANwIACyAAIAAoAgBBAWs2AgAgBCAEKAIAQQFrIgA2AgAgAEUEQCADQRBqEOsMC0EYQQQQkQ4iAEUNBCAAQQA2AgggAEKBgICAEDcCACAAIAMpAhQ3AgwgAEEUaiADQRxqKAIANgIAIANBIGokACAAQQhqDwsQgw8LAAsQhA8AC0Hsz8EAQc0AQbzQwQAQ0QsAC0EEQRhB+MrEACgCACIAQcwIIAAbEQAAAAvIAgIBfwJ9IwBBIGsiAyQAAkACQAJAAkAgASgCCEUNACABKAIEIgEoAjxB/////wNxIAEoAhxB/////wNxag4CAAECCyADQv////v///+/fzcDECAD/Qz//39///9/f///f3///3///QsEAAwCCyADQRRqIAFBGGooAgA2AgAgAyABKQMANwMAIAMgASkCEDcCDCADIAFBCGooAgA2AggMAQsgAyABKgIYIgQgASoCOCIFIAQgBWAbOAIUIAMgASoCFCIEIAEqAjQiBSAEIAVgGzgCECADIAEqAhAiBCABKgIwIgUgBCAFYBs4AgwgAyABKgIIIgQgASoCKCIFIAQgBV8bOAIIIAMgASoCBCIEIAEqAiQiBSAEIAVfGzgCBCADIAEqAgAiBCABKgIgIgUgBCAFXxs4AgALIAAgAyACELsDIANBIGokAAu2AgIFfwF+IwBBQGoiAiQAIAEoAgBBgICAgHhGBEAgASgCDCEEIAJBHGoiBUEIaiIGQQA2AgAgAkKAgICAEDcCHCACQShqIgNBCGogBCgCACIEQQhqKQIANwMAIANBEGogBEEQaikCADcDACACIAQpAgA3AyggBUHYicQAIAMQuAMaIAJBGGogBigCACIDNgIAIAIgAikCHCIHNwMQIAFBCGogAzYCACABIAc3AgALIAEpAgAhByABQoCAgIAQNwIAIAJBCGoiAyABQQhqIgEoAgA2AgAgAUEANgIAIAIgBzcDAEEMQQQQkQ4iAUUEQEEEQQxB+MrEACgCACIAQcwIIAAbEQAAAAsgASACKQMANwIAIAFBCGogAygCADYCACAAQcyNxAA2AgQgACABNgIAIAJBQGskAAuRAgEFfyMAQRBrIgUkAAJAAkACQCAARQ0AIABBCGsiBigCAEEBaiEDIAYgAzYCACADRQ0BIAAoAgAiA0F/Rg0CIAAgA0EBajYCACAFIAY2AgwgBSAANgIIIAUgAEEEajYCBCACRQ0AIAJBCGsiAygCACIHQQFqIQQgAyAENgIAIARFDQEgAigCAA0CIAJBfzYCACABIAAoAkwiBEkEQCACQQRqIAAoAkggAUH0AGxqQfQA/AoAACAAKAJMIQQLIAJBADYCACADIAc2AgAgBigCACECIAAgACgCAEEBazYCACAGIAJBAWsiADYCACAARQRAIAVBDGoQ5AsLIAVBEGokACABIARJDwsQgw8LAAsQhA8AC94CAgV9A3sgACABKgIEIgVDq6qqPpQgASoCECIDQ6uqqj6U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ayIANgIAIABFBEAgA0GMCGoQpg0LQQAhACADKAIAQQJHBEAgA0GQCGogA0GACPwKAABBoAhBEBCRDiIARQ0EIABBADYCECAAQoGAgIAQNwMAIABBFGogA0GECGpBjAj8CgAAIABBEGohAAsgA0GQEGokACAADwsQgw8LAAsQhA8AC0EQQaAIQfjKxAAoAgAiAEHMCCAAGxEAAAALiwIBCX8gACIHKAIIIgIgAUkEQCACIQMgASACayIFIAAoAgAgAmtLBEAgACACIAVBBEEEENgGIAAoAgghAwsgBygCBCADQQJ0aiEAAkAgBUECSQRAIAAhBAwBCwJAAkAgASACQX9zaiIIQQRJBEAgACEEQQEhCQwBCyAIQXxxIgZBAXIhCSAAIAZBAnRqIQQgBiEKA0AgAP0MAAAAAAAAAAAAAAAAAAAAAP0LAgAgAEEQaiEAIApBBGsiCg0ACyAGIAhGDQELIAIgCWogAWshAANAIARBADYCACAEQQRqIQQgAEEBaiIADQALCyADIAVqQQFrIQMLIARBADYCACADQQFqIQELIAcgATYCCAu2AgICfQZ/IAAoAggiA0UEQEP//39/DwsgACgCBCEFIANBAXEhBgJAIANBAUYEQEEAIQND//9/fyEBDAELIAVBxABqIQAgA0F+cSEHQQAhA0P//39/IQEDQCAAQShrKAIAIABBJGsoAgAiBCgCCEEBa0F4cWpBCGogBCgCqAERCwAhAiAAKAIAIQQgAEEEaygCACEIIABByABqIQAgASABIAIgASACXRsgAiACXBsiAiACIAggBCgCCEEBa0F4cWpBCGogBCgCqAERCwAiASABIAJeGyABIAFcGyEBIAcgA0ECaiIDRw0ACwsgBgRAIAUgA0EkbGoiA0EgaigCACEAIAEgASADQRxqKAIAIAAoAghBAWtBeHFqQQhqIAAoAqgBEQsAIgIgASACXRsgAiACXBshAQsgAQu2AgIDfQZ/IAAoAggiBEUEQEP//39/DwsgACgCBCEGIARBAXEhBwJAIARBAUYEQEEAIQRD//9/fyEBDAELIAZBxABqIQAgBEF+cSEIQQAhBEP//39/IQEDQCAAQShrKAIAIABBJGsoAgAiBSgCCEEBa0F4cWpBCGogBSgCrAERCwAhAiAAKAIAIQUgAEEEaygCACEJIABByABqIQAgCSAFKAII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AkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgACfyAAKAIMIAFNBEAgACACNgIAIAQgBTYCAEEADAELIAAoAgggAUHUAWxqIgEpAighBiABQTBqKAIAIQEgACACNgIAIANBCGoiAiABNgIAIAQgBTYCACADIAY3AwBBGEEEEJEOIgBFDQQgAEEANgIIIABCgYCAgBA3AgAgACADKQMANwIMIABBFGogAigCADYCACAAQQhqCyEAIANBEGokACAADwsQgw8LAAsQhA8AC0EEQRhB+MrEACgCACIAQcwIIAAbEQAAAAv4AQIDfwZ9AkAgASgCCEUEQAwBCyABKAIEIgNBACACKgIIIgYgAyoCGF8bQQAgAioCBCIHIAMqAhRfG0EAIAIqAgAiCCADKgIQXxtBACACKgIUIgkgAyoCCGAbQQAgAioCECIKIAMqAgRgG0EAIAIqAgwiCyADKgIAYBshBSADKAI8Qf////8DcUUNACADKgIgIAtfIAMqAiQgCl9xIAMqAiggCV9xIAMqAjAgCGBxIAMqAjQgB2BxIAMqAjggBmBxIQQgA0EgaiEDCyAAIAU2ApABIAAgATYCiAEgACACNgKMASAAIAQ2AoQBIAAgAzYCBCAAQQA2AgALqwIBAn0CQAJAAkAgASgCCEUNACABKAIEIgEoAjxB/////wNxIAEoAhxB/////wNxag4CAAECCyAAQv////v///+/fzcCECAA/Qz//39///9/f///f3///3///QsCAA8LIAAgASkCADcCACAAIAEpAhA3AgwgAEEIaiABQQhqKAIANgIAIABBFGogAUEYaigCADYCAA8LIAAgASoCGCICIAEqAjgiAyACIANgGzgCFCAAIAEqAhQiAiABKgI0IgMgAiADYBs4AhAgACABKgIQIgIgASoCMCIDIAIgA2AbOAIMIAAgASoCCCICIAEqAigiAyACIANfGzgCCCAAIAEqAgQiAiABKgIkIgMgAiADXxs4AgQgACABKgIAIgIgASoCICIDIAIgA18bOAIAC/wBAgN/AX4jAEEQayIEJAACQAJAAkAgAARAIABBCGsiBSgCAEEBaiEDIAUgAzYCACADRQ0BIAAoAgAiA0F/Rg0CIAAgA0EBajYCACAEIAU2AgwgBCAANgIIIAQgAEEIaiIDNgIEIAJBBU0EQCADIAG9IganIAZCIIin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AWohASADIAE2AgAgAUUNASAAKAIAIgFBf0YNAiAAIAFBAWo2AgAgACgCBCIFQZABaigCACEGIAUpAogBIQcgACABNgIAIAJBCGoiASAGNgIAIAMgBDYCACACIAc3AwBBGEEEEJEOIgBFDQMgAEEANgIIIABCgYCAgBA3AgAgACACKQMANwIMIABBFGogASgCADYCACACQRBqJAAgAEEIag8LEIMPCwALEIQPAAtBBEEYQfjKxAAoAgAiAEHMCCAAGxEAAAAL6wECBn8BfiMAQRBrIgIkAAJAAkACQCAABEAgAEEIayIDKAIAIgRBAWohASADIAE2AgAgAUUNASAAKAIAIgFBf0YNAiAAIAFBAWo2AgAgACgCBCIFQZwBaigCACEGIAUpApQBIQcgACABNgIAIAJBCGoiASAGNgIAIAMgBDYCACACIAc3AwBBGEEEEJEOIgBFDQMgAEEANgIIIABCgYCAgBA3AgAgACACKQMANwIMIABBFGogASgCADYCACACQRBqJAAgAEEIag8LEIMPCwALEIQPAAtBBEEYQfjKxAAoAgAiAEHMCCAAGxEAAAAL2AECAX8BfSAAKgIAIQMgASgCACICKAIIIQEgAigCACABa0EDTQRAIAIgAUEEQQFBARDWBiACKAIIIQELIAIoAgQgAWogAzgAACACIAFBBGoiATYCCCAAKgIEIQMgAigCACABa0EDTQRAIAIgAUEEQQFBARDWBiACKAIIIQELIAIoAgQgAWogAzgAACACIAFBBGoiATYCCCAAKgIIIQMgAigCACABa0EDTQRAIAIgAUEEQQFBARDWBiACKAIIIQELIAIgAUEEajYCCCACKAIEIAFqIAM4AABBAAvBAQIFfwF+IwBBIGsiAiQAQQQgACgCACIFQQF0IgQgBEEETRsiBK1CDH4iB0IgiEIAUgRAQQBBACABENcNAAsCQCAHpyIGQfz///8HTQR/IAIgBQR/IAIgBUEMbDYCHCACIAAoAgQ2AhRBBAVBAAs2AhggAkEIakEEIAYgAkEUahDiCSACKAIIQQFHDQEgAigCECEDIAIoAgwFQQALIAMgARDXDQALIAIoAgwhASAAIAQ2AgAgACABNgIEIAJBIGokAAvBAQIFfwF+IwBBIGsiAiQAQQQgACgCACIFQQF0IgQgBEEETRsiBK1CGH4iB0IgiEIAUgRA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ACADQQxqIQIgAEEARyEEAkACQEGAAkHAABCRDiIABEAgAEEAOgDIASAAQoGAgIAQNwPAASAAQQE6AJwBIABCBDcClAEgAEIANwKMASAAQoCAgIDAADcChAEgAEEAOgCAASAAQgA3A0AgAEIANwMAQYACQcAAEJEOIgFFDQIgAUEAOgDIASABQoGAgIAQNwPAASABQQE6AJwBIAFCBDcClAEgAUIANwKMASABQoCAgIDAADcChAEgAUEAOgCAASABQgA3A0AgAUIANwMAIAIgBDoAICACIAE2AhwgAkEBNgIYIAIgADYCFCACQQE2AhAgAiABNgIMIAJBATYCCCACIAA2AgQgAkEBNgIADAELDAELQTBBBBCRDiIARQRAQQRBMEH4ysQAKAIAIgBBzAggABsRAAAACyAAQQA2AgggAEKBgICAEDcCACAAIAP9AAIM/QsCDCAAQRxqIANBHGr9AAIA/QsCACAAQSxqIANBLGooAgA2AgAgA0EwaiQAIABBCGoPC0HAAEGAAkH4ysQAKAIAIgBBzAggABsRAAAAC5ABAQd9IAIqAgghBCACKgIEIQUgAioCACEGIAEqAgghByABKgIEIQggASoCACEJIAEqAgwhCkEQQQQQkQ4iAUUEQEEEQRBB+MrEACgCACIAQcwIIAAbEQAAAAsgASAKOAIMIAEgByAElDgCCCABIAggBZQ4AgQgASAJIAaUOAIAIABBtNjDADYCBCAAIAE2AgALgAECAX8BfSMAQSBrIgIkACABKgIIIgNDAAAAAGBFBEAgAkEANgIYIAJBATYCDCACQejgwgA2AgggAkIENwIQIAJBCGpBoITEABC5DQALIABBADYCCCAAQgA3AgAgACADIAEqAgAiAyADlCABKgIEIgMgA5SSkZI4AgwgAkEgaiQAC8oGAgd/A3sjAEHQBmsiAiQAIwBBkAFrIgAkACACQfwCaiEEIwBBIGsiAyQAIANBADYCGCADQQhqQRBBgAwgA0EUahDiCSADKAIIQQFGBEAgAygCDCADKAIQQcCLwgAQ1w0AC/0MAAAAAAEAAAACAAAAAwAAACEIQQQhBSADKAIMIgYhAQNAIAFBADYCACABQYAJakEANgIAIAFBgAZqQQA2AgAgAUGAA2pBADYCACABQYQJaiAI/QwDAAAAAwAAAAMAAAADAAAA/TgiCf0MAQAA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QQEhBEHWrcQAQdetxAAgCUEASCIAG0HWrcQAQQEgABsgChshCCAJQR92IApyIQcgBkEERwRAIAJBAzYCmAggAkHbrcQANgKUCCACQQI7AZAIIAJBkAhqDAMLQQIhBCACQQI7AZAIIAVFBEBBASEEIAJBATYCmAggAkHercQANgKUCCACQZAIagwDCyACIAU2AqAIIAJBADsBnAggAkECNgKYCCACQa2txAA2ApQIIAJBkAhqDAILQdatxABBASAJQQBIIgAbIQNB1q3EAEHXrcQAIAAbIQggCUEfdiEEIAJBkAhqIgcgAkHQCGogAkEQaiAGQQR2QRVqIgZBgIB+QQAgBWsgBcFBAEgbIgAQnwIgAMEhAAJAIAIoApAIBEAgAkHICGogB0EIaigCADYCACACIAIpApAINwPACAwBCyACQcAIaiACQdAIaiACQRBqIAYgABA5CyAIIAMgChshCCAEIApyIQcgACACLgHICCIASARAIAJBCGogAigCwAggAigCxAggACAFIAJBkAhqELUFIAIoAgwhBCACKAIIDAILQQIhBCACQQI7AZAIIAVFBEBBASEEIAJBATYCmAggAkHercQANgKUCCACQZAIagwCCyACIAU2AqAIIAJBADsBnAggAkECNgKYCCACQa2txAA2ApQIIAJBkAhqDAELIAJBAzYCmAggAkHYrcQANgKUCCACQQI7AZAIQQEhCEEAIQdBASEEIAJBkAhqCyEAIAIgBDYCzAggAiAANgLICCACIAc2AsQIIAIgCDYCwAggASACQcAIahCvAyEAIAJB8AhqJAAgAAtpAQR+IAEoAgAgAkFsbGoiAUEUaykCACAAKAIAKAIAKQMAhSIDQiCIIgQgAUEIazUCAEK307CFDIUiBX4gAUEMazUCAELdofHLDIUiBiADQv////8PgyIDfoUgAyAFfiAEIAZ+hUIgiYULbwEEfiABKAIAIAJBBHRrIgFBDGspAABCl5Kcqtu2tcI/hSIDQiCIIgUgAUEQaykAACAAKAIAKAIAKQMAQjSJhSIEQiCIIgZ+IANC/////w+DIgMgBEL/////D4MiBH6FIAMgBn4gBCAFfoVCIImFC24BB30gAEICNwIQIAAgASoCACIEIAIqAgAiBZQgASoCBCIGIAIqAgQiB5SSIAEqAggiCCACKgIIIgmUkiIDQwAAAABf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fwJ+IwBBIGsiAiQAIAJBCGogACABKAJgEQAAIAJBEGogAigCCCIAIAIoAgwoAgwRAAAgAikDGCEDIAIpAxAhBCACQSBqJAAgAEEAIARCj9iZz4j1zJ4HhSADQo34tqK32v+FyACFhFAbC2sCAX8CfiMAQSBrIgIkACACQQhqIAAgASgCYBEAACACQRBqIAIoAggiACACKAIMKAIMEQAAIAIpAxghAyACKQMQIQQgAkEgaiQAIABBACAEQuadteiA48+HMYUgA0Lw4py6utTs2yaFhFAbC2sCAX8CfiMAQSBrIgIkACACQQhqIAAgASgCZBEAACACQRBqIAIoAggiACACKAIMKAIMEQAAIAIpAxghAyACKQMQIQQgAkEgaiQAIABBACAEQuadteiA48+HMYUgA0Lw4py6utTs2yaFhFAbC20CAX8CfiMAQSBrIgIkACACQQhqIAAgASgCYBEAACACQRBqIAIoAggiACACKAIMKAIMEQAAIAIpAxghAyACKQMQIQQgAkEgaiQAIABBACAEQt6Fisa2mpP80ACFIANChcGXiNPx7PrkAIWEUBsLbQIBfwJ+IwBBIGsiAiQAIAJBCGogACABKAJgEQAAIAJBEGogAigCCCIAIAIoAgwoAgwRAAAgAikDGCEDIAIpAxAhBCACQSBqJAAgAEEAIARCr6ns6fSs26rgAIUgA0LLr+Dt64uH8Kt/hYRQGwtsAgF/An4jAEEgayICJAAgAkEIaiAAIAEoAmARAAAgAkEQaiACKAIIIgAgAigCDCgCDBEAACACKQMYIQMgAikDECEEIAJBIGokACAAQQAgBELO24DRiLeklRyFIANC5vTWnZL/juehf4WEUBsLbAIBfwJ+IwBBIGsiAiQAIAJBCGogACABKAJkEQAAIAJBEGogAigCCCIAIAIoAgwoAgwRAAAgAikDGCEDIAIpAxAhBCACQSBqJAAgAEEAIARCztuA0Yi3pJUchSADQub01p2S/47noX+FhFAbC2sCAX8CfiMAQSBrIgIkACACQQhqIAAgASgCYBEAACACQRBqIAIoAggiACACKAIMKAIMEQAAIAIpAxghAyACKQMQIQQgAkEgaiQAIABBACAEQpTFqNTN/JyWQ4UgA0L2+IbMtIfkyQKFhFAbC2wCAX8CfiMAQSBrIgIkACACQQhqIAAgASgCYBEAACAC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ATgCNCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATgCOCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiASgCACIDQQFqIQIgASACNgIAIAJFDQEgACgCAA0CIABBAjYCICABIAM2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATYCNCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATYCOCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATgCBCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATgCECACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATgCJCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATgCLCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATYCMCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATYCPCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATYCQCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAg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AgQoAhQREQANAEEADwsgACgCCCIERQRAQQEPCyAEIAEgAiADIAAoAgwoAhgREQALRgEBfyMAQTBrIgUkACAFQQhqIAEgAiADIAQQdAJAIAUoAhxBBEcEQCAAIAX9AAII/QsCAAwBCyAAQQI6AAwLIAVBMGokAAtGAQF/IAAoAgAiACgCCCICIAAoAgBGBEAgACACQQFBAUEBENYGIAAoAgghAgsgACACQQFqNgIIIAAoAgQgAmogAToAAEEAC1AAIAEoAgAgAigCACADKAIAIAQoAgAQDiEBQezKxAAoAgAhAkHoysQAKAIAIQNB6MrEAEIANwIAIAAgAiABIANBAUYiARs2AgQgACABNgIACzwBAX8jAEEgayICJAAgAUEBQQFBACAAKQMAIAJBDGoiABDxBSIBIABqQRQgAWsQ2QIhACACQSBqJAAgAAs9AQF/AkAgASAAKAKMA08NACAAKAKIAyABQYADbGoiACgCAEEBRw0AIABBEGpBACAAKAIEIAJGGyEDCyADCzsBAX8CQCABIAAoAhBPDQAgACgCDCABQbABbGoiACgCAEEBRw0AIABBEGpBACAAKAIEIAJGGyEDCyADC0ABAX1DAAAAACABKgIAIgMgA5QgASoCBCIDIAOUkiABKgIIIgMgA5SSkSAAKgIAkyIDIANDAAAAAF0bIAMgAhsLPwEBfyMAQSBrIgIkACACQQhqIAAoAgAgAkEWahDMBSABQQFBAUEAIAIoAgggAigCDBDZAiEAIAJBIGokACAAC5ENAwh/BX4BfCABKAIIIgdBgICAAXEhBSAAKwMAIQ8gB0GAgICAAXFFBEAgBUEARyEEIwBBgAFrIgMkACAPvSEKAn9BAyAPmUQAAAAAAADwf2ENABpBAiAKQoCAgICAgID4/wCDIgtCgICAgICAgPj/AFENABogCkL/////////B4MiDkKAgICAgICACIQgCkIBhkL+////////D4MgCkI0iKdB/w9xIgYbIgxCAYMhDSALUARAQQQgDlANARogBkGzCGshBkIBIQsgDVAMAQtCgICAgICAgCAgDEIBhiAMQoCAgICAgIAIUSIAGyEMQgJCASAAGyELQct3Qcx3IAAbIAZqIQYgDVALIQAgAyAGOwF4IAMgCzcDcCADQgE3A2ggAyAMNwNgIAMgADoAegJ/AkACQAJAAkACQCAAQQFNBEAgA0EgaiIGIANB4ABqIANBD2oQjQFB1q3EAEEBIApCAFMiABshBUHWrcQAQdetxAAgABshByAKQj+IpyEAIAMoAiBFDQEgA0HYAGogBkEIaigCADYCACADIAMpAiA3A1AMAgsgAEECRg0DQQEhBkHWrcQAQdetxAAgCkIAUyIHG0HWrcQAQQEgBxsgBBshBSAKQj+IpyAEciEHIABB/wFxQQRGDQIgA0EDNgIoIANB263EADYCJCADQQI7ASAgA0EgagwFCyADQdAAaiADQeAAaiADQQ9qEDMLIAcgBSAEGyEFIAAgBHIhByADIAMoAlAgAygCVCADLwFYQQAgA0EgahC1BSADKAIEIQYgAygCAAwDCyADQQI7ASAMAQsgA0EDNgIoIANB2K3EADYCJCADQQI7ASBBASEFQQAhB0EBIQYgA0EgagwBCyADQQE2AiggA0HercQANgIkIANBIGoLIQAgAyAGNgJcIAMgADYCWCADIAc2AlQgAyAFNgJQIAEgA0HQAGoQrwMhACADQYABaiQAIAAPCyAFQQBHIQggAS8BDiEHIwBB8AhrIgIkACAPvSEKAn9BAyAPmUQAAAAAAADwf2ENABpBAiAKQoCAgICAgID4/wCDIgtCgICAgICAgPj/AFENABogCkL/////////B4MiDkKAgICAgICACIQgCkIBhkL+////////D4MgCkI0iKdB/w9xIgQbIgxCAYMhDSALUARAQQQgDlANARogBEGzCGshBEIBIQsgDVAMAQtCgICAgICAgCAgDEIBhiAMQoCAgICAgIAIUSIAGyEMQgJCASAAGyELQct3Qcx3IAAbIARqIQQgDVALIQAgAiAEOwHoCCACIAs3A+AIIAJCATcD2AggAiAMNwPQCCACIAA6AOoIAn8CQAJAIABBAU0EQEF0QQUgBMEiAEEASBsgAGwiBUHA/QBJDQFB5a3EAEElQYyuxAAQ1gwACyAAQQJGDQFBASEEQdatxABB163EACAKQgBTIgUbQdatxABBASAFGyAIGyEGIApCP4inIAhyIQUgAEH/AXFBBEcEQCACQQM2ApgIIAJB263EADYClAggAkECOwGQCCACQZAIagwDC0ECIQQgAkECOwGQCCAHRQRAQQEhBCACQQE2ApgIIAJB3q3EADYClAggAkGQCGoMAwsgAiAHNgKgCCAC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IAFBAnRBBBDoDgsgACgCFCIBBEAgACgCGCABQQN0QQQQ6A4LCz8BAX8gACgCACEAIAEoAggiAkGAgIAQcUUEQCACQYCAgCBxRQRAIAAgARC8DA8LIAAgARCUCg8LIAAgARCTCgs2AQF/IAAoAgAiAQRAIAAoAgQgAUECdEEEEOgOCyAAKAIMIgEEQCAAKAIQIAFBAnRBBBDoDgsLPAEBfUMAAAAAIAAqAgAgASoCAJQgACoCBCABKgIElJIgACoCCCABKgIIlJIiAyADQwAAAABdGyADIAIbCzgBAX0gAEEANgIIIABCADcCACAAIAEqAgAiAiAClCABKgIEIgIgApSSIAEqAggiAiAClJKROAIMCz0BAn0gACABKgIEIgI4AhQgACACOAIMIAAgASoCAIsiAzgCECAAIAKMIgI4AgggACACOAIAIAAgA4w4AgQLxQMBA38gACgCACECIAEoAggiAEGAgIAQcUUEQCAAQYCAgCBxRQRAIwBBEGsiACQAQQMhAyACLQAAIgIhBCACQQpPBEAgACACIAJB5ABuIgRB5ABsa0H/AXFBAXQiA0HWscQAai0AADoADyAAIANB1bHEAGotAAA6AA5BASEDCyAERSACQQBHcUUEQCADQQFrIgMgAEENamogBEEBdEH+AXFB1rHEAGotAAA6AAALIAFBAUEBQQAgAEENaiADakEDIANrENkCIQEgAEEQaiQAIAEPCyMAQYABayIEJAAgAi0AACEAQQAhAgNAIAIgBGpB/wBqIABBD3EiA0EwciADQTdqIANBCkkbOgAAIAJBAWshAiAAIgNBBHYhACADQQ9LDQALIAFBAUHTscQAQQIgAiAEakGAAWpBACACaxDZAiEAIARBgAFqJAAgAA8LIwBBgAFrIgQkACACLQAAIQBBACECA0AgAiAEakH/AGogAEEPcSIDQTByIANB1wBqIANBCkkbOgAAIAJBAWshAiAAIgNBBHYhACADQQ9LDQALIAFBAUHTscQAQQIgAiAEakGAAWpBACACaxDZAiEAIARBgAFqJAAgAAvRAwEGfyMAQRBrIgMkACADIAA2AgwgAEEMaiEEIANBDGohBSMAQSBrIgAkAAJAIAEoAgAiBkHQicQAQQggASgCBCgCDCIHEQUABEBBASECDAELAkAgAS0ACkGAAXFFBEBBASECIAZBzbHEAEEBIAcRBQANAiAEIAFBvInEACgCABEDAEUNAQwCCyAGQc6xxABBAiAHEQUABEBBASECDAILQQEhAiAAQQE6AA8gAEGkscQANgIUIAAgASkCADcCACAAIAEpAgg3AhggACAAQQ9qNgIIIAAgADYCECAEIABBEGpBvInEACgCABEDAA0BIAAoAhBByLHEAEECIAAoAhQoAgwRBQANAQsCQCABLQAKQYABcUUEQCABKAIAQcOxxABBAiABKAIEKAIMEQUADQIgBSABQcyJxAAoAgARAwBFDQEMAgsgAEEBOgAPIABBpLHEADYCFCAAIAEpAgA3AgAgACABKQIINwIYIAAgAEEPajYCCCAAIAA2AhAgBSAAQRBqQcyJxAAoAgARAwANASAAKAIQQcixxABBAiAAKAIUKAIMEQUADQELIAEoAgBBo67EAEEBIAEoAgQoAgwRBQAhAgsgAEEgaiQAIANBEGokACACCzIBAX8gACABIAIQkgMEfyAAIAIpAgA3AgQgAEEMaiACQQhqKAIANgIAQQEFQQALNgIACy8BAn8jAEHgAGsiAyQAIANBCGoiBCAAIAEQ6QIgAiAEQdgA/AoAACADQeAAaiQACzgAAkAgAkGAgMQARg0AIAAgAiABKAIQEQMARQ0AQQEPCyADRQRAQQAPCyAAIAMgBCABKAIMEQUACzgBAX8gACgCACIAQQxqEIIKAkAgAEF/Rg0AIAAgACgCBEEBayIBNgIEIAENACAAQcwAQQQQ6A4LCzgBAX8gACgCACIAQRBqEO0JAkAgAEF/Rg0AIAAgACgCBEEBayIBNgIEIAENACAAQbABQQgQ6A4LCzgBAX8gACgCACIAQQxqEM4HAkAgAEF/Rg0AIAAgACgCBEEBayIBNgIEIAENACAAQdAAQQQQ6A4LCzgBAX8gACgCACIAQRBqELMIAkAgAEF/Rg0AIAAgACgCBEEBayIBNgIEIAENACAAQegAQQgQ6A4LCzgBAX8gACgCACIAQSBqEOsHAkAgAEF/Rg0AIAAgACgCBEEBayIBNgIEIAENACAAQcADQRAQ6A4LCzgBAX8gACgCACIAQRBqEK4BAkAgAEF/Rg0AIAAgACgCBEEBayIBNgIEIAENACAAQbgFQQgQ6A4LCzYBAX8gACgCACIAQQxqEGICQCAAQX9GDQAgACAAKAIEQQFrIgE2AgQgAQ0AIABBMEEEEOgOCws4AQF/IAAoAgAiAEEMahCjCAJAIABBf0YNACAAIAAoAgRBAWsiATYCBCABDQAgAEHAAEEEEOgOCws4AQF/IAAoAgAiAEEQahDJCQJAIABBf0YNACAAIAAoAgRBAWsiATYCBCABDQAgAEHoAEEIEOgOCws4AQF/IAAoAgAiAEEQahDnBQJAIABBf0YNACAAIAAoAgRBAWsiATYCBCABDQAgAEGwAkEIEOgOCws2AQF/IwBBEGsiAiQAIAJBCGogARDTDCACKAIMIQEgACACKAIINgIAIAAgATYCBCACQRBqJAALNgEBfyMAQRBrIgIkACACQQhqIAEQigwgAigCDCEBIAAgAigCCDYCACAAIAE2AgQgAkEQaiQACy4BAX8gACgCBCIBBEAgACgCACABQRRsQRtqQXhxIgBrIAAgAWpBCWpBCBDoDgsLLgEBfyAAKAIEIgEEQCAAKAIAIAFBHGxBI2pBeHEiAGsgACABakEJakEIEOgOCwsuAQF/IAAoAgQiAQRAIAAoAgAgAUEMbEETakF4cSIAayAAIAFqQQlqQQgQ6A4LCzMBAX8gACgCACIBBEAgACgCBCABQQJ0QQQQ6A4LIAAoAhQiAQRAIAAoAhggAUEBEOgOCws5AQF/IwBBEGsiBSQAIAUgAjYCDCAFIAE2AgggACAFQQhqQfTZwgAgBUEMakH02cIAIAMgBBCyBQALOQEBfyMAQRBrIgQkACAEIAE2AgwgBCAANgIIQQAgBEEIakGY2sIAIARBDGpBmNrCACACIAMQsgUACzYBAX8jAEEQayICJAAgAkEIaiABEPQEIAIoAgwhASAAIAIoAgg2AgAgACABNgIEIAJBEGokAAs2AQF/IwBBEGsiAiQAIAJBCGogARCHAyACKAIMIQEgACACKAIINgIAIAAgATYCBCACQRBqJAALPAEBfyMAQRBrIgMkACADQdirwQA2AgwgAyAANgIIQQAgA0EIakGQicQAIANBDGpBkInEACABIAIQsgUACzkBAX8jAEEQayIEJAAgBCABNgIMIAQgADYCCEEAIARBCGpB8K/EACAEQQxqQfCvxAAgAiADELIFAAs4AQF/IAEoAggiAkGAgIAQcUUEQCACQYCAgCBxRQRAIAAgARC8DA8LIAAgARCUCg8LIAAgARCTCgtcAQF/QRxBBBCRDiIARQRAQQRBHEH4ysQAKAIAIgBBzAggABsRAAAACyAAQoGAgIAQNwIAIAD9DAAAAAAAAAAAAAAAAAAAAAD9CwIIIABBgICA/AM2AhggAEEIagsvAQF9IAEqAgAiAiAClCABKgIEIgIgApSSIAEqAggiAiAClJIgACoCACICIAKUXwswAQF/IwBBIGsiAyQAIANBCGogACABIAJBABCaASADKAIIIQAgA0EgaiQAIABBBEcLMAEBfyMAQSBrIgMkACADQQhqIAAgASACQQEQ9AEgAygCCCEAIANBIGokACAAQQRHCzABAX8jAEEgayIDJAAgA0EIaiAAIAEgAkEBEKoCIAMoAgghACADQSBqJAAgAEEERwswAQF/IwBBEGsiAyQAIANBCGogACABIAJBARC1ASADKAIIIQAgA0EQaiQAIABBAUYLMAEBfyMAQSBrIgMkACADQQhqIAAgASACQQEQiwIgAygCCCEAIANBIGokACAAQQRHCzABAX8jAEEgayIDJAAgA0EIaiAAIAEgAkEBEKsCIAMoAgghACADQSBqJAAgAEEERwswAQF/IwBBIGsiAyQAIANBCGogACABIAJBARDbASADKAIIIQAgA0EgaiQAIABBBEcLMAEBfyMAQSBrIgMkACADQQhqIAAgASACQQEQvAEgAygCCCEAIANBIGokACAAQQRHCzABAX8jAEEgayIDJAAgA0EIaiAAIAEgAkEBEO4BIAMoAgghACADQSBqJAAgAEEERwswAQF/IwBBIGsiAyQAIANBCGogACABIAJBARCMAiADKAIIIQAgA0EgaiQAIABBBEcLMAEBfyMAQSBrIgMkACADQQhqIAAgASACQQEQpgIgAygCCCEAIANBIGokACAAQQRHCzABAX8jAEEgayIDJAAgA0EIaiAAIAEgAkEBEJsCIAMoAgghACADQSBqJAAgAEEERwswAQF/IwBBEGsiAyQAIANBCGogACABIAJBARCKASADKAIIIQAgA0EQaiQAIABBAUYLMAEBfyMAQSBrIgMkACADQQhqIAAgASACQQEQmAEgAygCCCEAIANBIGokACAAQQRHCzABAX8jAEEQayIDJAAgA0EIaiAAIAEgAkEBEJ4BIAMoAgghACADQRBqJAAgAEEBRgtIAQF/IAEoAgAhAkEEQQQQkQ4iAUUEQEEEQQRB+MrEACgCACIAQcwIIAAbEQAAAAsgASACNgIAIABB/JXDADYCBCAAIAE2AgALOgEBfyMAQSBrIgAkACAAQQA2AhggAEEBNgIMIABBoIzEADYCCCAAQgQ3AhAgAEEIakGojMQAELkNAAs6AQF/IwBBIGsiACQAIABBADYCGCAAQQE2AgwgAEHojsQANgIIIABCBDcCECAAQQhqQfCOxAAQuQ0ACzcBAX8jAEEgayIBJAAgAUEANgIYIAFBATYCDCABQeTDxAA2AgggAUIENwIQIAFBCGogABC5DQALOwEBf0EBIQICQCAAIAEQ5QUNACABKAIAQbyuxABBAiABKAIEKAIMEQUADQAgAEEEaiABEOUFIQILIAILOgEBfyMAQSBrIgAkACAAQQA2AhggAEEBNgIMIABB6LTEADYCCCAAQgQ3AhAgAEEIakHwtMQAELkNAAueAgEGfyMAQRBrIgIkACACIAA2AgwgAkEMaiEEIwBBIGsiACQAQQEhBQJAIAEoAgAiA0H80sMAQQYgASgCBCIHKAIMIgYRBQANAAJAIAEtAApBgAFxRQRAIANBzbHEAEEBIAYRBQANAiAEIAFBgNrCACgCABEDAEUNAQwCCyADQc6xxABBAiAGEQUADQEgAEEBOgAPIAAgBzYCBCAAIAM2AgAgAEGkscQANgIUIAAgASkCCDcCGCAAIABBD2o2AgggACAANgIQIAQgAEEQakGA2sIAKAIAEQMADQEgACgCEEHIscQAQQIgACgCFCgCDBEFAA0BCyABKAIAQaOuxABBASABKAIEKAIMEQUAIQULIABBIGokACACQRBqJAAgBQsuACMAQRBrIgQkACAEIAApAgA3AgggBEEIaiABIAIgAyAEIAQQ4wEgBEEQaiQACy4AIwBBEGsiBCQAIAQgACkCADcCCCAEQQhqIAEgAiADIAQgBBCJAiAEQRBqJAALLgAjAEEQayIEJAAgBCAAKQIANwIIIARBCGogASACIAMgBCAEEIsEIARBEGokAAsuACMAQRBrIgQkACAEIAApAgA3AgggBEEIaiABIAIgAyAEIAQQ9gMgBEEQaiQACy4AIwBBEGsiBCQAIAQgACkCADcCCCAEQQhqIAEgAiADIAQgBBCgASAEQRBqJAALNgEBfSAAIAEqAgAiAjgCFCAAIAI4AhAgACACOAIMIAAgAowiAjgCCCAAIAI4AgQgACACOAIAC0wBAn0gACoCBCAAKgIAELYPIgFDAAAAAGBFBEBBiLvDAEEoQbC7wwAQ1gwAC0PbD8k/IAGTIgIgAiABIAGSIgEgASACXhsgASABXBsLKwAgAEMAAAA/kiABlY4iACACQQFrsyIBIAAgAV0b/AFBACAAQwAAAABeGwsyACAAIAEqAgggAioCCJg4AgggACABKgIEIAIqAgSYOAIEIAAgASoCACACKgIAmDgCAAtEAQF+IAApAgAhAUEMQQQQkQ4iAEUEQEEEQQxB+MrEACgCACIAQcwIIAAbEQAAAAsgACABNwIEIABBgICAgHg2AgAgAAspAQF/IAAoAgQiAQRAIAAoAgAgAUFobGpBGGsgAUEZbEEhakEIEOgOCwswAAJAIAFpQQFGIABBgICAgHggAWtNcUUNACAABEAgACABEJEOIgFFDQELIAEPCwALKQEBfyAAKAIEIgEEQCAAKAIAIAFBBHRrQRBrIAFBEWxBGWpBCBDoDgsLRgEBf0EQQQQQkQ4iAkUEQEEEQRBB+MrEACgCACIAQcwIIAAbEQAAAAsgAiAB/QACAP0LAgAgAEG02MMANgIEIAAgAjYCAAstAQJ9IAAqAgwgACoCACIBIAAqAgQiAiABIAJfGyIBIAAqAggiAiABIAJfG5ILLwEBfwJAIAAoAgAiAEF/Rg0AIAAgACgCBEEBayIBNgIEIAENACAAQRxBBBDoDgsLLwEBfwJAIAAoAgAiAEF/Rg0AIAAgACgCBEEBayIBNgIEIAENACAAQQxBBBDoDgsLMAEBfwJAIAAoAgAiAEF/Rg0AIAAgACgCBEEBayIBNgIEIAENACAAQeACQRAQ6A4LCzABAX8CQCAAKAIAIgBBf0YNACAAIAAoAgRBAWsiATYCBCABDQAgAEHQAEEEEOgOCwsvAQF/AkAgACgCACIAQX9GDQAgACAAKAIEQQFrIgE2AgQgAQ0AIABBGEEEEOgOCwsvAQF/AkAgACgCACIAQX9GDQAgACAAKAIEQQFrIgE2AgQgAQ0AIABBJEEEEOgOCwswAQF/AkAgACgCACIAQX9GDQAgACAAKAIEQQFrIgE2AgQgAQ0AIABB8ABBBBDoDgsLKgEBfyMAQTBrIgIkACACQQxqIAAgAUEBEFAgAi0AGCEAIAJBMGokACAACy0BAX8jAEEwayIEJAAgBEEMaiABIAIgAxBQIAAgBP0AAgz9CwIAIARBMGokAAtAAQF/QQxBBBCRDiIARQRAQQRBDEH4ysQAKAIAIgBBzAggABsRAAAACyAAQQA2AgggAEKBgICAEDcCACAAQQhqC1EBAX9BGEEEEJEOIgBFBEBBBEEYQfjKxAAoAgAiAEHMCCAAGxEAAAALIABCgYCAgBA3AgAgAP0MAAAAAAAAAAAAAAAAAAAAAP0LAgggAEEIagsuAQF/IwBBIGsiBCQAIARBDGogASACIAMQnQEgACAE/QACEP0LAgAgBEEgaiQACyoBAX8jAEEwayICJAAgAkEMaiAAIAFBARBRIAItABghACACQTBqJAAgAAstAQF/IwBBMGsiBCQAIARBDGogASACIAMQUSAAIAT9AAIM/QsCACAEQTBqJAALMAEBfSAAIAIqAgggASoCACIDlDgCCCAAIAMgAioCBJQ4AgQgACADIAIqAgCUOAIACy0BAX0gAEEANgIIIABCADcCACAAIAEqAgQiAiAClCABKgIAIgIgApSSkTgCDAssAQF/IwBBEGsiAiQAIAIgACgCADYCDCACQQxqIAEQ5QUhACACQRBqJAAgAAsrACAAKgIAIAEqAgCUIAAqAgQgASoCBJSSIAAqAgggASoCCJSSQwAAAABfCykBAX8jAEEgayICJAAgAkEEaiAAIAEQ2gMgAi0AECEAIAJBIGokACAACyoAIwBBIGsiAyQAIANBBGogASACENoDIAAgA/0AAgT9CwIAIANBIGokAAv8AQICfwF+IwBBEGsiAiQAIAJBATsBDCACIAE2AgggAiAANgIEIwBBEGsiASQAIAJBBGoiACkCACEEIAEgADYCDCABIAQ3AgQjAEEQayIAJAAgAUEEaiIBKAIAIgIoAgwhAwJAAkACQAJAIAIoAgQOAgABAgsgAw0BQQEhAkEAIQMMAgsgAw0AIAIoAgAiAigCBCEDIAIoAgAhAgwBCyAAQYCAgIB4NgIAIAAgATYCDCAAQYiOxAAgASgCBCABKAIIIgAtAAggAC0ACRD3CAALIAAgAzYCBCAAIAI2AgAgAEHsjcQAIAEoAgQgASgCCCIALQAIIAAtAAkQ9wgACycBAX8jAEEQayICJAAgAiAAIAFBARAvIAItAAwhACACQRBqJAAgAAsnAQF/IwBBEGsiAiQAIAIgACABQQEQLiACLQAMIQAgAkEQaiQAIAALJwEBfyMAQRBrIgIkACACIAAgAUEBECwgAi0ADCEAIAJBEGokACAACycBAX8jAEEQayICJAAgAiAAIAFBARApIAItAAwhACACQRBqJAAgAAsoAQF/IwBBEGsiAiQAIAIgACABQQEQ/wIgAi0ADCEAIAJBEGokACAACygBAX8jAEEQayICJAAgAiAAIAFBARCJASACLQAMIQAgAkEQaiQAIAALJwEBfyMAQRBrIgIkACACIAAgAUEBECggAi0ADCEAIAJBEGokACAACycBAn0gACoCACIBIAAqAgQiAiABIAJfGyIBIAAqAggiAiABIAJfGwsnAQJ9IAAqAmQiASAAKgJoIgIgASACXxsiASAAKgJsIgIgASACXxsLKwAgAEH/AXEiAEHAAE0EQCAAQZirwQBqLQAADwsgAEHBAEHQ4sMAEIULAAtGACAA/QwAAAAAAAAAAAAAAAAAAAAA/QsCECAA/QwAAAAAAAAAAAAAAAAAAIA//QsCACAAQShqQQA2AgAgAEEgakIANwIACzMAIAEoAgAgACgCAC0AAEECdCIAQdDLwgBqKAIAIABBwMvCAGooAgAgASgCBCgCDBEFAAslACAARQRAQeDMwgBBMhCCDwALIAAgAiADIAQgBSABKAIQESAACyMAIABFBEBB4MzCAEEyEIIPAAsgACACIAMgBCABKAIQEQIACyMAIABFBEBB4MzCAEEyEIIPAAsgACACIAMgBCABKAIQEREACyMAIABFBEBB4MzCAEEyEIIPAAsgACACIAMgBCABKAIQER8ACyQAIABFBEBB4MzCAEEyEIIPAAsgACACIAMgBCABKAIQEaIBAAsjACAARQRAQeDMwgBBMhCCDwALIAAgAiADIAQgASgCEBE8AAsoAQF/IAAoAgAiAUGAgICAeHJBgICAgHhHBEAgACgCBCABQQEQ6A4LCyEAIABFBEBB4MzCAEEyEIIPAAsgACACIAMgASgCEBEBAAsdACABKAIABEAgAEHcjcQANgIEIAAgATYCAA8LAAsnAQF/IAAoAgAiAgRAIAEoAgAgAiAAKAIEIAEoAgQoAgwRBQAPCwALJAAgAC0AAEUEQCABQfCzxABBBRD7Ag8LIAFB9bPEAEEEEPsCCx8AIABFBEBB4MzCAEEyEIIPAAsgACACIAEoAhARAwALHwAgACAB/QACQP0LAgAgAEEQaiABQdAAaikCADcCAAsfACAAIAH9AAI0/QsCACAAQRBqIAFBxABqKQIANwIACykAIAAgAC0ABCABQS5GcjoABCAAKAIAIgAoAgAgASAAKAIEKAIQEQMACx0AIAAgAiABKAIsIAEoAjAgASgCOCABKAI8EIkDCxoBAX8gACgCACIBBEAgACgCBCABQQEQ6A4LC1IAIAAEQCAAIAFB+MrEACgCACIAQcwIIAAbEQAAAAsjAEEgayIAJAAgAEEANgIYIABBATYCDCAAQfSPxAA2AgggAEIENwIQIABBCGogAhC5DQALHQAgAEHEp8MANgIEIAAgATYCACAAIAEqAhg4AggLHQAgAEGYpMMANgIEIAAgATYCACAAIAEqAgw4AggLHQAgAEGEqMMANgIEIAAgATYCACAAIAEqAiQ4AggLHQAgAEH4t8MANgIEIAAgATYCACAAIAEqAgg4AggLHQAgAEHcu8MANgIEIAAgATYCACAAIAEqAgg4AggLHQAgAEHMtMMANgIEIAAgATYCACAAIAEqAmA4AggLHwAgAEEIakG8iMQAKQIANwIAIABBtIjEACkCADcCAAsfACAAQQhqQcyIxAApAgA3AgAgAEHEiMQAKQIANwIACxoAIABBADYCCCAAQZC9wQA2AgQgACABNgIACxoAIABBADYCCCAAQdi+wQA2AgQgACABNgIACxoAIABBADYCCCAAQeDhwQA2AgQgACABNgIACxoAIABBADYCCCAAQdz7wQA2AgQgACABNgIACxYAIABB2AFqIAAtAOUCIABBMGoQsAYLGAAgACgCACABKAIAIAIoAgAgAygCABAQCxcBAX8gABASIgE2AgQgACABQQBHNgIACxcBAX8gABATIgE2AgQgACABQQBHNgIACxcBAX8gABAUIgE2AgQgACABQQBHNgIACxcBAX8gABAVIgE2AgQgACABQQBHNgIACxwAIABBADYCECAAQgA3AgggAEKAgICAwAA3AgALGgAgAEEANgIIIABBmKTDADYCBCAAIAE2AgALrQUCFH0CfyABKgIYIQYgAAJ9QwAAgD8gAUEMaiIXKgIIIg8gASoCCCIQkyIKjCAKIBcqAgQiESABKgIEIhKTIgdDAAAAAF0iGBsiCyALlCAXKgIAIhMgASoCACIUkyIMjCAMIBgbIgggCJQgB4wgByAYGyINIA2UkpIiDkMAAAAAXkUNABogDSAOkSIDlSIOQwAAAACUIgQgCCADlSIFkyIIIAiUIAsgA5UiAyAEkyILIAuUIAVDAAAAAJQiBSADQwAAAACUIhWTIg0gDZSSkiIWQwAAgCheRQRAQwAAAAAhA0MAAAAAIQRDAACAPwwBC0MAAAAAIQNDAAAAACEEQwAAgD8gFSAOIAWSkiIOi0MAAIA/YA0AGiAIIBaRIgWVIA4Q5gVDAAAAP5QiCBDrASIJlCEEIA0gBZUgCZQhAyALIAWVIAmUIQkgCBDvAQs4AgwgACAEOAIIIAAgAzgCBCAAIAk4AgAgACAPIBCSQwAAAD+UOAIYIAAgESASkkMAAAA/lDgCFCAAIBMgFJJDAAAAP5Q4AhAgAEMAAAAAQwAAgD8gAiAGIAYgBkPbD0lAlJSUQwAAgECUQwAAQECVIgUgBiAGIAwgDJQgByAHlJIgCiAKlJKRQwAAAD+UIgOUlEPbD0lAlCIEIASSIgeSlCIElSAEQwAAAABbGzgCHCAAQwAAAABDAACAPyACIAYgBpQiBCAEkkMAAKBAlSAFlCIKIARDAAAAP5QgB5SSlCIMlSAMQwAAAABbGzgCJCAAQwAAAABDAACAPyACIAogByAEQwAAQECUIAMgA5RDAACAQJSSQwAAQEGVlJKUIAIgBSADIAOSIgIgApRDAACAPpQgBiAClEMAAEBAlEMAAAA+lJKUlJIiApUgAkMAAAAAWxsiAjgCKCAAIAI4AiALGgAgAEEANgIIIABBhKjDADYCBCAAIAE2AgALGgAgAEEANgIIIABBxKfDADYCBCAAIAE2AgALGgAgAEEANgIIIABBzLTDADYCBCAAIAE2AgALGgAgAEEANgIIIABB+LfDADYCBCAAIAE2AgALGgAgAEEANgIIIABB3LvDADYCBCAAIAE2AgALnwcBBH8CfyAAQQhrKAIEIgRBeHEhBQJAAkACQAJAAkACQCAFQQRBCCAEQQNxIgQbIAFqTwRAIARBAEcgBSABQSdqIgVLcQ0BAkACQCACQQlPBEAgAiADEK4GIgINAUEADAoLQQAhAiADQcz/e0sNAUEQIANBC2pBeHEgA0ELSRshASAAQQhrIgUoAgQiBkF4cSEEIAQgBWohBwJAAkACQCAGQQNxRQRAIAFBgAJJDQEgBkF4cSIEIAFBBHJJDQEgBCABa0GBgAhPDQEMAwsgASAETQ0BQczOxAAoAgAgB0cEQEHIzsQAKAIAIAdHBEAgBygCBCIGQQJxDQIgBkF4cSIGIARqIgQgAUkNAiAHIAYQpwUgBCABayIAQRBPDQwgBSAEIAUoAgRBAXFyQQJyNgIEIAQgBWoiACAAKAIEQQFyNgIEDA0LQcDOxAAoAgAgBGoiBCABSQ0BAkAgBCABayICQQ9NBEAgBSAEIAUoAgRBAXFyQQJyNgIEIAQgBWoiACAAKAIEQQFyNgIEQQAhAkEAIQAMAQsgAiABIAVqIgBqIQMgBSABIAUoAgRBAXFyQQJyNgIEIAAgACgCBEEBcjYCBCAAIAJBAXI2AgQgACACaiACNgIAIAMgAygCBEF+cTYCBAtByM7EACAANgIAQcDOxAAgAjYCAAwMC0HEzsQAKAIAIARqIgQgAUsNCQsgAxBDIgFFDQMgAyAFKAIEIgJBeHFBfEF4IAJBA3EbaiICIAIgA0sbIgIEQCABIAAgAvwKAAALIAAQigMgAQwLCyAEIAFrIgBBD0sNCAsMCAsgAyABIAEgA0sbIgMEQCACIAAgA/wKAAALIABBCGsoAgQiBEF4cSEDIAMgAUEEQQggBEEDcSIEG2pJDQMgBEEARyADIAVLcQ0EIAAQigMLIAIMBwtB8InEAEEuQaCKxAAQ1gwAC0GwisQAQS5B4IrEABDWDAALQfCJxABBLkGgisQAENYMAAtBsIrEAEEuQeCKxAAQ1gwACyAFIAEgBSgCBEEBcXJBAnI2AgQgASAFaiIAIAAoAgRBAXI2AgQgACAEIAFrIgFBAXI2AgRBxM7EACABNgIAQczOxAAgADYCACAFQQhqDAILIAUgASAFKAIEQQFxckECcjYCBCABIAVqIgEgASgCBEEBcjYCBCABIAAgASgCBEEBcXJBAnI2AgQgACABaiICIAIoAgRBAXI2AgQgASAAEJEFCyAFQQhqCwsQACABBEAgACABIAIQ6A4LCxQAIAAgASACQQAQ/AMgAEICNwIQCxQAIAAgASACQQAQ/wIgAEEDNgIQCxQAIAAgASACQQAQwQIgAEEDNgIQCxMAIAAgASACQQAQLCAAQQM2AhALEwAgACABIAJBABAuIABBAzYCEAsTACAAIAEgAkEAECggAEEDNgIQCxMAIAAgASACQQAQLyAAQQM2AhALEwAgACABIAJBABApIABBAzYCEAsQACAAIAEgAiADIAQgBRBaCxAAIAAgASACIAMgAyADEGALEAAgACABIAIgAyAEIAUQWwsQACAAIAEgAiADIAQgBRBhCxEAIAAgASACIAMgBCAFEKACCxEAIAAgASACIAMgBCAFEN0BCxEAIAAgASACIAMgAyADEOwBCxAAIAAgASACIAMgBCAFEHELEAAgACABIAIgAyADIAMQXgsQACAAIAEgAiADIAQgBRBtCxAAIAAgASACIAMgBCAFEG4LmAwEDH8TfQR7AX4gACEKIAEoAgQhCyABKAIIIQAjAEHgAGsiAyQAIANBADYCFCADQoCAgIDAADcCDAJAIABFBEBDAAAAACECDAELIABBJGwhDCADQdQAaiEFA0AgBCALaiIAQSBqKAIAIQEgA0E0aiAAQRxqKAIAIAEoAghBAWtBeHFqQQhqIAIgASgCnAERDQAgA0EgaiINIAVBCGooAgA2AgAgAyAFKQIANwMYIAMqAkwiFSAAQQRqKgIAIg+UIAMqAkgiFiAAQQhqKgIAIhKUkyIQIBCSIRQgFiAAKgIAIhCUIAMqAkQiFyAPlJMiEyATkiERQwAAAABDAACAPyADKgJQIhuVIBtDAAAAAFsbIhggAEEQaioCACAXIABBDGoqAgAiEyAUlCAPIBGUIBIgFyASlCAVIBCUkyIXIBeSIheUk5KSkiIclP0TIBggAEEUaioCACAWIBMgF5QgEiAUlCAQIBGUk5KSkiIdlP0gASEkIBggAEEYaioCACAVIBMgEZQgECAXlCAPIBSUk5KSkiIXlCEeIBIgAyoCQCIUlCAQIAMqAjgiEZQgEyADKgI8IhWUkiAPIAMqAjQiFpSTkiEfIBIgFpQgDyAUlCATIBGUIBAgFZSTkpIhICAPIBWUIBMgFpQgECAUlJKSIBIgEZSTISEgEyAUlCAQIBaUkyAPIBGUkyASIBWUkyEPIAMoAhQiByADKAIMRgRAQQAhBiMAQSBrIgAkAEEEIANBDGoiASgCACIJQQF0IgggCEEETRsiCK1CLH4iJkIgiEIAUgRAQQBBAEH04cIAENcNAAsCQCAmpyIOQfz///8HTQR/IAAgCQR/IAAgCUEsbDYCHCAAIAEoAgQ2AhRBBAVBAAs2AhggAEEIakEEIA4gAEEUahDiCSAAKAIIQQFHDQEgACgCECEGIAAoAgwFQQALIAZB9OHCABDXDQALIAAoAgwhBiABIAg2AgAgASAGNgIEIABBIGokAAsgIiAk/eQBISIgGSAekiEZIBogGJIhGiADKAIQIgEgB0EsbGoiACAbOAIcIAAgFzgCGCAAIB04AhQgACAcOAIQIAAgDzgCDCAAIB84AgggACAgOAIEIAAgITgCACAAIAMpAxg3AiAgAEEoaiANKAIANgIAIAMgB0EBaiIANgIUIAwgBEEkaiIERw0AC0MAAAAAIRMgGkMAAAAAXgRAIBkgGpUhGSAiIBr9E/3nASEiCyADKAIMIQUCQCAARQRA/QwAAAAAAAAAAAAAAAAAAAAAISRDAAAAACEPQwAAAAAhEEMAAAAAIRJDAAAAACECDAELIAdBLGxBLGohBP0MAAAAAAAAAAAAAAAAAAAAACEkQwAAAAAhAkMAAAAAIRJDAAAAACEQQwAAAAAhDyABIQADQCAAQRhqKgIAIREgAEEQav1dAgAhIyAAQRxqKgIAIRQgA0E0aiAAEM0CAn0gFEMAAAAAWwRAIAMqAlQhFCAD/QACQCElIAMqAjQhGCADKgJQIRUgAyoCPCEWIAMqAjgMAQv9DAAAAAAAAAAAAAAAAAAAAAAgIiAj/eUBIiMgI/3mAf0fACIWICMgIv0NAAECAwQFBgcEBQYHAAECAyAjICL9DQQFBgcAAQIDAAECAwABAgMgGSARkyIR/SABICL9DQABAgMAAQIDBAUGBwQFBgf95gEiI/0fAZIgESARlCIXkiIY/SABICP95QFDAACAPyAUlSIV/RP95gEiIyAD/QACQP3kASElIBUgGCAXk5QgAyoCVJIhFCAVIBggFpOUIAMqAjSSIRggI/0fAiADKgJQkiEVICP9HwMgAyoCPJIhFiAj/R8AIAMqAjiSCyERIABBLGohACACIBSSIQIgEiAVkiESICQgJf3kASEkIBAgFpIhECAPIBGSIQ8gEyAYkiETIARBLGsiBA0ACwsgBUUNACABIAVBLGxBBBDoDgsgAyAZOAIwIAMgIv0fATgCLCADICL9HwA4AiggAyACOAJUIAMgEjgCUCADICT9CwJAIAMgEDgCPCADIA84AjggAyATOAI0IAogA0EoaiAaIANBNGoQyQIgA0HgAGokAAsTACAAIAIgASgCBCABKAIIENADCxQAIAAoAgAgASAAKAIEKAIMEQMAC6wHAQN/IAAhByMAQfAAayIAJAAgACADNgIMIAAgAjYCCAJ/AkACQAJAAkAgAUGBAk8EQEH9ASEFA0AgBSAHaiIGQQNqLAAAQb9/Sg0DIAZBAmosAABBv39KDQIgBkEBaiwAAEG/f0oNBCAGLAAAQb9/Sg0FIAVBBGsiBUF9Rw0AC0EAIQUMBAsgACABNgIUIAAgBzYCEEEBDAQLIAVBAmohBQwCCyAFQQNqIQUMAQsgBUEBaiEFCyAAIAc2AhAgACAFNgIUQQVBACABIAVLIgUbIQZBgLXEAEEBIAUbCyEFIAAgBjYCHCAAIAU2AhgCQAJAIAEgAk8EQCABIANPDQEFIAIhAwsgACADNgIoIABBAzYCNCAAQci2xAA2AjAgAEIDNwI8IAAgAEEYaq1CgICAgOCNAYQ3A1ggACAAQRBqrUKAgICA4I0BhDcDUCAAIABBKGqtQoCAgIAwhDcDSAwBCyACIANNBEACQCACRQ0AIAEgAk0NACAAQQxqIABBCGogAiAHaiwAAEG/f0obKAIAIQMLIAAgAzYCIAJ/AkACQCABIANNDQBBACEGAkAgA0UNAANAIAMgB2osAABBv39KBEAgAyEGDAILIANBAWsiAw0ACwsgASAGRg0AAkACQCAGIAdqIgMsAAAiB0EASARAIAMtAAFBP3EhASAHQR9xIQIgB0FfSw0BIAJBBnQgAXIhBQwCCyAAIAdB/wFxNgIkQQEMBAsgAy0AAkE/cSABQQZ0ciEBIAdBcEkEQCABIAJBDHRyIQUMAQsgAkESdEGAgPAAcSADLQADQT9xIAFBBnRyciIFQYCAxABGDQELIAAgBTYCJCAFQYABTw0BQQEMAgsgBBDyDgALQQIgBUGAEEkNABpBA0EEIAVBgIAESRsLIQEgACAGNgIoIAAgASAGajYCLCAAQQU2AjQgAEGItsQANgIwIABCBTcCPCAAIABBGGqtQoCAgIDgjQGENwNoIAAgAEEQaq1CgICAgOCNAYQ3A2AgACAAQShqrUKAgICAgI4BhDcDWCAAIABBJGqtQoCAgICQjgGENwNQIAAgAEEgaq1CgICAgDCENwNIDAELIABBBDYCNCAAQai1xAA2AjAgAEIENwI8IAAgAEEYaq1CgICAgOCNAYQ3A2AgACAAQRBqrUKAgICA4I0BhDcDWCAAIABBDGqtQoCAgIAwhDcDUCAAIABBCGqtQoCAgIAwhDcDSAsgACAAQcgAajYCOCAAQTBqIAQQuQ0ACxMAIABBxLrBADYCBCAAIAE2AgALEwAgAEHUusEANgIEIAAgATYCAAsTACAAQfS8wQA2AgQgACABNgIACxAAIABBATYCACAAIAE2AgQLEwAgAEG8vsEANgIEIAAgATYCAAsQACAAQQQ2AgAgACABNgIECxoAAn8gAUEJTwRAIAEgABCuBgwBCyAAEEMLCxAAIAAgATYCBCAAQQU2AgALEwAgAEGs38EANgIEIAAgATYCAAsTACAAQbzfwQA2AgQgACABNgIACxMAIABBzN/BADYCBCAAIAE2AgALEwAgAEHc38EANgIEIAAgATYCAAsTACAAQezfwQA2AgQgACABNgIACxMAIABBxOHBADYCBCAAIAE2AgALEAAgACABNgIEIABBBzYCAAsQACAAIAE2AgQgAEEGNgIACxMAIABBwPvBADYCBCAAIAE2AgALFgBB7MrEACAANgIAQejKxABBATYCAAsTACAAQfTVwgA2AgQgACABNgIACxMAIABBhNbCADYCBCAAIAE2AgALEwAgAEGU1sIANgIEIAAgATYCAAsTACAAQaTWwgA2AgQgACABNgIACxMAIABBtNbCADYCBCAAIAE2AgALEwAgAEHE1sIANgIEIAAgATYCAAsTACAAQdTWwgA2AgQgACABNgIACxMAIABB5NbCADYCBCAAIAE2AgALEwAgAEH01sIANgIEIAAgATYCAAsTACAAQYTXwgA2AgQgACABNgIACxMAIABBlNfCADYCBCAAIAE2AgALEwAgAEGk18IANgIEIAAgATYCAAsTACAAQbTXwgA2AgQgACABNgIACxMAIABBxNfCADYCBCAAIAE2AgALEwAgAEHU18IANgIEIAAgATYCAAsTACAAQeTXwgA2AgQgACABNgIACxMAIABB9NfCADYCBCAAIAE2AgALEwAgAEGE2MIANgIEIAAgATYCAAsTACAAQZTYwgA2AgQgACABNgIACxMAIABBpNjCADYCBCAAIAE2AgALEwAgAEG02MIANgIEIAAgATYCAAsTACAAQcTYwgA2AgQgACABNgIACxMAIABB1NjCADYCBCAAIAE2AgALEwAgAEHk2MIANgIEIAAgATYCAAsTACAAQfTYwgA2AgQgACABNgIACxMAIABBhNnCADYCBCAAIAE2AgALEwAgAEGU2cIANgIEIAAgATYCAAsRACABIAAoAgAgACgCBBD7AgsQACAAIAE2AgQgAEEDNgIACxAAIAAgATYCBCAAQQQ2AgALEAAgACABNgIEIABBAjYCAAsQACAAIAE2AgQgAEEBNgIACxAAIAAgATYCBCAAQQA2AgALKgAgAEL////39/////4ANwIQIAD9DP////7////+/////v///379CwIACxAAIABBADYCACAAIAE2AgQLEwAgAEHgo8MANgIEIAAgATYCAAsTACAAQfyjwwA2AgQgACABNgIACxAAIABBAjYCACAAIAE2AgQLEwAgAEGop8MANgIEIAAgATYCAAsTACAAQeinwwA2AgQgACABNgIACxAAIABBAzYCACAAIAE2AgQLEwAgAEGoqMMANgIEIAAgATYCAAsOACAAIAFBQGsgAhC7AwsQACAAQQo2AgAgACABNgIECxMAIABBsKvDADYCBCAAIAE2AgALEAAgAEEHNgIAIAAgATYCBAsTACAAQbCuwwA2AgQgACABNgIACxAAIABBBjYCACAAIAE2AgQLEwAgAEGwscMANgIEIAAgATYCAAsOACAAIAFBNGogAhC7AwsQACAAQQk2AgAgACABNgIECxAAIABBCzYCACAAIAE2AgQLEwAgAEGwtMMANgIEIAAgATYCAAsQACAAQQw2AgAgACABNgIECxMAIABB3LfDADYCBCAAIAE2AgALEAAgAEENNgIAIAAgATYCBAsTACAAQcC7wwA2AgQgACABNgIACyoAIABC////9/f////+ADcCECAA/Qz////+/////v////7///9+/QsCAAsqACAAQv////f3/////gA3AhAgAP0M/////v////7////+////fv0LAgALEAAgAEEINgIAIAAgATYCBAsQACAAQQU2AgAgACABNgIECxAAIABBDjYCACAAIAE2AgQLEwAgAEGwhMQANgIEIAAgATYCAAsQACAAQQ82AgAgACABNgIECxMAIABBzITEADYCBCAAIAE2AgALEAAgAEEQNgIAIAAgATYCBAsTACAAQeiExAA2AgQgACABNgIACxAAIABBETYCACAAIAE2AgQLEwAgAEGEhcQANgIEIAAgATYCAAsQACAAQRI2AgAgACAB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bnQgYXQgaW5kZXgvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9jY2QvdG9pX2VudHJ5LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2R5bmFtaWNzL2pvaW50L211bHRpYm9keV9qb2ludC9tdWx0aWJvZHkucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvZHluYW1pY3Mvc29sdmVyL3NvbHZlcl9ib2R5LnJzAGJ1aWxkcy9yYXBpZXIzZC1zaW1kLy4uLy4uL3NyYy9keW5hbWljcy9yaWdpZF9ib2R5LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLnJ1c3R1cC90b29sY2hhaW5zL3N0YWJsZS1hYXJjaDY0LWFwcGxlLWRhcndpbi9saWIvcnVzdGxpYi9zcmMvcnVzdC9saWJyYXJ5L3N0ZC9zcmMvc3luYy9tcG1jL2FycmF5LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9uYWxnZWJyYS0wLjM0LjEvc3JjL2Jhc2UvbWF0cml4LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9uYWxnZWJyYS0wLjM0LjEvc3JjL2Jhc2UvbWluX21heC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUtYWFyY2g2NC1hcHBsZS1kYXJ3aW4vbGliL3J1c3RsaWIvc3JjL3J1c3QvbGlicmFyeS9hbGxvYy9zcmMvYm9ycm93LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9uYWxnZWJyYS0wLjM0LjEvc3JjL2Jhc2UvbWF0cml4X3ZpZXcucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL25hbGdlYnJhLTAuMzQuMS9zcmMvYmFzZS9jb25zdHJ1Y3Rpb25fdmlldy5ycwBsaWJyYXJ5L2NvcmUvc3JjL251bS9mbHQyZGVjL3N0cmF0ZWd5L2dyaXN1LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9uYWxnZWJyYS0wLjM0LjEvc3JjL2xpbmFsZy9sdS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUtYWFyY2g2NC1hcHBsZS1kYXJ3aW4vbGliL3J1c3RsaWIvc3JjL3J1c3QvbGlicmFyeS9zdGQvc3JjL3N5bmMvbXBtYy9jb250ZXh0LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcGFydGl0aW9uaW5nL2J2aC9idmhfdHJhdmVyc2VfYnZ0dC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUtYWFyY2g2NC1hcHBsZS1kYXJ3aW4vbGliL3J1c3RsaWIvc3JjL3J1c3QvbGlicmFyeS9zdGQvc3JjL3N5bmMvbXBtYy9saXN0LnJzAGxpYnJhcnkvY29yZS9zcmMvc2xpY2Uvc29ydC9zaGFyZWQvc21hbGxzb3J0LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcGFydGl0aW9uaW5nL2J2aC9idmhfaW5zZXJ0LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdXRpbHMvcG9pbnRfY2xvdWRfc3VwcG9ydF9wb2ludC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9qb2ludC9tdWx0aWJvZHlfam9pbnQvdW5pdF9tdWx0aWJvZHlfam9pbnQucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvZHluYW1pY3Mvam9pbnQvbXVsdGlib2R5X2pvaW50L211bHRpYm9keV9qb2ludC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9zb2x2ZXIvam9pbnRfY29uc3RyYWludC9qb2ludF92ZWxvY2l0eV9jb25zdHJhaW50LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2R5bmFtaWNzL3NvbHZlci9qb2ludF9jb25zdHJhaW50L2dlbmVyaWNfam9pbnRfY29uc3RyYWludC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9zb2x2ZXIvY29udGFjdF9jb25zdHJhaW50L2dlbmVyaWNfY29udGFjdF9jb25zdHJhaW50LnJzAGxpYnJhcnkvc3RkL3NyYy90aHJlYWQvY3VycmVudC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L3BvaW50L3BvaW50X3NlZ21lbnQucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9zaGFwZS9zZWdtZW50LnJzAGxpYnJhcnkvYWxsb2Mvc3JjL2ZtdC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3BhcnRpdGlvbmluZy9idmgvYnZoX3JlZml0LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2R5bmFtaWNzL3JpZ2lkX2JvZHlfc2V0LnJzAGJ1aWxkcy9yYXBpZXIzZC1zaW1kLy4uLy4uL3NyYy9keW5hbWljcy9yaWdpZF9ib2R5X3NldC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9qb2ludC9tdWx0aWJvZHlfam9pbnQvbXVsdGlib2R5X2pvaW50X3NldC5ycwBidWlsZHMvcmFwaWVyM2Qtc2ltZC8uLi8uLi9zcmMvZHluYW1pY3MvbXVsdGlib2R5X2pvaW50X3NldC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9qb2ludC9pbXB1bHNlX2pvaW50L2ltcHVsc2Vfam9pbnRfc2V0LnJzAGJ1aWxkcy9yYXBpZXIzZC1zaW1kLy4uLy4uL3NyYy9keW5hbWljcy9pbXB1bHNlX2pvaW50X3NldC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9zb2x2ZXIvam9pbnRfY29uc3RyYWludC9qb2ludF9jb25zdHJhaW50c19zZXQucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvZHluYW1pY3Mvc29sdmVyL2NvbnRhY3RfY29uc3RyYWludC9jb250YWN0X2NvbnN0cmFpbnRzX3NldC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9nZW9tZXRyeS9jb2xsaWRlcl9zZXQucnMAYnVpbGRzL3JhcGllcjNkLXNpbWQvLi4vLi4vc3JjL2dlb21ldHJ5L2NvbGxpZGVyX3NldC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3RyYW5zZm9ybWF0aW9uL2NvbnZleF9odWxsMy90cmlhbmdsZV9mYWNldC5ycwBsaWJyYXJ5L2NvcmUvc3JjL251bS9kaXlfZmxvYXQucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvZHluYW1pY3MvcmlnaWRfYm9keV9jb21wb25lbnRzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2RhdGEvbW9kaWZpZWRfb2JqZWN0cy5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9zb2x2ZXIvaW50ZXJhY3Rpb25fZ3JvdXBzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9uYWxnZWJyYS0wLjM0LjEvc3JjL2Jhc2Uvb3BzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9zZXJkZS0xLjAuMjE5L3NyYy9kZS9pbXBscy5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3RyYW5zZm9ybWF0aW9uL2NvbnZleF9odWxsX3V0aWxzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvYm91bmRpbmdfdm9sdW1lL2FhYmJfdXRpbHMucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy90cmFuc2Zvcm1hdGlvbi91dGlscy5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy91dGlscy5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2NvbnRhY3RfbWFuaWZvbGRzL2NvbnRhY3RfbWFuaWZvbGRzX3ZveGVsc192b3hlbHMucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9zaGFwZS92b3hlbHMvdm94ZWxzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi93ZWItdGltZS0xLjEuMC9zcmMvdGltZS9qcy5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL21hc3NfcHJvcGVydGllcy9tYXNzX3Byb3BlcnRpZXMucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvcGlwZWxpbmUvdXNlcl9jaGFuZ2VzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi93YXNtLWJpbmRnZW4tMC4yLjEwMC9zcmMvY29udmVydC9zbGljZXMucnMAL1VzZXJzL3NlYmNyb3pldC8ucnVzdHVwL3Rvb2xjaGFpbnMvc3RhYmxlLWFhcmNoNjQtYXBwbGUtZGFyd2luL2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvc3RkL3NyYy9zeXMvc3luYy9tdXRleC9ub190aHJlYWRzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9uYWxnZWJyYS0wLjM0LjEvc3JjL2Jhc2UvYmxhcy5ycwBsaWJyYXJ5L2FsbG9jL3NyYy9mZmkvY19zdHIucnMAL1VzZXJzL3NlYmNyb3pldC8ucnVzdHVwL3Rvb2xjaGFpbnMvc3RhYmxlLWFhcmNoNjQtYXBwbGUtZGFyd2luL2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvY29yZS9zcmMvaXRlci90cmFpdHMvaXRlcmF0b3IucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL25hbGdlYnJhLTAuMzQuMS9zcmMvYmFzZS9kZWZhdWx0X2FsbG9jYXRvci5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9zb2x2ZXIvdmVsb2NpdHlfc29sdmVyLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2R5bmFtaWNzL2NjZC9jY2Rfc29sdmVyLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdXRpbHMvY2VudGVyLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2NvbnRyb2wvY2hhcmFjdGVyX2NvbnRyb2xsZXIucnMAYnVpbGRzL3JhcGllcjNkLXNpbWQvLi4vLi4vc3JjL2NvbnRyb2wvY2hhcmFjdGVyX2NvbnRyb2xsZXIucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvY29udHJvbC9yYXlfY2FzdF92ZWhpY2xlX2NvbnRyb2xsZXIucnMAL1VzZXJzL3NlYmNyb3pldC8ucnVzdHVwL3Rvb2xjaGFpbnMvc3RhYmxlLWFhcmNoNjQtYXBwbGUtZGFyd2luL2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvc3RkL3NyYy9zeW5jL21wbWMvd2FrZXIucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9kZWZhdWx0X3F1ZXJ5X2Rpc3BhdGNoZXIucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvZHluYW1pY3MvaXNsYW5kX21hbmFnZXIucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9zaGFwZS9jeWxpbmRlci5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9zb2x2ZXIvam9pbnRfY29uc3RyYWludC9nZW5lcmljX2pvaW50X2NvbnN0cmFpbnRfYnVpbGRlci5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9zb2x2ZXIvam9pbnRfY29uc3RyYWludC9qb2ludF9jb25zdHJhaW50X2J1aWxkZXIucnMAYnVpbGRzL3JhcGllcjNkLXNpbWQvLi4vLi4vc3JjL2dlb21ldHJ5L2NvbGxpZGVyLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdXRpbHMvY2xlYW51cC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUtYWFyY2g2NC1hcHBsZS1kYXJ3aW4vbGliL3J1c3RsaWIvc3JjL3J1c3QvbGlicmFyeS9jb3JlL3NyYy9jbXAucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9pbnRlcnNlY3Rpb25fdGVzdC9pbnRlcnNlY3Rpb25fdGVzdF9zdXBwb3J0X21hcF9zdXBwb3J0X21hcC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L25vbmxpbmVhcl9zaGFwZV9jYXN0L25vbmxpbmVhcl9zaGFwZV9jYXN0X3N1cHBvcnRfbWFwX3N1cHBvcnRfbWFwLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvY29udGFjdC9jb250YWN0X3N1cHBvcnRfbWFwX3N1cHBvcnRfbWFwLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvY2xvc2VzdF9wb2ludHMvY2xvc2VzdF9wb2ludHNfc3VwcG9ydF9tYXBfc3VwcG9ydF9tYXAucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9kaXN0YW5jZS9kaXN0YW5jZV9zdXBwb3J0X21hcF9zdXBwb3J0X21hcC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2Nsb3Nlc3RfcG9pbnRzL2Nsb3Nlc3RfcG9pbnRzX2hhbGZzcGFjZV9zdXBwb3J0X21hcC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3V0aWxzL3ZlY19tYXAucnMAL1VzZXJzL3NlYmNyb3pldC8ucnVzdHVwL3Rvb2xjaGFpbnMvc3RhYmxlLWFhcmNoNjQtYXBwbGUtZGFyd2luL2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvc3RkL3NyYy9zeW5jL21wbWMvemVyby5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3NoYXBlL2NvbnZleF9wb2x5aGVkcm9uLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvcG9pbnQvcG9pbnRfdGV0cmFoZWRyb24ucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9zaGFwZS92b3hlbHMvdm94ZWxzX2VkaXRpb24ucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL25hbGdlYnJhLTAuMzQuMS9zcmMvYmFzZS9lZGl0aW9uLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9uYWxnZWJyYS0wLjM0LjEvc3JjL2Jhc2UvY29uc3RydWN0aW9uLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2R5bmFtaWNzL3NvbHZlci9jb250YWN0X2NvbnN0cmFpbnQvY29udGFjdF93aXRoX3R3aXN0X2ZyaWN0aW9uLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2R5bmFtaWNzL3NvbHZlci9jb250YWN0X2NvbnN0cmFpbnQvY29udGFjdF93aXRoX2NvdWxvbWJfZnJpY3Rpb24ucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvZHluYW1pY3Mvc29sdmVyL2NhdGVnb3JpemF0aW9uLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdHJhbnNmb3JtYXRpb24vY29udmV4X2h1bGwzL3ZhbGlkYXRpb24ucnMAbGlicmFyeS9jb3JlL3NyYy9udW0vZmx0MmRlYy9zdHJhdGVneS9kcmFnb24ucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL25hbGdlYnJhLTAuMzQuMS9zcmMvbGluYWxnL3N5bW1ldHJpY19laWdlbi5ycwBsaWJyYXJ5L2NvcmUvc3JjL251bS9iaWdudW0ucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9jb250YWN0X21hbmlmb2xkcy9jb250YWN0X21hbmlmb2xkc19wZm1fcGZtLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvY29udGFjdF9tYW5pZm9sZHMvY29udGFjdF9tYW5pZm9sZHNfaGFsZnNwYWNlX3BmbS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3RyYW5zZm9ybWF0aW9uL2NvbnZleF9odWxsMy9jb252ZXhfaHVsbC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2NvbnRhY3RfbWFuaWZvbGRzL2NvbnRhY3RfbWFuaWZvbGRzX2NvbnZleF9iYWxsLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvY29udGFjdF9tYW5pZm9sZHMvY29udGFjdF9tYW5pZm9sZHNfdm94ZWxzX2JhbGwucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9jbG9zZXN0X3BvaW50cy9jbG9zZXN0X3BvaW50c19iYWxsX2JhbGwucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9jb250YWN0X21hbmlmb2xkcy9jb250YWN0X21hbmlmb2xkc19iYWxsX2JhbGwucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL2JpbmNvZGUtMS4zLjMvc3JjL2ludGVybmFsLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvdm94ZWxzL3ZveGVsc19jaHVuay5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9qb2ludC9tdWx0aWJvZHlfam9pbnQvbXVsdGlib2R5X2xpbmsucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9namsvZ2prLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2dlb21ldHJ5L2Jyb2FkX3BoYXNlX2J2aC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3RyYW5zZm9ybWF0aW9uL3RvX3RyaW1lc2gvY3lsaW5kZXJfdG9fdHJpbWVzaC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3RyYW5zZm9ybWF0aW9uL3RvX3RyaW1lc2gvY29udmV4X3BvbHloZWRyb25fdG9fdHJpbWVzaC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3RyYW5zZm9ybWF0aW9uL3RvX3RyaW1lc2gvYmFsbF90b190cmltZXNoLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdHJhbnNmb3JtYXRpb24vdG9fdHJpbWVzaC9jb25lX3RvX3RyaW1lc2gucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9zaGFwZS90cmltZXNoLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdHJhbnNmb3JtYXRpb24vY29udmV4X2h1bGwzL2luaXRpYWxfbWVzaC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9nZW9tZXRyeS9pbnRlcmFjdGlvbl9ncmFwaC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9kYXRhL2dyYXBoLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9lbmEtMC4xNC4zL3NyYy91bmRvX2xvZy5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvbmFsZ2VicmEtMC4zNC4xL3NyYy9iYXNlL2luZGV4aW5nLnJzAGxpYnJhcnkvYWxsb2Mvc3JjL3N0cmluZy5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3BhcnRpdGlvbmluZy9idmgvYnZoX29wdGltaXplLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcGFydGl0aW9uaW5nL2J2aC9idmhfdHJhdmVyc2UucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL25hbGdlYnJhLTAuMzQuMS9zcmMvYmFzZS9jb21wb25lbnR3aXNlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2dlb21ldHJ5L25hcnJvd19waGFzZS5ycwBidWlsZHMvcmFwaWVyM2Qtc2ltZC8uLi8uLi9zcmMvZ2VvbWV0cnkvbmFycm93X3BoYXNlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvYm91bmRpbmdfdm9sdW1lL2JvdW5kaW5nX3NwaGVyZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2NvbnRhY3RfbWFuaWZvbGRzL2NvbnRhY3RfbWFuaWZvbGRzX3ZveGVsc19zaGFwZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2NvbnRhY3RfbWFuaWZvbGRzL2NvbnRhY3RfbWFuaWZvbGRzX3RyaW1lc2hfc2hhcGUucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9wb2ludC9wb2ludF9jb21wb3NpdGVfc2hhcGUucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9jb250YWN0X21hbmlmb2xkcy9jb250YWN0X21hbmlmb2xkc192b3hlbHNfY29tcG9zaXRlX3NoYXBlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvY29udGFjdF9tYW5pZm9sZHMvY29udGFjdF9tYW5pZm9sZHNfY29tcG9zaXRlX3NoYXBlX2NvbXBvc2l0ZV9zaGFwZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2NvbnRhY3RfbWFuaWZvbGRzL2NvbnRhY3RfbWFuaWZvbGRzX2hlaWdodGZpZWxkX2NvbXBvc2l0ZV9zaGFwZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2NvbnRhY3RfbWFuaWZvbGRzL2NvbnRhY3RfbWFuaWZvbGRzX2NvbXBvc2l0ZV9zaGFwZV9zaGFwZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2NvbnRhY3RfbWFuaWZvbGRzL2NvbnRhY3RfbWFuaWZvbGRzX2hlaWdodGZpZWxkX3NoYXBlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvc2hhcmVkX3NoYXBlLnJzAGJ1aWxkcy9yYXBpZXIzZC1zaW1kLy4uLy4uL3NyYy9nZW9tZXRyeS9zaGFwZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3NoYXBlL3NoYXBlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvcG9seWxpbmUucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy90cmFuc2Zvcm1hdGlvbi90b19vdXRsaW5lL3ZveGVsc190b19vdXRsaW5lLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdHJhbnNmb3JtYXRpb24vdG9fb3V0bGluZS9yb3VuZF9jeWxpbmRlcl90b19vdXRsaW5lLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdHJhbnNmb3JtYXRpb24vdG9fb3V0bGluZS9yb3VuZF9jb252ZXhfcG9seWhlZHJvbl90b19vdXRsaW5lLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdHJhbnNmb3JtYXRpb24vdG9fb3V0bGluZS9iYWxsX3RvX291dGxpbmUucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy90cmFuc2Zvcm1hdGlvbi90b19vdXRsaW5lL3JvdW5kX2NvbmVfdG9fb3V0bGluZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3RyYW5zZm9ybWF0aW9uL3RvX291dGxpbmUvY2Fwc3VsZV90b19vdXRsaW5lLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdHJhbnNmb3JtYXRpb24vdG9fb3V0bGluZS9yb3VuZF9jdWJvaWRfdG9fb3V0bGluZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9waXBlbGluZS9waHlzaWNzX3BpcGVsaW5lLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL3BpcGVsaW5lL2RlYnVnX3JlbmRlcl9waXBlbGluZS9kZWJ1Z19yZW5kZXJfcGlwZWxpbmUucnMAbGlicmFyeS9zdGQvc3JjL3N5cy9wYWwvd2FzbS8uLi91bnN1cHBvcnRlZC90aW1lLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLnJ1c3R1cC90b29sY2hhaW5zL3N0YWJsZS1hYXJjaDY0LWFwcGxlLWRhcndpbi9saWIvcnVzdGxpYi9zcmMvcnVzdC9saWJyYXJ5L2NvcmUvc3JjL3RpbWUucnMAL3J1c3RjLzExNTllNzhjNDc0N2IwMmVmOTk2ZTU1MDgyYjcwNGMwOWI5NzA1ODgvbGlicmFyeS9jb3JlL3NyYy90aW1lLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvY29udGFjdF9tYW5pZm9sZHMvY29udGFjdF9tYW5pZm9sZHNfY2Fwc3VsZV9jYXBzdWxlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvY2xvc2VzdF9wb2ludHMvY2xvc2VzdF9wb2ludHNfY3Vib2lkX3RyaWFuZ2xlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvdHJpYW5nbGUucnMAbGlicmFyeS9jb3JlL3NyYy91bmljb2RlL3ByaW50YWJsZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvbmFsZ2VicmEtMC4zNC4xL3NyYy9iYXNlL3ZlY19zdG9yYWdlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcGFydGl0aW9uaW5nL2J2aC9idmhfdHJlZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvbmFsZ2VicmEtMC4zNC4xL3NyYy9saW5hbGcvcGVybXV0YXRpb25fc2VxdWVuY2UucnMAL1VzZXJzL3NlYmNyb3pldC8ucnVzdHVwL3Rvb2xjaGFpbnMvc3RhYmxlLWFhcmNoNjQtYXBwbGUtZGFyd2luL2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvYWxsb2Mvc3JjL3NsaWNlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvdm94ZWxzL3ZveGVsc19uZWlnaGJvcmhvb2QucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL2VuYS0wLjE0LjMvc3JjL3VuaWZ5L21vZC5ycwAvcnVzdC9kZXBzL2hhc2hicm93bi0wLjE1LjQvc3JjL3Jhdy9tb2QucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL2hhc2hicm93bi0wLjE2LjAvc3JjL3Jhdy9tb2QucnMAbGlicmFyeS9jb3JlL3NyYy9mbXQvbW9kLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLnJ1c3R1cC90b29sY2hhaW5zL3N0YWJsZS1hYXJjaDY0LWFwcGxlLWRhcndpbi9saWIvcnVzdGxpYi9zcmMvcnVzdC9saWJyYXJ5L2FsbG9jL3NyYy9jb2xsZWN0aW9ucy9iaW5hcnlfaGVhcC9tb2QucnMAbGlicmFyeS9zdGQvc3JjL3RocmVhZC9tb2QucnMAL1VzZXJzL3NlYmNyb3pldC8ucnVzdHVwL3Rvb2xjaGFpbnMvc3RhYmxlLWFhcmNoNjQtYXBwbGUtZGFyd2luL2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvc3RkL3NyYy9zeW5jL21wbWMvbW9kLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLnJ1c3R1cC90b29sY2hhaW5zL3N0YWJsZS1hYXJjaDY0LWFwcGxlLWRhcndpbi9saWIvcnVzdGxpYi9zcmMvcnVzdC9saWJyYXJ5L2FsbG9jL3NyYy9yYXdfdmVjL21vZC5ycwAvcnVzdGMvMTE1OWU3OGM0NzQ3YjAyZWY5OTZlNTUwODJiNzA0YzA5Yjk3MDU4OC9saWJyYXJ5L2FsbG9jL3NyYy9yYXdfdmVjL21vZC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUtYWFyY2g2NC1hcHBsZS1kYXJ3aW4vbGliL3J1c3RsaWIvc3JjL3J1c3QvbGlicmFyeS9hbGxvYy9zcmMvdmVjL21vZC5ycwBsaWJyYXJ5L2NvcmUvc3JjL251bS9mbHQyZGVjL21vZC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3NoYXBlL2NvbXBvdW5kLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL3BpcGVsaW5lL2RlYnVnX3JlbmRlcl9waXBlbGluZS9kZWJ1Z19yZW5kZXJfYmFja2VuZC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3BhcnRpdGlvbmluZy9idmgvYnZoX2Jpbm5lZF9idWlsZC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3BhcnRpdGlvbmluZy9idmgvYnZoX3Bsb2NfYnVpbGQucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9jbG9zZXN0X3BvaW50cy9jbG9zZXN0X3BvaW50c19jdWJvaWRfY3Vib2lkLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvY3Vib2lkLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvZmVhdHVyZV9pZC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUtYWFyY2g2NC1hcHBsZS1kYXJ3aW4vbGliL3J1c3RsaWIvc3JjL3J1c3QvbGlicmFyeS9hbGxvYy9zcmMvdmVjL3NwZWNfZnJvbV9pdGVyX25lc3RlZC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL21hc3NfcHJvcGVydGllcy9tYXNzX3Byb3BlcnRpZXNfdHJpbWVzaDNkLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvcG9seWdvbmFsX2ZlYXR1cmUzZC5ycwAvcnVzdC9kZXBzL2RsbWFsbG9jLTAuMi4xMC9zcmMvZGxtYWxsb2MucnMAbGlicmFyeS9zdGQvc3JjL2FsbG9jLnJzAGxpYnJhcnkvYWxsb2Mvc3JjL3N5bmMucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL2VuYS0wLjE0LjMvc3JjL3NuYXBzaG90X3ZlYy5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvanMtc3lzLTAuMy43Ny9zcmMvbGliLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9vbmNlX2NlbGwtMS4yMS4zL3NyYy9saWIucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3ZlY19tYXAtMC44LjIvc3JjL2xpYi5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2Yvc21hbGx2ZWMtMS4xNS4xL3NyYy9saWIucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9ib3VuZGluZ192b2x1bWUvYWFiYi5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9kYXRhL2NvYXJlbmEucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvZGF0YS9hcmVuYS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2dqay92b3Jvbm9pX3NpbXBsZXgzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvaGVpZ2h0ZmllbGQzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvZXBhL2VwYTMucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy90cmFuc2Zvcm1hdGlvbi9jb252ZXhfaHVsbDIucnMAL1VzZXJzL3NlYmNyb3pldC8ucnVzdHVwL3Rvb2xjaGFpbnMvc3RhYmxlLWFhcmNoNjQtYXBwbGUtZGFyd2luL2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvY29yZS9zcmMvbnVtL2YzMi5ycwABAQECAQEBAgEBAQICAgIDAQEBAgEBAQIBAQECAgICAwEBAQIBAQECAQEBAgICAgMCAgIDAgICAwICAgMDAwMEAAAAAGY1EAB5AAAANQAAACwAAABDYW5ub3QgZGVzZXJpYWxpemUgY3VzdG9tIHNoYXBlLgAAAAAAAAAAAQAAAAQAAABBbGxvY2F0aW9uIGZyb20gaXRlcmF0b3IgZXJyb3I6IHRoZSBpdGVyYXRvciBkaWQgbm90IHlpZWxkIHRoZSBjb3JyZWN0IG51bWJlciBvZiBlbGVtZW50cy4AABxWEABaAAAAJBkQAHMAAACEAAAACQAAAAAAAAAIAAAABAAAAAUAAABhIHR1cGxlIG9mIHNpemUgMgBBvK3BAAthAQAAAAYAAACqEhAAYwAAAJUEAAAiAAAAqhIQAGMAAACYBAAAHAAAAHN0cnVjdCBUcmlNZXNoIHdpdGggNyBlbGVtZW50cwAA5FYQAB4AAABhIHR1cGxlIG9mIHNpemUgMwBBqK7BAAsFAQAAAAcAQbiuwQALBQEAAAAHAEHIrsEACwUBAAAABwBB2K7BAAuJDgEAAAAHAAAAc3RydWN0IENvbXBvdW5kIHdpdGggNCBlbGVtZW50cwBgVxAAHwAAAHN0cnVjdCBQb2x5bGluZSB3aXRoIDMgZWxlbWVudHMAiFcQAB8AAAB2YXJpYW50IGluZGV4IDAgPD0gaSA8IDKwVxAAGAAAAHN0cnVjdCBDb2xsaWRlciB3aXRoIDExIGVsZW1lbnRz0FcQACAAAABzdHJ1Y3QgVm94ZWxzIHdpdGggNiBlbGVtZW50cwAAAPhXEAAdAAAAc3RydWN0IEhlaWdodEZpZWxkIHdpdGggNiBlbGVtZW50cwAAIFgQACIAAAB2YXJpYW50IGluZGV4IDAgPD0gaSA8IDIwAAAATFgQABkAAABzdHJ1Y3QgVHJpTWVzaENvbm5lY3RlZENvbXBvbmVudHMgd2l0aCAzIGVsZW1lbnRzAAAAcFgQADEAAABzdHJ1Y3QgR3JhcGggd2l0aCAyIGVsZW1lbnRzrFgQABwAAABzdHJ1Y3QgTFUgd2l0aCAyIGVsZW1lbnRzAAAA0FgQABkAAABzdHJ1Y3QgSXNsYW5kTWFuYWdlciB3aXRoIDQgZWxlbWVudHP0WBAAJAAAAHN0cnVjdCBDb252ZXhQb2x5aGVkcm9uIHdpdGggOCBlbGVtZW50cwAgWRAAJwAAAHN0cnVjdCBCdmhOb2RlV2lkZSB3aXRoIDIgZWxlbWVudHMAAFBZEAAiAAAAc3RydWN0IEJyb2FkUGhhc2VCdmggd2l0aCA0IGVsZW1lbnRzfFkQACQAAABzdHJ1Y3QgQ29udGFjdE1hbmlmb2xkRGF0YSB3aXRoIDcgZWxlbWVudHMAAKhZEAAqAAAAc3RydWN0IEpvaW50TW90b3Igd2l0aCA3IGVsZW1lbnRzAAAA3FkQACEAAABzdHJ1Y3QgR2VuZXJpY0pvaW50IHdpdGggMTEgZWxlbWVudHMIWhAAJAAAAHZhcmlhbnQgaW5kZXggMCA8PSBpIDwgMzRaEAAYAAAAdmFyaWFudCBpbmRleCAwIDw9IGkgPCA0VFoQABgAAABzdHJ1Y3QgSW50ZWdyYXRpb25QYXJhbWV0ZXJzIHdpdGggMTcgZWxlbWVudHMAAAB0WhAALQAAAHN0cnVjdCBNdWx0aWJvZHkgd2l0aCAxOCBlbGVtZW50cwAAAKxaEAAhAAAAc3RydWN0IEludGVyYWN0aW9uR3JhcGggd2l0aCAxIGVsZW1lbnQAANhaEAAmAAAAc3RydWN0IEluZGV4U2VxdWVuY2Ugd2l0aCAyIGVsZW1lbnRzCFsQACQAAABzdHJ1Y3QgSW1wdWxzZUpvaW50IHdpdGggNSBlbGVtZW50cwA0WxAAIwAAAHR1cGxlIHN0cnVjdCBNb2RpZmllZE9iamVjdHMgd2l0aCAyIGVsZW1lbnRzYFsQACwAAABzdHJ1Y3QgTXVsdGlib2R5Sm9pbnQgd2l0aCA0IGVsZW1lbnRzAAAAlFsQACUAAABzdHJ1Y3QgSW1wdWxzZUpvaW50U2V0IHdpdGggNCBlbGVtZW50cwAAxFsQACYAAABzdHJ1Y3QgTXVsdGlib2R5Sm9pbnRTZXQgd2l0aCA0IGVsZW1lbnRz9FsQACgAAABzdHJ1Y3QgTXVsdGlib2R5V29ya3NwYWNlIHdpdGggMiBlbGVtZW50cwAAACRcEAApAAAAdmFyaWFudCBpbmRleCAwIDw9IGkgPCA5WFwQABgAAABzdHJ1Y3QgVHJpTWVzaFNoYXBlQ29udGFjdE1hbmlmb2xkc1dvcmtzcGFjZSB3aXRoIDMgZWxlbWVudHN4XBAAPAAAAGA+Bf1sFmojnLZoRfP0mUYPbOaJqDM9Bw28TXTT/gtIMSQQAHYAAACGAAAAOgAAADEkEAB2AAAAfgAAAEEAAAAtHBAAdwAAAFwAAAArAAAAY2Fubm90IHJlY3Vyc2l2ZWx5IGFjcXVpcmUgbXV0ZXgMXRAAIAAAAJ4XEACBAAAAEwAAAAkAAAAAAAAADAAAAAQAAAAIAAAAAAAAACQAAAAEAAAACQAAACgpAACmGBAAfQAAAOsHAAAJAAAAoEkQAHUAAAAuAgAAEQAAAGludmFsaWQgdmFsdWU6ICwgZXhwZWN0ZWQgAACIXRAADwAAAJddEAALAAAAaW52YWxpZCBsZW5ndGggALRdEAAPAAAAl10QAAsAAAAAAAAABAAAAAQAAAAKAAAAAAAAAAQAAAAEAAAACwAAAExheW91dHNpemVhbGlnbkNhcGFjaXR5T3ZlcmZsb3cAAAAAAAQAAAAEAAAADAAAAEFsbG9jRXJybGF5b3V0AAAYAxAAcAAAAFgAAAAOAAAAAAIAAGFuIGFycmF5IG9mIHNpemUgAAAASF4QABEAQey8wQALkQMBAAAADQAAAAAAAAAMAAAABAAAAA4AAAAPAAAAEAAAABEAAAAAAAAADAAAAAQAAAAOAAAADwAAABAAAAARAAAAEgAAABMAAADHLRAAYwAAACAAAAAJAAAAdGhlIGVudW0gdmFyaWFudCBUeXBlZFNoYXBlOjpDdXN0b20gY2Fubm90IGJlIHNlcmlhbGl6ZWQrLhAAdQAAACsBAAAhAAAANTIQAGkAAACTBgAAHgAAADUyEABpAAAAlAYAAB4AAAA1MhAAaQAAAJUGAAAeAAAAAAAAACQAAAAEAAAAFAAAABUAAAAWAAAAFwAAAAAAAAAkAAAABAAAABQAAAAVAAAAFgAAABcAAAAYAAAAEwAAAIpGEABvAAAAvQEAAB0AAABNYXRyaXggaW5pdC4gZXJyb3I6IHRoZSBzbGljZSBkaWQgbm90IGNvbnRhaW4gdGhlIHJpZ2h0IG51bWJlciBvZiBlbGVtZW50cy4AjF8QAEsAAAB4JhAAbgAAAGoAAAAJAAAAUREQAHIAAAA/AAAAEABBiMDBAAvbDQEAAAAZAAAAaW5zZXJ0aW5nIHdpbGwgYWx3YXlzIHN1Y2NlZWQgYWZ0ZXIgcmVzZXJ2aW5nIGFkZGl0aW9uYWwgc3BhY2UAAPZSEABnAAAAOQEAAA4AAAD2UhAAZwAAAPkAAAAoAAAAY29ycnVwdCBmcmVlIGxpc3QAAABwYBAAEQAAAPZSEABnAAAA+gAAACsAAAD2UhAAZwAAAH0CAAAUAAAAnDMQAGcAAADxAAAAFAAAAEdyYXBoOjphZGRfZWRnZTogbm9kZSBpbmRpY2VzIG91dCBvZiBib3VuZHMAvGAQACsAAACcMxAAZwAAAOQAAAAbAAAAnDMQAGcAAAC1AAAAFAAAAIxSEABpAAAAbAAAACIAAACMUhAAaQAAAF0AAAASAAAADgwQAHQAAAChAAAANQAAAIwNEACLAAAAagEAABcAAAC9DBAAjwAAAH4AAAArAAAAvQwQAI8AAAB/AAAARgAAAL0MEACPAAAAwAAAAD4AAAC9DBAAjwAAAMEAAAAvAAAAvQwQAI8AAADEAAAAQgAAAFBhcmVudCByaWdpZCBib2R5IG5vdCBmb3VuZC6BDxAAcgAAAM0AAAAOAAAAgQ8QAHIAAADPAAAANQAAAIEPEAByAAAA1wAAACIAAACBDxAAcgAAAJ8AAAA4AAAAJDMQAHcAAAB8AAAAPwAAACQzEAB3AAAAfQAAABgAAAAkMxAAdwAAAH0AAAAxAAAAaEsQAJAAAAA9AAAAOAAAAGhLEACQAAAAPgAAADgAAABthid1OAjxNiVOiDGmsEvebm8gZW50cnkgZm91bmQgZm9yIGtleQAA+UEQAJEAAADiAQAAMQAAAPlBEACRAAAA7QEAADEAAAAAAAAAAQAAAAAAAAAkAAAABAAAABoAAAAbAAAAHAAAAB0AAAAeAAAAHwAAACAAAAAhAAAAIgAAACMAAAAAAAAAJAAAAAQAAAAJAAAAJAAAACUAAAAmAAAAJwAAAAAAAAAkAAAABAAAAAkAAAAkAAAAJQAAACYAAAAnAAAAJAAAAAAAAAAkAAAABAAAAAkAAAAkAAAAJQAAACYAAAAnAAAAJAAAACQAAAAlAAAAAAAAACQAAAAEAAAAKAAAACkAAAAqAAAAKwAAACwAAAAtAAAAGgAAABsAAAAcAAAAHQAAAB4AAAAfAAAAIAAAACEAAAAiAAAAIwAAAJxiEAAJAAAAVF0QACQAAAAlAAAAJgAAACcAAADQYhAAJAAAAPBiEAAkAAAAJQAAABRjEAAuAAAALwAAADAAAAAxAAAAMgAAADMAAAA0AAAANQAAADYAAAA3AAAAOAAAADkAAAA6AAAAOwAAADwAAAA9AAAAPgAAAD8AAAAAAAAAAQAAAAIAAAADAAAAJVFUq4UuPItzTUyuVA9+6flBEACRAAAAOgIAADEAAAAZegzzrKWwG1WJHXptAcCG+UEQAJEAAABFAgAAMQAAAPlBEACRAAAA8AAAAD4AAAD5QRAAkQAAAPAAAABIAAAAAAAAAAwAAAAEAAAAQAAAAEEAAABCAAAAQwAAAEQAAABFAAAARgAAAEcAAABIAAAASQAAAAAAAAAMAAAABAAAAAgAAABKAAAASwAAAEwAAABNAAAAAAAAAAwAAAAEAAAACAAAAEoAAABLAAAATAAAAE0AAABKAAAAAAAAAAwAAAAEAAAACAAAAEoAAABLAAAATAAAAE0AAABKAAAASgAAAEsAAAAAAAAADAAAAAQAAABOAAAATwAAAFAAAABRAAAAUgAAAFMAAABAAAAAQQAAAEIAAABDAAAARAAAAEUAAABGAAAARwAAAEgAAABJAAAAeGQQAAgAAABEXRAASgAAAEsAAABMAAAATQAAAKxkEABKAAAAzGQQAEoAAABLAAAA8GQQAFQAAABVAAAAVgAAAFcAAABYAAAAWQAAAFoAAABbAAAAXAAAAF0AAABeAAAAOQAAADoAAABfAAAAPAAAAGAAAABhAAAAYgAAAAAAAAAIAAAABAAAAGMAAABjYWxsZWQgYFJlc3VsdDo6dW53cmFwKClgIG9uIGFuIGBFcnJgIHZhbHVlALpREABgAAAAVgEAAC4AAAC6URAAYAAAAEUBAAA2AAAAulEQAGAAAADSBAAADgAAAGFzc2VydGlvbiBmYWlsZWQ6IG5ld19jYXAgPj0gbGVuulEQAGAAAACdBAAADQAAAAEAAABFeHBlY3RlZCAgY29tcG9uZW50cywgZm91bmQghGYQAAkAAACNZhAAEwAAAGFuIGFycmF5IG9mIGxlbmd0aCA2AAAAAAAAAAABAAAAZAAAAAAAAAD//////////9hmEABB8M3BAAv9CEludmFsaWQgSW1wdWxzZUpvaW50IHJlZmVyZW5jZS4gSXQgbWF5IGhhdmUgYmVlbiByZW1vdmVkIGZyb20gdGhlIHBoeXNpY3MgV29ybGQuGA4QADwAAAALAAAARAAAABgOEAA8AAAAGQAAAA4AAABJbnZhbGlkIEpvaW50IHJlZmVyZW5jZS4gSXQgbWF5IGhhdmUgYmVlbiByZW1vdmVkIGZyb20gdGhlIHBoeXNpY3MgV29ybGQuAAAATQ0QAD4AAAAOAAAADgAAAE0NEAA+AAAADwAAAB4AAABNDRAAPgAAABoAAAAOAAAATQ0QAD4AAAAbAAAAJwAAAEludmFsaWQgUmlnaWRCb2R5IHJlZmVyZW5jZS4gSXQgbWF5IGhhdmUgYmVlbiByZW1vdmVkIGZyb20gdGhlIHBoeXNpY3MgV29ybGQuAAAAgwwQADkAAAArAAAAOwAAAIMMEAA5AAAANgAAAD8AAABJbnZhbGlkIENvbGxpZGVyIHJlZmVyZW5jZS4gSXQgbWF5IGhhdmUgYmVlbiByZW1vdmVkIGZyb20gdGhlIHBoeXNpY3MgV29ybGQu9A8QADcAAAAXAAAADgAAAPQPEAA3AAAAIwAAAA4AAAD0DxAANwAAAHcAAAANAAAAAAAAAAQAAAAEAAAAZQAAAGYAAABmAAAAAAAAAAQAAAAEAAAAZQAAAGYAAABmAAAAAAAAAAQAAAAEAAAAZQAAAGYAAABmAAAAAAAAAAQAAAAEAAAAZQAAAGYAAABmAAAAAAAAAAQAAAAEAAAAZQAAAGYAAABmAAAAAAAAAAQAAAAEAAAAZQAAAGYAAABmAAAAAAAAAAQAAAAEAAAAZQAAAGYAAABmAAAAAAAAAAQAAAAEAAAAZQAAAGYAAABmAAAAAAAAAAQAAAAEAAAAZQAAAGYAAABmAAAAAAAAAAQAAAAEAAAAZQAAAGYAAABmAAAAAAAAAAQAAAAEAAAAZQAAAGYAAABmAAAAAAAAAAQAAAAEAAAAZQAAAGYAAABmAAAAMC4xOS4zAAAtFxAAcAAAACQBAAAOAAAAYXR0ZW1wdGVkIHRvIHRha2Ugb3duZXJzaGlwIG9mIFJ1c3QgdmFsdWUgd2hpbGUgaXQgd2FzIGJvcnJvd2VkAG0bEAA+AAAAxQAAACQAAABpbnZhbGlkIGVudW0gdmFsdWUgcGFzc2VkAAAAlwEQADUAAAAKAgAAMgAAAE5vdCB5ZXQgaW1wbGVtZW50ZWQuNh8QADMAAACoAAAAIgAAADYfEAAzAAAA4gIAAA4AAAA2HxAAMwAAACUDAAAOAAAAwzYQADcAAADPAAAAMwAAAMM2EAA3AAAA0wAAADMAAADDNhAANwAAANcAAAAzAAAApDwQADAAAAAxAQAAQAAAAKQ8EAAwAAAAPAEAADgAAACkPBAAMAAAADwBAAA+AAAApDwQADAAAACFAQAAQAAAAKQ8EAAwAAAAhQEAAEYAAACkPBAAMAAAAJABAABAAAAApDwQADAAAACQAQAARgBB+NbBAAsNAQAAAGcAAABoAAAAaQBBkNfBAAutAwEAAABqAAAAawAAAGwAAAAMAAAABAAAAG0AAABuAAAAbwAAAHAAAAAQAAAABAAAAHEAAAByAAAAc3RydWN0IERlc2VyaWFsaXphYmxlV29ybGQgd2l0aCA5IGVsZW1lbnRzAADIaxAAKgAAAAAAAAAFAAAABgAAAAYAAAAGAAAABgAAAAYAAAACAAAAAQAAAP////9JbnZhbGlkIHNpemUgOiBzaXplcyBtdXN0IGZpdCBpbiBhIHVzaXplICgwIHRvICkkbBAADQAAADFsEAAiAAAAU2wQAAEAAABjYXBhY2l0eSBvdmVyZmxvd1RoZSBsb29zZW5pbmcgbWFyZ2luIG11c3QgYmUgcG9zaXRpdmUuAH1sEAAmAAAAG1IQAHAAAADXAwAACQAAAGY1EAB5AAAANQAAACwAAABBbGxvY2F0aW9uIGZyb20gaXRlcmF0b3IgZXJyb3I6IHRoZSBpdGVyYXRvciBkaWQgbm90IHlpZWxkIHRoZSBjb3JyZWN0IG51bWJlciBvZiBlbGVtZW50cy4AAMxsEABaAAAAJBkQAHMAAACEAAAACQBByNrBAAuDDQEAAAB6AAAAewAAAHwAAAB9AAAAfgAAAH8AAACAAAAAgQAAAKUcEAB6AAAAlwIAADEAAAClHBAAegAAAKoCAAAxAAAApRwQAHoAAADaAgAAIwAAAKUcEAB6AAAAFgMAAC8AAAClHBAAegAAACUDAAAvAAAATWF0cml4IGluaXQuIGZyb20gaXRlcmF0b3I6IGl0ZXJhdG9yIG5vdCBsb25nIGVub3VnaC4AAAC8bRAANQAAACQZEABzAAAATgAAAAkAAAAwciB1dSYcu2LQl0mtouwPD2zmiagzPQcNvE100/4LSEP80g6IdOMHx9L/edARZpxthid1OAjxNiVOiDGmsEveYD4F/WwWaiOctmhF8/SZRh2b0oLJrgfQEQizoAXNMcppbnRlcm5hbCBlcnJvcjogZW50ZXJlZCB1bnJlYWNoYWJsZSBjb2RlKkkQAHUAAACQAQAALQAAAPoFEAB2AAAA8wAAAEMAAAAxJBAAdgAAAK8AAAAtAAAAMSQQAHYAAADFAAAAJgAAADEkEAB2AAAAxwAAAEkAAAAxJBAAdgAAAMgAAABHAAAAMSQQAHYAAADMAAAASQAAADEkEAB2AAAAzQAAAEcAAADNARAAdwAAAGEBAAAqAAAAzQEQAHcAAABjAQAANwAAAC0cEAB3AAAAXAAAACsAAAAtHBAAdwAAADoAAAAoAAAALRwQAHcAAAAxAAAAGAAAAAEFEAB5AAAAMAAAAB4AAABjYW5ub3QgcmVjdXJzaXZlbHkgYWNxdWlyZSBtdXRleHRvEAAgAAAAnhcQAIEAAAATAAAACQAAAIIAAAAgAAAACAAAAIMAAACEAAAAIAAAAAgAAACFAAAAAAAAACQAAAAEAAAAhgAAAAAAAAAMAAAABAAAAIcAAACIAAAAIAAAAAgAAACJAAAAKCkAAKYYEAB9AAAA6wcAAAkAAABtaWQgPiBsZW4AAAAQcBAACQAAAAAAAAAEAAAABAAAAIoAAAAAAAAABAAAAAQAAACLAAAAhkgQAIUAAACuAgAAEwAAAKBJEAB1AAAALgIAABEAAAAAAAAABAAAAAQAAACMAAAAAAAAAAQAAAAEAAAAjQAAAExheW91dHNpemVhbGlnbkNhcGFjaXR5T3ZlcmZsb3cAAAAAAAQAAAAEAAAAjgAAAEFsbG9jRXJybGF5b3V0AAAAAAAADAAAAAQAAACPAAAAkAAAAJEAAACSAAAAAAAAAAwAAAAEAAAAjwAAAJAAAACRAAAAkgAAABIAAACTAAAAZjUQAHkAAABqAQAAIwAAAHsFEAB+AAAALAAAAB8AAAB7BRAAfgAAAGAAAAAgAAAAewUQAH4AAABhAAAAIAAAAHsFEAB+AAAAoQAAACMAAAB7BRAAfgAAAL4AAAAvAAAA4ykQAI0AAAB7AAAAIQAAADctEACPAAAAMQAAAB0AAACJKxAAkQAAAIEAAAAdAAAAGywQAJEAAABzAAAAHQAAABssEACRAAAAfQAAABcAAAB3NxAAkgAAAHcAAAAcAAAAdzcQAJIAAAB3AAAANgAAAHc3EACSAAAAmgAAADkAAAB3NxAAkgAAAKEAAAAnAAAAdzcQAJIAAACwAAAAIwAAAHc3EACSAAAAvQAAACoAAAAAAAAADAAAAAQAAACUAAAAlQAAAJYAAACXAAAAmAAAAJkAAACaAAAAmwAAAJwAAACdAAAAAAAAAAwAAAAEAAAAhwAAAJ4AAACfAAAAoAAAAKEAAAAAAAAADAAAAAQAAACHAAAAngAAAJ8AAACgAAAAoQAAAJ4AAAAAAAAADAAAAAQAAACHAAAAngAAAJ8AAACgAAAAoQAAAJ4AAACeAAAAnwAAAAAAAAAMAAAABAAAAKIAAACjAAAApAAAAKUAAACmAAAApwAAAJQAAACVAAAAlgAAAJcAAACYAAAAmQAAAJoAAACbAAAAnAAAAJ0AAAAUchAAhwAAANxvEACeAAAAnwAAAKAAAAChAAAASHIQAJ4AAABochAAngAAAJ8AAACMchAAVAAAAFUAAACoAAAAVwAAAFgAAABZAAAAqQAAAFsAAACqAAAAqwAAAF4AAACsAAAArQAAAK4AAACvAAAAsAAAAGEAAACxAAAAVW5zdXBwb3J0ZWQgY29sbGlzaW9uIHBhaXIuAHc3EACSAAAAEgEAABoAAAB3NxAAkgAAACwBAAAqAAAAAAAAAP//////////wHMQAEHY58EAC7UiggAAACAAAAAIAAAAgwAAALIAAACzAAAAtAAAALUAAACyAAAAsgAAALMAAAC2AAAAtwAAAIQAAAAgAAAACAAAAIUAAAC4AAAAuQAAALoAAAC7AAAAuAAAALgAAAC5AAAAvAAAAL0AAACIAAAAIAAAAAgAAACJAAAAvgAAAL8AAADAAAAAwQAAAL4AAAC+AAAAvwAAAMIAAADDAAAAcSoQAJMAAABAAAAAFAAAAHEqEACTAAAARgAAAB0AAAAKOBAAkwAAAGgAAAAcAAAACjgQAJMAAABoAAAANgAAAAo4EACTAAAAtwAAACkAAAAKOBAAkwAAALoAAAAXAAAACjgQAJMAAAC9AAAAJgAAAAAAAAAwAAAABAAAAMQAAADFAAAAxgAAAMcAAAAAAAAAJAAAAAQAAADIAAAAyQAAAMoAAADLAAAAzAAAAM0AAADOAAAAzwAAANAAAADRAAAAAAAAACQAAAAEAAAAhgAAANIAAADTAAAA1AAAANUAAAAAAAAAJAAAAAQAAACGAAAA0gAAANMAAADUAAAA1QAAANIAAAAAAAAAJAAAAAQAAACGAAAA0gAAANMAAADUAAAA1QAAANIAAADSAAAA0wAAAAAAAAAkAAAABAAAANYAAADXAAAA2AAAANkAAADaAAAA2wAAAMgAAADJAAAAygAAAMsAAADMAAAAzQAAAM4AAADPAAAA0AAAANEAAAAAdRAAhgAAAMxvEADSAAAA0wAAANQAAADVAAAANHUQANIAAABUdRAA0gAAANMAAAB4dRAALgAAAC8AAADcAAAAMQAAADIAAAAzAAAA3QAAADUAAADeAAAA3wAAAOAAAACsAAAArQAAAOEAAACvAAAA4gAAAD4AAADjAAAA1hQQAJMAAAA8AAAAHAAAANYUEACTAAAAPAAAADYAAADWFBAAkwAAAEABAAAuAAAA1hQQAJMAAAByAAAAOQAAANYUEACTAAAAeQAAACcAAADWFBAAkwAAAIYAAAAjAAAA1hQQAJMAAACTAAAAKgAAAHZDEACVAAAArgAAAB0AAACdOxAAlwAAAG8AAAAcAAAAnTsQAJcAAABvAAAANgAAAJ07EACXAAAAgwAAAC0AAACdOxAAlwAAAIYAAAAbAAAAnTsQAJcAAACQAAAAGwAAAJ07EACXAAAAmgAAACYAAAABOxAAmwAAAEgAAAAcAAAAATsQAJsAAABIAAAANgAAAAAAAAA0AAAABAAAAOQAAADlAAAAATsQAJsAAABcAAAAMQAAAAE7EACbAAAAXwAAAB8AAAABOxAAmwAAAHQAAAAfAAAAATsQAJsAAAB5AAAAKgAAABw5EACcAAAASgAAABwAAAAcORAAnAAAAEoAAAA2AAAAHDkQAJwAAAAXAQAAKgAAABw5EACcAAAAdgAAADkAAAAcORAAnAAAAH0AAAAnAAAAHDkQAJwAAACQAAAAIwAAABw5EACcAAAAnQAAAC4AAAAAAAAAMAAAAAQAAADmAAAA5wAAABw5EACcAAAA8gAAACIAAABfOhAAoQAAAEsAAAAcAAAAXzoQAKEAAABLAAAANgAAAAAAAAA4AAAABAAAAOgAAADpAAAAXzoQAKEAAABiAAAANQAAAF86EAChAAAAZQAAACMAAABfOhAAoQAAAHoAAAAjAAAAXzoQAKEAAAB/AAAALgAAALk5EAClAAAASAAAABwAAAC5ORAApQAAAEgAAAA2AAAAAAAAADAAAAAEAAAA6gAAAOsAAAAAAAAAPAAAAAQAAADsAAAA7QAAALk5EAClAAAAdwAAAD0AAAC5ORAApQAAAHoAAAArAAAAuTkQAKUAAACRAAAAKwAAALk5EAClAAAAlgAAADYAAABEVBAAagAAAMgBAAAkAAAARFQQAGoAAADJAQAAJAAAAERUEABqAAAAygEAACQAAABEVBAAagAAAN8BAAAYAAAARFQQAGoAAADgAQAAGAAAAERUEABqAAAA4QEAABgAAABEVBAAagAAAOIBAAAYAAAARFQQAGoAAADlAQAAJwAAAERUEABqAAAA5QEAAEQAAABEVBAAagAAAOoBAAAnAAAARFQQAGoAAADqAQAARAAAAERUEABqAAAA7wEAACcAAABEVBAAagAAAO8BAABEAAAARFQQAGoAAAD0AQAAJwAAAERUEABqAAAA9AEAAEQAAABIaXQgdW5leHBlY3RlZCBzdGF0ZSBpbiBFUEE6IGZhaWxlZCB0byBwcm9qZWN0IHRoZSBvcmlnaW4gb24gdGhlIGluaXRpYWwgc2ltcGxleC4AAABAehAAUQAAAERUEABqAAAA/AEAABEAAABwYXJyeTNkOjpxdWVyeTo6ZXBhOjplcGEzAAAARFQQAGoAAAABAgAAKAAAAERUEABqAAAAFAIAABgAAABEVBAAagAAABUCAAAYAAAARFQQAGoAAAAlAgAAIgAAAERUEABqAAAALQIAABsAAABEVBAAagAAAEQCAAAXAAAARFQQAGoAAABGAgAALAAAAERUEABqAAAARwIAACwA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TAAAAA4AAABEVBAAagAAAGIAAAANAAAARFQQAGoAAABjAAAADQAAAERUEABqAAAAZAAAAA0AAABEVBAAagAAAHoAAAANAAAARFQQAGoAAAB7AAAAEwAAAERUEABqAAAAfAAAABMAAABIaXQgdW5leHBlY3RlZCBzdGF0ZSBpbiBFUEE6IGZvdW5kIGluZGV4ICwgZXhwZWN0ZWQ6IAAAAIzFEAApAAAAtcUQAAwAAAA4rxAAAQAAAERUEABqAAAAjgAAABEAAABwYXJyeTNkOjpxdWVyeTo6ZXBhOjplcGEzAAAARFQQAGoAAACaAAAAHAAAAERUEABqAAAAmgAAABMAAABEVBAAagAAAJsAAAATAAAARFQQAGoAAACcAAAAEwAAAERUEABqAAAAnQAAABMAAABEVBAAagAAAN8BAAAYAAAARFQQAGoAAADgAQAAGAAAAERUEABqAAAA4QEAABgAAABEVBAAagAAAOIBAAAYAAAARFQQAGoAAADlAQAAJwAAAERUEABqAAAA5QEAAEQAAABEVBAAagAAAOoBAAAnAAAARFQQAGoAAADqAQAARAAAAERUEABqAAAA7wEAACcAAABEVBAAagAAAO8BAABEAAAARFQQAGoAAAD0AQAAJwAAAERUEABqAAAA9AEAAEQAAABIaXQgdW5leHBlY3RlZCBzdGF0ZSBpbiBFUEE6IGZhaWxlZCB0byBwcm9qZWN0IHRoZSBvcmlnaW4gb24gdGhlIGluaXRpYWwgc2ltcGxleC4AAAAYxxAAUQAAAERUEABqAAAA/AEAABEAAABEVBAAagAAABQCAAAYAAAARFQQAGoAAAAVAgAAGAAAAERUEABqAAAAJQIAACIAAABEVBAAagAAAC0CAAAbAAAARFQQAGoAAABEAgAAFwAAAERUEABqAAAARgIAACwAAABEVBAAagAAAEcCAAAsAAAARFQQAGoAAABIAgAALAAAAERUEABqAAAAegIAABcAAABEVBAAagAAAHsCAAAjAAAARFQQAGoAAABWAgAAHwAAAERUEABqAAAAYwIAACAAAABEVBAAagAAAGYCAAA6AAAARFQQAGoAAABmAgAALwAAAERUEABqAAAAPQIAACwAAABEVBAAagAAAIgCAAAkAAAARFQQAGoAAADAAQAAGwAAAERUEABqAAAABwIAABoAAABEVBAA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").buffer)})}function q_Q(){return function(){let A,Q;try{let J=O.__wbindgen_add_to_stack_pointer(-16);O.version(J);var B=NY().getInt32(J+0,!0),Y=NY().getInt32(J+4,!0);return A=B,Q=Y,L_(B,Y)}finally{O.__wbindgen_add_to_stack_pointer(16),O.__wbindgen_export_1(A,Q,1)}}()}function M_Q(A){var Q;Q=A,O.reserve_memory(Q)}T9[45]=62,T9[95]=63;var WB=Object.freeze({__proto__:null,version:q_Q,reserveMemory:M_Q,Vector3:x_,VectorOps:a,Quaternion:gM,RotationOps:hQ,SdpMatrix3:f_,SdpMatrix3Ops:hM,get RigidBodyType(){return HC},RigidBody:mM,RigidBodyDesc:w1,RigidBodySet:b_,IntegrationParameters:m_,get JointType(){return BJ},get MotorModel(){return q_},get JointAxesMask(){return M_},ImpulseJoint:NC,UnitImpulseJoint:rM,FixedImpulseJoint:u_,RopeImpulseJoint:d_,SpringImpulseJoint:c_,PrismaticImpulseJoint:l_,RevoluteImpulseJoint:p_,GenericImpulseJoint:i_,SphericalImpulseJoint:n_,JointData:lX,ImpulseJointSet:s_,MultibodyJoint:rG,UnitMultibodyJoint:aM,FixedMultibodyJoint:r_,PrismaticMultibodyJoint:a_,RevoluteMultibodyJoint:o_,SphericalMultibodyJoint:t_,MultibodyJointSet:e_,get CoefficientCombineRule(){return oV},CCDSolver:Av,IslandManager:Qv,BroadPhase:Bv,NarrowPhase:Yv,TempContactManifold:Jv,Shape:JY,get ShapeType(){return YY},get HeightFieldFlags(){return z_},get TriMeshFlags(){return R_},Ball:tM,HalfSpace:Cv,Cuboid:eM,RoundCuboid:Az,Capsule:Qz,Segment:Bz,Triangle:Yz,RoundTriangle:Jz,Polyline:Cz,Voxels:Xz,TriMesh:Gz,ConvexPolyhedron:AI,RoundConvexPolyhedron:QI,Heightfield:Wz,Cylinder:Fz,RoundCylinder:Zz,Cone:$z,RoundCone:Uz,get ActiveCollisionTypes(){return bM},Collider:dM,get MassPropsMode(){return RF},ColliderDesc:BY,ColliderSet:Kv,get FeatureType(){return N4},Ray:Ie,RayIntersection:YI,RayColliderIntersection:tV,RayColliderHit:oM,PointProjection:JI,PointColliderProjection:eV,ShapeCastHit:q4,ColliderShapeCastHit:CI,ShapeContact:L4,World:Ez,PhysicsPipeline:Xv,SerializationPipeline:uM,get ActiveEvents(){return xM},TempContactForceEvent:Ev,EventQueue:He,get ActiveHooks(){return fM},get SolverFlags(){return j_},DebugRenderBuffers:Gv,DebugRenderPipeline:Wv,get QueryFilterFlags(){return O_},init:L_Q,CharacterCollision:Fv,KinematicCharacterController:Zv,get PidAxesMask(){return w_},PidController:$v,DynamicRayCastVehicleController:Uv});var jF;((H)=>{H[H.BLOCK=1]="BLOCK";H[H.ENTITY=2]="ENTITY";H[H.ENTITY_SENSOR=4]="ENTITY_SENSOR";H[H.ENVIRONMENT_ENTITY=8]="ENVIRONMENT_ENTITY";H[H.PLAYER=16]="PLAYER";H[H.GROUP_1=32]="GROUP_1";H[H.GROUP_2=64]="GROUP_2";H[H.GROUP_3=128]="GROUP_3";H[H.GROUP_4=256]="GROUP_4";H[H.GROUP_5=512]="GROUP_5";H[H.GROUP_6=1024]="GROUP_6";H[H.GROUP_7=2048]="GROUP_7";H[H.GROUP_8=4096]="GROUP_8";H[H.GROUP_9=8192]="GROUP_9";H[H.GROUP_10=16384]="GROUP_10";H[H.GROUP_11=32768]="GROUP_11";H[H.ALL=65535]="ALL"})(jF||={});class LC{static BELONGS_TO_SHIFT=16;static COLLIDES_WITH_MASK=65535;static buildRawCollisionGroups(A){return this.combineGroups(A.belongsTo)<>>this.BELONGS_TO_SHIFT),collidesWith:this.bitsToGroups(A&this.COLLIDES_WITH_MASK)}}static decodeCollisionGroups(A){return{belongsTo:A.belongsTo.map((Q)=>this.groupToName(Q)),collidesWith:A.collidesWith.map((Q)=>this.groupToName(Q))}}static isDefaultCollisionGroups(A){return A.belongsTo.includes(65535)&&A.collidesWith.includes(65535)}static combineGroups(A){return A.reduce((Q,B)=>Q|B,0)}static bitsToGroups(A){if(A===65535)return[65535];return Object.values(jF).filter((Q)=>typeof Q==="number"&&Q!==65535&&(A&Q)!==0)}static groupToName(A){let Q=Object.entries(jF).find(([B,Y])=>Y===A);if(!Q)l.fatalError(`CollisionGroupsBuilder.groupToName(): Unknown collision group: ${A}`);return Q[0]}}var Le=qA(Ne(),1);var qe=Le.default;class BQ{static globalInstance=new BQ;_emitter=new qe;_finalListeners={};emit(A,Q){if(this.listenerCount(A)===0)return!1;try{this._emitter.emit(A,Q),this._finalListeners[A]?.(Q)}catch(B){console.error(`EventRouter.emit(): Error emitting event "${A}":`,B)}return!0}emitWithGlobal(A,Q){this.emit(A,Q),BQ.globalInstance.emit(A,Q)}emitWithWorld(A,Q,B){this.emit(Q,B),A.emit(Q,B)}final(A,Q){if(this._finalListeners[A]&&Q!==this._finalListeners[A])return l.error(`EventRouter.final(): Listener for event type "${A}" already exists. It must be removed explicitly with .off() before a different final listener can be set.`);this._finalListeners[A]=Q}hasListeners(A){return this._emitter.listenerCount(A)>0||A in this._finalListeners}listeners(A){return[...this._emitter.listeners(A),...this._finalListeners[A]?[this._finalListeners[A]]:[]]}listenerCount(A){return this._emitter.listenerCount(A)+(this._finalListeners[A]?1:0)}off(A,Q){if(this._emitter.removeListener(A,Q),this._finalListeners[A]===Q)delete this._finalListeners[A]}offAll(A){if(this._emitter.removeAllListeners(A),A)delete this._finalListeners[A];else this._finalListeners={}}on(A,Q){this._emitter.addListener(A,Q)}once(A,Q){this._emitter.once(A,Q)}}import TJB from"crypto";import z8 from"fs";import SJB from"os";import jJ from"path";function CY(A){if(typeof A!=="object"||A===null)return!1;let Q=Object.getPrototypeOf(A);return(Q===null||Q===Object.prototype||Object.getPrototypeOf(Q)===null)&&!(Symbol.toStringTag in A)&&!(Symbol.iterator in A)}import{fileURLToPath as w_Q}from"node:url";var M4=(A,Q)=>{let B=Dv(j_Q(A));if(typeof B!=="string")throw TypeError(`${Q} must be a string or a file URL: ${B}.`);return B},j_Q=(A)=>Hv(A)?A.toString():A,Hv=(A)=>typeof A!=="string"&&A&&Object.getPrototypeOf(A)===String.prototype,Dv=(A)=>A instanceof URL?w_Q(A):A;var Vz=(A,Q=[],B={})=>{let Y=M4(A,"First argument"),[J,C]=CY(Q)?[[],Q]:[Q,B];if(!Array.isArray(J))throw TypeError(`Second argument must be either an array of arguments or an options object: ${J}`);if(J.some((W)=>typeof W==="object"&&W!==null))throw TypeError(`Second argument must be an array of strings: ${J}`);let X=J.map(String),G=X.find((W)=>W.includes("\x00"));if(G!==void 0)throw TypeError(`Arguments cannot contain null bytes ("\\0"): ${G}`);if(!CY(C))throw TypeError(`Last argument must be an options object: ${C}`);return[Y,X,C]};import{ChildProcess as v_Q}from"node:child_process";import{StringDecoder as O_Q}from"node:string_decoder";var{toString:Me}=Object.prototype,ze=(A)=>Me.call(A)==="[object ArrayBuffer]",TY=(A)=>Me.call(A)==="[object Uint8Array]",rX=(A)=>new Uint8Array(A.buffer,A.byteOffset,A.byteLength),P_Q=new TextEncoder,Re=(A)=>P_Q.encode(A),T_Q=new TextDecoder,Iz=(A)=>T_Q.decode(A),we=(A,Q)=>{return S_Q(A,Q).join("")},S_Q=(A,Q)=>{if(Q==="utf8"&&A.every((C)=>typeof C==="string"))return A;let B=new O_Q(Q),Y=A.map((C)=>typeof C==="string"?Re(C):C).map((C)=>B.write(C)),J=B.end();return J===""?Y:[...Y,J]},GI=(A)=>{if(A.length===1&&TY(A[0]))return A[0];return Nv(k_Q(A))},k_Q=(A)=>A.map((Q)=>typeof Q==="string"?Re(Q):Q),Nv=(A)=>{let Q=new Uint8Array(__Q(A)),B=0;for(let Y of A)Q.set(Y,B),B+=Y.length;return Q},__Q=(A)=>{let Q=0;for(let B of A)Q+=B.length;return Q};var Te=(A)=>Array.isArray(A)&&Array.isArray(A.raw),Se=(A,Q)=>{let B=[];for(let[C,X]of A.entries())B=y_Q({templates:A,expressions:Q,tokens:B,index:C,template:X});if(B.length===0)throw TypeError("Template script must not be empty");let[Y,...J]=B;return[Y,J,{}]},y_Q=({templates:A,expressions:Q,tokens:B,index:Y,template:J})=>{if(J===void 0)throw TypeError(`Invalid backslash sequence: ${A.raw[Y]}`);let{nextTokens:C,leadingWhitespaces:X,trailingWhitespaces:G}=g_Q(J,A.raw[Y]),W=Oe(B,C,X);if(Y===Q.length)return W;let F=Q[Y],Z=Array.isArray(F)?F.map((U)=>Pe(U)):[Pe(F)];return Oe(W,Z,G)},g_Q=(A,Q)=>{if(Q.length===0)return{nextTokens:[],leadingWhitespaces:!1,trailingWhitespaces:!1};let B=[],Y=0,J=je.has(Q[0]);for(let X=0,G=0;XB||A.length===0||Q.length===0?[...A,...Q]:[...A.slice(0,-1),`${A.at(-1)}${Q[0]}`,...Q.slice(1)],Pe=(A)=>{let Q=typeof A;if(Q==="string")return A;if(Q==="number")return String(A);if(CY(A)&&(("stdout"in A)||("isMaxBuffer"in A)))return x_Q(A);if(A instanceof v_Q||Object.prototype.toString.call(A)==="[object Promise]")throw TypeError("Unexpected subprocess in template expression. Please use ${await subprocess} instead of ${subprocess}.");throw TypeError(`Unexpected "${Q}" in template expression`)},x_Q=({stdout:A})=>{if(typeof A==="string")return A;if(TY(A))return Iz(A);if(A===void 0)throw TypeError(`Missing result.stdout in template expression. This is probably due to the previous subprocess' "stdout" option.`);throw TypeError(`Unexpected "${typeof A}" stdout in template expression`)};import{spawnSync as lxQ}from"node:child_process";import{debuglog as f_Q}from"node:util";import Lv from"node:process";var qC=(A)=>Hz.includes(A),Hz=[Lv.stdin,Lv.stdout,Lv.stderr],Q5=["stdin","stdout","stderr"],Dz=(A)=>Q5[A]??`stdio[${A}]`;var _e=(A)=>{let Q={...A};for(let B of zv)Q[B]=qv(A,B);return Q},qv=(A,Q)=>{let B=Array.from({length:b_Q(A)+1}),Y=m_Q(A[Q],B,Q);return p_Q(Y,Q)},b_Q=({stdio:A})=>Array.isArray(A)?Math.max(A.length,Q5.length):Q5.length,m_Q=(A,Q,B)=>CY(A)?u_Q(A,Q,B):Q.fill(A),u_Q=(A,Q,B)=>{for(let Y of Object.keys(A).sort(d_Q))for(let J of c_Q(Y,B,Q))Q[J]=A[Y];return Q},d_Q=(A,Q)=>ke(A){if(A==="stdout"||A==="stderr")return 0;return A==="all"?2:1},c_Q=(A,Q,B)=>{if(A==="ipc")return[B.length-1];let Y=Mv(A);if(Y===void 0||Y===0)throw TypeError(`"${Q}.${A}" is invalid. It must be "${Q}.stdout", "${Q}.stderr", "${Q}.all", "${Q}.ipc", or "${Q}.fd3", "${Q}.fd4" (and so on).`);if(Y>=B.length)throw TypeError(`"${Q}.${A}" is invalid: that file descriptor does not exist. -Please set the "stdio" option to ensure that file descriptor exists.`);return Y==="all"?[1,2]:[Y]},n_=(A)=>{if(A==="all")return A;if(i8.includes(A))return i8.indexOf(A);let Q=ckQ.exec(A);if(Q!==null)return Number(Q[1])},ckQ=/^fd(\d+)$/,lkQ=(A,Q)=>A.map((B)=>B===void 0?ikQ[Q]:B),pkQ=xkQ("execa").enabled?"full":"none",ikQ={lines:!1,buffer:!0,maxBuffer:1e8,verbose:pkQ,stripFinalNewline:!0},s_=["lines","buffer","maxBuffer","verbose","stripFinalNewline"],u6=(A,Q)=>Q==="ipc"?A.at(-1):A[Q];var K4=({verbose:A},Q)=>r_(A,Q)!=="none",V4=({verbose:A},Q)=>!["none","short"].includes(r_(A,Q)),it=({verbose:A},Q)=>{let B=r_(A,Q);return aM(B)?B:void 0},r_=(A,Q)=>Q===void 0?nkQ(A):u6(A,Q),nkQ=(A)=>A.find((Q)=>aM(Q))??oM.findLast((Q)=>A.includes(Q)),aM=(A)=>typeof A==="function",oM=["none","short","full"];import{inspect as V_Q}from"node:util";import{platform as skQ}from"node:process";import{stripVTControlCharacters as rkQ}from"node:util";var nt=(A,Q)=>{let B=[A,...Q],Y=B.join(" "),J=B.map((C)=>Q_Q(st(C))).join(" ");return{command:Y,escapedCommand:J}},aV=(A)=>rkQ(A).split(` -`).map((Q)=>st(Q)).join(` -`),st=(A)=>A.replaceAll(tkQ,(Q)=>akQ(Q)),akQ=(A)=>{let Q=ekQ[A];if(Q!==void 0)return Q;let B=A.codePointAt(0),Y=B.toString(16);return B<=A_Q?`\\u${Y.padStart(4,"0")}`:`\\U${Y}`},okQ=()=>{try{return new RegExp("\\p{Separator}|\\p{Other}","gu")}catch{return/[\s\u0000-\u001F\u007F-\u009F\u00AD]/g}},tkQ=okQ(),ekQ={" ":" ","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r","\t":"\\t"},A_Q=65535,Q_Q=(A)=>{if(B_Q.test(A))return A;return skQ==="win32"?`"${A.replaceAll('"','""')}"`:`'${A.replaceAll("'","'\\''")}'`},B_Q=/^[\w./-]+$/;import rt from"node:process";function a_(){let{env:A}=rt,{TERM:Q,TERM_PROGRAM:B}=A;if(rt.platform!=="win32")return Q!=="linux";return Boolean(A.WT_SESSION)||Boolean(A.TERMINUS_SUBLIME)||A.ConEmuTask==="{cmd::Cmder}"||B==="Terminus-Sublime"||B==="vscode"||Q==="xterm-256color"||Q==="alacritty"||Q==="rxvt-unicode"||Q==="rxvt-unicode-256color"||A.TERMINAL_EMULATOR==="JetBrains-JediTerm"}var at={circleQuestionMark:"(?)",questionMarkPrefix:"(?)",square:"█",squareDarkShade:"▓",squareMediumShade:"▒",squareLightShade:"░",squareTop:"▀",squareBottom:"▄",squareLeft:"▌",squareRight:"▐",squareCenter:"■",bullet:"●",dot:"․",ellipsis:"…",pointerSmall:"›",triangleUp:"▲",triangleUpSmall:"▴",triangleDown:"▼",triangleDownSmall:"▾",triangleLeftSmall:"◂",triangleRightSmall:"▸",home:"⌂",heart:"♥",musicNote:"♪",musicNoteBeamed:"♫",arrowUp:"↑",arrowDown:"↓",arrowLeft:"←",arrowRight:"→",arrowLeftRight:"↔",arrowUpDown:"↕",almostEqual:"≈",notEqual:"≠",lessOrEqual:"≤",greaterOrEqual:"≥",identical:"≡",infinity:"∞",subscriptZero:"₀",subscriptOne:"₁",subscriptTwo:"₂",subscriptThree:"₃",subscriptFour:"₄",subscriptFive:"₅",subscriptSix:"₆",subscriptSeven:"₇",subscriptEight:"₈",subscriptNine:"₉",oneHalf:"½",oneThird:"⅓",oneQuarter:"¼",oneFifth:"⅕",oneSixth:"⅙",oneEighth:"⅛",twoThirds:"⅔",twoFifths:"⅖",threeQuarters:"¾",threeFifths:"⅗",threeEighths:"⅜",fourFifths:"⅘",fiveSixths:"⅚",fiveEighths:"⅝",sevenEighths:"⅞",line:"─",lineBold:"━",lineDouble:"═",lineDashed0:"┄",lineDashed1:"┅",lineDashed2:"┈",lineDashed3:"┉",lineDashed4:"╌",lineDashed5:"╍",lineDashed6:"╴",lineDashed7:"╶",lineDashed8:"╸",lineDashed9:"╺",lineDashed10:"╼",lineDashed11:"╾",lineDashed12:"−",lineDashed13:"–",lineDashed14:"‐",lineDashed15:"⁃",lineVertical:"│",lineVerticalBold:"┃",lineVerticalDouble:"║",lineVerticalDashed0:"┆",lineVerticalDashed1:"┇",lineVerticalDashed2:"┊",lineVerticalDashed3:"┋",lineVerticalDashed4:"╎",lineVerticalDashed5:"╏",lineVerticalDashed6:"╵",lineVerticalDashed7:"╷",lineVerticalDashed8:"╹",lineVerticalDashed9:"╻",lineVerticalDashed10:"╽",lineVerticalDashed11:"╿",lineDownLeft:"┐",lineDownLeftArc:"╮",lineDownBoldLeftBold:"┓",lineDownBoldLeft:"┒",lineDownLeftBold:"┑",lineDownDoubleLeftDouble:"╗",lineDownDoubleLeft:"╖",lineDownLeftDouble:"╕",lineDownRight:"┌",lineDownRightArc:"╭",lineDownBoldRightBold:"┏",lineDownBoldRight:"┎",lineDownRightBold:"┍",lineDownDoubleRightDouble:"╔",lineDownDoubleRight:"╓",lineDownRightDouble:"╒",lineUpLeft:"┘",lineUpLeftArc:"╯",lineUpBoldLeftBold:"┛",lineUpBoldLeft:"┚",lineUpLeftBold:"┙",lineUpDoubleLeftDouble:"╝",lineUpDoubleLeft:"╜",lineUpLeftDouble:"╛",lineUpRight:"└",lineUpRightArc:"╰",lineUpBoldRightBold:"┗",lineUpBoldRight:"┖",lineUpRightBold:"┕",lineUpDoubleRightDouble:"╚",lineUpDoubleRight:"╙",lineUpRightDouble:"╘",lineUpDownLeft:"┤",lineUpBoldDownBoldLeftBold:"┫",lineUpBoldDownBoldLeft:"┨",lineUpDownLeftBold:"┥",lineUpBoldDownLeftBold:"┩",lineUpDownBoldLeftBold:"┪",lineUpDownBoldLeft:"┧",lineUpBoldDownLeft:"┦",lineUpDoubleDownDoubleLeftDouble:"╣",lineUpDoubleDownDoubleLeft:"╢",lineUpDownLeftDouble:"╡",lineUpDownRight:"├",lineUpBoldDownBoldRightBold:"┣",lineUpBoldDownBoldRight:"┠",lineUpDownRightBold:"┝",lineUpBoldDownRightBold:"┡",lineUpDownBoldRightBold:"┢",lineUpDownBoldRight:"┟",lineUpBoldDownRight:"┞",lineUpDoubleDownDoubleRightDouble:"╠",lineUpDoubleDownDoubleRight:"╟",lineUpDownRightDouble:"╞",lineDownLeftRight:"┬",lineDownBoldLeftBoldRightBold:"┳",lineDownLeftBoldRightBold:"┯",lineDownBoldLeftRight:"┰",lineDownBoldLeftBoldRight:"┱",lineDownBoldLeftRightBold:"┲",lineDownLeftRightBold:"┮",lineDownLeftBoldRight:"┭",lineDownDoubleLeftDoubleRightDouble:"╦",lineDownDoubleLeftRight:"╥",lineDownLeftDoubleRightDouble:"╤",lineUpLeftRight:"┴",lineUpBoldLeftBoldRightBold:"┻",lineUpLeftBoldRightBold:"┷",lineUpBoldLeftRight:"┸",lineUpBoldLeftBoldRight:"┹",lineUpBoldLeftRightBold:"┺",lineUpLeftRightBold:"┶",lineUpLeftBoldRight:"┵",lineUpDoubleLeftDoubleRightDouble:"╩",lineUpDoubleLeftRight:"╨",lineUpLeftDoubleRightDouble:"╧",lineUpDownLeftRight:"┼",lineUpBoldDownBoldLeftBoldRightBold:"╋",lineUpDownBoldLeftBoldRightBold:"╈",lineUpBoldDownLeftBoldRightBold:"╇",lineUpBoldDownBoldLeftRightBold:"╊",lineUpBoldDownBoldLeftBoldRight:"╉",lineUpBoldDownLeftRight:"╀",lineUpDownBoldLeftRight:"╁",lineUpDownLeftBoldRight:"┽",lineUpDownLeftRightBold:"┾",lineUpBoldDownBoldLeftRight:"╂",lineUpDownLeftBoldRightBold:"┿",lineUpBoldDownLeftBoldRight:"╃",lineUpBoldDownLeftRightBold:"╄",lineUpDownBoldLeftBoldRight:"╅",lineUpDownBoldLeftRightBold:"╆",lineUpDoubleDownDoubleLeftDoubleRightDouble:"╬",lineUpDoubleDownDoubleLeftRight:"╫",lineUpDownLeftDoubleRightDouble:"╪",lineCross:"╳",lineBackslash:"╲",lineSlash:"╱"},ot={tick:"✔",info:"ℹ",warning:"⚠",cross:"✘",squareSmall:"◻",squareSmallFilled:"◼",circle:"◯",circleFilled:"◉",circleDotted:"◌",circleDouble:"◎",circleCircle:"ⓞ",circleCross:"ⓧ",circlePipe:"Ⓘ",radioOn:"◉",radioOff:"◯",checkboxOn:"☒",checkboxOff:"☐",checkboxCircleOn:"ⓧ",checkboxCircleOff:"Ⓘ",pointer:"❯",triangleUpOutline:"△",triangleLeft:"◀",triangleRight:"▶",lozenge:"◆",lozengeOutline:"◇",hamburger:"☰",smiley:"㋡",mustache:"෴",star:"★",play:"▶",nodejs:"⬢",oneSeventh:"⅐",oneNinth:"⅑",oneTenth:"⅒"},Y_Q={tick:"√",info:"i",warning:"‼",cross:"×",squareSmall:"□",squareSmallFilled:"■",circle:"( )",circleFilled:"(*)",circleDotted:"( )",circleDouble:"( )",circleCircle:"(○)",circleCross:"(×)",circlePipe:"(│)",radioOn:"(*)",radioOff:"( )",checkboxOn:"[×]",checkboxOff:"[ ]",checkboxCircleOn:"(×)",checkboxCircleOff:"( )",pointer:">",triangleUpOutline:"∆",triangleLeft:"◄",triangleRight:"►",lozenge:"♦",lozengeOutline:"◊",hamburger:"≡",smiley:"☺",mustache:"┌─┐",star:"✶",play:"►",nodejs:"♦",oneSeventh:"1/7",oneNinth:"1/9",oneTenth:"1/10"},J_Q={...at,...ot},C_Q={...at,...Y_Q},X_Q=a_(),G_Q=X_Q?J_Q:C_Q,tM=G_Q,Dt0=Object.entries(ot);import F_Q from"node:tty";var W_Q=F_Q?.WriteStream?.prototype?.hasColors?.()??!1,rQ=(A,Q)=>{if(!W_Q)return(J)=>J;let B=`\x1B[${A}m`,Y=`\x1B[${Q}m`;return(J)=>{let C=J+"",X=C.indexOf(Y);if(X===-1)return B+C+Y;let G=B,F=0;while(X!==-1)G+=C.slice(F,X)+B,F=X+Y.length,X=C.indexOf(Y,F);return G+=C.slice(F)+Y,G}},qt0=rQ(0,0),tt=rQ(1,22),Mt0=rQ(2,22),zt0=rQ(3,23),Rt0=rQ(4,24),wt0=rQ(53,55),jt0=rQ(7,27),Ot0=rQ(8,28),Pt0=rQ(9,29),Tt0=rQ(30,39),St0=rQ(31,39),kt0=rQ(32,39),_t0=rQ(33,39),vt0=rQ(34,39),yt0=rQ(35,39),ht0=rQ(36,39),gt0=rQ(37,39),eM=rQ(90,39),xt0=rQ(40,49),ft0=rQ(41,49),bt0=rQ(42,49),mt0=rQ(43,49),ut0=rQ(44,49),dt0=rQ(45,49),ct0=rQ(46,49),lt0=rQ(47,49),pt0=rQ(100,49),et=rQ(91,39),it0=rQ(92,39),Ae=rQ(93,39),nt0=rQ(94,39),st0=rQ(95,39),rt0=rQ(96,39),at0=rQ(97,39),ot0=rQ(101,49),tt0=rQ(102,49),et0=rQ(103,49),Ae0=rQ(104,49),Qe0=rQ(105,49),Be0=rQ(106,49),Ye0=rQ(107,49);var Ye=({type:A,message:Q,timestamp:B,piped:Y,commandId:J,result:{failed:C=!1}={},options:{reject:X=!0}})=>{let G=Z_Q(B),F=$_Q[A]({failed:C,reject:X,piped:Y}),W=U_Q[A]({reject:X});return`${eM(`[${G}]`)} ${eM(`[${J}]`)} ${W(F)} ${W(Q)}`},Z_Q=(A)=>`${Az(A.getHours(),2)}:${Az(A.getMinutes(),2)}:${Az(A.getSeconds(),2)}.${Az(A.getMilliseconds(),3)}`,Az=(A,Q)=>String(A).padStart(Q,"0"),Qe=({failed:A,reject:Q})=>{if(!A)return tM.tick;return Q?tM.cross:tM.warning},$_Q={command:({piped:A})=>A?"|":"$",output:()=>" ",ipc:()=>"*",error:Qe,duration:Qe},Be=(A)=>A,U_Q={command:()=>tt,output:()=>Be,ipc:()=>Be,error:({reject:A})=>A?et:Ae,duration:()=>eM};var Je=(A,Q,B)=>{let Y=it(Q,B);return A.map(({verboseLine:J,verboseObject:C})=>E_Q(J,C,Y)).filter((J)=>J!==void 0).map((J)=>K_Q(J)).join("")},E_Q=(A,Q,B)=>{if(B===void 0)return A;let Y=B(A,Q);if(typeof Y==="string")return Y},K_Q=(A)=>A.endsWith(` +Please set the "stdio" option to ensure that file descriptor exists.`);return Y==="all"?[1,2]:[Y]},Mv=(A)=>{if(A==="all")return A;if(Q5.includes(A))return Q5.indexOf(A);let Q=l_Q.exec(A);if(Q!==null)return Number(Q[1])},l_Q=/^fd(\d+)$/,p_Q=(A,Q)=>A.map((B)=>B===void 0?n_Q[Q]:B),i_Q=f_Q("execa").enabled?"full":"none",n_Q={lines:!1,buffer:!0,maxBuffer:1e8,verbose:i_Q,stripFinalNewline:!0},zv=["lines","buffer","maxBuffer","verbose","stripFinalNewline"],aX=(A,Q)=>Q==="ipc"?A.at(-1):A[Q];var z4=({verbose:A},Q)=>Rv(A,Q)!=="none",R4=({verbose:A},Q)=>!["none","short"].includes(Rv(A,Q)),ve=({verbose:A},Q)=>{let B=Rv(A,Q);return Nz(B)?B:void 0},Rv=(A,Q)=>Q===void 0?s_Q(A):aX(A,Q),s_Q=(A)=>A.find((Q)=>Nz(Q))??Lz.findLast((Q)=>A.includes(Q)),Nz=(A)=>typeof A==="function",Lz=["none","short","full"];import{inspect as IvQ}from"node:util";import{platform as r_Q}from"node:process";import{stripVTControlCharacters as a_Q}from"node:util";var ye=(A,Q)=>{let B=[A,...Q],Y=B.join(" "),J=B.map((C)=>BvQ(ge(C))).join(" ");return{command:Y,escapedCommand:J}},WI=(A)=>a_Q(A).split(` +`).map((Q)=>ge(Q)).join(` +`),ge=(A)=>A.replaceAll(e_Q,(Q)=>o_Q(Q)),o_Q=(A)=>{let Q=AvQ[A];if(Q!==void 0)return Q;let B=A.codePointAt(0),Y=B.toString(16);return B<=QvQ?`\\u${Y.padStart(4,"0")}`:`\\U${Y}`},t_Q=()=>{try{return new RegExp("\\p{Separator}|\\p{Other}","gu")}catch{return/[\s\u0000-\u001F\u007F-\u009F\u00AD]/g}},e_Q=t_Q(),AvQ={" ":" ","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r","\t":"\\t"},QvQ=65535,BvQ=(A)=>{if(YvQ.test(A))return A;return r_Q==="win32"?`"${A.replaceAll('"','""')}"`:`'${A.replaceAll("'","'\\''")}'`},YvQ=/^[\w./-]+$/;import he from"node:process";function wv(){let{env:A}=he,{TERM:Q,TERM_PROGRAM:B}=A;if(he.platform!=="win32")return Q!=="linux";return Boolean(A.WT_SESSION)||Boolean(A.TERMINUS_SUBLIME)||A.ConEmuTask==="{cmd::Cmder}"||B==="Terminus-Sublime"||B==="vscode"||Q==="xterm-256color"||Q==="alacritty"||Q==="rxvt-unicode"||Q==="rxvt-unicode-256color"||A.TERMINAL_EMULATOR==="JetBrains-JediTerm"}var xe={circleQuestionMark:"(?)",questionMarkPrefix:"(?)",square:"█",squareDarkShade:"▓",squareMediumShade:"▒",squareLightShade:"░",squareTop:"▀",squareBottom:"▄",squareLeft:"▌",squareRight:"▐",squareCenter:"■",bullet:"●",dot:"․",ellipsis:"…",pointerSmall:"›",triangleUp:"▲",triangleUpSmall:"▴",triangleDown:"▼",triangleDownSmall:"▾",triangleLeftSmall:"◂",triangleRightSmall:"▸",home:"⌂",heart:"♥",musicNote:"♪",musicNoteBeamed:"♫",arrowUp:"↑",arrowDown:"↓",arrowLeft:"←",arrowRight:"→",arrowLeftRight:"↔",arrowUpDown:"↕",almostEqual:"≈",notEqual:"≠",lessOrEqual:"≤",greaterOrEqual:"≥",identical:"≡",infinity:"∞",subscriptZero:"₀",subscriptOne:"₁",subscriptTwo:"₂",subscriptThree:"₃",subscriptFour:"₄",subscriptFive:"₅",subscriptSix:"₆",subscriptSeven:"₇",subscriptEight:"₈",subscriptNine:"₉",oneHalf:"½",oneThird:"⅓",oneQuarter:"¼",oneFifth:"⅕",oneSixth:"⅙",oneEighth:"⅛",twoThirds:"⅔",twoFifths:"⅖",threeQuarters:"¾",threeFifths:"⅗",threeEighths:"⅜",fourFifths:"⅘",fiveSixths:"⅚",fiveEighths:"⅝",sevenEighths:"⅞",line:"─",lineBold:"━",lineDouble:"═",lineDashed0:"┄",lineDashed1:"┅",lineDashed2:"┈",lineDashed3:"┉",lineDashed4:"╌",lineDashed5:"╍",lineDashed6:"╴",lineDashed7:"╶",lineDashed8:"╸",lineDashed9:"╺",lineDashed10:"╼",lineDashed11:"╾",lineDashed12:"−",lineDashed13:"–",lineDashed14:"‐",lineDashed15:"⁃",lineVertical:"│",lineVerticalBold:"┃",lineVerticalDouble:"║",lineVerticalDashed0:"┆",lineVerticalDashed1:"┇",lineVerticalDashed2:"┊",lineVerticalDashed3:"┋",lineVerticalDashed4:"╎",lineVerticalDashed5:"╏",lineVerticalDashed6:"╵",lineVerticalDashed7:"╷",lineVerticalDashed8:"╹",lineVerticalDashed9:"╻",lineVerticalDashed10:"╽",lineVerticalDashed11:"╿",lineDownLeft:"┐",lineDownLeftArc:"╮",lineDownBoldLeftBold:"┓",lineDownBoldLeft:"┒",lineDownLeftBold:"┑",lineDownDoubleLeftDouble:"╗",lineDownDoubleLeft:"╖",lineDownLeftDouble:"╕",lineDownRight:"┌",lineDownRightArc:"╭",lineDownBoldRightBold:"┏",lineDownBoldRight:"┎",lineDownRightBold:"┍",lineDownDoubleRightDouble:"╔",lineDownDoubleRight:"╓",lineDownRightDouble:"╒",lineUpLeft:"┘",lineUpLeftArc:"╯",lineUpBoldLeftBold:"┛",lineUpBoldLeft:"┚",lineUpLeftBold:"┙",lineUpDoubleLeftDouble:"╝",lineUpDoubleLeft:"╜",lineUpLeftDouble:"╛",lineUpRight:"└",lineUpRightArc:"╰",lineUpBoldRightBold:"┗",lineUpBoldRight:"┖",lineUpRightBold:"┕",lineUpDoubleRightDouble:"╚",lineUpDoubleRight:"╙",lineUpRightDouble:"╘",lineUpDownLeft:"┤",lineUpBoldDownBoldLeftBold:"┫",lineUpBoldDownBoldLeft:"┨",lineUpDownLeftBold:"┥",lineUpBoldDownLeftBold:"┩",lineUpDownBoldLeftBold:"┪",lineUpDownBoldLeft:"┧",lineUpBoldDownLeft:"┦",lineUpDoubleDownDoubleLeftDouble:"╣",lineUpDoubleDownDoubleLeft:"╢",lineUpDownLeftDouble:"╡",lineUpDownRight:"├",lineUpBoldDownBoldRightBold:"┣",lineUpBoldDownBoldRight:"┠",lineUpDownRightBold:"┝",lineUpBoldDownRightBold:"┡",lineUpDownBoldRightBold:"┢",lineUpDownBoldRight:"┟",lineUpBoldDownRight:"┞",lineUpDoubleDownDoubleRightDouble:"╠",lineUpDoubleDownDoubleRight:"╟",lineUpDownRightDouble:"╞",lineDownLeftRight:"┬",lineDownBoldLeftBoldRightBold:"┳",lineDownLeftBoldRightBold:"┯",lineDownBoldLeftRight:"┰",lineDownBoldLeftBoldRight:"┱",lineDownBoldLeftRightBold:"┲",lineDownLeftRightBold:"┮",lineDownLeftBoldRight:"┭",lineDownDoubleLeftDoubleRightDouble:"╦",lineDownDoubleLeftRight:"╥",lineDownLeftDoubleRightDouble:"╤",lineUpLeftRight:"┴",lineUpBoldLeftBoldRightBold:"┻",lineUpLeftBoldRightBold:"┷",lineUpBoldLeftRight:"┸",lineUpBoldLeftBoldRight:"┹",lineUpBoldLeftRightBold:"┺",lineUpLeftRightBold:"┶",lineUpLeftBoldRight:"┵",lineUpDoubleLeftDoubleRightDouble:"╩",lineUpDoubleLeftRight:"╨",lineUpLeftDoubleRightDouble:"╧",lineUpDownLeftRight:"┼",lineUpBoldDownBoldLeftBoldRightBold:"╋",lineUpDownBoldLeftBoldRightBold:"╈",lineUpBoldDownLeftBoldRightBold:"╇",lineUpBoldDownBoldLeftRightBold:"╊",lineUpBoldDownBoldLeftBoldRight:"╉",lineUpBoldDownLeftRight:"╀",lineUpDownBoldLeftRight:"╁",lineUpDownLeftBoldRight:"┽",lineUpDownLeftRightBold:"┾",lineUpBoldDownBoldLeftRight:"╂",lineUpDownLeftBoldRightBold:"┿",lineUpBoldDownLeftBoldRight:"╃",lineUpBoldDownLeftRightBold:"╄",lineUpDownBoldLeftBoldRight:"╅",lineUpDownBoldLeftRightBold:"╆",lineUpDoubleDownDoubleLeftDoubleRightDouble:"╬",lineUpDoubleDownDoubleLeftRight:"╫",lineUpDownLeftDoubleRightDouble:"╪",lineCross:"╳",lineBackslash:"╲",lineSlash:"╱"},fe={tick:"✔",info:"ℹ",warning:"⚠",cross:"✘",squareSmall:"◻",squareSmallFilled:"◼",circle:"◯",circleFilled:"◉",circleDotted:"◌",circleDouble:"◎",circleCircle:"ⓞ",circleCross:"ⓧ",circlePipe:"Ⓘ",radioOn:"◉",radioOff:"◯",checkboxOn:"☒",checkboxOff:"☐",checkboxCircleOn:"ⓧ",checkboxCircleOff:"Ⓘ",pointer:"❯",triangleUpOutline:"△",triangleLeft:"◀",triangleRight:"▶",lozenge:"◆",lozengeOutline:"◇",hamburger:"☰",smiley:"㋡",mustache:"෴",star:"★",play:"▶",nodejs:"⬢",oneSeventh:"⅐",oneNinth:"⅑",oneTenth:"⅒"},JvQ={tick:"√",info:"i",warning:"‼",cross:"×",squareSmall:"□",squareSmallFilled:"■",circle:"( )",circleFilled:"(*)",circleDotted:"( )",circleDouble:"( )",circleCircle:"(○)",circleCross:"(×)",circlePipe:"(│)",radioOn:"(*)",radioOff:"( )",checkboxOn:"[×]",checkboxOff:"[ ]",checkboxCircleOn:"(×)",checkboxCircleOff:"( )",pointer:">",triangleUpOutline:"∆",triangleLeft:"◄",triangleRight:"►",lozenge:"♦",lozengeOutline:"◊",hamburger:"≡",smiley:"☺",mustache:"┌─┐",star:"✶",play:"►",nodejs:"♦",oneSeventh:"1/7",oneNinth:"1/9",oneTenth:"1/10"},CvQ={...xe,...fe},XvQ={...xe,...JvQ},GvQ=wv(),WvQ=GvQ?CvQ:XvQ,qz=WvQ,$AY=Object.entries(fe);import FvQ from"node:tty";var ZvQ=FvQ?.WriteStream?.prototype?.hasColors?.()??!1,rQ=(A,Q)=>{if(!ZvQ)return(J)=>J;let B=`\x1B[${A}m`,Y=`\x1B[${Q}m`;return(J)=>{let C=J+"",X=C.indexOf(Y);if(X===-1)return B+C+Y;let G=B,W=0;while(X!==-1)G+=C.slice(W,X)+B,W=X+Y.length,X=C.indexOf(Y,W);return G+=C.slice(W)+Y,G}},KAY=rQ(0,0),be=rQ(1,22),VAY=rQ(2,22),IAY=rQ(3,23),HAY=rQ(4,24),DAY=rQ(53,55),NAY=rQ(7,27),LAY=rQ(8,28),qAY=rQ(9,29),MAY=rQ(30,39),zAY=rQ(31,39),RAY=rQ(32,39),wAY=rQ(33,39),jAY=rQ(34,39),OAY=rQ(35,39),PAY=rQ(36,39),TAY=rQ(37,39),Mz=rQ(90,39),SAY=rQ(40,49),kAY=rQ(41,49),_AY=rQ(42,49),vAY=rQ(43,49),yAY=rQ(44,49),gAY=rQ(45,49),hAY=rQ(46,49),xAY=rQ(47,49),fAY=rQ(100,49),me=rQ(91,39),bAY=rQ(92,39),ue=rQ(93,39),mAY=rQ(94,39),uAY=rQ(95,39),dAY=rQ(96,39),cAY=rQ(97,39),lAY=rQ(101,49),pAY=rQ(102,49),iAY=rQ(103,49),nAY=rQ(104,49),sAY=rQ(105,49),rAY=rQ(106,49),aAY=rQ(107,49);var le=({type:A,message:Q,timestamp:B,piped:Y,commandId:J,result:{failed:C=!1}={},options:{reject:X=!0}})=>{let G=$vQ(B),W=UvQ[A]({failed:C,reject:X,piped:Y}),F=EvQ[A]({reject:X});return`${Mz(`[${G}]`)} ${Mz(`[${J}]`)} ${F(W)} ${F(Q)}`},$vQ=(A)=>`${zz(A.getHours(),2)}:${zz(A.getMinutes(),2)}:${zz(A.getSeconds(),2)}.${zz(A.getMilliseconds(),3)}`,zz=(A,Q)=>String(A).padStart(Q,"0"),de=({failed:A,reject:Q})=>{if(!A)return qz.tick;return Q?qz.cross:qz.warning},UvQ={command:({piped:A})=>A?"|":"$",output:()=>" ",ipc:()=>"*",error:de,duration:de},ce=(A)=>A,EvQ={command:()=>be,output:()=>ce,ipc:()=>ce,error:({reject:A})=>A?me:ue,duration:()=>Mz};var pe=(A,Q,B)=>{let Y=ve(Q,B);return A.map(({verboseLine:J,verboseObject:C})=>KvQ(J,C,Y)).filter((J)=>J!==void 0).map((J)=>VvQ(J)).join("")},KvQ=(A,Q,B)=>{if(B===void 0)return A;let Y=B(A,Q);if(typeof Y==="string")return Y},VvQ=(A)=>A.endsWith(` `)?A:`${A} -`;var H1=({type:A,verboseMessage:Q,fdNumber:B,verboseInfo:Y,result:J})=>{let C=I_Q({type:A,result:J,verboseInfo:Y}),X=H_Q(Q,C),G=Je(X,Y,B);if(G!=="")console.warn(G.slice(0,-1))},I_Q=({type:A,result:Q,verboseInfo:{escapedCommand:B,commandId:Y,rawOptions:{piped:J=!1,...C}}})=>({type:A,escapedCommand:B,commandId:`${Y}`,timestamp:new Date,piped:J,result:Q,options:C}),H_Q=(A,Q)=>A.split(` -`).map((B)=>D_Q({...Q,message:B})),D_Q=(A)=>{return{verboseLine:Ye(A),verboseObject:A}},Qz=(A)=>{let Q=typeof A==="string"?A:V_Q(A);return aV(Q).replaceAll("\t"," ".repeat(N_Q))},N_Q=2;var Ce=(A,Q)=>{if(!K4(Q))return;H1({type:"command",verboseMessage:A,verboseInfo:Q})};var Xe=(A,Q,B)=>{M_Q(A);let Y=L_Q(A);return{verbose:A,escapedCommand:Q,commandId:Y,rawOptions:B}},L_Q=(A)=>K4({verbose:A})?q_Q++:void 0,q_Q=0n,M_Q=(A)=>{for(let Q of A){if(Q===!1)throw TypeError(`The "verbose: false" option was renamed to "verbose: 'none'".`);if(Q===!0)throw TypeError(`The "verbose: true" option was renamed to "verbose: 'short'".`);if(!oM.includes(Q)&&!aM(Q)){let B=oM.map((Y)=>`'${Y}'`).join(", ");throw TypeError(`The "verbose" option must not be ${Q}. Allowed values are: ${B} or a function.`)}}};import{hrtime as Ge}from"node:process";var Bz=()=>Ge.bigint(),o_=(A)=>Number(Ge.bigint()-A)/1e6;var Yz=(A,Q,B)=>{let Y=Bz(),{command:J,escapedCommand:C}=nt(A,Q),X=i_(B,"verbose"),G=Xe(X,C,{...B});return Ce(C,G),{command:J,escapedCommand:C,startTime:Y,verboseInfo:G}};var CQA=qA(re(),1);import FyQ from"node:path";import JQA from"node:process";import Gz from"node:process";import NW from"node:path";function Cz(A={}){let{env:Q=process.env,platform:B=process.platform}=A;if(B!=="win32")return"PATH";return Object.keys(Q).reverse().find((Y)=>Y.toUpperCase()==="PATH")||"Path"}import{promisify as t_Q}from"node:util";import{execFile as e_Q,execFileSync as le0}from"node:child_process";import ae from"node:path";import{fileURLToPath as AvQ}from"node:url";var ne0=t_Q(e_Q);function Xz(A){return A instanceof URL?AvQ(A):A}function oe(A){return{*[Symbol.iterator](){let Q=ae.resolve(Xz(A)),B;while(B!==Q)yield Q,B=Q,Q=ae.resolve(Q,"..")}}}var QvQ=({cwd:A=Gz.cwd(),path:Q=Gz.env[Cz()],preferLocal:B=!0,execPath:Y=Gz.execPath,addExecPath:J=!0}={})=>{let C=NW.resolve(Xz(A)),X=[],G=Q.split(NW.delimiter);if(B)BvQ(X,G,C);if(J)YvQ(X,G,Y,C);return Q===""||Q===NW.delimiter?`${X.join(NW.delimiter)}${Q}`:[...X,Q].join(NW.delimiter)},BvQ=(A,Q,B)=>{for(let Y of oe(B)){let J=NW.join(Y,"node_modules/.bin");if(!Q.includes(J))A.push(J)}},YvQ=(A,Q,B,Y)=>{let J=NW.resolve(Y,Xz(B),"..");if(!Q.includes(J))A.push(J)},te=({env:A=Gz.env,...Q}={})=>{A={...A};let B=Cz({env:A});return Q.path=A[B],A[B]=QvQ(Q),A};import{setTimeout as DvQ}from"node:timers/promises";var ee=(A,Q,B)=>{let Y=B?Wz:Fz,J=A instanceof D1?{}:{cause:A};return new Y(Q,J)};class D1 extends Error{}var AAA=(A,Q)=>{Object.defineProperty(A.prototype,"name",{value:Q,writable:!0,enumerable:!1,configurable:!0}),Object.defineProperty(A.prototype,BAA,{value:!0,writable:!1,enumerable:!1,configurable:!1})},QAA=(A)=>Zz(A)&&(BAA in A),BAA=Symbol("isExecaError"),Zz=(A)=>Object.prototype.toString.call(A)==="[object Error]";class Fz extends Error{}AAA(Fz,Fz.name);class Wz extends Error{}AAA(Wz,Wz.name);import{constants as oV}from"node:os";import{constants as GvQ}from"node:os";var YAA=()=>{let A=Gv-JAA+1;return Array.from({length:A},JvQ)},JvQ=(A,Q)=>({name:`SIGRT${Q+1}`,number:JAA+Q,action:"terminate",description:"Application-specific signal (realtime)",standard:"posix"}),JAA=34,Gv=64;import{constants as CvQ}from"node:os";var CAA=[{name:"SIGHUP",number:1,action:"terminate",description:"Terminal closed",standard:"posix"},{name:"SIGINT",number:2,action:"terminate",description:"User interruption with CTRL-C",standard:"ansi"},{name:"SIGQUIT",number:3,action:"core",description:"User interruption with CTRL-\\",standard:"posix"},{name:"SIGILL",number:4,action:"core",description:"Invalid machine instruction",standard:"ansi"},{name:"SIGTRAP",number:5,action:"core",description:"Debugger breakpoint",standard:"posix"},{name:"SIGABRT",number:6,action:"core",description:"Aborted",standard:"ansi"},{name:"SIGIOT",number:6,action:"core",description:"Aborted",standard:"bsd"},{name:"SIGBUS",number:7,action:"core",description:"Bus error due to misaligned, non-existing address or paging error",standard:"bsd"},{name:"SIGEMT",number:7,action:"terminate",description:"Command should be emulated but is not implemented",standard:"other"},{name:"SIGFPE",number:8,action:"core",description:"Floating point arithmetic error",standard:"ansi"},{name:"SIGKILL",number:9,action:"terminate",description:"Forced termination",standard:"posix",forced:!0},{name:"SIGUSR1",number:10,action:"terminate",description:"Application-specific signal",standard:"posix"},{name:"SIGSEGV",number:11,action:"core",description:"Segmentation fault",standard:"ansi"},{name:"SIGUSR2",number:12,action:"terminate",description:"Application-specific signal",standard:"posix"},{name:"SIGPIPE",number:13,action:"terminate",description:"Broken pipe or socket",standard:"posix"},{name:"SIGALRM",number:14,action:"terminate",description:"Timeout or timer",standard:"posix"},{name:"SIGTERM",number:15,action:"terminate",description:"Termination",standard:"ansi"},{name:"SIGSTKFLT",number:16,action:"terminate",description:"Stack is empty or overflowed",standard:"other"},{name:"SIGCHLD",number:17,action:"ignore",description:"Child process terminated, paused or unpaused",standard:"posix"},{name:"SIGCLD",number:17,action:"ignore",description:"Child process terminated, paused or unpaused",standard:"other"},{name:"SIGCONT",number:18,action:"unpause",description:"Unpaused",standard:"posix",forced:!0},{name:"SIGSTOP",number:19,action:"pause",description:"Paused",standard:"posix",forced:!0},{name:"SIGTSTP",number:20,action:"pause",description:'Paused using CTRL-Z or "suspend"',standard:"posix"},{name:"SIGTTIN",number:21,action:"pause",description:"Background process cannot read terminal input",standard:"posix"},{name:"SIGBREAK",number:21,action:"terminate",description:"User interruption with CTRL-BREAK",standard:"other"},{name:"SIGTTOU",number:22,action:"pause",description:"Background process cannot write to terminal output",standard:"posix"},{name:"SIGURG",number:23,action:"ignore",description:"Socket received out-of-band data",standard:"bsd"},{name:"SIGXCPU",number:24,action:"core",description:"Process timed out",standard:"bsd"},{name:"SIGXFSZ",number:25,action:"core",description:"File too big",standard:"bsd"},{name:"SIGVTALRM",number:26,action:"terminate",description:"Timeout or timer",standard:"bsd"},{name:"SIGPROF",number:27,action:"terminate",description:"Timeout or timer",standard:"bsd"},{name:"SIGWINCH",number:28,action:"ignore",description:"Terminal window size changed",standard:"bsd"},{name:"SIGIO",number:29,action:"terminate",description:"I/O is available",standard:"other"},{name:"SIGPOLL",number:29,action:"terminate",description:"Watched event",standard:"other"},{name:"SIGINFO",number:29,action:"ignore",description:"Request for process information",standard:"other"},{name:"SIGPWR",number:30,action:"terminate",description:"Device running out of power",standard:"systemv"},{name:"SIGSYS",number:31,action:"core",description:"Invalid system call",standard:"other"},{name:"SIGUNUSED",number:31,action:"terminate",description:"Invalid system call",standard:"other"}];var Fv=()=>{let A=YAA();return[...CAA,...A].map(XvQ)},XvQ=({name:A,number:Q,description:B,action:Y,forced:J=!1,standard:C})=>{let{signals:{[A]:X}}=CvQ,G=X!==void 0;return{name:A,number:G?X:Q,description:B,supported:G,action:Y,forced:J,standard:C}};var FvQ=()=>{let A=Fv();return Object.fromEntries(A.map(WvQ))},WvQ=({name:A,number:Q,description:B,supported:Y,action:J,forced:C,standard:X})=>[A,{name:A,number:Q,description:B,supported:Y,action:J,forced:C,standard:X}],XAA=FvQ(),ZvQ=()=>{let A=Fv(),Q=Gv+1,B=Array.from({length:Q},(Y,J)=>$vQ(J,A));return Object.assign({},...B)},$vQ=(A,Q)=>{let B=UvQ(A,Q);if(B===void 0)return{};let{name:Y,description:J,supported:C,action:X,forced:G,standard:F}=B;return{[A]:{name:Y,number:A,description:J,supported:C,action:X,forced:G,standard:F}}},UvQ=(A,Q)=>{let B=Q.find(({name:Y})=>GvQ.signals[Y]===A);if(B!==void 0)return B;return Q.find((Y)=>Y.number===A)},$AY=ZvQ();var FAA=(A)=>{if(A===0)throw TypeError("Invalid option `killSignal`: 0 cannot be used.");return ZAA(A,"option `killSignal`")},WAA=(A)=>A===0?A:ZAA(A,"`subprocess.kill()`'s argument"),ZAA=(A,Q)=>{if(Number.isInteger(A))return EvQ(A,Q);if(typeof A==="string")return VvQ(A,Q);throw TypeError(`Invalid ${Q} ${String(A)}: it must be a string or an integer. -${Wv()}`)},EvQ=(A,Q)=>{if(GAA.has(A))return GAA.get(A);throw TypeError(`Invalid ${Q} ${A}: this signal integer does not exist. -${Wv()}`)},KvQ=()=>new Map(Object.entries(oV.signals).reverse().map(([A,Q])=>[Q,A])),GAA=KvQ(),VvQ=(A,Q)=>{if(A in oV.signals)return A;if(A.toUpperCase()in oV.signals)throw TypeError(`Invalid ${Q} '${A}': please rename it to '${A.toUpperCase()}'.`);throw TypeError(`Invalid ${Q} '${A}': this signal name does not exist. -${Wv()}`)},Wv=()=>`Available signal names: ${IvQ()}. -Available signal numbers: ${HvQ()}.`,IvQ=()=>Object.keys(oV.signals).sort().map((A)=>`'${A}'`).join(", "),HvQ=()=>[...new Set(Object.values(oV.signals).sort((A,Q)=>A-Q))].join(", "),$z=(A)=>XAA[A].description;var $AA=(A)=>{if(A===!1)return A;if(A===!0)return NvQ;if(!Number.isFinite(A)||A<0)throw TypeError(`Expected the \`forceKillAfterDelay\` option to be a non-negative integer, got \`${A}\` (${typeof A})`);return A},NvQ=5000,UAA=({kill:A,options:{forceKillAfterDelay:Q,killSignal:B},onInternalError:Y,context:J,controller:C},X,G)=>{let{signal:F,error:W}=LvQ(X,G,B);qvQ(W,Y);let Z=A(F);return MvQ({kill:A,signal:F,forceKillAfterDelay:Q,killSignal:B,killResult:Z,context:J,controller:C}),Z},LvQ=(A,Q,B)=>{let[Y=B,J]=Zz(A)?[void 0,A]:[A,Q];if(typeof Y!=="string"&&!Number.isInteger(Y))throw TypeError(`The first argument must be an error instance or a signal name string/integer: ${String(Y)}`);if(J!==void 0&&!Zz(J))throw TypeError(`The second argument is optional. If specified, it must be an error instance: ${J}`);return{signal:WAA(Y),error:J}},qvQ=(A,Q)=>{if(A!==void 0)Q.reject(A)},MvQ=async({kill:A,signal:Q,forceKillAfterDelay:B,killSignal:Y,killResult:J,context:C,controller:X})=>{if(Q===Y&&J)Zv({kill:A,forceKillAfterDelay:B,context:C,controllerSignal:X.signal})},Zv=async({kill:A,forceKillAfterDelay:Q,context:B,controllerSignal:Y})=>{if(Q===!1)return;try{if(await DvQ(Q,void 0,{signal:Y}),A("SIGKILL"))B.isForcefullyTerminated??=!0}catch{}};import{once as zvQ}from"node:events";var Uz=async(A,Q)=>{if(!A.aborted)await zvQ(A,"abort",{signal:Q})};var EAA=({cancelSignal:A})=>{if(A!==void 0&&Object.prototype.toString.call(A)!=="[object AbortSignal]")throw Error(`The \`cancelSignal\` option must be an AbortSignal: ${String(A)}`)},KAA=({subprocess:A,cancelSignal:Q,gracefulCancel:B,context:Y,controller:J})=>Q===void 0||B?[]:[RvQ(A,Q,Y,J)],RvQ=async(A,Q,B,{signal:Y})=>{throw await Uz(Q,Y),B.terminationReason??="cancel",A.kill(),Q.reason};import{scheduler as pvQ}from"node:timers/promises";import{promisify as dvQ}from"node:util";var D4=({methodName:A,isSubprocess:Q,ipc:B,isConnected:Y})=>{wvQ(A,Q,B),$v(A,Q,Y)},wvQ=(A,Q,B)=>{if(!B)throw Error(`${EC(A,Q)} can only be used if the \`ipc\` option is \`true\`.`)},$v=(A,Q,B)=>{if(!B)throw Error(`${EC(A,Q)} cannot be used: the ${dG(Q)} has already exited or disconnected.`)},VAA=(A)=>{throw Error(`${EC("getOneMessage",A)} could not complete: the ${dG(A)} exited or disconnected.`)},IAA=(A)=>{throw Error(`${EC("sendMessage",A)} failed: the ${dG(A)} is sending a message too, instead of listening to incoming messages. +`;var j1=({type:A,verboseMessage:Q,fdNumber:B,verboseInfo:Y,result:J})=>{let C=HvQ({type:A,result:J,verboseInfo:Y}),X=DvQ(Q,C),G=pe(X,Y,B);if(G!=="")console.warn(G.slice(0,-1))},HvQ=({type:A,result:Q,verboseInfo:{escapedCommand:B,commandId:Y,rawOptions:{piped:J=!1,...C}}})=>({type:A,escapedCommand:B,commandId:`${Y}`,timestamp:new Date,piped:J,result:Q,options:C}),DvQ=(A,Q)=>A.split(` +`).map((B)=>NvQ({...Q,message:B})),NvQ=(A)=>{return{verboseLine:le(A),verboseObject:A}},Rz=(A)=>{let Q=typeof A==="string"?A:IvQ(A);return WI(Q).replaceAll("\t"," ".repeat(LvQ))},LvQ=2;var ie=(A,Q)=>{if(!z4(Q))return;j1({type:"command",verboseMessage:A,verboseInfo:Q})};var ne=(A,Q,B)=>{zvQ(A);let Y=qvQ(A);return{verbose:A,escapedCommand:Q,commandId:Y,rawOptions:B}},qvQ=(A)=>z4({verbose:A})?MvQ++:void 0,MvQ=0n,zvQ=(A)=>{for(let Q of A){if(Q===!1)throw TypeError(`The "verbose: false" option was renamed to "verbose: 'none'".`);if(Q===!0)throw TypeError(`The "verbose: true" option was renamed to "verbose: 'short'".`);if(!Lz.includes(Q)&&!Nz(Q)){let B=Lz.map((Y)=>`'${Y}'`).join(", ");throw TypeError(`The "verbose" option must not be ${Q}. Allowed values are: ${B} or a function.`)}}};import{hrtime as se}from"node:process";var wz=()=>se.bigint(),jv=(A)=>Number(se.bigint()-A)/1e6;var jz=(A,Q,B)=>{let Y=wz(),{command:J,escapedCommand:C}=ye(A,Q),X=qv(B,"verbose"),G=ne(X,C,{...B});return ie(C,G),{command:J,escapedCommand:C,startTime:Y,verboseInfo:G}};var iQA=qA(hAA(),1);import FgQ from"node:path";import pQA from"node:process";import Sz from"node:process";import OF from"node:path";function Pz(A={}){let{env:Q=process.env,platform:B=process.platform}=A;if(B!=="win32")return"PATH";return Object.keys(Q).reverse().find((Y)=>Y.toUpperCase()==="PATH")||"Path"}import{promisify as evQ}from"node:util";import{execFile as AyQ,execFileSync as xQY}from"node:child_process";import xAA from"node:path";import{fileURLToPath as QyQ}from"node:url";var mQY=evQ(AyQ);function Tz(A){return A instanceof URL?QyQ(A):A}function fAA(A){return{*[Symbol.iterator](){let Q=xAA.resolve(Tz(A)),B;while(B!==Q)yield Q,B=Q,Q=xAA.resolve(Q,"..")}}}var ByQ=({cwd:A=Sz.cwd(),path:Q=Sz.env[Pz()],preferLocal:B=!0,execPath:Y=Sz.execPath,addExecPath:J=!0}={})=>{let C=OF.resolve(Tz(A)),X=[],G=Q.split(OF.delimiter);if(B)YyQ(X,G,C);if(J)JyQ(X,G,Y,C);return Q===""||Q===OF.delimiter?`${X.join(OF.delimiter)}${Q}`:[...X,Q].join(OF.delimiter)},YyQ=(A,Q,B)=>{for(let Y of fAA(B)){let J=OF.join(Y,"node_modules/.bin");if(!Q.includes(J))A.push(J)}},JyQ=(A,Q,B,Y)=>{let J=OF.resolve(Y,Tz(B),"..");if(!Q.includes(J))A.push(J)},bAA=({env:A=Sz.env,...Q}={})=>{A={...A};let B=Pz({env:A});return Q.path=A[B],A[B]=ByQ(Q),A};import{setTimeout as NyQ}from"node:timers/promises";var mAA=(A,Q,B)=>{let Y=B?_z:kz,J=A instanceof O1?{}:{cause:A};return new Y(Q,J)};class O1 extends Error{}var uAA=(A,Q)=>{Object.defineProperty(A.prototype,"name",{value:Q,writable:!0,enumerable:!1,configurable:!0}),Object.defineProperty(A.prototype,cAA,{value:!0,writable:!1,enumerable:!1,configurable:!1})},dAA=(A)=>vz(A)&&(cAA in A),cAA=Symbol("isExecaError"),vz=(A)=>Object.prototype.toString.call(A)==="[object Error]";class kz extends Error{}uAA(kz,kz.name);class _z extends Error{}uAA(_z,_z.name);import{constants as FI}from"node:os";import{constants as WyQ}from"node:os";var lAA=()=>{let A=hv-pAA+1;return Array.from({length:A},CyQ)},CyQ=(A,Q)=>({name:`SIGRT${Q+1}`,number:pAA+Q,action:"terminate",description:"Application-specific signal (realtime)",standard:"posix"}),pAA=34,hv=64;import{constants as XyQ}from"node:os";var iAA=[{name:"SIGHUP",number:1,action:"terminate",description:"Terminal closed",standard:"posix"},{name:"SIGINT",number:2,action:"terminate",description:"User interruption with CTRL-C",standard:"ansi"},{name:"SIGQUIT",number:3,action:"core",description:"User interruption with CTRL-\\",standard:"posix"},{name:"SIGILL",number:4,action:"core",description:"Invalid machine instruction",standard:"ansi"},{name:"SIGTRAP",number:5,action:"core",description:"Debugger breakpoint",standard:"posix"},{name:"SIGABRT",number:6,action:"core",description:"Aborted",standard:"ansi"},{name:"SIGIOT",number:6,action:"core",description:"Aborted",standard:"bsd"},{name:"SIGBUS",number:7,action:"core",description:"Bus error due to misaligned, non-existing address or paging error",standard:"bsd"},{name:"SIGEMT",number:7,action:"terminate",description:"Command should be emulated but is not implemented",standard:"other"},{name:"SIGFPE",number:8,action:"core",description:"Floating point arithmetic error",standard:"ansi"},{name:"SIGKILL",number:9,action:"terminate",description:"Forced termination",standard:"posix",forced:!0},{name:"SIGUSR1",number:10,action:"terminate",description:"Application-specific signal",standard:"posix"},{name:"SIGSEGV",number:11,action:"core",description:"Segmentation fault",standard:"ansi"},{name:"SIGUSR2",number:12,action:"terminate",description:"Application-specific signal",standard:"posix"},{name:"SIGPIPE",number:13,action:"terminate",description:"Broken pipe or socket",standard:"posix"},{name:"SIGALRM",number:14,action:"terminate",description:"Timeout or timer",standard:"posix"},{name:"SIGTERM",number:15,action:"terminate",description:"Termination",standard:"ansi"},{name:"SIGSTKFLT",number:16,action:"terminate",description:"Stack is empty or overflowed",standard:"other"},{name:"SIGCHLD",number:17,action:"ignore",description:"Child process terminated, paused or unpaused",standard:"posix"},{name:"SIGCLD",number:17,action:"ignore",description:"Child process terminated, paused or unpaused",standard:"other"},{name:"SIGCONT",number:18,action:"unpause",description:"Unpaused",standard:"posix",forced:!0},{name:"SIGSTOP",number:19,action:"pause",description:"Paused",standard:"posix",forced:!0},{name:"SIGTSTP",number:20,action:"pause",description:'Paused using CTRL-Z or "suspend"',standard:"posix"},{name:"SIGTTIN",number:21,action:"pause",description:"Background process cannot read terminal input",standard:"posix"},{name:"SIGBREAK",number:21,action:"terminate",description:"User interruption with CTRL-BREAK",standard:"other"},{name:"SIGTTOU",number:22,action:"pause",description:"Background process cannot write to terminal output",standard:"posix"},{name:"SIGURG",number:23,action:"ignore",description:"Socket received out-of-band data",standard:"bsd"},{name:"SIGXCPU",number:24,action:"core",description:"Process timed out",standard:"bsd"},{name:"SIGXFSZ",number:25,action:"core",description:"File too big",standard:"bsd"},{name:"SIGVTALRM",number:26,action:"terminate",description:"Timeout or timer",standard:"bsd"},{name:"SIGPROF",number:27,action:"terminate",description:"Timeout or timer",standard:"bsd"},{name:"SIGWINCH",number:28,action:"ignore",description:"Terminal window size changed",standard:"bsd"},{name:"SIGIO",number:29,action:"terminate",description:"I/O is available",standard:"other"},{name:"SIGPOLL",number:29,action:"terminate",description:"Watched event",standard:"other"},{name:"SIGINFO",number:29,action:"ignore",description:"Request for process information",standard:"other"},{name:"SIGPWR",number:30,action:"terminate",description:"Device running out of power",standard:"systemv"},{name:"SIGSYS",number:31,action:"core",description:"Invalid system call",standard:"other"},{name:"SIGUNUSED",number:31,action:"terminate",description:"Invalid system call",standard:"other"}];var xv=()=>{let A=lAA();return[...iAA,...A].map(GyQ)},GyQ=({name:A,number:Q,description:B,action:Y,forced:J=!1,standard:C})=>{let{signals:{[A]:X}}=XyQ,G=X!==void 0;return{name:A,number:G?X:Q,description:B,supported:G,action:Y,forced:J,standard:C}};var FyQ=()=>{let A=xv();return Object.fromEntries(A.map(ZyQ))},ZyQ=({name:A,number:Q,description:B,supported:Y,action:J,forced:C,standard:X})=>[A,{name:A,number:Q,description:B,supported:Y,action:J,forced:C,standard:X}],nAA=FyQ(),$yQ=()=>{let A=xv(),Q=hv+1,B=Array.from({length:Q},(Y,J)=>UyQ(J,A));return Object.assign({},...B)},UyQ=(A,Q)=>{let B=EyQ(A,Q);if(B===void 0)return{};let{name:Y,description:J,supported:C,action:X,forced:G,standard:W}=B;return{[A]:{name:Y,number:A,description:J,supported:C,action:X,forced:G,standard:W}}},EyQ=(A,Q)=>{let B=Q.find(({name:Y})=>WyQ.signals[Y]===A);if(B!==void 0)return B;return Q.find((Y)=>Y.number===A)},JBY=$yQ();var rAA=(A)=>{if(A===0)throw TypeError("Invalid option `killSignal`: 0 cannot be used.");return oAA(A,"option `killSignal`")},aAA=(A)=>A===0?A:oAA(A,"`subprocess.kill()`'s argument"),oAA=(A,Q)=>{if(Number.isInteger(A))return KyQ(A,Q);if(typeof A==="string")return IyQ(A,Q);throw TypeError(`Invalid ${Q} ${String(A)}: it must be a string or an integer. +${fv()}`)},KyQ=(A,Q)=>{if(sAA.has(A))return sAA.get(A);throw TypeError(`Invalid ${Q} ${A}: this signal integer does not exist. +${fv()}`)},VyQ=()=>new Map(Object.entries(FI.signals).reverse().map(([A,Q])=>[Q,A])),sAA=VyQ(),IyQ=(A,Q)=>{if(A in FI.signals)return A;if(A.toUpperCase()in FI.signals)throw TypeError(`Invalid ${Q} '${A}': please rename it to '${A.toUpperCase()}'.`);throw TypeError(`Invalid ${Q} '${A}': this signal name does not exist. +${fv()}`)},fv=()=>`Available signal names: ${HyQ()}. +Available signal numbers: ${DyQ()}.`,HyQ=()=>Object.keys(FI.signals).sort().map((A)=>`'${A}'`).join(", "),DyQ=()=>[...new Set(Object.values(FI.signals).sort((A,Q)=>A-Q))].join(", "),yz=(A)=>nAA[A].description;var tAA=(A)=>{if(A===!1)return A;if(A===!0)return LyQ;if(!Number.isFinite(A)||A<0)throw TypeError(`Expected the \`forceKillAfterDelay\` option to be a non-negative integer, got \`${A}\` (${typeof A})`);return A},LyQ=5000,eAA=({kill:A,options:{forceKillAfterDelay:Q,killSignal:B},onInternalError:Y,context:J,controller:C},X,G)=>{let{signal:W,error:F}=qyQ(X,G,B);MyQ(F,Y);let Z=A(W);return zyQ({kill:A,signal:W,forceKillAfterDelay:Q,killSignal:B,killResult:Z,context:J,controller:C}),Z},qyQ=(A,Q,B)=>{let[Y=B,J]=vz(A)?[void 0,A]:[A,Q];if(typeof Y!=="string"&&!Number.isInteger(Y))throw TypeError(`The first argument must be an error instance or a signal name string/integer: ${String(Y)}`);if(J!==void 0&&!vz(J))throw TypeError(`The second argument is optional. If specified, it must be an error instance: ${J}`);return{signal:aAA(Y),error:J}},MyQ=(A,Q)=>{if(A!==void 0)Q.reject(A)},zyQ=async({kill:A,signal:Q,forceKillAfterDelay:B,killSignal:Y,killResult:J,context:C,controller:X})=>{if(Q===Y&&J)bv({kill:A,forceKillAfterDelay:B,context:C,controllerSignal:X.signal})},bv=async({kill:A,forceKillAfterDelay:Q,context:B,controllerSignal:Y})=>{if(Q===!1)return;try{if(await NyQ(Q,void 0,{signal:Y}),A("SIGKILL"))B.isForcefullyTerminated??=!0}catch{}};import{once as RyQ}from"node:events";var gz=async(A,Q)=>{if(!A.aborted)await RyQ(A,"abort",{signal:Q})};var AQA=({cancelSignal:A})=>{if(A!==void 0&&Object.prototype.toString.call(A)!=="[object AbortSignal]")throw Error(`The \`cancelSignal\` option must be an AbortSignal: ${String(A)}`)},QQA=({subprocess:A,cancelSignal:Q,gracefulCancel:B,context:Y,controller:J})=>Q===void 0||B?[]:[wyQ(A,Q,Y,J)],wyQ=async(A,Q,B,{signal:Y})=>{throw await gz(Q,Y),B.terminationReason??="cancel",A.kill(),Q.reason};import{scheduler as iyQ}from"node:timers/promises";import{promisify as cyQ}from"node:util";var O4=({methodName:A,isSubprocess:Q,ipc:B,isConnected:Y})=>{jyQ(A,Q,B),mv(A,Q,Y)},jyQ=(A,Q,B)=>{if(!B)throw Error(`${MC(A,Q)} can only be used if the \`ipc\` option is \`true\`.`)},mv=(A,Q,B)=>{if(!B)throw Error(`${MC(A,Q)} cannot be used: the ${aG(Q)} has already exited or disconnected.`)},BQA=(A)=>{throw Error(`${MC("getOneMessage",A)} could not complete: the ${aG(A)} exited or disconnected.`)},YQA=(A)=>{throw Error(`${MC("sendMessage",A)} failed: the ${aG(A)} is sending a message too, instead of listening to incoming messages. This can be fixed by both sending a message and listening to incoming messages at the same time: const [receivedMessage] = await Promise.all([ - ${EC("getOneMessage",A)}, - ${EC("sendMessage",A,"message, {strict: true}")}, -]);`)},Ez=(A,Q)=>Error(`${EC("sendMessage",Q)} failed when sending an acknowledgment response to the ${dG(Q)}.`,{cause:A}),HAA=(A)=>{throw Error(`${EC("sendMessage",A)} failed: the ${dG(A)} is not listening to incoming messages.`)},DAA=(A)=>{throw Error(`${EC("sendMessage",A)} failed: the ${dG(A)} exited without listening to incoming messages.`)},NAA=()=>Error(`\`cancelSignal\` aborted: the ${dG(!0)} disconnected.`),LAA=()=>{throw Error("`getCancelSignal()` cannot be used without setting the `cancelSignal` subprocess option.")},qAA=({error:A,methodName:Q,isSubprocess:B})=>{if(A.code==="EPIPE")throw Error(`${EC(Q,B)} cannot be used: the ${dG(B)} is disconnecting.`,{cause:A})},MAA=({error:A,methodName:Q,isSubprocess:B,message:Y})=>{if(jvQ(A))throw Error(`${EC(Q,B)}'s argument type is invalid: the message cannot be serialized: ${String(Y)}.`,{cause:A})},jvQ=({code:A,message:Q})=>OvQ.has(A)||PvQ.some((B)=>Q.includes(B)),OvQ=new Set(["ERR_MISSING_ARGS","ERR_INVALID_ARG_TYPE"]),PvQ=["could not be cloned","circular structure","call stack size exceeded"],EC=(A,Q,B="")=>A==="cancelSignal"?"`cancelSignal`'s `controller.abort()`":`${TvQ(Q)}${A}(${B})`,TvQ=(A)=>A?"":"subprocess.",dG=(A)=>A?"parent process":"subprocess",N4=(A)=>{if(A.connected)A.disconnect()};var N1=()=>{let A={},Q=new Promise((B,Y)=>{Object.assign(A,{resolve:B,reject:Y})});return Object.assign(Q,A)};var Vz=(A,Q="stdin")=>{let{options:Y,fileDescriptors:J}=L1.get(A),C=zAA(J,Q,!0),X=A.stdio[C];if(X===null)throw TypeError(RAA(C,Q,Y,!0));return X},L4=(A,Q="stdout")=>{let{options:Y,fileDescriptors:J}=L1.get(A),C=zAA(J,Q,!1),X=C==="all"?A.all:A.stdio[C];if(X===null||X===void 0)throw TypeError(RAA(C,Q,Y,!1));return X},L1=new WeakMap,zAA=(A,Q,B)=>{let Y=SvQ(Q,B);return kvQ(Y,Q,B,A),Y},SvQ=(A,Q)=>{let B=n_(A);if(B!==void 0)return B;let{validOptions:Y,defaultValue:J}=Q?{validOptions:'"stdin"',defaultValue:"stdin"}:{validOptions:'"stdout", "stderr", "all"',defaultValue:"stdout"};throw TypeError(`"${tV(Q)}" must not be "${A}". + ${MC("getOneMessage",A)}, + ${MC("sendMessage",A,"message, {strict: true}")}, +]);`)},hz=(A,Q)=>Error(`${MC("sendMessage",Q)} failed when sending an acknowledgment response to the ${aG(Q)}.`,{cause:A}),JQA=(A)=>{throw Error(`${MC("sendMessage",A)} failed: the ${aG(A)} is not listening to incoming messages.`)},CQA=(A)=>{throw Error(`${MC("sendMessage",A)} failed: the ${aG(A)} exited without listening to incoming messages.`)},XQA=()=>Error(`\`cancelSignal\` aborted: the ${aG(!0)} disconnected.`),GQA=()=>{throw Error("`getCancelSignal()` cannot be used without setting the `cancelSignal` subprocess option.")},WQA=({error:A,methodName:Q,isSubprocess:B})=>{if(A.code==="EPIPE")throw Error(`${MC(Q,B)} cannot be used: the ${aG(B)} is disconnecting.`,{cause:A})},FQA=({error:A,methodName:Q,isSubprocess:B,message:Y})=>{if(OyQ(A))throw Error(`${MC(Q,B)}'s argument type is invalid: the message cannot be serialized: ${String(Y)}.`,{cause:A})},OyQ=({code:A,message:Q})=>PyQ.has(A)||TyQ.some((B)=>Q.includes(B)),PyQ=new Set(["ERR_MISSING_ARGS","ERR_INVALID_ARG_TYPE"]),TyQ=["could not be cloned","circular structure","call stack size exceeded"],MC=(A,Q,B="")=>A==="cancelSignal"?"`cancelSignal`'s `controller.abort()`":`${SyQ(Q)}${A}(${B})`,SyQ=(A)=>A?"":"subprocess.",aG=(A)=>A?"parent process":"subprocess",P4=(A)=>{if(A.connected)A.disconnect()};var P1=()=>{let A={},Q=new Promise((B,Y)=>{Object.assign(A,{resolve:B,reject:Y})});return Object.assign(Q,A)};var fz=(A,Q="stdin")=>{let{options:Y,fileDescriptors:J}=T1.get(A),C=ZQA(J,Q,!0),X=A.stdio[C];if(X===null)throw TypeError($QA(C,Q,Y,!0));return X},T4=(A,Q="stdout")=>{let{options:Y,fileDescriptors:J}=T1.get(A),C=ZQA(J,Q,!1),X=C==="all"?A.all:A.stdio[C];if(X===null||X===void 0)throw TypeError($QA(C,Q,Y,!1));return X},T1=new WeakMap,ZQA=(A,Q,B)=>{let Y=kyQ(Q,B);return _yQ(Y,Q,B,A),Y},kyQ=(A,Q)=>{let B=Mv(A);if(B!==void 0)return B;let{validOptions:Y,defaultValue:J}=Q?{validOptions:'"stdin"',defaultValue:"stdin"}:{validOptions:'"stdout", "stderr", "all"',defaultValue:"stdout"};throw TypeError(`"${ZI(Q)}" must not be "${A}". It must be ${Y} or "fd3", "fd4" (and so on). -It is optional and defaults to "${J}".`)},kvQ=(A,Q,B,Y)=>{let J=Y[wAA(A)];if(J===void 0)throw TypeError(`"${tV(B)}" must not be ${Q}. That file descriptor does not exist. -Please set the "stdio" option to ensure that file descriptor exists.`);if(J.direction==="input"&&!B)throw TypeError(`"${tV(B)}" must not be ${Q}. It must be a readable stream, not writable.`);if(J.direction!=="input"&&B)throw TypeError(`"${tV(B)}" must not be ${Q}. It must be a writable stream, not readable.`)},RAA=(A,Q,B,Y)=>{if(A==="all"&&!B.all)return`The "all" option must be true to use "from: 'all'".`;let{optionName:J,optionValue:C}=_vQ(A,B);return`The "${J}: ${Kz(C)}" option is incompatible with using "${tV(Y)}: ${Kz(Q)}". -Please set this option with "pipe" instead.`},_vQ=(A,{stdin:Q,stdout:B,stderr:Y,stdio:J})=>{let C=wAA(A);if(C===0&&Q!==void 0)return{optionName:"stdin",optionValue:Q};if(C===1&&B!==void 0)return{optionName:"stdout",optionValue:B};if(C===2&&Y!==void 0)return{optionName:"stderr",optionValue:Y};return{optionName:`stdio[${C}]`,optionValue:J[C]}},wAA=(A)=>A==="all"?1:A,tV=(A)=>A?"to":"from",Kz=(A)=>{if(typeof A==="string")return`'${A}'`;return typeof A==="number"?`${A}`:"Stream"};import{once as fvQ}from"node:events";import{addAbortListener as vvQ}from"node:events";var LW=(A,Q,B)=>{let Y=A.getMaxListeners();if(Y===0||Y===Number.POSITIVE_INFINITY)return;A.setMaxListeners(Y+Q),vvQ(B,()=>{A.setMaxListeners(A.getMaxListeners()-Q)})};import{EventEmitter as gvQ}from"node:events";import{once as yvQ}from"node:events";import{scheduler as hvQ}from"node:timers/promises";var Iz=(A,Q)=>{if(Q)Uv(A)},Uv=(A)=>{A.refCounted()},Hz=(A,Q)=>{if(Q)Ev(A)},Ev=(A)=>{A.unrefCounted()},jAA=(A,Q)=>{if(Q)Ev(A),Ev(A)},OAA=(A,Q)=>{if(Q)Uv(A),Uv(A)};var PAA=async({anyProcess:A,channel:Q,isSubprocess:B,ipcEmitter:Y},J)=>{if(kAA(J)||vAA(J))return;if(!Dz.has(A))Dz.set(A,[]);let C=Dz.get(A);if(C.push(J),C.length>1)return;while(C.length>0){await _AA(A,Y,J),await hvQ.yield();let X=await SAA({wrappedMessage:C[0],anyProcess:A,channel:Q,isSubprocess:B,ipcEmitter:Y});C.shift(),Y.emit("message",X),Y.emit("message:done")}},TAA=async({anyProcess:A,channel:Q,isSubprocess:B,ipcEmitter:Y,boundOnMessage:J})=>{Kv();let C=Dz.get(A);while(C?.length>0)await yvQ(Y,"message:done");A.removeListener("message",J),OAA(Q,B),Y.connected=!1,Y.emit("disconnect")},Dz=new WeakMap;var cG=(A,Q,B)=>{if(Nz.has(A))return Nz.get(A);let Y=new gvQ;return Y.connected=!0,Nz.set(A,Y),xvQ({ipcEmitter:Y,anyProcess:A,channel:Q,isSubprocess:B}),Y},Nz=new WeakMap,xvQ=({ipcEmitter:A,anyProcess:Q,channel:B,isSubprocess:Y})=>{let J=PAA.bind(void 0,{anyProcess:Q,channel:B,isSubprocess:Y,ipcEmitter:A});Q.on("message",J),Q.once("disconnect",TAA.bind(void 0,{anyProcess:Q,channel:B,isSubprocess:Y,ipcEmitter:A,boundOnMessage:J})),jAA(B,Y)},Lz=(A)=>{let Q=Nz.get(A);return Q===void 0?A.channel!==null:Q.connected};var yAA=({anyProcess:A,channel:Q,isSubprocess:B,message:Y,strict:J})=>{if(!J)return Y;let C=cG(A,Q,B),X=zz(A,C);return{id:bvQ++,type:Mz,message:Y,hasListeners:X}},bvQ=0n,hAA=(A,Q)=>{if(Q?.type!==Mz||Q.hasListeners)return;for(let{id:B}of A)if(B!==void 0)qz[B].resolve({isDeadlock:!0,hasListeners:!1})},SAA=async({wrappedMessage:A,anyProcess:Q,channel:B,isSubprocess:Y,ipcEmitter:J})=>{if(A?.type!==Mz||!Q.connected)return A;let{id:C,message:X}=A,G={id:C,type:xAA,message:zz(Q,J)};try{await Rz({anyProcess:Q,channel:B,isSubprocess:Y,ipc:!0},G)}catch(F){J.emit("strict:error",F)}return X},kAA=(A)=>{if(A?.type!==xAA)return!1;let{id:Q,message:B}=A;return qz[Q]?.resolve({isDeadlock:!1,hasListeners:B}),!0},gAA=async(A,Q,B)=>{if(A?.type!==Mz)return;let Y=N1();qz[A.id]=Y;let J=new AbortController;try{let{isDeadlock:C,hasListeners:X}=await Promise.race([Y,mvQ(Q,B,J)]);if(C)IAA(B);if(!X)HAA(B)}finally{J.abort(),delete qz[A.id]}},qz={},mvQ=async(A,Q,{signal:B})=>{LW(A,1,B),await fvQ(A,"disconnect",{signal:B}),DAA(Q)},Mz="execa:ipc:request",xAA="execa:ipc:response";var fAA=(A,Q,B)=>{if(!eV.has(A))eV.set(A,new Set);let Y=eV.get(A),J=N1(),C=B?Q.id:void 0,X={onMessageSent:J,id:C};return Y.add(X),{outgoingMessages:Y,outgoingMessage:X}},bAA=({outgoingMessages:A,outgoingMessage:Q})=>{A.delete(Q),Q.onMessageSent.resolve()},_AA=async(A,Q,B)=>{while(!zz(A,Q)&&eV.get(A)?.size>0){let Y=[...eV.get(A)];hAA(Y,B),await Promise.all(Y.map(({onMessageSent:J})=>J))}},eV=new WeakMap,zz=(A,Q)=>Q.listenerCount("message")>uvQ(A),uvQ=(A)=>L1.has(A)&&!u6(L1.get(A).options.buffer,"ipc")?1:0;var Rz=({anyProcess:A,channel:Q,isSubprocess:B,ipc:Y},J,{strict:C=!1}={})=>{return D4({methodName:"sendMessage",isSubprocess:B,ipc:Y,isConnected:A.connected}),cvQ({anyProcess:A,channel:Q,methodName:"sendMessage",isSubprocess:B,message:J,strict:C})},cvQ=async({anyProcess:A,channel:Q,methodName:B,isSubprocess:Y,message:J,strict:C})=>{let X=yAA({anyProcess:A,channel:Q,isSubprocess:Y,message:J,strict:C}),G=fAA(A,X,C);try{await Iv({anyProcess:A,methodName:B,isSubprocess:Y,wrappedMessage:X,message:J})}catch(F){throw N4(A),F}finally{bAA(G)}},Iv=async({anyProcess:A,methodName:Q,isSubprocess:B,wrappedMessage:Y,message:J})=>{let C=lvQ(A);try{await Promise.all([gAA(Y,A,B),C(Y)])}catch(X){throw qAA({error:X,methodName:Q,isSubprocess:B}),MAA({error:X,methodName:Q,isSubprocess:B,message:J}),X}},lvQ=(A)=>{if(Vv.has(A))return Vv.get(A);let Q=dvQ(A.send.bind(A));return Vv.set(A,Q),Q},Vv=new WeakMap;var uAA=(A,Q)=>{return $v("cancelSignal",!1,A.connected),Iv({anyProcess:A,methodName:"cancelSignal",isSubprocess:!1,wrappedMessage:{type:cAA,message:Q},message:Q})},dAA=async({anyProcess:A,channel:Q,isSubprocess:B,ipc:Y})=>{return await ivQ({anyProcess:A,channel:Q,isSubprocess:B,ipc:Y}),Hv.signal},ivQ=async({anyProcess:A,channel:Q,isSubprocess:B,ipc:Y})=>{if(mAA)return;if(mAA=!0,!Y){LAA();return}if(Q===null){Kv();return}cG(A,Q,B),await pvQ.yield()},mAA=!1,vAA=(A)=>{if(A?.type!==cAA)return!1;return Hv.abort(A.message),!0},cAA="execa:ipc:cancel",Kv=()=>{Hv.abort(NAA())},Hv=new AbortController;var lAA=({gracefulCancel:A,cancelSignal:Q,ipc:B,serialization:Y})=>{if(!A)return;if(Q===void 0)throw Error("The `cancelSignal` option must be defined when setting the `gracefulCancel` option.");if(!B)throw Error("The `ipc` option cannot be false when setting the `gracefulCancel` option.");if(Y==="json")throw Error("The `serialization` option cannot be 'json' when setting the `gracefulCancel` option.")},pAA=({subprocess:A,cancelSignal:Q,gracefulCancel:B,forceKillAfterDelay:Y,context:J,controller:C})=>B?[nvQ({subprocess:A,cancelSignal:Q,forceKillAfterDelay:Y,context:J,controller:C})]:[],nvQ=async({subprocess:A,cancelSignal:Q,forceKillAfterDelay:B,context:Y,controller:{signal:J}})=>{await Uz(Q,J);let C=svQ(Q);throw await uAA(A,C),Zv({kill:A.kill,forceKillAfterDelay:B,context:Y,controllerSignal:J}),Y.terminationReason??="gracefulCancel",Q.reason},svQ=({reason:A})=>{if(!(A instanceof DOMException))return A;let Q=Error(A.message);return Object.defineProperty(Q,"stack",{value:A.stack,enumerable:!1,configurable:!0,writable:!0}),Q};import{setTimeout as rvQ}from"node:timers/promises";var iAA=({timeout:A})=>{if(A!==void 0&&(!Number.isFinite(A)||A<0))throw TypeError(`Expected the \`timeout\` option to be a non-negative integer, got \`${A}\` (${typeof A})`)},nAA=(A,Q,B,Y)=>Q===0||Q===void 0?[]:[avQ(A,Q,B,Y)],avQ=async(A,Q,B,{signal:Y})=>{throw await rvQ(Q,void 0,{signal:Y}),B.terminationReason??="timeout",A.kill(),new D1};import{execPath as ovQ,execArgv as tvQ}from"node:process";import sAA from"node:path";var rAA=({options:A})=>{if(A.node===!1)throw TypeError('The "node" option cannot be false with `execaNode()`.');return{options:{...A,node:!0}}},aAA=(A,Q,{node:B=!1,nodePath:Y=ovQ,nodeOptions:J=tvQ.filter((F)=>!F.startsWith("--inspect")),cwd:C,execPath:X,...G})=>{if(X!==void 0)throw TypeError('The "execPath" option has been removed. Please use the "nodePath" option instead.');let F=E4(Y,'The "nodePath" option'),W=sAA.resolve(C,F),Z={...G,nodePath:W,node:B,cwd:C};if(!B)return[A,Q,Z];if(sAA.basename(A,".exe")==="node")throw TypeError('When the "node" option is true, the first argument does not need to be "node".');return[W,[...J,A,...Q],{ipc:!0,...Z,shell:!1}]};import{serialize as evQ}from"node:v8";var oAA=({ipcInput:A,ipc:Q,serialization:B})=>{if(A===void 0)return;if(!Q)throw Error("The `ipcInput` option cannot be set unless the `ipc` option is `true`.");ByQ[B](A)},AyQ=(A)=>{try{evQ(A)}catch(Q){throw Error("The `ipcInput` option is not serializable with a structured clone.",{cause:Q})}},QyQ=(A)=>{try{JSON.stringify(A)}catch(Q){throw Error("The `ipcInput` option is not serializable with JSON.",{cause:Q})}},ByQ={advanced:AyQ,json:QyQ},tAA=async(A,Q)=>{if(Q===void 0)return;await A.sendMessage(Q)};var AQA=({encoding:A})=>{if(Dv.has(A))return;let Q=JyQ(A);if(Q!==void 0)throw TypeError(`Invalid option \`encoding: ${wz(A)}\`. -Please rename it to ${wz(Q)}.`);let B=[...Dv].map((Y)=>wz(Y)).join(", ");throw TypeError(`Invalid option \`encoding: ${wz(A)}\`. -Please rename it to one of: ${B}.`)},YyQ=new Set(["utf8","utf16le"]),A8=new Set(["buffer","hex","base64","base64url","latin1","ascii"]),Dv=new Set([...YyQ,...A8]),JyQ=(A)=>{if(A===null)return"buffer";if(typeof A!=="string")return;let Q=A.toLowerCase();if(Q in eAA)return eAA[Q];if(Dv.has(Q))return Q},eAA={"utf-8":"utf8","utf-16le":"utf16le","ucs-2":"utf16le",ucs2:"utf16le",binary:"latin1"},wz=(A)=>typeof A==="string"?`"${A}"`:String(A);import{statSync as CyQ}from"node:fs";import XyQ from"node:path";import GyQ from"node:process";var QQA=(A=BQA())=>{let Q=E4(A,'The "cwd" option');return XyQ.resolve(Q)},BQA=()=>{try{return GyQ.cwd()}catch(A){throw A.message=`The current directory does not exist. -${A.message}`,A}},YQA=(A,Q)=>{if(Q===BQA())return A;let B;try{B=CyQ(Q)}catch(Y){return`The "cwd" option is invalid: ${Q}. +It is optional and defaults to "${J}".`)},_yQ=(A,Q,B,Y)=>{let J=Y[UQA(A)];if(J===void 0)throw TypeError(`"${ZI(B)}" must not be ${Q}. That file descriptor does not exist. +Please set the "stdio" option to ensure that file descriptor exists.`);if(J.direction==="input"&&!B)throw TypeError(`"${ZI(B)}" must not be ${Q}. It must be a readable stream, not writable.`);if(J.direction!=="input"&&B)throw TypeError(`"${ZI(B)}" must not be ${Q}. It must be a writable stream, not readable.`)},$QA=(A,Q,B,Y)=>{if(A==="all"&&!B.all)return`The "all" option must be true to use "from: 'all'".`;let{optionName:J,optionValue:C}=vyQ(A,B);return`The "${J}: ${xz(C)}" option is incompatible with using "${ZI(Y)}: ${xz(Q)}". +Please set this option with "pipe" instead.`},vyQ=(A,{stdin:Q,stdout:B,stderr:Y,stdio:J})=>{let C=UQA(A);if(C===0&&Q!==void 0)return{optionName:"stdin",optionValue:Q};if(C===1&&B!==void 0)return{optionName:"stdout",optionValue:B};if(C===2&&Y!==void 0)return{optionName:"stderr",optionValue:Y};return{optionName:`stdio[${C}]`,optionValue:J[C]}},UQA=(A)=>A==="all"?1:A,ZI=(A)=>A?"to":"from",xz=(A)=>{if(typeof A==="string")return`'${A}'`;return typeof A==="number"?`${A}`:"Stream"};import{once as byQ}from"node:events";import{addAbortListener as yyQ}from"node:events";var PF=(A,Q,B)=>{let Y=A.getMaxListeners();if(Y===0||Y===Number.POSITIVE_INFINITY)return;A.setMaxListeners(Y+Q),yyQ(B,()=>{A.setMaxListeners(A.getMaxListeners()-Q)})};import{EventEmitter as xyQ}from"node:events";import{once as gyQ}from"node:events";import{scheduler as hyQ}from"node:timers/promises";var bz=(A,Q)=>{if(Q)uv(A)},uv=(A)=>{A.refCounted()},mz=(A,Q)=>{if(Q)dv(A)},dv=(A)=>{A.unrefCounted()},EQA=(A,Q)=>{if(Q)dv(A),dv(A)},KQA=(A,Q)=>{if(Q)uv(A),uv(A)};var VQA=async({anyProcess:A,channel:Q,isSubprocess:B,ipcEmitter:Y},J)=>{if(DQA(J)||LQA(J))return;if(!uz.has(A))uz.set(A,[]);let C=uz.get(A);if(C.push(J),C.length>1)return;while(C.length>0){await NQA(A,Y,J),await hyQ.yield();let X=await HQA({wrappedMessage:C[0],anyProcess:A,channel:Q,isSubprocess:B,ipcEmitter:Y});C.shift(),Y.emit("message",X),Y.emit("message:done")}},IQA=async({anyProcess:A,channel:Q,isSubprocess:B,ipcEmitter:Y,boundOnMessage:J})=>{cv();let C=uz.get(A);while(C?.length>0)await gyQ(Y,"message:done");A.removeListener("message",J),KQA(Q,B),Y.connected=!1,Y.emit("disconnect")},uz=new WeakMap;var oG=(A,Q,B)=>{if(dz.has(A))return dz.get(A);let Y=new xyQ;return Y.connected=!0,dz.set(A,Y),fyQ({ipcEmitter:Y,anyProcess:A,channel:Q,isSubprocess:B}),Y},dz=new WeakMap,fyQ=({ipcEmitter:A,anyProcess:Q,channel:B,isSubprocess:Y})=>{let J=VQA.bind(void 0,{anyProcess:Q,channel:B,isSubprocess:Y,ipcEmitter:A});Q.on("message",J),Q.once("disconnect",IQA.bind(void 0,{anyProcess:Q,channel:B,isSubprocess:Y,ipcEmitter:A,boundOnMessage:J})),EQA(B,Y)},cz=(A)=>{let Q=dz.get(A);return Q===void 0?A.channel!==null:Q.connected};var qQA=({anyProcess:A,channel:Q,isSubprocess:B,message:Y,strict:J})=>{if(!J)return Y;let C=oG(A,Q,B),X=iz(A,C);return{id:myQ++,type:pz,message:Y,hasListeners:X}},myQ=0n,MQA=(A,Q)=>{if(Q?.type!==pz||Q.hasListeners)return;for(let{id:B}of A)if(B!==void 0)lz[B].resolve({isDeadlock:!0,hasListeners:!1})},HQA=async({wrappedMessage:A,anyProcess:Q,channel:B,isSubprocess:Y,ipcEmitter:J})=>{if(A?.type!==pz||!Q.connected)return A;let{id:C,message:X}=A,G={id:C,type:RQA,message:iz(Q,J)};try{await nz({anyProcess:Q,channel:B,isSubprocess:Y,ipc:!0},G)}catch(W){J.emit("strict:error",W)}return X},DQA=(A)=>{if(A?.type!==RQA)return!1;let{id:Q,message:B}=A;return lz[Q]?.resolve({isDeadlock:!1,hasListeners:B}),!0},zQA=async(A,Q,B)=>{if(A?.type!==pz)return;let Y=P1();lz[A.id]=Y;let J=new AbortController;try{let{isDeadlock:C,hasListeners:X}=await Promise.race([Y,uyQ(Q,B,J)]);if(C)YQA(B);if(!X)JQA(B)}finally{J.abort(),delete lz[A.id]}},lz={},uyQ=async(A,Q,{signal:B})=>{PF(A,1,B),await byQ(A,"disconnect",{signal:B}),CQA(Q)},pz="execa:ipc:request",RQA="execa:ipc:response";var wQA=(A,Q,B)=>{if(!$I.has(A))$I.set(A,new Set);let Y=$I.get(A),J=P1(),C=B?Q.id:void 0,X={onMessageSent:J,id:C};return Y.add(X),{outgoingMessages:Y,outgoingMessage:X}},jQA=({outgoingMessages:A,outgoingMessage:Q})=>{A.delete(Q),Q.onMessageSent.resolve()},NQA=async(A,Q,B)=>{while(!iz(A,Q)&&$I.get(A)?.size>0){let Y=[...$I.get(A)];MQA(Y,B),await Promise.all(Y.map(({onMessageSent:J})=>J))}},$I=new WeakMap,iz=(A,Q)=>Q.listenerCount("message")>dyQ(A),dyQ=(A)=>T1.has(A)&&!aX(T1.get(A).options.buffer,"ipc")?1:0;var nz=({anyProcess:A,channel:Q,isSubprocess:B,ipc:Y},J,{strict:C=!1}={})=>{return O4({methodName:"sendMessage",isSubprocess:B,ipc:Y,isConnected:A.connected}),lyQ({anyProcess:A,channel:Q,methodName:"sendMessage",isSubprocess:B,message:J,strict:C})},lyQ=async({anyProcess:A,channel:Q,methodName:B,isSubprocess:Y,message:J,strict:C})=>{let X=qQA({anyProcess:A,channel:Q,isSubprocess:Y,message:J,strict:C}),G=wQA(A,X,C);try{await pv({anyProcess:A,methodName:B,isSubprocess:Y,wrappedMessage:X,message:J})}catch(W){throw P4(A),W}finally{jQA(G)}},pv=async({anyProcess:A,methodName:Q,isSubprocess:B,wrappedMessage:Y,message:J})=>{let C=pyQ(A);try{await Promise.all([zQA(Y,A,B),C(Y)])}catch(X){throw WQA({error:X,methodName:Q,isSubprocess:B}),FQA({error:X,methodName:Q,isSubprocess:B,message:J}),X}},pyQ=(A)=>{if(lv.has(A))return lv.get(A);let Q=cyQ(A.send.bind(A));return lv.set(A,Q),Q},lv=new WeakMap;var PQA=(A,Q)=>{return mv("cancelSignal",!1,A.connected),pv({anyProcess:A,methodName:"cancelSignal",isSubprocess:!1,wrappedMessage:{type:SQA,message:Q},message:Q})},TQA=async({anyProcess:A,channel:Q,isSubprocess:B,ipc:Y})=>{return await nyQ({anyProcess:A,channel:Q,isSubprocess:B,ipc:Y}),iv.signal},nyQ=async({anyProcess:A,channel:Q,isSubprocess:B,ipc:Y})=>{if(OQA)return;if(OQA=!0,!Y){GQA();return}if(Q===null){cv();return}oG(A,Q,B),await iyQ.yield()},OQA=!1,LQA=(A)=>{if(A?.type!==SQA)return!1;return iv.abort(A.message),!0},SQA="execa:ipc:cancel",cv=()=>{iv.abort(XQA())},iv=new AbortController;var kQA=({gracefulCancel:A,cancelSignal:Q,ipc:B,serialization:Y})=>{if(!A)return;if(Q===void 0)throw Error("The `cancelSignal` option must be defined when setting the `gracefulCancel` option.");if(!B)throw Error("The `ipc` option cannot be false when setting the `gracefulCancel` option.");if(Y==="json")throw Error("The `serialization` option cannot be 'json' when setting the `gracefulCancel` option.")},_QA=({subprocess:A,cancelSignal:Q,gracefulCancel:B,forceKillAfterDelay:Y,context:J,controller:C})=>B?[syQ({subprocess:A,cancelSignal:Q,forceKillAfterDelay:Y,context:J,controller:C})]:[],syQ=async({subprocess:A,cancelSignal:Q,forceKillAfterDelay:B,context:Y,controller:{signal:J}})=>{await gz(Q,J);let C=ryQ(Q);throw await PQA(A,C),bv({kill:A.kill,forceKillAfterDelay:B,context:Y,controllerSignal:J}),Y.terminationReason??="gracefulCancel",Q.reason},ryQ=({reason:A})=>{if(!(A instanceof DOMException))return A;let Q=Error(A.message);return Object.defineProperty(Q,"stack",{value:A.stack,enumerable:!1,configurable:!0,writable:!0}),Q};import{setTimeout as ayQ}from"node:timers/promises";var vQA=({timeout:A})=>{if(A!==void 0&&(!Number.isFinite(A)||A<0))throw TypeError(`Expected the \`timeout\` option to be a non-negative integer, got \`${A}\` (${typeof A})`)},yQA=(A,Q,B,Y)=>Q===0||Q===void 0?[]:[oyQ(A,Q,B,Y)],oyQ=async(A,Q,B,{signal:Y})=>{throw await ayQ(Q,void 0,{signal:Y}),B.terminationReason??="timeout",A.kill(),new O1};import{execPath as tyQ,execArgv as eyQ}from"node:process";import gQA from"node:path";var hQA=({options:A})=>{if(A.node===!1)throw TypeError('The "node" option cannot be false with `execaNode()`.');return{options:{...A,node:!0}}},xQA=(A,Q,{node:B=!1,nodePath:Y=tyQ,nodeOptions:J=eyQ.filter((W)=>!W.startsWith("--inspect")),cwd:C,execPath:X,...G})=>{if(X!==void 0)throw TypeError('The "execPath" option has been removed. Please use the "nodePath" option instead.');let W=M4(Y,'The "nodePath" option'),F=gQA.resolve(C,W),Z={...G,nodePath:F,node:B,cwd:C};if(!B)return[A,Q,Z];if(gQA.basename(A,".exe")==="node")throw TypeError('When the "node" option is true, the first argument does not need to be "node".');return[F,[...J,A,...Q],{ipc:!0,...Z,shell:!1}]};import{serialize as AgQ}from"node:v8";var fQA=({ipcInput:A,ipc:Q,serialization:B})=>{if(A===void 0)return;if(!Q)throw Error("The `ipcInput` option cannot be set unless the `ipc` option is `true`.");YgQ[B](A)},QgQ=(A)=>{try{AgQ(A)}catch(Q){throw Error("The `ipcInput` option is not serializable with a structured clone.",{cause:Q})}},BgQ=(A)=>{try{JSON.stringify(A)}catch(Q){throw Error("The `ipcInput` option is not serializable with JSON.",{cause:Q})}},YgQ={advanced:QgQ,json:BgQ},bQA=async(A,Q)=>{if(Q===void 0)return;await A.sendMessage(Q)};var uQA=({encoding:A})=>{if(nv.has(A))return;let Q=CgQ(A);if(Q!==void 0)throw TypeError(`Invalid option \`encoding: ${sz(A)}\`. +Please rename it to ${sz(Q)}.`);let B=[...nv].map((Y)=>sz(Y)).join(", ");throw TypeError(`Invalid option \`encoding: ${sz(A)}\`. +Please rename it to one of: ${B}.`)},JgQ=new Set(["utf8","utf16le"]),G8=new Set(["buffer","hex","base64","base64url","latin1","ascii"]),nv=new Set([...JgQ,...G8]),CgQ=(A)=>{if(A===null)return"buffer";if(typeof A!=="string")return;let Q=A.toLowerCase();if(Q in mQA)return mQA[Q];if(nv.has(Q))return Q},mQA={"utf-8":"utf8","utf-16le":"utf16le","ucs-2":"utf16le",ucs2:"utf16le",binary:"latin1"},sz=(A)=>typeof A==="string"?`"${A}"`:String(A);import{statSync as XgQ}from"node:fs";import GgQ from"node:path";import WgQ from"node:process";var dQA=(A=cQA())=>{let Q=M4(A,'The "cwd" option');return GgQ.resolve(Q)},cQA=()=>{try{return WgQ.cwd()}catch(A){throw A.message=`The current directory does not exist. +${A.message}`,A}},lQA=(A,Q)=>{if(Q===cQA())return A;let B;try{B=XgQ(Q)}catch(Y){return`The "cwd" option is invalid: ${Q}. ${Y.message} ${A}`}if(!B.isDirectory())return`The "cwd" option is not a directory: ${Q}. -${A}`;return A};var jz=(A,Q,B)=>{B.cwd=QQA(B.cwd);let[Y,J,C]=aAA(A,Q,B),{command:X,args:G,options:F}=CQA.default._parse(Y,J,C),W=pt(F),Z=WyQ(W);if(iAA(Z),AQA(Z),oAA(Z),EAA(Z),lAA(Z),Z.shell=c_(Z.shell),Z.env=ZyQ(Z),Z.killSignal=FAA(Z.killSignal),Z.forceKillAfterDelay=$AA(Z.forceKillAfterDelay),Z.lines=Z.lines.map((U,$)=>U&&!A8.has(Z.encoding)&&Z.buffer[$]),JQA.platform==="win32"&&FyQ.basename(X,".exe")==="cmd")G.unshift("/q");return{file:X,commandArguments:G,options:Z}},WyQ=({extendEnv:A=!0,preferLocal:Q=!1,cwd:B,localDir:Y=B,encoding:J="utf8",reject:C=!0,cleanup:X=!0,all:G=!1,windowsHide:F=!0,killSignal:W="SIGTERM",forceKillAfterDelay:Z=!0,gracefulCancel:U=!1,ipcInput:$,ipc:E=$!==void 0||U,serialization:K="advanced",...I})=>({...I,extendEnv:A,preferLocal:Q,cwd:B,localDirectory:Y,encoding:J,reject:C,cleanup:X,all:G,windowsHide:F,killSignal:W,forceKillAfterDelay:Z,gracefulCancel:U,ipcInput:$,ipc:E,serialization:K}),ZyQ=({env:A,extendEnv:Q,preferLocal:B,node:Y,localDirectory:J,nodePath:C})=>{let X=Q?{...JQA.env,...A}:A;if(B||Y)return te({env:X,cwd:J,execPath:C,preferLocal:B,addExecPath:Y});return X};import{inspect as lyQ}from"node:util";function q4(A){if(typeof A==="string")return $yQ(A);if(!(ArrayBuffer.isView(A)&&A.BYTES_PER_ELEMENT===1))throw Error("Input must be a string or a Uint8Array");return UyQ(A)}var $yQ=(A)=>A.at(-1)===XQA?A.slice(0,A.at(-2)===GQA?-2:-1):A,UyQ=(A)=>A.at(-1)===EyQ?A.subarray(0,A.at(-2)===KyQ?-2:-1):A,XQA=` -`,EyQ=XQA.codePointAt(0),GQA="\r",KyQ=GQA.codePointAt(0);import{on as myQ}from"node:events";import{finished as uyQ}from"node:stream/promises";function KC(A,{checkOpen:Q=!0}={}){return A!==null&&typeof A==="object"&&(A.writable||A.readable||!Q||A.writable===void 0&&A.readable===void 0)&&typeof A.pipe==="function"}function Nv(A,{checkOpen:Q=!0}={}){return KC(A,{checkOpen:Q})&&(A.writable||!Q)&&typeof A.write==="function"&&typeof A.end==="function"&&typeof A.writable==="boolean"&&typeof A.writableObjectMode==="boolean"&&typeof A.destroy==="function"&&typeof A.destroyed==="boolean"}function qW(A,{checkOpen:Q=!0}={}){return KC(A,{checkOpen:Q})&&(A.readable||!Q)&&typeof A.read==="function"&&typeof A.readable==="boolean"&&typeof A.readableObjectMode==="boolean"&&typeof A.destroy==="function"&&typeof A.destroyed==="boolean"}function Lv(A,Q){return Nv(A,Q)&&qW(A,Q)}var VyQ=Object.getPrototypeOf(Object.getPrototypeOf(async function*(){}).prototype);class FQA{#A;#Q;#B=!1;#Y=void 0;constructor(A,Q){this.#A=A,this.#Q=Q}next(){let A=()=>this.#J();return this.#Y=this.#Y?this.#Y.then(A,A):A(),this.#Y}return(A){let Q=()=>this.#C(A);return this.#Y?this.#Y.then(Q,Q):Q()}async#J(){if(this.#B)return{done:!0,value:void 0};let A;try{A=await this.#A.read()}catch(Q){throw this.#Y=void 0,this.#B=!0,this.#A.releaseLock(),Q}return A.done&&(this.#Y=void 0,this.#B=!0,this.#A.releaseLock()),A}async#C(A){if(this.#B)return{done:!0,value:A};if(this.#B=!0,!this.#Q){let Q=this.#A.cancel(A);return this.#A.releaseLock(),await Q,{done:!0,value:A}}return this.#A.releaseLock(),{done:!0,value:A}}}var qv=Symbol();function WQA(){return this[qv].next()}Object.defineProperty(WQA,"name",{value:"next"});function ZQA(A){return this[qv].return(A)}Object.defineProperty(ZQA,"name",{value:"return"});var IyQ=Object.create(VyQ,{next:{enumerable:!0,configurable:!0,writable:!0,value:WQA},return:{enumerable:!0,configurable:!0,writable:!0,value:ZQA}});function Mv({preventCancel:A=!1}={}){let Q=this.getReader(),B=new FQA(Q,A),Y=Object.create(IyQ);return Y[qv]=B,Y}var $QA=(A)=>{if(qW(A,{checkOpen:!1})&&AI.on!==void 0)return DyQ(A);if(typeof A?.[Symbol.asyncIterator]==="function")return A;if(HyQ.call(A)==="[object ReadableStream]")return Mv.call(A);throw TypeError("The first argument must be a Readable, a ReadableStream, or an async iterable.")},{toString:HyQ}=Object.prototype,DyQ=async function*(A){let Q=new AbortController,B={};NyQ(A,Q,B);try{for await(let[Y]of AI.on(A,"data",{signal:Q.signal}))yield Y}catch(Y){if(B.error!==void 0)throw B.error;else if(!Q.signal.aborted)throw Y}finally{A.destroy()}},NyQ=async(A,Q,B)=>{try{await AI.finished(A,{cleanup:!0,readable:!0,writable:!1,error:!1})}catch(Y){B.error=Y}finally{Q.abort()}},AI={};var M4=async(A,{init:Q,convertChunk:B,getSize:Y,truncateChunk:J,addChunk:C,getFinalChunk:X,finalize:G},{maxBuffer:F=Number.POSITIVE_INFINITY}={})=>{let W=$QA(A),Z=Q();Z.length=0;try{for await(let U of W){let $=qyQ(U),E=B[$](U,Z);KQA({convertedChunk:E,state:Z,getSize:Y,truncateChunk:J,addChunk:C,maxBuffer:F})}return LyQ({state:Z,convertChunk:B,getSize:Y,truncateChunk:J,addChunk:C,getFinalChunk:X,maxBuffer:F}),G(Z)}catch(U){let $=typeof U==="object"&&U!==null?U:Error(U);throw $.bufferedData=G(Z),$}},LyQ=({state:A,getSize:Q,truncateChunk:B,addChunk:Y,getFinalChunk:J,maxBuffer:C})=>{let X=J(A);if(X!==void 0)KQA({convertedChunk:X,state:A,getSize:Q,truncateChunk:B,addChunk:Y,maxBuffer:C})},KQA=({convertedChunk:A,state:Q,getSize:B,truncateChunk:Y,addChunk:J,maxBuffer:C})=>{let X=B(A),G=Q.length+X;if(G<=C){UQA(A,Q,J,G);return}let F=Y(A,C-Q.length);if(F!==void 0)UQA(F,Q,J,C);throw new d6},UQA=(A,Q,B,Y)=>{Q.contents=B(A,Q,Y),Q.length=Y},qyQ=(A)=>{let Q=typeof A;if(Q==="string")return"string";if(Q!=="object"||A===null)return"others";if(globalThis.Buffer?.isBuffer(A))return"buffer";let B=EQA.call(A);if(B==="[object ArrayBuffer]")return"arrayBuffer";if(B==="[object DataView]")return"dataView";if(Number.isInteger(A.byteLength)&&Number.isInteger(A.byteOffset)&&EQA.call(A.buffer)==="[object ArrayBuffer]")return"typedArray";return"others"},{toString:EQA}=Object.prototype;class d6 extends Error{name="MaxBufferError";constructor(){super("maxBuffer exceeded")}}var c6=(A)=>A,QI=()=>{return},Oz=({contents:A})=>A,Pz=(A)=>{throw Error(`Streams in object mode are not supported: ${String(A)}`)},Tz=(A)=>A.length;async function Sz(A,Q){return M4(A,wyQ,Q)}var MyQ=()=>({contents:[]}),zyQ=()=>1,RyQ=(A,{contents:Q})=>{return Q.push(A),Q},wyQ={init:MyQ,convertChunk:{string:c6,buffer:c6,arrayBuffer:c6,dataView:c6,typedArray:c6,others:c6},getSize:zyQ,truncateChunk:QI,addChunk:RyQ,getFinalChunk:QI,finalize:Oz};async function kz(A,Q){return M4(A,yyQ,Q)}var jyQ=()=>({contents:new ArrayBuffer(0)}),OyQ=(A)=>PyQ.encode(A),PyQ=new TextEncoder,VQA=(A)=>new Uint8Array(A),IQA=(A)=>new Uint8Array(A.buffer,A.byteOffset,A.byteLength),TyQ=(A,Q)=>A.slice(0,Q),SyQ=(A,{contents:Q,length:B},Y)=>{let J=NQA()?_yQ(Q,Y):kyQ(Q,Y);return new Uint8Array(J).set(A,B),J},kyQ=(A,Q)=>{if(Q<=A.byteLength)return A;let B=new ArrayBuffer(DQA(Q));return new Uint8Array(B).set(new Uint8Array(A),0),B},_yQ=(A,Q)=>{if(Q<=A.maxByteLength)return A.resize(Q),A;let B=new ArrayBuffer(Q,{maxByteLength:DQA(Q)});return new Uint8Array(B).set(new Uint8Array(A),0),B},DQA=(A)=>HQA**Math.ceil(Math.log(A)/Math.log(HQA)),HQA=2,vyQ=({contents:A,length:Q})=>NQA()?A:A.slice(0,Q),NQA=()=>("resize"in ArrayBuffer.prototype),yyQ={init:jyQ,convertChunk:{string:OyQ,buffer:VQA,arrayBuffer:VQA,dataView:IQA,typedArray:IQA,others:Pz},getSize:Tz,truncateChunk:TyQ,addChunk:SyQ,getFinalChunk:QI,finalize:vyQ};async function vz(A,Q){return M4(A,byQ,Q)}var hyQ=()=>({contents:"",textDecoder:new TextDecoder}),_z=(A,{textDecoder:Q})=>Q.decode(A,{stream:!0}),gyQ=(A,{contents:Q})=>Q+A,xyQ=(A,Q)=>A.slice(0,Q),fyQ=({textDecoder:A})=>{let Q=A.decode();return Q===""?void 0:Q},byQ={init:hyQ,convertChunk:{string:c6,buffer:_z,arrayBuffer:_z,dataView:_z,typedArray:_z,others:Pz},getSize:Tz,truncateChunk:xyQ,addChunk:gyQ,getFinalChunk:fyQ,finalize:Oz};Object.assign(AI,{on:myQ,finished:uyQ});var LQA=({error:A,stream:Q,readableObjectMode:B,lines:Y,encoding:J,fdNumber:C})=>{if(!(A instanceof d6))throw A;if(C==="all")return A;let X=dyQ(B,Y,J);throw A.maxBufferInfo={fdNumber:C,unit:X},Q.destroy(),A},dyQ=(A,Q,B)=>{if(A)return"objects";if(Q)return"lines";if(B==="buffer")return"bytes";return"characters"},qQA=(A,Q,B)=>{if(Q.length!==B)return;let Y=new d6;throw Y.maxBufferInfo={fdNumber:"ipc"},Y},MQA=(A,Q)=>{let{streamName:B,threshold:Y,unit:J}=cyQ(A,Q);return`Command's ${B} was larger than ${Y} ${J}`},cyQ=(A,Q)=>{if(A?.maxBufferInfo===void 0)return{streamName:"output",threshold:Q[1],unit:"bytes"};let{maxBufferInfo:{fdNumber:B,unit:Y}}=A;delete A.maxBufferInfo;let J=u6(Q,B);if(B==="ipc")return{streamName:"IPC output",threshold:J,unit:"messages"};return{streamName:rM(B),threshold:J,unit:Y}},zQA=(A,Q,B)=>A?.code==="ENOBUFS"&&Q!==null&&Q.some((Y)=>Y!==null&&Y.length>yz(B)),RQA=(A,Q,B)=>{if(!Q)return A;let Y=yz(B);return A.length>Y?A.slice(0,Y):A},yz=([,A])=>A;var jQA=({stdio:A,all:Q,ipcOutput:B,originalError:Y,signal:J,signalDescription:C,exitCode:X,escapedCommand:G,timedOut:F,isCanceled:W,isGracefullyCanceled:Z,isMaxBuffer:U,isForcefullyTerminated:$,forceKillAfterDelay:E,killSignal:K,maxBuffer:I,timeout:V,cwd:H})=>{let D=Y?.code,L=pyQ({originalError:Y,timedOut:F,timeout:V,isMaxBuffer:U,maxBuffer:I,errorCode:D,signal:J,signalDescription:C,exitCode:X,isCanceled:W,isGracefullyCanceled:Z,isForcefullyTerminated:$,forceKillAfterDelay:E,killSignal:K}),z=nyQ(Y,H),M=z===void 0?"":` -${z}`,N=`${L}: ${G}${M}`,q=Q===void 0?[A[2],A[1]]:[Q],w=[N,...q,...A.slice(3),B.map((P)=>syQ(P)).join(` -`)].map((P)=>aV(q4(ryQ(P)))).filter(Boolean).join(` +${A}`;return A};var rz=(A,Q,B)=>{B.cwd=dQA(B.cwd);let[Y,J,C]=xQA(A,Q,B),{command:X,args:G,options:W}=iQA.default._parse(Y,J,C),F=_e(W),Z=ZgQ(F);if(vQA(Z),uQA(Z),fQA(Z),AQA(Z),kQA(Z),Z.shell=Dv(Z.shell),Z.env=$gQ(Z),Z.killSignal=rAA(Z.killSignal),Z.forceKillAfterDelay=tAA(Z.forceKillAfterDelay),Z.lines=Z.lines.map((U,$)=>U&&!G8.has(Z.encoding)&&Z.buffer[$]),pQA.platform==="win32"&&FgQ.basename(X,".exe")==="cmd")G.unshift("/q");return{file:X,commandArguments:G,options:Z}},ZgQ=({extendEnv:A=!0,preferLocal:Q=!1,cwd:B,localDir:Y=B,encoding:J="utf8",reject:C=!0,cleanup:X=!0,all:G=!1,windowsHide:W=!0,killSignal:F="SIGTERM",forceKillAfterDelay:Z=!0,gracefulCancel:U=!1,ipcInput:$,ipc:E=$!==void 0||U,serialization:K="advanced",...I})=>({...I,extendEnv:A,preferLocal:Q,cwd:B,localDirectory:Y,encoding:J,reject:C,cleanup:X,all:G,windowsHide:W,killSignal:F,forceKillAfterDelay:Z,gracefulCancel:U,ipcInput:$,ipc:E,serialization:K}),$gQ=({env:A,extendEnv:Q,preferLocal:B,node:Y,localDirectory:J,nodePath:C})=>{let X=Q?{...pQA.env,...A}:A;if(B||Y)return bAA({env:X,cwd:J,execPath:C,preferLocal:B,addExecPath:Y});return X};import{inspect as pgQ}from"node:util";function S4(A){if(typeof A==="string")return UgQ(A);if(!(ArrayBuffer.isView(A)&&A.BYTES_PER_ELEMENT===1))throw Error("Input must be a string or a Uint8Array");return EgQ(A)}var UgQ=(A)=>A.at(-1)===nQA?A.slice(0,A.at(-2)===sQA?-2:-1):A,EgQ=(A)=>A.at(-1)===KgQ?A.subarray(0,A.at(-2)===VgQ?-2:-1):A,nQA=` +`,KgQ=nQA.codePointAt(0),sQA="\r",VgQ=sQA.codePointAt(0);import{on as ugQ}from"node:events";import{finished as dgQ}from"node:stream/promises";function zC(A,{checkOpen:Q=!0}={}){return A!==null&&typeof A==="object"&&(A.writable||A.readable||!Q||A.writable===void 0&&A.readable===void 0)&&typeof A.pipe==="function"}function sv(A,{checkOpen:Q=!0}={}){return zC(A,{checkOpen:Q})&&(A.writable||!Q)&&typeof A.write==="function"&&typeof A.end==="function"&&typeof A.writable==="boolean"&&typeof A.writableObjectMode==="boolean"&&typeof A.destroy==="function"&&typeof A.destroyed==="boolean"}function TF(A,{checkOpen:Q=!0}={}){return zC(A,{checkOpen:Q})&&(A.readable||!Q)&&typeof A.read==="function"&&typeof A.readable==="boolean"&&typeof A.readableObjectMode==="boolean"&&typeof A.destroy==="function"&&typeof A.destroyed==="boolean"}function rv(A,Q){return sv(A,Q)&&TF(A,Q)}var IgQ=Object.getPrototypeOf(Object.getPrototypeOf(async function*(){}).prototype);class rQA{#A;#Q;#B=!1;#Y=void 0;constructor(A,Q){this.#A=A,this.#Q=Q}next(){let A=()=>this.#J();return this.#Y=this.#Y?this.#Y.then(A,A):A(),this.#Y}return(A){let Q=()=>this.#C(A);return this.#Y?this.#Y.then(Q,Q):Q()}async#J(){if(this.#B)return{done:!0,value:void 0};let A;try{A=await this.#A.read()}catch(Q){throw this.#Y=void 0,this.#B=!0,this.#A.releaseLock(),Q}return A.done&&(this.#Y=void 0,this.#B=!0,this.#A.releaseLock()),A}async#C(A){if(this.#B)return{done:!0,value:A};if(this.#B=!0,!this.#Q){let Q=this.#A.cancel(A);return this.#A.releaseLock(),await Q,{done:!0,value:A}}return this.#A.releaseLock(),{done:!0,value:A}}}var av=Symbol();function aQA(){return this[av].next()}Object.defineProperty(aQA,"name",{value:"next"});function oQA(A){return this[av].return(A)}Object.defineProperty(oQA,"name",{value:"return"});var HgQ=Object.create(IgQ,{next:{enumerable:!0,configurable:!0,writable:!0,value:aQA},return:{enumerable:!0,configurable:!0,writable:!0,value:oQA}});function ov({preventCancel:A=!1}={}){let Q=this.getReader(),B=new rQA(Q,A),Y=Object.create(HgQ);return Y[av]=B,Y}var tQA=(A)=>{if(TF(A,{checkOpen:!1})&&UI.on!==void 0)return NgQ(A);if(typeof A?.[Symbol.asyncIterator]==="function")return A;if(DgQ.call(A)==="[object ReadableStream]")return ov.call(A);throw TypeError("The first argument must be a Readable, a ReadableStream, or an async iterable.")},{toString:DgQ}=Object.prototype,NgQ=async function*(A){let Q=new AbortController,B={};LgQ(A,Q,B);try{for await(let[Y]of UI.on(A,"data",{signal:Q.signal}))yield Y}catch(Y){if(B.error!==void 0)throw B.error;else if(!Q.signal.aborted)throw Y}finally{A.destroy()}},LgQ=async(A,Q,B)=>{try{await UI.finished(A,{cleanup:!0,readable:!0,writable:!1,error:!1})}catch(Y){B.error=Y}finally{Q.abort()}},UI={};var k4=async(A,{init:Q,convertChunk:B,getSize:Y,truncateChunk:J,addChunk:C,getFinalChunk:X,finalize:G},{maxBuffer:W=Number.POSITIVE_INFINITY}={})=>{let F=tQA(A),Z=Q();Z.length=0;try{for await(let U of F){let $=MgQ(U),E=B[$](U,Z);QBA({convertedChunk:E,state:Z,getSize:Y,truncateChunk:J,addChunk:C,maxBuffer:W})}return qgQ({state:Z,convertChunk:B,getSize:Y,truncateChunk:J,addChunk:C,getFinalChunk:X,maxBuffer:W}),G(Z)}catch(U){let $=typeof U==="object"&&U!==null?U:Error(U);throw $.bufferedData=G(Z),$}},qgQ=({state:A,getSize:Q,truncateChunk:B,addChunk:Y,getFinalChunk:J,maxBuffer:C})=>{let X=J(A);if(X!==void 0)QBA({convertedChunk:X,state:A,getSize:Q,truncateChunk:B,addChunk:Y,maxBuffer:C})},QBA=({convertedChunk:A,state:Q,getSize:B,truncateChunk:Y,addChunk:J,maxBuffer:C})=>{let X=B(A),G=Q.length+X;if(G<=C){eQA(A,Q,J,G);return}let W=Y(A,C-Q.length);if(W!==void 0)eQA(W,Q,J,C);throw new oX},eQA=(A,Q,B,Y)=>{Q.contents=B(A,Q,Y),Q.length=Y},MgQ=(A)=>{let Q=typeof A;if(Q==="string")return"string";if(Q!=="object"||A===null)return"others";if(globalThis.Buffer?.isBuffer(A))return"buffer";let B=ABA.call(A);if(B==="[object ArrayBuffer]")return"arrayBuffer";if(B==="[object DataView]")return"dataView";if(Number.isInteger(A.byteLength)&&Number.isInteger(A.byteOffset)&&ABA.call(A.buffer)==="[object ArrayBuffer]")return"typedArray";return"others"},{toString:ABA}=Object.prototype;class oX extends Error{name="MaxBufferError";constructor(){super("maxBuffer exceeded")}}var tX=(A)=>A,EI=()=>{return},az=({contents:A})=>A,oz=(A)=>{throw Error(`Streams in object mode are not supported: ${String(A)}`)},tz=(A)=>A.length;async function ez(A,Q){return k4(A,jgQ,Q)}var zgQ=()=>({contents:[]}),RgQ=()=>1,wgQ=(A,{contents:Q})=>{return Q.push(A),Q},jgQ={init:zgQ,convertChunk:{string:tX,buffer:tX,arrayBuffer:tX,dataView:tX,typedArray:tX,others:tX},getSize:RgQ,truncateChunk:EI,addChunk:wgQ,getFinalChunk:EI,finalize:az};async function A2(A,Q){return k4(A,ggQ,Q)}var OgQ=()=>({contents:new ArrayBuffer(0)}),PgQ=(A)=>TgQ.encode(A),TgQ=new TextEncoder,BBA=(A)=>new Uint8Array(A),YBA=(A)=>new Uint8Array(A.buffer,A.byteOffset,A.byteLength),SgQ=(A,Q)=>A.slice(0,Q),kgQ=(A,{contents:Q,length:B},Y)=>{let J=XBA()?vgQ(Q,Y):_gQ(Q,Y);return new Uint8Array(J).set(A,B),J},_gQ=(A,Q)=>{if(Q<=A.byteLength)return A;let B=new ArrayBuffer(CBA(Q));return new Uint8Array(B).set(new Uint8Array(A),0),B},vgQ=(A,Q)=>{if(Q<=A.maxByteLength)return A.resize(Q),A;let B=new ArrayBuffer(Q,{maxByteLength:CBA(Q)});return new Uint8Array(B).set(new Uint8Array(A),0),B},CBA=(A)=>JBA**Math.ceil(Math.log(A)/Math.log(JBA)),JBA=2,ygQ=({contents:A,length:Q})=>XBA()?A:A.slice(0,Q),XBA=()=>("resize"in ArrayBuffer.prototype),ggQ={init:OgQ,convertChunk:{string:PgQ,buffer:BBA,arrayBuffer:BBA,dataView:YBA,typedArray:YBA,others:oz},getSize:tz,truncateChunk:SgQ,addChunk:kgQ,getFinalChunk:EI,finalize:ygQ};async function B2(A,Q){return k4(A,mgQ,Q)}var hgQ=()=>({contents:"",textDecoder:new TextDecoder}),Q2=(A,{textDecoder:Q})=>Q.decode(A,{stream:!0}),xgQ=(A,{contents:Q})=>Q+A,fgQ=(A,Q)=>A.slice(0,Q),bgQ=({textDecoder:A})=>{let Q=A.decode();return Q===""?void 0:Q},mgQ={init:hgQ,convertChunk:{string:tX,buffer:Q2,arrayBuffer:Q2,dataView:Q2,typedArray:Q2,others:oz},getSize:tz,truncateChunk:fgQ,addChunk:xgQ,getFinalChunk:bgQ,finalize:az};Object.assign(UI,{on:ugQ,finished:dgQ});var GBA=({error:A,stream:Q,readableObjectMode:B,lines:Y,encoding:J,fdNumber:C})=>{if(!(A instanceof oX))throw A;if(C==="all")return A;let X=cgQ(B,Y,J);throw A.maxBufferInfo={fdNumber:C,unit:X},Q.destroy(),A},cgQ=(A,Q,B)=>{if(A)return"objects";if(Q)return"lines";if(B==="buffer")return"bytes";return"characters"},WBA=(A,Q,B)=>{if(Q.length!==B)return;let Y=new oX;throw Y.maxBufferInfo={fdNumber:"ipc"},Y},FBA=(A,Q)=>{let{streamName:B,threshold:Y,unit:J}=lgQ(A,Q);return`Command's ${B} was larger than ${Y} ${J}`},lgQ=(A,Q)=>{if(A?.maxBufferInfo===void 0)return{streamName:"output",threshold:Q[1],unit:"bytes"};let{maxBufferInfo:{fdNumber:B,unit:Y}}=A;delete A.maxBufferInfo;let J=aX(Q,B);if(B==="ipc")return{streamName:"IPC output",threshold:J,unit:"messages"};return{streamName:Dz(B),threshold:J,unit:Y}},ZBA=(A,Q,B)=>A?.code==="ENOBUFS"&&Q!==null&&Q.some((Y)=>Y!==null&&Y.length>Y2(B)),$BA=(A,Q,B)=>{if(!Q)return A;let Y=Y2(B);return A.length>Y?A.slice(0,Y):A},Y2=([,A])=>A;var EBA=({stdio:A,all:Q,ipcOutput:B,originalError:Y,signal:J,signalDescription:C,exitCode:X,escapedCommand:G,timedOut:W,isCanceled:F,isGracefullyCanceled:Z,isMaxBuffer:U,isForcefullyTerminated:$,forceKillAfterDelay:E,killSignal:K,maxBuffer:I,timeout:V,cwd:H})=>{let D=Y?.code,L=igQ({originalError:Y,timedOut:W,timeout:V,isMaxBuffer:U,maxBuffer:I,errorCode:D,signal:J,signalDescription:C,exitCode:X,isCanceled:F,isGracefullyCanceled:Z,isForcefullyTerminated:$,forceKillAfterDelay:E,killSignal:K}),z=sgQ(Y,H),M=z===void 0?"":` +${z}`,N=`${L}: ${G}${M}`,q=Q===void 0?[A[2],A[1]]:[Q],w=[N,...q,...A.slice(3),B.map((P)=>rgQ(P)).join(` +`)].map((P)=>WI(S4(agQ(P)))).filter(Boolean).join(` -`);return{originalMessage:z,shortMessage:N,message:w}},pyQ=({originalError:A,timedOut:Q,timeout:B,isMaxBuffer:Y,maxBuffer:J,errorCode:C,signal:X,signalDescription:G,exitCode:F,isCanceled:W,isGracefullyCanceled:Z,isForcefullyTerminated:U,forceKillAfterDelay:$,killSignal:E})=>{let K=iyQ(U,$);if(Q)return`Command timed out after ${B} milliseconds${K}`;if(Z){if(X===void 0)return`Command was gracefully canceled with exit code ${F}`;return U?`Command was gracefully canceled${K}`:`Command was gracefully canceled with ${X} (${G})`}if(W)return`Command was canceled${K}`;if(Y)return`${MQA(A,J)}${K}`;if(C!==void 0)return`Command failed with ${C}${K}`;if(U)return`Command was killed with ${E} (${$z(E)})${K}`;if(X!==void 0)return`Command was killed with ${X} (${G})`;if(F!==void 0)return`Command failed with exit code ${F}`;return"Command failed"},iyQ=(A,Q)=>A?` and was forcefully terminated after ${Q} milliseconds`:"",nyQ=(A,Q)=>{if(A instanceof D1)return;let B=QAA(A)?A.originalMessage:String(A?.message??A),Y=aV(YQA(B,Q));return Y===""?void 0:Y},syQ=(A)=>typeof A==="string"?A:lyQ(A),ryQ=(A)=>Array.isArray(A)?A.map((Q)=>q4(wQA(Q))).filter(Boolean).join(` -`):wQA(A),wQA=(A)=>{if(typeof A==="string")return A;if(RY(A))return nM(A);return""};var hz=({command:A,escapedCommand:Q,stdio:B,all:Y,ipcOutput:J,options:{cwd:C},startTime:X})=>OQA({command:A,escapedCommand:Q,cwd:C,durationMs:o_(X),failed:!1,timedOut:!1,isCanceled:!1,isGracefullyCanceled:!1,isTerminated:!1,isMaxBuffer:!1,isForcefullyTerminated:!1,exitCode:0,stdout:B[1],stderr:B[2],all:Y,stdio:B,ipcOutput:J,pipedFrom:[]}),z4=({error:A,command:Q,escapedCommand:B,fileDescriptors:Y,options:J,startTime:C,isSync:X})=>BI({error:A,command:Q,escapedCommand:B,startTime:C,timedOut:!1,isCanceled:!1,isGracefullyCanceled:!1,isMaxBuffer:!1,isForcefullyTerminated:!1,stdio:Array.from({length:Y.length}),ipcOutput:[],options:J,isSync:X}),BI=({error:A,command:Q,escapedCommand:B,startTime:Y,timedOut:J,isCanceled:C,isGracefullyCanceled:X,isMaxBuffer:G,isForcefullyTerminated:F,exitCode:W,signal:Z,stdio:U,all:$,ipcOutput:E,options:{timeoutDuration:K,timeout:I=K,forceKillAfterDelay:V,killSignal:H,cwd:D,maxBuffer:L},isSync:z})=>{let{exitCode:M,signal:N,signalDescription:q}=oyQ(W,Z),{originalMessage:w,shortMessage:P,message:_}=jQA({stdio:U,all:$,ipcOutput:E,originalError:A,signal:N,signalDescription:q,exitCode:M,escapedCommand:B,timedOut:J,isCanceled:C,isGracefullyCanceled:X,isMaxBuffer:G,isForcefullyTerminated:F,forceKillAfterDelay:V,killSignal:H,maxBuffer:L,timeout:I,cwd:D}),O=ee(A,_,z);return Object.assign(O,ayQ({error:O,command:Q,escapedCommand:B,startTime:Y,timedOut:J,isCanceled:C,isGracefullyCanceled:X,isMaxBuffer:G,isForcefullyTerminated:F,exitCode:M,signal:N,signalDescription:q,stdio:U,all:$,ipcOutput:E,cwd:D,originalMessage:w,shortMessage:P})),O},ayQ=({error:A,command:Q,escapedCommand:B,startTime:Y,timedOut:J,isCanceled:C,isGracefullyCanceled:X,isMaxBuffer:G,isForcefullyTerminated:F,exitCode:W,signal:Z,signalDescription:U,stdio:$,all:E,ipcOutput:K,cwd:I,originalMessage:V,shortMessage:H})=>OQA({shortMessage:H,originalMessage:V,command:Q,escapedCommand:B,cwd:I,durationMs:o_(Y),failed:!0,timedOut:J,isCanceled:C,isGracefullyCanceled:X,isTerminated:Z!==void 0,isMaxBuffer:G,isForcefullyTerminated:F,exitCode:W,signal:Z,signalDescription:U,code:A.cause?.code,stdout:$[1],stderr:$[2],all:E,stdio:$,ipcOutput:K,pipedFrom:[]}),OQA=(A)=>Object.fromEntries(Object.entries(A).filter(([,Q])=>Q!==void 0)),oyQ=(A,Q)=>{let B=A===null?void 0:A,Y=Q===null?void 0:Q,J=Y===void 0?void 0:$z(Q);return{exitCode:B,signal:Y,signalDescription:J}};var PQA=(A)=>Number.isFinite(A)?A:0;function tyQ(A){return{days:Math.trunc(A/86400000),hours:Math.trunc(A/3600000%24),minutes:Math.trunc(A/60000%60),seconds:Math.trunc(A/1000%60),milliseconds:Math.trunc(A%1000),microseconds:Math.trunc(PQA(A*1000)%1000),nanoseconds:Math.trunc(PQA(A*1e6)%1000)}}function eyQ(A){return{days:A/86400000n,hours:A/3600000n%24n,minutes:A/60000n%60n,seconds:A/1000n%60n,milliseconds:A%1000n,microseconds:0n,nanoseconds:0n}}function zv(A){switch(typeof A){case"number":{if(Number.isFinite(A))return tyQ(A);break}case"bigint":return eyQ(A)}throw TypeError("Expected a finite number or bigint")}var AhQ=(A)=>A===0||A===0n,QhQ=(A,Q)=>Q===1||Q===1n?A:`${A}s`,BhQ=0.0000001,YhQ=24n*60n*60n*1000n;function Rv(A,Q){let B=typeof A==="bigint";if(!B&&!Number.isFinite(A))throw TypeError("Expected a finite number or bigint");Q={...Q};let Y=A<0?"-":"";if(A=A<0?-A:A,Q.colonNotation)Q.compact=!1,Q.formatSubMilliseconds=!1,Q.separateMilliseconds=!1,Q.verbose=!1;if(Q.compact)Q.unitCount=1,Q.secondsDecimalDigits=0,Q.millisecondsDecimalDigits=0;let J=[],C=(Z,U)=>{let $=Math.floor(Z*10**U+BhQ);return(Math.round($)/10**U).toFixed(U)},X=(Z,U,$,E)=>{if((J.length===0||!Q.colonNotation)&&AhQ(Z)&&!(Q.colonNotation&&$==="m"))return;if(E??=String(Z),Q.colonNotation){let K=E.includes(".")?E.split(".")[0].length:E.length,I=J.length>0?2:1;E="0".repeat(Math.max(0,I-K))+E}else E+=Q.verbose?" "+QhQ(U,Z):$;J.push(E)},G=zv(A),F=BigInt(G.days);if(Q.hideYearAndDays)X(BigInt(F)*24n+BigInt(G.hours),"hour","h");else{if(Q.hideYear)X(F,"day","d");else X(F/365n,"year","y"),X(F%365n,"day","d");X(Number(G.hours),"hour","h")}if(X(Number(G.minutes),"minute","m"),!Q.hideSeconds)if(Q.separateMilliseconds||Q.formatSubMilliseconds||!Q.colonNotation&&A<1000){let Z=Number(G.seconds),U=Number(G.milliseconds),$=Number(G.microseconds),E=Number(G.nanoseconds);if(X(Z,"second","s"),Q.formatSubMilliseconds)X(U,"millisecond","ms"),X($,"microsecond","µs"),X(E,"nanosecond","ns");else{let K=U+$/1000+E/1e6,I=typeof Q.millisecondsDecimalDigits==="number"?Q.millisecondsDecimalDigits:0,V=K>=1?Math.round(K):Math.ceil(K),H=I?K.toFixed(I):V;X(Number.parseFloat(H),"millisecond","ms",H)}}else{let Z=(B?Number(A%YhQ):A)/1000%60,U=typeof Q.secondsDecimalDigits==="number"?Q.secondsDecimalDigits:1,$=C(Z,U),E=Q.keepDecimalsOnWholeSeconds?$:$.replace(/\.0+$/,"");X(Number.parseFloat(E),"second","s",E)}if(J.length===0)return Y+"0"+(Q.verbose?" milliseconds":"ms");let W=Q.colonNotation?":":" ";if(typeof Q.unitCount==="number")J=J.slice(0,Math.max(Q.unitCount,1));return Y+J.join(W)}var TQA=(A,Q)=>{if(A.failed)H1({type:"error",verboseMessage:A.shortMessage,verboseInfo:Q,result:A})};var SQA=(A,Q)=>{if(!K4(Q))return;TQA(A,Q),JhQ(A,Q)},JhQ=(A,Q)=>{let B=`(done in ${Rv(A.durationMs)})`;H1({type:"duration",verboseMessage:B,verboseInfo:Q,result:A})};var R4=(A,Q,{reject:B})=>{if(SQA(A,Q),A.failed&&B)throw A;return A};import{readFileSync as YBA}from"node:fs";var vQA=(A,Q)=>{if(MW(A))return"asyncGenerator";if(gQA(A))return"generator";if(gz(A))return"fileUrl";if(WhQ(A))return"filePath";if(UhQ(A))return"webStream";if(KC(A,{checkOpen:!1}))return"native";if(RY(A))return"uint8Array";if(EhQ(A))return"asyncIterable";if(KhQ(A))return"iterable";if(Ov(A))return yQA({transform:A},Q);if(FhQ(A))return ChQ(A,Q);return"native"},ChQ=(A,Q)=>{if(Lv(A.transform,{checkOpen:!1}))return XhQ(A,Q);if(Ov(A.transform))return yQA(A,Q);return GhQ(A,Q)},XhQ=(A,Q)=>{return hQA(A,Q,"Duplex stream"),"duplex"},yQA=(A,Q)=>{return hQA(A,Q,"web TransformStream"),"webTransform"},hQA=({final:A,binary:Q,objectMode:B},Y,J)=>{kQA(A,`${Y}.final`,J),kQA(Q,`${Y}.binary`,J),wv(B,`${Y}.objectMode`)},kQA=(A,Q,B)=>{if(A!==void 0)throw TypeError(`The \`${Q}\` option can only be defined when using a generator, not a ${B}.`)},GhQ=({transform:A,final:Q,binary:B,objectMode:Y},J)=>{if(A!==void 0&&!_QA(A))throw TypeError(`The \`${J}.transform\` option must be a generator, a Duplex stream or a web TransformStream.`);if(Lv(Q,{checkOpen:!1}))throw TypeError(`The \`${J}.final\` option must not be a Duplex stream.`);if(Ov(Q))throw TypeError(`The \`${J}.final\` option must not be a web TransformStream.`);if(Q!==void 0&&!_QA(Q))throw TypeError(`The \`${J}.final\` option must be a generator.`);return wv(B,`${J}.binary`),wv(Y,`${J}.objectMode`),MW(A)||MW(Q)?"asyncGenerator":"generator"},wv=(A,Q)=>{if(A!==void 0&&typeof A!=="boolean")throw TypeError(`The \`${Q}\` option must use a boolean.`)},_QA=(A)=>MW(A)||gQA(A),MW=(A)=>Object.prototype.toString.call(A)==="[object AsyncGeneratorFunction]",gQA=(A)=>Object.prototype.toString.call(A)==="[object GeneratorFunction]",FhQ=(A)=>BY(A)&&(A.transform!==void 0||A.final!==void 0),gz=(A)=>Object.prototype.toString.call(A)==="[object URL]",xQA=(A)=>gz(A)&&A.protocol!=="file:",WhQ=(A)=>BY(A)&&Object.keys(A).length>0&&Object.keys(A).every((Q)=>ZhQ.has(Q))&&jv(A.file),ZhQ=new Set(["file","append"]),jv=(A)=>typeof A==="string",fQA=(A,Q)=>A==="native"&&typeof Q==="string"&&!$hQ.has(Q),$hQ=new Set(["ipc","ignore","inherit","overlapped","pipe"]),bQA=(A)=>Object.prototype.toString.call(A)==="[object ReadableStream]",xz=(A)=>Object.prototype.toString.call(A)==="[object WritableStream]",UhQ=(A)=>bQA(A)||xz(A),Ov=(A)=>bQA(A?.readable)&&xz(A?.writable),EhQ=(A)=>mQA(A)&&typeof A[Symbol.asyncIterator]==="function",KhQ=(A)=>mQA(A)&&typeof A[Symbol.iterator]==="function",mQA=(A)=>typeof A==="object"&&A!==null,n8=new Set(["generator","asyncGenerator","duplex","webTransform"]),fz=new Set(["fileUrl","filePath","fileNumber"]),Pv=new Set(["fileUrl","filePath"]),uQA=new Set([...Pv,"webStream","nodeStream"]),dQA=new Set(["webTransform","duplex"]),lG={generator:"a generator",asyncGenerator:"an async generator",fileUrl:"a file URL",filePath:"a file path string",fileNumber:"a file descriptor number",webStream:"a web stream",nodeStream:"a Node.js stream",webTransform:"a web TransformStream",duplex:"a Duplex stream",native:"any value",iterable:"an iterable",asyncIterable:"an async iterable",string:"a string",uint8Array:"a Uint8Array"};var Tv=(A,Q,B,Y)=>Y==="output"?VhQ(A,Q,B):IhQ(A,Q,B),VhQ=(A,Q,B)=>{let Y=Q!==0&&B[Q-1].value.readableObjectMode;return{writableObjectMode:Y,readableObjectMode:A??Y}},IhQ=(A,Q,B)=>{let Y=Q===0?A===!0:B[Q-1].value.readableObjectMode,J=Q!==B.length-1&&(A??Y);return{writableObjectMode:Y,readableObjectMode:J}},cQA=(A,Q)=>{let B=A.findLast(({type:Y})=>n8.has(Y));if(B===void 0)return!1;return Q==="input"?B.value.writableObjectMode:B.value.readableObjectMode};var lQA=(A,Q,B,Y)=>[...A.filter(({type:J})=>!n8.has(J)),...HhQ(A,Q,B,Y)],HhQ=(A,Q,B,{encoding:Y})=>{let J=A.filter(({type:X})=>n8.has(X)),C=Array.from({length:J.length});for(let[X,G]of Object.entries(J))C[X]=DhQ({stdioItem:G,index:Number(X),newTransforms:C,optionName:Q,direction:B,encoding:Y});return MhQ(C,B)},DhQ=({stdioItem:A,stdioItem:{type:Q},index:B,newTransforms:Y,optionName:J,direction:C,encoding:X})=>{if(Q==="duplex")return NhQ({stdioItem:A,optionName:J});if(Q==="webTransform")return LhQ({stdioItem:A,index:B,newTransforms:Y,direction:C});return qhQ({stdioItem:A,index:B,newTransforms:Y,direction:C,encoding:X})},NhQ=({stdioItem:A,stdioItem:{value:{transform:Q,transform:{writableObjectMode:B,readableObjectMode:Y},objectMode:J=Y}},optionName:C})=>{if(J&&!Y)throw TypeError(`The \`${C}.objectMode\` option can only be \`true\` if \`new Duplex({objectMode: true})\` is used.`);if(!J&&Y)throw TypeError(`The \`${C}.objectMode\` option cannot be \`false\` if \`new Duplex({objectMode: true})\` is used.`);return{...A,value:{transform:Q,writableObjectMode:B,readableObjectMode:Y}}},LhQ=({stdioItem:A,stdioItem:{value:Q},index:B,newTransforms:Y,direction:J})=>{let{transform:C,objectMode:X}=BY(Q)?Q:{transform:Q},{writableObjectMode:G,readableObjectMode:F}=Tv(X,B,Y,J);return{...A,value:{transform:C,writableObjectMode:G,readableObjectMode:F}}},qhQ=({stdioItem:A,stdioItem:{value:Q},index:B,newTransforms:Y,direction:J,encoding:C})=>{let{transform:X,final:G,binary:F=!1,preserveNewlines:W=!1,objectMode:Z}=BY(Q)?Q:{transform:Q},U=F||A8.has(C),{writableObjectMode:$,readableObjectMode:E}=Tv(Z,B,Y,J);return{...A,value:{transform:X,final:G,binary:U,preserveNewlines:W,writableObjectMode:$,readableObjectMode:E}}},MhQ=(A,Q)=>Q==="input"?A.reverse():A;import Sv from"node:process";var pQA=(A,Q,B)=>{let Y=A.map((J)=>zhQ(J,Q));if(Y.includes("input")&&Y.includes("output"))throw TypeError(`The \`${B}\` option must not be an array of both readable and writable values.`);return Y.find(Boolean)??jhQ},zhQ=({type:A,value:Q},B)=>RhQ[B]??iQA[A](Q),RhQ=["input","output","output"],w4=()=>{return},kv=()=>"input",iQA={generator:w4,asyncGenerator:w4,fileUrl:w4,filePath:w4,iterable:kv,asyncIterable:kv,uint8Array:kv,webStream:(A)=>xz(A)?"output":"input",nodeStream(A){if(!qW(A,{checkOpen:!1}))return"output";return Nv(A,{checkOpen:!1})?void 0:"input"},webTransform:w4,duplex:w4,native(A){let Q=whQ(A);if(Q!==void 0)return Q;if(KC(A,{checkOpen:!1}))return iQA.nodeStream(A)}},whQ=(A)=>{if([0,Sv.stdin].includes(A))return"input";if([1,2,Sv.stdout,Sv.stderr].includes(A))return"output"},jhQ="output";var nQA=(A,Q)=>Q&&!A.includes("ipc")?[...A,"ipc"]:A;var sQA=({stdio:A,ipc:Q,buffer:B,...Y},J,C)=>{let X=OhQ(A,Y).map((G,F)=>rQA(G,F));return C?ThQ(X,B,J):nQA(X,Q)},OhQ=(A,Q)=>{if(A===void 0)return i8.map((Y)=>Q[Y]);if(PhQ(Q))throw Error(`It's not possible to provide \`stdio\` in combination with one of ${i8.map((Y)=>`\`${Y}\``).join(", ")}`);if(typeof A==="string")return[A,A,A];if(!Array.isArray(A))throw TypeError(`Expected \`stdio\` to be of type \`string\` or \`Array\`, got \`${typeof A}\``);let B=Math.max(A.length,i8.length);return Array.from({length:B},(Y,J)=>A[J])},PhQ=(A)=>i8.some((Q)=>A[Q]!==void 0),rQA=(A,Q)=>{if(Array.isArray(A))return A.map((B)=>rQA(B,Q));if(A===null||A===void 0)return Q>=i8.length?"ignore":"pipe";return A},ThQ=(A,Q,B)=>A.map((Y,J)=>!Q[J]&&J!==0&&!V4(B,J)&&ShQ(Y)?"ignore":Y),ShQ=(A)=>A==="pipe"||Array.isArray(A)&&A.every((Q)=>Q==="pipe");import{readFileSync as khQ}from"node:fs";import _hQ from"node:tty";var oQA=({stdioItem:A,stdioItem:{type:Q},isStdioArray:B,fdNumber:Y,direction:J,isSync:C})=>{if(!B||Q!=="native")return A;return C?vhQ({stdioItem:A,fdNumber:Y,direction:J}):ghQ({stdioItem:A,fdNumber:Y})},vhQ=({stdioItem:A,stdioItem:{value:Q,optionName:B},fdNumber:Y,direction:J})=>{let C=yhQ({value:Q,optionName:B,fdNumber:Y,direction:J});if(C!==void 0)return C;if(KC(Q,{checkOpen:!1}))throw TypeError(`The \`${B}: Stream\` option cannot both be an array and include a stream with synchronous methods.`);return A},yhQ=({value:A,optionName:Q,fdNumber:B,direction:Y})=>{let J=hhQ(A,B);if(J===void 0)return;if(Y==="output")return{type:"fileNumber",value:J,optionName:Q};if(_hQ.isatty(J))throw TypeError(`The \`${Q}: ${Kz(A)}\` option is invalid: it cannot be a TTY with synchronous methods.`);return{type:"uint8Array",value:m6(khQ(J)),optionName:Q}},hhQ=(A,Q)=>{if(A==="inherit")return Q;if(typeof A==="number")return A;let B=sM.indexOf(A);if(B!==-1)return B},ghQ=({stdioItem:A,stdioItem:{value:Q,optionName:B},fdNumber:Y})=>{if(Q==="inherit")return{type:"nodeStream",value:aQA(Y,Q,B),optionName:B};if(typeof Q==="number")return{type:"nodeStream",value:aQA(Q,Q,B),optionName:B};if(KC(Q,{checkOpen:!1}))return{type:"nodeStream",value:Q,optionName:B};return A},aQA=(A,Q,B)=>{let Y=sM[A];if(Y===void 0)throw TypeError(`The \`${B}: ${Q}\` option is invalid: no such standard stream.`);return Y};var tQA=({input:A,inputFile:Q},B)=>B===0?[...xhQ(A),...bhQ(Q)]:[],xhQ=(A)=>A===void 0?[]:[{type:fhQ(A),value:A,optionName:"input"}],fhQ=(A)=>{if(qW(A,{checkOpen:!1}))return"nodeStream";if(typeof A==="string")return"string";if(RY(A))return"uint8Array";throw Error("The `input` option must be a string, a Uint8Array or a Node.js Readable stream.")},bhQ=(A)=>A===void 0?[]:[{...mhQ(A),optionName:"inputFile"}],mhQ=(A)=>{if(gz(A))return{type:"fileUrl",value:A};if(jv(A))return{type:"filePath",value:{file:A}};throw Error("The `inputFile` option must be a file path string or a file URL.")};var eQA=(A)=>A.filter((Q,B)=>A.every((Y,J)=>Q.value!==Y.value||B>=J||Q.type==="generator"||Q.type==="asyncGenerator")),ABA=({stdioItem:{type:A,value:Q,optionName:B},direction:Y,fileDescriptors:J,isSync:C})=>{let X=uhQ(J,A);if(X.length===0)return;if(C){dhQ({otherStdioItems:X,type:A,value:Q,optionName:B,direction:Y});return}if(uQA.has(A))return QBA({otherStdioItems:X,type:A,value:Q,optionName:B,direction:Y});if(dQA.has(A))lhQ({otherStdioItems:X,type:A,value:Q,optionName:B})},uhQ=(A,Q)=>A.flatMap(({direction:B,stdioItems:Y})=>Y.filter((J)=>J.type===Q).map((J)=>({...J,direction:B}))),dhQ=({otherStdioItems:A,type:Q,value:B,optionName:Y,direction:J})=>{if(Pv.has(Q))QBA({otherStdioItems:A,type:Q,value:B,optionName:Y,direction:J})},QBA=({otherStdioItems:A,type:Q,value:B,optionName:Y,direction:J})=>{let C=A.filter((G)=>chQ(G,B));if(C.length===0)return;let X=C.find((G)=>G.direction!==J);return BBA(X,Y,Q),J==="output"?C[0].stream:void 0},chQ=({type:A,value:Q},B)=>{if(A==="filePath")return Q.file===B.file;if(A==="fileUrl")return Q.href===B.href;return Q===B},lhQ=({otherStdioItems:A,type:Q,value:B,optionName:Y})=>{let J=A.find(({value:{transform:C}})=>C===B.transform);BBA(J,Y,Q)},BBA=(A,Q,B)=>{if(A!==void 0)throw TypeError(`The \`${A.optionName}\` and \`${Q}\` options must not target ${lG[B]} that is the same.`)};var bz=(A,Q,B,Y)=>{let C=sQA(Q,B,Y).map((G,F)=>phQ({stdioOption:G,fdNumber:F,options:Q,isSync:Y})),X=ehQ({initialFileDescriptors:C,addProperties:A,options:Q,isSync:Y});return Q.stdio=X.map(({stdioItems:G})=>BgQ(G)),X},phQ=({stdioOption:A,fdNumber:Q,options:B,isSync:Y})=>{let J=rM(Q),{stdioItems:C,isStdioArray:X}=ihQ({stdioOption:A,fdNumber:Q,options:B,optionName:J}),G=pQA(C,Q,J),F=C.map((U)=>oQA({stdioItem:U,isStdioArray:X,fdNumber:Q,direction:G,isSync:Y})),W=lQA(F,J,G,B),Z=cQA(W,G);return thQ(W,Z),{direction:G,objectMode:Z,stdioItems:W}},ihQ=({stdioOption:A,fdNumber:Q,options:B,optionName:Y})=>{let C=[...(Array.isArray(A)?A:[A]).map((F)=>nhQ(F,Y)),...tQA(B,Q)],X=eQA(C),G=X.length>1;return shQ(X,G,Y),ahQ(X),{stdioItems:X,isStdioArray:G}},nhQ=(A,Q)=>({type:vQA(A,Q),value:A,optionName:Q}),shQ=(A,Q,B)=>{if(A.length===0)throw TypeError(`The \`${B}\` option must not be an empty array.`);if(!Q)return;for(let{value:Y,optionName:J}of A)if(rhQ.has(Y))throw Error(`The \`${J}\` option must not include \`${Y}\`.`)},rhQ=new Set(["ignore","ipc"]),ahQ=(A)=>{for(let Q of A)ohQ(Q)},ohQ=({type:A,value:Q,optionName:B})=>{if(xQA(Q))throw TypeError(`The \`${B}: URL\` option must use the \`file:\` scheme. -For example, you can use the \`pathToFileURL()\` method of the \`url\` core module.`);if(fQA(A,Q))throw TypeError(`The \`${B}: { file: '...' }\` option must be used instead of \`${B}: '...'\`.`)},thQ=(A,Q)=>{if(!Q)return;let B=A.find(({type:Y})=>fz.has(Y));if(B!==void 0)throw TypeError(`The \`${B.optionName}\` option cannot use both files and transforms in objectMode.`)},ehQ=({initialFileDescriptors:A,addProperties:Q,options:B,isSync:Y})=>{let J=[];try{for(let C of A)J.push(AgQ({fileDescriptor:C,fileDescriptors:J,addProperties:Q,options:B,isSync:Y}));return J}catch(C){throw _v(J),C}},AgQ=({fileDescriptor:{direction:A,objectMode:Q,stdioItems:B},fileDescriptors:Y,addProperties:J,options:C,isSync:X})=>{let G=B.map((F)=>QgQ({stdioItem:F,addProperties:J,direction:A,options:C,fileDescriptors:Y,isSync:X}));return{direction:A,objectMode:Q,stdioItems:G}},QgQ=({stdioItem:A,addProperties:Q,direction:B,options:Y,fileDescriptors:J,isSync:C})=>{let X=ABA({stdioItem:A,direction:B,fileDescriptors:J,isSync:C});if(X!==void 0)return{...A,stream:X};return{...A,...Q[B][A.type](A,Y)}},_v=(A)=>{for(let{stdioItems:Q}of A)for(let{stream:B}of Q)if(B!==void 0&&!UC(B))B.destroy()},BgQ=(A)=>{if(A.length>1)return A.some(({value:Y})=>Y==="overlapped")?"overlapped":"pipe";let[{type:Q,value:B}]=A;return Q==="native"?B:"pipe"};var CBA=(A,Q)=>bz(JgQ,A,Q,!0),q1=({type:A,optionName:Q})=>{XBA(Q,lG[A])},YgQ=({optionName:A,value:Q})=>{if(Q==="ipc"||Q==="overlapped")XBA(A,`"${Q}"`);return{}},XBA=(A,Q)=>{throw TypeError(`The \`${A}\` option cannot be ${Q} with synchronous methods.`)},JBA={generator(){},asyncGenerator:q1,webStream:q1,nodeStream:q1,webTransform:q1,duplex:q1,asyncIterable:q1,native:YgQ},JgQ={input:{...JBA,fileUrl:({value:A})=>({contents:[m6(YBA(A))]}),filePath:({value:{file:A}})=>({contents:[m6(YBA(A))]}),fileNumber:q1,iterable:({value:A})=>({contents:[...A]}),string:({value:A})=>({contents:[A]}),uint8Array:({value:A})=>({contents:[A]})},output:{...JBA,fileUrl:({value:A})=>({path:A}),filePath:({value:{file:A,append:Q}})=>({path:A,append:Q}),fileNumber:({value:A})=>({path:A}),iterable:q1,string:q1,uint8Array:q1}};var l6=(A,{stripFinalNewline:Q},B)=>vv(Q,B)&&A!==void 0&&!Array.isArray(A)?q4(A):A,vv=(A,Q)=>Q==="all"?A[1]||A[2]:A[Q];import{Transform as wgQ,getDefaultHighWaterMark as HBA}from"node:stream";var mz=(A,Q,B,Y)=>A||B?void 0:FBA(Q,Y),hv=(A,Q,B)=>B?A.flatMap((Y)=>GBA(Y,Q)):GBA(A,Q),GBA=(A,Q)=>{let{transform:B,final:Y}=FBA(Q,{});return[...B(A),...Y()]},FBA=(A,Q)=>{return Q.previousChunks="",{transform:CgQ.bind(void 0,Q,A),final:GgQ.bind(void 0,Q)}},CgQ=function*(A,Q,B){if(typeof B!=="string"){yield B;return}let{previousChunks:Y}=A,J=-1;for(let C=0;C0)G=yv(Y,G),Y="";yield G,J=C}if(J!==B.length-1)Y=yv(Y,B.slice(J+1));A.previousChunks=Y},XgQ=(A,Q,B,Y)=>{if(B)return 0;return Y.isWindowsNewline=Q!==0&&A[Q-1]==="\r",Y.isWindowsNewline?2:1},GgQ=function*({previousChunks:A}){if(A.length>0)yield A},WBA=({binary:A,preserveNewlines:Q,readableObjectMode:B,state:Y})=>A||Q||B?void 0:{transform:FgQ.bind(void 0,Y)},FgQ=function*({isWindowsNewline:A=!1},Q){let{unixNewline:B,windowsNewline:Y,LF:J,concatBytes:C}=typeof Q==="string"?WgQ:$gQ;if(Q.at(-1)===J){yield Q;return}yield C(Q,A?Y:B)},yv=(A,Q)=>`${A}${Q}`,WgQ={windowsNewline:`\r +`);return{originalMessage:z,shortMessage:N,message:w}},igQ=({originalError:A,timedOut:Q,timeout:B,isMaxBuffer:Y,maxBuffer:J,errorCode:C,signal:X,signalDescription:G,exitCode:W,isCanceled:F,isGracefullyCanceled:Z,isForcefullyTerminated:U,forceKillAfterDelay:$,killSignal:E})=>{let K=ngQ(U,$);if(Q)return`Command timed out after ${B} milliseconds${K}`;if(Z){if(X===void 0)return`Command was gracefully canceled with exit code ${W}`;return U?`Command was gracefully canceled${K}`:`Command was gracefully canceled with ${X} (${G})`}if(F)return`Command was canceled${K}`;if(Y)return`${FBA(A,J)}${K}`;if(C!==void 0)return`Command failed with ${C}${K}`;if(U)return`Command was killed with ${E} (${yz(E)})${K}`;if(X!==void 0)return`Command was killed with ${X} (${G})`;if(W!==void 0)return`Command failed with exit code ${W}`;return"Command failed"},ngQ=(A,Q)=>A?` and was forcefully terminated after ${Q} milliseconds`:"",sgQ=(A,Q)=>{if(A instanceof O1)return;let B=dAA(A)?A.originalMessage:String(A?.message??A),Y=WI(lQA(B,Q));return Y===""?void 0:Y},rgQ=(A)=>typeof A==="string"?A:pgQ(A),agQ=(A)=>Array.isArray(A)?A.map((Q)=>S4(UBA(Q))).filter(Boolean).join(` +`):UBA(A),UBA=(A)=>{if(typeof A==="string")return A;if(TY(A))return Iz(A);return""};var J2=({command:A,escapedCommand:Q,stdio:B,all:Y,ipcOutput:J,options:{cwd:C},startTime:X})=>KBA({command:A,escapedCommand:Q,cwd:C,durationMs:jv(X),failed:!1,timedOut:!1,isCanceled:!1,isGracefullyCanceled:!1,isTerminated:!1,isMaxBuffer:!1,isForcefullyTerminated:!1,exitCode:0,stdout:B[1],stderr:B[2],all:Y,stdio:B,ipcOutput:J,pipedFrom:[]}),_4=({error:A,command:Q,escapedCommand:B,fileDescriptors:Y,options:J,startTime:C,isSync:X})=>KI({error:A,command:Q,escapedCommand:B,startTime:C,timedOut:!1,isCanceled:!1,isGracefullyCanceled:!1,isMaxBuffer:!1,isForcefullyTerminated:!1,stdio:Array.from({length:Y.length}),ipcOutput:[],options:J,isSync:X}),KI=({error:A,command:Q,escapedCommand:B,startTime:Y,timedOut:J,isCanceled:C,isGracefullyCanceled:X,isMaxBuffer:G,isForcefullyTerminated:W,exitCode:F,signal:Z,stdio:U,all:$,ipcOutput:E,options:{timeoutDuration:K,timeout:I=K,forceKillAfterDelay:V,killSignal:H,cwd:D,maxBuffer:L},isSync:z})=>{let{exitCode:M,signal:N,signalDescription:q}=tgQ(F,Z),{originalMessage:w,shortMessage:P,message:_}=EBA({stdio:U,all:$,ipcOutput:E,originalError:A,signal:N,signalDescription:q,exitCode:M,escapedCommand:B,timedOut:J,isCanceled:C,isGracefullyCanceled:X,isMaxBuffer:G,isForcefullyTerminated:W,forceKillAfterDelay:V,killSignal:H,maxBuffer:L,timeout:I,cwd:D}),j=mAA(A,_,z);return Object.assign(j,ogQ({error:j,command:Q,escapedCommand:B,startTime:Y,timedOut:J,isCanceled:C,isGracefullyCanceled:X,isMaxBuffer:G,isForcefullyTerminated:W,exitCode:M,signal:N,signalDescription:q,stdio:U,all:$,ipcOutput:E,cwd:D,originalMessage:w,shortMessage:P})),j},ogQ=({error:A,command:Q,escapedCommand:B,startTime:Y,timedOut:J,isCanceled:C,isGracefullyCanceled:X,isMaxBuffer:G,isForcefullyTerminated:W,exitCode:F,signal:Z,signalDescription:U,stdio:$,all:E,ipcOutput:K,cwd:I,originalMessage:V,shortMessage:H})=>KBA({shortMessage:H,originalMessage:V,command:Q,escapedCommand:B,cwd:I,durationMs:jv(Y),failed:!0,timedOut:J,isCanceled:C,isGracefullyCanceled:X,isTerminated:Z!==void 0,isMaxBuffer:G,isForcefullyTerminated:W,exitCode:F,signal:Z,signalDescription:U,code:A.cause?.code,stdout:$[1],stderr:$[2],all:E,stdio:$,ipcOutput:K,pipedFrom:[]}),KBA=(A)=>Object.fromEntries(Object.entries(A).filter(([,Q])=>Q!==void 0)),tgQ=(A,Q)=>{let B=A===null?void 0:A,Y=Q===null?void 0:Q,J=Y===void 0?void 0:yz(Q);return{exitCode:B,signal:Y,signalDescription:J}};var VBA=(A)=>Number.isFinite(A)?A:0;function egQ(A){return{days:Math.trunc(A/86400000),hours:Math.trunc(A/3600000%24),minutes:Math.trunc(A/60000%60),seconds:Math.trunc(A/1000%60),milliseconds:Math.trunc(A%1000),microseconds:Math.trunc(VBA(A*1000)%1000),nanoseconds:Math.trunc(VBA(A*1e6)%1000)}}function AhQ(A){return{days:A/86400000n,hours:A/3600000n%24n,minutes:A/60000n%60n,seconds:A/1000n%60n,milliseconds:A%1000n,microseconds:0n,nanoseconds:0n}}function tv(A){switch(typeof A){case"number":{if(Number.isFinite(A))return egQ(A);break}case"bigint":return AhQ(A)}throw TypeError("Expected a finite number or bigint")}var QhQ=(A)=>A===0||A===0n,BhQ=(A,Q)=>Q===1||Q===1n?A:`${A}s`,YhQ=0.0000001,JhQ=24n*60n*60n*1000n;function ev(A,Q){let B=typeof A==="bigint";if(!B&&!Number.isFinite(A))throw TypeError("Expected a finite number or bigint");Q={...Q};let Y=A<0?"-":"";if(A=A<0?-A:A,Q.colonNotation)Q.compact=!1,Q.formatSubMilliseconds=!1,Q.separateMilliseconds=!1,Q.verbose=!1;if(Q.compact)Q.unitCount=1,Q.secondsDecimalDigits=0,Q.millisecondsDecimalDigits=0;let J=[],C=(Z,U)=>{let $=Math.floor(Z*10**U+YhQ);return(Math.round($)/10**U).toFixed(U)},X=(Z,U,$,E)=>{if((J.length===0||!Q.colonNotation)&&QhQ(Z)&&!(Q.colonNotation&&$==="m"))return;if(E??=String(Z),Q.colonNotation){let K=E.includes(".")?E.split(".")[0].length:E.length,I=J.length>0?2:1;E="0".repeat(Math.max(0,I-K))+E}else E+=Q.verbose?" "+BhQ(U,Z):$;J.push(E)},G=tv(A),W=BigInt(G.days);if(Q.hideYearAndDays)X(BigInt(W)*24n+BigInt(G.hours),"hour","h");else{if(Q.hideYear)X(W,"day","d");else X(W/365n,"year","y"),X(W%365n,"day","d");X(Number(G.hours),"hour","h")}if(X(Number(G.minutes),"minute","m"),!Q.hideSeconds)if(Q.separateMilliseconds||Q.formatSubMilliseconds||!Q.colonNotation&&A<1000){let Z=Number(G.seconds),U=Number(G.milliseconds),$=Number(G.microseconds),E=Number(G.nanoseconds);if(X(Z,"second","s"),Q.formatSubMilliseconds)X(U,"millisecond","ms"),X($,"microsecond","µs"),X(E,"nanosecond","ns");else{let K=U+$/1000+E/1e6,I=typeof Q.millisecondsDecimalDigits==="number"?Q.millisecondsDecimalDigits:0,V=K>=1?Math.round(K):Math.ceil(K),H=I?K.toFixed(I):V;X(Number.parseFloat(H),"millisecond","ms",H)}}else{let Z=(B?Number(A%JhQ):A)/1000%60,U=typeof Q.secondsDecimalDigits==="number"?Q.secondsDecimalDigits:1,$=C(Z,U),E=Q.keepDecimalsOnWholeSeconds?$:$.replace(/\.0+$/,"");X(Number.parseFloat(E),"second","s",E)}if(J.length===0)return Y+"0"+(Q.verbose?" milliseconds":"ms");let F=Q.colonNotation?":":" ";if(typeof Q.unitCount==="number")J=J.slice(0,Math.max(Q.unitCount,1));return Y+J.join(F)}var IBA=(A,Q)=>{if(A.failed)j1({type:"error",verboseMessage:A.shortMessage,verboseInfo:Q,result:A})};var HBA=(A,Q)=>{if(!z4(Q))return;IBA(A,Q),ChQ(A,Q)},ChQ=(A,Q)=>{let B=`(done in ${ev(A.durationMs)})`;j1({type:"duration",verboseMessage:B,verboseInfo:Q,result:A})};var v4=(A,Q,{reject:B})=>{if(HBA(A,Q),A.failed&&B)throw A;return A};import{readFileSync as lBA}from"node:fs";var LBA=(A,Q)=>{if(SF(A))return"asyncGenerator";if(zBA(A))return"generator";if(C2(A))return"fileUrl";if(ZhQ(A))return"filePath";if(EhQ(A))return"webStream";if(zC(A,{checkOpen:!1}))return"native";if(TY(A))return"uint8Array";if(KhQ(A))return"asyncIterable";if(VhQ(A))return"iterable";if(By(A))return qBA({transform:A},Q);if(FhQ(A))return XhQ(A,Q);return"native"},XhQ=(A,Q)=>{if(rv(A.transform,{checkOpen:!1}))return GhQ(A,Q);if(By(A.transform))return qBA(A,Q);return WhQ(A,Q)},GhQ=(A,Q)=>{return MBA(A,Q,"Duplex stream"),"duplex"},qBA=(A,Q)=>{return MBA(A,Q,"web TransformStream"),"webTransform"},MBA=({final:A,binary:Q,objectMode:B},Y,J)=>{DBA(A,`${Y}.final`,J),DBA(Q,`${Y}.binary`,J),Ay(B,`${Y}.objectMode`)},DBA=(A,Q,B)=>{if(A!==void 0)throw TypeError(`The \`${Q}\` option can only be defined when using a generator, not a ${B}.`)},WhQ=({transform:A,final:Q,binary:B,objectMode:Y},J)=>{if(A!==void 0&&!NBA(A))throw TypeError(`The \`${J}.transform\` option must be a generator, a Duplex stream or a web TransformStream.`);if(rv(Q,{checkOpen:!1}))throw TypeError(`The \`${J}.final\` option must not be a Duplex stream.`);if(By(Q))throw TypeError(`The \`${J}.final\` option must not be a web TransformStream.`);if(Q!==void 0&&!NBA(Q))throw TypeError(`The \`${J}.final\` option must be a generator.`);return Ay(B,`${J}.binary`),Ay(Y,`${J}.objectMode`),SF(A)||SF(Q)?"asyncGenerator":"generator"},Ay=(A,Q)=>{if(A!==void 0&&typeof A!=="boolean")throw TypeError(`The \`${Q}\` option must use a boolean.`)},NBA=(A)=>SF(A)||zBA(A),SF=(A)=>Object.prototype.toString.call(A)==="[object AsyncGeneratorFunction]",zBA=(A)=>Object.prototype.toString.call(A)==="[object GeneratorFunction]",FhQ=(A)=>CY(A)&&(A.transform!==void 0||A.final!==void 0),C2=(A)=>Object.prototype.toString.call(A)==="[object URL]",RBA=(A)=>C2(A)&&A.protocol!=="file:",ZhQ=(A)=>CY(A)&&Object.keys(A).length>0&&Object.keys(A).every((Q)=>$hQ.has(Q))&&Qy(A.file),$hQ=new Set(["file","append"]),Qy=(A)=>typeof A==="string",wBA=(A,Q)=>A==="native"&&typeof Q==="string"&&!UhQ.has(Q),UhQ=new Set(["ipc","ignore","inherit","overlapped","pipe"]),jBA=(A)=>Object.prototype.toString.call(A)==="[object ReadableStream]",X2=(A)=>Object.prototype.toString.call(A)==="[object WritableStream]",EhQ=(A)=>jBA(A)||X2(A),By=(A)=>jBA(A?.readable)&&X2(A?.writable),KhQ=(A)=>OBA(A)&&typeof A[Symbol.asyncIterator]==="function",VhQ=(A)=>OBA(A)&&typeof A[Symbol.iterator]==="function",OBA=(A)=>typeof A==="object"&&A!==null,B5=new Set(["generator","asyncGenerator","duplex","webTransform"]),G2=new Set(["fileUrl","filePath","fileNumber"]),Yy=new Set(["fileUrl","filePath"]),PBA=new Set([...Yy,"webStream","nodeStream"]),TBA=new Set(["webTransform","duplex"]),tG={generator:"a generator",asyncGenerator:"an async generator",fileUrl:"a file URL",filePath:"a file path string",fileNumber:"a file descriptor number",webStream:"a web stream",nodeStream:"a Node.js stream",webTransform:"a web TransformStream",duplex:"a Duplex stream",native:"any value",iterable:"an iterable",asyncIterable:"an async iterable",string:"a string",uint8Array:"a Uint8Array"};var Jy=(A,Q,B,Y)=>Y==="output"?IhQ(A,Q,B):HhQ(A,Q,B),IhQ=(A,Q,B)=>{let Y=Q!==0&&B[Q-1].value.readableObjectMode;return{writableObjectMode:Y,readableObjectMode:A??Y}},HhQ=(A,Q,B)=>{let Y=Q===0?A===!0:B[Q-1].value.readableObjectMode,J=Q!==B.length-1&&(A??Y);return{writableObjectMode:Y,readableObjectMode:J}},SBA=(A,Q)=>{let B=A.findLast(({type:Y})=>B5.has(Y));if(B===void 0)return!1;return Q==="input"?B.value.writableObjectMode:B.value.readableObjectMode};var kBA=(A,Q,B,Y)=>[...A.filter(({type:J})=>!B5.has(J)),...DhQ(A,Q,B,Y)],DhQ=(A,Q,B,{encoding:Y})=>{let J=A.filter(({type:X})=>B5.has(X)),C=Array.from({length:J.length});for(let[X,G]of Object.entries(J))C[X]=NhQ({stdioItem:G,index:Number(X),newTransforms:C,optionName:Q,direction:B,encoding:Y});return zhQ(C,B)},NhQ=({stdioItem:A,stdioItem:{type:Q},index:B,newTransforms:Y,optionName:J,direction:C,encoding:X})=>{if(Q==="duplex")return LhQ({stdioItem:A,optionName:J});if(Q==="webTransform")return qhQ({stdioItem:A,index:B,newTransforms:Y,direction:C});return MhQ({stdioItem:A,index:B,newTransforms:Y,direction:C,encoding:X})},LhQ=({stdioItem:A,stdioItem:{value:{transform:Q,transform:{writableObjectMode:B,readableObjectMode:Y},objectMode:J=Y}},optionName:C})=>{if(J&&!Y)throw TypeError(`The \`${C}.objectMode\` option can only be \`true\` if \`new Duplex({objectMode: true})\` is used.`);if(!J&&Y)throw TypeError(`The \`${C}.objectMode\` option cannot be \`false\` if \`new Duplex({objectMode: true})\` is used.`);return{...A,value:{transform:Q,writableObjectMode:B,readableObjectMode:Y}}},qhQ=({stdioItem:A,stdioItem:{value:Q},index:B,newTransforms:Y,direction:J})=>{let{transform:C,objectMode:X}=CY(Q)?Q:{transform:Q},{writableObjectMode:G,readableObjectMode:W}=Jy(X,B,Y,J);return{...A,value:{transform:C,writableObjectMode:G,readableObjectMode:W}}},MhQ=({stdioItem:A,stdioItem:{value:Q},index:B,newTransforms:Y,direction:J,encoding:C})=>{let{transform:X,final:G,binary:W=!1,preserveNewlines:F=!1,objectMode:Z}=CY(Q)?Q:{transform:Q},U=W||G8.has(C),{writableObjectMode:$,readableObjectMode:E}=Jy(Z,B,Y,J);return{...A,value:{transform:X,final:G,binary:U,preserveNewlines:F,writableObjectMode:$,readableObjectMode:E}}},zhQ=(A,Q)=>Q==="input"?A.reverse():A;import Cy from"node:process";var _BA=(A,Q,B)=>{let Y=A.map((J)=>RhQ(J,Q));if(Y.includes("input")&&Y.includes("output"))throw TypeError(`The \`${B}\` option must not be an array of both readable and writable values.`);return Y.find(Boolean)??OhQ},RhQ=({type:A,value:Q},B)=>whQ[B]??vBA[A](Q),whQ=["input","output","output"],y4=()=>{return},Xy=()=>"input",vBA={generator:y4,asyncGenerator:y4,fileUrl:y4,filePath:y4,iterable:Xy,asyncIterable:Xy,uint8Array:Xy,webStream:(A)=>X2(A)?"output":"input",nodeStream(A){if(!TF(A,{checkOpen:!1}))return"output";return sv(A,{checkOpen:!1})?void 0:"input"},webTransform:y4,duplex:y4,native(A){let Q=jhQ(A);if(Q!==void 0)return Q;if(zC(A,{checkOpen:!1}))return vBA.nodeStream(A)}},jhQ=(A)=>{if([0,Cy.stdin].includes(A))return"input";if([1,2,Cy.stdout,Cy.stderr].includes(A))return"output"},OhQ="output";var yBA=(A,Q)=>Q&&!A.includes("ipc")?[...A,"ipc"]:A;var gBA=({stdio:A,ipc:Q,buffer:B,...Y},J,C)=>{let X=PhQ(A,Y).map((G,W)=>hBA(G,W));return C?ShQ(X,B,J):yBA(X,Q)},PhQ=(A,Q)=>{if(A===void 0)return Q5.map((Y)=>Q[Y]);if(ThQ(Q))throw Error(`It's not possible to provide \`stdio\` in combination with one of ${Q5.map((Y)=>`\`${Y}\``).join(", ")}`);if(typeof A==="string")return[A,A,A];if(!Array.isArray(A))throw TypeError(`Expected \`stdio\` to be of type \`string\` or \`Array\`, got \`${typeof A}\``);let B=Math.max(A.length,Q5.length);return Array.from({length:B},(Y,J)=>A[J])},ThQ=(A)=>Q5.some((Q)=>A[Q]!==void 0),hBA=(A,Q)=>{if(Array.isArray(A))return A.map((B)=>hBA(B,Q));if(A===null||A===void 0)return Q>=Q5.length?"ignore":"pipe";return A},ShQ=(A,Q,B)=>A.map((Y,J)=>!Q[J]&&J!==0&&!R4(B,J)&&khQ(Y)?"ignore":Y),khQ=(A)=>A==="pipe"||Array.isArray(A)&&A.every((Q)=>Q==="pipe");import{readFileSync as _hQ}from"node:fs";import vhQ from"node:tty";var fBA=({stdioItem:A,stdioItem:{type:Q},isStdioArray:B,fdNumber:Y,direction:J,isSync:C})=>{if(!B||Q!=="native")return A;return C?yhQ({stdioItem:A,fdNumber:Y,direction:J}):xhQ({stdioItem:A,fdNumber:Y})},yhQ=({stdioItem:A,stdioItem:{value:Q,optionName:B},fdNumber:Y,direction:J})=>{let C=ghQ({value:Q,optionName:B,fdNumber:Y,direction:J});if(C!==void 0)return C;if(zC(Q,{checkOpen:!1}))throw TypeError(`The \`${B}: Stream\` option cannot both be an array and include a stream with synchronous methods.`);return A},ghQ=({value:A,optionName:Q,fdNumber:B,direction:Y})=>{let J=hhQ(A,B);if(J===void 0)return;if(Y==="output")return{type:"fileNumber",value:J,optionName:Q};if(vhQ.isatty(J))throw TypeError(`The \`${Q}: ${xz(A)}\` option is invalid: it cannot be a TTY with synchronous methods.`);return{type:"uint8Array",value:rX(_hQ(J)),optionName:Q}},hhQ=(A,Q)=>{if(A==="inherit")return Q;if(typeof A==="number")return A;let B=Hz.indexOf(A);if(B!==-1)return B},xhQ=({stdioItem:A,stdioItem:{value:Q,optionName:B},fdNumber:Y})=>{if(Q==="inherit")return{type:"nodeStream",value:xBA(Y,Q,B),optionName:B};if(typeof Q==="number")return{type:"nodeStream",value:xBA(Q,Q,B),optionName:B};if(zC(Q,{checkOpen:!1}))return{type:"nodeStream",value:Q,optionName:B};return A},xBA=(A,Q,B)=>{let Y=Hz[A];if(Y===void 0)throw TypeError(`The \`${B}: ${Q}\` option is invalid: no such standard stream.`);return Y};var bBA=({input:A,inputFile:Q},B)=>B===0?[...fhQ(A),...mhQ(Q)]:[],fhQ=(A)=>A===void 0?[]:[{type:bhQ(A),value:A,optionName:"input"}],bhQ=(A)=>{if(TF(A,{checkOpen:!1}))return"nodeStream";if(typeof A==="string")return"string";if(TY(A))return"uint8Array";throw Error("The `input` option must be a string, a Uint8Array or a Node.js Readable stream.")},mhQ=(A)=>A===void 0?[]:[{...uhQ(A),optionName:"inputFile"}],uhQ=(A)=>{if(C2(A))return{type:"fileUrl",value:A};if(Qy(A))return{type:"filePath",value:{file:A}};throw Error("The `inputFile` option must be a file path string or a file URL.")};var mBA=(A)=>A.filter((Q,B)=>A.every((Y,J)=>Q.value!==Y.value||B>=J||Q.type==="generator"||Q.type==="asyncGenerator")),uBA=({stdioItem:{type:A,value:Q,optionName:B},direction:Y,fileDescriptors:J,isSync:C})=>{let X=dhQ(J,A);if(X.length===0)return;if(C){chQ({otherStdioItems:X,type:A,value:Q,optionName:B,direction:Y});return}if(PBA.has(A))return dBA({otherStdioItems:X,type:A,value:Q,optionName:B,direction:Y});if(TBA.has(A))phQ({otherStdioItems:X,type:A,value:Q,optionName:B})},dhQ=(A,Q)=>A.flatMap(({direction:B,stdioItems:Y})=>Y.filter((J)=>J.type===Q).map((J)=>({...J,direction:B}))),chQ=({otherStdioItems:A,type:Q,value:B,optionName:Y,direction:J})=>{if(Yy.has(Q))dBA({otherStdioItems:A,type:Q,value:B,optionName:Y,direction:J})},dBA=({otherStdioItems:A,type:Q,value:B,optionName:Y,direction:J})=>{let C=A.filter((G)=>lhQ(G,B));if(C.length===0)return;let X=C.find((G)=>G.direction!==J);return cBA(X,Y,Q),J==="output"?C[0].stream:void 0},lhQ=({type:A,value:Q},B)=>{if(A==="filePath")return Q.file===B.file;if(A==="fileUrl")return Q.href===B.href;return Q===B},phQ=({otherStdioItems:A,type:Q,value:B,optionName:Y})=>{let J=A.find(({value:{transform:C}})=>C===B.transform);cBA(J,Y,Q)},cBA=(A,Q,B)=>{if(A!==void 0)throw TypeError(`The \`${A.optionName}\` and \`${Q}\` options must not target ${tG[B]} that is the same.`)};var W2=(A,Q,B,Y)=>{let C=gBA(Q,B,Y).map((G,W)=>ihQ({stdioOption:G,fdNumber:W,options:Q,isSync:Y})),X=AxQ({initialFileDescriptors:C,addProperties:A,options:Q,isSync:Y});return Q.stdio=X.map(({stdioItems:G})=>YxQ(G)),X},ihQ=({stdioOption:A,fdNumber:Q,options:B,isSync:Y})=>{let J=Dz(Q),{stdioItems:C,isStdioArray:X}=nhQ({stdioOption:A,fdNumber:Q,options:B,optionName:J}),G=_BA(C,Q,J),W=C.map((U)=>fBA({stdioItem:U,isStdioArray:X,fdNumber:Q,direction:G,isSync:Y})),F=kBA(W,J,G,B),Z=SBA(F,G);return ehQ(F,Z),{direction:G,objectMode:Z,stdioItems:F}},nhQ=({stdioOption:A,fdNumber:Q,options:B,optionName:Y})=>{let C=[...(Array.isArray(A)?A:[A]).map((W)=>shQ(W,Y)),...bBA(B,Q)],X=mBA(C),G=X.length>1;return rhQ(X,G,Y),ohQ(X),{stdioItems:X,isStdioArray:G}},shQ=(A,Q)=>({type:LBA(A,Q),value:A,optionName:Q}),rhQ=(A,Q,B)=>{if(A.length===0)throw TypeError(`The \`${B}\` option must not be an empty array.`);if(!Q)return;for(let{value:Y,optionName:J}of A)if(ahQ.has(Y))throw Error(`The \`${J}\` option must not include \`${Y}\`.`)},ahQ=new Set(["ignore","ipc"]),ohQ=(A)=>{for(let Q of A)thQ(Q)},thQ=({type:A,value:Q,optionName:B})=>{if(RBA(Q))throw TypeError(`The \`${B}: URL\` option must use the \`file:\` scheme. +For example, you can use the \`pathToFileURL()\` method of the \`url\` core module.`);if(wBA(A,Q))throw TypeError(`The \`${B}: { file: '...' }\` option must be used instead of \`${B}: '...'\`.`)},ehQ=(A,Q)=>{if(!Q)return;let B=A.find(({type:Y})=>G2.has(Y));if(B!==void 0)throw TypeError(`The \`${B.optionName}\` option cannot use both files and transforms in objectMode.`)},AxQ=({initialFileDescriptors:A,addProperties:Q,options:B,isSync:Y})=>{let J=[];try{for(let C of A)J.push(QxQ({fileDescriptor:C,fileDescriptors:J,addProperties:Q,options:B,isSync:Y}));return J}catch(C){throw Gy(J),C}},QxQ=({fileDescriptor:{direction:A,objectMode:Q,stdioItems:B},fileDescriptors:Y,addProperties:J,options:C,isSync:X})=>{let G=B.map((W)=>BxQ({stdioItem:W,addProperties:J,direction:A,options:C,fileDescriptors:Y,isSync:X}));return{direction:A,objectMode:Q,stdioItems:G}},BxQ=({stdioItem:A,addProperties:Q,direction:B,options:Y,fileDescriptors:J,isSync:C})=>{let X=uBA({stdioItem:A,direction:B,fileDescriptors:J,isSync:C});if(X!==void 0)return{...A,stream:X};return{...A,...Q[B][A.type](A,Y)}},Gy=(A)=>{for(let{stdioItems:Q}of A)for(let{stream:B}of Q)if(B!==void 0&&!qC(B))B.destroy()},YxQ=(A)=>{if(A.length>1)return A.some(({value:Y})=>Y==="overlapped")?"overlapped":"pipe";let[{type:Q,value:B}]=A;return Q==="native"?B:"pipe"};var iBA=(A,Q)=>W2(CxQ,A,Q,!0),S1=({type:A,optionName:Q})=>{nBA(Q,tG[A])},JxQ=({optionName:A,value:Q})=>{if(Q==="ipc"||Q==="overlapped")nBA(A,`"${Q}"`);return{}},nBA=(A,Q)=>{throw TypeError(`The \`${A}\` option cannot be ${Q} with synchronous methods.`)},pBA={generator(){},asyncGenerator:S1,webStream:S1,nodeStream:S1,webTransform:S1,duplex:S1,asyncIterable:S1,native:JxQ},CxQ={input:{...pBA,fileUrl:({value:A})=>({contents:[rX(lBA(A))]}),filePath:({value:{file:A}})=>({contents:[rX(lBA(A))]}),fileNumber:S1,iterable:({value:A})=>({contents:[...A]}),string:({value:A})=>({contents:[A]}),uint8Array:({value:A})=>({contents:[A]})},output:{...pBA,fileUrl:({value:A})=>({path:A}),filePath:({value:{file:A,append:Q}})=>({path:A,append:Q}),fileNumber:({value:A})=>({path:A}),iterable:S1,string:S1,uint8Array:S1}};var eX=(A,{stripFinalNewline:Q},B)=>Wy(Q,B)&&A!==void 0&&!Array.isArray(A)?S4(A):A,Wy=(A,Q)=>Q==="all"?A[1]||A[2]:A[Q];import{Transform as jxQ,getDefaultHighWaterMark as J0A}from"node:stream";var F2=(A,Q,B,Y)=>A||B?void 0:rBA(Q,Y),Zy=(A,Q,B)=>B?A.flatMap((Y)=>sBA(Y,Q)):sBA(A,Q),sBA=(A,Q)=>{let{transform:B,final:Y}=rBA(Q,{});return[...B(A),...Y()]},rBA=(A,Q)=>{return Q.previousChunks="",{transform:XxQ.bind(void 0,Q,A),final:WxQ.bind(void 0,Q)}},XxQ=function*(A,Q,B){if(typeof B!=="string"){yield B;return}let{previousChunks:Y}=A,J=-1;for(let C=0;C0)G=Fy(Y,G),Y="";yield G,J=C}if(J!==B.length-1)Y=Fy(Y,B.slice(J+1));A.previousChunks=Y},GxQ=(A,Q,B,Y)=>{if(B)return 0;return Y.isWindowsNewline=Q!==0&&A[Q-1]==="\r",Y.isWindowsNewline?2:1},WxQ=function*({previousChunks:A}){if(A.length>0)yield A},aBA=({binary:A,preserveNewlines:Q,readableObjectMode:B,state:Y})=>A||Q||B?void 0:{transform:FxQ.bind(void 0,Y)},FxQ=function*({isWindowsNewline:A=!1},Q){let{unixNewline:B,windowsNewline:Y,LF:J,concatBytes:C}=typeof Q==="string"?ZxQ:UxQ;if(Q.at(-1)===J){yield Q;return}yield C(Q,A?Y:B)},Fy=(A,Q)=>`${A}${Q}`,ZxQ={windowsNewline:`\r `,unixNewline:` `,LF:` -`,concatBytes:yv},ZgQ=(A,Q)=>{let B=new Uint8Array(A.length+Q.length);return B.set(A,0),B.set(Q,A.length),B},$gQ={windowsNewline:new Uint8Array([13,10]),unixNewline:new Uint8Array([10]),LF:10,concatBytes:ZgQ};import{Buffer as UgQ}from"node:buffer";var ZBA=(A,Q)=>A?void 0:EgQ.bind(void 0,Q),EgQ=function*(A,Q){if(typeof Q!=="string"&&!RY(Q)&&!UgQ.isBuffer(Q))throw TypeError(`The \`${A}\` option's transform must use "objectMode: true" to receive as input: ${typeof Q}.`);yield Q},$BA=(A,Q)=>A?KgQ.bind(void 0,Q):VgQ.bind(void 0,Q),KgQ=function*(A,Q){UBA(A,Q),yield Q},VgQ=function*(A,Q){if(UBA(A,Q),typeof Q!=="string"&&!RY(Q))throw TypeError(`The \`${A}\` option's function must yield a string or an Uint8Array, not ${typeof Q}.`);yield Q},UBA=(A,Q)=>{if(Q===null||Q===void 0)throw TypeError(`The \`${A}\` option's function must not call \`yield ${Q}\`. +`,concatBytes:Fy},$xQ=(A,Q)=>{let B=new Uint8Array(A.length+Q.length);return B.set(A,0),B.set(Q,A.length),B},UxQ={windowsNewline:new Uint8Array([13,10]),unixNewline:new Uint8Array([10]),LF:10,concatBytes:$xQ};import{Buffer as ExQ}from"node:buffer";var oBA=(A,Q)=>A?void 0:KxQ.bind(void 0,Q),KxQ=function*(A,Q){if(typeof Q!=="string"&&!TY(Q)&&!ExQ.isBuffer(Q))throw TypeError(`The \`${A}\` option's transform must use "objectMode: true" to receive as input: ${typeof Q}.`);yield Q},tBA=(A,Q)=>A?VxQ.bind(void 0,Q):IxQ.bind(void 0,Q),VxQ=function*(A,Q){eBA(A,Q),yield Q},IxQ=function*(A,Q){if(eBA(A,Q),typeof Q!=="string"&&!TY(Q))throw TypeError(`The \`${A}\` option's function must yield a string or an Uint8Array, not ${typeof Q}.`);yield Q},eBA=(A,Q)=>{if(Q===null||Q===void 0)throw TypeError(`The \`${A}\` option's function must not call \`yield ${Q}\`. Instead, \`yield\` should either be called with a value, or not be called at all. For example: - if (condition) { yield value; }`)};import{Buffer as IgQ}from"node:buffer";import{StringDecoder as HgQ}from"node:string_decoder";var uz=(A,Q,B)=>{if(B)return;if(A)return{transform:DgQ.bind(void 0,new TextEncoder)};let Y=new HgQ(Q);return{transform:NgQ.bind(void 0,Y),final:LgQ.bind(void 0,Y)}},DgQ=function*(A,Q){if(IgQ.isBuffer(Q))yield m6(Q);else if(typeof Q==="string")yield A.encode(Q);else yield Q},NgQ=function*(A,Q){yield RY(Q)?A.write(Q):Q},LgQ=function*(A){let Q=A.end();if(Q!=="")yield Q};import{callbackify as EBA}from"node:util";var gv=EBA(async(A,Q,B,Y)=>{Q.currentIterable=A(...B);try{for await(let J of Q.currentIterable)Y.push(J)}finally{delete Q.currentIterable}}),dz=async function*(A,Q,B){if(B===Q.length){yield A;return}let{transform:Y=MgQ}=Q[B];for await(let J of Y(A))yield*dz(J,Q,B+1)},KBA=async function*(A){for(let[Q,{final:B}]of Object.entries(A))yield*qgQ(B,Number(Q),A)},qgQ=async function*(A,Q,B){if(A===void 0)return;for await(let Y of A())yield*dz(Y,B,Q+1)},VBA=EBA(async({currentIterable:A},Q)=>{if(A!==void 0){await(Q?A.throw(Q):A.return());return}if(Q)throw Q}),MgQ=function*(A){yield A};var xv=(A,Q,B,Y)=>{try{for(let J of A(...Q))B.push(J);Y()}catch(J){Y(J)}},IBA=(A,Q)=>[...Q.flatMap((B)=>[...zW(B,A,0)]),...YI(A)],zW=function*(A,Q,B){if(B===Q.length){yield A;return}let{transform:Y=RgQ}=Q[B];for(let J of Y(A))yield*zW(J,Q,B+1)},YI=function*(A){for(let[Q,{final:B}]of Object.entries(A))yield*zgQ(B,Number(Q),A)},zgQ=function*(A,Q,B){if(A===void 0)return;for(let Y of A())yield*zW(Y,B,Q+1)},RgQ=function*(A){yield A};var fv=({value:A,value:{transform:Q,final:B,writableObjectMode:Y,readableObjectMode:J},optionName:C},{encoding:X})=>{let G={},F=DBA(A,X,C),W=MW(Q),Z=MW(B),U=W?gv.bind(void 0,dz,G):xv.bind(void 0,zW),$=W||Z?gv.bind(void 0,KBA,G):xv.bind(void 0,YI),E=W||Z?VBA.bind(void 0,G):void 0;return{stream:new wgQ({writableObjectMode:Y,writableHighWaterMark:HBA(Y),readableObjectMode:J,readableHighWaterMark:HBA(J),transform(I,V,H){U([I,F,0],this,H)},flush(I){$([F],this,I)},destroy:E})}},cz=(A,Q,B,Y)=>{let J=Q.filter(({type:X})=>X==="generator"),C=Y?J.reverse():J;for(let{value:X,optionName:G}of C){let F=DBA(X,B,G);A=IBA(F,A)}return A},DBA=({transform:A,final:Q,binary:B,writableObjectMode:Y,readableObjectMode:J,preserveNewlines:C},X,G)=>{let F={};return[{transform:ZBA(Y,G)},uz(B,X,Y),mz(B,C,Y,F),{transform:A,final:Q},{transform:$BA(J,G)},WBA({binary:B,preserveNewlines:C,readableObjectMode:J,state:F})].filter(Boolean)};var NBA=(A,Q)=>{for(let B of jgQ(A))OgQ(A,B,Q)},jgQ=(A)=>new Set(Object.entries(A).filter(([,{direction:Q}])=>Q==="input").map(([Q])=>Number(Q))),OgQ=(A,Q,B)=>{let{stdioItems:Y}=A[Q],J=Y.filter(({contents:G})=>G!==void 0);if(J.length===0)return;if(Q!==0){let[{type:G,optionName:F}]=J;throw TypeError(`Only the \`stdin\` option, not \`${F}\`, can be ${lG[G]} with synchronous methods.`)}let X=J.map(({contents:G})=>G).map((G)=>PgQ(G,Y));B.input=rV(X)},PgQ=(A,Q)=>{let B=cz(A,Q,"utf8",!0);return TgQ(B),rV(B)},TgQ=(A)=>{let Q=A.find((B)=>typeof B!=="string"&&!RY(B));if(Q!==void 0)throw TypeError(`The \`stdin\` option is invalid: when passing objects as input, a transform must be used to serialize them to strings or Uint8Arrays: ${Q}.`)};import{writeFileSync as vgQ,appendFileSync as ygQ}from"node:fs";var lz=({stdioItems:A,encoding:Q,verboseInfo:B,fdNumber:Y})=>Y!=="all"&&V4(B,Y)&&!A8.has(Q)&&SgQ(Y)&&(A.some(({type:J,value:C})=>J==="native"&&kgQ.has(C))||A.every(({type:J})=>n8.has(J))),SgQ=(A)=>A===1||A===2,kgQ=new Set(["pipe","overlapped"]),LBA=async(A,Q,B,Y)=>{for await(let J of A)if(!_gQ(Q))MBA(J,B,Y)},qBA=(A,Q,B)=>{for(let Y of A)MBA(Y,Q,B)},_gQ=(A)=>A._readableState.pipes.length>0,MBA=(A,Q,B)=>{let Y=Qz(A);H1({type:"output",verboseMessage:Y,fdNumber:Q,verboseInfo:B})};var zBA=({fileDescriptors:A,syncResult:{output:Q},options:B,isMaxBuffer:Y,verboseInfo:J})=>{if(Q===null)return{output:Array.from({length:3})};let C={},X=new Set([]);return{output:Q.map((F,W)=>hgQ({result:F,fileDescriptors:A,fdNumber:W,state:C,outputFiles:X,isMaxBuffer:Y,verboseInfo:J},B)),...C}},hgQ=({result:A,fileDescriptors:Q,fdNumber:B,state:Y,outputFiles:J,isMaxBuffer:C,verboseInfo:X},{buffer:G,encoding:F,lines:W,stripFinalNewline:Z,maxBuffer:U})=>{if(A===null)return;let $=RQA(A,C,U),E=m6($),{stdioItems:K,objectMode:I}=Q[B],V=ggQ([E],K,F,Y),{serializedResult:H,finalResult:D=H}=xgQ({chunks:V,objectMode:I,encoding:F,lines:W,stripFinalNewline:Z,fdNumber:B});fgQ({serializedResult:H,fdNumber:B,state:Y,verboseInfo:X,encoding:F,stdioItems:K,objectMode:I});let L=G[B]?D:void 0;try{if(Y.error===void 0)bgQ(H,K,J);return L}catch(z){return Y.error=z,L}},ggQ=(A,Q,B,Y)=>{try{return cz(A,Q,B,!1)}catch(J){return Y.error=J,A}},xgQ=({chunks:A,objectMode:Q,encoding:B,lines:Y,stripFinalNewline:J,fdNumber:C})=>{if(Q)return{serializedResult:A};if(B==="buffer")return{serializedResult:rV(A)};let X=ft(A,B);if(Y[C])return{serializedResult:X,finalResult:hv(X,!J[C],Q)};return{serializedResult:X}},fgQ=({serializedResult:A,fdNumber:Q,state:B,verboseInfo:Y,encoding:J,stdioItems:C,objectMode:X})=>{if(!lz({stdioItems:C,encoding:J,verboseInfo:Y,fdNumber:Q}))return;let G=hv(A,!1,X);try{qBA(G,Q,Y)}catch(F){B.error??=F}},bgQ=(A,Q,B)=>{for(let{path:Y,append:J}of Q.filter(({type:C})=>fz.has(C))){let C=typeof Y==="string"?Y:Y.toString();if(J||B.has(C))ygQ(Y,A);else B.add(C),vgQ(Y,A)}};var RBA=([,A,Q],B)=>{if(!B.all)return;if(A===void 0)return Q;if(Q===void 0)return A;if(Array.isArray(A))return Array.isArray(Q)?[...A,...Q]:[...A,l6(Q,B,"all")];if(Array.isArray(Q))return[l6(A,B,"all"),...Q];if(RY(A)&&RY(Q))return l_([A,Q]);return`${A}${Q}`};import{once as bv}from"node:events";var wBA=async(A,Q)=>{let[B,Y]=await mgQ(A);return Q.isForcefullyTerminated??=!1,[B,Y]},mgQ=async(A)=>{let[Q,B]=await Promise.allSettled([bv(A,"spawn"),bv(A,"exit")]);if(Q.status==="rejected")return[];return B.status==="rejected"?jBA(A):B.value},jBA=async(A)=>{try{return await bv(A,"exit")}catch{return jBA(A)}},OBA=async(A)=>{let[Q,B]=await A;if(!ugQ(Q,B)&&mv(Q,B))throw new D1;return[Q,B]},ugQ=(A,Q)=>A===void 0&&Q===void 0,mv=(A,Q)=>A!==0||Q!==null;var PBA=({error:A,status:Q,signal:B,output:Y},{maxBuffer:J})=>{let C=dgQ(A,Q,B),X=C?.code==="ETIMEDOUT",G=zQA(C,Y,J);return{resultError:C,exitCode:Q,signal:B,timedOut:X,isMaxBuffer:G}},dgQ=(A,Q,B)=>{if(A!==void 0)return A;return mv(Q,B)?new D1:void 0};var TBA=(A,Q,B)=>{let{file:Y,commandArguments:J,command:C,escapedCommand:X,startTime:G,verboseInfo:F,options:W,fileDescriptors:Z}=lgQ(A,Q,B),U=ngQ({file:Y,commandArguments:J,options:W,command:C,escapedCommand:X,verboseInfo:F,fileDescriptors:Z,startTime:G});return R4(U,F,W)},lgQ=(A,Q,B)=>{let{command:Y,escapedCommand:J,startTime:C,verboseInfo:X}=Yz(A,Q,B),G=pgQ(B),{file:F,commandArguments:W,options:Z}=jz(A,Q,G);igQ(Z);let U=CBA(Z,X);return{file:F,commandArguments:W,command:Y,escapedCommand:J,startTime:C,verboseInfo:X,options:Z,fileDescriptors:U}},pgQ=(A)=>A.node&&!A.ipc?{...A,ipc:!1}:A,igQ=({ipc:A,ipcInput:Q,detached:B,cancelSignal:Y})=>{if(Q)pz("ipcInput");if(A)pz("ipc: true");if(B)pz("detached: true");if(Y)pz("cancelSignal")},pz=(A)=>{throw TypeError(`The "${A}" option cannot be used with synchronous methods.`)},ngQ=({file:A,commandArguments:Q,options:B,command:Y,escapedCommand:J,verboseInfo:C,fileDescriptors:X,startTime:G})=>{let F=sgQ({file:A,commandArguments:Q,options:B,command:Y,escapedCommand:J,fileDescriptors:X,startTime:G});if(F.failed)return F;let{resultError:W,exitCode:Z,signal:U,timedOut:$,isMaxBuffer:E}=PBA(F,B),{output:K,error:I=W}=zBA({fileDescriptors:X,syncResult:F,options:B,isMaxBuffer:E,verboseInfo:C}),V=K.map((D,L)=>l6(D,B,L)),H=l6(RBA(K,B),B,"all");return agQ({error:I,exitCode:Z,signal:U,timedOut:$,isMaxBuffer:E,stdio:V,all:H,options:B,command:Y,escapedCommand:J,startTime:G})},sgQ=({file:A,commandArguments:Q,options:B,command:Y,escapedCommand:J,fileDescriptors:C,startTime:X})=>{try{NBA(C,B);let G=rgQ(B);return cgQ(A,Q,G)}catch(G){return z4({error:G,command:Y,escapedCommand:J,fileDescriptors:C,options:B,startTime:X,isSync:!0})}},rgQ=({encoding:A,maxBuffer:Q,...B})=>({...B,encoding:"buffer",maxBuffer:yz(Q)}),agQ=({error:A,exitCode:Q,signal:B,timedOut:Y,isMaxBuffer:J,stdio:C,all:X,options:G,command:F,escapedCommand:W,startTime:Z})=>A===void 0?hz({command:F,escapedCommand:W,stdio:C,all:X,ipcOutput:[],options:G,startTime:Z}):BI({error:A,command:F,escapedCommand:W,timedOut:Y,isCanceled:!1,isGracefullyCanceled:!1,isMaxBuffer:J,isForcefullyTerminated:!1,exitCode:Q,signal:B,stdio:C,all:X,ipcOutput:[],options:G,startTime:Z,isSync:!0});import{setMaxListeners as xfQ}from"node:events";import{spawn as ffQ}from"node:child_process";import yBA from"node:process";import{once as uv,on as ogQ}from"node:events";var SBA=({anyProcess:A,channel:Q,isSubprocess:B,ipc:Y},{reference:J=!0,filter:C}={})=>{return D4({methodName:"getOneMessage",isSubprocess:B,ipc:Y,isConnected:Lz(A)}),tgQ({anyProcess:A,channel:Q,isSubprocess:B,filter:C,reference:J})},tgQ=async({anyProcess:A,channel:Q,isSubprocess:B,filter:Y,reference:J})=>{Iz(Q,J);let C=cG(A,Q,B),X=new AbortController;try{return await Promise.race([egQ(C,Y,X),AxQ(C,B,X),QxQ(C,B,X)])}catch(G){throw N4(A),G}finally{X.abort(),Hz(Q,J)}},egQ=async(A,Q,{signal:B})=>{if(Q===void 0){let[Y]=await uv(A,"message",{signal:B});return Y}for await(let[Y]of ogQ(A,"message",{signal:B}))if(Q(Y))return Y},AxQ=async(A,Q,{signal:B})=>{await uv(A,"disconnect",{signal:B}),VAA(Q)},QxQ=async(A,Q,{signal:B})=>{let[Y]=await uv(A,"strict:error",{signal:B});throw Ez(Y,Q)};import{once as _BA,on as BxQ}from"node:events";var vBA=({anyProcess:A,channel:Q,isSubprocess:B,ipc:Y},{reference:J=!0}={})=>dv({anyProcess:A,channel:Q,isSubprocess:B,ipc:Y,shouldAwait:!B,reference:J}),dv=({anyProcess:A,channel:Q,isSubprocess:B,ipc:Y,shouldAwait:J,reference:C})=>{D4({methodName:"getEachMessage",isSubprocess:B,ipc:Y,isConnected:Lz(A)}),Iz(Q,C);let X=cG(A,Q,B),G=new AbortController,F={};return YxQ(A,X,G),JxQ({ipcEmitter:X,isSubprocess:B,controller:G,state:F}),CxQ({anyProcess:A,channel:Q,ipcEmitter:X,isSubprocess:B,shouldAwait:J,controller:G,state:F,reference:C})},YxQ=async(A,Q,B)=>{try{await _BA(Q,"disconnect",{signal:B.signal}),B.abort()}catch{}},JxQ=async({ipcEmitter:A,isSubprocess:Q,controller:B,state:Y})=>{try{let[J]=await _BA(A,"strict:error",{signal:B.signal});Y.error=Ez(J,Q),B.abort()}catch{}},CxQ=async function*({anyProcess:A,channel:Q,ipcEmitter:B,isSubprocess:Y,shouldAwait:J,controller:C,state:X,reference:G}){try{for await(let[F]of BxQ(B,"message",{signal:C.signal}))kBA(X),yield F}catch{kBA(X)}finally{if(C.abort(),Hz(Q,G),!Y)N4(A);if(J)await A}},kBA=({error:A})=>{if(A)throw A};var hBA=(A,{ipc:Q})=>{Object.assign(A,xBA(A,!1,Q))},gBA=()=>{let A=yBA,Q=!0,B=yBA.channel!==void 0;return{...xBA(A,!0,B),getCancelSignal:dAA.bind(void 0,{anyProcess:A,channel:A.channel,isSubprocess:!0,ipc:B})}},xBA=(A,Q,B)=>({sendMessage:Rz.bind(void 0,{anyProcess:A,channel:A.channel,isSubprocess:Q,ipc:B}),getOneMessage:SBA.bind(void 0,{anyProcess:A,channel:A.channel,isSubprocess:Q,ipc:B}),getEachMessage:vBA.bind(void 0,{anyProcess:A,channel:A.channel,isSubprocess:Q,ipc:B})});import{ChildProcess as XxQ}from"node:child_process";import{PassThrough as GxQ,Readable as FxQ,Writable as WxQ,Duplex as ZxQ}from"node:stream";var fBA=({error:A,command:Q,escapedCommand:B,fileDescriptors:Y,options:J,startTime:C,verboseInfo:X})=>{_v(Y);let G=new XxQ;$xQ(G,Y),Object.assign(G,{readable:UxQ,writable:ExQ,duplex:KxQ});let F=z4({error:A,command:Q,escapedCommand:B,fileDescriptors:Y,options:J,startTime:C,isSync:!1}),W=VxQ(F,X,J);return{subprocess:G,promise:W}},$xQ=(A,Q)=>{let B=JI(),Y=JI(),J=JI(),C=Array.from({length:Q.length-3},JI),X=JI(),G=[B,Y,J,...C];Object.assign(A,{stdin:B,stdout:Y,stderr:J,all:X,stdio:G})},JI=()=>{let A=new GxQ;return A.end(),A},UxQ=()=>new FxQ({read(){}}),ExQ=()=>new WxQ({write(){}}),KxQ=()=>new ZxQ({read(){},write(){}}),VxQ=async(A,Q,B)=>R4(A,Q,B);import{createReadStream as bBA,createWriteStream as mBA}from"node:fs";import{Buffer as IxQ}from"node:buffer";import{Readable as CI,Writable as HxQ,Duplex as DxQ}from"node:stream";var dBA=(A,Q)=>bz(NxQ,A,Q,!1),XI=({type:A,optionName:Q})=>{throw TypeError(`The \`${Q}\` option cannot be ${lG[A]}.`)},uBA={fileNumber:XI,generator:fv,asyncGenerator:fv,nodeStream:({value:A})=>({stream:A}),webTransform({value:{transform:A,writableObjectMode:Q,readableObjectMode:B}}){let Y=Q||B;return{stream:DxQ.fromWeb(A,{objectMode:Y})}},duplex:({value:{transform:A}})=>({stream:A}),native(){}},NxQ={input:{...uBA,fileUrl:({value:A})=>({stream:bBA(A)}),filePath:({value:{file:A}})=>({stream:bBA(A)}),webStream:({value:A})=>({stream:CI.fromWeb(A)}),iterable:({value:A})=>({stream:CI.from(A)}),asyncIterable:({value:A})=>({stream:CI.from(A)}),string:({value:A})=>({stream:CI.from(A)}),uint8Array:({value:A})=>({stream:CI.from(IxQ.from(A))})},output:{...uBA,fileUrl:({value:A})=>({stream:mBA(A)}),filePath:({value:{file:A,append:Q}})=>({stream:mBA(A,Q?{flags:"a"}:{})}),webStream:({value:A})=>({stream:HxQ.fromWeb(A)}),iterable:XI,asyncIterable:XI,string:XI,uint8Array:XI}};import{on as LxQ,once as cBA}from"node:events";import{PassThrough as qxQ,getDefaultHighWaterMark as MxQ}from"node:stream";import{finished as iBA}from"node:stream/promises";function RW(A){if(!Array.isArray(A))throw TypeError(`Expected an array, got \`${typeof A}\`.`);for(let J of A)cv(J);let Q=A.some(({readableObjectMode:J})=>J),B=zxQ(A,Q),Y=new nBA({objectMode:Q,writableHighWaterMark:B,readableHighWaterMark:B});for(let J of A)Y.add(J);return Y}var zxQ=(A,Q)=>{if(A.length===0)return MxQ(Q);let B=A.filter(({readableObjectMode:Y})=>Y===Q).map(({readableHighWaterMark:Y})=>Y);return Math.max(...B)};class nBA extends qxQ{#A=new Set([]);#Q=new Set([]);#B=new Set([]);#Y;#J=Symbol("unpipe");#C=new WeakMap;add(A){if(cv(A),this.#A.has(A))return;this.#A.add(A),this.#Y??=RxQ(this,this.#A,this.#J);let Q=OxQ({passThroughStream:this,stream:A,streams:this.#A,ended:this.#Q,aborted:this.#B,onFinished:this.#Y,unpipeEvent:this.#J});this.#C.set(A,Q),A.pipe(this,{end:!1})}async remove(A){if(cv(A),!this.#A.has(A))return!1;let Q=this.#C.get(A);if(Q===void 0)return!1;return this.#C.delete(A),A.unpipe(this),await Q,!0}}var RxQ=async(A,Q,B)=>{iz(A,lBA);let Y=new AbortController;try{await Promise.race([wxQ(A,Y),jxQ(A,Q,B,Y)])}finally{Y.abort(),iz(A,-lBA)}},wxQ=async(A,{signal:Q})=>{try{await iBA(A,{signal:Q,cleanup:!0})}catch(B){throw sBA(A,B),B}},jxQ=async(A,Q,B,{signal:Y})=>{for await(let[J]of LxQ(A,"unpipe",{signal:Y}))if(Q.has(J))J.emit(B)},cv=(A)=>{if(typeof A?.pipe!=="function")throw TypeError(`Expected a readable stream, got: \`${typeof A}\`.`)},OxQ=async({passThroughStream:A,stream:Q,streams:B,ended:Y,aborted:J,onFinished:C,unpipeEvent:X})=>{iz(A,pBA);let G=new AbortController;try{await Promise.race([PxQ(C,Q,G),TxQ({passThroughStream:A,stream:Q,streams:B,ended:Y,aborted:J,controller:G}),SxQ({stream:Q,streams:B,ended:Y,aborted:J,unpipeEvent:X,controller:G})])}finally{G.abort(),iz(A,-pBA)}if(B.size>0&&B.size===Y.size+J.size)if(Y.size===0&&J.size>0)lv(A);else kxQ(A)},PxQ=async(A,Q,{signal:B})=>{try{if(await A,!B.aborted)lv(Q)}catch(Y){if(!B.aborted)sBA(Q,Y)}},TxQ=async({passThroughStream:A,stream:Q,streams:B,ended:Y,aborted:J,controller:{signal:C}})=>{try{if(await iBA(Q,{signal:C,cleanup:!0,readable:!0,writable:!1}),B.has(Q))Y.add(Q)}catch(X){if(C.aborted||!B.has(Q))return;if(rBA(X))J.add(Q);else aBA(A,X)}},SxQ=async({stream:A,streams:Q,ended:B,aborted:Y,unpipeEvent:J,controller:{signal:C}})=>{if(await cBA(A,J,{signal:C}),!A.readable)return cBA(C,"abort",{signal:C});Q.delete(A),B.delete(A),Y.delete(A)},kxQ=(A)=>{if(A.writable)A.end()},sBA=(A,Q)=>{if(rBA(Q))lv(A);else aBA(A,Q)},rBA=(A)=>A?.code==="ERR_STREAM_PREMATURE_CLOSE",lv=(A)=>{if(A.readable||A.writable)A.destroy()},aBA=(A,Q)=>{if(!A.destroyed)A.once("error",_xQ),A.destroy(Q)},_xQ=()=>{},iz=(A,Q)=>{let B=A.getMaxListeners();if(B!==0&&B!==Number.POSITIVE_INFINITY)A.setMaxListeners(B+Q)},lBA=2,pBA=1;import{finished as oBA}from"node:stream/promises";var j4=(A,Q)=>{A.pipe(Q),vxQ(A,Q),yxQ(A,Q)},vxQ=async(A,Q)=>{if(UC(A)||UC(Q))return;try{await oBA(A,{cleanup:!0,readable:!0,writable:!1})}catch{}pv(Q)},pv=(A)=>{if(A.writable)A.end()},yxQ=async(A,Q)=>{if(UC(A)||UC(Q))return;try{await oBA(Q,{cleanup:!0,readable:!1,writable:!0})}catch{}iv(A)},iv=(A)=>{if(A.readable)A.destroy()};var tBA=(A,Q,B)=>{let Y=new Map;for(let[J,{stdioItems:C,direction:X}]of Object.entries(Q)){for(let{stream:G}of C.filter(({type:F})=>n8.has(F)))hxQ(A,G,X,J);for(let{stream:G}of C.filter(({type:F})=>!n8.has(F)))xxQ({subprocess:A,stream:G,direction:X,fdNumber:J,pipeGroups:Y,controller:B})}for(let[J,C]of Y.entries()){let X=C.length===1?C[0]:RW(C);j4(X,J)}},hxQ=(A,Q,B,Y)=>{if(B==="output")j4(A.stdio[Y],Q);else j4(Q,A.stdio[Y]);let J=gxQ[Y];if(J!==void 0)A[J]=Q;A.stdio[Y]=Q},gxQ=["stdin","stdout","stderr"],xxQ=({subprocess:A,stream:Q,direction:B,fdNumber:Y,pipeGroups:J,controller:C})=>{if(Q===void 0)return;fxQ(Q,C);let[X,G]=B==="output"?[Q,A.stdio[Y]]:[A.stdio[Y],Q],F=J.get(X)??[];J.set(X,[...F,G])},fxQ=(A,{signal:Q})=>{if(UC(A))LW(A,bxQ,Q)},bxQ=2;import{addAbortListener as dxQ}from"node:events";var wW=[];wW.push("SIGHUP","SIGINT","SIGTERM");if(process.platform!=="win32")wW.push("SIGALRM","SIGABRT","SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");if(process.platform==="linux")wW.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT");var nz=(A)=>!!A&&typeof A==="object"&&typeof A.removeListener==="function"&&typeof A.emit==="function"&&typeof A.reallyExit==="function"&&typeof A.listeners==="function"&&typeof A.kill==="function"&&typeof A.pid==="number"&&typeof A.on==="function",nv=Symbol.for("signal-exit emitter"),sv=globalThis,mxQ=Object.defineProperty.bind(Object);class eBA{emitted={afterExit:!1,exit:!1};listeners={afterExit:[],exit:[]};count=0;id=Math.random();constructor(){if(sv[nv])return sv[nv];mxQ(sv,nv,{value:this,writable:!1,enumerable:!1,configurable:!1})}on(A,Q){this.listeners[A].push(Q)}removeListener(A,Q){let B=this.listeners[A],Y=B.indexOf(Q);if(Y===-1)return;if(Y===0&&B.length===1)B.length=0;else B.splice(Y,1)}emit(A,Q,B){if(this.emitted[A])return!1;this.emitted[A]=!0;let Y=!1;for(let J of this.listeners[A])Y=J(Q,B)===!0||Y;if(A==="exit")Y=this.emit("afterExit",Q,B)||Y;return Y}}class av{}var uxQ=(A)=>{return{onExit(Q,B){return A.onExit(Q,B)},load(){return A.load()},unload(){return A.unload()}}};class A0A extends av{onExit(){return()=>{}}load(){}unload(){}}class Q0A extends av{#A=rv.platform==="win32"?"SIGINT":"SIGHUP";#Q=new eBA;#B;#Y;#J;#C={};#F=!1;constructor(A){super();this.#B=A,this.#C={};for(let Q of wW)this.#C[Q]=()=>{let B=this.#B.listeners(Q),{count:Y}=this.#Q,J=A;if(typeof J.__signal_exit_emitter__==="object"&&typeof J.__signal_exit_emitter__.count==="number")Y+=J.__signal_exit_emitter__.count;if(B.length===Y){this.unload();let C=this.#Q.emit("exit",null,Q),X=Q==="SIGHUP"?this.#A:Q;if(!C)A.kill(A.pid,X)}};this.#J=A.reallyExit,this.#Y=A.emit}onExit(A,Q){if(!nz(this.#B))return()=>{};if(this.#F===!1)this.load();let B=Q?.alwaysLast?"afterExit":"exit";return this.#Q.on(B,A),()=>{if(this.#Q.removeListener(B,A),this.#Q.listeners.exit.length===0&&this.#Q.listeners.afterExit.length===0)this.unload()}}load(){if(this.#F)return;this.#F=!0,this.#Q.count+=1;for(let A of wW)try{let Q=this.#C[A];if(Q)this.#B.on(A,Q)}catch(Q){}this.#B.emit=(A,...Q)=>{return this.#G(A,...Q)},this.#B.reallyExit=(A)=>{return this.#X(A)}}unload(){if(!this.#F)return;this.#F=!1,wW.forEach((A)=>{let Q=this.#C[A];if(!Q)throw Error("Listener not defined for signal: "+A);try{this.#B.removeListener(A,Q)}catch(B){}}),this.#B.emit=this.#Y,this.#B.reallyExit=this.#J,this.#Q.count-=1}#X(A){if(!nz(this.#B))return 0;return this.#B.exitCode=A||0,this.#Q.emit("exit",this.#B.exitCode,null),this.#J.call(this.#B,this.#B.exitCode)}#G(A,...Q){let B=this.#Y;if(A==="exit"&&nz(this.#B)){if(typeof Q[0]==="number")this.#B.exitCode=Q[0];let Y=B.call(this.#B,A,...Q);return this.#Q.emit("exit",this.#B.exitCode,null),Y}else return B.call(this.#B,A,...Q)}}var rv=globalThis.process,{onExit:B0A,load:iJY,unload:nJY}=uxQ(nz(rv)?new Q0A(rv):new A0A);var Y0A=(A,{cleanup:Q,detached:B},{signal:Y})=>{if(!Q||B)return;let J=B0A(()=>{A.kill()});dxQ(Y,()=>{J()})};var C0A=({source:A,sourcePromise:Q,boundOptions:B,createNested:Y},...J)=>{let C=Bz(),{destination:X,destinationStream:G,destinationError:F,from:W,unpipeSignal:Z}=cxQ(B,Y,J),{sourceStream:U,sourceError:$}=pxQ(A,W),{options:E,fileDescriptors:K}=L1.get(A);return{sourcePromise:Q,sourceStream:U,sourceOptions:E,sourceError:$,destination:X,destinationStream:G,destinationError:F,unpipeSignal:Z,fileDescriptors:K,startTime:C}},cxQ=(A,Q,B)=>{try{let{destination:Y,pipeOptions:{from:J,to:C,unpipeSignal:X}={}}=lxQ(A,Q,...B),G=Vz(Y,C);return{destination:Y,destinationStream:G,from:J,unpipeSignal:X}}catch(Y){return{destinationError:Y}}},lxQ=(A,Q,B,...Y)=>{if(Array.isArray(B))return{destination:Q(J0A,A)(B,...Y),pipeOptions:A};if(typeof B==="string"||B instanceof URL||d_(B)){if(Object.keys(A).length>0)throw TypeError('Please use .pipe("file", ..., options) or .pipe(execa("file", ..., options)) instead of .pipe(options)("file", ...).');let[J,C,X]=iM(B,...Y);return{destination:Q(J0A)(J,C,X),pipeOptions:X}}if(L1.has(B)){if(Object.keys(A).length>0)throw TypeError("Please use .pipe(options)`command` or .pipe($(options)`command`) instead of .pipe(options)($`command`).");return{destination:B,pipeOptions:Y[0]}}throw TypeError(`The first argument must be a template string, an options object, or an Execa subprocess: ${B}`)},J0A=({options:A})=>({options:{...A,stdin:"pipe",piped:!0}}),pxQ=(A,Q)=>{try{return{sourceStream:L4(A,Q)}}catch(B){return{sourceError:B}}};var G0A=({sourceStream:A,sourceError:Q,destinationStream:B,destinationError:Y,fileDescriptors:J,sourceOptions:C,startTime:X})=>{let G=ixQ({sourceStream:A,sourceError:Q,destinationStream:B,destinationError:Y});if(G!==void 0)throw ov({error:G,fileDescriptors:J,sourceOptions:C,startTime:X})},ixQ=({sourceStream:A,sourceError:Q,destinationStream:B,destinationError:Y})=>{if(Q!==void 0&&Y!==void 0)return Y;if(Y!==void 0)return iv(A),Y;if(Q!==void 0)return pv(B),Q},ov=({error:A,fileDescriptors:Q,sourceOptions:B,startTime:Y})=>z4({error:A,command:X0A,escapedCommand:X0A,fileDescriptors:Q,options:B,startTime:Y,isSync:!1}),X0A="source.pipe(destination)";var F0A=async(A)=>{let[{status:Q,reason:B,value:Y=B},{status:J,reason:C,value:X=C}]=await A;if(!X.pipedFrom.includes(Y))X.pipedFrom.push(Y);if(J==="rejected")throw X;if(Q==="rejected")throw Y;return X};import{finished as nxQ}from"node:stream/promises";var W0A=(A,Q,B)=>{let Y=sz.has(Q)?rxQ(A,Q):sxQ(A,Q);return LW(A,oxQ,B.signal),LW(Q,txQ,B.signal),axQ(Q),Y},sxQ=(A,Q)=>{let B=RW([A]);return j4(B,Q),sz.set(Q,B),B},rxQ=(A,Q)=>{let B=sz.get(Q);return B.add(A),B},axQ=async(A)=>{try{await nxQ(A,{cleanup:!0,readable:!1,writable:!0})}catch{}sz.delete(A)},sz=new WeakMap,oxQ=2,txQ=1;import{aborted as exQ}from"node:util";var Z0A=(A,Q)=>A===void 0?[]:[AfQ(A,Q)],AfQ=async(A,{sourceStream:Q,mergedStream:B,fileDescriptors:Y,sourceOptions:J,startTime:C})=>{await exQ(A,Q),await B.remove(Q);let X=Error("Pipe canceled by `unpipeSignal` option.");throw ov({error:X,fileDescriptors:Y,sourceOptions:J,startTime:C})};var rz=(A,...Q)=>{if(BY(Q[0]))return rz.bind(void 0,{...A,boundOptions:{...A.boundOptions,...Q[0]}});let{destination:B,...Y}=C0A(A,...Q),J=QfQ({...Y,destination:B});return J.pipe=rz.bind(void 0,{...A,source:B,sourcePromise:J,boundOptions:{}}),J},QfQ=async({sourcePromise:A,sourceStream:Q,sourceOptions:B,sourceError:Y,destination:J,destinationStream:C,destinationError:X,unpipeSignal:G,fileDescriptors:F,startTime:W})=>{let Z=BfQ(A,J);G0A({sourceStream:Q,sourceError:Y,destinationStream:C,destinationError:X,fileDescriptors:F,sourceOptions:B,startTime:W});let U=new AbortController;try{let $=W0A(Q,C,U);return await Promise.race([F0A(Z),...Z0A(G,{sourceStream:Q,mergedStream:$,sourceOptions:B,fileDescriptors:F,startTime:W})])}finally{U.abort()}},BfQ=(A,Q)=>Promise.allSettled([A,Q]);import{setImmediate as WfQ}from"node:timers/promises";import{on as YfQ}from"node:events";import{getDefaultHighWaterMark as JfQ}from"node:stream";var az=({subprocessStdout:A,subprocess:Q,binary:B,shouldEncode:Y,encoding:J,preserveNewlines:C})=>{let X=new AbortController;return CfQ(Q,X),U0A({stream:A,controller:X,binary:B,shouldEncode:!A.readableObjectMode&&Y,encoding:J,shouldSplit:!A.readableObjectMode,preserveNewlines:C})},CfQ=async(A,Q)=>{try{await A}catch{}finally{Q.abort()}},tv=({stream:A,onStreamEnd:Q,lines:B,encoding:Y,stripFinalNewline:J,allMixed:C})=>{let X=new AbortController;XfQ(Q,X,A);let G=A.readableObjectMode&&!C;return U0A({stream:A,controller:X,binary:Y==="buffer",shouldEncode:!G,encoding:Y,shouldSplit:!G&&B,preserveNewlines:!J})},XfQ=async(A,Q,B)=>{try{await A}catch{B.destroy()}finally{Q.abort()}},U0A=({stream:A,controller:Q,binary:B,shouldEncode:Y,encoding:J,shouldSplit:C,preserveNewlines:X})=>{let G=YfQ(A,"data",{signal:Q.signal,highWaterMark:$0A,highWatermark:$0A});return GfQ({onStdoutChunk:G,controller:Q,binary:B,shouldEncode:Y,encoding:J,shouldSplit:C,preserveNewlines:X})},ev=JfQ(!0),$0A=ev,GfQ=async function*({onStdoutChunk:A,controller:Q,binary:B,shouldEncode:Y,encoding:J,shouldSplit:C,preserveNewlines:X}){let G=FfQ({binary:B,shouldEncode:Y,encoding:J,shouldSplit:C,preserveNewlines:X});try{for await(let[F]of A)yield*zW(F,G,0)}catch(F){if(!Q.signal.aborted)throw F}finally{yield*YI(G)}},FfQ=({binary:A,shouldEncode:Q,encoding:B,shouldSplit:Y,preserveNewlines:J})=>[uz(A,B,!Q),mz(A,J,!Y,{})].filter(Boolean);var E0A=async({stream:A,onStreamEnd:Q,fdNumber:B,encoding:Y,buffer:J,maxBuffer:C,lines:X,allMixed:G,stripFinalNewline:F,verboseInfo:W,streamInfo:Z})=>{let U=ZfQ({stream:A,onStreamEnd:Q,fdNumber:B,encoding:Y,allMixed:G,verboseInfo:W,streamInfo:Z});if(!J){await Promise.all([$fQ(A),U]);return}let $=vv(F,B),E=tv({stream:A,onStreamEnd:Q,lines:X,encoding:Y,stripFinalNewline:$,allMixed:G}),[K]=await Promise.all([UfQ({stream:A,iterable:E,fdNumber:B,encoding:Y,maxBuffer:C,lines:X}),U]);return K},ZfQ=async({stream:A,onStreamEnd:Q,fdNumber:B,encoding:Y,allMixed:J,verboseInfo:C,streamInfo:{fileDescriptors:X}})=>{if(!lz({stdioItems:X[B]?.stdioItems,encoding:Y,verboseInfo:C,fdNumber:B}))return;let G=tv({stream:A,onStreamEnd:Q,lines:!0,encoding:Y,stripFinalNewline:!0,allMixed:J});await LBA(G,A,B,C)},$fQ=async(A)=>{if(await WfQ(),A.readableFlowing===null)A.resume()},UfQ=async({stream:A,stream:{readableObjectMode:Q},iterable:B,fdNumber:Y,encoding:J,maxBuffer:C,lines:X})=>{try{if(Q||X)return await Sz(B,{maxBuffer:C});if(J==="buffer")return new Uint8Array(await kz(B,{maxBuffer:C}));return await vz(B,{maxBuffer:C})}catch(G){return K0A(LQA({error:G,stream:A,readableObjectMode:Q,lines:X,encoding:J,fdNumber:Y}))}},Ay=async(A)=>{try{return await A}catch(Q){return K0A(Q)}},K0A=({bufferedData:A})=>gt(A)?new Uint8Array(A):A;import{finished as EfQ}from"node:stream/promises";var GI=async(A,Q,B,{isSameDirection:Y,stopOnExit:J=!1}={})=>{let C=KfQ(A,B),X=new AbortController;try{await Promise.race([...J?[B.exitPromise]:[],EfQ(A,{cleanup:!0,signal:X.signal})])}catch(G){if(!C.stdinCleanedUp)HfQ(G,Q,B,Y)}finally{X.abort()}},KfQ=(A,{originalStreams:[Q],subprocess:B})=>{let Y={stdinCleanedUp:!1};if(A===Q)VfQ(A,B,Y);return Y},VfQ=(A,Q,B)=>{let{_destroy:Y}=A;A._destroy=(...J)=>{IfQ(Q,B),Y.call(A,...J)}},IfQ=({exitCode:A,signalCode:Q},B)=>{if(A!==null||Q!==null)B.stdinCleanedUp=!0},HfQ=(A,Q,B,Y)=>{if(!DfQ(A,Q,B,Y))throw A},DfQ=(A,Q,B,Y=!0)=>{if(B.propagating)return V0A(A)||oz(A);return B.propagating=!0,Qy(B,Q)===Y?V0A(A):oz(A)},Qy=({fileDescriptors:A},Q)=>Q!=="all"&&A[Q].direction==="input",oz=(A)=>A?.code==="ERR_STREAM_PREMATURE_CLOSE",V0A=(A)=>A?.code==="EPIPE";var I0A=({subprocess:A,encoding:Q,buffer:B,maxBuffer:Y,lines:J,stripFinalNewline:C,verboseInfo:X,streamInfo:G})=>A.stdio.map((F,W)=>By({stream:F,fdNumber:W,encoding:Q,buffer:B[W],maxBuffer:Y[W],lines:J[W],allMixed:!1,stripFinalNewline:C,verboseInfo:X,streamInfo:G})),By=async({stream:A,fdNumber:Q,encoding:B,buffer:Y,maxBuffer:J,lines:C,allMixed:X,stripFinalNewline:G,verboseInfo:F,streamInfo:W})=>{if(!A)return;let Z=GI(A,Q,W);if(Qy(W,Q)){await Z;return}let[U]=await Promise.all([E0A({stream:A,onStreamEnd:Z,fdNumber:Q,encoding:B,buffer:Y,maxBuffer:J,lines:C,allMixed:X,stripFinalNewline:G,verboseInfo:F,streamInfo:W}),Z]);return U};var H0A=({stdout:A,stderr:Q},{all:B})=>B&&(A||Q)?RW([A,Q].filter(Boolean)):void 0,D0A=({subprocess:A,encoding:Q,buffer:B,maxBuffer:Y,lines:J,stripFinalNewline:C,verboseInfo:X,streamInfo:G})=>By({...NfQ(A,B),fdNumber:"all",encoding:Q,maxBuffer:Y[1]+Y[2],lines:J[1]||J[2],allMixed:LfQ(A),stripFinalNewline:C,verboseInfo:X,streamInfo:G}),NfQ=({stdout:A,stderr:Q,all:B},[,Y,J])=>{let C=Y||J;if(!C)return{stream:B,buffer:C};if(!Y)return{stream:Q,buffer:C};if(!J)return{stream:A,buffer:C};return{stream:B,buffer:C}},LfQ=({all:A,stdout:Q,stderr:B})=>A&&Q&&B&&Q.readableObjectMode!==B.readableObjectMode;import{once as qfQ}from"node:events";var N0A=(A)=>V4(A,"ipc"),L0A=(A,Q)=>{let B=Qz(A);H1({type:"ipc",verboseMessage:B,fdNumber:"ipc",verboseInfo:Q})};var q0A=async({subprocess:A,buffer:Q,maxBuffer:B,ipc:Y,ipcOutput:J,verboseInfo:C})=>{if(!Y)return J;let X=N0A(C),G=u6(Q,"ipc"),F=u6(B,"ipc");for await(let W of dv({anyProcess:A,channel:A.channel,isSubprocess:!1,ipc:Y,shouldAwait:!1,reference:!0})){if(G)qQA(A,J,F),J.push(W);if(X)L0A(W,C)}return J},M0A=async(A,Q)=>{return await Promise.allSettled([A]),Q};var z0A=async({subprocess:A,options:{encoding:Q,buffer:B,maxBuffer:Y,lines:J,timeoutDuration:C,cancelSignal:X,gracefulCancel:G,forceKillAfterDelay:F,stripFinalNewline:W,ipc:Z,ipcInput:U},context:$,verboseInfo:E,fileDescriptors:K,originalStreams:I,onInternalError:V,controller:H})=>{let D=wBA(A,$),L={originalStreams:I,fileDescriptors:K,subprocess:A,exitPromise:D,propagating:!1},z=I0A({subprocess:A,encoding:Q,buffer:B,maxBuffer:Y,lines:J,stripFinalNewline:W,verboseInfo:E,streamInfo:L}),M=D0A({subprocess:A,encoding:Q,buffer:B,maxBuffer:Y,lines:J,stripFinalNewline:W,verboseInfo:E,streamInfo:L}),N=[],q=q0A({subprocess:A,buffer:B,maxBuffer:Y,ipc:Z,ipcOutput:N,verboseInfo:E}),w=MfQ(I,A,L),P=zfQ(K,L);try{return await Promise.race([Promise.all([{},OBA(D),Promise.all(z),M,q,tAA(A,U),...w,...P]),V,RfQ(A,H),...nAA(A,C,$,H),...KAA({subprocess:A,cancelSignal:X,gracefulCancel:G,context:$,controller:H}),...pAA({subprocess:A,cancelSignal:X,gracefulCancel:G,forceKillAfterDelay:F,context:$,controller:H})])}catch(_){return $.terminationReason??="other",Promise.all([{error:_},D,Promise.all(z.map((O)=>Ay(O))),Ay(M),M0A(q,N),Promise.allSettled(w),Promise.allSettled(P)])}},MfQ=(A,Q,B)=>A.map((Y,J)=>Y===Q.stdio[J]?void 0:GI(Y,J,B)),zfQ=(A,Q)=>A.flatMap(({stdioItems:B},Y)=>B.filter(({value:J,stream:C=J})=>KC(C,{checkOpen:!1})&&!UC(C)).map(({type:J,value:C,stream:X=C})=>GI(X,Y,Q,{isSameDirection:n8.has(J),stopOnExit:J==="native"}))),RfQ=async(A,{signal:Q})=>{let[B]=await qfQ(A,"error",{signal:Q});throw B};var R0A=()=>({readableDestroy:new WeakMap,writableFinal:new WeakMap,writableDestroy:new WeakMap}),FI=(A,Q,B)=>{let Y=A[B];if(!Y.has(Q))Y.set(Q,[]);let J=Y.get(Q),C=N1();return J.push(C),{resolve:C.resolve.bind(C),promises:J}},O4=async({resolve:A,promises:Q},B)=>{A();let[Y]=await Promise.race([Promise.allSettled([!0,B]),Promise.all([!1,...Q])]);return!Y};import{Readable as wfQ}from"node:stream";import{callbackify as jfQ}from"node:util";import{finished as w0A}from"node:stream/promises";var Yy=async(A)=>{if(A===void 0)return;try{await Jy(A)}catch{}},j0A=async(A)=>{if(A===void 0)return;try{await Cy(A)}catch{}},Jy=async(A)=>{await w0A(A,{cleanup:!0,readable:!1,writable:!0})},Cy=async(A)=>{await w0A(A,{cleanup:!0,readable:!0,writable:!1})},tz=async(A,Q)=>{if(await A,Q)throw Q},ez=(A,Q,B)=>{if(B&&!oz(B))A.destroy(B);else if(Q)A.destroy()};var O0A=({subprocess:A,concurrentStreams:Q,encoding:B},{from:Y,binary:J=!0,preserveNewlines:C=!0}={})=>{let X=J||A8.has(B),{subprocessStdout:G,waitReadableDestroy:F}=Xy(A,Y,Q),{readableEncoding:W,readableObjectMode:Z,readableHighWaterMark:U}=Gy(G,X),{read:$,onStdoutDataDone:E}=Fy({subprocessStdout:G,subprocess:A,binary:X,encoding:B,preserveNewlines:C}),K=new wfQ({read:$,destroy:jfQ(Zy.bind(void 0,{subprocessStdout:G,subprocess:A,waitReadableDestroy:F})),highWaterMark:U,objectMode:Z,encoding:W});return Wy({subprocessStdout:G,onStdoutDataDone:E,readable:K,subprocess:A}),K},Xy=(A,Q,B)=>{let Y=L4(A,Q),J=FI(B,Y,"readableDestroy");return{subprocessStdout:Y,waitReadableDestroy:J}},Gy=({readableEncoding:A,readableObjectMode:Q,readableHighWaterMark:B},Y)=>Y?{readableEncoding:A,readableObjectMode:Q,readableHighWaterMark:B}:{readableEncoding:A,readableObjectMode:!0,readableHighWaterMark:ev},Fy=({subprocessStdout:A,subprocess:Q,binary:B,encoding:Y,preserveNewlines:J})=>{let C=N1(),X=az({subprocessStdout:A,subprocess:Q,binary:B,shouldEncode:!B,encoding:Y,preserveNewlines:J});return{read(){OfQ(this,X,C)},onStdoutDataDone:C}},OfQ=async(A,Q,B)=>{try{let{value:Y,done:J}=await Q.next();if(J)B.resolve();else A.push(Y)}catch{}},Wy=async({subprocessStdout:A,onStdoutDataDone:Q,readable:B,subprocess:Y,subprocessStdin:J})=>{try{if(await Cy(A),await Y,await Yy(J),await Q,B.readable)B.push(null)}catch(C){await Yy(J),P0A(B,C)}},Zy=async({subprocessStdout:A,subprocess:Q,waitReadableDestroy:B},Y)=>{if(await O4(B,Q))P0A(A,Y),await tz(Q,Y)},P0A=(A,Q)=>{ez(A,A.readable,Q)};import{Writable as PfQ}from"node:stream";import{callbackify as T0A}from"node:util";var S0A=({subprocess:A,concurrentStreams:Q},{to:B}={})=>{let{subprocessStdin:Y,waitWritableFinal:J,waitWritableDestroy:C}=$y(A,B,Q),X=new PfQ({...Uy(Y,A,J),destroy:T0A(Ky.bind(void 0,{subprocessStdin:Y,subprocess:A,waitWritableFinal:J,waitWritableDestroy:C})),highWaterMark:Y.writableHighWaterMark,objectMode:Y.writableObjectMode});return Ey(Y,X),X},$y=(A,Q,B)=>{let Y=Vz(A,Q),J=FI(B,Y,"writableFinal"),C=FI(B,Y,"writableDestroy");return{subprocessStdin:Y,waitWritableFinal:J,waitWritableDestroy:C}},Uy=(A,Q,B)=>({write:TfQ.bind(void 0,A),final:T0A(SfQ.bind(void 0,A,Q,B))}),TfQ=(A,Q,B,Y)=>{if(A.write(Q,B))Y();else A.once("drain",Y)},SfQ=async(A,Q,B)=>{if(await O4(B,Q)){if(A.writable)A.end();await Q}},Ey=async(A,Q,B)=>{try{if(await Jy(A),Q.writable)Q.end()}catch(Y){await j0A(B),k0A(Q,Y)}},Ky=async({subprocessStdin:A,subprocess:Q,waitWritableFinal:B,waitWritableDestroy:Y},J)=>{if(await O4(B,Q),await O4(Y,Q))k0A(A,J),await tz(Q,J)},k0A=(A,Q)=>{ez(A,A.writable,Q)};import{Duplex as kfQ}from"node:stream";import{callbackify as _fQ}from"node:util";var _0A=({subprocess:A,concurrentStreams:Q,encoding:B},{from:Y,to:J,binary:C=!0,preserveNewlines:X=!0}={})=>{let G=C||A8.has(B),{subprocessStdout:F,waitReadableDestroy:W}=Xy(A,Y,Q),{subprocessStdin:Z,waitWritableFinal:U,waitWritableDestroy:$}=$y(A,J,Q),{readableEncoding:E,readableObjectMode:K,readableHighWaterMark:I}=Gy(F,G),{read:V,onStdoutDataDone:H}=Fy({subprocessStdout:F,subprocess:A,binary:G,encoding:B,preserveNewlines:X}),D=new kfQ({read:V,...Uy(Z,A,U),destroy:_fQ(vfQ.bind(void 0,{subprocessStdout:F,subprocessStdin:Z,subprocess:A,waitReadableDestroy:W,waitWritableFinal:U,waitWritableDestroy:$})),readableHighWaterMark:I,writableHighWaterMark:Z.writableHighWaterMark,readableObjectMode:K,writableObjectMode:Z.writableObjectMode,encoding:E});return Wy({subprocessStdout:F,onStdoutDataDone:H,readable:D,subprocess:A,subprocessStdin:Z}),Ey(Z,D,F),D},vfQ=async({subprocessStdout:A,subprocessStdin:Q,subprocess:B,waitReadableDestroy:Y,waitWritableFinal:J,waitWritableDestroy:C},X)=>{await Promise.all([Zy({subprocessStdout:A,subprocess:B,waitReadableDestroy:Y},X),Ky({subprocessStdin:Q,subprocess:B,waitWritableFinal:J,waitWritableDestroy:C},X)])};var Vy=(A,Q,{from:B,binary:Y=!1,preserveNewlines:J=!1}={})=>{let C=Y||A8.has(Q),X=L4(A,B),G=az({subprocessStdout:X,subprocess:A,binary:C,shouldEncode:!0,encoding:Q,preserveNewlines:J});return yfQ(G,X,A)},yfQ=async function*(A,Q,B){try{yield*A}finally{if(Q.readable)Q.destroy();await B}};var v0A=(A,{encoding:Q})=>{let B=R0A();A.readable=O0A.bind(void 0,{subprocess:A,concurrentStreams:B,encoding:Q}),A.writable=S0A.bind(void 0,{subprocess:A,concurrentStreams:B}),A.duplex=_0A.bind(void 0,{subprocess:A,concurrentStreams:B,encoding:Q}),A.iterable=Vy.bind(void 0,A,Q),A[Symbol.asyncIterator]=Vy.bind(void 0,A,Q,{})};var y0A=(A,Q)=>{for(let[B,Y]of gfQ){let J=Y.value.bind(Q);Reflect.defineProperty(A,B,{...Y,value:J})}},hfQ=(async()=>{})().constructor.prototype,gfQ=["then","catch","finally"].map((A)=>[A,Reflect.getOwnPropertyDescriptor(hfQ,A)]);var h0A=(A,Q,B,Y)=>{let{file:J,commandArguments:C,command:X,escapedCommand:G,startTime:F,verboseInfo:W,options:Z,fileDescriptors:U}=bfQ(A,Q,B),{subprocess:$,promise:E}=ufQ({file:J,commandArguments:C,options:Z,startTime:F,verboseInfo:W,command:X,escapedCommand:G,fileDescriptors:U});return $.pipe=rz.bind(void 0,{source:$,sourcePromise:E,boundOptions:{},createNested:Y}),y0A($,E),L1.set($,{options:Z,fileDescriptors:U}),$},bfQ=(A,Q,B)=>{let{command:Y,escapedCommand:J,startTime:C,verboseInfo:X}=Yz(A,Q,B),{file:G,commandArguments:F,options:W}=jz(A,Q,B),Z=mfQ(W),U=dBA(Z,X);return{file:G,commandArguments:F,command:Y,escapedCommand:J,startTime:C,verboseInfo:X,options:Z,fileDescriptors:U}},mfQ=({timeout:A,signal:Q,...B})=>{if(Q!==void 0)throw TypeError('The "signal" option has been renamed to "cancelSignal" instead.');return{...B,timeoutDuration:A}},ufQ=({file:A,commandArguments:Q,options:B,startTime:Y,verboseInfo:J,command:C,escapedCommand:X,fileDescriptors:G})=>{let F;try{F=ffQ(A,Q,B)}catch(K){return fBA({error:K,command:C,escapedCommand:X,fileDescriptors:G,options:B,startTime:Y,verboseInfo:J})}let W=new AbortController;xfQ(Number.POSITIVE_INFINITY,W.signal);let Z=[...F.stdio];tBA(F,G,W),Y0A(F,B,W);let U={},$=N1();F.kill=UAA.bind(void 0,{kill:F.kill.bind(F),options:B,onInternalError:$,context:U,controller:W}),F.all=H0A(F,B),v0A(F,B),hBA(F,B);let E=dfQ({subprocess:F,options:B,startTime:Y,verboseInfo:J,fileDescriptors:G,originalStreams:Z,command:C,escapedCommand:X,context:U,onInternalError:$,controller:W});return{subprocess:F,promise:E}},dfQ=async({subprocess:A,options:Q,startTime:B,verboseInfo:Y,fileDescriptors:J,originalStreams:C,command:X,escapedCommand:G,context:F,onInternalError:W,controller:Z})=>{let[U,[$,E],K,I,V]=await z0A({subprocess:A,options:Q,context:F,verboseInfo:Y,fileDescriptors:J,originalStreams:C,onInternalError:W,controller:Z});Z.abort(),W.resolve();let H=K.map((z,M)=>l6(z,Q,M)),D=l6(I,Q,"all"),L=cfQ({errorInfo:U,exitCode:$,signal:E,stdio:H,all:D,ipcOutput:V,context:F,options:Q,command:X,escapedCommand:G,startTime:B});return R4(L,Y,Q)},cfQ=({errorInfo:A,exitCode:Q,signal:B,stdio:Y,all:J,ipcOutput:C,context:X,options:G,command:F,escapedCommand:W,startTime:Z})=>("error"in A)?BI({error:A.error,command:F,escapedCommand:W,timedOut:X.terminationReason==="timeout",isCanceled:X.terminationReason==="cancel"||X.terminationReason==="gracefulCancel",isGracefullyCanceled:X.terminationReason==="gracefulCancel",isMaxBuffer:A.error instanceof d6,isForcefullyTerminated:X.isForcefullyTerminated,exitCode:Q,signal:B,stdio:Y,all:J,ipcOutput:C,options:G,startTime:Z,isSync:!1}):hz({command:F,escapedCommand:W,stdio:Y,all:J,ipcOutput:C,options:G,startTime:Z});var A2=(A,Q)=>{let B=Object.fromEntries(Object.entries(Q).map(([Y,J])=>[Y,lfQ(Y,A[Y],J)]));return{...A,...B}},lfQ=(A,Q,B)=>{if(pfQ.has(A)&&BY(Q)&&BY(B))return{...Q,...B};return B},pfQ=new Set(["env",...s_]);var pG=(A,Q,B,Y)=>{let J=(X,G,F)=>pG(X,G,B,F),C=(...X)=>ifQ({mapArguments:A,deepOptions:B,boundOptions:Q,setBoundExeca:Y,createNested:J},...X);if(Y!==void 0)Y(C,J,Q);return C},ifQ=({mapArguments:A,deepOptions:Q={},boundOptions:B={},setBoundExeca:Y,createNested:J},C,...X)=>{if(BY(C))return J(A,A2(B,C),Y);let{file:G,commandArguments:F,options:W,isSync:Z}=nfQ({mapArguments:A,firstArgument:C,nextArguments:X,deepOptions:Q,boundOptions:B});return Z?TBA(G,F,W):h0A(G,F,W,J)},nfQ=({mapArguments:A,firstArgument:Q,nextArguments:B,deepOptions:Y,boundOptions:J})=>{let C=dt(Q)?ct(Q,B):[Q,...B],[X,G,F]=iM(...C),W=A2(A2(Y,J),F),{file:Z=X,commandArguments:U=G,options:$=W,isSync:E=!1}=A({file:X,commandArguments:G,options:W});return{file:Z,commandArguments:U,options:$,isSync:E}};var g0A=({file:A,commandArguments:Q})=>f0A(A,Q),x0A=({file:A,commandArguments:Q})=>({...f0A(A,Q),isSync:!0}),f0A=(A,Q)=>{if(Q.length>0)throw TypeError(`The command and its arguments must be passed as a single string: ${A} ${Q}.`);let[B,...Y]=sfQ(A);return{file:B,commandArguments:Y}},sfQ=(A)=>{if(typeof A!=="string")throw TypeError(`The command must be a string: ${String(A)}.`);let Q=A.trim();if(Q==="")return[];let B=[];for(let Y of Q.split(rfQ)){let J=B.at(-1);if(J&&J.endsWith("\\"))B[B.length-1]=`${J.slice(0,-1)} ${Y}`;else B.push(Y)}return B},rfQ=/ +/g;var b0A=(A,Q,B)=>{A.sync=Q(afQ,B),A.s=A.sync},m0A=({options:A})=>u0A(A),afQ=({options:A})=>({...u0A(A),isSync:!0}),u0A=(A)=>({options:{...ofQ(A),...A}}),ofQ=({input:A,inputFile:Q,stdio:B})=>A===void 0&&Q===void 0&&B===void 0?{stdin:"inherit"}:{},d0A={preferLocal:!0};var WI=pG(()=>({})),h5Y=pG(()=>({isSync:!0})),g5Y=pG(g0A),x5Y=pG(x0A),f5Y=pG(rAA),b5Y=pG(m0A,{},d0A,b0A),{sendMessage:m5Y,getOneMessage:u5Y,getEachMessage:d5Y,getCancelSignal:c5Y}=gBA();var FYA=qA(AYA(),1);var $I=(A)=>{if(typeof A!=="string")throw TypeError("invalid pattern");if(A.length>65536)throw TypeError("pattern is too long")};var CbQ={"[:alnum:]":["\\p{L}\\p{Nl}\\p{Nd}",!0],"[:alpha:]":["\\p{L}\\p{Nl}",!0],"[:ascii:]":["\\x00-\\x7f",!1],"[:blank:]":["\\p{Zs}\\t",!0],"[:cntrl:]":["\\p{Cc}",!0],"[:digit:]":["\\p{Nd}",!0],"[:graph:]":["\\p{Z}\\p{C}",!0,!0],"[:lower:]":["\\p{Ll}",!0],"[:print:]":["\\p{C}",!0],"[:punct:]":["\\p{P}",!0],"[:space:]":["\\p{Z}\\t\\r\\n\\v\\f",!0],"[:upper:]":["\\p{Lu}",!0],"[:word:]":["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}",!0],"[:xdigit:]":["A-Fa-f0-9",!1]},UI=(A)=>A.replace(/[[\]\\-]/g,"\\$&"),XbQ=(A)=>A.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),QYA=(A)=>A.join(""),BYA=(A,Q)=>{let B=Q;if(A.charAt(B)!=="[")throw Error("not in a brace expression");let Y=[],J=[],C=B+1,X=!1,G=!1,F=!1,W=!1,Z=B,U="";A:while(CU)Y.push(UI(U)+"-"+UI(I));else if(I===U)Y.push(UI(I));U="",C++;continue}if(A.startsWith("-]",C+1)){Y.push(UI(I+"-")),C+=2;continue}if(A.startsWith("-",C+1)){U=I,C+=2;continue}Y.push(UI(I)),C++}if(Z{return Q?A.replace(/\[([^\/\\])\]/g,"$1"):A.replace(/((?!\\).|^)\[([^\/\\])\]/g,"$1$2").replace(/\\([^\/])/g,"$1")};var GbQ=new Set(["!","?","+","*","@"]),YYA=(A)=>GbQ.has(A),FbQ="(?!(?:^|/)\\.\\.?(?:$|/))",Q2="(?!\\.)",WbQ=new Set(["[","."]),ZbQ=new Set(["..","."]),$bQ=new Set("().*{}+?[]^$\\!"),UbQ=(A)=>A.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),Ny="[^/]",JYA=Ny+"*?",CYA=Ny+"+?";class tY{type;#A;#Q;#B=!1;#Y=[];#J;#C;#F;#X=!1;#G;#Z;#U=!1;constructor(A,Q,B={}){if(this.type=A,A)this.#Q=!0;if(this.#J=Q,this.#A=this.#J?this.#J.#A:this,this.#G=this.#A===this?B:this.#A.#G,this.#F=this.#A===this?[]:this.#A.#F,A==="!"&&!this.#A.#X)this.#F.push(this);this.#C=this.#J?this.#J.#Y.length:0}get hasMagic(){if(this.#Q!==void 0)return this.#Q;for(let A of this.#Y){if(typeof A==="string")continue;if(A.type||A.hasMagic)return this.#Q=!0}return this.#Q}toString(){if(this.#Z!==void 0)return this.#Z;if(!this.type)return this.#Z=this.#Y.map((A)=>String(A)).join("");else return this.#Z=this.type+"("+this.#Y.map((A)=>String(A)).join("|")+")"}#W(){if(this!==this.#A)throw Error("should only call on root");if(this.#X)return this;this.toString(),this.#X=!0;let A;while(A=this.#F.pop()){if(A.type!=="!")continue;let Q=A,B=Q.#J;while(B){for(let Y=Q.#C+1;!B.type&&Ytypeof Q==="string"?Q:Q.toJSON()):[this.type,...this.#Y.map((Q)=>Q.toJSON())];if(this.isStart()&&!this.type)A.unshift([]);if(this.isEnd()&&(this===this.#A||this.#A.#X&&this.#J?.type==="!"))A.push({});return A}isStart(){if(this.#A===this)return!0;if(!this.#J?.isStart())return!1;if(this.#C===0)return!0;let A=this.#J;for(let Q=0;Q{let[E,K,I,V]=typeof $==="string"?tY.#I($,this.#Q,G):$.toRegExpSource(A);return this.#Q=this.#Q||I,this.#B=this.#B||V,E}).join(""),W="";if(this.isStart()){if(typeof this.#Y[0]==="string"){if(!(this.#Y.length===1&&ZbQ.has(this.#Y[0]))){let E=WbQ,K=Q&&E.has(F.charAt(0))||F.startsWith("\\.")&&E.has(F.charAt(2))||F.startsWith("\\.\\.")&&E.has(F.charAt(4)),I=!Q&&!A&&E.has(F.charAt(0));W=K?FbQ:I?Q2:""}}}let Z="";if(this.isEnd()&&this.#A.#X&&this.#J?.type==="!")Z="(?:$|\\/)";return[W+F+Z,VC(F),this.#Q=!!this.#Q,this.#B]}let B=this.type==="*"||this.type==="+",Y=this.type==="!"?"(?:(?!(?:":"(?:",J=this.#V(Q);if(this.isStart()&&this.isEnd()&&!J&&this.type!=="!"){let G=this.toString();return this.#Y=[G],this.type=null,this.#Q=void 0,[G,VC(this.toString()),!1,!1]}let C=!B||A||Q||!Q2?"":this.#V(!0);if(C===J)C="";if(C)J=`(?:${J})(?:${C})*?`;let X="";if(this.type==="!"&&this.#U)X=(this.isStart()&&!Q?Q2:"")+CYA;else{let G=this.type==="!"?"))"+(this.isStart()&&!Q&&!A?Q2:"")+JYA+")":this.type==="@"?")":this.type==="?"?")?":this.type==="+"&&C?")":this.type==="*"&&C?")?":`)${this.type}`;X=Y+J+G}return[X,VC(J),this.#Q=!!this.#Q,this.#B]}#V(A){return this.#Y.map((Q)=>{if(typeof Q==="string")throw Error("string type in extglob ast??");let[B,Y,J,C]=Q.toRegExpSource(A);return this.#B=this.#B||C,B}).filter((Q)=>!(this.isStart()&&this.isEnd())||!!Q).join("|")}static#I(A,Q,B=!1){let Y=!1,J="",C=!1;for(let X=0;X{return Q?A.replace(/[?*()[\]]/g,"[$&]"):A.replace(/[?*()[\]\\]/g,"\\$&")};var mJ=(A,Q,B={})=>{if($I(Q),!B.nocomment&&Q.charAt(0)==="#")return!1;return new r8(Q,B).match(A)},EbQ=/^\*+([^+@!?\*\[\(]*)$/,KbQ=(A)=>(Q)=>!Q.startsWith(".")&&Q.endsWith(A),VbQ=(A)=>(Q)=>Q.endsWith(A),IbQ=(A)=>{return A=A.toLowerCase(),(Q)=>!Q.startsWith(".")&&Q.toLowerCase().endsWith(A)},HbQ=(A)=>{return A=A.toLowerCase(),(Q)=>Q.toLowerCase().endsWith(A)},DbQ=/^\*+\.\*+$/,NbQ=(A)=>!A.startsWith(".")&&A.includes("."),LbQ=(A)=>A!=="."&&A!==".."&&A.includes("."),qbQ=/^\.\*+$/,MbQ=(A)=>A!=="."&&A!==".."&&A.startsWith("."),zbQ=/^\*+$/,RbQ=(A)=>A.length!==0&&!A.startsWith("."),wbQ=(A)=>A.length!==0&&A!=="."&&A!=="..",jbQ=/^\?+([^+@!?\*\[\(]*)?$/,ObQ=([A,Q=""])=>{let B=WYA([A]);if(!Q)return B;return Q=Q.toLowerCase(),(Y)=>B(Y)&&Y.toLowerCase().endsWith(Q)},PbQ=([A,Q=""])=>{let B=ZYA([A]);if(!Q)return B;return Q=Q.toLowerCase(),(Y)=>B(Y)&&Y.toLowerCase().endsWith(Q)},TbQ=([A,Q=""])=>{let B=ZYA([A]);return!Q?B:(Y)=>B(Y)&&Y.endsWith(Q)},SbQ=([A,Q=""])=>{let B=WYA([A]);return!Q?B:(Y)=>B(Y)&&Y.endsWith(Q)},WYA=([A])=>{let Q=A.length;return(B)=>B.length===Q&&!B.startsWith(".")},ZYA=([A])=>{let Q=A.length;return(B)=>B.length===Q&&B!=="."&&B!==".."},$YA=typeof process==="object"&&process?typeof process.env==="object"&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:"posix",XYA={win32:{sep:"\\"},posix:{sep:"/"}},kbQ=$YA==="win32"?XYA.win32.sep:XYA.posix.sep;mJ.sep=kbQ;var eY=Symbol("globstar **");mJ.GLOBSTAR=eY;var _bQ="[^/]",vbQ=_bQ+"*?",ybQ="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",hbQ="(?:(?!(?:\\/|^)\\.).)*?",gbQ=(A,Q={})=>(B)=>mJ(B,A,Q);mJ.filter=gbQ;var s8=(A,Q={})=>Object.assign({},A,Q),xbQ=(A)=>{if(!A||typeof A!=="object"||!Object.keys(A).length)return mJ;let Q=mJ;return Object.assign((Y,J,C={})=>Q(Y,J,s8(A,C)),{Minimatch:class extends Q.Minimatch{constructor(J,C={}){super(J,s8(A,C))}static defaults(J){return Q.defaults(s8(A,J)).Minimatch}},AST:class extends Q.AST{constructor(J,C,X={}){super(J,C,s8(A,X))}static fromGlob(J,C={}){return Q.AST.fromGlob(J,s8(A,C))}},unescape:(Y,J={})=>Q.unescape(Y,s8(A,J)),escape:(Y,J={})=>Q.escape(Y,s8(A,J)),filter:(Y,J={})=>Q.filter(Y,s8(A,J)),defaults:(Y)=>Q.defaults(s8(A,Y)),makeRe:(Y,J={})=>Q.makeRe(Y,s8(A,J)),braceExpand:(Y,J={})=>Q.braceExpand(Y,s8(A,J)),match:(Y,J,C={})=>Q.match(Y,J,s8(A,C)),sep:Q.sep,GLOBSTAR:eY})};mJ.defaults=xbQ;var UYA=(A,Q={})=>{if($I(A),Q.nobrace||!/\{(?:(?!\{).)*\}/.test(A))return[A];return FYA.default(A)};mJ.braceExpand=UYA;var fbQ=(A,Q={})=>new r8(A,Q).makeRe();mJ.makeRe=fbQ;var bbQ=(A,Q,B={})=>{let Y=new r8(Q,B);if(A=A.filter((J)=>Y.match(J)),Y.options.nonull&&!A.length)A.push(Q);return A};mJ.match=bbQ;var GYA=/[?*]|[+@!]\(.*?\)|\[|\]/,mbQ=(A)=>A.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&");class r8{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;regexp;constructor(A,Q={}){if($I(A),Q=Q||{},this.options=Q,this.pattern=A,this.platform=Q.platform||$YA,this.isWindows=this.platform==="win32",this.windowsPathsNoEscape=!!Q.windowsPathsNoEscape||Q.allowWindowsEscape===!1,this.windowsPathsNoEscape)this.pattern=this.pattern.replace(/\\/g,"/");this.preserveMultipleSlashes=!!Q.preserveMultipleSlashes,this.regexp=null,this.negate=!1,this.nonegate=!!Q.nonegate,this.comment=!1,this.empty=!1,this.partial=!!Q.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=Q.windowsNoMagicRoot!==void 0?Q.windowsNoMagicRoot:!!(this.isWindows&&this.nocase),this.globSet=[],this.globParts=[],this.set=[],this.make()}hasMagic(){if(this.options.magicalBraces&&this.set.length>1)return!0;for(let A of this.set)for(let Q of A)if(typeof Q!=="string")return!0;return!1}debug(...A){}make(){let A=this.pattern,Q=this.options;if(!Q.nocomment&&A.charAt(0)==="#"){this.comment=!0;return}if(!A){this.empty=!0;return}if(this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],Q.debug)this.debug=(...J)=>console.error(...J);this.debug(this.pattern,this.globSet);let B=this.globSet.map((J)=>this.slashSplit(J));this.globParts=this.preprocess(B),this.debug(this.pattern,this.globParts);let Y=this.globParts.map((J,C,X)=>{if(this.isWindows&&this.windowsNoMagicRoot){let G=J[0]===""&&J[1]===""&&(J[2]==="?"||!GYA.test(J[2]))&&!GYA.test(J[3]),F=/^[a-z]:/i.test(J[0]);if(G)return[...J.slice(0,4),...J.slice(4).map((W)=>this.parse(W))];else if(F)return[J[0],...J.slice(1).map((W)=>this.parse(W))]}return J.map((G)=>this.parse(G))});if(this.debug(this.pattern,Y),this.set=Y.filter((J)=>J.indexOf(!1)===-1),this.isWindows)for(let J=0;J=2)A=this.firstPhasePreProcess(A),A=this.secondPhasePreProcess(A);else if(Q>=1)A=this.levelOneOptimize(A);else A=this.adjascentGlobstarOptimize(A);return A}adjascentGlobstarOptimize(A){return A.map((Q)=>{let B=-1;while((B=Q.indexOf("**",B+1))!==-1){let Y=B;while(Q[Y+1]==="**")Y++;if(Y!==B)Q.splice(B,Y-B)}return Q})}levelOneOptimize(A){return A.map((Q)=>{return Q=Q.reduce((B,Y)=>{let J=B[B.length-1];if(Y==="**"&&J==="**")return B;if(Y===".."){if(J&&J!==".."&&J!=="."&&J!=="**")return B.pop(),B}return B.push(Y),B},[]),Q.length===0?[""]:Q})}levelTwoFileOptimize(A){if(!Array.isArray(A))A=this.slashSplit(A);let Q=!1;do{if(Q=!1,!this.preserveMultipleSlashes){for(let Y=1;YY)B.splice(Y+1,C-Y);let X=B[Y+1],G=B[Y+2],F=B[Y+3];if(X!=="..")continue;if(!G||G==="."||G===".."||!F||F==="."||F==="..")continue;Q=!0,B.splice(Y,1);let W=B.slice(0);W[Y]="**",A.push(W),Y--}if(!this.preserveMultipleSlashes){for(let C=1;CQ.length)}partsMatch(A,Q,B=!1){let Y=0,J=0,C=[],X="";while(YD)Q=Q.slice(L);else if(D>L)A=A.slice(D)}}}let{optimizationLevel:J=1}=this.options;if(J>=2)A=this.levelTwoFileOptimize(A);this.debug("matchOne",this,{file:A,pattern:Q}),this.debug("matchOne",A.length,Q.length);for(var C=0,X=0,G=A.length,F=Q.length;C{if(B)return;if(A)return{transform:NxQ.bind(void 0,new TextEncoder)};let Y=new DxQ(Q);return{transform:LxQ.bind(void 0,Y),final:qxQ.bind(void 0,Y)}},NxQ=function*(A,Q){if(HxQ.isBuffer(Q))yield rX(Q);else if(typeof Q==="string")yield A.encode(Q);else yield Q},LxQ=function*(A,Q){yield TY(Q)?A.write(Q):Q},qxQ=function*(A){let Q=A.end();if(Q!=="")yield Q};import{callbackify as A0A}from"node:util";var $y=A0A(async(A,Q,B,Y)=>{Q.currentIterable=A(...B);try{for await(let J of Q.currentIterable)Y.push(J)}finally{delete Q.currentIterable}}),$2=async function*(A,Q,B){if(B===Q.length){yield A;return}let{transform:Y=zxQ}=Q[B];for await(let J of Y(A))yield*$2(J,Q,B+1)},Q0A=async function*(A){for(let[Q,{final:B}]of Object.entries(A))yield*MxQ(B,Number(Q),A)},MxQ=async function*(A,Q,B){if(A===void 0)return;for await(let Y of A())yield*$2(Y,B,Q+1)},B0A=A0A(async({currentIterable:A},Q)=>{if(A!==void 0){await(Q?A.throw(Q):A.return());return}if(Q)throw Q}),zxQ=function*(A){yield A};var Uy=(A,Q,B,Y)=>{try{for(let J of A(...Q))B.push(J);Y()}catch(J){Y(J)}},Y0A=(A,Q)=>[...Q.flatMap((B)=>[...kF(B,A,0)]),...VI(A)],kF=function*(A,Q,B){if(B===Q.length){yield A;return}let{transform:Y=wxQ}=Q[B];for(let J of Y(A))yield*kF(J,Q,B+1)},VI=function*(A){for(let[Q,{final:B}]of Object.entries(A))yield*RxQ(B,Number(Q),A)},RxQ=function*(A,Q,B){if(A===void 0)return;for(let Y of A())yield*kF(Y,B,Q+1)},wxQ=function*(A){yield A};var Ey=({value:A,value:{transform:Q,final:B,writableObjectMode:Y,readableObjectMode:J},optionName:C},{encoding:X})=>{let G={},W=C0A(A,X,C),F=SF(Q),Z=SF(B),U=F?$y.bind(void 0,$2,G):Uy.bind(void 0,kF),$=F||Z?$y.bind(void 0,Q0A,G):Uy.bind(void 0,VI),E=F||Z?B0A.bind(void 0,G):void 0;return{stream:new jxQ({writableObjectMode:Y,writableHighWaterMark:J0A(Y),readableObjectMode:J,readableHighWaterMark:J0A(J),transform(I,V,H){U([I,W,0],this,H)},flush(I){$([W],this,I)},destroy:E})}},U2=(A,Q,B,Y)=>{let J=Q.filter(({type:X})=>X==="generator"),C=Y?J.reverse():J;for(let{value:X,optionName:G}of C){let W=C0A(X,B,G);A=Y0A(W,A)}return A},C0A=({transform:A,final:Q,binary:B,writableObjectMode:Y,readableObjectMode:J,preserveNewlines:C},X,G)=>{let W={};return[{transform:oBA(Y,G)},Z2(B,X,Y),F2(B,C,Y,W),{transform:A,final:Q},{transform:tBA(J,G)},aBA({binary:B,preserveNewlines:C,readableObjectMode:J,state:W})].filter(Boolean)};var X0A=(A,Q)=>{for(let B of OxQ(A))PxQ(A,B,Q)},OxQ=(A)=>new Set(Object.entries(A).filter(([,{direction:Q}])=>Q==="input").map(([Q])=>Number(Q))),PxQ=(A,Q,B)=>{let{stdioItems:Y}=A[Q],J=Y.filter(({contents:G})=>G!==void 0);if(J.length===0)return;if(Q!==0){let[{type:G,optionName:W}]=J;throw TypeError(`Only the \`stdin\` option, not \`${W}\`, can be ${tG[G]} with synchronous methods.`)}let X=J.map(({contents:G})=>G).map((G)=>TxQ(G,Y));B.input=GI(X)},TxQ=(A,Q)=>{let B=U2(A,Q,"utf8",!0);return SxQ(B),GI(B)},SxQ=(A)=>{let Q=A.find((B)=>typeof B!=="string"&&!TY(B));if(Q!==void 0)throw TypeError(`The \`stdin\` option is invalid: when passing objects as input, a transform must be used to serialize them to strings or Uint8Arrays: ${Q}.`)};import{writeFileSync as yxQ,appendFileSync as gxQ}from"node:fs";var E2=({stdioItems:A,encoding:Q,verboseInfo:B,fdNumber:Y})=>Y!=="all"&&R4(B,Y)&&!G8.has(Q)&&kxQ(Y)&&(A.some(({type:J,value:C})=>J==="native"&&_xQ.has(C))||A.every(({type:J})=>B5.has(J))),kxQ=(A)=>A===1||A===2,_xQ=new Set(["pipe","overlapped"]),G0A=async(A,Q,B,Y)=>{for await(let J of A)if(!vxQ(Q))F0A(J,B,Y)},W0A=(A,Q,B)=>{for(let Y of A)F0A(Y,Q,B)},vxQ=(A)=>A._readableState.pipes.length>0,F0A=(A,Q,B)=>{let Y=Rz(A);j1({type:"output",verboseMessage:Y,fdNumber:Q,verboseInfo:B})};var Z0A=({fileDescriptors:A,syncResult:{output:Q},options:B,isMaxBuffer:Y,verboseInfo:J})=>{if(Q===null)return{output:Array.from({length:3})};let C={},X=new Set([]);return{output:Q.map((W,F)=>hxQ({result:W,fileDescriptors:A,fdNumber:F,state:C,outputFiles:X,isMaxBuffer:Y,verboseInfo:J},B)),...C}},hxQ=({result:A,fileDescriptors:Q,fdNumber:B,state:Y,outputFiles:J,isMaxBuffer:C,verboseInfo:X},{buffer:G,encoding:W,lines:F,stripFinalNewline:Z,maxBuffer:U})=>{if(A===null)return;let $=$BA(A,C,U),E=rX($),{stdioItems:K,objectMode:I}=Q[B],V=xxQ([E],K,W,Y),{serializedResult:H,finalResult:D=H}=fxQ({chunks:V,objectMode:I,encoding:W,lines:F,stripFinalNewline:Z,fdNumber:B});bxQ({serializedResult:H,fdNumber:B,state:Y,verboseInfo:X,encoding:W,stdioItems:K,objectMode:I});let L=G[B]?D:void 0;try{if(Y.error===void 0)mxQ(H,K,J);return L}catch(z){return Y.error=z,L}},xxQ=(A,Q,B,Y)=>{try{return U2(A,Q,B,!1)}catch(J){return Y.error=J,A}},fxQ=({chunks:A,objectMode:Q,encoding:B,lines:Y,stripFinalNewline:J,fdNumber:C})=>{if(Q)return{serializedResult:A};if(B==="buffer")return{serializedResult:GI(A)};let X=we(A,B);if(Y[C])return{serializedResult:X,finalResult:Zy(X,!J[C],Q)};return{serializedResult:X}},bxQ=({serializedResult:A,fdNumber:Q,state:B,verboseInfo:Y,encoding:J,stdioItems:C,objectMode:X})=>{if(!E2({stdioItems:C,encoding:J,verboseInfo:Y,fdNumber:Q}))return;let G=Zy(A,!1,X);try{W0A(G,Q,Y)}catch(W){B.error??=W}},mxQ=(A,Q,B)=>{for(let{path:Y,append:J}of Q.filter(({type:C})=>G2.has(C))){let C=typeof Y==="string"?Y:Y.toString();if(J||B.has(C))gxQ(Y,A);else B.add(C),yxQ(Y,A)}};var $0A=([,A,Q],B)=>{if(!B.all)return;if(A===void 0)return Q;if(Q===void 0)return A;if(Array.isArray(A))return Array.isArray(Q)?[...A,...Q]:[...A,eX(Q,B,"all")];if(Array.isArray(Q))return[eX(A,B,"all"),...Q];if(TY(A)&&TY(Q))return Nv([A,Q]);return`${A}${Q}`};import{once as Ky}from"node:events";var U0A=async(A,Q)=>{let[B,Y]=await uxQ(A);return Q.isForcefullyTerminated??=!1,[B,Y]},uxQ=async(A)=>{let[Q,B]=await Promise.allSettled([Ky(A,"spawn"),Ky(A,"exit")]);if(Q.status==="rejected")return[];return B.status==="rejected"?E0A(A):B.value},E0A=async(A)=>{try{return await Ky(A,"exit")}catch{return E0A(A)}},K0A=async(A)=>{let[Q,B]=await A;if(!dxQ(Q,B)&&Vy(Q,B))throw new O1;return[Q,B]},dxQ=(A,Q)=>A===void 0&&Q===void 0,Vy=(A,Q)=>A!==0||Q!==null;var V0A=({error:A,status:Q,signal:B,output:Y},{maxBuffer:J})=>{let C=cxQ(A,Q,B),X=C?.code==="ETIMEDOUT",G=ZBA(C,Y,J);return{resultError:C,exitCode:Q,signal:B,timedOut:X,isMaxBuffer:G}},cxQ=(A,Q,B)=>{if(A!==void 0)return A;return Vy(Q,B)?new O1:void 0};var I0A=(A,Q,B)=>{let{file:Y,commandArguments:J,command:C,escapedCommand:X,startTime:G,verboseInfo:W,options:F,fileDescriptors:Z}=pxQ(A,Q,B),U=sxQ({file:Y,commandArguments:J,options:F,command:C,escapedCommand:X,verboseInfo:W,fileDescriptors:Z,startTime:G});return v4(U,W,F)},pxQ=(A,Q,B)=>{let{command:Y,escapedCommand:J,startTime:C,verboseInfo:X}=jz(A,Q,B),G=ixQ(B),{file:W,commandArguments:F,options:Z}=rz(A,Q,G);nxQ(Z);let U=iBA(Z,X);return{file:W,commandArguments:F,command:Y,escapedCommand:J,startTime:C,verboseInfo:X,options:Z,fileDescriptors:U}},ixQ=(A)=>A.node&&!A.ipc?{...A,ipc:!1}:A,nxQ=({ipc:A,ipcInput:Q,detached:B,cancelSignal:Y})=>{if(Q)K2("ipcInput");if(A)K2("ipc: true");if(B)K2("detached: true");if(Y)K2("cancelSignal")},K2=(A)=>{throw TypeError(`The "${A}" option cannot be used with synchronous methods.`)},sxQ=({file:A,commandArguments:Q,options:B,command:Y,escapedCommand:J,verboseInfo:C,fileDescriptors:X,startTime:G})=>{let W=rxQ({file:A,commandArguments:Q,options:B,command:Y,escapedCommand:J,fileDescriptors:X,startTime:G});if(W.failed)return W;let{resultError:F,exitCode:Z,signal:U,timedOut:$,isMaxBuffer:E}=V0A(W,B),{output:K,error:I=F}=Z0A({fileDescriptors:X,syncResult:W,options:B,isMaxBuffer:E,verboseInfo:C}),V=K.map((D,L)=>eX(D,B,L)),H=eX($0A(K,B),B,"all");return oxQ({error:I,exitCode:Z,signal:U,timedOut:$,isMaxBuffer:E,stdio:V,all:H,options:B,command:Y,escapedCommand:J,startTime:G})},rxQ=({file:A,commandArguments:Q,options:B,command:Y,escapedCommand:J,fileDescriptors:C,startTime:X})=>{try{X0A(C,B);let G=axQ(B);return lxQ(A,Q,G)}catch(G){return _4({error:G,command:Y,escapedCommand:J,fileDescriptors:C,options:B,startTime:X,isSync:!0})}},axQ=({encoding:A,maxBuffer:Q,...B})=>({...B,encoding:"buffer",maxBuffer:Y2(Q)}),oxQ=({error:A,exitCode:Q,signal:B,timedOut:Y,isMaxBuffer:J,stdio:C,all:X,options:G,command:W,escapedCommand:F,startTime:Z})=>A===void 0?J2({command:W,escapedCommand:F,stdio:C,all:X,ipcOutput:[],options:G,startTime:Z}):KI({error:A,command:W,escapedCommand:F,timedOut:Y,isCanceled:!1,isGracefullyCanceled:!1,isMaxBuffer:J,isForcefullyTerminated:!1,exitCode:Q,signal:B,stdio:C,all:X,ipcOutput:[],options:G,startTime:Z,isSync:!0});import{setMaxListeners as fbQ}from"node:events";import{spawn as bbQ}from"node:child_process";import q0A from"node:process";import{once as Iy,on as txQ}from"node:events";var H0A=({anyProcess:A,channel:Q,isSubprocess:B,ipc:Y},{reference:J=!0,filter:C}={})=>{return O4({methodName:"getOneMessage",isSubprocess:B,ipc:Y,isConnected:cz(A)}),exQ({anyProcess:A,channel:Q,isSubprocess:B,filter:C,reference:J})},exQ=async({anyProcess:A,channel:Q,isSubprocess:B,filter:Y,reference:J})=>{bz(Q,J);let C=oG(A,Q,B),X=new AbortController;try{return await Promise.race([AfQ(C,Y,X),QfQ(C,B,X),BfQ(C,B,X)])}catch(G){throw P4(A),G}finally{X.abort(),mz(Q,J)}},AfQ=async(A,Q,{signal:B})=>{if(Q===void 0){let[Y]=await Iy(A,"message",{signal:B});return Y}for await(let[Y]of txQ(A,"message",{signal:B}))if(Q(Y))return Y},QfQ=async(A,Q,{signal:B})=>{await Iy(A,"disconnect",{signal:B}),BQA(Q)},BfQ=async(A,Q,{signal:B})=>{let[Y]=await Iy(A,"strict:error",{signal:B});throw hz(Y,Q)};import{once as N0A,on as YfQ}from"node:events";var L0A=({anyProcess:A,channel:Q,isSubprocess:B,ipc:Y},{reference:J=!0}={})=>Hy({anyProcess:A,channel:Q,isSubprocess:B,ipc:Y,shouldAwait:!B,reference:J}),Hy=({anyProcess:A,channel:Q,isSubprocess:B,ipc:Y,shouldAwait:J,reference:C})=>{O4({methodName:"getEachMessage",isSubprocess:B,ipc:Y,isConnected:cz(A)}),bz(Q,C);let X=oG(A,Q,B),G=new AbortController,W={};return JfQ(A,X,G),CfQ({ipcEmitter:X,isSubprocess:B,controller:G,state:W}),XfQ({anyProcess:A,channel:Q,ipcEmitter:X,isSubprocess:B,shouldAwait:J,controller:G,state:W,reference:C})},JfQ=async(A,Q,B)=>{try{await N0A(Q,"disconnect",{signal:B.signal}),B.abort()}catch{}},CfQ=async({ipcEmitter:A,isSubprocess:Q,controller:B,state:Y})=>{try{let[J]=await N0A(A,"strict:error",{signal:B.signal});Y.error=hz(J,Q),B.abort()}catch{}},XfQ=async function*({anyProcess:A,channel:Q,ipcEmitter:B,isSubprocess:Y,shouldAwait:J,controller:C,state:X,reference:G}){try{for await(let[W]of YfQ(B,"message",{signal:C.signal}))D0A(X),yield W}catch{D0A(X)}finally{if(C.abort(),mz(Q,G),!Y)P4(A);if(J)await A}},D0A=({error:A})=>{if(A)throw A};var M0A=(A,{ipc:Q})=>{Object.assign(A,R0A(A,!1,Q))},z0A=()=>{let A=q0A,Q=!0,B=q0A.channel!==void 0;return{...R0A(A,!0,B),getCancelSignal:TQA.bind(void 0,{anyProcess:A,channel:A.channel,isSubprocess:!0,ipc:B})}},R0A=(A,Q,B)=>({sendMessage:nz.bind(void 0,{anyProcess:A,channel:A.channel,isSubprocess:Q,ipc:B}),getOneMessage:H0A.bind(void 0,{anyProcess:A,channel:A.channel,isSubprocess:Q,ipc:B}),getEachMessage:L0A.bind(void 0,{anyProcess:A,channel:A.channel,isSubprocess:Q,ipc:B})});import{ChildProcess as GfQ}from"node:child_process";import{PassThrough as WfQ,Readable as FfQ,Writable as ZfQ,Duplex as $fQ}from"node:stream";var w0A=({error:A,command:Q,escapedCommand:B,fileDescriptors:Y,options:J,startTime:C,verboseInfo:X})=>{Gy(Y);let G=new GfQ;UfQ(G,Y),Object.assign(G,{readable:EfQ,writable:KfQ,duplex:VfQ});let W=_4({error:A,command:Q,escapedCommand:B,fileDescriptors:Y,options:J,startTime:C,isSync:!1}),F=IfQ(W,X,J);return{subprocess:G,promise:F}},UfQ=(A,Q)=>{let B=II(),Y=II(),J=II(),C=Array.from({length:Q.length-3},II),X=II(),G=[B,Y,J,...C];Object.assign(A,{stdin:B,stdout:Y,stderr:J,all:X,stdio:G})},II=()=>{let A=new WfQ;return A.end(),A},EfQ=()=>new FfQ({read(){}}),KfQ=()=>new ZfQ({write(){}}),VfQ=()=>new $fQ({read(){},write(){}}),IfQ=async(A,Q,B)=>v4(A,Q,B);import{createReadStream as j0A,createWriteStream as O0A}from"node:fs";import{Buffer as HfQ}from"node:buffer";import{Readable as HI,Writable as DfQ,Duplex as NfQ}from"node:stream";var T0A=(A,Q)=>W2(LfQ,A,Q,!1),DI=({type:A,optionName:Q})=>{throw TypeError(`The \`${Q}\` option cannot be ${tG[A]}.`)},P0A={fileNumber:DI,generator:Ey,asyncGenerator:Ey,nodeStream:({value:A})=>({stream:A}),webTransform({value:{transform:A,writableObjectMode:Q,readableObjectMode:B}}){let Y=Q||B;return{stream:NfQ.fromWeb(A,{objectMode:Y})}},duplex:({value:{transform:A}})=>({stream:A}),native(){}},LfQ={input:{...P0A,fileUrl:({value:A})=>({stream:j0A(A)}),filePath:({value:{file:A}})=>({stream:j0A(A)}),webStream:({value:A})=>({stream:HI.fromWeb(A)}),iterable:({value:A})=>({stream:HI.from(A)}),asyncIterable:({value:A})=>({stream:HI.from(A)}),string:({value:A})=>({stream:HI.from(A)}),uint8Array:({value:A})=>({stream:HI.from(HfQ.from(A))})},output:{...P0A,fileUrl:({value:A})=>({stream:O0A(A)}),filePath:({value:{file:A,append:Q}})=>({stream:O0A(A,Q?{flags:"a"}:{})}),webStream:({value:A})=>({stream:DfQ.fromWeb(A)}),iterable:DI,asyncIterable:DI,string:DI,uint8Array:DI}};import{on as qfQ,once as S0A}from"node:events";import{PassThrough as MfQ,getDefaultHighWaterMark as zfQ}from"node:stream";import{finished as v0A}from"node:stream/promises";function _F(A){if(!Array.isArray(A))throw TypeError(`Expected an array, got \`${typeof A}\`.`);for(let J of A)Dy(J);let Q=A.some(({readableObjectMode:J})=>J),B=RfQ(A,Q),Y=new y0A({objectMode:Q,writableHighWaterMark:B,readableHighWaterMark:B});for(let J of A)Y.add(J);return Y}var RfQ=(A,Q)=>{if(A.length===0)return zfQ(Q);let B=A.filter(({readableObjectMode:Y})=>Y===Q).map(({readableHighWaterMark:Y})=>Y);return Math.max(...B)};class y0A extends MfQ{#A=new Set([]);#Q=new Set([]);#B=new Set([]);#Y;#J=Symbol("unpipe");#C=new WeakMap;add(A){if(Dy(A),this.#A.has(A))return;this.#A.add(A),this.#Y??=wfQ(this,this.#A,this.#J);let Q=PfQ({passThroughStream:this,stream:A,streams:this.#A,ended:this.#Q,aborted:this.#B,onFinished:this.#Y,unpipeEvent:this.#J});this.#C.set(A,Q),A.pipe(this,{end:!1})}async remove(A){if(Dy(A),!this.#A.has(A))return!1;let Q=this.#C.get(A);if(Q===void 0)return!1;return this.#C.delete(A),A.unpipe(this),await Q,!0}}var wfQ=async(A,Q,B)=>{V2(A,k0A);let Y=new AbortController;try{await Promise.race([jfQ(A,Y),OfQ(A,Q,B,Y)])}finally{Y.abort(),V2(A,-k0A)}},jfQ=async(A,{signal:Q})=>{try{await v0A(A,{signal:Q,cleanup:!0})}catch(B){throw g0A(A,B),B}},OfQ=async(A,Q,B,{signal:Y})=>{for await(let[J]of qfQ(A,"unpipe",{signal:Y}))if(Q.has(J))J.emit(B)},Dy=(A)=>{if(typeof A?.pipe!=="function")throw TypeError(`Expected a readable stream, got: \`${typeof A}\`.`)},PfQ=async({passThroughStream:A,stream:Q,streams:B,ended:Y,aborted:J,onFinished:C,unpipeEvent:X})=>{V2(A,_0A);let G=new AbortController;try{await Promise.race([TfQ(C,Q,G),SfQ({passThroughStream:A,stream:Q,streams:B,ended:Y,aborted:J,controller:G}),kfQ({stream:Q,streams:B,ended:Y,aborted:J,unpipeEvent:X,controller:G})])}finally{G.abort(),V2(A,-_0A)}if(B.size>0&&B.size===Y.size+J.size)if(Y.size===0&&J.size>0)Ny(A);else _fQ(A)},TfQ=async(A,Q,{signal:B})=>{try{if(await A,!B.aborted)Ny(Q)}catch(Y){if(!B.aborted)g0A(Q,Y)}},SfQ=async({passThroughStream:A,stream:Q,streams:B,ended:Y,aborted:J,controller:{signal:C}})=>{try{if(await v0A(Q,{signal:C,cleanup:!0,readable:!0,writable:!1}),B.has(Q))Y.add(Q)}catch(X){if(C.aborted||!B.has(Q))return;if(h0A(X))J.add(Q);else x0A(A,X)}},kfQ=async({stream:A,streams:Q,ended:B,aborted:Y,unpipeEvent:J,controller:{signal:C}})=>{if(await S0A(A,J,{signal:C}),!A.readable)return S0A(C,"abort",{signal:C});Q.delete(A),B.delete(A),Y.delete(A)},_fQ=(A)=>{if(A.writable)A.end()},g0A=(A,Q)=>{if(h0A(Q))Ny(A);else x0A(A,Q)},h0A=(A)=>A?.code==="ERR_STREAM_PREMATURE_CLOSE",Ny=(A)=>{if(A.readable||A.writable)A.destroy()},x0A=(A,Q)=>{if(!A.destroyed)A.once("error",vfQ),A.destroy(Q)},vfQ=()=>{},V2=(A,Q)=>{let B=A.getMaxListeners();if(B!==0&&B!==Number.POSITIVE_INFINITY)A.setMaxListeners(B+Q)},k0A=2,_0A=1;import{finished as f0A}from"node:stream/promises";var g4=(A,Q)=>{A.pipe(Q),yfQ(A,Q),gfQ(A,Q)},yfQ=async(A,Q)=>{if(qC(A)||qC(Q))return;try{await f0A(A,{cleanup:!0,readable:!0,writable:!1})}catch{}Ly(Q)},Ly=(A)=>{if(A.writable)A.end()},gfQ=async(A,Q)=>{if(qC(A)||qC(Q))return;try{await f0A(Q,{cleanup:!0,readable:!1,writable:!0})}catch{}qy(A)},qy=(A)=>{if(A.readable)A.destroy()};var b0A=(A,Q,B)=>{let Y=new Map;for(let[J,{stdioItems:C,direction:X}]of Object.entries(Q)){for(let{stream:G}of C.filter(({type:W})=>B5.has(W)))hfQ(A,G,X,J);for(let{stream:G}of C.filter(({type:W})=>!B5.has(W)))ffQ({subprocess:A,stream:G,direction:X,fdNumber:J,pipeGroups:Y,controller:B})}for(let[J,C]of Y.entries()){let X=C.length===1?C[0]:_F(C);g4(X,J)}},hfQ=(A,Q,B,Y)=>{if(B==="output")g4(A.stdio[Y],Q);else g4(Q,A.stdio[Y]);let J=xfQ[Y];if(J!==void 0)A[J]=Q;A.stdio[Y]=Q},xfQ=["stdin","stdout","stderr"],ffQ=({subprocess:A,stream:Q,direction:B,fdNumber:Y,pipeGroups:J,controller:C})=>{if(Q===void 0)return;bfQ(Q,C);let[X,G]=B==="output"?[Q,A.stdio[Y]]:[A.stdio[Y],Q],W=J.get(X)??[];J.set(X,[...W,G])},bfQ=(A,{signal:Q})=>{if(qC(A))PF(A,mfQ,Q)},mfQ=2;import{addAbortListener as cfQ}from"node:events";var vF=[];vF.push("SIGHUP","SIGINT","SIGTERM");if(process.platform!=="win32")vF.push("SIGALRM","SIGABRT","SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");if(process.platform==="linux")vF.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT");var I2=(A)=>!!A&&typeof A==="object"&&typeof A.removeListener==="function"&&typeof A.emit==="function"&&typeof A.reallyExit==="function"&&typeof A.listeners==="function"&&typeof A.kill==="function"&&typeof A.pid==="number"&&typeof A.on==="function",My=Symbol.for("signal-exit emitter"),zy=globalThis,ufQ=Object.defineProperty.bind(Object);class m0A{emitted={afterExit:!1,exit:!1};listeners={afterExit:[],exit:[]};count=0;id=Math.random();constructor(){if(zy[My])return zy[My];ufQ(zy,My,{value:this,writable:!1,enumerable:!1,configurable:!1})}on(A,Q){this.listeners[A].push(Q)}removeListener(A,Q){let B=this.listeners[A],Y=B.indexOf(Q);if(Y===-1)return;if(Y===0&&B.length===1)B.length=0;else B.splice(Y,1)}emit(A,Q,B){if(this.emitted[A])return!1;this.emitted[A]=!0;let Y=!1;for(let J of this.listeners[A])Y=J(Q,B)===!0||Y;if(A==="exit")Y=this.emit("afterExit",Q,B)||Y;return Y}}class wy{}var dfQ=(A)=>{return{onExit(Q,B){return A.onExit(Q,B)},load(){return A.load()},unload(){return A.unload()}}};class u0A extends wy{onExit(){return()=>{}}load(){}unload(){}}class d0A extends wy{#A=Ry.platform==="win32"?"SIGINT":"SIGHUP";#Q=new m0A;#B;#Y;#J;#C={};#W=!1;constructor(A){super();this.#B=A,this.#C={};for(let Q of vF)this.#C[Q]=()=>{let B=this.#B.listeners(Q),{count:Y}=this.#Q,J=A;if(typeof J.__signal_exit_emitter__==="object"&&typeof J.__signal_exit_emitter__.count==="number")Y+=J.__signal_exit_emitter__.count;if(B.length===Y){this.unload();let C=this.#Q.emit("exit",null,Q),X=Q==="SIGHUP"?this.#A:Q;if(!C)A.kill(A.pid,X)}};this.#J=A.reallyExit,this.#Y=A.emit}onExit(A,Q){if(!I2(this.#B))return()=>{};if(this.#W===!1)this.load();let B=Q?.alwaysLast?"afterExit":"exit";return this.#Q.on(B,A),()=>{if(this.#Q.removeListener(B,A),this.#Q.listeners.exit.length===0&&this.#Q.listeners.afterExit.length===0)this.unload()}}load(){if(this.#W)return;this.#W=!0,this.#Q.count+=1;for(let A of vF)try{let Q=this.#C[A];if(Q)this.#B.on(A,Q)}catch(Q){}this.#B.emit=(A,...Q)=>{return this.#G(A,...Q)},this.#B.reallyExit=(A)=>{return this.#X(A)}}unload(){if(!this.#W)return;this.#W=!1,vF.forEach((A)=>{let Q=this.#C[A];if(!Q)throw Error("Listener not defined for signal: "+A);try{this.#B.removeListener(A,Q)}catch(B){}}),this.#B.emit=this.#Y,this.#B.reallyExit=this.#J,this.#Q.count-=1}#X(A){if(!I2(this.#B))return 0;return this.#B.exitCode=A||0,this.#Q.emit("exit",this.#B.exitCode,null),this.#J.call(this.#B,this.#B.exitCode)}#G(A,...Q){let B=this.#Y;if(A==="exit"&&I2(this.#B)){if(typeof Q[0]==="number")this.#B.exitCode=Q[0];let Y=B.call(this.#B,A,...Q);return this.#Q.emit("exit",this.#B.exitCode,null),Y}else return B.call(this.#B,A,...Q)}}var Ry=globalThis.process,{onExit:c0A,load:b8Y,unload:m8Y}=dfQ(I2(Ry)?new d0A(Ry):new u0A);var l0A=(A,{cleanup:Q,detached:B},{signal:Y})=>{if(!Q||B)return;let J=c0A(()=>{A.kill()});cfQ(Y,()=>{J()})};var i0A=({source:A,sourcePromise:Q,boundOptions:B,createNested:Y},...J)=>{let C=wz(),{destination:X,destinationStream:G,destinationError:W,from:F,unpipeSignal:Z}=lfQ(B,Y,J),{sourceStream:U,sourceError:$}=ifQ(A,F),{options:E,fileDescriptors:K}=T1.get(A);return{sourcePromise:Q,sourceStream:U,sourceOptions:E,sourceError:$,destination:X,destinationStream:G,destinationError:W,unpipeSignal:Z,fileDescriptors:K,startTime:C}},lfQ=(A,Q,B)=>{try{let{destination:Y,pipeOptions:{from:J,to:C,unpipeSignal:X}={}}=pfQ(A,Q,...B),G=fz(Y,C);return{destination:Y,destinationStream:G,from:J,unpipeSignal:X}}catch(Y){return{destinationError:Y}}},pfQ=(A,Q,B,...Y)=>{if(Array.isArray(B))return{destination:Q(p0A,A)(B,...Y),pipeOptions:A};if(typeof B==="string"||B instanceof URL||Hv(B)){if(Object.keys(A).length>0)throw TypeError('Please use .pipe("file", ..., options) or .pipe(execa("file", ..., options)) instead of .pipe(options)("file", ...).');let[J,C,X]=Vz(B,...Y);return{destination:Q(p0A)(J,C,X),pipeOptions:X}}if(T1.has(B)){if(Object.keys(A).length>0)throw TypeError("Please use .pipe(options)`command` or .pipe($(options)`command`) instead of .pipe(options)($`command`).");return{destination:B,pipeOptions:Y[0]}}throw TypeError(`The first argument must be a template string, an options object, or an Execa subprocess: ${B}`)},p0A=({options:A})=>({options:{...A,stdin:"pipe",piped:!0}}),ifQ=(A,Q)=>{try{return{sourceStream:T4(A,Q)}}catch(B){return{sourceError:B}}};var s0A=({sourceStream:A,sourceError:Q,destinationStream:B,destinationError:Y,fileDescriptors:J,sourceOptions:C,startTime:X})=>{let G=nfQ({sourceStream:A,sourceError:Q,destinationStream:B,destinationError:Y});if(G!==void 0)throw jy({error:G,fileDescriptors:J,sourceOptions:C,startTime:X})},nfQ=({sourceStream:A,sourceError:Q,destinationStream:B,destinationError:Y})=>{if(Q!==void 0&&Y!==void 0)return Y;if(Y!==void 0)return qy(A),Y;if(Q!==void 0)return Ly(B),Q},jy=({error:A,fileDescriptors:Q,sourceOptions:B,startTime:Y})=>_4({error:A,command:n0A,escapedCommand:n0A,fileDescriptors:Q,options:B,startTime:Y,isSync:!1}),n0A="source.pipe(destination)";var r0A=async(A)=>{let[{status:Q,reason:B,value:Y=B},{status:J,reason:C,value:X=C}]=await A;if(!X.pipedFrom.includes(Y))X.pipedFrom.push(Y);if(J==="rejected")throw X;if(Q==="rejected")throw Y;return X};import{finished as sfQ}from"node:stream/promises";var a0A=(A,Q,B)=>{let Y=H2.has(Q)?afQ(A,Q):rfQ(A,Q);return PF(A,tfQ,B.signal),PF(Q,efQ,B.signal),ofQ(Q),Y},rfQ=(A,Q)=>{let B=_F([A]);return g4(B,Q),H2.set(Q,B),B},afQ=(A,Q)=>{let B=H2.get(Q);return B.add(A),B},ofQ=async(A)=>{try{await sfQ(A,{cleanup:!0,readable:!1,writable:!0})}catch{}H2.delete(A)},H2=new WeakMap,tfQ=2,efQ=1;import{aborted as AbQ}from"node:util";var o0A=(A,Q)=>A===void 0?[]:[QbQ(A,Q)],QbQ=async(A,{sourceStream:Q,mergedStream:B,fileDescriptors:Y,sourceOptions:J,startTime:C})=>{await AbQ(A,Q),await B.remove(Q);let X=Error("Pipe canceled by `unpipeSignal` option.");throw jy({error:X,fileDescriptors:Y,sourceOptions:J,startTime:C})};var D2=(A,...Q)=>{if(CY(Q[0]))return D2.bind(void 0,{...A,boundOptions:{...A.boundOptions,...Q[0]}});let{destination:B,...Y}=i0A(A,...Q),J=BbQ({...Y,destination:B});return J.pipe=D2.bind(void 0,{...A,source:B,sourcePromise:J,boundOptions:{}}),J},BbQ=async({sourcePromise:A,sourceStream:Q,sourceOptions:B,sourceError:Y,destination:J,destinationStream:C,destinationError:X,unpipeSignal:G,fileDescriptors:W,startTime:F})=>{let Z=YbQ(A,J);s0A({sourceStream:Q,sourceError:Y,destinationStream:C,destinationError:X,fileDescriptors:W,sourceOptions:B,startTime:F});let U=new AbortController;try{let $=a0A(Q,C,U);return await Promise.race([r0A(Z),...o0A(G,{sourceStream:Q,mergedStream:$,sourceOptions:B,fileDescriptors:W,startTime:F})])}finally{U.abort()}},YbQ=(A,Q)=>Promise.allSettled([A,Q]);import{setImmediate as ZbQ}from"node:timers/promises";import{on as JbQ}from"node:events";import{getDefaultHighWaterMark as CbQ}from"node:stream";var N2=({subprocessStdout:A,subprocess:Q,binary:B,shouldEncode:Y,encoding:J,preserveNewlines:C})=>{let X=new AbortController;return XbQ(Q,X),e0A({stream:A,controller:X,binary:B,shouldEncode:!A.readableObjectMode&&Y,encoding:J,shouldSplit:!A.readableObjectMode,preserveNewlines:C})},XbQ=async(A,Q)=>{try{await A}catch{}finally{Q.abort()}},Oy=({stream:A,onStreamEnd:Q,lines:B,encoding:Y,stripFinalNewline:J,allMixed:C})=>{let X=new AbortController;GbQ(Q,X,A);let G=A.readableObjectMode&&!C;return e0A({stream:A,controller:X,binary:Y==="buffer",shouldEncode:!G,encoding:Y,shouldSplit:!G&&B,preserveNewlines:!J})},GbQ=async(A,Q,B)=>{try{await A}catch{B.destroy()}finally{Q.abort()}},e0A=({stream:A,controller:Q,binary:B,shouldEncode:Y,encoding:J,shouldSplit:C,preserveNewlines:X})=>{let G=JbQ(A,"data",{signal:Q.signal,highWaterMark:t0A,highWatermark:t0A});return WbQ({onStdoutChunk:G,controller:Q,binary:B,shouldEncode:Y,encoding:J,shouldSplit:C,preserveNewlines:X})},Py=CbQ(!0),t0A=Py,WbQ=async function*({onStdoutChunk:A,controller:Q,binary:B,shouldEncode:Y,encoding:J,shouldSplit:C,preserveNewlines:X}){let G=FbQ({binary:B,shouldEncode:Y,encoding:J,shouldSplit:C,preserveNewlines:X});try{for await(let[W]of A)yield*kF(W,G,0)}catch(W){if(!Q.signal.aborted)throw W}finally{yield*VI(G)}},FbQ=({binary:A,shouldEncode:Q,encoding:B,shouldSplit:Y,preserveNewlines:J})=>[Z2(A,B,!Q),F2(A,J,!Y,{})].filter(Boolean);var AYA=async({stream:A,onStreamEnd:Q,fdNumber:B,encoding:Y,buffer:J,maxBuffer:C,lines:X,allMixed:G,stripFinalNewline:W,verboseInfo:F,streamInfo:Z})=>{let U=$bQ({stream:A,onStreamEnd:Q,fdNumber:B,encoding:Y,allMixed:G,verboseInfo:F,streamInfo:Z});if(!J){await Promise.all([UbQ(A),U]);return}let $=Wy(W,B),E=Oy({stream:A,onStreamEnd:Q,lines:X,encoding:Y,stripFinalNewline:$,allMixed:G}),[K]=await Promise.all([EbQ({stream:A,iterable:E,fdNumber:B,encoding:Y,maxBuffer:C,lines:X}),U]);return K},$bQ=async({stream:A,onStreamEnd:Q,fdNumber:B,encoding:Y,allMixed:J,verboseInfo:C,streamInfo:{fileDescriptors:X}})=>{if(!E2({stdioItems:X[B]?.stdioItems,encoding:Y,verboseInfo:C,fdNumber:B}))return;let G=Oy({stream:A,onStreamEnd:Q,lines:!0,encoding:Y,stripFinalNewline:!0,allMixed:J});await G0A(G,A,B,C)},UbQ=async(A)=>{if(await ZbQ(),A.readableFlowing===null)A.resume()},EbQ=async({stream:A,stream:{readableObjectMode:Q},iterable:B,fdNumber:Y,encoding:J,maxBuffer:C,lines:X})=>{try{if(Q||X)return await ez(B,{maxBuffer:C});if(J==="buffer")return new Uint8Array(await A2(B,{maxBuffer:C}));return await B2(B,{maxBuffer:C})}catch(G){return QYA(GBA({error:G,stream:A,readableObjectMode:Q,lines:X,encoding:J,fdNumber:Y}))}},Ty=async(A)=>{try{return await A}catch(Q){return QYA(Q)}},QYA=({bufferedData:A})=>ze(A)?new Uint8Array(A):A;import{finished as KbQ}from"node:stream/promises";var NI=async(A,Q,B,{isSameDirection:Y,stopOnExit:J=!1}={})=>{let C=VbQ(A,B),X=new AbortController;try{await Promise.race([...J?[B.exitPromise]:[],KbQ(A,{cleanup:!0,signal:X.signal})])}catch(G){if(!C.stdinCleanedUp)DbQ(G,Q,B,Y)}finally{X.abort()}},VbQ=(A,{originalStreams:[Q],subprocess:B})=>{let Y={stdinCleanedUp:!1};if(A===Q)IbQ(A,B,Y);return Y},IbQ=(A,Q,B)=>{let{_destroy:Y}=A;A._destroy=(...J)=>{HbQ(Q,B),Y.call(A,...J)}},HbQ=({exitCode:A,signalCode:Q},B)=>{if(A!==null||Q!==null)B.stdinCleanedUp=!0},DbQ=(A,Q,B,Y)=>{if(!NbQ(A,Q,B,Y))throw A},NbQ=(A,Q,B,Y=!0)=>{if(B.propagating)return BYA(A)||L2(A);return B.propagating=!0,Sy(B,Q)===Y?BYA(A):L2(A)},Sy=({fileDescriptors:A},Q)=>Q!=="all"&&A[Q].direction==="input",L2=(A)=>A?.code==="ERR_STREAM_PREMATURE_CLOSE",BYA=(A)=>A?.code==="EPIPE";var YYA=({subprocess:A,encoding:Q,buffer:B,maxBuffer:Y,lines:J,stripFinalNewline:C,verboseInfo:X,streamInfo:G})=>A.stdio.map((W,F)=>ky({stream:W,fdNumber:F,encoding:Q,buffer:B[F],maxBuffer:Y[F],lines:J[F],allMixed:!1,stripFinalNewline:C,verboseInfo:X,streamInfo:G})),ky=async({stream:A,fdNumber:Q,encoding:B,buffer:Y,maxBuffer:J,lines:C,allMixed:X,stripFinalNewline:G,verboseInfo:W,streamInfo:F})=>{if(!A)return;let Z=NI(A,Q,F);if(Sy(F,Q)){await Z;return}let[U]=await Promise.all([AYA({stream:A,onStreamEnd:Z,fdNumber:Q,encoding:B,buffer:Y,maxBuffer:J,lines:C,allMixed:X,stripFinalNewline:G,verboseInfo:W,streamInfo:F}),Z]);return U};var JYA=({stdout:A,stderr:Q},{all:B})=>B&&(A||Q)?_F([A,Q].filter(Boolean)):void 0,CYA=({subprocess:A,encoding:Q,buffer:B,maxBuffer:Y,lines:J,stripFinalNewline:C,verboseInfo:X,streamInfo:G})=>ky({...LbQ(A,B),fdNumber:"all",encoding:Q,maxBuffer:Y[1]+Y[2],lines:J[1]||J[2],allMixed:qbQ(A),stripFinalNewline:C,verboseInfo:X,streamInfo:G}),LbQ=({stdout:A,stderr:Q,all:B},[,Y,J])=>{let C=Y||J;if(!C)return{stream:B,buffer:C};if(!Y)return{stream:Q,buffer:C};if(!J)return{stream:A,buffer:C};return{stream:B,buffer:C}},qbQ=({all:A,stdout:Q,stderr:B})=>A&&Q&&B&&Q.readableObjectMode!==B.readableObjectMode;import{once as MbQ}from"node:events";var XYA=(A)=>R4(A,"ipc"),GYA=(A,Q)=>{let B=Rz(A);j1({type:"ipc",verboseMessage:B,fdNumber:"ipc",verboseInfo:Q})};var WYA=async({subprocess:A,buffer:Q,maxBuffer:B,ipc:Y,ipcOutput:J,verboseInfo:C})=>{if(!Y)return J;let X=XYA(C),G=aX(Q,"ipc"),W=aX(B,"ipc");for await(let F of Hy({anyProcess:A,channel:A.channel,isSubprocess:!1,ipc:Y,shouldAwait:!1,reference:!0})){if(G)WBA(A,J,W),J.push(F);if(X)GYA(F,C)}return J},FYA=async(A,Q)=>{return await Promise.allSettled([A]),Q};var ZYA=async({subprocess:A,options:{encoding:Q,buffer:B,maxBuffer:Y,lines:J,timeoutDuration:C,cancelSignal:X,gracefulCancel:G,forceKillAfterDelay:W,stripFinalNewline:F,ipc:Z,ipcInput:U},context:$,verboseInfo:E,fileDescriptors:K,originalStreams:I,onInternalError:V,controller:H})=>{let D=U0A(A,$),L={originalStreams:I,fileDescriptors:K,subprocess:A,exitPromise:D,propagating:!1},z=YYA({subprocess:A,encoding:Q,buffer:B,maxBuffer:Y,lines:J,stripFinalNewline:F,verboseInfo:E,streamInfo:L}),M=CYA({subprocess:A,encoding:Q,buffer:B,maxBuffer:Y,lines:J,stripFinalNewline:F,verboseInfo:E,streamInfo:L}),N=[],q=WYA({subprocess:A,buffer:B,maxBuffer:Y,ipc:Z,ipcOutput:N,verboseInfo:E}),w=zbQ(I,A,L),P=RbQ(K,L);try{return await Promise.race([Promise.all([{},K0A(D),Promise.all(z),M,q,bQA(A,U),...w,...P]),V,wbQ(A,H),...yQA(A,C,$,H),...QQA({subprocess:A,cancelSignal:X,gracefulCancel:G,context:$,controller:H}),..._QA({subprocess:A,cancelSignal:X,gracefulCancel:G,forceKillAfterDelay:W,context:$,controller:H})])}catch(_){return $.terminationReason??="other",Promise.all([{error:_},D,Promise.all(z.map((j)=>Ty(j))),Ty(M),FYA(q,N),Promise.allSettled(w),Promise.allSettled(P)])}},zbQ=(A,Q,B)=>A.map((Y,J)=>Y===Q.stdio[J]?void 0:NI(Y,J,B)),RbQ=(A,Q)=>A.flatMap(({stdioItems:B},Y)=>B.filter(({value:J,stream:C=J})=>zC(C,{checkOpen:!1})&&!qC(C)).map(({type:J,value:C,stream:X=C})=>NI(X,Y,Q,{isSameDirection:B5.has(J),stopOnExit:J==="native"}))),wbQ=async(A,{signal:Q})=>{let[B]=await MbQ(A,"error",{signal:Q});throw B};var $YA=()=>({readableDestroy:new WeakMap,writableFinal:new WeakMap,writableDestroy:new WeakMap}),LI=(A,Q,B)=>{let Y=A[B];if(!Y.has(Q))Y.set(Q,[]);let J=Y.get(Q),C=P1();return J.push(C),{resolve:C.resolve.bind(C),promises:J}},h4=async({resolve:A,promises:Q},B)=>{A();let[Y]=await Promise.race([Promise.allSettled([!0,B]),Promise.all([!1,...Q])]);return!Y};import{Readable as jbQ}from"node:stream";import{callbackify as ObQ}from"node:util";import{finished as UYA}from"node:stream/promises";var _y=async(A)=>{if(A===void 0)return;try{await vy(A)}catch{}},EYA=async(A)=>{if(A===void 0)return;try{await yy(A)}catch{}},vy=async(A)=>{await UYA(A,{cleanup:!0,readable:!1,writable:!0})},yy=async(A)=>{await UYA(A,{cleanup:!0,readable:!0,writable:!1})},q2=async(A,Q)=>{if(await A,Q)throw Q},M2=(A,Q,B)=>{if(B&&!L2(B))A.destroy(B);else if(Q)A.destroy()};var KYA=({subprocess:A,concurrentStreams:Q,encoding:B},{from:Y,binary:J=!0,preserveNewlines:C=!0}={})=>{let X=J||G8.has(B),{subprocessStdout:G,waitReadableDestroy:W}=gy(A,Y,Q),{readableEncoding:F,readableObjectMode:Z,readableHighWaterMark:U}=hy(G,X),{read:$,onStdoutDataDone:E}=xy({subprocessStdout:G,subprocess:A,binary:X,encoding:B,preserveNewlines:C}),K=new jbQ({read:$,destroy:ObQ(by.bind(void 0,{subprocessStdout:G,subprocess:A,waitReadableDestroy:W})),highWaterMark:U,objectMode:Z,encoding:F});return fy({subprocessStdout:G,onStdoutDataDone:E,readable:K,subprocess:A}),K},gy=(A,Q,B)=>{let Y=T4(A,Q),J=LI(B,Y,"readableDestroy");return{subprocessStdout:Y,waitReadableDestroy:J}},hy=({readableEncoding:A,readableObjectMode:Q,readableHighWaterMark:B},Y)=>Y?{readableEncoding:A,readableObjectMode:Q,readableHighWaterMark:B}:{readableEncoding:A,readableObjectMode:!0,readableHighWaterMark:Py},xy=({subprocessStdout:A,subprocess:Q,binary:B,encoding:Y,preserveNewlines:J})=>{let C=P1(),X=N2({subprocessStdout:A,subprocess:Q,binary:B,shouldEncode:!B,encoding:Y,preserveNewlines:J});return{read(){PbQ(this,X,C)},onStdoutDataDone:C}},PbQ=async(A,Q,B)=>{try{let{value:Y,done:J}=await Q.next();if(J)B.resolve();else A.push(Y)}catch{}},fy=async({subprocessStdout:A,onStdoutDataDone:Q,readable:B,subprocess:Y,subprocessStdin:J})=>{try{if(await yy(A),await Y,await _y(J),await Q,B.readable)B.push(null)}catch(C){await _y(J),VYA(B,C)}},by=async({subprocessStdout:A,subprocess:Q,waitReadableDestroy:B},Y)=>{if(await h4(B,Q))VYA(A,Y),await q2(Q,Y)},VYA=(A,Q)=>{M2(A,A.readable,Q)};import{Writable as TbQ}from"node:stream";import{callbackify as IYA}from"node:util";var HYA=({subprocess:A,concurrentStreams:Q},{to:B}={})=>{let{subprocessStdin:Y,waitWritableFinal:J,waitWritableDestroy:C}=my(A,B,Q),X=new TbQ({...uy(Y,A,J),destroy:IYA(cy.bind(void 0,{subprocessStdin:Y,subprocess:A,waitWritableFinal:J,waitWritableDestroy:C})),highWaterMark:Y.writableHighWaterMark,objectMode:Y.writableObjectMode});return dy(Y,X),X},my=(A,Q,B)=>{let Y=fz(A,Q),J=LI(B,Y,"writableFinal"),C=LI(B,Y,"writableDestroy");return{subprocessStdin:Y,waitWritableFinal:J,waitWritableDestroy:C}},uy=(A,Q,B)=>({write:SbQ.bind(void 0,A),final:IYA(kbQ.bind(void 0,A,Q,B))}),SbQ=(A,Q,B,Y)=>{if(A.write(Q,B))Y();else A.once("drain",Y)},kbQ=async(A,Q,B)=>{if(await h4(B,Q)){if(A.writable)A.end();await Q}},dy=async(A,Q,B)=>{try{if(await vy(A),Q.writable)Q.end()}catch(Y){await EYA(B),DYA(Q,Y)}},cy=async({subprocessStdin:A,subprocess:Q,waitWritableFinal:B,waitWritableDestroy:Y},J)=>{if(await h4(B,Q),await h4(Y,Q))DYA(A,J),await q2(Q,J)},DYA=(A,Q)=>{M2(A,A.writable,Q)};import{Duplex as _bQ}from"node:stream";import{callbackify as vbQ}from"node:util";var NYA=({subprocess:A,concurrentStreams:Q,encoding:B},{from:Y,to:J,binary:C=!0,preserveNewlines:X=!0}={})=>{let G=C||G8.has(B),{subprocessStdout:W,waitReadableDestroy:F}=gy(A,Y,Q),{subprocessStdin:Z,waitWritableFinal:U,waitWritableDestroy:$}=my(A,J,Q),{readableEncoding:E,readableObjectMode:K,readableHighWaterMark:I}=hy(W,G),{read:V,onStdoutDataDone:H}=xy({subprocessStdout:W,subprocess:A,binary:G,encoding:B,preserveNewlines:X}),D=new _bQ({read:V,...uy(Z,A,U),destroy:vbQ(ybQ.bind(void 0,{subprocessStdout:W,subprocessStdin:Z,subprocess:A,waitReadableDestroy:F,waitWritableFinal:U,waitWritableDestroy:$})),readableHighWaterMark:I,writableHighWaterMark:Z.writableHighWaterMark,readableObjectMode:K,writableObjectMode:Z.writableObjectMode,encoding:E});return fy({subprocessStdout:W,onStdoutDataDone:H,readable:D,subprocess:A,subprocessStdin:Z}),dy(Z,D,W),D},ybQ=async({subprocessStdout:A,subprocessStdin:Q,subprocess:B,waitReadableDestroy:Y,waitWritableFinal:J,waitWritableDestroy:C},X)=>{await Promise.all([by({subprocessStdout:A,subprocess:B,waitReadableDestroy:Y},X),cy({subprocessStdin:Q,subprocess:B,waitWritableFinal:J,waitWritableDestroy:C},X)])};var ly=(A,Q,{from:B,binary:Y=!1,preserveNewlines:J=!1}={})=>{let C=Y||G8.has(Q),X=T4(A,B),G=N2({subprocessStdout:X,subprocess:A,binary:C,shouldEncode:!0,encoding:Q,preserveNewlines:J});return gbQ(G,X,A)},gbQ=async function*(A,Q,B){try{yield*A}finally{if(Q.readable)Q.destroy();await B}};var LYA=(A,{encoding:Q})=>{let B=$YA();A.readable=KYA.bind(void 0,{subprocess:A,concurrentStreams:B,encoding:Q}),A.writable=HYA.bind(void 0,{subprocess:A,concurrentStreams:B}),A.duplex=NYA.bind(void 0,{subprocess:A,concurrentStreams:B,encoding:Q}),A.iterable=ly.bind(void 0,A,Q),A[Symbol.asyncIterator]=ly.bind(void 0,A,Q,{})};var qYA=(A,Q)=>{for(let[B,Y]of xbQ){let J=Y.value.bind(Q);Reflect.defineProperty(A,B,{...Y,value:J})}},hbQ=(async()=>{})().constructor.prototype,xbQ=["then","catch","finally"].map((A)=>[A,Reflect.getOwnPropertyDescriptor(hbQ,A)]);var MYA=(A,Q,B,Y)=>{let{file:J,commandArguments:C,command:X,escapedCommand:G,startTime:W,verboseInfo:F,options:Z,fileDescriptors:U}=mbQ(A,Q,B),{subprocess:$,promise:E}=dbQ({file:J,commandArguments:C,options:Z,startTime:W,verboseInfo:F,command:X,escapedCommand:G,fileDescriptors:U});return $.pipe=D2.bind(void 0,{source:$,sourcePromise:E,boundOptions:{},createNested:Y}),qYA($,E),T1.set($,{options:Z,fileDescriptors:U}),$},mbQ=(A,Q,B)=>{let{command:Y,escapedCommand:J,startTime:C,verboseInfo:X}=jz(A,Q,B),{file:G,commandArguments:W,options:F}=rz(A,Q,B),Z=ubQ(F),U=T0A(Z,X);return{file:G,commandArguments:W,command:Y,escapedCommand:J,startTime:C,verboseInfo:X,options:Z,fileDescriptors:U}},ubQ=({timeout:A,signal:Q,...B})=>{if(Q!==void 0)throw TypeError('The "signal" option has been renamed to "cancelSignal" instead.');return{...B,timeoutDuration:A}},dbQ=({file:A,commandArguments:Q,options:B,startTime:Y,verboseInfo:J,command:C,escapedCommand:X,fileDescriptors:G})=>{let W;try{W=bbQ(A,Q,B)}catch(K){return w0A({error:K,command:C,escapedCommand:X,fileDescriptors:G,options:B,startTime:Y,verboseInfo:J})}let F=new AbortController;fbQ(Number.POSITIVE_INFINITY,F.signal);let Z=[...W.stdio];b0A(W,G,F),l0A(W,B,F);let U={},$=P1();W.kill=eAA.bind(void 0,{kill:W.kill.bind(W),options:B,onInternalError:$,context:U,controller:F}),W.all=JYA(W,B),LYA(W,B),M0A(W,B);let E=cbQ({subprocess:W,options:B,startTime:Y,verboseInfo:J,fileDescriptors:G,originalStreams:Z,command:C,escapedCommand:X,context:U,onInternalError:$,controller:F});return{subprocess:W,promise:E}},cbQ=async({subprocess:A,options:Q,startTime:B,verboseInfo:Y,fileDescriptors:J,originalStreams:C,command:X,escapedCommand:G,context:W,onInternalError:F,controller:Z})=>{let[U,[$,E],K,I,V]=await ZYA({subprocess:A,options:Q,context:W,verboseInfo:Y,fileDescriptors:J,originalStreams:C,onInternalError:F,controller:Z});Z.abort(),F.resolve();let H=K.map((z,M)=>eX(z,Q,M)),D=eX(I,Q,"all"),L=lbQ({errorInfo:U,exitCode:$,signal:E,stdio:H,all:D,ipcOutput:V,context:W,options:Q,command:X,escapedCommand:G,startTime:B});return v4(L,Y,Q)},lbQ=({errorInfo:A,exitCode:Q,signal:B,stdio:Y,all:J,ipcOutput:C,context:X,options:G,command:W,escapedCommand:F,startTime:Z})=>("error"in A)?KI({error:A.error,command:W,escapedCommand:F,timedOut:X.terminationReason==="timeout",isCanceled:X.terminationReason==="cancel"||X.terminationReason==="gracefulCancel",isGracefullyCanceled:X.terminationReason==="gracefulCancel",isMaxBuffer:A.error instanceof oX,isForcefullyTerminated:X.isForcefullyTerminated,exitCode:Q,signal:B,stdio:Y,all:J,ipcOutput:C,options:G,startTime:Z,isSync:!1}):J2({command:W,escapedCommand:F,stdio:Y,all:J,ipcOutput:C,options:G,startTime:Z});var z2=(A,Q)=>{let B=Object.fromEntries(Object.entries(Q).map(([Y,J])=>[Y,pbQ(Y,A[Y],J)]));return{...A,...B}},pbQ=(A,Q,B)=>{if(ibQ.has(A)&&CY(Q)&&CY(B))return{...Q,...B};return B},ibQ=new Set(["env",...zv]);var eG=(A,Q,B,Y)=>{let J=(X,G,W)=>eG(X,G,B,W),C=(...X)=>nbQ({mapArguments:A,deepOptions:B,boundOptions:Q,setBoundExeca:Y,createNested:J},...X);if(Y!==void 0)Y(C,J,Q);return C},nbQ=({mapArguments:A,deepOptions:Q={},boundOptions:B={},setBoundExeca:Y,createNested:J},C,...X)=>{if(CY(C))return J(A,z2(B,C),Y);let{file:G,commandArguments:W,options:F,isSync:Z}=sbQ({mapArguments:A,firstArgument:C,nextArguments:X,deepOptions:Q,boundOptions:B});return Z?I0A(G,W,F):MYA(G,W,F,J)},sbQ=({mapArguments:A,firstArgument:Q,nextArguments:B,deepOptions:Y,boundOptions:J})=>{let C=Te(Q)?Se(Q,B):[Q,...B],[X,G,W]=Vz(...C),F=z2(z2(Y,J),W),{file:Z=X,commandArguments:U=G,options:$=F,isSync:E=!1}=A({file:X,commandArguments:G,options:F});return{file:Z,commandArguments:U,options:$,isSync:E}};var zYA=({file:A,commandArguments:Q})=>wYA(A,Q),RYA=({file:A,commandArguments:Q})=>({...wYA(A,Q),isSync:!0}),wYA=(A,Q)=>{if(Q.length>0)throw TypeError(`The command and its arguments must be passed as a single string: ${A} ${Q}.`);let[B,...Y]=rbQ(A);return{file:B,commandArguments:Y}},rbQ=(A)=>{if(typeof A!=="string")throw TypeError(`The command must be a string: ${String(A)}.`);let Q=A.trim();if(Q==="")return[];let B=[];for(let Y of Q.split(abQ)){let J=B.at(-1);if(J&&J.endsWith("\\"))B[B.length-1]=`${J.slice(0,-1)} ${Y}`;else B.push(Y)}return B},abQ=/ +/g;var jYA=(A,Q,B)=>{A.sync=Q(obQ,B),A.s=A.sync},OYA=({options:A})=>PYA(A),obQ=({options:A})=>({...PYA(A),isSync:!0}),PYA=(A)=>({options:{...tbQ(A),...A}}),tbQ=({input:A,inputFile:Q,stdio:B})=>A===void 0&&Q===void 0&&B===void 0?{stdin:"inherit"}:{},TYA={preferLocal:!0};var qI=eG(()=>({})),P1Y=eG(()=>({isSync:!0})),T1Y=eG(zYA),S1Y=eG(RYA),k1Y=eG(hQA),_1Y=eG(OYA,{},TYA,jYA),{sendMessage:v1Y,getOneMessage:y1Y,getEachMessage:g1Y,getCancelSignal:h1Y}=z0A();var rYA=qA(uYA(),1);var zI=(A)=>{if(typeof A!=="string")throw TypeError("invalid pattern");if(A.length>65536)throw TypeError("pattern is too long")};var XmQ={"[:alnum:]":["\\p{L}\\p{Nl}\\p{Nd}",!0],"[:alpha:]":["\\p{L}\\p{Nl}",!0],"[:ascii:]":["\\x00-\\x7f",!1],"[:blank:]":["\\p{Zs}\\t",!0],"[:cntrl:]":["\\p{Cc}",!0],"[:digit:]":["\\p{Nd}",!0],"[:graph:]":["\\p{Z}\\p{C}",!0,!0],"[:lower:]":["\\p{Ll}",!0],"[:print:]":["\\p{C}",!0],"[:punct:]":["\\p{P}",!0],"[:space:]":["\\p{Z}\\t\\r\\n\\v\\f",!0],"[:upper:]":["\\p{Lu}",!0],"[:word:]":["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}",!0],"[:xdigit:]":["A-Fa-f0-9",!1]},RI=(A)=>A.replace(/[[\]\\-]/g,"\\$&"),GmQ=(A)=>A.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),dYA=(A)=>A.join(""),cYA=(A,Q)=>{let B=Q;if(A.charAt(B)!=="[")throw Error("not in a brace expression");let Y=[],J=[],C=B+1,X=!1,G=!1,W=!1,F=!1,Z=B,U="";A:while(CU)Y.push(RI(U)+"-"+RI(I));else if(I===U)Y.push(RI(I));U="",C++;continue}if(A.startsWith("-]",C+1)){Y.push(RI(I+"-")),C+=2;continue}if(A.startsWith("-",C+1)){U=I,C+=2;continue}Y.push(RI(I)),C++}if(Z{return Q?A.replace(/\[([^\/\\])\]/g,"$1"):A.replace(/((?!\\).|^)\[([^\/\\])\]/g,"$1$2").replace(/\\([^\/])/g,"$1")};var WmQ=new Set(["!","?","+","*","@"]),lYA=(A)=>WmQ.has(A),FmQ="(?!(?:^|/)\\.\\.?(?:$|/))",R2="(?!\\.)",ZmQ=new Set(["[","."]),$mQ=new Set(["..","."]),UmQ=new Set("().*{}+?[]^$\\!"),EmQ=(A)=>A.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),sy="[^/]",pYA=sy+"*?",iYA=sy+"+?";class YJ{type;#A;#Q;#B=!1;#Y=[];#J;#C;#W;#X=!1;#G;#Z;#U=!1;constructor(A,Q,B={}){if(this.type=A,A)this.#Q=!0;if(this.#J=Q,this.#A=this.#J?this.#J.#A:this,this.#G=this.#A===this?B:this.#A.#G,this.#W=this.#A===this?[]:this.#A.#W,A==="!"&&!this.#A.#X)this.#W.push(this);this.#C=this.#J?this.#J.#Y.length:0}get hasMagic(){if(this.#Q!==void 0)return this.#Q;for(let A of this.#Y){if(typeof A==="string")continue;if(A.type||A.hasMagic)return this.#Q=!0}return this.#Q}toString(){if(this.#Z!==void 0)return this.#Z;if(!this.type)return this.#Z=this.#Y.map((A)=>String(A)).join("");else return this.#Z=this.type+"("+this.#Y.map((A)=>String(A)).join("|")+")"}#F(){if(this!==this.#A)throw Error("should only call on root");if(this.#X)return this;this.toString(),this.#X=!0;let A;while(A=this.#W.pop()){if(A.type!=="!")continue;let Q=A,B=Q.#J;while(B){for(let Y=Q.#C+1;!B.type&&Ytypeof Q==="string"?Q:Q.toJSON()):[this.type,...this.#Y.map((Q)=>Q.toJSON())];if(this.isStart()&&!this.type)A.unshift([]);if(this.isEnd()&&(this===this.#A||this.#A.#X&&this.#J?.type==="!"))A.push({});return A}isStart(){if(this.#A===this)return!0;if(!this.#J?.isStart())return!1;if(this.#C===0)return!0;let A=this.#J;for(let Q=0;Q{let[E,K,I,V]=typeof $==="string"?YJ.#I($,this.#Q,G):$.toRegExpSource(A);return this.#Q=this.#Q||I,this.#B=this.#B||V,E}).join(""),F="";if(this.isStart()){if(typeof this.#Y[0]==="string"){if(!(this.#Y.length===1&&$mQ.has(this.#Y[0]))){let E=ZmQ,K=Q&&E.has(W.charAt(0))||W.startsWith("\\.")&&E.has(W.charAt(2))||W.startsWith("\\.\\.")&&E.has(W.charAt(4)),I=!Q&&!A&&E.has(W.charAt(0));F=K?FmQ:I?R2:""}}}let Z="";if(this.isEnd()&&this.#A.#X&&this.#J?.type==="!")Z="(?:$|\\/)";return[F+W+Z,RC(W),this.#Q=!!this.#Q,this.#B]}let B=this.type==="*"||this.type==="+",Y=this.type==="!"?"(?:(?!(?:":"(?:",J=this.#V(Q);if(this.isStart()&&this.isEnd()&&!J&&this.type!=="!"){let G=this.toString();return this.#Y=[G],this.type=null,this.#Q=void 0,[G,RC(this.toString()),!1,!1]}let C=!B||A||Q||!R2?"":this.#V(!0);if(C===J)C="";if(C)J=`(?:${J})(?:${C})*?`;let X="";if(this.type==="!"&&this.#U)X=(this.isStart()&&!Q?R2:"")+iYA;else{let G=this.type==="!"?"))"+(this.isStart()&&!Q&&!A?R2:"")+pYA+")":this.type==="@"?")":this.type==="?"?")?":this.type==="+"&&C?")":this.type==="*"&&C?")?":`)${this.type}`;X=Y+J+G}return[X,RC(J),this.#Q=!!this.#Q,this.#B]}#V(A){return this.#Y.map((Q)=>{if(typeof Q==="string")throw Error("string type in extglob ast??");let[B,Y,J,C]=Q.toRegExpSource(A);return this.#B=this.#B||C,B}).filter((Q)=>!(this.isStart()&&this.isEnd())||!!Q).join("|")}static#I(A,Q,B=!1){let Y=!1,J="",C=!1;for(let X=0;X{return Q?A.replace(/[?*()[\]]/g,"[$&]"):A.replace(/[?*()[\]\\]/g,"\\$&")};var iJ=(A,Q,B={})=>{if(zI(Q),!B.nocomment&&Q.charAt(0)==="#")return!1;return new J5(Q,B).match(A)},KmQ=/^\*+([^+@!?\*\[\(]*)$/,VmQ=(A)=>(Q)=>!Q.startsWith(".")&&Q.endsWith(A),ImQ=(A)=>(Q)=>Q.endsWith(A),HmQ=(A)=>{return A=A.toLowerCase(),(Q)=>!Q.startsWith(".")&&Q.toLowerCase().endsWith(A)},DmQ=(A)=>{return A=A.toLowerCase(),(Q)=>Q.toLowerCase().endsWith(A)},NmQ=/^\*+\.\*+$/,LmQ=(A)=>!A.startsWith(".")&&A.includes("."),qmQ=(A)=>A!=="."&&A!==".."&&A.includes("."),MmQ=/^\.\*+$/,zmQ=(A)=>A!=="."&&A!==".."&&A.startsWith("."),RmQ=/^\*+$/,wmQ=(A)=>A.length!==0&&!A.startsWith("."),jmQ=(A)=>A.length!==0&&A!=="."&&A!=="..",OmQ=/^\?+([^+@!?\*\[\(]*)?$/,PmQ=([A,Q=""])=>{let B=aYA([A]);if(!Q)return B;return Q=Q.toLowerCase(),(Y)=>B(Y)&&Y.toLowerCase().endsWith(Q)},TmQ=([A,Q=""])=>{let B=oYA([A]);if(!Q)return B;return Q=Q.toLowerCase(),(Y)=>B(Y)&&Y.toLowerCase().endsWith(Q)},SmQ=([A,Q=""])=>{let B=oYA([A]);return!Q?B:(Y)=>B(Y)&&Y.endsWith(Q)},kmQ=([A,Q=""])=>{let B=aYA([A]);return!Q?B:(Y)=>B(Y)&&Y.endsWith(Q)},aYA=([A])=>{let Q=A.length;return(B)=>B.length===Q&&!B.startsWith(".")},oYA=([A])=>{let Q=A.length;return(B)=>B.length===Q&&B!=="."&&B!==".."},tYA=typeof process==="object"&&process?typeof process.env==="object"&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:"posix",nYA={win32:{sep:"\\"},posix:{sep:"/"}},_mQ=tYA==="win32"?nYA.win32.sep:nYA.posix.sep;iJ.sep=_mQ;var JJ=Symbol("globstar **");iJ.GLOBSTAR=JJ;var vmQ="[^/]",ymQ=vmQ+"*?",gmQ="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",hmQ="(?:(?!(?:\\/|^)\\.).)*?",xmQ=(A,Q={})=>(B)=>iJ(B,A,Q);iJ.filter=xmQ;var Y5=(A,Q={})=>Object.assign({},A,Q),fmQ=(A)=>{if(!A||typeof A!=="object"||!Object.keys(A).length)return iJ;let Q=iJ;return Object.assign((Y,J,C={})=>Q(Y,J,Y5(A,C)),{Minimatch:class extends Q.Minimatch{constructor(J,C={}){super(J,Y5(A,C))}static defaults(J){return Q.defaults(Y5(A,J)).Minimatch}},AST:class extends Q.AST{constructor(J,C,X={}){super(J,C,Y5(A,X))}static fromGlob(J,C={}){return Q.AST.fromGlob(J,Y5(A,C))}},unescape:(Y,J={})=>Q.unescape(Y,Y5(A,J)),escape:(Y,J={})=>Q.escape(Y,Y5(A,J)),filter:(Y,J={})=>Q.filter(Y,Y5(A,J)),defaults:(Y)=>Q.defaults(Y5(A,Y)),makeRe:(Y,J={})=>Q.makeRe(Y,Y5(A,J)),braceExpand:(Y,J={})=>Q.braceExpand(Y,Y5(A,J)),match:(Y,J,C={})=>Q.match(Y,J,Y5(A,C)),sep:Q.sep,GLOBSTAR:JJ})};iJ.defaults=fmQ;var eYA=(A,Q={})=>{if(zI(A),Q.nobrace||!/\{(?:(?!\{).)*\}/.test(A))return[A];return rYA.default(A)};iJ.braceExpand=eYA;var bmQ=(A,Q={})=>new J5(A,Q).makeRe();iJ.makeRe=bmQ;var mmQ=(A,Q,B={})=>{let Y=new J5(Q,B);if(A=A.filter((J)=>Y.match(J)),Y.options.nonull&&!A.length)A.push(Q);return A};iJ.match=mmQ;var sYA=/[?*]|[+@!]\(.*?\)|\[|\]/,umQ=(A)=>A.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&");class J5{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;regexp;constructor(A,Q={}){if(zI(A),Q=Q||{},this.options=Q,this.pattern=A,this.platform=Q.platform||tYA,this.isWindows=this.platform==="win32",this.windowsPathsNoEscape=!!Q.windowsPathsNoEscape||Q.allowWindowsEscape===!1,this.windowsPathsNoEscape)this.pattern=this.pattern.replace(/\\/g,"/");this.preserveMultipleSlashes=!!Q.preserveMultipleSlashes,this.regexp=null,this.negate=!1,this.nonegate=!!Q.nonegate,this.comment=!1,this.empty=!1,this.partial=!!Q.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=Q.windowsNoMagicRoot!==void 0?Q.windowsNoMagicRoot:!!(this.isWindows&&this.nocase),this.globSet=[],this.globParts=[],this.set=[],this.make()}hasMagic(){if(this.options.magicalBraces&&this.set.length>1)return!0;for(let A of this.set)for(let Q of A)if(typeof Q!=="string")return!0;return!1}debug(...A){}make(){let A=this.pattern,Q=this.options;if(!Q.nocomment&&A.charAt(0)==="#"){this.comment=!0;return}if(!A){this.empty=!0;return}if(this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],Q.debug)this.debug=(...J)=>console.error(...J);this.debug(this.pattern,this.globSet);let B=this.globSet.map((J)=>this.slashSplit(J));this.globParts=this.preprocess(B),this.debug(this.pattern,this.globParts);let Y=this.globParts.map((J,C,X)=>{if(this.isWindows&&this.windowsNoMagicRoot){let G=J[0]===""&&J[1]===""&&(J[2]==="?"||!sYA.test(J[2]))&&!sYA.test(J[3]),W=/^[a-z]:/i.test(J[0]);if(G)return[...J.slice(0,4),...J.slice(4).map((F)=>this.parse(F))];else if(W)return[J[0],...J.slice(1).map((F)=>this.parse(F))]}return J.map((G)=>this.parse(G))});if(this.debug(this.pattern,Y),this.set=Y.filter((J)=>J.indexOf(!1)===-1),this.isWindows)for(let J=0;J=2)A=this.firstPhasePreProcess(A),A=this.secondPhasePreProcess(A);else if(Q>=1)A=this.levelOneOptimize(A);else A=this.adjascentGlobstarOptimize(A);return A}adjascentGlobstarOptimize(A){return A.map((Q)=>{let B=-1;while((B=Q.indexOf("**",B+1))!==-1){let Y=B;while(Q[Y+1]==="**")Y++;if(Y!==B)Q.splice(B,Y-B)}return Q})}levelOneOptimize(A){return A.map((Q)=>{return Q=Q.reduce((B,Y)=>{let J=B[B.length-1];if(Y==="**"&&J==="**")return B;if(Y===".."){if(J&&J!==".."&&J!=="."&&J!=="**")return B.pop(),B}return B.push(Y),B},[]),Q.length===0?[""]:Q})}levelTwoFileOptimize(A){if(!Array.isArray(A))A=this.slashSplit(A);let Q=!1;do{if(Q=!1,!this.preserveMultipleSlashes){for(let Y=1;YY)B.splice(Y+1,C-Y);let X=B[Y+1],G=B[Y+2],W=B[Y+3];if(X!=="..")continue;if(!G||G==="."||G===".."||!W||W==="."||W==="..")continue;Q=!0,B.splice(Y,1);let F=B.slice(0);F[Y]="**",A.push(F),Y--}if(!this.preserveMultipleSlashes){for(let C=1;CQ.length)}partsMatch(A,Q,B=!1){let Y=0,J=0,C=[],X="";while(YD)Q=Q.slice(L);else if(D>L)A=A.slice(D)}}}let{optimizationLevel:J=1}=this.options;if(J>=2)A=this.levelTwoFileOptimize(A);this.debug("matchOne",this,{file:A,pattern:Q}),this.debug("matchOne",A.length,Q.length);for(var C=0,X=0,G=A.length,W=Q.length;C>> no match, partial?`,A,U,Q,$),U===G)return!0}return!1}let K;if(typeof W==="string")K=Z===W,this.debug("string match",W,Z,K);else K=W.test(Z),this.debug("pattern match",W,Z,K);if(!K)return!1}if(C===G&&X===F)return!0;else if(C===G)return B;else if(X===F)return C===G-1&&A[C]==="";else throw Error("wtf?")}braceExpand(){return UYA(this.pattern,this.options)}parse(A){$I(A);let Q=this.options;if(A==="**")return eY;if(A==="")return"";let B,Y=null;if(B=A.match(zbQ))Y=Q.dot?wbQ:RbQ;else if(B=A.match(EbQ))Y=(Q.nocase?Q.dot?HbQ:IbQ:Q.dot?VbQ:KbQ)(B[1]);else if(B=A.match(jbQ))Y=(Q.nocase?Q.dot?PbQ:ObQ:Q.dot?TbQ:SbQ)(B);else if(B=A.match(DbQ))Y=Q.dot?LbQ:NbQ;else if(B=A.match(qbQ))Y=MbQ;let J=tY.fromGlob(A,this.options).toMMPattern();if(Y&&typeof J==="object")Reflect.defineProperty(J,"test",{value:Y});return J}makeRe(){if(this.regexp||this.regexp===!1)return this.regexp;let A=this.set;if(!A.length)return this.regexp=!1,this.regexp;let Q=this.options,B=Q.noglobstar?vbQ:Q.dot?ybQ:hbQ,Y=new Set(Q.nocase?["i"]:[]),J=A.map((G)=>{let F=G.map((W)=>{if(W instanceof RegExp)for(let Z of W.flags.split(""))Y.add(Z);return typeof W==="string"?mbQ(W):W===eY?eY:W._src});return F.forEach((W,Z)=>{let U=F[Z+1],$=F[Z-1];if(W!==eY||$===eY)return;if($===void 0)if(U!==void 0&&U!==eY)F[Z+1]="(?:\\/|"+B+"\\/)?"+U;else F[Z]=B;else if(U===void 0)F[Z-1]=$+"(?:\\/|"+B+")?";else if(U!==eY)F[Z-1]=$+"(?:\\/|\\/"+B+"\\/)"+U,F[Z+1]=eY}),F.filter((W)=>W!==eY).join("/")}).join("|"),[C,X]=A.length>1?["(?:",")"]:["",""];if(J="^"+C+J+X+"$",this.negate)J="^(?!"+J+").+$";try{this.regexp=new RegExp(J,[...Y].join(""))}catch(G){this.regexp=!1}return this.regexp}slashSplit(A){if(this.preserveMultipleSlashes)return A.split("/");else if(this.isWindows&&/^\/\/[^\/]+/.test(A))return["",...A.split(/\/+/)];else return A.split(/\/+/)}match(A,Q=this.partial){if(this.debug("match",A,this.pattern),this.comment)return!1;if(this.empty)return A==="";if(A==="/"&&Q)return!0;let B=this.options;if(this.isWindows)A=A.split("\\").join("/");let Y=this.slashSplit(A);this.debug(this.pattern,"split",Y);let J=this.set;this.debug(this.pattern,"set",J);let C=Y[Y.length-1];if(!C)for(let X=Y.length-2;!C&&X>=0;X--)C=Y[X];for(let X=0;X{typeof Ly.emitWarning==="function"?Ly.emitWarning(A,Q,B,Y):console.error(`[${B}] ${Q}: ${A}`)},B2=globalThis.AbortController,EYA=globalThis.AbortSignal;if(typeof B2>"u"){EYA=class{onabort;_onabort=[];reason;aborted=!1;addEventListener(Y,J){this._onabort.push(J)}},B2=class{constructor(){Q()}signal=new EYA;abort(Y){if(this.signal.aborted)return;this.signal.reason=Y,this.signal.aborted=!0;for(let J of this.signal._onabort)J(Y);this.signal.onabort?.(Y)}};let A=Ly.env?.LRU_CACHE_IGNORE_AC_WARNING!=="1",Q=()=>{if(!A)return;A=!1,VYA("AbortController is not defined. If using lru-cache in node 14, load an AbortController polyfill from the `node-abort-controller` package. A minimal polyfill is provided for use by LRUCache.fetch(), but it should not be relied upon in other contexts (eg, passing it to other APIs that use AbortController/AbortSignal might have undesirable effects). You may disable this with LRU_CACHE_IGNORE_AC_WARNING=1 in the env.","NO_ABORT_CONTROLLER","ENOTSUP",Q)}}var ubQ=(A)=>!KYA.has(A),FCY=Symbol("type"),iG=(A)=>A&&A===Math.floor(A)&&A>0&&isFinite(A),IYA=(A)=>!iG(A)?null:A<=Math.pow(2,8)?Uint8Array:A<=Math.pow(2,16)?Uint16Array:A<=Math.pow(2,32)?Uint32Array:A<=Number.MAX_SAFE_INTEGER?EI:null;class EI extends Array{constructor(A){super(A);this.fill(0)}}class S4{heap;length;static#A=!1;static create(A){let Q=IYA(A);if(!Q)return[];S4.#A=!0;let B=new S4(A,Q);return S4.#A=!1,B}constructor(A,Q){if(!S4.#A)throw TypeError("instantiate Stack using Stack.create(n)");this.heap=new Q(A),this.length=0}push(A){this.heap[this.length++]=A}pop(){return this.heap[--this.length]}}class KI{#A;#Q;#B;#Y;#J;#C;#F;ttl;ttlResolution;ttlAutopurge;updateAgeOnGet;updateAgeOnHas;allowStale;noDisposeOnSet;noUpdateTTL;maxEntrySize;sizeCalculation;noDeleteOnFetchRejection;noDeleteOnStaleGet;allowStaleOnFetchAbort;allowStaleOnFetchRejection;ignoreFetchAbort;#X;#G;#Z;#U;#W;#E;#V;#I;#D;#O;#N;#P;#M;#q;#L;#w;#H;#S;static unsafeExposeInternals(A){return{starts:A.#M,ttls:A.#q,sizes:A.#P,keyMap:A.#Z,keyList:A.#U,valList:A.#W,next:A.#E,prev:A.#V,get head(){return A.#I},get tail(){return A.#D},free:A.#O,isBackgroundFetch:(Q)=>A.#K(Q),backgroundFetch:(Q,B,Y,J)=>A.#h(Q,B,Y,J),moveToTail:(Q)=>A.#f(Q),indexes:(Q)=>A.#j(Q),rindexes:(Q)=>A.#T(Q),isStale:(Q)=>A.#R(Q)}}get max(){return this.#A}get maxSize(){return this.#Q}get calculatedSize(){return this.#G}get size(){return this.#X}get fetchMethod(){return this.#C}get memoMethod(){return this.#F}get dispose(){return this.#B}get onInsert(){return this.#Y}get disposeAfter(){return this.#J}constructor(A){let{max:Q=0,ttl:B,ttlResolution:Y=1,ttlAutopurge:J,updateAgeOnGet:C,updateAgeOnHas:X,allowStale:G,dispose:F,onInsert:W,disposeAfter:Z,noDisposeOnSet:U,noUpdateTTL:$,maxSize:E=0,maxEntrySize:K=0,sizeCalculation:I,fetchMethod:V,memoMethod:H,noDeleteOnFetchRejection:D,noDeleteOnStaleGet:L,allowStaleOnFetchRejection:z,allowStaleOnFetchAbort:M,ignoreFetchAbort:N}=A;if(Q!==0&&!iG(Q))throw TypeError("max option must be a nonnegative integer");let q=Q?IYA(Q):Array;if(!q)throw Error("invalid max value: "+Q);if(this.#A=Q,this.#Q=E,this.maxEntrySize=K||this.#Q,this.sizeCalculation=I,this.sizeCalculation){if(!this.#Q&&!this.maxEntrySize)throw TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");if(typeof this.sizeCalculation!=="function")throw TypeError("sizeCalculation set to non-function")}if(H!==void 0&&typeof H!=="function")throw TypeError("memoMethod must be a function if defined");if(this.#F=H,V!==void 0&&typeof V!=="function")throw TypeError("fetchMethod must be a function if specified");if(this.#C=V,this.#w=!!V,this.#Z=new Map,this.#U=Array(Q).fill(void 0),this.#W=Array(Q).fill(void 0),this.#E=new q(Q),this.#V=new q(Q),this.#I=0,this.#D=0,this.#O=S4.create(Q),this.#X=0,this.#G=0,typeof F==="function")this.#B=F;if(typeof W==="function")this.#Y=W;if(typeof Z==="function")this.#J=Z,this.#N=[];else this.#J=void 0,this.#N=void 0;if(this.#L=!!this.#B,this.#S=!!this.#Y,this.#H=!!this.#J,this.noDisposeOnSet=!!U,this.noUpdateTTL=!!$,this.noDeleteOnFetchRejection=!!D,this.allowStaleOnFetchRejection=!!z,this.allowStaleOnFetchAbort=!!M,this.ignoreFetchAbort=!!N,this.maxEntrySize!==0){if(this.#Q!==0){if(!iG(this.#Q))throw TypeError("maxSize must be a positive integer if specified")}if(!iG(this.maxEntrySize))throw TypeError("maxEntrySize must be a positive integer if specified");this.#m()}if(this.allowStale=!!G,this.noDeleteOnStaleGet=!!L,this.updateAgeOnGet=!!C,this.updateAgeOnHas=!!X,this.ttlResolution=iG(Y)||Y===0?Y:1,this.ttlAutopurge=!!J,this.ttl=B||0,this.ttl){if(!iG(this.ttl))throw TypeError("ttl must be a positive integer if specified");this.#$()}if(this.#A===0&&this.ttl===0&&this.#Q===0)throw TypeError("At least one of max, maxSize, or ttl is required");if(!this.ttlAutopurge&&!this.#A&&!this.#Q){if(ubQ("LRU_CACHE_UNBOUNDED"))KYA.add("LRU_CACHE_UNBOUNDED"),VYA("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning","LRU_CACHE_UNBOUNDED",KI)}}getRemainingTTL(A){return this.#Z.has(A)?1/0:0}#$(){let A=new EI(this.#A),Q=new EI(this.#A);this.#q=A,this.#M=Q,this.#k=(J,C,X=T4.now())=>{if(Q[J]=C!==0?X:0,A[J]=C,C!==0&&this.ttlAutopurge){let G=setTimeout(()=>{if(this.#R(J))this.#_(this.#U[J],"expire")},C+1);if(G.unref)G.unref()}},this.#v=(J)=>{Q[J]=A[J]!==0?T4.now():0},this.#z=(J,C)=>{if(A[C]){let X=A[C],G=Q[C];if(!X||!G)return;J.ttl=X,J.start=G,J.now=B||Y();let F=J.now-G;J.remainingTTL=X-F}};let B=0,Y=()=>{let J=T4.now();if(this.ttlResolution>0){B=J;let C=setTimeout(()=>B=0,this.ttlResolution);if(C.unref)C.unref()}return J};this.getRemainingTTL=(J)=>{let C=this.#Z.get(J);if(C===void 0)return 0;let X=A[C],G=Q[C];if(!X||!G)return 1/0;let F=(B||Y())-G;return X-F},this.#R=(J)=>{let C=Q[J],X=A[J];return!!X&&!!C&&(B||Y())-C>X}}#v=()=>{};#z=()=>{};#k=()=>{};#R=()=>!1;#m(){let A=new EI(this.#A);this.#G=0,this.#P=A,this.#y=(Q)=>{this.#G-=A[Q],A[Q]=0},this.#u=(Q,B,Y,J)=>{if(this.#K(B))return 0;if(!iG(Y))if(J){if(typeof J!=="function")throw TypeError("sizeCalculation must be a function");if(Y=J(B,Q),!iG(Y))throw TypeError("sizeCalculation return invalid (expect positive integer)")}else throw TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");return Y},this.#g=(Q,B,Y)=>{if(A[Q]=B,this.#Q){let J=this.#Q-A[Q];while(this.#G>J)this.#x(!0)}if(this.#G+=A[Q],Y)Y.entrySize=B,Y.totalCalculatedSize=this.#G}}#y=(A)=>{};#g=(A,Q,B)=>{};#u=(A,Q,B,Y)=>{if(B||Y)throw TypeError("cannot set size without setting maxSize or maxEntrySize on cache");return 0};*#j({allowStale:A=this.allowStale}={}){if(this.#X)for(let Q=this.#D;;){if(!this.#d(Q))break;if(A||!this.#R(Q))yield Q;if(Q===this.#I)break;else Q=this.#V[Q]}}*#T({allowStale:A=this.allowStale}={}){if(this.#X)for(let Q=this.#I;;){if(!this.#d(Q))break;if(A||!this.#R(Q))yield Q;if(Q===this.#D)break;else Q=this.#E[Q]}}#d(A){return A!==void 0&&this.#Z.get(this.#U[A])===A}*entries(){for(let A of this.#j())if(this.#W[A]!==void 0&&this.#U[A]!==void 0&&!this.#K(this.#W[A]))yield[this.#U[A],this.#W[A]]}*rentries(){for(let A of this.#T())if(this.#W[A]!==void 0&&this.#U[A]!==void 0&&!this.#K(this.#W[A]))yield[this.#U[A],this.#W[A]]}*keys(){for(let A of this.#j()){let Q=this.#U[A];if(Q!==void 0&&!this.#K(this.#W[A]))yield Q}}*rkeys(){for(let A of this.#T()){let Q=this.#U[A];if(Q!==void 0&&!this.#K(this.#W[A]))yield Q}}*values(){for(let A of this.#j())if(this.#W[A]!==void 0&&!this.#K(this.#W[A]))yield this.#W[A]}*rvalues(){for(let A of this.#T())if(this.#W[A]!==void 0&&!this.#K(this.#W[A]))yield this.#W[A]}[Symbol.iterator](){return this.entries()}[Symbol.toStringTag]="LRUCache";find(A,Q={}){for(let B of this.#j()){let Y=this.#W[B],J=this.#K(Y)?Y.__staleWhileFetching:Y;if(J===void 0)continue;if(A(J,this.#U[B],this))return this.get(this.#U[B],Q)}}forEach(A,Q=this){for(let B of this.#j()){let Y=this.#W[B],J=this.#K(Y)?Y.__staleWhileFetching:Y;if(J===void 0)continue;A.call(Q,J,this.#U[B],this)}}rforEach(A,Q=this){for(let B of this.#T()){let Y=this.#W[B],J=this.#K(Y)?Y.__staleWhileFetching:Y;if(J===void 0)continue;A.call(Q,J,this.#U[B],this)}}purgeStale(){let A=!1;for(let Q of this.#T({allowStale:!0}))if(this.#R(Q))this.#_(this.#U[Q],"expire"),A=!0;return A}info(A){let Q=this.#Z.get(A);if(Q===void 0)return;let B=this.#W[Q],Y=this.#K(B)?B.__staleWhileFetching:B;if(Y===void 0)return;let J={value:Y};if(this.#q&&this.#M){let C=this.#q[Q],X=this.#M[Q];if(C&&X){let G=C-(T4.now()-X);J.ttl=G,J.start=Date.now()}}if(this.#P)J.size=this.#P[Q];return J}dump(){let A=[];for(let Q of this.#j({allowStale:!0})){let B=this.#U[Q],Y=this.#W[Q],J=this.#K(Y)?Y.__staleWhileFetching:Y;if(J===void 0||B===void 0)continue;let C={value:J};if(this.#q&&this.#M){C.ttl=this.#q[Q];let X=T4.now()-this.#M[Q];C.start=Math.floor(Date.now()-X)}if(this.#P)C.size=this.#P[Q];A.unshift([B,C])}return A}load(A){this.clear();for(let[Q,B]of A){if(B.start){let Y=Date.now()-B.start;B.start=T4.now()-Y}this.set(Q,B.value,B)}}set(A,Q,B={}){if(Q===void 0)return this.delete(A),this;let{ttl:Y=this.ttl,start:J,noDisposeOnSet:C=this.noDisposeOnSet,sizeCalculation:X=this.sizeCalculation,status:G}=B,{noUpdateTTL:F=this.noUpdateTTL}=B,W=this.#u(A,Q,B.size||0,X);if(this.maxEntrySize&&W>this.maxEntrySize){if(G)G.set="miss",G.maxEntrySizeExceeded=!0;return this.#_(A,"set"),this}let Z=this.#X===0?void 0:this.#Z.get(A);if(Z===void 0){if(Z=this.#X===0?this.#D:this.#O.length!==0?this.#O.pop():this.#X===this.#A?this.#x(!1):this.#X,this.#U[Z]=A,this.#W[Z]=Q,this.#Z.set(A,Z),this.#E[this.#D]=Z,this.#V[Z]=this.#D,this.#D=Z,this.#X++,this.#g(Z,W,G),G)G.set="add";if(F=!1,this.#S)this.#Y?.(Q,A,"add")}else{this.#f(Z);let U=this.#W[Z];if(Q!==U){if(this.#w&&this.#K(U)){U.__abortController.abort(Error("replaced"));let{__staleWhileFetching:$}=U;if($!==void 0&&!C){if(this.#L)this.#B?.($,A,"set");if(this.#H)this.#N?.push([$,A,"set"])}}else if(!C){if(this.#L)this.#B?.(U,A,"set");if(this.#H)this.#N?.push([U,A,"set"])}if(this.#y(Z),this.#g(Z,W,G),this.#W[Z]=Q,G){G.set="replace";let $=U&&this.#K(U)?U.__staleWhileFetching:U;if($!==void 0)G.oldValue=$}}else if(G)G.set="update";if(this.#S)this.onInsert?.(Q,A,Q===U?"update":"replace")}if(Y!==0&&!this.#q)this.#$();if(this.#q){if(!F)this.#k(Z,Y,J);if(G)this.#z(G,Z)}if(!C&&this.#H&&this.#N){let U=this.#N,$;while($=U?.shift())this.#J?.(...$)}return this}pop(){try{while(this.#X){let A=this.#W[this.#I];if(this.#x(!0),this.#K(A)){if(A.__staleWhileFetching)return A.__staleWhileFetching}else if(A!==void 0)return A}}finally{if(this.#H&&this.#N){let A=this.#N,Q;while(Q=A?.shift())this.#J?.(...Q)}}}#x(A){let Q=this.#I,B=this.#U[Q],Y=this.#W[Q];if(this.#w&&this.#K(Y))Y.__abortController.abort(Error("evicted"));else if(this.#L||this.#H){if(this.#L)this.#B?.(Y,B,"evict");if(this.#H)this.#N?.push([Y,B,"evict"])}if(this.#y(Q),A)this.#U[Q]=void 0,this.#W[Q]=void 0,this.#O.push(Q);if(this.#X===1)this.#I=this.#D=0,this.#O.length=0;else this.#I=this.#E[Q];return this.#Z.delete(B),this.#X--,Q}has(A,Q={}){let{updateAgeOnHas:B=this.updateAgeOnHas,status:Y}=Q,J=this.#Z.get(A);if(J!==void 0){let C=this.#W[J];if(this.#K(C)&&C.__staleWhileFetching===void 0)return!1;if(!this.#R(J)){if(B)this.#v(J);if(Y)Y.has="hit",this.#z(Y,J);return!0}else if(Y)Y.has="stale",this.#z(Y,J)}else if(Y)Y.has="miss";return!1}peek(A,Q={}){let{allowStale:B=this.allowStale}=Q,Y=this.#Z.get(A);if(Y===void 0||!B&&this.#R(Y))return;let J=this.#W[Y];return this.#K(J)?J.__staleWhileFetching:J}#h(A,Q,B,Y){let J=Q===void 0?void 0:this.#W[Q];if(this.#K(J))return J;let C=new B2,{signal:X}=B;X?.addEventListener("abort",()=>C.abort(X.reason),{signal:C.signal});let G={signal:C.signal,options:B,context:Y},F=(K,I=!1)=>{let{aborted:V}=C.signal,H=B.ignoreFetchAbort&&K!==void 0;if(B.status)if(V&&!I){if(B.status.fetchAborted=!0,B.status.fetchError=C.signal.reason,H)B.status.fetchAbortIgnored=!0}else B.status.fetchResolved=!0;if(V&&!H&&!I)return Z(C.signal.reason);let D=$;if(this.#W[Q]===$)if(K===void 0)if(D.__staleWhileFetching)this.#W[Q]=D.__staleWhileFetching;else this.#_(A,"fetch");else{if(B.status)B.status.fetchUpdated=!0;this.set(A,K,G.options)}return K},W=(K)=>{if(B.status)B.status.fetchRejected=!0,B.status.fetchError=K;return Z(K)},Z=(K)=>{let{aborted:I}=C.signal,V=I&&B.allowStaleOnFetchAbort,H=V||B.allowStaleOnFetchRejection,D=H||B.noDeleteOnFetchRejection,L=$;if(this.#W[Q]===$){if(!D||L.__staleWhileFetching===void 0)this.#_(A,"fetch");else if(!V)this.#W[Q]=L.__staleWhileFetching}if(H){if(B.status&&L.__staleWhileFetching!==void 0)B.status.returnedStale=!0;return L.__staleWhileFetching}else if(L.__returned===L)throw K},U=(K,I)=>{let V=this.#C?.(A,J,G);if(V&&V instanceof Promise)V.then((H)=>K(H===void 0?void 0:H),I);C.signal.addEventListener("abort",()=>{if(!B.ignoreFetchAbort||B.allowStaleOnFetchAbort){if(K(void 0),B.allowStaleOnFetchAbort)K=(H)=>F(H,!0)}})};if(B.status)B.status.fetchDispatched=!0;let $=new Promise(U).then(F,W),E=Object.assign($,{__abortController:C,__staleWhileFetching:J,__returned:void 0});if(Q===void 0)this.set(A,E,{...G.options,status:void 0}),Q=this.#Z.get(A);else this.#W[Q]=E;return E}#K(A){if(!this.#w)return!1;let Q=A;return!!Q&&Q instanceof Promise&&Q.hasOwnProperty("__staleWhileFetching")&&Q.__abortController instanceof B2}async fetch(A,Q={}){let{allowStale:B=this.allowStale,updateAgeOnGet:Y=this.updateAgeOnGet,noDeleteOnStaleGet:J=this.noDeleteOnStaleGet,ttl:C=this.ttl,noDisposeOnSet:X=this.noDisposeOnSet,size:G=0,sizeCalculation:F=this.sizeCalculation,noUpdateTTL:W=this.noUpdateTTL,noDeleteOnFetchRejection:Z=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:U=this.allowStaleOnFetchRejection,ignoreFetchAbort:$=this.ignoreFetchAbort,allowStaleOnFetchAbort:E=this.allowStaleOnFetchAbort,context:K,forceRefresh:I=!1,status:V,signal:H}=Q;if(!this.#w){if(V)V.fetch="get";return this.get(A,{allowStale:B,updateAgeOnGet:Y,noDeleteOnStaleGet:J,status:V})}let D={allowStale:B,updateAgeOnGet:Y,noDeleteOnStaleGet:J,ttl:C,noDisposeOnSet:X,size:G,sizeCalculation:F,noUpdateTTL:W,noDeleteOnFetchRejection:Z,allowStaleOnFetchRejection:U,allowStaleOnFetchAbort:E,ignoreFetchAbort:$,status:V,signal:H},L=this.#Z.get(A);if(L===void 0){if(V)V.fetch="miss";let z=this.#h(A,L,D,K);return z.__returned=z}else{let z=this.#W[L];if(this.#K(z)){let P=B&&z.__staleWhileFetching!==void 0;if(V){if(V.fetch="inflight",P)V.returnedStale=!0}return P?z.__staleWhileFetching:z.__returned=z}let M=this.#R(L);if(!I&&!M){if(V)V.fetch="hit";if(this.#f(L),Y)this.#v(L);if(V)this.#z(V,L);return z}let N=this.#h(A,L,D,K),w=N.__staleWhileFetching!==void 0&&B;if(V){if(V.fetch=M?"stale":"refresh",w&&M)V.returnedStale=!0}return w?N.__staleWhileFetching:N.__returned=N}}async forceFetch(A,Q={}){let B=await this.fetch(A,Q);if(B===void 0)throw Error("fetch() returned undefined");return B}memo(A,Q={}){let B=this.#F;if(!B)throw Error("no memoMethod provided to constructor");let{context:Y,forceRefresh:J,...C}=Q,X=this.get(A,C);if(!J&&X!==void 0)return X;let G=B(A,X,{options:C,context:Y});return this.set(A,G,C),G}get(A,Q={}){let{allowStale:B=this.allowStale,updateAgeOnGet:Y=this.updateAgeOnGet,noDeleteOnStaleGet:J=this.noDeleteOnStaleGet,status:C}=Q,X=this.#Z.get(A);if(X!==void 0){let G=this.#W[X],F=this.#K(G);if(C)this.#z(C,X);if(this.#R(X)){if(C)C.get="stale";if(!F){if(!J)this.#_(A,"expire");if(C&&B)C.returnedStale=!0;return B?G:void 0}else{if(C&&B&&G.__staleWhileFetching!==void 0)C.returnedStale=!0;return B?G.__staleWhileFetching:void 0}}else{if(C)C.get="hit";if(F)return G.__staleWhileFetching;if(this.#f(X),Y)this.#v(X);return G}}else if(C)C.get="miss"}#c(A,Q){this.#V[Q]=A,this.#E[A]=Q}#f(A){if(A!==this.#D){if(A===this.#I)this.#I=this.#E[A];else this.#c(this.#V[A],this.#E[A]);this.#c(this.#D,A),this.#D=A}}delete(A){return this.#_(A,"delete")}#_(A,Q){let B=!1;if(this.#X!==0){let Y=this.#Z.get(A);if(Y!==void 0)if(B=!0,this.#X===1)this.#b(Q);else{this.#y(Y);let J=this.#W[Y];if(this.#K(J))J.__abortController.abort(Error("deleted"));else if(this.#L||this.#H){if(this.#L)this.#B?.(J,A,Q);if(this.#H)this.#N?.push([J,A,Q])}if(this.#Z.delete(A),this.#U[Y]=void 0,this.#W[Y]=void 0,Y===this.#D)this.#D=this.#V[Y];else if(Y===this.#I)this.#I=this.#E[Y];else{let C=this.#V[Y];this.#E[C]=this.#E[Y];let X=this.#E[Y];this.#V[X]=this.#V[Y]}this.#X--,this.#O.push(Y)}}if(this.#H&&this.#N?.length){let Y=this.#N,J;while(J=Y?.shift())this.#J?.(...J)}return B}clear(){return this.#b("delete")}#b(A){for(let Q of this.#T({allowStale:!0})){let B=this.#W[Q];if(this.#K(B))B.__abortController.abort(Error("deleted"));else{let Y=this.#U[Q];if(this.#L)this.#B?.(B,Y,A);if(this.#H)this.#N?.push([B,Y,A])}}if(this.#Z.clear(),this.#W.fill(void 0),this.#U.fill(void 0),this.#q&&this.#M)this.#q.fill(0),this.#M.fill(0);if(this.#P)this.#P.fill(0);if(this.#I=0,this.#D=0,this.#O.length=0,this.#G=0,this.#X=0,this.#H&&this.#N){let Q=this.#N,B;while(B=Q?.shift())this.#J?.(...B)}}}import{posix as tbQ,win32 as Sy}from"node:path";import{fileURLToPath as ebQ}from"node:url";import{lstatSync as AmQ,readdir as QmQ,readdirSync as BmQ,readlinkSync as YmQ,realpathSync as JmQ}from"fs";import*as CmQ from"node:fs";import{lstat as GmQ,readdir as FmQ,readlink as WmQ,realpath as ZmQ}from"node:fs/promises";import{EventEmitter as jy}from"node:events";import qYA from"node:stream";import{StringDecoder as dbQ}from"node:string_decoder";var HYA=typeof process==="object"&&process?process:{stdout:null,stderr:null},cbQ=(A)=>!!A&&typeof A==="object"&&(A instanceof OW||A instanceof qYA||lbQ(A)||pbQ(A)),lbQ=(A)=>!!A&&typeof A==="object"&&A instanceof jy&&typeof A.pipe==="function"&&A.pipe!==qYA.Writable.prototype.pipe,pbQ=(A)=>!!A&&typeof A==="object"&&A instanceof jy&&typeof A.write==="function"&&typeof A.end==="function",p6=Symbol("EOF"),i6=Symbol("maybeEmitEnd"),nG=Symbol("emittedEnd"),Y2=Symbol("emittingEnd"),VI=Symbol("emittedError"),J2=Symbol("closed"),DYA=Symbol("read"),C2=Symbol("flush"),NYA=Symbol("flushChunk"),IC=Symbol("encoding"),k4=Symbol("decoder"),xY=Symbol("flowing"),II=Symbol("paused"),_4=Symbol("resume"),fY=Symbol("buffer"),uJ=Symbol("pipes"),bY=Symbol("bufferLength"),qy=Symbol("bufferPush"),X2=Symbol("bufferShift"),KJ=Symbol("objectMode"),YY=Symbol("destroyed"),My=Symbol("error"),zy=Symbol("emitData"),LYA=Symbol("emitEnd"),Ry=Symbol("emitEnd2"),M1=Symbol("async"),wy=Symbol("abort"),G2=Symbol("aborted"),HI=Symbol("signal"),jW=Symbol("dataListeners"),Q8=Symbol("discarded"),DI=(A)=>Promise.resolve().then(A),ibQ=(A)=>A(),nbQ=(A)=>A==="end"||A==="finish"||A==="prefinish",sbQ=(A)=>A instanceof ArrayBuffer||!!A&&typeof A==="object"&&A.constructor&&A.constructor.name==="ArrayBuffer"&&A.byteLength>=0,rbQ=(A)=>!Buffer.isBuffer(A)&&ArrayBuffer.isView(A);class Oy{src;dest;opts;ondrain;constructor(A,Q,B){this.src=A,this.dest=Q,this.opts=B,this.ondrain=()=>A[_4](),this.dest.on("drain",this.ondrain)}unpipe(){this.dest.removeListener("drain",this.ondrain)}proxyErrors(A){}end(){if(this.unpipe(),this.opts.end)this.dest.end()}}class MYA extends Oy{unpipe(){this.src.removeListener("error",this.proxyErrors),super.unpipe()}constructor(A,Q,B){super(A,Q,B);this.proxyErrors=(Y)=>Q.emit("error",Y),A.on("error",this.proxyErrors)}}var abQ=(A)=>!!A.objectMode,obQ=(A)=>!A.objectMode&&!!A.encoding&&A.encoding!=="buffer";class OW extends jy{[xY]=!1;[II]=!1;[uJ]=[];[fY]=[];[KJ];[IC];[M1];[k4];[p6]=!1;[nG]=!1;[Y2]=!1;[J2]=!1;[VI]=null;[bY]=0;[YY]=!1;[HI];[G2]=!1;[jW]=0;[Q8]=!1;writable=!0;readable=!0;constructor(...A){let Q=A[0]||{};super();if(Q.objectMode&&typeof Q.encoding==="string")throw TypeError("Encoding and objectMode may not be used together");if(abQ(Q))this[KJ]=!0,this[IC]=null;else if(obQ(Q))this[IC]=Q.encoding,this[KJ]=!1;else this[KJ]=!1,this[IC]=null;if(this[M1]=!!Q.async,this[k4]=this[IC]?new dbQ(this[IC]):null,Q&&Q.debugExposeBuffer===!0)Object.defineProperty(this,"buffer",{get:()=>this[fY]});if(Q&&Q.debugExposePipes===!0)Object.defineProperty(this,"pipes",{get:()=>this[uJ]});let{signal:B}=Q;if(B)if(this[HI]=B,B.aborted)this[wy]();else B.addEventListener("abort",()=>this[wy]())}get bufferLength(){return this[bY]}get encoding(){return this[IC]}set encoding(A){throw Error("Encoding must be set at instantiation time")}setEncoding(A){throw Error("Encoding must be set at instantiation time")}get objectMode(){return this[KJ]}set objectMode(A){throw Error("objectMode must be set at instantiation time")}get["async"](){return this[M1]}set["async"](A){this[M1]=this[M1]||!!A}[wy](){this[G2]=!0,this.emit("abort",this[HI]?.reason),this.destroy(this[HI]?.reason)}get aborted(){return this[G2]}set aborted(A){}write(A,Q,B){if(this[G2])return!1;if(this[p6])throw Error("write after end");if(this[YY])return this.emit("error",Object.assign(Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),!0;if(typeof Q==="function")B=Q,Q="utf8";if(!Q)Q="utf8";let Y=this[M1]?DI:ibQ;if(!this[KJ]&&!Buffer.isBuffer(A)){if(rbQ(A))A=Buffer.from(A.buffer,A.byteOffset,A.byteLength);else if(sbQ(A))A=Buffer.from(A);else if(typeof A!=="string")throw Error("Non-contiguous data written to non-objectMode stream")}if(this[KJ]){if(this[xY]&&this[bY]!==0)this[C2](!0);if(this[xY])this.emit("data",A);else this[qy](A);if(this[bY]!==0)this.emit("readable");if(B)Y(B);return this[xY]}if(!A.length){if(this[bY]!==0)this.emit("readable");if(B)Y(B);return this[xY]}if(typeof A==="string"&&!(Q===this[IC]&&!this[k4]?.lastNeed))A=Buffer.from(A,Q);if(Buffer.isBuffer(A)&&this[IC])A=this[k4].write(A);if(this[xY]&&this[bY]!==0)this[C2](!0);if(this[xY])this.emit("data",A);else this[qy](A);if(this[bY]!==0)this.emit("readable");if(B)Y(B);return this[xY]}read(A){if(this[YY])return null;if(this[Q8]=!1,this[bY]===0||A===0||A&&A>this[bY])return this[i6](),null;if(this[KJ])A=null;if(this[fY].length>1&&!this[KJ])this[fY]=[this[IC]?this[fY].join(""):Buffer.concat(this[fY],this[bY])];let Q=this[DYA](A||null,this[fY][0]);return this[i6](),Q}[DYA](A,Q){if(this[KJ])this[X2]();else{let B=Q;if(A===B.length||A===null)this[X2]();else if(typeof B==="string")this[fY][0]=B.slice(A),Q=B.slice(0,A),this[bY]-=A;else this[fY][0]=B.subarray(A),Q=B.subarray(0,A),this[bY]-=A}if(this.emit("data",Q),!this[fY].length&&!this[p6])this.emit("drain");return Q}end(A,Q,B){if(typeof A==="function")B=A,A=void 0;if(typeof Q==="function")B=Q,Q="utf8";if(A!==void 0)this.write(A,Q);if(B)this.once("end",B);if(this[p6]=!0,this.writable=!1,this[xY]||!this[II])this[i6]();return this}[_4](){if(this[YY])return;if(!this[jW]&&!this[uJ].length)this[Q8]=!0;if(this[II]=!1,this[xY]=!0,this.emit("resume"),this[fY].length)this[C2]();else if(this[p6])this[i6]();else this.emit("drain")}resume(){return this[_4]()}pause(){this[xY]=!1,this[II]=!0,this[Q8]=!1}get destroyed(){return this[YY]}get flowing(){return this[xY]}get paused(){return this[II]}[qy](A){if(this[KJ])this[bY]+=1;else this[bY]+=A.length;this[fY].push(A)}[X2](){if(this[KJ])this[bY]-=1;else this[bY]-=this[fY][0].length;return this[fY].shift()}[C2](A=!1){do;while(this[NYA](this[X2]())&&this[fY].length);if(!A&&!this[fY].length&&!this[p6])this.emit("drain")}[NYA](A){return this.emit("data",A),this[xY]}pipe(A,Q){if(this[YY])return A;this[Q8]=!1;let B=this[nG];if(Q=Q||{},A===HYA.stdout||A===HYA.stderr)Q.end=!1;else Q.end=Q.end!==!1;if(Q.proxyErrors=!!Q.proxyErrors,B){if(Q.end)A.end()}else if(this[uJ].push(!Q.proxyErrors?new Oy(this,A,Q):new MYA(this,A,Q)),this[M1])DI(()=>this[_4]());else this[_4]();return A}unpipe(A){let Q=this[uJ].find((B)=>B.dest===A);if(Q){if(this[uJ].length===1){if(this[xY]&&this[jW]===0)this[xY]=!1;this[uJ]=[]}else this[uJ].splice(this[uJ].indexOf(Q),1);Q.unpipe()}}addListener(A,Q){return this.on(A,Q)}on(A,Q){let B=super.on(A,Q);if(A==="data"){if(this[Q8]=!1,this[jW]++,!this[uJ].length&&!this[xY])this[_4]()}else if(A==="readable"&&this[bY]!==0)super.emit("readable");else if(nbQ(A)&&this[nG])super.emit(A),this.removeAllListeners(A);else if(A==="error"&&this[VI]){let Y=Q;if(this[M1])DI(()=>Y.call(this,this[VI]));else Y.call(this,this[VI])}return B}removeListener(A,Q){return this.off(A,Q)}off(A,Q){let B=super.off(A,Q);if(A==="data"){if(this[jW]=this.listeners("data").length,this[jW]===0&&!this[Q8]&&!this[uJ].length)this[xY]=!1}return B}removeAllListeners(A){let Q=super.removeAllListeners(A);if(A==="data"||A===void 0){if(this[jW]=0,!this[Q8]&&!this[uJ].length)this[xY]=!1}return Q}get emittedEnd(){return this[nG]}[i6](){if(!this[Y2]&&!this[nG]&&!this[YY]&&this[fY].length===0&&this[p6]){if(this[Y2]=!0,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[J2])this.emit("close");this[Y2]=!1}}emit(A,...Q){let B=Q[0];if(A!=="error"&&A!=="close"&&A!==YY&&this[YY])return!1;else if(A==="data")return!this[KJ]&&!B?!1:this[M1]?(DI(()=>this[zy](B)),!0):this[zy](B);else if(A==="end")return this[LYA]();else if(A==="close"){if(this[J2]=!0,!this[nG]&&!this[YY])return!1;let J=super.emit("close");return this.removeAllListeners("close"),J}else if(A==="error"){this[VI]=B,super.emit(My,B);let J=!this[HI]||this.listeners("error").length?super.emit("error",B):!1;return this[i6](),J}else if(A==="resume"){let J=super.emit("resume");return this[i6](),J}else if(A==="finish"||A==="prefinish"){let J=super.emit(A);return this.removeAllListeners(A),J}let Y=super.emit(A,...Q);return this[i6](),Y}[zy](A){for(let B of this[uJ])if(B.dest.write(A)===!1)this.pause();let Q=this[Q8]?!1:super.emit("data",A);return this[i6](),Q}[LYA](){if(this[nG])return!1;return this[nG]=!0,this.readable=!1,this[M1]?(DI(()=>this[Ry]()),!0):this[Ry]()}[Ry](){if(this[k4]){let Q=this[k4].end();if(Q){for(let B of this[uJ])B.dest.write(Q);if(!this[Q8])super.emit("data",Q)}}for(let Q of this[uJ])Q.end();let A=super.emit("end");return this.removeAllListeners("end"),A}async collect(){let A=Object.assign([],{dataLength:0});if(!this[KJ])A.dataLength=0;let Q=this.promise();return this.on("data",(B)=>{if(A.push(B),!this[KJ])A.dataLength+=B.length}),await Q,A}async concat(){if(this[KJ])throw Error("cannot concat in objectMode");let A=await this.collect();return this[IC]?A.join(""):Buffer.concat(A,A.dataLength)}async promise(){return new Promise((A,Q)=>{this.on(YY,()=>Q(Error("stream destroyed"))),this.on("error",(B)=>Q(B)),this.on("end",()=>A())})}[Symbol.asyncIterator](){this[Q8]=!1;let A=!1,Q=async()=>{return this.pause(),A=!0,{value:void 0,done:!0}};return{next:()=>{if(A)return Q();let Y=this.read();if(Y!==null)return Promise.resolve({done:!1,value:Y});if(this[p6])return Q();let J,C,X=(Z)=>{this.off("data",G),this.off("end",F),this.off(YY,W),Q(),C(Z)},G=(Z)=>{this.off("error",X),this.off("end",F),this.off(YY,W),this.pause(),J({value:Z,done:!!this[p6]})},F=()=>{this.off("error",X),this.off("data",G),this.off(YY,W),Q(),J({done:!0,value:void 0})},W=()=>X(Error("stream destroyed"));return new Promise((Z,U)=>{C=U,J=Z,this.once(YY,W),this.once("error",X),this.once("end",F),this.once("data",G)})},throw:Q,return:Q,[Symbol.asyncIterator](){return this}}}[Symbol.iterator](){this[Q8]=!1;let A=!1,Q=()=>{return this.pause(),this.off(My,Q),this.off(YY,Q),this.off("end",Q),A=!0,{done:!0,value:void 0}},B=()=>{if(A)return Q();let Y=this.read();return Y===null?Q():{done:!1,value:Y}};return this.once("end",Q),this.once(My,Q),this.once(YY,Q),{next:B,throw:Q,return:Q,[Symbol.iterator](){return this}}}destroy(A){if(this[YY]){if(A)this.emit("error",A);else this.emit(YY);return this}this[YY]=!0,this[Q8]=!0,this[fY].length=0,this[bY]=0;let Q=this;if(typeof Q.close==="function"&&!this[J2])Q.close();if(A)this.emit("error",A);else this.emit(YY);return this}static get isStream(){return cbQ}}var XmQ=JmQ.native,LI={lstatSync:AmQ,readdir:QmQ,readdirSync:BmQ,readlinkSync:YmQ,realpathSync:XmQ,promises:{lstat:GmQ,readdir:FmQ,readlink:WmQ,realpath:ZmQ}},OYA=(A)=>!A||A===LI||A===CmQ?LI:{...LI,...A,promises:{...LI.promises,...A.promises||{}}},PYA=/^\\\\\?\\([a-z]:)\\?$/i,$mQ=(A)=>A.replace(/\//g,"\\").replace(PYA,"$1\\"),UmQ=/[\\\/]/,o8=0,TYA=1,SYA=2,z1=4,kYA=6,_YA=8,PW=10,vYA=12,a8=15,NI=~a8,Py=16,zYA=32,qI=64,HC=128,F2=256,Z2=512,RYA=qI|HC|Z2,EmQ=1023,Ty=(A)=>A.isFile()?_YA:A.isDirectory()?z1:A.isSymbolicLink()?PW:A.isCharacterDevice()?SYA:A.isBlockDevice()?kYA:A.isSocket()?vYA:A.isFIFO()?TYA:o8,wYA=new Map,MI=(A)=>{let Q=wYA.get(A);if(Q)return Q;let B=A.normalize("NFKD");return wYA.set(A,B),B},jYA=new Map,W2=(A)=>{let Q=jYA.get(A);if(Q)return Q;let B=MI(A.toLowerCase());return jYA.set(A,B),B};class ky extends KI{constructor(){super({max:256})}}class yYA extends KI{constructor(A=16384){super({maxSize:A,sizeCalculation:(Q)=>Q.length+1})}}var hYA=Symbol("PathScurry setAsCwd");class dJ{name;root;roots;parent;nocase;isCWD=!1;#A;#Q;get dev(){return this.#Q}#B;get mode(){return this.#B}#Y;get nlink(){return this.#Y}#J;get uid(){return this.#J}#C;get gid(){return this.#C}#F;get rdev(){return this.#F}#X;get blksize(){return this.#X}#G;get ino(){return this.#G}#Z;get size(){return this.#Z}#U;get blocks(){return this.#U}#W;get atimeMs(){return this.#W}#E;get mtimeMs(){return this.#E}#V;get ctimeMs(){return this.#V}#I;get birthtimeMs(){return this.#I}#D;get atime(){return this.#D}#O;get mtime(){return this.#O}#N;get ctime(){return this.#N}#P;get birthtime(){return this.#P}#M;#q;#L;#w;#H;#S;#$;#v;#z;#k;get parentPath(){return(this.parent||this).fullpath()}get path(){return this.parentPath}constructor(A,Q=o8,B,Y,J,C,X){if(this.name=A,this.#M=J?W2(A):MI(A),this.#$=Q&EmQ,this.nocase=J,this.roots=Y,this.root=B||this,this.#v=C,this.#L=X.fullpath,this.#H=X.relative,this.#S=X.relativePosix,this.parent=X.parent,this.parent)this.#A=this.parent.#A;else this.#A=OYA(X.fs)}depth(){if(this.#q!==void 0)return this.#q;if(!this.parent)return this.#q=0;return this.#q=this.parent.depth()+1}childrenCache(){return this.#v}resolve(A){if(!A)return this;let Q=this.getRootString(A),Y=A.substring(Q.length).split(this.splitSep);return Q?this.getRoot(Q).#R(Y):this.#R(Y)}#R(A){let Q=this;for(let B of A)Q=Q.child(B);return Q}children(){let A=this.#v.get(this);if(A)return A;let Q=Object.assign([],{provisional:0});return this.#v.set(this,Q),this.#$&=~Py,Q}child(A,Q){if(A===""||A===".")return this;if(A==="..")return this.parent||this;let B=this.children(),Y=this.nocase?W2(A):MI(A);for(let G of B)if(G.#M===Y)return G;let J=this.parent?this.sep:"",C=this.#L?this.#L+J+A:void 0,X=this.newChild(A,o8,{...Q,parent:this,fullpath:C});if(!this.canReaddir())X.#$|=HC;return B.push(X),X}relative(){if(this.isCWD)return"";if(this.#H!==void 0)return this.#H;let A=this.name,Q=this.parent;if(!Q)return this.#H=this.name;let B=Q.relative();return B+(!B||!Q.parent?"":this.sep)+A}relativePosix(){if(this.sep==="/")return this.relative();if(this.isCWD)return"";if(this.#S!==void 0)return this.#S;let A=this.name,Q=this.parent;if(!Q)return this.#S=this.fullpathPosix();let B=Q.relativePosix();return B+(!B||!Q.parent?"":"/")+A}fullpath(){if(this.#L!==void 0)return this.#L;let A=this.name,Q=this.parent;if(!Q)return this.#L=this.name;let Y=Q.fullpath()+(!Q.parent?"":this.sep)+A;return this.#L=Y}fullpathPosix(){if(this.#w!==void 0)return this.#w;if(this.sep==="/")return this.#w=this.fullpath();if(!this.parent){let Y=this.fullpath().replace(/\\/g,"/");if(/^[a-z]:\//i.test(Y))return this.#w=`//?/${Y}`;else return this.#w=Y}let A=this.parent,Q=A.fullpathPosix(),B=Q+(!Q||!A.parent?"":"/")+this.name;return this.#w=B}isUnknown(){return(this.#$&a8)===o8}isType(A){return this[`is${A}`]()}getType(){return this.isUnknown()?"Unknown":this.isDirectory()?"Directory":this.isFile()?"File":this.isSymbolicLink()?"SymbolicLink":this.isFIFO()?"FIFO":this.isCharacterDevice()?"CharacterDevice":this.isBlockDevice()?"BlockDevice":this.isSocket()?"Socket":"Unknown"}isFile(){return(this.#$&a8)===_YA}isDirectory(){return(this.#$&a8)===z1}isCharacterDevice(){return(this.#$&a8)===SYA}isBlockDevice(){return(this.#$&a8)===kYA}isFIFO(){return(this.#$&a8)===TYA}isSocket(){return(this.#$&a8)===vYA}isSymbolicLink(){return(this.#$&PW)===PW}lstatCached(){return this.#$&zYA?this:void 0}readlinkCached(){return this.#z}realpathCached(){return this.#k}readdirCached(){let A=this.children();return A.slice(0,A.provisional)}canReadlink(){if(this.#z)return!0;if(!this.parent)return!1;let A=this.#$&a8;return!(A!==o8&&A!==PW||this.#$&F2||this.#$&HC)}calledReaddir(){return!!(this.#$&Py)}isENOENT(){return!!(this.#$&HC)}isNamed(A){return!this.nocase?this.#M===MI(A):this.#M===W2(A)}async readlink(){let A=this.#z;if(A)return A;if(!this.canReadlink())return;if(!this.parent)return;try{let Q=await this.#A.promises.readlink(this.fullpath()),B=(await this.parent.realpath())?.resolve(Q);if(B)return this.#z=B}catch(Q){this.#x(Q.code);return}}readlinkSync(){let A=this.#z;if(A)return A;if(!this.canReadlink())return;if(!this.parent)return;try{let Q=this.#A.readlinkSync(this.fullpath()),B=this.parent.realpathSync()?.resolve(Q);if(B)return this.#z=B}catch(Q){this.#x(Q.code);return}}#m(A){this.#$|=Py;for(let Q=A.provisional;QB(null,A))}readdirCB(A,Q=!1){if(!this.canReaddir()){if(Q)A(null,[]);else queueMicrotask(()=>A(null,[]));return}let B=this.children();if(this.calledReaddir()){let J=B.slice(0,B.provisional);if(Q)A(null,J);else queueMicrotask(()=>A(null,J));return}if(this.#b.push(A),this.#p)return;this.#p=!0;let Y=this.fullpath();this.#A.readdir(Y,{withFileTypes:!0},(J,C)=>{if(J)this.#T(J.code),B.provisional=0;else{for(let X of C)this.#h(X,B);this.#m(B)}this.#i(B.slice(0,B.provisional));return})}#l;async readdir(){if(!this.canReaddir())return[];let A=this.children();if(this.calledReaddir())return A.slice(0,A.provisional);let Q=this.fullpath();if(this.#l)await this.#l;else{let B=()=>{};this.#l=new Promise((Y)=>B=Y);try{for(let Y of await this.#A.promises.readdir(Q,{withFileTypes:!0}))this.#h(Y,A);this.#m(A)}catch(Y){this.#T(Y.code),A.provisional=0}this.#l=void 0,B()}return A.slice(0,A.provisional)}readdirSync(){if(!this.canReaddir())return[];let A=this.children();if(this.calledReaddir())return A.slice(0,A.provisional);let Q=this.fullpath();try{for(let B of this.#A.readdirSync(Q,{withFileTypes:!0}))this.#h(B,A);this.#m(A)}catch(B){this.#T(B.code),A.provisional=0}return A.slice(0,A.provisional)}canReaddir(){if(this.#$&RYA)return!1;let A=a8&this.#$;if(!(A===o8||A===z1||A===PW))return!1;return!0}shouldWalk(A,Q){return(this.#$&z1)===z1&&!(this.#$&RYA)&&!A.has(this)&&(!Q||Q(this))}async realpath(){if(this.#k)return this.#k;if((Z2|F2|HC)&this.#$)return;try{let A=await this.#A.promises.realpath(this.fullpath());return this.#k=this.resolve(A)}catch(A){this.#u()}}realpathSync(){if(this.#k)return this.#k;if((Z2|F2|HC)&this.#$)return;try{let A=this.#A.realpathSync(this.fullpath());return this.#k=this.resolve(A)}catch(A){this.#u()}}[hYA](A){if(A===this)return;A.isCWD=!1,this.isCWD=!0;let Q=new Set([]),B=[],Y=this;while(Y&&Y.parent)Q.add(Y),Y.#H=B.join(this.sep),Y.#S=B.join("/"),Y=Y.parent,B.push("..");Y=A;while(Y&&Y.parent&&!Q.has(Y))Y.#H=void 0,Y.#S=void 0,Y=Y.parent}}class $2 extends dJ{sep="\\";splitSep=UmQ;constructor(A,Q=o8,B,Y,J,C,X){super(A,Q,B,Y,J,C,X)}newChild(A,Q=o8,B={}){return new $2(A,Q,this.root,this.roots,this.nocase,this.childrenCache(),B)}getRootString(A){return Sy.parse(A).root}getRoot(A){if(A=$mQ(A.toUpperCase()),A===this.root.name)return this.root;for(let[Q,B]of Object.entries(this.roots))if(this.sameRoot(A,Q))return this.roots[A]=B;return this.roots[A]=new zI(A,this).root}sameRoot(A,Q=this.root.name){return A=A.toUpperCase().replace(/\//g,"\\").replace(PYA,"$1\\"),A===Q}}class U2 extends dJ{splitSep="/";sep="/";constructor(A,Q=o8,B,Y,J,C,X){super(A,Q,B,Y,J,C,X)}getRootString(A){return A.startsWith("/")?"/":""}getRoot(A){return this.root}newChild(A,Q=o8,B={}){return new U2(A,Q,this.root,this.roots,this.nocase,this.childrenCache(),B)}}class _y{root;rootPath;roots;cwd;#A;#Q;#B;nocase;#Y;constructor(A=process.cwd(),Q,B,{nocase:Y,childrenCacheSize:J=16384,fs:C=LI}={}){if(this.#Y=OYA(C),A instanceof URL||A.startsWith("file://"))A=ebQ(A);let X=Q.resolve(A);this.roots=Object.create(null),this.rootPath=this.parseRootPath(X),this.#A=new ky,this.#Q=new ky,this.#B=new yYA(J);let G=X.substring(this.rootPath.length).split(B);if(G.length===1&&!G[0])G.pop();if(Y===void 0)throw TypeError("must provide nocase setting to PathScurryBase ctor");this.nocase=Y,this.root=this.newRoot(this.#Y),this.roots[this.rootPath]=this.root;let F=this.root,W=G.length-1,Z=Q.sep,U=this.rootPath,$=!1;for(let E of G){let K=W--;F=F.child(E,{relative:Array(K).fill("..").join(Z),relativePosix:Array(K).fill("..").join("/"),fullpath:U+=($?"":Z)+E}),$=!0}this.cwd=F}depth(A=this.cwd){if(typeof A==="string")A=this.cwd.resolve(A);return A.depth()}childrenCache(){return this.#B}resolve(...A){let Q="";for(let J=A.length-1;J>=0;J--){let C=A[J];if(!C||C===".")continue;if(Q=Q?`${C}/${Q}`:C,this.isAbsolute(C))break}let B=this.#A.get(Q);if(B!==void 0)return B;let Y=this.cwd.resolve(Q).fullpath();return this.#A.set(Q,Y),Y}resolvePosix(...A){let Q="";for(let J=A.length-1;J>=0;J--){let C=A[J];if(!C||C===".")continue;if(Q=Q?`${C}/${Q}`:C,this.isAbsolute(C))break}let B=this.#Q.get(Q);if(B!==void 0)return B;let Y=this.cwd.resolve(Q).fullpathPosix();return this.#Q.set(Q,Y),Y}relative(A=this.cwd){if(typeof A==="string")A=this.cwd.resolve(A);return A.relative()}relativePosix(A=this.cwd){if(typeof A==="string")A=this.cwd.resolve(A);return A.relativePosix()}basename(A=this.cwd){if(typeof A==="string")A=this.cwd.resolve(A);return A.name}dirname(A=this.cwd){if(typeof A==="string")A=this.cwd.resolve(A);return(A.parent||A).fullpath()}async readdir(A=this.cwd,Q={withFileTypes:!0}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof dJ))Q=A,A=this.cwd;let{withFileTypes:B}=Q;if(!A.canReaddir())return[];else{let Y=await A.readdir();return B?Y:Y.map((J)=>J.name)}}readdirSync(A=this.cwd,Q={withFileTypes:!0}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof dJ))Q=A,A=this.cwd;let{withFileTypes:B=!0}=Q;if(!A.canReaddir())return[];else if(B)return A.readdirSync();else return A.readdirSync().map((Y)=>Y.name)}async lstat(A=this.cwd){if(typeof A==="string")A=this.cwd.resolve(A);return A.lstat()}lstatSync(A=this.cwd){if(typeof A==="string")A=this.cwd.resolve(A);return A.lstatSync()}async readlink(A=this.cwd,{withFileTypes:Q}={withFileTypes:!1}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof dJ))Q=A.withFileTypes,A=this.cwd;let B=await A.readlink();return Q?B:B?.fullpath()}readlinkSync(A=this.cwd,{withFileTypes:Q}={withFileTypes:!1}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof dJ))Q=A.withFileTypes,A=this.cwd;let B=A.readlinkSync();return Q?B:B?.fullpath()}async realpath(A=this.cwd,{withFileTypes:Q}={withFileTypes:!1}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof dJ))Q=A.withFileTypes,A=this.cwd;let B=await A.realpath();return Q?B:B?.fullpath()}realpathSync(A=this.cwd,{withFileTypes:Q}={withFileTypes:!1}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof dJ))Q=A.withFileTypes,A=this.cwd;let B=A.realpathSync();return Q?B:B?.fullpath()}async walk(A=this.cwd,Q={}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof dJ))Q=A,A=this.cwd;let{withFileTypes:B=!0,follow:Y=!1,filter:J,walkFilter:C}=Q,X=[];if(!J||J(A))X.push(B?A:A.fullpath());let G=new Set,F=(Z,U)=>{G.add(Z),Z.readdirCB(($,E)=>{if($)return U($);let K=E.length;if(!K)return U();let I=()=>{if(--K===0)U()};for(let V of E){if(!J||J(V))X.push(B?V:V.fullpath());if(Y&&V.isSymbolicLink())V.realpath().then((H)=>H?.isUnknown()?H.lstat():H).then((H)=>H?.shouldWalk(G,C)?F(H,I):I());else if(V.shouldWalk(G,C))F(V,I);else I()}},!0)},W=A;return new Promise((Z,U)=>{F(W,($)=>{if($)return U($);Z(X)})})}walkSync(A=this.cwd,Q={}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof dJ))Q=A,A=this.cwd;let{withFileTypes:B=!0,follow:Y=!1,filter:J,walkFilter:C}=Q,X=[];if(!J||J(A))X.push(B?A:A.fullpath());let G=new Set([A]);for(let F of G){let W=F.readdirSync();for(let Z of W){if(!J||J(Z))X.push(B?Z:Z.fullpath());let U=Z;if(Z.isSymbolicLink()){if(!(Y&&(U=Z.realpathSync())))continue;if(U.isUnknown())U.lstatSync()}if(U.shouldWalk(G,C))G.add(U)}}return X}[Symbol.asyncIterator](){return this.iterate()}iterate(A=this.cwd,Q={}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof dJ))Q=A,A=this.cwd;return this.stream(A,Q)[Symbol.asyncIterator]()}[Symbol.iterator](){return this.iterateSync()}*iterateSync(A=this.cwd,Q={}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof dJ))Q=A,A=this.cwd;let{withFileTypes:B=!0,follow:Y=!1,filter:J,walkFilter:C}=Q;if(!J||J(A))yield B?A:A.fullpath();let X=new Set([A]);for(let G of X){let F=G.readdirSync();for(let W of F){if(!J||J(W))yield B?W:W.fullpath();let Z=W;if(W.isSymbolicLink()){if(!(Y&&(Z=W.realpathSync())))continue;if(Z.isUnknown())Z.lstatSync()}if(Z.shouldWalk(X,C))X.add(Z)}}}stream(A=this.cwd,Q={}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof dJ))Q=A,A=this.cwd;let{withFileTypes:B=!0,follow:Y=!1,filter:J,walkFilter:C}=Q,X=new OW({objectMode:!0});if(!J||J(A))X.write(B?A:A.fullpath());let G=new Set,F=[A],W=0,Z=()=>{let U=!1;while(!U){let $=F.shift();if(!$){if(W===0)X.end();return}W++,G.add($);let E=(I,V,H=!1)=>{if(I)return X.emit("error",I);if(Y&&!H){let D=[];for(let L of V)if(L.isSymbolicLink())D.push(L.realpath().then((z)=>z?.isUnknown()?z.lstat():z));if(D.length){Promise.all(D).then(()=>E(null,V,!0));return}}for(let D of V)if(D&&(!J||J(D))){if(!X.write(B?D:D.fullpath()))U=!0}W--;for(let D of V){let L=D.realpathCached()||D;if(L.shouldWalk(G,C))F.push(L)}if(U&&!X.flowing)X.once("drain",Z);else if(!K)Z()},K=!0;$.readdirCB(E,!0),K=!1}};return Z(),X}streamSync(A=this.cwd,Q={}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof dJ))Q=A,A=this.cwd;let{withFileTypes:B=!0,follow:Y=!1,filter:J,walkFilter:C}=Q,X=new OW({objectMode:!0}),G=new Set;if(!J||J(A))X.write(B?A:A.fullpath());let F=[A],W=0,Z=()=>{let U=!1;while(!U){let $=F.shift();if(!$){if(W===0)X.end();return}W++,G.add($);let E=$.readdirSync();for(let K of E)if(!J||J(K)){if(!X.write(B?K:K.fullpath()))U=!0}W--;for(let K of E){let I=K;if(K.isSymbolicLink()){if(!(Y&&(I=K.realpathSync())))continue;if(I.isUnknown())I.lstatSync()}if(I.shouldWalk(G,C))F.push(I)}}if(U&&!X.flowing)X.once("drain",Z)};return Z(),X}chdir(A=this.cwd){let Q=this.cwd;this.cwd=typeof A==="string"?this.cwd.resolve(A):A,this.cwd[hYA](Q)}}class zI extends _y{sep="\\";constructor(A=process.cwd(),Q={}){let{nocase:B=!0}=Q;super(A,Sy,"\\",{...Q,nocase:B});this.nocase=B;for(let Y=this.cwd;Y;Y=Y.parent)Y.nocase=this.nocase}parseRootPath(A){return Sy.parse(A).root.toUpperCase()}newRoot(A){return new $2(this.rootPath,z1,void 0,this.roots,this.nocase,this.childrenCache(),{fs:A})}isAbsolute(A){return A.startsWith("/")||A.startsWith("\\")||/^[a-z]:(\/|\\)/i.test(A)}}class RI extends _y{sep="/";constructor(A=process.cwd(),Q={}){let{nocase:B=!1}=Q;super(A,tbQ,"/",{...Q,nocase:B});this.nocase=B}parseRootPath(A){return"/"}newRoot(A){return new U2(this.rootPath,z1,void 0,this.roots,this.nocase,this.childrenCache(),{fs:A})}isAbsolute(A){return A.startsWith("/")}}class E2 extends RI{constructor(A=process.cwd(),Q={}){let{nocase:B=!0}=Q;super(A,{...Q,nocase:B})}}var LCY=process.platform==="win32"?$2:U2,gYA=process.platform==="win32"?zI:process.platform==="darwin"?E2:RI;var KmQ=(A)=>A.length>=1,VmQ=(A)=>A.length>=1;class v4{#A;#Q;#B;length;#Y;#J;#C;#F;#X;#G;#Z=!0;constructor(A,Q,B,Y){if(!KmQ(A))throw TypeError("empty pattern list");if(!VmQ(Q))throw TypeError("empty glob list");if(Q.length!==A.length)throw TypeError("mismatched pattern list and glob list lengths");if(this.length=A.length,B<0||B>=this.length)throw TypeError("index out of range");if(this.#A=A,this.#Q=Q,this.#B=B,this.#Y=Y,this.#B===0){if(this.isUNC()){let[J,C,X,G,...F]=this.#A,[W,Z,U,$,...E]=this.#Q;if(F[0]==="")F.shift(),E.shift();let K=[J,C,X,G,""].join("/"),I=[W,Z,U,$,""].join("/");this.#A=[K,...F],this.#Q=[I,...E],this.length=this.#A.length}else if(this.isDrive()||this.isAbsolute()){let[J,...C]=this.#A,[X,...G]=this.#Q;if(C[0]==="")C.shift(),G.shift();let F=J+"/",W=X+"/";this.#A=[F,...C],this.#Q=[W,...G],this.length=this.#A.length}}}pattern(){return this.#A[this.#B]}isString(){return typeof this.#A[this.#B]==="string"}isGlobstar(){return this.#A[this.#B]===eY}isRegExp(){return this.#A[this.#B]instanceof RegExp}globString(){return this.#C=this.#C||(this.#B===0?this.isAbsolute()?this.#Q[0]+this.#Q.slice(1).join("/"):this.#Q.join("/"):this.#Q.slice(this.#B).join("/"))}hasMore(){return this.length>this.#B+1}rest(){if(this.#J!==void 0)return this.#J;if(!this.hasMore())return this.#J=null;return this.#J=new v4(this.#A,this.#Q,this.#B+1,this.#Y),this.#J.#G=this.#G,this.#J.#X=this.#X,this.#J.#F=this.#F,this.#J}isUNC(){let A=this.#A;return this.#X!==void 0?this.#X:this.#X=this.#Y==="win32"&&this.#B===0&&A[0]===""&&A[1]===""&&typeof A[2]==="string"&&!!A[2]&&typeof A[3]==="string"&&!!A[3]}isDrive(){let A=this.#A;return this.#F!==void 0?this.#F:this.#F=this.#Y==="win32"&&this.#B===0&&this.length>1&&typeof A[0]==="string"&&/^[a-z]:$/i.test(A[0])}isAbsolute(){let A=this.#A;return this.#G!==void 0?this.#G:this.#G=A[0]===""&&A.length>1||this.isDrive()||this.isUNC()}root(){let A=this.#A[0];return typeof A==="string"&&this.isAbsolute()&&this.#B===0?A:""}checkFollowGlobstar(){return!(this.#B===0||!this.isGlobstar()||!this.#Z)}markFollowGlobstar(){if(this.#B===0||!this.isGlobstar()||!this.#Z)return!1;return this.#Z=!1,!0}}var ImQ=typeof process==="object"&&process&&typeof process.platform==="string"?process.platform:"linux";class wI{relative;relativeChildren;absolute;absoluteChildren;platform;mmopts;constructor(A,{nobrace:Q,nocase:B,noext:Y,noglobstar:J,platform:C=ImQ}){this.relative=[],this.absolute=[],this.relativeChildren=[],this.absoluteChildren=[],this.platform=C,this.mmopts={dot:!0,nobrace:Q,nocase:B,noext:Y,noglobstar:J,optimizationLevel:2,platform:C,nocomment:!0,nonegate:!0};for(let X of A)this.add(X)}add(A){let Q=new r8(A,this.mmopts);for(let B=0;B[A,!!(Q&2),!!(Q&1)])}}class fYA{store=new Map;add(A,Q){if(!A.canReaddir())return;let B=this.store.get(A);if(B){if(!B.find((Y)=>Y.globString()===Q.globString()))B.push(Q)}else this.store.set(A,[Q])}get(A){let Q=this.store.get(A);if(!Q)throw Error("attempting to walk unknown path");return Q}entries(){return this.keys().map((A)=>[A,this.store.get(A)])}keys(){return[...this.store.keys()].filter((A)=>A.canReaddir())}}class jI{hasWalkedCache;matches=new xYA;subwalks=new fYA;patterns;follow;dot;opts;constructor(A,Q){this.opts=A,this.follow=!!A.follow,this.dot=!!A.dot,this.hasWalkedCache=Q?Q.copy():new vy}processPatterns(A,Q){this.patterns=Q;let B=Q.map((Y)=>[A,Y]);for(let[Y,J]of B){this.hasWalkedCache.storeWalked(Y,J);let C=J.root(),X=J.isAbsolute()&&this.opts.absolute!==!1;if(C){Y=Y.resolve(C==="/"&&this.opts.root!==void 0?this.opts.root:C);let Z=J.rest();if(!Z){this.matches.add(Y,!0,!1);continue}else J=Z}if(Y.isENOENT())continue;let G,F,W=!1;while(typeof(G=J.pattern())==="string"&&(F=J.rest()))Y=Y.resolve(G),J=F,W=!0;if(G=J.pattern(),F=J.rest(),W){if(this.hasWalkedCache.hasWalked(Y,J))continue;this.hasWalkedCache.storeWalked(Y,J)}if(typeof G==="string"){let Z=G===".."||G===""||G===".";this.matches.add(Y.resolve(G),X,Z);continue}else if(G===eY){if(!Y.isSymbolicLink()||this.follow||J.checkFollowGlobstar())this.subwalks.add(Y,J);let Z=F?.pattern(),U=F?.rest();if(!F||(Z===""||Z===".")&&!U)this.matches.add(Y,X,Z===""||Z===".");else if(Z===".."){let $=Y.parent||Y;if(!U)this.matches.add($,X,!0);else if(!this.hasWalkedCache.hasWalked($,U))this.subwalks.add($,U)}}else if(G instanceof RegExp)this.subwalks.add(Y,J)}return this}subwalkTargets(){return this.subwalks.keys()}child(){return new jI(this.opts,this.hasWalkedCache)}filterEntries(A,Q){let B=this.subwalks.get(A),Y=this.child();for(let J of Q)for(let C of B){let X=C.isAbsolute(),G=C.pattern(),F=C.rest();if(G===eY)Y.testGlobstar(J,C,F,X);else if(G instanceof RegExp)Y.testRegExp(J,G,F,X);else Y.testString(J,G,F,X)}return Y}testGlobstar(A,Q,B,Y){if(this.dot||!A.name.startsWith(".")){if(!Q.hasMore())this.matches.add(A,Y,!1);if(A.canReaddir()){if(this.follow||!A.isSymbolicLink())this.subwalks.add(A,Q);else if(A.isSymbolicLink()){if(B&&Q.checkFollowGlobstar())this.subwalks.add(A,B);else if(Q.markFollowGlobstar())this.subwalks.add(A,Q)}}}if(B){let J=B.pattern();if(typeof J==="string"&&J!==".."&&J!==""&&J!==".")this.testString(A,J,B.rest(),Y);else if(J===".."){let C=A.parent||A;this.subwalks.add(C,B)}else if(J instanceof RegExp)this.testRegExp(A,J,B.rest(),Y)}}testRegExp(A,Q,B,Y){if(!Q.test(A.name))return;if(!B)this.matches.add(A,Y,!1);else this.subwalks.add(A,B)}testString(A,Q,B,Y){if(!A.isNamed(Q))return;if(!B)this.matches.add(A,Y,!1);else this.subwalks.add(A,B)}}var HmQ=(A,Q)=>typeof A==="string"?new wI([A],Q):Array.isArray(A)?new wI(A,Q):A;class yy{path;patterns;opts;seen=new Set;paused=!1;aborted=!1;#A=[];#Q;#B;signal;maxDepth;includeChildMatches;constructor(A,Q,B){if(this.patterns=A,this.path=Q,this.opts=B,this.#B=!B.posix&&B.platform==="win32"?"\\":"/",this.includeChildMatches=B.includeChildMatches!==!1,B.ignore||!this.includeChildMatches){if(this.#Q=HmQ(B.ignore??[],B),!this.includeChildMatches&&typeof this.#Q.add!=="function")throw Error("cannot ignore child matches, ignore lacks add() method.")}if(this.maxDepth=B.maxDepth||1/0,B.signal)this.signal=B.signal,this.signal.addEventListener("abort",()=>{this.#A.length=0})}#Y(A){return this.seen.has(A)||!!this.#Q?.ignored?.(A)}#J(A){return!!this.#Q?.childrenIgnored?.(A)}pause(){this.paused=!0}resume(){if(this.signal?.aborted)return;this.paused=!1;let A=void 0;while(!this.paused&&(A=this.#A.shift()))A()}onResume(A){if(this.signal?.aborted)return;if(!this.paused)A();else this.#A.push(A)}async matchCheck(A,Q){if(Q&&this.opts.nodir)return;let B;if(this.opts.realpath){if(B=A.realpathCached()||await A.realpath(),!B)return;A=B}let J=A.isUnknown()||this.opts.stat?await A.lstat():A;if(this.opts.follow&&this.opts.nodir&&J?.isSymbolicLink()){let C=await J.realpath();if(C&&(C.isUnknown()||this.opts.stat))await C.lstat()}return this.matchCheckTest(J,Q)}matchCheckTest(A,Q){return A&&(this.maxDepth===1/0||A.depth()<=this.maxDepth)&&(!Q||A.canReaddir())&&(!this.opts.nodir||!A.isDirectory())&&(!this.opts.nodir||!this.opts.follow||!A.isSymbolicLink()||!A.realpathCached()?.isDirectory())&&!this.#Y(A)?A:void 0}matchCheckSync(A,Q){if(Q&&this.opts.nodir)return;let B;if(this.opts.realpath){if(B=A.realpathCached()||A.realpathSync(),!B)return;A=B}let J=A.isUnknown()||this.opts.stat?A.lstatSync():A;if(this.opts.follow&&this.opts.nodir&&J?.isSymbolicLink()){let C=J.realpathSync();if(C&&(C?.isUnknown()||this.opts.stat))C.lstatSync()}return this.matchCheckTest(J,Q)}matchFinish(A,Q){if(this.#Y(A))return;if(!this.includeChildMatches&&this.#Q?.add){let J=`${A.relativePosix()}/**`;this.#Q.add(J)}let B=this.opts.absolute===void 0?Q:this.opts.absolute;this.seen.add(A);let Y=this.opts.mark&&A.isDirectory()?this.#B:"";if(this.opts.withFileTypes)this.matchEmit(A);else if(B){let J=this.opts.posix?A.fullpathPosix():A.fullpath();this.matchEmit(J+Y)}else{let J=this.opts.posix?A.relativePosix():A.relative(),C=this.opts.dotRelative&&!J.startsWith(".."+this.#B)?"."+this.#B:"";this.matchEmit(!J?"."+Y:C+J+Y)}}async match(A,Q,B){let Y=await this.matchCheck(A,B);if(Y)this.matchFinish(Y,Q)}matchSync(A,Q,B){let Y=this.matchCheckSync(A,B);if(Y)this.matchFinish(Y,Q)}walkCB(A,Q,B){if(this.signal?.aborted)B();this.walkCB2(A,Q,new jI(this.opts),B)}walkCB2(A,Q,B,Y){if(this.#J(A))return Y();if(this.signal?.aborted)Y();if(this.paused){this.onResume(()=>this.walkCB2(A,Q,B,Y));return}B.processPatterns(A,Q);let J=1,C=()=>{if(--J===0)Y()};for(let[X,G,F]of B.matches.entries()){if(this.#Y(X))continue;J++,this.match(X,G,F).then(()=>C())}for(let X of B.subwalkTargets()){if(this.maxDepth!==1/0&&X.depth()>=this.maxDepth)continue;J++;let G=X.readdirCached();if(X.calledReaddir())this.walkCB3(X,G,B,C);else X.readdirCB((F,W)=>this.walkCB3(X,W,B,C),!0)}C()}walkCB3(A,Q,B,Y){B=B.filterEntries(A,Q);let J=1,C=()=>{if(--J===0)Y()};for(let[X,G,F]of B.matches.entries()){if(this.#Y(X))continue;J++,this.match(X,G,F).then(()=>C())}for(let[X,G]of B.subwalks.entries())J++,this.walkCB2(X,G,B.child(),C);C()}walkCBSync(A,Q,B){if(this.signal?.aborted)B();this.walkCB2Sync(A,Q,new jI(this.opts),B)}walkCB2Sync(A,Q,B,Y){if(this.#J(A))return Y();if(this.signal?.aborted)Y();if(this.paused){this.onResume(()=>this.walkCB2Sync(A,Q,B,Y));return}B.processPatterns(A,Q);let J=1,C=()=>{if(--J===0)Y()};for(let[X,G,F]of B.matches.entries()){if(this.#Y(X))continue;this.matchSync(X,G,F)}for(let X of B.subwalkTargets()){if(this.maxDepth!==1/0&&X.depth()>=this.maxDepth)continue;J++;let G=X.readdirSync();this.walkCB3Sync(X,G,B,C)}C()}walkCB3Sync(A,Q,B,Y){B=B.filterEntries(A,Q);let J=1,C=()=>{if(--J===0)Y()};for(let[X,G,F]of B.matches.entries()){if(this.#Y(X))continue;this.matchSync(X,G,F)}for(let[X,G]of B.subwalks.entries())J++,this.walkCB2Sync(X,G,B.child(),C);C()}}class K2 extends yy{matches=new Set;constructor(A,Q,B){super(A,Q,B)}matchEmit(A){this.matches.add(A)}async walk(){if(this.signal?.aborted)throw this.signal.reason;if(this.path.isUnknown())await this.path.lstat();return await new Promise((A,Q)=>{this.walkCB(this.path,this.patterns,()=>{if(this.signal?.aborted)Q(this.signal.reason);else A(this.matches)})}),this.matches}walkSync(){if(this.signal?.aborted)throw this.signal.reason;if(this.path.isUnknown())this.path.lstatSync();return this.walkCBSync(this.path,this.patterns,()=>{if(this.signal?.aborted)throw this.signal.reason}),this.matches}}class V2 extends yy{results;constructor(A,Q,B){super(A,Q,B);this.results=new OW({signal:this.signal,objectMode:!0}),this.results.on("drain",()=>this.resume()),this.results.on("resume",()=>this.resume())}matchEmit(A){if(this.results.write(A),!this.results.flowing)this.pause()}stream(){let A=this.path;if(A.isUnknown())A.lstat().then(()=>{this.walkCB(A,this.patterns,()=>this.results.end())});else this.walkCB(A,this.patterns,()=>this.results.end());return this.results}streamSync(){if(this.path.isUnknown())this.path.lstatSync();return this.walkCBSync(this.path,this.patterns,()=>this.results.end()),this.results}}var NmQ=typeof process==="object"&&process&&typeof process.platform==="string"?process.platform:"linux";class R1{absolute;cwd;root;dot;dotRelative;follow;ignore;magicalBraces;mark;matchBase;maxDepth;nobrace;nocase;nodir;noext;noglobstar;pattern;platform;realpath;scurry;stat;signal;windowsPathsNoEscape;withFileTypes;includeChildMatches;opts;patterns;constructor(A,Q){if(!Q)throw TypeError("glob options required");if(this.withFileTypes=!!Q.withFileTypes,this.signal=Q.signal,this.follow=!!Q.follow,this.dot=!!Q.dot,this.dotRelative=!!Q.dotRelative,this.nodir=!!Q.nodir,this.mark=!!Q.mark,!Q.cwd)this.cwd="";else if(Q.cwd instanceof URL||Q.cwd.startsWith("file://"))Q.cwd=DmQ(Q.cwd);if(this.cwd=Q.cwd||"",this.root=Q.root,this.magicalBraces=!!Q.magicalBraces,this.nobrace=!!Q.nobrace,this.noext=!!Q.noext,this.realpath=!!Q.realpath,this.absolute=Q.absolute,this.includeChildMatches=Q.includeChildMatches!==!1,this.noglobstar=!!Q.noglobstar,this.matchBase=!!Q.matchBase,this.maxDepth=typeof Q.maxDepth==="number"?Q.maxDepth:1/0,this.stat=!!Q.stat,this.ignore=Q.ignore,this.withFileTypes&&this.absolute!==void 0)throw Error("cannot set absolute and withFileTypes:true");if(typeof A==="string")A=[A];if(this.windowsPathsNoEscape=!!Q.windowsPathsNoEscape||Q.allowWindowsEscape===!1,this.windowsPathsNoEscape)A=A.map((G)=>G.replace(/\\/g,"/"));if(this.matchBase){if(Q.noglobstar)throw TypeError("base matching requires globstar");A=A.map((G)=>G.includes("/")?G:`./**/${G}`)}if(this.pattern=A,this.platform=Q.platform||NmQ,this.opts={...Q,platform:this.platform},Q.scurry){if(this.scurry=Q.scurry,Q.nocase!==void 0&&Q.nocase!==Q.scurry.nocase)throw Error("nocase option contradicts provided scurry option")}else{let G=Q.platform==="win32"?zI:Q.platform==="darwin"?E2:Q.platform?RI:gYA;this.scurry=new G(this.cwd,{nocase:Q.nocase,fs:Q.fs})}this.nocase=this.scurry.nocase;let B=this.platform==="darwin"||this.platform==="win32",Y={...Q,dot:this.dot,matchBase:this.matchBase,nobrace:this.nobrace,nocase:this.nocase,nocaseMagicOnly:B,nocomment:!0,noext:this.noext,nonegate:!0,optimizationLevel:2,platform:this.platform,windowsPathsNoEscape:this.windowsPathsNoEscape,debug:!!this.opts.debug},J=this.pattern.map((G)=>new r8(G,Y)),[C,X]=J.reduce((G,F)=>{return G[0].push(...F.set),G[1].push(...F.globParts),G},[[],[]]);this.patterns=C.map((G,F)=>{let W=X[F];if(!W)throw Error("invalid pattern object");return new v4(G,W,0,this.platform)})}async walk(){return[...await new K2(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walk()]}walkSync(){return[...new K2(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walkSync()]}stream(){return new V2(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).stream()}streamSync(){return new V2(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).streamSync()}iterateSync(){return this.streamSync()[Symbol.iterator]()}[Symbol.iterator](){return this.iterateSync()}iterate(){return this.stream()[Symbol.asyncIterator]()}[Symbol.asyncIterator](){return this.iterate()}}var hy=(A,Q={})=>{if(!Array.isArray(A))A=[A];for(let B of A)if(new r8(B,Q).hasMagic())return!0;return!1};function I2(A,Q={}){return new R1(A,Q).streamSync()}function mYA(A,Q={}){return new R1(A,Q).stream()}function uYA(A,Q={}){return new R1(A,Q).walkSync()}async function bYA(A,Q={}){return new R1(A,Q).walk()}function H2(A,Q={}){return new R1(A,Q).iterateSync()}function dYA(A,Q={}){return new R1(A,Q).iterate()}var LmQ=I2,qmQ=Object.assign(mYA,{sync:I2}),MmQ=H2,zmQ=Object.assign(dYA,{sync:H2}),RmQ=Object.assign(uYA,{stream:I2,iterate:H2}),y4=Object.assign(bYA,{glob:bYA,globSync:uYA,sync:RmQ,globStream:mYA,stream:qmQ,globStreamSync:I2,streamSync:LmQ,globIterate:dYA,iterate:zmQ,globIterateSync:H2,iterateSync:MmQ,Glob:R1,hasMagic:hy,escape:P4,unescape:VC});y4.glob=y4;class gy{constructor(){this._listeners={}}addEventListener(A,Q){let B=this._listeners;if(B[A]===void 0)B[A]=[];if(B[A].indexOf(Q)===-1)B[A].push(Q);return this}removeEventListener(A,Q){let Y=this._listeners[A];if(Y!==void 0){let J=Y.indexOf(Q);if(J!==-1)Y.splice(J,1)}return this}dispatchEvent(A){let B=this._listeners[A.type];if(B!==void 0){let Y=B.slice(0);for(let J=0,C=Y.length;J=0)this.list.splice(Q,1)}removeChild(A){let Q=[];for(let B of this.list)if(B.getChild()===A)Q.push(B);for(let B of Q)this.remove(B);return Q}listRefsByChild(A){let Q=[];for(let B of this.list)if(B.getChild()===A)Q.push(B);return Q}values(){return this.list}}class xB{constructor(A){if(this.set=new Set,this.map=new Map,A)for(let Q of A)this.add(Q)}add(A){let Q=A.getChild();this.removeChild(Q),this.set.add(A),this.map.set(Q,A)}remove(A){this.set.delete(A),this.map.delete(A.getChild())}removeChild(A){let Q=this.map.get(A)||null;if(Q)this.remove(Q);return Q}getRefByChild(A){return this.map.get(A)||null}values(){return Array.from(this.set)}}class cJ{constructor(A){if(this.map={},A)Object.assign(this.map,A)}set(A,Q){this.map[A]=Q}delete(A){delete this.map[A]}get(A){return this.map[A]||null}keys(){return Object.keys(this.map)}values(){return Object.values(this.map)}}var PB=Symbol("attributes"),sG=Symbol("immutableKeys");class N2 extends gy{constructor(A){super();this._disposed=!1,this.graph=void 0,this[PB]=void 0,this[sG]=void 0,this.graph=A,this[sG]=new Set,this[PB]=this._createAttributes()}getDefaults(){return{}}_createAttributes(){let A=this.getDefaults(),Q={};for(let B in A){let Y=A[B];if(Y instanceof N2){let J=this.graph._createEdge(B,this,Y);this[sG].add(B),Q[B]=J}else Q[B]=Y}return Q}isOnGraph(A){return this.graph===A.graph}isDisposed(){return this._disposed}dispose(){if(this._disposed)return;this.graph.listChildEdges(this).forEach((A)=>A.dispose()),this.graph.disconnectParents(this),this._disposed=!0,this.dispatchEvent({type:"dispose"})}detach(){return this.graph.disconnectParents(this),this}swap(A,Q){for(let B in this[PB]){let Y=this[PB][B];if(Y instanceof n6){let J=Y;if(J.getChild()===A)this.setRef(B,Q,J.getAttributes())}else if(Y instanceof DC)for(let J of Y.listRefsByChild(A)){let C=J.getAttributes();this.removeRef(B,A),this.addRef(B,Q,C)}else if(Y instanceof xB){let J=Y.getRefByChild(A);if(J){let C=J.getAttributes();this.removeRef(B,A),this.addRef(B,Q,C)}}else if(Y instanceof cJ)for(let J of Y.keys()){let C=Y.get(J);if(C.getChild()===A)this.setRefMap(B,J,Q,C.getAttributes())}}return this}get(A){return this[PB][A]}set(A,Q){return this[PB][A]=Q,this.dispatchEvent({type:"change",attribute:A})}getRef(A){let Q=this[PB][A];return Q?Q.getChild():null}setRef(A,Q,B){if(this[sG].has(A))throw Error(`Cannot overwrite immutable attribute, "${A}".`);let Y=this[PB][A];if(Y)Y.dispose();if(!Q)return this;let J=this.graph._createEdge(A,this,Q,B);return this[PB][A]=J,this.dispatchEvent({type:"change",attribute:A})}listRefs(A){return this.assertRefList(A).values().map((B)=>B.getChild())}addRef(A,Q,B){let Y=this.graph._createEdge(A,this,Q,B);return this.assertRefList(A).add(Y),this.dispatchEvent({type:"change",attribute:A})}removeRef(A,Q){let B=this.assertRefList(A);if(B instanceof DC)for(let Y of B.listRefsByChild(Q))Y.dispose();else{let Y=B.getRefByChild(Q);if(Y)Y.dispose()}return this}assertRefList(A){let Q=this[PB][A];if(Q instanceof DC||Q instanceof xB)return Q;throw Error(`Expected RefList or RefSet for attribute "${A}"`)}listRefMapKeys(A){return this.assertRefMap(A).keys()}listRefMapValues(A){return this.assertRefMap(A).values().map((Q)=>Q.getChild())}getRefMap(A,Q){let Y=this.assertRefMap(A).get(Q);return Y?Y.getChild():null}setRefMap(A,Q,B,Y){let J=this.assertRefMap(A),C=J.get(Q);if(C)C.dispose();if(!B)return this;Y=Object.assign(Y||{},{key:Q});let X=this.graph._createEdge(A,this,B,OI({},Y,{key:Q}));return J.set(Q,X),this.dispatchEvent({type:"change",attribute:A,key:Q})}assertRefMap(A){let Q=this[PB][A];if(Q instanceof cJ)return Q;throw Error(`Expected RefMap for attribute "${A}"`)}dispatchEvent(A){return super.dispatchEvent(OI({},A,{target:this})),this.graph.dispatchEvent(OI({},A,{target:this,type:`node:${A.type}`})),this}_destroyRef(A){let Q=A.getName();if(this[PB][Q]===A){if(this[PB][Q]=null,this[sG].has(Q))A.getChild().dispose()}else if(this[PB][Q]instanceof DC)this[PB][Q].remove(A);else if(this[PB][Q]instanceof xB)this[PB][Q].remove(A);else if(this[PB][Q]instanceof cJ){let B=this[PB][Q];for(let Y of B.keys())if(B.get(Y)===A)B.delete(Y)}else return;this.graph._destroyEdge(A),this.dispatchEvent({type:"change",attribute:Q})}}var rYA="v4.2.1",SW="@glb.bin",YA;(function(A){A.ACCESSOR="Accessor",A.ANIMATION="Animation",A.ANIMATION_CHANNEL="AnimationChannel",A.ANIMATION_SAMPLER="AnimationSampler",A.BUFFER="Buffer",A.CAMERA="Camera",A.MATERIAL="Material",A.MESH="Mesh",A.PRIMITIVE="Primitive",A.PRIMITIVE_TARGET="PrimitiveTarget",A.NODE="Node",A.ROOT="Root",A.SCENE="Scene",A.SKIN="Skin",A.TEXTURE="Texture",A.TEXTURE_INFO="TextureInfo"})(YA||(YA={}));var w2;(function(A){A.INTERLEAVED="interleaved",A.SEPARATE="separate"})(w2||(w2={}));var Y8;(function(A){A.ARRAY_BUFFER="ARRAY_BUFFER",A.ELEMENT_ARRAY_BUFFER="ELEMENT_ARRAY_BUFFER",A.INVERSE_BIND_MATRICES="INVERSE_BIND_MATRICES",A.OTHER="OTHER",A.SPARSE="SPARSE"})(Y8||(Y8={}));var w9;(function(A){A[A.R=4096]="R",A[A.G=256]="G",A[A.B=16]="B",A[A.A=1]="A"})(w9||(w9={}));var s6;(function(A){A.GLTF="GLTF",A.GLB="GLB"})(s6||(s6={}));var aG={"5120":Int8Array,"5121":Uint8Array,"5122":Int16Array,"5123":Uint16Array,"5125":Uint32Array,"5126":Float32Array};class jQ{static createBufferFromDataURI(A){if(typeof Buffer>"u"){let Q=atob(A.split(",")[1]),B=new Uint8Array(Q.length);for(let Y=0;Y=0;return Buffer.from(Q,B?"base64":"utf8")}}static encodeText(A){return new TextEncoder().encode(A)}static decodeText(A){return new TextDecoder().decode(A)}static concat(A){let Q=0;for(let J of A)Q+=J.byteLength;let B=new Uint8Array(Q),Y=0;for(let J of A)B.set(J,Y),Y+=J.byteLength;return B}static pad(A,Q=0){let B=this.padNumber(A.byteLength);if(B===A.byteLength)return A;let Y=new Uint8Array(B);if(Y.set(A),Q!==0)for(let J=A.byteLength;J>16&255)/255,B[1]=(A>>8&255)/255,B[2]=(A&255)/255,this.convertSRGBToLinear(Q,Q)}static factorToHex(A){let Q=[...A],[B,Y,J]=this.convertLinearToSRGB(A,Q);return B*255<<16^Y*255<<8^J*255<<0}static convertSRGBToLinear(A,Q){let B=A,Y=Q;for(let J=0;J<3;J++)Y[J]=B[J]<0.04045?B[J]*0.0773993808:Math.pow(B[J]*0.9478672986+0.0521327014,2.4);return Q}static convertLinearToSRGB(A,Q){let B=A,Y=Q;for(let J=0;J<3;J++)Y[J]=B[J]<0.0031308?B[J]*12.92:1.055*Math.pow(B[J],0.41666)-0.055;return Q}}class aYA{match(A){return A.length>=3&&A[0]===255&&A[1]===216&&A[2]===255}getSize(A){let Q=new DataView(A.buffer,A.byteOffset+4),B,Y;while(Q.byteLength){if(B=Q.getUint16(0,!1),wmQ(Q,B),Y=Q.getUint8(B+1),Y===192||Y===193||Y===194)return[Q.getUint16(B+7,!1),Q.getUint16(B+5,!1)];Q=new DataView(A.buffer,Q.byteOffset+B+2)}throw TypeError("Invalid JPG, no size found")}getChannels(A){return 3}}class P2{match(A){return A.length>=8&&A[0]===137&&A[1]===80&&A[2]===78&&A[3]===71&&A[4]===13&&A[5]===10&&A[6]===26&&A[7]===10}getSize(A){let Q=new DataView(A.buffer,A.byteOffset);if(jQ.decodeText(A.slice(12,16))===P2.PNG_FRIED_CHUNK_NAME)return[Q.getUint32(32,!1),Q.getUint32(36,!1)];return[Q.getUint32(16,!1),Q.getUint32(20,!1)]}getChannels(A){return 4}}P2.PNG_FRIED_CHUNK_NAME="CgBI";class B8{static registerFormat(A,Q){this.impls[A]=Q}static getMimeType(A){for(let Q in this.impls)if(this.impls[Q].match(A))return Q;return null}static getSize(A,Q){if(!this.impls[Q])return null;return this.impls[Q].getSize(A)}static getChannels(A,Q){if(!this.impls[Q])return null;return this.impls[Q].getChannels(A)}static getVRAMByteLength(A,Q){if(!this.impls[Q])return null;if(this.impls[Q].getVRAMByteLength)return this.impls[Q].getVRAMByteLength(A);let B=0,Y=4,J=this.getSize(A,Q);if(!J)return null;while(J[0]>1||J[1]>1)B+=J[0]*J[1]*Y,J[0]=Math.max(Math.floor(J[0]/2),1),J[1]=Math.max(Math.floor(J[1]/2),1);return B+=1*Y,B}static mimeTypeToExtension(A){if(A==="image/jpeg")return"jpg";return A.split("/").pop()}static extensionToMimeType(A){if(A==="jpg")return"image/jpeg";if(!A)return"";return`image/${A}`}}B8.impls={"image/jpeg":new aYA,"image/png":new P2};function wmQ(A,Q){if(Q>A.byteLength)throw TypeError("Corrupt JPG, exceeded buffer limits");if(A.getUint8(Q)!==255)throw TypeError("Invalid JPG, marker table corrupted");return A}class r6{static basename(A){let Q=A.split(/[\\/]/).pop();return Q.substring(0,Q.lastIndexOf("."))}static extension(A){if(A.startsWith("data:image/")){let Q=A.match(/data:(image\/\w+)/)[1];return B8.mimeTypeToExtension(Q)}else if(A.startsWith("data:model/gltf+json"))return"gltf";else if(A.startsWith("data:model/gltf-binary"))return"glb";else if(A.startsWith("data:application/"))return"bin";return A.split(/[\\/]/).pop().split(/[.]/).pop()}}var fy=typeof Float32Array<"u"?Float32Array:Array;if(!Math.hypot)Math.hypot=function(){var A=0,Q=arguments.length;while(Q--)A+=arguments[Q]*arguments[Q];return Math.sqrt(A)};function jmQ(){var A=new fy(3);if(fy!=Float32Array)A[0]=0,A[1]=0,A[2]=0;return A}function xy(A){var Q=A[0],B=A[1],Y=A[2];return Math.hypot(Q,B,Y)}function OmQ(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=B[3]*Y+B[7]*J+B[11]*C+B[15];return X=X||1,A[0]=(B[0]*Y+B[4]*J+B[8]*C+B[12])/X,A[1]=(B[1]*Y+B[5]*J+B[9]*C+B[13])/X,A[2]=(B[2]*Y+B[6]*J+B[10]*C+B[14])/X,A}(function(){var A=jmQ();return function(Q,B,Y,J,C,X){var G,F;if(!B)B=3;if(!Y)Y=0;if(J)F=Math.min(J*B+Y,Q.length);else F=Q.length;for(G=Y;G{let C=J.getMesh();if(!C)return;let X=PmQ(C,J.getWorldMatrix());if(X.min.every(isFinite)&&X.max.every(isFinite))by(X.min,Q),by(X.max,Q)});return Q}function PmQ(A,Q){let B=oYA();for(let Y of A.listPrimitives()){let J=Y.getAttribute("POSITION"),C=Y.getIndices();if(!J)continue;let X=[0,0,0],G=[0,0,0];for(let F=0,W=C?C.getCount():J.getCount();F0)V=Math.sqrt(I+1)*2,A[3]=0.25*V,A[0]=(U-E)/V,A[1]=($-F)/V,A[2]=(G-W)/V;else if(X>Z&&X>K)V=Math.sqrt(1+X-Z-K)*2,A[3]=(U-E)/V,A[0]=0.25*V,A[1]=(G+W)/V,A[2]=($+F)/V;else if(Z>K)V=Math.sqrt(1+Z-X-K)*2,A[3]=($-F)/V,A[0]=(G+W)/V,A[1]=0.25*V,A[2]=(U+E)/V;else V=Math.sqrt(1+K-X-Z)*2,A[3]=(G-W)/V,A[0]=($+F)/V,A[1]=(U+E)/V,A[2]=0.25*V;return A}class kQ{static identity(A){return A}static eq(A,Q,B=0.00001){if(A.length!==Q.length)return!1;for(let Y=0;YB)return!1;return!0}static clamp(A,Q,B){if(AB)return B;return A}static decodeNormalizedInt(A,Q){switch(Q){case 5126:return A;case 5123:return A/65535;case 5121:return A/255;case 5122:return Math.max(A/32767,-1);case 5120:return Math.max(A/127,-1);default:throw Error("Invalid component type.")}}static encodeNormalizedInt(A,Q){switch(Q){case 5126:return A;case 5123:return Math.round(kQ.clamp(A,0,1)*65535);case 5121:return Math.round(kQ.clamp(A,0,1)*255);case 5122:return Math.round(kQ.clamp(A,-1,1)*32767);case 5120:return Math.round(kQ.clamp(A,-1,1)*127);default:throw Error("Invalid component type.")}}static decompose(A,Q,B,Y){let J=xy([A[0],A[1],A[2]]),C=xy([A[4],A[5],A[6]]),X=xy([A[8],A[9],A[10]]);if(TmQ(A)<0)J=-J;Q[0]=A[12],Q[1]=A[13],Q[2]=A[14];let F=A.slice(),W=1/J,Z=1/C,U=1/X;F[0]*=W,F[1]*=W,F[2]*=W,F[4]*=Z,F[5]*=Z,F[6]*=Z,F[8]*=U,F[9]*=U,F[10]*=U,_mQ(B,F),Y[0]=J,Y[1]=C,Y[2]=X}static compose(A,Q,B,Y){let J=Y,C=Q[0],X=Q[1],G=Q[2],F=Q[3],W=C+C,Z=X+X,U=G+G,$=C*W,E=C*Z,K=C*U,I=X*Z,V=X*U,H=G*U,D=F*W,L=F*Z,z=F*U,M=B[0],N=B[1],q=B[2];return J[0]=(1-(I+H))*M,J[1]=(E+z)*M,J[2]=(K-L)*M,J[3]=0,J[4]=(E-z)*N,J[5]=(1-($+H))*N,J[6]=(V+D)*N,J[7]=0,J[8]=(K+L)*q,J[9]=(V-D)*q,J[10]=(1-($+I))*q,J[11]=0,J[12]=A[0],J[13]=A[1],J[14]=A[2],J[15]=1,J}}function vmQ(A,Q){if(!!A!==!!Q)return!1;let B=A.getChild(),Y=Q.getChild();return B===Y||B.equals(Y)}function ymQ(A,Q){if(!!A!==!!Q)return!1;let B=A.values(),Y=Q.values();if(B.length!==Y.length)return!1;for(let J=0;JA,bmQ=new Set;class T2 extends N2{constructor(A,Q=""){super(A);this[PB].name=Q,this.init(),this.dispatchEvent({type:"create"})}getGraph(){return this.graph}getDefaults(){return Object.assign(super.getDefaults(),{name:"",extras:{}})}set(A,Q){if(Array.isArray(Q))Q=Q.slice();return super.set(A,Q)}getName(){return this.get("name")}setName(A){return this.set("name",A)}getExtras(){return this.get("extras")}setExtras(A){return this.set("extras",A)}clone(){return new this.constructor(this.graph).copy(this,rG)}copy(A,Q=rG){for(let B in this[PB]){let Y=this[PB][B];if(Y instanceof n6){if(!this[sG].has(B))Y.dispose()}else if(Y instanceof DC||Y instanceof xB)for(let J of Y.values())J.dispose();else if(Y instanceof cJ)for(let J of Y.values())J.dispose()}for(let B in A[PB]){let Y=this[PB][B],J=A[PB][B];if(J instanceof n6)if(this[sG].has(B))Y.getChild().copy(Q(J.getChild()),Q);else this.setRef(B,Q(J.getChild()),J.getAttributes());else if(J instanceof xB||J instanceof DC)for(let C of J.values())this.addRef(B,Q(C.getChild()),C.getAttributes());else if(J instanceof cJ)for(let C of J.keys()){let X=J.get(C);this.setRefMap(B,C,Q(X.getChild()),X.getAttributes())}else if(TW(J))this[PB][B]=JSON.parse(JSON.stringify(J));else if(Array.isArray(J)||J instanceof ArrayBuffer||ArrayBuffer.isView(J))this[PB][B]=J.slice();else this[PB][B]=J}return this}equals(A,Q=bmQ){if(this===A)return!0;if(this.propertyType!==A.propertyType)return!1;for(let B in this[PB]){if(Q.has(B))continue;let Y=this[PB][B],J=A[PB][B];if(Y instanceof n6||J instanceof n6){if(!vmQ(Y,J))return!1}else if(Y instanceof xB||J instanceof xB||Y instanceof DC||J instanceof DC){if(!ymQ(Y,J))return!1}else if(Y instanceof cJ||J instanceof cJ){if(!hmQ(Y,J))return!1}else if(TW(Y)||TW(J)){if(!eYA(Y,J))return!1}else if(j2(Y)||j2(J)){if(!tYA(Y,J))return!1}else if(Y!==J)return!1}return!0}detach(){return this.graph.disconnectParents(this,(A)=>A.propertyType!=="Root"),this}listParents(){return this.graph.listParents(this)}}class IJ extends T2{getDefaults(){return Object.assign(super.getDefaults(),{extensions:new cJ})}getExtension(A){return this.getRefMap("extensions",A)}setExtension(A,Q){if(Q)Q._validateParent(this);return this.setRefMap("extensions",A,Q)}listExtensions(){return this.listRefMapValues("extensions")}}class fA extends IJ{init(){this.propertyType=YA.ACCESSOR}getDefaults(){return Object.assign(super.getDefaults(),{array:null,type:fA.Type.SCALAR,componentType:fA.ComponentType.FLOAT,normalized:!1,sparse:!1,buffer:null})}static getElementSize(A){switch(A){case fA.Type.SCALAR:return 1;case fA.Type.VEC2:return 2;case fA.Type.VEC3:return 3;case fA.Type.VEC4:return 4;case fA.Type.MAT2:return 4;case fA.Type.MAT3:return 9;case fA.Type.MAT4:return 16;default:throw Error("Unexpected type: "+A)}}static getComponentSize(A){switch(A){case fA.ComponentType.BYTE:return 1;case fA.ComponentType.UNSIGNED_BYTE:return 1;case fA.ComponentType.SHORT:return 2;case fA.ComponentType.UNSIGNED_SHORT:return 2;case fA.ComponentType.UNSIGNED_INT:return 4;case fA.ComponentType.FLOAT:return 4;default:throw Error("Unexpected component type: "+A)}}getMinNormalized(A){let Q=this.getNormalized(),B=this.getElementSize(),Y=this.getComponentType();if(this.getMin(A),Q)for(let J=0;J{this._addChildOfRoot(Q.target)})}clone(){throw Error("Root cannot be cloned.")}copy(A,Q=rG){if(Q===rG)throw Error("Root cannot be copied.");this.set("asset",lJ({},A.get("asset"))),this.setName(A.getName()),this.setExtras(lJ({},A.getExtras())),this.setDefaultScene(A.getDefaultScene()?Q(A.getDefaultScene()):null);for(let B of A.listRefMapKeys("extensions")){let Y=A.getExtension(B);this.setExtension(B,Q(Y))}return this}_addChildOfRoot(A){if(A instanceof h4)this.addRef("scenes",A);else if(A instanceof S2)this.addRef("nodes",A);else if(A instanceof kW)this.addRef("cameras",A);else if(A instanceof iy)this.addRef("skins",A);else if(A instanceof kI)this.addRef("meshes",A);else if(A instanceof w1)this.addRef("materials",A);else if(A instanceof _W)this.addRef("textures",A);else if(A instanceof cy)this.addRef("animations",A);else if(A instanceof fA)this.addRef("accessors",A);else if(A instanceof ly)this.addRef("buffers",A);return this}getAsset(){return this.get("asset")}listExtensionsUsed(){return Array.from(this._extensions)}listExtensionsRequired(){return this.listExtensionsUsed().filter((A)=>A.isRequired())}_enableExtension(A){return this._extensions.add(A),this}_disableExtension(A){return this._extensions.delete(A),this}listScenes(){return this.listRefs("scenes")}setDefaultScene(A){return this.setRef("defaultScene",A)}getDefaultScene(){return this.getRef("defaultScene")}listNodes(){return this.listRefs("nodes")}listCameras(){return this.listRefs("cameras")}listSkins(){return this.listRefs("skins")}listMeshes(){return this.listRefs("meshes")}listMaterials(){return this.listRefs("materials")}listTextures(){return this.listRefs("textures")}listAnimations(){return this.listRefs("animations")}listAccessors(){return this.listRefs("accessors")}listBuffers(){return this.listRefs("buffers")}}class VJ{static fromGraph(A){return VJ._GRAPH_DOCUMENTS.get(A)||null}constructor(){this._graph=new D2,this._root=new g4(this._graph),this._logger=R9.DEFAULT_INSTANCE,VJ._GRAPH_DOCUMENTS.set(this._graph,this)}getRoot(){return this._root}getGraph(){return this._graph}getLogger(){return this._logger}setLogger(A){return this._logger=A,this}clone(){throw Error("Use 'cloneDocument(source)' from '@gltf-transform/functions'.")}merge(A){throw Error("Use 'mergeDocuments(target, source)' from '@gltf-transform/functions'.")}async transform(...A){let Q=A.map((B)=>B.name);for(let B of A)await B(this,{stack:Q});return this}createExtension(A){let Q=A.EXTENSION_NAME;return this.getRoot().listExtensionsUsed().find((Y)=>Y.extensionName===Q)||new A(this)}createScene(A=""){return new h4(this._graph,A)}createNode(A=""){return new S2(this._graph,A)}createCamera(A=""){return new kW(this._graph,A)}createSkin(A=""){return new iy(this._graph,A)}createMesh(A=""){return new kI(this._graph,A)}createPrimitive(){return new D0(this._graph)}createPrimitiveTarget(A=""){return new py(this._graph,A)}createMaterial(A=""){return new w1(this._graph,A)}createTexture(A=""){return new _W(this._graph,A)}createAnimation(A=""){return new cy(this._graph,A)}createAnimationChannel(A=""){return new a6(this._graph,A)}createAnimationSampler(A=""){return new oG(this._graph,A)}createAccessor(A="",Q=null){if(!Q)Q=this.getRoot().listBuffers()[0];return new fA(this._graph,A).setBuffer(Q)}createBuffer(A=""){return new ly(this._graph,A)}}VJ._GRAPH_DOCUMENTS=new WeakMap;class oB{constructor(A){this.extensionName="",this.prereadTypes=[],this.prewriteTypes=[],this.readDependencies=[],this.writeDependencies=[],this.document=void 0,this.required=!1,this.properties=new Set,this._listener=void 0,this.document=A,A.getRoot()._enableExtension(this),this._listener=(B)=>{let Y=B,J=Y.target;if(J instanceof aB&&J.extensionName===this.extensionName){if(Y.type==="node:create")this._addExtensionProperty(J);if(Y.type==="node:dispose")this._removeExtensionProperty(J)}};let Q=A.getGraph();Q.addEventListener("node:create",this._listener),Q.addEventListener("node:dispose",this._listener)}dispose(){this.document.getRoot()._disableExtension(this);let A=this.document.getGraph();A.removeEventListener("node:create",this._listener),A.removeEventListener("node:dispose",this._listener);for(let Q of this.properties)Q.dispose()}static register(){}isRequired(){return this.required}setRequired(A){return this.required=A,this}listProperties(){return Array.from(this.properties)}_addExtensionProperty(A){return this.properties.add(A),this}_removeExtensionProperty(A){return this.properties.delete(A),this}install(A,Q){return this}preread(A,Q){return this}prewrite(A,Q){return this}}oB.EXTENSION_NAME=void 0;class QJA{constructor(A){this.jsonDoc=void 0,this.buffers=[],this.bufferViews=[],this.bufferViewBuffers=[],this.accessors=[],this.textures=[],this.textureInfos=new Map,this.materials=[],this.meshes=[],this.cameras=[],this.nodes=[],this.skins=[],this.animations=[],this.scenes=[],this.jsonDoc=A}setTextureInfo(A,Q){if(this.textureInfos.set(A,Q),Q.texCoord!==void 0)A.setTexCoord(Q.texCoord);if(Q.extras!==void 0)A.setExtras(Q.extras);let B=this.jsonDoc.json.textures[Q.index];if(B.sampler===void 0)return;let Y=this.jsonDoc.json.samplers[B.sampler];if(Y.magFilter!==void 0)A.setMagFilter(Y.magFilter);if(Y.minFilter!==void 0)A.setMinFilter(Y.minFilter);if(Y.wrapS!==void 0)A.setWrapS(Y.wrapS);if(Y.wrapT!==void 0)A.setWrapT(Y.wrapT)}}var nYA={logger:R9.DEFAULT_INSTANCE,extensions:[],dependencies:{}},dmQ=new Set([YA.BUFFER,YA.TEXTURE,YA.MATERIAL,YA.MESH,YA.PRIMITIVE,YA.NODE,YA.SCENE]);class BJA{static read(A,Q=nYA){let B=lJ({},nYA,Q),{json:Y}=A,J=new VJ().setLogger(B.logger);this.validate(A,B);let C=new QJA(A),X=Y.asset,G=J.getRoot().getAsset();if(X.copyright)G.copyright=X.copyright;if(X.extras)G.extras=X.extras;if(Y.extras!==void 0)J.getRoot().setExtras(lJ({},Y.extras));let F=Y.extensionsUsed||[],W=Y.extensionsRequired||[];B.extensions.sort((N,q)=>N.EXTENSION_NAME>q.EXTENSION_NAME?1:-1);for(let N of B.extensions)if(F.includes(N.EXTENSION_NAME)){let q=J.createExtension(N).setRequired(W.includes(N.EXTENSION_NAME)),w=q.prereadTypes.filter((P)=>!dmQ.has(P));if(w.length)B.logger.warn(`Preread hooks for some types (${w.join()}), requested by extension ${q.extensionName}, are unsupported. Please file an issue or a PR.`);for(let P of q.readDependencies)q.install(P,B.dependencies[P])}let Z=Y.buffers||[];J.getRoot().listExtensionsUsed().filter((N)=>N.prereadTypes.includes(YA.BUFFER)).forEach((N)=>N.preread(C,YA.BUFFER)),C.buffers=Z.map((N)=>{let q=J.createBuffer(N.name);if(N.extras)q.setExtras(N.extras);if(N.uri&&N.uri.indexOf("__")!==0)q.setURI(N.uri);return q});let U=Y.bufferViews||[];C.bufferViewBuffers=U.map((N,q)=>{if(!C.bufferViews[q]){let w=A.json.buffers[N.buffer],P=w.uri?A.resources[w.uri]:A.resources[SW],_=N.byteOffset||0;C.bufferViews[q]=jQ.toView(P,_,N.byteLength)}return C.buffers[N.buffer]});let $=Y.accessors||[];C.accessors=$.map((N)=>{let q=C.bufferViewBuffers[N.bufferView],w=J.createAccessor(N.name,q).setType(N.type);if(N.extras)w.setExtras(N.extras);if(N.normalized!==void 0)w.setNormalized(N.normalized);if(N.bufferView===void 0)return w;return w.setArray(R2(N,C)),w});let E=Y.images||[],K=Y.textures||[];J.getRoot().listExtensionsUsed().filter((N)=>N.prereadTypes.includes(YA.TEXTURE)).forEach((N)=>N.preread(C,YA.TEXTURE)),C.textures=E.map((N)=>{let q=J.createTexture(N.name);if(N.extras)q.setExtras(N.extras);if(N.bufferView!==void 0){let w=Y.bufferViews[N.bufferView],P=A.json.buffers[w.buffer],_=P.uri?A.resources[P.uri]:A.resources[SW],O=w.byteOffset||0,k=w.byteLength,T=_.slice(O,O+k);q.setImage(T)}else if(N.uri!==void 0){if(q.setImage(A.resources[N.uri]),N.uri.indexOf("__")!==0)q.setURI(N.uri)}if(N.mimeType!==void 0)q.setMimeType(N.mimeType);else if(N.uri){let w=r6.extension(N.uri);q.setMimeType(B8.extensionToMimeType(w))}return q}),J.getRoot().listExtensionsUsed().filter((N)=>N.prereadTypes.includes(YA.MATERIAL)).forEach((N)=>N.preread(C,YA.MATERIAL));let I=Y.materials||[];C.materials=I.map((N)=>{let q=J.createMaterial(N.name);if(N.extras)q.setExtras(N.extras);if(N.alphaMode!==void 0)q.setAlphaMode(N.alphaMode);if(N.alphaCutoff!==void 0)q.setAlphaCutoff(N.alphaCutoff);if(N.doubleSided!==void 0)q.setDoubleSided(N.doubleSided);let w=N.pbrMetallicRoughness||{};if(w.baseColorFactor!==void 0)q.setBaseColorFactor(w.baseColorFactor);if(N.emissiveFactor!==void 0)q.setEmissiveFactor(N.emissiveFactor);if(w.metallicFactor!==void 0)q.setMetallicFactor(w.metallicFactor);if(w.roughnessFactor!==void 0)q.setRoughnessFactor(w.roughnessFactor);if(w.baseColorTexture!==void 0){let P=w.baseColorTexture,_=C.textures[K[P.index].source];q.setBaseColorTexture(_),C.setTextureInfo(q.getBaseColorTextureInfo(),P)}if(N.emissiveTexture!==void 0){let P=N.emissiveTexture,_=C.textures[K[P.index].source];q.setEmissiveTexture(_),C.setTextureInfo(q.getEmissiveTextureInfo(),P)}if(N.normalTexture!==void 0){let P=N.normalTexture,_=C.textures[K[P.index].source];if(q.setNormalTexture(_),C.setTextureInfo(q.getNormalTextureInfo(),P),N.normalTexture.scale!==void 0)q.setNormalScale(N.normalTexture.scale)}if(N.occlusionTexture!==void 0){let P=N.occlusionTexture,_=C.textures[K[P.index].source];if(q.setOcclusionTexture(_),C.setTextureInfo(q.getOcclusionTextureInfo(),P),N.occlusionTexture.strength!==void 0)q.setOcclusionStrength(N.occlusionTexture.strength)}if(w.metallicRoughnessTexture!==void 0){let P=w.metallicRoughnessTexture,_=C.textures[K[P.index].source];q.setMetallicRoughnessTexture(_),C.setTextureInfo(q.getMetallicRoughnessTextureInfo(),P)}return q}),J.getRoot().listExtensionsUsed().filter((N)=>N.prereadTypes.includes(YA.MESH)).forEach((N)=>N.preread(C,YA.MESH));let V=Y.meshes||[];J.getRoot().listExtensionsUsed().filter((N)=>N.prereadTypes.includes(YA.PRIMITIVE)).forEach((N)=>N.preread(C,YA.PRIMITIVE)),C.meshes=V.map((N)=>{let q=J.createMesh(N.name);if(N.extras)q.setExtras(N.extras);if(N.weights!==void 0)q.setWeights(N.weights);return(N.primitives||[]).forEach((P)=>{let _=J.createPrimitive();if(P.extras)_.setExtras(P.extras);if(P.material!==void 0)_.setMaterial(C.materials[P.material]);if(P.mode!==void 0)_.setMode(P.mode);for(let[T,S]of Object.entries(P.attributes||{}))_.setAttribute(T,C.accessors[S]);if(P.indices!==void 0)_.setIndices(C.accessors[P.indices]);let O=N.extras&&N.extras.targetNames||[];(P.targets||[]).forEach((T,S)=>{let v=O[S]||S.toString(),y=J.createPrimitiveTarget(v);for(let[g,h]of Object.entries(T))y.setAttribute(g,C.accessors[h]);_.addTarget(y)}),q.addPrimitive(_)}),q});let H=Y.cameras||[];C.cameras=H.map((N)=>{let q=J.createCamera(N.name).setType(N.type);if(N.extras)q.setExtras(N.extras);if(N.type===kW.Type.PERSPECTIVE){let w=N.perspective;if(q.setYFov(w.yfov),q.setZNear(w.znear),w.zfar!==void 0)q.setZFar(w.zfar);if(w.aspectRatio!==void 0)q.setAspectRatio(w.aspectRatio)}else{let w=N.orthographic;q.setZNear(w.znear).setZFar(w.zfar).setXMag(w.xmag).setYMag(w.ymag)}return q});let D=Y.nodes||[];J.getRoot().listExtensionsUsed().filter((N)=>N.prereadTypes.includes(YA.NODE)).forEach((N)=>N.preread(C,YA.NODE)),C.nodes=D.map((N)=>{let q=J.createNode(N.name);if(N.extras)q.setExtras(N.extras);if(N.translation!==void 0)q.setTranslation(N.translation);if(N.rotation!==void 0)q.setRotation(N.rotation);if(N.scale!==void 0)q.setScale(N.scale);if(N.matrix!==void 0){let w=[0,0,0],P=[0,0,0,1],_=[1,1,1];kQ.decompose(N.matrix,w,P,_),q.setTranslation(w),q.setRotation(P),q.setScale(_)}if(N.weights!==void 0)q.setWeights(N.weights);return q});let L=Y.skins||[];C.skins=L.map((N)=>{let q=J.createSkin(N.name);if(N.extras)q.setExtras(N.extras);if(N.inverseBindMatrices!==void 0)q.setInverseBindMatrices(C.accessors[N.inverseBindMatrices]);if(N.skeleton!==void 0)q.setSkeleton(C.nodes[N.skeleton]);for(let w of N.joints)q.addJoint(C.nodes[w]);return q}),D.map((N,q)=>{let w=C.nodes[q];if((N.children||[]).forEach((_)=>w.addChild(C.nodes[_])),N.mesh!==void 0)w.setMesh(C.meshes[N.mesh]);if(N.camera!==void 0)w.setCamera(C.cameras[N.camera]);if(N.skin!==void 0)w.setSkin(C.skins[N.skin])});let z=Y.animations||[];C.animations=z.map((N)=>{let q=J.createAnimation(N.name);if(N.extras)q.setExtras(N.extras);let P=(N.samplers||[]).map((O)=>{let k=J.createAnimationSampler().setInput(C.accessors[O.input]).setOutput(C.accessors[O.output]).setInterpolation(O.interpolation||oG.Interpolation.LINEAR);if(O.extras)k.setExtras(O.extras);return q.addSampler(k),k});return(N.channels||[]).forEach((O)=>{let k=J.createAnimationChannel().setSampler(P[O.sampler]).setTargetPath(O.target.path);if(O.target.node!==void 0)k.setTargetNode(C.nodes[O.target.node]);if(O.extras)k.setExtras(O.extras);q.addChannel(k)}),q});let M=Y.scenes||[];if(J.getRoot().listExtensionsUsed().filter((N)=>N.prereadTypes.includes(YA.SCENE)).forEach((N)=>N.preread(C,YA.SCENE)),C.scenes=M.map((N)=>{let q=J.createScene(N.name);if(N.extras)q.setExtras(N.extras);return(N.nodes||[]).map((P)=>C.nodes[P]).forEach((P)=>q.addChild(P)),q}),Y.scene!==void 0)J.getRoot().setDefaultScene(C.scenes[Y.scene]);return J.getRoot().listExtensionsUsed().forEach((N)=>N.read(C)),$.forEach((N,q)=>{let w=C.accessors[q],P=!!N.sparse,_=!N.bufferView&&!w.getArray();if(P||_)w.setSparse(!0).setArray(lmQ(N,C))}),J}static validate(A,Q){let B=A.json;if(B.asset.version!=="2.0")throw Error(`Unsupported glTF version, "${B.asset.version}".`);if(B.extensionsRequired){for(let Y of B.extensionsRequired)if(!Q.extensions.find((J)=>J.EXTENSION_NAME===Y))throw Error(`Missing required extension, "${Y}".`)}if(B.extensionsUsed){for(let Y of B.extensionsUsed)if(!Q.extensions.find((J)=>J.EXTENSION_NAME===Y))Q.logger.warn(`Missing optional extension, "${Y}".`)}}}function cmQ(A,Q){let B=Q.jsonDoc,Y=Q.bufferViews[A.bufferView],J=B.json.bufferViews[A.bufferView],C=aG[A.componentType],X=fA.getElementSize(A.type),G=C.BYTES_PER_ELEMENT,F=A.byteOffset||0,W=new C(A.count*X),Z=new DataView(Y.buffer,Y.byteOffset,Y.byteLength),U=J.byteStride;for(let $=0;$1,()=>B.basename||"buffer"),this.imageURIGenerator=new uy(C>1,(X)=>pmQ(A,X)||B.basename||"texture"),this.logger=A.getLogger()}createTextureInfoDef(A,Q){let B={magFilter:Q.getMagFilter()||void 0,minFilter:Q.getMinFilter()||void 0,wrapS:Q.getWrapS(),wrapT:Q.getWrapT()},Y=JSON.stringify(B);if(!this.samplerDefIndexMap.has(Y))this.samplerDefIndexMap.set(Y,this.jsonDoc.json.samplers.length),this.jsonDoc.json.samplers.push(B);let J={source:this.imageIndexMap.get(A),sampler:this.samplerDefIndexMap.get(Y)},C=JSON.stringify(J);if(!this.textureDefIndexMap.has(C))this.textureDefIndexMap.set(C,this.jsonDoc.json.textures.length),this.jsonDoc.json.textures.push(J);let X={index:this.textureDefIndexMap.get(C)};if(Q.getTexCoord()!==0)X.texCoord=Q.getTexCoord();if(Object.keys(Q.getExtras()).length>0)X.extras=Q.getExtras();return this.textureInfoDefMap.set(Q,X),X}createPropertyDef(A){let Q={};if(A.getName())Q.name=A.getName();if(Object.keys(A.getExtras()).length>0)Q.extras=A.getExtras();return Q}createAccessorDef(A){let Q=this.createPropertyDef(A);if(Q.type=A.getType(),Q.componentType=A.getComponentType(),Q.count=A.getCount(),this._doc.getGraph().listParentEdges(A).some((Y)=>Y.getName()==="attributes"&&Y.getAttributes().key==="POSITION"||Y.getName()==="input"))Q.max=A.getMax([]).map(Math.fround),Q.min=A.getMin([]).map(Math.fround);if(A.getNormalized())Q.normalized=A.getNormalized();return Q}createImageData(A,Q,B){if(this.options.format===s6.GLB)this.imageBufferViews.push(Q),A.bufferView=this.jsonDoc.json.bufferViews.length,this.jsonDoc.json.bufferViews.push({buffer:0,byteOffset:-1,byteLength:Q.byteLength});else{let Y=B8.mimeTypeToExtension(B.getMimeType());A.uri=this.imageURIGenerator.createURI(B,Y),this.assignResourceURI(A.uri,Q,!1)}}assignResourceURI(A,Q,B){let Y=this.jsonDoc.resources;if(!(A in Y)){Y[A]=Q;return}if(Q===Y[A]){this.logger.warn(`Duplicate resource URI, "${A}".`);return}let J=`Resource URI "${A}" already assigned to different data.`;if(!B){this.logger.warn(J);return}throw Error(J)}getAccessorUsage(A){let Q=this._accessorUsageMap.get(A);if(Q)return Q;if(A.getSparse())return Y8.SPARSE;for(let B of this._doc.getGraph().listParentEdges(A)){let{usage:Y}=B.getAttributes();if(Y)return Y;if(B.getParent().propertyType!==YA.ROOT)this.logger.warn(`Missing attribute ".usage" on edge, "${B.getName()}".`)}return Y8.OTHER}addAccessorToUsageGroup(A,Q){let B=this._accessorUsageMap.get(A);if(B&&B!==Q)throw Error(`Accessor with usage "${B}" cannot be reused as "${Q}".`);return this._accessorUsageMap.set(A,Q),this}}e8.BufferViewTarget=TI;e8.BufferViewUsage=Y8;e8.USAGE_TO_TARGET={[Y8.ARRAY_BUFFER]:TI.ARRAY_BUFFER,[Y8.ELEMENT_ARRAY_BUFFER]:TI.ELEMENT_ARRAY_BUFFER};class uy{constructor(A,Q){this.multiple=void 0,this.basename=void 0,this.counter={},this.multiple=A,this.basename=Q}createURI(A,Q){if(A.getURI())return A.getURI();else if(!this.multiple)return`${this.basename(A)}.${Q}`;else{let B=this.basename(A);return this.counter[B]=this.counter[B]||1,`${B}_${this.counter[B]++}.${Q}`}}}function pmQ(A,Q){let B=A.getGraph().listParentEdges(Q).find((Y)=>Y.getParent()!==A.getRoot());return B?B.getName().replace(/texture$/i,""):""}var{BufferViewUsage:z2}=e8,{UNSIGNED_INT:imQ,UNSIGNED_SHORT:nmQ,UNSIGNED_BYTE:smQ}=fA.ComponentType,rmQ=new Set([YA.ACCESSOR,YA.BUFFER,YA.MATERIAL,YA.MESH]);class YJA{static write(A,Q){let B=A.getGraph(),Y=A.getRoot(),J={asset:lJ({generator:`glTF-Transform ${rYA}`},Y.getAsset()),extras:lJ({},Y.getExtras())},C={json:J,resources:{}},X=new e8(A,C,Q),G=Q.logger||R9.DEFAULT_INSTANCE,F=new Set(Q.extensions.map((V)=>V.EXTENSION_NAME)),W=A.getRoot().listExtensionsUsed().filter((V)=>F.has(V.extensionName)).sort((V,H)=>V.extensionName>H.extensionName?1:-1),Z=A.getRoot().listExtensionsRequired().filter((V)=>F.has(V.extensionName)).sort((V,H)=>V.extensionName>H.extensionName?1:-1);if(W.length!rmQ.has(D));if(H.length)G.warn(`Prewrite hooks for some types (${H.join()}), requested by extension ${V.extensionName}, are unsupported. Please file an issue or a PR.`);for(let D of V.writeDependencies)V.install(D,Q.dependencies[D])}function U(V,H,D,L){let z=[],M=0;for(let w of V){let P=X.createAccessorDef(w);P.bufferView=J.bufferViews.length;let _=w.getArray(),O=jQ.pad(jQ.toView(_));P.byteOffset=M,M+=O.byteLength,z.push(O),X.accessorIndexMap.set(w,J.accessors.length),J.accessors.push(P)}let N=jQ.concat(z),q={buffer:H,byteOffset:D,byteLength:N.byteLength};if(L)q.target=L;return J.bufferViews.push(q),{buffers:z,byteLength:M}}function $(V,H,D){let L=V[0].getCount(),z=0;for(let P of V){let _=X.createAccessorDef(P);_.bufferView=J.bufferViews.length,_.byteOffset=z;let O=P.getElementSize(),k=P.getComponentSize();z+=jQ.padNumber(O*k),X.accessorIndexMap.set(P,J.accessors.length),J.accessors.push(_)}let M=L*z,N=new ArrayBuffer(M),q=new DataView(N);for(let P=0;PS.getCount()/2)q=!0;let l=aG[S.getComponentType()];p.indices=y,p.values=new l(g)}if(!Number.isFinite(N))return{buffers:L,byteLength:z};if(q)G.warn("Some sparse accessors have >50% non-zero elements, which may increase file size.");let w=N<255?Uint8Array:N<65535?Uint16Array:Uint32Array,P=N<255?smQ:N<65535?nmQ:imQ,_={buffer:H,byteOffset:D+z,byteLength:0};for(let S of V){let v=M.get(S);if(v.count===0)continue;v.indicesByteOffset=_.byteLength;let y=jQ.pad(jQ.toView(new w(v.indices)));L.push(y),z+=y.byteLength,_.byteLength+=y.byteLength}J.bufferViews.push(_);let O=J.bufferViews.length-1,k={buffer:H,byteOffset:D+z,byteLength:0};for(let S of V){let v=M.get(S);if(v.count===0)continue;v.valuesByteOffset=k.byteLength;let y=jQ.pad(jQ.toView(v.values));L.push(y),z+=y.byteLength,k.byteLength+=y.byteLength}J.bufferViews.push(k);let T=J.bufferViews.length-1;for(let S of V){let v=M.get(S);if(v.count===0)continue;v.accessorDef.sparse={count:v.count,indices:{bufferView:O,byteOffset:v.indicesByteOffset,componentType:P},values:{bufferView:T,byteOffset:v.valuesByteOffset}}}return{buffers:L,byteLength:z}}if(J.accessors=[],J.bufferViews=[],J.samplers=[],J.textures=[],J.images=Y.listTextures().map((V,H)=>{let D=X.createPropertyDef(V);if(V.getMimeType())D.mimeType=V.getMimeType();let L=V.getImage();if(L)X.createImageData(D,L,V);return X.imageIndexMap.set(V,H),D}),W.filter((V)=>V.prewriteTypes.includes(YA.ACCESSOR)).forEach((V)=>V.prewrite(X,YA.ACCESSOR)),Y.listAccessors().forEach((V)=>{let{accessorUsageGroupedByParent:H,accessorParents:D}=X;if(X.accessorIndexMap.has(V))return;let L=X.getAccessorUsage(V);if(X.addAccessorToUsageGroup(V,L),H.has(L)){let z=B.listParents(V).find((M)=>M.propertyType!==YA.ROOT);D.set(V,z)}}),W.filter((V)=>V.prewriteTypes.includes(YA.BUFFER)).forEach((V)=>V.prewrite(X,YA.BUFFER)),(Y.listAccessors().length>0||X.otherBufferViews.size>0||Y.listTextures().length>0&&Q.format===s6.GLB)&&Y.listBuffers().length===0)throw Error("Buffer required for Document resources, but none was found.");if(J.buffers=[],Y.listBuffers().forEach((V,H)=>{let D=X.createPropertyDef(V),L=X.accessorUsageGroupedByParent,z=V.listParents().filter((k)=>k instanceof fA),M=new Set(z.map((k)=>X.accessorParents.get(k))),N=new Map(Array.from(M).map((k,T)=>[k,T])),q={};for(let k of z){var w;if(X.accessorIndexMap.has(k))continue;let T=X.getAccessorUsage(k),S=T;if(L.has(T)){let v=X.accessorParents.get(k);S+=`:${N.get(v)}`}q[w=S]||(q[w]={usage:T,accessors:[]}),q[S].accessors.push(k)}let P=[],_=J.buffers.length,O=0;for(let{usage:k,accessors:T}of Object.values(q))if(k===z2.ARRAY_BUFFER&&Q.vertexLayout===w2.INTERLEAVED){let S=$(T,_,O);O+=S.byteLength;for(let v of S.buffers)P.push(v)}else if(k===z2.ARRAY_BUFFER)for(let S of T){let v=$([S],_,O);O+=v.byteLength;for(let y of v.buffers)P.push(y)}else if(k===z2.SPARSE){let S=E(T,_,O);O+=S.byteLength;for(let v of S.buffers)P.push(v)}else if(k===z2.ELEMENT_ARRAY_BUFFER){let S=e8.BufferViewTarget.ELEMENT_ARRAY_BUFFER,v=U(T,_,O,S);O+=v.byteLength;for(let y of v.buffers)P.push(y)}else{let S=U(T,_,O);O+=S.byteLength;for(let v of S.buffers)P.push(v)}if(X.imageBufferViews.length&&H===0){for(let k=0;k!V.getBuffer()))G.warn("Skipped writing one or more Accessors: no Buffer assigned.");W.filter((V)=>V.prewriteTypes.includes(YA.MATERIAL)).forEach((V)=>V.prewrite(X,YA.MATERIAL)),J.materials=Y.listMaterials().map((V,H)=>{let D=X.createPropertyDef(V);if(V.getAlphaMode()!==w1.AlphaMode.OPAQUE)D.alphaMode=V.getAlphaMode();if(V.getAlphaMode()===w1.AlphaMode.MASK)D.alphaCutoff=V.getAlphaCutoff();if(V.getDoubleSided())D.doubleSided=!0;if(D.pbrMetallicRoughness={},!kQ.eq(V.getBaseColorFactor(),[1,1,1,1]))D.pbrMetallicRoughness.baseColorFactor=V.getBaseColorFactor();if(!kQ.eq(V.getEmissiveFactor(),[0,0,0]))D.emissiveFactor=V.getEmissiveFactor();if(V.getRoughnessFactor()!==1)D.pbrMetallicRoughness.roughnessFactor=V.getRoughnessFactor();if(V.getMetallicFactor()!==1)D.pbrMetallicRoughness.metallicFactor=V.getMetallicFactor();if(V.getBaseColorTexture()){let L=V.getBaseColorTexture(),z=V.getBaseColorTextureInfo();D.pbrMetallicRoughness.baseColorTexture=X.createTextureInfoDef(L,z)}if(V.getEmissiveTexture()){let L=V.getEmissiveTexture(),z=V.getEmissiveTextureInfo();D.emissiveTexture=X.createTextureInfoDef(L,z)}if(V.getNormalTexture()){let L=V.getNormalTexture(),z=V.getNormalTextureInfo(),M=X.createTextureInfoDef(L,z);if(V.getNormalScale()!==1)M.scale=V.getNormalScale();D.normalTexture=M}if(V.getOcclusionTexture()){let L=V.getOcclusionTexture(),z=V.getOcclusionTextureInfo(),M=X.createTextureInfoDef(L,z);if(V.getOcclusionStrength()!==1)M.strength=V.getOcclusionStrength();D.occlusionTexture=M}if(V.getMetallicRoughnessTexture()){let L=V.getMetallicRoughnessTexture(),z=V.getMetallicRoughnessTextureInfo();D.pbrMetallicRoughness.metallicRoughnessTexture=X.createTextureInfoDef(L,z)}return X.materialIndexMap.set(V,H),D}),W.filter((V)=>V.prewriteTypes.includes(YA.MESH)).forEach((V)=>V.prewrite(X,YA.MESH)),J.meshes=Y.listMeshes().map((V,H)=>{let D=X.createPropertyDef(V),L=null;if(D.primitives=V.listPrimitives().map((z)=>{let M={attributes:{}};M.mode=z.getMode();let N=z.getMaterial();if(N)M.material=X.materialIndexMap.get(N);if(Object.keys(z.getExtras()).length)M.extras=z.getExtras();let q=z.getIndices();if(q)M.indices=X.accessorIndexMap.get(q);for(let w of z.listSemantics())M.attributes[w]=X.accessorIndexMap.get(z.getAttribute(w));for(let w of z.listTargets()){let P={};for(let _ of w.listSemantics())P[_]=X.accessorIndexMap.get(w.getAttribute(_));M.targets=M.targets||[],M.targets.push(P)}if(z.listTargets().length&&!L)L=z.listTargets().map((w)=>w.getName());return M}),V.getWeights().length)D.weights=V.getWeights();if(L)D.extras=D.extras||{},D.extras.targetNames=L;return X.meshIndexMap.set(V,H),D}),J.cameras=Y.listCameras().map((V,H)=>{let D=X.createPropertyDef(V);if(D.type=V.getType(),D.type===kW.Type.PERSPECTIVE){D.perspective={znear:V.getZNear(),zfar:V.getZFar(),yfov:V.getYFov()};let L=V.getAspectRatio();if(L!==null)D.perspective.aspectRatio=L}else D.orthographic={znear:V.getZNear(),zfar:V.getZFar(),xmag:V.getXMag(),ymag:V.getYMag()};return X.cameraIndexMap.set(V,H),D}),J.nodes=Y.listNodes().map((V,H)=>{let D=X.createPropertyDef(V);if(!kQ.eq(V.getTranslation(),[0,0,0]))D.translation=V.getTranslation();if(!kQ.eq(V.getRotation(),[0,0,0,1]))D.rotation=V.getRotation();if(!kQ.eq(V.getScale(),[1,1,1]))D.scale=V.getScale();if(V.getWeights().length)D.weights=V.getWeights();return X.nodeIndexMap.set(V,H),D}),J.skins=Y.listSkins().map((V,H)=>{let D=X.createPropertyDef(V),L=V.getInverseBindMatrices();if(L)D.inverseBindMatrices=X.accessorIndexMap.get(L);let z=V.getSkeleton();if(z)D.skeleton=X.nodeIndexMap.get(z);return D.joints=V.listJoints().map((M)=>X.nodeIndexMap.get(M)),X.skinIndexMap.set(V,H),D}),Y.listNodes().forEach((V,H)=>{let D=J.nodes[H],L=V.getMesh();if(L)D.mesh=X.meshIndexMap.get(L);let z=V.getCamera();if(z)D.camera=X.cameraIndexMap.get(z);let M=V.getSkin();if(M)D.skin=X.skinIndexMap.get(M);if(V.listChildren().length>0)D.children=V.listChildren().map((N)=>X.nodeIndexMap.get(N))}),J.animations=Y.listAnimations().map((V,H)=>{let D=X.createPropertyDef(V),L=new Map;return D.samplers=V.listSamplers().map((z,M)=>{let N=X.createPropertyDef(z);return N.input=X.accessorIndexMap.get(z.getInput()),N.output=X.accessorIndexMap.get(z.getOutput()),N.interpolation=z.getInterpolation(),L.set(z,M),N}),D.channels=V.listChannels().map((z)=>{let M=X.createPropertyDef(z);return M.sampler=L.get(z.getSampler()),M.target={node:X.nodeIndexMap.get(z.getTargetNode()),path:z.getTargetPath()},M}),X.animationIndexMap.set(V,H),D}),J.scenes=Y.listScenes().map((V,H)=>{let D=X.createPropertyDef(V);return D.nodes=V.listChildren().map((L)=>X.nodeIndexMap.get(L)),X.sceneIndexMap.set(V,H),D});let I=Y.getDefaultScene();if(I)J.scene=Y.listScenes().indexOf(I);return J.extensionsUsed=W.map((V)=>V.extensionName),J.extensionsRequired=Z.map((V)=>V.extensionName),W.forEach((V)=>V.write(X)),amQ(J),C}}function amQ(A){let Q=[];for(let B in A){let Y=A[B];if(Array.isArray(Y)&&Y.length===0)Q.push(B);else if(Y===null||Y==="")Q.push(B);else if(Y&&typeof Y==="object"&&Object.keys(Y).length===0)Q.push(B)}for(let B of Q)delete A[B]}var O2;(function(A){A[A.JSON=1313821514]="JSON",A[A.BIN=5130562]="BIN"})(O2||(O2={}));class JJA{constructor(){this._logger=R9.DEFAULT_INSTANCE,this._extensions=new Set,this._dependencies={},this._vertexLayout=w2.INTERLEAVED,this.lastReadBytes=0,this.lastWriteBytes=0}setLogger(A){return this._logger=A,this}registerExtensions(A){for(let Q of A)this._extensions.add(Q),Q.register();return this}registerDependencies(A){return Object.assign(this._dependencies,A),this}setVertexLayout(A){return this._vertexLayout=A,this}async read(A){return await this.readJSON(await this.readAsJSON(A))}async readAsJSON(A){let Q=await this.readURI(A,"view");this.lastReadBytes=Q.byteLength;let B=sYA(Q)?this._binaryToJSON(Q):{json:JSON.parse(jQ.decodeText(Q)),resources:{}};return await this._readResourcesExternal(B,this.dirname(A)),this._readResourcesInternal(B),B}async readJSON(A){return A=this._copyJSON(A),this._readResourcesInternal(A),BJA.read(A,{extensions:Array.from(this._extensions),dependencies:this._dependencies,logger:this._logger})}async binaryToJSON(A){let Q=this._binaryToJSON(jQ.assertView(A));this._readResourcesInternal(Q);let B=Q.json;if(B.buffers&&B.buffers.some((Y)=>omQ(Q,Y)))throw Error("Cannot resolve external buffers with binaryToJSON().");else if(B.images&&B.images.some((Y)=>tmQ(Q,Y)))throw Error("Cannot resolve external images with binaryToJSON().");return Q}async readBinary(A){return this.readJSON(await this.binaryToJSON(jQ.assertView(A)))}async writeJSON(A,Q={}){if(Q.format===s6.GLB&&A.getRoot().listBuffers().length>1)throw Error("GLB must have 0–1 buffers.");return YJA.write(A,{format:Q.format||s6.GLTF,basename:Q.basename||"",logger:this._logger,vertexLayout:this._vertexLayout,dependencies:lJ({},this._dependencies),extensions:Array.from(this._extensions)})}async writeBinary(A){let{json:Q,resources:B}=await this.writeJSON(A,{format:s6.GLB}),Y=new Uint32Array([1179937895,2,12]),J=JSON.stringify(Q),C=jQ.pad(jQ.encodeText(J),32),X=jQ.toView(new Uint32Array([C.byteLength,1313821514])),G=jQ.concat([X,C]);Y[Y.length-1]+=G.byteLength;let F=Object.values(B)[0];if(!F||!F.byteLength)return jQ.concat([jQ.toView(Y),G]);let W=jQ.pad(F,0),Z=jQ.toView(new Uint32Array([W.byteLength,5130562])),U=jQ.concat([Z,W]);return Y[Y.length-1]+=U.byteLength,jQ.concat([jQ.toView(Y),G,U])}async _readResourcesExternal(A,Q){var B=this;let Y=A.json.images||[],J=A.json.buffers||[],C=[...Y,...J].map(async function(X){let G=X.uri;if(!G||G.match(/data:/))return Promise.resolve();A.resources[G]=await B.readURI(B.resolve(Q,G),"view"),B.lastReadBytes+=A.resources[G].byteLength});await Promise.all(C)}_readResourcesInternal(A){function Q(J){if(!J.uri)return;if(J.uri in A.resources){jQ.assertView(A.resources[J.uri]);return}if(J.uri.match(/data:/)){let C=`__${AJA()}.${r6.extension(J.uri)}`;A.resources[C]=jQ.createBufferFromDataURI(J.uri),J.uri=C}}(A.json.images||[]).forEach((J)=>{if(J.bufferView===void 0&&J.uri===void 0)throw Error("Missing resource URI or buffer view.");Q(J)}),(A.json.buffers||[]).forEach(Q)}_copyJSON(A){let{images:Q,buffers:B}=A.json;if(A={json:lJ({},A.json),resources:lJ({},A.resources)},Q)A.json.images=Q.map((Y)=>lJ({},Y));if(B)A.json.buffers=B.map((Y)=>lJ({},Y));return A}_binaryToJSON(A){if(!sYA(A))throw Error("Invalid glTF 2.0 binary.");let Q=new Uint32Array(A.buffer,A.byteOffset+12,2);if(Q[1]!==O2.JSON)throw Error("Missing required GLB JSON chunk.");let B=20,Y=Q[0],J=jQ.decodeText(jQ.toView(A,B,Y)),C=JSON.parse(J),X=B+Y;if(A.byteLength<=X)return{json:C,resources:{}};let G=new Uint32Array(A.buffer,A.byteOffset+X,2);if(G[1]!==O2.BIN)return{json:C,resources:{}};let F=G[0],W=jQ.toView(A,X+8,F);return{json:C,resources:{[SW]:W}}}}function omQ(A,Q){return Q.uri!==void 0&&!(Q.uri in A.resources)}function tmQ(A,Q){return Q.uri!==void 0&&!(Q.uri in A.resources)&&Q.bufferView===void 0}function sYA(A){if(A.byteLength<3*Uint32Array.BYTES_PER_ELEMENT)return!1;let Q=new Uint32Array(A.buffer,A.byteOffset,3);return Q[0]===1179937895&&Q[1]===2}class x4 extends JJA{constructor(A=null,Q=t8.DEFAULT_INIT){super();this._fetch=void 0,this._fetchConfig=void 0,this._init=void 0,this._fetchEnabled=!1,this._fetch=A,this._fetchConfig=Q,this._init=this.init()}async init(){if(this._init)return this._init;return Promise.all([import("fs"),import("path")]).then(([A,Q])=>{this._fs=A.promises,this._path=Q})}setAllowNetwork(A){if(A&&!this._fetch)throw Error("NodeIO requires a Fetch API implementation for HTTP requests.");return this._fetchEnabled=A,this}async readURI(A,Q){if(await this.init(),t8.isAbsoluteURL(A)){if(!this._fetchEnabled||!this._fetch)throw Error("Network request blocked. Allow HTTP requests explicitly, if needed.");let B=await this._fetch(A,this._fetchConfig);switch(Q){case"view":return new Uint8Array(await B.arrayBuffer());case"text":return B.text()}}else switch(Q){case"view":return this._fs.readFile(A);case"text":return this._fs.readFile(A,"utf8")}}resolve(A,Q){if(t8.isAbsoluteURL(A)||t8.isAbsoluteURL(Q))return t8.resolve(A,Q);return this._path.resolve(A,decodeURIComponent(Q))}dirname(A){if(t8.isAbsoluteURL(A))return t8.dirname(A);return this._path.dirname(A)}async write(A,Q){await this.init(),await(!!A.match(/\.glb$/)?this._writeGLB(A,Q):this._writeGLTF(A,Q))}async _writeGLTF(A,Q){var B=this;this.lastWriteBytes=0;let{json:Y,resources:J}=await this.writeJSON(Q,{format:s6.GLTF,basename:r6.basename(A)}),{_fs:C,_path:X}=this,G=X.dirname(A),F=JSON.stringify(Y,null,2);await C.writeFile(A,F),this.lastWriteBytes+=F.length;for(let W of emQ(Object.keys(J),10))await Promise.all(W.map(async function(Z){if(t8.isAbsoluteURL(Z)){if(t8.extension(Z)==="bin")throw Error(`Cannot write buffer to path "${Z}".`);return}let U=X.join(G,decodeURIComponent(Z));await C.mkdir(X.dirname(U),{recursive:!0}),await C.writeFile(U,J[Z]),B.lastWriteBytes+=J[Z].byteLength}))}async _writeGLB(A,Q){let B=await this.writeBinary(Q);await this._fs.writeFile(A,B),this.lastWriteBytes=B.byteLength}}function emQ(A,Q){let B=[];for(let Y=0,J=A.length;Y{if(!Y.extensions||!Y.extensions[o6])return;let C=Y.extensions[o6],X=this.createInstancedMesh();for(let G in C.attributes)X.setAttribute(G,A.accessors[C.attributes[G]]);A.nodes[J].setExtension(o6,X)}),this}prewrite(A){A.accessorUsageGroupedByParent.add(sy);for(let Q of this.properties)for(let B of Q.listAttributes())A.addAccessorToUsageGroup(B,sy);return this}write(A){let Q=A.jsonDoc;return this.document.getRoot().listNodes().forEach((B)=>{let Y=B.getExtension(o6);if(Y){let J=A.nodeIndexMap.get(B),C=Q.json.nodes[J],X={attributes:{}};Y.listSemantics().forEach((G)=>{let F=Y.getAttribute(G);X.attributes[G]=A.accessorIndexMap.get(F)}),C.extensions=C.extensions||{},C.extensions[o6]=X}}),this}}y2.EXTENSION_NAME=o6;function $X(){return $X=Object.assign?Object.assign.bind():function(A){for(var Q=1;Q8?8:4,X.componentType=C>8?FJA:BuQ,X.normalized=!0,G=A.getElementSize()===3?GuQ(G):G,X.array=Q.encodeFilterOct(G,A.getCount(),X.byteStride,C);break;case b0.QUATERNION:X.byteStride=8,X.componentType=FJA,X.normalized=!0,X.array=Q.encodeFilterQuat(G,A.getCount(),X.byteStride,C);break;default:throw Error("Invalid filter.")}if(X.min=A.getMin([]),X.max=A.getMax([]),A.getNormalized())X.min=X.min.map((F)=>ry(F,A.getComponentType())),X.max=X.max.map((F)=>ry(F,A.getComponentType()));if(X.normalized)X.min=X.min.map((F)=>WJA(F,X.componentType)),X.max=X.max.map((F)=>WJA(F,X.componentType))}else if(X.byteStride%4)X.array=XuQ(X.array,A.getElementSize()),X.byteStride=X.array.byteLength/A.getCount();return X}function CuQ(A){let Q=A.getComponentType(),B=A.getArray(),Y=new Float32Array(B.length);for(let J=0;J{return Y instanceof D0&&Y.getMode()===D0.Mode.TRIANGLES})?b4.TRIANGLES:b4.INDICES;return b4.ATTRIBUTES}function WuQ(A,Q){let B=Q.getGraph().listParentEdges(A).filter((Y)=>!(Y.getParent()instanceof g4));for(let Y of B){let J=Y.getName(),C=Y.getAttributes().key||"",X=Y.getParent().propertyType===YA.PRIMITIVE_TARGET;if(J==="indices")return{filter:b0.NONE};if(J==="attributes"){if(C==="POSITION")return{filter:b0.NONE};if(C==="TEXCOORD_0")return{filter:b0.NONE};if(C.startsWith("JOINTS_"))return{filter:b0.NONE};if(C.startsWith("WEIGHTS_"))return{filter:b0.NONE};if(C==="NORMAL"||C==="TANGENT")return X?{filter:b0.NONE}:{filter:b0.OCTAHEDRAL,bits:8}}if(J==="output"){let G=qJA(A);if(G==="rotation")return{filter:b0.QUATERNION,bits:16};if(G==="translation")return{filter:b0.EXPONENTIAL,bits:12};if(G==="scale")return{filter:b0.EXPONENTIAL,bits:12};return{filter:b0.NONE}}if(J==="input")return{filter:b0.NONE};if(J==="inverseBindMatrices")return{filter:b0.NONE}}return{filter:b0.NONE}}function qJA(A){for(let Q of A.listParents()){if(!(Q instanceof oG))continue;for(let B of Q.listParents()){if(!(B instanceof a6))continue;return B.getTargetPath()}}return null}var ZJA={method:hI.QUANTIZE};class xI extends oB{constructor(...A){super(...A);this.extensionName=AJ,this.prereadTypes=[YA.BUFFER,YA.PRIMITIVE],this.prewriteTypes=[YA.BUFFER,YA.ACCESSOR],this.readDependencies=["meshopt.decoder"],this.writeDependencies=["meshopt.encoder"],this._decoder=null,this._decoderFallbackBufferMap=new Map,this._encoder=null,this._encoderOptions=ZJA,this._encoderFallbackBuffer=null,this._encoderBufferViews={},this._encoderBufferViewData={},this._encoderBufferViewAccessors={}}install(A,Q){if(A==="meshopt.decoder")this._decoder=Q;if(A==="meshopt.encoder")this._encoder=Q;return this}setEncoderOptions(A){return this._encoderOptions=$X({},ZJA,A),this}preread(A,Q){if(!this._decoder){if(!this.isRequired())return this;throw Error(`[${AJ}] Please install extension dependency, "meshopt.decoder".`)}if(!this._decoder.supported){if(!this.isRequired())return this;throw Error(`[${AJ}]: Missing WASM support.`)}if(Q===YA.BUFFER)this._prereadBuffers(A);else if(Q===YA.PRIMITIVE)this._prereadPrimitives(A);return this}_prereadBuffers(A){let Q=A.jsonDoc;(Q.json.bufferViews||[]).forEach((Y,J)=>{if(!Y.extensions||!Y.extensions[AJ])return;let C=Y.extensions[AJ],X=C.byteOffset||0,G=C.byteLength||0,F=C.count,W=C.byteStride,Z=new Uint8Array(F*W),U=Q.json.buffers[C.buffer],$=U.uri?Q.resources[U.uri]:Q.resources[SW],E=jQ.toView($,X,G);this._decoder.decodeGltfBuffer(Z,F,W,E,C.mode,C.filter),A.bufferViews[J]=Z})}_prereadPrimitives(A){let Q=A.jsonDoc;(Q.json.bufferViews||[]).forEach((Y)=>{if(!Y.extensions||!Y.extensions[AJ])return;let J=Y.extensions[AJ],C=A.buffers[J.buffer],X=A.buffers[Y.buffer],G=Q.json.buffers[Y.buffer];if(QuQ(G))this._decoderFallbackBufferMap.set(X,C)})}read(A){if(!this.isRequired())return this;for(let[Q,B]of this._decoderFallbackBufferMap){for(let Y of Q.listParents())if(Y instanceof fA)Y.swap(Q,B);Q.dispose()}return this}prewrite(A,Q){if(Q===YA.ACCESSOR)this._prewriteAccessors(A);else if(Q===YA.BUFFER)this._prewriteBuffers(A);return this}_prewriteAccessors(A){let Q=A.jsonDoc.json,B=this._encoder,Y=this._encoderOptions,J=this.document.getGraph(),C=this.document.createBuffer(),X=this.document.getRoot().listBuffers().indexOf(C),G=1,F=new Map,W=(Z)=>{for(let U of J.listParents(Z)){if(U.propertyType===YA.ROOT)continue;let $=F.get(Z);if($===void 0)F.set(Z,$=G++);return $}return-1};this._encoderFallbackBuffer=C,this._encoderBufferViews={},this._encoderBufferViewData={},this._encoderBufferViewAccessors={};for(let Z of this.document.getRoot().listAccessors()){if(qJA(Z)==="weights")continue;if(Z.getSparse())continue;let U=A.getAccessorUsage(Z),$=A.accessorUsageGroupedByParent.has(U)?W(Z):null,E=FuQ(Z,U),K=Y.method===hI.FILTER?WuQ(Z,this.document):{filter:b0.NONE},I=JuQ(Z,B,E,K),{array:V,byteStride:H}=I,D=Z.getBuffer();if(!D)throw Error(`${AJ}: Missing buffer for accessor.`);let L=this.document.getRoot().listBuffers().indexOf(D),z=[U,$,E,K.filter,H,L].join(":"),M=this._encoderBufferViews[z],N=this._encoderBufferViewData[z],q=this._encoderBufferViewAccessors[z];if(!M||!N)q=this._encoderBufferViewAccessors[z]=[],N=this._encoderBufferViewData[z]=[],M=this._encoderBufferViews[z]={buffer:X,target:e8.USAGE_TO_TARGET[U],byteOffset:0,byteLength:0,byteStride:U===e8.BufferViewUsage.ARRAY_BUFFER?H:void 0,extensions:{[AJ]:{buffer:L,byteOffset:0,byteLength:0,mode:E,filter:K.filter!==b0.NONE?K.filter:void 0,byteStride:H,count:0}}};let w=A.createAccessorDef(Z);if(w.componentType=I.componentType,w.normalized=I.normalized,w.byteOffset=M.byteLength,w.min&&I.min)w.min=I.min;if(w.max&&I.max)w.max=I.max;A.accessorIndexMap.set(Z,Q.accessors.length),Q.accessors.push(w),q.push(w),N.push(new Uint8Array(V.buffer,V.byteOffset,V.byteLength)),M.byteLength+=V.byteLength,M.extensions.EXT_meshopt_compression.count+=Z.getCount()}}_prewriteBuffers(A){let Q=this._encoder;for(let B in this._encoderBufferViews){let Y=this._encoderBufferViews[B],J=this._encoderBufferViewData[B],C=this.document.getRoot().listBuffers()[Y.extensions[AJ].buffer],X=A.otherBufferViews.get(C)||[],{count:G,byteStride:F,mode:W}=Y.extensions[AJ],Z=jQ.concat(J),U=Q.encodeGltfBuffer(Z,G,F,W),$=jQ.pad(U);Y.extensions[AJ].byteLength=U.byteLength,J.length=0,J.push($),X.push($),A.otherBufferViews.set(C,X)}}write(A){let Q=0;for(let C in this._encoderBufferViews){let X=this._encoderBufferViews[C],G=this._encoderBufferViewData[C][0],F=A.otherBufferViewsIndexMap.get(G),W=this._encoderBufferViewAccessors[C];for(let E of W)E.bufferView=F;let Z=A.jsonDoc.json.bufferViews[F],U=Z.byteOffset||0;Object.assign(Z,X),Z.byteOffset=Q;let $=Z.extensions[AJ];$.byteOffset=U,Q+=jQ.padNumber(X.byteLength)}let B=this._encoderFallbackBuffer,Y=A.bufferIndexMap.get(B),J=A.jsonDoc.json.buffers[Y];return J.byteLength=Q,J.extensions={[AJ]:{fallback:!0}},B.dispose(),this}}xI.EXTENSION_NAME=AJ;xI.EncoderMethod=hI;class MJA{match(A){return A.length>=12&&jQ.decodeText(A.slice(4,12))==="ftypavif"}getSize(A){if(!this.match(A))return null;let Q=new DataView(A.buffer,A.byteOffset,A.byteLength),B=$JA(Q,0);if(!B)return null;let Y=B.end;while(B=$JA(Q,Y))if(B.type==="meta")Y=B.start+4;else if(B.type==="iprp"||B.type==="ipco")Y=B.start;else if(B.type==="ispe")return[Q.getUint32(B.start+4),Q.getUint32(B.start+8)];else if(B.type==="mdat")break;else Y=B.end;return null}getChannels(A){return 4}}class h2 extends oB{constructor(...A){super(...A);this.extensionName=vI,this.prereadTypes=[YA.TEXTURE]}static register(){B8.registerFormat("image/avif",new MJA)}preread(A){return(A.jsonDoc.json.textures||[]).forEach((B)=>{if(B.extensions&&B.extensions[vI])B.source=B.extensions[vI].source}),this}read(A){return this}write(A){let Q=A.jsonDoc;return this.document.getRoot().listTextures().forEach((B)=>{if(B.getMimeType()==="image/avif"){let Y=A.imageIndexMap.get(B);(Q.json.textures||[]).forEach((C)=>{if(C.source===Y)C.extensions=C.extensions||{},C.extensions[vI]={source:C.source},delete C.source})}}),this}}h2.EXTENSION_NAME=vI;function $JA(A,Q){if(A.byteLength<4+Q)return null;let B=A.getUint32(Q);if(A.byteLength=12&&A[8]===87&&A[9]===69&&A[10]===66&&A[11]===80}getSize(A){let Q=jQ.decodeText(A.slice(0,4)),B=jQ.decodeText(A.slice(8,12));if(Q!=="RIFF"||B!=="WEBP")return null;let Y=new DataView(A.buffer,A.byteOffset),J=12;while(J>6);return[U,$]}J+=8+X+X%2}return null}getChannels(A){return 4}}class g2 extends oB{constructor(...A){super(...A);this.extensionName=_I,this.prereadTypes=[YA.TEXTURE]}static register(){B8.registerFormat("image/webp",new zJA)}preread(A){return(A.jsonDoc.json.textures||[]).forEach((B)=>{if(B.extensions&&B.extensions[_I])B.source=B.extensions[_I].source}),this}read(A){return this}write(A){let Q=A.jsonDoc;return this.document.getRoot().listTextures().forEach((B)=>{if(B.getMimeType()==="image/webp"){let Y=A.imageIndexMap.get(B);(Q.json.textures||[]).forEach((C)=>{if(C.source===Y)C.extensions=C.extensions||{},C.extensions[_I]={source:C.source},delete C.source})}}),this}}g2.EXTENSION_NAME=_I;var wY,RJA,wJA;function ZuQ(A,Q){let B=new wY.DecoderBuffer;try{if(B.Init(Q,Q.length),A.GetEncodedGeometryType(B)!==wY.TRIANGULAR_MESH)throw Error(`[${O0}] Unknown geometry type.`);let J=new wY.Mesh;if(!A.DecodeBufferToMesh(B,J).ok()||J.ptr===0)throw Error(`[${O0}] Decoding failure.`);return J}finally{wY.destroy(B)}}function $uQ(A,Q){let Y=Q.num_faces()*3,J,C;if(Q.num_points()<=65534){let X=Y*Uint16Array.BYTES_PER_ELEMENT;J=wY._malloc(X),A.GetTrianglesUInt16Array(Q,X,J),C=new Uint16Array(wY.HEAPU16.buffer,J,Y).slice()}else{let X=Y*Uint32Array.BYTES_PER_ELEMENT;J=wY._malloc(X),A.GetTrianglesUInt32Array(Q,X,J),C=new Uint32Array(wY.HEAPU32.buffer,J,Y).slice()}return wY._free(J),C}function UuQ(A,Q,B,Y){let J=wJA[Y.componentType],C=RJA[Y.componentType],X=B.num_components(),F=Q.num_points()*X,W=F*C.BYTES_PER_ELEMENT,Z=wY._malloc(W);A.GetAttributeDataArrayForAllPoints(Q,B,J,W,Z);let U=new C(wY.HEAPF32.buffer,Z,F).slice();return wY._free(Z),U}function EuQ(A){wY=A,RJA={[fA.ComponentType.FLOAT]:Float32Array,[fA.ComponentType.UNSIGNED_INT]:Uint32Array,[fA.ComponentType.UNSIGNED_SHORT]:Uint16Array,[fA.ComponentType.UNSIGNED_BYTE]:Uint8Array,[fA.ComponentType.SHORT]:Int16Array,[fA.ComponentType.BYTE]:Int8Array},wJA={[fA.ComponentType.FLOAT]:wY.DT_FLOAT32,[fA.ComponentType.UNSIGNED_INT]:wY.DT_UINT32,[fA.ComponentType.UNSIGNED_SHORT]:wY.DT_UINT16,[fA.ComponentType.UNSIGNED_BYTE]:wY.DT_UINT8,[fA.ComponentType.SHORT]:wY.DT_INT16,[fA.ComponentType.BYTE]:wY.DT_INT8}}var A5,gI;(function(A){A[A.EDGEBREAKER=1]="EDGEBREAKER",A[A.SEQUENTIAL=0]="SEQUENTIAL"})(gI||(gI={}));var Y5;(function(A){A.POSITION="POSITION",A.NORMAL="NORMAL",A.COLOR="COLOR",A.TEX_COORD="TEX_COORD",A.GENERIC="GENERIC"})(Y5||(Y5={}));var jJA={[Y5.POSITION]:14,[Y5.NORMAL]:10,[Y5.COLOR]:8,[Y5.TEX_COORD]:12,[Y5.GENERIC]:12},UJA={decodeSpeed:5,encodeSpeed:5,method:gI.EDGEBREAKER,quantizationBits:jJA,quantizationVolume:"mesh"};function KuQ(A){A5=A}function VuQ(A,Q=UJA){let B=$X({},UJA,Q);B.quantizationBits=$X({},jJA,Q.quantizationBits);let Y=new A5.MeshBuilder,J=new A5.Mesh,C=new A5.ExpertEncoder(J),X={},G=new A5.DracoInt8Array,F=A.listTargets().length>0,W=!1;for(let I of A.listSemantics()){let V=A.getAttribute(I);if(V.getSparse()){W=!0;continue}let H=IuQ(I),D=HuQ(Y,V.getComponentType(),J,A5[H],V.getCount(),V.getElementSize(),V.getArray());if(D===-1)throw Error(`Error compressing "${I}" attribute.`);if(X[I]=D,B.quantizationVolume==="mesh"||I!=="POSITION")C.SetAttributeQuantization(D,B.quantizationBits[H]);else if(typeof B.quantizationVolume==="object"){let{quantizationVolume:L}=B,z=Math.max(L.max[0]-L.min[0],L.max[1]-L.min[1],L.max[2]-L.min[2]);C.SetAttributeExplicitQuantization(D,B.quantizationBits[H],V.getElementSize(),L.min,z)}else throw Error("Invalid quantization volume state.")}let Z=A.getIndices();if(!Z)throw new _2("Primitive must have indices.");if(Y.AddFacesToMesh(J,Z.getCount()/3,Z.getArray()),C.SetSpeedOptions(B.encodeSpeed,B.decodeSpeed),C.SetTrackEncodedProperties(!0),B.method===gI.SEQUENTIAL||F||W)C.SetEncodingMethod(A5.MESH_SEQUENTIAL_ENCODING);else C.SetEncodingMethod(A5.MESH_EDGEBREAKER_ENCODING);let U=C.EncodeToDracoBuffer(!(F||W),G);if(U<=0)throw new _2("Error applying Draco compression.");let $=new Uint8Array(U);for(let I=0;I65534&&fA.getComponentSize(U.componentType)<=2)U.componentType=fA.ComponentType.UNSIGNED_INT;else if(Z.numVertices>254&&fA.getComponentSize(U.componentType)<=1)U.componentType=fA.ComponentType.UNSIGNED_SHORT;for(let E of X.listSemantics()){let K=X.getAttribute(E);if(Z.attributeIDs[E]===void 0)continue;let I=A.createAccessorDef(K);I.count=Z.numVertices,A.accessorIndexMap.set(K,W.length),W.push(I)}let $=X.getAttribute("POSITION").getBuffer()||this.document.getRoot().listBuffers()[0];if(!A.otherBufferViews.has($))A.otherBufferViews.set($,[]);A.otherBufferViews.get($).push(Z.data)}return B.debug(`[${O0}] Compressed ${Y.size} primitives.`),A.extensionData[O0]={primitiveHashMap:Y,primitiveEncodingMap:J},this}write(A){let Q=A.extensionData[O0];for(let B of this.document.getRoot().listMeshes()){let Y=A.jsonDoc.json.meshes[A.meshIndexMap.get(B)];for(let J=0;JY!==O0),B.extensionsRequired=(B.extensionsRequired||[]).filter((Y)=>Y!==O0)}return this}}fI.EXTENSION_NAME=O0;fI.EncoderMethod=gI;function DuQ(A){let Q=A.getLogger(),B=new Set,Y=new Set,J=0,C=0;for(let U of A.getRoot().listMeshes())for(let $ of U.listPrimitives())if(!$.getIndices())Y.add($),J++;else if($.getMode()!==D0.Mode.TRIANGLES)Y.add($),C++;else B.add($);if(J>0)Q.warn(`[${O0}] Skipping Draco compression of ${J} non-indexed primitives.`);if(C>0)Q.warn(`[${O0}] Skipping Draco compression of ${C} non-TRIANGLES primitives.`);let X=A.getRoot().listAccessors(),G=new Map;for(let U=0;UE.propertyType));if($.size!==2||!$.has(YA.PRIMITIVE)||!$.has(YA.ROOT))throw Error(`[${O0}] Compressed accessors must only be used as indices or vertex attributes.`)}for(let U of Array.from(B)){let $=Z.get(U),E=U.getIndices();if(F.get(E)!==$||U.listAttributes().some((K)=>F.get(K)!==$))throw Error(`[${O0}] Draco primitives must share all, or no, accessors.`)}for(let U of Array.from(Y)){let $=U.getIndices();if(F.has($)||U.listAttributes().some((E)=>F.has(E)))throw Error(`[${O0}] Accessor cannot be shared by compressed and uncompressed primitives.`)}return Z}function EJA(A,Q){let B=[],Y=A.getIndices();B.push(Q.get(Y));for(let J of A.listAttributes())B.push(Q.get(J));return B.sort().join("|")}class m4 extends aB{init(){this.extensionName=Q5,this.propertyType="Light",this.parentTypes=[YA.NODE]}getDefaults(){return Object.assign(super.getDefaults(),{color:[1,1,1],intensity:1,type:m4.Type.POINT,range:null,innerConeAngle:0,outerConeAngle:Math.PI/4})}getColor(){return this.get("color")}setColor(A){return this.set("color",A)}getIntensity(){return this.get("intensity")}setIntensity(A){return this.set("intensity",A)}getType(){return this.get("type")}setType(A){return this.set("type",A)}getRange(){return this.get("range")}setRange(A){return this.set("range",A)}getInnerConeAngle(){return this.get("innerConeAngle")}setInnerConeAngle(A){return this.set("innerConeAngle",A)}getOuterConeAngle(){return this.get("outerConeAngle")}setOuterConeAngle(A){return this.set("outerConeAngle",A)}}m4.EXTENSION_NAME=Q5;m4.Type={POINT:"point",SPOT:"spot",DIRECTIONAL:"directional"};class oy extends oB{constructor(...A){super(...A);this.extensionName=Q5}createLight(A=""){return new m4(this.document.getGraph(),A)}read(A){let Q=A.jsonDoc;if(!Q.json.extensions||!Q.json.extensions[Q5])return this;let J=(Q.json.extensions[Q5].lights||[]).map((C)=>{var X,G;let F=this.createLight().setName(C.name||"").setType(C.type);if(C.color!==void 0)F.setColor(C.color);if(C.intensity!==void 0)F.setIntensity(C.intensity);if(C.range!==void 0)F.setRange(C.range);if(((X=C.spot)==null?void 0:X.innerConeAngle)!==void 0)F.setInnerConeAngle(C.spot.innerConeAngle);if(((G=C.spot)==null?void 0:G.outerConeAngle)!==void 0)F.setOuterConeAngle(C.spot.outerConeAngle);return F});return Q.json.nodes.forEach((C,X)=>{if(!C.extensions||!C.extensions[Q5])return;let G=C.extensions[Q5];A.nodes[X].setExtension(Q5,J[G.light])}),this}write(A){let Q=A.jsonDoc;if(this.properties.size===0)return this;let B=[],Y=new Map;for(let J of this.properties){let C=J,X={type:C.getType()};if(!kQ.eq(C.getColor(),[1,1,1]))X.color=C.getColor();if(C.getIntensity()!==1)X.intensity=C.getIntensity();if(C.getRange()!=null)X.range=C.getRange();if(C.getName())X.name=C.getName();if(C.getType()===m4.Type.SPOT)X.spot={innerConeAngle:C.getInnerConeAngle(),outerConeAngle:C.getOuterConeAngle()};B.push(X),Y.set(C,B.length-1)}return this.document.getRoot().listNodes().forEach((J)=>{let C=J.getExtension(Q5);if(C){let X=A.nodeIndexMap.get(J),G=Q.json.nodes[X];G.extensions=G.extensions||{},G.extensions[Q5]={light:Y.get(C)}}}),Q.json.extensions=Q.json.extensions||{},Q.json.extensions[Q5]={lights:B},this}}oy.EXTENSION_NAME=Q5;var{R:NuQ,G:LuQ,B:quQ}=w9;class ty extends aB{init(){this.extensionName=t6,this.propertyType="Anisotropy",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{anisotropyStrength:0,anisotropyRotation:0,anisotropyTexture:null,anisotropyTextureInfo:new hB(this.graph,"anisotropyTextureInfo")})}getAnisotropyStrength(){return this.get("anisotropyStrength")}setAnisotropyStrength(A){return this.set("anisotropyStrength",A)}getAnisotropyRotation(){return this.get("anisotropyRotation")}setAnisotropyRotation(A){return this.set("anisotropyRotation",A)}getAnisotropyTexture(){return this.getRef("anisotropyTexture")}getAnisotropyTextureInfo(){return this.getRef("anisotropyTexture")?this.getRef("anisotropyTextureInfo"):null}setAnisotropyTexture(A){return this.setRef("anisotropyTexture",A,{channels:NuQ|LuQ|quQ})}}ty.EXTENSION_NAME=t6;class ey extends oB{constructor(...A){super(...A);this.extensionName=t6,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createAnisotropy(){return new ty(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[t6]){let X=this.createAnisotropy();A.materials[C].setExtension(t6,X);let G=J.extensions[t6];if(G.anisotropyStrength!==void 0)X.setAnisotropyStrength(G.anisotropyStrength);if(G.anisotropyRotation!==void 0)X.setAnisotropyRotation(G.anisotropyRotation);if(G.anisotropyTexture!==void 0){let F=G.anisotropyTexture,W=A.textures[Y[F.index].source];X.setAnisotropyTexture(W),A.setTextureInfo(X.getAnisotropyTextureInfo(),F)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(t6);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[t6]={};if(Y.getAnisotropyStrength()>0)X.anisotropyStrength=Y.getAnisotropyStrength();if(Y.getAnisotropyRotation()!==0)X.anisotropyRotation=Y.getAnisotropyRotation();if(Y.getAnisotropyTexture()){let G=Y.getAnisotropyTexture(),F=Y.getAnisotropyTextureInfo();X.anisotropyTexture=A.createTextureInfoDef(G,F)}}}),this}}ey.EXTENSION_NAME=t6;var{R:KJA,G:VJA,B:MuQ}=w9;class Ah extends aB{init(){this.extensionName=e6,this.propertyType="Clearcoat",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{clearcoatFactor:0,clearcoatTexture:null,clearcoatTextureInfo:new hB(this.graph,"clearcoatTextureInfo"),clearcoatRoughnessFactor:0,clearcoatRoughnessTexture:null,clearcoatRoughnessTextureInfo:new hB(this.graph,"clearcoatRoughnessTextureInfo"),clearcoatNormalScale:1,clearcoatNormalTexture:null,clearcoatNormalTextureInfo:new hB(this.graph,"clearcoatNormalTextureInfo")})}getClearcoatFactor(){return this.get("clearcoatFactor")}setClearcoatFactor(A){return this.set("clearcoatFactor",A)}getClearcoatTexture(){return this.getRef("clearcoatTexture")}getClearcoatTextureInfo(){return this.getRef("clearcoatTexture")?this.getRef("clearcoatTextureInfo"):null}setClearcoatTexture(A){return this.setRef("clearcoatTexture",A,{channels:KJA})}getClearcoatRoughnessFactor(){return this.get("clearcoatRoughnessFactor")}setClearcoatRoughnessFactor(A){return this.set("clearcoatRoughnessFactor",A)}getClearcoatRoughnessTexture(){return this.getRef("clearcoatRoughnessTexture")}getClearcoatRoughnessTextureInfo(){return this.getRef("clearcoatRoughnessTexture")?this.getRef("clearcoatRoughnessTextureInfo"):null}setClearcoatRoughnessTexture(A){return this.setRef("clearcoatRoughnessTexture",A,{channels:VJA})}getClearcoatNormalScale(){return this.get("clearcoatNormalScale")}setClearcoatNormalScale(A){return this.set("clearcoatNormalScale",A)}getClearcoatNormalTexture(){return this.getRef("clearcoatNormalTexture")}getClearcoatNormalTextureInfo(){return this.getRef("clearcoatNormalTexture")?this.getRef("clearcoatNormalTextureInfo"):null}setClearcoatNormalTexture(A){return this.setRef("clearcoatNormalTexture",A,{channels:KJA|VJA|MuQ})}}Ah.EXTENSION_NAME=e6;class Qh extends oB{constructor(...A){super(...A);this.extensionName=e6,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createClearcoat(){return new Ah(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[e6]){let X=this.createClearcoat();A.materials[C].setExtension(e6,X);let G=J.extensions[e6];if(G.clearcoatFactor!==void 0)X.setClearcoatFactor(G.clearcoatFactor);if(G.clearcoatRoughnessFactor!==void 0)X.setClearcoatRoughnessFactor(G.clearcoatRoughnessFactor);if(G.clearcoatTexture!==void 0){let F=G.clearcoatTexture,W=A.textures[Y[F.index].source];X.setClearcoatTexture(W),A.setTextureInfo(X.getClearcoatTextureInfo(),F)}if(G.clearcoatRoughnessTexture!==void 0){let F=G.clearcoatRoughnessTexture,W=A.textures[Y[F.index].source];X.setClearcoatRoughnessTexture(W),A.setTextureInfo(X.getClearcoatRoughnessTextureInfo(),F)}if(G.clearcoatNormalTexture!==void 0){let F=G.clearcoatNormalTexture,W=A.textures[Y[F.index].source];if(X.setClearcoatNormalTexture(W),A.setTextureInfo(X.getClearcoatNormalTextureInfo(),F),F.scale!==void 0)X.setClearcoatNormalScale(F.scale)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(e6);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[e6]={clearcoatFactor:Y.getClearcoatFactor(),clearcoatRoughnessFactor:Y.getClearcoatRoughnessFactor()};if(Y.getClearcoatTexture()){let G=Y.getClearcoatTexture(),F=Y.getClearcoatTextureInfo();X.clearcoatTexture=A.createTextureInfoDef(G,F)}if(Y.getClearcoatRoughnessTexture()){let G=Y.getClearcoatRoughnessTexture(),F=Y.getClearcoatRoughnessTextureInfo();X.clearcoatRoughnessTexture=A.createTextureInfoDef(G,F)}if(Y.getClearcoatNormalTexture()){let G=Y.getClearcoatNormalTexture(),F=Y.getClearcoatNormalTextureInfo();if(X.clearcoatNormalTexture=A.createTextureInfoDef(G,F),Y.getClearcoatNormalScale()!==1)X.clearcoatNormalTexture.scale=Y.getClearcoatNormalScale()}}}),this}}Qh.EXTENSION_NAME=e6;var{R:zuQ,G:RuQ,B:wuQ,A:juQ}=w9;class Bh extends aB{init(){this.extensionName=AX,this.propertyType="DiffuseTransmission",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{diffuseTransmissionFactor:0,diffuseTransmissionTexture:null,diffuseTransmissionTextureInfo:new hB(this.graph,"diffuseTransmissionTextureInfo"),diffuseTransmissionColorFactor:[1,1,1],diffuseTransmissionColorTexture:null,diffuseTransmissionColorTextureInfo:new hB(this.graph,"diffuseTransmissionColorTextureInfo")})}getDiffuseTransmissionFactor(){return this.get("diffuseTransmissionFactor")}setDiffuseTransmissionFactor(A){return this.set("diffuseTransmissionFactor",A)}getDiffuseTransmissionTexture(){return this.getRef("diffuseTransmissionTexture")}getDiffuseTransmissionTextureInfo(){return this.getRef("diffuseTransmissionTexture")?this.getRef("diffuseTransmissionTextureInfo"):null}setDiffuseTransmissionTexture(A){return this.setRef("diffuseTransmissionTexture",A,{channels:juQ})}getDiffuseTransmissionColorFactor(){return this.get("diffuseTransmissionColorFactor")}setDiffuseTransmissionColorFactor(A){return this.set("diffuseTransmissionColorFactor",A)}getDiffuseTransmissionColorTexture(){return this.getRef("diffuseTransmissionColorTexture")}getDiffuseTransmissionColorTextureInfo(){return this.getRef("diffuseTransmissionColorTexture")?this.getRef("diffuseTransmissionColorTextureInfo"):null}setDiffuseTransmissionColorTexture(A){return this.setRef("diffuseTransmissionColorTexture",A,{channels:zuQ|RuQ|wuQ})}}Bh.EXTENSION_NAME=AX;class Yh extends oB{constructor(...A){super(...A);this.extensionName=AX}createDiffuseTransmission(){return new Bh(this.document.getGraph())}read(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[AX]){let X=this.createDiffuseTransmission();A.materials[C].setExtension(AX,X);let G=J.extensions[AX];if(G.diffuseTransmissionFactor!==void 0)X.setDiffuseTransmissionFactor(G.diffuseTransmissionFactor);if(G.diffuseTransmissionColorFactor!==void 0)X.setDiffuseTransmissionColorFactor(G.diffuseTransmissionColorFactor);if(G.diffuseTransmissionTexture!==void 0){let F=G.diffuseTransmissionTexture,W=A.textures[Y[F.index].source];X.setDiffuseTransmissionTexture(W),A.setTextureInfo(X.getDiffuseTransmissionTextureInfo(),F)}if(G.diffuseTransmissionColorTexture!==void 0){let F=G.diffuseTransmissionColorTexture,W=A.textures[Y[F.index].source];X.setDiffuseTransmissionColorTexture(W),A.setTextureInfo(X.getDiffuseTransmissionColorTextureInfo(),F)}}}),this}write(A){let Q=A.jsonDoc;for(let B of this.document.getRoot().listMaterials()){let Y=B.getExtension(AX);if(!Y)continue;let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[AX]={diffuseTransmissionFactor:Y.getDiffuseTransmissionFactor(),diffuseTransmissionColorFactor:Y.getDiffuseTransmissionColorFactor()};if(Y.getDiffuseTransmissionTexture()){let G=Y.getDiffuseTransmissionTexture(),F=Y.getDiffuseTransmissionTextureInfo();X.diffuseTransmissionTexture=A.createTextureInfoDef(G,F)}if(Y.getDiffuseTransmissionColorTexture()){let G=Y.getDiffuseTransmissionColorTexture(),F=Y.getDiffuseTransmissionColorTextureInfo();X.diffuseTransmissionColorTexture=A.createTextureInfoDef(G,F)}}return this}}Yh.EXTENSION_NAME=AX;class Jh extends aB{init(){this.extensionName=QX,this.propertyType="Dispersion",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{dispersion:0})}getDispersion(){return this.get("dispersion")}setDispersion(A){return this.set("dispersion",A)}}Jh.EXTENSION_NAME=QX;class Ch extends oB{constructor(...A){super(...A);this.extensionName=QX,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createDispersion(){return new Jh(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){return(A.jsonDoc.json.materials||[]).forEach((Y,J)=>{if(Y.extensions&&Y.extensions[QX]){let C=this.createDispersion();A.materials[J].setExtension(QX,C);let X=Y.extensions[QX];if(X.dispersion!==void 0)C.setDispersion(X.dispersion)}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(QX);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{},C.extensions[QX]={dispersion:Y.getDispersion()}}}),this}}Ch.EXTENSION_NAME=QX;class Xh extends aB{init(){this.extensionName=BX,this.propertyType="EmissiveStrength",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{emissiveStrength:1})}getEmissiveStrength(){return this.get("emissiveStrength")}setEmissiveStrength(A){return this.set("emissiveStrength",A)}}Xh.EXTENSION_NAME=BX;class bI extends oB{constructor(...A){super(...A);this.extensionName=BX,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createEmissiveStrength(){return new Xh(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){return(A.jsonDoc.json.materials||[]).forEach((Y,J)=>{if(Y.extensions&&Y.extensions[BX]){let C=this.createEmissiveStrength();A.materials[J].setExtension(BX,C);let X=Y.extensions[BX];if(X.emissiveStrength!==void 0)C.setEmissiveStrength(X.emissiveStrength)}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(BX);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{},C.extensions[BX]={emissiveStrength:Y.getEmissiveStrength()}}}),this}}bI.EXTENSION_NAME=BX;class Gh extends aB{init(){this.extensionName=YX,this.propertyType="IOR",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{ior:1.5})}getIOR(){return this.get("ior")}setIOR(A){return this.set("ior",A)}}Gh.EXTENSION_NAME=YX;class x2 extends oB{constructor(...A){super(...A);this.extensionName=YX,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createIOR(){return new Gh(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){return(A.jsonDoc.json.materials||[]).forEach((Y,J)=>{if(Y.extensions&&Y.extensions[YX]){let C=this.createIOR();A.materials[J].setExtension(YX,C);let X=Y.extensions[YX];if(X.ior!==void 0)C.setIOR(X.ior)}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(YX);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{},C.extensions[YX]={ior:Y.getIOR()}}}),this}}x2.EXTENSION_NAME=YX;var{R:OuQ,G:PuQ}=w9;class Fh extends aB{init(){this.extensionName=JX,this.propertyType="Iridescence",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{iridescenceFactor:0,iridescenceTexture:null,iridescenceTextureInfo:new hB(this.graph,"iridescenceTextureInfo"),iridescenceIOR:1.3,iridescenceThicknessMinimum:100,iridescenceThicknessMaximum:400,iridescenceThicknessTexture:null,iridescenceThicknessTextureInfo:new hB(this.graph,"iridescenceThicknessTextureInfo")})}getIridescenceFactor(){return this.get("iridescenceFactor")}setIridescenceFactor(A){return this.set("iridescenceFactor",A)}getIridescenceTexture(){return this.getRef("iridescenceTexture")}getIridescenceTextureInfo(){return this.getRef("iridescenceTexture")?this.getRef("iridescenceTextureInfo"):null}setIridescenceTexture(A){return this.setRef("iridescenceTexture",A,{channels:OuQ})}getIridescenceIOR(){return this.get("iridescenceIOR")}setIridescenceIOR(A){return this.set("iridescenceIOR",A)}getIridescenceThicknessMinimum(){return this.get("iridescenceThicknessMinimum")}setIridescenceThicknessMinimum(A){return this.set("iridescenceThicknessMinimum",A)}getIridescenceThicknessMaximum(){return this.get("iridescenceThicknessMaximum")}setIridescenceThicknessMaximum(A){return this.set("iridescenceThicknessMaximum",A)}getIridescenceThicknessTexture(){return this.getRef("iridescenceThicknessTexture")}getIridescenceThicknessTextureInfo(){return this.getRef("iridescenceThicknessTexture")?this.getRef("iridescenceThicknessTextureInfo"):null}setIridescenceThicknessTexture(A){return this.setRef("iridescenceThicknessTexture",A,{channels:PuQ})}}Fh.EXTENSION_NAME=JX;class Wh extends oB{constructor(...A){super(...A);this.extensionName=JX,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createIridescence(){return new Fh(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[JX]){let X=this.createIridescence();A.materials[C].setExtension(JX,X);let G=J.extensions[JX];if(G.iridescenceFactor!==void 0)X.setIridescenceFactor(G.iridescenceFactor);if(G.iridescenceIor!==void 0)X.setIridescenceIOR(G.iridescenceIor);if(G.iridescenceThicknessMinimum!==void 0)X.setIridescenceThicknessMinimum(G.iridescenceThicknessMinimum);if(G.iridescenceThicknessMaximum!==void 0)X.setIridescenceThicknessMaximum(G.iridescenceThicknessMaximum);if(G.iridescenceTexture!==void 0){let F=G.iridescenceTexture,W=A.textures[Y[F.index].source];X.setIridescenceTexture(W),A.setTextureInfo(X.getIridescenceTextureInfo(),F)}if(G.iridescenceThicknessTexture!==void 0){let F=G.iridescenceThicknessTexture,W=A.textures[Y[F.index].source];X.setIridescenceThicknessTexture(W),A.setTextureInfo(X.getIridescenceThicknessTextureInfo(),F)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(JX);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[JX]={};if(Y.getIridescenceFactor()>0)X.iridescenceFactor=Y.getIridescenceFactor();if(Y.getIridescenceIOR()!==1.3)X.iridescenceIor=Y.getIridescenceIOR();if(Y.getIridescenceThicknessMinimum()!==100)X.iridescenceThicknessMinimum=Y.getIridescenceThicknessMinimum();if(Y.getIridescenceThicknessMaximum()!==400)X.iridescenceThicknessMaximum=Y.getIridescenceThicknessMaximum();if(Y.getIridescenceTexture()){let G=Y.getIridescenceTexture(),F=Y.getIridescenceTextureInfo();X.iridescenceTexture=A.createTextureInfoDef(G,F)}if(Y.getIridescenceThicknessTexture()){let G=Y.getIridescenceThicknessTexture(),F=Y.getIridescenceThicknessTextureInfo();X.iridescenceThicknessTexture=A.createTextureInfoDef(G,F)}}}),this}}Wh.EXTENSION_NAME=JX;var{R:IJA,G:HJA,B:DJA,A:NJA}=w9;class Zh extends aB{init(){this.extensionName=CX,this.propertyType="PBRSpecularGlossiness",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{diffuseFactor:[1,1,1,1],diffuseTexture:null,diffuseTextureInfo:new hB(this.graph,"diffuseTextureInfo"),specularFactor:[1,1,1],glossinessFactor:1,specularGlossinessTexture:null,specularGlossinessTextureInfo:new hB(this.graph,"specularGlossinessTextureInfo")})}getDiffuseFactor(){return this.get("diffuseFactor")}setDiffuseFactor(A){return this.set("diffuseFactor",A)}getDiffuseTexture(){return this.getRef("diffuseTexture")}getDiffuseTextureInfo(){return this.getRef("diffuseTexture")?this.getRef("diffuseTextureInfo"):null}setDiffuseTexture(A){return this.setRef("diffuseTexture",A,{channels:IJA|HJA|DJA|NJA,isColor:!0})}getSpecularFactor(){return this.get("specularFactor")}setSpecularFactor(A){return this.set("specularFactor",A)}getGlossinessFactor(){return this.get("glossinessFactor")}setGlossinessFactor(A){return this.set("glossinessFactor",A)}getSpecularGlossinessTexture(){return this.getRef("specularGlossinessTexture")}getSpecularGlossinessTextureInfo(){return this.getRef("specularGlossinessTexture")?this.getRef("specularGlossinessTextureInfo"):null}setSpecularGlossinessTexture(A){return this.setRef("specularGlossinessTexture",A,{channels:IJA|HJA|DJA|NJA})}}Zh.EXTENSION_NAME=CX;class f2 extends oB{constructor(...A){super(...A);this.extensionName=CX,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createPBRSpecularGlossiness(){return new Zh(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[CX]){let X=this.createPBRSpecularGlossiness();A.materials[C].setExtension(CX,X);let G=J.extensions[CX];if(G.diffuseFactor!==void 0)X.setDiffuseFactor(G.diffuseFactor);if(G.specularFactor!==void 0)X.setSpecularFactor(G.specularFactor);if(G.glossinessFactor!==void 0)X.setGlossinessFactor(G.glossinessFactor);if(G.diffuseTexture!==void 0){let F=G.diffuseTexture,W=A.textures[Y[F.index].source];X.setDiffuseTexture(W),A.setTextureInfo(X.getDiffuseTextureInfo(),F)}if(G.specularGlossinessTexture!==void 0){let F=G.specularGlossinessTexture,W=A.textures[Y[F.index].source];X.setSpecularGlossinessTexture(W),A.setTextureInfo(X.getSpecularGlossinessTextureInfo(),F)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(CX);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[CX]={diffuseFactor:Y.getDiffuseFactor(),specularFactor:Y.getSpecularFactor(),glossinessFactor:Y.getGlossinessFactor()};if(Y.getDiffuseTexture()){let G=Y.getDiffuseTexture(),F=Y.getDiffuseTextureInfo();X.diffuseTexture=A.createTextureInfoDef(G,F)}if(Y.getSpecularGlossinessTexture()){let G=Y.getSpecularGlossinessTexture(),F=Y.getSpecularGlossinessTextureInfo();X.specularGlossinessTexture=A.createTextureInfoDef(G,F)}}}),this}}f2.EXTENSION_NAME=CX;var{R:TuQ,G:SuQ,B:kuQ,A:_uQ}=w9;class $h extends aB{init(){this.extensionName=XX,this.propertyType="Sheen",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{sheenColorFactor:[0,0,0],sheenColorTexture:null,sheenColorTextureInfo:new hB(this.graph,"sheenColorTextureInfo"),sheenRoughnessFactor:0,sheenRoughnessTexture:null,sheenRoughnessTextureInfo:new hB(this.graph,"sheenRoughnessTextureInfo")})}getSheenColorFactor(){return this.get("sheenColorFactor")}setSheenColorFactor(A){return this.set("sheenColorFactor",A)}getSheenColorTexture(){return this.getRef("sheenColorTexture")}getSheenColorTextureInfo(){return this.getRef("sheenColorTexture")?this.getRef("sheenColorTextureInfo"):null}setSheenColorTexture(A){return this.setRef("sheenColorTexture",A,{channels:TuQ|SuQ|kuQ,isColor:!0})}getSheenRoughnessFactor(){return this.get("sheenRoughnessFactor")}setSheenRoughnessFactor(A){return this.set("sheenRoughnessFactor",A)}getSheenRoughnessTexture(){return this.getRef("sheenRoughnessTexture")}getSheenRoughnessTextureInfo(){return this.getRef("sheenRoughnessTexture")?this.getRef("sheenRoughnessTextureInfo"):null}setSheenRoughnessTexture(A){return this.setRef("sheenRoughnessTexture",A,{channels:_uQ})}}$h.EXTENSION_NAME=XX;class Uh extends oB{constructor(...A){super(...A);this.extensionName=XX,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createSheen(){return new $h(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[XX]){let X=this.createSheen();A.materials[C].setExtension(XX,X);let G=J.extensions[XX];if(G.sheenColorFactor!==void 0)X.setSheenColorFactor(G.sheenColorFactor);if(G.sheenRoughnessFactor!==void 0)X.setSheenRoughnessFactor(G.sheenRoughnessFactor);if(G.sheenColorTexture!==void 0){let F=G.sheenColorTexture,W=A.textures[Y[F.index].source];X.setSheenColorTexture(W),A.setTextureInfo(X.getSheenColorTextureInfo(),F)}if(G.sheenRoughnessTexture!==void 0){let F=G.sheenRoughnessTexture,W=A.textures[Y[F.index].source];X.setSheenRoughnessTexture(W),A.setTextureInfo(X.getSheenRoughnessTextureInfo(),F)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(XX);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[XX]={sheenColorFactor:Y.getSheenColorFactor(),sheenRoughnessFactor:Y.getSheenRoughnessFactor()};if(Y.getSheenColorTexture()){let G=Y.getSheenColorTexture(),F=Y.getSheenColorTextureInfo();X.sheenColorTexture=A.createTextureInfoDef(G,F)}if(Y.getSheenRoughnessTexture()){let G=Y.getSheenRoughnessTexture(),F=Y.getSheenRoughnessTextureInfo();X.sheenRoughnessTexture=A.createTextureInfoDef(G,F)}}}),this}}Uh.EXTENSION_NAME=XX;var{R:vuQ,G:yuQ,B:huQ,A:guQ}=w9;class Eh extends aB{init(){this.extensionName=GX,this.propertyType="Specular",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{specularFactor:1,specularTexture:null,specularTextureInfo:new hB(this.graph,"specularTextureInfo"),specularColorFactor:[1,1,1],specularColorTexture:null,specularColorTextureInfo:new hB(this.graph,"specularColorTextureInfo")})}getSpecularFactor(){return this.get("specularFactor")}setSpecularFactor(A){return this.set("specularFactor",A)}getSpecularColorFactor(){return this.get("specularColorFactor")}setSpecularColorFactor(A){return this.set("specularColorFactor",A)}getSpecularTexture(){return this.getRef("specularTexture")}getSpecularTextureInfo(){return this.getRef("specularTexture")?this.getRef("specularTextureInfo"):null}setSpecularTexture(A){return this.setRef("specularTexture",A,{channels:guQ})}getSpecularColorTexture(){return this.getRef("specularColorTexture")}getSpecularColorTextureInfo(){return this.getRef("specularColorTexture")?this.getRef("specularColorTextureInfo"):null}setSpecularColorTexture(A){return this.setRef("specularColorTexture",A,{channels:vuQ|yuQ|huQ,isColor:!0})}}Eh.EXTENSION_NAME=GX;class b2 extends oB{constructor(...A){super(...A);this.extensionName=GX,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createSpecular(){return new Eh(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[GX]){let X=this.createSpecular();A.materials[C].setExtension(GX,X);let G=J.extensions[GX];if(G.specularFactor!==void 0)X.setSpecularFactor(G.specularFactor);if(G.specularColorFactor!==void 0)X.setSpecularColorFactor(G.specularColorFactor);if(G.specularTexture!==void 0){let F=G.specularTexture,W=A.textures[Y[F.index].source];X.setSpecularTexture(W),A.setTextureInfo(X.getSpecularTextureInfo(),F)}if(G.specularColorTexture!==void 0){let F=G.specularColorTexture,W=A.textures[Y[F.index].source];X.setSpecularColorTexture(W),A.setTextureInfo(X.getSpecularColorTextureInfo(),F)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(GX);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[GX]={};if(Y.getSpecularFactor()!==1)X.specularFactor=Y.getSpecularFactor();if(!kQ.eq(Y.getSpecularColorFactor(),[1,1,1]))X.specularColorFactor=Y.getSpecularColorFactor();if(Y.getSpecularTexture()){let G=Y.getSpecularTexture(),F=Y.getSpecularTextureInfo();X.specularTexture=A.createTextureInfoDef(G,F)}if(Y.getSpecularColorTexture()){let G=Y.getSpecularColorTexture(),F=Y.getSpecularColorTextureInfo();X.specularColorTexture=A.createTextureInfoDef(G,F)}}}),this}}b2.EXTENSION_NAME=GX;var{R:xuQ}=w9;class Kh extends aB{init(){this.extensionName=FX,this.propertyType="Transmission",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{transmissionFactor:0,transmissionTexture:null,transmissionTextureInfo:new hB(this.graph,"transmissionTextureInfo")})}getTransmissionFactor(){return this.get("transmissionFactor")}setTransmissionFactor(A){return this.set("transmissionFactor",A)}getTransmissionTexture(){return this.getRef("transmissionTexture")}getTransmissionTextureInfo(){return this.getRef("transmissionTexture")?this.getRef("transmissionTextureInfo"):null}setTransmissionTexture(A){return this.setRef("transmissionTexture",A,{channels:xuQ})}}Kh.EXTENSION_NAME=FX;class Vh extends oB{constructor(...A){super(...A);this.extensionName=FX,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createTransmission(){return new Kh(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[FX]){let X=this.createTransmission();A.materials[C].setExtension(FX,X);let G=J.extensions[FX];if(G.transmissionFactor!==void 0)X.setTransmissionFactor(G.transmissionFactor);if(G.transmissionTexture!==void 0){let F=G.transmissionTexture,W=A.textures[Y[F.index].source];X.setTransmissionTexture(W),A.setTextureInfo(X.getTransmissionTextureInfo(),F)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(FX);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[FX]={transmissionFactor:Y.getTransmissionFactor()};if(Y.getTransmissionTexture()){let G=Y.getTransmissionTexture(),F=Y.getTransmissionTextureInfo();X.transmissionTexture=A.createTextureInfoDef(G,F)}}}),this}}Vh.EXTENSION_NAME=FX;class Ih extends aB{init(){this.extensionName=tG,this.propertyType="Unlit",this.parentTypes=[YA.MATERIAL]}}Ih.EXTENSION_NAME=tG;class m2 extends oB{constructor(...A){super(...A);this.extensionName=tG,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createUnlit(){return new Ih(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){return(A.jsonDoc.json.materials||[]).forEach((B,Y)=>{if(B.extensions&&B.extensions[tG])A.materials[Y].setExtension(tG,this.createUnlit())}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{if(B.getExtension(tG)){let Y=A.materialIndexMap.get(B),J=Q.json.materials[Y];J.extensions=J.extensions||{},J.extensions[tG]={}}}),this}}m2.EXTENSION_NAME=tG;class Hh extends aB{init(){this.extensionName=HJ,this.propertyType="Mapping",this.parentTypes=["MappingList"]}getDefaults(){return Object.assign(super.getDefaults(),{material:null,variants:new xB})}getMaterial(){return this.getRef("material")}setMaterial(A){return this.setRef("material",A)}addVariant(A){return this.addRef("variants",A)}removeVariant(A){return this.removeRef("variants",A)}listVariants(){return this.listRefs("variants")}}Hh.EXTENSION_NAME=HJ;class Dh extends aB{init(){this.extensionName=HJ,this.propertyType="MappingList",this.parentTypes=[YA.PRIMITIVE]}getDefaults(){return Object.assign(super.getDefaults(),{mappings:new xB})}addMapping(A){return this.addRef("mappings",A)}removeMapping(A){return this.removeRef("mappings",A)}listMappings(){return this.listRefs("mappings")}}Dh.EXTENSION_NAME=HJ;class v2 extends aB{init(){this.extensionName=HJ,this.propertyType="Variant",this.parentTypes=["MappingList"]}}v2.EXTENSION_NAME=HJ;class Nh extends oB{constructor(...A){super(...A);this.extensionName=HJ}createMappingList(){return new Dh(this.document.getGraph())}createVariant(A=""){return new v2(this.document.getGraph(),A)}createMapping(){return new Hh(this.document.getGraph())}listVariants(){return Array.from(this.properties).filter((A)=>A instanceof v2)}read(A){let Q=A.jsonDoc;if(!Q.json.extensions||!Q.json.extensions[HJ])return this;let J=(Q.json.extensions[HJ].variants||[]).map((X)=>this.createVariant().setName(X.name||""));return(Q.json.meshes||[]).forEach((X,G)=>{let F=A.meshes[G];(X.primitives||[]).forEach((Z,U)=>{if(!Z.extensions||!Z.extensions[HJ])return;let $=this.createMappingList(),E=Z.extensions[HJ];for(let K of E.mappings){let I=this.createMapping();if(K.material!==void 0)I.setMaterial(A.materials[K.material]);for(let V of K.variants||[])I.addVariant(J[V]);$.addMapping(I)}F.listPrimitives()[U].setExtension(HJ,$)})}),this}write(A){let Q=A.jsonDoc,B=this.listVariants();if(!B.length)return this;let Y=[],J=new Map;for(let C of B)J.set(C,Y.length),Y.push(A.createPropertyDef(C));for(let C of this.document.getRoot().listMeshes()){let X=A.meshIndexMap.get(C);C.listPrimitives().forEach((G,F)=>{let W=G.getExtension(HJ);if(!W)return;let Z=A.jsonDoc.json.meshes[X].primitives[F],U=W.listMappings().map(($)=>{let E=A.createPropertyDef($),K=$.getMaterial();if(K)E.material=A.materialIndexMap.get(K);return E.variants=$.listVariants().map((I)=>J.get(I)),E});Z.extensions=Z.extensions||{},Z.extensions[HJ]={mappings:U}})}return Q.json.extensions=Q.json.extensions||{},Q.json.extensions[HJ]={variants:Y},this}}Nh.EXTENSION_NAME=HJ;var{G:fuQ}=w9;class Lh extends aB{init(){this.extensionName=WX,this.propertyType="Volume",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{thicknessFactor:0,thicknessTexture:null,thicknessTextureInfo:new hB(this.graph,"thicknessTexture"),attenuationDistance:1/0,attenuationColor:[1,1,1]})}getThicknessFactor(){return this.get("thicknessFactor")}setThicknessFactor(A){return this.set("thicknessFactor",A)}getThicknessTexture(){return this.getRef("thicknessTexture")}getThicknessTextureInfo(){return this.getRef("thicknessTexture")?this.getRef("thicknessTextureInfo"):null}setThicknessTexture(A){return this.setRef("thicknessTexture",A,{channels:fuQ})}getAttenuationDistance(){return this.get("attenuationDistance")}setAttenuationDistance(A){return this.set("attenuationDistance",A)}getAttenuationColor(){return this.get("attenuationColor")}setAttenuationColor(A){return this.set("attenuationColor",A)}}Lh.EXTENSION_NAME=WX;class qh extends oB{constructor(...A){super(...A);this.extensionName=WX,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createVolume(){return new Lh(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[WX]){let X=this.createVolume();A.materials[C].setExtension(WX,X);let G=J.extensions[WX];if(G.thicknessFactor!==void 0)X.setThicknessFactor(G.thicknessFactor);if(G.attenuationDistance!==void 0)X.setAttenuationDistance(G.attenuationDistance);if(G.attenuationColor!==void 0)X.setAttenuationColor(G.attenuationColor);if(G.thicknessTexture!==void 0){let F=G.thicknessTexture,W=A.textures[Y[F.index].source];X.setThicknessTexture(W),A.setTextureInfo(X.getThicknessTextureInfo(),F)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(WX);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[WX]={};if(Y.getThicknessFactor()>0)X.thicknessFactor=Y.getThicknessFactor();if(Number.isFinite(Y.getAttenuationDistance()))X.attenuationDistance=Y.getAttenuationDistance();if(!kQ.eq(Y.getAttenuationColor(),[1,1,1]))X.attenuationColor=Y.getAttenuationColor();if(Y.getThicknessTexture()){let G=Y.getThicknessTexture(),F=Y.getThicknessTextureInfo();X.thicknessTexture=A.createTextureInfoDef(G,F)}}}),this}}qh.EXTENSION_NAME=WX;class mI extends oB{constructor(...A){super(...A);this.extensionName=LJA}read(A){return this}write(A){return this}}mI.EXTENSION_NAME=LJA;class OJA{match(A){return A[0]===171&&A[1]===75&&A[2]===84&&A[3]===88&&A[4]===32&&A[5]===50&&A[6]===48&&A[7]===187&&A[8]===13&&A[9]===10&&A[10]===26&&A[11]===10}getSize(A){let Q=k2(A);return[Q.pixelWidth,Q.pixelHeight]}getChannels(A){let B=k2(A).dataFormatDescriptor[0];if(B.colorModel===XJA)return B.samples.length===2&&(B.samples[1].channelType&15)===15?4:3;else if(B.colorModel===GJA)return(B.samples[0].channelType&15)===3?4:3;throw Error(`Unexpected KTX2 colorModel, "${B.colorModel}".`)}getVRAMByteLength(A){let Q=k2(A),B=this.getChannels(A)>3,Y=0;for(let J=0;J{if(Q.extensions&&Q.extensions[yI]){let B=Q.extensions[yI];Q.source=B.source}}),this}read(A){return this}write(A){let Q=A.jsonDoc;return this.document.getRoot().listTextures().forEach((B)=>{if(B.getMimeType()==="image/ktx2"){let Y=A.imageIndexMap.get(B);Q.json.textures.forEach((J)=>{if(J.source===Y)J.extensions=J.extensions||{},J.extensions[yI]={source:J.source},delete J.source})}}),this}}uI.EXTENSION_NAME=yI;class Mh extends aB{init(){this.extensionName=ZX,this.propertyType="Transform",this.parentTypes=[YA.TEXTURE_INFO]}getDefaults(){return Object.assign(super.getDefaults(),{offset:[0,0],rotation:0,scale:[1,1],texCoord:null})}getOffset(){return this.get("offset")}setOffset(A){return this.set("offset",A)}getRotation(){return this.get("rotation")}setRotation(A){return this.set("rotation",A)}getScale(){return this.get("scale")}setScale(A){return this.set("scale",A)}getTexCoord(){return this.get("texCoord")}setTexCoord(A){return this.set("texCoord",A)}}Mh.EXTENSION_NAME=ZX;class zh extends oB{constructor(...A){super(...A);this.extensionName=ZX}createTransform(){return new Mh(this.document.getGraph())}read(A){for(let[Q,B]of Array.from(A.textureInfos.entries())){if(!B.extensions||!B.extensions[ZX])continue;let Y=this.createTransform(),J=B.extensions[ZX];if(J.offset!==void 0)Y.setOffset(J.offset);if(J.rotation!==void 0)Y.setRotation(J.rotation);if(J.scale!==void 0)Y.setScale(J.scale);if(J.texCoord!==void 0)Y.setTexCoord(J.texCoord);Q.setExtension(ZX,Y)}return this}write(A){let Q=Array.from(A.textureInfoDefMap.entries());for(let[B,Y]of Q){let J=B.getExtension(ZX);if(!J)continue;Y.extensions=Y.extensions||{};let C={},X=kQ.eq;if(!X(J.getOffset(),[0,0]))C.offset=J.getOffset();if(J.getRotation()!==0)C.rotation=J.getRotation();if(!X(J.getScale(),[1,1]))C.scale=J.getScale();if(J.getTexCoord()!=null)C.texCoord=J.getTexCoord();Y.extensions[ZX]=C}return this}}zh.EXTENSION_NAME=ZX;var buQ=[YA.ROOT,YA.SCENE,YA.NODE,YA.MESH,YA.MATERIAL,YA.TEXTURE,YA.ANIMATION];class Rh extends aB{init(){this.extensionName=B5,this.propertyType="Packet",this.parentTypes=buQ}getDefaults(){return Object.assign(super.getDefaults(),{context:{},properties:{}})}getContext(){return this.get("context")}setContext(A){return this.set("context",$X({},A))}listProperties(){return Object.keys(this.get("properties"))}getProperty(A){let Q=this.get("properties");return A in Q?Q[A]:null}setProperty(A,Q){this._assertContext(A);let B=$X({},this.get("properties"));if(Q)B[A]=Q;else delete B[A];return this.set("properties",B)}toJSONLD(){let A=ny(this.get("context")),Q=ny(this.get("properties"));return $X({"@context":A},Q)}fromJSONLD(A){A=ny(A);let Q=A["@context"];if(Q)this.set("context",Q);return delete A["@context"],this.set("properties",A)}_assertContext(A){if(!(A.split(":")[0]in this.get("context")))throw Error(`${B5}: Missing context for term, "${A}".`)}}Rh.EXTENSION_NAME=B5;function ny(A){return JSON.parse(JSON.stringify(A))}class wh extends oB{constructor(...A){super(...A);this.extensionName=B5}createPacket(){return new Rh(this.document.getGraph())}listPackets(){return Array.from(this.properties)}read(A){var Q;let B=(Q=A.jsonDoc.json.extensions)==null?void 0:Q[B5];if(!B||!B.packets)return this;let Y=A.jsonDoc.json,J=this.document.getRoot(),C=B.packets.map((F)=>this.createPacket().fromJSONLD(F)),X=[[Y.asset],Y.scenes,Y.nodes,Y.meshes,Y.materials,Y.images,Y.animations],G=[[J],J.listScenes(),J.listNodes(),J.listMeshes(),J.listMaterials(),J.listTextures(),J.listAnimations()];for(let F=0;F0)Q.extensions=Q.extensions||{},Q.extensions[B5]={packets:B};return this}}wh.EXTENSION_NAME=B5;var muQ=[fI,oy,ey,Qh,Yh,Ch,bI,x2,Wh,f2,b2,Uh,Vh,m2,Nh,qh,mI,uI,zh,wh],Y1Y=[y2,xI,h2,g2,...muQ];var R5A=qA(jh(),1),w5A=qA(G5A(),1),viQ=qA(z5A(),1);async function yiQ(A,Q){if(!(A instanceof Uint8Array))throw Error("[ndarray-pixels] Input must be Uint8Array or Buffer.");let{data:B,info:Y}=await w5A.default(A).ensureAlpha().raw().toBuffer({resolveWithObject:!0});return R5A.default(new Uint8Array(B),[Y.width,Y.height,4],[4,4*Y.width|0,1],0)}async function j5A(A,Q){return yiQ(A)}var hiQ=qA(jh(),1);function e4(){return e4=Object.assign?Object.assign.bind():function(A){for(var Q=1;QQ?"–":"+",J="%";return Y+(Math.abs(A-Q)/A*100).toFixed(B)+"%"}function E3(A,Q){return`${Ag(A)} → ${Ag(Q)} (${uiQ(A,Q)})`}function K3(A){let Q=[];for(let B of A.listAttributes())Q.push(B);for(let B of A.listTargets())for(let Y of B.listAttributes())Q.push(Y);return Array.from(new Set(Q))}function diQ(A,Q,B){A.swap(Q,B);for(let Y of A.listTargets())Y.swap(Q,B)}function i5A(A){let Q=A.getIndices(),B=K3(A);if(A.dispose(),Q&&!Qg(Q))Q.dispose();for(let Y of B)if(!Qg(Y))Y.dispose()}function KX(A,Q){return A.createAccessor(Q.getName()).setArray(Q.getArray()).setType(Q.getType()).setBuffer(Q.getBuffer()).setNormalized(Q.getNormalized()).setSparse(Q.getSparse())}function ciQ(A,Q=A){let B=Fg(A,Q);for(let Y=0;YQ.propertyType!==YA.ROOT)}function n5A(A){for(let Q in A)return!1;return!0}function s5A(A){let Q=VJ.fromGraph(A.getGraph()),B=A.getMaterial(),Y=Q.getRoot().listMaterials().indexOf(B),J=piQ[A.getMode()],C=!!A.getIndices(),X=A.listSemantics().sort().map((F)=>{let W=A.getAttribute(F),Z=W.getElementSize(),U=W.getComponentType();return`${F}:${Z}:${U}`}).join("+"),G=A.listTargets().map((F)=>{return F.listSemantics().sort().map((W)=>{let Z=A.getAttribute(W),U=Z.getElementSize(),$=Z.getComponentType();return`${W}:${U}:${$}`}).join("+")}).join("~");return`${Y}|${J}|${C}|${X}|${G}`}function liQ(A){return Math.pow(2,Math.ceil(Math.log(A)/Math.LN2))}var piQ={[O5A]:O5A,[G3]:G3,[giQ]:G3,[xiQ]:G3,[F3]:F3,[fiQ]:F3,[biQ]:F3},o4="center",P5A={pivot:"center"};function r5A(A=P5A){let Q=VX(P5A,A);return fW(o4,(B)=>{let Y=B.getLogger(),J=B.getRoot(),C=J.listAnimations().length>0||J.listSkins().length>0;B.getRoot().listScenes().forEach((X,G)=>{Y.debug(`${o4}: Scene ${G+1} / ${J.listScenes().length}.`);let F;if(typeof Q.pivot==="string"){let Z=SI(X);if(F=[(Z.max[0]-Z.min[0])/2+Z.min[0],(Z.max[1]-Z.min[1])/2+Z.min[1],(Z.max[2]-Z.min[2])/2+Z.min[2]],Q.pivot==="above")F[1]=Z.max[1];if(Q.pivot==="below")F[1]=Z.min[1]}else F=Q.pivot;Y.debug(`${o4}: Pivot "${F.join(", ")}".`);let W=[-1*F[0],-1*F[1],-1*F[2]];if(C){Y.debug(`${o4}: Model contains animation or skin. Adding a wrapper node.`);let Z=B.createNode("Pivot").setTranslation(W);X.listChildren().forEach((U)=>Z.addChild(U)),X.addChild(Z)}else Y.debug(`${o4}: Skipping wrapper, offsetting all root nodes.`),X.listChildren().forEach((Z)=>{let U=Z.getTranslation();Z.setTranslation([U[0]+W[0],U[1]+W[1],U[2]+W[2]])})}),Y.debug(`${o4}: Complete.`)})}function iiQ(A){let Q=new Set,B=A,Y;while(Y=B.getParentNode()){if(Q.has(Y))throw Error("Circular dependency in scene graph.");Q.add(Y),B=Y}return B.listParents().filter((J)=>J instanceof h4)}function niQ(A){let Q=iiQ(A),B=A.getParentNode();if(!B)return A;A.setMatrix(A.getWorldMatrix()),B.removeChild(A);for(let Y of Q)Y.addChild(A);return A}var AU=typeof Float32Array<"u"?Float32Array:Array;if(!Math.hypot)Math.hypot=function(){var A=0,Q=arguments.length;while(Q--)A+=arguments[Q]*arguments[Q];return Math.sqrt(A)};function siQ(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Q[4],G=Q[5],F=Q[6],W=Q[7],Z=Q[8],U=Q[9],$=Q[10],E=Q[11],K=Q[12],I=Q[13],V=Q[14],H=Q[15],D=B*G-Y*X,L=B*F-J*X,z=B*W-C*X,M=Y*F-J*G,N=Y*W-C*G,q=J*W-C*F,w=Z*I-U*K,P=Z*V-$*K,_=Z*H-E*K,O=U*V-$*I,k=U*H-E*I,T=$*H-E*V,S=D*T-L*k+z*O+M*_-N*P+q*w;if(!S)return null;return S=1/S,A[0]=(G*T-F*k+W*O)*S,A[1]=(J*k-Y*T-C*O)*S,A[2]=(I*q-V*N+H*M)*S,A[3]=($*N-U*q-E*M)*S,A[4]=(F*_-X*T-W*P)*S,A[5]=(B*T-J*_+C*P)*S,A[6]=(V*z-K*q-H*L)*S,A[7]=(Z*q-$*z+E*L)*S,A[8]=(X*k-G*_+W*w)*S,A[9]=(Y*_-B*k-C*w)*S,A[10]=(K*N-I*z+H*D)*S,A[11]=(U*z-Z*N-E*D)*S,A[12]=(G*P-X*O-F*w)*S,A[13]=(B*O-Y*P+J*w)*S,A[14]=(I*L-K*M-V*D)*S,A[15]=(Z*M-U*L+$*D)*S,A}function riQ(A){var Q=A[0],B=A[1],Y=A[2],J=A[3],C=A[4],X=A[5],G=A[6],F=A[7],W=A[8],Z=A[9],U=A[10],$=A[11],E=A[12],K=A[13],I=A[14],V=A[15],H=Q*X-B*C,D=Q*G-Y*C,L=Q*F-J*C,z=B*G-Y*X,M=B*F-J*X,N=Y*F-J*G,q=W*K-Z*E,w=W*I-U*E,P=W*V-$*E,_=Z*I-U*K,O=Z*V-$*K,k=U*V-$*I;return H*k-D*O+L*_+z*P-M*w+N*q}function a5A(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],F=Q[5],W=Q[6],Z=Q[7],U=Q[8],$=Q[9],E=Q[10],K=Q[11],I=Q[12],V=Q[13],H=Q[14],D=Q[15],L=B[0],z=B[1],M=B[2],N=B[3];return A[0]=L*Y+z*G+M*U+N*I,A[1]=L*J+z*F+M*$+N*V,A[2]=L*C+z*W+M*E+N*H,A[3]=L*X+z*Z+M*K+N*D,L=B[4],z=B[5],M=B[6],N=B[7],A[4]=L*Y+z*G+M*U+N*I,A[5]=L*J+z*F+M*$+N*V,A[6]=L*C+z*W+M*E+N*H,A[7]=L*X+z*Z+M*K+N*D,L=B[8],z=B[9],M=B[10],N=B[11],A[8]=L*Y+z*G+M*U+N*I,A[9]=L*J+z*F+M*$+N*V,A[10]=L*C+z*W+M*E+N*H,A[11]=L*X+z*Z+M*K+N*D,L=B[12],z=B[13],M=B[14],N=B[15],A[12]=L*Y+z*G+M*U+N*I,A[13]=L*J+z*F+M*$+N*V,A[14]=L*C+z*W+M*E+N*H,A[15]=L*X+z*Z+M*K+N*D,A}var DJ;(function(A){A.RENDER="render",A.RENDER_CACHED="render-cached",A.UPLOAD="upload",A.UPLOAD_NAIVE="upload-naive",A.DISTINCT="distinct",A.DISTINCT_POSITION="distinct-position",A.UNUSED="unused"})(DJ||(DJ={}));function xW(A,Q){let B=A.getAttribute("POSITION"),Y=A.getIndices();switch(Q){case DJ.RENDER:return Y?Y.getCount():B.getCount();case DJ.RENDER_CACHED:return Y?new Set(Y.getArray()).size:B.getCount();case DJ.UPLOAD_NAIVE:case DJ.UPLOAD:return B.getCount();case DJ.DISTINCT:case DJ.DISTINCT_POSITION:return aiQ(Q);case DJ.UNUSED:return Y?B.getCount()-new Set(Y.getArray()).size:0;default:return oiQ(Q)}}function aiQ(A){throw Error(`Not implemented: ${A}`)}function oiQ(A){throw Error(`Unexpected value: ${A}`)}var J7=4294967295;class o5A{constructor(A){this.attributes=[],this.u8=void 0,this.u32=void 0;let Q=0;for(let B of K3(A))Q+=this._initAttribute(B);this.u8=new Uint8Array(Q),this.u32=new Uint32Array(this.u8.buffer)}_initAttribute(A){let Q=A.getArray(),B=new Uint8Array(Q.buffer,Q.byteOffset,Q.byteLength),Y=A.getElementSize()*A.getComponentSize(),J=jQ.padNumber(Y);return this.attributes.push({u8:B,byteStride:Y,paddedByteStride:J}),J}hash(A){let Q=0;for(let{u8:B,byteStride:Y,paddedByteStride:J}of this.attributes){for(let C=0;C>>0,X=(X^X>>24)>>>0,X=Math.imul(X,1540483477)>>>0,A=Math.imul(A,1540483477)>>>0,A=(A^X)>>>0}return A}function eiQ(A,Q,B,Y,J=J7){let C=Q-1,G=B.hash(Y)&C;for(let F=0;F<=C;F++){let W=A[G];if(W===J||B.equal(W,Y))return G;G=G+F+1&C}throw Error("Hash table full.")}function AH(A,Q,B){let Y=VJ.fromGraph(A.getGraph());if(!Q||!B)[Q,B]=AnQ(A);let J=A.getIndices(),C=J?J.getArray():null,X=xW(A,DJ.RENDER),G=Y.createAccessor(),F=X,W=Fg(F,B);for(let U=0;U0)C=1/Math.sqrt(C);return A[0]=Q[0]*C,A[1]=Q[1]*C,A[2]=Q[2]*C,A}function XnQ(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=B[3]*Y+B[7]*J+B[11]*C+B[15];return X=X||1,A[0]=(B[0]*Y+B[4]*J+B[8]*C+B[12])/X,A[1]=(B[1]*Y+B[5]*J+B[9]*C+B[13])/X,A[2]=(B[2]*Y+B[6]*J+B[10]*C+B[14])/X,A}function GnQ(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2];return A[0]=Y*B[0]+J*B[3]+C*B[6],A[1]=Y*B[1]+J*B[4]+C*B[7],A[2]=Y*B[2]+J*B[5]+C*B[8],A}var FnQ=CnQ;(function(){var A=V3();return function(Q,B,Y,J,C,X){var G,F;if(!B)B=3;if(!Y)Y=0;if(J)F=Math.min(J*B+Y,Q.length);else F=Q.length;for(G=Y;G{let Y=B.getLogger();for(let J of B.getRoot().listMeshes()){for(let C of J.listPrimitives())if(I3(C,Q),xW(C,DJ.RENDER)===0)i5A(C);if(J.listPrimitives().length===0)J.dispose()}Y.debug(`${Yg}: Complete.`)})}function I3(A,Q=Z3){let B=A.getGraph(),J=VJ.fromGraph(B).getLogger(),C=e4({},Z3,Q);if(A.getIndices()&&!C.overwrite)return;if(A.getMode()===D0.Mode.POINTS)return;let X=A.getAttribute("POSITION").getCount(),G=A.getIndices(),F=G==null?void 0:G.getArray(),W=G?G.getCount():X,Z=new o5A(A),U=liQ(X+X/4),$=new Uint32Array(U).fill(J7),E=new Uint32Array(X).fill(J7),K=0;for(let I=0;IY instanceof kI&&Y!==Q))A=A.clone();for(let Y of A.listTargets())if(Y.listParents().some((C)=>C instanceof D0&&C!==A))A.removeTarget(Y).addTarget(Y.clone());return A}var _5A=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function ACA(A){let Q=A.getMesh(),B=A.getMatrix();if(Q&&!kQ.eq(B,_5A))$nQ(Q,B);for(let Y of A.listChildren()){let J=Y.getMatrix();a5A(J,J,B),Y.setMatrix(J)}return A.setMatrix(_5A)}var{LINES:EnQ,LINE_STRIP:KnQ,LINE_LOOP:VnQ,TRIANGLES:InQ,TRIANGLE_STRIP:HnQ,TRIANGLE_FAN:DnQ}=D0.Mode;function NnQ(A){let Q=A.getGraph(),B=VJ.fromGraph(Q);if(!A.getIndices())I3(A);let Y=A.getIndices(),J=Y.getArray(),C=p5A(A),G=new aG[Y.getComponentType()](C*2),F=A.getMode();if(F===KnQ)for(let Z=0;ZZ!==W&&Z!==A))A.setIndices(KX(B,Y).setArray(G));else Y.setArray(G)}function QCA(A){let Q=A.getGraph(),B=VJ.fromGraph(Q);if(!A.getIndices())I3(A);let Y=A.getIndices(),J=Y.getArray(),C=p5A(A),G=new aG[Y.getComponentType()](C*3),F=A.getMode();if(F===HnQ)for(let Z=0,U=J.length;ZZ!==W&&Z!==A))A.setIndices(KX(B,Y).setArray(G));else Y.setArray(G)}var $6Y={keepUniqueNames:!1,propertyTypes:[YA.ACCESSOR,YA.MESH,YA.TEXTURE,YA.MATERIAL,YA.SKIN]};var v5A="dequantize",$3={pattern:/^((?!JOINTS_).)*$/};function BCA(A=$3){let Q=VX($3,A);return fW(v5A,(B)=>{let Y=B.getLogger();for(let J of B.getRoot().listMeshes())for(let C of J.listPrimitives())LnQ(C,Q);B.createExtension(mI).dispose(),Y.debug(`${v5A}: Complete.`)})}function LnQ(A,Q=$3){let B=VX($3,Q);for(let Y of A.listSemantics())if(B.pattern.test(Y))Jg(A.getAttribute(Y));for(let Y of A.listTargets())for(let J of Y.listSemantics())if(B.pattern.test(J))Jg(Y.getAttribute(J))}function Jg(A){let Q=A.getArray();if(!Q)return;let B=U3(Q,A.getComponentType(),A.getNormalized());A.setArray(B).setNormalized(!1)}function U3(A,Q,B){let Y=new Float32Array(A.length);for(let J=0,C=A.length;J{if(Y.propertyType===YCA)return Y;let J=B.get(Y);if(!J)J=new Y.constructor(A.getGraph()),B.set(Y,J);return J}}function znQ(A){let Q=new Set;for(let B of A.getGraph().listEdges())Q.add(B.getChild());return Array.from(Q)}function CCA(){var A=new AU(4);if(AU!=Float32Array)A[0]=0,A[1]=0,A[2]=0,A[3]=0;return A}function RnQ(A,Q,B){return A[0]=Q[0]+B[0],A[1]=Q[1]+B[1],A[2]=Q[2]+B[2],A[3]=Q[3]+B[3],A}function wnQ(A,Q,B){return A[0]=Q[0]-B[0],A[1]=Q[1]-B[1],A[2]=Q[2]-B[2],A[3]=Q[3]-B[3],A}function jnQ(A,Q,B){return A[0]=Q[0]*B[0],A[1]=Q[1]*B[1],A[2]=Q[2]*B[2],A[3]=Q[3]*B[3],A}function OnQ(A,Q,B){return A[0]=Q[0]*B,A[1]=Q[1]*B,A[2]=Q[2]*B,A[3]=Q[3]*B,A}function PnQ(A){var Q=A[0],B=A[1],Y=A[2],J=A[3];return Math.hypot(Q,B,Y,J)}var XCA=wnQ,TnQ=jnQ,GCA=PnQ;(function(){var A=CCA();return function(Q,B,Y,J,C,X){var G,F;if(!B)B=4;if(!Y)Y=0;if(J)F=Math.min(J*B+Y,Q.length);else F=Q.length;for(G=Y;G{return J.getAttributes().isColor||SnQ.test(J.getName())})?"srgb":null}function _nQ(A){let Q=A.getGraph(),B=new Set,Y=new Set;function J(C){let X=new Set;for(let G of Q.listChildEdges(C))if(G.getChild()instanceof _W)X.add(G.getName()+"Info");for(let G of Q.listChildEdges(C)){let F=G.getChild();if(B.has(F))continue;if(B.add(F),F instanceof hB&&X.has(G.getName()))Y.add(F);else if(F instanceof aB)J(F)}}return J(A),Array.from(Y)}function vnQ(A){let B=VJ.fromGraph(A.getGraph()).getRoot(),Y=A.getGraph().listParentEdges(A).filter((J)=>J.getParent()!==B).map((J)=>J.getName());return Array.from(new Set(Y))}var t4="prune",Cg=0.011764705882352941,y5A={propertyTypes:[YA.NODE,YA.SKIN,YA.MESH,YA.CAMERA,YA.PRIMITIVE,YA.PRIMITIVE_TARGET,YA.ANIMATION,YA.MATERIAL,YA.TEXTURE,YA.ACCESSOR,YA.BUFFER],keepLeaves:!1,keepAttributes:!1,keepIndices:!1,keepSolidTextures:!1,keepExtras:!1};function H3(A=y5A){let Q=VX(y5A,A),B=new Set(Q.propertyTypes),Y=Q.keepExtras;return fW(t4,async(J)=>{let C=J.getLogger(),X=J.getRoot(),G=J.getGraph(),F=new FCA,W=(Z)=>F.dispose(Z.target);if(G.addEventListener("node:dispose",W),B.has(YA.MESH))for(let Z of X.listMeshes()){if(Z.listPrimitives().length>0)continue;Z.dispose()}if(B.has(YA.NODE)){if(!Q.keepLeaves)for(let Z of X.listScenes())WCA(G,Z,Y);for(let Z of X.listNodes())C5(Z,Y)}if(B.has(YA.SKIN))for(let Z of X.listSkins())C5(Z,Y);if(B.has(YA.MESH))for(let Z of X.listMeshes())C5(Z,Y);if(B.has(YA.CAMERA))for(let Z of X.listCameras())C5(Z,Y);if(B.has(YA.PRIMITIVE))h5A(G,YA.PRIMITIVE,Y);if(B.has(YA.PRIMITIVE_TARGET))h5A(G,YA.PRIMITIVE_TARGET,Y);if(!Q.keepAttributes&&B.has(YA.ACCESSOR)){let Z=new Map;for(let U of X.listMeshes())for(let $ of U.listPrimitives()){let E=$.getMaterial();if(!E)continue;let K=ZCA(J,$,E),I=ynQ($,K);g5A($,I),$.listTargets().forEach((V)=>g5A(V,I)),Z.has(E)?Z.get(E).add($):Z.set(E,new Set([$]))}for(let[U,$]of Z)hnQ(U,Array.from($))}if(B.has(YA.ANIMATION))for(let Z of X.listAnimations()){for(let U of Z.listChannels())if(!U.getTargetNode())U.dispose();if(!Z.listChannels().length){let U=Z.listSamplers();C5(Z,Y),U.forEach(($)=>C5($,Y))}else Z.listSamplers().forEach((U)=>C5(U,Y))}if(B.has(YA.MATERIAL))X.listMaterials().forEach((Z)=>C5(Z,Y));if(B.has(YA.TEXTURE)){if(X.listTextures().forEach((Z)=>C5(Z,Y)),!Q.keepSolidTextures)await gnQ(J)}if(B.has(YA.ACCESSOR))X.listAccessors().forEach((Z)=>C5(Z,Y));if(B.has(YA.BUFFER))X.listBuffers().forEach((Z)=>C5(Z,Y));if(G.removeEventListener("node:dispose",W),!F.empty()){let Z=F.entries().map(([U,$])=>`${U} (${$})`).join(", ");C.info(`${t4}: Removed types... ${Z}`)}else C.debug(`${t4}: No unused properties found.`);C.debug(`${t4}: Complete.`)})}class FCA{constructor(){this.disposed={}}empty(){for(let A in this.disposed)return!1;return!0}entries(){return Object.entries(this.disposed)}dispose(A){this.disposed[A.propertyType]=this.disposed[A.propertyType]||0,this.disposed[A.propertyType]++}}function C5(A,Q){let B=A.listParents().filter((J)=>!(J instanceof g4||J instanceof a6)),Y=Q&&!n5A(A.getExtras());if(!B.length&&!Y)A.dispose()}function h5A(A,Q,B){for(let Y of A.listEdges()){let J=Y.getParent();if(J.propertyType===Q)C5(J,B)}}function WCA(A,Q,B){if(Q.listChildren().forEach((X)=>WCA(A,X,B)),Q instanceof h4)return;let Y=A.listParentEdges(Q).some((X)=>{let G=X.getParent().propertyType;return G!==YA.ROOT&&G!==YA.SCENE&&G!==YA.NODE}),J=A.listChildren(Q).length===0,C=B&&!n5A(Q.getExtras());if(J&&!Y&&!C)Q.dispose()}function g5A(A,Q){for(let B of Q)A.setAttribute(B,null)}function ynQ(A,Q){let B=[];for(let Y of A.listSemantics())if(Y==="NORMAL"&&!Q.has(Y))B.push(Y);else if(Y==="TANGENT"&&!Q.has(Y))B.push(Y);else if(Y.startsWith("TEXCOORD_")&&!Q.has(Y))B.push(Y);else if(Y.startsWith("COLOR_")&&Y!=="COLOR_0")B.push(Y);return B}function ZCA(A,Q,B,Y=new Set){let C=A.getGraph().listChildEdges(B),X=new Set;for(let W of C)if(W.getChild()instanceof _W)X.add(W.getName());for(let W of C){let Z=W.getName(),U=W.getChild();if(U instanceof hB){if(X.has(Z.replace(/Info$/,"")))Y.add(`TEXCOORD_${U.getTexCoord()}`)}if(U instanceof _W&&Z.match(/normalTexture/i))Y.add("TANGENT");if(U instanceof aB)ZCA(A,Q,U,Y)}let G=B instanceof w1&&!B.getExtension("KHR_materials_unlit"),F=Q.getMode()===D0.Mode.POINTS;if(G&&!F)Y.add("NORMAL");return Y}function hnQ(A,Q){let B=_nQ(A),Y=new Set(B.map((F)=>F.getTexCoord())),J=Array.from(Y).sort(),C=new Map(J.map((F,W)=>[F,W])),X=new Map(J.map((F,W)=>[`TEXCOORD_${F}`,`TEXCOORD_${W}`]));for(let F of B){let W=F.getTexCoord();F.setTexCoord(C.get(W))}for(let F of Q){let W=F.listSemantics().filter((Z)=>Z.startsWith("TEXCOORD_")).sort();G(F,W),F.listTargets().forEach((Z)=>G(Z,W))}function G(F,W){for(let Z of W){let U=F.getAttribute(Z);if(!U)continue;let $=X.get(Z);if($===Z)continue;F.setAttribute($,U),F.setAttribute(Z,null)}}}async function gnQ(A){let Q=A.getRoot(),B=A.getGraph(),Y=A.getLogger(),C=Q.listTextures().map(async(X)=>{var G;let F=await fnQ(X);if(!F)return;if(knQ(X)==="srgb")dy.convertSRGBToLinear(F,F);let W=X.getName()||X.getURI(),Z=(G=X.getSize())==null?void 0:G.join("x"),U=vnQ(X);for(let $ of B.listParentEdges(X)){let E=$.getParent();if(E!==Q&&xnQ(E,F,$.getName(),Y))$.dispose()}if(X.listParents().length===1)X.dispose(),Y.debug(`${t4}: Removed solid-color texture "${W}" (${Z}px ${U.join(", ")})`)});await Promise.all(C)}function xnQ(A,Q,B,Y){if(A instanceof w1)switch(B){case"baseColorTexture":return A.setBaseColorFactor(TnQ(Q,Q,A.getBaseColorFactor())),!0;case"emissiveTexture":return A.setEmissiveFactor(FnQ([0,0,0],Q.slice(0,3),A.getEmissiveFactor())),!0;case"occlusionTexture":return Math.abs(Q[0]-1)<=Cg;case"metallicRoughnessTexture":return A.setRoughnessFactor(Q[1]*A.getRoughnessFactor()),A.setMetallicFactor(Q[2]*A.getMetallicFactor()),!0;case"normalTexture":return GCA(XCA(CCA(),Q,[0.5,0.5,1,1]))<=Cg}return Y.warn(`${t4}: Detected single-color ${B} texture. Pruning ${B} not yet supported.`),!1}async function fnQ(A){let Q=await bnQ(A);if(!Q)return null;let B=[1/0,1/0,1/0,1/0],Y=[-1/0,-1/0,-1/0,-1/0],J=[0,0,0,0],[C,X]=Q.shape;for(let G=0;GCg)return null}return OnQ(J,RnQ(J,Y,B),0.00196078431372549)}async function bnQ(A){try{return await j5A(A.getImage(),A.getMimeType())}catch(Q){return null}}var th="flatten",x5A={cleanup:!0};function $g(A=x5A){let Q=VX(x5A,A);return fW(th,async(B)=>{let Y=B.getRoot(),J=B.getLogger(),C=new Set;for(let W of Y.listSkins())for(let Z of W.listJoints())C.add(Z);let X=new Set;for(let W of Y.listAnimations())for(let Z of W.listChannels()){let U=Z.getTargetNode();if(U&&Z.getTargetPath()!=="weights")X.add(U)}let G=new Set,F=new Set;for(let W of Y.listScenes())W.traverse((Z)=>{let U=Z.getParentNode();if(!U)return;if(C.has(U)||G.has(U))G.add(Z);if(X.has(U)||F.has(U))F.add(Z)});for(let W of Y.listScenes())W.traverse((Z)=>{if(X.has(Z))return;if(G.has(Z))return;if(F.has(Z))return;niQ(Z)});if(X.size)J.debug(`${th}: Flattening node hierarchies with TRS animation not yet supported.`);if(Q.cleanup)await B.transform(H3({propertyTypes:[YA.NODE],keepLeaves:!1}));J.debug(`${th}: Complete.`)})}function $CA(A){return SI(A)}var mnQ={skipValidation:!1},f5A=4294967295,{LINE_STRIP:unQ,LINE_LOOP:dnQ,TRIANGLE_STRIP:cnQ,TRIANGLE_FAN:lnQ}=D0.Mode;function pnQ(A,Q={}){let B=VX(mnQ,Q),Y=A[0],J=VJ.fromGraph(Y.getGraph());if(!B.skipValidation&&new Set(A.map(s5A)).size>1)throw Error("Requires >=2 Primitives, sharing the same Material and Mode, with compatible vertex attributes and indices.");for(let E of A)switch(E.getMode()){case unQ:case dnQ:NnQ(E);break;case cnQ:case lnQ:QCA(E);break}let C=[],X=new Uint32Array(A.length),G=0,F=0;for(let E=0;E!0};function Ug(A=b5A){let Q=VX(b5A,A);return fW(Xg,async(B)=>{let Y=B.getRoot(),J=B.getLogger();for(let C of Y.listScenes())m5A(B,C,Q),C.traverse((X)=>m5A(B,X,Q));if(Q.cleanup)await B.transform(H3({propertyTypes:[rnQ,anQ,onQ,tnQ],keepAttributes:!0,keepIndices:!0,keepLeaves:!1}));J.debug(`${Xg}: Complete.`)})}function m5A(A,Q,B){let Y=A.getLogger(),J={},C=Q.listChildren();for(let F=0;F$ instanceof a6))continue;let U=W.getMesh();if(!U)continue;if(W.getExtension("EXT_mesh_gpu_instancing"))continue;if(W.getSkin())continue;for(let $ of U.listPrimitives()){if($.listTargets().length>0)continue;let E=$.getMaterial();if(E&&E.getExtension("KHR_materials_volume"))continue;AH($),AsQ($);let K=s5A($),I=U.getName()||W.getName();if(B.keepMeshes||B.keepNamed&&I)K+=`|${F}`;if(!(K in J))J[K]={prims:[],primMeshes:[],primNodes:[],dstNode:W,dstMesh:void 0};let V=J[K];V.prims.push($),V.primNodes.push(W)}}let X=Object.values(J).filter(({prims:F})=>F.length>1),G=new Set(X.flatMap((F)=>F.primNodes));for(let F of G){let W=F.getMesh();if(W.listParents().some((U)=>{return U.propertyType!==snQ&&F!==U}))F.setMesh(W.clone())}for(let F of X){let{dstNode:W,primNodes:Z}=F;F.dstMesh=W.getMesh(),F.primMeshes=Z.map((U)=>U.getMesh())}for(let F of X){let{prims:W,primNodes:Z,primMeshes:U,dstNode:$,dstMesh:E}=F,K=$.getMatrix();for(let H=0;H=Math.PI}else if(B==="lerp"){let H=GsQ(C,F,G,I);V=!W3(X,H,Y)}else if(B==="step")V=!W3(X,F)||!W3(X,G)}if(V){if(U!==Z)A[Z]=A[U],c5A(Q,Z,eI(Q,U,C));Z++}}if(W>0)A[Z]=A[W],c5A(Q,Z,eI(Q,W,C)),Z++;return Z}function eI(A,Q,B){for(let Y=0,J=B.length;YB)return!1;return!0}function XsQ(A,Q,B){return A*(1-B)+Q*B}function GsQ(A,Q,B,Y){for(let J=0;JJsQ)$=Math.acos(E),K=Math.sin($),I=Math.sin((1-Y)*$)/K,V=Math.sin(Y*$)/K;else I=1-Y,V=Y;return A[0]=I*J+V*F,A[1]=I*C+V*W,A[2]=I*X+V*Z,A[3]=I*G+V*U,A}function l5A(A,Q){let B=WsQ(A,Q);return Math.acos(2*B*B-1)}function WsQ(A,Q){return A[0]*Q[0]+A[1]*Q[1]+A[2]*Q[2]+A[3]*Q[3]}var D6Y=new Float32Array(0),N6Y={ready:Promise.resolve(),resample:CsQ,tolerance:0.0001,cleanup:!0};var gW="simplify",{POINTS:UCA,LINES:ZsQ,LINE_STRIP:$sQ,LINE_LOOP:UsQ,TRIANGLES:EsQ,TRIANGLE_STRIP:ECA,TRIANGLE_FAN:KCA}=D0.Mode,VCA={ratio:0,error:0.0001,lockBorder:!1};function ICA(A){let Q=VX(VCA,A),B=Q.simplifier;if(!B)throw Error(`${gW}: simplifier dependency required — install "meshoptimizer".`);return fW(gW,async(Y)=>{let J=Y.getLogger();await B.ready,await Y.transform(Wg({overwrite:!1}));let C=0;for(let X of Y.getRoot().listMeshes()){for(let G of X.listPrimitives()){let F=G.getMode();if(F!==EsQ&&F!==ECA&&F!==KCA&&F!==UCA){C++;continue}if(KsQ(G,Q),xW(G,DJ.RENDER)===0)i5A(G)}if(X.listPrimitives().length===0)X.dispose()}if(C>0)J.warn(`${gW}: Skipped ${C} primitives: Unsupported draw mode.`);J.debug(`${gW}: Complete.`)})}function KsQ(A,Q){let B=e4({},VCA,Q),Y=B.simplifier,J=A.getGraph(),C=VJ.fromGraph(J),X=C.getLogger();switch(A.getMode()){case UCA:return VsQ(C,A,B);case ZsQ:case $sQ:case UsQ:return X.warn(`${gW}: Skipping primitive simplification: Unsupported draw mode.`),A;case ECA:case KCA:QCA(A);break}let G=xW(A,DJ.UPLOAD),F=xW(A,DJ.RENDER);if(F($&A)/J*256/F,shiftGreen:($)=>($&Q)/C*256/W,shiftBlue:($)=>($&B)/X*256/Z,shiftAlpha:Y!==0?($)=>($&Y)/G*256/U:()=>255}}var IX;(function(A){A[A.NONE=0]="NONE",A[A.BI_RLE8=1]="BI_RLE8",A[A.BI_RLE4=2]="BI_RLE4",A[A.BI_BIT_FIELDS=3]="BI_BIT_FIELDS",A[A.BI_ALPHA_BIT_FIELDS=6]="BI_ALPHA_BIT_FIELDS"})(IX||(IX={}));class M3{flag;fileSize;reserved1;reserved2;offset;headerSize;width;height;planes;bitPP;compression;rawSize;hr;vr;colors;importantColors;palette;data;maskRed;maskGreen;maskBlue;maskAlpha;toRGBA;pos;bottomUp;buffer;locRed;locGreen;locBlue;locAlpha;shiftRed;shiftGreen;shiftBlue;shiftAlpha;constructor(A,{toRGBA:Q}={toRGBA:!1}){if(this.buffer=A,this.toRGBA=!!Q,this.pos=0,this.bottomUp=!0,this.flag=this.buffer.toString("utf-8",0,this.pos+=2),this.flag!=="BM")throw Error("Invalid BMP File");this.locRed=this.toRGBA?0:3,this.locGreen=this.toRGBA?1:2,this.locBlue=this.toRGBA?2:1,this.locAlpha=this.toRGBA?3:0,this.parseHeader(),this.parseRGBA()}parseHeader(){if(this.fileSize=this.readUInt32LE(),this.reserved1=this.buffer.readUInt16LE(this.pos),this.pos+=2,this.reserved2=this.buffer.readUInt16LE(this.pos),this.pos+=2,this.offset=this.readUInt32LE(),this.headerSize=this.readUInt32LE(),!(this.headerSize in X5))throw Error(`Unsupported BMP header size ${this.headerSize}`);if(this.width=this.readUInt32LE(),this.height=this.readUInt32LE(),this.height=this.height>2147483647?this.height-4294967296:this.height,this.planes=this.buffer.readUInt16LE(this.pos),this.pos+=2,this.bitPP=this.buffer.readUInt16LE(this.pos),this.pos+=2,this.compression=this.readUInt32LE(),this.rawSize=this.readUInt32LE(),this.hr=this.readUInt32LE(),this.vr=this.readUInt32LE(),this.colors=this.readUInt32LE(),this.importantColors=this.readUInt32LE(),this.bitPP===32)this.maskAlpha=0,this.maskRed=16711680,this.maskGreen=65280,this.maskBlue=255;else if(this.bitPP===16)this.maskAlpha=0,this.maskRed=31744,this.maskGreen=992,this.maskBlue=31;if(this.headerSize>X5.BITMAP_INFO_HEADER||this.compression===IX.BI_BIT_FIELDS||this.compression===IX.BI_ALPHA_BIT_FIELDS)this.maskRed=this.readUInt32LE(),this.maskGreen=this.readUInt32LE(),this.maskBlue=this.readUInt32LE();if(this.headerSize>X5.BITMAP_V2_INFO_HEADER||this.compression===IX.BI_ALPHA_BIT_FIELDS)this.maskAlpha=this.readUInt32LE();if(this.headerSize>X5.BITMAP_V3_INFO_HEADER)this.pos+=X5.BITMAP_V4_HEADER-X5.BITMAP_V3_INFO_HEADER;if(this.headerSize>X5.BITMAP_V4_HEADER)this.pos+=X5.BITMAP_V5_HEADER-X5.BITMAP_V4_HEADER;if(this.bitPP<=8||this.colors>0){let Q=this.colors===0?1<{if(C!==Y)Y=C;let X=this.buffer.readUInt8(this.pos++),G=C*this.width*4+J*8*4;for(let F=0;F<8;F++)if(J*8+F>7-F&1];this.data[G+F*this.locAlpha]=0,this.data[G+F*4+this.locBlue]=W.blue,this.data[G+F*4+this.locGreen]=W.green,this.data[G+F*4+this.locRed]=W.red}else break})}bit4(){if(this.compression===IX.BI_RLE4){this.data.fill(0);let A=!1,Q=this.bottomUp?this.height-1:0,B=0;while(B>4),X&1&&X+1>1&1)===1)this.pos++}}else for(let C=0;C>4),A=!A}}else{let A=Math.ceil(this.width/2),Q=A%4,B=Q!==0?4-Q:0;this.scanImage(B,A,(Y,J)=>{let C=this.buffer.readUInt8(this.pos++),X=J*this.width*4+Y*2*4,G=C>>4,F=this.palette[G];if(this.data[X]=0,this.data[X+1]=F.blue,this.data[X+2]=F.green,this.data[X+3]=F.red,Y*2+1>=this.width)return!1;let W=C&15;F=this.palette[W],this.data[X+4]=0,this.data[X+4+1]=F.blue,this.data[X+4+2]=F.green,this.data[X+4+3]=F.red})}}bit8(){if(this.compression===IX.BI_RLE8){this.data.fill(0);let A=this.bottomUp?this.height-1:0,Q=0;while(Q{let J=this.buffer.readUInt8(this.pos++),C=Y*this.width*4+B*4;if(J{let Y=B*this.width*4+Q*4,J=this.buffer.readUInt16LE(this.pos);this.pos+=2,this.data[Y+this.locRed]=this.shiftRed(J),this.data[Y+this.locGreen]=this.shiftGreen(J),this.data[Y+this.locBlue]=this.shiftBlue(J),this.data[Y+this.locAlpha]=this.shiftAlpha(J)})}bit24(){let A=this.width%4;this.scanImage(A,this.width,(Q,B)=>{let Y=B*this.width*4+Q*4,J=this.buffer.readUInt8(this.pos++),C=this.buffer.readUInt8(this.pos++),X=this.buffer.readUInt8(this.pos++);this.data[Y+this.locRed]=X,this.data[Y+this.locGreen]=C,this.data[Y+this.locBlue]=J,this.data[Y+this.locAlpha]=0})}bit32(){this.scanImage(0,this.width,(A,Q)=>{let B=Q*this.width*4+A*4,Y=this.readUInt32LE();this.data[B+this.locRed]=this.shiftRed(Y),this.data[B+this.locGreen]=this.shiftGreen(Y),this.data[B+this.locBlue]=this.shiftBlue(Y),this.data[B+this.locAlpha]=this.shiftAlpha(Y)})}scanImage(A=0,Q=this.width,B){for(let Y=this.height-1;Y>=0;Y--){let J=this.bottomUp?Y:this.height-1-Y;for(let C=0;CQ<<1|B,0)}function Ng(A){return A.quad<<24|A.red<<16|A.green<<8|A.blue}class z3{fileSize;reserved1;reserved2;offset;width;flag;height;planes;bitPP;compress;hr;vr;colors;importantColors;rawSize;headerSize;data;palette;extraBytes;buffer;bytesInColor;pos;constructor(A){if(this.buffer=A.data,this.width=A.width,this.height=A.height,this.headerSize=X5.BITMAP_INFO_HEADER,this.flag="BM",this.bitPP=A.bitPP||24,this.offset=54,this.reserved1=A.reserved1||0,this.reserved2=A.reserved2||0,this.planes=1,this.compress=0,this.hr=A.hr||0,this.vr=A.vr||0,this.importantColors=A.importantColors||0,this.colors=Math.min(2**(this.bitPP-1||1),A.colors||1/0),this.palette=A.palette||[],this.colors&&this.bitPP<16)this.offset+=this.colors*4;else this.colors=0;switch(this.bitPP){case 32:this.bytesInColor=4;break;case 16:this.bytesInColor=2;break;case 8:this.bytesInColor=1;break;case 4:this.bytesInColor=0.5;break;case 1:this.bytesInColor=0.125;break;default:this.bytesInColor=3,this.bitPP=24}let Q=this.width*this.bitPP/32,B=Math.ceil(Q);this.extraBytes=(B-Q)*4,this.rawSize=this.height*B*4+2,this.fileSize=this.rawSize+this.offset,this.data=Buffer.alloc(this.fileSize,1),this.pos=0,this.encode()}encode(){switch(this.pos=0,this.writeHeader(),this.bitPP){case 32:this.bit32();break;case 16:this.bit16();break;case 8:this.bit8();break;case 4:this.bit4();break;case 1:this.bit1();break;default:this.bit24()}}writeHeader(){this.data.write(this.flag,this.pos,2),this.pos+=2,this.writeUInt32LE(this.fileSize),this.writeUInt32LE(this.reserved1<<16|this.reserved2),this.writeUInt32LE(this.offset),this.writeUInt32LE(this.headerSize),this.writeUInt32LE(this.width),this.writeUInt32LE(this.height),this.data.writeUInt16LE(this.planes,this.pos),this.pos+=2,this.data.writeUInt16LE(this.bitPP,this.pos),this.pos+=2,this.writeUInt32LE(this.compress),this.writeUInt32LE(this.rawSize),this.writeUInt32LE(this.hr),this.writeUInt32LE(this.vr),this.writeUInt32LE(this.colors),this.writeUInt32LE(this.importantColors)}bit1(){if(this.palette.length&&this.colors===2)this.initColors(1);else this.writeUInt32LE(16777215),this.writeUInt32LE(0);this.pos+=1;let A=[];this.writeImage((Q,B,Y)=>{let J=B;J++;let C=this.buffer[J++],X=this.buffer[J++],F=this.buffer[J++]*0.2126+X*0.7152+C*0.0722;if(A.push(F>127?0:1),(Y+1)%8===0)this.data[Q-1]=zCA(A),A=[];else if(Y===this.width-1&&A.length>0)this.data[Q-1]=zCA(A)<<4,A=[];return J})}bit4(){let A=this.initColors(4),Q=[];this.writeImage((B,Y,J)=>{let C=Y,X=Ng({quad:this.buffer[C++],blue:this.buffer[C++],green:this.buffer[C++],red:this.buffer[C++]}),G=A.findIndex((F)=>F===X);if(G!==-1)Q.push(G);else Q.push(0);if((J+1)%2===0)this.data[B]=Q[0]<<4|Q[1],Q=[];return C})}bit8(){let A=this.initColors(8);this.writeImage((Q,B)=>{let Y=B,J=Ng({quad:this.buffer[Y++],blue:this.buffer[Y++],green:this.buffer[Y++],red:this.buffer[Y++]}),C=A.findIndex((X)=>X===J);if(C!==-1)this.data[Q]=C;else this.data[Q]=0;return Y})}bit16(){this.writeImage((A,Q)=>{let B=Q+1,Y=this.buffer[B++]/8,J=this.buffer[B++]/8,X=this.buffer[B++]/8<<10|J<<5|Y;return this.data[A]=X&255,this.data[A+1]=(X&65280)>>8,B})}bit24(){this.writeImage((A,Q)=>{let B=Q+1;return this.data[A]=this.buffer[B++],this.data[A+1]=this.buffer[B++],this.data[A+2]=this.buffer[B++],B})}bit32(){this.writeImage((A,Q)=>{let B=Q;return this.data[A+3]=this.buffer[B++],this.data[A]=this.buffer[B++],this.data[A+1]=this.buffer[B++],this.data[A+2]=this.buffer[B++],B})}writeImage(A){let Q=this.extraBytes+this.width*this.bytesInColor,B=0;for(let Y=0;Y=0,C=!B&&J&&(Q==="hex"||Q==="hex6"||Q==="hex3"||Q==="hex4"||Q==="hex8"||Q==="name");if(C){if(Q==="name"&&this._a===0)return this.toName();return this.toRgbString()}if(Q==="rgb")Y=this.toRgbString();if(Q==="prgb")Y=this.toPercentageRgbString();if(Q==="hex"||Q==="hex6")Y=this.toHexString();if(Q==="hex3")Y=this.toHexString(!0);if(Q==="hex4")Y=this.toHex8String(!0);if(Q==="hex8")Y=this.toHex8String();if(Q==="name")Y=this.toName();if(Q==="hsl")Y=this.toHslString();if(Q==="hsv")Y=this.toHsvString();return Y||this.toHexString()},clone:function(){return oA(this.toString())},_applyModification:function(Q,B){var Y=Q.apply(null,[this].concat([].slice.call(B)));return this._r=Y._r,this._g=Y._g,this._b=Y._b,this.setAlpha(Y._a),this},lighten:function(){return this._applyModification(ksQ,arguments)},brighten:function(){return this._applyModification(_sQ,arguments)},darken:function(){return this._applyModification(vsQ,arguments)},desaturate:function(){return this._applyModification(PsQ,arguments)},saturate:function(){return this._applyModification(TsQ,arguments)},greyscale:function(){return this._applyModification(SsQ,arguments)},spin:function(){return this._applyModification(ysQ,arguments)},_applyCombination:function(Q,B){return Q.apply(null,[this].concat([].slice.call(B)))},analogous:function(){return this._applyCombination(xsQ,arguments)},complement:function(){return this._applyCombination(hsQ,arguments)},monochromatic:function(){return this._applyCombination(fsQ,arguments)},splitcomplement:function(){return this._applyCombination(gsQ,arguments)},triad:function(){return this._applyCombination(SCA,[3])},tetrad:function(){return this._applyCombination(SCA,[4])}};oA.fromRatio=function(A,Q){if(R3(A)=="object"){var B={};for(var Y in A)if(A.hasOwnProperty(Y))if(Y==="a")B[Y]=A[Y];else B[Y]=CH(A[Y]);A=B}return oA(A,Q)};function zsQ(A){var Q={r:0,g:0,b:0},B=1,Y=null,J=null,C=null,X=!1,G=!1;if(typeof A=="string")A=csQ(A);if(R3(A)=="object"){if(HX(A.r)&&HX(A.g)&&HX(A.b))Q=RsQ(A.r,A.g,A.b),X=!0,G=String(A.r).substr(-1)==="%"?"prgb":"rgb";else if(HX(A.h)&&HX(A.s)&&HX(A.v))Y=CH(A.s),J=CH(A.v),Q=jsQ(A.h,Y,J),X=!0,G="hsv";else if(HX(A.h)&&HX(A.s)&&HX(A.l))Y=CH(A.s),C=CH(A.l),Q=wsQ(A.h,Y,C),X=!0,G="hsl";if(A.hasOwnProperty("a"))B=A.a}return B=_CA(B),{ok:X,format:A.format||G,r:Math.min(255,Math.max(Q.r,0)),g:Math.min(255,Math.max(Q.g,0)),b:Math.min(255,Math.max(Q.b,0)),a:B}}function RsQ(A,Q,B){return{r:N0(A,255)*255,g:N0(Q,255)*255,b:N0(B,255)*255}}function jCA(A,Q,B){A=N0(A,255),Q=N0(Q,255),B=N0(B,255);var Y=Math.max(A,Q,B),J=Math.min(A,Q,B),C,X,G=(Y+J)/2;if(Y==J)C=X=0;else{var F=Y-J;switch(X=G>0.5?F/(2-Y-J):F/(Y+J),Y){case A:C=(Q-B)/F+(Q1)U-=1;if(U<0.16666666666666666)return W+(Z-W)*6*U;if(U<0.5)return Z;if(U<0.6666666666666666)return W+(Z-W)*(0.6666666666666666-U)*6;return W}if(Q===0)Y=J=C=B;else{var G=B<0.5?B*(1+Q):B+Q-B*Q,F=2*B-G;Y=X(F,G,A+0.3333333333333333),J=X(F,G,A),C=X(F,G,A-0.3333333333333333)}return{r:Y*255,g:J*255,b:C*255}}function OCA(A,Q,B){A=N0(A,255),Q=N0(Q,255),B=N0(B,255);var Y=Math.max(A,Q,B),J=Math.min(A,Q,B),C,X,G=Y,F=Y-J;if(X=Y===0?0:F/Y,Y==J)C=0;else{switch(Y){case A:C=(Q-B)/F+(Q>1)+720)%360;--Q;)Y.h=(Y.h+J)%360,C.push(oA(Y));return C}function fsQ(A,Q){Q=Q||6;var B=oA(A).toHsv(),Y=B.h,J=B.s,C=B.v,X=[],G=1/Q;while(Q--)X.push(oA({h:Y,s:J,v:C})),C=(C+G)%1;return X}oA.mix=function(A,Q,B){B=B===0?0:B||50;var Y=oA(A).toRgb(),J=oA(Q).toRgb(),C=B/100,X={r:(J.r-Y.r)*C+Y.r,g:(J.g-Y.g)*C+Y.g,b:(J.b-Y.b)*C+Y.b,a:(J.a-Y.a)*C+Y.a};return oA(X)};oA.readability=function(A,Q){var B=oA(A),Y=oA(Q);return(Math.max(B.getLuminance(),Y.getLuminance())+0.05)/(Math.min(B.getLuminance(),Y.getLuminance())+0.05)};oA.isReadable=function(A,Q,B){var Y=oA.readability(A,Q),J,C;switch(C=!1,J=lsQ(B),J.level+J.size){case"AAsmall":case"AAAlarge":C=Y>=4.5;break;case"AAlarge":C=Y>=3;break;case"AAAsmall":C=Y>=7;break}return C};oA.mostReadable=function(A,Q,B){var Y=null,J=0,C,X,G,F;B=B||{},X=B.includeFallbackColors,G=B.level,F=B.size;for(var W=0;WJ)J=C,Y=oA(Q[W]);if(oA.isReadable(A,Y,{level:G,size:F})||!X)return Y;else return B.includeFallbackColors=!1,oA.mostReadable(A,["#fff","#000"],B)};var Lg=oA.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},bsQ=oA.hexNames=msQ(Lg);function msQ(A){var Q={};for(var B in A)if(A.hasOwnProperty(B))Q[A[B]]=B;return Q}function _CA(A){if(A=parseFloat(A),isNaN(A)||A<0||A>1)A=1;return A}function N0(A,Q){if(usQ(A))A="100%";var B=dsQ(A);if(A=Math.min(Q,Math.max(0,parseFloat(A))),B)A=parseInt(A*Q,10)/100;if(Math.abs(A-Q)<0.000001)return 1;return A%Q/parseFloat(Q)}function w3(A){return Math.min(1,Math.max(0,A))}function X8(A){return parseInt(A,16)}function usQ(A){return typeof A=="string"&&A.indexOf(".")!=-1&&parseFloat(A)===1}function dsQ(A){return typeof A==="string"&&A.indexOf("%")!=-1}function qC(A){return A.length==1?"0"+A:""+A}function CH(A){if(A<=1)A=A*100+"%";return A}function vCA(A){return Math.round(parseFloat(A)*255).toString(16)}function kCA(A){return X8(A)/255}var LC=function(){var A="[-\\+]?\\d+%?",Q="[-\\+]?\\d*\\.\\d+%?",B="(?:"+Q+")|(?:"+A+")",Y="[\\s|\\(]+("+B+")[,|\\s]+("+B+")[,|\\s]+("+B+")\\s*\\)?",J="[\\s|\\(]+("+B+")[,|\\s]+("+B+")[,|\\s]+("+B+")[,|\\s]+("+B+")\\s*\\)?";return{CSS_UNIT:new RegExp(B),rgb:new RegExp("rgb"+Y),rgba:new RegExp("rgba"+J),hsl:new RegExp("hsl"+Y),hsla:new RegExp("hsla"+J),hsv:new RegExp("hsv"+Y),hsva:new RegExp("hsva"+J),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/}}();function HX(A){return!!LC.CSS_UNIT.exec(A)}function csQ(A){A=A.replace(qsQ,"").replace(MsQ,"").toLowerCase();var Q=!1;if(Lg[A])A=Lg[A],Q=!0;else if(A=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var B;if(B=LC.rgb.exec(A))return{r:B[1],g:B[2],b:B[3]};if(B=LC.rgba.exec(A))return{r:B[1],g:B[2],b:B[3],a:B[4]};if(B=LC.hsl.exec(A))return{h:B[1],s:B[2],l:B[3]};if(B=LC.hsla.exec(A))return{h:B[1],s:B[2],l:B[3],a:B[4]};if(B=LC.hsv.exec(A))return{h:B[1],s:B[2],v:B[3]};if(B=LC.hsva.exec(A))return{h:B[1],s:B[2],v:B[3],a:B[4]};if(B=LC.hex8.exec(A))return{r:X8(B[1]),g:X8(B[2]),b:X8(B[3]),a:kCA(B[4]),format:Q?"name":"hex8"};if(B=LC.hex6.exec(A))return{r:X8(B[1]),g:X8(B[2]),b:X8(B[3]),format:Q?"name":"hex"};if(B=LC.hex4.exec(A))return{r:X8(B[1]+""+B[1]),g:X8(B[2]+""+B[2]),b:X8(B[3]+""+B[3]),a:kCA(B[4]+""+B[4]),format:Q?"name":"hex8"};if(B=LC.hex3.exec(A))return{r:X8(B[1]+""+B[1]),g:X8(B[2]+""+B[2]),b:X8(B[3]+""+B[3]),format:Q?"name":"hex"};return!1}function lsQ(A){var Q,B;if(A=A||{level:"AA",size:"small"},Q=(A.level||"AA").toUpperCase(),B=(A.size||"small").toLowerCase(),Q!=="AA"&&Q!=="AAA")Q="AA";if(B!=="small"&&B!=="large")B="small";return{level:Q,size:B}}function G8(A){let Q={width:A.bitmap.width,height:A.bitmap.height,data:Buffer.from(A.bitmap.data)};return new A.constructor(Q)}function G5(A,Q,B,Y,J,C){let X,G,F,W,Z;if(typeof Q==="function")Z=Q,X=0,G=0,F=A.bitmap.width,W=A.bitmap.height;else{if(X=Q,typeof B!=="number")throw Error("y must be a number");if(G=B,typeof Y!=="number")throw Error("w must be a number");if(F=Y,typeof J!=="number")throw Error("h must be a number");if(W=J,typeof C!=="function")throw Error("cb must be a function");Z=C}X=Math.round(X),G=Math.round(G),F=Math.round(F),W=Math.round(W);let U=Z.bind(A);for(let $=G;$Math.pow(G,2),{max:Y}=Math,J=195075,C="a"in A?A.a:255,X="a"in Q?Q.a:255;return(Y(B(A.r-Q.r),B(A.r-Q.r-C+X))+Y(B(A.g-Q.g),B(A.g-Q.g-C+X))+Y(B(A.b-Q.b),B(A.b-Q.b-C+X)))/195075}function L0(A){return A=Math.max(A,0),A=Math.min(A,255),A}function hCA(A){if(typeof A==="number")return A;return parseInt(oA(A).toHex8(),16)}function gCA(A,Q={}){return G5({bitmap:A},0,0,A.width,A.height,function(B,Y,J){let C=A.data[J+0],X=A.data[J+1],G=A.data[J+2],F=A.data[J+3];A.data[J+0]=F,A.data[J+1]=G,A.data[J+2]=X,A.data[J+3]=C}),wCA({...A,...Q}).data}function xCA(A,Q){let B=RCA(A,Q);return G5({bitmap:B},0,0,B.width,B.height,function(Y,J,C){let X=B.data[C+1],G=B.data[C+2],F=B.data[C+3];B.data[C+0]=F,B.data[C+1]=G,B.data[C+2]=X,B.data[C+3]=255}),B}function fCA(){return{mime:"image/x-ms-bmp",encode:gCA,decode:xCA}}function j3(){return{mime:"image/bmp",encode:gCA,decode:xCA}}var d1A=qA(qg(),1),F7=qA(u1A(),1);function x3(){return{mime:"image/gif",encode:async(A)=>{let Q=new F7.BitmapImage(A);F7.GifUtil.quantizeDekker(Q,256);let B=new F7.GifFrame(A);return(await new F7.GifCodec().encodeGif([B],{})).buffer},decode:(A)=>{let Q=new d1A.default.GifReader(A),B=Buffer.alloc(Q.width*Q.height*4);return Q.decodeAndBlitFrameRGBA(0,B),{data:B,width:Q.width,height:Q.height}}}}var hg=qA(r1A(),1);function b3(){return{mime:"image/jpeg",encode:(A,{quality:Q=100}={})=>hg.default.encode(A,Q).data,decode:(A,Q)=>hg.default.decode(A,Q)}}var u3=qA(u6A(),1);var m3;(function(A){A[A.AUTO=-1]="AUTO",A[A.NONE=0]="NONE",A[A.SUB=1]="SUB",A[A.UP=2]="UP",A[A.AVERAGE=3]="AVERAGE",A[A.PATH=4]="PATH"})(m3||(m3={}));var IH;(function(A){A[A.GRAYSCALE=0]="GRAYSCALE",A[A.COLOR=2]="COLOR",A[A.GRAYSCALE_ALPHA=4]="GRAYSCALE_ALPHA",A[A.COLOR_ALPHA=6]="COLOR_ALPHA"})(IH||(IH={}));function d3(){return{mime:"image/png",hasAlpha:!0,encode:(A,{deflateLevel:Q=9,deflateStrategy:B=3,filterType:Y=m3.AUTO,colorType:J,inputHasAlpha:C=!0,...X}={})=>{let G=new u3.PNG({width:A.width,height:A.height});return G.data=A.data,u3.PNG.sync.write(G,{...X,deflateLevel:Q,deflateStrategy:B,filterType:Y,colorType:typeof J<"u"?J:C?IH.COLOR_ALPHA:IH.COLOR,inputHasAlpha:C})},decode:(A,Q)=>{let B=u3.PNG.sync.read(A,Q);return{data:B.data,width:B.width,height:B.height}}}}var kH=qA(SGA(),1);function kGA(A){if(typeof A==="number")return A;if(A instanceof Uint8Array)return A[0];if(typeof A[0]==="string")return parseInt(A[0]);return A[0]}function CR(){return{mime:"image/tiff",encode:(A)=>{let Q=kH.default.encodeImage(A.data,A.width,A.height);return Buffer.from(Q)},decode:(A)=>{let Q=kH.default.decode(A),B=Q[0];if(!B)throw Error("No page found in TIFF");if(!B.t256)throw Error("No image width found in TIFF");if(!B.t257)throw Error("No image height found in TIFF");Q.forEach((J)=>{kH.default.decodeImage(A,J)});let Y=kH.default.toRGBA8(B);return{data:Buffer.from(Y),width:kGA(B.t256),height:kGA(B.t257)}}}}var s={};fG(s,{void:()=>nAB,util:()=>WB,unknown:()=>pAB,union:()=>oAB,undefined:()=>dAB,tuple:()=>AQB,transformer:()=>ZQB,symbol:()=>uAB,string:()=>mGA,strictObject:()=>aAB,setErrorMap:()=>UAB,set:()=>YQB,record:()=>QQB,quotelessJson:()=>ZAB,promise:()=>WQB,preprocess:()=>EQB,pipeline:()=>KQB,ostring:()=>VQB,optional:()=>$QB,onumber:()=>IQB,oboolean:()=>HQB,objectUtil:()=>_x,object:()=>rAB,number:()=>uGA,nullable:()=>UQB,null:()=>cAB,never:()=>iAB,nativeEnum:()=>FQB,nan:()=>fAB,map:()=>BQB,makeIssue:()=>_H,literal:()=>XQB,lazy:()=>CQB,late:()=>gAB,isValid:()=>H7,isDirty:()=>GR,isAsync:()=>qU,isAborted:()=>XR,intersection:()=>eAB,instanceof:()=>xAB,getParsedType:()=>b1,getErrorMap:()=>LU,function:()=>JQB,enum:()=>GQB,effect:()=>ZQB,discriminatedUnion:()=>tAB,defaultErrorMap:()=>RX,datetimeRegex:()=>xGA,date:()=>mAB,custom:()=>bGA,coerce:()=>DQB,boolean:()=>dGA,bigint:()=>bAB,array:()=>sAB,any:()=>lAB,addIssueToContext:()=>xA,ZodVoid:()=>yH,ZodUnknown:()=>D7,ZodUnion:()=>OU,ZodUndefined:()=>wU,ZodType:()=>JB,ZodTuple:()=>u1,ZodTransformer:()=>TC,ZodSymbol:()=>vH,ZodString:()=>wC,ZodSet:()=>tW,ZodSchema:()=>JB,ZodRecord:()=>hH,ZodReadonly:()=>yU,ZodPromise:()=>eW,ZodPipeline:()=>fH,ZodParsedType:()=>kA,ZodOptional:()=>OC,ZodObject:()=>k0,ZodNumber:()=>N7,ZodNullable:()=>jX,ZodNull:()=>jU,ZodNever:()=>m1,ZodNativeEnum:()=>kU,ZodNaN:()=>xH,ZodMap:()=>gH,ZodLiteral:()=>SU,ZodLazy:()=>TU,ZodIssueCode:()=>RA,ZodIntersection:()=>PU,ZodFunction:()=>zU,ZodFirstPartyTypeKind:()=>zQ,ZodError:()=>T9,ZodEnum:()=>q7,ZodEffects:()=>TC,ZodDiscriminatedUnion:()=>FR,ZodDefault:()=>_U,ZodDate:()=>aW,ZodCatch:()=>vU,ZodBranded:()=>WR,ZodBoolean:()=>RU,ZodBigInt:()=>L7,ZodArray:()=>jC,ZodAny:()=>oW,Schema:()=>JB,ParseStatus:()=>YJ,OK:()=>LJ,NEVER:()=>NQB,INVALID:()=>LQ,EMPTY_PATH:()=>EAB,DIRTY:()=>rW,BRAND:()=>hAB});var WB;(function(A){A.assertEqual=(J)=>{};function Q(J){}A.assertIs=Q;function B(J){throw Error()}A.assertNever=B,A.arrayToEnum=(J)=>{let C={};for(let X of J)C[X]=X;return C},A.getValidEnumValues=(J)=>{let C=A.objectKeys(J).filter((G)=>typeof J[J[G]]!=="number"),X={};for(let G of C)X[G]=J[G];return A.objectValues(X)},A.objectValues=(J)=>{return A.objectKeys(J).map(function(C){return J[C]})},A.objectKeys=typeof Object.keys==="function"?(J)=>Object.keys(J):(J)=>{let C=[];for(let X in J)if(Object.prototype.hasOwnProperty.call(J,X))C.push(X);return C},A.find=(J,C)=>{for(let X of J)if(C(X))return X;return},A.isInteger=typeof Number.isInteger==="function"?(J)=>Number.isInteger(J):(J)=>typeof J==="number"&&Number.isFinite(J)&&Math.floor(J)===J;function Y(J,C=" | "){return J.map((X)=>typeof X==="string"?`'${X}'`:X).join(C)}A.joinValues=Y,A.jsonStringifyReplacer=(J,C)=>{if(typeof C==="bigint")return C.toString();return C}})(WB||(WB={}));var _x;(function(A){A.mergeShapes=(Q,B)=>{return{...Q,...B}}})(_x||(_x={}));var kA=WB.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),b1=(A)=>{switch(typeof A){case"undefined":return kA.undefined;case"string":return kA.string;case"number":return Number.isNaN(A)?kA.nan:kA.number;case"boolean":return kA.boolean;case"function":return kA.function;case"bigint":return kA.bigint;case"symbol":return kA.symbol;case"object":if(Array.isArray(A))return kA.array;if(A===null)return kA.null;if(A.then&&typeof A.then==="function"&&A.catch&&typeof A.catch==="function")return kA.promise;if(typeof Map<"u"&&A instanceof Map)return kA.map;if(typeof Set<"u"&&A instanceof Set)return kA.set;if(typeof Date<"u"&&A instanceof Date)return kA.date;return kA.object;default:return kA.unknown}};var RA=WB.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),ZAB=(A)=>{return JSON.stringify(A,null,2).replace(/"([^"]+)":/g,"$1:")};class T9 extends Error{get errors(){return this.issues}constructor(A){super();this.issues=[],this.addIssue=(B)=>{this.issues=[...this.issues,B]},this.addIssues=(B=[])=>{this.issues=[...this.issues,...B]};let Q=new.target.prototype;if(Object.setPrototypeOf)Object.setPrototypeOf(this,Q);else this.__proto__=Q;this.name="ZodError",this.issues=A}format(A){let Q=A||function(J){return J.message},B={_errors:[]},Y=(J)=>{for(let C of J.issues)if(C.code==="invalid_union")C.unionErrors.map(Y);else if(C.code==="invalid_return_type")Y(C.returnTypeError);else if(C.code==="invalid_arguments")Y(C.argumentsError);else if(C.path.length===0)B._errors.push(Q(C));else{let X=B,G=0;while(GQ.message){let Q={},B=[];for(let Y of this.issues)if(Y.path.length>0){let J=Y.path[0];Q[J]=Q[J]||[],Q[J].push(A(Y))}else B.push(A(Y));return{formErrors:B,fieldErrors:Q}}get formErrors(){return this.flatten()}}T9.create=(A)=>{return new T9(A)};var $AB=(A,Q)=>{let B;switch(A.code){case RA.invalid_type:if(A.received===kA.undefined)B="Required";else B=`Expected ${A.expected}, received ${A.received}`;break;case RA.invalid_literal:B=`Invalid literal value, expected ${JSON.stringify(A.expected,WB.jsonStringifyReplacer)}`;break;case RA.unrecognized_keys:B=`Unrecognized key(s) in object: ${WB.joinValues(A.keys,", ")}`;break;case RA.invalid_union:B="Invalid input";break;case RA.invalid_union_discriminator:B=`Invalid discriminator value. Expected ${WB.joinValues(A.options)}`;break;case RA.invalid_enum_value:B=`Invalid enum value. Expected ${WB.joinValues(A.options)}, received '${A.received}'`;break;case RA.invalid_arguments:B="Invalid function arguments";break;case RA.invalid_return_type:B="Invalid function return type";break;case RA.invalid_date:B="Invalid date";break;case RA.invalid_string:if(typeof A.validation==="object")if("includes"in A.validation){if(B=`Invalid input: must include "${A.validation.includes}"`,typeof A.validation.position==="number")B=`${B} at one or more positions greater than or equal to ${A.validation.position}`}else if("startsWith"in A.validation)B=`Invalid input: must start with "${A.validation.startsWith}"`;else if("endsWith"in A.validation)B=`Invalid input: must end with "${A.validation.endsWith}"`;else WB.assertNever(A.validation);else if(A.validation!=="regex")B=`Invalid ${A.validation}`;else B="Invalid";break;case RA.too_small:if(A.type==="array")B=`Array must contain ${A.exact?"exactly":A.inclusive?"at least":"more than"} ${A.minimum} element(s)`;else if(A.type==="string")B=`String must contain ${A.exact?"exactly":A.inclusive?"at least":"over"} ${A.minimum} character(s)`;else if(A.type==="number")B=`Number must be ${A.exact?"exactly equal to ":A.inclusive?"greater than or equal to ":"greater than "}${A.minimum}`;else if(A.type==="bigint")B=`Number must be ${A.exact?"exactly equal to ":A.inclusive?"greater than or equal to ":"greater than "}${A.minimum}`;else if(A.type==="date")B=`Date must be ${A.exact?"exactly equal to ":A.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(A.minimum))}`;else B="Invalid input";break;case RA.too_big:if(A.type==="array")B=`Array must contain ${A.exact?"exactly":A.inclusive?"at most":"less than"} ${A.maximum} element(s)`;else if(A.type==="string")B=`String must contain ${A.exact?"exactly":A.inclusive?"at most":"under"} ${A.maximum} character(s)`;else if(A.type==="number")B=`Number must be ${A.exact?"exactly":A.inclusive?"less than or equal to":"less than"} ${A.maximum}`;else if(A.type==="bigint")B=`BigInt must be ${A.exact?"exactly":A.inclusive?"less than or equal to":"less than"} ${A.maximum}`;else if(A.type==="date")B=`Date must be ${A.exact?"exactly":A.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(A.maximum))}`;else B="Invalid input";break;case RA.custom:B="Invalid input";break;case RA.invalid_intersection_types:B="Intersection results could not be merged";break;case RA.not_multiple_of:B=`Number must be a multiple of ${A.multipleOf}`;break;case RA.not_finite:B="Number must be finite";break;default:B=Q.defaultError,WB.assertNever(A)}return{message:B}},RX=$AB;var _GA=RX;function UAB(A){_GA=A}function LU(){return _GA}var _H=(A)=>{let{data:Q,path:B,errorMaps:Y,issueData:J}=A,C=[...B,...J.path||[]],X={...J,path:C};if(J.message!==void 0)return{...J,path:C,message:J.message};let G="",F=Y.filter((W)=>!!W).slice().reverse();for(let W of F)G=W(X,{data:Q,defaultError:G}).message;return{...J,path:C,message:G}},EAB=[];function xA(A,Q){let B=LU(),Y=_H({issueData:Q,data:A.data,path:A.path,errorMaps:[A.common.contextualErrorMap,A.schemaErrorMap,B,B===RX?void 0:RX].filter((J)=>!!J)});A.common.issues.push(Y)}class YJ{constructor(){this.value="valid"}dirty(){if(this.value==="valid")this.value="dirty"}abort(){if(this.value!=="aborted")this.value="aborted"}static mergeArray(A,Q){let B=[];for(let Y of Q){if(Y.status==="aborted")return LQ;if(Y.status==="dirty")A.dirty();B.push(Y.value)}return{status:A.value,value:B}}static async mergeObjectAsync(A,Q){let B=[];for(let Y of Q){let J=await Y.key,C=await Y.value;B.push({key:J,value:C})}return YJ.mergeObjectSync(A,B)}static mergeObjectSync(A,Q){let B={};for(let Y of Q){let{key:J,value:C}=Y;if(J.status==="aborted")return LQ;if(C.status==="aborted")return LQ;if(J.status==="dirty")A.dirty();if(C.status==="dirty")A.dirty();if(J.value!=="__proto__"&&(typeof C.value<"u"||Y.alwaysSet))B[J.value]=C.value}return{status:A.value,value:B}}}var LQ=Object.freeze({status:"aborted"}),rW=(A)=>({status:"dirty",value:A}),LJ=(A)=>({status:"valid",value:A}),XR=(A)=>A.status==="aborted",GR=(A)=>A.status==="dirty",H7=(A)=>A.status==="valid",qU=(A)=>typeof Promise<"u"&&A instanceof Promise;var tA;(function(A){A.errToObj=(Q)=>typeof Q==="string"?{message:Q}:Q||{},A.toString=(Q)=>typeof Q==="string"?Q:Q?.message})(tA||(tA={}));class PC{constructor(A,Q,B,Y){this._cachedPath=[],this.parent=A,this.data=Q,this._path=B,this._key=Y}get path(){if(!this._cachedPath.length)if(Array.isArray(this._key))this._cachedPath.push(...this._path,...this._key);else this._cachedPath.push(...this._path,this._key);return this._cachedPath}}var vGA=(A,Q)=>{if(H7(Q))return{success:!0,data:Q.value};else{if(!A.common.issues.length)throw Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let B=new T9(A.common.issues);return this._error=B,this._error}}}};function pQ(A){if(!A)return{};let{errorMap:Q,invalid_type_error:B,required_error:Y,description:J}=A;if(Q&&(B||Y))throw Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);if(Q)return{errorMap:Q,description:J};return{errorMap:(X,G)=>{let{message:F}=A;if(X.code==="invalid_enum_value")return{message:F??G.defaultError};if(typeof G.data>"u")return{message:F??Y??G.defaultError};if(X.code!=="invalid_type")return{message:G.defaultError};return{message:F??B??G.defaultError}},description:J}}class JB{get description(){return this._def.description}_getType(A){return b1(A.data)}_getOrReturnCtx(A,Q){return Q||{common:A.parent.common,data:A.data,parsedType:b1(A.data),schemaErrorMap:this._def.errorMap,path:A.path,parent:A.parent}}_processInputParams(A){return{status:new YJ,ctx:{common:A.parent.common,data:A.data,parsedType:b1(A.data),schemaErrorMap:this._def.errorMap,path:A.path,parent:A.parent}}}_parseSync(A){let Q=this._parse(A);if(qU(Q))throw Error("Synchronous parse encountered promise.");return Q}_parseAsync(A){let Q=this._parse(A);return Promise.resolve(Q)}parse(A,Q){let B=this.safeParse(A,Q);if(B.success)return B.data;throw B.error}safeParse(A,Q){let B={common:{issues:[],async:Q?.async??!1,contextualErrorMap:Q?.errorMap},path:Q?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:A,parsedType:b1(A)},Y=this._parseSync({data:A,path:B.path,parent:B});return vGA(B,Y)}"~validate"(A){let Q={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:A,parsedType:b1(A)};if(!this["~standard"].async)try{let B=this._parseSync({data:A,path:[],parent:Q});return H7(B)?{value:B.value}:{issues:Q.common.issues}}catch(B){if(B?.message?.toLowerCase()?.includes("encountered"))this["~standard"].async=!0;Q.common={issues:[],async:!0}}return this._parseAsync({data:A,path:[],parent:Q}).then((B)=>H7(B)?{value:B.value}:{issues:Q.common.issues})}async parseAsync(A,Q){let B=await this.safeParseAsync(A,Q);if(B.success)return B.data;throw B.error}async safeParseAsync(A,Q){let B={common:{issues:[],contextualErrorMap:Q?.errorMap,async:!0},path:Q?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:A,parsedType:b1(A)},Y=this._parse({data:A,path:B.path,parent:B}),J=await(qU(Y)?Y:Promise.resolve(Y));return vGA(B,J)}refine(A,Q){let B=(Y)=>{if(typeof Q==="string"||typeof Q>"u")return{message:Q};else if(typeof Q==="function")return Q(Y);else return Q};return this._refinement((Y,J)=>{let C=A(Y),X=()=>J.addIssue({code:RA.custom,...B(Y)});if(typeof Promise<"u"&&C instanceof Promise)return C.then((G)=>{if(!G)return X(),!1;else return!0});if(!C)return X(),!1;else return!0})}refinement(A,Q){return this._refinement((B,Y)=>{if(!A(B))return Y.addIssue(typeof Q==="function"?Q(B,Y):Q),!1;else return!0})}_refinement(A){return new TC({schema:this,typeName:zQ.ZodEffects,effect:{type:"refinement",refinement:A}})}superRefine(A){return this._refinement(A)}constructor(A){this.spa=this.safeParseAsync,this._def=A,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:(Q)=>this["~validate"](Q)}}optional(){return OC.create(this,this._def)}nullable(){return jX.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return jC.create(this)}promise(){return eW.create(this,this._def)}or(A){return OU.create([this,A],this._def)}and(A){return PU.create(this,A,this._def)}transform(A){return new TC({...pQ(this._def),schema:this,typeName:zQ.ZodEffects,effect:{type:"transform",transform:A}})}default(A){let Q=typeof A==="function"?A:()=>A;return new _U({...pQ(this._def),innerType:this,defaultValue:Q,typeName:zQ.ZodDefault})}brand(){return new WR({typeName:zQ.ZodBranded,type:this,...pQ(this._def)})}catch(A){let Q=typeof A==="function"?A:()=>A;return new vU({...pQ(this._def),innerType:this,catchValue:Q,typeName:zQ.ZodCatch})}describe(A){return new this.constructor({...this._def,description:A})}pipe(A){return fH.create(this,A)}readonly(){return yU.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}var KAB=/^c[^\s-]{8,}$/i,VAB=/^[0-9a-z]+$/,IAB=/^[0-9A-HJKMNP-TV-Z]{26}$/i,HAB=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,DAB=/^[a-z0-9_-]{21}$/i,NAB=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,LAB=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,qAB=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,MAB="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",vx,zAB=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,RAB=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,wAB=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,jAB=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,OAB=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,PAB=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,hGA="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",TAB=new RegExp(`^${hGA}$`);function gGA(A){let Q="[0-5]\\d";if(A.precision)Q=`${Q}\\.\\d{${A.precision}}`;else if(A.precision==null)Q=`${Q}(\\.\\d+)?`;let B=A.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${Q})${B}`}function SAB(A){return new RegExp(`^${gGA(A)}$`)}function xGA(A){let Q=`${hGA}T${gGA(A)}`,B=[];if(B.push(A.local?"Z?":"Z"),A.offset)B.push("([+-]\\d{2}:?\\d{2})");return Q=`${Q}(${B.join("|")})`,new RegExp(`^${Q}$`)}function kAB(A,Q){if((Q==="v4"||!Q)&&zAB.test(A))return!0;if((Q==="v6"||!Q)&&wAB.test(A))return!0;return!1}function _AB(A,Q){if(!NAB.test(A))return!1;try{let[B]=A.split(".");if(!B)return!1;let Y=B.replace(/-/g,"+").replace(/_/g,"/").padEnd(B.length+(4-B.length%4)%4,"="),J=JSON.parse(atob(Y));if(typeof J!=="object"||J===null)return!1;if("typ"in J&&J?.typ!=="JWT")return!1;if(!J.alg)return!1;if(Q&&J.alg!==Q)return!1;return!0}catch{return!1}}function vAB(A,Q){if((Q==="v4"||!Q)&&RAB.test(A))return!0;if((Q==="v6"||!Q)&&jAB.test(A))return!0;return!1}class wC extends JB{_parse(A){if(this._def.coerce)A.data=String(A.data);if(this._getType(A)!==kA.string){let J=this._getOrReturnCtx(A);return xA(J,{code:RA.invalid_type,expected:kA.string,received:J.parsedType}),LQ}let B=new YJ,Y=void 0;for(let J of this._def.checks)if(J.kind==="min"){if(A.data.lengthJ.value)Y=this._getOrReturnCtx(A,Y),xA(Y,{code:RA.too_big,maximum:J.value,type:"string",inclusive:!0,exact:!1,message:J.message}),B.dirty()}else if(J.kind==="length"){let C=A.data.length>J.value,X=A.data.lengthA.test(Y),{validation:Q,code:RA.invalid_string,...tA.errToObj(B)})}_addCheck(A){return new wC({...this._def,checks:[...this._def.checks,A]})}email(A){return this._addCheck({kind:"email",...tA.errToObj(A)})}url(A){return this._addCheck({kind:"url",...tA.errToObj(A)})}emoji(A){return this._addCheck({kind:"emoji",...tA.errToObj(A)})}uuid(A){return this._addCheck({kind:"uuid",...tA.errToObj(A)})}nanoid(A){return this._addCheck({kind:"nanoid",...tA.errToObj(A)})}cuid(A){return this._addCheck({kind:"cuid",...tA.errToObj(A)})}cuid2(A){return this._addCheck({kind:"cuid2",...tA.errToObj(A)})}ulid(A){return this._addCheck({kind:"ulid",...tA.errToObj(A)})}base64(A){return this._addCheck({kind:"base64",...tA.errToObj(A)})}base64url(A){return this._addCheck({kind:"base64url",...tA.errToObj(A)})}jwt(A){return this._addCheck({kind:"jwt",...tA.errToObj(A)})}ip(A){return this._addCheck({kind:"ip",...tA.errToObj(A)})}cidr(A){return this._addCheck({kind:"cidr",...tA.errToObj(A)})}datetime(A){if(typeof A==="string")return this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:A});return this._addCheck({kind:"datetime",precision:typeof A?.precision>"u"?null:A?.precision,offset:A?.offset??!1,local:A?.local??!1,...tA.errToObj(A?.message)})}date(A){return this._addCheck({kind:"date",message:A})}time(A){if(typeof A==="string")return this._addCheck({kind:"time",precision:null,message:A});return this._addCheck({kind:"time",precision:typeof A?.precision>"u"?null:A?.precision,...tA.errToObj(A?.message)})}duration(A){return this._addCheck({kind:"duration",...tA.errToObj(A)})}regex(A,Q){return this._addCheck({kind:"regex",regex:A,...tA.errToObj(Q)})}includes(A,Q){return this._addCheck({kind:"includes",value:A,position:Q?.position,...tA.errToObj(Q?.message)})}startsWith(A,Q){return this._addCheck({kind:"startsWith",value:A,...tA.errToObj(Q)})}endsWith(A,Q){return this._addCheck({kind:"endsWith",value:A,...tA.errToObj(Q)})}min(A,Q){return this._addCheck({kind:"min",value:A,...tA.errToObj(Q)})}max(A,Q){return this._addCheck({kind:"max",value:A,...tA.errToObj(Q)})}length(A,Q){return this._addCheck({kind:"length",value:A,...tA.errToObj(Q)})}nonempty(A){return this.min(1,tA.errToObj(A))}trim(){return new wC({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new wC({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new wC({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find((A)=>A.kind==="datetime")}get isDate(){return!!this._def.checks.find((A)=>A.kind==="date")}get isTime(){return!!this._def.checks.find((A)=>A.kind==="time")}get isDuration(){return!!this._def.checks.find((A)=>A.kind==="duration")}get isEmail(){return!!this._def.checks.find((A)=>A.kind==="email")}get isURL(){return!!this._def.checks.find((A)=>A.kind==="url")}get isEmoji(){return!!this._def.checks.find((A)=>A.kind==="emoji")}get isUUID(){return!!this._def.checks.find((A)=>A.kind==="uuid")}get isNANOID(){return!!this._def.checks.find((A)=>A.kind==="nanoid")}get isCUID(){return!!this._def.checks.find((A)=>A.kind==="cuid")}get isCUID2(){return!!this._def.checks.find((A)=>A.kind==="cuid2")}get isULID(){return!!this._def.checks.find((A)=>A.kind==="ulid")}get isIP(){return!!this._def.checks.find((A)=>A.kind==="ip")}get isCIDR(){return!!this._def.checks.find((A)=>A.kind==="cidr")}get isBase64(){return!!this._def.checks.find((A)=>A.kind==="base64")}get isBase64url(){return!!this._def.checks.find((A)=>A.kind==="base64url")}get minLength(){let A=null;for(let Q of this._def.checks)if(Q.kind==="min"){if(A===null||Q.value>A)A=Q.value}return A}get maxLength(){let A=null;for(let Q of this._def.checks)if(Q.kind==="max"){if(A===null||Q.value{return new wC({checks:[],typeName:zQ.ZodString,coerce:A?.coerce??!1,...pQ(A)})};function yAB(A,Q){let B=(A.toString().split(".")[1]||"").length,Y=(Q.toString().split(".")[1]||"").length,J=B>Y?B:Y,C=Number.parseInt(A.toFixed(J).replace(".","")),X=Number.parseInt(Q.toFixed(J).replace(".",""));return C%X/10**J}class N7 extends JB{constructor(){super(...arguments);this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(A){if(this._def.coerce)A.data=Number(A.data);if(this._getType(A)!==kA.number){let J=this._getOrReturnCtx(A);return xA(J,{code:RA.invalid_type,expected:kA.number,received:J.parsedType}),LQ}let B=void 0,Y=new YJ;for(let J of this._def.checks)if(J.kind==="int"){if(!WB.isInteger(A.data))B=this._getOrReturnCtx(A,B),xA(B,{code:RA.invalid_type,expected:"integer",received:"float",message:J.message}),Y.dirty()}else if(J.kind==="min"){if(J.inclusive?A.dataJ.value:A.data>=J.value)B=this._getOrReturnCtx(A,B),xA(B,{code:RA.too_big,maximum:J.value,type:"number",inclusive:J.inclusive,exact:!1,message:J.message}),Y.dirty()}else if(J.kind==="multipleOf"){if(yAB(A.data,J.value)!==0)B=this._getOrReturnCtx(A,B),xA(B,{code:RA.not_multiple_of,multipleOf:J.value,message:J.message}),Y.dirty()}else if(J.kind==="finite"){if(!Number.isFinite(A.data))B=this._getOrReturnCtx(A,B),xA(B,{code:RA.not_finite,message:J.message}),Y.dirty()}else WB.assertNever(J);return{status:Y.value,value:A.data}}gte(A,Q){return this.setLimit("min",A,!0,tA.toString(Q))}gt(A,Q){return this.setLimit("min",A,!1,tA.toString(Q))}lte(A,Q){return this.setLimit("max",A,!0,tA.toString(Q))}lt(A,Q){return this.setLimit("max",A,!1,tA.toString(Q))}setLimit(A,Q,B,Y){return new N7({...this._def,checks:[...this._def.checks,{kind:A,value:Q,inclusive:B,message:tA.toString(Y)}]})}_addCheck(A){return new N7({...this._def,checks:[...this._def.checks,A]})}int(A){return this._addCheck({kind:"int",message:tA.toString(A)})}positive(A){return this._addCheck({kind:"min",value:0,inclusive:!1,message:tA.toString(A)})}negative(A){return this._addCheck({kind:"max",value:0,inclusive:!1,message:tA.toString(A)})}nonpositive(A){return this._addCheck({kind:"max",value:0,inclusive:!0,message:tA.toString(A)})}nonnegative(A){return this._addCheck({kind:"min",value:0,inclusive:!0,message:tA.toString(A)})}multipleOf(A,Q){return this._addCheck({kind:"multipleOf",value:A,message:tA.toString(Q)})}finite(A){return this._addCheck({kind:"finite",message:tA.toString(A)})}safe(A){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:tA.toString(A)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:tA.toString(A)})}get minValue(){let A=null;for(let Q of this._def.checks)if(Q.kind==="min"){if(A===null||Q.value>A)A=Q.value}return A}get maxValue(){let A=null;for(let Q of this._def.checks)if(Q.kind==="max"){if(A===null||Q.valueA.kind==="int"||A.kind==="multipleOf"&&WB.isInteger(A.value))}get isFinite(){let A=null,Q=null;for(let B of this._def.checks)if(B.kind==="finite"||B.kind==="int"||B.kind==="multipleOf")return!0;else if(B.kind==="min"){if(Q===null||B.value>Q)Q=B.value}else if(B.kind==="max"){if(A===null||B.value{return new N7({checks:[],typeName:zQ.ZodNumber,coerce:A?.coerce||!1,...pQ(A)})};class L7 extends JB{constructor(){super(...arguments);this.min=this.gte,this.max=this.lte}_parse(A){if(this._def.coerce)try{A.data=BigInt(A.data)}catch{return this._getInvalidInput(A)}if(this._getType(A)!==kA.bigint)return this._getInvalidInput(A);let B=void 0,Y=new YJ;for(let J of this._def.checks)if(J.kind==="min"){if(J.inclusive?A.dataJ.value:A.data>=J.value)B=this._getOrReturnCtx(A,B),xA(B,{code:RA.too_big,type:"bigint",maximum:J.value,inclusive:J.inclusive,message:J.message}),Y.dirty()}else if(J.kind==="multipleOf"){if(A.data%J.value!==BigInt(0))B=this._getOrReturnCtx(A,B),xA(B,{code:RA.not_multiple_of,multipleOf:J.value,message:J.message}),Y.dirty()}else WB.assertNever(J);return{status:Y.value,value:A.data}}_getInvalidInput(A){let Q=this._getOrReturnCtx(A);return xA(Q,{code:RA.invalid_type,expected:kA.bigint,received:Q.parsedType}),LQ}gte(A,Q){return this.setLimit("min",A,!0,tA.toString(Q))}gt(A,Q){return this.setLimit("min",A,!1,tA.toString(Q))}lte(A,Q){return this.setLimit("max",A,!0,tA.toString(Q))}lt(A,Q){return this.setLimit("max",A,!1,tA.toString(Q))}setLimit(A,Q,B,Y){return new L7({...this._def,checks:[...this._def.checks,{kind:A,value:Q,inclusive:B,message:tA.toString(Y)}]})}_addCheck(A){return new L7({...this._def,checks:[...this._def.checks,A]})}positive(A){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:tA.toString(A)})}negative(A){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:tA.toString(A)})}nonpositive(A){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:tA.toString(A)})}nonnegative(A){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:tA.toString(A)})}multipleOf(A,Q){return this._addCheck({kind:"multipleOf",value:A,message:tA.toString(Q)})}get minValue(){let A=null;for(let Q of this._def.checks)if(Q.kind==="min"){if(A===null||Q.value>A)A=Q.value}return A}get maxValue(){let A=null;for(let Q of this._def.checks)if(Q.kind==="max"){if(A===null||Q.value{return new L7({checks:[],typeName:zQ.ZodBigInt,coerce:A?.coerce??!1,...pQ(A)})};class RU extends JB{_parse(A){if(this._def.coerce)A.data=Boolean(A.data);if(this._getType(A)!==kA.boolean){let B=this._getOrReturnCtx(A);return xA(B,{code:RA.invalid_type,expected:kA.boolean,received:B.parsedType}),LQ}return LJ(A.data)}}RU.create=(A)=>{return new RU({typeName:zQ.ZodBoolean,coerce:A?.coerce||!1,...pQ(A)})};class aW extends JB{_parse(A){if(this._def.coerce)A.data=new Date(A.data);if(this._getType(A)!==kA.date){let J=this._getOrReturnCtx(A);return xA(J,{code:RA.invalid_type,expected:kA.date,received:J.parsedType}),LQ}if(Number.isNaN(A.data.getTime())){let J=this._getOrReturnCtx(A);return xA(J,{code:RA.invalid_date}),LQ}let B=new YJ,Y=void 0;for(let J of this._def.checks)if(J.kind==="min"){if(A.data.getTime()J.value)Y=this._getOrReturnCtx(A,Y),xA(Y,{code:RA.too_big,message:J.message,inclusive:!0,exact:!1,maximum:J.value,type:"date"}),B.dirty()}else WB.assertNever(J);return{status:B.value,value:new Date(A.data.getTime())}}_addCheck(A){return new aW({...this._def,checks:[...this._def.checks,A]})}min(A,Q){return this._addCheck({kind:"min",value:A.getTime(),message:tA.toString(Q)})}max(A,Q){return this._addCheck({kind:"max",value:A.getTime(),message:tA.toString(Q)})}get minDate(){let A=null;for(let Q of this._def.checks)if(Q.kind==="min"){if(A===null||Q.value>A)A=Q.value}return A!=null?new Date(A):null}get maxDate(){let A=null;for(let Q of this._def.checks)if(Q.kind==="max"){if(A===null||Q.value{return new aW({checks:[],coerce:A?.coerce||!1,typeName:zQ.ZodDate,...pQ(A)})};class vH extends JB{_parse(A){if(this._getType(A)!==kA.symbol){let B=this._getOrReturnCtx(A);return xA(B,{code:RA.invalid_type,expected:kA.symbol,received:B.parsedType}),LQ}return LJ(A.data)}}vH.create=(A)=>{return new vH({typeName:zQ.ZodSymbol,...pQ(A)})};class wU extends JB{_parse(A){if(this._getType(A)!==kA.undefined){let B=this._getOrReturnCtx(A);return xA(B,{code:RA.invalid_type,expected:kA.undefined,received:B.parsedType}),LQ}return LJ(A.data)}}wU.create=(A)=>{return new wU({typeName:zQ.ZodUndefined,...pQ(A)})};class jU extends JB{_parse(A){if(this._getType(A)!==kA.null){let B=this._getOrReturnCtx(A);return xA(B,{code:RA.invalid_type,expected:kA.null,received:B.parsedType}),LQ}return LJ(A.data)}}jU.create=(A)=>{return new jU({typeName:zQ.ZodNull,...pQ(A)})};class oW extends JB{constructor(){super(...arguments);this._any=!0}_parse(A){return LJ(A.data)}}oW.create=(A)=>{return new oW({typeName:zQ.ZodAny,...pQ(A)})};class D7 extends JB{constructor(){super(...arguments);this._unknown=!0}_parse(A){return LJ(A.data)}}D7.create=(A)=>{return new D7({typeName:zQ.ZodUnknown,...pQ(A)})};class m1 extends JB{_parse(A){let Q=this._getOrReturnCtx(A);return xA(Q,{code:RA.invalid_type,expected:kA.never,received:Q.parsedType}),LQ}}m1.create=(A)=>{return new m1({typeName:zQ.ZodNever,...pQ(A)})};class yH extends JB{_parse(A){if(this._getType(A)!==kA.undefined){let B=this._getOrReturnCtx(A);return xA(B,{code:RA.invalid_type,expected:kA.void,received:B.parsedType}),LQ}return LJ(A.data)}}yH.create=(A)=>{return new yH({typeName:zQ.ZodVoid,...pQ(A)})};class jC extends JB{_parse(A){let{ctx:Q,status:B}=this._processInputParams(A),Y=this._def;if(Q.parsedType!==kA.array)return xA(Q,{code:RA.invalid_type,expected:kA.array,received:Q.parsedType}),LQ;if(Y.exactLength!==null){let C=Q.data.length>Y.exactLength.value,X=Q.data.lengthY.maxLength.value)xA(Q,{code:RA.too_big,maximum:Y.maxLength.value,type:"array",inclusive:!0,exact:!1,message:Y.maxLength.message}),B.dirty()}if(Q.common.async)return Promise.all([...Q.data].map((C,X)=>{return Y.type._parseAsync(new PC(Q,C,Q.path,X))})).then((C)=>{return YJ.mergeArray(B,C)});let J=[...Q.data].map((C,X)=>{return Y.type._parseSync(new PC(Q,C,Q.path,X))});return YJ.mergeArray(B,J)}get element(){return this._def.type}min(A,Q){return new jC({...this._def,minLength:{value:A,message:tA.toString(Q)}})}max(A,Q){return new jC({...this._def,maxLength:{value:A,message:tA.toString(Q)}})}length(A,Q){return new jC({...this._def,exactLength:{value:A,message:tA.toString(Q)}})}nonempty(A){return this.min(1,A)}}jC.create=(A,Q)=>{return new jC({type:A,minLength:null,maxLength:null,exactLength:null,typeName:zQ.ZodArray,...pQ(Q)})};function MU(A){if(A instanceof k0){let Q={};for(let B in A.shape){let Y=A.shape[B];Q[B]=OC.create(MU(Y))}return new k0({...A._def,shape:()=>Q})}else if(A instanceof jC)return new jC({...A._def,type:MU(A.element)});else if(A instanceof OC)return OC.create(MU(A.unwrap()));else if(A instanceof jX)return jX.create(MU(A.unwrap()));else if(A instanceof u1)return u1.create(A.items.map((Q)=>MU(Q)));else return A}class k0 extends JB{constructor(){super(...arguments);this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let A=this._def.shape(),Q=WB.objectKeys(A);return this._cached={shape:A,keys:Q},this._cached}_parse(A){if(this._getType(A)!==kA.object){let F=this._getOrReturnCtx(A);return xA(F,{code:RA.invalid_type,expected:kA.object,received:F.parsedType}),LQ}let{status:B,ctx:Y}=this._processInputParams(A),{shape:J,keys:C}=this._getCached(),X=[];if(!(this._def.catchall instanceof m1&&this._def.unknownKeys==="strip")){for(let F in Y.data)if(!C.includes(F))X.push(F)}let G=[];for(let F of C){let W=J[F],Z=Y.data[F];G.push({key:{status:"valid",value:F},value:W._parse(new PC(Y,Z,Y.path,F)),alwaysSet:F in Y.data})}if(this._def.catchall instanceof m1){let F=this._def.unknownKeys;if(F==="passthrough")for(let W of X)G.push({key:{status:"valid",value:W},value:{status:"valid",value:Y.data[W]}});else if(F==="strict"){if(X.length>0)xA(Y,{code:RA.unrecognized_keys,keys:X}),B.dirty()}else if(F==="strip");else throw Error("Internal ZodObject error: invalid unknownKeys value.")}else{let F=this._def.catchall;for(let W of X){let Z=Y.data[W];G.push({key:{status:"valid",value:W},value:F._parse(new PC(Y,Z,Y.path,W)),alwaysSet:W in Y.data})}}if(Y.common.async)return Promise.resolve().then(async()=>{let F=[];for(let W of G){let Z=await W.key,U=await W.value;F.push({key:Z,value:U,alwaysSet:W.alwaysSet})}return F}).then((F)=>{return YJ.mergeObjectSync(B,F)});else return YJ.mergeObjectSync(B,G)}get shape(){return this._def.shape()}strict(A){return tA.errToObj,new k0({...this._def,unknownKeys:"strict",...A!==void 0?{errorMap:(Q,B)=>{let Y=this._def.errorMap?.(Q,B).message??B.defaultError;if(Q.code==="unrecognized_keys")return{message:tA.errToObj(A).message??Y};return{message:Y}}}:{}})}strip(){return new k0({...this._def,unknownKeys:"strip"})}passthrough(){return new k0({...this._def,unknownKeys:"passthrough"})}extend(A){return new k0({...this._def,shape:()=>({...this._def.shape(),...A})})}merge(A){return new k0({unknownKeys:A._def.unknownKeys,catchall:A._def.catchall,shape:()=>({...this._def.shape(),...A._def.shape()}),typeName:zQ.ZodObject})}setKey(A,Q){return this.augment({[A]:Q})}catchall(A){return new k0({...this._def,catchall:A})}pick(A){let Q={};for(let B of WB.objectKeys(A))if(A[B]&&this.shape[B])Q[B]=this.shape[B];return new k0({...this._def,shape:()=>Q})}omit(A){let Q={};for(let B of WB.objectKeys(this.shape))if(!A[B])Q[B]=this.shape[B];return new k0({...this._def,shape:()=>Q})}deepPartial(){return MU(this)}partial(A){let Q={};for(let B of WB.objectKeys(this.shape)){let Y=this.shape[B];if(A&&!A[B])Q[B]=Y;else Q[B]=Y.optional()}return new k0({...this._def,shape:()=>Q})}required(A){let Q={};for(let B of WB.objectKeys(this.shape))if(A&&!A[B])Q[B]=this.shape[B];else{let J=this.shape[B];while(J instanceof OC)J=J._def.innerType;Q[B]=J}return new k0({...this._def,shape:()=>Q})}keyof(){return fGA(WB.objectKeys(this.shape))}}k0.create=(A,Q)=>{return new k0({shape:()=>A,unknownKeys:"strip",catchall:m1.create(),typeName:zQ.ZodObject,...pQ(Q)})};k0.strictCreate=(A,Q)=>{return new k0({shape:()=>A,unknownKeys:"strict",catchall:m1.create(),typeName:zQ.ZodObject,...pQ(Q)})};k0.lazycreate=(A,Q)=>{return new k0({shape:A,unknownKeys:"strip",catchall:m1.create(),typeName:zQ.ZodObject,...pQ(Q)})};class OU extends JB{_parse(A){let{ctx:Q}=this._processInputParams(A),B=this._def.options;function Y(J){for(let X of J)if(X.result.status==="valid")return X.result;for(let X of J)if(X.result.status==="dirty")return Q.common.issues.push(...X.ctx.common.issues),X.result;let C=J.map((X)=>new T9(X.ctx.common.issues));return xA(Q,{code:RA.invalid_union,unionErrors:C}),LQ}if(Q.common.async)return Promise.all(B.map(async(J)=>{let C={...Q,common:{...Q.common,issues:[]},parent:null};return{result:await J._parseAsync({data:Q.data,path:Q.path,parent:C}),ctx:C}})).then(Y);else{let J=void 0,C=[];for(let G of B){let F={...Q,common:{...Q.common,issues:[]},parent:null},W=G._parseSync({data:Q.data,path:Q.path,parent:F});if(W.status==="valid")return W;else if(W.status==="dirty"&&!J)J={result:W,ctx:F};if(F.common.issues.length)C.push(F.common.issues)}if(J)return Q.common.issues.push(...J.ctx.common.issues),J.result;let X=C.map((G)=>new T9(G));return xA(Q,{code:RA.invalid_union,unionErrors:X}),LQ}}get options(){return this._def.options}}OU.create=(A,Q)=>{return new OU({options:A,typeName:zQ.ZodUnion,...pQ(Q)})};var wX=(A)=>{if(A instanceof TU)return wX(A.schema);else if(A instanceof TC)return wX(A.innerType());else if(A instanceof SU)return[A.value];else if(A instanceof q7)return A.options;else if(A instanceof kU)return WB.objectValues(A.enum);else if(A instanceof _U)return wX(A._def.innerType);else if(A instanceof wU)return[void 0];else if(A instanceof jU)return[null];else if(A instanceof OC)return[void 0,...wX(A.unwrap())];else if(A instanceof jX)return[null,...wX(A.unwrap())];else if(A instanceof WR)return wX(A.unwrap());else if(A instanceof yU)return wX(A.unwrap());else if(A instanceof vU)return wX(A._def.innerType);else return[]};class FR extends JB{_parse(A){let{ctx:Q}=this._processInputParams(A);if(Q.parsedType!==kA.object)return xA(Q,{code:RA.invalid_type,expected:kA.object,received:Q.parsedType}),LQ;let B=this.discriminator,Y=Q.data[B],J=this.optionsMap.get(Y);if(!J)return xA(Q,{code:RA.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[B]}),LQ;if(Q.common.async)return J._parseAsync({data:Q.data,path:Q.path,parent:Q});else return J._parseSync({data:Q.data,path:Q.path,parent:Q})}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(A,Q,B){let Y=new Map;for(let J of Q){let C=wX(J.shape[A]);if(!C.length)throw Error(`A discriminator value for key \`${A}\` could not be extracted from all schema options`);for(let X of C){if(Y.has(X))throw Error(`Discriminator property ${String(A)} has duplicate value ${String(X)}`);Y.set(X,J)}}return new FR({typeName:zQ.ZodDiscriminatedUnion,discriminator:A,options:Q,optionsMap:Y,...pQ(B)})}}function yx(A,Q){let B=b1(A),Y=b1(Q);if(A===Q)return{valid:!0,data:A};else if(B===kA.object&&Y===kA.object){let J=WB.objectKeys(Q),C=WB.objectKeys(A).filter((G)=>J.indexOf(G)!==-1),X={...A,...Q};for(let G of C){let F=yx(A[G],Q[G]);if(!F.valid)return{valid:!1};X[G]=F.data}return{valid:!0,data:X}}else if(B===kA.array&&Y===kA.array){if(A.length!==Q.length)return{valid:!1};let J=[];for(let C=0;C{if(XR(J)||XR(C))return LQ;let X=yx(J.value,C.value);if(!X.valid)return xA(B,{code:RA.invalid_intersection_types}),LQ;if(GR(J)||GR(C))Q.dirty();return{status:Q.value,value:X.data}};if(B.common.async)return Promise.all([this._def.left._parseAsync({data:B.data,path:B.path,parent:B}),this._def.right._parseAsync({data:B.data,path:B.path,parent:B})]).then(([J,C])=>Y(J,C));else return Y(this._def.left._parseSync({data:B.data,path:B.path,parent:B}),this._def.right._parseSync({data:B.data,path:B.path,parent:B}))}}PU.create=(A,Q,B)=>{return new PU({left:A,right:Q,typeName:zQ.ZodIntersection,...pQ(B)})};class u1 extends JB{_parse(A){let{status:Q,ctx:B}=this._processInputParams(A);if(B.parsedType!==kA.array)return xA(B,{code:RA.invalid_type,expected:kA.array,received:B.parsedType}),LQ;if(B.data.lengththis._def.items.length)xA(B,{code:RA.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),Q.dirty();let J=[...B.data].map((C,X)=>{let G=this._def.items[X]||this._def.rest;if(!G)return null;return G._parse(new PC(B,C,B.path,X))}).filter((C)=>!!C);if(B.common.async)return Promise.all(J).then((C)=>{return YJ.mergeArray(Q,C)});else return YJ.mergeArray(Q,J)}get items(){return this._def.items}rest(A){return new u1({...this._def,rest:A})}}u1.create=(A,Q)=>{if(!Array.isArray(A))throw Error("You must pass an array of schemas to z.tuple([ ... ])");return new u1({items:A,typeName:zQ.ZodTuple,rest:null,...pQ(Q)})};class hH extends JB{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(A){let{status:Q,ctx:B}=this._processInputParams(A);if(B.parsedType!==kA.object)return xA(B,{code:RA.invalid_type,expected:kA.object,received:B.parsedType}),LQ;let Y=[],J=this._def.keyType,C=this._def.valueType;for(let X in B.data)Y.push({key:J._parse(new PC(B,X,B.path,X)),value:C._parse(new PC(B,B.data[X],B.path,X)),alwaysSet:X in B.data});if(B.common.async)return YJ.mergeObjectAsync(Q,Y);else return YJ.mergeObjectSync(Q,Y)}get element(){return this._def.valueType}static create(A,Q,B){if(Q instanceof JB)return new hH({keyType:A,valueType:Q,typeName:zQ.ZodRecord,...pQ(B)});return new hH({keyType:wC.create(),valueType:A,typeName:zQ.ZodRecord,...pQ(Q)})}}class gH extends JB{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(A){let{status:Q,ctx:B}=this._processInputParams(A);if(B.parsedType!==kA.map)return xA(B,{code:RA.invalid_type,expected:kA.map,received:B.parsedType}),LQ;let Y=this._def.keyType,J=this._def.valueType,C=[...B.data.entries()].map(([X,G],F)=>{return{key:Y._parse(new PC(B,X,B.path,[F,"key"])),value:J._parse(new PC(B,G,B.path,[F,"value"]))}});if(B.common.async){let X=new Map;return Promise.resolve().then(async()=>{for(let G of C){let F=await G.key,W=await G.value;if(F.status==="aborted"||W.status==="aborted")return LQ;if(F.status==="dirty"||W.status==="dirty")Q.dirty();X.set(F.value,W.value)}return{status:Q.value,value:X}})}else{let X=new Map;for(let G of C){let{key:F,value:W}=G;if(F.status==="aborted"||W.status==="aborted")return LQ;if(F.status==="dirty"||W.status==="dirty")Q.dirty();X.set(F.value,W.value)}return{status:Q.value,value:X}}}}gH.create=(A,Q,B)=>{return new gH({valueType:Q,keyType:A,typeName:zQ.ZodMap,...pQ(B)})};class tW extends JB{_parse(A){let{status:Q,ctx:B}=this._processInputParams(A);if(B.parsedType!==kA.set)return xA(B,{code:RA.invalid_type,expected:kA.set,received:B.parsedType}),LQ;let Y=this._def;if(Y.minSize!==null){if(B.data.sizeY.maxSize.value)xA(B,{code:RA.too_big,maximum:Y.maxSize.value,type:"set",inclusive:!0,exact:!1,message:Y.maxSize.message}),Q.dirty()}let J=this._def.valueType;function C(G){let F=new Set;for(let W of G){if(W.status==="aborted")return LQ;if(W.status==="dirty")Q.dirty();F.add(W.value)}return{status:Q.value,value:F}}let X=[...B.data.values()].map((G,F)=>J._parse(new PC(B,G,B.path,F)));if(B.common.async)return Promise.all(X).then((G)=>C(G));else return C(X)}min(A,Q){return new tW({...this._def,minSize:{value:A,message:tA.toString(Q)}})}max(A,Q){return new tW({...this._def,maxSize:{value:A,message:tA.toString(Q)}})}size(A,Q){return this.min(A,Q).max(A,Q)}nonempty(A){return this.min(1,A)}}tW.create=(A,Q)=>{return new tW({valueType:A,minSize:null,maxSize:null,typeName:zQ.ZodSet,...pQ(Q)})};class zU extends JB{constructor(){super(...arguments);this.validate=this.implement}_parse(A){let{ctx:Q}=this._processInputParams(A);if(Q.parsedType!==kA.function)return xA(Q,{code:RA.invalid_type,expected:kA.function,received:Q.parsedType}),LQ;function B(X,G){return _H({data:X,path:Q.path,errorMaps:[Q.common.contextualErrorMap,Q.schemaErrorMap,LU(),RX].filter((F)=>!!F),issueData:{code:RA.invalid_arguments,argumentsError:G}})}function Y(X,G){return _H({data:X,path:Q.path,errorMaps:[Q.common.contextualErrorMap,Q.schemaErrorMap,LU(),RX].filter((F)=>!!F),issueData:{code:RA.invalid_return_type,returnTypeError:G}})}let J={errorMap:Q.common.contextualErrorMap},C=Q.data;if(this._def.returns instanceof eW){let X=this;return LJ(async function(...G){let F=new T9([]),W=await X._def.args.parseAsync(G,J).catch(($)=>{throw F.addIssue(B(G,$)),F}),Z=await Reflect.apply(C,this,W);return await X._def.returns._def.type.parseAsync(Z,J).catch(($)=>{throw F.addIssue(Y(Z,$)),F})})}else{let X=this;return LJ(function(...G){let F=X._def.args.safeParse(G,J);if(!F.success)throw new T9([B(G,F.error)]);let W=Reflect.apply(C,this,F.data),Z=X._def.returns.safeParse(W,J);if(!Z.success)throw new T9([Y(W,Z.error)]);return Z.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...A){return new zU({...this._def,args:u1.create(A).rest(D7.create())})}returns(A){return new zU({...this._def,returns:A})}implement(A){return this.parse(A)}strictImplement(A){return this.parse(A)}static create(A,Q,B){return new zU({args:A?A:u1.create([]).rest(D7.create()),returns:Q||D7.create(),typeName:zQ.ZodFunction,...pQ(B)})}}class TU extends JB{get schema(){return this._def.getter()}_parse(A){let{ctx:Q}=this._processInputParams(A);return this._def.getter()._parse({data:Q.data,path:Q.path,parent:Q})}}TU.create=(A,Q)=>{return new TU({getter:A,typeName:zQ.ZodLazy,...pQ(Q)})};class SU extends JB{_parse(A){if(A.data!==this._def.value){let Q=this._getOrReturnCtx(A);return xA(Q,{received:Q.data,code:RA.invalid_literal,expected:this._def.value}),LQ}return{status:"valid",value:A.data}}get value(){return this._def.value}}SU.create=(A,Q)=>{return new SU({value:A,typeName:zQ.ZodLiteral,...pQ(Q)})};function fGA(A,Q){return new q7({values:A,typeName:zQ.ZodEnum,...pQ(Q)})}class q7 extends JB{_parse(A){if(typeof A.data!=="string"){let Q=this._getOrReturnCtx(A),B=this._def.values;return xA(Q,{expected:WB.joinValues(B),received:Q.parsedType,code:RA.invalid_type}),LQ}if(!this._cache)this._cache=new Set(this._def.values);if(!this._cache.has(A.data)){let Q=this._getOrReturnCtx(A),B=this._def.values;return xA(Q,{received:Q.data,code:RA.invalid_enum_value,options:B}),LQ}return LJ(A.data)}get options(){return this._def.values}get enum(){let A={};for(let Q of this._def.values)A[Q]=Q;return A}get Values(){let A={};for(let Q of this._def.values)A[Q]=Q;return A}get Enum(){let A={};for(let Q of this._def.values)A[Q]=Q;return A}extract(A,Q=this._def){return q7.create(A,{...this._def,...Q})}exclude(A,Q=this._def){return q7.create(this.options.filter((B)=>!A.includes(B)),{...this._def,...Q})}}q7.create=fGA;class kU extends JB{_parse(A){let Q=WB.getValidEnumValues(this._def.values),B=this._getOrReturnCtx(A);if(B.parsedType!==kA.string&&B.parsedType!==kA.number){let Y=WB.objectValues(Q);return xA(B,{expected:WB.joinValues(Y),received:B.parsedType,code:RA.invalid_type}),LQ}if(!this._cache)this._cache=new Set(WB.getValidEnumValues(this._def.values));if(!this._cache.has(A.data)){let Y=WB.objectValues(Q);return xA(B,{received:B.data,code:RA.invalid_enum_value,options:Y}),LQ}return LJ(A.data)}get enum(){return this._def.values}}kU.create=(A,Q)=>{return new kU({values:A,typeName:zQ.ZodNativeEnum,...pQ(Q)})};class eW extends JB{unwrap(){return this._def.type}_parse(A){let{ctx:Q}=this._processInputParams(A);if(Q.parsedType!==kA.promise&&Q.common.async===!1)return xA(Q,{code:RA.invalid_type,expected:kA.promise,received:Q.parsedType}),LQ;let B=Q.parsedType===kA.promise?Q.data:Promise.resolve(Q.data);return LJ(B.then((Y)=>{return this._def.type.parseAsync(Y,{path:Q.path,errorMap:Q.common.contextualErrorMap})}))}}eW.create=(A,Q)=>{return new eW({type:A,typeName:zQ.ZodPromise,...pQ(Q)})};class TC extends JB{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===zQ.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(A){let{status:Q,ctx:B}=this._processInputParams(A),Y=this._def.effect||null,J={addIssue:(C)=>{if(xA(B,C),C.fatal)Q.abort();else Q.dirty()},get path(){return B.path}};if(J.addIssue=J.addIssue.bind(J),Y.type==="preprocess"){let C=Y.transform(B.data,J);if(B.common.async)return Promise.resolve(C).then(async(X)=>{if(Q.value==="aborted")return LQ;let G=await this._def.schema._parseAsync({data:X,path:B.path,parent:B});if(G.status==="aborted")return LQ;if(G.status==="dirty")return rW(G.value);if(Q.value==="dirty")return rW(G.value);return G});else{if(Q.value==="aborted")return LQ;let X=this._def.schema._parseSync({data:C,path:B.path,parent:B});if(X.status==="aborted")return LQ;if(X.status==="dirty")return rW(X.value);if(Q.value==="dirty")return rW(X.value);return X}}if(Y.type==="refinement"){let C=(X)=>{let G=Y.refinement(X,J);if(B.common.async)return Promise.resolve(G);if(G instanceof Promise)throw Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return X};if(B.common.async===!1){let X=this._def.schema._parseSync({data:B.data,path:B.path,parent:B});if(X.status==="aborted")return LQ;if(X.status==="dirty")Q.dirty();return C(X.value),{status:Q.value,value:X.value}}else return this._def.schema._parseAsync({data:B.data,path:B.path,parent:B}).then((X)=>{if(X.status==="aborted")return LQ;if(X.status==="dirty")Q.dirty();return C(X.value).then(()=>{return{status:Q.value,value:X.value}})})}if(Y.type==="transform")if(B.common.async===!1){let C=this._def.schema._parseSync({data:B.data,path:B.path,parent:B});if(!H7(C))return LQ;let X=Y.transform(C.value,J);if(X instanceof Promise)throw Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:Q.value,value:X}}else return this._def.schema._parseAsync({data:B.data,path:B.path,parent:B}).then((C)=>{if(!H7(C))return LQ;return Promise.resolve(Y.transform(C.value,J)).then((X)=>({status:Q.value,value:X}))});WB.assertNever(Y)}}TC.create=(A,Q,B)=>{return new TC({schema:A,typeName:zQ.ZodEffects,effect:Q,...pQ(B)})};TC.createWithPreprocess=(A,Q,B)=>{return new TC({schema:Q,effect:{type:"preprocess",transform:A},typeName:zQ.ZodEffects,...pQ(B)})};class OC extends JB{_parse(A){if(this._getType(A)===kA.undefined)return LJ(void 0);return this._def.innerType._parse(A)}unwrap(){return this._def.innerType}}OC.create=(A,Q)=>{return new OC({innerType:A,typeName:zQ.ZodOptional,...pQ(Q)})};class jX extends JB{_parse(A){if(this._getType(A)===kA.null)return LJ(null);return this._def.innerType._parse(A)}unwrap(){return this._def.innerType}}jX.create=(A,Q)=>{return new jX({innerType:A,typeName:zQ.ZodNullable,...pQ(Q)})};class _U extends JB{_parse(A){let{ctx:Q}=this._processInputParams(A),B=Q.data;if(Q.parsedType===kA.undefined)B=this._def.defaultValue();return this._def.innerType._parse({data:B,path:Q.path,parent:Q})}removeDefault(){return this._def.innerType}}_U.create=(A,Q)=>{return new _U({innerType:A,typeName:zQ.ZodDefault,defaultValue:typeof Q.default==="function"?Q.default:()=>Q.default,...pQ(Q)})};class vU extends JB{_parse(A){let{ctx:Q}=this._processInputParams(A),B={...Q,common:{...Q.common,issues:[]}},Y=this._def.innerType._parse({data:B.data,path:B.path,parent:{...B}});if(qU(Y))return Y.then((J)=>{return{status:"valid",value:J.status==="valid"?J.value:this._def.catchValue({get error(){return new T9(B.common.issues)},input:B.data})}});else return{status:"valid",value:Y.status==="valid"?Y.value:this._def.catchValue({get error(){return new T9(B.common.issues)},input:B.data})}}removeCatch(){return this._def.innerType}}vU.create=(A,Q)=>{return new vU({innerType:A,typeName:zQ.ZodCatch,catchValue:typeof Q.catch==="function"?Q.catch:()=>Q.catch,...pQ(Q)})};class xH extends JB{_parse(A){if(this._getType(A)!==kA.nan){let B=this._getOrReturnCtx(A);return xA(B,{code:RA.invalid_type,expected:kA.nan,received:B.parsedType}),LQ}return{status:"valid",value:A.data}}}xH.create=(A)=>{return new xH({typeName:zQ.ZodNaN,...pQ(A)})};var hAB=Symbol("zod_brand");class WR extends JB{_parse(A){let{ctx:Q}=this._processInputParams(A),B=Q.data;return this._def.type._parse({data:B,path:Q.path,parent:Q})}unwrap(){return this._def.type}}class fH extends JB{_parse(A){let{status:Q,ctx:B}=this._processInputParams(A);if(B.common.async)return(async()=>{let J=await this._def.in._parseAsync({data:B.data,path:B.path,parent:B});if(J.status==="aborted")return LQ;if(J.status==="dirty")return Q.dirty(),rW(J.value);else return this._def.out._parseAsync({data:J.value,path:B.path,parent:B})})();else{let Y=this._def.in._parseSync({data:B.data,path:B.path,parent:B});if(Y.status==="aborted")return LQ;if(Y.status==="dirty")return Q.dirty(),{status:"dirty",value:Y.value};else return this._def.out._parseSync({data:Y.value,path:B.path,parent:B})}}static create(A,Q){return new fH({in:A,out:Q,typeName:zQ.ZodPipeline})}}class yU extends JB{_parse(A){let Q=this._def.innerType._parse(A),B=(Y)=>{if(H7(Y))Y.value=Object.freeze(Y.value);return Y};return qU(Q)?Q.then((Y)=>B(Y)):B(Q)}unwrap(){return this._def.innerType}}yU.create=(A,Q)=>{return new yU({innerType:A,typeName:zQ.ZodReadonly,...pQ(Q)})};function yGA(A,Q){let B=typeof A==="function"?A(Q):typeof A==="string"?{message:A}:A;return typeof B==="string"?{message:B}:B}function bGA(A,Q={},B){if(A)return oW.create().superRefine((Y,J)=>{let C=A(Y);if(C instanceof Promise)return C.then((X)=>{if(!X){let G=yGA(Q,Y),F=G.fatal??B??!0;J.addIssue({code:"custom",...G,fatal:F})}});if(!C){let X=yGA(Q,Y),G=X.fatal??B??!0;J.addIssue({code:"custom",...X,fatal:G})}return});return oW.create()}var gAB={object:k0.lazycreate},zQ;(function(A){A.ZodString="ZodString",A.ZodNumber="ZodNumber",A.ZodNaN="ZodNaN",A.ZodBigInt="ZodBigInt",A.ZodBoolean="ZodBoolean",A.ZodDate="ZodDate",A.ZodSymbol="ZodSymbol",A.ZodUndefined="ZodUndefined",A.ZodNull="ZodNull",A.ZodAny="ZodAny",A.ZodUnknown="ZodUnknown",A.ZodNever="ZodNever",A.ZodVoid="ZodVoid",A.ZodArray="ZodArray",A.ZodObject="ZodObject",A.ZodUnion="ZodUnion",A.ZodDiscriminatedUnion="ZodDiscriminatedUnion",A.ZodIntersection="ZodIntersection",A.ZodTuple="ZodTuple",A.ZodRecord="ZodRecord",A.ZodMap="ZodMap",A.ZodSet="ZodSet",A.ZodFunction="ZodFunction",A.ZodLazy="ZodLazy",A.ZodLiteral="ZodLiteral",A.ZodEnum="ZodEnum",A.ZodEffects="ZodEffects",A.ZodNativeEnum="ZodNativeEnum",A.ZodOptional="ZodOptional",A.ZodNullable="ZodNullable",A.ZodDefault="ZodDefault",A.ZodCatch="ZodCatch",A.ZodPromise="ZodPromise",A.ZodBranded="ZodBranded",A.ZodPipeline="ZodPipeline",A.ZodReadonly="ZodReadonly"})(zQ||(zQ={}));var xAB=(A,Q={message:`Input not instance of ${A.name}`})=>bGA((B)=>B instanceof A,Q),mGA=wC.create,uGA=N7.create,fAB=xH.create,bAB=L7.create,dGA=RU.create,mAB=aW.create,uAB=vH.create,dAB=wU.create,cAB=jU.create,lAB=oW.create,pAB=D7.create,iAB=m1.create,nAB=yH.create,sAB=jC.create,rAB=k0.create,aAB=k0.strictCreate,oAB=OU.create,tAB=FR.create,eAB=PU.create,AQB=u1.create,QQB=hH.create,BQB=gH.create,YQB=tW.create,JQB=zU.create,CQB=TU.create,XQB=SU.create,GQB=q7.create,FQB=kU.create,WQB=eW.create,ZQB=TC.create,$QB=OC.create,UQB=jX.create,EQB=TC.createWithPreprocess,KQB=fH.create,VQB=()=>mGA().optional(),IQB=()=>uGA().optional(),HQB=()=>dGA().optional(),DQB={string:(A)=>wC.create({...A,coerce:!0}),number:(A)=>N7.create({...A,coerce:!0}),boolean:(A)=>RU.create({...A,coerce:!0}),bigint:(A)=>L7.create({...A,coerce:!0}),date:(A)=>aW.create({...A,coerce:!0})};var NQB=LQ;var SB=s;var SC;(function(A){A[A.EXTEND=1]="EXTEND",A[A.WRAP=2]="WRAP",A[A.CROP=3]="CROP"})(SC||(SC={}));var M7=s.object({bitmap:s.object({data:s.union([s.instanceof(Buffer),s.instanceof(Uint8Array)]),width:s.number(),height:s.number()})});var LQB=s.object({src:M7,x:s.number().optional(),y:s.number().optional(),srcX:s.number().optional(),srcY:s.number().optional(),srcW:s.number().optional(),srcH:s.number().optional()}),qQB=s.union([M7,LQB]),hU={blit(A,Q){let B=qQB.parse(Q),{src:Y,x:J=0,y:C=0,srcX:X=0,srcY:G=0,srcW:F=Y.bitmap.width,srcH:W=Y.bitmap.height}="bitmap"in B?{src:B}:B;if(!("bitmap"in Y))throw Error("The source must be a Jimp image");if(typeof J!=="number"||typeof C!=="number")throw Error("x and y must be numbers");J=Math.round(J),C=Math.round(C),X=Math.round(X),G=Math.round(G),F=Math.round(F),W=Math.round(W);let Z=A.bitmap.width,U=A.bitmap.height;return G5(Y,X,G,F,W,function($,E,K){let I=J+$-X,V=C+E-G;if(I>=0&&V>=0&&Z-I>0&&U-V>0){let H=A.getPixelIndex(I,V),D={r:Y.bitmap.data[K]||0,g:Y.bitmap.data[K+1]||0,b:Y.bitmap.data[K+2]||0,a:Y.bitmap.data[K+3]||0},L={r:A.bitmap.data[H]||0,g:A.bitmap.data[H+1]||0,b:A.bitmap.data[H+2]||0,a:A.bitmap.data[H+3]||0};A.bitmap.data[H]=(D.a*(D.r-L.r)-L.r+255>>8)+L.r,A.bitmap.data[H+1]=(D.a*(D.g-L.g)-L.g+255>>8)+L.g,A.bitmap.data[H+2]=(D.a*(D.b-L.b)-L.b+255>>8)+L.b,A.bitmap.data[H+3]=L0(L.a+D.a)}}),A}};var cGA=[1,57,41,21,203,34,97,73,227,91,149,62,105,45,39,137,241,107,3,173,39,71,65,238,219,101,187,87,81,151,141,133,249,117,221,209,197,187,177,169,5,153,73,139,133,127,243,233,223,107,103,99,191,23,177,171,165,159,77,149,9,139,135,131,253,245,119,231,224,109,211,103,25,195,189,23,45,175,171,83,81,79,155,151,147,9,141,137,67,131,129,251,123,30,235,115,113,221,217,53,13,51,50,49,193,189,185,91,179,175,43,169,83,163,5,79,155,19,75,147,145,143,35,69,17,67,33,65,255,251,247,243,239,59,29,229,113,111,219,27,213,105,207,51,201,199,49,193,191,47,93,183,181,179,11,87,43,85,167,165,163,161,159,157,155,77,19,75,37,73,145,143,141,35,138,137,135,67,33,131,129,255,63,250,247,61,121,239,237,117,29,229,227,225,111,55,109,216,213,211,209,207,205,203,201,199,197,195,193,48,190,47,93,185,183,181,179,178,176,175,173,171,85,21,167,165,41,163,161,5,79,157,78,154,153,19,75,149,74,147,73,144,143,71,141,140,139,137,17,135,134,133,66,131,65,129,1],lGA=[0,9,10,10,14,12,14,14,16,15,16,15,16,15,15,17,18,17,12,18,16,17,17,19,19,18,19,18,18,19,19,19,20,19,20,20,20,20,20,20,15,20,19,20,20,20,21,21,21,20,20,20,21,18,21,21,21,21,20,21,17,21,21,21,22,22,21,22,22,21,22,21,19,22,22,19,20,22,22,21,21,21,22,22,22,18,22,22,21,22,22,23,22,20,23,22,22,23,23,21,19,21,21,21,23,23,23,22,23,23,21,23,22,23,18,22,23,20,22,23,23,23,21,22,20,22,21,22,24,24,24,24,24,22,21,24,23,23,24,21,24,23,24,22,24,24,22,24,24,22,23,24,24,24,20,23,22,23,24,24,24,24,24,24,24,23,21,23,22,23,24,24,24,22,24,24,24,23,22,24,24,25,23,25,25,23,24,25,25,24,22,25,25,25,24,23,24,25,25,25,25,25,25,25,25,25,25,25,25,23,25,23,24,25,25,25,25,25,25,25,25,25,24,22,25,25,23,25,25,20,24,25,24,25,25,22,24,25,24,25,24,25,25,24,25,25,25,25,22,25,25,25,24,25,24,25,18];var pGA={blur(A,Q){if(typeof Q!=="number")throw Error("r must be a number");if(Q<1)throw Error("r must be greater than 0");let B,Y,J,C,X,G,F,W,Z,U,$,E,K,I=A.bitmap.width-1,V=A.bitmap.height-1,H=Q+1,D=cGA[Q],L=lGA[Q],z=[],M=[],N=[],q=[],w=[],P=[],_=2;while(_-- >0){E=0,K=0;for(G=0;GI?I:F)<<2),B+=A.bitmap.data[W++],Y+=A.bitmap.data[W++],J+=A.bitmap.data[W++],C+=A.bitmap.data[W];for(X=0;X0?W<<2:0;Z=K+w[X],U=K+P[X],B+=A.bitmap.data[Z++]-A.bitmap.data[U++],Y+=A.bitmap.data[Z++]-A.bitmap.data[U++],J+=A.bitmap.data[Z++]-A.bitmap.data[U++],C+=A.bitmap.data[Z]-A.bitmap.data[U++],E++}K+=A.bitmap.width<<2}for(X=0;XV?0:A.bitmap.width,B+=z[$],Y+=M[$],J+=N[$],C+=q[$];E=X<<2;for(G=0;G>>L),A.bitmap.data[E+1]=L0(Y*D>>>L),A.bitmap.data[E+2]=L0(J*D>>>L),A.bitmap.data[E+3]=L0(C*D>>>L),X===0)w[G]=((W=G+H)0?W*A.bitmap.width:0;Z=X+w[G],U=X+P[G],B+=z[Z]-z[U],Y+=M[Z]-M[U],J+=N[Z]-N[U],C+=q[Z]-q[U],E+=A.bitmap.width<<2}}}return A},gaussian(A,Q){if(typeof Q!=="number")throw Error("r must be a number");if(Q<1)throw Error("r must be greater than 0");let B=Math.ceil(Q*2.57),Y=B*2+1,J=Q*Q*2,C=J*Math.PI,X=[];for(let G=0;GA.bitmap.height?A.bitmap.height:A.bitmap.width)/2,J={x:typeof B.x==="number"?B.x:A.bitmap.width/2,y:typeof B.y==="number"?B.y:A.bitmap.height/2};return A.scan((C,X,G)=>{let F=Math.sqrt(Math.pow(C-J.x,2)+Math.pow(X-J.y,2));if(Y-F<=0)A.bitmap.data[G+3]=0;else if(Y-F<1)A.bitmap.data[G+3]=255*(Y-F)}),A}};var ZR=s.array(s.number()).min(1).array(),jQB=s.object({kernel:ZR,edgeHandling:s.nativeEnum(SC).optional()}),OQB=s.union([ZR,jQB]),PQB=s.object({kernel:ZR,x:s.number().optional(),y:s.number().optional(),w:s.number().optional(),h:s.number().optional()}),TQB=s.union([ZR,PQB]),sGA=s.number().min(1).max(1/0),SQB=s.object({size:sGA,x:s.number().optional(),y:s.number().optional(),w:s.number().optional(),h:s.number().optional()}),kQB=s.union([sGA,SQB]);function nGA(A,Q,B,Y){let J=[0,0,0,0],C=(Q.length-1)/2;for(let X=0;X{Q.r[A.bitmap.data[J+0]]++,Q.g[A.bitmap.data[J+1]]++,Q.b[A.bitmap.data[J+2]]++}),Q}var gx=function(A,Q,B){return(A-Q)*255/(B-Q)},xx=function(A){return[A.findIndex((Q)=>Q>0),255-A.slice().reverse().findIndex((Q)=>Q>0)]},gU={normalize(A){let Q=sQB(A),B={r:xx(Q.r),g:xx(Q.g),b:xx(Q.b)};return A.scan((Y,J,C)=>{let X=A.bitmap.data[C+0],G=A.bitmap.data[C+1],F=A.bitmap.data[C+2];A.bitmap.data[C+0]=gx(X,B.r[0],B.r[1]),A.bitmap.data[C+1]=gx(G,B.g[0],B.g[1]),A.bitmap.data[C+2]=gx(F,B.b[0],B.b[1])}),A},invert(A){return A.scan((Q,B,Y)=>{A.bitmap.data[Y]=255-A.bitmap.data[Y],A.bitmap.data[Y+1]=255-A.bitmap.data[Y+1],A.bitmap.data[Y+2]=255-A.bitmap.data[Y+2]}),A},brightness(A,Q){if(typeof Q!=="number")throw Error("val must be numbers");return A.scan((B,Y,J)=>{A.bitmap.data[J]=L0(A.bitmap.data[J]*Q),A.bitmap.data[J+1]=L0(A.bitmap.data[J+1]*Q),A.bitmap.data[J+2]=L0(A.bitmap.data[J+2]*Q)}),A},contrast(A,Q){if(typeof Q!=="number")throw Error("val must be numbers");if(Q<-1||Q>1)throw Error("val must be a number between -1 and +1");let B=(Q+1)/(1-Q);function Y(J){return J=Math.floor(B*(J-127)+127),J<0?0:J>255?255:J}return A.scan((J,C,X)=>{A.bitmap.data[X]=Y(A.bitmap.data[X]),A.bitmap.data[X+1]=Y(A.bitmap.data[X+1]),A.bitmap.data[X+2]=Y(A.bitmap.data[X+2])}),A},posterize(A,Q){if(typeof Q!=="number")throw Error("n must be numbers");if(Q<2)Q=2;return A.scan((B,Y,J)=>{let C=A.bitmap.data[J],X=A.bitmap.data[J+1],G=A.bitmap.data[J+2];A.bitmap.data[J]=Math.floor(C/255*(Q-1))/(Q-1)*255,A.bitmap.data[J+1]=Math.floor(X/255*(Q-1))/(Q-1)*255,A.bitmap.data[J+2]=Math.floor(G/255*(Q-1))/(Q-1)*255}),A},greyscale(A){return A.scan((Q,B,Y)=>{let J=0.2126*A.bitmap.data[Y]+0.7152*A.bitmap.data[Y+1]+0.0722*A.bitmap.data[Y+2];A.bitmap.data[Y]=J,A.bitmap.data[Y+1]=J,A.bitmap.data[Y+2]=J}),A},opacity(A,Q){if(typeof Q!=="number")throw Error("f must be a number");if(Q<0||Q>1)throw Error("f must be a number from 0 to 1");return A.scan((B,Y,J)=>{let C=A.bitmap.data[J+3]*Q;A.bitmap.data[J+3]=C}),A},sepia(A){return A.scan((Q,B,Y)=>{let J=A.bitmap.data[Y],C=A.bitmap.data[Y+1],X=A.bitmap.data[Y+2];J=J*0.393+C*0.769+X*0.189,C=J*0.349+C*0.686+X*0.168,X=J*0.272+C*0.534+X*0.131,A.bitmap.data[Y]=J<255?J:255,A.bitmap.data[Y+1]=C<255?C:255,A.bitmap.data[Y+2]=X<255?X:255}),A},fade(A,Q){if(typeof Q!=="number")throw Error("f must be a number");if(Q<0||Q>1)throw Error("f must be a number from 0 to 1");return this.opacity(A,1-Q)},convolution(A,Q){let B=OQB.parse(Q),{kernel:Y,edgeHandling:J=SC.EXTEND}="kernel"in B?B:{kernel:B,edgeHandling:void 0};if(!Y[0])throw Error("kernel must be a matrix");let C=Buffer.from(A.bitmap.data),X=Y.length,G=Y[0].length,F=Math.floor(X/2),W=Math.floor(G/2),Z=-F,U=-W,$,E,K,I,V,H,D,L,z,M;return A.scan((N,q,w)=>{I=0,K=0,E=0;for(let P=Z;P<=F;P++)for(let _=U;_<=W;_++){if(L=N+_,z=q+P,$=Y[P+F][_+W],M=A.getPixelIndex(L,z,J),M===-1)D=0,H=0,V=0;else V=A.bitmap.data[M+0],H=A.bitmap.data[M+1],D=A.bitmap.data[M+2];E+=$*V,K+=$*H,I+=$*D}if(E<0)E=0;if(K<0)K=0;if(I<0)I=0;if(E>255)E=255;if(K>255)K=255;if(I>255)I=255;C[w+0]=E,C[w+1]=K,C[w+2]=I}),A.bitmap.data=C,A},opaque(A){return A.scan((Q,B,Y)=>{A.bitmap.data[Y+3]=255}),A},pixelate(A,Q){let B=kQB.parse(Q),{size:Y,x:J=0,y:C=0,w:X=A.bitmap.width-J,h:G=A.bitmap.height-C}=typeof B==="number"?{size:B}:B,F=[[0.0625,0.125,0.0625],[0.125,0.25,0.125],[0.0625,0.125,0.0625]],W=G8(A);return G5(W,J,C,X,G,(Z,U,$)=>{Z=Y*Math.floor(Z/Y),U=Y*Math.floor(U/Y);let E=nGA(W,F,Z,U);A.bitmap.data[$]=E[0],A.bitmap.data[$+1]=E[1],A.bitmap.data[$+2]=E[2],A.bitmap.data[$+3]=E[3]}),A},convolute(A,Q){let B=TQB.parse(Q),{kernel:Y,x:J=0,y:C=0,w:X=A.bitmap.width-J,h:G=A.bitmap.height-C}="kernel"in B?B:{kernel:B},F=G8(A);return G5(F,J,C,X,G,(W,Z,U)=>{let $=nGA(F,Y,W,Z);A.bitmap.data[U]=L0($[0]),A.bitmap.data[U+1]=L0($[1]),A.bitmap.data[U+2]=L0($[2]),A.bitmap.data[U+3]=L0($[3])}),A},color(A,Q){if(!Q||!Array.isArray(Q))throw Error("actions must be an array");return Q.forEach((B)=>nQB.parse(B)),Q=Q.map((B)=>{if(B.apply==="xor"||B.apply==="mix")B.params[0]=oA(B.params[0]).toRgb();return B}),A.scan((B,Y,J)=>{let C={r:A.bitmap.data[J],g:A.bitmap.data[J+1],b:A.bitmap.data[J+2]},X=(G,F)=>L0(C[G]+F);Q.forEach((G)=>{if(G.apply==="mix")C=hx(C,G.params[0],G.params[1]);else if(G.apply==="tint")C=hx(C,{r:255,g:255,b:255},G.params?.[0]);else if(G.apply==="shade")C=hx(C,{r:0,g:0,b:0},G.params?.[0]);else if(G.apply==="xor")C={r:C.r^G.params[0].r,g:C.g^G.params[0].g,b:C.b^G.params[0].b};else if(G.apply==="red")C.r=X("r",G.params[0]);else if(G.apply==="green")C.g=X("g",G.params[0]);else if(G.apply==="blue")C.b=X("b",G.params[0]);else{if(G.apply==="hue")G.apply="spin";let F=oA(C),W=F[G.apply].bind(F);if(!W)throw Error("action "+G.apply+" not supported");C=W(...G.params||[]).toRgb()}}),A.bitmap.data[J]=C.r,A.bitmap.data[J+1]=C.g,A.bitmap.data[J+2]=C.b}),A}};var vFA=qA(g7A(),1),ax=qA(f7A(),1);import{promises as b7A}from"fs";import{existsSync as d7A}from"fs";var m7A=b7A.readFile,u7A=b7A.writeFile;var yFA=qA(s7A(),1);var E5;(function(A){A[A.LEFT=1]="LEFT",A[A.CENTER=2]="CENTER",A[A.RIGHT=4]="RIGHT"})(E5||(E5={}));var K5;(function(A){A[A.TOP=8]="TOP",A[A.MIDDLE=16]="MIDDLE",A[A.BOTTOM=32]="BOTTOM"})(K5||(K5={}));var NR;(function(A){A.SRC_OVER="srcOver",A.DST_OVER="dstOver",A.MULTIPLY="multiply",A.ADD="add",A.SCREEN="screen",A.OVERLAY="overlay",A.DARKEN="darken",A.LIGHTEN="lighten",A.HARD_LIGHT="hardLight",A.DIFFERENCE="difference",A.EXCLUSION="exclusion"})(NR||(NR={}));var lx={};fG(lx,{srcOver:()=>r7A,screen:()=>e7A,overlay:()=>AFA,names:()=>A0B,multiply:()=>o7A,lighten:()=>BFA,hardLight:()=>YFA,exclusion:()=>CFA,dstOver:()=>a7A,difference:()=>JFA,darken:()=>QFA,add:()=>t7A});function r7A(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=(A.r*A.a+Q.r*Q.a*(1-A.a))/Y,C=(A.g*A.a+Q.g*Q.a*(1-A.a))/Y,X=(A.b*A.a+Q.b*Q.a*(1-A.a))/Y;return{r:J,g:C,b:X,a:Y}}function a7A(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=(Q.r*Q.a+A.r*A.a*(1-Q.a))/Y,C=(Q.g*Q.a+A.g*A.a*(1-Q.a))/Y,X=(Q.b*Q.a+A.b*A.a*(1-Q.a))/Y;return{r:J,g:C,b:X,a:Y}}function o7A(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,F=Q.g*Q.a,W=Q.b*Q.a,Z=(J*G+J*(1-Q.a)+G*(1-A.a))/Y,U=(C*F+C*(1-Q.a)+F*(1-A.a))/Y,$=(X*W+X*(1-Q.a)+W*(1-A.a))/Y;return{r:Z,g:U,b:$,a:Y}}function t7A(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,F=Q.g*Q.a,W=Q.b*Q.a,Z=(J+G)/Y,U=(C+F)/Y,$=(X+W)/Y;return{r:Z,g:U,b:$,a:Y}}function e7A(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,F=Q.g*Q.a,W=Q.b*Q.a,Z=(J*Q.a+G*A.a-J*G+J*(1-Q.a)+G*(1-A.a))/Y,U=(C*Q.a+F*A.a-C*F+C*(1-Q.a)+F*(1-A.a))/Y,$=(X*Q.a+W*A.a-X*W+X*(1-Q.a)+W*(1-A.a))/Y;return{r:Z,g:U,b:$,a:Y}}function AFA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,F=Q.g*Q.a,W=Q.b*Q.a,Z=(2*G<=Q.a?2*J*G+J*(1-Q.a)+G*(1-A.a):J*(1+Q.a)+G*(1+A.a)-2*G*J-Q.a*A.a)/Y,U=(2*F<=Q.a?2*C*F+C*(1-Q.a)+F*(1-A.a):C*(1+Q.a)+F*(1+A.a)-2*F*C-Q.a*A.a)/Y,$=(2*W<=Q.a?2*X*W+X*(1-Q.a)+W*(1-A.a):X*(1+Q.a)+W*(1+A.a)-2*W*X-Q.a*A.a)/Y;return{r:Z,g:U,b:$,a:Y}}function QFA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,F=Q.g*Q.a,W=Q.b*Q.a,Z=(Math.min(J*Q.a,G*A.a)+J*(1-Q.a)+G*(1-A.a))/Y,U=(Math.min(C*Q.a,F*A.a)+C*(1-Q.a)+F*(1-A.a))/Y,$=(Math.min(X*Q.a,W*A.a)+X*(1-Q.a)+W*(1-A.a))/Y;return{r:Z,g:U,b:$,a:Y}}function BFA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,F=Q.g*Q.a,W=Q.b*Q.a,Z=(Math.max(J*Q.a,G*A.a)+J*(1-Q.a)+G*(1-A.a))/Y,U=(Math.max(C*Q.a,F*A.a)+C*(1-Q.a)+F*(1-A.a))/Y,$=(Math.max(X*Q.a,W*A.a)+X*(1-Q.a)+W*(1-A.a))/Y;return{r:Z,g:U,b:$,a:Y}}function YFA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,F=Q.g*Q.a,W=Q.b*Q.a,Z=(2*J<=A.a?2*J*G+J*(1-Q.a)+G*(1-A.a):J*(1+Q.a)+G*(1+A.a)-2*G*J-Q.a*A.a)/Y,U=(2*C<=A.a?2*C*F+C*(1-Q.a)+F*(1-A.a):C*(1+Q.a)+F*(1+A.a)-2*F*C-Q.a*A.a)/Y,$=(2*X<=A.a?2*X*W+X*(1-Q.a)+W*(1-A.a):X*(1+Q.a)+W*(1+A.a)-2*W*X-Q.a*A.a)/Y;return{r:Z,g:U,b:$,a:Y}}function JFA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,F=Q.g*Q.a,W=Q.b*Q.a,Z=(J+G-2*Math.min(J*Q.a,G*A.a))/Y,U=(C+F-2*Math.min(C*Q.a,F*A.a))/Y,$=(X+W-2*Math.min(X*Q.a,W*A.a))/Y;return{r:Z,g:U,b:$,a:Y}}function CFA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,F=Q.g*Q.a,W=Q.b*Q.a,Z=(J*Q.a+G*A.a-2*J*G+J*(1-Q.a)+G*(1-A.a))/Y,U=(C*Q.a+F*A.a-2*C*F+C*(1-Q.a)+F*(1-A.a))/Y,$=(X*Q.a+W*A.a-2*X*W+X*(1-Q.a)+W*(1-A.a))/Y;return{r:Z,g:U,b:$,a:Y}}var A0B=[r7A,a7A,o7A,t7A,e7A,AFA,QFA,BFA,YFA,JFA,CFA];function xU(A,Q,B=0,Y=0,J={}){if(!(Q instanceof A.constructor))throw Error("The source must be a Jimp image");if(typeof B!=="number"||typeof Y!=="number")throw Error("x and y must be numbers");let{mode:C=NR.SRC_OVER}=J,{opacitySource:X=1,opacityDest:G=1}=J;if(typeof X!=="number"||X<0||X>1)X=1;if(typeof G!=="number"||G<0||G>1)G=1;let F=lx[C];if(B=Math.round(B),Y=Math.round(Y),G!==1)A.scan((W,Z,U)=>{let $=A.bitmap.data[U+3]*G;A.bitmap.data[U+3]=$});return Q.scan((W,Z,U)=>{let $=A.getPixelIndex(B+W,Y+Z,SC.CROP);if($===-1)return;let E=F({r:Q.bitmap.data[U+0]/255,g:Q.bitmap.data[U+1]/255,b:Q.bitmap.data[U+2]/255,a:Q.bitmap.data[U+3]/255},{r:A.bitmap.data[$+0]/255,g:A.bitmap.data[$+1]/255,b:A.bitmap.data[$+2]/255,a:A.bitmap.data[$+3]/255},X);A.bitmap.data[$+0]=L0(E.r*255),A.bitmap.data[$+1]=L0(E.g*255),A.bitmap.data[$+2]=L0(E.b*255),A.bitmap.data[$+3]=L0(E.a*255)}),A}var SFA=qA(TFA(),1);function sx(A){let Q=A._exif;return Q&&Q.tags&&Q.tags.Orientation||1}function U0B(A){let Q=A.bitmap.width,B=A.bitmap.height;switch(sx(A)){case 1:return null;case 2:return function(Y,J){return[Q-Y-1,J]};case 3:return function(Y,J){return[Q-Y-1,B-J-1]};case 4:return function(Y,J){return[Y,B-J-1]};case 5:return function(Y,J){return[J,Y]};case 6:return function(Y,J){return[J,B-Y-1]};case 7:return function(Y,J){return[Q-J-1,B-Y-1]};case 8:return function(Y,J){return[Q-J-1,Y]};default:return null}}function E0B(A,Q,B,Y){let J=A.bitmap.data,C=A.bitmap.width,X=Buffer.alloc(J.length);for(let G=0;G4,Y=B?A.bitmap.height:A.bitmap.width,J=B?A.bitmap.width:A.bitmap.height;if(Q)E0B(A,Y,J,Q)}async function kFA(A,Q){try{A._exif=SFA.default.create(Q).parse(),K0B(A)}catch{}}var rx={data:Buffer.alloc(0),width:0,height:0};function _FA(A){let Q=Buffer.alloc(A.byteLength),B=new Uint8Array(A);for(let Y=0;YC()),J=class{bitmap=rx;background=0;formats=[];mime;constructor(X=rx){if(this.formats=Y,"data"in X)this.bitmap=X;else if(this.bitmap={data:Buffer.alloc(X.width*X.height*4),width:X.width,height:X.height},X.color){this.background=typeof X.color==="string"?hCA(X.color):X.color;for(let G=0;G{let Z=G[F]?.(this,...W);if(typeof Z==="object"&&"bitmap"in Z)return this.bitmap=Z.bitmap,this;return Z}}static async read(X,G){if(Buffer.isBuffer(X)||X instanceof ArrayBuffer)return this.fromBuffer(X);if(d7A(X))return this.fromBuffer(await m7A(X));let[F,W]=await ax.to(fetch(X));if(F)throw Error(`Could not load Buffer from URL: ${X}`);if(!W.ok)throw Error(`HTTP Status ${W.status} for url ${X}`);let[Z,U]=await ax.to(W.arrayBuffer());if(Z)throw Error(`Could not load Buffer from ${X}`);let $=_FA(U);return this.fromBuffer($,G)}static fromBitmap(X){let G;if(X.data instanceof Buffer)G=Buffer.from(X.data);if(X.data instanceof Uint8Array||X.data instanceof Uint8ClampedArray)G=Buffer.from(X.data.buffer);if(Array.isArray(X.data))G=Buffer.concat(X.data.map((F)=>Buffer.from(F.toString(16).padStart(8,"0"),"hex")));if(!G)throw Error("data must be a Buffer");if(typeof X.height!=="number"||typeof X.width!=="number")throw Error("bitmap must have width and height");return new J({height:X.height,width:X.width,data:G})}static async fromBuffer(X,G){let F=X instanceof ArrayBuffer?_FA(X):X,W=await vFA.default.fromBuffer(F);if(!W||!W.mime)throw Error("Could not find MIME for Buffer");let Z=Y.find(($)=>$.mime===W.mime);if(!Z||!Z.decode)throw Error(`Mime type ${W.mime} does not support decoding`);let U=new J(await Z.decode(F,G?.[Z.mime]));return U.mime=W.mime,kFA(U,F),U}inspect(){return""}toString(){return"[object Jimp]"}get width(){return this.bitmap.width}get height(){return this.bitmap.height}async getBuffer(X,G){let F=this.formats.find((Z)=>Z.mime===X);if(!F||!F.encode)throw Error(`Unsupported MIME type: ${X}`);let W;if(F.hasAlpha)W=this;else W=new J({width:this.bitmap.width,height:this.bitmap.height,color:this.background}),xU(W,this);return F.encode(W.bitmap,G)}async getBase64(X,G){let F=await this.getBuffer(X,G);return"data:"+X+";base64,"+F.toString("base64")}async write(X,G){let F=yFA.default.getType(X);await u7A(X,await this.getBuffer(F,G))}clone(){return new J({...this.bitmap,data:Buffer.from(this.bitmap.data)})}getPixelIndex(X,G,F){let W,Z;if(!F)F=SC.EXTEND;if(typeof X!=="number"||typeof G!=="number")throw Error("x and y must be numbers");if(X=Math.round(X),G=Math.round(G),W=X,Z=G,F===SC.EXTEND){if(X<0)W=0;if(X>=this.bitmap.width)W=this.bitmap.width-1;if(G<0)Z=0;if(G>=this.bitmap.height)Z=this.bitmap.height-1}if(F===SC.WRAP){if(X<0)W=this.bitmap.width+X;if(X>=this.bitmap.width)W=X%this.bitmap.width;if(G<0)Z=this.bitmap.height+G;if(G>=this.bitmap.height)Z=G%this.bitmap.height}let U=this.bitmap.width*Z+W<<2;if(W<0||W>=this.bitmap.width)U=-1;if(Z<0||Z>=this.bitmap.height)U=-1;return U}getPixelColor(X,G){if(typeof X!=="number"||typeof G!=="number")throw Error("x and y must be numbers");let F=this.getPixelIndex(X,G);return this.bitmap.data.readUInt32BE(F)}setPixelColor(X,G,F){if(typeof X!=="number"||typeof G!=="number"||typeof F!=="number")throw Error("hex, x and y must be numbers");let W=this.getPixelIndex(G,F);return this.bitmap.data.writeUInt32BE(X,W),this}hasAlpha(){let{width:X,height:G,data:F}=this.bitmap,W=X*G<<2;for(let Z=3;Z0&&this.heightOriginal>0&&this.targetWidth>0&&this.targetHeight>0)this.configurePasses();else throw console.log(this),Error("Invalid settings specified for the resizer.")};HY.prototype.configurePasses=function(){if(this.widthOriginal===this.targetWidth)this.resizeWidth=this.bypassResizer;else if(this.ratioWeightWidthPass=this.widthOriginal/this.targetWidth,this.ratioWeightWidthPass<1&&this.interpolationPass)this.initializeFirstPassBuffers(!0),this.resizeWidth=this.colorChannels===4?this.resizeWidthInterpolatedRGBA:this.resizeWidthInterpolatedRGB;else this.initializeFirstPassBuffers(!1),this.resizeWidth=this.colorChannels===4?this.resizeWidthRGBA:this.resizeWidthRGB;if(this.heightOriginal===this.targetHeight)this.resizeHeight=this.bypassResizer;else if(this.ratioWeightHeightPass=this.heightOriginal/this.targetHeight,this.ratioWeightHeightPass<1&&this.interpolationPass)this.initializeSecondPassBuffers(!0),this.resizeHeight=this.resizeHeightInterpolated;else this.initializeSecondPassBuffers(!1),this.resizeHeight=this.colorChannels===4?this.resizeHeightRGBA:this.resizeHeightRGB};HY.prototype._resizeWidthInterpolatedRGBChannels=function(A,Q){let B=Q?4:3,Y=this.ratioWeightWidthPass,J=this.widthBuffer,C=0,X=0,G=0,F=0,W=0,Z;for(Z=0;C<0.3333333333333333;Z+=B,C+=Y)for(X=Z,G=0;X=U)$+=B,E=$,Z-=U;else{E+=Z;break}}while(Z>0&&$=F)W=E,Z=W,G-=F;else{Z+=G;break}}while(G>0&&W3)this.outputWidthWorkBenchOpaquePixelsCount=this.generateFloat64Buffer(this.heightOriginal)}};HY.prototype.initializeSecondPassBuffers=function(A){if(this.heightBuffer=this.generateUint8Buffer(this.finalResultSize),!A){if(this.outputHeightWorkBench=this.generateFloatBuffer(this.targetWidthMultipliedByChannels),this.colorChannels>3)this.outputHeightWorkBenchOpaquePixelsCount=this.generateFloat64Buffer(this.targetWidth)}};HY.prototype.generateFloatBuffer=function(A){try{return new Float32Array(A)}catch(Q){return console.error(Q),[]}};HY.prototype.generateFloat64Buffer=function(A){try{return new Float64Array(A)}catch(Q){return console.error(Q),[]}};HY.prototype.generateUint8Buffer=function(A){try{return new Uint8Array(A)}catch(Q){return console.error(Q),[]}};var gFA=HY;var ox={nearestNeighbor(A,Q){let{width:B,height:Y}=A,J=Q.width,C=Q.height,X=A.data,G=Q.data;for(let F=0;F0?J[P-4]:2*J[P]-J[P+4],O=J[P],k=J[P+4],T=z0?K[P-U*4]:2*K[P]-K[P+U*4],O=K[P],k=K[P+U*4],T=z1)for(let H=0;H{A.bitmap.data=Buffer.from(X),A.bitmap.width=Y,A.bitmap.height=J}).resize(A.bitmap.data);return A},scale(A,Q){let{f:B,mode:Y}=typeof Q==="number"?{f:Q}:H0B.parse(Q),J=A.bitmap.width*B,C=A.bitmap.height*B;return this.resize(A,{w:J,h:C,mode:Y})},scaleToFit(A,Q){let{h:B,w:Y,mode:J}=I0B.parse(Q),C=Y/B>A.bitmap.width/A.bitmap.height?B/A.bitmap.height:Y/A.bitmap.width;return this.scale(A,{f:C,mode:J})}};var N0B=s.object({w:s.number(),h:s.number(),align:s.number().optional(),mode:s.nativeEnum(U8).optional()}),xFA={contain(A,Q){let{w:B,h:Y,align:J=E5.CENTER|K5.MIDDLE,mode:C}=N0B.parse(Q),X=J&7,G=J>>3;if(!(X!==0&&!(X&X-1)||G!==0&&!(G&G-1)))throw Error("only use one flag per alignment direction");let F=X>>1,W=G>>1,Z=B/Y>A.bitmap.width/A.bitmap.height?Y/A.bitmap.height:B/A.bitmap.width,U=kC.scale(G8(A),{f:Z,mode:C});return A=kC.resize(A,{w:B,h:Y,mode:C}),A.scan(($,E,K)=>{A.bitmap.data.writeUInt32BE(A.background,K)}),A=hU.blit(A,{src:U,x:(A.bitmap.width-U.bitmap.width)/2*F,y:(A.bitmap.height-U.bitmap.height)/2*W}),A}};var q0B=s.object({x:s.number(),y:s.number(),w:s.number(),h:s.number()}),M0B=s.object({tolerance:s.number().min(0).max(1).optional(),cropOnlyFrames:s.boolean().optional(),cropSymmetric:s.boolean().optional(),leaveBorder:s.number().optional(),ignoreSides:s.object({north:s.boolean().optional(),south:s.boolean().optional(),east:s.boolean().optional(),west:s.boolean().optional()}).optional()}),mU={crop(A,Q){let{x:B,y:Y,w:J,h:C}=q0B.parse(Q);if(B=Math.round(B),Y=Math.round(Y),J=Math.round(J),C=Math.round(C),B===0&&J===A.bitmap.width){let X=J*Y+B<<2,G=X+(C*J<<2);A.bitmap.data=A.bitmap.data.slice(X,G)}else{let X=Buffer.allocUnsafe(J*C*4),G=0;G5(A,B,Y,J,C,function(F,W,Z){let U=A.bitmap.data.readUInt32BE(Z);X.writeUInt32BE(U,G),G+=4}),A.bitmap.data=X}return A.bitmap.width=J,A.bitmap.height=C,A},autocrop(A,Q={}){let{tolerance:B=0.0002,cropOnlyFrames:Y=!0,cropSymmetric:J=!1,leaveBorder:C=0,ignoreSides:X}=typeof Q==="number"?{tolerance:Q}:M0B.parse(Q),G=A.bitmap.width,F=A.bitmap.height,W=1,Z={north:!1,south:!1,east:!1,west:!1,...X},U=A.getPixelColor(0,0),$=QU(U),E=0,K=0,I=0,V=0;if(U=A.getPixelColor(0,0),!Z.north)A:for(let z=0;zB)break A}E++}if(U=A.getPixelColor(G,0),!Z.west)A:for(let z=0;zB)break A}V++}if(U=A.getPixelColor(0,F),!Z.south)A:for(let z=F-1;z>=E+1;z--){for(let M=G-K-1;M>=0;M--){let N=A.getPixelColor(M,z),q=QU(N);if(XH($,q)>B)break A}I++}if(U=A.getPixelColor(G,F),!Z.east)A:for(let z=G-1;z>=0+V+1;z--){for(let M=F-1;M>=0+E;M--){let N=A.getPixelColor(z,M),q=QU(N);if(XH($,q)>B)break A}K++}let H=!1;if(V-=C,K-=C,E-=C,I-=C,J){let z=Math.min(K,V),M=Math.min(E,I);V=z,K=z,E=M,I=M}V=V>=0?V:0,K=K>=0?K:0,E=E>=0?E:0,I=I>=0?I:0;let D=G-(V+K),L=F-(I+E);if(Y)H=K!==0&&E!==0&&V!==0&&I!==0;else H=K!==0||E!==0||V!==0||I!==0;if(H)this.crop(A,{x:V,y:E,w:D,h:L});return A}};var R0B=s.object({w:s.number(),h:s.number(),align:s.number().optional(),mode:s.nativeEnum(U8).optional()}),fFA={cover(A,Q){let{w:B,h:Y,align:J=E5.CENTER|K5.MIDDLE,mode:C}=R0B.parse(Q),X=J&7,G=J>>3;if(!(X!==0&&!(X&X-1)||G!==0&&!(G&G-1)))throw Error("only use one flag per alignment direction");let F=X>>1,W=G>>1,Z=B/Y>A.bitmap.width/A.bitmap.height?B/A.bitmap.width:Y/A.bitmap.height;return A=kC.scale(A,{f:Z,mode:C}),A=mU.crop(A,{x:(A.bitmap.width-B)/2*F,y:(A.bitmap.height-Y)/2*W,w:B,h:Y}),A}};var j0B=s.object({map:M7,offset:s.number()}),bFA={displace(A,Q){let{map:B,offset:Y}=j0B.parse(Q),J=G8(A);return A.scan((C,X,G)=>{let F=B.bitmap.data[G]/256*Y;F=Math.round(F);let W=A.getPixelIndex(C+F,X);A.bitmap.data[W]=J.bitmap.data[G],A.bitmap.data[W+1]=J.bitmap.data[G+1],A.bitmap.data[W+2]=J.bitmap.data[G+2]}),A}};var mFA={dither(A){let Q=[1,9,3,11,13,5,15,7,4,12,2,10,16,8,14,6];return A.scan((B,Y,J)=>{let C=((Y&3)<<2)+B%4,X=Q[C];A.bitmap.data[J]=Math.min(A.bitmap.data[J]+X,255),A.bitmap.data[J+1]=Math.min(A.bitmap.data[J+1]+X,255),A.bitmap.data[J+2]=Math.min(A.bitmap.data[J+2]+X,255)}),A}};var T0B=s.object({radius:s.number().min(0).optional()}),uFA={fisheye(A,Q={}){let{radius:B=2.5}=T0B.parse(Q),Y=G8(A),{width:J,height:C}=Y.bitmap;return Y.scan((X,G)=>{let F=X/J,W=G/C,Z=Math.sqrt(Math.pow(F-0.5,2)+Math.pow(W-0.5,2)),U=2*Math.pow(Z,B),$=(F-0.5)/Z,E=(W-0.5)/Z,K=Math.round((U*$+0.5)*J),I=Math.round((U*E+0.5)*C),V=Y.getPixelColor(K,I);A.setPixelColor(V,X,G)}),A.setPixelColor(Y.getPixelColor(J/2,C/2),J/2,C/2),A}};var k0B=s.object({horizontal:s.boolean().optional(),vertical:s.boolean().optional()}),dFA={flip(A,Q){let{horizontal:B,vertical:Y}=k0B.parse(Q),J=Buffer.alloc(A.bitmap.data.length);return A.scan((C,X,G)=>{let F=B?A.bitmap.width-1-C:C,W=Y?A.bitmap.height-1-X:X,Z=A.bitmap.width*W+F<<2,U=A.bitmap.data.readUInt32BE(G);J.writeUInt32BE(U,Z)}),A.bitmap.data=Buffer.from(J),A}};var dH=qA(iFA(),1);class nFA{size;smallerSize;constructor(A,Q){this.size=A||32,this.smallerSize=Q||8,h0B(this.size)}distance(A,Q){let B=0;for(let Y=0;YJ?"1":"0";return C}}function y0B(A){let Q=A&255;A>>>=8;let B=A&255;A>>>=8;let Y=A&255;return A>>>=8,{r:A&255,g:Y,b:B,a:Q}}var MR=[];function h0B(A){for(let Q=1;Q64)throw Error("base must be a number between 2 and 64");let B=sFA.slice(0,Q),Y=this.pHash(A),J=rFA[Q];return dH.default(dH.default.BIN,B)(Y).padStart(J,"0")},distanceFromHash(A,Q){let B=new ex,Y=B.getHash(A);return B.distance(Y,Q)}};var f0B=s.object({src:M7,x:s.number().optional(),y:s.number().optional()}),b0B=s.union([M7,f0B]),oFA={mask(A,Q){b0B.parse(Q);let B,Y,J;if("bitmap"in Q)B=Q,Y=0,J=0;else B=Q.src,Y=Q.x??0,J=Q.y??0;Y=Math.round(Y),J=Math.round(J);let C=A.bitmap.width,X=A.bitmap.height;return B.scan(function(G,F,W){let Z=Y+G,U=J+F;if(Z>=0&&U>=0&&Z{if(uU(A,G+(Y.length>1?" ":""))>B){let U=G[Symbol.iterator](),$="";for(let E of U){let K=[...C,$+E].join(" "),I=uU(A,K);if(IB)J.push([...C,$]),C=[],$=E;else J.push([...C,$+E]),C=[],$=""}return}let W=[...C,G].join(" "),Z=uU(A,W);if(Z<=B&&!G.includes(` +>>> no match, partial?`,A,U,Q,$),U===G)return!0}return!1}let K;if(typeof F==="string")K=Z===F,this.debug("string match",F,Z,K);else K=F.test(Z),this.debug("pattern match",F,Z,K);if(!K)return!1}if(C===G&&X===W)return!0;else if(C===G)return B;else if(X===W)return C===G-1&&A[C]==="";else throw Error("wtf?")}braceExpand(){return eYA(this.pattern,this.options)}parse(A){zI(A);let Q=this.options;if(A==="**")return JJ;if(A==="")return"";let B,Y=null;if(B=A.match(RmQ))Y=Q.dot?jmQ:wmQ;else if(B=A.match(KmQ))Y=(Q.nocase?Q.dot?DmQ:HmQ:Q.dot?ImQ:VmQ)(B[1]);else if(B=A.match(OmQ))Y=(Q.nocase?Q.dot?TmQ:PmQ:Q.dot?SmQ:kmQ)(B);else if(B=A.match(NmQ))Y=Q.dot?qmQ:LmQ;else if(B=A.match(MmQ))Y=zmQ;let J=YJ.fromGlob(A,this.options).toMMPattern();if(Y&&typeof J==="object")Reflect.defineProperty(J,"test",{value:Y});return J}makeRe(){if(this.regexp||this.regexp===!1)return this.regexp;let A=this.set;if(!A.length)return this.regexp=!1,this.regexp;let Q=this.options,B=Q.noglobstar?ymQ:Q.dot?gmQ:hmQ,Y=new Set(Q.nocase?["i"]:[]),J=A.map((G)=>{let W=G.map((F)=>{if(F instanceof RegExp)for(let Z of F.flags.split(""))Y.add(Z);return typeof F==="string"?umQ(F):F===JJ?JJ:F._src});return W.forEach((F,Z)=>{let U=W[Z+1],$=W[Z-1];if(F!==JJ||$===JJ)return;if($===void 0)if(U!==void 0&&U!==JJ)W[Z+1]="(?:\\/|"+B+"\\/)?"+U;else W[Z]=B;else if(U===void 0)W[Z-1]=$+"(?:\\/|"+B+")?";else if(U!==JJ)W[Z-1]=$+"(?:\\/|\\/"+B+"\\/)"+U,W[Z+1]=JJ}),W.filter((F)=>F!==JJ).join("/")}).join("|"),[C,X]=A.length>1?["(?:",")"]:["",""];if(J="^"+C+J+X+"$",this.negate)J="^(?!"+J+").+$";try{this.regexp=new RegExp(J,[...Y].join(""))}catch(G){this.regexp=!1}return this.regexp}slashSplit(A){if(this.preserveMultipleSlashes)return A.split("/");else if(this.isWindows&&/^\/\/[^\/]+/.test(A))return["",...A.split(/\/+/)];else return A.split(/\/+/)}match(A,Q=this.partial){if(this.debug("match",A,this.pattern),this.comment)return!1;if(this.empty)return A==="";if(A==="/"&&Q)return!0;let B=this.options;if(this.isWindows)A=A.split("\\").join("/");let Y=this.slashSplit(A);this.debug(this.pattern,"split",Y);let J=this.set;this.debug(this.pattern,"set",J);let C=Y[Y.length-1];if(!C)for(let X=Y.length-2;!C&&X>=0;X--)C=Y[X];for(let X=0;X{typeof ry.emitWarning==="function"?ry.emitWarning(A,Q,B,Y):console.error(`[${B}] ${Q}: ${A}`)},w2=globalThis.AbortController,AJA=globalThis.AbortSignal;if(typeof w2>"u"){AJA=class{onabort;_onabort=[];reason;aborted=!1;addEventListener(Y,J){this._onabort.push(J)}},w2=class{constructor(){Q()}signal=new AJA;abort(Y){if(this.signal.aborted)return;this.signal.reason=Y,this.signal.aborted=!0;for(let J of this.signal._onabort)J(Y);this.signal.onabort?.(Y)}};let A=ry.env?.LRU_CACHE_IGNORE_AC_WARNING!=="1",Q=()=>{if(!A)return;A=!1,BJA("AbortController is not defined. If using lru-cache in node 14, load an AbortController polyfill from the `node-abort-controller` package. A minimal polyfill is provided for use by LRUCache.fetch(), but it should not be relied upon in other contexts (eg, passing it to other APIs that use AbortController/AbortSignal might have undesirable effects). You may disable this with LRU_CACHE_IGNORE_AC_WARNING=1 in the env.","NO_ABORT_CONTROLLER","ENOTSUP",Q)}}var dmQ=(A)=>!QJA.has(A),QXY=Symbol("type"),A7=(A)=>A&&A===Math.floor(A)&&A>0&&isFinite(A),YJA=(A)=>!A7(A)?null:A<=Math.pow(2,8)?Uint8Array:A<=Math.pow(2,16)?Uint16Array:A<=Math.pow(2,32)?Uint32Array:A<=Number.MAX_SAFE_INTEGER?wI:null;class wI extends Array{constructor(A){super(A);this.fill(0)}}class b4{heap;length;static#A=!1;static create(A){let Q=YJA(A);if(!Q)return[];b4.#A=!0;let B=new b4(A,Q);return b4.#A=!1,B}constructor(A,Q){if(!b4.#A)throw TypeError("instantiate Stack using Stack.create(n)");this.heap=new Q(A),this.length=0}push(A){this.heap[this.length++]=A}pop(){return this.heap[--this.length]}}class jI{#A;#Q;#B;#Y;#J;#C;#W;ttl;ttlResolution;ttlAutopurge;updateAgeOnGet;updateAgeOnHas;allowStale;noDisposeOnSet;noUpdateTTL;maxEntrySize;sizeCalculation;noDeleteOnFetchRejection;noDeleteOnStaleGet;allowStaleOnFetchAbort;allowStaleOnFetchRejection;ignoreFetchAbort;#X;#G;#Z;#U;#F;#E;#V;#I;#D;#O;#N;#P;#M;#q;#L;#w;#H;#S;static unsafeExposeInternals(A){return{starts:A.#M,ttls:A.#q,sizes:A.#P,keyMap:A.#Z,keyList:A.#U,valList:A.#F,next:A.#E,prev:A.#V,get head(){return A.#I},get tail(){return A.#D},free:A.#O,isBackgroundFetch:(Q)=>A.#K(Q),backgroundFetch:(Q,B,Y,J)=>A.#g(Q,B,Y,J),moveToTail:(Q)=>A.#f(Q),indexes:(Q)=>A.#j(Q),rindexes:(Q)=>A.#T(Q),isStale:(Q)=>A.#R(Q)}}get max(){return this.#A}get maxSize(){return this.#Q}get calculatedSize(){return this.#G}get size(){return this.#X}get fetchMethod(){return this.#C}get memoMethod(){return this.#W}get dispose(){return this.#B}get onInsert(){return this.#Y}get disposeAfter(){return this.#J}constructor(A){let{max:Q=0,ttl:B,ttlResolution:Y=1,ttlAutopurge:J,updateAgeOnGet:C,updateAgeOnHas:X,allowStale:G,dispose:W,onInsert:F,disposeAfter:Z,noDisposeOnSet:U,noUpdateTTL:$,maxSize:E=0,maxEntrySize:K=0,sizeCalculation:I,fetchMethod:V,memoMethod:H,noDeleteOnFetchRejection:D,noDeleteOnStaleGet:L,allowStaleOnFetchRejection:z,allowStaleOnFetchAbort:M,ignoreFetchAbort:N}=A;if(Q!==0&&!A7(Q))throw TypeError("max option must be a nonnegative integer");let q=Q?YJA(Q):Array;if(!q)throw Error("invalid max value: "+Q);if(this.#A=Q,this.#Q=E,this.maxEntrySize=K||this.#Q,this.sizeCalculation=I,this.sizeCalculation){if(!this.#Q&&!this.maxEntrySize)throw TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");if(typeof this.sizeCalculation!=="function")throw TypeError("sizeCalculation set to non-function")}if(H!==void 0&&typeof H!=="function")throw TypeError("memoMethod must be a function if defined");if(this.#W=H,V!==void 0&&typeof V!=="function")throw TypeError("fetchMethod must be a function if specified");if(this.#C=V,this.#w=!!V,this.#Z=new Map,this.#U=Array(Q).fill(void 0),this.#F=Array(Q).fill(void 0),this.#E=new q(Q),this.#V=new q(Q),this.#I=0,this.#D=0,this.#O=b4.create(Q),this.#X=0,this.#G=0,typeof W==="function")this.#B=W;if(typeof F==="function")this.#Y=F;if(typeof Z==="function")this.#J=Z,this.#N=[];else this.#J=void 0,this.#N=void 0;if(this.#L=!!this.#B,this.#S=!!this.#Y,this.#H=!!this.#J,this.noDisposeOnSet=!!U,this.noUpdateTTL=!!$,this.noDeleteOnFetchRejection=!!D,this.allowStaleOnFetchRejection=!!z,this.allowStaleOnFetchAbort=!!M,this.ignoreFetchAbort=!!N,this.maxEntrySize!==0){if(this.#Q!==0){if(!A7(this.#Q))throw TypeError("maxSize must be a positive integer if specified")}if(!A7(this.maxEntrySize))throw TypeError("maxEntrySize must be a positive integer if specified");this.#m()}if(this.allowStale=!!G,this.noDeleteOnStaleGet=!!L,this.updateAgeOnGet=!!C,this.updateAgeOnHas=!!X,this.ttlResolution=A7(Y)||Y===0?Y:1,this.ttlAutopurge=!!J,this.ttl=B||0,this.ttl){if(!A7(this.ttl))throw TypeError("ttl must be a positive integer if specified");this.#$()}if(this.#A===0&&this.ttl===0&&this.#Q===0)throw TypeError("At least one of max, maxSize, or ttl is required");if(!this.ttlAutopurge&&!this.#A&&!this.#Q){if(dmQ("LRU_CACHE_UNBOUNDED"))QJA.add("LRU_CACHE_UNBOUNDED"),BJA("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning","LRU_CACHE_UNBOUNDED",jI)}}getRemainingTTL(A){return this.#Z.has(A)?1/0:0}#$(){let A=new wI(this.#A),Q=new wI(this.#A);this.#q=A,this.#M=Q,this.#k=(J,C,X=f4.now())=>{if(Q[J]=C!==0?X:0,A[J]=C,C!==0&&this.ttlAutopurge){let G=setTimeout(()=>{if(this.#R(J))this.#_(this.#U[J],"expire")},C+1);if(G.unref)G.unref()}},this.#v=(J)=>{Q[J]=A[J]!==0?f4.now():0},this.#z=(J,C)=>{if(A[C]){let X=A[C],G=Q[C];if(!X||!G)return;J.ttl=X,J.start=G,J.now=B||Y();let W=J.now-G;J.remainingTTL=X-W}};let B=0,Y=()=>{let J=f4.now();if(this.ttlResolution>0){B=J;let C=setTimeout(()=>B=0,this.ttlResolution);if(C.unref)C.unref()}return J};this.getRemainingTTL=(J)=>{let C=this.#Z.get(J);if(C===void 0)return 0;let X=A[C],G=Q[C];if(!X||!G)return 1/0;let W=(B||Y())-G;return X-W},this.#R=(J)=>{let C=Q[J],X=A[J];return!!X&&!!C&&(B||Y())-C>X}}#v=()=>{};#z=()=>{};#k=()=>{};#R=()=>!1;#m(){let A=new wI(this.#A);this.#G=0,this.#P=A,this.#y=(Q)=>{this.#G-=A[Q],A[Q]=0},this.#u=(Q,B,Y,J)=>{if(this.#K(B))return 0;if(!A7(Y))if(J){if(typeof J!=="function")throw TypeError("sizeCalculation must be a function");if(Y=J(B,Q),!A7(Y))throw TypeError("sizeCalculation return invalid (expect positive integer)")}else throw TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");return Y},this.#h=(Q,B,Y)=>{if(A[Q]=B,this.#Q){let J=this.#Q-A[Q];while(this.#G>J)this.#x(!0)}if(this.#G+=A[Q],Y)Y.entrySize=B,Y.totalCalculatedSize=this.#G}}#y=(A)=>{};#h=(A,Q,B)=>{};#u=(A,Q,B,Y)=>{if(B||Y)throw TypeError("cannot set size without setting maxSize or maxEntrySize on cache");return 0};*#j({allowStale:A=this.allowStale}={}){if(this.#X)for(let Q=this.#D;;){if(!this.#d(Q))break;if(A||!this.#R(Q))yield Q;if(Q===this.#I)break;else Q=this.#V[Q]}}*#T({allowStale:A=this.allowStale}={}){if(this.#X)for(let Q=this.#I;;){if(!this.#d(Q))break;if(A||!this.#R(Q))yield Q;if(Q===this.#D)break;else Q=this.#E[Q]}}#d(A){return A!==void 0&&this.#Z.get(this.#U[A])===A}*entries(){for(let A of this.#j())if(this.#F[A]!==void 0&&this.#U[A]!==void 0&&!this.#K(this.#F[A]))yield[this.#U[A],this.#F[A]]}*rentries(){for(let A of this.#T())if(this.#F[A]!==void 0&&this.#U[A]!==void 0&&!this.#K(this.#F[A]))yield[this.#U[A],this.#F[A]]}*keys(){for(let A of this.#j()){let Q=this.#U[A];if(Q!==void 0&&!this.#K(this.#F[A]))yield Q}}*rkeys(){for(let A of this.#T()){let Q=this.#U[A];if(Q!==void 0&&!this.#K(this.#F[A]))yield Q}}*values(){for(let A of this.#j())if(this.#F[A]!==void 0&&!this.#K(this.#F[A]))yield this.#F[A]}*rvalues(){for(let A of this.#T())if(this.#F[A]!==void 0&&!this.#K(this.#F[A]))yield this.#F[A]}[Symbol.iterator](){return this.entries()}[Symbol.toStringTag]="LRUCache";find(A,Q={}){for(let B of this.#j()){let Y=this.#F[B],J=this.#K(Y)?Y.__staleWhileFetching:Y;if(J===void 0)continue;if(A(J,this.#U[B],this))return this.get(this.#U[B],Q)}}forEach(A,Q=this){for(let B of this.#j()){let Y=this.#F[B],J=this.#K(Y)?Y.__staleWhileFetching:Y;if(J===void 0)continue;A.call(Q,J,this.#U[B],this)}}rforEach(A,Q=this){for(let B of this.#T()){let Y=this.#F[B],J=this.#K(Y)?Y.__staleWhileFetching:Y;if(J===void 0)continue;A.call(Q,J,this.#U[B],this)}}purgeStale(){let A=!1;for(let Q of this.#T({allowStale:!0}))if(this.#R(Q))this.#_(this.#U[Q],"expire"),A=!0;return A}info(A){let Q=this.#Z.get(A);if(Q===void 0)return;let B=this.#F[Q],Y=this.#K(B)?B.__staleWhileFetching:B;if(Y===void 0)return;let J={value:Y};if(this.#q&&this.#M){let C=this.#q[Q],X=this.#M[Q];if(C&&X){let G=C-(f4.now()-X);J.ttl=G,J.start=Date.now()}}if(this.#P)J.size=this.#P[Q];return J}dump(){let A=[];for(let Q of this.#j({allowStale:!0})){let B=this.#U[Q],Y=this.#F[Q],J=this.#K(Y)?Y.__staleWhileFetching:Y;if(J===void 0||B===void 0)continue;let C={value:J};if(this.#q&&this.#M){C.ttl=this.#q[Q];let X=f4.now()-this.#M[Q];C.start=Math.floor(Date.now()-X)}if(this.#P)C.size=this.#P[Q];A.unshift([B,C])}return A}load(A){this.clear();for(let[Q,B]of A){if(B.start){let Y=Date.now()-B.start;B.start=f4.now()-Y}this.set(Q,B.value,B)}}set(A,Q,B={}){if(Q===void 0)return this.delete(A),this;let{ttl:Y=this.ttl,start:J,noDisposeOnSet:C=this.noDisposeOnSet,sizeCalculation:X=this.sizeCalculation,status:G}=B,{noUpdateTTL:W=this.noUpdateTTL}=B,F=this.#u(A,Q,B.size||0,X);if(this.maxEntrySize&&F>this.maxEntrySize){if(G)G.set="miss",G.maxEntrySizeExceeded=!0;return this.#_(A,"set"),this}let Z=this.#X===0?void 0:this.#Z.get(A);if(Z===void 0){if(Z=this.#X===0?this.#D:this.#O.length!==0?this.#O.pop():this.#X===this.#A?this.#x(!1):this.#X,this.#U[Z]=A,this.#F[Z]=Q,this.#Z.set(A,Z),this.#E[this.#D]=Z,this.#V[Z]=this.#D,this.#D=Z,this.#X++,this.#h(Z,F,G),G)G.set="add";if(W=!1,this.#S)this.#Y?.(Q,A,"add")}else{this.#f(Z);let U=this.#F[Z];if(Q!==U){if(this.#w&&this.#K(U)){U.__abortController.abort(Error("replaced"));let{__staleWhileFetching:$}=U;if($!==void 0&&!C){if(this.#L)this.#B?.($,A,"set");if(this.#H)this.#N?.push([$,A,"set"])}}else if(!C){if(this.#L)this.#B?.(U,A,"set");if(this.#H)this.#N?.push([U,A,"set"])}if(this.#y(Z),this.#h(Z,F,G),this.#F[Z]=Q,G){G.set="replace";let $=U&&this.#K(U)?U.__staleWhileFetching:U;if($!==void 0)G.oldValue=$}}else if(G)G.set="update";if(this.#S)this.onInsert?.(Q,A,Q===U?"update":"replace")}if(Y!==0&&!this.#q)this.#$();if(this.#q){if(!W)this.#k(Z,Y,J);if(G)this.#z(G,Z)}if(!C&&this.#H&&this.#N){let U=this.#N,$;while($=U?.shift())this.#J?.(...$)}return this}pop(){try{while(this.#X){let A=this.#F[this.#I];if(this.#x(!0),this.#K(A)){if(A.__staleWhileFetching)return A.__staleWhileFetching}else if(A!==void 0)return A}}finally{if(this.#H&&this.#N){let A=this.#N,Q;while(Q=A?.shift())this.#J?.(...Q)}}}#x(A){let Q=this.#I,B=this.#U[Q],Y=this.#F[Q];if(this.#w&&this.#K(Y))Y.__abortController.abort(Error("evicted"));else if(this.#L||this.#H){if(this.#L)this.#B?.(Y,B,"evict");if(this.#H)this.#N?.push([Y,B,"evict"])}if(this.#y(Q),A)this.#U[Q]=void 0,this.#F[Q]=void 0,this.#O.push(Q);if(this.#X===1)this.#I=this.#D=0,this.#O.length=0;else this.#I=this.#E[Q];return this.#Z.delete(B),this.#X--,Q}has(A,Q={}){let{updateAgeOnHas:B=this.updateAgeOnHas,status:Y}=Q,J=this.#Z.get(A);if(J!==void 0){let C=this.#F[J];if(this.#K(C)&&C.__staleWhileFetching===void 0)return!1;if(!this.#R(J)){if(B)this.#v(J);if(Y)Y.has="hit",this.#z(Y,J);return!0}else if(Y)Y.has="stale",this.#z(Y,J)}else if(Y)Y.has="miss";return!1}peek(A,Q={}){let{allowStale:B=this.allowStale}=Q,Y=this.#Z.get(A);if(Y===void 0||!B&&this.#R(Y))return;let J=this.#F[Y];return this.#K(J)?J.__staleWhileFetching:J}#g(A,Q,B,Y){let J=Q===void 0?void 0:this.#F[Q];if(this.#K(J))return J;let C=new w2,{signal:X}=B;X?.addEventListener("abort",()=>C.abort(X.reason),{signal:C.signal});let G={signal:C.signal,options:B,context:Y},W=(K,I=!1)=>{let{aborted:V}=C.signal,H=B.ignoreFetchAbort&&K!==void 0;if(B.status)if(V&&!I){if(B.status.fetchAborted=!0,B.status.fetchError=C.signal.reason,H)B.status.fetchAbortIgnored=!0}else B.status.fetchResolved=!0;if(V&&!H&&!I)return Z(C.signal.reason);let D=$;if(this.#F[Q]===$)if(K===void 0)if(D.__staleWhileFetching)this.#F[Q]=D.__staleWhileFetching;else this.#_(A,"fetch");else{if(B.status)B.status.fetchUpdated=!0;this.set(A,K,G.options)}return K},F=(K)=>{if(B.status)B.status.fetchRejected=!0,B.status.fetchError=K;return Z(K)},Z=(K)=>{let{aborted:I}=C.signal,V=I&&B.allowStaleOnFetchAbort,H=V||B.allowStaleOnFetchRejection,D=H||B.noDeleteOnFetchRejection,L=$;if(this.#F[Q]===$){if(!D||L.__staleWhileFetching===void 0)this.#_(A,"fetch");else if(!V)this.#F[Q]=L.__staleWhileFetching}if(H){if(B.status&&L.__staleWhileFetching!==void 0)B.status.returnedStale=!0;return L.__staleWhileFetching}else if(L.__returned===L)throw K},U=(K,I)=>{let V=this.#C?.(A,J,G);if(V&&V instanceof Promise)V.then((H)=>K(H===void 0?void 0:H),I);C.signal.addEventListener("abort",()=>{if(!B.ignoreFetchAbort||B.allowStaleOnFetchAbort){if(K(void 0),B.allowStaleOnFetchAbort)K=(H)=>W(H,!0)}})};if(B.status)B.status.fetchDispatched=!0;let $=new Promise(U).then(W,F),E=Object.assign($,{__abortController:C,__staleWhileFetching:J,__returned:void 0});if(Q===void 0)this.set(A,E,{...G.options,status:void 0}),Q=this.#Z.get(A);else this.#F[Q]=E;return E}#K(A){if(!this.#w)return!1;let Q=A;return!!Q&&Q instanceof Promise&&Q.hasOwnProperty("__staleWhileFetching")&&Q.__abortController instanceof w2}async fetch(A,Q={}){let{allowStale:B=this.allowStale,updateAgeOnGet:Y=this.updateAgeOnGet,noDeleteOnStaleGet:J=this.noDeleteOnStaleGet,ttl:C=this.ttl,noDisposeOnSet:X=this.noDisposeOnSet,size:G=0,sizeCalculation:W=this.sizeCalculation,noUpdateTTL:F=this.noUpdateTTL,noDeleteOnFetchRejection:Z=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:U=this.allowStaleOnFetchRejection,ignoreFetchAbort:$=this.ignoreFetchAbort,allowStaleOnFetchAbort:E=this.allowStaleOnFetchAbort,context:K,forceRefresh:I=!1,status:V,signal:H}=Q;if(!this.#w){if(V)V.fetch="get";return this.get(A,{allowStale:B,updateAgeOnGet:Y,noDeleteOnStaleGet:J,status:V})}let D={allowStale:B,updateAgeOnGet:Y,noDeleteOnStaleGet:J,ttl:C,noDisposeOnSet:X,size:G,sizeCalculation:W,noUpdateTTL:F,noDeleteOnFetchRejection:Z,allowStaleOnFetchRejection:U,allowStaleOnFetchAbort:E,ignoreFetchAbort:$,status:V,signal:H},L=this.#Z.get(A);if(L===void 0){if(V)V.fetch="miss";let z=this.#g(A,L,D,K);return z.__returned=z}else{let z=this.#F[L];if(this.#K(z)){let P=B&&z.__staleWhileFetching!==void 0;if(V){if(V.fetch="inflight",P)V.returnedStale=!0}return P?z.__staleWhileFetching:z.__returned=z}let M=this.#R(L);if(!I&&!M){if(V)V.fetch="hit";if(this.#f(L),Y)this.#v(L);if(V)this.#z(V,L);return z}let N=this.#g(A,L,D,K),w=N.__staleWhileFetching!==void 0&&B;if(V){if(V.fetch=M?"stale":"refresh",w&&M)V.returnedStale=!0}return w?N.__staleWhileFetching:N.__returned=N}}async forceFetch(A,Q={}){let B=await this.fetch(A,Q);if(B===void 0)throw Error("fetch() returned undefined");return B}memo(A,Q={}){let B=this.#W;if(!B)throw Error("no memoMethod provided to constructor");let{context:Y,forceRefresh:J,...C}=Q,X=this.get(A,C);if(!J&&X!==void 0)return X;let G=B(A,X,{options:C,context:Y});return this.set(A,G,C),G}get(A,Q={}){let{allowStale:B=this.allowStale,updateAgeOnGet:Y=this.updateAgeOnGet,noDeleteOnStaleGet:J=this.noDeleteOnStaleGet,status:C}=Q,X=this.#Z.get(A);if(X!==void 0){let G=this.#F[X],W=this.#K(G);if(C)this.#z(C,X);if(this.#R(X)){if(C)C.get="stale";if(!W){if(!J)this.#_(A,"expire");if(C&&B)C.returnedStale=!0;return B?G:void 0}else{if(C&&B&&G.__staleWhileFetching!==void 0)C.returnedStale=!0;return B?G.__staleWhileFetching:void 0}}else{if(C)C.get="hit";if(W)return G.__staleWhileFetching;if(this.#f(X),Y)this.#v(X);return G}}else if(C)C.get="miss"}#c(A,Q){this.#V[Q]=A,this.#E[A]=Q}#f(A){if(A!==this.#D){if(A===this.#I)this.#I=this.#E[A];else this.#c(this.#V[A],this.#E[A]);this.#c(this.#D,A),this.#D=A}}delete(A){return this.#_(A,"delete")}#_(A,Q){let B=!1;if(this.#X!==0){let Y=this.#Z.get(A);if(Y!==void 0)if(B=!0,this.#X===1)this.#b(Q);else{this.#y(Y);let J=this.#F[Y];if(this.#K(J))J.__abortController.abort(Error("deleted"));else if(this.#L||this.#H){if(this.#L)this.#B?.(J,A,Q);if(this.#H)this.#N?.push([J,A,Q])}if(this.#Z.delete(A),this.#U[Y]=void 0,this.#F[Y]=void 0,Y===this.#D)this.#D=this.#V[Y];else if(Y===this.#I)this.#I=this.#E[Y];else{let C=this.#V[Y];this.#E[C]=this.#E[Y];let X=this.#E[Y];this.#V[X]=this.#V[Y]}this.#X--,this.#O.push(Y)}}if(this.#H&&this.#N?.length){let Y=this.#N,J;while(J=Y?.shift())this.#J?.(...J)}return B}clear(){return this.#b("delete")}#b(A){for(let Q of this.#T({allowStale:!0})){let B=this.#F[Q];if(this.#K(B))B.__abortController.abort(Error("deleted"));else{let Y=this.#U[Q];if(this.#L)this.#B?.(B,Y,A);if(this.#H)this.#N?.push([B,Y,A])}}if(this.#Z.clear(),this.#F.fill(void 0),this.#U.fill(void 0),this.#q&&this.#M)this.#q.fill(0),this.#M.fill(0);if(this.#P)this.#P.fill(0);if(this.#I=0,this.#D=0,this.#O.length=0,this.#G=0,this.#X=0,this.#H&&this.#N){let Q=this.#N,B;while(B=Q?.shift())this.#J?.(...B)}}}import{posix as emQ,win32 as Cg}from"node:path";import{fileURLToPath as AuQ}from"node:url";import{lstatSync as QuQ,readdir as BuQ,readdirSync as YuQ,readlinkSync as JuQ,realpathSync as CuQ}from"fs";import*as XuQ from"node:fs";import{lstat as WuQ,readdir as FuQ,readlink as ZuQ,realpath as $uQ}from"node:fs/promises";import{EventEmitter as Qg}from"node:events";import WJA from"node:stream";import{StringDecoder as cmQ}from"node:string_decoder";var JJA=typeof process==="object"&&process?process:{stdout:null,stderr:null},lmQ=(A)=>!!A&&typeof A==="object"&&(A instanceof gF||A instanceof WJA||pmQ(A)||imQ(A)),pmQ=(A)=>!!A&&typeof A==="object"&&A instanceof Qg&&typeof A.pipe==="function"&&A.pipe!==WJA.Writable.prototype.pipe,imQ=(A)=>!!A&&typeof A==="object"&&A instanceof Qg&&typeof A.write==="function"&&typeof A.end==="function",A6=Symbol("EOF"),Q6=Symbol("maybeEmitEnd"),Q7=Symbol("emittedEnd"),j2=Symbol("emittingEnd"),OI=Symbol("emittedError"),O2=Symbol("closed"),CJA=Symbol("read"),P2=Symbol("flush"),XJA=Symbol("flushChunk"),wC=Symbol("encoding"),m4=Symbol("decoder"),dY=Symbol("flowing"),PI=Symbol("paused"),u4=Symbol("resume"),cY=Symbol("buffer"),nJ=Symbol("pipes"),lY=Symbol("bufferLength"),ay=Symbol("bufferPush"),T2=Symbol("bufferShift"),NJ=Symbol("objectMode"),XY=Symbol("destroyed"),oy=Symbol("error"),ty=Symbol("emitData"),GJA=Symbol("emitEnd"),ey=Symbol("emitEnd2"),k1=Symbol("async"),Ag=Symbol("abort"),S2=Symbol("aborted"),TI=Symbol("signal"),yF=Symbol("dataListeners"),W8=Symbol("discarded"),SI=(A)=>Promise.resolve().then(A),nmQ=(A)=>A(),smQ=(A)=>A==="end"||A==="finish"||A==="prefinish",rmQ=(A)=>A instanceof ArrayBuffer||!!A&&typeof A==="object"&&A.constructor&&A.constructor.name==="ArrayBuffer"&&A.byteLength>=0,amQ=(A)=>!Buffer.isBuffer(A)&&ArrayBuffer.isView(A);class Bg{src;dest;opts;ondrain;constructor(A,Q,B){this.src=A,this.dest=Q,this.opts=B,this.ondrain=()=>A[u4](),this.dest.on("drain",this.ondrain)}unpipe(){this.dest.removeListener("drain",this.ondrain)}proxyErrors(A){}end(){if(this.unpipe(),this.opts.end)this.dest.end()}}class FJA extends Bg{unpipe(){this.src.removeListener("error",this.proxyErrors),super.unpipe()}constructor(A,Q,B){super(A,Q,B);this.proxyErrors=(Y)=>Q.emit("error",Y),A.on("error",this.proxyErrors)}}var omQ=(A)=>!!A.objectMode,tmQ=(A)=>!A.objectMode&&!!A.encoding&&A.encoding!=="buffer";class gF extends Qg{[dY]=!1;[PI]=!1;[nJ]=[];[cY]=[];[NJ];[wC];[k1];[m4];[A6]=!1;[Q7]=!1;[j2]=!1;[O2]=!1;[OI]=null;[lY]=0;[XY]=!1;[TI];[S2]=!1;[yF]=0;[W8]=!1;writable=!0;readable=!0;constructor(...A){let Q=A[0]||{};super();if(Q.objectMode&&typeof Q.encoding==="string")throw TypeError("Encoding and objectMode may not be used together");if(omQ(Q))this[NJ]=!0,this[wC]=null;else if(tmQ(Q))this[wC]=Q.encoding,this[NJ]=!1;else this[NJ]=!1,this[wC]=null;if(this[k1]=!!Q.async,this[m4]=this[wC]?new cmQ(this[wC]):null,Q&&Q.debugExposeBuffer===!0)Object.defineProperty(this,"buffer",{get:()=>this[cY]});if(Q&&Q.debugExposePipes===!0)Object.defineProperty(this,"pipes",{get:()=>this[nJ]});let{signal:B}=Q;if(B)if(this[TI]=B,B.aborted)this[Ag]();else B.addEventListener("abort",()=>this[Ag]())}get bufferLength(){return this[lY]}get encoding(){return this[wC]}set encoding(A){throw Error("Encoding must be set at instantiation time")}setEncoding(A){throw Error("Encoding must be set at instantiation time")}get objectMode(){return this[NJ]}set objectMode(A){throw Error("objectMode must be set at instantiation time")}get["async"](){return this[k1]}set["async"](A){this[k1]=this[k1]||!!A}[Ag](){this[S2]=!0,this.emit("abort",this[TI]?.reason),this.destroy(this[TI]?.reason)}get aborted(){return this[S2]}set aborted(A){}write(A,Q,B){if(this[S2])return!1;if(this[A6])throw Error("write after end");if(this[XY])return this.emit("error",Object.assign(Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),!0;if(typeof Q==="function")B=Q,Q="utf8";if(!Q)Q="utf8";let Y=this[k1]?SI:nmQ;if(!this[NJ]&&!Buffer.isBuffer(A)){if(amQ(A))A=Buffer.from(A.buffer,A.byteOffset,A.byteLength);else if(rmQ(A))A=Buffer.from(A);else if(typeof A!=="string")throw Error("Non-contiguous data written to non-objectMode stream")}if(this[NJ]){if(this[dY]&&this[lY]!==0)this[P2](!0);if(this[dY])this.emit("data",A);else this[ay](A);if(this[lY]!==0)this.emit("readable");if(B)Y(B);return this[dY]}if(!A.length){if(this[lY]!==0)this.emit("readable");if(B)Y(B);return this[dY]}if(typeof A==="string"&&!(Q===this[wC]&&!this[m4]?.lastNeed))A=Buffer.from(A,Q);if(Buffer.isBuffer(A)&&this[wC])A=this[m4].write(A);if(this[dY]&&this[lY]!==0)this[P2](!0);if(this[dY])this.emit("data",A);else this[ay](A);if(this[lY]!==0)this.emit("readable");if(B)Y(B);return this[dY]}read(A){if(this[XY])return null;if(this[W8]=!1,this[lY]===0||A===0||A&&A>this[lY])return this[Q6](),null;if(this[NJ])A=null;if(this[cY].length>1&&!this[NJ])this[cY]=[this[wC]?this[cY].join(""):Buffer.concat(this[cY],this[lY])];let Q=this[CJA](A||null,this[cY][0]);return this[Q6](),Q}[CJA](A,Q){if(this[NJ])this[T2]();else{let B=Q;if(A===B.length||A===null)this[T2]();else if(typeof B==="string")this[cY][0]=B.slice(A),Q=B.slice(0,A),this[lY]-=A;else this[cY][0]=B.subarray(A),Q=B.subarray(0,A),this[lY]-=A}if(this.emit("data",Q),!this[cY].length&&!this[A6])this.emit("drain");return Q}end(A,Q,B){if(typeof A==="function")B=A,A=void 0;if(typeof Q==="function")B=Q,Q="utf8";if(A!==void 0)this.write(A,Q);if(B)this.once("end",B);if(this[A6]=!0,this.writable=!1,this[dY]||!this[PI])this[Q6]();return this}[u4](){if(this[XY])return;if(!this[yF]&&!this[nJ].length)this[W8]=!0;if(this[PI]=!1,this[dY]=!0,this.emit("resume"),this[cY].length)this[P2]();else if(this[A6])this[Q6]();else this.emit("drain")}resume(){return this[u4]()}pause(){this[dY]=!1,this[PI]=!0,this[W8]=!1}get destroyed(){return this[XY]}get flowing(){return this[dY]}get paused(){return this[PI]}[ay](A){if(this[NJ])this[lY]+=1;else this[lY]+=A.length;this[cY].push(A)}[T2](){if(this[NJ])this[lY]-=1;else this[lY]-=this[cY][0].length;return this[cY].shift()}[P2](A=!1){do;while(this[XJA](this[T2]())&&this[cY].length);if(!A&&!this[cY].length&&!this[A6])this.emit("drain")}[XJA](A){return this.emit("data",A),this[dY]}pipe(A,Q){if(this[XY])return A;this[W8]=!1;let B=this[Q7];if(Q=Q||{},A===JJA.stdout||A===JJA.stderr)Q.end=!1;else Q.end=Q.end!==!1;if(Q.proxyErrors=!!Q.proxyErrors,B){if(Q.end)A.end()}else if(this[nJ].push(!Q.proxyErrors?new Bg(this,A,Q):new FJA(this,A,Q)),this[k1])SI(()=>this[u4]());else this[u4]();return A}unpipe(A){let Q=this[nJ].find((B)=>B.dest===A);if(Q){if(this[nJ].length===1){if(this[dY]&&this[yF]===0)this[dY]=!1;this[nJ]=[]}else this[nJ].splice(this[nJ].indexOf(Q),1);Q.unpipe()}}addListener(A,Q){return this.on(A,Q)}on(A,Q){let B=super.on(A,Q);if(A==="data"){if(this[W8]=!1,this[yF]++,!this[nJ].length&&!this[dY])this[u4]()}else if(A==="readable"&&this[lY]!==0)super.emit("readable");else if(smQ(A)&&this[Q7])super.emit(A),this.removeAllListeners(A);else if(A==="error"&&this[OI]){let Y=Q;if(this[k1])SI(()=>Y.call(this,this[OI]));else Y.call(this,this[OI])}return B}removeListener(A,Q){return this.off(A,Q)}off(A,Q){let B=super.off(A,Q);if(A==="data"){if(this[yF]=this.listeners("data").length,this[yF]===0&&!this[W8]&&!this[nJ].length)this[dY]=!1}return B}removeAllListeners(A){let Q=super.removeAllListeners(A);if(A==="data"||A===void 0){if(this[yF]=0,!this[W8]&&!this[nJ].length)this[dY]=!1}return Q}get emittedEnd(){return this[Q7]}[Q6](){if(!this[j2]&&!this[Q7]&&!this[XY]&&this[cY].length===0&&this[A6]){if(this[j2]=!0,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[O2])this.emit("close");this[j2]=!1}}emit(A,...Q){let B=Q[0];if(A!=="error"&&A!=="close"&&A!==XY&&this[XY])return!1;else if(A==="data")return!this[NJ]&&!B?!1:this[k1]?(SI(()=>this[ty](B)),!0):this[ty](B);else if(A==="end")return this[GJA]();else if(A==="close"){if(this[O2]=!0,!this[Q7]&&!this[XY])return!1;let J=super.emit("close");return this.removeAllListeners("close"),J}else if(A==="error"){this[OI]=B,super.emit(oy,B);let J=!this[TI]||this.listeners("error").length?super.emit("error",B):!1;return this[Q6](),J}else if(A==="resume"){let J=super.emit("resume");return this[Q6](),J}else if(A==="finish"||A==="prefinish"){let J=super.emit(A);return this.removeAllListeners(A),J}let Y=super.emit(A,...Q);return this[Q6](),Y}[ty](A){for(let B of this[nJ])if(B.dest.write(A)===!1)this.pause();let Q=this[W8]?!1:super.emit("data",A);return this[Q6](),Q}[GJA](){if(this[Q7])return!1;return this[Q7]=!0,this.readable=!1,this[k1]?(SI(()=>this[ey]()),!0):this[ey]()}[ey](){if(this[m4]){let Q=this[m4].end();if(Q){for(let B of this[nJ])B.dest.write(Q);if(!this[W8])super.emit("data",Q)}}for(let Q of this[nJ])Q.end();let A=super.emit("end");return this.removeAllListeners("end"),A}async collect(){let A=Object.assign([],{dataLength:0});if(!this[NJ])A.dataLength=0;let Q=this.promise();return this.on("data",(B)=>{if(A.push(B),!this[NJ])A.dataLength+=B.length}),await Q,A}async concat(){if(this[NJ])throw Error("cannot concat in objectMode");let A=await this.collect();return this[wC]?A.join(""):Buffer.concat(A,A.dataLength)}async promise(){return new Promise((A,Q)=>{this.on(XY,()=>Q(Error("stream destroyed"))),this.on("error",(B)=>Q(B)),this.on("end",()=>A())})}[Symbol.asyncIterator](){this[W8]=!1;let A=!1,Q=async()=>{return this.pause(),A=!0,{value:void 0,done:!0}};return{next:()=>{if(A)return Q();let Y=this.read();if(Y!==null)return Promise.resolve({done:!1,value:Y});if(this[A6])return Q();let J,C,X=(Z)=>{this.off("data",G),this.off("end",W),this.off(XY,F),Q(),C(Z)},G=(Z)=>{this.off("error",X),this.off("end",W),this.off(XY,F),this.pause(),J({value:Z,done:!!this[A6]})},W=()=>{this.off("error",X),this.off("data",G),this.off(XY,F),Q(),J({done:!0,value:void 0})},F=()=>X(Error("stream destroyed"));return new Promise((Z,U)=>{C=U,J=Z,this.once(XY,F),this.once("error",X),this.once("end",W),this.once("data",G)})},throw:Q,return:Q,[Symbol.asyncIterator](){return this}}}[Symbol.iterator](){this[W8]=!1;let A=!1,Q=()=>{return this.pause(),this.off(oy,Q),this.off(XY,Q),this.off("end",Q),A=!0,{done:!0,value:void 0}},B=()=>{if(A)return Q();let Y=this.read();return Y===null?Q():{done:!1,value:Y}};return this.once("end",Q),this.once(oy,Q),this.once(XY,Q),{next:B,throw:Q,return:Q,[Symbol.iterator](){return this}}}destroy(A){if(this[XY]){if(A)this.emit("error",A);else this.emit(XY);return this}this[XY]=!0,this[W8]=!0,this[cY].length=0,this[lY]=0;let Q=this;if(typeof Q.close==="function"&&!this[O2])Q.close();if(A)this.emit("error",A);else this.emit(XY);return this}static get isStream(){return lmQ}}var GuQ=CuQ.native,_I={lstatSync:QuQ,readdir:BuQ,readdirSync:YuQ,readlinkSync:JuQ,realpathSync:GuQ,promises:{lstat:WuQ,readdir:FuQ,readlink:ZuQ,realpath:$uQ}},KJA=(A)=>!A||A===_I||A===XuQ?_I:{..._I,...A,promises:{..._I.promises,...A.promises||{}}},VJA=/^\\\\\?\\([a-z]:)\\?$/i,UuQ=(A)=>A.replace(/\//g,"\\").replace(VJA,"$1\\"),EuQ=/[\\\/]/,X5=0,IJA=1,HJA=2,_1=4,DJA=6,NJA=8,hF=10,LJA=12,C5=15,kI=~C5,Yg=16,ZJA=32,vI=64,jC=128,k2=256,v2=512,$JA=vI|jC|v2,KuQ=1023,Jg=(A)=>A.isFile()?NJA:A.isDirectory()?_1:A.isSymbolicLink()?hF:A.isCharacterDevice()?HJA:A.isBlockDevice()?DJA:A.isSocket()?LJA:A.isFIFO()?IJA:X5,UJA=new Map,yI=(A)=>{let Q=UJA.get(A);if(Q)return Q;let B=A.normalize("NFKD");return UJA.set(A,B),B},EJA=new Map,_2=(A)=>{let Q=EJA.get(A);if(Q)return Q;let B=yI(A.toLowerCase());return EJA.set(A,B),B};class Xg extends jI{constructor(){super({max:256})}}class qJA extends jI{constructor(A=16384){super({maxSize:A,sizeCalculation:(Q)=>Q.length+1})}}var MJA=Symbol("PathScurry setAsCwd");class sJ{name;root;roots;parent;nocase;isCWD=!1;#A;#Q;get dev(){return this.#Q}#B;get mode(){return this.#B}#Y;get nlink(){return this.#Y}#J;get uid(){return this.#J}#C;get gid(){return this.#C}#W;get rdev(){return this.#W}#X;get blksize(){return this.#X}#G;get ino(){return this.#G}#Z;get size(){return this.#Z}#U;get blocks(){return this.#U}#F;get atimeMs(){return this.#F}#E;get mtimeMs(){return this.#E}#V;get ctimeMs(){return this.#V}#I;get birthtimeMs(){return this.#I}#D;get atime(){return this.#D}#O;get mtime(){return this.#O}#N;get ctime(){return this.#N}#P;get birthtime(){return this.#P}#M;#q;#L;#w;#H;#S;#$;#v;#z;#k;get parentPath(){return(this.parent||this).fullpath()}get path(){return this.parentPath}constructor(A,Q=X5,B,Y,J,C,X){if(this.name=A,this.#M=J?_2(A):yI(A),this.#$=Q&KuQ,this.nocase=J,this.roots=Y,this.root=B||this,this.#v=C,this.#L=X.fullpath,this.#H=X.relative,this.#S=X.relativePosix,this.parent=X.parent,this.parent)this.#A=this.parent.#A;else this.#A=KJA(X.fs)}depth(){if(this.#q!==void 0)return this.#q;if(!this.parent)return this.#q=0;return this.#q=this.parent.depth()+1}childrenCache(){return this.#v}resolve(A){if(!A)return this;let Q=this.getRootString(A),Y=A.substring(Q.length).split(this.splitSep);return Q?this.getRoot(Q).#R(Y):this.#R(Y)}#R(A){let Q=this;for(let B of A)Q=Q.child(B);return Q}children(){let A=this.#v.get(this);if(A)return A;let Q=Object.assign([],{provisional:0});return this.#v.set(this,Q),this.#$&=~Yg,Q}child(A,Q){if(A===""||A===".")return this;if(A==="..")return this.parent||this;let B=this.children(),Y=this.nocase?_2(A):yI(A);for(let G of B)if(G.#M===Y)return G;let J=this.parent?this.sep:"",C=this.#L?this.#L+J+A:void 0,X=this.newChild(A,X5,{...Q,parent:this,fullpath:C});if(!this.canReaddir())X.#$|=jC;return B.push(X),X}relative(){if(this.isCWD)return"";if(this.#H!==void 0)return this.#H;let A=this.name,Q=this.parent;if(!Q)return this.#H=this.name;let B=Q.relative();return B+(!B||!Q.parent?"":this.sep)+A}relativePosix(){if(this.sep==="/")return this.relative();if(this.isCWD)return"";if(this.#S!==void 0)return this.#S;let A=this.name,Q=this.parent;if(!Q)return this.#S=this.fullpathPosix();let B=Q.relativePosix();return B+(!B||!Q.parent?"":"/")+A}fullpath(){if(this.#L!==void 0)return this.#L;let A=this.name,Q=this.parent;if(!Q)return this.#L=this.name;let Y=Q.fullpath()+(!Q.parent?"":this.sep)+A;return this.#L=Y}fullpathPosix(){if(this.#w!==void 0)return this.#w;if(this.sep==="/")return this.#w=this.fullpath();if(!this.parent){let Y=this.fullpath().replace(/\\/g,"/");if(/^[a-z]:\//i.test(Y))return this.#w=`//?/${Y}`;else return this.#w=Y}let A=this.parent,Q=A.fullpathPosix(),B=Q+(!Q||!A.parent?"":"/")+this.name;return this.#w=B}isUnknown(){return(this.#$&C5)===X5}isType(A){return this[`is${A}`]()}getType(){return this.isUnknown()?"Unknown":this.isDirectory()?"Directory":this.isFile()?"File":this.isSymbolicLink()?"SymbolicLink":this.isFIFO()?"FIFO":this.isCharacterDevice()?"CharacterDevice":this.isBlockDevice()?"BlockDevice":this.isSocket()?"Socket":"Unknown"}isFile(){return(this.#$&C5)===NJA}isDirectory(){return(this.#$&C5)===_1}isCharacterDevice(){return(this.#$&C5)===HJA}isBlockDevice(){return(this.#$&C5)===DJA}isFIFO(){return(this.#$&C5)===IJA}isSocket(){return(this.#$&C5)===LJA}isSymbolicLink(){return(this.#$&hF)===hF}lstatCached(){return this.#$&ZJA?this:void 0}readlinkCached(){return this.#z}realpathCached(){return this.#k}readdirCached(){let A=this.children();return A.slice(0,A.provisional)}canReadlink(){if(this.#z)return!0;if(!this.parent)return!1;let A=this.#$&C5;return!(A!==X5&&A!==hF||this.#$&k2||this.#$&jC)}calledReaddir(){return!!(this.#$&Yg)}isENOENT(){return!!(this.#$&jC)}isNamed(A){return!this.nocase?this.#M===yI(A):this.#M===_2(A)}async readlink(){let A=this.#z;if(A)return A;if(!this.canReadlink())return;if(!this.parent)return;try{let Q=await this.#A.promises.readlink(this.fullpath()),B=(await this.parent.realpath())?.resolve(Q);if(B)return this.#z=B}catch(Q){this.#x(Q.code);return}}readlinkSync(){let A=this.#z;if(A)return A;if(!this.canReadlink())return;if(!this.parent)return;try{let Q=this.#A.readlinkSync(this.fullpath()),B=this.parent.realpathSync()?.resolve(Q);if(B)return this.#z=B}catch(Q){this.#x(Q.code);return}}#m(A){this.#$|=Yg;for(let Q=A.provisional;QB(null,A))}readdirCB(A,Q=!1){if(!this.canReaddir()){if(Q)A(null,[]);else queueMicrotask(()=>A(null,[]));return}let B=this.children();if(this.calledReaddir()){let J=B.slice(0,B.provisional);if(Q)A(null,J);else queueMicrotask(()=>A(null,J));return}if(this.#b.push(A),this.#p)return;this.#p=!0;let Y=this.fullpath();this.#A.readdir(Y,{withFileTypes:!0},(J,C)=>{if(J)this.#T(J.code),B.provisional=0;else{for(let X of C)this.#g(X,B);this.#m(B)}this.#i(B.slice(0,B.provisional));return})}#l;async readdir(){if(!this.canReaddir())return[];let A=this.children();if(this.calledReaddir())return A.slice(0,A.provisional);let Q=this.fullpath();if(this.#l)await this.#l;else{let B=()=>{};this.#l=new Promise((Y)=>B=Y);try{for(let Y of await this.#A.promises.readdir(Q,{withFileTypes:!0}))this.#g(Y,A);this.#m(A)}catch(Y){this.#T(Y.code),A.provisional=0}this.#l=void 0,B()}return A.slice(0,A.provisional)}readdirSync(){if(!this.canReaddir())return[];let A=this.children();if(this.calledReaddir())return A.slice(0,A.provisional);let Q=this.fullpath();try{for(let B of this.#A.readdirSync(Q,{withFileTypes:!0}))this.#g(B,A);this.#m(A)}catch(B){this.#T(B.code),A.provisional=0}return A.slice(0,A.provisional)}canReaddir(){if(this.#$&$JA)return!1;let A=C5&this.#$;if(!(A===X5||A===_1||A===hF))return!1;return!0}shouldWalk(A,Q){return(this.#$&_1)===_1&&!(this.#$&$JA)&&!A.has(this)&&(!Q||Q(this))}async realpath(){if(this.#k)return this.#k;if((v2|k2|jC)&this.#$)return;try{let A=await this.#A.promises.realpath(this.fullpath());return this.#k=this.resolve(A)}catch(A){this.#u()}}realpathSync(){if(this.#k)return this.#k;if((v2|k2|jC)&this.#$)return;try{let A=this.#A.realpathSync(this.fullpath());return this.#k=this.resolve(A)}catch(A){this.#u()}}[MJA](A){if(A===this)return;A.isCWD=!1,this.isCWD=!0;let Q=new Set([]),B=[],Y=this;while(Y&&Y.parent)Q.add(Y),Y.#H=B.join(this.sep),Y.#S=B.join("/"),Y=Y.parent,B.push("..");Y=A;while(Y&&Y.parent&&!Q.has(Y))Y.#H=void 0,Y.#S=void 0,Y=Y.parent}}class y2 extends sJ{sep="\\";splitSep=EuQ;constructor(A,Q=X5,B,Y,J,C,X){super(A,Q,B,Y,J,C,X)}newChild(A,Q=X5,B={}){return new y2(A,Q,this.root,this.roots,this.nocase,this.childrenCache(),B)}getRootString(A){return Cg.parse(A).root}getRoot(A){if(A=UuQ(A.toUpperCase()),A===this.root.name)return this.root;for(let[Q,B]of Object.entries(this.roots))if(this.sameRoot(A,Q))return this.roots[A]=B;return this.roots[A]=new gI(A,this).root}sameRoot(A,Q=this.root.name){return A=A.toUpperCase().replace(/\//g,"\\").replace(VJA,"$1\\"),A===Q}}class g2 extends sJ{splitSep="/";sep="/";constructor(A,Q=X5,B,Y,J,C,X){super(A,Q,B,Y,J,C,X)}getRootString(A){return A.startsWith("/")?"/":""}getRoot(A){return this.root}newChild(A,Q=X5,B={}){return new g2(A,Q,this.root,this.roots,this.nocase,this.childrenCache(),B)}}class Gg{root;rootPath;roots;cwd;#A;#Q;#B;nocase;#Y;constructor(A=process.cwd(),Q,B,{nocase:Y,childrenCacheSize:J=16384,fs:C=_I}={}){if(this.#Y=KJA(C),A instanceof URL||A.startsWith("file://"))A=AuQ(A);let X=Q.resolve(A);this.roots=Object.create(null),this.rootPath=this.parseRootPath(X),this.#A=new Xg,this.#Q=new Xg,this.#B=new qJA(J);let G=X.substring(this.rootPath.length).split(B);if(G.length===1&&!G[0])G.pop();if(Y===void 0)throw TypeError("must provide nocase setting to PathScurryBase ctor");this.nocase=Y,this.root=this.newRoot(this.#Y),this.roots[this.rootPath]=this.root;let W=this.root,F=G.length-1,Z=Q.sep,U=this.rootPath,$=!1;for(let E of G){let K=F--;W=W.child(E,{relative:Array(K).fill("..").join(Z),relativePosix:Array(K).fill("..").join("/"),fullpath:U+=($?"":Z)+E}),$=!0}this.cwd=W}depth(A=this.cwd){if(typeof A==="string")A=this.cwd.resolve(A);return A.depth()}childrenCache(){return this.#B}resolve(...A){let Q="";for(let J=A.length-1;J>=0;J--){let C=A[J];if(!C||C===".")continue;if(Q=Q?`${C}/${Q}`:C,this.isAbsolute(C))break}let B=this.#A.get(Q);if(B!==void 0)return B;let Y=this.cwd.resolve(Q).fullpath();return this.#A.set(Q,Y),Y}resolvePosix(...A){let Q="";for(let J=A.length-1;J>=0;J--){let C=A[J];if(!C||C===".")continue;if(Q=Q?`${C}/${Q}`:C,this.isAbsolute(C))break}let B=this.#Q.get(Q);if(B!==void 0)return B;let Y=this.cwd.resolve(Q).fullpathPosix();return this.#Q.set(Q,Y),Y}relative(A=this.cwd){if(typeof A==="string")A=this.cwd.resolve(A);return A.relative()}relativePosix(A=this.cwd){if(typeof A==="string")A=this.cwd.resolve(A);return A.relativePosix()}basename(A=this.cwd){if(typeof A==="string")A=this.cwd.resolve(A);return A.name}dirname(A=this.cwd){if(typeof A==="string")A=this.cwd.resolve(A);return(A.parent||A).fullpath()}async readdir(A=this.cwd,Q={withFileTypes:!0}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof sJ))Q=A,A=this.cwd;let{withFileTypes:B}=Q;if(!A.canReaddir())return[];else{let Y=await A.readdir();return B?Y:Y.map((J)=>J.name)}}readdirSync(A=this.cwd,Q={withFileTypes:!0}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof sJ))Q=A,A=this.cwd;let{withFileTypes:B=!0}=Q;if(!A.canReaddir())return[];else if(B)return A.readdirSync();else return A.readdirSync().map((Y)=>Y.name)}async lstat(A=this.cwd){if(typeof A==="string")A=this.cwd.resolve(A);return A.lstat()}lstatSync(A=this.cwd){if(typeof A==="string")A=this.cwd.resolve(A);return A.lstatSync()}async readlink(A=this.cwd,{withFileTypes:Q}={withFileTypes:!1}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof sJ))Q=A.withFileTypes,A=this.cwd;let B=await A.readlink();return Q?B:B?.fullpath()}readlinkSync(A=this.cwd,{withFileTypes:Q}={withFileTypes:!1}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof sJ))Q=A.withFileTypes,A=this.cwd;let B=A.readlinkSync();return Q?B:B?.fullpath()}async realpath(A=this.cwd,{withFileTypes:Q}={withFileTypes:!1}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof sJ))Q=A.withFileTypes,A=this.cwd;let B=await A.realpath();return Q?B:B?.fullpath()}realpathSync(A=this.cwd,{withFileTypes:Q}={withFileTypes:!1}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof sJ))Q=A.withFileTypes,A=this.cwd;let B=A.realpathSync();return Q?B:B?.fullpath()}async walk(A=this.cwd,Q={}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof sJ))Q=A,A=this.cwd;let{withFileTypes:B=!0,follow:Y=!1,filter:J,walkFilter:C}=Q,X=[];if(!J||J(A))X.push(B?A:A.fullpath());let G=new Set,W=(Z,U)=>{G.add(Z),Z.readdirCB(($,E)=>{if($)return U($);let K=E.length;if(!K)return U();let I=()=>{if(--K===0)U()};for(let V of E){if(!J||J(V))X.push(B?V:V.fullpath());if(Y&&V.isSymbolicLink())V.realpath().then((H)=>H?.isUnknown()?H.lstat():H).then((H)=>H?.shouldWalk(G,C)?W(H,I):I());else if(V.shouldWalk(G,C))W(V,I);else I()}},!0)},F=A;return new Promise((Z,U)=>{W(F,($)=>{if($)return U($);Z(X)})})}walkSync(A=this.cwd,Q={}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof sJ))Q=A,A=this.cwd;let{withFileTypes:B=!0,follow:Y=!1,filter:J,walkFilter:C}=Q,X=[];if(!J||J(A))X.push(B?A:A.fullpath());let G=new Set([A]);for(let W of G){let F=W.readdirSync();for(let Z of F){if(!J||J(Z))X.push(B?Z:Z.fullpath());let U=Z;if(Z.isSymbolicLink()){if(!(Y&&(U=Z.realpathSync())))continue;if(U.isUnknown())U.lstatSync()}if(U.shouldWalk(G,C))G.add(U)}}return X}[Symbol.asyncIterator](){return this.iterate()}iterate(A=this.cwd,Q={}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof sJ))Q=A,A=this.cwd;return this.stream(A,Q)[Symbol.asyncIterator]()}[Symbol.iterator](){return this.iterateSync()}*iterateSync(A=this.cwd,Q={}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof sJ))Q=A,A=this.cwd;let{withFileTypes:B=!0,follow:Y=!1,filter:J,walkFilter:C}=Q;if(!J||J(A))yield B?A:A.fullpath();let X=new Set([A]);for(let G of X){let W=G.readdirSync();for(let F of W){if(!J||J(F))yield B?F:F.fullpath();let Z=F;if(F.isSymbolicLink()){if(!(Y&&(Z=F.realpathSync())))continue;if(Z.isUnknown())Z.lstatSync()}if(Z.shouldWalk(X,C))X.add(Z)}}}stream(A=this.cwd,Q={}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof sJ))Q=A,A=this.cwd;let{withFileTypes:B=!0,follow:Y=!1,filter:J,walkFilter:C}=Q,X=new gF({objectMode:!0});if(!J||J(A))X.write(B?A:A.fullpath());let G=new Set,W=[A],F=0,Z=()=>{let U=!1;while(!U){let $=W.shift();if(!$){if(F===0)X.end();return}F++,G.add($);let E=(I,V,H=!1)=>{if(I)return X.emit("error",I);if(Y&&!H){let D=[];for(let L of V)if(L.isSymbolicLink())D.push(L.realpath().then((z)=>z?.isUnknown()?z.lstat():z));if(D.length){Promise.all(D).then(()=>E(null,V,!0));return}}for(let D of V)if(D&&(!J||J(D))){if(!X.write(B?D:D.fullpath()))U=!0}F--;for(let D of V){let L=D.realpathCached()||D;if(L.shouldWalk(G,C))W.push(L)}if(U&&!X.flowing)X.once("drain",Z);else if(!K)Z()},K=!0;$.readdirCB(E,!0),K=!1}};return Z(),X}streamSync(A=this.cwd,Q={}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof sJ))Q=A,A=this.cwd;let{withFileTypes:B=!0,follow:Y=!1,filter:J,walkFilter:C}=Q,X=new gF({objectMode:!0}),G=new Set;if(!J||J(A))X.write(B?A:A.fullpath());let W=[A],F=0,Z=()=>{let U=!1;while(!U){let $=W.shift();if(!$){if(F===0)X.end();return}F++,G.add($);let E=$.readdirSync();for(let K of E)if(!J||J(K)){if(!X.write(B?K:K.fullpath()))U=!0}F--;for(let K of E){let I=K;if(K.isSymbolicLink()){if(!(Y&&(I=K.realpathSync())))continue;if(I.isUnknown())I.lstatSync()}if(I.shouldWalk(G,C))W.push(I)}}if(U&&!X.flowing)X.once("drain",Z)};return Z(),X}chdir(A=this.cwd){let Q=this.cwd;this.cwd=typeof A==="string"?this.cwd.resolve(A):A,this.cwd[MJA](Q)}}class gI extends Gg{sep="\\";constructor(A=process.cwd(),Q={}){let{nocase:B=!0}=Q;super(A,Cg,"\\",{...Q,nocase:B});this.nocase=B;for(let Y=this.cwd;Y;Y=Y.parent)Y.nocase=this.nocase}parseRootPath(A){return Cg.parse(A).root.toUpperCase()}newRoot(A){return new y2(this.rootPath,_1,void 0,this.roots,this.nocase,this.childrenCache(),{fs:A})}isAbsolute(A){return A.startsWith("/")||A.startsWith("\\")||/^[a-z]:(\/|\\)/i.test(A)}}class hI extends Gg{sep="/";constructor(A=process.cwd(),Q={}){let{nocase:B=!1}=Q;super(A,emQ,"/",{...Q,nocase:B});this.nocase=B}parseRootPath(A){return"/"}newRoot(A){return new g2(this.rootPath,_1,void 0,this.roots,this.nocase,this.childrenCache(),{fs:A})}isAbsolute(A){return A.startsWith("/")}}class h2 extends hI{constructor(A=process.cwd(),Q={}){let{nocase:B=!0}=Q;super(A,{...Q,nocase:B})}}var EXY=process.platform==="win32"?y2:g2,zJA=process.platform==="win32"?gI:process.platform==="darwin"?h2:hI;var VuQ=(A)=>A.length>=1,IuQ=(A)=>A.length>=1;class d4{#A;#Q;#B;length;#Y;#J;#C;#W;#X;#G;#Z=!0;constructor(A,Q,B,Y){if(!VuQ(A))throw TypeError("empty pattern list");if(!IuQ(Q))throw TypeError("empty glob list");if(Q.length!==A.length)throw TypeError("mismatched pattern list and glob list lengths");if(this.length=A.length,B<0||B>=this.length)throw TypeError("index out of range");if(this.#A=A,this.#Q=Q,this.#B=B,this.#Y=Y,this.#B===0){if(this.isUNC()){let[J,C,X,G,...W]=this.#A,[F,Z,U,$,...E]=this.#Q;if(W[0]==="")W.shift(),E.shift();let K=[J,C,X,G,""].join("/"),I=[F,Z,U,$,""].join("/");this.#A=[K,...W],this.#Q=[I,...E],this.length=this.#A.length}else if(this.isDrive()||this.isAbsolute()){let[J,...C]=this.#A,[X,...G]=this.#Q;if(C[0]==="")C.shift(),G.shift();let W=J+"/",F=X+"/";this.#A=[W,...C],this.#Q=[F,...G],this.length=this.#A.length}}}pattern(){return this.#A[this.#B]}isString(){return typeof this.#A[this.#B]==="string"}isGlobstar(){return this.#A[this.#B]===JJ}isRegExp(){return this.#A[this.#B]instanceof RegExp}globString(){return this.#C=this.#C||(this.#B===0?this.isAbsolute()?this.#Q[0]+this.#Q.slice(1).join("/"):this.#Q.join("/"):this.#Q.slice(this.#B).join("/"))}hasMore(){return this.length>this.#B+1}rest(){if(this.#J!==void 0)return this.#J;if(!this.hasMore())return this.#J=null;return this.#J=new d4(this.#A,this.#Q,this.#B+1,this.#Y),this.#J.#G=this.#G,this.#J.#X=this.#X,this.#J.#W=this.#W,this.#J}isUNC(){let A=this.#A;return this.#X!==void 0?this.#X:this.#X=this.#Y==="win32"&&this.#B===0&&A[0]===""&&A[1]===""&&typeof A[2]==="string"&&!!A[2]&&typeof A[3]==="string"&&!!A[3]}isDrive(){let A=this.#A;return this.#W!==void 0?this.#W:this.#W=this.#Y==="win32"&&this.#B===0&&this.length>1&&typeof A[0]==="string"&&/^[a-z]:$/i.test(A[0])}isAbsolute(){let A=this.#A;return this.#G!==void 0?this.#G:this.#G=A[0]===""&&A.length>1||this.isDrive()||this.isUNC()}root(){let A=this.#A[0];return typeof A==="string"&&this.isAbsolute()&&this.#B===0?A:""}checkFollowGlobstar(){return!(this.#B===0||!this.isGlobstar()||!this.#Z)}markFollowGlobstar(){if(this.#B===0||!this.isGlobstar()||!this.#Z)return!1;return this.#Z=!1,!0}}var HuQ=typeof process==="object"&&process&&typeof process.platform==="string"?process.platform:"linux";class xI{relative;relativeChildren;absolute;absoluteChildren;platform;mmopts;constructor(A,{nobrace:Q,nocase:B,noext:Y,noglobstar:J,platform:C=HuQ}){this.relative=[],this.absolute=[],this.relativeChildren=[],this.absoluteChildren=[],this.platform=C,this.mmopts={dot:!0,nobrace:Q,nocase:B,noext:Y,noglobstar:J,optimizationLevel:2,platform:C,nocomment:!0,nonegate:!0};for(let X of A)this.add(X)}add(A){let Q=new J5(A,this.mmopts);for(let B=0;B[A,!!(Q&2),!!(Q&1)])}}class wJA{store=new Map;add(A,Q){if(!A.canReaddir())return;let B=this.store.get(A);if(B){if(!B.find((Y)=>Y.globString()===Q.globString()))B.push(Q)}else this.store.set(A,[Q])}get(A){let Q=this.store.get(A);if(!Q)throw Error("attempting to walk unknown path");return Q}entries(){return this.keys().map((A)=>[A,this.store.get(A)])}keys(){return[...this.store.keys()].filter((A)=>A.canReaddir())}}class fI{hasWalkedCache;matches=new RJA;subwalks=new wJA;patterns;follow;dot;opts;constructor(A,Q){this.opts=A,this.follow=!!A.follow,this.dot=!!A.dot,this.hasWalkedCache=Q?Q.copy():new Wg}processPatterns(A,Q){this.patterns=Q;let B=Q.map((Y)=>[A,Y]);for(let[Y,J]of B){this.hasWalkedCache.storeWalked(Y,J);let C=J.root(),X=J.isAbsolute()&&this.opts.absolute!==!1;if(C){Y=Y.resolve(C==="/"&&this.opts.root!==void 0?this.opts.root:C);let Z=J.rest();if(!Z){this.matches.add(Y,!0,!1);continue}else J=Z}if(Y.isENOENT())continue;let G,W,F=!1;while(typeof(G=J.pattern())==="string"&&(W=J.rest()))Y=Y.resolve(G),J=W,F=!0;if(G=J.pattern(),W=J.rest(),F){if(this.hasWalkedCache.hasWalked(Y,J))continue;this.hasWalkedCache.storeWalked(Y,J)}if(typeof G==="string"){let Z=G===".."||G===""||G===".";this.matches.add(Y.resolve(G),X,Z);continue}else if(G===JJ){if(!Y.isSymbolicLink()||this.follow||J.checkFollowGlobstar())this.subwalks.add(Y,J);let Z=W?.pattern(),U=W?.rest();if(!W||(Z===""||Z===".")&&!U)this.matches.add(Y,X,Z===""||Z===".");else if(Z===".."){let $=Y.parent||Y;if(!U)this.matches.add($,X,!0);else if(!this.hasWalkedCache.hasWalked($,U))this.subwalks.add($,U)}}else if(G instanceof RegExp)this.subwalks.add(Y,J)}return this}subwalkTargets(){return this.subwalks.keys()}child(){return new fI(this.opts,this.hasWalkedCache)}filterEntries(A,Q){let B=this.subwalks.get(A),Y=this.child();for(let J of Q)for(let C of B){let X=C.isAbsolute(),G=C.pattern(),W=C.rest();if(G===JJ)Y.testGlobstar(J,C,W,X);else if(G instanceof RegExp)Y.testRegExp(J,G,W,X);else Y.testString(J,G,W,X)}return Y}testGlobstar(A,Q,B,Y){if(this.dot||!A.name.startsWith(".")){if(!Q.hasMore())this.matches.add(A,Y,!1);if(A.canReaddir()){if(this.follow||!A.isSymbolicLink())this.subwalks.add(A,Q);else if(A.isSymbolicLink()){if(B&&Q.checkFollowGlobstar())this.subwalks.add(A,B);else if(Q.markFollowGlobstar())this.subwalks.add(A,Q)}}}if(B){let J=B.pattern();if(typeof J==="string"&&J!==".."&&J!==""&&J!==".")this.testString(A,J,B.rest(),Y);else if(J===".."){let C=A.parent||A;this.subwalks.add(C,B)}else if(J instanceof RegExp)this.testRegExp(A,J,B.rest(),Y)}}testRegExp(A,Q,B,Y){if(!Q.test(A.name))return;if(!B)this.matches.add(A,Y,!1);else this.subwalks.add(A,B)}testString(A,Q,B,Y){if(!A.isNamed(Q))return;if(!B)this.matches.add(A,Y,!1);else this.subwalks.add(A,B)}}var DuQ=(A,Q)=>typeof A==="string"?new xI([A],Q):Array.isArray(A)?new xI(A,Q):A;class Fg{path;patterns;opts;seen=new Set;paused=!1;aborted=!1;#A=[];#Q;#B;signal;maxDepth;includeChildMatches;constructor(A,Q,B){if(this.patterns=A,this.path=Q,this.opts=B,this.#B=!B.posix&&B.platform==="win32"?"\\":"/",this.includeChildMatches=B.includeChildMatches!==!1,B.ignore||!this.includeChildMatches){if(this.#Q=DuQ(B.ignore??[],B),!this.includeChildMatches&&typeof this.#Q.add!=="function")throw Error("cannot ignore child matches, ignore lacks add() method.")}if(this.maxDepth=B.maxDepth||1/0,B.signal)this.signal=B.signal,this.signal.addEventListener("abort",()=>{this.#A.length=0})}#Y(A){return this.seen.has(A)||!!this.#Q?.ignored?.(A)}#J(A){return!!this.#Q?.childrenIgnored?.(A)}pause(){this.paused=!0}resume(){if(this.signal?.aborted)return;this.paused=!1;let A=void 0;while(!this.paused&&(A=this.#A.shift()))A()}onResume(A){if(this.signal?.aborted)return;if(!this.paused)A();else this.#A.push(A)}async matchCheck(A,Q){if(Q&&this.opts.nodir)return;let B;if(this.opts.realpath){if(B=A.realpathCached()||await A.realpath(),!B)return;A=B}let J=A.isUnknown()||this.opts.stat?await A.lstat():A;if(this.opts.follow&&this.opts.nodir&&J?.isSymbolicLink()){let C=await J.realpath();if(C&&(C.isUnknown()||this.opts.stat))await C.lstat()}return this.matchCheckTest(J,Q)}matchCheckTest(A,Q){return A&&(this.maxDepth===1/0||A.depth()<=this.maxDepth)&&(!Q||A.canReaddir())&&(!this.opts.nodir||!A.isDirectory())&&(!this.opts.nodir||!this.opts.follow||!A.isSymbolicLink()||!A.realpathCached()?.isDirectory())&&!this.#Y(A)?A:void 0}matchCheckSync(A,Q){if(Q&&this.opts.nodir)return;let B;if(this.opts.realpath){if(B=A.realpathCached()||A.realpathSync(),!B)return;A=B}let J=A.isUnknown()||this.opts.stat?A.lstatSync():A;if(this.opts.follow&&this.opts.nodir&&J?.isSymbolicLink()){let C=J.realpathSync();if(C&&(C?.isUnknown()||this.opts.stat))C.lstatSync()}return this.matchCheckTest(J,Q)}matchFinish(A,Q){if(this.#Y(A))return;if(!this.includeChildMatches&&this.#Q?.add){let J=`${A.relativePosix()}/**`;this.#Q.add(J)}let B=this.opts.absolute===void 0?Q:this.opts.absolute;this.seen.add(A);let Y=this.opts.mark&&A.isDirectory()?this.#B:"";if(this.opts.withFileTypes)this.matchEmit(A);else if(B){let J=this.opts.posix?A.fullpathPosix():A.fullpath();this.matchEmit(J+Y)}else{let J=this.opts.posix?A.relativePosix():A.relative(),C=this.opts.dotRelative&&!J.startsWith(".."+this.#B)?"."+this.#B:"";this.matchEmit(!J?"."+Y:C+J+Y)}}async match(A,Q,B){let Y=await this.matchCheck(A,B);if(Y)this.matchFinish(Y,Q)}matchSync(A,Q,B){let Y=this.matchCheckSync(A,B);if(Y)this.matchFinish(Y,Q)}walkCB(A,Q,B){if(this.signal?.aborted)B();this.walkCB2(A,Q,new fI(this.opts),B)}walkCB2(A,Q,B,Y){if(this.#J(A))return Y();if(this.signal?.aborted)Y();if(this.paused){this.onResume(()=>this.walkCB2(A,Q,B,Y));return}B.processPatterns(A,Q);let J=1,C=()=>{if(--J===0)Y()};for(let[X,G,W]of B.matches.entries()){if(this.#Y(X))continue;J++,this.match(X,G,W).then(()=>C())}for(let X of B.subwalkTargets()){if(this.maxDepth!==1/0&&X.depth()>=this.maxDepth)continue;J++;let G=X.readdirCached();if(X.calledReaddir())this.walkCB3(X,G,B,C);else X.readdirCB((W,F)=>this.walkCB3(X,F,B,C),!0)}C()}walkCB3(A,Q,B,Y){B=B.filterEntries(A,Q);let J=1,C=()=>{if(--J===0)Y()};for(let[X,G,W]of B.matches.entries()){if(this.#Y(X))continue;J++,this.match(X,G,W).then(()=>C())}for(let[X,G]of B.subwalks.entries())J++,this.walkCB2(X,G,B.child(),C);C()}walkCBSync(A,Q,B){if(this.signal?.aborted)B();this.walkCB2Sync(A,Q,new fI(this.opts),B)}walkCB2Sync(A,Q,B,Y){if(this.#J(A))return Y();if(this.signal?.aborted)Y();if(this.paused){this.onResume(()=>this.walkCB2Sync(A,Q,B,Y));return}B.processPatterns(A,Q);let J=1,C=()=>{if(--J===0)Y()};for(let[X,G,W]of B.matches.entries()){if(this.#Y(X))continue;this.matchSync(X,G,W)}for(let X of B.subwalkTargets()){if(this.maxDepth!==1/0&&X.depth()>=this.maxDepth)continue;J++;let G=X.readdirSync();this.walkCB3Sync(X,G,B,C)}C()}walkCB3Sync(A,Q,B,Y){B=B.filterEntries(A,Q);let J=1,C=()=>{if(--J===0)Y()};for(let[X,G,W]of B.matches.entries()){if(this.#Y(X))continue;this.matchSync(X,G,W)}for(let[X,G]of B.subwalks.entries())J++,this.walkCB2Sync(X,G,B.child(),C);C()}}class x2 extends Fg{matches=new Set;constructor(A,Q,B){super(A,Q,B)}matchEmit(A){this.matches.add(A)}async walk(){if(this.signal?.aborted)throw this.signal.reason;if(this.path.isUnknown())await this.path.lstat();return await new Promise((A,Q)=>{this.walkCB(this.path,this.patterns,()=>{if(this.signal?.aborted)Q(this.signal.reason);else A(this.matches)})}),this.matches}walkSync(){if(this.signal?.aborted)throw this.signal.reason;if(this.path.isUnknown())this.path.lstatSync();return this.walkCBSync(this.path,this.patterns,()=>{if(this.signal?.aborted)throw this.signal.reason}),this.matches}}class f2 extends Fg{results;constructor(A,Q,B){super(A,Q,B);this.results=new gF({signal:this.signal,objectMode:!0}),this.results.on("drain",()=>this.resume()),this.results.on("resume",()=>this.resume())}matchEmit(A){if(this.results.write(A),!this.results.flowing)this.pause()}stream(){let A=this.path;if(A.isUnknown())A.lstat().then(()=>{this.walkCB(A,this.patterns,()=>this.results.end())});else this.walkCB(A,this.patterns,()=>this.results.end());return this.results}streamSync(){if(this.path.isUnknown())this.path.lstatSync();return this.walkCBSync(this.path,this.patterns,()=>this.results.end()),this.results}}var LuQ=typeof process==="object"&&process&&typeof process.platform==="string"?process.platform:"linux";class v1{absolute;cwd;root;dot;dotRelative;follow;ignore;magicalBraces;mark;matchBase;maxDepth;nobrace;nocase;nodir;noext;noglobstar;pattern;platform;realpath;scurry;stat;signal;windowsPathsNoEscape;withFileTypes;includeChildMatches;opts;patterns;constructor(A,Q){if(!Q)throw TypeError("glob options required");if(this.withFileTypes=!!Q.withFileTypes,this.signal=Q.signal,this.follow=!!Q.follow,this.dot=!!Q.dot,this.dotRelative=!!Q.dotRelative,this.nodir=!!Q.nodir,this.mark=!!Q.mark,!Q.cwd)this.cwd="";else if(Q.cwd instanceof URL||Q.cwd.startsWith("file://"))Q.cwd=NuQ(Q.cwd);if(this.cwd=Q.cwd||"",this.root=Q.root,this.magicalBraces=!!Q.magicalBraces,this.nobrace=!!Q.nobrace,this.noext=!!Q.noext,this.realpath=!!Q.realpath,this.absolute=Q.absolute,this.includeChildMatches=Q.includeChildMatches!==!1,this.noglobstar=!!Q.noglobstar,this.matchBase=!!Q.matchBase,this.maxDepth=typeof Q.maxDepth==="number"?Q.maxDepth:1/0,this.stat=!!Q.stat,this.ignore=Q.ignore,this.withFileTypes&&this.absolute!==void 0)throw Error("cannot set absolute and withFileTypes:true");if(typeof A==="string")A=[A];if(this.windowsPathsNoEscape=!!Q.windowsPathsNoEscape||Q.allowWindowsEscape===!1,this.windowsPathsNoEscape)A=A.map((G)=>G.replace(/\\/g,"/"));if(this.matchBase){if(Q.noglobstar)throw TypeError("base matching requires globstar");A=A.map((G)=>G.includes("/")?G:`./**/${G}`)}if(this.pattern=A,this.platform=Q.platform||LuQ,this.opts={...Q,platform:this.platform},Q.scurry){if(this.scurry=Q.scurry,Q.nocase!==void 0&&Q.nocase!==Q.scurry.nocase)throw Error("nocase option contradicts provided scurry option")}else{let G=Q.platform==="win32"?gI:Q.platform==="darwin"?h2:Q.platform?hI:zJA;this.scurry=new G(this.cwd,{nocase:Q.nocase,fs:Q.fs})}this.nocase=this.scurry.nocase;let B=this.platform==="darwin"||this.platform==="win32",Y={...Q,dot:this.dot,matchBase:this.matchBase,nobrace:this.nobrace,nocase:this.nocase,nocaseMagicOnly:B,nocomment:!0,noext:this.noext,nonegate:!0,optimizationLevel:2,platform:this.platform,windowsPathsNoEscape:this.windowsPathsNoEscape,debug:!!this.opts.debug},J=this.pattern.map((G)=>new J5(G,Y)),[C,X]=J.reduce((G,W)=>{return G[0].push(...W.set),G[1].push(...W.globParts),G},[[],[]]);this.patterns=C.map((G,W)=>{let F=X[W];if(!F)throw Error("invalid pattern object");return new d4(G,F,0,this.platform)})}async walk(){return[...await new x2(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walk()]}walkSync(){return[...new x2(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walkSync()]}stream(){return new f2(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).stream()}streamSync(){return new f2(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).streamSync()}iterateSync(){return this.streamSync()[Symbol.iterator]()}[Symbol.iterator](){return this.iterateSync()}iterate(){return this.stream()[Symbol.asyncIterator]()}[Symbol.asyncIterator](){return this.iterate()}}var Zg=(A,Q={})=>{if(!Array.isArray(A))A=[A];for(let B of A)if(new J5(B,Q).hasMagic())return!0;return!1};function b2(A,Q={}){return new v1(A,Q).streamSync()}function OJA(A,Q={}){return new v1(A,Q).stream()}function PJA(A,Q={}){return new v1(A,Q).walkSync()}async function jJA(A,Q={}){return new v1(A,Q).walk()}function m2(A,Q={}){return new v1(A,Q).iterateSync()}function TJA(A,Q={}){return new v1(A,Q).iterate()}var quQ=b2,MuQ=Object.assign(OJA,{sync:b2}),zuQ=m2,RuQ=Object.assign(TJA,{sync:m2}),wuQ=Object.assign(PJA,{stream:b2,iterate:m2}),c4=Object.assign(jJA,{glob:jJA,globSync:PJA,sync:wuQ,globStream:OJA,stream:MuQ,globStreamSync:b2,streamSync:quQ,globIterate:TJA,iterate:RuQ,globIterateSync:m2,iterateSync:zuQ,Glob:v1,hasMagic:Zg,escape:x4,unescape:RC});c4.glob=c4;class $g{constructor(){this._listeners={}}addEventListener(A,Q){let B=this._listeners;if(B[A]===void 0)B[A]=[];if(B[A].indexOf(Q)===-1)B[A].push(Q);return this}removeEventListener(A,Q){let Y=this._listeners[A];if(Y!==void 0){let J=Y.indexOf(Q);if(J!==-1)Y.splice(J,1)}return this}dispatchEvent(A){let B=this._listeners[A.type];if(B!==void 0){let Y=B.slice(0);for(let J=0,C=Y.length;J=0)this.list.splice(Q,1)}removeChild(A){let Q=[];for(let B of this.list)if(B.getChild()===A)Q.push(B);for(let B of Q)this.remove(B);return Q}listRefsByChild(A){let Q=[];for(let B of this.list)if(B.getChild()===A)Q.push(B);return Q}values(){return this.list}}class xB{constructor(A){if(this.set=new Set,this.map=new Map,A)for(let Q of A)this.add(Q)}add(A){let Q=A.getChild();this.removeChild(Q),this.set.add(A),this.map.set(Q,A)}remove(A){this.set.delete(A),this.map.delete(A.getChild())}removeChild(A){let Q=this.map.get(A)||null;if(Q)this.remove(Q);return Q}getRefByChild(A){return this.map.get(A)||null}values(){return Array.from(this.set)}}class rJ{constructor(A){if(this.map={},A)Object.assign(this.map,A)}set(A,Q){this.map[A]=Q}delete(A){delete this.map[A]}get(A){return this.map[A]||null}keys(){return Object.keys(this.map)}values(){return Object.values(this.map)}}var PB=Symbol("attributes"),B7=Symbol("immutableKeys");class d2 extends $g{constructor(A){super();this._disposed=!1,this.graph=void 0,this[PB]=void 0,this[B7]=void 0,this.graph=A,this[B7]=new Set,this[PB]=this._createAttributes()}getDefaults(){return{}}_createAttributes(){let A=this.getDefaults(),Q={};for(let B in A){let Y=A[B];if(Y instanceof d2){let J=this.graph._createEdge(B,this,Y);this[B7].add(B),Q[B]=J}else Q[B]=Y}return Q}isOnGraph(A){return this.graph===A.graph}isDisposed(){return this._disposed}dispose(){if(this._disposed)return;this.graph.listChildEdges(this).forEach((A)=>A.dispose()),this.graph.disconnectParents(this),this._disposed=!0,this.dispatchEvent({type:"dispose"})}detach(){return this.graph.disconnectParents(this),this}swap(A,Q){for(let B in this[PB]){let Y=this[PB][B];if(Y instanceof B6){let J=Y;if(J.getChild()===A)this.setRef(B,Q,J.getAttributes())}else if(Y instanceof OC)for(let J of Y.listRefsByChild(A)){let C=J.getAttributes();this.removeRef(B,A),this.addRef(B,Q,C)}else if(Y instanceof xB){let J=Y.getRefByChild(A);if(J){let C=J.getAttributes();this.removeRef(B,A),this.addRef(B,Q,C)}}else if(Y instanceof rJ)for(let J of Y.keys()){let C=Y.get(J);if(C.getChild()===A)this.setRefMap(B,J,Q,C.getAttributes())}}return this}get(A){return this[PB][A]}set(A,Q){return this[PB][A]=Q,this.dispatchEvent({type:"change",attribute:A})}getRef(A){let Q=this[PB][A];return Q?Q.getChild():null}setRef(A,Q,B){if(this[B7].has(A))throw Error(`Cannot overwrite immutable attribute, "${A}".`);let Y=this[PB][A];if(Y)Y.dispose();if(!Q)return this;let J=this.graph._createEdge(A,this,Q,B);return this[PB][A]=J,this.dispatchEvent({type:"change",attribute:A})}listRefs(A){return this.assertRefList(A).values().map((B)=>B.getChild())}addRef(A,Q,B){let Y=this.graph._createEdge(A,this,Q,B);return this.assertRefList(A).add(Y),this.dispatchEvent({type:"change",attribute:A})}removeRef(A,Q){let B=this.assertRefList(A);if(B instanceof OC)for(let Y of B.listRefsByChild(Q))Y.dispose();else{let Y=B.getRefByChild(Q);if(Y)Y.dispose()}return this}assertRefList(A){let Q=this[PB][A];if(Q instanceof OC||Q instanceof xB)return Q;throw Error(`Expected RefList or RefSet for attribute "${A}"`)}listRefMapKeys(A){return this.assertRefMap(A).keys()}listRefMapValues(A){return this.assertRefMap(A).values().map((Q)=>Q.getChild())}getRefMap(A,Q){let Y=this.assertRefMap(A).get(Q);return Y?Y.getChild():null}setRefMap(A,Q,B,Y){let J=this.assertRefMap(A),C=J.get(Q);if(C)C.dispose();if(!B)return this;Y=Object.assign(Y||{},{key:Q});let X=this.graph._createEdge(A,this,B,bI({},Y,{key:Q}));return J.set(Q,X),this.dispatchEvent({type:"change",attribute:A,key:Q})}assertRefMap(A){let Q=this[PB][A];if(Q instanceof rJ)return Q;throw Error(`Expected RefMap for attribute "${A}"`)}dispatchEvent(A){return super.dispatchEvent(bI({},A,{target:this})),this.graph.dispatchEvent(bI({},A,{target:this,type:`node:${A.type}`})),this}_destroyRef(A){let Q=A.getName();if(this[PB][Q]===A){if(this[PB][Q]=null,this[B7].has(Q))A.getChild().dispose()}else if(this[PB][Q]instanceof OC)this[PB][Q].remove(A);else if(this[PB][Q]instanceof xB)this[PB][Q].remove(A);else if(this[PB][Q]instanceof rJ){let B=this[PB][Q];for(let Y of B.keys())if(B.get(Y)===A)B.delete(Y)}else return;this.graph._destroyEdge(A),this.dispatchEvent({type:"change",attribute:Q})}}var hJA="v4.2.1",fF="@glb.bin",YA;(function(A){A.ACCESSOR="Accessor",A.ANIMATION="Animation",A.ANIMATION_CHANNEL="AnimationChannel",A.ANIMATION_SAMPLER="AnimationSampler",A.BUFFER="Buffer",A.CAMERA="Camera",A.MATERIAL="Material",A.MESH="Mesh",A.PRIMITIVE="Primitive",A.PRIMITIVE_TARGET="PrimitiveTarget",A.NODE="Node",A.ROOT="Root",A.SCENE="Scene",A.SKIN="Skin",A.TEXTURE="Texture",A.TEXTURE_INFO="TextureInfo"})(YA||(YA={}));var s2;(function(A){A.INTERLEAVED="interleaved",A.SEPARATE="separate"})(s2||(s2={}));var Z8;(function(A){A.ARRAY_BUFFER="ARRAY_BUFFER",A.ELEMENT_ARRAY_BUFFER="ELEMENT_ARRAY_BUFFER",A.INVERSE_BIND_MATRICES="INVERSE_BIND_MATRICES",A.OTHER="OTHER",A.SPARSE="SPARSE"})(Z8||(Z8={}));var k9;(function(A){A[A.R=4096]="R",A[A.G=256]="G",A[A.B=16]="B",A[A.A=1]="A"})(k9||(k9={}));var Y6;(function(A){A.GLTF="GLTF",A.GLB="GLB"})(Y6||(Y6={}));var J7={"5120":Int8Array,"5121":Uint8Array,"5122":Int16Array,"5123":Uint16Array,"5125":Uint32Array,"5126":Float32Array};class jQ{static createBufferFromDataURI(A){if(typeof Buffer>"u"){let Q=atob(A.split(",")[1]),B=new Uint8Array(Q.length);for(let Y=0;Y=0;return Buffer.from(Q,B?"base64":"utf8")}}static encodeText(A){return new TextEncoder().encode(A)}static decodeText(A){return new TextDecoder().decode(A)}static concat(A){let Q=0;for(let J of A)Q+=J.byteLength;let B=new Uint8Array(Q),Y=0;for(let J of A)B.set(J,Y),Y+=J.byteLength;return B}static pad(A,Q=0){let B=this.padNumber(A.byteLength);if(B===A.byteLength)return A;let Y=new Uint8Array(B);if(Y.set(A),Q!==0)for(let J=A.byteLength;J>16&255)/255,B[1]=(A>>8&255)/255,B[2]=(A&255)/255,this.convertSRGBToLinear(Q,Q)}static factorToHex(A){let Q=[...A],[B,Y,J]=this.convertLinearToSRGB(A,Q);return B*255<<16^Y*255<<8^J*255<<0}static convertSRGBToLinear(A,Q){let B=A,Y=Q;for(let J=0;J<3;J++)Y[J]=B[J]<0.04045?B[J]*0.0773993808:Math.pow(B[J]*0.9478672986+0.0521327014,2.4);return Q}static convertLinearToSRGB(A,Q){let B=A,Y=Q;for(let J=0;J<3;J++)Y[J]=B[J]<0.0031308?B[J]*12.92:1.055*Math.pow(B[J],0.41666)-0.055;return Q}}class xJA{match(A){return A.length>=3&&A[0]===255&&A[1]===216&&A[2]===255}getSize(A){let Q=new DataView(A.buffer,A.byteOffset+4),B,Y;while(Q.byteLength){if(B=Q.getUint16(0,!1),juQ(Q,B),Y=Q.getUint8(B+1),Y===192||Y===193||Y===194)return[Q.getUint16(B+7,!1),Q.getUint16(B+5,!1)];Q=new DataView(A.buffer,Q.byteOffset+B+2)}throw TypeError("Invalid JPG, no size found")}getChannels(A){return 3}}class o2{match(A){return A.length>=8&&A[0]===137&&A[1]===80&&A[2]===78&&A[3]===71&&A[4]===13&&A[5]===10&&A[6]===26&&A[7]===10}getSize(A){let Q=new DataView(A.buffer,A.byteOffset);if(jQ.decodeText(A.slice(12,16))===o2.PNG_FRIED_CHUNK_NAME)return[Q.getUint32(32,!1),Q.getUint32(36,!1)];return[Q.getUint32(16,!1),Q.getUint32(20,!1)]}getChannels(A){return 4}}o2.PNG_FRIED_CHUNK_NAME="CgBI";class F8{static registerFormat(A,Q){this.impls[A]=Q}static getMimeType(A){for(let Q in this.impls)if(this.impls[Q].match(A))return Q;return null}static getSize(A,Q){if(!this.impls[Q])return null;return this.impls[Q].getSize(A)}static getChannels(A,Q){if(!this.impls[Q])return null;return this.impls[Q].getChannels(A)}static getVRAMByteLength(A,Q){if(!this.impls[Q])return null;if(this.impls[Q].getVRAMByteLength)return this.impls[Q].getVRAMByteLength(A);let B=0,Y=4,J=this.getSize(A,Q);if(!J)return null;while(J[0]>1||J[1]>1)B+=J[0]*J[1]*Y,J[0]=Math.max(Math.floor(J[0]/2),1),J[1]=Math.max(Math.floor(J[1]/2),1);return B+=1*Y,B}static mimeTypeToExtension(A){if(A==="image/jpeg")return"jpg";return A.split("/").pop()}static extensionToMimeType(A){if(A==="jpg")return"image/jpeg";if(!A)return"";return`image/${A}`}}F8.impls={"image/jpeg":new xJA,"image/png":new o2};function juQ(A,Q){if(Q>A.byteLength)throw TypeError("Corrupt JPG, exceeded buffer limits");if(A.getUint8(Q)!==255)throw TypeError("Invalid JPG, marker table corrupted");return A}class J6{static basename(A){let Q=A.split(/[\\/]/).pop();return Q.substring(0,Q.lastIndexOf("."))}static extension(A){if(A.startsWith("data:image/")){let Q=A.match(/data:(image\/\w+)/)[1];return F8.mimeTypeToExtension(Q)}else if(A.startsWith("data:model/gltf+json"))return"gltf";else if(A.startsWith("data:model/gltf-binary"))return"glb";else if(A.startsWith("data:application/"))return"bin";return A.split(/[\\/]/).pop().split(/[.]/).pop()}}var Eg=typeof Float32Array<"u"?Float32Array:Array;if(!Math.hypot)Math.hypot=function(){var A=0,Q=arguments.length;while(Q--)A+=arguments[Q]*arguments[Q];return Math.sqrt(A)};function OuQ(){var A=new Eg(3);if(Eg!=Float32Array)A[0]=0,A[1]=0,A[2]=0;return A}function Ug(A){var Q=A[0],B=A[1],Y=A[2];return Math.hypot(Q,B,Y)}function PuQ(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=B[3]*Y+B[7]*J+B[11]*C+B[15];return X=X||1,A[0]=(B[0]*Y+B[4]*J+B[8]*C+B[12])/X,A[1]=(B[1]*Y+B[5]*J+B[9]*C+B[13])/X,A[2]=(B[2]*Y+B[6]*J+B[10]*C+B[14])/X,A}(function(){var A=OuQ();return function(Q,B,Y,J,C,X){var G,W;if(!B)B=3;if(!Y)Y=0;if(J)W=Math.min(J*B+Y,Q.length);else W=Q.length;for(G=Y;G{let C=J.getMesh();if(!C)return;let X=TuQ(C,J.getWorldMatrix());if(X.min.every(isFinite)&&X.max.every(isFinite))Kg(X.min,Q),Kg(X.max,Q)});return Q}function TuQ(A,Q){let B=fJA();for(let Y of A.listPrimitives()){let J=Y.getAttribute("POSITION"),C=Y.getIndices();if(!J)continue;let X=[0,0,0],G=[0,0,0];for(let W=0,F=C?C.getCount():J.getCount();W0)V=Math.sqrt(I+1)*2,A[3]=0.25*V,A[0]=(U-E)/V,A[1]=($-W)/V,A[2]=(G-F)/V;else if(X>Z&&X>K)V=Math.sqrt(1+X-Z-K)*2,A[3]=(U-E)/V,A[0]=0.25*V,A[1]=(G+F)/V,A[2]=($+W)/V;else if(Z>K)V=Math.sqrt(1+Z-X-K)*2,A[3]=($-W)/V,A[0]=(G+F)/V,A[1]=0.25*V,A[2]=(U+E)/V;else V=Math.sqrt(1+K-X-Z)*2,A[3]=(G-F)/V,A[0]=($+W)/V,A[1]=(U+E)/V,A[2]=0.25*V;return A}class kQ{static identity(A){return A}static eq(A,Q,B=0.00001){if(A.length!==Q.length)return!1;for(let Y=0;YB)return!1;return!0}static clamp(A,Q,B){if(AB)return B;return A}static decodeNormalizedInt(A,Q){switch(Q){case 5126:return A;case 5123:return A/65535;case 5121:return A/255;case 5122:return Math.max(A/32767,-1);case 5120:return Math.max(A/127,-1);default:throw Error("Invalid component type.")}}static encodeNormalizedInt(A,Q){switch(Q){case 5126:return A;case 5123:return Math.round(kQ.clamp(A,0,1)*65535);case 5121:return Math.round(kQ.clamp(A,0,1)*255);case 5122:return Math.round(kQ.clamp(A,-1,1)*32767);case 5120:return Math.round(kQ.clamp(A,-1,1)*127);default:throw Error("Invalid component type.")}}static decompose(A,Q,B,Y){let J=Ug([A[0],A[1],A[2]]),C=Ug([A[4],A[5],A[6]]),X=Ug([A[8],A[9],A[10]]);if(SuQ(A)<0)J=-J;Q[0]=A[12],Q[1]=A[13],Q[2]=A[14];let W=A.slice(),F=1/J,Z=1/C,U=1/X;W[0]*=F,W[1]*=F,W[2]*=F,W[4]*=Z,W[5]*=Z,W[6]*=Z,W[8]*=U,W[9]*=U,W[10]*=U,vuQ(B,W),Y[0]=J,Y[1]=C,Y[2]=X}static compose(A,Q,B,Y){let J=Y,C=Q[0],X=Q[1],G=Q[2],W=Q[3],F=C+C,Z=X+X,U=G+G,$=C*F,E=C*Z,K=C*U,I=X*Z,V=X*U,H=G*U,D=W*F,L=W*Z,z=W*U,M=B[0],N=B[1],q=B[2];return J[0]=(1-(I+H))*M,J[1]=(E+z)*M,J[2]=(K-L)*M,J[3]=0,J[4]=(E-z)*N,J[5]=(1-($+H))*N,J[6]=(V+D)*N,J[7]=0,J[8]=(K+L)*q,J[9]=(V-D)*q,J[10]=(1-($+I))*q,J[11]=0,J[12]=A[0],J[13]=A[1],J[14]=A[2],J[15]=1,J}}function yuQ(A,Q){if(!!A!==!!Q)return!1;let B=A.getChild(),Y=Q.getChild();return B===Y||B.equals(Y)}function guQ(A,Q){if(!!A!==!!Q)return!1;let B=A.values(),Y=Q.values();if(B.length!==Y.length)return!1;for(let J=0;JA,muQ=new Set;class t2 extends d2{constructor(A,Q=""){super(A);this[PB].name=Q,this.init(),this.dispatchEvent({type:"create"})}getGraph(){return this.graph}getDefaults(){return Object.assign(super.getDefaults(),{name:"",extras:{}})}set(A,Q){if(Array.isArray(Q))Q=Q.slice();return super.set(A,Q)}getName(){return this.get("name")}setName(A){return this.set("name",A)}getExtras(){return this.get("extras")}setExtras(A){return this.set("extras",A)}clone(){return new this.constructor(this.graph).copy(this,Y7)}copy(A,Q=Y7){for(let B in this[PB]){let Y=this[PB][B];if(Y instanceof B6){if(!this[B7].has(B))Y.dispose()}else if(Y instanceof OC||Y instanceof xB)for(let J of Y.values())J.dispose();else if(Y instanceof rJ)for(let J of Y.values())J.dispose()}for(let B in A[PB]){let Y=this[PB][B],J=A[PB][B];if(J instanceof B6)if(this[B7].has(B))Y.getChild().copy(Q(J.getChild()),Q);else this.setRef(B,Q(J.getChild()),J.getAttributes());else if(J instanceof xB||J instanceof OC)for(let C of J.values())this.addRef(B,Q(C.getChild()),C.getAttributes());else if(J instanceof rJ)for(let C of J.keys()){let X=J.get(C);this.setRefMap(B,C,Q(X.getChild()),X.getAttributes())}else if(xF(J))this[PB][B]=JSON.parse(JSON.stringify(J));else if(Array.isArray(J)||J instanceof ArrayBuffer||ArrayBuffer.isView(J))this[PB][B]=J.slice();else this[PB][B]=J}return this}equals(A,Q=muQ){if(this===A)return!0;if(this.propertyType!==A.propertyType)return!1;for(let B in this[PB]){if(Q.has(B))continue;let Y=this[PB][B],J=A[PB][B];if(Y instanceof B6||J instanceof B6){if(!yuQ(Y,J))return!1}else if(Y instanceof xB||J instanceof xB||Y instanceof OC||J instanceof OC){if(!guQ(Y,J))return!1}else if(Y instanceof rJ||J instanceof rJ){if(!huQ(Y,J))return!1}else if(xF(Y)||xF(J)){if(!mJA(Y,J))return!1}else if(r2(Y)||r2(J)){if(!bJA(Y,J))return!1}else if(Y!==J)return!1}return!0}detach(){return this.graph.disconnectParents(this,(A)=>A.propertyType!=="Root"),this}listParents(){return this.graph.listParents(this)}}class qJ extends t2{getDefaults(){return Object.assign(super.getDefaults(),{extensions:new rJ})}getExtension(A){return this.getRefMap("extensions",A)}setExtension(A,Q){if(Q)Q._validateParent(this);return this.setRefMap("extensions",A,Q)}listExtensions(){return this.listRefMapValues("extensions")}}class fA extends qJ{init(){this.propertyType=YA.ACCESSOR}getDefaults(){return Object.assign(super.getDefaults(),{array:null,type:fA.Type.SCALAR,componentType:fA.ComponentType.FLOAT,normalized:!1,sparse:!1,buffer:null})}static getElementSize(A){switch(A){case fA.Type.SCALAR:return 1;case fA.Type.VEC2:return 2;case fA.Type.VEC3:return 3;case fA.Type.VEC4:return 4;case fA.Type.MAT2:return 4;case fA.Type.MAT3:return 9;case fA.Type.MAT4:return 16;default:throw Error("Unexpected type: "+A)}}static getComponentSize(A){switch(A){case fA.ComponentType.BYTE:return 1;case fA.ComponentType.UNSIGNED_BYTE:return 1;case fA.ComponentType.SHORT:return 2;case fA.ComponentType.UNSIGNED_SHORT:return 2;case fA.ComponentType.UNSIGNED_INT:return 4;case fA.ComponentType.FLOAT:return 4;default:throw Error("Unexpected component type: "+A)}}getMinNormalized(A){let Q=this.getNormalized(),B=this.getElementSize(),Y=this.getComponentType();if(this.getMin(A),Q)for(let J=0;J{this._addChildOfRoot(Q.target)})}clone(){throw Error("Root cannot be cloned.")}copy(A,Q=Y7){if(Q===Y7)throw Error("Root cannot be copied.");this.set("asset",aJ({},A.get("asset"))),this.setName(A.getName()),this.setExtras(aJ({},A.getExtras())),this.setDefaultScene(A.getDefaultScene()?Q(A.getDefaultScene()):null);for(let B of A.listRefMapKeys("extensions")){let Y=A.getExtension(B);this.setExtension(B,Q(Y))}return this}_addChildOfRoot(A){if(A instanceof l4)this.addRef("scenes",A);else if(A instanceof e2)this.addRef("nodes",A);else if(A instanceof bF)this.addRef("cameras",A);else if(A instanceof qg)this.addRef("skins",A);else if(A instanceof cI)this.addRef("meshes",A);else if(A instanceof y1)this.addRef("materials",A);else if(A instanceof mF)this.addRef("textures",A);else if(A instanceof Dg)this.addRef("animations",A);else if(A instanceof fA)this.addRef("accessors",A);else if(A instanceof Ng)this.addRef("buffers",A);return this}getAsset(){return this.get("asset")}listExtensionsUsed(){return Array.from(this._extensions)}listExtensionsRequired(){return this.listExtensionsUsed().filter((A)=>A.isRequired())}_enableExtension(A){return this._extensions.add(A),this}_disableExtension(A){return this._extensions.delete(A),this}listScenes(){return this.listRefs("scenes")}setDefaultScene(A){return this.setRef("defaultScene",A)}getDefaultScene(){return this.getRef("defaultScene")}listNodes(){return this.listRefs("nodes")}listCameras(){return this.listRefs("cameras")}listSkins(){return this.listRefs("skins")}listMeshes(){return this.listRefs("meshes")}listMaterials(){return this.listRefs("materials")}listTextures(){return this.listRefs("textures")}listAnimations(){return this.listRefs("animations")}listAccessors(){return this.listRefs("accessors")}listBuffers(){return this.listRefs("buffers")}}class LJ{static fromGraph(A){return LJ._GRAPH_DOCUMENTS.get(A)||null}constructor(){this._graph=new u2,this._root=new p4(this._graph),this._logger=S9.DEFAULT_INSTANCE,LJ._GRAPH_DOCUMENTS.set(this._graph,this)}getRoot(){return this._root}getGraph(){return this._graph}getLogger(){return this._logger}setLogger(A){return this._logger=A,this}clone(){throw Error("Use 'cloneDocument(source)' from '@gltf-transform/functions'.")}merge(A){throw Error("Use 'mergeDocuments(target, source)' from '@gltf-transform/functions'.")}async transform(...A){let Q=A.map((B)=>B.name);for(let B of A)await B(this,{stack:Q});return this}createExtension(A){let Q=A.EXTENSION_NAME;return this.getRoot().listExtensionsUsed().find((Y)=>Y.extensionName===Q)||new A(this)}createScene(A=""){return new l4(this._graph,A)}createNode(A=""){return new e2(this._graph,A)}createCamera(A=""){return new bF(this._graph,A)}createSkin(A=""){return new qg(this._graph,A)}createMesh(A=""){return new cI(this._graph,A)}createPrimitive(){return new q0(this._graph)}createPrimitiveTarget(A=""){return new Lg(this._graph,A)}createMaterial(A=""){return new y1(this._graph,A)}createTexture(A=""){return new mF(this._graph,A)}createAnimation(A=""){return new Dg(this._graph,A)}createAnimationChannel(A=""){return new C6(this._graph,A)}createAnimationSampler(A=""){return new C7(this._graph,A)}createAccessor(A="",Q=null){if(!Q)Q=this.getRoot().listBuffers()[0];return new fA(this._graph,A).setBuffer(Q)}createBuffer(A=""){return new Ng(this._graph,A)}}LJ._GRAPH_DOCUMENTS=new WeakMap;class tB{constructor(A){this.extensionName="",this.prereadTypes=[],this.prewriteTypes=[],this.readDependencies=[],this.writeDependencies=[],this.document=void 0,this.required=!1,this.properties=new Set,this._listener=void 0,this.document=A,A.getRoot()._enableExtension(this),this._listener=(B)=>{let Y=B,J=Y.target;if(J instanceof oB&&J.extensionName===this.extensionName){if(Y.type==="node:create")this._addExtensionProperty(J);if(Y.type==="node:dispose")this._removeExtensionProperty(J)}};let Q=A.getGraph();Q.addEventListener("node:create",this._listener),Q.addEventListener("node:dispose",this._listener)}dispose(){this.document.getRoot()._disableExtension(this);let A=this.document.getGraph();A.removeEventListener("node:create",this._listener),A.removeEventListener("node:dispose",this._listener);for(let Q of this.properties)Q.dispose()}static register(){}isRequired(){return this.required}setRequired(A){return this.required=A,this}listProperties(){return Array.from(this.properties)}_addExtensionProperty(A){return this.properties.add(A),this}_removeExtensionProperty(A){return this.properties.delete(A),this}install(A,Q){return this}preread(A,Q){return this}prewrite(A,Q){return this}}tB.EXTENSION_NAME=void 0;class dJA{constructor(A){this.jsonDoc=void 0,this.buffers=[],this.bufferViews=[],this.bufferViewBuffers=[],this.accessors=[],this.textures=[],this.textureInfos=new Map,this.materials=[],this.meshes=[],this.cameras=[],this.nodes=[],this.skins=[],this.animations=[],this.scenes=[],this.jsonDoc=A}setTextureInfo(A,Q){if(this.textureInfos.set(A,Q),Q.texCoord!==void 0)A.setTexCoord(Q.texCoord);if(Q.extras!==void 0)A.setExtras(Q.extras);let B=this.jsonDoc.json.textures[Q.index];if(B.sampler===void 0)return;let Y=this.jsonDoc.json.samplers[B.sampler];if(Y.magFilter!==void 0)A.setMagFilter(Y.magFilter);if(Y.minFilter!==void 0)A.setMinFilter(Y.minFilter);if(Y.wrapS!==void 0)A.setWrapS(Y.wrapS);if(Y.wrapT!==void 0)A.setWrapT(Y.wrapT)}}var yJA={logger:S9.DEFAULT_INSTANCE,extensions:[],dependencies:{}},cuQ=new Set([YA.BUFFER,YA.TEXTURE,YA.MATERIAL,YA.MESH,YA.PRIMITIVE,YA.NODE,YA.SCENE]);class cJA{static read(A,Q=yJA){let B=aJ({},yJA,Q),{json:Y}=A,J=new LJ().setLogger(B.logger);this.validate(A,B);let C=new dJA(A),X=Y.asset,G=J.getRoot().getAsset();if(X.copyright)G.copyright=X.copyright;if(X.extras)G.extras=X.extras;if(Y.extras!==void 0)J.getRoot().setExtras(aJ({},Y.extras));let W=Y.extensionsUsed||[],F=Y.extensionsRequired||[];B.extensions.sort((N,q)=>N.EXTENSION_NAME>q.EXTENSION_NAME?1:-1);for(let N of B.extensions)if(W.includes(N.EXTENSION_NAME)){let q=J.createExtension(N).setRequired(F.includes(N.EXTENSION_NAME)),w=q.prereadTypes.filter((P)=>!cuQ.has(P));if(w.length)B.logger.warn(`Preread hooks for some types (${w.join()}), requested by extension ${q.extensionName}, are unsupported. Please file an issue or a PR.`);for(let P of q.readDependencies)q.install(P,B.dependencies[P])}let Z=Y.buffers||[];J.getRoot().listExtensionsUsed().filter((N)=>N.prereadTypes.includes(YA.BUFFER)).forEach((N)=>N.preread(C,YA.BUFFER)),C.buffers=Z.map((N)=>{let q=J.createBuffer(N.name);if(N.extras)q.setExtras(N.extras);if(N.uri&&N.uri.indexOf("__")!==0)q.setURI(N.uri);return q});let U=Y.bufferViews||[];C.bufferViewBuffers=U.map((N,q)=>{if(!C.bufferViews[q]){let w=A.json.buffers[N.buffer],P=w.uri?A.resources[w.uri]:A.resources[fF],_=N.byteOffset||0;C.bufferViews[q]=jQ.toView(P,_,N.byteLength)}return C.buffers[N.buffer]});let $=Y.accessors||[];C.accessors=$.map((N)=>{let q=C.bufferViewBuffers[N.bufferView],w=J.createAccessor(N.name,q).setType(N.type);if(N.extras)w.setExtras(N.extras);if(N.normalized!==void 0)w.setNormalized(N.normalized);if(N.bufferView===void 0)return w;return w.setArray(n2(N,C)),w});let E=Y.images||[],K=Y.textures||[];J.getRoot().listExtensionsUsed().filter((N)=>N.prereadTypes.includes(YA.TEXTURE)).forEach((N)=>N.preread(C,YA.TEXTURE)),C.textures=E.map((N)=>{let q=J.createTexture(N.name);if(N.extras)q.setExtras(N.extras);if(N.bufferView!==void 0){let w=Y.bufferViews[N.bufferView],P=A.json.buffers[w.buffer],_=P.uri?A.resources[P.uri]:A.resources[fF],j=w.byteOffset||0,k=w.byteLength,T=_.slice(j,j+k);q.setImage(T)}else if(N.uri!==void 0){if(q.setImage(A.resources[N.uri]),N.uri.indexOf("__")!==0)q.setURI(N.uri)}if(N.mimeType!==void 0)q.setMimeType(N.mimeType);else if(N.uri){let w=J6.extension(N.uri);q.setMimeType(F8.extensionToMimeType(w))}return q}),J.getRoot().listExtensionsUsed().filter((N)=>N.prereadTypes.includes(YA.MATERIAL)).forEach((N)=>N.preread(C,YA.MATERIAL));let I=Y.materials||[];C.materials=I.map((N)=>{let q=J.createMaterial(N.name);if(N.extras)q.setExtras(N.extras);if(N.alphaMode!==void 0)q.setAlphaMode(N.alphaMode);if(N.alphaCutoff!==void 0)q.setAlphaCutoff(N.alphaCutoff);if(N.doubleSided!==void 0)q.setDoubleSided(N.doubleSided);let w=N.pbrMetallicRoughness||{};if(w.baseColorFactor!==void 0)q.setBaseColorFactor(w.baseColorFactor);if(N.emissiveFactor!==void 0)q.setEmissiveFactor(N.emissiveFactor);if(w.metallicFactor!==void 0)q.setMetallicFactor(w.metallicFactor);if(w.roughnessFactor!==void 0)q.setRoughnessFactor(w.roughnessFactor);if(w.baseColorTexture!==void 0){let P=w.baseColorTexture,_=C.textures[K[P.index].source];q.setBaseColorTexture(_),C.setTextureInfo(q.getBaseColorTextureInfo(),P)}if(N.emissiveTexture!==void 0){let P=N.emissiveTexture,_=C.textures[K[P.index].source];q.setEmissiveTexture(_),C.setTextureInfo(q.getEmissiveTextureInfo(),P)}if(N.normalTexture!==void 0){let P=N.normalTexture,_=C.textures[K[P.index].source];if(q.setNormalTexture(_),C.setTextureInfo(q.getNormalTextureInfo(),P),N.normalTexture.scale!==void 0)q.setNormalScale(N.normalTexture.scale)}if(N.occlusionTexture!==void 0){let P=N.occlusionTexture,_=C.textures[K[P.index].source];if(q.setOcclusionTexture(_),C.setTextureInfo(q.getOcclusionTextureInfo(),P),N.occlusionTexture.strength!==void 0)q.setOcclusionStrength(N.occlusionTexture.strength)}if(w.metallicRoughnessTexture!==void 0){let P=w.metallicRoughnessTexture,_=C.textures[K[P.index].source];q.setMetallicRoughnessTexture(_),C.setTextureInfo(q.getMetallicRoughnessTextureInfo(),P)}return q}),J.getRoot().listExtensionsUsed().filter((N)=>N.prereadTypes.includes(YA.MESH)).forEach((N)=>N.preread(C,YA.MESH));let V=Y.meshes||[];J.getRoot().listExtensionsUsed().filter((N)=>N.prereadTypes.includes(YA.PRIMITIVE)).forEach((N)=>N.preread(C,YA.PRIMITIVE)),C.meshes=V.map((N)=>{let q=J.createMesh(N.name);if(N.extras)q.setExtras(N.extras);if(N.weights!==void 0)q.setWeights(N.weights);return(N.primitives||[]).forEach((P)=>{let _=J.createPrimitive();if(P.extras)_.setExtras(P.extras);if(P.material!==void 0)_.setMaterial(C.materials[P.material]);if(P.mode!==void 0)_.setMode(P.mode);for(let[T,S]of Object.entries(P.attributes||{}))_.setAttribute(T,C.accessors[S]);if(P.indices!==void 0)_.setIndices(C.accessors[P.indices]);let j=N.extras&&N.extras.targetNames||[];(P.targets||[]).forEach((T,S)=>{let v=j[S]||S.toString(),y=J.createPrimitiveTarget(v);for(let[h,g]of Object.entries(T))y.setAttribute(h,C.accessors[g]);_.addTarget(y)}),q.addPrimitive(_)}),q});let H=Y.cameras||[];C.cameras=H.map((N)=>{let q=J.createCamera(N.name).setType(N.type);if(N.extras)q.setExtras(N.extras);if(N.type===bF.Type.PERSPECTIVE){let w=N.perspective;if(q.setYFov(w.yfov),q.setZNear(w.znear),w.zfar!==void 0)q.setZFar(w.zfar);if(w.aspectRatio!==void 0)q.setAspectRatio(w.aspectRatio)}else{let w=N.orthographic;q.setZNear(w.znear).setZFar(w.zfar).setXMag(w.xmag).setYMag(w.ymag)}return q});let D=Y.nodes||[];J.getRoot().listExtensionsUsed().filter((N)=>N.prereadTypes.includes(YA.NODE)).forEach((N)=>N.preread(C,YA.NODE)),C.nodes=D.map((N)=>{let q=J.createNode(N.name);if(N.extras)q.setExtras(N.extras);if(N.translation!==void 0)q.setTranslation(N.translation);if(N.rotation!==void 0)q.setRotation(N.rotation);if(N.scale!==void 0)q.setScale(N.scale);if(N.matrix!==void 0){let w=[0,0,0],P=[0,0,0,1],_=[1,1,1];kQ.decompose(N.matrix,w,P,_),q.setTranslation(w),q.setRotation(P),q.setScale(_)}if(N.weights!==void 0)q.setWeights(N.weights);return q});let L=Y.skins||[];C.skins=L.map((N)=>{let q=J.createSkin(N.name);if(N.extras)q.setExtras(N.extras);if(N.inverseBindMatrices!==void 0)q.setInverseBindMatrices(C.accessors[N.inverseBindMatrices]);if(N.skeleton!==void 0)q.setSkeleton(C.nodes[N.skeleton]);for(let w of N.joints)q.addJoint(C.nodes[w]);return q}),D.map((N,q)=>{let w=C.nodes[q];if((N.children||[]).forEach((_)=>w.addChild(C.nodes[_])),N.mesh!==void 0)w.setMesh(C.meshes[N.mesh]);if(N.camera!==void 0)w.setCamera(C.cameras[N.camera]);if(N.skin!==void 0)w.setSkin(C.skins[N.skin])});let z=Y.animations||[];C.animations=z.map((N)=>{let q=J.createAnimation(N.name);if(N.extras)q.setExtras(N.extras);let P=(N.samplers||[]).map((j)=>{let k=J.createAnimationSampler().setInput(C.accessors[j.input]).setOutput(C.accessors[j.output]).setInterpolation(j.interpolation||C7.Interpolation.LINEAR);if(j.extras)k.setExtras(j.extras);return q.addSampler(k),k});return(N.channels||[]).forEach((j)=>{let k=J.createAnimationChannel().setSampler(P[j.sampler]).setTargetPath(j.target.path);if(j.target.node!==void 0)k.setTargetNode(C.nodes[j.target.node]);if(j.extras)k.setExtras(j.extras);q.addChannel(k)}),q});let M=Y.scenes||[];if(J.getRoot().listExtensionsUsed().filter((N)=>N.prereadTypes.includes(YA.SCENE)).forEach((N)=>N.preread(C,YA.SCENE)),C.scenes=M.map((N)=>{let q=J.createScene(N.name);if(N.extras)q.setExtras(N.extras);return(N.nodes||[]).map((P)=>C.nodes[P]).forEach((P)=>q.addChild(P)),q}),Y.scene!==void 0)J.getRoot().setDefaultScene(C.scenes[Y.scene]);return J.getRoot().listExtensionsUsed().forEach((N)=>N.read(C)),$.forEach((N,q)=>{let w=C.accessors[q],P=!!N.sparse,_=!N.bufferView&&!w.getArray();if(P||_)w.setSparse(!0).setArray(puQ(N,C))}),J}static validate(A,Q){let B=A.json;if(B.asset.version!=="2.0")throw Error(`Unsupported glTF version, "${B.asset.version}".`);if(B.extensionsRequired){for(let Y of B.extensionsRequired)if(!Q.extensions.find((J)=>J.EXTENSION_NAME===Y))throw Error(`Missing required extension, "${Y}".`)}if(B.extensionsUsed){for(let Y of B.extensionsUsed)if(!Q.extensions.find((J)=>J.EXTENSION_NAME===Y))Q.logger.warn(`Missing optional extension, "${Y}".`)}}}function luQ(A,Q){let B=Q.jsonDoc,Y=Q.bufferViews[A.bufferView],J=B.json.bufferViews[A.bufferView],C=J7[A.componentType],X=fA.getElementSize(A.type),G=C.BYTES_PER_ELEMENT,W=A.byteOffset||0,F=new C(A.count*X),Z=new DataView(Y.buffer,Y.byteOffset,Y.byteLength),U=J.byteStride;for(let $=0;$1,()=>B.basename||"buffer"),this.imageURIGenerator=new Ig(C>1,(X)=>iuQ(A,X)||B.basename||"texture"),this.logger=A.getLogger()}createTextureInfoDef(A,Q){let B={magFilter:Q.getMagFilter()||void 0,minFilter:Q.getMinFilter()||void 0,wrapS:Q.getWrapS(),wrapT:Q.getWrapT()},Y=JSON.stringify(B);if(!this.samplerDefIndexMap.has(Y))this.samplerDefIndexMap.set(Y,this.jsonDoc.json.samplers.length),this.jsonDoc.json.samplers.push(B);let J={source:this.imageIndexMap.get(A),sampler:this.samplerDefIndexMap.get(Y)},C=JSON.stringify(J);if(!this.textureDefIndexMap.has(C))this.textureDefIndexMap.set(C,this.jsonDoc.json.textures.length),this.jsonDoc.json.textures.push(J);let X={index:this.textureDefIndexMap.get(C)};if(Q.getTexCoord()!==0)X.texCoord=Q.getTexCoord();if(Object.keys(Q.getExtras()).length>0)X.extras=Q.getExtras();return this.textureInfoDefMap.set(Q,X),X}createPropertyDef(A){let Q={};if(A.getName())Q.name=A.getName();if(Object.keys(A.getExtras()).length>0)Q.extras=A.getExtras();return Q}createAccessorDef(A){let Q=this.createPropertyDef(A);if(Q.type=A.getType(),Q.componentType=A.getComponentType(),Q.count=A.getCount(),this._doc.getGraph().listParentEdges(A).some((Y)=>Y.getName()==="attributes"&&Y.getAttributes().key==="POSITION"||Y.getName()==="input"))Q.max=A.getMax([]).map(Math.fround),Q.min=A.getMin([]).map(Math.fround);if(A.getNormalized())Q.normalized=A.getNormalized();return Q}createImageData(A,Q,B){if(this.options.format===Y6.GLB)this.imageBufferViews.push(Q),A.bufferView=this.jsonDoc.json.bufferViews.length,this.jsonDoc.json.bufferViews.push({buffer:0,byteOffset:-1,byteLength:Q.byteLength});else{let Y=F8.mimeTypeToExtension(B.getMimeType());A.uri=this.imageURIGenerator.createURI(B,Y),this.assignResourceURI(A.uri,Q,!1)}}assignResourceURI(A,Q,B){let Y=this.jsonDoc.resources;if(!(A in Y)){Y[A]=Q;return}if(Q===Y[A]){this.logger.warn(`Duplicate resource URI, "${A}".`);return}let J=`Resource URI "${A}" already assigned to different data.`;if(!B){this.logger.warn(J);return}throw Error(J)}getAccessorUsage(A){let Q=this._accessorUsageMap.get(A);if(Q)return Q;if(A.getSparse())return Z8.SPARSE;for(let B of this._doc.getGraph().listParentEdges(A)){let{usage:Y}=B.getAttributes();if(Y)return Y;if(B.getParent().propertyType!==YA.ROOT)this.logger.warn(`Missing attribute ".usage" on edge, "${B.getName()}".`)}return Z8.OTHER}addAccessorToUsageGroup(A,Q){let B=this._accessorUsageMap.get(A);if(B&&B!==Q)throw Error(`Accessor with usage "${B}" cannot be reused as "${Q}".`);return this._accessorUsageMap.set(A,Q),this}}W5.BufferViewTarget=uI;W5.BufferViewUsage=Z8;W5.USAGE_TO_TARGET={[Z8.ARRAY_BUFFER]:uI.ARRAY_BUFFER,[Z8.ELEMENT_ARRAY_BUFFER]:uI.ELEMENT_ARRAY_BUFFER};class Ig{constructor(A,Q){this.multiple=void 0,this.basename=void 0,this.counter={},this.multiple=A,this.basename=Q}createURI(A,Q){if(A.getURI())return A.getURI();else if(!this.multiple)return`${this.basename(A)}.${Q}`;else{let B=this.basename(A);return this.counter[B]=this.counter[B]||1,`${B}_${this.counter[B]++}.${Q}`}}}function iuQ(A,Q){let B=A.getGraph().listParentEdges(Q).find((Y)=>Y.getParent()!==A.getRoot());return B?B.getName().replace(/texture$/i,""):""}var{BufferViewUsage:i2}=W5,{UNSIGNED_INT:nuQ,UNSIGNED_SHORT:suQ,UNSIGNED_BYTE:ruQ}=fA.ComponentType,auQ=new Set([YA.ACCESSOR,YA.BUFFER,YA.MATERIAL,YA.MESH]);class lJA{static write(A,Q){let B=A.getGraph(),Y=A.getRoot(),J={asset:aJ({generator:`glTF-Transform ${hJA}`},Y.getAsset()),extras:aJ({},Y.getExtras())},C={json:J,resources:{}},X=new W5(A,C,Q),G=Q.logger||S9.DEFAULT_INSTANCE,W=new Set(Q.extensions.map((V)=>V.EXTENSION_NAME)),F=A.getRoot().listExtensionsUsed().filter((V)=>W.has(V.extensionName)).sort((V,H)=>V.extensionName>H.extensionName?1:-1),Z=A.getRoot().listExtensionsRequired().filter((V)=>W.has(V.extensionName)).sort((V,H)=>V.extensionName>H.extensionName?1:-1);if(F.length!auQ.has(D));if(H.length)G.warn(`Prewrite hooks for some types (${H.join()}), requested by extension ${V.extensionName}, are unsupported. Please file an issue or a PR.`);for(let D of V.writeDependencies)V.install(D,Q.dependencies[D])}function U(V,H,D,L){let z=[],M=0;for(let w of V){let P=X.createAccessorDef(w);P.bufferView=J.bufferViews.length;let _=w.getArray(),j=jQ.pad(jQ.toView(_));P.byteOffset=M,M+=j.byteLength,z.push(j),X.accessorIndexMap.set(w,J.accessors.length),J.accessors.push(P)}let N=jQ.concat(z),q={buffer:H,byteOffset:D,byteLength:N.byteLength};if(L)q.target=L;return J.bufferViews.push(q),{buffers:z,byteLength:M}}function $(V,H,D){let L=V[0].getCount(),z=0;for(let P of V){let _=X.createAccessorDef(P);_.bufferView=J.bufferViews.length,_.byteOffset=z;let j=P.getElementSize(),k=P.getComponentSize();z+=jQ.padNumber(j*k),X.accessorIndexMap.set(P,J.accessors.length),J.accessors.push(_)}let M=L*z,N=new ArrayBuffer(M),q=new DataView(N);for(let P=0;PS.getCount()/2)q=!0;let p=J7[S.getComponentType()];i.indices=y,i.values=new p(h)}if(!Number.isFinite(N))return{buffers:L,byteLength:z};if(q)G.warn("Some sparse accessors have >50% non-zero elements, which may increase file size.");let w=N<255?Uint8Array:N<65535?Uint16Array:Uint32Array,P=N<255?ruQ:N<65535?suQ:nuQ,_={buffer:H,byteOffset:D+z,byteLength:0};for(let S of V){let v=M.get(S);if(v.count===0)continue;v.indicesByteOffset=_.byteLength;let y=jQ.pad(jQ.toView(new w(v.indices)));L.push(y),z+=y.byteLength,_.byteLength+=y.byteLength}J.bufferViews.push(_);let j=J.bufferViews.length-1,k={buffer:H,byteOffset:D+z,byteLength:0};for(let S of V){let v=M.get(S);if(v.count===0)continue;v.valuesByteOffset=k.byteLength;let y=jQ.pad(jQ.toView(v.values));L.push(y),z+=y.byteLength,k.byteLength+=y.byteLength}J.bufferViews.push(k);let T=J.bufferViews.length-1;for(let S of V){let v=M.get(S);if(v.count===0)continue;v.accessorDef.sparse={count:v.count,indices:{bufferView:j,byteOffset:v.indicesByteOffset,componentType:P},values:{bufferView:T,byteOffset:v.valuesByteOffset}}}return{buffers:L,byteLength:z}}if(J.accessors=[],J.bufferViews=[],J.samplers=[],J.textures=[],J.images=Y.listTextures().map((V,H)=>{let D=X.createPropertyDef(V);if(V.getMimeType())D.mimeType=V.getMimeType();let L=V.getImage();if(L)X.createImageData(D,L,V);return X.imageIndexMap.set(V,H),D}),F.filter((V)=>V.prewriteTypes.includes(YA.ACCESSOR)).forEach((V)=>V.prewrite(X,YA.ACCESSOR)),Y.listAccessors().forEach((V)=>{let{accessorUsageGroupedByParent:H,accessorParents:D}=X;if(X.accessorIndexMap.has(V))return;let L=X.getAccessorUsage(V);if(X.addAccessorToUsageGroup(V,L),H.has(L)){let z=B.listParents(V).find((M)=>M.propertyType!==YA.ROOT);D.set(V,z)}}),F.filter((V)=>V.prewriteTypes.includes(YA.BUFFER)).forEach((V)=>V.prewrite(X,YA.BUFFER)),(Y.listAccessors().length>0||X.otherBufferViews.size>0||Y.listTextures().length>0&&Q.format===Y6.GLB)&&Y.listBuffers().length===0)throw Error("Buffer required for Document resources, but none was found.");if(J.buffers=[],Y.listBuffers().forEach((V,H)=>{let D=X.createPropertyDef(V),L=X.accessorUsageGroupedByParent,z=V.listParents().filter((k)=>k instanceof fA),M=new Set(z.map((k)=>X.accessorParents.get(k))),N=new Map(Array.from(M).map((k,T)=>[k,T])),q={};for(let k of z){var w;if(X.accessorIndexMap.has(k))continue;let T=X.getAccessorUsage(k),S=T;if(L.has(T)){let v=X.accessorParents.get(k);S+=`:${N.get(v)}`}q[w=S]||(q[w]={usage:T,accessors:[]}),q[S].accessors.push(k)}let P=[],_=J.buffers.length,j=0;for(let{usage:k,accessors:T}of Object.values(q))if(k===i2.ARRAY_BUFFER&&Q.vertexLayout===s2.INTERLEAVED){let S=$(T,_,j);j+=S.byteLength;for(let v of S.buffers)P.push(v)}else if(k===i2.ARRAY_BUFFER)for(let S of T){let v=$([S],_,j);j+=v.byteLength;for(let y of v.buffers)P.push(y)}else if(k===i2.SPARSE){let S=E(T,_,j);j+=S.byteLength;for(let v of S.buffers)P.push(v)}else if(k===i2.ELEMENT_ARRAY_BUFFER){let S=W5.BufferViewTarget.ELEMENT_ARRAY_BUFFER,v=U(T,_,j,S);j+=v.byteLength;for(let y of v.buffers)P.push(y)}else{let S=U(T,_,j);j+=S.byteLength;for(let v of S.buffers)P.push(v)}if(X.imageBufferViews.length&&H===0){for(let k=0;k!V.getBuffer()))G.warn("Skipped writing one or more Accessors: no Buffer assigned.");F.filter((V)=>V.prewriteTypes.includes(YA.MATERIAL)).forEach((V)=>V.prewrite(X,YA.MATERIAL)),J.materials=Y.listMaterials().map((V,H)=>{let D=X.createPropertyDef(V);if(V.getAlphaMode()!==y1.AlphaMode.OPAQUE)D.alphaMode=V.getAlphaMode();if(V.getAlphaMode()===y1.AlphaMode.MASK)D.alphaCutoff=V.getAlphaCutoff();if(V.getDoubleSided())D.doubleSided=!0;if(D.pbrMetallicRoughness={},!kQ.eq(V.getBaseColorFactor(),[1,1,1,1]))D.pbrMetallicRoughness.baseColorFactor=V.getBaseColorFactor();if(!kQ.eq(V.getEmissiveFactor(),[0,0,0]))D.emissiveFactor=V.getEmissiveFactor();if(V.getRoughnessFactor()!==1)D.pbrMetallicRoughness.roughnessFactor=V.getRoughnessFactor();if(V.getMetallicFactor()!==1)D.pbrMetallicRoughness.metallicFactor=V.getMetallicFactor();if(V.getBaseColorTexture()){let L=V.getBaseColorTexture(),z=V.getBaseColorTextureInfo();D.pbrMetallicRoughness.baseColorTexture=X.createTextureInfoDef(L,z)}if(V.getEmissiveTexture()){let L=V.getEmissiveTexture(),z=V.getEmissiveTextureInfo();D.emissiveTexture=X.createTextureInfoDef(L,z)}if(V.getNormalTexture()){let L=V.getNormalTexture(),z=V.getNormalTextureInfo(),M=X.createTextureInfoDef(L,z);if(V.getNormalScale()!==1)M.scale=V.getNormalScale();D.normalTexture=M}if(V.getOcclusionTexture()){let L=V.getOcclusionTexture(),z=V.getOcclusionTextureInfo(),M=X.createTextureInfoDef(L,z);if(V.getOcclusionStrength()!==1)M.strength=V.getOcclusionStrength();D.occlusionTexture=M}if(V.getMetallicRoughnessTexture()){let L=V.getMetallicRoughnessTexture(),z=V.getMetallicRoughnessTextureInfo();D.pbrMetallicRoughness.metallicRoughnessTexture=X.createTextureInfoDef(L,z)}return X.materialIndexMap.set(V,H),D}),F.filter((V)=>V.prewriteTypes.includes(YA.MESH)).forEach((V)=>V.prewrite(X,YA.MESH)),J.meshes=Y.listMeshes().map((V,H)=>{let D=X.createPropertyDef(V),L=null;if(D.primitives=V.listPrimitives().map((z)=>{let M={attributes:{}};M.mode=z.getMode();let N=z.getMaterial();if(N)M.material=X.materialIndexMap.get(N);if(Object.keys(z.getExtras()).length)M.extras=z.getExtras();let q=z.getIndices();if(q)M.indices=X.accessorIndexMap.get(q);for(let w of z.listSemantics())M.attributes[w]=X.accessorIndexMap.get(z.getAttribute(w));for(let w of z.listTargets()){let P={};for(let _ of w.listSemantics())P[_]=X.accessorIndexMap.get(w.getAttribute(_));M.targets=M.targets||[],M.targets.push(P)}if(z.listTargets().length&&!L)L=z.listTargets().map((w)=>w.getName());return M}),V.getWeights().length)D.weights=V.getWeights();if(L)D.extras=D.extras||{},D.extras.targetNames=L;return X.meshIndexMap.set(V,H),D}),J.cameras=Y.listCameras().map((V,H)=>{let D=X.createPropertyDef(V);if(D.type=V.getType(),D.type===bF.Type.PERSPECTIVE){D.perspective={znear:V.getZNear(),zfar:V.getZFar(),yfov:V.getYFov()};let L=V.getAspectRatio();if(L!==null)D.perspective.aspectRatio=L}else D.orthographic={znear:V.getZNear(),zfar:V.getZFar(),xmag:V.getXMag(),ymag:V.getYMag()};return X.cameraIndexMap.set(V,H),D}),J.nodes=Y.listNodes().map((V,H)=>{let D=X.createPropertyDef(V);if(!kQ.eq(V.getTranslation(),[0,0,0]))D.translation=V.getTranslation();if(!kQ.eq(V.getRotation(),[0,0,0,1]))D.rotation=V.getRotation();if(!kQ.eq(V.getScale(),[1,1,1]))D.scale=V.getScale();if(V.getWeights().length)D.weights=V.getWeights();return X.nodeIndexMap.set(V,H),D}),J.skins=Y.listSkins().map((V,H)=>{let D=X.createPropertyDef(V),L=V.getInverseBindMatrices();if(L)D.inverseBindMatrices=X.accessorIndexMap.get(L);let z=V.getSkeleton();if(z)D.skeleton=X.nodeIndexMap.get(z);return D.joints=V.listJoints().map((M)=>X.nodeIndexMap.get(M)),X.skinIndexMap.set(V,H),D}),Y.listNodes().forEach((V,H)=>{let D=J.nodes[H],L=V.getMesh();if(L)D.mesh=X.meshIndexMap.get(L);let z=V.getCamera();if(z)D.camera=X.cameraIndexMap.get(z);let M=V.getSkin();if(M)D.skin=X.skinIndexMap.get(M);if(V.listChildren().length>0)D.children=V.listChildren().map((N)=>X.nodeIndexMap.get(N))}),J.animations=Y.listAnimations().map((V,H)=>{let D=X.createPropertyDef(V),L=new Map;return D.samplers=V.listSamplers().map((z,M)=>{let N=X.createPropertyDef(z);return N.input=X.accessorIndexMap.get(z.getInput()),N.output=X.accessorIndexMap.get(z.getOutput()),N.interpolation=z.getInterpolation(),L.set(z,M),N}),D.channels=V.listChannels().map((z)=>{let M=X.createPropertyDef(z);return M.sampler=L.get(z.getSampler()),M.target={node:X.nodeIndexMap.get(z.getTargetNode()),path:z.getTargetPath()},M}),X.animationIndexMap.set(V,H),D}),J.scenes=Y.listScenes().map((V,H)=>{let D=X.createPropertyDef(V);return D.nodes=V.listChildren().map((L)=>X.nodeIndexMap.get(L)),X.sceneIndexMap.set(V,H),D});let I=Y.getDefaultScene();if(I)J.scene=Y.listScenes().indexOf(I);return J.extensionsUsed=F.map((V)=>V.extensionName),J.extensionsRequired=Z.map((V)=>V.extensionName),F.forEach((V)=>V.write(X)),ouQ(J),C}}function ouQ(A){let Q=[];for(let B in A){let Y=A[B];if(Array.isArray(Y)&&Y.length===0)Q.push(B);else if(Y===null||Y==="")Q.push(B);else if(Y&&typeof Y==="object"&&Object.keys(Y).length===0)Q.push(B)}for(let B of Q)delete A[B]}var a2;(function(A){A[A.JSON=1313821514]="JSON",A[A.BIN=5130562]="BIN"})(a2||(a2={}));class pJA{constructor(){this._logger=S9.DEFAULT_INSTANCE,this._extensions=new Set,this._dependencies={},this._vertexLayout=s2.INTERLEAVED,this.lastReadBytes=0,this.lastWriteBytes=0}setLogger(A){return this._logger=A,this}registerExtensions(A){for(let Q of A)this._extensions.add(Q),Q.register();return this}registerDependencies(A){return Object.assign(this._dependencies,A),this}setVertexLayout(A){return this._vertexLayout=A,this}async read(A){return await this.readJSON(await this.readAsJSON(A))}async readAsJSON(A){let Q=await this.readURI(A,"view");this.lastReadBytes=Q.byteLength;let B=gJA(Q)?this._binaryToJSON(Q):{json:JSON.parse(jQ.decodeText(Q)),resources:{}};return await this._readResourcesExternal(B,this.dirname(A)),this._readResourcesInternal(B),B}async readJSON(A){return A=this._copyJSON(A),this._readResourcesInternal(A),cJA.read(A,{extensions:Array.from(this._extensions),dependencies:this._dependencies,logger:this._logger})}async binaryToJSON(A){let Q=this._binaryToJSON(jQ.assertView(A));this._readResourcesInternal(Q);let B=Q.json;if(B.buffers&&B.buffers.some((Y)=>tuQ(Q,Y)))throw Error("Cannot resolve external buffers with binaryToJSON().");else if(B.images&&B.images.some((Y)=>euQ(Q,Y)))throw Error("Cannot resolve external images with binaryToJSON().");return Q}async readBinary(A){return this.readJSON(await this.binaryToJSON(jQ.assertView(A)))}async writeJSON(A,Q={}){if(Q.format===Y6.GLB&&A.getRoot().listBuffers().length>1)throw Error("GLB must have 0–1 buffers.");return lJA.write(A,{format:Q.format||Y6.GLTF,basename:Q.basename||"",logger:this._logger,vertexLayout:this._vertexLayout,dependencies:aJ({},this._dependencies),extensions:Array.from(this._extensions)})}async writeBinary(A){let{json:Q,resources:B}=await this.writeJSON(A,{format:Y6.GLB}),Y=new Uint32Array([1179937895,2,12]),J=JSON.stringify(Q),C=jQ.pad(jQ.encodeText(J),32),X=jQ.toView(new Uint32Array([C.byteLength,1313821514])),G=jQ.concat([X,C]);Y[Y.length-1]+=G.byteLength;let W=Object.values(B)[0];if(!W||!W.byteLength)return jQ.concat([jQ.toView(Y),G]);let F=jQ.pad(W,0),Z=jQ.toView(new Uint32Array([F.byteLength,5130562])),U=jQ.concat([Z,F]);return Y[Y.length-1]+=U.byteLength,jQ.concat([jQ.toView(Y),G,U])}async _readResourcesExternal(A,Q){var B=this;let Y=A.json.images||[],J=A.json.buffers||[],C=[...Y,...J].map(async function(X){let G=X.uri;if(!G||G.match(/data:/))return Promise.resolve();A.resources[G]=await B.readURI(B.resolve(Q,G),"view"),B.lastReadBytes+=A.resources[G].byteLength});await Promise.all(C)}_readResourcesInternal(A){function Q(J){if(!J.uri)return;if(J.uri in A.resources){jQ.assertView(A.resources[J.uri]);return}if(J.uri.match(/data:/)){let C=`__${uJA()}.${J6.extension(J.uri)}`;A.resources[C]=jQ.createBufferFromDataURI(J.uri),J.uri=C}}(A.json.images||[]).forEach((J)=>{if(J.bufferView===void 0&&J.uri===void 0)throw Error("Missing resource URI or buffer view.");Q(J)}),(A.json.buffers||[]).forEach(Q)}_copyJSON(A){let{images:Q,buffers:B}=A.json;if(A={json:aJ({},A.json),resources:aJ({},A.resources)},Q)A.json.images=Q.map((Y)=>aJ({},Y));if(B)A.json.buffers=B.map((Y)=>aJ({},Y));return A}_binaryToJSON(A){if(!gJA(A))throw Error("Invalid glTF 2.0 binary.");let Q=new Uint32Array(A.buffer,A.byteOffset+12,2);if(Q[1]!==a2.JSON)throw Error("Missing required GLB JSON chunk.");let B=20,Y=Q[0],J=jQ.decodeText(jQ.toView(A,B,Y)),C=JSON.parse(J),X=B+Y;if(A.byteLength<=X)return{json:C,resources:{}};let G=new Uint32Array(A.buffer,A.byteOffset+X,2);if(G[1]!==a2.BIN)return{json:C,resources:{}};let W=G[0],F=jQ.toView(A,X+8,W);return{json:C,resources:{[fF]:F}}}}function tuQ(A,Q){return Q.uri!==void 0&&!(Q.uri in A.resources)}function euQ(A,Q){return Q.uri!==void 0&&!(Q.uri in A.resources)&&Q.bufferView===void 0}function gJA(A){if(A.byteLength<3*Uint32Array.BYTES_PER_ELEMENT)return!1;let Q=new Uint32Array(A.buffer,A.byteOffset,3);return Q[0]===1179937895&&Q[1]===2}class i4 extends pJA{constructor(A=null,Q=G5.DEFAULT_INIT){super();this._fetch=void 0,this._fetchConfig=void 0,this._init=void 0,this._fetchEnabled=!1,this._fetch=A,this._fetchConfig=Q,this._init=this.init()}async init(){if(this._init)return this._init;return Promise.all([import("fs"),import("path")]).then(([A,Q])=>{this._fs=A.promises,this._path=Q})}setAllowNetwork(A){if(A&&!this._fetch)throw Error("NodeIO requires a Fetch API implementation for HTTP requests.");return this._fetchEnabled=A,this}async readURI(A,Q){if(await this.init(),G5.isAbsoluteURL(A)){if(!this._fetchEnabled||!this._fetch)throw Error("Network request blocked. Allow HTTP requests explicitly, if needed.");let B=await this._fetch(A,this._fetchConfig);switch(Q){case"view":return new Uint8Array(await B.arrayBuffer());case"text":return B.text()}}else switch(Q){case"view":return this._fs.readFile(A);case"text":return this._fs.readFile(A,"utf8")}}resolve(A,Q){if(G5.isAbsoluteURL(A)||G5.isAbsoluteURL(Q))return G5.resolve(A,Q);return this._path.resolve(A,decodeURIComponent(Q))}dirname(A){if(G5.isAbsoluteURL(A))return G5.dirname(A);return this._path.dirname(A)}async write(A,Q){await this.init(),await(!!A.match(/\.glb$/)?this._writeGLB(A,Q):this._writeGLTF(A,Q))}async _writeGLTF(A,Q){var B=this;this.lastWriteBytes=0;let{json:Y,resources:J}=await this.writeJSON(Q,{format:Y6.GLTF,basename:J6.basename(A)}),{_fs:C,_path:X}=this,G=X.dirname(A),W=JSON.stringify(Y,null,2);await C.writeFile(A,W),this.lastWriteBytes+=W.length;for(let F of AdQ(Object.keys(J),10))await Promise.all(F.map(async function(Z){if(G5.isAbsoluteURL(Z)){if(G5.extension(Z)==="bin")throw Error(`Cannot write buffer to path "${Z}".`);return}let U=X.join(G,decodeURIComponent(Z));await C.mkdir(X.dirname(U),{recursive:!0}),await C.writeFile(U,J[Z]),B.lastWriteBytes+=J[Z].byteLength}))}async _writeGLB(A,Q){let B=await this.writeBinary(Q);await this._fs.writeFile(A,B),this.lastWriteBytes=B.byteLength}}function AdQ(A,Q){let B=[];for(let Y=0,J=A.length;Y{if(!Y.extensions||!Y.extensions[X6])return;let C=Y.extensions[X6],X=this.createInstancedMesh();for(let G in C.attributes)X.setAttribute(G,A.accessors[C.attributes[G]]);A.nodes[J].setExtension(X6,X)}),this}prewrite(A){A.accessorUsageGroupedByParent.add(zg);for(let Q of this.properties)for(let B of Q.listAttributes())A.addAccessorToUsageGroup(B,zg);return this}write(A){let Q=A.jsonDoc;return this.document.getRoot().listNodes().forEach((B)=>{let Y=B.getExtension(X6);if(Y){let J=A.nodeIndexMap.get(B),C=Q.json.nodes[J],X={attributes:{}};Y.listSemantics().forEach((G)=>{let W=Y.getAttribute(G);X.attributes[G]=A.accessorIndexMap.get(W)}),C.extensions=C.extensions||{},C.extensions[X6]=X}}),this}}Y3.EXTENSION_NAME=X6;function L6(){return L6=Object.assign?Object.assign.bind():function(A){for(var Q=1;Q8?8:4,X.componentType=C>8?rJA:YdQ,X.normalized=!0,G=A.getElementSize()===3?WdQ(G):G,X.array=Q.encodeFilterOct(G,A.getCount(),X.byteStride,C);break;case d0.QUATERNION:X.byteStride=8,X.componentType=rJA,X.normalized=!0,X.array=Q.encodeFilterQuat(G,A.getCount(),X.byteStride,C);break;default:throw Error("Invalid filter.")}if(X.min=A.getMin([]),X.max=A.getMax([]),A.getNormalized())X.min=X.min.map((W)=>Rg(W,A.getComponentType())),X.max=X.max.map((W)=>Rg(W,A.getComponentType()));if(X.normalized)X.min=X.min.map((W)=>aJA(W,X.componentType)),X.max=X.max.map((W)=>aJA(W,X.componentType))}else if(X.byteStride%4)X.array=GdQ(X.array,A.getElementSize()),X.byteStride=X.array.byteLength/A.getCount();return X}function XdQ(A){let Q=A.getComponentType(),B=A.getArray(),Y=new Float32Array(B.length);for(let J=0;J{return Y instanceof q0&&Y.getMode()===q0.Mode.TRIANGLES})?s4.TRIANGLES:s4.INDICES;return s4.ATTRIBUTES}function ZdQ(A,Q){let B=Q.getGraph().listParentEdges(A).filter((Y)=>!(Y.getParent()instanceof p4));for(let Y of B){let J=Y.getName(),C=Y.getAttributes().key||"",X=Y.getParent().propertyType===YA.PRIMITIVE_TARGET;if(J==="indices")return{filter:d0.NONE};if(J==="attributes"){if(C==="POSITION")return{filter:d0.NONE};if(C==="TEXCOORD_0")return{filter:d0.NONE};if(C.startsWith("JOINTS_"))return{filter:d0.NONE};if(C.startsWith("WEIGHTS_"))return{filter:d0.NONE};if(C==="NORMAL"||C==="TANGENT")return X?{filter:d0.NONE}:{filter:d0.OCTAHEDRAL,bits:8}}if(J==="output"){let G=W9A(A);if(G==="rotation")return{filter:d0.QUATERNION,bits:16};if(G==="translation")return{filter:d0.EXPONENTIAL,bits:12};if(G==="scale")return{filter:d0.EXPONENTIAL,bits:12};return{filter:d0.NONE}}if(J==="input")return{filter:d0.NONE};if(J==="inverseBindMatrices")return{filter:d0.NONE}}return{filter:d0.NONE}}function W9A(A){for(let Q of A.listParents()){if(!(Q instanceof C7))continue;for(let B of Q.listParents()){if(!(B instanceof C6))continue;return B.getTargetPath()}}return null}var oJA={method:nI.QUANTIZE};class rI extends tB{constructor(...A){super(...A);this.extensionName=CJ,this.prereadTypes=[YA.BUFFER,YA.PRIMITIVE],this.prewriteTypes=[YA.BUFFER,YA.ACCESSOR],this.readDependencies=["meshopt.decoder"],this.writeDependencies=["meshopt.encoder"],this._decoder=null,this._decoderFallbackBufferMap=new Map,this._encoder=null,this._encoderOptions=oJA,this._encoderFallbackBuffer=null,this._encoderBufferViews={},this._encoderBufferViewData={},this._encoderBufferViewAccessors={}}install(A,Q){if(A==="meshopt.decoder")this._decoder=Q;if(A==="meshopt.encoder")this._encoder=Q;return this}setEncoderOptions(A){return this._encoderOptions=L6({},oJA,A),this}preread(A,Q){if(!this._decoder){if(!this.isRequired())return this;throw Error(`[${CJ}] Please install extension dependency, "meshopt.decoder".`)}if(!this._decoder.supported){if(!this.isRequired())return this;throw Error(`[${CJ}]: Missing WASM support.`)}if(Q===YA.BUFFER)this._prereadBuffers(A);else if(Q===YA.PRIMITIVE)this._prereadPrimitives(A);return this}_prereadBuffers(A){let Q=A.jsonDoc;(Q.json.bufferViews||[]).forEach((Y,J)=>{if(!Y.extensions||!Y.extensions[CJ])return;let C=Y.extensions[CJ],X=C.byteOffset||0,G=C.byteLength||0,W=C.count,F=C.byteStride,Z=new Uint8Array(W*F),U=Q.json.buffers[C.buffer],$=U.uri?Q.resources[U.uri]:Q.resources[fF],E=jQ.toView($,X,G);this._decoder.decodeGltfBuffer(Z,W,F,E,C.mode,C.filter),A.bufferViews[J]=Z})}_prereadPrimitives(A){let Q=A.jsonDoc;(Q.json.bufferViews||[]).forEach((Y)=>{if(!Y.extensions||!Y.extensions[CJ])return;let J=Y.extensions[CJ],C=A.buffers[J.buffer],X=A.buffers[Y.buffer],G=Q.json.buffers[Y.buffer];if(BdQ(G))this._decoderFallbackBufferMap.set(X,C)})}read(A){if(!this.isRequired())return this;for(let[Q,B]of this._decoderFallbackBufferMap){for(let Y of Q.listParents())if(Y instanceof fA)Y.swap(Q,B);Q.dispose()}return this}prewrite(A,Q){if(Q===YA.ACCESSOR)this._prewriteAccessors(A);else if(Q===YA.BUFFER)this._prewriteBuffers(A);return this}_prewriteAccessors(A){let Q=A.jsonDoc.json,B=this._encoder,Y=this._encoderOptions,J=this.document.getGraph(),C=this.document.createBuffer(),X=this.document.getRoot().listBuffers().indexOf(C),G=1,W=new Map,F=(Z)=>{for(let U of J.listParents(Z)){if(U.propertyType===YA.ROOT)continue;let $=W.get(Z);if($===void 0)W.set(Z,$=G++);return $}return-1};this._encoderFallbackBuffer=C,this._encoderBufferViews={},this._encoderBufferViewData={},this._encoderBufferViewAccessors={};for(let Z of this.document.getRoot().listAccessors()){if(W9A(Z)==="weights")continue;if(Z.getSparse())continue;let U=A.getAccessorUsage(Z),$=A.accessorUsageGroupedByParent.has(U)?F(Z):null,E=FdQ(Z,U),K=Y.method===nI.FILTER?ZdQ(Z,this.document):{filter:d0.NONE},I=CdQ(Z,B,E,K),{array:V,byteStride:H}=I,D=Z.getBuffer();if(!D)throw Error(`${CJ}: Missing buffer for accessor.`);let L=this.document.getRoot().listBuffers().indexOf(D),z=[U,$,E,K.filter,H,L].join(":"),M=this._encoderBufferViews[z],N=this._encoderBufferViewData[z],q=this._encoderBufferViewAccessors[z];if(!M||!N)q=this._encoderBufferViewAccessors[z]=[],N=this._encoderBufferViewData[z]=[],M=this._encoderBufferViews[z]={buffer:X,target:W5.USAGE_TO_TARGET[U],byteOffset:0,byteLength:0,byteStride:U===W5.BufferViewUsage.ARRAY_BUFFER?H:void 0,extensions:{[CJ]:{buffer:L,byteOffset:0,byteLength:0,mode:E,filter:K.filter!==d0.NONE?K.filter:void 0,byteStride:H,count:0}}};let w=A.createAccessorDef(Z);if(w.componentType=I.componentType,w.normalized=I.normalized,w.byteOffset=M.byteLength,w.min&&I.min)w.min=I.min;if(w.max&&I.max)w.max=I.max;A.accessorIndexMap.set(Z,Q.accessors.length),Q.accessors.push(w),q.push(w),N.push(new Uint8Array(V.buffer,V.byteOffset,V.byteLength)),M.byteLength+=V.byteLength,M.extensions.EXT_meshopt_compression.count+=Z.getCount()}}_prewriteBuffers(A){let Q=this._encoder;for(let B in this._encoderBufferViews){let Y=this._encoderBufferViews[B],J=this._encoderBufferViewData[B],C=this.document.getRoot().listBuffers()[Y.extensions[CJ].buffer],X=A.otherBufferViews.get(C)||[],{count:G,byteStride:W,mode:F}=Y.extensions[CJ],Z=jQ.concat(J),U=Q.encodeGltfBuffer(Z,G,W,F),$=jQ.pad(U);Y.extensions[CJ].byteLength=U.byteLength,J.length=0,J.push($),X.push($),A.otherBufferViews.set(C,X)}}write(A){let Q=0;for(let C in this._encoderBufferViews){let X=this._encoderBufferViews[C],G=this._encoderBufferViewData[C][0],W=A.otherBufferViewsIndexMap.get(G),F=this._encoderBufferViewAccessors[C];for(let E of F)E.bufferView=W;let Z=A.jsonDoc.json.bufferViews[W],U=Z.byteOffset||0;Object.assign(Z,X),Z.byteOffset=Q;let $=Z.extensions[CJ];$.byteOffset=U,Q+=jQ.padNumber(X.byteLength)}let B=this._encoderFallbackBuffer,Y=A.bufferIndexMap.get(B),J=A.jsonDoc.json.buffers[Y];return J.byteLength=Q,J.extensions={[CJ]:{fallback:!0}},B.dispose(),this}}rI.EXTENSION_NAME=CJ;rI.EncoderMethod=nI;class F9A{match(A){return A.length>=12&&jQ.decodeText(A.slice(4,12))==="ftypavif"}getSize(A){if(!this.match(A))return null;let Q=new DataView(A.buffer,A.byteOffset,A.byteLength),B=tJA(Q,0);if(!B)return null;let Y=B.end;while(B=tJA(Q,Y))if(B.type==="meta")Y=B.start+4;else if(B.type==="iprp"||B.type==="ipco")Y=B.start;else if(B.type==="ispe")return[Q.getUint32(B.start+4),Q.getUint32(B.start+8)];else if(B.type==="mdat")break;else Y=B.end;return null}getChannels(A){return 4}}class J3 extends tB{constructor(...A){super(...A);this.extensionName=pI,this.prereadTypes=[YA.TEXTURE]}static register(){F8.registerFormat("image/avif",new F9A)}preread(A){return(A.jsonDoc.json.textures||[]).forEach((B)=>{if(B.extensions&&B.extensions[pI])B.source=B.extensions[pI].source}),this}read(A){return this}write(A){let Q=A.jsonDoc;return this.document.getRoot().listTextures().forEach((B)=>{if(B.getMimeType()==="image/avif"){let Y=A.imageIndexMap.get(B);(Q.json.textures||[]).forEach((C)=>{if(C.source===Y)C.extensions=C.extensions||{},C.extensions[pI]={source:C.source},delete C.source})}}),this}}J3.EXTENSION_NAME=pI;function tJA(A,Q){if(A.byteLength<4+Q)return null;let B=A.getUint32(Q);if(A.byteLength=12&&A[8]===87&&A[9]===69&&A[10]===66&&A[11]===80}getSize(A){let Q=jQ.decodeText(A.slice(0,4)),B=jQ.decodeText(A.slice(8,12));if(Q!=="RIFF"||B!=="WEBP")return null;let Y=new DataView(A.buffer,A.byteOffset),J=12;while(J>6);return[U,$]}J+=8+X+X%2}return null}getChannels(A){return 4}}class C3 extends tB{constructor(...A){super(...A);this.extensionName=lI,this.prereadTypes=[YA.TEXTURE]}static register(){F8.registerFormat("image/webp",new Z9A)}preread(A){return(A.jsonDoc.json.textures||[]).forEach((B)=>{if(B.extensions&&B.extensions[lI])B.source=B.extensions[lI].source}),this}read(A){return this}write(A){let Q=A.jsonDoc;return this.document.getRoot().listTextures().forEach((B)=>{if(B.getMimeType()==="image/webp"){let Y=A.imageIndexMap.get(B);(Q.json.textures||[]).forEach((C)=>{if(C.source===Y)C.extensions=C.extensions||{},C.extensions[lI]={source:C.source},delete C.source})}}),this}}C3.EXTENSION_NAME=lI;var SY,$9A,U9A;function $dQ(A,Q){let B=new SY.DecoderBuffer;try{if(B.Init(Q,Q.length),A.GetEncodedGeometryType(B)!==SY.TRIANGULAR_MESH)throw Error(`[${S0}] Unknown geometry type.`);let J=new SY.Mesh;if(!A.DecodeBufferToMesh(B,J).ok()||J.ptr===0)throw Error(`[${S0}] Decoding failure.`);return J}finally{SY.destroy(B)}}function UdQ(A,Q){let Y=Q.num_faces()*3,J,C;if(Q.num_points()<=65534){let X=Y*Uint16Array.BYTES_PER_ELEMENT;J=SY._malloc(X),A.GetTrianglesUInt16Array(Q,X,J),C=new Uint16Array(SY.HEAPU16.buffer,J,Y).slice()}else{let X=Y*Uint32Array.BYTES_PER_ELEMENT;J=SY._malloc(X),A.GetTrianglesUInt32Array(Q,X,J),C=new Uint32Array(SY.HEAPU32.buffer,J,Y).slice()}return SY._free(J),C}function EdQ(A,Q,B,Y){let J=U9A[Y.componentType],C=$9A[Y.componentType],X=B.num_components(),W=Q.num_points()*X,F=W*C.BYTES_PER_ELEMENT,Z=SY._malloc(F);A.GetAttributeDataArrayForAllPoints(Q,B,J,F,Z);let U=new C(SY.HEAPF32.buffer,Z,W).slice();return SY._free(Z),U}function KdQ(A){SY=A,$9A={[fA.ComponentType.FLOAT]:Float32Array,[fA.ComponentType.UNSIGNED_INT]:Uint32Array,[fA.ComponentType.UNSIGNED_SHORT]:Uint16Array,[fA.ComponentType.UNSIGNED_BYTE]:Uint8Array,[fA.ComponentType.SHORT]:Int16Array,[fA.ComponentType.BYTE]:Int8Array},U9A={[fA.ComponentType.FLOAT]:SY.DT_FLOAT32,[fA.ComponentType.UNSIGNED_INT]:SY.DT_UINT32,[fA.ComponentType.UNSIGNED_SHORT]:SY.DT_UINT16,[fA.ComponentType.UNSIGNED_BYTE]:SY.DT_UINT8,[fA.ComponentType.SHORT]:SY.DT_INT16,[fA.ComponentType.BYTE]:SY.DT_INT8}}var F5,sI;(function(A){A[A.EDGEBREAKER=1]="EDGEBREAKER",A[A.SEQUENTIAL=0]="SEQUENTIAL"})(sI||(sI={}));var U5;(function(A){A.POSITION="POSITION",A.NORMAL="NORMAL",A.COLOR="COLOR",A.TEX_COORD="TEX_COORD",A.GENERIC="GENERIC"})(U5||(U5={}));var E9A={[U5.POSITION]:14,[U5.NORMAL]:10,[U5.COLOR]:8,[U5.TEX_COORD]:12,[U5.GENERIC]:12},eJA={decodeSpeed:5,encodeSpeed:5,method:sI.EDGEBREAKER,quantizationBits:E9A,quantizationVolume:"mesh"};function VdQ(A){F5=A}function IdQ(A,Q=eJA){let B=L6({},eJA,Q);B.quantizationBits=L6({},E9A,Q.quantizationBits);let Y=new F5.MeshBuilder,J=new F5.Mesh,C=new F5.ExpertEncoder(J),X={},G=new F5.DracoInt8Array,W=A.listTargets().length>0,F=!1;for(let I of A.listSemantics()){let V=A.getAttribute(I);if(V.getSparse()){F=!0;continue}let H=HdQ(I),D=DdQ(Y,V.getComponentType(),J,F5[H],V.getCount(),V.getElementSize(),V.getArray());if(D===-1)throw Error(`Error compressing "${I}" attribute.`);if(X[I]=D,B.quantizationVolume==="mesh"||I!=="POSITION")C.SetAttributeQuantization(D,B.quantizationBits[H]);else if(typeof B.quantizationVolume==="object"){let{quantizationVolume:L}=B,z=Math.max(L.max[0]-L.min[0],L.max[1]-L.min[1],L.max[2]-L.min[2]);C.SetAttributeExplicitQuantization(D,B.quantizationBits[H],V.getElementSize(),L.min,z)}else throw Error("Invalid quantization volume state.")}let Z=A.getIndices();if(!Z)throw new Q3("Primitive must have indices.");if(Y.AddFacesToMesh(J,Z.getCount()/3,Z.getArray()),C.SetSpeedOptions(B.encodeSpeed,B.decodeSpeed),C.SetTrackEncodedProperties(!0),B.method===sI.SEQUENTIAL||W||F)C.SetEncodingMethod(F5.MESH_SEQUENTIAL_ENCODING);else C.SetEncodingMethod(F5.MESH_EDGEBREAKER_ENCODING);let U=C.EncodeToDracoBuffer(!(W||F),G);if(U<=0)throw new Q3("Error applying Draco compression.");let $=new Uint8Array(U);for(let I=0;I65534&&fA.getComponentSize(U.componentType)<=2)U.componentType=fA.ComponentType.UNSIGNED_INT;else if(Z.numVertices>254&&fA.getComponentSize(U.componentType)<=1)U.componentType=fA.ComponentType.UNSIGNED_SHORT;for(let E of X.listSemantics()){let K=X.getAttribute(E);if(Z.attributeIDs[E]===void 0)continue;let I=A.createAccessorDef(K);I.count=Z.numVertices,A.accessorIndexMap.set(K,F.length),F.push(I)}let $=X.getAttribute("POSITION").getBuffer()||this.document.getRoot().listBuffers()[0];if(!A.otherBufferViews.has($))A.otherBufferViews.set($,[]);A.otherBufferViews.get($).push(Z.data)}return B.debug(`[${S0}] Compressed ${Y.size} primitives.`),A.extensionData[S0]={primitiveHashMap:Y,primitiveEncodingMap:J},this}write(A){let Q=A.extensionData[S0];for(let B of this.document.getRoot().listMeshes()){let Y=A.jsonDoc.json.meshes[A.meshIndexMap.get(B)];for(let J=0;JY!==S0),B.extensionsRequired=(B.extensionsRequired||[]).filter((Y)=>Y!==S0)}return this}}aI.EXTENSION_NAME=S0;aI.EncoderMethod=sI;function NdQ(A){let Q=A.getLogger(),B=new Set,Y=new Set,J=0,C=0;for(let U of A.getRoot().listMeshes())for(let $ of U.listPrimitives())if(!$.getIndices())Y.add($),J++;else if($.getMode()!==q0.Mode.TRIANGLES)Y.add($),C++;else B.add($);if(J>0)Q.warn(`[${S0}] Skipping Draco compression of ${J} non-indexed primitives.`);if(C>0)Q.warn(`[${S0}] Skipping Draco compression of ${C} non-TRIANGLES primitives.`);let X=A.getRoot().listAccessors(),G=new Map;for(let U=0;UE.propertyType));if($.size!==2||!$.has(YA.PRIMITIVE)||!$.has(YA.ROOT))throw Error(`[${S0}] Compressed accessors must only be used as indices or vertex attributes.`)}for(let U of Array.from(B)){let $=Z.get(U),E=U.getIndices();if(W.get(E)!==$||U.listAttributes().some((K)=>W.get(K)!==$))throw Error(`[${S0}] Draco primitives must share all, or no, accessors.`)}for(let U of Array.from(Y)){let $=U.getIndices();if(W.has($)||U.listAttributes().some((E)=>W.has(E)))throw Error(`[${S0}] Accessor cannot be shared by compressed and uncompressed primitives.`)}return Z}function A9A(A,Q){let B=[],Y=A.getIndices();B.push(Q.get(Y));for(let J of A.listAttributes())B.push(Q.get(J));return B.sort().join("|")}class r4 extends oB{init(){this.extensionName=Z5,this.propertyType="Light",this.parentTypes=[YA.NODE]}getDefaults(){return Object.assign(super.getDefaults(),{color:[1,1,1],intensity:1,type:r4.Type.POINT,range:null,innerConeAngle:0,outerConeAngle:Math.PI/4})}getColor(){return this.get("color")}setColor(A){return this.set("color",A)}getIntensity(){return this.get("intensity")}setIntensity(A){return this.set("intensity",A)}getType(){return this.get("type")}setType(A){return this.set("type",A)}getRange(){return this.get("range")}setRange(A){return this.set("range",A)}getInnerConeAngle(){return this.get("innerConeAngle")}setInnerConeAngle(A){return this.set("innerConeAngle",A)}getOuterConeAngle(){return this.get("outerConeAngle")}setOuterConeAngle(A){return this.set("outerConeAngle",A)}}r4.EXTENSION_NAME=Z5;r4.Type={POINT:"point",SPOT:"spot",DIRECTIONAL:"directional"};class jg extends tB{constructor(...A){super(...A);this.extensionName=Z5}createLight(A=""){return new r4(this.document.getGraph(),A)}read(A){let Q=A.jsonDoc;if(!Q.json.extensions||!Q.json.extensions[Z5])return this;let J=(Q.json.extensions[Z5].lights||[]).map((C)=>{var X,G;let W=this.createLight().setName(C.name||"").setType(C.type);if(C.color!==void 0)W.setColor(C.color);if(C.intensity!==void 0)W.setIntensity(C.intensity);if(C.range!==void 0)W.setRange(C.range);if(((X=C.spot)==null?void 0:X.innerConeAngle)!==void 0)W.setInnerConeAngle(C.spot.innerConeAngle);if(((G=C.spot)==null?void 0:G.outerConeAngle)!==void 0)W.setOuterConeAngle(C.spot.outerConeAngle);return W});return Q.json.nodes.forEach((C,X)=>{if(!C.extensions||!C.extensions[Z5])return;let G=C.extensions[Z5];A.nodes[X].setExtension(Z5,J[G.light])}),this}write(A){let Q=A.jsonDoc;if(this.properties.size===0)return this;let B=[],Y=new Map;for(let J of this.properties){let C=J,X={type:C.getType()};if(!kQ.eq(C.getColor(),[1,1,1]))X.color=C.getColor();if(C.getIntensity()!==1)X.intensity=C.getIntensity();if(C.getRange()!=null)X.range=C.getRange();if(C.getName())X.name=C.getName();if(C.getType()===r4.Type.SPOT)X.spot={innerConeAngle:C.getInnerConeAngle(),outerConeAngle:C.getOuterConeAngle()};B.push(X),Y.set(C,B.length-1)}return this.document.getRoot().listNodes().forEach((J)=>{let C=J.getExtension(Z5);if(C){let X=A.nodeIndexMap.get(J),G=Q.json.nodes[X];G.extensions=G.extensions||{},G.extensions[Z5]={light:Y.get(C)}}}),Q.json.extensions=Q.json.extensions||{},Q.json.extensions[Z5]={lights:B},this}}jg.EXTENSION_NAME=Z5;var{R:LdQ,G:qdQ,B:MdQ}=k9;class Og extends oB{init(){this.extensionName=G6,this.propertyType="Anisotropy",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{anisotropyStrength:0,anisotropyRotation:0,anisotropyTexture:null,anisotropyTextureInfo:new gB(this.graph,"anisotropyTextureInfo")})}getAnisotropyStrength(){return this.get("anisotropyStrength")}setAnisotropyStrength(A){return this.set("anisotropyStrength",A)}getAnisotropyRotation(){return this.get("anisotropyRotation")}setAnisotropyRotation(A){return this.set("anisotropyRotation",A)}getAnisotropyTexture(){return this.getRef("anisotropyTexture")}getAnisotropyTextureInfo(){return this.getRef("anisotropyTexture")?this.getRef("anisotropyTextureInfo"):null}setAnisotropyTexture(A){return this.setRef("anisotropyTexture",A,{channels:LdQ|qdQ|MdQ})}}Og.EXTENSION_NAME=G6;class Pg extends tB{constructor(...A){super(...A);this.extensionName=G6,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createAnisotropy(){return new Og(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[G6]){let X=this.createAnisotropy();A.materials[C].setExtension(G6,X);let G=J.extensions[G6];if(G.anisotropyStrength!==void 0)X.setAnisotropyStrength(G.anisotropyStrength);if(G.anisotropyRotation!==void 0)X.setAnisotropyRotation(G.anisotropyRotation);if(G.anisotropyTexture!==void 0){let W=G.anisotropyTexture,F=A.textures[Y[W.index].source];X.setAnisotropyTexture(F),A.setTextureInfo(X.getAnisotropyTextureInfo(),W)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(G6);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[G6]={};if(Y.getAnisotropyStrength()>0)X.anisotropyStrength=Y.getAnisotropyStrength();if(Y.getAnisotropyRotation()!==0)X.anisotropyRotation=Y.getAnisotropyRotation();if(Y.getAnisotropyTexture()){let G=Y.getAnisotropyTexture(),W=Y.getAnisotropyTextureInfo();X.anisotropyTexture=A.createTextureInfoDef(G,W)}}}),this}}Pg.EXTENSION_NAME=G6;var{R:Q9A,G:B9A,B:zdQ}=k9;class Tg extends oB{init(){this.extensionName=W6,this.propertyType="Clearcoat",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{clearcoatFactor:0,clearcoatTexture:null,clearcoatTextureInfo:new gB(this.graph,"clearcoatTextureInfo"),clearcoatRoughnessFactor:0,clearcoatRoughnessTexture:null,clearcoatRoughnessTextureInfo:new gB(this.graph,"clearcoatRoughnessTextureInfo"),clearcoatNormalScale:1,clearcoatNormalTexture:null,clearcoatNormalTextureInfo:new gB(this.graph,"clearcoatNormalTextureInfo")})}getClearcoatFactor(){return this.get("clearcoatFactor")}setClearcoatFactor(A){return this.set("clearcoatFactor",A)}getClearcoatTexture(){return this.getRef("clearcoatTexture")}getClearcoatTextureInfo(){return this.getRef("clearcoatTexture")?this.getRef("clearcoatTextureInfo"):null}setClearcoatTexture(A){return this.setRef("clearcoatTexture",A,{channels:Q9A})}getClearcoatRoughnessFactor(){return this.get("clearcoatRoughnessFactor")}setClearcoatRoughnessFactor(A){return this.set("clearcoatRoughnessFactor",A)}getClearcoatRoughnessTexture(){return this.getRef("clearcoatRoughnessTexture")}getClearcoatRoughnessTextureInfo(){return this.getRef("clearcoatRoughnessTexture")?this.getRef("clearcoatRoughnessTextureInfo"):null}setClearcoatRoughnessTexture(A){return this.setRef("clearcoatRoughnessTexture",A,{channels:B9A})}getClearcoatNormalScale(){return this.get("clearcoatNormalScale")}setClearcoatNormalScale(A){return this.set("clearcoatNormalScale",A)}getClearcoatNormalTexture(){return this.getRef("clearcoatNormalTexture")}getClearcoatNormalTextureInfo(){return this.getRef("clearcoatNormalTexture")?this.getRef("clearcoatNormalTextureInfo"):null}setClearcoatNormalTexture(A){return this.setRef("clearcoatNormalTexture",A,{channels:Q9A|B9A|zdQ})}}Tg.EXTENSION_NAME=W6;class Sg extends tB{constructor(...A){super(...A);this.extensionName=W6,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createClearcoat(){return new Tg(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[W6]){let X=this.createClearcoat();A.materials[C].setExtension(W6,X);let G=J.extensions[W6];if(G.clearcoatFactor!==void 0)X.setClearcoatFactor(G.clearcoatFactor);if(G.clearcoatRoughnessFactor!==void 0)X.setClearcoatRoughnessFactor(G.clearcoatRoughnessFactor);if(G.clearcoatTexture!==void 0){let W=G.clearcoatTexture,F=A.textures[Y[W.index].source];X.setClearcoatTexture(F),A.setTextureInfo(X.getClearcoatTextureInfo(),W)}if(G.clearcoatRoughnessTexture!==void 0){let W=G.clearcoatRoughnessTexture,F=A.textures[Y[W.index].source];X.setClearcoatRoughnessTexture(F),A.setTextureInfo(X.getClearcoatRoughnessTextureInfo(),W)}if(G.clearcoatNormalTexture!==void 0){let W=G.clearcoatNormalTexture,F=A.textures[Y[W.index].source];if(X.setClearcoatNormalTexture(F),A.setTextureInfo(X.getClearcoatNormalTextureInfo(),W),W.scale!==void 0)X.setClearcoatNormalScale(W.scale)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(W6);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[W6]={clearcoatFactor:Y.getClearcoatFactor(),clearcoatRoughnessFactor:Y.getClearcoatRoughnessFactor()};if(Y.getClearcoatTexture()){let G=Y.getClearcoatTexture(),W=Y.getClearcoatTextureInfo();X.clearcoatTexture=A.createTextureInfoDef(G,W)}if(Y.getClearcoatRoughnessTexture()){let G=Y.getClearcoatRoughnessTexture(),W=Y.getClearcoatRoughnessTextureInfo();X.clearcoatRoughnessTexture=A.createTextureInfoDef(G,W)}if(Y.getClearcoatNormalTexture()){let G=Y.getClearcoatNormalTexture(),W=Y.getClearcoatNormalTextureInfo();if(X.clearcoatNormalTexture=A.createTextureInfoDef(G,W),Y.getClearcoatNormalScale()!==1)X.clearcoatNormalTexture.scale=Y.getClearcoatNormalScale()}}}),this}}Sg.EXTENSION_NAME=W6;var{R:RdQ,G:wdQ,B:jdQ,A:OdQ}=k9;class kg extends oB{init(){this.extensionName=F6,this.propertyType="DiffuseTransmission",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{diffuseTransmissionFactor:0,diffuseTransmissionTexture:null,diffuseTransmissionTextureInfo:new gB(this.graph,"diffuseTransmissionTextureInfo"),diffuseTransmissionColorFactor:[1,1,1],diffuseTransmissionColorTexture:null,diffuseTransmissionColorTextureInfo:new gB(this.graph,"diffuseTransmissionColorTextureInfo")})}getDiffuseTransmissionFactor(){return this.get("diffuseTransmissionFactor")}setDiffuseTransmissionFactor(A){return this.set("diffuseTransmissionFactor",A)}getDiffuseTransmissionTexture(){return this.getRef("diffuseTransmissionTexture")}getDiffuseTransmissionTextureInfo(){return this.getRef("diffuseTransmissionTexture")?this.getRef("diffuseTransmissionTextureInfo"):null}setDiffuseTransmissionTexture(A){return this.setRef("diffuseTransmissionTexture",A,{channels:OdQ})}getDiffuseTransmissionColorFactor(){return this.get("diffuseTransmissionColorFactor")}setDiffuseTransmissionColorFactor(A){return this.set("diffuseTransmissionColorFactor",A)}getDiffuseTransmissionColorTexture(){return this.getRef("diffuseTransmissionColorTexture")}getDiffuseTransmissionColorTextureInfo(){return this.getRef("diffuseTransmissionColorTexture")?this.getRef("diffuseTransmissionColorTextureInfo"):null}setDiffuseTransmissionColorTexture(A){return this.setRef("diffuseTransmissionColorTexture",A,{channels:RdQ|wdQ|jdQ})}}kg.EXTENSION_NAME=F6;class _g extends tB{constructor(...A){super(...A);this.extensionName=F6}createDiffuseTransmission(){return new kg(this.document.getGraph())}read(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[F6]){let X=this.createDiffuseTransmission();A.materials[C].setExtension(F6,X);let G=J.extensions[F6];if(G.diffuseTransmissionFactor!==void 0)X.setDiffuseTransmissionFactor(G.diffuseTransmissionFactor);if(G.diffuseTransmissionColorFactor!==void 0)X.setDiffuseTransmissionColorFactor(G.diffuseTransmissionColorFactor);if(G.diffuseTransmissionTexture!==void 0){let W=G.diffuseTransmissionTexture,F=A.textures[Y[W.index].source];X.setDiffuseTransmissionTexture(F),A.setTextureInfo(X.getDiffuseTransmissionTextureInfo(),W)}if(G.diffuseTransmissionColorTexture!==void 0){let W=G.diffuseTransmissionColorTexture,F=A.textures[Y[W.index].source];X.setDiffuseTransmissionColorTexture(F),A.setTextureInfo(X.getDiffuseTransmissionColorTextureInfo(),W)}}}),this}write(A){let Q=A.jsonDoc;for(let B of this.document.getRoot().listMaterials()){let Y=B.getExtension(F6);if(!Y)continue;let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[F6]={diffuseTransmissionFactor:Y.getDiffuseTransmissionFactor(),diffuseTransmissionColorFactor:Y.getDiffuseTransmissionColorFactor()};if(Y.getDiffuseTransmissionTexture()){let G=Y.getDiffuseTransmissionTexture(),W=Y.getDiffuseTransmissionTextureInfo();X.diffuseTransmissionTexture=A.createTextureInfoDef(G,W)}if(Y.getDiffuseTransmissionColorTexture()){let G=Y.getDiffuseTransmissionColorTexture(),W=Y.getDiffuseTransmissionColorTextureInfo();X.diffuseTransmissionColorTexture=A.createTextureInfoDef(G,W)}}return this}}_g.EXTENSION_NAME=F6;class vg extends oB{init(){this.extensionName=Z6,this.propertyType="Dispersion",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{dispersion:0})}getDispersion(){return this.get("dispersion")}setDispersion(A){return this.set("dispersion",A)}}vg.EXTENSION_NAME=Z6;class yg extends tB{constructor(...A){super(...A);this.extensionName=Z6,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createDispersion(){return new vg(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){return(A.jsonDoc.json.materials||[]).forEach((Y,J)=>{if(Y.extensions&&Y.extensions[Z6]){let C=this.createDispersion();A.materials[J].setExtension(Z6,C);let X=Y.extensions[Z6];if(X.dispersion!==void 0)C.setDispersion(X.dispersion)}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(Z6);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{},C.extensions[Z6]={dispersion:Y.getDispersion()}}}),this}}yg.EXTENSION_NAME=Z6;class gg extends oB{init(){this.extensionName=$6,this.propertyType="EmissiveStrength",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{emissiveStrength:1})}getEmissiveStrength(){return this.get("emissiveStrength")}setEmissiveStrength(A){return this.set("emissiveStrength",A)}}gg.EXTENSION_NAME=$6;class oI extends tB{constructor(...A){super(...A);this.extensionName=$6,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createEmissiveStrength(){return new gg(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){return(A.jsonDoc.json.materials||[]).forEach((Y,J)=>{if(Y.extensions&&Y.extensions[$6]){let C=this.createEmissiveStrength();A.materials[J].setExtension($6,C);let X=Y.extensions[$6];if(X.emissiveStrength!==void 0)C.setEmissiveStrength(X.emissiveStrength)}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension($6);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{},C.extensions[$6]={emissiveStrength:Y.getEmissiveStrength()}}}),this}}oI.EXTENSION_NAME=$6;class hg extends oB{init(){this.extensionName=U6,this.propertyType="IOR",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{ior:1.5})}getIOR(){return this.get("ior")}setIOR(A){return this.set("ior",A)}}hg.EXTENSION_NAME=U6;class X3 extends tB{constructor(...A){super(...A);this.extensionName=U6,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createIOR(){return new hg(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){return(A.jsonDoc.json.materials||[]).forEach((Y,J)=>{if(Y.extensions&&Y.extensions[U6]){let C=this.createIOR();A.materials[J].setExtension(U6,C);let X=Y.extensions[U6];if(X.ior!==void 0)C.setIOR(X.ior)}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(U6);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{},C.extensions[U6]={ior:Y.getIOR()}}}),this}}X3.EXTENSION_NAME=U6;var{R:PdQ,G:TdQ}=k9;class xg extends oB{init(){this.extensionName=E6,this.propertyType="Iridescence",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{iridescenceFactor:0,iridescenceTexture:null,iridescenceTextureInfo:new gB(this.graph,"iridescenceTextureInfo"),iridescenceIOR:1.3,iridescenceThicknessMinimum:100,iridescenceThicknessMaximum:400,iridescenceThicknessTexture:null,iridescenceThicknessTextureInfo:new gB(this.graph,"iridescenceThicknessTextureInfo")})}getIridescenceFactor(){return this.get("iridescenceFactor")}setIridescenceFactor(A){return this.set("iridescenceFactor",A)}getIridescenceTexture(){return this.getRef("iridescenceTexture")}getIridescenceTextureInfo(){return this.getRef("iridescenceTexture")?this.getRef("iridescenceTextureInfo"):null}setIridescenceTexture(A){return this.setRef("iridescenceTexture",A,{channels:PdQ})}getIridescenceIOR(){return this.get("iridescenceIOR")}setIridescenceIOR(A){return this.set("iridescenceIOR",A)}getIridescenceThicknessMinimum(){return this.get("iridescenceThicknessMinimum")}setIridescenceThicknessMinimum(A){return this.set("iridescenceThicknessMinimum",A)}getIridescenceThicknessMaximum(){return this.get("iridescenceThicknessMaximum")}setIridescenceThicknessMaximum(A){return this.set("iridescenceThicknessMaximum",A)}getIridescenceThicknessTexture(){return this.getRef("iridescenceThicknessTexture")}getIridescenceThicknessTextureInfo(){return this.getRef("iridescenceThicknessTexture")?this.getRef("iridescenceThicknessTextureInfo"):null}setIridescenceThicknessTexture(A){return this.setRef("iridescenceThicknessTexture",A,{channels:TdQ})}}xg.EXTENSION_NAME=E6;class fg extends tB{constructor(...A){super(...A);this.extensionName=E6,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createIridescence(){return new xg(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[E6]){let X=this.createIridescence();A.materials[C].setExtension(E6,X);let G=J.extensions[E6];if(G.iridescenceFactor!==void 0)X.setIridescenceFactor(G.iridescenceFactor);if(G.iridescenceIor!==void 0)X.setIridescenceIOR(G.iridescenceIor);if(G.iridescenceThicknessMinimum!==void 0)X.setIridescenceThicknessMinimum(G.iridescenceThicknessMinimum);if(G.iridescenceThicknessMaximum!==void 0)X.setIridescenceThicknessMaximum(G.iridescenceThicknessMaximum);if(G.iridescenceTexture!==void 0){let W=G.iridescenceTexture,F=A.textures[Y[W.index].source];X.setIridescenceTexture(F),A.setTextureInfo(X.getIridescenceTextureInfo(),W)}if(G.iridescenceThicknessTexture!==void 0){let W=G.iridescenceThicknessTexture,F=A.textures[Y[W.index].source];X.setIridescenceThicknessTexture(F),A.setTextureInfo(X.getIridescenceThicknessTextureInfo(),W)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(E6);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[E6]={};if(Y.getIridescenceFactor()>0)X.iridescenceFactor=Y.getIridescenceFactor();if(Y.getIridescenceIOR()!==1.3)X.iridescenceIor=Y.getIridescenceIOR();if(Y.getIridescenceThicknessMinimum()!==100)X.iridescenceThicknessMinimum=Y.getIridescenceThicknessMinimum();if(Y.getIridescenceThicknessMaximum()!==400)X.iridescenceThicknessMaximum=Y.getIridescenceThicknessMaximum();if(Y.getIridescenceTexture()){let G=Y.getIridescenceTexture(),W=Y.getIridescenceTextureInfo();X.iridescenceTexture=A.createTextureInfoDef(G,W)}if(Y.getIridescenceThicknessTexture()){let G=Y.getIridescenceThicknessTexture(),W=Y.getIridescenceThicknessTextureInfo();X.iridescenceThicknessTexture=A.createTextureInfoDef(G,W)}}}),this}}fg.EXTENSION_NAME=E6;var{R:Y9A,G:J9A,B:C9A,A:X9A}=k9;class bg extends oB{init(){this.extensionName=K6,this.propertyType="PBRSpecularGlossiness",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{diffuseFactor:[1,1,1,1],diffuseTexture:null,diffuseTextureInfo:new gB(this.graph,"diffuseTextureInfo"),specularFactor:[1,1,1],glossinessFactor:1,specularGlossinessTexture:null,specularGlossinessTextureInfo:new gB(this.graph,"specularGlossinessTextureInfo")})}getDiffuseFactor(){return this.get("diffuseFactor")}setDiffuseFactor(A){return this.set("diffuseFactor",A)}getDiffuseTexture(){return this.getRef("diffuseTexture")}getDiffuseTextureInfo(){return this.getRef("diffuseTexture")?this.getRef("diffuseTextureInfo"):null}setDiffuseTexture(A){return this.setRef("diffuseTexture",A,{channels:Y9A|J9A|C9A|X9A,isColor:!0})}getSpecularFactor(){return this.get("specularFactor")}setSpecularFactor(A){return this.set("specularFactor",A)}getGlossinessFactor(){return this.get("glossinessFactor")}setGlossinessFactor(A){return this.set("glossinessFactor",A)}getSpecularGlossinessTexture(){return this.getRef("specularGlossinessTexture")}getSpecularGlossinessTextureInfo(){return this.getRef("specularGlossinessTexture")?this.getRef("specularGlossinessTextureInfo"):null}setSpecularGlossinessTexture(A){return this.setRef("specularGlossinessTexture",A,{channels:Y9A|J9A|C9A|X9A})}}bg.EXTENSION_NAME=K6;class G3 extends tB{constructor(...A){super(...A);this.extensionName=K6,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createPBRSpecularGlossiness(){return new bg(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[K6]){let X=this.createPBRSpecularGlossiness();A.materials[C].setExtension(K6,X);let G=J.extensions[K6];if(G.diffuseFactor!==void 0)X.setDiffuseFactor(G.diffuseFactor);if(G.specularFactor!==void 0)X.setSpecularFactor(G.specularFactor);if(G.glossinessFactor!==void 0)X.setGlossinessFactor(G.glossinessFactor);if(G.diffuseTexture!==void 0){let W=G.diffuseTexture,F=A.textures[Y[W.index].source];X.setDiffuseTexture(F),A.setTextureInfo(X.getDiffuseTextureInfo(),W)}if(G.specularGlossinessTexture!==void 0){let W=G.specularGlossinessTexture,F=A.textures[Y[W.index].source];X.setSpecularGlossinessTexture(F),A.setTextureInfo(X.getSpecularGlossinessTextureInfo(),W)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(K6);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[K6]={diffuseFactor:Y.getDiffuseFactor(),specularFactor:Y.getSpecularFactor(),glossinessFactor:Y.getGlossinessFactor()};if(Y.getDiffuseTexture()){let G=Y.getDiffuseTexture(),W=Y.getDiffuseTextureInfo();X.diffuseTexture=A.createTextureInfoDef(G,W)}if(Y.getSpecularGlossinessTexture()){let G=Y.getSpecularGlossinessTexture(),W=Y.getSpecularGlossinessTextureInfo();X.specularGlossinessTexture=A.createTextureInfoDef(G,W)}}}),this}}G3.EXTENSION_NAME=K6;var{R:SdQ,G:kdQ,B:_dQ,A:vdQ}=k9;class mg extends oB{init(){this.extensionName=V6,this.propertyType="Sheen",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{sheenColorFactor:[0,0,0],sheenColorTexture:null,sheenColorTextureInfo:new gB(this.graph,"sheenColorTextureInfo"),sheenRoughnessFactor:0,sheenRoughnessTexture:null,sheenRoughnessTextureInfo:new gB(this.graph,"sheenRoughnessTextureInfo")})}getSheenColorFactor(){return this.get("sheenColorFactor")}setSheenColorFactor(A){return this.set("sheenColorFactor",A)}getSheenColorTexture(){return this.getRef("sheenColorTexture")}getSheenColorTextureInfo(){return this.getRef("sheenColorTexture")?this.getRef("sheenColorTextureInfo"):null}setSheenColorTexture(A){return this.setRef("sheenColorTexture",A,{channels:SdQ|kdQ|_dQ,isColor:!0})}getSheenRoughnessFactor(){return this.get("sheenRoughnessFactor")}setSheenRoughnessFactor(A){return this.set("sheenRoughnessFactor",A)}getSheenRoughnessTexture(){return this.getRef("sheenRoughnessTexture")}getSheenRoughnessTextureInfo(){return this.getRef("sheenRoughnessTexture")?this.getRef("sheenRoughnessTextureInfo"):null}setSheenRoughnessTexture(A){return this.setRef("sheenRoughnessTexture",A,{channels:vdQ})}}mg.EXTENSION_NAME=V6;class ug extends tB{constructor(...A){super(...A);this.extensionName=V6,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createSheen(){return new mg(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[V6]){let X=this.createSheen();A.materials[C].setExtension(V6,X);let G=J.extensions[V6];if(G.sheenColorFactor!==void 0)X.setSheenColorFactor(G.sheenColorFactor);if(G.sheenRoughnessFactor!==void 0)X.setSheenRoughnessFactor(G.sheenRoughnessFactor);if(G.sheenColorTexture!==void 0){let W=G.sheenColorTexture,F=A.textures[Y[W.index].source];X.setSheenColorTexture(F),A.setTextureInfo(X.getSheenColorTextureInfo(),W)}if(G.sheenRoughnessTexture!==void 0){let W=G.sheenRoughnessTexture,F=A.textures[Y[W.index].source];X.setSheenRoughnessTexture(F),A.setTextureInfo(X.getSheenRoughnessTextureInfo(),W)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(V6);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[V6]={sheenColorFactor:Y.getSheenColorFactor(),sheenRoughnessFactor:Y.getSheenRoughnessFactor()};if(Y.getSheenColorTexture()){let G=Y.getSheenColorTexture(),W=Y.getSheenColorTextureInfo();X.sheenColorTexture=A.createTextureInfoDef(G,W)}if(Y.getSheenRoughnessTexture()){let G=Y.getSheenRoughnessTexture(),W=Y.getSheenRoughnessTextureInfo();X.sheenRoughnessTexture=A.createTextureInfoDef(G,W)}}}),this}}ug.EXTENSION_NAME=V6;var{R:ydQ,G:gdQ,B:hdQ,A:xdQ}=k9;class dg extends oB{init(){this.extensionName=I6,this.propertyType="Specular",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{specularFactor:1,specularTexture:null,specularTextureInfo:new gB(this.graph,"specularTextureInfo"),specularColorFactor:[1,1,1],specularColorTexture:null,specularColorTextureInfo:new gB(this.graph,"specularColorTextureInfo")})}getSpecularFactor(){return this.get("specularFactor")}setSpecularFactor(A){return this.set("specularFactor",A)}getSpecularColorFactor(){return this.get("specularColorFactor")}setSpecularColorFactor(A){return this.set("specularColorFactor",A)}getSpecularTexture(){return this.getRef("specularTexture")}getSpecularTextureInfo(){return this.getRef("specularTexture")?this.getRef("specularTextureInfo"):null}setSpecularTexture(A){return this.setRef("specularTexture",A,{channels:xdQ})}getSpecularColorTexture(){return this.getRef("specularColorTexture")}getSpecularColorTextureInfo(){return this.getRef("specularColorTexture")?this.getRef("specularColorTextureInfo"):null}setSpecularColorTexture(A){return this.setRef("specularColorTexture",A,{channels:ydQ|gdQ|hdQ,isColor:!0})}}dg.EXTENSION_NAME=I6;class W3 extends tB{constructor(...A){super(...A);this.extensionName=I6,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createSpecular(){return new dg(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[I6]){let X=this.createSpecular();A.materials[C].setExtension(I6,X);let G=J.extensions[I6];if(G.specularFactor!==void 0)X.setSpecularFactor(G.specularFactor);if(G.specularColorFactor!==void 0)X.setSpecularColorFactor(G.specularColorFactor);if(G.specularTexture!==void 0){let W=G.specularTexture,F=A.textures[Y[W.index].source];X.setSpecularTexture(F),A.setTextureInfo(X.getSpecularTextureInfo(),W)}if(G.specularColorTexture!==void 0){let W=G.specularColorTexture,F=A.textures[Y[W.index].source];X.setSpecularColorTexture(F),A.setTextureInfo(X.getSpecularColorTextureInfo(),W)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(I6);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[I6]={};if(Y.getSpecularFactor()!==1)X.specularFactor=Y.getSpecularFactor();if(!kQ.eq(Y.getSpecularColorFactor(),[1,1,1]))X.specularColorFactor=Y.getSpecularColorFactor();if(Y.getSpecularTexture()){let G=Y.getSpecularTexture(),W=Y.getSpecularTextureInfo();X.specularTexture=A.createTextureInfoDef(G,W)}if(Y.getSpecularColorTexture()){let G=Y.getSpecularColorTexture(),W=Y.getSpecularColorTextureInfo();X.specularColorTexture=A.createTextureInfoDef(G,W)}}}),this}}W3.EXTENSION_NAME=I6;var{R:fdQ}=k9;class cg extends oB{init(){this.extensionName=H6,this.propertyType="Transmission",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{transmissionFactor:0,transmissionTexture:null,transmissionTextureInfo:new gB(this.graph,"transmissionTextureInfo")})}getTransmissionFactor(){return this.get("transmissionFactor")}setTransmissionFactor(A){return this.set("transmissionFactor",A)}getTransmissionTexture(){return this.getRef("transmissionTexture")}getTransmissionTextureInfo(){return this.getRef("transmissionTexture")?this.getRef("transmissionTextureInfo"):null}setTransmissionTexture(A){return this.setRef("transmissionTexture",A,{channels:fdQ})}}cg.EXTENSION_NAME=H6;class lg extends tB{constructor(...A){super(...A);this.extensionName=H6,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createTransmission(){return new cg(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[H6]){let X=this.createTransmission();A.materials[C].setExtension(H6,X);let G=J.extensions[H6];if(G.transmissionFactor!==void 0)X.setTransmissionFactor(G.transmissionFactor);if(G.transmissionTexture!==void 0){let W=G.transmissionTexture,F=A.textures[Y[W.index].source];X.setTransmissionTexture(F),A.setTextureInfo(X.getTransmissionTextureInfo(),W)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(H6);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[H6]={transmissionFactor:Y.getTransmissionFactor()};if(Y.getTransmissionTexture()){let G=Y.getTransmissionTexture(),W=Y.getTransmissionTextureInfo();X.transmissionTexture=A.createTextureInfoDef(G,W)}}}),this}}lg.EXTENSION_NAME=H6;class pg extends oB{init(){this.extensionName=X7,this.propertyType="Unlit",this.parentTypes=[YA.MATERIAL]}}pg.EXTENSION_NAME=X7;class F3 extends tB{constructor(...A){super(...A);this.extensionName=X7,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createUnlit(){return new pg(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){return(A.jsonDoc.json.materials||[]).forEach((B,Y)=>{if(B.extensions&&B.extensions[X7])A.materials[Y].setExtension(X7,this.createUnlit())}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{if(B.getExtension(X7)){let Y=A.materialIndexMap.get(B),J=Q.json.materials[Y];J.extensions=J.extensions||{},J.extensions[X7]={}}}),this}}F3.EXTENSION_NAME=X7;class ig extends oB{init(){this.extensionName=MJ,this.propertyType="Mapping",this.parentTypes=["MappingList"]}getDefaults(){return Object.assign(super.getDefaults(),{material:null,variants:new xB})}getMaterial(){return this.getRef("material")}setMaterial(A){return this.setRef("material",A)}addVariant(A){return this.addRef("variants",A)}removeVariant(A){return this.removeRef("variants",A)}listVariants(){return this.listRefs("variants")}}ig.EXTENSION_NAME=MJ;class ng extends oB{init(){this.extensionName=MJ,this.propertyType="MappingList",this.parentTypes=[YA.PRIMITIVE]}getDefaults(){return Object.assign(super.getDefaults(),{mappings:new xB})}addMapping(A){return this.addRef("mappings",A)}removeMapping(A){return this.removeRef("mappings",A)}listMappings(){return this.listRefs("mappings")}}ng.EXTENSION_NAME=MJ;class B3 extends oB{init(){this.extensionName=MJ,this.propertyType="Variant",this.parentTypes=["MappingList"]}}B3.EXTENSION_NAME=MJ;class sg extends tB{constructor(...A){super(...A);this.extensionName=MJ}createMappingList(){return new ng(this.document.getGraph())}createVariant(A=""){return new B3(this.document.getGraph(),A)}createMapping(){return new ig(this.document.getGraph())}listVariants(){return Array.from(this.properties).filter((A)=>A instanceof B3)}read(A){let Q=A.jsonDoc;if(!Q.json.extensions||!Q.json.extensions[MJ])return this;let J=(Q.json.extensions[MJ].variants||[]).map((X)=>this.createVariant().setName(X.name||""));return(Q.json.meshes||[]).forEach((X,G)=>{let W=A.meshes[G];(X.primitives||[]).forEach((Z,U)=>{if(!Z.extensions||!Z.extensions[MJ])return;let $=this.createMappingList(),E=Z.extensions[MJ];for(let K of E.mappings){let I=this.createMapping();if(K.material!==void 0)I.setMaterial(A.materials[K.material]);for(let V of K.variants||[])I.addVariant(J[V]);$.addMapping(I)}W.listPrimitives()[U].setExtension(MJ,$)})}),this}write(A){let Q=A.jsonDoc,B=this.listVariants();if(!B.length)return this;let Y=[],J=new Map;for(let C of B)J.set(C,Y.length),Y.push(A.createPropertyDef(C));for(let C of this.document.getRoot().listMeshes()){let X=A.meshIndexMap.get(C);C.listPrimitives().forEach((G,W)=>{let F=G.getExtension(MJ);if(!F)return;let Z=A.jsonDoc.json.meshes[X].primitives[W],U=F.listMappings().map(($)=>{let E=A.createPropertyDef($),K=$.getMaterial();if(K)E.material=A.materialIndexMap.get(K);return E.variants=$.listVariants().map((I)=>J.get(I)),E});Z.extensions=Z.extensions||{},Z.extensions[MJ]={mappings:U}})}return Q.json.extensions=Q.json.extensions||{},Q.json.extensions[MJ]={variants:Y},this}}sg.EXTENSION_NAME=MJ;var{G:bdQ}=k9;class rg extends oB{init(){this.extensionName=D6,this.propertyType="Volume",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{thicknessFactor:0,thicknessTexture:null,thicknessTextureInfo:new gB(this.graph,"thicknessTexture"),attenuationDistance:1/0,attenuationColor:[1,1,1]})}getThicknessFactor(){return this.get("thicknessFactor")}setThicknessFactor(A){return this.set("thicknessFactor",A)}getThicknessTexture(){return this.getRef("thicknessTexture")}getThicknessTextureInfo(){return this.getRef("thicknessTexture")?this.getRef("thicknessTextureInfo"):null}setThicknessTexture(A){return this.setRef("thicknessTexture",A,{channels:bdQ})}getAttenuationDistance(){return this.get("attenuationDistance")}setAttenuationDistance(A){return this.set("attenuationDistance",A)}getAttenuationColor(){return this.get("attenuationColor")}setAttenuationColor(A){return this.set("attenuationColor",A)}}rg.EXTENSION_NAME=D6;class ag extends tB{constructor(...A){super(...A);this.extensionName=D6,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createVolume(){return new rg(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[D6]){let X=this.createVolume();A.materials[C].setExtension(D6,X);let G=J.extensions[D6];if(G.thicknessFactor!==void 0)X.setThicknessFactor(G.thicknessFactor);if(G.attenuationDistance!==void 0)X.setAttenuationDistance(G.attenuationDistance);if(G.attenuationColor!==void 0)X.setAttenuationColor(G.attenuationColor);if(G.thicknessTexture!==void 0){let W=G.thicknessTexture,F=A.textures[Y[W.index].source];X.setThicknessTexture(F),A.setTextureInfo(X.getThicknessTextureInfo(),W)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(D6);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[D6]={};if(Y.getThicknessFactor()>0)X.thicknessFactor=Y.getThicknessFactor();if(Number.isFinite(Y.getAttenuationDistance()))X.attenuationDistance=Y.getAttenuationDistance();if(!kQ.eq(Y.getAttenuationColor(),[1,1,1]))X.attenuationColor=Y.getAttenuationColor();if(Y.getThicknessTexture()){let G=Y.getThicknessTexture(),W=Y.getThicknessTextureInfo();X.thicknessTexture=A.createTextureInfoDef(G,W)}}}),this}}ag.EXTENSION_NAME=D6;class tI extends tB{constructor(...A){super(...A);this.extensionName=G9A}read(A){return this}write(A){return this}}tI.EXTENSION_NAME=G9A;class K9A{match(A){return A[0]===171&&A[1]===75&&A[2]===84&&A[3]===88&&A[4]===32&&A[5]===50&&A[6]===48&&A[7]===187&&A[8]===13&&A[9]===10&&A[10]===26&&A[11]===10}getSize(A){let Q=A3(A);return[Q.pixelWidth,Q.pixelHeight]}getChannels(A){let B=A3(A).dataFormatDescriptor[0];if(B.colorModel===nJA)return B.samples.length===2&&(B.samples[1].channelType&15)===15?4:3;else if(B.colorModel===sJA)return(B.samples[0].channelType&15)===3?4:3;throw Error(`Unexpected KTX2 colorModel, "${B.colorModel}".`)}getVRAMByteLength(A){let Q=A3(A),B=this.getChannels(A)>3,Y=0;for(let J=0;J{if(Q.extensions&&Q.extensions[iI]){let B=Q.extensions[iI];Q.source=B.source}}),this}read(A){return this}write(A){let Q=A.jsonDoc;return this.document.getRoot().listTextures().forEach((B)=>{if(B.getMimeType()==="image/ktx2"){let Y=A.imageIndexMap.get(B);Q.json.textures.forEach((J)=>{if(J.source===Y)J.extensions=J.extensions||{},J.extensions[iI]={source:J.source},delete J.source})}}),this}}eI.EXTENSION_NAME=iI;class og extends oB{init(){this.extensionName=N6,this.propertyType="Transform",this.parentTypes=[YA.TEXTURE_INFO]}getDefaults(){return Object.assign(super.getDefaults(),{offset:[0,0],rotation:0,scale:[1,1],texCoord:null})}getOffset(){return this.get("offset")}setOffset(A){return this.set("offset",A)}getRotation(){return this.get("rotation")}setRotation(A){return this.set("rotation",A)}getScale(){return this.get("scale")}setScale(A){return this.set("scale",A)}getTexCoord(){return this.get("texCoord")}setTexCoord(A){return this.set("texCoord",A)}}og.EXTENSION_NAME=N6;class tg extends tB{constructor(...A){super(...A);this.extensionName=N6}createTransform(){return new og(this.document.getGraph())}read(A){for(let[Q,B]of Array.from(A.textureInfos.entries())){if(!B.extensions||!B.extensions[N6])continue;let Y=this.createTransform(),J=B.extensions[N6];if(J.offset!==void 0)Y.setOffset(J.offset);if(J.rotation!==void 0)Y.setRotation(J.rotation);if(J.scale!==void 0)Y.setScale(J.scale);if(J.texCoord!==void 0)Y.setTexCoord(J.texCoord);Q.setExtension(N6,Y)}return this}write(A){let Q=Array.from(A.textureInfoDefMap.entries());for(let[B,Y]of Q){let J=B.getExtension(N6);if(!J)continue;Y.extensions=Y.extensions||{};let C={},X=kQ.eq;if(!X(J.getOffset(),[0,0]))C.offset=J.getOffset();if(J.getRotation()!==0)C.rotation=J.getRotation();if(!X(J.getScale(),[1,1]))C.scale=J.getScale();if(J.getTexCoord()!=null)C.texCoord=J.getTexCoord();Y.extensions[N6]=C}return this}}tg.EXTENSION_NAME=N6;var mdQ=[YA.ROOT,YA.SCENE,YA.NODE,YA.MESH,YA.MATERIAL,YA.TEXTURE,YA.ANIMATION];class eg extends oB{init(){this.extensionName=$5,this.propertyType="Packet",this.parentTypes=mdQ}getDefaults(){return Object.assign(super.getDefaults(),{context:{},properties:{}})}getContext(){return this.get("context")}setContext(A){return this.set("context",L6({},A))}listProperties(){return Object.keys(this.get("properties"))}getProperty(A){let Q=this.get("properties");return A in Q?Q[A]:null}setProperty(A,Q){this._assertContext(A);let B=L6({},this.get("properties"));if(Q)B[A]=Q;else delete B[A];return this.set("properties",B)}toJSONLD(){let A=Mg(this.get("context")),Q=Mg(this.get("properties"));return L6({"@context":A},Q)}fromJSONLD(A){A=Mg(A);let Q=A["@context"];if(Q)this.set("context",Q);return delete A["@context"],this.set("properties",A)}_assertContext(A){if(!(A.split(":")[0]in this.get("context")))throw Error(`${$5}: Missing context for term, "${A}".`)}}eg.EXTENSION_NAME=$5;function Mg(A){return JSON.parse(JSON.stringify(A))}class Ah extends tB{constructor(...A){super(...A);this.extensionName=$5}createPacket(){return new eg(this.document.getGraph())}listPackets(){return Array.from(this.properties)}read(A){var Q;let B=(Q=A.jsonDoc.json.extensions)==null?void 0:Q[$5];if(!B||!B.packets)return this;let Y=A.jsonDoc.json,J=this.document.getRoot(),C=B.packets.map((W)=>this.createPacket().fromJSONLD(W)),X=[[Y.asset],Y.scenes,Y.nodes,Y.meshes,Y.materials,Y.images,Y.animations],G=[[J],J.listScenes(),J.listNodes(),J.listMeshes(),J.listMaterials(),J.listTextures(),J.listAnimations()];for(let W=0;W0)Q.extensions=Q.extensions||{},Q.extensions[$5]={packets:B};return this}}Ah.EXTENSION_NAME=$5;var udQ=[aI,jg,Pg,Sg,_g,yg,oI,X3,fg,G3,W3,ug,lg,F3,sg,ag,tI,eI,tg,Ah],aXY=[Y3,rI,J3,C3,...udQ];var $CA=qA(Qh(),1),UCA=qA(s5A(),1),ynQ=qA(ZCA(),1);async function gnQ(A,Q){if(!(A instanceof Uint8Array))throw Error("[ndarray-pixels] Input must be Uint8Array or Buffer.");let{data:B,info:Y}=await UCA.default(A).ensureAlpha().raw().toBuffer({resolveWithObject:!0});return $CA.default(new Uint8Array(B),[Y.width,Y.height,4],[4,4*Y.width|0,1],0)}async function ECA(A,Q){return gnQ(A)}var hnQ=qA(Qh(),1);function WU(){return WU=Object.assign?Object.assign.bind():function(A){for(var Q=1;QQ?"–":"+",J="%";return Y+(Math.abs(A-Q)/A*100).toFixed(B)+"%"}function h3(A,Q){return`${Th(A)} → ${Th(Q)} (${dnQ(A,Q)})`}function x3(A){let Q=[];for(let B of A.listAttributes())Q.push(B);for(let B of A.listTargets())for(let Y of B.listAttributes())Q.push(Y);return Array.from(new Set(Q))}function cnQ(A,Q,B){A.swap(Q,B);for(let Y of A.listTargets())Y.swap(Q,B)}function vCA(A){let Q=A.getIndices(),B=x3(A);if(A.dispose(),Q&&!Sh(Q))Q.dispose();for(let Y of B)if(!Sh(Y))Y.dispose()}function z6(A,Q){return A.createAccessor(Q.getName()).setArray(Q.getArray()).setType(Q.getType()).setBuffer(Q.getBuffer()).setNormalized(Q.getNormalized()).setSparse(Q.getSparse())}function lnQ(A,Q=A){let B=xh(A,Q);for(let Y=0;YQ.propertyType!==YA.ROOT)}function yCA(A){for(let Q in A)return!1;return!0}function gCA(A){let Q=LJ.fromGraph(A.getGraph()),B=A.getMaterial(),Y=Q.getRoot().listMaterials().indexOf(B),J=inQ[A.getMode()],C=!!A.getIndices(),X=A.listSemantics().sort().map((W)=>{let F=A.getAttribute(W),Z=F.getElementSize(),U=F.getComponentType();return`${W}:${Z}:${U}`}).join("+"),G=A.listTargets().map((W)=>{return W.listSemantics().sort().map((F)=>{let Z=A.getAttribute(F),U=Z.getElementSize(),$=Z.getComponentType();return`${F}:${U}:${$}`}).join("+")}).join("~");return`${Y}|${J}|${C}|${X}|${G}`}function pnQ(A){return Math.pow(2,Math.ceil(Math.log(A)/Math.LN2))}var inQ={[KCA]:KCA,[S3]:S3,[xnQ]:S3,[fnQ]:S3,[k3]:k3,[bnQ]:k3,[mnQ]:k3},XU="center",VCA={pivot:"center"};function hCA(A=VCA){let Q=R6(VCA,A);return iF(XU,(B)=>{let Y=B.getLogger(),J=B.getRoot(),C=J.listAnimations().length>0||J.listSkins().length>0;B.getRoot().listScenes().forEach((X,G)=>{Y.debug(`${XU}: Scene ${G+1} / ${J.listScenes().length}.`);let W;if(typeof Q.pivot==="string"){let Z=dI(X);if(W=[(Z.max[0]-Z.min[0])/2+Z.min[0],(Z.max[1]-Z.min[1])/2+Z.min[1],(Z.max[2]-Z.min[2])/2+Z.min[2]],Q.pivot==="above")W[1]=Z.max[1];if(Q.pivot==="below")W[1]=Z.min[1]}else W=Q.pivot;Y.debug(`${XU}: Pivot "${W.join(", ")}".`);let F=[-1*W[0],-1*W[1],-1*W[2]];if(C){Y.debug(`${XU}: Model contains animation or skin. Adding a wrapper node.`);let Z=B.createNode("Pivot").setTranslation(F);X.listChildren().forEach((U)=>Z.addChild(U)),X.addChild(Z)}else Y.debug(`${XU}: Skipping wrapper, offsetting all root nodes.`),X.listChildren().forEach((Z)=>{let U=Z.getTranslation();Z.setTranslation([U[0]+F[0],U[1]+F[1],U[2]+F[2]])})}),Y.debug(`${XU}: Complete.`)})}function nnQ(A){let Q=new Set,B=A,Y;while(Y=B.getParentNode()){if(Q.has(Y))throw Error("Circular dependency in scene graph.");Q.add(Y),B=Y}return B.listParents().filter((J)=>J instanceof l4)}function snQ(A){let Q=nnQ(A),B=A.getParentNode();if(!B)return A;A.setMatrix(A.getWorldMatrix()),B.removeChild(A);for(let Y of Q)Y.addChild(A);return A}var FU=typeof Float32Array<"u"?Float32Array:Array;if(!Math.hypot)Math.hypot=function(){var A=0,Q=arguments.length;while(Q--)A+=arguments[Q]*arguments[Q];return Math.sqrt(A)};function rnQ(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Q[4],G=Q[5],W=Q[6],F=Q[7],Z=Q[8],U=Q[9],$=Q[10],E=Q[11],K=Q[12],I=Q[13],V=Q[14],H=Q[15],D=B*G-Y*X,L=B*W-J*X,z=B*F-C*X,M=Y*W-J*G,N=Y*F-C*G,q=J*F-C*W,w=Z*I-U*K,P=Z*V-$*K,_=Z*H-E*K,j=U*V-$*I,k=U*H-E*I,T=$*H-E*V,S=D*T-L*k+z*j+M*_-N*P+q*w;if(!S)return null;return S=1/S,A[0]=(G*T-W*k+F*j)*S,A[1]=(J*k-Y*T-C*j)*S,A[2]=(I*q-V*N+H*M)*S,A[3]=($*N-U*q-E*M)*S,A[4]=(W*_-X*T-F*P)*S,A[5]=(B*T-J*_+C*P)*S,A[6]=(V*z-K*q-H*L)*S,A[7]=(Z*q-$*z+E*L)*S,A[8]=(X*k-G*_+F*w)*S,A[9]=(Y*_-B*k-C*w)*S,A[10]=(K*N-I*z+H*D)*S,A[11]=(U*z-Z*N-E*D)*S,A[12]=(G*P-X*j-W*w)*S,A[13]=(B*j-Y*P+J*w)*S,A[14]=(I*L-K*M-V*D)*S,A[15]=(Z*M-U*L+$*D)*S,A}function anQ(A){var Q=A[0],B=A[1],Y=A[2],J=A[3],C=A[4],X=A[5],G=A[6],W=A[7],F=A[8],Z=A[9],U=A[10],$=A[11],E=A[12],K=A[13],I=A[14],V=A[15],H=Q*X-B*C,D=Q*G-Y*C,L=Q*W-J*C,z=B*G-Y*X,M=B*W-J*X,N=Y*W-J*G,q=F*K-Z*E,w=F*I-U*E,P=F*V-$*E,_=Z*I-U*K,j=Z*V-$*K,k=U*V-$*I;return H*k-D*j+L*_+z*P-M*w+N*q}function xCA(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],W=Q[5],F=Q[6],Z=Q[7],U=Q[8],$=Q[9],E=Q[10],K=Q[11],I=Q[12],V=Q[13],H=Q[14],D=Q[15],L=B[0],z=B[1],M=B[2],N=B[3];return A[0]=L*Y+z*G+M*U+N*I,A[1]=L*J+z*W+M*$+N*V,A[2]=L*C+z*F+M*E+N*H,A[3]=L*X+z*Z+M*K+N*D,L=B[4],z=B[5],M=B[6],N=B[7],A[4]=L*Y+z*G+M*U+N*I,A[5]=L*J+z*W+M*$+N*V,A[6]=L*C+z*F+M*E+N*H,A[7]=L*X+z*Z+M*K+N*D,L=B[8],z=B[9],M=B[10],N=B[11],A[8]=L*Y+z*G+M*U+N*I,A[9]=L*J+z*W+M*$+N*V,A[10]=L*C+z*F+M*E+N*H,A[11]=L*X+z*Z+M*K+N*D,L=B[12],z=B[13],M=B[14],N=B[15],A[12]=L*Y+z*G+M*U+N*I,A[13]=L*J+z*W+M*$+N*V,A[14]=L*C+z*F+M*E+N*H,A[15]=L*X+z*Z+M*K+N*D,A}var zJ;(function(A){A.RENDER="render",A.RENDER_CACHED="render-cached",A.UPLOAD="upload",A.UPLOAD_NAIVE="upload-naive",A.DISTINCT="distinct",A.DISTINCT_POSITION="distinct-position",A.UNUSED="unused"})(zJ||(zJ={}));function pF(A,Q){let B=A.getAttribute("POSITION"),Y=A.getIndices();switch(Q){case zJ.RENDER:return Y?Y.getCount():B.getCount();case zJ.RENDER_CACHED:return Y?new Set(Y.getArray()).size:B.getCount();case zJ.UPLOAD_NAIVE:case zJ.UPLOAD:return B.getCount();case zJ.DISTINCT:case zJ.DISTINCT_POSITION:return onQ(Q);case zJ.UNUSED:return Y?B.getCount()-new Set(Y.getArray()).size:0;default:return tnQ(Q)}}function onQ(A){throw Error(`Not implemented: ${A}`)}function tnQ(A){throw Error(`Unexpected value: ${A}`)}var U7=4294967295;class fCA{constructor(A){this.attributes=[],this.u8=void 0,this.u32=void 0;let Q=0;for(let B of x3(A))Q+=this._initAttribute(B);this.u8=new Uint8Array(Q),this.u32=new Uint32Array(this.u8.buffer)}_initAttribute(A){let Q=A.getArray(),B=new Uint8Array(Q.buffer,Q.byteOffset,Q.byteLength),Y=A.getElementSize()*A.getComponentSize(),J=jQ.padNumber(Y);return this.attributes.push({u8:B,byteStride:Y,paddedByteStride:J}),J}hash(A){let Q=0;for(let{u8:B,byteStride:Y,paddedByteStride:J}of this.attributes){for(let C=0;C>>0,X=(X^X>>24)>>>0,X=Math.imul(X,1540483477)>>>0,A=Math.imul(A,1540483477)>>>0,A=(A^X)>>>0}return A}function AsQ(A,Q,B,Y,J=U7){let C=Q-1,G=B.hash(Y)&C;for(let W=0;W<=C;W++){let F=A[G];if(F===J||B.equal(F,Y))return G;G=G+W+1&C}throw Error("Hash table full.")}function UH(A,Q,B){let Y=LJ.fromGraph(A.getGraph());if(!Q||!B)[Q,B]=QsQ(A);let J=A.getIndices(),C=J?J.getArray():null,X=pF(A,zJ.RENDER),G=Y.createAccessor(),W=X,F=xh(W,B);for(let U=0;U0)C=1/Math.sqrt(C);return A[0]=Q[0]*C,A[1]=Q[1]*C,A[2]=Q[2]*C,A}function GsQ(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=B[3]*Y+B[7]*J+B[11]*C+B[15];return X=X||1,A[0]=(B[0]*Y+B[4]*J+B[8]*C+B[12])/X,A[1]=(B[1]*Y+B[5]*J+B[9]*C+B[13])/X,A[2]=(B[2]*Y+B[6]*J+B[10]*C+B[14])/X,A}function WsQ(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2];return A[0]=Y*B[0]+J*B[3]+C*B[6],A[1]=Y*B[1]+J*B[4]+C*B[7],A[2]=Y*B[2]+J*B[5]+C*B[8],A}var FsQ=XsQ;(function(){var A=f3();return function(Q,B,Y,J,C,X){var G,W;if(!B)B=3;if(!Y)Y=0;if(J)W=Math.min(J*B+Y,Q.length);else W=Q.length;for(G=Y;G{let Y=B.getLogger();for(let J of B.getRoot().listMeshes()){for(let C of J.listPrimitives())if(b3(C,Q),pF(C,zJ.RENDER)===0)vCA(C);if(J.listPrimitives().length===0)J.dispose()}Y.debug(`${_h}: Complete.`)})}function b3(A,Q=v3){let B=A.getGraph(),J=LJ.fromGraph(B).getLogger(),C=WU({},v3,Q);if(A.getIndices()&&!C.overwrite)return;if(A.getMode()===q0.Mode.POINTS)return;let X=A.getAttribute("POSITION").getCount(),G=A.getIndices(),W=G==null?void 0:G.getArray(),F=G?G.getCount():X,Z=new fCA(A),U=pnQ(X+X/4),$=new Uint32Array(U).fill(U7),E=new Uint32Array(X).fill(U7),K=0;for(let I=0;IY instanceof cI&&Y!==Q))A=A.clone();for(let Y of A.listTargets())if(Y.listParents().some((C)=>C instanceof q0&&C!==A))A.removeTarget(Y).addTarget(Y.clone());return A}var NCA=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function uCA(A){let Q=A.getMesh(),B=A.getMatrix();if(Q&&!kQ.eq(B,NCA))UsQ(Q,B);for(let Y of A.listChildren()){let J=Y.getMatrix();xCA(J,J,B),Y.setMatrix(J)}return A.setMatrix(NCA)}var{LINES:KsQ,LINE_STRIP:VsQ,LINE_LOOP:IsQ,TRIANGLES:HsQ,TRIANGLE_STRIP:DsQ,TRIANGLE_FAN:NsQ}=q0.Mode;function LsQ(A){let Q=A.getGraph(),B=LJ.fromGraph(Q);if(!A.getIndices())b3(A);let Y=A.getIndices(),J=Y.getArray(),C=_CA(A),G=new J7[Y.getComponentType()](C*2),W=A.getMode();if(W===VsQ)for(let Z=0;ZZ!==F&&Z!==A))A.setIndices(z6(B,Y).setArray(G));else Y.setArray(G)}function dCA(A){let Q=A.getGraph(),B=LJ.fromGraph(Q);if(!A.getIndices())b3(A);let Y=A.getIndices(),J=Y.getArray(),C=_CA(A),G=new J7[Y.getComponentType()](C*3),W=A.getMode();if(W===DsQ)for(let Z=0,U=J.length;ZZ!==F&&Z!==A))A.setIndices(z6(B,Y).setArray(G));else Y.setArray(G)}var JGY={keepUniqueNames:!1,propertyTypes:[YA.ACCESSOR,YA.MESH,YA.TEXTURE,YA.MATERIAL,YA.SKIN]};var LCA="dequantize",y3={pattern:/^((?!JOINTS_).)*$/};function cCA(A=y3){let Q=R6(y3,A);return iF(LCA,(B)=>{let Y=B.getLogger();for(let J of B.getRoot().listMeshes())for(let C of J.listPrimitives())qsQ(C,Q);B.createExtension(tI).dispose(),Y.debug(`${LCA}: Complete.`)})}function qsQ(A,Q=y3){let B=R6(y3,Q);for(let Y of A.listSemantics())if(B.pattern.test(Y))vh(A.getAttribute(Y));for(let Y of A.listTargets())for(let J of Y.listSemantics())if(B.pattern.test(J))vh(Y.getAttribute(J))}function vh(A){let Q=A.getArray();if(!Q)return;let B=g3(Q,A.getComponentType(),A.getNormalized());A.setArray(B).setNormalized(!1)}function g3(A,Q,B){let Y=new Float32Array(A.length);for(let J=0,C=A.length;J{if(Y.propertyType===lCA)return Y;let J=B.get(Y);if(!J)J=new Y.constructor(A.getGraph()),B.set(Y,J);return J}}function RsQ(A){let Q=new Set;for(let B of A.getGraph().listEdges())Q.add(B.getChild());return Array.from(Q)}function iCA(){var A=new FU(4);if(FU!=Float32Array)A[0]=0,A[1]=0,A[2]=0,A[3]=0;return A}function wsQ(A,Q,B){return A[0]=Q[0]+B[0],A[1]=Q[1]+B[1],A[2]=Q[2]+B[2],A[3]=Q[3]+B[3],A}function jsQ(A,Q,B){return A[0]=Q[0]-B[0],A[1]=Q[1]-B[1],A[2]=Q[2]-B[2],A[3]=Q[3]-B[3],A}function OsQ(A,Q,B){return A[0]=Q[0]*B[0],A[1]=Q[1]*B[1],A[2]=Q[2]*B[2],A[3]=Q[3]*B[3],A}function PsQ(A,Q,B){return A[0]=Q[0]*B,A[1]=Q[1]*B,A[2]=Q[2]*B,A[3]=Q[3]*B,A}function TsQ(A){var Q=A[0],B=A[1],Y=A[2],J=A[3];return Math.hypot(Q,B,Y,J)}var nCA=jsQ,SsQ=OsQ,sCA=TsQ;(function(){var A=iCA();return function(Q,B,Y,J,C,X){var G,W;if(!B)B=4;if(!Y)Y=0;if(J)W=Math.min(J*B+Y,Q.length);else W=Q.length;for(G=Y;G{return J.getAttributes().isColor||ksQ.test(J.getName())})?"srgb":null}function vsQ(A){let Q=A.getGraph(),B=new Set,Y=new Set;function J(C){let X=new Set;for(let G of Q.listChildEdges(C))if(G.getChild()instanceof mF)X.add(G.getName()+"Info");for(let G of Q.listChildEdges(C)){let W=G.getChild();if(B.has(W))continue;if(B.add(W),W instanceof gB&&X.has(G.getName()))Y.add(W);else if(W instanceof oB)J(W)}}return J(A),Array.from(Y)}function ysQ(A){let B=LJ.fromGraph(A.getGraph()).getRoot(),Y=A.getGraph().listParentEdges(A).filter((J)=>J.getParent()!==B).map((J)=>J.getName());return Array.from(new Set(Y))}var GU="prune",yh=0.011764705882352941,qCA={propertyTypes:[YA.NODE,YA.SKIN,YA.MESH,YA.CAMERA,YA.PRIMITIVE,YA.PRIMITIVE_TARGET,YA.ANIMATION,YA.MATERIAL,YA.TEXTURE,YA.ACCESSOR,YA.BUFFER],keepLeaves:!1,keepAttributes:!1,keepIndices:!1,keepSolidTextures:!1,keepExtras:!1};function m3(A=qCA){let Q=R6(qCA,A),B=new Set(Q.propertyTypes),Y=Q.keepExtras;return iF(GU,async(J)=>{let C=J.getLogger(),X=J.getRoot(),G=J.getGraph(),W=new rCA,F=(Z)=>W.dispose(Z.target);if(G.addEventListener("node:dispose",F),B.has(YA.MESH))for(let Z of X.listMeshes()){if(Z.listPrimitives().length>0)continue;Z.dispose()}if(B.has(YA.NODE)){if(!Q.keepLeaves)for(let Z of X.listScenes())aCA(G,Z,Y);for(let Z of X.listNodes())K5(Z,Y)}if(B.has(YA.SKIN))for(let Z of X.listSkins())K5(Z,Y);if(B.has(YA.MESH))for(let Z of X.listMeshes())K5(Z,Y);if(B.has(YA.CAMERA))for(let Z of X.listCameras())K5(Z,Y);if(B.has(YA.PRIMITIVE))MCA(G,YA.PRIMITIVE,Y);if(B.has(YA.PRIMITIVE_TARGET))MCA(G,YA.PRIMITIVE_TARGET,Y);if(!Q.keepAttributes&&B.has(YA.ACCESSOR)){let Z=new Map;for(let U of X.listMeshes())for(let $ of U.listPrimitives()){let E=$.getMaterial();if(!E)continue;let K=oCA(J,$,E),I=gsQ($,K);zCA($,I),$.listTargets().forEach((V)=>zCA(V,I)),Z.has(E)?Z.get(E).add($):Z.set(E,new Set([$]))}for(let[U,$]of Z)hsQ(U,Array.from($))}if(B.has(YA.ANIMATION))for(let Z of X.listAnimations()){for(let U of Z.listChannels())if(!U.getTargetNode())U.dispose();if(!Z.listChannels().length){let U=Z.listSamplers();K5(Z,Y),U.forEach(($)=>K5($,Y))}else Z.listSamplers().forEach((U)=>K5(U,Y))}if(B.has(YA.MATERIAL))X.listMaterials().forEach((Z)=>K5(Z,Y));if(B.has(YA.TEXTURE)){if(X.listTextures().forEach((Z)=>K5(Z,Y)),!Q.keepSolidTextures)await xsQ(J)}if(B.has(YA.ACCESSOR))X.listAccessors().forEach((Z)=>K5(Z,Y));if(B.has(YA.BUFFER))X.listBuffers().forEach((Z)=>K5(Z,Y));if(G.removeEventListener("node:dispose",F),!W.empty()){let Z=W.entries().map(([U,$])=>`${U} (${$})`).join(", ");C.info(`${GU}: Removed types... ${Z}`)}else C.debug(`${GU}: No unused properties found.`);C.debug(`${GU}: Complete.`)})}class rCA{constructor(){this.disposed={}}empty(){for(let A in this.disposed)return!1;return!0}entries(){return Object.entries(this.disposed)}dispose(A){this.disposed[A.propertyType]=this.disposed[A.propertyType]||0,this.disposed[A.propertyType]++}}function K5(A,Q){let B=A.listParents().filter((J)=>!(J instanceof p4||J instanceof C6)),Y=Q&&!yCA(A.getExtras());if(!B.length&&!Y)A.dispose()}function MCA(A,Q,B){for(let Y of A.listEdges()){let J=Y.getParent();if(J.propertyType===Q)K5(J,B)}}function aCA(A,Q,B){if(Q.listChildren().forEach((X)=>aCA(A,X,B)),Q instanceof l4)return;let Y=A.listParentEdges(Q).some((X)=>{let G=X.getParent().propertyType;return G!==YA.ROOT&&G!==YA.SCENE&&G!==YA.NODE}),J=A.listChildren(Q).length===0,C=B&&!yCA(Q.getExtras());if(J&&!Y&&!C)Q.dispose()}function zCA(A,Q){for(let B of Q)A.setAttribute(B,null)}function gsQ(A,Q){let B=[];for(let Y of A.listSemantics())if(Y==="NORMAL"&&!Q.has(Y))B.push(Y);else if(Y==="TANGENT"&&!Q.has(Y))B.push(Y);else if(Y.startsWith("TEXCOORD_")&&!Q.has(Y))B.push(Y);else if(Y.startsWith("COLOR_")&&Y!=="COLOR_0")B.push(Y);return B}function oCA(A,Q,B,Y=new Set){let C=A.getGraph().listChildEdges(B),X=new Set;for(let F of C)if(F.getChild()instanceof mF)X.add(F.getName());for(let F of C){let Z=F.getName(),U=F.getChild();if(U instanceof gB){if(X.has(Z.replace(/Info$/,"")))Y.add(`TEXCOORD_${U.getTexCoord()}`)}if(U instanceof mF&&Z.match(/normalTexture/i))Y.add("TANGENT");if(U instanceof oB)oCA(A,Q,U,Y)}let G=B instanceof y1&&!B.getExtension("KHR_materials_unlit"),W=Q.getMode()===q0.Mode.POINTS;if(G&&!W)Y.add("NORMAL");return Y}function hsQ(A,Q){let B=vsQ(A),Y=new Set(B.map((W)=>W.getTexCoord())),J=Array.from(Y).sort(),C=new Map(J.map((W,F)=>[W,F])),X=new Map(J.map((W,F)=>[`TEXCOORD_${W}`,`TEXCOORD_${F}`]));for(let W of B){let F=W.getTexCoord();W.setTexCoord(C.get(F))}for(let W of Q){let F=W.listSemantics().filter((Z)=>Z.startsWith("TEXCOORD_")).sort();G(W,F),W.listTargets().forEach((Z)=>G(Z,F))}function G(W,F){for(let Z of F){let U=W.getAttribute(Z);if(!U)continue;let $=X.get(Z);if($===Z)continue;W.setAttribute($,U),W.setAttribute(Z,null)}}}async function xsQ(A){let Q=A.getRoot(),B=A.getGraph(),Y=A.getLogger(),C=Q.listTextures().map(async(X)=>{var G;let W=await bsQ(X);if(!W)return;if(_sQ(X)==="srgb")Hg.convertSRGBToLinear(W,W);let F=X.getName()||X.getURI(),Z=(G=X.getSize())==null?void 0:G.join("x"),U=ysQ(X);for(let $ of B.listParentEdges(X)){let E=$.getParent();if(E!==Q&&fsQ(E,W,$.getName(),Y))$.dispose()}if(X.listParents().length===1)X.dispose(),Y.debug(`${GU}: Removed solid-color texture "${F}" (${Z}px ${U.join(", ")})`)});await Promise.all(C)}function fsQ(A,Q,B,Y){if(A instanceof y1)switch(B){case"baseColorTexture":return A.setBaseColorFactor(SsQ(Q,Q,A.getBaseColorFactor())),!0;case"emissiveTexture":return A.setEmissiveFactor(FsQ([0,0,0],Q.slice(0,3),A.getEmissiveFactor())),!0;case"occlusionTexture":return Math.abs(Q[0]-1)<=yh;case"metallicRoughnessTexture":return A.setRoughnessFactor(Q[1]*A.getRoughnessFactor()),A.setMetallicFactor(Q[2]*A.getMetallicFactor()),!0;case"normalTexture":return sCA(nCA(iCA(),Q,[0.5,0.5,1,1]))<=yh}return Y.warn(`${GU}: Detected single-color ${B} texture. Pruning ${B} not yet supported.`),!1}async function bsQ(A){let Q=await msQ(A);if(!Q)return null;let B=[1/0,1/0,1/0,1/0],Y=[-1/0,-1/0,-1/0,-1/0],J=[0,0,0,0],[C,X]=Q.shape;for(let G=0;Gyh)return null}return PsQ(J,wsQ(J,Y,B),0.00196078431372549)}async function msQ(A){try{return await ECA(A.getImage(),A.getMimeType())}catch(Q){return null}}var Oh="flatten",RCA={cleanup:!0};function mh(A=RCA){let Q=R6(RCA,A);return iF(Oh,async(B)=>{let Y=B.getRoot(),J=B.getLogger(),C=new Set;for(let F of Y.listSkins())for(let Z of F.listJoints())C.add(Z);let X=new Set;for(let F of Y.listAnimations())for(let Z of F.listChannels()){let U=Z.getTargetNode();if(U&&Z.getTargetPath()!=="weights")X.add(U)}let G=new Set,W=new Set;for(let F of Y.listScenes())F.traverse((Z)=>{let U=Z.getParentNode();if(!U)return;if(C.has(U)||G.has(U))G.add(Z);if(X.has(U)||W.has(U))W.add(Z)});for(let F of Y.listScenes())F.traverse((Z)=>{if(X.has(Z))return;if(G.has(Z))return;if(W.has(Z))return;snQ(Z)});if(X.size)J.debug(`${Oh}: Flattening node hierarchies with TRS animation not yet supported.`);if(Q.cleanup)await B.transform(m3({propertyTypes:[YA.NODE],keepLeaves:!1}));J.debug(`${Oh}: Complete.`)})}function tCA(A){return dI(A)}var usQ={skipValidation:!1},wCA=4294967295,{LINE_STRIP:dsQ,LINE_LOOP:csQ,TRIANGLE_STRIP:lsQ,TRIANGLE_FAN:psQ}=q0.Mode;function isQ(A,Q={}){let B=R6(usQ,Q),Y=A[0],J=LJ.fromGraph(Y.getGraph());if(!B.skipValidation&&new Set(A.map(gCA)).size>1)throw Error("Requires >=2 Primitives, sharing the same Material and Mode, with compatible vertex attributes and indices.");for(let E of A)switch(E.getMode()){case dsQ:case csQ:LsQ(E);break;case lsQ:case psQ:dCA(E);break}let C=[],X=new Uint32Array(A.length),G=0,W=0;for(let E=0;E!0};function uh(A=jCA){let Q=R6(jCA,A);return iF(gh,async(B)=>{let Y=B.getRoot(),J=B.getLogger();for(let C of Y.listScenes())OCA(B,C,Q),C.traverse((X)=>OCA(B,X,Q));if(Q.cleanup)await B.transform(m3({propertyTypes:[asQ,osQ,tsQ,esQ],keepAttributes:!0,keepIndices:!0,keepLeaves:!1}));J.debug(`${gh}: Complete.`)})}function OCA(A,Q,B){let Y=A.getLogger(),J={},C=Q.listChildren();for(let W=0;W$ instanceof C6))continue;let U=F.getMesh();if(!U)continue;if(F.getExtension("EXT_mesh_gpu_instancing"))continue;if(F.getSkin())continue;for(let $ of U.listPrimitives()){if($.listTargets().length>0)continue;let E=$.getMaterial();if(E&&E.getExtension("KHR_materials_volume"))continue;UH($),QrQ($);let K=gCA($),I=U.getName()||F.getName();if(B.keepMeshes||B.keepNamed&&I)K+=`|${W}`;if(!(K in J))J[K]={prims:[],primMeshes:[],primNodes:[],dstNode:F,dstMesh:void 0};let V=J[K];V.prims.push($),V.primNodes.push(F)}}let X=Object.values(J).filter(({prims:W})=>W.length>1),G=new Set(X.flatMap((W)=>W.primNodes));for(let W of G){let F=W.getMesh();if(F.listParents().some((U)=>{return U.propertyType!==rsQ&&W!==U}))W.setMesh(F.clone())}for(let W of X){let{dstNode:F,primNodes:Z}=W;W.dstMesh=F.getMesh(),W.primMeshes=Z.map((U)=>U.getMesh())}for(let W of X){let{prims:F,primNodes:Z,primMeshes:U,dstNode:$,dstMesh:E}=W,K=$.getMatrix();for(let H=0;H=Math.PI}else if(B==="lerp"){let H=WrQ(C,W,G,I);V=!_3(X,H,Y)}else if(B==="step")V=!_3(X,W)||!_3(X,G)}if(V){if(U!==Z)A[Z]=A[U],SCA(Q,Z,$H(Q,U,C));Z++}}if(F>0)A[Z]=A[F],SCA(Q,Z,$H(Q,F,C)),Z++;return Z}function $H(A,Q,B){for(let Y=0,J=B.length;YB)return!1;return!0}function GrQ(A,Q,B){return A*(1-B)+Q*B}function WrQ(A,Q,B,Y){for(let J=0;JCrQ)$=Math.acos(E),K=Math.sin($),I=Math.sin((1-Y)*$)/K,V=Math.sin(Y*$)/K;else I=1-Y,V=Y;return A[0]=I*J+V*W,A[1]=I*C+V*F,A[2]=I*X+V*Z,A[3]=I*G+V*U,A}function kCA(A,Q){let B=ZrQ(A,Q);return Math.acos(2*B*B-1)}function ZrQ(A,Q){return A[0]*Q[0]+A[1]*Q[1]+A[2]*Q[2]+A[3]*Q[3]}var $GY=new Float32Array(0),UGY={ready:Promise.resolve(),resample:XrQ,tolerance:0.0001,cleanup:!0};var lF="simplify",{POINTS:eCA,LINES:$rQ,LINE_STRIP:UrQ,LINE_LOOP:ErQ,TRIANGLES:KrQ,TRIANGLE_STRIP:A1A,TRIANGLE_FAN:Q1A}=q0.Mode,B1A={ratio:0,error:0.0001,lockBorder:!1};function Y1A(A){let Q=R6(B1A,A),B=Q.simplifier;if(!B)throw Error(`${lF}: simplifier dependency required — install "meshoptimizer".`);return iF(lF,async(Y)=>{let J=Y.getLogger();await B.ready,await Y.transform(fh({overwrite:!1}));let C=0;for(let X of Y.getRoot().listMeshes()){for(let G of X.listPrimitives()){let W=G.getMode();if(W!==KrQ&&W!==A1A&&W!==Q1A&&W!==eCA){C++;continue}if(VrQ(G,Q),pF(G,zJ.RENDER)===0)vCA(G)}if(X.listPrimitives().length===0)X.dispose()}if(C>0)J.warn(`${lF}: Skipped ${C} primitives: Unsupported draw mode.`);J.debug(`${lF}: Complete.`)})}function VrQ(A,Q){let B=WU({},B1A,Q),Y=B.simplifier,J=A.getGraph(),C=LJ.fromGraph(J),X=C.getLogger();switch(A.getMode()){case eCA:return IrQ(C,A,B);case $rQ:case UrQ:case ErQ:return X.warn(`${lF}: Skipping primitive simplification: Unsupported draw mode.`),A;case A1A:case Q1A:dCA(A);break}let G=pF(A,zJ.UPLOAD),W=pF(A,zJ.RENDER);if(W($&A)/J*256/W,shiftGreen:($)=>($&Q)/C*256/F,shiftBlue:($)=>($&B)/X*256/Z,shiftAlpha:Y!==0?($)=>($&Y)/G*256/U:()=>255}}var w6;(function(A){A[A.NONE=0]="NONE",A[A.BI_RLE8=1]="BI_RLE8",A[A.BI_RLE4=2]="BI_RLE4",A[A.BI_BIT_FIELDS=3]="BI_BIT_FIELDS",A[A.BI_ALPHA_BIT_FIELDS=6]="BI_ALPHA_BIT_FIELDS"})(w6||(w6={}));class p3{flag;fileSize;reserved1;reserved2;offset;headerSize;width;height;planes;bitPP;compression;rawSize;hr;vr;colors;importantColors;palette;data;maskRed;maskGreen;maskBlue;maskAlpha;toRGBA;pos;bottomUp;buffer;locRed;locGreen;locBlue;locAlpha;shiftRed;shiftGreen;shiftBlue;shiftAlpha;constructor(A,{toRGBA:Q}={toRGBA:!1}){if(this.buffer=A,this.toRGBA=!!Q,this.pos=0,this.bottomUp=!0,this.flag=this.buffer.toString("utf-8",0,this.pos+=2),this.flag!=="BM")throw Error("Invalid BMP File");this.locRed=this.toRGBA?0:3,this.locGreen=this.toRGBA?1:2,this.locBlue=this.toRGBA?2:1,this.locAlpha=this.toRGBA?3:0,this.parseHeader(),this.parseRGBA()}parseHeader(){if(this.fileSize=this.readUInt32LE(),this.reserved1=this.buffer.readUInt16LE(this.pos),this.pos+=2,this.reserved2=this.buffer.readUInt16LE(this.pos),this.pos+=2,this.offset=this.readUInt32LE(),this.headerSize=this.readUInt32LE(),!(this.headerSize in V5))throw Error(`Unsupported BMP header size ${this.headerSize}`);if(this.width=this.readUInt32LE(),this.height=this.readUInt32LE(),this.height=this.height>2147483647?this.height-4294967296:this.height,this.planes=this.buffer.readUInt16LE(this.pos),this.pos+=2,this.bitPP=this.buffer.readUInt16LE(this.pos),this.pos+=2,this.compression=this.readUInt32LE(),this.rawSize=this.readUInt32LE(),this.hr=this.readUInt32LE(),this.vr=this.readUInt32LE(),this.colors=this.readUInt32LE(),this.importantColors=this.readUInt32LE(),this.bitPP===32)this.maskAlpha=0,this.maskRed=16711680,this.maskGreen=65280,this.maskBlue=255;else if(this.bitPP===16)this.maskAlpha=0,this.maskRed=31744,this.maskGreen=992,this.maskBlue=31;if(this.headerSize>V5.BITMAP_INFO_HEADER||this.compression===w6.BI_BIT_FIELDS||this.compression===w6.BI_ALPHA_BIT_FIELDS)this.maskRed=this.readUInt32LE(),this.maskGreen=this.readUInt32LE(),this.maskBlue=this.readUInt32LE();if(this.headerSize>V5.BITMAP_V2_INFO_HEADER||this.compression===w6.BI_ALPHA_BIT_FIELDS)this.maskAlpha=this.readUInt32LE();if(this.headerSize>V5.BITMAP_V3_INFO_HEADER)this.pos+=V5.BITMAP_V4_HEADER-V5.BITMAP_V3_INFO_HEADER;if(this.headerSize>V5.BITMAP_V4_HEADER)this.pos+=V5.BITMAP_V5_HEADER-V5.BITMAP_V4_HEADER;if(this.bitPP<=8||this.colors>0){let Q=this.colors===0?1<{if(C!==Y)Y=C;let X=this.buffer.readUInt8(this.pos++),G=C*this.width*4+J*8*4;for(let W=0;W<8;W++)if(J*8+W>7-W&1];this.data[G+W*this.locAlpha]=0,this.data[G+W*4+this.locBlue]=F.blue,this.data[G+W*4+this.locGreen]=F.green,this.data[G+W*4+this.locRed]=F.red}else break})}bit4(){if(this.compression===w6.BI_RLE4){this.data.fill(0);let A=!1,Q=this.bottomUp?this.height-1:0,B=0;while(B>4),X&1&&X+1>1&1)===1)this.pos++}}else for(let C=0;C>4),A=!A}}else{let A=Math.ceil(this.width/2),Q=A%4,B=Q!==0?4-Q:0;this.scanImage(B,A,(Y,J)=>{let C=this.buffer.readUInt8(this.pos++),X=J*this.width*4+Y*2*4,G=C>>4,W=this.palette[G];if(this.data[X]=0,this.data[X+1]=W.blue,this.data[X+2]=W.green,this.data[X+3]=W.red,Y*2+1>=this.width)return!1;let F=C&15;W=this.palette[F],this.data[X+4]=0,this.data[X+4+1]=W.blue,this.data[X+4+2]=W.green,this.data[X+4+3]=W.red})}}bit8(){if(this.compression===w6.BI_RLE8){this.data.fill(0);let A=this.bottomUp?this.height-1:0,Q=0;while(Q{let J=this.buffer.readUInt8(this.pos++),C=Y*this.width*4+B*4;if(J{let Y=B*this.width*4+Q*4,J=this.buffer.readUInt16LE(this.pos);this.pos+=2,this.data[Y+this.locRed]=this.shiftRed(J),this.data[Y+this.locGreen]=this.shiftGreen(J),this.data[Y+this.locBlue]=this.shiftBlue(J),this.data[Y+this.locAlpha]=this.shiftAlpha(J)})}bit24(){let A=this.width%4;this.scanImage(A,this.width,(Q,B)=>{let Y=B*this.width*4+Q*4,J=this.buffer.readUInt8(this.pos++),C=this.buffer.readUInt8(this.pos++),X=this.buffer.readUInt8(this.pos++);this.data[Y+this.locRed]=X,this.data[Y+this.locGreen]=C,this.data[Y+this.locBlue]=J,this.data[Y+this.locAlpha]=0})}bit32(){this.scanImage(0,this.width,(A,Q)=>{let B=Q*this.width*4+A*4,Y=this.readUInt32LE();this.data[B+this.locRed]=this.shiftRed(Y),this.data[B+this.locGreen]=this.shiftGreen(Y),this.data[B+this.locBlue]=this.shiftBlue(Y),this.data[B+this.locAlpha]=this.shiftAlpha(Y)})}scanImage(A=0,Q=this.width,B){for(let Y=this.height-1;Y>=0;Y--){let J=this.bottomUp?Y:this.height-1-Y;for(let C=0;CQ<<1|B,0)}function sh(A){return A.quad<<24|A.red<<16|A.green<<8|A.blue}class i3{fileSize;reserved1;reserved2;offset;width;flag;height;planes;bitPP;compress;hr;vr;colors;importantColors;rawSize;headerSize;data;palette;extraBytes;buffer;bytesInColor;pos;constructor(A){if(this.buffer=A.data,this.width=A.width,this.height=A.height,this.headerSize=V5.BITMAP_INFO_HEADER,this.flag="BM",this.bitPP=A.bitPP||24,this.offset=54,this.reserved1=A.reserved1||0,this.reserved2=A.reserved2||0,this.planes=1,this.compress=0,this.hr=A.hr||0,this.vr=A.vr||0,this.importantColors=A.importantColors||0,this.colors=Math.min(2**(this.bitPP-1||1),A.colors||1/0),this.palette=A.palette||[],this.colors&&this.bitPP<16)this.offset+=this.colors*4;else this.colors=0;switch(this.bitPP){case 32:this.bytesInColor=4;break;case 16:this.bytesInColor=2;break;case 8:this.bytesInColor=1;break;case 4:this.bytesInColor=0.5;break;case 1:this.bytesInColor=0.125;break;default:this.bytesInColor=3,this.bitPP=24}let Q=this.width*this.bitPP/32,B=Math.ceil(Q);this.extraBytes=(B-Q)*4,this.rawSize=this.height*B*4+2,this.fileSize=this.rawSize+this.offset,this.data=Buffer.alloc(this.fileSize,1),this.pos=0,this.encode()}encode(){switch(this.pos=0,this.writeHeader(),this.bitPP){case 32:this.bit32();break;case 16:this.bit16();break;case 8:this.bit8();break;case 4:this.bit4();break;case 1:this.bit1();break;default:this.bit24()}}writeHeader(){this.data.write(this.flag,this.pos,2),this.pos+=2,this.writeUInt32LE(this.fileSize),this.writeUInt32LE(this.reserved1<<16|this.reserved2),this.writeUInt32LE(this.offset),this.writeUInt32LE(this.headerSize),this.writeUInt32LE(this.width),this.writeUInt32LE(this.height),this.data.writeUInt16LE(this.planes,this.pos),this.pos+=2,this.data.writeUInt16LE(this.bitPP,this.pos),this.pos+=2,this.writeUInt32LE(this.compress),this.writeUInt32LE(this.rawSize),this.writeUInt32LE(this.hr),this.writeUInt32LE(this.vr),this.writeUInt32LE(this.colors),this.writeUInt32LE(this.importantColors)}bit1(){if(this.palette.length&&this.colors===2)this.initColors(1);else this.writeUInt32LE(16777215),this.writeUInt32LE(0);this.pos+=1;let A=[];this.writeImage((Q,B,Y)=>{let J=B;J++;let C=this.buffer[J++],X=this.buffer[J++],W=this.buffer[J++]*0.2126+X*0.7152+C*0.0722;if(A.push(W>127?0:1),(Y+1)%8===0)this.data[Q-1]=Z1A(A),A=[];else if(Y===this.width-1&&A.length>0)this.data[Q-1]=Z1A(A)<<4,A=[];return J})}bit4(){let A=this.initColors(4),Q=[];this.writeImage((B,Y,J)=>{let C=Y,X=sh({quad:this.buffer[C++],blue:this.buffer[C++],green:this.buffer[C++],red:this.buffer[C++]}),G=A.findIndex((W)=>W===X);if(G!==-1)Q.push(G);else Q.push(0);if((J+1)%2===0)this.data[B]=Q[0]<<4|Q[1],Q=[];return C})}bit8(){let A=this.initColors(8);this.writeImage((Q,B)=>{let Y=B,J=sh({quad:this.buffer[Y++],blue:this.buffer[Y++],green:this.buffer[Y++],red:this.buffer[Y++]}),C=A.findIndex((X)=>X===J);if(C!==-1)this.data[Q]=C;else this.data[Q]=0;return Y})}bit16(){this.writeImage((A,Q)=>{let B=Q+1,Y=this.buffer[B++]/8,J=this.buffer[B++]/8,X=this.buffer[B++]/8<<10|J<<5|Y;return this.data[A]=X&255,this.data[A+1]=(X&65280)>>8,B})}bit24(){this.writeImage((A,Q)=>{let B=Q+1;return this.data[A]=this.buffer[B++],this.data[A+1]=this.buffer[B++],this.data[A+2]=this.buffer[B++],B})}bit32(){this.writeImage((A,Q)=>{let B=Q;return this.data[A+3]=this.buffer[B++],this.data[A]=this.buffer[B++],this.data[A+1]=this.buffer[B++],this.data[A+2]=this.buffer[B++],B})}writeImage(A){let Q=this.extraBytes+this.width*this.bytesInColor,B=0;for(let Y=0;Y=0,C=!B&&J&&(Q==="hex"||Q==="hex6"||Q==="hex3"||Q==="hex4"||Q==="hex8"||Q==="name");if(C){if(Q==="name"&&this._a===0)return this.toName();return this.toRgbString()}if(Q==="rgb")Y=this.toRgbString();if(Q==="prgb")Y=this.toPercentageRgbString();if(Q==="hex"||Q==="hex6")Y=this.toHexString();if(Q==="hex3")Y=this.toHexString(!0);if(Q==="hex4")Y=this.toHex8String(!0);if(Q==="hex8")Y=this.toHex8String();if(Q==="name")Y=this.toName();if(Q==="hsl")Y=this.toHslString();if(Q==="hsv")Y=this.toHsvString();return Y||this.toHexString()},clone:function(){return oA(this.toString())},_applyModification:function(Q,B){var Y=Q.apply(null,[this].concat([].slice.call(B)));return this._r=Y._r,this._g=Y._g,this._b=Y._b,this.setAlpha(Y._a),this},lighten:function(){return this._applyModification(_rQ,arguments)},brighten:function(){return this._applyModification(vrQ,arguments)},darken:function(){return this._applyModification(yrQ,arguments)},desaturate:function(){return this._applyModification(TrQ,arguments)},saturate:function(){return this._applyModification(SrQ,arguments)},greyscale:function(){return this._applyModification(krQ,arguments)},spin:function(){return this._applyModification(grQ,arguments)},_applyCombination:function(Q,B){return Q.apply(null,[this].concat([].slice.call(B)))},analogous:function(){return this._applyCombination(frQ,arguments)},complement:function(){return this._applyCombination(hrQ,arguments)},monochromatic:function(){return this._applyCombination(brQ,arguments)},splitcomplement:function(){return this._applyCombination(xrQ,arguments)},triad:function(){return this._applyCombination(H1A,[3])},tetrad:function(){return this._applyCombination(H1A,[4])}};oA.fromRatio=function(A,Q){if(n3(A)=="object"){var B={};for(var Y in A)if(A.hasOwnProperty(Y))if(Y==="a")B[Y]=A[Y];else B[Y]=HH(A[Y]);A=B}return oA(A,Q)};function RrQ(A){var Q={r:0,g:0,b:0},B=1,Y=null,J=null,C=null,X=!1,G=!1;if(typeof A=="string")A=lrQ(A);if(n3(A)=="object"){if(j6(A.r)&&j6(A.g)&&j6(A.b))Q=wrQ(A.r,A.g,A.b),X=!0,G=String(A.r).substr(-1)==="%"?"prgb":"rgb";else if(j6(A.h)&&j6(A.s)&&j6(A.v))Y=HH(A.s),J=HH(A.v),Q=OrQ(A.h,Y,J),X=!0,G="hsv";else if(j6(A.h)&&j6(A.s)&&j6(A.l))Y=HH(A.s),C=HH(A.l),Q=jrQ(A.h,Y,C),X=!0,G="hsl";if(A.hasOwnProperty("a"))B=A.a}return B=N1A(B),{ok:X,format:A.format||G,r:Math.min(255,Math.max(Q.r,0)),g:Math.min(255,Math.max(Q.g,0)),b:Math.min(255,Math.max(Q.b,0)),a:B}}function wrQ(A,Q,B){return{r:M0(A,255)*255,g:M0(Q,255)*255,b:M0(B,255)*255}}function E1A(A,Q,B){A=M0(A,255),Q=M0(Q,255),B=M0(B,255);var Y=Math.max(A,Q,B),J=Math.min(A,Q,B),C,X,G=(Y+J)/2;if(Y==J)C=X=0;else{var W=Y-J;switch(X=G>0.5?W/(2-Y-J):W/(Y+J),Y){case A:C=(Q-B)/W+(Q1)U-=1;if(U<0.16666666666666666)return F+(Z-F)*6*U;if(U<0.5)return Z;if(U<0.6666666666666666)return F+(Z-F)*(0.6666666666666666-U)*6;return F}if(Q===0)Y=J=C=B;else{var G=B<0.5?B*(1+Q):B+Q-B*Q,W=2*B-G;Y=X(W,G,A+0.3333333333333333),J=X(W,G,A),C=X(W,G,A-0.3333333333333333)}return{r:Y*255,g:J*255,b:C*255}}function K1A(A,Q,B){A=M0(A,255),Q=M0(Q,255),B=M0(B,255);var Y=Math.max(A,Q,B),J=Math.min(A,Q,B),C,X,G=Y,W=Y-J;if(X=Y===0?0:W/Y,Y==J)C=0;else{switch(Y){case A:C=(Q-B)/W+(Q>1)+720)%360;--Q;)Y.h=(Y.h+J)%360,C.push(oA(Y));return C}function brQ(A,Q){Q=Q||6;var B=oA(A).toHsv(),Y=B.h,J=B.s,C=B.v,X=[],G=1/Q;while(Q--)X.push(oA({h:Y,s:J,v:C})),C=(C+G)%1;return X}oA.mix=function(A,Q,B){B=B===0?0:B||50;var Y=oA(A).toRgb(),J=oA(Q).toRgb(),C=B/100,X={r:(J.r-Y.r)*C+Y.r,g:(J.g-Y.g)*C+Y.g,b:(J.b-Y.b)*C+Y.b,a:(J.a-Y.a)*C+Y.a};return oA(X)};oA.readability=function(A,Q){var B=oA(A),Y=oA(Q);return(Math.max(B.getLuminance(),Y.getLuminance())+0.05)/(Math.min(B.getLuminance(),Y.getLuminance())+0.05)};oA.isReadable=function(A,Q,B){var Y=oA.readability(A,Q),J,C;switch(C=!1,J=prQ(B),J.level+J.size){case"AAsmall":case"AAAlarge":C=Y>=4.5;break;case"AAlarge":C=Y>=3;break;case"AAAsmall":C=Y>=7;break}return C};oA.mostReadable=function(A,Q,B){var Y=null,J=0,C,X,G,W;B=B||{},X=B.includeFallbackColors,G=B.level,W=B.size;for(var F=0;FJ)J=C,Y=oA(Q[F]);if(oA.isReadable(A,Y,{level:G,size:W})||!X)return Y;else return B.includeFallbackColors=!1,oA.mostReadable(A,["#fff","#000"],B)};var rh=oA.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},mrQ=oA.hexNames=urQ(rh);function urQ(A){var Q={};for(var B in A)if(A.hasOwnProperty(B))Q[A[B]]=B;return Q}function N1A(A){if(A=parseFloat(A),isNaN(A)||A<0||A>1)A=1;return A}function M0(A,Q){if(drQ(A))A="100%";var B=crQ(A);if(A=Math.min(Q,Math.max(0,parseFloat(A))),B)A=parseInt(A*Q,10)/100;if(Math.abs(A-Q)<0.000001)return 1;return A%Q/parseFloat(Q)}function s3(A){return Math.min(1,Math.max(0,A))}function E8(A){return parseInt(A,16)}function drQ(A){return typeof A=="string"&&A.indexOf(".")!=-1&&parseFloat(A)===1}function crQ(A){return typeof A==="string"&&A.indexOf("%")!=-1}function SC(A){return A.length==1?"0"+A:""+A}function HH(A){if(A<=1)A=A*100+"%";return A}function L1A(A){return Math.round(parseFloat(A)*255).toString(16)}function D1A(A){return E8(A)/255}var TC=function(){var A="[-\\+]?\\d+%?",Q="[-\\+]?\\d*\\.\\d+%?",B="(?:"+Q+")|(?:"+A+")",Y="[\\s|\\(]+("+B+")[,|\\s]+("+B+")[,|\\s]+("+B+")\\s*\\)?",J="[\\s|\\(]+("+B+")[,|\\s]+("+B+")[,|\\s]+("+B+")[,|\\s]+("+B+")\\s*\\)?";return{CSS_UNIT:new RegExp(B),rgb:new RegExp("rgb"+Y),rgba:new RegExp("rgba"+J),hsl:new RegExp("hsl"+Y),hsla:new RegExp("hsla"+J),hsv:new RegExp("hsv"+Y),hsva:new RegExp("hsva"+J),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/}}();function j6(A){return!!TC.CSS_UNIT.exec(A)}function lrQ(A){A=A.replace(MrQ,"").replace(zrQ,"").toLowerCase();var Q=!1;if(rh[A])A=rh[A],Q=!0;else if(A=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var B;if(B=TC.rgb.exec(A))return{r:B[1],g:B[2],b:B[3]};if(B=TC.rgba.exec(A))return{r:B[1],g:B[2],b:B[3],a:B[4]};if(B=TC.hsl.exec(A))return{h:B[1],s:B[2],l:B[3]};if(B=TC.hsla.exec(A))return{h:B[1],s:B[2],l:B[3],a:B[4]};if(B=TC.hsv.exec(A))return{h:B[1],s:B[2],v:B[3]};if(B=TC.hsva.exec(A))return{h:B[1],s:B[2],v:B[3],a:B[4]};if(B=TC.hex8.exec(A))return{r:E8(B[1]),g:E8(B[2]),b:E8(B[3]),a:D1A(B[4]),format:Q?"name":"hex8"};if(B=TC.hex6.exec(A))return{r:E8(B[1]),g:E8(B[2]),b:E8(B[3]),format:Q?"name":"hex"};if(B=TC.hex4.exec(A))return{r:E8(B[1]+""+B[1]),g:E8(B[2]+""+B[2]),b:E8(B[3]+""+B[3]),a:D1A(B[4]+""+B[4]),format:Q?"name":"hex8"};if(B=TC.hex3.exec(A))return{r:E8(B[1]+""+B[1]),g:E8(B[2]+""+B[2]),b:E8(B[3]+""+B[3]),format:Q?"name":"hex"};return!1}function prQ(A){var Q,B;if(A=A||{level:"AA",size:"small"},Q=(A.level||"AA").toUpperCase(),B=(A.size||"small").toLowerCase(),Q!=="AA"&&Q!=="AAA")Q="AA";if(B!=="small"&&B!=="large")B="small";return{level:Q,size:B}}function K8(A){let Q={width:A.bitmap.width,height:A.bitmap.height,data:Buffer.from(A.bitmap.data)};return new A.constructor(Q)}function I5(A,Q,B,Y,J,C){let X,G,W,F,Z;if(typeof Q==="function")Z=Q,X=0,G=0,W=A.bitmap.width,F=A.bitmap.height;else{if(X=Q,typeof B!=="number")throw Error("y must be a number");if(G=B,typeof Y!=="number")throw Error("w must be a number");if(W=Y,typeof J!=="number")throw Error("h must be a number");if(F=J,typeof C!=="function")throw Error("cb must be a function");Z=C}X=Math.round(X),G=Math.round(G),W=Math.round(W),F=Math.round(F);let U=Z.bind(A);for(let $=G;$Math.pow(G,2),{max:Y}=Math,J=195075,C="a"in A?A.a:255,X="a"in Q?Q.a:255;return(Y(B(A.r-Q.r),B(A.r-Q.r-C+X))+Y(B(A.g-Q.g),B(A.g-Q.g-C+X))+Y(B(A.b-Q.b),B(A.b-Q.b-C+X)))/195075}function z0(A){return A=Math.max(A,0),A=Math.min(A,255),A}function M1A(A){if(typeof A==="number")return A;return parseInt(oA(A).toHex8(),16)}function z1A(A,Q={}){return I5({bitmap:A},0,0,A.width,A.height,function(B,Y,J){let C=A.data[J+0],X=A.data[J+1],G=A.data[J+2],W=A.data[J+3];A.data[J+0]=W,A.data[J+1]=G,A.data[J+2]=X,A.data[J+3]=C}),U1A({...A,...Q}).data}function R1A(A,Q){let B=$1A(A,Q);return I5({bitmap:B},0,0,B.width,B.height,function(Y,J,C){let X=B.data[C+1],G=B.data[C+2],W=B.data[C+3];B.data[C+0]=W,B.data[C+1]=G,B.data[C+2]=X,B.data[C+3]=255}),B}function w1A(){return{mime:"image/x-ms-bmp",encode:z1A,decode:R1A}}function r3(){return{mime:"image/bmp",encode:z1A,decode:R1A}}var TXA=qA(ah(),1),I7=qA(PXA(),1);function XR(){return{mime:"image/gif",encode:async(A)=>{let Q=new I7.BitmapImage(A);I7.GifUtil.quantizeDekker(Q,256);let B=new I7.GifFrame(A);return(await new I7.GifCodec().encodeGif([B],{})).buffer},decode:(A)=>{let Q=new TXA.default.GifReader(A),B=Buffer.alloc(Q.width*Q.height*4);return Q.decodeAndBlitFrameRGBA(0,B),{data:B,width:Q.width,height:Q.height}}}}var Zx=qA(hXA(),1);function WR(){return{mime:"image/jpeg",encode:(A,{quality:Q=100}={})=>Zx.default.encode(A,Q).data,decode:(A,Q)=>Zx.default.decode(A,Q)}}var ZR=qA(P6A(),1);var FR;(function(A){A[A.AUTO=-1]="AUTO",A[A.NONE=0]="NONE",A[A.SUB=1]="SUB",A[A.UP=2]="UP",A[A.AVERAGE=3]="AVERAGE",A[A.PATH=4]="PATH"})(FR||(FR={}));var PH;(function(A){A[A.GRAYSCALE=0]="GRAYSCALE",A[A.COLOR=2]="COLOR",A[A.GRAYSCALE_ALPHA=4]="GRAYSCALE_ALPHA",A[A.COLOR_ALPHA=6]="COLOR_ALPHA"})(PH||(PH={}));function $R(){return{mime:"image/png",hasAlpha:!0,encode:(A,{deflateLevel:Q=9,deflateStrategy:B=3,filterType:Y=FR.AUTO,colorType:J,inputHasAlpha:C=!0,...X}={})=>{let G=new ZR.PNG({width:A.width,height:A.height});return G.data=A.data,ZR.PNG.sync.write(G,{...X,deflateLevel:Q,deflateStrategy:B,filterType:Y,colorType:typeof J<"u"?J:C?PH.COLOR_ALPHA:PH.COLOR,inputHasAlpha:C})},decode:(A,Q)=>{let B=ZR.PNG.sync.read(A,Q);return{data:B.data,width:B.width,height:B.height}}}}var cH=qA(H7A(),1);function D7A(A){if(typeof A==="number")return A;if(A instanceof Uint8Array)return A[0];if(typeof A[0]==="string")return parseInt(A[0]);return A[0]}function PR(){return{mime:"image/tiff",encode:(A)=>{let Q=cH.default.encodeImage(A.data,A.width,A.height);return Buffer.from(Q)},decode:(A)=>{let Q=cH.default.decode(A),B=Q[0];if(!B)throw Error("No page found in TIFF");if(!B.t256)throw Error("No image width found in TIFF");if(!B.t257)throw Error("No image height found in TIFF");Q.forEach((J)=>{cH.default.decodeImage(A,J)});let Y=cH.default.toRGBA8(B);return{data:Buffer.from(Y),width:D7A(B.t256),height:D7A(B.t257)}}}}var s={};iG(s,{void:()=>sQB,util:()=>FB,unknown:()=>iQB,union:()=>tQB,undefined:()=>cQB,tuple:()=>QBB,transformer:()=>$BB,symbol:()=>dQB,string:()=>O7A,strictObject:()=>oQB,setErrorMap:()=>EQB,set:()=>JBB,record:()=>BBB,quotelessJson:()=>$QB,promise:()=>ZBB,preprocess:()=>KBB,pipeline:()=>VBB,ostring:()=>IBB,optional:()=>UBB,onumber:()=>HBB,oboolean:()=>DBB,objectUtil:()=>Gf,object:()=>aQB,number:()=>P7A,nullable:()=>EBB,null:()=>lQB,never:()=>nQB,nativeEnum:()=>FBB,nan:()=>bQB,map:()=>YBB,makeIssue:()=>lH,literal:()=>GBB,lazy:()=>XBB,late:()=>xQB,isValid:()=>w7,isDirty:()=>SR,isAsync:()=>SU,isAborted:()=>TR,intersection:()=>ABB,instanceof:()=>fQB,getParsedType:()=>s1,getErrorMap:()=>TU,function:()=>CBB,enum:()=>WBB,effect:()=>$BB,discriminatedUnion:()=>eQB,defaultErrorMap:()=>v6,datetimeRegex:()=>R7A,date:()=>uQB,custom:()=>j7A,coerce:()=>NBB,boolean:()=>T7A,bigint:()=>mQB,array:()=>rQB,any:()=>pQB,addIssueToContext:()=>xA,ZodVoid:()=>iH,ZodUnknown:()=>j7,ZodUnion:()=>hU,ZodUndefined:()=>yU,ZodType:()=>JB,ZodTuple:()=>a1,ZodTransformer:()=>fC,ZodSymbol:()=>pH,ZodString:()=>yC,ZodSet:()=>XZ,ZodSchema:()=>JB,ZodRecord:()=>nH,ZodReadonly:()=>cU,ZodPromise:()=>GZ,ZodPipeline:()=>aH,ZodParsedType:()=>kA,ZodOptional:()=>hC,ZodObject:()=>y0,ZodNumber:()=>O7,ZodNullable:()=>g6,ZodNull:()=>gU,ZodNever:()=>r1,ZodNativeEnum:()=>mU,ZodNaN:()=>rH,ZodMap:()=>sH,ZodLiteral:()=>bU,ZodLazy:()=>fU,ZodIssueCode:()=>RA,ZodIntersection:()=>xU,ZodFunction:()=>_U,ZodFirstPartyTypeKind:()=>zQ,ZodError:()=>g9,ZodEnum:()=>T7,ZodEffects:()=>fC,ZodDiscriminatedUnion:()=>kR,ZodDefault:()=>uU,ZodDate:()=>JZ,ZodCatch:()=>dU,ZodBranded:()=>_R,ZodBoolean:()=>vU,ZodBigInt:()=>P7,ZodArray:()=>gC,ZodAny:()=>CZ,Schema:()=>JB,ParseStatus:()=>WJ,OK:()=>wJ,NEVER:()=>LBB,INVALID:()=>LQ,EMPTY_PATH:()=>KQB,DIRTY:()=>YZ,BRAND:()=>hQB});var FB;(function(A){A.assertEqual=(J)=>{};function Q(J){}A.assertIs=Q;function B(J){throw Error()}A.assertNever=B,A.arrayToEnum=(J)=>{let C={};for(let X of J)C[X]=X;return C},A.getValidEnumValues=(J)=>{let C=A.objectKeys(J).filter((G)=>typeof J[J[G]]!=="number"),X={};for(let G of C)X[G]=J[G];return A.objectValues(X)},A.objectValues=(J)=>{return A.objectKeys(J).map(function(C){return J[C]})},A.objectKeys=typeof Object.keys==="function"?(J)=>Object.keys(J):(J)=>{let C=[];for(let X in J)if(Object.prototype.hasOwnProperty.call(J,X))C.push(X);return C},A.find=(J,C)=>{for(let X of J)if(C(X))return X;return},A.isInteger=typeof Number.isInteger==="function"?(J)=>Number.isInteger(J):(J)=>typeof J==="number"&&Number.isFinite(J)&&Math.floor(J)===J;function Y(J,C=" | "){return J.map((X)=>typeof X==="string"?`'${X}'`:X).join(C)}A.joinValues=Y,A.jsonStringifyReplacer=(J,C)=>{if(typeof C==="bigint")return C.toString();return C}})(FB||(FB={}));var Gf;(function(A){A.mergeShapes=(Q,B)=>{return{...Q,...B}}})(Gf||(Gf={}));var kA=FB.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),s1=(A)=>{switch(typeof A){case"undefined":return kA.undefined;case"string":return kA.string;case"number":return Number.isNaN(A)?kA.nan:kA.number;case"boolean":return kA.boolean;case"function":return kA.function;case"bigint":return kA.bigint;case"symbol":return kA.symbol;case"object":if(Array.isArray(A))return kA.array;if(A===null)return kA.null;if(A.then&&typeof A.then==="function"&&A.catch&&typeof A.catch==="function")return kA.promise;if(typeof Map<"u"&&A instanceof Map)return kA.map;if(typeof Set<"u"&&A instanceof Set)return kA.set;if(typeof Date<"u"&&A instanceof Date)return kA.date;return kA.object;default:return kA.unknown}};var RA=FB.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),$QB=(A)=>{return JSON.stringify(A,null,2).replace(/"([^"]+)":/g,"$1:")};class g9 extends Error{get errors(){return this.issues}constructor(A){super();this.issues=[],this.addIssue=(B)=>{this.issues=[...this.issues,B]},this.addIssues=(B=[])=>{this.issues=[...this.issues,...B]};let Q=new.target.prototype;if(Object.setPrototypeOf)Object.setPrototypeOf(this,Q);else this.__proto__=Q;this.name="ZodError",this.issues=A}format(A){let Q=A||function(J){return J.message},B={_errors:[]},Y=(J)=>{for(let C of J.issues)if(C.code==="invalid_union")C.unionErrors.map(Y);else if(C.code==="invalid_return_type")Y(C.returnTypeError);else if(C.code==="invalid_arguments")Y(C.argumentsError);else if(C.path.length===0)B._errors.push(Q(C));else{let X=B,G=0;while(GQ.message){let Q={},B=[];for(let Y of this.issues)if(Y.path.length>0){let J=Y.path[0];Q[J]=Q[J]||[],Q[J].push(A(Y))}else B.push(A(Y));return{formErrors:B,fieldErrors:Q}}get formErrors(){return this.flatten()}}g9.create=(A)=>{return new g9(A)};var UQB=(A,Q)=>{let B;switch(A.code){case RA.invalid_type:if(A.received===kA.undefined)B="Required";else B=`Expected ${A.expected}, received ${A.received}`;break;case RA.invalid_literal:B=`Invalid literal value, expected ${JSON.stringify(A.expected,FB.jsonStringifyReplacer)}`;break;case RA.unrecognized_keys:B=`Unrecognized key(s) in object: ${FB.joinValues(A.keys,", ")}`;break;case RA.invalid_union:B="Invalid input";break;case RA.invalid_union_discriminator:B=`Invalid discriminator value. Expected ${FB.joinValues(A.options)}`;break;case RA.invalid_enum_value:B=`Invalid enum value. Expected ${FB.joinValues(A.options)}, received '${A.received}'`;break;case RA.invalid_arguments:B="Invalid function arguments";break;case RA.invalid_return_type:B="Invalid function return type";break;case RA.invalid_date:B="Invalid date";break;case RA.invalid_string:if(typeof A.validation==="object")if("includes"in A.validation){if(B=`Invalid input: must include "${A.validation.includes}"`,typeof A.validation.position==="number")B=`${B} at one or more positions greater than or equal to ${A.validation.position}`}else if("startsWith"in A.validation)B=`Invalid input: must start with "${A.validation.startsWith}"`;else if("endsWith"in A.validation)B=`Invalid input: must end with "${A.validation.endsWith}"`;else FB.assertNever(A.validation);else if(A.validation!=="regex")B=`Invalid ${A.validation}`;else B="Invalid";break;case RA.too_small:if(A.type==="array")B=`Array must contain ${A.exact?"exactly":A.inclusive?"at least":"more than"} ${A.minimum} element(s)`;else if(A.type==="string")B=`String must contain ${A.exact?"exactly":A.inclusive?"at least":"over"} ${A.minimum} character(s)`;else if(A.type==="number")B=`Number must be ${A.exact?"exactly equal to ":A.inclusive?"greater than or equal to ":"greater than "}${A.minimum}`;else if(A.type==="bigint")B=`Number must be ${A.exact?"exactly equal to ":A.inclusive?"greater than or equal to ":"greater than "}${A.minimum}`;else if(A.type==="date")B=`Date must be ${A.exact?"exactly equal to ":A.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(A.minimum))}`;else B="Invalid input";break;case RA.too_big:if(A.type==="array")B=`Array must contain ${A.exact?"exactly":A.inclusive?"at most":"less than"} ${A.maximum} element(s)`;else if(A.type==="string")B=`String must contain ${A.exact?"exactly":A.inclusive?"at most":"under"} ${A.maximum} character(s)`;else if(A.type==="number")B=`Number must be ${A.exact?"exactly":A.inclusive?"less than or equal to":"less than"} ${A.maximum}`;else if(A.type==="bigint")B=`BigInt must be ${A.exact?"exactly":A.inclusive?"less than or equal to":"less than"} ${A.maximum}`;else if(A.type==="date")B=`Date must be ${A.exact?"exactly":A.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(A.maximum))}`;else B="Invalid input";break;case RA.custom:B="Invalid input";break;case RA.invalid_intersection_types:B="Intersection results could not be merged";break;case RA.not_multiple_of:B=`Number must be a multiple of ${A.multipleOf}`;break;case RA.not_finite:B="Number must be finite";break;default:B=Q.defaultError,FB.assertNever(A)}return{message:B}},v6=UQB;var N7A=v6;function EQB(A){N7A=A}function TU(){return N7A}var lH=(A)=>{let{data:Q,path:B,errorMaps:Y,issueData:J}=A,C=[...B,...J.path||[]],X={...J,path:C};if(J.message!==void 0)return{...J,path:C,message:J.message};let G="",W=Y.filter((F)=>!!F).slice().reverse();for(let F of W)G=F(X,{data:Q,defaultError:G}).message;return{...J,path:C,message:G}},KQB=[];function xA(A,Q){let B=TU(),Y=lH({issueData:Q,data:A.data,path:A.path,errorMaps:[A.common.contextualErrorMap,A.schemaErrorMap,B,B===v6?void 0:v6].filter((J)=>!!J)});A.common.issues.push(Y)}class WJ{constructor(){this.value="valid"}dirty(){if(this.value==="valid")this.value="dirty"}abort(){if(this.value!=="aborted")this.value="aborted"}static mergeArray(A,Q){let B=[];for(let Y of Q){if(Y.status==="aborted")return LQ;if(Y.status==="dirty")A.dirty();B.push(Y.value)}return{status:A.value,value:B}}static async mergeObjectAsync(A,Q){let B=[];for(let Y of Q){let J=await Y.key,C=await Y.value;B.push({key:J,value:C})}return WJ.mergeObjectSync(A,B)}static mergeObjectSync(A,Q){let B={};for(let Y of Q){let{key:J,value:C}=Y;if(J.status==="aborted")return LQ;if(C.status==="aborted")return LQ;if(J.status==="dirty")A.dirty();if(C.status==="dirty")A.dirty();if(J.value!=="__proto__"&&(typeof C.value<"u"||Y.alwaysSet))B[J.value]=C.value}return{status:A.value,value:B}}}var LQ=Object.freeze({status:"aborted"}),YZ=(A)=>({status:"dirty",value:A}),wJ=(A)=>({status:"valid",value:A}),TR=(A)=>A.status==="aborted",SR=(A)=>A.status==="dirty",w7=(A)=>A.status==="valid",SU=(A)=>typeof Promise<"u"&&A instanceof Promise;var tA;(function(A){A.errToObj=(Q)=>typeof Q==="string"?{message:Q}:Q||{},A.toString=(Q)=>typeof Q==="string"?Q:Q?.message})(tA||(tA={}));class xC{constructor(A,Q,B,Y){this._cachedPath=[],this.parent=A,this.data=Q,this._path=B,this._key=Y}get path(){if(!this._cachedPath.length)if(Array.isArray(this._key))this._cachedPath.push(...this._path,...this._key);else this._cachedPath.push(...this._path,this._key);return this._cachedPath}}var L7A=(A,Q)=>{if(w7(Q))return{success:!0,data:Q.value};else{if(!A.common.issues.length)throw Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let B=new g9(A.common.issues);return this._error=B,this._error}}}};function pQ(A){if(!A)return{};let{errorMap:Q,invalid_type_error:B,required_error:Y,description:J}=A;if(Q&&(B||Y))throw Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);if(Q)return{errorMap:Q,description:J};return{errorMap:(X,G)=>{let{message:W}=A;if(X.code==="invalid_enum_value")return{message:W??G.defaultError};if(typeof G.data>"u")return{message:W??Y??G.defaultError};if(X.code!=="invalid_type")return{message:G.defaultError};return{message:W??B??G.defaultError}},description:J}}class JB{get description(){return this._def.description}_getType(A){return s1(A.data)}_getOrReturnCtx(A,Q){return Q||{common:A.parent.common,data:A.data,parsedType:s1(A.data),schemaErrorMap:this._def.errorMap,path:A.path,parent:A.parent}}_processInputParams(A){return{status:new WJ,ctx:{common:A.parent.common,data:A.data,parsedType:s1(A.data),schemaErrorMap:this._def.errorMap,path:A.path,parent:A.parent}}}_parseSync(A){let Q=this._parse(A);if(SU(Q))throw Error("Synchronous parse encountered promise.");return Q}_parseAsync(A){let Q=this._parse(A);return Promise.resolve(Q)}parse(A,Q){let B=this.safeParse(A,Q);if(B.success)return B.data;throw B.error}safeParse(A,Q){let B={common:{issues:[],async:Q?.async??!1,contextualErrorMap:Q?.errorMap},path:Q?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:A,parsedType:s1(A)},Y=this._parseSync({data:A,path:B.path,parent:B});return L7A(B,Y)}"~validate"(A){let Q={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:A,parsedType:s1(A)};if(!this["~standard"].async)try{let B=this._parseSync({data:A,path:[],parent:Q});return w7(B)?{value:B.value}:{issues:Q.common.issues}}catch(B){if(B?.message?.toLowerCase()?.includes("encountered"))this["~standard"].async=!0;Q.common={issues:[],async:!0}}return this._parseAsync({data:A,path:[],parent:Q}).then((B)=>w7(B)?{value:B.value}:{issues:Q.common.issues})}async parseAsync(A,Q){let B=await this.safeParseAsync(A,Q);if(B.success)return B.data;throw B.error}async safeParseAsync(A,Q){let B={common:{issues:[],contextualErrorMap:Q?.errorMap,async:!0},path:Q?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:A,parsedType:s1(A)},Y=this._parse({data:A,path:B.path,parent:B}),J=await(SU(Y)?Y:Promise.resolve(Y));return L7A(B,J)}refine(A,Q){let B=(Y)=>{if(typeof Q==="string"||typeof Q>"u")return{message:Q};else if(typeof Q==="function")return Q(Y);else return Q};return this._refinement((Y,J)=>{let C=A(Y),X=()=>J.addIssue({code:RA.custom,...B(Y)});if(typeof Promise<"u"&&C instanceof Promise)return C.then((G)=>{if(!G)return X(),!1;else return!0});if(!C)return X(),!1;else return!0})}refinement(A,Q){return this._refinement((B,Y)=>{if(!A(B))return Y.addIssue(typeof Q==="function"?Q(B,Y):Q),!1;else return!0})}_refinement(A){return new fC({schema:this,typeName:zQ.ZodEffects,effect:{type:"refinement",refinement:A}})}superRefine(A){return this._refinement(A)}constructor(A){this.spa=this.safeParseAsync,this._def=A,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:(Q)=>this["~validate"](Q)}}optional(){return hC.create(this,this._def)}nullable(){return g6.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return gC.create(this)}promise(){return GZ.create(this,this._def)}or(A){return hU.create([this,A],this._def)}and(A){return xU.create(this,A,this._def)}transform(A){return new fC({...pQ(this._def),schema:this,typeName:zQ.ZodEffects,effect:{type:"transform",transform:A}})}default(A){let Q=typeof A==="function"?A:()=>A;return new uU({...pQ(this._def),innerType:this,defaultValue:Q,typeName:zQ.ZodDefault})}brand(){return new _R({typeName:zQ.ZodBranded,type:this,...pQ(this._def)})}catch(A){let Q=typeof A==="function"?A:()=>A;return new dU({...pQ(this._def),innerType:this,catchValue:Q,typeName:zQ.ZodCatch})}describe(A){return new this.constructor({...this._def,description:A})}pipe(A){return aH.create(this,A)}readonly(){return cU.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}var VQB=/^c[^\s-]{8,}$/i,IQB=/^[0-9a-z]+$/,HQB=/^[0-9A-HJKMNP-TV-Z]{26}$/i,DQB=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,NQB=/^[a-z0-9_-]{21}$/i,LQB=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,qQB=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,MQB=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,zQB="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Wf,RQB=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,wQB=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,jQB=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,OQB=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,PQB=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,TQB=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,M7A="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",SQB=new RegExp(`^${M7A}$`);function z7A(A){let Q="[0-5]\\d";if(A.precision)Q=`${Q}\\.\\d{${A.precision}}`;else if(A.precision==null)Q=`${Q}(\\.\\d+)?`;let B=A.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${Q})${B}`}function kQB(A){return new RegExp(`^${z7A(A)}$`)}function R7A(A){let Q=`${M7A}T${z7A(A)}`,B=[];if(B.push(A.local?"Z?":"Z"),A.offset)B.push("([+-]\\d{2}:?\\d{2})");return Q=`${Q}(${B.join("|")})`,new RegExp(`^${Q}$`)}function _QB(A,Q){if((Q==="v4"||!Q)&&RQB.test(A))return!0;if((Q==="v6"||!Q)&&jQB.test(A))return!0;return!1}function vQB(A,Q){if(!LQB.test(A))return!1;try{let[B]=A.split(".");if(!B)return!1;let Y=B.replace(/-/g,"+").replace(/_/g,"/").padEnd(B.length+(4-B.length%4)%4,"="),J=JSON.parse(atob(Y));if(typeof J!=="object"||J===null)return!1;if("typ"in J&&J?.typ!=="JWT")return!1;if(!J.alg)return!1;if(Q&&J.alg!==Q)return!1;return!0}catch{return!1}}function yQB(A,Q){if((Q==="v4"||!Q)&&wQB.test(A))return!0;if((Q==="v6"||!Q)&&OQB.test(A))return!0;return!1}class yC extends JB{_parse(A){if(this._def.coerce)A.data=String(A.data);if(this._getType(A)!==kA.string){let J=this._getOrReturnCtx(A);return xA(J,{code:RA.invalid_type,expected:kA.string,received:J.parsedType}),LQ}let B=new WJ,Y=void 0;for(let J of this._def.checks)if(J.kind==="min"){if(A.data.lengthJ.value)Y=this._getOrReturnCtx(A,Y),xA(Y,{code:RA.too_big,maximum:J.value,type:"string",inclusive:!0,exact:!1,message:J.message}),B.dirty()}else if(J.kind==="length"){let C=A.data.length>J.value,X=A.data.lengthA.test(Y),{validation:Q,code:RA.invalid_string,...tA.errToObj(B)})}_addCheck(A){return new yC({...this._def,checks:[...this._def.checks,A]})}email(A){return this._addCheck({kind:"email",...tA.errToObj(A)})}url(A){return this._addCheck({kind:"url",...tA.errToObj(A)})}emoji(A){return this._addCheck({kind:"emoji",...tA.errToObj(A)})}uuid(A){return this._addCheck({kind:"uuid",...tA.errToObj(A)})}nanoid(A){return this._addCheck({kind:"nanoid",...tA.errToObj(A)})}cuid(A){return this._addCheck({kind:"cuid",...tA.errToObj(A)})}cuid2(A){return this._addCheck({kind:"cuid2",...tA.errToObj(A)})}ulid(A){return this._addCheck({kind:"ulid",...tA.errToObj(A)})}base64(A){return this._addCheck({kind:"base64",...tA.errToObj(A)})}base64url(A){return this._addCheck({kind:"base64url",...tA.errToObj(A)})}jwt(A){return this._addCheck({kind:"jwt",...tA.errToObj(A)})}ip(A){return this._addCheck({kind:"ip",...tA.errToObj(A)})}cidr(A){return this._addCheck({kind:"cidr",...tA.errToObj(A)})}datetime(A){if(typeof A==="string")return this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:A});return this._addCheck({kind:"datetime",precision:typeof A?.precision>"u"?null:A?.precision,offset:A?.offset??!1,local:A?.local??!1,...tA.errToObj(A?.message)})}date(A){return this._addCheck({kind:"date",message:A})}time(A){if(typeof A==="string")return this._addCheck({kind:"time",precision:null,message:A});return this._addCheck({kind:"time",precision:typeof A?.precision>"u"?null:A?.precision,...tA.errToObj(A?.message)})}duration(A){return this._addCheck({kind:"duration",...tA.errToObj(A)})}regex(A,Q){return this._addCheck({kind:"regex",regex:A,...tA.errToObj(Q)})}includes(A,Q){return this._addCheck({kind:"includes",value:A,position:Q?.position,...tA.errToObj(Q?.message)})}startsWith(A,Q){return this._addCheck({kind:"startsWith",value:A,...tA.errToObj(Q)})}endsWith(A,Q){return this._addCheck({kind:"endsWith",value:A,...tA.errToObj(Q)})}min(A,Q){return this._addCheck({kind:"min",value:A,...tA.errToObj(Q)})}max(A,Q){return this._addCheck({kind:"max",value:A,...tA.errToObj(Q)})}length(A,Q){return this._addCheck({kind:"length",value:A,...tA.errToObj(Q)})}nonempty(A){return this.min(1,tA.errToObj(A))}trim(){return new yC({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new yC({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new yC({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find((A)=>A.kind==="datetime")}get isDate(){return!!this._def.checks.find((A)=>A.kind==="date")}get isTime(){return!!this._def.checks.find((A)=>A.kind==="time")}get isDuration(){return!!this._def.checks.find((A)=>A.kind==="duration")}get isEmail(){return!!this._def.checks.find((A)=>A.kind==="email")}get isURL(){return!!this._def.checks.find((A)=>A.kind==="url")}get isEmoji(){return!!this._def.checks.find((A)=>A.kind==="emoji")}get isUUID(){return!!this._def.checks.find((A)=>A.kind==="uuid")}get isNANOID(){return!!this._def.checks.find((A)=>A.kind==="nanoid")}get isCUID(){return!!this._def.checks.find((A)=>A.kind==="cuid")}get isCUID2(){return!!this._def.checks.find((A)=>A.kind==="cuid2")}get isULID(){return!!this._def.checks.find((A)=>A.kind==="ulid")}get isIP(){return!!this._def.checks.find((A)=>A.kind==="ip")}get isCIDR(){return!!this._def.checks.find((A)=>A.kind==="cidr")}get isBase64(){return!!this._def.checks.find((A)=>A.kind==="base64")}get isBase64url(){return!!this._def.checks.find((A)=>A.kind==="base64url")}get minLength(){let A=null;for(let Q of this._def.checks)if(Q.kind==="min"){if(A===null||Q.value>A)A=Q.value}return A}get maxLength(){let A=null;for(let Q of this._def.checks)if(Q.kind==="max"){if(A===null||Q.value{return new yC({checks:[],typeName:zQ.ZodString,coerce:A?.coerce??!1,...pQ(A)})};function gQB(A,Q){let B=(A.toString().split(".")[1]||"").length,Y=(Q.toString().split(".")[1]||"").length,J=B>Y?B:Y,C=Number.parseInt(A.toFixed(J).replace(".","")),X=Number.parseInt(Q.toFixed(J).replace(".",""));return C%X/10**J}class O7 extends JB{constructor(){super(...arguments);this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(A){if(this._def.coerce)A.data=Number(A.data);if(this._getType(A)!==kA.number){let J=this._getOrReturnCtx(A);return xA(J,{code:RA.invalid_type,expected:kA.number,received:J.parsedType}),LQ}let B=void 0,Y=new WJ;for(let J of this._def.checks)if(J.kind==="int"){if(!FB.isInteger(A.data))B=this._getOrReturnCtx(A,B),xA(B,{code:RA.invalid_type,expected:"integer",received:"float",message:J.message}),Y.dirty()}else if(J.kind==="min"){if(J.inclusive?A.dataJ.value:A.data>=J.value)B=this._getOrReturnCtx(A,B),xA(B,{code:RA.too_big,maximum:J.value,type:"number",inclusive:J.inclusive,exact:!1,message:J.message}),Y.dirty()}else if(J.kind==="multipleOf"){if(gQB(A.data,J.value)!==0)B=this._getOrReturnCtx(A,B),xA(B,{code:RA.not_multiple_of,multipleOf:J.value,message:J.message}),Y.dirty()}else if(J.kind==="finite"){if(!Number.isFinite(A.data))B=this._getOrReturnCtx(A,B),xA(B,{code:RA.not_finite,message:J.message}),Y.dirty()}else FB.assertNever(J);return{status:Y.value,value:A.data}}gte(A,Q){return this.setLimit("min",A,!0,tA.toString(Q))}gt(A,Q){return this.setLimit("min",A,!1,tA.toString(Q))}lte(A,Q){return this.setLimit("max",A,!0,tA.toString(Q))}lt(A,Q){return this.setLimit("max",A,!1,tA.toString(Q))}setLimit(A,Q,B,Y){return new O7({...this._def,checks:[...this._def.checks,{kind:A,value:Q,inclusive:B,message:tA.toString(Y)}]})}_addCheck(A){return new O7({...this._def,checks:[...this._def.checks,A]})}int(A){return this._addCheck({kind:"int",message:tA.toString(A)})}positive(A){return this._addCheck({kind:"min",value:0,inclusive:!1,message:tA.toString(A)})}negative(A){return this._addCheck({kind:"max",value:0,inclusive:!1,message:tA.toString(A)})}nonpositive(A){return this._addCheck({kind:"max",value:0,inclusive:!0,message:tA.toString(A)})}nonnegative(A){return this._addCheck({kind:"min",value:0,inclusive:!0,message:tA.toString(A)})}multipleOf(A,Q){return this._addCheck({kind:"multipleOf",value:A,message:tA.toString(Q)})}finite(A){return this._addCheck({kind:"finite",message:tA.toString(A)})}safe(A){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:tA.toString(A)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:tA.toString(A)})}get minValue(){let A=null;for(let Q of this._def.checks)if(Q.kind==="min"){if(A===null||Q.value>A)A=Q.value}return A}get maxValue(){let A=null;for(let Q of this._def.checks)if(Q.kind==="max"){if(A===null||Q.valueA.kind==="int"||A.kind==="multipleOf"&&FB.isInteger(A.value))}get isFinite(){let A=null,Q=null;for(let B of this._def.checks)if(B.kind==="finite"||B.kind==="int"||B.kind==="multipleOf")return!0;else if(B.kind==="min"){if(Q===null||B.value>Q)Q=B.value}else if(B.kind==="max"){if(A===null||B.value{return new O7({checks:[],typeName:zQ.ZodNumber,coerce:A?.coerce||!1,...pQ(A)})};class P7 extends JB{constructor(){super(...arguments);this.min=this.gte,this.max=this.lte}_parse(A){if(this._def.coerce)try{A.data=BigInt(A.data)}catch{return this._getInvalidInput(A)}if(this._getType(A)!==kA.bigint)return this._getInvalidInput(A);let B=void 0,Y=new WJ;for(let J of this._def.checks)if(J.kind==="min"){if(J.inclusive?A.dataJ.value:A.data>=J.value)B=this._getOrReturnCtx(A,B),xA(B,{code:RA.too_big,type:"bigint",maximum:J.value,inclusive:J.inclusive,message:J.message}),Y.dirty()}else if(J.kind==="multipleOf"){if(A.data%J.value!==BigInt(0))B=this._getOrReturnCtx(A,B),xA(B,{code:RA.not_multiple_of,multipleOf:J.value,message:J.message}),Y.dirty()}else FB.assertNever(J);return{status:Y.value,value:A.data}}_getInvalidInput(A){let Q=this._getOrReturnCtx(A);return xA(Q,{code:RA.invalid_type,expected:kA.bigint,received:Q.parsedType}),LQ}gte(A,Q){return this.setLimit("min",A,!0,tA.toString(Q))}gt(A,Q){return this.setLimit("min",A,!1,tA.toString(Q))}lte(A,Q){return this.setLimit("max",A,!0,tA.toString(Q))}lt(A,Q){return this.setLimit("max",A,!1,tA.toString(Q))}setLimit(A,Q,B,Y){return new P7({...this._def,checks:[...this._def.checks,{kind:A,value:Q,inclusive:B,message:tA.toString(Y)}]})}_addCheck(A){return new P7({...this._def,checks:[...this._def.checks,A]})}positive(A){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:tA.toString(A)})}negative(A){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:tA.toString(A)})}nonpositive(A){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:tA.toString(A)})}nonnegative(A){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:tA.toString(A)})}multipleOf(A,Q){return this._addCheck({kind:"multipleOf",value:A,message:tA.toString(Q)})}get minValue(){let A=null;for(let Q of this._def.checks)if(Q.kind==="min"){if(A===null||Q.value>A)A=Q.value}return A}get maxValue(){let A=null;for(let Q of this._def.checks)if(Q.kind==="max"){if(A===null||Q.value{return new P7({checks:[],typeName:zQ.ZodBigInt,coerce:A?.coerce??!1,...pQ(A)})};class vU extends JB{_parse(A){if(this._def.coerce)A.data=Boolean(A.data);if(this._getType(A)!==kA.boolean){let B=this._getOrReturnCtx(A);return xA(B,{code:RA.invalid_type,expected:kA.boolean,received:B.parsedType}),LQ}return wJ(A.data)}}vU.create=(A)=>{return new vU({typeName:zQ.ZodBoolean,coerce:A?.coerce||!1,...pQ(A)})};class JZ extends JB{_parse(A){if(this._def.coerce)A.data=new Date(A.data);if(this._getType(A)!==kA.date){let J=this._getOrReturnCtx(A);return xA(J,{code:RA.invalid_type,expected:kA.date,received:J.parsedType}),LQ}if(Number.isNaN(A.data.getTime())){let J=this._getOrReturnCtx(A);return xA(J,{code:RA.invalid_date}),LQ}let B=new WJ,Y=void 0;for(let J of this._def.checks)if(J.kind==="min"){if(A.data.getTime()J.value)Y=this._getOrReturnCtx(A,Y),xA(Y,{code:RA.too_big,message:J.message,inclusive:!0,exact:!1,maximum:J.value,type:"date"}),B.dirty()}else FB.assertNever(J);return{status:B.value,value:new Date(A.data.getTime())}}_addCheck(A){return new JZ({...this._def,checks:[...this._def.checks,A]})}min(A,Q){return this._addCheck({kind:"min",value:A.getTime(),message:tA.toString(Q)})}max(A,Q){return this._addCheck({kind:"max",value:A.getTime(),message:tA.toString(Q)})}get minDate(){let A=null;for(let Q of this._def.checks)if(Q.kind==="min"){if(A===null||Q.value>A)A=Q.value}return A!=null?new Date(A):null}get maxDate(){let A=null;for(let Q of this._def.checks)if(Q.kind==="max"){if(A===null||Q.value{return new JZ({checks:[],coerce:A?.coerce||!1,typeName:zQ.ZodDate,...pQ(A)})};class pH extends JB{_parse(A){if(this._getType(A)!==kA.symbol){let B=this._getOrReturnCtx(A);return xA(B,{code:RA.invalid_type,expected:kA.symbol,received:B.parsedType}),LQ}return wJ(A.data)}}pH.create=(A)=>{return new pH({typeName:zQ.ZodSymbol,...pQ(A)})};class yU extends JB{_parse(A){if(this._getType(A)!==kA.undefined){let B=this._getOrReturnCtx(A);return xA(B,{code:RA.invalid_type,expected:kA.undefined,received:B.parsedType}),LQ}return wJ(A.data)}}yU.create=(A)=>{return new yU({typeName:zQ.ZodUndefined,...pQ(A)})};class gU extends JB{_parse(A){if(this._getType(A)!==kA.null){let B=this._getOrReturnCtx(A);return xA(B,{code:RA.invalid_type,expected:kA.null,received:B.parsedType}),LQ}return wJ(A.data)}}gU.create=(A)=>{return new gU({typeName:zQ.ZodNull,...pQ(A)})};class CZ extends JB{constructor(){super(...arguments);this._any=!0}_parse(A){return wJ(A.data)}}CZ.create=(A)=>{return new CZ({typeName:zQ.ZodAny,...pQ(A)})};class j7 extends JB{constructor(){super(...arguments);this._unknown=!0}_parse(A){return wJ(A.data)}}j7.create=(A)=>{return new j7({typeName:zQ.ZodUnknown,...pQ(A)})};class r1 extends JB{_parse(A){let Q=this._getOrReturnCtx(A);return xA(Q,{code:RA.invalid_type,expected:kA.never,received:Q.parsedType}),LQ}}r1.create=(A)=>{return new r1({typeName:zQ.ZodNever,...pQ(A)})};class iH extends JB{_parse(A){if(this._getType(A)!==kA.undefined){let B=this._getOrReturnCtx(A);return xA(B,{code:RA.invalid_type,expected:kA.void,received:B.parsedType}),LQ}return wJ(A.data)}}iH.create=(A)=>{return new iH({typeName:zQ.ZodVoid,...pQ(A)})};class gC extends JB{_parse(A){let{ctx:Q,status:B}=this._processInputParams(A),Y=this._def;if(Q.parsedType!==kA.array)return xA(Q,{code:RA.invalid_type,expected:kA.array,received:Q.parsedType}),LQ;if(Y.exactLength!==null){let C=Q.data.length>Y.exactLength.value,X=Q.data.lengthY.maxLength.value)xA(Q,{code:RA.too_big,maximum:Y.maxLength.value,type:"array",inclusive:!0,exact:!1,message:Y.maxLength.message}),B.dirty()}if(Q.common.async)return Promise.all([...Q.data].map((C,X)=>{return Y.type._parseAsync(new xC(Q,C,Q.path,X))})).then((C)=>{return WJ.mergeArray(B,C)});let J=[...Q.data].map((C,X)=>{return Y.type._parseSync(new xC(Q,C,Q.path,X))});return WJ.mergeArray(B,J)}get element(){return this._def.type}min(A,Q){return new gC({...this._def,minLength:{value:A,message:tA.toString(Q)}})}max(A,Q){return new gC({...this._def,maxLength:{value:A,message:tA.toString(Q)}})}length(A,Q){return new gC({...this._def,exactLength:{value:A,message:tA.toString(Q)}})}nonempty(A){return this.min(1,A)}}gC.create=(A,Q)=>{return new gC({type:A,minLength:null,maxLength:null,exactLength:null,typeName:zQ.ZodArray,...pQ(Q)})};function kU(A){if(A instanceof y0){let Q={};for(let B in A.shape){let Y=A.shape[B];Q[B]=hC.create(kU(Y))}return new y0({...A._def,shape:()=>Q})}else if(A instanceof gC)return new gC({...A._def,type:kU(A.element)});else if(A instanceof hC)return hC.create(kU(A.unwrap()));else if(A instanceof g6)return g6.create(kU(A.unwrap()));else if(A instanceof a1)return a1.create(A.items.map((Q)=>kU(Q)));else return A}class y0 extends JB{constructor(){super(...arguments);this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let A=this._def.shape(),Q=FB.objectKeys(A);return this._cached={shape:A,keys:Q},this._cached}_parse(A){if(this._getType(A)!==kA.object){let W=this._getOrReturnCtx(A);return xA(W,{code:RA.invalid_type,expected:kA.object,received:W.parsedType}),LQ}let{status:B,ctx:Y}=this._processInputParams(A),{shape:J,keys:C}=this._getCached(),X=[];if(!(this._def.catchall instanceof r1&&this._def.unknownKeys==="strip")){for(let W in Y.data)if(!C.includes(W))X.push(W)}let G=[];for(let W of C){let F=J[W],Z=Y.data[W];G.push({key:{status:"valid",value:W},value:F._parse(new xC(Y,Z,Y.path,W)),alwaysSet:W in Y.data})}if(this._def.catchall instanceof r1){let W=this._def.unknownKeys;if(W==="passthrough")for(let F of X)G.push({key:{status:"valid",value:F},value:{status:"valid",value:Y.data[F]}});else if(W==="strict"){if(X.length>0)xA(Y,{code:RA.unrecognized_keys,keys:X}),B.dirty()}else if(W==="strip");else throw Error("Internal ZodObject error: invalid unknownKeys value.")}else{let W=this._def.catchall;for(let F of X){let Z=Y.data[F];G.push({key:{status:"valid",value:F},value:W._parse(new xC(Y,Z,Y.path,F)),alwaysSet:F in Y.data})}}if(Y.common.async)return Promise.resolve().then(async()=>{let W=[];for(let F of G){let Z=await F.key,U=await F.value;W.push({key:Z,value:U,alwaysSet:F.alwaysSet})}return W}).then((W)=>{return WJ.mergeObjectSync(B,W)});else return WJ.mergeObjectSync(B,G)}get shape(){return this._def.shape()}strict(A){return tA.errToObj,new y0({...this._def,unknownKeys:"strict",...A!==void 0?{errorMap:(Q,B)=>{let Y=this._def.errorMap?.(Q,B).message??B.defaultError;if(Q.code==="unrecognized_keys")return{message:tA.errToObj(A).message??Y};return{message:Y}}}:{}})}strip(){return new y0({...this._def,unknownKeys:"strip"})}passthrough(){return new y0({...this._def,unknownKeys:"passthrough"})}extend(A){return new y0({...this._def,shape:()=>({...this._def.shape(),...A})})}merge(A){return new y0({unknownKeys:A._def.unknownKeys,catchall:A._def.catchall,shape:()=>({...this._def.shape(),...A._def.shape()}),typeName:zQ.ZodObject})}setKey(A,Q){return this.augment({[A]:Q})}catchall(A){return new y0({...this._def,catchall:A})}pick(A){let Q={};for(let B of FB.objectKeys(A))if(A[B]&&this.shape[B])Q[B]=this.shape[B];return new y0({...this._def,shape:()=>Q})}omit(A){let Q={};for(let B of FB.objectKeys(this.shape))if(!A[B])Q[B]=this.shape[B];return new y0({...this._def,shape:()=>Q})}deepPartial(){return kU(this)}partial(A){let Q={};for(let B of FB.objectKeys(this.shape)){let Y=this.shape[B];if(A&&!A[B])Q[B]=Y;else Q[B]=Y.optional()}return new y0({...this._def,shape:()=>Q})}required(A){let Q={};for(let B of FB.objectKeys(this.shape))if(A&&!A[B])Q[B]=this.shape[B];else{let J=this.shape[B];while(J instanceof hC)J=J._def.innerType;Q[B]=J}return new y0({...this._def,shape:()=>Q})}keyof(){return w7A(FB.objectKeys(this.shape))}}y0.create=(A,Q)=>{return new y0({shape:()=>A,unknownKeys:"strip",catchall:r1.create(),typeName:zQ.ZodObject,...pQ(Q)})};y0.strictCreate=(A,Q)=>{return new y0({shape:()=>A,unknownKeys:"strict",catchall:r1.create(),typeName:zQ.ZodObject,...pQ(Q)})};y0.lazycreate=(A,Q)=>{return new y0({shape:A,unknownKeys:"strip",catchall:r1.create(),typeName:zQ.ZodObject,...pQ(Q)})};class hU extends JB{_parse(A){let{ctx:Q}=this._processInputParams(A),B=this._def.options;function Y(J){for(let X of J)if(X.result.status==="valid")return X.result;for(let X of J)if(X.result.status==="dirty")return Q.common.issues.push(...X.ctx.common.issues),X.result;let C=J.map((X)=>new g9(X.ctx.common.issues));return xA(Q,{code:RA.invalid_union,unionErrors:C}),LQ}if(Q.common.async)return Promise.all(B.map(async(J)=>{let C={...Q,common:{...Q.common,issues:[]},parent:null};return{result:await J._parseAsync({data:Q.data,path:Q.path,parent:C}),ctx:C}})).then(Y);else{let J=void 0,C=[];for(let G of B){let W={...Q,common:{...Q.common,issues:[]},parent:null},F=G._parseSync({data:Q.data,path:Q.path,parent:W});if(F.status==="valid")return F;else if(F.status==="dirty"&&!J)J={result:F,ctx:W};if(W.common.issues.length)C.push(W.common.issues)}if(J)return Q.common.issues.push(...J.ctx.common.issues),J.result;let X=C.map((G)=>new g9(G));return xA(Q,{code:RA.invalid_union,unionErrors:X}),LQ}}get options(){return this._def.options}}hU.create=(A,Q)=>{return new hU({options:A,typeName:zQ.ZodUnion,...pQ(Q)})};var y6=(A)=>{if(A instanceof fU)return y6(A.schema);else if(A instanceof fC)return y6(A.innerType());else if(A instanceof bU)return[A.value];else if(A instanceof T7)return A.options;else if(A instanceof mU)return FB.objectValues(A.enum);else if(A instanceof uU)return y6(A._def.innerType);else if(A instanceof yU)return[void 0];else if(A instanceof gU)return[null];else if(A instanceof hC)return[void 0,...y6(A.unwrap())];else if(A instanceof g6)return[null,...y6(A.unwrap())];else if(A instanceof _R)return y6(A.unwrap());else if(A instanceof cU)return y6(A.unwrap());else if(A instanceof dU)return y6(A._def.innerType);else return[]};class kR extends JB{_parse(A){let{ctx:Q}=this._processInputParams(A);if(Q.parsedType!==kA.object)return xA(Q,{code:RA.invalid_type,expected:kA.object,received:Q.parsedType}),LQ;let B=this.discriminator,Y=Q.data[B],J=this.optionsMap.get(Y);if(!J)return xA(Q,{code:RA.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[B]}),LQ;if(Q.common.async)return J._parseAsync({data:Q.data,path:Q.path,parent:Q});else return J._parseSync({data:Q.data,path:Q.path,parent:Q})}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(A,Q,B){let Y=new Map;for(let J of Q){let C=y6(J.shape[A]);if(!C.length)throw Error(`A discriminator value for key \`${A}\` could not be extracted from all schema options`);for(let X of C){if(Y.has(X))throw Error(`Discriminator property ${String(A)} has duplicate value ${String(X)}`);Y.set(X,J)}}return new kR({typeName:zQ.ZodDiscriminatedUnion,discriminator:A,options:Q,optionsMap:Y,...pQ(B)})}}function Ff(A,Q){let B=s1(A),Y=s1(Q);if(A===Q)return{valid:!0,data:A};else if(B===kA.object&&Y===kA.object){let J=FB.objectKeys(Q),C=FB.objectKeys(A).filter((G)=>J.indexOf(G)!==-1),X={...A,...Q};for(let G of C){let W=Ff(A[G],Q[G]);if(!W.valid)return{valid:!1};X[G]=W.data}return{valid:!0,data:X}}else if(B===kA.array&&Y===kA.array){if(A.length!==Q.length)return{valid:!1};let J=[];for(let C=0;C{if(TR(J)||TR(C))return LQ;let X=Ff(J.value,C.value);if(!X.valid)return xA(B,{code:RA.invalid_intersection_types}),LQ;if(SR(J)||SR(C))Q.dirty();return{status:Q.value,value:X.data}};if(B.common.async)return Promise.all([this._def.left._parseAsync({data:B.data,path:B.path,parent:B}),this._def.right._parseAsync({data:B.data,path:B.path,parent:B})]).then(([J,C])=>Y(J,C));else return Y(this._def.left._parseSync({data:B.data,path:B.path,parent:B}),this._def.right._parseSync({data:B.data,path:B.path,parent:B}))}}xU.create=(A,Q,B)=>{return new xU({left:A,right:Q,typeName:zQ.ZodIntersection,...pQ(B)})};class a1 extends JB{_parse(A){let{status:Q,ctx:B}=this._processInputParams(A);if(B.parsedType!==kA.array)return xA(B,{code:RA.invalid_type,expected:kA.array,received:B.parsedType}),LQ;if(B.data.lengththis._def.items.length)xA(B,{code:RA.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),Q.dirty();let J=[...B.data].map((C,X)=>{let G=this._def.items[X]||this._def.rest;if(!G)return null;return G._parse(new xC(B,C,B.path,X))}).filter((C)=>!!C);if(B.common.async)return Promise.all(J).then((C)=>{return WJ.mergeArray(Q,C)});else return WJ.mergeArray(Q,J)}get items(){return this._def.items}rest(A){return new a1({...this._def,rest:A})}}a1.create=(A,Q)=>{if(!Array.isArray(A))throw Error("You must pass an array of schemas to z.tuple([ ... ])");return new a1({items:A,typeName:zQ.ZodTuple,rest:null,...pQ(Q)})};class nH extends JB{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(A){let{status:Q,ctx:B}=this._processInputParams(A);if(B.parsedType!==kA.object)return xA(B,{code:RA.invalid_type,expected:kA.object,received:B.parsedType}),LQ;let Y=[],J=this._def.keyType,C=this._def.valueType;for(let X in B.data)Y.push({key:J._parse(new xC(B,X,B.path,X)),value:C._parse(new xC(B,B.data[X],B.path,X)),alwaysSet:X in B.data});if(B.common.async)return WJ.mergeObjectAsync(Q,Y);else return WJ.mergeObjectSync(Q,Y)}get element(){return this._def.valueType}static create(A,Q,B){if(Q instanceof JB)return new nH({keyType:A,valueType:Q,typeName:zQ.ZodRecord,...pQ(B)});return new nH({keyType:yC.create(),valueType:A,typeName:zQ.ZodRecord,...pQ(Q)})}}class sH extends JB{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(A){let{status:Q,ctx:B}=this._processInputParams(A);if(B.parsedType!==kA.map)return xA(B,{code:RA.invalid_type,expected:kA.map,received:B.parsedType}),LQ;let Y=this._def.keyType,J=this._def.valueType,C=[...B.data.entries()].map(([X,G],W)=>{return{key:Y._parse(new xC(B,X,B.path,[W,"key"])),value:J._parse(new xC(B,G,B.path,[W,"value"]))}});if(B.common.async){let X=new Map;return Promise.resolve().then(async()=>{for(let G of C){let W=await G.key,F=await G.value;if(W.status==="aborted"||F.status==="aborted")return LQ;if(W.status==="dirty"||F.status==="dirty")Q.dirty();X.set(W.value,F.value)}return{status:Q.value,value:X}})}else{let X=new Map;for(let G of C){let{key:W,value:F}=G;if(W.status==="aborted"||F.status==="aborted")return LQ;if(W.status==="dirty"||F.status==="dirty")Q.dirty();X.set(W.value,F.value)}return{status:Q.value,value:X}}}}sH.create=(A,Q,B)=>{return new sH({valueType:Q,keyType:A,typeName:zQ.ZodMap,...pQ(B)})};class XZ extends JB{_parse(A){let{status:Q,ctx:B}=this._processInputParams(A);if(B.parsedType!==kA.set)return xA(B,{code:RA.invalid_type,expected:kA.set,received:B.parsedType}),LQ;let Y=this._def;if(Y.minSize!==null){if(B.data.sizeY.maxSize.value)xA(B,{code:RA.too_big,maximum:Y.maxSize.value,type:"set",inclusive:!0,exact:!1,message:Y.maxSize.message}),Q.dirty()}let J=this._def.valueType;function C(G){let W=new Set;for(let F of G){if(F.status==="aborted")return LQ;if(F.status==="dirty")Q.dirty();W.add(F.value)}return{status:Q.value,value:W}}let X=[...B.data.values()].map((G,W)=>J._parse(new xC(B,G,B.path,W)));if(B.common.async)return Promise.all(X).then((G)=>C(G));else return C(X)}min(A,Q){return new XZ({...this._def,minSize:{value:A,message:tA.toString(Q)}})}max(A,Q){return new XZ({...this._def,maxSize:{value:A,message:tA.toString(Q)}})}size(A,Q){return this.min(A,Q).max(A,Q)}nonempty(A){return this.min(1,A)}}XZ.create=(A,Q)=>{return new XZ({valueType:A,minSize:null,maxSize:null,typeName:zQ.ZodSet,...pQ(Q)})};class _U extends JB{constructor(){super(...arguments);this.validate=this.implement}_parse(A){let{ctx:Q}=this._processInputParams(A);if(Q.parsedType!==kA.function)return xA(Q,{code:RA.invalid_type,expected:kA.function,received:Q.parsedType}),LQ;function B(X,G){return lH({data:X,path:Q.path,errorMaps:[Q.common.contextualErrorMap,Q.schemaErrorMap,TU(),v6].filter((W)=>!!W),issueData:{code:RA.invalid_arguments,argumentsError:G}})}function Y(X,G){return lH({data:X,path:Q.path,errorMaps:[Q.common.contextualErrorMap,Q.schemaErrorMap,TU(),v6].filter((W)=>!!W),issueData:{code:RA.invalid_return_type,returnTypeError:G}})}let J={errorMap:Q.common.contextualErrorMap},C=Q.data;if(this._def.returns instanceof GZ){let X=this;return wJ(async function(...G){let W=new g9([]),F=await X._def.args.parseAsync(G,J).catch(($)=>{throw W.addIssue(B(G,$)),W}),Z=await Reflect.apply(C,this,F);return await X._def.returns._def.type.parseAsync(Z,J).catch(($)=>{throw W.addIssue(Y(Z,$)),W})})}else{let X=this;return wJ(function(...G){let W=X._def.args.safeParse(G,J);if(!W.success)throw new g9([B(G,W.error)]);let F=Reflect.apply(C,this,W.data),Z=X._def.returns.safeParse(F,J);if(!Z.success)throw new g9([Y(F,Z.error)]);return Z.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...A){return new _U({...this._def,args:a1.create(A).rest(j7.create())})}returns(A){return new _U({...this._def,returns:A})}implement(A){return this.parse(A)}strictImplement(A){return this.parse(A)}static create(A,Q,B){return new _U({args:A?A:a1.create([]).rest(j7.create()),returns:Q||j7.create(),typeName:zQ.ZodFunction,...pQ(B)})}}class fU extends JB{get schema(){return this._def.getter()}_parse(A){let{ctx:Q}=this._processInputParams(A);return this._def.getter()._parse({data:Q.data,path:Q.path,parent:Q})}}fU.create=(A,Q)=>{return new fU({getter:A,typeName:zQ.ZodLazy,...pQ(Q)})};class bU extends JB{_parse(A){if(A.data!==this._def.value){let Q=this._getOrReturnCtx(A);return xA(Q,{received:Q.data,code:RA.invalid_literal,expected:this._def.value}),LQ}return{status:"valid",value:A.data}}get value(){return this._def.value}}bU.create=(A,Q)=>{return new bU({value:A,typeName:zQ.ZodLiteral,...pQ(Q)})};function w7A(A,Q){return new T7({values:A,typeName:zQ.ZodEnum,...pQ(Q)})}class T7 extends JB{_parse(A){if(typeof A.data!=="string"){let Q=this._getOrReturnCtx(A),B=this._def.values;return xA(Q,{expected:FB.joinValues(B),received:Q.parsedType,code:RA.invalid_type}),LQ}if(!this._cache)this._cache=new Set(this._def.values);if(!this._cache.has(A.data)){let Q=this._getOrReturnCtx(A),B=this._def.values;return xA(Q,{received:Q.data,code:RA.invalid_enum_value,options:B}),LQ}return wJ(A.data)}get options(){return this._def.values}get enum(){let A={};for(let Q of this._def.values)A[Q]=Q;return A}get Values(){let A={};for(let Q of this._def.values)A[Q]=Q;return A}get Enum(){let A={};for(let Q of this._def.values)A[Q]=Q;return A}extract(A,Q=this._def){return T7.create(A,{...this._def,...Q})}exclude(A,Q=this._def){return T7.create(this.options.filter((B)=>!A.includes(B)),{...this._def,...Q})}}T7.create=w7A;class mU extends JB{_parse(A){let Q=FB.getValidEnumValues(this._def.values),B=this._getOrReturnCtx(A);if(B.parsedType!==kA.string&&B.parsedType!==kA.number){let Y=FB.objectValues(Q);return xA(B,{expected:FB.joinValues(Y),received:B.parsedType,code:RA.invalid_type}),LQ}if(!this._cache)this._cache=new Set(FB.getValidEnumValues(this._def.values));if(!this._cache.has(A.data)){let Y=FB.objectValues(Q);return xA(B,{received:B.data,code:RA.invalid_enum_value,options:Y}),LQ}return wJ(A.data)}get enum(){return this._def.values}}mU.create=(A,Q)=>{return new mU({values:A,typeName:zQ.ZodNativeEnum,...pQ(Q)})};class GZ extends JB{unwrap(){return this._def.type}_parse(A){let{ctx:Q}=this._processInputParams(A);if(Q.parsedType!==kA.promise&&Q.common.async===!1)return xA(Q,{code:RA.invalid_type,expected:kA.promise,received:Q.parsedType}),LQ;let B=Q.parsedType===kA.promise?Q.data:Promise.resolve(Q.data);return wJ(B.then((Y)=>{return this._def.type.parseAsync(Y,{path:Q.path,errorMap:Q.common.contextualErrorMap})}))}}GZ.create=(A,Q)=>{return new GZ({type:A,typeName:zQ.ZodPromise,...pQ(Q)})};class fC extends JB{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===zQ.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(A){let{status:Q,ctx:B}=this._processInputParams(A),Y=this._def.effect||null,J={addIssue:(C)=>{if(xA(B,C),C.fatal)Q.abort();else Q.dirty()},get path(){return B.path}};if(J.addIssue=J.addIssue.bind(J),Y.type==="preprocess"){let C=Y.transform(B.data,J);if(B.common.async)return Promise.resolve(C).then(async(X)=>{if(Q.value==="aborted")return LQ;let G=await this._def.schema._parseAsync({data:X,path:B.path,parent:B});if(G.status==="aborted")return LQ;if(G.status==="dirty")return YZ(G.value);if(Q.value==="dirty")return YZ(G.value);return G});else{if(Q.value==="aborted")return LQ;let X=this._def.schema._parseSync({data:C,path:B.path,parent:B});if(X.status==="aborted")return LQ;if(X.status==="dirty")return YZ(X.value);if(Q.value==="dirty")return YZ(X.value);return X}}if(Y.type==="refinement"){let C=(X)=>{let G=Y.refinement(X,J);if(B.common.async)return Promise.resolve(G);if(G instanceof Promise)throw Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return X};if(B.common.async===!1){let X=this._def.schema._parseSync({data:B.data,path:B.path,parent:B});if(X.status==="aborted")return LQ;if(X.status==="dirty")Q.dirty();return C(X.value),{status:Q.value,value:X.value}}else return this._def.schema._parseAsync({data:B.data,path:B.path,parent:B}).then((X)=>{if(X.status==="aborted")return LQ;if(X.status==="dirty")Q.dirty();return C(X.value).then(()=>{return{status:Q.value,value:X.value}})})}if(Y.type==="transform")if(B.common.async===!1){let C=this._def.schema._parseSync({data:B.data,path:B.path,parent:B});if(!w7(C))return LQ;let X=Y.transform(C.value,J);if(X instanceof Promise)throw Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:Q.value,value:X}}else return this._def.schema._parseAsync({data:B.data,path:B.path,parent:B}).then((C)=>{if(!w7(C))return LQ;return Promise.resolve(Y.transform(C.value,J)).then((X)=>({status:Q.value,value:X}))});FB.assertNever(Y)}}fC.create=(A,Q,B)=>{return new fC({schema:A,typeName:zQ.ZodEffects,effect:Q,...pQ(B)})};fC.createWithPreprocess=(A,Q,B)=>{return new fC({schema:Q,effect:{type:"preprocess",transform:A},typeName:zQ.ZodEffects,...pQ(B)})};class hC extends JB{_parse(A){if(this._getType(A)===kA.undefined)return wJ(void 0);return this._def.innerType._parse(A)}unwrap(){return this._def.innerType}}hC.create=(A,Q)=>{return new hC({innerType:A,typeName:zQ.ZodOptional,...pQ(Q)})};class g6 extends JB{_parse(A){if(this._getType(A)===kA.null)return wJ(null);return this._def.innerType._parse(A)}unwrap(){return this._def.innerType}}g6.create=(A,Q)=>{return new g6({innerType:A,typeName:zQ.ZodNullable,...pQ(Q)})};class uU extends JB{_parse(A){let{ctx:Q}=this._processInputParams(A),B=Q.data;if(Q.parsedType===kA.undefined)B=this._def.defaultValue();return this._def.innerType._parse({data:B,path:Q.path,parent:Q})}removeDefault(){return this._def.innerType}}uU.create=(A,Q)=>{return new uU({innerType:A,typeName:zQ.ZodDefault,defaultValue:typeof Q.default==="function"?Q.default:()=>Q.default,...pQ(Q)})};class dU extends JB{_parse(A){let{ctx:Q}=this._processInputParams(A),B={...Q,common:{...Q.common,issues:[]}},Y=this._def.innerType._parse({data:B.data,path:B.path,parent:{...B}});if(SU(Y))return Y.then((J)=>{return{status:"valid",value:J.status==="valid"?J.value:this._def.catchValue({get error(){return new g9(B.common.issues)},input:B.data})}});else return{status:"valid",value:Y.status==="valid"?Y.value:this._def.catchValue({get error(){return new g9(B.common.issues)},input:B.data})}}removeCatch(){return this._def.innerType}}dU.create=(A,Q)=>{return new dU({innerType:A,typeName:zQ.ZodCatch,catchValue:typeof Q.catch==="function"?Q.catch:()=>Q.catch,...pQ(Q)})};class rH extends JB{_parse(A){if(this._getType(A)!==kA.nan){let B=this._getOrReturnCtx(A);return xA(B,{code:RA.invalid_type,expected:kA.nan,received:B.parsedType}),LQ}return{status:"valid",value:A.data}}}rH.create=(A)=>{return new rH({typeName:zQ.ZodNaN,...pQ(A)})};var hQB=Symbol("zod_brand");class _R extends JB{_parse(A){let{ctx:Q}=this._processInputParams(A),B=Q.data;return this._def.type._parse({data:B,path:Q.path,parent:Q})}unwrap(){return this._def.type}}class aH extends JB{_parse(A){let{status:Q,ctx:B}=this._processInputParams(A);if(B.common.async)return(async()=>{let J=await this._def.in._parseAsync({data:B.data,path:B.path,parent:B});if(J.status==="aborted")return LQ;if(J.status==="dirty")return Q.dirty(),YZ(J.value);else return this._def.out._parseAsync({data:J.value,path:B.path,parent:B})})();else{let Y=this._def.in._parseSync({data:B.data,path:B.path,parent:B});if(Y.status==="aborted")return LQ;if(Y.status==="dirty")return Q.dirty(),{status:"dirty",value:Y.value};else return this._def.out._parseSync({data:Y.value,path:B.path,parent:B})}}static create(A,Q){return new aH({in:A,out:Q,typeName:zQ.ZodPipeline})}}class cU extends JB{_parse(A){let Q=this._def.innerType._parse(A),B=(Y)=>{if(w7(Y))Y.value=Object.freeze(Y.value);return Y};return SU(Q)?Q.then((Y)=>B(Y)):B(Q)}unwrap(){return this._def.innerType}}cU.create=(A,Q)=>{return new cU({innerType:A,typeName:zQ.ZodReadonly,...pQ(Q)})};function q7A(A,Q){let B=typeof A==="function"?A(Q):typeof A==="string"?{message:A}:A;return typeof B==="string"?{message:B}:B}function j7A(A,Q={},B){if(A)return CZ.create().superRefine((Y,J)=>{let C=A(Y);if(C instanceof Promise)return C.then((X)=>{if(!X){let G=q7A(Q,Y),W=G.fatal??B??!0;J.addIssue({code:"custom",...G,fatal:W})}});if(!C){let X=q7A(Q,Y),G=X.fatal??B??!0;J.addIssue({code:"custom",...X,fatal:G})}return});return CZ.create()}var xQB={object:y0.lazycreate},zQ;(function(A){A.ZodString="ZodString",A.ZodNumber="ZodNumber",A.ZodNaN="ZodNaN",A.ZodBigInt="ZodBigInt",A.ZodBoolean="ZodBoolean",A.ZodDate="ZodDate",A.ZodSymbol="ZodSymbol",A.ZodUndefined="ZodUndefined",A.ZodNull="ZodNull",A.ZodAny="ZodAny",A.ZodUnknown="ZodUnknown",A.ZodNever="ZodNever",A.ZodVoid="ZodVoid",A.ZodArray="ZodArray",A.ZodObject="ZodObject",A.ZodUnion="ZodUnion",A.ZodDiscriminatedUnion="ZodDiscriminatedUnion",A.ZodIntersection="ZodIntersection",A.ZodTuple="ZodTuple",A.ZodRecord="ZodRecord",A.ZodMap="ZodMap",A.ZodSet="ZodSet",A.ZodFunction="ZodFunction",A.ZodLazy="ZodLazy",A.ZodLiteral="ZodLiteral",A.ZodEnum="ZodEnum",A.ZodEffects="ZodEffects",A.ZodNativeEnum="ZodNativeEnum",A.ZodOptional="ZodOptional",A.ZodNullable="ZodNullable",A.ZodDefault="ZodDefault",A.ZodCatch="ZodCatch",A.ZodPromise="ZodPromise",A.ZodBranded="ZodBranded",A.ZodPipeline="ZodPipeline",A.ZodReadonly="ZodReadonly"})(zQ||(zQ={}));var fQB=(A,Q={message:`Input not instance of ${A.name}`})=>j7A((B)=>B instanceof A,Q),O7A=yC.create,P7A=O7.create,bQB=rH.create,mQB=P7.create,T7A=vU.create,uQB=JZ.create,dQB=pH.create,cQB=yU.create,lQB=gU.create,pQB=CZ.create,iQB=j7.create,nQB=r1.create,sQB=iH.create,rQB=gC.create,aQB=y0.create,oQB=y0.strictCreate,tQB=hU.create,eQB=kR.create,ABB=xU.create,QBB=a1.create,BBB=nH.create,YBB=sH.create,JBB=XZ.create,CBB=_U.create,XBB=fU.create,GBB=bU.create,WBB=T7.create,FBB=mU.create,ZBB=GZ.create,$BB=fC.create,UBB=hC.create,EBB=g6.create,KBB=fC.createWithPreprocess,VBB=aH.create,IBB=()=>O7A().optional(),HBB=()=>P7A().optional(),DBB=()=>T7A().optional(),NBB={string:(A)=>yC.create({...A,coerce:!0}),number:(A)=>O7.create({...A,coerce:!0}),boolean:(A)=>vU.create({...A,coerce:!0}),bigint:(A)=>P7.create({...A,coerce:!0}),date:(A)=>JZ.create({...A,coerce:!0})};var LBB=LQ;var SB=s;var bC;(function(A){A[A.EXTEND=1]="EXTEND",A[A.WRAP=2]="WRAP",A[A.CROP=3]="CROP"})(bC||(bC={}));var S7=s.object({bitmap:s.object({data:s.union([s.instanceof(Buffer),s.instanceof(Uint8Array)]),width:s.number(),height:s.number()})});var qBB=s.object({src:S7,x:s.number().optional(),y:s.number().optional(),srcX:s.number().optional(),srcY:s.number().optional(),srcW:s.number().optional(),srcH:s.number().optional()}),MBB=s.union([S7,qBB]),lU={blit(A,Q){let B=MBB.parse(Q),{src:Y,x:J=0,y:C=0,srcX:X=0,srcY:G=0,srcW:W=Y.bitmap.width,srcH:F=Y.bitmap.height}="bitmap"in B?{src:B}:B;if(!("bitmap"in Y))throw Error("The source must be a Jimp image");if(typeof J!=="number"||typeof C!=="number")throw Error("x and y must be numbers");J=Math.round(J),C=Math.round(C),X=Math.round(X),G=Math.round(G),W=Math.round(W),F=Math.round(F);let Z=A.bitmap.width,U=A.bitmap.height;return I5(Y,X,G,W,F,function($,E,K){let I=J+$-X,V=C+E-G;if(I>=0&&V>=0&&Z-I>0&&U-V>0){let H=A.getPixelIndex(I,V),D={r:Y.bitmap.data[K]||0,g:Y.bitmap.data[K+1]||0,b:Y.bitmap.data[K+2]||0,a:Y.bitmap.data[K+3]||0},L={r:A.bitmap.data[H]||0,g:A.bitmap.data[H+1]||0,b:A.bitmap.data[H+2]||0,a:A.bitmap.data[H+3]||0};A.bitmap.data[H]=(D.a*(D.r-L.r)-L.r+255>>8)+L.r,A.bitmap.data[H+1]=(D.a*(D.g-L.g)-L.g+255>>8)+L.g,A.bitmap.data[H+2]=(D.a*(D.b-L.b)-L.b+255>>8)+L.b,A.bitmap.data[H+3]=z0(L.a+D.a)}}),A}};var S7A=[1,57,41,21,203,34,97,73,227,91,149,62,105,45,39,137,241,107,3,173,39,71,65,238,219,101,187,87,81,151,141,133,249,117,221,209,197,187,177,169,5,153,73,139,133,127,243,233,223,107,103,99,191,23,177,171,165,159,77,149,9,139,135,131,253,245,119,231,224,109,211,103,25,195,189,23,45,175,171,83,81,79,155,151,147,9,141,137,67,131,129,251,123,30,235,115,113,221,217,53,13,51,50,49,193,189,185,91,179,175,43,169,83,163,5,79,155,19,75,147,145,143,35,69,17,67,33,65,255,251,247,243,239,59,29,229,113,111,219,27,213,105,207,51,201,199,49,193,191,47,93,183,181,179,11,87,43,85,167,165,163,161,159,157,155,77,19,75,37,73,145,143,141,35,138,137,135,67,33,131,129,255,63,250,247,61,121,239,237,117,29,229,227,225,111,55,109,216,213,211,209,207,205,203,201,199,197,195,193,48,190,47,93,185,183,181,179,178,176,175,173,171,85,21,167,165,41,163,161,5,79,157,78,154,153,19,75,149,74,147,73,144,143,71,141,140,139,137,17,135,134,133,66,131,65,129,1],k7A=[0,9,10,10,14,12,14,14,16,15,16,15,16,15,15,17,18,17,12,18,16,17,17,19,19,18,19,18,18,19,19,19,20,19,20,20,20,20,20,20,15,20,19,20,20,20,21,21,21,20,20,20,21,18,21,21,21,21,20,21,17,21,21,21,22,22,21,22,22,21,22,21,19,22,22,19,20,22,22,21,21,21,22,22,22,18,22,22,21,22,22,23,22,20,23,22,22,23,23,21,19,21,21,21,23,23,23,22,23,23,21,23,22,23,18,22,23,20,22,23,23,23,21,22,20,22,21,22,24,24,24,24,24,22,21,24,23,23,24,21,24,23,24,22,24,24,22,24,24,22,23,24,24,24,20,23,22,23,24,24,24,24,24,24,24,23,21,23,22,23,24,24,24,22,24,24,24,23,22,24,24,25,23,25,25,23,24,25,25,24,22,25,25,25,24,23,24,25,25,25,25,25,25,25,25,25,25,25,25,23,25,23,24,25,25,25,25,25,25,25,25,25,24,22,25,25,23,25,25,20,24,25,24,25,25,22,24,25,24,25,24,25,25,24,25,25,25,25,22,25,25,25,24,25,24,25,18];var _7A={blur(A,Q){if(typeof Q!=="number")throw Error("r must be a number");if(Q<1)throw Error("r must be greater than 0");let B,Y,J,C,X,G,W,F,Z,U,$,E,K,I=A.bitmap.width-1,V=A.bitmap.height-1,H=Q+1,D=S7A[Q],L=k7A[Q],z=[],M=[],N=[],q=[],w=[],P=[],_=2;while(_-- >0){E=0,K=0;for(G=0;GI?I:W)<<2),B+=A.bitmap.data[F++],Y+=A.bitmap.data[F++],J+=A.bitmap.data[F++],C+=A.bitmap.data[F];for(X=0;X0?F<<2:0;Z=K+w[X],U=K+P[X],B+=A.bitmap.data[Z++]-A.bitmap.data[U++],Y+=A.bitmap.data[Z++]-A.bitmap.data[U++],J+=A.bitmap.data[Z++]-A.bitmap.data[U++],C+=A.bitmap.data[Z]-A.bitmap.data[U++],E++}K+=A.bitmap.width<<2}for(X=0;XV?0:A.bitmap.width,B+=z[$],Y+=M[$],J+=N[$],C+=q[$];E=X<<2;for(G=0;G>>L),A.bitmap.data[E+1]=z0(Y*D>>>L),A.bitmap.data[E+2]=z0(J*D>>>L),A.bitmap.data[E+3]=z0(C*D>>>L),X===0)w[G]=((F=G+H)0?F*A.bitmap.width:0;Z=X+w[G],U=X+P[G],B+=z[Z]-z[U],Y+=M[Z]-M[U],J+=N[Z]-N[U],C+=q[Z]-q[U],E+=A.bitmap.width<<2}}}return A},gaussian(A,Q){if(typeof Q!=="number")throw Error("r must be a number");if(Q<1)throw Error("r must be greater than 0");let B=Math.ceil(Q*2.57),Y=B*2+1,J=Q*Q*2,C=J*Math.PI,X=[];for(let G=0;GA.bitmap.height?A.bitmap.height:A.bitmap.width)/2,J={x:typeof B.x==="number"?B.x:A.bitmap.width/2,y:typeof B.y==="number"?B.y:A.bitmap.height/2};return A.scan((C,X,G)=>{let W=Math.sqrt(Math.pow(C-J.x,2)+Math.pow(X-J.y,2));if(Y-W<=0)A.bitmap.data[G+3]=0;else if(Y-W<1)A.bitmap.data[G+3]=255*(Y-W)}),A}};var vR=s.array(s.number()).min(1).array(),OBB=s.object({kernel:vR,edgeHandling:s.nativeEnum(bC).optional()}),PBB=s.union([vR,OBB]),TBB=s.object({kernel:vR,x:s.number().optional(),y:s.number().optional(),w:s.number().optional(),h:s.number().optional()}),SBB=s.union([vR,TBB]),g7A=s.number().min(1).max(1/0),kBB=s.object({size:g7A,x:s.number().optional(),y:s.number().optional(),w:s.number().optional(),h:s.number().optional()}),_BB=s.union([g7A,kBB]);function y7A(A,Q,B,Y){let J=[0,0,0,0],C=(Q.length-1)/2;for(let X=0;X{Q.r[A.bitmap.data[J+0]]++,Q.g[A.bitmap.data[J+1]]++,Q.b[A.bitmap.data[J+2]]++}),Q}var $f=function(A,Q,B){return(A-Q)*255/(B-Q)},Uf=function(A){return[A.findIndex((Q)=>Q>0),255-A.slice().reverse().findIndex((Q)=>Q>0)]},pU={normalize(A){let Q=rBB(A),B={r:Uf(Q.r),g:Uf(Q.g),b:Uf(Q.b)};return A.scan((Y,J,C)=>{let X=A.bitmap.data[C+0],G=A.bitmap.data[C+1],W=A.bitmap.data[C+2];A.bitmap.data[C+0]=$f(X,B.r[0],B.r[1]),A.bitmap.data[C+1]=$f(G,B.g[0],B.g[1]),A.bitmap.data[C+2]=$f(W,B.b[0],B.b[1])}),A},invert(A){return A.scan((Q,B,Y)=>{A.bitmap.data[Y]=255-A.bitmap.data[Y],A.bitmap.data[Y+1]=255-A.bitmap.data[Y+1],A.bitmap.data[Y+2]=255-A.bitmap.data[Y+2]}),A},brightness(A,Q){if(typeof Q!=="number")throw Error("val must be numbers");return A.scan((B,Y,J)=>{A.bitmap.data[J]=z0(A.bitmap.data[J]*Q),A.bitmap.data[J+1]=z0(A.bitmap.data[J+1]*Q),A.bitmap.data[J+2]=z0(A.bitmap.data[J+2]*Q)}),A},contrast(A,Q){if(typeof Q!=="number")throw Error("val must be numbers");if(Q<-1||Q>1)throw Error("val must be a number between -1 and +1");let B=(Q+1)/(1-Q);function Y(J){return J=Math.floor(B*(J-127)+127),J<0?0:J>255?255:J}return A.scan((J,C,X)=>{A.bitmap.data[X]=Y(A.bitmap.data[X]),A.bitmap.data[X+1]=Y(A.bitmap.data[X+1]),A.bitmap.data[X+2]=Y(A.bitmap.data[X+2])}),A},posterize(A,Q){if(typeof Q!=="number")throw Error("n must be numbers");if(Q<2)Q=2;return A.scan((B,Y,J)=>{let C=A.bitmap.data[J],X=A.bitmap.data[J+1],G=A.bitmap.data[J+2];A.bitmap.data[J]=Math.floor(C/255*(Q-1))/(Q-1)*255,A.bitmap.data[J+1]=Math.floor(X/255*(Q-1))/(Q-1)*255,A.bitmap.data[J+2]=Math.floor(G/255*(Q-1))/(Q-1)*255}),A},greyscale(A){return A.scan((Q,B,Y)=>{let J=0.2126*A.bitmap.data[Y]+0.7152*A.bitmap.data[Y+1]+0.0722*A.bitmap.data[Y+2];A.bitmap.data[Y]=J,A.bitmap.data[Y+1]=J,A.bitmap.data[Y+2]=J}),A},opacity(A,Q){if(typeof Q!=="number")throw Error("f must be a number");if(Q<0||Q>1)throw Error("f must be a number from 0 to 1");return A.scan((B,Y,J)=>{let C=A.bitmap.data[J+3]*Q;A.bitmap.data[J+3]=C}),A},sepia(A){return A.scan((Q,B,Y)=>{let J=A.bitmap.data[Y],C=A.bitmap.data[Y+1],X=A.bitmap.data[Y+2];J=J*0.393+C*0.769+X*0.189,C=J*0.349+C*0.686+X*0.168,X=J*0.272+C*0.534+X*0.131,A.bitmap.data[Y]=J<255?J:255,A.bitmap.data[Y+1]=C<255?C:255,A.bitmap.data[Y+2]=X<255?X:255}),A},fade(A,Q){if(typeof Q!=="number")throw Error("f must be a number");if(Q<0||Q>1)throw Error("f must be a number from 0 to 1");return this.opacity(A,1-Q)},convolution(A,Q){let B=PBB.parse(Q),{kernel:Y,edgeHandling:J=bC.EXTEND}="kernel"in B?B:{kernel:B,edgeHandling:void 0};if(!Y[0])throw Error("kernel must be a matrix");let C=Buffer.from(A.bitmap.data),X=Y.length,G=Y[0].length,W=Math.floor(X/2),F=Math.floor(G/2),Z=-W,U=-F,$,E,K,I,V,H,D,L,z,M;return A.scan((N,q,w)=>{I=0,K=0,E=0;for(let P=Z;P<=W;P++)for(let _=U;_<=F;_++){if(L=N+_,z=q+P,$=Y[P+W][_+F],M=A.getPixelIndex(L,z,J),M===-1)D=0,H=0,V=0;else V=A.bitmap.data[M+0],H=A.bitmap.data[M+1],D=A.bitmap.data[M+2];E+=$*V,K+=$*H,I+=$*D}if(E<0)E=0;if(K<0)K=0;if(I<0)I=0;if(E>255)E=255;if(K>255)K=255;if(I>255)I=255;C[w+0]=E,C[w+1]=K,C[w+2]=I}),A.bitmap.data=C,A},opaque(A){return A.scan((Q,B,Y)=>{A.bitmap.data[Y+3]=255}),A},pixelate(A,Q){let B=_BB.parse(Q),{size:Y,x:J=0,y:C=0,w:X=A.bitmap.width-J,h:G=A.bitmap.height-C}=typeof B==="number"?{size:B}:B,W=[[0.0625,0.125,0.0625],[0.125,0.25,0.125],[0.0625,0.125,0.0625]],F=K8(A);return I5(F,J,C,X,G,(Z,U,$)=>{Z=Y*Math.floor(Z/Y),U=Y*Math.floor(U/Y);let E=y7A(F,W,Z,U);A.bitmap.data[$]=E[0],A.bitmap.data[$+1]=E[1],A.bitmap.data[$+2]=E[2],A.bitmap.data[$+3]=E[3]}),A},convolute(A,Q){let B=SBB.parse(Q),{kernel:Y,x:J=0,y:C=0,w:X=A.bitmap.width-J,h:G=A.bitmap.height-C}="kernel"in B?B:{kernel:B},W=K8(A);return I5(W,J,C,X,G,(F,Z,U)=>{let $=y7A(W,Y,F,Z);A.bitmap.data[U]=z0($[0]),A.bitmap.data[U+1]=z0($[1]),A.bitmap.data[U+2]=z0($[2]),A.bitmap.data[U+3]=z0($[3])}),A},color(A,Q){if(!Q||!Array.isArray(Q))throw Error("actions must be an array");return Q.forEach((B)=>sBB.parse(B)),Q=Q.map((B)=>{if(B.apply==="xor"||B.apply==="mix")B.params[0]=oA(B.params[0]).toRgb();return B}),A.scan((B,Y,J)=>{let C={r:A.bitmap.data[J],g:A.bitmap.data[J+1],b:A.bitmap.data[J+2]},X=(G,W)=>z0(C[G]+W);Q.forEach((G)=>{if(G.apply==="mix")C=Zf(C,G.params[0],G.params[1]);else if(G.apply==="tint")C=Zf(C,{r:255,g:255,b:255},G.params?.[0]);else if(G.apply==="shade")C=Zf(C,{r:0,g:0,b:0},G.params?.[0]);else if(G.apply==="xor")C={r:C.r^G.params[0].r,g:C.g^G.params[0].g,b:C.b^G.params[0].b};else if(G.apply==="red")C.r=X("r",G.params[0]);else if(G.apply==="green")C.g=X("g",G.params[0]);else if(G.apply==="blue")C.b=X("b",G.params[0]);else{if(G.apply==="hue")G.apply="spin";let W=oA(C),F=W[G.apply].bind(W);if(!F)throw Error("action "+G.apply+" not supported");C=F(...G.params||[]).toRgb()}}),A.bitmap.data[J]=C.r,A.bitmap.data[J+1]=C.g,A.bitmap.data[J+2]=C.b}),A}};var LFA=qA(zWA(),1),wf=qA(wWA(),1);import{promises as jWA}from"fs";import{existsSync as TWA}from"fs";var OWA=jWA.readFile,PWA=jWA.writeFile;var qFA=qA(gWA(),1);var M5;(function(A){A[A.LEFT=1]="LEFT",A[A.CENTER=2]="CENTER",A[A.RIGHT=4]="RIGHT"})(M5||(M5={}));var z5;(function(A){A[A.TOP=8]="TOP",A[A.MIDDLE=16]="MIDDLE",A[A.BOTTOM=32]="BOTTOM"})(z5||(z5={}));var dR;(function(A){A.SRC_OVER="srcOver",A.DST_OVER="dstOver",A.MULTIPLY="multiply",A.ADD="add",A.SCREEN="screen",A.OVERLAY="overlay",A.DARKEN="darken",A.LIGHTEN="lighten",A.HARD_LIGHT="hardLight",A.DIFFERENCE="difference",A.EXCLUSION="exclusion"})(dR||(dR={}));var Nf={};iG(Nf,{srcOver:()=>hWA,screen:()=>mWA,overlay:()=>uWA,names:()=>QYB,multiply:()=>fWA,lighten:()=>cWA,hardLight:()=>lWA,exclusion:()=>iWA,dstOver:()=>xWA,difference:()=>pWA,darken:()=>dWA,add:()=>bWA});function hWA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=(A.r*A.a+Q.r*Q.a*(1-A.a))/Y,C=(A.g*A.a+Q.g*Q.a*(1-A.a))/Y,X=(A.b*A.a+Q.b*Q.a*(1-A.a))/Y;return{r:J,g:C,b:X,a:Y}}function xWA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=(Q.r*Q.a+A.r*A.a*(1-Q.a))/Y,C=(Q.g*Q.a+A.g*A.a*(1-Q.a))/Y,X=(Q.b*Q.a+A.b*A.a*(1-Q.a))/Y;return{r:J,g:C,b:X,a:Y}}function fWA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,W=Q.g*Q.a,F=Q.b*Q.a,Z=(J*G+J*(1-Q.a)+G*(1-A.a))/Y,U=(C*W+C*(1-Q.a)+W*(1-A.a))/Y,$=(X*F+X*(1-Q.a)+F*(1-A.a))/Y;return{r:Z,g:U,b:$,a:Y}}function bWA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,W=Q.g*Q.a,F=Q.b*Q.a,Z=(J+G)/Y,U=(C+W)/Y,$=(X+F)/Y;return{r:Z,g:U,b:$,a:Y}}function mWA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,W=Q.g*Q.a,F=Q.b*Q.a,Z=(J*Q.a+G*A.a-J*G+J*(1-Q.a)+G*(1-A.a))/Y,U=(C*Q.a+W*A.a-C*W+C*(1-Q.a)+W*(1-A.a))/Y,$=(X*Q.a+F*A.a-X*F+X*(1-Q.a)+F*(1-A.a))/Y;return{r:Z,g:U,b:$,a:Y}}function uWA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,W=Q.g*Q.a,F=Q.b*Q.a,Z=(2*G<=Q.a?2*J*G+J*(1-Q.a)+G*(1-A.a):J*(1+Q.a)+G*(1+A.a)-2*G*J-Q.a*A.a)/Y,U=(2*W<=Q.a?2*C*W+C*(1-Q.a)+W*(1-A.a):C*(1+Q.a)+W*(1+A.a)-2*W*C-Q.a*A.a)/Y,$=(2*F<=Q.a?2*X*F+X*(1-Q.a)+F*(1-A.a):X*(1+Q.a)+F*(1+A.a)-2*F*X-Q.a*A.a)/Y;return{r:Z,g:U,b:$,a:Y}}function dWA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,W=Q.g*Q.a,F=Q.b*Q.a,Z=(Math.min(J*Q.a,G*A.a)+J*(1-Q.a)+G*(1-A.a))/Y,U=(Math.min(C*Q.a,W*A.a)+C*(1-Q.a)+W*(1-A.a))/Y,$=(Math.min(X*Q.a,F*A.a)+X*(1-Q.a)+F*(1-A.a))/Y;return{r:Z,g:U,b:$,a:Y}}function cWA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,W=Q.g*Q.a,F=Q.b*Q.a,Z=(Math.max(J*Q.a,G*A.a)+J*(1-Q.a)+G*(1-A.a))/Y,U=(Math.max(C*Q.a,W*A.a)+C*(1-Q.a)+W*(1-A.a))/Y,$=(Math.max(X*Q.a,F*A.a)+X*(1-Q.a)+F*(1-A.a))/Y;return{r:Z,g:U,b:$,a:Y}}function lWA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,W=Q.g*Q.a,F=Q.b*Q.a,Z=(2*J<=A.a?2*J*G+J*(1-Q.a)+G*(1-A.a):J*(1+Q.a)+G*(1+A.a)-2*G*J-Q.a*A.a)/Y,U=(2*C<=A.a?2*C*W+C*(1-Q.a)+W*(1-A.a):C*(1+Q.a)+W*(1+A.a)-2*W*C-Q.a*A.a)/Y,$=(2*X<=A.a?2*X*F+X*(1-Q.a)+F*(1-A.a):X*(1+Q.a)+F*(1+A.a)-2*F*X-Q.a*A.a)/Y;return{r:Z,g:U,b:$,a:Y}}function pWA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,W=Q.g*Q.a,F=Q.b*Q.a,Z=(J+G-2*Math.min(J*Q.a,G*A.a))/Y,U=(C+W-2*Math.min(C*Q.a,W*A.a))/Y,$=(X+F-2*Math.min(X*Q.a,F*A.a))/Y;return{r:Z,g:U,b:$,a:Y}}function iWA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,W=Q.g*Q.a,F=Q.b*Q.a,Z=(J*Q.a+G*A.a-2*J*G+J*(1-Q.a)+G*(1-A.a))/Y,U=(C*Q.a+W*A.a-2*C*W+C*(1-Q.a)+W*(1-A.a))/Y,$=(X*Q.a+F*A.a-2*X*F+X*(1-Q.a)+F*(1-A.a))/Y;return{r:Z,g:U,b:$,a:Y}}var QYB=[hWA,xWA,fWA,bWA,mWA,uWA,dWA,cWA,lWA,pWA,iWA];function iU(A,Q,B=0,Y=0,J={}){if(!(Q instanceof A.constructor))throw Error("The source must be a Jimp image");if(typeof B!=="number"||typeof Y!=="number")throw Error("x and y must be numbers");let{mode:C=dR.SRC_OVER}=J,{opacitySource:X=1,opacityDest:G=1}=J;if(typeof X!=="number"||X<0||X>1)X=1;if(typeof G!=="number"||G<0||G>1)G=1;let W=Nf[C];if(B=Math.round(B),Y=Math.round(Y),G!==1)A.scan((F,Z,U)=>{let $=A.bitmap.data[U+3]*G;A.bitmap.data[U+3]=$});return Q.scan((F,Z,U)=>{let $=A.getPixelIndex(B+F,Y+Z,bC.CROP);if($===-1)return;let E=W({r:Q.bitmap.data[U+0]/255,g:Q.bitmap.data[U+1]/255,b:Q.bitmap.data[U+2]/255,a:Q.bitmap.data[U+3]/255},{r:A.bitmap.data[$+0]/255,g:A.bitmap.data[$+1]/255,b:A.bitmap.data[$+2]/255,a:A.bitmap.data[$+3]/255},X);A.bitmap.data[$+0]=z0(E.r*255),A.bitmap.data[$+1]=z0(E.g*255),A.bitmap.data[$+2]=z0(E.b*255),A.bitmap.data[$+3]=z0(E.a*255)}),A}var HFA=qA(IFA(),1);function zf(A){let Q=A._exif;return Q&&Q.tags&&Q.tags.Orientation||1}function EYB(A){let Q=A.bitmap.width,B=A.bitmap.height;switch(zf(A)){case 1:return null;case 2:return function(Y,J){return[Q-Y-1,J]};case 3:return function(Y,J){return[Q-Y-1,B-J-1]};case 4:return function(Y,J){return[Y,B-J-1]};case 5:return function(Y,J){return[J,Y]};case 6:return function(Y,J){return[J,B-Y-1]};case 7:return function(Y,J){return[Q-J-1,B-Y-1]};case 8:return function(Y,J){return[Q-J-1,Y]};default:return null}}function KYB(A,Q,B,Y){let J=A.bitmap.data,C=A.bitmap.width,X=Buffer.alloc(J.length);for(let G=0;G4,Y=B?A.bitmap.height:A.bitmap.width,J=B?A.bitmap.width:A.bitmap.height;if(Q)KYB(A,Y,J,Q)}async function DFA(A,Q){try{A._exif=HFA.default.create(Q).parse(),VYB(A)}catch{}}var Rf={data:Buffer.alloc(0),width:0,height:0};function NFA(A){let Q=Buffer.alloc(A.byteLength),B=new Uint8Array(A);for(let Y=0;YC()),J=class{bitmap=Rf;background=0;formats=[];mime;constructor(X=Rf){if(this.formats=Y,"data"in X)this.bitmap=X;else if(this.bitmap={data:Buffer.alloc(X.width*X.height*4),width:X.width,height:X.height},X.color){this.background=typeof X.color==="string"?M1A(X.color):X.color;for(let G=0;G{let Z=G[W]?.(this,...F);if(typeof Z==="object"&&"bitmap"in Z)return this.bitmap=Z.bitmap,this;return Z}}static async read(X,G){if(Buffer.isBuffer(X)||X instanceof ArrayBuffer)return this.fromBuffer(X);if(TWA(X))return this.fromBuffer(await OWA(X));let[W,F]=await wf.to(fetch(X));if(W)throw Error(`Could not load Buffer from URL: ${X}`);if(!F.ok)throw Error(`HTTP Status ${F.status} for url ${X}`);let[Z,U]=await wf.to(F.arrayBuffer());if(Z)throw Error(`Could not load Buffer from ${X}`);let $=NFA(U);return this.fromBuffer($,G)}static fromBitmap(X){let G;if(X.data instanceof Buffer)G=Buffer.from(X.data);if(X.data instanceof Uint8Array||X.data instanceof Uint8ClampedArray)G=Buffer.from(X.data.buffer);if(Array.isArray(X.data))G=Buffer.concat(X.data.map((W)=>Buffer.from(W.toString(16).padStart(8,"0"),"hex")));if(!G)throw Error("data must be a Buffer");if(typeof X.height!=="number"||typeof X.width!=="number")throw Error("bitmap must have width and height");return new J({height:X.height,width:X.width,data:G})}static async fromBuffer(X,G){let W=X instanceof ArrayBuffer?NFA(X):X,F=await LFA.default.fromBuffer(W);if(!F||!F.mime)throw Error("Could not find MIME for Buffer");let Z=Y.find(($)=>$.mime===F.mime);if(!Z||!Z.decode)throw Error(`Mime type ${F.mime} does not support decoding`);let U=new J(await Z.decode(W,G?.[Z.mime]));return U.mime=F.mime,DFA(U,W),U}inspect(){return""}toString(){return"[object Jimp]"}get width(){return this.bitmap.width}get height(){return this.bitmap.height}async getBuffer(X,G){let W=this.formats.find((Z)=>Z.mime===X);if(!W||!W.encode)throw Error(`Unsupported MIME type: ${X}`);let F;if(W.hasAlpha)F=this;else F=new J({width:this.bitmap.width,height:this.bitmap.height,color:this.background}),iU(F,this);return W.encode(F.bitmap,G)}async getBase64(X,G){let W=await this.getBuffer(X,G);return"data:"+X+";base64,"+W.toString("base64")}async write(X,G){let W=qFA.default.getType(X);await PWA(X,await this.getBuffer(W,G))}clone(){return new J({...this.bitmap,data:Buffer.from(this.bitmap.data)})}getPixelIndex(X,G,W){let F,Z;if(!W)W=bC.EXTEND;if(typeof X!=="number"||typeof G!=="number")throw Error("x and y must be numbers");if(X=Math.round(X),G=Math.round(G),F=X,Z=G,W===bC.EXTEND){if(X<0)F=0;if(X>=this.bitmap.width)F=this.bitmap.width-1;if(G<0)Z=0;if(G>=this.bitmap.height)Z=this.bitmap.height-1}if(W===bC.WRAP){if(X<0)F=this.bitmap.width+X;if(X>=this.bitmap.width)F=X%this.bitmap.width;if(G<0)Z=this.bitmap.height+G;if(G>=this.bitmap.height)Z=G%this.bitmap.height}let U=this.bitmap.width*Z+F<<2;if(F<0||F>=this.bitmap.width)U=-1;if(Z<0||Z>=this.bitmap.height)U=-1;return U}getPixelColor(X,G){if(typeof X!=="number"||typeof G!=="number")throw Error("x and y must be numbers");let W=this.getPixelIndex(X,G);return this.bitmap.data.readUInt32BE(W)}setPixelColor(X,G,W){if(typeof X!=="number"||typeof G!=="number"||typeof W!=="number")throw Error("hex, x and y must be numbers");let F=this.getPixelIndex(G,W);return this.bitmap.data.writeUInt32BE(X,F),this}hasAlpha(){let{width:X,height:G,data:W}=this.bitmap,F=X*G<<2;for(let Z=3;Z0&&this.heightOriginal>0&&this.targetWidth>0&&this.targetHeight>0)this.configurePasses();else throw console.log(this),Error("Invalid settings specified for the resizer.")};qY.prototype.configurePasses=function(){if(this.widthOriginal===this.targetWidth)this.resizeWidth=this.bypassResizer;else if(this.ratioWeightWidthPass=this.widthOriginal/this.targetWidth,this.ratioWeightWidthPass<1&&this.interpolationPass)this.initializeFirstPassBuffers(!0),this.resizeWidth=this.colorChannels===4?this.resizeWidthInterpolatedRGBA:this.resizeWidthInterpolatedRGB;else this.initializeFirstPassBuffers(!1),this.resizeWidth=this.colorChannels===4?this.resizeWidthRGBA:this.resizeWidthRGB;if(this.heightOriginal===this.targetHeight)this.resizeHeight=this.bypassResizer;else if(this.ratioWeightHeightPass=this.heightOriginal/this.targetHeight,this.ratioWeightHeightPass<1&&this.interpolationPass)this.initializeSecondPassBuffers(!0),this.resizeHeight=this.resizeHeightInterpolated;else this.initializeSecondPassBuffers(!1),this.resizeHeight=this.colorChannels===4?this.resizeHeightRGBA:this.resizeHeightRGB};qY.prototype._resizeWidthInterpolatedRGBChannels=function(A,Q){let B=Q?4:3,Y=this.ratioWeightWidthPass,J=this.widthBuffer,C=0,X=0,G=0,W=0,F=0,Z;for(Z=0;C<0.3333333333333333;Z+=B,C+=Y)for(X=Z,G=0;X=U)$+=B,E=$,Z-=U;else{E+=Z;break}}while(Z>0&&$=W)F=E,Z=F,G-=W;else{Z+=G;break}}while(G>0&&F3)this.outputWidthWorkBenchOpaquePixelsCount=this.generateFloat64Buffer(this.heightOriginal)}};qY.prototype.initializeSecondPassBuffers=function(A){if(this.heightBuffer=this.generateUint8Buffer(this.finalResultSize),!A){if(this.outputHeightWorkBench=this.generateFloatBuffer(this.targetWidthMultipliedByChannels),this.colorChannels>3)this.outputHeightWorkBenchOpaquePixelsCount=this.generateFloat64Buffer(this.targetWidth)}};qY.prototype.generateFloatBuffer=function(A){try{return new Float32Array(A)}catch(Q){return console.error(Q),[]}};qY.prototype.generateFloat64Buffer=function(A){try{return new Float64Array(A)}catch(Q){return console.error(Q),[]}};qY.prototype.generateUint8Buffer=function(A){try{return new Uint8Array(A)}catch(Q){return console.error(Q),[]}};var zFA=qY;var jf={nearestNeighbor(A,Q){let{width:B,height:Y}=A,J=Q.width,C=Q.height,X=A.data,G=Q.data;for(let W=0;W0?J[P-4]:2*J[P]-J[P+4],j=J[P],k=J[P+4],T=z0?K[P-U*4]:2*K[P]-K[P+U*4],j=K[P],k=K[P+U*4],T=z1)for(let H=0;H{A.bitmap.data=Buffer.from(X),A.bitmap.width=Y,A.bitmap.height=J}).resize(A.bitmap.data);return A},scale(A,Q){let{f:B,mode:Y}=typeof Q==="number"?{f:Q}:DYB.parse(Q),J=A.bitmap.width*B,C=A.bitmap.height*B;return this.resize(A,{w:J,h:C,mode:Y})},scaleToFit(A,Q){let{h:B,w:Y,mode:J}=HYB.parse(Q),C=Y/B>A.bitmap.width/A.bitmap.height?B/A.bitmap.height:Y/A.bitmap.width;return this.scale(A,{f:C,mode:J})}};var LYB=s.object({w:s.number(),h:s.number(),align:s.number().optional(),mode:s.nativeEnum(N8).optional()}),RFA={contain(A,Q){let{w:B,h:Y,align:J=M5.CENTER|z5.MIDDLE,mode:C}=LYB.parse(Q),X=J&7,G=J>>3;if(!(X!==0&&!(X&X-1)||G!==0&&!(G&G-1)))throw Error("only use one flag per alignment direction");let W=X>>1,F=G>>1,Z=B/Y>A.bitmap.width/A.bitmap.height?Y/A.bitmap.height:B/A.bitmap.width,U=mC.scale(K8(A),{f:Z,mode:C});return A=mC.resize(A,{w:B,h:Y,mode:C}),A.scan(($,E,K)=>{A.bitmap.data.writeUInt32BE(A.background,K)}),A=lU.blit(A,{src:U,x:(A.bitmap.width-U.bitmap.width)/2*W,y:(A.bitmap.height-U.bitmap.height)/2*F}),A}};var MYB=s.object({x:s.number(),y:s.number(),w:s.number(),h:s.number()}),zYB=s.object({tolerance:s.number().min(0).max(1).optional(),cropOnlyFrames:s.boolean().optional(),cropSymmetric:s.boolean().optional(),leaveBorder:s.number().optional(),ignoreSides:s.object({north:s.boolean().optional(),south:s.boolean().optional(),east:s.boolean().optional(),west:s.boolean().optional()}).optional()}),rU={crop(A,Q){let{x:B,y:Y,w:J,h:C}=MYB.parse(Q);if(B=Math.round(B),Y=Math.round(Y),J=Math.round(J),C=Math.round(C),B===0&&J===A.bitmap.width){let X=J*Y+B<<2,G=X+(C*J<<2);A.bitmap.data=A.bitmap.data.slice(X,G)}else{let X=Buffer.allocUnsafe(J*C*4),G=0;I5(A,B,Y,J,C,function(W,F,Z){let U=A.bitmap.data.readUInt32BE(Z);X.writeUInt32BE(U,G),G+=4}),A.bitmap.data=X}return A.bitmap.width=J,A.bitmap.height=C,A},autocrop(A,Q={}){let{tolerance:B=0.0002,cropOnlyFrames:Y=!0,cropSymmetric:J=!1,leaveBorder:C=0,ignoreSides:X}=typeof Q==="number"?{tolerance:Q}:zYB.parse(Q),G=A.bitmap.width,W=A.bitmap.height,F=1,Z={north:!1,south:!1,east:!1,west:!1,...X},U=A.getPixelColor(0,0),$=ZU(U),E=0,K=0,I=0,V=0;if(U=A.getPixelColor(0,0),!Z.north)A:for(let z=0;zB)break A}E++}if(U=A.getPixelColor(G,0),!Z.west)A:for(let z=0;zB)break A}V++}if(U=A.getPixelColor(0,W),!Z.south)A:for(let z=W-1;z>=E+1;z--){for(let M=G-K-1;M>=0;M--){let N=A.getPixelColor(M,z),q=ZU(N);if(DH($,q)>B)break A}I++}if(U=A.getPixelColor(G,W),!Z.east)A:for(let z=G-1;z>=0+V+1;z--){for(let M=W-1;M>=0+E;M--){let N=A.getPixelColor(z,M),q=ZU(N);if(DH($,q)>B)break A}K++}let H=!1;if(V-=C,K-=C,E-=C,I-=C,J){let z=Math.min(K,V),M=Math.min(E,I);V=z,K=z,E=M,I=M}V=V>=0?V:0,K=K>=0?K:0,E=E>=0?E:0,I=I>=0?I:0;let D=G-(V+K),L=W-(I+E);if(Y)H=K!==0&&E!==0&&V!==0&&I!==0;else H=K!==0||E!==0||V!==0||I!==0;if(H)this.crop(A,{x:V,y:E,w:D,h:L});return A}};var wYB=s.object({w:s.number(),h:s.number(),align:s.number().optional(),mode:s.nativeEnum(N8).optional()}),wFA={cover(A,Q){let{w:B,h:Y,align:J=M5.CENTER|z5.MIDDLE,mode:C}=wYB.parse(Q),X=J&7,G=J>>3;if(!(X!==0&&!(X&X-1)||G!==0&&!(G&G-1)))throw Error("only use one flag per alignment direction");let W=X>>1,F=G>>1,Z=B/Y>A.bitmap.width/A.bitmap.height?B/A.bitmap.width:Y/A.bitmap.height;return A=mC.scale(A,{f:Z,mode:C}),A=rU.crop(A,{x:(A.bitmap.width-B)/2*W,y:(A.bitmap.height-Y)/2*F,w:B,h:Y}),A}};var OYB=s.object({map:S7,offset:s.number()}),jFA={displace(A,Q){let{map:B,offset:Y}=OYB.parse(Q),J=K8(A);return A.scan((C,X,G)=>{let W=B.bitmap.data[G]/256*Y;W=Math.round(W);let F=A.getPixelIndex(C+W,X);A.bitmap.data[F]=J.bitmap.data[G],A.bitmap.data[F+1]=J.bitmap.data[G+1],A.bitmap.data[F+2]=J.bitmap.data[G+2]}),A}};var OFA={dither(A){let Q=[1,9,3,11,13,5,15,7,4,12,2,10,16,8,14,6];return A.scan((B,Y,J)=>{let C=((Y&3)<<2)+B%4,X=Q[C];A.bitmap.data[J]=Math.min(A.bitmap.data[J]+X,255),A.bitmap.data[J+1]=Math.min(A.bitmap.data[J+1]+X,255),A.bitmap.data[J+2]=Math.min(A.bitmap.data[J+2]+X,255)}),A}};var SYB=s.object({radius:s.number().min(0).optional()}),PFA={fisheye(A,Q={}){let{radius:B=2.5}=SYB.parse(Q),Y=K8(A),{width:J,height:C}=Y.bitmap;return Y.scan((X,G)=>{let W=X/J,F=G/C,Z=Math.sqrt(Math.pow(W-0.5,2)+Math.pow(F-0.5,2)),U=2*Math.pow(Z,B),$=(W-0.5)/Z,E=(F-0.5)/Z,K=Math.round((U*$+0.5)*J),I=Math.round((U*E+0.5)*C),V=Y.getPixelColor(K,I);A.setPixelColor(V,X,G)}),A.setPixelColor(Y.getPixelColor(J/2,C/2),J/2,C/2),A}};var _YB=s.object({horizontal:s.boolean().optional(),vertical:s.boolean().optional()}),TFA={flip(A,Q){let{horizontal:B,vertical:Y}=_YB.parse(Q),J=Buffer.alloc(A.bitmap.data.length);return A.scan((C,X,G)=>{let W=B?A.bitmap.width-1-C:C,F=Y?A.bitmap.height-1-X:X,Z=A.bitmap.width*F+W<<2,U=A.bitmap.data.readUInt32BE(G);J.writeUInt32BE(U,Z)}),A.bitmap.data=Buffer.from(J),A}};var AD=qA(vFA(),1);class yFA{size;smallerSize;constructor(A,Q){this.size=A||32,this.smallerSize=Q||8,hYB(this.size)}distance(A,Q){let B=0;for(let Y=0;YJ?"1":"0";return C}}function gYB(A){let Q=A&255;A>>>=8;let B=A&255;A>>>=8;let Y=A&255;return A>>>=8,{r:A&255,g:Y,b:B,a:Q}}var pR=[];function hYB(A){for(let Q=1;Q64)throw Error("base must be a number between 2 and 64");let B=gFA.slice(0,Q),Y=this.pHash(A),J=hFA[Q];return AD.default(AD.default.BIN,B)(Y).padStart(J,"0")},distanceFromHash(A,Q){let B=new Pf,Y=B.getHash(A);return B.distance(Y,Q)}};var bYB=s.object({src:S7,x:s.number().optional(),y:s.number().optional()}),mYB=s.union([S7,bYB]),fFA={mask(A,Q){mYB.parse(Q);let B,Y,J;if("bitmap"in Q)B=Q,Y=0,J=0;else B=Q.src,Y=Q.x??0,J=Q.y??0;Y=Math.round(Y),J=Math.round(J);let C=A.bitmap.width,X=A.bitmap.height;return B.scan(function(G,W,F){let Z=Y+G,U=J+W;if(Z>=0&&U>=0&&Z{if(aU(A,G+(Y.length>1?" ":""))>B){let U=G[Symbol.iterator](),$="";for(let E of U){let K=[...C,$+E].join(" "),I=aU(A,K);if(IB)J.push([...C,$]),C=[],$=E;else J.push([...C,$+E]),C=[],$=""}return}let F=[...C,G].join(" "),Z=aU(A,F);if(Z<=B&&!G.includes(` `)){if(Z>X)X=Z;C.push(G)}else J.push(C),C=[G.replace(` -`,"")]}),J.push(C),{lines:J,longestLine:X}}function Qf(A,Q,B){let{lines:Y}=Af(A,Q,B);return Y.length*A.common.lineHeight}var u0B=s.object({x:s.number(),y:s.number(),text:s.union([s.union([s.string(),s.number()]),s.object({text:s.union([s.string(),s.number()]),alignmentX:s.nativeEnum(E5).optional(),alignmentY:s.nativeEnum(K5).optional()})]),maxWidth:s.number().optional(),maxHeight:s.number().optional(),cb:s.function(s.tuple([s.object({x:s.number(),y:s.number()})])).optional()});function d0B(A,Q,B,Y){if(Y===E5.LEFT)return 0;if(Y===E5.CENTER)return(B-uU(A,Q))/2;return B-uU(A,Q)}function c0B(A,Q,B,Y,J){if(J.width>0&&J.height>0){let C=Q.pages[J.page];if(C)A=hU.blit(A,{src:C,x:B+J.xoffset,y:Y+J.yoffset,srcX:J.x,srcY:J.y,srcW:J.width,srcH:J.height})}return A}function l0B(A,Q,B,Y,J,C){for(let X=0;X{}}=u0B.parse(B),W,Z;if(typeof C==="object"&&C.text!==null&&C.text!==void 0)W=C.alignmentX||E5.LEFT,Z=C.alignmentY||K5.TOP,{text:C}=C;else W=E5.LEFT,Z=K5.TOP,C=C.toString();if(typeof C==="number")C=C.toString();if(G!==1/0&&Z===K5.BOTTOM)J+=G-Qf(Q,C,X);else if(G!==1/0&&Z===K5.MIDDLE)J+=G/2-Qf(Q,C,X)/2;let U=Object.entries(Q.chars).find((K)=>K[1].xadvance)?.[1].xadvance;if(typeof U!=="number")throw Error("Could not find default character width");let{lines:$,longestLine:E}=Af(Q,C,X);return $.forEach((K)=>{let I=K.join(" "),V=d0B(Q,I,X,W);l0B(A,Q,Y+V,J,I,U),J+=Q.common.lineHeight}),F.bind(A)({x:Y+E,y:J}),A}};var i0B=s.union([s.number(),s.object({deg:s.number(),mode:s.union([s.boolean(),s.nativeEnum(U8)]).optional()})]);function eFA(A){return function(Q,B){return B*A+Q<<2}}function n0B(A,Q){if(Math.abs(Q)%90!==0)throw Error("Unsupported matrix rotation degree");let B=A.bitmap.width,Y=A.bitmap.height,J;switch(Q){case 90:case-270:J=90;break;case 180:case-180:J=180;break;case 270:case-90:J=-90;break;default:throw Error("Unsupported matrix rotation degree")}let C=J===180?B:Y,X=J===180?Y:B,G=Buffer.alloc(A.bitmap.data.length),F=eFA(B),W=eFA(C);for(let Z=0;Z{A.bitmap.data.writeUInt32BE(A.background,H)});let K=Math.max(X,G,A.bitmap.width,A.bitmap.height);A=kC.resize(A,{h:K,w:K,mode:B===!0?void 0:B}),A=xU(A,E,A.bitmap.width/2-E.bitmap.width/2,A.bitmap.height/2-E.bitmap.height/2)}let F=A.bitmap.width,W=A.bitmap.height,Z=Buffer.alloc(A.bitmap.data.length),U=AWA(-(F/2),-(W/2)),$=AWA(F/2+0.5,W/2+0.5);for(let E=1;E<=W;E++)for(let K=1;K<=F;K++){let I=U(K,E),V=$(J*I.x-C*I.y,J*I.y+C*I.x),H=F*(E-1)+K-1<<2;if(V.x>=0&&V.x=0&&V.y{let F=A.bitmap.data[G](Q in A)?XWA(A,Q,{enumerable:!0,configurable:!0,writable:!0,value:B}):A[Q]=B,TX=(A,Q)=>{for(var B in Q)XWA(A,B,{get:Q[B],enumerable:!0})},ZA=(A,Q,B)=>{return t0B(A,typeof Q!=="symbol"?Q+"":Q,B),B},e0B={};TX(e0B,{bt709:()=>GWA});var GWA={};TX(GWA,{Y:()=>FWA,x:()=>WWA,y:()=>ZWA});var FWA=((A)=>{return A[A.RED=0.2126]="RED",A[A.GREEN=0.7152]="GREEN",A[A.BLUE=0.0722]="BLUE",A[A.WHITE=1]="WHITE",A})(FWA||{}),WWA=((A)=>{return A[A.RED=0.64]="RED",A[A.GREEN=0.3]="GREEN",A[A.BLUE=0.15]="BLUE",A[A.WHITE=0.3127]="WHITE",A})(WWA||{}),ZWA=((A)=>{return A[A.RED=0.33]="RED",A[A.GREEN=0.6]="GREEN",A[A.BLUE=0.06]="BLUE",A[A.WHITE=0.329]="WHITE",A})(ZWA||{}),AYB={};TX(AYB,{lab2rgb:()=>FYB,lab2xyz:()=>IWA,rgb2hsl:()=>zR,rgb2lab:()=>lH,rgb2xyz:()=>$WA,xyz2lab:()=>VWA,xyz2rgb:()=>HWA});function Bf(A){return A>0.04045?((A+0.055)/1.055)**2.4:A/12.92}function $WA(A,Q,B){return A=Bf(A/255),Q=Bf(Q/255),B=Bf(B/255),{x:A*0.4124+Q*0.3576+B*0.1805,y:A*0.2126+Q*0.7152+B*0.0722,z:A*0.0193+Q*0.1192+B*0.9505}}var UWA={};TX(UWA,{degrees2radians:()=>w7,inRange0to255:()=>K8,inRange0to255Rounded:()=>V5,intInRange:()=>QYB,max3:()=>EWA,min3:()=>KWA,stableSort:()=>Gf});function w7(A){return A*(Math.PI/180)}function EWA(A,Q,B){let Y=A;if(YQ)Y=Q;if(Y>B)Y=B;return Y}function QYB(A,Q,B){if(A>B)A=B;if(A255)A=255;else if(A<0)A=0;return A}function K8(A){if(A>255)A=255;else if(A<0)A=0;return A}function Gf(A,Q){let B=typeof A[0],Y;if(B==="number"||B==="string"){let J=Object.create(null);for(let C=0,X=A.length;CQ(C,X)||J[C]-J[X])}else{let J=A.slice(0);Y=A.sort((C,X)=>Q(C,X)||J.indexOf(C)-J.indexOf(X))}return Y}function zR(A,Q,B){let Y=KWA(A,Q,B),J=EWA(A,Q,B),C=J-Y,X=(Y+J)/510,G=0;if(X>0&&X<1)G=C/(X<0.5?J+Y:510-J-Y);let F=0;if(C>0){if(J===A)F=(Q-B)/C;else if(J===Q)F=2+(B-A)/C;else F=4+(A-Q)/C;if(F*=60,F<0)F+=360}return{h:F,s:G,l:X}}var BYB=0.95047,YYB=1,JYB=1.08883;function Yf(A){return A>0.008856?A**0.3333333333333333:7.787*A+0.13793103448275862}function VWA(A,Q,B){if(A=Yf(A/BYB),Q=Yf(Q/YYB),B=Yf(B/JYB),116*Q-16<0)throw Error("xxx");return{L:Math.max(0,116*Q-16),a:500*(A-Q),b:200*(Q-B)}}function lH(A,Q,B){let Y=$WA(A,Q,B);return VWA(Y.x,Y.y,Y.z)}var CYB=0.95047,XYB=1,GYB=1.08883;function Jf(A){return A>0.206893034?A**3:(A-0.13793103448275862)/7.787}function IWA(A,Q,B){let Y=(A+16)/116,J=Q/500+Y,C=Y-B/200;return{x:CYB*Jf(J),y:XYB*Jf(Y),z:GYB*Jf(C)}}function Cf(A){return A>0.0031308?1.055*A**0.4166666666666667-0.055:12.92*A}function HWA(A,Q,B){let Y=Cf(A*3.2406+Q*-1.5372+B*-0.4986),J=Cf(A*-0.9689+Q*1.8758+B*0.0415),C=Cf(A*0.0557+Q*-0.204+B*1.057);return{r:V5(Y*255),g:V5(J*255),b:V5(C*255)}}function FYB(A,Q,B){let Y=IWA(A,Q,B);return HWA(Y.x,Y.y,Y.z)}var WYB={};TX(WYB,{AbstractDistanceCalculator:()=>AZ,AbstractEuclidean:()=>RR,AbstractManhattan:()=>wR,CIE94GraphicArts:()=>LWA,CIE94Textiles:()=>NWA,CIEDE2000:()=>_C,CMetric:()=>qWA,Euclidean:()=>MWA,EuclideanBT709:()=>zWA,EuclideanBT709NoAlpha:()=>RWA,Manhattan:()=>wWA,ManhattanBT709:()=>OWA,ManhattanNommyde:()=>jWA,PNGQuant:()=>PWA});var AZ=class{constructor(){ZA(this,"_maxDistance"),ZA(this,"_whitePoint"),this._setDefaults(),this.setWhitePoint(255,255,255,255)}setWhitePoint(A,Q,B,Y){this._whitePoint={r:A>0?255/A:0,g:Q>0?255/Q:0,b:B>0?255/B:0,a:Y>0?255/Y:0},this._maxDistance=this.calculateRaw(A,Q,B,Y,0,0,0,0)}calculateNormalized(A,Q){return this.calculateRaw(A.r,A.g,A.b,A.a,Q.r,Q.g,Q.b,Q.a)/this._maxDistance}},DWA=class extends AZ{calculateRaw(A,Q,B,Y,J,C,X,G){let F=lH(K8(A*this._whitePoint.r),K8(Q*this._whitePoint.g),K8(B*this._whitePoint.b)),W=lH(K8(J*this._whitePoint.r),K8(C*this._whitePoint.g),K8(X*this._whitePoint.b)),Z=F.L-W.L,U=F.a-W.a,$=F.b-W.b,E=Math.sqrt(F.a*F.a+F.b*F.b),K=Math.sqrt(W.a*W.a+W.b*W.b),I=E-K,V=U*U+$*$-I*I;V=V<0?0:Math.sqrt(V);let H=(G-Y)*this._whitePoint.a*this._kA;return Math.sqrt((Z/this._Kl)**2+(I/(1+this._K1*E))**2+(V/(1+this._K2*E))**2+H**2)}},NWA=class extends DWA{_setDefaults(){this._Kl=2,this._K1=0.048,this._K2=0.014,this._kA=0.049019607843137254}},LWA=class extends DWA{_setDefaults(){this._Kl=1,this._K1=0.045,this._K2=0.015,this._kA=0.09803921568627451}},z0=class extends AZ{_setDefaults(){}static _calculatehp(A,Q){let B=Math.atan2(A,Q);if(B>=0)return B;return B+z0._deg360InRad}static _calculateRT(A,Q){let B=Q**7,Y=2*Math.sqrt(B/(B+z0._pow25to7)),J=z0._deg30InRad*Math.exp(-(((A-z0._deg275InRad)/z0._deg25InRad)**2));return-Math.sin(2*J)*Y}static _calculateT(A){return 1-0.17*Math.cos(A-z0._deg30InRad)+0.24*Math.cos(A*2)+0.32*Math.cos(A*3+z0._deg6InRad)-0.2*Math.cos(A*4-z0._deg63InRad)}static _calculate_ahp(A,Q,B,Y){let J=B+Y;if(A===0)return J;if(Q<=z0._deg180InRad)return J/2;if(J>8)+4*Z*Z+((767-F)*U*U>>8),E=(G-Y)*this._whitePoint.a;return Math.sqrt($+E*E)}_setDefaults(){}},RR=class extends AZ{calculateRaw(A,Q,B,Y,J,C,X,G){let F=J-A,W=C-Q,Z=X-B,U=G-Y;return Math.sqrt(this._kR*F*F+this._kG*W*W+this._kB*Z*Z+this._kA*U*U)}},MWA=class extends RR{_setDefaults(){this._kR=1,this._kG=1,this._kB=1,this._kA=1}},zWA=class extends RR{_setDefaults(){this._kR=0.2126,this._kG=0.7152,this._kB=0.0722,this._kA=1}},RWA=class extends RR{_setDefaults(){this._kR=0.2126,this._kG=0.7152,this._kB=0.0722,this._kA=0}},wR=class extends AZ{calculateRaw(A,Q,B,Y,J,C,X,G){let F=J-A,W=C-Q,Z=X-B,U=G-Y;if(F<0)F=0-F;if(W<0)W=0-W;if(Z<0)Z=0-Z;if(U<0)U=0-U;return this._kR*F+this._kG*W+this._kB*Z+this._kA*U}},wWA=class extends wR{_setDefaults(){this._kR=1,this._kG=1,this._kB=1,this._kA=1}},jWA=class extends wR{_setDefaults(){this._kR=0.4984,this._kG=0.8625,this._kB=0.2979,this._kA=1}},OWA=class extends wR{_setDefaults(){this._kR=0.2126,this._kG=0.7152,this._kB=0.0722,this._kA=1}},PWA=class extends AZ{calculateRaw(A,Q,B,Y,J,C,X,G){let F=(G-Y)*this._whitePoint.a;return this._colordifferenceCh(A*this._whitePoint.r,J*this._whitePoint.r,F)+this._colordifferenceCh(Q*this._whitePoint.g,C*this._whitePoint.g,F)+this._colordifferenceCh(B*this._whitePoint.b,X*this._whitePoint.b,F)}_colordifferenceCh(A,Q,B){let Y=A-Q,J=Y+B;return Y*Y+J*J}_setDefaults(){}},ZYB={};TX(ZYB,{AbstractPaletteQuantizer:()=>pH,ColorHistogram:()=>nH,NeuQuant:()=>_0,NeuQuantFloat:()=>v0,RGBQuant:()=>kWA,WuColorCube:()=>_WA,WuQuant:()=>nU});var pH=class{quantizeSync(){for(let A of this.quantize())if(A.palette)return A.palette;throw Error("unreachable")}},V8=class{constructor(){ZA(this,"r"),ZA(this,"g"),ZA(this,"b"),ZA(this,"a"),ZA(this,"uint32"),ZA(this,"rgba"),this.uint32=4294967295,this.r=this.g=this.b=this.a=0,this.rgba=[,,,,],this.rgba[0]=0,this.rgba[1]=0,this.rgba[2]=0,this.rgba[3]=0}static createByQuadruplet(A){let Q=new V8;return Q.r=A[0]|0,Q.g=A[1]|0,Q.b=A[2]|0,Q.a=A[3]|0,Q._loadUINT32(),Q._loadQuadruplet(),Q}static createByRGBA(A,Q,B,Y){let J=new V8;return J.r=A|0,J.g=Q|0,J.b=B|0,J.a=Y|0,J._loadUINT32(),J._loadQuadruplet(),J}static createByUint32(A){let Q=new V8;return Q.uint32=A>>>0,Q._loadRGBA(),Q._loadQuadruplet(),Q}from(A){this.r=A.r,this.g=A.g,this.b=A.b,this.a=A.a,this.uint32=A.uint32,this.rgba[0]=A.r,this.rgba[1]=A.g,this.rgba[2]=A.b,this.rgba[3]=A.a}getLuminosity(A){let Q=this.r,B=this.g,Y=this.b;if(A)Q=Math.min(255,255-this.a+this.a*Q/255),B=Math.min(255,255-this.a+this.a*B/255),Y=Math.min(255,255-this.a+this.a*Y/255);return Q*0.2126+B*0.7152+Y*0.0722}_loadUINT32(){this.uint32=(this.a<<24|this.b<<16|this.g<<8|this.r)>>>0}_loadRGBA(){this.r=this.uint32&255,this.g=this.uint32>>>8&255,this.b=this.uint32>>>16&255,this.a=this.uint32>>>24&255}_loadQuadruplet(){this.rgba[0]=this.r,this.rgba[1]=this.g,this.rgba[2]=this.b,this.rgba[3]=this.a}},PX=class{constructor(){ZA(this,"_pointArray"),ZA(this,"_width"),ZA(this,"_height"),this._width=0,this._height=0,this._pointArray=[]}getWidth(){return this._width}getHeight(){return this._height}setWidth(A){this._width=A}setHeight(A){this._height=A}getPointArray(){return this._pointArray}clone(){let A=new PX;A._width=this._width,A._height=this._height;for(let Q=0,B=this._pointArray.length;Q=X&&A=0;Q--)if(A.uint32===this._pointArray[Q].uint32)return!0;return!1}getNearestColor(A,Q){return this._pointArray[this._getNearestIndex(A,Q)|0]}getPointContainer(){return this._pointContainer}_nearestPointFromCache(A){return typeof this._i32idx[A]==="number"?this._i32idx[A]:-1}_getNearestIndex(A,Q){let B=this._nearestPointFromCache(""+Q.uint32);if(B>=0)return B;let Y=Number.MAX_VALUE;B=0;for(let J=0,C=this._pointArray.length;J{let B=zR(A.r,A.g,A.b),Y=zR(Q.r,Q.g,Q.b),J=A.r===A.g&&A.g===A.b?0:1+Xf(B.h,YWA),X=(Q.r===Q.g&&Q.g===Q.b?0:1+Xf(Y.h,YWA))-J;if(X)return-X;let G=A.getLuminosity(!0),F=Q.getLuminosity(!0);if(F-G!==0)return F-G;let W=(Y.s*100|0)-(B.s*100|0);if(W)return-W;return 0})}},Ff={};TX(Ff,{HueStatistics:()=>TWA,Palette:()=>iH,Point:()=>V8,PointContainer:()=>PX,ProgressTracker:()=>SX,arithmetic:()=>UWA});var $YB=class{constructor(){ZA(this,"num",0),ZA(this,"cols",[])}},TWA=class{constructor(A,Q){ZA(this,"_numGroups"),ZA(this,"_minCols"),ZA(this,"_stats"),ZA(this,"_groupsFull"),this._numGroups=A,this._minCols=Q,this._stats=[];for(let B=0;B<=A;B++)this._stats[B]=new $YB;this._groupsFull=0}check(A){if(this._groupsFull===this._numGroups+1)this.check=()=>{};let Q=A&255,B=A>>>8&255,Y=A>>>16&255,J=Q===B&&B===Y?0:1+Xf(zR(Q,B,Y).h,this._numGroups),C=this._stats[J],X=this._minCols;if(C.num++,C.num>X)return;if(C.num===X)this._groupsFull++;if(C.num<=X)this._stats[J].cols.push(A)}injectIntoDictionary(A){for(let Q=0;Q<=this._numGroups;Q++)if(this._stats[Q].num<=this._minCols)this._stats[Q].cols.forEach((B)=>{if(!A[B])A[B]=1;else A[B]++})}injectIntoArray(A){for(let Q=0;Q<=this._numGroups;Q++)if(this._stats[Q].num<=this._minCols)this._stats[Q].cols.forEach((B)=>{if(A.indexOf(B)===-1)A.push(B)})}},SWA=class{constructor(A,Q){ZA(this,"progress"),ZA(this,"_step"),ZA(this,"_range"),ZA(this,"_last"),ZA(this,"_progressRange"),this._range=A,this._progressRange=Q,this._step=Math.max(1,this._range/(SWA.steps+1)|0),this._last=-this._step,this.progress=0}shouldNotify(A){if(A-this._last>=this._step)return this._last=A,this.progress=Math.min(this._progressRange*this._last/this._range,this._progressRange),!0;return!1}},SX=SWA;ZA(SX,"steps",100);var eJ=3,UYB=class{constructor(A){ZA(this,"r"),ZA(this,"g"),ZA(this,"b"),ZA(this,"a"),this.r=this.g=this.b=this.a=A}toPoint(){return V8.createByRGBA(this.r>>eJ,this.g>>eJ,this.b>>eJ,this.a>>eJ)}subtract(A,Q,B,Y){this.r-=A|0,this.g-=Q|0,this.b-=B|0,this.a-=Y|0}},CB=class extends pH{constructor(A,Q=256){super();ZA(this,"_pointArray"),ZA(this,"_networkSize"),ZA(this,"_network"),ZA(this,"_sampleFactor"),ZA(this,"_radPower"),ZA(this,"_freq"),ZA(this,"_bias"),ZA(this,"_distance"),this._distance=A,this._pointArray=[],this._sampleFactor=1,this._networkSize=Q,this._distance.setWhitePoint(255<>3)*CB._radiusBias,G=X>>CB._radiusBiasShift;if(G<=1)G=0;for(let Z=0;Z>>0;let F;if(Q=Q)U-=Q;if(Z++,J===0)J=1;if(Z%J===0){if(C-=C/B|0,X-=X/CB._radiusDecrease|0,G=X>>CB._radiusBiasShift,G<=1)G=0;for(let D=0;D>>0}}}_buildPalette(){let A=new iH;return this._network.forEach((Q)=>{A.add(Q.toPoint())}),A.sort(),A}_alterNeighbour(A,Q,B,Y,J,C){let X=Q-A;if(X<-1)X=-1;let G=Q+A;if(G>this._networkSize)G=this._networkSize;let F=Q+1,W=Q-1,Z=1;while(FX){let U=this._radPower[Z++]/CB._alphaRadBias;if(FX){let $=this._network[W--];$.subtract(U*($.r-J),U*($.g-Y),U*($.b-B),U*($.a-C))}}}_alterSingle(A,Q,B,Y,J,C){A/=CB._initAlpha;let X=this._network[Q];X.subtract(A*(X.r-J),A*(X.g-Y),A*(X.b-B),A*(X.a-C))}_contest(A,Q,B,Y){let J=1020<>CB._initialBiasShift-eJ);if($>CB._betaShift;this._freq[W]-=E,this._bias[W]+=E<>CB._betaShift);ZA(_0,"_betaGamma",CB._initialBias<>A9,this.g>>A9,this.b>>A9,this.a>>A9)}subtract(A,Q,B,Y){this.r-=A,this.g-=Q,this.b-=B,this.a-=Y}},XB=class extends pH{constructor(A,Q=256){super();ZA(this,"_pointArray"),ZA(this,"_networkSize"),ZA(this,"_network"),ZA(this,"_sampleFactor"),ZA(this,"_radPower"),ZA(this,"_freq"),ZA(this,"_bias"),ZA(this,"_distance"),this._distance=A,this._pointArray=[],this._sampleFactor=1,this._networkSize=Q,this._distance.setWhitePoint(255<>3)*XB._radiusBias,G=X>>XB._radiusBiasShift;if(G<=1)G=0;for(let Z=0;Z=Q)U-=Q;if(Z++,J===0)J=1;if(Z%J===0){if(C-=C/B,X-=X/XB._radiusDecrease,G=X>>XB._radiusBiasShift,G<=1)G=0;for(let D=0;D{A.add(Q.toPoint())}),A.sort(),A}_alterNeighbour(A,Q,B,Y,J,C){let X=Q-A;if(X<-1)X=-1;let G=Q+A;if(G>this._networkSize)G=this._networkSize;let F=Q+1,W=Q-1,Z=1;while(FX){let U=this._radPower[Z++]/XB._alphaRadBias;if(FX){let $=this._network[W--];$.subtract(U*($.r-J),U*($.g-Y),U*($.b-B),U*($.a-C))}}}_alterSingle(A,Q,B,Y,J,C){A/=XB._initAlpha;let X=this._network[Q];X.subtract(A*(X.r-J),A*(X.g-Y),A*(X.b-B),A*(X.a-C))}_contest(A,Q,B,Y){let J=1020<>XB._initialBiasShift-A9);if($>XB._betaShift;this._freq[W]-=E,this._bias[W]+=E<>XB._betaShift);ZA(v0,"_betaGamma",XB._initialBias<this._histogram[Y]-this._histogram[B]);if(A.length===0)return[];let Q;switch(this._method){case 1:let B=Math.min(A.length,this._initColors),Y=A[B-1],J=this._histogram[Y];Q=A.slice(0,B);let C=B,X=A.length;while(C+B)}_colorStats1D(A){let Q=this._histogram,B=A.getPointArray(),Y=B.length;for(let J=0;J{let Z=Math.round(W.w*W.h/X)*cH._boxPixels;if(Z<2)Z=2;let U={};this._iterateBox(W,Q,($)=>{let E=Y[$].uint32;if(this._hueStats.check(E),E in F)F[E]++;else if(E in U){if(++U[E]>=Z)F[E]=U[E]}else U[E]=1})}),this._hueStats.injectIntoDictionary(F)}_iterateBox(A,Q,B){let Y=A,J=Y.y*Q+Y.x,C=(Y.y+Y.h-1)*Q+(Y.x+Y.w-1),X=Q-Y.w+1,G=0,F=J;do B.call(this,F),F+=++G%Y.w===0?X:1;while(F<=C)}_makeBoxes(A,Q,B,Y){let J=A%B,C=Q%Y,X=A-J,G=Q-C,F=[];for(let W=0;Wthis._colors){C.length=0;for(let Z=0;Zthis._colors*3?this._initialDistance:this._distanceIncrement}if(X$.distance-U.distance);let Z=0;while(X=0;Z--)if(Y[Z]===0){if(Z!==W-1)B[Z]=B[W-1];--W}B.length=W,Q.sort(),yield{palette:Q,progress:100}}};function dU(A){let Q=[];for(let B=0;B0){let B=this._sums[Q],Y=this._reds[Q]/B,J=this._greens[Q]/B,C=this._blues[Q]/B,X=this._alphas[Q]/B,G=V8.createByRGBA(Y|0,J|0,C|0,X|0);A.add(G)}A.sort(),yield{palette:A,progress:100}}*_preparePalette(){yield*this._calculateMoments();let A=0,Q=dU(this._colors);for(let X=1;X1?this._calculateVariance(this._cubes[A]):0,Q[X]=this._cubes[X].volume>1?this._calculateVariance(this._cubes[X]):0;else Q[A]=0,X--;A=0;let G=Q[0];for(let F=1;F<=X;++F)if(Q[F]>G)G=Q[F],A=F;if(G<=0){this._colors=X+1;break}}let B=[],Y=[],J=[],C=[];for(let X=0;X0)B[X]=PQ._volume(this._cubes[X],this._momentsRed)/G|0,Y[X]=PQ._volume(this._cubes[X],this._momentsGreen)/G|0,J[X]=PQ._volume(this._cubes[X],this._momentsBlue)/G|0,C[X]=PQ._volume(this._cubes[X],this._momentsAlpha)/G|0;else B[X]=0,Y[X]=0,J[X]=0,C[X]=0}this._reds=dU(this._colors+1),this._greens=dU(this._colors+1),this._blues=dU(this._colors+1),this._alphas=dU(this._colors+1),this._sums=dU(this._colors+1);for(let X=0,G=this._pixels.length;X>Q)+1,Y=(A.g>>Q)+1,J=(A.b>>Q)+1,C=(A.a>>Q)+1;this._weights[C][B][Y][J]++,this._momentsRed[C][B][Y][J]+=A.r,this._momentsGreen[C][B][Y][J]+=A.g,this._momentsBlue[C][B][Y][J]+=A.b,this._momentsAlpha[C][B][Y][J]+=A.a,this._moments[C][B][Y][J]+=this._table[A.r]+this._table[A.g]+this._table[A.b]+this._table[A.a]}*_calculateMoments(){let A=[],Q=[],B=[],Y=[],J=[],C=[],X=lU(this._sideSize,this._sideSize,this._sideSize),G=lU(this._sideSize,this._sideSize,this._sideSize),F=lU(this._sideSize,this._sideSize,this._sideSize),W=lU(this._sideSize,this._sideSize,this._sideSize),Z=lU(this._sideSize,this._sideSize,this._sideSize),U=lU(this._sideSize,this._sideSize,this._sideSize),$=0,E=new SX(this._alphaMaxSideIndex*this._maxSideIndex,99);for(let K=1;K<=this._alphaMaxSideIndex;++K){pU(X,this._sideSize,this._sideSize,this._sideSize,0),pU(G,this._sideSize,this._sideSize,this._sideSize,0),pU(F,this._sideSize,this._sideSize,this._sideSize,0),pU(W,this._sideSize,this._sideSize,this._sideSize,0),pU(Z,this._sideSize,this._sideSize,this._sideSize,0),pU(U,this._sideSize,this._sideSize,this._sideSize,0);for(let I=1;I<=this._maxSideIndex;++I,++$){if(E.shouldNotify($))yield{progress:E.progress};iU(A,this._sideSize,0),iU(Q,this._sideSize,0),iU(B,this._sideSize,0),iU(Y,this._sideSize,0),iU(J,this._sideSize,0),iU(C,this._sideSize,0);for(let V=1;V<=this._maxSideIndex;++V){let H=0,D=0,L=0,z=0,M=0,N=0;for(let q=1;q<=this._maxSideIndex;++q)H+=this._weights[K][I][V][q],D+=this._momentsRed[K][I][V][q],L+=this._momentsGreen[K][I][V][q],z+=this._momentsBlue[K][I][V][q],M+=this._momentsAlpha[K][I][V][q],N+=this._moments[K][I][V][q],A[q]+=H,Q[q]+=D,B[q]+=L,Y[q]+=z,J[q]+=M,C[q]+=N,X[I][V][q]=X[I-1][V][q]+A[q],G[I][V][q]=G[I-1][V][q]+Q[q],F[I][V][q]=F[I-1][V][q]+B[q],W[I][V][q]=W[I-1][V][q]+Y[q],Z[I][V][q]=Z[I-1][V][q]+J[q],U[I][V][q]=U[I-1][V][q]+C[q],this._weights[K][I][V][q]=this._weights[K-1][I][V][q]+X[I][V][q],this._momentsRed[K][I][V][q]=this._momentsRed[K-1][I][V][q]+G[I][V][q],this._momentsGreen[K][I][V][q]=this._momentsGreen[K-1][I][V][q]+F[I][V][q],this._momentsBlue[K][I][V][q]=this._momentsBlue[K-1][I][V][q]+W[I][V][q],this._momentsAlpha[K][I][V][q]=this._momentsAlpha[K-1][I][V][q]+Z[I][V][q],this._moments[K][I][V][q]=this._moments[K-1][I][V][q]+U[I][V][q]}}}}static _volumeFloat(A,Q){return Q[A.alphaMaximum][A.redMaximum][A.greenMaximum][A.blueMaximum]-Q[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMaximum]-Q[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMaximum]+Q[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMaximum]-Q[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMaximum]+Q[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMaximum]+Q[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMaximum]-Q[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(Q[A.alphaMaximum][A.redMaximum][A.greenMaximum][A.blueMinimum]-Q[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMinimum]-Q[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMinimum]+Q[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]-Q[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMinimum]+Q[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]+Q[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]-Q[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum])}static _volume(A,Q){return PQ._volumeFloat(A,Q)|0}static _top(A,Q,B,Y){let J;switch(Q){case PQ._alpha:J=Y[B][A.redMaximum][A.greenMaximum][A.blueMaximum]-Y[B][A.redMaximum][A.greenMinimum][A.blueMaximum]-Y[B][A.redMinimum][A.greenMaximum][A.blueMaximum]+Y[B][A.redMinimum][A.greenMinimum][A.blueMaximum]-(Y[B][A.redMaximum][A.greenMaximum][A.blueMinimum]-Y[B][A.redMaximum][A.greenMinimum][A.blueMinimum]-Y[B][A.redMinimum][A.greenMaximum][A.blueMinimum]+Y[B][A.redMinimum][A.greenMinimum][A.blueMinimum]);break;case PQ._red:J=Y[A.alphaMaximum][B][A.greenMaximum][A.blueMaximum]-Y[A.alphaMaximum][B][A.greenMinimum][A.blueMaximum]-Y[A.alphaMinimum][B][A.greenMaximum][A.blueMaximum]+Y[A.alphaMinimum][B][A.greenMinimum][A.blueMaximum]-(Y[A.alphaMaximum][B][A.greenMaximum][A.blueMinimum]-Y[A.alphaMaximum][B][A.greenMinimum][A.blueMinimum]-Y[A.alphaMinimum][B][A.greenMaximum][A.blueMinimum]+Y[A.alphaMinimum][B][A.greenMinimum][A.blueMinimum]);break;case PQ._green:J=Y[A.alphaMaximum][A.redMaximum][B][A.blueMaximum]-Y[A.alphaMaximum][A.redMinimum][B][A.blueMaximum]-Y[A.alphaMinimum][A.redMaximum][B][A.blueMaximum]+Y[A.alphaMinimum][A.redMinimum][B][A.blueMaximum]-(Y[A.alphaMaximum][A.redMaximum][B][A.blueMinimum]-Y[A.alphaMaximum][A.redMinimum][B][A.blueMinimum]-Y[A.alphaMinimum][A.redMaximum][B][A.blueMinimum]+Y[A.alphaMinimum][A.redMinimum][B][A.blueMinimum]);break;case PQ._blue:J=Y[A.alphaMaximum][A.redMaximum][A.greenMaximum][B]-Y[A.alphaMaximum][A.redMaximum][A.greenMinimum][B]-Y[A.alphaMaximum][A.redMinimum][A.greenMaximum][B]+Y[A.alphaMaximum][A.redMinimum][A.greenMinimum][B]-(Y[A.alphaMinimum][A.redMaximum][A.greenMaximum][B]-Y[A.alphaMinimum][A.redMaximum][A.greenMinimum][B]-Y[A.alphaMinimum][A.redMinimum][A.greenMaximum][B]+Y[A.alphaMinimum][A.redMinimum][A.greenMinimum][B]);break;default:throw Error("impossible")}return J|0}static _bottom(A,Q,B){switch(Q){case PQ._alpha:return-B[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMaximum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMaximum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMaximum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(-B[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMinimum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);case PQ._red:return-B[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMaximum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMaximum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMaximum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(-B[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMinimum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);case PQ._green:return-B[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMaximum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMaximum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMaximum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(-B[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);case PQ._blue:return-B[A.alphaMaximum][A.redMaximum][A.greenMaximum][A.blueMinimum]+B[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]-(-B[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMinimum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);default:return 0}}_calculateVariance(A){let Q=PQ._volume(A,this._momentsRed),B=PQ._volume(A,this._momentsGreen),Y=PQ._volume(A,this._momentsBlue),J=PQ._volume(A,this._momentsAlpha),C=PQ._volumeFloat(A,this._moments),X=PQ._volume(A,this._weights),G=Q*Q+B*B+Y*Y+J*J;return C-G/X}_maximize(A,Q,B,Y,J,C,X,G,F){let W=PQ._bottom(A,Q,this._momentsRed)|0,Z=PQ._bottom(A,Q,this._momentsGreen)|0,U=PQ._bottom(A,Q,this._momentsBlue)|0,$=PQ._bottom(A,Q,this._momentsAlpha)|0,E=PQ._bottom(A,Q,this._weights)|0,K=0,I=-1;for(let V=B;VK)K=q,I=V}}}return{max:K,position:I}}_cut(A,Q){let B,Y=PQ._volume(A,this._momentsRed),J=PQ._volume(A,this._momentsGreen),C=PQ._volume(A,this._momentsBlue),X=PQ._volume(A,this._momentsAlpha),G=PQ._volume(A,this._weights),F=this._maximize(A,PQ._red,A.redMinimum+1,A.redMaximum,Y,J,C,X,G),W=this._maximize(A,PQ._green,A.greenMinimum+1,A.greenMaximum,Y,J,C,X,G),Z=this._maximize(A,PQ._blue,A.blueMinimum+1,A.blueMaximum,Y,J,C,X,G),U=this._maximize(A,PQ._alpha,A.alphaMinimum+1,A.alphaMaximum,Y,J,C,X,G);if(U.max>=F.max&&U.max>=W.max&&U.max>=Z.max){if(B=PQ._alpha,U.position<0)return!1}else if(F.max>=U.max&&F.max>=W.max&&F.max>=Z.max)B=PQ._red;else if(W.max>=U.max&&W.max>=F.max&&W.max>=Z.max)B=PQ._green;else B=PQ._blue;switch(Q.redMaximum=A.redMaximum,Q.greenMaximum=A.greenMaximum,Q.blueMaximum=A.blueMaximum,Q.alphaMaximum=A.alphaMaximum,B){case PQ._red:Q.redMinimum=A.redMaximum=F.position,Q.greenMinimum=A.greenMinimum,Q.blueMinimum=A.blueMinimum,Q.alphaMinimum=A.alphaMinimum;break;case PQ._green:Q.greenMinimum=A.greenMaximum=W.position,Q.redMinimum=A.redMinimum,Q.blueMinimum=A.blueMinimum,Q.alphaMinimum=A.alphaMinimum;break;case PQ._blue:Q.blueMinimum=A.blueMaximum=Z.position,Q.redMinimum=A.redMinimum,Q.greenMinimum=A.greenMinimum,Q.alphaMinimum=A.alphaMinimum;break;case PQ._alpha:Q.alphaMinimum=A.alphaMaximum=U.position,Q.blueMinimum=A.blueMinimum,Q.redMinimum=A.redMinimum,Q.greenMinimum=A.greenMinimum;break}return A.volume=(A.redMaximum-A.redMinimum)*(A.greenMaximum-A.greenMinimum)*(A.blueMaximum-A.blueMinimum)*(A.alphaMaximum-A.alphaMinimum),Q.volume=(Q.redMaximum-Q.redMinimum)*(Q.greenMaximum-Q.greenMinimum)*(Q.blueMaximum-Q.blueMinimum)*(Q.alphaMaximum-Q.alphaMinimum),!0}_initialize(A){this._colors=A,this._cubes=[];for(let Q=0;QjR,ErrorDiffusionArray:()=>c1,ErrorDiffusionArrayKernel:()=>yWA,ErrorDiffusionRiemersma:()=>Wf,NearestColor:()=>vWA});var jR=class{quantizeSync(A,Q){for(let B of this.quantize(A,Q))if(B.pointContainer)return B.pointContainer;throw Error("unreachable")}},vWA=class extends jR{constructor(A){super();ZA(this,"_distance"),this._distance=A}*quantize(A,Q){let B=A.getPointArray(),Y=A.getWidth(),J=A.getHeight(),C=new SX(J,99);for(let X=0;X{return A[A.FloydSteinberg=0]="FloydSteinberg",A[A.FalseFloydSteinberg=1]="FalseFloydSteinberg",A[A.Stucki=2]="Stucki",A[A.Atkinson=3]="Atkinson",A[A.Jarvis=4]="Jarvis",A[A.Burkes=5]="Burkes",A[A.Sierra=6]="Sierra",A[A.TwoSierra=7]="TwoSierra",A[A.SierraLite=8]="SierraLite",A})(yWA||{}),c1=class extends jR{constructor(A,Q,B=!0,Y=0,J=!1){super();ZA(this,"_minColorDistance"),ZA(this,"_serpentine"),ZA(this,"_kernel"),ZA(this,"_calculateErrorLikeGIMP"),ZA(this,"_distance"),this._setKernel(Q),this._distance=A,this._minColorDistance=Y,this._serpentine=B,this._calculateErrorLikeGIMP=J}*quantize(A,Q){let B=A.getPointArray(),Y=new V8,J=A.getWidth(),C=A.getHeight(),X=[],G=1,F=1;for(let Z of this._kernel){let U=Z[2]+1;if(F=0&&k+I=0&&T+ZQ)A.length=Q;let B=A.length;for(let Y=0;Y=0&&A.x=0&&A.y{let W=B[G+F*Y],{r:Z,g:U,b:$,a:E}=W;for(let H=0;HLYB});var DYB=0.01,NYB=0.03;function LYB(A,Q){if(A.getHeight()!==Q.getHeight()||A.getWidth()!==Q.getWidth())throw Error("Images have different sizes!");let Y=255,J=(DYB*Y)**2,C=(NYB*Y)**2,X=0,G=0;return qYB(A,Q,(F,W,Z,U)=>{let $=0,E=0,K=0;for(let L=0;Lprocess.nextTick(A):(A)=>setTimeout(A,0);function hWA(A,{colorDistanceFormula:Q,paletteQuantization:B,colors:Y}={}){let J=xWA(Q),C=zYB(J,B,Y);return A.forEach((X)=>C.sample(X)),C.quantizeSync()}function gWA(A,Q,{colorDistanceFormula:B,imageQuantization:Y}={}){let J=xWA(B);return MYB(J,Y).quantizeSync(A,Q)}function xWA(A="euclidean-bt709"){switch(A){case"cie94-graphic-arts":return new LWA;case"cie94-textiles":return new NWA;case"ciede2000":return new _C;case"color-metric":return new qWA;case"euclidean":return new MWA;case"euclidean-bt709":return new zWA;case"euclidean-bt709-noalpha":return new RWA;case"manhattan":return new wWA;case"manhattan-bt709":return new OWA;case"manhattan-nommyde":return new jWA;case"pngquant":return new PWA;default:throw Error(`Unknown colorDistanceFormula ${A}`)}}function MYB(A,Q="floyd-steinberg"){switch(Q){case"nearest":return new vWA(A);case"riemersma":return new Wf(A);case"floyd-steinberg":return new c1(A,0);case"false-floyd-steinberg":return new c1(A,1);case"stucki":return new c1(A,2);case"atkinson":return new c1(A,3);case"jarvis":return new c1(A,4);case"burkes":return new c1(A,5);case"sierra":return new c1(A,6);case"two-sierra":return new c1(A,7);case"sierra-lite":return new c1(A,8);default:throw Error(`Unknown imageQuantization ${Q}`)}}function zYB(A,Q="wuquant",B=256){switch(Q){case"neuquant":return new _0(A,B);case"rgbquant":return new kWA(A,B);case"wuquant":return new nU(A,B);case"neuquant-float":return new v0(A,B);default:throw Error(`Unknown paletteQuantization ${Q}`)}}var RYB=SB.object({colors:SB.number().optional(),colorDistanceFormula:SB.union([SB.literal("cie94-textiles"),SB.literal("cie94-graphic-arts"),SB.literal("ciede2000"),SB.literal("color-metric"),SB.literal("euclidean"),SB.literal("euclidean-bt709-noalpha"),SB.literal("euclidean-bt709"),SB.literal("manhattan"),SB.literal("manhattan-bt709"),SB.literal("manhattan-nommyde"),SB.literal("pngquant")]).optional(),paletteQuantization:SB.union([SB.literal("neuquant"),SB.literal("neuquant-float"),SB.literal("rgbquant"),SB.literal("wuquant")]).optional(),imageQuantization:SB.union([SB.literal("nearest"),SB.literal("riemersma"),SB.literal("floyd-steinberg"),SB.literal("false-floyd-steinberg"),SB.literal("stucki"),SB.literal("atkinson"),SB.literal("jarvis"),SB.literal("burkes"),SB.literal("sierra"),SB.literal("two-sierra"),SB.literal("sierra-lite")]).optional()}),fWA={quantize(A,Q){let{colors:B,colorDistanceFormula:Y,paletteQuantization:J,imageQuantization:C}=RYB.parse(Q),X=Ff.PointContainer.fromUint8Array(A.bitmap.data,A.bitmap.width,A.bitmap.height),G=hWA([X],{colors:B,colorDistanceFormula:Y,paletteQuantization:J}),F=gWA(X,G,{colorDistanceFormula:Y,imageQuantization:C});return A.bitmap.data=Buffer.from(F.toUint8Array()),A}};var jYB=[hU,pGA,iGA,gU,xFA,fFA,mU,bFA,mFA,uFA,dFA,aFA,oFA,tFA,kC,QWA,BWA,fWA],OYB=[j3,fCA,x3,b3,d3,CR],pWY={bmp:j3().mime,gif:x3().mime,jpeg:b3().mime,png:d3().mime,tiff:CR().mime},sU=hFA({formats:OYB,plugins:jYB});var H8={OPTIMIZED_DIR:".optimized",TEMP_DIR:"hytopia-models-temp",CHECKSUM_EXT:".md5",VERSION:4,DATA_EXT:".data.json",DIRECTORIES:[zY.assetsLibraryPath,qJ.resolve(process.cwd(),"assets")].filter(Boolean),OPTIMIZER_RUNS:[{suffix:"",options:["--compress","false","--instance","false","--simplify","false","--texture-compress","false"],stripAnimations:!1,optimalMaxMeshCount:10,optimalMaxMeshHint:"Reduce nodes/meshes in your source model, or use fewer unique materials so primitives can be merged in the generated optimized model.",keepEmptyNamedNodes:!1},{suffix:"-named-nodes",options:["--compress","false","--flatten","false","--instance","false","--simplify","false","--join","false","--prune","false","--texture-compress","false"],stripAnimations:!1,optimalMaxMeshCount:20,optimalMaxMeshHint:"Use fewer unique materials in your source model so primitives sharing the same material can be joined in the generated optimized model. Named nodes are preserved, reduce unnecessary named nodes to further reduce mesh count.",keepEmptyNamedNodes:!0},{suffix:"-no-animations",options:["--compress","false","--instance","false","--simplify","false","--texture-compress","false"],stripAnimations:!0,optimalMaxMeshCount:1,optimalMaxMeshHint:"Use a single material/texture atlas in your source model so all primitives can merge into one mesh in the generated optimized model.",keepEmptyNamedNodes:!1}]},OR=[bI,uI];class TY{static instance=new TY;optimize=process.env.NODE_ENV!=="production";_modelUriAnimationNames=new Map;_modelUriBoundingBoxes=new Map;_modelUriNodeNames=new Map;_modelUriTrimeshes=new Map;constructor(){}async preloadModels(){let A=await this._getAbsoluteModelPaths();console.info(`ModelRegistry.preloadModels(): Preloading ${A.length} models...`);let Q=performance.now();for(let Y of A){if(this.optimize)await this._resolveOptimizedModelPath(Y);await this._loadModelData(Y)}let B=performance.now();console.info(`ModelRegistry.preloadModels(): Preloaded ${A.length} models in ${B-Q}ms!`)}getAllModelUris(){return Array.from(this._modelUriBoundingBoxes.keys())}getAnimationNames(A){let Q=this._modelUriAnimationNames.get(A);if(!Q)return n.error(`ModelRegistry.getAnimationNames(): Model ${A} not found!`),[];return Q}getBoundingBox(A){let Q=this._modelUriBoundingBoxes.get(A);if(!Q)return n.error(`ModelRegistry.getBoundingBox(): Model ${A} not found!`),{min:{x:0,y:0,z:0},max:{x:1,y:1,z:1}};return Q}getDepth(A){let Q=this.getBoundingBox(A);return Q.max.z-Q.min.z}getHeight(A){let Q=this.getBoundingBox(A);return Q.max.y-Q.min.y}getNodeNames(A){let Q=this._modelUriNodeNames.get(A);if(!Q)return n.error(`ModelRegistry.getNodeNames(): Model ${A} not found!`),[];return Q}getTrimesh(A,Q={x:1,y:1,z:1}){let B=this._modelUriTrimeshes.get(A);if(!B){n.error(`ModelRegistry.getTrimesh(): Model ${A} not found!`);return}let Y=B.vertices;if(Q.x!==1||Q.y!==1||Q.z!==1){Y=new Float32Array(Y.length);for(let J=0;JK.getName()),Z=G.getRoot().listAnimations().map((K)=>K.getName()),U=await this._buildTrimesh(G),$={},E=new x4().registerExtensions(OR);for(let K of H8.OPTIMIZER_RUNS){let I=this._buildOptimizedModelPath(A),V=this._buildOptimizedSuffixedModelPath(I,K.suffix);$[K.suffix]={meshCount:(await E.read(V)).getRoot().listMeshes().length}}X={schemaVersion:H8.VERSION,source:{uri:Y,sha256:J},animationNames:Z,boundingBox:{min:{x:F.min[0],y:F.min[1],z:F.min[2]},max:{x:F.max[0],y:F.max[1],z:F.max[2]}},nodeNames:W,trimesh:U?{vertices:Array.from(U.vertices),indices:Array.from(U.indices)}:void 0,optimizedModelData:$};try{let K=qJ.dirname(B);I8.mkdirSync(K,{recursive:!0}),I8.writeFileSync(B,JSON.stringify(X))}catch(K){n.warning(`ModelRegistry._loadModelData(): Failed to write data file for ${Y}. Error: ${String(K)}`)}}if(process.env.NODE_ENV!=="production"&&!C)for(let G of H8.OPTIMIZER_RUNS){let F=X.optimizedModelData[G.suffix].meshCount;if(F>G.optimalMaxMeshCount)n.warning(`Model "${Y}" (${G.suffix}) has ${F} meshes (less is better, try not to exceed: ${G.optimalMaxMeshCount}). This may impact FPS if this model is used in a game. ${G.optimalMaxMeshHint}`)}this._modelUriAnimationNames.set(Y,X.animationNames),this._modelUriBoundingBoxes.set(Y,X.boundingBox),this._modelUriNodeNames.set(Y,X.nodeNames),this._modelUriTrimeshes.set(Y,X.trimesh?{vertices:new Float32Array(X.trimesh.vertices),indices:new Uint32Array(X.trimesh.indices)}:void 0)}async _resolveOptimizedModelPath(A){let Q=this._buildOptimizedModelPath(A);if(this._isOptimizedVersionValid(A))return Q;return await this._optimizeModel(A,Q)}_isOptimizedVersionValid(A){let Q=`${this._buildOptimizedModelPath(A)}${H8.CHECKSUM_EXT}`;if(!I8.existsSync(Q))return!1;let B=this._calculateChecksum(A),Y=I8.readFileSync(Q,"utf8");return B===Y}_calculateChecksum(A){if(!I8.existsSync(A))return"";let Q=I8.readFileSync(A);return PYB.createHash("sha256").update(Q.toString("base64")).update(H8.VERSION.toString()).digest("hex")}_buildOptimizedModelPath(A){let Q=qJ.basename(A),B=Q.replace(/\.[^/.]+$/,""),Y=qJ.dirname(A),J=qJ.join(Y,H8.OPTIMIZED_DIR,B);return qJ.join(J,Q)}_buildOptimizedSuffixedModelPath(A,Q){return A.replace(/(\.[^/.]+)$/,`${Q}.glb`)}async _buildTrimesh(A,Q=1,B=0.001){let Y=JCA(A);Y.setLogger(new R9(PI.WARN)),await Y.transform(r5A({pivot:"center"}),$g(),Ug(),Wg(),ICA({simplifier:bWA.MeshoptSimplifier,ratio:Q,error:B}),BCA());for(let $ of Y.getRoot().listScenes())for(let E of $.listChildren())ACA(E);let J=[],C=0,X=0;for(let $ of Y.getRoot().listMeshes())for(let E of $.listPrimitives()){let K=E.getAttribute("POSITION"),I=E.getIndices();if(!K||!I)continue;let V=K.getArray(),H=I.getArray(),D=H instanceof Uint32Array?H:new Uint32Array(H);if(V.length===0||D.length===0)continue;J.push({vertices:V,indices:D}),C+=V.length,X+=D.length}if(J.length===0){n.error("ModelRegistry._buildTrimesh(): Model has no primitives with POSITION and INDICES!");return}let G=new Float32Array(C),F=new Uint32Array(X),W=0,Z=0,U=0;for(let $ of J){G.set($.vertices,W);let E=$.vertices.length/3;for(let K=0;K<$.indices.length;K++)F[U+K]=$.indices[K]+Z;W+=$.vertices.length,U+=$.indices.length,Z+=E}return{vertices:G,indices:F}}async _optimizeModel(A,Q){let B=qJ.dirname(Q);I8.rmSync(B,{recursive:!0,force:!0}),I8.mkdirSync(B,{recursive:!0}),console.info(`ModelRegistry: Optimizing model ${this._absoluteModelPathToModelUri(A)}...`);for(let Y of H8.OPTIMIZER_RUNS){let J=this._buildOptimizedSuffixedModelPath(Q,Y.suffix),C=await this._preprocessOptimizableModel(A,Y),X=await WI("npx",["@gltf-transform/cli","optimize",C,J,...Y.options]);if(X.stderr)return n.warning(`ModelRegistry._optimizeModel(): Error optimizing model ${this._absoluteModelPathToModelUri(A)}, defaulting to unoptimized model. Error: ${X.stderr}`),A;await this._embedModelMetadata(J);let G=await WI("npx",["@gltf-transform/cli","uastc",J,J,"--level","4","--zstd","10"]);if(G.stderr)n.warning(`ModelRegistry._optimizeModel(): Error compressing textures for model ${this._absoluteModelPathToModelUri(A)}, continuing without compression. Error: ${G.stderr}`)}return I8.writeFileSync(`${Q}${H8.CHECKSUM_EXT}`,this._calculateChecksum(A)),Q}async _embedModelMetadata(A){try{let Q=new x4().registerExtensions(OR),B=await Q.read(A);for(let Y of B.getRoot().listMaterials()){let C=Y.getBaseColorTexture()?.getImage(),X=!1;if(C)try{let G=Y.getAlphaMode()==="MASK"?Y.getAlphaCutoff()??0.5:0,F=Y.getAlpha(),W=G/F*255,{data:Z}=(await sU.read(Buffer.from(C))).bitmap;for(let U=3;U=W&&Z[U]<255){X=!0;break}}catch{}Y.setExtras({...Y.getExtras(),hasTransparency:X})}await Q.write(A,B)}catch(Q){n.warning(`ModelRegistry._embedModelMetadata(): Failed to embed metadata for ${A}. Error: ${String(Q)}`)}}async _preprocessOptimizableModel(A,Q){let B=new x4().registerExtensions(OR),Y=await B.read(A),J=!1;if(Q.stripAnimations){let C=Y.getRoot().listAnimations();if(C.length>0)C.forEach((X)=>X.dispose()),J=!0}if(Q.keepEmptyNamedNodes)await Y.transform($g({cleanup:!1}),Ug({cleanup:!1,keepNamed:!0}),H3({keepLeaves:!0})),J=!0;if(J){let C=qJ.join(TYB.tmpdir(),H8.TEMP_DIR);I8.mkdirSync(C,{recursive:!0});let X=qJ.join(C,qJ.basename(A));return await B.write(X,Y),X}return A}}var rU;((J)=>{J.DYNAMIC="dynamic";J.FIXED="fixed";J.KINEMATIC_POSITION="kinematic_position";J.KINEMATIC_VELOCITY="kinematic_velocity"})(rU||={});var Zf=0.001,mWA="dynamic";class j7 extends BQ{_additionalMass=0;_colliders=new Set;_explicitSleep=!1;_enabledPositions={x:!0,y:!0,z:!0};_enabledRotations={x:!0,y:!0,z:!0};_rigidBody;_rigidBodyDesc;_rigidBodyType;_simulation;constructor(A){super();A.type??=mWA,this._rigidBodyDesc=this._createRigidBodyDesc(A),this._rigidBodyType=A.type,this._applyRigidBodyOptions(A),this._autoAddToSimulation(A)}get additionalMass(){if(!this._requireNotRemoved("additionalMass"))return 0;return this._additionalMass}get additionalSolverIterations(){if(!this._requireNotRemoved("additionalSolverIterations"))return 0;return this._rigidBody?this._rigidBody.additionalSolverIterations():this._rigidBodyDesc.additionalSolverIterations}get angularDamping(){if(!this._requireNotRemoved("angularDamping"))return 0;return this._rigidBody?this._rigidBody.angularDamping():this._rigidBodyDesc.angularDamping}get angularVelocity(){if(!this._requireNotRemoved("angularVelocity"))return{x:0,y:0,z:0};return this._rigidBody?this._rigidBody.angvel():this._rigidBodyDesc.angvel}get colliders(){return this._colliders}get dominanceGroup(){if(!this._requireNotRemoved("dominanceGroup"))return 0;return this._rigidBody?this._rigidBody.dominanceGroup():this._rigidBodyDesc.dominanceGroup}get directionFromRotation(){let{x:A,y:Q,z:B,w:Y}=this.rotation;return{x:-2*(A*B+Y*Q),y:-2*(Q*B-Y*A),z:-(1-2*(A*A+Q*Q))}}get effectiveAngularInertia(){if(!this._requireNotRemoved("effectiveAngularInertia"))return;return this._rigidBody?this._rigidBody.effectiveAngularInertia():void 0}get effectiveInverseMass(){if(!this._requireNotRemoved("effectiveInverseMass"))return;return this._rigidBody?this._rigidBody.effectiveInvMass():void 0}get enabledRotations(){if(!this._requireNotRemoved("enabledRotations"))return{x:!0,y:!0,z:!0};return this._enabledRotations}get enabledPositions(){if(!this._requireNotRemoved("enabledPositions"))return{x:!0,y:!0,z:!0};return this._enabledPositions}get gravityScale(){if(!this._requireNotRemoved("gravityScale"))return 0;return this._rigidBody?this._rigidBody.gravityScale():this._rigidBodyDesc.gravityScale}get inverseMass(){if(!this._requireNotRemoved("inverseMass"))return;return this._rigidBody?this._rigidBody.invMass():void 0}get isCcdEnabled(){if(!this._requireNotRemoved("isCcdEnabled"))return!1;return this._rigidBody?this._rigidBody.isCcdEnabled():this._rigidBodyDesc.ccdEnabled}get isDynamic(){if(!this._requireNotRemoved("isDynamic"))return!1;return this._rigidBodyType==="dynamic"}get isEnabled(){if(!this._requireNotRemoved("isEnabled"))return!1;return this._rigidBody?this._rigidBody.isEnabled():this._rigidBodyDesc.enabled}get isFixed(){if(!this._requireNotRemoved("isFixed"))return!1;return this._rigidBodyType==="fixed"}get isKinematic(){if(!this._requireNotRemoved("isKinematic"))return!1;return["kinematic_position","kinematic_velocity"].includes(this._rigidBodyType)}get isKinematicPositionBased(){if(!this._requireNotRemoved("isKinematicPositionBased"))return!1;return this._rigidBodyType==="kinematic_position"}get isKinematicVelocityBased(){if(!this._requireNotRemoved("isKinematicVelocityBased"))return!1;return this._rigidBodyType==="kinematic_velocity"}get isMoving(){if(!this._requireNotRemoved("isMoving"))return!1;return this._rigidBody?this._rigidBody.isMoving():!1}get isRemoved(){return!this._rigidBody&&!this._rigidBodyDesc}get isSimulated(){if(!this._requireNotRemoved("isSimulated"))return!1;return this._rigidBody?!0:!1}get isSleeping(){if(!this._requireNotRemoved("isSleeping"))return!1;return this._rigidBody?this._rigidBody.isSleeping():this._rigidBodyDesc.sleeping}get linearDamping(){if(!this._requireNotRemoved("linearDamping"))return 0;return this._rigidBody?this._rigidBody.linearDamping():this._rigidBodyDesc.linearDamping}get linearVelocity(){if(!this._requireNotRemoved("linearVelocity"))return{x:0,y:0,z:0};return this._rigidBody?this._rigidBody.linvel():this._rigidBodyDesc.linvel}get localCenterOfMass(){if(!this._requireNotRemoved("localCenterOfMass"))return{x:0,y:0,z:0};return this._rigidBody?this._rigidBody.localCom():this._rigidBodyDesc.centerOfMass}get mass(){if(!this._requireNotRemoved("mass"))return 0;return this._rigidBody?this._rigidBody.mass():this._rigidBodyDesc.mass}get nextKinematicRotation(){if(!this._requireNotRemoved("nextKinematicRotation"))return{x:0,y:0,z:0,w:1};return this._rigidBody?this._rigidBody.nextRotation():this._rigidBodyDesc.rotation}get nextKinematicPosition(){if(!this._requireNotRemoved("nextKinematicPosition"))return{x:0,y:0,z:0};return this._rigidBody?this._rigidBody.nextTranslation():this._rigidBodyDesc.translation}get numColliders(){return this._colliders.size}get principalAngularInertia(){if(!this._requireNotRemoved("principalAngularInertia"))return{x:0,y:0,z:0};return this._rigidBody?this._rigidBody.principalInertia():this._rigidBodyDesc.principalAngularInertia}get principalAngularInertiaLocalFrame(){if(!this._requireNotRemoved("principalAngularInertiaLocalFrame"))return;return this._rigidBody?this._rigidBody.principalInertiaLocalFrame():void 0}get position(){if(!this._requireNotRemoved("position"))return{x:0,y:0,z:0};return this._rigidBody?this._rigidBody.translation():this._rigidBodyDesc.translation}get rawRigidBody(){if(!this._requireNotRemoved("rawRigidBody"))return;return this._rigidBody}get rotation(){if(!this._requireNotRemoved("rotation"))return{x:0,y:0,z:0,w:1};return this._rigidBody?this._rigidBody.rotation():this._rigidBodyDesc.rotation}get softCcdPrediction(){if(!this._requireNotRemoved("softCcdPrediction"))return 0;return this._rigidBody?this._rigidBody.softCcdPrediction():this._rigidBodyDesc.softCcdPrediction}get type(){if(!this._requireNotRemoved("type"))return"dynamic";return this._rigidBodyType}get worldCenterOfMass(){if(!this._requireNotRemoved("worldCenterOfMass"))return;return this._rigidBody?this._rigidBody.worldCom():void 0}setAdditionalMass(A){if(!this._requireDynamic("setAdditionalMass"))return;if(!this._requireNotRemoved("setAdditionalMass"))return;this._rigidBody?this._rigidBody.setAdditionalMass(A,!this._explicitSleep):this._rigidBodyDesc.setAdditionalMass(A)}setAdditionalMassProperties(A){if(!this._requireDynamic("setAdditionalMassProperties"))return;if(!this._requireNotRemoved("setAdditionalMassProperties"))return;let{additionalMass:Q,centerOfMass:B,principalAngularInertia:Y,principalAngularInertiaLocalFrame:J}=A;this._rigidBody?this._rigidBody.setAdditionalMassProperties(Q,B,Y,J,!this._explicitSleep):this._rigidBodyDesc.setAdditionalMassProperties(Q,B,Y,J)}setAdditionalSolverIterations(A){if(!this._requireDynamic("setAdditionalSolverIterations"))return;if(!this._requireNotRemoved("setAdditionalSolverIterations"))return;this._rigidBody?this._rigidBody.setAdditionalSolverIterations(A):this._rigidBodyDesc.setAdditionalSolverIterations(A)}setAngularDamping(A){if(!this._requireDynamic("setAngularDamping"))return;if(!this._requireNotRemoved("setAngularDamping"))return;this._rigidBody?this._rigidBody.setAngularDamping(A):this._rigidBodyDesc.setAngularDamping(A)}setAngularVelocity(A){if(!this._requireNotKinematicPositionBased("setAngularVelocity"))return;if(!this._requireNotRemoved("setAngularVelocity"))return;this._rigidBody?this._rigidBody.setAngvel(A,!this._explicitSleep):this._rigidBodyDesc.setAngvel(A)}setCcdEnabled(A){if(!this._requireDynamic("setCcdEnabled"))return;if(!this._requireNotRemoved("setCcdEnabled"))return;this._rigidBody?this._rigidBody.enableCcd(A):this._rigidBodyDesc.setCcdEnabled(A)}setDominanceGroup(A){if(!this._requireDynamic("setDominanceGroup"))return;if(!this._requireNotRemoved("setDominanceGroup"))return;this._rigidBody?this._rigidBody.setDominanceGroup(A):this._rigidBodyDesc.setDominanceGroup(A)}setEnabled(A){if(!this._requireNotRemoved("setEnabled"))return;this._rigidBody?this._rigidBody.setEnabled(A):this._rigidBodyDesc.setEnabled(A)}setEnabledPositions(A){if(!this._requireDynamic("setEnabledPositions"))return;if(!this._requireNotRemoved("setEnabledPositions"))return;this._rigidBody?this._rigidBody.setEnabledTranslations(A.x,A.y,A.z,!this._explicitSleep):this._rigidBodyDesc.enabledTranslations(A.x,A.y,A.z),this._enabledPositions=A}setEnabledRotations(A){if(!this._requireDynamic("setEnabledRotations"))return;if(!this._requireNotRemoved("setEnabledRotations"))return;this._rigidBody?this._rigidBody.setEnabledRotations(A.x,A.y,A.z,!this._explicitSleep):this._rigidBodyDesc.enabledRotations(A.x,A.y,A.z),this._enabledRotations=A}setGravityScale(A){if(!this._requireDynamic("setGravityScale"))return;if(!this._requireNotRemoved("setGravityScale"))return;this._rigidBody?this._rigidBody.setGravityScale(A,!this._explicitSleep):this._rigidBodyDesc.setGravityScale(A)}setLinearDamping(A){if(!this._requireDynamic("setLinearDamping"))return;if(!this._requireNotRemoved("setLinearDamping"))return;this._rigidBody?this._rigidBody.setLinearDamping(A):this._rigidBodyDesc.setLinearDamping(A)}setLinearVelocity(A){if(!this._requireNotKinematicPositionBased("setLinearVelocity"))return;if(!this._requireNotRemoved("setLinearVelocity"))return;this._rigidBody?this._rigidBody.setLinvel(A,!this._explicitSleep):this._rigidBodyDesc.setLinvel(A.x,A.y,A.z)}setNextKinematicRotation(A){if(!this._requireKinematic("setNextKinematicRotation"))return;if(!this._requireNotRemoved("setNextKinematicRotation"))return;this._rigidBody?this._rigidBody.setNextKinematicRotation(A):this._rigidBodyDesc.setRotation(A)}setNextKinematicPosition(A){if(!this._requireKinematic("setNextKinematicPosition"))return;if(!this._requireNotRemoved("setNextKinematicPosition"))return;this._rigidBody?this._rigidBody.setNextKinematicTranslation(A):this._rigidBodyDesc.setTranslation(A.x,A.y,A.z)}setPosition(A){if(!this._requireNotRemoved("setPosition"))return;this._rigidBody?this._rigidBody.setTranslation(A,!this._explicitSleep):this._rigidBodyDesc.setTranslation(A.x,A.y,A.z)}setRotation(A){if(!this._requireNotRemoved("setRotation"))return;this._rigidBody?this._rigidBody.setRotation(A,!this._explicitSleep):this._rigidBodyDesc.setRotation(A)}setSleeping(A){if(!this._requireDynamic("setSleeping"))return;if(!this._requireNotRemoved("setSleeping"))return;this._rigidBody?A?this._rigidBody.sleep():this._rigidBody.wakeUp():this._rigidBodyDesc.sleeping=A,this._explicitSleep=A}setSoftCcdPrediction(A){if(!this._requireDynamic("setSoftCcdPrediction"))return;if(!this._requireNotRemoved("setSoftCcdPrediction"))return;this._rigidBody?this._rigidBody.setSoftCcdPrediction(A):this._rigidBodyDesc.setSoftCcdPrediction(A)}setCollisionGroupsForSolidColliders(A){if(!this._requireNotRemoved("setCollisionGroupsForSolidColliders"))return;this._colliders.forEach((Q)=>{if(Q.isSensor)return;Q.setCollisionGroups(A)})}setCollisionGroupsForSensorColliders(A){if(!this._requireNotRemoved("setCollisionGroupsForSensorColliders"))return;this._colliders.forEach((Q)=>{if(!Q.isSensor)return;Q.setCollisionGroups(A)})}setType(A){if(!this._requireNotRemoved("setType"))return;let B={["dynamic"]:FB.RigidBodyType.Dynamic,["fixed"]:FB.RigidBodyType.Fixed,["kinematic_position"]:FB.RigidBodyType.KinematicPositionBased,["kinematic_velocity"]:FB.RigidBodyType.KinematicVelocityBased}[A];if(B===void 0)return n.error(`Invalid RigidBodyType: ${A}`);this._rigidBody?this._rigidBody.setBodyType(B,!this._explicitSleep):this._rigidBodyDesc.status=B,this._rigidBodyType=A}addForce(A){if(!this._requireNotRemoved("addForce"))return;if(!this._requireCreated("addForce"))return;if(!this._requireDynamic("addForce"))return;if(this._isNegligibleVector(A))return;this._rigidBody.addForce(A,!this._explicitSleep)}addTorque(A){if(!this._requireNotRemoved("addTorque"))return;if(!this._requireCreated("addTorque"))return;if(!this._requireDynamic("addTorque"))return;if(this._isNegligibleVector(A))return;this._rigidBody.addTorque(A,!this._explicitSleep)}addChildColliderToSimulation(A){if(!this._requireNotRemoved("addChildColliderToSimulation"))return;if(!this._requireCreated("addChildColliderToSimulation"))return;A.addToSimulation(this._simulation,this)}addToSimulation(A){if(!this._requireNotRemoved("addToSimulation"))return;if(this._rigidBody)return n.error("RigidBody.addToSimulation(): Rigid body already exists in the simulation!");this._simulation=A,this._rigidBody=this._simulation.createRawRigidBody(this._rigidBodyDesc),this._colliders.forEach((Q)=>{if(!Q.isSimulated)Q.addToSimulation(A,this)})}applyImpulse(A){if(!this._requireNotRemoved("applyImpulse"))return;if(!this._requireCreated("applyImpulse"))return;if(!this._requireDynamic("applyImpulse"))return;if(this._isNegligibleVector(A))return;this._rigidBody.applyImpulse(A,!this._explicitSleep)}applyImpulseAtPoint(A,Q){if(!this._requireNotRemoved("applyImpulseAtPoint"))return;if(!this._requireCreated("applyImpulseAtPoint"))return;if(!this._requireDynamic("applyImpulseAtPoint"))return;if(this._isNegligibleVector(A))return;this._rigidBody.applyImpulseAtPoint(A,Q,!this._explicitSleep)}applyTorqueImpulse(A){if(!this._requireNotRemoved("applyTorqueImpulse"))return;if(!this._requireCreated("applyTorqueImpulse"))return;if(!this._requireDynamic("applyTorqueImpulse"))return;this._rigidBody.applyTorqueImpulse(A,!this._explicitSleep)}createAndAddChildCollider(A){if(!this._requireNotRemoved("createAndAddChildCollider"))return null;return this._simulation?new S9({...A,parentRigidBody:this,simulation:this._simulation}):this._createAndAddPendingChildCollider(A)}createAndAddChildColliders(A){let Q=[];return A.forEach((B)=>{let Y=this.createAndAddChildCollider(B);if(Y)Q.push(Y)}),Q}getCollidersByTag(A){let Q=[];for(let B of this._colliders)if(B.tag===A)Q.push(B);return Q}linkCollider(A){if(!this._requireNotRemoved("linkCollider"))return;if(A.parentRigidBody!==this)return n.error("RigidBody.linkCollider(): Collider cannot be linked because it is not a child of this rigid body!");this._colliders.add(A)}lockAllRotations(){if(!this._requireNotRemoved("lockAllRotations"))return;this.setEnabledRotations({x:!1,y:!1,z:!1})}lockAllPositions(){if(!this._requireNotRemoved("lockAllPositions"))return;this.setEnabledPositions({x:!1,y:!1,z:!1})}removeFromSimulation(){if(!this._requireNotRemoved("removeFromSimulation"))return;if(!this._rigidBody)return n.error("RigidBody.removeFromSimulation(): Rigid body does not exist in the simulation!");this._colliders.forEach((A)=>{A.removeFromSimulation()}),this._simulation.removeRawRigidBody(this._rigidBody),this._simulation=void 0,this._rigidBody=void 0}unlinkCollider(A){if(!this._requireNotRemoved("unlinkCollider"))return;if(!A.isRemoved)return n.error("RigidBody.unlinkCollider(): Collider is still simulated and therefore cannot be unlinked from this rigid body!");this._colliders.delete(A)}resetAngularVelocity(){if(!this._requireNotRemoved("resetAngularVelocity"))return;if(!this._requireCreated("resetAngularVelocity"))return;this.setAngularVelocity({x:0,y:0,z:0})}resetForces(){if(!this._requireNotRemoved("resetForces"))return;if(!this._requireCreated("resetForces"))return;this._rigidBody.resetForces(!this._explicitSleep)}resetLinearVelocity(){if(!this._requireNotRemoved("resetLinearVelocity"))return;if(!this._requireCreated("resetLinearVelocity"))return;this.setLinearVelocity({x:0,y:0,z:0})}resetTorques(){if(!this._requireNotRemoved("resetTorques"))return;if(!this._requireCreated("resetTorques"))return;this._rigidBody.resetTorques(!this._explicitSleep)}sleep(){if(!this._requireNotRemoved("sleep"))return;this.setSleeping(!0)}wakeUp(){if(!this._requireNotRemoved("wakeUp"))return;this.setSleeping(!1)}_applyRigidBodyOptions(A){[["additionalMass",this.setAdditionalMass.bind(this)],["additionalMassProperties",this.setAdditionalMassProperties.bind(this)],["additionalSolverIterations",this.setAdditionalSolverIterations.bind(this)],["angularDamping",this.setAngularDamping.bind(this)],["angularVelocity",this.setAngularVelocity.bind(this)],["dominanceGroup",this.setDominanceGroup.bind(this)],["ccdEnabled",this.setCcdEnabled.bind(this)],["enabled",this.setEnabled.bind(this)],["enabledPositions",this.setEnabledPositions.bind(this)],["enabledRotations",this.setEnabledRotations.bind(this)],["gravityScale",this.setGravityScale.bind(this)],["linearDamping",this.setLinearDamping.bind(this)],["linearVelocity",this.setLinearVelocity.bind(this)],["position",this.setPosition.bind(this)],["rotation",this.setRotation.bind(this)],["sleeping",this.setSleeping.bind(this)],["softCcdPrediction",this.setSoftCcdPrediction.bind(this)]].forEach(([B,Y])=>{if(B in A)Y(A[B])})}_autoAddToSimulation(A){if(A.colliders)this._createAndAddPendingChildColliders(A.colliders);if(A.simulation)this.addToSimulation(A.simulation)}_createAndAddPendingChildCollider(A){if(!this._requireNotRemoved("createAndAddPendingChildCollider"))return null;if(!this._requireNotSimulated("createAndAddPendingChildCollider"))return null;let Q=new S9(A);return this._colliders.add(Q),Q}_createAndAddPendingChildColliders(A){let Q=[];return A.forEach((B)=>{let Y=this._createAndAddPendingChildCollider(B);if(Y)Q.push(Y)}),Q}_createRigidBodyDesc(A){let Q=A.type??mWA;return{["dynamic"]:()=>FB.RigidBodyDesc.dynamic(),["fixed"]:()=>FB.RigidBodyDesc.fixed(),["kinematic_position"]:()=>FB.RigidBodyDesc.kinematicPositionBased(),["kinematic_velocity"]:()=>FB.RigidBodyDesc.kinematicVelocityBased()}[Q]()}_requireCreated(A){if(!this._rigidBody||!this._simulation)n.error(`RigidBody._requireCreated(): Rigid body has not been created and therefore does not support the invoked method: ${A}()`);return!!this._rigidBody&&!!this._simulation}_requireDynamic(A){if(!this.isDynamic)n.error(`RigidBody._requireDynamic(): Rigid body is not dynamic and therefore does not support the invoked method: ${A}()`);return this.isDynamic}_requireKinematic(A){if(!this.isKinematic)n.error(`RigidBody._requireKinematic(): Rigid body is not kinematic and therefore does not support the invoked method: ${A}()`);return this.isKinematic}_requireNotKinematicPositionBased(A){if(this.isKinematicPositionBased)n.error(`RigidBody._requireNotKinematicPositionBased(): Rigid body is kinematic position based and therefore does not support the invoked method: ${A}()`);return!this.isKinematicPositionBased}_requireNotRemoved(A){if(!this._rigidBody&&!this._rigidBodyDesc)n.error(`RigidBody._requireNotRemoved(): Rigid body has been removed and therefore does not support the invoked method: ${A}()`);return!!this._rigidBody||!!this._rigidBodyDesc}_requireNotSimulated(A){if(this.isSimulated)n.error(`RigidBody._requireNotSimulated(): Rigid body is simulated and therefore does not support the invoked method: ${A}()`);return!this.isSimulated}_isNegligibleVector(A){return Math.abs(A.x){J[J.Average=0]="Average";J[J.Min=1]="Min";J[J.Multiply=2]="Multiply";J[J.Max=3]="Max"})($f||={});var aU;((Z)=>{Z.NONE="none";Z.BALL="ball";Z.BLOCK="block";Z.CAPSULE="capsule";Z.CONE="cone";Z.CYLINDER="cylinder";Z.ROUND_CYLINDER="round-cylinder";Z.TRIMESH="trimesh";Z.VOXELS="voxels";Z.WEDGE="wedge"})(aU||={});class S9 extends BQ{_collider;_colliderDesc;_onCollision;_parentRigidBody;_relativePosition={x:0,y:0,z:0};_relativeRotation={x:0,y:0,z:0,w:1};_scale={x:1,y:1,z:1};_shape;_simulation;_tag;constructor(A){super();this._colliderDesc=this._createColliderDesc(A),this._shape=A.shape,this._applyColliderOptions(A),this._autoAddToSimulation(A)}static optionsFromBlockHalfExtents(A){return{shape:"block",halfExtents:A}}static optionsFromModelUri(A,Q=1,B){Q=typeof Q==="number"?{x:Q,y:Q,z:Q}:Q;let Y=TY.instance.getBoundingBox(A),J=Y.max.x-Y.min.x,C=Y.max.y-Y.min.y,X=Y.max.z-Y.min.z,G=J*Q.x,F=C*Q.y,W=X*Q.z,Z=Math.max(G,W),U=Math.min(G,W),$=Z/U,E=Z/F,K=Z/2,I=(M)=>Math.max(0.01,M),V=()=>({shape:"block",halfExtents:{x:I(G/2),y:I(F/2),z:I(W/2)}}),H=()=>({shape:"round-cylinder",radius:I(K),halfHeight:I(F/2),borderRadius:I(K*0.1)}),D=()=>{let M=TY.instance.getTrimesh(A,Q);if(!M)return;return{shape:"trimesh",vertices:M.vertices,indices:M.indices}},L=()=>({shape:"wedge",extents:{x:G,y:F,z:W}}),z=()=>({shape:"capsule",radius:I(K),halfHeight:I(F/2-K)});if(B)switch(B){case"block":return V();case"capsule":return z();case"round-cylinder":return H();case"trimesh":{let M=D();if(!M){n.error(`Collider.optionsFromModelUri(): Failed to create trimesh options for model ${A}, falling back to generic shape!`);break}return M}case"wedge":return L();default:n.warning(`Collider.optionsFromModelUri(): Preferred shape ${B} is not yet supported with Collider.optionsFromModelUri(), defaulting to generic shape!`)}if($>2)return V();if(E>1.5)return H();return z()}get bounciness(){if(!this._requireNotRemoved("bounciness"))return 0;return this._collider?this._collider.restitution():this._colliderDesc.restitution}get bouncinessCombineRule(){if(!this._requireNotRemoved("bouncinessCombineRule"))return 0;return this._collider?this._collider.restitutionCombineRule():this._colliderDesc.restitutionCombineRule}get collisionGroups(){if(!this._requireNotRemoved("collisionGroups"))return{belongsTo:[],collidesWith:[]};return this._collider?$C.decodeRawCollisionGroups(this._collider.collisionGroups()):$C.decodeRawCollisionGroups(this._colliderDesc.collisionGroups)}get friction(){if(!this._requireNotRemoved("friction"))return 0;return this._collider?this._collider.friction():this._colliderDesc.friction}get frictionCombineRule(){if(!this._requireNotRemoved("frictionCombineRule"))return 0;return this._collider?this._collider.frictionCombineRule():this._colliderDesc.frictionCombineRule}get isEnabled(){if(!this._requireNotRemoved("isEnabled"))return!1;return this._collider?this._collider.isEnabled():this._colliderDesc.enabled}get isRemoved(){return!this._collider&&!this._colliderDesc}get isSensor(){if(!this._requireNotRemoved("isSensor"))return!1;return this._collider?this._collider.isSensor():this._colliderDesc.isSensor}get isSimulated(){if(!this._requireNotRemoved("isSimulated"))return!1;return!!this._collider}get isBall(){return this.shape==="ball"}get isBlock(){return this.shape==="block"}get isCapsule(){return this.shape==="capsule"}get isCone(){return this.shape==="cone"}get isCylinder(){return this.shape==="cylinder"}get isNone(){return this.shape==="none"}get isRoundCylinder(){return this.shape==="round-cylinder"}get isTrimesh(){return this.shape==="trimesh"}get isVoxel(){return this.shape==="voxels"}get isWedge(){return this.shape==="wedge"}get parentRigidBody(){if(!this._requireNotRemoved("parentRigidBody"))return;return this._parentRigidBody}get rawCollider(){if(!this._requireNotRemoved("rawCollider"))return;return this._collider}get rawShape(){if(!this._requireNotRemoved("rawShape"))return;return this._collider?this._collider.shape:this._colliderDesc.shape}get relativePosition(){if(!this._requireNotRemoved("relativePosition"))return{x:0,y:0,z:0};return this._relativePosition}get relativeRotation(){if(!this._requireNotRemoved("relativeRotation"))return{x:0,y:0,z:0,w:1};return this._relativeRotation}get scale(){if(!this._requireNotRemoved("scale"))return{x:1,y:1,z:1};return this._scale}get shape(){if(!this._requireNotRemoved("shape"))return"none";return this._shape}get tag(){if(!this._requireNotRemoved("tag"))return;return this._tag}setBounciness(A){if(!this._requireNotRemoved("setBounciness"))return;this._collider?this._collider.setRestitution(A):this._colliderDesc.setRestitution(A)}setBouncinessCombineRule(A){if(!this._requireNotRemoved("setBouncinessCombineRule"))return;this._collider?this._collider.setRestitutionCombineRule(A):this._colliderDesc.setRestitutionCombineRule(A)}setCollisionGroups(A){if(!this._requireNotRemoved("setCollisionGroups"))return;let Q=$C.buildRawCollisionGroups(A);this._collider?this._collider.setCollisionGroups(Q):this._colliderDesc.setCollisionGroups(Q)}setEnabled(A){if(!this._requireNotRemoved("setEnabled"))return;this._collider?this._collider.setEnabled(A):this._colliderDesc.setEnabled(A)}setFriction(A){if(!this._requireNotRemoved("setFriction"))return;this._collider?this._collider.setFriction(A):this._colliderDesc.setFriction(A)}setFrictionCombineRule(A){if(!this._requireNotRemoved("setFrictionCombineRule"))return;this._collider?this._collider.setFrictionCombineRule(A):this._colliderDesc.setFrictionCombineRule(A)}setHalfExtents(A){if(!this._requireSimulated("setHalfExtents"))return;if(!this._requireNotRemoved("setHalfExtents"))return;if(this.shape!=="block")return n.error("Collider.setHalfExtents(): Collider is not a block collider!");this._collider.setHalfExtents(A)}setHalfHeight(A){if(!this._requireSimulated("setHalfHeight"))return;if(!this._requireNotRemoved("setHalfHeight"))return;if(this.shape!=="capsule"&&this.shape!=="cone"&&this.shape!=="cylinder"&&this.shape!=="round-cylinder")return n.error("Collider.setHalfHeight(): Collider is not a capsule, cone, cylinder, or round cylinder collider!");this._collider.setHalfHeight(A)}setMass(A){if(!this._requireNotRemoved("setMass"))return;this._collider?this._collider.setMass(A):this._colliderDesc.setMass(A)}setOnCollision(A){if(!this._requireNotRemoved("setOnCollision"))return;if(this._onCollision=A,this.isSimulated)if(this.enableCollisionEvents(!!A),A)this._simulation.colliderMap.setColliderCollisionCallback(this,A);else this._simulation.colliderMap.removeColliderCollisionCallback(this)}setRadius(A){if(!this._requireSimulated("setRadius"))return;if(!this._requireNotRemoved("setRadius"))return;if(this.shape!=="ball"&&this.shape!=="capsule"&&this.shape!=="cylinder"&&this.shape!=="round-cylinder")return n.error("Collider.setRadius(): Collider is not a ball, capsule, cylinder, or round cylinder collider!");this._collider.setRadius(A)}setRelativeRotation(A){if(!this._requireNotRemoved("setRelativeRotation"))return;this._relativeRotation=A,this._collider?this._collider.parent()?this._collider.setRotationWrtParent(A):this._collider.setRotation(A):this._colliderDesc.setRotation(A)}setRelativePosition(A){if(!this._requireNotRemoved("setRelativePosition"))return;this._relativePosition=A,this._collider?this._collider.parent()?this._collider.setTranslationWrtParent(A):this._collider.setTranslation(A):this._colliderDesc.setTranslation(A.x,A.y,A.z)}setSensor(A){if(!this._requireNotRemoved("setSensor"))return;this._collider?this._collider.setSensor(A):this._colliderDesc.setSensor(A)}setTag(A){if(!this._requireNotRemoved("setTag"))return;this._tag=A}setVoxel(A,Q){if(!this._requireNotRemoved("setVoxel"))return;if(!this._requireSimulated("setVoxel"))return;if(this.shape!=="voxels")return n.error("Collider.setVoxel(): Collider is not a voxels collider!");this._collider.setVoxel(A.x,A.y,A.z,Q)}addToSimulation(A,Q){if(!this._requireNotRemoved("addToSimulation"))return;if(!this._requireUnsimulated("addToSimulation"))return;if(Q){if(!Q.isSimulated)return n.error("Collider.addToSimulation(): Rigid body must be simulated before adding a collider to it!");if(Q.type==="dynamic"&&this.shape==="trimesh")n.warning("Collider.addToSimulation(): Trimesh colliders are strongly discouraged to be used with dynamic rigid bodies, they will not contribute any mass!")}if(this._simulation=A,this._parentRigidBody=Q,this._collider=this._simulation.createRawCollider(this._colliderDesc,Q?.rawRigidBody),this._colliderDesc=void 0,Q)Q.linkCollider(this);if(this._onCollision)this.setOnCollision(this._onCollision)}combineVoxelStates(A){if(!this._requireNotRemoved("combineVoxelStates"))return;if(!this._requireSimulated("combineVoxelStates"))return;if(!A.isSimulated)return n.error("Collider.combineVoxelStates(): Other collider is not simulated!");if(this.shape!=="voxels")return n.error("Collider.combineVoxelStates(): Collider is not a voxels collider!");if(A.shape!=="voxels")return n.error("Collider.combineVoxelStates(): Other collider is not a voxels collider!");this._collider.combineVoxelStates(A.rawCollider,0,0,0)}enableCollisionEvents(A){if(!this._requireNotRemoved("enableCollisionEvents"))return;let Q=this._collider?this._collider.activeEvents():this._colliderDesc.activeEvents,B=A?Q|FB.ActiveEvents.COLLISION_EVENTS:Q&~FB.ActiveEvents.COLLISION_EVENTS;(this._collider??this._colliderDesc).setActiveEvents(B),this._setActiveCollisionTypes()}enableContactForceEvents(A){if(!this._requireNotRemoved("enableContactForceEvents"))return;let Q=this._collider?this._collider.activeEvents():this._colliderDesc.activeEvents,B=A?Q|FB.ActiveEvents.CONTACT_FORCE_EVENTS:Q&~FB.ActiveEvents.CONTACT_FORCE_EVENTS;(this._collider??this._colliderDesc).setActiveEvents(B),this._setActiveCollisionTypes()}propagateVoxelChange(A,Q){if(!this._requireNotRemoved("propagateVoxelChange"))return;if(!this._requireSimulated("propagateVoxelChange"))return;if(!A.isSimulated)return n.error("Collider.propagateVoxelChange(): Other collider is not simulated!");if(this.shape!=="voxels")return n.error("Collider.propagateVoxelChange(): Collider is not a voxels collider!");if(A.shape!=="voxels")return n.error("Collider.propagateVoxelChange(): Other collider is not a voxels collider!");this._collider.propagateVoxelChange(A.rawCollider,Q.x,Q.y,Q.z,0,0,0)}removeFromSimulation(){if(!this._requireNotRemoved("removeFromSimulation"))return;if(!this._requireSimulated("removeFromSimulation"))return;if(this._simulation.removeRawCollider(this._collider),this._simulation=void 0,this._collider=void 0,this._parentRigidBody)this._parentRigidBody.unlinkCollider(this);this._parentRigidBody=void 0}setScale(A){if(!this._requireNotRemoved("scale"))return;let Q={x:A.x/this._scale.x,y:A.y/this._scale.y,z:A.z/this._scale.z};this.setRelativePosition({x:this.relativePosition.x*Q.x,y:this.relativePosition.y*Q.y,z:this.relativePosition.z*Q.z});let B=Math.max(this._scale.x,this._scale.z),J=Math.max(A.x,A.z)/B;switch(this._scale=A,this._shape){case"ball":{if(this._collider)this._collider.setRadius(this._collider.radius()*J);else this._colliderDesc.shape.radius*=J;return}case"block":{if(this._collider){let C=this._collider.halfExtents();this._collider.setHalfExtents({x:C.x*Q.x,y:C.y*Q.y,z:C.z*Q.z})}else this._colliderDesc.shape.halfExtents.x*=Q.x,this._colliderDesc.shape.halfExtents.y*=Q.y,this._colliderDesc.shape.halfExtents.z*=Q.z;return}case"capsule":{if(this._collider)this._collider.setHalfHeight(this._collider.halfHeight()*Q.y),this._collider.setRadius(this._collider.radius()*J);else this._colliderDesc.shape.halfHeight*=Q.y,this._colliderDesc.shape.radius*=J;return}case"cone":{if(this._collider)this._collider.setHalfHeight(this._collider.halfHeight()*Q.y),this._collider.setRadius(this._collider.radius()*J);else this._colliderDesc.shape.halfHeight*=Q.y,this._colliderDesc.shape.radius*=J;return}case"cylinder":{if(this._collider)this._collider.setHalfHeight(this._collider.halfHeight()*Q.y),this._collider.setRadius(this._collider.radius()*J);else this._colliderDesc.shape.halfHeight*=Q.y,this._colliderDesc.shape.radius*=J;return}case"round-cylinder":{if(this._collider)this._collider.setHalfHeight(this._collider.halfHeight()*Q.y),this._collider.setRoundRadius(this._collider.roundRadius()*J),this._collider.setRadius(this._collider.radius()*J);else this._colliderDesc.shape.halfHeight=this._colliderDesc.shape.halfHeight*Q.y,this._colliderDesc.shape.borderRadius=this._colliderDesc.shape.borderRadius*J,this._colliderDesc.shape.radius=this._colliderDesc.shape.radius*J;return}case"trimesh":{n.error("Collider.setScale(): Trimesh colliders cannot be scaled at runtime!");return}case"voxels":{n.error("Collider.setScale(): Voxels colliders cannot be scaled!");return}case"wedge":{n.error("Collider.setScale(): Wedge colliders cannot be scaled!");return}default:n.fatalError(`Collider.setScale(): ${this._shape} is not a valid collider shape!`)}}_applyColliderOptions(A){[["bounciness",this.setBounciness.bind(this)],["bouncinessCombineRule",this.setBouncinessCombineRule.bind(this)],["collisionGroups",this.setCollisionGroups.bind(this)],["enabled",this.setEnabled.bind(this)],["friction",this.setFriction.bind(this)],["frictionCombineRule",this.setFrictionCombineRule.bind(this)],["isSensor",this.setSensor.bind(this)],["mass",this.setMass.bind(this)],["onCollision",this.setOnCollision.bind(this)],["relativePosition",this.setRelativePosition.bind(this)],["relativeRotation",this.setRelativeRotation.bind(this)],["tag",this.setTag.bind(this)]].forEach(([B,Y])=>{if(A[B]!==void 0)Y.call(this,A[B])})}_autoAddToSimulation(A){if(A.simulation)this.addToSimulation(A.simulation,A.parentRigidBody)}_buildWedgeConvexHullVertices(A){let{x:Q,y:B,z:Y}=A,J=Q/2,C=Y/2,X=B/2;return new Float32Array([-J,0-X,-C,J,0-X,-C,J,0-X,C,-J,0-X,C,-J,B-X,-C,J,B-X,-C])}_createColliderDesc(A){let{shape:Q,flags:B}=A;switch(Q){case"ball":{if(!A.radius)n.fatalError("Ball collider must have a radius!");return FB.ColliderDesc.ball(A.radius)}case"block":{if(!A.halfExtents)n.fatalError("Block collider must have halfExtents!");return FB.ColliderDesc.cuboid(A.halfExtents.x,A.halfExtents.y,A.halfExtents.z)}case"capsule":{if(!A.halfHeight||!A.radius)n.fatalError("Capsule collider must have halfHeight and radius!");return FB.ColliderDesc.capsule(A.halfHeight,A.radius)}case"cone":{if(!A.radius||!A.halfHeight)n.fatalError("Cone collider must have radius and halfHeight!");return FB.ColliderDesc.cone(A.halfHeight,A.radius)}case"cylinder":{if(!A.radius||!A.halfHeight)n.fatalError("Cylinder collider must have radius and halfHeight!");return FB.ColliderDesc.cylinder(A.halfHeight,A.radius)}case"round-cylinder":{if(!A.radius||!A.halfHeight||!A.borderRadius)n.fatalError("Round cylinder collider must have radius, halfHeight, and borderRadius!");return FB.ColliderDesc.roundCylinder(A.halfHeight,A.radius,A.borderRadius)}case"trimesh":{if(!A.indices||!A.vertices)n.fatalError("Trimesh collider must have vertices and indices!");return FB.ColliderDesc.trimesh(A.vertices,A.indices,B)}case"voxels":{if(!A.coordinates||!A.size)n.fatalError("Voxels collider must have coordinates and size!");return FB.ColliderDesc.voxels(this._coordinatesToInt32Array(A.coordinates),A.size)}case"wedge":{if(!A.extents)n.fatalError("Wedge collider must have extents!");let Y=this._buildWedgeConvexHullVertices(A.extents),J=FB.ColliderDesc.convexHull(Y);if(!J)throw n.fatalError("Failed to create convex hull for wedge collider!"),Error("Convex hull creation failed");return J}default:n.fatalError(`Collider._createColliderDesc(): ${Q} is not a valid collider shape!`)}}_requireSimulated(A){if(!this.isSimulated)n.error(`Collider._requireSimulated(): Collider is not simulated, invoked method: ${A}()`);return this.isSimulated}_requireUnsimulated(A){if(this.isSimulated)n.error(`Collider._requireUnsimulated(): Collider is already simulated, invoked method: ${A}()`);return!this.isSimulated}_requireNotRemoved(A){if(this.isRemoved)n.error(`Collider._requireNotRemoved(): Collider is removed, invoked method: ${A}()`);return!this.isRemoved}_setActiveCollisionTypes(){(this._collider??this._colliderDesc).setActiveCollisionTypes(FB.ActiveCollisionTypes.DYNAMIC_DYNAMIC|FB.ActiveCollisionTypes.DYNAMIC_KINEMATIC|FB.ActiveCollisionTypes.DYNAMIC_FIXED|FB.ActiveCollisionTypes.KINEMATIC_KINEMATIC|FB.ActiveCollisionTypes.KINEMATIC_FIXED)}_coordinatesToInt32Array(A){let Q=new Int32Array(A.length*3);for(let B=0;Bthis.serializeBlockType(Q))}static serializeChunk(A){return{c:this.serializeVector(A.originCoordinate),b:Array.from(A.blocks),r:Array.from(A.blockRotations).flatMap(([Q,B])=>[Q,B.enumIndex])}}static serializeEntity(A){if(!A.world||A.id===void 0)n.fatalError("Serializer.serializeEntity(): Entity is not in a world");return{i:A.id,bt:A.blockTextureUri,bh:A.blockHalfExtents?this.serializeVector(A.blockHalfExtents):void 0,e:A.isEnvironmental,ec:A.emissiveColor?this.serializeRgbColor(A.emissiveColor):void 0,ei:A.emissiveIntensity,m:A.modelUri,ma:A.modelAnimations.map((Q)=>this.serializeEntityModelAnimation(Q)),mo:A.modelNodeOverrides.map((Q)=>this.serializeEntityModelNodeOverride(Q)),mt:A.modelTextureUri,n:A.name,o:A.opacity,ol:A.outline?this.serializeOutline(A.outline):void 0,p:this.serializeVector(A.position),pi:A.positionInterpolationMs,pe:A.parent?A.parent.id:void 0,pn:A.parentNodeName,r:this.serializeQuaternion(A.rotation),ri:A.rotationInterpolationMs,si:A.modelScaleInterpolationMs,sv:A.modelScale?this.serializeVector(A.modelScale):void 0,t:A.tintColor?this.serializeRgbColor(A.tintColor):void 0}}static serializeEntityModelAnimation(A){return{n:A.name,b:A.blendMode,c:A.clampWhenFinished,fi:A.fadesIn,fo:A.fadesOut,l:A.loopMode,p:A.isPlaying&&A.loopMode!==0,pr:A.playbackRate,w:A.weight}}static serializeEntityModelNodeOverride(A){return{n:A.nameMatch,ec:A.emissiveColor?this.serializeRgbColor(A.emissiveColor):void 0,ei:A.emissiveIntensity,h:A.isHidden,p:A.localPosition?this.serializeVector(A.localPosition):void 0,pi:A.localPositionInterpolationMs,r:A.localRotation?this.serializeQuaternion(A.localRotation):void 0,ri:A.localRotationInterpolationMs,s:A.localScale?this.serializeVector(A.localScale):void 0,si:A.localScaleInterpolationMs}}static serializeOutline(A){return{c:A.color?this.serializeRgbColor(A.color):void 0,ci:A.colorIntensity,th:A.thickness,o:A.opacity,oc:A.occluded}}static serializeParticleEmitter(A){if(!A.world||A.id===void 0)n.fatalError("Serializer.serializeParticleEmitter(): ParticleEmitter is not in a world");return{i:A.id,at:A.alphaTest,ce:A.colorEnd?this.serializeRgbColor(A.colorEnd):void 0,cev:A.colorEndVariance?this.serializeRgbColor(A.colorEndVariance):void 0,cs:A.colorStart?this.serializeRgbColor(A.colorStart):void 0,csv:A.colorStartVariance?this.serializeRgbColor(A.colorStartVariance):void 0,cie:A.colorIntensityEnd,ciev:A.colorIntensityEndVariance,cis:A.colorIntensityStart,cisv:A.colorIntensityStartVariance,e:A.attachedToEntity?.isSpawned?A.attachedToEntity.id:void 0,en:A.attachedToEntityNodeName,g:A.gravity?this.serializeVector(A.gravity):void 0,l:A.lifetime,le:A.lockToEmitter,lv:A.lifetimeVariance,mp:A.maxParticles,o:A.offset?this.serializeVector(A.offset):void 0,or:A.orientation?this.serializeParticleEmitterOrientation(A.orientation):void 0,ofr:A.orientationFixedRotation?this.serializeVector(A.orientationFixedRotation):void 0,oe:A.opacityEnd,oev:A.opacityEndVariance,os:A.opacityStart,osv:A.opacityStartVariance,p:A.position?this.serializeVector(A.position):void 0,pa:A.paused,pv:A.positionVariance?this.serializeVector(A.positionVariance):void 0,r:A.rate,rv:A.rateVariance,se:A.sizeEnd,sev:A.sizeEndVariance,ss:A.sizeStart,ssv:A.sizeStartVariance,t:A.transparent,tu:A.textureUri,v:A.velocity?this.serializeVector(A.velocity):void 0,vv:A.velocityVariance?this.serializeVector(A.velocityVariance):void 0}}static serializeParticleEmitterOrientation(A){switch(A){case"billboard":return 0;case"billboardY":return 1;case"fixed":return 2;case"velocity":return 3;default:return 0}}static serializePhysicsDebugRaycast(A){return{o:this.serializeVector(A.origin),d:this.serializeVector(A.direction),l:A.length,h:A.hit}}static serializePlayer(A){return{i:A.id,u:A.username,p:A.profilePictureUrl}}static serializePlayerCamera(A){return{cb:A.collidesWithBlocks,m:A.mode,e:A.attachedToEntity?.isSpawned?A.attachedToEntity.id:void 0,et:A.targetEntity?.isSpawned?A.targetEntity.id:void 0,fo:A.filmOffset,ffo:A.forwardOffset,fv:A.fov,h:Array.from(A.viewModelHiddenNodes),mp:A.viewModelPitchesWithCamera,my:A.viewModelYawsWithCamera,o:A.offset?this.serializeVector(A.offset):void 0,p:A.attachedToPosition?this.serializeVector(A.attachedToPosition):void 0,pt:A.targetPosition?this.serializeVector(A.targetPosition):void 0,s:Array.from(A.viewModelShownNodes),sa:A.shoulderAngle,z:A.zoom}}static serializeQuaternion(A){return[A.x,A.y,A.z,A.w]}static serializeRgbColor(A){return[A.r,A.g,A.b]}static serializeSceneUI(A){if(A.id===void 0)n.fatalError("Serializer.serializeSceneUI(): SceneUI is not loaded!");return{i:A.id,e:A.attachedToEntity?.isSpawned?A.attachedToEntity.id:void 0,o:A.offset?this.serializeVector(A.offset):void 0,p:A.position?this.serializeVector(A.position):void 0,s:A.state,t:A.templateId,v:A.viewDistance}}static serializeVector(A){return[A.x,A.y,A.z]}static serializeVectorBoolean(A){return[A.x,A.y,A.z]}static serializeWorld(A){return{i:A.id,ac:this.serializeRgbColor(A.ambientLightColor),ai:A.ambientLightIntensity,dc:this.serializeRgbColor(A.directionalLightColor),di:A.directionalLightIntensity,dp:this.serializeVector(A.directionalLightPosition),fc:A.fogColor?this.serializeRgbColor(A.fogColor):void 0,ff:A.fogFar,fn:A.fogNear,n:A.name,s:A.skyboxUri,si:A.skyboxIntensity,t:A.loop.timestepS}}}var uWA;((Y)=>{Y[Y.PLAYING=0]="PLAYING";Y[Y.PAUSED=1]="PAUSED";Y[Y.STOPPED=2]="STOPPED"})(uWA||={});var Uf;((B)=>{B[B.ADDITIVE=0]="ADDITIVE";B[B.NORMAL=1]="NORMAL"})(Uf||={});var oU;((Y)=>{Y[Y.ONCE=0]="ONCE";Y[Y.LOOP=1]="LOOP";Y[Y.PING_PONG=2]="PING_PONG"})(oU||={});var Ef;((U)=>{U.PAUSE="ENTITY_MODEL_ANIMATION.PAUSE";U.PLAY="ENTITY_MODEL_ANIMATION.PLAY";U.RESTART="ENTITY_MODEL_ANIMATION.RESTART";U.SET_BLEND_MODE="ENTITY_MODEL_ANIMATION.SET_BLEND_MODE";U.SET_CLAMP_WHEN_FINISHED="ENTITY_MODEL_ANIMATION.SET_CLAMP_WHEN_FINISHED";U.SET_FADES_IN="ENTITY_MODEL_ANIMATION.SET_FADES_IN";U.SET_FADES_OUT="ENTITY_MODEL_ANIMATION.SET_FADES_OUT";U.SET_LOOP_MODE="ENTITY_MODEL_ANIMATION.SET_LOOP_MODE";U.SET_PLAYBACK_RATE="ENTITY_MODEL_ANIMATION.SET_PLAYBACK_RATE";U.SET_WEIGHT="ENTITY_MODEL_ANIMATION.SET_WEIGHT";U.STOP="ENTITY_MODEL_ANIMATION.STOP"})(Ef||={});class tU{_name;_blendMode=1;_clampWhenFinished=!1;_entity;_fadesIn=!0;_fadesOut=!0;_loopMode=0;_state=2;_playbackRate=1;_weight=1;constructor(A){this._name=A.name,this._entity=A.entity,this._blendMode=A.blendMode??this._blendMode,this._clampWhenFinished=A.clampWhenFinished??this._clampWhenFinished,this._fadesIn=A.fadesIn??this._fadesIn,this._fadesOut=A.fadesOut??this._fadesOut,this._loopMode=A.loopMode??this._loopMode,this._state=A.play?0:this._state,this._playbackRate=A.playbackRate??this._playbackRate,this._weight=A.weight??this._weight}get name(){return this._name}get blendMode(){return this._blendMode}get clampWhenFinished(){return this._clampWhenFinished}get entity(){return this._entity}get fadesIn(){return this._fadesIn}get fadesOut(){return this._fadesOut}get isPlaying(){return this._state===0}get isPaused(){return this._state===1}get isStopped(){return this._state===2}get loopMode(){return this._loopMode}get playbackRate(){return this._playbackRate}get weight(){return this._weight}pause(){if(this._state===1)return;if(this._state=1,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.PAUSE",{entityModelAnimation:this})}play(){if(this._state===0)return;if(this._state=0,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.PLAY",{entityModelAnimation:this})}restart(){if(this._state=0,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.RESTART",{entityModelAnimation:this})}setBlendMode(A){if(this._blendMode===A)return;if(this._blendMode=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_BLEND_MODE",{entityModelAnimation:this,blendMode:A})}setClampWhenFinished(A){if(this._clampWhenFinished===A)return;if(this._clampWhenFinished=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_CLAMP_WHEN_FINISHED",{entityModelAnimation:this,clampWhenFinished:A})}setFadesIn(A){if(this._fadesIn===A)return;if(this._fadesIn=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_FADES_IN",{entityModelAnimation:this,fadesIn:A})}setFadesOut(A){if(this._fadesOut===A)return;if(this._fadesOut=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_FADES_OUT",{entityModelAnimation:this,fadesOut:A})}setLoopMode(A){if(this._loopMode===A)return;if(this._loopMode=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_LOOP_MODE",{entityModelAnimation:this,loopMode:A})}setPlaybackRate(A){if(this._playbackRate===A)return;if(this._playbackRate=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_PLAYBACK_RATE",{entityModelAnimation:this,playbackRate:A})}setWeight(A){if(this._weight===A)return;if(this._weight=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_WEIGHT",{entityModelAnimation:this,weight:A})}stop(){if(this._state===2)return;if(this._state=2,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.STOP",{entityModelAnimation:this})}serialize(){return GQ.serializeEntityModelAnimation(this)}}var Kf;((W)=>{W.SET_EMISSIVE_COLOR="ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_COLOR";W.SET_EMISSIVE_INTENSITY="ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_INTENSITY";W.SET_HIDDEN="ENTITY_MODEL_NODE_OVERRIDE.SET_HIDDEN";W.SET_LOCAL_POSITION="ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION";W.SET_LOCAL_POSITION_INTERPOLATION_MS="ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION_INTERPOLATION_MS";W.SET_LOCAL_ROTATION="ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION";W.SET_LOCAL_ROTATION_INTERPOLATION_MS="ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION_INTERPOLATION_MS";W.SET_LOCAL_SCALE="ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE";W.SET_LOCAL_SCALE_INTERPOLATION_MS="ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE_INTERPOLATION_MS"})(Kf||={});class eU{_nameMatch;_entity;_emissiveColor;_emissiveIntensity;_hidden=!1;_isRemoved=!1;_localPosition;_localPositionInterpolationMs;_localRotation;_localRotationInterpolationMs;_localScale;_localScaleInterpolationMs;constructor(A){this._nameMatch=A.nameMatch.toLowerCase(),this._entity=A.entity,this._emissiveColor=A.emissiveColor,this._emissiveIntensity=A.emissiveIntensity,this._hidden=A.hidden??this._hidden,this._localPosition=A.localPosition,this._localPositionInterpolationMs=A.localPositionInterpolationMs,this._localRotation=A.localRotation,this._localRotationInterpolationMs=A.localRotationInterpolationMs,this._localScale=typeof A.localScale==="number"?{x:A.localScale,y:A.localScale,z:A.localScale}:A.localScale,this._localScaleInterpolationMs=A.localScaleInterpolationMs}get nameMatch(){return this._nameMatch}get name(){return this._nameMatch}get entity(){return this._entity}get emissiveColor(){return this._emissiveColor}get emissiveIntensity(){return this._emissiveIntensity}get isHidden(){return this._hidden}get localPosition(){return this._localPosition}get localPositionInterpolationMs(){return this._localPositionInterpolationMs}get localRotation(){return this._localRotation}get localRotationInterpolationMs(){return this._localRotationInterpolationMs}get localScale(){return this._localScale}get localScaleInterpolationMs(){return this._localScaleInterpolationMs}remove(){this._entity.removeModelNodeOverride(this.nameMatch)}setEmissiveColor(A){if(this._isRemoved)return;if(!A&&!this._emissiveColor||A&&this._emissiveColor&&A.r===this._emissiveColor.r&&A.g===this._emissiveColor.g&&A.b===this._emissiveColor.b)return;if(this._emissiveColor=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_COLOR",{entityModelNodeOverride:this,emissiveColor:A})}setEmissiveIntensity(A){if(this._isRemoved)return;if(this._emissiveIntensity===A)return;if(this._emissiveIntensity=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_INTENSITY",{entityModelNodeOverride:this,emissiveIntensity:A})}setHidden(A){if(this._isRemoved)return;if(this._hidden===A)return;if(this._hidden=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_HIDDEN",{entityModelNodeOverride:this,hidden:A})}setLocalPosition(A){if(this._isRemoved)return;if(A===this._localPosition)return;if(A&&this._localPosition&&this._localPosition.x===A.x&&this._localPosition.y===A.y&&this._localPosition.z===A.z)return;if(this._localPosition=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION",{entityModelNodeOverride:this,localPosition:A})}setLocalPositionInterpolationMs(A){if(this._isRemoved)return;if(A===this._localPositionInterpolationMs)return;if(this._localPositionInterpolationMs=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION_INTERPOLATION_MS",{entityModelNodeOverride:this,interpolationMs:A})}setLocalRotation(A){if(this._isRemoved)return;if(A===this._localRotation)return;if(A&&this._localRotation&&this._localRotation.x===A.x&&this._localRotation.y===A.y&&this._localRotation.z===A.z&&this._localRotation.w===A.w)return;if(this._localRotation=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION",{entityModelNodeOverride:this,localRotation:A})}setLocalRotationInterpolationMs(A){if(this._isRemoved)return;if(A===this._localRotationInterpolationMs)return;if(this._localRotationInterpolationMs=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION_INTERPOLATION_MS",{entityModelNodeOverride:this,interpolationMs:A})}setLocalScale(A){if(this._isRemoved)return;if(A===this._localScale)return;if(typeof A==="number")A={x:A,y:A,z:A};if(A&&this._localScale&&this._localScale.x===A.x&&this._localScale.y===A.y&&this._localScale.z===A.z)return;if(this._localScale=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE",{entityModelNodeOverride:this,localScale:A})}setLocalScaleInterpolationMs(A){if(this._isRemoved)return;if(A===this._localScaleInterpolationMs)return;if(this._localScaleInterpolationMs=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE_INTERPOLATION_MS",{entityModelNodeOverride:this,interpolationMs:A})}serialize(){return GQ.serializeEntityModelNodeOverride(this)}markRemoved(){this._isRemoved=!0}}var dWA={type:"dynamic",softCcdPrediction:1},cWA=0.0016,lWA=Math.cos(0.026),sH;((q)=>{q.BLOCK_COLLISION="ENTITY.BLOCK_COLLISION";q.BLOCK_CONTACT_FORCE="ENTITY.BLOCK_CONTACT_FORCE";q.DESPAWN="ENTITY.DESPAWN";q.ENTITY_COLLISION="ENTITY.ENTITY_COLLISION";q.ENTITY_CONTACT_FORCE="ENTITY.ENTITY_CONTACT_FORCE";q.INTERACT="ENTITY.INTERACT";q.REMOVE_MODEL_NODE_OVERRIDE="ENTITY.REMOVE_MODEL_NODE_OVERRIDE";q.SET_BLOCK_TEXTURE_URI="ENTITY.SET_BLOCK_TEXTURE_URI";q.SET_EMISSIVE_COLOR="ENTITY.SET_EMISSIVE_COLOR";q.SET_EMISSIVE_INTENSITY="ENTITY.SET_EMISSIVE_INTENSITY";q.SET_MODEL_SCALE="ENTITY.SET_MODEL_SCALE";q.SET_MODEL_SCALE_INTERPOLATION_MS="ENTITY.SET_MODEL_SCALE_INTERPOLATION_MS";q.SET_MODEL_TEXTURE_URI="ENTITY.SET_MODEL_TEXTURE_URI";q.SET_OPACITY="ENTITY.SET_OPACITY";q.SET_OUTLINE="ENTITY.SET_OUTLINE";q.SET_PARENT="ENTITY.SET_PARENT";q.SET_POSITION_INTERPOLATION_MS="ENTITY.SET_POSITION_INTERPOLATION_MS";q.SET_ROTATION_INTERPOLATION_MS="ENTITY.SET_ROTATION_INTERPOLATION_MS";q.SET_TINT_COLOR="ENTITY.SET_TINT_COLOR";q.SPAWN="ENTITY.SPAWN";q.TICK="ENTITY.TICK";q.UPDATE_POSITION="ENTITY.UPDATE_POSITION";q.UPDATE_ROTATION="ENTITY.UPDATE_ROTATION"})(sH||={});class R0 extends j7{_id;_blockHalfExtents;_blockTextureUri;_controller;_isEnvironmental=!1;_modelAnimations=new Map;_modelNodeOverrides=new Map;_modelPreferredShape;_modelScale={x:1,y:1,z:1};_modelScaleInterpolationMs;_modelTextureUri;_modelUri;_name;_opacity;_outline;_parent;_parentNodeName;_positionInterpolationMs;_rotationInterpolationMs;_tag;_tintColor;_emissiveColor;_emissiveIntensity;_lastUpdatedPosition={x:0,y:0,z:0};_lastUpdatedRotation={x:0,y:0,z:0,w:1};_lastParentlessType="dynamic";_world;_positionUpdateThresholdSq;_rotationUpdateThreshold;constructor(A){let Q="blockTextureUri"in A,B="modelUri"in A;if(!Q===!B)n.fatalError("Entity.constructor(): Entity data must include a blockTextureUri or modelUri, but not both.");if(Q&&!A.blockHalfExtents)n.fatalError("Entity.constructor(): Block entity must have blockHalfExtents!");if(A.parent&&!A.parent.isSpawned)n.fatalError("Entity.constructor(): Parent entity must be spawned before child entity!");if(A.parent?.modelUri&&A.parentNodeName&&!TY.instance.modelHasNode(A.parent.modelUri,A.parentNodeName))n.fatalError(`Entity.constructor(): Parent node name ${A.parentNodeName} not found in parent model ${A.parent.modelUri}!`);super(A.rigidBodyOptions??dWA);if(Q)this._blockHalfExtents=A.blockHalfExtents,this._blockTextureUri=A.blockTextureUri;if(B){let Y=this._modelScale=typeof A.modelScale==="number"?{x:A.modelScale,y:A.modelScale,z:A.modelScale}:A.modelScale??{x:1,y:1,z:1};if(this._modelPreferredShape=A.modelPreferredShape,this._modelScale=Y,this._modelScaleInterpolationMs=A.modelScaleInterpolationMs,this._modelTextureUri=A.modelTextureUri,this._modelUri=A.modelUri,!this._modelUri.startsWith("http"))if(TY.instance.hasModel(this._modelUri))A.modelAnimations?.forEach((J)=>{this._modelAnimations.set(J.name,new tU({...J,entity:this}))});else n.error(`Entity.constructor(): Model ${this._modelUri} does not exist!`);A.modelNodeOverrides?.forEach((J)=>{this._modelNodeOverrides.set(J.nameMatch.toLowerCase(),new eU({...J,entity:this}))})}if(this._emissiveColor=A.emissiveColor,this._emissiveIntensity=A.emissiveIntensity,this._isEnvironmental=A.isEnvironmental??!1,this._name=A.name??"Nameless",this._opacity=A.opacity??1,this._outline=A.outline,this._parent=A.parent,this._parentNodeName=A.parentNodeName,this._positionInterpolationMs=A.positionInterpolationMs,this._rotationInterpolationMs=A.rotationInterpolationMs,this._tag=A.tag,this._tintColor=A.tintColor,this._positionUpdateThresholdSq=cWA,this._rotationUpdateThreshold=lWA,A.controller)this._controller=A.controller,this._controller.attach(this)}get id(){return this._id}get availableModelAnimationNames(){return this.isModelEntity?TY.instance.getAnimationNames(this._modelUri):[]}get availableModelNodeNames(){return this.isModelEntity?TY.instance.getNodeNames(this._modelUri):[]}get blockHalfExtents(){return this._blockHalfExtents}get blockTextureUri(){return this._blockTextureUri}get controller(){return this._controller}get emissiveColor(){return this._emissiveColor}get emissiveIntensity(){return this._emissiveIntensity}get depth(){return this.isModelEntity?TY.instance.getDepth(this._modelUri)*this._modelScale.z:this._blockHalfExtents.z*2}get height(){return this.isModelEntity?TY.instance.getHeight(this._modelUri)*this._modelScale.y:this._blockHalfExtents.y*2}get modelAnimations(){return Array.from(this._modelAnimations.values())}get modelNodeOverrides(){return Array.from(this._modelNodeOverrides.values())}get modelPreferredShape(){return this._modelPreferredShape}get modelScale(){return this._modelScale}get modelScaleInterpolationMs(){return this._modelScaleInterpolationMs}get modelTextureUri(){return this._modelTextureUri}get modelUri(){return this._modelUri}get name(){return this._name}get opacity(){return this._opacity}get outline(){return this._outline}get parent(){return this._parent}get parentNodeName(){return this._parentNodeName}get positionInterpolationMs(){return this._positionInterpolationMs}get rotationInterpolationMs(){return this._rotationInterpolationMs}get tag(){return this._tag}get tintColor(){return this._tintColor}get isBlockEntity(){return!!this._blockTextureUri}get isEnvironmental(){return this._isEnvironmental}get isModelEntity(){return!!this._modelUri}get isSpawned(){return!!this._world}get width(){return this.isModelEntity?TY.instance.getWidth(this._modelUri)*this._modelScale.x:this._blockHalfExtents.x*2}get world(){return this._world}clearModelNodeOverrides(){if(!this.isModelEntity)return;this.removeModelNodeOverrides(Array.from(this._modelNodeOverrides.keys()))}despawn(){if(!this._requireSpawned("despawn"))return;if(this._world.entityManager.getEntityChildren(this).forEach((A)=>{A.despawn()}),this._controller)this._controller.detach(this),this._controller.despawn(this);if(this.emitWithWorld(this._world,"ENTITY.DESPAWN",{entity:this}),this.isSimulated)this.removeFromSimulation();this._world.entityManager.unregisterEntity(this),this._world.audioManager.unregisterEntityAttachedAudios(this),this._world.particleEmitterManager.despawnEntityAttachedParticleEmitters(this),this._world.sceneUIManager.unloadEntityAttachedSceneUIs(this),this._id=void 0,this._world=void 0}getModelAnimation(A){if(!this.isModelEntity)return;let Q=this._modelAnimations.get(A);if(!Q)Q=new tU({name:A,entity:this}),this._modelAnimations.set(A,Q);return Q}getModelNodeOverride(A){if(!this.isModelEntity)return;A=A.toLowerCase();let Q=this._modelNodeOverrides.get(A);if(!Q)Q=new eU({nameMatch:A,entity:this}),this._modelNodeOverrides.set(A,Q);return Q}interact(A,Q){if(!this._requireSpawned("interact"))return;this.emitWithWorld(this._world,"ENTITY.INTERACT",{entity:this,player:A,raycastHit:Q})}setBlockTextureUri(A){if(this._blockTextureUri===A)return;if(this._blockTextureUri=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_BLOCK_TEXTURE_URI",{entity:this,blockTextureUri:A})}removeModelNodeOverride(A){if(!this.isModelEntity)return;A=A.toLowerCase();let Q=this._modelNodeOverrides.get(A);if(!Q)return;if(Q.markRemoved(),this._modelNodeOverrides.delete(A),this.isSpawned)this.emitWithWorld(this._world,"ENTITY.REMOVE_MODEL_NODE_OVERRIDE",{entity:this,entityModelNodeOverride:Q})}removeModelNodeOverrides(A){if(!this.isModelEntity)return;for(let Q of A)this.removeModelNodeOverride(Q)}setEmissiveColor(A){if(!A&&!this._emissiveColor||A&&this._emissiveColor&&A.r===this._emissiveColor.r&&A.g===this._emissiveColor.g&&A.b===this._emissiveColor.b)return;if(this._emissiveColor=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_EMISSIVE_COLOR",{entity:this,emissiveColor:A})}setEmissiveIntensity(A){if(this._emissiveIntensity===A)return;if(this._emissiveIntensity=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_EMISSIVE_INTENSITY",{entity:this,emissiveIntensity:A})}setModelScale(A){if(!this.isModelEntity)return;if(typeof A==="number")A={x:A,y:A,z:A};if(this._modelScale===A)return;let Q={x:A.x/this._modelScale.x,y:A.y/this._modelScale.y,z:A.z/this._modelScale.z};if(this._modelScale=A,this.colliders.forEach((B)=>B.setScale(Q)),this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_MODEL_SCALE",{entity:this,modelScale:A})}setModelScaleInterpolationMs(A){if(!this.isModelEntity)return;if(this._modelScaleInterpolationMs===A)return;if(this._modelScaleInterpolationMs=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_MODEL_SCALE_INTERPOLATION_MS",{entity:this,interpolationMs:A})}setModelTextureUri(A){if(!this.isModelEntity||this._modelTextureUri===A)return;if(this._modelTextureUri=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_MODEL_TEXTURE_URI",{entity:this,modelTextureUri:A})}setOpacity(A){if(this._opacity===A)return;if(this._opacity=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_OPACITY",{entity:this,opacity:A})}setOutline(A,Q){if(this._outline=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_OUTLINE",{entity:this,forPlayer:Q,outline:A})}setParent(A,Q,B,Y){if(A&&!A.isSpawned)return n.error("Entity.setParent(): Parent entity is not spawned, cannot set parent!");if(!this._parent&&A)this._lastParentlessType=this.type;if(this._parent=A,this._parentNodeName=Q,!this.isSpawned)return;if(this.colliders.forEach((J)=>J.setEnabled(!A)),this.setType(!A?this._lastParentlessType:"kinematic_velocity"),this.setPosition(B??{x:0,y:0,z:0}),this.setRotation(Y??{x:0,y:0,z:0,w:1}),!this.isKinematicPositionBased)this.resetAngularVelocity(),this.resetForces(),this.resetLinearVelocity(),this.resetTorques();this.emitWithWorld(this._world,"ENTITY.SET_PARENT",{entity:this,parent:A,parentNodeName:Q})}setPositionInterpolationMs(A){if(this._positionInterpolationMs===A)return;if(this._positionInterpolationMs=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_POSITION_INTERPOLATION_MS",{entity:this,interpolationMs:A})}setRotationInterpolationMs(A){if(this._rotationInterpolationMs===A)return;if(this._rotationInterpolationMs=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_ROTATION_INTERPOLATION_MS",{entity:this,interpolationMs:A})}setTintColor(A){if(!A&&!this._tintColor||A&&this._tintColor&&A.r===this._tintColor.r&&A.g===this._tintColor.g&&A.b===this._tintColor.b)return;if(this._tintColor=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_TINT_COLOR",{entity:this,tintColor:A})}spawn(A,Q,B){if(this.isSpawned)return n.error(`Entity.spawn(): Entity ${this._name} is already spawned with id ${this._id}!`);if(!this.isSimulated)this.addToSimulation(A.simulation);if(this._blockTextureUri&&this._blockHalfExtents&&this.numColliders===0)this.addChildColliderToSimulation(new S9(S9.optionsFromBlockHalfExtents(this._blockHalfExtents)));if(this._modelUri&&this.numColliders===0&&this._modelPreferredShape!=="none")this.addChildColliderToSimulation(new S9(S9.optionsFromModelUri(this._modelUri,this._modelScale,this._modelPreferredShape)));if(this.colliders.forEach((Y)=>{if(this.hasListeners("ENTITY.BLOCK_COLLISION")||this.hasListeners("ENTITY.ENTITY_COLLISION"))Y.enableCollisionEvents(!0);if(this.hasListeners("ENTITY.BLOCK_CONTACT_FORCE")||this.hasListeners("ENTITY.ENTITY_CONTACT_FORCE"))Y.enableContactForceEvents(!0);if($C.isDefaultCollisionGroups(Y.collisionGroups)){let J=this.isEnvironmental?[8]:[Y.isSensor?4:2],C=this.isEnvironmental?[65535&~8&~1]:[65535];Y.setCollisionGroups({belongsTo:J,collidesWith:C})}}),this.setPosition(Q),B)this.setRotation(B);if(this._id=A.entityManager.registerEntity(this),this._world=A,this._controller)this._controller.spawn(this);if(this._parent)this.setParent(this._parent,this._parentNodeName,Q,B);this.colliders.forEach((Y)=>{A.simulation.colliderMap.setColliderEntity(Y,this)}),this.emitWithWorld(A,"ENTITY.SPAWN",{entity:this})}stopAllModelAnimations(A){for(let Q of this._modelAnimations.values()){if(A?.(Q))continue;Q.stop()}}stopModelAnimations(A){for(let Q of A){let B=this._modelAnimations.get(Q);if(!B)continue;B.stop()}}checkAndEmitUpdates(){if(!this._requireSpawned("checkAndEmitUpdates"))return;let A=this.position,Q=this.rotation;if(this._rotationExceedsThreshold(Q,this._lastUpdatedRotation))this._lastUpdatedRotation=Q,this.emitWithWorld(this._world,"ENTITY.UPDATE_ROTATION",{entity:this,rotation:Q});if(this._positionExceedsThreshold(A,this._lastUpdatedPosition))this._lastUpdatedPosition=A,this.emitWithWorld(this._world,"ENTITY.UPDATE_POSITION",{entity:this,position:A})}serialize(){return GQ.serializeEntity(this)}tick(A){if(this.emit("ENTITY.TICK",{entity:this,tickDeltaMs:A}),this._controller)this._controller.tick(this,A)}_positionExceedsThreshold(A,Q){let B=A.x-Q.x,Y=A.y-Q.y,J=A.z-Q.z;return B*B+Y*Y+J*J>this._positionUpdateThresholdSq}_requireSpawned(A){if(!this.isSpawned)n.error(`Entity._requireSpawned(): Entity ${this._name} is not spawned, cannot invoke ${A}()!`);return this.isSpawned}_rotationExceedsThreshold(A,Q){return Math.abs(A.x*Q.x+A.y*Q.y+A.z*Q.z+A.w*Q.w){X.ATTACH="BASE_ENTITY_CONTROLLER.ATTACH";X.DESPAWN="BASE_ENTITY_CONTROLLER.DESPAWN";X.DETACH="BASE_ENTITY_CONTROLLER.DETACH";X.SPAWN="BASE_ENTITY_CONTROLLER.SPAWN";X.TICK="BASE_ENTITY_CONTROLLER.TICK";X.TICK_WITH_PLAYER_INPUT="BASE_ENTITY_CONTROLLER.TICK_WITH_PLAYER_INPUT"})(pWA||={});class QZ extends BQ{attach(A){this.emit("BASE_ENTITY_CONTROLLER.ATTACH",{entity:A})}despawn(A){this.emit("BASE_ENTITY_CONTROLLER.DESPAWN",{entity:A})}detach(A){this.emit("BASE_ENTITY_CONTROLLER.DETACH",{entity:A})}spawn(A){this.emit("BASE_ENTITY_CONTROLLER.SPAWN",{entity:A})}tickWithPlayerInput(A,Q,B,Y){this.emit("BASE_ENTITY_CONTROLLER.TICK_WITH_PLAYER_INPUT",{entity:A,input:Q,cameraOrientation:B,deltaTimeMs:Y})}tick(A,Q){this.emit("BASE_ENTITY_CONTROLLER.TICK",{entity:A,deltaTimeMs:Q})}}var iWA=0.099856;class BZ extends QZ{faceSpeed=0;idleLoopedAnimations=[];idleLoopedAnimationsSpeed;jumpOneshotAnimations=[];moveLoopedAnimations=[];moveLoopedAnimationsSpeed;moveSpeed=0;_faceTarget;_jumpHeight=0;_moveCompletesWhenStuck=!1;_moveIgnoreAxes={};_moveStartMoveAnimations=!1;_moveStartIdleAnimationsOnCompletion=!0;_moveStoppingDistanceSquared=iWA;_moveStuckAccumulatorMs=0;_moveStuckLastPosition;_moveTarget;_onFace;_onFaceComplete;_onMove;_onMoveComplete;_stopFaceRequested=!1;_stopMoveRequested=!1;constructor(A={}){super();this.idleLoopedAnimations=A.idleLoopedAnimations??this.idleLoopedAnimations,this.idleLoopedAnimationsSpeed=A.idleLoopedAnimationsSpeed??this.idleLoopedAnimationsSpeed,this.jumpOneshotAnimations=A.jumpOneshotAnimations??this.jumpOneshotAnimations,this.moveLoopedAnimations=A.moveLoopedAnimations??this.moveLoopedAnimations,this.moveLoopedAnimationsSpeed=A.moveLoopedAnimationsSpeed??this.moveLoopedAnimationsSpeed}spawn(A){super.spawn(A),this._startIdleAnimations(A)}face(A,Q,B){this._faceTarget=A,this.faceSpeed=Q,this._onFace=B?.faceCallback,this._onFaceComplete=B?.faceCompleteCallback}jump(A){this._jumpHeight=A}move(A,Q,B){this.moveSpeed=Q,this._moveCompletesWhenStuck=B?.moveCompletesWhenStuck??!1,this._moveIgnoreAxes=B?.moveIgnoreAxes??{},this._moveStartIdleAnimationsOnCompletion=B?.moveStartIdleAnimationsOnCompletion??!0,this._moveStartMoveAnimations=!0,this._moveStoppingDistanceSquared=B?.moveStoppingDistance?B.moveStoppingDistance**2:iWA,this._moveTarget=A,this._onMove=B?.moveCallback,this._onMoveComplete=B?.moveCompleteCallback,this._moveStuckAccumulatorMs=0,this._moveStuckLastPosition=void 0}stopFace(){this._stopFaceRequested=!0}stopMove(){this._stopMoveRequested=!0}tick(A,Q){if(super.tick(A,Q),!this._moveTarget&&!this._faceTarget&&!this._jumpHeight)return;if(this._moveStartMoveAnimations)this._startMoveAnimations(A),this._moveStartMoveAnimations=!1;let B=Q/1000,Y=A.position;if(A.isDynamic&&this._jumpHeight>0){let J=Math.abs(A.world.simulation.gravity.y),C=Math.sqrt(2*J*this._jumpHeight);A.applyImpulse({x:0,y:C*A.mass,z:0}),this._jumpHeight=0,this._startJumpAnimations(A)}if(this._moveTarget){let J={x:this._moveIgnoreAxes.x?0:this._moveTarget.x-Y.x,y:this._moveIgnoreAxes.y?0:this._moveTarget.y-Y.y,z:this._moveIgnoreAxes.z?0:this._moveTarget.z-Y.z},C=J.x*J.x+J.y*J.y+J.z*J.z,X=!1;if(this._moveCompletesWhenStuck){if(this._moveStuckAccumulatorMs+=Q,this._moveStuckAccumulatorMs>=500){if(this._moveStuckLastPosition){let G=Y.x-this._moveStuckLastPosition.x,F=Y.y-this._moveStuckLastPosition.y,W=Y.z-this._moveStuckLastPosition.z;X=Math.sqrt(G*G+F*F+W*W)this._moveStoppingDistanceSquared&&!this._stopMoveRequested&&!X){let G=Math.sqrt(C),F=this.moveSpeed*B,Z=Math.min(G,F)/G,U={x:Y.x+J.x*Z,y:Y.y+J.y*Z,z:Y.z+J.z*Z};if(A.setPosition(U),this._onMove)this._onMove(U,this._moveTarget)}else{if(this._moveStuckAccumulatorMs=0,this._moveStuckLastPosition=void 0,this._moveTarget=void 0,this._stopMoveRequested=!1,this._moveStartIdleAnimationsOnCompletion)this._startIdleAnimations(A);if(this._onMoveComplete){let G=this._onMoveComplete;this._onMove=void 0,this._onMoveComplete=void 0,G(Y)}}}if(this._faceTarget){let J={x:this._faceTarget.x-Y.x,z:this._faceTarget.z-Y.z},C=Math.atan2(-J.x,-J.z),X=A.rotation,G=Math.atan2(2*(X.w*X.y),1-2*(X.y*X.y)),F=C-G;while(F>Math.PI)F-=2*Math.PI;while(F<-Math.PI)F+=2*Math.PI;if(Math.abs(F)>0.01&&!this._stopFaceRequested){let W=this.faceSpeed*B,Z=Math.abs(F){if(this._behavior)this._behavior.tick(this,this._world,Y)})}get isSpawned(){return this._spawned}get world(){return this._world}get controller(){return this.entity.controller}setBehavior(A){this._behavior=A}spawn(A){if(this._spawned)return;let Q=A??{x:0,y:10,z:0};this.entity.spawn(this._world,Q),this._spawned=!0}teleport(A){if(!this._spawned)return;this.entity.setPosition(A)}despawn(){if(!this._spawned)return;this.entity.despawn(),this._spawned=!1}}class YZ{static _instance;static get instance(){if(!YZ._instance)YZ._instance=new YZ;return YZ._instance}_bots=new Map;get botCount(){return this._bots.size}spawnBot(A,Q){let B=new rH(A,Q);return B.spawn(Q?.spawnPosition),this._bots.set(B.id,B),B}spawnBots(A,Q,B){let Y=[];for(let J=0;J=this._changeIntervalMs)this._elapsed=0,this._pickNewTarget(A)}_pickNewTarget(A){let Q=Math.random()*Math.PI*2,B=Math.random()*this._moveRadius,Y=this._originX+Math.cos(Q)*B,J=this._originZ+Math.sin(Q)*B,C=A.entity.position;A.controller.move({x:Y,y:C.y,z:J},this._moveSpeed),A.controller.face({x:Y,y:C.y,z:J},5)}}class Hf{name="chase";_chaseSpeed;_detectionRadius;_updateIntervalMs;_elapsed=0;constructor(A){this._chaseSpeed=A?.chaseSpeed??5,this._detectionRadius=A?.detectionRadius??50,this._updateIntervalMs=A?.updateIntervalMs??500}tick(A,Q,B){if(!A.isSpawned)return;if(this._elapsed+=B,this._elapsed=3000)this._moveElapsed=0,this._moveToRandom(A);if(this._elapsed+=B,this._elapsed{Y.post("Profiler.enable",()=>{Y.post("Profiler.start",()=>{setTimeout(()=>{Y.post("Profiler.stop",(X,{profile:G})=>{if(Y.post("Profiler.disable"),Y.disconnect(),X){C(X);return}if(Q)nWA(Q,JSON.stringify(G));J(G)})},A)})})})}static async captureHeapSnapshot(A){let Q=await sWA();if(!Q)return console.warn("CpuProfiler: node:inspector not available in this runtime"),"";let B=new Q.Session;B.connect();let Y="";return B.on("HeapProfiler.addHeapSnapshotChunk",(J)=>{Y+=J.params.chunk}),new Promise((J,C)=>{B.post("HeapProfiler.takeHeapSnapshot",void 0,(X)=>{if(B.disconnect(),X){C(X);return}if(A)nWA(A,Y);J(Y)})})}}var rWA=5,Lf;((U)=>{U.PAUSE="AUDIO.PAUSE";U.PLAY="AUDIO.PLAY";U.PLAY_RESTART="AUDIO.PLAY_RESTART";U.SET_ATTACHED_TO_ENTITY="AUDIO.SET_ATTACHED_TO_ENTITY";U.SET_CUTOFF_DISTANCE="AUDIO.SET_CUTOFF_DISTANCE";U.SET_DETUNE="AUDIO.SET_DETUNE";U.SET_DISTORTION="AUDIO.SET_DISTORTION";U.SET_POSITION="AUDIO.SET_POSITION";U.SET_PLAYBACK_RATE="AUDIO.SET_PLAYBACK_RATE";U.SET_REFERENCE_DISTANCE="AUDIO.SET_REFERENCE_DISTANCE";U.SET_VOLUME="AUDIO.SET_VOLUME"})(Lf||={});class aH extends BQ{_id;_attachedToEntity;_cutoffDistance;_duration;_detune;_distortion;_loop;_offset;_position;_playbackRate;_playing;_referenceDistance;_startTick;_uri;_volume;_world;constructor(A){super();this._attachedToEntity=A.attachedToEntity,this._cutoffDistance=A.cutoffDistance??(this.isPositional?(A.referenceDistance??rWA)+10:0),this._duration=A.duration,this._detune=A.detune??0,this._distortion=A.distortion??0,this._loop=A.loop??!1,this._offset=A.offset??0,this._position=A.position,this._playing=!1,this._playbackRate=A.playbackRate??1,this._referenceDistance=A.referenceDistance??(this.isPositional?rWA:0),this._uri=A.uri,this._volume=A.volume??0.5}get id(){return this._id}get attachedToEntity(){return this._attachedToEntity}get cutoffDistance(){return this._cutoffDistance}get duration(){return this._duration}get detune(){return this._detune}get distortion(){return this._distortion}get loop(){return this._loop}get offset(){return this._offset}get isLoaded(){return this._id!==void 0}get isPlaying(){return this._playing}get isPositional(){return this._attachedToEntity!==void 0||this._position!==void 0}get position(){return this._position}get playbackRate(){return this._playbackRate}get referenceDistance(){return this._referenceDistance}get startTick(){return this._startTick}get uri(){return this._uri}get volume(){return this._volume}get world(){return this._world}play(A,Q=!1){if(this.isPlaying&&!Q)return;if(this._attachedToEntity&&!this._attachedToEntity.isSpawned)return n.error(`Audio.play(): Attached entity ${this._attachedToEntity.id} is not spawned!`);let B=Q&&this._id!==void 0?"AUDIO.PLAY_RESTART":"AUDIO.PLAY";this._id??=A.audioManager.registerAudio(this),this._playing=!0,this._startTick=A.loop.currentTick,this._world=this._world??A,this.emitWithWorld(A,B,{audio:this})}pause(){if(!this.isPlaying||!this._world)return;this._playing=!1,this.emitWithWorld(this._world,"AUDIO.PAUSE",{audio:this})}setAttachedToEntity(A){if(!this._requirePositional())return;if(!A.isSpawned)return n.error(`Audio.setAttachedToEntity(): Entity ${A.id} is not spawned!`);if(this._attachedToEntity===A)return;if(this._attachedToEntity=A,this._position=void 0,this.isLoaded&&this._world)this.emitWithWorld(this._world,"AUDIO.SET_ATTACHED_TO_ENTITY",{audio:this,entity:A})}setCutoffDistance(A){if(!this._requirePositional())return;if(A<=0||A1)return n.error("Volume must be between 0 and 1");if(this._volume===A)return;if(this._volume=A,this.isLoaded&&this._world)this.emitWithWorld(this._world,"AUDIO.SET_VOLUME",{audio:this,volume:A})}serialize(){return GQ.serializeAudio(this)}_requirePositional(){if(!this.isPositional)n.error("Audio._requirePositional(): Audio is not positional. and therefor does not support the invoked method.");return this.isPositional}}class oH{_audios=new Map;_nextAudioId=1;_world;constructor(A){this._world=A}get world(){return this._world}getAllAudios(){return Array.from(this._audios.values())}getAllEntityAttachedAudios(A){return this.getAllAudios().filter((Q)=>Q.attachedToEntity===A)}getAllLoopedAudios(){return this.getAllAudios().filter((A)=>A.loop)}getAllOneshotAudios(){return this.getAllAudios().filter((A)=>!A.loop)}registerAudio(A){if(A.id!==void 0)n.fatalError(`AudioManager.registerAudio(): Provided audio instance with uri ${A.uri} is already assigned the id ${A.id}!`);let Q=this._nextAudioId;return this._audios.set(Q,A),this._nextAudioId++,Q}unregisterAudio(A){if(A.id===void 0)return n.error(`AudioManager.unregisterAudio(): Provided audio instance with uri ${A.uri} is not assigned an id!`);A.pause(),this._audios.delete(A.id)}unregisterEntityAttachedAudios(A){this.getAllEntityAttachedAudios(A).forEach((Q)=>{this.unregisterAudio(Q)})}}var kX={Y_0:{enumIndex:0,matrix:[1,0,0,0,1,0,0,0,1]},Y_90:{enumIndex:1,matrix:[0,0,-1,0,1,0,1,0,0]},Y_180:{enumIndex:2,matrix:[-1,0,0,0,1,0,0,0,-1]},Y_270:{enumIndex:3,matrix:[0,0,1,0,1,0,-1,0,0]},NY_0:{enumIndex:4,matrix:[-1,0,0,0,-1,0,0,0,1]},NY_90:{enumIndex:5,matrix:[0,0,-1,0,-1,0,-1,0,0]},NY_180:{enumIndex:6,matrix:[1,0,0,0,-1,0,0,0,-1]},NY_270:{enumIndex:7,matrix:[0,0,1,0,-1,0,1,0,0]},X_0:{enumIndex:8,matrix:[0,-1,0,1,0,0,0,0,1]},X_90:{enumIndex:9,matrix:[0,0,-1,1,0,0,0,-1,0]},X_180:{enumIndex:10,matrix:[0,1,0,1,0,0,0,0,-1]},X_270:{enumIndex:11,matrix:[0,0,1,1,0,0,0,1,0]},NX_0:{enumIndex:12,matrix:[0,1,0,-1,0,0,0,0,1]},NX_90:{enumIndex:13,matrix:[0,0,-1,-1,0,0,0,1,0]},NX_180:{enumIndex:14,matrix:[0,-1,0,-1,0,0,0,0,-1]},NX_270:{enumIndex:15,matrix:[0,0,1,-1,0,0,0,-1,0]},Z_0:{enumIndex:16,matrix:[1,0,0,0,0,1,0,-1,0]},Z_90:{enumIndex:17,matrix:[0,1,0,0,0,1,1,0,0]},Z_180:{enumIndex:18,matrix:[-1,0,0,0,0,1,0,1,0]},Z_270:{enumIndex:19,matrix:[0,-1,0,0,0,1,-1,0,0]},NZ_0:{enumIndex:20,matrix:[1,0,0,0,0,-1,0,1,0]},NZ_90:{enumIndex:21,matrix:[0,-1,0,0,0,-1,1,0,0]},NZ_180:{enumIndex:22,matrix:[-1,0,0,0,0,-1,0,-1,0]},NZ_270:{enumIndex:23,matrix:[0,1,0,0,0,-1,-1,0,0]}};class AE{globalCoordinate;blockType;constructor(A,Q){this.globalCoordinate=A,this.blockType=Q}static fromGlobalCoordinate(A,Q){return new AE(A,Q)}getNeighborGlobalCoordinateFromHitPoint(A){let Q={x:A.x-(this.globalCoordinate.x+0.5),y:A.y-(this.globalCoordinate.y+0.5),z:A.z-(this.globalCoordinate.z+0.5)},B="x",Y=Math.abs(Q.x);for(let[J,C]of Object.entries(Q))if(Math.abs(C)>Y)B=J,Y=Math.abs(C);return{x:this.globalCoordinate.x+(B==="x"?Math.sign(Q.x):0),y:this.globalCoordinate.y+(B==="y"?Math.sign(Q.y):0),z:this.globalCoordinate.z+(B==="z"?Math.sign(Q.z):0)}}}import kYB from"crypto";import O7 from"fs";import D8 from"path";var W0={ATLAS_DIR:".atlas",ATLAS_PNG_FILE:"atlas.png",ATLAS_KTX2_FILE:"atlas.ktx2",ATLAS_MANIFEST_FILE:"atlas.json",TEXTURE_SIZE:24,TEXTURE_PADDING:20,ALPHA_TEST_THRESHOLD:0.05,DATA_SCHEMA_VERSION:1,DIRECTORIES:[zY.assetsLibraryPath&&D8.join(zY.assetsLibraryPath,"blocks"),D8.resolve(process.cwd(),"assets","blocks")].filter(Boolean)};class P7{static instance=new P7;generate=process.env.NODE_ENV!=="production";_textureUriMetadata=new Map;constructor(){}hasBlockTexture(A){return this._textureUriMetadata.has(A)||["+x","-x","+y","-y","+z","-z"].every((Q)=>this._textureUriMetadata.has(`${A}/${Q}.png`))}getBlockTextureMetadata(A){let Q=this._textureUriMetadata.get(A);if(Q)return[Q];let B=["+x","-x","+y","-y","+z","-z"].map((Y)=>this._textureUriMetadata.get(`${A}/${Y}.png`)).filter(Boolean);return B.length===6?B:void 0}async preloadAtlas(){let A=await this._getAbsoluteTexturePaths(),Q=D8.resolve(process.cwd(),"assets/blocks",W0.ATLAS_DIR);if(this._loadCachedAtlasManifest(A,Q))return console.info(`BlockTextureRegistry.preloadAtlas(): Using cached atlas for ${A.length} block textures`);if(!this.generate)n.fatalError("BlockTextureRegistry.preloadAtlas(): No cached atlas found in production. Run development server to generate atlas.");console.info(`BlockTextureRegistry.preloadAtlas(): Generating atlas for ${A.length} block textures...`);let B=await Promise.all(A.map(async(U)=>{let $=await sU.read(U),E=this._absoluteTexturePathToTextureUri(U);if($.width!==W0.TEXTURE_SIZE||$.height!==W0.TEXTURE_SIZE)$.resize({w:W0.TEXTURE_SIZE,h:W0.TEXTURE_SIZE});return{textureUri:E,image:$,metadata:this._analyzeTexture($.bitmap)}})),Y=W0.TEXTURE_SIZE+W0.TEXTURE_PADDING*2,{cols:J,rows:C}=this._calculateGridLayout(B.length),X=J*Y,G=C*Y,F=new sU({width:X,height:G,color:0});for(let U=0;U{let U=(F*C+G)*4,$=(Z*C+W)*4;J[$]=J[U],J[$+1]=J[U+1],J[$+2]=J[U+2],J[$+3]=J[U+3]};for(let G=0;G=B+Q||F=B+Q){let W=Math.max(B,Math.min(B+Q-1,F)),Z=Math.max(B,Math.min(B+Q-1,G));X(W,Z,F,G)}return Y}_analyzeTexture(A){let{width:Q,height:B,data:Y}=A,J=Q*B,C=[0,0,0],X=255*W0.ALPHA_TEST_THRESHOLD,G=!1,F=!1,W=0;for(let Z=0;Z=X,F||=UZ/J/255),isTransparent:G,needsAlphaTest:F,transparencyRatio:W/J}}_calculateGridLayout(A){let Q=(C)=>2**Math.ceil(Math.log2(C)),B=Math.ceil(Math.sqrt(A)),Y=Q(B),J=Q(Math.ceil(A/Y));return{cols:Y,rows:J}}async _getAbsoluteTexturePaths(){let A=new Map;for(let B of W0.DIRECTORIES){if(!O7.existsSync(B))continue;let Y=await y4("**/*.png",{cwd:B,follow:!0});for(let J of Y){let C=D8.join(B,J),X=this._absoluteTexturePathToTextureUri(C);A.set(X,C)}}return Array.from(A.keys()).sort().map((B)=>A.get(B))}}var qf;((Y)=>{Y.ENTITY_COLLISION="BLOCK_TYPE.ENTITY_COLLISION";Y.ENTITY_CONTACT_FORCE="BLOCK_TYPE.ENTITY_CONTACT_FORCE";Y.INTERACT="BLOCK_TYPE.INTERACT"})(qf||={});class N8 extends BQ{_id;_customColliderOptions;_isLiquid;_lightLevel;_name;_textureUri;constructor(A={id:-1,textureUri:"textures/missing.png",name:"Unknown"}){if(A.id<0)n.fatalError("BlockType.constructor(): BlockType id not set.");if(!P7.instance.hasBlockTexture(A.textureUri))n.fatalError(`BlockType.constructor(): Block texture ${A.textureUri} not found. If it is a cubemap texture, make sure every face is present in the folder (+x.png, -x.png, +y.png, -y.png, +z.png, -z.png).`);super();this._id=A.id,this._customColliderOptions=A.customColliderOptions,this._isLiquid=A.isLiquid??!1,this._name=A.name,this._textureUri=A.textureUri,this._lightLevel=Math.min(A.lightLevel??0,15)}get id(){return this._id}get colliderOptions(){return this._customColliderOptions??{shape:"voxels"}}get isLiquid(){return this._isLiquid}get isMeshable(){return!this._customColliderOptions}get isTrimesh(){return this.colliderOptions.shape==="trimesh"}get isVoxel(){return this.colliderOptions.shape==="voxels"}get lightLevel(){return this._lightLevel}get name(){return this._name}get textureUri(){return this._textureUri}createCollider(A){let Q=this.colliderOptions.shape==="voxels"?new S9({...this.colliderOptions,coordinates:A.map((B)=>B.globalCoordinate),size:{x:1,y:1,z:1}}):new S9({...this.colliderOptions,...this._buildTrimeshFromBlockPlacements(A)});if(this.isLiquid)Q.setSensor(!0);if(this.hasListeners("BLOCK_TYPE.ENTITY_COLLISION")||this.isLiquid)Q.enableCollisionEvents(!0);if(this.hasListeners("BLOCK_TYPE.ENTITY_CONTACT_FORCE"))Q.enableContactForceEvents(!0);if($C.isDefaultCollisionGroups(Q.collisionGroups))Q.setCollisionGroups({belongsTo:[1],collidesWith:[65535&~1]});return Q}interact(A,Q){if(!A.world)return;this.emitWithWorld(A.world,"BLOCK_TYPE.INTERACT",{blockType:this,player:A,raycastHit:Q})}serialize(){return GQ.serializeBlockType(this)}_buildTrimeshFromBlockPlacements(A){let Q=this.colliderOptions,B=Q.vertices,Y=Q.indices;if(!B||!Y)n.fatalError(`BlockType._buildTrimeshFromCoordinates(): Block type id ${this.id} (${this.name}) is a trimesh but is missing vertices or indices!`);if(B.length%3!==0||Y.length%3!==0)n.fatalError(`BlockType._buildTrimeshFromCoordinates(): Block type id ${this.id} (${this.name}) has an invalid number of vertices or indices! Expected a multiple of 3, got ${B.length} and ${Y.length}.`);let J=B.length/3,C=A.length,X=new Float32Array(B.length*C),G=new Uint32Array(Y.length*C);for(let F=0;FQ.REGISTER_BLOCK_TYPE="BLOCK_TYPE_REGISTRY.REGISTER_BLOCK_TYPE")(Mf||={});class tH extends BQ{_blockTypes=new Map;_world;constructor(A){super();this._world=A}get world(){return this._world}getAllBlockTypes(){return Array.from(this._blockTypes.values())}getBlockType(A){let Q=this._blockTypes.get(A);if(!Q)n.fatalError(`BlockTypeRegistry.getBlockType(): BlockType with id ${A} not found.`);return Q}registerGenericBlockType(A){let B=new class extends N8{constructor(Y=A){super(Y)}};return this.registerBlockType(B),B}registerBlockType(A){this._blockTypes.set(A.id,A),this.emitWithWorld(this._world,"BLOCK_TYPE_REGISTRY.REGISTER_BLOCK_TYPE",{blockTypeRegistry:this,id:A.id,blockType:A})}serialize(){return GQ.serializeBlockTypeRegistry(this)}}var Bm={};fG(Bm,{worldSchema:()=>Qm,worldPacketDefinition:()=>cEA,vectorSchema:()=>nQ,vectorBooleanSchema:()=>MXB,uiSchema:()=>eb,uiPacketDefinition:()=>uEA,uiDatasSchema:()=>Am,uiDatasPacketDefinition:()=>dEA,uiDataSendPacketDefinition:()=>wEA,uiDataSchema:()=>zD,syncResponseSchema:()=>tb,syncResponsePacketDefinition:()=>mEA,syncRequestSchema:()=>Rb,syncRequestPacketDefinition:()=>REA,stateRequestSchema:()=>zb,stateRequestPacketDefinition:()=>zEA,sceneUIsSchema:()=>ob,sceneUIsPacketDefinition:()=>bEA,sceneUISchema:()=>ab,rgbColorSchema:()=>SY,registeredPackets:()=>Kw,quaternionSchema:()=>RD,playersSchema:()=>rb,playersPacketDefinition:()=>fEA,playerSchema:()=>sb,physicsDebugRenderSchema:()=>nb,physicsDebugRenderPacketDefinition:()=>gEA,physicsDebugRaycastsSchema:()=>ib,physicsDebugRaycastsPacketDefinition:()=>xEA,physicsDebugRaycastSchema:()=>pb,particleEmittersSchema:()=>lb,particleEmittersPacketDefinition:()=>hEA,particleEmitterSchema:()=>cb,outlineSchema:()=>xb,outboundPackets:()=>Ew,notificationPermissionRequestSchema:()=>db,notificationPermissionRequestPacketDefinition:()=>yEA,modelNodeOverrideSchema:()=>gb,modelAnimationSchema:()=>hb,lightsSchema:()=>ub,lightsPacketDefinition:()=>vEA,lightSchema:()=>mb,isValidPacket:()=>RXB,inputSchema:()=>Mb,inputPacketDefinition:()=>MEA,inboundPackets:()=>Uw,hexColorSchema:()=>Lb,heartbeatSchema:()=>Nb,heartbeatPacketDefinition:()=>NEA,framePacketBuffer:()=>qXB,entitySchema:()=>fb,entitiesSchema:()=>bb,entitiesPacketDefinition:()=>_EA,definePacket:()=>HQ,debugConfigSchema:()=>qb,debugConfigPacketDefinition:()=>qEA,createPacketBufferUnframer:()=>LXB,createPacket:()=>NXB,connectionSchema:()=>Db,connectionPacketDefinition:()=>DEA,chunksSchema:()=>yb,chunksPacketDefinition:()=>kEA,chunkSchema:()=>vb,chatMessagesSchema:()=>_b,chatMessagesPacketDefinition:()=>SEA,chatMessageSendPacketDefinition:()=>LEA,chatMessageSchema:()=>MD,cameraSchema:()=>kb,cameraPacketDefinition:()=>TEA,blocksSchema:()=>Pb,blocksPacketDefinition:()=>OEA,blockTypesSchema:()=>Sb,blockTypesPacketDefinition:()=>PEA,blockTypeSchema:()=>Tb,blockSchema:()=>Ob,bidirectionalPackets:()=>$w,audiosSchema:()=>jb,audiosPacketDefinition:()=>jEA,audioSchema:()=>wb,PacketId:()=>nB});var $w={};fG($w,{heartbeatPacketDefinition:()=>NEA,connectionPacketDefinition:()=>DEA});var Ib=qA(IEA(),1);class Hb extends Ib.default{static instance=new Ib.default}var qD=4,HEA=33554432,nB;((_)=>{_[_.SYNC_REQUEST=0]="SYNC_REQUEST";_[_.INPUT=1]="INPUT";_[_.STATE_REQUEST=2]="STATE_REQUEST";_[_.CHAT_MESSAGE_SEND=3]="CHAT_MESSAGE_SEND";_[_.UI_DATA_SEND=4]="UI_DATA_SEND";_[_.SYNC_RESPONSE=32]="SYNC_RESPONSE";_[_.AUDIOS=33]="AUDIOS";_[_.BLOCKS=34]="BLOCKS";_[_.BLOCK_TYPES=35]="BLOCK_TYPES";_[_.CHAT_MESSAGES=36]="CHAT_MESSAGES";_[_.CHUNKS=37]="CHUNKS";_[_.ENTITIES=38]="ENTITIES";_[_.WORLD=39]="WORLD";_[_.CAMERA=40]="CAMERA";_[_.UI=41]="UI";_[_.UI_DATAS=42]="UI_DATAS";_[_.SCENE_UIS=43]="SCENE_UIS";_[_.LIGHTS=44]="LIGHTS";_[_.PLAYERS=45]="PLAYERS";_[_.PARTICLE_EMITTERS=46]="PARTICLE_EMITTERS";_[_.NOTIFICATION_PERMISSION_REQUEST=47]="NOTIFICATION_PERMISSION_REQUEST";_[_.CONNECTION=116]="CONNECTION";_[_.HEARTBEAT=117]="HEARTBEAT";_[_.DEBUG_CONFIG=128]="DEBUG_CONFIG";_[_.PHYSICS_DEBUG_RENDER=192]="PHYSICS_DEBUG_RENDER";_[_.PHYSICS_DEBUG_RAYCASTS=193]="PHYSICS_DEBUG_RAYCASTS"})(nB||={});function NXB(A,Q,B){if(!A.validate(Q))throw Error(`Invalid payload for packet with id ${A.id}. Error: ${Hb.instance.errorsText(A.validate.errors)}`);let Y=[A.id,Q];if(typeof B==="number")Y.push(B);return Y}function LXB(A){let Q=new Uint8Array(524288),B=new DataView(Q.buffer,Q.byteOffset,Q.byteLength),Y=0;return(J)=>{if(Y+J.length>Q.length){let X=Math.max(Q.length*2,Y+J.length);if(X>HEA){console.error(`Unframer packet buffer exceeded maximum size of ${HEA} bytes, discarding packet...`),Y=0;return}let G=new Uint8Array(X);G.set(Q.subarray(0,Y)),Q=G,B=new DataView(Q.buffer,Q.byteOffset,Q.byteLength)}Q.set(J,Y),Y+=J.length;let C=0;while(Y-C>=qD){let X=B.getUint32(C,!1),G=qD+X;if(Y-C0){if(Y>C)Q.copyWithin(0,C,Y);Y-=C}}}function HQ(A,Q){return{id:A,schema:Q,validate:Hb.instance.compile(Q)}}function qXB(A){let Q=new Uint8Array(qD+A.length);return new DataView(Q.buffer).setUint32(0,A.length,!1),Q.set(A,qD),Q}var Db={type:"object",properties:{i:{type:"string",nullable:!0},k:{type:"boolean",nullable:!0}},additionalProperties:!1};var DEA=HQ(116,Db);var Nb={type:"null",nullable:!0};var NEA=HQ(117,Nb);var Uw={};fG(Uw,{uiDataSendPacketDefinition:()=>wEA,syncRequestPacketDefinition:()=>REA,stateRequestPacketDefinition:()=>zEA,inputPacketDefinition:()=>MEA,debugConfigPacketDefinition:()=>qEA,chatMessageSendPacketDefinition:()=>LEA});var Lb={type:"string",pattern:"^[0-9A-Fa-f]{6}$"};var MD={type:"object",properties:{m:{type:"string"},c:{...Lb,nullable:!0},p:{type:"string",nullable:!0}},required:["m"],additionalProperties:!1};var LEA=HQ(3,MD);var qb={type:"object",properties:{pdr:{type:"boolean",nullable:!0}},additionalProperties:!1};var qEA=HQ(128,qb);var nQ={type:"array",items:[{type:"number"},{type:"number"},{type:"number"}],minItems:3,maxItems:3};var Mb={type:"object",properties:{"1":{type:"boolean",nullable:!0},"2":{type:"boolean",nullable:!0},"3":{type:"boolean",nullable:!0},"4":{type:"boolean",nullable:!0},"5":{type:"boolean",nullable:!0},"6":{type:"boolean",nullable:!0},"7":{type:"boolean",nullable:!0},"8":{type:"boolean",nullable:!0},"9":{type:"boolean",nullable:!0},"0":{type:"boolean",nullable:!0},w:{type:"boolean",nullable:!0},a:{type:"boolean",nullable:!0},s:{type:"boolean",nullable:!0},d:{type:"boolean",nullable:!0},q:{type:"boolean",nullable:!0},e:{type:"boolean",nullable:!0},r:{type:"boolean",nullable:!0},f:{type:"boolean",nullable:!0},z:{type:"boolean",nullable:!0},x:{type:"boolean",nullable:!0},c:{type:"boolean",nullable:!0},v:{type:"boolean",nullable:!0},u:{type:"boolean",nullable:!0},i:{type:"boolean",nullable:!0},o:{type:"boolean",nullable:!0},j:{type:"boolean",nullable:!0},k:{type:"boolean",nullable:!0},l:{type:"boolean",nullable:!0},n:{type:"boolean",nullable:!0},m:{type:"boolean",nullable:!0},sp:{type:"boolean",nullable:!0},sh:{type:"boolean",nullable:!0},tb:{type:"boolean",nullable:!0},ml:{type:"boolean",nullable:!0},mr:{type:"boolean",nullable:!0},cp:{type:"number",nullable:!0},cy:{type:"number",nullable:!0},ird:{...nQ,nullable:!0},iro:{...nQ,nullable:!0},jd:{type:"number",nullable:!0},sq:{type:"number",nullable:!0}},additionalProperties:!1};var MEA=HQ(1,Mb);var zb={type:"object",properties:{},additionalProperties:!1};var zEA=HQ(2,zb);var Rb={type:"null",nullable:!0};var REA=HQ(0,Rb);var zD={type:"object",properties:{},additionalProperties:!0};var wEA=HQ(4,zD);var Ew={};fG(Ew,{worldPacketDefinition:()=>cEA,uiPacketDefinition:()=>uEA,uiDatasPacketDefinition:()=>dEA,syncResponsePacketDefinition:()=>mEA,sceneUIsPacketDefinition:()=>bEA,playersPacketDefinition:()=>fEA,physicsDebugRenderPacketDefinition:()=>gEA,physicsDebugRaycastsPacketDefinition:()=>xEA,particleEmittersPacketDefinition:()=>hEA,notificationPermissionRequestPacketDefinition:()=>yEA,lightsPacketDefinition:()=>vEA,entitiesPacketDefinition:()=>_EA,chunksPacketDefinition:()=>kEA,chatMessagesPacketDefinition:()=>SEA,cameraPacketDefinition:()=>TEA,blocksPacketDefinition:()=>OEA,blockTypesPacketDefinition:()=>PEA,audiosPacketDefinition:()=>jEA});var wb={type:"object",properties:{i:{type:"number"},a:{type:"string",nullable:!0},cd:{type:"number",nullable:!0},d:{type:"number",nullable:!0},de:{type:"number",nullable:!0},di:{type:"number",minimum:0,nullable:!0},e:{type:"number",nullable:!0},l:{type:"boolean",nullable:!0},o:{type:"number",nullable:!0},p:{...nQ,nullable:!0},pa:{type:"boolean",nullable:!0},pl:{type:"boolean",nullable:!0},pr:{type:"number",minimum:0,nullable:!0},r:{type:"boolean",nullable:!0},rd:{type:"number",nullable:!0},s:{type:"number",nullable:!0},v:{type:"number",minimum:0,maximum:1,nullable:!0}},required:["i"],additionalProperties:!1};var jb={type:"array",items:{...wb}};var jEA=HQ(33,jb);var Ob={type:"object",properties:{i:{type:"number"},c:nQ,r:{type:"number",nullable:!0}},required:["i","c"],additionalProperties:!1};var Pb={type:"array",items:{...Ob}};var OEA=HQ(34,Pb);var Tb={type:"object",properties:{i:{type:"number"},l:{type:"boolean",nullable:!0},ll:{type:"number",nullable:!0},n:{type:"string",nullable:!0},t:{type:"string",nullable:!0},ti:{type:"array",items:{type:"number"},nullable:!0},tv:{type:"array",items:{type:"number"},nullable:!0}},required:["i"],additionalProperties:!1};var Sb={type:"array",items:{...Tb}};var PEA=HQ(35,Sb);var kb={type:"object",properties:{cb:{type:"boolean",nullable:!0},m:{type:"number",nullable:!0},e:{type:"number",nullable:!0},et:{type:"number",nullable:!0},fo:{type:"number",nullable:!0},ffo:{type:"number",nullable:!0},fv:{type:"number",nullable:!0},h:{type:"array",items:{type:"string"},nullable:!0},mp:{type:"boolean",nullable:!0},my:{type:"boolean",nullable:!0},o:{...nQ,nullable:!0},p:{...nQ,nullable:!0},pt:{...nQ,nullable:!0},pl:{...nQ,nullable:!0},s:{type:"array",items:{type:"string"},nullable:!0},sa:{type:"number",nullable:!0},z:{type:"number",nullable:!0}},additionalProperties:!1};var _b={type:"array",items:{...MD}};var vb={type:"object",properties:{c:nQ,b:{type:"array",items:{type:"number",minimum:0,maximum:255},minItems:4096,maxItems:4096,nullable:!0},r:{type:"array",items:{type:"number"},minItems:0,maxItems:8192,nullable:!0},rm:{type:"boolean",nullable:!0}},required:["c"],additionalProperties:!1};var yb={type:"array",items:{...vb}};var SY={type:"array",items:[{type:"number",minimum:0,maximum:255},{type:"number",minimum:0,maximum:255},{type:"number",minimum:0,maximum:255}],minItems:3,maxItems:3};var hb={type:"object",properties:{n:{type:"string"},b:{type:"number",nullable:!0},c:{type:"boolean",nullable:!0},fi:{type:"boolean",nullable:!0},fo:{type:"boolean",nullable:!0},l:{type:"number",nullable:!0},p:{type:"boolean",nullable:!0},pa:{type:"boolean",nullable:!0},pr:{type:"number",nullable:!0},r:{type:"boolean",nullable:!0},s:{type:"boolean",nullable:!0},w:{type:"number",nullable:!0}},required:["n"],additionalProperties:!1};var RD={type:"array",items:[{type:"number"},{type:"number"},{type:"number"},{type:"number"}],minItems:4,maxItems:4};var gb={type:"object",properties:{n:{type:"string"},ec:{...SY,nullable:!0},ei:{type:"number",nullable:!0},h:{type:"boolean",nullable:!0},p:{...nQ,nullable:!0},pi:{type:"number",nullable:!0},r:{...RD,nullable:!0},ri:{type:"number",nullable:!0},rm:{type:"boolean",nullable:!0},s:{...nQ,nullable:!0},si:{type:"number",nullable:!0}},required:["n"],additionalProperties:!1};var xb={type:"object",properties:{c:{...SY,nullable:!0},ci:{type:"number",nullable:!0},th:{type:"number",nullable:!0},o:{type:"number",nullable:!0},oc:{type:"boolean",nullable:!0}},required:[],additionalProperties:!1};var fb={type:"object",properties:{i:{type:"number"},bh:{...nQ,nullable:!0},bt:{type:"string",nullable:!0},e:{type:"boolean",nullable:!0},ec:{...SY,nullable:!0},ei:{type:"number",nullable:!0},m:{type:"string",nullable:!0},ma:{type:"array",items:{...hb},nullable:!0},mo:{type:"array",items:{...gb},nullable:!0},mt:{type:"string",nullable:!0},n:{type:"string",nullable:!0},o:{type:"number",nullable:!0},ol:{...xb,nullable:!0},p:{...nQ,nullable:!0},pi:{type:"number",nullable:!0},pe:{type:"number",nullable:!0},pn:{type:"string",nullable:!0},r:{...RD,nullable:!0},ri:{type:"number",nullable:!0},rm:{type:"boolean",nullable:!0},si:{type:"number",nullable:!0},sv:{...nQ,nullable:!0},t:{...SY,nullable:!0}},required:["i"],additionalProperties:!1};var bb={type:"array",items:{...fb}};var mb={type:"object",properties:{i:{type:"number"},a:{type:"number",nullable:!0},e:{type:"number",nullable:!0},c:{...SY,nullable:!0},d:{type:"number",nullable:!0},n:{type:"number",nullable:!0},o:{...nQ,nullable:!0},p:{...nQ,nullable:!0},pe:{type:"number",minimum:0,maximum:1,nullable:!0},rm:{type:"boolean",nullable:!0},t:{type:"number",nullable:!0},te:{type:"number",nullable:!0},tp:{...nQ,nullable:!0}},required:["i"],additionalProperties:!1};var ub={type:"array",items:{...mb}};var db={type:"null",nullable:!0};var cb={type:"object",properties:{i:{type:"number"},at:{type:"number",nullable:!0},b:{type:"number",nullable:!0},ce:{...SY,nullable:!0},cev:{...SY,nullable:!0},cs:{...SY,nullable:!0},csv:{...SY,nullable:!0},cie:{type:"number",nullable:!0},ciev:{type:"number",nullable:!0},cis:{type:"number",nullable:!0},cisv:{type:"number",nullable:!0},e:{type:"number",nullable:!0},en:{type:"string",nullable:!0},g:{...nQ,nullable:!0},l:{type:"number",nullable:!0},le:{type:"boolean",nullable:!0},lv:{type:"number",nullable:!0},mp:{type:"number",nullable:!0},o:{...nQ,nullable:!0},oe:{type:"number",nullable:!0},oev:{type:"number",nullable:!0},or:{type:"number",nullable:!0},ofr:{...nQ,nullable:!0},os:{type:"number",nullable:!0},osv:{type:"number",nullable:!0},p:{...nQ,nullable:!0},pa:{type:"boolean",nullable:!0},pv:{...nQ,nullable:!0},r:{type:"number",nullable:!0},rv:{type:"number",nullable:!0},rm:{type:"boolean",nullable:!0},se:{type:"number",nullable:!0},sev:{type:"number",nullable:!0},ss:{type:"number",nullable:!0},ssv:{type:"number",nullable:!0},t:{type:"boolean",nullable:!0},tu:{type:"string",nullable:!0},v:{...nQ,nullable:!0},vv:{...nQ,nullable:!0}},required:["i"],additionalProperties:!1};var lb={type:"array",items:{...cb}};var pb={type:"object",properties:{o:{...nQ},d:{...nQ},l:{type:"number"},h:{type:"boolean"}},required:["o","d","l","h"],additionalProperties:!1};var ib={type:"array",items:{...pb}};var nb={type:"object",properties:{v:{type:"array",items:{type:"number"}},c:{type:"array",items:{type:"number"}}},required:["v","c"],additionalProperties:!1};var sb={type:"object",properties:{i:{type:"string"},p:{type:"string",nullable:!0},rm:{type:"boolean",nullable:!0},u:{type:"string",nullable:!0}},required:["i"],additionalProperties:!1};var rb={type:"array",items:{...sb}};var ab={type:"object",properties:{i:{type:"number"},e:{type:"number",nullable:!0},o:{...nQ,nullable:!0},p:{...nQ,nullable:!0},rm:{type:"boolean",nullable:!0},s:{type:"object",nullable:!0},t:{type:"string",nullable:!0},v:{type:"number",nullable:!0}},required:["i"],additionalProperties:!1};var ob={type:"array",items:{...ab}};var tb={type:"object",properties:{r:{type:"number"},s:{type:"number"},p:{type:"number"},n:{type:"number"}},required:["r","s","p","n"],additionalProperties:!1};var eb={type:"object",properties:{p:{type:"boolean",nullable:!0},pf:{type:"boolean",nullable:!0},u:{type:"string",nullable:!0},ua:{type:"array",items:{type:"string"},nullable:!0}},additionalProperties:!1};var Am={type:"array",items:{...zD}};var MXB={type:"array",items:[{type:"boolean"},{type:"boolean"},{type:"boolean"}],minItems:3,maxItems:3};var Qm={type:"object",properties:{i:{type:"number"},ac:{...SY,nullable:!0},ai:{type:"number",nullable:!0},dc:{...SY,nullable:!0},di:{type:"number",nullable:!0},dp:{...nQ,nullable:!0},fc:{...SY,nullable:!0},ff:{type:"number",nullable:!0},fn:{type:"number",nullable:!0},n:{type:"string",nullable:!0},s:{type:"string",nullable:!0},si:{type:"number",nullable:!0},t:{type:"number",nullable:!0}},required:["i"],additionalProperties:!1};var TEA=HQ(40,kb);var SEA=HQ(36,_b);var kEA=HQ(37,yb);var _EA=HQ(38,bb);var vEA=HQ(44,ub);var yEA=HQ(47,db);var hEA=HQ(46,lb);var gEA=HQ(192,nb);var xEA=HQ(193,ib);var fEA=HQ(45,rb);var bEA=HQ(43,ob);var mEA=HQ(32,tb);var uEA=HQ(41,eb);var dEA=HQ(42,Am);var cEA=HQ(39,Qm);var Kw=new Map,zXB={...$w,...Uw,...Ew};for(let A of Object.values(zXB))if("id"in A&&"schema"in A){let Q=A;if(Kw.has(Q.id))throw Error(`Packet with id ${Q.id} is already registered.`);Kw.set(Q.id,Q)}function RXB(A){if(typeof A!=="object"||A===null||typeof A[0]!=="number"||A[0]<0||A[1]===void 0||A[2]!==void 0&&(typeof A[2]!=="number"||A[2]<0))return!1;let Q=Kw.get(A[0]);return!!Q&&Q.validate(A[1])}var hQ=Bm;var rVA=qA(HKA(),1);import KZ from"fs";import nVA from"path";var U7B=qA(UVA(),1),E7B=qA(Em(),1),K7B=qA(Vm(),1),NE=qA(ww(),1),Mm=qA(NVA(),1);var LVA=NE.default;function h9(A){if(A===null)return"null";if(Array.isArray(A))return"array";return typeof A}function b7(A){return h9(A)==="object"}function V7B(A){return Array.isArray(A)&&A.length>0&&A.every((Q)=>("message"in Q))}function zm(A,Q){return A.length<124?A:Q}var qVA="graphql-transport-ws";var q8=((A)=>{return A[A.InternalServerError=4500]="InternalServerError",A[A.InternalClientError=4005]="InternalClientError",A[A.BadRequest=4400]="BadRequest",A[A.BadResponse=4004]="BadResponse",A[A.Unauthorized=4401]="Unauthorized",A[A.Forbidden=4403]="Forbidden",A[A.SubprotocolNotAcceptable=4406]="SubprotocolNotAcceptable",A[A.ConnectionInitialisationTimeout=4408]="ConnectionInitialisationTimeout",A[A.ConnectionAcknowledgementTimeout=4504]="ConnectionAcknowledgementTimeout",A[A.SubscriberAlreadyExists=4409]="SubscriberAlreadyExists",A[A.TooManyInitialisationRequests=4429]="TooManyInitialisationRequests",A})(q8||{}),M8=((A)=>{return A.ConnectionInit="connection_init",A.ConnectionAck="connection_ack",A.Ping="ping",A.Pong="pong",A.Subscribe="subscribe",A.Next="next",A.Error="error",A.Complete="complete",A})(M8||{});function MVA(A){if(!b7(A))throw Error(`Message is expected to be an object, but got ${h9(A)}`);if(!A.type)throw Error("Message is missing the 'type' property");if(typeof A.type!=="string")throw Error(`Message is expects the 'type' property to be a string, but got ${h9(A.type)}`);switch(A.type){case"connection_init":case"connection_ack":case"ping":case"pong":{if(A.payload!=null&&!b7(A.payload))throw Error(`"${A.type}" message expects the 'payload' property to be an object or nullish or missing, but got "${A.payload}"`);break}case"subscribe":{if(typeof A.id!=="string")throw Error(`"${A.type}" message expects the 'id' property to be a string, but got ${h9(A.id)}`);if(!A.id)throw Error(`"${A.type}" message requires a non-empty 'id' property`);if(!b7(A.payload))throw Error(`"${A.type}" message expects the 'payload' property to be an object, but got ${h9(A.payload)}`);if(typeof A.payload.query!=="string")throw Error(`"${A.type}" message payload expects the 'query' property to be a string, but got ${h9(A.payload.query)}`);if(A.payload.variables!=null&&!b7(A.payload.variables))throw Error(`"${A.type}" message payload expects the 'variables' property to be a an object or nullish or missing, but got ${h9(A.payload.variables)}`);if(A.payload.operationName!=null&&h9(A.payload.operationName)!=="string")throw Error(`"${A.type}" message payload expects the 'operationName' property to be a string or nullish or missing, but got ${h9(A.payload.operationName)}`);if(A.payload.extensions!=null&&!b7(A.payload.extensions))throw Error(`"${A.type}" message payload expects the 'extensions' property to be a an object or nullish or missing, but got ${h9(A.payload.extensions)}`);break}case"next":{if(typeof A.id!=="string")throw Error(`"${A.type}" message expects the 'id' property to be a string, but got ${h9(A.id)}`);if(!A.id)throw Error(`"${A.type}" message requires a non-empty 'id' property`);if(!b7(A.payload))throw Error(`"${A.type}" message expects the 'payload' property to be an object, but got ${h9(A.payload)}`);break}case"error":{if(typeof A.id!=="string")throw Error(`"${A.type}" message expects the 'id' property to be a string, but got ${h9(A.id)}`);if(!A.id)throw Error(`"${A.type}" message requires a non-empty 'id' property`);if(!V7B(A.payload))throw Error(`"${A.type}" message expects the 'payload' property to be an array of GraphQL errors, but got ${JSON.stringify(A.payload)}`);break}case"complete":{if(typeof A.id!=="string")throw Error(`"${A.type}" message expects the 'id' property to be a string, but got ${h9(A.id)}`);if(!A.id)throw Error(`"${A.type}" message requires a non-empty 'id' property`);break}default:throw Error(`Invalid message 'type' property "${A.type}"`)}return A}function zVA(A,Q){return MVA(typeof A==="string"?JSON.parse(A,Q):A)}function LE(A,Q){return MVA(A),JSON.stringify(A,Q)}function wm(A){let{url:Q,connectionParams:B,lazy:Y=!0,onNonLazyError:J=console.error,lazyCloseTimeout:C=0,keepAlive:X=0,disablePong:G,connectionAckWaitTimeout:F=0,retryAttempts:W=5,retryWait:Z=async function(v){let y=Math.pow(2,v);await new Promise((g)=>setTimeout(g,y*1000+Math.floor(Math.random()*2700+300)))},shouldRetry:U=Rm,on:$,webSocketImpl:E,generateID:K=function(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(v)=>{let y=Math.random()*16|0;return(v=="x"?y:y&3|8).toString(16)})},jsonMessageReplacer:I,jsonMessageReviver:V}=A,H;if(E){if(!H7B(E))throw Error("Invalid WebSocket implementation provided");H=E}else if(typeof WebSocket<"u")H=WebSocket;else if(typeof global<"u")H=global.WebSocket||global.MozWebSocket;else if(typeof window<"u")H=window.WebSocket||window.MozWebSocket;if(!H)throw Error("WebSocket implementation missing; on Node you can `import WebSocket from 'ws';` and pass `webSocketImpl: WebSocket` to `createClient`");let D=H,L=(()=>{let S=(()=>{let y={};return{on(g,h){return y[g]=h,()=>{delete y[g]}},emit(g){if("id"in g)y[g.id]?.(g)}}})(),v={connecting:$?.connecting?[$.connecting]:[],opened:$?.opened?[$.opened]:[],connected:$?.connected?[$.connected]:[],ping:$?.ping?[$.ping]:[],pong:$?.pong?[$.pong]:[],message:$?.message?[S.emit,$.message]:[S.emit],closed:$?.closed?[$.closed]:[],error:$?.error?[$.error]:[]};return{onMessage:S.on,on(y,g){let h=v[y];return h.push(g),()=>{h.splice(h.indexOf(g),1)}},emit(y,...g){for(let h of[...v[y]])h(...g)}}})();function z(S){let v=[L.on("error",(y)=>{v.forEach((g)=>g()),S(y)}),L.on("closed",(y)=>{v.forEach((g)=>g()),S(y)})]}let M,N=0,q,w=!1,P=0,_=!1;async function O(){clearTimeout(q);let[S,v]=await(M??(M=new Promise((h,m)=>(async()=>{if(w){if(await Z(P),!N)return M=void 0,m({code:1000,reason:"All Subscriptions Gone"});P++}L.emit("connecting",w);let i=new D(typeof Q==="function"?await Q():Q,qVA),p,l;function d(){if(isFinite(X)&&X>0)clearTimeout(l),l=setTimeout(()=>{if(i.readyState===D.OPEN)i.send(LE({type:M8.Ping})),L.emit("ping",!1,void 0)},X)}z((b)=>{if(M=void 0,clearTimeout(p),clearTimeout(l),m(b),b instanceof Ow)i.close(4499,"Terminated"),i.onerror=null,i.onclose=null}),i.onerror=(b)=>L.emit("error",b),i.onclose=(b)=>L.emit("closed",b),i.onopen=async()=>{try{L.emit("opened",i);let b=typeof B==="function"?await B():B;if(i.readyState!==D.OPEN)return;if(i.send(LE(b?{type:M8.ConnectionInit,payload:b}:{type:M8.ConnectionInit},I)),isFinite(F)&&F>0)p=setTimeout(()=>{i.close(q8.ConnectionAcknowledgementTimeout,"Connection acknowledgement timeout")},F);d()}catch(b){L.emit("error",b),i.close(q8.InternalClientError,zm(b instanceof Error?b.message:String(b),"Internal client error"))}};let x=!1;i.onmessage=({data:b})=>{try{let o=zVA(b,V);if(L.emit("message",o),o.type==="ping"||o.type==="pong"){if(L.emit(o.type,!0,o.payload),o.type==="pong")d();else if(!G)i.send(LE(o.payload?{type:M8.Pong,payload:o.payload}:{type:M8.Pong})),L.emit("pong",!1,o.payload);return}if(x)return;if(o.type!==M8.ConnectionAck)throw Error(`First message cannot be of type ${o.type}`);clearTimeout(p),x=!0,L.emit("connected",i,o.payload,w),w=!1,P=0,h([i,new Promise((GA,VA)=>z(VA))])}catch(o){i.onmessage=null,L.emit("error",o),i.close(q8.BadResponse,zm(o instanceof Error?o.message:String(o),"Bad response"))}}})())));if(S.readyState===D.CLOSING)await v;let y=()=>{},g=new Promise((h)=>y=h);return[S,y,Promise.race([g.then(()=>{if(!N){let h=()=>S.close(1000,"Normal Closure");if(isFinite(C)&&C>0)q=setTimeout(()=>{if(S.readyState===D.OPEN)h()},C);else h()}}),v])]}function k(S){if(Rm(S)&&(I7B(S.code)||[q8.InternalServerError,q8.InternalClientError,q8.BadRequest,q8.BadResponse,q8.Unauthorized,q8.SubprotocolNotAcceptable,q8.SubscriberAlreadyExists,q8.TooManyInitialisationRequests].includes(S.code)))throw S;if(_)return!1;if(Rm(S)&&S.code===1000)return N>0;if(!W||P>=W)throw S;if(!U(S))throw S;return w=!0}if(!Y)(async()=>{N++;for(;;)try{let[,,S]=await O();await S}catch(S){try{if(!k(S))return}catch(v){return J?.(v)}}})();function T(S,v){let y=K(S),g=!1,h=!1,m=()=>{N--,g=!0};return(async()=>{N++;for(;;)try{let[i,p,l]=await O();if(g)return p();let d=L.onMessage(y,(x)=>{switch(x.type){case M8.Next:{v.next(x.payload);return}case M8.Error:{h=!0,g=!0,v.error(x.payload),m();return}case M8.Complete:{g=!0,m();return}}});i.send(LE({id:y,type:M8.Subscribe,payload:S},I)),m=()=>{if(!g&&i.readyState===D.OPEN)i.send(LE({id:y,type:M8.Complete},I));N--,g=!0,p()},await l.finally(d);return}catch(i){if(!k(i))return}})().then(()=>{if(!h)v.complete()}).catch((i)=>{v.error(i)}),()=>{if(!g)m()}}return{on:L.on,subscribe:T,iterate(S){let v=[],y={done:!1,error:null,resolve:()=>{}},g=T(S,{next(m){v.push(m),y.resolve()},error(m){y.done=!0,y.error=m,y.resolve()},complete(){y.done=!0,y.resolve()}}),h=async function*(){for(;;){if(!v.length)await new Promise((i)=>y.resolve=i);while(v.length)yield v.shift();if(y.error)throw y.error;if(y.done)return}}();return h.throw=async(m)=>{if(!y.done)y.done=!0,y.error=m,y.resolve();return{done:!0,value:void 0}},h.return=async()=>{return g(),{done:!0,value:void 0}},h},async dispose(){if(_=!0,M){let[S]=await M;S.close(1000,"Normal Closure")}},terminate(){if(M)L.emit("closed",new Ow)}}}class Ow extends Error{name="TerminatedCloseEvent";message="4499: Terminated";code=4499;reason="Terminated";wasClean=!1}function Rm(A){return b7(A)&&"code"in A&&"reason"in A}function I7B(A){if([1000,1001,1006,1005,1012,1013,1014].includes(A))return!1;return A>=1000&&A<=1999}function H7B(A){return typeof A==="function"&&"constructor"in A&&"CLOSED"in A&&"CLOSING"in A&&"CONNECTING"in A&&"OPEN"in A}var sVA=qA(iVA(),1);var yD="./dev/persistence",Tw=process.env.HYTOPIA_NOTIFICATION_SERVICE_URL||"https://prod.notifications.hytopia.com";class N5{static instance=new N5;creatorApiKey=process.env.HYTOPIA_API_KEY;gameId=process.env.HYTOPIA_GAME_ID;lobbyId=process.env.HYTOPIA_LOBBY_ID;_creativeGateway;_gqlWs;constructor(){this._gqlWs=wm({url:"wss://prod.gql.hytopia.com/graphql",webSocketImpl:LVA});try{this._creativeGateway=new sVA.CreativeGateway}catch{console.warn(["━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━","\uD83D\uDEA8 HYTOPIA PLATFORM GATEWAY IS NOT INITIALIZED \uD83D\uDEA8","","\uD83D\uDD27 Local development is still possible, but these features will be disabled:"," • \uD83D\uDC64 Live Player Accounts"," • \uD83C\uDFAD Live Player Cosmetics"," • \uD83D\uDD14 Scheduled Notifications"," • \uD83D\uDC1B Crash Analytics & Debug Logs","","\uD83D\uDCA1 These features will be enabled but modified:"," • \uD83D\uDCBE Player & Global Persisted Data - Data will be persisted"," locally in the ./dev/persistence directory of your project."," Player ids for data persistence will begin at 1 for the first "," player to join your local server, and increments for each"," additional player. This means that if you restart your"," server, the first player id will be 1 again. This is to ensure"," that data persistence across server restarts can be easily"," tested and debugged in local development.","","To enable the HYTOPIA Platform Gateway locally:"," 1. Set these environment variables:"," HYTOPIA_API_KEY, HYTOPIA_GAME_ID, HYTOPIA_LOBBY_ID"," 2. You can find these values at: https://create.hytopia.com","","Note: In production, these environment variables will be auto-populated ","& the HYTOPIA Platform Gateway will automatically be initialized \uD83D\uDE80","━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━",""].join(` -`))}}get isGatewayAvailable(){return!!this._creativeGateway}async getGlobalData(A){if(!this._creativeGateway&&process.env.NODE_ENV==="production")return n.warning("PlatformGateway.getGlobalData(): You are running in production mode, but the Platform Gateway is not initialized! No data will be returned."),{error:{code:"gatewayError",message:"Platform Gateway is not initialized."}};return this._creativeGateway?await this._creativeGateway.kv.get(A):this._readDevGlobalDataLocally(A)}async getPlayerCosmetics(A){let Q=this._gqlWs.iterate({query:`{ +`,"")]}),J.push(C),{lines:J,longestLine:X}}function Sf(A,Q,B){let{lines:Y}=Tf(A,Q,B);return Y.length*A.common.lineHeight}var dYB=s.object({x:s.number(),y:s.number(),text:s.union([s.union([s.string(),s.number()]),s.object({text:s.union([s.string(),s.number()]),alignmentX:s.nativeEnum(M5).optional(),alignmentY:s.nativeEnum(z5).optional()})]),maxWidth:s.number().optional(),maxHeight:s.number().optional(),cb:s.function(s.tuple([s.object({x:s.number(),y:s.number()})])).optional()});function cYB(A,Q,B,Y){if(Y===M5.LEFT)return 0;if(Y===M5.CENTER)return(B-aU(A,Q))/2;return B-aU(A,Q)}function lYB(A,Q,B,Y,J){if(J.width>0&&J.height>0){let C=Q.pages[J.page];if(C)A=lU.blit(A,{src:C,x:B+J.xoffset,y:Y+J.yoffset,srcX:J.x,srcY:J.y,srcW:J.width,srcH:J.height})}return A}function pYB(A,Q,B,Y,J,C){for(let X=0;X{}}=dYB.parse(B),F,Z;if(typeof C==="object"&&C.text!==null&&C.text!==void 0)F=C.alignmentX||M5.LEFT,Z=C.alignmentY||z5.TOP,{text:C}=C;else F=M5.LEFT,Z=z5.TOP,C=C.toString();if(typeof C==="number")C=C.toString();if(G!==1/0&&Z===z5.BOTTOM)J+=G-Sf(Q,C,X);else if(G!==1/0&&Z===z5.MIDDLE)J+=G/2-Sf(Q,C,X)/2;let U=Object.entries(Q.chars).find((K)=>K[1].xadvance)?.[1].xadvance;if(typeof U!=="number")throw Error("Could not find default character width");let{lines:$,longestLine:E}=Tf(Q,C,X);return $.forEach((K)=>{let I=K.join(" "),V=cYB(Q,I,X,F);pYB(A,Q,Y+V,J,I,U),J+=Q.common.lineHeight}),W.bind(A)({x:Y+E,y:J}),A}};var nYB=s.union([s.number(),s.object({deg:s.number(),mode:s.union([s.boolean(),s.nativeEnum(N8)]).optional()})]);function mFA(A){return function(Q,B){return B*A+Q<<2}}function sYB(A,Q){if(Math.abs(Q)%90!==0)throw Error("Unsupported matrix rotation degree");let B=A.bitmap.width,Y=A.bitmap.height,J;switch(Q){case 90:case-270:J=90;break;case 180:case-180:J=180;break;case 270:case-90:J=-90;break;default:throw Error("Unsupported matrix rotation degree")}let C=J===180?B:Y,X=J===180?Y:B,G=Buffer.alloc(A.bitmap.data.length),W=mFA(B),F=mFA(C);for(let Z=0;Z{A.bitmap.data.writeUInt32BE(A.background,H)});let K=Math.max(X,G,A.bitmap.width,A.bitmap.height);A=mC.resize(A,{h:K,w:K,mode:B===!0?void 0:B}),A=iU(A,E,A.bitmap.width/2-E.bitmap.width/2,A.bitmap.height/2-E.bitmap.height/2)}let W=A.bitmap.width,F=A.bitmap.height,Z=Buffer.alloc(A.bitmap.data.length),U=uFA(-(W/2),-(F/2)),$=uFA(W/2+0.5,F/2+0.5);for(let E=1;E<=F;E++)for(let K=1;K<=W;K++){let I=U(K,E),V=$(J*I.x-C*I.y,J*I.y+C*I.x),H=W*(E-1)+K-1<<2;if(V.x>=0&&V.x=0&&V.y{let W=A.bitmap.data[G](Q in A)?nFA(A,Q,{enumerable:!0,configurable:!0,writable:!0,value:B}):A[Q]=B,f6=(A,Q)=>{for(var B in Q)nFA(A,B,{get:Q[B],enumerable:!0})},ZA=(A,Q,B)=>{return eYB(A,typeof Q!=="symbol"?Q+"":Q,B),B},AJB={};f6(AJB,{bt709:()=>sFA});var sFA={};f6(sFA,{Y:()=>rFA,x:()=>aFA,y:()=>oFA});var rFA=((A)=>{return A[A.RED=0.2126]="RED",A[A.GREEN=0.7152]="GREEN",A[A.BLUE=0.0722]="BLUE",A[A.WHITE=1]="WHITE",A})(rFA||{}),aFA=((A)=>{return A[A.RED=0.64]="RED",A[A.GREEN=0.3]="GREEN",A[A.BLUE=0.15]="BLUE",A[A.WHITE=0.3127]="WHITE",A})(aFA||{}),oFA=((A)=>{return A[A.RED=0.33]="RED",A[A.GREEN=0.6]="GREEN",A[A.BLUE=0.06]="BLUE",A[A.WHITE=0.329]="WHITE",A})(oFA||{}),QJB={};f6(QJB,{lab2rgb:()=>FJB,lab2xyz:()=>YZA,rgb2hsl:()=>iR,rgb2lab:()=>BD,rgb2xyz:()=>tFA,xyz2lab:()=>BZA,xyz2rgb:()=>JZA});function kf(A){return A>0.04045?((A+0.055)/1.055)**2.4:A/12.92}function tFA(A,Q,B){return A=kf(A/255),Q=kf(Q/255),B=kf(B/255),{x:A*0.4124+Q*0.3576+B*0.1805,y:A*0.2126+Q*0.7152+B*0.0722,z:A*0.0193+Q*0.1192+B*0.9505}}var eFA={};f6(eFA,{degrees2radians:()=>v7,inRange0to255:()=>q8,inRange0to255Rounded:()=>R5,intInRange:()=>BJB,max3:()=>AZA,min3:()=>QZA,stableSort:()=>hf});function v7(A){return A*(Math.PI/180)}function AZA(A,Q,B){let Y=A;if(YQ)Y=Q;if(Y>B)Y=B;return Y}function BJB(A,Q,B){if(A>B)A=B;if(A255)A=255;else if(A<0)A=0;return A}function q8(A){if(A>255)A=255;else if(A<0)A=0;return A}function hf(A,Q){let B=typeof A[0],Y;if(B==="number"||B==="string"){let J=Object.create(null);for(let C=0,X=A.length;CQ(C,X)||J[C]-J[X])}else{let J=A.slice(0);Y=A.sort((C,X)=>Q(C,X)||J.indexOf(C)-J.indexOf(X))}return Y}function iR(A,Q,B){let Y=QZA(A,Q,B),J=AZA(A,Q,B),C=J-Y,X=(Y+J)/510,G=0;if(X>0&&X<1)G=C/(X<0.5?J+Y:510-J-Y);let W=0;if(C>0){if(J===A)W=(Q-B)/C;else if(J===Q)W=2+(B-A)/C;else W=4+(A-Q)/C;if(W*=60,W<0)W+=360}return{h:W,s:G,l:X}}var YJB=0.95047,JJB=1,CJB=1.08883;function _f(A){return A>0.008856?A**0.3333333333333333:7.787*A+0.13793103448275862}function BZA(A,Q,B){if(A=_f(A/YJB),Q=_f(Q/JJB),B=_f(B/CJB),116*Q-16<0)throw Error("xxx");return{L:Math.max(0,116*Q-16),a:500*(A-Q),b:200*(Q-B)}}function BD(A,Q,B){let Y=tFA(A,Q,B);return BZA(Y.x,Y.y,Y.z)}var XJB=0.95047,GJB=1,WJB=1.08883;function vf(A){return A>0.206893034?A**3:(A-0.13793103448275862)/7.787}function YZA(A,Q,B){let Y=(A+16)/116,J=Q/500+Y,C=Y-B/200;return{x:XJB*vf(J),y:GJB*vf(Y),z:WJB*vf(C)}}function yf(A){return A>0.0031308?1.055*A**0.4166666666666667-0.055:12.92*A}function JZA(A,Q,B){let Y=yf(A*3.2406+Q*-1.5372+B*-0.4986),J=yf(A*-0.9689+Q*1.8758+B*0.0415),C=yf(A*0.0557+Q*-0.204+B*1.057);return{r:R5(Y*255),g:R5(J*255),b:R5(C*255)}}function FJB(A,Q,B){let Y=YZA(A,Q,B);return JZA(Y.x,Y.y,Y.z)}var ZJB={};f6(ZJB,{AbstractDistanceCalculator:()=>WZ,AbstractEuclidean:()=>nR,AbstractManhattan:()=>sR,CIE94GraphicArts:()=>GZA,CIE94Textiles:()=>XZA,CIEDE2000:()=>uC,CMetric:()=>WZA,Euclidean:()=>FZA,EuclideanBT709:()=>ZZA,EuclideanBT709NoAlpha:()=>$ZA,Manhattan:()=>UZA,ManhattanBT709:()=>KZA,ManhattanNommyde:()=>EZA,PNGQuant:()=>VZA});var WZ=class{constructor(){ZA(this,"_maxDistance"),ZA(this,"_whitePoint"),this._setDefaults(),this.setWhitePoint(255,255,255,255)}setWhitePoint(A,Q,B,Y){this._whitePoint={r:A>0?255/A:0,g:Q>0?255/Q:0,b:B>0?255/B:0,a:Y>0?255/Y:0},this._maxDistance=this.calculateRaw(A,Q,B,Y,0,0,0,0)}calculateNormalized(A,Q){return this.calculateRaw(A.r,A.g,A.b,A.a,Q.r,Q.g,Q.b,Q.a)/this._maxDistance}},CZA=class extends WZ{calculateRaw(A,Q,B,Y,J,C,X,G){let W=BD(q8(A*this._whitePoint.r),q8(Q*this._whitePoint.g),q8(B*this._whitePoint.b)),F=BD(q8(J*this._whitePoint.r),q8(C*this._whitePoint.g),q8(X*this._whitePoint.b)),Z=W.L-F.L,U=W.a-F.a,$=W.b-F.b,E=Math.sqrt(W.a*W.a+W.b*W.b),K=Math.sqrt(F.a*F.a+F.b*F.b),I=E-K,V=U*U+$*$-I*I;V=V<0?0:Math.sqrt(V);let H=(G-Y)*this._whitePoint.a*this._kA;return Math.sqrt((Z/this._Kl)**2+(I/(1+this._K1*E))**2+(V/(1+this._K2*E))**2+H**2)}},XZA=class extends CZA{_setDefaults(){this._Kl=2,this._K1=0.048,this._K2=0.014,this._kA=0.049019607843137254}},GZA=class extends CZA{_setDefaults(){this._Kl=1,this._K1=0.045,this._K2=0.015,this._kA=0.09803921568627451}},j0=class extends WZ{_setDefaults(){}static _calculatehp(A,Q){let B=Math.atan2(A,Q);if(B>=0)return B;return B+j0._deg360InRad}static _calculateRT(A,Q){let B=Q**7,Y=2*Math.sqrt(B/(B+j0._pow25to7)),J=j0._deg30InRad*Math.exp(-(((A-j0._deg275InRad)/j0._deg25InRad)**2));return-Math.sin(2*J)*Y}static _calculateT(A){return 1-0.17*Math.cos(A-j0._deg30InRad)+0.24*Math.cos(A*2)+0.32*Math.cos(A*3+j0._deg6InRad)-0.2*Math.cos(A*4-j0._deg63InRad)}static _calculate_ahp(A,Q,B,Y){let J=B+Y;if(A===0)return J;if(Q<=j0._deg180InRad)return J/2;if(J>8)+4*Z*Z+((767-W)*U*U>>8),E=(G-Y)*this._whitePoint.a;return Math.sqrt($+E*E)}_setDefaults(){}},nR=class extends WZ{calculateRaw(A,Q,B,Y,J,C,X,G){let W=J-A,F=C-Q,Z=X-B,U=G-Y;return Math.sqrt(this._kR*W*W+this._kG*F*F+this._kB*Z*Z+this._kA*U*U)}},FZA=class extends nR{_setDefaults(){this._kR=1,this._kG=1,this._kB=1,this._kA=1}},ZZA=class extends nR{_setDefaults(){this._kR=0.2126,this._kG=0.7152,this._kB=0.0722,this._kA=1}},$ZA=class extends nR{_setDefaults(){this._kR=0.2126,this._kG=0.7152,this._kB=0.0722,this._kA=0}},sR=class extends WZ{calculateRaw(A,Q,B,Y,J,C,X,G){let W=J-A,F=C-Q,Z=X-B,U=G-Y;if(W<0)W=0-W;if(F<0)F=0-F;if(Z<0)Z=0-Z;if(U<0)U=0-U;return this._kR*W+this._kG*F+this._kB*Z+this._kA*U}},UZA=class extends sR{_setDefaults(){this._kR=1,this._kG=1,this._kB=1,this._kA=1}},EZA=class extends sR{_setDefaults(){this._kR=0.4984,this._kG=0.8625,this._kB=0.2979,this._kA=1}},KZA=class extends sR{_setDefaults(){this._kR=0.2126,this._kG=0.7152,this._kB=0.0722,this._kA=1}},VZA=class extends WZ{calculateRaw(A,Q,B,Y,J,C,X,G){let W=(G-Y)*this._whitePoint.a;return this._colordifferenceCh(A*this._whitePoint.r,J*this._whitePoint.r,W)+this._colordifferenceCh(Q*this._whitePoint.g,C*this._whitePoint.g,W)+this._colordifferenceCh(B*this._whitePoint.b,X*this._whitePoint.b,W)}_colordifferenceCh(A,Q,B){let Y=A-Q,J=Y+B;return Y*Y+J*J}_setDefaults(){}},$JB={};f6($JB,{AbstractPaletteQuantizer:()=>YD,ColorHistogram:()=>CD,NeuQuant:()=>g0,NeuQuantFloat:()=>h0,RGBQuant:()=>DZA,WuColorCube:()=>NZA,WuQuant:()=>BE});var YD=class{quantizeSync(){for(let A of this.quantize())if(A.palette)return A.palette;throw Error("unreachable")}},M8=class{constructor(){ZA(this,"r"),ZA(this,"g"),ZA(this,"b"),ZA(this,"a"),ZA(this,"uint32"),ZA(this,"rgba"),this.uint32=4294967295,this.r=this.g=this.b=this.a=0,this.rgba=[,,,,],this.rgba[0]=0,this.rgba[1]=0,this.rgba[2]=0,this.rgba[3]=0}static createByQuadruplet(A){let Q=new M8;return Q.r=A[0]|0,Q.g=A[1]|0,Q.b=A[2]|0,Q.a=A[3]|0,Q._loadUINT32(),Q._loadQuadruplet(),Q}static createByRGBA(A,Q,B,Y){let J=new M8;return J.r=A|0,J.g=Q|0,J.b=B|0,J.a=Y|0,J._loadUINT32(),J._loadQuadruplet(),J}static createByUint32(A){let Q=new M8;return Q.uint32=A>>>0,Q._loadRGBA(),Q._loadQuadruplet(),Q}from(A){this.r=A.r,this.g=A.g,this.b=A.b,this.a=A.a,this.uint32=A.uint32,this.rgba[0]=A.r,this.rgba[1]=A.g,this.rgba[2]=A.b,this.rgba[3]=A.a}getLuminosity(A){let Q=this.r,B=this.g,Y=this.b;if(A)Q=Math.min(255,255-this.a+this.a*Q/255),B=Math.min(255,255-this.a+this.a*B/255),Y=Math.min(255,255-this.a+this.a*Y/255);return Q*0.2126+B*0.7152+Y*0.0722}_loadUINT32(){this.uint32=(this.a<<24|this.b<<16|this.g<<8|this.r)>>>0}_loadRGBA(){this.r=this.uint32&255,this.g=this.uint32>>>8&255,this.b=this.uint32>>>16&255,this.a=this.uint32>>>24&255}_loadQuadruplet(){this.rgba[0]=this.r,this.rgba[1]=this.g,this.rgba[2]=this.b,this.rgba[3]=this.a}},x6=class{constructor(){ZA(this,"_pointArray"),ZA(this,"_width"),ZA(this,"_height"),this._width=0,this._height=0,this._pointArray=[]}getWidth(){return this._width}getHeight(){return this._height}setWidth(A){this._width=A}setHeight(A){this._height=A}getPointArray(){return this._pointArray}clone(){let A=new x6;A._width=this._width,A._height=this._height;for(let Q=0,B=this._pointArray.length;Q=X&&A=0;Q--)if(A.uint32===this._pointArray[Q].uint32)return!0;return!1}getNearestColor(A,Q){return this._pointArray[this._getNearestIndex(A,Q)|0]}getPointContainer(){return this._pointContainer}_nearestPointFromCache(A){return typeof this._i32idx[A]==="number"?this._i32idx[A]:-1}_getNearestIndex(A,Q){let B=this._nearestPointFromCache(""+Q.uint32);if(B>=0)return B;let Y=Number.MAX_VALUE;B=0;for(let J=0,C=this._pointArray.length;J{let B=iR(A.r,A.g,A.b),Y=iR(Q.r,Q.g,Q.b),J=A.r===A.g&&A.g===A.b?0:1+gf(B.h,lFA),X=(Q.r===Q.g&&Q.g===Q.b?0:1+gf(Y.h,lFA))-J;if(X)return-X;let G=A.getLuminosity(!0),W=Q.getLuminosity(!0);if(W-G!==0)return W-G;let F=(Y.s*100|0)-(B.s*100|0);if(F)return-F;return 0})}},xf={};f6(xf,{HueStatistics:()=>IZA,Palette:()=>JD,Point:()=>M8,PointContainer:()=>x6,ProgressTracker:()=>b6,arithmetic:()=>eFA});var UJB=class{constructor(){ZA(this,"num",0),ZA(this,"cols",[])}},IZA=class{constructor(A,Q){ZA(this,"_numGroups"),ZA(this,"_minCols"),ZA(this,"_stats"),ZA(this,"_groupsFull"),this._numGroups=A,this._minCols=Q,this._stats=[];for(let B=0;B<=A;B++)this._stats[B]=new UJB;this._groupsFull=0}check(A){if(this._groupsFull===this._numGroups+1)this.check=()=>{};let Q=A&255,B=A>>>8&255,Y=A>>>16&255,J=Q===B&&B===Y?0:1+gf(iR(Q,B,Y).h,this._numGroups),C=this._stats[J],X=this._minCols;if(C.num++,C.num>X)return;if(C.num===X)this._groupsFull++;if(C.num<=X)this._stats[J].cols.push(A)}injectIntoDictionary(A){for(let Q=0;Q<=this._numGroups;Q++)if(this._stats[Q].num<=this._minCols)this._stats[Q].cols.forEach((B)=>{if(!A[B])A[B]=1;else A[B]++})}injectIntoArray(A){for(let Q=0;Q<=this._numGroups;Q++)if(this._stats[Q].num<=this._minCols)this._stats[Q].cols.forEach((B)=>{if(A.indexOf(B)===-1)A.push(B)})}},HZA=class{constructor(A,Q){ZA(this,"progress"),ZA(this,"_step"),ZA(this,"_range"),ZA(this,"_last"),ZA(this,"_progressRange"),this._range=A,this._progressRange=Q,this._step=Math.max(1,this._range/(HZA.steps+1)|0),this._last=-this._step,this.progress=0}shouldNotify(A){if(A-this._last>=this._step)return this._last=A,this.progress=Math.min(this._progressRange*this._last/this._range,this._progressRange),!0;return!1}},b6=HZA;ZA(b6,"steps",100);var C9=3,EJB=class{constructor(A){ZA(this,"r"),ZA(this,"g"),ZA(this,"b"),ZA(this,"a"),this.r=this.g=this.b=this.a=A}toPoint(){return M8.createByRGBA(this.r>>C9,this.g>>C9,this.b>>C9,this.a>>C9)}subtract(A,Q,B,Y){this.r-=A|0,this.g-=Q|0,this.b-=B|0,this.a-=Y|0}},CB=class extends YD{constructor(A,Q=256){super();ZA(this,"_pointArray"),ZA(this,"_networkSize"),ZA(this,"_network"),ZA(this,"_sampleFactor"),ZA(this,"_radPower"),ZA(this,"_freq"),ZA(this,"_bias"),ZA(this,"_distance"),this._distance=A,this._pointArray=[],this._sampleFactor=1,this._networkSize=Q,this._distance.setWhitePoint(255<>3)*CB._radiusBias,G=X>>CB._radiusBiasShift;if(G<=1)G=0;for(let Z=0;Z>>0;let W;if(Q=Q)U-=Q;if(Z++,J===0)J=1;if(Z%J===0){if(C-=C/B|0,X-=X/CB._radiusDecrease|0,G=X>>CB._radiusBiasShift,G<=1)G=0;for(let D=0;D>>0}}}_buildPalette(){let A=new JD;return this._network.forEach((Q)=>{A.add(Q.toPoint())}),A.sort(),A}_alterNeighbour(A,Q,B,Y,J,C){let X=Q-A;if(X<-1)X=-1;let G=Q+A;if(G>this._networkSize)G=this._networkSize;let W=Q+1,F=Q-1,Z=1;while(WX){let U=this._radPower[Z++]/CB._alphaRadBias;if(WX){let $=this._network[F--];$.subtract(U*($.r-J),U*($.g-Y),U*($.b-B),U*($.a-C))}}}_alterSingle(A,Q,B,Y,J,C){A/=CB._initAlpha;let X=this._network[Q];X.subtract(A*(X.r-J),A*(X.g-Y),A*(X.b-B),A*(X.a-C))}_contest(A,Q,B,Y){let J=1020<>CB._initialBiasShift-C9);if($>CB._betaShift;this._freq[F]-=E,this._bias[F]+=E<>CB._betaShift);ZA(g0,"_betaGamma",CB._initialBias<>X9,this.g>>X9,this.b>>X9,this.a>>X9)}subtract(A,Q,B,Y){this.r-=A,this.g-=Q,this.b-=B,this.a-=Y}},XB=class extends YD{constructor(A,Q=256){super();ZA(this,"_pointArray"),ZA(this,"_networkSize"),ZA(this,"_network"),ZA(this,"_sampleFactor"),ZA(this,"_radPower"),ZA(this,"_freq"),ZA(this,"_bias"),ZA(this,"_distance"),this._distance=A,this._pointArray=[],this._sampleFactor=1,this._networkSize=Q,this._distance.setWhitePoint(255<>3)*XB._radiusBias,G=X>>XB._radiusBiasShift;if(G<=1)G=0;for(let Z=0;Z=Q)U-=Q;if(Z++,J===0)J=1;if(Z%J===0){if(C-=C/B,X-=X/XB._radiusDecrease,G=X>>XB._radiusBiasShift,G<=1)G=0;for(let D=0;D{A.add(Q.toPoint())}),A.sort(),A}_alterNeighbour(A,Q,B,Y,J,C){let X=Q-A;if(X<-1)X=-1;let G=Q+A;if(G>this._networkSize)G=this._networkSize;let W=Q+1,F=Q-1,Z=1;while(WX){let U=this._radPower[Z++]/XB._alphaRadBias;if(WX){let $=this._network[F--];$.subtract(U*($.r-J),U*($.g-Y),U*($.b-B),U*($.a-C))}}}_alterSingle(A,Q,B,Y,J,C){A/=XB._initAlpha;let X=this._network[Q];X.subtract(A*(X.r-J),A*(X.g-Y),A*(X.b-B),A*(X.a-C))}_contest(A,Q,B,Y){let J=1020<>XB._initialBiasShift-X9);if($>XB._betaShift;this._freq[F]-=E,this._bias[F]+=E<>XB._betaShift);ZA(h0,"_betaGamma",XB._initialBias<this._histogram[Y]-this._histogram[B]);if(A.length===0)return[];let Q;switch(this._method){case 1:let B=Math.min(A.length,this._initColors),Y=A[B-1],J=this._histogram[Y];Q=A.slice(0,B);let C=B,X=A.length;while(C+B)}_colorStats1D(A){let Q=this._histogram,B=A.getPointArray(),Y=B.length;for(let J=0;J{let Z=Math.round(F.w*F.h/X)*QD._boxPixels;if(Z<2)Z=2;let U={};this._iterateBox(F,Q,($)=>{let E=Y[$].uint32;if(this._hueStats.check(E),E in W)W[E]++;else if(E in U){if(++U[E]>=Z)W[E]=U[E]}else U[E]=1})}),this._hueStats.injectIntoDictionary(W)}_iterateBox(A,Q,B){let Y=A,J=Y.y*Q+Y.x,C=(Y.y+Y.h-1)*Q+(Y.x+Y.w-1),X=Q-Y.w+1,G=0,W=J;do B.call(this,W),W+=++G%Y.w===0?X:1;while(W<=C)}_makeBoxes(A,Q,B,Y){let J=A%B,C=Q%Y,X=A-J,G=Q-C,W=[];for(let F=0;Fthis._colors){C.length=0;for(let Z=0;Zthis._colors*3?this._initialDistance:this._distanceIncrement}if(X$.distance-U.distance);let Z=0;while(X=0;Z--)if(Y[Z]===0){if(Z!==F-1)B[Z]=B[F-1];--F}B.length=F,Q.sort(),yield{palette:Q,progress:100}}};function oU(A){let Q=[];for(let B=0;B0){let B=this._sums[Q],Y=this._reds[Q]/B,J=this._greens[Q]/B,C=this._blues[Q]/B,X=this._alphas[Q]/B,G=M8.createByRGBA(Y|0,J|0,C|0,X|0);A.add(G)}A.sort(),yield{palette:A,progress:100}}*_preparePalette(){yield*this._calculateMoments();let A=0,Q=oU(this._colors);for(let X=1;X1?this._calculateVariance(this._cubes[A]):0,Q[X]=this._cubes[X].volume>1?this._calculateVariance(this._cubes[X]):0;else Q[A]=0,X--;A=0;let G=Q[0];for(let W=1;W<=X;++W)if(Q[W]>G)G=Q[W],A=W;if(G<=0){this._colors=X+1;break}}let B=[],Y=[],J=[],C=[];for(let X=0;X0)B[X]=PQ._volume(this._cubes[X],this._momentsRed)/G|0,Y[X]=PQ._volume(this._cubes[X],this._momentsGreen)/G|0,J[X]=PQ._volume(this._cubes[X],this._momentsBlue)/G|0,C[X]=PQ._volume(this._cubes[X],this._momentsAlpha)/G|0;else B[X]=0,Y[X]=0,J[X]=0,C[X]=0}this._reds=oU(this._colors+1),this._greens=oU(this._colors+1),this._blues=oU(this._colors+1),this._alphas=oU(this._colors+1),this._sums=oU(this._colors+1);for(let X=0,G=this._pixels.length;X>Q)+1,Y=(A.g>>Q)+1,J=(A.b>>Q)+1,C=(A.a>>Q)+1;this._weights[C][B][Y][J]++,this._momentsRed[C][B][Y][J]+=A.r,this._momentsGreen[C][B][Y][J]+=A.g,this._momentsBlue[C][B][Y][J]+=A.b,this._momentsAlpha[C][B][Y][J]+=A.a,this._moments[C][B][Y][J]+=this._table[A.r]+this._table[A.g]+this._table[A.b]+this._table[A.a]}*_calculateMoments(){let A=[],Q=[],B=[],Y=[],J=[],C=[],X=eU(this._sideSize,this._sideSize,this._sideSize),G=eU(this._sideSize,this._sideSize,this._sideSize),W=eU(this._sideSize,this._sideSize,this._sideSize),F=eU(this._sideSize,this._sideSize,this._sideSize),Z=eU(this._sideSize,this._sideSize,this._sideSize),U=eU(this._sideSize,this._sideSize,this._sideSize),$=0,E=new b6(this._alphaMaxSideIndex*this._maxSideIndex,99);for(let K=1;K<=this._alphaMaxSideIndex;++K){AE(X,this._sideSize,this._sideSize,this._sideSize,0),AE(G,this._sideSize,this._sideSize,this._sideSize,0),AE(W,this._sideSize,this._sideSize,this._sideSize,0),AE(F,this._sideSize,this._sideSize,this._sideSize,0),AE(Z,this._sideSize,this._sideSize,this._sideSize,0),AE(U,this._sideSize,this._sideSize,this._sideSize,0);for(let I=1;I<=this._maxSideIndex;++I,++$){if(E.shouldNotify($))yield{progress:E.progress};QE(A,this._sideSize,0),QE(Q,this._sideSize,0),QE(B,this._sideSize,0),QE(Y,this._sideSize,0),QE(J,this._sideSize,0),QE(C,this._sideSize,0);for(let V=1;V<=this._maxSideIndex;++V){let H=0,D=0,L=0,z=0,M=0,N=0;for(let q=1;q<=this._maxSideIndex;++q)H+=this._weights[K][I][V][q],D+=this._momentsRed[K][I][V][q],L+=this._momentsGreen[K][I][V][q],z+=this._momentsBlue[K][I][V][q],M+=this._momentsAlpha[K][I][V][q],N+=this._moments[K][I][V][q],A[q]+=H,Q[q]+=D,B[q]+=L,Y[q]+=z,J[q]+=M,C[q]+=N,X[I][V][q]=X[I-1][V][q]+A[q],G[I][V][q]=G[I-1][V][q]+Q[q],W[I][V][q]=W[I-1][V][q]+B[q],F[I][V][q]=F[I-1][V][q]+Y[q],Z[I][V][q]=Z[I-1][V][q]+J[q],U[I][V][q]=U[I-1][V][q]+C[q],this._weights[K][I][V][q]=this._weights[K-1][I][V][q]+X[I][V][q],this._momentsRed[K][I][V][q]=this._momentsRed[K-1][I][V][q]+G[I][V][q],this._momentsGreen[K][I][V][q]=this._momentsGreen[K-1][I][V][q]+W[I][V][q],this._momentsBlue[K][I][V][q]=this._momentsBlue[K-1][I][V][q]+F[I][V][q],this._momentsAlpha[K][I][V][q]=this._momentsAlpha[K-1][I][V][q]+Z[I][V][q],this._moments[K][I][V][q]=this._moments[K-1][I][V][q]+U[I][V][q]}}}}static _volumeFloat(A,Q){return Q[A.alphaMaximum][A.redMaximum][A.greenMaximum][A.blueMaximum]-Q[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMaximum]-Q[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMaximum]+Q[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMaximum]-Q[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMaximum]+Q[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMaximum]+Q[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMaximum]-Q[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(Q[A.alphaMaximum][A.redMaximum][A.greenMaximum][A.blueMinimum]-Q[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMinimum]-Q[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMinimum]+Q[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]-Q[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMinimum]+Q[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]+Q[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]-Q[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum])}static _volume(A,Q){return PQ._volumeFloat(A,Q)|0}static _top(A,Q,B,Y){let J;switch(Q){case PQ._alpha:J=Y[B][A.redMaximum][A.greenMaximum][A.blueMaximum]-Y[B][A.redMaximum][A.greenMinimum][A.blueMaximum]-Y[B][A.redMinimum][A.greenMaximum][A.blueMaximum]+Y[B][A.redMinimum][A.greenMinimum][A.blueMaximum]-(Y[B][A.redMaximum][A.greenMaximum][A.blueMinimum]-Y[B][A.redMaximum][A.greenMinimum][A.blueMinimum]-Y[B][A.redMinimum][A.greenMaximum][A.blueMinimum]+Y[B][A.redMinimum][A.greenMinimum][A.blueMinimum]);break;case PQ._red:J=Y[A.alphaMaximum][B][A.greenMaximum][A.blueMaximum]-Y[A.alphaMaximum][B][A.greenMinimum][A.blueMaximum]-Y[A.alphaMinimum][B][A.greenMaximum][A.blueMaximum]+Y[A.alphaMinimum][B][A.greenMinimum][A.blueMaximum]-(Y[A.alphaMaximum][B][A.greenMaximum][A.blueMinimum]-Y[A.alphaMaximum][B][A.greenMinimum][A.blueMinimum]-Y[A.alphaMinimum][B][A.greenMaximum][A.blueMinimum]+Y[A.alphaMinimum][B][A.greenMinimum][A.blueMinimum]);break;case PQ._green:J=Y[A.alphaMaximum][A.redMaximum][B][A.blueMaximum]-Y[A.alphaMaximum][A.redMinimum][B][A.blueMaximum]-Y[A.alphaMinimum][A.redMaximum][B][A.blueMaximum]+Y[A.alphaMinimum][A.redMinimum][B][A.blueMaximum]-(Y[A.alphaMaximum][A.redMaximum][B][A.blueMinimum]-Y[A.alphaMaximum][A.redMinimum][B][A.blueMinimum]-Y[A.alphaMinimum][A.redMaximum][B][A.blueMinimum]+Y[A.alphaMinimum][A.redMinimum][B][A.blueMinimum]);break;case PQ._blue:J=Y[A.alphaMaximum][A.redMaximum][A.greenMaximum][B]-Y[A.alphaMaximum][A.redMaximum][A.greenMinimum][B]-Y[A.alphaMaximum][A.redMinimum][A.greenMaximum][B]+Y[A.alphaMaximum][A.redMinimum][A.greenMinimum][B]-(Y[A.alphaMinimum][A.redMaximum][A.greenMaximum][B]-Y[A.alphaMinimum][A.redMaximum][A.greenMinimum][B]-Y[A.alphaMinimum][A.redMinimum][A.greenMaximum][B]+Y[A.alphaMinimum][A.redMinimum][A.greenMinimum][B]);break;default:throw Error("impossible")}return J|0}static _bottom(A,Q,B){switch(Q){case PQ._alpha:return-B[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMaximum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMaximum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMaximum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(-B[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMinimum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);case PQ._red:return-B[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMaximum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMaximum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMaximum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(-B[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMinimum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);case PQ._green:return-B[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMaximum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMaximum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMaximum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(-B[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);case PQ._blue:return-B[A.alphaMaximum][A.redMaximum][A.greenMaximum][A.blueMinimum]+B[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]-(-B[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMinimum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);default:return 0}}_calculateVariance(A){let Q=PQ._volume(A,this._momentsRed),B=PQ._volume(A,this._momentsGreen),Y=PQ._volume(A,this._momentsBlue),J=PQ._volume(A,this._momentsAlpha),C=PQ._volumeFloat(A,this._moments),X=PQ._volume(A,this._weights),G=Q*Q+B*B+Y*Y+J*J;return C-G/X}_maximize(A,Q,B,Y,J,C,X,G,W){let F=PQ._bottom(A,Q,this._momentsRed)|0,Z=PQ._bottom(A,Q,this._momentsGreen)|0,U=PQ._bottom(A,Q,this._momentsBlue)|0,$=PQ._bottom(A,Q,this._momentsAlpha)|0,E=PQ._bottom(A,Q,this._weights)|0,K=0,I=-1;for(let V=B;VK)K=q,I=V}}}return{max:K,position:I}}_cut(A,Q){let B,Y=PQ._volume(A,this._momentsRed),J=PQ._volume(A,this._momentsGreen),C=PQ._volume(A,this._momentsBlue),X=PQ._volume(A,this._momentsAlpha),G=PQ._volume(A,this._weights),W=this._maximize(A,PQ._red,A.redMinimum+1,A.redMaximum,Y,J,C,X,G),F=this._maximize(A,PQ._green,A.greenMinimum+1,A.greenMaximum,Y,J,C,X,G),Z=this._maximize(A,PQ._blue,A.blueMinimum+1,A.blueMaximum,Y,J,C,X,G),U=this._maximize(A,PQ._alpha,A.alphaMinimum+1,A.alphaMaximum,Y,J,C,X,G);if(U.max>=W.max&&U.max>=F.max&&U.max>=Z.max){if(B=PQ._alpha,U.position<0)return!1}else if(W.max>=U.max&&W.max>=F.max&&W.max>=Z.max)B=PQ._red;else if(F.max>=U.max&&F.max>=W.max&&F.max>=Z.max)B=PQ._green;else B=PQ._blue;switch(Q.redMaximum=A.redMaximum,Q.greenMaximum=A.greenMaximum,Q.blueMaximum=A.blueMaximum,Q.alphaMaximum=A.alphaMaximum,B){case PQ._red:Q.redMinimum=A.redMaximum=W.position,Q.greenMinimum=A.greenMinimum,Q.blueMinimum=A.blueMinimum,Q.alphaMinimum=A.alphaMinimum;break;case PQ._green:Q.greenMinimum=A.greenMaximum=F.position,Q.redMinimum=A.redMinimum,Q.blueMinimum=A.blueMinimum,Q.alphaMinimum=A.alphaMinimum;break;case PQ._blue:Q.blueMinimum=A.blueMaximum=Z.position,Q.redMinimum=A.redMinimum,Q.greenMinimum=A.greenMinimum,Q.alphaMinimum=A.alphaMinimum;break;case PQ._alpha:Q.alphaMinimum=A.alphaMaximum=U.position,Q.blueMinimum=A.blueMinimum,Q.redMinimum=A.redMinimum,Q.greenMinimum=A.greenMinimum;break}return A.volume=(A.redMaximum-A.redMinimum)*(A.greenMaximum-A.greenMinimum)*(A.blueMaximum-A.blueMinimum)*(A.alphaMaximum-A.alphaMinimum),Q.volume=(Q.redMaximum-Q.redMinimum)*(Q.greenMaximum-Q.greenMinimum)*(Q.blueMaximum-Q.blueMinimum)*(Q.alphaMaximum-Q.alphaMinimum),!0}_initialize(A){this._colors=A,this._cubes=[];for(let Q=0;QrR,ErrorDiffusionArray:()=>t1,ErrorDiffusionArrayKernel:()=>qZA,ErrorDiffusionRiemersma:()=>ff,NearestColor:()=>LZA});var rR=class{quantizeSync(A,Q){for(let B of this.quantize(A,Q))if(B.pointContainer)return B.pointContainer;throw Error("unreachable")}},LZA=class extends rR{constructor(A){super();ZA(this,"_distance"),this._distance=A}*quantize(A,Q){let B=A.getPointArray(),Y=A.getWidth(),J=A.getHeight(),C=new b6(J,99);for(let X=0;X{return A[A.FloydSteinberg=0]="FloydSteinberg",A[A.FalseFloydSteinberg=1]="FalseFloydSteinberg",A[A.Stucki=2]="Stucki",A[A.Atkinson=3]="Atkinson",A[A.Jarvis=4]="Jarvis",A[A.Burkes=5]="Burkes",A[A.Sierra=6]="Sierra",A[A.TwoSierra=7]="TwoSierra",A[A.SierraLite=8]="SierraLite",A})(qZA||{}),t1=class extends rR{constructor(A,Q,B=!0,Y=0,J=!1){super();ZA(this,"_minColorDistance"),ZA(this,"_serpentine"),ZA(this,"_kernel"),ZA(this,"_calculateErrorLikeGIMP"),ZA(this,"_distance"),this._setKernel(Q),this._distance=A,this._minColorDistance=Y,this._serpentine=B,this._calculateErrorLikeGIMP=J}*quantize(A,Q){let B=A.getPointArray(),Y=new M8,J=A.getWidth(),C=A.getHeight(),X=[],G=1,W=1;for(let Z of this._kernel){let U=Z[2]+1;if(W=0&&k+I=0&&T+ZQ)A.length=Q;let B=A.length;for(let Y=0;Y=0&&A.x=0&&A.y{let F=B[G+W*Y],{r:Z,g:U,b:$,a:E}=F;for(let H=0;HqJB});var NJB=0.01,LJB=0.03;function qJB(A,Q){if(A.getHeight()!==Q.getHeight()||A.getWidth()!==Q.getWidth())throw Error("Images have different sizes!");let Y=255,J=(NJB*Y)**2,C=(LJB*Y)**2,X=0,G=0;return MJB(A,Q,(W,F,Z,U)=>{let $=0,E=0,K=0;for(let L=0;Lprocess.nextTick(A):(A)=>setTimeout(A,0);function MZA(A,{colorDistanceFormula:Q,paletteQuantization:B,colors:Y}={}){let J=RZA(Q),C=RJB(J,B,Y);return A.forEach((X)=>C.sample(X)),C.quantizeSync()}function zZA(A,Q,{colorDistanceFormula:B,imageQuantization:Y}={}){let J=RZA(B);return zJB(J,Y).quantizeSync(A,Q)}function RZA(A="euclidean-bt709"){switch(A){case"cie94-graphic-arts":return new GZA;case"cie94-textiles":return new XZA;case"ciede2000":return new uC;case"color-metric":return new WZA;case"euclidean":return new FZA;case"euclidean-bt709":return new ZZA;case"euclidean-bt709-noalpha":return new $ZA;case"manhattan":return new UZA;case"manhattan-bt709":return new KZA;case"manhattan-nommyde":return new EZA;case"pngquant":return new VZA;default:throw Error(`Unknown colorDistanceFormula ${A}`)}}function zJB(A,Q="floyd-steinberg"){switch(Q){case"nearest":return new LZA(A);case"riemersma":return new ff(A);case"floyd-steinberg":return new t1(A,0);case"false-floyd-steinberg":return new t1(A,1);case"stucki":return new t1(A,2);case"atkinson":return new t1(A,3);case"jarvis":return new t1(A,4);case"burkes":return new t1(A,5);case"sierra":return new t1(A,6);case"two-sierra":return new t1(A,7);case"sierra-lite":return new t1(A,8);default:throw Error(`Unknown imageQuantization ${Q}`)}}function RJB(A,Q="wuquant",B=256){switch(Q){case"neuquant":return new g0(A,B);case"rgbquant":return new DZA(A,B);case"wuquant":return new BE(A,B);case"neuquant-float":return new h0(A,B);default:throw Error(`Unknown paletteQuantization ${Q}`)}}var wJB=SB.object({colors:SB.number().optional(),colorDistanceFormula:SB.union([SB.literal("cie94-textiles"),SB.literal("cie94-graphic-arts"),SB.literal("ciede2000"),SB.literal("color-metric"),SB.literal("euclidean"),SB.literal("euclidean-bt709-noalpha"),SB.literal("euclidean-bt709"),SB.literal("manhattan"),SB.literal("manhattan-bt709"),SB.literal("manhattan-nommyde"),SB.literal("pngquant")]).optional(),paletteQuantization:SB.union([SB.literal("neuquant"),SB.literal("neuquant-float"),SB.literal("rgbquant"),SB.literal("wuquant")]).optional(),imageQuantization:SB.union([SB.literal("nearest"),SB.literal("riemersma"),SB.literal("floyd-steinberg"),SB.literal("false-floyd-steinberg"),SB.literal("stucki"),SB.literal("atkinson"),SB.literal("jarvis"),SB.literal("burkes"),SB.literal("sierra"),SB.literal("two-sierra"),SB.literal("sierra-lite")]).optional()}),wZA={quantize(A,Q){let{colors:B,colorDistanceFormula:Y,paletteQuantization:J,imageQuantization:C}=wJB.parse(Q),X=xf.PointContainer.fromUint8Array(A.bitmap.data,A.bitmap.width,A.bitmap.height),G=MZA([X],{colors:B,colorDistanceFormula:Y,paletteQuantization:J}),W=zZA(X,G,{colorDistanceFormula:Y,imageQuantization:C});return A.bitmap.data=Buffer.from(W.toUint8Array()),A}};var OJB=[lU,_7A,v7A,pU,RFA,wFA,rU,jFA,OFA,PFA,TFA,xFA,fFA,bFA,mC,dFA,cFA,wZA],PJB=[r3,w1A,XR,WR,$R,PR],f$Y={bmp:r3().mime,gif:XR().mime,jpeg:WR().mime,png:$R().mime,tiff:PR().mime},YE=MFA({formats:PJB,plugins:OJB});var R8={OPTIMIZED_DIR:".optimized",TEMP_DIR:"hytopia-models-temp",CHECKSUM_EXT:".md5",VERSION:4,DATA_EXT:".data.json",DIRECTORIES:[PY.assetsLibraryPath,jJ.resolve(process.cwd(),"assets")].filter(Boolean),OPTIMIZER_RUNS:[{suffix:"",options:["--compress","false","--instance","false","--simplify","false","--texture-compress","false"],stripAnimations:!1,optimalMaxMeshCount:10,optimalMaxMeshHint:"Reduce nodes/meshes in your source model, or use fewer unique materials so primitives can be merged in the generated optimized model.",keepEmptyNamedNodes:!1},{suffix:"-named-nodes",options:["--compress","false","--flatten","false","--instance","false","--simplify","false","--join","false","--prune","false","--texture-compress","false"],stripAnimations:!1,optimalMaxMeshCount:20,optimalMaxMeshHint:"Use fewer unique materials in your source model so primitives sharing the same material can be joined in the generated optimized model. Named nodes are preserved, reduce unnecessary named nodes to further reduce mesh count.",keepEmptyNamedNodes:!0},{suffix:"-no-animations",options:["--compress","false","--instance","false","--simplify","false","--texture-compress","false"],stripAnimations:!0,optimalMaxMeshCount:1,optimalMaxMeshHint:"Use a single material/texture atlas in your source model so all primitives can merge into one mesh in the generated optimized model.",keepEmptyNamedNodes:!1}]},aR=[oI,eI];class yY{static instance=new yY;optimize=process.env.NODE_ENV!=="production";_modelUriAnimationNames=new Map;_modelUriBoundingBoxes=new Map;_modelUriNodeNames=new Map;_modelUriTrimeshes=new Map;constructor(){}async preloadModels(){let A=await this._getAbsoluteModelPaths();console.info(`ModelRegistry.preloadModels(): Preloading ${A.length} models...`);let Q=performance.now();for(let Y of A){if(this.optimize)await this._resolveOptimizedModelPath(Y);await this._loadModelData(Y)}let B=performance.now();console.info(`ModelRegistry.preloadModels(): Preloaded ${A.length} models in ${B-Q}ms!`)}getAllModelUris(){return Array.from(this._modelUriBoundingBoxes.keys())}getAnimationNames(A){let Q=this._modelUriAnimationNames.get(A);if(!Q)return l.error(`ModelRegistry.getAnimationNames(): Model ${A} not found!`),[];return Q}getBoundingBox(A){let Q=this._modelUriBoundingBoxes.get(A);if(!Q)return l.error(`ModelRegistry.getBoundingBox(): Model ${A} not found!`),{min:{x:0,y:0,z:0},max:{x:1,y:1,z:1}};return Q}getDepth(A){let Q=this.getBoundingBox(A);return Q.max.z-Q.min.z}getHeight(A){let Q=this.getBoundingBox(A);return Q.max.y-Q.min.y}getNodeNames(A){let Q=this._modelUriNodeNames.get(A);if(!Q)return l.error(`ModelRegistry.getNodeNames(): Model ${A} not found!`),[];return Q}getTrimesh(A,Q={x:1,y:1,z:1}){let B=this._modelUriTrimeshes.get(A);if(!B){l.error(`ModelRegistry.getTrimesh(): Model ${A} not found!`);return}let Y=B.vertices;if(Q.x!==1||Q.y!==1||Q.z!==1){Y=new Float32Array(Y.length);for(let J=0;JK.getName()),Z=G.getRoot().listAnimations().map((K)=>K.getName()),U=await this._buildTrimesh(G),$={},E=new i4().registerExtensions(aR);for(let K of R8.OPTIMIZER_RUNS){let I=this._buildOptimizedModelPath(A),V=this._buildOptimizedSuffixedModelPath(I,K.suffix);$[K.suffix]={meshCount:(await E.read(V)).getRoot().listMeshes().length}}X={schemaVersion:R8.VERSION,source:{uri:Y,sha256:J},animationNames:Z,boundingBox:{min:{x:W.min[0],y:W.min[1],z:W.min[2]},max:{x:W.max[0],y:W.max[1],z:W.max[2]}},nodeNames:F,trimesh:U?{vertices:Array.from(U.vertices),indices:Array.from(U.indices)}:void 0,optimizedModelData:$};try{let K=jJ.dirname(B);z8.mkdirSync(K,{recursive:!0}),z8.writeFileSync(B,JSON.stringify(X))}catch(K){l.warning(`ModelRegistry._loadModelData(): Failed to write data file for ${Y}. Error: ${String(K)}`)}}if(process.env.NODE_ENV!=="production"&&!C)for(let G of R8.OPTIMIZER_RUNS){let W=X.optimizedModelData[G.suffix].meshCount;if(W>G.optimalMaxMeshCount)l.warning(`Model "${Y}" (${G.suffix}) has ${W} meshes (less is better, try not to exceed: ${G.optimalMaxMeshCount}). This may impact FPS if this model is used in a game. ${G.optimalMaxMeshHint}`)}this._modelUriAnimationNames.set(Y,X.animationNames),this._modelUriBoundingBoxes.set(Y,X.boundingBox),this._modelUriNodeNames.set(Y,X.nodeNames),this._modelUriTrimeshes.set(Y,X.trimesh?{vertices:new Float32Array(X.trimesh.vertices),indices:new Uint32Array(X.trimesh.indices)}:void 0)}async _resolveOptimizedModelPath(A){let Q=this._buildOptimizedModelPath(A);if(this._isOptimizedVersionValid(A))return Q;return await this._optimizeModel(A,Q)}_isOptimizedVersionValid(A){let Q=`${this._buildOptimizedModelPath(A)}${R8.CHECKSUM_EXT}`;if(!z8.existsSync(Q))return!1;let B=this._calculateChecksum(A),Y=z8.readFileSync(Q,"utf8");return B===Y}_calculateChecksum(A){if(!z8.existsSync(A))return"";let Q=z8.readFileSync(A);return TJB.createHash("sha256").update(Q.toString("base64")).update(R8.VERSION.toString()).digest("hex")}_buildOptimizedModelPath(A){let Q=jJ.basename(A),B=Q.replace(/\.[^/.]+$/,""),Y=jJ.dirname(A),J=jJ.join(Y,R8.OPTIMIZED_DIR,B);return jJ.join(J,Q)}_buildOptimizedSuffixedModelPath(A,Q){return A.replace(/(\.[^/.]+)$/,`${Q}.glb`)}async _buildTrimesh(A,Q=1,B=0.001){let Y=pCA(A);Y.setLogger(new S9(mI.WARN)),await Y.transform(hCA({pivot:"center"}),mh(),uh(),fh(),Y1A({simplifier:jZA.MeshoptSimplifier,ratio:Q,error:B}),cCA());for(let $ of Y.getRoot().listScenes())for(let E of $.listChildren())uCA(E);let J=[],C=0,X=0;for(let $ of Y.getRoot().listMeshes())for(let E of $.listPrimitives()){let K=E.getAttribute("POSITION"),I=E.getIndices();if(!K||!I)continue;let V=K.getArray(),H=I.getArray(),D=H instanceof Uint32Array?H:new Uint32Array(H);if(V.length===0||D.length===0)continue;J.push({vertices:V,indices:D}),C+=V.length,X+=D.length}if(J.length===0){l.error("ModelRegistry._buildTrimesh(): Model has no primitives with POSITION and INDICES!");return}let G=new Float32Array(C),W=new Uint32Array(X),F=0,Z=0,U=0;for(let $ of J){G.set($.vertices,F);let E=$.vertices.length/3;for(let K=0;K<$.indices.length;K++)W[U+K]=$.indices[K]+Z;F+=$.vertices.length,U+=$.indices.length,Z+=E}return{vertices:G,indices:W}}async _optimizeModel(A,Q){let B=jJ.dirname(Q);z8.rmSync(B,{recursive:!0,force:!0}),z8.mkdirSync(B,{recursive:!0}),console.info(`ModelRegistry: Optimizing model ${this._absoluteModelPathToModelUri(A)}...`);for(let Y of R8.OPTIMIZER_RUNS){let J=this._buildOptimizedSuffixedModelPath(Q,Y.suffix),C=await this._preprocessOptimizableModel(A,Y),X=await qI("npx",["@gltf-transform/cli","optimize",C,J,...Y.options]);if(X.stderr)return l.warning(`ModelRegistry._optimizeModel(): Error optimizing model ${this._absoluteModelPathToModelUri(A)}, defaulting to unoptimized model. Error: ${X.stderr}`),A;await this._embedModelMetadata(J);let G=await qI("npx",["@gltf-transform/cli","uastc",J,J,"--level","4","--zstd","10"]);if(G.stderr)l.warning(`ModelRegistry._optimizeModel(): Error compressing textures for model ${this._absoluteModelPathToModelUri(A)}, continuing without compression. Error: ${G.stderr}`)}return z8.writeFileSync(`${Q}${R8.CHECKSUM_EXT}`,this._calculateChecksum(A)),Q}async _embedModelMetadata(A){try{let Q=new i4().registerExtensions(aR),B=await Q.read(A);for(let Y of B.getRoot().listMaterials()){let C=Y.getBaseColorTexture()?.getImage(),X=!1;if(C)try{let G=Y.getAlphaMode()==="MASK"?Y.getAlphaCutoff()??0.5:0,W=Y.getAlpha(),F=G/W*255,{data:Z}=(await YE.read(Buffer.from(C))).bitmap;for(let U=3;U=F&&Z[U]<255){X=!0;break}}catch{}Y.setExtras({...Y.getExtras(),hasTransparency:X})}await Q.write(A,B)}catch(Q){l.warning(`ModelRegistry._embedModelMetadata(): Failed to embed metadata for ${A}. Error: ${String(Q)}`)}}async _preprocessOptimizableModel(A,Q){let B=new i4().registerExtensions(aR),Y=await B.read(A),J=!1;if(Q.stripAnimations){let C=Y.getRoot().listAnimations();if(C.length>0)C.forEach((X)=>X.dispose()),J=!0}if(Q.keepEmptyNamedNodes)await Y.transform(mh({cleanup:!1}),uh({cleanup:!1,keepNamed:!0}),m3({keepLeaves:!0})),J=!0;if(J){let C=jJ.join(SJB.tmpdir(),R8.TEMP_DIR);z8.mkdirSync(C,{recursive:!0});let X=jJ.join(C,jJ.basename(A));return await B.write(X,Y),X}return A}}var FZ;((J)=>{J.DYNAMIC="dynamic";J.FIXED="fixed";J.KINEMATIC_POSITION="kinematic_position";J.KINEMATIC_VELOCITY="kinematic_velocity"})(FZ||={});var bf=0.001,OZA="dynamic";class y7 extends BQ{_additionalMass=0;_colliders=new Set;_explicitSleep=!1;_enabledPositions={x:!0,y:!0,z:!0};_enabledRotations={x:!0,y:!0,z:!0};_rigidBody;_rigidBodyDesc;_rigidBodyType;_simulation;constructor(A){super();A.type??=OZA,this._rigidBodyDesc=this._createRigidBodyDesc(A),this._rigidBodyType=A.type,this._applyRigidBodyOptions(A),this._autoAddToSimulation(A)}get additionalMass(){if(!this._requireNotRemoved("additionalMass"))return 0;return this._additionalMass}get additionalSolverIterations(){if(!this._requireNotRemoved("additionalSolverIterations"))return 0;return this._rigidBody?this._rigidBody.additionalSolverIterations():this._rigidBodyDesc.additionalSolverIterations}get angularDamping(){if(!this._requireNotRemoved("angularDamping"))return 0;return this._rigidBody?this._rigidBody.angularDamping():this._rigidBodyDesc.angularDamping}get angularVelocity(){if(!this._requireNotRemoved("angularVelocity"))return{x:0,y:0,z:0};return this._rigidBody?this._rigidBody.angvel():this._rigidBodyDesc.angvel}get colliders(){return this._colliders}get dominanceGroup(){if(!this._requireNotRemoved("dominanceGroup"))return 0;return this._rigidBody?this._rigidBody.dominanceGroup():this._rigidBodyDesc.dominanceGroup}get directionFromRotation(){let{x:A,y:Q,z:B,w:Y}=this.rotation;return{x:-2*(A*B+Y*Q),y:-2*(Q*B-Y*A),z:-(1-2*(A*A+Q*Q))}}get effectiveAngularInertia(){if(!this._requireNotRemoved("effectiveAngularInertia"))return;return this._rigidBody?this._rigidBody.effectiveAngularInertia():void 0}get effectiveInverseMass(){if(!this._requireNotRemoved("effectiveInverseMass"))return;return this._rigidBody?this._rigidBody.effectiveInvMass():void 0}get enabledRotations(){if(!this._requireNotRemoved("enabledRotations"))return{x:!0,y:!0,z:!0};return this._enabledRotations}get enabledPositions(){if(!this._requireNotRemoved("enabledPositions"))return{x:!0,y:!0,z:!0};return this._enabledPositions}get gravityScale(){if(!this._requireNotRemoved("gravityScale"))return 0;return this._rigidBody?this._rigidBody.gravityScale():this._rigidBodyDesc.gravityScale}get inverseMass(){if(!this._requireNotRemoved("inverseMass"))return;return this._rigidBody?this._rigidBody.invMass():void 0}get isCcdEnabled(){if(!this._requireNotRemoved("isCcdEnabled"))return!1;return this._rigidBody?this._rigidBody.isCcdEnabled():this._rigidBodyDesc.ccdEnabled}get isDynamic(){if(!this._requireNotRemoved("isDynamic"))return!1;return this._rigidBodyType==="dynamic"}get isEnabled(){if(!this._requireNotRemoved("isEnabled"))return!1;return this._rigidBody?this._rigidBody.isEnabled():this._rigidBodyDesc.enabled}get isFixed(){if(!this._requireNotRemoved("isFixed"))return!1;return this._rigidBodyType==="fixed"}get isKinematic(){if(!this._requireNotRemoved("isKinematic"))return!1;return["kinematic_position","kinematic_velocity"].includes(this._rigidBodyType)}get isKinematicPositionBased(){if(!this._requireNotRemoved("isKinematicPositionBased"))return!1;return this._rigidBodyType==="kinematic_position"}get isKinematicVelocityBased(){if(!this._requireNotRemoved("isKinematicVelocityBased"))return!1;return this._rigidBodyType==="kinematic_velocity"}get isMoving(){if(!this._requireNotRemoved("isMoving"))return!1;return this._rigidBody?this._rigidBody.isMoving():!1}get isRemoved(){return!this._rigidBody&&!this._rigidBodyDesc}get isSimulated(){if(!this._requireNotRemoved("isSimulated"))return!1;return this._rigidBody?!0:!1}get isSleeping(){if(!this._requireNotRemoved("isSleeping"))return!1;return this._rigidBody?this._rigidBody.isSleeping():this._rigidBodyDesc.sleeping}get linearDamping(){if(!this._requireNotRemoved("linearDamping"))return 0;return this._rigidBody?this._rigidBody.linearDamping():this._rigidBodyDesc.linearDamping}get linearVelocity(){if(!this._requireNotRemoved("linearVelocity"))return{x:0,y:0,z:0};return this._rigidBody?this._rigidBody.linvel():this._rigidBodyDesc.linvel}get localCenterOfMass(){if(!this._requireNotRemoved("localCenterOfMass"))return{x:0,y:0,z:0};return this._rigidBody?this._rigidBody.localCom():this._rigidBodyDesc.centerOfMass}get mass(){if(!this._requireNotRemoved("mass"))return 0;return this._rigidBody?this._rigidBody.mass():this._rigidBodyDesc.mass}get nextKinematicRotation(){if(!this._requireNotRemoved("nextKinematicRotation"))return{x:0,y:0,z:0,w:1};return this._rigidBody?this._rigidBody.nextRotation():this._rigidBodyDesc.rotation}get nextKinematicPosition(){if(!this._requireNotRemoved("nextKinematicPosition"))return{x:0,y:0,z:0};return this._rigidBody?this._rigidBody.nextTranslation():this._rigidBodyDesc.translation}get numColliders(){return this._colliders.size}get principalAngularInertia(){if(!this._requireNotRemoved("principalAngularInertia"))return{x:0,y:0,z:0};return this._rigidBody?this._rigidBody.principalInertia():this._rigidBodyDesc.principalAngularInertia}get principalAngularInertiaLocalFrame(){if(!this._requireNotRemoved("principalAngularInertiaLocalFrame"))return;return this._rigidBody?this._rigidBody.principalInertiaLocalFrame():void 0}get position(){if(!this._requireNotRemoved("position"))return{x:0,y:0,z:0};return this._rigidBody?this._rigidBody.translation():this._rigidBodyDesc.translation}get rawRigidBody(){if(!this._requireNotRemoved("rawRigidBody"))return;return this._rigidBody}get rotation(){if(!this._requireNotRemoved("rotation"))return{x:0,y:0,z:0,w:1};return this._rigidBody?this._rigidBody.rotation():this._rigidBodyDesc.rotation}get softCcdPrediction(){if(!this._requireNotRemoved("softCcdPrediction"))return 0;return this._rigidBody?this._rigidBody.softCcdPrediction():this._rigidBodyDesc.softCcdPrediction}get type(){if(!this._requireNotRemoved("type"))return"dynamic";return this._rigidBodyType}get worldCenterOfMass(){if(!this._requireNotRemoved("worldCenterOfMass"))return;return this._rigidBody?this._rigidBody.worldCom():void 0}setAdditionalMass(A){if(!this._requireDynamic("setAdditionalMass"))return;if(!this._requireNotRemoved("setAdditionalMass"))return;this._rigidBody?this._rigidBody.setAdditionalMass(A,!this._explicitSleep):this._rigidBodyDesc.setAdditionalMass(A)}setAdditionalMassProperties(A){if(!this._requireDynamic("setAdditionalMassProperties"))return;if(!this._requireNotRemoved("setAdditionalMassProperties"))return;let{additionalMass:Q,centerOfMass:B,principalAngularInertia:Y,principalAngularInertiaLocalFrame:J}=A;this._rigidBody?this._rigidBody.setAdditionalMassProperties(Q,B,Y,J,!this._explicitSleep):this._rigidBodyDesc.setAdditionalMassProperties(Q,B,Y,J)}setAdditionalSolverIterations(A){if(!this._requireDynamic("setAdditionalSolverIterations"))return;if(!this._requireNotRemoved("setAdditionalSolverIterations"))return;this._rigidBody?this._rigidBody.setAdditionalSolverIterations(A):this._rigidBodyDesc.setAdditionalSolverIterations(A)}setAngularDamping(A){if(!this._requireDynamic("setAngularDamping"))return;if(!this._requireNotRemoved("setAngularDamping"))return;this._rigidBody?this._rigidBody.setAngularDamping(A):this._rigidBodyDesc.setAngularDamping(A)}setAngularVelocity(A){if(!this._requireNotKinematicPositionBased("setAngularVelocity"))return;if(!this._requireNotRemoved("setAngularVelocity"))return;this._rigidBody?this._rigidBody.setAngvel(A,!this._explicitSleep):this._rigidBodyDesc.setAngvel(A)}setCcdEnabled(A){if(!this._requireDynamic("setCcdEnabled"))return;if(!this._requireNotRemoved("setCcdEnabled"))return;this._rigidBody?this._rigidBody.enableCcd(A):this._rigidBodyDesc.setCcdEnabled(A)}setDominanceGroup(A){if(!this._requireDynamic("setDominanceGroup"))return;if(!this._requireNotRemoved("setDominanceGroup"))return;this._rigidBody?this._rigidBody.setDominanceGroup(A):this._rigidBodyDesc.setDominanceGroup(A)}setEnabled(A){if(!this._requireNotRemoved("setEnabled"))return;this._rigidBody?this._rigidBody.setEnabled(A):this._rigidBodyDesc.setEnabled(A)}setEnabledPositions(A){if(!this._requireDynamic("setEnabledPositions"))return;if(!this._requireNotRemoved("setEnabledPositions"))return;this._rigidBody?this._rigidBody.setEnabledTranslations(A.x,A.y,A.z,!this._explicitSleep):this._rigidBodyDesc.enabledTranslations(A.x,A.y,A.z),this._enabledPositions=A}setEnabledRotations(A){if(!this._requireDynamic("setEnabledRotations"))return;if(!this._requireNotRemoved("setEnabledRotations"))return;this._rigidBody?this._rigidBody.setEnabledRotations(A.x,A.y,A.z,!this._explicitSleep):this._rigidBodyDesc.enabledRotations(A.x,A.y,A.z),this._enabledRotations=A}setGravityScale(A){if(!this._requireDynamic("setGravityScale"))return;if(!this._requireNotRemoved("setGravityScale"))return;this._rigidBody?this._rigidBody.setGravityScale(A,!this._explicitSleep):this._rigidBodyDesc.setGravityScale(A)}setLinearDamping(A){if(!this._requireDynamic("setLinearDamping"))return;if(!this._requireNotRemoved("setLinearDamping"))return;this._rigidBody?this._rigidBody.setLinearDamping(A):this._rigidBodyDesc.setLinearDamping(A)}setLinearVelocity(A){if(!this._requireNotKinematicPositionBased("setLinearVelocity"))return;if(!this._requireNotRemoved("setLinearVelocity"))return;this._rigidBody?this._rigidBody.setLinvel(A,!this._explicitSleep):this._rigidBodyDesc.setLinvel(A.x,A.y,A.z)}setNextKinematicRotation(A){if(!this._requireKinematic("setNextKinematicRotation"))return;if(!this._requireNotRemoved("setNextKinematicRotation"))return;this._rigidBody?this._rigidBody.setNextKinematicRotation(A):this._rigidBodyDesc.setRotation(A)}setNextKinematicPosition(A){if(!this._requireKinematic("setNextKinematicPosition"))return;if(!this._requireNotRemoved("setNextKinematicPosition"))return;this._rigidBody?this._rigidBody.setNextKinematicTranslation(A):this._rigidBodyDesc.setTranslation(A.x,A.y,A.z)}setPosition(A){if(!this._requireNotRemoved("setPosition"))return;this._rigidBody?this._rigidBody.setTranslation(A,!this._explicitSleep):this._rigidBodyDesc.setTranslation(A.x,A.y,A.z)}setRotation(A){if(!this._requireNotRemoved("setRotation"))return;this._rigidBody?this._rigidBody.setRotation(A,!this._explicitSleep):this._rigidBodyDesc.setRotation(A)}setSleeping(A){if(!this._requireDynamic("setSleeping"))return;if(!this._requireNotRemoved("setSleeping"))return;this._rigidBody?A?this._rigidBody.sleep():this._rigidBody.wakeUp():this._rigidBodyDesc.sleeping=A,this._explicitSleep=A}setSoftCcdPrediction(A){if(!this._requireDynamic("setSoftCcdPrediction"))return;if(!this._requireNotRemoved("setSoftCcdPrediction"))return;this._rigidBody?this._rigidBody.setSoftCcdPrediction(A):this._rigidBodyDesc.setSoftCcdPrediction(A)}setCollisionGroupsForSolidColliders(A){if(!this._requireNotRemoved("setCollisionGroupsForSolidColliders"))return;this._colliders.forEach((Q)=>{if(Q.isSensor)return;Q.setCollisionGroups(A)})}setCollisionGroupsForSensorColliders(A){if(!this._requireNotRemoved("setCollisionGroupsForSensorColliders"))return;this._colliders.forEach((Q)=>{if(!Q.isSensor)return;Q.setCollisionGroups(A)})}setType(A){if(!this._requireNotRemoved("setType"))return;let B={["dynamic"]:WB.RigidBodyType.Dynamic,["fixed"]:WB.RigidBodyType.Fixed,["kinematic_position"]:WB.RigidBodyType.KinematicPositionBased,["kinematic_velocity"]:WB.RigidBodyType.KinematicVelocityBased}[A];if(B===void 0)return l.error(`Invalid RigidBodyType: ${A}`);this._rigidBody?this._rigidBody.setBodyType(B,!this._explicitSleep):this._rigidBodyDesc.status=B,this._rigidBodyType=A}addForce(A){if(!this._requireNotRemoved("addForce"))return;if(!this._requireCreated("addForce"))return;if(!this._requireDynamic("addForce"))return;if(this._isNegligibleVector(A))return;this._rigidBody.addForce(A,!this._explicitSleep)}addTorque(A){if(!this._requireNotRemoved("addTorque"))return;if(!this._requireCreated("addTorque"))return;if(!this._requireDynamic("addTorque"))return;if(this._isNegligibleVector(A))return;this._rigidBody.addTorque(A,!this._explicitSleep)}addChildColliderToSimulation(A){if(!this._requireNotRemoved("addChildColliderToSimulation"))return;if(!this._requireCreated("addChildColliderToSimulation"))return;A.addToSimulation(this._simulation,this)}addToSimulation(A){if(!this._requireNotRemoved("addToSimulation"))return;if(this._rigidBody)return l.error("RigidBody.addToSimulation(): Rigid body already exists in the simulation!");this._simulation=A,this._rigidBody=this._simulation.createRawRigidBody(this._rigidBodyDesc),this._colliders.forEach((Q)=>{if(!Q.isSimulated)Q.addToSimulation(A,this)})}applyImpulse(A){if(!this._requireNotRemoved("applyImpulse"))return;if(!this._requireCreated("applyImpulse"))return;if(!this._requireDynamic("applyImpulse"))return;if(this._isNegligibleVector(A))return;this._rigidBody.applyImpulse(A,!this._explicitSleep)}applyImpulseAtPoint(A,Q){if(!this._requireNotRemoved("applyImpulseAtPoint"))return;if(!this._requireCreated("applyImpulseAtPoint"))return;if(!this._requireDynamic("applyImpulseAtPoint"))return;if(this._isNegligibleVector(A))return;this._rigidBody.applyImpulseAtPoint(A,Q,!this._explicitSleep)}applyTorqueImpulse(A){if(!this._requireNotRemoved("applyTorqueImpulse"))return;if(!this._requireCreated("applyTorqueImpulse"))return;if(!this._requireDynamic("applyTorqueImpulse"))return;this._rigidBody.applyTorqueImpulse(A,!this._explicitSleep)}createAndAddChildCollider(A){if(!this._requireNotRemoved("createAndAddChildCollider"))return null;return this._simulation?new h9({...A,parentRigidBody:this,simulation:this._simulation}):this._createAndAddPendingChildCollider(A)}createAndAddChildColliders(A){let Q=[];return A.forEach((B)=>{let Y=this.createAndAddChildCollider(B);if(Y)Q.push(Y)}),Q}getCollidersByTag(A){let Q=[];for(let B of this._colliders)if(B.tag===A)Q.push(B);return Q}linkCollider(A){if(!this._requireNotRemoved("linkCollider"))return;if(A.parentRigidBody!==this)return l.error("RigidBody.linkCollider(): Collider cannot be linked because it is not a child of this rigid body!");this._colliders.add(A)}lockAllRotations(){if(!this._requireNotRemoved("lockAllRotations"))return;this.setEnabledRotations({x:!1,y:!1,z:!1})}lockAllPositions(){if(!this._requireNotRemoved("lockAllPositions"))return;this.setEnabledPositions({x:!1,y:!1,z:!1})}removeFromSimulation(){if(!this._requireNotRemoved("removeFromSimulation"))return;if(!this._rigidBody)return l.error("RigidBody.removeFromSimulation(): Rigid body does not exist in the simulation!");this._colliders.forEach((A)=>{A.removeFromSimulation()}),this._simulation.removeRawRigidBody(this._rigidBody),this._simulation=void 0,this._rigidBody=void 0}unlinkCollider(A){if(!this._requireNotRemoved("unlinkCollider"))return;if(!A.isRemoved)return l.error("RigidBody.unlinkCollider(): Collider is still simulated and therefore cannot be unlinked from this rigid body!");this._colliders.delete(A)}resetAngularVelocity(){if(!this._requireNotRemoved("resetAngularVelocity"))return;if(!this._requireCreated("resetAngularVelocity"))return;this.setAngularVelocity({x:0,y:0,z:0})}resetForces(){if(!this._requireNotRemoved("resetForces"))return;if(!this._requireCreated("resetForces"))return;this._rigidBody.resetForces(!this._explicitSleep)}resetLinearVelocity(){if(!this._requireNotRemoved("resetLinearVelocity"))return;if(!this._requireCreated("resetLinearVelocity"))return;this.setLinearVelocity({x:0,y:0,z:0})}resetTorques(){if(!this._requireNotRemoved("resetTorques"))return;if(!this._requireCreated("resetTorques"))return;this._rigidBody.resetTorques(!this._explicitSleep)}sleep(){if(!this._requireNotRemoved("sleep"))return;this.setSleeping(!0)}wakeUp(){if(!this._requireNotRemoved("wakeUp"))return;this.setSleeping(!1)}_applyRigidBodyOptions(A){[["additionalMass",this.setAdditionalMass.bind(this)],["additionalMassProperties",this.setAdditionalMassProperties.bind(this)],["additionalSolverIterations",this.setAdditionalSolverIterations.bind(this)],["angularDamping",this.setAngularDamping.bind(this)],["angularVelocity",this.setAngularVelocity.bind(this)],["dominanceGroup",this.setDominanceGroup.bind(this)],["ccdEnabled",this.setCcdEnabled.bind(this)],["enabled",this.setEnabled.bind(this)],["enabledPositions",this.setEnabledPositions.bind(this)],["enabledRotations",this.setEnabledRotations.bind(this)],["gravityScale",this.setGravityScale.bind(this)],["linearDamping",this.setLinearDamping.bind(this)],["linearVelocity",this.setLinearVelocity.bind(this)],["position",this.setPosition.bind(this)],["rotation",this.setRotation.bind(this)],["sleeping",this.setSleeping.bind(this)],["softCcdPrediction",this.setSoftCcdPrediction.bind(this)]].forEach(([B,Y])=>{if(B in A)Y(A[B])})}_autoAddToSimulation(A){if(A.colliders)this._createAndAddPendingChildColliders(A.colliders);if(A.simulation)this.addToSimulation(A.simulation)}_createAndAddPendingChildCollider(A){if(!this._requireNotRemoved("createAndAddPendingChildCollider"))return null;if(!this._requireNotSimulated("createAndAddPendingChildCollider"))return null;let Q=new h9(A);return this._colliders.add(Q),Q}_createAndAddPendingChildColliders(A){let Q=[];return A.forEach((B)=>{let Y=this._createAndAddPendingChildCollider(B);if(Y)Q.push(Y)}),Q}_createRigidBodyDesc(A){let Q=A.type??OZA;return{["dynamic"]:()=>WB.RigidBodyDesc.dynamic(),["fixed"]:()=>WB.RigidBodyDesc.fixed(),["kinematic_position"]:()=>WB.RigidBodyDesc.kinematicPositionBased(),["kinematic_velocity"]:()=>WB.RigidBodyDesc.kinematicVelocityBased()}[Q]()}_requireCreated(A){if(!this._rigidBody||!this._simulation)l.error(`RigidBody._requireCreated(): Rigid body has not been created and therefore does not support the invoked method: ${A}()`);return!!this._rigidBody&&!!this._simulation}_requireDynamic(A){if(!this.isDynamic)l.error(`RigidBody._requireDynamic(): Rigid body is not dynamic and therefore does not support the invoked method: ${A}()`);return this.isDynamic}_requireKinematic(A){if(!this.isKinematic)l.error(`RigidBody._requireKinematic(): Rigid body is not kinematic and therefore does not support the invoked method: ${A}()`);return this.isKinematic}_requireNotKinematicPositionBased(A){if(this.isKinematicPositionBased)l.error(`RigidBody._requireNotKinematicPositionBased(): Rigid body is kinematic position based and therefore does not support the invoked method: ${A}()`);return!this.isKinematicPositionBased}_requireNotRemoved(A){if(!this._rigidBody&&!this._rigidBodyDesc)l.error(`RigidBody._requireNotRemoved(): Rigid body has been removed and therefore does not support the invoked method: ${A}()`);return!!this._rigidBody||!!this._rigidBodyDesc}_requireNotSimulated(A){if(this.isSimulated)l.error(`RigidBody._requireNotSimulated(): Rigid body is simulated and therefore does not support the invoked method: ${A}()`);return!this.isSimulated}_isNegligibleVector(A){return Math.abs(A.x){J[J.Average=0]="Average";J[J.Min=1]="Min";J[J.Multiply=2]="Multiply";J[J.Max=3]="Max"})(mf||={});var ZZ;((Z)=>{Z.NONE="none";Z.BALL="ball";Z.BLOCK="block";Z.CAPSULE="capsule";Z.CONE="cone";Z.CYLINDER="cylinder";Z.ROUND_CYLINDER="round-cylinder";Z.TRIMESH="trimesh";Z.VOXELS="voxels";Z.WEDGE="wedge"})(ZZ||={});class h9 extends BQ{_collider;_colliderDesc;_onCollision;_parentRigidBody;_relativePosition={x:0,y:0,z:0};_relativeRotation={x:0,y:0,z:0,w:1};_scale={x:1,y:1,z:1};_shape;_simulation;_tag;constructor(A){super();this._colliderDesc=this._createColliderDesc(A),this._shape=A.shape,this._applyColliderOptions(A),this._autoAddToSimulation(A)}static optionsFromBlockHalfExtents(A){return{shape:"block",halfExtents:A}}static optionsFromModelUri(A,Q=1,B){Q=typeof Q==="number"?{x:Q,y:Q,z:Q}:Q;let Y=yY.instance.getBoundingBox(A),J=Y.max.x-Y.min.x,C=Y.max.y-Y.min.y,X=Y.max.z-Y.min.z,G=J*Q.x,W=C*Q.y,F=X*Q.z,Z=Math.max(G,F),U=Math.min(G,F),$=Z/U,E=Z/W,K=Z/2,I=(M)=>Math.max(0.01,M),V=()=>({shape:"block",halfExtents:{x:I(G/2),y:I(W/2),z:I(F/2)}}),H=()=>({shape:"round-cylinder",radius:I(K),halfHeight:I(W/2),borderRadius:I(K*0.1)}),D=()=>{let M=yY.instance.getTrimesh(A,Q);if(!M)return;return{shape:"trimesh",vertices:M.vertices,indices:M.indices}},L=()=>({shape:"wedge",extents:{x:G,y:W,z:F}}),z=()=>({shape:"capsule",radius:I(K),halfHeight:I(W/2-K)});if(B)switch(B){case"block":return V();case"capsule":return z();case"round-cylinder":return H();case"trimesh":{let M=D();if(!M){l.error(`Collider.optionsFromModelUri(): Failed to create trimesh options for model ${A}, falling back to generic shape!`);break}return M}case"wedge":return L();default:l.warning(`Collider.optionsFromModelUri(): Preferred shape ${B} is not yet supported with Collider.optionsFromModelUri(), defaulting to generic shape!`)}if($>2)return V();if(E>1.5)return H();return z()}get bounciness(){if(!this._requireNotRemoved("bounciness"))return 0;return this._collider?this._collider.restitution():this._colliderDesc.restitution}get bouncinessCombineRule(){if(!this._requireNotRemoved("bouncinessCombineRule"))return 0;return this._collider?this._collider.restitutionCombineRule():this._colliderDesc.restitutionCombineRule}get collisionGroups(){if(!this._requireNotRemoved("collisionGroups"))return{belongsTo:[],collidesWith:[]};return this._collider?LC.decodeRawCollisionGroups(this._collider.collisionGroups()):LC.decodeRawCollisionGroups(this._colliderDesc.collisionGroups)}get friction(){if(!this._requireNotRemoved("friction"))return 0;return this._collider?this._collider.friction():this._colliderDesc.friction}get frictionCombineRule(){if(!this._requireNotRemoved("frictionCombineRule"))return 0;return this._collider?this._collider.frictionCombineRule():this._colliderDesc.frictionCombineRule}get isEnabled(){if(!this._requireNotRemoved("isEnabled"))return!1;return this._collider?this._collider.isEnabled():this._colliderDesc.enabled}get isRemoved(){return!this._collider&&!this._colliderDesc}get isSensor(){if(!this._requireNotRemoved("isSensor"))return!1;return this._collider?this._collider.isSensor():this._colliderDesc.isSensor}get isSimulated(){if(!this._requireNotRemoved("isSimulated"))return!1;return!!this._collider}get isBall(){return this.shape==="ball"}get isBlock(){return this.shape==="block"}get isCapsule(){return this.shape==="capsule"}get isCone(){return this.shape==="cone"}get isCylinder(){return this.shape==="cylinder"}get isNone(){return this.shape==="none"}get isRoundCylinder(){return this.shape==="round-cylinder"}get isTrimesh(){return this.shape==="trimesh"}get isVoxel(){return this.shape==="voxels"}get isWedge(){return this.shape==="wedge"}get parentRigidBody(){if(!this._requireNotRemoved("parentRigidBody"))return;return this._parentRigidBody}get rawCollider(){if(!this._requireNotRemoved("rawCollider"))return;return this._collider}get rawShape(){if(!this._requireNotRemoved("rawShape"))return;return this._collider?this._collider.shape:this._colliderDesc.shape}get relativePosition(){if(!this._requireNotRemoved("relativePosition"))return{x:0,y:0,z:0};return this._relativePosition}get relativeRotation(){if(!this._requireNotRemoved("relativeRotation"))return{x:0,y:0,z:0,w:1};return this._relativeRotation}get scale(){if(!this._requireNotRemoved("scale"))return{x:1,y:1,z:1};return this._scale}get shape(){if(!this._requireNotRemoved("shape"))return"none";return this._shape}get tag(){if(!this._requireNotRemoved("tag"))return;return this._tag}setBounciness(A){if(!this._requireNotRemoved("setBounciness"))return;this._collider?this._collider.setRestitution(A):this._colliderDesc.setRestitution(A)}setBouncinessCombineRule(A){if(!this._requireNotRemoved("setBouncinessCombineRule"))return;this._collider?this._collider.setRestitutionCombineRule(A):this._colliderDesc.setRestitutionCombineRule(A)}setCollisionGroups(A){if(!this._requireNotRemoved("setCollisionGroups"))return;let Q=LC.buildRawCollisionGroups(A);this._collider?this._collider.setCollisionGroups(Q):this._colliderDesc.setCollisionGroups(Q)}setEnabled(A){if(!this._requireNotRemoved("setEnabled"))return;this._collider?this._collider.setEnabled(A):this._colliderDesc.setEnabled(A)}setFriction(A){if(!this._requireNotRemoved("setFriction"))return;this._collider?this._collider.setFriction(A):this._colliderDesc.setFriction(A)}setFrictionCombineRule(A){if(!this._requireNotRemoved("setFrictionCombineRule"))return;this._collider?this._collider.setFrictionCombineRule(A):this._colliderDesc.setFrictionCombineRule(A)}setHalfExtents(A){if(!this._requireSimulated("setHalfExtents"))return;if(!this._requireNotRemoved("setHalfExtents"))return;if(this.shape!=="block")return l.error("Collider.setHalfExtents(): Collider is not a block collider!");this._collider.setHalfExtents(A)}setHalfHeight(A){if(!this._requireSimulated("setHalfHeight"))return;if(!this._requireNotRemoved("setHalfHeight"))return;if(this.shape!=="capsule"&&this.shape!=="cone"&&this.shape!=="cylinder"&&this.shape!=="round-cylinder")return l.error("Collider.setHalfHeight(): Collider is not a capsule, cone, cylinder, or round cylinder collider!");this._collider.setHalfHeight(A)}setMass(A){if(!this._requireNotRemoved("setMass"))return;this._collider?this._collider.setMass(A):this._colliderDesc.setMass(A)}setOnCollision(A){if(!this._requireNotRemoved("setOnCollision"))return;if(this._onCollision=A,this.isSimulated)if(this.enableCollisionEvents(!!A),A)this._simulation.colliderMap.setColliderCollisionCallback(this,A);else this._simulation.colliderMap.removeColliderCollisionCallback(this)}setRadius(A){if(!this._requireSimulated("setRadius"))return;if(!this._requireNotRemoved("setRadius"))return;if(this.shape!=="ball"&&this.shape!=="capsule"&&this.shape!=="cylinder"&&this.shape!=="round-cylinder")return l.error("Collider.setRadius(): Collider is not a ball, capsule, cylinder, or round cylinder collider!");this._collider.setRadius(A)}setRelativeRotation(A){if(!this._requireNotRemoved("setRelativeRotation"))return;this._relativeRotation=A,this._collider?this._collider.parent()?this._collider.setRotationWrtParent(A):this._collider.setRotation(A):this._colliderDesc.setRotation(A)}setRelativePosition(A){if(!this._requireNotRemoved("setRelativePosition"))return;this._relativePosition=A,this._collider?this._collider.parent()?this._collider.setTranslationWrtParent(A):this._collider.setTranslation(A):this._colliderDesc.setTranslation(A.x,A.y,A.z)}setSensor(A){if(!this._requireNotRemoved("setSensor"))return;this._collider?this._collider.setSensor(A):this._colliderDesc.setSensor(A)}setTag(A){if(!this._requireNotRemoved("setTag"))return;this._tag=A}setVoxel(A,Q){if(!this._requireNotRemoved("setVoxel"))return;if(!this._requireSimulated("setVoxel"))return;if(this.shape!=="voxels")return l.error("Collider.setVoxel(): Collider is not a voxels collider!");this._collider.setVoxel(A.x,A.y,A.z,Q)}addToSimulation(A,Q){if(!this._requireNotRemoved("addToSimulation"))return;if(!this._requireUnsimulated("addToSimulation"))return;if(Q){if(!Q.isSimulated)return l.error("Collider.addToSimulation(): Rigid body must be simulated before adding a collider to it!");if(Q.type==="dynamic"&&this.shape==="trimesh")l.warning("Collider.addToSimulation(): Trimesh colliders are strongly discouraged to be used with dynamic rigid bodies, they will not contribute any mass!")}if(this._simulation=A,this._parentRigidBody=Q,this._collider=this._simulation.createRawCollider(this._colliderDesc,Q?.rawRigidBody),this._colliderDesc=void 0,Q)Q.linkCollider(this);if(this._onCollision)this.setOnCollision(this._onCollision)}combineVoxelStates(A){if(!this._requireNotRemoved("combineVoxelStates"))return;if(!this._requireSimulated("combineVoxelStates"))return;if(!A.isSimulated)return l.error("Collider.combineVoxelStates(): Other collider is not simulated!");if(this.shape!=="voxels")return l.error("Collider.combineVoxelStates(): Collider is not a voxels collider!");if(A.shape!=="voxels")return l.error("Collider.combineVoxelStates(): Other collider is not a voxels collider!");this._collider.combineVoxelStates(A.rawCollider,0,0,0)}enableCollisionEvents(A){if(!this._requireNotRemoved("enableCollisionEvents"))return;let Q=this._collider?this._collider.activeEvents():this._colliderDesc.activeEvents,B=A?Q|WB.ActiveEvents.COLLISION_EVENTS:Q&~WB.ActiveEvents.COLLISION_EVENTS;(this._collider??this._colliderDesc).setActiveEvents(B),this._setActiveCollisionTypes()}enableContactForceEvents(A){if(!this._requireNotRemoved("enableContactForceEvents"))return;let Q=this._collider?this._collider.activeEvents():this._colliderDesc.activeEvents,B=A?Q|WB.ActiveEvents.CONTACT_FORCE_EVENTS:Q&~WB.ActiveEvents.CONTACT_FORCE_EVENTS;(this._collider??this._colliderDesc).setActiveEvents(B),this._setActiveCollisionTypes()}propagateVoxelChange(A,Q){if(!this._requireNotRemoved("propagateVoxelChange"))return;if(!this._requireSimulated("propagateVoxelChange"))return;if(!A.isSimulated)return l.error("Collider.propagateVoxelChange(): Other collider is not simulated!");if(this.shape!=="voxels")return l.error("Collider.propagateVoxelChange(): Collider is not a voxels collider!");if(A.shape!=="voxels")return l.error("Collider.propagateVoxelChange(): Other collider is not a voxels collider!");this._collider.propagateVoxelChange(A.rawCollider,Q.x,Q.y,Q.z,0,0,0)}removeFromSimulation(){if(!this._requireNotRemoved("removeFromSimulation"))return;if(!this._requireSimulated("removeFromSimulation"))return;if(this._simulation.removeRawCollider(this._collider),this._simulation=void 0,this._collider=void 0,this._parentRigidBody)this._parentRigidBody.unlinkCollider(this);this._parentRigidBody=void 0}setScale(A){if(!this._requireNotRemoved("scale"))return;let Q={x:A.x/this._scale.x,y:A.y/this._scale.y,z:A.z/this._scale.z};this.setRelativePosition({x:this.relativePosition.x*Q.x,y:this.relativePosition.y*Q.y,z:this.relativePosition.z*Q.z});let B=Math.max(this._scale.x,this._scale.z),J=Math.max(A.x,A.z)/B;switch(this._scale=A,this._shape){case"ball":{if(this._collider)this._collider.setRadius(this._collider.radius()*J);else this._colliderDesc.shape.radius*=J;return}case"block":{if(this._collider){let C=this._collider.halfExtents();this._collider.setHalfExtents({x:C.x*Q.x,y:C.y*Q.y,z:C.z*Q.z})}else this._colliderDesc.shape.halfExtents.x*=Q.x,this._colliderDesc.shape.halfExtents.y*=Q.y,this._colliderDesc.shape.halfExtents.z*=Q.z;return}case"capsule":{if(this._collider)this._collider.setHalfHeight(this._collider.halfHeight()*Q.y),this._collider.setRadius(this._collider.radius()*J);else this._colliderDesc.shape.halfHeight*=Q.y,this._colliderDesc.shape.radius*=J;return}case"cone":{if(this._collider)this._collider.setHalfHeight(this._collider.halfHeight()*Q.y),this._collider.setRadius(this._collider.radius()*J);else this._colliderDesc.shape.halfHeight*=Q.y,this._colliderDesc.shape.radius*=J;return}case"cylinder":{if(this._collider)this._collider.setHalfHeight(this._collider.halfHeight()*Q.y),this._collider.setRadius(this._collider.radius()*J);else this._colliderDesc.shape.halfHeight*=Q.y,this._colliderDesc.shape.radius*=J;return}case"round-cylinder":{if(this._collider)this._collider.setHalfHeight(this._collider.halfHeight()*Q.y),this._collider.setRoundRadius(this._collider.roundRadius()*J),this._collider.setRadius(this._collider.radius()*J);else this._colliderDesc.shape.halfHeight=this._colliderDesc.shape.halfHeight*Q.y,this._colliderDesc.shape.borderRadius=this._colliderDesc.shape.borderRadius*J,this._colliderDesc.shape.radius=this._colliderDesc.shape.radius*J;return}case"trimesh":{l.error("Collider.setScale(): Trimesh colliders cannot be scaled at runtime!");return}case"voxels":{l.error("Collider.setScale(): Voxels colliders cannot be scaled!");return}case"wedge":{l.error("Collider.setScale(): Wedge colliders cannot be scaled!");return}default:l.fatalError(`Collider.setScale(): ${this._shape} is not a valid collider shape!`)}}_applyColliderOptions(A){[["bounciness",this.setBounciness.bind(this)],["bouncinessCombineRule",this.setBouncinessCombineRule.bind(this)],["collisionGroups",this.setCollisionGroups.bind(this)],["enabled",this.setEnabled.bind(this)],["friction",this.setFriction.bind(this)],["frictionCombineRule",this.setFrictionCombineRule.bind(this)],["isSensor",this.setSensor.bind(this)],["mass",this.setMass.bind(this)],["onCollision",this.setOnCollision.bind(this)],["relativePosition",this.setRelativePosition.bind(this)],["relativeRotation",this.setRelativeRotation.bind(this)],["tag",this.setTag.bind(this)]].forEach(([B,Y])=>{if(A[B]!==void 0)Y.call(this,A[B])})}_autoAddToSimulation(A){if(A.simulation)this.addToSimulation(A.simulation,A.parentRigidBody)}_buildWedgeConvexHullVertices(A){let{x:Q,y:B,z:Y}=A,J=Q/2,C=Y/2,X=B/2;return new Float32Array([-J,0-X,-C,J,0-X,-C,J,0-X,C,-J,0-X,C,-J,B-X,-C,J,B-X,-C])}_createColliderDesc(A){let{shape:Q,flags:B}=A;switch(Q){case"ball":{if(!A.radius)l.fatalError("Ball collider must have a radius!");return WB.ColliderDesc.ball(A.radius)}case"block":{if(!A.halfExtents)l.fatalError("Block collider must have halfExtents!");return WB.ColliderDesc.cuboid(A.halfExtents.x,A.halfExtents.y,A.halfExtents.z)}case"capsule":{if(!A.halfHeight||!A.radius)l.fatalError("Capsule collider must have halfHeight and radius!");return WB.ColliderDesc.capsule(A.halfHeight,A.radius)}case"cone":{if(!A.radius||!A.halfHeight)l.fatalError("Cone collider must have radius and halfHeight!");return WB.ColliderDesc.cone(A.halfHeight,A.radius)}case"cylinder":{if(!A.radius||!A.halfHeight)l.fatalError("Cylinder collider must have radius and halfHeight!");return WB.ColliderDesc.cylinder(A.halfHeight,A.radius)}case"round-cylinder":{if(!A.radius||!A.halfHeight||!A.borderRadius)l.fatalError("Round cylinder collider must have radius, halfHeight, and borderRadius!");return WB.ColliderDesc.roundCylinder(A.halfHeight,A.radius,A.borderRadius)}case"trimesh":{if(!A.indices||!A.vertices)l.fatalError("Trimesh collider must have vertices and indices!");return WB.ColliderDesc.trimesh(A.vertices,A.indices,B)}case"voxels":{if(!A.coordinates||!A.size)l.fatalError("Voxels collider must have coordinates and size!");return WB.ColliderDesc.voxels(this._coordinatesToInt32Array(A.coordinates),A.size)}case"wedge":{if(!A.extents)l.fatalError("Wedge collider must have extents!");let Y=this._buildWedgeConvexHullVertices(A.extents),J=WB.ColliderDesc.convexHull(Y);if(!J)throw l.fatalError("Failed to create convex hull for wedge collider!"),Error("Convex hull creation failed");return J}default:l.fatalError(`Collider._createColliderDesc(): ${Q} is not a valid collider shape!`)}}_requireSimulated(A){if(!this.isSimulated)l.error(`Collider._requireSimulated(): Collider is not simulated, invoked method: ${A}()`);return this.isSimulated}_requireUnsimulated(A){if(this.isSimulated)l.error(`Collider._requireUnsimulated(): Collider is already simulated, invoked method: ${A}()`);return!this.isSimulated}_requireNotRemoved(A){if(this.isRemoved)l.error(`Collider._requireNotRemoved(): Collider is removed, invoked method: ${A}()`);return!this.isRemoved}_setActiveCollisionTypes(){(this._collider??this._colliderDesc).setActiveCollisionTypes(WB.ActiveCollisionTypes.DYNAMIC_DYNAMIC|WB.ActiveCollisionTypes.DYNAMIC_KINEMATIC|WB.ActiveCollisionTypes.DYNAMIC_FIXED|WB.ActiveCollisionTypes.KINEMATIC_KINEMATIC|WB.ActiveCollisionTypes.KINEMATIC_FIXED)}_coordinatesToInt32Array(A){let Q=new Int32Array(A.length*3);for(let B=0;Bthis.serializeBlockType(Q))}static serializeChunk(A){return{c:this.serializeVector(A.originCoordinate),b:Array.from(A.blocks),r:Array.from(A.blockRotations).flatMap(([Q,B])=>[Q,B.enumIndex])}}static serializeEntity(A){if(!A.world||A.id===void 0)l.fatalError("Serializer.serializeEntity(): Entity is not in a world");return{i:A.id,bt:A.blockTextureUri,bh:A.blockHalfExtents?this.serializeVector(A.blockHalfExtents):void 0,e:A.isEnvironmental,ec:A.emissiveColor?this.serializeRgbColor(A.emissiveColor):void 0,ei:A.emissiveIntensity,m:A.modelUri,ma:A.modelAnimations.map((Q)=>this.serializeEntityModelAnimation(Q)),mo:A.modelNodeOverrides.map((Q)=>this.serializeEntityModelNodeOverride(Q)),mt:A.modelTextureUri,n:A.name,o:A.opacity,ol:A.outline?this.serializeOutline(A.outline):void 0,p:this.serializeVector(A.position),pi:A.positionInterpolationMs,pe:A.parent?A.parent.id:void 0,pn:A.parentNodeName,r:this.serializeQuaternion(A.rotation),ri:A.rotationInterpolationMs,si:A.modelScaleInterpolationMs,sv:A.modelScale?this.serializeVector(A.modelScale):void 0,t:A.tintColor?this.serializeRgbColor(A.tintColor):void 0}}static serializeEntityModelAnimation(A){return{n:A.name,b:A.blendMode,c:A.clampWhenFinished,fi:A.fadesIn,fo:A.fadesOut,l:A.loopMode,p:A.isPlaying&&A.loopMode!==0,pr:A.playbackRate,w:A.weight}}static serializeEntityModelNodeOverride(A){return{n:A.nameMatch,ec:A.emissiveColor?this.serializeRgbColor(A.emissiveColor):void 0,ei:A.emissiveIntensity,h:A.isHidden,p:A.localPosition?this.serializeVector(A.localPosition):void 0,pi:A.localPositionInterpolationMs,r:A.localRotation?this.serializeQuaternion(A.localRotation):void 0,ri:A.localRotationInterpolationMs,s:A.localScale?this.serializeVector(A.localScale):void 0,si:A.localScaleInterpolationMs}}static serializeOutline(A){return{c:A.color?this.serializeRgbColor(A.color):void 0,ci:A.colorIntensity,th:A.thickness,o:A.opacity,oc:A.occluded}}static serializeParticleEmitter(A){if(!A.world||A.id===void 0)l.fatalError("Serializer.serializeParticleEmitter(): ParticleEmitter is not in a world");return{i:A.id,at:A.alphaTest,ce:A.colorEnd?this.serializeRgbColor(A.colorEnd):void 0,cev:A.colorEndVariance?this.serializeRgbColor(A.colorEndVariance):void 0,cs:A.colorStart?this.serializeRgbColor(A.colorStart):void 0,csv:A.colorStartVariance?this.serializeRgbColor(A.colorStartVariance):void 0,cie:A.colorIntensityEnd,ciev:A.colorIntensityEndVariance,cis:A.colorIntensityStart,cisv:A.colorIntensityStartVariance,e:A.attachedToEntity?.isSpawned?A.attachedToEntity.id:void 0,en:A.attachedToEntityNodeName,g:A.gravity?this.serializeVector(A.gravity):void 0,l:A.lifetime,le:A.lockToEmitter,lv:A.lifetimeVariance,mp:A.maxParticles,o:A.offset?this.serializeVector(A.offset):void 0,or:A.orientation?this.serializeParticleEmitterOrientation(A.orientation):void 0,ofr:A.orientationFixedRotation?this.serializeVector(A.orientationFixedRotation):void 0,oe:A.opacityEnd,oev:A.opacityEndVariance,os:A.opacityStart,osv:A.opacityStartVariance,p:A.position?this.serializeVector(A.position):void 0,pa:A.paused,pv:A.positionVariance?this.serializeVector(A.positionVariance):void 0,r:A.rate,rv:A.rateVariance,se:A.sizeEnd,sev:A.sizeEndVariance,ss:A.sizeStart,ssv:A.sizeStartVariance,t:A.transparent,tu:A.textureUri,v:A.velocity?this.serializeVector(A.velocity):void 0,vv:A.velocityVariance?this.serializeVector(A.velocityVariance):void 0}}static serializeParticleEmitterOrientation(A){switch(A){case"billboard":return 0;case"billboardY":return 1;case"fixed":return 2;case"velocity":return 3;default:return 0}}static serializePhysicsDebugRaycast(A){return{o:this.serializeVector(A.origin),d:this.serializeVector(A.direction),l:A.length,h:A.hit}}static serializePlayer(A){return{i:A.id,u:A.username,p:A.profilePictureUrl}}static serializePlayerCamera(A){return{cb:A.collidesWithBlocks,m:A.mode,e:A.attachedToEntity?.isSpawned?A.attachedToEntity.id:void 0,et:A.targetEntity?.isSpawned?A.targetEntity.id:void 0,fo:A.filmOffset,ffo:A.forwardOffset,fv:A.fov,h:Array.from(A.viewModelHiddenNodes),mp:A.viewModelPitchesWithCamera,my:A.viewModelYawsWithCamera,o:A.offset?this.serializeVector(A.offset):void 0,p:A.attachedToPosition?this.serializeVector(A.attachedToPosition):void 0,pt:A.targetPosition?this.serializeVector(A.targetPosition):void 0,s:Array.from(A.viewModelShownNodes),sa:A.shoulderAngle,z:A.zoom}}static serializeQuaternion(A){return[A.x,A.y,A.z,A.w]}static serializeRgbColor(A){return[A.r,A.g,A.b]}static serializeSceneUI(A){if(A.id===void 0)l.fatalError("Serializer.serializeSceneUI(): SceneUI is not loaded!");return{i:A.id,e:A.attachedToEntity?.isSpawned?A.attachedToEntity.id:void 0,o:A.offset?this.serializeVector(A.offset):void 0,p:A.position?this.serializeVector(A.position):void 0,s:A.state,t:A.templateId,v:A.viewDistance}}static serializeVector(A){return[A.x,A.y,A.z]}static serializeVectorBoolean(A){return[A.x,A.y,A.z]}static serializeWorld(A){return{i:A.id,ac:this.serializeRgbColor(A.ambientLightColor),ai:A.ambientLightIntensity,dc:this.serializeRgbColor(A.directionalLightColor),di:A.directionalLightIntensity,dp:this.serializeVector(A.directionalLightPosition),fc:A.fogColor?this.serializeRgbColor(A.fogColor):void 0,ff:A.fogFar,fn:A.fogNear,n:A.name,s:A.skyboxUri,si:A.skyboxIntensity,t:A.loop.timestepS}}}var PZA;((Y)=>{Y[Y.PLAYING=0]="PLAYING";Y[Y.PAUSED=1]="PAUSED";Y[Y.STOPPED=2]="STOPPED"})(PZA||={});var uf;((B)=>{B[B.ADDITIVE=0]="ADDITIVE";B[B.NORMAL=1]="NORMAL"})(uf||={});var JE;((Y)=>{Y[Y.ONCE=0]="ONCE";Y[Y.LOOP=1]="LOOP";Y[Y.PING_PONG=2]="PING_PONG"})(JE||={});var df;((U)=>{U.PAUSE="ENTITY_MODEL_ANIMATION.PAUSE";U.PLAY="ENTITY_MODEL_ANIMATION.PLAY";U.RESTART="ENTITY_MODEL_ANIMATION.RESTART";U.SET_BLEND_MODE="ENTITY_MODEL_ANIMATION.SET_BLEND_MODE";U.SET_CLAMP_WHEN_FINISHED="ENTITY_MODEL_ANIMATION.SET_CLAMP_WHEN_FINISHED";U.SET_FADES_IN="ENTITY_MODEL_ANIMATION.SET_FADES_IN";U.SET_FADES_OUT="ENTITY_MODEL_ANIMATION.SET_FADES_OUT";U.SET_LOOP_MODE="ENTITY_MODEL_ANIMATION.SET_LOOP_MODE";U.SET_PLAYBACK_RATE="ENTITY_MODEL_ANIMATION.SET_PLAYBACK_RATE";U.SET_WEIGHT="ENTITY_MODEL_ANIMATION.SET_WEIGHT";U.STOP="ENTITY_MODEL_ANIMATION.STOP"})(df||={});class CE{_name;_blendMode=1;_clampWhenFinished=!1;_entity;_fadesIn=!0;_fadesOut=!0;_loopMode=0;_state=2;_playbackRate=1;_weight=1;constructor(A){this._name=A.name,this._entity=A.entity,this._blendMode=A.blendMode??this._blendMode,this._clampWhenFinished=A.clampWhenFinished??this._clampWhenFinished,this._fadesIn=A.fadesIn??this._fadesIn,this._fadesOut=A.fadesOut??this._fadesOut,this._loopMode=A.loopMode??this._loopMode,this._state=A.play?0:this._state,this._playbackRate=A.playbackRate??this._playbackRate,this._weight=A.weight??this._weight}get name(){return this._name}get blendMode(){return this._blendMode}get clampWhenFinished(){return this._clampWhenFinished}get entity(){return this._entity}get fadesIn(){return this._fadesIn}get fadesOut(){return this._fadesOut}get isPlaying(){return this._state===0}get isPaused(){return this._state===1}get isStopped(){return this._state===2}get loopMode(){return this._loopMode}get playbackRate(){return this._playbackRate}get weight(){return this._weight}pause(){if(this._state===1)return;if(this._state=1,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.PAUSE",{entityModelAnimation:this})}play(){if(this._state===0)return;if(this._state=0,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.PLAY",{entityModelAnimation:this})}restart(){if(this._state=0,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.RESTART",{entityModelAnimation:this})}setBlendMode(A){if(this._blendMode===A)return;if(this._blendMode=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_BLEND_MODE",{entityModelAnimation:this,blendMode:A})}setClampWhenFinished(A){if(this._clampWhenFinished===A)return;if(this._clampWhenFinished=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_CLAMP_WHEN_FINISHED",{entityModelAnimation:this,clampWhenFinished:A})}setFadesIn(A){if(this._fadesIn===A)return;if(this._fadesIn=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_FADES_IN",{entityModelAnimation:this,fadesIn:A})}setFadesOut(A){if(this._fadesOut===A)return;if(this._fadesOut=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_FADES_OUT",{entityModelAnimation:this,fadesOut:A})}setLoopMode(A){if(this._loopMode===A)return;if(this._loopMode=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_LOOP_MODE",{entityModelAnimation:this,loopMode:A})}setPlaybackRate(A){if(this._playbackRate===A)return;if(this._playbackRate=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_PLAYBACK_RATE",{entityModelAnimation:this,playbackRate:A})}setWeight(A){if(this._weight===A)return;if(this._weight=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_WEIGHT",{entityModelAnimation:this,weight:A})}stop(){if(this._state===2)return;if(this._state=2,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.STOP",{entityModelAnimation:this})}serialize(){return GQ.serializeEntityModelAnimation(this)}}var cf;((F)=>{F.SET_EMISSIVE_COLOR="ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_COLOR";F.SET_EMISSIVE_INTENSITY="ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_INTENSITY";F.SET_HIDDEN="ENTITY_MODEL_NODE_OVERRIDE.SET_HIDDEN";F.SET_LOCAL_POSITION="ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION";F.SET_LOCAL_POSITION_INTERPOLATION_MS="ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION_INTERPOLATION_MS";F.SET_LOCAL_ROTATION="ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION";F.SET_LOCAL_ROTATION_INTERPOLATION_MS="ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION_INTERPOLATION_MS";F.SET_LOCAL_SCALE="ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE";F.SET_LOCAL_SCALE_INTERPOLATION_MS="ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE_INTERPOLATION_MS"})(cf||={});class XE{_nameMatch;_entity;_emissiveColor;_emissiveIntensity;_hidden=!1;_isRemoved=!1;_localPosition;_localPositionInterpolationMs;_localRotation;_localRotationInterpolationMs;_localScale;_localScaleInterpolationMs;constructor(A){this._nameMatch=A.nameMatch.toLowerCase(),this._entity=A.entity,this._emissiveColor=A.emissiveColor,this._emissiveIntensity=A.emissiveIntensity,this._hidden=A.hidden??this._hidden,this._localPosition=A.localPosition,this._localPositionInterpolationMs=A.localPositionInterpolationMs,this._localRotation=A.localRotation,this._localRotationInterpolationMs=A.localRotationInterpolationMs,this._localScale=typeof A.localScale==="number"?{x:A.localScale,y:A.localScale,z:A.localScale}:A.localScale,this._localScaleInterpolationMs=A.localScaleInterpolationMs}get nameMatch(){return this._nameMatch}get name(){return this._nameMatch}get entity(){return this._entity}get emissiveColor(){return this._emissiveColor}get emissiveIntensity(){return this._emissiveIntensity}get isHidden(){return this._hidden}get localPosition(){return this._localPosition}get localPositionInterpolationMs(){return this._localPositionInterpolationMs}get localRotation(){return this._localRotation}get localRotationInterpolationMs(){return this._localRotationInterpolationMs}get localScale(){return this._localScale}get localScaleInterpolationMs(){return this._localScaleInterpolationMs}remove(){this._entity.removeModelNodeOverride(this.nameMatch)}setEmissiveColor(A){if(this._isRemoved)return;if(!A&&!this._emissiveColor||A&&this._emissiveColor&&A.r===this._emissiveColor.r&&A.g===this._emissiveColor.g&&A.b===this._emissiveColor.b)return;if(this._emissiveColor=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_COLOR",{entityModelNodeOverride:this,emissiveColor:A})}setEmissiveIntensity(A){if(this._isRemoved)return;if(this._emissiveIntensity===A)return;if(this._emissiveIntensity=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_INTENSITY",{entityModelNodeOverride:this,emissiveIntensity:A})}setHidden(A){if(this._isRemoved)return;if(this._hidden===A)return;if(this._hidden=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_HIDDEN",{entityModelNodeOverride:this,hidden:A})}setLocalPosition(A){if(this._isRemoved)return;if(A===this._localPosition)return;if(A&&this._localPosition&&this._localPosition.x===A.x&&this._localPosition.y===A.y&&this._localPosition.z===A.z)return;if(this._localPosition=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION",{entityModelNodeOverride:this,localPosition:A})}setLocalPositionInterpolationMs(A){if(this._isRemoved)return;if(A===this._localPositionInterpolationMs)return;if(this._localPositionInterpolationMs=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION_INTERPOLATION_MS",{entityModelNodeOverride:this,interpolationMs:A})}setLocalRotation(A){if(this._isRemoved)return;if(A===this._localRotation)return;if(A&&this._localRotation&&this._localRotation.x===A.x&&this._localRotation.y===A.y&&this._localRotation.z===A.z&&this._localRotation.w===A.w)return;if(this._localRotation=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION",{entityModelNodeOverride:this,localRotation:A})}setLocalRotationInterpolationMs(A){if(this._isRemoved)return;if(A===this._localRotationInterpolationMs)return;if(this._localRotationInterpolationMs=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION_INTERPOLATION_MS",{entityModelNodeOverride:this,interpolationMs:A})}setLocalScale(A){if(this._isRemoved)return;if(A===this._localScale)return;if(typeof A==="number")A={x:A,y:A,z:A};if(A&&this._localScale&&this._localScale.x===A.x&&this._localScale.y===A.y&&this._localScale.z===A.z)return;if(this._localScale=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE",{entityModelNodeOverride:this,localScale:A})}setLocalScaleInterpolationMs(A){if(this._isRemoved)return;if(A===this._localScaleInterpolationMs)return;if(this._localScaleInterpolationMs=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE_INTERPOLATION_MS",{entityModelNodeOverride:this,interpolationMs:A})}serialize(){return GQ.serializeEntityModelNodeOverride(this)}markRemoved(){this._isRemoved=!0}}var TZA={type:"dynamic",softCcdPrediction:1},SZA=0.0016,kZA=Math.cos(0.026),XD;((q)=>{q.BLOCK_COLLISION="ENTITY.BLOCK_COLLISION";q.BLOCK_CONTACT_FORCE="ENTITY.BLOCK_CONTACT_FORCE";q.DESPAWN="ENTITY.DESPAWN";q.ENTITY_COLLISION="ENTITY.ENTITY_COLLISION";q.ENTITY_CONTACT_FORCE="ENTITY.ENTITY_CONTACT_FORCE";q.INTERACT="ENTITY.INTERACT";q.REMOVE_MODEL_NODE_OVERRIDE="ENTITY.REMOVE_MODEL_NODE_OVERRIDE";q.SET_BLOCK_TEXTURE_URI="ENTITY.SET_BLOCK_TEXTURE_URI";q.SET_EMISSIVE_COLOR="ENTITY.SET_EMISSIVE_COLOR";q.SET_EMISSIVE_INTENSITY="ENTITY.SET_EMISSIVE_INTENSITY";q.SET_MODEL_SCALE="ENTITY.SET_MODEL_SCALE";q.SET_MODEL_SCALE_INTERPOLATION_MS="ENTITY.SET_MODEL_SCALE_INTERPOLATION_MS";q.SET_MODEL_TEXTURE_URI="ENTITY.SET_MODEL_TEXTURE_URI";q.SET_OPACITY="ENTITY.SET_OPACITY";q.SET_OUTLINE="ENTITY.SET_OUTLINE";q.SET_PARENT="ENTITY.SET_PARENT";q.SET_POSITION_INTERPOLATION_MS="ENTITY.SET_POSITION_INTERPOLATION_MS";q.SET_ROTATION_INTERPOLATION_MS="ENTITY.SET_ROTATION_INTERPOLATION_MS";q.SET_TINT_COLOR="ENTITY.SET_TINT_COLOR";q.SPAWN="ENTITY.SPAWN";q.TICK="ENTITY.TICK";q.UPDATE_POSITION="ENTITY.UPDATE_POSITION";q.UPDATE_ROTATION="ENTITY.UPDATE_ROTATION"})(XD||={});class X0 extends y7{_id;_blockHalfExtents;_blockTextureUri;_controller;_isEnvironmental=!1;_modelAnimations=new Map;_modelNodeOverrides=new Map;_modelPreferredShape;_modelScale={x:1,y:1,z:1};_modelScaleInterpolationMs;_modelTextureUri;_modelUri;_name;_opacity;_outline;_parent;_parentNodeName;_positionInterpolationMs;_rotationInterpolationMs;_tag;_tintColor;_emissiveColor;_emissiveIntensity;_lastUpdatedPosition={x:0,y:0,z:0};_lastUpdatedRotation={x:0,y:0,z:0,w:1};_lastParentlessType="dynamic";_world;_positionUpdateThresholdSq;_rotationUpdateThreshold;constructor(A){let Q="blockTextureUri"in A,B="modelUri"in A;if(!Q===!B)l.fatalError("Entity.constructor(): Entity data must include a blockTextureUri or modelUri, but not both.");if(Q&&!A.blockHalfExtents)l.fatalError("Entity.constructor(): Block entity must have blockHalfExtents!");if(A.parent&&!A.parent.isSpawned)l.fatalError("Entity.constructor(): Parent entity must be spawned before child entity!");if(A.parent?.modelUri&&A.parentNodeName&&!yY.instance.modelHasNode(A.parent.modelUri,A.parentNodeName))l.fatalError(`Entity.constructor(): Parent node name ${A.parentNodeName} not found in parent model ${A.parent.modelUri}!`);super(A.rigidBodyOptions??TZA);if(Q)this._blockHalfExtents=A.blockHalfExtents,this._blockTextureUri=A.blockTextureUri;if(B){let Y=this._modelScale=typeof A.modelScale==="number"?{x:A.modelScale,y:A.modelScale,z:A.modelScale}:A.modelScale??{x:1,y:1,z:1};if(this._modelPreferredShape=A.modelPreferredShape,this._modelScale=Y,this._modelScaleInterpolationMs=A.modelScaleInterpolationMs,this._modelTextureUri=A.modelTextureUri,this._modelUri=A.modelUri,!this._modelUri.startsWith("http"))if(yY.instance.hasModel(this._modelUri))A.modelAnimations?.forEach((J)=>{this._modelAnimations.set(J.name,new CE({...J,entity:this}))});else l.error(`Entity.constructor(): Model ${this._modelUri} does not exist!`);A.modelNodeOverrides?.forEach((J)=>{this._modelNodeOverrides.set(J.nameMatch.toLowerCase(),new XE({...J,entity:this}))})}if(this._emissiveColor=A.emissiveColor,this._emissiveIntensity=A.emissiveIntensity,this._isEnvironmental=A.isEnvironmental??!1,this._name=A.name??"Nameless",this._opacity=A.opacity??1,this._outline=A.outline,this._parent=A.parent,this._parentNodeName=A.parentNodeName,this._positionInterpolationMs=A.positionInterpolationMs,this._rotationInterpolationMs=A.rotationInterpolationMs,this._tag=A.tag,this._tintColor=A.tintColor,this._positionUpdateThresholdSq=SZA,this._rotationUpdateThreshold=kZA,A.controller)this._controller=A.controller,this._controller.attach(this)}get id(){return this._id}get availableModelAnimationNames(){return this.isModelEntity?yY.instance.getAnimationNames(this._modelUri):[]}get availableModelNodeNames(){return this.isModelEntity?yY.instance.getNodeNames(this._modelUri):[]}get blockHalfExtents(){return this._blockHalfExtents}get blockTextureUri(){return this._blockTextureUri}get controller(){return this._controller}get emissiveColor(){return this._emissiveColor}get emissiveIntensity(){return this._emissiveIntensity}get depth(){return this.isModelEntity?yY.instance.getDepth(this._modelUri)*this._modelScale.z:this._blockHalfExtents.z*2}get height(){return this.isModelEntity?yY.instance.getHeight(this._modelUri)*this._modelScale.y:this._blockHalfExtents.y*2}get modelAnimations(){return Array.from(this._modelAnimations.values())}get modelNodeOverrides(){return Array.from(this._modelNodeOverrides.values())}get modelPreferredShape(){return this._modelPreferredShape}get modelScale(){return this._modelScale}get modelScaleInterpolationMs(){return this._modelScaleInterpolationMs}get modelTextureUri(){return this._modelTextureUri}get modelUri(){return this._modelUri}get name(){return this._name}get opacity(){return this._opacity}get outline(){return this._outline}get parent(){return this._parent}get parentNodeName(){return this._parentNodeName}get positionInterpolationMs(){return this._positionInterpolationMs}get rotationInterpolationMs(){return this._rotationInterpolationMs}get tag(){return this._tag}get tintColor(){return this._tintColor}get isBlockEntity(){return!!this._blockTextureUri}get isEnvironmental(){return this._isEnvironmental}get isModelEntity(){return!!this._modelUri}get isSpawned(){return!!this._world}get width(){return this.isModelEntity?yY.instance.getWidth(this._modelUri)*this._modelScale.x:this._blockHalfExtents.x*2}get world(){return this._world}clearModelNodeOverrides(){if(!this.isModelEntity)return;this.removeModelNodeOverrides(Array.from(this._modelNodeOverrides.keys()))}despawn(){if(!this._requireSpawned("despawn"))return;if(this._world.entityManager.getEntityChildren(this).forEach((A)=>{A.despawn()}),this._controller)this._controller.detach(this),this._controller.despawn(this);if(this.emitWithWorld(this._world,"ENTITY.DESPAWN",{entity:this}),this.isSimulated)this.removeFromSimulation();this._world.entityManager.unregisterEntity(this),this._world.audioManager.unregisterEntityAttachedAudios(this),this._world.particleEmitterManager.despawnEntityAttachedParticleEmitters(this),this._world.sceneUIManager.unloadEntityAttachedSceneUIs(this),this._id=void 0,this._world=void 0}getModelAnimation(A){if(!this.isModelEntity)return;let Q=this._modelAnimations.get(A);if(!Q)Q=new CE({name:A,entity:this}),this._modelAnimations.set(A,Q);return Q}getModelNodeOverride(A){if(!this.isModelEntity)return;A=A.toLowerCase();let Q=this._modelNodeOverrides.get(A);if(!Q)Q=new XE({nameMatch:A,entity:this}),this._modelNodeOverrides.set(A,Q);return Q}interact(A,Q){if(!this._requireSpawned("interact"))return;this.emitWithWorld(this._world,"ENTITY.INTERACT",{entity:this,player:A,raycastHit:Q})}setBlockTextureUri(A){if(this._blockTextureUri===A)return;if(this._blockTextureUri=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_BLOCK_TEXTURE_URI",{entity:this,blockTextureUri:A})}removeModelNodeOverride(A){if(!this.isModelEntity)return;A=A.toLowerCase();let Q=this._modelNodeOverrides.get(A);if(!Q)return;if(Q.markRemoved(),this._modelNodeOverrides.delete(A),this.isSpawned)this.emitWithWorld(this._world,"ENTITY.REMOVE_MODEL_NODE_OVERRIDE",{entity:this,entityModelNodeOverride:Q})}removeModelNodeOverrides(A){if(!this.isModelEntity)return;for(let Q of A)this.removeModelNodeOverride(Q)}setEmissiveColor(A){if(!A&&!this._emissiveColor||A&&this._emissiveColor&&A.r===this._emissiveColor.r&&A.g===this._emissiveColor.g&&A.b===this._emissiveColor.b)return;if(this._emissiveColor=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_EMISSIVE_COLOR",{entity:this,emissiveColor:A})}setEmissiveIntensity(A){if(this._emissiveIntensity===A)return;if(this._emissiveIntensity=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_EMISSIVE_INTENSITY",{entity:this,emissiveIntensity:A})}setModelScale(A){if(!this.isModelEntity)return;if(typeof A==="number")A={x:A,y:A,z:A};if(this._modelScale===A)return;let Q={x:A.x/this._modelScale.x,y:A.y/this._modelScale.y,z:A.z/this._modelScale.z};if(this._modelScale=A,this.colliders.forEach((B)=>B.setScale(Q)),this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_MODEL_SCALE",{entity:this,modelScale:A})}setModelScaleInterpolationMs(A){if(!this.isModelEntity)return;if(this._modelScaleInterpolationMs===A)return;if(this._modelScaleInterpolationMs=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_MODEL_SCALE_INTERPOLATION_MS",{entity:this,interpolationMs:A})}setModelTextureUri(A){if(!this.isModelEntity||this._modelTextureUri===A)return;if(this._modelTextureUri=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_MODEL_TEXTURE_URI",{entity:this,modelTextureUri:A})}setOpacity(A){if(this._opacity===A)return;if(this._opacity=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_OPACITY",{entity:this,opacity:A})}setOutline(A,Q){if(this._outline=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_OUTLINE",{entity:this,forPlayer:Q,outline:A})}setParent(A,Q,B,Y){if(A&&!A.isSpawned)return l.error("Entity.setParent(): Parent entity is not spawned, cannot set parent!");if(!this._parent&&A)this._lastParentlessType=this.type;if(this._parent=A,this._parentNodeName=Q,!this.isSpawned)return;if(this.colliders.forEach((J)=>J.setEnabled(!A)),this.setType(!A?this._lastParentlessType:"kinematic_velocity"),this.setPosition(B??{x:0,y:0,z:0}),this.setRotation(Y??{x:0,y:0,z:0,w:1}),!this.isKinematicPositionBased)this.resetAngularVelocity(),this.resetForces(),this.resetLinearVelocity(),this.resetTorques();this.emitWithWorld(this._world,"ENTITY.SET_PARENT",{entity:this,parent:A,parentNodeName:Q})}setPositionInterpolationMs(A){if(this._positionInterpolationMs===A)return;if(this._positionInterpolationMs=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_POSITION_INTERPOLATION_MS",{entity:this,interpolationMs:A})}setRotationInterpolationMs(A){if(this._rotationInterpolationMs===A)return;if(this._rotationInterpolationMs=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_ROTATION_INTERPOLATION_MS",{entity:this,interpolationMs:A})}setTintColor(A){if(!A&&!this._tintColor||A&&this._tintColor&&A.r===this._tintColor.r&&A.g===this._tintColor.g&&A.b===this._tintColor.b)return;if(this._tintColor=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_TINT_COLOR",{entity:this,tintColor:A})}spawn(A,Q,B){if(this.isSpawned)return l.error(`Entity.spawn(): Entity ${this._name} is already spawned with id ${this._id}!`);if(!this.isSimulated)this.addToSimulation(A.simulation);if(this._blockTextureUri&&this._blockHalfExtents&&this.numColliders===0)this.addChildColliderToSimulation(new h9(h9.optionsFromBlockHalfExtents(this._blockHalfExtents)));if(this._modelUri&&this.numColliders===0&&this._modelPreferredShape!=="none")this.addChildColliderToSimulation(new h9(h9.optionsFromModelUri(this._modelUri,this._modelScale,this._modelPreferredShape)));if(this.colliders.forEach((Y)=>{if(this.hasListeners("ENTITY.BLOCK_COLLISION")||this.hasListeners("ENTITY.ENTITY_COLLISION"))Y.enableCollisionEvents(!0);if(this.hasListeners("ENTITY.BLOCK_CONTACT_FORCE")||this.hasListeners("ENTITY.ENTITY_CONTACT_FORCE"))Y.enableContactForceEvents(!0);if(LC.isDefaultCollisionGroups(Y.collisionGroups)){let J=this.isEnvironmental?[8]:[Y.isSensor?4:2],C=this.isEnvironmental?[65535&~8&~1]:[65535];Y.setCollisionGroups({belongsTo:J,collidesWith:C})}}),this.setPosition(Q),B)this.setRotation(B);if(this._id=A.entityManager.registerEntity(this),this._world=A,this._controller)this._controller.spawn(this);if(this._parent)this.setParent(this._parent,this._parentNodeName,Q,B);this.colliders.forEach((Y)=>{A.simulation.colliderMap.setColliderEntity(Y,this)}),this.emitWithWorld(A,"ENTITY.SPAWN",{entity:this})}stopAllModelAnimations(A){for(let Q of this._modelAnimations.values()){if(A?.(Q))continue;Q.stop()}}stopModelAnimations(A){for(let Q of A){let B=this._modelAnimations.get(Q);if(!B)continue;B.stop()}}checkAndEmitUpdates(){if(!this._requireSpawned("checkAndEmitUpdates"))return;let A=this.position,Q=this.rotation;if(this._rotationExceedsThreshold(Q,this._lastUpdatedRotation))this._lastUpdatedRotation=Q,this.emitWithWorld(this._world,"ENTITY.UPDATE_ROTATION",{entity:this,rotation:Q});if(this._positionExceedsThreshold(A,this._lastUpdatedPosition))this._lastUpdatedPosition=A,this.emitWithWorld(this._world,"ENTITY.UPDATE_POSITION",{entity:this,position:A})}serialize(){return GQ.serializeEntity(this)}tick(A){if(this.emit("ENTITY.TICK",{entity:this,tickDeltaMs:A}),this._controller)this._controller.tick(this,A)}_positionExceedsThreshold(A,Q){let B=A.x-Q.x,Y=A.y-Q.y,J=A.z-Q.z;return B*B+Y*Y+J*J>this._positionUpdateThresholdSq}_requireSpawned(A){if(!this.isSpawned)l.error(`Entity._requireSpawned(): Entity ${this._name} is not spawned, cannot invoke ${A}()!`);return this.isSpawned}_rotationExceedsThreshold(A,Q){return Math.abs(A.x*Q.x+A.y*Q.y+A.z*Q.z+A.w*Q.w){X.ATTACH="BASE_ENTITY_CONTROLLER.ATTACH";X.DESPAWN="BASE_ENTITY_CONTROLLER.DESPAWN";X.DETACH="BASE_ENTITY_CONTROLLER.DETACH";X.SPAWN="BASE_ENTITY_CONTROLLER.SPAWN";X.TICK="BASE_ENTITY_CONTROLLER.TICK";X.TICK_WITH_PLAYER_INPUT="BASE_ENTITY_CONTROLLER.TICK_WITH_PLAYER_INPUT"})(_ZA||={});class $Z extends BQ{attach(A){this.emit("BASE_ENTITY_CONTROLLER.ATTACH",{entity:A})}despawn(A){this.emit("BASE_ENTITY_CONTROLLER.DESPAWN",{entity:A})}detach(A){this.emit("BASE_ENTITY_CONTROLLER.DETACH",{entity:A})}spawn(A){this.emit("BASE_ENTITY_CONTROLLER.SPAWN",{entity:A})}tickWithPlayerInput(A,Q,B,Y){this.emit("BASE_ENTITY_CONTROLLER.TICK_WITH_PLAYER_INPUT",{entity:A,input:Q,cameraOrientation:B,deltaTimeMs:Y})}tick(A,Q){this.emit("BASE_ENTITY_CONTROLLER.TICK",{entity:A,deltaTimeMs:Q})}}var vZA=0.099856;class UZ extends $Z{faceSpeed=0;idleLoopedAnimations=[];idleLoopedAnimationsSpeed;jumpOneshotAnimations=[];moveLoopedAnimations=[];moveLoopedAnimationsSpeed;moveSpeed=0;_faceTarget;_jumpHeight=0;_moveCompletesWhenStuck=!1;_moveIgnoreAxes={};_moveStartMoveAnimations=!1;_moveStartIdleAnimationsOnCompletion=!0;_moveStoppingDistanceSquared=vZA;_moveStuckAccumulatorMs=0;_moveStuckLastPosition;_moveTarget;_onFace;_onFaceComplete;_onMove;_onMoveComplete;_stopFaceRequested=!1;_stopMoveRequested=!1;constructor(A={}){super();this.idleLoopedAnimations=A.idleLoopedAnimations??this.idleLoopedAnimations,this.idleLoopedAnimationsSpeed=A.idleLoopedAnimationsSpeed??this.idleLoopedAnimationsSpeed,this.jumpOneshotAnimations=A.jumpOneshotAnimations??this.jumpOneshotAnimations,this.moveLoopedAnimations=A.moveLoopedAnimations??this.moveLoopedAnimations,this.moveLoopedAnimationsSpeed=A.moveLoopedAnimationsSpeed??this.moveLoopedAnimationsSpeed}spawn(A){super.spawn(A),this._startIdleAnimations(A)}face(A,Q,B){this._faceTarget=A,this.faceSpeed=Q,this._onFace=B?.faceCallback,this._onFaceComplete=B?.faceCompleteCallback}jump(A){this._jumpHeight=A}move(A,Q,B){this.moveSpeed=Q,this._moveCompletesWhenStuck=B?.moveCompletesWhenStuck??!1,this._moveIgnoreAxes=B?.moveIgnoreAxes??{},this._moveStartIdleAnimationsOnCompletion=B?.moveStartIdleAnimationsOnCompletion??!0,this._moveStartMoveAnimations=!0,this._moveStoppingDistanceSquared=B?.moveStoppingDistance?B.moveStoppingDistance**2:vZA,this._moveTarget=A,this._onMove=B?.moveCallback,this._onMoveComplete=B?.moveCompleteCallback,this._moveStuckAccumulatorMs=0,this._moveStuckLastPosition=void 0}stopFace(){this._stopFaceRequested=!0}stopMove(){this._stopMoveRequested=!0}tick(A,Q){if(super.tick(A,Q),!this._moveTarget&&!this._faceTarget&&!this._jumpHeight)return;if(this._moveStartMoveAnimations)this._startMoveAnimations(A),this._moveStartMoveAnimations=!1;let B=Q/1000,Y=A.position;if(A.isDynamic&&this._jumpHeight>0){let J=Math.abs(A.world.simulation.gravity.y),C=Math.sqrt(2*J*this._jumpHeight);A.applyImpulse({x:0,y:C*A.mass,z:0}),this._jumpHeight=0,this._startJumpAnimations(A)}if(this._moveTarget){let J={x:this._moveIgnoreAxes.x?0:this._moveTarget.x-Y.x,y:this._moveIgnoreAxes.y?0:this._moveTarget.y-Y.y,z:this._moveIgnoreAxes.z?0:this._moveTarget.z-Y.z},C=J.x*J.x+J.y*J.y+J.z*J.z,X=!1;if(this._moveCompletesWhenStuck){if(this._moveStuckAccumulatorMs+=Q,this._moveStuckAccumulatorMs>=500){if(this._moveStuckLastPosition){let G=Y.x-this._moveStuckLastPosition.x,W=Y.y-this._moveStuckLastPosition.y,F=Y.z-this._moveStuckLastPosition.z;X=Math.sqrt(G*G+W*W+F*F)this._moveStoppingDistanceSquared&&!this._stopMoveRequested&&!X){let G=Math.sqrt(C),W=this.moveSpeed*B,Z=Math.min(G,W)/G,U={x:Y.x+J.x*Z,y:Y.y+J.y*Z,z:Y.z+J.z*Z};if(A.setPosition(U),this._onMove)this._onMove(U,this._moveTarget)}else{if(this._moveStuckAccumulatorMs=0,this._moveStuckLastPosition=void 0,this._moveTarget=void 0,this._stopMoveRequested=!1,this._moveStartIdleAnimationsOnCompletion)this._startIdleAnimations(A);if(this._onMoveComplete){let G=this._onMoveComplete;this._onMove=void 0,this._onMoveComplete=void 0,G(Y)}}}if(this._faceTarget){let J={x:this._faceTarget.x-Y.x,z:this._faceTarget.z-Y.z},C=Math.atan2(-J.x,-J.z),X=A.rotation,G=Math.atan2(2*(X.w*X.y),1-2*(X.y*X.y)),W=C-G;while(W>Math.PI)W-=2*Math.PI;while(W<-Math.PI)W+=2*Math.PI;if(Math.abs(W)>0.01&&!this._stopFaceRequested){let F=this.faceSpeed*B,Z=Math.abs(W){if(this._behavior)this._behavior.tick(this,this._world,J)})}get isSpawned(){return this._spawned}get world(){return this._world}get controller(){return this.entity.controller}setBehavior(A){this._behavior=A}spawn(A){if(this._spawned)return;let Q=A??{x:0,y:10,z:0};this.entity.spawn(this._world,Q),this._spawned=!0}teleport(A){if(!this._spawned)return;this.entity.setPosition(A)}despawn(){if(!this._spawned)return;this.entity.despawn(),this._spawned=!1}}class G9{static _instance;static get instance(){if(!G9._instance)G9._instance=new G9;return G9._instance}_bots=new Map;get botCount(){return this._bots.size}spawnBot(A,Q){let B=new GD(A,Q);return B.spawn(Q?.spawnPosition),this._bots.set(B.id,B),B}spawnBots(A,Q,B){let Y=[];for(let J=0;J=this._changeIntervalMs)this._elapsed=0,this._pickNewTarget(A)}_pickNewTarget(A){let Q=Math.random()*Math.PI*2,B=Math.random()*this._moveRadius,Y=this._originX+Math.cos(Q)*B,J=this._originZ+Math.sin(Q)*B,C=A.entity.position;A.controller.move({x:Y,y:C.y,z:J},this._moveSpeed),A.controller.face({x:Y,y:C.y,z:J},5)}}class FD{name="chase";_chaseSpeed;_detectionRadius;_updateIntervalMs;_elapsed=0;constructor(A){this._chaseSpeed=A?.chaseSpeed??5,this._detectionRadius=A?.detectionRadius??50,this._updateIntervalMs=A?.updateIntervalMs??500}tick(A,Q,B){if(!A.isSpawned)return;if(this._elapsed+=B,this._elapsed=3000)this._moveElapsed=0,this._moveToRandom(A);if(this._elapsed+=B,this._elapsed{Y.post("Profiler.enable",()=>{Y.post("Profiler.start",()=>{setTimeout(()=>{Y.post("Profiler.stop",(X,{profile:G})=>{if(Y.post("Profiler.disable"),Y.disconnect(),X){C(X);return}if(Q)yZA(Q,JSON.stringify(G));J(G)})},A)})})})}static async captureHeapSnapshot(A){let Q=await gZA();if(!Q)return console.warn("CpuProfiler: node:inspector not available in this runtime"),"";let B=new Q.Session;B.connect();let Y="";return B.on("HeapProfiler.addHeapSnapshotChunk",(J)=>{let C=J.params?.chunk;if(typeof C==="string")Y+=C}),new Promise((J,C)=>{B.post("HeapProfiler.takeHeapSnapshot",void 0,(X)=>{if(B.disconnect(),X){C(X);return}if(A)yZA(A,Y);J(Y)})})}}var hZA=5,pf;((U)=>{U.PAUSE="AUDIO.PAUSE";U.PLAY="AUDIO.PLAY";U.PLAY_RESTART="AUDIO.PLAY_RESTART";U.SET_ATTACHED_TO_ENTITY="AUDIO.SET_ATTACHED_TO_ENTITY";U.SET_CUTOFF_DISTANCE="AUDIO.SET_CUTOFF_DISTANCE";U.SET_DETUNE="AUDIO.SET_DETUNE";U.SET_DISTORTION="AUDIO.SET_DISTORTION";U.SET_POSITION="AUDIO.SET_POSITION";U.SET_PLAYBACK_RATE="AUDIO.SET_PLAYBACK_RATE";U.SET_REFERENCE_DISTANCE="AUDIO.SET_REFERENCE_DISTANCE";U.SET_VOLUME="AUDIO.SET_VOLUME"})(pf||={});class $D extends BQ{_id;_attachedToEntity;_cutoffDistance;_duration;_detune;_distortion;_loop;_offset;_position;_playbackRate;_playing;_referenceDistance;_startTick;_uri;_volume;_world;constructor(A){super();this._attachedToEntity=A.attachedToEntity,this._cutoffDistance=A.cutoffDistance??(this.isPositional?(A.referenceDistance??hZA)+10:0),this._duration=A.duration,this._detune=A.detune??0,this._distortion=A.distortion??0,this._loop=A.loop??!1,this._offset=A.offset??0,this._position=A.position,this._playing=!1,this._playbackRate=A.playbackRate??1,this._referenceDistance=A.referenceDistance??(this.isPositional?hZA:0),this._uri=A.uri,this._volume=A.volume??0.5}get id(){return this._id}get attachedToEntity(){return this._attachedToEntity}get cutoffDistance(){return this._cutoffDistance}get duration(){return this._duration}get detune(){return this._detune}get distortion(){return this._distortion}get loop(){return this._loop}get offset(){return this._offset}get isLoaded(){return this._id!==void 0}get isPlaying(){return this._playing}get isPositional(){return this._attachedToEntity!==void 0||this._position!==void 0}get position(){return this._position}get playbackRate(){return this._playbackRate}get referenceDistance(){return this._referenceDistance}get startTick(){return this._startTick}get uri(){return this._uri}get volume(){return this._volume}get world(){return this._world}play(A,Q=!1){if(this.isPlaying&&!Q)return;if(this._attachedToEntity&&!this._attachedToEntity.isSpawned)return l.error(`Audio.play(): Attached entity ${this._attachedToEntity.id} is not spawned!`);let B=Q&&this._id!==void 0?"AUDIO.PLAY_RESTART":"AUDIO.PLAY";this._id??=A.audioManager.registerAudio(this),this._playing=!0,this._startTick=A.loop.currentTick,this._world=this._world??A,this.emitWithWorld(A,B,{audio:this})}pause(){if(!this.isPlaying||!this._world)return;this._playing=!1,this.emitWithWorld(this._world,"AUDIO.PAUSE",{audio:this})}setAttachedToEntity(A){if(!this._requirePositional())return;if(!A.isSpawned)return l.error(`Audio.setAttachedToEntity(): Entity ${A.id} is not spawned!`);if(this._attachedToEntity===A)return;if(this._attachedToEntity=A,this._position=void 0,this.isLoaded&&this._world)this.emitWithWorld(this._world,"AUDIO.SET_ATTACHED_TO_ENTITY",{audio:this,entity:A})}setCutoffDistance(A){if(!this._requirePositional())return;if(A<=0||A1)return l.error("Volume must be between 0 and 1");if(this._volume===A)return;if(this._volume=A,this.isLoaded&&this._world)this.emitWithWorld(this._world,"AUDIO.SET_VOLUME",{audio:this,volume:A})}serialize(){return GQ.serializeAudio(this)}_requirePositional(){if(!this.isPositional)l.error("Audio._requirePositional(): Audio is not positional. and therefor does not support the invoked method.");return this.isPositional}}class UD{_audios=new Map;_nextAudioId=1;_world;constructor(A){this._world=A}get world(){return this._world}getAllAudios(){return Array.from(this._audios.values())}getAllEntityAttachedAudios(A){return this.getAllAudios().filter((Q)=>Q.attachedToEntity===A)}getAllLoopedAudios(){return this.getAllAudios().filter((A)=>A.loop)}getAllOneshotAudios(){return this.getAllAudios().filter((A)=>!A.loop)}registerAudio(A){if(A.id!==void 0)l.fatalError(`AudioManager.registerAudio(): Provided audio instance with uri ${A.uri} is already assigned the id ${A.id}!`);let Q=this._nextAudioId;return this._audios.set(Q,A),this._nextAudioId++,Q}unregisterAudio(A){if(A.id===void 0)return l.error(`AudioManager.unregisterAudio(): Provided audio instance with uri ${A.uri} is not assigned an id!`);A.pause(),this._audios.delete(A.id)}unregisterEntityAttachedAudios(A){this.getAllEntityAttachedAudios(A).forEach((Q)=>{this.unregisterAudio(Q)})}}var w8={Y_0:{enumIndex:0,matrix:[1,0,0,0,1,0,0,0,1]},Y_90:{enumIndex:1,matrix:[0,0,-1,0,1,0,1,0,0]},Y_180:{enumIndex:2,matrix:[-1,0,0,0,1,0,0,0,-1]},Y_270:{enumIndex:3,matrix:[0,0,1,0,1,0,-1,0,0]},NY_0:{enumIndex:4,matrix:[-1,0,0,0,-1,0,0,0,1]},NY_90:{enumIndex:5,matrix:[0,0,-1,0,-1,0,-1,0,0]},NY_180:{enumIndex:6,matrix:[1,0,0,0,-1,0,0,0,-1]},NY_270:{enumIndex:7,matrix:[0,0,1,0,-1,0,1,0,0]},X_0:{enumIndex:8,matrix:[0,-1,0,1,0,0,0,0,1]},X_90:{enumIndex:9,matrix:[0,0,-1,1,0,0,0,-1,0]},X_180:{enumIndex:10,matrix:[0,1,0,1,0,0,0,0,-1]},X_270:{enumIndex:11,matrix:[0,0,1,1,0,0,0,1,0]},NX_0:{enumIndex:12,matrix:[0,1,0,-1,0,0,0,0,1]},NX_90:{enumIndex:13,matrix:[0,0,-1,-1,0,0,0,1,0]},NX_180:{enumIndex:14,matrix:[0,-1,0,-1,0,0,0,0,-1]},NX_270:{enumIndex:15,matrix:[0,0,1,-1,0,0,0,-1,0]},Z_0:{enumIndex:16,matrix:[1,0,0,0,0,1,0,-1,0]},Z_90:{enumIndex:17,matrix:[0,1,0,0,0,1,1,0,0]},Z_180:{enumIndex:18,matrix:[-1,0,0,0,0,1,0,1,0]},Z_270:{enumIndex:19,matrix:[0,-1,0,0,0,1,-1,0,0]},NZ_0:{enumIndex:20,matrix:[1,0,0,0,0,-1,0,1,0]},NZ_90:{enumIndex:21,matrix:[0,-1,0,0,0,-1,1,0,0]},NZ_180:{enumIndex:22,matrix:[-1,0,0,0,0,-1,0,-1,0]},NZ_270:{enumIndex:23,matrix:[0,1,0,0,0,-1,-1,0,0]}};class WE{globalCoordinate;blockType;constructor(A,Q){this.globalCoordinate=A,this.blockType=Q}static fromGlobalCoordinate(A,Q){return new WE(A,Q)}getNeighborGlobalCoordinateFromHitPoint(A){let Q={x:A.x-(this.globalCoordinate.x+0.5),y:A.y-(this.globalCoordinate.y+0.5),z:A.z-(this.globalCoordinate.z+0.5)},B="x",Y=Math.abs(Q.x);for(let[J,C]of Object.entries(Q))if(Math.abs(C)>Y)B=J,Y=Math.abs(C);return{x:this.globalCoordinate.x+(B==="x"?Math.sign(Q.x):0),y:this.globalCoordinate.y+(B==="y"?Math.sign(Q.y):0),z:this.globalCoordinate.z+(B==="z"?Math.sign(Q.z):0)}}}import _JB from"crypto";import g7 from"fs";import j8 from"path";var U0={ATLAS_DIR:".atlas",ATLAS_PNG_FILE:"atlas.png",ATLAS_KTX2_FILE:"atlas.ktx2",ATLAS_MANIFEST_FILE:"atlas.json",TEXTURE_SIZE:24,TEXTURE_PADDING:20,ALPHA_TEST_THRESHOLD:0.05,DATA_SCHEMA_VERSION:1,DIRECTORIES:[PY.assetsLibraryPath&&j8.join(PY.assetsLibraryPath,"blocks"),j8.resolve(process.cwd(),"assets","blocks")].filter(Boolean)};class h7{static instance=new h7;generate=process.env.NODE_ENV!=="production";_textureUriMetadata=new Map;constructor(){}hasBlockTexture(A){return this._textureUriMetadata.has(A)||["+x","-x","+y","-y","+z","-z"].every((Q)=>this._textureUriMetadata.has(`${A}/${Q}.png`))}getBlockTextureMetadata(A){let Q=this._textureUriMetadata.get(A);if(Q)return[Q];let B=["+x","-x","+y","-y","+z","-z"].map((Y)=>this._textureUriMetadata.get(`${A}/${Y}.png`)).filter(Boolean);return B.length===6?B:void 0}async preloadAtlas(){let A=await this._getAbsoluteTexturePaths(),Q=j8.resolve(process.cwd(),"assets/blocks",U0.ATLAS_DIR);if(this._loadCachedAtlasManifest(A,Q))return console.info(`BlockTextureRegistry.preloadAtlas(): Using cached atlas for ${A.length} block textures`);if(!this.generate)l.fatalError("BlockTextureRegistry.preloadAtlas(): No cached atlas found in production. Run development server to generate atlas.");console.info(`BlockTextureRegistry.preloadAtlas(): Generating atlas for ${A.length} block textures...`);let B=await Promise.all(A.map(async(U)=>{let $=await YE.read(U),E=this._absoluteTexturePathToTextureUri(U);if($.width!==U0.TEXTURE_SIZE||$.height!==U0.TEXTURE_SIZE)$.resize({w:U0.TEXTURE_SIZE,h:U0.TEXTURE_SIZE});return{textureUri:E,image:$,metadata:this._analyzeTexture($.bitmap)}})),Y=U0.TEXTURE_SIZE+U0.TEXTURE_PADDING*2,{cols:J,rows:C}=this._calculateGridLayout(B.length),X=J*Y,G=C*Y,W=new YE({width:X,height:G,color:0});for(let U=0;U{let U=(W*C+G)*4,$=(Z*C+F)*4;J[$]=J[U],J[$+1]=J[U+1],J[$+2]=J[U+2],J[$+3]=J[U+3]};for(let G=0;G=B+Q||W=B+Q){let F=Math.max(B,Math.min(B+Q-1,W)),Z=Math.max(B,Math.min(B+Q-1,G));X(F,Z,W,G)}return Y}_analyzeTexture(A){let{width:Q,height:B,data:Y}=A,J=Q*B,C=[0,0,0],X=255*U0.ALPHA_TEST_THRESHOLD,G=!1,W=!1,F=0;for(let Z=0;Z=X,W||=UZ/J/255),isTransparent:G,needsAlphaTest:W,transparencyRatio:F/J}}_calculateGridLayout(A){let Q=(C)=>2**Math.ceil(Math.log2(C)),B=Math.ceil(Math.sqrt(A)),Y=Q(B),J=Q(Math.ceil(A/Y));return{cols:Y,rows:J}}async _getAbsoluteTexturePaths(){let A=new Map;for(let B of U0.DIRECTORIES){if(!g7.existsSync(B))continue;let Y=await c4("**/*.png",{cwd:B,follow:!0});for(let J of Y){let C=j8.join(B,J),X=this._absoluteTexturePathToTextureUri(C);A.set(X,C)}}return Array.from(A.keys()).sort().map((B)=>A.get(B))}}var nf;((Y)=>{Y.ENTITY_COLLISION="BLOCK_TYPE.ENTITY_COLLISION";Y.ENTITY_CONTACT_FORCE="BLOCK_TYPE.ENTITY_CONTACT_FORCE";Y.INTERACT="BLOCK_TYPE.INTERACT"})(nf||={});class O8 extends BQ{_id;_customColliderOptions;_isLiquid;_lightLevel;_name;_textureUri;constructor(A={id:-1,textureUri:"textures/missing.png",name:"Unknown"}){if(A.id<0)l.fatalError("BlockType.constructor(): BlockType id not set.");if(!h7.instance.hasBlockTexture(A.textureUri))l.fatalError(`BlockType.constructor(): Block texture ${A.textureUri} not found. If it is a cubemap texture, make sure every face is present in the folder (+x.png, -x.png, +y.png, -y.png, +z.png, -z.png).`);super();this._id=A.id,this._customColliderOptions=A.customColliderOptions,this._isLiquid=A.isLiquid??!1,this._name=A.name,this._textureUri=A.textureUri,this._lightLevel=Math.min(A.lightLevel??0,15)}get id(){return this._id}get colliderOptions(){return this._customColliderOptions??{shape:"voxels"}}get isLiquid(){return this._isLiquid}get isMeshable(){return!this._customColliderOptions}get isTrimesh(){return this.colliderOptions.shape==="trimesh"}get isVoxel(){return this.colliderOptions.shape==="voxels"}get lightLevel(){return this._lightLevel}get name(){return this._name}get textureUri(){return this._textureUri}createCollider(A){let Q=this.colliderOptions.shape==="voxels"?new h9({...this.colliderOptions,coordinates:A.map((B)=>B.globalCoordinate),size:{x:1,y:1,z:1}}):new h9({...this.colliderOptions,...this._buildTrimeshFromBlockPlacements(A)});if(this.isLiquid)Q.setSensor(!0);if(this.hasListeners("BLOCK_TYPE.ENTITY_COLLISION")||this.isLiquid)Q.enableCollisionEvents(!0);if(this.hasListeners("BLOCK_TYPE.ENTITY_CONTACT_FORCE"))Q.enableContactForceEvents(!0);if(LC.isDefaultCollisionGroups(Q.collisionGroups))Q.setCollisionGroups({belongsTo:[1],collidesWith:[65535&~1]});return Q}interact(A,Q){if(!A.world)return;this.emitWithWorld(A.world,"BLOCK_TYPE.INTERACT",{blockType:this,player:A,raycastHit:Q})}serialize(){return GQ.serializeBlockType(this)}_buildTrimeshFromBlockPlacements(A){let Q=this.colliderOptions,B=Q.vertices,Y=Q.indices;if(!B||!Y)l.fatalError(`BlockType._buildTrimeshFromCoordinates(): Block type id ${this.id} (${this.name}) is a trimesh but is missing vertices or indices!`);if(B.length%3!==0||Y.length%3!==0)l.fatalError(`BlockType._buildTrimeshFromCoordinates(): Block type id ${this.id} (${this.name}) has an invalid number of vertices or indices! Expected a multiple of 3, got ${B.length} and ${Y.length}.`);let J=B.length/3,C=A.length,X=new Float32Array(B.length*C),G=new Uint32Array(Y.length*C);for(let W=0;WQ.REGISTER_BLOCK_TYPE="BLOCK_TYPE_REGISTRY.REGISTER_BLOCK_TYPE")(sf||={});class ED extends BQ{_blockTypes=new Map;_world;constructor(A){super();this._world=A}get world(){return this._world}getAllBlockTypes(){return Array.from(this._blockTypes.values())}getBlockType(A){let Q=this._blockTypes.get(A);if(!Q)l.fatalError(`BlockTypeRegistry.getBlockType(): BlockType with id ${A} not found.`);return Q}registerGenericBlockType(A){let B=new class extends O8{constructor(Y=A){super(Y)}};return this.registerBlockType(B),B}registerBlockType(A){this._blockTypes.set(A.id,A),this.emitWithWorld(this._world,"BLOCK_TYPE_REGISTRY.REGISTER_BLOCK_TYPE",{blockTypeRegistry:this,id:A.id,blockType:A})}serialize(){return GQ.serializeBlockTypeRegistry(this)}}var Om={};iG(Om,{worldSchema:()=>jm,worldPacketDefinition:()=>SKA,vectorSchema:()=>nQ,vectorBooleanSchema:()=>zGB,uiSchema:()=>Rm,uiPacketDefinition:()=>PKA,uiDatasSchema:()=>wm,uiDatasPacketDefinition:()=>TKA,uiDataSendPacketDefinition:()=>UKA,uiDataSchema:()=>fD,syncResponseSchema:()=>zm,syncResponsePacketDefinition:()=>OKA,syncRequestSchema:()=>rb,syncRequestPacketDefinition:()=>$KA,stateRequestSchema:()=>sb,stateRequestPacketDefinition:()=>ZKA,sceneUIsSchema:()=>Mm,sceneUIsPacketDefinition:()=>jKA,sceneUISchema:()=>qm,rgbColorSchema:()=>gY,registeredPackets:()=>xw,quaternionSchema:()=>bD,playersSchema:()=>Lm,playersPacketDefinition:()=>wKA,playerSchema:()=>Nm,physicsDebugRenderSchema:()=>Dm,physicsDebugRenderPacketDefinition:()=>zKA,physicsDebugRaycastsSchema:()=>Hm,physicsDebugRaycastsPacketDefinition:()=>RKA,physicsDebugRaycastSchema:()=>Im,particleEmittersSchema:()=>Vm,particleEmittersPacketDefinition:()=>MKA,particleEmitterSchema:()=>Km,outlineSchema:()=>Wm,outboundPackets:()=>hw,notificationPermissionRequestSchema:()=>Em,notificationPermissionRequestPacketDefinition:()=>qKA,modelNodeOverrideSchema:()=>Gm,modelAnimationSchema:()=>Xm,lightsSchema:()=>Um,lightsPacketDefinition:()=>LKA,lightSchema:()=>$m,isValidPacket:()=>wGB,inputSchema:()=>nb,inputPacketDefinition:()=>FKA,inboundPackets:()=>gw,hexColorSchema:()=>pb,heartbeatSchema:()=>lb,heartbeatPacketDefinition:()=>XKA,framePacketBuffer:()=>MGB,entitySchema:()=>Fm,entitiesSchema:()=>Zm,entitiesPacketDefinition:()=>NKA,definePacket:()=>HQ,debugConfigSchema:()=>ib,debugConfigPacketDefinition:()=>WKA,createPacketBufferUnframer:()=>qGB,createPacket:()=>LGB,connectionSchema:()=>cb,connectionPacketDefinition:()=>CKA,chunksSchema:()=>Cm,chunksPacketDefinition:()=>DKA,chunkSchema:()=>Jm,chatMessagesSchema:()=>Ym,chatMessagesPacketDefinition:()=>HKA,chatMessageSendPacketDefinition:()=>GKA,chatMessageSchema:()=>xD,cameraSchema:()=>Bm,cameraPacketDefinition:()=>IKA,blocksSchema:()=>eb,blocksPacketDefinition:()=>KKA,blockTypesSchema:()=>Qm,blockTypesPacketDefinition:()=>VKA,blockTypeSchema:()=>Am,blockSchema:()=>tb,bidirectionalPackets:()=>yw,audiosSchema:()=>ob,audiosPacketDefinition:()=>EKA,audioSchema:()=>ab,PacketId:()=>sB});var yw={};iG(yw,{heartbeatPacketDefinition:()=>XKA,connectionPacketDefinition:()=>CKA});var ub=qA(YKA(),1);class db extends ub.default{static instance=new ub.default}var hD=4,JKA=33554432,sB;((_)=>{_[_.SYNC_REQUEST=0]="SYNC_REQUEST";_[_.INPUT=1]="INPUT";_[_.STATE_REQUEST=2]="STATE_REQUEST";_[_.CHAT_MESSAGE_SEND=3]="CHAT_MESSAGE_SEND";_[_.UI_DATA_SEND=4]="UI_DATA_SEND";_[_.SYNC_RESPONSE=32]="SYNC_RESPONSE";_[_.AUDIOS=33]="AUDIOS";_[_.BLOCKS=34]="BLOCKS";_[_.BLOCK_TYPES=35]="BLOCK_TYPES";_[_.CHAT_MESSAGES=36]="CHAT_MESSAGES";_[_.CHUNKS=37]="CHUNKS";_[_.ENTITIES=38]="ENTITIES";_[_.WORLD=39]="WORLD";_[_.CAMERA=40]="CAMERA";_[_.UI=41]="UI";_[_.UI_DATAS=42]="UI_DATAS";_[_.SCENE_UIS=43]="SCENE_UIS";_[_.LIGHTS=44]="LIGHTS";_[_.PLAYERS=45]="PLAYERS";_[_.PARTICLE_EMITTERS=46]="PARTICLE_EMITTERS";_[_.NOTIFICATION_PERMISSION_REQUEST=47]="NOTIFICATION_PERMISSION_REQUEST";_[_.CONNECTION=116]="CONNECTION";_[_.HEARTBEAT=117]="HEARTBEAT";_[_.DEBUG_CONFIG=128]="DEBUG_CONFIG";_[_.PHYSICS_DEBUG_RENDER=192]="PHYSICS_DEBUG_RENDER";_[_.PHYSICS_DEBUG_RAYCASTS=193]="PHYSICS_DEBUG_RAYCASTS"})(sB||={});function LGB(A,Q,B){if(!A.validate(Q))throw Error(`Invalid payload for packet with id ${A.id}. Error: ${db.instance.errorsText(A.validate.errors)}`);let Y=[A.id,Q];if(typeof B==="number")Y.push(B);return Y}function qGB(A){let Q=new Uint8Array(524288),B=new DataView(Q.buffer,Q.byteOffset,Q.byteLength),Y=0;return(J)=>{if(Y+J.length>Q.length){let X=Math.max(Q.length*2,Y+J.length);if(X>JKA){console.error(`Unframer packet buffer exceeded maximum size of ${JKA} bytes, discarding packet...`),Y=0;return}let G=new Uint8Array(X);G.set(Q.subarray(0,Y)),Q=G,B=new DataView(Q.buffer,Q.byteOffset,Q.byteLength)}Q.set(J,Y),Y+=J.length;let C=0;while(Y-C>=hD){let X=B.getUint32(C,!1),G=hD+X;if(Y-C0){if(Y>C)Q.copyWithin(0,C,Y);Y-=C}}}function HQ(A,Q){return{id:A,schema:Q,validate:db.instance.compile(Q)}}function MGB(A){let Q=new Uint8Array(hD+A.length);return new DataView(Q.buffer).setUint32(0,A.length,!1),Q.set(A,hD),Q}var cb={type:"object",properties:{i:{type:"string",nullable:!0},k:{type:"boolean",nullable:!0}},additionalProperties:!1};var CKA=HQ(116,cb);var lb={type:"null",nullable:!0};var XKA=HQ(117,lb);var gw={};iG(gw,{uiDataSendPacketDefinition:()=>UKA,syncRequestPacketDefinition:()=>$KA,stateRequestPacketDefinition:()=>ZKA,inputPacketDefinition:()=>FKA,debugConfigPacketDefinition:()=>WKA,chatMessageSendPacketDefinition:()=>GKA});var pb={type:"string",pattern:"^[0-9A-Fa-f]{6}$"};var xD={type:"object",properties:{m:{type:"string"},c:{...pb,nullable:!0},p:{type:"string",nullable:!0}},required:["m"],additionalProperties:!1};var GKA=HQ(3,xD);var ib={type:"object",properties:{pdr:{type:"boolean",nullable:!0}},additionalProperties:!1};var WKA=HQ(128,ib);var nQ={type:"array",items:[{type:"number"},{type:"number"},{type:"number"}],minItems:3,maxItems:3};var nb={type:"object",properties:{"1":{type:"boolean",nullable:!0},"2":{type:"boolean",nullable:!0},"3":{type:"boolean",nullable:!0},"4":{type:"boolean",nullable:!0},"5":{type:"boolean",nullable:!0},"6":{type:"boolean",nullable:!0},"7":{type:"boolean",nullable:!0},"8":{type:"boolean",nullable:!0},"9":{type:"boolean",nullable:!0},"0":{type:"boolean",nullable:!0},w:{type:"boolean",nullable:!0},a:{type:"boolean",nullable:!0},s:{type:"boolean",nullable:!0},d:{type:"boolean",nullable:!0},q:{type:"boolean",nullable:!0},e:{type:"boolean",nullable:!0},r:{type:"boolean",nullable:!0},f:{type:"boolean",nullable:!0},z:{type:"boolean",nullable:!0},x:{type:"boolean",nullable:!0},c:{type:"boolean",nullable:!0},v:{type:"boolean",nullable:!0},u:{type:"boolean",nullable:!0},i:{type:"boolean",nullable:!0},o:{type:"boolean",nullable:!0},j:{type:"boolean",nullable:!0},k:{type:"boolean",nullable:!0},l:{type:"boolean",nullable:!0},n:{type:"boolean",nullable:!0},m:{type:"boolean",nullable:!0},sp:{type:"boolean",nullable:!0},sh:{type:"boolean",nullable:!0},tb:{type:"boolean",nullable:!0},ml:{type:"boolean",nullable:!0},mr:{type:"boolean",nullable:!0},cp:{type:"number",nullable:!0},cy:{type:"number",nullable:!0},ird:{...nQ,nullable:!0},iro:{...nQ,nullable:!0},jd:{type:"number",nullable:!0},sq:{type:"number",nullable:!0}},additionalProperties:!1};var FKA=HQ(1,nb);var sb={type:"object",properties:{},additionalProperties:!1};var ZKA=HQ(2,sb);var rb={type:"null",nullable:!0};var $KA=HQ(0,rb);var fD={type:"object",properties:{},additionalProperties:!0};var UKA=HQ(4,fD);var hw={};iG(hw,{worldPacketDefinition:()=>SKA,uiPacketDefinition:()=>PKA,uiDatasPacketDefinition:()=>TKA,syncResponsePacketDefinition:()=>OKA,sceneUIsPacketDefinition:()=>jKA,playersPacketDefinition:()=>wKA,physicsDebugRenderPacketDefinition:()=>zKA,physicsDebugRaycastsPacketDefinition:()=>RKA,particleEmittersPacketDefinition:()=>MKA,notificationPermissionRequestPacketDefinition:()=>qKA,lightsPacketDefinition:()=>LKA,entitiesPacketDefinition:()=>NKA,chunksPacketDefinition:()=>DKA,chatMessagesPacketDefinition:()=>HKA,cameraPacketDefinition:()=>IKA,blocksPacketDefinition:()=>KKA,blockTypesPacketDefinition:()=>VKA,audiosPacketDefinition:()=>EKA});var ab={type:"object",properties:{i:{type:"number"},a:{type:"string",nullable:!0},cd:{type:"number",nullable:!0},d:{type:"number",nullable:!0},de:{type:"number",nullable:!0},di:{type:"number",minimum:0,nullable:!0},e:{type:"number",nullable:!0},l:{type:"boolean",nullable:!0},o:{type:"number",nullable:!0},p:{...nQ,nullable:!0},pa:{type:"boolean",nullable:!0},pl:{type:"boolean",nullable:!0},pr:{type:"number",minimum:0,nullable:!0},r:{type:"boolean",nullable:!0},rd:{type:"number",nullable:!0},s:{type:"number",nullable:!0},v:{type:"number",minimum:0,maximum:1,nullable:!0}},required:["i"],additionalProperties:!1};var ob={type:"array",items:{...ab}};var EKA=HQ(33,ob);var tb={type:"object",properties:{i:{type:"number"},c:nQ,r:{type:"number",nullable:!0}},required:["i","c"],additionalProperties:!1};var eb={type:"array",items:{...tb}};var KKA=HQ(34,eb);var Am={type:"object",properties:{i:{type:"number"},l:{type:"boolean",nullable:!0},ll:{type:"number",nullable:!0},n:{type:"string",nullable:!0},t:{type:"string",nullable:!0},ti:{type:"array",items:{type:"number"},nullable:!0},tv:{type:"array",items:{type:"number"},nullable:!0}},required:["i"],additionalProperties:!1};var Qm={type:"array",items:{...Am}};var VKA=HQ(35,Qm);var Bm={type:"object",properties:{cb:{type:"boolean",nullable:!0},m:{type:"number",nullable:!0},e:{type:"number",nullable:!0},et:{type:"number",nullable:!0},fo:{type:"number",nullable:!0},ffo:{type:"number",nullable:!0},fv:{type:"number",nullable:!0},h:{type:"array",items:{type:"string"},nullable:!0},mp:{type:"boolean",nullable:!0},my:{type:"boolean",nullable:!0},o:{...nQ,nullable:!0},p:{...nQ,nullable:!0},pt:{...nQ,nullable:!0},pl:{...nQ,nullable:!0},s:{type:"array",items:{type:"string"},nullable:!0},sa:{type:"number",nullable:!0},z:{type:"number",nullable:!0}},additionalProperties:!1};var Ym={type:"array",items:{...xD}};var Jm={type:"object",properties:{c:nQ,b:{type:"array",items:{type:"number",minimum:0,maximum:255},minItems:4096,maxItems:4096,nullable:!0},r:{type:"array",items:{type:"number"},minItems:0,maxItems:8192,nullable:!0},rm:{type:"boolean",nullable:!0}},required:["c"],additionalProperties:!1};var Cm={type:"array",items:{...Jm}};var gY={type:"array",items:[{type:"number",minimum:0,maximum:255},{type:"number",minimum:0,maximum:255},{type:"number",minimum:0,maximum:255}],minItems:3,maxItems:3};var Xm={type:"object",properties:{n:{type:"string"},b:{type:"number",nullable:!0},c:{type:"boolean",nullable:!0},fi:{type:"boolean",nullable:!0},fo:{type:"boolean",nullable:!0},l:{type:"number",nullable:!0},p:{type:"boolean",nullable:!0},pa:{type:"boolean",nullable:!0},pr:{type:"number",nullable:!0},r:{type:"boolean",nullable:!0},s:{type:"boolean",nullable:!0},w:{type:"number",nullable:!0}},required:["n"],additionalProperties:!1};var bD={type:"array",items:[{type:"number"},{type:"number"},{type:"number"},{type:"number"}],minItems:4,maxItems:4};var Gm={type:"object",properties:{n:{type:"string"},ec:{...gY,nullable:!0},ei:{type:"number",nullable:!0},h:{type:"boolean",nullable:!0},p:{...nQ,nullable:!0},pi:{type:"number",nullable:!0},r:{...bD,nullable:!0},ri:{type:"number",nullable:!0},rm:{type:"boolean",nullable:!0},s:{...nQ,nullable:!0},si:{type:"number",nullable:!0}},required:["n"],additionalProperties:!1};var Wm={type:"object",properties:{c:{...gY,nullable:!0},ci:{type:"number",nullable:!0},th:{type:"number",nullable:!0},o:{type:"number",nullable:!0},oc:{type:"boolean",nullable:!0}},required:[],additionalProperties:!1};var Fm={type:"object",properties:{i:{type:"number"},bh:{...nQ,nullable:!0},bt:{type:"string",nullable:!0},e:{type:"boolean",nullable:!0},ec:{...gY,nullable:!0},ei:{type:"number",nullable:!0},m:{type:"string",nullable:!0},ma:{type:"array",items:{...Xm},nullable:!0},mo:{type:"array",items:{...Gm},nullable:!0},mt:{type:"string",nullable:!0},n:{type:"string",nullable:!0},o:{type:"number",nullable:!0},ol:{...Wm,nullable:!0},p:{...nQ,nullable:!0},pi:{type:"number",nullable:!0},pe:{type:"number",nullable:!0},pn:{type:"string",nullable:!0},r:{...bD,nullable:!0},ri:{type:"number",nullable:!0},rm:{type:"boolean",nullable:!0},si:{type:"number",nullable:!0},sv:{...nQ,nullable:!0},t:{...gY,nullable:!0}},required:["i"],additionalProperties:!1};var Zm={type:"array",items:{...Fm}};var $m={type:"object",properties:{i:{type:"number"},a:{type:"number",nullable:!0},e:{type:"number",nullable:!0},c:{...gY,nullable:!0},d:{type:"number",nullable:!0},n:{type:"number",nullable:!0},o:{...nQ,nullable:!0},p:{...nQ,nullable:!0},pe:{type:"number",minimum:0,maximum:1,nullable:!0},rm:{type:"boolean",nullable:!0},t:{type:"number",nullable:!0},te:{type:"number",nullable:!0},tp:{...nQ,nullable:!0}},required:["i"],additionalProperties:!1};var Um={type:"array",items:{...$m}};var Em={type:"null",nullable:!0};var Km={type:"object",properties:{i:{type:"number"},at:{type:"number",nullable:!0},b:{type:"number",nullable:!0},ce:{...gY,nullable:!0},cev:{...gY,nullable:!0},cs:{...gY,nullable:!0},csv:{...gY,nullable:!0},cie:{type:"number",nullable:!0},ciev:{type:"number",nullable:!0},cis:{type:"number",nullable:!0},cisv:{type:"number",nullable:!0},e:{type:"number",nullable:!0},en:{type:"string",nullable:!0},g:{...nQ,nullable:!0},l:{type:"number",nullable:!0},le:{type:"boolean",nullable:!0},lv:{type:"number",nullable:!0},mp:{type:"number",nullable:!0},o:{...nQ,nullable:!0},oe:{type:"number",nullable:!0},oev:{type:"number",nullable:!0},or:{type:"number",nullable:!0},ofr:{...nQ,nullable:!0},os:{type:"number",nullable:!0},osv:{type:"number",nullable:!0},p:{...nQ,nullable:!0},pa:{type:"boolean",nullable:!0},pv:{...nQ,nullable:!0},r:{type:"number",nullable:!0},rv:{type:"number",nullable:!0},rm:{type:"boolean",nullable:!0},se:{type:"number",nullable:!0},sev:{type:"number",nullable:!0},ss:{type:"number",nullable:!0},ssv:{type:"number",nullable:!0},t:{type:"boolean",nullable:!0},tu:{type:"string",nullable:!0},v:{...nQ,nullable:!0},vv:{...nQ,nullable:!0}},required:["i"],additionalProperties:!1};var Vm={type:"array",items:{...Km}};var Im={type:"object",properties:{o:{...nQ},d:{...nQ},l:{type:"number"},h:{type:"boolean"}},required:["o","d","l","h"],additionalProperties:!1};var Hm={type:"array",items:{...Im}};var Dm={type:"object",properties:{v:{type:"array",items:{type:"number"}},c:{type:"array",items:{type:"number"}}},required:["v","c"],additionalProperties:!1};var Nm={type:"object",properties:{i:{type:"string"},p:{type:"string",nullable:!0},rm:{type:"boolean",nullable:!0},u:{type:"string",nullable:!0}},required:["i"],additionalProperties:!1};var Lm={type:"array",items:{...Nm}};var qm={type:"object",properties:{i:{type:"number"},e:{type:"number",nullable:!0},o:{...nQ,nullable:!0},p:{...nQ,nullable:!0},rm:{type:"boolean",nullable:!0},s:{type:"object",nullable:!0},t:{type:"string",nullable:!0},v:{type:"number",nullable:!0}},required:["i"],additionalProperties:!1};var Mm={type:"array",items:{...qm}};var zm={type:"object",properties:{r:{type:"number"},s:{type:"number"},p:{type:"number"},n:{type:"number"}},required:["r","s","p","n"],additionalProperties:!1};var Rm={type:"object",properties:{p:{type:"boolean",nullable:!0},pf:{type:"boolean",nullable:!0},u:{type:"string",nullable:!0},ua:{type:"array",items:{type:"string"},nullable:!0}},additionalProperties:!1};var wm={type:"array",items:{...fD}};var zGB={type:"array",items:[{type:"boolean"},{type:"boolean"},{type:"boolean"}],minItems:3,maxItems:3};var jm={type:"object",properties:{i:{type:"number"},ac:{...gY,nullable:!0},ai:{type:"number",nullable:!0},dc:{...gY,nullable:!0},di:{type:"number",nullable:!0},dp:{...nQ,nullable:!0},fc:{...gY,nullable:!0},ff:{type:"number",nullable:!0},fn:{type:"number",nullable:!0},n:{type:"string",nullable:!0},s:{type:"string",nullable:!0},si:{type:"number",nullable:!0},t:{type:"number",nullable:!0}},required:["i"],additionalProperties:!1};var IKA=HQ(40,Bm);var HKA=HQ(36,Ym);var DKA=HQ(37,Cm);var NKA=HQ(38,Zm);var LKA=HQ(44,Um);var qKA=HQ(47,Em);var MKA=HQ(46,Vm);var zKA=HQ(192,Dm);var RKA=HQ(193,Hm);var wKA=HQ(45,Lm);var jKA=HQ(43,Mm);var OKA=HQ(32,zm);var PKA=HQ(41,Rm);var TKA=HQ(42,wm);var SKA=HQ(39,jm);var xw=new Map,RGB={...yw,...gw,...hw};for(let A of Object.values(RGB))if("id"in A&&"schema"in A){let Q=A;if(xw.has(Q.id))throw Error(`Packet with id ${Q.id} is already registered.`);xw.set(Q.id,Q)}function wGB(A){if(typeof A!=="object"||A===null||typeof A[0]!=="number"||A[0]<0||A[1]===void 0||A[2]!==void 0&&(typeof A[2]!=="number"||A[2]<0))return!1;let Q=xw.get(A[0]);return!!Q&&Q.validate(A[1])}var gQ=Om;var hIA=qA(JVA(),1);import zZ from"fs";import yIA from"path";var EWB=qA(eVA(),1),KWB=qA(fm(),1),VWB=qA(mm(),1),OE=qA(sw(),1),nm=qA(XIA(),1);var GIA=OE.default;function u9(A){if(A===null)return"null";if(Array.isArray(A))return"array";return typeof A}function n7(A){return u9(A)==="object"}function IWB(A){return Array.isArray(A)&&A.length>0&&A.every((Q)=>("message"in Q))}function sm(A,Q){return A.length<124?A:Q}var WIA="graphql-transport-ws";var T8=((A)=>{return A[A.InternalServerError=4500]="InternalServerError",A[A.InternalClientError=4005]="InternalClientError",A[A.BadRequest=4400]="BadRequest",A[A.BadResponse=4004]="BadResponse",A[A.Unauthorized=4401]="Unauthorized",A[A.Forbidden=4403]="Forbidden",A[A.SubprotocolNotAcceptable=4406]="SubprotocolNotAcceptable",A[A.ConnectionInitialisationTimeout=4408]="ConnectionInitialisationTimeout",A[A.ConnectionAcknowledgementTimeout=4504]="ConnectionAcknowledgementTimeout",A[A.SubscriberAlreadyExists=4409]="SubscriberAlreadyExists",A[A.TooManyInitialisationRequests=4429]="TooManyInitialisationRequests",A})(T8||{}),S8=((A)=>{return A.ConnectionInit="connection_init",A.ConnectionAck="connection_ack",A.Ping="ping",A.Pong="pong",A.Subscribe="subscribe",A.Next="next",A.Error="error",A.Complete="complete",A})(S8||{});function FIA(A){if(!n7(A))throw Error(`Message is expected to be an object, but got ${u9(A)}`);if(!A.type)throw Error("Message is missing the 'type' property");if(typeof A.type!=="string")throw Error(`Message is expects the 'type' property to be a string, but got ${u9(A.type)}`);switch(A.type){case"connection_init":case"connection_ack":case"ping":case"pong":{if(A.payload!=null&&!n7(A.payload))throw Error(`"${A.type}" message expects the 'payload' property to be an object or nullish or missing, but got "${A.payload}"`);break}case"subscribe":{if(typeof A.id!=="string")throw Error(`"${A.type}" message expects the 'id' property to be a string, but got ${u9(A.id)}`);if(!A.id)throw Error(`"${A.type}" message requires a non-empty 'id' property`);if(!n7(A.payload))throw Error(`"${A.type}" message expects the 'payload' property to be an object, but got ${u9(A.payload)}`);if(typeof A.payload.query!=="string")throw Error(`"${A.type}" message payload expects the 'query' property to be a string, but got ${u9(A.payload.query)}`);if(A.payload.variables!=null&&!n7(A.payload.variables))throw Error(`"${A.type}" message payload expects the 'variables' property to be a an object or nullish or missing, but got ${u9(A.payload.variables)}`);if(A.payload.operationName!=null&&u9(A.payload.operationName)!=="string")throw Error(`"${A.type}" message payload expects the 'operationName' property to be a string or nullish or missing, but got ${u9(A.payload.operationName)}`);if(A.payload.extensions!=null&&!n7(A.payload.extensions))throw Error(`"${A.type}" message payload expects the 'extensions' property to be a an object or nullish or missing, but got ${u9(A.payload.extensions)}`);break}case"next":{if(typeof A.id!=="string")throw Error(`"${A.type}" message expects the 'id' property to be a string, but got ${u9(A.id)}`);if(!A.id)throw Error(`"${A.type}" message requires a non-empty 'id' property`);if(!n7(A.payload))throw Error(`"${A.type}" message expects the 'payload' property to be an object, but got ${u9(A.payload)}`);break}case"error":{if(typeof A.id!=="string")throw Error(`"${A.type}" message expects the 'id' property to be a string, but got ${u9(A.id)}`);if(!A.id)throw Error(`"${A.type}" message requires a non-empty 'id' property`);if(!IWB(A.payload))throw Error(`"${A.type}" message expects the 'payload' property to be an array of GraphQL errors, but got ${JSON.stringify(A.payload)}`);break}case"complete":{if(typeof A.id!=="string")throw Error(`"${A.type}" message expects the 'id' property to be a string, but got ${u9(A.id)}`);if(!A.id)throw Error(`"${A.type}" message requires a non-empty 'id' property`);break}default:throw Error(`Invalid message 'type' property "${A.type}"`)}return A}function ZIA(A,Q){return FIA(typeof A==="string"?JSON.parse(A,Q):A)}function PE(A,Q){return FIA(A),JSON.stringify(A,Q)}function am(A){let{url:Q,connectionParams:B,lazy:Y=!0,onNonLazyError:J=console.error,lazyCloseTimeout:C=0,keepAlive:X=0,disablePong:G,connectionAckWaitTimeout:W=0,retryAttempts:F=5,retryWait:Z=async function(v){let y=Math.pow(2,v);await new Promise((h)=>setTimeout(h,y*1000+Math.floor(Math.random()*2700+300)))},shouldRetry:U=rm,on:$,webSocketImpl:E,generateID:K=function(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(v)=>{let y=Math.random()*16|0;return(v=="x"?y:y&3|8).toString(16)})},jsonMessageReplacer:I,jsonMessageReviver:V}=A,H;if(E){if(!DWB(E))throw Error("Invalid WebSocket implementation provided");H=E}else if(typeof WebSocket<"u")H=WebSocket;else if(typeof global<"u")H=global.WebSocket||global.MozWebSocket;else if(typeof window<"u")H=window.WebSocket||window.MozWebSocket;if(!H)throw Error("WebSocket implementation missing; on Node you can `import WebSocket from 'ws';` and pass `webSocketImpl: WebSocket` to `createClient`");let D=H,L=(()=>{let S=(()=>{let y={};return{on(h,g){return y[h]=g,()=>{delete y[h]}},emit(h){if("id"in h)y[h.id]?.(h)}}})(),v={connecting:$?.connecting?[$.connecting]:[],opened:$?.opened?[$.opened]:[],connected:$?.connected?[$.connected]:[],ping:$?.ping?[$.ping]:[],pong:$?.pong?[$.pong]:[],message:$?.message?[S.emit,$.message]:[S.emit],closed:$?.closed?[$.closed]:[],error:$?.error?[$.error]:[]};return{onMessage:S.on,on(y,h){let g=v[y];return g.push(h),()=>{g.splice(g.indexOf(h),1)}},emit(y,...h){for(let g of[...v[y]])g(...h)}}})();function z(S){let v=[L.on("error",(y)=>{v.forEach((h)=>h()),S(y)}),L.on("closed",(y)=>{v.forEach((h)=>h()),S(y)})]}let M,N=0,q,w=!1,P=0,_=!1;async function j(){clearTimeout(q);let[S,v]=await(M??(M=new Promise((g,m)=>(async()=>{if(w){if(await Z(P),!N)return M=void 0,m({code:1000,reason:"All Subscriptions Gone"});P++}L.emit("connecting",w);let n=new D(typeof Q==="function"?await Q():Q,WIA),i,p;function d(){if(isFinite(X)&&X>0)clearTimeout(p),p=setTimeout(()=>{if(n.readyState===D.OPEN)n.send(PE({type:S8.Ping})),L.emit("ping",!1,void 0)},X)}z((b)=>{if(M=void 0,clearTimeout(i),clearTimeout(p),m(b),b instanceof aw)n.close(4499,"Terminated"),n.onerror=null,n.onclose=null}),n.onerror=(b)=>L.emit("error",b),n.onclose=(b)=>L.emit("closed",b),n.onopen=async()=>{try{L.emit("opened",n);let b=typeof B==="function"?await B():B;if(n.readyState!==D.OPEN)return;if(n.send(PE(b?{type:S8.ConnectionInit,payload:b}:{type:S8.ConnectionInit},I)),isFinite(W)&&W>0)i=setTimeout(()=>{n.close(T8.ConnectionAcknowledgementTimeout,"Connection acknowledgement timeout")},W);d()}catch(b){L.emit("error",b),n.close(T8.InternalClientError,sm(b instanceof Error?b.message:String(b),"Internal client error"))}};let x=!1;n.onmessage=({data:b})=>{try{let o=ZIA(b,V);if(L.emit("message",o),o.type==="ping"||o.type==="pong"){if(L.emit(o.type,!0,o.payload),o.type==="pong")d();else if(!G)n.send(PE(o.payload?{type:S8.Pong,payload:o.payload}:{type:S8.Pong})),L.emit("pong",!1,o.payload);return}if(x)return;if(o.type!==S8.ConnectionAck)throw Error(`First message cannot be of type ${o.type}`);clearTimeout(i),x=!0,L.emit("connected",n,o.payload,w),w=!1,P=0,g([n,new Promise((GA,VA)=>z(VA))])}catch(o){n.onmessage=null,L.emit("error",o),n.close(T8.BadResponse,sm(o instanceof Error?o.message:String(o),"Bad response"))}}})())));if(S.readyState===D.CLOSING)await v;let y=()=>{},h=new Promise((g)=>y=g);return[S,y,Promise.race([h.then(()=>{if(!N){let g=()=>S.close(1000,"Normal Closure");if(isFinite(C)&&C>0)q=setTimeout(()=>{if(S.readyState===D.OPEN)g()},C);else g()}}),v])]}function k(S){if(rm(S)&&(HWB(S.code)||[T8.InternalServerError,T8.InternalClientError,T8.BadRequest,T8.BadResponse,T8.Unauthorized,T8.SubprotocolNotAcceptable,T8.SubscriberAlreadyExists,T8.TooManyInitialisationRequests].includes(S.code)))throw S;if(_)return!1;if(rm(S)&&S.code===1000)return N>0;if(!F||P>=F)throw S;if(!U(S))throw S;return w=!0}if(!Y)(async()=>{N++;for(;;)try{let[,,S]=await j();await S}catch(S){try{if(!k(S))return}catch(v){return J?.(v)}}})();function T(S,v){let y=K(S),h=!1,g=!1,m=()=>{N--,h=!0};return(async()=>{N++;for(;;)try{let[n,i,p]=await j();if(h)return i();let d=L.onMessage(y,(x)=>{switch(x.type){case S8.Next:{v.next(x.payload);return}case S8.Error:{g=!0,h=!0,v.error(x.payload),m();return}case S8.Complete:{h=!0,m();return}}});n.send(PE({id:y,type:S8.Subscribe,payload:S},I)),m=()=>{if(!h&&n.readyState===D.OPEN)n.send(PE({id:y,type:S8.Complete},I));N--,h=!0,i()},await p.finally(d);return}catch(n){if(!k(n))return}})().then(()=>{if(!g)v.complete()}).catch((n)=>{v.error(n)}),()=>{if(!h)m()}}return{on:L.on,subscribe:T,iterate(S){let v=[],y={done:!1,error:null,resolve:()=>{}},h=T(S,{next(m){v.push(m),y.resolve()},error(m){y.done=!0,y.error=m,y.resolve()},complete(){y.done=!0,y.resolve()}}),g=async function*(){for(;;){if(!v.length)await new Promise((n)=>y.resolve=n);while(v.length)yield v.shift();if(y.error)throw y.error;if(y.done)return}}();return g.throw=async(m)=>{if(!y.done)y.done=!0,y.error=m,y.resolve();return{done:!0,value:void 0}},g.return=async()=>{return h(),{done:!0,value:void 0}},g},async dispose(){if(_=!0,M){let[S]=await M;S.close(1000,"Normal Closure")}},terminate(){if(M)L.emit("closed",new aw)}}}class aw extends Error{name="TerminatedCloseEvent";message="4499: Terminated";code=4499;reason="Terminated";wasClean=!1}function rm(A){return n7(A)&&"code"in A&&"reason"in A}function HWB(A){if([1000,1001,1006,1005,1012,1013,1014].includes(A))return!1;return A>=1000&&A<=1999}function DWB(A){return typeof A==="function"&&"constructor"in A&&"CLOSED"in A&&"CLOSING"in A&&"CONNECTING"in A&&"OPEN"in A}var gIA=qA(vIA(),1);var rD="./dev/persistence",tw=process.env.HYTOPIA_NOTIFICATION_SERVICE_URL||"https://prod.notifications.hytopia.com";class P5{static instance=new P5;creatorApiKey=process.env.HYTOPIA_API_KEY;gameId=process.env.HYTOPIA_GAME_ID;lobbyId=process.env.HYTOPIA_LOBBY_ID;_creativeGateway;_gqlWs;constructor(){this._gqlWs=am({url:"wss://prod.gql.hytopia.com/graphql",webSocketImpl:GIA});try{this._creativeGateway=new gIA.CreativeGateway}catch{console.warn(["━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━","\uD83D\uDEA8 HYTOPIA PLATFORM GATEWAY IS NOT INITIALIZED \uD83D\uDEA8","","\uD83D\uDD27 Local development is still possible, but these features will be disabled:"," • \uD83D\uDC64 Live Player Accounts"," • \uD83C\uDFAD Live Player Cosmetics"," • \uD83D\uDD14 Scheduled Notifications"," • \uD83D\uDC1B Crash Analytics & Debug Logs","","\uD83D\uDCA1 These features will be enabled but modified:"," • \uD83D\uDCBE Player & Global Persisted Data - Data will be persisted"," locally in the ./dev/persistence directory of your project."," Player ids for data persistence will begin at 1 for the first "," player to join your local server, and increments for each"," additional player. This means that if you restart your"," server, the first player id will be 1 again. This is to ensure"," that data persistence across server restarts can be easily"," tested and debugged in local development.","","To enable the HYTOPIA Platform Gateway locally:"," 1. Set these environment variables:"," HYTOPIA_API_KEY, HYTOPIA_GAME_ID, HYTOPIA_LOBBY_ID"," 2. You can find these values at: https://create.hytopia.com","","Note: In production, these environment variables will be auto-populated ","& the HYTOPIA Platform Gateway will automatically be initialized \uD83D\uDE80","━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━",""].join(` +`))}}get isGatewayAvailable(){return!!this._creativeGateway}async getGlobalData(A){if(!this._creativeGateway&&process.env.NODE_ENV==="production")return l.warning("PlatformGateway.getGlobalData(): You are running in production mode, but the Platform Gateway is not initialized! No data will be returned."),{error:{code:"gatewayError",message:"Platform Gateway is not initialized."}};return this._creativeGateway?await this._creativeGateway.kv.get(A):this._readDevGlobalDataLocally(A)}async getPlayerCosmetics(A){let Q=this._gqlWs.iterate({query:`{ userById(id: "${A}") { characterSettings { clothing @@ -258,35 +258,35 @@ globstar while`,A,U,Q,$,E),this.matchOne(A.slice(U),Q.slice($),B))return this.de } } } - }`});try{let Y=(await Q.next()).value?.data?.userById;if(!Y)return n.warning(`PlatformGateway.getPlayerCosmetics(): No cosmetic data returned for user id "${A}".`);let J=Y.equippedItems?Y.equippedItems.map((F)=>({slot:F.slot,item:F.itemInstance.item.slots.find((W)=>W.type===F.slot)})).filter((F)=>!!F.item):[],C=Y.characterSettings?.hair?.modelUrl,X=Y.characterSettings?.hair?.textureUrl,G=`https://d3qkovarww0lj1.cloudfront.net/?skin_tone=${Y.characterSettings?.skinTone||"SKIN_COLOR_1"}&clothing=${Y.characterSettings?.clothing||"CLOTHING_1"}&hair_style=${Y.characterSettings?.hairStyle||"HAIR_STYLE_1"}&hair_color=${Y.characterSettings?.hairColor||"HAIR_COLOR_1"}&eye_color=${Y.characterSettings?.eyeColor||"00FF00"}`;return{equippedItems:J,hairModelUri:C,hairTextureUri:X,skinTextureUri:G}}finally{await Q.return?.()}}async getPlayerSession(A){if(!this._creativeGateway)return;return await this._creativeGateway.getSession(A)}async scheduleNotification(A,Q,B){if(!Tw)return n.warning("PlatformGateway.scheduleNotification(): HYTOPIA_NOTIFICATION_SERVICE_URL is not set. Unable to schedule notification.");if(!this.gameId||!this.creatorApiKey)return n.warning("PlatformGateway.scheduleNotification(): HYTOPIA_GAME_ID or HYTOPIA_API_KEY is not set. Unable to schedule notification.");if(BsetTimeout(J,500))}n.warning(`PersistenceManager.getGlobalData(): Failed to get global data after ${Q} attempts.`);return}async getPlayerData(A){let Q=await this._saveStatesClient.load(this._getPlayerKey(A));if(!Q)return n.warning(`PersistenceManager.getPlayerData(): Failed to get player data for player ${A.id}. Persistence service may be down.`),{};return Q}async setGlobalData(A,Q){let B=await N5.instance.setGlobalData(A,Q);if(!B||B.error){if(B?.error)n.warning(`PersistenceManager.setGlobalData(): ${B.error.message}`)}}async setPlayerData(A,Q){let B=await this.getPlayerData(A);for(let[Y,J]of Object.entries(Q))B[Y]=J}async unloadPlayerData(A){await this._saveStatesClient.unload(this._getPlayerKey(A))}_getPlayerKey(A){return`player-${A.id}`}}var Om;((Y)=>{Y[Y.FIRST_PERSON=0]="FIRST_PERSON";Y[Y.THIRD_PERSON=1]="THIRD_PERSON";Y[Y.SPECTATOR=2]="SPECTATOR"})(Om||={});var Pm;((L)=>{L.FACE_ENTITY="PLAYER_CAMERA.FACE_ENTITY";L.FACE_POSITION="PLAYER_CAMERA.FACE_POSITION";L.SET_ATTACHED_TO_ENTITY="PLAYER_CAMERA.SET_ATTACHED_TO_ENTITY";L.SET_ATTACHED_TO_POSITION="PLAYER_CAMERA.SET_ATTACHED_TO_POSITION";L.SET_COLLIDES_WITH_BLOCKS="PLAYER_CAMERA.SET_COLLIDES_WITH_BLOCKS";L.SET_FILM_OFFSET="PLAYER_CAMERA.SET_FILM_OFFSET";L.SET_FORWARD_OFFSET="PLAYER_CAMERA.SET_FORWARD_OFFSET";L.SET_FOV="PLAYER_CAMERA.SET_FOV";L.SET_MODE="PLAYER_CAMERA.SET_MODE";L.SET_OFFSET="PLAYER_CAMERA.SET_OFFSET";L.SET_SHOULDER_ANGLE="PLAYER_CAMERA.SET_SHOULDER_ANGLE";L.SET_TARGET_ENTITY="PLAYER_CAMERA.SET_TARGET_ENTITY";L.SET_TARGET_POSITION="PLAYER_CAMERA.SET_TARGET_POSITION";L.SET_VIEW_MODEL="PLAYER_CAMERA.SET_VIEW_MODEL";L.SET_VIEW_MODEL_HIDDEN_NODES="PLAYER_CAMERA.SET_VIEW_MODEL_HIDDEN_NODES";L.SET_VIEW_MODEL_PITCHES_WITH_CAMERA="PLAYER_CAMERA.SET_VIEW_MODEL_PITCHES_WITH_CAMERA";L.SET_VIEW_MODEL_SHOWN_NODES="PLAYER_CAMERA.SET_VIEW_MODEL_SHOWN_NODES";L.SET_VIEW_MODEL_YAWS_WITH_CAMERA="PLAYER_CAMERA.SET_VIEW_MODEL_YAWS_WITH_CAMERA";L.SET_ZOOM="PLAYER_CAMERA.SET_ZOOM"})(Pm||={});class hD extends BQ{player;_attachedToEntity;_attachedToPosition;_collidesWithBlocks=!0;_filmOffset=0;_forwardOffset=0;_fov=75;_mode=1;_offset={x:0,y:0,z:0};_orientation={pitch:0,yaw:0};_shoulderAngle=0;_targetEntity;_targetPosition;_viewModelUri;_viewModelHiddenNodes=new Set;_viewModelPitchesWithCamera=!1;_viewModelShownNodes=new Set;_viewModelYawsWithCamera=!1;_zoom=1;constructor(A){super();this.player=A}get attachedToEntity(){return this._attachedToEntity}get attachedToPosition(){return this._attachedToPosition}get collidesWithBlocks(){return this._collidesWithBlocks}get facingDirection(){return{x:-Math.sin(this._orientation.yaw)*Math.cos(this._orientation.pitch),y:Math.sin(this._orientation.pitch),z:-Math.cos(this._orientation.yaw)*Math.cos(this._orientation.pitch)}}get facingQuaternion(){let A=this._orientation.pitch*0.5,Q=this._orientation.yaw*0.5,B=Math.cos(A),Y=Math.sin(A),J=Math.cos(Q),C=Math.sin(Q);return{x:Y*J,y:B*C,z:-Y*C,w:B*J}}get filmOffset(){return this._filmOffset}get forwardOffset(){return this._forwardOffset}get fov(){return this._fov}get modelHiddenNodes(){return this._viewModelHiddenNodes}get modelShownNodes(){return this._viewModelShownNodes}get mode(){return this._mode}get offset(){return this._offset}get orientation(){return this._orientation}get shoulderAngle(){return this._shoulderAngle}get targetEntity(){return this._targetEntity}get targetPosition(){return this._targetPosition}get viewModelUri(){return this._viewModelUri??this._attachedToEntity?.modelUri}get viewModelHiddenNodes(){return this._viewModelHiddenNodes}get viewModelPitchesWithCamera(){return this._viewModelPitchesWithCamera}get viewModelShownNodes(){return this._viewModelShownNodes}get viewModelYawsWithCamera(){return this._viewModelYawsWithCamera}get zoom(){return this._zoom}faceEntity(A){if(!this._requirePlayerWorld("faceEntity"))return;this._targetEntity=void 0,this._targetPosition=void 0,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.FACE_ENTITY",{playerCamera:this,entity:A})}facePosition(A){if(!this._requirePlayerWorld("facePosition"))return;this._targetEntity=void 0,this._targetPosition=void 0,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.FACE_POSITION",{playerCamera:this,position:A})}reset(){this._attachedToEntity=void 0,this._attachedToPosition=void 0,this._orientation={pitch:0,yaw:0},this._targetEntity=void 0,this._targetPosition=void 0}setAttachedToEntity(A){if(!this._requirePlayerWorld("setAttachedToEntity"))return;if(!A.isSpawned)return n.error(`PlayerCamera.setAttachedToEntity(): Entity ${A.id} is not spawned!`);if(this._targetEntity===A)return n.error(`PlayerCamera.setAttachedToEntity(): Entity ${A.id} is already set as the target. Attachment and target cannot be the same!`);this._attachedToEntity=A,this._attachedToPosition=void 0,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_ATTACHED_TO_ENTITY",{playerCamera:this,entity:A})}setAttachedToPosition(A){if(!this._requirePlayerWorld("setAttachedToPosition"))return;if(A&&this._targetPosition?.x===A.x&&this._targetPosition?.y===A.y&&this._targetPosition?.z===A.z)return n.error(`PlayerCamera.setAttachedToPosition(): Position ${A.x}, ${A.y}, ${A.z} is already set as the target. Attachment and target cannot be the same!`);this._attachedToPosition=A,this._attachedToEntity=void 0,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_ATTACHED_TO_POSITION",{playerCamera:this,position:A})}setCollidesWithBlocks(A){if(!this._requirePlayerWorld("setCollidesWithBlocks"))return;this._collidesWithBlocks=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_COLLIDES_WITH_BLOCKS",{playerCamera:this,collidesWithBlocks:A})}setFilmOffset(A){if(!this._requirePlayerWorld("setFilmOffset"))return;this._filmOffset=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_FILM_OFFSET",{playerCamera:this,filmOffset:A})}setForwardOffset(A){if(!this._requirePlayerWorld("setForwardOffset"))return;this._forwardOffset=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_FORWARD_OFFSET",{playerCamera:this,forwardOffset:A})}setFov(A){if(!this._requirePlayerWorld("setFov"))return;this._fov=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_FOV",{playerCamera:this,fov:A})}setMode(A){if(!this._requirePlayerWorld("setMode"))return;this._mode=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_MODE",{playerCamera:this,mode:A})}setOffset(A){if(!this._requirePlayerWorld("setOffset"))return;this._offset=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_OFFSET",{playerCamera:this,offset:A})}setOrientationPitch(A){this._orientation.pitch=A}setOrientationYaw(A){this._orientation.yaw=A}setShoulderAngle(A){if(!this._requirePlayerWorld("setShoulderAngle"))return;this._shoulderAngle=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_SHOULDER_ANGLE",{playerCamera:this,shoulderAngle:A})}setTargetEntity(A){if(!this._requirePlayerWorld("setTargetEntity"))return;if(A&&this._attachedToEntity===A)return n.error(`PlayerCamera.setTargetEntity(): Entity ${A.id} is already set as the attachment. Attachment and target cannot be the same!`);if(this._targetEntity=A,A)this._targetPosition=void 0;this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_TARGET_ENTITY",{playerCamera:this,entity:A})}setTargetPosition(A){if(!this._requirePlayerWorld("setTargetPosition"))return;if(A&&this._attachedToPosition?.x===A.x&&this._attachedToPosition?.y===A.y&&this._attachedToPosition?.z===A.z)return n.error(`PlayerCamera.setTargetPosition(): Position ${A.x}, ${A.y}, ${A.z} is already set as the attachment. Attachment and target cannot be the same!`);if(this._targetPosition=A,A)this._targetEntity=void 0;this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_TARGET_POSITION",{playerCamera:this,position:A})}setViewModel(A){if(!this._requirePlayerWorld("setViewModel"))return;if(!this._attachedToEntity)return n.error("PlayerCamera.setViewModel(): Camera is not attached to an entity, cannot set view model! Use camera.setAttachedToEntity() first.");this._viewModelUri=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_VIEW_MODEL",{playerCamera:this,viewModelUri:A})}setViewModelHiddenNodes(A){if(!this._requirePlayerWorld("setViewModelHiddenNodes"))return;this._viewModelHiddenNodes=new Set(A.map((Q)=>Q.toLowerCase())),this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_VIEW_MODEL_HIDDEN_NODES",{playerCamera:this,viewModelHiddenNodes:this._viewModelHiddenNodes})}setViewModelPitchesWithCamera(A){if(!this._requirePlayerWorld("setViewModelPitchesWithCamera"))return;this._viewModelPitchesWithCamera=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_VIEW_MODEL_PITCHES_WITH_CAMERA",{playerCamera:this,viewModelPitchesWithCamera:A})}setViewModelShownNodes(A){if(!this._requirePlayerWorld("setViewModelShownNodes"))return;this._viewModelShownNodes=new Set(A.map((Q)=>Q.toLowerCase())),this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_VIEW_MODEL_SHOWN_NODES",{playerCamera:this,viewModelShownNodes:this._viewModelShownNodes})}setViewModelYawsWithCamera(A){if(!this._requirePlayerWorld("setViewModelYawsWithCamera"))return;this._viewModelYawsWithCamera=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_VIEW_MODEL_YAWS_WITH_CAMERA",{playerCamera:this,viewModelYawsWithCamera:A})}setZoom(A){if(!this._requirePlayerWorld("setZoom"))return;this._zoom=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_ZOOM",{playerCamera:this,zoom:A})}serialize(){return GQ.serializePlayerCamera(this)}_requirePlayerWorld(A){if(!this.player.world)n.error(`PlayerCamera._requirePlayerWorld(): Player ${this.player.id} is not in a world, invoked method: ${A}()`);return!!this.player.world}}var Sw;((X)=>{X.APPEND="PLAYER_UI.APPEND";X.DATA="PLAYER_UI.DATA";X.FREEZE_POINTER_LOCK="PLAYER_UI.FREEZE_POINTER_LOCK";X.LOAD="PLAYER_UI.LOAD";X.LOCK_POINTER="PLAYER_UI.LOCK_POINTER";X.SEND_DATA="PLAYER_UI.SEND_DATA"})(Sw||={});class gD extends BQ{player;constructor(A){super();this.player=A}append(A){if(!this.player.world)return;this.emitWithWorld(this.player.world,"PLAYER_UI.APPEND",{playerUI:this,htmlUri:A})}freezePointerLock(A){if(!this.player.world)return;this.emitWithWorld(this.player.world,"PLAYER_UI.FREEZE_POINTER_LOCK",{playerUI:this,freeze:A})}load(A){if(!this.player.world)return;this.emitWithWorld(this.player.world,"PLAYER_UI.LOAD",{playerUI:this,htmlUri:A})}lockPointer(A){if(!this.player.world)return;this.emitWithWorld(this.player.world,"PLAYER_UI.LOCK_POINTER",{playerUI:this,lock:A})}sendData(A){if(!this.player.world)return;this.emitWithWorld(this.player.world,"PLAYER_UI.SEND_DATA",{playerUI:this,data:A})}}var c7B=["w","a","s","d","sp","sh","tb","ml","mr","q","e","r","f","z","x","c","v","u","i","o","j","k","l","n","m","1","2","3","4","5","6","7","8","9","0","cp","cy","iro","ird","jd"],xD;((G)=>{G.CHAT_MESSAGE_SEND="PLAYER.CHAT_MESSAGE_SEND";G.INTERACT="PLAYER.INTERACT";G.JOINED_WORLD="PLAYER.JOINED_WORLD";G.LEFT_WORLD="PLAYER.LEFT_WORLD";G.RECONNECTED_WORLD="PLAYER.RECONNECTED_WORLD";G.REQUEST_NOTIFICATION_PERMISSION="PLAYER.REQUEST_NOTIFICATION_PERMISSION";G.REQUEST_SYNC="PLAYER.REQUEST_SYNC"})(xD||={});class qE extends BQ{static _devNextPlayerId=1;id;username;profilePictureUrl;camera;connection;cosmetics;ui;_input={};_interactEnabled=!0;_lastUnreliableInputSequenceNumber=0;_maxInteractDistance=20;_persistedData;_world;_worldSwitched=!1;constructor(A,Q){super();this.id=Q?.user.id??`player-${qE._devNextPlayerId++}`,this.username=Q?.user.username??this.id,this.profilePictureUrl=Q?.user.profilePictureURL??void 0,this.camera=new hD(this),this.connection=A,this.cosmetics=N5.instance.getPlayerCosmetics(this.id),this.ui=new gD(this),A.onPacket(hQ.PacketId.CHAT_MESSAGE_SEND,this._onChatMessageSendPacket),A.onPacket(hQ.PacketId.DEBUG_CONFIG,this._onDebugConfigPacket),A.onPacket(hQ.PacketId.INPUT,this._onInputPacket),A.onPacket(hQ.PacketId.SYNC_REQUEST,this._onSyncRequestPacket),A.onPacket(hQ.PacketId.UI_DATA_SEND,this._onUIDataSendPacket)}get input(){return this._input}get isInteractEnabled(){return this._interactEnabled}get maxInteractDistance(){return this._maxInteractDistance}get world(){return this._world}disconnect(){this._leaveWorld(),this.connection.disconnect()}getPersistedData(){if(!this._persistedData)return;let A=Object.keys(this._persistedData);if(A.length===0||A.length===1&&A[0]==="__version")return;return this._persistedData}joinWorld(A){if(this._world===A)return;if(!this._world)this._world=A,this.emitWithWorld(this._world,"PLAYER.JOINED_WORLD",{player:this,world:this._world});else{for(let Q of this._world.entityManager.getPlayerEntitiesByPlayer(this))if(Q.isSpawned)Q.despawn();this.disconnect(),this._world=A,this._worldSwitched=!0}}async scheduleNotification(A,Q){if(!this._world)return n.warning("Player.scheduleNotification(): Player must be in a world to schedule a notification.");return this.emitWithWorld(this._world,"PLAYER.REQUEST_NOTIFICATION_PERMISSION",{player:this}),N5.instance.scheduleNotification(this.id,A,Q)}async unscheduleNotification(A){if(!A)return!1;return N5.instance.unscheduleNotification(A)}async loadInitialPersistedData(){if(this._persistedData)return;this._persistedData=await m7.instance.getPlayerData(this)}reconnected(){if(!this._world)return;if(this._lastUnreliableInputSequenceNumber=0,!this._worldSwitched)this.emitWithWorld(this._world,"PLAYER.RECONNECTED_WORLD",{player:this,world:this._world});else this._worldSwitched=!1,this.emitWithWorld(this._world,"PLAYER.JOINED_WORLD",{player:this,world:this._world})}resetInputs(){this._input={}}setInteractEnabled(A){this._interactEnabled=A}setMaxInteractDistance(A){this._maxInteractDistance=A}setPersistedData(A){if(!this._persistedData){n.warning(`Player.setPersistedData(): Persisted data not found for player ${this.id}`);return}for(let[Q,B]of Object.entries(A))this._persistedData[Q]=B}serialize(){return GQ.serializePlayer(this)}_leaveWorld(){if(!this._world)return;this.emitWithWorld(this._world,"PLAYER.LEFT_WORLD",{player:this,world:this._world}),this._world=void 0}_onChatMessageSendPacket=(A)=>{if(!this._world)return;let Q=A[1].m;if(this._world.chatManager.handleCommand(this,Q)){this._world.chatManager.sendPlayerMessage(this,`Command Entered: ${Q}`,"CCCCCC");return}this.emitWithWorld(this._world,"PLAYER.CHAT_MESSAGE_SEND",{player:this,message:Q})};_onDebugConfigPacket=(A)=>{console.log(A)};_onInputPacket=(A)=>{let Q=A[1];if(Q.sq!==void 0){if(Q.sq{if(!this.world||!this._input.ird||!this._input.iro)return;if(this._interactEnabled){let A={x:this._input.iro[0],y:this._input.iro[1],z:this._input.iro[2]},Q={x:this._input.ird[0],y:this._input.ird[1],z:this._input.ird[2]},B=this.world.entityManager.getPlayerEntitiesByPlayer(this)[0],Y=this.world.simulation.raycast(A,Q,this._maxInteractDistance,{filterExcludeRigidBody:B?.rawRigidBody,filterFlags:FB.QueryFilterFlags.EXCLUDE_SENSORS});if(this.emitWithWorld(this.world,"PLAYER.INTERACT",{player:this,interactOrigin:A,interactDirection:Q,raycastHit:Y}),Y?.hitEntity)Y.hitEntity.interact(this,Y);if(Y?.hitBlock)Y.hitBlock.blockType.interact(this,Y)}};_onSyncRequestPacket=()=>{if(this._world)this.emitWithWorld(this._world,"PLAYER.REQUEST_SYNC",{player:this,receivedAt:Date.now(),receivedAtMs:performance.now()})};_onUIDataSendPacket=(A)=>{this.ui.emit("PLAYER_UI.DATA",{playerUI:this.ui,data:A[1]})}}var Tm;((B)=>{B.BROADCAST_MESSAGE="CHAT.BROADCAST_MESSAGE";B.PLAYER_MESSAGE="CHAT.PLAYER_MESSAGE"})(Tm||={});class fD extends BQ{_commandCallbacks={};_world;constructor(A){super();this._world=A,this._subscribeToPlayerEvents()}registerCommand(A,Q){this._commandCallbacks[A]=Q}unregisterCommand(A){delete this._commandCallbacks[A]}sendBroadcastMessage(A,Q){this._sendBroadcastMessage(void 0,A,Q)}handleCommand(A,Q){let[B,...Y]=Q.split(" "),J=this._commandCallbacks[B];if(J)return J(A,Y,Q),!0;return!1}sendPlayerMessage(A,Q,B){this.emitWithWorld(this._world,"CHAT.PLAYER_MESSAGE",{player:A,message:Q,color:B})}_subscribeToPlayerEvents(){this._world.on("PLAYER.CHAT_MESSAGE_SEND",(A)=>{let{player:Q,message:B}=A;this._sendBroadcastMessage(Q,B)})}_sendBroadcastMessage(A,Q,B){this.emitWithWorld(this._world,"CHAT.BROADCAST_MESSAGE",{player:A,message:Q,color:B})}}var Sm=16,L5=Sm-1,kw=Math.log2(Sm),km=Sm**3,ME=255;class Y9{_blocks;_blockRotations=new Map;_originCoordinate;constructor(A){this._blocks=new Uint8Array(km),this._originCoordinate=A}get blocks(){return this._blocks}get blockRotations(){return this._blockRotations}get originCoordinate(){return this._originCoordinate}static blockIndexToLocalCoordinate(A){return{x:A&L5,y:A>>kw&L5,z:A>>kw*2&L5}}static localCoordinateToBlockIndex(A){return A.x+(A.y<ME)return n.error(`Chunk.setBlock(): Block type id ${Q} is out of bounds (expected 0-${ME}).`);let Y=this._getIndex(A);if(this._blocks[Y]=Q,this._blockRotations.delete(Y),B&&B!==kX.Y_0)this._blockRotations.set(Y,B)}serialize(){return GQ.serializeChunk(this)}_getIndex(A){return Y9.localCoordinateToBlockIndex(A)}_isValidLocalCoordinate(A){return A.x>=0&&A.x<=L5&&A.y>=0&&A.y<=L5&&A.z>=0&&A.z<=L5}}var l7B=32,p7B=km/l7B,bD=54,i7B=BigInt(bD),n7B=BigInt(bD*2),_m;((Y)=>{Y.ADD_CHUNK="CHUNK_LATTICE.ADD_CHUNK";Y.REMOVE_CHUNK="CHUNK_LATTICE.REMOVE_CHUNK";Y.SET_BLOCK="CHUNK_LATTICE.SET_BLOCK"})(_m||={});class mD extends BQ{_blockTypeColliders=new Map;_blockTypeChunkMasks=new Map;_blockTypeCounts=new Map;_chunks=new Map;_rigidBody;_world;constructor(A){super();this._world=A}get chunkCount(){return this._chunks.size}clear(){for(let A of this._blockTypeColliders.values())A.removeFromSimulation();this._chunks.forEach((A)=>{this.emitWithWorld(this._world,"CHUNK_LATTICE.REMOVE_CHUNK",{chunkLattice:this,chunk:A})}),this._blockTypeColliders.clear(),this._blockTypeChunkMasks.clear(),this._blockTypeCounts.clear(),this._chunks.clear()}getBlockId(A){let Q=this.getChunk(A);if(!Q)return 0;return Q.getBlockId(Y9.globalCoordinateToLocalCoordinate(A))}getBlockTypeCollider(A){return this._blockTypeColliders.get(A)}getBlockType(A){let Q=this.getBlockId(A);return Q?this._world.blockTypeRegistry.getBlockType(Q):null}getBlockTypeCount(A){if(!this._isValidBlockTypeId(A))return 0;return this._blockTypeCounts.get(A)??0}getChunk(A){return this._chunks.get(this._getChunkKey(A))}getOrCreateBlockTypeCollider(A,Q){let B=this._blockTypeColliders.get(A);if(B)return B;let J=this._world.blockTypeRegistry.getBlockType(A).createCollider(Q);return this._blockTypeColliders.set(A,J),J}getOrCreateChunk(A){let Q=Y9.globalCoordinateToOriginCoordinate(A),B=this._packCoordinate(Q),Y=this._chunks.get(B);if(Y)return Y;return Y=new Y9(Q),this._chunks.set(B,Y),this.emitWithWorld(this._world,"CHUNK_LATTICE.ADD_CHUNK",{chunkLattice:this,chunk:Y}),Y}getAllChunks(){return Array.from(this._chunks.values())}hasBlock(A){let Q=this.getChunk(A);if(!Q)return!1;return Q.hasBlock(Y9.globalCoordinateToLocalCoordinate(A))}hasChunk(A){return this._chunks.has(this._getChunkKey(A))}initializeBlocks(A){let Q=function*(){for(let B in A){let Y=Number(B),J=A[Y];for(let C=0;C>>0;if(G===0)continue;let F=G;while(F!==0){let W=F&-F,Z=31-Math.clz32(W),U=(X<<5)+Z,$=Y9.blockIndexToLocalCoordinate(U),E=C.getBlockRotation($);Q.push({globalCoordinate:{x:C.originCoordinate.x+$.x,y:C.originCoordinate.y+$.y,z:C.originCoordinate.z+$.z},blockRotation:E===kX.Y_0?void 0:E}),F=(F&F-1)>>>0}}}return Q}_isChunkMaskEmpty(A){for(let Q=0;Q=0&&A<=ME;if(!Q)n.error(`ChunkLattice._isValidBlockTypeId(): Block type id ${A} is out of bounds (expected 0-${ME}).`);return Q}_setBlockTypePlacement(A,Q,B){let Y=this._blockTypeChunkMasks.get(A);if(!Y){if(!B)return;Y=new Map,this._blockTypeChunkMasks.set(A,Y)}let J=this._getChunkKey(Q),C=Y9.globalCoordinateToLocalCoordinate(Q),X=Y9.localCoordinateToBlockIndex(C),G=X>>>5,F=1<<(X&31)>>>0,W=Y.get(J);if(!W){if(!B)return;W=new Uint32Array(p7B),Y.set(J,W)}let Z=(W[G]&F)!==0;if(B){if(Z)return;W[G]|=F,this._blockTypeCounts.set(A,(this._blockTypeCounts.get(A)??0)+1);return}if(!Z)return;W[G]&=~F;let U=Math.max(0,(this._blockTypeCounts.get(A)??0)-1);if(U>0)this._blockTypeCounts.set(A,U);else this._blockTypeCounts.delete(A),this._blockTypeChunkMasks.delete(A);if(this._blockTypeChunkMasks.has(A)&&this._isChunkMaskEmpty(W))Y.delete(J)}}class uD{_colliderHandleBlockTypeMap=new Map;_colliderHandleCollisionCallbackMap=new Map;_colliderHandleEntityMap=new Map;_cleanupBlockTypeColliderHandles=new Set;_pendingCleanupBlockTypeColliderHandles=new Set;_cleanupCollisionCallbackColliderHandles=new Set;_pendingCleanupCollisionCallbackColliderHandles=new Set;_cleanupEntityColliderHandles=new Set;_pendingCleanupEntityColliderHandles=new Set;getColliderBlockType(A){if(!this._requireSimulatedCollider(A))return;return this._colliderHandleBlockTypeMap.get(A.rawCollider.handle)}getColliderCollisionCallback(A){if(!this._requireSimulatedCollider(A))return;return this._colliderHandleCollisionCallbackMap.get(A.rawCollider.handle)}getColliderEntity(A){if(!this._requireSimulatedCollider(A))return;return this._colliderHandleEntityMap.get(A.rawCollider.handle)}getColliderHandleBlockType(A){return this._colliderHandleBlockTypeMap.get(A)}getColliderHandleCollisionCallback(A){return this._colliderHandleCollisionCallbackMap.get(A)}getColliderHandleEntity(A){return this._colliderHandleEntityMap.get(A)}removeColliderBlockType(A){if(!this._requireSimulatedCollider(A))return;this.removeColliderHandleBlockType(A.rawCollider.handle)}removeColliderCollisionCallback(A){if(!this._requireSimulatedCollider(A))return;this.removeColliderHandleCollisionCallback(A.rawCollider.handle)}removeColliderEntity(A){if(!this._requireSimulatedCollider(A))return;this.removeColliderHandleEntity(A.rawCollider.handle)}removeColliderHandleBlockType(A){this._colliderHandleBlockTypeMap.delete(A)}removeColliderHandleCollisionCallback(A){this._colliderHandleCollisionCallbackMap.delete(A)}removeColliderHandleEntity(A){this._colliderHandleEntityMap.delete(A)}setColliderBlockType(A,Q){if(!this._requireSimulatedCollider(A))return;this.setColliderHandleBlockType(A.rawCollider.handle,Q)}setColliderCollisionCallback(A,Q){if(!this._requireSimulatedCollider(A))return;this.setColliderHandleCollisionCallback(A.rawCollider.handle,Q)}setColliderEntity(A,Q){if(!this._requireSimulatedCollider(A))return;this.setColliderHandleEntity(A.rawCollider.handle,Q)}setColliderHandleBlockType(A,Q){this._colliderHandleBlockTypeMap.set(A,Q),this._cleanupBlockTypeColliderHandles.delete(A),this._pendingCleanupBlockTypeColliderHandles.delete(A)}setColliderHandleCollisionCallback(A,Q){this._colliderHandleCollisionCallbackMap.set(A,Q),this._cleanupCollisionCallbackColliderHandles.delete(A),this._pendingCleanupCollisionCallbackColliderHandles.delete(A)}setColliderHandleEntity(A,Q){this._colliderHandleEntityMap.set(A,Q),this._cleanupEntityColliderHandles.delete(A),this._pendingCleanupEntityColliderHandles.delete(A)}queueColliderHandleForCleanup(A){if(this._colliderHandleBlockTypeMap.has(A))this._pendingCleanupBlockTypeColliderHandles.add(A);if(this._colliderHandleCollisionCallbackMap.has(A))this._pendingCleanupCollisionCallbackColliderHandles.add(A);if(this._colliderHandleEntityMap.has(A))this._pendingCleanupEntityColliderHandles.add(A)}cleanup(){for(let A of this._cleanupBlockTypeColliderHandles)this._colliderHandleBlockTypeMap.delete(A);if(this._cleanupBlockTypeColliderHandles.size>0)this._cleanupBlockTypeColliderHandles.clear();for(let A of this._cleanupCollisionCallbackColliderHandles)this._colliderHandleCollisionCallbackMap.delete(A);if(this._cleanupCollisionCallbackColliderHandles.size>0)this._cleanupCollisionCallbackColliderHandles.clear();for(let A of this._cleanupEntityColliderHandles)this._colliderHandleEntityMap.delete(A);if(this._cleanupEntityColliderHandles.size>0)this._cleanupEntityColliderHandles.clear();for(let A of this._pendingCleanupBlockTypeColliderHandles)this._cleanupBlockTypeColliderHandles.add(A);if(this._pendingCleanupBlockTypeColliderHandles.size>0)this._pendingCleanupBlockTypeColliderHandles.clear();for(let A of this._pendingCleanupCollisionCallbackColliderHandles)this._cleanupCollisionCallbackColliderHandles.add(A);if(this._pendingCleanupCollisionCallbackColliderHandles.size>0)this._pendingCleanupCollisionCallbackColliderHandles.clear();for(let A of this._pendingCleanupEntityColliderHandles)this._cleanupEntityColliderHandles.add(A);if(this._pendingCleanupEntityColliderHandles.size>0)this._pendingCleanupEntityColliderHandles.clear()}_requireSimulatedCollider(A){if(!A.rawCollider)n.error("ColliderMap._requireSimulatedCollider(): Collider is not in the simulation.");return!!A.rawCollider}}class C0 extends QZ{static BASE_ENTITY_HEIGHT=1.5;static GROUND_SENSOR_HEIGHT_SCALE=0.125;static GROUND_SENSOR_RADIUS_SCALE=0.23;static JUMP_LAND_HEAVY_VELOCITY_THRESHOLD=-12;static WALL_COLLIDER_HEIGHT_SCALE=0.33;static WALL_COLLIDER_RADIUS_SCALE=0.4;static MOVEMENT_ROTATIONS={wa:Math.PI/4,wd:-Math.PI/4,sa:Math.PI-Math.PI/4,sd:Math.PI+Math.PI/4,s:Math.PI,asd:Math.PI,a:Math.PI/2,d:-Math.PI/2};static EXTERNAL_IMPULSE_DECAY_RATE=0.253;static SWIM_UPWARD_COOLDOWN_MS=600;static SWIMMING_DRAG_FACTOR=0.05;static WATER_ENTRY_SINKING_FACTOR=0.8;static WATER_ENTRY_SINKING_MS=250;applyDirectionalMovementRotations=!0;autoCancelMouseLeftClick=!0;canJump=()=>!0;canRun=()=>!0;canSwim=()=>!0;canWalk=()=>!0;facesCameraWhenIdle=!1;idleLoopedAnimations=["idle-upper","idle-lower"];interactOneshotAnimations=["simple-interact"];jumpLandHeavyOneshotAnimations=["jump-post-heavy"];jumpLandLightOneshotAnimations=["jump-post-light"];jumpOneshotAnimations=["jump-loop"];jumpVelocity=10;runLoopedAnimations=["run-upper","run-lower"];runVelocity=8;sticksToPlatforms=!0;swimFastVelocity=5;swimGravity=0;swimIdleLoopedAnimations=["swim-idle"];swimLoopedAnimations=["swim-forward"];swimMaxGravityVelocity=-1;swimSlowVelocity=3;swimUpwardVelocity=2;walkLoopedAnimations=["walk-upper","walk-lower"];walkVelocity=4;_externalVelocity={x:0,y:0,z:0};_magnitudeYTracker=0;_groundContactCount=0;_internalApplyImpulse=()=>{};_isActivelyMoving=!1;_isFullySubmerged=!1;_justSubmergedUntil=0;_liquidContactCount=0;_platform;_reusableImpulse={x:0,y:0,z:0};_reusablePlatformVelocity={x:0,y:0,z:0};_reusableTargetVelocities={x:0,y:0,z:0};_reusableVelocityClamp={x:0,y:0,z:0};_stepAudio;_swimUpwardCooldownAt=0;constructor(A={}){super();this.applyDirectionalMovementRotations=A.applyDirectionalMovementRotations??this.applyDirectionalMovementRotations,this.autoCancelMouseLeftClick=A.autoCancelMouseLeftClick??this.autoCancelMouseLeftClick,this.facesCameraWhenIdle=A.facesCameraWhenIdle??this.facesCameraWhenIdle,this.sticksToPlatforms=A.sticksToPlatforms??this.sticksToPlatforms,this.canJump=A.canJump??this.canJump,this.canRun=A.canRun??this.canRun,this.canSwim=A.canSwim??this.canSwim,this.canWalk=A.canWalk??this.canWalk,this.jumpVelocity=A.jumpVelocity??this.jumpVelocity,this.runVelocity=A.runVelocity??this.runVelocity,this.walkVelocity=A.walkVelocity??this.walkVelocity,this.swimFastVelocity=A.swimFastVelocity??this.swimFastVelocity,this.swimSlowVelocity=A.swimSlowVelocity??this.swimSlowVelocity,this.swimUpwardVelocity=A.swimUpwardVelocity??this.swimUpwardVelocity,this.swimGravity=A.swimGravity??this.swimGravity,this.swimMaxGravityVelocity=A.swimMaxGravityVelocity??this.swimMaxGravityVelocity,this.idleLoopedAnimations=A.idleLoopedAnimations??this.idleLoopedAnimations,this.interactOneshotAnimations=A.interactOneshotAnimations??this.interactOneshotAnimations,this.jumpOneshotAnimations=A.jumpOneshotAnimations??this.jumpOneshotAnimations,this.jumpLandHeavyOneshotAnimations=A.jumpLandHeavyOneshotAnimations??this.jumpLandHeavyOneshotAnimations,this.jumpLandLightOneshotAnimations=A.jumpLandLightOneshotAnimations??this.jumpLandLightOneshotAnimations,this.runLoopedAnimations=A.runLoopedAnimations??this.runLoopedAnimations,this.swimLoopedAnimations=A.swimLoopedAnimations??this.swimLoopedAnimations,this.swimIdleLoopedAnimations=A.swimIdleLoopedAnimations??this.swimIdleLoopedAnimations,this.walkLoopedAnimations=A.walkLoopedAnimations??this.walkLoopedAnimations}get isActivelyMoving(){return this._isActivelyMoving}get isGrounded(){return this._groundContactCount>0}get isOnPlatform(){return!!this._platform}get isSwimming(){return this._liquidContactCount>0}get platform(){return this._platform}attach(A){super.attach(A),this._internalApplyImpulse=A.applyImpulse.bind(A),A.applyImpulse=(Q)=>{let B=A.mass||1;this._externalVelocity.x+=Q.x/B,this._externalVelocity.y+=Q.y/B,this._externalVelocity.z+=Q.z/B},this._stepAudio=new aH({uri:"audio/sfx/step/stone/stone-step-04.mp3",loop:!0,volume:0.1,referenceDistance:2,cutoffDistance:15,attachedToEntity:A}),A.setCcdEnabled(!0),A.lockAllRotations(),A.on("ENTITY.BLOCK_COLLISION",({blockType:Q,started:B})=>{if(!Q.isLiquid||!this.canSwim(this))return;if(this._liquidContactCount<=0&&B){let Y=A.linearVelocity;A.setLinearVelocity({x:Y.x*this.swimGravity,y:Y.y*this.swimGravity,z:Y.z*this.swimGravity})}if(this._liquidContactCount+=B?1:-1,this._liquidContactCount>0)A.setGravityScale(this.swimGravity),A.stopAllModelAnimations((Y)=>this.swimLoopedAnimations.includes(Y.name)),this._swimUpwardCooldownAt=performance.now()+C0.SWIM_UPWARD_COOLDOWN_MS;else A.setGravityScale(1),A.stopModelAnimations(this.swimLoopedAnimations)})}spawn(A){if(!A.isSpawned)return n.error("DefaultPlayerEntityController.spawn(): Entity is not spawned!");A.createAndAddChildCollider({shape:"cylinder",radius:C0.GROUND_SENSOR_RADIUS_SCALE*(A.height/C0.BASE_ENTITY_HEIGHT),halfHeight:C0.GROUND_SENSOR_HEIGHT_SCALE*(A.height/C0.BASE_ENTITY_HEIGHT),collisionGroups:{belongsTo:[4],collidesWith:[1,2,8]},isSensor:!0,relativePosition:{x:0,y:-A.height/2,z:0},tag:"groundSensor",onCollision:(Q,B)=>{if(!A.isSpawned)return;if(!(Q instanceof N8)||!Q.isLiquid){if(B&&this._groundContactCount===0&&A.linearVelocity.y<-1)if(A.linearVelocity.yw.includes(P.name)||P.loopMode===0);for(let P of w)A.getModelAnimation(P)?.setLoopMode(1),A.getModelAnimation(P)?.play();this._stepAudio?.setPlaybackRate(V?0.75:0.51),this._stepAudio?.play(A.world,!this._stepAudio?.isPlaying)}else if(this._isFullySubmerged&&this.canSwim(this))if(this._stepAudio?.pause(),this._isActivelyMoving){A.stopAllModelAnimations((w)=>this.swimLoopedAnimations.includes(w.name)||w.loopMode===0);for(let w of this.swimLoopedAnimations)A.getModelAnimation(w)?.setLoopMode(1),A.getModelAnimation(w)?.play()}else{A.stopAllModelAnimations((w)=>this.swimIdleLoopedAnimations.includes(w.name)||w.loopMode===0);for(let w of this.swimIdleLoopedAnimations)A.getModelAnimation(w)?.setLoopMode(1),A.getModelAnimation(w)?.play()}else{this._stepAudio?.pause(),A.stopAllModelAnimations((w)=>this.idleLoopedAnimations.includes(w.name)||w.loopMode===0);for(let w of this.idleLoopedAnimations)A.getModelAnimation(w)?.setLoopMode(1),A.getModelAnimation(w)?.play()}let L;if(this.applyDirectionalMovementRotations&&D){if(I)L=$;else if(J&&C&&!G&&!X)L=C0.MOVEMENT_ROTATIONS.wa;else if(J&&G&&!C&&!X)L=C0.MOVEMENT_ROTATIONS.wd;else if(X&&C&&!J&&!G)L=C0.MOVEMENT_ROTATIONS.sa;else if(X&&G&&!J&&!C)L=C0.MOVEMENT_ROTATIONS.sd;else if(X&&!J&&!C&&!G||C&&X&&G&&!J)L=C0.MOVEMENT_ROTATIONS.s;else if(C&&!J&&!X&&!G)L=C0.MOVEMENT_ROTATIONS.a;else if(G&&!J&&!C&&!X)L=C0.MOVEMENT_ROTATIONS.d}if(U){for(let w of this.interactOneshotAnimations)A.getModelAnimation(w)?.setBlendMode(0),A.getModelAnimation(w)?.restart();Q.ml=!this.autoCancelMouseLeftClick}if(D){let w=!this.isSwimming?V?this.runVelocity:this.walkVelocity:V?this.swimFastVelocity:this.swimSlowVelocity;if(I){let P=E+$;this._reusableTargetVelocities.x=-w*Math.sin(P),this._reusableTargetVelocities.z=-w*Math.cos(P)}else{let P=Math.sin(E),_=Math.cos(E);if(J)this._reusableTargetVelocities.x-=w*P,this._reusableTargetVelocities.z-=w*_;if(X)this._reusableTargetVelocities.x+=w*P,this._reusableTargetVelocities.z+=w*_;if(C)this._reusableTargetVelocities.x-=w*_,this._reusableTargetVelocities.z+=w*P;if(G)this._reusableTargetVelocities.x+=w*_,this._reusableTargetVelocities.z-=w*P;let O=Math.sqrt(this._reusableTargetVelocities.x*this._reusableTargetVelocities.x+this._reusableTargetVelocities.z*this._reusableTargetVelocities.z);if(O>w){let k=w/O;this._reusableTargetVelocities.x*=k,this._reusableTargetVelocities.z*=k}}}if(this.isSwimming){if(K.ythis.swimUpwardVelocity*2)this._reusableVelocityClamp.x=K.x,this._reusableVelocityClamp.y=this.swimUpwardVelocity*2,this._reusableVelocityClamp.z=K.z,A.setLinearVelocity(this._reusableVelocityClamp);if(F)this._reusableTargetVelocities.y=-this.swimUpwardVelocity;else if(performance.now()-0.001&&K.y<=3)this._reusableTargetVelocities.y=this.jumpVelocity;else if(this.isSwimming&&performance.now()>this._swimUpwardCooldownAt)this._reusableTargetVelocities.y=this.swimUpwardVelocity}let z=this._platform?.linearVelocity??this._reusablePlatformVelocity;if(this._externalVelocity.y!==0)this._magnitudeYTracker+=this._externalVelocity.y;if(this._externalVelocity.x!==0||this._externalVelocity.y!==0||this._externalVelocity.z!==0){if(this.isGrounded){let w=Math.sqrt(this._externalVelocity.x*this._externalVelocity.x+this._magnitudeYTracker*this._magnitudeYTracker+this._externalVelocity.z*this._externalVelocity.z);if(w>0.01){let _=Math.max(0,w-C0.EXTERNAL_IMPULSE_DECAY_RATE)/w;this._externalVelocity.x*=_,this._magnitudeYTracker*=_,this._externalVelocity.z*=_}else this._externalVelocity.x=0,this._externalVelocity.y=0,this._magnitudeYTracker=0,this._externalVelocity.z=0}}let M=this._reusableTargetVelocities.x+this._externalVelocity.x-K.x+z.x,N=this._reusableTargetVelocities.y+this._externalVelocity.y+z.y,q=this._reusableTargetVelocities.z+this._externalVelocity.z-K.z+z.z;if(this._externalVelocity.y=0,M!==0||N!==0||q!==0){let w=A.mass;this._reusableImpulse.x=M*w,this._reusableImpulse.y=N*w,this._reusableImpulse.z=q*w,this._internalApplyImpulse(this._reusableImpulse)}if(E!==void 0&&(this.facesCameraWhenIdle||this.isActivelyMoving)){let P=(L!==void 0?E+L:E)*0.5;A.setRotation({x:0,y:Math.sin(P),z:0,w:Math.cos(P)})}}}var vm;((G)=>{G.LOAD="SCENE_UI.LOAD";G.SET_ATTACHED_TO_ENTITY="SCENE_UI.SET_ATTACHED_TO_ENTITY";G.SET_OFFSET="SCENE_UI.SET_OFFSET";G.SET_POSITION="SCENE_UI.SET_POSITION";G.SET_STATE="SCENE_UI.SET_STATE";G.SET_VIEW_DISTANCE="SCENE_UI.SET_VIEW_DISTANCE";G.UNLOAD="SCENE_UI.UNLOAD"})(vm||={});class dD extends BQ{_id;_attachedToEntity;_offset;_position;_state={};_templateId;_viewDistance;_world;constructor(A){if(!!A.attachedToEntity===!!A.position)n.fatalError("Either attachedToEntity or position must be set, but not both");super();this._attachedToEntity=A.attachedToEntity,this._offset=A.offset,this._position=A.position,this._state=A.state??{},this._templateId=A.templateId,this._viewDistance=A.viewDistance}get id(){return this._id}get attachedToEntity(){return this._attachedToEntity}get isLoaded(){return this._id!==void 0}get offset(){return this._offset}get position(){return this._position}get state(){return this._state}get templateId(){return this._templateId}get viewDistance(){return this._viewDistance}get world(){return this._world}load(A){if(this.isLoaded)return;if(this._attachedToEntity&&!this._attachedToEntity.isSpawned)return n.error(`SceneUI.load(): Attached entity ${this._attachedToEntity.id} must be spawned before loading SceneUI!`);this._id=A.sceneUIManager.registerSceneUI(this),this._world=A,this.emitWithWorld(A,"SCENE_UI.LOAD",{sceneUI:this})}setAttachedToEntity(A){if(!A.isSpawned)return n.error(`SceneUI.setAttachedToEntity(): Entity ${A.id} is not spawned!`);if(this._attachedToEntity===A)return;if(this._attachedToEntity=A,this._position=void 0,this.isLoaded)this.emitWithWorld(this._world,"SCENE_UI.SET_ATTACHED_TO_ENTITY",{sceneUI:this,entity:A})}setOffset(A){if(this._offset===A)return;if(this._offset=A,this.isLoaded)this.emitWithWorld(this._world,"SCENE_UI.SET_OFFSET",{sceneUI:this,offset:A})}setPosition(A){if(this._position===A)return;if(this._attachedToEntity=void 0,this._position=A,this.isLoaded)this.emitWithWorld(this._world,"SCENE_UI.SET_POSITION",{sceneUI:this,position:A})}setState(A){if(this._state={...this._state,...A},this.isLoaded)this.emitWithWorld(this._world,"SCENE_UI.SET_STATE",{sceneUI:this,state:this._state})}setViewDistance(A){if(this._viewDistance=A,this.isLoaded)this.emitWithWorld(this._world,"SCENE_UI.SET_VIEW_DISTANCE",{sceneUI:this,viewDistance:A})}unload(){if(!this.isLoaded||!this._world)return;this._world.sceneUIManager.unregisterSceneUI(this),this.emitWithWorld(this._world,"SCENE_UI.UNLOAD",{sceneUI:this}),this._id=void 0,this._world=void 0}serialize(){return GQ.serializeSceneUI(this)}}var aVA=0.010000000000000002,oVA=Math.cos(0.026);class n1 extends R0{player;nametagSceneUI;_tickWithPlayerInputEnabled=!0;constructor(A){super(A);this._positionUpdateThresholdSq=aVA,this._rotationUpdateThreshold=oVA,this.player=A.player,this.nametagSceneUI=new dD({templateId:"hytopia:nametag",attachedToEntity:this,offset:{x:0,y:1,z:0},viewDistance:15,state:{username:this.player.username,profilePictureUrl:this.player.profilePictureUrl}})}get isTickWithPlayerInputEnabled(){return this._tickWithPlayerInputEnabled}setTickWithPlayerInputEnabled(A){this._tickWithPlayerInputEnabled=A}spawn(A,Q,B){super.spawn(A,Q,B),this.nametagSceneUI.load(A),this.player.on("PLAYER.CHAT_MESSAGE_SEND",({message:Y})=>{this.nametagSceneUI.setState({chat:Y})})}tick(A){if(!this.isSpawned||!this.world)return;if(!this.controller)return n.error(`PlayerEntity.tick(): PlayerEntity "${this.name}" must have a controller.`);if(this._tickWithPlayerInputEnabled){let{input:Q,camera:B}=this.player;this.controller.tickWithPlayerInput(this,Q,B.orientation,A)}super.tick(A)}}var tVA="models/players/player.gltf",s7B={BACK:"back-anchor",HEAD:"head-anchor",LEFT_ARM:"arm-left-anchor",LEFT_FOOT:"foot-left-anchor",LEFT_HAND:"hand-left-anchor",LEFT_ITEM:"hand-left-anchor",LEFT_LEG:"leg-left-anchor",RIGHT_ARM:"arm-right-anchor",RIGHT_FOOT:"foot-right-anchor",RIGHT_HAND:"hand-right-anchor",RIGHT_ITEM:"hand-right-anchor",RIGHT_LEG:"leg-right-anchor",TORSO:"torso-anchor"};class ym extends n1{_cosmeticHiddenSlots;constructor(A){super({controller:new C0,modelAnimations:[{name:"idle-lower",loopMode:1,play:!0},{name:"idle-upper",loopMode:1,play:!0}],modelUri:tVA,...A});this._cosmeticHiddenSlots=A.cosmeticHiddenSlots??[]}get cosmeticHiddenSlots(){return this._cosmeticHiddenSlots}spawn(A,Q,B){super.spawn(A,Q,B),this.player.cosmetics.then((Y)=>{if(!Y||!this.modelUri)return;if(!(Y.equippedItems.some((C)=>C.item.flags.includes("HIDES_HAIR"))&&!this._cosmeticHiddenSlots.includes("ALL")&&!this._cosmeticHiddenSlots.includes("HEAD"))&&Y.hairModelUri)new R0({modelUri:Y.hairModelUri,modelPreferredShape:"none",modelTextureUri:Y.hairTextureUri,parent:this,parentNodeName:"head-anchor"}).spawn(A,{x:0,y:0,z:0});if(this.modelUri===tVA)this.setModelTextureUri(Y.skinTextureUri);if(this._cosmeticHiddenSlots.includes("ALL"))return;for(let C of Y.equippedItems){let{item:X,slot:G}=C;if(this._cosmeticHiddenSlots.includes(G))continue;let F=s7B[G];if(!F||!TY.instance.modelHasNode(this.modelUri,F))continue;new R0({modelUri:X.modelUrl,modelPreferredShape:"none",parent:this,parentNodeName:F}).spawn(A,{x:0,y:0,z:0})}}).catch((Y)=>n.warning(`DefaultPlayerEntity.spawn(): Failed to get player cosmetics: ${Y}`))}}var eVA;((Y)=>{Y.TICK_REPORT="PERFORMANCE_MONITOR.TICK_REPORT";Y.SPIKE_DETECTED="PERFORMANCE_MONITOR.SPIKE_DETECTED";Y.SNAPSHOT="PERFORMANCE_MONITOR.SNAPSHOT"})(eVA||={});class cY extends BQ{static _instance;static get instance(){if(!cY._instance)cY._instance=new cY;return cY._instance}_enabled=!1;_entityProfilingEnabled=!1;_spikeThresholdMs=50;_tickBudgetMs=16.67;_snapshotIntervalMs=5000;_startTime=0;_operations=new Map;_tickDurations;_tickIndex=0;_tickCount=0;_ticksOverBudget=0;_maxTickMs=0;_totalTicks=0;_currentTick=0;_currentTickStart=0;_currentPhases={};_currentEntityCount=0;_currentPlayerCount=0;_entityCosts=new Map;_snapshotTimer=null;constructor(){super();this._tickDurations=new Float64Array(3600)}get isEnabled(){return this._enabled}get isEntityProfilingEnabled(){return this._enabled&&this._entityProfilingEnabled}enable(A){if(this._enabled)return;this._enabled=!0,this._startTime=performance.now(),this._spikeThresholdMs=A?.spikeThresholdMs??50,this._tickBudgetMs=A?.tickBudgetMs??16.67,this._snapshotIntervalMs=A?.snapshotIntervalMs??5000;let Q=A?.historySize??3600;if(this._tickDurations=new Float64Array(Q),this._tickIndex=0,this._tickCount=0,this._ticksOverBudget=0,this._maxTickMs=0,this._totalTicks=0,this._operations.clear(),this._entityCosts.clear(),this._snapshotIntervalMs>0)this._snapshotTimer=setInterval(()=>{let B=this.getSnapshot();this.emit("PERFORMANCE_MONITOR.SNAPSHOT",B)},this._snapshotIntervalMs)}disable(){if(this._enabled=!1,this._entityProfilingEnabled=!1,this._snapshotTimer)clearInterval(this._snapshotTimer),this._snapshotTimer=null}enableEntityProfiling(A){if(this._entityProfilingEnabled=A,!A)this._entityCosts.clear()}measure(A,Q){if(!this._enabled)return Q();let B=performance.now(),Y=Q(),J=performance.now()-B;return this._recordOperation(A,J),Y}async measureAsync(A,Q){if(!this._enabled)return Q();let B=performance.now(),Y=await Q(),J=performance.now()-B;return this._recordOperation(A,J),Y}startTiming(A){if(!this._enabled)return()=>{};let Q=performance.now();return()=>{this._recordOperation(A,performance.now()-Q)}}beginTick(A,Q,B){this._currentTick=A,this._currentTickStart=performance.now(),this._currentPhases={},this._currentEntityCount=Q,this._currentPlayerCount=B}recordPhase(A,Q){this._currentPhases[A]=Q,this._recordOperation(A,Q)}endTick(){let A=performance.now()-this._currentTickStart;if(this._tickDurations[this._tickIndex]=A,this._tickIndex=(this._tickIndex+1)%this._tickDurations.length,this._tickCount=Math.min(this._tickCount+1,this._tickDurations.length),this._totalTicks++,A>this._maxTickMs)this._maxTickMs=A;if(A>this._tickBudgetMs)this._ticksOverBudget++;let Q=process.memoryUsage().heapUsed/1048576,B={tick:this._currentTick,durationMs:A,budgetMs:this._tickBudgetMs,budgetPercent:A/this._tickBudgetMs*100,phases:{...this._currentPhases},entityCount:this._currentEntityCount,playerCount:this._currentPlayerCount,heapUsedMb:Q};if(this.emit("PERFORMANCE_MONITOR.TICK_REPORT",B),A>this._spikeThresholdMs)this.emit("PERFORMANCE_MONITOR.SPIKE_DETECTED",B)}recordEntityCost(A,Q,B){this._entityCosts.set(A,{tickMs:B,name:Q})}getEntityCosts(){return new Map(this._entityCosts)}getSnapshot(){let A=process.memoryUsage(),B=this._getTickSamples().slice().sort((Y,J)=>Y-J);return{uptimeMs:performance.now()-this._startTime,tickRate:60,avgTickMs:B.length>0?B.reduce((Y,J)=>Y+J,0)/B.length:0,maxTickMs:this._maxTickMs,p95TickMs:B.length>0?B[Math.floor(B.length*0.95)]:0,p99TickMs:B.length>0?B[Math.floor(B.length*0.99)]:0,ticksOverBudget:this._ticksOverBudget,totalTicks:this._totalTicks,budgetMs:this._tickBudgetMs,operations:this._getOperationStats(),memory:{heapUsedMb:A.heapUsed/1048576,heapTotalMb:A.heapTotal/1048576,rssMb:A.rss/1048576}}}resetStats(){this._tickIndex=0,this._tickCount=0,this._ticksOverBudget=0,this._maxTickMs=0,this._totalTicks=0,this._operations.clear(),this._entityCosts.clear()}_recordOperation(A,Q){let B=this._operations.get(A);if(!B)B={count:0,totalMs:0,minMs:1/0,maxMs:0,lastMs:0,samples:new Float64Array(1000),sampleIndex:0,sampleCount:0},this._operations.set(A,B);if(B.count++,B.totalMs+=Q,B.lastMs=Q,QB.maxMs)B.maxMs=Q;B.samples[B.sampleIndex]=Q,B.sampleIndex=(B.sampleIndex+1)%B.samples.length,B.sampleCount=Math.min(B.sampleCount+1,B.samples.length)}_getTickSamples(){if(this._tickCount===0)return[];let A=[];for(let Q=0;QJ-C),A[Q]={count:B.count,totalMs:B.totalMs,avgMs:B.count>0?B.totalMs/B.count:0,minMs:B.minMs===1/0?0:B.minMs,maxMs:B.maxMs,lastMs:B.lastMs,p50Ms:Y.length>0?Y[Math.floor(Y.length*0.5)]:0,p95Ms:Y.length>0?Y[Math.floor(Y.length*0.95)]:0,p99Ms:Y.length>0?Y[Math.floor(Y.length*0.99)]:0}}return A}}class cD{_activeEntities=new Set;_entities=new Map;_nextEntityId=1;_world;constructor(A){this._world=A}get entityCount(){return this._entities.size}get world(){return this._world}registerEntity(A){if(A.id!==void 0)n.fatalError(`EntityManager.registerEntity(): Entity ${A.name} is already assigned the id ${A.id}!`);let Q=this._nextEntityId;if(this._entities.set(Q,A),this._nextEntityId++,!A.isEnvironmental)this._activeEntities.add(A);return Q}unregisterEntity(A){if(A.id===void 0)return n.error(`EntityManager.unregisterEntity(): Entity ${A.name} is not assigned an id!`);if(this._entities.delete(A.id),!A.isEnvironmental)this._activeEntities.delete(A)}getAllEntities(){return Array.from(this._entities.values())}getAllPlayerEntities(){let A=[];return this._entities.forEach((Q)=>{if(Q instanceof n1)A.push(Q)}),A}getPlayerEntitiesByPlayer(A){let Q=[];return this._entities.forEach((B)=>{if(B instanceof n1&&B.player===A)Q.push(B)}),Q}getEntity(A){return this._entities.get(A)}getEntitiesByTag(A){let Q=[];return this._entities.forEach((B)=>{if(B.tag===A)Q.push(B)}),Q}getEntitiesByTagSubstring(A){let Q=[];return this._entities.forEach((B)=>{if(B.tag?.includes(A))Q.push(B)}),Q}getEntityChildren(A){let Q=[];return this._entities.forEach((B)=>{if(B.parent===A)Q.push(B)}),Q}tickEntities(A){let Q=cY.instance,B=Q.isEntityProfilingEnabled;for(let Y of this._activeEntities)if(B){let J=performance.now();Y.tick(A),Q.recordEntityCost(Y.id??0,Y.name,performance.now()-J)}else Y.tick(A)}checkAndEmitUpdates(){for(let A of this._activeEntities)A.checkAndEmitUpdates()}}import{gzipSync as Qb0}from"zlib";var J9=qA(YHA(),1),PNY=J9.default.v1,TNY=J9.default.v1ToV6,SNY=J9.default.v3,JHA=J9.default.v4,kNY=J9.default.v5,_NY=J9.default.v6,vNY=J9.default.v6ToV1,yNY=J9.default.v7,hNY=J9.default.NIL,gNY=J9.default.MAX,xNY=J9.default.version,fNY=J9.default.validate,bNY=J9.default.stringify,mNY=J9.default.parse;var dm;try{dm=new TextDecoder}catch(A){}var _A,R8,t=0;var im=[],IZ=im,iD=0,eB={},DB,uX,z8=0,q5=0,kY,dX,x9=[],UB,CHA={useRecords:!1,mapsAsObjects:!0};class bw{}var nm=new bw;nm.name="MessagePack 0xC1";var u7=!1,EHA=2,cm,lm,pm;try{Function("")}catch(A){EHA=1/0}class cX{constructor(A){if(A){if(A.useRecords===!1&&A.mapsAsObjects===void 0)A.mapsAsObjects=!0;if(A.sequential&&A.trusted!==!1){if(A.trusted=!0,!A.structures&&A.useRecords!=!1){if(A.structures=[],!A.maxSharedStructures)A.maxSharedStructures=0}}if(A.structures)A.structures.sharedLength=A.structures.length;else if(A.getStructures)(A.structures=[]).uninitialized=!0,A.structures.sharedLength=0;if(A.int64AsNumber)A.int64AsType="number"}Object.assign(this,A)}unpack(A,Q){if(_A)return zHA(()=>{return fw(),this?this.unpack(A,Q):cX.prototype.unpack.call(CHA,A,Q)});if(!A.buffer&&A.constructor===ArrayBuffer)A=typeof Buffer<"u"?Buffer.from(A):new Uint8Array(A);if(typeof Q==="object")R8=Q.end||A.length,t=Q.start||0;else t=0,R8=Q>-1?Q:A.length;iD=0,q5=0,uX=null,IZ=im,kY=null,_A=A;try{UB=A.dataView||(A.dataView=new DataView(A.buffer,A.byteOffset,A.byteLength))}catch(B){if(_A=null,A instanceof Uint8Array)throw B;throw Error("Source must be a Uint8Array or Buffer but was a "+(A&&typeof A=="object"?A.constructor.name:typeof A))}if(this instanceof cX){if(eB=this,this.structures)return DB=this.structures,gw(Q);else if(!DB||DB.length>0)DB=[]}else if(eB=CHA,!DB||DB.length>0)DB=[];return gw(Q)}unpackMultiple(A,Q){let B,Y=0;try{u7=!0;let J=A.length,C=this?this.unpack(A,J):uw.unpack(A,J);if(Q){if(Q(C,Y,t)===!1)return;while(tB.slice(0));for(let B=0,Y=A.length;B=32)J.highByte=B-32>>5}}A.sharedLength=A.length;for(let B in Q||[])if(B>=0){let Y=A[B],J=Q[B];if(J){if(Y)(A.restoreStructures||(A.restoreStructures=[]))[B]=Y;A[B]=J}}return this.structures=A}decode(A,Q){return this.unpack(A,Q)}}function gw(A){try{if(!eB.trusted&&!u7){let B=DB.sharedLength||0;if(B=32&&cm){if(Q=cm(_A,t,R8,eB),_A=null,!(A&&A.lazy)&&Q)Q=Q.toJSON();t=R8}else Q=GY();if(kY)t=kY.postBundlePosition,kY=null;if(u7)DB.restoreStructures=null;if(t==R8){if(DB&&DB.restoreStructures)XHA();if(DB=null,_A=null,dX)dX=null}else if(t>R8)throw Error("Unexpected end of MessagePack data");else if(!u7){let B;try{B=JSON.stringify(Q,(Y,J)=>typeof J==="bigint"?`${J}n`:J).slice(0,100)}catch(Y){B="(JSON view not available "+Y+")"}throw Error("Data read, but end of buffer not reached "+B)}return Q}catch(Q){if(DB&&DB.restoreStructures)XHA();if(fw(),Q instanceof RangeError||Q.message.startsWith("Unexpected end of buffer")||t>R8)Q.incomplete=!0;throw Q}}function XHA(){for(let A in DB.restoreStructures)DB[A]=DB.restoreStructures[A];DB.restoreStructures=null}function GY(){let A=_A[t++];if(A<160)if(A<128)if(A<64)return A;else{let Q=DB[A&63]||eB.getStructures&&KHA()[A&63];if(Q){if(!Q.read)Q.read=sm(Q,A&63);return Q.read()}else return A}else if(A<144)if(A-=128,eB.mapsAsObjects){let Q={};for(let B=0;B=t)return uX.slice(t-z8,(t+=Q)-z8);if(q5==0&&R8<140){let B=Q<16?rm(Q):LHA(Q);if(B!=null)return B}return xw(Q)}else{let Q;switch(A){case 192:return null;case 193:if(kY)if(Q=GY(),Q>0)return kY[1].slice(kY.position1,kY.position1+=Q);else return kY[0].slice(kY.position0,kY.position0-=Q);return nm;case 194:return!1;case 195:return!0;case 196:if(Q=_A[t++],Q===void 0)throw Error("Unexpected end of buffer");return um(Q);case 197:return Q=UB.getUint16(t),t+=2,um(Q);case 198:return Q=UB.getUint32(t),t+=4,um(Q);case 199:return VZ(_A[t++]);case 200:return Q=UB.getUint16(t),t+=2,VZ(Q);case 201:return Q=UB.getUint32(t),t+=4,VZ(Q);case 202:if(Q=UB.getFloat32(t),eB.useFloat32>2){let B=DZ[(_A[t]&127)<<1|_A[t+1]>>7];return t+=4,(B*Q+(Q>0?0.5:-0.5)>>0)/B}return t+=4,Q;case 203:return Q=UB.getFloat64(t),t+=8,Q;case 204:return _A[t++];case 205:return Q=UB.getUint16(t),t+=2,Q;case 206:return Q=UB.getUint32(t),t+=4,Q;case 207:if(eB.int64AsType==="number")Q=UB.getUint32(t)*4294967296,Q+=UB.getUint32(t+4);else if(eB.int64AsType==="string")Q=UB.getBigUint64(t).toString();else if(eB.int64AsType==="auto"){if(Q=UB.getBigUint64(t),Q<=BigInt(2)<=BigInt(-2)<=t)return uX.slice(t-z8,(t+=Q)-z8);return VHA(Q);case 218:if(Q=UB.getUint16(t),t+=2,q5>=t)return uX.slice(t-z8,(t+=Q)-z8);return IHA(Q);case 219:if(Q=UB.getUint32(t),t+=4,q5>=t)return uX.slice(t-z8,(t+=Q)-z8);return HHA(Q);case 220:return Q=UB.getUint16(t),t+=2,FHA(Q);case 221:return Q=UB.getUint32(t),t+=4,FHA(Q);case 222:return Q=UB.getUint16(t),t+=2,WHA(Q);case 223:return Q=UB.getUint32(t),t+=4,WHA(Q);default:if(A>=224)return A-256;if(A===void 0){let B=Error("Unexpected end of MessagePack data");throw B.incomplete=!0,B}throw Error("Unknown MessagePack token "+A)}}}var zWB=/^[a-zA-Z_$][a-zA-Z\d_$]*$/;function sm(A,Q){function B(){if(B.count++>EHA){let J=A.read=Function("r","return function(){return "+(eB.freezeData?"Object.freeze":"")+"({"+A.map((C)=>C==="__proto__"?"__proto_:r()":zWB.test(C)?C+":r()":"["+JSON.stringify(C)+"]:r()").join(",")+"})}")(GY);if(A.highByte===0)A.read=GHA(Q,A.read);return J()}let Y={};for(let J=0,C=A.length;J{return function(){let B=_A[t++];if(B===0)return Q();let Y=A<32?-(A+(B<<5)):A+(B<<5),J=DB[Y]||KHA()[Y];if(!J)throw Error("Record id is not defined for "+Y);if(!J.read)J.read=sm(J,A);return J.read()}};function KHA(){let A=zHA(()=>{return _A=null,eB.getStructures()});return DB=eB._mergeStructures(A,DB)}var xw=HZ,VHA=HZ,IHA=HZ,HHA=HZ,mw=!1;function DHA(A){mw=!0,xw=Q(1),VHA=Q(2),IHA=Q(3),HHA=Q(5);function Q(B){return function(J){let C=IZ[iD++];if(C==null){if(kY)return HZ(J);let G=_A.byteOffset,F=A(t-B+G,R8+G,_A.buffer);if(typeof F=="string")C=F,IZ=im;else if(IZ=F,iD=1,q5=1,C=IZ[0],C===void 0)throw Error("Unexpected end of buffer")}let X=C.length;if(X<=J)return t+=J,C;return uX=C,z8=t,q5=t+X,t+=J,C.slice(0,J)}}}function HZ(A){let Q;if(A<16){if(Q=rm(A))return Q}if(A>64&&dm)return dm.decode(_A.subarray(t,t+=A));let B=t+A,Y=[];Q="";while(t65535)F-=65536,Y.push(F>>>10&1023|55296),F=56320|F&1023;Y.push(F)}else Y.push(J);if(Y.length>=4096)Q+=lY.apply(String,Y),Y.length=0}if(Y.length>0)Q+=lY.apply(String,Y);return Q}function NHA(A,Q,B){let Y=_A;_A=A,t=Q;try{return HZ(B)}finally{_A=Y}}function FHA(A){let Q=Array(A);for(let B=0;B0){t=Q;return}B[Y]=J}return lY.apply(String,B)}function rm(A){if(A<4)if(A<2)if(A===0)return"";else{let Q=_A[t++];if((Q&128)>1){t-=1;return}return lY(Q)}else{let Q=_A[t++],B=_A[t++];if((Q&128)>0||(B&128)>0){t-=2;return}if(A<3)return lY(Q,B);let Y=_A[t++];if((Y&128)>0){t-=3;return}return lY(Q,B,Y)}else{let Q=_A[t++],B=_A[t++],Y=_A[t++],J=_A[t++];if((Q&128)>0||(B&128)>0||(Y&128)>0||(J&128)>0){t-=4;return}if(A<6)if(A===4)return lY(Q,B,Y,J);else{let C=_A[t++];if((C&128)>0){t-=5;return}return lY(Q,B,Y,J,C)}else if(A<8){let C=_A[t++],X=_A[t++];if((C&128)>0||(X&128)>0){t-=6;return}if(A<7)return lY(Q,B,Y,J,C,X);let G=_A[t++];if((G&128)>0){t-=7;return}return lY(Q,B,Y,J,C,X,G)}else{let C=_A[t++],X=_A[t++],G=_A[t++],F=_A[t++];if((C&128)>0||(X&128)>0||(G&128)>0||(F&128)>0){t-=8;return}if(A<10)if(A===8)return lY(Q,B,Y,J,C,X,G,F);else{let W=_A[t++];if((W&128)>0){t-=9;return}return lY(Q,B,Y,J,C,X,G,F,W)}else if(A<12){let W=_A[t++],Z=_A[t++];if((W&128)>0||(Z&128)>0){t-=10;return}if(A<11)return lY(Q,B,Y,J,C,X,G,F,W,Z);let U=_A[t++];if((U&128)>0){t-=11;return}return lY(Q,B,Y,J,C,X,G,F,W,Z,U)}else{let W=_A[t++],Z=_A[t++],U=_A[t++],$=_A[t++];if((W&128)>0||(Z&128)>0||(U&128)>0||($&128)>0){t-=12;return}if(A<14)if(A===12)return lY(Q,B,Y,J,C,X,G,F,W,Z,U,$);else{let E=_A[t++];if((E&128)>0){t-=13;return}return lY(Q,B,Y,J,C,X,G,F,W,Z,U,$,E)}else{let E=_A[t++],K=_A[t++];if((E&128)>0||(K&128)>0){t-=14;return}if(A<15)return lY(Q,B,Y,J,C,X,G,F,W,Z,U,$,E,K);let I=_A[t++];if((I&128)>0){t-=15;return}return lY(Q,B,Y,J,C,X,G,F,W,Z,U,$,E,K,I)}}}}}function ZHA(){let A=_A[t++],Q;if(A<192)Q=A-160;else switch(A){case 217:Q=_A[t++];break;case 218:Q=UB.getUint16(t),t+=2;break;case 219:Q=UB.getUint32(t),t+=4;break;default:throw Error("Expected string")}return HZ(Q)}function um(A){return eB.copyBuffers?Uint8Array.prototype.slice.call(_A,t,t+=A):_A.subarray(t,t+=A)}function VZ(A){let Q=_A[t++];if(x9[Q]){let B;return x9[Q](_A.subarray(t,B=t+=A),(Y)=>{t=Y;try{return GY()}finally{t=B}})}else throw Error("Unknown extension type "+Q)}var $HA=Array(4096);function qHA(){let A=_A[t++];if(A>=160&&A<192){if(A=A-160,q5>=t)return uX.slice(t-z8,(t+=A)-z8);else if(!(q5==0&&R8<180))return xw(A)}else return t--,MHA(GY());let Q=(A<<5^(A>1?UB.getUint16(t):A>0?_A[t]:0))&4095,B=$HA[Q],Y=t,J=t+A-3,C,X=0;if(B&&B.bytes==A){while(Y["string","number","boolean","bigint"].includes(typeof Q)))return A.flat().toString();throw Error(`Invalid property type for record: ${typeof A}`)}var UHA=(A,Q)=>{let B=GY().map(MHA),Y=A;if(Q!==void 0)A=A<32?-((Q<<5)+A):(Q<<5)+A,B.highByte=Q;let J=DB[A];if(J&&(J.isShared||u7))(DB.restoreStructures||(DB.restoreStructures=[]))[A]=J;return DB[A]=B,B.read=sm(B,Y),B.read()};x9[0]=()=>{};x9[0].noBuffer=!0;x9[66]=(A)=>{let Q=A.length,B=BigInt(A[0]&128?A[0]-256:A[0]);for(let Y=1;Y{let A=GY();return(RWB[A[0]]||Error)(A[1],{cause:A[2]})};x9[105]=(A)=>{if(eB.structuredClone===!1)throw Error("Structured clone extension is disabled");let Q=UB.getUint32(t-4);if(!dX)dX=new Map;let B=_A[t],Y;if(B>=144&&B<160||B==220||B==221)Y=[];else if(B>=128&&B<144||B==222||B==223)Y=new Map;else if((B>=199&&B<=201||B>=212&&B<=216)&&_A[t+1]===115)Y=new Set;else Y={};let J={target:Y};dX.set(Q,J);let C=GY();if(!J.used)return J.target=C;else Object.assign(Y,C);if(Y instanceof Map)for(let[X,G]of C.entries())Y.set(X,G);if(Y instanceof Set)for(let X of Array.from(C))Y.add(X);return Y};x9[112]=(A)=>{if(eB.structuredClone===!1)throw Error("Structured clone extension is disabled");let Q=UB.getUint32(t-4),B=dX.get(Q);return B.used=!0,B.target};x9[115]=()=>new Set(GY());var am=["Int8","Uint8","Uint8Clamped","Int16","Uint16","Int32","Uint32","Float32","Float64","BigInt64","BigUint64"].map((A)=>A+"Array"),wWB=typeof globalThis==="object"?globalThis:window;x9[116]=(A)=>{let Q=A[0],B=Uint8Array.prototype.slice.call(A,1).buffer,Y=am[Q];if(!Y){if(Q===16)return B;if(Q===17)return new DataView(B);throw Error("Could not find typed array for code "+Q)}return new wWB[Y](B)};x9[120]=()=>{let A=GY();return new RegExp(A[0],A[1])};var jWB=[];x9[98]=(A)=>{let Q=(A[0]<<24)+(A[1]<<16)+(A[2]<<8)+A[3],B=t;return t+=Q-A.length,kY=jWB,kY=[ZHA(),ZHA()],kY.position0=0,kY.position1=0,kY.postBundlePosition=t,t=B,GY()};x9[255]=(A)=>{if(A.length==4)return new Date((A[0]*16777216+(A[1]<<16)+(A[2]<<8)+A[3])*1000);else if(A.length==8)return new Date(((A[0]<<22)+(A[1]<<14)+(A[2]<<6)+(A[3]>>2))/1e6+((A[3]&3)*4294967296+A[4]*16777216+(A[5]<<16)+(A[6]<<8)+A[7])*1000);else if(A.length==12)return new Date(((A[0]<<24)+(A[1]<<16)+(A[2]<<8)+A[3])/1e6+((A[4]&128?-281474976710656:0)+A[6]*1099511627776+A[7]*4294967296+A[8]*16777216+(A[9]<<16)+(A[10]<<8)+A[11])*1000);else return new Date("invalid")};function zHA(A){if(pm)pm();let Q=R8,B=t,Y=iD,J=z8,C=q5,X=uX,G=IZ,F=dX,W=kY,Z=new Uint8Array(_A.slice(0,R8)),U=DB,$=DB.slice(0,DB.length),E=eB,K=u7,I=A();return R8=Q,t=B,iD=Y,z8=J,q5=C,uX=X,IZ=G,dX=F,kY=W,_A=Z,u7=K,DB=U,DB.splice(0,DB.length,...$),eB=E,UB=new DataView(_A.buffer,_A.byteOffset,_A.byteLength),I}function fw(){_A=null,dX=null,DB=null}var DZ=Array(147);for(let A=0;A<256;A++)DZ[A]=+("1e"+Math.floor(45.15-A*0.30103));var uw=new cX({useRecords:!1}),OWB=uw.unpack,PWB=uw.unpackMultiple,TWB=uw.unpack,nD={NEVER:0,ALWAYS:1,DECIMAL_ROUND:3,DECIMAL_FIT:4},SWB=new Float32Array(1),dNY=new Uint8Array(SWB.buffer,0,4);function RHA(A,Q,B){cm=A,lm=Q,pm=B}var cw;try{cw=new TextEncoder}catch(A){}var em,OHA,rD=typeof Buffer<"u",dw=rD?function(A){return Buffer.allocUnsafeSlow(A)}:Uint8Array,PHA=rD?Buffer:Uint8Array,wHA=rD?4294967296:2144337920,$A,sD,X0,BA=0,C9,y0=null,THA,kWB=21760,_WB=/[\u0080-\uFFFF]/,s1=Symbol("record-id");class NZ extends cX{constructor(A){super(A);this.offset=0;let Q,B,Y,J,C,X=PHA.prototype.utf8Write?function(T,S){return $A.utf8Write(T,S,$A.byteLength-S)}:cw&&cw.encodeInto?function(T,S){return cw.encodeInto(T,$A.subarray(S)).written}:!1,G=this;if(!A)A={};let F=A&&A.sequential,W=A.structures||A.saveStructures,Z=A.maxSharedStructures;if(Z==null)Z=W?32:0;if(Z>8160)throw Error("Maximum maxSharedStructure is 8160");if(A.structuredClone&&A.moreTypes==null)this.moreTypes=!0;let U=A.maxOwnStructures;if(U==null)U=W?32:64;if(!this.structures&&A.useRecords!=!1)this.structures=[];let $=Z>32||U+Z>64,E=Z+64,K=Z+U+64;if(K>8256)throw Error("Maximum maxSharedStructure + maxOwnStructure is 8192");let I=[],V=0,H=0;this.pack=this.encode=function(T,S){if(!$A)$A=new dw(8192),X0=$A.dataView||($A.dataView=new DataView($A.buffer,0,8192)),BA=0;if(C9=$A.length-10,C9-BA<2048)$A=new dw($A.length),X0=$A.dataView||($A.dataView=new DataView($A.buffer,0,$A.length)),C9=$A.length-10,BA=0;else BA=BA+7&2147483640;if(B=BA,S&bWB)BA+=S&255;if(C=G.structuredClone?new Map:null,G.bundleStrings&&typeof T!=="string")y0=[],y0.size=1/0;else y0=null;if(J=G.structures,J){if(J.uninitialized)J=G._mergeStructures(G.getStructures());let y=J.sharedLength||0;if(y>Z)throw Error("Shared structures is larger than maximum shared structures, try increasing maxSharedStructures to "+J.sharedLength);if(!J.transitions){J.transitions=Object.create(null);for(let g=0;gp.offset>l.offset?1:-1),h=g.length,m=-1;while(y&&h>0){let p=g[--h].offset+B;if(py.position+B){if(m>=0)m+=6}else{if(m>=0)X0.setUint32(y.position+B,X0.getUint32(y.position+B)+m),m=-1;y=y.previous,h++}}if(m>=0&&y)X0.setUint32(y.position+B,X0.getUint32(y.position+B)+m);if(BA+=g.length*6,BA>C9)P(BA);G.offset=BA;let i=yWB($A.subarray(B,BA),g);return C=null,i}if(G.offset=BA,S&xWB)return $A.start=B,$A.end=BA,$A;return $A.subarray(B,BA)}catch(y){throw v=y,y}finally{if(J){if(D(),Y&&G.saveStructures){let y=J.sharedLength||0,g=$A.subarray(B,BA),h=SHA(J,G);if(!v){if(G.saveStructures(h,h.isCompatible)===!1)return G.pack(T,S);if(G.lastNamedStructuresLength=y,$A.length>1073741824)$A=null;return g}}}if($A.length>1073741824)$A=null;if(S&fWB)BA=B}};let D=()=>{if(H<10)H++;let T=J.sharedLength||0;if(J.length>T&&!F)J.length=T;if(V>1e4){if(J.transitions=null,H=0,V=0,I.length>0)I=[]}else if(I.length>0&&!F){for(let S=0,v=I.length;S{var S=T.length;if(S<16)$A[BA++]=144|S;else if(S<65536)$A[BA++]=220,$A[BA++]=S>>8,$A[BA++]=S&255;else $A[BA++]=221,X0.setUint32(BA,S),BA+=4;for(let v=0;v{if(BA>C9)$A=P(BA);var S=typeof T,v;if(S==="string"){let y=T.length;if(y0&&y>=4&&y<4096){if((y0.size+=y)>kWB){let i,p=(y0[0]?y0[0].length*3+y0[1].length:0)+10;if(BA+p>C9)$A=P(BA+p);let l;if(y0.position)l=y0,$A[BA]=200,BA+=3,$A[BA++]=98,i=BA-B,BA+=4,jHA(B,z,0),X0.setUint16(i+B-3,BA-B-i);else $A[BA++]=214,$A[BA++]=98,i=BA-B,BA+=4;y0=["",""],y0.previous=l,y0.size=0,y0.position=i}let m=_WB.test(T);y0[m?0:1]+=T,$A[BA++]=193,z(m?-y:y);return}let g;if(y<32)g=1;else if(y<256)g=2;else if(y<65536)g=3;else g=5;let h=y*3;if(BA+h>C9)$A=P(BA+h);if(y<64||!X){let m,i,p,l=BA+g;for(m=0;m>6|192,$A[l++]=i&63|128;else if((i&64512)===55296&&((p=T.charCodeAt(m+1))&64512)===56320)i=65536+((i&1023)<<10)+(p&1023),m++,$A[l++]=i>>18|240,$A[l++]=i>>12&63|128,$A[l++]=i>>6&63|128,$A[l++]=i&63|128;else $A[l++]=i>>12|224,$A[l++]=i>>6&63|128,$A[l++]=i&63|128;v=l-BA-g}else v=X(T,BA+g);if(v<32)$A[BA++]=160|v;else if(v<256){if(g<2)$A.copyWithin(BA+2,BA+1,BA+1+v);$A[BA++]=217,$A[BA++]=v}else if(v<65536){if(g<3)$A.copyWithin(BA+3,BA+2,BA+2+v);$A[BA++]=218,$A[BA++]=v>>8,$A[BA++]=v&255}else{if(g<5)$A.copyWithin(BA+5,BA+3,BA+3+v);$A[BA++]=219,X0.setUint32(BA,v),BA+=4}BA+=v}else if(S==="number")if(T>>>0===T)if(T<32||T<128&&this.useRecords===!1||T<64&&!this.randomAccessStructure)$A[BA++]=T;else if(T<256)$A[BA++]=204,$A[BA++]=T;else if(T<65536)$A[BA++]=205,$A[BA++]=T>>8,$A[BA++]=T&255;else $A[BA++]=206,X0.setUint32(BA,T),BA+=4;else if(T>>0===T)if(T>=-32)$A[BA++]=256+T;else if(T>=-128)$A[BA++]=208,$A[BA++]=T+256;else if(T>=-32768)$A[BA++]=209,X0.setInt16(BA,T),BA+=2;else $A[BA++]=210,X0.setInt32(BA,T),BA+=4;else{let y;if((y=this.useFloat32)>0&&T<4294967296&&T>=-2147483648){$A[BA++]=202,X0.setFloat32(BA,T);let g;if(y<4||(g=T*DZ[($A[BA]&127)<<1|$A[BA+1]>>7])>>0===g){BA+=4;return}else BA--}$A[BA++]=203,X0.setFloat64(BA,T),BA+=8}else if(S==="object"||S==="function")if(!T)$A[BA++]=192;else{if(C){let g=C.get(T);if(g){if(!g.id){let h=C.idsToInsert||(C.idsToInsert=[]);g.id=h.push(g)}$A[BA++]=214,$A[BA++]=112,X0.setUint32(BA,g.id),BA+=4;return}else C.set(T,{offset:BA-B})}let y=T.constructor;if(y===Object)w(T);else if(y===Array)L(T);else if(y===Map)if(this.mapAsEmptyObject)$A[BA++]=128;else{if(v=T.size,v<16)$A[BA++]=128|v;else if(v<65536)$A[BA++]=222,$A[BA++]=v>>8,$A[BA++]=v&255;else $A[BA++]=223,X0.setUint32(BA,v),BA+=4;for(let[g,h]of T)z(g),z(h)}else{for(let g=0,h=em.length;g{if($A=p,p=null,BA+=b,BA>C9)P(BA);return{target:$A,targetView:X0,position:BA-b}},z)}finally{if(p)$A=p,X0=l,BA=d,C9=$A.length-10}if(x){if(x.length+BA>C9)P(x.length+BA);BA=vWB(x,$A,BA,i.type)}return}}if(Array.isArray(T))L(T);else{if(T.toJSON){let g=T.toJSON();if(g!==T)return z(g)}if(S==="function")return z(this.writeFunction&&this.writeFunction(T));w(T)}}}else if(S==="boolean")$A[BA++]=T?195:194;else if(S==="bigint"){if(T<9223372036854776000&&T>=-9223372036854776000)$A[BA++]=211,X0.setBigInt64(BA,T);else if(T<18446744073709552000&&T>0)$A[BA++]=207,X0.setBigUint64(BA,T);else if(this.largeBigIntToFloat)$A[BA++]=203,X0.setFloat64(BA,Number(T));else if(this.largeBigIntToString)return z(T.toString());else if((this.useBigIntExtension||this.moreTypes)&&T-(BigInt(2)**BigInt(1023))){$A[BA++]=199,BA++,$A[BA++]=66;let y=[],g;do{let h=T&BigInt(255);g=(h&BigInt(128))===(T>=BigInt(8)}while(!((T===BigInt(0)||T===BigInt(-1))&&g));$A[BA-2]=y.length;for(let h=y.length;h>0;)$A[BA++]=Number(y[--h]);return}else throw RangeError(T+" was too large to fit in MessagePack 64-bit integer format, use useBigIntExtension, or set largeBigIntToFloat to convert to float-64, or set largeBigIntToString to convert to string");BA+=8}else if(S==="undefined")if(this.encodeUndefinedAsNil)$A[BA++]=192;else $A[BA++]=212,$A[BA++]=0,$A[BA++]=0;else throw Error("Unknown type: "+S)},M=this.variableMapSize||this.coercibleKeyAsNumber||this.skipValues?(T)=>{let S;if(this.skipValues){S=[];for(let g in T)if((typeof T.hasOwnProperty!=="function"||T.hasOwnProperty(g))&&!this.skipValues.includes(T[g]))S.push(g)}else S=Object.keys(T);let v=S.length;if(v<16)$A[BA++]=128|v;else if(v<65536)$A[BA++]=222,$A[BA++]=v>>8,$A[BA++]=v&255;else $A[BA++]=223,X0.setUint32(BA,v),BA+=4;let y;if(this.coercibleKeyAsNumber)for(let g=0;g{$A[BA++]=222;let S=BA-B;BA+=2;let v=0;for(let y in T)if(typeof T.hasOwnProperty!=="function"||T.hasOwnProperty(y))z(y),z(T[y]),v++;if(v>65535)throw Error('Object is too large to serialize with fast 16-bit map size, use the "variableMapSize" option to serialize this object');$A[S+++B]=v>>8,$A[S+B]=v&255},N=this.useRecords===!1?M:A.progressiveRecords&&!$?(T)=>{let S,v=J.transitions||(J.transitions=Object.create(null)),y=BA++-B,g;for(let h in T)if(typeof T.hasOwnProperty!=="function"||T.hasOwnProperty(h)){if(S=v[h],S)v=S;else{let m=Object.keys(T),i=v;v=J.transitions;let p=0;for(let l=0,d=m.length;l{let S,v=J.transitions||(J.transitions=Object.create(null)),y=0;for(let h in T)if(typeof T.hasOwnProperty!=="function"||T.hasOwnProperty(h)){if(S=v[h],!S)S=v[h]=Object.create(null),y++;v=S}let g=v[s1];if(g)if(g>=96&&$)$A[BA++]=((g-=96)&31)+96,$A[BA++]=g>>5;else $A[BA++]=g;else _(v,v.__keys__||Object.keys(T),y);for(let h in T)if(typeof T.hasOwnProperty!=="function"||T.hasOwnProperty(h))z(T[h])},q=typeof this.useRecords=="function"&&this.useRecords,w=q?(T)=>{q(T)?N(T):M(T)}:N,P=(T)=>{let S;if(T>16777216){if(T-B>wHA)throw Error("Packed buffer would be larger than maximum buffer size");S=Math.min(wHA,Math.round(Math.max((T-B)*(T>67108864?1.25:2),4194304)/4096)*4096)}else S=(Math.max(T-B<<2,$A.length-1)>>12)+1<<12;let v=new dw(S);if(X0=v.dataView||(v.dataView=new DataView(v.buffer,0,S)),T=Math.min(T,$A.length),$A.copy)$A.copy(v,0,B,T);else v.set($A.slice(B,T));return BA-=B,B=0,C9=v.length-10,$A=v},_=(T,S,v)=>{let y=J.nextId;if(!y)y=64;if(y=K)y=E;J.nextId=y+1}let g=S.highByte=y>=96&&$?y-96>>5:-1;if(T[s1]=y,T.__keys__=S,J[y-64]=S,y=0)$A[BA++]=(y&31)+96,$A[BA++]=g;else $A[BA++]=y;else{if(g>=0)$A[BA++]=213,$A[BA++]=114,$A[BA++]=(y&31)+96,$A[BA++]=g;else $A[BA++]=212,$A[BA++]=114,$A[BA++]=y;if(v)V+=H*v;if(I.length>=U)I.shift()[s1]=0;I.push(T),z(S)}},O=(T,S,v,y)=>{let g=$A,h=BA,m=C9,i=B;if($A=sD,BA=0,B=0,!$A)sD=$A=new dw(8192);C9=$A.length-10,_(T,S,y),sD=$A;let p=BA;if($A=g,BA=h,C9=m,B=i,p>1){let l=BA+p-1;if(l>C9)P(l);let d=v+B;$A.copyWithin(d+p,d+1,BA),$A.set(sD.slice(0,p),d),BA=l}else $A[v+B]=sD[0]},k=(T)=>{let S=THA(T,$A,B,BA,J,P,(v,y,g)=>{if(g)return Y=!0;BA=y;let h=$A;if(z(v),D(),h!==$A)return{position:BA,targetView:X0,target:$A};return BA},this);if(S===0)return w(T);BA=S}}useBuffer(A){$A=A,$A.dataView||($A.dataView=new DataView($A.buffer,$A.byteOffset,$A.byteLength)),BA=0}set position(A){BA=A}get position(){return BA}clearSharedData(){if(this.structures)this.structures=[];if(this.typedStructs)this.typedStructs=[]}}OHA=[Date,Set,Error,RegExp,ArrayBuffer,Object.getPrototypeOf(Uint8Array.prototype).constructor,DataView,bw];em=[{pack(A,Q,B){let Y=A.getTime()/1000;if((this.useTimestamp32||A.getMilliseconds()===0)&&Y>=0&&Y<4294967296){let{target:J,targetView:C,position:X}=Q(6);J[X++]=214,J[X++]=255,C.setUint32(X,Y)}else if(Y>0&&Y<4294967296){let{target:J,targetView:C,position:X}=Q(10);J[X++]=215,J[X++]=255,C.setUint32(X,A.getMilliseconds()*4000000+(Y/1000/4294967296>>0)),C.setUint32(X+4,Y)}else if(isNaN(Y)){if(this.onInvalidDate)return Q(0),B(this.onInvalidDate());let{target:J,targetView:C,position:X}=Q(3);J[X++]=212,J[X++]=255,J[X++]=255}else{let{target:J,targetView:C,position:X}=Q(15);J[X++]=199,J[X++]=12,J[X++]=255,C.setUint32(X,A.getMilliseconds()*1e6),C.setBigInt64(X+4,BigInt(Math.floor(Y)))}}},{pack(A,Q,B){if(this.setAsEmptyObject)return Q(0),B({});let Y=Array.from(A),{target:J,position:C}=Q(this.moreTypes?3:0);if(this.moreTypes)J[C++]=212,J[C++]=115,J[C++]=0;B(Y)}},{pack(A,Q,B){let{target:Y,position:J}=Q(this.moreTypes?3:0);if(this.moreTypes)Y[J++]=212,Y[J++]=101,Y[J++]=0;B([A.name,A.message,A.cause])}},{pack(A,Q,B){let{target:Y,position:J}=Q(this.moreTypes?3:0);if(this.moreTypes)Y[J++]=212,Y[J++]=120,Y[J++]=0;B([A.source,A.flags])}},{pack(A,Q){if(this.moreTypes)om(A,16,Q);else tm(rD?Buffer.from(A):new Uint8Array(A),Q)}},{pack(A,Q){let B=A.constructor;if(B!==PHA&&this.moreTypes)om(A,am.indexOf(B.name),Q);else tm(A,Q)}},{pack(A,Q){if(this.moreTypes)om(A,17,Q);else tm(rD?Buffer.from(A):new Uint8Array(A),Q)}},{pack(A,Q){let{target:B,position:Y}=Q(1);B[Y]=193}}];function om(A,Q,B,Y){let J=A.byteLength;if(J+1<256){var{target:C,position:X}=B(4+J);C[X++]=199,C[X++]=J+1}else if(J+1<65536){var{target:C,position:X}=B(5+J);C[X++]=200,C[X++]=J+1>>8,C[X++]=J+1&255}else{var{target:C,position:X,targetView:G}=B(7+J);C[X++]=201,G.setUint32(X,J+1),X+=4}if(C[X++]=116,C[X++]=Q,!A.buffer)A=new Uint8Array(A);C.set(new Uint8Array(A.buffer,A.byteOffset,A.byteLength),X)}function tm(A,Q){let B=A.byteLength;var Y,J;if(B<256){var{target:Y,position:J}=Q(B+2);Y[J++]=196,Y[J++]=B}else if(B<65536){var{target:Y,position:J}=Q(B+3);Y[J++]=197,Y[J++]=B>>8,Y[J++]=B&255}else{var{target:Y,position:J,targetView:C}=Q(B+5);Y[J++]=198,C.setUint32(J,B),J+=4}Y.set(A,J)}function vWB(A,Q,B,Y){let J=A.length;switch(J){case 1:Q[B++]=212;break;case 2:Q[B++]=213;break;case 4:Q[B++]=214;break;case 8:Q[B++]=215;break;case 16:Q[B++]=216;break;default:if(J<256)Q[B++]=199,Q[B++]=J;else if(J<65536)Q[B++]=200,Q[B++]=J>>8,Q[B++]=J&255;else Q[B++]=201,Q[B++]=J>>24,Q[B++]=J>>16&255,Q[B++]=J>>8&255,Q[B++]=J&255}return Q[B++]=Y,Q.set(A,B),B+=J,B}function yWB(A,Q){let B,Y=Q.length*6,J=A.length-Y;while(B=Q.pop()){let{offset:C,id:X}=B;A.copyWithin(C+Y,C,J),Y-=6;let G=C+Y;A[G++]=214,A[G++]=105,A[G++]=X>>24,A[G++]=X>>16&255,A[G++]=X>>8&255,A[G++]=X&255,J=C}return A}function jHA(A,Q,B){if(y0.length>0){X0.setUint32(y0.position+A,BA+B-y0.position-A),y0.stringsPosition=BA-A;let Y=y0;y0=null,Q(Y[0]),Q(Y[1])}}function SHA(A,Q){return A.isCompatible=(B)=>{let Y=!B||(Q.lastNamedStructuresLength||0)===B.length;if(!Y)Q._mergeStructures(B);return Y},A}function kHA(A,Q){THA=A,SHA=Q}var _HA=new NZ({useRecords:!1}),hWB=_HA.pack,gWB=_HA.pack;var xWB=512,fWB=1024,bWB=2048;var Au=3,RE=0,aD=2,lw=1,Bu=16,yHA=["num","object","string","ascii"];yHA[Bu]="date";var uWB=[!1,!0,!0,!1,!1,!0,!0,!1],hHA;try{Function(""),hHA=!0}catch(A){}var LZ,dWB=typeof Buffer<"u",pw,r1;try{pw=new TextEncoder}catch(A){}var cWB=dWB?function(A,Q,B){return A.utf8Write(Q,B,A.byteLength-B)}:pw&&pw.encodeInto?function(A,Q,B){return pw.encodeInto(Q,A.subarray(B)).written}:!1,oNY=Symbol("type"),tNY=Symbol("parent");kHA(gHA,sWB);function gHA(A,Q,B,Y,J,C,X,G){let F=G.typedStructs||(G.typedStructs=[]),W=Q.dataView,Z=(F.lastStringStart||100)+Y,U=Q.length-10,$=Y;if(Y>U)Q=C(Y),W=Q.dataView,Y-=B,$-=B,Z-=B,B=0,U=Q.length-10;let E,K=Z,I=F.transitions||(F.transitions=Object.create(null)),V=F.nextId||F.length,H=V<15?1:V<240?2:V<61440?3:V<15728640?4:0;if(H===0)return 0;Y+=H;let D=[],L,z=0;for(let N in A){let q=A[N],w=I[N];if(!w)I[N]=w={key:N,parent:I,enumerationOffset:0,ascii0:null,ascii8:null,num8:null,string16:null,object16:null,num32:null,float64:null,date64:null};if(Y>U)Q=C(Y),W=Q.dataView,Y-=B,$-=B,Z-=B,K-=B,B=0,U=Q.length-10;switch(typeof q){case"number":let P=q;if(V<200||!w.num64){if(P>>0===P&&P<536870912&&P>-520093696){if(P<246&&P>=0&&(w.num8&&!(V>200&&w.num32)||P<32&&!w.num32))I=w.num8||f9(w,RE,1),Q[Y++]=P;else I=w.num32||f9(w,RE,4),W.setUint32(Y,P,!0),Y+=4;break}else if(P<4294967296&&P>=-2147483648){if(W.setFloat32(Y,P,!0),uWB[Q[Y+3]>>>5]){let T;if((T=P*DZ[(Q[Y+3]&127)<<1|Q[Y+2]>>7])>>0===T){I=w.num32||f9(w,RE,4),Y+=4;break}}}}I=w.num64||f9(w,RE,8),W.setFloat64(Y,P,!0),Y+=8;break;case"string":let _=q.length;if(E=K-Z,(_<<2)+K>U)Q=C((_<<2)+K),W=Q.dataView,Y-=B,$-=B,Z-=B,K-=B,B=0,U=Q.length-10;if(_>65280+E>>2){D.push(N,q,Y-$);break}let O,k=K;if(_<64){let T,S,v;for(T=0;T<_;T++)if(S=q.charCodeAt(T),S<128)Q[K++]=S;else if(S<2048)O=!0,Q[K++]=S>>6|192,Q[K++]=S&63|128;else if((S&64512)===55296&&((v=q.charCodeAt(T+1))&64512)===56320)O=!0,S=65536+((S&1023)<<10)+(v&1023),T++,Q[K++]=S>>18|240,Q[K++]=S>>12&63|128,Q[K++]=S>>6&63|128,Q[K++]=S&63|128;else O=!0,Q[K++]=S>>12|224,Q[K++]=S>>6&63|128,Q[K++]=S&63|128}else K+=cWB(Q,q,K),O=K-k>_;if(E<160||E<246&&(w.ascii8||w.string8)){if(O){if(!(I=w.string8))if(F.length>10&&(I=w.ascii8))I.__type=aD,w.ascii8=null,w.string8=I,X(null,0,!0);else I=f9(w,aD,1)}else if(E===0&&!L){L=!0,I=w.ascii0||f9(w,Au,0);break}else if(!(I=w.ascii8)&&!(F.length>10&&(I=w.string8)))I=f9(w,Au,1);Q[Y++]=E}else I=w.string16||f9(w,aD,2),W.setUint16(Y,E,!0),Y+=2;break;case"object":if(q){if(q.constructor===Date)I=w.date64||f9(w,Bu,8),W.setFloat64(Y,q.getTime(),!0),Y+=8;else D.push(N,q,z);break}else if(w=vHA(w,Y,W,-10),w)I=w,Y=LZ;else D.push(N,q,z);break;case"boolean":I=w.num8||w.ascii8||f9(w,RE,1),Q[Y++]=q?249:248;break;case"undefined":if(w=vHA(w,Y,W,-9),w)I=w,Y=LZ;else D.push(N,q,z);break;default:D.push(N,q,z)}z++}for(let N=0,q=D.length;N=16)return 0;Q[$]=M+32;break;case 2:if(M>=256)return 0;Q[$]=56,Q[$+1]=M;break;case 3:if(M>=65536)return 0;Q[$]=57,W.setUint16($+1,M,!0);break;case 4:if(M>=16777216)return 0;W.setUint32($,(M<<8)+58,!0);break}if(YZ){if(Z===K)return Y;return F.lastStringStart=Y-$,gHA(A,Q,B,$,J,C,X,G)}return K}function vHA(A,Q,B,Y){let J;if(J=A.ascii8||A.num8)return B.setInt8(Q,Y,!0),LZ=Q+1,J;if(J=A.string16||A.object16)return B.setInt16(Q,Y,!0),LZ=Q+2,J;if(J=A.num32)return B.setUint32(Q,3758096640+Y,!0),LZ=Q+4,J;if(J=A.num64)return B.setFloat64(Q,NaN,!0),B.setInt8(Q,Y),LZ=Q+8,J;LZ=Q;return}function f9(A,Q,B){let Y=yHA[Q]+(B<<3),J=A[Y]||(A[Y]=Object.create(null));return J.__type=Q,J.__size=B,J.__parent=A,J}function lWB(A){if(!(A instanceof Map))return A;let Q=A.get("typed")||[];if(Object.isFrozen(Q))Q=Q.map((J)=>J.slice(0));let B=A.get("named"),Y=Object.create(null);for(let J=0,C=Q.length;J=24)switch(J){case 24:J=A[Q++];break;case 25:J=A[Q++]+(A[Q++]<<8);break;case 26:J=A[Q++]+(A[Q++]<<8)+(A[Q++]<<16);break;case 27:J=A[Q++]+(A[Q++]<<8)+(A[Q++]<<16)+(A[Q++]<<24);break}let C=Y.typedStructs&&Y.typedStructs[J];if(!C){if(A=Uint8Array.prototype.slice.call(A,Q,B),B-=Q,Q=0,!Y.getStructures)throw Error(`Reference to shared structure ${J} without getStructures method`);if(Y._mergeStructures(Y.getStructures()),!Y.typedStructs)throw Error("Could not find any shared typed structures");if(Y.lastTypedStructuresLength=Y.typedStructs.length,C=Y.typedStructs[J],!C)throw Error("Could not find typed structure "+J)}var{construct:X,fullConstruct:G}=C;if(!X){X=C.construct=function(){},G=C.fullConstruct=function(){},G.prototype=Y.structPrototype??{};var F=X.prototype=Y.structPrototype?Object.create(Y.structPrototype):{};let Z=[],U=0,$;for(let E=0,K=C.length;E0;break;case 1:M=(q,w)=>{let P=q.bytes[w+z.offset];return P>=246?zE(P):P};break;case 2:M=(q,w)=>{let P=q.bytes,O=(P.dataView||(P.dataView=new DataView(P.buffer,P.byteOffset,P.byteLength))).getUint16(w+z.offset,!0);return O>=65280?zE(O&255):O};break;case 4:M=(q,w)=>{let P=q.bytes,O=(P.dataView||(P.dataView=new DataView(P.buffer,P.byteOffset,P.byteLength))).getUint32(w+z.offset,!0);return O>=4294967040?zE(O&255):O};break}z.getRef=M,U+=H;let N;switch(V){case Au:if($&&!$.next)$.next=z;$=z,z.multiGetCount=0,N=function(q){let{bytes:w,position:P}=q,_=U+P,O=M(q,P);if(typeof O!=="number")return O;let k,T=z.next;while(T){if(k=T.getRef(q,P),typeof k==="number")break;else k=null;T=T.next}if(k==null)k=q.bytesEnd-_;if(q.srcString)return q.srcString.slice(O,k);return NHA(w,O+_,k-O)};break;case aD:case lw:if($&&!$.next)$.next=z;$=z,N=function(q){let w=q.position,P=U+w,_=M(q,w);if(typeof _!=="number")return _;let O=q.bytes,k,T=z.next;while(T){if(k=T.getRef(q,w),typeof k==="number")break;else k=null;T=T.next}if(k==null)k=q.bytesEnd-P;if(V===aD)return O.toString("utf8",_+P,k+P);else{r1=q;try{return Y.unpack(O,{start:_+P,end:k+P})}finally{r1=null}}};break;case RE:switch(H){case 4:N=function(q){let w=q.bytes,P=w.dataView||(w.dataView=new DataView(w.buffer,w.byteOffset,w.byteLength)),_=q.position+z.offset,O=P.getInt32(_,!0);if(O<536870912){if(O>-520093696)return O;if(O>-536870912)return zE(O&255)}let k=P.getFloat32(_,!0),T=DZ[(w[_+3]&127)<<1|w[_+2]>>7];return(T*k+(k>0?0.5:-0.5)>>0)/T};break;case 8:N=function(q){let w=q.bytes,_=(w.dataView||(w.dataView=new DataView(w.buffer,w.byteOffset,w.byteLength))).getFloat64(q.position+z.offset,!0);if(isNaN(_)){let O=w[q.position+z.offset];if(O>=246)return zE(O)}return _};break;case 1:N=function(q){let P=q.bytes[q.position+z.offset];return P<246?P:zE(P)};break}break;case Bu:N=function(q){let w=q.bytes,P=w.dataView||(w.dataView=new DataView(w.buffer,w.byteOffset,w.byteLength));return new Date(P.getFloat64(q.position+z.offset,!0))};break}z.get=N}if(hHA){let E=[],K=[],I=0,V;for(let D of Z){if(Y.alwaysLazyProperty&&Y.alwaysLazyProperty(D.key)){V=!0;continue}Object.defineProperty(F,D.key,{get:iWB(D.get),enumerable:!0});let L="v"+I++;K.push(L),E.push("o["+JSON.stringify(D.key)+"]="+L+"(s)")}if(V)E.push("__proto__:this");let H=Function(...K,"var c=this;return function(s){var o=new c();"+E.join(";")+";return o;}").apply(G,Z.map((D)=>D.get));Object.defineProperty(F,"toJSON",{value(D){return H.call(this,this[Qu])}})}else Object.defineProperty(F,"toJSON",{value(E){let K={};for(let I=0,V=Z.length;I{let J=!0;if(Y instanceof Map){if((Y.get("named")||[]).length!==(Q.lastNamedStructuresLength||0))J=!1;if((Y.get("typed")||[]).length!==B)J=!1}else if(Y instanceof Array||Array.isArray(Y)){if(Y.length!==(Q.lastNamedStructuresLength||0))J=!1}if(!J)Q._mergeStructures(Y);return J},Q.lastTypedStructuresLength=Q.typedStructs&&Q.typedStructs.length,A}RHA(pWB,lWB,nWB);var CZB=process.env.MSGPACKR_NATIVE_ACCELERATION_DISABLED!==void 0&&process.env.MSGPACKR_NATIVE_ACCELERATION_DISABLED.toLowerCase()==="true";if(!CZB){let A;try{if(A=eHA(),A)DHA(A.extractStrings)}catch(Q){}}if(!mw)console.warn("Msgpackr: msgpackr native acceleration is not enabled, using fallback implementation.");var Zu=new NZ({useFloat32:nD.ALWAYS});var _s={};fG(_s,{zodErrorsIntegration:()=>_d,wrapMcpServerWithSentry:()=>xd,withScope:()=>P8,withMonitor:()=>t1,withIsolationScope:()=>sX,withActiveSpan:()=>e7,vercelAIIntegration:()=>NT,validateOpenTelemetrySetup:()=>ks,updateSpanName:()=>ju,trpcMiddleware:()=>yd,tediousIntegration:()=>ET,suppressTracing:()=>UN,supabaseIntegration:()=>kd,startSpanManual:()=>$N,startSpan:()=>k8,startSession:()=>DN,startNewTrace:()=>iu,startInactiveSpan:()=>lu,spotlightIntegration:()=>FT,spanToTraceHeader:()=>BN,spanToJSON:()=>eA,spanToBaggageHeader:()=>yu,setupKoaErrorHandler:()=>VDQ,setupHapiErrorHandler:()=>cHQ,setupFastifyErrorHandler:()=>BEQ,setupExpressErrorHandler:()=>ZUQ,setupConnectErrorHandler:()=>fDQ,setUser:()=>Bd,setTags:()=>Ad,setTag:()=>Qd,setNodeAsyncContextStrategy:()=>tO,setMeasurement:()=>du,setHttpStatus:()=>_E,setExtras:()=>tu,setExtra:()=>eu,setCurrentClient:()=>Id,setContext:()=>ou,rewriteFramesIntegration:()=>Sd,requestDataIntegration:()=>MN,redisIntegration:()=>iP,profiler:()=>vd,prismaIntegration:()=>tP,preloadOpenTelemetry:()=>sLQ,postgresIntegration:()=>aP,parameterize:()=>Lj,onUnhandledRejectionIntegration:()=>IP,onUncaughtExceptionIntegration:()=>VP,nodeContextIntegration:()=>WP,nativeNodeFetchIntegration:()=>XP,mysqlIntegration:()=>dP,mysql2Integration:()=>lP,mongooseIntegration:()=>mP,mongoIntegration:()=>fP,modulesIntegration:()=>KP,makeNodeTransport:()=>jT,lruMemoizerIntegration:()=>xP,logger:()=>ud,localVariablesIntegration:()=>EP,linkedErrorsIntegration:()=>qN,lastEventId:()=>Yd,koaIntegration:()=>CT,knexIntegration:()=>GNQ,kafkaIntegration:()=>gP,isInitialized:()=>vZ,instrumentSupabaseClient:()=>jj,initWithoutDefaultIntegrations:()=>aLQ,initOpenTelemetry:()=>kT,init:()=>_T,inboundFiltersIntegration:()=>LN,httpIntegration:()=>BP,hapiIntegration:()=>BT,graphqlIntegration:()=>hP,getTraceMetaTags:()=>Ld,getTraceData:()=>oX,getSpanStatusFromHttpCode:()=>kE,getSpanDescendants:()=>YN,getSentryRelease:()=>TT,getRootSpan:()=>$0,getIsolationScope:()=>RQ,getGlobalScope:()=>nX,getDefaultIntegrationsWithoutPerformance:()=>Ts,getDefaultIntegrations:()=>Ss,getCurrentScope:()=>sQ,getClient:()=>hA,getAutoPerformanceIntegrations:()=>zT,getActiveSpan:()=>iC,genericPoolIntegration:()=>KT,generateInstrumentOnce:()=>EQ,functionToStringIntegration:()=>NN,fsIntegration:()=>Z4Q,flush:()=>Jd,fastifyIntegration:()=>kP,extraErrorDataIntegration:()=>wd,expressIntegration:()=>MP,expressErrorHandler:()=>ti,eventFiltersIntegration:()=>Mj,endSession:()=>yZ,disableAnrDetectionForCallback:()=>T4Q,defaultStackParser:()=>ST,dedupeIntegration:()=>Rd,dataloaderIntegration:()=>tNQ,cron:()=>BqQ,createTransport:()=>bE,createSentryWinstonTransport:()=>zLQ,createGetModuleFromFilename:()=>PT,continueTrace:()=>pu,contextLinesIntegration:()=>ZP,consoleLoggingIntegration:()=>bd,consoleIntegration:()=>zN,connectIntegration:()=>GT,close:()=>Cd,childProcessIntegration:()=>LT,captureSession:()=>Gd,captureMessage:()=>fE,captureFeedback:()=>fd,captureException:()=>jB,captureEvent:()=>IN,captureConsoleIntegration:()=>zd,captureCheckIn:()=>VN,anrIntegration:()=>P4Q,amqplibIntegration:()=>HT,addIntegration:()=>$d,addEventProcessor:()=>Xd,addBreadcrumb:()=>G9,SentryContextManager:()=>MT,Scope:()=>GJ,SEMANTIC_ATTRIBUTE_SENTRY_SOURCE:()=>A0,SEMANTIC_ATTRIBUTE_SENTRY_SAMPLE_RATE:()=>j5,SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN:()=>DQ,SEMANTIC_ATTRIBUTE_SENTRY_OP:()=>YQ,SDK_VERSION:()=>u0,NodeClient:()=>iL});var ud={};fG(ud,{warn:()=>m4B,trace:()=>x4B,info:()=>b4B,fmt:()=>Dd,fatal:()=>d4B,error:()=>u4B,debug:()=>f4B});import{format as g4B}from"node:util";var OA=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__;var u0="9.22.0";var AQ=globalThis;function RJ(){return d7(AQ),AQ}function d7(A){let Q=A.__SENTRY__=A.__SENTRY__||{};return Q.version=Q.version||u0,Q[u0]=Q[u0]||{}}function qZ(A,Q,B=AQ){let Y=B.__SENTRY__=B.__SENTRY__||{},J=Y[u0]=Y[u0]||{};return J[A]||(J[A]=Q())}var ADA=Object.prototype.toString;function uC(A){switch(ADA.call(A)){case"[object Error]":case"[object Exception]":case"[object DOMException]":case"[object WebAssembly.Exception]":return!0;default:return lX(A,Error)}}function sw(A,Q){return ADA.call(A)===`[object ${Q}]`}function QDA(A){return sw(A,"ErrorEvent")}function MZ(A){return sw(A,"String")}function zZ(A){return typeof A==="object"&&A!==null&&"__sentry_template_string__"in A&&"__sentry_template_values__"in A}function oD(A){return A===null||zZ(A)||typeof A!=="object"&&typeof A!=="function"}function M5(A){return sw(A,"Object")}function BDA(A){return typeof Event<"u"&&lX(A,Event)}function YDA(A){return typeof Element<"u"&&lX(A,Element)}function JDA(A){return sw(A,"RegExp")}function z5(A){return Boolean(A?.then&&typeof A.then==="function")}function CDA(A){return M5(A)&&"nativeEvent"in A&&"preventDefault"in A&&"stopPropagation"in A}function lX(A,Q){try{return A instanceof Q}catch(B){return!1}}function rw(A){return!!(typeof A==="object"&&A!==null&&(A.__isVue||A._isVue))}var XZB=AQ,GZB=80;function XDA(A,Q={}){if(!A)return"";try{let B=A,Y=5,J=[],C=0,X=0,G=" > ",F=G.length,W,Z=Array.isArray(Q)?Q:Q.keyAttrs,U=!Array.isArray(Q)&&Q.maxStringLength||GZB;while(B&&C++1&&X+J.length*F+W.length>=U)break;J.push(W),X+=W.length,B=B.parentNode}return J.reverse().join(G)}catch(B){return""}}function FZB(A,Q){let B=A,Y=[];if(!B?.tagName)return"";if(XZB.HTMLElement){if(B instanceof HTMLElement&&B.dataset){if(B.dataset.sentryComponent)return B.dataset.sentryComponent;if(B.dataset.sentryElement)return B.dataset.sentryElement}}Y.push(B.tagName.toLowerCase());let J=Q?.length?Q.filter((X)=>B.getAttribute(X)).map((X)=>[X,B.getAttribute(X)]):null;if(J?.length)J.forEach((X)=>{Y.push(`[${X[0]}="${X[1]}"]`)});else{if(B.id)Y.push(`#${B.id}`);let X=B.className;if(X&&MZ(X)){let G=X.split(/\s+/);for(let F of G)Y.push(`.${F}`)}}let C=["aria-label","type","name","title","alt"];for(let X of C){let G=B.getAttribute(X);if(G)Y.push(`[${X}="${G}"]`)}return Y.join("")}var WZB="Sentry Logger ",dC=["debug","info","warn","error","log","assert","trace"],wE={};function h0(A){if(!("console"in AQ))return A();let Q=AQ.console,B={},Y=Object.keys(wE);Y.forEach((J)=>{let C=wE[J];B[J]=Q[J],Q[J]=C});try{return A()}finally{Y.forEach((J)=>{Q[J]=B[J]})}}function ZZB(){let A=!1,Q={enable:()=>{A=!0},disable:()=>{A=!1},isEnabled:()=>A};if(OA)dC.forEach((B)=>{Q[B]=(...Y)=>{if(A)h0(()=>{AQ.console[B](`${WZB}[${B}]:`,...Y)})}});else dC.forEach((B)=>{Q[B]=()=>{return}});return Q}var e=qZ("logger",ZZB);function b9(A,Q=0){if(typeof A!=="string"||Q===0)return A;return A.length<=Q?A:`${A.slice(0,Q)}...`}function $u(A,Q){let B=A,Y=B.length;if(Y<=150)return B;if(Q>Y)Q=Y;let J=Math.max(Q-60,0);if(J<5)J=0;let C=Math.min(J+140,Y);if(C>Y-5)C=Y;if(C===Y)J=Math.max(C-140,0);if(B=B.slice(J,C),J>0)B=`'{snip} ${B}`;if(CGDA(A,Y,B))}function Uu(A,Q,B){if(!(Q in A))return;let Y=A[Q];if(typeof Y!=="function")return;let J=B(Y);if(typeof J==="function")ZDA(J,Y);try{A[Q]=J}catch{OA&&e.log(`Failed to replace method "${Q}" in object`,A)}}function d0(A,Q,B){try{Object.defineProperty(A,Q,{value:B,writable:!0,configurable:!0})}catch(Y){OA&&e.log(`Failed to add non-enumerable property "${Q}" to object`,A)}}function ZDA(A,Q){try{let B=Q.prototype||{};A.prototype=Q.prototype=B,d0(A,"__sentry_original__",Q)}catch(B){}}function Eu(A){return A.__sentry_original__}function aw(A){if(uC(A))return{message:A.message,name:A.name,stack:A.stack,...WDA(A)};else if(BDA(A)){let Q={type:A.type,target:FDA(A.target),currentTarget:FDA(A.currentTarget),...WDA(A)};if(typeof CustomEvent<"u"&&lX(A,CustomEvent))Q.detail=A.detail;return Q}else return A}function FDA(A){try{return YDA(A)?XDA(A):Object.prototype.toString.call(A)}catch(Q){return""}}function WDA(A){if(typeof A==="object"&&A!==null){let Q={};for(let B in A)if(Object.prototype.hasOwnProperty.call(A,B))Q[B]=A[B];return Q}else return{}}function Ku(A,Q=40){let B=Object.keys(aw(A));B.sort();let Y=B[0];if(!Y)return"[object has no keys]";if(Y.length>=Q)return b9(Y,Q);for(let J=B.length;J>0;J--){let C=B.slice(0,J).join(", ");if(C.length>Q)continue;if(J===B.length)return C;return b9(C,Q)}return""}function $ZB(){let A=AQ;return A.crypto||A.msCrypto}function FY(A=$ZB()){let Q=()=>Math.random()*16;try{if(A?.randomUUID)return A.randomUUID().replace(/-/g,"");if(A?.getRandomValues)Q=()=>{let B=new Uint8Array(1);return A.getRandomValues(B),B[0]}}catch(B){}return([1e7]+1000+4000+8000+100000000000).replace(/[018]/g,(B)=>(B^(Q()&15)>>B/4).toString(16))}function $DA(A){return A.exception?.values?.[0]}function p7(A){let{message:Q,event_id:B}=A;if(Q)return Q;let Y=$DA(A);if(Y){if(Y.type&&Y.value)return`${Y.type}: ${Y.value}`;return Y.type||Y.value||B||""}return B||""}function Iu(A,Q,B){let Y=A.exception=A.exception||{},J=Y.values=Y.values||[],C=J[0]=J[0]||{};if(!C.value)C.value=Q||"";if(!C.type)C.type=B||"Error"}function i7(A,Q){let B=$DA(A);if(!B)return;let Y={type:"generic",handled:!0},J=B.mechanism;if(B.mechanism={...Y,...J,...Q},Q&&"data"in Q){let C={...J?.data,...Q.data};B.mechanism.data=C}}var UZB=/^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/;function Vu(A){return parseInt(A||"",10)}function Hu(A){let Q=A.match(UZB)||[],B=Vu(Q[1]),Y=Vu(Q[2]),J=Vu(Q[3]);return{buildmetadata:Q[5],major:isNaN(B)?void 0:B,minor:isNaN(Y)?void 0:Y,patch:isNaN(J)?void 0:J,prerelease:Q[4]}}function ow(A){if(EZB(A))return!0;try{d0(A,"__sentry_captured__",!0)}catch(Q){}return!1}function EZB(A){try{return A.__sentry_captured__}catch{}}var UDA=1000;function pX(){return Date.now()/UDA}function KZB(){let{performance:A}=AQ;if(!A?.now)return pX;let Q=Date.now()-A.now(),B=A.timeOrigin==null?Q:A.timeOrigin;return()=>{return(B+A.now())/UDA}}var w8=KZB();function EDA(A){let Q=w8(),B={sid:FY(),init:!0,timestamp:Q,started:Q,duration:0,status:"ok",errors:0,ignoreDuration:!1,toJSON:()=>VZB(B)};if(A)iX(B,A);return B}function iX(A,Q={}){if(Q.user){if(!A.ipAddress&&Q.user.ip_address)A.ipAddress=Q.user.ip_address;if(!A.did&&!Q.did)A.did=Q.user.id||Q.user.email||Q.user.username}if(A.timestamp=Q.timestamp||w8(),Q.abnormal_mechanism)A.abnormal_mechanism=Q.abnormal_mechanism;if(Q.ignoreDuration)A.ignoreDuration=Q.ignoreDuration;if(Q.sid)A.sid=Q.sid.length===32?Q.sid:FY();if(Q.init!==void 0)A.init=Q.init;if(!A.did&&Q.did)A.did=`${Q.did}`;if(typeof Q.started==="number")A.started=Q.started;if(A.ignoreDuration)A.duration=void 0;else if(typeof Q.duration==="number")A.duration=Q.duration;else{let B=A.timestamp-A.started;A.duration=B>=0?B:0}if(Q.release)A.release=Q.release;if(Q.environment)A.environment=Q.environment;if(!A.ipAddress&&Q.ipAddress)A.ipAddress=Q.ipAddress;if(!A.userAgent&&Q.userAgent)A.userAgent=Q.userAgent;if(typeof Q.errors==="number")A.errors=Q.errors;if(Q.status)A.status=Q.status}function KDA(A,Q){let B={};if(Q)B={status:Q};else if(A.status==="ok")B={status:"exited"};iX(A,B)}function VZB(A){return{sid:`${A.sid}`,init:A.init,started:new Date(A.started*1000).toISOString(),timestamp:new Date(A.timestamp*1000).toISOString(),status:A.status,errors:A.errors,did:typeof A.did==="number"||typeof A.did==="string"?`${A.did}`:void 0,duration:A.duration,abnormal_mechanism:A.abnormal_mechanism,attrs:{release:A.release,environment:A.environment,ip_address:A.ipAddress,user_agent:A.userAgent}}}function n7(A,Q,B=2){if(!Q||typeof Q!=="object"||B<=0)return Q;if(A&&Object.keys(Q).length===0)return A;let Y={...A};for(let J in Q)if(Object.prototype.hasOwnProperty.call(Q,J))Y[J]=n7(Y[J],Q[J],B-1);return Y}var Du="_sentrySpan";function RZ(A,Q){if(Q)d0(A,Du,Q);else delete A[Du]}function cC(A){return A[Du]}function j8(){return FY()}function O8(){return FY().substring(16)}var IZB=100;class GJ{constructor(){this._notifyingListeners=!1,this._scopeListeners=[],this._eventProcessors=[],this._breadcrumbs=[],this._attachments=[],this._user={},this._tags={},this._extra={},this._contexts={},this._sdkProcessingMetadata={},this._propagationContext={traceId:j8(),sampleRand:Math.random()}}clone(){let A=new GJ;if(A._breadcrumbs=[...this._breadcrumbs],A._tags={...this._tags},A._extra={...this._extra},A._contexts={...this._contexts},this._contexts.flags)A._contexts.flags={values:[...this._contexts.flags.values]};return A._user=this._user,A._level=this._level,A._session=this._session,A._transactionName=this._transactionName,A._fingerprint=this._fingerprint,A._eventProcessors=[...this._eventProcessors],A._attachments=[...this._attachments],A._sdkProcessingMetadata={...this._sdkProcessingMetadata},A._propagationContext={...this._propagationContext},A._client=this._client,A._lastEventId=this._lastEventId,RZ(A,cC(this)),A}setClient(A){this._client=A}setLastEventId(A){this._lastEventId=A}getClient(){return this._client}lastEventId(){return this._lastEventId}addScopeListener(A){this._scopeListeners.push(A)}addEventProcessor(A){return this._eventProcessors.push(A),this}setUser(A){if(this._user=A||{email:void 0,id:void 0,ip_address:void 0,username:void 0},this._session)iX(this._session,{user:A});return this._notifyScopeListeners(),this}getUser(){return this._user}setTags(A){return this._tags={...this._tags,...A},this._notifyScopeListeners(),this}setTag(A,Q){return this._tags={...this._tags,[A]:Q},this._notifyScopeListeners(),this}setExtras(A){return this._extra={...this._extra,...A},this._notifyScopeListeners(),this}setExtra(A,Q){return this._extra={...this._extra,[A]:Q},this._notifyScopeListeners(),this}setFingerprint(A){return this._fingerprint=A,this._notifyScopeListeners(),this}setLevel(A){return this._level=A,this._notifyScopeListeners(),this}setTransactionName(A){return this._transactionName=A,this._notifyScopeListeners(),this}setContext(A,Q){if(Q===null)delete this._contexts[A];else this._contexts[A]=Q;return this._notifyScopeListeners(),this}setSession(A){if(!A)delete this._session;else this._session=A;return this._notifyScopeListeners(),this}getSession(){return this._session}update(A){if(!A)return this;let Q=typeof A==="function"?A(this):A,B=Q instanceof GJ?Q.getScopeData():M5(Q)?A:void 0,{tags:Y,extra:J,user:C,contexts:X,level:G,fingerprint:F=[],propagationContext:W}=B||{};if(this._tags={...this._tags,...Y},this._extra={...this._extra,...J},this._contexts={...this._contexts,...X},C&&Object.keys(C).length)this._user=C;if(G)this._level=G;if(F.length)this._fingerprint=F;if(W)this._propagationContext=W;return this}clear(){return this._breadcrumbs=[],this._tags={},this._extra={},this._user={},this._contexts={},this._level=void 0,this._transactionName=void 0,this._fingerprint=void 0,this._session=void 0,RZ(this,void 0),this._attachments=[],this.setPropagationContext({traceId:j8(),sampleRand:Math.random()}),this._notifyScopeListeners(),this}addBreadcrumb(A,Q){let B=typeof Q==="number"?Q:IZB;if(B<=0)return this;let Y={timestamp:pX(),...A,message:A.message?b9(A.message,2048):A.message};if(this._breadcrumbs.push(Y),this._breadcrumbs.length>B)this._breadcrumbs=this._breadcrumbs.slice(-B),this._client?.recordDroppedEvent("buffer_overflow","log_item");return this._notifyScopeListeners(),this}getLastBreadcrumb(){return this._breadcrumbs[this._breadcrumbs.length-1]}clearBreadcrumbs(){return this._breadcrumbs=[],this._notifyScopeListeners(),this}addAttachment(A){return this._attachments.push(A),this}clearAttachments(){return this._attachments=[],this}getScopeData(){return{breadcrumbs:this._breadcrumbs,attachments:this._attachments,contexts:this._contexts,tags:this._tags,extra:this._extra,user:this._user,level:this._level,fingerprint:this._fingerprint||[],eventProcessors:this._eventProcessors,propagationContext:this._propagationContext,sdkProcessingMetadata:this._sdkProcessingMetadata,transactionName:this._transactionName,span:cC(this)}}setSDKProcessingMetadata(A){return this._sdkProcessingMetadata=n7(this._sdkProcessingMetadata,A,2),this}setPropagationContext(A){return this._propagationContext=A,this}getPropagationContext(){return this._propagationContext}captureException(A,Q){let B=Q?.event_id||FY();if(!this._client)return e.warn("No client configured on scope - will not capture exception!"),B;let Y=Error("Sentry syntheticException");return this._client.captureException(A,{originalException:A,syntheticException:Y,...Q,event_id:B},this),B}captureMessage(A,Q,B){let Y=B?.event_id||FY();if(!this._client)return e.warn("No client configured on scope - will not capture message!"),Y;let J=Error(A);return this._client.captureMessage(A,Q,{originalException:A,syntheticException:J,...B,event_id:Y},this),Y}captureEvent(A,Q){let B=Q?.event_id||FY();if(!this._client)return e.warn("No client configured on scope - will not capture event!"),B;return this._client.captureEvent(A,{...Q,event_id:B},this),B}_notifyScopeListeners(){if(!this._notifyingListeners)this._notifyingListeners=!0,this._scopeListeners.forEach((A)=>{A(this)}),this._notifyingListeners=!1}}function jE(){return qZ("defaultCurrentScope",()=>new GJ)}function R5(){return qZ("defaultIsolationScope",()=>new GJ)}class IDA{constructor(A,Q){let B;if(!A)B=new GJ;else B=A;let Y;if(!Q)Y=new GJ;else Y=Q;this._stack=[{scope:B}],this._isolationScope=Y}withScope(A){let Q=this._pushScope(),B;try{B=A(Q)}catch(Y){throw this._popScope(),Y}if(z5(B))return B.then((Y)=>{return this._popScope(),Y},(Y)=>{throw this._popScope(),Y});return this._popScope(),B}getClient(){return this.getStackTop().client}getScope(){return this.getStackTop().scope}getIsolationScope(){return this._isolationScope}getStackTop(){return this._stack[this._stack.length-1]}_pushScope(){let A=this.getScope().clone();return this._stack.push({client:this.getClient(),scope:A}),A}_popScope(){if(this._stack.length<=1)return!1;return!!this._stack.pop()}}function OE(){let A=RJ(),Q=d7(A);return Q.stack=Q.stack||new IDA(jE(),R5())}function HZB(A){return OE().withScope(A)}function DZB(A,Q){let B=OE();return B.withScope(()=>{return B.getStackTop().scope=A,Q(A)})}function VDA(A){return OE().withScope(()=>{return A(OE().getIsolationScope())})}function HDA(){return{withIsolationScope:VDA,withScope:HZB,withSetScope:DZB,withSetIsolationScope:(A,Q)=>{return VDA(Q)},getCurrentScope:()=>OE().getScope(),getIsolationScope:()=>OE().getIsolationScope()}}function Nu(A){let Q=RJ(),B=d7(Q);B.acs=A}function w5(A){let Q=d7(A);if(Q.acs)return Q.acs;return HDA()}function sQ(){let A=RJ();return w5(A).getCurrentScope()}function RQ(){let A=RJ();return w5(A).getIsolationScope()}function nX(){return qZ("globalScope",()=>new GJ)}function P8(...A){let Q=RJ(),B=w5(Q);if(A.length===2){let[Y,J]=A;if(!Y)return B.withScope(J);return B.withSetScope(Y,J)}return B.withScope(A[0])}function sX(...A){let Q=RJ(),B=w5(Q);if(A.length===2){let[Y,J]=A;if(!Y)return B.withIsolationScope(J);return B.withSetIsolationScope(Y,J)}return B.withIsolationScope(A[0])}function hA(){return sQ().getClient()}function PE(A){let Q=A.getPropagationContext(),{traceId:B,parentSpanId:Y,propagationSpanId:J}=Q,C={trace_id:B,span_id:J||O8()};if(Y)C.parent_span_id=Y;return C}var A0="sentry.source",j5="sentry.sample_rate",Lu="sentry.previous_trace_sample_rate",YQ="sentry.op",DQ="sentry.origin";var tw="sentry.measurement_unit",ew="sentry.measurement_value",lC="sentry.custom_span_name",TE="sentry.profile_id",SE="sentry.exclusive_time",qu="cache.hit",Mu="cache.key",zu="cache.item_size";var Ru=0,s7=1,m9=2;function kE(A){if(A<400&&A>=100)return{code:1};if(A>=400&&A<500)switch(A){case 401:return{code:2,message:"unauthenticated"};case 403:return{code:2,message:"permission_denied"};case 404:return{code:2,message:"not_found"};case 409:return{code:2,message:"already_exists"};case 413:return{code:2,message:"failed_precondition"};case 429:return{code:2,message:"resource_exhausted"};case 499:return{code:2,message:"cancelled"};default:return{code:2,message:"invalid_argument"}}if(A>=500&&A<600)switch(A){case 501:return{code:2,message:"unimplemented"};case 503:return{code:2,message:"unavailable"};case 504:return{code:2,message:"deadline_exceeded"};default:return{code:2,message:"internal_error"}}return{code:2,message:"unknown_error"}}function _E(A,Q){A.setAttribute("http.response.status_code",Q);let B=kE(Q);if(B.message!=="unknown_error")A.setStatus(B)}var DDA="_sentryScope",NDA="_sentryIsolationScope";function tD(A,Q,B){if(A)d0(A,NDA,B),d0(A,DDA,Q)}function pC(A){return{scope:A[DDA],isolationScope:A[NDA]}}function T8(A){if(typeof A==="boolean")return Number(A);let Q=typeof A==="string"?parseFloat(A):A;if(typeof Q!=="number"||isNaN(Q)||Q<0||Q>1)return;return Q}var eD="sentry-",qDA=/^sentry-/,MDA=8192;function r7(A){let Q=wZ(A);if(!Q)return;let B=Object.entries(Q).reduce((Y,[J,C])=>{if(J.match(qDA)){let X=J.slice(eD.length);Y[X]=C}return Y},{});if(Object.keys(B).length>0)return B;else return}function a7(A){if(!A)return;let Q=Object.entries(A).reduce((B,[Y,J])=>{if(J)B[`${eD}${Y}`]=J;return B},{});return Aj(Q)}function wZ(A){if(!A||!MZ(A)&&!Array.isArray(A))return;if(Array.isArray(A))return A.reduce((Q,B)=>{let Y=LDA(B);return Object.entries(Y).forEach(([J,C])=>{Q[J]=C}),Q},{});return LDA(A)}function LDA(A){return A.split(",").map((Q)=>Q.split("=").map((B)=>{try{return decodeURIComponent(B.trim())}catch{return}})).reduce((Q,[B,Y])=>{if(B&&Y)Q[B]=Y;return Q},{})}function Aj(A){if(Object.keys(A).length===0)return;return Object.entries(A).reduce((Q,[B,Y],J)=>{let C=`${encodeURIComponent(B)}=${encodeURIComponent(Y)}`,X=J===0?C:`${Q},${C}`;if(X.length>MDA)return OA&&e.warn(`Not adding key: ${B} with val: ${Y} to baggage header due to exceeding baggage size limits.`),Q;else return X},"")}var AN=new RegExp("^[ \\t]*([0-9a-f]{32})?-?([0-9a-f]{16})?-?([01])?[ \\t]*$");function zDA(A){if(!A)return;let Q=A.match(AN);if(!Q)return;let B;if(Q[3]==="1")B=!0;else if(Q[3]==="0")B=!1;return{traceId:Q[1],parentSampled:B,parentSpanId:Q[2]}}function jZ(A,Q){let B=zDA(A),Y=r7(Q);if(!B?.traceId)return{traceId:j8(),sampleRand:Math.random()};let J=NZB(B,Y);if(Y)Y.sample_rand=J.toString();let{traceId:C,parentSpanId:X,parentSampled:G}=B;return{traceId:C,parentSpanId:X,sampled:G,dsc:Y||{},sampleRand:J}}function o7(A=j8(),Q=O8(),B){let Y="";if(B!==void 0)Y=B?"-1":"-0";return`${A}-${Q}${Y}`}function NZB(A,Q){let B=T8(Q?.sample_rand);if(B!==void 0)return B;let Y=T8(Q?.sample_rate);if(Y&&A?.parentSampled!==void 0)return A.parentSampled?Math.random()*Y:Y+Math.random()*(1-Y);else return Math.random()}var Qj=0,Bj=1,RDA=!1;function jDA(A){let{spanId:Q,traceId:B}=A.spanContext(),{data:Y,op:J,parent_span_id:C,status:X,origin:G,links:F}=eA(A);return{parent_span_id:C,span_id:Q,trace_id:B,data:Y,op:J,status:X,origin:G,links:F}}function t7(A){let{spanId:Q,traceId:B,isRemote:Y}=A.spanContext(),J=Y?Q:eA(A).parent_span_id,C=pC(A).scope,X=Y?C?.getPropagationContext().propagationSpanId||O8():Q;return{parent_span_id:J,span_id:X,trace_id:B}}function BN(A){let{traceId:Q,spanId:B}=A.spanContext(),Y=o1(A);return o7(Q,B,Y)}function OZ(A){if(A&&A.length>0)return A.map(({context:{spanId:Q,traceId:B,traceFlags:Y,...J},attributes:C})=>({span_id:Q,trace_id:B,sampled:Y===Bj,attributes:C,...J}));else return}function u9(A){if(typeof A==="number")return wDA(A);if(Array.isArray(A))return A[0]+A[1]/1e9;if(A instanceof Date)return wDA(A.getTime());return w8()}function wDA(A){return A>9999999999?A/1000:A}function eA(A){if(qZB(A))return A.getSpanJSON();let{spanId:Q,traceId:B}=A.spanContext();if(LZB(A)){let{attributes:Y,startTime:J,name:C,endTime:X,status:G,links:F}=A,W="parentSpanId"in A?A.parentSpanId:("parentSpanContext"in A)?A.parentSpanContext?.spanId:void 0;return{span_id:Q,trace_id:B,data:Y,description:C,parent_span_id:W,start_timestamp:u9(J),timestamp:u9(X)||void 0,status:PZ(G),op:Y[YQ],origin:Y[DQ],links:OZ(F)}}return{span_id:Q,trace_id:B,start_timestamp:0,data:{}}}function LZB(A){let Q=A;return!!Q.attributes&&!!Q.startTime&&!!Q.name&&!!Q.endTime&&!!Q.status}function qZB(A){return typeof A.getSpanJSON==="function"}function o1(A){let{traceFlags:Q}=A.spanContext();return Q===Bj}function PZ(A){if(!A||A.code===Ru)return;if(A.code===s7)return"ok";return A.message||"unknown_error"}var QN="_sentryChildSpans",wu="_sentryRootSpan";function vE(A,Q){let B=A[wu]||A;if(d0(Q,wu,B),A[QN])A[QN].add(Q);else d0(A,QN,new Set([Q]))}function YN(A){let Q=new Set;function B(Y){if(Q.has(Y))return;else if(o1(Y)){Q.add(Y);let J=Y[QN]?Array.from(Y[QN]):[];for(let C of J)B(C)}}return B(A),Array.from(Q)}function $0(A){return A[wu]||A}function iC(){let A=RJ(),Q=w5(A);if(Q.getActiveSpan)return Q.getActiveSpan();return cC(sQ())}function JN(){if(!RDA)h0(()=>{console.warn("[Sentry] Returning null from `beforeSendSpan` is disallowed. To drop certain spans, configure the respective integrations directly.")}),RDA=!0}function ju(A,Q){A.updateName(Q),A.setAttributes({[A0]:"custom",[lC]:Q})}var Pu="?",ODA=/\(error: (.*)\)/,PDA=/captureMessage|captureException/;function Jj(...A){let Q=A.sort((B,Y)=>B[0]-Y[0]).map((B)=>B[1]);return(B,Y=0,J=0)=>{let C=[],X=B.split(` -`);for(let G=Y;G1024)continue;let W=ODA.test(F)?F.replace(ODA,"$1"):F;if(W.match(/\S*Error: /))continue;for(let Z of Q){let U=Z(W);if(U){C.push(U);break}}if(C.length>=50+J)break}return TDA(C.slice(J))}}function Tu(A){if(Array.isArray(A))return Jj(...A);return A}function TDA(A){if(!A.length)return[];let Q=Array.from(A);if(/sentryWrapped/.test(Yj(Q).function||""))Q.pop();if(Q.reverse(),PDA.test(Yj(Q).function||"")){if(Q.pop(),PDA.test(Yj(Q).function||""))Q.pop()}return Q.slice(0,50).map((B)=>({...B,filename:B.filename||Yj(Q).filename,function:B.function||"?"}))}function Yj(A){return A[A.length-1]||{}}var Ou="";function CN(A){try{if(!A||typeof A!=="function")return Ou;return A.name||Ou}catch(Q){return Ou}}function Cj(A){let Q=A.exception;if(Q){let B=[];try{return Q.values.forEach((Y)=>{if(Y.stacktrace.frames)B.push(...Y.stacktrace.frames)}),B}catch(Y){return}}return}var Xj={},SDA={};function yE(A,Q){Xj[A]=Xj[A]||[],Xj[A].push(Q)}function hE(A,Q){if(!SDA[A]){SDA[A]=!0;try{Q()}catch(B){OA&&e.error(`Error while instrumenting ${A}`,B)}}}function gE(A,Q){let B=A&&Xj[A];if(!B)return;for(let Y of B)try{Y(Q)}catch(J){OA&&e.error(`Error while triggering instrumentation handler. + }`});try{let Y=(await Q.next()).value?.data?.userById;if(!Y)return l.warning(`PlatformGateway.getPlayerCosmetics(): No cosmetic data returned for user id "${A}".`);let J=Y.equippedItems?Y.equippedItems.map((W)=>({slot:W.slot,item:W.itemInstance.item.slots.find((F)=>F.type===W.slot)})).filter((W)=>!!W.item):[],C=Y.characterSettings?.hair?.modelUrl,X=Y.characterSettings?.hair?.textureUrl,G=`https://d3qkovarww0lj1.cloudfront.net/?skin_tone=${Y.characterSettings?.skinTone||"SKIN_COLOR_1"}&clothing=${Y.characterSettings?.clothing||"CLOTHING_1"}&hair_style=${Y.characterSettings?.hairStyle||"HAIR_STYLE_1"}&hair_color=${Y.characterSettings?.hairColor||"HAIR_COLOR_1"}&eye_color=${Y.characterSettings?.eyeColor||"00FF00"}`;return{equippedItems:J,hairModelUri:C,hairTextureUri:X,skinTextureUri:G}}finally{await Q.return?.()}}async getPlayerSession(A){if(!this._creativeGateway)return;return await this._creativeGateway.getSession(A)}async scheduleNotification(A,Q,B){if(!tw)return l.warning("PlatformGateway.scheduleNotification(): HYTOPIA_NOTIFICATION_SERVICE_URL is not set. Unable to schedule notification.");if(!this.gameId||!this.creatorApiKey)return l.warning("PlatformGateway.scheduleNotification(): HYTOPIA_GAME_ID or HYTOPIA_API_KEY is not set. Unable to schedule notification.");if(BsetTimeout(J,500))}l.warning(`PersistenceManager.getGlobalData(): Failed to get global data after ${Q} attempts.`);return}async getPlayerData(A){let Q=await this._saveStatesClient.load(this._getPlayerKey(A));if(!Q)return l.warning(`PersistenceManager.getPlayerData(): Failed to get player data for player ${A.id}. Persistence service may be down.`),{};return Q}async setGlobalData(A,Q){let B=await P5.instance.setGlobalData(A,Q);if(!B||B.error){if(B?.error)l.warning(`PersistenceManager.setGlobalData(): ${B.error.message}`)}}async setPlayerData(A,Q){let B=await this.getPlayerData(A);for(let[Y,J]of Object.entries(Q))B[Y]=J}async unloadPlayerData(A){await this._saveStatesClient.unload(this._getPlayerKey(A))}_getPlayerKey(A){return`player-${A.id}`}}var tm;((Y)=>{Y[Y.FIRST_PERSON=0]="FIRST_PERSON";Y[Y.THIRD_PERSON=1]="THIRD_PERSON";Y[Y.SPECTATOR=2]="SPECTATOR"})(tm||={});var em;((L)=>{L.FACE_ENTITY="PLAYER_CAMERA.FACE_ENTITY";L.FACE_POSITION="PLAYER_CAMERA.FACE_POSITION";L.SET_ATTACHED_TO_ENTITY="PLAYER_CAMERA.SET_ATTACHED_TO_ENTITY";L.SET_ATTACHED_TO_POSITION="PLAYER_CAMERA.SET_ATTACHED_TO_POSITION";L.SET_COLLIDES_WITH_BLOCKS="PLAYER_CAMERA.SET_COLLIDES_WITH_BLOCKS";L.SET_FILM_OFFSET="PLAYER_CAMERA.SET_FILM_OFFSET";L.SET_FORWARD_OFFSET="PLAYER_CAMERA.SET_FORWARD_OFFSET";L.SET_FOV="PLAYER_CAMERA.SET_FOV";L.SET_MODE="PLAYER_CAMERA.SET_MODE";L.SET_OFFSET="PLAYER_CAMERA.SET_OFFSET";L.SET_SHOULDER_ANGLE="PLAYER_CAMERA.SET_SHOULDER_ANGLE";L.SET_TARGET_ENTITY="PLAYER_CAMERA.SET_TARGET_ENTITY";L.SET_TARGET_POSITION="PLAYER_CAMERA.SET_TARGET_POSITION";L.SET_VIEW_MODEL="PLAYER_CAMERA.SET_VIEW_MODEL";L.SET_VIEW_MODEL_HIDDEN_NODES="PLAYER_CAMERA.SET_VIEW_MODEL_HIDDEN_NODES";L.SET_VIEW_MODEL_PITCHES_WITH_CAMERA="PLAYER_CAMERA.SET_VIEW_MODEL_PITCHES_WITH_CAMERA";L.SET_VIEW_MODEL_SHOWN_NODES="PLAYER_CAMERA.SET_VIEW_MODEL_SHOWN_NODES";L.SET_VIEW_MODEL_YAWS_WITH_CAMERA="PLAYER_CAMERA.SET_VIEW_MODEL_YAWS_WITH_CAMERA";L.SET_ZOOM="PLAYER_CAMERA.SET_ZOOM"})(em||={});class aD extends BQ{player;_attachedToEntity;_attachedToPosition;_collidesWithBlocks=!0;_filmOffset=0;_forwardOffset=0;_fov=75;_mode=1;_offset={x:0,y:0,z:0};_orientation={pitch:0,yaw:0};_shoulderAngle=0;_targetEntity;_targetPosition;_viewModelUri;_viewModelHiddenNodes=new Set;_viewModelPitchesWithCamera=!1;_viewModelShownNodes=new Set;_viewModelYawsWithCamera=!1;_zoom=1;constructor(A){super();this.player=A}get attachedToEntity(){return this._attachedToEntity}get attachedToPosition(){return this._attachedToPosition}get collidesWithBlocks(){return this._collidesWithBlocks}get facingDirection(){return{x:-Math.sin(this._orientation.yaw)*Math.cos(this._orientation.pitch),y:Math.sin(this._orientation.pitch),z:-Math.cos(this._orientation.yaw)*Math.cos(this._orientation.pitch)}}get facingQuaternion(){let A=this._orientation.pitch*0.5,Q=this._orientation.yaw*0.5,B=Math.cos(A),Y=Math.sin(A),J=Math.cos(Q),C=Math.sin(Q);return{x:Y*J,y:B*C,z:-Y*C,w:B*J}}get filmOffset(){return this._filmOffset}get forwardOffset(){return this._forwardOffset}get fov(){return this._fov}get modelHiddenNodes(){return this._viewModelHiddenNodes}get modelShownNodes(){return this._viewModelShownNodes}get mode(){return this._mode}get offset(){return this._offset}get orientation(){return this._orientation}get shoulderAngle(){return this._shoulderAngle}get targetEntity(){return this._targetEntity}get targetPosition(){return this._targetPosition}get viewModelUri(){return this._viewModelUri??this._attachedToEntity?.modelUri}get viewModelHiddenNodes(){return this._viewModelHiddenNodes}get viewModelPitchesWithCamera(){return this._viewModelPitchesWithCamera}get viewModelShownNodes(){return this._viewModelShownNodes}get viewModelYawsWithCamera(){return this._viewModelYawsWithCamera}get zoom(){return this._zoom}faceEntity(A){if(!this._requirePlayerWorld("faceEntity"))return;this._targetEntity=void 0,this._targetPosition=void 0,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.FACE_ENTITY",{playerCamera:this,entity:A})}facePosition(A){if(!this._requirePlayerWorld("facePosition"))return;this._targetEntity=void 0,this._targetPosition=void 0,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.FACE_POSITION",{playerCamera:this,position:A})}reset(){this._attachedToEntity=void 0,this._attachedToPosition=void 0,this._orientation={pitch:0,yaw:0},this._targetEntity=void 0,this._targetPosition=void 0}setAttachedToEntity(A){if(!this._requirePlayerWorld("setAttachedToEntity"))return;if(!A.isSpawned)return l.error(`PlayerCamera.setAttachedToEntity(): Entity ${A.id} is not spawned!`);if(this._targetEntity===A)return l.error(`PlayerCamera.setAttachedToEntity(): Entity ${A.id} is already set as the target. Attachment and target cannot be the same!`);this._attachedToEntity=A,this._attachedToPosition=void 0,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_ATTACHED_TO_ENTITY",{playerCamera:this,entity:A})}setAttachedToPosition(A){if(!this._requirePlayerWorld("setAttachedToPosition"))return;if(A&&this._targetPosition?.x===A.x&&this._targetPosition?.y===A.y&&this._targetPosition?.z===A.z)return l.error(`PlayerCamera.setAttachedToPosition(): Position ${A.x}, ${A.y}, ${A.z} is already set as the target. Attachment and target cannot be the same!`);this._attachedToPosition=A,this._attachedToEntity=void 0,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_ATTACHED_TO_POSITION",{playerCamera:this,position:A})}setCollidesWithBlocks(A){if(!this._requirePlayerWorld("setCollidesWithBlocks"))return;this._collidesWithBlocks=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_COLLIDES_WITH_BLOCKS",{playerCamera:this,collidesWithBlocks:A})}setFilmOffset(A){if(!this._requirePlayerWorld("setFilmOffset"))return;this._filmOffset=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_FILM_OFFSET",{playerCamera:this,filmOffset:A})}setForwardOffset(A){if(!this._requirePlayerWorld("setForwardOffset"))return;this._forwardOffset=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_FORWARD_OFFSET",{playerCamera:this,forwardOffset:A})}setFov(A){if(!this._requirePlayerWorld("setFov"))return;this._fov=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_FOV",{playerCamera:this,fov:A})}setMode(A){if(!this._requirePlayerWorld("setMode"))return;this._mode=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_MODE",{playerCamera:this,mode:A})}setOffset(A){if(!this._requirePlayerWorld("setOffset"))return;this._offset=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_OFFSET",{playerCamera:this,offset:A})}setOrientationPitch(A){this._orientation.pitch=A}setOrientationYaw(A){this._orientation.yaw=A}setShoulderAngle(A){if(!this._requirePlayerWorld("setShoulderAngle"))return;this._shoulderAngle=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_SHOULDER_ANGLE",{playerCamera:this,shoulderAngle:A})}setTargetEntity(A){if(!this._requirePlayerWorld("setTargetEntity"))return;if(A&&this._attachedToEntity===A)return l.error(`PlayerCamera.setTargetEntity(): Entity ${A.id} is already set as the attachment. Attachment and target cannot be the same!`);if(this._targetEntity=A,A)this._targetPosition=void 0;this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_TARGET_ENTITY",{playerCamera:this,entity:A})}setTargetPosition(A){if(!this._requirePlayerWorld("setTargetPosition"))return;if(A&&this._attachedToPosition?.x===A.x&&this._attachedToPosition?.y===A.y&&this._attachedToPosition?.z===A.z)return l.error(`PlayerCamera.setTargetPosition(): Position ${A.x}, ${A.y}, ${A.z} is already set as the attachment. Attachment and target cannot be the same!`);if(this._targetPosition=A,A)this._targetEntity=void 0;this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_TARGET_POSITION",{playerCamera:this,position:A})}setViewModel(A){if(!this._requirePlayerWorld("setViewModel"))return;if(!this._attachedToEntity)return l.error("PlayerCamera.setViewModel(): Camera is not attached to an entity, cannot set view model! Use camera.setAttachedToEntity() first.");this._viewModelUri=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_VIEW_MODEL",{playerCamera:this,viewModelUri:A})}setViewModelHiddenNodes(A){if(!this._requirePlayerWorld("setViewModelHiddenNodes"))return;this._viewModelHiddenNodes=new Set(A.map((Q)=>Q.toLowerCase())),this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_VIEW_MODEL_HIDDEN_NODES",{playerCamera:this,viewModelHiddenNodes:this._viewModelHiddenNodes})}setViewModelPitchesWithCamera(A){if(!this._requirePlayerWorld("setViewModelPitchesWithCamera"))return;this._viewModelPitchesWithCamera=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_VIEW_MODEL_PITCHES_WITH_CAMERA",{playerCamera:this,viewModelPitchesWithCamera:A})}setViewModelShownNodes(A){if(!this._requirePlayerWorld("setViewModelShownNodes"))return;this._viewModelShownNodes=new Set(A.map((Q)=>Q.toLowerCase())),this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_VIEW_MODEL_SHOWN_NODES",{playerCamera:this,viewModelShownNodes:this._viewModelShownNodes})}setViewModelYawsWithCamera(A){if(!this._requirePlayerWorld("setViewModelYawsWithCamera"))return;this._viewModelYawsWithCamera=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_VIEW_MODEL_YAWS_WITH_CAMERA",{playerCamera:this,viewModelYawsWithCamera:A})}setZoom(A){if(!this._requirePlayerWorld("setZoom"))return;this._zoom=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_ZOOM",{playerCamera:this,zoom:A})}serialize(){return GQ.serializePlayerCamera(this)}_requirePlayerWorld(A){if(!this.player.world)l.error(`PlayerCamera._requirePlayerWorld(): Player ${this.player.id} is not in a world, invoked method: ${A}()`);return!!this.player.world}}var ew;((X)=>{X.APPEND="PLAYER_UI.APPEND";X.DATA="PLAYER_UI.DATA";X.FREEZE_POINTER_LOCK="PLAYER_UI.FREEZE_POINTER_LOCK";X.LOAD="PLAYER_UI.LOAD";X.LOCK_POINTER="PLAYER_UI.LOCK_POINTER";X.SEND_DATA="PLAYER_UI.SEND_DATA"})(ew||={});class oD extends BQ{player;constructor(A){super();this.player=A}append(A){if(!this.player.world)return;this.emitWithWorld(this.player.world,"PLAYER_UI.APPEND",{playerUI:this,htmlUri:A})}freezePointerLock(A){if(!this.player.world)return;this.emitWithWorld(this.player.world,"PLAYER_UI.FREEZE_POINTER_LOCK",{playerUI:this,freeze:A})}load(A){if(!this.player.world)return;this.emitWithWorld(this.player.world,"PLAYER_UI.LOAD",{playerUI:this,htmlUri:A})}lockPointer(A){if(!this.player.world)return;this.emitWithWorld(this.player.world,"PLAYER_UI.LOCK_POINTER",{playerUI:this,lock:A})}sendData(A){if(!this.player.world)return;this.emitWithWorld(this.player.world,"PLAYER_UI.SEND_DATA",{playerUI:this,data:A})}}var lWB=["w","a","s","d","sp","sh","tb","ml","mr","q","e","r","f","z","x","c","v","u","i","o","j","k","l","n","m","1","2","3","4","5","6","7","8","9","0","cp","cy","iro","ird","jd"],tD;((G)=>{G.CHAT_MESSAGE_SEND="PLAYER.CHAT_MESSAGE_SEND";G.INTERACT="PLAYER.INTERACT";G.JOINED_WORLD="PLAYER.JOINED_WORLD";G.LEFT_WORLD="PLAYER.LEFT_WORLD";G.RECONNECTED_WORLD="PLAYER.RECONNECTED_WORLD";G.REQUEST_NOTIFICATION_PERMISSION="PLAYER.REQUEST_NOTIFICATION_PERMISSION";G.REQUEST_SYNC="PLAYER.REQUEST_SYNC"})(tD||={});class TE extends BQ{static _devNextPlayerId=1;id;username;profilePictureUrl;camera;connection;cosmetics;ui;_input={};_interactEnabled=!0;_lastUnreliableInputSequenceNumber=0;_maxInteractDistance=20;_persistedData;_world;_worldSwitched=!1;constructor(A,Q){super();this.id=Q?.user.id??`player-${TE._devNextPlayerId++}`,this.username=Q?.user.username??this.id,this.profilePictureUrl=Q?.user.profilePictureURL??void 0,this.camera=new aD(this),this.connection=A,this.cosmetics=P5.instance.getPlayerCosmetics(this.id),this.ui=new oD(this),A.onPacket(gQ.PacketId.CHAT_MESSAGE_SEND,this._onChatMessageSendPacket),A.onPacket(gQ.PacketId.DEBUG_CONFIG,this._onDebugConfigPacket),A.onPacket(gQ.PacketId.INPUT,this._onInputPacket),A.onPacket(gQ.PacketId.SYNC_REQUEST,this._onSyncRequestPacket),A.onPacket(gQ.PacketId.UI_DATA_SEND,this._onUIDataSendPacket)}get input(){return this._input}get isInteractEnabled(){return this._interactEnabled}get maxInteractDistance(){return this._maxInteractDistance}get world(){return this._world}disconnect(){this._leaveWorld(),this.connection.disconnect()}getPersistedData(){if(!this._persistedData)return;let A=Object.keys(this._persistedData);if(A.length===0||A.length===1&&A[0]==="__version")return;return this._persistedData}joinWorld(A){if(this._world===A)return;if(!this._world)this._world=A,this.emitWithWorld(this._world,"PLAYER.JOINED_WORLD",{player:this,world:this._world});else{for(let Q of this._world.entityManager.getPlayerEntitiesByPlayer(this))if(Q.isSpawned)Q.despawn();this.disconnect(),this._world=A,this._worldSwitched=!0}}async scheduleNotification(A,Q){if(!this._world)return l.warning("Player.scheduleNotification(): Player must be in a world to schedule a notification.");return this.emitWithWorld(this._world,"PLAYER.REQUEST_NOTIFICATION_PERMISSION",{player:this}),P5.instance.scheduleNotification(this.id,A,Q)}async unscheduleNotification(A){if(!A)return!1;return P5.instance.unscheduleNotification(A)}async loadInitialPersistedData(){if(this._persistedData)return;this._persistedData=await s7.instance.getPlayerData(this)}reconnected(){if(!this._world)return;if(this._lastUnreliableInputSequenceNumber=0,!this._worldSwitched)this.emitWithWorld(this._world,"PLAYER.RECONNECTED_WORLD",{player:this,world:this._world});else this._worldSwitched=!1,this.emitWithWorld(this._world,"PLAYER.JOINED_WORLD",{player:this,world:this._world})}resetInputs(){this._input={}}setInteractEnabled(A){this._interactEnabled=A}setMaxInteractDistance(A){this._maxInteractDistance=A}setPersistedData(A){if(!this._persistedData){l.warning(`Player.setPersistedData(): Persisted data not found for player ${this.id}`);return}for(let[Q,B]of Object.entries(A))this._persistedData[Q]=B}serialize(){return GQ.serializePlayer(this)}_leaveWorld(){if(!this._world)return;this.emitWithWorld(this._world,"PLAYER.LEFT_WORLD",{player:this,world:this._world}),this._world=void 0}_onChatMessageSendPacket=(A)=>{if(!this._world)return;let Q=A[1].m;if(this._world.chatManager.handleCommand(this,Q)){this._world.chatManager.sendPlayerMessage(this,`Command Entered: ${Q}`,"CCCCCC");return}this.emitWithWorld(this._world,"PLAYER.CHAT_MESSAGE_SEND",{player:this,message:Q})};_onDebugConfigPacket=(A)=>{console.log(A)};_onInputPacket=(A)=>{let Q=A[1];if(Q.sq!==void 0){if(Q.sq{if(!this.world||!this._input.ird||!this._input.iro)return;if(this._interactEnabled){let A={x:this._input.iro[0],y:this._input.iro[1],z:this._input.iro[2]},Q={x:this._input.ird[0],y:this._input.ird[1],z:this._input.ird[2]},B=this.world.entityManager.getPlayerEntitiesByPlayer(this)[0],Y=this.world.simulation.raycast(A,Q,this._maxInteractDistance,{filterExcludeRigidBody:B?.rawRigidBody,filterFlags:WB.QueryFilterFlags.EXCLUDE_SENSORS});if(this.emitWithWorld(this.world,"PLAYER.INTERACT",{player:this,interactOrigin:A,interactDirection:Q,raycastHit:Y}),Y?.hitEntity)Y.hitEntity.interact(this,Y);if(Y?.hitBlock)Y.hitBlock.blockType.interact(this,Y)}};_onSyncRequestPacket=()=>{if(this._world)this.emitWithWorld(this._world,"PLAYER.REQUEST_SYNC",{player:this,receivedAt:Date.now(),receivedAtMs:performance.now()})};_onUIDataSendPacket=(A)=>{this.ui.emit("PLAYER_UI.DATA",{playerUI:this.ui,data:A[1]})}}var Au;((B)=>{B.BROADCAST_MESSAGE="CHAT.BROADCAST_MESSAGE";B.PLAYER_MESSAGE="CHAT.PLAYER_MESSAGE"})(Au||={});class eD extends BQ{_commandCallbacks={};_world;constructor(A){super();this._world=A,this._subscribeToPlayerEvents()}registerCommand(A,Q){this._commandCallbacks[A]=Q}unregisterCommand(A){delete this._commandCallbacks[A]}sendBroadcastMessage(A,Q){this._sendBroadcastMessage(void 0,A,Q)}handleCommand(A,Q){let[B,...Y]=Q.split(" "),J=this._commandCallbacks[B];if(J)return J(A,Y,Q),!0;return!1}sendPlayerMessage(A,Q,B){this.emitWithWorld(this._world,"CHAT.PLAYER_MESSAGE",{player:A,message:Q,color:B})}_subscribeToPlayerEvents(){this._world.on("PLAYER.CHAT_MESSAGE_SEND",(A)=>{let{player:Q,message:B}=A;this._sendBroadcastMessage(Q,B)})}_sendBroadcastMessage(A,Q,B){this.emitWithWorld(this._world,"CHAT.BROADCAST_MESSAGE",{player:A,message:Q,color:B})}}var d9=16,T5=d9-1,RZ=Math.log2(d9),c9=d9**3,SE=255;class MY{_blocks;_blockRotations=new Map;_originCoordinate;constructor(A){this._blocks=new Uint8Array(c9),this._originCoordinate=A}get blocks(){return this._blocks}get blockRotations(){return this._blockRotations}get originCoordinate(){return this._originCoordinate}static blockIndexToLocalCoordinate(A){return{x:A&T5,y:A>>RZ&T5,z:A>>RZ*2&T5}}static localCoordinateToBlockIndex(A){return A.x+(A.y<SE)return l.error(`Chunk.setBlock(): Block type id ${Q} is out of bounds (expected 0-${SE}).`);let Y=this._getIndex(A);if(this._blocks[Y]=Q,this._blockRotations.delete(Y),B&&B!==w8.Y_0)this._blockRotations.set(Y,B)}serialize(){return GQ.serializeChunk(this)}_getIndex(A){return MY.localCoordinateToBlockIndex(A)}_isValidLocalCoordinate(A){return A.x>=0&&A.x<=T5&&A.y>=0&&A.y<=T5&&A.z>=0&&A.z<=T5}}var pWB=32,iWB=c9/pWB,AN=54,nWB=BigInt(AN),sWB=BigInt(AN*2),Qu;((Y)=>{Y.ADD_CHUNK="CHUNK_LATTICE.ADD_CHUNK";Y.REMOVE_CHUNK="CHUNK_LATTICE.REMOVE_CHUNK";Y.SET_BLOCK="CHUNK_LATTICE.SET_BLOCK"})(Qu||={});class QN extends BQ{_blockTypeColliders=new Map;_blockTypeChunkMasks=new Map;_blockTypeCounts=new Map;_chunks=new Map;_rigidBody;_world;constructor(A){super();this._world=A}get chunkCount(){return this._chunks.size}clear(){for(let A of this._blockTypeColliders.values())A.removeFromSimulation();this._chunks.forEach((A)=>{this.emitWithWorld(this._world,"CHUNK_LATTICE.REMOVE_CHUNK",{chunkLattice:this,chunk:A})}),this._blockTypeColliders.clear(),this._blockTypeChunkMasks.clear(),this._blockTypeCounts.clear(),this._chunks.clear()}getBlockId(A){let Q=this.getChunk(A);if(!Q)return 0;return Q.getBlockId(MY.globalCoordinateToLocalCoordinate(A))}getBlockTypeCollider(A){return this._blockTypeColliders.get(A)}getBlockType(A){let Q=this.getBlockId(A);return Q?this._world.blockTypeRegistry.getBlockType(Q):null}getBlockTypeCount(A){if(!this._isValidBlockTypeId(A))return 0;return this._blockTypeCounts.get(A)??0}getChunk(A){return this._chunks.get(this._getChunkKey(A))}getOrCreateBlockTypeCollider(A,Q){let B=this._blockTypeColliders.get(A);if(B)return B;let J=this._world.blockTypeRegistry.getBlockType(A).createCollider(Q);return this._blockTypeColliders.set(A,J),J}getOrCreateChunk(A){let Q=MY.globalCoordinateToOriginCoordinate(A),B=this._packCoordinate(Q),Y=this._chunks.get(B);if(Y)return Y;return Y=new MY(Q),this._chunks.set(B,Y),this.emitWithWorld(this._world,"CHUNK_LATTICE.ADD_CHUNK",{chunkLattice:this,chunk:Y}),Y}getAllChunks(){return Array.from(this._chunks.values())}hasBlock(A){let Q=this.getChunk(A);if(!Q)return!1;return Q.hasBlock(MY.globalCoordinateToLocalCoordinate(A))}hasChunk(A){return this._chunks.has(this._getChunkKey(A))}initializeBlocks(A){let Q=function*(){for(let B in A){let Y=Number(B),J=A[Y];for(let C=0;C>>0;if(G===0)continue;let W=G;while(W!==0){let F=W&-W,Z=31-Math.clz32(F),U=(X<<5)+Z,$=MY.blockIndexToLocalCoordinate(U),E=C.getBlockRotation($);Q.push({globalCoordinate:{x:C.originCoordinate.x+$.x,y:C.originCoordinate.y+$.y,z:C.originCoordinate.z+$.z},blockRotation:E===w8.Y_0?void 0:E}),W=(W&W-1)>>>0}}}return Q}_isChunkMaskEmpty(A){for(let Q=0;Q=0&&A<=SE;if(!Q)l.error(`ChunkLattice._isValidBlockTypeId(): Block type id ${A} is out of bounds (expected 0-${SE}).`);return Q}_setBlockTypePlacement(A,Q,B){let Y=this._blockTypeChunkMasks.get(A);if(!Y){if(!B)return;Y=new Map,this._blockTypeChunkMasks.set(A,Y)}let J=this._getChunkKey(Q),C=MY.globalCoordinateToLocalCoordinate(Q),X=MY.localCoordinateToBlockIndex(C),G=X>>>5,W=1<<(X&31)>>>0,F=Y.get(J);if(!F){if(!B)return;F=new Uint32Array(iWB),Y.set(J,F)}let Z=(F[G]&W)!==0;if(B){if(Z)return;F[G]|=W,this._blockTypeCounts.set(A,(this._blockTypeCounts.get(A)??0)+1);return}if(!Z)return;F[G]&=~W;let U=Math.max(0,(this._blockTypeCounts.get(A)??0)-1);if(U>0)this._blockTypeCounts.set(A,U);else this._blockTypeCounts.delete(A),this._blockTypeChunkMasks.delete(A);if(this._blockTypeChunkMasks.has(A)&&this._isChunkMaskEmpty(F))Y.delete(J)}}class BN{_colliderHandleBlockTypeMap=new Map;_colliderHandleCollisionCallbackMap=new Map;_colliderHandleEntityMap=new Map;_cleanupBlockTypeColliderHandles=new Set;_pendingCleanupBlockTypeColliderHandles=new Set;_cleanupCollisionCallbackColliderHandles=new Set;_pendingCleanupCollisionCallbackColliderHandles=new Set;_cleanupEntityColliderHandles=new Set;_pendingCleanupEntityColliderHandles=new Set;getColliderBlockType(A){if(!this._requireSimulatedCollider(A))return;return this._colliderHandleBlockTypeMap.get(A.rawCollider.handle)}getColliderCollisionCallback(A){if(!this._requireSimulatedCollider(A))return;return this._colliderHandleCollisionCallbackMap.get(A.rawCollider.handle)}getColliderEntity(A){if(!this._requireSimulatedCollider(A))return;return this._colliderHandleEntityMap.get(A.rawCollider.handle)}getColliderHandleBlockType(A){return this._colliderHandleBlockTypeMap.get(A)}getColliderHandleCollisionCallback(A){return this._colliderHandleCollisionCallbackMap.get(A)}getColliderHandleEntity(A){return this._colliderHandleEntityMap.get(A)}removeColliderBlockType(A){if(!this._requireSimulatedCollider(A))return;this.removeColliderHandleBlockType(A.rawCollider.handle)}removeColliderCollisionCallback(A){if(!this._requireSimulatedCollider(A))return;this.removeColliderHandleCollisionCallback(A.rawCollider.handle)}removeColliderEntity(A){if(!this._requireSimulatedCollider(A))return;this.removeColliderHandleEntity(A.rawCollider.handle)}removeColliderHandleBlockType(A){this._colliderHandleBlockTypeMap.delete(A)}removeColliderHandleCollisionCallback(A){this._colliderHandleCollisionCallbackMap.delete(A)}removeColliderHandleEntity(A){this._colliderHandleEntityMap.delete(A)}setColliderBlockType(A,Q){if(!this._requireSimulatedCollider(A))return;this.setColliderHandleBlockType(A.rawCollider.handle,Q)}setColliderCollisionCallback(A,Q){if(!this._requireSimulatedCollider(A))return;this.setColliderHandleCollisionCallback(A.rawCollider.handle,Q)}setColliderEntity(A,Q){if(!this._requireSimulatedCollider(A))return;this.setColliderHandleEntity(A.rawCollider.handle,Q)}setColliderHandleBlockType(A,Q){this._colliderHandleBlockTypeMap.set(A,Q),this._cleanupBlockTypeColliderHandles.delete(A),this._pendingCleanupBlockTypeColliderHandles.delete(A)}setColliderHandleCollisionCallback(A,Q){this._colliderHandleCollisionCallbackMap.set(A,Q),this._cleanupCollisionCallbackColliderHandles.delete(A),this._pendingCleanupCollisionCallbackColliderHandles.delete(A)}setColliderHandleEntity(A,Q){this._colliderHandleEntityMap.set(A,Q),this._cleanupEntityColliderHandles.delete(A),this._pendingCleanupEntityColliderHandles.delete(A)}queueColliderHandleForCleanup(A){if(this._colliderHandleBlockTypeMap.has(A))this._pendingCleanupBlockTypeColliderHandles.add(A);if(this._colliderHandleCollisionCallbackMap.has(A))this._pendingCleanupCollisionCallbackColliderHandles.add(A);if(this._colliderHandleEntityMap.has(A))this._pendingCleanupEntityColliderHandles.add(A)}cleanup(){for(let A of this._cleanupBlockTypeColliderHandles)this._colliderHandleBlockTypeMap.delete(A);if(this._cleanupBlockTypeColliderHandles.size>0)this._cleanupBlockTypeColliderHandles.clear();for(let A of this._cleanupCollisionCallbackColliderHandles)this._colliderHandleCollisionCallbackMap.delete(A);if(this._cleanupCollisionCallbackColliderHandles.size>0)this._cleanupCollisionCallbackColliderHandles.clear();for(let A of this._cleanupEntityColliderHandles)this._colliderHandleEntityMap.delete(A);if(this._cleanupEntityColliderHandles.size>0)this._cleanupEntityColliderHandles.clear();for(let A of this._pendingCleanupBlockTypeColliderHandles)this._cleanupBlockTypeColliderHandles.add(A);if(this._pendingCleanupBlockTypeColliderHandles.size>0)this._pendingCleanupBlockTypeColliderHandles.clear();for(let A of this._pendingCleanupCollisionCallbackColliderHandles)this._cleanupCollisionCallbackColliderHandles.add(A);if(this._pendingCleanupCollisionCallbackColliderHandles.size>0)this._pendingCleanupCollisionCallbackColliderHandles.clear();for(let A of this._pendingCleanupEntityColliderHandles)this._cleanupEntityColliderHandles.add(A);if(this._pendingCleanupEntityColliderHandles.size>0)this._pendingCleanupEntityColliderHandles.clear()}_requireSimulatedCollider(A){if(!A.rawCollider)l.error("ColliderMap._requireSimulatedCollider(): Collider is not in the simulation.");return!!A.rawCollider}}class G0 extends $Z{static BASE_ENTITY_HEIGHT=1.5;static GROUND_SENSOR_HEIGHT_SCALE=0.125;static GROUND_SENSOR_RADIUS_SCALE=0.23;static JUMP_LAND_HEAVY_VELOCITY_THRESHOLD=-12;static WALL_COLLIDER_HEIGHT_SCALE=0.33;static WALL_COLLIDER_RADIUS_SCALE=0.4;static MOVEMENT_ROTATIONS={wa:Math.PI/4,wd:-Math.PI/4,sa:Math.PI-Math.PI/4,sd:Math.PI+Math.PI/4,s:Math.PI,asd:Math.PI,a:Math.PI/2,d:-Math.PI/2};static EXTERNAL_IMPULSE_DECAY_RATE=0.253;static SWIM_UPWARD_COOLDOWN_MS=600;static SWIMMING_DRAG_FACTOR=0.05;static WATER_ENTRY_SINKING_FACTOR=0.8;static WATER_ENTRY_SINKING_MS=250;applyDirectionalMovementRotations=!0;autoCancelMouseLeftClick=!0;canJump=()=>!0;canRun=()=>!0;canSwim=()=>!0;canWalk=()=>!0;facesCameraWhenIdle=!1;idleLoopedAnimations=["idle-upper","idle-lower"];interactOneshotAnimations=["simple-interact"];jumpLandHeavyOneshotAnimations=["jump-post-heavy"];jumpLandLightOneshotAnimations=["jump-post-light"];jumpOneshotAnimations=["jump-loop"];jumpVelocity=10;runLoopedAnimations=["run-upper","run-lower"];runVelocity=8;sticksToPlatforms=!0;swimFastVelocity=5;swimGravity=0;swimIdleLoopedAnimations=["swim-idle"];swimLoopedAnimations=["swim-forward"];swimMaxGravityVelocity=-1;swimSlowVelocity=3;swimUpwardVelocity=2;walkLoopedAnimations=["walk-upper","walk-lower"];walkVelocity=4;_externalVelocity={x:0,y:0,z:0};_magnitudeYTracker=0;_groundContactCount=0;_internalApplyImpulse=()=>{};_isActivelyMoving=!1;_isFullySubmerged=!1;_justSubmergedUntil=0;_liquidContactCount=0;_platform;_reusableImpulse={x:0,y:0,z:0};_reusablePlatformVelocity={x:0,y:0,z:0};_reusableTargetVelocities={x:0,y:0,z:0};_reusableVelocityClamp={x:0,y:0,z:0};_stepAudio;_swimUpwardCooldownAt=0;constructor(A={}){super();this.applyDirectionalMovementRotations=A.applyDirectionalMovementRotations??this.applyDirectionalMovementRotations,this.autoCancelMouseLeftClick=A.autoCancelMouseLeftClick??this.autoCancelMouseLeftClick,this.facesCameraWhenIdle=A.facesCameraWhenIdle??this.facesCameraWhenIdle,this.sticksToPlatforms=A.sticksToPlatforms??this.sticksToPlatforms,this.canJump=A.canJump??this.canJump,this.canRun=A.canRun??this.canRun,this.canSwim=A.canSwim??this.canSwim,this.canWalk=A.canWalk??this.canWalk,this.jumpVelocity=A.jumpVelocity??this.jumpVelocity,this.runVelocity=A.runVelocity??this.runVelocity,this.walkVelocity=A.walkVelocity??this.walkVelocity,this.swimFastVelocity=A.swimFastVelocity??this.swimFastVelocity,this.swimSlowVelocity=A.swimSlowVelocity??this.swimSlowVelocity,this.swimUpwardVelocity=A.swimUpwardVelocity??this.swimUpwardVelocity,this.swimGravity=A.swimGravity??this.swimGravity,this.swimMaxGravityVelocity=A.swimMaxGravityVelocity??this.swimMaxGravityVelocity,this.idleLoopedAnimations=A.idleLoopedAnimations??this.idleLoopedAnimations,this.interactOneshotAnimations=A.interactOneshotAnimations??this.interactOneshotAnimations,this.jumpOneshotAnimations=A.jumpOneshotAnimations??this.jumpOneshotAnimations,this.jumpLandHeavyOneshotAnimations=A.jumpLandHeavyOneshotAnimations??this.jumpLandHeavyOneshotAnimations,this.jumpLandLightOneshotAnimations=A.jumpLandLightOneshotAnimations??this.jumpLandLightOneshotAnimations,this.runLoopedAnimations=A.runLoopedAnimations??this.runLoopedAnimations,this.swimLoopedAnimations=A.swimLoopedAnimations??this.swimLoopedAnimations,this.swimIdleLoopedAnimations=A.swimIdleLoopedAnimations??this.swimIdleLoopedAnimations,this.walkLoopedAnimations=A.walkLoopedAnimations??this.walkLoopedAnimations}get isActivelyMoving(){return this._isActivelyMoving}get isGrounded(){return this._groundContactCount>0}get isOnPlatform(){return!!this._platform}get isSwimming(){return this._liquidContactCount>0}get platform(){return this._platform}attach(A){super.attach(A),this._internalApplyImpulse=A.applyImpulse.bind(A),A.applyImpulse=(Q)=>{let B=A.mass||1;this._externalVelocity.x+=Q.x/B,this._externalVelocity.y+=Q.y/B,this._externalVelocity.z+=Q.z/B},this._stepAudio=new $D({uri:"audio/sfx/step/stone/stone-step-04.mp3",loop:!0,volume:0.1,referenceDistance:2,cutoffDistance:15,attachedToEntity:A}),A.setCcdEnabled(!0),A.lockAllRotations(),A.on("ENTITY.BLOCK_COLLISION",({blockType:Q,started:B})=>{if(!Q.isLiquid||!this.canSwim(this))return;if(this._liquidContactCount<=0&&B){let Y=A.linearVelocity;A.setLinearVelocity({x:Y.x*this.swimGravity,y:Y.y*this.swimGravity,z:Y.z*this.swimGravity})}if(this._liquidContactCount+=B?1:-1,this._liquidContactCount>0)A.setGravityScale(this.swimGravity),A.stopAllModelAnimations((Y)=>this.swimLoopedAnimations.includes(Y.name)),this._swimUpwardCooldownAt=performance.now()+G0.SWIM_UPWARD_COOLDOWN_MS;else A.setGravityScale(1),A.stopModelAnimations(this.swimLoopedAnimations)})}spawn(A){if(!A.isSpawned)return l.error("DefaultPlayerEntityController.spawn(): Entity is not spawned!");A.createAndAddChildCollider({shape:"cylinder",radius:G0.GROUND_SENSOR_RADIUS_SCALE*(A.height/G0.BASE_ENTITY_HEIGHT),halfHeight:G0.GROUND_SENSOR_HEIGHT_SCALE*(A.height/G0.BASE_ENTITY_HEIGHT),collisionGroups:{belongsTo:[4],collidesWith:[1,2,8]},isSensor:!0,relativePosition:{x:0,y:-A.height/2,z:0},tag:"groundSensor",onCollision:(Q,B)=>{if(!A.isSpawned)return;if(!(Q instanceof O8)||!Q.isLiquid){if(B&&this._groundContactCount===0&&A.linearVelocity.y<-1)if(A.linearVelocity.yw.includes(P.name)||P.loopMode===0);for(let P of w)A.getModelAnimation(P)?.setLoopMode(1),A.getModelAnimation(P)?.play();this._stepAudio?.setPlaybackRate(V?0.75:0.51),this._stepAudio?.play(A.world,!this._stepAudio?.isPlaying)}else if(this._isFullySubmerged&&this.canSwim(this))if(this._stepAudio?.pause(),this._isActivelyMoving){A.stopAllModelAnimations((w)=>this.swimLoopedAnimations.includes(w.name)||w.loopMode===0);for(let w of this.swimLoopedAnimations)A.getModelAnimation(w)?.setLoopMode(1),A.getModelAnimation(w)?.play()}else{A.stopAllModelAnimations((w)=>this.swimIdleLoopedAnimations.includes(w.name)||w.loopMode===0);for(let w of this.swimIdleLoopedAnimations)A.getModelAnimation(w)?.setLoopMode(1),A.getModelAnimation(w)?.play()}else{this._stepAudio?.pause(),A.stopAllModelAnimations((w)=>this.idleLoopedAnimations.includes(w.name)||w.loopMode===0);for(let w of this.idleLoopedAnimations)A.getModelAnimation(w)?.setLoopMode(1),A.getModelAnimation(w)?.play()}let L;if(this.applyDirectionalMovementRotations&&D){if(I)L=$;else if(J&&C&&!G&&!X)L=G0.MOVEMENT_ROTATIONS.wa;else if(J&&G&&!C&&!X)L=G0.MOVEMENT_ROTATIONS.wd;else if(X&&C&&!J&&!G)L=G0.MOVEMENT_ROTATIONS.sa;else if(X&&G&&!J&&!C)L=G0.MOVEMENT_ROTATIONS.sd;else if(X&&!J&&!C&&!G||C&&X&&G&&!J)L=G0.MOVEMENT_ROTATIONS.s;else if(C&&!J&&!X&&!G)L=G0.MOVEMENT_ROTATIONS.a;else if(G&&!J&&!C&&!X)L=G0.MOVEMENT_ROTATIONS.d}if(U){for(let w of this.interactOneshotAnimations)A.getModelAnimation(w)?.setBlendMode(0),A.getModelAnimation(w)?.restart();Q.ml=!this.autoCancelMouseLeftClick}if(D){let w=!this.isSwimming?V?this.runVelocity:this.walkVelocity:V?this.swimFastVelocity:this.swimSlowVelocity;if(I){let P=E+$;this._reusableTargetVelocities.x=-w*Math.sin(P),this._reusableTargetVelocities.z=-w*Math.cos(P)}else{let P=Math.sin(E),_=Math.cos(E);if(J)this._reusableTargetVelocities.x-=w*P,this._reusableTargetVelocities.z-=w*_;if(X)this._reusableTargetVelocities.x+=w*P,this._reusableTargetVelocities.z+=w*_;if(C)this._reusableTargetVelocities.x-=w*_,this._reusableTargetVelocities.z+=w*P;if(G)this._reusableTargetVelocities.x+=w*_,this._reusableTargetVelocities.z-=w*P;let j=Math.sqrt(this._reusableTargetVelocities.x*this._reusableTargetVelocities.x+this._reusableTargetVelocities.z*this._reusableTargetVelocities.z);if(j>w){let k=w/j;this._reusableTargetVelocities.x*=k,this._reusableTargetVelocities.z*=k}}}if(this.isSwimming){if(K.ythis.swimUpwardVelocity*2)this._reusableVelocityClamp.x=K.x,this._reusableVelocityClamp.y=this.swimUpwardVelocity*2,this._reusableVelocityClamp.z=K.z,A.setLinearVelocity(this._reusableVelocityClamp);if(W)this._reusableTargetVelocities.y=-this.swimUpwardVelocity;else if(performance.now()-0.001&&K.y<=3)this._reusableTargetVelocities.y=this.jumpVelocity;else if(this.isSwimming&&performance.now()>this._swimUpwardCooldownAt)this._reusableTargetVelocities.y=this.swimUpwardVelocity}let z=this._platform?.linearVelocity??this._reusablePlatformVelocity;if(this._externalVelocity.y!==0)this._magnitudeYTracker+=this._externalVelocity.y;if(this._externalVelocity.x!==0||this._externalVelocity.y!==0||this._externalVelocity.z!==0){if(this.isGrounded){let w=Math.sqrt(this._externalVelocity.x*this._externalVelocity.x+this._magnitudeYTracker*this._magnitudeYTracker+this._externalVelocity.z*this._externalVelocity.z);if(w>0.01){let _=Math.max(0,w-G0.EXTERNAL_IMPULSE_DECAY_RATE)/w;this._externalVelocity.x*=_,this._magnitudeYTracker*=_,this._externalVelocity.z*=_}else this._externalVelocity.x=0,this._externalVelocity.y=0,this._magnitudeYTracker=0,this._externalVelocity.z=0}}let M=this._reusableTargetVelocities.x+this._externalVelocity.x-K.x+z.x,N=this._reusableTargetVelocities.y+this._externalVelocity.y+z.y,q=this._reusableTargetVelocities.z+this._externalVelocity.z-K.z+z.z;if(this._externalVelocity.y=0,M!==0||N!==0||q!==0){let w=A.mass;this._reusableImpulse.x=M*w,this._reusableImpulse.y=N*w,this._reusableImpulse.z=q*w,this._internalApplyImpulse(this._reusableImpulse)}if(E!==void 0&&(this.facesCameraWhenIdle||this.isActivelyMoving)){let P=(L!==void 0?E+L:E)*0.5;A.setRotation({x:0,y:Math.sin(P),z:0,w:Math.cos(P)})}}}var Bu;((G)=>{G.LOAD="SCENE_UI.LOAD";G.SET_ATTACHED_TO_ENTITY="SCENE_UI.SET_ATTACHED_TO_ENTITY";G.SET_OFFSET="SCENE_UI.SET_OFFSET";G.SET_POSITION="SCENE_UI.SET_POSITION";G.SET_STATE="SCENE_UI.SET_STATE";G.SET_VIEW_DISTANCE="SCENE_UI.SET_VIEW_DISTANCE";G.UNLOAD="SCENE_UI.UNLOAD"})(Bu||={});class YN extends BQ{_id;_attachedToEntity;_offset;_position;_state={};_templateId;_viewDistance;_world;constructor(A){if(!!A.attachedToEntity===!!A.position)l.fatalError("Either attachedToEntity or position must be set, but not both");super();this._attachedToEntity=A.attachedToEntity,this._offset=A.offset,this._position=A.position,this._state=A.state??{},this._templateId=A.templateId,this._viewDistance=A.viewDistance}get id(){return this._id}get attachedToEntity(){return this._attachedToEntity}get isLoaded(){return this._id!==void 0}get offset(){return this._offset}get position(){return this._position}get state(){return this._state}get templateId(){return this._templateId}get viewDistance(){return this._viewDistance}get world(){return this._world}load(A){if(this.isLoaded)return;if(this._attachedToEntity&&!this._attachedToEntity.isSpawned)return l.error(`SceneUI.load(): Attached entity ${this._attachedToEntity.id} must be spawned before loading SceneUI!`);this._id=A.sceneUIManager.registerSceneUI(this),this._world=A,this.emitWithWorld(A,"SCENE_UI.LOAD",{sceneUI:this})}setAttachedToEntity(A){if(!A.isSpawned)return l.error(`SceneUI.setAttachedToEntity(): Entity ${A.id} is not spawned!`);if(this._attachedToEntity===A)return;if(this._attachedToEntity=A,this._position=void 0,this.isLoaded)this.emitWithWorld(this._world,"SCENE_UI.SET_ATTACHED_TO_ENTITY",{sceneUI:this,entity:A})}setOffset(A){if(this._offset===A)return;if(this._offset=A,this.isLoaded)this.emitWithWorld(this._world,"SCENE_UI.SET_OFFSET",{sceneUI:this,offset:A})}setPosition(A){if(this._position===A)return;if(this._attachedToEntity=void 0,this._position=A,this.isLoaded)this.emitWithWorld(this._world,"SCENE_UI.SET_POSITION",{sceneUI:this,position:A})}setState(A){if(this._state={...this._state,...A},this.isLoaded)this.emitWithWorld(this._world,"SCENE_UI.SET_STATE",{sceneUI:this,state:this._state})}setViewDistance(A){if(this._viewDistance=A,this.isLoaded)this.emitWithWorld(this._world,"SCENE_UI.SET_VIEW_DISTANCE",{sceneUI:this,viewDistance:A})}unload(){if(!this.isLoaded||!this._world)return;this._world.sceneUIManager.unregisterSceneUI(this),this.emitWithWorld(this._world,"SCENE_UI.UNLOAD",{sceneUI:this}),this._id=void 0,this._world=void 0}serialize(){return GQ.serializeSceneUI(this)}}var xIA=0.010000000000000002,fIA=Math.cos(0.026);class BX extends X0{player;nametagSceneUI;_tickWithPlayerInputEnabled=!0;constructor(A){super(A);this._positionUpdateThresholdSq=xIA,this._rotationUpdateThreshold=fIA,this.player=A.player,this.nametagSceneUI=new YN({templateId:"hytopia:nametag",attachedToEntity:this,offset:{x:0,y:1,z:0},viewDistance:15,state:{username:this.player.username,profilePictureUrl:this.player.profilePictureUrl}})}get isTickWithPlayerInputEnabled(){return this._tickWithPlayerInputEnabled}setTickWithPlayerInputEnabled(A){this._tickWithPlayerInputEnabled=A}spawn(A,Q,B){super.spawn(A,Q,B),this.nametagSceneUI.load(A),this.player.on("PLAYER.CHAT_MESSAGE_SEND",({message:Y})=>{this.nametagSceneUI.setState({chat:Y})})}tick(A){if(!this.isSpawned||!this.world)return;if(!this.controller)return l.error(`PlayerEntity.tick(): PlayerEntity "${this.name}" must have a controller.`);if(this._tickWithPlayerInputEnabled){let{input:Q,camera:B}=this.player;this.controller.tickWithPlayerInput(this,Q,B.orientation,A)}super.tick(A)}}var bIA="models/players/player.gltf",rWB={BACK:"back-anchor",HEAD:"head-anchor",LEFT_ARM:"arm-left-anchor",LEFT_FOOT:"foot-left-anchor",LEFT_HAND:"hand-left-anchor",LEFT_ITEM:"hand-left-anchor",LEFT_LEG:"leg-left-anchor",RIGHT_ARM:"arm-right-anchor",RIGHT_FOOT:"foot-right-anchor",RIGHT_HAND:"hand-right-anchor",RIGHT_ITEM:"hand-right-anchor",RIGHT_LEG:"leg-right-anchor",TORSO:"torso-anchor"};class Yu extends BX{_cosmeticHiddenSlots;constructor(A){super({controller:new G0,modelAnimations:[{name:"idle-lower",loopMode:1,play:!0},{name:"idle-upper",loopMode:1,play:!0}],modelUri:bIA,...A});this._cosmeticHiddenSlots=A.cosmeticHiddenSlots??[]}get cosmeticHiddenSlots(){return this._cosmeticHiddenSlots}spawn(A,Q,B){super.spawn(A,Q,B),this.player.cosmetics.then((Y)=>{if(!Y||!this.modelUri)return;if(!(Y.equippedItems.some((C)=>C.item.flags.includes("HIDES_HAIR"))&&!this._cosmeticHiddenSlots.includes("ALL")&&!this._cosmeticHiddenSlots.includes("HEAD"))&&Y.hairModelUri)new X0({modelUri:Y.hairModelUri,modelPreferredShape:"none",modelTextureUri:Y.hairTextureUri,parent:this,parentNodeName:"head-anchor"}).spawn(A,{x:0,y:0,z:0});if(this.modelUri===bIA)this.setModelTextureUri(Y.skinTextureUri);if(this._cosmeticHiddenSlots.includes("ALL"))return;for(let C of Y.equippedItems){let{item:X,slot:G}=C;if(this._cosmeticHiddenSlots.includes(G))continue;let W=rWB[G];if(!W||!yY.instance.modelHasNode(this.modelUri,W))continue;new X0({modelUri:X.modelUrl,modelPreferredShape:"none",parent:this,parentNodeName:W}).spawn(A,{x:0,y:0,z:0})}}).catch((Y)=>l.warning(`DefaultPlayerEntity.spawn(): Failed to get player cosmetics: ${Y}`))}}var mIA;((Y)=>{Y.TICK_REPORT="PERFORMANCE_MONITOR.TICK_REPORT";Y.SPIKE_DETECTED="PERFORMANCE_MONITOR.SPIKE_DETECTED";Y.SNAPSHOT="PERFORMANCE_MONITOR.SNAPSHOT"})(mIA||={});class O0 extends BQ{static _instance;static get instance(){if(!O0._instance)O0._instance=new O0;return O0._instance}_enabled=!1;_entityProfilingEnabled=!1;_spikeThresholdMs=50;_tickBudgetMs=16.67;_snapshotIntervalMs=5000;_historySize=3600;_startTime=0;_operations=new Map;_worldTicks=new Map;_entityCosts=new Map;_snapshotTimer=null;constructor(){super()}get isEnabled(){return this._enabled}get isEntityProfilingEnabled(){return this._enabled&&this._entityProfilingEnabled}enable(A){if(this._enabled)return;if(this._enabled=!0,this._startTime=performance.now(),this._spikeThresholdMs=A?.spikeThresholdMs??50,this._tickBudgetMs=A?.tickBudgetMs??16.67,this._snapshotIntervalMs=A?.snapshotIntervalMs??5000,this._historySize=A?.historySize??3600,this._worldTicks.clear(),this._operations.clear(),this._entityCosts.clear(),this._snapshotIntervalMs>0)this._snapshotTimer=setInterval(()=>{let Q=this.getSnapshot();this.emit("PERFORMANCE_MONITOR.SNAPSHOT",Q)},this._snapshotIntervalMs)}disable(){if(this._enabled=!1,this._entityProfilingEnabled=!1,this._snapshotTimer)clearInterval(this._snapshotTimer),this._snapshotTimer=null}enableEntityProfiling(A){if(this._entityProfilingEnabled=A,!A)this._entityCosts.clear()}measure(A,Q){if(!this._enabled)return Q();let B=performance.now(),Y=Q(),J=performance.now()-B;return this._recordOperation(A,J),Y}async measureAsync(A,Q){if(!this._enabled)return Q();let B=performance.now(),Y=await Q(),J=performance.now()-B;return this._recordOperation(A,J),Y}startTiming(A){if(!this._enabled)return()=>{};let Q=performance.now();return()=>{this._recordOperation(A,performance.now()-Q)}}beginTick(A,Q,B,Y=0){let J=this._getOrCreateWorldTickState(Y);J.currentTick=A,J.currentTickStart=performance.now(),J.currentPhases={},J.currentEntityCount=Q,J.currentPlayerCount=B}recordPhase(A,Q,B=0){let Y=this._worldTicks.get(B);if(!Y)return;Y.currentPhases[A]=Q}endTick(A=0){let Q=this._worldTicks.get(A);if(!Q)return;let B=performance.now()-Q.currentTickStart;if(Q.tickDurations[Q.tickIndex]=B,Q.tickIndex=(Q.tickIndex+1)%Q.tickDurations.length,Q.tickCount=Math.min(Q.tickCount+1,Q.tickDurations.length),Q.totalTicks++,B>Q.maxTickMs)Q.maxTickMs=B;if(B>this._tickBudgetMs)Q.ticksOverBudget++;let Y=process.memoryUsage().heapUsed/1048576,J={worldId:A,tick:Q.currentTick,durationMs:B,budgetMs:this._tickBudgetMs,budgetPercent:B/this._tickBudgetMs*100,phases:{...Q.currentPhases},entityCount:Q.currentEntityCount,playerCount:Q.currentPlayerCount,heapUsedMb:Y};if(this.emit("PERFORMANCE_MONITOR.TICK_REPORT",J),B>this._spikeThresholdMs)this.emit("PERFORMANCE_MONITOR.SPIKE_DETECTED",J)}recordEntityCost(A,Q,B){this._entityCosts.set(A,{tickMs:B,name:Q})}getEntityCosts(){return new Map(this._entityCosts)}getSnapshot(A){let Q=process.memoryUsage(),Y=(typeof A==="number"?this._getTickSamples(A):this._getAllTickSamples()).slice().sort((C,X)=>C-X),J=typeof A==="number"?this._getRollup(A):this._getGlobalRollup();return{uptimeMs:performance.now()-this._startTime,tickRate:60,avgTickMs:Y.length>0?Y.reduce((C,X)=>C+X,0)/Y.length:0,maxTickMs:J.maxTickMs,p95TickMs:Y.length>0?Y[Math.floor(Y.length*0.95)]:0,p99TickMs:Y.length>0?Y[Math.floor(Y.length*0.99)]:0,ticksOverBudget:J.ticksOverBudget,totalTicks:J.totalTicks,budgetMs:this._tickBudgetMs,operations:this._getOperationStats(),memory:{heapUsedMb:Q.heapUsed/1048576,heapTotalMb:Q.heapTotal/1048576,rssMb:Q.rss/1048576}}}resetStats(){this._worldTicks.clear(),this._operations.clear(),this._entityCosts.clear()}_recordOperation(A,Q){let B=this._operations.get(A);if(!B)B={count:0,totalMs:0,minMs:1/0,maxMs:0,lastMs:0,samples:new Float64Array(1000),sampleIndex:0,sampleCount:0},this._operations.set(A,B);if(B.count++,B.totalMs+=Q,B.lastMs=Q,QB.maxMs)B.maxMs=Q;B.samples[B.sampleIndex]=Q,B.sampleIndex=(B.sampleIndex+1)%B.samples.length,B.sampleCount=Math.min(B.sampleCount+1,B.samples.length)}_getOrCreateWorldTickState(A){let Q=Math.floor(A),B=this._worldTicks.get(Q);if(!B)B={tickDurations:new Float64Array(this._historySize),tickIndex:0,tickCount:0,ticksOverBudget:0,maxTickMs:0,totalTicks:0,currentTick:0,currentTickStart:0,currentPhases:{},currentEntityCount:0,currentPlayerCount:0},this._worldTicks.set(Q,B);return B}_getTickSamples(A){let Q=this._worldTicks.get(Math.floor(A));if(!Q||Q.tickCount===0)return[];let B=[];for(let Y=0;YJ-C),A[Q]={count:B.count,totalMs:B.totalMs,avgMs:B.count>0?B.totalMs/B.count:0,minMs:B.minMs===1/0?0:B.minMs,maxMs:B.maxMs,lastMs:B.lastMs,p50Ms:Y.length>0?Y[Math.floor(Y.length*0.5)]:0,p95Ms:Y.length>0?Y[Math.floor(Y.length*0.95)]:0,p99Ms:Y.length>0?Y[Math.floor(Y.length*0.99)]:0}}return A}}class JN{_activeEntities=new Set;_entities=new Map;_nextEntityId=1;_world;constructor(A){this._world=A}get entityCount(){return this._entities.size}get world(){return this._world}registerEntity(A){if(A.id!==void 0)l.fatalError(`EntityManager.registerEntity(): Entity ${A.name} is already assigned the id ${A.id}!`);let Q=this._nextEntityId;if(this._entities.set(Q,A),this._nextEntityId++,!A.isEnvironmental)this._activeEntities.add(A);return Q}unregisterEntity(A){if(A.id===void 0)return l.error(`EntityManager.unregisterEntity(): Entity ${A.name} is not assigned an id!`);if(this._entities.delete(A.id),!A.isEnvironmental)this._activeEntities.delete(A)}getAllEntities(){return Array.from(this._entities.values())}getAllPlayerEntities(){let A=[];return this._entities.forEach((Q)=>{if(Q instanceof BX)A.push(Q)}),A}getPlayerEntitiesByPlayer(A){let Q=[];return this._entities.forEach((B)=>{if(B instanceof BX&&B.player===A)Q.push(B)}),Q}getEntity(A){return this._entities.get(A)}getEntitiesByTag(A){let Q=[];return this._entities.forEach((B)=>{if(B.tag===A)Q.push(B)}),Q}getEntitiesByTagSubstring(A){let Q=[];return this._entities.forEach((B)=>{if(B.tag?.includes(A))Q.push(B)}),Q}getEntityChildren(A){let Q=[];return this._entities.forEach((B)=>{if(B.parent===A)Q.push(B)}),Q}tickEntities(A){let Q=O0.instance,B=Q.isEntityProfilingEnabled;for(let Y of this._activeEntities)if(B){let J=performance.now();Y.tick(A),Q.recordEntityCost(Y.id??0,Y.name,performance.now()-J)}else Y.tick(A)}checkAndEmitUpdates(){for(let A of this._activeEntities)A.checkAndEmitUpdates()}}import{gzipSync as om0}from"zlib";var Z9=qA(lHA(),1),qqY=Z9.default.v1,MqY=Z9.default.v1ToV6,zqY=Z9.default.v3,pHA=Z9.default.v4,RqY=Z9.default.v5,wqY=Z9.default.v6,jqY=Z9.default.v6ToV1,OqY=Z9.default.v7,PqY=Z9.default.NIL,TqY=Z9.default.MAX,SqY=Z9.default.version,kqY=Z9.default.validate,_qY=Z9.default.stringify,vqY=Z9.default.parse;var $u;try{$u=new TextDecoder}catch(A){}var _A,_8,t=0;var Vu=[],jZ=Vu,GN=0,A0={},DB,r6,k8=0,S5=0,hY,a6,p9=[],UB,iHA={useRecords:!1,mapsAsObjects:!0};class Gj{}var Iu=new Gj;Iu.name="MessagePack 0xC1";var r7=!1,ADA=2,Uu,Eu,Ku;try{Function("")}catch(A){ADA=1/0}class o6{constructor(A){if(A){if(A.useRecords===!1&&A.mapsAsObjects===void 0)A.mapsAsObjects=!0;if(A.sequential&&A.trusted!==!1){if(A.trusted=!0,!A.structures&&A.useRecords!=!1){if(A.structures=[],!A.maxSharedStructures)A.maxSharedStructures=0}}if(A.structures)A.structures.sharedLength=A.structures.length;else if(A.getStructures)(A.structures=[]).uninitialized=!0,A.structures.sharedLength=0;if(A.int64AsNumber)A.int64AsType="number"}Object.assign(this,A)}unpack(A,Q){if(_A)return ZDA(()=>{return Xj(),this?this.unpack(A,Q):o6.prototype.unpack.call(iHA,A,Q)});if(!A.buffer&&A.constructor===ArrayBuffer)A=typeof Buffer<"u"?Buffer.from(A):new Uint8Array(A);if(typeof Q==="object")_8=Q.end||A.length,t=Q.start||0;else t=0,_8=Q>-1?Q:A.length;GN=0,S5=0,r6=null,jZ=Vu,hY=null,_A=A;try{UB=A.dataView||(A.dataView=new DataView(A.buffer,A.byteOffset,A.byteLength))}catch(B){if(_A=null,A instanceof Uint8Array)throw B;throw Error("Source must be a Uint8Array or Buffer but was a "+(A&&typeof A=="object"?A.constructor.name:typeof A))}if(this instanceof o6){if(A0=this,this.structures)return DB=this.structures,Jj(Q);else if(!DB||DB.length>0)DB=[]}else if(A0=iHA,!DB||DB.length>0)DB=[];return Jj(Q)}unpackMultiple(A,Q){let B,Y=0;try{r7=!0;let J=A.length,C=this?this.unpack(A,J):Fj.unpack(A,J);if(Q){if(Q(C,Y,t)===!1)return;while(tB.slice(0));for(let B=0,Y=A.length;B=32)J.highByte=B-32>>5}}A.sharedLength=A.length;for(let B in Q||[])if(B>=0){let Y=A[B],J=Q[B];if(J){if(Y)(A.restoreStructures||(A.restoreStructures=[]))[B]=Y;A[B]=J}}return this.structures=A}decode(A,Q){return this.unpack(A,Q)}}function Jj(A){try{if(!A0.trusted&&!r7){let B=DB.sharedLength||0;if(B=32&&Uu){if(Q=Uu(_A,t,_8,A0),_A=null,!(A&&A.lazy)&&Q)Q=Q.toJSON();t=_8}else Q=ZY();if(hY)t=hY.postBundlePosition,hY=null;if(r7)DB.restoreStructures=null;if(t==_8){if(DB&&DB.restoreStructures)nHA();if(DB=null,_A=null,a6)a6=null}else if(t>_8)throw Error("Unexpected end of MessagePack data");else if(!r7){let B;try{B=JSON.stringify(Q,(Y,J)=>typeof J==="bigint"?`${J}n`:J).slice(0,100)}catch(Y){B="(JSON view not available "+Y+")"}throw Error("Data read, but end of buffer not reached "+B)}return Q}catch(Q){if(DB&&DB.restoreStructures)nHA();if(Xj(),Q instanceof RangeError||Q.message.startsWith("Unexpected end of buffer")||t>_8)Q.incomplete=!0;throw Q}}function nHA(){for(let A in DB.restoreStructures)DB[A]=DB.restoreStructures[A];DB.restoreStructures=null}function ZY(){let A=_A[t++];if(A<160)if(A<128)if(A<64)return A;else{let Q=DB[A&63]||A0.getStructures&&QDA()[A&63];if(Q){if(!Q.read)Q.read=Hu(Q,A&63);return Q.read()}else return A}else if(A<144)if(A-=128,A0.mapsAsObjects){let Q={};for(let B=0;B=t)return r6.slice(t-k8,(t+=Q)-k8);if(S5==0&&_8<140){let B=Q<16?Du(Q):GDA(Q);if(B!=null)return B}return Cj(Q)}else{let Q;switch(A){case 192:return null;case 193:if(hY)if(Q=ZY(),Q>0)return hY[1].slice(hY.position1,hY.position1+=Q);else return hY[0].slice(hY.position0,hY.position0-=Q);return Iu;case 194:return!1;case 195:return!0;case 196:if(Q=_A[t++],Q===void 0)throw Error("Unexpected end of buffer");return Zu(Q);case 197:return Q=UB.getUint16(t),t+=2,Zu(Q);case 198:return Q=UB.getUint32(t),t+=4,Zu(Q);case 199:return wZ(_A[t++]);case 200:return Q=UB.getUint16(t),t+=2,wZ(Q);case 201:return Q=UB.getUint32(t),t+=4,wZ(Q);case 202:if(Q=UB.getFloat32(t),A0.useFloat32>2){let B=PZ[(_A[t]&127)<<1|_A[t+1]>>7];return t+=4,(B*Q+(Q>0?0.5:-0.5)>>0)/B}return t+=4,Q;case 203:return Q=UB.getFloat64(t),t+=8,Q;case 204:return _A[t++];case 205:return Q=UB.getUint16(t),t+=2,Q;case 206:return Q=UB.getUint32(t),t+=4,Q;case 207:if(A0.int64AsType==="number")Q=UB.getUint32(t)*4294967296,Q+=UB.getUint32(t+4);else if(A0.int64AsType==="string")Q=UB.getBigUint64(t).toString();else if(A0.int64AsType==="auto"){if(Q=UB.getBigUint64(t),Q<=BigInt(2)<=BigInt(-2)<=t)return r6.slice(t-k8,(t+=Q)-k8);return BDA(Q);case 218:if(Q=UB.getUint16(t),t+=2,S5>=t)return r6.slice(t-k8,(t+=Q)-k8);return YDA(Q);case 219:if(Q=UB.getUint32(t),t+=4,S5>=t)return r6.slice(t-k8,(t+=Q)-k8);return JDA(Q);case 220:return Q=UB.getUint16(t),t+=2,rHA(Q);case 221:return Q=UB.getUint32(t),t+=4,rHA(Q);case 222:return Q=UB.getUint16(t),t+=2,aHA(Q);case 223:return Q=UB.getUint32(t),t+=4,aHA(Q);default:if(A>=224)return A-256;if(A===void 0){let B=Error("Unexpected end of MessagePack data");throw B.incomplete=!0,B}throw Error("Unknown MessagePack token "+A)}}}var RZB=/^[a-zA-Z_$][a-zA-Z\d_$]*$/;function Hu(A,Q){function B(){if(B.count++>ADA){let J=A.read=Function("r","return function(){return "+(A0.freezeData?"Object.freeze":"")+"({"+A.map((C)=>C==="__proto__"?"__proto_:r()":RZB.test(C)?C+":r()":"["+JSON.stringify(C)+"]:r()").join(",")+"})}")(ZY);if(A.highByte===0)A.read=sHA(Q,A.read);return J()}let Y={};for(let J=0,C=A.length;J{return function(){let B=_A[t++];if(B===0)return Q();let Y=A<32?-(A+(B<<5)):A+(B<<5),J=DB[Y]||QDA()[Y];if(!J)throw Error("Record id is not defined for "+Y);if(!J.read)J.read=Hu(J,A);return J.read()}};function QDA(){let A=ZDA(()=>{return _A=null,A0.getStructures()});return DB=A0._mergeStructures(A,DB)}var Cj=OZ,BDA=OZ,YDA=OZ,JDA=OZ,Wj=!1;function CDA(A){Wj=!0,Cj=Q(1),BDA=Q(2),YDA=Q(3),JDA=Q(5);function Q(B){return function(J){let C=jZ[GN++];if(C==null){if(hY)return OZ(J);let G=_A.byteOffset,W=A(t-B+G,_8+G,_A.buffer);if(typeof W=="string")C=W,jZ=Vu;else if(jZ=W,GN=1,S5=1,C=jZ[0],C===void 0)throw Error("Unexpected end of buffer")}let X=C.length;if(X<=J)return t+=J,C;return r6=C,k8=t,S5=t+X,t+=J,C.slice(0,J)}}}function OZ(A){let Q;if(A<16){if(Q=Du(A))return Q}if(A>64&&$u)return $u.decode(_A.subarray(t,t+=A));let B=t+A,Y=[];Q="";while(t65535)W-=65536,Y.push(W>>>10&1023|55296),W=56320|W&1023;Y.push(W)}else Y.push(J);if(Y.length>=4096)Q+=sY.apply(String,Y),Y.length=0}if(Y.length>0)Q+=sY.apply(String,Y);return Q}function XDA(A,Q,B){let Y=_A;_A=A,t=Q;try{return OZ(B)}finally{_A=Y}}function rHA(A){let Q=Array(A);for(let B=0;B0){t=Q;return}B[Y]=J}return sY.apply(String,B)}function Du(A){if(A<4)if(A<2)if(A===0)return"";else{let Q=_A[t++];if((Q&128)>1){t-=1;return}return sY(Q)}else{let Q=_A[t++],B=_A[t++];if((Q&128)>0||(B&128)>0){t-=2;return}if(A<3)return sY(Q,B);let Y=_A[t++];if((Y&128)>0){t-=3;return}return sY(Q,B,Y)}else{let Q=_A[t++],B=_A[t++],Y=_A[t++],J=_A[t++];if((Q&128)>0||(B&128)>0||(Y&128)>0||(J&128)>0){t-=4;return}if(A<6)if(A===4)return sY(Q,B,Y,J);else{let C=_A[t++];if((C&128)>0){t-=5;return}return sY(Q,B,Y,J,C)}else if(A<8){let C=_A[t++],X=_A[t++];if((C&128)>0||(X&128)>0){t-=6;return}if(A<7)return sY(Q,B,Y,J,C,X);let G=_A[t++];if((G&128)>0){t-=7;return}return sY(Q,B,Y,J,C,X,G)}else{let C=_A[t++],X=_A[t++],G=_A[t++],W=_A[t++];if((C&128)>0||(X&128)>0||(G&128)>0||(W&128)>0){t-=8;return}if(A<10)if(A===8)return sY(Q,B,Y,J,C,X,G,W);else{let F=_A[t++];if((F&128)>0){t-=9;return}return sY(Q,B,Y,J,C,X,G,W,F)}else if(A<12){let F=_A[t++],Z=_A[t++];if((F&128)>0||(Z&128)>0){t-=10;return}if(A<11)return sY(Q,B,Y,J,C,X,G,W,F,Z);let U=_A[t++];if((U&128)>0){t-=11;return}return sY(Q,B,Y,J,C,X,G,W,F,Z,U)}else{let F=_A[t++],Z=_A[t++],U=_A[t++],$=_A[t++];if((F&128)>0||(Z&128)>0||(U&128)>0||($&128)>0){t-=12;return}if(A<14)if(A===12)return sY(Q,B,Y,J,C,X,G,W,F,Z,U,$);else{let E=_A[t++];if((E&128)>0){t-=13;return}return sY(Q,B,Y,J,C,X,G,W,F,Z,U,$,E)}else{let E=_A[t++],K=_A[t++];if((E&128)>0||(K&128)>0){t-=14;return}if(A<15)return sY(Q,B,Y,J,C,X,G,W,F,Z,U,$,E,K);let I=_A[t++];if((I&128)>0){t-=15;return}return sY(Q,B,Y,J,C,X,G,W,F,Z,U,$,E,K,I)}}}}}function oHA(){let A=_A[t++],Q;if(A<192)Q=A-160;else switch(A){case 217:Q=_A[t++];break;case 218:Q=UB.getUint16(t),t+=2;break;case 219:Q=UB.getUint32(t),t+=4;break;default:throw Error("Expected string")}return OZ(Q)}function Zu(A){return A0.copyBuffers?Uint8Array.prototype.slice.call(_A,t,t+=A):_A.subarray(t,t+=A)}function wZ(A){let Q=_A[t++];if(p9[Q]){let B;return p9[Q](_A.subarray(t,B=t+=A),(Y)=>{t=Y;try{return ZY()}finally{t=B}})}else throw Error("Unknown extension type "+Q)}var tHA=Array(4096);function WDA(){let A=_A[t++];if(A>=160&&A<192){if(A=A-160,S5>=t)return r6.slice(t-k8,(t+=A)-k8);else if(!(S5==0&&_8<180))return Cj(A)}else return t--,FDA(ZY());let Q=(A<<5^(A>1?UB.getUint16(t):A>0?_A[t]:0))&4095,B=tHA[Q],Y=t,J=t+A-3,C,X=0;if(B&&B.bytes==A){while(Y["string","number","boolean","bigint"].includes(typeof Q)))return A.flat().toString();throw Error(`Invalid property type for record: ${typeof A}`)}var eHA=(A,Q)=>{let B=ZY().map(FDA),Y=A;if(Q!==void 0)A=A<32?-((Q<<5)+A):(Q<<5)+A,B.highByte=Q;let J=DB[A];if(J&&(J.isShared||r7))(DB.restoreStructures||(DB.restoreStructures=[]))[A]=J;return DB[A]=B,B.read=Hu(B,Y),B.read()};p9[0]=()=>{};p9[0].noBuffer=!0;p9[66]=(A)=>{let Q=A.length,B=BigInt(A[0]&128?A[0]-256:A[0]);for(let Y=1;Y{let A=ZY();return(wZB[A[0]]||Error)(A[1],{cause:A[2]})};p9[105]=(A)=>{if(A0.structuredClone===!1)throw Error("Structured clone extension is disabled");let Q=UB.getUint32(t-4);if(!a6)a6=new Map;let B=_A[t],Y;if(B>=144&&B<160||B==220||B==221)Y=[];else if(B>=128&&B<144||B==222||B==223)Y=new Map;else if((B>=199&&B<=201||B>=212&&B<=216)&&_A[t+1]===115)Y=new Set;else Y={};let J={target:Y};a6.set(Q,J);let C=ZY();if(!J.used)return J.target=C;else Object.assign(Y,C);if(Y instanceof Map)for(let[X,G]of C.entries())Y.set(X,G);if(Y instanceof Set)for(let X of Array.from(C))Y.add(X);return Y};p9[112]=(A)=>{if(A0.structuredClone===!1)throw Error("Structured clone extension is disabled");let Q=UB.getUint32(t-4),B=a6.get(Q);return B.used=!0,B.target};p9[115]=()=>new Set(ZY());var Nu=["Int8","Uint8","Uint8Clamped","Int16","Uint16","Int32","Uint32","Float32","Float64","BigInt64","BigUint64"].map((A)=>A+"Array"),jZB=typeof globalThis==="object"?globalThis:window;p9[116]=(A)=>{let Q=A[0],B=Uint8Array.prototype.slice.call(A,1).buffer,Y=Nu[Q];if(!Y){if(Q===16)return B;if(Q===17)return new DataView(B);throw Error("Could not find typed array for code "+Q)}return new jZB[Y](B)};p9[120]=()=>{let A=ZY();return new RegExp(A[0],A[1])};var OZB=[];p9[98]=(A)=>{let Q=(A[0]<<24)+(A[1]<<16)+(A[2]<<8)+A[3],B=t;return t+=Q-A.length,hY=OZB,hY=[oHA(),oHA()],hY.position0=0,hY.position1=0,hY.postBundlePosition=t,t=B,ZY()};p9[255]=(A)=>{if(A.length==4)return new Date((A[0]*16777216+(A[1]<<16)+(A[2]<<8)+A[3])*1000);else if(A.length==8)return new Date(((A[0]<<22)+(A[1]<<14)+(A[2]<<6)+(A[3]>>2))/1e6+((A[3]&3)*4294967296+A[4]*16777216+(A[5]<<16)+(A[6]<<8)+A[7])*1000);else if(A.length==12)return new Date(((A[0]<<24)+(A[1]<<16)+(A[2]<<8)+A[3])/1e6+((A[4]&128?-281474976710656:0)+A[6]*1099511627776+A[7]*4294967296+A[8]*16777216+(A[9]<<16)+(A[10]<<8)+A[11])*1000);else return new Date("invalid")};function ZDA(A){if(Ku)Ku();let Q=_8,B=t,Y=GN,J=k8,C=S5,X=r6,G=jZ,W=a6,F=hY,Z=new Uint8Array(_A.slice(0,_8)),U=DB,$=DB.slice(0,DB.length),E=A0,K=r7,I=A();return _8=Q,t=B,GN=Y,k8=J,S5=C,r6=X,jZ=G,a6=W,hY=F,_A=Z,r7=K,DB=U,DB.splice(0,DB.length,...$),A0=E,UB=new DataView(_A.buffer,_A.byteOffset,_A.byteLength),I}function Xj(){_A=null,a6=null,DB=null}var PZ=Array(147);for(let A=0;A<256;A++)PZ[A]=+("1e"+Math.floor(45.15-A*0.30103));var Fj=new o6({useRecords:!1}),PZB=Fj.unpack,TZB=Fj.unpackMultiple,SZB=Fj.unpack,WN={NEVER:0,ALWAYS:1,DECIMAL_ROUND:3,DECIMAL_FIT:4},kZB=new Float32Array(1),gqY=new Uint8Array(kZB.buffer,0,4);function $DA(A,Q,B){Uu=A,Eu=Q,Ku=B}var $j;try{$j=new TextEncoder}catch(A){}var Mu,KDA,ZN=typeof Buffer<"u",Zj=ZN?function(A){return Buffer.allocUnsafeSlow(A)}:Uint8Array,VDA=ZN?Buffer:Uint8Array,UDA=ZN?4294967296:2144337920,$A,FN,W0,BA=0,$9,x0=null,IDA,_ZB=21760,vZB=/[\u0080-\uFFFF]/,YX=Symbol("record-id");class TZ extends o6{constructor(A){super(A);this.offset=0;let Q,B,Y,J,C,X=VDA.prototype.utf8Write?function(T,S){return $A.utf8Write(T,S,$A.byteLength-S)}:$j&&$j.encodeInto?function(T,S){return $j.encodeInto(T,$A.subarray(S)).written}:!1,G=this;if(!A)A={};let W=A&&A.sequential,F=A.structures||A.saveStructures,Z=A.maxSharedStructures;if(Z==null)Z=F?32:0;if(Z>8160)throw Error("Maximum maxSharedStructure is 8160");if(A.structuredClone&&A.moreTypes==null)this.moreTypes=!0;let U=A.maxOwnStructures;if(U==null)U=F?32:64;if(!this.structures&&A.useRecords!=!1)this.structures=[];let $=Z>32||U+Z>64,E=Z+64,K=Z+U+64;if(K>8256)throw Error("Maximum maxSharedStructure + maxOwnStructure is 8192");let I=[],V=0,H=0;this.pack=this.encode=function(T,S){if(!$A)$A=new Zj(8192),W0=$A.dataView||($A.dataView=new DataView($A.buffer,0,8192)),BA=0;if($9=$A.length-10,$9-BA<2048)$A=new Zj($A.length),W0=$A.dataView||($A.dataView=new DataView($A.buffer,0,$A.length)),$9=$A.length-10,BA=0;else BA=BA+7&2147483640;if(B=BA,S&mZB)BA+=S&255;if(C=G.structuredClone?new Map:null,G.bundleStrings&&typeof T!=="string")x0=[],x0.size=1/0;else x0=null;if(J=G.structures,J){if(J.uninitialized)J=G._mergeStructures(G.getStructures());let y=J.sharedLength||0;if(y>Z)throw Error("Shared structures is larger than maximum shared structures, try increasing maxSharedStructures to "+J.sharedLength);if(!J.transitions){J.transitions=Object.create(null);for(let h=0;hi.offset>p.offset?1:-1),g=h.length,m=-1;while(y&&g>0){let i=h[--g].offset+B;if(iy.position+B){if(m>=0)m+=6}else{if(m>=0)W0.setUint32(y.position+B,W0.getUint32(y.position+B)+m),m=-1;y=y.previous,g++}}if(m>=0&&y)W0.setUint32(y.position+B,W0.getUint32(y.position+B)+m);if(BA+=h.length*6,BA>$9)P(BA);G.offset=BA;let n=gZB($A.subarray(B,BA),h);return C=null,n}if(G.offset=BA,S&fZB)return $A.start=B,$A.end=BA,$A;return $A.subarray(B,BA)}catch(y){throw v=y,y}finally{if(J){if(D(),Y&&G.saveStructures){let y=J.sharedLength||0,h=$A.subarray(B,BA),g=HDA(J,G);if(!v){if(G.saveStructures(g,g.isCompatible)===!1)return G.pack(T,S);if(G.lastNamedStructuresLength=y,$A.length>1073741824)$A=null;return h}}}if($A.length>1073741824)$A=null;if(S&bZB)BA=B}};let D=()=>{if(H<10)H++;let T=J.sharedLength||0;if(J.length>T&&!W)J.length=T;if(V>1e4){if(J.transitions=null,H=0,V=0,I.length>0)I=[]}else if(I.length>0&&!W){for(let S=0,v=I.length;S{var S=T.length;if(S<16)$A[BA++]=144|S;else if(S<65536)$A[BA++]=220,$A[BA++]=S>>8,$A[BA++]=S&255;else $A[BA++]=221,W0.setUint32(BA,S),BA+=4;for(let v=0;v{if(BA>$9)$A=P(BA);var S=typeof T,v;if(S==="string"){let y=T.length;if(x0&&y>=4&&y<4096){if((x0.size+=y)>_ZB){let n,i=(x0[0]?x0[0].length*3+x0[1].length:0)+10;if(BA+i>$9)$A=P(BA+i);let p;if(x0.position)p=x0,$A[BA]=200,BA+=3,$A[BA++]=98,n=BA-B,BA+=4,EDA(B,z,0),W0.setUint16(n+B-3,BA-B-n);else $A[BA++]=214,$A[BA++]=98,n=BA-B,BA+=4;x0=["",""],x0.previous=p,x0.size=0,x0.position=n}let m=vZB.test(T);x0[m?0:1]+=T,$A[BA++]=193,z(m?-y:y);return}let h;if(y<32)h=1;else if(y<256)h=2;else if(y<65536)h=3;else h=5;let g=y*3;if(BA+g>$9)$A=P(BA+g);if(y<64||!X){let m,n,i,p=BA+h;for(m=0;m>6|192,$A[p++]=n&63|128;else if((n&64512)===55296&&((i=T.charCodeAt(m+1))&64512)===56320)n=65536+((n&1023)<<10)+(i&1023),m++,$A[p++]=n>>18|240,$A[p++]=n>>12&63|128,$A[p++]=n>>6&63|128,$A[p++]=n&63|128;else $A[p++]=n>>12|224,$A[p++]=n>>6&63|128,$A[p++]=n&63|128;v=p-BA-h}else v=X(T,BA+h);if(v<32)$A[BA++]=160|v;else if(v<256){if(h<2)$A.copyWithin(BA+2,BA+1,BA+1+v);$A[BA++]=217,$A[BA++]=v}else if(v<65536){if(h<3)$A.copyWithin(BA+3,BA+2,BA+2+v);$A[BA++]=218,$A[BA++]=v>>8,$A[BA++]=v&255}else{if(h<5)$A.copyWithin(BA+5,BA+3,BA+3+v);$A[BA++]=219,W0.setUint32(BA,v),BA+=4}BA+=v}else if(S==="number")if(T>>>0===T)if(T<32||T<128&&this.useRecords===!1||T<64&&!this.randomAccessStructure)$A[BA++]=T;else if(T<256)$A[BA++]=204,$A[BA++]=T;else if(T<65536)$A[BA++]=205,$A[BA++]=T>>8,$A[BA++]=T&255;else $A[BA++]=206,W0.setUint32(BA,T),BA+=4;else if(T>>0===T)if(T>=-32)$A[BA++]=256+T;else if(T>=-128)$A[BA++]=208,$A[BA++]=T+256;else if(T>=-32768)$A[BA++]=209,W0.setInt16(BA,T),BA+=2;else $A[BA++]=210,W0.setInt32(BA,T),BA+=4;else{let y;if((y=this.useFloat32)>0&&T<4294967296&&T>=-2147483648){$A[BA++]=202,W0.setFloat32(BA,T);let h;if(y<4||(h=T*PZ[($A[BA]&127)<<1|$A[BA+1]>>7])>>0===h){BA+=4;return}else BA--}$A[BA++]=203,W0.setFloat64(BA,T),BA+=8}else if(S==="object"||S==="function")if(!T)$A[BA++]=192;else{if(C){let h=C.get(T);if(h){if(!h.id){let g=C.idsToInsert||(C.idsToInsert=[]);h.id=g.push(h)}$A[BA++]=214,$A[BA++]=112,W0.setUint32(BA,h.id),BA+=4;return}else C.set(T,{offset:BA-B})}let y=T.constructor;if(y===Object)w(T);else if(y===Array)L(T);else if(y===Map)if(this.mapAsEmptyObject)$A[BA++]=128;else{if(v=T.size,v<16)$A[BA++]=128|v;else if(v<65536)$A[BA++]=222,$A[BA++]=v>>8,$A[BA++]=v&255;else $A[BA++]=223,W0.setUint32(BA,v),BA+=4;for(let[h,g]of T)z(h),z(g)}else{for(let h=0,g=Mu.length;h{if($A=i,i=null,BA+=b,BA>$9)P(BA);return{target:$A,targetView:W0,position:BA-b}},z)}finally{if(i)$A=i,W0=p,BA=d,$9=$A.length-10}if(x){if(x.length+BA>$9)P(x.length+BA);BA=yZB(x,$A,BA,n.type)}return}}if(Array.isArray(T))L(T);else{if(T.toJSON){let h=T.toJSON();if(h!==T)return z(h)}if(S==="function")return z(this.writeFunction&&this.writeFunction(T));w(T)}}}else if(S==="boolean")$A[BA++]=T?195:194;else if(S==="bigint"){if(T<9223372036854776000&&T>=-9223372036854776000)$A[BA++]=211,W0.setBigInt64(BA,T);else if(T<18446744073709552000&&T>0)$A[BA++]=207,W0.setBigUint64(BA,T);else if(this.largeBigIntToFloat)$A[BA++]=203,W0.setFloat64(BA,Number(T));else if(this.largeBigIntToString)return z(T.toString());else if((this.useBigIntExtension||this.moreTypes)&&T-(BigInt(2)**BigInt(1023))){$A[BA++]=199,BA++,$A[BA++]=66;let y=[],h;do{let g=T&BigInt(255);h=(g&BigInt(128))===(T>=BigInt(8)}while(!((T===BigInt(0)||T===BigInt(-1))&&h));$A[BA-2]=y.length;for(let g=y.length;g>0;)$A[BA++]=Number(y[--g]);return}else throw RangeError(T+" was too large to fit in MessagePack 64-bit integer format, use useBigIntExtension, or set largeBigIntToFloat to convert to float-64, or set largeBigIntToString to convert to string");BA+=8}else if(S==="undefined")if(this.encodeUndefinedAsNil)$A[BA++]=192;else $A[BA++]=212,$A[BA++]=0,$A[BA++]=0;else throw Error("Unknown type: "+S)},M=this.variableMapSize||this.coercibleKeyAsNumber||this.skipValues?(T)=>{let S;if(this.skipValues){S=[];for(let h in T)if((typeof T.hasOwnProperty!=="function"||T.hasOwnProperty(h))&&!this.skipValues.includes(T[h]))S.push(h)}else S=Object.keys(T);let v=S.length;if(v<16)$A[BA++]=128|v;else if(v<65536)$A[BA++]=222,$A[BA++]=v>>8,$A[BA++]=v&255;else $A[BA++]=223,W0.setUint32(BA,v),BA+=4;let y;if(this.coercibleKeyAsNumber)for(let h=0;h{$A[BA++]=222;let S=BA-B;BA+=2;let v=0;for(let y in T)if(typeof T.hasOwnProperty!=="function"||T.hasOwnProperty(y))z(y),z(T[y]),v++;if(v>65535)throw Error('Object is too large to serialize with fast 16-bit map size, use the "variableMapSize" option to serialize this object');$A[S+++B]=v>>8,$A[S+B]=v&255},N=this.useRecords===!1?M:A.progressiveRecords&&!$?(T)=>{let S,v=J.transitions||(J.transitions=Object.create(null)),y=BA++-B,h;for(let g in T)if(typeof T.hasOwnProperty!=="function"||T.hasOwnProperty(g)){if(S=v[g],S)v=S;else{let m=Object.keys(T),n=v;v=J.transitions;let i=0;for(let p=0,d=m.length;p{let S,v=J.transitions||(J.transitions=Object.create(null)),y=0;for(let g in T)if(typeof T.hasOwnProperty!=="function"||T.hasOwnProperty(g)){if(S=v[g],!S)S=v[g]=Object.create(null),y++;v=S}let h=v[YX];if(h)if(h>=96&&$)$A[BA++]=((h-=96)&31)+96,$A[BA++]=h>>5;else $A[BA++]=h;else _(v,v.__keys__||Object.keys(T),y);for(let g in T)if(typeof T.hasOwnProperty!=="function"||T.hasOwnProperty(g))z(T[g])},q=typeof this.useRecords=="function"&&this.useRecords,w=q?(T)=>{q(T)?N(T):M(T)}:N,P=(T)=>{let S;if(T>16777216){if(T-B>UDA)throw Error("Packed buffer would be larger than maximum buffer size");S=Math.min(UDA,Math.round(Math.max((T-B)*(T>67108864?1.25:2),4194304)/4096)*4096)}else S=(Math.max(T-B<<2,$A.length-1)>>12)+1<<12;let v=new Zj(S);if(W0=v.dataView||(v.dataView=new DataView(v.buffer,0,S)),T=Math.min(T,$A.length),$A.copy)$A.copy(v,0,B,T);else v.set($A.slice(B,T));return BA-=B,B=0,$9=v.length-10,$A=v},_=(T,S,v)=>{let y=J.nextId;if(!y)y=64;if(y=K)y=E;J.nextId=y+1}let h=S.highByte=y>=96&&$?y-96>>5:-1;if(T[YX]=y,T.__keys__=S,J[y-64]=S,y=0)$A[BA++]=(y&31)+96,$A[BA++]=h;else $A[BA++]=y;else{if(h>=0)$A[BA++]=213,$A[BA++]=114,$A[BA++]=(y&31)+96,$A[BA++]=h;else $A[BA++]=212,$A[BA++]=114,$A[BA++]=y;if(v)V+=H*v;if(I.length>=U)I.shift()[YX]=0;I.push(T),z(S)}},j=(T,S,v,y)=>{let h=$A,g=BA,m=$9,n=B;if($A=FN,BA=0,B=0,!$A)FN=$A=new Zj(8192);$9=$A.length-10,_(T,S,y),FN=$A;let i=BA;if($A=h,BA=g,$9=m,B=n,i>1){let p=BA+i-1;if(p>$9)P(p);let d=v+B;$A.copyWithin(d+i,d+1,BA),$A.set(FN.slice(0,i),d),BA=p}else $A[v+B]=FN[0]},k=(T)=>{let S=IDA(T,$A,B,BA,J,P,(v,y,h)=>{if(h)return Y=!0;BA=y;let g=$A;if(z(v),D(),g!==$A)return{position:BA,targetView:W0,target:$A};return BA},this);if(S===0)return w(T);BA=S}}useBuffer(A){$A=A,$A.dataView||($A.dataView=new DataView($A.buffer,$A.byteOffset,$A.byteLength)),BA=0}set position(A){BA=A}get position(){return BA}clearSharedData(){if(this.structures)this.structures=[];if(this.typedStructs)this.typedStructs=[]}}KDA=[Date,Set,Error,RegExp,ArrayBuffer,Object.getPrototypeOf(Uint8Array.prototype).constructor,DataView,Gj];Mu=[{pack(A,Q,B){let Y=A.getTime()/1000;if((this.useTimestamp32||A.getMilliseconds()===0)&&Y>=0&&Y<4294967296){let{target:J,targetView:C,position:X}=Q(6);J[X++]=214,J[X++]=255,C.setUint32(X,Y)}else if(Y>0&&Y<4294967296){let{target:J,targetView:C,position:X}=Q(10);J[X++]=215,J[X++]=255,C.setUint32(X,A.getMilliseconds()*4000000+(Y/1000/4294967296>>0)),C.setUint32(X+4,Y)}else if(isNaN(Y)){if(this.onInvalidDate)return Q(0),B(this.onInvalidDate());let{target:J,targetView:C,position:X}=Q(3);J[X++]=212,J[X++]=255,J[X++]=255}else{let{target:J,targetView:C,position:X}=Q(15);J[X++]=199,J[X++]=12,J[X++]=255,C.setUint32(X,A.getMilliseconds()*1e6),C.setBigInt64(X+4,BigInt(Math.floor(Y)))}}},{pack(A,Q,B){if(this.setAsEmptyObject)return Q(0),B({});let Y=Array.from(A),{target:J,position:C}=Q(this.moreTypes?3:0);if(this.moreTypes)J[C++]=212,J[C++]=115,J[C++]=0;B(Y)}},{pack(A,Q,B){let{target:Y,position:J}=Q(this.moreTypes?3:0);if(this.moreTypes)Y[J++]=212,Y[J++]=101,Y[J++]=0;B([A.name,A.message,A.cause])}},{pack(A,Q,B){let{target:Y,position:J}=Q(this.moreTypes?3:0);if(this.moreTypes)Y[J++]=212,Y[J++]=120,Y[J++]=0;B([A.source,A.flags])}},{pack(A,Q){if(this.moreTypes)Lu(A,16,Q);else qu(ZN?Buffer.from(A):new Uint8Array(A),Q)}},{pack(A,Q){let B=A.constructor;if(B!==VDA&&this.moreTypes)Lu(A,Nu.indexOf(B.name),Q);else qu(A,Q)}},{pack(A,Q){if(this.moreTypes)Lu(A,17,Q);else qu(ZN?Buffer.from(A):new Uint8Array(A),Q)}},{pack(A,Q){let{target:B,position:Y}=Q(1);B[Y]=193}}];function Lu(A,Q,B,Y){let J=A.byteLength;if(J+1<256){var{target:C,position:X}=B(4+J);C[X++]=199,C[X++]=J+1}else if(J+1<65536){var{target:C,position:X}=B(5+J);C[X++]=200,C[X++]=J+1>>8,C[X++]=J+1&255}else{var{target:C,position:X,targetView:G}=B(7+J);C[X++]=201,G.setUint32(X,J+1),X+=4}if(C[X++]=116,C[X++]=Q,!A.buffer)A=new Uint8Array(A);C.set(new Uint8Array(A.buffer,A.byteOffset,A.byteLength),X)}function qu(A,Q){let B=A.byteLength;var Y,J;if(B<256){var{target:Y,position:J}=Q(B+2);Y[J++]=196,Y[J++]=B}else if(B<65536){var{target:Y,position:J}=Q(B+3);Y[J++]=197,Y[J++]=B>>8,Y[J++]=B&255}else{var{target:Y,position:J,targetView:C}=Q(B+5);Y[J++]=198,C.setUint32(J,B),J+=4}Y.set(A,J)}function yZB(A,Q,B,Y){let J=A.length;switch(J){case 1:Q[B++]=212;break;case 2:Q[B++]=213;break;case 4:Q[B++]=214;break;case 8:Q[B++]=215;break;case 16:Q[B++]=216;break;default:if(J<256)Q[B++]=199,Q[B++]=J;else if(J<65536)Q[B++]=200,Q[B++]=J>>8,Q[B++]=J&255;else Q[B++]=201,Q[B++]=J>>24,Q[B++]=J>>16&255,Q[B++]=J>>8&255,Q[B++]=J&255}return Q[B++]=Y,Q.set(A,B),B+=J,B}function gZB(A,Q){let B,Y=Q.length*6,J=A.length-Y;while(B=Q.pop()){let{offset:C,id:X}=B;A.copyWithin(C+Y,C,J),Y-=6;let G=C+Y;A[G++]=214,A[G++]=105,A[G++]=X>>24,A[G++]=X>>16&255,A[G++]=X>>8&255,A[G++]=X&255,J=C}return A}function EDA(A,Q,B){if(x0.length>0){W0.setUint32(x0.position+A,BA+B-x0.position-A),x0.stringsPosition=BA-A;let Y=x0;x0=null,Q(Y[0]),Q(Y[1])}}function HDA(A,Q){return A.isCompatible=(B)=>{let Y=!B||(Q.lastNamedStructuresLength||0)===B.length;if(!Y)Q._mergeStructures(B);return Y},A}function DDA(A,Q){IDA=A,HDA=Q}var NDA=new TZ({useRecords:!1}),hZB=NDA.pack,xZB=NDA.pack;var fZB=512,bZB=1024,mZB=2048;var zu=3,_E=0,$N=2,Uj=1,wu=16,qDA=["num","object","string","ascii"];qDA[wu]="date";var dZB=[!1,!0,!0,!1,!1,!0,!0,!1],MDA;try{Function(""),MDA=!0}catch(A){}var SZ,cZB=typeof Buffer<"u",Ej,JX;try{Ej=new TextEncoder}catch(A){}var lZB=cZB?function(A,Q,B){return A.utf8Write(Q,B,A.byteLength-B)}:Ej&&Ej.encodeInto?function(A,Q,B){return Ej.encodeInto(Q,A.subarray(B)).written}:!1,lqY=Symbol("type"),pqY=Symbol("parent");DDA(zDA,rZB);function zDA(A,Q,B,Y,J,C,X,G){let W=G.typedStructs||(G.typedStructs=[]),F=Q.dataView,Z=(W.lastStringStart||100)+Y,U=Q.length-10,$=Y;if(Y>U)Q=C(Y),F=Q.dataView,Y-=B,$-=B,Z-=B,B=0,U=Q.length-10;let E,K=Z,I=W.transitions||(W.transitions=Object.create(null)),V=W.nextId||W.length,H=V<15?1:V<240?2:V<61440?3:V<15728640?4:0;if(H===0)return 0;Y+=H;let D=[],L,z=0;for(let N in A){let q=A[N],w=I[N];if(!w)I[N]=w={key:N,parent:I,enumerationOffset:0,ascii0:null,ascii8:null,num8:null,string16:null,object16:null,num32:null,float64:null,date64:null};if(Y>U)Q=C(Y),F=Q.dataView,Y-=B,$-=B,Z-=B,K-=B,B=0,U=Q.length-10;switch(typeof q){case"number":let P=q;if(V<200||!w.num64){if(P>>0===P&&P<536870912&&P>-520093696){if(P<246&&P>=0&&(w.num8&&!(V>200&&w.num32)||P<32&&!w.num32))I=w.num8||i9(w,_E,1),Q[Y++]=P;else I=w.num32||i9(w,_E,4),F.setUint32(Y,P,!0),Y+=4;break}else if(P<4294967296&&P>=-2147483648){if(F.setFloat32(Y,P,!0),dZB[Q[Y+3]>>>5]){let T;if((T=P*PZ[(Q[Y+3]&127)<<1|Q[Y+2]>>7])>>0===T){I=w.num32||i9(w,_E,4),Y+=4;break}}}}I=w.num64||i9(w,_E,8),F.setFloat64(Y,P,!0),Y+=8;break;case"string":let _=q.length;if(E=K-Z,(_<<2)+K>U)Q=C((_<<2)+K),F=Q.dataView,Y-=B,$-=B,Z-=B,K-=B,B=0,U=Q.length-10;if(_>65280+E>>2){D.push(N,q,Y-$);break}let j,k=K;if(_<64){let T,S,v;for(T=0;T<_;T++)if(S=q.charCodeAt(T),S<128)Q[K++]=S;else if(S<2048)j=!0,Q[K++]=S>>6|192,Q[K++]=S&63|128;else if((S&64512)===55296&&((v=q.charCodeAt(T+1))&64512)===56320)j=!0,S=65536+((S&1023)<<10)+(v&1023),T++,Q[K++]=S>>18|240,Q[K++]=S>>12&63|128,Q[K++]=S>>6&63|128,Q[K++]=S&63|128;else j=!0,Q[K++]=S>>12|224,Q[K++]=S>>6&63|128,Q[K++]=S&63|128}else K+=lZB(Q,q,K),j=K-k>_;if(E<160||E<246&&(w.ascii8||w.string8)){if(j){if(!(I=w.string8))if(W.length>10&&(I=w.ascii8))I.__type=$N,w.ascii8=null,w.string8=I,X(null,0,!0);else I=i9(w,$N,1)}else if(E===0&&!L){L=!0,I=w.ascii0||i9(w,zu,0);break}else if(!(I=w.ascii8)&&!(W.length>10&&(I=w.string8)))I=i9(w,zu,1);Q[Y++]=E}else I=w.string16||i9(w,$N,2),F.setUint16(Y,E,!0),Y+=2;break;case"object":if(q){if(q.constructor===Date)I=w.date64||i9(w,wu,8),F.setFloat64(Y,q.getTime(),!0),Y+=8;else D.push(N,q,z);break}else if(w=LDA(w,Y,F,-10),w)I=w,Y=SZ;else D.push(N,q,z);break;case"boolean":I=w.num8||w.ascii8||i9(w,_E,1),Q[Y++]=q?249:248;break;case"undefined":if(w=LDA(w,Y,F,-9),w)I=w,Y=SZ;else D.push(N,q,z);break;default:D.push(N,q,z)}z++}for(let N=0,q=D.length;N=16)return 0;Q[$]=M+32;break;case 2:if(M>=256)return 0;Q[$]=56,Q[$+1]=M;break;case 3:if(M>=65536)return 0;Q[$]=57,F.setUint16($+1,M,!0);break;case 4:if(M>=16777216)return 0;F.setUint32($,(M<<8)+58,!0);break}if(YZ){if(Z===K)return Y;return W.lastStringStart=Y-$,zDA(A,Q,B,$,J,C,X,G)}return K}function LDA(A,Q,B,Y){let J;if(J=A.ascii8||A.num8)return B.setInt8(Q,Y,!0),SZ=Q+1,J;if(J=A.string16||A.object16)return B.setInt16(Q,Y,!0),SZ=Q+2,J;if(J=A.num32)return B.setUint32(Q,3758096640+Y,!0),SZ=Q+4,J;if(J=A.num64)return B.setFloat64(Q,NaN,!0),B.setInt8(Q,Y),SZ=Q+8,J;SZ=Q;return}function i9(A,Q,B){let Y=qDA[Q]+(B<<3),J=A[Y]||(A[Y]=Object.create(null));return J.__type=Q,J.__size=B,J.__parent=A,J}function pZB(A){if(!(A instanceof Map))return A;let Q=A.get("typed")||[];if(Object.isFrozen(Q))Q=Q.map((J)=>J.slice(0));let B=A.get("named"),Y=Object.create(null);for(let J=0,C=Q.length;J=24)switch(J){case 24:J=A[Q++];break;case 25:J=A[Q++]+(A[Q++]<<8);break;case 26:J=A[Q++]+(A[Q++]<<8)+(A[Q++]<<16);break;case 27:J=A[Q++]+(A[Q++]<<8)+(A[Q++]<<16)+(A[Q++]<<24);break}let C=Y.typedStructs&&Y.typedStructs[J];if(!C){if(A=Uint8Array.prototype.slice.call(A,Q,B),B-=Q,Q=0,!Y.getStructures)throw Error(`Reference to shared structure ${J} without getStructures method`);if(Y._mergeStructures(Y.getStructures()),!Y.typedStructs)throw Error("Could not find any shared typed structures");if(Y.lastTypedStructuresLength=Y.typedStructs.length,C=Y.typedStructs[J],!C)throw Error("Could not find typed structure "+J)}var{construct:X,fullConstruct:G}=C;if(!X){X=C.construct=function(){},G=C.fullConstruct=function(){},G.prototype=Y.structPrototype??{};var W=X.prototype=Y.structPrototype?Object.create(Y.structPrototype):{};let Z=[],U=0,$;for(let E=0,K=C.length;E0;break;case 1:M=(q,w)=>{let P=q.bytes[w+z.offset];return P>=246?kE(P):P};break;case 2:M=(q,w)=>{let P=q.bytes,j=(P.dataView||(P.dataView=new DataView(P.buffer,P.byteOffset,P.byteLength))).getUint16(w+z.offset,!0);return j>=65280?kE(j&255):j};break;case 4:M=(q,w)=>{let P=q.bytes,j=(P.dataView||(P.dataView=new DataView(P.buffer,P.byteOffset,P.byteLength))).getUint32(w+z.offset,!0);return j>=4294967040?kE(j&255):j};break}z.getRef=M,U+=H;let N;switch(V){case zu:if($&&!$.next)$.next=z;$=z,z.multiGetCount=0,N=function(q){let{bytes:w,position:P}=q,_=U+P,j=M(q,P);if(typeof j!=="number")return j;let k,T=z.next;while(T){if(k=T.getRef(q,P),typeof k==="number")break;else k=null;T=T.next}if(k==null)k=q.bytesEnd-_;if(q.srcString)return q.srcString.slice(j,k);return XDA(w,j+_,k-j)};break;case $N:case Uj:if($&&!$.next)$.next=z;$=z,N=function(q){let w=q.position,P=U+w,_=M(q,w);if(typeof _!=="number")return _;let j=q.bytes,k,T=z.next;while(T){if(k=T.getRef(q,w),typeof k==="number")break;else k=null;T=T.next}if(k==null)k=q.bytesEnd-P;if(V===$N)return j.toString("utf8",_+P,k+P);else{JX=q;try{return Y.unpack(j,{start:_+P,end:k+P})}finally{JX=null}}};break;case _E:switch(H){case 4:N=function(q){let w=q.bytes,P=w.dataView||(w.dataView=new DataView(w.buffer,w.byteOffset,w.byteLength)),_=q.position+z.offset,j=P.getInt32(_,!0);if(j<536870912){if(j>-520093696)return j;if(j>-536870912)return kE(j&255)}let k=P.getFloat32(_,!0),T=PZ[(w[_+3]&127)<<1|w[_+2]>>7];return(T*k+(k>0?0.5:-0.5)>>0)/T};break;case 8:N=function(q){let w=q.bytes,_=(w.dataView||(w.dataView=new DataView(w.buffer,w.byteOffset,w.byteLength))).getFloat64(q.position+z.offset,!0);if(isNaN(_)){let j=w[q.position+z.offset];if(j>=246)return kE(j)}return _};break;case 1:N=function(q){let P=q.bytes[q.position+z.offset];return P<246?P:kE(P)};break}break;case wu:N=function(q){let w=q.bytes,P=w.dataView||(w.dataView=new DataView(w.buffer,w.byteOffset,w.byteLength));return new Date(P.getFloat64(q.position+z.offset,!0))};break}z.get=N}if(MDA){let E=[],K=[],I=0,V;for(let D of Z){if(Y.alwaysLazyProperty&&Y.alwaysLazyProperty(D.key)){V=!0;continue}Object.defineProperty(W,D.key,{get:nZB(D.get),enumerable:!0});let L="v"+I++;K.push(L),E.push("o["+JSON.stringify(D.key)+"]="+L+"(s)")}if(V)E.push("__proto__:this");let H=Function(...K,"var c=this;return function(s){var o=new c();"+E.join(";")+";return o;}").apply(G,Z.map((D)=>D.get));Object.defineProperty(W,"toJSON",{value(D){return H.call(this,this[Ru])}})}else Object.defineProperty(W,"toJSON",{value(E){let K={};for(let I=0,V=Z.length;I{let J=!0;if(Y instanceof Map){if((Y.get("named")||[]).length!==(Q.lastNamedStructuresLength||0))J=!1;if((Y.get("typed")||[]).length!==B)J=!1}else if(Y instanceof Array||Array.isArray(Y)){if(Y.length!==(Q.lastNamedStructuresLength||0))J=!1}if(!J)Q._mergeStructures(Y);return J},Q.lastTypedStructuresLength=Q.typedStructs&&Q.typedStructs.length,A}$DA(iZB,pZB,sZB);var X$B=process.env.MSGPACKR_NATIVE_ACCELERATION_DISABLED!==void 0&&process.env.MSGPACKR_NATIVE_ACCELERATION_DISABLED.toLowerCase()==="true";if(!X$B){let A;try{if(A=mDA(),A)CDA(A.extractStrings)}catch(Q){}}if(!Wj)console.warn("Msgpackr: msgpackr native acceleration is not enabled, using fallback implementation.");var vu=new TZ({useFloat32:WN.ALWAYS});class $Y{static _instance;static get instance(){if(!$Y._instance)$Y._instance=new $Y;return $Y._instance}_enabled=!1;_bytesSentTotal=0;_bytesReceivedTotal=0;_packetsSentTotal=0;_packetsReceivedTotal=0;_compressionCount=0;_serializationTotalMs=0;_serializationCount=0;_lastSnapshotTime=0;_lastBytesSent=0;_lastBytesReceived=0;_lastPacketsSent=0;_lastPacketsReceived=0;_connectedPlayers=0;get isEnabled(){return this._enabled}enable(){this._enabled=!0,this._lastSnapshotTime=performance.now(),this._reset()}disable(){this._enabled=!1}reset(){this._lastSnapshotTime=performance.now(),this._reset()}setConnectedPlayers(A){this._connectedPlayers=A}recordBytesSent(A){if(!this._enabled)return;this._bytesSentTotal+=A}recordBytesReceived(A){if(!this._enabled)return;this._bytesReceivedTotal+=A}recordPacketSent(){if(!this._enabled)return;this._packetsSentTotal++}recordPacketReceived(){if(!this._enabled)return;this._packetsReceivedTotal++}recordSerialization(A){if(!this._enabled)return;this._serializationTotalMs+=A,this._serializationCount++}recordCompression(){if(!this._enabled)return;this._compressionCount++}getSnapshot(){let A=performance.now(),Q=Math.max((A-this._lastSnapshotTime)/1000,0.001),B={connectedPlayers:this._connectedPlayers,bytesSentTotal:this._bytesSentTotal,bytesReceivedTotal:this._bytesReceivedTotal,bytesSentPerSecond:(this._bytesSentTotal-this._lastBytesSent)/Q,bytesReceivedPerSecond:(this._bytesReceivedTotal-this._lastBytesReceived)/Q,packetsSentPerSecond:(this._packetsSentTotal-this._lastPacketsSent)/Q,packetsReceivedPerSecond:(this._packetsReceivedTotal-this._lastPacketsReceived)/Q,avgSerializationMs:this._serializationCount>0?this._serializationTotalMs/this._serializationCount:0,compressionCount:this._compressionCount};return this._lastSnapshotTime=A,this._lastBytesSent=this._bytesSentTotal,this._lastBytesReceived=this._bytesReceivedTotal,this._lastPacketsSent=this._packetsSentTotal,this._lastPacketsReceived=this._packetsReceivedTotal,B}_reset(){this._bytesSentTotal=0,this._bytesReceivedTotal=0,this._packetsSentTotal=0,this._packetsReceivedTotal=0,this._compressionCount=0,this._serializationTotalMs=0,this._serializationCount=0,this._lastBytesSent=0,this._lastBytesReceived=0,this._lastPacketsSent=0,this._lastPacketsReceived=0}}var Qr={};iG(Qr,{zodErrorsIntegration:()=>Qc,wrapMcpServerWithSentry:()=>Xc,withScope:()=>h8,withMonitor:()=>GX,withIsolationScope:()=>BG,withActiveSpan:()=>GW,vercelAIIntegration:()=>uT,validateOpenTelemetrySetup:()=>Ar,updateSpanName:()=>ru,trpcMiddleware:()=>Yc,tediousIntegration:()=>gT,suppressTracing:()=>ON,supabaseIntegration:()=>Ac,startSpanManual:()=>jN,startSpan:()=>b8,startSession:()=>vN,startNewTrace:()=>Vd,startInactiveSpan:()=>Ed,spotlightIntegration:()=>ST,spanToTraceHeader:()=>HN,spanToJSON:()=>eA,spanToBaggageHeader:()=>Yd,setupKoaErrorHandler:()=>BNQ,setupHapiErrorHandler:()=>SDQ,setupFastifyErrorHandler:()=>cEQ,setupExpressErrorHandler:()=>oUQ,setupConnectErrorHandler:()=>wNQ,setUser:()=>wd,setTags:()=>zd,setTag:()=>Rd,setNodeAsyncContextStrategy:()=>LP,setMeasurement:()=>$d,setHttpStatus:()=>mE,setExtras:()=>qd,setExtra:()=>Md,setCurrentClient:()=>bd,setContext:()=>Ld,rewriteFramesIntegration:()=>ed,requestDataIntegration:()=>xN,redisIntegration:()=>KT,profiler:()=>Bc,prismaIntegration:()=>LT,preloadOpenTelemetry:()=>gqQ,postgresIntegration:()=>DT,parameterize:()=>dj,onUnhandledRejectionIntegration:()=>fP,onUncaughtExceptionIntegration:()=>xP,nodeContextIntegration:()=>kP,nativeNodeFetchIntegration:()=>PP,mysqlIntegration:()=>ZT,mysql2Integration:()=>UT,mongooseIntegration:()=>WT,mongoIntegration:()=>XT,modulesIntegration:()=>hP,makeNodeTransport:()=>sT,lruMemoizerIntegration:()=>CT,logger:()=>Zc,localVariablesIntegration:()=>gP,linkedErrorsIntegration:()=>hN,lastEventId:()=>jd,koaIntegration:()=>OT,knexIntegration:()=>sNQ,kafkaIntegration:()=>JT,isInitialized:()=>cZ,instrumentSupabaseClient:()=>sj,initWithoutDefaultIntegrations:()=>xqQ,initOpenTelemetry:()=>eT,init:()=>AS,inboundFiltersIntegration:()=>gN,httpIntegration:()=>RP,hapiIntegration:()=>RT,graphqlIntegration:()=>YT,getTraceMetaTags:()=>cd,getTraceData:()=>CG,getSpanStatusFromHttpCode:()=>bE,getSpanDescendants:()=>DN,getSentryRelease:()=>oT,getRootSpan:()=>K0,getIsolationScope:()=>RQ,getGlobalScope:()=>QG,getDefaultIntegrationsWithoutPerformance:()=>ts,getDefaultIntegrations:()=>es,getCurrentScope:()=>sQ,getClient:()=>gA,getAutoPerformanceIntegrations:()=>pT,getActiveSpan:()=>Q1,genericPoolIntegration:()=>hT,generateInstrumentOnce:()=>EQ,functionToStringIntegration:()=>yN,fsIntegration:()=>o4Q,flush:()=>Od,fastifyIntegration:()=>eP,extraErrorDataIntegration:()=>sd,expressIntegration:()=>lP,expressErrorHandler:()=>qn,eventFiltersIntegration:()=>lj,endSession:()=>lZ,disableAnrDetectionForCallback:()=>IUQ,defaultStackParser:()=>tT,dedupeIntegration:()=>nd,dataloaderIntegration:()=>bLQ,cron:()=>cqQ,createTransport:()=>nE,createSentryWinstonTransport:()=>ZqQ,createGetModuleFromFilename:()=>aT,continueTrace:()=>Kd,contextLinesIntegration:()=>_P,consoleLoggingIntegration:()=>Wc,consoleIntegration:()=>fN,connectIntegration:()=>TT,close:()=>Pd,childProcessIntegration:()=>dT,captureSession:()=>Sd,captureMessage:()=>iE,captureFeedback:()=>Gc,captureException:()=>jB,captureEvent:()=>kN,captureConsoleIntegration:()=>id,captureCheckIn:()=>SN,anrIntegration:()=>VUQ,amqplibIntegration:()=>bT,addIntegration:()=>yd,addEventProcessor:()=>Td,addBreadcrumb:()=>E9,SentryContextManager:()=>lT,Scope:()=>UJ,SEMANTIC_ATTRIBUTE_SENTRY_SOURCE:()=>Q0,SEMANTIC_ATTRIBUTE_SENTRY_SAMPLE_RATE:()=>g5,SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN:()=>DQ,SEMANTIC_ATTRIBUTE_SENTRY_OP:()=>YQ,SDK_VERSION:()=>l0,NodeClient:()=>Gq});var Zc={};iG(Zc,{warn:()=>uUB,trace:()=>fUB,info:()=>mUB,fmt:()=>ud,fatal:()=>cUB,error:()=>dUB,debug:()=>bUB});import{format as xUB}from"node:util";var OA=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__;var l0="9.22.0";var AQ=globalThis;function TJ(){return a7(AQ),AQ}function a7(A){let Q=A.__SENTRY__=A.__SENTRY__||{};return Q.version=Q.version||l0,Q[l0]=Q[l0]||{}}function kZ(A,Q,B=AQ){let Y=B.__SENTRY__=B.__SENTRY__||{},J=Y[l0]=Y[l0]||{};return J[A]||(J[A]=Q())}var uDA=Object.prototype.toString;function aC(A){switch(uDA.call(A)){case"[object Error]":case"[object Exception]":case"[object DOMException]":case"[object WebAssembly.Exception]":return!0;default:return t6(A,Error)}}function Ij(A,Q){return uDA.call(A)===`[object ${Q}]`}function dDA(A){return Ij(A,"ErrorEvent")}function _Z(A){return Ij(A,"String")}function vZ(A){return typeof A==="object"&&A!==null&&"__sentry_template_string__"in A&&"__sentry_template_values__"in A}function UN(A){return A===null||vZ(A)||typeof A!=="object"&&typeof A!=="function"}function k5(A){return Ij(A,"Object")}function cDA(A){return typeof Event<"u"&&t6(A,Event)}function lDA(A){return typeof Element<"u"&&t6(A,Element)}function pDA(A){return Ij(A,"RegExp")}function _5(A){return Boolean(A?.then&&typeof A.then==="function")}function iDA(A){return k5(A)&&"nativeEvent"in A&&"preventDefault"in A&&"stopPropagation"in A}function t6(A,Q){try{return A instanceof Q}catch(B){return!1}}function Hj(A){return!!(typeof A==="object"&&A!==null&&(A.__isVue||A._isVue))}var G$B=AQ,W$B=80;function nDA(A,Q={}){if(!A)return"";try{let B=A,Y=5,J=[],C=0,X=0,G=" > ",W=G.length,F,Z=Array.isArray(Q)?Q:Q.keyAttrs,U=!Array.isArray(Q)&&Q.maxStringLength||W$B;while(B&&C++1&&X+J.length*W+F.length>=U)break;J.push(F),X+=F.length,B=B.parentNode}return J.reverse().join(G)}catch(B){return""}}function F$B(A,Q){let B=A,Y=[];if(!B?.tagName)return"";if(G$B.HTMLElement){if(B instanceof HTMLElement&&B.dataset){if(B.dataset.sentryComponent)return B.dataset.sentryComponent;if(B.dataset.sentryElement)return B.dataset.sentryElement}}Y.push(B.tagName.toLowerCase());let J=Q?.length?Q.filter((X)=>B.getAttribute(X)).map((X)=>[X,B.getAttribute(X)]):null;if(J?.length)J.forEach((X)=>{Y.push(`[${X[0]}="${X[1]}"]`)});else{if(B.id)Y.push(`#${B.id}`);let X=B.className;if(X&&_Z(X)){let G=X.split(/\s+/);for(let W of G)Y.push(`.${W}`)}}let C=["aria-label","type","name","title","alt"];for(let X of C){let G=B.getAttribute(X);if(G)Y.push(`[${X}="${G}"]`)}return Y.join("")}var Z$B="Sentry Logger ",oC=["debug","info","warn","error","log","assert","trace"],vE={};function f0(A){if(!("console"in AQ))return A();let Q=AQ.console,B={},Y=Object.keys(vE);Y.forEach((J)=>{let C=vE[J];B[J]=Q[J],Q[J]=C});try{return A()}finally{Y.forEach((J)=>{Q[J]=B[J]})}}function $$B(){let A=!1,Q={enable:()=>{A=!0},disable:()=>{A=!1},isEnabled:()=>A};if(OA)oC.forEach((B)=>{Q[B]=(...Y)=>{if(A)f0(()=>{AQ.console[B](`${Z$B}[${B}]:`,...Y)})}});else oC.forEach((B)=>{Q[B]=()=>{return}});return Q}var e=kZ("logger",$$B);function n9(A,Q=0){if(typeof A!=="string"||Q===0)return A;return A.length<=Q?A:`${A.slice(0,Q)}...`}function yu(A,Q){let B=A,Y=B.length;if(Y<=150)return B;if(Q>Y)Q=Y;let J=Math.max(Q-60,0);if(J<5)J=0;let C=Math.min(J+140,Y);if(C>Y-5)C=Y;if(C===Y)J=Math.max(C-140,0);if(B=B.slice(J,C),J>0)B=`'{snip} ${B}`;if(CsDA(A,Y,B))}function gu(A,Q,B){if(!(Q in A))return;let Y=A[Q];if(typeof Y!=="function")return;let J=B(Y);if(typeof J==="function")oDA(J,Y);try{A[Q]=J}catch{OA&&e.log(`Failed to replace method "${Q}" in object`,A)}}function p0(A,Q,B){try{Object.defineProperty(A,Q,{value:B,writable:!0,configurable:!0})}catch(Y){OA&&e.log(`Failed to add non-enumerable property "${Q}" to object`,A)}}function oDA(A,Q){try{let B=Q.prototype||{};A.prototype=Q.prototype=B,p0(A,"__sentry_original__",Q)}catch(B){}}function hu(A){return A.__sentry_original__}function Dj(A){if(aC(A))return{message:A.message,name:A.name,stack:A.stack,...aDA(A)};else if(cDA(A)){let Q={type:A.type,target:rDA(A.target),currentTarget:rDA(A.currentTarget),...aDA(A)};if(typeof CustomEvent<"u"&&t6(A,CustomEvent))Q.detail=A.detail;return Q}else return A}function rDA(A){try{return lDA(A)?nDA(A):Object.prototype.toString.call(A)}catch(Q){return""}}function aDA(A){if(typeof A==="object"&&A!==null){let Q={};for(let B in A)if(Object.prototype.hasOwnProperty.call(A,B))Q[B]=A[B];return Q}else return{}}function xu(A,Q=40){let B=Object.keys(Dj(A));B.sort();let Y=B[0];if(!Y)return"[object has no keys]";if(Y.length>=Q)return n9(Y,Q);for(let J=B.length;J>0;J--){let C=B.slice(0,J).join(", ");if(C.length>Q)continue;if(J===B.length)return C;return n9(C,Q)}return""}function U$B(){let A=AQ;return A.crypto||A.msCrypto}function UY(A=U$B()){let Q=()=>Math.random()*16;try{if(A?.randomUUID)return A.randomUUID().replace(/-/g,"");if(A?.getRandomValues)Q=()=>{let B=new Uint8Array(1);return A.getRandomValues(B),B[0]}}catch(B){}return([1e7]+1000+4000+8000+100000000000).replace(/[018]/g,(B)=>(B^(Q()&15)>>B/4).toString(16))}function tDA(A){return A.exception?.values?.[0]}function e7(A){let{message:Q,event_id:B}=A;if(Q)return Q;let Y=tDA(A);if(Y){if(Y.type&&Y.value)return`${Y.type}: ${Y.value}`;return Y.type||Y.value||B||""}return B||""}function bu(A,Q,B){let Y=A.exception=A.exception||{},J=Y.values=Y.values||[],C=J[0]=J[0]||{};if(!C.value)C.value=Q||"";if(!C.type)C.type=B||"Error"}function AW(A,Q){let B=tDA(A);if(!B)return;let Y={type:"generic",handled:!0},J=B.mechanism;if(B.mechanism={...Y,...J,...Q},Q&&"data"in Q){let C={...J?.data,...Q.data};B.mechanism.data=C}}var E$B=/^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/;function fu(A){return parseInt(A||"",10)}function mu(A){let Q=A.match(E$B)||[],B=fu(Q[1]),Y=fu(Q[2]),J=fu(Q[3]);return{buildmetadata:Q[5],major:isNaN(B)?void 0:B,minor:isNaN(Y)?void 0:Y,patch:isNaN(J)?void 0:J,prerelease:Q[4]}}function Nj(A){if(K$B(A))return!0;try{p0(A,"__sentry_captured__",!0)}catch(Q){}return!1}function K$B(A){try{return A.__sentry_captured__}catch{}}var eDA=1000;function e6(){return Date.now()/eDA}function V$B(){let{performance:A}=AQ;if(!A?.now)return e6;let Q=Date.now()-A.now(),B=A.timeOrigin==null?Q:A.timeOrigin;return()=>{return(B+A.now())/eDA}}var v8=V$B();function ANA(A){let Q=v8(),B={sid:UY(),init:!0,timestamp:Q,started:Q,duration:0,status:"ok",errors:0,ignoreDuration:!1,toJSON:()=>I$B(B)};if(A)AG(B,A);return B}function AG(A,Q={}){if(Q.user){if(!A.ipAddress&&Q.user.ip_address)A.ipAddress=Q.user.ip_address;if(!A.did&&!Q.did)A.did=Q.user.id||Q.user.email||Q.user.username}if(A.timestamp=Q.timestamp||v8(),Q.abnormal_mechanism)A.abnormal_mechanism=Q.abnormal_mechanism;if(Q.ignoreDuration)A.ignoreDuration=Q.ignoreDuration;if(Q.sid)A.sid=Q.sid.length===32?Q.sid:UY();if(Q.init!==void 0)A.init=Q.init;if(!A.did&&Q.did)A.did=`${Q.did}`;if(typeof Q.started==="number")A.started=Q.started;if(A.ignoreDuration)A.duration=void 0;else if(typeof Q.duration==="number")A.duration=Q.duration;else{let B=A.timestamp-A.started;A.duration=B>=0?B:0}if(Q.release)A.release=Q.release;if(Q.environment)A.environment=Q.environment;if(!A.ipAddress&&Q.ipAddress)A.ipAddress=Q.ipAddress;if(!A.userAgent&&Q.userAgent)A.userAgent=Q.userAgent;if(typeof Q.errors==="number")A.errors=Q.errors;if(Q.status)A.status=Q.status}function QNA(A,Q){let B={};if(Q)B={status:Q};else if(A.status==="ok")B={status:"exited"};AG(A,B)}function I$B(A){return{sid:`${A.sid}`,init:A.init,started:new Date(A.started*1000).toISOString(),timestamp:new Date(A.timestamp*1000).toISOString(),status:A.status,errors:A.errors,did:typeof A.did==="number"||typeof A.did==="string"?`${A.did}`:void 0,duration:A.duration,abnormal_mechanism:A.abnormal_mechanism,attrs:{release:A.release,environment:A.environment,ip_address:A.ipAddress,user_agent:A.userAgent}}}function QW(A,Q,B=2){if(!Q||typeof Q!=="object"||B<=0)return Q;if(A&&Object.keys(Q).length===0)return A;let Y={...A};for(let J in Q)if(Object.prototype.hasOwnProperty.call(Q,J))Y[J]=QW(Y[J],Q[J],B-1);return Y}var uu="_sentrySpan";function yZ(A,Q){if(Q)p0(A,uu,Q);else delete A[uu]}function tC(A){return A[uu]}function y8(){return UY()}function g8(){return UY().substring(16)}var H$B=100;class UJ{constructor(){this._notifyingListeners=!1,this._scopeListeners=[],this._eventProcessors=[],this._breadcrumbs=[],this._attachments=[],this._user={},this._tags={},this._extra={},this._contexts={},this._sdkProcessingMetadata={},this._propagationContext={traceId:y8(),sampleRand:Math.random()}}clone(){let A=new UJ;if(A._breadcrumbs=[...this._breadcrumbs],A._tags={...this._tags},A._extra={...this._extra},A._contexts={...this._contexts},this._contexts.flags)A._contexts.flags={values:[...this._contexts.flags.values]};return A._user=this._user,A._level=this._level,A._session=this._session,A._transactionName=this._transactionName,A._fingerprint=this._fingerprint,A._eventProcessors=[...this._eventProcessors],A._attachments=[...this._attachments],A._sdkProcessingMetadata={...this._sdkProcessingMetadata},A._propagationContext={...this._propagationContext},A._client=this._client,A._lastEventId=this._lastEventId,yZ(A,tC(this)),A}setClient(A){this._client=A}setLastEventId(A){this._lastEventId=A}getClient(){return this._client}lastEventId(){return this._lastEventId}addScopeListener(A){this._scopeListeners.push(A)}addEventProcessor(A){return this._eventProcessors.push(A),this}setUser(A){if(this._user=A||{email:void 0,id:void 0,ip_address:void 0,username:void 0},this._session)AG(this._session,{user:A});return this._notifyScopeListeners(),this}getUser(){return this._user}setTags(A){return this._tags={...this._tags,...A},this._notifyScopeListeners(),this}setTag(A,Q){return this._tags={...this._tags,[A]:Q},this._notifyScopeListeners(),this}setExtras(A){return this._extra={...this._extra,...A},this._notifyScopeListeners(),this}setExtra(A,Q){return this._extra={...this._extra,[A]:Q},this._notifyScopeListeners(),this}setFingerprint(A){return this._fingerprint=A,this._notifyScopeListeners(),this}setLevel(A){return this._level=A,this._notifyScopeListeners(),this}setTransactionName(A){return this._transactionName=A,this._notifyScopeListeners(),this}setContext(A,Q){if(Q===null)delete this._contexts[A];else this._contexts[A]=Q;return this._notifyScopeListeners(),this}setSession(A){if(!A)delete this._session;else this._session=A;return this._notifyScopeListeners(),this}getSession(){return this._session}update(A){if(!A)return this;let Q=typeof A==="function"?A(this):A,B=Q instanceof UJ?Q.getScopeData():k5(Q)?A:void 0,{tags:Y,extra:J,user:C,contexts:X,level:G,fingerprint:W=[],propagationContext:F}=B||{};if(this._tags={...this._tags,...Y},this._extra={...this._extra,...J},this._contexts={...this._contexts,...X},C&&Object.keys(C).length)this._user=C;if(G)this._level=G;if(W.length)this._fingerprint=W;if(F)this._propagationContext=F;return this}clear(){return this._breadcrumbs=[],this._tags={},this._extra={},this._user={},this._contexts={},this._level=void 0,this._transactionName=void 0,this._fingerprint=void 0,this._session=void 0,yZ(this,void 0),this._attachments=[],this.setPropagationContext({traceId:y8(),sampleRand:Math.random()}),this._notifyScopeListeners(),this}addBreadcrumb(A,Q){let B=typeof Q==="number"?Q:H$B;if(B<=0)return this;let Y={timestamp:e6(),...A,message:A.message?n9(A.message,2048):A.message};if(this._breadcrumbs.push(Y),this._breadcrumbs.length>B)this._breadcrumbs=this._breadcrumbs.slice(-B),this._client?.recordDroppedEvent("buffer_overflow","log_item");return this._notifyScopeListeners(),this}getLastBreadcrumb(){return this._breadcrumbs[this._breadcrumbs.length-1]}clearBreadcrumbs(){return this._breadcrumbs=[],this._notifyScopeListeners(),this}addAttachment(A){return this._attachments.push(A),this}clearAttachments(){return this._attachments=[],this}getScopeData(){return{breadcrumbs:this._breadcrumbs,attachments:this._attachments,contexts:this._contexts,tags:this._tags,extra:this._extra,user:this._user,level:this._level,fingerprint:this._fingerprint||[],eventProcessors:this._eventProcessors,propagationContext:this._propagationContext,sdkProcessingMetadata:this._sdkProcessingMetadata,transactionName:this._transactionName,span:tC(this)}}setSDKProcessingMetadata(A){return this._sdkProcessingMetadata=QW(this._sdkProcessingMetadata,A,2),this}setPropagationContext(A){return this._propagationContext=A,this}getPropagationContext(){return this._propagationContext}captureException(A,Q){let B=Q?.event_id||UY();if(!this._client)return e.warn("No client configured on scope - will not capture exception!"),B;let Y=Error("Sentry syntheticException");return this._client.captureException(A,{originalException:A,syntheticException:Y,...Q,event_id:B},this),B}captureMessage(A,Q,B){let Y=B?.event_id||UY();if(!this._client)return e.warn("No client configured on scope - will not capture message!"),Y;let J=Error(A);return this._client.captureMessage(A,Q,{originalException:A,syntheticException:J,...B,event_id:Y},this),Y}captureEvent(A,Q){let B=Q?.event_id||UY();if(!this._client)return e.warn("No client configured on scope - will not capture event!"),B;return this._client.captureEvent(A,{...Q,event_id:B},this),B}_notifyScopeListeners(){if(!this._notifyingListeners)this._notifyingListeners=!0,this._scopeListeners.forEach((A)=>{A(this)}),this._notifyingListeners=!1}}function yE(){return kZ("defaultCurrentScope",()=>new UJ)}function v5(){return kZ("defaultIsolationScope",()=>new UJ)}class YNA{constructor(A,Q){let B;if(!A)B=new UJ;else B=A;let Y;if(!Q)Y=new UJ;else Y=Q;this._stack=[{scope:B}],this._isolationScope=Y}withScope(A){let Q=this._pushScope(),B;try{B=A(Q)}catch(Y){throw this._popScope(),Y}if(_5(B))return B.then((Y)=>{return this._popScope(),Y},(Y)=>{throw this._popScope(),Y});return this._popScope(),B}getClient(){return this.getStackTop().client}getScope(){return this.getStackTop().scope}getIsolationScope(){return this._isolationScope}getStackTop(){return this._stack[this._stack.length-1]}_pushScope(){let A=this.getScope().clone();return this._stack.push({client:this.getClient(),scope:A}),A}_popScope(){if(this._stack.length<=1)return!1;return!!this._stack.pop()}}function gE(){let A=TJ(),Q=a7(A);return Q.stack=Q.stack||new YNA(yE(),v5())}function D$B(A){return gE().withScope(A)}function N$B(A,Q){let B=gE();return B.withScope(()=>{return B.getStackTop().scope=A,Q(A)})}function BNA(A){return gE().withScope(()=>{return A(gE().getIsolationScope())})}function JNA(){return{withIsolationScope:BNA,withScope:D$B,withSetScope:N$B,withSetIsolationScope:(A,Q)=>{return BNA(Q)},getCurrentScope:()=>gE().getScope(),getIsolationScope:()=>gE().getIsolationScope()}}function du(A){let Q=TJ(),B=a7(Q);B.acs=A}function y5(A){let Q=a7(A);if(Q.acs)return Q.acs;return JNA()}function sQ(){let A=TJ();return y5(A).getCurrentScope()}function RQ(){let A=TJ();return y5(A).getIsolationScope()}function QG(){return kZ("globalScope",()=>new UJ)}function h8(...A){let Q=TJ(),B=y5(Q);if(A.length===2){let[Y,J]=A;if(!Y)return B.withScope(J);return B.withSetScope(Y,J)}return B.withScope(A[0])}function BG(...A){let Q=TJ(),B=y5(Q);if(A.length===2){let[Y,J]=A;if(!Y)return B.withIsolationScope(J);return B.withSetIsolationScope(Y,J)}return B.withIsolationScope(A[0])}function gA(){return sQ().getClient()}function hE(A){let Q=A.getPropagationContext(),{traceId:B,parentSpanId:Y,propagationSpanId:J}=Q,C={trace_id:B,span_id:J||g8()};if(Y)C.parent_span_id=Y;return C}var Q0="sentry.source",g5="sentry.sample_rate",cu="sentry.previous_trace_sample_rate",YQ="sentry.op",DQ="sentry.origin";var Lj="sentry.measurement_unit",qj="sentry.measurement_value",eC="sentry.custom_span_name",xE="sentry.profile_id",fE="sentry.exclusive_time",lu="cache.hit",pu="cache.key",iu="cache.item_size";var nu=0,BW=1,s9=2;function bE(A){if(A<400&&A>=100)return{code:1};if(A>=400&&A<500)switch(A){case 401:return{code:2,message:"unauthenticated"};case 403:return{code:2,message:"permission_denied"};case 404:return{code:2,message:"not_found"};case 409:return{code:2,message:"already_exists"};case 413:return{code:2,message:"failed_precondition"};case 429:return{code:2,message:"resource_exhausted"};case 499:return{code:2,message:"cancelled"};default:return{code:2,message:"invalid_argument"}}if(A>=500&&A<600)switch(A){case 501:return{code:2,message:"unimplemented"};case 503:return{code:2,message:"unavailable"};case 504:return{code:2,message:"deadline_exceeded"};default:return{code:2,message:"internal_error"}}return{code:2,message:"unknown_error"}}function mE(A,Q){A.setAttribute("http.response.status_code",Q);let B=bE(Q);if(B.message!=="unknown_error")A.setStatus(B)}var CNA="_sentryScope",XNA="_sentryIsolationScope";function EN(A,Q,B){if(A)p0(A,XNA,B),p0(A,CNA,Q)}function A1(A){return{scope:A[CNA],isolationScope:A[XNA]}}function x8(A){if(typeof A==="boolean")return Number(A);let Q=typeof A==="string"?parseFloat(A):A;if(typeof Q!=="number"||isNaN(Q)||Q<0||Q>1)return;return Q}var KN="sentry-",WNA=/^sentry-/,FNA=8192;function YW(A){let Q=gZ(A);if(!Q)return;let B=Object.entries(Q).reduce((Y,[J,C])=>{if(J.match(WNA)){let X=J.slice(KN.length);Y[X]=C}return Y},{});if(Object.keys(B).length>0)return B;else return}function JW(A){if(!A)return;let Q=Object.entries(A).reduce((B,[Y,J])=>{if(J)B[`${KN}${Y}`]=J;return B},{});return Mj(Q)}function gZ(A){if(!A||!_Z(A)&&!Array.isArray(A))return;if(Array.isArray(A))return A.reduce((Q,B)=>{let Y=GNA(B);return Object.entries(Y).forEach(([J,C])=>{Q[J]=C}),Q},{});return GNA(A)}function GNA(A){return A.split(",").map((Q)=>Q.split("=").map((B)=>{try{return decodeURIComponent(B.trim())}catch{return}})).reduce((Q,[B,Y])=>{if(B&&Y)Q[B]=Y;return Q},{})}function Mj(A){if(Object.keys(A).length===0)return;return Object.entries(A).reduce((Q,[B,Y],J)=>{let C=`${encodeURIComponent(B)}=${encodeURIComponent(Y)}`,X=J===0?C:`${Q},${C}`;if(X.length>FNA)return OA&&e.warn(`Not adding key: ${B} with val: ${Y} to baggage header due to exceeding baggage size limits.`),Q;else return X},"")}var VN=new RegExp("^[ \\t]*([0-9a-f]{32})?-?([0-9a-f]{16})?-?([01])?[ \\t]*$");function ZNA(A){if(!A)return;let Q=A.match(VN);if(!Q)return;let B;if(Q[3]==="1")B=!0;else if(Q[3]==="0")B=!1;return{traceId:Q[1],parentSampled:B,parentSpanId:Q[2]}}function hZ(A,Q){let B=ZNA(A),Y=YW(Q);if(!B?.traceId)return{traceId:y8(),sampleRand:Math.random()};let J=L$B(B,Y);if(Y)Y.sample_rand=J.toString();let{traceId:C,parentSpanId:X,parentSampled:G}=B;return{traceId:C,parentSpanId:X,sampled:G,dsc:Y||{},sampleRand:J}}function CW(A=y8(),Q=g8(),B){let Y="";if(B!==void 0)Y=B?"-1":"-0";return`${A}-${Q}${Y}`}function L$B(A,Q){let B=x8(Q?.sample_rand);if(B!==void 0)return B;let Y=x8(Q?.sample_rate);if(Y&&A?.parentSampled!==void 0)return A.parentSampled?Math.random()*Y:Y+Math.random()*(1-Y);else return Math.random()}var zj=0,Rj=1,$NA=!1;function ENA(A){let{spanId:Q,traceId:B}=A.spanContext(),{data:Y,op:J,parent_span_id:C,status:X,origin:G,links:W}=eA(A);return{parent_span_id:C,span_id:Q,trace_id:B,data:Y,op:J,status:X,origin:G,links:W}}function XW(A){let{spanId:Q,traceId:B,isRemote:Y}=A.spanContext(),J=Y?Q:eA(A).parent_span_id,C=A1(A).scope,X=Y?C?.getPropagationContext().propagationSpanId||g8():Q;return{parent_span_id:J,span_id:X,trace_id:B}}function HN(A){let{traceId:Q,spanId:B}=A.spanContext(),Y=XX(A);return CW(Q,B,Y)}function xZ(A){if(A&&A.length>0)return A.map(({context:{spanId:Q,traceId:B,traceFlags:Y,...J},attributes:C})=>({span_id:Q,trace_id:B,sampled:Y===Rj,attributes:C,...J}));else return}function r9(A){if(typeof A==="number")return UNA(A);if(Array.isArray(A))return A[0]+A[1]/1e9;if(A instanceof Date)return UNA(A.getTime());return v8()}function UNA(A){return A>9999999999?A/1000:A}function eA(A){if(M$B(A))return A.getSpanJSON();let{spanId:Q,traceId:B}=A.spanContext();if(q$B(A)){let{attributes:Y,startTime:J,name:C,endTime:X,status:G,links:W}=A,F="parentSpanId"in A?A.parentSpanId:("parentSpanContext"in A)?A.parentSpanContext?.spanId:void 0;return{span_id:Q,trace_id:B,data:Y,description:C,parent_span_id:F,start_timestamp:r9(J),timestamp:r9(X)||void 0,status:fZ(G),op:Y[YQ],origin:Y[DQ],links:xZ(W)}}return{span_id:Q,trace_id:B,start_timestamp:0,data:{}}}function q$B(A){let Q=A;return!!Q.attributes&&!!Q.startTime&&!!Q.name&&!!Q.endTime&&!!Q.status}function M$B(A){return typeof A.getSpanJSON==="function"}function XX(A){let{traceFlags:Q}=A.spanContext();return Q===Rj}function fZ(A){if(!A||A.code===nu)return;if(A.code===BW)return"ok";return A.message||"unknown_error"}var IN="_sentryChildSpans",su="_sentryRootSpan";function uE(A,Q){let B=A[su]||A;if(p0(Q,su,B),A[IN])A[IN].add(Q);else p0(A,IN,new Set([Q]))}function DN(A){let Q=new Set;function B(Y){if(Q.has(Y))return;else if(XX(Y)){Q.add(Y);let J=Y[IN]?Array.from(Y[IN]):[];for(let C of J)B(C)}}return B(A),Array.from(Q)}function K0(A){return A[su]||A}function Q1(){let A=TJ(),Q=y5(A);if(Q.getActiveSpan)return Q.getActiveSpan();return tC(sQ())}function NN(){if(!$NA)f0(()=>{console.warn("[Sentry] Returning null from `beforeSendSpan` is disallowed. To drop certain spans, configure the respective integrations directly.")}),$NA=!0}function ru(A,Q){A.updateName(Q),A.setAttributes({[Q0]:"custom",[eC]:Q})}var ou="?",KNA=/\(error: (.*)\)/,VNA=/captureMessage|captureException/;function jj(...A){let Q=A.sort((B,Y)=>B[0]-Y[0]).map((B)=>B[1]);return(B,Y=0,J=0)=>{let C=[],X=B.split(` +`);for(let G=Y;G1024)continue;let F=KNA.test(W)?W.replace(KNA,"$1"):W;if(F.match(/\S*Error: /))continue;for(let Z of Q){let U=Z(F);if(U){C.push(U);break}}if(C.length>=50+J)break}return INA(C.slice(J))}}function tu(A){if(Array.isArray(A))return jj(...A);return A}function INA(A){if(!A.length)return[];let Q=Array.from(A);if(/sentryWrapped/.test(wj(Q).function||""))Q.pop();if(Q.reverse(),VNA.test(wj(Q).function||"")){if(Q.pop(),VNA.test(wj(Q).function||""))Q.pop()}return Q.slice(0,50).map((B)=>({...B,filename:B.filename||wj(Q).filename,function:B.function||"?"}))}function wj(A){return A[A.length-1]||{}}var au="";function LN(A){try{if(!A||typeof A!=="function")return au;return A.name||au}catch(Q){return au}}function Oj(A){let Q=A.exception;if(Q){let B=[];try{return Q.values.forEach((Y)=>{if(Y.stacktrace.frames)B.push(...Y.stacktrace.frames)}),B}catch(Y){return}}return}var Pj={},HNA={};function dE(A,Q){Pj[A]=Pj[A]||[],Pj[A].push(Q)}function cE(A,Q){if(!HNA[A]){HNA[A]=!0;try{Q()}catch(B){OA&&e.error(`Error while instrumenting ${A}`,B)}}}function lE(A,Q){let B=A&&Pj[A];if(!B)return;for(let Y of B)try{Y(Q)}catch(J){OA&&e.error(`Error while triggering instrumentation handler. Type: ${A} -Name: ${CN(Y)} -Error:`,J)}}var Su=null;function kDA(A){yE("error",A),hE("error",MZB)}function MZB(){Su=AQ.onerror,AQ.onerror=function(A,Q,B,Y,J){if(gE("error",{column:Y,error:J,line:B,msg:A,url:Q}),Su)return Su.apply(this,arguments);return!1},AQ.onerror.__SENTRY_INSTRUMENTED__=!0}var ku=null;function _DA(A){yE("unhandledrejection",A),hE("unhandledrejection",zZB)}function zZB(){ku=AQ.onunhandledrejection,AQ.onunhandledrejection=function(A){if(gE("unhandledrejection",A),ku)return ku.apply(this,arguments);return!0},AQ.onunhandledrejection.__SENTRY_INSTRUMENTED__=!0}var vDA=!1;function yDA(){if(vDA)return;vDA=!0,kDA(_u),_DA(_u)}function _u(){let A=iC(),Q=A&&$0(A);if(Q)OA&&e.log("[Tracing] Root span: internal_error -> Global error occurred"),Q.setStatus({code:m9,message:"internal_error"})}_u.tag="sentry_tracingErrorCallback";function X9(A){if(typeof __SENTRY_TRACING__==="boolean"&&!__SENTRY_TRACING__)return!1;let Q=A||hA()?.getOptions();return!!Q&&(Q.tracesSampleRate!=null||!!Q.tracesSampler)}var xE="production";var RZB=/^o(\d+)\./,wZB=/^(?:(\w+):)\/\/(?:(\w+)(?::(\w+)?)?@)([\w.-]+)(?::(\d+))?\/(.+)/;function jZB(A){return A==="http"||A==="https"}function nC(A,Q=!1){let{host:B,path:Y,pass:J,port:C,projectId:X,protocol:G,publicKey:F}=A;return`${G}://${F}${Q&&J?`:${J}`:""}@${B}${C?`:${C}`:""}/${Y?`${Y}/`:Y}${X}`}function OZB(A){let Q=wZB.exec(A);if(!Q){h0(()=>{console.error(`Invalid Sentry Dsn: ${A}`)});return}let[B,Y,J="",C="",X="",G=""]=Q.slice(1),F="",W=G,Z=W.split("/");if(Z.length>1)F=Z.slice(0,-1).join("/"),W=Z.pop();if(W){let U=W.match(/^\d+/);if(U)W=U[0]}return hDA({host:C,pass:J,path:F,projectId:W,port:X,protocol:B,publicKey:Y})}function hDA(A){return{protocol:A.protocol,publicKey:A.publicKey||"",pass:A.pass||"",host:A.host,port:A.port||"",path:A.path||"",projectId:A.projectId}}function PZB(A){if(!OA)return!0;let{port:Q,projectId:B,protocol:Y}=A;if(["protocol","publicKey","host","projectId"].find((X)=>{if(!A[X])return e.error(`Invalid Sentry Dsn: ${X} missing`),!0;return!1}))return!1;if(!B.match(/^\d+$/))return e.error(`Invalid Sentry Dsn: Invalid projectId ${B}`),!1;if(!jZB(Y))return e.error(`Invalid Sentry Dsn: Invalid protocol ${Y}`),!1;if(Q&&isNaN(parseInt(Q,10)))return e.error(`Invalid Sentry Dsn: Invalid port ${Q}`),!1;return!0}function gDA(A){return A.match(RZB)?.[1]}function xDA(A){let Q=typeof A==="string"?OZB(A):hDA(A);if(!Q||!PZB(Q))return;return Q}var fDA="_frozenDsc";function Gj(A,Q){d0(A,fDA,Q)}function vu(A,Q){let B=Q.getOptions(),{publicKey:Y,host:J}=Q.getDsn()||{},C;if(B.orgId)C=String(B.orgId);else if(J)C=gDA(J);let X={environment:B.environment||xE,release:B.release,public_key:Y,trace_id:A,org_id:C};return Q.emit("createDsc",X),X}function rX(A,Q){let B=Q.getPropagationContext();return B.dsc||vu(B.traceId,A)}function c0(A){let Q=hA();if(!Q)return{};let B=$0(A),Y=eA(B),J=Y.data,C=B.spanContext().traceState,X=C?.get("sentry.sample_rate")??J[j5]??J[Lu];function G(K){if(typeof X==="number"||typeof X==="string")K.sample_rate=`${X}`;return K}let F=B[fDA];if(F)return G(F);let W=C?.get("sentry.dsc"),Z=W&&r7(W);if(Z)return G(Z);let U=vu(A.spanContext().traceId,Q),$=J[A0],E=Y.description;if($!=="url"&&E)U.transaction=E;if(X9())U.sampled=String(o1(B)),U.sample_rand=C?.get("sentry.sample_rand")??pC(B).scope?.getPropagationContext().sampleRand.toString();return G(U),Q.emit("createDsc",U,B),U}function yu(A){let Q=c0(A);return a7(Q)}class TZ{constructor(A={}){this._traceId=A.traceId||j8(),this._spanId=A.spanId||O8()}spanContext(){return{spanId:this._spanId,traceId:this._traceId,traceFlags:Qj}}end(A){}setAttribute(A,Q){return this}setAttributes(A){return this}setStatus(A){return this}updateName(A){return this}isRecording(){return!1}addEvent(A,Q,B){return this}addLink(A){return this}addLinks(A){return this}recordException(A,Q){}}function SZ(A,Q,B=()=>{}){let Y;try{Y=A()}catch(J){throw Q(J),B(),J}return TZB(Y,Q,B)}function TZB(A,Q,B){if(z5(A))return A.then((Y)=>{return B(),Y},(Y)=>{throw Q(Y),B(),Y});return B(),A}function XN(A){if(!OA)return;let{description:Q="< unknown name >",op:B="< unknown op >",parent_span_id:Y}=eA(A),{spanId:J}=A.spanContext(),C=o1(A),X=$0(A),G=X===A,F=`[Tracing] Starting ${C?"sampled":"unsampled"} ${G?"root ":""}span`,W=[`op: ${B}`,`name: ${Q}`,`ID: ${J}`];if(Y)W.push(`parent ID: ${Y}`);if(!G){let{op:Z,description:U}=eA(X);if(W.push(`root ID: ${X.spanContext().spanId}`),Z)W.push(`root op: ${Z}`);if(U)W.push(`root description: ${U}`)}e.log(`${F} - ${W.join(` - `)}`)}function GN(A){if(!OA)return;let{description:Q="< unknown name >",op:B="< unknown op >"}=eA(A),{spanId:Y}=A.spanContext(),C=$0(A)===A,X=`[Tracing] Finishing "${B}" ${C?"root ":""}span "${Q}" with ID ${Y}`;e.log(X)}function FN(A,Q,B){if(!X9(A))return[!1];let Y=void 0,J;if(typeof A.tracesSampler==="function")J=A.tracesSampler({...Q,inheritOrSampleWith:(G)=>{if(typeof Q.parentSampleRate==="number")return Q.parentSampleRate;if(typeof Q.parentSampled==="boolean")return Number(Q.parentSampled);return G}}),Y=!0;else if(Q.parentSampled!==void 0)J=Q.parentSampled;else if(typeof A.tracesSampleRate<"u")J=A.tracesSampleRate,Y=!0;let C=T8(J);if(C===void 0)return OA&&e.warn(`[Tracing] Discarding root span because of invalid sample rate. Sample rate must be a boolean or a number between 0 and 1. Got ${JSON.stringify(J)} of type ${JSON.stringify(typeof J)}.`),[!1];if(!C)return OA&&e.log(`[Tracing] Discarding transaction because ${typeof A.tracesSampler==="function"?"tracesSampler returned 0 or false":"a negative sampling decision was inherited or tracesSampleRate is set to 0"}`),[!1,C,Y];let X=BB)return gu(A,Q-1,B);return Y}function hu(A,Q,B=1/0,Y=1/0,J=yZB()){let[C,X]=J;if(Q==null||["boolean","string"].includes(typeof Q)||typeof Q==="number"&&Number.isFinite(Q))return Q;let G=SZB(A,Q);if(!G.startsWith("[object "))return G;if(Q.__sentry_skip_normalization__)return Q;let F=typeof Q.__sentry_override_normalization_depth__==="number"?Q.__sentry_override_normalization_depth__:B;if(F===0)return G.replace("object ","");if(C(Q))return"[Circular ~]";let W=Q;if(W&&typeof W.toJSON==="function")try{let E=W.toJSON();return hu("",E,F-1,Y,J)}catch(E){}let Z=Array.isArray(Q)?[]:{},U=0,$=aw(Q);for(let E in $){if(!Object.prototype.hasOwnProperty.call($,E))continue;if(U>=Y){Z[E]="[MaxProperties ~]";break}let K=$[E];Z[E]=hu(E,K,F-1,Y,J),U++}return X(Q),Z}function SZB(A,Q){try{if(A==="domain"&&Q&&typeof Q==="object"&&Q._events)return"[Domain]";if(A==="domainEmitter")return"[DomainEmitter]";if(typeof global<"u"&&Q===global)return"[Global]";if(typeof window<"u"&&Q===window)return"[Window]";if(typeof document<"u"&&Q===document)return"[Document]";if(rw(Q))return"[VueViewModel]";if(CDA(Q))return"[SyntheticEvent]";if(typeof Q==="number"&&!Number.isFinite(Q))return`[${Q}]`;if(typeof Q==="function")return`[Function: ${CN(Q)}]`;if(typeof Q==="symbol")return`[${String(Q)}]`;if(typeof Q==="bigint")return`[BigInt: ${String(Q)}]`;let B=kZB(Q);if(/^HTML(\w*)Element$/.test(B))return`[HTMLElement: ${B}]`;return`[object ${B}]`}catch(B){return`**non-serializable** (${B})`}}function kZB(A){let Q=Object.getPrototypeOf(A);return Q?.constructor?Q.constructor.name:"null prototype"}function _ZB(A){return~-encodeURI(A).split(/%..|./).length}function vZB(A){return _ZB(JSON.stringify(A))}function yZB(){let A=new WeakSet;function Q(Y){if(A.has(Y))return!0;return A.add(Y),!1}function B(Y){A.delete(Y)}return[Q,B]}function S8(A,Q=[]){return[A,Q]}function fu(A,Q){let[B,Y]=A;return[B,[...Y,Q]]}function Fj(A,Q){let B=A[1];for(let Y of B){let J=Y[0].type;if(Q(Y,J))return!0}return!1}function xu(A){let Q=d7(AQ);return Q.encodePolyfill?Q.encodePolyfill(A):new TextEncoder().encode(A)}function WN(A){let[Q,B]=A,Y=JSON.stringify(Q);function J(C){if(typeof Y==="string")Y=typeof C==="string"?Y+C:[xu(Y),C];else Y.push(typeof C==="string"?xu(C):C)}for(let C of B){let[X,G]=C;if(J(` +Name: ${LN(Y)} +Error:`,J)}}var eu=null;function DNA(A){dE("error",A),cE("error",z$B)}function z$B(){eu=AQ.onerror,AQ.onerror=function(A,Q,B,Y,J){if(lE("error",{column:Y,error:J,line:B,msg:A,url:Q}),eu)return eu.apply(this,arguments);return!1},AQ.onerror.__SENTRY_INSTRUMENTED__=!0}var Ad=null;function NNA(A){dE("unhandledrejection",A),cE("unhandledrejection",R$B)}function R$B(){Ad=AQ.onunhandledrejection,AQ.onunhandledrejection=function(A){if(lE("unhandledrejection",A),Ad)return Ad.apply(this,arguments);return!0},AQ.onunhandledrejection.__SENTRY_INSTRUMENTED__=!0}var LNA=!1;function qNA(){if(LNA)return;LNA=!0,DNA(Qd),NNA(Qd)}function Qd(){let A=Q1(),Q=A&&K0(A);if(Q)OA&&e.log("[Tracing] Root span: internal_error -> Global error occurred"),Q.setStatus({code:s9,message:"internal_error"})}Qd.tag="sentry_tracingErrorCallback";function U9(A){if(typeof __SENTRY_TRACING__==="boolean"&&!__SENTRY_TRACING__)return!1;let Q=A||gA()?.getOptions();return!!Q&&(Q.tracesSampleRate!=null||!!Q.tracesSampler)}var pE="production";var w$B=/^o(\d+)\./,j$B=/^(?:(\w+):)\/\/(?:(\w+)(?::(\w+)?)?@)([\w.-]+)(?::(\d+))?\/(.+)/;function O$B(A){return A==="http"||A==="https"}function B1(A,Q=!1){let{host:B,path:Y,pass:J,port:C,projectId:X,protocol:G,publicKey:W}=A;return`${G}://${W}${Q&&J?`:${J}`:""}@${B}${C?`:${C}`:""}/${Y?`${Y}/`:Y}${X}`}function P$B(A){let Q=j$B.exec(A);if(!Q){f0(()=>{console.error(`Invalid Sentry Dsn: ${A}`)});return}let[B,Y,J="",C="",X="",G=""]=Q.slice(1),W="",F=G,Z=F.split("/");if(Z.length>1)W=Z.slice(0,-1).join("/"),F=Z.pop();if(F){let U=F.match(/^\d+/);if(U)F=U[0]}return MNA({host:C,pass:J,path:W,projectId:F,port:X,protocol:B,publicKey:Y})}function MNA(A){return{protocol:A.protocol,publicKey:A.publicKey||"",pass:A.pass||"",host:A.host,port:A.port||"",path:A.path||"",projectId:A.projectId}}function T$B(A){if(!OA)return!0;let{port:Q,projectId:B,protocol:Y}=A;if(["protocol","publicKey","host","projectId"].find((X)=>{if(!A[X])return e.error(`Invalid Sentry Dsn: ${X} missing`),!0;return!1}))return!1;if(!B.match(/^\d+$/))return e.error(`Invalid Sentry Dsn: Invalid projectId ${B}`),!1;if(!O$B(Y))return e.error(`Invalid Sentry Dsn: Invalid protocol ${Y}`),!1;if(Q&&isNaN(parseInt(Q,10)))return e.error(`Invalid Sentry Dsn: Invalid port ${Q}`),!1;return!0}function zNA(A){return A.match(w$B)?.[1]}function RNA(A){let Q=typeof A==="string"?P$B(A):MNA(A);if(!Q||!T$B(Q))return;return Q}var wNA="_frozenDsc";function Tj(A,Q){p0(A,wNA,Q)}function Bd(A,Q){let B=Q.getOptions(),{publicKey:Y,host:J}=Q.getDsn()||{},C;if(B.orgId)C=String(B.orgId);else if(J)C=zNA(J);let X={environment:B.environment||pE,release:B.release,public_key:Y,trace_id:A,org_id:C};return Q.emit("createDsc",X),X}function YG(A,Q){let B=Q.getPropagationContext();return B.dsc||Bd(B.traceId,A)}function i0(A){let Q=gA();if(!Q)return{};let B=K0(A),Y=eA(B),J=Y.data,C=B.spanContext().traceState,X=C?.get("sentry.sample_rate")??J[g5]??J[cu];function G(K){if(typeof X==="number"||typeof X==="string")K.sample_rate=`${X}`;return K}let W=B[wNA];if(W)return G(W);let F=C?.get("sentry.dsc"),Z=F&&YW(F);if(Z)return G(Z);let U=Bd(A.spanContext().traceId,Q),$=J[Q0],E=Y.description;if($!=="url"&&E)U.transaction=E;if(U9())U.sampled=String(XX(B)),U.sample_rand=C?.get("sentry.sample_rand")??A1(B).scope?.getPropagationContext().sampleRand.toString();return G(U),Q.emit("createDsc",U,B),U}function Yd(A){let Q=i0(A);return JW(Q)}class bZ{constructor(A={}){this._traceId=A.traceId||y8(),this._spanId=A.spanId||g8()}spanContext(){return{spanId:this._spanId,traceId:this._traceId,traceFlags:zj}}end(A){}setAttribute(A,Q){return this}setAttributes(A){return this}setStatus(A){return this}updateName(A){return this}isRecording(){return!1}addEvent(A,Q,B){return this}addLink(A){return this}addLinks(A){return this}recordException(A,Q){}}function mZ(A,Q,B=()=>{}){let Y;try{Y=A()}catch(J){throw Q(J),B(),J}return S$B(Y,Q,B)}function S$B(A,Q,B){if(_5(A))return A.then((Y)=>{return B(),Y},(Y)=>{throw Q(Y),B(),Y});return B(),A}function qN(A){if(!OA)return;let{description:Q="< unknown name >",op:B="< unknown op >",parent_span_id:Y}=eA(A),{spanId:J}=A.spanContext(),C=XX(A),X=K0(A),G=X===A,W=`[Tracing] Starting ${C?"sampled":"unsampled"} ${G?"root ":""}span`,F=[`op: ${B}`,`name: ${Q}`,`ID: ${J}`];if(Y)F.push(`parent ID: ${Y}`);if(!G){let{op:Z,description:U}=eA(X);if(F.push(`root ID: ${X.spanContext().spanId}`),Z)F.push(`root op: ${Z}`);if(U)F.push(`root description: ${U}`)}e.log(`${W} + ${F.join(` + `)}`)}function MN(A){if(!OA)return;let{description:Q="< unknown name >",op:B="< unknown op >"}=eA(A),{spanId:Y}=A.spanContext(),C=K0(A)===A,X=`[Tracing] Finishing "${B}" ${C?"root ":""}span "${Q}" with ID ${Y}`;e.log(X)}function zN(A,Q,B){if(!U9(A))return[!1];let Y=void 0,J;if(typeof A.tracesSampler==="function")J=A.tracesSampler({...Q,inheritOrSampleWith:(G)=>{if(typeof Q.parentSampleRate==="number")return Q.parentSampleRate;if(typeof Q.parentSampled==="boolean")return Number(Q.parentSampled);return G}}),Y=!0;else if(Q.parentSampled!==void 0)J=Q.parentSampled;else if(typeof A.tracesSampleRate<"u")J=A.tracesSampleRate,Y=!0;let C=x8(J);if(C===void 0)return OA&&e.warn(`[Tracing] Discarding root span because of invalid sample rate. Sample rate must be a boolean or a number between 0 and 1. Got ${JSON.stringify(J)} of type ${JSON.stringify(typeof J)}.`),[!1];if(!C)return OA&&e.log(`[Tracing] Discarding transaction because ${typeof A.tracesSampler==="function"?"tracesSampler returned 0 or false":"a negative sampling decision was inherited or tracesSampleRate is set to 0"}`),[!1,C,Y];let X=BB)return Cd(A,Q-1,B);return Y}function Jd(A,Q,B=1/0,Y=1/0,J=g$B()){let[C,X]=J;if(Q==null||["boolean","string"].includes(typeof Q)||typeof Q==="number"&&Number.isFinite(Q))return Q;let G=k$B(A,Q);if(!G.startsWith("[object "))return G;if(Q.__sentry_skip_normalization__)return Q;let W=typeof Q.__sentry_override_normalization_depth__==="number"?Q.__sentry_override_normalization_depth__:B;if(W===0)return G.replace("object ","");if(C(Q))return"[Circular ~]";let F=Q;if(F&&typeof F.toJSON==="function")try{let E=F.toJSON();return Jd("",E,W-1,Y,J)}catch(E){}let Z=Array.isArray(Q)?[]:{},U=0,$=Dj(Q);for(let E in $){if(!Object.prototype.hasOwnProperty.call($,E))continue;if(U>=Y){Z[E]="[MaxProperties ~]";break}let K=$[E];Z[E]=Jd(E,K,W-1,Y,J),U++}return X(Q),Z}function k$B(A,Q){try{if(A==="domain"&&Q&&typeof Q==="object"&&Q._events)return"[Domain]";if(A==="domainEmitter")return"[DomainEmitter]";if(typeof global<"u"&&Q===global)return"[Global]";if(typeof window<"u"&&Q===window)return"[Window]";if(typeof document<"u"&&Q===document)return"[Document]";if(Hj(Q))return"[VueViewModel]";if(iDA(Q))return"[SyntheticEvent]";if(typeof Q==="number"&&!Number.isFinite(Q))return`[${Q}]`;if(typeof Q==="function")return`[Function: ${LN(Q)}]`;if(typeof Q==="symbol")return`[${String(Q)}]`;if(typeof Q==="bigint")return`[BigInt: ${String(Q)}]`;let B=_$B(Q);if(/^HTML(\w*)Element$/.test(B))return`[HTMLElement: ${B}]`;return`[object ${B}]`}catch(B){return`**non-serializable** (${B})`}}function _$B(A){let Q=Object.getPrototypeOf(A);return Q?.constructor?Q.constructor.name:"null prototype"}function v$B(A){return~-encodeURI(A).split(/%..|./).length}function y$B(A){return v$B(JSON.stringify(A))}function g$B(){let A=new WeakSet;function Q(Y){if(A.has(Y))return!0;return A.add(Y),!1}function B(Y){A.delete(Y)}return[Q,B]}function f8(A,Q=[]){return[A,Q]}function Gd(A,Q){let[B,Y]=A;return[B,[...Y,Q]]}function Sj(A,Q){let B=A[1];for(let Y of B){let J=Y[0].type;if(Q(Y,J))return!0}return!1}function Xd(A){let Q=a7(AQ);return Q.encodePolyfill?Q.encodePolyfill(A):new TextEncoder().encode(A)}function RN(A){let[Q,B]=A,Y=JSON.stringify(Q);function J(C){if(typeof Y==="string")Y=typeof C==="string"?Y+C:[Xd(Y),C];else Y.push(typeof C==="string"?Xd(C):C)}for(let C of B){let[X,G]=C;if(J(` ${JSON.stringify(X)} -`),typeof G==="string"||G instanceof Uint8Array)J(G);else{let F;try{F=JSON.stringify(G)}catch(W){F=JSON.stringify(wJ(G))}J(F)}}return typeof Y==="string"?Y:hZB(Y)}function hZB(A){let Q=A.reduce((J,C)=>J+C.length,0),B=new Uint8Array(Q),Y=0;for(let J of A)B.set(J,Y),Y+=J.length;return B}function bu(A){return[{type:"span"},A]}function mu(A){let Q=typeof A.data==="string"?xu(A.data):A.data;return[{type:"attachment",length:Q.length,filename:A.filename,content_type:A.contentType,attachment_type:A.attachmentType},Q]}var gZB={session:"session",sessions:"session",attachment:"attachment",transaction:"transaction",event:"error",client_report:"internal",user_report:"default",profile:"profile",profile_chunk:"profile",replay_event:"replay",replay_recording:"replay",check_in:"monitor",feedback:"feedback",span:"span",raw_security:"security",log:"log_item"};function Wj(A){return gZB[A]}function Zj(A){if(!A?.sdk)return;let{name:Q,version:B}=A.sdk;return{name:Q,version:B}}function uu(A,Q,B,Y){let J=A.sdkProcessingMetadata?.dynamicSamplingContext;return{event_id:A.event_id,sent_at:new Date().toISOString(),...Q&&{sdk:Q},...!!B&&Y&&{dsn:nC(Y)},...J&&{trace:J}}}function xZB(A,Q){if(!Q)return A;return A.sdk=A.sdk||{},A.sdk.name=A.sdk.name||Q.name,A.sdk.version=A.sdk.version||Q.version,A.sdk.integrations=[...A.sdk.integrations||[],...Q.integrations||[]],A.sdk.packages=[...A.sdk.packages||[],...Q.packages||[]],A}function bDA(A,Q,B,Y){let J=Zj(B),C={sent_at:new Date().toISOString(),...J&&{sdk:J},...!!Y&&Q&&{dsn:nC(Q)}},X="aggregates"in A?[{type:"sessions"},A]:[{type:"session"},A.toJSON()];return S8(C,[X])}function mDA(A,Q,B,Y){let J=Zj(B),C=A.type&&A.type!=="replay_event"?A.type:"event";xZB(A,B?.sdk);let X=uu(A,J,Y,Q);return delete A.sdkProcessingMetadata,S8(X,[[{type:C},A]])}function uDA(A,Q){function B(Z){return!!Z.trace_id&&!!Z.public_key}let Y=c0(A[0]),J=Q?.getDsn(),C=Q?.getOptions().tunnel,X={sent_at:new Date().toISOString(),...B(Y)&&{trace:Y},...!!C&&J&&{dsn:nC(J)}},G=Q?.getOptions().beforeSendSpan,F=G?(Z)=>{let U=eA(Z),$=G(U);if(!$)return JN(),U;return $}:eA,W=[];for(let Z of A){let U=F(Z);if(U)W.push(bu(U))}return S8(X,W)}function du(A,Q,B,Y=iC()){let J=Y&&$0(Y);if(J)OA&&e.log(`[Measurement] Setting measurement on root span: ${A} = ${Q} ${B}`),J.addEvent(A,{[ew]:Q,[tw]:B})}function kZ(A){if(!A||A.length===0)return;let Q={};return A.forEach((B)=>{let Y=B.attributes||{},J=Y[tw],C=Y[ew];if(typeof J==="string"&&typeof C==="number")Q[B.name]={value:C,unit:J}}),Q}var dDA=1000;class ZN{constructor(A={}){if(this._traceId=A.traceId||j8(),this._spanId=A.spanId||O8(),this._startTime=A.startTimestamp||w8(),this._links=A.links,this._attributes={},this.setAttributes({[DQ]:"manual",[YQ]:A.op,...A.attributes}),this._name=A.name,A.parentSpanId)this._parentSpanId=A.parentSpanId;if("sampled"in A)this._sampled=A.sampled;if(A.endTimestamp)this._endTime=A.endTimestamp;if(this._events=[],this._isStandaloneSpan=A.isStandalone,this._endTime)this._onSpanEnded()}addLink(A){if(this._links)this._links.push(A);else this._links=[A];return this}addLinks(A){if(this._links)this._links.push(...A);else this._links=A;return this}recordException(A,Q){}spanContext(){let{_spanId:A,_traceId:Q,_sampled:B}=this;return{spanId:A,traceId:Q,traceFlags:B?Bj:Qj}}setAttribute(A,Q){if(Q===void 0)delete this._attributes[A];else this._attributes[A]=Q;return this}setAttributes(A){return Object.keys(A).forEach((Q)=>this.setAttribute(Q,A[Q])),this}updateStartTime(A){this._startTime=u9(A)}setStatus(A){return this._status=A,this}updateName(A){return this._name=A,this.setAttribute(A0,"custom"),this}end(A){if(this._endTime)return;this._endTime=u9(A),GN(this),this._onSpanEnded()}getSpanJSON(){return{data:this._attributes,description:this._name,op:this._attributes[YQ],parent_span_id:this._parentSpanId,span_id:this._spanId,start_timestamp:this._startTime,status:PZ(this._status),timestamp:this._endTime,trace_id:this._traceId,origin:this._attributes[DQ],profile_id:this._attributes[TE],exclusive_time:this._attributes[SE],measurements:kZ(this._events),is_segment:this._isStandaloneSpan&&$0(this)===this||void 0,segment_id:this._isStandaloneSpan?$0(this).spanContext().spanId:void 0,links:OZ(this._links)}}isRecording(){return!this._endTime&&!!this._sampled}addEvent(A,Q,B){OA&&e.log("[Tracing] Adding an event to span:",A);let Y=cDA(Q)?Q:B||w8(),J=cDA(Q)?{}:Q||{},C={name:A,time:u9(Y),attributes:J};return this._events.push(C),this}isStandaloneSpan(){return!!this._isStandaloneSpan}_onSpanEnded(){let A=hA();if(A)A.emit("spanEnd",this);if(!(this._isStandaloneSpan||this===$0(this)))return;if(this._isStandaloneSpan){if(this._sampled)bZB(uDA([this],A));else if(OA&&e.log("[Tracing] Discarding standalone span because its trace was not chosen to be sampled."),A)A.recordDroppedEvent("sample_rate","span");return}let B=this._convertSpanToTransaction();if(B)(pC(this).scope||sQ()).captureEvent(B)}_convertSpanToTransaction(){if(!lDA(eA(this)))return;if(!this._name)OA&&e.warn("Transaction has no name, falling back to ``."),this._name="";let{scope:A,isolationScope:Q}=pC(this),B=A?.getScopeData().sdkProcessingMetadata?.normalizedRequest;if(this._sampled!==!0)return;let J=YN(this).filter((W)=>W!==this&&!fZB(W)).map((W)=>eA(W)).filter(lDA),C=this._attributes[A0];delete this._attributes[lC],J.forEach((W)=>{delete W.data[lC]});let X={contexts:{trace:jDA(this)},spans:J.length>dDA?J.sort((W,Z)=>W.start_timestamp-Z.start_timestamp).slice(0,dDA):J,start_timestamp:this._startTime,timestamp:this._endTime,transaction:this._name,type:"transaction",sdkProcessingMetadata:{capturedSpanScope:A,capturedSpanIsolationScope:Q,dynamicSamplingContext:c0(this)},request:B,...C&&{transaction_info:{source:C}}},G=kZ(this._events);if(G&&Object.keys(G).length)OA&&e.log("[Measurements] Adding measurements to transaction event",JSON.stringify(G,void 0,2)),X.measurements=G;return X}}function cDA(A){return A&&typeof A==="number"||A instanceof Date||Array.isArray(A)}function lDA(A){return!!A.start_timestamp&&!!A.timestamp&&!!A.span_id&&!!A.trace_id}function fZB(A){return A instanceof ZN&&A.isStandaloneSpan()}function bZB(A){let Q=hA();if(!Q)return;let B=A[1];if(!B||B.length===0){Q.recordDroppedEvent("before_send","span");return}Q.sendEnvelope(A)}var cu="__SENTRY_SUPPRESS_TRACING__";function k8(A,Q){let B=EN();if(B.startSpan)return B.startSpan(A,Q);let Y=su(A),{forceTransaction:J,parentSpan:C,scope:X}=A,G=X?.clone();return P8(G,()=>{return iDA(C)(()=>{let W=sQ(),Z=ru(W),$=A.onlyIfParent&&!Z?new TZ:nu({parentSpan:Z,spanArguments:Y,forceTransaction:J,scope:W});return RZ(W,$),SZ(()=>Q($),()=>{let{status:E}=eA($);if($.isRecording()&&(!E||E==="ok"))$.setStatus({code:m9,message:"internal_error"})},()=>{$.end()})})})}function $N(A,Q){let B=EN();if(B.startSpanManual)return B.startSpanManual(A,Q);let Y=su(A),{forceTransaction:J,parentSpan:C,scope:X}=A,G=X?.clone();return P8(G,()=>{return iDA(C)(()=>{let W=sQ(),Z=ru(W),$=A.onlyIfParent&&!Z?new TZ:nu({parentSpan:Z,spanArguments:Y,forceTransaction:J,scope:W});return RZ(W,$),SZ(()=>Q($,()=>$.end()),()=>{let{status:E}=eA($);if($.isRecording()&&(!E||E==="ok"))$.setStatus({code:m9,message:"internal_error"})})})})}function lu(A){let Q=EN();if(Q.startInactiveSpan)return Q.startInactiveSpan(A);let B=su(A),{forceTransaction:Y,parentSpan:J}=A;return(A.scope?(X)=>P8(A.scope,X):J!==void 0?(X)=>e7(J,X):(X)=>X())(()=>{let X=sQ(),G=ru(X);if(A.onlyIfParent&&!G)return new TZ;return nu({parentSpan:G,spanArguments:B,forceTransaction:Y,scope:X})})}var pu=(A,Q)=>{let B=RJ(),Y=w5(B);if(Y.continueTrace)return Y.continueTrace(A,Q);let{sentryTrace:J,baggage:C}=A;return P8((X)=>{let G=jZ(J,C);return X.setPropagationContext(G),Q()})};function e7(A,Q){let B=EN();if(B.withActiveSpan)return B.withActiveSpan(A,Q);return P8((Y)=>{return RZ(Y,A||void 0),Q(Y)})}function UN(A){let Q=EN();if(Q.suppressTracing)return Q.suppressTracing(A);return P8((B)=>{return B.setSDKProcessingMetadata({[cu]:!0}),A()})}function iu(A){return P8((Q)=>{return Q.setPropagationContext({traceId:j8(),sampleRand:Math.random()}),OA&&e.info(`Starting a new trace with id ${Q.getPropagationContext().traceId}`),e7(null,A)})}function nu({parentSpan:A,spanArguments:Q,forceTransaction:B,scope:Y}){if(!X9()){let X=new TZ;if(B||!A){let G={sampled:"false",sample_rate:"0",transaction:Q.name,...c0(X)};Gj(X,G)}return X}let J=RQ(),C;if(A&&!B)C=mZB(A,Y,Q),vE(A,C);else if(A){let X=c0(A),{traceId:G,spanId:F}=A.spanContext(),W=o1(A);C=pDA({traceId:G,parentSpanId:F,...Q},Y,W),Gj(C,X)}else{let{traceId:X,dsc:G,parentSpanId:F,sampled:W}={...J.getPropagationContext(),...Y.getPropagationContext()};if(C=pDA({traceId:X,parentSpanId:F,...Q},Y,W),G)Gj(C,G)}return XN(C),tD(C,Y,J),C}function su(A){let B={isStandalone:(A.experimental||{}).standalone,...A};if(A.startTime){let Y={...B};return Y.startTimestamp=u9(A.startTime),delete Y.startTime,Y}return B}function EN(){let A=RJ();return w5(A)}function pDA(A,Q,B){let Y=hA(),J=Y?.getOptions()||{},{name:C=""}=A,X={spanAttributes:{...A.attributes},spanName:C,parentSampled:B};Y?.emit("beforeSampling",X,{decision:!1});let G=X.parentSampled??B,F=X.spanAttributes,W=Q.getPropagationContext(),[Z,U,$]=Q.getScopeData().sdkProcessingMetadata[cu]?[!1]:FN(J,{name:C,parentSampled:G,attributes:F,parentSampleRate:T8(W.dsc?.sample_rate)},W.sampleRand),E=new ZN({...A,attributes:{[A0]:"custom",[j5]:U!==void 0&&$?U:void 0,...F},sampled:Z});if(!Z&&Y)OA&&e.log("[Tracing] Discarding root span because its trace was not chosen to be sampled."),Y.recordDroppedEvent("sample_rate","transaction");if(Y)Y.emit("spanStart",E);return E}function mZB(A,Q,B){let{spanId:Y,traceId:J}=A.spanContext(),C=Q.getScopeData().sdkProcessingMetadata[cu]?!1:o1(A),X=C?new ZN({...B,parentSpanId:Y,traceId:J,sampled:C}):new TZ({traceId:J});vE(A,X);let G=hA();if(G){if(G.emit("spanStart",X),B.endTimestamp)G.emit("spanEnd",X)}return X}function ru(A){let Q=cC(A);if(!Q)return;let B=hA();if((B?B.getOptions():{}).parentSpanIsAlwaysRootSpan)return $0(Q);return Q}function iDA(A){return A!==void 0?(Q)=>{return e7(A,Q)}:(Q)=>Q()}var aX;(function(A){A[A.PENDING=0]="PENDING";let B=1;A[A.RESOLVED=B]="RESOLVED";let Y=2;A[A.REJECTED=Y]="REJECTED"})(aX||(aX={}));function rC(A){return new sC((Q)=>{Q(A)})}function $j(A){return new sC((Q,B)=>{B(A)})}class sC{constructor(A){this._state=aX.PENDING,this._handlers=[],this._runExecutor(A)}then(A,Q){return new sC((B,Y)=>{this._handlers.push([!1,(J)=>{if(!A)B(J);else try{B(A(J))}catch(C){Y(C)}},(J)=>{if(!Q)Y(J);else try{B(Q(J))}catch(C){Y(C)}}]),this._executeHandlers()})}catch(A){return this.then((Q)=>Q,A)}finally(A){return new sC((Q,B)=>{let Y,J;return this.then((C)=>{if(J=!1,Y=C,A)A()},(C)=>{if(J=!0,Y=C,A)A()}).then(()=>{if(J){B(Y);return}Q(Y)})})}_executeHandlers(){if(this._state===aX.PENDING)return;let A=this._handlers.slice();this._handlers=[],A.forEach((Q)=>{if(Q[0])return;if(this._state===aX.RESOLVED)Q[1](this._value);if(this._state===aX.REJECTED)Q[2](this._value);Q[0]=!0})}_runExecutor(A){let Q=(J,C)=>{if(this._state!==aX.PENDING)return;if(z5(C)){C.then(B,Y);return}this._state=J,this._value=C,this._executeHandlers()},B=(J)=>{Q(aX.RESOLVED,J)},Y=(J)=>{Q(aX.REJECTED,J)};try{A(B,Y)}catch(J){Y(J)}}}function Uj(A,Q,B,Y=0){return new sC((J,C)=>{let X=A[Y];if(Q===null||typeof X!=="function")J(Q);else{let G=X({...Q},B);if(OA&&X.id&&G===null&&e.log(`Event processor "${X.id}" dropped event`),z5(G))G.then((F)=>Uj(A,F,B,Y+1).then(J)).then(null,C);else Uj(A,G,B,Y+1).then(J).then(null,C)}})}var Ej,nDA,Kj;function KN(A){let Q=AQ._sentryDebugIds;if(!Q)return{};let B=Object.keys(Q);if(Kj&&B.length===nDA)return Kj;return nDA=B.length,Kj=B.reduce((Y,J)=>{if(!Ej)Ej={};let C=Ej[J];if(C)Y[C[0]]=C[1];else{let X=A(J);for(let G=X.length-1;G>=0;G--){let W=X[G]?.filename,Z=Q[J];if(W&&Z){Y[W]=Z,Ej[J]=[W,Z];break}}}return Y},{}),Kj}function au(A,Q){let{fingerprint:B,span:Y,breadcrumbs:J,sdkProcessingMetadata:C}=Q;if(uZB(A,Q),Y)lZB(A,Y);pZB(A,B),dZB(A,J),cZB(A,C)}function _Z(A,Q){let{extra:B,tags:Y,user:J,contexts:C,level:X,sdkProcessingMetadata:G,breadcrumbs:F,fingerprint:W,eventProcessors:Z,attachments:U,propagationContext:$,transactionName:E,span:K}=Q;if(Vj(A,"extra",B),Vj(A,"tags",Y),Vj(A,"user",J),Vj(A,"contexts",C),A.sdkProcessingMetadata=n7(A.sdkProcessingMetadata,G,2),X)A.level=X;if(E)A.transactionName=E;if(K)A.span=K;if(F.length)A.breadcrumbs=[...A.breadcrumbs,...F];if(W.length)A.fingerprint=[...A.fingerprint,...W];if(Z.length)A.eventProcessors=[...A.eventProcessors,...Z];if(U.length)A.attachments=[...A.attachments,...U];A.propagationContext={...A.propagationContext,...$}}function Vj(A,Q,B){A[Q]=n7(A[Q],B,1)}function uZB(A,Q){let{extra:B,tags:Y,user:J,contexts:C,level:X,transactionName:G}=Q;if(Object.keys(B).length)A.extra={...B,...A.extra};if(Object.keys(Y).length)A.tags={...Y,...A.tags};if(Object.keys(J).length)A.user={...J,...A.user};if(Object.keys(C).length)A.contexts={...C,...A.contexts};if(X)A.level=X;if(G&&A.type!=="transaction")A.transaction=G}function dZB(A,Q){let B=[...A.breadcrumbs||[],...Q];A.breadcrumbs=B.length?B:void 0}function cZB(A,Q){A.sdkProcessingMetadata={...A.sdkProcessingMetadata,...Q}}function lZB(A,Q){A.contexts={trace:t7(Q),...A.contexts},A.sdkProcessingMetadata={dynamicSamplingContext:c0(Q),...A.sdkProcessingMetadata};let B=$0(Q),Y=eA(B).description;if(Y&&!A.transaction&&A.type==="transaction")A.transaction=Y}function pZB(A,Q){if(A.fingerprint=A.fingerprint?Array.isArray(A.fingerprint)?A.fingerprint:[A.fingerprint]:[],Q)A.fingerprint=A.fingerprint.concat(Q);if(!A.fingerprint.length)delete A.fingerprint}function sDA(A,Q,B,Y,J,C){let{normalizeDepth:X=3,normalizeMaxBreadth:G=1000}=A,F={...Q,event_id:Q.event_id||B.event_id||FY(),timestamp:Q.timestamp||pX()},W=B.integrations||A.integrations.map((V)=>V.name);if(iZB(F,A),rZB(F,W),J)J.emit("applyFrameMetadata",Q);if(Q.type===void 0)nZB(F,A.stackParser);let Z=oZB(Y,B.captureContext);if(B.mechanism)i7(F,B.mechanism);let U=J?J.getEventProcessors():[],$=nX().getScopeData();if(C){let V=C.getScopeData();_Z($,V)}if(Z){let V=Z.getScopeData();_Z($,V)}let E=[...B.attachments||[],...$.attachments];if(E.length)B.attachments=E;au(F,$);let K=[...U,...$.eventProcessors];return Uj(K,F,B).then((V)=>{if(V)sZB(V);if(typeof X==="number"&&X>0)return aZB(V,X,G);return V})}function iZB(A,Q){let{environment:B,release:Y,dist:J,maxValueLength:C=250}=Q;if(A.environment=A.environment||B||xE,!A.release&&Y)A.release=Y;if(!A.dist&&J)A.dist=J;let X=A.request;if(X?.url)X.url=b9(X.url,C)}function nZB(A,Q){let B=KN(Q);A.exception?.values?.forEach((Y)=>{Y.stacktrace?.frames?.forEach((J)=>{if(J.filename)J.debug_id=B[J.filename]})})}function sZB(A){let Q={};if(A.exception?.values?.forEach((Y)=>{Y.stacktrace?.frames?.forEach((J)=>{if(J.debug_id){if(J.abs_path)Q[J.abs_path]=J.debug_id;else if(J.filename)Q[J.filename]=J.debug_id;delete J.debug_id}})}),Object.keys(Q).length===0)return;A.debug_meta=A.debug_meta||{},A.debug_meta.images=A.debug_meta.images||[];let B=A.debug_meta.images;Object.entries(Q).forEach(([Y,J])=>{B.push({type:"sourcemap",code_file:Y,debug_id:J})})}function rZB(A,Q){if(Q.length>0)A.sdk=A.sdk||{},A.sdk.integrations=[...A.sdk.integrations||[],...Q]}function aZB(A,Q,B){if(!A)return null;let Y={...A,...A.breadcrumbs&&{breadcrumbs:A.breadcrumbs.map((J)=>({...J,...J.data&&{data:wJ(J.data,Q,B)}}))},...A.user&&{user:wJ(A.user,Q,B)},...A.contexts&&{contexts:wJ(A.contexts,Q,B)},...A.extra&&{extra:wJ(A.extra,Q,B)}};if(A.contexts?.trace&&Y.contexts){if(Y.contexts.trace=A.contexts.trace,A.contexts.trace.data)Y.contexts.trace.data=wJ(A.contexts.trace.data,Q,B)}if(A.spans)Y.spans=A.spans.map((J)=>{return{...J,...J.data&&{data:wJ(J.data,Q,B)}}});if(A.contexts?.flags&&Y.contexts)Y.contexts.flags=wJ(A.contexts.flags,3,B);return Y}function oZB(A,Q){if(!Q)return A;let B=A?A.clone():new GJ;return B.update(Q),B}function rDA(A){if(!A)return;if(tZB(A))return{captureContext:A};if(A$B(A))return{captureContext:A};return A}function tZB(A){return A instanceof GJ||typeof A==="function"}var eZB=["user","level","extra","contexts","tags","fingerprint","propagationContext"];function A$B(A){return Object.keys(A).some((Q)=>eZB.includes(Q))}function jB(A,Q){return sQ().captureException(A,rDA(Q))}function fE(A,Q){let B=typeof Q==="string"?Q:void 0,Y=typeof Q!=="string"?{captureContext:Q}:void 0;return sQ().captureMessage(A,B,Y)}function IN(A,Q){return sQ().captureEvent(A,Q)}function ou(A,Q){RQ().setContext(A,Q)}function tu(A){RQ().setExtras(A)}function eu(A,Q){RQ().setExtra(A,Q)}function Ad(A){RQ().setTags(A)}function Qd(A,Q){RQ().setTag(A,Q)}function Bd(A){RQ().setUser(A)}function Yd(){return RQ().lastEventId()}function VN(A,Q){let B=sQ(),Y=hA();if(!Y)OA&&e.warn("Cannot capture check-in. No client defined.");else if(!Y.captureCheckIn)OA&&e.warn("Cannot capture check-in. Client does not support sending check-ins.");else return Y.captureCheckIn(A,Q,B);return FY()}function t1(A,Q,B){let Y=VN({monitorSlug:A,status:"in_progress"},B),J=w8();function C(X){VN({monitorSlug:A,status:X,checkInId:Y,duration:w8()-J})}return sX(()=>{let X;try{X=Q()}catch(G){throw C("error"),G}if(z5(X))Promise.resolve(X).then(()=>{C("ok")},(G)=>{throw C("error"),G});else C("ok");return X})}async function Jd(A){let Q=hA();if(Q)return Q.flush(A);return OA&&e.warn("Cannot flush events. No client defined."),Promise.resolve(!1)}async function Cd(A){let Q=hA();if(Q)return Q.close(A);return OA&&e.warn("Cannot flush events and disable SDK. No client defined."),Promise.resolve(!1)}function vZ(){return!!hA()}function HN(){let A=hA();return A?.getOptions().enabled!==!1&&!!A?.getTransport()}function Xd(A){RQ().addEventProcessor(A)}function DN(A){let Q=RQ(),B=sQ(),{userAgent:Y}=AQ.navigator||{},J=EDA({user:B.getUser()||Q.getUser(),...Y&&{userAgent:Y},...A}),C=Q.getSession();if(C?.status==="ok")iX(C,{status:"exited"});return yZ(),Q.setSession(J),J}function yZ(){let A=RQ(),B=sQ().getSession()||A.getSession();if(B)KDA(B);aDA(),A.setSession()}function aDA(){let A=RQ(),Q=hA(),B=A.getSession();if(B&&Q)Q.captureSession(B)}function Gd(A=!1){if(A){yZ();return}aDA()}var Q$B="7";function B$B(A){let Q=A.protocol?`${A.protocol}:`:"",B=A.port?`:${A.port}`:"";return`${Q}//${A.host}${B}${A.path?`/${A.path}`:""}/api/`}function Y$B(A){return`${B$B(A)}${A.projectId}/envelope/`}function J$B(A,Q){let B={sentry_version:Q$B};if(A.publicKey)B.sentry_key=A.publicKey;if(Q)B.sentry_client=`${Q.name}/${Q.version}`;return new URLSearchParams(B).toString()}function oDA(A,Q,B){return Q?Q:`${Y$B(A)}?${J$B(A,B)}`}var tDA=[];function C$B(A){let Q={};return A.forEach((B)=>{let{name:Y}=B,J=Q[Y];if(J&&!J.isDefaultInstance&&B.isDefaultInstance)return;Q[Y]=B}),Object.values(Q)}function Fd(A){let Q=A.defaultIntegrations||[],B=A.integrations;Q.forEach((J)=>{J.isDefaultInstance=!0});let Y;if(Array.isArray(B))Y=[...Q,...B];else if(typeof B==="function"){let J=B(Q);Y=Array.isArray(J)?J:[J]}else Y=Q;return C$B(Y)}function eDA(A,Q){let B={};return Q.forEach((Y)=>{if(Y)Zd(A,Y,B)}),B}function Wd(A,Q){for(let B of Q)if(B?.afterAllSetup)B.afterAllSetup(A)}function Zd(A,Q,B){if(B[Q.name]){OA&&e.log(`Integration skipped because it was already installed: ${Q.name}`);return}if(B[Q.name]=Q,tDA.indexOf(Q.name)===-1&&typeof Q.setupOnce==="function")Q.setupOnce(),tDA.push(Q.name);if(Q.setup&&typeof Q.setup==="function")Q.setup(A);if(typeof Q.preprocessEvent==="function"){let Y=Q.preprocessEvent.bind(Q);A.on("preprocessEvent",(J,C)=>Y(J,C,A))}if(typeof Q.processEvent==="function"){let Y=Q.processEvent.bind(Q),J=Object.assign((C,X)=>Y(C,X,A),{id:Q.name});A.addEventProcessor(J)}OA&&e.log(`Integration installed: ${Q.name}`)}function $d(A){let Q=hA();if(!Q){OA&&e.warn(`Cannot add integration "${A.name}" because no SDK Client is available.`);return}Q.addIntegration(A)}function wA(A){return A}function Ij(A){let Q=[];if(A.message)Q.push(A.message);try{let B=A.exception.values[A.exception.values.length-1];if(B?.value){if(Q.push(B.value),B.type)Q.push(`${B.type}: ${B.value}`)}}catch(B){}return Q}function ANA(A){let{trace_id:Q,parent_span_id:B,span_id:Y,status:J,origin:C,data:X,op:G}=A.contexts?.trace??{};return{data:X??{},description:A.transaction,op:G,parent_span_id:B,span_id:Y??"",start_timestamp:A.start_timestamp??0,status:J,timestamp:A.timestamp,trace_id:Q??"",origin:C,profile_id:X?.[TE],exclusive_time:X?.[SE],measurements:A.measurements,is_segment:!0}}function QNA(A){return{type:"transaction",timestamp:A.timestamp,start_timestamp:A.start_timestamp,transaction:A.description,contexts:{trace:{trace_id:A.trace_id,span_id:A.span_id,parent_span_id:A.parent_span_id,op:A.op,status:A.status,origin:A.origin,data:{...A.data,...A.profile_id&&{[TE]:A.profile_id},...A.exclusive_time&&{[SE]:A.exclusive_time}}}},measurements:A.measurements}}function BNA(A,Q,B){let Y=[{type:"client_report"},{timestamp:B||pX(),discarded_events:A}];return S8(Q?{dsn:Q}:{},[Y])}var YNA="Not capturing exception because it's already been captured.",JNA="Discarded session because of missing or non-string release",GNA=Symbol.for("SentryInternalError"),FNA=Symbol.for("SentryDoNotSendEventError");function Hj(A){return{message:A,[GNA]:!0}}function Ud(A){return{message:A,[FNA]:!0}}function CNA(A){return!!A&&typeof A==="object"&&GNA in A}function XNA(A){return!!A&&typeof A==="object"&&FNA in A}class Kd{constructor(A){if(this._options=A,this._integrations={},this._numProcessing=0,this._outcomes={},this._hooks={},this._eventProcessors=[],A.dsn)this._dsn=xDA(A.dsn);else OA&&e.warn("No DSN provided, client will not send events.");if(this._dsn){let Q=oDA(this._dsn,A.tunnel,A._metadata?A._metadata.sdk:void 0);this._transport=A.transport({tunnel:this._options.tunnel,recordDroppedEvent:this.recordDroppedEvent.bind(this),...A.transportOptions,url:Q})}}captureException(A,Q,B){let Y=FY();if(ow(A))return OA&&e.log(YNA),Y;let J={event_id:Y,...Q};return this._process(this.eventFromException(A,J).then((C)=>this._captureEvent(C,J,B))),J.event_id}captureMessage(A,Q,B,Y){let J={event_id:FY(),...B},C=zZ(A)?A:String(A),X=oD(A)?this.eventFromMessage(C,Q,J):this.eventFromException(A,J);return this._process(X.then((G)=>this._captureEvent(G,J,Y))),J.event_id}captureEvent(A,Q,B){let Y=FY();if(Q?.originalException&&ow(Q.originalException))return OA&&e.log(YNA),Y;let J={event_id:Y,...Q},C=A.sdkProcessingMetadata||{},X=C.capturedSpanScope,G=C.capturedSpanIsolationScope;return this._process(this._captureEvent(A,J,X||B,G)),J.event_id}captureSession(A){this.sendSession(A),iX(A,{init:!1})}getDsn(){return this._dsn}getOptions(){return this._options}getSdkMetadata(){return this._options._metadata}getTransport(){return this._transport}flush(A){let Q=this._transport;if(Q)return this.emit("flush"),this._isClientDoneProcessing(A).then((B)=>{return Q.flush(A).then((Y)=>B&&Y)});else return rC(!0)}close(A){return this.flush(A).then((Q)=>{return this.getOptions().enabled=!1,this.emit("close"),Q})}getEventProcessors(){return this._eventProcessors}addEventProcessor(A){this._eventProcessors.push(A)}init(){if(this._isEnabled()||this._options.integrations.some(({name:A})=>A.startsWith("Spotlight")))this._setupIntegrations()}getIntegrationByName(A){return this._integrations[A]}addIntegration(A){let Q=this._integrations[A.name];if(Zd(this,A,this._integrations),!Q)Wd(this,[A])}sendEvent(A,Q={}){this.emit("beforeSendEvent",A,Q);let B=mDA(A,this._dsn,this._options._metadata,this._options.tunnel);for(let J of Q.attachments||[])B=fu(B,mu(J));let Y=this.sendEnvelope(B);if(Y)Y.then((J)=>this.emit("afterSendEvent",A,J),null)}sendSession(A){let{release:Q,environment:B=xE}=this._options;if("aggregates"in A){let J=A.attrs||{};if(!J.release&&!Q){OA&&e.warn(JNA);return}J.release=J.release||Q,J.environment=J.environment||B,A.attrs=J}else{if(!A.release&&!Q){OA&&e.warn(JNA);return}A.release=A.release||Q,A.environment=A.environment||B}this.emit("beforeSendSession",A);let Y=bDA(A,this._dsn,this._options._metadata,this._options.tunnel);this.sendEnvelope(Y)}recordDroppedEvent(A,Q,B=1){if(this._options.sendClientReports){let Y=`${A}:${Q}`;OA&&e.log(`Recording outcome: "${Y}"${B>1?` (${B} times)`:""}`),this._outcomes[Y]=(this._outcomes[Y]||0)+B}}on(A,Q){let B=this._hooks[A]=this._hooks[A]||[];return B.push(Q),()=>{let Y=B.indexOf(Q);if(Y>-1)B.splice(Y,1)}}emit(A,...Q){let B=this._hooks[A];if(B)B.forEach((Y)=>Y(...Q))}sendEnvelope(A){if(this.emit("beforeEnvelope",A),this._isEnabled()&&this._transport)return this._transport.send(A).then(null,(Q)=>{return OA&&e.error("Error while sending envelope:",Q),Q});return OA&&e.error("Transport disabled"),rC({})}_setupIntegrations(){let{integrations:A}=this._options;this._integrations=eDA(this,A),Wd(this,A)}_updateSessionFromEvent(A,Q){let B=Q.level==="fatal",Y=!1,J=Q.exception?.values;if(J){Y=!0;for(let G of J)if(G.mechanism?.handled===!1){B=!0;break}}let C=A.status==="ok";if(C&&A.errors===0||C&&B)iX(A,{...B&&{status:"crashed"},errors:A.errors||Number(Y||B)}),this.captureSession(A)}_isClientDoneProcessing(A){return new sC((Q)=>{let B=0,Y=1,J=setInterval(()=>{if(this._numProcessing==0)clearInterval(J),Q(!0);else if(B+=Y,A&&B>=A)clearInterval(J),Q(!1)},Y)})}_isEnabled(){return this.getOptions().enabled!==!1&&this._transport!==void 0}_prepareEvent(A,Q,B,Y){let J=this.getOptions(),C=Object.keys(this._integrations);if(!Q.integrations&&C?.length)Q.integrations=C;if(this.emit("preprocessEvent",A,Q),!A.type)Y.setLastEventId(A.event_id||Q.event_id);return sDA(J,A,Q,B,this,Y).then((X)=>{if(X===null)return X;this.emit("postprocessEvent",X,Q),X.contexts={trace:PE(B),...X.contexts};let G=rX(this,B);return X.sdkProcessingMetadata={dynamicSamplingContext:G,...X.sdkProcessingMetadata},X})}_captureEvent(A,Q={},B=sQ(),Y=RQ()){if(OA&&Ed(A))e.log(`Captured error event \`${Ij(A)[0]||""}\``);return this._processEvent(A,Q,B,Y).then((J)=>{return J.event_id},(J)=>{if(OA)if(XNA(J))e.log(J.message);else if(CNA(J))e.warn(J.message);else e.warn(J);return})}_processEvent(A,Q,B,Y){let J=this.getOptions(),{sampleRate:C}=J,X=WNA(A),G=Ed(A),F=A.type||"error",W=`before send for type \`${F}\``,Z=typeof C>"u"?void 0:T8(C);if(G&&typeof Z==="number"&&Math.random()>Z)return this.recordDroppedEvent("sample_rate","error"),$j(Ud(`Discarding event because it's not included in the random sample (sampling rate = ${C})`));let U=F==="replay_event"?"replay":F;return this._prepareEvent(A,Q,B,Y).then(($)=>{if($===null)throw this.recordDroppedEvent("event_processor",U),Ud("An event processor returned `null`, will not send event.");if(Q.data&&Q.data.__sentry__===!0)return $;let K=G$B(this,J,$,Q);return X$B(K,W)}).then(($)=>{if($===null){if(this.recordDroppedEvent("before_send",U),X){let V=1+(A.spans||[]).length;this.recordDroppedEvent("before_send","span",V)}throw Ud(`${W} returned \`null\`, will not send event.`)}let E=B.getSession()||Y.getSession();if(G&&E)this._updateSessionFromEvent(E,$);if(X){let I=$.sdkProcessingMetadata?.spanCountBeforeProcessing||0,V=$.spans?$.spans.length:0,H=I-V;if(H>0)this.recordDroppedEvent("before_send","span",H)}let K=$.transaction_info;if(X&&K&&$.transaction!==A.transaction)$.transaction_info={...K,source:"custom"};return this.sendEvent($,Q),$}).then(null,($)=>{if(XNA($)||CNA($))throw $;throw this.captureException($,{data:{__sentry__:!0},originalException:$}),Hj(`Event processing pipeline threw an error, original event will not be sent. Details have been sent as a new event. -Reason: ${$}`)})}_process(A){this._numProcessing++,A.then((Q)=>{return this._numProcessing--,Q},(Q)=>{return this._numProcessing--,Q})}_clearOutcomes(){let A=this._outcomes;return this._outcomes={},Object.entries(A).map(([Q,B])=>{let[Y,J]=Q.split(":");return{reason:Y,category:J,quantity:B}})}_flushOutcomes(){OA&&e.log("Flushing outcomes...");let A=this._clearOutcomes();if(A.length===0){OA&&e.log("No outcomes to send");return}if(!this._dsn){OA&&e.log("No dsn provided, will not send outcomes");return}OA&&e.log("Sending outcomes:",A);let Q=BNA(A,this._options.tunnel&&nC(this._dsn));this.sendEnvelope(Q)}}function X$B(A,Q){let B=`${Q} must return \`null\` or a valid event.`;if(z5(A))return A.then((Y)=>{if(!M5(Y)&&Y!==null)throw Hj(B);return Y},(Y)=>{throw Hj(`${Q} rejected with ${Y}`)});else if(!M5(A)&&A!==null)throw Hj(B);return A}function G$B(A,Q,B,Y){let{beforeSend:J,beforeSendTransaction:C,beforeSendSpan:X}=Q,G=B;if(Ed(G)&&J)return J(G,Y);if(WNA(G)){if(X){let F=X(ANA(G));if(!F)JN();else G=n7(B,QNA(F));if(G.spans){let W=[];for(let Z of G.spans){let U=X(Z);if(!U)JN(),W.push(Z);else W.push(U)}G.spans=W}}if(C){if(G.spans){let F=G.spans.length;G.sdkProcessingMetadata={...B.sdkProcessingMetadata,spanCountBeforeProcessing:F}}return C(G,Y)}}return G}function Ed(A){return A.type===void 0}function WNA(A){return A.type==="transaction"}function Dj(A,Q){if(!Q)return[void 0,void 0];let B=cC(Q),Y=B?t7(B):PE(Q);return[B?c0(B):rX(A,Q),Y]}function ZNA(A,Q,B,Y,J){let C={sent_at:new Date().toISOString()};if(B?.sdk)C.sdk={name:B.sdk.name,version:B.sdk.version};if(!!Y&&!!J)C.dsn=nC(J);if(Q)C.trace=Q;let X=F$B(A);return S8(C,[X])}function F$B(A){return[{type:"check_in"},A]}var $NA={trace:1,debug:5,info:9,warn:13,error:17,fatal:21};function W$B(A){return[{type:"log",item_count:A.length,content_type:"application/vnd.sentry.items.log+json"},{items:A}]}function UNA(A,Q,B,Y){let J={};if(Q?.sdk)J.sdk={name:Q.sdk.name,version:Q.sdk.version};if(!!B&&!!Y)J.dsn=nC(Y);return S8(J,[W$B(A)])}var Z$B=100;AQ._sentryClientToLogBufferMap=new WeakMap;function $$B(A){switch(typeof A){case"number":if(Number.isInteger(A))return{value:A,type:"integer"};return{value:A,type:"double"};case"boolean":return{value:A,type:"boolean"};case"string":return{value:A,type:"string"};default:{let Q="";try{Q=JSON.stringify(A)??""}catch{}return{value:Q,type:"string"}}}}function hZ(A,Q=hA(),B=sQ()){if(!Q){OA&&e.warn("No client available to capture log.");return}let{_experiments:Y,release:J,environment:C}=Q.getOptions(),{enableLogs:X=!1,beforeSendLog:G}=Y??{};if(!X){OA&&e.warn("logging option not enabled, log will not be captured.");return}let[,F]=Dj(Q,B),W={...A.attributes};if(J)W["sentry.release"]=J;if(C)W["sentry.environment"]=C;let{sdk:Z}=Q.getSdkMetadata()??{};if(Z)W["sentry.sdk.name"]=Z.name,W["sentry.sdk.version"]=Z.version;let U=A.message;if(zZ(U)){let{__sentry_template_string__:M,__sentry_template_values__:N=[]}=U;W["sentry.message.template"]=M,N.forEach((q,w)=>{W[`sentry.message.parameter.${w}`]=q})}let $=cC(B);if($)W["sentry.trace.parent_span_id"]=$.spanContext().spanId;let E={...A,attributes:W};Q.emit("beforeCaptureLog",E);let K=G?G(E):E;if(!K){Q.recordDroppedEvent("before_send","log_item",1),OA&&e.warn("beforeSendLog returned null, log will not be captured.");return}let{level:I,message:V,attributes:H={},severityNumber:D}=K,L={timestamp:w8(),level:I,body:V,trace_id:F?.trace_id,severity_number:D??$NA[I],attributes:Object.keys(H).reduce((M,N)=>{return M[N]=$$B(H[N]),M},{})},z=ENA(Q);if(z===void 0)AQ._sentryClientToLogBufferMap?.set(Q,[L]);else if(AQ._sentryClientToLogBufferMap?.set(Q,[...z,L]),z.length>=Z$B)AF(Q,z);Q.emit("afterCaptureLog",K)}function AF(A,Q){let B=Q??ENA(A)??[];if(B.length===0)return;let Y=A.getOptions(),J=UNA(B,Y._metadata,Y.tunnel,A.getDsn());AQ._sentryClientToLogBufferMap?.set(A,[]),A.emit("flushLogs"),A.sendEnvelope(J)}function ENA(A){return AQ._sentryClientToLogBufferMap?.get(A)}function KNA(A,Q){return A(Q.stack||"",1)}function Vd(A,Q){let B={type:Q.name||Q.constructor.name,value:Q.message},Y=KNA(A,Q);if(Y.length)B.stacktrace={frames:Y};return B}function U$B(A){for(let Q in A)if(Object.prototype.hasOwnProperty.call(A,Q)){let B=A[Q];if(B instanceof Error)return B}return}function E$B(A){if("name"in A&&typeof A.name==="string"){let Y=`'${A.name}' captured as exception`;if("message"in A&&typeof A.message==="string")Y+=` with message '${A.message}'`;return Y}else if("message"in A&&typeof A.message==="string")return A.message;let Q=Ku(A);if(QDA(A))return`Event \`ErrorEvent\` captured as exception with message \`${A.message}\``;let B=K$B(A);return`${B&&B!=="Object"?`'${B}'`:"Object"} captured as exception with keys: ${Q}`}function K$B(A){try{let Q=Object.getPrototypeOf(A);return Q?Q.constructor.name:void 0}catch(Q){}}function V$B(A,Q,B,Y){if(uC(B))return[B,void 0];if(Q.synthetic=!0,M5(B)){let C=A?.getOptions().normalizeDepth,X={["__serialized__"]:gu(B,C)},G=U$B(B);if(G)return[G,X];let F=E$B(B),W=Y?.syntheticException||Error(F);return W.message=F,[W,X]}let J=Y?.syntheticException||Error(B);return J.message=`${B}`,[J,void 0]}function VNA(A,Q,B,Y){let C=Y?.data&&Y.data.mechanism||{handled:!0,type:"generic"},[X,G]=V$B(A,C,B,Y),F={exception:{values:[Vd(Q,X)]}};if(G)F.extra=G;return Iu(F,void 0,void 0),i7(F,C),{...F,event_id:Y?.event_id}}function INA(A,Q,B="info",Y,J){let C={event_id:Y?.event_id,level:B};if(J&&Y?.syntheticException){let X=KNA(A,Y.syntheticException);if(X.length)C.exception={values:[{value:Q,stacktrace:{frames:X}}]},i7(C,{synthetic:!0})}if(zZ(Q)){let{__sentry_template_string__:X,__sentry_template_values__:G}=Q;return C.logentry={message:X,params:G},C}return C.message=Q,C}var I$B=5000;class Nj extends Kd{constructor(A){yDA();super(A);if(this._logWeight=0,this._options._experiments?.enableLogs){let Q=this;Q.on("flushLogs",()=>{Q._logWeight=0,clearTimeout(Q._logFlushIdleTimeout)}),Q.on("afterCaptureLog",(B)=>{if(Q._logWeight+=H$B(B),Q._logWeight>=800000)AF(Q);else Q._logFlushIdleTimeout=setTimeout(()=>{AF(Q)},I$B)}),Q.on("flush",()=>{AF(Q)})}}eventFromException(A,Q){let B=VNA(this,this._options.stackParser,A,Q);return B.level="error",rC(B)}eventFromMessage(A,Q="info",B){return rC(INA(this._options.stackParser,A,Q,B,this._options.attachStacktrace))}captureException(A,Q,B){return HNA(Q),super.captureException(A,Q,B)}captureEvent(A,Q,B){if(!A.type&&A.exception?.values&&A.exception.values.length>0)HNA(Q);return super.captureEvent(A,Q,B)}captureCheckIn(A,Q,B){let Y="checkInId"in A&&A.checkInId?A.checkInId:FY();if(!this._isEnabled())return OA&&e.warn("SDK not enabled, will not capture check-in."),Y;let J=this.getOptions(),{release:C,environment:X,tunnel:G}=J,F={check_in_id:Y,monitor_slug:A.monitorSlug,status:A.status,release:C,environment:X};if("duration"in A)F.duration=A.duration;if(Q)F.monitor_config={schedule:Q.schedule,checkin_margin:Q.checkinMargin,max_runtime:Q.maxRuntime,timezone:Q.timezone,failure_issue_threshold:Q.failureIssueThreshold,recovery_threshold:Q.recoveryThreshold};let[W,Z]=Dj(this,B);if(Z)F.contexts={trace:Z};let U=ZNA(F,W,this.getSdkMetadata(),G,this.getDsn());return OA&&e.info("Sending checkin:",A.monitorSlug,A.status),this.sendEnvelope(U),Y}_prepareEvent(A,Q,B,Y){if(this._options.platform)A.platform=A.platform||this._options.platform;if(this._options.runtime)A.contexts={...A.contexts,runtime:A.contexts?.runtime||this._options.runtime};if(this._options.serverName)A.server_name=A.server_name||this._options.serverName;return super._prepareEvent(A,Q,B,Y)}}function HNA(A){let Q=RQ().getScopeData().sdkProcessingMetadata.requestSession;if(Q){let B=A?.mechanism?.handled??!0;if(B&&Q.status!=="crashed")Q.status="errored";else if(!B)Q.status="crashed"}}function H$B(A){let Q=0;if(A.message)Q+=A.message.length*2;if(A.attributes)Object.values(A.attributes).forEach((B)=>{if(Array.isArray(B))Q+=B.length*DNA(B[0]);else if(oD(B))Q+=DNA(B);else Q+=100});return Q}function DNA(A){if(typeof A==="string")return A.length*2;else if(typeof A==="number")return 8;else if(typeof A==="boolean")return 4;return 0}function Id(A){sQ().setClient(A)}var Hd=Symbol.for("SentryBufferFullError");function NNA(A){let Q=[];function B(){return A===void 0||Q.lengthY(G)).then(null,()=>Y(G).then(null,()=>{})),G}function C(X){return new sC((G,F)=>{let W=Q.length;if(!W)return G(!0);let Z=setTimeout(()=>{if(X&&X>0)G(!1)},X);Q.forEach((U)=>{rC(U).then(()=>{if(!--W)clearTimeout(Z),G(!0)},F)})})}return{$:Q,add:J,drain:C}}function D$B(A,Q=Date.now()){let B=parseInt(`${A}`,10);if(!isNaN(B))return B*1000;let Y=Date.parse(`${A}`);if(!isNaN(Y))return Y-Q;return 60000}function N$B(A,Q){return A[Q]||A.all||0}function LNA(A,Q,B=Date.now()){return N$B(A,Q)>B}function qNA(A,{statusCode:Q,headers:B},Y=Date.now()){let J={...A},C=B?.["x-sentry-rate-limits"],X=B?.["retry-after"];if(C)for(let G of C.trim().split(",")){let[F,W,,,Z]=G.split(":",5),U=parseInt(F,10),$=(!isNaN(U)?U:60)*1000;if(!W)J.all=Y+$;else for(let E of W.split(";"))if(E==="metric_bucket"){if(!Z||Z.split(";").includes("custom"))J[E]=Y+$}else J[E]=Y+$}else if(X)J.all=Y+D$B(X,Y);else if(Q===429)J.all=Y+60000;return J}var L$B=64;function bE(A,Q,B=NNA(A.bufferSize||L$B)){let Y={},J=(X)=>B.drain(X);function C(X){let G=[];if(Fj(X,(U,$)=>{let E=Wj($);if(LNA(Y,E))A.recordDroppedEvent("ratelimit_backoff",E);else G.push(U)}),G.length===0)return rC({});let F=S8(X[0],G),W=(U)=>{Fj(F,($,E)=>{A.recordDroppedEvent(U,Wj(E))})},Z=()=>Q({body:WN(F)}).then((U)=>{if(U.statusCode!==void 0&&(U.statusCode<200||U.statusCode>=300))OA&&e.warn(`Sentry responded with status code ${U.statusCode} to sent event.`);return Y=qNA(Y,U),U},(U)=>{throw W("network_error"),OA&&e.error("Encountered error running transport request:",U),U});return B.add(Z).then((U)=>U,(U)=>{if(U===Hd)return OA&&e.error("Skipped sending event because buffer is full."),W("queue_overflow"),rC({});else throw U})}return{send:C,flush:J}}function Lj(A,...Q){let B=new String(String.raw(A,...Q));return B.__sentry_template_string__=A.join("\x00").replace(/%/g,"%%").replace(/\0/g,"%s"),B.__sentry_template_values__=Q,B}var Dd=Lj;function Nd(A,Q,B=[Q],Y="npm"){let J=A._metadata||{};if(!J.sdk)J.sdk={name:`sentry.javascript.${Q}`,packages:B.map((C)=>({name:`${Y}:@sentry/${C}`,version:u0})),version:u0};A._metadata=J}function oX(A={}){let Q=hA();if(!HN()||!Q)return{};let B=RJ(),Y=w5(B);if(Y.getTraceData)return Y.getTraceData(A);let J=sQ(),C=A.span||iC(),X=C?BN(C):q$B(J),G=C?c0(C):rX(Q,J),F=a7(G);if(!AN.test(X))return e.warn("Invalid sentry-trace data. Cannot generate trace data"),{};return{"sentry-trace":X,baggage:F}}function q$B(A){let{traceId:Q,sampled:B,propagationSpanId:Y}=A.getPropagationContext();return o7(Q,Y,B)}function Ld(){return Object.entries(oX()).map(([A,Q])=>``).join(` -`)}function MNA(A){let Q=Object.create(null);try{Object.entries(A).forEach(([B,Y])=>{if(typeof Y==="string")Q[B]=Y})}catch{}return Q}function mE(A){let Q=A.headers||{},B=typeof Q.host==="string"?Q.host:void 0,Y=A.protocol||(A.socket?.encrypted?"https":"http"),J=A.url||"",C=M$B({url:J,host:B,protocol:Y}),X=A.body||void 0,G=A.cookies;return{url:C,method:A.method,query_string:zNA(J),headers:MNA(Q),cookies:G,data:X}}function M$B({url:A,protocol:Q,host:B}){if(A?.startsWith("http"))return A;if(A&&B)return`${Q}://${B}${A}`;return}function zNA(A){if(!A)return;try{let Q=new URL(A,"http://s.io").search.slice(1);return Q.length?Q:void 0}catch{return}}var z$B=100;function G9(A,Q){let B=hA(),Y=RQ();if(!B)return;let{beforeBreadcrumb:J=null,maxBreadcrumbs:C=z$B}=B.getOptions();if(C<=0)return;let G={timestamp:pX(),...A},F=J?h0(()=>J(G,Q)):G;if(F===null)return;if(B.emit)B.emit("beforeAddBreadcrumb",F,Q);Y.addBreadcrumb(F,C)}var RNA,R$B="FunctionToString",wNA=new WeakMap,w$B=()=>{return{name:R$B,setupOnce(){RNA=Function.prototype.toString;try{Function.prototype.toString=function(...A){let Q=Eu(this),B=wNA.has(hA())&&Q!==void 0?Q:this;return RNA.apply(B,A)}}catch{}},setup(A){wNA.set(A,!0)}}},NN=wA(w$B);var j$B=[/^Script error\.?$/,/^Javascript error: Script error\.? on line 0$/,/^ResizeObserver loop completed with undelivered notifications.$/,/^Cannot redefine property: googletag$/,/^Can't find variable: gmo$/,/^undefined is not an object \(evaluating 'a\.[A-Z]'\)$/,`can't redefine non-configurable property "solana"`,"vv().getRestrictions is not a function. (In 'vv().getRestrictions(1,a)', 'vv().getRestrictions' is undefined)","Can't find variable: _AutofillCallbackHandler",/^Non-Error promise rejection captured with value: Object Not Found Matching Id:\d+, MethodName:simulateEvent, ParamCount:\d+$/,/^Java exception was raised during method invocation$/],O$B="EventFilters",Mj=wA((A={})=>{let Q;return{name:O$B,setup(B){let Y=B.getOptions();Q=jNA(A,Y)},processEvent(B,Y,J){if(!Q){let C=J.getOptions();Q=jNA(A,C)}return P$B(B,Q)?null:B}}}),LN=wA((A={})=>{return{...Mj(A),name:"InboundFilters"}});function jNA(A={},Q={}){return{allowUrls:[...A.allowUrls||[],...Q.allowUrls||[]],denyUrls:[...A.denyUrls||[],...Q.denyUrls||[]],ignoreErrors:[...A.ignoreErrors||[],...Q.ignoreErrors||[],...A.disableErrorDefaults?[]:j$B],ignoreTransactions:[...A.ignoreTransactions||[],...Q.ignoreTransactions||[]]}}function P$B(A,Q){if(!A.type){if(T$B(A,Q.ignoreErrors))return OA&&e.warn(`Event dropped due to being matched by \`ignoreErrors\` option. -Event: ${p7(A)}`),!0;if(y$B(A))return OA&&e.warn(`Event dropped due to not having an error message, error type or stacktrace. -Event: ${p7(A)}`),!0;if(k$B(A,Q.denyUrls))return OA&&e.warn(`Event dropped due to being matched by \`denyUrls\` option. -Event: ${p7(A)}. -Url: ${qj(A)}`),!0;if(!_$B(A,Q.allowUrls))return OA&&e.warn(`Event dropped due to not being matched by \`allowUrls\` option. -Event: ${p7(A)}. -Url: ${qj(A)}`),!0}else if(A.type==="transaction"){if(S$B(A,Q.ignoreTransactions))return OA&&e.warn(`Event dropped due to being matched by \`ignoreTransactions\` option. -Event: ${p7(A)}`),!0}return!1}function T$B(A,Q){if(!Q?.length)return!1;return Ij(A).some((B)=>l7(B,Q))}function S$B(A,Q){if(!Q?.length)return!1;let B=A.transaction;return B?l7(B,Q):!1}function k$B(A,Q){if(!Q?.length)return!1;let B=qj(A);return!B?!1:l7(B,Q)}function _$B(A,Q){if(!Q?.length)return!0;let B=qj(A);return!B?!0:l7(B,Q)}function v$B(A=[]){for(let Q=A.length-1;Q>=0;Q--){let B=A[Q];if(B&&B.filename!==""&&B.filename!=="[native code]")return B.filename||null}return null}function qj(A){try{let B=[...A.exception?.values??[]].reverse().find((Y)=>Y.mechanism?.parent_id===void 0&&Y.stacktrace?.frames?.length)?.stacktrace?.frames;return B?v$B(B):null}catch(Q){return OA&&e.error(`Cannot extract url for event ${p7(A)}`),null}}function y$B(A){if(!A.exception?.values?.length)return!1;return!A.message&&!A.exception.values.some((Q)=>Q.stacktrace||Q.type&&Q.type!=="Error"||Q.value)}function TNA(A,Q,B,Y,J,C){if(!J.exception?.values||!C||!lX(C.originalException,Error))return;let X=J.exception.values.length>0?J.exception.values[J.exception.values.length-1]:void 0;if(X)J.exception.values=qd(A,Q,Y,C.originalException,B,J.exception.values,X,0)}function qd(A,Q,B,Y,J,C,X,G){if(C.length>=B+1)return C;let F=[...C];if(lX(Y[J],Error)){ONA(X,G);let W=A(Q,Y[J]),Z=F.length;PNA(W,J,Z,G),F=qd(A,Q,B,Y[J],J,[W,...F],W,Z)}if(Array.isArray(Y.errors))Y.errors.forEach((W,Z)=>{if(lX(W,Error)){ONA(X,G);let U=A(Q,W),$=F.length;PNA(U,`errors[${Z}]`,$,G),F=qd(A,Q,B,W,J,[U,...F],U,$)}});return F}function ONA(A,Q){A.mechanism=A.mechanism||{type:"generic",handled:!0},A.mechanism={...A.mechanism,...A.type==="AggregateError"&&{is_exception_group:!0},exception_id:Q}}function PNA(A,Q,B,Y){A.mechanism=A.mechanism||{type:"generic",handled:!0},A.mechanism={...A.mechanism,type:"chained",source:Q,exception_id:B,parent_id:Y}}var h$B="cause",g$B=5,x$B="LinkedErrors",f$B=(A={})=>{let Q=A.limit||g$B,B=A.key||h$B;return{name:x$B,preprocessEvent(Y,J,C){let X=C.getOptions();TNA(Vd,X.stackParser,B,Q,Y,J)}}},qN=wA(f$B);function SNA(A){let Q={},B=0;while(B{let C=A[J],X=Array.isArray(C)?C.join(";"):C;if(J==="Forwarded")return b$B(X);return X?.split(",").map((G)=>G.trim())}).reduce((J,C)=>{if(!C)return J;return J.concat(C)},[]).find((J)=>J!==null&&m$B(J))||null}function b$B(A){if(!A)return null;for(let Q of A.split(";"))if(Q.startsWith("for="))return Q.slice(4);return null}function m$B(A){return/(?:^(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}$)|(?:^(?:(?:[a-fA-F\d]{1,4}:){7}(?:[a-fA-F\d]{1,4}|:)|(?:[a-fA-F\d]{1,4}:){6}(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|:[a-fA-F\d]{1,4}|:)|(?:[a-fA-F\d]{1,4}:){5}(?::(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,2}|:)|(?:[a-fA-F\d]{1,4}:){4}(?:(?::[a-fA-F\d]{1,4}){0,1}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,3}|:)|(?:[a-fA-F\d]{1,4}:){3}(?:(?::[a-fA-F\d]{1,4}){0,2}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,4}|:)|(?:[a-fA-F\d]{1,4}:){2}(?:(?::[a-fA-F\d]{1,4}){0,3}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,5}|:)|(?:[a-fA-F\d]{1,4}:){1}(?:(?::[a-fA-F\d]{1,4}){0,4}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,6}|:)|(?::(?:(?::[a-fA-F\d]{1,4}){0,5}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,7}|:)))(?:%[0-9a-zA-Z]{1,})?$)/.test(A)}var u$B={cookies:!0,data:!0,headers:!0,query_string:!0,url:!0},d$B="RequestData",c$B=(A={})=>{let Q={...u$B,...A.include};return{name:d$B,processEvent(B,Y,J){let{sdkProcessingMetadata:C={}}=B,{normalizedRequest:X,ipAddress:G}=C,F={...Q,ip:Q.ip??J.getOptions().sendDefaultPii};if(X)l$B(B,X,{ipAddress:G},F);return B}}},MN=wA(c$B);function l$B(A,Q,B,Y){if(A.request={...A.request,...p$B(Q,Y)},Y.ip){let J=Q.headers&&kNA(Q.headers)||B.ipAddress;if(J)A.user={...A.user,ip_address:J}}}function p$B(A,Q){let B={},Y={...A.headers};if(Q.headers){if(B.headers=Y,!Q.cookies)delete Y.cookie;if(!Q.ip)Md.forEach((J)=>{delete Y[J]})}if(B.method=A.method,Q.url)B.url=A.url;if(Q.cookies){let J=A.cookies||(Y?.cookie?SNA(Y.cookie):void 0);B.cookies=J||{}}if(Q.query_string)B.query_string=A.query_string;if(Q.data)B.data=A.data;return B}function uE(A){yE("console",A),hE("console",i$B)}function i$B(){if(!("console"in AQ))return;dC.forEach(function(A){if(!(A in AQ.console))return;Uu(AQ.console,A,function(Q){return wE[A]=Q,function(...B){gE("console",{args:B,level:A}),wE[A]?.apply(AQ.console,B)}})})}function zj(A){return A==="warn"?"warning":["fatal","error","warning","log","info","debug"].includes(A)?A:"log"}var n$B="CaptureConsole",s$B=(A={})=>{let Q=A.levels||dC,B=A.handled??!0;return{name:n$B,setup(Y){if(!("console"in AQ))return;uE(({args:J,level:C})=>{if(hA()!==Y||!Q.includes(C))return;r$B(J,C,B)})}}},zd=wA(s$B);function r$B(A,Q,B){let Y={level:zj(Q),extra:{arguments:A}};P8((J)=>{if(J.addEventProcessor((G)=>{return G.logger="console",i7(G,{handled:B,type:"console"}),G}),Q==="assert"){if(!A[0]){let G=`Assertion failed: ${c7(A.slice(1)," ")||"console.assert"}`;J.setExtra("arguments",A.slice(1)),fE(G,Y)}return}let C=A.find((G)=>G instanceof Error);if(C){jB(C,Y);return}let X=c7(A," ");fE(X,Y)})}var a$B="Dedupe",o$B=()=>{let A;return{name:a$B,processEvent(Q){if(Q.type)return Q;try{if(t$B(Q,A))return OA&&e.warn("Event dropped due to being a duplicate of previously captured event."),null}catch(B){}return A=Q}}},Rd=wA(o$B);function t$B(A,Q){if(!Q)return!1;if(e$B(A,Q))return!0;if(A4B(A,Q))return!0;return!1}function e$B(A,Q){let B=A.message,Y=Q.message;if(!B&&!Y)return!1;if(B&&!Y||!B&&Y)return!1;if(B!==Y)return!1;if(!yNA(A,Q))return!1;if(!vNA(A,Q))return!1;return!0}function A4B(A,Q){let B=_NA(Q),Y=_NA(A);if(!B||!Y)return!1;if(B.type!==Y.type||B.value!==Y.value)return!1;if(!yNA(A,Q))return!1;if(!vNA(A,Q))return!1;return!0}function vNA(A,Q){let B=Cj(A),Y=Cj(Q);if(!B&&!Y)return!0;if(B&&!Y||!B&&Y)return!1;if(B=B,Y=Y,Y.length!==B.length)return!1;for(let J=0;J{let{depth:Q=3,captureErrorCause:B=!0}=A;return{name:Q4B,processEvent(Y,J,C){let{maxValueLength:X=250}=C.getOptions();return Y4B(Y,J,Q,B,X)}}},wd=wA(B4B);function Y4B(A,Q={},B,Y,J){if(!Q.originalException||!uC(Q.originalException))return A;let C=Q.originalException.name||Q.originalException.constructor.name,X=J4B(Q.originalException,Y,J);if(X){let G={...A.contexts},F=wJ(X,B);if(M5(F))d0(F,"__sentry_skip_normalization__",!0),G[C]=F;return{...A,contexts:G}}return A}function J4B(A,Q,B){try{let Y=["name","message","stack","line","column","fileName","lineNumber","columnNumber","toJSON"],J={};for(let C of Object.keys(A)){if(Y.indexOf(C)!==-1)continue;let X=A[C];J[C]=uC(X)||typeof X==="string"?b9(`${X}`,B):X}if(Q&&A.cause!==void 0)J.cause=uC(A.cause)?A.cause.toString():A.cause;if(typeof A.toJSON==="function"){let C=A.toJSON();for(let X of Object.keys(C)){let G=C[X];J[X]=uC(G)?G.toString():G}}return J}catch(Y){OA&&e.error("Unable to extract extra data from the Error object:",Y)}return null}function C4B(A,Q){let B=0;for(let Y=A.length-1;Y>=0;Y--){let J=A[Y];if(J===".")A.splice(Y,1);else if(J==="..")A.splice(Y,1),B++;else if(B)A.splice(Y,1),B--}if(Q)for(;B--;B)A.unshift("..");return A}var X4B=/^(\S+:\\|\/?)([\s\S]*?)((?:\.{1,2}|[^/\\]+?|)(\.[^./\\]*|))(?:[/\\]*)$/;function gNA(A){let Q=A.length>1024?`${A.slice(-1024)}`:A,B=X4B.exec(Q);return B?B.slice(1):[]}function jd(...A){let Q="",B=!1;for(let Y=A.length-1;Y>=-1&&!B;Y--){let J=Y>=0?A[Y]:"/";if(!J)continue;Q=`${J}/${Q}`,B=J.charAt(0)==="/"}return Q=C4B(Q.split("/").filter((Y)=>!!Y),!B).join("/"),(B?"/":"")+Q||"."}function hNA(A){let Q=0;for(;Q=0;B--)if(A[B]!=="")break;if(Q>B)return[];return A.slice(Q,B-Q+1)}function Od(A,Q){A=jd(A).slice(1),Q=jd(Q).slice(1);let B=hNA(A.split("/")),Y=hNA(Q.split("/")),J=Math.min(B.length,Y.length),C=J;for(let G=0;G{let Q=A.root,B=A.prefix||"app:///",Y="window"in AQ&&!!AQ.window,J=A.iteratee||F4B({isBrowser:Y,root:Q,prefix:B});function C(G){try{return{...G,exception:{...G.exception,values:G.exception.values.map((F)=>({...F,...F.stacktrace&&{stacktrace:X(F.stacktrace)}}))}}}catch(F){return G}}function X(G){return{...G,frames:G?.frames&&G.frames.map((F)=>J(F))}}return{name:G4B,processEvent(G){let F=G;if(G.exception&&Array.isArray(G.exception.values))F=C(F);return F}}});function F4B({isBrowser:A,root:Q,prefix:B}){return(Y)=>{if(!Y.filename)return Y;let J=/^[a-zA-Z]:\\/.test(Y.filename)||Y.filename.includes("\\")&&!Y.filename.includes("/"),C=/^\//.test(Y.filename);if(A){if(Q){let X=Y.filename;if(X.indexOf(Q)===0)Y.filename=X.replace(Q,B)}}else if(J||C){let X=J?Y.filename.replace(/^[a-zA-Z]:/,"").replace(/\\/g,"/"):Y.filename,G=Q?Od(Q,X):Td(X);Y.filename=`${B}${G}`}return Y}}var W4B=["reauthenticate","signInAnonymously","signInWithOAuth","signInWithIdToken","signInWithOtp","signInWithPassword","signInWithSSO","signOut","signUp","verifyOtp"],Z4B=["createUser","deleteUser","listUsers","getUserById","updateUserById","inviteUserByEmail"],$4B={eq:"eq",neq:"neq",gt:"gt",gte:"gte",lt:"lt",lte:"lte",like:"like","like(all)":"likeAllOf","like(any)":"likeAnyOf",ilike:"ilike","ilike(all)":"ilikeAllOf","ilike(any)":"ilikeAnyOf",is:"is",in:"in",cs:"contains",cd:"containedBy",sr:"rangeGt",nxl:"rangeGte",sl:"rangeLt",nxr:"rangeLte",adj:"rangeAdjacent",ov:"overlaps",fts:"",plfts:"plain",phfts:"phrase",wfts:"websearch",not:"not"},fNA=["select","insert","upsert","update","delete"];function Rj(A){try{A.__SENTRY_INSTRUMENTED__=!0}catch{}}function wj(A){try{return A.__SENTRY_INSTRUMENTED__}catch{return!1}}function U4B(A,Q={}){switch(A){case"GET":return"select";case"POST":if(Q.Prefer?.includes("resolution="))return"upsert";else return"insert";case"PATCH":return"update";case"DELETE":return"delete";default:return""}}function E4B(A,Q){if(Q===""||Q==="*")return"select(*)";if(A==="select")return`select(${Q})`;if(A==="or"||A.endsWith(".or"))return`${A}${Q}`;let[B,...Y]=Q.split("."),J;if(B?.startsWith("fts"))J="textSearch";else if(B?.startsWith("plfts"))J="textSearch[plain]";else if(B?.startsWith("phfts"))J="textSearch[phrase]";else if(B?.startsWith("wfts"))J="textSearch[websearch]";else J=B&&$4B[B]||"filter";return`${J}(${A}, ${Y.join(".")})`}function xNA(A,Q=!1){return new Proxy(A,{apply(B,Y,J){return k8({name:A.name,attributes:{[DQ]:"auto.db.supabase",[YQ]:`db.auth.${Q?"admin.":""}${A.name}`}},(C)=>{return Reflect.apply(B,Y,J).then((X)=>{if(X&&typeof X==="object"&&"error"in X&&X.error)C.setStatus({code:m9}),jB(X.error,{mechanism:{handled:!1}});else C.setStatus({code:s7});return C.end(),X}).catch((X)=>{throw C.setStatus({code:m9}),C.end(),jB(X,{mechanism:{handled:!1}}),X}).then(...J)})}})}function K4B(A){let Q=A.auth;if(!Q||wj(A.auth))return;for(let B of W4B){let Y=Q[B];if(!Y)continue;if(typeof A.auth[B]==="function")A.auth[B]=xNA(Y)}for(let B of Z4B){let Y=Q.admin[B];if(!Y)continue;if(typeof A.auth.admin[B]==="function")A.auth.admin[B]=xNA(Y,!0)}Rj(A.auth)}function V4B(A){if(wj(A.prototype.from))return;A.prototype.from=new Proxy(A.prototype.from,{apply(Q,B,Y){let J=Reflect.apply(Q,B,Y),C=J.constructor;return H4B(C),J}}),Rj(A.prototype.from)}function I4B(A){if(wj(A.prototype.then))return;A.prototype.then=new Proxy(A.prototype.then,{apply(Q,B,Y){let J=fNA,C=B,X=U4B(C.method,C.headers);if(!J.includes(X))return Reflect.apply(Q,B,Y);if(!C?.url?.pathname||typeof C.url.pathname!=="string")return Reflect.apply(Q,B,Y);let G=C.url.pathname.split("/"),F=G.length>0?G[G.length-1]:"",W=`from(${F})`,Z=[];for(let[E,K]of C.url.searchParams.entries())Z.push(E4B(E,K));let U=Object.create(null);if(M5(C.body))for(let[E,K]of Object.entries(C.body))U[E]=K;let $={"db.table":F,"db.schema":C.schema,"db.url":C.url.origin,"db.sdk":C.headers["X-Client-Info"],"db.system":"postgresql",[DQ]:"auto.db.supabase",[YQ]:`db.${X}`};if(Z.length)$["db.query"]=Z;if(Object.keys(U).length)$["db.body"]=U;return k8({name:W,attributes:$},(E)=>{return Reflect.apply(Q,B,[]).then((K)=>{if(E){if(K&&typeof K==="object"&&"status"in K)_E(E,K.status||500);E.end()}if(K.error){let H=Error(K.error.message);if(K.error.code)H.code=K.error.code;if(K.error.details)H.details=K.error.details;let D={};if(Z.length)D.query=Z;if(Object.keys(U).length)D.body=U;jB(H,{contexts:{supabase:D}})}let I={type:"supabase",category:`db.${X}`,message:W},V={};if(Z.length)V.query=Z;if(Object.keys(U).length)V.body=U;if(Object.keys(V).length)I.data=V;return G9(I),K},(K)=>{if(E)_E(E,500),E.end();throw K}).then(...Y)})}}),Rj(A.prototype.then)}function H4B(A){for(let Q of fNA){if(wj(A.prototype[Q]))continue;A.prototype[Q]=new Proxy(A.prototype[Q],{apply(B,Y,J){let C=Reflect.apply(B,Y,J),X=C.constructor;return OA&&e.log(`Instrumenting ${Q} operation's PostgRESTFilterBuilder`),I4B(X),C}}),Rj(A.prototype[Q])}}var jj=(A)=>{if(!A){OA&&e.warn("Supabase integration was not installed because no Supabase client was provided.");return}let Q=A.constructor===Function?A:A.constructor;V4B(Q),K4B(A)},D4B="Supabase",N4B=(A)=>{return{setupOnce(){jj(A)},name:D4B}},kd=wA((A)=>{return N4B(A.supabaseClient)});var L4B=10,q4B="ZodErrors";function M4B(A){return uC(A)&&A.name==="ZodError"&&Array.isArray(A.issues)}function z4B(A){return{...A,path:"path"in A&&Array.isArray(A.path)?A.path.join("."):void 0,keys:"keys"in A?JSON.stringify(A.keys):void 0,unionErrors:"unionErrors"in A?JSON.stringify(A.unionErrors):void 0}}function R4B(A){return A.map((Q)=>{if(typeof Q==="number")return"";else return Q}).join(".")}function w4B(A){let Q=new Set;for(let Y of A.issues){let J=R4B(Y.path);if(J.length>0)Q.add(J)}let B=Array.from(Q);if(B.length===0){let Y="variable";if(A.issues.length>0){let J=A.issues[0];if(J!==void 0&&"expected"in J&&typeof J.expected==="string")Y=J.expected}return`Failed to validate ${Y}`}return`Failed to validate keys: ${b9(B.join(", "),100)}`}function j4B(A,Q=!1,B,Y){if(!B.exception?.values||!Y.originalException||!M4B(Y.originalException)||Y.originalException.issues.length===0)return B;try{let C=(Q?Y.originalException.issues:Y.originalException.issues.slice(0,A)).map(z4B);if(Q){if(!Array.isArray(Y.attachments))Y.attachments=[];Y.attachments.push({filename:"zod_issues.json",data:JSON.stringify({issues:C})})}return{...B,exception:{...B.exception,values:[{...B.exception.values[0],value:w4B(Y.originalException)},...B.exception.values.slice(1)]},extra:{...B.extra,"zoderror.issues":C.slice(0,A)}}}catch(J){return{...B,extra:{...B.extra,"zoderrors sentry integration parse error":{message:"an exception was thrown while processing ZodError within applyZodErrorsToEvent()",error:J instanceof Error?`${J.name}: ${J.message} -${J.stack}`:"unknown"}}}}}var O4B=(A={})=>{let Q=A.limit??L4B;return{name:q4B,processEvent(B,Y){return j4B(Q,A.saveZodIssuesAsAttachment,B,Y)}}},_d=wA(O4B);var P4B="Console",zN=wA((A={})=>{let Q=new Set(A.levels||dC);return{name:P4B,setup(B){uE(({args:Y,level:J})=>{if(hA()!==B||!Q.has(J))return;T4B(J,Y)})}}});function T4B(A,Q){let B={category:"console",data:{arguments:Q,logger:"console"},level:zj(A),message:bNA(Q)};if(A==="assert")if(Q[0]===!1){let Y=Q.slice(1);B.message=Y.length>0?`Assertion failed: ${bNA(Y)}`:"Assertion failed",B.data.arguments=Y}else return;G9(B,{input:Q,level:A})}function bNA(A){return"util"in AQ&&typeof AQ.util.format==="function"?AQ.util.format(...A):c7(A," ")}function mNA(A){return!!A&&typeof A._profiler<"u"&&typeof A._profiler.start==="function"&&typeof A._profiler.stop==="function"}function S4B(){let A=hA();if(!A){OA&&e.warn("No Sentry client available, profiling is not started");return}let Q=A.getIntegrationByName("ProfilingIntegration");if(!Q){OA&&e.warn("ProfilingIntegration is not available");return}if(!mNA(Q)){OA&&e.warn("Profiler is not available on profiling integration.");return}Q._profiler.start()}function k4B(){let A=hA();if(!A){OA&&e.warn("No Sentry client available, profiling is not started");return}let Q=A.getIntegrationByName("ProfilingIntegration");if(!Q){OA&&e.warn("ProfilingIntegration is not available");return}if(!mNA(Q)){OA&&e.warn("Profiler is not available on profiling integration.");return}Q._profiler.stop()}var vd={startProfiler:S4B,stopProfiler:k4B};function QF(A){if(!A)return{};let Q=A.match(/^(([^:/?#]+):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?$/);if(!Q)return{};let B=Q[6]||"",Y=Q[8]||"";return{host:Q[4],path:Q[5],protocol:Q[2],search:B,hash:Y,relative:Q[5]+B+Y}}function dE(A){return A.split(/[?#]/,1)[0]}function BF(A){let{protocol:Q,host:B,path:Y}=A,J=B?.replace(/^.*@/,"[filtered]:[filtered]@").replace(/(:80)$/,"").replace(/(:443)$/,"")||"";return`${Q?`${Q}://`:""}${J}${Y}`}var uNA={mechanism:{handled:!1,data:{function:"trpcMiddleware"}}};function _4B(A){if(typeof A==="object"&&A!==null&&"ok"in A&&!A.ok&&"error"in A)jB(A.error,uNA)}function yd(A={}){return async function(Q){let{path:B,type:Y,next:J,rawInput:C,getRawInput:X}=Q,F=hA()?.getOptions(),W={procedure_path:B,procedure_type:Y};if(d0(W,"__sentry_override_normalization_depth__",1+(F?.normalizeDepth??5)),A.attachRpcInput!==void 0?A.attachRpcInput:F?.sendDefaultPii){if(C!==void 0)W.input=wJ(C);if(X!==void 0&&typeof X==="function")try{let Z=await X();W.input=wJ(Z)}catch(Z){}}return sX((Z)=>{return Z.setContext("trpc",W),$N({name:`trpc/${B}`,op:"rpc.server",attributes:{[A0]:"route",[DQ]:"auto.rpc.trpc"},forceTransaction:!!A.forceTransaction},async(U)=>{try{let $=await J();return _4B($),U.end(),$}catch($){throw jB($,uNA),U.end(),$}})})}}var dNA=new WeakSet;function xd(A){if(dNA.has(A))return A;if(!v4B(A))return OA&&e.warn("Did not patch MCP server. Interface is incompatible."),A;return A.connect=new Proxy(A.connect,{apply(Q,B,Y){let[J,...C]=Y;if(!J.onclose)J.onclose=()=>{if(J.sessionId)lNA(J.sessionId)};if(!J.onmessage)J.onmessage=(G)=>{if(J.sessionId&&cNA(G))pNA(J.sessionId,G.id)};let X=new Proxy(J,{set(G,F,W){if(F==="onmessage")G[F]=new Proxy(W,{apply(Z,U,$){let[E]=$;if(J.sessionId&&cNA(E))pNA(J.sessionId,E.id);return Reflect.apply(Z,U,$)}});else if(F==="onclose")G[F]=new Proxy(W,{apply(Z,U,$){if(J.sessionId)lNA(J.sessionId);return Reflect.apply(Z,U,$)}});else G[F]=W;return!0}});return Reflect.apply(Q,B,[X,...C])}}),A.resource=new Proxy(A.resource,{apply(Q,B,Y){let J=Y[0],C=Y[Y.length-1];if(typeof J!=="string"||typeof C!=="function")return Q.apply(B,Y);let X=new Proxy(C,{apply(G,F,W){let Z=W.find(hd);return gd(Z,()=>{return k8({name:`mcp-server/resource:${J}`,forceTransaction:!0,attributes:{[YQ]:"auto.function.mcp-server",[DQ]:"auto.function.mcp-server",[A0]:"route","mcp_server.resource":J}},()=>G.apply(F,W))})}});return Reflect.apply(Q,B,[...Y.slice(0,-1),X])}}),A.tool=new Proxy(A.tool,{apply(Q,B,Y){let J=Y[0],C=Y[Y.length-1];if(typeof J!=="string"||typeof C!=="function")return Q.apply(B,Y);let X=new Proxy(C,{apply(G,F,W){let Z=W.find(hd);return gd(Z,()=>{return k8({name:`mcp-server/tool:${J}`,forceTransaction:!0,attributes:{[YQ]:"auto.function.mcp-server",[DQ]:"auto.function.mcp-server",[A0]:"route","mcp_server.tool":J}},()=>G.apply(F,W))})}});return Reflect.apply(Q,B,[...Y.slice(0,-1),X])}}),A.prompt=new Proxy(A.prompt,{apply(Q,B,Y){let J=Y[0],C=Y[Y.length-1];if(typeof J!=="string"||typeof C!=="function")return Q.apply(B,Y);let X=new Proxy(C,{apply(G,F,W){let Z=W.find(hd);return gd(Z,()=>{return k8({name:`mcp-server/prompt:${J}`,forceTransaction:!0,attributes:{[YQ]:"auto.function.mcp-server",[DQ]:"auto.function.mcp-server",[A0]:"route","mcp_server.prompt":J}},()=>G.apply(F,W))})}});return Reflect.apply(Q,B,[...Y.slice(0,-1),X])}}),dNA.add(A),A}function v4B(A){return typeof A==="object"&&A!==null&&"resource"in A&&typeof A.resource==="function"&&"tool"in A&&typeof A.tool==="function"&&"prompt"in A&&typeof A.prompt==="function"&&"connect"in A&&typeof A.connect==="function"}function cNA(A){return typeof A==="object"&&A!==null&&"id"in A&&(typeof A.id==="number"||typeof A.id==="string")}function hd(A){return typeof A==="object"&&A!==null&&"sessionId"in A&&typeof A.sessionId==="string"&&"requestId"in A&&(typeof A.requestId==="number"||typeof A.requestId==="string")}var Oj=new Map;function lNA(A){Oj.delete(A)}function pNA(A,Q){let B=iC();if(B){let Y=Oj.get(A)??new Map;Y.set(Q,B),Oj.set(A,Y)}}function gd(A,Q){if(A){let{sessionId:B,requestId:Y}=A,J=Oj.get(B);if(!J)return Q();let C=J.get(Y);if(!C)return Q();return J.delete(Y),e7(C,()=>{return Q()})}return Q()}function fd(A,Q={},B=sQ()){let{message:Y,name:J,email:C,url:X,source:G,associatedEventId:F,tags:W}=A,Z={contexts:{feedback:{contact_email:C,name:J,message:Y,url:X,source:G,associated_event_id:F}},type:"feedback",level:"info",tags:W},U=B?.getClient()||hA();if(U)U.emit("beforeSendFeedback",Z,Q);return B.captureEvent(Z,Q)}var y4B="ConsoleLogs",iNA={[DQ]:"auto.console.logging"},h4B=(A={})=>{let Q=A.levels||dC;return{name:y4B,setup(B){if(!B.getOptions()._experiments?.enableLogs){OA&&e.warn("`_experiments.enableLogs` is not enabled, ConsoleLogs integration disabled");return}uE(({args:Y,level:J})=>{if(hA()!==B||!Q.includes(J))return;if(J==="assert"){if(!Y[0]){let X=Y.slice(1),G=X.length>0?`Assertion failed: ${nNA(X)}`:"Assertion failed";hZ({level:"error",message:G,attributes:iNA})}return}let C=J==="log";hZ({level:C?"info":J,message:nNA(Y),severityNumber:C?10:void 0,attributes:iNA})})}}},bd=wA(h4B);function nNA(A){return"util"in AQ&&typeof AQ.util.format==="function"?AQ.util.format(...A):c7(A," ")}function RN(A){if(A===void 0)return;else if(A>=400&&A<500)return"warning";else if(A>=500)return"error";else return}function rNA(A,Q=!1){return!(Q||A&&!A.startsWith("/")&&!A.match(/^[A-Z]:/)&&!A.startsWith(".")&&!A.match(/^[a-zA-Z]([a-zA-Z0-9.\-+])*:\/\//))&&A!==void 0&&!A.includes("node_modules/")}function aNA(A){let Q=/^\s*[-]{4,}$/,B=/at (?:async )?(?:(.+?)\s+\()?(?:(.+):(\d+):(\d+)?|([^)]+))\)?/;return(Y)=>{let J=Y.match(B);if(J){let C,X,G,F,W;if(J[1]){G=J[1];let $=G.lastIndexOf(".");if(G[$-1]===".")$--;if($>0){C=G.slice(0,$),X=G.slice($+1);let E=C.indexOf(".Module");if(E>0)G=G.slice(E+1),C=C.slice(0,E)}F=void 0}if(X)F=C,W=X;if(X==="")W=void 0,G=void 0;if(G===void 0)W=W||Pu,G=F?`${F}.${W}`:W;let Z=J[2]?.startsWith("file://")?J[2].slice(7):J[2],U=J[5]==="native";if(Z?.match(/\/[A-Z]:/))Z=Z.slice(1);if(!Z&&J[5]&&!U)Z=J[5];return{filename:Z?decodeURI(Z):void 0,module:A?A(Z):void 0,function:G,lineno:sNA(J[3]),colno:sNA(J[4]),in_app:rNA(Z||"",U)}}if(Y.match(Q))return{filename:Y};return}}function md(A){return[90,aNA(A)]}function sNA(A){return parseInt(A||"",10)||void 0}class _8{constructor(A){this._maxSize=A,this._cache=new Map}get size(){return this._cache.size}get(A){let Q=this._cache.get(A);if(Q===void 0)return;return this._cache.delete(A),this._cache.set(A,Q),Q}set(A,Q){if(this._cache.size>=this._maxSize)this._cache.delete(this._cache.keys().next().value);this._cache.set(A,Q)}remove(A){let Q=this._cache.get(A);if(Q)this._cache.delete(A);return Q}clear(){this._cache.clear()}keys(){return Array.from(this._cache.keys())}values(){let A=[];return this._cache.forEach((Q)=>A.push(Q)),A}}function tX(A,...Q){let[B,Y,J]=Q;if(Array.isArray(Y)){let C={...J};C["sentry.message.template"]=B,Y.forEach((G,F)=>{C[`sentry.message.parameter.${F}`]=G});let X=g4B(B,...Y);hZ({level:A,message:X,attributes:C})}else hZ({level:A,message:B,attributes:Y})}function x4B(...A){tX("trace",...A)}function f4B(...A){tX("debug",...A)}function b4B(...A){tX("info",...A)}function m4B(...A){tX("warn",...A)}function u4B(...A){tX("error",...A)}function d4B(...A){tX("fatal",...A)}var L$Q=qA(yA(),1),q$Q=qA(fpA(),1);var vp=qA(NB(),1),hO={};function EQ(A,Q,B){if(B)return tlB(A,Q,B);return olB(A,Q)}function olB(A,Q){return Object.assign((B)=>{let Y=hO[A];if(Y){if(B)Y.setConfig(B);return Y}let J=Q(B);return hO[A]=J,vp.registerInstrumentations({instrumentations:[J]}),J},{id:A})}function tlB(A,Q,B){return Object.assign((Y)=>{let J=B(Y),C=hO[A];if(C)return C.setConfig(J),C;let X=new Q(J);return hO[A]=X,vp.registerInstrumentations({instrumentations:[X]}),X},{id:A})}function GF(A){let Q=!1,B=[];if(!elB(A))Q=!0;else{let J=A._wrap;A._wrap=(...C)=>{return Q=!0,B.forEach((X)=>X()),B=[],J(...C)}}return(J)=>{if(Q)J();else B.push(J)}}function elB(A){return typeof A._wrap==="function"}function p0(A,Q){A.setAttribute(DQ,Q)}function $L(A){let Q=A.protocol||"",B=A.hostname||A.host||"",Y=!A.port||A.port===80||A.port===443||/^(.*):(\d+)$/.test(B)?"":`:${A.port}`,J=A.path?A.path:"/";return`${Q}//${B}${Y}${J}`}var NK=qA(yA(),1),QP=qA(MB(),1),HL=qA(NB(),1);import{subscribe as eO,unsubscribe as AP}from"node:diagnostics_channel";var oQ=qA(uB(),1);var l9=qA(yA(),1),bA=qA(yA(),1),m5=qA(MB(),1),ZF=qA(Wi(),1),Hi="sentry.parentIsRemote",HK="sentry.graphql.operation";function Di(A){if("parentSpanId"in A)return A.parentSpanId;else if("parentSpanContext"in A)return A.parentSpanContext?.spanId;return}function Ni(A){let Q=A;return!!Q.attributes&&typeof Q.attributes==="object"}function KI0(A){return typeof A.kind==="number"}function VI0(A){return!!A.status}function sZQ(A){return!!A.name}function II0(A){if(!Ni(A))return{};let Q=A.attributes[oQ.ATTR_URL_FULL]||A.attributes[oQ.SEMATTRS_HTTP_URL],B={url:Q,"http.method":A.attributes[oQ.ATTR_HTTP_REQUEST_METHOD]||A.attributes[oQ.SEMATTRS_HTTP_METHOD]};if(!B["http.method"]&&B.url)B["http.method"]="GET";try{if(typeof Q==="string"){let Y=QF(Q);if(B.url=BF(Y),Y.search)B["http.query"]=Y.search;if(Y.hash)B["http.fragment"]=Y.hash}}catch{}return B}function HI0(A){if(KI0(A))return A.kind;return bA.SpanKind.INTERNAL}var Zi="sentry-trace",$i="baggage",Li="sentry.dsc",qi="sentry.sampled_not_recording",rZQ="sentry.url",DI0="sentry.sample_rand",NI0="sentry.sample_rate",aZQ=bA.createContextKey("sentry_scopes"),Ui=bA.createContextKey("sentry_fork_isolation_scope"),Ei=bA.createContextKey("sentry_fork_set_scope"),Ki=bA.createContextKey("sentry_fork_set_isolation_scope"),oZQ="_scopeContext";function DK(A){return A.getValue(aZQ)}function tZQ(A,Q){return A.setValue(aZQ,Q)}function LI0(A,Q){d0(A,oZQ,Q)}function Mi(A){return A[oZQ]}function IK(A){let{traceFlags:Q,traceState:B}=A,Y=B?B.get(qi)==="1":!1;if(Q===bA.TraceFlags.SAMPLED)return!0;if(Y)return!1;let J=B?B.get(Li):void 0,C=J?r7(J):void 0;if(C?.sampled==="true")return!0;if(C?.sampled==="false")return!1;return}function eZQ(A,Q,B){let Y=Q[oQ.ATTR_HTTP_REQUEST_METHOD]||Q[oQ.SEMATTRS_HTTP_METHOD];if(Y)return MI0({attributes:Q,name:A,kind:B},Y);let J=Q[oQ.SEMATTRS_DB_SYSTEM],C=typeof Q[YQ]==="string"&&Q[YQ].startsWith("cache.");if(J&&!C)return qI0({attributes:Q,name:A});let X=Q[A0]==="custom"?"custom":"route";if(Q[oQ.SEMATTRS_RPC_SERVICE])return{...KL(A,Q,"route"),op:"rpc"};if(Q[oQ.SEMATTRS_MESSAGING_SYSTEM])return{...KL(A,Q,X),op:"message"};let W=Q[oQ.SEMATTRS_FAAS_TRIGGER];if(W)return{...KL(A,Q,X),op:W.toString()};return{op:void 0,description:A,source:"custom"}}function A$Q(A){let Q=Ni(A)?A.attributes:{},B=sZQ(A)?A.name:"",Y=HI0(A);return eZQ(B,Q,Y)}function qI0({attributes:A,name:Q}){let B=A[lC];if(typeof B==="string")return{op:"db",description:B,source:A[A0]||"custom"};if(A[A0]==="custom")return{op:"db",description:Q,source:"custom"};let Y=A[oQ.SEMATTRS_DB_STATEMENT];return{op:"db",description:Y?Y.toString():Q,source:"task"}}function MI0({name:A,kind:Q,attributes:B},Y){let J=["http"];switch(Q){case bA.SpanKind.CLIENT:J.push("client");break;case bA.SpanKind.SERVER:J.push("server");break}if(B["sentry.http.prefetch"])J.push("prefetch");let{urlPath:C,url:X,query:G,fragment:F,hasRoute:W}=RI0(B,Q);if(!C)return{...KL(A,B),op:J.join(".")};let Z=B[HK],U=`${Y} ${C}`,$=Z?`${U} (${zI0(Z)})`:U,E=W||C==="/"?"route":"url",K={};if(X)K.url=X;if(G)K["http.query"]=G;if(F)K["http.fragment"]=F;let I=Q===bA.SpanKind.CLIENT||Q===bA.SpanKind.SERVER,H=!`${B[DQ]||"manual"}`.startsWith("auto"),D=B[A0]==="custom",L=B[lC],z=!D&&L==null&&(I||!H),{description:M,source:N}=z?{description:$,source:E}:KL(A,B);return{op:J.join("."),description:M,source:N,data:K}}function zI0(A){if(Array.isArray(A)){let Q=A.slice().sort();if(Q.length<=5)return Q.join(", ");else return`${Q.slice(0,5).join(", ")}, +${Q.length-5}`}return`${A}`}function RI0(A,Q){let B=A[oQ.SEMATTRS_HTTP_TARGET],Y=A[oQ.SEMATTRS_HTTP_URL]||A[oQ.ATTR_URL_FULL],J=A[oQ.ATTR_HTTP_ROUTE],C=typeof Y==="string"?QF(Y):void 0,X=C?BF(C):void 0,G=C?.search||void 0,F=C?.hash||void 0;if(typeof J==="string")return{urlPath:J,url:X,query:G,fragment:F,hasRoute:!0};if(Q===bA.SpanKind.SERVER&&typeof B==="string")return{urlPath:dE(B),url:X,query:G,fragment:F,hasRoute:!1};if(C)return{urlPath:X,url:X,query:G,fragment:F,hasRoute:!1};if(typeof B==="string")return{urlPath:dE(B),url:X,query:G,fragment:F,hasRoute:!1};return{urlPath:void 0,url:X,query:G,fragment:F,hasRoute:!1}}function KL(A,Q,B="custom"){let Y=Q[A0]||B,J=Q[lC];if(J&&typeof J==="string")return{description:J,source:Y};return{description:A,source:Y}}function Q$Q(A){A.on("createDsc",(Q,B)=>{if(!B)return;let C=eA(B).data[A0],{description:X}=sZQ(B)?A$Q(B):{description:void 0};if(C!=="url"&&X)Q.transaction=X;if(X9()){let G=IK(B.spanContext());Q.sampled=G==null?void 0:String(G)}})}function B$Q(){return bA.trace.getActiveSpan()}var F6=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__;function Y$Q({dsc:A,sampled:Q}){let B=A?a7(A):void 0,Y=new m5.TraceState,J=B?Y.set(Li,B):Y;return Q===!1?J.set(qi,"1"):J}var J$Q=new Set;function C$Q(){return Array.from(J$Q)}function oO(A){J$Q.add(A)}class zi extends m5.W3CBaggagePropagator{constructor(){super();oO("SentryPropagator"),this._urlMatchesTargetsMap=new _8(100)}inject(A,Q,B){if(m5.isTracingSuppressed(A)){F6&&e.log("[Tracing] Not injecting trace data for url because tracing is suppressed.");return}let Y=bA.trace.getSpan(A),J=Y&&OI0(Y),C=hA()?.getOptions()?.tracePropagationTargets;if(!VL(J,C,this._urlMatchesTargetsMap)){F6&&e.log("[Tracing] Not injecting trace data for url because it does not match tracePropagationTargets:",J);return}let X=jI0(Q),G=bA.propagation.getBaggage(A)||bA.propagation.createBaggage({}),{dynamicSamplingContext:F,traceId:W,spanId:Z,sampled:U}=X$Q(A);if(X){let $=wZ(X);if($)Object.entries($).forEach(([E,K])=>{G=G.setEntry(E,{value:K})})}if(F)G=Object.entries(F).reduce(($,[E,K])=>{if(K)return $.setEntry(`${eD}${E}`,{value:K});return $},G);if(W&&W!==bA.INVALID_TRACEID)B.set(Q,Zi,o7(W,Z,U));super.inject(bA.propagation.setBaggage(A,G),Q,B)}extract(A,Q,B){let Y=B.get(Q,Zi),J=B.get(Q,$i),C=Y?Array.isArray(Y)?Y[0]:Y:void 0;return F$Q(G$Q(A,{sentryTrace:C,baggage:J}))}fields(){return[Zi,$i]}}var pZQ="[Tracing] Not injecting trace data for url because it does not match tracePropagationTargets:";function VL(A,Q,B){if(typeof A!=="string"||!Q)return!0;let Y=B?.get(A);if(Y!==void 0)return F6&&!Y&&e.log(pZQ,A),Y;let J=l7(A,Q);return B?.set(A,J),F6&&!J&&e.log(pZQ,A),J}function X$Q(A){let Q=bA.trace.getSpan(A);if(Q?.spanContext().isRemote){let X=Q.spanContext();return{dynamicSamplingContext:c0(Q),traceId:X.traceId,spanId:void 0,sampled:IK(X)}}if(Q){let X=Q.spanContext();return{dynamicSamplingContext:c0(Q),traceId:X.traceId,spanId:X.spanId,sampled:IK(X)}}let B=DK(A)?.scope||sQ(),Y=hA(),J=B.getPropagationContext();return{dynamicSamplingContext:Y?rX(Y,B):void 0,traceId:J.traceId,spanId:J.propagationSpanId,sampled:J.sampled}}function G$Q(A,{sentryTrace:Q,baggage:B}){let Y=jZ(Q,B),{traceId:J,parentSpanId:C,sampled:X,dsc:G}=Y;if(!C)return A;let F=PI0({traceId:J,spanId:C,sampled:X,dsc:G});return bA.trace.setSpanContext(A,F)}function wI0(A,Q,B){let Y=F$Q(G$Q(A,Q));return bA.context.with(Y,B)}function F$Q(A){let Q=DK(A),B={scope:Q?Q.scope:sQ().clone(),isolationScope:Q?Q.isolationScope:RQ()};return tZQ(A,B)}function jI0(A){try{let Q=A[$i];return Array.isArray(Q)?Q.join(","):Q}catch{return}}function OI0(A){let Q=eA(A).data,B=Q[oQ.SEMATTRS_HTTP_URL]||Q[oQ.ATTR_URL_FULL];if(typeof B==="string")return B;let Y=A.spanContext().traceState?.get(rZQ);if(Y)return Y;return}function PI0({spanId:A,traceId:Q,sampled:B,dsc:Y}){let J=Y$Q({dsc:Y,sampled:B});return{traceId:Q,spanId:A,isRemote:!0,traceFlags:B?bA.TraceFlags.SAMPLED:bA.TraceFlags.NONE,traceState:J}}function TI0(A,Q){let B=Ri(),{name:Y,parentSpan:J}=A;return Oi(J)(()=>{let X=ji(A.scope,A.forceTransaction),F=A.onlyIfParent&&!bA.trace.getSpan(X)?m5.suppressTracing(X):X,W=wi(A);return B.startActiveSpan(Y,W,F,(Z)=>{return SZ(()=>Q(Z),()=>{if(eA(Z).status===void 0)Z.setStatus({code:bA.SpanStatusCode.ERROR})},()=>Z.end())})})}function SI0(A,Q){let B=Ri(),{name:Y,parentSpan:J}=A;return Oi(J)(()=>{let X=ji(A.scope,A.forceTransaction),F=A.onlyIfParent&&!bA.trace.getSpan(X)?m5.suppressTracing(X):X,W=wi(A);return B.startActiveSpan(Y,W,F,(Z)=>{return SZ(()=>Q(Z,()=>Z.end()),()=>{if(eA(Z).status===void 0)Z.setStatus({code:bA.SpanStatusCode.ERROR})})})})}function kI0(A){let Q=Ri(),{name:B,parentSpan:Y}=A;return Oi(Y)(()=>{let C=ji(A.scope,A.forceTransaction),G=A.onlyIfParent&&!bA.trace.getSpan(C)?m5.suppressTracing(C):C,F=wi(A);return Q.startSpan(B,F,G)})}function W$Q(A,Q){let B=A?bA.trace.setSpan(bA.context.active(),A):bA.trace.deleteSpan(bA.context.active());return bA.context.with(B,()=>Q(sQ()))}function Ri(){return hA()?.tracer||bA.trace.getTracer("@sentry/opentelemetry",u0)}function wi(A){let{startTime:Q,attributes:B,kind:Y,op:J,links:C}=A,X=typeof Q==="number"?_I0(Q):Q;return{attributes:J?{[YQ]:J,...B}:B,kind:Y,links:C,startTime:X}}function _I0(A){return A<9999999999?A*1000:A}function ji(A,Q){let B=vI0(A),Y=bA.trace.getSpan(B);if(!Y)return B;if(!Q)return B;let J=bA.trace.deleteSpan(B),{spanId:C,traceId:X}=Y.spanContext(),G=IK(Y.spanContext()),F=$0(Y),W=c0(F),Z=Y$Q({dsc:W,sampled:G}),U={traceId:X,spanId:C,isRemote:!0,traceFlags:G?bA.TraceFlags.SAMPLED:bA.TraceFlags.NONE,traceState:Z};return bA.trace.setSpanContext(J,U)}function vI0(A){if(A){let Q=Mi(A);if(Q)return Q}return bA.context.active()}function yI0(A,Q){return wI0(bA.context.active(),A,Q)}function Z$Q(A,Q){let B=Mi(Q),Y=B&&bA.trace.getSpan(B),J=Y?t7(Y):PE(Q);return[Y?c0(Y):rX(A,Q),J]}function Oi(A){return A!==void 0?(Q)=>{return W$Q(A,Q)}:(Q)=>Q()}function hI0(A){let Q=m5.suppressTracing(bA.context.active());return bA.context.with(Q,A)}function $$Q(A){A.on("preprocessEvent",(Q)=>{let B=B$Q();if(!B||Q.type==="transaction")return;Q.contexts={trace:t7(B),...Q.contexts};let Y=$0(B);return Q.sdkProcessingMetadata={dynamicSamplingContext:c0(Y),...Q.sdkProcessingMetadata},Q})}function gI0({span:A}={}){let Q=l9.context.active();if(A){let{scope:X}=pC(A);Q=X&&Mi(X)||l9.trace.setSpan(l9.context.active(),A)}let{traceId:B,spanId:Y,sampled:J,dynamicSamplingContext:C}=X$Q(Q);return{"sentry-trace":o7(B,Y,J),baggage:a7(C)}}function tO(){function A(){let G=l9.context.active(),F=DK(G);if(F)return F;return{scope:jE(),isolationScope:R5()}}function Q(G){let F=l9.context.active();return l9.context.with(F,()=>{return G(C())})}function B(G,F){let W=l9.context.active();return l9.context.with(W.setValue(Ei,G),()=>{return F(G)})}function Y(G){let F=l9.context.active();return l9.context.with(F.setValue(Ui,!0),()=>{return G(X())})}function J(G,F){let W=l9.context.active();return l9.context.with(W.setValue(Ki,G),()=>{return F(X())})}function C(){return A().scope}function X(){return A().isolationScope}Nu({withScope:Q,withSetScope:B,withSetIsolationScope:J,withIsolationScope:Y,getCurrentScope:C,getIsolationScope:X,startSpan:TI0,startSpanManual:SI0,startInactiveSpan:kI0,getActiveSpan:B$Q,suppressTracing:hI0,getTraceData:gI0,continueTrace:yI0,withActiveSpan:W$Q})}function U$Q(A){class Q extends A{constructor(...B){super(...B);oO("SentryContextManager")}with(B,Y,J,...C){let X=DK(B),G=X?.scope||sQ(),F=X?.isolationScope||RQ(),W=B.getValue(Ui)===!0,Z=B.getValue(Ei),U=B.getValue(Ki),$=Z||G.clone(),E=U||(W?F.clone():F),V=tZQ(B,{scope:$,isolationScope:E}).deleteValue(Ui).deleteValue(Ei).deleteValue(Ki);return LI0($,V),super.with(V,Y,J,...C)}}return Q}function xI0(A){let Q=new Map;for(let B of A)fI0(Q,B);return Array.from(Q,function([B,Y]){return Y})}function E$Q(A){return A.attributes[Hi]!==!0?Di(A):void 0}function fI0(A,Q){let B=Q.spanContext().spanId,Y=E$Q(Q);if(!Y){Vi(A,{id:B,span:Q,children:[]});return}let J=bI0(A,Y),C=Vi(A,{id:B,span:Q,parentNode:J,children:[]});J.children.push(C)}function bI0(A,Q){let B=A.get(Q);if(B)return B;return Vi(A,{id:Q,children:[]})}function Vi(A,Q){let B=A.get(Q.id);if(B?.span)return B;if(B&&!B.span)return B.span=Q.span,B.parentNode=Q.parentNode,B;return A.set(Q.id,Q),Q}var K$Q={"1":"cancelled","2":"unknown_error","3":"invalid_argument","4":"deadline_exceeded","5":"not_found","6":"already_exists","7":"permission_denied","8":"resource_exhausted","9":"failed_precondition","10":"aborted","11":"out_of_range","12":"unimplemented","13":"internal_error","14":"unavailable","15":"data_loss","16":"unauthenticated"},mI0=(A)=>{return Object.values(K$Q).includes(A)};function V$Q(A){let Q=Ni(A)?A.attributes:{},B=VI0(A)?A.status:void 0;if(B){if(B.code===bA.SpanStatusCode.OK)return{code:s7};else if(B.code===bA.SpanStatusCode.ERROR){if(typeof B.message>"u"){let J=iZQ(Q);if(J)return J}if(B.message&&mI0(B.message))return{code:m9,message:B.message};else return{code:m9,message:"unknown_error"}}}let Y=iZQ(Q);if(Y)return Y;if(B?.code===bA.SpanStatusCode.UNSET)return{code:s7};else return{code:m9,message:"unknown_error"}}function iZQ(A){let Q=A[oQ.ATTR_HTTP_RESPONSE_STATUS_CODE]||A[oQ.SEMATTRS_HTTP_STATUS_CODE],B=A[oQ.SEMATTRS_RPC_GRPC_STATUS_CODE],Y=typeof Q==="number"?Q:typeof Q==="string"?parseInt(Q):void 0;if(typeof Y==="number")return kE(Y);if(typeof B==="string")return{code:m9,message:K$Q[B]||"unknown_error"};return}var nZQ=1000,uI0=300;class I$Q{constructor(A){this._finishedSpanBucketSize=A?.timeout||uI0,this._finishedSpanBuckets=Array(this._finishedSpanBucketSize).fill(void 0),this._lastCleanupTimestampInS=Math.floor(Date.now()/1000),this._spansToBucketEntry=new WeakMap}export(A){let Q=Math.floor(Date.now()/1000);if(this._lastCleanupTimestampInS!==Q){let J=0;if(this._finishedSpanBuckets.forEach((C,X)=>{if(C&&C.timestampInS<=Q-this._finishedSpanBucketSize)J+=C.spans.size,this._finishedSpanBuckets[X]=void 0}),J>0)F6&&e.log(`SpanExporter dropped ${J} spans because they were pending for more than ${this._finishedSpanBucketSize} seconds.`);this._lastCleanupTimestampInS=Q}let B=Q%this._finishedSpanBucketSize,Y=this._finishedSpanBuckets[B]||{timestampInS:Q,spans:new Set};if(this._finishedSpanBuckets[B]=Y,Y.spans.add(A),this._spansToBucketEntry.set(A,Y),!E$Q(A))this._clearTimeout(),this._flushTimeout=setTimeout(()=>{this.flush()},1)}flush(){this._clearTimeout();let A=[];this._finishedSpanBuckets.forEach((J)=>{if(J)A.push(...J.spans)});let Q=dI0(A),B=Q.size,Y=A.length-B;F6&&e.log(`SpanExporter exported ${B} spans, ${Y} spans are waiting for their parent spans to finish`),Q.forEach((J)=>{let C=this._spansToBucketEntry.get(J);if(C)C.spans.delete(J)})}clear(){this._finishedSpanBuckets=this._finishedSpanBuckets.fill(void 0),this._clearTimeout()}_clearTimeout(){if(this._flushTimeout)clearTimeout(this._flushTimeout),this._flushTimeout=void 0}}function dI0(A){let Q=xI0(A),B=new Set;return lI0(Q).forEach((J)=>{let C=J.span;B.add(C);let X=iI0(C),G=X.spans||[];J.children.forEach((W)=>{Ii(W,G,B)}),X.spans=G.length>nZQ?G.sort((W,Z)=>W.start_timestamp-Z.start_timestamp).slice(0,nZQ):G;let F=kZ(C.events);if(F)X.measurements=F;IN(X)}),B}function cI0(A){return!!A.span&&!A.parentNode}function lI0(A){return A.filter(cI0)}function pI0(A){let Q=A.attributes,B=Q[DQ],Y=Q[YQ],J=Q[A0];return{origin:B,op:Y,source:J}}function iI0(A){let{op:Q,description:B,data:Y,origin:J="manual",source:C}=H$Q(A),X=pC(A),G=A.attributes[j5],F={[A0]:C,[j5]:G,[YQ]:Q,[DQ]:J,...Y,...D$Q(A.attributes)},{links:W}=A,{traceId:Z,spanId:U}=A.spanContext(),$=Di(A),E=V$Q(A),K={parent_span_id:$,span_id:U,trace_id:Z,data:F,origin:J,op:Q,status:PZ(E),links:OZ(W)},I=F[oQ.ATTR_HTTP_RESPONSE_STATUS_CODE],V=typeof I==="number"?{response:{status_code:I}}:void 0;return{contexts:{trace:K,otel:{resource:A.resource.attributes},...V},spans:[],start_timestamp:u9(A.startTime),timestamp:u9(A.endTime),transaction:B,type:"transaction",sdkProcessingMetadata:{capturedSpanScope:X.scope,capturedSpanIsolationScope:X.isolationScope,sampleRate:G,dynamicSamplingContext:c0(A)},...C&&{transaction_info:{source:C}}}}function Ii(A,Q,B){let Y=A.span;if(Y)B.add(Y);if(!Y){A.children.forEach((L)=>{Ii(L,Q,B)});return}let C=Y.spanContext().spanId,X=Y.spanContext().traceId,G=Di(Y),{attributes:F,startTime:W,endTime:Z,links:U}=Y,{op:$,description:E,data:K,origin:I="manual"}=H$Q(Y),V={[DQ]:I,[YQ]:$,...D$Q(F),...K},H=V$Q(Y),D={span_id:C,trace_id:X,data:V,description:E,parent_span_id:G,start_timestamp:u9(W),timestamp:u9(Z)||void 0,status:PZ(H),op:$,origin:I,measurements:kZ(Y.events),links:OZ(U)};Q.push(D),A.children.forEach((L)=>{Ii(L,Q,B)})}function H$Q(A){let{op:Q,source:B,origin:Y}=pI0(A),{op:J,description:C,source:X,data:G}=A$Q(A),F=Q||J,W=B||X,Z={...G,...nI0(A)};return{op:F,description:C,source:W,origin:Y,data:Z}}function D$Q(A){let Q={...A};return delete Q[j5],delete Q[Hi],delete Q[lC],Q}function nI0(A){let Q=A.attributes,B={};if(A.kind!==bA.SpanKind.INTERNAL)B["otel.kind"]=bA.SpanKind[A.kind];let Y=Q[oQ.SEMATTRS_HTTP_STATUS_CODE];if(Y)B[oQ.ATTR_HTTP_RESPONSE_STATUS_CODE]=Y;let J=II0(A);if(J.url)B.url=J.url;if(J["http.query"])B["http.query"]=J["http.query"].slice(1);if(J["http.fragment"])B["http.fragment"]=J["http.fragment"].slice(1);return B}function sI0(A,Q){let B=bA.trace.getSpan(Q),Y=DK(Q);if(B&&!B.spanContext().isRemote)vE(B,A);if(B?.spanContext().isRemote)A.setAttribute(Hi,!0);if(Q===bA.ROOT_CONTEXT)Y={scope:jE(),isolationScope:R5()};if(Y)tD(A,Y.scope,Y.isolationScope);XN(A),hA()?.emit("spanStart",A)}function rI0(A){GN(A),hA()?.emit("spanEnd",A)}class Pi{constructor(A){oO("SentrySpanProcessor"),this._exporter=new I$Q(A)}async forceFlush(){this._exporter.flush()}async shutdown(){this._exporter.clear()}onStart(A,Q){sI0(A,Q)}onEnd(A){rI0(A),this._exporter.export(A)}}class Ti{constructor(A){this._client=A,oO("SentrySampler")}shouldSample(A,Q,B,Y,J,C){let X=this._client.getOptions(),G=tI0(A),F=G?.spanContext();if(!X9(X))return VK({decision:void 0,context:A,spanAttributes:J});let W=J[oQ.SEMATTRS_HTTP_METHOD]||J[oQ.ATTR_HTTP_REQUEST_METHOD];if(Y===bA.SpanKind.CLIENT&&W&&(!G||F?.isRemote))return VK({decision:void 0,context:A,spanAttributes:J});let Z=G?aI0(G,Q,B):void 0;if(!(!G||F?.isRemote))return VK({decision:Z?ZF.SamplingDecision.RECORD_AND_SAMPLED:ZF.SamplingDecision.NOT_RECORD,context:A,spanAttributes:J});let{description:$,data:E,op:K}=eZQ(B,J,Y),I={...E,...J};if(K)I[YQ]=K;let V={decision:!0};if(this._client.emit("beforeSampling",{spanAttributes:I,spanName:$,parentSampled:Z,parentContext:F},V),!V.decision)return VK({decision:void 0,context:A,spanAttributes:J});let{isolationScope:H}=DK(A)??{},D=F?.traceState?F.traceState.get(Li):void 0,L=D?r7(D):void 0,z=T8(L?.sample_rand)??Math.random(),[M,N,q]=FN(X,{name:$,attributes:I,normalizedRequest:H?.getScopeData().sdkProcessingMetadata.normalizedRequest,parentSampled:Z,parentSampleRate:T8(L?.sample_rate)},z),w=`${W}`.toUpperCase();if(w==="OPTIONS"||w==="HEAD")return F6&&e.log(`[Tracing] Not sampling span because HTTP method is '${w}' for ${B}`),VK({decision:ZF.SamplingDecision.NOT_RECORD,context:A,spanAttributes:J,sampleRand:z,downstreamTraceSampleRate:0});if(!M&&Z===void 0)F6&&e.log("[Tracing] Discarding root span because its trace was not chosen to be sampled."),this._client.recordDroppedEvent("sample_rate","transaction");return{...VK({decision:M?ZF.SamplingDecision.RECORD_AND_SAMPLED:ZF.SamplingDecision.NOT_RECORD,context:A,spanAttributes:J,sampleRand:z,downstreamTraceSampleRate:q?N:void 0}),attributes:{[j5]:q?N:void 0}}}toString(){return"SentrySampler"}}function aI0(A,Q,B){let Y=A.spanContext();if(bA.isSpanContextValid(Y)&&Y.traceId===Q){if(Y.isRemote){let C=IK(A.spanContext());return F6&&e.log(`[Tracing] Inheriting remote parent's sampled decision for ${B}: ${C}`),C}let J=IK(Y);return F6&&e.log(`[Tracing] Inheriting parent's sampled decision for ${B}: ${J}`),J}return}function VK({decision:A,context:Q,spanAttributes:B,sampleRand:Y,downstreamTraceSampleRate:J}){let C=oI0(Q,B);if(J!==void 0)C=C.set(NI0,`${J}`);if(Y!==void 0)C=C.set(DI0,`${Y}`);if(A==null)return{decision:ZF.SamplingDecision.NOT_RECORD,traceState:C};if(A===ZF.SamplingDecision.NOT_RECORD)return{decision:A,traceState:C.set(qi,"1")};return{decision:A,traceState:C}}function oI0(A,Q){let J=bA.trace.getSpan(A)?.spanContext()?.traceState||new m5.TraceState,C=Q[oQ.SEMATTRS_HTTP_URL]||Q[oQ.ATTR_URL_FULL];if(C&&typeof C==="string")J=J.set(rZQ,C);return J}function tI0(A){let Q=bA.trace.getSpan(A);return Q&&bA.isSpanContextValid(Q.spanContext())?Q:void 0}var fQ=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__;function IL(A,Q){if(!A)return Q;let B=wZ(A),Y=wZ(Q);if(!Y)return A;let J={...B};return Object.entries(Y).forEach(([C,X])=>{if(!J[C])J[C]=X}),Aj(J)}var Q1="@sentry/instrumentation-http",eI0=1048576;class ki extends HL.InstrumentationBase{constructor(A={}){super(Q1,QP.VERSION,A);this._propagationDecisionMap=new _8(100),this._ignoreOutgoingRequestsMap=new WeakMap}init(){let A=!1,Q=(G)=>{let F=G;this._patchServerEmitOnce(F.server)},B=(G)=>{let F=G;this._onOutgoingRequestFinish(F.request,F.response)},Y=(G)=>{let F=G;this._onOutgoingRequestFinish(F.request,void 0)},J=(G)=>{let F=G;this._onOutgoingRequestCreated(F.request)},C=(G)=>{if(A)return G;if(A=!0,eO("http.server.request.start",Q),eO("http.client.response.finish",B),eO("http.client.request.error",Y),this.getConfig().propagateTraceInOutgoingRequests)eO("http.client.request.created",J);return G},X=()=>{AP("http.server.request.start",Q),AP("http.client.response.finish",B),AP("http.client.request.error",Y),AP("http.client.request.created",J)};return[new HL.InstrumentationNodeModuleDefinition("http",["*"],C,X),new HL.InstrumentationNodeModuleDefinition("https",["*"],C,X)]}_onOutgoingRequestFinish(A,Q){fQ&&e.log(Q1,"Handling finished outgoing request");let B=this.getConfig().breadcrumbs,Y=typeof B>"u"?!0:B,J=this._ignoreOutgoingRequestsMap.get(A)??this._shouldIgnoreOutgoingRequest(A);if(this._ignoreOutgoingRequestsMap.set(A,J),Y&&!J)AH0(A,Q)}_onOutgoingRequestCreated(A){let Q=this._ignoreOutgoingRequestsMap.get(A)??this._shouldIgnoreOutgoingRequest(A);if(this._ignoreOutgoingRequestsMap.set(A,Q),Q)return;let B=$L(A),Y=hA()?.getOptions().tracePropagationTargets,J=VL(B,Y,this._propagationDecisionMap)?oX():void 0;if(!J)return;let{"sentry-trace":C,baggage:X}=J;if(C&&!A.getHeader("sentry-trace"))A.setHeader("sentry-trace",C),e.log(Q1,"Added sentry-trace header to outgoing request");if(X){let G=IL(A.getHeader("baggage"),X);if(G)A.setHeader("baggage",G)}}_patchServerEmitOnce(A){let Q=A.emit;if(Q.__sentry_patched__)return;fQ&&e.log(Q1,"Patching server.emit");let B=this,{ignoreIncomingRequestBody:Y,maxIncomingRequestBodySize:J="medium"}=B.getConfig(),C=new Proxy(Q,{apply(X,G,F){if(F[0]!=="request")return X.apply(G,F);fQ&&e.log(Q1,"Handling incoming request");let W=RQ().clone(),Z=F[1],U=F[2],$=mE(Z),E=Z.ip||Z.socket?.remoteAddress,K=Z.url||"/";if(!Y?.(K,Z)&&J!=="none")BH0(Z,W,J);W.setSDKProcessingMetadata({normalizedRequest:$,ipAddress:E});let I=(Z.method||"GET").toUpperCase(),V=dE(K),H=`${I} ${V}`;if(W.setTransactionName(H),B.getConfig().trackIncomingRequestsAsSessions!==!1)JH0({requestIsolationScope:W,response:U,sessionFlushingDelayMS:B.getConfig().sessionFlushingDelayMS??60000});return sX(W,()=>{if(sQ().getPropagationContext().propagationSpanId=O8(),!B.getConfig().extractIncomingTraceFromHeader)return X.apply(G,F);let D=NK.propagation.extract(NK.context.active(),$.headers);return NK.context.with(D,()=>{return X.apply(G,F)})})}});d0(C,"__sentry_patched__",!0),A.emit=C}_shouldIgnoreOutgoingRequest(A){if(QP.isTracingSuppressed(NK.context.active()))return!0;let Q=this.getConfig().ignoreOutgoingRequests;if(!Q)return!1;let B=YH0(A),Y=$L(A);return Q(Y,B)}}function AH0(A,Q){let B=QH0(A),Y=Q?.statusCode,J=RN(Y);G9({category:"http",data:{status_code:Y,...B},type:"http",level:J},{event:"response",request:A,response:Q})}function QH0(A){try{let Q=A.getHeader("host")||A.host,B=new URL(A.path,`${A.protocol}//${Q}`),Y=QF(B.toString()),J={url:BF(Y),"http.method":A.method||"GET"};if(Y.search)J["http.query"]=Y.search;if(Y.hash)J["http.fragment"]=Y.hash;return J}catch{return{}}}function BH0(A,Q,B){let Y=0,J=[];fQ&&e.log(Q1,"Patching request.on");let C=new WeakMap,X=B==="small"?1000:B==="medium"?1e4:eI0;try{A.on=new Proxy(A.on,{apply:(G,F,W)=>{let[Z,U,...$]=W;if(Z==="data"){fQ&&e.log(Q1,`Handling request.on("data") with maximum body size of ${X}b`);let E=new Proxy(U,{apply:(K,I,V)=>{try{let H=V[0],D=Buffer.from(H);if(Y{let[,Z]=W,U=C.get(Z);if(U){C.delete(Z);let $=W.slice();return $[1]=U,Reflect.apply(G,F,$)}return Reflect.apply(G,F,W)}}),A.on("end",()=>{try{let G=Buffer.concat(J).toString("utf-8");if(G){let W=Buffer.byteLength(G,"utf-8")>X?`${Buffer.from(G).subarray(0,X-3).toString("utf-8")}...`:G;Q.setSDKProcessingMetadata({normalizedRequest:{data:W}})}}catch(G){if(fQ)e.error(Q1,"Error building captured request body",G)}})}catch(G){if(fQ)e.error(Q1,"Error patching request to capture body",G)}}function YH0(A){return{method:A.method,protocol:A.protocol,host:A.host,hostname:A.host,path:A.path,headers:A.getHeaders()}}function JH0({requestIsolationScope:A,response:Q,sessionFlushingDelayMS:B}){A.setSDKProcessingMetadata({requestSession:{status:"ok"}}),Q.once("close",()=>{let Y=hA(),J=A.getScopeData().sdkProcessingMetadata.requestSession;if(Y&&J){fQ&&e.debug(`Recorded request session with status: ${J.status}`);let C=new Date;C.setSeconds(0,0);let X=C.toISOString(),G=Si.get(Y),F=G?.[X]||{exited:0,crashed:0,errored:0};if(F[{ok:"exited",crashed:"crashed",errored:"errored"}[J.status]]++,G)G[X]=F;else{fQ&&e.debug("Opened new request session aggregate.");let W={[X]:F};Si.set(Y,W);let Z=()=>{clearTimeout($),U(),Si.delete(Y);let E=Object.entries(W).map(([K,I])=>({started:K,exited:I.exited,errored:I.errored,crashed:I.crashed}));Y.sendSession({aggregates:E})},U=Y.on("flush",()=>{fQ&&e.debug("Sending request session aggregate due to client flush"),Z()}),$=setTimeout(()=>{fQ&&e.debug("Sending request session aggregate due to flushing schedule"),Z()},B).unref()}}})}var Si=new Map;var _i="Http",N$Q="@opentelemetry_sentry-patched/instrumentation-http",CH0=EQ(`${_i}.sentry`,(A)=>{return new ki(A)}),vi=EQ(_i,(A)=>{let Q=new q$Q.HttpInstrumentation(A);try{Q._diag=L$Q.diag.createComponentLogger({namespace:N$Q}),Q.instrumentationName=N$Q}catch{}return Q});function XH0(A,Q={}){return typeof A.spans==="boolean"?A.spans:!Q.skipOpenTelemetrySetup}var BP=wA((A={})=>{let Q=A.dropSpansForIncomingRequestStatusCodes??[404];return{name:_i,setupOnce(){let B=XH0(A,hA()?.getOptions());if(CH0({...A,extractIncomingTraceFromHeader:!B,propagateTraceInOutgoingRequests:!B}),B){let Y=WH0(A);vi(Y)}},processEvent(B){if(B.type==="transaction"){let Y=B.contexts?.trace?.data?.["http.response.status_code"];if(typeof Y==="number"&&Q.some((J)=>{if(typeof J==="number")return J===Y;let[C,X]=J;return Y>=C&&Y<=X}))return null}return B}}});function GH0(A){return"outputData"in A&&"outputSize"in A&&!("client"in A)&&!("statusCode"in A)}function FH0(A){return A.headers["next-router-prefetch"]==="1"}function WH0(A={}){return{...A.instrumentation?._experimentalConfig,disableIncomingRequestInstrumentation:A.disableIncomingRequestSpans,ignoreOutgoingRequestHook:(B)=>{let Y=$L(B);if(!Y)return!1;let J=A.ignoreOutgoingRequests;if(J?.(Y,B))return!0;return!1},ignoreIncomingRequestHook:(B)=>{let Y=B.url,J=B.method?.toUpperCase();if(J==="OPTIONS"||J==="HEAD")return!0;let C=A.ignoreIncomingRequests;if(Y&&C?.(Y,B))return!0;return!1},requireParentforOutgoingSpans:!1,requireParentforIncomingSpans:!1,requestHook:(B,Y)=>{if(p0(B,"auto.http.otel.http"),!GH0(Y)&&FH0(Y))B.setAttribute("sentry.http.prefetch",!0);A.instrumentation?.requestHook?.(B,Y)},responseHook:(B,Y)=>{A.instrumentation?.responseHook?.(B,Y)},applyCustomAttributesOnSpan:(B,Y,J)=>{A.instrumentation?.applyCustomAttributesOnSpan?.(B,Y,J)}}}var u$Q=qA(g$Q(),1);var b$Q=qA(yA(),1),CP=qA(MB(),1),m$Q=qA(NB(),1);import*as LK from"diagnostics_channel";var UF=Hu(process.versions.node),LL=UF.major,x$Q=UF.minor;var JP="sentry-trace",yi="baggage",f$Q=/baggage: (.*)\r\n/;class gi extends m$Q.InstrumentationBase{constructor(A={}){super("@sentry/instrumentation-node-fetch",CP.VERSION,A);this._channelSubs=[],this._propagationDecisionMap=new _8(100),this._ignoreOutgoingRequestsMap=new WeakMap}init(){return}disable(){super.disable(),this._channelSubs.forEach((A)=>A.unsubscribe()),this._channelSubs=[]}enable(){if(super.enable(),this._channelSubs=this._channelSubs||[],this._channelSubs.length>0)return;this._subscribeToChannel("undici:request:create",this._onRequestCreated.bind(this)),this._subscribeToChannel("undici:request:headers",this._onResponseHeaders.bind(this))}_onRequestCreated({request:A}){if(this.getConfig().enabled===!1)return;let Y=this._shouldIgnoreOutgoingRequest(A);if(this._ignoreOutgoingRequestsMap.set(A,Y),Y)return;let J=hi(A.origin,A.path),C=hA()?.getOptions().tracePropagationTargets,X=VL(J,C,this._propagationDecisionMap)?oX():void 0;if(!X)return;let{"sentry-trace":G,baggage:F}=X;if(Array.isArray(A.headers)){let W=A.headers;if(G&&!W.includes(JP))W.push(JP,G);let Z=W.findIndex((U)=>U===yi);if(F&&Z===-1)W.push(yi,F);else if(F){let U=W[Z+1],$=IL(U,F);if($)W[Z+1]=$}}else{let W=A.headers;if(G&&!W.includes(`${JP}:`))A.headers+=`${JP}: ${G}\r -`;let Z=A.headers.match(f$Q)?.[1];if(F&&!Z)A.headers+=`${yi}: ${F}\r -`;else if(F){let U=IL(Z,F);if(U)A.headers=A.headers.replace(f$Q,`baggage: ${U}\r -`)}}}_onResponseHeaders({request:A,response:Q}){let B=this.getConfig();if(B.enabled===!1)return;let J=B.breadcrumbs,C=typeof J>"u"?!0:J,X=this._ignoreOutgoingRequestsMap.get(A);if(C&&!X)EH0(A,Q)}_subscribeToChannel(A,Q){let B=LL>18||LL===18&&x$Q>=19,Y;if(B)LK.subscribe?.(A,Q),Y=()=>LK.unsubscribe?.(A,Q);else{let J=LK.channel(A);J.subscribe(Q),Y=()=>J.unsubscribe(Q)}this._channelSubs.push({name:A,unsubscribe:Y})}_shouldIgnoreOutgoingRequest(A){if(CP.isTracingSuppressed(b$Q.context.active()))return!0;let Q=hi(A.origin,A.path),B=this.getConfig().ignoreOutgoingRequests;if(typeof B!=="function"||!Q)return!1;return B(Q)}}function EH0(A,Q){let B=KH0(A),Y=Q.statusCode,J=RN(Y);G9({category:"http",data:{status_code:Y,...B},type:"http",level:J},{event:"response",request:A,response:Q})}function KH0(A){try{let Q=hi(A.origin,A.path),B=QF(Q),Y={url:BF(B),"http.method":A.method||"GET"};if(B.search)Y["http.query"]=B.search;if(B.hash)Y["http.fragment"]=B.hash;return Y}catch{return{}}}function hi(A,Q="/"){try{return new URL(Q,A).toString()}catch{let B=`${A}`;if(B.endsWith("/")&&Q.startsWith("/"))return`${B}${Q.slice(1)}`;if(!B.endsWith("/")&&!Q.startsWith("/"))return`${B}/${Q.slice(1)}`;return`${B}${Q}`}}var d$Q="NodeFetch",VH0=EQ(d$Q,u$Q.UndiciInstrumentation,(A)=>{return LH0(A)}),IH0=EQ(`${d$Q}.sentry`,gi,(A)=>{return A}),HH0=(A={})=>{return{name:"NodeFetch",setupOnce(){if(NH0(A,hA()?.getOptions()))VH0(A);IH0(A)}}},XP=wA(HH0);function DH0(A,Q="/"){let B=`${A}`;if(B.endsWith("/")&&Q.startsWith("/"))return`${B}${Q.slice(1)}`;if(!B.endsWith("/")&&!Q.startsWith("/"))return`${B}/${Q.slice(1)}`;return`${B}${Q}`}function NH0(A,Q={}){return typeof A.spans==="boolean"?A.spans:!Q.skipOpenTelemetrySetup}function LH0(A={}){return{requireParentforSpans:!1,ignoreRequestHook:(B)=>{let Y=DH0(B.origin,B.path),J=A.ignoreOutgoingRequests;return!!(J&&Y&&J(Y))},startSpanHook:()=>{return{[DQ]:"auto.http.otel.node_fetch"}}}}var W4Q=qA(G4Q(),1);var F4Q="FileSystem",Z4Q=wA((A={})=>{return{name:F4Q,setupOnce(){EQ(F4Q,()=>new W4Q.FsInstrumentation({requireParentSpan:!0,endHook(Q,{args:B,span:Y,error:J}){if(Y.updateName(`fs.${Q}`),Y.setAttributes({[YQ]:"file",[DQ]:"auto.file.fs"}),A.recordErrorMessagesAsSpanAttributes){if(typeof B[0]==="string"&&vH0.includes(Q))Y.setAttribute("path_argument",B[0]);else if(typeof B[0]==="string"&&typeof B[1]==="string"&&_H0.includes(Q))Y.setAttribute("target_argument",B[0]),Y.setAttribute("path_argument",B[1]);else if(typeof B[0]==="string"&&kH0.includes(Q))Y.setAttribute("prefix_argument",B[0]);else if(typeof B[0]==="string"&&typeof B[1]==="string"&&SH0.includes(Q))Y.setAttribute("existing_path_argument",B[0]),Y.setAttribute("new_path_argument",B[1]);else if(typeof B[0]==="string"&&typeof B[1]==="string"&&TH0.includes(Q))Y.setAttribute("src_argument",B[0]),Y.setAttribute("dest_argument",B[1]);else if(typeof B[0]==="string"&&typeof B[1]==="string"&&PH0.includes(Q))Y.setAttribute("old_path_argument",B[0]),Y.setAttribute("new_path_argument",B[1])}if(J&&A.recordErrorMessagesAsSpanAttributes)Y.setAttribute("fs_error",J.message)}}))()}}}),PH0=["rename","renameSync"],TH0=["copyFile","cp","copyFileSync","cpSync"],SH0=["link","linkSync"],kH0=["mkdtemp","mkdtempSync"],_H0=["symlink","symlinkSync"],vH0=["access","appendFile","chmod","chown","exists","mkdir","lchown","lstat","lutimes","open","opendir","readdir","readFile","readlink","realpath","realpath.native","rm","rmdir","stat","truncate","unlink","utimes","writeFile","accessSync","appendFileSync","chmodSync","chownSync","existsSync","lchownSync","lstatSync","lutimesSync","opendirSync","mkdirSync","openSync","readdirSync","readFileSync","readlinkSync","realpathSync","realpathSync.native","rmdirSync","rmSync","statSync","truncateSync","unlinkSync","utimesSync","writeFileSync"];import{execFile as yH0}from"node:child_process";import{readFile as hH0,readdir as gH0}from"node:fs";import*as pY from"node:os";import{join as xH0}from"node:path";import{promisify as U4Q}from"node:util";var fH0=U4Q(hH0),bH0=U4Q(gH0),mH0="Context",uH0=(A={})=>{let Q,B={app:!0,os:!0,device:!0,culture:!0,cloudResource:!0,...A};async function Y(C){if(Q===void 0)Q=J();let X=dH0(await Q);return C.contexts={...C.contexts,app:{...X.app,...C.contexts?.app},os:{...X.os,...C.contexts?.os},device:{...X.device,...C.contexts?.device},culture:{...X.culture,...C.contexts?.culture},cloud_resource:{...X.cloud_resource,...C.contexts?.cloud_resource}},C}async function J(){let C={};if(B.os)C.os=await cH0();if(B.app)C.app=pH0();if(B.device)C.device=iH0(B.device);if(B.culture){let X=lH0();if(X)C.culture=X}if(B.cloudResource)C.cloud_resource=tH0();return C}return{name:mH0,processEvent(C){return Y(C)}}},WP=wA(uH0);function dH0(A){if(A.app?.app_memory)A.app.app_memory=process.memoryUsage().rss;if(A.app?.free_memory&&typeof process.availableMemory==="function"){let Q=process.availableMemory?.();if(Q!=null)A.app.free_memory=Q}if(A.device?.free_memory)A.device.free_memory=pY.freemem();return A}async function cH0(){let A=pY.platform();switch(A){case"darwin":return aH0();case"linux":return oH0();default:return{name:nH0[A]||A,version:pY.release()}}}function lH0(){try{if(typeof process.versions.icu!=="string")return;let A=new Date(900000000);if(new Intl.DateTimeFormat("es",{month:"long"}).format(A)==="enero"){let B=Intl.DateTimeFormat().resolvedOptions();return{locale:B.locale,timezone:B.timeZone}}}catch(A){}return}function pH0(){let A=process.memoryUsage().rss,B={app_start_time:new Date(Date.now()-process.uptime()*1000).toISOString(),app_memory:A};if(typeof process.availableMemory==="function"){let Y=process.availableMemory?.();if(Y!=null)B.free_memory=Y}return B}function iH0(A){let Q={},B;try{B=pY.uptime()}catch(Y){}if(typeof B==="number")Q.boot_time=new Date(Date.now()-B*1000).toISOString();if(Q.arch=pY.arch(),A===!0||A.memory)Q.memory_size=pY.totalmem(),Q.free_memory=pY.freemem();if(A===!0||A.cpu){let Y=pY.cpus(),J=Y?.[0];if(J)Q.processor_count=Y.length,Q.cpu_description=J.model,Q.processor_frequency=J.speed}return Q}var nH0={aix:"IBM AIX",freebsd:"FreeBSD",openbsd:"OpenBSD",sunos:"SunOS",win32:"Windows"},sH0=[{name:"fedora-release",distros:["Fedora"]},{name:"redhat-release",distros:["Red Hat Linux","Centos"]},{name:"redhat_version",distros:["Red Hat Linux"]},{name:"SuSE-release",distros:["SUSE Linux"]},{name:"lsb-release",distros:["Ubuntu Linux","Arch Linux"]},{name:"debian_version",distros:["Debian"]},{name:"debian_release",distros:["Debian"]},{name:"arch-release",distros:["Arch Linux"]},{name:"gentoo-release",distros:["Gentoo Linux"]},{name:"novell-release",distros:["SUSE Linux"]},{name:"alpine-release",distros:["Alpine Linux"]}],rH0={alpine:(A)=>A,arch:(A)=>W6(/distrib_release=(.*)/,A),centos:(A)=>W6(/release ([^ ]+)/,A),debian:(A)=>A,fedora:(A)=>W6(/release (..)/,A),mint:(A)=>W6(/distrib_release=(.*)/,A),red:(A)=>W6(/release ([^ ]+)/,A),suse:(A)=>W6(/VERSION = (.*)\n/,A),ubuntu:(A)=>W6(/distrib_release=(.*)/,A)};function W6(A,Q){let B=A.exec(Q);return B?B[1]:void 0}async function aH0(){let A={kernel_version:pY.release(),name:"Mac OS X",version:`10.${Number(pY.release().split(".")[0])-4}`};try{let Q=await new Promise((B,Y)=>{yH0("/usr/bin/sw_vers",(J,C)=>{if(J){Y(J);return}B(C)})});A.name=W6(/^ProductName:\s+(.*)$/m,Q),A.version=W6(/^ProductVersion:\s+(.*)$/m,Q),A.build=W6(/^BuildVersion:\s+(.*)$/m,Q)}catch(Q){}return A}function $4Q(A){return A.split(" ")[0].toLowerCase()}async function oH0(){let A={kernel_version:pY.release(),name:"Linux"};try{let Q=await bH0("/etc"),B=sH0.find((G)=>Q.includes(G.name));if(!B)return A;let Y=xH0("/etc",B.name),J=(await fH0(Y,{encoding:"utf-8"})).toLowerCase(),{distros:C}=B;A.name=C.find((G)=>J.indexOf($4Q(G))>=0)||C[0];let X=$4Q(A.name);A.version=rH0[X]?.(J)}catch(Q){}return A}function tH0(){if(process.env.VERCEL)return{"cloud.provider":"vercel","cloud.region":process.env.VERCEL_REGION};else if(process.env.AWS_REGION)return{"cloud.provider":"aws","cloud.region":process.env.AWS_REGION,"cloud.platform":process.env.AWS_EXECUTION_ENV};else if(process.env.GCP_PROJECT)return{"cloud.provider":"gcp"};else if(process.env.ALIYUN_REGION_ID)return{"cloud.provider":"alibaba_cloud","cloud.region":process.env.ALIYUN_REGION_ID};else if(process.env.WEBSITE_SITE_NAME&&process.env.REGION_NAME)return{"cloud.provider":"azure","cloud.region":process.env.REGION_NAME};else if(process.env.IBM_CLOUD_REGION)return{"cloud.provider":"ibm_cloud","cloud.region":process.env.IBM_CLOUD_REGION};else if(process.env.TENCENTCLOUD_REGION)return{"cloud.provider":"tencent_cloud","cloud.region":process.env.TENCENTCLOUD_REGION,"cloud.account.id":process.env.TENCENTCLOUD_APPID,"cloud.availability_zone":process.env.TENCENTCLOUD_ZONE};else if(process.env.NETLIFY)return{"cloud.provider":"netlify"};else if(process.env.FLY_REGION)return{"cloud.provider":"fly.io","cloud.region":process.env.FLY_REGION};else if(process.env.DYNO)return{"cloud.provider":"heroku"};else return}import{createReadStream as eH0}from"node:fs";import{createInterface as AD0}from"node:readline";var xi=new _8(10),V4Q=new _8(20),QD0=7,BD0="ContextLines",YD0=1000,JD0=1e4;function CD0(A,Q,B){let Y=A.get(Q);if(Y===void 0)return A.set(Q,B),B;return Y}function XD0(A){if(A.startsWith("node:"))return!0;if(A.endsWith(".min.js"))return!0;if(A.endsWith(".min.cjs"))return!0;if(A.endsWith(".min.mjs"))return!0;if(A.startsWith("data:"))return!0;return!1}function GD0(A){if(A.lineno!==void 0&&A.lineno>JD0)return!0;if(A.colno!==void 0&&A.colno>YD0)return!0;return!1}function FD0(A,Q){let B=xi.get(A);if(B===void 0)return!1;for(let Y=Q[0];Y<=Q[1];Y++)if(B[Y]===void 0)return!1;return!0}function WD0(A,Q){if(!A.length)return[];let B=0,Y=A[0];if(typeof Y!=="number")return[];let J=K4Q(Y,Q),C=[];while(!0){if(B===A.length-1){C.push(J);break}let X=A[B+1];if(typeof X!=="number")break;if(X<=J[1])J[1]=X+Q;else C.push(J),J=K4Q(X,Q);B++}return C}function ZD0(A,Q,B){return new Promise((Y,J)=>{let C=eH0(A),X=AD0({input:C});function G(){C.destroy(),Y()}let F=0,W=0,Z=Q[W];if(Z===void 0){G();return}let U=Z[0],$=Z[1];function E(K){V4Q.set(A,1),fQ&&e.error(`Failed to read file: ${A}. Error: ${K}`),X.close(),X.removeAllListeners(),G()}C.on("error",E),X.on("error",E),X.on("close",G),X.on("line",(K)=>{if(F++,F=$){if(W===Q.length-1){X.close(),X.removeAllListeners();return}W++;let I=Q[W];if(I===void 0){X.close(),X.removeAllListeners();return}U=I[0],$=I[1]}})})}async function $D0(A,Q){let B={};if(Q>0&&A.exception?.values)for(let C of A.exception.values){if(!C.stacktrace?.frames?.length)continue;for(let X=C.stacktrace.frames.length-1;X>=0;X--){let G=C.stacktrace.frames[X],F=G?.filename;if(!G||typeof F!=="string"||typeof G.lineno!=="number"||XD0(F)||GD0(G))continue;if(!B[F])B[F]=[];B[F].push(G.lineno)}}let Y=Object.keys(B);if(Y.length==0)return A;let J=[];for(let C of Y){if(V4Q.get(C))continue;let X=B[C];if(!X)continue;X.sort((W,Z)=>W-Z);let G=WD0(X,Q);if(G.every((W)=>FD0(C,W)))continue;let F=CD0(xi,C,{});J.push(ZD0(C,G,F))}if(await Promise.all(J).catch(()=>{fQ&&e.log("Failed to read one or more source files and resolve context lines")}),Q>0&&A.exception?.values){for(let C of A.exception.values)if(C.stacktrace?.frames&&C.stacktrace.frames.length>0)UD0(C.stacktrace.frames,Q,xi)}return A}function UD0(A,Q,B){for(let Y of A)if(Y.filename&&Y.context_line===void 0&&typeof Y.lineno==="number"){let J=B.get(Y.filename);if(J===void 0)continue;ED0(Y.lineno,Y,Q,J)}}function E4Q(A){delete A.pre_context,delete A.context_line,delete A.post_context}function ED0(A,Q,B,Y){if(Q.lineno===void 0||Y===void 0){fQ&&e.error("Cannot resolve context for frame with no lineno or file contents");return}Q.pre_context=[];for(let C=I4Q(A,B);C{let Q=A.frameContextLines!==void 0?A.frameContextLines:QD0;return{name:BD0,processEvent(B){return $D0(B,Q)}}},ZP=wA(KD0);import{Worker as VD0}from"node:worker_threads";var $P;async function qK(){if($P===void 0)try{$P=!!(await import("node:inspector")).url()}catch(A){$P=!1}return $P}var qL="__SENTRY_ERROR_LOCAL_VARIABLES__";function N4Q(A,Q,B){let Y=0,J=5,C=0;return setInterval(()=>{if(C===0){if(Y>A){if(J*=2,B(J),J>86400)J=86400;C=J}}else if(C-=1,C===0)Q();Y=0},1000).unref(),()=>{Y+=1}}function D4Q(A){return A!==void 0&&(A.length===0||A==="?"||A==="")}function UP(A,Q){return A===Q||D4Q(A)&&D4Q(Q)}var ID0="LyohIEBzZW50cnkvbm9kZSA5LjIyLjAgKGNjYWJmYzIpIHwgaHR0cHM6Ly9naXRodWIuY29tL2dldHNlbnRyeS9zZW50cnktamF2YXNjcmlwdCAqLwppbXBvcnR7U2Vzc2lvbiBhcyBlfWZyb20ibm9kZTppbnNwZWN0b3IvcHJvbWlzZXMiO2ltcG9ydHt3b3JrZXJEYXRhIGFzIHR9ZnJvbSJub2RlOndvcmtlcl90aHJlYWRzIjtjb25zdCBuPSJ1bmRlZmluZWQiPT10eXBlb2YgX19TRU5UUllfREVCVUdfX3x8X19TRU5UUllfREVCVUdfXyxvPSI5LjIyLjAiLGk9Z2xvYmFsVGhpcztjb25zdCBhPVsiZGVidWciLCJpbmZvIiwid2FybiIsImVycm9yIiwibG9nIiwiYXNzZXJ0IiwidHJhY2UiXSxzPXt9O2Z1bmN0aW9uIGMoZSl7aWYoISgiY29uc29sZSJpbiBpKSlyZXR1cm4gZSgpO2NvbnN0IHQ9aS5jb25zb2xlLG49e30sbz1PYmplY3Qua2V5cyhzKTtvLmZvckVhY2goKGU9Pntjb25zdCBvPXNbZV07bltlXT10W2VdLHRbZV09b30pKTt0cnl7cmV0dXJuIGUoKX1maW5hbGx5e28uZm9yRWFjaCgoZT0+e3RbZV09bltlXX0pKX19IWZ1bmN0aW9uKGUsdCxuPWkpe2NvbnN0IGE9bi5fX1NFTlRSWV9fPW4uX19TRU5UUllfX3x8e30scz1hW29dPWFbb118fHt9O3NbZV18fChzW2VdPXQoKSl9KCJsb2dnZXIiLChmdW5jdGlvbigpe2xldCBlPSExO2NvbnN0IHQ9e2VuYWJsZTooKT0+e2U9ITB9LGRpc2FibGU6KCk9PntlPSExfSxpc0VuYWJsZWQ6KCk9PmV9O3JldHVybiBuP2EuZm9yRWFjaCgobj0+e3Rbbl09KC4uLnQpPT57ZSYmYygoKCk9PntpLmNvbnNvbGVbbl0oYFNlbnRyeSBMb2dnZXIgWyR7bn1dOmAsLi4udCl9KSl9fSkpOmEuZm9yRWFjaCgoZT0+e3RbZV09KCk9Pnt9fSkpLHR9KSk7Y29uc3Qgcj0iX19TRU5UUllfRVJST1JfTE9DQUxfVkFSSUFCTEVTX18iO2NvbnN0IHU9dDtmdW5jdGlvbiBsKC4uLmUpe3UuZGVidWcmJmMoKCgpPT5jb25zb2xlLmxvZygiW0xvY2FsVmFyaWFibGVzIFdvcmtlcl0iLC4uLmUpKSl9YXN5bmMgZnVuY3Rpb24gZihlLHQsbixvKXtjb25zdCBpPWF3YWl0IGUucG9zdCgiUnVudGltZS5nZXRQcm9wZXJ0aWVzIix7b2JqZWN0SWQ6dCxvd25Qcm9wZXJ0aWVzOiEwfSk7b1tuXT1pLnJlc3VsdC5maWx0ZXIoKGU9PiJsZW5ndGgiIT09ZS5uYW1lJiYhaXNOYU4ocGFyc2VJbnQoZS5uYW1lLDEwKSkpKS5zb3J0KCgoZSx0KT0+cGFyc2VJbnQoZS5uYW1lLDEwKS1wYXJzZUludCh0Lm5hbWUsMTApKSkubWFwKChlPT5lLnZhbHVlPy52YWx1ZSkpfWFzeW5jIGZ1bmN0aW9uIGcoZSx0LG4sbyl7Y29uc3QgaT1hd2FpdCBlLnBvc3QoIlJ1bnRpbWUuZ2V0UHJvcGVydGllcyIse29iamVjdElkOnQsb3duUHJvcGVydGllczohMH0pO29bbl09aS5yZXN1bHQubWFwKChlPT5bZS5uYW1lLGUudmFsdWU/LnZhbHVlXSkpLnJlZHVjZSgoKGUsW3Qsbl0pPT4oZVt0XT1uLGUpKSx7fSl9ZnVuY3Rpb24gZChlLHQpe2UudmFsdWUmJigidmFsdWUiaW4gZS52YWx1ZT92b2lkIDA9PT1lLnZhbHVlLnZhbHVlfHxudWxsPT09ZS52YWx1ZS52YWx1ZT90W2UubmFtZV09YDwke2UudmFsdWUudmFsdWV9PmA6dFtlLm5hbWVdPWUudmFsdWUudmFsdWU6ImRlc2NyaXB0aW9uImluIGUudmFsdWUmJiJmdW5jdGlvbiIhPT1lLnZhbHVlLnR5cGU/dFtlLm5hbWVdPWA8JHtlLnZhbHVlLmRlc2NyaXB0aW9ufT5gOiJ1bmRlZmluZWQiPT09ZS52YWx1ZS50eXBlJiYodFtlLm5hbWVdPSI8dW5kZWZpbmVkPiIpKX1hc3luYyBmdW5jdGlvbiBiKGUsdCl7Y29uc3Qgbj1hd2FpdCBlLnBvc3QoIlJ1bnRpbWUuZ2V0UHJvcGVydGllcyIse29iamVjdElkOnQsb3duUHJvcGVydGllczohMH0pLG89e307Zm9yKGNvbnN0IHQgb2Ygbi5yZXN1bHQpaWYodC52YWx1ZT8ub2JqZWN0SWQmJiJBcnJheSI9PT10LnZhbHVlLmNsYXNzTmFtZSl7Y29uc3Qgbj10LnZhbHVlLm9iamVjdElkO2F3YWl0IGYoZSxuLHQubmFtZSxvKX1lbHNlIGlmKHQudmFsdWU/Lm9iamVjdElkJiYiT2JqZWN0Ij09PXQudmFsdWUuY2xhc3NOYW1lKXtjb25zdCBuPXQudmFsdWUub2JqZWN0SWQ7YXdhaXQgZyhlLG4sdC5uYW1lLG8pfWVsc2UgdC52YWx1ZSYmZCh0LG8pO3JldHVybiBvfWxldCBwOyhhc3luYyBmdW5jdGlvbigpe2NvbnN0IHQ9bmV3IGU7dC5jb25uZWN0VG9NYWluVGhyZWFkKCksbCgiQ29ubmVjdGVkIHRvIG1haW4gdGhyZWFkIik7bGV0IG49ITE7dC5vbigiRGVidWdnZXIucmVzdW1lZCIsKCgpPT57bj0hMX0pKSx0Lm9uKCJEZWJ1Z2dlci5wYXVzZWQiLChlPT57bj0hMCxhc3luYyBmdW5jdGlvbihlLHtyZWFzb246dCxkYXRhOntvYmplY3RJZDpufSxjYWxsRnJhbWVzOm99KXtpZigiZXhjZXB0aW9uIiE9PXQmJiJwcm9taXNlUmVqZWN0aW9uIiE9PXQpcmV0dXJuO2lmKHA/LigpLG51bGw9PW4pcmV0dXJuO2NvbnN0IGk9W107Zm9yKGxldCB0PTA7dDxvLmxlbmd0aDt0Kyspe2NvbnN0e3Njb3BlQ2hhaW46bixmdW5jdGlvbk5hbWU6YSx0aGlzOnN9PW9bdF0sYz1uLmZpbmQoKGU9PiJsb2NhbCI9PT1lLnR5cGUpKSxyPSJnbG9iYWwiIT09cy5jbGFzc05hbWUmJnMuY2xhc3NOYW1lP2Ake3MuY2xhc3NOYW1lfS4ke2F9YDphO2lmKHZvaWQgMD09PWM/Lm9iamVjdC5vYmplY3RJZClpW3RdPXtmdW5jdGlvbjpyfTtlbHNle2NvbnN0IG49YXdhaXQgYihlLGMub2JqZWN0Lm9iamVjdElkKTtpW3RdPXtmdW5jdGlvbjpyLHZhcnM6bn19fWF3YWl0IGUucG9zdCgiUnVudGltZS5jYWxsRnVuY3Rpb25PbiIse2Z1bmN0aW9uRGVjbGFyYXRpb246YGZ1bmN0aW9uKCkgeyB0aGlzLiR7cn0gPSB0aGlzLiR7cn0gfHwgJHtKU09OLnN0cmluZ2lmeShpKX07IH1gLHNpbGVudDohMCxvYmplY3RJZDpufSksYXdhaXQgZS5wb3N0KCJSdW50aW1lLnJlbGVhc2VPYmplY3QiLHtvYmplY3RJZDpufSl9KHQsZS5wYXJhbXMpLnRoZW4oKGFzeW5jKCk9PntuJiZhd2FpdCB0LnBvc3QoIkRlYnVnZ2VyLnJlc3VtZSIpfSksKGFzeW5jIGU9PntuJiZhd2FpdCB0LnBvc3QoIkRlYnVnZ2VyLnJlc3VtZSIpfSkpfSkpLGF3YWl0IHQucG9zdCgiRGVidWdnZXIuZW5hYmxlIik7Y29uc3Qgbz0hMSE9PXUuY2FwdHVyZUFsbEV4Y2VwdGlvbnM7aWYoYXdhaXQgdC5wb3N0KCJEZWJ1Z2dlci5zZXRQYXVzZU9uRXhjZXB0aW9ucyIse3N0YXRlOm8/ImFsbCI6InVuY2F1Z2h0In0pLG8pe2NvbnN0IGU9dS5tYXhFeGNlcHRpb25zUGVyU2Vjb25kfHw1MDtwPWZ1bmN0aW9uKGUsdCxuKXtsZXQgbz0wLGk9NSxhPTA7cmV0dXJuIHNldEludGVydmFsKCgoKT0+ezA9PT1hP28+ZSYmKGkqPTIsbihpKSxpPjg2NDAwJiYoaT04NjQwMCksYT1pKTooYS09MSwwPT09YSYmdCgpKSxvPTB9KSwxZTMpLnVucmVmKCksKCk9PntvKz0xfX0oZSwoYXN5bmMoKT0+e2woIlJhdGUtbGltaXQgbGlmdGVkLiIpLGF3YWl0IHQucG9zdCgiRGVidWdnZXIuc2V0UGF1c2VPbkV4Y2VwdGlvbnMiLHtzdGF0ZToiYWxsIn0pfSksKGFzeW5jIGU9PntsKGBSYXRlLWxpbWl0IGV4Y2VlZGVkLiBEaXNhYmxpbmcgY2FwdHVyaW5nIG9mIGNhdWdodCBleGNlcHRpb25zIGZvciAke2V9IHNlY29uZHMuYCksYXdhaXQgdC5wb3N0KCJEZWJ1Z2dlci5zZXRQYXVzZU9uRXhjZXB0aW9ucyIse3N0YXRlOiJ1bmNhdWdodCJ9KX0pKX19KSgpLmNhdGNoKChlPT57bCgiRmFpbGVkIHRvIHN0YXJ0IGRlYnVnZ2VyIixlKX0pKSxzZXRJbnRlcnZhbCgoKCk9Pnt9KSwxZTQpOw==";function L4Q(...A){e.log("[LocalVariables]",...A)}var q4Q=wA((A={})=>{function Q(C,X){let G=(C.stacktrace?.frames||[]).filter((F)=>F.function!=="new Promise");for(let F=0;F{X.terminate()}),X.once("error",(G)=>{L4Q("Worker error",G)}),X.once("exit",(G)=>{L4Q("Worker exit",G)}),X.unref()}return{name:"LocalVariablesAsync",async setup(C){if(!C.getOptions().includeLocalVariables)return;if(await qK()){e.warn("Local variables capture has been disabled because the debugger was already enabled");return}let G={...A,debug:e.isEnabled()};Y().then(()=>{try{J(G)}catch(F){e.error("Failed to start worker",F)}},(F)=>{e.error("Failed to start inspector",F)})},processEvent(C,X){return B(C,X)}}});function M4Q(A){if(A===void 0)return;return A.slice(-10).reduce((Q,B)=>`${Q},${B.function},${B.lineno},${B.colno}`,"")}function HD0(A,Q){if(Q===void 0)return;return M4Q(A(Q,1))}function z4Q(A){let Q=[],B=!1;function Y(X){if(Q=[],B)return;B=!0,A(X)}Q.push(Y);function J(X){Q.push(X)}function C(X){let G=Q.pop()||Y;try{G(X)}catch(F){Y(X)}}return{add:J,next:C}}class fi{constructor(A){this._session=A}static async create(A){if(A)return A;let Q=await import("node:inspector");return new fi(new Q.Session)}configureAndConnect(A,Q){this._session.connect(),this._session.on("Debugger.paused",(B)=>{A(B,()=>{this._session.post("Debugger.resume")})}),this._session.post("Debugger.enable"),this._session.post("Debugger.setPauseOnExceptions",{state:Q?"all":"uncaught"})}setPauseOnExceptions(A){this._session.post("Debugger.setPauseOnExceptions",{state:A?"all":"uncaught"})}getLocalVariables(A,Q){this._getProperties(A,(B)=>{let{add:Y,next:J}=z4Q(Q);for(let C of B)if(C.value?.objectId&&C.value.className==="Array"){let X=C.value.objectId;Y((G)=>this._unrollArray(X,C.name,G,J))}else if(C.value?.objectId&&C.value.className==="Object"){let X=C.value.objectId;Y((G)=>this._unrollObject(X,C.name,G,J))}else if(C.value)Y((X)=>this._unrollOther(C,X,J));J({})})}_getProperties(A,Q){this._session.post("Runtime.getProperties",{objectId:A,ownProperties:!0},(B,Y)=>{if(B)Q([]);else Q(Y.result)})}_unrollArray(A,Q,B,Y){this._getProperties(A,(J)=>{B[Q]=J.filter((C)=>C.name!=="length"&&!isNaN(parseInt(C.name,10))).sort((C,X)=>parseInt(C.name,10)-parseInt(X.name,10)).map((C)=>C.value?.value),Y(B)})}_unrollObject(A,Q,B,Y){this._getProperties(A,(J)=>{B[Q]=J.map((C)=>[C.name,C.value?.value]).reduce((C,[X,G])=>{return C[X]=G,C},{}),Y(B)})}_unrollOther(A,Q,B){if(A.value){if("value"in A.value)if(A.value.value===void 0||A.value.value===null)Q[A.name]=`<${A.value.value}>`;else Q[A.name]=A.value.value;else if("description"in A.value&&A.value.type!=="function")Q[A.name]=`<${A.value.description}>`;else if(A.value.type==="undefined")Q[A.name]=""}B(Q)}}var DD0="LocalVariables",ND0=(A={},Q)=>{let B=new _8(20),Y,J=!1;function C(G){let F=M4Q(G.stacktrace?.frames);if(F===void 0)return;let W=B.remove(F);if(W===void 0)return;let Z=(G.stacktrace?.frames||[]).filter((U)=>U.function!=="new Promise");for(let U=0;U= v18.");return}if(await qK()){e.warn("Local variables capture has been disabled because the debugger was already enabled");return}fi.create(Q).then((Z)=>{function U(E,{params:{reason:K,data:I,callFrames:V}},H){if(K!=="exception"&&K!=="promiseRejection"){H();return}Y?.();let D=HD0(E,I.description);if(D==null){H();return}let{add:L,next:z}=z4Q((M)=>{B.set(D,M),H()});for(let M=0;MO.type==="local"),_=w.className==="global"||!w.className?q:`${w.className}.${q}`;if(P?.object.objectId===void 0)L((O)=>{O[M]={function:_},z(O)});else{let O=P.object.objectId;L((k)=>Z.getLocalVariables(O,(T)=>{k[M]={function:_,vars:T},z(k)}))}}z([])}let $=A.captureAllExceptions!==!1;if(Z.configureAndConnect((E,K)=>U(F.stackParser,E,K),$),$){let E=A.maxExceptionsPerSecond||50;Y=N4Q(E,()=>{e.log("Local variables rate-limit lifted."),Z.setPauseOnExceptions(!0)},(K)=>{e.log(`Local variables rate-limit exceeded. Disabling capturing of caught exceptions for ${K} seconds.`),Z.setPauseOnExceptions(!1)})}J=!0},(Z)=>{e.log("The `LocalVariables` integration failed to start.",Z)})},processEvent(G){if(J)return X(G);return G},_getCachedFramesCount(){return B.size},_getFirstCachedFrame(){return B.values()[0]}}},R4Q=wA(ND0);var EP=(A={})=>{return UF.major<19?R4Q(A):q4Q(A)};import{existsSync as LD0,readFileSync as qD0}from"node:fs";import{dirname as MD0,join as zD0}from"node:path";function u5(){try{return typeof w4Q<"u"&&typeof sfY<"u"}catch{return!1}}var bi,j4Q="Modules",RD0=()=>{if(!u5())return fQ&&e.warn("modulesIntegration only works in CommonJS (CJS) environments. Remove this integration if you are using ESM."),{name:j4Q};return{name:j4Q,processEvent(A){return A.modules={...A.modules,...OD0()},A}}},KP=wA(RD0);function wD0(){try{return u.cache?Object.keys(u.cache):[]}catch(A){return[]}}function jD0(){let A=u.main?.paths||[],Q=wD0(),B={},Y={};return Q.forEach((J)=>{let C=J,X=()=>{let G=C;if(C=MD0(G),!C||G===C||Y[G])return;if(A.indexOf(C)<0)return X();let F=zD0(G,"package.json");if(Y[G]=!0,!LD0(F))return X();try{let W=JSON.parse(qD0(F,"utf8"));B[W.name]=W.version}catch(W){}};X()}),B}function OD0(){if(!bi)bi=jD0();return bi}var PD0=2000;function ML(A){h0(()=>{console.error(A)});let Q=hA();if(Q===void 0){fQ&&e.warn("No NodeClient was defined, we are exiting the process now."),global.process.exit(1);return}let B=Q.getOptions(),Y=B?.shutdownTimeout&&B.shutdownTimeout>0?B.shutdownTimeout:PD0;Q.close(Y).then((J)=>{if(!J)fQ&&e.warn("We reached the timeout for emptying the request buffer, still exiting now!");global.process.exit(1)},(J)=>{fQ&&e.error(J)})}var TD0="OnUncaughtException",VP=wA((A={})=>{let Q={exitEvenIfOtherHandlersAreRegistered:!1,...A};return{name:TD0,setup(B){global.process.on("uncaughtException",SD0(B,Q))}}});function SD0(A,Q){let Y=!1,J=!1,C=!1,X,G=A.getOptions();return Object.assign((F)=>{let W=ML;if(Q.onFatalError)W=Q.onFatalError;else if(G.onFatalError)W=G.onFatalError;let U=global.process.listeners("uncaughtException").filter((E)=>{return E.name!=="domainUncaughtExceptionClear"&&E.tag!=="sentry_tracingErrorCallback"&&E._errorHandler!==!0}).length===0,$=Q.exitEvenIfOtherHandlersAreRegistered||U;if(!Y){if(X=F,Y=!0,hA()===A)jB(F,{originalException:F,captureContext:{level:"fatal"},mechanism:{handled:!1,type:"onuncaughtexception"}});if(!C&&$)C=!0,W(F)}else if($){if(C)fQ&&e.warn("uncaught exception after calling fatal error shutdown callback - this is bad! forcing shutdown"),ML(F);else if(!J)J=!0,setTimeout(()=>{if(!C)C=!0,W(X,F)},2000)}},{_errorHandler:!0})}var kD0="OnUnhandledRejection",_D0=(A={})=>{let Q={mode:"warn",...A};return{name:kD0,setup(B){global.process.on("unhandledRejection",vD0(B,Q))}}},IP=wA(_D0);function vD0(A,Q){return function(Y,J){if(hA()!==A)return;let C=Q.mode==="strict"?"fatal":"error";jB(Y,{originalException:J,captureContext:{extra:{unhandledPromiseRejection:!0},level:C},mechanism:{handled:!1,type:"onunhandledrejection"}}),yD0(Y,Q.mode)}}function yD0(A,Q){let B="This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). The promise rejected with the reason:";if(Q==="warn")h0(()=>{console.warn(B),console.error(A&&typeof A==="object"&&"stack"in A?A.stack:A)});else if(Q==="strict")h0(()=>{console.warn(B)}),ML(A)}import{types as hD0}from"node:util";import{Worker as gD0}from"node:worker_threads";var{isPromise:xD0}=hD0,fD0="LyohIEBzZW50cnkvbm9kZSA5LjIyLjAgKGNjYWJmYzIpIHwgaHR0cHM6Ly9naXRodWIuY29tL2dldHNlbnRyeS9zZW50cnktamF2YXNjcmlwdCAqLwppbXBvcnR7U2Vzc2lvbiBhcyB0fWZyb20ibm9kZTppbnNwZWN0b3IiO2ltcG9ydHt3b3JrZXJEYXRhIGFzIG4scGFyZW50UG9ydCBhcyBlfWZyb20ibm9kZTp3b3JrZXJfdGhyZWFkcyI7aW1wb3J0e3Bvc2l4IGFzIHIsc2VwIGFzIG99ZnJvbSJub2RlOnBhdGgiO2ltcG9ydCphcyBzIGZyb20ibm9kZTpodHRwIjtpbXBvcnQqYXMgaSBmcm9tIm5vZGU6aHR0cHMiO2ltcG9ydHtSZWFkYWJsZSBhcyBjfWZyb20ibm9kZTpzdHJlYW0iO2ltcG9ydHtjcmVhdGVHemlwIGFzIHV9ZnJvbSJub2RlOnpsaWIiO2ltcG9ydCphcyBhIGZyb20ibm9kZTpuZXQiO2ltcG9ydCphcyBmIGZyb20ibm9kZTp0bHMiO2NvbnN0IGg9InVuZGVmaW5lZCI9PXR5cGVvZiBfX1NFTlRSWV9ERUJVR19ffHxfX1NFTlRSWV9ERUJVR19fLHA9IjkuMjIuMCIsbD1nbG9iYWxUaGlzO2Z1bmN0aW9uIGQoKXtyZXR1cm4gbShsKSxsfWZ1bmN0aW9uIG0odCl7Y29uc3Qgbj10Ll9fU0VOVFJZX189dC5fX1NFTlRSWV9ffHx7fTtyZXR1cm4gbi52ZXJzaW9uPW4udmVyc2lvbnx8cCxuW3BdPW5bcF18fHt9fWZ1bmN0aW9uIGcodCxuLGU9bCl7Y29uc3Qgcj1lLl9fU0VOVFJZX189ZS5fX1NFTlRSWV9ffHx7fSxvPXJbcF09cltwXXx8e307cmV0dXJuIG9bdF18fChvW3RdPW4oKSl9Y29uc3QgeT1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nO2Z1bmN0aW9uIGIodCxuKXtyZXR1cm4geS5jYWxsKHQpPT09YFtvYmplY3QgJHtufV1gfWZ1bmN0aW9uIF8odCl7cmV0dXJuIGIodCwiU3RyaW5nIil9ZnVuY3Rpb24gdih0KXtyZXR1cm4gYih0LCJPYmplY3QiKX1mdW5jdGlvbiB3KHQpe3JldHVybiBCb29sZWFuKHQ/LnRoZW4mJiJmdW5jdGlvbiI9PXR5cGVvZiB0LnRoZW4pfWZ1bmN0aW9uIFModCxuKXt0cnl7cmV0dXJuIHQgaW5zdGFuY2VvZiBufWNhdGNoKHQpe3JldHVybiExfX1jb25zdCAkPWwsRT04MDtmdW5jdGlvbiB4KHQsbil7Y29uc3QgZT10LHI9W107aWYoIWU/LnRhZ05hbWUpcmV0dXJuIiI7aWYoJC5IVE1MRWxlbWVudCYmZSBpbnN0YW5jZW9mIEhUTUxFbGVtZW50JiZlLmRhdGFzZXQpe2lmKGUuZGF0YXNldC5zZW50cnlDb21wb25lbnQpcmV0dXJuIGUuZGF0YXNldC5zZW50cnlDb21wb25lbnQ7aWYoZS5kYXRhc2V0LnNlbnRyeUVsZW1lbnQpcmV0dXJuIGUuZGF0YXNldC5zZW50cnlFbGVtZW50fXIucHVzaChlLnRhZ05hbWUudG9Mb3dlckNhc2UoKSk7Y29uc3Qgbz1uPy5sZW5ndGg/bi5maWx0ZXIoKHQ9PmUuZ2V0QXR0cmlidXRlKHQpKSkubWFwKCh0PT5bdCxlLmdldEF0dHJpYnV0ZSh0KV0pKTpudWxsO2lmKG8/Lmxlbmd0aClvLmZvckVhY2goKHQ9PntyLnB1c2goYFske3RbMF19PSIke3RbMV19Il1gKX0pKTtlbHNle2UuaWQmJnIucHVzaChgIyR7ZS5pZH1gKTtjb25zdCB0PWUuY2xhc3NOYW1lO2lmKHQmJl8odCkpe2NvbnN0IG49dC5zcGxpdCgvXHMrLyk7Zm9yKGNvbnN0IHQgb2YgbilyLnB1c2goYC4ke3R9YCl9fWNvbnN0IHM9WyJhcmlhLWxhYmVsIiwidHlwZSIsIm5hbWUiLCJ0aXRsZSIsImFsdCJdO2Zvcihjb25zdCB0IG9mIHMpe2NvbnN0IG49ZS5nZXRBdHRyaWJ1dGUodCk7biYmci5wdXNoKGBbJHt0fT0iJHtufSJdYCl9cmV0dXJuIHIuam9pbigiIil9Y29uc3QgTj1bImRlYnVnIiwiaW5mbyIsIndhcm4iLCJlcnJvciIsImxvZyIsImFzc2VydCIsInRyYWNlIl0sQz17fTtmdW5jdGlvbiBUKHQpe2lmKCEoImNvbnNvbGUiaW4gbCkpcmV0dXJuIHQoKTtjb25zdCBuPWwuY29uc29sZSxlPXt9LHI9T2JqZWN0LmtleXMoQyk7ci5mb3JFYWNoKCh0PT57Y29uc3Qgcj1DW3RdO2VbdF09blt0XSxuW3RdPXJ9KSk7dHJ5e3JldHVybiB0KCl9ZmluYWxseXtyLmZvckVhY2goKHQ9PntuW3RdPWVbdF19KSl9fWNvbnN0IGs9ZygibG9nZ2VyIiwoZnVuY3Rpb24oKXtsZXQgdD0hMTtjb25zdCBuPXtlbmFibGU6KCk9Pnt0PSEwfSxkaXNhYmxlOigpPT57dD0hMX0saXNFbmFibGVkOigpPT50fTtyZXR1cm4gaD9OLmZvckVhY2goKGU9PntuW2VdPSguLi5uKT0+e3QmJlQoKCgpPT57bC5jb25zb2xlW2VdKGBTZW50cnkgTG9nZ2VyIFske2V9XTpgLC4uLm4pfSkpfX0pKTpOLmZvckVhY2goKHQ9PntuW3RdPSgpPT57fX0pKSxufSkpO2Z1bmN0aW9uIGoodCxuPTApe3JldHVybiJzdHJpbmciIT10eXBlb2YgdHx8MD09PW58fHQubGVuZ3RoPD1uP3Q6YCR7dC5zbGljZSgwLG4pfS4uLmB9ZnVuY3Rpb24gUih0KXtpZihmdW5jdGlvbih0KXtzd2l0Y2goeS5jYWxsKHQpKXtjYXNlIltvYmplY3QgRXJyb3JdIjpjYXNlIltvYmplY3QgRXhjZXB0aW9uXSI6Y2FzZSJbb2JqZWN0IERPTUV4Y2VwdGlvbl0iOmNhc2UiW29iamVjdCBXZWJBc3NlbWJseS5FeGNlcHRpb25dIjpyZXR1cm4hMDtkZWZhdWx0OnJldHVybiBTKHQsRXJyb3IpfX0odCkpcmV0dXJue21lc3NhZ2U6dC5tZXNzYWdlLG5hbWU6dC5uYW1lLHN0YWNrOnQuc3RhY2ssLi4uTyh0KX07aWYobj10LCJ1bmRlZmluZWQiIT10eXBlb2YgRXZlbnQmJlMobixFdmVudCkpe2NvbnN0IG49e3R5cGU6dC50eXBlLHRhcmdldDpJKHQudGFyZ2V0KSxjdXJyZW50VGFyZ2V0OkkodC5jdXJyZW50VGFyZ2V0KSwuLi5PKHQpfTtyZXR1cm4idW5kZWZpbmVkIiE9dHlwZW9mIEN1c3RvbUV2ZW50JiZTKHQsQ3VzdG9tRXZlbnQpJiYobi5kZXRhaWw9dC5kZXRhaWwpLG59cmV0dXJuIHQ7dmFyIG59ZnVuY3Rpb24gSSh0KXt0cnl7cmV0dXJuIG49dCwidW5kZWZpbmVkIiE9dHlwZW9mIEVsZW1lbnQmJlMobixFbGVtZW50KT9mdW5jdGlvbih0LG49e30pe2lmKCF0KXJldHVybiI8dW5rbm93bj4iO3RyeXtsZXQgZT10O2NvbnN0IHI9NSxvPVtdO2xldCBzPTAsaT0wO2NvbnN0IGM9IiA+ICIsdT1jLmxlbmd0aDtsZXQgYTtjb25zdCBmPUFycmF5LmlzQXJyYXkobik/bjpuLmtleUF0dHJzLGg9IUFycmF5LmlzQXJyYXkobikmJm4ubWF4U3RyaW5nTGVuZ3RofHxFO2Zvcig7ZSYmcysrPHImJihhPXgoZSxmKSwhKCJodG1sIj09PWF8fHM+MSYmaStvLmxlbmd0aCp1K2EubGVuZ3RoPj1oKSk7KW8ucHVzaChhKSxpKz1hLmxlbmd0aCxlPWUucGFyZW50Tm9kZTtyZXR1cm4gby5yZXZlcnNlKCkuam9pbihjKX1jYXRjaCh0KXtyZXR1cm4iPHVua25vd24+In19KHQpOk9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbCh0KX1jYXRjaCh0KXtyZXR1cm4iPHVua25vd24+In12YXIgbn1mdW5jdGlvbiBPKHQpe2lmKCJvYmplY3QiPT10eXBlb2YgdCYmbnVsbCE9PXQpe2NvbnN0IG49e307Zm9yKGNvbnN0IGUgaW4gdClPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodCxlKSYmKG5bZV09dFtlXSk7cmV0dXJuIG59cmV0dXJue319ZnVuY3Rpb24gRCh0PWZ1bmN0aW9uKCl7Y29uc3QgdD1sO3JldHVybiB0LmNyeXB0b3x8dC5tc0NyeXB0b30oKSl7bGV0IG49KCk9PjE2Kk1hdGgucmFuZG9tKCk7dHJ5e2lmKHQ/LnJhbmRvbVVVSUQpcmV0dXJuIHQucmFuZG9tVVVJRCgpLnJlcGxhY2UoLy0vZywiIik7dD8uZ2V0UmFuZG9tVmFsdWVzJiYobj0oKT0+e2NvbnN0IG49bmV3IFVpbnQ4QXJyYXkoMSk7cmV0dXJuIHQuZ2V0UmFuZG9tVmFsdWVzKG4pLG5bMF19KX1jYXRjaCh0KXt9cmV0dXJuKFsxZTddKzFlMys0ZTMrOGUzKzFlMTEpLnJlcGxhY2UoL1swMThdL2csKHQ9Pih0XigxNSZuKCkpPj50LzQpLnRvU3RyaW5nKDE2KSkpfWNvbnN0IEE9MWUzO2Z1bmN0aW9uIFAoKXtyZXR1cm4gRGF0ZS5ub3coKS9BfWNvbnN0IFU9ZnVuY3Rpb24oKXtjb25zdHtwZXJmb3JtYW5jZTp0fT1sO2lmKCF0Py5ub3cpcmV0dXJuIFA7Y29uc3Qgbj1EYXRlLm5vdygpLXQubm93KCksZT1udWxsPT10LnRpbWVPcmlnaW4/bjp0LnRpbWVPcmlnaW47cmV0dXJuKCk9PihlK3Qubm93KCkpL0F9KCk7ZnVuY3Rpb24gTSh0KXtjb25zdCBuPVUoKSxlPXtzaWQ6RCgpLGluaXQ6ITAsdGltZXN0YW1wOm4sc3RhcnRlZDpuLGR1cmF0aW9uOjAsc3RhdHVzOiJvayIsZXJyb3JzOjAsaWdub3JlRHVyYXRpb246ITEsdG9KU09OOigpPT5mdW5jdGlvbih0KXtyZXR1cm57c2lkOmAke3Quc2lkfWAsaW5pdDp0LmluaXQsc3RhcnRlZDpuZXcgRGF0ZSgxZTMqdC5zdGFydGVkKS50b0lTT1N0cmluZygpLHRpbWVzdGFtcDpuZXcgRGF0ZSgxZTMqdC50aW1lc3RhbXApLnRvSVNPU3RyaW5nKCksc3RhdHVzOnQuc3RhdHVzLGVycm9yczp0LmVycm9ycyxkaWQ6Im51bWJlciI9PXR5cGVvZiB0LmRpZHx8InN0cmluZyI9PXR5cGVvZiB0LmRpZD9gJHt0LmRpZH1gOnZvaWQgMCxkdXJhdGlvbjp0LmR1cmF0aW9uLGFibm9ybWFsX21lY2hhbmlzbTp0LmFibm9ybWFsX21lY2hhbmlzbSxhdHRyczp7cmVsZWFzZTp0LnJlbGVhc2UsZW52aXJvbm1lbnQ6dC5lbnZpcm9ubWVudCxpcF9hZGRyZXNzOnQuaXBBZGRyZXNzLHVzZXJfYWdlbnQ6dC51c2VyQWdlbnR9fX0oZSl9O3JldHVybiB0JiZMKGUsdCksZX1mdW5jdGlvbiBMKHQsbj17fSl7aWYobi51c2VyJiYoIXQuaXBBZGRyZXNzJiZuLnVzZXIuaXBfYWRkcmVzcyYmKHQuaXBBZGRyZXNzPW4udXNlci5pcF9hZGRyZXNzKSx0LmRpZHx8bi5kaWR8fCh0LmRpZD1uLnVzZXIuaWR8fG4udXNlci5lbWFpbHx8bi51c2VyLnVzZXJuYW1lKSksdC50aW1lc3RhbXA9bi50aW1lc3RhbXB8fFUoKSxuLmFibm9ybWFsX21lY2hhbmlzbSYmKHQuYWJub3JtYWxfbWVjaGFuaXNtPW4uYWJub3JtYWxfbWVjaGFuaXNtKSxuLmlnbm9yZUR1cmF0aW9uJiYodC5pZ25vcmVEdXJhdGlvbj1uLmlnbm9yZUR1cmF0aW9uKSxuLnNpZCYmKHQuc2lkPTMyPT09bi5zaWQubGVuZ3RoP24uc2lkOkQoKSksdm9pZCAwIT09bi5pbml0JiYodC5pbml0PW4uaW5pdCksIXQuZGlkJiZuLmRpZCYmKHQuZGlkPWAke24uZGlkfWApLCJudW1iZXIiPT10eXBlb2Ygbi5zdGFydGVkJiYodC5zdGFydGVkPW4uc3RhcnRlZCksdC5pZ25vcmVEdXJhdGlvbil0LmR1cmF0aW9uPXZvaWQgMDtlbHNlIGlmKCJudW1iZXIiPT10eXBlb2Ygbi5kdXJhdGlvbil0LmR1cmF0aW9uPW4uZHVyYXRpb247ZWxzZXtjb25zdCBuPXQudGltZXN0YW1wLXQuc3RhcnRlZDt0LmR1cmF0aW9uPW4+PTA/bjowfW4ucmVsZWFzZSYmKHQucmVsZWFzZT1uLnJlbGVhc2UpLG4uZW52aXJvbm1lbnQmJih0LmVudmlyb25tZW50PW4uZW52aXJvbm1lbnQpLCF0LmlwQWRkcmVzcyYmbi5pcEFkZHJlc3MmJih0LmlwQWRkcmVzcz1uLmlwQWRkcmVzcyksIXQudXNlckFnZW50JiZuLnVzZXJBZ2VudCYmKHQudXNlckFnZW50PW4udXNlckFnZW50KSwibnVtYmVyIj09dHlwZW9mIG4uZXJyb3JzJiYodC5lcnJvcnM9bi5lcnJvcnMpLG4uc3RhdHVzJiYodC5zdGF0dXM9bi5zdGF0dXMpfWZ1bmN0aW9uIEIodCxuLGU9Mil7aWYoIW58fCJvYmplY3QiIT10eXBlb2Ygbnx8ZTw9MClyZXR1cm4gbjtpZih0JiYwPT09T2JqZWN0LmtleXMobikubGVuZ3RoKXJldHVybiB0O2NvbnN0IHI9ey4uLnR9O2Zvcihjb25zdCB0IGluIG4pT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG4sdCkmJihyW3RdPUIoclt0XSxuW3RdLGUtMSkpO3JldHVybiByfWNvbnN0IEc9Il9zZW50cnlTcGFuIjtmdW5jdGlvbiBKKHQsbil7bj9mdW5jdGlvbih0LG4sZSl7dHJ5e09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LG4se3ZhbHVlOmUsd3JpdGFibGU6ITAsY29uZmlndXJhYmxlOiEwfSl9Y2F0Y2goZSl7aCYmay5sb2coYEZhaWxlZCB0byBhZGQgbm9uLWVudW1lcmFibGUgcHJvcGVydHkgIiR7bn0iIHRvIG9iamVjdGAsdCl9fSh0LEcsbik6ZGVsZXRlIHRbR119ZnVuY3Rpb24geih0KXtyZXR1cm4gdFtHXX1mdW5jdGlvbiBIKCl7cmV0dXJuIEQoKX1mdW5jdGlvbiBGKCl7cmV0dXJuIEQoKS5zdWJzdHJpbmcoMTYpfWNsYXNzIFd7Y29uc3RydWN0b3IoKXt0aGlzLnQ9ITEsdGhpcy5vPVtdLHRoaXMuaT1bXSx0aGlzLnU9W10sdGhpcy5oPVtdLHRoaXMucD17fSx0aGlzLmw9e30sdGhpcy5tPXt9LHRoaXMuXz17fSx0aGlzLnY9e30sdGhpcy5TPXt0cmFjZUlkOkgoKSxzYW1wbGVSYW5kOk1hdGgucmFuZG9tKCl9fWNsb25lKCl7Y29uc3QgdD1uZXcgVztyZXR1cm4gdC51PVsuLi50aGlzLnVdLHQubD17Li4udGhpcy5sfSx0Lm09ey4uLnRoaXMubX0sdC5fPXsuLi50aGlzLl99LHRoaXMuXy5mbGFncyYmKHQuXy5mbGFncz17dmFsdWVzOlsuLi50aGlzLl8uZmxhZ3MudmFsdWVzXX0pLHQucD10aGlzLnAsdC5OPXRoaXMuTix0LkM9dGhpcy5DLHQuVD10aGlzLlQsdC5rPXRoaXMuayx0Lmk9Wy4uLnRoaXMuaV0sdC5oPVsuLi50aGlzLmhdLHQudj17Li4udGhpcy52fSx0LlM9ey4uLnRoaXMuU30sdC5qPXRoaXMuaix0LlI9dGhpcy5SLEoodCx6KHRoaXMpKSx0fXNldENsaWVudCh0KXt0aGlzLmo9dH1zZXRMYXN0RXZlbnRJZCh0KXt0aGlzLlI9dH1nZXRDbGllbnQoKXtyZXR1cm4gdGhpcy5qfWxhc3RFdmVudElkKCl7cmV0dXJuIHRoaXMuUn1hZGRTY29wZUxpc3RlbmVyKHQpe3RoaXMuby5wdXNoKHQpfWFkZEV2ZW50UHJvY2Vzc29yKHQpe3JldHVybiB0aGlzLmkucHVzaCh0KSx0aGlzfXNldFVzZXIodCl7cmV0dXJuIHRoaXMucD10fHx7ZW1haWw6dm9pZCAwLGlkOnZvaWQgMCxpcF9hZGRyZXNzOnZvaWQgMCx1c2VybmFtZTp2b2lkIDB9LHRoaXMuQyYmTCh0aGlzLkMse3VzZXI6dH0pLHRoaXMuSSgpLHRoaXN9Z2V0VXNlcigpe3JldHVybiB0aGlzLnB9c2V0VGFncyh0KXtyZXR1cm4gdGhpcy5sPXsuLi50aGlzLmwsLi4udH0sdGhpcy5JKCksdGhpc31zZXRUYWcodCxuKXtyZXR1cm4gdGhpcy5sPXsuLi50aGlzLmwsW3RdOm59LHRoaXMuSSgpLHRoaXN9c2V0RXh0cmFzKHQpe3JldHVybiB0aGlzLm09ey4uLnRoaXMubSwuLi50fSx0aGlzLkkoKSx0aGlzfXNldEV4dHJhKHQsbil7cmV0dXJuIHRoaXMubT17Li4udGhpcy5tLFt0XTpufSx0aGlzLkkoKSx0aGlzfXNldEZpbmdlcnByaW50KHQpe3JldHVybiB0aGlzLms9dCx0aGlzLkkoKSx0aGlzfXNldExldmVsKHQpe3JldHVybiB0aGlzLk49dCx0aGlzLkkoKSx0aGlzfXNldFRyYW5zYWN0aW9uTmFtZSh0KXtyZXR1cm4gdGhpcy5UPXQsdGhpcy5JKCksdGhpc31zZXRDb250ZXh0KHQsbil7cmV0dXJuIG51bGw9PT1uP2RlbGV0ZSB0aGlzLl9bdF06dGhpcy5fW3RdPW4sdGhpcy5JKCksdGhpc31zZXRTZXNzaW9uKHQpe3JldHVybiB0P3RoaXMuQz10OmRlbGV0ZSB0aGlzLkMsdGhpcy5JKCksdGhpc31nZXRTZXNzaW9uKCl7cmV0dXJuIHRoaXMuQ311cGRhdGUodCl7aWYoIXQpcmV0dXJuIHRoaXM7Y29uc3Qgbj0iZnVuY3Rpb24iPT10eXBlb2YgdD90KHRoaXMpOnQsZT1uIGluc3RhbmNlb2YgVz9uLmdldFNjb3BlRGF0YSgpOnYobik/dDp2b2lkIDAse3RhZ3M6cixleHRyYTpvLHVzZXI6cyxjb250ZXh0czppLGxldmVsOmMsZmluZ2VycHJpbnQ6dT1bXSxwcm9wYWdhdGlvbkNvbnRleHQ6YX09ZXx8e307cmV0dXJuIHRoaXMubD17Li4udGhpcy5sLC4uLnJ9LHRoaXMubT17Li4udGhpcy5tLC4uLm99LHRoaXMuXz17Li4udGhpcy5fLC4uLml9LHMmJk9iamVjdC5rZXlzKHMpLmxlbmd0aCYmKHRoaXMucD1zKSxjJiYodGhpcy5OPWMpLHUubGVuZ3RoJiYodGhpcy5rPXUpLGEmJih0aGlzLlM9YSksdGhpc31jbGVhcigpe3JldHVybiB0aGlzLnU9W10sdGhpcy5sPXt9LHRoaXMubT17fSx0aGlzLnA9e30sdGhpcy5fPXt9LHRoaXMuTj12b2lkIDAsdGhpcy5UPXZvaWQgMCx0aGlzLms9dm9pZCAwLHRoaXMuQz12b2lkIDAsSih0aGlzLHZvaWQgMCksdGhpcy5oPVtdLHRoaXMuc2V0UHJvcGFnYXRpb25Db250ZXh0KHt0cmFjZUlkOkgoKSxzYW1wbGVSYW5kOk1hdGgucmFuZG9tKCl9KSx0aGlzLkkoKSx0aGlzfWFkZEJyZWFkY3J1bWIodCxuKXtjb25zdCBlPSJudW1iZXIiPT10eXBlb2Ygbj9uOjEwMDtpZihlPD0wKXJldHVybiB0aGlzO2NvbnN0IHI9e3RpbWVzdGFtcDpQKCksLi4udCxtZXNzYWdlOnQubWVzc2FnZT9qKHQubWVzc2FnZSwyMDQ4KTp0Lm1lc3NhZ2V9O3JldHVybiB0aGlzLnUucHVzaChyKSx0aGlzLnUubGVuZ3RoPmUmJih0aGlzLnU9dGhpcy51LnNsaWNlKC1lKSx0aGlzLmo/LnJlY29yZERyb3BwZWRFdmVudCgiYnVmZmVyX292ZXJmbG93IiwibG9nX2l0ZW0iKSksdGhpcy5JKCksdGhpc31nZXRMYXN0QnJlYWRjcnVtYigpe3JldHVybiB0aGlzLnVbdGhpcy51Lmxlbmd0aC0xXX1jbGVhckJyZWFkY3J1bWJzKCl7cmV0dXJuIHRoaXMudT1bXSx0aGlzLkkoKSx0aGlzfWFkZEF0dGFjaG1lbnQodCl7cmV0dXJuIHRoaXMuaC5wdXNoKHQpLHRoaXN9Y2xlYXJBdHRhY2htZW50cygpe3JldHVybiB0aGlzLmg9W10sdGhpc31nZXRTY29wZURhdGEoKXtyZXR1cm57YnJlYWRjcnVtYnM6dGhpcy51LGF0dGFjaG1lbnRzOnRoaXMuaCxjb250ZXh0czp0aGlzLl8sdGFnczp0aGlzLmwsZXh0cmE6dGhpcy5tLHVzZXI6dGhpcy5wLGxldmVsOnRoaXMuTixmaW5nZXJwcmludDp0aGlzLmt8fFtdLGV2ZW50UHJvY2Vzc29yczp0aGlzLmkscHJvcGFnYXRpb25Db250ZXh0OnRoaXMuUyxzZGtQcm9jZXNzaW5nTWV0YWRhdGE6dGhpcy52LHRyYW5zYWN0aW9uTmFtZTp0aGlzLlQsc3Bhbjp6KHRoaXMpfX1zZXRTREtQcm9jZXNzaW5nTWV0YWRhdGEodCl7cmV0dXJuIHRoaXMudj1CKHRoaXMudix0LDIpLHRoaXN9c2V0UHJvcGFnYXRpb25Db250ZXh0KHQpe3JldHVybiB0aGlzLlM9dCx0aGlzfWdldFByb3BhZ2F0aW9uQ29udGV4dCgpe3JldHVybiB0aGlzLlN9Y2FwdHVyZUV4Y2VwdGlvbih0LG4pe2NvbnN0IGU9bj8uZXZlbnRfaWR8fEQoKTtpZighdGhpcy5qKXJldHVybiBrLndhcm4oIk5vIGNsaWVudCBjb25maWd1cmVkIG9uIHNjb3BlIC0gd2lsbCBub3QgY2FwdHVyZSBleGNlcHRpb24hIiksZTtjb25zdCByPW5ldyBFcnJvcigiU2VudHJ5IHN5bnRoZXRpY0V4Y2VwdGlvbiIpO3JldHVybiB0aGlzLmouY2FwdHVyZUV4Y2VwdGlvbih0LHtvcmlnaW5hbEV4Y2VwdGlvbjp0LHN5bnRoZXRpY0V4Y2VwdGlvbjpyLC4uLm4sZXZlbnRfaWQ6ZX0sdGhpcyksZX1jYXB0dXJlTWVzc2FnZSh0LG4sZSl7Y29uc3Qgcj1lPy5ldmVudF9pZHx8RCgpO2lmKCF0aGlzLmopcmV0dXJuIGsud2FybigiTm8gY2xpZW50IGNvbmZpZ3VyZWQgb24gc2NvcGUgLSB3aWxsIG5vdCBjYXB0dXJlIG1lc3NhZ2UhIikscjtjb25zdCBvPW5ldyBFcnJvcih0KTtyZXR1cm4gdGhpcy5qLmNhcHR1cmVNZXNzYWdlKHQsbix7b3JpZ2luYWxFeGNlcHRpb246dCxzeW50aGV0aWNFeGNlcHRpb246bywuLi5lLGV2ZW50X2lkOnJ9LHRoaXMpLHJ9Y2FwdHVyZUV2ZW50KHQsbil7Y29uc3QgZT1uPy5ldmVudF9pZHx8RCgpO3JldHVybiB0aGlzLmo/KHRoaXMuai5jYXB0dXJlRXZlbnQodCx7Li4ubixldmVudF9pZDplfSx0aGlzKSxlKTooay53YXJuKCJObyBjbGllbnQgY29uZmlndXJlZCBvbiBzY29wZSAtIHdpbGwgbm90IGNhcHR1cmUgZXZlbnQhIiksZSl9SSgpe3RoaXMudHx8KHRoaXMudD0hMCx0aGlzLm8uZm9yRWFjaCgodD0+e3QodGhpcyl9KSksdGhpcy50PSExKX19Y2xhc3MgWXtjb25zdHJ1Y3Rvcih0LG4pe2xldCBlLHI7ZT10fHxuZXcgVyxyPW58fG5ldyBXLHRoaXMuTz1be3Njb3BlOmV9XSx0aGlzLkQ9cn13aXRoU2NvcGUodCl7Y29uc3Qgbj10aGlzLkEoKTtsZXQgZTt0cnl7ZT10KG4pfWNhdGNoKHQpe3Rocm93IHRoaXMuUCgpLHR9cmV0dXJuIHcoZSk/ZS50aGVuKCh0PT4odGhpcy5QKCksdCkpLCh0PT57dGhyb3cgdGhpcy5QKCksdH0pKToodGhpcy5QKCksZSl9Z2V0Q2xpZW50KCl7cmV0dXJuIHRoaXMuZ2V0U3RhY2tUb3AoKS5jbGllbnR9Z2V0U2NvcGUoKXtyZXR1cm4gdGhpcy5nZXRTdGFja1RvcCgpLnNjb3BlfWdldElzb2xhdGlvblNjb3BlKCl7cmV0dXJuIHRoaXMuRH1nZXRTdGFja1RvcCgpe3JldHVybiB0aGlzLk9bdGhpcy5PLmxlbmd0aC0xXX1BKCl7Y29uc3QgdD10aGlzLmdldFNjb3BlKCkuY2xvbmUoKTtyZXR1cm4gdGhpcy5PLnB1c2goe2NsaWVudDp0aGlzLmdldENsaWVudCgpLHNjb3BlOnR9KSx0fVAoKXtyZXR1cm4hKHRoaXMuTy5sZW5ndGg8PTEpJiYhIXRoaXMuTy5wb3AoKX19ZnVuY3Rpb24gSygpe2NvbnN0IHQ9bShkKCkpO3JldHVybiB0LnN0YWNrPXQuc3RhY2t8fG5ldyBZKGcoImRlZmF1bHRDdXJyZW50U2NvcGUiLCgoKT0+bmV3IFcpKSxnKCJkZWZhdWx0SXNvbGF0aW9uU2NvcGUiLCgoKT0+bmV3IFcpKSl9ZnVuY3Rpb24gVih0KXtyZXR1cm4gSygpLndpdGhTY29wZSh0KX1mdW5jdGlvbiBaKHQsbil7Y29uc3QgZT1LKCk7cmV0dXJuIGUud2l0aFNjb3BlKCgoKT0+KGUuZ2V0U3RhY2tUb3AoKS5zY29wZT10LG4odCkpKSl9ZnVuY3Rpb24gcSh0KXtyZXR1cm4gSygpLndpdGhTY29wZSgoKCk9PnQoSygpLmdldElzb2xhdGlvblNjb3BlKCkpKSl9ZnVuY3Rpb24gUSh0KXtjb25zdCBuPW0odCk7cmV0dXJuIG4uYWNzP24uYWNzOnt3aXRoSXNvbGF0aW9uU2NvcGU6cSx3aXRoU2NvcGU6Vix3aXRoU2V0U2NvcGU6Wix3aXRoU2V0SXNvbGF0aW9uU2NvcGU6KHQsbik9PnEobiksZ2V0Q3VycmVudFNjb3BlOigpPT5LKCkuZ2V0U2NvcGUoKSxnZXRJc29sYXRpb25TY29wZTooKT0+SygpLmdldElzb2xhdGlvblNjb3BlKCl9fWZ1bmN0aW9uIFgoKXtyZXR1cm4gUShkKCkpLmdldEN1cnJlbnRTY29wZSgpLmdldENsaWVudCgpfWNvbnN0IHR0PSJzZW50cnkuc291cmNlIixudD0ic2VudHJ5LnNhbXBsZV9yYXRlIixldD0ic2VudHJ5LnByZXZpb3VzX3RyYWNlX3NhbXBsZV9yYXRlIixydD0ic2VudHJ5Lm9wIixvdD0ic2VudHJ5Lm9yaWdpbiIsc3Q9MCxpdD0xLGN0PSJfc2VudHJ5U2NvcGUiLHV0PSJfc2VudHJ5SXNvbGF0aW9uU2NvcGUiO2Z1bmN0aW9uIGF0KHQpe3JldHVybntzY29wZTp0W2N0XSxpc29sYXRpb25TY29wZTp0W3V0XX19Y29uc3QgZnQ9InNlbnRyeS0iLGh0PS9ec2VudHJ5LS87ZnVuY3Rpb24gcHQodCl7Y29uc3Qgbj1mdW5jdGlvbih0KXtpZighdHx8IV8odCkmJiFBcnJheS5pc0FycmF5KHQpKXJldHVybjtpZihBcnJheS5pc0FycmF5KHQpKXJldHVybiB0LnJlZHVjZSgoKHQsbik9Pntjb25zdCBlPWx0KG4pO3JldHVybiBPYmplY3QuZW50cmllcyhlKS5mb3JFYWNoKCgoW24sZV0pPT57dFtuXT1lfSkpLHR9KSx7fSk7cmV0dXJuIGx0KHQpfSh0KTtpZighbilyZXR1cm47Y29uc3QgZT1PYmplY3QuZW50cmllcyhuKS5yZWR1Y2UoKCh0LFtuLGVdKT0+e2lmKG4ubWF0Y2goaHQpKXt0W24uc2xpY2UoZnQubGVuZ3RoKV09ZX1yZXR1cm4gdH0pLHt9KTtyZXR1cm4gT2JqZWN0LmtleXMoZSkubGVuZ3RoPjA/ZTp2b2lkIDB9ZnVuY3Rpb24gbHQodCl7cmV0dXJuIHQuc3BsaXQoIiwiKS5tYXAoKHQ9PnQuc3BsaXQoIj0iKS5tYXAoKHQ9Pnt0cnl7cmV0dXJuIGRlY29kZVVSSUNvbXBvbmVudCh0LnRyaW0oKSl9Y2F0Y2h7cmV0dXJufX0pKSkpLnJlZHVjZSgoKHQsW24sZV0pPT4obiYmZSYmKHRbbl09ZSksdCkpLHt9KX1jb25zdCBkdD0xO2Z1bmN0aW9uIG10KHQpe2NvbnN0e3NwYW5JZDpuLHRyYWNlSWQ6ZSxpc1JlbW90ZTpyfT10LnNwYW5Db250ZXh0KCksbz1yP246X3QodCkucGFyZW50X3NwYW5faWQscz1hdCh0KS5zY29wZTtyZXR1cm57cGFyZW50X3NwYW5faWQ6byxzcGFuX2lkOnI/cz8uZ2V0UHJvcGFnYXRpb25Db250ZXh0KCkucHJvcGFnYXRpb25TcGFuSWR8fEYoKTpuLHRyYWNlX2lkOmV9fWZ1bmN0aW9uIGd0KHQpe3JldHVybiB0JiZ0Lmxlbmd0aD4wP3QubWFwKCgoe2NvbnRleHQ6e3NwYW5JZDp0LHRyYWNlSWQ6bix0cmFjZUZsYWdzOmUsLi4ucn0sYXR0cmlidXRlczpvfSk9Pih7c3Bhbl9pZDp0LHRyYWNlX2lkOm4sc2FtcGxlZDplPT09ZHQsYXR0cmlidXRlczpvLC4uLnJ9KSkpOnZvaWQgMH1mdW5jdGlvbiB5dCh0KXtyZXR1cm4ibnVtYmVyIj09dHlwZW9mIHQ/YnQodCk6QXJyYXkuaXNBcnJheSh0KT90WzBdK3RbMV0vMWU5OnQgaW5zdGFuY2VvZiBEYXRlP2J0KHQuZ2V0VGltZSgpKTpVKCl9ZnVuY3Rpb24gYnQodCl7cmV0dXJuIHQ+OTk5OTk5OTk5OT90LzFlMzp0fWZ1bmN0aW9uIF90KHQpe2lmKGZ1bmN0aW9uKHQpe3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiB0LmdldFNwYW5KU09OfSh0KSlyZXR1cm4gdC5nZXRTcGFuSlNPTigpO2NvbnN0e3NwYW5JZDpuLHRyYWNlSWQ6ZX09dC5zcGFuQ29udGV4dCgpO2lmKGZ1bmN0aW9uKHQpe2NvbnN0IG49dDtyZXR1cm4hIShuLmF0dHJpYnV0ZXMmJm4uc3RhcnRUaW1lJiZuLm5hbWUmJm4uZW5kVGltZSYmbi5zdGF0dXMpfSh0KSl7Y29uc3R7YXR0cmlidXRlczpyLHN0YXJ0VGltZTpvLG5hbWU6cyxlbmRUaW1lOmksc3RhdHVzOmMsbGlua3M6dX09dDtyZXR1cm57c3Bhbl9pZDpuLHRyYWNlX2lkOmUsZGF0YTpyLGRlc2NyaXB0aW9uOnMscGFyZW50X3NwYW5faWQ6InBhcmVudFNwYW5JZCJpbiB0P3QucGFyZW50U3BhbklkOiJwYXJlbnRTcGFuQ29udGV4dCJpbiB0P3QucGFyZW50U3BhbkNvbnRleHQ/LnNwYW5JZDp2b2lkIDAsc3RhcnRfdGltZXN0YW1wOnl0KG8pLHRpbWVzdGFtcDp5dChpKXx8dm9pZCAwLHN0YXR1czp2dChjKSxvcDpyW3J0XSxvcmlnaW46cltvdF0sbGlua3M6Z3QodSl9fXJldHVybntzcGFuX2lkOm4sdHJhY2VfaWQ6ZSxzdGFydF90aW1lc3RhbXA6MCxkYXRhOnt9fX1mdW5jdGlvbiB2dCh0KXtpZih0JiZ0LmNvZGUhPT1zdClyZXR1cm4gdC5jb2RlPT09aXQ/Im9rIjp0Lm1lc3NhZ2V8fCJ1bmtub3duX2Vycm9yIn1jb25zdCB3dD0iX3NlbnRyeVJvb3RTcGFuIjtmdW5jdGlvbiBTdCh0KXtyZXR1cm4gdFt3dF18fHR9Y29uc3QgJHQ9NTAsRXQ9Ij8iLHh0PS9jYXB0dXJlTWVzc2FnZXxjYXB0dXJlRXhjZXB0aW9uLztmdW5jdGlvbiBOdCh0KXtyZXR1cm4gdFt0Lmxlbmd0aC0xXXx8e319Y29uc3QgQ3Q9Ijxhbm9ueW1vdXM+Ijtjb25zdCBUdD0icHJvZHVjdGlvbiIsa3Q9L15vKFxkKylcLi87ZnVuY3Rpb24ganQodCxuPSExKXtjb25zdHtob3N0OmUscGF0aDpyLHBhc3M6byxwb3J0OnMscHJvamVjdElkOmkscHJvdG9jb2w6YyxwdWJsaWNLZXk6dX09dDtyZXR1cm5gJHtjfTovLyR7dX0ke24mJm8/YDoke299YDoiIn1AJHtlfSR7cz9gOiR7c31gOiIifS8ke3I/YCR7cn0vYDpyfSR7aX1gfWNvbnN0IFJ0PSJfZnJvemVuRHNjIjtmdW5jdGlvbiBJdCh0LG4pe2NvbnN0IGU9bi5nZXRPcHRpb25zKCkse3B1YmxpY0tleTpyLGhvc3Q6b309bi5nZXREc24oKXx8e307bGV0IHM7ZS5vcmdJZD9zPVN0cmluZyhlLm9yZ0lkKTpvJiYocz1mdW5jdGlvbih0KXtjb25zdCBuPXQubWF0Y2goa3QpO3JldHVybiBuPy5bMV19KG8pKTtjb25zdCBpPXtlbnZpcm9ubWVudDplLmVudmlyb25tZW50fHxUdCxyZWxlYXNlOmUucmVsZWFzZSxwdWJsaWNfa2V5OnIsdHJhY2VfaWQ6dCxvcmdfaWQ6c307cmV0dXJuIG4uZW1pdCgiY3JlYXRlRHNjIixpKSxpfWZ1bmN0aW9uIE90KHQpe2NvbnN0IG49WCgpO2lmKCFuKXJldHVybnt9O2NvbnN0IGU9U3QodCkscj1fdChlKSxvPXIuZGF0YSxzPWUuc3BhbkNvbnRleHQoKS50cmFjZVN0YXRlLGk9cz8uZ2V0KCJzZW50cnkuc2FtcGxlX3JhdGUiKT8/b1tudF0/P29bZXRdO2Z1bmN0aW9uIGModCl7cmV0dXJuIm51bWJlciIhPXR5cGVvZiBpJiYic3RyaW5nIiE9dHlwZW9mIGl8fCh0LnNhbXBsZV9yYXRlPWAke2l9YCksdH1jb25zdCB1PWVbUnRdO2lmKHUpcmV0dXJuIGModSk7Y29uc3QgYT1zPy5nZXQoInNlbnRyeS5kc2MiKSxmPWEmJnB0KGEpO2lmKGYpcmV0dXJuIGMoZik7Y29uc3QgaD1JdCh0LnNwYW5Db250ZXh0KCkudHJhY2VJZCxuKSxwPW9bdHRdLGw9ci5kZXNjcmlwdGlvbjtyZXR1cm4idXJsIiE9PXAmJmwmJihoLnRyYW5zYWN0aW9uPWwpLGZ1bmN0aW9uKHQpe2lmKCJib29sZWFuIj09dHlwZW9mIF9fU0VOVFJZX1RSQUNJTkdfXyYmIV9fU0VOVFJZX1RSQUNJTkdfXylyZXR1cm4hMTtjb25zdCBuPXR8fFgoKT8uZ2V0T3B0aW9ucygpO3JldHVybiEoIW58fG51bGw9PW4udHJhY2VzU2FtcGxlUmF0ZSYmIW4udHJhY2VzU2FtcGxlcil9KCkmJihoLnNhbXBsZWQ9U3RyaW5nKGZ1bmN0aW9uKHQpe2NvbnN0e3RyYWNlRmxhZ3M6bn09dC5zcGFuQ29udGV4dCgpO3JldHVybiBuPT09ZHR9KGUpKSxoLnNhbXBsZV9yYW5kPXM/LmdldCgic2VudHJ5LnNhbXBsZV9yYW5kIik/P2F0KGUpLnNjb3BlPy5nZXRQcm9wYWdhdGlvbkNvbnRleHQoKS5zYW1wbGVSYW5kLnRvU3RyaW5nKCkpLGMoaCksbi5lbWl0KCJjcmVhdGVEc2MiLGgsZSksaH1mdW5jdGlvbiBEdCh0LG49MTAwLGU9MS8wKXt0cnl7cmV0dXJuIEF0KCIiLHQsbixlKX1jYXRjaCh0KXtyZXR1cm57RVJST1I6YCoqbm9uLXNlcmlhbGl6YWJsZSoqICgke3R9KWB9fX1mdW5jdGlvbiBBdCh0LG4sZT0xLzAscj0xLzAsbz1mdW5jdGlvbigpe2NvbnN0IHQ9bmV3IFdlYWtTZXQ7ZnVuY3Rpb24gbihuKXtyZXR1cm4hIXQuaGFzKG4pfHwodC5hZGQobiksITEpfWZ1bmN0aW9uIGUobil7dC5kZWxldGUobil9cmV0dXJuW24sZV19KCkpe2NvbnN0W3MsaV09bztpZihudWxsPT1ufHxbImJvb2xlYW4iLCJzdHJpbmciXS5pbmNsdWRlcyh0eXBlb2Ygbil8fCJudW1iZXIiPT10eXBlb2YgbiYmTnVtYmVyLmlzRmluaXRlKG4pKXJldHVybiBuO2NvbnN0IGM9ZnVuY3Rpb24odCxuKXt0cnl7aWYoImRvbWFpbiI9PT10JiZuJiYib2JqZWN0Ij09dHlwZW9mIG4mJm4uVSlyZXR1cm4iW0RvbWFpbl0iO2lmKCJkb21haW5FbWl0dGVyIj09PXQpcmV0dXJuIltEb21haW5FbWl0dGVyXSI7aWYoInVuZGVmaW5lZCIhPXR5cGVvZiBnbG9iYWwmJm49PT1nbG9iYWwpcmV0dXJuIltHbG9iYWxdIjtpZigidW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdyYmbj09PXdpbmRvdylyZXR1cm4iW1dpbmRvd10iO2lmKCJ1bmRlZmluZWQiIT10eXBlb2YgZG9jdW1lbnQmJm49PT1kb2N1bWVudClyZXR1cm4iW0RvY3VtZW50XSI7aWYoIm9iamVjdCI9PXR5cGVvZihlPW4pJiZudWxsIT09ZSYmKGUuX19pc1Z1ZXx8ZS5NKSlyZXR1cm4iW1Z1ZVZpZXdNb2RlbF0iO2lmKGZ1bmN0aW9uKHQpe3JldHVybiB2KHQpJiYibmF0aXZlRXZlbnQiaW4gdCYmInByZXZlbnREZWZhdWx0ImluIHQmJiJzdG9wUHJvcGFnYXRpb24iaW4gdH0obikpcmV0dXJuIltTeW50aGV0aWNFdmVudF0iO2lmKCJudW1iZXIiPT10eXBlb2YgbiYmIU51bWJlci5pc0Zpbml0ZShuKSlyZXR1cm5gWyR7bn1dYDtpZigiZnVuY3Rpb24iPT10eXBlb2YgbilyZXR1cm5gW0Z1bmN0aW9uOiAke2Z1bmN0aW9uKHQpe3RyeXtyZXR1cm4gdCYmImZ1bmN0aW9uIj09dHlwZW9mIHQmJnQubmFtZXx8Q3R9Y2F0Y2godCl7cmV0dXJuIEN0fX0obil9XWA7aWYoInN5bWJvbCI9PXR5cGVvZiBuKXJldHVybmBbJHtTdHJpbmcobil9XWA7aWYoImJpZ2ludCI9PXR5cGVvZiBuKXJldHVybmBbQmlnSW50OiAke1N0cmluZyhuKX1dYDtjb25zdCByPWZ1bmN0aW9uKHQpe2NvbnN0IG49T2JqZWN0LmdldFByb3RvdHlwZU9mKHQpO3JldHVybiBuPy5jb25zdHJ1Y3Rvcj9uLmNvbnN0cnVjdG9yLm5hbWU6Im51bGwgcHJvdG90eXBlIn0obik7cmV0dXJuL15IVE1MKFx3KilFbGVtZW50JC8udGVzdChyKT9gW0hUTUxFbGVtZW50OiAke3J9XWA6YFtvYmplY3QgJHtyfV1gfWNhdGNoKHQpe3JldHVybmAqKm5vbi1zZXJpYWxpemFibGUqKiAoJHt0fSlgfXZhciBlfSh0LG4pO2lmKCFjLnN0YXJ0c1dpdGgoIltvYmplY3QgIikpcmV0dXJuIGM7aWYobi5fX3NlbnRyeV9za2lwX25vcm1hbGl6YXRpb25fXylyZXR1cm4gbjtjb25zdCB1PSJudW1iZXIiPT10eXBlb2Ygbi5fX3NlbnRyeV9vdmVycmlkZV9ub3JtYWxpemF0aW9uX2RlcHRoX18/bi5fX3NlbnRyeV9vdmVycmlkZV9ub3JtYWxpemF0aW9uX2RlcHRoX186ZTtpZigwPT09dSlyZXR1cm4gYy5yZXBsYWNlKCJvYmplY3QgIiwiIik7aWYocyhuKSlyZXR1cm4iW0NpcmN1bGFyIH5dIjtjb25zdCBhPW47aWYoYSYmImZ1bmN0aW9uIj09dHlwZW9mIGEudG9KU09OKXRyeXtyZXR1cm4gQXQoIiIsYS50b0pTT04oKSx1LTEscixvKX1jYXRjaCh0KXt9Y29uc3QgZj1BcnJheS5pc0FycmF5KG4pP1tdOnt9O2xldCBoPTA7Y29uc3QgcD1SKG4pO2Zvcihjb25zdCB0IGluIHApe2lmKCFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocCx0KSljb250aW51ZTtpZihoPj1yKXtmW3RdPSJbTWF4UHJvcGVydGllcyB+XSI7YnJlYWt9Y29uc3Qgbj1wW3RdO2ZbdF09QXQodCxuLHUtMSxyLG8pLGgrK31yZXR1cm4gaShuKSxmfWZ1bmN0aW9uIFB0KHQsbil7Y29uc3QgZT1uLnJlcGxhY2UoL1xcL2csIi8iKS5yZXBsYWNlKC9bfFxce30oKVtcXV4kKyo/Ll0vZywiXFwkJiIpO2xldCByPXQ7dHJ5e3I9ZGVjb2RlVVJJKHQpfWNhdGNoKHQpe31yZXR1cm4gci5yZXBsYWNlKC9cXC9nLCIvIikucmVwbGFjZSgvd2VicGFjazpcLz8vZywiIikucmVwbGFjZShuZXcgUmVnRXhwKGAoZmlsZTovLyk/Lyoke2V9LypgLCJpZyIpLCJhcHA6Ly8vIil9ZnVuY3Rpb24gVXQodCxuPVtdKXtyZXR1cm5bdCxuXX1mdW5jdGlvbiBNdCh0LG4pe2NvbnN0IGU9dFsxXTtmb3IoY29uc3QgdCBvZiBlKXtpZihuKHQsdFswXS50eXBlKSlyZXR1cm4hMH1yZXR1cm4hMX1mdW5jdGlvbiBMdCh0KXtjb25zdCBuPW0obCk7cmV0dXJuIG4uZW5jb2RlUG9seWZpbGw/bi5lbmNvZGVQb2x5ZmlsbCh0KToobmV3IFRleHRFbmNvZGVyKS5lbmNvZGUodCl9ZnVuY3Rpb24gQnQodCl7Y29uc3RbbixlXT10O2xldCByPUpTT04uc3RyaW5naWZ5KG4pO2Z1bmN0aW9uIG8odCl7InN0cmluZyI9PXR5cGVvZiByP3I9InN0cmluZyI9PXR5cGVvZiB0P3IrdDpbTHQociksdF06ci5wdXNoKCJzdHJpbmciPT10eXBlb2YgdD9MdCh0KTp0KX1mb3IoY29uc3QgdCBvZiBlKXtjb25zdFtuLGVdPXQ7aWYobyhgXG4ke0pTT04uc3RyaW5naWZ5KG4pfVxuYCksInN0cmluZyI9PXR5cGVvZiBlfHxlIGluc3RhbmNlb2YgVWludDhBcnJheSlvKGUpO2Vsc2V7bGV0IHQ7dHJ5e3Q9SlNPTi5zdHJpbmdpZnkoZSl9Y2F0Y2gobil7dD1KU09OLnN0cmluZ2lmeShEdChlKSl9byh0KX19cmV0dXJuInN0cmluZyI9PXR5cGVvZiByP3I6ZnVuY3Rpb24odCl7Y29uc3Qgbj10LnJlZHVjZSgoKHQsbik9PnQrbi5sZW5ndGgpLDApLGU9bmV3IFVpbnQ4QXJyYXkobik7bGV0IHI9MDtmb3IoY29uc3QgbiBvZiB0KWUuc2V0KG4scikscis9bi5sZW5ndGg7cmV0dXJuIGV9KHIpfWNvbnN0IEd0PXtzZXNzaW9uOiJzZXNzaW9uIixzZXNzaW9uczoic2Vzc2lvbiIsYXR0YWNobWVudDoiYXR0YWNobWVudCIsdHJhbnNhY3Rpb246InRyYW5zYWN0aW9uIixldmVudDoiZXJyb3IiLGNsaWVudF9yZXBvcnQ6ImludGVybmFsIix1c2VyX3JlcG9ydDoiZGVmYXVsdCIscHJvZmlsZToicHJvZmlsZSIscHJvZmlsZV9jaHVuazoicHJvZmlsZSIscmVwbGF5X2V2ZW50OiJyZXBsYXkiLHJlcGxheV9yZWNvcmRpbmc6InJlcGxheSIsY2hlY2tfaW46Im1vbml0b3IiLGZlZWRiYWNrOiJmZWVkYmFjayIsc3Bhbjoic3BhbiIscmF3X3NlY3VyaXR5OiJzZWN1cml0eSIsbG9nOiJsb2dfaXRlbSJ9O2Z1bmN0aW9uIEp0KHQpe2lmKCF0Py5zZGspcmV0dXJuO2NvbnN0e25hbWU6bix2ZXJzaW9uOmV9PXQuc2RrO3JldHVybntuYW1lOm4sdmVyc2lvbjplfX1mdW5jdGlvbiB6dCh0LG4sZSxyKXtjb25zdCBvPUp0KGUpLHM9dC50eXBlJiYicmVwbGF5X2V2ZW50IiE9PXQudHlwZT90LnR5cGU6ImV2ZW50IjshZnVuY3Rpb24odCxuKXtuJiYodC5zZGs9dC5zZGt8fHt9LHQuc2RrLm5hbWU9dC5zZGsubmFtZXx8bi5uYW1lLHQuc2RrLnZlcnNpb249dC5zZGsudmVyc2lvbnx8bi52ZXJzaW9uLHQuc2RrLmludGVncmF0aW9ucz1bLi4udC5zZGsuaW50ZWdyYXRpb25zfHxbXSwuLi5uLmludGVncmF0aW9uc3x8W11dLHQuc2RrLnBhY2thZ2VzPVsuLi50LnNkay5wYWNrYWdlc3x8W10sLi4ubi5wYWNrYWdlc3x8W11dKX0odCxlPy5zZGspO2NvbnN0IGk9ZnVuY3Rpb24odCxuLGUscil7Y29uc3Qgbz10LnNka1Byb2Nlc3NpbmdNZXRhZGF0YT8uZHluYW1pY1NhbXBsaW5nQ29udGV4dDtyZXR1cm57ZXZlbnRfaWQ6dC5ldmVudF9pZCxzZW50X2F0OihuZXcgRGF0ZSkudG9JU09TdHJpbmcoKSwuLi5uJiZ7c2RrOm59LC4uLiEhZSYmciYme2RzbjpqdChyKX0sLi4ubyYme3RyYWNlOm99fX0odCxvLHIsbik7ZGVsZXRlIHQuc2RrUHJvY2Vzc2luZ01ldGFkYXRhO3JldHVybiBVdChpLFtbe3R5cGU6c30sdF1dKX1jb25zdCBIdD0iX19TRU5UUllfU1VQUFJFU1NfVFJBQ0lOR19fIjtmdW5jdGlvbiBGdCh0KXtjb25zdCBuPVEoZCgpKTtyZXR1cm4gbi5zdXBwcmVzc1RyYWNpbmc/bi5zdXBwcmVzc1RyYWNpbmcodCk6ZnVuY3Rpb24oLi4udCl7Y29uc3Qgbj1RKGQoKSk7aWYoMj09PXQubGVuZ3RoKXtjb25zdFtlLHJdPXQ7cmV0dXJuIGU/bi53aXRoU2V0U2NvcGUoZSxyKTpuLndpdGhTY29wZShyKX1yZXR1cm4gbi53aXRoU2NvcGUodFswXSl9KChuPT4obi5zZXRTREtQcm9jZXNzaW5nTWV0YWRhdGEoe1tIdF06ITB9KSx0KCkpKSl9dmFyIFd0O2Z1bmN0aW9uIFl0KHQpe3JldHVybiBuZXcgS3QoKG49PntuKHQpfSkpfSFmdW5jdGlvbih0KXt0W3QuUEVORElORz0wXT0iUEVORElORyI7dFt0LlJFU09MVkVEPTFdPSJSRVNPTFZFRCI7dFt0LlJFSkVDVEVEPTJdPSJSRUpFQ1RFRCJ9KFd0fHwoV3Q9e30pKTtjbGFzcyBLdHtjb25zdHJ1Y3Rvcih0KXt0aGlzLkw9V3QuUEVORElORyx0aGlzLkI9W10sdGhpcy5HKHQpfXRoZW4odCxuKXtyZXR1cm4gbmV3IEt0KCgoZSxyKT0+e3RoaXMuQi5wdXNoKFshMSxuPT57aWYodCl0cnl7ZSh0KG4pKX1jYXRjaCh0KXtyKHQpfWVsc2UgZShuKX0sdD0+e2lmKG4pdHJ5e2Uobih0KSl9Y2F0Y2godCl7cih0KX1lbHNlIHIodCl9XSksdGhpcy5KKCl9KSl9Y2F0Y2godCl7cmV0dXJuIHRoaXMudGhlbigodD0+dCksdCl9ZmluYWxseSh0KXtyZXR1cm4gbmV3IEt0KCgobixlKT0+e2xldCByLG87cmV0dXJuIHRoaXMudGhlbigobj0+e289ITEscj1uLHQmJnQoKX0pLChuPT57bz0hMCxyPW4sdCYmdCgpfSkpLnRoZW4oKCgpPT57bz9lKHIpOm4ocil9KSl9KSl9Sigpe2lmKHRoaXMuTD09PVd0LlBFTkRJTkcpcmV0dXJuO2NvbnN0IHQ9dGhpcy5CLnNsaWNlKCk7dGhpcy5CPVtdLHQuZm9yRWFjaCgodD0+e3RbMF18fCh0aGlzLkw9PT1XdC5SRVNPTFZFRCYmdFsxXSh0aGlzLkgpLHRoaXMuTD09PVd0LlJFSkVDVEVEJiZ0WzJdKHRoaXMuSCksdFswXT0hMCl9KSl9Ryh0KXtjb25zdCBuPSh0LG4pPT57dGhpcy5MPT09V3QuUEVORElORyYmKHcobik/bi50aGVuKGUscik6KHRoaXMuTD10LHRoaXMuSD1uLHRoaXMuSigpKSl9LGU9dD0+e24oV3QuUkVTT0xWRUQsdCl9LHI9dD0+e24oV3QuUkVKRUNURUQsdCl9O3RyeXt0KGUscil9Y2F0Y2godCl7cih0KX19fWZ1bmN0aW9uIFZ0KHQsbil7Y29uc3R7ZmluZ2VycHJpbnQ6ZSxzcGFuOnIsYnJlYWRjcnVtYnM6byxzZGtQcm9jZXNzaW5nTWV0YWRhdGE6c309bjshZnVuY3Rpb24odCxuKXtjb25zdHtleHRyYTplLHRhZ3M6cix1c2VyOm8sY29udGV4dHM6cyxsZXZlbDppLHRyYW5zYWN0aW9uTmFtZTpjfT1uO09iamVjdC5rZXlzKGUpLmxlbmd0aCYmKHQuZXh0cmE9ey4uLmUsLi4udC5leHRyYX0pO09iamVjdC5rZXlzKHIpLmxlbmd0aCYmKHQudGFncz17Li4uciwuLi50LnRhZ3N9KTtPYmplY3Qua2V5cyhvKS5sZW5ndGgmJih0LnVzZXI9ey4uLm8sLi4udC51c2VyfSk7T2JqZWN0LmtleXMocykubGVuZ3RoJiYodC5jb250ZXh0cz17Li4ucywuLi50LmNvbnRleHRzfSk7aSYmKHQubGV2ZWw9aSk7YyYmInRyYW5zYWN0aW9uIiE9PXQudHlwZSYmKHQudHJhbnNhY3Rpb249Yyl9KHQsbiksciYmZnVuY3Rpb24odCxuKXt0LmNvbnRleHRzPXt0cmFjZTptdChuKSwuLi50LmNvbnRleHRzfSx0LnNka1Byb2Nlc3NpbmdNZXRhZGF0YT17ZHluYW1pY1NhbXBsaW5nQ29udGV4dDpPdChuKSwuLi50LnNka1Byb2Nlc3NpbmdNZXRhZGF0YX07Y29uc3QgZT1TdChuKSxyPV90KGUpLmRlc2NyaXB0aW9uO3ImJiF0LnRyYW5zYWN0aW9uJiYidHJhbnNhY3Rpb24iPT09dC50eXBlJiYodC50cmFuc2FjdGlvbj1yKX0odCxyKSxmdW5jdGlvbih0LG4pe3QuZmluZ2VycHJpbnQ9dC5maW5nZXJwcmludD9BcnJheS5pc0FycmF5KHQuZmluZ2VycHJpbnQpP3QuZmluZ2VycHJpbnQ6W3QuZmluZ2VycHJpbnRdOltdLG4mJih0LmZpbmdlcnByaW50PXQuZmluZ2VycHJpbnQuY29uY2F0KG4pKTt0LmZpbmdlcnByaW50Lmxlbmd0aHx8ZGVsZXRlIHQuZmluZ2VycHJpbnR9KHQsZSksZnVuY3Rpb24odCxuKXtjb25zdCBlPVsuLi50LmJyZWFkY3J1bWJzfHxbXSwuLi5uXTt0LmJyZWFkY3J1bWJzPWUubGVuZ3RoP2U6dm9pZCAwfSh0LG8pLGZ1bmN0aW9uKHQsbil7dC5zZGtQcm9jZXNzaW5nTWV0YWRhdGE9ey4uLnQuc2RrUHJvY2Vzc2luZ01ldGFkYXRhLC4uLm59fSh0LHMpfWNvbnN0IFp0PSI3Ijtjb25zdCBxdD1TeW1ib2wuZm9yKCJTZW50cnlCdWZmZXJGdWxsRXJyb3IiKTtmdW5jdGlvbiBRdCh0KXtjb25zdCBuPVtdO2Z1bmN0aW9uIGUodCl7cmV0dXJuIG4uc3BsaWNlKG4uaW5kZXhPZih0KSwxKVswXXx8UHJvbWlzZS5yZXNvbHZlKHZvaWQgMCl9cmV0dXJueyQ6bixhZGQ6ZnVuY3Rpb24ocil7aWYoISh2b2lkIDA9PT10fHxuLmxlbmd0aDx0KSlyZXR1cm4gbz1xdCxuZXcgS3QoKCh0LG4pPT57bihvKX0pKTt2YXIgbztjb25zdCBzPXIoKTtyZXR1cm4tMT09PW4uaW5kZXhPZihzKSYmbi5wdXNoKHMpLHMudGhlbigoKCk9PmUocykpKS50aGVuKG51bGwsKCgpPT5lKHMpLnRoZW4obnVsbCwoKCk9Pnt9KSkpKSxzfSxkcmFpbjpmdW5jdGlvbih0KXtyZXR1cm4gbmV3IEt0KCgoZSxyKT0+e2xldCBvPW4ubGVuZ3RoO2lmKCFvKXJldHVybiBlKCEwKTtjb25zdCBzPXNldFRpbWVvdXQoKCgpPT57dCYmdD4wJiZlKCExKX0pLHQpO24uZm9yRWFjaCgodD0+e1l0KHQpLnRoZW4oKCgpPT57LS1vfHwoY2xlYXJUaW1lb3V0KHMpLGUoITApKX0pLHIpfSkpfSkpfX19Y29uc3QgWHQ9NmU0O2Z1bmN0aW9uIHRuKHQse3N0YXR1c0NvZGU6bixoZWFkZXJzOmV9LHI9RGF0ZS5ub3coKSl7Y29uc3Qgbz17Li4udH0scz1lPy5bIngtc2VudHJ5LXJhdGUtbGltaXRzIl0saT1lPy5bInJldHJ5LWFmdGVyIl07aWYocylmb3IoY29uc3QgdCBvZiBzLnRyaW0oKS5zcGxpdCgiLCIpKXtjb25zdFtuLGUsLCxzXT10LnNwbGl0KCI6Iiw1KSxpPXBhcnNlSW50KG4sMTApLGM9MWUzKihpc05hTihpKT82MDppKTtpZihlKWZvcihjb25zdCB0IG9mIGUuc3BsaXQoIjsiKSkibWV0cmljX2J1Y2tldCI9PT10JiZzJiYhcy5zcGxpdCgiOyIpLmluY2x1ZGVzKCJjdXN0b20iKXx8KG9bdF09citjKTtlbHNlIG8uYWxsPXIrY31lbHNlIGk/by5hbGw9citmdW5jdGlvbih0LG49RGF0ZS5ub3coKSl7Y29uc3QgZT1wYXJzZUludChgJHt0fWAsMTApO2lmKCFpc05hTihlKSlyZXR1cm4gMWUzKmU7Y29uc3Qgcj1EYXRlLnBhcnNlKGAke3R9YCk7cmV0dXJuIGlzTmFOKHIpP1h0OnItbn0oaSxyKTo0Mjk9PT1uJiYoby5hbGw9cis2ZTQpO3JldHVybiBvfWNvbnN0IG5uPTY0O2Z1bmN0aW9uIGVuKHQsbixlPVF0KHQuYnVmZmVyU2l6ZXx8bm4pKXtsZXQgcj17fTtyZXR1cm57c2VuZDpmdW5jdGlvbih0KXtjb25zdCBvPVtdO2lmKE10KHQsKCh0LG4pPT57Y29uc3QgZT1mdW5jdGlvbih0KXtyZXR1cm4gR3RbdF19KG4pOyhmdW5jdGlvbih0LG4sZT1EYXRlLm5vdygpKXtyZXR1cm4gZnVuY3Rpb24odCxuKXtyZXR1cm4gdFtuXXx8dC5hbGx8fDB9KHQsbik+ZX0pKHIsZSl8fG8ucHVzaCh0KX0pKSwwPT09by5sZW5ndGgpcmV0dXJuIFl0KHt9KTtjb25zdCBzPVV0KHRbMF0sbyksaT10PT57TXQocywoKHQsbik9Pnt9KSl9O3JldHVybiBlLmFkZCgoKCk9Pm4oe2JvZHk6QnQocyl9KS50aGVuKCh0PT4odm9pZCAwIT09dC5zdGF0dXNDb2RlJiYodC5zdGF0dXNDb2RlPDIwMHx8dC5zdGF0dXNDb2RlPj0zMDApJiZoJiZrLndhcm4oYFNlbnRyeSByZXNwb25kZWQgd2l0aCBzdGF0dXMgY29kZSAke3Quc3RhdHVzQ29kZX0gdG8gc2VudCBldmVudC5gKSxyPXRuKHIsdCksdCkpLCh0PT57dGhyb3cgaSgpLGgmJmsuZXJyb3IoIkVuY291bnRlcmVkIGVycm9yIHJ1bm5pbmcgdHJhbnNwb3J0IHJlcXVlc3Q6Iix0KSx0fSkpKSkudGhlbigodD0+dCksKHQ9PntpZih0PT09cXQpcmV0dXJuIGgmJmsuZXJyb3IoIlNraXBwZWQgc2VuZGluZyBldmVudCBiZWNhdXNlIGJ1ZmZlciBpcyBmdWxsLiIpLGkoKSxZdCh7fSk7dGhyb3cgdH0pKX0sZmx1c2g6dD0+ZS5kcmFpbih0KX19Y29uc3Qgcm49L14oXFMrOlxcfFwvPykoW1xzXFNdKj8pKCg/OlwuezEsMn18W14vXFxdKz98KShcLlteLi9cXF0qfCkpKD86Wy9cXF0qKSQvO2Z1bmN0aW9uIG9uKHQpe2NvbnN0IG49ZnVuY3Rpb24odCl7Y29uc3Qgbj10Lmxlbmd0aD4xMDI0P2A8dHJ1bmNhdGVkPiR7dC5zbGljZSgtMTAyNCl9YDp0LGU9cm4uZXhlYyhuKTtyZXR1cm4gZT9lLnNsaWNlKDEpOltdfSh0KSxlPW5bMF18fCIiO2xldCByPW5bMV07cmV0dXJuIGV8fHI/KHImJihyPXIuc2xpY2UoMCxyLmxlbmd0aC0xKSksZStyKToiLiJ9ZnVuY3Rpb24gc24odCxuPSExKXtyZXR1cm4hKG58fHQmJiF0LnN0YXJ0c1dpdGgoIi8iKSYmIXQubWF0Y2goL15bQS1aXTovKSYmIXQuc3RhcnRzV2l0aCgiLiIpJiYhdC5tYXRjaCgvXlthLXpBLVpdKFthLXpBLVowLTkuXC0rXSkqOlwvXC8vKSkmJnZvaWQgMCE9PXQmJiF0LmluY2x1ZGVzKCJub2RlX21vZHVsZXMvIil9Y29uc3QgY249U3ltYm9sKCJBZ2VudEJhc2VJbnRlcm5hbFN0YXRlIik7Y2xhc3MgdW4gZXh0ZW5kcyBzLkFnZW50e2NvbnN0cnVjdG9yKHQpe3N1cGVyKHQpLHRoaXNbY25dPXt9fWlzU2VjdXJlRW5kcG9pbnQodCl7aWYodCl7aWYoImJvb2xlYW4iPT10eXBlb2YgdC5zZWN1cmVFbmRwb2ludClyZXR1cm4gdC5zZWN1cmVFbmRwb2ludDtpZigic3RyaW5nIj09dHlwZW9mIHQucHJvdG9jb2wpcmV0dXJuImh0dHBzOiI9PT10LnByb3RvY29sfWNvbnN0e3N0YWNrOm59PW5ldyBFcnJvcjtyZXR1cm4ic3RyaW5nIj09dHlwZW9mIG4mJm4uc3BsaXQoIlxuIikuc29tZSgodD0+LTEhPT10LmluZGV4T2YoIihodHRwcy5qczoiKXx8LTEhPT10LmluZGV4T2YoIm5vZGU6aHR0cHM6IikpKX1jcmVhdGVTb2NrZXQodCxuLGUpe2NvbnN0IHI9ey4uLm4sc2VjdXJlRW5kcG9pbnQ6dGhpcy5pc1NlY3VyZUVuZHBvaW50KG4pfTtQcm9taXNlLnJlc29sdmUoKS50aGVuKCgoKT0+dGhpcy5jb25uZWN0KHQscikpKS50aGVuKChvPT57aWYobyBpbnN0YW5jZW9mIHMuQWdlbnQpcmV0dXJuIG8uYWRkUmVxdWVzdCh0LHIpO3RoaXNbY25dLmN1cnJlbnRTb2NrZXQ9byxzdXBlci5jcmVhdGVTb2NrZXQodCxuLGUpfSksZSl9Y3JlYXRlQ29ubmVjdGlvbigpe2NvbnN0IHQ9dGhpc1tjbl0uY3VycmVudFNvY2tldDtpZih0aGlzW2NuXS5jdXJyZW50U29ja2V0PXZvaWQgMCwhdCl0aHJvdyBuZXcgRXJyb3IoIk5vIHNvY2tldCB3YXMgcmV0dXJuZWQgaW4gdGhlIGBjb25uZWN0KClgIGZ1bmN0aW9uIik7cmV0dXJuIHR9Z2V0IGRlZmF1bHRQb3J0KCl7cmV0dXJuIHRoaXNbY25dLmRlZmF1bHRQb3J0Pz8oImh0dHBzOiI9PT10aGlzLnByb3RvY29sPzQ0Mzo4MCl9c2V0IGRlZmF1bHRQb3J0KHQpe3RoaXNbY25dJiYodGhpc1tjbl0uZGVmYXVsdFBvcnQ9dCl9Z2V0IHByb3RvY29sKCl7cmV0dXJuIHRoaXNbY25dLnByb3RvY29sPz8odGhpcy5pc1NlY3VyZUVuZHBvaW50KCk/Imh0dHBzOiI6Imh0dHA6Iil9c2V0IHByb3RvY29sKHQpe3RoaXNbY25dJiYodGhpc1tjbl0ucHJvdG9jb2w9dCl9fWZ1bmN0aW9uIGFuKC4uLnQpe2subG9nKCJbaHR0cHMtcHJveHktYWdlbnQ6cGFyc2UtcHJveHktcmVzcG9uc2VdIiwuLi50KX1mdW5jdGlvbiBmbih0KXtyZXR1cm4gbmV3IFByb21pc2UoKChuLGUpPT57bGV0IHI9MDtjb25zdCBvPVtdO2Z1bmN0aW9uIHMoKXtjb25zdCBjPXQucmVhZCgpO2M/ZnVuY3Rpb24oYyl7by5wdXNoKGMpLHIrPWMubGVuZ3RoO2NvbnN0IHU9QnVmZmVyLmNvbmNhdChvLHIpLGE9dS5pbmRleE9mKCJcclxuXHJcbiIpO2lmKC0xPT09YSlyZXR1cm4gYW4oImhhdmUgbm90IHJlY2VpdmVkIGVuZCBvZiBIVFRQIGhlYWRlcnMgeWV0Li4uIiksdm9pZCBzKCk7Y29uc3QgZj11LnN1YmFycmF5KDAsYSkudG9TdHJpbmcoImFzY2lpIikuc3BsaXQoIlxyXG4iKSxoPWYuc2hpZnQoKTtpZighaClyZXR1cm4gdC5kZXN0cm95KCksZShuZXcgRXJyb3IoIk5vIGhlYWRlciByZWNlaXZlZCBmcm9tIHByb3h5IENPTk5FQ1QgcmVzcG9uc2UiKSk7Y29uc3QgcD1oLnNwbGl0KCIgIiksbD0rKHBbMV18fDApLGQ9cC5zbGljZSgyKS5qb2luKCIgIiksbT17fTtmb3IoY29uc3QgbiBvZiBmKXtpZighbiljb250aW51ZTtjb25zdCByPW4uaW5kZXhPZigiOiIpO2lmKC0xPT09cilyZXR1cm4gdC5kZXN0cm95KCksZShuZXcgRXJyb3IoYEludmFsaWQgaGVhZGVyIGZyb20gcHJveHkgQ09OTkVDVCByZXNwb25zZTogIiR7bn0iYCkpO2NvbnN0IG89bi5zbGljZSgwLHIpLnRvTG93ZXJDYXNlKCkscz1uLnNsaWNlKHIrMSkudHJpbVN0YXJ0KCksaT1tW29dOyJzdHJpbmciPT10eXBlb2YgaT9tW29dPVtpLHNdOkFycmF5LmlzQXJyYXkoaSk/aS5wdXNoKHMpOm1bb109c31hbigiZ290IHByb3h5IHNlcnZlciByZXNwb25zZTogJW8gJW8iLGgsbSksaSgpLG4oe2Nvbm5lY3Q6e3N0YXR1c0NvZGU6bCxzdGF0dXNUZXh0OmQsaGVhZGVyczptfSxidWZmZXJlZDp1fSl9KGMpOnQub25jZSgicmVhZGFibGUiLHMpfWZ1bmN0aW9uIGkoKXt0LnJlbW92ZUxpc3RlbmVyKCJlbmQiLGMpLHQucmVtb3ZlTGlzdGVuZXIoImVycm9yIix1KSx0LnJlbW92ZUxpc3RlbmVyKCJyZWFkYWJsZSIscyl9ZnVuY3Rpb24gYygpe2koKSxhbigib25lbmQiKSxlKG5ldyBFcnJvcigiUHJveHkgY29ubmVjdGlvbiBlbmRlZCBiZWZvcmUgcmVjZWl2aW5nIENPTk5FQ1QgcmVzcG9uc2UiKSl9ZnVuY3Rpb24gdSh0KXtpKCksYW4oIm9uZXJyb3IgJW8iLHQpLGUodCl9dC5vbigiZXJyb3IiLHUpLHQub24oImVuZCIsYykscygpfSkpfWZ1bmN0aW9uIGhuKC4uLnQpe2subG9nKCJbaHR0cHMtcHJveHktYWdlbnRdIiwuLi50KX1jbGFzcyBwbiBleHRlbmRzIHVue3N0YXRpYyBfX2luaXRTdGF0aWMoKXt0aGlzLnByb3RvY29scz1bImh0dHAiLCJodHRwcyJdfWNvbnN0cnVjdG9yKHQsbil7c3VwZXIobiksdGhpcy5vcHRpb25zPXt9LHRoaXMucHJveHk9InN0cmluZyI9PXR5cGVvZiB0P25ldyBVUkwodCk6dCx0aGlzLnByb3h5SGVhZGVycz1uPy5oZWFkZXJzPz97fSxobigiQ3JlYXRpbmcgbmV3IEh0dHBzUHJveHlBZ2VudCBpbnN0YW5jZTogJW8iLHRoaXMucHJveHkuaHJlZik7Y29uc3QgZT0odGhpcy5wcm94eS5ob3N0bmFtZXx8dGhpcy5wcm94eS5ob3N0KS5yZXBsYWNlKC9eXFt8XF0kL2csIiIpLHI9dGhpcy5wcm94eS5wb3J0P3BhcnNlSW50KHRoaXMucHJveHkucG9ydCwxMCk6Imh0dHBzOiI9PT10aGlzLnByb3h5LnByb3RvY29sPzQ0Mzo4MDt0aGlzLmNvbm5lY3RPcHRzPXtBTFBOUHJvdG9jb2xzOlsiaHR0cC8xLjEiXSwuLi5uP2RuKG4sImhlYWRlcnMiKTpudWxsLGhvc3Q6ZSxwb3J0OnJ9fWFzeW5jIGNvbm5lY3QodCxuKXtjb25zdHtwcm94eTplfT10aGlzO2lmKCFuLmhvc3QpdGhyb3cgbmV3IFR5cGVFcnJvcignTm8gImhvc3QiIHByb3ZpZGVkJyk7bGV0IHI7aWYoImh0dHBzOiI9PT1lLnByb3RvY29sKXtobigiQ3JlYXRpbmcgYHRscy5Tb2NrZXRgOiAlbyIsdGhpcy5jb25uZWN0T3B0cyk7Y29uc3QgdD10aGlzLmNvbm5lY3RPcHRzLnNlcnZlcm5hbWV8fHRoaXMuY29ubmVjdE9wdHMuaG9zdDtyPWYuY29ubmVjdCh7Li4udGhpcy5jb25uZWN0T3B0cyxzZXJ2ZXJuYW1lOnQmJmEuaXNJUCh0KT92b2lkIDA6dH0pfWVsc2UgaG4oIkNyZWF0aW5nIGBuZXQuU29ja2V0YDogJW8iLHRoaXMuY29ubmVjdE9wdHMpLHI9YS5jb25uZWN0KHRoaXMuY29ubmVjdE9wdHMpO2NvbnN0IG89ImZ1bmN0aW9uIj09dHlwZW9mIHRoaXMucHJveHlIZWFkZXJzP3RoaXMucHJveHlIZWFkZXJzKCk6ey4uLnRoaXMucHJveHlIZWFkZXJzfSxzPWEuaXNJUHY2KG4uaG9zdCk/YFske24uaG9zdH1dYDpuLmhvc3Q7bGV0IGk9YENPTk5FQ1QgJHtzfToke24ucG9ydH0gSFRUUC8xLjFcclxuYDtpZihlLnVzZXJuYW1lfHxlLnBhc3N3b3JkKXtjb25zdCB0PWAke2RlY29kZVVSSUNvbXBvbmVudChlLnVzZXJuYW1lKX06JHtkZWNvZGVVUklDb21wb25lbnQoZS5wYXNzd29yZCl9YDtvWyJQcm94eS1BdXRob3JpemF0aW9uIl09YEJhc2ljICR7QnVmZmVyLmZyb20odCkudG9TdHJpbmcoImJhc2U2NCIpfWB9by5Ib3N0PWAke3N9OiR7bi5wb3J0fWAsb1siUHJveHktQ29ubmVjdGlvbiJdfHwob1siUHJveHktQ29ubmVjdGlvbiJdPXRoaXMua2VlcEFsaXZlPyJLZWVwLUFsaXZlIjoiY2xvc2UiKTtmb3IoY29uc3QgdCBvZiBPYmplY3Qua2V5cyhvKSlpKz1gJHt0fTogJHtvW3RdfVxyXG5gO2NvbnN0IGM9Zm4ocik7ci53cml0ZShgJHtpfVxyXG5gKTtjb25zdHtjb25uZWN0OnUsYnVmZmVyZWQ6aH09YXdhaXQgYztpZih0LmVtaXQoInByb3h5Q29ubmVjdCIsdSksdGhpcy5lbWl0KCJwcm94eUNvbm5lY3QiLHUsdCksMjAwPT09dS5zdGF0dXNDb2RlKXtpZih0Lm9uY2UoInNvY2tldCIsbG4pLG4uc2VjdXJlRW5kcG9pbnQpe2huKCJVcGdyYWRpbmcgc29ja2V0IGNvbm5lY3Rpb24gdG8gVExTIik7Y29uc3QgdD1uLnNlcnZlcm5hbWV8fG4uaG9zdDtyZXR1cm4gZi5jb25uZWN0KHsuLi5kbihuLCJob3N0IiwicGF0aCIsInBvcnQiKSxzb2NrZXQ6cixzZXJ2ZXJuYW1lOmEuaXNJUCh0KT92b2lkIDA6dH0pfXJldHVybiByfXIuZGVzdHJveSgpO2NvbnN0IHA9bmV3IGEuU29ja2V0KHt3cml0YWJsZTohMX0pO3JldHVybiBwLnJlYWRhYmxlPSEwLHQub25jZSgic29ja2V0IiwodD0+e2huKCJSZXBsYXlpbmcgcHJveHkgYnVmZmVyIGZvciBmYWlsZWQgcmVxdWVzdCIpLHQucHVzaChoKSx0LnB1c2gobnVsbCl9KSkscH19ZnVuY3Rpb24gbG4odCl7dC5yZXN1bWUoKX1mdW5jdGlvbiBkbih0LC4uLm4pe2NvbnN0IGU9e307bGV0IHI7Zm9yKHIgaW4gdCluLmluY2x1ZGVzKHIpfHwoZVtyXT10W3JdKTtyZXR1cm4gZX1wbi5fX2luaXRTdGF0aWMoKTtjb25zdCBtbj0zMjc2ODtmdW5jdGlvbiBnbih0KXtyZXR1cm4gdC5yZXBsYWNlKC9eW0EtWl06LywiIikucmVwbGFjZSgvXFwvZywiLyIpfWNvbnN0IHluPW47bGV0IGJuLF9uPTAsdm49e307ZnVuY3Rpb24gd24odCl7eW4uZGVidWcmJmNvbnNvbGUubG9nKGBbQU5SIFdvcmtlcl0gJHt0fWApfXZhciBTbiwkbixFbjtjb25zdCB4bj1mdW5jdGlvbih0KXtsZXQgbjt0cnl7bj1uZXcgVVJMKHQudXJsKX1jYXRjaChuKXtyZXR1cm4gVCgoKCk9Pntjb25zb2xlLndhcm4oIltAc2VudHJ5L25vZGVdOiBJbnZhbGlkIGRzbiBvciB0dW5uZWwgb3B0aW9uLCB3aWxsIG5vdCBzZW5kIGFueSBldmVudHMuIFRoZSB0dW5uZWwgb3B0aW9uIG11c3QgYmUgYSBmdWxsIFVSTCB3aGVuIHVzZWQuIil9KSksZW4odCwoKCk9PlByb21pc2UucmVzb2x2ZSh7fSkpKX1jb25zdCBlPSJodHRwczoiPT09bi5wcm90b2NvbCxyPWZ1bmN0aW9uKHQsbil7Y29uc3R7bm9fcHJveHk6ZX09cHJvY2Vzcy5lbnYscj1lPy5zcGxpdCgiLCIpLnNvbWUoKG49PnQuaG9zdC5lbmRzV2l0aChuKXx8dC5ob3N0bmFtZS5lbmRzV2l0aChuKSkpO3JldHVybiByP3ZvaWQgMDpufShuLHQucHJveHl8fChlP3Byb2Nlc3MuZW52Lmh0dHBzX3Byb3h5OnZvaWQgMCl8fHByb2Nlc3MuZW52Lmh0dHBfcHJveHkpLG89ZT9pOnMsYT12b2lkIDAhPT10LmtlZXBBbGl2ZSYmdC5rZWVwQWxpdmUsZj1yP25ldyBwbihyKTpuZXcgby5BZ2VudCh7a2VlcEFsaXZlOmEsbWF4U29ja2V0czozMCx0aW1lb3V0OjJlM30pLGg9ZnVuY3Rpb24odCxuLGUpe2NvbnN0e2hvc3RuYW1lOnIscGF0aG5hbWU6byxwb3J0OnMscHJvdG9jb2w6aSxzZWFyY2g6YX09bmV3IFVSTCh0LnVybCk7cmV0dXJuIGZ1bmN0aW9uKGYpe3JldHVybiBuZXcgUHJvbWlzZSgoKGgscCk9PntGdCgoKCk9PntsZXQgbD1mdW5jdGlvbih0KXtyZXR1cm4gbmV3IGMoe3JlYWQoKXt0aGlzLnB1c2godCksdGhpcy5wdXNoKG51bGwpfX0pfShmLmJvZHkpO2NvbnN0IGQ9ey4uLnQuaGVhZGVyc307Zi5ib2R5Lmxlbmd0aD5tbiYmKGRbImNvbnRlbnQtZW5jb2RpbmciXT0iZ3ppcCIsbD1sLnBpcGUodSgpKSk7Y29uc3QgbT1uLnJlcXVlc3Qoe21ldGhvZDoiUE9TVCIsYWdlbnQ6ZSxoZWFkZXJzOmQsaG9zdG5hbWU6cixwYXRoOmAke299JHthfWAscG9ydDpzLHByb3RvY29sOmksY2E6dC5jYUNlcnRzfSwodD0+e3Qub24oImRhdGEiLCgoKT0+e30pKSx0Lm9uKCJlbmQiLCgoKT0+e30pKSx0LnNldEVuY29kaW5nKCJ1dGY4Iik7Y29uc3Qgbj10LmhlYWRlcnNbInJldHJ5LWFmdGVyIl0/P251bGwsZT10LmhlYWRlcnNbIngtc2VudHJ5LXJhdGUtbGltaXRzIl0/P251bGw7aCh7c3RhdHVzQ29kZTp0LnN0YXR1c0NvZGUsaGVhZGVyczp7InJldHJ5LWFmdGVyIjpuLCJ4LXNlbnRyeS1yYXRlLWxpbWl0cyI6QXJyYXkuaXNBcnJheShlKT9lWzBdfHxudWxsOmV9fSl9KSk7bS5vbigiZXJyb3IiLHApLGwucGlwZShtKX0pKX0pKX19KHQsdC5odHRwTW9kdWxlPz9vLGYpO3JldHVybiBlbih0LGgpfSh7dXJsOihTbj15bi5kc24sJG49eW4udHVubmVsLEVuPXluLnNka01ldGFkYXRhLnNkaywkbnx8YCR7ZnVuY3Rpb24odCl7cmV0dXJuYCR7ZnVuY3Rpb24odCl7Y29uc3Qgbj10LnByb3RvY29sP2Ake3QucHJvdG9jb2x9OmA6IiIsZT10LnBvcnQ/YDoke3QucG9ydH1gOiIiO3JldHVybmAke259Ly8ke3QuaG9zdH0ke2V9JHt0LnBhdGg/YC8ke3QucGF0aH1gOiIifS9hcGkvYH0odCl9JHt0LnByb2plY3RJZH0vZW52ZWxvcGUvYH0oU24pfT8ke2Z1bmN0aW9uKHQsbil7Y29uc3QgZT17c2VudHJ5X3ZlcnNpb246WnR9O3JldHVybiB0LnB1YmxpY0tleSYmKGUuc2VudHJ5X2tleT10LnB1YmxpY0tleSksbiYmKGUuc2VudHJ5X2NsaWVudD1gJHtuLm5hbWV9LyR7bi52ZXJzaW9ufWApLG5ldyBVUkxTZWFyY2hQYXJhbXMoZSkudG9TdHJpbmcoKX0oU24sRW4pfWApfSk7YXN5bmMgZnVuY3Rpb24gTm4oKXtpZihibil7d24oIlNlbmRpbmcgYWJub3JtYWwgc2Vzc2lvbiIpLEwoYm4se3N0YXR1czoiYWJub3JtYWwiLGFibm9ybWFsX21lY2hhbmlzbToiYW5yX2ZvcmVncm91bmQiLHJlbGVhc2U6eW4ucmVsZWFzZSxlbnZpcm9ubWVudDp5bi5lbnZpcm9ubWVudH0pO2NvbnN0IHQ9ZnVuY3Rpb24odCxuLGUscil7Y29uc3Qgbz1KdChlKTtyZXR1cm4gVXQoe3NlbnRfYXQ6KG5ldyBEYXRlKS50b0lTT1N0cmluZygpLC4uLm8mJntzZGs6b30sLi4uISFyJiZuJiZ7ZHNuOmp0KG4pfX0sWyJhZ2dyZWdhdGVzImluIHQ/W3t0eXBlOiJzZXNzaW9ucyJ9LHRdOlt7dHlwZToic2Vzc2lvbiJ9LHQudG9KU09OKCldXSl9KGJuLHluLmRzbix5bi5zZGtNZXRhZGF0YSx5bi50dW5uZWwpO3duKEpTT04uc3RyaW5naWZ5KHQpKSxhd2FpdCB4bi5zZW5kKHQpO3RyeXtlPy5wb3N0TWVzc2FnZSgic2Vzc2lvbi1lbmRlZCIpfWNhdGNoKHQpe319fWZ1bmN0aW9uIENuKHQpe2lmKCF0KXJldHVybjtjb25zdCBuPWZ1bmN0aW9uKHQpe2lmKCF0Lmxlbmd0aClyZXR1cm5bXTtjb25zdCBuPUFycmF5LmZyb20odCk7cmV0dXJuL3NlbnRyeVdyYXBwZWQvLnRlc3QoTnQobikuZnVuY3Rpb258fCIiKSYmbi5wb3AoKSxuLnJldmVyc2UoKSx4dC50ZXN0KE50KG4pLmZ1bmN0aW9ufHwiIikmJihuLnBvcCgpLHh0LnRlc3QoTnQobikuZnVuY3Rpb258fCIiKSYmbi5wb3AoKSksbi5zbGljZSgwLCR0KS5tYXAoKHQ9Pih7Li4udCxmaWxlbmFtZTp0LmZpbGVuYW1lfHxOdChuKS5maWxlbmFtZSxmdW5jdGlvbjp0LmZ1bmN0aW9ufHxFdH0pKSl9KHQpO2lmKHluLmFwcFJvb3RQYXRoKWZvcihjb25zdCB0IG9mIG4pdC5maWxlbmFtZSYmKHQuZmlsZW5hbWU9UHQodC5maWxlbmFtZSx5bi5hcHBSb290UGF0aCkpO3JldHVybiBufWFzeW5jIGZ1bmN0aW9uIFRuKHQsbil7aWYoX24+PXluLm1heEFuckV2ZW50cylyZXR1cm47X24rPTEsYXdhaXQgTm4oKSx3bigiU2VuZGluZyBldmVudCIpO2NvbnN0IGU9e2V2ZW50X2lkOkQoKSxjb250ZXh0czp5bi5jb250ZXh0cyxyZWxlYXNlOnluLnJlbGVhc2UsZW52aXJvbm1lbnQ6eW4uZW52aXJvbm1lbnQsZGlzdDp5bi5kaXN0LHBsYXRmb3JtOiJub2RlIixsZXZlbDoiZXJyb3IiLGV4Y2VwdGlvbjp7dmFsdWVzOlt7dHlwZToiQXBwbGljYXRpb25Ob3RSZXNwb25kaW5nIix2YWx1ZTpgQXBwbGljYXRpb24gTm90IFJlc3BvbmRpbmcgZm9yIGF0IGxlYXN0ICR7eW4uYW5yVGhyZXNob2xkfSBtc2Asc3RhY2t0cmFjZTp7ZnJhbWVzOkNuKHQpfSxtZWNoYW5pc206e3R5cGU6IkFOUiJ9fV19LHRhZ3M6eW4uc3RhdGljVGFnc307biYmZnVuY3Rpb24odCxuKXtpZihWdCh0LG4pLCF0LmNvbnRleHRzPy50cmFjZSl7Y29uc3R7dHJhY2VJZDplLHBhcmVudFNwYW5JZDpyLHByb3BhZ2F0aW9uU3BhbklkOm99PW4ucHJvcGFnYXRpb25Db250ZXh0O3QuY29udGV4dHM9e3RyYWNlOnt0cmFjZV9pZDplLHNwYW5faWQ6b3x8RigpLHBhcmVudF9zcGFuX2lkOnJ9LC4uLnQuY29udGV4dHN9fX0oZSxuKSxmdW5jdGlvbih0KXtpZigwPT09T2JqZWN0LmtleXModm4pLmxlbmd0aClyZXR1cm47Y29uc3Qgbj15bi5hcHBSb290UGF0aD97fTp2bjtpZih5bi5hcHBSb290UGF0aClmb3IoY29uc3RbdCxlXW9mIE9iamVjdC5lbnRyaWVzKHZuKSluW1B0KHQseW4uYXBwUm9vdFBhdGgpXT1lO2NvbnN0IGU9bmV3IE1hcDtmb3IoY29uc3QgciBvZiB0LmV4Y2VwdGlvbj8udmFsdWVzfHxbXSlmb3IoY29uc3QgdCBvZiByLnN0YWNrdHJhY2U/LmZyYW1lc3x8W10pe2NvbnN0IHI9dC5hYnNfcGF0aHx8dC5maWxlbmFtZTtyJiZuW3JdJiZlLnNldChyLG5bcl0pfWlmKGUuc2l6ZT4wKXtjb25zdCBuPVtdO2Zvcihjb25zdFt0LHJdb2YgZS5lbnRyaWVzKCkpbi5wdXNoKHt0eXBlOiJzb3VyY2VtYXAiLGNvZGVfZmlsZTp0LGRlYnVnX2lkOnJ9KTt0LmRlYnVnX21ldGE9e2ltYWdlczpufX19KGUpO2NvbnN0IHI9enQoZSx5bi5kc24seW4uc2RrTWV0YWRhdGEseW4udHVubmVsKTt3bihKU09OLnN0cmluZ2lmeShyKSksYXdhaXQgeG4uc2VuZChyKSxhd2FpdCB4bi5mbHVzaCgyZTMpLF9uPj15bi5tYXhBbnJFdmVudHMmJnNldFRpbWVvdXQoKCgpPT57cHJvY2Vzcy5leGl0KDApfSksNWUzKX1sZXQga247aWYod24oIlN0YXJ0ZWQiKSx5bi5jYXB0dXJlU3RhY2tUcmFjZSl7d24oIkNvbm5lY3RpbmcgdG8gZGVidWdnZXIiKTtjb25zdCBuPW5ldyB0O24uY29ubmVjdFRvTWFpblRocmVhZCgpLHduKCJDb25uZWN0ZWQgdG8gZGVidWdnZXIiKTtjb25zdCBlPW5ldyBNYXA7bi5vbigiRGVidWdnZXIuc2NyaXB0UGFyc2VkIiwodD0+e2Uuc2V0KHQucGFyYW1zLnNjcmlwdElkLHQucGFyYW1zLnVybCl9KSksbi5vbigiRGVidWdnZXIucGF1c2VkIiwodD0+e2lmKCJvdGhlciI9PT10LnBhcmFtcy5yZWFzb24pdHJ5e3duKCJEZWJ1Z2dlciBwYXVzZWQiKTtjb25zdCBzPVsuLi50LnBhcmFtcy5jYWxsRnJhbWVzXSxpPXluLmFwcFJvb3RQYXRoP2Z1bmN0aW9uKHQ9KHByb2Nlc3MuYXJndlsxXT9vbihwcm9jZXNzLmFyZ3ZbMV0pOnByb2Nlc3MuY3dkKCkpLG49IlxcIj09PW8pe2NvbnN0IGU9bj9nbih0KTp0O3JldHVybiB0PT57aWYoIXQpcmV0dXJuO2NvbnN0IG89bj9nbih0KTp0O2xldHtkaXI6cyxiYXNlOmksZXh0OmN9PXIucGFyc2Uobyk7Ii5qcyIhPT1jJiYiLm1qcyIhPT1jJiYiLmNqcyIhPT1jfHwoaT1pLnNsaWNlKDAsLTEqYy5sZW5ndGgpKTtjb25zdCB1PWRlY29kZVVSSUNvbXBvbmVudChpKTtzfHwocz0iLiIpO2NvbnN0IGE9cy5sYXN0SW5kZXhPZigiL25vZGVfbW9kdWxlcyIpO2lmKGE+LTEpcmV0dXJuYCR7cy5zbGljZShhKzE0KS5yZXBsYWNlKC9cLy9nLCIuIil9OiR7dX1gO2lmKHMuc3RhcnRzV2l0aChlKSl7Y29uc3QgdD1zLnNsaWNlKGUubGVuZ3RoKzEpLnJlcGxhY2UoL1wvL2csIi4iKTtyZXR1cm4gdD9gJHt0fToke3V9YDp1fXJldHVybiB1fX0oeW4uYXBwUm9vdFBhdGgpOigpPT57fSxjPXMubWFwKCh0PT5mdW5jdGlvbih0LG4sZSl7Y29uc3Qgcj1uP24ucmVwbGFjZSgvXmZpbGU6XC9cLy8sIiIpOnZvaWQgMCxvPXQubG9jYXRpb24uY29sdW1uTnVtYmVyP3QubG9jYXRpb24uY29sdW1uTnVtYmVyKzE6dm9pZCAwLHM9dC5sb2NhdGlvbi5saW5lTnVtYmVyP3QubG9jYXRpb24ubGluZU51bWJlcisxOnZvaWQgMDtyZXR1cm57ZmlsZW5hbWU6cixtb2R1bGU6ZShyKSxmdW5jdGlvbjp0LmZ1bmN0aW9uTmFtZXx8RXQsY29sbm86byxsaW5lbm86cyxpbl9hcHA6cj9zbihyKTp2b2lkIDB9fSh0LGUuZ2V0KHQubG9jYXRpb24uc2NyaXB0SWQpLGkpKSksdT1zZXRUaW1lb3V0KCgoKT0+e1RuKGMpLnRoZW4obnVsbCwoKCk9Pnt3bigiU2VuZGluZyBBTlIgZXZlbnQgZmFpbGVkLiIpfSkpfSksNWUzKTtuLnBvc3QoIlJ1bnRpbWUuZXZhbHVhdGUiLHtleHByZXNzaW9uOiJnbG9iYWwuX19TRU5UUllfR0VUX1NDT1BFU19fKCk7IixzaWxlbnQ6ITAscmV0dXJuQnlWYWx1ZTohMH0sKCh0LGUpPT57dCYmd24oYEVycm9yIGV4ZWN1dGluZyBzY3JpcHQ6ICcke3QubWVzc2FnZX0nYCksY2xlYXJUaW1lb3V0KHUpO2NvbnN0IHI9ZT8ucmVzdWx0P2UucmVzdWx0LnZhbHVlOnZvaWQgMDtuLnBvc3QoIkRlYnVnZ2VyLnJlc3VtZSIpLG4ucG9zdCgiRGVidWdnZXIuZGlzYWJsZSIpLFRuKGMscikudGhlbihudWxsLCgoKT0+e3duKCJTZW5kaW5nIEFOUiBldmVudCBmYWlsZWQuIil9KSl9KSl9Y2F0Y2godCl7dGhyb3cgbi5wb3N0KCJEZWJ1Z2dlci5yZXN1bWUiKSxuLnBvc3QoIkRlYnVnZ2VyLmRpc2FibGUiKSx0fX0pKSxrbj0oKT0+e3RyeXtuLnBvc3QoIkRlYnVnZ2VyLmVuYWJsZSIsKCgpPT57bi5wb3N0KCJEZWJ1Z2dlci5wYXVzZSIpfSkpfWNhdGNoKHQpe319fWNvbnN0e3BvbGw6am59PWZ1bmN0aW9uKHQsbixlLHIpe2NvbnN0IG89dCgpO2xldCBzPSExLGk9ITA7cmV0dXJuIHNldEludGVydmFsKCgoKT0+e2NvbnN0IHQ9by5nZXRUaW1lTXMoKTshMT09PXMmJnQ+bitlJiYocz0hMCxpJiZyKCkpLHQ8bitlJiYocz0hMSl9KSwyMCkse3BvbGw6KCk9PntvLnJlc2V0KCl9LGVuYWJsZWQ6dD0+e2k9dH19fSgoZnVuY3Rpb24oKXtsZXQgdD1wcm9jZXNzLmhydGltZSgpO3JldHVybntnZXRUaW1lTXM6KCk9Pntjb25zdFtuLGVdPXByb2Nlc3MuaHJ0aW1lKHQpO3JldHVybiBNYXRoLmZsb29yKDFlMypuK2UvMWU2KX0scmVzZXQ6KCk9Pnt0PXByb2Nlc3MuaHJ0aW1lKCl9fX0pLHluLnBvbGxJbnRlcnZhbCx5bi5hbnJUaHJlc2hvbGQsKGZ1bmN0aW9uKCl7d24oIldhdGNoZG9nIHRpbWVvdXQiKSxrbj8od24oIlBhdXNpbmcgZGVidWdnZXIgdG8gY2FwdHVyZSBzdGFjayB0cmFjZSIpLGtuKCkpOih3bigiQ2FwdHVyaW5nIGV2ZW50IHdpdGhvdXQgYSBzdGFjayB0cmFjZSIpLFRuKCkudGhlbihudWxsLCgoKT0+e3duKCJTZW5kaW5nIEFOUiBldmVudCBmYWlsZWQgb24gd2F0Y2hkb2cgdGltZW91dC4iKX0pKSl9KSk7ZT8ub24oIm1lc3NhZ2UiLCh0PT57dC5zZXNzaW9uJiYoYm49TSh0LnNlc3Npb24pKSx0LmRlYnVnSW1hZ2VzJiYodm49dC5kZWJ1Z0ltYWdlcyksam4oKX0pKTs=",bD0=50,mD0=5000;function mi(A,...Q){e.log(`[ANR] ${A}`,...Q)}function uD0(){return AQ}function dD0(){let A=nX().getScopeData();return _Z(A,RQ().getScopeData()),_Z(A,sQ().getScopeData()),A.attachments=[],A.eventProcessors=[],A}async function cD0(A){let Q={message:"ANR"},B={};for(let Y of A.getEventProcessors()){if(Q===null)break;Q=await Y(Q,B)}return Q?.contexts||{}}var O4Q="Anr",lD0=(A={})=>{if(UF.major<16||UF.major===16&&UF.minor<17)throw Error("ANR detection requires Node 16.17.0 or later");let Q,B,Y=uD0();return Y.__SENTRY_GET_SCOPES__=dD0,{name:O4Q,startWorker:()=>{if(Q)return;if(B)Q=pD0(B,A)},stopWorker:()=>{if(Q)Q.then((J)=>{J(),Q=void 0})},async setup(J){if(B=J,A.captureStackTrace&&await qK())e.warn("ANR captureStackTrace has been disabled because the debugger was already enabled"),A.captureStackTrace=!1;setImmediate(()=>this.startWorker())}}},P4Q=wA(lD0);async function pD0(A,Q){let B=A.getDsn();if(!B)return()=>{};let Y=await cD0(A);delete Y.app?.app_memory,delete Y.device?.free_memory;let J=A.getOptions(),C=A.getSdkMetadata()||{};if(C.sdk)C.sdk.integrations=J.integrations.map((W)=>W.name);let X={debug:e.isEnabled(),dsn:B,tunnel:J.tunnel,environment:J.environment||"production",release:J.release,dist:J.dist,sdkMetadata:C,appRootPath:Q.appRootPath,pollInterval:Q.pollInterval||bD0,anrThreshold:Q.anrThreshold||mD0,captureStackTrace:!!Q.captureStackTrace,maxAnrEvents:Q.maxAnrEvents||1,staticTags:Q.staticTags||{},contexts:Y};if(X.captureStackTrace){let W=await import("node:inspector");if(!W.url())W.open(0)}let G=new gD0(new URL(`data:application/javascript;base64,${fD0}`),{workerData:X,execArgv:[],env:{...process.env,NODE_OPTIONS:void 0}});process.on("exit",()=>{G.terminate()});let F=setInterval(()=>{try{let W=RQ().getSession(),Z=W?{...W,toJSON:void 0}:void 0;G.postMessage({session:Z,debugImages:KN(J.stackParser)})}catch(W){}},X.pollInterval);return F.unref(),G.on("message",(W)=>{if(W==="session-ended")mi("ANR event sent from ANR worker. Clearing session in this thread."),RQ().setSession(void 0)}),G.once("error",(W)=>{clearInterval(F),mi("ANR worker error",W)}),G.once("exit",(W)=>{clearInterval(F),mi("ANR worker exit",W)}),G.unref(),()=>{G.terminate(),clearInterval(F)}}function T4Q(A){let Q=hA()?.getIntegrationByName(O4Q);if(!Q)return A();Q.stopWorker();let B=A();if(xD0(B))return B.finally(()=>Q.startWorker());return Q.startWorker(),B}var XUQ=qA(o4Q(),1);var e4Q=qA(MB(),1);var t4Q=(A)=>({package:A,"javascript.is_cjs":u5()});function IF(A,Q){let B=hA()?.getOptions();if(!B?.disableInstrumentationWarnings&&!e4Q.isWrapped(A)&&HN()&&X9(B))h0(()=>{if(u5())console.warn(`[Sentry] ${Q} is not instrumented. This is likely because you required/imported ${Q} before calling \`Sentry.init()\`.`);else console.warn(`[Sentry] ${Q} is not instrumented. Please make sure to initialize Sentry in a separate file that you \`--import\` when running node, see: https://docs.sentry.io/platforms/javascript/guides/${Q}/install/esm/.`)}),nX().setContext("missing_instrumentation",t4Q(Q))}var Y1=qA(yA(),1),qP=qA(MB(),1),$6=qA(NB(),1),CUQ=qA(uB(),1);var d5;(function(A){A.EXPRESS_TYPE="express.type";let B="express.name";A.EXPRESS_NAME=B})(d5||(d5={}));var FG;(function(A){A.ROUTER="router";let B="middleware";A.MIDDLEWARE=B;let Y="request_handler";A.REQUEST_HANDLER=Y})(FG||(FG={}));var ni=Symbol("express-layer-patched"),HF="__ot_middlewares";var QUQ=(A,Q)=>{if(Array.isArray(A[HF])===!1)Object.defineProperty(A,HF,{enumerable:!1,value:[]});if(Q===void 0)return;A[HF].push(Q)},BUQ=(A,Q)=>{let B=Q.handle?.stack?.[0];if(B?.route?.path)return`${A}${B.route.path}`;if(B?.handle?.stack)return BUQ(A,B);return A},YUQ=(A,Q,B)=>{if(Q.name==="router"){let Y=BUQ("",Q),J=Y?Y:B||A||"/";return{attributes:{[d5.EXPRESS_NAME]:J,[d5.EXPRESS_TYPE]:FG.ROUTER},name:`router - ${J}`}}else if(Q.name==="bound dispatch"||Q.name==="handle")return{attributes:{[d5.EXPRESS_NAME]:(A||B)??"request handler",[d5.EXPRESS_TYPE]:FG.REQUEST_HANDLER},name:`request handler${Q.path?` - ${A||B}`:""}`};else return{attributes:{[d5.EXPRESS_NAME]:Q.name,[d5.EXPRESS_TYPE]:FG.MIDDLEWARE},name:`middleware - ${Q.name}`}},WN0=(A,Q)=>{if(typeof Q==="string")return Q===A;else if(Q instanceof RegExp)return Q.test(A);else if(typeof Q==="function")return Q(A);else throw TypeError("Pattern is in unsupported datatype")},JUQ=(A,Q,B)=>{if(Array.isArray(B?.ignoreLayersType)&&B?.ignoreLayersType?.includes(Q))return!0;if(Array.isArray(B?.ignoreLayers)===!1)return!1;try{for(let Y of B.ignoreLayers)if(WN0(A,Y))return!0}catch(Y){}return!1},si=(A)=>A instanceof Error?[A,A.message]:[String(A),String(A)],LP=(A)=>{let Q=A[0];if(Array.isArray(Q))return Q.map((B)=>AUQ(B)||"").join(",");return AUQ(Q)},AUQ=(A)=>{if(typeof A==="string")return A;if(A instanceof RegExp||typeof A==="number")return A.toString();return};var ZN0="0.1.0",$N0="@sentry/instrumentation-express-v5";class ri extends $6.InstrumentationBase{constructor(A={}){super($N0,ZN0,A)}init(){return[new $6.InstrumentationNodeModuleDefinition("express",[">=5.0.0"],(A)=>this._setup(A),(A)=>this._tearDown(A))]}_setup(A){let Q=A.Router.prototype;if($6.isWrapped(Q.route))this._unwrap(Q,"route");if(this._wrap(Q,"route",this._getRoutePatch()),$6.isWrapped(Q.use))this._unwrap(Q,"use");if(this._wrap(Q,"use",this._getRouterUsePatch()),$6.isWrapped(A.application.use))this._unwrap(A.application,"use");return this._wrap(A.application,"use",this._getAppUsePatch()),A}_tearDown(A){if(A===void 0)return;let Q=A.Router.prototype;this._unwrap(Q,"route"),this._unwrap(Q,"use"),this._unwrap(A.application,"use")}_getRoutePatch(){let A=this;return function(Q){return function(...Y){let J=Q.apply(this,Y),C=this.stack[this.stack.length-1];return A._applyPatch(C,LP(Y)),J}}}_getRouterUsePatch(){let A=this;return function(Q){return function(...Y){let J=Q.apply(this,Y),C=this.stack[this.stack.length-1];return A._applyPatch(C,LP(Y)),J}}}_getAppUsePatch(){let A=this;return function(Q){return function(...Y){let J=this.router,C=Q.apply(this,Y);if(J){let X=J.stack[J.stack.length-1];A._applyPatch(X,LP(Y))}return C}}}_applyPatch(A,Q){let B=this;if(A[ni]===!0)return;A[ni]=!0,this._wrap(A,"handle",(Y)=>{if(Y.length===4)return Y;let J=function(C,X){QUQ(C,Q);let G=C[HF].filter((z)=>z!=="/"&&z!=="/*").join("").replace(/\/{2,}/g,"/"),F=G.length>0?G:void 0,W={[CUQ.SEMATTRS_HTTP_ROUTE]:F},Z=YUQ(G,A,Q),U=Z.attributes[d5.EXPRESS_TYPE],$=qP.getRPCMetadata(Y1.context.active());if($?.type===qP.RPCType.HTTP)$.route=F;if(JUQ(Z.name,U,B.getConfig())){if(U===FG.MIDDLEWARE)C[HF].pop();return Y.apply(this,arguments)}if(Y1.trace.getSpan(Y1.context.active())===void 0)return Y.apply(this,arguments);let E=B._getSpanName({request:C,layerType:U,route:G},Z.name),K=B.tracer.startSpan(E,{attributes:Object.assign(W,Z.attributes)}),{requestHook:I}=B.getConfig();if(I)$6.safeExecuteInTheMiddle(()=>I(K,{request:C,layerType:U,route:G}),(z)=>{if(z)Y1.diag.error("express instrumentation: request hook failed",z)},!0);let V=!1;if(Z.attributes[d5.EXPRESS_TYPE]!==FG.MIDDLEWARE)K.end(),V=!0;let H=()=>{if(V===!1)V=!0,K.end()},D=Array.from(arguments),L=D.findIndex((z)=>typeof z==="function");if(L>=0)arguments[L]=function(){let z=arguments[0],M=![void 0,null,"route","router"].includes(z);if(!V&&M){let[q,w]=si(z);K.recordException(q),K.setStatus({code:Y1.SpanStatusCode.ERROR,message:w})}if(V===!1)V=!0,C.res?.removeListener("finish",H),K.end();if(!(C.route&&M))C[HF].pop();return D[L].apply(this,arguments)};try{return Y.apply(this,arguments)}catch(z){let[M,N]=si(z);throw K.recordException(M),K.setStatus({code:Y1.SpanStatusCode.ERROR,message:N}),z}finally{if(!V)X.once("finish",H)}};for(let C in Y)Object.defineProperty(J,C,{get(){return Y[C]},set(X){Y[C]=X}});return J})}_getSpanName(A,Q){let{spanNameHook:B}=this.getConfig();if(!(B instanceof Function))return Q;try{return B(A,Q)??Q}catch(Y){return Y1.diag.error("express instrumentation: error calling span name rewrite hook",Y),Q}}}var GUQ="Express",UN0="Express-V5";function FUQ(A){p0(A,"auto.http.otel.express");let Q=eA(A).data,B=Q["express.type"];if(B)A.setAttribute(YQ,`${B}.express`);let Y=Q["express.name"];if(typeof Y==="string")A.updateName(Y)}function WUQ(A,Q){if(RQ()===R5())return fQ&&e.warn("Isolation scope is still default isolation scope - skipping setting transactionName"),Q;if(A.layerType==="request_handler"){let B=A.request,Y=B.method?B.method.toUpperCase():"GET";RQ().setTransactionName(`${Y} ${A.route}`)}return Q}var ai=EQ(GUQ,()=>new XUQ.ExpressInstrumentation({requestHook:(A)=>FUQ(A),spanNameHook:(A,Q)=>WUQ(A,Q)})),oi=EQ(UN0,()=>new ri({requestHook:(A)=>FUQ(A),spanNameHook:(A,Q)=>WUQ(A,Q)})),EN0=()=>{return{name:GUQ,setupOnce(){ai(),oi()}}},MP=wA(EN0);function ti(A){return function(B,Y,J,C){let X=mE(Y);if(RQ().setSDKProcessingMetadata({normalizedRequest:X}),(A?.shouldHandleError||IN0)(B)){let F=jB(B,{mechanism:{type:"middleware",handled:!1}});J.sentry=F}C(B)}}function KN0(){return function(Q,B,Y){let J=mE(Q);RQ().setSDKProcessingMetadata({normalizedRequest:J}),Y()}}function ZUQ(A,Q){A.use(KN0()),A.use(ti(Q)),IF(A.use,"express")}function VN0(A){let Q=A.status||A.statusCode||A.status_code||A.output?.statusCode;return Q?parseInt(Q,10):500}function IN0(A){return VN0(A)>=500}import*as AEQ from"node:diagnostics_channel";var ZY=qA(yA(),1),PP=qA(MB(),1),nUQ=qA(NB(),1),NY=qA(uB(),1);import dUQ from"node:diagnostics_channel";var cUQ="@fastify/otel",LL0="0.8.0",qL0=">=4.0.0 <6",lUQ=["onRequest","preParsing","preValidation","preHandler","preSerialization","onSend","onResponse","onError"],K0={HOOK_NAME:"hook.name",FASTIFY_TYPE:"fastify.type",HOOK_CALLBACK_NAME:"hook.callback.name",ROOT:"fastify.root"},DF={ROUTE:"route-hook",INSTANCE:"hook",HANDLER:"request-handler"},WG="anonymous",E9=Symbol("fastify otel instance"),NF=Symbol("fastify otel request spans"),jL=Symbol("fastify otel request context"),pUQ=Symbol("fastify otel addhook original"),iUQ=Symbol("fastify otel setnotfound original"),OP=Symbol("fastify otel ignore path");class Jn extends nUQ.InstrumentationBase{constructor(A){super(cUQ,LL0,A);if(this.servername=A?.servername??process.env.OTEL_SERVICE_NAME??"fastify",this[OP]=null,this._logger=ZY.diag.createComponentLogger({namespace:cUQ}),A?.ignorePaths!=null||process.env.OTEL_FASTIFY_IGNORE_PATHS!=null){let Q=A?.ignorePaths??process.env.OTEL_FASTIFY_IGNORE_PATHS;if((typeof Q!=="string"||Q.length===0)&&typeof Q!=="function")throw TypeError("ignorePaths must be a string or a function");let B=null;this[OP]=(Y)=>{if(typeof Q==="function")return Q(Y);else{if(B==null)B=uUQ().minimatch;return B(Y.url,Q)}}}}enable(){if(this._handleInitialization===void 0&&this.getConfig().registerOnInitialization){let A=this.plugin();this._handleInitialization=(Q)=>{Q.fastify.register(A)},dUQ.subscribe("fastify.initialization",this._handleInitialization)}return super.enable()}disable(){if(this._handleInitialization)dUQ.unsubscribe("fastify.initialization",this._handleInitialization),this._handleInitialization=void 0;return super.disable()}init(){return[]}plugin(){let A=this;return Q[Symbol.for("skip-override")]=!0,Q[Symbol.for("fastify.display-name")]="@fastify/otel",Q[Symbol.for("plugin-meta")]={fastify:qL0,name:"@fastify/otel"},Q;function Q(B,Y,J){B.decorate(E9,A),B.decorate(pUQ,B.addHook),B.decorate(iUQ,B.setNotFoundHandler),B.decorateRequest("opentelemetry",function(){let U=this[jL];return{span:this[NF],tracer:A.tracer,context:U,inject:(E,K)=>{return ZY.propagation.inject(U,E,K)},extract:(E,K)=>{return ZY.propagation.extract(U,E,K)}}}),B.decorateRequest(NF,null),B.decorateRequest(jL,null),B.addHook("onRoute",function(Z){if(A[OP]?.(Z)===!0){A._logger.debug(`Ignoring route instrumentation ${Z.method} ${Z.url} because it matches the ignore path`);return}for(let U of lUQ)if(Z[U]!=null){let $=Z[U];if(typeof $==="function")Z[U]=W($,{[NY.ATTR_SERVICE_NAME]:B[E9].servername,[K0.HOOK_NAME]:`${this.pluginName} - route -> ${U}`,[K0.FASTIFY_TYPE]:DF.ROUTE,[NY.ATTR_HTTP_ROUTE]:Z.url,[K0.HOOK_CALLBACK_NAME]:$.name?.length>0?$.name:WG});else if(Array.isArray($)){let E=[];for(let K of $)E.push(W(K,{[NY.ATTR_SERVICE_NAME]:B[E9].servername,[K0.HOOK_NAME]:`${this.pluginName} - route -> ${U}`,[K0.FASTIFY_TYPE]:DF.ROUTE,[NY.ATTR_HTTP_ROUTE]:Z.url,[K0.HOOK_CALLBACK_NAME]:K.name?.length>0?K.name:WG}));Z[U]=E}}if(Z.onSend!=null)Z.onSend=Array.isArray(Z.onSend)?[...Z.onSend,C]:[Z.onSend,C];else Z.onSend=C;if(Z.onError!=null)Z.onError=Array.isArray(Z.onError)?[...Z.onError,X]:[Z.onError,X];else Z.onError=X;Z.handler=W(Z.handler,{[NY.ATTR_SERVICE_NAME]:B[E9].servername,[K0.HOOK_NAME]:`${this.pluginName} - route-handler`,[K0.FASTIFY_TYPE]:DF.HANDLER,[NY.ATTR_HTTP_ROUTE]:Z.url,[K0.HOOK_CALLBACK_NAME]:Z.handler.name.length>0?Z.handler.name:WG})}),B.addHook("onRequest",function(Z,U,$){if(this[E9].isEnabled()===!1)return $();else if(this[E9][OP]?.({url:Z.url,method:Z.method})===!0)return this[E9]._logger.debug(`Ignoring request ${Z.method} ${Z.url} because it matches the ignore path`),$();let E=ZY.context.active();if(ZY.trace.getSpan(E)==null)E=ZY.propagation.extract(E,Z.headers);let K=PP.getRPCMetadata(E);if(Z.routeOptions.url!=null&&K?.type===PP.RPCType.HTTP)K.route=Z.routeOptions.url;let I=this[E9].tracer.startSpan("request",{attributes:{[NY.ATTR_SERVICE_NAME]:B[E9].servername,[K0.ROOT]:"@fastify/otel",[NY.ATTR_HTTP_ROUTE]:Z.url,[NY.ATTR_HTTP_REQUEST_METHOD]:Z.method}},E);Z[jL]=ZY.trace.setSpan(E,I),Z[NF]=I,ZY.context.with(Z[jL],()=>{$()})}),B.addHook("onResponse",function(Z,U,$){let E=Z[NF];if(E!=null)E.setStatus({code:ZY.SpanStatusCode.OK,message:"OK"}),E.setAttributes({[NY.ATTR_HTTP_RESPONSE_STATUS_CODE]:404}),E.end();Z[NF]=null,$()}),B.addHook=G,B.setNotFoundHandler=F,J();function C(Z,U,$,E){let K=Z[NF];if(K!=null){if(U.statusCode<500)K.setStatus({code:ZY.SpanStatusCode.OK,message:"OK"});K.setAttributes({[NY.ATTR_HTTP_RESPONSE_STATUS_CODE]:U.statusCode}),K.end()}Z[NF]=null,E(null,$)}function X(Z,U,$,E){let K=Z[NF];if(K!=null)K.setStatus({code:ZY.SpanStatusCode.ERROR,message:$.message}),K.recordException($);E()}function G(Z,U){let $=this[pUQ];if(lUQ.includes(Z))return $.call(this,Z,W(U,{[NY.ATTR_SERVICE_NAME]:B[E9].servername,[K0.HOOK_NAME]:`${this.pluginName} - ${Z}`,[K0.FASTIFY_TYPE]:DF.INSTANCE,[K0.HOOK_CALLBACK_NAME]:U.name?.length>0?U.name:WG}));else return $.call(this,Z,U)}function F(Z,U){let $=this[iUQ];if(typeof Z==="function")U=W(Z,{[NY.ATTR_SERVICE_NAME]:B[E9].servername,[K0.HOOK_NAME]:`${this.pluginName} - not-found-handler`,[K0.FASTIFY_TYPE]:DF.INSTANCE,[K0.HOOK_CALLBACK_NAME]:Z.name?.length>0?Z.name:WG}),$.call(this,U);else{if(Z.preValidation!=null)Z.preValidation=W(Z.preValidation,{[NY.ATTR_SERVICE_NAME]:B[E9].servername,[K0.HOOK_NAME]:`${this.pluginName} - not-found-handler - preValidation`,[K0.FASTIFY_TYPE]:DF.INSTANCE,[K0.HOOK_CALLBACK_NAME]:Z.preValidation.name?.length>0?Z.preValidation.name:WG});if(Z.preHandler!=null)Z.preHandler=W(Z.preHandler,{[NY.ATTR_SERVICE_NAME]:B[E9].servername,[K0.HOOK_NAME]:`${this.pluginName} - not-found-handler - preHandler`,[K0.FASTIFY_TYPE]:DF.INSTANCE,[K0.HOOK_CALLBACK_NAME]:Z.preHandler.name?.length>0?Z.preHandler.name:WG});U=W(U,{[NY.ATTR_SERVICE_NAME]:B[E9].servername,[K0.HOOK_NAME]:`${this.pluginName} - not-found-handler`,[K0.FASTIFY_TYPE]:DF.INSTANCE,[K0.HOOK_CALLBACK_NAME]:U.name?.length>0?U.name:WG}),$.call(this,Z,U)}}function W(Z,U={}){return function(...E){let K=this[E9],[I]=E;if(K.isEnabled()===!1)return Z.call(this,...E);let V=I[jL]??ZY.context.active(),H=K.tracer.startSpan(`handler - ${Z.name?.length>0?Z.name:this.pluginName??WG}`,{attributes:U},V);return ZY.context.with(ZY.trace.setSpan(V,H),function(){try{let D=Z.call(this,...E);if(typeof D?.then==="function")return D.then((L)=>{return H.end(),L},(L)=>{return H.setStatus({code:ZY.SpanStatusCode.ERROR,message:L.message}),H.recordException(L),H.end(),Promise.reject(L)});return H.end(),D}catch(D){throw H.setStatus({code:ZY.SpanStatusCode.ERROR,message:D.message}),H.recordException(D),H.end(),D}},this)}}}}}var J1=qA(yA(),1),SP=qA(MB(),1),H$=qA(NB(),1),tUQ=qA(uB(),1);var ZG;(function(A){A.FASTIFY_NAME="fastify.name";let B="fastify.type";A.FASTIFY_TYPE=B;let Y="hook.name";A.HOOK_NAME=Y;let J="plugin.name";A.PLUGIN_NAME=J})(ZG||(ZG={}));var OL;(function(A){A.MIDDLEWARE="middleware";let B="request_handler";A.REQUEST_HANDLER=B})(OL||(OL={}));var PL;(function(A){A.MIDDLEWARE="middleware";let B="request handler";A.REQUEST_HANDLER=B})(PL||(PL={}));var rUQ=qA(yA(),1);var TL=Symbol("opentelemetry.instrumentation.fastify.request_active_span");function Cn(A,Q,B,Y={}){let J=Q.startSpan(B,{attributes:Y}),C=A[TL]||[];return C.push(J),Object.defineProperty(A,TL,{enumerable:!1,configurable:!0,value:C}),J}function TP(A,Q){let B=A[TL]||[];if(!B.length)return;B.forEach((Y)=>{if(Q)Y.setStatus({code:rUQ.SpanStatusCode.ERROR,message:Q.message}),Y.recordException(Q);Y.end()}),delete A[TL]}function aUQ(A,Q,B){let Y,J=void 0;try{if(J=A(),sUQ(J))J.then((C)=>Q(void 0,C),(C)=>Q(C))}catch(C){Y=C}finally{if(!sUQ(J)){if(Q(Y,J),Y)throw Y}return J}}function sUQ(A){return typeof A==="object"&&A&&typeof Object.getOwnPropertyDescriptor(A,"then")?.value==="function"||!1}var ML0="0.1.0",zL0="@sentry/instrumentation-fastify-v3",oUQ="anonymous",RL0=new Set(["onTimeout","onRequest","preParsing","preValidation","preSerialization","preHandler","onSend","onResponse","onError"]);class Xn extends H$.InstrumentationBase{constructor(A={}){super(zL0,ML0,A)}init(){return[new H$.InstrumentationNodeModuleDefinition("fastify",[">=3.0.0 <4"],(A)=>{return this._patchConstructor(A)})]}_hookOnRequest(){let A=this;return function(B,Y,J){if(!A.isEnabled())return J();A._wrap(Y,"send",A._patchSend());let C=B,X=SP.getRPCMetadata(J1.context.active()),G=C.routeOptions?C.routeOptions.url:B.routerPath;if(G&&X?.type===SP.RPCType.HTTP)X.route=G;let F=B.method||"GET";RQ().setTransactionName(`${F} ${G}`),J()}}_wrapHandler(A,Q,B,Y){let J=this;return this._diag.debug("Patching fastify route.handler function"),function(...C){if(!J.isEnabled())return B.apply(this,C);let X=B.name||A||oUQ,G=`${PL.MIDDLEWARE} - ${X}`,F=C[1],W=Cn(F,J.tracer,G,{[ZG.FASTIFY_TYPE]:OL.MIDDLEWARE,[ZG.PLUGIN_NAME]:A,[ZG.HOOK_NAME]:Q}),Z=Y&&C[C.length-1];if(Z)C[C.length-1]=function(...U){TP(F),Z.apply(this,U)};return J1.context.with(J1.trace.setSpan(J1.context.active(),W),()=>{return aUQ(()=>{return B.apply(this,C)},(U)=>{if(U instanceof Error)W.setStatus({code:J1.SpanStatusCode.ERROR,message:U.message}),W.recordException(U);if(!Y)TP(F)})})}}_wrapAddHook(){let A=this;return this._diag.debug("Patching fastify server.addHook function"),function(Q){return function(...Y){let J=Y[0],C=Y[1],X=this.pluginName;if(!RL0.has(J))return Q.apply(this,Y);let G=typeof Y[Y.length-1]==="function"&&C.constructor.name!=="AsyncFunction";return Q.apply(this,[J,A._wrapHandler(X,J,C,G)])}}}_patchConstructor(A){let Q=this;function B(...Y){let J=A.fastify.apply(this,Y);return J.addHook("onRequest",Q._hookOnRequest()),J.addHook("preHandler",Q._hookPreHandler()),wL0(),Q._wrap(J,"addHook",Q._wrapAddHook()),J}if(A.errorCodes!==void 0)B.errorCodes=A.errorCodes;return B.fastify=B,B.default=B,B}_patchSend(){let A=this;return this._diag.debug("Patching fastify reply.send function"),function(B){return function(...J){let C=J[0];if(!A.isEnabled())return B.apply(this,J);return H$.safeExecuteInTheMiddle(()=>{return B.apply(this,J)},(X)=>{if(!X&&C instanceof Error)X=C;TP(this,X)})}}}_hookPreHandler(){let A=this;return this._diag.debug("Patching fastify preHandler function"),function(B,Y,J){if(!A.isEnabled())return J();let C=B,X=C.routeOptions?.handler||C.context?.handler,G=X?.name.startsWith("bound ")?X.name.substring(6):X?.name,F=`${PL.REQUEST_HANDLER} - ${G||this.pluginName||oUQ}`,W={[ZG.PLUGIN_NAME]:this.pluginName,[ZG.FASTIFY_TYPE]:OL.REQUEST_HANDLER,[tUQ.SEMATTRS_HTTP_ROUTE]:C.routeOptions?C.routeOptions.url:B.routerPath};if(G)W[ZG.FASTIFY_NAME]=G;let Z=Cn(Y,A.tracer,F,W);eUQ(Z);let{requestHook:U}=A.getConfig();if(U)H$.safeExecuteInTheMiddle(()=>U(Z,{request:B}),($)=>{if($)A._diag.error("request hook failed",$)},!0);return J1.context.with(J1.trace.setSpan(J1.context.active(),Z),()=>{J()})}}}function wL0(){let A=hA();if(A)A.on("spanStart",(Q)=>{eUQ(Q)})}function eUQ(A){let Q=eA(A).data,B=Q["fastify.type"];if(Q[YQ]||!B)return;A.setAttributes({[DQ]:"auto.http.otel.fastify",[YQ]:`${B}.fastify`});let Y=Q["fastify.name"]||Q["plugin.name"]||Q["hook.name"];if(typeof Y==="string"){let J=Y.replace(/^fastify -> /,"").replace(/^@fastify\/otel -> /,"");A.updateName(J)}}var QEQ="Fastify",jL0="Fastify-V3",Gn=EQ(jL0,()=>new Xn),Fn=EQ(QEQ,()=>{let A=new Jn,Q=A.plugin();return AEQ.subscribe("fastify.initialization",(B)=>{let Y=B.fastify;Y?.register(Q).after((J)=>{if(J)fQ&&e.error("Failed to setup Fastify instrumentation",J);else if(TL0(),Y)SL0(Y)})}),A}),OL0=()=>{return{name:QEQ,setupOnce(){Gn(),Fn()}}},kP=wA(OL0);function PL0(A,Q,B){let Y=B.statusCode;return Y>=500||Y<=299}function BEQ(A,Q){let B=Q?.shouldHandleError||PL0,Y=Object.assign(function(J,C,X){J.addHook("onError",async(G,F,W)=>{if(B(W,G,F))jB(W)}),X()},{[Symbol.for("skip-override")]:!0,[Symbol.for("fastify.display-name")]:"sentry-fastify-error-handler"});A.register(Y)}function YEQ(A){let Q=eA(A),B=Q.description,Y=Q.data,J=Y["fastify.type"],C=J==="hook",X=J===B?.startsWith("handler -"),G=B==="request"||J==="request-handler";if(Y[YQ]||!X&&!G&&!C)return;let F=C?"hook":X?"middleware":G?"request-handler":"";A.setAttributes({[DQ]:"auto.http.otel.fastify",[YQ]:`${F}.fastify`});let W=Y["fastify.name"]||Y["plugin.name"]||Y["hook.name"];if(typeof W==="string"){let Z=W.replace(/^fastify -> /,"").replace(/^@fastify\/otel -> /,"");A.updateName(Z)}}function TL0(){let A=hA();if(A)A.on("spanStart",(Q)=>{YEQ(Q)})}function SL0(A){A.addHook("onRequest",async(Q,B)=>{if(Q.opentelemetry){let{span:C}=Q.opentelemetry();if(C)YEQ(C)}let Y=Q.routeOptions?.url,J=Q.method||"GET";RQ().setTransactionName(`${J} ${Y}`)})}var uEQ=qA(mEQ(),1);var dEQ="Graphql",Vn=EQ(dEQ,uEQ.GraphQLInstrumentation,(A)=>{let Q=cEQ(A);return{...Q,responseHook(B){p0(B,"auto.graphql.otel.graphql");let Y=eA(B).data,J=Y["graphql.operation.type"],C=Y["graphql.operation.name"];if(Q.useOperationNameForRootSpan&&J){let X=$0(B),F=eA(X).data[HK]||[],W=C?`${J} ${C}`:`${J}`;if(Array.isArray(F))F.push(W),X.setAttribute(HK,F);else if(typeof F==="string")X.setAttribute(HK,[F,W]);else X.setAttribute(HK,W);if(!eA(X).data["original-description"])X.setAttribute("original-description",eA(X).description);X.updateName(`${eA(X).data["original-description"]} (${Yq0(F)})`)}}}}),Bq0=(A={})=>{return{name:dEQ,setupOnce(){Vn(cEQ(A))}}},hP=wA(Bq0);function cEQ(A){return{ignoreResolveSpans:!0,ignoreTrivialResolveSpans:!0,useOperationNameForRootSpan:!0,...A}}function Yq0(A){if(Array.isArray(A)){let Q=A.slice().sort();if(Q.length<=5)return Q.join(", ");else return`${Q.slice(0,5).join(", ")}, +${Q.length-5}`}return`${A}`}var XKQ=qA(CKQ(),1);var GKQ="Kafka",In=EQ(GKQ,()=>new XKQ.KafkaJsInstrumentation({consumerHook(A){p0(A,"auto.kafkajs.otel.consumer")},producerHook(A){p0(A,"auto.kafkajs.otel.producer")}})),Xq0=()=>{return{name:GKQ,setupOnce(){In()}}},gP=wA(Xq0);var NKQ=qA(DKQ(),1);var LKQ="LruMemoizer",Hn=EQ(LKQ,()=>new NKQ.LruMemoizerInstrumentation),Zq0=()=>{return{name:LKQ,setupOnce(){Hn()}}},xP=wA(Zq0);var hKQ=qA(yKQ(),1);var gKQ="Mongo",Mn=EQ(gKQ,()=>new hKQ.MongoDBInstrumentation({dbStatementSerializer:Vq0,responseHook(A){p0(A,"auto.db.otel.mongo")}}));function Vq0(A){let Q=qn(A);return JSON.stringify(Q)}function qn(A){if(Array.isArray(A))return A.map((Q)=>qn(Q));if(Iq0(A)){let Q={};return Object.entries(A).map(([B,Y])=>[B,qn(Y)]).reduce((B,Y)=>{if(Dq0(Y))B[Y[0]]=Y[1];return B},Q)}return"?"}function Iq0(A){return typeof A==="object"&&A!==null&&!Hq0(A)}function Hq0(A){let Q=!1;if(typeof Buffer<"u")Q=Buffer.isBuffer(A);return Q}function Dq0(A){return Array.isArray(A)}var Nq0=()=>{return{name:gKQ,setupOnce(){Mn()}}},fP=wA(Nq0);var YVQ=qA(BVQ(),1);var JVQ="Mongoose",wn=EQ(JVQ,()=>new YVQ.MongooseInstrumentation({responseHook(A){p0(A,"auto.db.otel.mongoose")}})),_q0=()=>{return{name:JVQ,setupOnce(){wn()}}},mP=wA(_q0);var MVQ=qA(qVQ(),1);var zVQ="Mysql",Tn=EQ(zVQ,()=>new MVQ.MySQLInstrumentation({})),sq0=()=>{return{name:zVQ,setupOnce(){Tn()}}},dP=wA(sq0);var cVQ=qA(dVQ(),1);var lVQ="Mysql2",yn=EQ(lVQ,()=>new cVQ.MySQL2Instrumentation({responseHook(A){p0(A,"auto.db.otel.mysql2")}})),$M0=()=>{return{name:lVQ,setupOnce(){yn()}}},lP=wA($M0);var kIQ=qA(WIQ(),1),_IQ=qA(jIQ(),1);var wM0=["get","set","setex"],gn=["get","mget"],jM0=["set","setex"];function fL(A,Q){return A.includes(Q.toLowerCase())}function xn(A){if(fL(gn,A))return"cache.get";else if(fL(jM0,A))return"cache.put";else return}function OM0(A,Q){return Q.some((B)=>A.startsWith(B))}function PIQ(A,Q){try{if(Q.length===0)return;let B=(J)=>{if(typeof J==="string"||typeof J==="number"||Buffer.isBuffer(J))return[J.toString()];else if(Array.isArray(J))return OIQ(J.map((C)=>B(C)));else return[""]},Y=Q[0];if(fL(wM0,A)&&Y!=null)return B(Y);return OIQ(Q.map((J)=>B(J)))}catch(B){return}}function TIQ(A,Q,B){if(!xn(A))return!1;for(let Y of Q)if(OM0(Y,B))return!0;return!1}function SIQ(A){let Q=(B)=>{try{if(Buffer.isBuffer(B))return B.byteLength;else if(typeof B==="string")return B.length;else if(typeof B==="number")return B.toString().length;else if(B===null||B===void 0)return 0;return JSON.stringify(B).length}catch(Y){return}};return Array.isArray(A)?A.reduce((B,Y)=>{let J=Q(Y);return typeof J==="number"?B!==void 0?B+J:J:B},0):Q(A)}function OIQ(A){let Q=[],B=(Y)=>{Y.forEach((J)=>{if(Array.isArray(J))B(J);else Q.push(J)})};return B(A),Q}var vIQ="Redis",fn={},yIQ=(A,Q,B,Y)=>{A.setAttribute(DQ,"auto.db.otel.redis");let J=PIQ(Q,B),C=xn(Q);if(!J||!C||!fn.cachePrefixes||!TIQ(Q,J,fn.cachePrefixes))return;let X=eA(A).data["net.peer.name"],G=eA(A).data["net.peer.port"];if(G&&X)A.setAttributes({"network.peer.address":X,"network.peer.port":G});let F=SIQ(Y);if(F)A.setAttribute(zu,F);if(fL(gn,Q)&&F!==void 0)A.setAttribute(qu,F>0);A.setAttributes({[YQ]:C,[Mu]:J});let W=J.join(", ");A.updateName(b9(W,1024))},PM0=EQ("IORedis",()=>{return new kIQ.IORedisInstrumentation({responseHook:yIQ})}),TM0=EQ("Redis-4",()=>{return new _IQ.RedisInstrumentation({responseHook:yIQ})}),bn=Object.assign(()=>{PM0(),TM0()},{id:vIQ}),SM0=(A={})=>{return{name:vIQ,setupOnce(){fn=A,bn()}}},iP=wA(SM0);var UHQ=qA($HQ(),1);var EHQ="Postgres",sn=EQ(EHQ,()=>new UHQ.PgInstrumentation({requireParentSpan:!0,requestHook(A){p0(A,"auto.db.otel.postgres")}})),Kz0=()=>{return{name:EHQ,setupOnce(){sn()}}},aP=wA(Kz0);var IHQ=qA(yA(),1),oP=qA(NB(),1),yF=qA(yA(),1);var Vz0=process.env.PRISMA_SHOW_ALL_TRACES==="true",Iz0="00-10-10-00";function Hz0(A){switch(A){case"client":return yF.SpanKind.CLIENT;case"internal":default:return yF.SpanKind.INTERNAL}}var Dz0=class{traceMiddleware;tracerProvider;ignoreSpanTypes;constructor({traceMiddleware:A,tracerProvider:Q,ignoreSpanTypes:B}){this.traceMiddleware=A,this.tracerProvider=Q,this.ignoreSpanTypes=B}isEnabled(){return!0}getTraceParent(A){let Q=yF.trace.getSpanContext(A??yF.context.active());if(Q)return`00-${Q.traceId}-${Q.spanId}-0${Q.traceFlags}`;return Iz0}dispatchEngineSpans(A){let Q=this.tracerProvider.getTracer("prisma"),B=new Map,Y=A.filter((J)=>J.parentId===null);for(let J of Y)HHQ(Q,J,A,B,this.ignoreSpanTypes)}getActiveContext(){return yF.context.active()}runInChildSpan(A,Q){if(typeof A==="string")A={name:A};if(A.internal&&!Vz0)return Q();if(A.middleware&&!this.traceMiddleware)return Q();let B=this.tracerProvider.getTracer("prisma"),Y=A.context??this.getActiveContext(),J=`prisma:client:${A.name}`;if(DHQ(J,this.ignoreSpanTypes))return Q();if(A.active===!1){let C=B.startSpan(J,A,Y);return KHQ(C,Q(C,Y))}return B.startActiveSpan(J,A,(C)=>KHQ(C,Q(C,Y)))}};function HHQ(A,Q,B,Y,J){if(DHQ(Q.name,J))return;let C={attributes:Q.attributes,kind:Hz0(Q.kind),startTime:Q.startTime};A.startActiveSpan(Q.name,C,(X)=>{if(Y.set(Q.id,X.spanContext().spanId),Q.links)X.addLinks(Q.links.flatMap((F)=>{let W=Y.get(F);if(!W)return[];return{context:{spanId:W,traceId:X.spanContext().traceId,traceFlags:X.spanContext().traceFlags}}}));let G=B.filter((F)=>F.parentId===Q.id);for(let F of G)HHQ(A,F,B,Y,J);X.end(Q.endTime)})}function KHQ(A,Q){if(Nz0(Q))return Q.then((B)=>{return A.end(),B},(B)=>{throw A.end(),B});return A.end(),Q}function Nz0(A){return A!=null&&typeof A.then==="function"}function DHQ(A,Q){return Q.some((B)=>typeof B==="string"?B===A:B.test(A))}var NHQ={name:"@prisma/instrumentation",version:"6.7.0",description:"OpenTelemetry compliant instrumentation for Prisma Client",main:"dist/index.js",module:"dist/index.mjs",types:"dist/index.d.ts",exports:{".":{require:{types:"./dist/index.d.ts",default:"./dist/index.js"},import:{types:"./dist/index.d.ts",default:"./dist/index.mjs"}}},license:"Apache-2.0",homepage:"https://www.prisma.io",repository:{type:"git",url:"https://github.com/prisma/prisma.git",directory:"packages/instrumentation"},bugs:"https://github.com/prisma/prisma/issues",devDependencies:{"@prisma/internals":"workspace:*","@swc/core":"1.11.5","@types/jest":"29.5.14","@types/node":"18.19.76","@opentelemetry/api":"1.9.0",jest:"29.7.0","jest-junit":"16.0.0",typescript:"5.4.5"},dependencies:{"@opentelemetry/instrumentation":"^0.52.0 || ^0.53.0 || ^0.54.0 || ^0.55.0 || ^0.56.0 || ^0.57.0"},peerDependencies:{"@opentelemetry/api":"^1.8"},files:["dist"],keywords:["prisma","instrumentation","opentelemetry","otel"],scripts:{dev:"DEV=true tsx helpers/build.ts",build:"tsx helpers/build.ts",prepublishOnly:"pnpm run build",test:"jest"},sideEffects:!1},an=NHQ.version,Lz0=an.split(".")[0],VHQ="PRISMA_INSTRUMENTATION",rn=`V${Lz0}_PRISMA_INSTRUMENTATION`,qz0=NHQ.name,Mz0="@prisma/client",LHQ=class extends oP.InstrumentationBase{tracerProvider;constructor(A={}){super(qz0,an,A)}setTracerProvider(A){this.tracerProvider=A}init(){return[new oP.InstrumentationNodeModuleDefinition(Mz0,[an])]}enable(){let A=this._config,Q={helper:new Dz0({traceMiddleware:A.middleware??!1,tracerProvider:this.tracerProvider??IHQ.trace.getTracerProvider(),ignoreSpanTypes:A.ignoreSpanTypes??[]})};global[VHQ]=Q,global[rn]=Q}disable(){delete global[VHQ],delete global[rn]}isEnabled(){return Boolean(global[rn])}};var qHQ="Prisma";function zz0(A){return!!A&&typeof A==="object"&&"dispatchEngineSpans"in A}function MHQ(){let A=globalThis.PRISMA_INSTRUMENTATION;return A&&typeof A==="object"&&"helper"in A?A.helper:void 0}class zHQ extends LHQ{constructor(){super()}enable(){super.enable();let A=MHQ(),Q=!1;if(zz0(A))A.createEngineSpan=()=>{h0(()=>{if(!Q)Q=!0,console.warn("[Sentry] The Sentry SDK supports tracing with Prisma version 5 only with limited capabilities. For full tracing capabilities pass `prismaInstrumentation` for version 5 to the Sentry `prismaIntegration`. Read more: https://docs.sentry.io/platforms/javascript/guides/node/configuration/integrations/prisma/")})}}}var Rz0=EQ(qHQ,(A)=>{if(A?.prismaInstrumentation)return A.prismaInstrumentation;return new zHQ}),tP=wA(({prismaInstrumentation:A}={})=>{return{name:qHQ,setupOnce(){Rz0({prismaInstrumentation:A})},setup(Q){if(!MHQ())return;Q.on("spanStart",(B)=>{let Y=eA(B);if(Y.description?.startsWith("prisma:"))B.setAttribute(DQ,"auto.db.otel.prisma");if(Y.description==="prisma:engine:db_query"&&Y.data["db.query.text"])B.updateName(Y.data["db.query.text"]);if(Y.description==="prisma:engine:db_query"&&!Y.data["db.system"])B.setAttribute("db.system","prisma")})}}});var uHQ=qA(mHQ(),1);var dHQ="Hapi",QT=EQ(dHQ,()=>new uHQ.HapiInstrumentation),pz0=()=>{return{name:dHQ,setupOnce(){QT()}}},BT=wA(pz0);function iz0(A){return!!(A&&typeof A==="object"&&("error"in A)&&A.error)}function nz0(A){jB(A,{mechanism:{type:"hapi",handled:!1,data:{function:"hapiErrorPlugin"}}})}var sz0={name:"SentryHapiErrorPlugin",version:u0,register:async function(A){A.events.on({name:"request",channels:["error"]},(B,Y)=>{if(RQ()!==R5()){let J=B.route;if(J.path)RQ().setTransactionName(`${J.method.toUpperCase()} ${J.path}`)}else fQ&&e.warn("Isolation scope is still the default isolation scope - skipping setting transactionName");if(iz0(Y))nz0(Y.error)})}};async function cHQ(A){await A.register(sz0);let Q=hA();if(Q)Q.on("spanStart",(B)=>{rz0(B)});IF(A.register,"hapi")}function rz0(A){let Q=eA(A).data,B=Q["hapi.type"];if(Q[YQ]||!B)return;A.setAttributes({[DQ]:"auto.http.otel.hapi",[YQ]:`${B}.hapi`})}var UDQ=qA($DQ(),1),EDQ=qA(uB(),1);var KDQ="Koa",Cs=EQ(KDQ,()=>new UDQ.KoaInstrumentation({requestHook(A,Q){if(C20(A),RQ()===R5()){fQ&&e.warn("Isolation scope is default isolation scope - skipping setting transactionName");return}let Y=eA(A).data[EDQ.ATTR_HTTP_ROUTE],J=Q.context?.request?.method?.toUpperCase()||"GET";if(Y)RQ().setTransactionName(`${J} ${Y}`)}})),J20=()=>{return{name:KDQ,setupOnce(){Cs()}}},CT=wA(J20),VDQ=(A)=>{A.use(async(Q,B)=>{try{await B()}catch(Y){throw jB(Y),Y}}),IF(A.use,"koa")};function C20(A){A.setAttribute(DQ,"auto.http.otel.koa");let Q=eA(A).data,B=Q["koa.type"];if(B)A.setAttribute(YQ,`${B}.koa`);let Y=Q["koa.name"];if(typeof Y==="string")A.updateName(Y||"< unknown >")}var gDQ=qA(hDQ(),1);var xDQ="Connect",Zs=EQ(xDQ,()=>new gDQ.ConnectInstrumentation),N20=()=>{return{name:xDQ,setupOnce(){Zs()}}},GT=wA(N20);function L20(A,Q,B,Y){jB(A),Y(A)}var fDQ=(A)=>{A.use(L20);let Q=hA();if(Q)Q.on("spanStart",(B)=>{q20(B)});IF(A.use,"connect")};function q20(A){let Q=eA(A).data,B=Q["connect.type"];if(Q[YQ]||!B)return;A.setAttributes({[DQ]:"auto.http.otel.connect",[YQ]:`${B}.connect`});let Y=Q["connect.name"];if(typeof Y==="string")A.updateName(Y)}import*as M20 from"node:http";var $s="Spotlight",z20=(A={})=>{let Q={sidecarUrl:A.sidecarUrl||"http://localhost:8969/stream"};return{name:$s,setup(B){if(typeof process==="object"&&process.env&&process.env.NODE_ENV!=="development")e.warn("[Spotlight] It seems you're not in dev mode. Do you really want to have Spotlight enabled?");R20(B,Q)}}},FT=wA(z20);function R20(A,Q){let B=w20(Q.sidecarUrl);if(!B)return;let Y=0;A.on("beforeEnvelope",(J)=>{if(Y>3){e.warn("[Spotlight] Disabled Sentry -> Spotlight integration due to too many failed requests");return}let C=WN(J),G=j20()({method:"POST",path:B.pathname,hostname:B.hostname,port:B.port,headers:{"Content-Type":"application/x-sentry-envelope"}},(F)=>{if(F.statusCode&&F.statusCode>=200&&F.statusCode<400)Y=0;F.on("data",()=>{}),F.on("end",()=>{}),F.setEncoding("utf8")});G.on("error",()=>{Y++,e.warn("[Spotlight] Failed to send envelope to Spotlight Sidecar")}),G.write(C),G.end()})}function w20(A){try{return new URL(`${A}`)}catch{e.warn(`[Spotlight] Invalid sidecar URL: ${A}`);return}}function j20(){let{request:A}=M20;if(O20(A))return A.__sentry_original__;return A}function O20(A){return"__sentry_original__"in A}var CNQ=qA(JNQ(),1);var XNQ="Knex",c20=EQ(XNQ,()=>new CNQ.KnexInstrumentation({requireParentSpan:!0})),l20=()=>{let A;return{name:XNQ,setupOnce(){let Q=c20();A=GF(Q)},setup(Q){A?.(()=>Q.on("spanStart",(B)=>{let{data:Y}=eA(B);if("knex.version"in Y)B.setAttribute(DQ,"auto.db.otel.knex")}))}}},GNQ=wA(l20);var wNQ=qA(RNQ(),1);var o20=new Set(["callProcedure","execSql","execSqlBatch","execBulkLoad","prepare","execute"]),jNQ="Tedious",Es=EQ(jNQ,()=>new wNQ.TediousInstrumentation({})),t20=()=>{let A;return{name:jNQ,setupOnce(){let Q=Es();A=GF(Q)},setup(Q){A?.(()=>Q.on("spanStart",(B)=>{let{description:Y,data:J}=eA(B);if(!Y||J["db.system"]!=="mssql")return;let C=Y.split(" ")[0]||"";if(o20.has(C))B.setAttribute(DQ,"auto.db.otel.tedious")}))}}},ET=wA(t20);var gNQ=qA(hNQ(),1);var xNQ="GenericPool",Vs=EQ(xNQ,()=>new gNQ.GenericPoolInstrumentation({})),B30=()=>{let A;return{name:xNQ,setupOnce(){let Q=Vs();A=GF(Q)},setup(Q){A?.(()=>Q.on("spanStart",(B)=>{let J=eA(B).description;if(J==="generic-pool.aquire"||J==="generic-pool.acquire")B.setAttribute(DQ,"auto.db.otel.generic_pool")}))}}},KT=wA(B30);var aNQ=qA(rNQ(),1);var oNQ="Dataloader",C30=EQ(oNQ,()=>new aNQ.DataloaderInstrumentation({requireParentSpan:!0})),X30=()=>{let A;return{name:oNQ,setupOnce(){let Q=C30();A=GF(Q)},setup(Q){A?.(()=>{Q.on("spanStart",(B)=>{let Y=eA(B);if(Y.description?.startsWith("dataloader"))B.setAttribute(DQ,"auto.db.otel.dataloader");if(Y.description==="dataloader.load"||Y.description==="dataloader.loadMany"||Y.description==="dataloader.batch")B.setAttribute(YQ,"cache.get")})})}}},tNQ=wA(X30);var DLQ=qA(HLQ(),1);var NLQ="Amqplib",j30={consumeEndHook:(A)=>{p0(A,"auto.amqplib.otel.consumer")},publishHook:(A)=>{p0(A,"auto.amqplib.otel.publisher")}},Ls=EQ(NLQ,()=>new DLQ.AmqplibInstrumentation(j30)),O30=()=>{return{name:NLQ,setupOnce(){Ls()}}},HT=wA(O30);var DT=qA(NB(),1);var LLQ=["generateText","streamText","generateObject","streamObject","embed","embedMany"];class lL extends DT.InstrumentationBase{__init(){this._isPatched=!1}__init2(){this._callbacks=[]}constructor(A={}){super("@sentry/instrumentation-vercel-ai",u0,A);lL.prototype.__init.call(this),lL.prototype.__init2.call(this)}init(){return new DT.InstrumentationNodeModuleDefinition("ai",[">=3.0.0 <5"],this._patch.bind(this))}callWhenPatched(A){if(this._isPatched)A();else this._callbacks.push(A)}_patch(A){this._isPatched=!0,this._callbacks.forEach((B)=>B()),this._callbacks=[];function Q(B){return(...Y)=>{let J=Y[0].experimental_telemetry||{};if(J.isEnabled===void 0)Y[0].experimental_telemetry={isEnabled:!0,recordInputs:!1,recordOutputs:!1,...J};return B.apply(this,Y)}}if(Object.prototype.toString.call(A)==="[object Module]"){for(let B of LLQ)A[B]=Q(A[B]);return A}else{let B=LLQ.reduce((Y,J)=>{return Y[J]=Q(A[J]),Y},{});return{...A,...B}}}}var qLQ="VercelAI",qs=EQ(qLQ,()=>new lL({})),P30=()=>{let A;return{name:qLQ,setupOnce(){A=qs()},setup(Q){A?.callWhenPatched(()=>{Q.on("spanStart",(B)=>{let{data:Y,description:J}=eA(B);if(!J)return;let C=Y["ai.model.id"],X=Y["ai.model.provider"];if(typeof C!=="string"||typeof X!=="string"||!C||!X)return;let G=!1;switch(J){case"ai.generateText":{B.setAttribute(YQ,"ai.pipeline.generateText"),G=!0;break}case"ai.generateText.doGenerate":{B.setAttribute(YQ,"ai.run.doGenerate");break}case"ai.streamText":{B.setAttribute(YQ,"ai.pipeline.streamText"),G=!0;break}case"ai.streamText.doStream":{B.setAttribute(YQ,"ai.run.doStream");break}case"ai.generateObject":{B.setAttribute(YQ,"ai.pipeline.generateObject"),G=!0;break}case"ai.generateObject.doGenerate":{B.setAttribute(YQ,"ai.run.doGenerate");break}case"ai.streamObject":{B.setAttribute(YQ,"ai.pipeline.streamObject"),G=!0;break}case"ai.streamObject.doStream":{B.setAttribute(YQ,"ai.run.doStream");break}case"ai.embed":{B.setAttribute(YQ,"ai.pipeline.embed"),G=!0;break}case"ai.embed.doEmbed":{B.setAttribute(YQ,"ai.embeddings");break}case"ai.embedMany":{B.setAttribute(YQ,"ai.pipeline.embedMany"),G=!0;break}case"ai.embedMany.doEmbed":{B.setAttribute(YQ,"ai.embeddings");break}case"ai.toolCall":case"ai.stream.firstChunk":case"ai.stream.finish":B.setAttribute(YQ,"ai.run");break}p0(B,"auto.vercelai.otel");let F=J.replace("ai.","");B.setAttribute("ai.pipeline.name",F),B.updateName(F);let W=Y["ai.telemetry.functionId"];if(W&&typeof W==="string"&&G)B.updateName(W),B.setAttribute("ai.pipeline.name",W);if(Y["ai.prompt"])B.setAttribute("ai.input_messages",Y["ai.prompt"]);if(Y["ai.model.id"])B.setAttribute("ai.model_id",Y["ai.model.id"]);B.setAttribute("ai.streaming",J.includes("stream"))}),Q.addEventProcessor((B)=>{if(B.type==="transaction"&&B.spans?.length)for(let Y of B.spans){let{data:J,description:C}=Y;if(!C||Y.origin!=="auto.vercelai.otel")continue;if(J["ai.usage.completionTokens"]!=null)J["ai.completion_tokens.used"]=J["ai.usage.completionTokens"];if(J["ai.usage.promptTokens"]!=null)J["ai.prompt_tokens.used"]=J["ai.usage.promptTokens"];if(typeof J["ai.usage.completionTokens"]=="number"&&typeof J["ai.usage.promptTokens"]=="number")J["ai.total_tokens.used"]=J["ai.usage.completionTokens"]+J["ai.usage.promptTokens"]}return B})})}}},NT=wA(P30);import*as Ms from"node:diagnostics_channel";var T30="ChildProcess",LT=wA((A={})=>{return{name:T30,setup(){Ms.channel("child_process").subscribe((Q)=>{if(Q&&typeof Q==="object"&&"process"in Q)S30(Q.process,A)}),Ms.channel("worker_threads").subscribe((Q)=>{if(Q&&typeof Q==="object"&&"worker"in Q)k30(Q.worker,A)})}}});function S30(A,Q){let B=!1,Y;A.on("spawn",()=>{if(A.spawnfile==="/usr/bin/sw_vers"){B=!0;return}if(Y={spawnfile:A.spawnfile},Q.includeChildProcessArgs)Y.spawnargs=A.spawnargs}).on("exit",(J)=>{if(!B){if(B=!0,J!==null&&J!==0)G9({category:"child_process",message:`Child process exited with code '${J}'`,level:J===0?"info":"warning",data:Y})}}).on("error",(J)=>{if(!B)B=!0,G9({category:"child_process",message:`Child process errored with '${J.message}'`,level:"error",data:Y})})}function k30(A,Q){let B;A.on("online",()=>{B=A.threadId}).on("error",(Y)=>{if(Q.captureWorkerErrors!==!1)jB(Y,{mechanism:{type:"instrument",handled:!1,data:{threadId:String(B)}}});else G9({category:"worker_thread",message:`Worker thread errored with '${Y.message}'`,level:"error",data:{threadId:B}})})}var _30=["trace","debug","info","warn","error","fatal"],MLQ=Symbol.for("level"),v30=Symbol.for("message"),y30=Symbol.for("splat");function zLQ(A,Q){class B extends A{constructor(Y){super(Y);this._levels=new Set(Q?.levels??_30)}log(Y,J){try{if(setImmediate(()=>{this.emit("logged",Y)}),!h30(Y))return;let C=Y[MLQ],{level:X,message:G,timestamp:F,...W}=Y;W[MLQ]=void 0,W[v30]=void 0,W[y30]=void 0;let Z=g30[C]??"info";if(this._levels.has(Z))tX(Z,G,{...W,"sentry.origin":"auto.logging.winston"})}catch{}if(J)J()}}return B}function h30(A){return typeof A==="object"&&A!=null}var g30={silly:"trace",debug:"debug",verbose:"debug",http:"debug",info:"info",notice:"info",warn:"warn",warning:"warn",error:"error",emerg:"fatal",alert:"fatal",crit:"fatal"};var gLQ=qA(hLQ(),1);var MT=U$Q(gLQ.AsyncLocalStorageContextManager);var s30="ProcessSession",xLQ=wA(()=>{return{name:s30,setupOnce(){DN(),process.on("beforeExit",()=>{if(RQ().getSession()?.status!=="ok")yZ()})}}});function zT(){return[MP(),kP(),hP(),fP(),mP(),dP(),lP(),iP(),aP(),tP(),BT(),CT(),GT(),ET(),KT(),gP(),HT(),xP(),NT()]}function fLQ(){return[vi,ai,oi,Zs,Fn,Gn,QT,In,Cs,Hn,Mn,wn,Tn,yn,sn,QT,Vn,bn,Es,Vs,Ls,qs]}import*as a30 from"node:http";import*as o30 from"node:https";import{Readable as t30}from"node:stream";import{createGzip as e30}from"node:zlib";import*as MG from"node:net";import*as js from"node:tls";import*as Rs from"node:http";var E6=Symbol("AgentBaseInternalState");class ws extends Rs.Agent{constructor(A){super(A);this[E6]={}}isSecureEndpoint(A){if(A){if(typeof A.secureEndpoint==="boolean")return A.secureEndpoint;if(typeof A.protocol==="string")return A.protocol==="https:"}let{stack:Q}=Error();if(typeof Q!=="string")return!1;return Q.split(` -`).some((B)=>B.indexOf("(https.js:")!==-1||B.indexOf("node:https:")!==-1)}createSocket(A,Q,B){let Y={...Q,secureEndpoint:this.isSecureEndpoint(Q)};Promise.resolve().then(()=>this.connect(A,Y)).then((J)=>{if(J instanceof Rs.Agent)return J.addRequest(A,Y);this[E6].currentSocket=J,super.createSocket(A,Q,B)},B)}createConnection(){let A=this[E6].currentSocket;if(this[E6].currentSocket=void 0,!A)throw Error("No socket was returned in the `connect()` function");return A}get defaultPort(){return this[E6].defaultPort??(this.protocol==="https:"?443:80)}set defaultPort(A){if(this[E6])this[E6].defaultPort=A}get protocol(){return this[E6].protocol??(this.isSecureEndpoint()?"https:":"http:")}set protocol(A){if(this[E6])this[E6].protocol=A}}function RT(...A){e.log("[https-proxy-agent:parse-proxy-response]",...A)}function bLQ(A){return new Promise((Q,B)=>{let Y=0,J=[];function C(){let Z=A.read();if(Z)W(Z);else A.once("readable",C)}function X(){A.removeListener("end",G),A.removeListener("error",F),A.removeListener("readable",C)}function G(){X(),RT("onend"),B(Error("Proxy connection ended before receiving CONNECT response"))}function F(Z){X(),RT("onerror %o",Z),B(Z)}function W(Z){J.push(Z),Y+=Z.length;let U=Buffer.concat(J,Y),$=U.indexOf(`\r +`),typeof G==="string"||G instanceof Uint8Array)J(G);else{let W;try{W=JSON.stringify(G)}catch(F){W=JSON.stringify(SJ(G))}J(W)}}return typeof Y==="string"?Y:h$B(Y)}function h$B(A){let Q=A.reduce((J,C)=>J+C.length,0),B=new Uint8Array(Q),Y=0;for(let J of A)B.set(J,Y),Y+=J.length;return B}function Wd(A){return[{type:"span"},A]}function Fd(A){let Q=typeof A.data==="string"?Xd(A.data):A.data;return[{type:"attachment",length:Q.length,filename:A.filename,content_type:A.contentType,attachment_type:A.attachmentType},Q]}var x$B={session:"session",sessions:"session",attachment:"attachment",transaction:"transaction",event:"error",client_report:"internal",user_report:"default",profile:"profile",profile_chunk:"profile",replay_event:"replay",replay_recording:"replay",check_in:"monitor",feedback:"feedback",span:"span",raw_security:"security",log:"log_item"};function kj(A){return x$B[A]}function _j(A){if(!A?.sdk)return;let{name:Q,version:B}=A.sdk;return{name:Q,version:B}}function Zd(A,Q,B,Y){let J=A.sdkProcessingMetadata?.dynamicSamplingContext;return{event_id:A.event_id,sent_at:new Date().toISOString(),...Q&&{sdk:Q},...!!B&&Y&&{dsn:B1(Y)},...J&&{trace:J}}}function f$B(A,Q){if(!Q)return A;return A.sdk=A.sdk||{},A.sdk.name=A.sdk.name||Q.name,A.sdk.version=A.sdk.version||Q.version,A.sdk.integrations=[...A.sdk.integrations||[],...Q.integrations||[]],A.sdk.packages=[...A.sdk.packages||[],...Q.packages||[]],A}function jNA(A,Q,B,Y){let J=_j(B),C={sent_at:new Date().toISOString(),...J&&{sdk:J},...!!Y&&Q&&{dsn:B1(Q)}},X="aggregates"in A?[{type:"sessions"},A]:[{type:"session"},A.toJSON()];return f8(C,[X])}function ONA(A,Q,B,Y){let J=_j(B),C=A.type&&A.type!=="replay_event"?A.type:"event";f$B(A,B?.sdk);let X=Zd(A,J,Y,Q);return delete A.sdkProcessingMetadata,f8(X,[[{type:C},A]])}function PNA(A,Q){function B(Z){return!!Z.trace_id&&!!Z.public_key}let Y=i0(A[0]),J=Q?.getDsn(),C=Q?.getOptions().tunnel,X={sent_at:new Date().toISOString(),...B(Y)&&{trace:Y},...!!C&&J&&{dsn:B1(J)}},G=Q?.getOptions().beforeSendSpan,W=G?(Z)=>{let U=eA(Z),$=G(U);if(!$)return NN(),U;return $}:eA,F=[];for(let Z of A){let U=W(Z);if(U)F.push(Wd(U))}return f8(X,F)}function $d(A,Q,B,Y=Q1()){let J=Y&&K0(Y);if(J)OA&&e.log(`[Measurement] Setting measurement on root span: ${A} = ${Q} ${B}`),J.addEvent(A,{[qj]:Q,[Lj]:B})}function uZ(A){if(!A||A.length===0)return;let Q={};return A.forEach((B)=>{let Y=B.attributes||{},J=Y[Lj],C=Y[qj];if(typeof J==="string"&&typeof C==="number")Q[B.name]={value:C,unit:J}}),Q}var TNA=1000;class wN{constructor(A={}){if(this._traceId=A.traceId||y8(),this._spanId=A.spanId||g8(),this._startTime=A.startTimestamp||v8(),this._links=A.links,this._attributes={},this.setAttributes({[DQ]:"manual",[YQ]:A.op,...A.attributes}),this._name=A.name,A.parentSpanId)this._parentSpanId=A.parentSpanId;if("sampled"in A)this._sampled=A.sampled;if(A.endTimestamp)this._endTime=A.endTimestamp;if(this._events=[],this._isStandaloneSpan=A.isStandalone,this._endTime)this._onSpanEnded()}addLink(A){if(this._links)this._links.push(A);else this._links=[A];return this}addLinks(A){if(this._links)this._links.push(...A);else this._links=A;return this}recordException(A,Q){}spanContext(){let{_spanId:A,_traceId:Q,_sampled:B}=this;return{spanId:A,traceId:Q,traceFlags:B?Rj:zj}}setAttribute(A,Q){if(Q===void 0)delete this._attributes[A];else this._attributes[A]=Q;return this}setAttributes(A){return Object.keys(A).forEach((Q)=>this.setAttribute(Q,A[Q])),this}updateStartTime(A){this._startTime=r9(A)}setStatus(A){return this._status=A,this}updateName(A){return this._name=A,this.setAttribute(Q0,"custom"),this}end(A){if(this._endTime)return;this._endTime=r9(A),MN(this),this._onSpanEnded()}getSpanJSON(){return{data:this._attributes,description:this._name,op:this._attributes[YQ],parent_span_id:this._parentSpanId,span_id:this._spanId,start_timestamp:this._startTime,status:fZ(this._status),timestamp:this._endTime,trace_id:this._traceId,origin:this._attributes[DQ],profile_id:this._attributes[xE],exclusive_time:this._attributes[fE],measurements:uZ(this._events),is_segment:this._isStandaloneSpan&&K0(this)===this||void 0,segment_id:this._isStandaloneSpan?K0(this).spanContext().spanId:void 0,links:xZ(this._links)}}isRecording(){return!this._endTime&&!!this._sampled}addEvent(A,Q,B){OA&&e.log("[Tracing] Adding an event to span:",A);let Y=SNA(Q)?Q:B||v8(),J=SNA(Q)?{}:Q||{},C={name:A,time:r9(Y),attributes:J};return this._events.push(C),this}isStandaloneSpan(){return!!this._isStandaloneSpan}_onSpanEnded(){let A=gA();if(A)A.emit("spanEnd",this);if(!(this._isStandaloneSpan||this===K0(this)))return;if(this._isStandaloneSpan){if(this._sampled)m$B(PNA([this],A));else if(OA&&e.log("[Tracing] Discarding standalone span because its trace was not chosen to be sampled."),A)A.recordDroppedEvent("sample_rate","span");return}let B=this._convertSpanToTransaction();if(B)(A1(this).scope||sQ()).captureEvent(B)}_convertSpanToTransaction(){if(!kNA(eA(this)))return;if(!this._name)OA&&e.warn("Transaction has no name, falling back to ``."),this._name="";let{scope:A,isolationScope:Q}=A1(this),B=A?.getScopeData().sdkProcessingMetadata?.normalizedRequest;if(this._sampled!==!0)return;let J=DN(this).filter((F)=>F!==this&&!b$B(F)).map((F)=>eA(F)).filter(kNA),C=this._attributes[Q0];delete this._attributes[eC],J.forEach((F)=>{delete F.data[eC]});let X={contexts:{trace:ENA(this)},spans:J.length>TNA?J.sort((F,Z)=>F.start_timestamp-Z.start_timestamp).slice(0,TNA):J,start_timestamp:this._startTime,timestamp:this._endTime,transaction:this._name,type:"transaction",sdkProcessingMetadata:{capturedSpanScope:A,capturedSpanIsolationScope:Q,dynamicSamplingContext:i0(this)},request:B,...C&&{transaction_info:{source:C}}},G=uZ(this._events);if(G&&Object.keys(G).length)OA&&e.log("[Measurements] Adding measurements to transaction event",JSON.stringify(G,void 0,2)),X.measurements=G;return X}}function SNA(A){return A&&typeof A==="number"||A instanceof Date||Array.isArray(A)}function kNA(A){return!!A.start_timestamp&&!!A.timestamp&&!!A.span_id&&!!A.trace_id}function b$B(A){return A instanceof wN&&A.isStandaloneSpan()}function m$B(A){let Q=gA();if(!Q)return;let B=A[1];if(!B||B.length===0){Q.recordDroppedEvent("before_send","span");return}Q.sendEnvelope(A)}var Ud="__SENTRY_SUPPRESS_TRACING__";function b8(A,Q){let B=PN();if(B.startSpan)return B.startSpan(A,Q);let Y=Hd(A),{forceTransaction:J,parentSpan:C,scope:X}=A,G=X?.clone();return h8(G,()=>{return vNA(C)(()=>{let F=sQ(),Z=Dd(F),$=A.onlyIfParent&&!Z?new bZ:Id({parentSpan:Z,spanArguments:Y,forceTransaction:J,scope:F});return yZ(F,$),mZ(()=>Q($),()=>{let{status:E}=eA($);if($.isRecording()&&(!E||E==="ok"))$.setStatus({code:s9,message:"internal_error"})},()=>{$.end()})})})}function jN(A,Q){let B=PN();if(B.startSpanManual)return B.startSpanManual(A,Q);let Y=Hd(A),{forceTransaction:J,parentSpan:C,scope:X}=A,G=X?.clone();return h8(G,()=>{return vNA(C)(()=>{let F=sQ(),Z=Dd(F),$=A.onlyIfParent&&!Z?new bZ:Id({parentSpan:Z,spanArguments:Y,forceTransaction:J,scope:F});return yZ(F,$),mZ(()=>Q($,()=>$.end()),()=>{let{status:E}=eA($);if($.isRecording()&&(!E||E==="ok"))$.setStatus({code:s9,message:"internal_error"})})})})}function Ed(A){let Q=PN();if(Q.startInactiveSpan)return Q.startInactiveSpan(A);let B=Hd(A),{forceTransaction:Y,parentSpan:J}=A;return(A.scope?(X)=>h8(A.scope,X):J!==void 0?(X)=>GW(J,X):(X)=>X())(()=>{let X=sQ(),G=Dd(X);if(A.onlyIfParent&&!G)return new bZ;return Id({parentSpan:G,spanArguments:B,forceTransaction:Y,scope:X})})}var Kd=(A,Q)=>{let B=TJ(),Y=y5(B);if(Y.continueTrace)return Y.continueTrace(A,Q);let{sentryTrace:J,baggage:C}=A;return h8((X)=>{let G=hZ(J,C);return X.setPropagationContext(G),Q()})};function GW(A,Q){let B=PN();if(B.withActiveSpan)return B.withActiveSpan(A,Q);return h8((Y)=>{return yZ(Y,A||void 0),Q(Y)})}function ON(A){let Q=PN();if(Q.suppressTracing)return Q.suppressTracing(A);return h8((B)=>{return B.setSDKProcessingMetadata({[Ud]:!0}),A()})}function Vd(A){return h8((Q)=>{return Q.setPropagationContext({traceId:y8(),sampleRand:Math.random()}),OA&&e.info(`Starting a new trace with id ${Q.getPropagationContext().traceId}`),GW(null,A)})}function Id({parentSpan:A,spanArguments:Q,forceTransaction:B,scope:Y}){if(!U9()){let X=new bZ;if(B||!A){let G={sampled:"false",sample_rate:"0",transaction:Q.name,...i0(X)};Tj(X,G)}return X}let J=RQ(),C;if(A&&!B)C=u$B(A,Y,Q),uE(A,C);else if(A){let X=i0(A),{traceId:G,spanId:W}=A.spanContext(),F=XX(A);C=_NA({traceId:G,parentSpanId:W,...Q},Y,F),Tj(C,X)}else{let{traceId:X,dsc:G,parentSpanId:W,sampled:F}={...J.getPropagationContext(),...Y.getPropagationContext()};if(C=_NA({traceId:X,parentSpanId:W,...Q},Y,F),G)Tj(C,G)}return qN(C),EN(C,Y,J),C}function Hd(A){let B={isStandalone:(A.experimental||{}).standalone,...A};if(A.startTime){let Y={...B};return Y.startTimestamp=r9(A.startTime),delete Y.startTime,Y}return B}function PN(){let A=TJ();return y5(A)}function _NA(A,Q,B){let Y=gA(),J=Y?.getOptions()||{},{name:C=""}=A,X={spanAttributes:{...A.attributes},spanName:C,parentSampled:B};Y?.emit("beforeSampling",X,{decision:!1});let G=X.parentSampled??B,W=X.spanAttributes,F=Q.getPropagationContext(),[Z,U,$]=Q.getScopeData().sdkProcessingMetadata[Ud]?[!1]:zN(J,{name:C,parentSampled:G,attributes:W,parentSampleRate:x8(F.dsc?.sample_rate)},F.sampleRand),E=new wN({...A,attributes:{[Q0]:"custom",[g5]:U!==void 0&&$?U:void 0,...W},sampled:Z});if(!Z&&Y)OA&&e.log("[Tracing] Discarding root span because its trace was not chosen to be sampled."),Y.recordDroppedEvent("sample_rate","transaction");if(Y)Y.emit("spanStart",E);return E}function u$B(A,Q,B){let{spanId:Y,traceId:J}=A.spanContext(),C=Q.getScopeData().sdkProcessingMetadata[Ud]?!1:XX(A),X=C?new wN({...B,parentSpanId:Y,traceId:J,sampled:C}):new bZ({traceId:J});uE(A,X);let G=gA();if(G){if(G.emit("spanStart",X),B.endTimestamp)G.emit("spanEnd",X)}return X}function Dd(A){let Q=tC(A);if(!Q)return;let B=gA();if((B?B.getOptions():{}).parentSpanIsAlwaysRootSpan)return K0(Q);return Q}function vNA(A){return A!==void 0?(Q)=>{return GW(A,Q)}:(Q)=>Q()}var JG;(function(A){A[A.PENDING=0]="PENDING";let B=1;A[A.RESOLVED=B]="RESOLVED";let Y=2;A[A.REJECTED=Y]="REJECTED"})(JG||(JG={}));function J1(A){return new Y1((Q)=>{Q(A)})}function vj(A){return new Y1((Q,B)=>{B(A)})}class Y1{constructor(A){this._state=JG.PENDING,this._handlers=[],this._runExecutor(A)}then(A,Q){return new Y1((B,Y)=>{this._handlers.push([!1,(J)=>{if(!A)B(J);else try{B(A(J))}catch(C){Y(C)}},(J)=>{if(!Q)Y(J);else try{B(Q(J))}catch(C){Y(C)}}]),this._executeHandlers()})}catch(A){return this.then((Q)=>Q,A)}finally(A){return new Y1((Q,B)=>{let Y,J;return this.then((C)=>{if(J=!1,Y=C,A)A()},(C)=>{if(J=!0,Y=C,A)A()}).then(()=>{if(J){B(Y);return}Q(Y)})})}_executeHandlers(){if(this._state===JG.PENDING)return;let A=this._handlers.slice();this._handlers=[],A.forEach((Q)=>{if(Q[0])return;if(this._state===JG.RESOLVED)Q[1](this._value);if(this._state===JG.REJECTED)Q[2](this._value);Q[0]=!0})}_runExecutor(A){let Q=(J,C)=>{if(this._state!==JG.PENDING)return;if(_5(C)){C.then(B,Y);return}this._state=J,this._value=C,this._executeHandlers()},B=(J)=>{Q(JG.RESOLVED,J)},Y=(J)=>{Q(JG.REJECTED,J)};try{A(B,Y)}catch(J){Y(J)}}}function yj(A,Q,B,Y=0){return new Y1((J,C)=>{let X=A[Y];if(Q===null||typeof X!=="function")J(Q);else{let G=X({...Q},B);if(OA&&X.id&&G===null&&e.log(`Event processor "${X.id}" dropped event`),_5(G))G.then((W)=>yj(A,W,B,Y+1).then(J)).then(null,C);else yj(A,G,B,Y+1).then(J).then(null,C)}})}var gj,yNA,hj;function TN(A){let Q=AQ._sentryDebugIds;if(!Q)return{};let B=Object.keys(Q);if(hj&&B.length===yNA)return hj;return yNA=B.length,hj=B.reduce((Y,J)=>{if(!gj)gj={};let C=gj[J];if(C)Y[C[0]]=C[1];else{let X=A(J);for(let G=X.length-1;G>=0;G--){let F=X[G]?.filename,Z=Q[J];if(F&&Z){Y[F]=Z,gj[J]=[F,Z];break}}}return Y},{}),hj}function Nd(A,Q){let{fingerprint:B,span:Y,breadcrumbs:J,sdkProcessingMetadata:C}=Q;if(d$B(A,Q),Y)p$B(A,Y);i$B(A,B),c$B(A,J),l$B(A,C)}function dZ(A,Q){let{extra:B,tags:Y,user:J,contexts:C,level:X,sdkProcessingMetadata:G,breadcrumbs:W,fingerprint:F,eventProcessors:Z,attachments:U,propagationContext:$,transactionName:E,span:K}=Q;if(xj(A,"extra",B),xj(A,"tags",Y),xj(A,"user",J),xj(A,"contexts",C),A.sdkProcessingMetadata=QW(A.sdkProcessingMetadata,G,2),X)A.level=X;if(E)A.transactionName=E;if(K)A.span=K;if(W.length)A.breadcrumbs=[...A.breadcrumbs,...W];if(F.length)A.fingerprint=[...A.fingerprint,...F];if(Z.length)A.eventProcessors=[...A.eventProcessors,...Z];if(U.length)A.attachments=[...A.attachments,...U];A.propagationContext={...A.propagationContext,...$}}function xj(A,Q,B){A[Q]=QW(A[Q],B,1)}function d$B(A,Q){let{extra:B,tags:Y,user:J,contexts:C,level:X,transactionName:G}=Q;if(Object.keys(B).length)A.extra={...B,...A.extra};if(Object.keys(Y).length)A.tags={...Y,...A.tags};if(Object.keys(J).length)A.user={...J,...A.user};if(Object.keys(C).length)A.contexts={...C,...A.contexts};if(X)A.level=X;if(G&&A.type!=="transaction")A.transaction=G}function c$B(A,Q){let B=[...A.breadcrumbs||[],...Q];A.breadcrumbs=B.length?B:void 0}function l$B(A,Q){A.sdkProcessingMetadata={...A.sdkProcessingMetadata,...Q}}function p$B(A,Q){A.contexts={trace:XW(Q),...A.contexts},A.sdkProcessingMetadata={dynamicSamplingContext:i0(Q),...A.sdkProcessingMetadata};let B=K0(Q),Y=eA(B).description;if(Y&&!A.transaction&&A.type==="transaction")A.transaction=Y}function i$B(A,Q){if(A.fingerprint=A.fingerprint?Array.isArray(A.fingerprint)?A.fingerprint:[A.fingerprint]:[],Q)A.fingerprint=A.fingerprint.concat(Q);if(!A.fingerprint.length)delete A.fingerprint}function gNA(A,Q,B,Y,J,C){let{normalizeDepth:X=3,normalizeMaxBreadth:G=1000}=A,W={...Q,event_id:Q.event_id||B.event_id||UY(),timestamp:Q.timestamp||e6()},F=B.integrations||A.integrations.map((V)=>V.name);if(n$B(W,A),a$B(W,F),J)J.emit("applyFrameMetadata",Q);if(Q.type===void 0)s$B(W,A.stackParser);let Z=t$B(Y,B.captureContext);if(B.mechanism)AW(W,B.mechanism);let U=J?J.getEventProcessors():[],$=QG().getScopeData();if(C){let V=C.getScopeData();dZ($,V)}if(Z){let V=Z.getScopeData();dZ($,V)}let E=[...B.attachments||[],...$.attachments];if(E.length)B.attachments=E;Nd(W,$);let K=[...U,...$.eventProcessors];return yj(K,W,B).then((V)=>{if(V)r$B(V);if(typeof X==="number"&&X>0)return o$B(V,X,G);return V})}function n$B(A,Q){let{environment:B,release:Y,dist:J,maxValueLength:C=250}=Q;if(A.environment=A.environment||B||pE,!A.release&&Y)A.release=Y;if(!A.dist&&J)A.dist=J;let X=A.request;if(X?.url)X.url=n9(X.url,C)}function s$B(A,Q){let B=TN(Q);A.exception?.values?.forEach((Y)=>{Y.stacktrace?.frames?.forEach((J)=>{if(J.filename)J.debug_id=B[J.filename]})})}function r$B(A){let Q={};if(A.exception?.values?.forEach((Y)=>{Y.stacktrace?.frames?.forEach((J)=>{if(J.debug_id){if(J.abs_path)Q[J.abs_path]=J.debug_id;else if(J.filename)Q[J.filename]=J.debug_id;delete J.debug_id}})}),Object.keys(Q).length===0)return;A.debug_meta=A.debug_meta||{},A.debug_meta.images=A.debug_meta.images||[];let B=A.debug_meta.images;Object.entries(Q).forEach(([Y,J])=>{B.push({type:"sourcemap",code_file:Y,debug_id:J})})}function a$B(A,Q){if(Q.length>0)A.sdk=A.sdk||{},A.sdk.integrations=[...A.sdk.integrations||[],...Q]}function o$B(A,Q,B){if(!A)return null;let Y={...A,...A.breadcrumbs&&{breadcrumbs:A.breadcrumbs.map((J)=>({...J,...J.data&&{data:SJ(J.data,Q,B)}}))},...A.user&&{user:SJ(A.user,Q,B)},...A.contexts&&{contexts:SJ(A.contexts,Q,B)},...A.extra&&{extra:SJ(A.extra,Q,B)}};if(A.contexts?.trace&&Y.contexts){if(Y.contexts.trace=A.contexts.trace,A.contexts.trace.data)Y.contexts.trace.data=SJ(A.contexts.trace.data,Q,B)}if(A.spans)Y.spans=A.spans.map((J)=>{return{...J,...J.data&&{data:SJ(J.data,Q,B)}}});if(A.contexts?.flags&&Y.contexts)Y.contexts.flags=SJ(A.contexts.flags,3,B);return Y}function t$B(A,Q){if(!Q)return A;let B=A?A.clone():new UJ;return B.update(Q),B}function hNA(A){if(!A)return;if(e$B(A))return{captureContext:A};if(Q4B(A))return{captureContext:A};return A}function e$B(A){return A instanceof UJ||typeof A==="function"}var A4B=["user","level","extra","contexts","tags","fingerprint","propagationContext"];function Q4B(A){return Object.keys(A).some((Q)=>A4B.includes(Q))}function jB(A,Q){return sQ().captureException(A,hNA(Q))}function iE(A,Q){let B=typeof Q==="string"?Q:void 0,Y=typeof Q!=="string"?{captureContext:Q}:void 0;return sQ().captureMessage(A,B,Y)}function kN(A,Q){return sQ().captureEvent(A,Q)}function Ld(A,Q){RQ().setContext(A,Q)}function qd(A){RQ().setExtras(A)}function Md(A,Q){RQ().setExtra(A,Q)}function zd(A){RQ().setTags(A)}function Rd(A,Q){RQ().setTag(A,Q)}function wd(A){RQ().setUser(A)}function jd(){return RQ().lastEventId()}function SN(A,Q){let B=sQ(),Y=gA();if(!Y)OA&&e.warn("Cannot capture check-in. No client defined.");else if(!Y.captureCheckIn)OA&&e.warn("Cannot capture check-in. Client does not support sending check-ins.");else return Y.captureCheckIn(A,Q,B);return UY()}function GX(A,Q,B){let Y=SN({monitorSlug:A,status:"in_progress"},B),J=v8();function C(X){SN({monitorSlug:A,status:X,checkInId:Y,duration:v8()-J})}return BG(()=>{let X;try{X=Q()}catch(G){throw C("error"),G}if(_5(X))Promise.resolve(X).then(()=>{C("ok")},(G)=>{throw C("error"),G});else C("ok");return X})}async function Od(A){let Q=gA();if(Q)return Q.flush(A);return OA&&e.warn("Cannot flush events. No client defined."),Promise.resolve(!1)}async function Pd(A){let Q=gA();if(Q)return Q.close(A);return OA&&e.warn("Cannot flush events and disable SDK. No client defined."),Promise.resolve(!1)}function cZ(){return!!gA()}function _N(){let A=gA();return A?.getOptions().enabled!==!1&&!!A?.getTransport()}function Td(A){RQ().addEventProcessor(A)}function vN(A){let Q=RQ(),B=sQ(),{userAgent:Y}=AQ.navigator||{},J=ANA({user:B.getUser()||Q.getUser(),...Y&&{userAgent:Y},...A}),C=Q.getSession();if(C?.status==="ok")AG(C,{status:"exited"});return lZ(),Q.setSession(J),J}function lZ(){let A=RQ(),B=sQ().getSession()||A.getSession();if(B)QNA(B);xNA(),A.setSession()}function xNA(){let A=RQ(),Q=gA(),B=A.getSession();if(B&&Q)Q.captureSession(B)}function Sd(A=!1){if(A){lZ();return}xNA()}var B4B="7";function Y4B(A){let Q=A.protocol?`${A.protocol}:`:"",B=A.port?`:${A.port}`:"";return`${Q}//${A.host}${B}${A.path?`/${A.path}`:""}/api/`}function J4B(A){return`${Y4B(A)}${A.projectId}/envelope/`}function C4B(A,Q){let B={sentry_version:B4B};if(A.publicKey)B.sentry_key=A.publicKey;if(Q)B.sentry_client=`${Q.name}/${Q.version}`;return new URLSearchParams(B).toString()}function fNA(A,Q,B){return Q?Q:`${J4B(A)}?${C4B(A,B)}`}var bNA=[];function X4B(A){let Q={};return A.forEach((B)=>{let{name:Y}=B,J=Q[Y];if(J&&!J.isDefaultInstance&&B.isDefaultInstance)return;Q[Y]=B}),Object.values(Q)}function kd(A){let Q=A.defaultIntegrations||[],B=A.integrations;Q.forEach((J)=>{J.isDefaultInstance=!0});let Y;if(Array.isArray(B))Y=[...Q,...B];else if(typeof B==="function"){let J=B(Q);Y=Array.isArray(J)?J:[J]}else Y=Q;return X4B(Y)}function mNA(A,Q){let B={};return Q.forEach((Y)=>{if(Y)vd(A,Y,B)}),B}function _d(A,Q){for(let B of Q)if(B?.afterAllSetup)B.afterAllSetup(A)}function vd(A,Q,B){if(B[Q.name]){OA&&e.log(`Integration skipped because it was already installed: ${Q.name}`);return}if(B[Q.name]=Q,bNA.indexOf(Q.name)===-1&&typeof Q.setupOnce==="function")Q.setupOnce(),bNA.push(Q.name);if(Q.setup&&typeof Q.setup==="function")Q.setup(A);if(typeof Q.preprocessEvent==="function"){let Y=Q.preprocessEvent.bind(Q);A.on("preprocessEvent",(J,C)=>Y(J,C,A))}if(typeof Q.processEvent==="function"){let Y=Q.processEvent.bind(Q),J=Object.assign((C,X)=>Y(C,X,A),{id:Q.name});A.addEventProcessor(J)}OA&&e.log(`Integration installed: ${Q.name}`)}function yd(A){let Q=gA();if(!Q){OA&&e.warn(`Cannot add integration "${A.name}" because no SDK Client is available.`);return}Q.addIntegration(A)}function wA(A){return A}function fj(A){let Q=[];if(A.message)Q.push(A.message);try{let B=A.exception.values[A.exception.values.length-1];if(B?.value){if(Q.push(B.value),B.type)Q.push(`${B.type}: ${B.value}`)}}catch(B){}return Q}function uNA(A){let{trace_id:Q,parent_span_id:B,span_id:Y,status:J,origin:C,data:X,op:G}=A.contexts?.trace??{};return{data:X??{},description:A.transaction,op:G,parent_span_id:B,span_id:Y??"",start_timestamp:A.start_timestamp??0,status:J,timestamp:A.timestamp,trace_id:Q??"",origin:C,profile_id:X?.[xE],exclusive_time:X?.[fE],measurements:A.measurements,is_segment:!0}}function dNA(A){return{type:"transaction",timestamp:A.timestamp,start_timestamp:A.start_timestamp,transaction:A.description,contexts:{trace:{trace_id:A.trace_id,span_id:A.span_id,parent_span_id:A.parent_span_id,op:A.op,status:A.status,origin:A.origin,data:{...A.data,...A.profile_id&&{[xE]:A.profile_id},...A.exclusive_time&&{[fE]:A.exclusive_time}}}},measurements:A.measurements}}function cNA(A,Q,B){let Y=[{type:"client_report"},{timestamp:B||e6(),discarded_events:A}];return f8(Q?{dsn:Q}:{},[Y])}var lNA="Not capturing exception because it's already been captured.",pNA="Discarded session because of missing or non-string release",sNA=Symbol.for("SentryInternalError"),rNA=Symbol.for("SentryDoNotSendEventError");function bj(A){return{message:A,[sNA]:!0}}function gd(A){return{message:A,[rNA]:!0}}function iNA(A){return!!A&&typeof A==="object"&&sNA in A}function nNA(A){return!!A&&typeof A==="object"&&rNA in A}class xd{constructor(A){if(this._options=A,this._integrations={},this._numProcessing=0,this._outcomes={},this._hooks={},this._eventProcessors=[],A.dsn)this._dsn=RNA(A.dsn);else OA&&e.warn("No DSN provided, client will not send events.");if(this._dsn){let Q=fNA(this._dsn,A.tunnel,A._metadata?A._metadata.sdk:void 0);this._transport=A.transport({tunnel:this._options.tunnel,recordDroppedEvent:this.recordDroppedEvent.bind(this),...A.transportOptions,url:Q})}}captureException(A,Q,B){let Y=UY();if(Nj(A))return OA&&e.log(lNA),Y;let J={event_id:Y,...Q};return this._process(this.eventFromException(A,J).then((C)=>this._captureEvent(C,J,B))),J.event_id}captureMessage(A,Q,B,Y){let J={event_id:UY(),...B},C=vZ(A)?A:String(A),X=UN(A)?this.eventFromMessage(C,Q,J):this.eventFromException(A,J);return this._process(X.then((G)=>this._captureEvent(G,J,Y))),J.event_id}captureEvent(A,Q,B){let Y=UY();if(Q?.originalException&&Nj(Q.originalException))return OA&&e.log(lNA),Y;let J={event_id:Y,...Q},C=A.sdkProcessingMetadata||{},X=C.capturedSpanScope,G=C.capturedSpanIsolationScope;return this._process(this._captureEvent(A,J,X||B,G)),J.event_id}captureSession(A){this.sendSession(A),AG(A,{init:!1})}getDsn(){return this._dsn}getOptions(){return this._options}getSdkMetadata(){return this._options._metadata}getTransport(){return this._transport}flush(A){let Q=this._transport;if(Q)return this.emit("flush"),this._isClientDoneProcessing(A).then((B)=>{return Q.flush(A).then((Y)=>B&&Y)});else return J1(!0)}close(A){return this.flush(A).then((Q)=>{return this.getOptions().enabled=!1,this.emit("close"),Q})}getEventProcessors(){return this._eventProcessors}addEventProcessor(A){this._eventProcessors.push(A)}init(){if(this._isEnabled()||this._options.integrations.some(({name:A})=>A.startsWith("Spotlight")))this._setupIntegrations()}getIntegrationByName(A){return this._integrations[A]}addIntegration(A){let Q=this._integrations[A.name];if(vd(this,A,this._integrations),!Q)_d(this,[A])}sendEvent(A,Q={}){this.emit("beforeSendEvent",A,Q);let B=ONA(A,this._dsn,this._options._metadata,this._options.tunnel);for(let J of Q.attachments||[])B=Gd(B,Fd(J));let Y=this.sendEnvelope(B);if(Y)Y.then((J)=>this.emit("afterSendEvent",A,J),null)}sendSession(A){let{release:Q,environment:B=pE}=this._options;if("aggregates"in A){let J=A.attrs||{};if(!J.release&&!Q){OA&&e.warn(pNA);return}J.release=J.release||Q,J.environment=J.environment||B,A.attrs=J}else{if(!A.release&&!Q){OA&&e.warn(pNA);return}A.release=A.release||Q,A.environment=A.environment||B}this.emit("beforeSendSession",A);let Y=jNA(A,this._dsn,this._options._metadata,this._options.tunnel);this.sendEnvelope(Y)}recordDroppedEvent(A,Q,B=1){if(this._options.sendClientReports){let Y=`${A}:${Q}`;OA&&e.log(`Recording outcome: "${Y}"${B>1?` (${B} times)`:""}`),this._outcomes[Y]=(this._outcomes[Y]||0)+B}}on(A,Q){let B=this._hooks[A]=this._hooks[A]||[];return B.push(Q),()=>{let Y=B.indexOf(Q);if(Y>-1)B.splice(Y,1)}}emit(A,...Q){let B=this._hooks[A];if(B)B.forEach((Y)=>Y(...Q))}sendEnvelope(A){if(this.emit("beforeEnvelope",A),this._isEnabled()&&this._transport)return this._transport.send(A).then(null,(Q)=>{return OA&&e.error("Error while sending envelope:",Q),Q});return OA&&e.error("Transport disabled"),J1({})}_setupIntegrations(){let{integrations:A}=this._options;this._integrations=mNA(this,A),_d(this,A)}_updateSessionFromEvent(A,Q){let B=Q.level==="fatal",Y=!1,J=Q.exception?.values;if(J){Y=!0;for(let G of J)if(G.mechanism?.handled===!1){B=!0;break}}let C=A.status==="ok";if(C&&A.errors===0||C&&B)AG(A,{...B&&{status:"crashed"},errors:A.errors||Number(Y||B)}),this.captureSession(A)}_isClientDoneProcessing(A){return new Y1((Q)=>{let B=0,Y=1,J=setInterval(()=>{if(this._numProcessing==0)clearInterval(J),Q(!0);else if(B+=Y,A&&B>=A)clearInterval(J),Q(!1)},Y)})}_isEnabled(){return this.getOptions().enabled!==!1&&this._transport!==void 0}_prepareEvent(A,Q,B,Y){let J=this.getOptions(),C=Object.keys(this._integrations);if(!Q.integrations&&C?.length)Q.integrations=C;if(this.emit("preprocessEvent",A,Q),!A.type)Y.setLastEventId(A.event_id||Q.event_id);return gNA(J,A,Q,B,this,Y).then((X)=>{if(X===null)return X;this.emit("postprocessEvent",X,Q),X.contexts={trace:hE(B),...X.contexts};let G=YG(this,B);return X.sdkProcessingMetadata={dynamicSamplingContext:G,...X.sdkProcessingMetadata},X})}_captureEvent(A,Q={},B=sQ(),Y=RQ()){if(OA&&hd(A))e.log(`Captured error event \`${fj(A)[0]||""}\``);return this._processEvent(A,Q,B,Y).then((J)=>{return J.event_id},(J)=>{if(OA)if(nNA(J))e.log(J.message);else if(iNA(J))e.warn(J.message);else e.warn(J);return})}_processEvent(A,Q,B,Y){let J=this.getOptions(),{sampleRate:C}=J,X=aNA(A),G=hd(A),W=A.type||"error",F=`before send for type \`${W}\``,Z=typeof C>"u"?void 0:x8(C);if(G&&typeof Z==="number"&&Math.random()>Z)return this.recordDroppedEvent("sample_rate","error"),vj(gd(`Discarding event because it's not included in the random sample (sampling rate = ${C})`));let U=W==="replay_event"?"replay":W;return this._prepareEvent(A,Q,B,Y).then(($)=>{if($===null)throw this.recordDroppedEvent("event_processor",U),gd("An event processor returned `null`, will not send event.");if(Q.data&&Q.data.__sentry__===!0)return $;let K=W4B(this,J,$,Q);return G4B(K,F)}).then(($)=>{if($===null){if(this.recordDroppedEvent("before_send",U),X){let V=1+(A.spans||[]).length;this.recordDroppedEvent("before_send","span",V)}throw gd(`${F} returned \`null\`, will not send event.`)}let E=B.getSession()||Y.getSession();if(G&&E)this._updateSessionFromEvent(E,$);if(X){let I=$.sdkProcessingMetadata?.spanCountBeforeProcessing||0,V=$.spans?$.spans.length:0,H=I-V;if(H>0)this.recordDroppedEvent("before_send","span",H)}let K=$.transaction_info;if(X&&K&&$.transaction!==A.transaction)$.transaction_info={...K,source:"custom"};return this.sendEvent($,Q),$}).then(null,($)=>{if(nNA($)||iNA($))throw $;throw this.captureException($,{data:{__sentry__:!0},originalException:$}),bj(`Event processing pipeline threw an error, original event will not be sent. Details have been sent as a new event. +Reason: ${$}`)})}_process(A){this._numProcessing++,A.then((Q)=>{return this._numProcessing--,Q},(Q)=>{return this._numProcessing--,Q})}_clearOutcomes(){let A=this._outcomes;return this._outcomes={},Object.entries(A).map(([Q,B])=>{let[Y,J]=Q.split(":");return{reason:Y,category:J,quantity:B}})}_flushOutcomes(){OA&&e.log("Flushing outcomes...");let A=this._clearOutcomes();if(A.length===0){OA&&e.log("No outcomes to send");return}if(!this._dsn){OA&&e.log("No dsn provided, will not send outcomes");return}OA&&e.log("Sending outcomes:",A);let Q=cNA(A,this._options.tunnel&&B1(this._dsn));this.sendEnvelope(Q)}}function G4B(A,Q){let B=`${Q} must return \`null\` or a valid event.`;if(_5(A))return A.then((Y)=>{if(!k5(Y)&&Y!==null)throw bj(B);return Y},(Y)=>{throw bj(`${Q} rejected with ${Y}`)});else if(!k5(A)&&A!==null)throw bj(B);return A}function W4B(A,Q,B,Y){let{beforeSend:J,beforeSendTransaction:C,beforeSendSpan:X}=Q,G=B;if(hd(G)&&J)return J(G,Y);if(aNA(G)){if(X){let W=X(uNA(G));if(!W)NN();else G=QW(B,dNA(W));if(G.spans){let F=[];for(let Z of G.spans){let U=X(Z);if(!U)NN(),F.push(Z);else F.push(U)}G.spans=F}}if(C){if(G.spans){let W=G.spans.length;G.sdkProcessingMetadata={...B.sdkProcessingMetadata,spanCountBeforeProcessing:W}}return C(G,Y)}}return G}function hd(A){return A.type===void 0}function aNA(A){return A.type==="transaction"}function mj(A,Q){if(!Q)return[void 0,void 0];let B=tC(Q),Y=B?XW(B):hE(Q);return[B?i0(B):YG(A,Q),Y]}function oNA(A,Q,B,Y,J){let C={sent_at:new Date().toISOString()};if(B?.sdk)C.sdk={name:B.sdk.name,version:B.sdk.version};if(!!Y&&!!J)C.dsn=B1(J);if(Q)C.trace=Q;let X=F4B(A);return f8(C,[X])}function F4B(A){return[{type:"check_in"},A]}var tNA={trace:1,debug:5,info:9,warn:13,error:17,fatal:21};function Z4B(A){return[{type:"log",item_count:A.length,content_type:"application/vnd.sentry.items.log+json"},{items:A}]}function eNA(A,Q,B,Y){let J={};if(Q?.sdk)J.sdk={name:Q.sdk.name,version:Q.sdk.version};if(!!B&&!!Y)J.dsn=B1(Y);return f8(J,[Z4B(A)])}var $4B=100;AQ._sentryClientToLogBufferMap=new WeakMap;function U4B(A){switch(typeof A){case"number":if(Number.isInteger(A))return{value:A,type:"integer"};return{value:A,type:"double"};case"boolean":return{value:A,type:"boolean"};case"string":return{value:A,type:"string"};default:{let Q="";try{Q=JSON.stringify(A)??""}catch{}return{value:Q,type:"string"}}}}function pZ(A,Q=gA(),B=sQ()){if(!Q){OA&&e.warn("No client available to capture log.");return}let{_experiments:Y,release:J,environment:C}=Q.getOptions(),{enableLogs:X=!1,beforeSendLog:G}=Y??{};if(!X){OA&&e.warn("logging option not enabled, log will not be captured.");return}let[,W]=mj(Q,B),F={...A.attributes};if(J)F["sentry.release"]=J;if(C)F["sentry.environment"]=C;let{sdk:Z}=Q.getSdkMetadata()??{};if(Z)F["sentry.sdk.name"]=Z.name,F["sentry.sdk.version"]=Z.version;let U=A.message;if(vZ(U)){let{__sentry_template_string__:M,__sentry_template_values__:N=[]}=U;F["sentry.message.template"]=M,N.forEach((q,w)=>{F[`sentry.message.parameter.${w}`]=q})}let $=tC(B);if($)F["sentry.trace.parent_span_id"]=$.spanContext().spanId;let E={...A,attributes:F};Q.emit("beforeCaptureLog",E);let K=G?G(E):E;if(!K){Q.recordDroppedEvent("before_send","log_item",1),OA&&e.warn("beforeSendLog returned null, log will not be captured.");return}let{level:I,message:V,attributes:H={},severityNumber:D}=K,L={timestamp:v8(),level:I,body:V,trace_id:W?.trace_id,severity_number:D??tNA[I],attributes:Object.keys(H).reduce((M,N)=>{return M[N]=U4B(H[N]),M},{})},z=ALA(Q);if(z===void 0)AQ._sentryClientToLogBufferMap?.set(Q,[L]);else if(AQ._sentryClientToLogBufferMap?.set(Q,[...z,L]),z.length>=$4B)WW(Q,z);Q.emit("afterCaptureLog",K)}function WW(A,Q){let B=Q??ALA(A)??[];if(B.length===0)return;let Y=A.getOptions(),J=eNA(B,Y._metadata,Y.tunnel,A.getDsn());AQ._sentryClientToLogBufferMap?.set(A,[]),A.emit("flushLogs"),A.sendEnvelope(J)}function ALA(A){return AQ._sentryClientToLogBufferMap?.get(A)}function QLA(A,Q){return A(Q.stack||"",1)}function fd(A,Q){let B={type:Q.name||Q.constructor.name,value:Q.message},Y=QLA(A,Q);if(Y.length)B.stacktrace={frames:Y};return B}function E4B(A){for(let Q in A)if(Object.prototype.hasOwnProperty.call(A,Q)){let B=A[Q];if(B instanceof Error)return B}return}function K4B(A){if("name"in A&&typeof A.name==="string"){let Y=`'${A.name}' captured as exception`;if("message"in A&&typeof A.message==="string")Y+=` with message '${A.message}'`;return Y}else if("message"in A&&typeof A.message==="string")return A.message;let Q=xu(A);if(dDA(A))return`Event \`ErrorEvent\` captured as exception with message \`${A.message}\``;let B=V4B(A);return`${B&&B!=="Object"?`'${B}'`:"Object"} captured as exception with keys: ${Q}`}function V4B(A){try{let Q=Object.getPrototypeOf(A);return Q?Q.constructor.name:void 0}catch(Q){}}function I4B(A,Q,B,Y){if(aC(B))return[B,void 0];if(Q.synthetic=!0,k5(B)){let C=A?.getOptions().normalizeDepth,X={["__serialized__"]:Cd(B,C)},G=E4B(B);if(G)return[G,X];let W=K4B(B),F=Y?.syntheticException||Error(W);return F.message=W,[F,X]}let J=Y?.syntheticException||Error(B);return J.message=`${B}`,[J,void 0]}function BLA(A,Q,B,Y){let C=Y?.data&&Y.data.mechanism||{handled:!0,type:"generic"},[X,G]=I4B(A,C,B,Y),W={exception:{values:[fd(Q,X)]}};if(G)W.extra=G;return bu(W,void 0,void 0),AW(W,C),{...W,event_id:Y?.event_id}}function YLA(A,Q,B="info",Y,J){let C={event_id:Y?.event_id,level:B};if(J&&Y?.syntheticException){let X=QLA(A,Y.syntheticException);if(X.length)C.exception={values:[{value:Q,stacktrace:{frames:X}}]},AW(C,{synthetic:!0})}if(vZ(Q)){let{__sentry_template_string__:X,__sentry_template_values__:G}=Q;return C.logentry={message:X,params:G},C}return C.message=Q,C}var H4B=5000;class uj extends xd{constructor(A){qNA();super(A);if(this._logWeight=0,this._options._experiments?.enableLogs){let Q=this;Q.on("flushLogs",()=>{Q._logWeight=0,clearTimeout(Q._logFlushIdleTimeout)}),Q.on("afterCaptureLog",(B)=>{if(Q._logWeight+=D4B(B),Q._logWeight>=800000)WW(Q);else Q._logFlushIdleTimeout=setTimeout(()=>{WW(Q)},H4B)}),Q.on("flush",()=>{WW(Q)})}}eventFromException(A,Q){let B=BLA(this,this._options.stackParser,A,Q);return B.level="error",J1(B)}eventFromMessage(A,Q="info",B){return J1(YLA(this._options.stackParser,A,Q,B,this._options.attachStacktrace))}captureException(A,Q,B){return JLA(Q),super.captureException(A,Q,B)}captureEvent(A,Q,B){if(!A.type&&A.exception?.values&&A.exception.values.length>0)JLA(Q);return super.captureEvent(A,Q,B)}captureCheckIn(A,Q,B){let Y="checkInId"in A&&A.checkInId?A.checkInId:UY();if(!this._isEnabled())return OA&&e.warn("SDK not enabled, will not capture check-in."),Y;let J=this.getOptions(),{release:C,environment:X,tunnel:G}=J,W={check_in_id:Y,monitor_slug:A.monitorSlug,status:A.status,release:C,environment:X};if("duration"in A)W.duration=A.duration;if(Q)W.monitor_config={schedule:Q.schedule,checkin_margin:Q.checkinMargin,max_runtime:Q.maxRuntime,timezone:Q.timezone,failure_issue_threshold:Q.failureIssueThreshold,recovery_threshold:Q.recoveryThreshold};let[F,Z]=mj(this,B);if(Z)W.contexts={trace:Z};let U=oNA(W,F,this.getSdkMetadata(),G,this.getDsn());return OA&&e.info("Sending checkin:",A.monitorSlug,A.status),this.sendEnvelope(U),Y}_prepareEvent(A,Q,B,Y){if(this._options.platform)A.platform=A.platform||this._options.platform;if(this._options.runtime)A.contexts={...A.contexts,runtime:A.contexts?.runtime||this._options.runtime};if(this._options.serverName)A.server_name=A.server_name||this._options.serverName;return super._prepareEvent(A,Q,B,Y)}}function JLA(A){let Q=RQ().getScopeData().sdkProcessingMetadata.requestSession;if(Q){let B=A?.mechanism?.handled??!0;if(B&&Q.status!=="crashed")Q.status="errored";else if(!B)Q.status="crashed"}}function D4B(A){let Q=0;if(A.message)Q+=A.message.length*2;if(A.attributes)Object.values(A.attributes).forEach((B)=>{if(Array.isArray(B))Q+=B.length*CLA(B[0]);else if(UN(B))Q+=CLA(B);else Q+=100});return Q}function CLA(A){if(typeof A==="string")return A.length*2;else if(typeof A==="number")return 8;else if(typeof A==="boolean")return 4;return 0}function bd(A){sQ().setClient(A)}var md=Symbol.for("SentryBufferFullError");function XLA(A){let Q=[];function B(){return A===void 0||Q.lengthY(G)).then(null,()=>Y(G).then(null,()=>{})),G}function C(X){return new Y1((G,W)=>{let F=Q.length;if(!F)return G(!0);let Z=setTimeout(()=>{if(X&&X>0)G(!1)},X);Q.forEach((U)=>{J1(U).then(()=>{if(!--F)clearTimeout(Z),G(!0)},W)})})}return{$:Q,add:J,drain:C}}function N4B(A,Q=Date.now()){let B=parseInt(`${A}`,10);if(!isNaN(B))return B*1000;let Y=Date.parse(`${A}`);if(!isNaN(Y))return Y-Q;return 60000}function L4B(A,Q){return A[Q]||A.all||0}function GLA(A,Q,B=Date.now()){return L4B(A,Q)>B}function WLA(A,{statusCode:Q,headers:B},Y=Date.now()){let J={...A},C=B?.["x-sentry-rate-limits"],X=B?.["retry-after"];if(C)for(let G of C.trim().split(",")){let[W,F,,,Z]=G.split(":",5),U=parseInt(W,10),$=(!isNaN(U)?U:60)*1000;if(!F)J.all=Y+$;else for(let E of F.split(";"))if(E==="metric_bucket"){if(!Z||Z.split(";").includes("custom"))J[E]=Y+$}else J[E]=Y+$}else if(X)J.all=Y+N4B(X,Y);else if(Q===429)J.all=Y+60000;return J}var q4B=64;function nE(A,Q,B=XLA(A.bufferSize||q4B)){let Y={},J=(X)=>B.drain(X);function C(X){let G=[];if(Sj(X,(U,$)=>{let E=kj($);if(GLA(Y,E))A.recordDroppedEvent("ratelimit_backoff",E);else G.push(U)}),G.length===0)return J1({});let W=f8(X[0],G),F=(U)=>{Sj(W,($,E)=>{A.recordDroppedEvent(U,kj(E))})},Z=()=>Q({body:RN(W)}).then((U)=>{if(U.statusCode!==void 0&&(U.statusCode<200||U.statusCode>=300))OA&&e.warn(`Sentry responded with status code ${U.statusCode} to sent event.`);return Y=WLA(Y,U),U},(U)=>{throw F("network_error"),OA&&e.error("Encountered error running transport request:",U),U});return B.add(Z).then((U)=>U,(U)=>{if(U===md)return OA&&e.error("Skipped sending event because buffer is full."),F("queue_overflow"),J1({});else throw U})}return{send:C,flush:J}}function dj(A,...Q){let B=new String(String.raw(A,...Q));return B.__sentry_template_string__=A.join("\x00").replace(/%/g,"%%").replace(/\0/g,"%s"),B.__sentry_template_values__=Q,B}var ud=dj;function dd(A,Q,B=[Q],Y="npm"){let J=A._metadata||{};if(!J.sdk)J.sdk={name:`sentry.javascript.${Q}`,packages:B.map((C)=>({name:`${Y}:@sentry/${C}`,version:l0})),version:l0};A._metadata=J}function CG(A={}){let Q=gA();if(!_N()||!Q)return{};let B=TJ(),Y=y5(B);if(Y.getTraceData)return Y.getTraceData(A);let J=sQ(),C=A.span||Q1(),X=C?HN(C):M4B(J),G=C?i0(C):YG(Q,J),W=JW(G);if(!VN.test(X))return e.warn("Invalid sentry-trace data. Cannot generate trace data"),{};return{"sentry-trace":X,baggage:W}}function M4B(A){let{traceId:Q,sampled:B,propagationSpanId:Y}=A.getPropagationContext();return CW(Q,Y,B)}function cd(){return Object.entries(CG()).map(([A,Q])=>``).join(` +`)}function FLA(A){let Q=Object.create(null);try{Object.entries(A).forEach(([B,Y])=>{if(typeof Y==="string")Q[B]=Y})}catch{}return Q}function sE(A){let Q=A.headers||{},B=typeof Q.host==="string"?Q.host:void 0,Y=A.protocol||(A.socket?.encrypted?"https":"http"),J=A.url||"",C=z4B({url:J,host:B,protocol:Y}),X=A.body||void 0,G=A.cookies;return{url:C,method:A.method,query_string:ZLA(J),headers:FLA(Q),cookies:G,data:X}}function z4B({url:A,protocol:Q,host:B}){if(A?.startsWith("http"))return A;if(A&&B)return`${Q}://${B}${A}`;return}function ZLA(A){if(!A)return;try{let Q=new URL(A,"http://s.io").search.slice(1);return Q.length?Q:void 0}catch{return}}var R4B=100;function E9(A,Q){let B=gA(),Y=RQ();if(!B)return;let{beforeBreadcrumb:J=null,maxBreadcrumbs:C=R4B}=B.getOptions();if(C<=0)return;let G={timestamp:e6(),...A},W=J?f0(()=>J(G,Q)):G;if(W===null)return;if(B.emit)B.emit("beforeAddBreadcrumb",W,Q);Y.addBreadcrumb(W,C)}var $LA,w4B="FunctionToString",ULA=new WeakMap,j4B=()=>{return{name:w4B,setupOnce(){$LA=Function.prototype.toString;try{Function.prototype.toString=function(...A){let Q=hu(this),B=ULA.has(gA())&&Q!==void 0?Q:this;return $LA.apply(B,A)}}catch{}},setup(A){ULA.set(A,!0)}}},yN=wA(j4B);var O4B=[/^Script error\.?$/,/^Javascript error: Script error\.? on line 0$/,/^ResizeObserver loop completed with undelivered notifications.$/,/^Cannot redefine property: googletag$/,/^Can't find variable: gmo$/,/^undefined is not an object \(evaluating 'a\.[A-Z]'\)$/,`can't redefine non-configurable property "solana"`,"vv().getRestrictions is not a function. (In 'vv().getRestrictions(1,a)', 'vv().getRestrictions' is undefined)","Can't find variable: _AutofillCallbackHandler",/^Non-Error promise rejection captured with value: Object Not Found Matching Id:\d+, MethodName:simulateEvent, ParamCount:\d+$/,/^Java exception was raised during method invocation$/],P4B="EventFilters",lj=wA((A={})=>{let Q;return{name:P4B,setup(B){let Y=B.getOptions();Q=ELA(A,Y)},processEvent(B,Y,J){if(!Q){let C=J.getOptions();Q=ELA(A,C)}return T4B(B,Q)?null:B}}}),gN=wA((A={})=>{return{...lj(A),name:"InboundFilters"}});function ELA(A={},Q={}){return{allowUrls:[...A.allowUrls||[],...Q.allowUrls||[]],denyUrls:[...A.denyUrls||[],...Q.denyUrls||[]],ignoreErrors:[...A.ignoreErrors||[],...Q.ignoreErrors||[],...A.disableErrorDefaults?[]:O4B],ignoreTransactions:[...A.ignoreTransactions||[],...Q.ignoreTransactions||[]]}}function T4B(A,Q){if(!A.type){if(S4B(A,Q.ignoreErrors))return OA&&e.warn(`Event dropped due to being matched by \`ignoreErrors\` option. +Event: ${e7(A)}`),!0;if(g4B(A))return OA&&e.warn(`Event dropped due to not having an error message, error type or stacktrace. +Event: ${e7(A)}`),!0;if(_4B(A,Q.denyUrls))return OA&&e.warn(`Event dropped due to being matched by \`denyUrls\` option. +Event: ${e7(A)}. +Url: ${cj(A)}`),!0;if(!v4B(A,Q.allowUrls))return OA&&e.warn(`Event dropped due to not being matched by \`allowUrls\` option. +Event: ${e7(A)}. +Url: ${cj(A)}`),!0}else if(A.type==="transaction"){if(k4B(A,Q.ignoreTransactions))return OA&&e.warn(`Event dropped due to being matched by \`ignoreTransactions\` option. +Event: ${e7(A)}`),!0}return!1}function S4B(A,Q){if(!Q?.length)return!1;return fj(A).some((B)=>t7(B,Q))}function k4B(A,Q){if(!Q?.length)return!1;let B=A.transaction;return B?t7(B,Q):!1}function _4B(A,Q){if(!Q?.length)return!1;let B=cj(A);return!B?!1:t7(B,Q)}function v4B(A,Q){if(!Q?.length)return!0;let B=cj(A);return!B?!0:t7(B,Q)}function y4B(A=[]){for(let Q=A.length-1;Q>=0;Q--){let B=A[Q];if(B&&B.filename!==""&&B.filename!=="[native code]")return B.filename||null}return null}function cj(A){try{let B=[...A.exception?.values??[]].reverse().find((Y)=>Y.mechanism?.parent_id===void 0&&Y.stacktrace?.frames?.length)?.stacktrace?.frames;return B?y4B(B):null}catch(Q){return OA&&e.error(`Cannot extract url for event ${e7(A)}`),null}}function g4B(A){if(!A.exception?.values?.length)return!1;return!A.message&&!A.exception.values.some((Q)=>Q.stacktrace||Q.type&&Q.type!=="Error"||Q.value)}function ILA(A,Q,B,Y,J,C){if(!J.exception?.values||!C||!t6(C.originalException,Error))return;let X=J.exception.values.length>0?J.exception.values[J.exception.values.length-1]:void 0;if(X)J.exception.values=ld(A,Q,Y,C.originalException,B,J.exception.values,X,0)}function ld(A,Q,B,Y,J,C,X,G){if(C.length>=B+1)return C;let W=[...C];if(t6(Y[J],Error)){KLA(X,G);let F=A(Q,Y[J]),Z=W.length;VLA(F,J,Z,G),W=ld(A,Q,B,Y[J],J,[F,...W],F,Z)}if(Array.isArray(Y.errors))Y.errors.forEach((F,Z)=>{if(t6(F,Error)){KLA(X,G);let U=A(Q,F),$=W.length;VLA(U,`errors[${Z}]`,$,G),W=ld(A,Q,B,F,J,[U,...W],U,$)}});return W}function KLA(A,Q){A.mechanism=A.mechanism||{type:"generic",handled:!0},A.mechanism={...A.mechanism,...A.type==="AggregateError"&&{is_exception_group:!0},exception_id:Q}}function VLA(A,Q,B,Y){A.mechanism=A.mechanism||{type:"generic",handled:!0},A.mechanism={...A.mechanism,type:"chained",source:Q,exception_id:B,parent_id:Y}}var h4B="cause",x4B=5,f4B="LinkedErrors",b4B=(A={})=>{let Q=A.limit||x4B,B=A.key||h4B;return{name:f4B,preprocessEvent(Y,J,C){let X=C.getOptions();ILA(fd,X.stackParser,B,Q,Y,J)}}},hN=wA(b4B);function HLA(A){let Q={},B=0;while(B{let C=A[J],X=Array.isArray(C)?C.join(";"):C;if(J==="Forwarded")return m4B(X);return X?.split(",").map((G)=>G.trim())}).reduce((J,C)=>{if(!C)return J;return J.concat(C)},[]).find((J)=>J!==null&&u4B(J))||null}function m4B(A){if(!A)return null;for(let Q of A.split(";"))if(Q.startsWith("for="))return Q.slice(4);return null}function u4B(A){return/(?:^(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}$)|(?:^(?:(?:[a-fA-F\d]{1,4}:){7}(?:[a-fA-F\d]{1,4}|:)|(?:[a-fA-F\d]{1,4}:){6}(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|:[a-fA-F\d]{1,4}|:)|(?:[a-fA-F\d]{1,4}:){5}(?::(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,2}|:)|(?:[a-fA-F\d]{1,4}:){4}(?:(?::[a-fA-F\d]{1,4}){0,1}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,3}|:)|(?:[a-fA-F\d]{1,4}:){3}(?:(?::[a-fA-F\d]{1,4}){0,2}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,4}|:)|(?:[a-fA-F\d]{1,4}:){2}(?:(?::[a-fA-F\d]{1,4}){0,3}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,5}|:)|(?:[a-fA-F\d]{1,4}:){1}(?:(?::[a-fA-F\d]{1,4}){0,4}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,6}|:)|(?::(?:(?::[a-fA-F\d]{1,4}){0,5}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,7}|:)))(?:%[0-9a-zA-Z]{1,})?$)/.test(A)}var d4B={cookies:!0,data:!0,headers:!0,query_string:!0,url:!0},c4B="RequestData",l4B=(A={})=>{let Q={...d4B,...A.include};return{name:c4B,processEvent(B,Y,J){let{sdkProcessingMetadata:C={}}=B,{normalizedRequest:X,ipAddress:G}=C,W={...Q,ip:Q.ip??J.getOptions().sendDefaultPii};if(X)p4B(B,X,{ipAddress:G},W);return B}}},xN=wA(l4B);function p4B(A,Q,B,Y){if(A.request={...A.request,...i4B(Q,Y)},Y.ip){let J=Q.headers&&DLA(Q.headers)||B.ipAddress;if(J)A.user={...A.user,ip_address:J}}}function i4B(A,Q){let B={},Y={...A.headers};if(Q.headers){if(B.headers=Y,!Q.cookies)delete Y.cookie;if(!Q.ip)pd.forEach((J)=>{delete Y[J]})}if(B.method=A.method,Q.url)B.url=A.url;if(Q.cookies){let J=A.cookies||(Y?.cookie?HLA(Y.cookie):void 0);B.cookies=J||{}}if(Q.query_string)B.query_string=A.query_string;if(Q.data)B.data=A.data;return B}function rE(A){dE("console",A),cE("console",n4B)}function n4B(){if(!("console"in AQ))return;oC.forEach(function(A){if(!(A in AQ.console))return;gu(AQ.console,A,function(Q){return vE[A]=Q,function(...B){lE("console",{args:B,level:A}),vE[A]?.apply(AQ.console,B)}})})}function pj(A){return A==="warn"?"warning":["fatal","error","warning","log","info","debug"].includes(A)?A:"log"}var s4B="CaptureConsole",r4B=(A={})=>{let Q=A.levels||oC,B=A.handled??!0;return{name:s4B,setup(Y){if(!("console"in AQ))return;rE(({args:J,level:C})=>{if(gA()!==Y||!Q.includes(C))return;a4B(J,C,B)})}}},id=wA(r4B);function a4B(A,Q,B){let Y={level:pj(Q),extra:{arguments:A}};h8((J)=>{if(J.addEventProcessor((G)=>{return G.logger="console",AW(G,{handled:B,type:"console"}),G}),Q==="assert"){if(!A[0]){let G=`Assertion failed: ${o7(A.slice(1)," ")||"console.assert"}`;J.setExtra("arguments",A.slice(1)),iE(G,Y)}return}let C=A.find((G)=>G instanceof Error);if(C){jB(C,Y);return}let X=o7(A," ");iE(X,Y)})}var o4B="Dedupe",t4B=()=>{let A;return{name:o4B,processEvent(Q){if(Q.type)return Q;try{if(e4B(Q,A))return OA&&e.warn("Event dropped due to being a duplicate of previously captured event."),null}catch(B){}return A=Q}}},nd=wA(t4B);function e4B(A,Q){if(!Q)return!1;if(AUB(A,Q))return!0;if(QUB(A,Q))return!0;return!1}function AUB(A,Q){let B=A.message,Y=Q.message;if(!B&&!Y)return!1;if(B&&!Y||!B&&Y)return!1;if(B!==Y)return!1;if(!qLA(A,Q))return!1;if(!LLA(A,Q))return!1;return!0}function QUB(A,Q){let B=NLA(Q),Y=NLA(A);if(!B||!Y)return!1;if(B.type!==Y.type||B.value!==Y.value)return!1;if(!qLA(A,Q))return!1;if(!LLA(A,Q))return!1;return!0}function LLA(A,Q){let B=Oj(A),Y=Oj(Q);if(!B&&!Y)return!0;if(B&&!Y||!B&&Y)return!1;if(B=B,Y=Y,Y.length!==B.length)return!1;for(let J=0;J{let{depth:Q=3,captureErrorCause:B=!0}=A;return{name:BUB,processEvent(Y,J,C){let{maxValueLength:X=250}=C.getOptions();return JUB(Y,J,Q,B,X)}}},sd=wA(YUB);function JUB(A,Q={},B,Y,J){if(!Q.originalException||!aC(Q.originalException))return A;let C=Q.originalException.name||Q.originalException.constructor.name,X=CUB(Q.originalException,Y,J);if(X){let G={...A.contexts},W=SJ(X,B);if(k5(W))p0(W,"__sentry_skip_normalization__",!0),G[C]=W;return{...A,contexts:G}}return A}function CUB(A,Q,B){try{let Y=["name","message","stack","line","column","fileName","lineNumber","columnNumber","toJSON"],J={};for(let C of Object.keys(A)){if(Y.indexOf(C)!==-1)continue;let X=A[C];J[C]=aC(X)||typeof X==="string"?n9(`${X}`,B):X}if(Q&&A.cause!==void 0)J.cause=aC(A.cause)?A.cause.toString():A.cause;if(typeof A.toJSON==="function"){let C=A.toJSON();for(let X of Object.keys(C)){let G=C[X];J[X]=aC(G)?G.toString():G}}return J}catch(Y){OA&&e.error("Unable to extract extra data from the Error object:",Y)}return null}function XUB(A,Q){let B=0;for(let Y=A.length-1;Y>=0;Y--){let J=A[Y];if(J===".")A.splice(Y,1);else if(J==="..")A.splice(Y,1),B++;else if(B)A.splice(Y,1),B--}if(Q)for(;B--;B)A.unshift("..");return A}var GUB=/^(\S+:\\|\/?)([\s\S]*?)((?:\.{1,2}|[^/\\]+?|)(\.[^./\\]*|))(?:[/\\]*)$/;function zLA(A){let Q=A.length>1024?`${A.slice(-1024)}`:A,B=GUB.exec(Q);return B?B.slice(1):[]}function rd(...A){let Q="",B=!1;for(let Y=A.length-1;Y>=-1&&!B;Y--){let J=Y>=0?A[Y]:"/";if(!J)continue;Q=`${J}/${Q}`,B=J.charAt(0)==="/"}return Q=XUB(Q.split("/").filter((Y)=>!!Y),!B).join("/"),(B?"/":"")+Q||"."}function MLA(A){let Q=0;for(;Q=0;B--)if(A[B]!=="")break;if(Q>B)return[];return A.slice(Q,B-Q+1)}function ad(A,Q){A=rd(A).slice(1),Q=rd(Q).slice(1);let B=MLA(A.split("/")),Y=MLA(Q.split("/")),J=Math.min(B.length,Y.length),C=J;for(let G=0;G{let Q=A.root,B=A.prefix||"app:///",Y="window"in AQ&&!!AQ.window,J=A.iteratee||FUB({isBrowser:Y,root:Q,prefix:B});function C(G){try{return{...G,exception:{...G.exception,values:G.exception.values.map((W)=>({...W,...W.stacktrace&&{stacktrace:X(W.stacktrace)}}))}}}catch(W){return G}}function X(G){return{...G,frames:G?.frames&&G.frames.map((W)=>J(W))}}return{name:WUB,processEvent(G){let W=G;if(G.exception&&Array.isArray(G.exception.values))W=C(W);return W}}});function FUB({isBrowser:A,root:Q,prefix:B}){return(Y)=>{if(!Y.filename)return Y;let J=/^[a-zA-Z]:\\/.test(Y.filename)||Y.filename.includes("\\")&&!Y.filename.includes("/"),C=/^\//.test(Y.filename);if(A){if(Q){let X=Y.filename;if(X.indexOf(Q)===0)Y.filename=X.replace(Q,B)}}else if(J||C){let X=J?Y.filename.replace(/^[a-zA-Z]:/,"").replace(/\\/g,"/"):Y.filename,G=Q?ad(Q,X):td(X);Y.filename=`${B}${G}`}return Y}}var ZUB=["reauthenticate","signInAnonymously","signInWithOAuth","signInWithIdToken","signInWithOtp","signInWithPassword","signInWithSSO","signOut","signUp","verifyOtp"],$UB=["createUser","deleteUser","listUsers","getUserById","updateUserById","inviteUserByEmail"],UUB={eq:"eq",neq:"neq",gt:"gt",gte:"gte",lt:"lt",lte:"lte",like:"like","like(all)":"likeAllOf","like(any)":"likeAnyOf",ilike:"ilike","ilike(all)":"ilikeAllOf","ilike(any)":"ilikeAnyOf",is:"is",in:"in",cs:"contains",cd:"containedBy",sr:"rangeGt",nxl:"rangeGte",sl:"rangeLt",nxr:"rangeLte",adj:"rangeAdjacent",ov:"overlaps",fts:"",plfts:"plain",phfts:"phrase",wfts:"websearch",not:"not"},wLA=["select","insert","upsert","update","delete"];function ij(A){try{A.__SENTRY_INSTRUMENTED__=!0}catch{}}function nj(A){try{return A.__SENTRY_INSTRUMENTED__}catch{return!1}}function EUB(A,Q={}){switch(A){case"GET":return"select";case"POST":if(Q.Prefer?.includes("resolution="))return"upsert";else return"insert";case"PATCH":return"update";case"DELETE":return"delete";default:return""}}function KUB(A,Q){if(Q===""||Q==="*")return"select(*)";if(A==="select")return`select(${Q})`;if(A==="or"||A.endsWith(".or"))return`${A}${Q}`;let[B,...Y]=Q.split("."),J;if(B?.startsWith("fts"))J="textSearch";else if(B?.startsWith("plfts"))J="textSearch[plain]";else if(B?.startsWith("phfts"))J="textSearch[phrase]";else if(B?.startsWith("wfts"))J="textSearch[websearch]";else J=B&&UUB[B]||"filter";return`${J}(${A}, ${Y.join(".")})`}function RLA(A,Q=!1){return new Proxy(A,{apply(B,Y,J){return b8({name:A.name,attributes:{[DQ]:"auto.db.supabase",[YQ]:`db.auth.${Q?"admin.":""}${A.name}`}},(C)=>{return Reflect.apply(B,Y,J).then((X)=>{if(X&&typeof X==="object"&&"error"in X&&X.error)C.setStatus({code:s9}),jB(X.error,{mechanism:{handled:!1}});else C.setStatus({code:BW});return C.end(),X}).catch((X)=>{throw C.setStatus({code:s9}),C.end(),jB(X,{mechanism:{handled:!1}}),X}).then(...J)})}})}function VUB(A){let Q=A.auth;if(!Q||nj(A.auth))return;for(let B of ZUB){let Y=Q[B];if(!Y)continue;if(typeof A.auth[B]==="function")A.auth[B]=RLA(Y)}for(let B of $UB){let Y=Q.admin[B];if(!Y)continue;if(typeof A.auth.admin[B]==="function")A.auth.admin[B]=RLA(Y,!0)}ij(A.auth)}function IUB(A){if(nj(A.prototype.from))return;A.prototype.from=new Proxy(A.prototype.from,{apply(Q,B,Y){let J=Reflect.apply(Q,B,Y),C=J.constructor;return DUB(C),J}}),ij(A.prototype.from)}function HUB(A){if(nj(A.prototype.then))return;A.prototype.then=new Proxy(A.prototype.then,{apply(Q,B,Y){let J=wLA,C=B,X=EUB(C.method,C.headers);if(!J.includes(X))return Reflect.apply(Q,B,Y);if(!C?.url?.pathname||typeof C.url.pathname!=="string")return Reflect.apply(Q,B,Y);let G=C.url.pathname.split("/"),W=G.length>0?G[G.length-1]:"",F=`from(${W})`,Z=[];for(let[E,K]of C.url.searchParams.entries())Z.push(KUB(E,K));let U=Object.create(null);if(k5(C.body))for(let[E,K]of Object.entries(C.body))U[E]=K;let $={"db.table":W,"db.schema":C.schema,"db.url":C.url.origin,"db.sdk":C.headers["X-Client-Info"],"db.system":"postgresql",[DQ]:"auto.db.supabase",[YQ]:`db.${X}`};if(Z.length)$["db.query"]=Z;if(Object.keys(U).length)$["db.body"]=U;return b8({name:F,attributes:$},(E)=>{return Reflect.apply(Q,B,[]).then((K)=>{if(E){if(K&&typeof K==="object"&&"status"in K)mE(E,K.status||500);E.end()}if(K.error){let H=Error(K.error.message);if(K.error.code)H.code=K.error.code;if(K.error.details)H.details=K.error.details;let D={};if(Z.length)D.query=Z;if(Object.keys(U).length)D.body=U;jB(H,{contexts:{supabase:D}})}let I={type:"supabase",category:`db.${X}`,message:F},V={};if(Z.length)V.query=Z;if(Object.keys(U).length)V.body=U;if(Object.keys(V).length)I.data=V;return E9(I),K},(K)=>{if(E)mE(E,500),E.end();throw K}).then(...Y)})}}),ij(A.prototype.then)}function DUB(A){for(let Q of wLA){if(nj(A.prototype[Q]))continue;A.prototype[Q]=new Proxy(A.prototype[Q],{apply(B,Y,J){let C=Reflect.apply(B,Y,J),X=C.constructor;return OA&&e.log(`Instrumenting ${Q} operation's PostgRESTFilterBuilder`),HUB(X),C}}),ij(A.prototype[Q])}}var sj=(A)=>{if(!A){OA&&e.warn("Supabase integration was not installed because no Supabase client was provided.");return}let Q=A.constructor===Function?A:A.constructor;IUB(Q),VUB(A)},NUB="Supabase",LUB=(A)=>{return{setupOnce(){sj(A)},name:NUB}},Ac=wA((A)=>{return LUB(A.supabaseClient)});var qUB=10,MUB="ZodErrors";function zUB(A){return aC(A)&&A.name==="ZodError"&&Array.isArray(A.issues)}function RUB(A){return{...A,path:"path"in A&&Array.isArray(A.path)?A.path.join("."):void 0,keys:"keys"in A?JSON.stringify(A.keys):void 0,unionErrors:"unionErrors"in A?JSON.stringify(A.unionErrors):void 0}}function wUB(A){return A.map((Q)=>{if(typeof Q==="number")return"";else return Q}).join(".")}function jUB(A){let Q=new Set;for(let Y of A.issues){let J=wUB(Y.path);if(J.length>0)Q.add(J)}let B=Array.from(Q);if(B.length===0){let Y="variable";if(A.issues.length>0){let J=A.issues[0];if(J!==void 0&&"expected"in J&&typeof J.expected==="string")Y=J.expected}return`Failed to validate ${Y}`}return`Failed to validate keys: ${n9(B.join(", "),100)}`}function OUB(A,Q=!1,B,Y){if(!B.exception?.values||!Y.originalException||!zUB(Y.originalException)||Y.originalException.issues.length===0)return B;try{let C=(Q?Y.originalException.issues:Y.originalException.issues.slice(0,A)).map(RUB);if(Q){if(!Array.isArray(Y.attachments))Y.attachments=[];Y.attachments.push({filename:"zod_issues.json",data:JSON.stringify({issues:C})})}return{...B,exception:{...B.exception,values:[{...B.exception.values[0],value:jUB(Y.originalException)},...B.exception.values.slice(1)]},extra:{...B.extra,"zoderror.issues":C.slice(0,A)}}}catch(J){return{...B,extra:{...B.extra,"zoderrors sentry integration parse error":{message:"an exception was thrown while processing ZodError within applyZodErrorsToEvent()",error:J instanceof Error?`${J.name}: ${J.message} +${J.stack}`:"unknown"}}}}}var PUB=(A={})=>{let Q=A.limit??qUB;return{name:MUB,processEvent(B,Y){return OUB(Q,A.saveZodIssuesAsAttachment,B,Y)}}},Qc=wA(PUB);var TUB="Console",fN=wA((A={})=>{let Q=new Set(A.levels||oC);return{name:TUB,setup(B){rE(({args:Y,level:J})=>{if(gA()!==B||!Q.has(J))return;SUB(J,Y)})}}});function SUB(A,Q){let B={category:"console",data:{arguments:Q,logger:"console"},level:pj(A),message:jLA(Q)};if(A==="assert")if(Q[0]===!1){let Y=Q.slice(1);B.message=Y.length>0?`Assertion failed: ${jLA(Y)}`:"Assertion failed",B.data.arguments=Y}else return;E9(B,{input:Q,level:A})}function jLA(A){return"util"in AQ&&typeof AQ.util.format==="function"?AQ.util.format(...A):o7(A," ")}function OLA(A){return!!A&&typeof A._profiler<"u"&&typeof A._profiler.start==="function"&&typeof A._profiler.stop==="function"}function kUB(){let A=gA();if(!A){OA&&e.warn("No Sentry client available, profiling is not started");return}let Q=A.getIntegrationByName("ProfilingIntegration");if(!Q){OA&&e.warn("ProfilingIntegration is not available");return}if(!OLA(Q)){OA&&e.warn("Profiler is not available on profiling integration.");return}Q._profiler.start()}function _UB(){let A=gA();if(!A){OA&&e.warn("No Sentry client available, profiling is not started");return}let Q=A.getIntegrationByName("ProfilingIntegration");if(!Q){OA&&e.warn("ProfilingIntegration is not available");return}if(!OLA(Q)){OA&&e.warn("Profiler is not available on profiling integration.");return}Q._profiler.stop()}var Bc={startProfiler:kUB,stopProfiler:_UB};function FW(A){if(!A)return{};let Q=A.match(/^(([^:/?#]+):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?$/);if(!Q)return{};let B=Q[6]||"",Y=Q[8]||"";return{host:Q[4],path:Q[5],protocol:Q[2],search:B,hash:Y,relative:Q[5]+B+Y}}function aE(A){return A.split(/[?#]/,1)[0]}function ZW(A){let{protocol:Q,host:B,path:Y}=A,J=B?.replace(/^.*@/,"[filtered]:[filtered]@").replace(/(:80)$/,"").replace(/(:443)$/,"")||"";return`${Q?`${Q}://`:""}${J}${Y}`}var PLA={mechanism:{handled:!1,data:{function:"trpcMiddleware"}}};function vUB(A){if(typeof A==="object"&&A!==null&&"ok"in A&&!A.ok&&"error"in A)jB(A.error,PLA)}function Yc(A={}){return async function(Q){let{path:B,type:Y,next:J,rawInput:C,getRawInput:X}=Q,W=gA()?.getOptions(),F={procedure_path:B,procedure_type:Y};if(p0(F,"__sentry_override_normalization_depth__",1+(W?.normalizeDepth??5)),A.attachRpcInput!==void 0?A.attachRpcInput:W?.sendDefaultPii){if(C!==void 0)F.input=SJ(C);if(X!==void 0&&typeof X==="function")try{let Z=await X();F.input=SJ(Z)}catch(Z){}}return BG((Z)=>{return Z.setContext("trpc",F),jN({name:`trpc/${B}`,op:"rpc.server",attributes:{[Q0]:"route",[DQ]:"auto.rpc.trpc"},forceTransaction:!!A.forceTransaction},async(U)=>{try{let $=await J();return vUB($),U.end(),$}catch($){throw jB($,PLA),U.end(),$}})})}}var TLA=new WeakSet;function Xc(A){if(TLA.has(A))return A;if(!yUB(A))return OA&&e.warn("Did not patch MCP server. Interface is incompatible."),A;return A.connect=new Proxy(A.connect,{apply(Q,B,Y){let[J,...C]=Y;if(!J.onclose)J.onclose=()=>{if(J.sessionId)kLA(J.sessionId)};if(!J.onmessage)J.onmessage=(G)=>{if(J.sessionId&&SLA(G))_LA(J.sessionId,G.id)};let X=new Proxy(J,{set(G,W,F){if(W==="onmessage")G[W]=new Proxy(F,{apply(Z,U,$){let[E]=$;if(J.sessionId&&SLA(E))_LA(J.sessionId,E.id);return Reflect.apply(Z,U,$)}});else if(W==="onclose")G[W]=new Proxy(F,{apply(Z,U,$){if(J.sessionId)kLA(J.sessionId);return Reflect.apply(Z,U,$)}});else G[W]=F;return!0}});return Reflect.apply(Q,B,[X,...C])}}),A.resource=new Proxy(A.resource,{apply(Q,B,Y){let J=Y[0],C=Y[Y.length-1];if(typeof J!=="string"||typeof C!=="function")return Q.apply(B,Y);let X=new Proxy(C,{apply(G,W,F){let Z=F.find(Jc);return Cc(Z,()=>{return b8({name:`mcp-server/resource:${J}`,forceTransaction:!0,attributes:{[YQ]:"auto.function.mcp-server",[DQ]:"auto.function.mcp-server",[Q0]:"route","mcp_server.resource":J}},()=>G.apply(W,F))})}});return Reflect.apply(Q,B,[...Y.slice(0,-1),X])}}),A.tool=new Proxy(A.tool,{apply(Q,B,Y){let J=Y[0],C=Y[Y.length-1];if(typeof J!=="string"||typeof C!=="function")return Q.apply(B,Y);let X=new Proxy(C,{apply(G,W,F){let Z=F.find(Jc);return Cc(Z,()=>{return b8({name:`mcp-server/tool:${J}`,forceTransaction:!0,attributes:{[YQ]:"auto.function.mcp-server",[DQ]:"auto.function.mcp-server",[Q0]:"route","mcp_server.tool":J}},()=>G.apply(W,F))})}});return Reflect.apply(Q,B,[...Y.slice(0,-1),X])}}),A.prompt=new Proxy(A.prompt,{apply(Q,B,Y){let J=Y[0],C=Y[Y.length-1];if(typeof J!=="string"||typeof C!=="function")return Q.apply(B,Y);let X=new Proxy(C,{apply(G,W,F){let Z=F.find(Jc);return Cc(Z,()=>{return b8({name:`mcp-server/prompt:${J}`,forceTransaction:!0,attributes:{[YQ]:"auto.function.mcp-server",[DQ]:"auto.function.mcp-server",[Q0]:"route","mcp_server.prompt":J}},()=>G.apply(W,F))})}});return Reflect.apply(Q,B,[...Y.slice(0,-1),X])}}),TLA.add(A),A}function yUB(A){return typeof A==="object"&&A!==null&&"resource"in A&&typeof A.resource==="function"&&"tool"in A&&typeof A.tool==="function"&&"prompt"in A&&typeof A.prompt==="function"&&"connect"in A&&typeof A.connect==="function"}function SLA(A){return typeof A==="object"&&A!==null&&"id"in A&&(typeof A.id==="number"||typeof A.id==="string")}function Jc(A){return typeof A==="object"&&A!==null&&"sessionId"in A&&typeof A.sessionId==="string"&&"requestId"in A&&(typeof A.requestId==="number"||typeof A.requestId==="string")}var rj=new Map;function kLA(A){rj.delete(A)}function _LA(A,Q){let B=Q1();if(B){let Y=rj.get(A)??new Map;Y.set(Q,B),rj.set(A,Y)}}function Cc(A,Q){if(A){let{sessionId:B,requestId:Y}=A,J=rj.get(B);if(!J)return Q();let C=J.get(Y);if(!C)return Q();return J.delete(Y),GW(C,()=>{return Q()})}return Q()}function Gc(A,Q={},B=sQ()){let{message:Y,name:J,email:C,url:X,source:G,associatedEventId:W,tags:F}=A,Z={contexts:{feedback:{contact_email:C,name:J,message:Y,url:X,source:G,associated_event_id:W}},type:"feedback",level:"info",tags:F},U=B?.getClient()||gA();if(U)U.emit("beforeSendFeedback",Z,Q);return B.captureEvent(Z,Q)}var gUB="ConsoleLogs",vLA={[DQ]:"auto.console.logging"},hUB=(A={})=>{let Q=A.levels||oC;return{name:gUB,setup(B){if(!B.getOptions()._experiments?.enableLogs){OA&&e.warn("`_experiments.enableLogs` is not enabled, ConsoleLogs integration disabled");return}rE(({args:Y,level:J})=>{if(gA()!==B||!Q.includes(J))return;if(J==="assert"){if(!Y[0]){let X=Y.slice(1),G=X.length>0?`Assertion failed: ${yLA(X)}`:"Assertion failed";pZ({level:"error",message:G,attributes:vLA})}return}let C=J==="log";pZ({level:C?"info":J,message:yLA(Y),severityNumber:C?10:void 0,attributes:vLA})})}}},Wc=wA(hUB);function yLA(A){return"util"in AQ&&typeof AQ.util.format==="function"?AQ.util.format(...A):o7(A," ")}function bN(A){if(A===void 0)return;else if(A>=400&&A<500)return"warning";else if(A>=500)return"error";else return}function hLA(A,Q=!1){return!(Q||A&&!A.startsWith("/")&&!A.match(/^[A-Z]:/)&&!A.startsWith(".")&&!A.match(/^[a-zA-Z]([a-zA-Z0-9.\-+])*:\/\//))&&A!==void 0&&!A.includes("node_modules/")}function xLA(A){let Q=/^\s*[-]{4,}$/,B=/at (?:async )?(?:(.+?)\s+\()?(?:(.+):(\d+):(\d+)?|([^)]+))\)?/;return(Y)=>{let J=Y.match(B);if(J){let C,X,G,W,F;if(J[1]){G=J[1];let $=G.lastIndexOf(".");if(G[$-1]===".")$--;if($>0){C=G.slice(0,$),X=G.slice($+1);let E=C.indexOf(".Module");if(E>0)G=G.slice(E+1),C=C.slice(0,E)}W=void 0}if(X)W=C,F=X;if(X==="")F=void 0,G=void 0;if(G===void 0)F=F||ou,G=W?`${W}.${F}`:F;let Z=J[2]?.startsWith("file://")?J[2].slice(7):J[2],U=J[5]==="native";if(Z?.match(/\/[A-Z]:/))Z=Z.slice(1);if(!Z&&J[5]&&!U)Z=J[5];return{filename:Z?decodeURI(Z):void 0,module:A?A(Z):void 0,function:G,lineno:gLA(J[3]),colno:gLA(J[4]),in_app:hLA(Z||"",U)}}if(Y.match(Q))return{filename:Y};return}}function Fc(A){return[90,xLA(A)]}function gLA(A){return parseInt(A||"",10)||void 0}class m8{constructor(A){this._maxSize=A,this._cache=new Map}get size(){return this._cache.size}get(A){let Q=this._cache.get(A);if(Q===void 0)return;return this._cache.delete(A),this._cache.set(A,Q),Q}set(A,Q){if(this._cache.size>=this._maxSize)this._cache.delete(this._cache.keys().next().value);this._cache.set(A,Q)}remove(A){let Q=this._cache.get(A);if(Q)this._cache.delete(A);return Q}clear(){this._cache.clear()}keys(){return Array.from(this._cache.keys())}values(){let A=[];return this._cache.forEach((Q)=>A.push(Q)),A}}function XG(A,...Q){let[B,Y,J]=Q;if(Array.isArray(Y)){let C={...J};C["sentry.message.template"]=B,Y.forEach((G,W)=>{C[`sentry.message.parameter.${W}`]=G});let X=xUB(B,...Y);pZ({level:A,message:X,attributes:C})}else pZ({level:A,message:B,attributes:Y})}function fUB(...A){XG("trace",...A)}function bUB(...A){XG("debug",...A)}function mUB(...A){XG("info",...A)}function uUB(...A){XG("warn",...A)}function dUB(...A){XG("error",...A)}function cUB(...A){XG("fatal",...A)}var G4Q=qA(yA(),1),W4Q=qA(wiA(),1);var Bi=qA(NB(),1),YP={};function EQ(A,Q,B){if(B)return epB(A,Q,B);return tpB(A,Q)}function tpB(A,Q){return Object.assign((B)=>{let Y=YP[A];if(Y){if(B)Y.setConfig(B);return Y}let J=Q(B);return YP[A]=J,Bi.registerInstrumentations({instrumentations:[J]}),J},{id:A})}function epB(A,Q,B){return Object.assign((Y)=>{let J=B(Y),C=YP[A];if(C)return C.setConfig(J),C;let X=new Q(J);return YP[A]=X,Bi.registerInstrumentations({instrumentations:[X]}),X},{id:A})}function VW(A){let Q=!1,B=[];if(!AiB(A))Q=!0;else{let J=A._wrap;A._wrap=(...C)=>{return Q=!0,B.forEach((X)=>X()),B=[],J(...C)}}return(J)=>{if(Q)J();else B.push(J)}}function AiB(A){return typeof A._wrap==="function"}function s0(A,Q){A.setAttribute(DQ,Q)}function jL(A){let Q=A.protocol||"",B=A.hostname||A.host||"",Y=!A.port||A.port===80||A.port===443||/^(.*):(\d+)$/.test(B)?"":`:${A.port}`,J=A.path?A.path:"/";return`${Q}//${B}${Y}${J}`}var OK=qA(yA(),1),zP=qA(MB(),1),_L=qA(NB(),1);import{subscribe as qP,unsubscribe as MP}from"node:diagnostics_channel";var oQ=qA(dB(),1);var t9=qA(yA(),1),bA=qA(yA(),1),r5=qA(MB(),1),DW=qA(_i(),1),mi="sentry.parentIsRemote",wK="sentry.graphql.operation";function ui(A){if("parentSpanId"in A)return A.parentSpanId;else if("parentSpanContext"in A)return A.parentSpanContext?.spanId;return}function di(A){let Q=A;return!!Q.attributes&&typeof Q.attributes==="object"}function VH0(A){return typeof A.kind==="number"}function IH0(A){return!!A.status}function g$Q(A){return!!A.name}function HH0(A){if(!di(A))return{};let Q=A.attributes[oQ.ATTR_URL_FULL]||A.attributes[oQ.SEMATTRS_HTTP_URL],B={url:Q,"http.method":A.attributes[oQ.ATTR_HTTP_REQUEST_METHOD]||A.attributes[oQ.SEMATTRS_HTTP_METHOD]};if(!B["http.method"]&&B.url)B["http.method"]="GET";try{if(typeof Q==="string"){let Y=FW(Q);if(B.url=ZW(Y),Y.search)B["http.query"]=Y.search;if(Y.hash)B["http.fragment"]=Y.hash}}catch{}return B}function DH0(A){if(VH0(A))return A.kind;return bA.SpanKind.INTERNAL}var vi="sentry-trace",yi="baggage",ci="sentry.dsc",li="sentry.sampled_not_recording",h$Q="sentry.url",NH0="sentry.sample_rand",LH0="sentry.sample_rate",x$Q=bA.createContextKey("sentry_scopes"),gi=bA.createContextKey("sentry_fork_isolation_scope"),hi=bA.createContextKey("sentry_fork_set_scope"),xi=bA.createContextKey("sentry_fork_set_isolation_scope"),f$Q="_scopeContext";function jK(A){return A.getValue(x$Q)}function b$Q(A,Q){return A.setValue(x$Q,Q)}function qH0(A,Q){p0(A,f$Q,Q)}function pi(A){return A[f$Q]}function RK(A){let{traceFlags:Q,traceState:B}=A,Y=B?B.get(li)==="1":!1;if(Q===bA.TraceFlags.SAMPLED)return!0;if(Y)return!1;let J=B?B.get(ci):void 0,C=J?YW(J):void 0;if(C?.sampled==="true")return!0;if(C?.sampled==="false")return!1;return}function m$Q(A,Q,B){let Y=Q[oQ.ATTR_HTTP_REQUEST_METHOD]||Q[oQ.SEMATTRS_HTTP_METHOD];if(Y)return zH0({attributes:Q,name:A,kind:B},Y);let J=Q[oQ.SEMATTRS_DB_SYSTEM],C=typeof Q[YQ]==="string"&&Q[YQ].startsWith("cache.");if(J&&!C)return MH0({attributes:Q,name:A});let X=Q[Q0]==="custom"?"custom":"route";if(Q[oQ.SEMATTRS_RPC_SERVICE])return{...TL(A,Q,"route"),op:"rpc"};if(Q[oQ.SEMATTRS_MESSAGING_SYSTEM])return{...TL(A,Q,X),op:"message"};let F=Q[oQ.SEMATTRS_FAAS_TRIGGER];if(F)return{...TL(A,Q,X),op:F.toString()};return{op:void 0,description:A,source:"custom"}}function u$Q(A){let Q=di(A)?A.attributes:{},B=g$Q(A)?A.name:"",Y=DH0(A);return m$Q(B,Q,Y)}function MH0({attributes:A,name:Q}){let B=A[eC];if(typeof B==="string")return{op:"db",description:B,source:A[Q0]||"custom"};if(A[Q0]==="custom")return{op:"db",description:Q,source:"custom"};let Y=A[oQ.SEMATTRS_DB_STATEMENT];return{op:"db",description:Y?Y.toString():Q,source:"task"}}function zH0({name:A,kind:Q,attributes:B},Y){let J=["http"];switch(Q){case bA.SpanKind.CLIENT:J.push("client");break;case bA.SpanKind.SERVER:J.push("server");break}if(B["sentry.http.prefetch"])J.push("prefetch");let{urlPath:C,url:X,query:G,fragment:W,hasRoute:F}=wH0(B,Q);if(!C)return{...TL(A,B),op:J.join(".")};let Z=B[wK],U=`${Y} ${C}`,$=Z?`${U} (${RH0(Z)})`:U,E=F||C==="/"?"route":"url",K={};if(X)K.url=X;if(G)K["http.query"]=G;if(W)K["http.fragment"]=W;let I=Q===bA.SpanKind.CLIENT||Q===bA.SpanKind.SERVER,H=!`${B[DQ]||"manual"}`.startsWith("auto"),D=B[Q0]==="custom",L=B[eC],z=!D&&L==null&&(I||!H),{description:M,source:N}=z?{description:$,source:E}:TL(A,B);return{op:J.join("."),description:M,source:N,data:K}}function RH0(A){if(Array.isArray(A)){let Q=A.slice().sort();if(Q.length<=5)return Q.join(", ");else return`${Q.slice(0,5).join(", ")}, +${Q.length-5}`}return`${A}`}function wH0(A,Q){let B=A[oQ.SEMATTRS_HTTP_TARGET],Y=A[oQ.SEMATTRS_HTTP_URL]||A[oQ.ATTR_URL_FULL],J=A[oQ.ATTR_HTTP_ROUTE],C=typeof Y==="string"?FW(Y):void 0,X=C?ZW(C):void 0,G=C?.search||void 0,W=C?.hash||void 0;if(typeof J==="string")return{urlPath:J,url:X,query:G,fragment:W,hasRoute:!0};if(Q===bA.SpanKind.SERVER&&typeof B==="string")return{urlPath:aE(B),url:X,query:G,fragment:W,hasRoute:!1};if(C)return{urlPath:X,url:X,query:G,fragment:W,hasRoute:!1};if(typeof B==="string")return{urlPath:aE(B),url:X,query:G,fragment:W,hasRoute:!1};return{urlPath:void 0,url:X,query:G,fragment:W,hasRoute:!1}}function TL(A,Q,B="custom"){let Y=Q[Q0]||B,J=Q[eC];if(J&&typeof J==="string")return{description:J,source:Y};return{description:A,source:Y}}function d$Q(A){A.on("createDsc",(Q,B)=>{if(!B)return;let C=eA(B).data[Q0],{description:X}=g$Q(B)?u$Q(B):{description:void 0};if(C!=="url"&&X)Q.transaction=X;if(U9()){let G=RK(B.spanContext());Q.sampled=G==null?void 0:String(G)}})}function c$Q(){return bA.trace.getActiveSpan()}var HX=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__;function l$Q({dsc:A,sampled:Q}){let B=A?JW(A):void 0,Y=new r5.TraceState,J=B?Y.set(ci,B):Y;return Q===!1?J.set(li,"1"):J}var p$Q=new Set;function i$Q(){return Array.from(p$Q)}function NP(A){p$Q.add(A)}class ii extends r5.W3CBaggagePropagator{constructor(){super();NP("SentryPropagator"),this._urlMatchesTargetsMap=new m8(100)}inject(A,Q,B){if(r5.isTracingSuppressed(A)){HX&&e.log("[Tracing] Not injecting trace data for url because tracing is suppressed.");return}let Y=bA.trace.getSpan(A),J=Y&&PH0(Y),C=gA()?.getOptions()?.tracePropagationTargets;if(!SL(J,C,this._urlMatchesTargetsMap)){HX&&e.log("[Tracing] Not injecting trace data for url because it does not match tracePropagationTargets:",J);return}let X=OH0(Q),G=bA.propagation.getBaggage(A)||bA.propagation.createBaggage({}),{dynamicSamplingContext:W,traceId:F,spanId:Z,sampled:U}=n$Q(A);if(X){let $=gZ(X);if($)Object.entries($).forEach(([E,K])=>{G=G.setEntry(E,{value:K})})}if(W)G=Object.entries(W).reduce(($,[E,K])=>{if(K)return $.setEntry(`${KN}${E}`,{value:K});return $},G);if(F&&F!==bA.INVALID_TRACEID)B.set(Q,vi,CW(F,Z,U));super.inject(bA.propagation.setBaggage(A,G),Q,B)}extract(A,Q,B){let Y=B.get(Q,vi),J=B.get(Q,yi),C=Y?Array.isArray(Y)?Y[0]:Y:void 0;return r$Q(s$Q(A,{sentryTrace:C,baggage:J}))}fields(){return[vi,yi]}}var _$Q="[Tracing] Not injecting trace data for url because it does not match tracePropagationTargets:";function SL(A,Q,B){if(typeof A!=="string"||!Q)return!0;let Y=B?.get(A);if(Y!==void 0)return HX&&!Y&&e.log(_$Q,A),Y;let J=t7(A,Q);return B?.set(A,J),HX&&!J&&e.log(_$Q,A),J}function n$Q(A){let Q=bA.trace.getSpan(A);if(Q?.spanContext().isRemote){let X=Q.spanContext();return{dynamicSamplingContext:i0(Q),traceId:X.traceId,spanId:void 0,sampled:RK(X)}}if(Q){let X=Q.spanContext();return{dynamicSamplingContext:i0(Q),traceId:X.traceId,spanId:X.spanId,sampled:RK(X)}}let B=jK(A)?.scope||sQ(),Y=gA(),J=B.getPropagationContext();return{dynamicSamplingContext:Y?YG(Y,B):void 0,traceId:J.traceId,spanId:J.propagationSpanId,sampled:J.sampled}}function s$Q(A,{sentryTrace:Q,baggage:B}){let Y=hZ(Q,B),{traceId:J,parentSpanId:C,sampled:X,dsc:G}=Y;if(!C)return A;let W=TH0({traceId:J,spanId:C,sampled:X,dsc:G});return bA.trace.setSpanContext(A,W)}function jH0(A,Q,B){let Y=r$Q(s$Q(A,Q));return bA.context.with(Y,B)}function r$Q(A){let Q=jK(A),B={scope:Q?Q.scope:sQ().clone(),isolationScope:Q?Q.isolationScope:RQ()};return b$Q(A,B)}function OH0(A){try{let Q=A[yi];return Array.isArray(Q)?Q.join(","):Q}catch{return}}function PH0(A){let Q=eA(A).data,B=Q[oQ.SEMATTRS_HTTP_URL]||Q[oQ.ATTR_URL_FULL];if(typeof B==="string")return B;let Y=A.spanContext().traceState?.get(h$Q);if(Y)return Y;return}function TH0({spanId:A,traceId:Q,sampled:B,dsc:Y}){let J=l$Q({dsc:Y,sampled:B});return{traceId:Q,spanId:A,isRemote:!0,traceFlags:B?bA.TraceFlags.SAMPLED:bA.TraceFlags.NONE,traceState:J}}function SH0(A,Q){let B=ni(),{name:Y,parentSpan:J}=A;return ai(J)(()=>{let X=ri(A.scope,A.forceTransaction),W=A.onlyIfParent&&!bA.trace.getSpan(X)?r5.suppressTracing(X):X,F=si(A);return B.startActiveSpan(Y,F,W,(Z)=>{return mZ(()=>Q(Z),()=>{if(eA(Z).status===void 0)Z.setStatus({code:bA.SpanStatusCode.ERROR})},()=>Z.end())})})}function kH0(A,Q){let B=ni(),{name:Y,parentSpan:J}=A;return ai(J)(()=>{let X=ri(A.scope,A.forceTransaction),W=A.onlyIfParent&&!bA.trace.getSpan(X)?r5.suppressTracing(X):X,F=si(A);return B.startActiveSpan(Y,F,W,(Z)=>{return mZ(()=>Q(Z,()=>Z.end()),()=>{if(eA(Z).status===void 0)Z.setStatus({code:bA.SpanStatusCode.ERROR})})})})}function _H0(A){let Q=ni(),{name:B,parentSpan:Y}=A;return ai(Y)(()=>{let C=ri(A.scope,A.forceTransaction),G=A.onlyIfParent&&!bA.trace.getSpan(C)?r5.suppressTracing(C):C,W=si(A);return Q.startSpan(B,W,G)})}function a$Q(A,Q){let B=A?bA.trace.setSpan(bA.context.active(),A):bA.trace.deleteSpan(bA.context.active());return bA.context.with(B,()=>Q(sQ()))}function ni(){return gA()?.tracer||bA.trace.getTracer("@sentry/opentelemetry",l0)}function si(A){let{startTime:Q,attributes:B,kind:Y,op:J,links:C}=A,X=typeof Q==="number"?vH0(Q):Q;return{attributes:J?{[YQ]:J,...B}:B,kind:Y,links:C,startTime:X}}function vH0(A){return A<9999999999?A*1000:A}function ri(A,Q){let B=yH0(A),Y=bA.trace.getSpan(B);if(!Y)return B;if(!Q)return B;let J=bA.trace.deleteSpan(B),{spanId:C,traceId:X}=Y.spanContext(),G=RK(Y.spanContext()),W=K0(Y),F=i0(W),Z=l$Q({dsc:F,sampled:G}),U={traceId:X,spanId:C,isRemote:!0,traceFlags:G?bA.TraceFlags.SAMPLED:bA.TraceFlags.NONE,traceState:Z};return bA.trace.setSpanContext(J,U)}function yH0(A){if(A){let Q=pi(A);if(Q)return Q}return bA.context.active()}function gH0(A,Q){return jH0(bA.context.active(),A,Q)}function o$Q(A,Q){let B=pi(Q),Y=B&&bA.trace.getSpan(B),J=Y?XW(Y):hE(Q);return[Y?i0(Y):YG(A,Q),J]}function ai(A){return A!==void 0?(Q)=>{return a$Q(A,Q)}:(Q)=>Q()}function hH0(A){let Q=r5.suppressTracing(bA.context.active());return bA.context.with(Q,A)}function t$Q(A){A.on("preprocessEvent",(Q)=>{let B=c$Q();if(!B||Q.type==="transaction")return;Q.contexts={trace:XW(B),...Q.contexts};let Y=K0(B);return Q.sdkProcessingMetadata={dynamicSamplingContext:i0(Y),...Q.sdkProcessingMetadata},Q})}function xH0({span:A}={}){let Q=t9.context.active();if(A){let{scope:X}=A1(A);Q=X&&pi(X)||t9.trace.setSpan(t9.context.active(),A)}let{traceId:B,spanId:Y,sampled:J,dynamicSamplingContext:C}=n$Q(Q);return{"sentry-trace":CW(B,Y,J),baggage:JW(C)}}function LP(){function A(){let G=t9.context.active(),W=jK(G);if(W)return W;return{scope:yE(),isolationScope:v5()}}function Q(G){let W=t9.context.active();return t9.context.with(W,()=>{return G(C())})}function B(G,W){let F=t9.context.active();return t9.context.with(F.setValue(hi,G),()=>{return W(G)})}function Y(G){let W=t9.context.active();return t9.context.with(W.setValue(gi,!0),()=>{return G(X())})}function J(G,W){let F=t9.context.active();return t9.context.with(F.setValue(xi,G),()=>{return W(X())})}function C(){return A().scope}function X(){return A().isolationScope}du({withScope:Q,withSetScope:B,withSetIsolationScope:J,withIsolationScope:Y,getCurrentScope:C,getIsolationScope:X,startSpan:SH0,startSpanManual:kH0,startInactiveSpan:_H0,getActiveSpan:c$Q,suppressTracing:hH0,getTraceData:xH0,continueTrace:gH0,withActiveSpan:a$Q})}function e$Q(A){class Q extends A{constructor(...B){super(...B);NP("SentryContextManager")}with(B,Y,J,...C){let X=jK(B),G=X?.scope||sQ(),W=X?.isolationScope||RQ(),F=B.getValue(gi)===!0,Z=B.getValue(hi),U=B.getValue(xi),$=Z||G.clone(),E=U||(F?W.clone():W),V=b$Q(B,{scope:$,isolationScope:E}).deleteValue(gi).deleteValue(hi).deleteValue(xi);return qH0($,V),super.with(V,Y,J,...C)}}return Q}function fH0(A){let Q=new Map;for(let B of A)bH0(Q,B);return Array.from(Q,function([B,Y]){return Y})}function A4Q(A){return A.attributes[mi]!==!0?ui(A):void 0}function bH0(A,Q){let B=Q.spanContext().spanId,Y=A4Q(Q);if(!Y){fi(A,{id:B,span:Q,children:[]});return}let J=mH0(A,Y),C=fi(A,{id:B,span:Q,parentNode:J,children:[]});J.children.push(C)}function mH0(A,Q){let B=A.get(Q);if(B)return B;return fi(A,{id:Q,children:[]})}function fi(A,Q){let B=A.get(Q.id);if(B?.span)return B;if(B&&!B.span)return B.span=Q.span,B.parentNode=Q.parentNode,B;return A.set(Q.id,Q),Q}var Q4Q={"1":"cancelled","2":"unknown_error","3":"invalid_argument","4":"deadline_exceeded","5":"not_found","6":"already_exists","7":"permission_denied","8":"resource_exhausted","9":"failed_precondition","10":"aborted","11":"out_of_range","12":"unimplemented","13":"internal_error","14":"unavailable","15":"data_loss","16":"unauthenticated"},uH0=(A)=>{return Object.values(Q4Q).includes(A)};function B4Q(A){let Q=di(A)?A.attributes:{},B=IH0(A)?A.status:void 0;if(B){if(B.code===bA.SpanStatusCode.OK)return{code:BW};else if(B.code===bA.SpanStatusCode.ERROR){if(typeof B.message>"u"){let J=v$Q(Q);if(J)return J}if(B.message&&uH0(B.message))return{code:s9,message:B.message};else return{code:s9,message:"unknown_error"}}}let Y=v$Q(Q);if(Y)return Y;if(B?.code===bA.SpanStatusCode.UNSET)return{code:BW};else return{code:s9,message:"unknown_error"}}function v$Q(A){let Q=A[oQ.ATTR_HTTP_RESPONSE_STATUS_CODE]||A[oQ.SEMATTRS_HTTP_STATUS_CODE],B=A[oQ.SEMATTRS_RPC_GRPC_STATUS_CODE],Y=typeof Q==="number"?Q:typeof Q==="string"?parseInt(Q):void 0;if(typeof Y==="number")return bE(Y);if(typeof B==="string")return{code:s9,message:Q4Q[B]||"unknown_error"};return}var y$Q=1000,dH0=300;class Y4Q{constructor(A){this._finishedSpanBucketSize=A?.timeout||dH0,this._finishedSpanBuckets=Array(this._finishedSpanBucketSize).fill(void 0),this._lastCleanupTimestampInS=Math.floor(Date.now()/1000),this._spansToBucketEntry=new WeakMap}export(A){let Q=Math.floor(Date.now()/1000);if(this._lastCleanupTimestampInS!==Q){let J=0;if(this._finishedSpanBuckets.forEach((C,X)=>{if(C&&C.timestampInS<=Q-this._finishedSpanBucketSize)J+=C.spans.size,this._finishedSpanBuckets[X]=void 0}),J>0)HX&&e.log(`SpanExporter dropped ${J} spans because they were pending for more than ${this._finishedSpanBucketSize} seconds.`);this._lastCleanupTimestampInS=Q}let B=Q%this._finishedSpanBucketSize,Y=this._finishedSpanBuckets[B]||{timestampInS:Q,spans:new Set};if(this._finishedSpanBuckets[B]=Y,Y.spans.add(A),this._spansToBucketEntry.set(A,Y),!A4Q(A))this._clearTimeout(),this._flushTimeout=setTimeout(()=>{this.flush()},1)}flush(){this._clearTimeout();let A=[];this._finishedSpanBuckets.forEach((J)=>{if(J)A.push(...J.spans)});let Q=cH0(A),B=Q.size,Y=A.length-B;HX&&e.log(`SpanExporter exported ${B} spans, ${Y} spans are waiting for their parent spans to finish`),Q.forEach((J)=>{let C=this._spansToBucketEntry.get(J);if(C)C.spans.delete(J)})}clear(){this._finishedSpanBuckets=this._finishedSpanBuckets.fill(void 0),this._clearTimeout()}_clearTimeout(){if(this._flushTimeout)clearTimeout(this._flushTimeout),this._flushTimeout=void 0}}function cH0(A){let Q=fH0(A),B=new Set;return pH0(Q).forEach((J)=>{let C=J.span;B.add(C);let X=nH0(C),G=X.spans||[];J.children.forEach((F)=>{bi(F,G,B)}),X.spans=G.length>y$Q?G.sort((F,Z)=>F.start_timestamp-Z.start_timestamp).slice(0,y$Q):G;let W=uZ(C.events);if(W)X.measurements=W;kN(X)}),B}function lH0(A){return!!A.span&&!A.parentNode}function pH0(A){return A.filter(lH0)}function iH0(A){let Q=A.attributes,B=Q[DQ],Y=Q[YQ],J=Q[Q0];return{origin:B,op:Y,source:J}}function nH0(A){let{op:Q,description:B,data:Y,origin:J="manual",source:C}=J4Q(A),X=A1(A),G=A.attributes[g5],W={[Q0]:C,[g5]:G,[YQ]:Q,[DQ]:J,...Y,...C4Q(A.attributes)},{links:F}=A,{traceId:Z,spanId:U}=A.spanContext(),$=ui(A),E=B4Q(A),K={parent_span_id:$,span_id:U,trace_id:Z,data:W,origin:J,op:Q,status:fZ(E),links:xZ(F)},I=W[oQ.ATTR_HTTP_RESPONSE_STATUS_CODE],V=typeof I==="number"?{response:{status_code:I}}:void 0;return{contexts:{trace:K,otel:{resource:A.resource.attributes},...V},spans:[],start_timestamp:r9(A.startTime),timestamp:r9(A.endTime),transaction:B,type:"transaction",sdkProcessingMetadata:{capturedSpanScope:X.scope,capturedSpanIsolationScope:X.isolationScope,sampleRate:G,dynamicSamplingContext:i0(A)},...C&&{transaction_info:{source:C}}}}function bi(A,Q,B){let Y=A.span;if(Y)B.add(Y);if(!Y){A.children.forEach((L)=>{bi(L,Q,B)});return}let C=Y.spanContext().spanId,X=Y.spanContext().traceId,G=ui(Y),{attributes:W,startTime:F,endTime:Z,links:U}=Y,{op:$,description:E,data:K,origin:I="manual"}=J4Q(Y),V={[DQ]:I,[YQ]:$,...C4Q(W),...K},H=B4Q(Y),D={span_id:C,trace_id:X,data:V,description:E,parent_span_id:G,start_timestamp:r9(F),timestamp:r9(Z)||void 0,status:fZ(H),op:$,origin:I,measurements:uZ(Y.events),links:xZ(U)};Q.push(D),A.children.forEach((L)=>{bi(L,Q,B)})}function J4Q(A){let{op:Q,source:B,origin:Y}=iH0(A),{op:J,description:C,source:X,data:G}=u$Q(A),W=Q||J,F=B||X,Z={...G,...sH0(A)};return{op:W,description:C,source:F,origin:Y,data:Z}}function C4Q(A){let Q={...A};return delete Q[g5],delete Q[mi],delete Q[eC],Q}function sH0(A){let Q=A.attributes,B={};if(A.kind!==bA.SpanKind.INTERNAL)B["otel.kind"]=bA.SpanKind[A.kind];let Y=Q[oQ.SEMATTRS_HTTP_STATUS_CODE];if(Y)B[oQ.ATTR_HTTP_RESPONSE_STATUS_CODE]=Y;let J=HH0(A);if(J.url)B.url=J.url;if(J["http.query"])B["http.query"]=J["http.query"].slice(1);if(J["http.fragment"])B["http.fragment"]=J["http.fragment"].slice(1);return B}function rH0(A,Q){let B=bA.trace.getSpan(Q),Y=jK(Q);if(B&&!B.spanContext().isRemote)uE(B,A);if(B?.spanContext().isRemote)A.setAttribute(mi,!0);if(Q===bA.ROOT_CONTEXT)Y={scope:yE(),isolationScope:v5()};if(Y)EN(A,Y.scope,Y.isolationScope);qN(A),gA()?.emit("spanStart",A)}function aH0(A){MN(A),gA()?.emit("spanEnd",A)}class oi{constructor(A){NP("SentrySpanProcessor"),this._exporter=new Y4Q(A)}async forceFlush(){this._exporter.flush()}async shutdown(){this._exporter.clear()}onStart(A,Q){rH0(A,Q)}onEnd(A){aH0(A),this._exporter.export(A)}}class ti{constructor(A){this._client=A,NP("SentrySampler")}shouldSample(A,Q,B,Y,J,C){let X=this._client.getOptions(),G=eH0(A),W=G?.spanContext();if(!U9(X))return zK({decision:void 0,context:A,spanAttributes:J});let F=J[oQ.SEMATTRS_HTTP_METHOD]||J[oQ.ATTR_HTTP_REQUEST_METHOD];if(Y===bA.SpanKind.CLIENT&&F&&(!G||W?.isRemote))return zK({decision:void 0,context:A,spanAttributes:J});let Z=G?oH0(G,Q,B):void 0;if(!(!G||W?.isRemote))return zK({decision:Z?DW.SamplingDecision.RECORD_AND_SAMPLED:DW.SamplingDecision.NOT_RECORD,context:A,spanAttributes:J});let{description:$,data:E,op:K}=m$Q(B,J,Y),I={...E,...J};if(K)I[YQ]=K;let V={decision:!0};if(this._client.emit("beforeSampling",{spanAttributes:I,spanName:$,parentSampled:Z,parentContext:W},V),!V.decision)return zK({decision:void 0,context:A,spanAttributes:J});let{isolationScope:H}=jK(A)??{},D=W?.traceState?W.traceState.get(ci):void 0,L=D?YW(D):void 0,z=x8(L?.sample_rand)??Math.random(),[M,N,q]=zN(X,{name:$,attributes:I,normalizedRequest:H?.getScopeData().sdkProcessingMetadata.normalizedRequest,parentSampled:Z,parentSampleRate:x8(L?.sample_rate)},z),w=`${F}`.toUpperCase();if(w==="OPTIONS"||w==="HEAD")return HX&&e.log(`[Tracing] Not sampling span because HTTP method is '${w}' for ${B}`),zK({decision:DW.SamplingDecision.NOT_RECORD,context:A,spanAttributes:J,sampleRand:z,downstreamTraceSampleRate:0});if(!M&&Z===void 0)HX&&e.log("[Tracing] Discarding root span because its trace was not chosen to be sampled."),this._client.recordDroppedEvent("sample_rate","transaction");return{...zK({decision:M?DW.SamplingDecision.RECORD_AND_SAMPLED:DW.SamplingDecision.NOT_RECORD,context:A,spanAttributes:J,sampleRand:z,downstreamTraceSampleRate:q?N:void 0}),attributes:{[g5]:q?N:void 0}}}toString(){return"SentrySampler"}}function oH0(A,Q,B){let Y=A.spanContext();if(bA.isSpanContextValid(Y)&&Y.traceId===Q){if(Y.isRemote){let C=RK(A.spanContext());return HX&&e.log(`[Tracing] Inheriting remote parent's sampled decision for ${B}: ${C}`),C}let J=RK(Y);return HX&&e.log(`[Tracing] Inheriting parent's sampled decision for ${B}: ${J}`),J}return}function zK({decision:A,context:Q,spanAttributes:B,sampleRand:Y,downstreamTraceSampleRate:J}){let C=tH0(Q,B);if(J!==void 0)C=C.set(LH0,`${J}`);if(Y!==void 0)C=C.set(NH0,`${Y}`);if(A==null)return{decision:DW.SamplingDecision.NOT_RECORD,traceState:C};if(A===DW.SamplingDecision.NOT_RECORD)return{decision:A,traceState:C.set(li,"1")};return{decision:A,traceState:C}}function tH0(A,Q){let J=bA.trace.getSpan(A)?.spanContext()?.traceState||new r5.TraceState,C=Q[oQ.SEMATTRS_HTTP_URL]||Q[oQ.ATTR_URL_FULL];if(C&&typeof C==="string")J=J.set(h$Q,C);return J}function eH0(A){let Q=bA.trace.getSpan(A);return Q&&bA.isSpanContextValid(Q.spanContext())?Q:void 0}var fQ=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__;function kL(A,Q){if(!A)return Q;let B=gZ(A),Y=gZ(Q);if(!Y)return A;let J={...B};return Object.entries(Y).forEach(([C,X])=>{if(!J[C])J[C]=X}),Mj(J)}var Z1="@sentry/instrumentation-http",AD0=1048576;class An extends _L.InstrumentationBase{constructor(A={}){super(Z1,zP.VERSION,A);this._propagationDecisionMap=new m8(100),this._ignoreOutgoingRequestsMap=new WeakMap}init(){let A=!1,Q=(G)=>{let W=G;this._patchServerEmitOnce(W.server)},B=(G)=>{let W=G;this._onOutgoingRequestFinish(W.request,W.response)},Y=(G)=>{let W=G;this._onOutgoingRequestFinish(W.request,void 0)},J=(G)=>{let W=G;this._onOutgoingRequestCreated(W.request)},C=(G)=>{if(A)return G;if(A=!0,qP("http.server.request.start",Q),qP("http.client.response.finish",B),qP("http.client.request.error",Y),this.getConfig().propagateTraceInOutgoingRequests)qP("http.client.request.created",J);return G},X=()=>{MP("http.server.request.start",Q),MP("http.client.response.finish",B),MP("http.client.request.error",Y),MP("http.client.request.created",J)};return[new _L.InstrumentationNodeModuleDefinition("http",["*"],C,X),new _L.InstrumentationNodeModuleDefinition("https",["*"],C,X)]}_onOutgoingRequestFinish(A,Q){fQ&&e.log(Z1,"Handling finished outgoing request");let B=this.getConfig().breadcrumbs,Y=typeof B>"u"?!0:B,J=this._ignoreOutgoingRequestsMap.get(A)??this._shouldIgnoreOutgoingRequest(A);if(this._ignoreOutgoingRequestsMap.set(A,J),Y&&!J)QD0(A,Q)}_onOutgoingRequestCreated(A){let Q=this._ignoreOutgoingRequestsMap.get(A)??this._shouldIgnoreOutgoingRequest(A);if(this._ignoreOutgoingRequestsMap.set(A,Q),Q)return;let B=jL(A),Y=gA()?.getOptions().tracePropagationTargets,J=SL(B,Y,this._propagationDecisionMap)?CG():void 0;if(!J)return;let{"sentry-trace":C,baggage:X}=J;if(C&&!A.getHeader("sentry-trace"))A.setHeader("sentry-trace",C),e.log(Z1,"Added sentry-trace header to outgoing request");if(X){let G=kL(A.getHeader("baggage"),X);if(G)A.setHeader("baggage",G)}}_patchServerEmitOnce(A){let Q=A.emit;if(Q.__sentry_patched__)return;fQ&&e.log(Z1,"Patching server.emit");let B=this,{ignoreIncomingRequestBody:Y,maxIncomingRequestBodySize:J="medium"}=B.getConfig(),C=new Proxy(Q,{apply(X,G,W){if(W[0]!=="request")return X.apply(G,W);fQ&&e.log(Z1,"Handling incoming request");let F=RQ().clone(),Z=W[1],U=W[2],$=sE(Z),E=Z.ip||Z.socket?.remoteAddress,K=Z.url||"/";if(!Y?.(K,Z)&&J!=="none")YD0(Z,F,J);F.setSDKProcessingMetadata({normalizedRequest:$,ipAddress:E});let I=(Z.method||"GET").toUpperCase(),V=aE(K),H=`${I} ${V}`;if(F.setTransactionName(H),B.getConfig().trackIncomingRequestsAsSessions!==!1)CD0({requestIsolationScope:F,response:U,sessionFlushingDelayMS:B.getConfig().sessionFlushingDelayMS??60000});return BG(F,()=>{if(sQ().getPropagationContext().propagationSpanId=g8(),!B.getConfig().extractIncomingTraceFromHeader)return X.apply(G,W);let D=OK.propagation.extract(OK.context.active(),$.headers);return OK.context.with(D,()=>{return X.apply(G,W)})})}});p0(C,"__sentry_patched__",!0),A.emit=C}_shouldIgnoreOutgoingRequest(A){if(zP.isTracingSuppressed(OK.context.active()))return!0;let Q=this.getConfig().ignoreOutgoingRequests;if(!Q)return!1;let B=JD0(A),Y=jL(A);return Q(Y,B)}}function QD0(A,Q){let B=BD0(A),Y=Q?.statusCode,J=bN(Y);E9({category:"http",data:{status_code:Y,...B},type:"http",level:J},{event:"response",request:A,response:Q})}function BD0(A){try{let Q=A.getHeader("host")||A.host,B=new URL(A.path,`${A.protocol}//${Q}`),Y=FW(B.toString()),J={url:ZW(Y),"http.method":A.method||"GET"};if(Y.search)J["http.query"]=Y.search;if(Y.hash)J["http.fragment"]=Y.hash;return J}catch{return{}}}function YD0(A,Q,B){let Y=0,J=[];fQ&&e.log(Z1,"Patching request.on");let C=new WeakMap,X=B==="small"?1000:B==="medium"?1e4:AD0;try{A.on=new Proxy(A.on,{apply:(G,W,F)=>{let[Z,U,...$]=F;if(Z==="data"){fQ&&e.log(Z1,`Handling request.on("data") with maximum body size of ${X}b`);let E=new Proxy(U,{apply:(K,I,V)=>{try{let H=V[0],D=Buffer.from(H);if(Y{let[,Z]=F,U=C.get(Z);if(U){C.delete(Z);let $=F.slice();return $[1]=U,Reflect.apply(G,W,$)}return Reflect.apply(G,W,F)}}),A.on("end",()=>{try{let G=Buffer.concat(J).toString("utf-8");if(G){let F=Buffer.byteLength(G,"utf-8")>X?`${Buffer.from(G).subarray(0,X-3).toString("utf-8")}...`:G;Q.setSDKProcessingMetadata({normalizedRequest:{data:F}})}}catch(G){if(fQ)e.error(Z1,"Error building captured request body",G)}})}catch(G){if(fQ)e.error(Z1,"Error patching request to capture body",G)}}function JD0(A){return{method:A.method,protocol:A.protocol,host:A.host,hostname:A.host,path:A.path,headers:A.getHeaders()}}function CD0({requestIsolationScope:A,response:Q,sessionFlushingDelayMS:B}){A.setSDKProcessingMetadata({requestSession:{status:"ok"}}),Q.once("close",()=>{let Y=gA(),J=A.getScopeData().sdkProcessingMetadata.requestSession;if(Y&&J){fQ&&e.debug(`Recorded request session with status: ${J.status}`);let C=new Date;C.setSeconds(0,0);let X=C.toISOString(),G=ei.get(Y),W=G?.[X]||{exited:0,crashed:0,errored:0};if(W[{ok:"exited",crashed:"crashed",errored:"errored"}[J.status]]++,G)G[X]=W;else{fQ&&e.debug("Opened new request session aggregate.");let F={[X]:W};ei.set(Y,F);let Z=()=>{clearTimeout($),U(),ei.delete(Y);let E=Object.entries(F).map(([K,I])=>({started:K,exited:I.exited,errored:I.errored,crashed:I.crashed}));Y.sendSession({aggregates:E})},U=Y.on("flush",()=>{fQ&&e.debug("Sending request session aggregate due to client flush"),Z()}),$=setTimeout(()=>{fQ&&e.debug("Sending request session aggregate due to flushing schedule"),Z()},B).unref()}}})}var ei=new Map;var Qn="Http",X4Q="@opentelemetry_sentry-patched/instrumentation-http",XD0=EQ(`${Qn}.sentry`,(A)=>{return new An(A)}),Bn=EQ(Qn,(A)=>{let Q=new W4Q.HttpInstrumentation(A);try{Q._diag=G4Q.diag.createComponentLogger({namespace:X4Q}),Q.instrumentationName=X4Q}catch{}return Q});function GD0(A,Q={}){return typeof A.spans==="boolean"?A.spans:!Q.skipOpenTelemetrySetup}var RP=wA((A={})=>{let Q=A.dropSpansForIncomingRequestStatusCodes??[404];return{name:Qn,setupOnce(){let B=GD0(A,gA()?.getOptions());if(XD0({...A,extractIncomingTraceFromHeader:!B,propagateTraceInOutgoingRequests:!B}),B){let Y=ZD0(A);Bn(Y)}},processEvent(B){if(B.type==="transaction"){let Y=B.contexts?.trace?.data?.["http.response.status_code"];if(typeof Y==="number"&&Q.some((J)=>{if(typeof J==="number")return J===Y;let[C,X]=J;return Y>=C&&Y<=X}))return null}return B}}});function WD0(A){return"outputData"in A&&"outputSize"in A&&!("client"in A)&&!("statusCode"in A)}function FD0(A){return A.headers["next-router-prefetch"]==="1"}function ZD0(A={}){return{...A.instrumentation?._experimentalConfig,disableIncomingRequestInstrumentation:A.disableIncomingRequestSpans,ignoreOutgoingRequestHook:(B)=>{let Y=jL(B);if(!Y)return!1;let J=A.ignoreOutgoingRequests;if(J?.(Y,B))return!0;return!1},ignoreIncomingRequestHook:(B)=>{let Y=B.url,J=B.method?.toUpperCase();if(J==="OPTIONS"||J==="HEAD")return!0;let C=A.ignoreIncomingRequests;if(Y&&C?.(Y,B))return!0;return!1},requireParentforOutgoingSpans:!1,requireParentforIncomingSpans:!1,requestHook:(B,Y)=>{if(s0(B,"auto.http.otel.http"),!WD0(Y)&&FD0(Y))B.setAttribute("sentry.http.prefetch",!0);A.instrumentation?.requestHook?.(B,Y)},responseHook:(B,Y)=>{A.instrumentation?.responseHook?.(B,Y)},applyCustomAttributesOnSpan:(B,Y,J)=>{A.instrumentation?.applyCustomAttributesOnSpan?.(B,Y,J)}}}var P4Q=qA(z4Q(),1);var j4Q=qA(yA(),1),OP=qA(MB(),1),O4Q=qA(NB(),1);import*as PK from"diagnostics_channel";var LW=mu(process.versions.node),gL=LW.major,R4Q=LW.minor;var jP="sentry-trace",Yn="baggage",w4Q=/baggage: (.*)\r\n/;class Cn extends O4Q.InstrumentationBase{constructor(A={}){super("@sentry/instrumentation-node-fetch",OP.VERSION,A);this._channelSubs=[],this._propagationDecisionMap=new m8(100),this._ignoreOutgoingRequestsMap=new WeakMap}init(){return}disable(){super.disable(),this._channelSubs.forEach((A)=>A.unsubscribe()),this._channelSubs=[]}enable(){if(super.enable(),this._channelSubs=this._channelSubs||[],this._channelSubs.length>0)return;this._subscribeToChannel("undici:request:create",this._onRequestCreated.bind(this)),this._subscribeToChannel("undici:request:headers",this._onResponseHeaders.bind(this))}_onRequestCreated({request:A}){if(this.getConfig().enabled===!1)return;let Y=this._shouldIgnoreOutgoingRequest(A);if(this._ignoreOutgoingRequestsMap.set(A,Y),Y)return;let J=Jn(A.origin,A.path),C=gA()?.getOptions().tracePropagationTargets,X=SL(J,C,this._propagationDecisionMap)?CG():void 0;if(!X)return;let{"sentry-trace":G,baggage:W}=X;if(Array.isArray(A.headers)){let F=A.headers;if(G&&!F.includes(jP))F.push(jP,G);let Z=F.findIndex((U)=>U===Yn);if(W&&Z===-1)F.push(Yn,W);else if(W){let U=F[Z+1],$=kL(U,W);if($)F[Z+1]=$}}else{let F=A.headers;if(G&&!F.includes(`${jP}:`))A.headers+=`${jP}: ${G}\r +`;let Z=A.headers.match(w4Q)?.[1];if(W&&!Z)A.headers+=`${Yn}: ${W}\r +`;else if(W){let U=kL(Z,W);if(U)A.headers=A.headers.replace(w4Q,`baggage: ${U}\r +`)}}}_onResponseHeaders({request:A,response:Q}){let B=this.getConfig();if(B.enabled===!1)return;let J=B.breadcrumbs,C=typeof J>"u"?!0:J,X=this._ignoreOutgoingRequestsMap.get(A);if(C&&!X)KD0(A,Q)}_subscribeToChannel(A,Q){let B=gL>18||gL===18&&R4Q>=19,Y;if(B)PK.subscribe?.(A,Q),Y=()=>PK.unsubscribe?.(A,Q);else{let J=PK.channel(A);J.subscribe(Q),Y=()=>J.unsubscribe(Q)}this._channelSubs.push({name:A,unsubscribe:Y})}_shouldIgnoreOutgoingRequest(A){if(OP.isTracingSuppressed(j4Q.context.active()))return!0;let Q=Jn(A.origin,A.path),B=this.getConfig().ignoreOutgoingRequests;if(typeof B!=="function"||!Q)return!1;return B(Q)}}function KD0(A,Q){let B=VD0(A),Y=Q.statusCode,J=bN(Y);E9({category:"http",data:{status_code:Y,...B},type:"http",level:J},{event:"response",request:A,response:Q})}function VD0(A){try{let Q=Jn(A.origin,A.path),B=FW(Q),Y={url:ZW(B),"http.method":A.method||"GET"};if(B.search)Y["http.query"]=B.search;if(B.hash)Y["http.fragment"]=B.hash;return Y}catch{return{}}}function Jn(A,Q="/"){try{return new URL(Q,A).toString()}catch{let B=`${A}`;if(B.endsWith("/")&&Q.startsWith("/"))return`${B}${Q.slice(1)}`;if(!B.endsWith("/")&&!Q.startsWith("/"))return`${B}/${Q.slice(1)}`;return`${B}${Q}`}}var T4Q="NodeFetch",ID0=EQ(T4Q,P4Q.UndiciInstrumentation,(A)=>{return qD0(A)}),HD0=EQ(`${T4Q}.sentry`,Cn,(A)=>{return A}),DD0=(A={})=>{return{name:"NodeFetch",setupOnce(){if(LD0(A,gA()?.getOptions()))ID0(A);HD0(A)}}},PP=wA(DD0);function ND0(A,Q="/"){let B=`${A}`;if(B.endsWith("/")&&Q.startsWith("/"))return`${B}${Q.slice(1)}`;if(!B.endsWith("/")&&!Q.startsWith("/"))return`${B}/${Q.slice(1)}`;return`${B}${Q}`}function LD0(A,Q={}){return typeof A.spans==="boolean"?A.spans:!Q.skipOpenTelemetrySetup}function qD0(A={}){return{requireParentforSpans:!1,ignoreRequestHook:(B)=>{let Y=ND0(B.origin,B.path),J=A.ignoreOutgoingRequests;return!!(J&&Y&&J(Y))},startSpanHook:()=>{return{[DQ]:"auto.http.otel.node_fetch"}}}}var a4Q=qA(s4Q(),1);var r4Q="FileSystem",o4Q=wA((A={})=>{return{name:r4Q,setupOnce(){EQ(r4Q,()=>new a4Q.FsInstrumentation({requireParentSpan:!0,endHook(Q,{args:B,span:Y,error:J}){if(Y.updateName(`fs.${Q}`),Y.setAttributes({[YQ]:"file",[DQ]:"auto.file.fs"}),A.recordErrorMessagesAsSpanAttributes){if(typeof B[0]==="string"&&yD0.includes(Q))Y.setAttribute("path_argument",B[0]);else if(typeof B[0]==="string"&&typeof B[1]==="string"&&vD0.includes(Q))Y.setAttribute("target_argument",B[0]),Y.setAttribute("path_argument",B[1]);else if(typeof B[0]==="string"&&_D0.includes(Q))Y.setAttribute("prefix_argument",B[0]);else if(typeof B[0]==="string"&&typeof B[1]==="string"&&kD0.includes(Q))Y.setAttribute("existing_path_argument",B[0]),Y.setAttribute("new_path_argument",B[1]);else if(typeof B[0]==="string"&&typeof B[1]==="string"&&SD0.includes(Q))Y.setAttribute("src_argument",B[0]),Y.setAttribute("dest_argument",B[1]);else if(typeof B[0]==="string"&&typeof B[1]==="string"&&TD0.includes(Q))Y.setAttribute("old_path_argument",B[0]),Y.setAttribute("new_path_argument",B[1])}if(J&&A.recordErrorMessagesAsSpanAttributes)Y.setAttribute("fs_error",J.message)}}))()}}}),TD0=["rename","renameSync"],SD0=["copyFile","cp","copyFileSync","cpSync"],kD0=["link","linkSync"],_D0=["mkdtemp","mkdtempSync"],vD0=["symlink","symlinkSync"],yD0=["access","appendFile","chmod","chown","exists","mkdir","lchown","lstat","lutimes","open","opendir","readdir","readFile","readlink","realpath","realpath.native","rm","rmdir","stat","truncate","unlink","utimes","writeFile","accessSync","appendFileSync","chmodSync","chownSync","existsSync","lchownSync","lstatSync","lutimesSync","opendirSync","mkdirSync","openSync","readdirSync","readFileSync","readlinkSync","realpathSync","realpathSync.native","rmdirSync","rmSync","statSync","truncateSync","unlinkSync","utimesSync","writeFileSync"];import{execFile as gD0}from"node:child_process";import{readFile as hD0,readdir as xD0}from"node:fs";import*as rY from"node:os";import{join as fD0}from"node:path";import{promisify as e4Q}from"node:util";var bD0=e4Q(hD0),mD0=e4Q(xD0),uD0="Context",dD0=(A={})=>{let Q,B={app:!0,os:!0,device:!0,culture:!0,cloudResource:!0,...A};async function Y(C){if(Q===void 0)Q=J();let X=cD0(await Q);return C.contexts={...C.contexts,app:{...X.app,...C.contexts?.app},os:{...X.os,...C.contexts?.os},device:{...X.device,...C.contexts?.device},culture:{...X.culture,...C.contexts?.culture},cloud_resource:{...X.cloud_resource,...C.contexts?.cloud_resource}},C}async function J(){let C={};if(B.os)C.os=await lD0();if(B.app)C.app=iD0();if(B.device)C.device=nD0(B.device);if(B.culture){let X=pD0();if(X)C.culture=X}if(B.cloudResource)C.cloud_resource=eD0();return C}return{name:uD0,processEvent(C){return Y(C)}}},kP=wA(dD0);function cD0(A){if(A.app?.app_memory)A.app.app_memory=process.memoryUsage().rss;if(A.app?.free_memory&&typeof process.availableMemory==="function"){let Q=process.availableMemory?.();if(Q!=null)A.app.free_memory=Q}if(A.device?.free_memory)A.device.free_memory=rY.freemem();return A}async function lD0(){let A=rY.platform();switch(A){case"darwin":return oD0();case"linux":return tD0();default:return{name:sD0[A]||A,version:rY.release()}}}function pD0(){try{if(typeof process.versions.icu!=="string")return;let A=new Date(900000000);if(new Intl.DateTimeFormat("es",{month:"long"}).format(A)==="enero"){let B=Intl.DateTimeFormat().resolvedOptions();return{locale:B.locale,timezone:B.timeZone}}}catch(A){}return}function iD0(){let A=process.memoryUsage().rss,B={app_start_time:new Date(Date.now()-process.uptime()*1000).toISOString(),app_memory:A};if(typeof process.availableMemory==="function"){let Y=process.availableMemory?.();if(Y!=null)B.free_memory=Y}return B}function nD0(A){let Q={},B;try{B=rY.uptime()}catch(Y){}if(typeof B==="number")Q.boot_time=new Date(Date.now()-B*1000).toISOString();if(Q.arch=rY.arch(),A===!0||A.memory)Q.memory_size=rY.totalmem(),Q.free_memory=rY.freemem();if(A===!0||A.cpu){let Y=rY.cpus(),J=Y?.[0];if(J)Q.processor_count=Y.length,Q.cpu_description=J.model,Q.processor_frequency=J.speed}return Q}var sD0={aix:"IBM AIX",freebsd:"FreeBSD",openbsd:"OpenBSD",sunos:"SunOS",win32:"Windows"},rD0=[{name:"fedora-release",distros:["Fedora"]},{name:"redhat-release",distros:["Red Hat Linux","Centos"]},{name:"redhat_version",distros:["Red Hat Linux"]},{name:"SuSE-release",distros:["SUSE Linux"]},{name:"lsb-release",distros:["Ubuntu Linux","Arch Linux"]},{name:"debian_version",distros:["Debian"]},{name:"debian_release",distros:["Debian"]},{name:"arch-release",distros:["Arch Linux"]},{name:"gentoo-release",distros:["Gentoo Linux"]},{name:"novell-release",distros:["SUSE Linux"]},{name:"alpine-release",distros:["Alpine Linux"]}],aD0={alpine:(A)=>A,arch:(A)=>DX(/distrib_release=(.*)/,A),centos:(A)=>DX(/release ([^ ]+)/,A),debian:(A)=>A,fedora:(A)=>DX(/release (..)/,A),mint:(A)=>DX(/distrib_release=(.*)/,A),red:(A)=>DX(/release ([^ ]+)/,A),suse:(A)=>DX(/VERSION = (.*)\n/,A),ubuntu:(A)=>DX(/distrib_release=(.*)/,A)};function DX(A,Q){let B=A.exec(Q);return B?B[1]:void 0}async function oD0(){let A={kernel_version:rY.release(),name:"Mac OS X",version:`10.${Number(rY.release().split(".")[0])-4}`};try{let Q=await new Promise((B,Y)=>{gD0("/usr/bin/sw_vers",(J,C)=>{if(J){Y(J);return}B(C)})});A.name=DX(/^ProductName:\s+(.*)$/m,Q),A.version=DX(/^ProductVersion:\s+(.*)$/m,Q),A.build=DX(/^BuildVersion:\s+(.*)$/m,Q)}catch(Q){}return A}function t4Q(A){return A.split(" ")[0].toLowerCase()}async function tD0(){let A={kernel_version:rY.release(),name:"Linux"};try{let Q=await mD0("/etc"),B=rD0.find((G)=>Q.includes(G.name));if(!B)return A;let Y=fD0("/etc",B.name),J=(await bD0(Y,{encoding:"utf-8"})).toLowerCase(),{distros:C}=B;A.name=C.find((G)=>J.indexOf(t4Q(G))>=0)||C[0];let X=t4Q(A.name);A.version=aD0[X]?.(J)}catch(Q){}return A}function eD0(){if(process.env.VERCEL)return{"cloud.provider":"vercel","cloud.region":process.env.VERCEL_REGION};else if(process.env.AWS_REGION)return{"cloud.provider":"aws","cloud.region":process.env.AWS_REGION,"cloud.platform":process.env.AWS_EXECUTION_ENV};else if(process.env.GCP_PROJECT)return{"cloud.provider":"gcp"};else if(process.env.ALIYUN_REGION_ID)return{"cloud.provider":"alibaba_cloud","cloud.region":process.env.ALIYUN_REGION_ID};else if(process.env.WEBSITE_SITE_NAME&&process.env.REGION_NAME)return{"cloud.provider":"azure","cloud.region":process.env.REGION_NAME};else if(process.env.IBM_CLOUD_REGION)return{"cloud.provider":"ibm_cloud","cloud.region":process.env.IBM_CLOUD_REGION};else if(process.env.TENCENTCLOUD_REGION)return{"cloud.provider":"tencent_cloud","cloud.region":process.env.TENCENTCLOUD_REGION,"cloud.account.id":process.env.TENCENTCLOUD_APPID,"cloud.availability_zone":process.env.TENCENTCLOUD_ZONE};else if(process.env.NETLIFY)return{"cloud.provider":"netlify"};else if(process.env.FLY_REGION)return{"cloud.provider":"fly.io","cloud.region":process.env.FLY_REGION};else if(process.env.DYNO)return{"cloud.provider":"heroku"};else return}import{createReadStream as AN0}from"node:fs";import{createInterface as QN0}from"node:readline";var Xn=new m8(10),BUQ=new m8(20),BN0=7,YN0="ContextLines",JN0=1000,CN0=1e4;function XN0(A,Q,B){let Y=A.get(Q);if(Y===void 0)return A.set(Q,B),B;return Y}function GN0(A){if(A.startsWith("node:"))return!0;if(A.endsWith(".min.js"))return!0;if(A.endsWith(".min.cjs"))return!0;if(A.endsWith(".min.mjs"))return!0;if(A.startsWith("data:"))return!0;return!1}function WN0(A){if(A.lineno!==void 0&&A.lineno>CN0)return!0;if(A.colno!==void 0&&A.colno>JN0)return!0;return!1}function FN0(A,Q){let B=Xn.get(A);if(B===void 0)return!1;for(let Y=Q[0];Y<=Q[1];Y++)if(B[Y]===void 0)return!1;return!0}function ZN0(A,Q){if(!A.length)return[];let B=0,Y=A[0];if(typeof Y!=="number")return[];let J=QUQ(Y,Q),C=[];while(!0){if(B===A.length-1){C.push(J);break}let X=A[B+1];if(typeof X!=="number")break;if(X<=J[1])J[1]=X+Q;else C.push(J),J=QUQ(X,Q);B++}return C}function $N0(A,Q,B){return new Promise((Y,J)=>{let C=AN0(A),X=QN0({input:C});function G(){C.destroy(),Y()}let W=0,F=0,Z=Q[F];if(Z===void 0){G();return}let U=Z[0],$=Z[1];function E(K){BUQ.set(A,1),fQ&&e.error(`Failed to read file: ${A}. Error: ${K}`),X.close(),X.removeAllListeners(),G()}C.on("error",E),X.on("error",E),X.on("close",G),X.on("line",(K)=>{if(W++,W=$){if(F===Q.length-1){X.close(),X.removeAllListeners();return}F++;let I=Q[F];if(I===void 0){X.close(),X.removeAllListeners();return}U=I[0],$=I[1]}})})}async function UN0(A,Q){let B={};if(Q>0&&A.exception?.values)for(let C of A.exception.values){if(!C.stacktrace?.frames?.length)continue;for(let X=C.stacktrace.frames.length-1;X>=0;X--){let G=C.stacktrace.frames[X],W=G?.filename;if(!G||typeof W!=="string"||typeof G.lineno!=="number"||GN0(W)||WN0(G))continue;if(!B[W])B[W]=[];B[W].push(G.lineno)}}let Y=Object.keys(B);if(Y.length==0)return A;let J=[];for(let C of Y){if(BUQ.get(C))continue;let X=B[C];if(!X)continue;X.sort((F,Z)=>F-Z);let G=ZN0(X,Q);if(G.every((F)=>FN0(C,F)))continue;let W=XN0(Xn,C,{});J.push($N0(C,G,W))}if(await Promise.all(J).catch(()=>{fQ&&e.log("Failed to read one or more source files and resolve context lines")}),Q>0&&A.exception?.values){for(let C of A.exception.values)if(C.stacktrace?.frames&&C.stacktrace.frames.length>0)EN0(C.stacktrace.frames,Q,Xn)}return A}function EN0(A,Q,B){for(let Y of A)if(Y.filename&&Y.context_line===void 0&&typeof Y.lineno==="number"){let J=B.get(Y.filename);if(J===void 0)continue;KN0(Y.lineno,Y,Q,J)}}function AUQ(A){delete A.pre_context,delete A.context_line,delete A.post_context}function KN0(A,Q,B,Y){if(Q.lineno===void 0||Y===void 0){fQ&&e.error("Cannot resolve context for frame with no lineno or file contents");return}Q.pre_context=[];for(let C=YUQ(A,B);C{let Q=A.frameContextLines!==void 0?A.frameContextLines:BN0;return{name:YN0,processEvent(B){return UN0(B,Q)}}},_P=wA(VN0);import{Worker as IN0}from"node:worker_threads";var vP;async function TK(){if(vP===void 0)try{vP=!!(await import("node:inspector")).url()}catch(A){vP=!1}return vP}var hL="__SENTRY_ERROR_LOCAL_VARIABLES__";function XUQ(A,Q,B){let Y=0,J=5,C=0;return setInterval(()=>{if(C===0){if(Y>A){if(J*=2,B(J),J>86400)J=86400;C=J}}else if(C-=1,C===0)Q();Y=0},1000).unref(),()=>{Y+=1}}function CUQ(A){return A!==void 0&&(A.length===0||A==="?"||A==="")}function yP(A,Q){return A===Q||CUQ(A)&&CUQ(Q)}var HN0="LyohIEBzZW50cnkvbm9kZSA5LjIyLjAgKGNjYWJmYzIpIHwgaHR0cHM6Ly9naXRodWIuY29tL2dldHNlbnRyeS9zZW50cnktamF2YXNjcmlwdCAqLwppbXBvcnR7U2Vzc2lvbiBhcyBlfWZyb20ibm9kZTppbnNwZWN0b3IvcHJvbWlzZXMiO2ltcG9ydHt3b3JrZXJEYXRhIGFzIHR9ZnJvbSJub2RlOndvcmtlcl90aHJlYWRzIjtjb25zdCBuPSJ1bmRlZmluZWQiPT10eXBlb2YgX19TRU5UUllfREVCVUdfX3x8X19TRU5UUllfREVCVUdfXyxvPSI5LjIyLjAiLGk9Z2xvYmFsVGhpcztjb25zdCBhPVsiZGVidWciLCJpbmZvIiwid2FybiIsImVycm9yIiwibG9nIiwiYXNzZXJ0IiwidHJhY2UiXSxzPXt9O2Z1bmN0aW9uIGMoZSl7aWYoISgiY29uc29sZSJpbiBpKSlyZXR1cm4gZSgpO2NvbnN0IHQ9aS5jb25zb2xlLG49e30sbz1PYmplY3Qua2V5cyhzKTtvLmZvckVhY2goKGU9Pntjb25zdCBvPXNbZV07bltlXT10W2VdLHRbZV09b30pKTt0cnl7cmV0dXJuIGUoKX1maW5hbGx5e28uZm9yRWFjaCgoZT0+e3RbZV09bltlXX0pKX19IWZ1bmN0aW9uKGUsdCxuPWkpe2NvbnN0IGE9bi5fX1NFTlRSWV9fPW4uX19TRU5UUllfX3x8e30scz1hW29dPWFbb118fHt9O3NbZV18fChzW2VdPXQoKSl9KCJsb2dnZXIiLChmdW5jdGlvbigpe2xldCBlPSExO2NvbnN0IHQ9e2VuYWJsZTooKT0+e2U9ITB9LGRpc2FibGU6KCk9PntlPSExfSxpc0VuYWJsZWQ6KCk9PmV9O3JldHVybiBuP2EuZm9yRWFjaCgobj0+e3Rbbl09KC4uLnQpPT57ZSYmYygoKCk9PntpLmNvbnNvbGVbbl0oYFNlbnRyeSBMb2dnZXIgWyR7bn1dOmAsLi4udCl9KSl9fSkpOmEuZm9yRWFjaCgoZT0+e3RbZV09KCk9Pnt9fSkpLHR9KSk7Y29uc3Qgcj0iX19TRU5UUllfRVJST1JfTE9DQUxfVkFSSUFCTEVTX18iO2NvbnN0IHU9dDtmdW5jdGlvbiBsKC4uLmUpe3UuZGVidWcmJmMoKCgpPT5jb25zb2xlLmxvZygiW0xvY2FsVmFyaWFibGVzIFdvcmtlcl0iLC4uLmUpKSl9YXN5bmMgZnVuY3Rpb24gZihlLHQsbixvKXtjb25zdCBpPWF3YWl0IGUucG9zdCgiUnVudGltZS5nZXRQcm9wZXJ0aWVzIix7b2JqZWN0SWQ6dCxvd25Qcm9wZXJ0aWVzOiEwfSk7b1tuXT1pLnJlc3VsdC5maWx0ZXIoKGU9PiJsZW5ndGgiIT09ZS5uYW1lJiYhaXNOYU4ocGFyc2VJbnQoZS5uYW1lLDEwKSkpKS5zb3J0KCgoZSx0KT0+cGFyc2VJbnQoZS5uYW1lLDEwKS1wYXJzZUludCh0Lm5hbWUsMTApKSkubWFwKChlPT5lLnZhbHVlPy52YWx1ZSkpfWFzeW5jIGZ1bmN0aW9uIGcoZSx0LG4sbyl7Y29uc3QgaT1hd2FpdCBlLnBvc3QoIlJ1bnRpbWUuZ2V0UHJvcGVydGllcyIse29iamVjdElkOnQsb3duUHJvcGVydGllczohMH0pO29bbl09aS5yZXN1bHQubWFwKChlPT5bZS5uYW1lLGUudmFsdWU/LnZhbHVlXSkpLnJlZHVjZSgoKGUsW3Qsbl0pPT4oZVt0XT1uLGUpKSx7fSl9ZnVuY3Rpb24gZChlLHQpe2UudmFsdWUmJigidmFsdWUiaW4gZS52YWx1ZT92b2lkIDA9PT1lLnZhbHVlLnZhbHVlfHxudWxsPT09ZS52YWx1ZS52YWx1ZT90W2UubmFtZV09YDwke2UudmFsdWUudmFsdWV9PmA6dFtlLm5hbWVdPWUudmFsdWUudmFsdWU6ImRlc2NyaXB0aW9uImluIGUudmFsdWUmJiJmdW5jdGlvbiIhPT1lLnZhbHVlLnR5cGU/dFtlLm5hbWVdPWA8JHtlLnZhbHVlLmRlc2NyaXB0aW9ufT5gOiJ1bmRlZmluZWQiPT09ZS52YWx1ZS50eXBlJiYodFtlLm5hbWVdPSI8dW5kZWZpbmVkPiIpKX1hc3luYyBmdW5jdGlvbiBiKGUsdCl7Y29uc3Qgbj1hd2FpdCBlLnBvc3QoIlJ1bnRpbWUuZ2V0UHJvcGVydGllcyIse29iamVjdElkOnQsb3duUHJvcGVydGllczohMH0pLG89e307Zm9yKGNvbnN0IHQgb2Ygbi5yZXN1bHQpaWYodC52YWx1ZT8ub2JqZWN0SWQmJiJBcnJheSI9PT10LnZhbHVlLmNsYXNzTmFtZSl7Y29uc3Qgbj10LnZhbHVlLm9iamVjdElkO2F3YWl0IGYoZSxuLHQubmFtZSxvKX1lbHNlIGlmKHQudmFsdWU/Lm9iamVjdElkJiYiT2JqZWN0Ij09PXQudmFsdWUuY2xhc3NOYW1lKXtjb25zdCBuPXQudmFsdWUub2JqZWN0SWQ7YXdhaXQgZyhlLG4sdC5uYW1lLG8pfWVsc2UgdC52YWx1ZSYmZCh0LG8pO3JldHVybiBvfWxldCBwOyhhc3luYyBmdW5jdGlvbigpe2NvbnN0IHQ9bmV3IGU7dC5jb25uZWN0VG9NYWluVGhyZWFkKCksbCgiQ29ubmVjdGVkIHRvIG1haW4gdGhyZWFkIik7bGV0IG49ITE7dC5vbigiRGVidWdnZXIucmVzdW1lZCIsKCgpPT57bj0hMX0pKSx0Lm9uKCJEZWJ1Z2dlci5wYXVzZWQiLChlPT57bj0hMCxhc3luYyBmdW5jdGlvbihlLHtyZWFzb246dCxkYXRhOntvYmplY3RJZDpufSxjYWxsRnJhbWVzOm99KXtpZigiZXhjZXB0aW9uIiE9PXQmJiJwcm9taXNlUmVqZWN0aW9uIiE9PXQpcmV0dXJuO2lmKHA/LigpLG51bGw9PW4pcmV0dXJuO2NvbnN0IGk9W107Zm9yKGxldCB0PTA7dDxvLmxlbmd0aDt0Kyspe2NvbnN0e3Njb3BlQ2hhaW46bixmdW5jdGlvbk5hbWU6YSx0aGlzOnN9PW9bdF0sYz1uLmZpbmQoKGU9PiJsb2NhbCI9PT1lLnR5cGUpKSxyPSJnbG9iYWwiIT09cy5jbGFzc05hbWUmJnMuY2xhc3NOYW1lP2Ake3MuY2xhc3NOYW1lfS4ke2F9YDphO2lmKHZvaWQgMD09PWM/Lm9iamVjdC5vYmplY3RJZClpW3RdPXtmdW5jdGlvbjpyfTtlbHNle2NvbnN0IG49YXdhaXQgYihlLGMub2JqZWN0Lm9iamVjdElkKTtpW3RdPXtmdW5jdGlvbjpyLHZhcnM6bn19fWF3YWl0IGUucG9zdCgiUnVudGltZS5jYWxsRnVuY3Rpb25PbiIse2Z1bmN0aW9uRGVjbGFyYXRpb246YGZ1bmN0aW9uKCkgeyB0aGlzLiR7cn0gPSB0aGlzLiR7cn0gfHwgJHtKU09OLnN0cmluZ2lmeShpKX07IH1gLHNpbGVudDohMCxvYmplY3RJZDpufSksYXdhaXQgZS5wb3N0KCJSdW50aW1lLnJlbGVhc2VPYmplY3QiLHtvYmplY3RJZDpufSl9KHQsZS5wYXJhbXMpLnRoZW4oKGFzeW5jKCk9PntuJiZhd2FpdCB0LnBvc3QoIkRlYnVnZ2VyLnJlc3VtZSIpfSksKGFzeW5jIGU9PntuJiZhd2FpdCB0LnBvc3QoIkRlYnVnZ2VyLnJlc3VtZSIpfSkpfSkpLGF3YWl0IHQucG9zdCgiRGVidWdnZXIuZW5hYmxlIik7Y29uc3Qgbz0hMSE9PXUuY2FwdHVyZUFsbEV4Y2VwdGlvbnM7aWYoYXdhaXQgdC5wb3N0KCJEZWJ1Z2dlci5zZXRQYXVzZU9uRXhjZXB0aW9ucyIse3N0YXRlOm8/ImFsbCI6InVuY2F1Z2h0In0pLG8pe2NvbnN0IGU9dS5tYXhFeGNlcHRpb25zUGVyU2Vjb25kfHw1MDtwPWZ1bmN0aW9uKGUsdCxuKXtsZXQgbz0wLGk9NSxhPTA7cmV0dXJuIHNldEludGVydmFsKCgoKT0+ezA9PT1hP28+ZSYmKGkqPTIsbihpKSxpPjg2NDAwJiYoaT04NjQwMCksYT1pKTooYS09MSwwPT09YSYmdCgpKSxvPTB9KSwxZTMpLnVucmVmKCksKCk9PntvKz0xfX0oZSwoYXN5bmMoKT0+e2woIlJhdGUtbGltaXQgbGlmdGVkLiIpLGF3YWl0IHQucG9zdCgiRGVidWdnZXIuc2V0UGF1c2VPbkV4Y2VwdGlvbnMiLHtzdGF0ZToiYWxsIn0pfSksKGFzeW5jIGU9PntsKGBSYXRlLWxpbWl0IGV4Y2VlZGVkLiBEaXNhYmxpbmcgY2FwdHVyaW5nIG9mIGNhdWdodCBleGNlcHRpb25zIGZvciAke2V9IHNlY29uZHMuYCksYXdhaXQgdC5wb3N0KCJEZWJ1Z2dlci5zZXRQYXVzZU9uRXhjZXB0aW9ucyIse3N0YXRlOiJ1bmNhdWdodCJ9KX0pKX19KSgpLmNhdGNoKChlPT57bCgiRmFpbGVkIHRvIHN0YXJ0IGRlYnVnZ2VyIixlKX0pKSxzZXRJbnRlcnZhbCgoKCk9Pnt9KSwxZTQpOw==";function GUQ(...A){e.log("[LocalVariables]",...A)}var WUQ=wA((A={})=>{function Q(C,X){let G=(C.stacktrace?.frames||[]).filter((W)=>W.function!=="new Promise");for(let W=0;W{X.terminate()}),X.once("error",(G)=>{GUQ("Worker error",G)}),X.once("exit",(G)=>{GUQ("Worker exit",G)}),X.unref()}return{name:"LocalVariablesAsync",async setup(C){if(!C.getOptions().includeLocalVariables)return;if(await TK()){e.warn("Local variables capture has been disabled because the debugger was already enabled");return}let G={...A,debug:e.isEnabled()};Y().then(()=>{try{J(G)}catch(W){e.error("Failed to start worker",W)}},(W)=>{e.error("Failed to start inspector",W)})},processEvent(C,X){return B(C,X)}}});function FUQ(A){if(A===void 0)return;return A.slice(-10).reduce((Q,B)=>`${Q},${B.function},${B.lineno},${B.colno}`,"")}function DN0(A,Q){if(Q===void 0)return;return FUQ(A(Q,1))}function ZUQ(A){let Q=[],B=!1;function Y(X){if(Q=[],B)return;B=!0,A(X)}Q.push(Y);function J(X){Q.push(X)}function C(X){let G=Q.pop()||Y;try{G(X)}catch(W){Y(X)}}return{add:J,next:C}}class Gn{constructor(A){this._session=A}static async create(A){if(A)return A;let Q=await import("node:inspector");return new Gn(new Q.Session)}configureAndConnect(A,Q){this._session.connect(),this._session.on("Debugger.paused",(B)=>{A(B,()=>{this._session.post("Debugger.resume")})}),this._session.post("Debugger.enable"),this._session.post("Debugger.setPauseOnExceptions",{state:Q?"all":"uncaught"})}setPauseOnExceptions(A){this._session.post("Debugger.setPauseOnExceptions",{state:A?"all":"uncaught"})}getLocalVariables(A,Q){this._getProperties(A,(B)=>{let{add:Y,next:J}=ZUQ(Q);for(let C of B)if(C.value?.objectId&&C.value.className==="Array"){let X=C.value.objectId;Y((G)=>this._unrollArray(X,C.name,G,J))}else if(C.value?.objectId&&C.value.className==="Object"){let X=C.value.objectId;Y((G)=>this._unrollObject(X,C.name,G,J))}else if(C.value)Y((X)=>this._unrollOther(C,X,J));J({})})}_getProperties(A,Q){this._session.post("Runtime.getProperties",{objectId:A,ownProperties:!0},(B,Y)=>{if(B)Q([]);else Q(Y.result)})}_unrollArray(A,Q,B,Y){this._getProperties(A,(J)=>{B[Q]=J.filter((C)=>C.name!=="length"&&!isNaN(parseInt(C.name,10))).sort((C,X)=>parseInt(C.name,10)-parseInt(X.name,10)).map((C)=>C.value?.value),Y(B)})}_unrollObject(A,Q,B,Y){this._getProperties(A,(J)=>{B[Q]=J.map((C)=>[C.name,C.value?.value]).reduce((C,[X,G])=>{return C[X]=G,C},{}),Y(B)})}_unrollOther(A,Q,B){if(A.value){if("value"in A.value)if(A.value.value===void 0||A.value.value===null)Q[A.name]=`<${A.value.value}>`;else Q[A.name]=A.value.value;else if("description"in A.value&&A.value.type!=="function")Q[A.name]=`<${A.value.description}>`;else if(A.value.type==="undefined")Q[A.name]=""}B(Q)}}var NN0="LocalVariables",LN0=(A={},Q)=>{let B=new m8(20),Y,J=!1;function C(G){let W=FUQ(G.stacktrace?.frames);if(W===void 0)return;let F=B.remove(W);if(F===void 0)return;let Z=(G.stacktrace?.frames||[]).filter((U)=>U.function!=="new Promise");for(let U=0;U= v18.");return}if(await TK()){e.warn("Local variables capture has been disabled because the debugger was already enabled");return}Gn.create(Q).then((Z)=>{function U(E,{params:{reason:K,data:I,callFrames:V}},H){if(K!=="exception"&&K!=="promiseRejection"){H();return}Y?.();let D=DN0(E,I.description);if(D==null){H();return}let{add:L,next:z}=ZUQ((M)=>{B.set(D,M),H()});for(let M=0;Mj.type==="local"),_=w.className==="global"||!w.className?q:`${w.className}.${q}`;if(P?.object.objectId===void 0)L((j)=>{j[M]={function:_},z(j)});else{let j=P.object.objectId;L((k)=>Z.getLocalVariables(j,(T)=>{k[M]={function:_,vars:T},z(k)}))}}z([])}let $=A.captureAllExceptions!==!1;if(Z.configureAndConnect((E,K)=>U(W.stackParser,E,K),$),$){let E=A.maxExceptionsPerSecond||50;Y=XUQ(E,()=>{e.log("Local variables rate-limit lifted."),Z.setPauseOnExceptions(!0)},(K)=>{e.log(`Local variables rate-limit exceeded. Disabling capturing of caught exceptions for ${K} seconds.`),Z.setPauseOnExceptions(!1)})}J=!0},(Z)=>{e.log("The `LocalVariables` integration failed to start.",Z)})},processEvent(G){if(J)return X(G);return G},_getCachedFramesCount(){return B.size},_getFirstCachedFrame(){return B.values()[0]}}},$UQ=wA(LN0);var gP=(A={})=>{return LW.major<19?$UQ(A):WUQ(A)};import{existsSync as qN0,readFileSync as MN0}from"node:fs";import{dirname as zN0,join as RN0}from"node:path";function a5(){try{return typeof UUQ<"u"&&typeof dmY<"u"}catch{return!1}}var Wn,EUQ="Modules",wN0=()=>{if(!a5())return fQ&&e.warn("modulesIntegration only works in CommonJS (CJS) environments. Remove this integration if you are using ESM."),{name:EUQ};return{name:EUQ,processEvent(A){return A.modules={...A.modules,...PN0()},A}}},hP=wA(wN0);function jN0(){try{return u.cache?Object.keys(u.cache):[]}catch(A){return[]}}function ON0(){let A=u.main?.paths||[],Q=jN0(),B={},Y={};return Q.forEach((J)=>{let C=J,X=()=>{let G=C;if(C=zN0(G),!C||G===C||Y[G])return;if(A.indexOf(C)<0)return X();let W=RN0(G,"package.json");if(Y[G]=!0,!qN0(W))return X();try{let F=JSON.parse(MN0(W,"utf8"));B[F.name]=F.version}catch(F){}};X()}),B}function PN0(){if(!Wn)Wn=ON0();return Wn}var TN0=2000;function xL(A){f0(()=>{console.error(A)});let Q=gA();if(Q===void 0){fQ&&e.warn("No NodeClient was defined, we are exiting the process now."),global.process.exit(1);return}let B=Q.getOptions(),Y=B?.shutdownTimeout&&B.shutdownTimeout>0?B.shutdownTimeout:TN0;Q.close(Y).then((J)=>{if(!J)fQ&&e.warn("We reached the timeout for emptying the request buffer, still exiting now!");global.process.exit(1)},(J)=>{fQ&&e.error(J)})}var SN0="OnUncaughtException",xP=wA((A={})=>{let Q={exitEvenIfOtherHandlersAreRegistered:!1,...A};return{name:SN0,setup(B){global.process.on("uncaughtException",kN0(B,Q))}}});function kN0(A,Q){let Y=!1,J=!1,C=!1,X,G=A.getOptions();return Object.assign((W)=>{let F=xL;if(Q.onFatalError)F=Q.onFatalError;else if(G.onFatalError)F=G.onFatalError;let U=global.process.listeners("uncaughtException").filter((E)=>{return E.name!=="domainUncaughtExceptionClear"&&E.tag!=="sentry_tracingErrorCallback"&&E._errorHandler!==!0}).length===0,$=Q.exitEvenIfOtherHandlersAreRegistered||U;if(!Y){if(X=W,Y=!0,gA()===A)jB(W,{originalException:W,captureContext:{level:"fatal"},mechanism:{handled:!1,type:"onuncaughtexception"}});if(!C&&$)C=!0,F(W)}else if($){if(C)fQ&&e.warn("uncaught exception after calling fatal error shutdown callback - this is bad! forcing shutdown"),xL(W);else if(!J)J=!0,setTimeout(()=>{if(!C)C=!0,F(X,W)},2000)}},{_errorHandler:!0})}var _N0="OnUnhandledRejection",vN0=(A={})=>{let Q={mode:"warn",...A};return{name:_N0,setup(B){global.process.on("unhandledRejection",yN0(B,Q))}}},fP=wA(vN0);function yN0(A,Q){return function(Y,J){if(gA()!==A)return;let C=Q.mode==="strict"?"fatal":"error";jB(Y,{originalException:J,captureContext:{extra:{unhandledPromiseRejection:!0},level:C},mechanism:{handled:!1,type:"onunhandledrejection"}}),gN0(Y,Q.mode)}}function gN0(A,Q){let B="This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). The promise rejected with the reason:";if(Q==="warn")f0(()=>{console.warn(B),console.error(A&&typeof A==="object"&&"stack"in A?A.stack:A)});else if(Q==="strict")f0(()=>{console.warn(B)}),xL(A)}import{types as hN0}from"node:util";import{Worker as xN0}from"node:worker_threads";var{isPromise:fN0}=hN0,bN0="LyohIEBzZW50cnkvbm9kZSA5LjIyLjAgKGNjYWJmYzIpIHwgaHR0cHM6Ly9naXRodWIuY29tL2dldHNlbnRyeS9zZW50cnktamF2YXNjcmlwdCAqLwppbXBvcnR7U2Vzc2lvbiBhcyB0fWZyb20ibm9kZTppbnNwZWN0b3IiO2ltcG9ydHt3b3JrZXJEYXRhIGFzIG4scGFyZW50UG9ydCBhcyBlfWZyb20ibm9kZTp3b3JrZXJfdGhyZWFkcyI7aW1wb3J0e3Bvc2l4IGFzIHIsc2VwIGFzIG99ZnJvbSJub2RlOnBhdGgiO2ltcG9ydCphcyBzIGZyb20ibm9kZTpodHRwIjtpbXBvcnQqYXMgaSBmcm9tIm5vZGU6aHR0cHMiO2ltcG9ydHtSZWFkYWJsZSBhcyBjfWZyb20ibm9kZTpzdHJlYW0iO2ltcG9ydHtjcmVhdGVHemlwIGFzIHV9ZnJvbSJub2RlOnpsaWIiO2ltcG9ydCphcyBhIGZyb20ibm9kZTpuZXQiO2ltcG9ydCphcyBmIGZyb20ibm9kZTp0bHMiO2NvbnN0IGg9InVuZGVmaW5lZCI9PXR5cGVvZiBfX1NFTlRSWV9ERUJVR19ffHxfX1NFTlRSWV9ERUJVR19fLHA9IjkuMjIuMCIsbD1nbG9iYWxUaGlzO2Z1bmN0aW9uIGQoKXtyZXR1cm4gbShsKSxsfWZ1bmN0aW9uIG0odCl7Y29uc3Qgbj10Ll9fU0VOVFJZX189dC5fX1NFTlRSWV9ffHx7fTtyZXR1cm4gbi52ZXJzaW9uPW4udmVyc2lvbnx8cCxuW3BdPW5bcF18fHt9fWZ1bmN0aW9uIGcodCxuLGU9bCl7Y29uc3Qgcj1lLl9fU0VOVFJZX189ZS5fX1NFTlRSWV9ffHx7fSxvPXJbcF09cltwXXx8e307cmV0dXJuIG9bdF18fChvW3RdPW4oKSl9Y29uc3QgeT1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nO2Z1bmN0aW9uIGIodCxuKXtyZXR1cm4geS5jYWxsKHQpPT09YFtvYmplY3QgJHtufV1gfWZ1bmN0aW9uIF8odCl7cmV0dXJuIGIodCwiU3RyaW5nIil9ZnVuY3Rpb24gdih0KXtyZXR1cm4gYih0LCJPYmplY3QiKX1mdW5jdGlvbiB3KHQpe3JldHVybiBCb29sZWFuKHQ/LnRoZW4mJiJmdW5jdGlvbiI9PXR5cGVvZiB0LnRoZW4pfWZ1bmN0aW9uIFModCxuKXt0cnl7cmV0dXJuIHQgaW5zdGFuY2VvZiBufWNhdGNoKHQpe3JldHVybiExfX1jb25zdCAkPWwsRT04MDtmdW5jdGlvbiB4KHQsbil7Y29uc3QgZT10LHI9W107aWYoIWU/LnRhZ05hbWUpcmV0dXJuIiI7aWYoJC5IVE1MRWxlbWVudCYmZSBpbnN0YW5jZW9mIEhUTUxFbGVtZW50JiZlLmRhdGFzZXQpe2lmKGUuZGF0YXNldC5zZW50cnlDb21wb25lbnQpcmV0dXJuIGUuZGF0YXNldC5zZW50cnlDb21wb25lbnQ7aWYoZS5kYXRhc2V0LnNlbnRyeUVsZW1lbnQpcmV0dXJuIGUuZGF0YXNldC5zZW50cnlFbGVtZW50fXIucHVzaChlLnRhZ05hbWUudG9Mb3dlckNhc2UoKSk7Y29uc3Qgbz1uPy5sZW5ndGg/bi5maWx0ZXIoKHQ9PmUuZ2V0QXR0cmlidXRlKHQpKSkubWFwKCh0PT5bdCxlLmdldEF0dHJpYnV0ZSh0KV0pKTpudWxsO2lmKG8/Lmxlbmd0aClvLmZvckVhY2goKHQ9PntyLnB1c2goYFske3RbMF19PSIke3RbMV19Il1gKX0pKTtlbHNle2UuaWQmJnIucHVzaChgIyR7ZS5pZH1gKTtjb25zdCB0PWUuY2xhc3NOYW1lO2lmKHQmJl8odCkpe2NvbnN0IG49dC5zcGxpdCgvXHMrLyk7Zm9yKGNvbnN0IHQgb2YgbilyLnB1c2goYC4ke3R9YCl9fWNvbnN0IHM9WyJhcmlhLWxhYmVsIiwidHlwZSIsIm5hbWUiLCJ0aXRsZSIsImFsdCJdO2Zvcihjb25zdCB0IG9mIHMpe2NvbnN0IG49ZS5nZXRBdHRyaWJ1dGUodCk7biYmci5wdXNoKGBbJHt0fT0iJHtufSJdYCl9cmV0dXJuIHIuam9pbigiIil9Y29uc3QgTj1bImRlYnVnIiwiaW5mbyIsIndhcm4iLCJlcnJvciIsImxvZyIsImFzc2VydCIsInRyYWNlIl0sQz17fTtmdW5jdGlvbiBUKHQpe2lmKCEoImNvbnNvbGUiaW4gbCkpcmV0dXJuIHQoKTtjb25zdCBuPWwuY29uc29sZSxlPXt9LHI9T2JqZWN0LmtleXMoQyk7ci5mb3JFYWNoKCh0PT57Y29uc3Qgcj1DW3RdO2VbdF09blt0XSxuW3RdPXJ9KSk7dHJ5e3JldHVybiB0KCl9ZmluYWxseXtyLmZvckVhY2goKHQ9PntuW3RdPWVbdF19KSl9fWNvbnN0IGs9ZygibG9nZ2VyIiwoZnVuY3Rpb24oKXtsZXQgdD0hMTtjb25zdCBuPXtlbmFibGU6KCk9Pnt0PSEwfSxkaXNhYmxlOigpPT57dD0hMX0saXNFbmFibGVkOigpPT50fTtyZXR1cm4gaD9OLmZvckVhY2goKGU9PntuW2VdPSguLi5uKT0+e3QmJlQoKCgpPT57bC5jb25zb2xlW2VdKGBTZW50cnkgTG9nZ2VyIFske2V9XTpgLC4uLm4pfSkpfX0pKTpOLmZvckVhY2goKHQ9PntuW3RdPSgpPT57fX0pKSxufSkpO2Z1bmN0aW9uIGoodCxuPTApe3JldHVybiJzdHJpbmciIT10eXBlb2YgdHx8MD09PW58fHQubGVuZ3RoPD1uP3Q6YCR7dC5zbGljZSgwLG4pfS4uLmB9ZnVuY3Rpb24gUih0KXtpZihmdW5jdGlvbih0KXtzd2l0Y2goeS5jYWxsKHQpKXtjYXNlIltvYmplY3QgRXJyb3JdIjpjYXNlIltvYmplY3QgRXhjZXB0aW9uXSI6Y2FzZSJbb2JqZWN0IERPTUV4Y2VwdGlvbl0iOmNhc2UiW29iamVjdCBXZWJBc3NlbWJseS5FeGNlcHRpb25dIjpyZXR1cm4hMDtkZWZhdWx0OnJldHVybiBTKHQsRXJyb3IpfX0odCkpcmV0dXJue21lc3NhZ2U6dC5tZXNzYWdlLG5hbWU6dC5uYW1lLHN0YWNrOnQuc3RhY2ssLi4uTyh0KX07aWYobj10LCJ1bmRlZmluZWQiIT10eXBlb2YgRXZlbnQmJlMobixFdmVudCkpe2NvbnN0IG49e3R5cGU6dC50eXBlLHRhcmdldDpJKHQudGFyZ2V0KSxjdXJyZW50VGFyZ2V0OkkodC5jdXJyZW50VGFyZ2V0KSwuLi5PKHQpfTtyZXR1cm4idW5kZWZpbmVkIiE9dHlwZW9mIEN1c3RvbUV2ZW50JiZTKHQsQ3VzdG9tRXZlbnQpJiYobi5kZXRhaWw9dC5kZXRhaWwpLG59cmV0dXJuIHQ7dmFyIG59ZnVuY3Rpb24gSSh0KXt0cnl7cmV0dXJuIG49dCwidW5kZWZpbmVkIiE9dHlwZW9mIEVsZW1lbnQmJlMobixFbGVtZW50KT9mdW5jdGlvbih0LG49e30pe2lmKCF0KXJldHVybiI8dW5rbm93bj4iO3RyeXtsZXQgZT10O2NvbnN0IHI9NSxvPVtdO2xldCBzPTAsaT0wO2NvbnN0IGM9IiA+ICIsdT1jLmxlbmd0aDtsZXQgYTtjb25zdCBmPUFycmF5LmlzQXJyYXkobik/bjpuLmtleUF0dHJzLGg9IUFycmF5LmlzQXJyYXkobikmJm4ubWF4U3RyaW5nTGVuZ3RofHxFO2Zvcig7ZSYmcysrPHImJihhPXgoZSxmKSwhKCJodG1sIj09PWF8fHM+MSYmaStvLmxlbmd0aCp1K2EubGVuZ3RoPj1oKSk7KW8ucHVzaChhKSxpKz1hLmxlbmd0aCxlPWUucGFyZW50Tm9kZTtyZXR1cm4gby5yZXZlcnNlKCkuam9pbihjKX1jYXRjaCh0KXtyZXR1cm4iPHVua25vd24+In19KHQpOk9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbCh0KX1jYXRjaCh0KXtyZXR1cm4iPHVua25vd24+In12YXIgbn1mdW5jdGlvbiBPKHQpe2lmKCJvYmplY3QiPT10eXBlb2YgdCYmbnVsbCE9PXQpe2NvbnN0IG49e307Zm9yKGNvbnN0IGUgaW4gdClPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodCxlKSYmKG5bZV09dFtlXSk7cmV0dXJuIG59cmV0dXJue319ZnVuY3Rpb24gRCh0PWZ1bmN0aW9uKCl7Y29uc3QgdD1sO3JldHVybiB0LmNyeXB0b3x8dC5tc0NyeXB0b30oKSl7bGV0IG49KCk9PjE2Kk1hdGgucmFuZG9tKCk7dHJ5e2lmKHQ/LnJhbmRvbVVVSUQpcmV0dXJuIHQucmFuZG9tVVVJRCgpLnJlcGxhY2UoLy0vZywiIik7dD8uZ2V0UmFuZG9tVmFsdWVzJiYobj0oKT0+e2NvbnN0IG49bmV3IFVpbnQ4QXJyYXkoMSk7cmV0dXJuIHQuZ2V0UmFuZG9tVmFsdWVzKG4pLG5bMF19KX1jYXRjaCh0KXt9cmV0dXJuKFsxZTddKzFlMys0ZTMrOGUzKzFlMTEpLnJlcGxhY2UoL1swMThdL2csKHQ9Pih0XigxNSZuKCkpPj50LzQpLnRvU3RyaW5nKDE2KSkpfWNvbnN0IEE9MWUzO2Z1bmN0aW9uIFAoKXtyZXR1cm4gRGF0ZS5ub3coKS9BfWNvbnN0IFU9ZnVuY3Rpb24oKXtjb25zdHtwZXJmb3JtYW5jZTp0fT1sO2lmKCF0Py5ub3cpcmV0dXJuIFA7Y29uc3Qgbj1EYXRlLm5vdygpLXQubm93KCksZT1udWxsPT10LnRpbWVPcmlnaW4/bjp0LnRpbWVPcmlnaW47cmV0dXJuKCk9PihlK3Qubm93KCkpL0F9KCk7ZnVuY3Rpb24gTSh0KXtjb25zdCBuPVUoKSxlPXtzaWQ6RCgpLGluaXQ6ITAsdGltZXN0YW1wOm4sc3RhcnRlZDpuLGR1cmF0aW9uOjAsc3RhdHVzOiJvayIsZXJyb3JzOjAsaWdub3JlRHVyYXRpb246ITEsdG9KU09OOigpPT5mdW5jdGlvbih0KXtyZXR1cm57c2lkOmAke3Quc2lkfWAsaW5pdDp0LmluaXQsc3RhcnRlZDpuZXcgRGF0ZSgxZTMqdC5zdGFydGVkKS50b0lTT1N0cmluZygpLHRpbWVzdGFtcDpuZXcgRGF0ZSgxZTMqdC50aW1lc3RhbXApLnRvSVNPU3RyaW5nKCksc3RhdHVzOnQuc3RhdHVzLGVycm9yczp0LmVycm9ycyxkaWQ6Im51bWJlciI9PXR5cGVvZiB0LmRpZHx8InN0cmluZyI9PXR5cGVvZiB0LmRpZD9gJHt0LmRpZH1gOnZvaWQgMCxkdXJhdGlvbjp0LmR1cmF0aW9uLGFibm9ybWFsX21lY2hhbmlzbTp0LmFibm9ybWFsX21lY2hhbmlzbSxhdHRyczp7cmVsZWFzZTp0LnJlbGVhc2UsZW52aXJvbm1lbnQ6dC5lbnZpcm9ubWVudCxpcF9hZGRyZXNzOnQuaXBBZGRyZXNzLHVzZXJfYWdlbnQ6dC51c2VyQWdlbnR9fX0oZSl9O3JldHVybiB0JiZMKGUsdCksZX1mdW5jdGlvbiBMKHQsbj17fSl7aWYobi51c2VyJiYoIXQuaXBBZGRyZXNzJiZuLnVzZXIuaXBfYWRkcmVzcyYmKHQuaXBBZGRyZXNzPW4udXNlci5pcF9hZGRyZXNzKSx0LmRpZHx8bi5kaWR8fCh0LmRpZD1uLnVzZXIuaWR8fG4udXNlci5lbWFpbHx8bi51c2VyLnVzZXJuYW1lKSksdC50aW1lc3RhbXA9bi50aW1lc3RhbXB8fFUoKSxuLmFibm9ybWFsX21lY2hhbmlzbSYmKHQuYWJub3JtYWxfbWVjaGFuaXNtPW4uYWJub3JtYWxfbWVjaGFuaXNtKSxuLmlnbm9yZUR1cmF0aW9uJiYodC5pZ25vcmVEdXJhdGlvbj1uLmlnbm9yZUR1cmF0aW9uKSxuLnNpZCYmKHQuc2lkPTMyPT09bi5zaWQubGVuZ3RoP24uc2lkOkQoKSksdm9pZCAwIT09bi5pbml0JiYodC5pbml0PW4uaW5pdCksIXQuZGlkJiZuLmRpZCYmKHQuZGlkPWAke24uZGlkfWApLCJudW1iZXIiPT10eXBlb2Ygbi5zdGFydGVkJiYodC5zdGFydGVkPW4uc3RhcnRlZCksdC5pZ25vcmVEdXJhdGlvbil0LmR1cmF0aW9uPXZvaWQgMDtlbHNlIGlmKCJudW1iZXIiPT10eXBlb2Ygbi5kdXJhdGlvbil0LmR1cmF0aW9uPW4uZHVyYXRpb247ZWxzZXtjb25zdCBuPXQudGltZXN0YW1wLXQuc3RhcnRlZDt0LmR1cmF0aW9uPW4+PTA/bjowfW4ucmVsZWFzZSYmKHQucmVsZWFzZT1uLnJlbGVhc2UpLG4uZW52aXJvbm1lbnQmJih0LmVudmlyb25tZW50PW4uZW52aXJvbm1lbnQpLCF0LmlwQWRkcmVzcyYmbi5pcEFkZHJlc3MmJih0LmlwQWRkcmVzcz1uLmlwQWRkcmVzcyksIXQudXNlckFnZW50JiZuLnVzZXJBZ2VudCYmKHQudXNlckFnZW50PW4udXNlckFnZW50KSwibnVtYmVyIj09dHlwZW9mIG4uZXJyb3JzJiYodC5lcnJvcnM9bi5lcnJvcnMpLG4uc3RhdHVzJiYodC5zdGF0dXM9bi5zdGF0dXMpfWZ1bmN0aW9uIEIodCxuLGU9Mil7aWYoIW58fCJvYmplY3QiIT10eXBlb2Ygbnx8ZTw9MClyZXR1cm4gbjtpZih0JiYwPT09T2JqZWN0LmtleXMobikubGVuZ3RoKXJldHVybiB0O2NvbnN0IHI9ey4uLnR9O2Zvcihjb25zdCB0IGluIG4pT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG4sdCkmJihyW3RdPUIoclt0XSxuW3RdLGUtMSkpO3JldHVybiByfWNvbnN0IEc9Il9zZW50cnlTcGFuIjtmdW5jdGlvbiBKKHQsbil7bj9mdW5jdGlvbih0LG4sZSl7dHJ5e09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LG4se3ZhbHVlOmUsd3JpdGFibGU6ITAsY29uZmlndXJhYmxlOiEwfSl9Y2F0Y2goZSl7aCYmay5sb2coYEZhaWxlZCB0byBhZGQgbm9uLWVudW1lcmFibGUgcHJvcGVydHkgIiR7bn0iIHRvIG9iamVjdGAsdCl9fSh0LEcsbik6ZGVsZXRlIHRbR119ZnVuY3Rpb24geih0KXtyZXR1cm4gdFtHXX1mdW5jdGlvbiBIKCl7cmV0dXJuIEQoKX1mdW5jdGlvbiBGKCl7cmV0dXJuIEQoKS5zdWJzdHJpbmcoMTYpfWNsYXNzIFd7Y29uc3RydWN0b3IoKXt0aGlzLnQ9ITEsdGhpcy5vPVtdLHRoaXMuaT1bXSx0aGlzLnU9W10sdGhpcy5oPVtdLHRoaXMucD17fSx0aGlzLmw9e30sdGhpcy5tPXt9LHRoaXMuXz17fSx0aGlzLnY9e30sdGhpcy5TPXt0cmFjZUlkOkgoKSxzYW1wbGVSYW5kOk1hdGgucmFuZG9tKCl9fWNsb25lKCl7Y29uc3QgdD1uZXcgVztyZXR1cm4gdC51PVsuLi50aGlzLnVdLHQubD17Li4udGhpcy5sfSx0Lm09ey4uLnRoaXMubX0sdC5fPXsuLi50aGlzLl99LHRoaXMuXy5mbGFncyYmKHQuXy5mbGFncz17dmFsdWVzOlsuLi50aGlzLl8uZmxhZ3MudmFsdWVzXX0pLHQucD10aGlzLnAsdC5OPXRoaXMuTix0LkM9dGhpcy5DLHQuVD10aGlzLlQsdC5rPXRoaXMuayx0Lmk9Wy4uLnRoaXMuaV0sdC5oPVsuLi50aGlzLmhdLHQudj17Li4udGhpcy52fSx0LlM9ey4uLnRoaXMuU30sdC5qPXRoaXMuaix0LlI9dGhpcy5SLEoodCx6KHRoaXMpKSx0fXNldENsaWVudCh0KXt0aGlzLmo9dH1zZXRMYXN0RXZlbnRJZCh0KXt0aGlzLlI9dH1nZXRDbGllbnQoKXtyZXR1cm4gdGhpcy5qfWxhc3RFdmVudElkKCl7cmV0dXJuIHRoaXMuUn1hZGRTY29wZUxpc3RlbmVyKHQpe3RoaXMuby5wdXNoKHQpfWFkZEV2ZW50UHJvY2Vzc29yKHQpe3JldHVybiB0aGlzLmkucHVzaCh0KSx0aGlzfXNldFVzZXIodCl7cmV0dXJuIHRoaXMucD10fHx7ZW1haWw6dm9pZCAwLGlkOnZvaWQgMCxpcF9hZGRyZXNzOnZvaWQgMCx1c2VybmFtZTp2b2lkIDB9LHRoaXMuQyYmTCh0aGlzLkMse3VzZXI6dH0pLHRoaXMuSSgpLHRoaXN9Z2V0VXNlcigpe3JldHVybiB0aGlzLnB9c2V0VGFncyh0KXtyZXR1cm4gdGhpcy5sPXsuLi50aGlzLmwsLi4udH0sdGhpcy5JKCksdGhpc31zZXRUYWcodCxuKXtyZXR1cm4gdGhpcy5sPXsuLi50aGlzLmwsW3RdOm59LHRoaXMuSSgpLHRoaXN9c2V0RXh0cmFzKHQpe3JldHVybiB0aGlzLm09ey4uLnRoaXMubSwuLi50fSx0aGlzLkkoKSx0aGlzfXNldEV4dHJhKHQsbil7cmV0dXJuIHRoaXMubT17Li4udGhpcy5tLFt0XTpufSx0aGlzLkkoKSx0aGlzfXNldEZpbmdlcnByaW50KHQpe3JldHVybiB0aGlzLms9dCx0aGlzLkkoKSx0aGlzfXNldExldmVsKHQpe3JldHVybiB0aGlzLk49dCx0aGlzLkkoKSx0aGlzfXNldFRyYW5zYWN0aW9uTmFtZSh0KXtyZXR1cm4gdGhpcy5UPXQsdGhpcy5JKCksdGhpc31zZXRDb250ZXh0KHQsbil7cmV0dXJuIG51bGw9PT1uP2RlbGV0ZSB0aGlzLl9bdF06dGhpcy5fW3RdPW4sdGhpcy5JKCksdGhpc31zZXRTZXNzaW9uKHQpe3JldHVybiB0P3RoaXMuQz10OmRlbGV0ZSB0aGlzLkMsdGhpcy5JKCksdGhpc31nZXRTZXNzaW9uKCl7cmV0dXJuIHRoaXMuQ311cGRhdGUodCl7aWYoIXQpcmV0dXJuIHRoaXM7Y29uc3Qgbj0iZnVuY3Rpb24iPT10eXBlb2YgdD90KHRoaXMpOnQsZT1uIGluc3RhbmNlb2YgVz9uLmdldFNjb3BlRGF0YSgpOnYobik/dDp2b2lkIDAse3RhZ3M6cixleHRyYTpvLHVzZXI6cyxjb250ZXh0czppLGxldmVsOmMsZmluZ2VycHJpbnQ6dT1bXSxwcm9wYWdhdGlvbkNvbnRleHQ6YX09ZXx8e307cmV0dXJuIHRoaXMubD17Li4udGhpcy5sLC4uLnJ9LHRoaXMubT17Li4udGhpcy5tLC4uLm99LHRoaXMuXz17Li4udGhpcy5fLC4uLml9LHMmJk9iamVjdC5rZXlzKHMpLmxlbmd0aCYmKHRoaXMucD1zKSxjJiYodGhpcy5OPWMpLHUubGVuZ3RoJiYodGhpcy5rPXUpLGEmJih0aGlzLlM9YSksdGhpc31jbGVhcigpe3JldHVybiB0aGlzLnU9W10sdGhpcy5sPXt9LHRoaXMubT17fSx0aGlzLnA9e30sdGhpcy5fPXt9LHRoaXMuTj12b2lkIDAsdGhpcy5UPXZvaWQgMCx0aGlzLms9dm9pZCAwLHRoaXMuQz12b2lkIDAsSih0aGlzLHZvaWQgMCksdGhpcy5oPVtdLHRoaXMuc2V0UHJvcGFnYXRpb25Db250ZXh0KHt0cmFjZUlkOkgoKSxzYW1wbGVSYW5kOk1hdGgucmFuZG9tKCl9KSx0aGlzLkkoKSx0aGlzfWFkZEJyZWFkY3J1bWIodCxuKXtjb25zdCBlPSJudW1iZXIiPT10eXBlb2Ygbj9uOjEwMDtpZihlPD0wKXJldHVybiB0aGlzO2NvbnN0IHI9e3RpbWVzdGFtcDpQKCksLi4udCxtZXNzYWdlOnQubWVzc2FnZT9qKHQubWVzc2FnZSwyMDQ4KTp0Lm1lc3NhZ2V9O3JldHVybiB0aGlzLnUucHVzaChyKSx0aGlzLnUubGVuZ3RoPmUmJih0aGlzLnU9dGhpcy51LnNsaWNlKC1lKSx0aGlzLmo/LnJlY29yZERyb3BwZWRFdmVudCgiYnVmZmVyX292ZXJmbG93IiwibG9nX2l0ZW0iKSksdGhpcy5JKCksdGhpc31nZXRMYXN0QnJlYWRjcnVtYigpe3JldHVybiB0aGlzLnVbdGhpcy51Lmxlbmd0aC0xXX1jbGVhckJyZWFkY3J1bWJzKCl7cmV0dXJuIHRoaXMudT1bXSx0aGlzLkkoKSx0aGlzfWFkZEF0dGFjaG1lbnQodCl7cmV0dXJuIHRoaXMuaC5wdXNoKHQpLHRoaXN9Y2xlYXJBdHRhY2htZW50cygpe3JldHVybiB0aGlzLmg9W10sdGhpc31nZXRTY29wZURhdGEoKXtyZXR1cm57YnJlYWRjcnVtYnM6dGhpcy51LGF0dGFjaG1lbnRzOnRoaXMuaCxjb250ZXh0czp0aGlzLl8sdGFnczp0aGlzLmwsZXh0cmE6dGhpcy5tLHVzZXI6dGhpcy5wLGxldmVsOnRoaXMuTixmaW5nZXJwcmludDp0aGlzLmt8fFtdLGV2ZW50UHJvY2Vzc29yczp0aGlzLmkscHJvcGFnYXRpb25Db250ZXh0OnRoaXMuUyxzZGtQcm9jZXNzaW5nTWV0YWRhdGE6dGhpcy52LHRyYW5zYWN0aW9uTmFtZTp0aGlzLlQsc3Bhbjp6KHRoaXMpfX1zZXRTREtQcm9jZXNzaW5nTWV0YWRhdGEodCl7cmV0dXJuIHRoaXMudj1CKHRoaXMudix0LDIpLHRoaXN9c2V0UHJvcGFnYXRpb25Db250ZXh0KHQpe3JldHVybiB0aGlzLlM9dCx0aGlzfWdldFByb3BhZ2F0aW9uQ29udGV4dCgpe3JldHVybiB0aGlzLlN9Y2FwdHVyZUV4Y2VwdGlvbih0LG4pe2NvbnN0IGU9bj8uZXZlbnRfaWR8fEQoKTtpZighdGhpcy5qKXJldHVybiBrLndhcm4oIk5vIGNsaWVudCBjb25maWd1cmVkIG9uIHNjb3BlIC0gd2lsbCBub3QgY2FwdHVyZSBleGNlcHRpb24hIiksZTtjb25zdCByPW5ldyBFcnJvcigiU2VudHJ5IHN5bnRoZXRpY0V4Y2VwdGlvbiIpO3JldHVybiB0aGlzLmouY2FwdHVyZUV4Y2VwdGlvbih0LHtvcmlnaW5hbEV4Y2VwdGlvbjp0LHN5bnRoZXRpY0V4Y2VwdGlvbjpyLC4uLm4sZXZlbnRfaWQ6ZX0sdGhpcyksZX1jYXB0dXJlTWVzc2FnZSh0LG4sZSl7Y29uc3Qgcj1lPy5ldmVudF9pZHx8RCgpO2lmKCF0aGlzLmopcmV0dXJuIGsud2FybigiTm8gY2xpZW50IGNvbmZpZ3VyZWQgb24gc2NvcGUgLSB3aWxsIG5vdCBjYXB0dXJlIG1lc3NhZ2UhIikscjtjb25zdCBvPW5ldyBFcnJvcih0KTtyZXR1cm4gdGhpcy5qLmNhcHR1cmVNZXNzYWdlKHQsbix7b3JpZ2luYWxFeGNlcHRpb246dCxzeW50aGV0aWNFeGNlcHRpb246bywuLi5lLGV2ZW50X2lkOnJ9LHRoaXMpLHJ9Y2FwdHVyZUV2ZW50KHQsbil7Y29uc3QgZT1uPy5ldmVudF9pZHx8RCgpO3JldHVybiB0aGlzLmo/KHRoaXMuai5jYXB0dXJlRXZlbnQodCx7Li4ubixldmVudF9pZDplfSx0aGlzKSxlKTooay53YXJuKCJObyBjbGllbnQgY29uZmlndXJlZCBvbiBzY29wZSAtIHdpbGwgbm90IGNhcHR1cmUgZXZlbnQhIiksZSl9SSgpe3RoaXMudHx8KHRoaXMudD0hMCx0aGlzLm8uZm9yRWFjaCgodD0+e3QodGhpcyl9KSksdGhpcy50PSExKX19Y2xhc3MgWXtjb25zdHJ1Y3Rvcih0LG4pe2xldCBlLHI7ZT10fHxuZXcgVyxyPW58fG5ldyBXLHRoaXMuTz1be3Njb3BlOmV9XSx0aGlzLkQ9cn13aXRoU2NvcGUodCl7Y29uc3Qgbj10aGlzLkEoKTtsZXQgZTt0cnl7ZT10KG4pfWNhdGNoKHQpe3Rocm93IHRoaXMuUCgpLHR9cmV0dXJuIHcoZSk/ZS50aGVuKCh0PT4odGhpcy5QKCksdCkpLCh0PT57dGhyb3cgdGhpcy5QKCksdH0pKToodGhpcy5QKCksZSl9Z2V0Q2xpZW50KCl7cmV0dXJuIHRoaXMuZ2V0U3RhY2tUb3AoKS5jbGllbnR9Z2V0U2NvcGUoKXtyZXR1cm4gdGhpcy5nZXRTdGFja1RvcCgpLnNjb3BlfWdldElzb2xhdGlvblNjb3BlKCl7cmV0dXJuIHRoaXMuRH1nZXRTdGFja1RvcCgpe3JldHVybiB0aGlzLk9bdGhpcy5PLmxlbmd0aC0xXX1BKCl7Y29uc3QgdD10aGlzLmdldFNjb3BlKCkuY2xvbmUoKTtyZXR1cm4gdGhpcy5PLnB1c2goe2NsaWVudDp0aGlzLmdldENsaWVudCgpLHNjb3BlOnR9KSx0fVAoKXtyZXR1cm4hKHRoaXMuTy5sZW5ndGg8PTEpJiYhIXRoaXMuTy5wb3AoKX19ZnVuY3Rpb24gSygpe2NvbnN0IHQ9bShkKCkpO3JldHVybiB0LnN0YWNrPXQuc3RhY2t8fG5ldyBZKGcoImRlZmF1bHRDdXJyZW50U2NvcGUiLCgoKT0+bmV3IFcpKSxnKCJkZWZhdWx0SXNvbGF0aW9uU2NvcGUiLCgoKT0+bmV3IFcpKSl9ZnVuY3Rpb24gVih0KXtyZXR1cm4gSygpLndpdGhTY29wZSh0KX1mdW5jdGlvbiBaKHQsbil7Y29uc3QgZT1LKCk7cmV0dXJuIGUud2l0aFNjb3BlKCgoKT0+KGUuZ2V0U3RhY2tUb3AoKS5zY29wZT10LG4odCkpKSl9ZnVuY3Rpb24gcSh0KXtyZXR1cm4gSygpLndpdGhTY29wZSgoKCk9PnQoSygpLmdldElzb2xhdGlvblNjb3BlKCkpKSl9ZnVuY3Rpb24gUSh0KXtjb25zdCBuPW0odCk7cmV0dXJuIG4uYWNzP24uYWNzOnt3aXRoSXNvbGF0aW9uU2NvcGU6cSx3aXRoU2NvcGU6Vix3aXRoU2V0U2NvcGU6Wix3aXRoU2V0SXNvbGF0aW9uU2NvcGU6KHQsbik9PnEobiksZ2V0Q3VycmVudFNjb3BlOigpPT5LKCkuZ2V0U2NvcGUoKSxnZXRJc29sYXRpb25TY29wZTooKT0+SygpLmdldElzb2xhdGlvblNjb3BlKCl9fWZ1bmN0aW9uIFgoKXtyZXR1cm4gUShkKCkpLmdldEN1cnJlbnRTY29wZSgpLmdldENsaWVudCgpfWNvbnN0IHR0PSJzZW50cnkuc291cmNlIixudD0ic2VudHJ5LnNhbXBsZV9yYXRlIixldD0ic2VudHJ5LnByZXZpb3VzX3RyYWNlX3NhbXBsZV9yYXRlIixydD0ic2VudHJ5Lm9wIixvdD0ic2VudHJ5Lm9yaWdpbiIsc3Q9MCxpdD0xLGN0PSJfc2VudHJ5U2NvcGUiLHV0PSJfc2VudHJ5SXNvbGF0aW9uU2NvcGUiO2Z1bmN0aW9uIGF0KHQpe3JldHVybntzY29wZTp0W2N0XSxpc29sYXRpb25TY29wZTp0W3V0XX19Y29uc3QgZnQ9InNlbnRyeS0iLGh0PS9ec2VudHJ5LS87ZnVuY3Rpb24gcHQodCl7Y29uc3Qgbj1mdW5jdGlvbih0KXtpZighdHx8IV8odCkmJiFBcnJheS5pc0FycmF5KHQpKXJldHVybjtpZihBcnJheS5pc0FycmF5KHQpKXJldHVybiB0LnJlZHVjZSgoKHQsbik9Pntjb25zdCBlPWx0KG4pO3JldHVybiBPYmplY3QuZW50cmllcyhlKS5mb3JFYWNoKCgoW24sZV0pPT57dFtuXT1lfSkpLHR9KSx7fSk7cmV0dXJuIGx0KHQpfSh0KTtpZighbilyZXR1cm47Y29uc3QgZT1PYmplY3QuZW50cmllcyhuKS5yZWR1Y2UoKCh0LFtuLGVdKT0+e2lmKG4ubWF0Y2goaHQpKXt0W24uc2xpY2UoZnQubGVuZ3RoKV09ZX1yZXR1cm4gdH0pLHt9KTtyZXR1cm4gT2JqZWN0LmtleXMoZSkubGVuZ3RoPjA/ZTp2b2lkIDB9ZnVuY3Rpb24gbHQodCl7cmV0dXJuIHQuc3BsaXQoIiwiKS5tYXAoKHQ9PnQuc3BsaXQoIj0iKS5tYXAoKHQ9Pnt0cnl7cmV0dXJuIGRlY29kZVVSSUNvbXBvbmVudCh0LnRyaW0oKSl9Y2F0Y2h7cmV0dXJufX0pKSkpLnJlZHVjZSgoKHQsW24sZV0pPT4obiYmZSYmKHRbbl09ZSksdCkpLHt9KX1jb25zdCBkdD0xO2Z1bmN0aW9uIG10KHQpe2NvbnN0e3NwYW5JZDpuLHRyYWNlSWQ6ZSxpc1JlbW90ZTpyfT10LnNwYW5Db250ZXh0KCksbz1yP246X3QodCkucGFyZW50X3NwYW5faWQscz1hdCh0KS5zY29wZTtyZXR1cm57cGFyZW50X3NwYW5faWQ6byxzcGFuX2lkOnI/cz8uZ2V0UHJvcGFnYXRpb25Db250ZXh0KCkucHJvcGFnYXRpb25TcGFuSWR8fEYoKTpuLHRyYWNlX2lkOmV9fWZ1bmN0aW9uIGd0KHQpe3JldHVybiB0JiZ0Lmxlbmd0aD4wP3QubWFwKCgoe2NvbnRleHQ6e3NwYW5JZDp0LHRyYWNlSWQ6bix0cmFjZUZsYWdzOmUsLi4ucn0sYXR0cmlidXRlczpvfSk9Pih7c3Bhbl9pZDp0LHRyYWNlX2lkOm4sc2FtcGxlZDplPT09ZHQsYXR0cmlidXRlczpvLC4uLnJ9KSkpOnZvaWQgMH1mdW5jdGlvbiB5dCh0KXtyZXR1cm4ibnVtYmVyIj09dHlwZW9mIHQ/YnQodCk6QXJyYXkuaXNBcnJheSh0KT90WzBdK3RbMV0vMWU5OnQgaW5zdGFuY2VvZiBEYXRlP2J0KHQuZ2V0VGltZSgpKTpVKCl9ZnVuY3Rpb24gYnQodCl7cmV0dXJuIHQ+OTk5OTk5OTk5OT90LzFlMzp0fWZ1bmN0aW9uIF90KHQpe2lmKGZ1bmN0aW9uKHQpe3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiB0LmdldFNwYW5KU09OfSh0KSlyZXR1cm4gdC5nZXRTcGFuSlNPTigpO2NvbnN0e3NwYW5JZDpuLHRyYWNlSWQ6ZX09dC5zcGFuQ29udGV4dCgpO2lmKGZ1bmN0aW9uKHQpe2NvbnN0IG49dDtyZXR1cm4hIShuLmF0dHJpYnV0ZXMmJm4uc3RhcnRUaW1lJiZuLm5hbWUmJm4uZW5kVGltZSYmbi5zdGF0dXMpfSh0KSl7Y29uc3R7YXR0cmlidXRlczpyLHN0YXJ0VGltZTpvLG5hbWU6cyxlbmRUaW1lOmksc3RhdHVzOmMsbGlua3M6dX09dDtyZXR1cm57c3Bhbl9pZDpuLHRyYWNlX2lkOmUsZGF0YTpyLGRlc2NyaXB0aW9uOnMscGFyZW50X3NwYW5faWQ6InBhcmVudFNwYW5JZCJpbiB0P3QucGFyZW50U3BhbklkOiJwYXJlbnRTcGFuQ29udGV4dCJpbiB0P3QucGFyZW50U3BhbkNvbnRleHQ/LnNwYW5JZDp2b2lkIDAsc3RhcnRfdGltZXN0YW1wOnl0KG8pLHRpbWVzdGFtcDp5dChpKXx8dm9pZCAwLHN0YXR1czp2dChjKSxvcDpyW3J0XSxvcmlnaW46cltvdF0sbGlua3M6Z3QodSl9fXJldHVybntzcGFuX2lkOm4sdHJhY2VfaWQ6ZSxzdGFydF90aW1lc3RhbXA6MCxkYXRhOnt9fX1mdW5jdGlvbiB2dCh0KXtpZih0JiZ0LmNvZGUhPT1zdClyZXR1cm4gdC5jb2RlPT09aXQ/Im9rIjp0Lm1lc3NhZ2V8fCJ1bmtub3duX2Vycm9yIn1jb25zdCB3dD0iX3NlbnRyeVJvb3RTcGFuIjtmdW5jdGlvbiBTdCh0KXtyZXR1cm4gdFt3dF18fHR9Y29uc3QgJHQ9NTAsRXQ9Ij8iLHh0PS9jYXB0dXJlTWVzc2FnZXxjYXB0dXJlRXhjZXB0aW9uLztmdW5jdGlvbiBOdCh0KXtyZXR1cm4gdFt0Lmxlbmd0aC0xXXx8e319Y29uc3QgQ3Q9Ijxhbm9ueW1vdXM+Ijtjb25zdCBUdD0icHJvZHVjdGlvbiIsa3Q9L15vKFxkKylcLi87ZnVuY3Rpb24ganQodCxuPSExKXtjb25zdHtob3N0OmUscGF0aDpyLHBhc3M6byxwb3J0OnMscHJvamVjdElkOmkscHJvdG9jb2w6YyxwdWJsaWNLZXk6dX09dDtyZXR1cm5gJHtjfTovLyR7dX0ke24mJm8/YDoke299YDoiIn1AJHtlfSR7cz9gOiR7c31gOiIifS8ke3I/YCR7cn0vYDpyfSR7aX1gfWNvbnN0IFJ0PSJfZnJvemVuRHNjIjtmdW5jdGlvbiBJdCh0LG4pe2NvbnN0IGU9bi5nZXRPcHRpb25zKCkse3B1YmxpY0tleTpyLGhvc3Q6b309bi5nZXREc24oKXx8e307bGV0IHM7ZS5vcmdJZD9zPVN0cmluZyhlLm9yZ0lkKTpvJiYocz1mdW5jdGlvbih0KXtjb25zdCBuPXQubWF0Y2goa3QpO3JldHVybiBuPy5bMV19KG8pKTtjb25zdCBpPXtlbnZpcm9ubWVudDplLmVudmlyb25tZW50fHxUdCxyZWxlYXNlOmUucmVsZWFzZSxwdWJsaWNfa2V5OnIsdHJhY2VfaWQ6dCxvcmdfaWQ6c307cmV0dXJuIG4uZW1pdCgiY3JlYXRlRHNjIixpKSxpfWZ1bmN0aW9uIE90KHQpe2NvbnN0IG49WCgpO2lmKCFuKXJldHVybnt9O2NvbnN0IGU9U3QodCkscj1fdChlKSxvPXIuZGF0YSxzPWUuc3BhbkNvbnRleHQoKS50cmFjZVN0YXRlLGk9cz8uZ2V0KCJzZW50cnkuc2FtcGxlX3JhdGUiKT8/b1tudF0/P29bZXRdO2Z1bmN0aW9uIGModCl7cmV0dXJuIm51bWJlciIhPXR5cGVvZiBpJiYic3RyaW5nIiE9dHlwZW9mIGl8fCh0LnNhbXBsZV9yYXRlPWAke2l9YCksdH1jb25zdCB1PWVbUnRdO2lmKHUpcmV0dXJuIGModSk7Y29uc3QgYT1zPy5nZXQoInNlbnRyeS5kc2MiKSxmPWEmJnB0KGEpO2lmKGYpcmV0dXJuIGMoZik7Y29uc3QgaD1JdCh0LnNwYW5Db250ZXh0KCkudHJhY2VJZCxuKSxwPW9bdHRdLGw9ci5kZXNjcmlwdGlvbjtyZXR1cm4idXJsIiE9PXAmJmwmJihoLnRyYW5zYWN0aW9uPWwpLGZ1bmN0aW9uKHQpe2lmKCJib29sZWFuIj09dHlwZW9mIF9fU0VOVFJZX1RSQUNJTkdfXyYmIV9fU0VOVFJZX1RSQUNJTkdfXylyZXR1cm4hMTtjb25zdCBuPXR8fFgoKT8uZ2V0T3B0aW9ucygpO3JldHVybiEoIW58fG51bGw9PW4udHJhY2VzU2FtcGxlUmF0ZSYmIW4udHJhY2VzU2FtcGxlcil9KCkmJihoLnNhbXBsZWQ9U3RyaW5nKGZ1bmN0aW9uKHQpe2NvbnN0e3RyYWNlRmxhZ3M6bn09dC5zcGFuQ29udGV4dCgpO3JldHVybiBuPT09ZHR9KGUpKSxoLnNhbXBsZV9yYW5kPXM/LmdldCgic2VudHJ5LnNhbXBsZV9yYW5kIik/P2F0KGUpLnNjb3BlPy5nZXRQcm9wYWdhdGlvbkNvbnRleHQoKS5zYW1wbGVSYW5kLnRvU3RyaW5nKCkpLGMoaCksbi5lbWl0KCJjcmVhdGVEc2MiLGgsZSksaH1mdW5jdGlvbiBEdCh0LG49MTAwLGU9MS8wKXt0cnl7cmV0dXJuIEF0KCIiLHQsbixlKX1jYXRjaCh0KXtyZXR1cm57RVJST1I6YCoqbm9uLXNlcmlhbGl6YWJsZSoqICgke3R9KWB9fX1mdW5jdGlvbiBBdCh0LG4sZT0xLzAscj0xLzAsbz1mdW5jdGlvbigpe2NvbnN0IHQ9bmV3IFdlYWtTZXQ7ZnVuY3Rpb24gbihuKXtyZXR1cm4hIXQuaGFzKG4pfHwodC5hZGQobiksITEpfWZ1bmN0aW9uIGUobil7dC5kZWxldGUobil9cmV0dXJuW24sZV19KCkpe2NvbnN0W3MsaV09bztpZihudWxsPT1ufHxbImJvb2xlYW4iLCJzdHJpbmciXS5pbmNsdWRlcyh0eXBlb2Ygbil8fCJudW1iZXIiPT10eXBlb2YgbiYmTnVtYmVyLmlzRmluaXRlKG4pKXJldHVybiBuO2NvbnN0IGM9ZnVuY3Rpb24odCxuKXt0cnl7aWYoImRvbWFpbiI9PT10JiZuJiYib2JqZWN0Ij09dHlwZW9mIG4mJm4uVSlyZXR1cm4iW0RvbWFpbl0iO2lmKCJkb21haW5FbWl0dGVyIj09PXQpcmV0dXJuIltEb21haW5FbWl0dGVyXSI7aWYoInVuZGVmaW5lZCIhPXR5cGVvZiBnbG9iYWwmJm49PT1nbG9iYWwpcmV0dXJuIltHbG9iYWxdIjtpZigidW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdyYmbj09PXdpbmRvdylyZXR1cm4iW1dpbmRvd10iO2lmKCJ1bmRlZmluZWQiIT10eXBlb2YgZG9jdW1lbnQmJm49PT1kb2N1bWVudClyZXR1cm4iW0RvY3VtZW50XSI7aWYoIm9iamVjdCI9PXR5cGVvZihlPW4pJiZudWxsIT09ZSYmKGUuX19pc1Z1ZXx8ZS5NKSlyZXR1cm4iW1Z1ZVZpZXdNb2RlbF0iO2lmKGZ1bmN0aW9uKHQpe3JldHVybiB2KHQpJiYibmF0aXZlRXZlbnQiaW4gdCYmInByZXZlbnREZWZhdWx0ImluIHQmJiJzdG9wUHJvcGFnYXRpb24iaW4gdH0obikpcmV0dXJuIltTeW50aGV0aWNFdmVudF0iO2lmKCJudW1iZXIiPT10eXBlb2YgbiYmIU51bWJlci5pc0Zpbml0ZShuKSlyZXR1cm5gWyR7bn1dYDtpZigiZnVuY3Rpb24iPT10eXBlb2YgbilyZXR1cm5gW0Z1bmN0aW9uOiAke2Z1bmN0aW9uKHQpe3RyeXtyZXR1cm4gdCYmImZ1bmN0aW9uIj09dHlwZW9mIHQmJnQubmFtZXx8Q3R9Y2F0Y2godCl7cmV0dXJuIEN0fX0obil9XWA7aWYoInN5bWJvbCI9PXR5cGVvZiBuKXJldHVybmBbJHtTdHJpbmcobil9XWA7aWYoImJpZ2ludCI9PXR5cGVvZiBuKXJldHVybmBbQmlnSW50OiAke1N0cmluZyhuKX1dYDtjb25zdCByPWZ1bmN0aW9uKHQpe2NvbnN0IG49T2JqZWN0LmdldFByb3RvdHlwZU9mKHQpO3JldHVybiBuPy5jb25zdHJ1Y3Rvcj9uLmNvbnN0cnVjdG9yLm5hbWU6Im51bGwgcHJvdG90eXBlIn0obik7cmV0dXJuL15IVE1MKFx3KilFbGVtZW50JC8udGVzdChyKT9gW0hUTUxFbGVtZW50OiAke3J9XWA6YFtvYmplY3QgJHtyfV1gfWNhdGNoKHQpe3JldHVybmAqKm5vbi1zZXJpYWxpemFibGUqKiAoJHt0fSlgfXZhciBlfSh0LG4pO2lmKCFjLnN0YXJ0c1dpdGgoIltvYmplY3QgIikpcmV0dXJuIGM7aWYobi5fX3NlbnRyeV9za2lwX25vcm1hbGl6YXRpb25fXylyZXR1cm4gbjtjb25zdCB1PSJudW1iZXIiPT10eXBlb2Ygbi5fX3NlbnRyeV9vdmVycmlkZV9ub3JtYWxpemF0aW9uX2RlcHRoX18/bi5fX3NlbnRyeV9vdmVycmlkZV9ub3JtYWxpemF0aW9uX2RlcHRoX186ZTtpZigwPT09dSlyZXR1cm4gYy5yZXBsYWNlKCJvYmplY3QgIiwiIik7aWYocyhuKSlyZXR1cm4iW0NpcmN1bGFyIH5dIjtjb25zdCBhPW47aWYoYSYmImZ1bmN0aW9uIj09dHlwZW9mIGEudG9KU09OKXRyeXtyZXR1cm4gQXQoIiIsYS50b0pTT04oKSx1LTEscixvKX1jYXRjaCh0KXt9Y29uc3QgZj1BcnJheS5pc0FycmF5KG4pP1tdOnt9O2xldCBoPTA7Y29uc3QgcD1SKG4pO2Zvcihjb25zdCB0IGluIHApe2lmKCFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocCx0KSljb250aW51ZTtpZihoPj1yKXtmW3RdPSJbTWF4UHJvcGVydGllcyB+XSI7YnJlYWt9Y29uc3Qgbj1wW3RdO2ZbdF09QXQodCxuLHUtMSxyLG8pLGgrK31yZXR1cm4gaShuKSxmfWZ1bmN0aW9uIFB0KHQsbil7Y29uc3QgZT1uLnJlcGxhY2UoL1xcL2csIi8iKS5yZXBsYWNlKC9bfFxce30oKVtcXV4kKyo/Ll0vZywiXFwkJiIpO2xldCByPXQ7dHJ5e3I9ZGVjb2RlVVJJKHQpfWNhdGNoKHQpe31yZXR1cm4gci5yZXBsYWNlKC9cXC9nLCIvIikucmVwbGFjZSgvd2VicGFjazpcLz8vZywiIikucmVwbGFjZShuZXcgUmVnRXhwKGAoZmlsZTovLyk/Lyoke2V9LypgLCJpZyIpLCJhcHA6Ly8vIil9ZnVuY3Rpb24gVXQodCxuPVtdKXtyZXR1cm5bdCxuXX1mdW5jdGlvbiBNdCh0LG4pe2NvbnN0IGU9dFsxXTtmb3IoY29uc3QgdCBvZiBlKXtpZihuKHQsdFswXS50eXBlKSlyZXR1cm4hMH1yZXR1cm4hMX1mdW5jdGlvbiBMdCh0KXtjb25zdCBuPW0obCk7cmV0dXJuIG4uZW5jb2RlUG9seWZpbGw/bi5lbmNvZGVQb2x5ZmlsbCh0KToobmV3IFRleHRFbmNvZGVyKS5lbmNvZGUodCl9ZnVuY3Rpb24gQnQodCl7Y29uc3RbbixlXT10O2xldCByPUpTT04uc3RyaW5naWZ5KG4pO2Z1bmN0aW9uIG8odCl7InN0cmluZyI9PXR5cGVvZiByP3I9InN0cmluZyI9PXR5cGVvZiB0P3IrdDpbTHQociksdF06ci5wdXNoKCJzdHJpbmciPT10eXBlb2YgdD9MdCh0KTp0KX1mb3IoY29uc3QgdCBvZiBlKXtjb25zdFtuLGVdPXQ7aWYobyhgXG4ke0pTT04uc3RyaW5naWZ5KG4pfVxuYCksInN0cmluZyI9PXR5cGVvZiBlfHxlIGluc3RhbmNlb2YgVWludDhBcnJheSlvKGUpO2Vsc2V7bGV0IHQ7dHJ5e3Q9SlNPTi5zdHJpbmdpZnkoZSl9Y2F0Y2gobil7dD1KU09OLnN0cmluZ2lmeShEdChlKSl9byh0KX19cmV0dXJuInN0cmluZyI9PXR5cGVvZiByP3I6ZnVuY3Rpb24odCl7Y29uc3Qgbj10LnJlZHVjZSgoKHQsbik9PnQrbi5sZW5ndGgpLDApLGU9bmV3IFVpbnQ4QXJyYXkobik7bGV0IHI9MDtmb3IoY29uc3QgbiBvZiB0KWUuc2V0KG4scikscis9bi5sZW5ndGg7cmV0dXJuIGV9KHIpfWNvbnN0IEd0PXtzZXNzaW9uOiJzZXNzaW9uIixzZXNzaW9uczoic2Vzc2lvbiIsYXR0YWNobWVudDoiYXR0YWNobWVudCIsdHJhbnNhY3Rpb246InRyYW5zYWN0aW9uIixldmVudDoiZXJyb3IiLGNsaWVudF9yZXBvcnQ6ImludGVybmFsIix1c2VyX3JlcG9ydDoiZGVmYXVsdCIscHJvZmlsZToicHJvZmlsZSIscHJvZmlsZV9jaHVuazoicHJvZmlsZSIscmVwbGF5X2V2ZW50OiJyZXBsYXkiLHJlcGxheV9yZWNvcmRpbmc6InJlcGxheSIsY2hlY2tfaW46Im1vbml0b3IiLGZlZWRiYWNrOiJmZWVkYmFjayIsc3Bhbjoic3BhbiIscmF3X3NlY3VyaXR5OiJzZWN1cml0eSIsbG9nOiJsb2dfaXRlbSJ9O2Z1bmN0aW9uIEp0KHQpe2lmKCF0Py5zZGspcmV0dXJuO2NvbnN0e25hbWU6bix2ZXJzaW9uOmV9PXQuc2RrO3JldHVybntuYW1lOm4sdmVyc2lvbjplfX1mdW5jdGlvbiB6dCh0LG4sZSxyKXtjb25zdCBvPUp0KGUpLHM9dC50eXBlJiYicmVwbGF5X2V2ZW50IiE9PXQudHlwZT90LnR5cGU6ImV2ZW50IjshZnVuY3Rpb24odCxuKXtuJiYodC5zZGs9dC5zZGt8fHt9LHQuc2RrLm5hbWU9dC5zZGsubmFtZXx8bi5uYW1lLHQuc2RrLnZlcnNpb249dC5zZGsudmVyc2lvbnx8bi52ZXJzaW9uLHQuc2RrLmludGVncmF0aW9ucz1bLi4udC5zZGsuaW50ZWdyYXRpb25zfHxbXSwuLi5uLmludGVncmF0aW9uc3x8W11dLHQuc2RrLnBhY2thZ2VzPVsuLi50LnNkay5wYWNrYWdlc3x8W10sLi4ubi5wYWNrYWdlc3x8W11dKX0odCxlPy5zZGspO2NvbnN0IGk9ZnVuY3Rpb24odCxuLGUscil7Y29uc3Qgbz10LnNka1Byb2Nlc3NpbmdNZXRhZGF0YT8uZHluYW1pY1NhbXBsaW5nQ29udGV4dDtyZXR1cm57ZXZlbnRfaWQ6dC5ldmVudF9pZCxzZW50X2F0OihuZXcgRGF0ZSkudG9JU09TdHJpbmcoKSwuLi5uJiZ7c2RrOm59LC4uLiEhZSYmciYme2RzbjpqdChyKX0sLi4ubyYme3RyYWNlOm99fX0odCxvLHIsbik7ZGVsZXRlIHQuc2RrUHJvY2Vzc2luZ01ldGFkYXRhO3JldHVybiBVdChpLFtbe3R5cGU6c30sdF1dKX1jb25zdCBIdD0iX19TRU5UUllfU1VQUFJFU1NfVFJBQ0lOR19fIjtmdW5jdGlvbiBGdCh0KXtjb25zdCBuPVEoZCgpKTtyZXR1cm4gbi5zdXBwcmVzc1RyYWNpbmc/bi5zdXBwcmVzc1RyYWNpbmcodCk6ZnVuY3Rpb24oLi4udCl7Y29uc3Qgbj1RKGQoKSk7aWYoMj09PXQubGVuZ3RoKXtjb25zdFtlLHJdPXQ7cmV0dXJuIGU/bi53aXRoU2V0U2NvcGUoZSxyKTpuLndpdGhTY29wZShyKX1yZXR1cm4gbi53aXRoU2NvcGUodFswXSl9KChuPT4obi5zZXRTREtQcm9jZXNzaW5nTWV0YWRhdGEoe1tIdF06ITB9KSx0KCkpKSl9dmFyIFd0O2Z1bmN0aW9uIFl0KHQpe3JldHVybiBuZXcgS3QoKG49PntuKHQpfSkpfSFmdW5jdGlvbih0KXt0W3QuUEVORElORz0wXT0iUEVORElORyI7dFt0LlJFU09MVkVEPTFdPSJSRVNPTFZFRCI7dFt0LlJFSkVDVEVEPTJdPSJSRUpFQ1RFRCJ9KFd0fHwoV3Q9e30pKTtjbGFzcyBLdHtjb25zdHJ1Y3Rvcih0KXt0aGlzLkw9V3QuUEVORElORyx0aGlzLkI9W10sdGhpcy5HKHQpfXRoZW4odCxuKXtyZXR1cm4gbmV3IEt0KCgoZSxyKT0+e3RoaXMuQi5wdXNoKFshMSxuPT57aWYodCl0cnl7ZSh0KG4pKX1jYXRjaCh0KXtyKHQpfWVsc2UgZShuKX0sdD0+e2lmKG4pdHJ5e2Uobih0KSl9Y2F0Y2godCl7cih0KX1lbHNlIHIodCl9XSksdGhpcy5KKCl9KSl9Y2F0Y2godCl7cmV0dXJuIHRoaXMudGhlbigodD0+dCksdCl9ZmluYWxseSh0KXtyZXR1cm4gbmV3IEt0KCgobixlKT0+e2xldCByLG87cmV0dXJuIHRoaXMudGhlbigobj0+e289ITEscj1uLHQmJnQoKX0pLChuPT57bz0hMCxyPW4sdCYmdCgpfSkpLnRoZW4oKCgpPT57bz9lKHIpOm4ocil9KSl9KSl9Sigpe2lmKHRoaXMuTD09PVd0LlBFTkRJTkcpcmV0dXJuO2NvbnN0IHQ9dGhpcy5CLnNsaWNlKCk7dGhpcy5CPVtdLHQuZm9yRWFjaCgodD0+e3RbMF18fCh0aGlzLkw9PT1XdC5SRVNPTFZFRCYmdFsxXSh0aGlzLkgpLHRoaXMuTD09PVd0LlJFSkVDVEVEJiZ0WzJdKHRoaXMuSCksdFswXT0hMCl9KSl9Ryh0KXtjb25zdCBuPSh0LG4pPT57dGhpcy5MPT09V3QuUEVORElORyYmKHcobik/bi50aGVuKGUscik6KHRoaXMuTD10LHRoaXMuSD1uLHRoaXMuSigpKSl9LGU9dD0+e24oV3QuUkVTT0xWRUQsdCl9LHI9dD0+e24oV3QuUkVKRUNURUQsdCl9O3RyeXt0KGUscil9Y2F0Y2godCl7cih0KX19fWZ1bmN0aW9uIFZ0KHQsbil7Y29uc3R7ZmluZ2VycHJpbnQ6ZSxzcGFuOnIsYnJlYWRjcnVtYnM6byxzZGtQcm9jZXNzaW5nTWV0YWRhdGE6c309bjshZnVuY3Rpb24odCxuKXtjb25zdHtleHRyYTplLHRhZ3M6cix1c2VyOm8sY29udGV4dHM6cyxsZXZlbDppLHRyYW5zYWN0aW9uTmFtZTpjfT1uO09iamVjdC5rZXlzKGUpLmxlbmd0aCYmKHQuZXh0cmE9ey4uLmUsLi4udC5leHRyYX0pO09iamVjdC5rZXlzKHIpLmxlbmd0aCYmKHQudGFncz17Li4uciwuLi50LnRhZ3N9KTtPYmplY3Qua2V5cyhvKS5sZW5ndGgmJih0LnVzZXI9ey4uLm8sLi4udC51c2VyfSk7T2JqZWN0LmtleXMocykubGVuZ3RoJiYodC5jb250ZXh0cz17Li4ucywuLi50LmNvbnRleHRzfSk7aSYmKHQubGV2ZWw9aSk7YyYmInRyYW5zYWN0aW9uIiE9PXQudHlwZSYmKHQudHJhbnNhY3Rpb249Yyl9KHQsbiksciYmZnVuY3Rpb24odCxuKXt0LmNvbnRleHRzPXt0cmFjZTptdChuKSwuLi50LmNvbnRleHRzfSx0LnNka1Byb2Nlc3NpbmdNZXRhZGF0YT17ZHluYW1pY1NhbXBsaW5nQ29udGV4dDpPdChuKSwuLi50LnNka1Byb2Nlc3NpbmdNZXRhZGF0YX07Y29uc3QgZT1TdChuKSxyPV90KGUpLmRlc2NyaXB0aW9uO3ImJiF0LnRyYW5zYWN0aW9uJiYidHJhbnNhY3Rpb24iPT09dC50eXBlJiYodC50cmFuc2FjdGlvbj1yKX0odCxyKSxmdW5jdGlvbih0LG4pe3QuZmluZ2VycHJpbnQ9dC5maW5nZXJwcmludD9BcnJheS5pc0FycmF5KHQuZmluZ2VycHJpbnQpP3QuZmluZ2VycHJpbnQ6W3QuZmluZ2VycHJpbnRdOltdLG4mJih0LmZpbmdlcnByaW50PXQuZmluZ2VycHJpbnQuY29uY2F0KG4pKTt0LmZpbmdlcnByaW50Lmxlbmd0aHx8ZGVsZXRlIHQuZmluZ2VycHJpbnR9KHQsZSksZnVuY3Rpb24odCxuKXtjb25zdCBlPVsuLi50LmJyZWFkY3J1bWJzfHxbXSwuLi5uXTt0LmJyZWFkY3J1bWJzPWUubGVuZ3RoP2U6dm9pZCAwfSh0LG8pLGZ1bmN0aW9uKHQsbil7dC5zZGtQcm9jZXNzaW5nTWV0YWRhdGE9ey4uLnQuc2RrUHJvY2Vzc2luZ01ldGFkYXRhLC4uLm59fSh0LHMpfWNvbnN0IFp0PSI3Ijtjb25zdCBxdD1TeW1ib2wuZm9yKCJTZW50cnlCdWZmZXJGdWxsRXJyb3IiKTtmdW5jdGlvbiBRdCh0KXtjb25zdCBuPVtdO2Z1bmN0aW9uIGUodCl7cmV0dXJuIG4uc3BsaWNlKG4uaW5kZXhPZih0KSwxKVswXXx8UHJvbWlzZS5yZXNvbHZlKHZvaWQgMCl9cmV0dXJueyQ6bixhZGQ6ZnVuY3Rpb24ocil7aWYoISh2b2lkIDA9PT10fHxuLmxlbmd0aDx0KSlyZXR1cm4gbz1xdCxuZXcgS3QoKCh0LG4pPT57bihvKX0pKTt2YXIgbztjb25zdCBzPXIoKTtyZXR1cm4tMT09PW4uaW5kZXhPZihzKSYmbi5wdXNoKHMpLHMudGhlbigoKCk9PmUocykpKS50aGVuKG51bGwsKCgpPT5lKHMpLnRoZW4obnVsbCwoKCk9Pnt9KSkpKSxzfSxkcmFpbjpmdW5jdGlvbih0KXtyZXR1cm4gbmV3IEt0KCgoZSxyKT0+e2xldCBvPW4ubGVuZ3RoO2lmKCFvKXJldHVybiBlKCEwKTtjb25zdCBzPXNldFRpbWVvdXQoKCgpPT57dCYmdD4wJiZlKCExKX0pLHQpO24uZm9yRWFjaCgodD0+e1l0KHQpLnRoZW4oKCgpPT57LS1vfHwoY2xlYXJUaW1lb3V0KHMpLGUoITApKX0pLHIpfSkpfSkpfX19Y29uc3QgWHQ9NmU0O2Z1bmN0aW9uIHRuKHQse3N0YXR1c0NvZGU6bixoZWFkZXJzOmV9LHI9RGF0ZS5ub3coKSl7Y29uc3Qgbz17Li4udH0scz1lPy5bIngtc2VudHJ5LXJhdGUtbGltaXRzIl0saT1lPy5bInJldHJ5LWFmdGVyIl07aWYocylmb3IoY29uc3QgdCBvZiBzLnRyaW0oKS5zcGxpdCgiLCIpKXtjb25zdFtuLGUsLCxzXT10LnNwbGl0KCI6Iiw1KSxpPXBhcnNlSW50KG4sMTApLGM9MWUzKihpc05hTihpKT82MDppKTtpZihlKWZvcihjb25zdCB0IG9mIGUuc3BsaXQoIjsiKSkibWV0cmljX2J1Y2tldCI9PT10JiZzJiYhcy5zcGxpdCgiOyIpLmluY2x1ZGVzKCJjdXN0b20iKXx8KG9bdF09citjKTtlbHNlIG8uYWxsPXIrY31lbHNlIGk/by5hbGw9citmdW5jdGlvbih0LG49RGF0ZS5ub3coKSl7Y29uc3QgZT1wYXJzZUludChgJHt0fWAsMTApO2lmKCFpc05hTihlKSlyZXR1cm4gMWUzKmU7Y29uc3Qgcj1EYXRlLnBhcnNlKGAke3R9YCk7cmV0dXJuIGlzTmFOKHIpP1h0OnItbn0oaSxyKTo0Mjk9PT1uJiYoby5hbGw9cis2ZTQpO3JldHVybiBvfWNvbnN0IG5uPTY0O2Z1bmN0aW9uIGVuKHQsbixlPVF0KHQuYnVmZmVyU2l6ZXx8bm4pKXtsZXQgcj17fTtyZXR1cm57c2VuZDpmdW5jdGlvbih0KXtjb25zdCBvPVtdO2lmKE10KHQsKCh0LG4pPT57Y29uc3QgZT1mdW5jdGlvbih0KXtyZXR1cm4gR3RbdF19KG4pOyhmdW5jdGlvbih0LG4sZT1EYXRlLm5vdygpKXtyZXR1cm4gZnVuY3Rpb24odCxuKXtyZXR1cm4gdFtuXXx8dC5hbGx8fDB9KHQsbik+ZX0pKHIsZSl8fG8ucHVzaCh0KX0pKSwwPT09by5sZW5ndGgpcmV0dXJuIFl0KHt9KTtjb25zdCBzPVV0KHRbMF0sbyksaT10PT57TXQocywoKHQsbik9Pnt9KSl9O3JldHVybiBlLmFkZCgoKCk9Pm4oe2JvZHk6QnQocyl9KS50aGVuKCh0PT4odm9pZCAwIT09dC5zdGF0dXNDb2RlJiYodC5zdGF0dXNDb2RlPDIwMHx8dC5zdGF0dXNDb2RlPj0zMDApJiZoJiZrLndhcm4oYFNlbnRyeSByZXNwb25kZWQgd2l0aCBzdGF0dXMgY29kZSAke3Quc3RhdHVzQ29kZX0gdG8gc2VudCBldmVudC5gKSxyPXRuKHIsdCksdCkpLCh0PT57dGhyb3cgaSgpLGgmJmsuZXJyb3IoIkVuY291bnRlcmVkIGVycm9yIHJ1bm5pbmcgdHJhbnNwb3J0IHJlcXVlc3Q6Iix0KSx0fSkpKSkudGhlbigodD0+dCksKHQ9PntpZih0PT09cXQpcmV0dXJuIGgmJmsuZXJyb3IoIlNraXBwZWQgc2VuZGluZyBldmVudCBiZWNhdXNlIGJ1ZmZlciBpcyBmdWxsLiIpLGkoKSxZdCh7fSk7dGhyb3cgdH0pKX0sZmx1c2g6dD0+ZS5kcmFpbih0KX19Y29uc3Qgcm49L14oXFMrOlxcfFwvPykoW1xzXFNdKj8pKCg/OlwuezEsMn18W14vXFxdKz98KShcLlteLi9cXF0qfCkpKD86Wy9cXF0qKSQvO2Z1bmN0aW9uIG9uKHQpe2NvbnN0IG49ZnVuY3Rpb24odCl7Y29uc3Qgbj10Lmxlbmd0aD4xMDI0P2A8dHJ1bmNhdGVkPiR7dC5zbGljZSgtMTAyNCl9YDp0LGU9cm4uZXhlYyhuKTtyZXR1cm4gZT9lLnNsaWNlKDEpOltdfSh0KSxlPW5bMF18fCIiO2xldCByPW5bMV07cmV0dXJuIGV8fHI/KHImJihyPXIuc2xpY2UoMCxyLmxlbmd0aC0xKSksZStyKToiLiJ9ZnVuY3Rpb24gc24odCxuPSExKXtyZXR1cm4hKG58fHQmJiF0LnN0YXJ0c1dpdGgoIi8iKSYmIXQubWF0Y2goL15bQS1aXTovKSYmIXQuc3RhcnRzV2l0aCgiLiIpJiYhdC5tYXRjaCgvXlthLXpBLVpdKFthLXpBLVowLTkuXC0rXSkqOlwvXC8vKSkmJnZvaWQgMCE9PXQmJiF0LmluY2x1ZGVzKCJub2RlX21vZHVsZXMvIil9Y29uc3QgY249U3ltYm9sKCJBZ2VudEJhc2VJbnRlcm5hbFN0YXRlIik7Y2xhc3MgdW4gZXh0ZW5kcyBzLkFnZW50e2NvbnN0cnVjdG9yKHQpe3N1cGVyKHQpLHRoaXNbY25dPXt9fWlzU2VjdXJlRW5kcG9pbnQodCl7aWYodCl7aWYoImJvb2xlYW4iPT10eXBlb2YgdC5zZWN1cmVFbmRwb2ludClyZXR1cm4gdC5zZWN1cmVFbmRwb2ludDtpZigic3RyaW5nIj09dHlwZW9mIHQucHJvdG9jb2wpcmV0dXJuImh0dHBzOiI9PT10LnByb3RvY29sfWNvbnN0e3N0YWNrOm59PW5ldyBFcnJvcjtyZXR1cm4ic3RyaW5nIj09dHlwZW9mIG4mJm4uc3BsaXQoIlxuIikuc29tZSgodD0+LTEhPT10LmluZGV4T2YoIihodHRwcy5qczoiKXx8LTEhPT10LmluZGV4T2YoIm5vZGU6aHR0cHM6IikpKX1jcmVhdGVTb2NrZXQodCxuLGUpe2NvbnN0IHI9ey4uLm4sc2VjdXJlRW5kcG9pbnQ6dGhpcy5pc1NlY3VyZUVuZHBvaW50KG4pfTtQcm9taXNlLnJlc29sdmUoKS50aGVuKCgoKT0+dGhpcy5jb25uZWN0KHQscikpKS50aGVuKChvPT57aWYobyBpbnN0YW5jZW9mIHMuQWdlbnQpcmV0dXJuIG8uYWRkUmVxdWVzdCh0LHIpO3RoaXNbY25dLmN1cnJlbnRTb2NrZXQ9byxzdXBlci5jcmVhdGVTb2NrZXQodCxuLGUpfSksZSl9Y3JlYXRlQ29ubmVjdGlvbigpe2NvbnN0IHQ9dGhpc1tjbl0uY3VycmVudFNvY2tldDtpZih0aGlzW2NuXS5jdXJyZW50U29ja2V0PXZvaWQgMCwhdCl0aHJvdyBuZXcgRXJyb3IoIk5vIHNvY2tldCB3YXMgcmV0dXJuZWQgaW4gdGhlIGBjb25uZWN0KClgIGZ1bmN0aW9uIik7cmV0dXJuIHR9Z2V0IGRlZmF1bHRQb3J0KCl7cmV0dXJuIHRoaXNbY25dLmRlZmF1bHRQb3J0Pz8oImh0dHBzOiI9PT10aGlzLnByb3RvY29sPzQ0Mzo4MCl9c2V0IGRlZmF1bHRQb3J0KHQpe3RoaXNbY25dJiYodGhpc1tjbl0uZGVmYXVsdFBvcnQ9dCl9Z2V0IHByb3RvY29sKCl7cmV0dXJuIHRoaXNbY25dLnByb3RvY29sPz8odGhpcy5pc1NlY3VyZUVuZHBvaW50KCk/Imh0dHBzOiI6Imh0dHA6Iil9c2V0IHByb3RvY29sKHQpe3RoaXNbY25dJiYodGhpc1tjbl0ucHJvdG9jb2w9dCl9fWZ1bmN0aW9uIGFuKC4uLnQpe2subG9nKCJbaHR0cHMtcHJveHktYWdlbnQ6cGFyc2UtcHJveHktcmVzcG9uc2VdIiwuLi50KX1mdW5jdGlvbiBmbih0KXtyZXR1cm4gbmV3IFByb21pc2UoKChuLGUpPT57bGV0IHI9MDtjb25zdCBvPVtdO2Z1bmN0aW9uIHMoKXtjb25zdCBjPXQucmVhZCgpO2M/ZnVuY3Rpb24oYyl7by5wdXNoKGMpLHIrPWMubGVuZ3RoO2NvbnN0IHU9QnVmZmVyLmNvbmNhdChvLHIpLGE9dS5pbmRleE9mKCJcclxuXHJcbiIpO2lmKC0xPT09YSlyZXR1cm4gYW4oImhhdmUgbm90IHJlY2VpdmVkIGVuZCBvZiBIVFRQIGhlYWRlcnMgeWV0Li4uIiksdm9pZCBzKCk7Y29uc3QgZj11LnN1YmFycmF5KDAsYSkudG9TdHJpbmcoImFzY2lpIikuc3BsaXQoIlxyXG4iKSxoPWYuc2hpZnQoKTtpZighaClyZXR1cm4gdC5kZXN0cm95KCksZShuZXcgRXJyb3IoIk5vIGhlYWRlciByZWNlaXZlZCBmcm9tIHByb3h5IENPTk5FQ1QgcmVzcG9uc2UiKSk7Y29uc3QgcD1oLnNwbGl0KCIgIiksbD0rKHBbMV18fDApLGQ9cC5zbGljZSgyKS5qb2luKCIgIiksbT17fTtmb3IoY29uc3QgbiBvZiBmKXtpZighbiljb250aW51ZTtjb25zdCByPW4uaW5kZXhPZigiOiIpO2lmKC0xPT09cilyZXR1cm4gdC5kZXN0cm95KCksZShuZXcgRXJyb3IoYEludmFsaWQgaGVhZGVyIGZyb20gcHJveHkgQ09OTkVDVCByZXNwb25zZTogIiR7bn0iYCkpO2NvbnN0IG89bi5zbGljZSgwLHIpLnRvTG93ZXJDYXNlKCkscz1uLnNsaWNlKHIrMSkudHJpbVN0YXJ0KCksaT1tW29dOyJzdHJpbmciPT10eXBlb2YgaT9tW29dPVtpLHNdOkFycmF5LmlzQXJyYXkoaSk/aS5wdXNoKHMpOm1bb109c31hbigiZ290IHByb3h5IHNlcnZlciByZXNwb25zZTogJW8gJW8iLGgsbSksaSgpLG4oe2Nvbm5lY3Q6e3N0YXR1c0NvZGU6bCxzdGF0dXNUZXh0OmQsaGVhZGVyczptfSxidWZmZXJlZDp1fSl9KGMpOnQub25jZSgicmVhZGFibGUiLHMpfWZ1bmN0aW9uIGkoKXt0LnJlbW92ZUxpc3RlbmVyKCJlbmQiLGMpLHQucmVtb3ZlTGlzdGVuZXIoImVycm9yIix1KSx0LnJlbW92ZUxpc3RlbmVyKCJyZWFkYWJsZSIscyl9ZnVuY3Rpb24gYygpe2koKSxhbigib25lbmQiKSxlKG5ldyBFcnJvcigiUHJveHkgY29ubmVjdGlvbiBlbmRlZCBiZWZvcmUgcmVjZWl2aW5nIENPTk5FQ1QgcmVzcG9uc2UiKSl9ZnVuY3Rpb24gdSh0KXtpKCksYW4oIm9uZXJyb3IgJW8iLHQpLGUodCl9dC5vbigiZXJyb3IiLHUpLHQub24oImVuZCIsYykscygpfSkpfWZ1bmN0aW9uIGhuKC4uLnQpe2subG9nKCJbaHR0cHMtcHJveHktYWdlbnRdIiwuLi50KX1jbGFzcyBwbiBleHRlbmRzIHVue3N0YXRpYyBfX2luaXRTdGF0aWMoKXt0aGlzLnByb3RvY29scz1bImh0dHAiLCJodHRwcyJdfWNvbnN0cnVjdG9yKHQsbil7c3VwZXIobiksdGhpcy5vcHRpb25zPXt9LHRoaXMucHJveHk9InN0cmluZyI9PXR5cGVvZiB0P25ldyBVUkwodCk6dCx0aGlzLnByb3h5SGVhZGVycz1uPy5oZWFkZXJzPz97fSxobigiQ3JlYXRpbmcgbmV3IEh0dHBzUHJveHlBZ2VudCBpbnN0YW5jZTogJW8iLHRoaXMucHJveHkuaHJlZik7Y29uc3QgZT0odGhpcy5wcm94eS5ob3N0bmFtZXx8dGhpcy5wcm94eS5ob3N0KS5yZXBsYWNlKC9eXFt8XF0kL2csIiIpLHI9dGhpcy5wcm94eS5wb3J0P3BhcnNlSW50KHRoaXMucHJveHkucG9ydCwxMCk6Imh0dHBzOiI9PT10aGlzLnByb3h5LnByb3RvY29sPzQ0Mzo4MDt0aGlzLmNvbm5lY3RPcHRzPXtBTFBOUHJvdG9jb2xzOlsiaHR0cC8xLjEiXSwuLi5uP2RuKG4sImhlYWRlcnMiKTpudWxsLGhvc3Q6ZSxwb3J0OnJ9fWFzeW5jIGNvbm5lY3QodCxuKXtjb25zdHtwcm94eTplfT10aGlzO2lmKCFuLmhvc3QpdGhyb3cgbmV3IFR5cGVFcnJvcignTm8gImhvc3QiIHByb3ZpZGVkJyk7bGV0IHI7aWYoImh0dHBzOiI9PT1lLnByb3RvY29sKXtobigiQ3JlYXRpbmcgYHRscy5Tb2NrZXRgOiAlbyIsdGhpcy5jb25uZWN0T3B0cyk7Y29uc3QgdD10aGlzLmNvbm5lY3RPcHRzLnNlcnZlcm5hbWV8fHRoaXMuY29ubmVjdE9wdHMuaG9zdDtyPWYuY29ubmVjdCh7Li4udGhpcy5jb25uZWN0T3B0cyxzZXJ2ZXJuYW1lOnQmJmEuaXNJUCh0KT92b2lkIDA6dH0pfWVsc2UgaG4oIkNyZWF0aW5nIGBuZXQuU29ja2V0YDogJW8iLHRoaXMuY29ubmVjdE9wdHMpLHI9YS5jb25uZWN0KHRoaXMuY29ubmVjdE9wdHMpO2NvbnN0IG89ImZ1bmN0aW9uIj09dHlwZW9mIHRoaXMucHJveHlIZWFkZXJzP3RoaXMucHJveHlIZWFkZXJzKCk6ey4uLnRoaXMucHJveHlIZWFkZXJzfSxzPWEuaXNJUHY2KG4uaG9zdCk/YFske24uaG9zdH1dYDpuLmhvc3Q7bGV0IGk9YENPTk5FQ1QgJHtzfToke24ucG9ydH0gSFRUUC8xLjFcclxuYDtpZihlLnVzZXJuYW1lfHxlLnBhc3N3b3JkKXtjb25zdCB0PWAke2RlY29kZVVSSUNvbXBvbmVudChlLnVzZXJuYW1lKX06JHtkZWNvZGVVUklDb21wb25lbnQoZS5wYXNzd29yZCl9YDtvWyJQcm94eS1BdXRob3JpemF0aW9uIl09YEJhc2ljICR7QnVmZmVyLmZyb20odCkudG9TdHJpbmcoImJhc2U2NCIpfWB9by5Ib3N0PWAke3N9OiR7bi5wb3J0fWAsb1siUHJveHktQ29ubmVjdGlvbiJdfHwob1siUHJveHktQ29ubmVjdGlvbiJdPXRoaXMua2VlcEFsaXZlPyJLZWVwLUFsaXZlIjoiY2xvc2UiKTtmb3IoY29uc3QgdCBvZiBPYmplY3Qua2V5cyhvKSlpKz1gJHt0fTogJHtvW3RdfVxyXG5gO2NvbnN0IGM9Zm4ocik7ci53cml0ZShgJHtpfVxyXG5gKTtjb25zdHtjb25uZWN0OnUsYnVmZmVyZWQ6aH09YXdhaXQgYztpZih0LmVtaXQoInByb3h5Q29ubmVjdCIsdSksdGhpcy5lbWl0KCJwcm94eUNvbm5lY3QiLHUsdCksMjAwPT09dS5zdGF0dXNDb2RlKXtpZih0Lm9uY2UoInNvY2tldCIsbG4pLG4uc2VjdXJlRW5kcG9pbnQpe2huKCJVcGdyYWRpbmcgc29ja2V0IGNvbm5lY3Rpb24gdG8gVExTIik7Y29uc3QgdD1uLnNlcnZlcm5hbWV8fG4uaG9zdDtyZXR1cm4gZi5jb25uZWN0KHsuLi5kbihuLCJob3N0IiwicGF0aCIsInBvcnQiKSxzb2NrZXQ6cixzZXJ2ZXJuYW1lOmEuaXNJUCh0KT92b2lkIDA6dH0pfXJldHVybiByfXIuZGVzdHJveSgpO2NvbnN0IHA9bmV3IGEuU29ja2V0KHt3cml0YWJsZTohMX0pO3JldHVybiBwLnJlYWRhYmxlPSEwLHQub25jZSgic29ja2V0IiwodD0+e2huKCJSZXBsYXlpbmcgcHJveHkgYnVmZmVyIGZvciBmYWlsZWQgcmVxdWVzdCIpLHQucHVzaChoKSx0LnB1c2gobnVsbCl9KSkscH19ZnVuY3Rpb24gbG4odCl7dC5yZXN1bWUoKX1mdW5jdGlvbiBkbih0LC4uLm4pe2NvbnN0IGU9e307bGV0IHI7Zm9yKHIgaW4gdCluLmluY2x1ZGVzKHIpfHwoZVtyXT10W3JdKTtyZXR1cm4gZX1wbi5fX2luaXRTdGF0aWMoKTtjb25zdCBtbj0zMjc2ODtmdW5jdGlvbiBnbih0KXtyZXR1cm4gdC5yZXBsYWNlKC9eW0EtWl06LywiIikucmVwbGFjZSgvXFwvZywiLyIpfWNvbnN0IHluPW47bGV0IGJuLF9uPTAsdm49e307ZnVuY3Rpb24gd24odCl7eW4uZGVidWcmJmNvbnNvbGUubG9nKGBbQU5SIFdvcmtlcl0gJHt0fWApfXZhciBTbiwkbixFbjtjb25zdCB4bj1mdW5jdGlvbih0KXtsZXQgbjt0cnl7bj1uZXcgVVJMKHQudXJsKX1jYXRjaChuKXtyZXR1cm4gVCgoKCk9Pntjb25zb2xlLndhcm4oIltAc2VudHJ5L25vZGVdOiBJbnZhbGlkIGRzbiBvciB0dW5uZWwgb3B0aW9uLCB3aWxsIG5vdCBzZW5kIGFueSBldmVudHMuIFRoZSB0dW5uZWwgb3B0aW9uIG11c3QgYmUgYSBmdWxsIFVSTCB3aGVuIHVzZWQuIil9KSksZW4odCwoKCk9PlByb21pc2UucmVzb2x2ZSh7fSkpKX1jb25zdCBlPSJodHRwczoiPT09bi5wcm90b2NvbCxyPWZ1bmN0aW9uKHQsbil7Y29uc3R7bm9fcHJveHk6ZX09cHJvY2Vzcy5lbnYscj1lPy5zcGxpdCgiLCIpLnNvbWUoKG49PnQuaG9zdC5lbmRzV2l0aChuKXx8dC5ob3N0bmFtZS5lbmRzV2l0aChuKSkpO3JldHVybiByP3ZvaWQgMDpufShuLHQucHJveHl8fChlP3Byb2Nlc3MuZW52Lmh0dHBzX3Byb3h5OnZvaWQgMCl8fHByb2Nlc3MuZW52Lmh0dHBfcHJveHkpLG89ZT9pOnMsYT12b2lkIDAhPT10LmtlZXBBbGl2ZSYmdC5rZWVwQWxpdmUsZj1yP25ldyBwbihyKTpuZXcgby5BZ2VudCh7a2VlcEFsaXZlOmEsbWF4U29ja2V0czozMCx0aW1lb3V0OjJlM30pLGg9ZnVuY3Rpb24odCxuLGUpe2NvbnN0e2hvc3RuYW1lOnIscGF0aG5hbWU6byxwb3J0OnMscHJvdG9jb2w6aSxzZWFyY2g6YX09bmV3IFVSTCh0LnVybCk7cmV0dXJuIGZ1bmN0aW9uKGYpe3JldHVybiBuZXcgUHJvbWlzZSgoKGgscCk9PntGdCgoKCk9PntsZXQgbD1mdW5jdGlvbih0KXtyZXR1cm4gbmV3IGMoe3JlYWQoKXt0aGlzLnB1c2godCksdGhpcy5wdXNoKG51bGwpfX0pfShmLmJvZHkpO2NvbnN0IGQ9ey4uLnQuaGVhZGVyc307Zi5ib2R5Lmxlbmd0aD5tbiYmKGRbImNvbnRlbnQtZW5jb2RpbmciXT0iZ3ppcCIsbD1sLnBpcGUodSgpKSk7Y29uc3QgbT1uLnJlcXVlc3Qoe21ldGhvZDoiUE9TVCIsYWdlbnQ6ZSxoZWFkZXJzOmQsaG9zdG5hbWU6cixwYXRoOmAke299JHthfWAscG9ydDpzLHByb3RvY29sOmksY2E6dC5jYUNlcnRzfSwodD0+e3Qub24oImRhdGEiLCgoKT0+e30pKSx0Lm9uKCJlbmQiLCgoKT0+e30pKSx0LnNldEVuY29kaW5nKCJ1dGY4Iik7Y29uc3Qgbj10LmhlYWRlcnNbInJldHJ5LWFmdGVyIl0/P251bGwsZT10LmhlYWRlcnNbIngtc2VudHJ5LXJhdGUtbGltaXRzIl0/P251bGw7aCh7c3RhdHVzQ29kZTp0LnN0YXR1c0NvZGUsaGVhZGVyczp7InJldHJ5LWFmdGVyIjpuLCJ4LXNlbnRyeS1yYXRlLWxpbWl0cyI6QXJyYXkuaXNBcnJheShlKT9lWzBdfHxudWxsOmV9fSl9KSk7bS5vbigiZXJyb3IiLHApLGwucGlwZShtKX0pKX0pKX19KHQsdC5odHRwTW9kdWxlPz9vLGYpO3JldHVybiBlbih0LGgpfSh7dXJsOihTbj15bi5kc24sJG49eW4udHVubmVsLEVuPXluLnNka01ldGFkYXRhLnNkaywkbnx8YCR7ZnVuY3Rpb24odCl7cmV0dXJuYCR7ZnVuY3Rpb24odCl7Y29uc3Qgbj10LnByb3RvY29sP2Ake3QucHJvdG9jb2x9OmA6IiIsZT10LnBvcnQ/YDoke3QucG9ydH1gOiIiO3JldHVybmAke259Ly8ke3QuaG9zdH0ke2V9JHt0LnBhdGg/YC8ke3QucGF0aH1gOiIifS9hcGkvYH0odCl9JHt0LnByb2plY3RJZH0vZW52ZWxvcGUvYH0oU24pfT8ke2Z1bmN0aW9uKHQsbil7Y29uc3QgZT17c2VudHJ5X3ZlcnNpb246WnR9O3JldHVybiB0LnB1YmxpY0tleSYmKGUuc2VudHJ5X2tleT10LnB1YmxpY0tleSksbiYmKGUuc2VudHJ5X2NsaWVudD1gJHtuLm5hbWV9LyR7bi52ZXJzaW9ufWApLG5ldyBVUkxTZWFyY2hQYXJhbXMoZSkudG9TdHJpbmcoKX0oU24sRW4pfWApfSk7YXN5bmMgZnVuY3Rpb24gTm4oKXtpZihibil7d24oIlNlbmRpbmcgYWJub3JtYWwgc2Vzc2lvbiIpLEwoYm4se3N0YXR1czoiYWJub3JtYWwiLGFibm9ybWFsX21lY2hhbmlzbToiYW5yX2ZvcmVncm91bmQiLHJlbGVhc2U6eW4ucmVsZWFzZSxlbnZpcm9ubWVudDp5bi5lbnZpcm9ubWVudH0pO2NvbnN0IHQ9ZnVuY3Rpb24odCxuLGUscil7Y29uc3Qgbz1KdChlKTtyZXR1cm4gVXQoe3NlbnRfYXQ6KG5ldyBEYXRlKS50b0lTT1N0cmluZygpLC4uLm8mJntzZGs6b30sLi4uISFyJiZuJiZ7ZHNuOmp0KG4pfX0sWyJhZ2dyZWdhdGVzImluIHQ/W3t0eXBlOiJzZXNzaW9ucyJ9LHRdOlt7dHlwZToic2Vzc2lvbiJ9LHQudG9KU09OKCldXSl9KGJuLHluLmRzbix5bi5zZGtNZXRhZGF0YSx5bi50dW5uZWwpO3duKEpTT04uc3RyaW5naWZ5KHQpKSxhd2FpdCB4bi5zZW5kKHQpO3RyeXtlPy5wb3N0TWVzc2FnZSgic2Vzc2lvbi1lbmRlZCIpfWNhdGNoKHQpe319fWZ1bmN0aW9uIENuKHQpe2lmKCF0KXJldHVybjtjb25zdCBuPWZ1bmN0aW9uKHQpe2lmKCF0Lmxlbmd0aClyZXR1cm5bXTtjb25zdCBuPUFycmF5LmZyb20odCk7cmV0dXJuL3NlbnRyeVdyYXBwZWQvLnRlc3QoTnQobikuZnVuY3Rpb258fCIiKSYmbi5wb3AoKSxuLnJldmVyc2UoKSx4dC50ZXN0KE50KG4pLmZ1bmN0aW9ufHwiIikmJihuLnBvcCgpLHh0LnRlc3QoTnQobikuZnVuY3Rpb258fCIiKSYmbi5wb3AoKSksbi5zbGljZSgwLCR0KS5tYXAoKHQ9Pih7Li4udCxmaWxlbmFtZTp0LmZpbGVuYW1lfHxOdChuKS5maWxlbmFtZSxmdW5jdGlvbjp0LmZ1bmN0aW9ufHxFdH0pKSl9KHQpO2lmKHluLmFwcFJvb3RQYXRoKWZvcihjb25zdCB0IG9mIG4pdC5maWxlbmFtZSYmKHQuZmlsZW5hbWU9UHQodC5maWxlbmFtZSx5bi5hcHBSb290UGF0aCkpO3JldHVybiBufWFzeW5jIGZ1bmN0aW9uIFRuKHQsbil7aWYoX24+PXluLm1heEFuckV2ZW50cylyZXR1cm47X24rPTEsYXdhaXQgTm4oKSx3bigiU2VuZGluZyBldmVudCIpO2NvbnN0IGU9e2V2ZW50X2lkOkQoKSxjb250ZXh0czp5bi5jb250ZXh0cyxyZWxlYXNlOnluLnJlbGVhc2UsZW52aXJvbm1lbnQ6eW4uZW52aXJvbm1lbnQsZGlzdDp5bi5kaXN0LHBsYXRmb3JtOiJub2RlIixsZXZlbDoiZXJyb3IiLGV4Y2VwdGlvbjp7dmFsdWVzOlt7dHlwZToiQXBwbGljYXRpb25Ob3RSZXNwb25kaW5nIix2YWx1ZTpgQXBwbGljYXRpb24gTm90IFJlc3BvbmRpbmcgZm9yIGF0IGxlYXN0ICR7eW4uYW5yVGhyZXNob2xkfSBtc2Asc3RhY2t0cmFjZTp7ZnJhbWVzOkNuKHQpfSxtZWNoYW5pc206e3R5cGU6IkFOUiJ9fV19LHRhZ3M6eW4uc3RhdGljVGFnc307biYmZnVuY3Rpb24odCxuKXtpZihWdCh0LG4pLCF0LmNvbnRleHRzPy50cmFjZSl7Y29uc3R7dHJhY2VJZDplLHBhcmVudFNwYW5JZDpyLHByb3BhZ2F0aW9uU3BhbklkOm99PW4ucHJvcGFnYXRpb25Db250ZXh0O3QuY29udGV4dHM9e3RyYWNlOnt0cmFjZV9pZDplLHNwYW5faWQ6b3x8RigpLHBhcmVudF9zcGFuX2lkOnJ9LC4uLnQuY29udGV4dHN9fX0oZSxuKSxmdW5jdGlvbih0KXtpZigwPT09T2JqZWN0LmtleXModm4pLmxlbmd0aClyZXR1cm47Y29uc3Qgbj15bi5hcHBSb290UGF0aD97fTp2bjtpZih5bi5hcHBSb290UGF0aClmb3IoY29uc3RbdCxlXW9mIE9iamVjdC5lbnRyaWVzKHZuKSluW1B0KHQseW4uYXBwUm9vdFBhdGgpXT1lO2NvbnN0IGU9bmV3IE1hcDtmb3IoY29uc3QgciBvZiB0LmV4Y2VwdGlvbj8udmFsdWVzfHxbXSlmb3IoY29uc3QgdCBvZiByLnN0YWNrdHJhY2U/LmZyYW1lc3x8W10pe2NvbnN0IHI9dC5hYnNfcGF0aHx8dC5maWxlbmFtZTtyJiZuW3JdJiZlLnNldChyLG5bcl0pfWlmKGUuc2l6ZT4wKXtjb25zdCBuPVtdO2Zvcihjb25zdFt0LHJdb2YgZS5lbnRyaWVzKCkpbi5wdXNoKHt0eXBlOiJzb3VyY2VtYXAiLGNvZGVfZmlsZTp0LGRlYnVnX2lkOnJ9KTt0LmRlYnVnX21ldGE9e2ltYWdlczpufX19KGUpO2NvbnN0IHI9enQoZSx5bi5kc24seW4uc2RrTWV0YWRhdGEseW4udHVubmVsKTt3bihKU09OLnN0cmluZ2lmeShyKSksYXdhaXQgeG4uc2VuZChyKSxhd2FpdCB4bi5mbHVzaCgyZTMpLF9uPj15bi5tYXhBbnJFdmVudHMmJnNldFRpbWVvdXQoKCgpPT57cHJvY2Vzcy5leGl0KDApfSksNWUzKX1sZXQga247aWYod24oIlN0YXJ0ZWQiKSx5bi5jYXB0dXJlU3RhY2tUcmFjZSl7d24oIkNvbm5lY3RpbmcgdG8gZGVidWdnZXIiKTtjb25zdCBuPW5ldyB0O24uY29ubmVjdFRvTWFpblRocmVhZCgpLHduKCJDb25uZWN0ZWQgdG8gZGVidWdnZXIiKTtjb25zdCBlPW5ldyBNYXA7bi5vbigiRGVidWdnZXIuc2NyaXB0UGFyc2VkIiwodD0+e2Uuc2V0KHQucGFyYW1zLnNjcmlwdElkLHQucGFyYW1zLnVybCl9KSksbi5vbigiRGVidWdnZXIucGF1c2VkIiwodD0+e2lmKCJvdGhlciI9PT10LnBhcmFtcy5yZWFzb24pdHJ5e3duKCJEZWJ1Z2dlciBwYXVzZWQiKTtjb25zdCBzPVsuLi50LnBhcmFtcy5jYWxsRnJhbWVzXSxpPXluLmFwcFJvb3RQYXRoP2Z1bmN0aW9uKHQ9KHByb2Nlc3MuYXJndlsxXT9vbihwcm9jZXNzLmFyZ3ZbMV0pOnByb2Nlc3MuY3dkKCkpLG49IlxcIj09PW8pe2NvbnN0IGU9bj9nbih0KTp0O3JldHVybiB0PT57aWYoIXQpcmV0dXJuO2NvbnN0IG89bj9nbih0KTp0O2xldHtkaXI6cyxiYXNlOmksZXh0OmN9PXIucGFyc2Uobyk7Ii5qcyIhPT1jJiYiLm1qcyIhPT1jJiYiLmNqcyIhPT1jfHwoaT1pLnNsaWNlKDAsLTEqYy5sZW5ndGgpKTtjb25zdCB1PWRlY29kZVVSSUNvbXBvbmVudChpKTtzfHwocz0iLiIpO2NvbnN0IGE9cy5sYXN0SW5kZXhPZigiL25vZGVfbW9kdWxlcyIpO2lmKGE+LTEpcmV0dXJuYCR7cy5zbGljZShhKzE0KS5yZXBsYWNlKC9cLy9nLCIuIil9OiR7dX1gO2lmKHMuc3RhcnRzV2l0aChlKSl7Y29uc3QgdD1zLnNsaWNlKGUubGVuZ3RoKzEpLnJlcGxhY2UoL1wvL2csIi4iKTtyZXR1cm4gdD9gJHt0fToke3V9YDp1fXJldHVybiB1fX0oeW4uYXBwUm9vdFBhdGgpOigpPT57fSxjPXMubWFwKCh0PT5mdW5jdGlvbih0LG4sZSl7Y29uc3Qgcj1uP24ucmVwbGFjZSgvXmZpbGU6XC9cLy8sIiIpOnZvaWQgMCxvPXQubG9jYXRpb24uY29sdW1uTnVtYmVyP3QubG9jYXRpb24uY29sdW1uTnVtYmVyKzE6dm9pZCAwLHM9dC5sb2NhdGlvbi5saW5lTnVtYmVyP3QubG9jYXRpb24ubGluZU51bWJlcisxOnZvaWQgMDtyZXR1cm57ZmlsZW5hbWU6cixtb2R1bGU6ZShyKSxmdW5jdGlvbjp0LmZ1bmN0aW9uTmFtZXx8RXQsY29sbm86byxsaW5lbm86cyxpbl9hcHA6cj9zbihyKTp2b2lkIDB9fSh0LGUuZ2V0KHQubG9jYXRpb24uc2NyaXB0SWQpLGkpKSksdT1zZXRUaW1lb3V0KCgoKT0+e1RuKGMpLnRoZW4obnVsbCwoKCk9Pnt3bigiU2VuZGluZyBBTlIgZXZlbnQgZmFpbGVkLiIpfSkpfSksNWUzKTtuLnBvc3QoIlJ1bnRpbWUuZXZhbHVhdGUiLHtleHByZXNzaW9uOiJnbG9iYWwuX19TRU5UUllfR0VUX1NDT1BFU19fKCk7IixzaWxlbnQ6ITAscmV0dXJuQnlWYWx1ZTohMH0sKCh0LGUpPT57dCYmd24oYEVycm9yIGV4ZWN1dGluZyBzY3JpcHQ6ICcke3QubWVzc2FnZX0nYCksY2xlYXJUaW1lb3V0KHUpO2NvbnN0IHI9ZT8ucmVzdWx0P2UucmVzdWx0LnZhbHVlOnZvaWQgMDtuLnBvc3QoIkRlYnVnZ2VyLnJlc3VtZSIpLG4ucG9zdCgiRGVidWdnZXIuZGlzYWJsZSIpLFRuKGMscikudGhlbihudWxsLCgoKT0+e3duKCJTZW5kaW5nIEFOUiBldmVudCBmYWlsZWQuIil9KSl9KSl9Y2F0Y2godCl7dGhyb3cgbi5wb3N0KCJEZWJ1Z2dlci5yZXN1bWUiKSxuLnBvc3QoIkRlYnVnZ2VyLmRpc2FibGUiKSx0fX0pKSxrbj0oKT0+e3RyeXtuLnBvc3QoIkRlYnVnZ2VyLmVuYWJsZSIsKCgpPT57bi5wb3N0KCJEZWJ1Z2dlci5wYXVzZSIpfSkpfWNhdGNoKHQpe319fWNvbnN0e3BvbGw6am59PWZ1bmN0aW9uKHQsbixlLHIpe2NvbnN0IG89dCgpO2xldCBzPSExLGk9ITA7cmV0dXJuIHNldEludGVydmFsKCgoKT0+e2NvbnN0IHQ9by5nZXRUaW1lTXMoKTshMT09PXMmJnQ+bitlJiYocz0hMCxpJiZyKCkpLHQ8bitlJiYocz0hMSl9KSwyMCkse3BvbGw6KCk9PntvLnJlc2V0KCl9LGVuYWJsZWQ6dD0+e2k9dH19fSgoZnVuY3Rpb24oKXtsZXQgdD1wcm9jZXNzLmhydGltZSgpO3JldHVybntnZXRUaW1lTXM6KCk9Pntjb25zdFtuLGVdPXByb2Nlc3MuaHJ0aW1lKHQpO3JldHVybiBNYXRoLmZsb29yKDFlMypuK2UvMWU2KX0scmVzZXQ6KCk9Pnt0PXByb2Nlc3MuaHJ0aW1lKCl9fX0pLHluLnBvbGxJbnRlcnZhbCx5bi5hbnJUaHJlc2hvbGQsKGZ1bmN0aW9uKCl7d24oIldhdGNoZG9nIHRpbWVvdXQiKSxrbj8od24oIlBhdXNpbmcgZGVidWdnZXIgdG8gY2FwdHVyZSBzdGFjayB0cmFjZSIpLGtuKCkpOih3bigiQ2FwdHVyaW5nIGV2ZW50IHdpdGhvdXQgYSBzdGFjayB0cmFjZSIpLFRuKCkudGhlbihudWxsLCgoKT0+e3duKCJTZW5kaW5nIEFOUiBldmVudCBmYWlsZWQgb24gd2F0Y2hkb2cgdGltZW91dC4iKX0pKSl9KSk7ZT8ub24oIm1lc3NhZ2UiLCh0PT57dC5zZXNzaW9uJiYoYm49TSh0LnNlc3Npb24pKSx0LmRlYnVnSW1hZ2VzJiYodm49dC5kZWJ1Z0ltYWdlcyksam4oKX0pKTs=",mN0=50,uN0=5000;function Fn(A,...Q){e.log(`[ANR] ${A}`,...Q)}function dN0(){return AQ}function cN0(){let A=QG().getScopeData();return dZ(A,RQ().getScopeData()),dZ(A,sQ().getScopeData()),A.attachments=[],A.eventProcessors=[],A}async function lN0(A){let Q={message:"ANR"},B={};for(let Y of A.getEventProcessors()){if(Q===null)break;Q=await Y(Q,B)}return Q?.contexts||{}}var KUQ="Anr",pN0=(A={})=>{if(LW.major<16||LW.major===16&&LW.minor<17)throw Error("ANR detection requires Node 16.17.0 or later");let Q,B,Y=dN0();return Y.__SENTRY_GET_SCOPES__=cN0,{name:KUQ,startWorker:()=>{if(Q)return;if(B)Q=iN0(B,A)},stopWorker:()=>{if(Q)Q.then((J)=>{J(),Q=void 0})},async setup(J){if(B=J,A.captureStackTrace&&await TK())e.warn("ANR captureStackTrace has been disabled because the debugger was already enabled"),A.captureStackTrace=!1;setImmediate(()=>this.startWorker())}}},VUQ=wA(pN0);async function iN0(A,Q){let B=A.getDsn();if(!B)return()=>{};let Y=await lN0(A);delete Y.app?.app_memory,delete Y.device?.free_memory;let J=A.getOptions(),C=A.getSdkMetadata()||{};if(C.sdk)C.sdk.integrations=J.integrations.map((F)=>F.name);let X={debug:e.isEnabled(),dsn:B,tunnel:J.tunnel,environment:J.environment||"production",release:J.release,dist:J.dist,sdkMetadata:C,appRootPath:Q.appRootPath,pollInterval:Q.pollInterval||mN0,anrThreshold:Q.anrThreshold||uN0,captureStackTrace:!!Q.captureStackTrace,maxAnrEvents:Q.maxAnrEvents||1,staticTags:Q.staticTags||{},contexts:Y};if(X.captureStackTrace){let F=await import("node:inspector");if(!F.url())F.open(0)}let G=new xN0(new URL(`data:application/javascript;base64,${bN0}`),{workerData:X,execArgv:[],env:{...process.env,NODE_OPTIONS:void 0}});process.on("exit",()=>{G.terminate()});let W=setInterval(()=>{try{let F=RQ().getSession(),Z=F?{...F,toJSON:void 0}:void 0;G.postMessage({session:Z,debugImages:TN(J.stackParser)})}catch(F){}},X.pollInterval);return W.unref(),G.on("message",(F)=>{if(F==="session-ended")Fn("ANR event sent from ANR worker. Clearing session in this thread."),RQ().setSession(void 0)}),G.once("error",(F)=>{clearInterval(W),Fn("ANR worker error",F)}),G.once("exit",(F)=>{clearInterval(W),Fn("ANR worker exit",F)}),G.unref(),()=>{G.terminate(),clearInterval(W)}}function IUQ(A){let Q=gA()?.getIntegrationByName(KUQ);if(!Q)return A();Q.stopWorker();let B=A();if(fN0(B))return B.finally(()=>Q.startWorker());return Q.startWorker(),B}var nUQ=qA(fUQ(),1);var mUQ=qA(MB(),1);var bUQ=(A)=>({package:A,"javascript.is_cjs":a5()});function RW(A,Q){let B=gA()?.getOptions();if(!B?.disableInstrumentationWarnings&&!mUQ.isWrapped(A)&&_N()&&U9(B))f0(()=>{if(a5())console.warn(`[Sentry] ${Q} is not instrumented. This is likely because you required/imported ${Q} before calling \`Sentry.init()\`.`);else console.warn(`[Sentry] ${Q} is not instrumented. Please make sure to initialize Sentry in a separate file that you \`--import\` when running node, see: https://docs.sentry.io/platforms/javascript/guides/${Q}/install/esm/.`)}),QG().setContext("missing_instrumentation",bUQ(Q))}var U1=qA(yA(),1),cP=qA(MB(),1),LX=qA(NB(),1),iUQ=qA(dB(),1);var o5;(function(A){A.EXPRESS_TYPE="express.type";let B="express.name";A.EXPRESS_NAME=B})(o5||(o5={}));var IG;(function(A){A.ROUTER="router";let B="middleware";A.MIDDLEWARE=B;let Y="request_handler";A.REQUEST_HANDLER=Y})(IG||(IG={}));var In=Symbol("express-layer-patched"),wW="__ot_middlewares";var dUQ=(A,Q)=>{if(Array.isArray(A[wW])===!1)Object.defineProperty(A,wW,{enumerable:!1,value:[]});if(Q===void 0)return;A[wW].push(Q)},cUQ=(A,Q)=>{let B=Q.handle?.stack?.[0];if(B?.route?.path)return`${A}${B.route.path}`;if(B?.handle?.stack)return cUQ(A,B);return A},lUQ=(A,Q,B)=>{if(Q.name==="router"){let Y=cUQ("",Q),J=Y?Y:B||A||"/";return{attributes:{[o5.EXPRESS_NAME]:J,[o5.EXPRESS_TYPE]:IG.ROUTER},name:`router - ${J}`}}else if(Q.name==="bound dispatch"||Q.name==="handle")return{attributes:{[o5.EXPRESS_NAME]:(A||B)??"request handler",[o5.EXPRESS_TYPE]:IG.REQUEST_HANDLER},name:`request handler${Q.path?` - ${A||B}`:""}`};else return{attributes:{[o5.EXPRESS_NAME]:Q.name,[o5.EXPRESS_TYPE]:IG.MIDDLEWARE},name:`middleware - ${Q.name}`}},ZL0=(A,Q)=>{if(typeof Q==="string")return Q===A;else if(Q instanceof RegExp)return Q.test(A);else if(typeof Q==="function")return Q(A);else throw TypeError("Pattern is in unsupported datatype")},pUQ=(A,Q,B)=>{if(Array.isArray(B?.ignoreLayersType)&&B?.ignoreLayersType?.includes(Q))return!0;if(Array.isArray(B?.ignoreLayers)===!1)return!1;try{for(let Y of B.ignoreLayers)if(ZL0(A,Y))return!0}catch(Y){}return!1},Hn=(A)=>A instanceof Error?[A,A.message]:[String(A),String(A)],dP=(A)=>{let Q=A[0];if(Array.isArray(Q))return Q.map((B)=>uUQ(B)||"").join(",");return uUQ(Q)},uUQ=(A)=>{if(typeof A==="string")return A;if(A instanceof RegExp||typeof A==="number")return A.toString();return};var $L0="0.1.0",UL0="@sentry/instrumentation-express-v5";class Dn extends LX.InstrumentationBase{constructor(A={}){super(UL0,$L0,A)}init(){return[new LX.InstrumentationNodeModuleDefinition("express",[">=5.0.0"],(A)=>this._setup(A),(A)=>this._tearDown(A))]}_setup(A){let Q=A.Router.prototype;if(LX.isWrapped(Q.route))this._unwrap(Q,"route");if(this._wrap(Q,"route",this._getRoutePatch()),LX.isWrapped(Q.use))this._unwrap(Q,"use");if(this._wrap(Q,"use",this._getRouterUsePatch()),LX.isWrapped(A.application.use))this._unwrap(A.application,"use");return this._wrap(A.application,"use",this._getAppUsePatch()),A}_tearDown(A){if(A===void 0)return;let Q=A.Router.prototype;this._unwrap(Q,"route"),this._unwrap(Q,"use"),this._unwrap(A.application,"use")}_getRoutePatch(){let A=this;return function(Q){return function(...Y){let J=Q.apply(this,Y),C=this.stack[this.stack.length-1];return A._applyPatch(C,dP(Y)),J}}}_getRouterUsePatch(){let A=this;return function(Q){return function(...Y){let J=Q.apply(this,Y),C=this.stack[this.stack.length-1];return A._applyPatch(C,dP(Y)),J}}}_getAppUsePatch(){let A=this;return function(Q){return function(...Y){let J=this.router,C=Q.apply(this,Y);if(J){let X=J.stack[J.stack.length-1];A._applyPatch(X,dP(Y))}return C}}}_applyPatch(A,Q){let B=this;if(A[In]===!0)return;A[In]=!0,this._wrap(A,"handle",(Y)=>{if(Y.length===4)return Y;let J=function(C,X){dUQ(C,Q);let G=C[wW].filter((z)=>z!=="/"&&z!=="/*").join("").replace(/\/{2,}/g,"/"),W=G.length>0?G:void 0,F={[iUQ.SEMATTRS_HTTP_ROUTE]:W},Z=lUQ(G,A,Q),U=Z.attributes[o5.EXPRESS_TYPE],$=cP.getRPCMetadata(U1.context.active());if($?.type===cP.RPCType.HTTP)$.route=W;if(pUQ(Z.name,U,B.getConfig())){if(U===IG.MIDDLEWARE)C[wW].pop();return Y.apply(this,arguments)}if(U1.trace.getSpan(U1.context.active())===void 0)return Y.apply(this,arguments);let E=B._getSpanName({request:C,layerType:U,route:G},Z.name),K=B.tracer.startSpan(E,{attributes:Object.assign(F,Z.attributes)}),{requestHook:I}=B.getConfig();if(I)LX.safeExecuteInTheMiddle(()=>I(K,{request:C,layerType:U,route:G}),(z)=>{if(z)U1.diag.error("express instrumentation: request hook failed",z)},!0);let V=!1;if(Z.attributes[o5.EXPRESS_TYPE]!==IG.MIDDLEWARE)K.end(),V=!0;let H=()=>{if(V===!1)V=!0,K.end()},D=Array.from(arguments),L=D.findIndex((z)=>typeof z==="function");if(L>=0)arguments[L]=function(){let z=arguments[0],M=![void 0,null,"route","router"].includes(z);if(!V&&M){let[q,w]=Hn(z);K.recordException(q),K.setStatus({code:U1.SpanStatusCode.ERROR,message:w})}if(V===!1)V=!0,C.res?.removeListener("finish",H),K.end();if(!(C.route&&M))C[wW].pop();return D[L].apply(this,arguments)};try{return Y.apply(this,arguments)}catch(z){let[M,N]=Hn(z);throw K.recordException(M),K.setStatus({code:U1.SpanStatusCode.ERROR,message:N}),z}finally{if(!V)X.once("finish",H)}};for(let C in Y)Object.defineProperty(J,C,{get(){return Y[C]},set(X){Y[C]=X}});return J})}_getSpanName(A,Q){let{spanNameHook:B}=this.getConfig();if(!(B instanceof Function))return Q;try{return B(A,Q)??Q}catch(Y){return U1.diag.error("express instrumentation: error calling span name rewrite hook",Y),Q}}}var sUQ="Express",EL0="Express-V5";function rUQ(A){s0(A,"auto.http.otel.express");let Q=eA(A).data,B=Q["express.type"];if(B)A.setAttribute(YQ,`${B}.express`);let Y=Q["express.name"];if(typeof Y==="string")A.updateName(Y)}function aUQ(A,Q){if(RQ()===v5())return fQ&&e.warn("Isolation scope is still default isolation scope - skipping setting transactionName"),Q;if(A.layerType==="request_handler"){let B=A.request,Y=B.method?B.method.toUpperCase():"GET";RQ().setTransactionName(`${Y} ${A.route}`)}return Q}var Nn=EQ(sUQ,()=>new nUQ.ExpressInstrumentation({requestHook:(A)=>rUQ(A),spanNameHook:(A,Q)=>aUQ(A,Q)})),Ln=EQ(EL0,()=>new Dn({requestHook:(A)=>rUQ(A),spanNameHook:(A,Q)=>aUQ(A,Q)})),KL0=()=>{return{name:sUQ,setupOnce(){Nn(),Ln()}}},lP=wA(KL0);function qn(A){return function(B,Y,J,C){let X=sE(Y);if(RQ().setSDKProcessingMetadata({normalizedRequest:X}),(A?.shouldHandleError||HL0)(B)){let W=jB(B,{mechanism:{type:"middleware",handled:!1}});J.sentry=W}C(B)}}function VL0(){return function(Q,B,Y){let J=sE(Q);RQ().setSDKProcessingMetadata({normalizedRequest:J}),Y()}}function oUQ(A,Q){A.use(VL0()),A.use(qn(Q)),RW(A.use,"express")}function IL0(A){let Q=A.status||A.statusCode||A.status_code||A.output?.statusCode;return Q?parseInt(Q,10):500}function HL0(A){return IL0(A)>=500}import*as uEQ from"node:diagnostics_channel";var KY=qA(yA(),1),aP=qA(MB(),1),yEQ=qA(NB(),1),RY=qA(dB(),1);import TEQ from"node:diagnostics_channel";var SEQ="@fastify/otel",qq0="0.8.0",Mq0=">=4.0.0 <6",kEQ=["onRequest","preParsing","preValidation","preHandler","preSerialization","onSend","onResponse","onError"],H0={HOOK_NAME:"hook.name",FASTIFY_TYPE:"fastify.type",HOOK_CALLBACK_NAME:"hook.callback.name",ROOT:"fastify.root"},jW={ROUTE:"route-hook",INSTANCE:"hook",HANDLER:"request-handler"},HG="anonymous",N9=Symbol("fastify otel instance"),OW=Symbol("fastify otel request spans"),uL=Symbol("fastify otel request context"),_EQ=Symbol("fastify otel addhook original"),vEQ=Symbol("fastify otel setnotfound original"),rP=Symbol("fastify otel ignore path");class On extends yEQ.InstrumentationBase{constructor(A){super(SEQ,qq0,A);if(this.servername=A?.servername??process.env.OTEL_SERVICE_NAME??"fastify",this[rP]=null,this._logger=KY.diag.createComponentLogger({namespace:SEQ}),A?.ignorePaths!=null||process.env.OTEL_FASTIFY_IGNORE_PATHS!=null){let Q=A?.ignorePaths??process.env.OTEL_FASTIFY_IGNORE_PATHS;if((typeof Q!=="string"||Q.length===0)&&typeof Q!=="function")throw TypeError("ignorePaths must be a string or a function");let B=null;this[rP]=(Y)=>{if(typeof Q==="function")return Q(Y);else{if(B==null)B=PEQ().minimatch;return B(Y.url,Q)}}}}enable(){if(this._handleInitialization===void 0&&this.getConfig().registerOnInitialization){let A=this.plugin();this._handleInitialization=(Q)=>{Q.fastify.register(A)},TEQ.subscribe("fastify.initialization",this._handleInitialization)}return super.enable()}disable(){if(this._handleInitialization)TEQ.unsubscribe("fastify.initialization",this._handleInitialization),this._handleInitialization=void 0;return super.disable()}init(){return[]}plugin(){let A=this;return Q[Symbol.for("skip-override")]=!0,Q[Symbol.for("fastify.display-name")]="@fastify/otel",Q[Symbol.for("plugin-meta")]={fastify:Mq0,name:"@fastify/otel"},Q;function Q(B,Y,J){B.decorate(N9,A),B.decorate(_EQ,B.addHook),B.decorate(vEQ,B.setNotFoundHandler),B.decorateRequest("opentelemetry",function(){let U=this[uL];return{span:this[OW],tracer:A.tracer,context:U,inject:(E,K)=>{return KY.propagation.inject(U,E,K)},extract:(E,K)=>{return KY.propagation.extract(U,E,K)}}}),B.decorateRequest(OW,null),B.decorateRequest(uL,null),B.addHook("onRoute",function(Z){if(A[rP]?.(Z)===!0){A._logger.debug(`Ignoring route instrumentation ${Z.method} ${Z.url} because it matches the ignore path`);return}for(let U of kEQ)if(Z[U]!=null){let $=Z[U];if(typeof $==="function")Z[U]=F($,{[RY.ATTR_SERVICE_NAME]:B[N9].servername,[H0.HOOK_NAME]:`${this.pluginName} - route -> ${U}`,[H0.FASTIFY_TYPE]:jW.ROUTE,[RY.ATTR_HTTP_ROUTE]:Z.url,[H0.HOOK_CALLBACK_NAME]:$.name?.length>0?$.name:HG});else if(Array.isArray($)){let E=[];for(let K of $)E.push(F(K,{[RY.ATTR_SERVICE_NAME]:B[N9].servername,[H0.HOOK_NAME]:`${this.pluginName} - route -> ${U}`,[H0.FASTIFY_TYPE]:jW.ROUTE,[RY.ATTR_HTTP_ROUTE]:Z.url,[H0.HOOK_CALLBACK_NAME]:K.name?.length>0?K.name:HG}));Z[U]=E}}if(Z.onSend!=null)Z.onSend=Array.isArray(Z.onSend)?[...Z.onSend,C]:[Z.onSend,C];else Z.onSend=C;if(Z.onError!=null)Z.onError=Array.isArray(Z.onError)?[...Z.onError,X]:[Z.onError,X];else Z.onError=X;Z.handler=F(Z.handler,{[RY.ATTR_SERVICE_NAME]:B[N9].servername,[H0.HOOK_NAME]:`${this.pluginName} - route-handler`,[H0.FASTIFY_TYPE]:jW.HANDLER,[RY.ATTR_HTTP_ROUTE]:Z.url,[H0.HOOK_CALLBACK_NAME]:Z.handler.name.length>0?Z.handler.name:HG})}),B.addHook("onRequest",function(Z,U,$){if(this[N9].isEnabled()===!1)return $();else if(this[N9][rP]?.({url:Z.url,method:Z.method})===!0)return this[N9]._logger.debug(`Ignoring request ${Z.method} ${Z.url} because it matches the ignore path`),$();let E=KY.context.active();if(KY.trace.getSpan(E)==null)E=KY.propagation.extract(E,Z.headers);let K=aP.getRPCMetadata(E);if(Z.routeOptions.url!=null&&K?.type===aP.RPCType.HTTP)K.route=Z.routeOptions.url;let I=this[N9].tracer.startSpan("request",{attributes:{[RY.ATTR_SERVICE_NAME]:B[N9].servername,[H0.ROOT]:"@fastify/otel",[RY.ATTR_HTTP_ROUTE]:Z.url,[RY.ATTR_HTTP_REQUEST_METHOD]:Z.method}},E);Z[uL]=KY.trace.setSpan(E,I),Z[OW]=I,KY.context.with(Z[uL],()=>{$()})}),B.addHook("onResponse",function(Z,U,$){let E=Z[OW];if(E!=null)E.setStatus({code:KY.SpanStatusCode.OK,message:"OK"}),E.setAttributes({[RY.ATTR_HTTP_RESPONSE_STATUS_CODE]:404}),E.end();Z[OW]=null,$()}),B.addHook=G,B.setNotFoundHandler=W,J();function C(Z,U,$,E){let K=Z[OW];if(K!=null){if(U.statusCode<500)K.setStatus({code:KY.SpanStatusCode.OK,message:"OK"});K.setAttributes({[RY.ATTR_HTTP_RESPONSE_STATUS_CODE]:U.statusCode}),K.end()}Z[OW]=null,E(null,$)}function X(Z,U,$,E){let K=Z[OW];if(K!=null)K.setStatus({code:KY.SpanStatusCode.ERROR,message:$.message}),K.recordException($);E()}function G(Z,U){let $=this[_EQ];if(kEQ.includes(Z))return $.call(this,Z,F(U,{[RY.ATTR_SERVICE_NAME]:B[N9].servername,[H0.HOOK_NAME]:`${this.pluginName} - ${Z}`,[H0.FASTIFY_TYPE]:jW.INSTANCE,[H0.HOOK_CALLBACK_NAME]:U.name?.length>0?U.name:HG}));else return $.call(this,Z,U)}function W(Z,U){let $=this[vEQ];if(typeof Z==="function")U=F(Z,{[RY.ATTR_SERVICE_NAME]:B[N9].servername,[H0.HOOK_NAME]:`${this.pluginName} - not-found-handler`,[H0.FASTIFY_TYPE]:jW.INSTANCE,[H0.HOOK_CALLBACK_NAME]:Z.name?.length>0?Z.name:HG}),$.call(this,U);else{if(Z.preValidation!=null)Z.preValidation=F(Z.preValidation,{[RY.ATTR_SERVICE_NAME]:B[N9].servername,[H0.HOOK_NAME]:`${this.pluginName} - not-found-handler - preValidation`,[H0.FASTIFY_TYPE]:jW.INSTANCE,[H0.HOOK_CALLBACK_NAME]:Z.preValidation.name?.length>0?Z.preValidation.name:HG});if(Z.preHandler!=null)Z.preHandler=F(Z.preHandler,{[RY.ATTR_SERVICE_NAME]:B[N9].servername,[H0.HOOK_NAME]:`${this.pluginName} - not-found-handler - preHandler`,[H0.FASTIFY_TYPE]:jW.INSTANCE,[H0.HOOK_CALLBACK_NAME]:Z.preHandler.name?.length>0?Z.preHandler.name:HG});U=F(U,{[RY.ATTR_SERVICE_NAME]:B[N9].servername,[H0.HOOK_NAME]:`${this.pluginName} - not-found-handler`,[H0.FASTIFY_TYPE]:jW.INSTANCE,[H0.HOOK_CALLBACK_NAME]:U.name?.length>0?U.name:HG}),$.call(this,Z,U)}}function F(Z,U={}){return function(...E){let K=this[N9],[I]=E;if(K.isEnabled()===!1)return Z.call(this,...E);let V=I[uL]??KY.context.active(),H=K.tracer.startSpan(`handler - ${Z.name?.length>0?Z.name:this.pluginName??HG}`,{attributes:U},V);return KY.context.with(KY.trace.setSpan(V,H),function(){try{let D=Z.call(this,...E);if(typeof D?.then==="function")return D.then((L)=>{return H.end(),L},(L)=>{return H.setStatus({code:KY.SpanStatusCode.ERROR,message:L.message}),H.recordException(L),H.end(),Promise.reject(L)});return H.end(),D}catch(D){throw H.setStatus({code:KY.SpanStatusCode.ERROR,message:D.message}),H.recordException(D),H.end(),D}},this)}}}}}var E1=qA(yA(),1),tP=qA(MB(),1),O$=qA(NB(),1),bEQ=qA(dB(),1);var DG;(function(A){A.FASTIFY_NAME="fastify.name";let B="fastify.type";A.FASTIFY_TYPE=B;let Y="hook.name";A.HOOK_NAME=Y;let J="plugin.name";A.PLUGIN_NAME=J})(DG||(DG={}));var dL;(function(A){A.MIDDLEWARE="middleware";let B="request_handler";A.REQUEST_HANDLER=B})(dL||(dL={}));var cL;(function(A){A.MIDDLEWARE="middleware";let B="request handler";A.REQUEST_HANDLER=B})(cL||(cL={}));var hEQ=qA(yA(),1);var lL=Symbol("opentelemetry.instrumentation.fastify.request_active_span");function Pn(A,Q,B,Y={}){let J=Q.startSpan(B,{attributes:Y}),C=A[lL]||[];return C.push(J),Object.defineProperty(A,lL,{enumerable:!1,configurable:!0,value:C}),J}function oP(A,Q){let B=A[lL]||[];if(!B.length)return;B.forEach((Y)=>{if(Q)Y.setStatus({code:hEQ.SpanStatusCode.ERROR,message:Q.message}),Y.recordException(Q);Y.end()}),delete A[lL]}function xEQ(A,Q,B){let Y,J=void 0;try{if(J=A(),gEQ(J))J.then((C)=>Q(void 0,C),(C)=>Q(C))}catch(C){Y=C}finally{if(!gEQ(J)){if(Q(Y,J),Y)throw Y}return J}}function gEQ(A){return typeof A==="object"&&A&&typeof Object.getOwnPropertyDescriptor(A,"then")?.value==="function"||!1}var zq0="0.1.0",Rq0="@sentry/instrumentation-fastify-v3",fEQ="anonymous",wq0=new Set(["onTimeout","onRequest","preParsing","preValidation","preSerialization","preHandler","onSend","onResponse","onError"]);class Tn extends O$.InstrumentationBase{constructor(A={}){super(Rq0,zq0,A)}init(){return[new O$.InstrumentationNodeModuleDefinition("fastify",[">=3.0.0 <4"],(A)=>{return this._patchConstructor(A)})]}_hookOnRequest(){let A=this;return function(B,Y,J){if(!A.isEnabled())return J();A._wrap(Y,"send",A._patchSend());let C=B,X=tP.getRPCMetadata(E1.context.active()),G=C.routeOptions?C.routeOptions.url:B.routerPath;if(G&&X?.type===tP.RPCType.HTTP)X.route=G;let W=B.method||"GET";RQ().setTransactionName(`${W} ${G}`),J()}}_wrapHandler(A,Q,B,Y){let J=this;return this._diag.debug("Patching fastify route.handler function"),function(...C){if(!J.isEnabled())return B.apply(this,C);let X=B.name||A||fEQ,G=`${cL.MIDDLEWARE} - ${X}`,W=C[1],F=Pn(W,J.tracer,G,{[DG.FASTIFY_TYPE]:dL.MIDDLEWARE,[DG.PLUGIN_NAME]:A,[DG.HOOK_NAME]:Q}),Z=Y&&C[C.length-1];if(Z)C[C.length-1]=function(...U){oP(W),Z.apply(this,U)};return E1.context.with(E1.trace.setSpan(E1.context.active(),F),()=>{return xEQ(()=>{return B.apply(this,C)},(U)=>{if(U instanceof Error)F.setStatus({code:E1.SpanStatusCode.ERROR,message:U.message}),F.recordException(U);if(!Y)oP(W)})})}}_wrapAddHook(){let A=this;return this._diag.debug("Patching fastify server.addHook function"),function(Q){return function(...Y){let J=Y[0],C=Y[1],X=this.pluginName;if(!wq0.has(J))return Q.apply(this,Y);let G=typeof Y[Y.length-1]==="function"&&C.constructor.name!=="AsyncFunction";return Q.apply(this,[J,A._wrapHandler(X,J,C,G)])}}}_patchConstructor(A){let Q=this;function B(...Y){let J=A.fastify.apply(this,Y);return J.addHook("onRequest",Q._hookOnRequest()),J.addHook("preHandler",Q._hookPreHandler()),jq0(),Q._wrap(J,"addHook",Q._wrapAddHook()),J}if(A.errorCodes!==void 0)B.errorCodes=A.errorCodes;return B.fastify=B,B.default=B,B}_patchSend(){let A=this;return this._diag.debug("Patching fastify reply.send function"),function(B){return function(...J){let C=J[0];if(!A.isEnabled())return B.apply(this,J);return O$.safeExecuteInTheMiddle(()=>{return B.apply(this,J)},(X)=>{if(!X&&C instanceof Error)X=C;oP(this,X)})}}}_hookPreHandler(){let A=this;return this._diag.debug("Patching fastify preHandler function"),function(B,Y,J){if(!A.isEnabled())return J();let C=B,X=C.routeOptions?.handler||C.context?.handler,G=X?.name.startsWith("bound ")?X.name.substring(6):X?.name,W=`${cL.REQUEST_HANDLER} - ${G||this.pluginName||fEQ}`,F={[DG.PLUGIN_NAME]:this.pluginName,[DG.FASTIFY_TYPE]:dL.REQUEST_HANDLER,[bEQ.SEMATTRS_HTTP_ROUTE]:C.routeOptions?C.routeOptions.url:B.routerPath};if(G)F[DG.FASTIFY_NAME]=G;let Z=Pn(Y,A.tracer,W,F);mEQ(Z);let{requestHook:U}=A.getConfig();if(U)O$.safeExecuteInTheMiddle(()=>U(Z,{request:B}),($)=>{if($)A._diag.error("request hook failed",$)},!0);return E1.context.with(E1.trace.setSpan(E1.context.active(),Z),()=>{J()})}}}function jq0(){let A=gA();if(A)A.on("spanStart",(Q)=>{mEQ(Q)})}function mEQ(A){let Q=eA(A).data,B=Q["fastify.type"];if(Q[YQ]||!B)return;A.setAttributes({[DQ]:"auto.http.otel.fastify",[YQ]:`${B}.fastify`});let Y=Q["fastify.name"]||Q["plugin.name"]||Q["hook.name"];if(typeof Y==="string"){let J=Y.replace(/^fastify -> /,"").replace(/^@fastify\/otel -> /,"");A.updateName(J)}}var dEQ="Fastify",Oq0="Fastify-V3",Sn=EQ(Oq0,()=>new Tn),kn=EQ(dEQ,()=>{let A=new On,Q=A.plugin();return uEQ.subscribe("fastify.initialization",(B)=>{let Y=B.fastify;Y?.register(Q).after((J)=>{if(J)fQ&&e.error("Failed to setup Fastify instrumentation",J);else if(Sq0(),Y)kq0(Y)})}),A}),Pq0=()=>{return{name:dEQ,setupOnce(){Sn(),kn()}}},eP=wA(Pq0);function Tq0(A,Q,B){let Y=B.statusCode;return Y>=500||Y<=299}function cEQ(A,Q){let B=Q?.shouldHandleError||Tq0,Y=Object.assign(function(J,C,X){J.addHook("onError",async(G,W,F)=>{if(B(F,G,W))jB(F)}),X()},{[Symbol.for("skip-override")]:!0,[Symbol.for("fastify.display-name")]:"sentry-fastify-error-handler"});A.register(Y)}function lEQ(A){let Q=eA(A),B=Q.description,Y=Q.data,J=Y["fastify.type"],C=J==="hook",X=J===B?.startsWith("handler -"),G=B==="request"||J==="request-handler";if(Y[YQ]||!X&&!G&&!C)return;let W=C?"hook":X?"middleware":G?"request-handler":"";A.setAttributes({[DQ]:"auto.http.otel.fastify",[YQ]:`${W}.fastify`});let F=Y["fastify.name"]||Y["plugin.name"]||Y["hook.name"];if(typeof F==="string"){let Z=F.replace(/^fastify -> /,"").replace(/^@fastify\/otel -> /,"");A.updateName(Z)}}function Sq0(){let A=gA();if(A)A.on("spanStart",(Q)=>{lEQ(Q)})}function kq0(A){A.addHook("onRequest",async(Q,B)=>{if(Q.opentelemetry){let{span:C}=Q.opentelemetry();if(C)lEQ(C)}let Y=Q.routeOptions?.url,J=Q.method||"GET";RQ().setTransactionName(`${J} ${Y}`)})}var PKQ=qA(OKQ(),1);var TKQ="Graphql",fn=EQ(TKQ,PKQ.GraphQLInstrumentation,(A)=>{let Q=SKQ(A);return{...Q,responseHook(B){s0(B,"auto.graphql.otel.graphql");let Y=eA(B).data,J=Y["graphql.operation.type"],C=Y["graphql.operation.name"];if(Q.useOperationNameForRootSpan&&J){let X=K0(B),W=eA(X).data[wK]||[],F=C?`${J} ${C}`:`${J}`;if(Array.isArray(W))W.push(F),X.setAttribute(wK,W);else if(typeof W==="string")X.setAttribute(wK,[W,F]);else X.setAttribute(wK,F);if(!eA(X).data["original-description"])X.setAttribute("original-description",eA(X).description);X.updateName(`${eA(X).data["original-description"]} (${JM0(W)})`)}}}}),YM0=(A={})=>{return{name:TKQ,setupOnce(){fn(SKQ(A))}}},YT=wA(YM0);function SKQ(A){return{ignoreResolveSpans:!0,ignoreTrivialResolveSpans:!0,useOperationNameForRootSpan:!0,...A}}function JM0(A){if(Array.isArray(A)){let Q=A.slice().sort();if(Q.length<=5)return Q.join(", ");else return`${Q.slice(0,5).join(", ")}, +${Q.length-5}`}return`${A}`}var nKQ=qA(iKQ(),1);var sKQ="Kafka",bn=EQ(sKQ,()=>new nKQ.KafkaJsInstrumentation({consumerHook(A){s0(A,"auto.kafkajs.otel.consumer")},producerHook(A){s0(A,"auto.kafkajs.otel.producer")}})),GM0=()=>{return{name:sKQ,setupOnce(){bn()}}},JT=wA(GM0);var XVQ=qA(CVQ(),1);var GVQ="LruMemoizer",mn=EQ(GVQ,()=>new XVQ.LruMemoizerInstrumentation),$M0=()=>{return{name:GVQ,setupOnce(){mn()}}},CT=wA($M0);var MVQ=qA(qVQ(),1);var zVQ="Mongo",pn=EQ(zVQ,()=>new MVQ.MongoDBInstrumentation({dbStatementSerializer:IM0,responseHook(A){s0(A,"auto.db.otel.mongo")}}));function IM0(A){let Q=ln(A);return JSON.stringify(Q)}function ln(A){if(Array.isArray(A))return A.map((Q)=>ln(Q));if(HM0(A)){let Q={};return Object.entries(A).map(([B,Y])=>[B,ln(Y)]).reduce((B,Y)=>{if(NM0(Y))B[Y[0]]=Y[1];return B},Q)}return"?"}function HM0(A){return typeof A==="object"&&A!==null&&!DM0(A)}function DM0(A){let Q=!1;if(typeof Buffer<"u")Q=Buffer.isBuffer(A);return Q}function NM0(A){return Array.isArray(A)}var LM0=()=>{return{name:zVQ,setupOnce(){pn()}}},XT=wA(LM0);var lVQ=qA(cVQ(),1);var pVQ="Mongoose",rn=EQ(pVQ,()=>new lVQ.MongooseInstrumentation({responseHook(A){s0(A,"auto.db.otel.mongoose")}})),vM0=()=>{return{name:pVQ,setupOnce(){rn()}}},WT=wA(vM0);var FIQ=qA(WIQ(),1);var ZIQ="Mysql",en=EQ(ZIQ,()=>new FIQ.MySQLInstrumentation({})),rM0=()=>{return{name:ZIQ,setupOnce(){en()}}},ZT=wA(rM0);var SIQ=qA(TIQ(),1);var kIQ="Mysql2",Js=EQ(kIQ,()=>new SIQ.MySQL2Instrumentation({responseHook(A){s0(A,"auto.db.otel.mysql2")}})),Uz0=()=>{return{name:kIQ,setupOnce(){Js()}}},UT=wA(Uz0);var DHQ=qA(aIQ(),1),NHQ=qA(EHQ(),1);var jz0=["get","set","setex"],Xs=["get","mget"],Oz0=["set","setex"];function eL(A,Q){return A.includes(Q.toLowerCase())}function Gs(A){if(eL(Xs,A))return"cache.get";else if(eL(Oz0,A))return"cache.put";else return}function Pz0(A,Q){return Q.some((B)=>A.startsWith(B))}function VHQ(A,Q){try{if(Q.length===0)return;let B=(J)=>{if(typeof J==="string"||typeof J==="number"||Buffer.isBuffer(J))return[J.toString()];else if(Array.isArray(J))return KHQ(J.map((C)=>B(C)));else return[""]},Y=Q[0];if(eL(jz0,A)&&Y!=null)return B(Y);return KHQ(Q.map((J)=>B(J)))}catch(B){return}}function IHQ(A,Q,B){if(!Gs(A))return!1;for(let Y of Q)if(Pz0(Y,B))return!0;return!1}function HHQ(A){let Q=(B)=>{try{if(Buffer.isBuffer(B))return B.byteLength;else if(typeof B==="string")return B.length;else if(typeof B==="number")return B.toString().length;else if(B===null||B===void 0)return 0;return JSON.stringify(B).length}catch(Y){return}};return Array.isArray(A)?A.reduce((B,Y)=>{let J=Q(Y);return typeof J==="number"?B!==void 0?B+J:J:B},0):Q(A)}function KHQ(A){let Q=[],B=(Y)=>{Y.forEach((J)=>{if(Array.isArray(J))B(J);else Q.push(J)})};return B(A),Q}var LHQ="Redis",Ws={},qHQ=(A,Q,B,Y)=>{A.setAttribute(DQ,"auto.db.otel.redis");let J=VHQ(Q,B),C=Gs(Q);if(!J||!C||!Ws.cachePrefixes||!IHQ(Q,J,Ws.cachePrefixes))return;let X=eA(A).data["net.peer.name"],G=eA(A).data["net.peer.port"];if(G&&X)A.setAttributes({"network.peer.address":X,"network.peer.port":G});let W=HHQ(Y);if(W)A.setAttribute(iu,W);if(eL(Xs,Q)&&W!==void 0)A.setAttribute(lu,W>0);A.setAttributes({[YQ]:C,[pu]:J});let F=J.join(", ");A.updateName(n9(F,1024))},Tz0=EQ("IORedis",()=>{return new DHQ.IORedisInstrumentation({responseHook:qHQ})}),Sz0=EQ("Redis-4",()=>{return new NHQ.RedisInstrumentation({responseHook:qHQ})}),Fs=Object.assign(()=>{Tz0(),Sz0()},{id:LHQ}),kz0=(A={})=>{return{name:LHQ,setupOnce(){Ws=A,Fs()}}},KT=wA(kz0);var eHQ=qA(tHQ(),1);var ADQ="Postgres",Hs=EQ(ADQ,()=>new eHQ.PgInstrumentation({requireParentSpan:!0,requestHook(A){s0(A,"auto.db.otel.postgres")}})),V20=()=>{return{name:ADQ,setupOnce(){Hs()}}},DT=wA(V20);var YDQ=qA(yA(),1),NT=qA(NB(),1),dW=qA(yA(),1);var I20=process.env.PRISMA_SHOW_ALL_TRACES==="true",H20="00-10-10-00";function D20(A){switch(A){case"client":return dW.SpanKind.CLIENT;case"internal":default:return dW.SpanKind.INTERNAL}}var N20=class{traceMiddleware;tracerProvider;ignoreSpanTypes;constructor({traceMiddleware:A,tracerProvider:Q,ignoreSpanTypes:B}){this.traceMiddleware=A,this.tracerProvider=Q,this.ignoreSpanTypes=B}isEnabled(){return!0}getTraceParent(A){let Q=dW.trace.getSpanContext(A??dW.context.active());if(Q)return`00-${Q.traceId}-${Q.spanId}-0${Q.traceFlags}`;return H20}dispatchEngineSpans(A){let Q=this.tracerProvider.getTracer("prisma"),B=new Map,Y=A.filter((J)=>J.parentId===null);for(let J of Y)JDQ(Q,J,A,B,this.ignoreSpanTypes)}getActiveContext(){return dW.context.active()}runInChildSpan(A,Q){if(typeof A==="string")A={name:A};if(A.internal&&!I20)return Q();if(A.middleware&&!this.traceMiddleware)return Q();let B=this.tracerProvider.getTracer("prisma"),Y=A.context??this.getActiveContext(),J=`prisma:client:${A.name}`;if(CDQ(J,this.ignoreSpanTypes))return Q();if(A.active===!1){let C=B.startSpan(J,A,Y);return QDQ(C,Q(C,Y))}return B.startActiveSpan(J,A,(C)=>QDQ(C,Q(C,Y)))}};function JDQ(A,Q,B,Y,J){if(CDQ(Q.name,J))return;let C={attributes:Q.attributes,kind:D20(Q.kind),startTime:Q.startTime};A.startActiveSpan(Q.name,C,(X)=>{if(Y.set(Q.id,X.spanContext().spanId),Q.links)X.addLinks(Q.links.flatMap((W)=>{let F=Y.get(W);if(!F)return[];return{context:{spanId:F,traceId:X.spanContext().traceId,traceFlags:X.spanContext().traceFlags}}}));let G=B.filter((W)=>W.parentId===Q.id);for(let W of G)JDQ(A,W,B,Y,J);X.end(Q.endTime)})}function QDQ(A,Q){if(L20(Q))return Q.then((B)=>{return A.end(),B},(B)=>{throw A.end(),B});return A.end(),Q}function L20(A){return A!=null&&typeof A.then==="function"}function CDQ(A,Q){return Q.some((B)=>typeof B==="string"?B===A:B.test(A))}var XDQ={name:"@prisma/instrumentation",version:"6.7.0",description:"OpenTelemetry compliant instrumentation for Prisma Client",main:"dist/index.js",module:"dist/index.mjs",types:"dist/index.d.ts",exports:{".":{require:{types:"./dist/index.d.ts",default:"./dist/index.js"},import:{types:"./dist/index.d.ts",default:"./dist/index.mjs"}}},license:"Apache-2.0",homepage:"https://www.prisma.io",repository:{type:"git",url:"https://github.com/prisma/prisma.git",directory:"packages/instrumentation"},bugs:"https://github.com/prisma/prisma/issues",devDependencies:{"@prisma/internals":"workspace:*","@swc/core":"1.11.5","@types/jest":"29.5.14","@types/node":"18.19.76","@opentelemetry/api":"1.9.0",jest:"29.7.0","jest-junit":"16.0.0",typescript:"5.4.5"},dependencies:{"@opentelemetry/instrumentation":"^0.52.0 || ^0.53.0 || ^0.54.0 || ^0.55.0 || ^0.56.0 || ^0.57.0"},peerDependencies:{"@opentelemetry/api":"^1.8"},files:["dist"],keywords:["prisma","instrumentation","opentelemetry","otel"],scripts:{dev:"DEV=true tsx helpers/build.ts",build:"tsx helpers/build.ts",prepublishOnly:"pnpm run build",test:"jest"},sideEffects:!1},Ns=XDQ.version,q20=Ns.split(".")[0],BDQ="PRISMA_INSTRUMENTATION",Ds=`V${q20}_PRISMA_INSTRUMENTATION`,M20=XDQ.name,z20="@prisma/client",GDQ=class extends NT.InstrumentationBase{tracerProvider;constructor(A={}){super(M20,Ns,A)}setTracerProvider(A){this.tracerProvider=A}init(){return[new NT.InstrumentationNodeModuleDefinition(z20,[Ns])]}enable(){let A=this._config,Q={helper:new N20({traceMiddleware:A.middleware??!1,tracerProvider:this.tracerProvider??YDQ.trace.getTracerProvider(),ignoreSpanTypes:A.ignoreSpanTypes??[]})};global[BDQ]=Q,global[Ds]=Q}disable(){delete global[BDQ],delete global[Ds]}isEnabled(){return Boolean(global[Ds])}};var WDQ="Prisma";function R20(A){return!!A&&typeof A==="object"&&"dispatchEngineSpans"in A}function FDQ(){let A=globalThis.PRISMA_INSTRUMENTATION;return A&&typeof A==="object"&&"helper"in A?A.helper:void 0}class ZDQ extends GDQ{constructor(){super()}enable(){super.enable();let A=FDQ(),Q=!1;if(R20(A))A.createEngineSpan=()=>{f0(()=>{if(!Q)Q=!0,console.warn("[Sentry] The Sentry SDK supports tracing with Prisma version 5 only with limited capabilities. For full tracing capabilities pass `prismaInstrumentation` for version 5 to the Sentry `prismaIntegration`. Read more: https://docs.sentry.io/platforms/javascript/guides/node/configuration/integrations/prisma/")})}}}var w20=EQ(WDQ,(A)=>{if(A?.prismaInstrumentation)return A.prismaInstrumentation;return new ZDQ}),LT=wA(({prismaInstrumentation:A}={})=>{return{name:WDQ,setupOnce(){w20({prismaInstrumentation:A})},setup(Q){if(!FDQ())return;Q.on("spanStart",(B)=>{let Y=eA(B);if(Y.description?.startsWith("prisma:"))B.setAttribute(DQ,"auto.db.otel.prisma");if(Y.description==="prisma:engine:db_query"&&Y.data["db.query.text"])B.updateName(Y.data["db.query.text"]);if(Y.description==="prisma:engine:db_query"&&!Y.data["db.system"])B.setAttribute("db.system","prisma")})}}});var PDQ=qA(ODQ(),1);var TDQ="Hapi",zT=EQ(TDQ,()=>new PDQ.HapiInstrumentation),i20=()=>{return{name:TDQ,setupOnce(){zT()}}},RT=wA(i20);function n20(A){return!!(A&&typeof A==="object"&&("error"in A)&&A.error)}function s20(A){jB(A,{mechanism:{type:"hapi",handled:!1,data:{function:"hapiErrorPlugin"}}})}var r20={name:"SentryHapiErrorPlugin",version:l0,register:async function(A){A.events.on({name:"request",channels:["error"]},(B,Y)=>{if(RQ()!==v5()){let J=B.route;if(J.path)RQ().setTransactionName(`${J.method.toUpperCase()} ${J.path}`)}else fQ&&e.warn("Isolation scope is still the default isolation scope - skipping setting transactionName");if(n20(Y))s20(Y.error)})}};async function SDQ(A){await A.register(r20);let Q=gA();if(Q)Q.on("spanStart",(B)=>{a20(B)});RW(A.register,"hapi")}function a20(A){let Q=eA(A).data,B=Q["hapi.type"];if(Q[YQ]||!B)return;A.setAttributes({[DQ]:"auto.http.otel.hapi",[YQ]:`${B}.hapi`})}var eDQ=qA(tDQ(),1),ANQ=qA(dB(),1);var QNQ="Koa",Ps=EQ(QNQ,()=>new eDQ.KoaInstrumentation({requestHook(A,Q){if(X30(A),RQ()===v5()){fQ&&e.warn("Isolation scope is default isolation scope - skipping setting transactionName");return}let Y=eA(A).data[ANQ.ATTR_HTTP_ROUTE],J=Q.context?.request?.method?.toUpperCase()||"GET";if(Y)RQ().setTransactionName(`${J} ${Y}`)}})),C30=()=>{return{name:QNQ,setupOnce(){Ps()}}},OT=wA(C30),BNQ=(A)=>{A.use(async(Q,B)=>{try{await B()}catch(Y){throw jB(Y),Y}}),RW(A.use,"koa")};function X30(A){A.setAttribute(DQ,"auto.http.otel.koa");let Q=eA(A).data,B=Q["koa.type"];if(B)A.setAttribute(YQ,`${B}.koa`);let Y=Q["koa.name"];if(typeof Y==="string")A.updateName(Y||"< unknown >")}var zNQ=qA(MNQ(),1);var RNQ="Connect",vs=EQ(RNQ,()=>new zNQ.ConnectInstrumentation),L30=()=>{return{name:RNQ,setupOnce(){vs()}}},TT=wA(L30);function q30(A,Q,B,Y){jB(A),Y(A)}var wNQ=(A)=>{A.use(q30);let Q=gA();if(Q)Q.on("spanStart",(B)=>{M30(B)});RW(A.use,"connect")};function M30(A){let Q=eA(A).data,B=Q["connect.type"];if(Q[YQ]||!B)return;A.setAttributes({[DQ]:"auto.http.otel.connect",[YQ]:`${B}.connect`});let Y=Q["connect.name"];if(typeof Y==="string")A.updateName(Y)}import*as z30 from"node:http";var ys="Spotlight",R30=(A={})=>{let Q={sidecarUrl:A.sidecarUrl||"http://localhost:8969/stream"};return{name:ys,setup(B){if(typeof process==="object"&&process.env&&process.env.NODE_ENV!=="development")e.warn("[Spotlight] It seems you're not in dev mode. Do you really want to have Spotlight enabled?");w30(B,Q)}}},ST=wA(R30);function w30(A,Q){let B=j30(Q.sidecarUrl);if(!B)return;let Y=0;A.on("beforeEnvelope",(J)=>{if(Y>3){e.warn("[Spotlight] Disabled Sentry -> Spotlight integration due to too many failed requests");return}let C=RN(J),G=O30()({method:"POST",path:B.pathname,hostname:B.hostname,port:B.port,headers:{"Content-Type":"application/x-sentry-envelope"}},(W)=>{if(W.statusCode&&W.statusCode>=200&&W.statusCode<400)Y=0;W.on("data",()=>{}),W.on("end",()=>{}),W.setEncoding("utf8")});G.on("error",()=>{Y++,e.warn("[Spotlight] Failed to send envelope to Spotlight Sidecar")}),G.write(C),G.end()})}function j30(A){try{return new URL(`${A}`)}catch{e.warn(`[Spotlight] Invalid sidecar URL: ${A}`);return}}function O30(){let{request:A}=z30;if(P30(A))return A.__sentry_original__;return A}function P30(A){return"__sentry_original__"in A}var iNQ=qA(pNQ(),1);var nNQ="Knex",l30=EQ(nNQ,()=>new iNQ.KnexInstrumentation({requireParentSpan:!0})),p30=()=>{let A;return{name:nNQ,setupOnce(){let Q=l30();A=VW(Q)},setup(Q){A?.(()=>Q.on("spanStart",(B)=>{let{data:Y}=eA(B);if("knex.version"in Y)B.setAttribute(DQ,"auto.db.otel.knex")}))}}},sNQ=wA(p30);var ULQ=qA($LQ(),1);var t30=new Set(["callProcedure","execSql","execSqlBatch","execBulkLoad","prepare","execute"]),ELQ="Tedious",hs=EQ(ELQ,()=>new ULQ.TediousInstrumentation({})),e30=()=>{let A;return{name:ELQ,setupOnce(){let Q=hs();A=VW(Q)},setup(Q){A?.(()=>Q.on("spanStart",(B)=>{let{description:Y,data:J}=eA(B);if(!Y||J["db.system"]!=="mssql")return;let C=Y.split(" ")[0]||"";if(t30.has(C))B.setAttribute(DQ,"auto.db.otel.tedious")}))}}},gT=wA(e30);var zLQ=qA(MLQ(),1);var RLQ="GenericPool",fs=EQ(RLQ,()=>new zLQ.GenericPoolInstrumentation({})),YR0=()=>{let A;return{name:RLQ,setupOnce(){let Q=fs();A=VW(Q)},setup(Q){A?.(()=>Q.on("spanStart",(B)=>{let J=eA(B).description;if(J==="generic-pool.aquire"||J==="generic-pool.acquire")B.setAttribute(DQ,"auto.db.otel.generic_pool")}))}}},hT=wA(YR0);var xLQ=qA(hLQ(),1);var fLQ="Dataloader",XR0=EQ(fLQ,()=>new xLQ.DataloaderInstrumentation({requireParentSpan:!0})),GR0=()=>{let A;return{name:fLQ,setupOnce(){let Q=XR0();A=VW(Q)},setup(Q){A?.(()=>{Q.on("spanStart",(B)=>{let Y=eA(B);if(Y.description?.startsWith("dataloader"))B.setAttribute(DQ,"auto.db.otel.dataloader");if(Y.description==="dataloader.load"||Y.description==="dataloader.loadMany"||Y.description==="dataloader.batch")B.setAttribute(YQ,"cache.get")})})}}},bLQ=wA(GR0);var CqQ=qA(JqQ(),1);var XqQ="Amqplib",OR0={consumeEndHook:(A)=>{s0(A,"auto.amqplib.otel.consumer")},publishHook:(A)=>{s0(A,"auto.amqplib.otel.publisher")}},cs=EQ(XqQ,()=>new CqQ.AmqplibInstrumentation(OR0)),PR0=()=>{return{name:XqQ,setupOnce(){cs()}}},bT=wA(PR0);var mT=qA(NB(),1);var GqQ=["generateText","streamText","generateObject","streamObject","embed","embedMany"];class Cq extends mT.InstrumentationBase{__init(){this._isPatched=!1}__init2(){this._callbacks=[]}constructor(A={}){super("@sentry/instrumentation-vercel-ai",l0,A);Cq.prototype.__init.call(this),Cq.prototype.__init2.call(this)}init(){return new mT.InstrumentationNodeModuleDefinition("ai",[">=3.0.0 <5"],this._patch.bind(this))}callWhenPatched(A){if(this._isPatched)A();else this._callbacks.push(A)}_patch(A){this._isPatched=!0,this._callbacks.forEach((B)=>B()),this._callbacks=[];function Q(B){return(...Y)=>{let J=Y[0].experimental_telemetry||{};if(J.isEnabled===void 0)Y[0].experimental_telemetry={isEnabled:!0,recordInputs:!1,recordOutputs:!1,...J};return B.apply(this,Y)}}if(Object.prototype.toString.call(A)==="[object Module]"){for(let B of GqQ)A[B]=Q(A[B]);return A}else{let B=GqQ.reduce((Y,J)=>{return Y[J]=Q(A[J]),Y},{});return{...A,...B}}}}var WqQ="VercelAI",ls=EQ(WqQ,()=>new Cq({})),TR0=()=>{let A;return{name:WqQ,setupOnce(){A=ls()},setup(Q){A?.callWhenPatched(()=>{Q.on("spanStart",(B)=>{let{data:Y,description:J}=eA(B);if(!J)return;let C=Y["ai.model.id"],X=Y["ai.model.provider"];if(typeof C!=="string"||typeof X!=="string"||!C||!X)return;let G=!1;switch(J){case"ai.generateText":{B.setAttribute(YQ,"ai.pipeline.generateText"),G=!0;break}case"ai.generateText.doGenerate":{B.setAttribute(YQ,"ai.run.doGenerate");break}case"ai.streamText":{B.setAttribute(YQ,"ai.pipeline.streamText"),G=!0;break}case"ai.streamText.doStream":{B.setAttribute(YQ,"ai.run.doStream");break}case"ai.generateObject":{B.setAttribute(YQ,"ai.pipeline.generateObject"),G=!0;break}case"ai.generateObject.doGenerate":{B.setAttribute(YQ,"ai.run.doGenerate");break}case"ai.streamObject":{B.setAttribute(YQ,"ai.pipeline.streamObject"),G=!0;break}case"ai.streamObject.doStream":{B.setAttribute(YQ,"ai.run.doStream");break}case"ai.embed":{B.setAttribute(YQ,"ai.pipeline.embed"),G=!0;break}case"ai.embed.doEmbed":{B.setAttribute(YQ,"ai.embeddings");break}case"ai.embedMany":{B.setAttribute(YQ,"ai.pipeline.embedMany"),G=!0;break}case"ai.embedMany.doEmbed":{B.setAttribute(YQ,"ai.embeddings");break}case"ai.toolCall":case"ai.stream.firstChunk":case"ai.stream.finish":B.setAttribute(YQ,"ai.run");break}s0(B,"auto.vercelai.otel");let W=J.replace("ai.","");B.setAttribute("ai.pipeline.name",W),B.updateName(W);let F=Y["ai.telemetry.functionId"];if(F&&typeof F==="string"&&G)B.updateName(F),B.setAttribute("ai.pipeline.name",F);if(Y["ai.prompt"])B.setAttribute("ai.input_messages",Y["ai.prompt"]);if(Y["ai.model.id"])B.setAttribute("ai.model_id",Y["ai.model.id"]);B.setAttribute("ai.streaming",J.includes("stream"))}),Q.addEventProcessor((B)=>{if(B.type==="transaction"&&B.spans?.length)for(let Y of B.spans){let{data:J,description:C}=Y;if(!C||Y.origin!=="auto.vercelai.otel")continue;if(J["ai.usage.completionTokens"]!=null)J["ai.completion_tokens.used"]=J["ai.usage.completionTokens"];if(J["ai.usage.promptTokens"]!=null)J["ai.prompt_tokens.used"]=J["ai.usage.promptTokens"];if(typeof J["ai.usage.completionTokens"]=="number"&&typeof J["ai.usage.promptTokens"]=="number")J["ai.total_tokens.used"]=J["ai.usage.completionTokens"]+J["ai.usage.promptTokens"]}return B})})}}},uT=wA(TR0);import*as ps from"node:diagnostics_channel";var SR0="ChildProcess",dT=wA((A={})=>{return{name:SR0,setup(){ps.channel("child_process").subscribe((Q)=>{if(Q&&typeof Q==="object"&&"process"in Q)kR0(Q.process,A)}),ps.channel("worker_threads").subscribe((Q)=>{if(Q&&typeof Q==="object"&&"worker"in Q)_R0(Q.worker,A)})}}});function kR0(A,Q){let B=!1,Y;A.on("spawn",()=>{if(A.spawnfile==="/usr/bin/sw_vers"){B=!0;return}if(Y={spawnfile:A.spawnfile},Q.includeChildProcessArgs)Y.spawnargs=A.spawnargs}).on("exit",(J)=>{if(!B){if(B=!0,J!==null&&J!==0)E9({category:"child_process",message:`Child process exited with code '${J}'`,level:J===0?"info":"warning",data:Y})}}).on("error",(J)=>{if(!B)B=!0,E9({category:"child_process",message:`Child process errored with '${J.message}'`,level:"error",data:Y})})}function _R0(A,Q){let B;A.on("online",()=>{B=A.threadId}).on("error",(Y)=>{if(Q.captureWorkerErrors!==!1)jB(Y,{mechanism:{type:"instrument",handled:!1,data:{threadId:String(B)}}});else E9({category:"worker_thread",message:`Worker thread errored with '${Y.message}'`,level:"error",data:{threadId:B}})})}var vR0=["trace","debug","info","warn","error","fatal"],FqQ=Symbol.for("level"),yR0=Symbol.for("message"),gR0=Symbol.for("splat");function ZqQ(A,Q){class B extends A{constructor(Y){super(Y);this._levels=new Set(Q?.levels??vR0)}log(Y,J){try{if(setImmediate(()=>{this.emit("logged",Y)}),!hR0(Y))return;let C=Y[FqQ],{level:X,message:G,timestamp:W,...F}=Y;F[FqQ]=void 0,F[yR0]=void 0,F[gR0]=void 0;let Z=xR0[C]??"info";if(this._levels.has(Z))XG(Z,G,{...F,"sentry.origin":"auto.logging.winston"})}catch{}if(J)J()}}return B}function hR0(A){return typeof A==="object"&&A!=null}var xR0={silly:"trace",debug:"debug",verbose:"debug",http:"debug",info:"info",notice:"info",warn:"warn",warning:"warn",error:"error",emerg:"fatal",alert:"fatal",crit:"fatal"};var zqQ=qA(MqQ(),1);var lT=e$Q(zqQ.AsyncLocalStorageContextManager);var rR0="ProcessSession",RqQ=wA(()=>{return{name:rR0,setupOnce(){vN(),process.on("beforeExit",()=>{if(RQ().getSession()?.status!=="ok")lZ()})}}});function pT(){return[lP(),eP(),YT(),XT(),WT(),ZT(),UT(),KT(),DT(),LT(),RT(),OT(),TT(),gT(),hT(),JT(),bT(),CT(),uT()]}function wqQ(){return[Bn,Nn,Ln,vs,kn,Sn,zT,bn,Ps,mn,pn,rn,en,Js,Hs,zT,fn,Fs,hs,fs,cs,ls]}import*as oR0 from"node:http";import*as tR0 from"node:https";import{Readable as eR0}from"node:stream";import{createGzip as Aw0}from"node:zlib";import*as SG from"node:net";import*as rs from"node:tls";import*as ns from"node:http";var MX=Symbol("AgentBaseInternalState");class ss extends ns.Agent{constructor(A){super(A);this[MX]={}}isSecureEndpoint(A){if(A){if(typeof A.secureEndpoint==="boolean")return A.secureEndpoint;if(typeof A.protocol==="string")return A.protocol==="https:"}let{stack:Q}=Error();if(typeof Q!=="string")return!1;return Q.split(` +`).some((B)=>B.indexOf("(https.js:")!==-1||B.indexOf("node:https:")!==-1)}createSocket(A,Q,B){let Y={...Q,secureEndpoint:this.isSecureEndpoint(Q)};Promise.resolve().then(()=>this.connect(A,Y)).then((J)=>{if(J instanceof ns.Agent)return J.addRequest(A,Y);this[MX].currentSocket=J,super.createSocket(A,Q,B)},B)}createConnection(){let A=this[MX].currentSocket;if(this[MX].currentSocket=void 0,!A)throw Error("No socket was returned in the `connect()` function");return A}get defaultPort(){return this[MX].defaultPort??(this.protocol==="https:"?443:80)}set defaultPort(A){if(this[MX])this[MX].defaultPort=A}get protocol(){return this[MX].protocol??(this.isSecureEndpoint()?"https:":"http:")}set protocol(A){if(this[MX])this[MX].protocol=A}}function iT(...A){e.log("[https-proxy-agent:parse-proxy-response]",...A)}function jqQ(A){return new Promise((Q,B)=>{let Y=0,J=[];function C(){let Z=A.read();if(Z)F(Z);else A.once("readable",C)}function X(){A.removeListener("end",G),A.removeListener("error",W),A.removeListener("readable",C)}function G(){X(),iT("onend"),B(Error("Proxy connection ended before receiving CONNECT response"))}function W(Z){X(),iT("onerror %o",Z),B(Z)}function F(Z){J.push(Z),Y+=Z.length;let U=Buffer.concat(J,Y),$=U.indexOf(`\r \r -`);if($===-1){RT("have not received end of HTTP headers yet..."),C();return}let E=U.subarray(0,$).toString("ascii").split(`\r -`),K=E.shift();if(!K)return A.destroy(),B(Error("No header received from proxy CONNECT response"));let I=K.split(" "),V=+(I[1]||0),H=I.slice(2).join(" "),D={};for(let L of E){if(!L)continue;let z=L.indexOf(":");if(z===-1)return A.destroy(),B(Error(`Invalid header from proxy CONNECT response: "${L}"`));let M=L.slice(0,z).toLowerCase(),N=L.slice(z+1).trimStart(),q=D[M];if(typeof q==="string")D[M]=[q,N];else if(Array.isArray(q))q.push(N);else D[M]=N}RT("got proxy server response: %o %o",K,D),X(),Q({connect:{statusCode:V,statusText:H,headers:D},buffered:U})}A.on("error",F),A.on("end",G),C()})}function pL(...A){e.log("[https-proxy-agent]",...A)}class wT extends ws{static __initStatic(){this.protocols=["http","https"]}constructor(A,Q){super(Q);this.options={},this.proxy=typeof A==="string"?new URL(A):A,this.proxyHeaders=Q?.headers??{},pL("Creating new HttpsProxyAgent instance: %o",this.proxy.href);let B=(this.proxy.hostname||this.proxy.host).replace(/^\[|\]$/g,""),Y=this.proxy.port?parseInt(this.proxy.port,10):this.proxy.protocol==="https:"?443:80;this.connectOpts={ALPNProtocols:["http/1.1"],...Q?mLQ(Q,"headers"):null,host:B,port:Y}}async connect(A,Q){let{proxy:B}=this;if(!Q.host)throw TypeError('No "host" provided');let Y;if(B.protocol==="https:"){pL("Creating `tls.Socket`: %o",this.connectOpts);let U=this.connectOpts.servername||this.connectOpts.host;Y=js.connect({...this.connectOpts,servername:U&&MG.isIP(U)?void 0:U})}else pL("Creating `net.Socket`: %o",this.connectOpts),Y=MG.connect(this.connectOpts);let J=typeof this.proxyHeaders==="function"?this.proxyHeaders():{...this.proxyHeaders},C=MG.isIPv6(Q.host)?`[${Q.host}]`:Q.host,X=`CONNECT ${C}:${Q.port} HTTP/1.1\r +`);if($===-1){iT("have not received end of HTTP headers yet..."),C();return}let E=U.subarray(0,$).toString("ascii").split(`\r +`),K=E.shift();if(!K)return A.destroy(),B(Error("No header received from proxy CONNECT response"));let I=K.split(" "),V=+(I[1]||0),H=I.slice(2).join(" "),D={};for(let L of E){if(!L)continue;let z=L.indexOf(":");if(z===-1)return A.destroy(),B(Error(`Invalid header from proxy CONNECT response: "${L}"`));let M=L.slice(0,z).toLowerCase(),N=L.slice(z+1).trimStart(),q=D[M];if(typeof q==="string")D[M]=[q,N];else if(Array.isArray(q))q.push(N);else D[M]=N}iT("got proxy server response: %o %o",K,D),X(),Q({connect:{statusCode:V,statusText:H,headers:D},buffered:U})}A.on("error",W),A.on("end",G),C()})}function Xq(...A){e.log("[https-proxy-agent]",...A)}class nT extends ss{static __initStatic(){this.protocols=["http","https"]}constructor(A,Q){super(Q);this.options={},this.proxy=typeof A==="string"?new URL(A):A,this.proxyHeaders=Q?.headers??{},Xq("Creating new HttpsProxyAgent instance: %o",this.proxy.href);let B=(this.proxy.hostname||this.proxy.host).replace(/^\[|\]$/g,""),Y=this.proxy.port?parseInt(this.proxy.port,10):this.proxy.protocol==="https:"?443:80;this.connectOpts={ALPNProtocols:["http/1.1"],...Q?OqQ(Q,"headers"):null,host:B,port:Y}}async connect(A,Q){let{proxy:B}=this;if(!Q.host)throw TypeError('No "host" provided');let Y;if(B.protocol==="https:"){Xq("Creating `tls.Socket`: %o",this.connectOpts);let U=this.connectOpts.servername||this.connectOpts.host;Y=rs.connect({...this.connectOpts,servername:U&&SG.isIP(U)?void 0:U})}else Xq("Creating `net.Socket`: %o",this.connectOpts),Y=SG.connect(this.connectOpts);let J=typeof this.proxyHeaders==="function"?this.proxyHeaders():{...this.proxyHeaders},C=SG.isIPv6(Q.host)?`[${Q.host}]`:Q.host,X=`CONNECT ${C}:${Q.port} HTTP/1.1\r `;if(B.username||B.password){let U=`${decodeURIComponent(B.username)}:${decodeURIComponent(B.password)}`;J["Proxy-Authorization"]=`Basic ${Buffer.from(U).toString("base64")}`}if(J.Host=`${C}:${Q.port}`,!J["Proxy-Connection"])J["Proxy-Connection"]=this.keepAlive?"Keep-Alive":"close";for(let U of Object.keys(J))X+=`${U}: ${J[U]}\r -`;let G=bLQ(Y);Y.write(`${X}\r -`);let{connect:F,buffered:W}=await G;if(A.emit("proxyConnect",F),this.emit("proxyConnect",F,A),F.statusCode===200){if(A.once("socket",r30),Q.secureEndpoint){pL("Upgrading socket connection to TLS");let U=Q.servername||Q.host;return js.connect({...mLQ(Q,"host","path","port"),socket:Y,servername:MG.isIP(U)?void 0:U})}return Y}Y.destroy();let Z=new MG.Socket({writable:!1});return Z.readable=!0,A.once("socket",(U)=>{pL("Replaying proxy buffer for failed request"),U.push(W),U.push(null)}),Z}}wT.__initStatic();function r30(A){A.resume()}function mLQ(A,...Q){let B={},Y;for(Y in A)if(!Q.includes(Y))B[Y]=A[Y];return B}var AR0=32768;function QR0(A){return new t30({read(){this.push(A),this.push(null)}})}function jT(A){let Q;try{Q=new URL(A.url)}catch(F){return h0(()=>{console.warn("[@sentry/node]: Invalid dsn or tunnel option, will not send any events. The tunnel option must be a full URL when used.")}),bE(A,()=>Promise.resolve({}))}let B=Q.protocol==="https:",Y=BR0(Q,A.proxy||(B?process.env.https_proxy:void 0)||process.env.http_proxy),J=B?o30:a30,C=A.keepAlive===void 0?!1:A.keepAlive,X=Y?new wT(Y):new J.Agent({keepAlive:C,maxSockets:30,timeout:2000}),G=YR0(A,A.httpModule??J,X);return bE(A,G)}function BR0(A,Q){let{no_proxy:B}=process.env;if(B?.split(",").some((J)=>A.host.endsWith(J)||A.hostname.endsWith(J)))return;else return Q}function YR0(A,Q,B){let{hostname:Y,pathname:J,port:C,protocol:X,search:G}=new URL(A.url);return function(W){return new Promise((Z,U)=>{UN(()=>{let $=QR0(W.body),E={...A.headers};if(W.body.length>AR0)E["content-encoding"]="gzip",$=$.pipe(e30());let K=Q.request({method:"POST",agent:B,headers:E,hostname:Y,path:`${J}${G}`,port:C,protocol:X,ca:A.caCerts},(I)=>{I.on("data",()=>{}),I.on("end",()=>{}),I.setEncoding("utf8");let V=I.headers["retry-after"]??null,H=I.headers["x-sentry-rate-limits"]??null;Z({statusCode:I.statusCode,headers:{"retry-after":V,"x-sentry-rate-limits":Array.isArray(H)?H[0]||null:H}})});K.on("error",U),$.pipe(K)})})}}var JR0=new Set(["false","f","n","no","off","0"]),CR0=new Set(["true","t","y","yes","on","1"]);function OT(A,Q){let B=String(A).toLowerCase();if(JR0.has(B))return!1;if(CR0.has(B))return!0;return Q?.strict?null:Boolean(A)}import{posix as XR0,sep as GR0}from"node:path";function uLQ(A){return A.replace(/^[A-Z]:/,"").replace(/\\/g,"/")}function PT(A=process.argv[1]?Pd(process.argv[1]):process.cwd(),Q=GR0==="\\"){let B=Q?uLQ(A):A;return(Y)=>{if(!Y)return;let J=Q?uLQ(Y):Y,{dir:C,base:X,ext:G}=XR0.parse(J);if(G===".js"||G===".mjs"||G===".cjs")X=X.slice(0,G.length*-1);let F=decodeURIComponent(X);if(!C)C=".";let W=C.lastIndexOf("/node_modules");if(W>-1)return`${C.slice(W+14).replace(/\//g,".")}:${F}`;if(C.startsWith(B)){let Z=C.slice(B.length+1).replace(/\//g,".");return Z?`${Z}:${F}`:F}return F}}function TT(A){if(process.env.SENTRY_RELEASE)return process.env.SENTRY_RELEASE;if(AQ.SENTRY_RELEASE?.id)return AQ.SENTRY_RELEASE.id;let Q=process.env.GITHUB_SHA||process.env.CI_MERGE_REQUEST_SOURCE_BRANCH_SHA||process.env.CI_BUILD_REF||process.env.CI_COMMIT_SHA||process.env.BITBUCKET_COMMIT,B=process.env.APPVEYOR_PULL_REQUEST_HEAD_COMMIT||process.env.APPVEYOR_REPO_COMMIT||process.env.CODEBUILD_RESOLVED_SOURCE_VERSION||process.env.AWS_COMMIT_ID||process.env.BUILD_SOURCEVERSION||process.env.GIT_CLONE_COMMIT_HASH||process.env.BUDDY_EXECUTION_REVISION||process.env.BUILDKITE_COMMIT||process.env.CIRCLE_SHA1||process.env.CIRRUS_CHANGE_IN_REPO||process.env.CF_REVISION||process.env.CM_COMMIT||process.env.CF_PAGES_COMMIT_SHA||process.env.DRONE_COMMIT_SHA||process.env.FC_GIT_COMMIT_SHA||process.env.HEROKU_TEST_RUN_COMMIT_VERSION||process.env.HEROKU_SLUG_COMMIT||process.env.RAILWAY_GIT_COMMIT_SHA||process.env.RENDER_GIT_COMMIT||process.env.SEMAPHORE_GIT_SHA||process.env.TRAVIS_PULL_REQUEST_SHA||process.env.VERCEL_GIT_COMMIT_SHA||process.env.VERCEL_GITHUB_COMMIT_SHA||process.env.VERCEL_GITLAB_COMMIT_SHA||process.env.VERCEL_BITBUCKET_COMMIT_SHA||process.env.ZEIT_GITHUB_COMMIT_SHA||process.env.ZEIT_GITLAB_COMMIT_SHA||process.env.ZEIT_BITBUCKET_COMMIT_SHA,Y=process.env.CI_COMMIT_ID||process.env.SOURCE_COMMIT||process.env.SOURCE_VERSION||process.env.GIT_COMMIT||process.env.COMMIT_REF||process.env.BUILD_VCS_NUMBER||process.env.CI_COMMIT_SHA;return Q||B||Y||A}var ST=Jj(md(PT()));var cLQ=qA(yA(),1),lLQ=qA(NB(),1);import*as dLQ from"node:os";import{threadId as FR0,isMainThread as WR0}from"worker_threads";var ZR0=60000;class iL extends Nj{constructor(A){let Q=A.serverName||global.process.env.SENTRY_NAME||dLQ.hostname(),B={...A,platform:"node",runtime:{name:"node",version:global.process.version},serverName:Q};if(A.openTelemetryInstrumentations)lLQ.registerInstrumentations({instrumentations:A.openTelemetryInstrumentations});Nd(B,"node"),e.log(`Initializing Sentry: process: ${process.pid}, thread: ${WR0?"main":`worker-${FR0}`}.`);super(B);if(this.getOptions()._experiments?.enableLogs){if(this._logOnExitFlushListener=()=>{AF(this)},Q)this.on("beforeCaptureLog",(Y)=>{Y.attributes={...Y.attributes,"server.address":Q}});process.on("beforeExit",this._logOnExitFlushListener)}}get tracer(){if(this._tracer)return this._tracer;let A="@sentry/node",Q=u0,B=cLQ.trace.getTracer(A,Q);return this._tracer=B,B}async flush(A){let B=this.traceProvider?.activeSpanProcessor;if(B)await B.forceFlush();if(this.getOptions().sendClientReports)this._flushOutcomes();return super.flush(A)}close(A){if(this._clientReportInterval)clearInterval(this._clientReportInterval);if(this._clientReportOnExitFlushListener)process.off("beforeExit",this._clientReportOnExitFlushListener);if(this._logOnExitFlushListener)process.off("beforeExit",this._logOnExitFlushListener);return super.close(A)}startClientReportTracking(){let A=this.getOptions();if(A.sendClientReports)this._clientReportOnExitFlushListener=()=>{this._flushOutcomes()},this._clientReportInterval=setInterval(()=>{fQ&&e.log("Flushing client reports based on interval."),this._flushOutcomes()},A.clientReportFlushInterval??ZR0).unref(),process.on("beforeExit",this._clientReportOnExitFlushListener)}_getTraceInfoFromScope(A){if(!A)return[void 0,void 0];return Z$Q(this,A)}}var X1=qA(yA(),1),pLQ=qA(Xi(),1),iLQ=qA(Wi(),1),yK=qA(uB(),1);var nLQ=qA(Dp(),1);import $R0 from"module";var Os=1e6;function kT(A,Q={}){if(A.getOptions().debug)rLQ();let B=ER0(A,Q);A.traceProvider=B}function Ps(){let[A=0,Q=0]=process.versions.node.split(".").map(Number);if(A>=21||A===20&&Q>=6||A===18&&Q>=19){if(!AQ._sentryEsmLoaderHookRegistered)try{let{addHookMessagePort:B}=nLQ.createAddHookMessageChannel();$R0.register("import-in-the-middle/hook.mjs",import.meta.url,{data:{addHookMessagePort:B,include:[]},transferList:[B]})}catch(B){e.warn("Failed to register ESM hook",B)}}else h0(()=>{console.warn(`[Sentry] You are using Node.js v${process.versions.node} in ESM mode ("import syntax"). The Sentry Node.js SDK is not compatible with ESM in Node.js versions before 18.19.0 or before 20.6.0. Please either build your application with CommonJS ("require() syntax"), or upgrade your Node.js version.`)})}function sLQ(A={}){let{debug:Q}=A;if(Q)e.enable(),rLQ();if(!u5())Ps();UR0(A.integrations).forEach((B)=>{if(B(),Q)e.log(`[Sentry] Preloaded ${B.id} instrumentation`)})}function UR0(A){let Q=fLQ();if(!A)return Q;return Q.filter((B)=>A.includes(B.id))}function ER0(A,Q={}){let B=new iLQ.BasicTracerProvider({sampler:new Ti(A),resource:new pLQ.Resource({[yK.ATTR_SERVICE_NAME]:"node",[yK.SEMRESATTRS_SERVICE_NAMESPACE]:"sentry",[yK.ATTR_SERVICE_VERSION]:u0}),forceFlushTimeoutMillis:500,spanProcessors:[new Pi({timeout:KR0(A.getOptions().maxSpanWaitDuration)}),...Q.spanProcessors||[]]});return X1.trace.setGlobalTracerProvider(B),X1.propagation.setGlobalPropagator(new zi),X1.context.setGlobalContextManager(new MT),B}function KR0(A){if(A==null)return;if(A>Os)return fQ&&e.warn(`\`maxSpanWaitDuration\` is too high, using the maximum value of ${Os}`),Os;else if(A<=0||Number.isNaN(A)){fQ&&e.warn("`maxSpanWaitDuration` must be a positive number, using default value instead.");return}return A}function rLQ(){let A=new Proxy(e,{get(Q,B,Y){return Reflect.get(Q,B==="verbose"?"debug":B,Y)}});X1.diag.disable(),X1.diag.setLogger(A,X1.DiagLogLevel.DEBUG)}function VR0(){return u5()?[KP()]:[]}function Ts(){return[LN(),NN(),qN(),MN(),zN(),BP(),XP(),VP(),IP(),ZP(),EP(),WP(),LT(),xLQ(),...VR0()]}function Ss(A){return[...Ts(),...X9(A)?zT():[]]}function _T(A={}){return oLQ(A,Ss)}function aLQ(A={}){return oLQ(A,()=>[])}function oLQ(A={},Q){let B=IR0(A,Q);if(B.debug===!0)if(fQ)e.enable();else h0(()=>{console.warn("[Sentry] Cannot initialize SDK with `debug` option using a non-debug bundle.")});if(!u5()&&B.registerEsmLoaderHooks!==!1)Ps();if(tO(),sQ().update(B.initialScope),B.spotlight&&!B.integrations.some(({name:C})=>C===$s))B.integrations.push(FT({sidecarUrl:typeof B.spotlight==="string"?B.spotlight:void 0}));let J=new iL(B);if(sQ().setClient(J),J.init(),e.log(`Running in ${u5()?"CommonJS":"ESM"} mode.`),J.startClientReportTracking(),NR0(),!B.skipOpenTelemetrySetup)kT(J,{spanProcessors:B.openTelemetrySpanProcessors}),ks();return Q$Q(J),$$Q(J),J}function ks(){if(!fQ)return;let A=C$Q(),Q=["SentryContextManager","SentryPropagator"];if(X9())Q.push("SentrySpanProcessor");for(let B of Q)if(!A.includes(B))e.error(`You have to set up the ${B}. Without this, the OpenTelemetry & Sentry integration will not work properly.`);if(!A.includes("SentrySampler"))e.warn("You have to set up the SentrySampler. Without this, the OpenTelemetry & Sentry integration may still work, but sample rates set for the Sentry SDK will not be respected. If you use a custom sampler, make sure to use `wrapSamplingDecision`.")}function IR0(A,Q){let B=HR0(A.release),Y=A.spotlight??OT(process.env.SENTRY_SPOTLIGHT,{strict:!0})??process.env.SENTRY_SPOTLIGHT,J=DR0(A.tracesSampleRate),C={...A,dsn:A.dsn??process.env.SENTRY_DSN,environment:A.environment??process.env.SENTRY_ENVIRONMENT,sendClientReports:A.sendClientReports??!0,transport:A.transport??jT,stackParser:Tu(A.stackParser||ST),release:B,tracesSampleRate:J,spotlight:Y,debug:OT(A.debug??process.env.SENTRY_DEBUG)},X=A.integrations,G=A.defaultIntegrations??Q(C);return{...C,integrations:Fd({defaultIntegrations:G,integrations:X})}}function HR0(A){if(A!==void 0)return A;let Q=TT();if(Q!==void 0)return Q;return}function DR0(A){if(A!==void 0)return A;let Q=process.env.SENTRY_TRACES_SAMPLE_RATE;if(!Q)return;let B=parseFloat(Q);return isFinite(B)?B:void 0}function NR0(){if(OT(process.env.SENTRY_USE_ENVIRONMENT)!==!1){let A=process.env.SENTRY_TRACE,Q=process.env.SENTRY_BAGGAGE,B=jZ(A,Q);sQ().setPropagationContext(B)}}var LR0=[["january","1"],["february","2"],["march","3"],["april","4"],["may","5"],["june","6"],["july","7"],["august","8"],["september","9"],["october","10"],["november","11"],["december","12"],["jan","1"],["feb","2"],["mar","3"],["apr","4"],["may","5"],["jun","6"],["jul","7"],["aug","8"],["sep","9"],["oct","10"],["nov","11"],["dec","12"],["sunday","0"],["monday","1"],["tuesday","2"],["wednesday","3"],["thursday","4"],["friday","5"],["saturday","6"],["sun","0"],["mon","1"],["tue","2"],["wed","3"],["thu","4"],["fri","5"],["sat","6"]];function w$(A){return LR0.reduce((Q,[B,Y])=>Q.replace(new RegExp(B,"gi"),Y),A)}var tLQ="Automatic instrumentation of CronJob only supports crontab string";function eLQ(A,Q){let B=!1;return new Proxy(A,{construct(Y,J){let[C,X,G,F,W,...Z]=J;if(typeof C!=="string")throw Error(tLQ);if(B)throw Error(`A job named '${Q}' has already been scheduled`);B=!0;let U=w$(C);async function $(E,K){return t1(Q,async()=>{try{await X(E,K)}catch(I){throw jB(I),I}},{schedule:{type:"crontab",value:U},timezone:W||void 0})}return new Y(C,$,G,F,W,...Z)},get(Y,J){if(J==="from")return(C)=>{let{cronTime:X,onTick:G,timeZone:F}=C;if(typeof X!=="string")throw Error(tLQ);if(B)throw Error(`A job named '${Q}' has already been scheduled`);B=!0;let W=w$(X);return C.onTick=async(Z,U)=>{return t1(Q,async()=>{try{await G(Z,U)}catch($){throw jB($),$}},{schedule:{type:"crontab",value:W},timezone:F||void 0})},Y.from(C)};else return Y[J]}})}function AqQ(A){return new Proxy(A,{get(Q,B){if(B==="schedule"&&Q.schedule)return new Proxy(Q.schedule,{apply(Y,J,C){let[X,G,F]=C,W=F?.name,Z=F?.timezone;if(!W)throw Error('Missing "name" for scheduled job. A name is required for Sentry check-in monitoring.');let U=async()=>{return t1(W,async()=>{try{return await G()}catch($){throw jB($),$}},{schedule:{type:"crontab",value:w$(X)},timezone:Z})};return Y.apply(J,[X,U,F])}});else return Q[B]}})}function QqQ(A){return new Proxy(A,{get(Q,B){if(B==="scheduleJob")return new Proxy(Q.scheduleJob,{apply(Y,J,C){let[X,G,F]=C;if(typeof X!=="string"||typeof G!=="string"||typeof F!=="function")throw Error("Automatic instrumentation of 'node-schedule' requires the first parameter of 'scheduleJob' to be a job name string and the second parameter to be a crontab string");let W=X,Z=G;async function U(){return t1(W,async()=>{await F?.()},{schedule:{type:"crontab",value:w$(Z)}})}return Y.apply(J,[W,Z,U])}});return Q[B]}})}var BqQ={instrumentCron:eLQ,instrumentNodeCron:AqQ,instrumentNodeSchedule:QqQ};import DTQ from"fs";import tf0 from"http2";import wo from"path";var NsY=f$(),Sf0=aL(),LsY=aK(),qsY=I3Q(),kf0=u$(),MsY=pr(),zsY=c3Q(),RsY=a3Q(),wsY=ARQ(),_f0=QB(),Kk=lQ(),{InvalidArgumentError:Ek}=_f0,MV=dRQ(),jsY=tL(),OsY=Ha(),{MockCallHistory:PsY,MockCallHistoryLog:TsY}=La(),SsY=Oa(),ksY=za(),_sY=nwQ(),vsY=Ya(),ysY=NS(),{getGlobalDispatcher:vf0,setGlobalDispatcher:yf0}=_S(),hsY=XV(),gsY=ga();Object.assign(Sf0.prototype,MV);var zo=kf0;var ff0={redirect:JjQ(),responseError:GjQ(),retry:WjQ(),dump:UjQ(),dns:IjQ(),cache:gjQ(),decompress:cjQ()},HTQ={MemoryCacheStore:fa()};var hf0=pjQ();HTQ.SqliteCacheStore=hf0;var bf0={parseHeaders:Kk.parseHeaders,headerNameToString:Kk.headerNameToString};function sq(A){return(Q,B,Y)=>{if(typeof B==="function")Y=B,B=null;if(!Q||typeof Q!=="string"&&typeof Q!=="object"&&!(Q instanceof URL))throw new Ek("invalid url");if(B!=null&&typeof B!=="object")throw new Ek("invalid opts");if(B&&B.path!=null){if(typeof B.path!=="string")throw new Ek("invalid opts.path");let X=B.path;if(!B.path.startsWith("/"))X=`/${X}`;Q=new URL(Kk.parseOrigin(Q).origin+X)}else{if(!B)B=typeof Q==="object"?Q:{};Q=Kk.parseURL(Q)}let{agent:J,dispatcher:C=vf0()}=B;if(J)throw new Ek("unsupported opts.agent. Did you mean opts.client?");return A.call(C,{...B,origin:Q.origin,path:Q.search?`${Q.pathname}${Q.search}`:Q.pathname,method:B.method||(B.body?"PUT":"GET")},Y)}}var Ro=yf0;var xsY=mq().fetch;var mf0=n$().Headers,uf0=fq().Response,df0=$V().Request,cf0=rT().FormData;var{setGlobalOrigin:fsY,getGlobalOrigin:bsY}=Gr();var{CacheStorage:gf0}=eOQ(),{kConstruct:xf0}=Q0();var lf0=new gf0(xf0);var{deleteCookie:msY,getCookies:usY,getSetCookies:dsY,setCookie:csY,parseCookie:lsY}=UPQ();var{parseMIMEType:psY,serializeAMimeType:isY}=g8();var{CloseEvent:nsY,ErrorEvent:ssY,MessageEvent:rsY}=Bk(),{WebSocket:asY,ping:osY}=nPQ();var pf0=QTQ().WebSocketStream,if0=Do().WebSocketError,nf0=sq(MV.request),sf0=sq(MV.stream),rf0=sq(MV.pipeline),af0=sq(MV.connect),of0=sq(MV.upgrade);var{EventSource:tsY}=ITQ();var Vk=`-----BEGIN CERTIFICATE----- +`;let G=jqQ(Y);Y.write(`${X}\r +`);let{connect:W,buffered:F}=await G;if(A.emit("proxyConnect",W),this.emit("proxyConnect",W,A),W.statusCode===200){if(A.once("socket",aR0),Q.secureEndpoint){Xq("Upgrading socket connection to TLS");let U=Q.servername||Q.host;return rs.connect({...OqQ(Q,"host","path","port"),socket:Y,servername:SG.isIP(U)?void 0:U})}return Y}Y.destroy();let Z=new SG.Socket({writable:!1});return Z.readable=!0,A.once("socket",(U)=>{Xq("Replaying proxy buffer for failed request"),U.push(F),U.push(null)}),Z}}nT.__initStatic();function aR0(A){A.resume()}function OqQ(A,...Q){let B={},Y;for(Y in A)if(!Q.includes(Y))B[Y]=A[Y];return B}var Qw0=32768;function Bw0(A){return new eR0({read(){this.push(A),this.push(null)}})}function sT(A){let Q;try{Q=new URL(A.url)}catch(W){return f0(()=>{console.warn("[@sentry/node]: Invalid dsn or tunnel option, will not send any events. The tunnel option must be a full URL when used.")}),nE(A,()=>Promise.resolve({}))}let B=Q.protocol==="https:",Y=Yw0(Q,A.proxy||(B?process.env.https_proxy:void 0)||process.env.http_proxy),J=B?tR0:oR0,C=A.keepAlive===void 0?!1:A.keepAlive,X=Y?new nT(Y):new J.Agent({keepAlive:C,maxSockets:30,timeout:2000}),G=Jw0(A,A.httpModule??J,X);return nE(A,G)}function Yw0(A,Q){let{no_proxy:B}=process.env;if(B?.split(",").some((J)=>A.host.endsWith(J)||A.hostname.endsWith(J)))return;else return Q}function Jw0(A,Q,B){let{hostname:Y,pathname:J,port:C,protocol:X,search:G}=new URL(A.url);return function(F){return new Promise((Z,U)=>{ON(()=>{let $=Bw0(F.body),E={...A.headers};if(F.body.length>Qw0)E["content-encoding"]="gzip",$=$.pipe(Aw0());let K=Q.request({method:"POST",agent:B,headers:E,hostname:Y,path:`${J}${G}`,port:C,protocol:X,ca:A.caCerts},(I)=>{I.on("data",()=>{}),I.on("end",()=>{}),I.setEncoding("utf8");let V=I.headers["retry-after"]??null,H=I.headers["x-sentry-rate-limits"]??null;Z({statusCode:I.statusCode,headers:{"retry-after":V,"x-sentry-rate-limits":Array.isArray(H)?H[0]||null:H}})});K.on("error",U),$.pipe(K)})})}}var Cw0=new Set(["false","f","n","no","off","0"]),Xw0=new Set(["true","t","y","yes","on","1"]);function rT(A,Q){let B=String(A).toLowerCase();if(Cw0.has(B))return!1;if(Xw0.has(B))return!0;return Q?.strict?null:Boolean(A)}import{posix as Gw0,sep as Ww0}from"node:path";function PqQ(A){return A.replace(/^[A-Z]:/,"").replace(/\\/g,"/")}function aT(A=process.argv[1]?od(process.argv[1]):process.cwd(),Q=Ww0==="\\"){let B=Q?PqQ(A):A;return(Y)=>{if(!Y)return;let J=Q?PqQ(Y):Y,{dir:C,base:X,ext:G}=Gw0.parse(J);if(G===".js"||G===".mjs"||G===".cjs")X=X.slice(0,G.length*-1);let W=decodeURIComponent(X);if(!C)C=".";let F=C.lastIndexOf("/node_modules");if(F>-1)return`${C.slice(F+14).replace(/\//g,".")}:${W}`;if(C.startsWith(B)){let Z=C.slice(B.length+1).replace(/\//g,".");return Z?`${Z}:${W}`:W}return W}}function oT(A){if(process.env.SENTRY_RELEASE)return process.env.SENTRY_RELEASE;if(AQ.SENTRY_RELEASE?.id)return AQ.SENTRY_RELEASE.id;let Q=process.env.GITHUB_SHA||process.env.CI_MERGE_REQUEST_SOURCE_BRANCH_SHA||process.env.CI_BUILD_REF||process.env.CI_COMMIT_SHA||process.env.BITBUCKET_COMMIT,B=process.env.APPVEYOR_PULL_REQUEST_HEAD_COMMIT||process.env.APPVEYOR_REPO_COMMIT||process.env.CODEBUILD_RESOLVED_SOURCE_VERSION||process.env.AWS_COMMIT_ID||process.env.BUILD_SOURCEVERSION||process.env.GIT_CLONE_COMMIT_HASH||process.env.BUDDY_EXECUTION_REVISION||process.env.BUILDKITE_COMMIT||process.env.CIRCLE_SHA1||process.env.CIRRUS_CHANGE_IN_REPO||process.env.CF_REVISION||process.env.CM_COMMIT||process.env.CF_PAGES_COMMIT_SHA||process.env.DRONE_COMMIT_SHA||process.env.FC_GIT_COMMIT_SHA||process.env.HEROKU_TEST_RUN_COMMIT_VERSION||process.env.HEROKU_SLUG_COMMIT||process.env.RAILWAY_GIT_COMMIT_SHA||process.env.RENDER_GIT_COMMIT||process.env.SEMAPHORE_GIT_SHA||process.env.TRAVIS_PULL_REQUEST_SHA||process.env.VERCEL_GIT_COMMIT_SHA||process.env.VERCEL_GITHUB_COMMIT_SHA||process.env.VERCEL_GITLAB_COMMIT_SHA||process.env.VERCEL_BITBUCKET_COMMIT_SHA||process.env.ZEIT_GITHUB_COMMIT_SHA||process.env.ZEIT_GITLAB_COMMIT_SHA||process.env.ZEIT_BITBUCKET_COMMIT_SHA,Y=process.env.CI_COMMIT_ID||process.env.SOURCE_COMMIT||process.env.SOURCE_VERSION||process.env.GIT_COMMIT||process.env.COMMIT_REF||process.env.BUILD_VCS_NUMBER||process.env.CI_COMMIT_SHA;return Q||B||Y||A}var tT=jj(Fc(aT()));var SqQ=qA(yA(),1),kqQ=qA(NB(),1);import*as TqQ from"node:os";import{threadId as Fw0,isMainThread as Zw0}from"worker_threads";var $w0=60000;class Gq extends uj{constructor(A){let Q=A.serverName||global.process.env.SENTRY_NAME||TqQ.hostname(),B={...A,platform:"node",runtime:{name:"node",version:global.process.version},serverName:Q};if(A.openTelemetryInstrumentations)kqQ.registerInstrumentations({instrumentations:A.openTelemetryInstrumentations});dd(B,"node"),e.log(`Initializing Sentry: process: ${process.pid}, thread: ${Zw0?"main":`worker-${Fw0}`}.`);super(B);if(this.getOptions()._experiments?.enableLogs){if(this._logOnExitFlushListener=()=>{WW(this)},Q)this.on("beforeCaptureLog",(Y)=>{Y.attributes={...Y.attributes,"server.address":Q}});process.on("beforeExit",this._logOnExitFlushListener)}}get tracer(){if(this._tracer)return this._tracer;let A="@sentry/node",Q=l0,B=SqQ.trace.getTracer(A,Q);return this._tracer=B,B}async flush(A){let B=this.traceProvider?.activeSpanProcessor;if(B)await B.forceFlush();if(this.getOptions().sendClientReports)this._flushOutcomes();return super.flush(A)}close(A){if(this._clientReportInterval)clearInterval(this._clientReportInterval);if(this._clientReportOnExitFlushListener)process.off("beforeExit",this._clientReportOnExitFlushListener);if(this._logOnExitFlushListener)process.off("beforeExit",this._logOnExitFlushListener);return super.close(A)}startClientReportTracking(){let A=this.getOptions();if(A.sendClientReports)this._clientReportOnExitFlushListener=()=>{this._flushOutcomes()},this._clientReportInterval=setInterval(()=>{fQ&&e.log("Flushing client reports based on interval."),this._flushOutcomes()},A.clientReportFlushInterval??$w0).unref(),process.on("beforeExit",this._clientReportOnExitFlushListener)}_getTraceInfoFromScope(A){if(!A)return[void 0,void 0];return o$Q(this,A)}}var V1=qA(yA(),1),_qQ=qA(Ti(),1),vqQ=qA(_i(),1),dK=qA(dB(),1);var yqQ=qA(up(),1);import Uw0 from"module";var as=1e6;function eT(A,Q={}){if(A.getOptions().debug)hqQ();let B=Kw0(A,Q);A.traceProvider=B}function os(){let[A=0,Q=0]=process.versions.node.split(".").map(Number);if(A>=21||A===20&&Q>=6||A===18&&Q>=19){if(!AQ._sentryEsmLoaderHookRegistered)try{let{addHookMessagePort:B}=yqQ.createAddHookMessageChannel();Uw0.register("import-in-the-middle/hook.mjs",import.meta.url,{data:{addHookMessagePort:B,include:[]},transferList:[B]})}catch(B){e.warn("Failed to register ESM hook",B)}}else f0(()=>{console.warn(`[Sentry] You are using Node.js v${process.versions.node} in ESM mode ("import syntax"). The Sentry Node.js SDK is not compatible with ESM in Node.js versions before 18.19.0 or before 20.6.0. Please either build your application with CommonJS ("require() syntax"), or upgrade your Node.js version.`)})}function gqQ(A={}){let{debug:Q}=A;if(Q)e.enable(),hqQ();if(!a5())os();Ew0(A.integrations).forEach((B)=>{if(B(),Q)e.log(`[Sentry] Preloaded ${B.id} instrumentation`)})}function Ew0(A){let Q=wqQ();if(!A)return Q;return Q.filter((B)=>A.includes(B.id))}function Kw0(A,Q={}){let B=new vqQ.BasicTracerProvider({sampler:new ti(A),resource:new _qQ.Resource({[dK.ATTR_SERVICE_NAME]:"node",[dK.SEMRESATTRS_SERVICE_NAMESPACE]:"sentry",[dK.ATTR_SERVICE_VERSION]:l0}),forceFlushTimeoutMillis:500,spanProcessors:[new oi({timeout:Vw0(A.getOptions().maxSpanWaitDuration)}),...Q.spanProcessors||[]]});return V1.trace.setGlobalTracerProvider(B),V1.propagation.setGlobalPropagator(new ii),V1.context.setGlobalContextManager(new lT),B}function Vw0(A){if(A==null)return;if(A>as)return fQ&&e.warn(`\`maxSpanWaitDuration\` is too high, using the maximum value of ${as}`),as;else if(A<=0||Number.isNaN(A)){fQ&&e.warn("`maxSpanWaitDuration` must be a positive number, using default value instead.");return}return A}function hqQ(){let A=new Proxy(e,{get(Q,B,Y){return Reflect.get(Q,B==="verbose"?"debug":B,Y)}});V1.diag.disable(),V1.diag.setLogger(A,V1.DiagLogLevel.DEBUG)}function Iw0(){return a5()?[hP()]:[]}function ts(){return[gN(),yN(),hN(),xN(),fN(),RP(),PP(),xP(),fP(),_P(),gP(),kP(),dT(),RqQ(),...Iw0()]}function es(A){return[...ts(),...U9(A)?pT():[]]}function AS(A={}){return fqQ(A,es)}function xqQ(A={}){return fqQ(A,()=>[])}function fqQ(A={},Q){let B=Hw0(A,Q);if(B.debug===!0)if(fQ)e.enable();else f0(()=>{console.warn("[Sentry] Cannot initialize SDK with `debug` option using a non-debug bundle.")});if(!a5()&&B.registerEsmLoaderHooks!==!1)os();if(LP(),sQ().update(B.initialScope),B.spotlight&&!B.integrations.some(({name:C})=>C===ys))B.integrations.push(ST({sidecarUrl:typeof B.spotlight==="string"?B.spotlight:void 0}));let J=new Gq(B);if(sQ().setClient(J),J.init(),e.log(`Running in ${a5()?"CommonJS":"ESM"} mode.`),J.startClientReportTracking(),Lw0(),!B.skipOpenTelemetrySetup)eT(J,{spanProcessors:B.openTelemetrySpanProcessors}),Ar();return d$Q(J),t$Q(J),J}function Ar(){if(!fQ)return;let A=i$Q(),Q=["SentryContextManager","SentryPropagator"];if(U9())Q.push("SentrySpanProcessor");for(let B of Q)if(!A.includes(B))e.error(`You have to set up the ${B}. Without this, the OpenTelemetry & Sentry integration will not work properly.`);if(!A.includes("SentrySampler"))e.warn("You have to set up the SentrySampler. Without this, the OpenTelemetry & Sentry integration may still work, but sample rates set for the Sentry SDK will not be respected. If you use a custom sampler, make sure to use `wrapSamplingDecision`.")}function Hw0(A,Q){let B=Dw0(A.release),Y=A.spotlight??rT(process.env.SENTRY_SPOTLIGHT,{strict:!0})??process.env.SENTRY_SPOTLIGHT,J=Nw0(A.tracesSampleRate),C={...A,dsn:A.dsn??process.env.SENTRY_DSN,environment:A.environment??process.env.SENTRY_ENVIRONMENT,sendClientReports:A.sendClientReports??!0,transport:A.transport??sT,stackParser:tu(A.stackParser||tT),release:B,tracesSampleRate:J,spotlight:Y,debug:rT(A.debug??process.env.SENTRY_DEBUG)},X=A.integrations,G=A.defaultIntegrations??Q(C);return{...C,integrations:kd({defaultIntegrations:G,integrations:X})}}function Dw0(A){if(A!==void 0)return A;let Q=oT();if(Q!==void 0)return Q;return}function Nw0(A){if(A!==void 0)return A;let Q=process.env.SENTRY_TRACES_SAMPLE_RATE;if(!Q)return;let B=parseFloat(Q);return isFinite(B)?B:void 0}function Lw0(){if(rT(process.env.SENTRY_USE_ENVIRONMENT)!==!1){let A=process.env.SENTRY_TRACE,Q=process.env.SENTRY_BAGGAGE,B=hZ(A,Q);sQ().setPropagationContext(B)}}var qw0=[["january","1"],["february","2"],["march","3"],["april","4"],["may","5"],["june","6"],["july","7"],["august","8"],["september","9"],["october","10"],["november","11"],["december","12"],["jan","1"],["feb","2"],["mar","3"],["apr","4"],["may","5"],["jun","6"],["jul","7"],["aug","8"],["sep","9"],["oct","10"],["nov","11"],["dec","12"],["sunday","0"],["monday","1"],["tuesday","2"],["wednesday","3"],["thursday","4"],["friday","5"],["saturday","6"],["sun","0"],["mon","1"],["tue","2"],["wed","3"],["thu","4"],["fri","5"],["sat","6"]];function g$(A){return qw0.reduce((Q,[B,Y])=>Q.replace(new RegExp(B,"gi"),Y),A)}var bqQ="Automatic instrumentation of CronJob only supports crontab string";function mqQ(A,Q){let B=!1;return new Proxy(A,{construct(Y,J){let[C,X,G,W,F,...Z]=J;if(typeof C!=="string")throw Error(bqQ);if(B)throw Error(`A job named '${Q}' has already been scheduled`);B=!0;let U=g$(C);async function $(E,K){return GX(Q,async()=>{try{await X(E,K)}catch(I){throw jB(I),I}},{schedule:{type:"crontab",value:U},timezone:F||void 0})}return new Y(C,$,G,W,F,...Z)},get(Y,J){if(J==="from")return(C)=>{let{cronTime:X,onTick:G,timeZone:W}=C;if(typeof X!=="string")throw Error(bqQ);if(B)throw Error(`A job named '${Q}' has already been scheduled`);B=!0;let F=g$(X);return C.onTick=async(Z,U)=>{return GX(Q,async()=>{try{await G(Z,U)}catch($){throw jB($),$}},{schedule:{type:"crontab",value:F},timezone:W||void 0})},Y.from(C)};else return Y[J]}})}function uqQ(A){return new Proxy(A,{get(Q,B){if(B==="schedule"&&Q.schedule)return new Proxy(Q.schedule,{apply(Y,J,C){let[X,G,W]=C,F=W?.name,Z=W?.timezone;if(!F)throw Error('Missing "name" for scheduled job. A name is required for Sentry check-in monitoring.');let U=async()=>{return GX(F,async()=>{try{return await G()}catch($){throw jB($),$}},{schedule:{type:"crontab",value:g$(X)},timezone:Z})};return Y.apply(J,[X,U,W])}});else return Q[B]}})}function dqQ(A){return new Proxy(A,{get(Q,B){if(B==="scheduleJob")return new Proxy(Q.scheduleJob,{apply(Y,J,C){let[X,G,W]=C;if(typeof X!=="string"||typeof G!=="string"||typeof W!=="function")throw Error("Automatic instrumentation of 'node-schedule' requires the first parameter of 'scheduleJob' to be a job name string and the second parameter to be a crontab string");let F=X,Z=G;async function U(){return GX(F,async()=>{await W?.()},{schedule:{type:"crontab",value:g$(Z)}})}return Y.apply(J,[F,Z,U])}});return Q[B]}})}var cqQ={instrumentCron:mqQ,instrumentNodeCron:uqQ,instrumentNodeSchedule:dqQ};import qSQ from"fs";import sm0 from"http2";import It from"path";var EaY=s$(),kb0=$q(),KaY=JV(),VaY=YRQ(),_b0=o$(),IaY=Ka(),HaY=SRQ(),DaY=xRQ(),NaY=uRQ(),vb0=QB(),hk=lQ(),{InvalidArgumentError:gk}=vb0,SV=TwQ(),LaY=Eq(),qaY=ma(),{MockCallHistory:MaY,MockCallHistoryLog:zaY}=ca(),RaY=aa(),waY=ia(),jaY=yjQ(),OaY=ja(),PaY=uS(),{getGlobalDispatcher:yb0,setGlobalDispatcher:gb0}=Ak(),TaY=KV(),SaY=Co();Object.assign(kb0.prototype,SV);var no=_b0;var bb0={redirect:pjQ(),responseError:sjQ(),retry:ajQ(),dump:ejQ(),dns:YOQ(),cache:zOQ(),decompress:SOQ()},JSQ={MemoryCacheStore:Go()};var hb0=_OQ();JSQ.SqliteCacheStore=hb0;var mb0={parseHeaders:hk.parseHeaders,headerNameToString:hk.headerNameToString};function FM(A){return(Q,B,Y)=>{if(typeof B==="function")Y=B,B=null;if(!Q||typeof Q!=="string"&&typeof Q!=="object"&&!(Q instanceof URL))throw new gk("invalid url");if(B!=null&&typeof B!=="object")throw new gk("invalid opts");if(B&&B.path!=null){if(typeof B.path!=="string")throw new gk("invalid opts.path");let X=B.path;if(!B.path.startsWith("/"))X=`/${X}`;Q=new URL(hk.parseOrigin(Q).origin+X)}else{if(!B)B=typeof Q==="object"?Q:{};Q=hk.parseURL(Q)}let{agent:J,dispatcher:C=yb0()}=B;if(J)throw new gk("unsupported opts.agent. Did you mean opts.client?");return A.call(C,{...B,origin:Q.origin,path:Q.search?`${Q.pathname}${Q.search}`:Q.pathname,method:B.method||(B.body?"PUT":"GET")},Y)}}var so=gb0;var kaY=QM().fetch;var ub0=Y4().Headers,db0=eq().Response,cb0=NV().Request,lb0=HS().FormData;var{setGlobalOrigin:_aY,getGlobalOrigin:vaY}=Sr();var{CacheStorage:xb0}=mPQ(),{kConstruct:fb0}=B0();var pb0=new xb0(fb0);var{deleteCookie:yaY,getCookies:gaY,getSetCookies:haY,setCookie:xaY,parseCookie:faY}=ePQ();var{parseMIMEType:baY,serializeAMimeType:maY}=l8();var{CloseEvent:uaY,ErrorEvent:daY,MessageEvent:caY}=Rk(),{WebSocket:laY,ping:paY}=yTQ();var ib0=dTQ().WebSocketStream,nb0=uo().WebSocketError,sb0=FM(SV.request),rb0=FM(SV.stream),ab0=FM(SV.pipeline),ob0=FM(SV.connect),tb0=FM(SV.upgrade);var{EventSource:iaY}=YSQ();import lk from"fs";import KSQ from"path";var eb0=2,Am0=3;class ZM{_accumulatorMs=0;_targetTicksPerSecond;_fixedTimestepMs;_fixedTimestepS;_maxAccumulatorMs;_nextTickMs=0;_lastLoopTimeMs=0;_tickFunction;_tickErrorCallback;_tickHandle=null;constructor(A,Q,B){this._targetTicksPerSecond=A,this._fixedTimestepS=Math.fround(1/A),this._fixedTimestepMs=Math.fround(this._fixedTimestepS*1000),this._maxAccumulatorMs=this._fixedTimestepMs*Am0,this._tickFunction=Q,this._tickErrorCallback=B}get targetTicksPerSecond(){return this._targetTicksPerSecond}get fixedTimestepMs(){return this._fixedTimestepMs}get fixedTimestepS(){return this._fixedTimestepS}get isStarted(){return!!this._tickHandle}get nextTickMs(){return this._nextTickMs}start(){if(this._tickHandle)return;this._lastLoopTimeMs=performance.now();let A=()=>{let Q=performance.now(),B=Q-this._lastLoopTimeMs;if(this._lastLoopTimeMs=Q,this._accumulatorMs+=B,this._accumulatorMs>this._maxAccumulatorMs)this._accumulatorMs=this._maxAccumulatorMs;if(this._accumulatorMs>=this._fixedTimestepMs)AY.startSpan({operation:"ticker_tick"},()=>{let Y=0;while(this._accumulatorMs>=this._fixedTimestepMs&&Y{J.STEP_START="SIMULATION.STEP_START";J.STEP_END="SIMULATION.STEP_END";J.DEBUG_RAYCAST="SIMULATION.DEBUG_RAYCAST";J.DEBUG_RENDER="SIMULATION.DEBUG_RENDER"})(ro||={});class UM extends BQ{_colliderMap=new BN;_debugRaycastingEnabled=!1;_debugRenderingEnabled=!1;_debugRenderingFilterFlags;_rapierEventQueue;_rapierSimulation;_world;constructor(A,Q=$M,B=Qm0){super();this._rapierEventQueue=new WB.EventQueue(!0),this._rapierSimulation=new WB.World(B),this._rapierSimulation.timestep=Math.fround(1/Q),this._world=A}get colliderMap(){return this._colliderMap}get isDebugRaycastingEnabled(){return this._debugRaycastingEnabled}get isDebugRenderingEnabled(){return this._debugRenderingEnabled}get gravity(){return this._rapierSimulation.gravity}get timestepS(){return this._rapierSimulation.timestep}get world(){return this._world}createRawCollider(A,Q){return this._rapierSimulation.createCollider(A,Q)}createRawRigidBody(A){return this._rapierSimulation.createRigidBody(A)}enableDebugRaycasting(A){this._debugRaycastingEnabled=A}enableDebugRendering(A,Q=WB.QueryFilterFlags.EXCLUDE_FIXED){this._debugRenderingEnabled=A,this._debugRenderingFilterFlags=Q}getContactManifolds(A,Q){let B=[];return this._rapierSimulation.narrowPhase.contactPair(A,Q,(Y,J)=>{if(Y.numContacts()===0)return;let C=Y.normal(),X=[];for(let G=0;G{let G=this._colliderMap.getColliderHandleBlockType(X.handle);if(G&&!J.has(G))return J.add(G),C.push({intersectedBlockType:G}),!0;let W=this._colliderMap.getColliderHandleEntity(X.handle);if(W&&!J.has(W))return J.add(W),C.push({intersectedEntity:W}),!0;return!0},Y.filterFlags,Y.filterGroups,Y.filterExcludeCollider,Y.filterExcludeRigidBody,Y.filterPredicate),C}raycast(A,Q,B,Y={}){let J=new WB.Ray(A,Q),C=this._rapierSimulation.castRay(J,B,Y.solidMode??!0,Y.filterFlags,Y.filterGroups,Y.filterExcludeCollider,Y.filterExcludeRigidBody,Y.filterPredicate);if(this._debugRaycastingEnabled)this.emitWithWorld(this._world,"SIMULATION.DEBUG_RAYCAST",{simulation:this,origin:A,direction:Q,length:B,hit:!!C});if(!C)return null;let X=J.pointAt(C.timeOfImpact),G=C.timeOfImpact,W=C.collider,F=this._colliderMap.getColliderHandleBlockType(W.handle);if(F)return{hitBlock:WE.fromGlobalCoordinate({x:Math.floor(X.x-(J.dir.x<0?0.0001:-0.0001)),y:Math.floor(X.y-(J.dir.y<0?0.0001:-0.0001)),z:Math.floor(X.z-(J.dir.z<0?0.0001:-0.0001))},F),hitPoint:X,hitDistance:G,origin:A,originDirection:Q};let Z=this._colliderMap.getColliderHandleEntity(W.handle);if(Z)return{hitEntity:Z,hitPoint:X,hitDistance:G,origin:A,originDirection:Q};return null}removeRawCollider(A){this._colliderMap.queueColliderHandleForCleanup(A.handle),this._rapierSimulation.removeCollider(A,!1)}removeRawRigidBody(A){this._rapierSimulation.removeRigidBody(A)}setGravity(A){this._rapierSimulation.gravity=A}step=(A)=>{this.emitWithWorld(this._world,"SIMULATION.STEP_START",{simulation:this,tickDeltaMs:A});let Q=performance.now();if(AY.startSpan({operation:"physics_step"},()=>{this._rapierSimulation.step(this._rapierEventQueue)}),AY.startSpan({operation:"physics_cleanup"},()=>{this._rapierEventQueue.drainContactForceEvents(this._onContactForceEvent),this._rapierEventQueue.drainCollisionEvents(this._onCollisionEvent),this._colliderMap.cleanup()}),this.emitWithWorld(this._world,"SIMULATION.STEP_END",{simulation:this,stepDurationMs:performance.now()-Q}),this._debugRenderingEnabled)this.emitWithWorld(this._world,"SIMULATION.DEBUG_RENDER",{simulation:this,...this._rapierSimulation.debugRender(this._debugRenderingFilterFlags)})};_onCollisionEvent=(A,Q,B)=>{let[Y,J]=this._getCollisionObjects(A,Q);if(!Y||!J)return;let C=(X,G)=>{if(X instanceof O8&&G instanceof X0&&X.hasListeners("BLOCK_TYPE.ENTITY_COLLISION"))X.emit("BLOCK_TYPE.ENTITY_COLLISION",{blockType:X,entity:G,started:B,colliderHandleA:A,colliderHandleB:Q});else if(X instanceof X0&&G instanceof O8&&X.hasListeners("ENTITY.BLOCK_COLLISION"))X.emit("ENTITY.BLOCK_COLLISION",{entity:X,blockType:G,started:B,colliderHandleA:A,colliderHandleB:Q});else if(X instanceof X0&&G instanceof X0&&X.hasListeners("ENTITY.ENTITY_COLLISION"))X.emit("ENTITY.ENTITY_COLLISION",{entity:X,otherEntity:G,started:B,colliderHandleA:A,colliderHandleB:Q});else if(typeof X==="function"&&(G instanceof X0||G instanceof O8))X(G,B,A,Q)};C(Y,J),C(J,Y)};_onContactForceEvent=(A)=>{let[Q,B]=this._getCollisionObjects(A.collider1(),A.collider2());if(!Q||typeof Q==="function"||!B||typeof B==="function")return;let Y={totalForce:A.totalForce(),totalForceMagnitude:A.totalForceMagnitude(),maxForceDirection:A.maxForceDirection(),maxForceMagnitude:A.maxForceMagnitude()},J=(C,X)=>{if(C instanceof O8&&X instanceof X0&&C.hasListeners("BLOCK_TYPE.ENTITY_CONTACT_FORCE"))C.emit("BLOCK_TYPE.ENTITY_CONTACT_FORCE",{blockType:C,entity:X,contactForceData:Y});else if(C instanceof X0&&X instanceof O8&&C.hasListeners("ENTITY.BLOCK_CONTACT_FORCE"))C.emit("ENTITY.BLOCK_CONTACT_FORCE",{entity:C,blockType:X,contactForceData:Y});else if(C instanceof X0&&X instanceof X0&&C.hasListeners("ENTITY.ENTITY_CONTACT_FORCE"))C.emit("ENTITY.ENTITY_CONTACT_FORCE",{entity:C,otherEntity:X,contactForceData:Y})};J(Q,B),J(B,Q)};_getCollisionObjects(A,Q){let B=this._colliderMap.getColliderHandleBlockType(A)??this._colliderMap.getColliderHandleCollisionCallback(A)??this._colliderMap.getColliderHandleEntity(A),Y=this._colliderMap.getColliderHandleBlockType(Q)??this._colliderMap.getColliderHandleCollisionCallback(Q)??this._colliderMap.getColliderHandleEntity(Q);return[B,Y]}}var ao;((C)=>{C.START="WORLD_LOOP.START";C.STOP="WORLD_LOOP.STOP";C.TICK_START="WORLD_LOOP.TICK_START";C.TICK_END="WORLD_LOOP.TICK_END";C.TICK_ERROR="WORLD_LOOP.TICK_ERROR"})(ao||={});class EM extends BQ{_currentTick=0;_ticker;_world;constructor(A,Q=$M){super();this._ticker=new ZM(Q,this._tick,this._onTickError),this._world=A}get currentTick(){return this._currentTick}get isStarted(){return this._ticker.isStarted}get nextTickMs(){return this._ticker.nextTickMs}get timestepS(){return this._ticker.fixedTimestepS}get world(){return this._world}start(){this._ticker.start(),this.emitWithWorld(this._world,"WORLD_LOOP.START",{worldLoop:this})}stop(){this._ticker.stop(),this.emitWithWorld(this._world,"WORLD_LOOP.STOP",{worldLoop:this})}_tick=(A)=>{this.emitWithWorld(this._world,"WORLD_LOOP.TICK_START",{worldLoop:this,tickDeltaMs:A});let Q=performance.now(),B=O0.instance,Y=B.isEnabled;if(Y)B.beginTick(this._currentTick,this._world.entityManager.entityCount,dJ.instance.playerCount,this._world.id);if(AY.startSpan({operation:"world_tick",attributes:{serverPlayerCount:dJ.instance.playerCount,targetTickRate:this._ticker.targetTicksPerSecond,targetTickRateMs:this._ticker.fixedTimestepMs,worldId:this._world.id,worldName:this._world.name,worldChunkCount:this._world.chunkLattice.chunkCount,worldEntityCount:this._world.entityManager.entityCount,worldLoopTick:this._currentTick}},()=>{let J;if(J=Y?performance.now():0,AY.startSpan({operation:"entities_tick"},()=>this._world.entityManager.tickEntities(A)),Y)B.recordPhase("entities_tick",performance.now()-J,this._world.id);if(J=Y?performance.now():0,AY.startSpan({operation:"simulation_step"},()=>this._world.simulation.step(A)),Y)B.recordPhase("simulation_step",performance.now()-J,this._world.id);if(J=Y?performance.now():0,AY.startSpan({operation:"entities_emit_updates"},()=>this._world.entityManager.checkAndEmitUpdates()),Y)B.recordPhase("entities_emit_updates",performance.now()-J,this._world.id);if(this._world.networkSynchronizer.shouldSynchronize()){if(J=Y?performance.now():0,AY.startSpan({operation:"network_synchronize"},()=>this._world.networkSynchronizer.synchronize()),Y)B.recordPhase("network_synchronize",performance.now()-J,this._world.id)}}),Y)B.endTick(this._world.id);this._currentTick++,this.emitWithWorld(this._world,"WORLD_LOOP.TICK_END",{worldLoop:this,tickDurationMs:performance.now()-Q})};_onTickError=(A)=>{l.error(`WorldLoop._onTickError(): Error: ${A}`),this.emitWithWorld(this._world,"WORLD_LOOP.TICK_ERROR",{worldLoop:this,error:A})}}class xk{_world=null;_options=null;_tickFn=null;_toggleParity=!1;get isRunning(){return!!this._tickFn}start(A,Q){this.stop();let B=Math.max(0,Math.floor(Q.blocksPerTick)),Y=Math.max(0,Math.floor(Q.blockTypeId)),J=Q.min??{x:-32,y:0,z:-32},C=Q.max??{x:32,y:16,z:32},X=Bm0(J,C),G=Q.mode??"toggle";this._world=A,this._options={blocksPerTick:B,blockTypeId:Y,mode:G,min:X.min,max:X.max},this._toggleParity=!1,this._tickFn=()=>{this._tick()},A.loop.on("WORLD_LOOP.TICK_START",this._tickFn)}stop(){if(this._world&&this._tickFn)this._world.loop.off("WORLD_LOOP.TICK_START",this._tickFn);this._world=null,this._options=null,this._tickFn=null,this._toggleParity=!1}_tick(){if(!this._world||!this._options)return;let{blocksPerTick:A,blockTypeId:Q,min:B,max:Y,mode:J}=this._options;if(!B||!Y)return;let C=Y.x-B.x+1,X=Y.y-B.y+1,G=Y.z-B.z+1;if(C<=0||X<=0||G<=0)return;let W=this._toggleParity;this._toggleParity=!this._toggleParity;for(let F=0;F{A.call(Q,B,Y,this)})}keys(){return this._map.keys()}values(){return this._map.values()}entries(){return this._map.entries()}[Symbol.iterator](){return this._map[Symbol.iterator]()}_syncArray(){this._values.length=0;for(let A of this._map.values())this._values.push(A);this._isDirty=!1}}var to;((p)=>{p.BURST="PARTICLE_EMITTER.BURST";p.DESPAWN="PARTICLE_EMITTER.DESPAWN";p.SET_ALPHA_TEST="PARTICLE_EMITTER.SET_ALPHA_TEST";p.SET_ATTACHED_TO_ENTITY="PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY";p.SET_ATTACHED_TO_ENTITY_NODE_NAME="PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY_NODE_NAME";p.SET_COLOR_END="PARTICLE_EMITTER.SET_COLOR_END";p.SET_COLOR_END_VARIANCE="PARTICLE_EMITTER.SET_COLOR_END_VARIANCE";p.SET_COLOR_INTENSITY_END="PARTICLE_EMITTER.SET_COLOR_INTENSITY_END";p.SET_COLOR_INTENSITY_END_VARIANCE="PARTICLE_EMITTER.SET_COLOR_INTENSITY_END_VARIANCE";p.SET_COLOR_INTENSITY_START="PARTICLE_EMITTER.SET_COLOR_INTENSITY_START";p.SET_COLOR_INTENSITY_START_VARIANCE="PARTICLE_EMITTER.SET_COLOR_INTENSITY_START_VARIANCE";p.SET_COLOR_START="PARTICLE_EMITTER.SET_COLOR_START";p.SET_COLOR_START_VARIANCE="PARTICLE_EMITTER.SET_COLOR_START_VARIANCE";p.SET_GRAVITY="PARTICLE_EMITTER.SET_GRAVITY";p.SET_LIFETIME="PARTICLE_EMITTER.SET_LIFETIME";p.SET_LIFETIME_VARIANCE="PARTICLE_EMITTER.SET_LIFETIME_VARIANCE";p.SET_MAX_PARTICLES="PARTICLE_EMITTER.SET_MAX_PARTICLES";p.SET_OFFSET="PARTICLE_EMITTER.SET_OFFSET";p.SET_ORIENTATION="PARTICLE_EMITTER.SET_ORIENTATION";p.SET_ORIENTATION_FIXED_ROTATION="PARTICLE_EMITTER.SET_ORIENTATION_FIXED_ROTATION";p.SET_OPACITY_END="PARTICLE_EMITTER.SET_OPACITY_END";p.SET_OPACITY_END_VARIANCE="PARTICLE_EMITTER.SET_OPACITY_END_VARIANCE";p.SET_OPACITY_START="PARTICLE_EMITTER.SET_OPACITY_START";p.SET_OPACITY_START_VARIANCE="PARTICLE_EMITTER.SET_OPACITY_START_VARIANCE";p.SET_PAUSED="PARTICLE_EMITTER.SET_PAUSED";p.SET_POSITION="PARTICLE_EMITTER.SET_POSITION";p.SET_POSITION_VARIANCE="PARTICLE_EMITTER.SET_POSITION_VARIANCE";p.SET_RATE="PARTICLE_EMITTER.SET_RATE";p.SET_RATE_VARIANCE="PARTICLE_EMITTER.SET_RATE_VARIANCE";p.SET_SIZE_END="PARTICLE_EMITTER.SET_SIZE_END";p.SET_SIZE_END_VARIANCE="PARTICLE_EMITTER.SET_SIZE_END_VARIANCE";p.SET_SIZE_START="PARTICLE_EMITTER.SET_SIZE_START";p.SET_SIZE_START_VARIANCE="PARTICLE_EMITTER.SET_SIZE_START_VARIANCE";p.SET_TEXTURE_URI="PARTICLE_EMITTER.SET_TEXTURE_URI";p.SET_TRANSPARENT="PARTICLE_EMITTER.SET_TRANSPARENT";p.SET_VELOCITY="PARTICLE_EMITTER.SET_VELOCITY";p.SET_VELOCITY_VARIANCE="PARTICLE_EMITTER.SET_VELOCITY_VARIANCE";p.SPAWN="PARTICLE_EMITTER.SPAWN"})(to||={});class eo extends BQ{_id;_alphaTest;_attachedToEntity;_attachedToEntityNodeName;_colorEnd;_colorEndVariance;_colorIntensityEnd;_colorIntensityEndVariance;_colorIntensityStart;_colorIntensityStartVariance;_colorStart;_colorStartVariance;_gravity;_lifetime;_lifetimeVariance;_lockToEmitter;_maxParticles;_offset;_orientation;_orientationFixedRotation;_opacityEnd;_opacityEndVariance;_opacityStart;_opacityStartVariance;_paused;_position;_positionVariance;_rate;_rateVariance;_sizeEnd;_sizeEndVariance;_sizeStart;_sizeStartVariance;_sizeVariance;_textureUri;_transparent;_velocity;_velocityVariance;_world;constructor(A){if(!!A.attachedToEntity===!!A.position)l.fatalError("Either attachedToEntity or position must be set, but not both.");if(!A.textureUri)l.fatalError("ParticleEmitter.constructor(): textureUri must be provided.");super();this._alphaTest=A.alphaTest??0.05,this._attachedToEntity=A.attachedToEntity,this._attachedToEntityNodeName=A.attachedToEntityNodeName,this._colorEnd=A.colorEnd,this._colorEndVariance=A.colorEndVariance,this._colorIntensityEnd=A.colorIntensityEnd,this._colorIntensityEndVariance=A.colorIntensityEndVariance,this._colorIntensityStart=A.colorIntensityStart,this._colorIntensityStartVariance=A.colorIntensityStartVariance,this._colorStart=A.colorStart,this._colorStartVariance=A.colorStartVariance,this._gravity=A.gravity,this._lifetime=A.lifetime,this._lifetimeVariance=A.lifetimeVariance,this._lockToEmitter=A.lockToEmitter??!1,this._maxParticles=A.maxParticles,this._offset=A.offset,this._orientation=A.orientation,this._orientationFixedRotation=A.orientationFixedRotation,this._opacityEnd=A.opacityEnd,this._opacityEndVariance=A.opacityEndVariance,this._opacityStart=A.opacityStart,this._opacityStartVariance=A.opacityStartVariance,this._paused=!1,this._position=A.position,this._positionVariance=A.positionVariance,this._rate=A.rate,this._rateVariance=A.rateVariance,this._sizeEnd=A.sizeEnd,this._sizeEndVariance=A.sizeEndVariance,this._sizeStart=A.sizeStart,this._sizeStartVariance=A.sizeStartVariance,this._textureUri=A.textureUri,this._transparent=A.transparent,this._velocity=A.velocity,this._velocityVariance=A.velocityVariance}get id(){return this._id}get alphaTest(){return this._alphaTest}get attachedToEntity(){return this._attachedToEntity}get attachedToEntityNodeName(){return this._attachedToEntityNodeName}get colorEnd(){return this._colorEnd}get colorEndVariance(){return this._colorEndVariance}get colorIntensityEnd(){return this._colorIntensityEnd}get colorIntensityEndVariance(){return this._colorIntensityEndVariance}get colorIntensityStart(){return this._colorIntensityStart}get colorIntensityStartVariance(){return this._colorIntensityStartVariance}get colorStart(){return this._colorStart}get colorStartVariance(){return this._colorStartVariance}get gravity(){return this._gravity}get isSpawned(){return this._id!==void 0}get lifetime(){return this._lifetime}get lifetimeVariance(){return this._lifetimeVariance}get lockToEmitter(){return this._lockToEmitter}get maxParticles(){return this._maxParticles}get offset(){return this._offset}get orientation(){return this._orientation}get orientationFixedRotation(){return this._orientationFixedRotation}get opacityEnd(){return this._opacityEnd}get opacityEndVariance(){return this._opacityEndVariance}get opacityStart(){return this._opacityStart}get opacityStartVariance(){return this._opacityStartVariance}get paused(){return this._paused}get position(){return this._position}get positionVariance(){return this._positionVariance}get rate(){return this._rate}get rateVariance(){return this._rateVariance}get sizeEnd(){return this._sizeEnd}get sizeEndVariance(){return this._sizeEndVariance}get sizeStart(){return this._sizeStart}get sizeStartVariance(){return this._sizeStartVariance}get sizeVariance(){return this._sizeVariance}get textureUri(){return this._textureUri}get transparent(){return this._transparent}get velocity(){return this._velocity}get velocityVariance(){return this._velocityVariance}get world(){return this._world}setAlphaTest(A){if(this._alphaTest===A)return;if(this._alphaTest=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_ALPHA_TEST",{particleEmitter:this,alphaTest:A})}setAttachedToEntity(A){if(!A.isSpawned)return l.error(`ParticleEmitter.setAttachedToEntity(): Entity ${A.id} is not spawned!`);if(this._attachedToEntity===A)return;if(this._attachedToEntity=A,this._position=void 0,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY",{particleEmitter:this,entity:A})}setAttachedToEntityNodeName(A){if(this._attachedToEntityNodeName===A)return;if(this._attachedToEntityNodeName=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY_NODE_NAME",{particleEmitter:this,attachedToEntityNodeName:A})}setColorEnd(A){if(this._colorEnd&&this._colorEnd.r===A.r&&this._colorEnd.g===A.g&&this._colorEnd.b===A.b)return;if(this._colorEnd=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_END",{particleEmitter:this,colorEnd:A})}setColorEndVariance(A){if(this._colorEndVariance&&this._colorEndVariance.r===A.r&&this._colorEndVariance.g===A.g&&this._colorEndVariance.b===A.b)return;if(this._colorEndVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_END_VARIANCE",{particleEmitter:this,colorEndVariance:A})}setColorIntensityEnd(A){if(this._colorIntensityEnd===A)return;if(this._colorIntensityEnd=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_INTENSITY_END",{particleEmitter:this,colorIntensityEnd:A})}setColorIntensityEndVariance(A){if(this._colorIntensityEndVariance===A)return;if(this._colorIntensityEndVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_INTENSITY_END_VARIANCE",{particleEmitter:this,colorIntensityEndVariance:A})}setColorIntensityStart(A){if(this._colorIntensityStart===A)return;if(this._colorIntensityStart=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_INTENSITY_START",{particleEmitter:this,colorIntensityStart:A})}setColorIntensityStartVariance(A){if(this._colorIntensityStartVariance===A)return;if(this._colorIntensityStartVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_INTENSITY_START_VARIANCE",{particleEmitter:this,colorIntensityStartVariance:A})}setColorStart(A){if(this._colorStart&&this._colorStart.r===A.r&&this._colorStart.g===A.g&&this._colorStart.b===A.b)return;if(this._colorStart=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_START",{particleEmitter:this,colorStart:A})}setColorStartVariance(A){if(this._colorStartVariance&&this._colorStartVariance.r===A.r&&this._colorStartVariance.g===A.g&&this._colorStartVariance.b===A.b)return;if(this._colorStartVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_START_VARIANCE",{particleEmitter:this,colorStartVariance:A})}setGravity(A){if(this._gravity&&this._gravity.x===A.x&&this._gravity.y===A.y&&this._gravity.z===A.z)return;if(this._gravity=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_GRAVITY",{particleEmitter:this,gravity:A})}setLifetime(A){if(this._lifetime===A)return;if(this._lifetime=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_LIFETIME",{particleEmitter:this,lifetime:A})}setLifetimeVariance(A){if(this._lifetimeVariance===A)return;if(this._lifetimeVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_LIFETIME_VARIANCE",{particleEmitter:this,lifetimeVariance:A})}setMaxParticles(A){if(this._maxParticles===A)return;if(this._maxParticles=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_MAX_PARTICLES",{particleEmitter:this,maxParticles:A})}setOffset(A){if(this._offset&&this._offset.x===A.x&&this._offset.y===A.y&&this._offset.z===A.z)return;if(this._offset=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_OFFSET",{particleEmitter:this,offset:A})}setOrientation(A){if(this._orientation===A)return;if(this._orientation=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_ORIENTATION",{particleEmitter:this,orientation:A})}setOrientationFixedRotation(A){if(this._orientationFixedRotation&&this._orientationFixedRotation.x===A.x&&this._orientationFixedRotation.y===A.y&&this._orientationFixedRotation.z===A.z)return;if(this._orientationFixedRotation=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_ORIENTATION_FIXED_ROTATION",{particleEmitter:this,orientationFixedRotation:A})}setOpacityEnd(A){if(this._opacityEnd===A)return;if(this._opacityEnd=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_OPACITY_END",{particleEmitter:this,opacityEnd:A})}setOpacityEndVariance(A){if(this._opacityEndVariance===A)return;if(this._opacityEndVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_OPACITY_END_VARIANCE",{particleEmitter:this,opacityEndVariance:A})}setOpacityStart(A){if(this._opacityStart===A)return;if(this._opacityStart=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_OPACITY_START",{particleEmitter:this,opacityStart:A})}setOpacityStartVariance(A){if(this._opacityStartVariance===A)return;if(this._opacityStartVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_OPACITY_START_VARIANCE",{particleEmitter:this,opacityStartVariance:A})}setPosition(A){if(this._position&&this._position.x===A.x&&this._position.y===A.y&&this._position.z===A.z)return;if(this._position=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_POSITION",{particleEmitter:this,position:A})}setPositionVariance(A){if(this._positionVariance&&this._positionVariance.x===A.x&&this._positionVariance.y===A.y&&this._positionVariance.z===A.z)return;if(this._positionVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_POSITION_VARIANCE",{particleEmitter:this,positionVariance:A})}setRate(A){if(this._rate===A)return;if(this._rate=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_RATE",{particleEmitter:this,rate:A})}setRateVariance(A){if(this._rateVariance===A)return;if(this._rateVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_RATE_VARIANCE",{particleEmitter:this,rateVariance:A})}setSizeEnd(A){if(this._sizeEnd===A)return;if(this._sizeEnd=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_SIZE_END",{particleEmitter:this,sizeEnd:A})}setSizeEndVariance(A){if(this._sizeEndVariance===A)return;if(this._sizeEndVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_SIZE_END_VARIANCE",{particleEmitter:this,sizeEndVariance:A})}setSizeStart(A){if(this._sizeStart===A)return;if(this._sizeStart=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_SIZE_START",{particleEmitter:this,sizeStart:A})}setSizeStartVariance(A){if(this._sizeStartVariance===A)return;if(this._sizeStartVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_SIZE_START_VARIANCE",{particleEmitter:this,sizeStartVariance:A})}setTextureUri(A){if(this._textureUri===A)return;if(this._textureUri=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_TEXTURE_URI",{particleEmitter:this,textureUri:A})}setTransparent(A){if(this._transparent===A)return;if(this._transparent=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_TRANSPARENT",{particleEmitter:this,transparent:A})}setVelocity(A){if(this._velocity&&this._velocity.x===A.x&&this._velocity.y===A.y&&this._velocity.z===A.z)return;if(this._velocity=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_VELOCITY",{particleEmitter:this,velocity:A})}setVelocityVariance(A){if(this._velocityVariance&&this._velocityVariance.x===A.x&&this._velocityVariance.y===A.y&&this._velocityVariance.z===A.z)return;if(this._velocityVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_VELOCITY_VARIANCE",{particleEmitter:this,velocityVariance:A})}burst(A){if(this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.BURST",{particleEmitter:this,count:A})}despawn(){if(!this.isSpawned||!this._world)return;this._world.particleEmitterManager.unregisterParticleEmitter(this),this.emitWithWorld(this._world,"PARTICLE_EMITTER.DESPAWN",{particleEmitter:this}),this._id=void 0,this._world=void 0}restart(){if(!this._paused)return;if(this._paused=!1,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_PAUSED",{particleEmitter:this,paused:this._paused})}stop(){if(this._paused)return;if(this._paused=!0,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_PAUSED",{particleEmitter:this,paused:this._paused})}spawn(A){if(this.isSpawned)return;if(this._attachedToEntity&&!this._attachedToEntity.isSpawned)return l.error(`ParticleEmitter.spawn(): Attached entity ${this._attachedToEntity.id} must be spawned before spawning ParticleEmitter!`);this._id=A.particleEmitterManager.registerParticleEmitter(this),this._world=A,this.emitWithWorld(A,"PARTICLE_EMITTER.SPAWN",{particleEmitter:this})}serialize(){return GQ.serializeParticleEmitter(this)}}var Ym0=30,Jm0=Math.round($M/Ym0);class fk{_outboundPerPlayerReliablePackets=new bB;_outboundSharedReliablePackets=[];_outboundSharedUnreliablePackets=[];_queuedAudioSyncs={broadcast:new bB,perPlayer:new bB};_queuedBlockSyncs={broadcast:new bB,perPlayer:new bB};_queuedBlockTypeSyncs={broadcast:new bB,perPlayer:new bB};_queuedChunkSyncs={broadcast:new bB,perPlayer:new bB};_queuedEntitySyncs={broadcast:new bB,perPlayer:new bB};_queuedParticleEmitterSyncs={broadcast:new bB,perPlayer:new bB};_queuedPlayerSyncs={broadcast:new bB,perPlayer:new bB};_queuedSceneUISyncs={broadcast:new bB,perPlayer:new bB};_queuedCameraSyncs={broadcast:void 0,perPlayer:new bB};_queuedChatMessagesSyncs={broadcast:void 0,perPlayer:new bB};_queuedDebugRaycastsSyncs={broadcast:void 0,perPlayer:new bB};_queuedDebugRenderSyncs={broadcast:void 0,perPlayer:new bB};_queuedNotificationPermissionRequestSyncs={broadcast:void 0,perPlayer:new bB};_queuedUISyncs={broadcast:void 0,perPlayer:new bB};_queuedUIDatasSyncs={broadcast:void 0,perPlayer:new bB};_queuedWorldSyncs={broadcast:void 0,perPlayer:new bB};_loadedSceneUIs=new Set;_spawnedChunks=new Set;_spawnedEntities=new Set;_playersInWorld=new Set;_world;constructor(A){this._world=A,this._subscribeToAudioEvents(),this._subscribeToBlockTypeRegistryEvents(),this._subscribeToChatEvents(),this._subscribeToChunkLatticeEvents(),this._subscribeToEntityEvents(),this._subscribeToEntityModelAnimationEvents(),this._subscribeToEntityModelNodeOverrideEvents(),this._subscribeToParticleEmitterEvents(),this._subscribeToPlayerEvents(),this._subscribeToPlayerCameraEvents(),this._subscribeToPlayerUIEvents(),this._subscribeToSceneUIEvents(),this._subscribeToSimulationEvents(),this._subscribeToWorldEvents()}shouldSynchronize(){return this._world.loop.currentTick%Jm0===0}synchronize(){let A=this._world.loop.currentTick;if(this._queuedEntitySyncs.broadcast.size>0){let Q=[],B=[];for(let Y of this._queuedEntitySyncs.broadcast.valuesArray){let J=!1;for(let C in Y)if(J=C!=="i"&&C!=="p"&&C!=="r",J)break;(J?Q:B).push(Y)}if(B.length>0){let Y=gQ.createPacket(gQ.outboundPackets.entitiesPacketDefinition,B,A);this._outboundSharedUnreliablePackets.push(Y)}if(Q.length>0){let Y=gQ.createPacket(gQ.outboundPackets.entitiesPacketDefinition,Q,A);this._outboundSharedReliablePackets.push(Y);for(let J of this._outboundPerPlayerReliablePackets.valuesArray)J.push(Y)}}if(this._queuedEntitySyncs.perPlayer.size>0)for(let[Q,B]of this._queuedEntitySyncs.perPlayer.entries())this._outboundPerPlayerReliablePackets.get(Q)?.push(gQ.createPacket(gQ.outboundPackets.entitiesPacketDefinition,B.valuesArray,A));this._collectSingletonSyncToOutboundPackets(this._queuedCameraSyncs,gQ.outboundPackets.cameraPacketDefinition),this._collectSyncToOutboundPackets(this._queuedAudioSyncs,gQ.outboundPackets.audiosPacketDefinition),this._collectSyncToOutboundPackets(this._queuedBlockTypeSyncs,gQ.outboundPackets.blockTypesPacketDefinition),this._collectSyncToOutboundPackets(this._queuedChunkSyncs,gQ.outboundPackets.chunksPacketDefinition),this._collectSyncToOutboundPackets(this._queuedBlockSyncs,gQ.outboundPackets.blocksPacketDefinition),this._collectSyncToOutboundPackets(this._queuedParticleEmitterSyncs,gQ.outboundPackets.particleEmittersPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedUISyncs,gQ.outboundPackets.uiPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedUIDatasSyncs,gQ.outboundPackets.uiDatasPacketDefinition),this._collectSyncToOutboundPackets(this._queuedSceneUISyncs,gQ.outboundPackets.sceneUIsPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedWorldSyncs,gQ.outboundPackets.worldPacketDefinition),this._collectSyncToOutboundPackets(this._queuedPlayerSyncs,gQ.outboundPackets.playersPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedChatMessagesSyncs,gQ.outboundPackets.chatMessagesPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedNotificationPermissionRequestSyncs,gQ.outboundPackets.notificationPermissionRequestPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedDebugRenderSyncs,gQ.outboundPackets.physicsDebugRenderPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedDebugRaycastsSyncs,gQ.outboundPackets.physicsDebugRaycastsPacketDefinition),AY.startSpan({operation:"send_all_packets"},()=>{for(let Q of dJ.instance.getConnectedPlayersByWorld(this._world)){let B=this._outboundPerPlayerReliablePackets.get(Q)??this._outboundSharedReliablePackets;if(B.length>0)Q.connection.send(B);if(this._outboundSharedUnreliablePackets.length>0)Q.connection.send(this._outboundSharedUnreliablePackets,!1)}}),AY.startSpan({operation:"network_synchronize_cleanup"},()=>{if(this._outboundPerPlayerReliablePackets.size>0)this._outboundPerPlayerReliablePackets.clear();if(this._outboundSharedReliablePackets.length>0)this._outboundSharedReliablePackets.length=0;if(this._outboundSharedUnreliablePackets.length>0)this._outboundSharedUnreliablePackets.length=0;if(this._loadedSceneUIs.size>0)this._loadedSceneUIs.clear();if(this._spawnedChunks.size>0)this._spawnedChunks.clear();if(this._spawnedEntities.size>0)this._spawnedEntities.clear();this._clearSyncQueue(this._queuedAudioSyncs),this._clearSyncQueue(this._queuedBlockSyncs),this._clearSyncQueue(this._queuedBlockTypeSyncs),this._clearSyncQueue(this._queuedChunkSyncs),this._clearSyncQueue(this._queuedEntitySyncs),this._clearSyncQueue(this._queuedParticleEmitterSyncs),this._clearSyncQueue(this._queuedPlayerSyncs),this._clearSyncQueue(this._queuedSceneUISyncs),this._clearSingletonSyncQueue(this._queuedCameraSyncs),this._clearSingletonSyncQueue(this._queuedChatMessagesSyncs),this._clearSingletonSyncQueue(this._queuedDebugRaycastsSyncs),this._clearSingletonSyncQueue(this._queuedDebugRenderSyncs),this._clearSingletonSyncQueue(this._queuedNotificationPermissionRequestSyncs),this._clearSingletonSyncQueue(this._queuedUISyncs),this._clearSingletonSyncQueue(this._queuedUIDatasSyncs),this._clearSingletonSyncQueue(this._queuedWorldSyncs),q1.clearCachedPacketsSerializedBuffers()})}_subscribeToAudioEvents(){this._world.final("AUDIO.PAUSE",this._onAudioPause),this._world.final("AUDIO.PLAY",this._onAudioPlay),this._world.final("AUDIO.PLAY_RESTART",this._onAudioPlayRestart),this._world.final("AUDIO.SET_ATTACHED_TO_ENTITY",this._onAudioSetAttachedToEntity),this._world.final("AUDIO.SET_CUTOFF_DISTANCE",this._onAudioSetCutoffDistance),this._world.final("AUDIO.SET_DETUNE",this._onAudioSetDetune),this._world.final("AUDIO.SET_DISTORTION",this._onAudioSetDistortion),this._world.final("AUDIO.SET_POSITION",this._onAudioSetPosition),this._world.final("AUDIO.SET_PLAYBACK_RATE",this._onAudioSetPlaybackRate),this._world.final("AUDIO.SET_REFERENCE_DISTANCE",this._onAudioSetReferenceDistance),this._world.final("AUDIO.SET_VOLUME",this._onAudioSetVolume)}_subscribeToBlockTypeRegistryEvents(){this._world.final("BLOCK_TYPE_REGISTRY.REGISTER_BLOCK_TYPE",this._onBlockTypeRegistryRegisterBlockType)}_subscribeToChatEvents(){this._world.final("CHAT.BROADCAST_MESSAGE",this._onChatSendBroadcastMessage),this._world.final("CHAT.PLAYER_MESSAGE",this._onChatSendPlayerMessage)}_subscribeToChunkLatticeEvents(){this._world.final("CHUNK_LATTICE.ADD_CHUNK",this._onChunkLatticeAddChunk),this._world.final("CHUNK_LATTICE.REMOVE_CHUNK",this._onChunkLatticeRemoveChunk),this._world.final("CHUNK_LATTICE.SET_BLOCK",this._onChunkLatticeSetBlock)}_subscribeToEntityEvents(){this._world.final("ENTITY.SPAWN",this._onEntitySpawn),this._world.final("ENTITY.DESPAWN",this._onEntityDespawn),this._world.final("ENTITY.REMOVE_MODEL_NODE_OVERRIDE",this._onEntityRemoveModelNodeOverride),this._world.final("ENTITY.SET_BLOCK_TEXTURE_URI",this._onEntitySetBlockTextureUri),this._world.final("ENTITY.SET_EMISSIVE_COLOR",this._onEntitySetEmissiveColor),this._world.final("ENTITY.SET_EMISSIVE_INTENSITY",this._onEntitySetEmissiveIntensity),this._world.final("ENTITY.SET_MODEL_SCALE",this._onEntitySetModelScale),this._world.final("ENTITY.SET_MODEL_SCALE_INTERPOLATION_MS",this._onEntitySetModelScaleInterpolationMs),this._world.final("ENTITY.SET_MODEL_TEXTURE_URI",this._onEntitySetModelTextureUri),this._world.final("ENTITY.SET_OPACITY",this._onEntitySetOpacity),this._world.final("ENTITY.SET_OUTLINE",this._onEntitySetOutline),this._world.final("ENTITY.SET_PARENT",this._onEntitySetParent),this._world.final("ENTITY.SET_POSITION_INTERPOLATION_MS",this._onEntitySetPositionInterpolationMs),this._world.final("ENTITY.SET_ROTATION_INTERPOLATION_MS",this._onEntitySetRotationInterpolationMs),this._world.final("ENTITY.SET_TINT_COLOR",this._onEntitySetTintColor),this._world.final("ENTITY.UPDATE_POSITION",this._onEntityUpdatePosition),this._world.final("ENTITY.UPDATE_ROTATION",this._onEntityUpdateRotation)}_subscribeToEntityModelAnimationEvents(){this._world.final("ENTITY_MODEL_ANIMATION.PAUSE",this._onEntityModelAnimationPause),this._world.final("ENTITY_MODEL_ANIMATION.PLAY",this._onEntityModelAnimationPlay),this._world.final("ENTITY_MODEL_ANIMATION.RESTART",this._onEntityModelAnimationRestart),this._world.final("ENTITY_MODEL_ANIMATION.SET_BLEND_MODE",this._onEntityModelAnimationSetBlendMode),this._world.final("ENTITY_MODEL_ANIMATION.SET_CLAMP_WHEN_FINISHED",this._onEntityModelAnimationSetClampWhenFinished),this._world.final("ENTITY_MODEL_ANIMATION.SET_FADES_IN",this._onEntityModelAnimationSetFadesIn),this._world.final("ENTITY_MODEL_ANIMATION.SET_FADES_OUT",this._onEntityModelAnimationSetFadesOut),this._world.final("ENTITY_MODEL_ANIMATION.SET_LOOP_MODE",this._onEntityModelAnimationSetLoopMode),this._world.final("ENTITY_MODEL_ANIMATION.SET_PLAYBACK_RATE",this._onEntityModelAnimationSetPlaybackRate),this._world.final("ENTITY_MODEL_ANIMATION.SET_WEIGHT",this._onEntityModelAnimationSetWeight),this._world.final("ENTITY_MODEL_ANIMATION.STOP",this._onEntityModelAnimationStop)}_subscribeToEntityModelNodeOverrideEvents(){this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_COLOR",this._onEntityModelNodeOverrideSetEmissiveColor),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_INTENSITY",this._onEntityModelNodeOverrideSetEmissiveIntensity),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_HIDDEN",this._onEntityModelNodeOverrideSetHidden),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION",this._onEntityModelNodeOverrideSetLocalPosition),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION_INTERPOLATION_MS",this._onEntityModelNodeOverrideSetLocalPositionInterpolationMs),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION",this._onEntityModelNodeOverrideSetLocalRotation),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION_INTERPOLATION_MS",this._onEntityModelNodeOverrideSetLocalRotationInterpolationMs),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE",this._onEntityModelNodeOverrideSetLocalScale),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE_INTERPOLATION_MS",this._onEntityModelNodeOverrideSetLocalScaleInterpolationMs)}_subscribeToParticleEmitterEvents(){this._world.final("PARTICLE_EMITTER.DESPAWN",this._onParticleEmitterDespawn),this._world.final("PARTICLE_EMITTER.BURST",this._onParticleEmitterBurst),this._world.final("PARTICLE_EMITTER.SET_ALPHA_TEST",this._onParticleEmitterSetAlphaTest),this._world.final("PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY",this._onParticleEmitterSetAttachedToEntity),this._world.final("PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY_NODE_NAME",this._onParticleEmitterSetAttachedToEntityNodeName),this._world.final("PARTICLE_EMITTER.SET_COLOR_END",this._onParticleEmitterSetColorEnd),this._world.final("PARTICLE_EMITTER.SET_COLOR_END_VARIANCE",this._onParticleEmitterSetColorEndVariance),this._world.final("PARTICLE_EMITTER.SET_COLOR_INTENSITY_END",this._onParticleEmitterSetColorIntensityEnd),this._world.final("PARTICLE_EMITTER.SET_COLOR_INTENSITY_END_VARIANCE",this._onParticleEmitterSetColorIntensityEndVariance),this._world.final("PARTICLE_EMITTER.SET_COLOR_INTENSITY_START",this._onParticleEmitterSetColorIntensityStart),this._world.final("PARTICLE_EMITTER.SET_COLOR_INTENSITY_START_VARIANCE",this._onParticleEmitterSetColorIntensityStartVariance),this._world.final("PARTICLE_EMITTER.SET_COLOR_START",this._onParticleEmitterSetColorStart),this._world.final("PARTICLE_EMITTER.SET_COLOR_START_VARIANCE",this._onParticleEmitterSetColorStartVariance),this._world.final("PARTICLE_EMITTER.SET_GRAVITY",this._onParticleEmitterSetGravity),this._world.final("PARTICLE_EMITTER.SET_LIFETIME",this._onParticleEmitterSetLifetime),this._world.final("PARTICLE_EMITTER.SET_LIFETIME_VARIANCE",this._onParticleEmitterSetLifetimeVariance),this._world.final("PARTICLE_EMITTER.SET_MAX_PARTICLES",this._onParticleEmitterSetMaxParticles),this._world.final("PARTICLE_EMITTER.SET_OFFSET",this._onParticleEmitterSetOffset),this._world.final("PARTICLE_EMITTER.SET_OPACITY_END",this._onParticleEmitterSetOpacityEnd),this._world.final("PARTICLE_EMITTER.SET_OPACITY_END_VARIANCE",this._onParticleEmitterSetOpacityEndVariance),this._world.final("PARTICLE_EMITTER.SET_OPACITY_START",this._onParticleEmitterSetOpacityStart),this._world.final("PARTICLE_EMITTER.SET_OPACITY_START_VARIANCE",this._onParticleEmitterSetOpacityStartVariance),this._world.final("PARTICLE_EMITTER.SET_PAUSED",this._onParticleEmitterSetPaused),this._world.final("PARTICLE_EMITTER.SET_POSITION",this._onParticleEmitterSetPosition),this._world.final("PARTICLE_EMITTER.SET_POSITION_VARIANCE",this._onParticleEmitterSetPositionVariance),this._world.final("PARTICLE_EMITTER.SET_RATE",this._onParticleEmitterSetRate),this._world.final("PARTICLE_EMITTER.SET_RATE_VARIANCE",this._onParticleEmitterSetRateVariance),this._world.final("PARTICLE_EMITTER.SET_SIZE_END",this._onParticleEmitterSetSizeEnd),this._world.final("PARTICLE_EMITTER.SET_SIZE_END_VARIANCE",this._onParticleEmitterSetSizeEndVariance),this._world.final("PARTICLE_EMITTER.SET_SIZE_START",this._onParticleEmitterSetSizeStart),this._world.final("PARTICLE_EMITTER.SET_SIZE_START_VARIANCE",this._onParticleEmitterSetSizeStartVariance),this._world.final("PARTICLE_EMITTER.SET_TEXTURE_URI",this._onParticleEmitterSetTextureUri),this._world.final("PARTICLE_EMITTER.SET_TRANSPARENT",this._onParticleEmitterSetTransparent),this._world.final("PARTICLE_EMITTER.SET_VELOCITY",this._onParticleEmitterSetVelocity),this._world.final("PARTICLE_EMITTER.SET_VELOCITY_VARIANCE",this._onParticleEmitterSetVelocityVariance),this._world.final("PARTICLE_EMITTER.SPAWN",this._onParticleEmitterSpawn)}_subscribeToPlayerEvents(){this._world.final("PLAYER.JOINED_WORLD",this._onPlayerJoinedWorld),this._world.final("PLAYER.LEFT_WORLD",this._onPlayerLeftWorld),this._world.final("PLAYER.RECONNECTED_WORLD",this._onPlayerReconnectedWorld),this._world.final("PLAYER.REQUEST_NOTIFICATION_PERMISSION",this._onPlayerRequestNotificationPermission),this._world.final("PLAYER.REQUEST_SYNC",this._onPlayerRequestSync)}_subscribeToPlayerCameraEvents(){this._world.final("PLAYER_CAMERA.FACE_ENTITY",this._onPlayerCameraFaceEntity),this._world.final("PLAYER_CAMERA.FACE_POSITION",this._onPlayerCameraFacePosition),this._world.final("PLAYER_CAMERA.SET_ATTACHED_TO_ENTITY",this._onPlayerCameraSetAttachedToEntity),this._world.final("PLAYER_CAMERA.SET_ATTACHED_TO_POSITION",this._onPlayerCameraSetAttachedToPosition),this._world.final("PLAYER_CAMERA.SET_COLLIDES_WITH_BLOCKS",this._onPlayerCameraSetCollidesWithBlocks),this._world.final("PLAYER_CAMERA.SET_FILM_OFFSET",this._onPlayerCameraSetFilmOffset),this._world.final("PLAYER_CAMERA.SET_FORWARD_OFFSET",this._onPlayerCameraSetForwardOffset),this._world.final("PLAYER_CAMERA.SET_FOV",this._onPlayerCameraSetFov),this._world.final("PLAYER_CAMERA.SET_MODE",this._onPlayerCameraSetMode),this._world.final("PLAYER_CAMERA.SET_OFFSET",this._onPlayerCameraSetOffset),this._world.final("PLAYER_CAMERA.SET_SHOULDER_ANGLE",this._onPlayerCameraSetShoulderAngle),this._world.final("PLAYER_CAMERA.SET_TARGET_ENTITY",this._onPlayerCameraSetTargetEntity),this._world.final("PLAYER_CAMERA.SET_TARGET_POSITION",this._onPlayerCameraSetTargetPosition),this._world.final("PLAYER_CAMERA.SET_VIEW_MODEL",this._onPlayerCameraSetViewModel),this._world.final("PLAYER_CAMERA.SET_VIEW_MODEL_HIDDEN_NODES",this._onPlayerCameraSetViewModelHiddenNodes),this._world.final("PLAYER_CAMERA.SET_VIEW_MODEL_PITCHES_WITH_CAMERA",this._onPlayerCameraSetViewModelPitchesWithCamera),this._world.final("PLAYER_CAMERA.SET_VIEW_MODEL_SHOWN_NODES",this._onPlayerCameraSetViewModelShownNodes),this._world.final("PLAYER_CAMERA.SET_VIEW_MODEL_YAWS_WITH_CAMERA",this._onPlayerCameraSetViewModelYawsWithCamera),this._world.final("PLAYER_CAMERA.SET_ZOOM",this._onPlayerCameraSetZoom)}_subscribeToPlayerUIEvents(){this._world.final("PLAYER_UI.APPEND",this._onPlayerUIAppend),this._world.final("PLAYER_UI.FREEZE_POINTER_LOCK",this._onPlayerUIFreezePointerLock),this._world.final("PLAYER_UI.LOAD",this._onPlayerUILoad),this._world.final("PLAYER_UI.LOCK_POINTER",this._onPlayerUILockPointer),this._world.final("PLAYER_UI.SEND_DATA",this._onPlayerUISendData)}_subscribeToSceneUIEvents(){this._world.final("SCENE_UI.LOAD",this._onSceneUILoad),this._world.final("SCENE_UI.SET_ATTACHED_TO_ENTITY",this._onSceneUISetAttachedToEntity),this._world.final("SCENE_UI.SET_OFFSET",this._onSceneUISetOffset),this._world.final("SCENE_UI.SET_POSITION",this._onSceneUISetPosition),this._world.final("SCENE_UI.SET_STATE",this._onSceneUISetState),this._world.final("SCENE_UI.SET_VIEW_DISTANCE",this._onSceneUISetViewDistance),this._world.final("SCENE_UI.UNLOAD",this._onSceneUIUnload)}_subscribeToSimulationEvents(){this._world.final("SIMULATION.DEBUG_RAYCAST",this._onSimulationDebugRaycast),this._world.final("SIMULATION.DEBUG_RENDER",this._onSimulationDebugRender)}_subscribeToWorldEvents(){this._world.final("WORLD.SET_AMBIENT_LIGHT_COLOR",this._onWorldSetAmbientLightColor),this._world.final("WORLD.SET_AMBIENT_LIGHT_INTENSITY",this._onWorldSetAmbientLightIntensity),this._world.final("WORLD.SET_DIRECTIONAL_LIGHT_COLOR",this._onWorldSetDirectionalLightColor),this._world.final("WORLD.SET_DIRECTIONAL_LIGHT_INTENSITY",this._onWorldSetDirectionalLightIntensity),this._world.final("WORLD.SET_DIRECTIONAL_LIGHT_POSITION",this._onWorldSetDirectionalLightPosition),this._world.final("WORLD.SET_FOG_COLOR",this._onWorldSetFogColor),this._world.final("WORLD.SET_FOG_FAR",this._onWorldSetFogFar),this._world.final("WORLD.SET_FOG_NEAR",this._onWorldSetFogNear),this._world.final("WORLD.SET_SKYBOX_INTENSITY",this._onWorldSetSkyboxIntensity),this._world.final("WORLD.SET_SKYBOX_URI",this._onWorldSetSkyboxUri)}_onAudioPause=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.pa=!0,delete Q.pl,delete Q.r};_onAudioPlay=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Object.assign(Q,A.audio.serialize()),Q.pl=!0,delete Q.pa,delete Q.r};_onAudioPlayRestart=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Object.assign(Q,A.audio.serialize()),Q.r=!0,delete Q.pa,delete Q.pl};_onAudioSetAttachedToEntity=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.e=A.entity?A.entity.id:void 0,Q.p=A.entity?void 0:Q.p};_onAudioSetCutoffDistance=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.cd=A.cutoffDistance};_onAudioSetDetune=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.de=A.detune};_onAudioSetDistortion=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.di=A.distortion};_onAudioSetPosition=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.e=A.position?void 0:Q.e,Q.p=A.position?GQ.serializeVector(A.position):void 0};_onAudioSetPlaybackRate=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.pr=A.playbackRate};_onAudioSetReferenceDistance=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.rd=A.referenceDistance};_onAudioSetVolume=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.v=A.volume};_onBlockTypeRegistryRegisterBlockType=(A)=>{if(this._playersInWorld.size===0)return;let Q=this._createOrGetQueuedBlockTypeSync(A.blockType);Object.assign(Q,A.blockType.serialize())};_onChatSendBroadcastMessage=(A)=>{this._createOrGetQueuedChatMessagesSync().push({m:A.message,c:A.color,p:A.player?.id})};_onChatSendPlayerMessage=(A)=>{this._createOrGetQueuedChatMessagesSync(A.player).push({m:A.message,c:A.color})};_onChunkLatticeAddChunk=(A)=>{if(this._playersInWorld.size===0)return;let Q=this._createOrGetQueuedChunkSync(A.chunk);Object.assign(Q,A.chunk.serialize()),Q.rm=void 0,this._spawnedChunks.add(Q.c.join(","))};_onChunkLatticeRemoveChunk=(A)=>{if(this._playersInWorld.size===0)return;let Q=this._createOrGetQueuedChunkSync(A.chunk),B=Q.c.join(",");if(this._spawnedChunks.has(B))this._queuedChunkSyncs.broadcast.delete(B),this._spawnedChunks.delete(B);else Q.rm=!0};_onChunkLatticeSetBlock=(A)=>{if(this._playersInWorld.size===0)return;let Q=this._createOrGetQueuedBlockSync(A.globalCoordinate);Q.i=A.blockTypeId,Q.r=A.blockRotation?.enumIndex};_onEntitySpawn=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Object.assign(Q,A.entity.serialize()),this._spawnedEntities.add(Q.i)};_onEntityDespawn=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);if(this._spawnedEntities.has(Q.i))this._queuedEntitySyncs.broadcast.delete(Q.i),this._spawnedEntities.delete(Q.i);else Q.rm=!0};_onEntityRemoveModelNodeOverride=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.rm=!0};_onEntitySetBlockTextureUri=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.bt=A.blockTextureUri};_onEntitySetEmissiveColor=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.ec=A.emissiveColor?GQ.serializeRgbColor(A.emissiveColor):void 0};_onEntitySetEmissiveIntensity=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.ei=A.emissiveIntensity};_onEntitySetModelScale=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.sv=A.modelScale?GQ.serializeVector(A.modelScale):void 0};_onEntitySetModelScaleInterpolationMs=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.si=A.interpolationMs};_onEntitySetModelTextureUri=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.mt=A.modelTextureUri};_onEntitySetOpacity=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.o=A.opacity};_onEntitySetOutline=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity,A.forPlayer);Q.ol=A.outline?GQ.serializeOutline(A.outline):void 0};_onEntitySetParent=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.pe=A.parent?A.parent.id:void 0,Q.pn=A.parentNodeName};_onEntitySetPositionInterpolationMs=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.pi=A.interpolationMs};_onEntitySetRotationInterpolationMs=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.ri=A.interpolationMs};_onEntitySetTintColor=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.t=A.tintColor?GQ.serializeRgbColor(A.tintColor):void 0};_onEntityUpdatePosition=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.p=[A.position.x,A.position.y,A.position.z]};_onEntityUpdateRotation=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.r=[A.rotation.x,A.rotation.y,A.rotation.z,A.rotation.w]};_onEntityModelAnimationPause=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.pa=!0,delete Q.p,delete Q.r,delete Q.s};_onEntityModelAnimationPlay=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.p=!0,delete Q.pa,delete Q.r,delete Q.s};_onEntityModelAnimationRestart=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.r=!0,delete Q.pa,delete Q.p,delete Q.s};_onEntityModelAnimationSetBlendMode=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.b=A.blendMode};_onEntityModelAnimationSetClampWhenFinished=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.c=A.clampWhenFinished};_onEntityModelAnimationSetFadesIn=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.fi=A.fadesIn};_onEntityModelAnimationSetFadesOut=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.fo=A.fadesOut};_onEntityModelAnimationSetLoopMode=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.l=A.loopMode};_onEntityModelAnimationSetPlaybackRate=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.pr=A.playbackRate};_onEntityModelAnimationSetWeight=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.w=A.weight};_onEntityModelAnimationStop=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.s=!0,delete Q.p,delete Q.pa,delete Q.r};_onEntityModelNodeOverrideSetEmissiveColor=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.ec=A.emissiveColor?GQ.serializeRgbColor(A.emissiveColor):void 0,delete Q.rm};_onEntityModelNodeOverrideSetEmissiveIntensity=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.ei=A.emissiveIntensity,delete Q.rm};_onEntityModelNodeOverrideSetHidden=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.h=A.hidden,delete Q.rm};_onEntityModelNodeOverrideSetLocalPosition=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.p=A.localPosition?GQ.serializeVector(A.localPosition):void 0,delete Q.rm};_onEntityModelNodeOverrideSetLocalPositionInterpolationMs=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.pi=A.interpolationMs,delete Q.rm};_onEntityModelNodeOverrideSetLocalRotation=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.r=A.localRotation?GQ.serializeQuaternion(A.localRotation):void 0,delete Q.rm};_onEntityModelNodeOverrideSetLocalRotationInterpolationMs=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.ri=A.interpolationMs,delete Q.rm};_onEntityModelNodeOverrideSetLocalScale=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.s=A.localScale?GQ.serializeVector(A.localScale):void 0,delete Q.rm};_onEntityModelNodeOverrideSetLocalScaleInterpolationMs=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.si=A.interpolationMs,delete Q.rm};_onParticleEmitterBurst=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.b=A.count};_onParticleEmitterDespawn=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.rm=!0};_onParticleEmitterSetAlphaTest=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.at=A.alphaTest};_onParticleEmitterSetAttachedToEntity=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.e=A.entity?A.entity.id:void 0,Q.p=A.entity?void 0:Q.p};_onParticleEmitterSetAttachedToEntityNodeName=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.en=A.attachedToEntityNodeName};_onParticleEmitterSetColorEnd=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.ce=A.colorEnd?GQ.serializeRgbColor(A.colorEnd):void 0};_onParticleEmitterSetColorEndVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.cev=A.colorEndVariance?GQ.serializeRgbColor(A.colorEndVariance):void 0};_onParticleEmitterSetColorIntensityEnd=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.cie=A.colorIntensityEnd};_onParticleEmitterSetColorIntensityEndVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.ciev=A.colorIntensityEndVariance};_onParticleEmitterSetColorIntensityStart=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.cis=A.colorIntensityStart};_onParticleEmitterSetColorIntensityStartVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.cisv=A.colorIntensityStartVariance};_onParticleEmitterSetColorStart=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.cs=A.colorStart?GQ.serializeRgbColor(A.colorStart):void 0};_onParticleEmitterSetColorStartVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.csv=A.colorStartVariance?GQ.serializeRgbColor(A.colorStartVariance):void 0};_onParticleEmitterSetGravity=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.g=A.gravity?GQ.serializeVector(A.gravity):void 0};_onParticleEmitterSetLifetime=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.l=A.lifetime};_onParticleEmitterSetLifetimeVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.lv=A.lifetimeVariance};_onParticleEmitterSetMaxParticles=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.mp=A.maxParticles};_onParticleEmitterSetOffset=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.o=A.offset?GQ.serializeVector(A.offset):void 0};_onParticleEmitterSetOpacityEnd=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.oe=A.opacityEnd};_onParticleEmitterSetOpacityEndVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.oev=A.opacityEndVariance};_onParticleEmitterSetOpacityStart=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.os=A.opacityStart};_onParticleEmitterSetOpacityStartVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.osv=A.opacityStartVariance};_onParticleEmitterSetPaused=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.pa=A.paused};_onParticleEmitterSetPosition=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.p=A.position?GQ.serializeVector(A.position):void 0,Q.e=A.position?void 0:Q.e,Q.en=A.position?void 0:Q.en};_onParticleEmitterSetPositionVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.pv=A.positionVariance?GQ.serializeVector(A.positionVariance):void 0};_onParticleEmitterSetRate=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.r=A.rate};_onParticleEmitterSetRateVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.rv=A.rateVariance};_onParticleEmitterSetSizeEnd=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.se=A.sizeEnd};_onParticleEmitterSetSizeEndVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.sev=A.sizeEndVariance};_onParticleEmitterSetSizeStart=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.ss=A.sizeStart};_onParticleEmitterSetSizeStartVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.ssv=A.sizeStartVariance};_onParticleEmitterSetTextureUri=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.tu=A.textureUri};_onParticleEmitterSetTransparent=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.t=A.transparent};_onParticleEmitterSetVelocity=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.v=A.velocity?GQ.serializeVector(A.velocity):void 0};_onParticleEmitterSetVelocityVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.vv=A.velocityVariance?GQ.serializeVector(A.velocityVariance):void 0};_onParticleEmitterSpawn=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Object.assign(Q,A.particleEmitter.serialize())};_onPlayerCameraFaceEntity=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.pl=GQ.serializeVector(A.entity.position),delete Q.et,delete Q.pt};_onPlayerCameraFacePosition=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.pl=A.position?GQ.serializeVector(A.position):void 0,delete Q.et,delete Q.pt};_onPlayerCameraSetAttachedToEntity=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.e=A.entity.id,delete Q.p,this._syncPlayerCameraAttachedEntityModel(A.playerCamera)};_onPlayerCameraSetAttachedToPosition=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.p=A.position?GQ.serializeVector(A.position):void 0,delete Q.e};_onPlayerCameraSetCollidesWithBlocks=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.cb=A.collidesWithBlocks};_onPlayerCameraSetFilmOffset=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.fo=A.filmOffset};_onPlayerCameraSetForwardOffset=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.ffo=A.forwardOffset};_onPlayerCameraSetFov=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.fv=A.fov};_onPlayerCameraSetMode=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.m=A.mode,this._syncPlayerCameraAttachedEntityModel(A.playerCamera)};_onPlayerCameraSetOffset=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.o=A.offset?GQ.serializeVector(A.offset):void 0};_onPlayerCameraSetShoulderAngle=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.sa=A.shoulderAngle};_onPlayerCameraSetTargetEntity=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.et=A.entity?A.entity.id:void 0,delete Q.pl,delete Q.pt};_onPlayerCameraSetTargetPosition=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.pt=A.position?GQ.serializeVector(A.position):void 0,delete Q.et,delete Q.pl};_onPlayerCameraSetZoom=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.z=A.zoom};_onPlayerCameraSetViewModel=(A)=>{this._syncPlayerCameraAttachedEntityModel(A.playerCamera)};_onPlayerCameraSetViewModelHiddenNodes=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.h=Array.from(A.viewModelHiddenNodes)};_onPlayerCameraSetViewModelPitchesWithCamera=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.mp=A.viewModelPitchesWithCamera};_onPlayerCameraSetViewModelShownNodes=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.s=Array.from(A.viewModelShownNodes)};_onPlayerCameraSetViewModelYawsWithCamera=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.my=A.viewModelYawsWithCamera};_onPlayerJoinedWorld=(A)=>{let{player:Q}=A;this._playersInWorld.add(Q);for(let C of this._world.audioManager.getAllAudios()){let X=this._createOrGetQueuedAudioSync(C,Q);this._assignUndefined(X,C.serialize())}for(let C of this._world.blockTypeRegistry.getAllBlockTypes()){let X=this._createOrGetQueuedBlockTypeSync(C,Q);this._assignUndefined(X,C.serialize())}let B=this._createOrGetQueuedCameraSync(Q);this._assignUndefined(B,Q.camera.serialize());for(let C of this._world.chunkLattice.getAllChunks()){let X=this._createOrGetQueuedChunkSync(C,Q);this._assignUndefined(X,C.serialize())}for(let C of this._world.entityManager.getAllEntities()){if(Q.camera.attachedToEntity===void 0&&C instanceof BX&&C.player===Q)Q.camera.setAttachedToEntity(C);let X=this._createOrGetQueuedEntitySync(C,Q);this._assignUndefined(X,C.serialize())}this._syncPlayerCameraAttachedEntityModel(Q.camera);for(let C of this._world.particleEmitterManager.getAllParticleEmitters()){let X=this._createOrGetQueuedParticleEmitterSync(C,Q);this._assignUndefined(X,C.serialize())}for(let C of dJ.instance.getConnectedPlayers()){let X=this._createOrGetQueuedPlayerSync(C,Q);this._assignUndefined(X,C.serialize())}for(let C of this._world.sceneUIManager.getAllSceneUIs()){let X=this._createOrGetQueuedSceneUISync(C,Q);this._assignUndefined(X,C.serialize())}let Y=this._createOrGetQueuedWorldSync(this._world,Q);this._assignUndefined(Y,this._world.serialize());let J=this._createOrGetQueuedPlayerSync(Q);this._assignUndefined(J,Q.serialize())};_onPlayerLeftWorld=(A)=>{this._playersInWorld.delete(A.player);let Q=this._createOrGetQueuedPlayerSync(A.player);Q.rm=!0};_onPlayerReconnectedWorld=(A)=>{this._onPlayerJoinedWorld(A)};_onPlayerRequestNotificationPermission=(A)=>{this._createOrGetQueuedNotificationPermissionRequestSync(A.player)};_onPlayerRequestSync=(A)=>{A.player.connection.send([gQ.createPacket(gQ.outboundPackets.syncResponsePacketDefinition,{r:A.receivedAt,s:Date.now(),p:performance.now()-A.receivedAtMs,n:this._world.loop.nextTickMs},this._world.loop.currentTick)])};_onPlayerUIAppend=(A)=>{let Q=this._createOrGetQueuedUISync(A.playerUI.player);Q.ua??=[],Q.ua.push(A.htmlUri)};_onPlayerUIFreezePointerLock=(A)=>{let Q=this._createOrGetQueuedUISync(A.playerUI.player);Q.pf=A.freeze};_onPlayerUILoad=(A)=>{let Q=this._createOrGetQueuedUISync(A.playerUI.player);Q.u=A.htmlUri};_onPlayerUILockPointer=(A)=>{let Q=this._createOrGetQueuedUISync(A.playerUI.player);Q.p=A.lock};_onPlayerUISendData=(A)=>{this._createOrGetQueuedUIDatasSync(A.playerUI.player).push(A.data)};_onSceneUILoad=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);Object.assign(Q,A.sceneUI.serialize()),this._loadedSceneUIs.add(Q.i)};_onSceneUISetAttachedToEntity=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);Q.e=A.entity?A.entity.id:void 0,Q.p=A.entity?void 0:Q.p};_onSceneUISetOffset=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);Q.o=A.offset?GQ.serializeVector(A.offset):void 0};_onSceneUISetPosition=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);Q.p=A.position?GQ.serializeVector(A.position):void 0,Q.e=A.position?void 0:Q.e};_onSceneUISetState=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);Q.s=A.state};_onSceneUISetViewDistance=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);Q.v=A.viewDistance};_onSceneUIUnload=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);if(this._loadedSceneUIs.has(Q.i))this._queuedSceneUISyncs.broadcast.delete(Q.i),this._loadedSceneUIs.delete(Q.i);else Q.rm=!0};_onSimulationDebugRaycast=(A)=>{this._createOrGetDebugRaycastsSync().push(GQ.serializePhysicsDebugRaycast(A))};_onSimulationDebugRender=(A)=>{let Q=this._createOrGetDebugRenderSync();Q.v=Array.from(A.vertices),Q.c=Array.from(A.colors)};_onWorldSetAmbientLightColor=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.ac=GQ.serializeRgbColor(A.color)};_onWorldSetAmbientLightIntensity=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.ai=A.intensity};_onWorldSetDirectionalLightColor=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.dc=GQ.serializeRgbColor(A.color)};_onWorldSetDirectionalLightIntensity=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.di=A.intensity};_onWorldSetDirectionalLightPosition=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.dp=GQ.serializeVector(A.position)};_onWorldSetFogColor=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.fc=GQ.serializeRgbColor(A.color)};_onWorldSetFogFar=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.ff=A.far};_onWorldSetFogNear=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.fn=A.near};_onWorldSetSkyboxIntensity=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.si=A.intensity};_onWorldSetSkyboxUri=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.s=A.uri};_assignUndefined(A,Q){for(let B in Q)if(A[B]===void 0)A[B]=Q[B];return A}_createAudioSync=(A)=>({i:A.id});_createOrGetQueuedAudioSync(A,Q){if(A.id===void 0)l.fatalError("NetworkSynchronizer._createOrGetQueuedAudioSync(): Audio has no id!");return this._createOrGetQueuedSync(this._queuedAudioSyncs,A.id,this._createAudioSync,A,Q)}_createBlockSync=(A)=>({i:0,c:[A.x,A.y,A.z]});_createOrGetQueuedBlockSync(A,Q){let B=`${A.x},${A.y},${A.z}`;return this._createOrGetQueuedSync(this._queuedBlockSyncs,B,this._createBlockSync,A,Q)}_createBlockTypeSync=(A)=>({i:A.id});_createOrGetQueuedBlockTypeSync(A,Q){return this._createOrGetQueuedSync(this._queuedBlockTypeSyncs,A.id,this._createBlockTypeSync,A,Q)}_createCameraSync=()=>({});_createOrGetQueuedCameraSync(A){return this._createOrGetQueuedSingletonSync(this._queuedCameraSyncs,this._createCameraSync,void 0,A)}_createChatMessagesSync=()=>[];_createOrGetQueuedChatMessagesSync(A){return this._createOrGetQueuedSingletonSync(this._queuedChatMessagesSyncs,this._createChatMessagesSync,void 0,A)}_createChunkSync=(A)=>({c:[A.originCoordinate.x,A.originCoordinate.y,A.originCoordinate.z]});_createOrGetQueuedChunkSync(A,Q){if(!A.originCoordinate)l.fatalError("NetworkSynchronizer._createOrGetQueuedChunkSync(): Chunk has no origin coordinate!");let B=`${A.originCoordinate.x},${A.originCoordinate.y},${A.originCoordinate.z}`;return this._createOrGetQueuedSync(this._queuedChunkSyncs,B,this._createChunkSync,A,Q)}_createDebugRaycastsSync=()=>[];_createOrGetDebugRaycastsSync(A){return this._createOrGetQueuedSingletonSync(this._queuedDebugRaycastsSyncs,this._createDebugRaycastsSync,void 0,A)}_createDebugRenderSync=()=>({v:[],c:[]});_createOrGetDebugRenderSync(A){return this._createOrGetQueuedSingletonSync(this._queuedDebugRenderSyncs,this._createDebugRenderSync,void 0,A)}_createEntitySync=(A)=>({i:A.id});_createOrGetQueuedEntitySync(A,Q){if(A.id===void 0)l.fatalError("NetworkSynchronizer._createOrGetQueuedEntitySync(): Entity has no id!");return this._createOrGetQueuedSync(this._queuedEntitySyncs,A.id,this._createEntitySync,A,Q)}_createEntityModelAnimationSync=(A)=>({n:A.name});_createOrGetQueuedEntityModelAnimationSync(A,Q){if(A.entity.id===void 0)l.fatalError("NetworkSynchronizer._createOrGetQueuedEntityModelAnimationSync(): EntityModelAnimation entity has no id!");let B=this._createOrGetQueuedEntitySync(A.entity,Q);B.ma??=[];let Y=B.ma.find((J)=>J.n===A.name);if(!Y)Y=this._createEntityModelAnimationSync(A),B.ma.push(Y);return Y}_createEntityModelNodeOverrideSync=(A)=>({n:A.nameMatch});_createOrGetQueuedEntityModelNodeOverrideSync(A,Q){if(A.entity.id===void 0)l.fatalError("NetworkSynchronizer._createOrGetQueuedEntityModelNodeOverrideSync(): EntityModelNodeOverride entity has no id!");let B=this._createOrGetQueuedEntitySync(A.entity,Q);B.mo??=[];let Y=B.mo.find((J)=>J.n===A.nameMatch);if(!Y)Y=this._createEntityModelNodeOverrideSync(A),B.mo.push(Y);return Y}_createNotificationPermissionRequestSync=()=>null;_createOrGetQueuedNotificationPermissionRequestSync(A){return this._createOrGetQueuedSingletonSync(this._queuedNotificationPermissionRequestSyncs,this._createNotificationPermissionRequestSync,void 0,A)}_createParticleEmitterSync=(A)=>({i:A.id});_createOrGetQueuedParticleEmitterSync(A,Q){if(A.id===void 0)l.fatalError("NetworkSynchronizer._createOrGetQueuedParticleEmitterSync(): ParticleEmitter has no id!");return this._createOrGetQueuedSync(this._queuedParticleEmitterSyncs,A.id,this._createParticleEmitterSync,A,Q)}_createPlayerSync=(A)=>({i:A.id});_createOrGetQueuedPlayerSync(A,Q){return this._createOrGetQueuedSync(this._queuedPlayerSyncs,A.id,this._createPlayerSync,A,Q)}_createSceneUISync=(A)=>({i:A.id});_createOrGetQueuedSceneUISync(A,Q){if(A.id===void 0)l.fatalError("NetworkSynchronizer._createOrGetQueuedSceneUISync(): SceneUI has no id!");return this._createOrGetQueuedSync(this._queuedSceneUISyncs,A.id,this._createSceneUISync,A,Q)}_createUISync=()=>({});_createOrGetQueuedUISync(A){return this._createOrGetQueuedSingletonSync(this._queuedUISyncs,this._createUISync,void 0,A)}_createUIDatasSync=()=>[];_createOrGetQueuedUIDatasSync(A){return this._createOrGetQueuedSingletonSync(this._queuedUIDatasSyncs,this._createUIDatasSync,void 0,A)}_createWorldSync=(A)=>({i:A.id});_createOrGetQueuedWorldSync(A,Q){if(A.id!==this._world.id)l.fatalError("NetworkSynchronizer._createOrGetQueuedWorldSync(): World does not match this network synchronizer world!");return this._createOrGetQueuedSingletonSync(this._queuedWorldSyncs,this._createWorldSync,A,Q)}_createOrGetQueuedSync(A,Q,B,Y,J){let C,X;if(J){if(X=A.perPlayer.get(J),!X)X=new bB,A.perPlayer.set(J,X);if(!this._outboundPerPlayerReliablePackets.has(J))this._outboundPerPlayerReliablePackets.set(J,[])}else X=A.broadcast;if(C=X.get(Q),C===void 0)C=B(Y),X.set(Q,C);return C}_createOrGetQueuedSingletonSync(A,Q,B,Y){let J=Y?A.perPlayer.get(Y):A.broadcast;if(J===void 0)if(J=Q(B),Y){if(A.perPlayer.set(Y,J),!this._outboundPerPlayerReliablePackets.has(Y))this._outboundPerPlayerReliablePackets.set(Y,[])}else A.broadcast=J;return J}_clearSyncQueue(A){if(A.broadcast.size>0)A.broadcast.clear();if(A.perPlayer.size>0)A.perPlayer.clear()}_clearSingletonSyncQueue(A){if(A.broadcast!==void 0)A.broadcast=void 0;if(A.perPlayer.size>0)A.perPlayer.clear()}_collectSingletonSyncToOutboundPackets(A,Q){if(A.broadcast!==void 0){let B=gQ.createPacket(Q,A.broadcast,this._world.loop.currentTick);this._outboundSharedReliablePackets.push(B);for(let Y of this._outboundPerPlayerReliablePackets.valuesArray)Y.push(B)}if(A.perPlayer.size>0)for(let[B,Y]of A.perPlayer.entries())this._outboundPerPlayerReliablePackets.get(B)?.push(gQ.createPacket(Q,Y,this._world.loop.currentTick))}_collectSyncToOutboundPackets(A,Q){if(A.broadcast.size>0){let B=gQ.createPacket(Q,A.broadcast.valuesArray,this._world.loop.currentTick);this._outboundSharedReliablePackets.push(B);for(let Y of this._outboundPerPlayerReliablePackets.valuesArray)Y.push(B)}if(A.perPlayer.size>0)for(let[B,Y]of A.perPlayer.entries())this._outboundPerPlayerReliablePackets.get(B)?.push(gQ.createPacket(Q,Y.valuesArray,this._world.loop.currentTick))}_syncPlayerCameraAttachedEntityModel(A){let Q=A.attachedToEntity,B=Q&&(A.mode===0?A.viewModelUri:Q.modelUri);if(Q&&B)this._createOrGetQueuedEntitySync(Q,A.player).m=B}}class KM{_particleEmitters=new Map;_nextParticleEmitterId=1;_world;constructor(A){this._world=A}get world(){return this._world}despawnEntityAttachedParticleEmitters(A){this.getAllEntityAttachedParticleEmitters(A).forEach((Q)=>{Q.despawn()})}getAllParticleEmitters(){return Array.from(this._particleEmitters.values())}getAllEntityAttachedParticleEmitters(A){return this.getAllParticleEmitters().filter((Q)=>Q.attachedToEntity===A)}registerParticleEmitter(A){if(A.id!==void 0)return A.id;let Q=this._nextParticleEmitterId;return this._particleEmitters.set(Q,A),this._nextParticleEmitterId++,Q}unregisterParticleEmitter(A){if(A.id===void 0)return;this._particleEmitters.delete(A.id)}}class VM{_sceneUIs=new Map;_nextSceneUIId=1;_world;constructor(A){this._world=A}get world(){return this._world}getAllSceneUIs(){return Array.from(this._sceneUIs.values())}getAllEntityAttachedSceneUIs(A){return this.getAllSceneUIs().filter((Q)=>Q.attachedToEntity===A)}getSceneUIById(A){return this._sceneUIs.get(A)}registerSceneUI(A){if(A.id!==void 0)return A.id;let Q=this._nextSceneUIId;return this._sceneUIs.set(Q,A),this._nextSceneUIId++,Q}unloadEntityAttachedSceneUIs(A){this.getAllEntityAttachedSceneUIs(A).forEach((Q)=>{Q.unload()})}unregisterSceneUI(A){if(A.id===void 0)return;this._sceneUIs.delete(A.id)}}import Ft from"fs";import wm0 from"path";import{brotliCompressSync as Cm0,brotliDecompressSync as Xm0,constants as bk,gunzipSync as Gm0,gzipSync as Wm0}from"zlib";var Qt=Object.values(w8).sort((A,Q)=>A.enumIndex-Q.enumIndex);function Fm0(A){return A<<1^A>>31}function IM(A){return A>>>1^-(A&1)}function Zm0(A,Q,B){let Y=B>>>0;while(Y>127)A[Q++]=Y&127|128,Y>>>=7;return A[Q++]=Y,Q}function HM(A,Q,B){return Zm0(A,Q,Fm0(B))}function DM(A,Q){let B=0,Y=0,J=0;do J=A[Q++],B|=(J&127)<>>0,offset:Q}}function $m0(A,Q){if(A==="none")return Q;if(A==="gzip")return Gm0(Q);return Xm0(Q)}function CSQ(A,Q,B){if(A==="none")return Q;if(A==="gzip")return Wm0(Q,{level:Math.min(9,Math.max(0,B))});return Cm0(Q,{params:{[bk.BROTLI_PARAM_MODE]:bk.BROTLI_MODE_GENERIC,[bk.BROTLI_PARAM_QUALITY]:Math.min(11,Math.max(0,B)),[bk.BROTLI_PARAM_SIZE_HINT]:Q.byteLength}})}function XSQ(A){return A!==null&&typeof A==="object"}function Um0(A){if(!A)return;if(Array.isArray(A))return A;return Object.values(A)}class eY{static isCompressedWorldMap(A){if(!XSQ(A))return!1;if(typeof A.data!=="string")return!1;if(!XSQ(A.bounds))return!1;let Q=A.bounds;return typeof Q.minX==="number"&&typeof Q.minY==="number"&&typeof Q.minZ==="number"&&typeof Q.maxX==="number"&&typeof Q.maxY==="number"&&typeof Q.maxZ==="number"}static compress(A,Q={}){let B=A.blocks??{},Y=[],J=1/0,C=1/0,X=1/0,G=-1/0,W=-1/0,F=-1/0,Z=!1;for(let N in B){let q=B[N],w=typeof q==="number"?q:q.i,P=typeof q==="number"?0:q.r??0;if(!Number.isInteger(w)||w<0||w>255)l.fatalError(`WorldMapCodec.compress(): Invalid block type id ${w} at ${N} (expected 0-255).`);if(!Number.isInteger(P)||P<0||P>=Qt.length)l.fatalError(`WorldMapCodec.compress(): Invalid block rotation index ${P} at ${N}.`);if(P!==0)Z=!0;let _=N.indexOf(","),j=N.indexOf(",",_+1),k=Number(N.slice(0,_)),T=Number(N.slice(_+1,j)),S=Number(N.slice(j+1));J=Math.min(J,k),C=Math.min(C,T),X=Math.min(X,S),G=Math.max(G,k),W=Math.max(W,T),F=Math.max(F,S),Y.push({x:k,y:T,z:S,id:w,r:P})}if(Y.length===0){let N=Buffer.allocUnsafe(4);N.writeUInt32LE(0,0);let q=Q.algorithm??"brotli",w=Q.level??9,P=CSQ(q,N,w).toString("base64");return{format:"hytopia.worldmap.compressed",codecVersion:1,version:"1.0.0",algorithm:q,data:P,bounds:{minX:0,minY:0,minZ:0,maxX:0,maxY:0,maxZ:0},blockTypes:A.blockTypes,entities:A.entities,options:{rotations:!1,useDelta:!0,useVarint:!0}}}let U=Q.includeRotations??Z;if(!U&&Z)l.fatalError("WorldMapCodec.compress(): Map contains rotated blocks but includeRotations is false.");for(let N=0;NN.y-q.y||N.x-q.x||N.z-q.z);let $=U?25:20,E=Buffer.allocUnsafe(4+Y.length*$),K=0;E.writeUInt32LE(Y.length,K),K+=4;let I=0,V=0,H=0;for(let N=0;N=Qt.length)l.fatalError(`WorldMapCodec.decodeBlockEntries(): Invalid rotation index ${I} at block ${$}.`);if(K<0||K>255)l.fatalError(`WorldMapCodec.decodeBlockEntries(): Invalid block type id ${K} at block ${$} (expected 0-255).`);let V=F+C.minX,H=Z+C.minY,D=U+C.minZ;yield{globalCoordinate:{x:V,y:H,z:D},blockTypeId:K,blockRotation:I!==0?Qt[I]:void 0}}}return W()}static decompressToWorldMap(A){let Q=Um0(A.blockTypes),B=A.entities,Y={},J=A.options?.rotations===!0;for(let C of this.decodeBlockEntries(A)){let X=`${C.globalCoordinate.x},${C.globalCoordinate.y},${C.globalCoordinate.z}`;if(!J||!C.blockRotation||C.blockRotation.enumIndex===0)Y[X]=C.blockTypeId;else Y[X]={i:C.blockTypeId,r:C.blockRotation.enumIndex}}return{blockTypes:Q,blocks:Y,entities:B}}}import{brotliCompressSync as Em0,brotliDecompressSync as Km0,constants as mk,gunzipSync as Vm0,gzipSync as Im0}from"zlib";var kV=Buffer.from("HYTCHUNK"),NM=1,_V=12;function GSQ(A){if(A==="none")return 0;if(A==="gzip")return 2;return 1}function WSQ(A){if(A===0)return"none";if(A===2)return"gzip";return"brotli"}var Hm0=Object.values(w8).sort((A,Q)=>A.enumIndex-Q.enumIndex);function ZSQ(A){return A!==null&&typeof A==="object"}function $SQ(A){return A<<1^A>>31}function Dm0(A){return A>>>1^-(A&1)}function LM(A){let Q=A>>>0,B=1;while(Q>127)B++,Q>>>=7;return B}function Bt(A){return LM($SQ(A))}function qM(A,Q,B){let Y=B>>>0;while(Y>127)A[Q++]=Y&127|128,Y>>>=7;return A[Q++]=Y,Q}function Yt(A,Q,B){return qM(A,Q,$SQ(B))}function MM(A,Q){let B=0,Y=0,J=0;do J=A[Q++],B|=(J&127)<>>0,offset:Q}}function Jt(A,Q){let B=MM(A,Q);return{value:Dm0(B.value),offset:B.offset}}function Nm0(A,Q,B){if(A==="none")return Q;if(A==="gzip")return Im0(Q,{level:Math.min(9,Math.max(0,B))});return Em0(Q,{params:{[mk.BROTLI_PARAM_MODE]:mk.BROTLI_MODE_GENERIC,[mk.BROTLI_PARAM_QUALITY]:Math.min(11,Math.max(0,B)),[mk.BROTLI_PARAM_SIZE_HINT]:Q.byteLength}})}function Lm0(A,Q){if(A==="none")return Q;if(A==="gzip")return Vm0(Q);return Km0(Q)}function Ct(A,Q){if(!Number.isSafeInteger(A))l.fatalError(`WorldMapChunkCacheCodec: ${Q} must be a safe integer.`)}function FSQ(A){if(!A)return;if(Array.isArray(A))return A;if(ZSQ(A))return Object.values(A);return}class o8{static _writeHeader(A){let Q=Buffer.allocUnsafe(_V);return kV.copy(Q,0),Q.writeUInt8(NM,8),Q.writeUInt8(GSQ(A),9),Q.writeUInt16LE(0,10),Q}static isWorldMapChunkCache(A){if(!ZSQ(A))return!1;if(typeof A.data!=="string")return!1;if(A.format==="hytopia.worldmap.chunk-cache")return!0;try{let Q=Buffer.from(A.data.slice(0,24),"base64");if(Q.byteLength<8)return!1;return Q.subarray(0,8).equals(kV)}catch{return!1}}static create(A,Q={}){let B=Q.algorithm??"brotli",Y=Q.level??6,{encoded:J}=this._encodeBody(A,{includeRotations:Q.includeRotations,sourceSha256:Q.sourceSha256}),C=this._writeHeader(B),X=Nm0(B,J,Y),G=Buffer.concat([C,X]);return{format:"hytopia.worldmap.chunk-cache",codecVersion:1,version:"1.0.0",algorithm:B,data:G.toString("base64")}}static decode(A){let Q=this._decodeFile(A),B=this._decodeMetadata(Q.body),Y=B.metadata.options?.rotations===!0,J=B.chunkCount,C=B.offset,X=this._decodeChunks(Q.body,C,J,Y);return{metadata:B.metadata,chunks:X}}static decodeMetadata(A){let Q=this._decodeFile(A);return this._decodeMetadata(Q.body).metadata}static decodeChunks(A){let Q=this._decodeFile(A),B=this._decodeMetadata(Q.body),Y=B.metadata.options?.rotations===!0;return this._decodeChunks(Q.body,B.offset,B.chunkCount,Y)}static decompressToWorldMap(A){let{metadata:Q,chunks:B}=this.decode(A),Y={},J=Q.options?.rotations===!0;for(let C of B){let X=C.originCoordinate;for(let G=0;G=c9)l.fatalError(`WorldMapChunkCacheCodec.decode(): Invalid block index ${L} (expected 0-${c9-1}).`);let z=A.readUInt8(J++),M=Hm0[z];if(!M)l.fatalError(`WorldMapChunkCacheCodec.decode(): Invalid rotation enumIndex ${z}.`);K.set(L,M)}}yield{originCoordinate:{x:W,y:F,z:Z},blocks:E,blockRotations:K}}}return C()}static _encodeBody(A,Q){let B=new Map,Y=!1,J=(I,V,H)=>{if(Ct(I.x,"block x"),Ct(I.y,"block y"),Ct(I.z,"block z"),!Number.isInteger(V)||V<0||V>255)l.fatalError(`WorldMapChunkCacheCodec: Invalid block type id ${V} (expected 0-255).`);if(!Number.isInteger(H)||H<0||H>255)l.fatalError(`WorldMapChunkCacheCodec: Invalid rotation enumIndex ${H} (expected 0-255).`);let D=MY.globalCoordinateToOriginCoordinate(I),L=`${D.x},${D.y},${D.z}`,z=B.get(L);if(!z)z={originCoordinate:D,blocks:new Uint8Array(c9),rotationsByBlockIndex:new Map},B.set(L,z);let M=MY.globalCoordinateToLocalCoordinate(I),N=MY.localCoordinateToBlockIndex(M);if(z.blocks[N]=V,H!==0)z.rotationsByBlockIndex.set(N,H),Y=!0};if(eY.isCompressedWorldMap(A))for(let I of eY.decodeBlockEntries(A))J(I.globalCoordinate,I.blockTypeId,I.blockRotation?.enumIndex??0);else if(A.blocks)for(let I in A.blocks){let V=A.blocks[I],H=typeof V==="number"?V:V.i,D=typeof V==="number"?0:V.r??0,L=I.indexOf(","),z=I.indexOf(",",L+1),M=Number(I.slice(0,L)),N=Number(I.slice(L+1,z)),q=Number(I.slice(z+1));J({x:M,y:N,z:q},H,D)}let C=Q.includeRotations??Y;if(!C&&Y)l.fatalError("WorldMapChunkCacheCodec: Map contains rotated blocks but includeRotations is false.");let X=C&&Y,G={blockTypes:FSQ(A.blockTypes),entities:A.entities,options:{rotations:X},source:Q.sourceSha256?{sha256:Q.sourceSha256}:void 0,metadata:eY.isCompressedWorldMap(A)?A.metadata:void 0,mapVersion:eY.isCompressedWorldMap(A)?A.mapVersion:void 0},W=Buffer.from(JSON.stringify(G),"utf8"),F=B.size,Z=Array.from(B.values());Z.sort((I,V)=>I.originCoordinate.y-V.originCoordinate.y||I.originCoordinate.x-V.originCoordinate.x||I.originCoordinate.z-V.originCoordinate.z);let U=0;for(let I of Z)if(U+=Bt(I.originCoordinate.x),U+=Bt(I.originCoordinate.y),U+=Bt(I.originCoordinate.z),U+=c9,X){let V=Array.from(I.rotationsByBlockIndex.entries());U+=LM(V.length);for(let[H]of V)U+=LM(H),U+=1}let $=LM(W.byteLength)+W.byteLength+LM(F)+U,E=Buffer.allocUnsafe($),K=0;K=qM(E,K,W.byteLength),W.copy(E,K),K+=W.byteLength,K=qM(E,K,F);for(let I of Z)if(K=Yt(E,K,I.originCoordinate.x),K=Yt(E,K,I.originCoordinate.y),K=Yt(E,K,I.originCoordinate.z),E.set(I.blocks,K),K+=c9,X){let V=Array.from(I.rotationsByBlockIndex.entries());V.sort((H,D)=>H[0]-D[0]),K=qM(E,K,V.length);for(let[H,D]of V)K=qM(E,K,H),E.writeUInt8(D,K++)}return{encoded:E,hasRotations:X}}}import IF from"fs";import qm0 from"path";import Mm0 from"crypto";function zm0(A){let Q=Mm0.createHash("sha256");return Q.update(A),Q.digest("hex")}function Wt(A){return A!==null&&typeof A==="object"}function Xt(A){return Wt(A)&&Object.keys(A).length>0}function Gt(A){if(!A)return!1;if(Array.isArray(A))return A.length>0;if(Wt(A))return Object.keys(A).length>0;return!1}function Rm0(A){if(!IF.existsSync(A))return;try{return JSON.parse(IF.readFileSync(A,"utf-8"))}catch{return}}function USQ(A){if(eY.isCompressedWorldMap(A))return{blockTypes:A.blockTypes,entities:A.entities};if(!Wt(A))return{};return{blockTypes:A.blockTypes,entities:A.entities}}class vV{static load(A,Q={}){let B=Q.preferChunkCache??!0,Y=qm0.resolve(process.cwd(),A),J=Y.endsWith(".chunks.bin"),C=Q.warnings??"auto",X=C==="always"||C==="auto"&&process.env.NODE_ENV!=="production",G=(Z)=>{if(X)l.warning(Z)};if(B){if(J&&!IF.existsSync(Y))l.fatalError(`WorldMapFileLoader.load(): Chunk cache file not found at ${Y}.`);let Z=Y;if(Y.endsWith(".compressed.json"))Z=Y.slice(0,-16);else if(Y.endsWith(".chunks.bin"))Z=Y.slice(0,-11);else if(Y.endsWith(".json"))Z=Y.slice(0,-5);let U=Z+".chunks.bin";if(IF.existsSync(U)){let $=IF.readFileSync(U);if($.byteLength>=_V&&$.subarray(0,8).equals(kV)&&$.readUInt8(8)===NM){let K={data:$.toString("base64")};try{let I=o8.decodeMetadata(K),V=I.source?.sha256,H=!Xt(I.entities),D=!Gt(I.blockTypes),L=H||D,z,M,N,q,w=()=>{let j=H&&z,k=D&&N;if(!j&&!k)return K;if(j&&M)G(`WorldMapFileLoader.load(): Chunk cache at ${U} missing entities; using entities overlay from ${M}.`);if(k&&q)G(`WorldMapFileLoader.load(): Chunk cache at ${U} missing blockTypes; using blockTypes overlay from ${q}.`);return{...K,...j?{entities:z}:{},...k?{blockTypes:N}:{}}},P=(j)=>{if(!L)return;let k=Rm0(j);if(!k)return;let T=USQ(k);if(!z&&Xt(T.entities))z=T.entities,M=j;if(!N&&Gt(T.blockTypes))N=T.blockTypes,q=j},_=(j,k)=>{if(!L)return;try{let T=JSON.parse(j),S=USQ(T);if(!z&&Xt(S.entities))z=S.entities,M=k;if(!N&&Gt(S.blockTypes))N=S.blockTypes,q=k}catch{}};if(V){let j=Y.endsWith(".compressed.json")?Y:Z+".compressed.json";if(IF.existsSync(j)){let k=IF.readFileSync(j,"utf-8");if(zm0(k)===V)return _(k,j),w();G(`WorldMapFileLoader.load(): Chunk cache sha256 mismatch for ${U}; ignoring cache and falling back to JSON.`)}else return G(`WorldMapFileLoader.load(): Chunk cache has source sha256, but ${j} is missing; using cache without validation.`),P(Z+".compressed.json"),P(Z+".json"),w()}else return P(Z+".compressed.json"),P(Z+".json"),w()}catch{if(J)l.fatalError(`WorldMapFileLoader.load(): Failed to decode chunk cache metadata for ${U}.`);G(`WorldMapFileLoader.load(): Failed to decode chunk cache metadata for ${U}; ignoring cache and falling back to JSON.`)}}else if(J)l.fatalError(`WorldMapFileLoader.load(): Invalid chunk cache at ${U}.`)}}if(J)l.fatalError(`WorldMapFileLoader.load(): Failed to load chunk cache at ${Y}.`);let W=IF.readFileSync(Y,"utf-8"),F=JSON.parse(W);if(o8.isWorldMapChunkCache(F))return F;if(eY.isCompressedWorldMap(F))return F;if(F&&typeof F==="object")return F;l.fatalError(`WorldMapFileLoader.load(): Unsupported map file format at ${Y}.`)}}var At;(($)=>{$.SET_AMBIENT_LIGHT_COLOR="WORLD.SET_AMBIENT_LIGHT_COLOR";$.SET_AMBIENT_LIGHT_INTENSITY="WORLD.SET_AMBIENT_LIGHT_INTENSITY";$.SET_DIRECTIONAL_LIGHT_COLOR="WORLD.SET_DIRECTIONAL_LIGHT_COLOR";$.SET_DIRECTIONAL_LIGHT_INTENSITY="WORLD.SET_DIRECTIONAL_LIGHT_INTENSITY";$.SET_DIRECTIONAL_LIGHT_POSITION="WORLD.SET_DIRECTIONAL_LIGHT_POSITION";$.SET_FOG_COLOR="WORLD.SET_FOG_COLOR";$.SET_FOG_FAR="WORLD.SET_FOG_FAR";$.SET_FOG_NEAR="WORLD.SET_FOG_NEAR";$.SET_SKYBOX_INTENSITY="WORLD.SET_SKYBOX_INTENSITY";$.SET_SKYBOX_URI="WORLD.SET_SKYBOX_URI";$.START="WORLD.START";$.STOP="WORLD.STOP"})(At||={});class zM extends BQ{_id;_ambientLightColor;_ambientLightIntensity;_audioManager;_blockTypeRegistry;_chatManager;_chunkLattice;_directionalLightColor;_directionalLightIntensity;_directionalLightPosition;_entityManager;_fogColor;_fogFar;_fogNear;_loop;_name;_networkSynchronizer;_particleEmitterManager;_sceneUIManager;_simulation;_skyboxIntensity;_skyboxUri;_tag;constructor(A){super();if(this._id=A.id,this._ambientLightColor=A.ambientLightColor??{r:255,g:255,b:255},this._ambientLightIntensity=A.ambientLightIntensity??1,this._directionalLightColor=A.directionalLightColor??{r:255,g:255,b:255},this._directionalLightIntensity=A.directionalLightIntensity??3,this._directionalLightPosition=A.directionalLightPosition??{x:100,y:150,z:100},this._fogColor=A.fogColor,this._fogFar=A.fogFar??550,this._fogNear=A.fogNear??500,this._name=A.name,this._skyboxIntensity=A.skyboxIntensity??1,this._skyboxUri=A.skyboxUri,this._tag=A.tag,this._audioManager=new UD(this),this._blockTypeRegistry=new ED(this),this._chatManager=new eD(this),this._chunkLattice=new QN(this),this._entityManager=new JN(this),this._loop=new EM(this,A.tickRate),this._networkSynchronizer=new fk(this),this._particleEmitterManager=new KM(this),this._sceneUIManager=new VM(this),this._simulation=new UM(this,A.tickRate,A.gravity),A.map)this.loadMap(A.map)}get id(){return this._id}get ambientLightColor(){return this._ambientLightColor}get ambientLightIntensity(){return this._ambientLightIntensity}get blockTypeRegistry(){return this._blockTypeRegistry}get chatManager(){return this._chatManager}get chunkLattice(){return this._chunkLattice}get directionalLightColor(){return this._directionalLightColor}get directionalLightIntensity(){return this._directionalLightIntensity}get directionalLightPosition(){return this._directionalLightPosition}get entityManager(){return this._entityManager}get fogColor(){return this._fogColor}get fogFar(){return this._fogFar}get fogNear(){return this._fogNear}get loop(){return this._loop}get name(){return this._name}get networkSynchronizer(){return this._networkSynchronizer}get particleEmitterManager(){return this._particleEmitterManager}get sceneUIManager(){return this._sceneUIManager}get simulation(){return this._simulation}get skyboxIntensity(){return this._skyboxIntensity}get skyboxUri(){return this._skyboxUri}get audioManager(){return this._audioManager}get tag(){return this._tag}loadMap(A,Q={}){if(typeof A==="string")A=vV.load(A);if((Q.preferMapArtifacts??!0)&&!eY.isCompressedWorldMap(A)&&!o8.isWorldMapChunkCache(A)&&typeof A==="object"&&A!==null&&"blocks"in A){let C=wm0.resolve(process.cwd(),"assets/map"),X=C+".chunks.bin",G=C+".compressed.json",W=C+".json";if(Ft.existsSync(W)&&(Ft.existsSync(X)||Ft.existsSync(G)))A=vV.load("assets/map.json")}if(eY.isCompressedWorldMap(A))A=eY.decompressToWorldMap(A);else if(o8.isWorldMapChunkCache(A))A=o8.decompressToWorldMap(A);this.chunkLattice.clear();let Y=Object.values(w8).sort((C,X)=>C.enumIndex-X.enumIndex);if(A.blockTypes)for(let C of A.blockTypes)this.blockTypeRegistry.registerGenericBlockType({id:C.id,isLiquid:C.isLiquid,lightLevel:C.lightLevel,name:C.name,textureUri:C.textureUri,customColliderOptions:C.customColliderOptions});if(A.blocks){let C=A.blocks,X=function*(){for(let G in C){let W=C[G],F=typeof W==="number"?W:W.i,Z=typeof W==="number"?void 0:W.r,U=G.indexOf(","),$=G.indexOf(",",U+1);yield{globalCoordinate:{x:Number(G.slice(0,U)),y:Number(G.slice(U+1,$)),z:Number(G.slice($+1))},blockTypeId:F,blockRotation:Z!==void 0?Y[Z]:void 0}}};this.chunkLattice.initializeBlockEntries(X())}if((Q.spawnEntities??!0)&&A.entities)for(let C in A.entities){let X=A.entities[C],G=C.indexOf(","),W=C.indexOf(",",G+1),F=Number(C.slice(0,G)),Z=Number(C.slice(G+1,W)),U=Number(C.slice(W+1));new X0({isEnvironmental:!0,...X}).spawn(this,{x:F,y:Z,z:U})}}setAmbientLightColor(A){this._ambientLightColor=A,this.emit("WORLD.SET_AMBIENT_LIGHT_COLOR",{world:this,color:A})}setAmbientLightIntensity(A){this._ambientLightIntensity=A,this.emit("WORLD.SET_AMBIENT_LIGHT_INTENSITY",{world:this,intensity:A})}setDirectionalLightColor(A){this._directionalLightColor=A,this.emit("WORLD.SET_DIRECTIONAL_LIGHT_COLOR",{world:this,color:A})}setDirectionalLightIntensity(A){this._directionalLightIntensity=A,this.emit("WORLD.SET_DIRECTIONAL_LIGHT_INTENSITY",{world:this,intensity:A})}setDirectionalLightPosition(A){this._directionalLightPosition=A,this.emit("WORLD.SET_DIRECTIONAL_LIGHT_POSITION",{world:this,position:A})}setFogColor(A){this._fogColor=A,this.emit("WORLD.SET_FOG_COLOR",{world:this,color:A})}setFogFar(A){this._fogFar=A,this.emit("WORLD.SET_FOG_FAR",{world:this,far:A})}setFogNear(A){this._fogNear=A,this.emit("WORLD.SET_FOG_NEAR",{world:this,near:A})}setSkyboxIntensity(A){this._skyboxIntensity=A,this.emit("WORLD.SET_SKYBOX_INTENSITY",{world:this,intensity:A})}setSkyboxUri(A){this._skyboxUri=A,this.emit("WORLD.SET_SKYBOX_URI",{world:this,uri:A})}start(){if(this._loop.isStarted)return;this._loop.start(),this.emit("WORLD.START",{world:this,startedAtMs:Date.now()})}stop(){if(!this._loop.isStarted)return;this._loop.stop(),this.emit("WORLD.STOP",{world:this,stoppedAtMs:Date.now()})}serialize(){return GQ.serializeWorld(this)}}var ESQ;((Q)=>Q.WORLD_CREATED="WORLD_MANAGER.WORLD_CREATED")(ESQ||={});class F0{static instance=new F0;_defaultWorld;_nextWorldId=1;_worlds=new Map;createWorld(A){let Q=new zM({...A,id:this._nextWorldId++});return Q.start(),this._worlds.set(Q.id,Q),BQ.globalInstance.emit("WORLD_MANAGER.WORLD_CREATED",{world:Q}),Q}getAllWorlds(){return Array.from(this._worlds.values())}getDefaultWorld(){return this._defaultWorld??=this.createWorld({name:"Default World",skyboxUri:"skyboxes/partly-cloudy"}),this._defaultWorld}getWorldsByTag(A){let Q=[];return this._worlds.forEach((B)=>{if(B.tag===A)Q.push(B)}),Q}getWorld(A){return this._worlds.get(A)}setDefaultWorld(A){this._defaultWorld=A}}function Zt(A,Q,B){return Math.max(Q,Math.min(B,Math.floor(A)))}function jm0(A,Q){if(A.blockTypeRegistry.getAllBlockTypes().some((Y)=>Y.id===Q))return;A.blockTypeRegistry.registerGenericBlockType({id:Q,name:`perf-block-${Q}`,textureUri:"blocks/stone.png"})}function Om0(A){if(typeof A==="number"){let Q=F0.instance.getWorld(Math.floor(A));if(Q)return Q}return F0.instance.getDefaultWorld()}function Pm0(A){return Math.max(1,Math.ceil(Math.sqrt(A)))}function Tm0(A,Q,B){if(B<=0)return;if(B>=c9){A.fill(Q);return}A.fill(0),A.fill(Q,0,B)}function Sm0(A,Q,B,Y){A.fill(0);let J=d9*B*d9,C=Math.max(0,Math.min(J,Y));if(C===0)return;let X=C;for(let G=0;G0;G++){let W=G<0;F++){let Z=W+(F<{if(Y+=C.length,Y>km0){mB(Q,413,{ok:!1,error:"Request body too large"}),A.destroy();return}J.push(C)}),A.on("error",()=>{mB(Q,400,{ok:!1,error:"Failed to read request body"})}),A.on("end",()=>{try{let C=Buffer.concat(J).toString("utf-8"),X=C.length>0?JSON.parse(C):{};B(X)}catch{mB(Q,400,{ok:!1,error:"Invalid JSON body"})}})}function DSQ(A){let Q=KSQ.resolve("assets"),B=A.trim().replace(/^\/+/,"").replace(/^assets[\\/]/,""),Y=KSQ.resolve(Q,B);if(!Y.startsWith(Q))return null;return Y}function ym0(A){switch((A??"").toLowerCase()){case"":case"idle":return new GE;case"random_walk":case"randomwalk":return new WD;case"chase":return new FD;case"interact":return new ZD;default:return null}}function gm0(A,Q){let B=F0.instance.getDefaultWorld(),Y=Math.max(0,Math.floor(A)),J={x:0,y:10,z:0},C=Math.ceil(Math.sqrt(Y))*2;for(let X=0;X=0&&Y0){let X=DSQ(Q);if(!X)throw Error("Invalid mapPath");if(!lk.existsSync(X))throw Error(`Map not found: ${Q}`);J=lk.readFileSync(X,"utf-8")}let C=[];for(let X=0;X0)F0.instance.setDefaultWorld(C[0]);return{created:C.length,defaultWorldId:F0.instance.getDefaultWorld().id}}function im0(A){let Q=Math.floor(A),B=F0.instance.getWorld(Q);if(!B)throw Error(`World not found: ${Q}`);return F0.instance.setDefaultWorld(B),{ok:!0,defaultWorldId:B.id}}function nm0(){let A=F0.instance.getDefaultWorld();LSQ(),G9.instance.despawnAll();for(let Q of A.entityManager.getEntitiesByTagSubstring(yV))Q.despawn();return A.chunkLattice.clear(),{ok:!0}}class RM{static enableIfConfigured(){if(!VSQ())return;try{if(!O0.instance.isEnabled)O0.instance.enable({snapshotIntervalMs:0});if(!$Y.instance.isEnabled)$Y.instance.enable()}catch(A){l.warning(`PerfHarness.enableIfConfigured(): Failed to enable perf tools. Error: ${String(A)}`)}}static handleWebRequest(A,Q){if(!VSQ())return!1;let B=A.url?.split("?")[0]??"/";if(!B.startsWith(`${dk}/`))return!1;if(!_m0(A))return mB(Q,401,{ok:!1,error:"Unauthorized"}),!0;let Y=A.method??"GET";if(Y==="GET"&&B===`${dk}/snapshot`){let J=O0.instance.getSnapshot(),C=$Y.instance.isEnabled?$Y.instance.getSnapshot():void 0,X=F0.instance.getDefaultWorld();return mB(Q,200,{...J,timestamp:Date.now(),players:dJ.instance.playerCount,bots:G9.instance.botCount,worlds:{count:F0.instance.getAllWorlds().length,defaultWorldId:X.id},world:{id:X.id,chunkCount:X.chunkLattice.chunkCount,entityCount:X.entityManager.entityCount},blockChurn:{running:Kt.isRunning},network:C}),!0}if(Y==="POST"&&B===`${dk}/reset`)return O0.instance.resetStats(),$Y.instance.reset(),mB(Q,200,{ok:!0}),!0;if(Y==="POST"&&B===`${dk}/action`)return vm0(A,Q,(J)=>{try{let C=J;switch(C.type){case"spawn_bots":{if(typeof C.count!=="number")return mB(Q,400,{ok:!1,error:'"count" is required'});let X=gm0(C.count,typeof C.behavior==="string"?C.behavior:void 0);mB(Q,200,{ok:!0,result:X});return}case"despawn_bots":{let X=xm0(typeof C.count==="number"?C.count:void 0);mB(Q,200,{ok:!0,result:X});return}case"load_map":{if(typeof C.mapPath!=="string")return mB(Q,400,{ok:!1,error:'"mapPath" is required'});let X=fm0(C.mapPath,typeof C.worldId==="number"?C.worldId:void 0);mB(Q,200,{ok:!0,result:X});return}case"generate_blocks":{if(typeof C.blockCount!=="number")return mB(Q,400,{ok:!1,error:'"blockCount" is required'});if(typeof C.blockTypeId!=="number")return mB(Q,400,{ok:!1,error:'"blockTypeId" is required'});let X=bm0(C.blockCount,C.blockTypeId,typeof C.worldId==="number"?C.worldId:void 0,C.layout==="dense"||C.layout==="slab"?C.layout:void 0,typeof C.slabHeight==="number"?C.slabHeight:void 0,Vt(C.origin),typeof C.clear==="boolean"?C.clear:void 0);mB(Q,200,{ok:!0,result:X});return}case"spawn_entities":{if(typeof C.count!=="number")return mB(Q,400,{ok:!1,error:'"count" is required'});let X=mm0(C.count,C.kind==="model"||C.kind==="block"?C.kind:void 0,typeof C.options==="object"&&C.options?C.options:void 0,typeof C.tag==="string"?C.tag:void 0);mB(Q,200,{ok:!0,result:X});return}case"despawn_entities":{let X=um0(typeof C.tag==="string"?C.tag:void 0);mB(Q,200,{ok:!0,result:X});return}case"start_block_churn":{if(typeof C.blocksPerTick!=="number")return mB(Q,400,{ok:!1,error:'"blocksPerTick" is required'});if(typeof C.blockTypeId!=="number")return mB(Q,400,{ok:!1,error:'"blockTypeId" is required'});let X=lm0(C.blocksPerTick,C.blockTypeId,C.mode,C.min,C.max);mB(Q,200,{ok:!0,result:X});return}case"stop_block_churn":{let X=LSQ();mB(Q,200,{ok:!0,result:X});return}case"create_worlds":{if(typeof C.count!=="number")return mB(Q,400,{ok:!1,error:'"count" is required'});let X=pm0(C.count,typeof C.mapPath==="string"?C.mapPath:void 0,typeof C.setDefault==="boolean"?C.setDefault:void 0);mB(Q,200,{ok:!0,result:X});return}case"set_default_world":{if(typeof C.worldId!=="number")return mB(Q,400,{ok:!1,error:'"worldId" is required'});let X=im0(C.worldId);mB(Q,200,{ok:!0,result:X});return}case"clear_world":{let X=nm0();mB(Q,200,{ok:!0,result:X});return}case"reset":{O0.instance.resetStats(),$Y.instance.reset(),mB(Q,200,{ok:!0});return}default:mB(Q,400,{ok:!1,error:`Unsupported action: ${String(C.type)}`})}}catch(C){mB(Q,500,{ok:!1,error:C.message})}}),!0;return mB(Q,404,{ok:!1,error:"Not found"}),!0}}var pk=`-----BEGIN CERTIFICATE----- MIIGBzCCBO+gAwIBAgIQA9LHaXW2UWQvBpWa4wqL9DANBgkqhkiG9w0BAQsFADA8 MQswCQYDVQQGEwJVUzEPMA0GA1UEChMGQW1hem9uMRwwGgYDVQQDExNBbWF6b24g UlNBIDIwNDggTTAxMB4XDTI1MTEyMDAwMDAwMFoXDTI2MTIxOTIzNTk1OVowIzEh @@ -373,7 +373,7 @@ eyKdpwAJfqxGF4PcnCZXmTA5YpaP7dreqsXMGz7KQ2hsVxa81Q4gLv7/wmpdLqBK bRRYh5TmOTFffHPLkIhqhBGWJ6bt2YFGpn6jcgAKUj6DiAdjd4lpFw85hdKrCEVN 0FE6/V1dN2RMfjCyVSRCnTawXZwXgWHxyvkQAiSr6w10kY17RSlQOYiypok1JR4U akcjMS9cmvqtmg5iUaQqqcT5NJ0hGA== ------END CERTIFICATE-----`,Ik=`-----BEGIN PRIVATE KEY----- +-----END CERTIFICATE-----`,ik=`-----BEGIN PRIVATE KEY----- MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCI5r4r3cbPEAD8 3pJat30j5Jkd0ovxNafy9oO5Sd1slsFHNwJoLD/AfBg3nYjDMpt8HlSiIjH5ixg8 /rbLyq4wmN8/z7DRcyrOuv7rqtU9Enm2wlcGjYUypZFv/heTutGmDE2RA9daEfEk @@ -400,4 +400,4 @@ wzUfQXDpZndkqxHilERgvPXLEsTTCMF/W+C8gsO9AoGAZWt+CU6zQhqMBB5MMGZf UE5WUS/oOd4jHBqwVxBTLOAPlmnQSp1uiTu2K0NrnnvZ6Zi/+tIsjbtxhomeOmnH +wsk9n+Bif4P7VTvwqc9FY4Ya79PEJK+J/xx/mldUEz3R63RiRXZAaDddO7yCQFX W8eeuIMLKU6dSq0yu22+nyU= ------END PRIVATE KEY-----`;Ro(new zo({connections:50,pipelining:1,keepAliveTimeout:30000,keepAliveMaxTimeout:60000,connect:{timeout:1e4},headersTimeout:15000,bodyTimeout:30000}));var Hk=process.env.PORT??8080,jo="__DEV_SDK_VERSION__",Oo;((J)=>{J.READY="WEBSERVER.READY";J.STOPPED="WEBSERVER.STOPPED";J.ERROR="WEBSERVER.ERROR";J.UPGRADE="WEBSERVER.UPGRADE"})(Oo||={});var ef0={"access-control-allow-origin":"*"},Ab0={".html":"text/html",".css":"text/css",".js":"text/javascript",".mjs":"text/javascript",".json":"application/json",".gltf":"model/gltf+json",".glb":"model/gltf-binary",".png":"image/png",".jpg":"image/jpeg",".jpeg":"image/jpeg",".webp":"image/webp",".gif":"image/gif",".svg":"image/svg+xml",".ico":"image/x-icon",".ktx2":"image/ktx2",".mp3":"audio/mpeg",".ogg":"audio/ogg",".wav":"audio/wav",".mp4":"video/mp4",".webm":"video/webm",".woff":"font/woff",".woff2":"font/woff2",".ttf":"font/ttf",".bin":"application/octet-stream",".wasm":"application/wasm"};class zV extends BQ{static instance=new zV;_server;_assetCache=new Map;_assetDirs=[];constructor(){super();this._assetDirs.push(wo.resolve("assets"));let A=zY.assetsLibraryPath;if(A)this._assetDirs.push(A)}start(){if(this._server)return n.warning("WebServer.start(): already started");this._server=tf0.createSecureServer({key:Ik,cert:Vk,allowHTTP1:!0}),this._server.on("request",this._onRequest),this._server.on("upgrade",this._onUpgrade),this._server.on("error",this._onError),this._server.on("close",this._onStopped),this._server.listen(Hk,this._onStarted),console.info(`WebServer.start(): Server running on port ${Hk}`)}stop(){if(!this._server)return n.warning("WebServer.stop(): not started"),Promise.resolve(!1);return new Promise((A,Q)=>{this._server.close((B)=>B?Q(B):A(!0))})}_onStarted=()=>this.emitWithGlobal("WEBSERVER.READY",{});_onStopped=()=>this.emitWithGlobal("WEBSERVER.STOPPED",{});_onError=(A)=>{n.error(`WebServer._onError(): ${A.message}`),this.emitWithGlobal("WEBSERVER.ERROR",{error:A})};_onRequest=(A,Q)=>{Q.on("error",()=>{});let B=A.url||"/",J=(A.method||"GET")==="HEAD",C=(G,F={})=>{Q.writeHead(G,{...F,...ef0})};if(B==="/"){C(200,{"content-type":"application/json"}),Q.end(!J?JSON.stringify({status:"OK",version:jo,runtime:"node",playerCount:e9.instance.playerCount}):void 0);return}let X=decodeURIComponent(B.split("?")[0]);if(X.includes("..")){C(400),Q.end();return}for(let G of this._assetDirs){let F=wo.join(G,X);if(!F.startsWith(G))continue;let W=zY.assetsLibraryPath;if(W&&F.startsWith(W)&&!B.includes("noSync"))zY.instance.syncAsset(F);let Z=this._assetCache.get(F);if(!Z)try{let E=DTQ.statSync(F);if(!E.isFile())continue;Z={size:E.size,etag:`"${E.mtimeMs.toString(36)}-${E.size.toString(36)}"`},this._assetCache.set(F,Z)}catch{continue}if(A.headers["if-none-match"]===Z.etag){C(304),Q.end();return}let U={"content-type":Ab0[wo.extname(F).toLowerCase()]||"application/octet-stream","content-length":Z.size,etag:Z.etag,"cache-control":"public, max-age=0, must-revalidate"};if(J){C(200,U),Q.end();return}C(200,U);let $=DTQ.createReadStream(F);Q.on("close",()=>$.destroy()),$.on("error",()=>Q.destroy()),$.pipe(Q);return}C(404),Q.end()};_onUpgrade=(A,Q,B)=>{this.emitWithGlobal("WEBSERVER.UPGRADE",{req:A,socket:Q,head:B})}}var Y4;((I)=>{I.BUILD_PACKETS="build_packets";I.ENTITIES_EMIT_UPDATES="entities_emit_updates";I.ENTITIES_TICK="entities_tick";I.NETWORK_SYNCHRONIZE="network_synchronize";I.NETWORK_SYNCHRONIZE_CLEANUP="network_synchronize_cleanup";I.PHYSICS_CLEANUP="physics_cleanup";I.PHYSICS_STEP="physics_step";I.SEND_ALL_PACKETS="send_all_packets";I.SEND_PACKETS="send_packets";I.SERIALIZE_FREE_BUFFERS="serialize_free_buffers";I.SERIALIZE_PACKETS="serialize_packets";I.SERIALIZE_PACKETS_ENCODE="serialize_packets_encode";I.SIMULATION_STEP="simulation_step";I.TICKER_TICK="ticker_tick";I.WORLD_TICK="world_tick"})(Y4||={});class o0{static getProcessStats(A=!1){let Q=process.memoryUsage(),B={jsHeapSizeMb:{value:Q.heapUsed/1024/1024,unit:"megabyte"},jsHeapCapacityMb:{value:Q.heapTotal/1024/1024,unit:"megabyte"},jsHeapUsagePercent:{value:Q.heapUsed/Q.heapTotal,unit:"percent"},processHeapSizeMb:{value:Q.heapUsed/1024/1024,unit:"megabyte"},rssSizeMb:{value:Q.rss/1024/1024,unit:"megabyte"}};if(A)return B;return Object.fromEntries(Object.entries(B).map(([Y,J])=>[Y,J.value]))}static initializeSentry(A,Q=50){if(vZ())return;_T({dsn:A,release:jo,environment:process.env.NODE_ENV||"development",tracesSampleRate:1,initialScope:{tags:{gameId:process.env.HYTOPIA_GAME_ID??"unknown",gameSlug:process.env.HYTOPIA_GAME_SLUG??"unknown",lobbyId:process.env.HYTOPIA_LOBBY_ID??"unknown",region:process.env.REGION??"unknown"}},beforeSend:(B)=>{return B.extra=o0.getProcessStats(),B},beforeSendTransaction:(B)=>{if(B.contexts?.trace?.op==="ticker_tick"){let J=B?.start_timestamp,C=B?.timestamp;if(!J||!C)return null;if((C-J)*1000>Q)return B.measurements=o0.getProcessStats(!0),B}return null}})}static startSpan(A,Q){let B=cY.instance;if(B.isEnabled){if(vZ())return B.measure(A.operation,()=>k8({attributes:A.attributes,name:A.operation,op:A.operation},Q));return B.measure(A.operation,()=>Q())}if(vZ())return k8({attributes:A.attributes,name:A.operation,op:A.operation},Q);return Q()}static sentry(){return _s}}var Bb0=30000;class U1 extends BQ{static _cachedPacketsSerializedBuffer=new Map;_closeTimeout=null;_isDuplicate=!1;_ws;_wsBinding=!1;_wt;_wtBinding=!1;_wtReliableReader;_wtReliableWriter;_wtUnreliableReader;_wtUnreliableWriter;id;initialConnectionParams;constructor(A,Q,B,Y){super();this.id=JHA(),this.initialConnectionParams=B,this.onPacket(hQ.PacketId.HEARTBEAT,this._onHeartbeatPacket);let J=()=>{BQ.globalInstance.emit("CONNECTION.OPENED",{connection:this,session:Y})};if(A)this.bindWs(A),J();else if(Q)this.bindWt(Q).then(J).catch((C)=>{this._onClose(),n.error(`Connection.constructor(): Failed to bind WebTransport. Error: ${C}`)})}get isDuplicate(){return this._isDuplicate}static clearCachedPacketsSerializedBuffers(){if(U1._cachedPacketsSerializedBuffer.size>0)U1._cachedPacketsSerializedBuffer.clear()}static serializePackets(A){for(let B of A)if(!hQ.isValidPacket(B))return n.error(`Connection.serializePackets(): Invalid packet payload: ${JSON.stringify(B)}`);let Q=U1._cachedPacketsSerializedBuffer.get(A);if(Q)return Q;return o0.startSpan({operation:"serialize_packets",attributes:{packets:A.length,packetIds:A.map((B)=>B[0]).join(",")}},(B)=>{let Y=Zu.pack(A);if(Y.byteLength>65536)Y=Qb0(Y,{level:1});return B?.setAttribute("serializedBytes",Y.byteLength),U1._cachedPacketsSerializedBuffer.set(A,Y),Y})}bindWs(A){this._wsBinding=!0;let Q=this._handleReconnect();if(this._cleanupConnections(),this._ws=A,this._ws.binaryType="nodebuffer",this._ws.onmessage=(B)=>this._onMessage(B.data),this._ws.onclose=this._onClose,this._ws.onerror=this._onError,this._wsBinding=!1,this._signalConnectionId(),Q)this.emitWithGlobal("CONNECTION.RECONNECTED",{connection:this})}async bindWt(A){this._wtBinding=!0;let Q=this._handleReconnect();this._cleanupConnections(),A.userData.onclose=this._onClose,A.closed.catch(()=>{}).finally(()=>A.userData.onclose?.()),this._wt=A;try{await A.ready;let B=A.incomingBidirectionalStreams.getReader();try{let{value:Y}=await B.read();if(Y)this._wtReliableReader=Y.readable,this._wtReliableWriter=Y.writable.getWriter()}finally{B.releaseLock()}this._wtUnreliableReader=A.datagrams.readable,this._wtUnreliableWriter=A.datagrams.createWritable().getWriter()}catch{this._wtBinding=!1;return}if(this._wtBinding=!1,this._wt!==A)return;if((async()=>{if(!this._wtReliableReader)throw Error("Connection.bindWt(): Reliable reader not found.");let B=hQ.createPacketBufferUnframer((Y)=>{this._onMessage(Y)});for await(let Y of this._wtReliableReader){if(A!==this._wt)return;B(Y)}})().catch(()=>{try{A?.close()}catch{}}),(async()=>{if(!this._wtUnreliableReader)throw Error("Connection.bindWt(): Unreliable reader not found.");for await(let B of this._wtUnreliableReader){if(A!==this._wt)return;this._onMessage(B)}})().catch(()=>{try{A?.close()}catch{}}),this._signalConnectionId(),Q)this.emitWithGlobal("CONNECTION.RECONNECTED",{connection:this})}disconnect(){try{this._ws?.close(),this._wt?.close()}catch(A){n.error(`Connection.disconnect(): Connection disconnect failed. Error: ${A}`)}}killDuplicateConnection(){this._isDuplicate=!0,this._cleanupConnections(),this.emitWithGlobal("CONNECTION.DISCONNECTED",{connection:this}),this._finalizeClose()}onPacket(A,Q){this.on("CONNECTION.PACKET_RECEIVED",({packet:B})=>{if(B[0]===A)Q(B)})}send(A,Q=!0){if(this._closeTimeout||this._wsBinding||this._wtBinding)return;if(!this._ws&&!this._wt)return;let B=this._ws&&this._ws.readyState===NE.default.OPEN,Y=this._wt&&this._wt.state==="connected";if(!B&&!Y)return;o0.startSpan({operation:"send_packets"},()=>{try{let J=U1.serializePackets(A);if(!J)return;if(Y)if(Q||J.byteLength>1200)this._wtReliableWriter?.write(hQ.framePacketBuffer(J)).catch(()=>{n.error("Connection.send(): WebTransport reliable write failed, connection closing?")});else this._wtUnreliableWriter?.write(J).catch(()=>{n.error("Connection.send(): WebTransport unreliable write failed, connection closing?")});else this._ws.send(J);this.emitWithGlobal("CONNECTION.PACKETS_SENT",{connection:this,packets:A})}catch(J){n.error(`Connection.send(): Packet send failed. Error: ${J}`)}})}_onHeartbeatPacket=()=>{this.send([hQ.createPacket(hQ.bidirectionalPackets.heartbeatPacketDefinition,null)],!0)};_onMessage=(A)=>{try{let Q=this._deserialize(A);if(!Q)return;this.emitWithGlobal("CONNECTION.PACKET_RECEIVED",{connection:this,packet:Q})}catch(Q){n.error(`Connection._ws.onmessage(): Error: ${Q}`)}};_onClose=()=>{this.emitWithGlobal("CONNECTION.DISCONNECTED",{connection:this}),this._closeTimeout=setTimeout(()=>this._finalizeClose(),Bb0)};_onError=(A)=>{this.emitWithGlobal("CONNECTION.ERROR",{connection:this,error:A})};_cleanupConnections(){if(this._ws)this._ws.onmessage=()=>{},this._ws.onclose=()=>{},this._ws.onerror=()=>{};if(this._wt)this._wt.userData.onclose=()=>{};this._signalKill();try{this._ws?.close()}catch{}let A=this._wt;if(A)setTimeout(()=>{try{A.close()}catch{}},50);this._ws=void 0,this._wt=void 0,this._wtReliableReader=void 0,this._wtReliableWriter=void 0,this._wtUnreliableReader=void 0,this._wtUnreliableWriter=void 0}_deserialize(A){let Q=Zu.unpack(A);if(!Q||typeof Q!=="object"||typeof Q[0]!=="number")return n.error(`Connection._deserialize(): Invalid packet format. Packet: ${JSON.stringify(Q)}`);if(!hQ.isValidPacket(Q))return n.error(`Connection._deserialize(): Invalid packet payload. Packet: ${JSON.stringify(Q)}`);return Q}_finalizeClose(){this.emitWithGlobal("CONNECTION.CLOSED",{connection:this}),this.offAll()}_handleReconnect(){let A=!!this._ws||!!this._wt;if(A&&this._closeTimeout)clearTimeout(this._closeTimeout),this._closeTimeout=null;return A}_signalConnectionId(){this.send([hQ.createPacket(hQ.bidirectionalPackets.connectionPacketDefinition,{i:this.id})])}_signalKill(){this.send([hQ.createPacket(hQ.bidirectionalPackets.connectionPacketDefinition,{k:!0})])}}class bB{_map=new Map;_values=[];_isDirty=!1;get size(){return this._map.size}get valuesArray(){if(this._isDirty)this._syncArray();return this._values}get(A){return this._map.get(A)}set(A,Q){let B=this._map.has(A);if(this._map.set(A,Q),!B)this._values.push(Q);else this._isDirty=!0;return this}has(A){return this._map.has(A)}delete(A){let Q=this._map.delete(A);if(Q)this._isDirty=!0;return Q}clear(){this._map.clear(),this._values.length=0,this._isDirty=!1}forEach(A,Q){this._map.forEach((B,Y)=>{A.call(Q,B,Y,this)})}keys(){return this._map.keys()}values(){return this._map.values()}entries(){return this._map.entries()}[Symbol.iterator](){return this._map[Symbol.iterator]()}_syncArray(){this._values.length=0;for(let A of this._map.values())this._values.push(A);this._isDirty=!1}}var Yb0={x:0,y:-32,z:0},rq=60,Po;((J)=>{J.STEP_START="SIMULATION.STEP_START";J.STEP_END="SIMULATION.STEP_END";J.DEBUG_RAYCAST="SIMULATION.DEBUG_RAYCAST";J.DEBUG_RENDER="SIMULATION.DEBUG_RENDER"})(Po||={});class aq extends BQ{_colliderMap=new uD;_debugRaycastingEnabled=!1;_debugRenderingEnabled=!1;_debugRenderingFilterFlags;_rapierEventQueue;_rapierSimulation;_world;constructor(A,Q=rq,B=Yb0){super();this._rapierEventQueue=new FB.EventQueue(!0),this._rapierSimulation=new FB.World(B),this._rapierSimulation.timestep=Math.fround(1/Q),this._world=A}get colliderMap(){return this._colliderMap}get isDebugRaycastingEnabled(){return this._debugRaycastingEnabled}get isDebugRenderingEnabled(){return this._debugRenderingEnabled}get gravity(){return this._rapierSimulation.gravity}get timestepS(){return this._rapierSimulation.timestep}get world(){return this._world}createRawCollider(A,Q){return this._rapierSimulation.createCollider(A,Q)}createRawRigidBody(A){return this._rapierSimulation.createRigidBody(A)}enableDebugRaycasting(A){this._debugRaycastingEnabled=A}enableDebugRendering(A,Q=FB.QueryFilterFlags.EXCLUDE_FIXED){this._debugRenderingEnabled=A,this._debugRenderingFilterFlags=Q}getContactManifolds(A,Q){let B=[];return this._rapierSimulation.narrowPhase.contactPair(A,Q,(Y,J)=>{if(Y.numContacts()===0)return;let C=Y.normal(),X=[];for(let G=0;G{let G=this._colliderMap.getColliderHandleBlockType(X.handle);if(G&&!J.has(G))return J.add(G),C.push({intersectedBlockType:G}),!0;let F=this._colliderMap.getColliderHandleEntity(X.handle);if(F&&!J.has(F))return J.add(F),C.push({intersectedEntity:F}),!0;return!0},Y.filterFlags,Y.filterGroups,Y.filterExcludeCollider,Y.filterExcludeRigidBody,Y.filterPredicate),C}raycast(A,Q,B,Y={}){let J=new FB.Ray(A,Q),C=this._rapierSimulation.castRay(J,B,Y.solidMode??!0,Y.filterFlags,Y.filterGroups,Y.filterExcludeCollider,Y.filterExcludeRigidBody,Y.filterPredicate);if(this._debugRaycastingEnabled)this.emitWithWorld(this._world,"SIMULATION.DEBUG_RAYCAST",{simulation:this,origin:A,direction:Q,length:B,hit:!!C});if(!C)return null;let X=J.pointAt(C.timeOfImpact),G=C.timeOfImpact,F=C.collider,W=this._colliderMap.getColliderHandleBlockType(F.handle);if(W)return{hitBlock:AE.fromGlobalCoordinate({x:Math.floor(X.x-(J.dir.x<0?0.0001:-0.0001)),y:Math.floor(X.y-(J.dir.y<0?0.0001:-0.0001)),z:Math.floor(X.z-(J.dir.z<0?0.0001:-0.0001))},W),hitPoint:X,hitDistance:G,origin:A,originDirection:Q};let Z=this._colliderMap.getColliderHandleEntity(F.handle);if(Z)return{hitEntity:Z,hitPoint:X,hitDistance:G,origin:A,originDirection:Q};return null}removeRawCollider(A){this._colliderMap.queueColliderHandleForCleanup(A.handle),this._rapierSimulation.removeCollider(A,!1)}removeRawRigidBody(A){this._rapierSimulation.removeRigidBody(A)}setGravity(A){this._rapierSimulation.gravity=A}step=(A)=>{this.emitWithWorld(this._world,"SIMULATION.STEP_START",{simulation:this,tickDeltaMs:A});let Q=performance.now();if(o0.startSpan({operation:"physics_step"},()=>{this._rapierSimulation.step(this._rapierEventQueue)}),o0.startSpan({operation:"physics_cleanup"},()=>{this._rapierEventQueue.drainContactForceEvents(this._onContactForceEvent),this._rapierEventQueue.drainCollisionEvents(this._onCollisionEvent),this._colliderMap.cleanup()}),this.emitWithWorld(this._world,"SIMULATION.STEP_END",{simulation:this,stepDurationMs:performance.now()-Q}),this._debugRenderingEnabled)this.emitWithWorld(this._world,"SIMULATION.DEBUG_RENDER",{simulation:this,...this._rapierSimulation.debugRender(this._debugRenderingFilterFlags)})};_onCollisionEvent=(A,Q,B)=>{let[Y,J]=this._getCollisionObjects(A,Q);if(!Y||!J)return;let C=(X,G)=>{if(X instanceof N8&&G instanceof R0&&X.hasListeners("BLOCK_TYPE.ENTITY_COLLISION"))X.emit("BLOCK_TYPE.ENTITY_COLLISION",{blockType:X,entity:G,started:B,colliderHandleA:A,colliderHandleB:Q});else if(X instanceof R0&&G instanceof N8&&X.hasListeners("ENTITY.BLOCK_COLLISION"))X.emit("ENTITY.BLOCK_COLLISION",{entity:X,blockType:G,started:B,colliderHandleA:A,colliderHandleB:Q});else if(X instanceof R0&&G instanceof R0&&X.hasListeners("ENTITY.ENTITY_COLLISION"))X.emit("ENTITY.ENTITY_COLLISION",{entity:X,otherEntity:G,started:B,colliderHandleA:A,colliderHandleB:Q});else if(typeof X==="function"&&(G instanceof R0||G instanceof N8))X(G,B,A,Q)};C(Y,J),C(J,Y)};_onContactForceEvent=(A)=>{let[Q,B]=this._getCollisionObjects(A.collider1(),A.collider2());if(!Q||typeof Q==="function"||!B||typeof B==="function")return;let Y={totalForce:A.totalForce(),totalForceMagnitude:A.totalForceMagnitude(),maxForceDirection:A.maxForceDirection(),maxForceMagnitude:A.maxForceMagnitude()},J=(C,X)=>{if(C instanceof N8&&X instanceof R0&&C.hasListeners("BLOCK_TYPE.ENTITY_CONTACT_FORCE"))C.emit("BLOCK_TYPE.ENTITY_CONTACT_FORCE",{blockType:C,entity:X,contactForceData:Y});else if(C instanceof R0&&X instanceof N8&&C.hasListeners("ENTITY.BLOCK_CONTACT_FORCE"))C.emit("ENTITY.BLOCK_CONTACT_FORCE",{entity:C,blockType:X,contactForceData:Y});else if(C instanceof R0&&X instanceof R0&&C.hasListeners("ENTITY.ENTITY_CONTACT_FORCE"))C.emit("ENTITY.ENTITY_CONTACT_FORCE",{entity:C,otherEntity:X,contactForceData:Y})};J(Q,B),J(B,Q)};_getCollisionObjects(A,Q){let B=this._colliderMap.getColliderHandleBlockType(A)??this._colliderMap.getColliderHandleCollisionCallback(A)??this._colliderMap.getColliderHandleEntity(A),Y=this._colliderMap.getColliderHandleBlockType(Q)??this._colliderMap.getColliderHandleCollisionCallback(Q)??this._colliderMap.getColliderHandleEntity(Q);return[B,Y]}}var To;((l)=>{l.BURST="PARTICLE_EMITTER.BURST";l.DESPAWN="PARTICLE_EMITTER.DESPAWN";l.SET_ALPHA_TEST="PARTICLE_EMITTER.SET_ALPHA_TEST";l.SET_ATTACHED_TO_ENTITY="PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY";l.SET_ATTACHED_TO_ENTITY_NODE_NAME="PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY_NODE_NAME";l.SET_COLOR_END="PARTICLE_EMITTER.SET_COLOR_END";l.SET_COLOR_END_VARIANCE="PARTICLE_EMITTER.SET_COLOR_END_VARIANCE";l.SET_COLOR_INTENSITY_END="PARTICLE_EMITTER.SET_COLOR_INTENSITY_END";l.SET_COLOR_INTENSITY_END_VARIANCE="PARTICLE_EMITTER.SET_COLOR_INTENSITY_END_VARIANCE";l.SET_COLOR_INTENSITY_START="PARTICLE_EMITTER.SET_COLOR_INTENSITY_START";l.SET_COLOR_INTENSITY_START_VARIANCE="PARTICLE_EMITTER.SET_COLOR_INTENSITY_START_VARIANCE";l.SET_COLOR_START="PARTICLE_EMITTER.SET_COLOR_START";l.SET_COLOR_START_VARIANCE="PARTICLE_EMITTER.SET_COLOR_START_VARIANCE";l.SET_GRAVITY="PARTICLE_EMITTER.SET_GRAVITY";l.SET_LIFETIME="PARTICLE_EMITTER.SET_LIFETIME";l.SET_LIFETIME_VARIANCE="PARTICLE_EMITTER.SET_LIFETIME_VARIANCE";l.SET_MAX_PARTICLES="PARTICLE_EMITTER.SET_MAX_PARTICLES";l.SET_OFFSET="PARTICLE_EMITTER.SET_OFFSET";l.SET_ORIENTATION="PARTICLE_EMITTER.SET_ORIENTATION";l.SET_ORIENTATION_FIXED_ROTATION="PARTICLE_EMITTER.SET_ORIENTATION_FIXED_ROTATION";l.SET_OPACITY_END="PARTICLE_EMITTER.SET_OPACITY_END";l.SET_OPACITY_END_VARIANCE="PARTICLE_EMITTER.SET_OPACITY_END_VARIANCE";l.SET_OPACITY_START="PARTICLE_EMITTER.SET_OPACITY_START";l.SET_OPACITY_START_VARIANCE="PARTICLE_EMITTER.SET_OPACITY_START_VARIANCE";l.SET_PAUSED="PARTICLE_EMITTER.SET_PAUSED";l.SET_POSITION="PARTICLE_EMITTER.SET_POSITION";l.SET_POSITION_VARIANCE="PARTICLE_EMITTER.SET_POSITION_VARIANCE";l.SET_RATE="PARTICLE_EMITTER.SET_RATE";l.SET_RATE_VARIANCE="PARTICLE_EMITTER.SET_RATE_VARIANCE";l.SET_SIZE_END="PARTICLE_EMITTER.SET_SIZE_END";l.SET_SIZE_END_VARIANCE="PARTICLE_EMITTER.SET_SIZE_END_VARIANCE";l.SET_SIZE_START="PARTICLE_EMITTER.SET_SIZE_START";l.SET_SIZE_START_VARIANCE="PARTICLE_EMITTER.SET_SIZE_START_VARIANCE";l.SET_TEXTURE_URI="PARTICLE_EMITTER.SET_TEXTURE_URI";l.SET_TRANSPARENT="PARTICLE_EMITTER.SET_TRANSPARENT";l.SET_VELOCITY="PARTICLE_EMITTER.SET_VELOCITY";l.SET_VELOCITY_VARIANCE="PARTICLE_EMITTER.SET_VELOCITY_VARIANCE";l.SPAWN="PARTICLE_EMITTER.SPAWN"})(To||={});class So extends BQ{_id;_alphaTest;_attachedToEntity;_attachedToEntityNodeName;_colorEnd;_colorEndVariance;_colorIntensityEnd;_colorIntensityEndVariance;_colorIntensityStart;_colorIntensityStartVariance;_colorStart;_colorStartVariance;_gravity;_lifetime;_lifetimeVariance;_lockToEmitter;_maxParticles;_offset;_orientation;_orientationFixedRotation;_opacityEnd;_opacityEndVariance;_opacityStart;_opacityStartVariance;_paused;_position;_positionVariance;_rate;_rateVariance;_sizeEnd;_sizeEndVariance;_sizeStart;_sizeStartVariance;_sizeVariance;_textureUri;_transparent;_velocity;_velocityVariance;_world;constructor(A){if(!!A.attachedToEntity===!!A.position)n.fatalError("Either attachedToEntity or position must be set, but not both.");if(!A.textureUri)n.fatalError("ParticleEmitter.constructor(): textureUri must be provided.");super();this._alphaTest=A.alphaTest??0.05,this._attachedToEntity=A.attachedToEntity,this._attachedToEntityNodeName=A.attachedToEntityNodeName,this._colorEnd=A.colorEnd,this._colorEndVariance=A.colorEndVariance,this._colorIntensityEnd=A.colorIntensityEnd,this._colorIntensityEndVariance=A.colorIntensityEndVariance,this._colorIntensityStart=A.colorIntensityStart,this._colorIntensityStartVariance=A.colorIntensityStartVariance,this._colorStart=A.colorStart,this._colorStartVariance=A.colorStartVariance,this._gravity=A.gravity,this._lifetime=A.lifetime,this._lifetimeVariance=A.lifetimeVariance,this._lockToEmitter=A.lockToEmitter??!1,this._maxParticles=A.maxParticles,this._offset=A.offset,this._orientation=A.orientation,this._orientationFixedRotation=A.orientationFixedRotation,this._opacityEnd=A.opacityEnd,this._opacityEndVariance=A.opacityEndVariance,this._opacityStart=A.opacityStart,this._opacityStartVariance=A.opacityStartVariance,this._paused=!1,this._position=A.position,this._positionVariance=A.positionVariance,this._rate=A.rate,this._rateVariance=A.rateVariance,this._sizeEnd=A.sizeEnd,this._sizeEndVariance=A.sizeEndVariance,this._sizeStart=A.sizeStart,this._sizeStartVariance=A.sizeStartVariance,this._textureUri=A.textureUri,this._transparent=A.transparent,this._velocity=A.velocity,this._velocityVariance=A.velocityVariance}get id(){return this._id}get alphaTest(){return this._alphaTest}get attachedToEntity(){return this._attachedToEntity}get attachedToEntityNodeName(){return this._attachedToEntityNodeName}get colorEnd(){return this._colorEnd}get colorEndVariance(){return this._colorEndVariance}get colorIntensityEnd(){return this._colorIntensityEnd}get colorIntensityEndVariance(){return this._colorIntensityEndVariance}get colorIntensityStart(){return this._colorIntensityStart}get colorIntensityStartVariance(){return this._colorIntensityStartVariance}get colorStart(){return this._colorStart}get colorStartVariance(){return this._colorStartVariance}get gravity(){return this._gravity}get isSpawned(){return this._id!==void 0}get lifetime(){return this._lifetime}get lifetimeVariance(){return this._lifetimeVariance}get lockToEmitter(){return this._lockToEmitter}get maxParticles(){return this._maxParticles}get offset(){return this._offset}get orientation(){return this._orientation}get orientationFixedRotation(){return this._orientationFixedRotation}get opacityEnd(){return this._opacityEnd}get opacityEndVariance(){return this._opacityEndVariance}get opacityStart(){return this._opacityStart}get opacityStartVariance(){return this._opacityStartVariance}get paused(){return this._paused}get position(){return this._position}get positionVariance(){return this._positionVariance}get rate(){return this._rate}get rateVariance(){return this._rateVariance}get sizeEnd(){return this._sizeEnd}get sizeEndVariance(){return this._sizeEndVariance}get sizeStart(){return this._sizeStart}get sizeStartVariance(){return this._sizeStartVariance}get sizeVariance(){return this._sizeVariance}get textureUri(){return this._textureUri}get transparent(){return this._transparent}get velocity(){return this._velocity}get velocityVariance(){return this._velocityVariance}get world(){return this._world}setAlphaTest(A){if(this._alphaTest===A)return;if(this._alphaTest=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_ALPHA_TEST",{particleEmitter:this,alphaTest:A})}setAttachedToEntity(A){if(!A.isSpawned)return n.error(`ParticleEmitter.setAttachedToEntity(): Entity ${A.id} is not spawned!`);if(this._attachedToEntity===A)return;if(this._attachedToEntity=A,this._position=void 0,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY",{particleEmitter:this,entity:A})}setAttachedToEntityNodeName(A){if(this._attachedToEntityNodeName===A)return;if(this._attachedToEntityNodeName=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY_NODE_NAME",{particleEmitter:this,attachedToEntityNodeName:A})}setColorEnd(A){if(this._colorEnd&&this._colorEnd.r===A.r&&this._colorEnd.g===A.g&&this._colorEnd.b===A.b)return;if(this._colorEnd=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_END",{particleEmitter:this,colorEnd:A})}setColorEndVariance(A){if(this._colorEndVariance&&this._colorEndVariance.r===A.r&&this._colorEndVariance.g===A.g&&this._colorEndVariance.b===A.b)return;if(this._colorEndVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_END_VARIANCE",{particleEmitter:this,colorEndVariance:A})}setColorIntensityEnd(A){if(this._colorIntensityEnd===A)return;if(this._colorIntensityEnd=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_INTENSITY_END",{particleEmitter:this,colorIntensityEnd:A})}setColorIntensityEndVariance(A){if(this._colorIntensityEndVariance===A)return;if(this._colorIntensityEndVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_INTENSITY_END_VARIANCE",{particleEmitter:this,colorIntensityEndVariance:A})}setColorIntensityStart(A){if(this._colorIntensityStart===A)return;if(this._colorIntensityStart=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_INTENSITY_START",{particleEmitter:this,colorIntensityStart:A})}setColorIntensityStartVariance(A){if(this._colorIntensityStartVariance===A)return;if(this._colorIntensityStartVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_INTENSITY_START_VARIANCE",{particleEmitter:this,colorIntensityStartVariance:A})}setColorStart(A){if(this._colorStart&&this._colorStart.r===A.r&&this._colorStart.g===A.g&&this._colorStart.b===A.b)return;if(this._colorStart=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_START",{particleEmitter:this,colorStart:A})}setColorStartVariance(A){if(this._colorStartVariance&&this._colorStartVariance.r===A.r&&this._colorStartVariance.g===A.g&&this._colorStartVariance.b===A.b)return;if(this._colorStartVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_START_VARIANCE",{particleEmitter:this,colorStartVariance:A})}setGravity(A){if(this._gravity&&this._gravity.x===A.x&&this._gravity.y===A.y&&this._gravity.z===A.z)return;if(this._gravity=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_GRAVITY",{particleEmitter:this,gravity:A})}setLifetime(A){if(this._lifetime===A)return;if(this._lifetime=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_LIFETIME",{particleEmitter:this,lifetime:A})}setLifetimeVariance(A){if(this._lifetimeVariance===A)return;if(this._lifetimeVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_LIFETIME_VARIANCE",{particleEmitter:this,lifetimeVariance:A})}setMaxParticles(A){if(this._maxParticles===A)return;if(this._maxParticles=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_MAX_PARTICLES",{particleEmitter:this,maxParticles:A})}setOffset(A){if(this._offset&&this._offset.x===A.x&&this._offset.y===A.y&&this._offset.z===A.z)return;if(this._offset=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_OFFSET",{particleEmitter:this,offset:A})}setOrientation(A){if(this._orientation===A)return;if(this._orientation=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_ORIENTATION",{particleEmitter:this,orientation:A})}setOrientationFixedRotation(A){if(this._orientationFixedRotation&&this._orientationFixedRotation.x===A.x&&this._orientationFixedRotation.y===A.y&&this._orientationFixedRotation.z===A.z)return;if(this._orientationFixedRotation=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_ORIENTATION_FIXED_ROTATION",{particleEmitter:this,orientationFixedRotation:A})}setOpacityEnd(A){if(this._opacityEnd===A)return;if(this._opacityEnd=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_OPACITY_END",{particleEmitter:this,opacityEnd:A})}setOpacityEndVariance(A){if(this._opacityEndVariance===A)return;if(this._opacityEndVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_OPACITY_END_VARIANCE",{particleEmitter:this,opacityEndVariance:A})}setOpacityStart(A){if(this._opacityStart===A)return;if(this._opacityStart=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_OPACITY_START",{particleEmitter:this,opacityStart:A})}setOpacityStartVariance(A){if(this._opacityStartVariance===A)return;if(this._opacityStartVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_OPACITY_START_VARIANCE",{particleEmitter:this,opacityStartVariance:A})}setPosition(A){if(this._position&&this._position.x===A.x&&this._position.y===A.y&&this._position.z===A.z)return;if(this._position=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_POSITION",{particleEmitter:this,position:A})}setPositionVariance(A){if(this._positionVariance&&this._positionVariance.x===A.x&&this._positionVariance.y===A.y&&this._positionVariance.z===A.z)return;if(this._positionVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_POSITION_VARIANCE",{particleEmitter:this,positionVariance:A})}setRate(A){if(this._rate===A)return;if(this._rate=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_RATE",{particleEmitter:this,rate:A})}setRateVariance(A){if(this._rateVariance===A)return;if(this._rateVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_RATE_VARIANCE",{particleEmitter:this,rateVariance:A})}setSizeEnd(A){if(this._sizeEnd===A)return;if(this._sizeEnd=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_SIZE_END",{particleEmitter:this,sizeEnd:A})}setSizeEndVariance(A){if(this._sizeEndVariance===A)return;if(this._sizeEndVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_SIZE_END_VARIANCE",{particleEmitter:this,sizeEndVariance:A})}setSizeStart(A){if(this._sizeStart===A)return;if(this._sizeStart=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_SIZE_START",{particleEmitter:this,sizeStart:A})}setSizeStartVariance(A){if(this._sizeStartVariance===A)return;if(this._sizeStartVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_SIZE_START_VARIANCE",{particleEmitter:this,sizeStartVariance:A})}setTextureUri(A){if(this._textureUri===A)return;if(this._textureUri=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_TEXTURE_URI",{particleEmitter:this,textureUri:A})}setTransparent(A){if(this._transparent===A)return;if(this._transparent=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_TRANSPARENT",{particleEmitter:this,transparent:A})}setVelocity(A){if(this._velocity&&this._velocity.x===A.x&&this._velocity.y===A.y&&this._velocity.z===A.z)return;if(this._velocity=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_VELOCITY",{particleEmitter:this,velocity:A})}setVelocityVariance(A){if(this._velocityVariance&&this._velocityVariance.x===A.x&&this._velocityVariance.y===A.y&&this._velocityVariance.z===A.z)return;if(this._velocityVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_VELOCITY_VARIANCE",{particleEmitter:this,velocityVariance:A})}burst(A){if(this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.BURST",{particleEmitter:this,count:A})}despawn(){if(!this.isSpawned||!this._world)return;this._world.particleEmitterManager.unregisterParticleEmitter(this),this.emitWithWorld(this._world,"PARTICLE_EMITTER.DESPAWN",{particleEmitter:this}),this._id=void 0,this._world=void 0}restart(){if(!this._paused)return;if(this._paused=!1,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_PAUSED",{particleEmitter:this,paused:this._paused})}stop(){if(this._paused)return;if(this._paused=!0,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_PAUSED",{particleEmitter:this,paused:this._paused})}spawn(A){if(this.isSpawned)return;if(this._attachedToEntity&&!this._attachedToEntity.isSpawned)return n.error(`ParticleEmitter.spawn(): Attached entity ${this._attachedToEntity.id} must be spawned before spawning ParticleEmitter!`);this._id=A.particleEmitterManager.registerParticleEmitter(this),this._world=A,this.emitWithWorld(A,"PARTICLE_EMITTER.SPAWN",{particleEmitter:this})}serialize(){return GQ.serializeParticleEmitter(this)}}var Jb0=30,Cb0=Math.round(rq/Jb0);class Dk{_outboundPerPlayerReliablePackets=new bB;_outboundSharedReliablePackets=[];_outboundSharedUnreliablePackets=[];_queuedAudioSyncs={broadcast:new bB,perPlayer:new bB};_queuedBlockSyncs={broadcast:new bB,perPlayer:new bB};_queuedBlockTypeSyncs={broadcast:new bB,perPlayer:new bB};_queuedChunkSyncs={broadcast:new bB,perPlayer:new bB};_queuedEntitySyncs={broadcast:new bB,perPlayer:new bB};_queuedParticleEmitterSyncs={broadcast:new bB,perPlayer:new bB};_queuedPlayerSyncs={broadcast:new bB,perPlayer:new bB};_queuedSceneUISyncs={broadcast:new bB,perPlayer:new bB};_queuedCameraSyncs={broadcast:void 0,perPlayer:new bB};_queuedChatMessagesSyncs={broadcast:void 0,perPlayer:new bB};_queuedDebugRaycastsSyncs={broadcast:void 0,perPlayer:new bB};_queuedDebugRenderSyncs={broadcast:void 0,perPlayer:new bB};_queuedNotificationPermissionRequestSyncs={broadcast:void 0,perPlayer:new bB};_queuedUISyncs={broadcast:void 0,perPlayer:new bB};_queuedUIDatasSyncs={broadcast:void 0,perPlayer:new bB};_queuedWorldSyncs={broadcast:void 0,perPlayer:new bB};_loadedSceneUIs=new Set;_spawnedChunks=new Set;_spawnedEntities=new Set;_world;constructor(A){this._world=A,this._subscribeToAudioEvents(),this._subscribeToBlockTypeRegistryEvents(),this._subscribeToChatEvents(),this._subscribeToChunkLatticeEvents(),this._subscribeToEntityEvents(),this._subscribeToEntityModelAnimationEvents(),this._subscribeToEntityModelNodeOverrideEvents(),this._subscribeToParticleEmitterEvents(),this._subscribeToPlayerEvents(),this._subscribeToPlayerCameraEvents(),this._subscribeToPlayerUIEvents(),this._subscribeToSceneUIEvents(),this._subscribeToSimulationEvents(),this._subscribeToWorldEvents()}shouldSynchronize(){return this._world.loop.currentTick%Cb0===0}synchronize(){let A=this._world.loop.currentTick;if(this._queuedEntitySyncs.broadcast.size>0){let Q=[],B=[];for(let Y of this._queuedEntitySyncs.broadcast.valuesArray){let J=!1;for(let C in Y)if(J=C!=="i"&&C!=="p"&&C!=="r",J)break;(J?Q:B).push(Y)}if(B.length>0){let Y=hQ.createPacket(hQ.outboundPackets.entitiesPacketDefinition,B,A);this._outboundSharedUnreliablePackets.push(Y)}if(Q.length>0){let Y=hQ.createPacket(hQ.outboundPackets.entitiesPacketDefinition,Q,A);this._outboundSharedReliablePackets.push(Y);for(let J of this._outboundPerPlayerReliablePackets.valuesArray)J.push(Y)}}if(this._queuedEntitySyncs.perPlayer.size>0)for(let[Q,B]of this._queuedEntitySyncs.perPlayer.entries())this._outboundPerPlayerReliablePackets.get(Q)?.push(hQ.createPacket(hQ.outboundPackets.entitiesPacketDefinition,B.valuesArray,A));this._collectSingletonSyncToOutboundPackets(this._queuedCameraSyncs,hQ.outboundPackets.cameraPacketDefinition),this._collectSyncToOutboundPackets(this._queuedAudioSyncs,hQ.outboundPackets.audiosPacketDefinition),this._collectSyncToOutboundPackets(this._queuedBlockTypeSyncs,hQ.outboundPackets.blockTypesPacketDefinition),this._collectSyncToOutboundPackets(this._queuedChunkSyncs,hQ.outboundPackets.chunksPacketDefinition),this._collectSyncToOutboundPackets(this._queuedBlockSyncs,hQ.outboundPackets.blocksPacketDefinition),this._collectSyncToOutboundPackets(this._queuedParticleEmitterSyncs,hQ.outboundPackets.particleEmittersPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedUISyncs,hQ.outboundPackets.uiPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedUIDatasSyncs,hQ.outboundPackets.uiDatasPacketDefinition),this._collectSyncToOutboundPackets(this._queuedSceneUISyncs,hQ.outboundPackets.sceneUIsPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedWorldSyncs,hQ.outboundPackets.worldPacketDefinition),this._collectSyncToOutboundPackets(this._queuedPlayerSyncs,hQ.outboundPackets.playersPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedChatMessagesSyncs,hQ.outboundPackets.chatMessagesPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedNotificationPermissionRequestSyncs,hQ.outboundPackets.notificationPermissionRequestPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedDebugRenderSyncs,hQ.outboundPackets.physicsDebugRenderPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedDebugRaycastsSyncs,hQ.outboundPackets.physicsDebugRaycastsPacketDefinition),o0.startSpan({operation:"send_all_packets"},()=>{for(let Q of e9.instance.getConnectedPlayersByWorld(this._world)){let B=this._outboundPerPlayerReliablePackets.get(Q)??this._outboundSharedReliablePackets;if(B.length>0)Q.connection.send(B);if(this._outboundSharedUnreliablePackets.length>0)Q.connection.send(this._outboundSharedUnreliablePackets,!1)}}),o0.startSpan({operation:"network_synchronize_cleanup"},()=>{if(this._outboundPerPlayerReliablePackets.size>0)this._outboundPerPlayerReliablePackets.clear();if(this._outboundSharedReliablePackets.length>0)this._outboundSharedReliablePackets.length=0;if(this._outboundSharedUnreliablePackets.length>0)this._outboundSharedUnreliablePackets.length=0;if(this._loadedSceneUIs.size>0)this._loadedSceneUIs.clear();if(this._spawnedChunks.size>0)this._spawnedChunks.clear();if(this._spawnedEntities.size>0)this._spawnedEntities.clear();this._clearSyncQueue(this._queuedAudioSyncs),this._clearSyncQueue(this._queuedBlockSyncs),this._clearSyncQueue(this._queuedBlockTypeSyncs),this._clearSyncQueue(this._queuedChunkSyncs),this._clearSyncQueue(this._queuedEntitySyncs),this._clearSyncQueue(this._queuedParticleEmitterSyncs),this._clearSyncQueue(this._queuedPlayerSyncs),this._clearSyncQueue(this._queuedSceneUISyncs),this._clearSingletonSyncQueue(this._queuedCameraSyncs),this._clearSingletonSyncQueue(this._queuedChatMessagesSyncs),this._clearSingletonSyncQueue(this._queuedDebugRaycastsSyncs),this._clearSingletonSyncQueue(this._queuedDebugRenderSyncs),this._clearSingletonSyncQueue(this._queuedNotificationPermissionRequestSyncs),this._clearSingletonSyncQueue(this._queuedUISyncs),this._clearSingletonSyncQueue(this._queuedUIDatasSyncs),this._clearSingletonSyncQueue(this._queuedWorldSyncs),U1.clearCachedPacketsSerializedBuffers()})}_subscribeToAudioEvents(){this._world.final("AUDIO.PAUSE",this._onAudioPause),this._world.final("AUDIO.PLAY",this._onAudioPlay),this._world.final("AUDIO.PLAY_RESTART",this._onAudioPlayRestart),this._world.final("AUDIO.SET_ATTACHED_TO_ENTITY",this._onAudioSetAttachedToEntity),this._world.final("AUDIO.SET_CUTOFF_DISTANCE",this._onAudioSetCutoffDistance),this._world.final("AUDIO.SET_DETUNE",this._onAudioSetDetune),this._world.final("AUDIO.SET_DISTORTION",this._onAudioSetDistortion),this._world.final("AUDIO.SET_POSITION",this._onAudioSetPosition),this._world.final("AUDIO.SET_PLAYBACK_RATE",this._onAudioSetPlaybackRate),this._world.final("AUDIO.SET_REFERENCE_DISTANCE",this._onAudioSetReferenceDistance),this._world.final("AUDIO.SET_VOLUME",this._onAudioSetVolume)}_subscribeToBlockTypeRegistryEvents(){this._world.final("BLOCK_TYPE_REGISTRY.REGISTER_BLOCK_TYPE",this._onBlockTypeRegistryRegisterBlockType)}_subscribeToChatEvents(){this._world.final("CHAT.BROADCAST_MESSAGE",this._onChatSendBroadcastMessage),this._world.final("CHAT.PLAYER_MESSAGE",this._onChatSendPlayerMessage)}_subscribeToChunkLatticeEvents(){this._world.final("CHUNK_LATTICE.ADD_CHUNK",this._onChunkLatticeAddChunk),this._world.final("CHUNK_LATTICE.REMOVE_CHUNK",this._onChunkLatticeRemoveChunk),this._world.final("CHUNK_LATTICE.SET_BLOCK",this._onChunkLatticeSetBlock)}_subscribeToEntityEvents(){this._world.final("ENTITY.SPAWN",this._onEntitySpawn),this._world.final("ENTITY.DESPAWN",this._onEntityDespawn),this._world.final("ENTITY.REMOVE_MODEL_NODE_OVERRIDE",this._onEntityRemoveModelNodeOverride),this._world.final("ENTITY.SET_BLOCK_TEXTURE_URI",this._onEntitySetBlockTextureUri),this._world.final("ENTITY.SET_EMISSIVE_COLOR",this._onEntitySetEmissiveColor),this._world.final("ENTITY.SET_EMISSIVE_INTENSITY",this._onEntitySetEmissiveIntensity),this._world.final("ENTITY.SET_MODEL_SCALE",this._onEntitySetModelScale),this._world.final("ENTITY.SET_MODEL_SCALE_INTERPOLATION_MS",this._onEntitySetModelScaleInterpolationMs),this._world.final("ENTITY.SET_MODEL_TEXTURE_URI",this._onEntitySetModelTextureUri),this._world.final("ENTITY.SET_OPACITY",this._onEntitySetOpacity),this._world.final("ENTITY.SET_OUTLINE",this._onEntitySetOutline),this._world.final("ENTITY.SET_PARENT",this._onEntitySetParent),this._world.final("ENTITY.SET_POSITION_INTERPOLATION_MS",this._onEntitySetPositionInterpolationMs),this._world.final("ENTITY.SET_ROTATION_INTERPOLATION_MS",this._onEntitySetRotationInterpolationMs),this._world.final("ENTITY.SET_TINT_COLOR",this._onEntitySetTintColor),this._world.final("ENTITY.UPDATE_POSITION",this._onEntityUpdatePosition),this._world.final("ENTITY.UPDATE_ROTATION",this._onEntityUpdateRotation)}_subscribeToEntityModelAnimationEvents(){this._world.final("ENTITY_MODEL_ANIMATION.PAUSE",this._onEntityModelAnimationPause),this._world.final("ENTITY_MODEL_ANIMATION.PLAY",this._onEntityModelAnimationPlay),this._world.final("ENTITY_MODEL_ANIMATION.RESTART",this._onEntityModelAnimationRestart),this._world.final("ENTITY_MODEL_ANIMATION.SET_BLEND_MODE",this._onEntityModelAnimationSetBlendMode),this._world.final("ENTITY_MODEL_ANIMATION.SET_CLAMP_WHEN_FINISHED",this._onEntityModelAnimationSetClampWhenFinished),this._world.final("ENTITY_MODEL_ANIMATION.SET_FADES_IN",this._onEntityModelAnimationSetFadesIn),this._world.final("ENTITY_MODEL_ANIMATION.SET_FADES_OUT",this._onEntityModelAnimationSetFadesOut),this._world.final("ENTITY_MODEL_ANIMATION.SET_LOOP_MODE",this._onEntityModelAnimationSetLoopMode),this._world.final("ENTITY_MODEL_ANIMATION.SET_PLAYBACK_RATE",this._onEntityModelAnimationSetPlaybackRate),this._world.final("ENTITY_MODEL_ANIMATION.SET_WEIGHT",this._onEntityModelAnimationSetWeight),this._world.final("ENTITY_MODEL_ANIMATION.STOP",this._onEntityModelAnimationStop)}_subscribeToEntityModelNodeOverrideEvents(){this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_COLOR",this._onEntityModelNodeOverrideSetEmissiveColor),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_INTENSITY",this._onEntityModelNodeOverrideSetEmissiveIntensity),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_HIDDEN",this._onEntityModelNodeOverrideSetHidden),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION",this._onEntityModelNodeOverrideSetLocalPosition),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION_INTERPOLATION_MS",this._onEntityModelNodeOverrideSetLocalPositionInterpolationMs),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION",this._onEntityModelNodeOverrideSetLocalRotation),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION_INTERPOLATION_MS",this._onEntityModelNodeOverrideSetLocalRotationInterpolationMs),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE",this._onEntityModelNodeOverrideSetLocalScale),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE_INTERPOLATION_MS",this._onEntityModelNodeOverrideSetLocalScaleInterpolationMs)}_subscribeToParticleEmitterEvents(){this._world.final("PARTICLE_EMITTER.DESPAWN",this._onParticleEmitterDespawn),this._world.final("PARTICLE_EMITTER.BURST",this._onParticleEmitterBurst),this._world.final("PARTICLE_EMITTER.SET_ALPHA_TEST",this._onParticleEmitterSetAlphaTest),this._world.final("PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY",this._onParticleEmitterSetAttachedToEntity),this._world.final("PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY_NODE_NAME",this._onParticleEmitterSetAttachedToEntityNodeName),this._world.final("PARTICLE_EMITTER.SET_COLOR_END",this._onParticleEmitterSetColorEnd),this._world.final("PARTICLE_EMITTER.SET_COLOR_END_VARIANCE",this._onParticleEmitterSetColorEndVariance),this._world.final("PARTICLE_EMITTER.SET_COLOR_INTENSITY_END",this._onParticleEmitterSetColorIntensityEnd),this._world.final("PARTICLE_EMITTER.SET_COLOR_INTENSITY_END_VARIANCE",this._onParticleEmitterSetColorIntensityEndVariance),this._world.final("PARTICLE_EMITTER.SET_COLOR_INTENSITY_START",this._onParticleEmitterSetColorIntensityStart),this._world.final("PARTICLE_EMITTER.SET_COLOR_INTENSITY_START_VARIANCE",this._onParticleEmitterSetColorIntensityStartVariance),this._world.final("PARTICLE_EMITTER.SET_COLOR_START",this._onParticleEmitterSetColorStart),this._world.final("PARTICLE_EMITTER.SET_COLOR_START_VARIANCE",this._onParticleEmitterSetColorStartVariance),this._world.final("PARTICLE_EMITTER.SET_GRAVITY",this._onParticleEmitterSetGravity),this._world.final("PARTICLE_EMITTER.SET_LIFETIME",this._onParticleEmitterSetLifetime),this._world.final("PARTICLE_EMITTER.SET_LIFETIME_VARIANCE",this._onParticleEmitterSetLifetimeVariance),this._world.final("PARTICLE_EMITTER.SET_MAX_PARTICLES",this._onParticleEmitterSetMaxParticles),this._world.final("PARTICLE_EMITTER.SET_OFFSET",this._onParticleEmitterSetOffset),this._world.final("PARTICLE_EMITTER.SET_OPACITY_END",this._onParticleEmitterSetOpacityEnd),this._world.final("PARTICLE_EMITTER.SET_OPACITY_END_VARIANCE",this._onParticleEmitterSetOpacityEndVariance),this._world.final("PARTICLE_EMITTER.SET_OPACITY_START",this._onParticleEmitterSetOpacityStart),this._world.final("PARTICLE_EMITTER.SET_OPACITY_START_VARIANCE",this._onParticleEmitterSetOpacityStartVariance),this._world.final("PARTICLE_EMITTER.SET_PAUSED",this._onParticleEmitterSetPaused),this._world.final("PARTICLE_EMITTER.SET_POSITION",this._onParticleEmitterSetPosition),this._world.final("PARTICLE_EMITTER.SET_POSITION_VARIANCE",this._onParticleEmitterSetPositionVariance),this._world.final("PARTICLE_EMITTER.SET_RATE",this._onParticleEmitterSetRate),this._world.final("PARTICLE_EMITTER.SET_RATE_VARIANCE",this._onParticleEmitterSetRateVariance),this._world.final("PARTICLE_EMITTER.SET_SIZE_END",this._onParticleEmitterSetSizeEnd),this._world.final("PARTICLE_EMITTER.SET_SIZE_END_VARIANCE",this._onParticleEmitterSetSizeEndVariance),this._world.final("PARTICLE_EMITTER.SET_SIZE_START",this._onParticleEmitterSetSizeStart),this._world.final("PARTICLE_EMITTER.SET_SIZE_START_VARIANCE",this._onParticleEmitterSetSizeStartVariance),this._world.final("PARTICLE_EMITTER.SET_TEXTURE_URI",this._onParticleEmitterSetTextureUri),this._world.final("PARTICLE_EMITTER.SET_TRANSPARENT",this._onParticleEmitterSetTransparent),this._world.final("PARTICLE_EMITTER.SET_VELOCITY",this._onParticleEmitterSetVelocity),this._world.final("PARTICLE_EMITTER.SET_VELOCITY_VARIANCE",this._onParticleEmitterSetVelocityVariance),this._world.final("PARTICLE_EMITTER.SPAWN",this._onParticleEmitterSpawn)}_subscribeToPlayerEvents(){this._world.final("PLAYER.JOINED_WORLD",this._onPlayerJoinedWorld),this._world.final("PLAYER.LEFT_WORLD",this._onPlayerLeftWorld),this._world.final("PLAYER.RECONNECTED_WORLD",this._onPlayerReconnectedWorld),this._world.final("PLAYER.REQUEST_NOTIFICATION_PERMISSION",this._onPlayerRequestNotificationPermission),this._world.final("PLAYER.REQUEST_SYNC",this._onPlayerRequestSync)}_subscribeToPlayerCameraEvents(){this._world.final("PLAYER_CAMERA.FACE_ENTITY",this._onPlayerCameraFaceEntity),this._world.final("PLAYER_CAMERA.FACE_POSITION",this._onPlayerCameraFacePosition),this._world.final("PLAYER_CAMERA.SET_ATTACHED_TO_ENTITY",this._onPlayerCameraSetAttachedToEntity),this._world.final("PLAYER_CAMERA.SET_ATTACHED_TO_POSITION",this._onPlayerCameraSetAttachedToPosition),this._world.final("PLAYER_CAMERA.SET_COLLIDES_WITH_BLOCKS",this._onPlayerCameraSetCollidesWithBlocks),this._world.final("PLAYER_CAMERA.SET_FILM_OFFSET",this._onPlayerCameraSetFilmOffset),this._world.final("PLAYER_CAMERA.SET_FORWARD_OFFSET",this._onPlayerCameraSetForwardOffset),this._world.final("PLAYER_CAMERA.SET_FOV",this._onPlayerCameraSetFov),this._world.final("PLAYER_CAMERA.SET_MODE",this._onPlayerCameraSetMode),this._world.final("PLAYER_CAMERA.SET_OFFSET",this._onPlayerCameraSetOffset),this._world.final("PLAYER_CAMERA.SET_SHOULDER_ANGLE",this._onPlayerCameraSetShoulderAngle),this._world.final("PLAYER_CAMERA.SET_TARGET_ENTITY",this._onPlayerCameraSetTargetEntity),this._world.final("PLAYER_CAMERA.SET_TARGET_POSITION",this._onPlayerCameraSetTargetPosition),this._world.final("PLAYER_CAMERA.SET_VIEW_MODEL",this._onPlayerCameraSetViewModel),this._world.final("PLAYER_CAMERA.SET_VIEW_MODEL_HIDDEN_NODES",this._onPlayerCameraSetViewModelHiddenNodes),this._world.final("PLAYER_CAMERA.SET_VIEW_MODEL_PITCHES_WITH_CAMERA",this._onPlayerCameraSetViewModelPitchesWithCamera),this._world.final("PLAYER_CAMERA.SET_VIEW_MODEL_SHOWN_NODES",this._onPlayerCameraSetViewModelShownNodes),this._world.final("PLAYER_CAMERA.SET_VIEW_MODEL_YAWS_WITH_CAMERA",this._onPlayerCameraSetViewModelYawsWithCamera),this._world.final("PLAYER_CAMERA.SET_ZOOM",this._onPlayerCameraSetZoom)}_subscribeToPlayerUIEvents(){this._world.final("PLAYER_UI.APPEND",this._onPlayerUIAppend),this._world.final("PLAYER_UI.FREEZE_POINTER_LOCK",this._onPlayerUIFreezePointerLock),this._world.final("PLAYER_UI.LOAD",this._onPlayerUILoad),this._world.final("PLAYER_UI.LOCK_POINTER",this._onPlayerUILockPointer),this._world.final("PLAYER_UI.SEND_DATA",this._onPlayerUISendData)}_subscribeToSceneUIEvents(){this._world.final("SCENE_UI.LOAD",this._onSceneUILoad),this._world.final("SCENE_UI.SET_ATTACHED_TO_ENTITY",this._onSceneUISetAttachedToEntity),this._world.final("SCENE_UI.SET_OFFSET",this._onSceneUISetOffset),this._world.final("SCENE_UI.SET_POSITION",this._onSceneUISetPosition),this._world.final("SCENE_UI.SET_STATE",this._onSceneUISetState),this._world.final("SCENE_UI.SET_VIEW_DISTANCE",this._onSceneUISetViewDistance),this._world.final("SCENE_UI.UNLOAD",this._onSceneUIUnload)}_subscribeToSimulationEvents(){this._world.final("SIMULATION.DEBUG_RAYCAST",this._onSimulationDebugRaycast),this._world.final("SIMULATION.DEBUG_RENDER",this._onSimulationDebugRender)}_subscribeToWorldEvents(){this._world.final("WORLD.SET_AMBIENT_LIGHT_COLOR",this._onWorldSetAmbientLightColor),this._world.final("WORLD.SET_AMBIENT_LIGHT_INTENSITY",this._onWorldSetAmbientLightIntensity),this._world.final("WORLD.SET_DIRECTIONAL_LIGHT_COLOR",this._onWorldSetDirectionalLightColor),this._world.final("WORLD.SET_DIRECTIONAL_LIGHT_INTENSITY",this._onWorldSetDirectionalLightIntensity),this._world.final("WORLD.SET_DIRECTIONAL_LIGHT_POSITION",this._onWorldSetDirectionalLightPosition),this._world.final("WORLD.SET_FOG_COLOR",this._onWorldSetFogColor),this._world.final("WORLD.SET_FOG_FAR",this._onWorldSetFogFar),this._world.final("WORLD.SET_FOG_NEAR",this._onWorldSetFogNear),this._world.final("WORLD.SET_SKYBOX_INTENSITY",this._onWorldSetSkyboxIntensity),this._world.final("WORLD.SET_SKYBOX_URI",this._onWorldSetSkyboxUri)}_onAudioPause=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.pa=!0,delete Q.pl,delete Q.r};_onAudioPlay=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Object.assign(Q,A.audio.serialize()),Q.pl=!0,delete Q.pa,delete Q.r};_onAudioPlayRestart=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Object.assign(Q,A.audio.serialize()),Q.r=!0,delete Q.pa,delete Q.pl};_onAudioSetAttachedToEntity=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.e=A.entity?A.entity.id:void 0,Q.p=A.entity?void 0:Q.p};_onAudioSetCutoffDistance=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.cd=A.cutoffDistance};_onAudioSetDetune=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.de=A.detune};_onAudioSetDistortion=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.di=A.distortion};_onAudioSetPosition=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.e=A.position?void 0:Q.e,Q.p=A.position?GQ.serializeVector(A.position):void 0};_onAudioSetPlaybackRate=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.pr=A.playbackRate};_onAudioSetReferenceDistance=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.rd=A.referenceDistance};_onAudioSetVolume=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.v=A.volume};_onBlockTypeRegistryRegisterBlockType=(A)=>{let Q=this._createOrGetQueuedBlockTypeSync(A.blockType);Object.assign(Q,A.blockType.serialize())};_onChatSendBroadcastMessage=(A)=>{this._createOrGetQueuedChatMessagesSync().push({m:A.message,c:A.color,p:A.player?.id})};_onChatSendPlayerMessage=(A)=>{this._createOrGetQueuedChatMessagesSync(A.player).push({m:A.message,c:A.color})};_onChunkLatticeAddChunk=(A)=>{let Q=this._createOrGetQueuedChunkSync(A.chunk);Object.assign(Q,A.chunk.serialize()),Q.rm=void 0,this._spawnedChunks.add(Q.c.join(","))};_onChunkLatticeRemoveChunk=(A)=>{let Q=this._createOrGetQueuedChunkSync(A.chunk),B=Q.c.join(",");if(this._spawnedChunks.has(B))this._queuedChunkSyncs.broadcast.delete(B),this._spawnedChunks.delete(B);else Q.rm=!0};_onChunkLatticeSetBlock=(A)=>{let Q=this._createOrGetQueuedBlockSync(A.globalCoordinate);Q.i=A.blockTypeId,Q.r=A.blockRotation?.enumIndex};_onEntitySpawn=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Object.assign(Q,A.entity.serialize()),this._spawnedEntities.add(Q.i)};_onEntityDespawn=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);if(this._spawnedEntities.has(Q.i))this._queuedEntitySyncs.broadcast.delete(Q.i),this._spawnedEntities.delete(Q.i);else Q.rm=!0};_onEntityRemoveModelNodeOverride=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.rm=!0};_onEntitySetBlockTextureUri=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.bt=A.blockTextureUri};_onEntitySetEmissiveColor=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.ec=A.emissiveColor?GQ.serializeRgbColor(A.emissiveColor):void 0};_onEntitySetEmissiveIntensity=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.ei=A.emissiveIntensity};_onEntitySetModelScale=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.sv=A.modelScale?GQ.serializeVector(A.modelScale):void 0};_onEntitySetModelScaleInterpolationMs=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.si=A.interpolationMs};_onEntitySetModelTextureUri=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.mt=A.modelTextureUri};_onEntitySetOpacity=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.o=A.opacity};_onEntitySetOutline=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity,A.forPlayer);Q.ol=A.outline?GQ.serializeOutline(A.outline):void 0};_onEntitySetParent=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.pe=A.parent?A.parent.id:void 0,Q.pn=A.parentNodeName};_onEntitySetPositionInterpolationMs=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.pi=A.interpolationMs};_onEntitySetRotationInterpolationMs=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.ri=A.interpolationMs};_onEntitySetTintColor=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.t=A.tintColor?GQ.serializeRgbColor(A.tintColor):void 0};_onEntityUpdatePosition=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.p=[A.position.x,A.position.y,A.position.z]};_onEntityUpdateRotation=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.r=[A.rotation.x,A.rotation.y,A.rotation.z,A.rotation.w]};_onEntityModelAnimationPause=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.pa=!0,delete Q.p,delete Q.r,delete Q.s};_onEntityModelAnimationPlay=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.p=!0,delete Q.pa,delete Q.r,delete Q.s};_onEntityModelAnimationRestart=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.r=!0,delete Q.pa,delete Q.p,delete Q.s};_onEntityModelAnimationSetBlendMode=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.b=A.blendMode};_onEntityModelAnimationSetClampWhenFinished=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.c=A.clampWhenFinished};_onEntityModelAnimationSetFadesIn=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.fi=A.fadesIn};_onEntityModelAnimationSetFadesOut=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.fo=A.fadesOut};_onEntityModelAnimationSetLoopMode=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.l=A.loopMode};_onEntityModelAnimationSetPlaybackRate=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.pr=A.playbackRate};_onEntityModelAnimationSetWeight=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.w=A.weight};_onEntityModelAnimationStop=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.s=!0,delete Q.p,delete Q.pa,delete Q.r};_onEntityModelNodeOverrideSetEmissiveColor=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.ec=A.emissiveColor?GQ.serializeRgbColor(A.emissiveColor):void 0,delete Q.rm};_onEntityModelNodeOverrideSetEmissiveIntensity=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.ei=A.emissiveIntensity,delete Q.rm};_onEntityModelNodeOverrideSetHidden=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.h=A.hidden,delete Q.rm};_onEntityModelNodeOverrideSetLocalPosition=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.p=A.localPosition?GQ.serializeVector(A.localPosition):void 0,delete Q.rm};_onEntityModelNodeOverrideSetLocalPositionInterpolationMs=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.pi=A.interpolationMs,delete Q.rm};_onEntityModelNodeOverrideSetLocalRotation=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.r=A.localRotation?GQ.serializeQuaternion(A.localRotation):void 0,delete Q.rm};_onEntityModelNodeOverrideSetLocalRotationInterpolationMs=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.ri=A.interpolationMs,delete Q.rm};_onEntityModelNodeOverrideSetLocalScale=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.s=A.localScale?GQ.serializeVector(A.localScale):void 0,delete Q.rm};_onEntityModelNodeOverrideSetLocalScaleInterpolationMs=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.si=A.interpolationMs,delete Q.rm};_onParticleEmitterBurst=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.b=A.count};_onParticleEmitterDespawn=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.rm=!0};_onParticleEmitterSetAlphaTest=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.at=A.alphaTest};_onParticleEmitterSetAttachedToEntity=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.e=A.entity?A.entity.id:void 0,Q.p=A.entity?void 0:Q.p};_onParticleEmitterSetAttachedToEntityNodeName=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.en=A.attachedToEntityNodeName};_onParticleEmitterSetColorEnd=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.ce=A.colorEnd?GQ.serializeRgbColor(A.colorEnd):void 0};_onParticleEmitterSetColorEndVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.cev=A.colorEndVariance?GQ.serializeRgbColor(A.colorEndVariance):void 0};_onParticleEmitterSetColorIntensityEnd=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.cie=A.colorIntensityEnd};_onParticleEmitterSetColorIntensityEndVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.ciev=A.colorIntensityEndVariance};_onParticleEmitterSetColorIntensityStart=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.cis=A.colorIntensityStart};_onParticleEmitterSetColorIntensityStartVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.cisv=A.colorIntensityStartVariance};_onParticleEmitterSetColorStart=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.cs=A.colorStart?GQ.serializeRgbColor(A.colorStart):void 0};_onParticleEmitterSetColorStartVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.csv=A.colorStartVariance?GQ.serializeRgbColor(A.colorStartVariance):void 0};_onParticleEmitterSetGravity=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.g=A.gravity?GQ.serializeVector(A.gravity):void 0};_onParticleEmitterSetLifetime=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.l=A.lifetime};_onParticleEmitterSetLifetimeVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.lv=A.lifetimeVariance};_onParticleEmitterSetMaxParticles=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.mp=A.maxParticles};_onParticleEmitterSetOffset=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.o=A.offset?GQ.serializeVector(A.offset):void 0};_onParticleEmitterSetOpacityEnd=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.oe=A.opacityEnd};_onParticleEmitterSetOpacityEndVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.oev=A.opacityEndVariance};_onParticleEmitterSetOpacityStart=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.os=A.opacityStart};_onParticleEmitterSetOpacityStartVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.osv=A.opacityStartVariance};_onParticleEmitterSetPaused=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.pa=A.paused};_onParticleEmitterSetPosition=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.p=A.position?GQ.serializeVector(A.position):void 0,Q.e=A.position?void 0:Q.e,Q.en=A.position?void 0:Q.en};_onParticleEmitterSetPositionVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.pv=A.positionVariance?GQ.serializeVector(A.positionVariance):void 0};_onParticleEmitterSetRate=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.r=A.rate};_onParticleEmitterSetRateVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.rv=A.rateVariance};_onParticleEmitterSetSizeEnd=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.se=A.sizeEnd};_onParticleEmitterSetSizeEndVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.sev=A.sizeEndVariance};_onParticleEmitterSetSizeStart=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.ss=A.sizeStart};_onParticleEmitterSetSizeStartVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.ssv=A.sizeStartVariance};_onParticleEmitterSetTextureUri=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.tu=A.textureUri};_onParticleEmitterSetTransparent=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.t=A.transparent};_onParticleEmitterSetVelocity=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.v=A.velocity?GQ.serializeVector(A.velocity):void 0};_onParticleEmitterSetVelocityVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.vv=A.velocityVariance?GQ.serializeVector(A.velocityVariance):void 0};_onParticleEmitterSpawn=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Object.assign(Q,A.particleEmitter.serialize())};_onPlayerCameraFaceEntity=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.pl=GQ.serializeVector(A.entity.position),delete Q.et,delete Q.pt};_onPlayerCameraFacePosition=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.pl=A.position?GQ.serializeVector(A.position):void 0,delete Q.et,delete Q.pt};_onPlayerCameraSetAttachedToEntity=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.e=A.entity.id,delete Q.p,this._syncPlayerCameraAttachedEntityModel(A.playerCamera)};_onPlayerCameraSetAttachedToPosition=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.p=A.position?GQ.serializeVector(A.position):void 0,delete Q.e};_onPlayerCameraSetCollidesWithBlocks=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.cb=A.collidesWithBlocks};_onPlayerCameraSetFilmOffset=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.fo=A.filmOffset};_onPlayerCameraSetForwardOffset=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.ffo=A.forwardOffset};_onPlayerCameraSetFov=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.fv=A.fov};_onPlayerCameraSetMode=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.m=A.mode,this._syncPlayerCameraAttachedEntityModel(A.playerCamera)};_onPlayerCameraSetOffset=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.o=A.offset?GQ.serializeVector(A.offset):void 0};_onPlayerCameraSetShoulderAngle=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.sa=A.shoulderAngle};_onPlayerCameraSetTargetEntity=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.et=A.entity?A.entity.id:void 0,delete Q.pl,delete Q.pt};_onPlayerCameraSetTargetPosition=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.pt=A.position?GQ.serializeVector(A.position):void 0,delete Q.et,delete Q.pl};_onPlayerCameraSetZoom=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.z=A.zoom};_onPlayerCameraSetViewModel=(A)=>{this._syncPlayerCameraAttachedEntityModel(A.playerCamera)};_onPlayerCameraSetViewModelHiddenNodes=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.h=Array.from(A.viewModelHiddenNodes)};_onPlayerCameraSetViewModelPitchesWithCamera=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.mp=A.viewModelPitchesWithCamera};_onPlayerCameraSetViewModelShownNodes=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.s=Array.from(A.viewModelShownNodes)};_onPlayerCameraSetViewModelYawsWithCamera=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.my=A.viewModelYawsWithCamera};_onPlayerJoinedWorld=(A)=>{let{player:Q}=A;for(let C of this._world.audioManager.getAllAudios()){let X=this._createOrGetQueuedAudioSync(C,Q);this._assignUndefined(X,C.serialize())}for(let C of this._world.blockTypeRegistry.getAllBlockTypes()){let X=this._createOrGetQueuedBlockTypeSync(C,Q);this._assignUndefined(X,C.serialize())}let B=this._createOrGetQueuedCameraSync(Q);this._assignUndefined(B,Q.camera.serialize());for(let C of this._world.chunkLattice.getAllChunks()){let X=this._createOrGetQueuedChunkSync(C,Q);this._assignUndefined(X,C.serialize())}for(let C of this._world.entityManager.getAllEntities()){if(Q.camera.attachedToEntity===void 0&&C instanceof n1&&C.player===Q)Q.camera.setAttachedToEntity(C);let X=this._createOrGetQueuedEntitySync(C,Q);this._assignUndefined(X,C.serialize())}this._syncPlayerCameraAttachedEntityModel(Q.camera);for(let C of this._world.particleEmitterManager.getAllParticleEmitters()){let X=this._createOrGetQueuedParticleEmitterSync(C,Q);this._assignUndefined(X,C.serialize())}for(let C of e9.instance.getConnectedPlayers()){let X=this._createOrGetQueuedPlayerSync(C,Q);this._assignUndefined(X,C.serialize())}for(let C of this._world.sceneUIManager.getAllSceneUIs()){let X=this._createOrGetQueuedSceneUISync(C,Q);this._assignUndefined(X,C.serialize())}let Y=this._createOrGetQueuedWorldSync(this._world,Q);this._assignUndefined(Y,this._world.serialize());let J=this._createOrGetQueuedPlayerSync(Q);this._assignUndefined(J,Q.serialize())};_onPlayerLeftWorld=(A)=>{let Q=this._createOrGetQueuedPlayerSync(A.player);Q.rm=!0};_onPlayerReconnectedWorld=(A)=>{this._onPlayerJoinedWorld(A)};_onPlayerRequestNotificationPermission=(A)=>{this._createOrGetQueuedNotificationPermissionRequestSync(A.player)};_onPlayerRequestSync=(A)=>{A.player.connection.send([hQ.createPacket(hQ.outboundPackets.syncResponsePacketDefinition,{r:A.receivedAt,s:Date.now(),p:performance.now()-A.receivedAtMs,n:this._world.loop.nextTickMs},this._world.loop.currentTick)])};_onPlayerUIAppend=(A)=>{let Q=this._createOrGetQueuedUISync(A.playerUI.player);Q.ua??=[],Q.ua.push(A.htmlUri)};_onPlayerUIFreezePointerLock=(A)=>{let Q=this._createOrGetQueuedUISync(A.playerUI.player);Q.pf=A.freeze};_onPlayerUILoad=(A)=>{let Q=this._createOrGetQueuedUISync(A.playerUI.player);Q.u=A.htmlUri};_onPlayerUILockPointer=(A)=>{let Q=this._createOrGetQueuedUISync(A.playerUI.player);Q.p=A.lock};_onPlayerUISendData=(A)=>{this._createOrGetQueuedUIDatasSync(A.playerUI.player).push(A.data)};_onSceneUILoad=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);Object.assign(Q,A.sceneUI.serialize()),this._loadedSceneUIs.add(Q.i)};_onSceneUISetAttachedToEntity=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);Q.e=A.entity?A.entity.id:void 0,Q.p=A.entity?void 0:Q.p};_onSceneUISetOffset=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);Q.o=A.offset?GQ.serializeVector(A.offset):void 0};_onSceneUISetPosition=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);Q.p=A.position?GQ.serializeVector(A.position):void 0,Q.e=A.position?void 0:Q.e};_onSceneUISetState=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);Q.s=A.state};_onSceneUISetViewDistance=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);Q.v=A.viewDistance};_onSceneUIUnload=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);if(this._loadedSceneUIs.has(Q.i))this._queuedSceneUISyncs.broadcast.delete(Q.i),this._loadedSceneUIs.delete(Q.i);else Q.rm=!0};_onSimulationDebugRaycast=(A)=>{this._createOrGetDebugRaycastsSync().push(GQ.serializePhysicsDebugRaycast(A))};_onSimulationDebugRender=(A)=>{let Q=this._createOrGetDebugRenderSync();Q.v=Array.from(A.vertices),Q.c=Array.from(A.colors)};_onWorldSetAmbientLightColor=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.ac=GQ.serializeRgbColor(A.color)};_onWorldSetAmbientLightIntensity=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.ai=A.intensity};_onWorldSetDirectionalLightColor=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.dc=GQ.serializeRgbColor(A.color)};_onWorldSetDirectionalLightIntensity=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.di=A.intensity};_onWorldSetDirectionalLightPosition=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.dp=GQ.serializeVector(A.position)};_onWorldSetFogColor=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.fc=GQ.serializeRgbColor(A.color)};_onWorldSetFogFar=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.ff=A.far};_onWorldSetFogNear=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.fn=A.near};_onWorldSetSkyboxIntensity=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.si=A.intensity};_onWorldSetSkyboxUri=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.s=A.uri};_assignUndefined(A,Q){for(let B in Q)if(A[B]===void 0)A[B]=Q[B];return A}_createAudioSync=(A)=>({i:A.id});_createOrGetQueuedAudioSync(A,Q){if(A.id===void 0)n.fatalError("NetworkSynchronizer._createOrGetQueuedAudioSync(): Audio has no id!");return this._createOrGetQueuedSync(this._queuedAudioSyncs,A.id,this._createAudioSync,A,Q)}_createBlockSync=(A)=>({i:0,c:[A.x,A.y,A.z]});_createOrGetQueuedBlockSync(A,Q){let B=`${A.x},${A.y},${A.z}`;return this._createOrGetQueuedSync(this._queuedBlockSyncs,B,this._createBlockSync,A,Q)}_createBlockTypeSync=(A)=>({i:A.id});_createOrGetQueuedBlockTypeSync(A,Q){return this._createOrGetQueuedSync(this._queuedBlockTypeSyncs,A.id,this._createBlockTypeSync,A,Q)}_createCameraSync=()=>({});_createOrGetQueuedCameraSync(A){return this._createOrGetQueuedSingletonSync(this._queuedCameraSyncs,this._createCameraSync,void 0,A)}_createChatMessagesSync=()=>[];_createOrGetQueuedChatMessagesSync(A){return this._createOrGetQueuedSingletonSync(this._queuedChatMessagesSyncs,this._createChatMessagesSync,void 0,A)}_createChunkSync=(A)=>({c:[A.originCoordinate.x,A.originCoordinate.y,A.originCoordinate.z]});_createOrGetQueuedChunkSync(A,Q){if(!A.originCoordinate)n.fatalError("NetworkSynchronizer._createOrGetQueuedChunkSync(): Chunk has no origin coordinate!");let B=`${A.originCoordinate.x},${A.originCoordinate.y},${A.originCoordinate.z}`;return this._createOrGetQueuedSync(this._queuedChunkSyncs,B,this._createChunkSync,A,Q)}_createDebugRaycastsSync=()=>[];_createOrGetDebugRaycastsSync(A){return this._createOrGetQueuedSingletonSync(this._queuedDebugRaycastsSyncs,this._createDebugRaycastsSync,void 0,A)}_createDebugRenderSync=()=>({v:[],c:[]});_createOrGetDebugRenderSync(A){return this._createOrGetQueuedSingletonSync(this._queuedDebugRenderSyncs,this._createDebugRenderSync,void 0,A)}_createEntitySync=(A)=>({i:A.id});_createOrGetQueuedEntitySync(A,Q){if(A.id===void 0)n.fatalError("NetworkSynchronizer._createOrGetQueuedEntitySync(): Entity has no id!");return this._createOrGetQueuedSync(this._queuedEntitySyncs,A.id,this._createEntitySync,A,Q)}_createEntityModelAnimationSync=(A)=>({n:A.name});_createOrGetQueuedEntityModelAnimationSync(A,Q){if(A.entity.id===void 0)n.fatalError("NetworkSynchronizer._createOrGetQueuedEntityModelAnimationSync(): EntityModelAnimation entity has no id!");let B=this._createOrGetQueuedEntitySync(A.entity,Q);B.ma??=[];let Y=B.ma.find((J)=>J.n===A.name);if(!Y)Y=this._createEntityModelAnimationSync(A),B.ma.push(Y);return Y}_createEntityModelNodeOverrideSync=(A)=>({n:A.nameMatch});_createOrGetQueuedEntityModelNodeOverrideSync(A,Q){if(A.entity.id===void 0)n.fatalError("NetworkSynchronizer._createOrGetQueuedEntityModelNodeOverrideSync(): EntityModelNodeOverride entity has no id!");let B=this._createOrGetQueuedEntitySync(A.entity,Q);B.mo??=[];let Y=B.mo.find((J)=>J.n===A.nameMatch);if(!Y)Y=this._createEntityModelNodeOverrideSync(A),B.mo.push(Y);return Y}_createNotificationPermissionRequestSync=()=>null;_createOrGetQueuedNotificationPermissionRequestSync(A){return this._createOrGetQueuedSingletonSync(this._queuedNotificationPermissionRequestSyncs,this._createNotificationPermissionRequestSync,void 0,A)}_createParticleEmitterSync=(A)=>({i:A.id});_createOrGetQueuedParticleEmitterSync(A,Q){if(A.id===void 0)n.fatalError("NetworkSynchronizer._createOrGetQueuedParticleEmitterSync(): ParticleEmitter has no id!");return this._createOrGetQueuedSync(this._queuedParticleEmitterSyncs,A.id,this._createParticleEmitterSync,A,Q)}_createPlayerSync=(A)=>({i:A.id});_createOrGetQueuedPlayerSync(A,Q){return this._createOrGetQueuedSync(this._queuedPlayerSyncs,A.id,this._createPlayerSync,A,Q)}_createSceneUISync=(A)=>({i:A.id});_createOrGetQueuedSceneUISync(A,Q){if(A.id===void 0)n.fatalError("NetworkSynchronizer._createOrGetQueuedSceneUISync(): SceneUI has no id!");return this._createOrGetQueuedSync(this._queuedSceneUISyncs,A.id,this._createSceneUISync,A,Q)}_createUISync=()=>({});_createOrGetQueuedUISync(A){return this._createOrGetQueuedSingletonSync(this._queuedUISyncs,this._createUISync,void 0,A)}_createUIDatasSync=()=>[];_createOrGetQueuedUIDatasSync(A){return this._createOrGetQueuedSingletonSync(this._queuedUIDatasSyncs,this._createUIDatasSync,void 0,A)}_createWorldSync=(A)=>({i:A.id});_createOrGetQueuedWorldSync(A,Q){if(A.id!==this._world.id)n.fatalError("NetworkSynchronizer._createOrGetQueuedWorldSync(): World does not match this network synchronizer world!");return this._createOrGetQueuedSingletonSync(this._queuedWorldSyncs,this._createWorldSync,A,Q)}_createOrGetQueuedSync(A,Q,B,Y,J){let C,X;if(J){if(X=A.perPlayer.get(J),!X)X=new bB,A.perPlayer.set(J,X);if(!this._outboundPerPlayerReliablePackets.has(J))this._outboundPerPlayerReliablePackets.set(J,[])}else X=A.broadcast;if(C=X.get(Q),C===void 0)C=B(Y),X.set(Q,C);return C}_createOrGetQueuedSingletonSync(A,Q,B,Y){let J=Y?A.perPlayer.get(Y):A.broadcast;if(J===void 0)if(J=Q(B),Y){if(A.perPlayer.set(Y,J),!this._outboundPerPlayerReliablePackets.has(Y))this._outboundPerPlayerReliablePackets.set(Y,[])}else A.broadcast=J;return J}_clearSyncQueue(A){if(A.broadcast.size>0)A.broadcast.clear();if(A.perPlayer.size>0)A.perPlayer.clear()}_clearSingletonSyncQueue(A){if(A.broadcast!==void 0)A.broadcast=void 0;if(A.perPlayer.size>0)A.perPlayer.clear()}_collectSingletonSyncToOutboundPackets(A,Q){if(A.broadcast!==void 0){let B=hQ.createPacket(Q,A.broadcast,this._world.loop.currentTick);this._outboundSharedReliablePackets.push(B);for(let Y of this._outboundPerPlayerReliablePackets.valuesArray)Y.push(B)}if(A.perPlayer.size>0)for(let[B,Y]of A.perPlayer.entries())this._outboundPerPlayerReliablePackets.get(B)?.push(hQ.createPacket(Q,Y,this._world.loop.currentTick))}_collectSyncToOutboundPackets(A,Q){if(A.broadcast.size>0){let B=hQ.createPacket(Q,A.broadcast.valuesArray,this._world.loop.currentTick);this._outboundSharedReliablePackets.push(B);for(let Y of this._outboundPerPlayerReliablePackets.valuesArray)Y.push(B)}if(A.perPlayer.size>0)for(let[B,Y]of A.perPlayer.entries())this._outboundPerPlayerReliablePackets.get(B)?.push(hQ.createPacket(Q,Y.valuesArray,this._world.loop.currentTick))}_syncPlayerCameraAttachedEntityModel(A){let Q=A.attachedToEntity,B=Q&&(A.mode===0?A.viewModelUri:Q.modelUri);if(Q&&B)this._createOrGetQueuedEntitySync(Q,A.player).m=B}}class oq{_particleEmitters=new Map;_nextParticleEmitterId=1;_world;constructor(A){this._world=A}get world(){return this._world}despawnEntityAttachedParticleEmitters(A){this.getAllEntityAttachedParticleEmitters(A).forEach((Q)=>{Q.despawn()})}getAllParticleEmitters(){return Array.from(this._particleEmitters.values())}getAllEntityAttachedParticleEmitters(A){return this.getAllParticleEmitters().filter((Q)=>Q.attachedToEntity===A)}registerParticleEmitter(A){if(A.id!==void 0)return A.id;let Q=this._nextParticleEmitterId;return this._particleEmitters.set(Q,A),this._nextParticleEmitterId++,Q}unregisterParticleEmitter(A){if(A.id===void 0)return;this._particleEmitters.delete(A.id)}}class tq{_sceneUIs=new Map;_nextSceneUIId=1;_world;constructor(A){this._world=A}get world(){return this._world}getAllSceneUIs(){return Array.from(this._sceneUIs.values())}getAllEntityAttachedSceneUIs(A){return this.getAllSceneUIs().filter((Q)=>Q.attachedToEntity===A)}getSceneUIById(A){return this._sceneUIs.get(A)}registerSceneUI(A){if(A.id!==void 0)return A.id;let Q=this._nextSceneUIId;return this._sceneUIs.set(Q,A),this._nextSceneUIId++,Q}unloadEntityAttachedSceneUIs(A){this.getAllEntityAttachedSceneUIs(A).forEach((Q)=>{Q.unload()})}unregisterSceneUI(A){if(A.id===void 0)return;this._sceneUIs.delete(A.id)}}var Xb0=2,Gb0=3;class eq{_accumulatorMs=0;_targetTicksPerSecond;_fixedTimestepMs;_fixedTimestepS;_maxAccumulatorMs;_nextTickMs=0;_lastLoopTimeMs=0;_tickFunction;_tickErrorCallback;_tickHandle=null;constructor(A,Q,B){this._targetTicksPerSecond=A,this._fixedTimestepS=Math.fround(1/A),this._fixedTimestepMs=Math.fround(this._fixedTimestepS*1000),this._maxAccumulatorMs=this._fixedTimestepMs*Gb0,this._tickFunction=Q,this._tickErrorCallback=B}get targetTicksPerSecond(){return this._targetTicksPerSecond}get fixedTimestepMs(){return this._fixedTimestepMs}get fixedTimestepS(){return this._fixedTimestepS}get isStarted(){return!!this._tickHandle}get nextTickMs(){return this._nextTickMs}start(){if(this._tickHandle)return;this._lastLoopTimeMs=performance.now();let A=()=>{let Q=performance.now(),B=Q-this._lastLoopTimeMs;if(this._lastLoopTimeMs=Q,this._accumulatorMs+=B,this._accumulatorMs>this._maxAccumulatorMs)this._accumulatorMs=this._maxAccumulatorMs;if(this._accumulatorMs>=this._fixedTimestepMs)o0.startSpan({operation:"ticker_tick"},()=>{let Y=0;while(this._accumulatorMs>=this._fixedTimestepMs&&Y{C.START="WORLD_LOOP.START";C.STOP="WORLD_LOOP.STOP";C.TICK_START="WORLD_LOOP.TICK_START";C.TICK_END="WORLD_LOOP.TICK_END";C.TICK_ERROR="WORLD_LOOP.TICK_ERROR"})(NTQ||={});class AM extends BQ{_currentTick=0;_ticker;_world;constructor(A,Q=rq){super();this._ticker=new eq(Q,this._tick,this._onTickError),this._world=A}get currentTick(){return this._currentTick}get isStarted(){return this._ticker.isStarted}get nextTickMs(){return this._ticker.nextTickMs}get timestepS(){return this._ticker.fixedTimestepS}get world(){return this._world}start(){this._ticker.start(),this.emitWithWorld(this._world,"WORLD_LOOP.START",{worldLoop:this})}stop(){this._ticker.stop(),this.emitWithWorld(this._world,"WORLD_LOOP.STOP",{worldLoop:this})}_tick=(A)=>{this.emitWithWorld(this._world,"WORLD_LOOP.TICK_START",{worldLoop:this,tickDeltaMs:A});let Q=performance.now(),B=cY.instance,Y=B.isEnabled;if(Y)B.beginTick(this._currentTick,this._world.entityManager.entityCount,e9.instance.playerCount);if(o0.startSpan({operation:"world_tick",attributes:{serverPlayerCount:e9.instance.playerCount,targetTickRate:this._ticker.targetTicksPerSecond,targetTickRateMs:this._ticker.fixedTimestepMs,worldId:this._world.id,worldName:this._world.name,worldChunkCount:this._world.chunkLattice.chunkCount,worldEntityCount:this._world.entityManager.entityCount,worldLoopTick:this._currentTick}},()=>{let J;if(J=Y?performance.now():0,o0.startSpan({operation:"entities_tick"},()=>this._world.entityManager.tickEntities(A)),Y)B.recordPhase("entities_tick",performance.now()-J);if(J=Y?performance.now():0,o0.startSpan({operation:"simulation_step"},()=>this._world.simulation.step(A)),Y)B.recordPhase("simulation_step",performance.now()-J);if(J=Y?performance.now():0,o0.startSpan({operation:"entities_emit_updates"},()=>this._world.entityManager.checkAndEmitUpdates()),Y)B.recordPhase("entities_emit_updates",performance.now()-J);if(this._world.networkSynchronizer.shouldSynchronize()){if(J=Y?performance.now():0,o0.startSpan({operation:"network_synchronize"},()=>this._world.networkSynchronizer.synchronize()),Y)B.recordPhase("network_synchronize",performance.now()-J)}}),Y)B.endTick();this._currentTick++,this.emitWithWorld(this._world,"WORLD_LOOP.TICK_END",{worldLoop:this,tickDurationMs:performance.now()-Q})};_onTickError=(A)=>{n.error(`WorldLoop._onTickError(): Error: ${A}`),this.emitWithWorld(this._world,"WORLD_LOOP.TICK_ERROR",{worldLoop:this,error:A})}}var ko;(($)=>{$.SET_AMBIENT_LIGHT_COLOR="WORLD.SET_AMBIENT_LIGHT_COLOR";$.SET_AMBIENT_LIGHT_INTENSITY="WORLD.SET_AMBIENT_LIGHT_INTENSITY";$.SET_DIRECTIONAL_LIGHT_COLOR="WORLD.SET_DIRECTIONAL_LIGHT_COLOR";$.SET_DIRECTIONAL_LIGHT_INTENSITY="WORLD.SET_DIRECTIONAL_LIGHT_INTENSITY";$.SET_DIRECTIONAL_LIGHT_POSITION="WORLD.SET_DIRECTIONAL_LIGHT_POSITION";$.SET_FOG_COLOR="WORLD.SET_FOG_COLOR";$.SET_FOG_FAR="WORLD.SET_FOG_FAR";$.SET_FOG_NEAR="WORLD.SET_FOG_NEAR";$.SET_SKYBOX_INTENSITY="WORLD.SET_SKYBOX_INTENSITY";$.SET_SKYBOX_URI="WORLD.SET_SKYBOX_URI";$.START="WORLD.START";$.STOP="WORLD.STOP"})(ko||={});class QM extends BQ{_id;_ambientLightColor;_ambientLightIntensity;_audioManager;_blockTypeRegistry;_chatManager;_chunkLattice;_directionalLightColor;_directionalLightIntensity;_directionalLightPosition;_entityManager;_fogColor;_fogFar;_fogNear;_loop;_name;_networkSynchronizer;_particleEmitterManager;_sceneUIManager;_simulation;_skyboxIntensity;_skyboxUri;_tag;constructor(A){super();if(this._id=A.id,this._ambientLightColor=A.ambientLightColor??{r:255,g:255,b:255},this._ambientLightIntensity=A.ambientLightIntensity??1,this._directionalLightColor=A.directionalLightColor??{r:255,g:255,b:255},this._directionalLightIntensity=A.directionalLightIntensity??3,this._directionalLightPosition=A.directionalLightPosition??{x:100,y:150,z:100},this._fogColor=A.fogColor,this._fogFar=A.fogFar??550,this._fogNear=A.fogNear??500,this._name=A.name,this._skyboxIntensity=A.skyboxIntensity??1,this._skyboxUri=A.skyboxUri,this._tag=A.tag,this._audioManager=new oH(this),this._blockTypeRegistry=new tH(this),this._chatManager=new fD(this),this._chunkLattice=new mD(this),this._entityManager=new cD(this),this._loop=new AM(this,A.tickRate),this._networkSynchronizer=new Dk(this),this._particleEmitterManager=new oq(this),this._sceneUIManager=new tq(this),this._simulation=new aq(this,A.tickRate,A.gravity),A.map)this.loadMap(A.map)}get id(){return this._id}get ambientLightColor(){return this._ambientLightColor}get ambientLightIntensity(){return this._ambientLightIntensity}get blockTypeRegistry(){return this._blockTypeRegistry}get chatManager(){return this._chatManager}get chunkLattice(){return this._chunkLattice}get directionalLightColor(){return this._directionalLightColor}get directionalLightIntensity(){return this._directionalLightIntensity}get directionalLightPosition(){return this._directionalLightPosition}get entityManager(){return this._entityManager}get fogColor(){return this._fogColor}get fogFar(){return this._fogFar}get fogNear(){return this._fogNear}get loop(){return this._loop}get name(){return this._name}get networkSynchronizer(){return this._networkSynchronizer}get particleEmitterManager(){return this._particleEmitterManager}get sceneUIManager(){return this._sceneUIManager}get simulation(){return this._simulation}get skyboxIntensity(){return this._skyboxIntensity}get skyboxUri(){return this._skyboxUri}get audioManager(){return this._audioManager}get tag(){return this._tag}loadMap(A){this.chunkLattice.clear();let Q=Object.values(kX).sort((B,Y)=>B.enumIndex-Y.enumIndex);if(A.blockTypes)for(let B of A.blockTypes)this.blockTypeRegistry.registerGenericBlockType({id:B.id,isLiquid:B.isLiquid,lightLevel:B.lightLevel,name:B.name,textureUri:B.textureUri,customColliderOptions:B.customColliderOptions});if(A.blocks){let B=A.blocks,Y=function*(){for(let J in B){let C=B[J],X=typeof C==="number"?C:C.i,G=typeof C==="number"?void 0:C.r,F=J.indexOf(","),W=J.indexOf(",",F+1);yield{globalCoordinate:{x:Number(J.slice(0,F)),y:Number(J.slice(F+1,W)),z:Number(J.slice(W+1))},blockTypeId:X,blockRotation:G!==void 0?Q[G]:void 0}}};this.chunkLattice.initializeBlockEntries(Y())}if(A.entities)for(let B in A.entities){let Y=A.entities[B],J=B.indexOf(","),C=B.indexOf(",",J+1),X=Number(B.slice(0,J)),G=Number(B.slice(J+1,C)),F=Number(B.slice(C+1));new R0({isEnvironmental:!0,...Y}).spawn(this,{x:X,y:G,z:F})}}setAmbientLightColor(A){this._ambientLightColor=A,this.emit("WORLD.SET_AMBIENT_LIGHT_COLOR",{world:this,color:A})}setAmbientLightIntensity(A){this._ambientLightIntensity=A,this.emit("WORLD.SET_AMBIENT_LIGHT_INTENSITY",{world:this,intensity:A})}setDirectionalLightColor(A){this._directionalLightColor=A,this.emit("WORLD.SET_DIRECTIONAL_LIGHT_COLOR",{world:this,color:A})}setDirectionalLightIntensity(A){this._directionalLightIntensity=A,this.emit("WORLD.SET_DIRECTIONAL_LIGHT_INTENSITY",{world:this,intensity:A})}setDirectionalLightPosition(A){this._directionalLightPosition=A,this.emit("WORLD.SET_DIRECTIONAL_LIGHT_POSITION",{world:this,position:A})}setFogColor(A){this._fogColor=A,this.emit("WORLD.SET_FOG_COLOR",{world:this,color:A})}setFogFar(A){this._fogFar=A,this.emit("WORLD.SET_FOG_FAR",{world:this,far:A})}setFogNear(A){this._fogNear=A,this.emit("WORLD.SET_FOG_NEAR",{world:this,near:A})}setSkyboxIntensity(A){this._skyboxIntensity=A,this.emit("WORLD.SET_SKYBOX_INTENSITY",{world:this,intensity:A})}setSkyboxUri(A){this._skyboxUri=A,this.emit("WORLD.SET_SKYBOX_URI",{world:this,uri:A})}start(){if(this._loop.isStarted)return;this._loop.start(),this.emit("WORLD.START",{world:this,startedAtMs:Date.now()})}stop(){if(!this._loop.isStarted)return;this._loop.stop(),this.emit("WORLD.STOP",{world:this,stoppedAtMs:Date.now()})}serialize(){return GQ.serializeWorld(this)}}var LTQ;((Q)=>Q.WORLD_CREATED="WORLD_MANAGER.WORLD_CREATED")(LTQ||={});class FW{static instance=new FW;_defaultWorld;_nextWorldId=1;_worlds=new Map;createWorld(A){let Q=new QM({...A,id:this._nextWorldId++});return Q.start(),this._worlds.set(Q.id,Q),BQ.globalInstance.emit("WORLD_MANAGER.WORLD_CREATED",{world:Q}),Q}getAllWorlds(){return Array.from(this._worlds.values())}getDefaultWorld(){return this._defaultWorld??=this.createWorld({name:"Default World",skyboxUri:"skyboxes/partly-cloudy"}),this._defaultWorld}getWorldsByTag(A){let Q=[];return this._worlds.forEach((B)=>{if(B.tag===A)Q.push(B)}),Q}getWorld(A){return this._worlds.get(A)}setDefaultWorld(A){this._defaultWorld=A}}var qTQ;((Y)=>{Y.PLAYER_CONNECTED="PLAYER_MANAGER.PLAYER_CONNECTED";Y.PLAYER_DISCONNECTED="PLAYER_MANAGER.PLAYER_DISCONNECTED";Y.PLAYER_RECONNECTED="PLAYER_MANAGER.PLAYER_RECONNECTED"})(qTQ||={});class e9{static instance=new e9;worldSelectionHandler;_connectionPlayers=new Map;constructor(){BQ.globalInstance.on("CONNECTION.OPENED",({connection:A,session:Q})=>{this._onConnectionOpened(A,Q)}),BQ.globalInstance.on("CONNECTION.DISCONNECTED",({connection:A})=>{this._onConnectionDisconnected(A)}),BQ.globalInstance.on("CONNECTION.RECONNECTED",({connection:A})=>{this._onConnectionReconnected(A)}),BQ.globalInstance.on("CONNECTION.CLOSED",({connection:A})=>{this._onConnectionClosed(A)})}get playerCount(){return this._connectionPlayers.size}getConnectedPlayers(){return Array.from(this._connectionPlayers.values())}getConnectedPlayersByWorld(A){return this.getConnectedPlayers().filter((Q)=>Q.world===A)}getConnectedPlayerByUsername(A){return Array.from(this._connectionPlayers.values()).find((Q)=>{return Q.username.toLowerCase()===A.toLowerCase()})}async _onConnectionOpened(A,Q){let B=new qE(A,Q);await B.loadInitialPersistedData(),BQ.globalInstance.emit("PLAYER_MANAGER.PLAYER_CONNECTED",{player:B,connectionParams:A.initialConnectionParams});let Y=await this.worldSelectionHandler?.(B);B.joinWorld(Y??FW.instance.getDefaultWorld()),this._connectionPlayers.set(A,B)}_onConnectionDisconnected(A){let Q=this._connectionPlayers.get(A);if(Q)Q.resetInputs(),Q.camera.reset()}_onConnectionReconnected(A){let Q=this._connectionPlayers.get(A);if(Q)Q.reconnected(),BQ.globalInstance.emit("PLAYER_MANAGER.PLAYER_RECONNECTED",{player:Q});else n.warning(`PlayerManager._onConnectionReconnected(): Connection ${A.id} not in the PlayerManager._connectionPlayers map.`)}_onConnectionClosed(A){let Q=this._connectionPlayers.get(A);if(Q){if(Q.disconnect(),this._connectionPlayers.delete(A),!A.isDuplicate)m7.instance.unloadPlayerData(Q).catch((B)=>{n.warning(`PlayerManager._onConnectionClosed(): Failed to unload player data for player ${Q.id}. Error: ${B}`)});BQ.globalInstance.emit("PLAYER_MANAGER.PLAYER_DISCONNECTED",{player:Q})}else n.warning(`PlayerManager._onConnectionClosed(): Connection ${A.id} not in the PlayerManager._connectionPlayers map.`)}}import{randomBytes as Wb0}from"crypto";import{Http3Server as Zb0}from"@fails-components/webtransport";class BM extends BQ{static instance=new BM;_connectionIdConnections=new Map;_userIdConnections=new Map;_wss;_wts;constructor(){super();this._wss=new Mm.default({noServer:!0}),this._wss.on("connection",(A,Q)=>this._onConnection(A,void 0,Q.connectionId,Q.connectionParams,Q.session)),this._wts=new Zb0({port:Hk,host:"0.0.0.0",secret:Wb0(32).toString("hex"),cert:Vk,privKey:Ik,defaultDatagramsReadableMode:"bytes",initialStreamFlowControlWindow:1048576,streamShouldAutoTuneReceiveWindow:!0,streamFlowControlWindowSizeLimit:6291456,initialSessionFlowControlWindow:2097152,sessionShouldAutoTuneReceiveWindow:!0,sessionFlowControlWindowSizeLimit:15728640}),this._wts.setRequestCallback(this._onWebTransportRequest),this._startWebTransport().catch((A)=>{n.error(`Socket: WebTransport server failed to start or crashed while listening for sessions. Error: ${A}`)}),BQ.globalInstance.on("WEBSERVER.UPGRADE",async({req:A,socket:Q,head:B})=>{Q.on("error",()=>{}),await this._authorizeAndConnectWebsocket(A,Q,B)})}async _authorizeAndConnectWebsocket(A,Q,B){let Y=await this._authorizeConnection(A.url??"");if(Y.error){Q.end();return}A.connectionId=Y.connectionId,A.connectionParams=Y.connectionParams,A.session=Y.session,Q.setNoDelay(!0),this._wss.handleUpgrade(A,Q,B,(J)=>{if(J.readyState!==NE.default.OPEN)J.once("open",()=>this._wss.emit("connection",J,A));else this._wss.emit("connection",J,A)})}async _authorizeConnection(A){let Q=A.includes("?")?A.slice(A.indexOf("?")):"",B=new URLSearchParams(Q),Y=B.get("connectionId")??void 0,J=B.get("sessionToken")??"";if(Y&&this._isValidConnectionId(Y))return{connectionId:Y,connectionParams:B};else{let C=await N5.instance.getPlayerSession(J);if(C?.error)return{error:C.error};else if(C)return{connectionParams:B,session:C}}return{connectionParams:B}}_isValidConnectionId(A){return this._connectionIdConnections.has(A)}_onConnection=(A,Q,B,Y,J)=>{let C=J?.user.id,X=B&&this._connectionIdConnections.get(B),G=C&&this._userIdConnections.get(C);if(!X&&G)G.killDuplicateConnection();if(X){if(A)X.bindWs(A);if(Q)X.bindWt(Q).catch((F)=>{n.error(`Socket._onConnection(): WebTransport binding failed. Error: ${F}`)})}else{let F=new U1(A,Q,Y,J);if(F.on("CONNECTION.CLOSED",()=>{if(this._connectionIdConnections.delete(F.id),C&&this._userIdConnections.get(C)===F)this._userIdConnections.delete(C)}),this._connectionIdConnections.set(F.id,F),C)this._userIdConnections.set(C,F)}};_onWebTransportRequest=async({header:A})=>{let{connectionId:Q,connectionParams:B,session:Y,error:J}=await this._authorizeConnection(A[":path"]??"");return{status:J?401:200,path:"/",userData:{connectionId:Q,connectionParams:B,session:Y}}};async _startWebTransport(){this._wts.startServer();for await(let A of this._wts.sessionStream("/"))try{let{connectionId:Q,connectionParams:B,session:Y}=A.userData;this._onConnection(void 0,A,Q,B,Y)}catch(Q){n.error(`Socket._startWebTransport(): WebTransport connection failed. Error: ${Q}`)}}}var MTQ;((B)=>{B.START="GAMESERVER.START";B.STOP="GAMESERVER.STOP"})(MTQ||={});function $b0(A){FB.init().then(()=>{return WW.instance.blockTextureRegistry.preloadAtlas()}).then(()=>{return WW.instance.modelRegistry.preloadModels()}).then(()=>{let Q;if(A.length>0)Q=A(WW.instance.worldManager.getDefaultWorld());else Q=A();return Promise.resolve(Q)}).then(()=>{WW.instance.start()}).catch((Q)=>{n.fatalError(`Failed to initialize the game engine, exiting. Error: ${Q}`)})}class WW{static _instance;_blockTextureRegistry=P7.instance;_modelRegistry=TY.instance;_playerManager=e9.instance;_socket=BM.instance;_worldManager=FW.instance;_webServer=zV.instance;constructor(){}static get instance(){if(!this._instance)this._instance=new WW;return this._instance}get blockTextureRegistry(){return this._blockTextureRegistry}get modelRegistry(){return this._modelRegistry}get playerManager(){return this._playerManager}get socket(){return this._socket}get webServer(){return this._webServer}get worldManager(){return this._worldManager}start(){if(BQ.globalInstance.emit("GAMESERVER.START",{startedAtMs:performance.now()}),this._webServer.start(),process.env.NODE_ENV!=="production")console.log("---"),console.log("\uD83D\uDFE2 Server Running: You can test & play it at: https://hytopia.com/play");n.enableCrashProtection()}}var rY=qA(X4(),1);class G4 extends Float32Array{constructor(A,Q,B,Y){super([A,Q,B,Y])}get determinant(){return rY.mat2.determinant(this)}get frobeniusNorm(){return rY.mat2.frob(this)}static create(){let A=new G4(0,0,0,0);return rY.mat2.identity(A),A}static fromRotation(A){let Q=G4.create();return rY.mat2.fromRotation(Q,A),Q}static fromScaling(A){let Q=G4.create();return rY.mat2.fromScaling(Q,A),Q}add(A){return rY.mat2.add(this,this,A),this}adjoint(){return rY.mat2.adjoint(this,this),this}clone(){return new G4(this[0],this[1],this[2],this[3])}copy(A){return rY.mat2.copy(this,A),this}equals(A){return rY.mat2.equals(this,A)}exactEquals(A){return rY.mat2.exactEquals(this,A)}identity(){return rY.mat2.identity(this),this}invert(){return rY.mat2.invert(this,this),this}multiply(A){return rY.mat2.mul(this,this,A),this}multiplyScalar(A){return rY.mat2.multiplyScalar(this,this,A),this}rotate(A){return rY.mat2.rotate(this,this,A),this}subtract(A){return rY.mat2.sub(this,this,A),this}toString(){return`[${this[0]},${this[1]}][${this[2]},${this[3]}]`}transpose(){return rY.mat2.transpose(this,this),this}}var t0=qA(X4(),1);class k6 extends Float32Array{constructor(A,Q,B,Y,J,C,X,G,F){super([A,Q,B,Y,J,C,X,G,F])}get determinant(){return t0.mat3.determinant(this)}get frobeniusNorm(){return t0.mat3.frob(this)}static create(){let A=new k6(0,0,0,0,0,0,0,0,0);return t0.mat3.identity(A),A}static fromMatrix4(A){let Q=k6.create();return t0.mat3.fromMat4(Q,A),Q}static fromQuaternion(A){let Q=k6.create();return t0.mat3.fromQuat(Q,A),Q}static fromRotation(A){let Q=k6.create();return t0.mat3.fromRotation(Q,A),Q}static fromScaling(A){let Q=k6.create();return t0.mat3.fromScaling(Q,A),Q}static fromTranslation(A){let Q=k6.create();return t0.mat3.fromTranslation(Q,A),Q}add(A){return t0.mat3.add(this,this,A),this}adjoint(){return t0.mat3.adjoint(this,this),this}clone(){return new k6(this[0],this[1],this[2],this[3],this[4],this[5],this[6],this[7],this[8])}copy(A){return t0.mat3.copy(this,A),this}equals(A){return t0.mat3.equals(this,A)}exactEquals(A){return t0.mat3.exactEquals(this,A)}identity(){return t0.mat3.identity(this),this}invert(){return t0.mat3.invert(this,this),this}multiply(A){return t0.mat3.mul(this,this,A),this}multiplyScalar(A){return t0.mat3.multiplyScalar(this,this,A),this}transformVector(A){return A.transformMatrix3(this)}projection(A,Q){return t0.mat3.projection(this,A,Q),this}rotate(A){return t0.mat3.rotate(this,this,A),this}subtract(A){return t0.mat3.sub(this,this,A),this}toString(){return`[${this[0]},${this[1]},${this[2]}][${this[3]},${this[4]},${this[5]}][${this[6]},${this[7]},${this[8]}]`}transpose(){return t0.mat3.transpose(this,this),this}}var EB=qA(X4(),1);class q9 extends Float32Array{constructor(A,Q,B,Y,J,C,X,G,F,W,Z,U,$,E,K,I){super([A,Q,B,Y,J,C,X,G,F,W,Z,U,$,E,K,I])}get determinant(){return EB.mat4.determinant(this)}get frobeniusNorm(){return EB.mat4.frob(this)}static create(){let A=new q9(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);return EB.mat4.identity(A),A}static fromQuaternion(A){let Q=q9.create();return EB.mat4.fromQuat(Q,A),Q}static fromRotation(A,Q){let B=q9.create();return EB.mat4.fromRotation(B,A,Q),B}static fromRotationTranslation(A,Q){let B=q9.create();return EB.mat4.fromRotationTranslation(B,A,Q),B}static fromRotationTranslationScale(A,Q,B){let Y=q9.create();return EB.mat4.fromRotationTranslationScale(Y,A,Q,B),Y}static fromRotationTranslationScaleOrigin(A,Q,B,Y){let J=q9.create();return EB.mat4.fromRotationTranslationScaleOrigin(J,A,Q,B,Y),J}static fromScaling(A){let Q=q9.create();return EB.mat4.fromScaling(Q,A),Q}static fromTranslation(A){let Q=q9.create();return EB.mat4.fromTranslation(Q,A),Q}static fromXRotation(A){let Q=q9.create();return EB.mat4.fromXRotation(Q,A),Q}static fromYRotation(A){let Q=q9.create();return EB.mat4.fromYRotation(Q,A),Q}static fromZRotation(A){let Q=q9.create();return EB.mat4.fromZRotation(Q,A),Q}add(A){return EB.mat4.add(this,this,A),this}adjoint(){return EB.mat4.adjoint(this,this),this}clone(){return new q9(this[0],this[1],this[2],this[3],this[4],this[5],this[6],this[7],this[8],this[9],this[10],this[11],this[12],this[13],this[14],this[15])}copy(A){return EB.mat4.copy(this,A),this}equals(A){return EB.mat4.equals(this,A)}exactEquals(A){return EB.mat4.exactEquals(this,A)}frustrum(A,Q,B,Y,J,C){return EB.mat4.frustum(this,A,Q,B,Y,J,C),this}identity(){return EB.mat4.identity(this),this}invert(){return EB.mat4.invert(this,this),this}lookAt(A,Q,B){return EB.mat4.lookAt(this,A,Q,B),this}multiply(A){return EB.mat4.mul(this,this,A),this}multiplyScalar(A){return EB.mat4.multiplyScalar(this,this,A),this}orthographic(A,Q,B,Y,J,C){return EB.mat4.ortho(this,A,Q,B,Y,J,C),this}perspective(A,Q,B,Y){return EB.mat4.perspective(this,A,Q,B,Y),this}rotate(A,Q){return EB.mat4.rotate(this,this,A,Q),this}rotateX(A){return EB.mat4.rotateX(this,this,A),this}rotateY(A){return EB.mat4.rotateY(this,this,A),this}rotateZ(A){return EB.mat4.rotateZ(this,this,A),this}scale(A){return EB.mat4.scale(this,this,A),this}subtract(A){return EB.mat4.sub(this,this,A),this}targetTo(A,Q,B){return EB.mat4.targetTo(this,A,Q,B),this}toString(){return`[${this[0]},${this[1]},${this[2]},${this[3]}][${this[4]},${this[5]},${this[6]},${this[7]}][${this[8]},${this[9]},${this[10]},${this[11]}][${this[12]},${this[13]},${this[14]},${this[15]}]`}translate(A){return EB.mat4.translate(this,this,A),this}transpose(){return EB.mat4.transpose(this,this),this}}var Y0=qA(X4(),1);class RV extends Float32Array{constructor(A,Q,B,Y){super([A,Q,B,Y])}get length(){return Y0.quat.length(this)}get squaredLength(){return Y0.quat.squaredLength(this)}get magnitude(){return Y0.quat.length(this)}get squaredMagnitude(){return Y0.quat.squaredLength(this)}get x(){return this[0]}set x(A){this[0]=A}get y(){return this[1]}set y(A){this[1]=A}get z(){return this[2]}set z(A){this[2]=A}get w(){return this[3]}set w(A){this[3]=A}static fromEuler(A,Q,B){let Y=Y0.quat.fromEuler(new Float32Array(4),A,Q,B);return new RV(Y[0],Y[1],Y[2],Y[3])}static fromQuaternionLike(A){return new RV(A.x,A.y,A.z,A.w)}clone(){return new RV(this.x,this.y,this.z,this.w)}conjugate(){return Y0.quat.conjugate(this,this),this}copy(A){return Y0.quat.copy(this,A),this}dot(A){return Y0.quat.dot(this,A)}exponential(){return Y0.quat.exp(this,this),this}equals(A){return Y0.quat.equals(this,A)}exactEquals(A){return Y0.quat.exactEquals(this,A)}getAngle(A){return Y0.quat.getAngle(this,A)}identity(){return Y0.quat.identity(this),this}invert(){return Y0.quat.invert(this,this),this}lerp(A,Q){return Y0.quat.lerp(this,this,A,Q),this}logarithm(){return Y0.quat.ln(this,this),this}multiply(A){return Y0.quat.multiply(this,this,A),this}transformVector(A){return A.transformQuaternion(this)}normalize(){return Y0.quat.normalize(this,this),this}power(A){return Y0.quat.pow(this,this,A),this}randomize(){return Y0.quat.random(this),this}rotateX(A){return Y0.quat.rotateX(this,this,A),this}rotateY(A){return Y0.quat.rotateY(this,this,A),this}rotateZ(A){return Y0.quat.rotateZ(this,this,A),this}scale(A){return Y0.quat.scale(this,this,A),this}setAxisAngle(A,Q){return Y0.quat.setAxisAngle(this,A,Q),this}slerp(A,Q){return Y0.quat.slerp(this,this,A,Q),this}toString(){return`${this.x},${this.y},${this.z},${this.w}`}}var vB=qA(X4(),1);class YM extends Float32Array{constructor(A,Q){super([A,Q])}get length(){return vB.vec2.length(this)}get squaredLength(){return vB.vec2.squaredLength(this)}get magnitude(){return vB.vec2.length(this)}get squaredMagnitude(){return vB.vec2.squaredLength(this)}get x(){return this[0]}set x(A){this[0]=A}get y(){return this[1]}set y(A){this[1]=A}static create(){return new YM(0,0)}add(A){return vB.vec2.add(this,this,A),this}angle(A){return vB.vec2.angle(this,A)}ceil(){return vB.vec2.ceil(this,this),this}clone(){return new YM(this.x,this.y)}copy(A){return vB.vec2.copy(this,A),this}distance(A){return vB.vec2.distance(this,A)}divide(A){return vB.vec2.divide(this,this,A),this}dot(A){return vB.vec2.dot(this,A)}equals(A){return vB.vec2.equals(this,A)}exactEquals(A){return vB.vec2.exactEquals(this,A)}floor(){return vB.vec2.floor(this,this),this}invert(){return vB.vec2.inverse(this,this),this}lerp(A,Q){return vB.vec2.lerp(this,this,A,Q),this}max(A){return vB.vec2.max(this,this,A),this}min(A){return vB.vec2.min(this,this,A),this}multiply(A){return vB.vec2.mul(this,this,A),this}negate(){return vB.vec2.negate(this,this),this}normalize(){return vB.vec2.normalize(this,this),this}randomize(A){return vB.vec2.random(this,A),this}rotate(A,Q){return vB.vec2.rotate(this,this,A,Q),this}round(){return vB.vec2.round(this,this),this}scale(A){return vB.vec2.scale(this,this,A),this}scaleAndAdd(A,Q){return vB.vec2.scaleAndAdd(this,this,A,Q),this}subtract(A){return vB.vec2.sub(this,this,A),this}toString(){return`${this.x},${this.y}`}transformMatrix2(A){return vB.vec2.transformMat2(this,this,A),this}transformMatrix3(A){return vB.vec2.transformMat3(this,this,A),this}transformMatrix4(A){return vB.vec2.transformMat4(this,this,A),this}zero(){return vB.vec2.zero(this),this}}var RB=qA(X4(),1);class wV extends Float32Array{constructor(A,Q,B){super([A,Q,B])}get length(){return RB.vec3.length(this)}get squaredLength(){return RB.vec3.squaredLength(this)}get magnitude(){return RB.vec3.length(this)}get squaredMagnitude(){return RB.vec3.squaredLength(this)}get x(){return this[0]}set x(A){this[0]=A}get y(){return this[1]}set y(A){this[1]=A}get z(){return this[2]}set z(A){this[2]=A}static create(){return new wV(0,0,0)}static fromVector3Like(A){return new wV(A.x,A.y,A.z)}add(A){return RB.vec3.add(this,this,A),this}ceil(){return RB.vec3.ceil(this,this),this}clone(){return new wV(this.x,this.y,this.z)}copy(A){return RB.vec3.copy(this,A),this}cross(A){return RB.vec3.cross(this,this,A),this}distance(A){return RB.vec3.distance(this,A)}divide(A){return RB.vec3.div(this,this,A),this}dot(A){return RB.vec3.dot(this,A)}equals(A){return RB.vec3.equals(this,A)}exactEquals(A){return RB.vec3.exactEquals(this,A)}floor(){return RB.vec3.floor(this,this),this}invert(){return RB.vec3.inverse(this,this),this}lerp(A,Q){return RB.vec3.lerp(this,this,A,Q),this}max(A){return RB.vec3.max(this,this,A),this}min(A){return RB.vec3.min(this,this,A),this}multiply(A){return RB.vec3.mul(this,this,A),this}negate(){return RB.vec3.negate(this,this),this}normalize(){return RB.vec3.normalize(this,this),this}randomize(A){return RB.vec3.random(this,A),this}rotateX(A,Q){return RB.vec3.rotateX(this,this,A,Q),this}rotateY(A,Q){return RB.vec3.rotateY(this,this,A,Q),this}rotateZ(A,Q){return RB.vec3.rotateZ(this,this,A,Q),this}round(){return RB.vec3.round(this,this),this}scale(A){return RB.vec3.scale(this,this,A),this}scaleAndAdd(A,Q){return RB.vec3.scaleAndAdd(this,this,A,Q),this}subtract(A){return RB.vec3.sub(this,this,A),this}toString(){return`${this.x},${this.y},${this.z}`}transformMatrix3(A){return RB.vec3.transformMat3(this,this,A),this}transformMatrix4(A){return RB.vec3.transformMat4(this,this,A),this}transformQuaternion(A){return RB.vec3.transformQuat(this,this,A),this}zero(){return RB.vec3.zero(this),this}}function GkQ(A){return function(Q,B,Y){let J=Y.value,C=Q.constructor.name,X=A??`${C}.${B}`;if(J.constructor.name==="AsyncFunction")Y.value=async function(...G){return cY.instance.measureAsync(X,()=>J.apply(this,G))};else Y.value=function(...G){return cY.instance.measure(X,()=>J.apply(this,G))};return Y}}function Oo0(A){return function(Q){let B=Q.prototype,Y=A??Q.name;for(let J of Object.getOwnPropertyNames(B)){if(J==="constructor")continue;let C=Object.getOwnPropertyDescriptor(B,J);if(C&&typeof C.value==="function")GkQ(`${Y}.${J}`)(B,J,C),Object.defineProperty(B,J,C)}return Q}}function Po0(A,Q){return cY.instance.measure(A,Q)}async function To0(A,Q){return cY.instance.measureAsync(A,Q)}class F4{static _instance;static get instance(){if(!F4._instance)F4._instance=new F4;return F4._instance}_enabled=!1;_bytesSentTotal=0;_bytesReceivedTotal=0;_packetsSentTotal=0;_packetsReceivedTotal=0;_compressionCount=0;_serializationTotalMs=0;_serializationCount=0;_lastSnapshotTime=0;_lastBytesSent=0;_lastBytesReceived=0;_lastPacketsSent=0;_lastPacketsReceived=0;_connectedPlayers=0;get isEnabled(){return this._enabled}enable(){this._enabled=!0,this._lastSnapshotTime=performance.now(),this._reset()}disable(){this._enabled=!1}setConnectedPlayers(A){this._connectedPlayers=A}recordBytesSent(A){if(!this._enabled)return;this._bytesSentTotal+=A}recordBytesReceived(A){if(!this._enabled)return;this._bytesReceivedTotal+=A}recordPacketSent(){if(!this._enabled)return;this._packetsSentTotal++}recordPacketReceived(){if(!this._enabled)return;this._packetsReceivedTotal++}recordSerialization(A){if(!this._enabled)return;this._serializationTotalMs+=A,this._serializationCount++}recordCompression(){if(!this._enabled)return;this._compressionCount++}getSnapshot(){let A=performance.now(),Q=Math.max((A-this._lastSnapshotTime)/1000,0.001),B={connectedPlayers:this._connectedPlayers,bytesSentTotal:this._bytesSentTotal,bytesReceivedTotal:this._bytesReceivedTotal,bytesSentPerSecond:(this._bytesSentTotal-this._lastBytesSent)/Q,bytesReceivedPerSecond:(this._bytesReceivedTotal-this._lastBytesReceived)/Q,packetsSentPerSecond:(this._packetsSentTotal-this._lastPacketsSent)/Q,packetsReceivedPerSecond:(this._packetsReceivedTotal-this._lastPacketsReceived)/Q,avgSerializationMs:this._serializationCount>0?this._serializationTotalMs/this._serializationCount:0,compressionCount:this._compressionCount};return this._lastSnapshotTime=A,this._lastBytesSent=this._bytesSentTotal,this._lastBytesReceived=this._bytesReceivedTotal,this._lastPacketsSent=this._packetsSentTotal,this._lastPacketsReceived=this._packetsReceivedTotal,B}_reset(){this._bytesSentTotal=0,this._bytesReceivedTotal=0,this._packetsSentTotal=0,this._packetsReceivedTotal=0,this._compressionCount=0,this._serializationTotalMs=0,this._serializationCount=0,this._lastBytesSent=0,this._lastBytesReceived=0,this._lastPacketsSent=0,this._lastPacketsReceived=0}}var ZkQ=qA(WkQ(),1);class mo extends BZ{_debug=!1;_entity;_maxFall=0;_maxJump=0;_maxOpenSetIterations=200;_onPathfindAbort;_onPathfindComplete;_onWaypointMoveComplete;_onWaypointMoveSkipped;_speed=0;_target;_verticalPenalty=0;_waypoints=[];_waypointNextIndex=0;_waypointStoppingDistance;_waypointTimeoutMs=2000;constructor(A={}){super(A)}get debug(){return this._debug}get maxFall(){return this._maxFall}get maxJump(){return this._maxJump}get maxOpenSetIterations(){return this._maxOpenSetIterations}get speed(){return this._speed}get target(){return this._target}get verticalPenalty(){return this._verticalPenalty}get waypoints(){return this._waypoints}get waypointNextIndex(){return this._waypointNextIndex}get waypointTimeoutMs(){return this._waypointTimeoutMs}pathfind(A,Q,B){if(this._target=A,this._speed=Q,this._debug=B?.debug??!1,this._maxFall=B?.maxFall?-Math.abs(B.maxFall):0,this._maxJump=B?.maxJump?Math.abs(B.maxJump):0,this._maxOpenSetIterations=B?.maxOpenSetIterations??200,this._onPathfindAbort=B?.pathfindAbortCallback,this._onPathfindComplete=B?.pathfindCompleteCallback,this._onWaypointMoveComplete=B?.waypointMoveCompleteCallback,this._onWaypointMoveSkipped=B?.waypointMoveSkippedCallback,this._verticalPenalty=B?.verticalPenalty??0,this._waypoints=[],this._waypointNextIndex=0,this._waypointStoppingDistance=B?.waypointStoppingDistance,this._waypointTimeoutMs=B?.waypointTimeoutMs??2000/Q,!this._calculatePath())return!1;return this._moveToNextWaypoint(),!0}attach(A){super.attach(A),this._entity=A}detach(A){super.detach(A),this._entity=void 0}_calculatePath(){if(!this._target||!this._entity?.world)return n.error("PathfindingEntityController._calculatePath: No target or world"),!1;let A=this._entity.height,Q=this._findGroundedStart();if(!Q){if(this._debug)n.warning(`PathfindingEntityController._calculatePath: No valid grounded start found within maxFall distance, path search aborted. Start: ${this._coordinateToKey(this._target)}, Target: ${this._coordinateToKey(this._target)}`);return!1}let B={x:Math.floor(this._target.x),y:Math.floor(this._target.y),z:Math.floor(this._target.z)},Y=Math.abs(B.x-Q.x),J=Math.abs(B.y-Q.y),C=Math.abs(B.z-Q.z);if(Y<=2&&J<=2&&C<=2&&!this._isNeighborCoordinateBlocked(Q,B,this._entity.height))return this._waypoints=[{x:Q.x+0.5,y:Q.y+A/2,z:Q.z+0.5},{x:B.x+0.5,y:B.y+A/2,z:B.z+0.5}],!0;if(Q.x===B.x&&Q.y===B.y&&Q.z===B.z)return this._waypoints=[{x:Q.x+0.5,y:Q.y+A/2,z:Q.z+0.5}],!0;let G=this._coordinateToKey(Q),F=new Map,W=new Map([[G,0]]),Z=new Map([[G,this._pathfindingHeuristic(Q,B)]]),U=new Set,$=new ZkQ.Heap((L,z)=>{let M=Z.get(L[0])??1/0,N=Z.get(z[0])??1/0;return M-N});$.push([G,Q]);let E=[{x:0,y:0,z:1},{x:1,y:0,z:0},{x:0,y:0,z:-1},{x:-1,y:0,z:0},{x:1,y:0,z:1},{x:1,y:0,z:-1},{x:-1,y:0,z:1},{x:-1,y:0,z:-1}],K=[];for(let L=this._maxJump;L>=this._maxFall;L--){if(L===0)continue;let z=Math.abs(Q.y+L-B.y);K.push({y:L,distanceToTargetY:z})}K.sort((L,z)=>L.distanceToTargetY-z.distanceToTargetY);let I=[...E,...K.flatMap(({y:L})=>E.map((z)=>({...z,y:L})))],V=0,H=Math.abs(B.x-Q.x)+Math.abs(B.y-Q.y)+Math.abs(B.z-Q.z),D=Math.min(this._maxOpenSetIterations,H*20);while(!$.isEmpty()&&V({x:w.x+0.5,y:w.y+A/2,z:w.z+0.5})),this._debug)console.log(`PathfindingEntityController._calculatePath: Path found after ${V} open set iterations. Start: ${this._coordinateToKey(Q)}, Target: ${this._coordinateToKey(this._target)}`);return!0}U.add(L);let M=W.get(L),N=new Map;for(let q of I){let w=`${q.x},${q.z}`,P=q.y<0;if(P&&N.has(w))continue;let _={x:z.x+q.x,y:z.y+q.y,z:z.z+q.z};if(Math.abs(B.x-_.x)+Math.abs(B.y-_.y)+Math.abs(B.z-_.z)>H*1.5)continue;let k=this._coordinateToKey(_);if(U.has(k))continue;let T=this._isNeighborCoordinateBlocked(z,_,this._entity.height);if(P&&T){N.set(w,!0);continue}if(T)continue;let S=Math.abs(q.x),v=Math.abs(q.y),y=Math.abs(q.z),g=v===0?0:this._verticalPenalty,h=(Math.max(S,v,y)===1&&S+v+y>1?1.4:1)+g,m=M+h,i=W.get(k)??1/0;if(m>=i)continue;F.set(k,z),W.set(k,m);let p=m+this._pathfindingHeuristic(_,B);Z.set(k,p),$.push([k,_])}}if(V>=D){if(this._onPathfindAbort?.(),this._debug)n.warning(`PathfindingEntityController._calculatePath: Maximum open set iterations reached (${D}), path search aborted. Start: ${this._coordinateToKey(Q)}, Target: ${this._coordinateToKey(this._target)}`)}else if(this._debug)n.warning(`PathfindingEntityController._calculatePath: No valid path found. Start: ${this._coordinateToKey(Q)}, Target: ${this._coordinateToKey(this._target)}`);return this._target=void 0,this._waypoints=[],!1}_reconstructPath(A,Q){let B=[Q],Y=Q;while(A.has(this._coordinateToKey(Y)))Y=A.get(this._coordinateToKey(Y)),B.unshift(Y);return B}_coordinateToKey(A){return`${A.x},${A.y},${A.z}`}_moveToNextWaypoint(){let A=this._waypointNextIndex>0?this._waypoints[this._waypointNextIndex-1]:void 0,Q=this._waypoints[this._waypointNextIndex];if(!Q||!this._entity)return;let B=0;if(this._entity.isDynamic&&A&&Q.y>A.y){let Y=Q.y-A.y,J=Math.min(Y,this._maxJump)+0.75;this.jump(J);let C=Math.abs(this._entity.world.simulation.gravity.y),X=Math.sqrt(2*C*J),G=A.x+0.5,F=A.z+0.5,W=Q.x+0.5,Z=Q.z+0.5,U=W-G,$=Z-F,E=Math.sqrt(U*U+$*$),K=X/C,I=E/this._speed;B=Math.min(K*0.8,I)*1000}setTimeout(()=>{if(!this._entity)return;let Y=Date.now();this.face(Q,this._speed),this.move(Q,this._speed,{moveCompletesWhenStuck:!0,moveIgnoreAxes:{y:this._entity.isDynamic},moveStartIdleAnimationsOnCompletion:this._waypointNextIndex===this._waypoints.length-1,moveStoppingDistance:this._waypointStoppingDistance,moveCallback:()=>{if(Date.now()-Y>this._waypointTimeoutMs&&this._waypointNextIndex{if(this._waypointNextIndex{J.READY="WEBSERVER.READY";J.STOPPED="WEBSERVER.STOPPED";J.ERROR="WEBSERVER.ERROR";J.UPGRADE="WEBSERVER.UPGRADE"})(Dt||={});var rm0={"access-control-allow-origin":"*"},am0={".html":"text/html",".css":"text/css",".js":"text/javascript",".mjs":"text/javascript",".json":"application/json",".gltf":"model/gltf+json",".glb":"model/gltf-binary",".png":"image/png",".jpg":"image/jpeg",".jpeg":"image/jpeg",".webp":"image/webp",".gif":"image/gif",".svg":"image/svg+xml",".ico":"image/x-icon",".ktx2":"image/ktx2",".mp3":"audio/mpeg",".ogg":"audio/ogg",".wav":"audio/wav",".mp4":"video/mp4",".webm":"video/webm",".woff":"font/woff",".woff2":"font/woff2",".ttf":"font/ttf",".bin":"application/octet-stream",".wasm":"application/wasm"};class gV extends BQ{static instance=new gV;_server;_assetCache=new Map;_assetDirs=[];constructor(){super();this._assetDirs.push(It.resolve("assets"));let A=PY.assetsLibraryPath;if(A)this._assetDirs.push(A)}start(){if(this._server)return l.warning("WebServer.start(): already started");RM.enableIfConfigured(),this._server=sm0.createSecureServer({key:ik,cert:pk,allowHTTP1:!0}),this._server.on("request",this._onRequest),this._server.on("upgrade",this._onUpgrade),this._server.on("error",this._onError),this._server.on("close",this._onStopped),this._server.listen(nk,this._onStarted),console.info(`WebServer.start(): Server running on port ${nk}`)}stop(){if(!this._server)return l.warning("WebServer.stop(): not started"),Promise.resolve(!1);return new Promise((A,Q)=>{this._server.close((B)=>B?Q(B):A(!0))})}_onStarted=()=>this.emitWithGlobal("WEBSERVER.READY",{});_onStopped=()=>this.emitWithGlobal("WEBSERVER.STOPPED",{});_onError=(A)=>{l.error(`WebServer._onError(): ${A.message}`),this.emitWithGlobal("WEBSERVER.ERROR",{error:A})};_onRequest=(A,Q)=>{Q.on("error",()=>{});let B=A.url||"/",J=(A.method||"GET")==="HEAD",C=(G,W={})=>{Q.writeHead(G,{...W,...rm0})};if(B==="/"){C(200,{"content-type":"application/json"}),Q.end(!J?JSON.stringify({status:"OK",version:Ht,runtime:"node",playerCount:dJ.instance.playerCount}):void 0);return}if(RM.handleWebRequest(A,Q))return;let X=decodeURIComponent(B.split("?")[0]);if(X.includes("..")){C(400),Q.end();return}for(let G of this._assetDirs){let W=It.join(G,X);if(!W.startsWith(G))continue;let F=PY.assetsLibraryPath;if(F&&W.startsWith(F)&&!B.includes("noSync"))PY.instance.syncAsset(W);let Z=this._assetCache.get(W);if(!Z)try{let E=qSQ.statSync(W);if(!E.isFile())continue;Z={size:E.size,etag:`"${E.mtimeMs.toString(36)}-${E.size.toString(36)}"`},this._assetCache.set(W,Z)}catch{continue}if(A.headers["if-none-match"]===Z.etag){C(304),Q.end();return}let U={"content-type":am0[It.extname(W).toLowerCase()]||"application/octet-stream","content-length":Z.size,etag:Z.etag,"cache-control":"public, max-age=0, must-revalidate"};if(J){C(200,U),Q.end();return}C(200,U);let $=qSQ.createReadStream(W);Q.on("close",()=>$.destroy()),$.on("error",()=>Q.destroy()),$.pipe(Q);return}C(404),Q.end()};_onUpgrade=(A,Q,B)=>{this.emitWithGlobal("WEBSERVER.UPGRADE",{req:A,socket:Q,head:B})}}var E4;((I)=>{I.BUILD_PACKETS="build_packets";I.ENTITIES_EMIT_UPDATES="entities_emit_updates";I.ENTITIES_TICK="entities_tick";I.NETWORK_SYNCHRONIZE="network_synchronize";I.NETWORK_SYNCHRONIZE_CLEANUP="network_synchronize_cleanup";I.PHYSICS_CLEANUP="physics_cleanup";I.PHYSICS_STEP="physics_step";I.SEND_ALL_PACKETS="send_all_packets";I.SEND_PACKETS="send_packets";I.SERIALIZE_FREE_BUFFERS="serialize_free_buffers";I.SERIALIZE_PACKETS="serialize_packets";I.SERIALIZE_PACKETS_ENCODE="serialize_packets_encode";I.SIMULATION_STEP="simulation_step";I.TICKER_TICK="ticker_tick";I.WORLD_TICK="world_tick"})(E4||={});class AY{static getProcessStats(A=!1){let Q=process.memoryUsage(),B={jsHeapSizeMb:{value:Q.heapUsed/1024/1024,unit:"megabyte"},jsHeapCapacityMb:{value:Q.heapTotal/1024/1024,unit:"megabyte"},jsHeapUsagePercent:{value:Q.heapUsed/Q.heapTotal,unit:"percent"},processHeapSizeMb:{value:Q.heapUsed/1024/1024,unit:"megabyte"},rssSizeMb:{value:Q.rss/1024/1024,unit:"megabyte"}};if(A)return B;return Object.fromEntries(Object.entries(B).map(([Y,J])=>[Y,J.value]))}static initializeSentry(A,Q=50){if(cZ())return;AS({dsn:A,release:Ht,environment:process.env.NODE_ENV||"development",tracesSampleRate:1,initialScope:{tags:{gameId:process.env.HYTOPIA_GAME_ID??"unknown",gameSlug:process.env.HYTOPIA_GAME_SLUG??"unknown",lobbyId:process.env.HYTOPIA_LOBBY_ID??"unknown",region:process.env.REGION??"unknown"}},beforeSend:(B)=>{return B.extra=AY.getProcessStats(),B},beforeSendTransaction:(B)=>{if(B.contexts?.trace?.op==="ticker_tick"){let J=B?.start_timestamp,C=B?.timestamp;if(!J||!C)return null;if((C-J)*1000>Q)return B.measurements=AY.getProcessStats(!0),B}return null}})}static startSpan(A,Q){let B=O0.instance;if(B.isEnabled){if(cZ())return B.measure(A.operation,()=>b8({attributes:A.attributes,name:A.operation,op:A.operation},Q));return B.measure(A.operation,()=>Q())}if(cZ())return b8({attributes:A.attributes,name:A.operation,op:A.operation},Q);return Q()}static sentry(){return Qr}}var tm0=30000;class q1 extends BQ{static _cachedPacketsSerializedBuffer=new Map;_closeTimeout=null;_isDuplicate=!1;_ws;_wsBinding=!1;_wt;_wtBinding=!1;_wtReliableReader;_wtReliableWriter;_wtUnreliableReader;_wtUnreliableWriter;id;initialConnectionParams;constructor(A,Q,B,Y){super();this.id=pHA(),this.initialConnectionParams=B,this.onPacket(gQ.PacketId.HEARTBEAT,this._onHeartbeatPacket);let J=()=>{BQ.globalInstance.emit("CONNECTION.OPENED",{connection:this,session:Y})};if(A)this.bindWs(A),J();else if(Q)this.bindWt(Q).then(J).catch((C)=>{this._onClose(),l.error(`Connection.constructor(): Failed to bind WebTransport. Error: ${C}`)})}get isDuplicate(){return this._isDuplicate}static clearCachedPacketsSerializedBuffers(){if(q1._cachedPacketsSerializedBuffer.size>0)q1._cachedPacketsSerializedBuffer.clear()}static serializePackets(A){for(let B of A)if(!gQ.isValidPacket(B))return l.error(`Connection.serializePackets(): Invalid packet payload: ${JSON.stringify(B)}`);let Q=q1._cachedPacketsSerializedBuffer.get(A);if(Q)return Q;return AY.startSpan({operation:"serialize_packets",attributes:{packets:A.length,packetIds:A.map((B)=>B[0]).join(",")}},(B)=>{let Y=$Y.instance,J=Y.isEnabled,C=J?performance.now():0,X=vu.pack(A),G=X.byteLength>65536;if(G)X=om0(X,{level:1});if(B?.setAttribute("serializedBytes",X.byteLength),q1._cachedPacketsSerializedBuffer.set(A,X),J){if(Y.recordSerialization(performance.now()-C),G)Y.recordCompression()}return X})}bindWs(A){this._wsBinding=!0;let Q=this._handleReconnect();if(this._cleanupConnections(),this._ws=A,this._ws.binaryType="nodebuffer",this._ws.onmessage=(B)=>this._onMessage(B.data),this._ws.onclose=this._onClose,this._ws.onerror=this._onError,this._wsBinding=!1,this._signalConnectionId(),Q)this.emitWithGlobal("CONNECTION.RECONNECTED",{connection:this})}async bindWt(A){this._wtBinding=!0;let Q=this._handleReconnect();this._cleanupConnections(),A.userData.onclose=this._onClose,A.closed.catch(()=>{}).finally(()=>A.userData.onclose?.()),this._wt=A;try{await A.ready;let B=A.incomingBidirectionalStreams.getReader();try{let{value:Y}=await B.read();if(Y)this._wtReliableReader=Y.readable,this._wtReliableWriter=Y.writable.getWriter()}finally{B.releaseLock()}this._wtUnreliableReader=A.datagrams.readable,this._wtUnreliableWriter=A.datagrams.createWritable().getWriter()}catch{this._wtBinding=!1;return}if(this._wtBinding=!1,this._wt!==A)return;if((async()=>{if(!this._wtReliableReader)throw Error("Connection.bindWt(): Reliable reader not found.");let B=gQ.createPacketBufferUnframer((Y)=>{this._onMessage(Y)});for await(let Y of this._wtReliableReader){if(A!==this._wt)return;B(Y)}})().catch(()=>{try{A?.close()}catch{}}),(async()=>{if(!this._wtUnreliableReader)throw Error("Connection.bindWt(): Unreliable reader not found.");for await(let B of this._wtUnreliableReader){if(A!==this._wt)return;this._onMessage(B)}})().catch(()=>{try{A?.close()}catch{}}),this._signalConnectionId(),Q)this.emitWithGlobal("CONNECTION.RECONNECTED",{connection:this})}disconnect(){try{this._ws?.close(),this._wt?.close()}catch(A){l.error(`Connection.disconnect(): Connection disconnect failed. Error: ${A}`)}}killDuplicateConnection(){this._isDuplicate=!0,this._cleanupConnections(),this.emitWithGlobal("CONNECTION.DISCONNECTED",{connection:this}),this._finalizeClose()}onPacket(A,Q){this.on("CONNECTION.PACKET_RECEIVED",({packet:B})=>{if(B[0]===A)Q(B)})}send(A,Q=!0){if(this._closeTimeout||this._wsBinding||this._wtBinding)return;if(!this._ws&&!this._wt)return;let B=this._ws&&this._ws.readyState===OE.default.OPEN,Y=this._wt&&this._wt.state==="connected";if(!B&&!Y)return;AY.startSpan({operation:"send_packets"},()=>{try{let J=q1.serializePackets(A);if(!J)return;let C=$Y.instance,X=C.isEnabled,G=J.byteLength;if(Y)if(Q||J.byteLength>1200){let W=gQ.framePacketBuffer(J);G=W.byteLength,this._wtReliableWriter?.write(W).catch(()=>{l.error("Connection.send(): WebTransport reliable write failed, connection closing?")})}else this._wtUnreliableWriter?.write(J).catch(()=>{l.error("Connection.send(): WebTransport unreliable write failed, connection closing?")});else this._ws.send(J);if(X){C.recordBytesSent(G);for(let W=0;W{this.send([gQ.createPacket(gQ.bidirectionalPackets.heartbeatPacketDefinition,null)],!0)};_onMessage=(A)=>{let Q=$Y.instance;if(Q.isEnabled)Q.recordBytesReceived(A.byteLength),Q.recordPacketReceived();try{let Y=this._deserialize(A);if(!Y)return;this.emitWithGlobal("CONNECTION.PACKET_RECEIVED",{connection:this,packet:Y})}catch(Y){l.error(`Connection._ws.onmessage(): Error: ${Y}`)}};_onClose=()=>{this.emitWithGlobal("CONNECTION.DISCONNECTED",{connection:this}),this._closeTimeout=setTimeout(()=>this._finalizeClose(),tm0)};_onError=(A)=>{this.emitWithGlobal("CONNECTION.ERROR",{connection:this,error:A})};_cleanupConnections(){if(this._ws)this._ws.onmessage=()=>{},this._ws.onclose=()=>{},this._ws.onerror=()=>{};if(this._wt)this._wt.userData.onclose=()=>{};this._signalKill();try{this._ws?.close()}catch{}let A=this._wt;if(A)setTimeout(()=>{try{A.close()}catch{}},50);this._ws=void 0,this._wt=void 0,this._wtReliableReader=void 0,this._wtReliableWriter=void 0,this._wtUnreliableReader=void 0,this._wtUnreliableWriter=void 0}_deserialize(A){let Q=vu.unpack(A);if(!Q||typeof Q!=="object"||typeof Q[0]!=="number")return l.error(`Connection._deserialize(): Invalid packet format. Packet: ${JSON.stringify(Q)}`);if(!gQ.isValidPacket(Q))return l.error(`Connection._deserialize(): Invalid packet payload. Packet: ${JSON.stringify(Q)}`);return Q}_finalizeClose(){this.emitWithGlobal("CONNECTION.CLOSED",{connection:this}),this.offAll()}_handleReconnect(){let A=!!this._ws||!!this._wt;if(A&&this._closeTimeout)clearTimeout(this._closeTimeout),this._closeTimeout=null;return A}_signalConnectionId(){this.send([gQ.createPacket(gQ.bidirectionalPackets.connectionPacketDefinition,{i:this.id})])}_signalKill(){this.send([gQ.createPacket(gQ.bidirectionalPackets.connectionPacketDefinition,{k:!0})])}}var MSQ;((Y)=>{Y.PLAYER_CONNECTED="PLAYER_MANAGER.PLAYER_CONNECTED";Y.PLAYER_DISCONNECTED="PLAYER_MANAGER.PLAYER_DISCONNECTED";Y.PLAYER_RECONNECTED="PLAYER_MANAGER.PLAYER_RECONNECTED"})(MSQ||={});class dJ{static instance=new dJ;worldSelectionHandler;_connectionPlayers=new Map;constructor(){BQ.globalInstance.on("CONNECTION.OPENED",({connection:A,session:Q})=>{this._onConnectionOpened(A,Q)}),BQ.globalInstance.on("CONNECTION.DISCONNECTED",({connection:A})=>{this._onConnectionDisconnected(A)}),BQ.globalInstance.on("CONNECTION.RECONNECTED",({connection:A})=>{this._onConnectionReconnected(A)}),BQ.globalInstance.on("CONNECTION.CLOSED",({connection:A})=>{this._onConnectionClosed(A)})}get playerCount(){return this._connectionPlayers.size}getConnectedPlayers(){return Array.from(this._connectionPlayers.values())}getConnectedPlayersByWorld(A){return this.getConnectedPlayers().filter((Q)=>Q.world===A)}getConnectedPlayerByUsername(A){return Array.from(this._connectionPlayers.values()).find((Q)=>{return Q.username.toLowerCase()===A.toLowerCase()})}async _onConnectionOpened(A,Q){let B=new TE(A,Q);await B.loadInitialPersistedData(),BQ.globalInstance.emit("PLAYER_MANAGER.PLAYER_CONNECTED",{player:B,connectionParams:A.initialConnectionParams});let Y=await this.worldSelectionHandler?.(B);B.joinWorld(Y??F0.instance.getDefaultWorld()),this._connectionPlayers.set(A,B),$Y.instance.setConnectedPlayers(this.playerCount)}_onConnectionDisconnected(A){let Q=this._connectionPlayers.get(A);if(Q)Q.resetInputs(),Q.camera.reset()}_onConnectionReconnected(A){let Q=this._connectionPlayers.get(A);if(Q)Q.reconnected(),BQ.globalInstance.emit("PLAYER_MANAGER.PLAYER_RECONNECTED",{player:Q});else l.warning(`PlayerManager._onConnectionReconnected(): Connection ${A.id} not in the PlayerManager._connectionPlayers map.`)}_onConnectionClosed(A){let Q=this._connectionPlayers.get(A);if(Q){if(Q.disconnect(),this._connectionPlayers.delete(A),!A.isDuplicate)s7.instance.unloadPlayerData(Q).catch((B)=>{l.warning(`PlayerManager._onConnectionClosed(): Failed to unload player data for player ${Q.id}. Error: ${B}`)});BQ.globalInstance.emit("PLAYER_MANAGER.PLAYER_DISCONNECTED",{player:Q}),$Y.instance.setConnectedPlayers(this.playerCount)}else l.warning(`PlayerManager._onConnectionClosed(): Connection ${A.id} not in the PlayerManager._connectionPlayers map.`)}}import{randomBytes as Au0}from"crypto";import{Http3Server as Qu0}from"@fails-components/webtransport";class wM extends BQ{static instance=new wM;_connectionIdConnections=new Map;_userIdConnections=new Map;_wss;_wts;constructor(){super();this._wss=new nm.default({noServer:!0}),this._wss.on("connection",(A,Q)=>this._onConnection(A,void 0,Q.connectionId,Q.connectionParams,Q.session)),this._wts=new Qu0({port:nk,host:"0.0.0.0",secret:Au0(32).toString("hex"),cert:pk,privKey:ik,defaultDatagramsReadableMode:"bytes",initialStreamFlowControlWindow:1048576,streamShouldAutoTuneReceiveWindow:!0,streamFlowControlWindowSizeLimit:6291456,initialSessionFlowControlWindow:2097152,sessionShouldAutoTuneReceiveWindow:!0,sessionFlowControlWindowSizeLimit:15728640}),this._wts.setRequestCallback(this._onWebTransportRequest),this._startWebTransport().catch((A)=>{l.error(`Socket: WebTransport server failed to start or crashed while listening for sessions. Error: ${A}`)}),BQ.globalInstance.on("WEBSERVER.UPGRADE",async({req:A,socket:Q,head:B})=>{Q.on("error",()=>{}),await this._authorizeAndConnectWebsocket(A,Q,B)})}async _authorizeAndConnectWebsocket(A,Q,B){let Y=await this._authorizeConnection(A.url??"");if(Y.error){Q.end();return}A.connectionId=Y.connectionId,A.connectionParams=Y.connectionParams,A.session=Y.session,Q.setNoDelay(!0),this._wss.handleUpgrade(A,Q,B,(J)=>{if(J.readyState!==OE.default.OPEN)J.once("open",()=>this._wss.emit("connection",J,A));else this._wss.emit("connection",J,A)})}async _authorizeConnection(A){let Q=A.includes("?")?A.slice(A.indexOf("?")):"",B=new URLSearchParams(Q),Y=B.get("connectionId")??void 0,J=B.get("sessionToken")??"";if(Y&&this._isValidConnectionId(Y))return{connectionId:Y,connectionParams:B};else{let C=await P5.instance.getPlayerSession(J);if(C?.error)return{error:C.error};else if(C)return{connectionParams:B,session:C}}return{connectionParams:B}}_isValidConnectionId(A){return this._connectionIdConnections.has(A)}_onConnection=(A,Q,B,Y,J)=>{let C=J?.user.id,X=B&&this._connectionIdConnections.get(B),G=C&&this._userIdConnections.get(C);if(!X&&G)G.killDuplicateConnection();if(X){if(A)X.bindWs(A);if(Q)X.bindWt(Q).catch((W)=>{l.error(`Socket._onConnection(): WebTransport binding failed. Error: ${W}`)})}else{let W=new q1(A,Q,Y,J);if(W.on("CONNECTION.CLOSED",()=>{if(this._connectionIdConnections.delete(W.id),C&&this._userIdConnections.get(C)===W)this._userIdConnections.delete(C)}),this._connectionIdConnections.set(W.id,W),C)this._userIdConnections.set(C,W)}};_onWebTransportRequest=async({header:A})=>{let{connectionId:Q,connectionParams:B,session:Y,error:J}=await this._authorizeConnection(A[":path"]??"");return{status:J?401:200,path:"/",userData:{connectionId:Q,connectionParams:B,session:Y}}};async _startWebTransport(){this._wts.startServer();for await(let A of this._wts.sessionStream("/"))try{let{connectionId:Q,connectionParams:B,session:Y}=A.userData;this._onConnection(void 0,A,Q,B,Y)}catch(Q){l.error(`Socket._startWebTransport(): WebTransport connection failed. Error: ${Q}`)}}}var zSQ;((B)=>{B.START="GAMESERVER.START";B.STOP="GAMESERVER.STOP"})(zSQ||={});function Bu0(A){WB.init().then(()=>{return HF.instance.blockTextureRegistry.preloadAtlas()}).then(()=>{return HF.instance.modelRegistry.preloadModels()}).then(()=>{let Q;if(A.length>0)Q=A(HF.instance.worldManager.getDefaultWorld());else Q=A();return Promise.resolve(Q)}).then(()=>{HF.instance.start()}).catch((Q)=>{l.fatalError(`Failed to initialize the game engine, exiting. Error: ${Q}`)})}class HF{static _instance;_blockTextureRegistry=h7.instance;_modelRegistry=yY.instance;_playerManager=dJ.instance;_socket=wM.instance;_worldManager=F0.instance;_webServer=gV.instance;constructor(){}static get instance(){if(!this._instance)this._instance=new HF;return this._instance}get blockTextureRegistry(){return this._blockTextureRegistry}get modelRegistry(){return this._modelRegistry}get playerManager(){return this._playerManager}get socket(){return this._socket}get webServer(){return this._webServer}get worldManager(){return this._worldManager}start(){if(BQ.globalInstance.emit("GAMESERVER.START",{startedAtMs:performance.now()}),this._webServer.start(),process.env.NODE_ENV!=="production")console.log("---"),console.log("\uD83D\uDFE2 Server Running: You can test & play it at: https://hytopia.com/play");l.enableCrashProtection()}}var AJ=qA(I4(),1);class H4 extends Float32Array{constructor(A,Q,B,Y){super([A,Q,B,Y])}get determinant(){return AJ.mat2.determinant(this)}get frobeniusNorm(){return AJ.mat2.frob(this)}static create(){let A=new H4(0,0,0,0);return AJ.mat2.identity(A),A}static fromRotation(A){let Q=H4.create();return AJ.mat2.fromRotation(Q,A),Q}static fromScaling(A){let Q=H4.create();return AJ.mat2.fromScaling(Q,A),Q}add(A){return AJ.mat2.add(this,this,A),this}adjoint(){return AJ.mat2.adjoint(this,this),this}clone(){return new H4(this[0],this[1],this[2],this[3])}copy(A){return AJ.mat2.copy(this,A),this}equals(A){return AJ.mat2.equals(this,A)}exactEquals(A){return AJ.mat2.exactEquals(this,A)}identity(){return AJ.mat2.identity(this),this}invert(){return AJ.mat2.invert(this,this),this}multiply(A){return AJ.mat2.mul(this,this,A),this}multiplyScalar(A){return AJ.mat2.multiplyScalar(this,this,A),this}rotate(A){return AJ.mat2.rotate(this,this,A),this}subtract(A){return AJ.mat2.sub(this,this,A),this}toString(){return`[${this[0]},${this[1]}][${this[2]},${this[3]}]`}transpose(){return AJ.mat2.transpose(this,this),this}}var QY=qA(I4(),1);class mX extends Float32Array{constructor(A,Q,B,Y,J,C,X,G,W){super([A,Q,B,Y,J,C,X,G,W])}get determinant(){return QY.mat3.determinant(this)}get frobeniusNorm(){return QY.mat3.frob(this)}static create(){let A=new mX(0,0,0,0,0,0,0,0,0);return QY.mat3.identity(A),A}static fromMatrix4(A){let Q=mX.create();return QY.mat3.fromMat4(Q,A),Q}static fromQuaternion(A){let Q=mX.create();return QY.mat3.fromQuat(Q,A),Q}static fromRotation(A){let Q=mX.create();return QY.mat3.fromRotation(Q,A),Q}static fromScaling(A){let Q=mX.create();return QY.mat3.fromScaling(Q,A),Q}static fromTranslation(A){let Q=mX.create();return QY.mat3.fromTranslation(Q,A),Q}add(A){return QY.mat3.add(this,this,A),this}adjoint(){return QY.mat3.adjoint(this,this),this}clone(){return new mX(this[0],this[1],this[2],this[3],this[4],this[5],this[6],this[7],this[8])}copy(A){return QY.mat3.copy(this,A),this}equals(A){return QY.mat3.equals(this,A)}exactEquals(A){return QY.mat3.exactEquals(this,A)}identity(){return QY.mat3.identity(this),this}invert(){return QY.mat3.invert(this,this),this}multiply(A){return QY.mat3.mul(this,this,A),this}multiplyScalar(A){return QY.mat3.multiplyScalar(this,this,A),this}transformVector(A){return A.transformMatrix3(this)}projection(A,Q){return QY.mat3.projection(this,A,Q),this}rotate(A){return QY.mat3.rotate(this,this,A),this}subtract(A){return QY.mat3.sub(this,this,A),this}toString(){return`[${this[0]},${this[1]},${this[2]}][${this[3]},${this[4]},${this[5]}][${this[6]},${this[7]},${this[8]}]`}transpose(){return QY.mat3.transpose(this,this),this}}var EB=qA(I4(),1);class O9 extends Float32Array{constructor(A,Q,B,Y,J,C,X,G,W,F,Z,U,$,E,K,I){super([A,Q,B,Y,J,C,X,G,W,F,Z,U,$,E,K,I])}get determinant(){return EB.mat4.determinant(this)}get frobeniusNorm(){return EB.mat4.frob(this)}static create(){let A=new O9(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);return EB.mat4.identity(A),A}static fromQuaternion(A){let Q=O9.create();return EB.mat4.fromQuat(Q,A),Q}static fromRotation(A,Q){let B=O9.create();return EB.mat4.fromRotation(B,A,Q),B}static fromRotationTranslation(A,Q){let B=O9.create();return EB.mat4.fromRotationTranslation(B,A,Q),B}static fromRotationTranslationScale(A,Q,B){let Y=O9.create();return EB.mat4.fromRotationTranslationScale(Y,A,Q,B),Y}static fromRotationTranslationScaleOrigin(A,Q,B,Y){let J=O9.create();return EB.mat4.fromRotationTranslationScaleOrigin(J,A,Q,B,Y),J}static fromScaling(A){let Q=O9.create();return EB.mat4.fromScaling(Q,A),Q}static fromTranslation(A){let Q=O9.create();return EB.mat4.fromTranslation(Q,A),Q}static fromXRotation(A){let Q=O9.create();return EB.mat4.fromXRotation(Q,A),Q}static fromYRotation(A){let Q=O9.create();return EB.mat4.fromYRotation(Q,A),Q}static fromZRotation(A){let Q=O9.create();return EB.mat4.fromZRotation(Q,A),Q}add(A){return EB.mat4.add(this,this,A),this}adjoint(){return EB.mat4.adjoint(this,this),this}clone(){return new O9(this[0],this[1],this[2],this[3],this[4],this[5],this[6],this[7],this[8],this[9],this[10],this[11],this[12],this[13],this[14],this[15])}copy(A){return EB.mat4.copy(this,A),this}equals(A){return EB.mat4.equals(this,A)}exactEquals(A){return EB.mat4.exactEquals(this,A)}frustrum(A,Q,B,Y,J,C){return EB.mat4.frustum(this,A,Q,B,Y,J,C),this}identity(){return EB.mat4.identity(this),this}invert(){return EB.mat4.invert(this,this),this}lookAt(A,Q,B){return EB.mat4.lookAt(this,A,Q,B),this}multiply(A){return EB.mat4.mul(this,this,A),this}multiplyScalar(A){return EB.mat4.multiplyScalar(this,this,A),this}orthographic(A,Q,B,Y,J,C){return EB.mat4.ortho(this,A,Q,B,Y,J,C),this}perspective(A,Q,B,Y){return EB.mat4.perspective(this,A,Q,B,Y),this}rotate(A,Q){return EB.mat4.rotate(this,this,A,Q),this}rotateX(A){return EB.mat4.rotateX(this,this,A),this}rotateY(A){return EB.mat4.rotateY(this,this,A),this}rotateZ(A){return EB.mat4.rotateZ(this,this,A),this}scale(A){return EB.mat4.scale(this,this,A),this}subtract(A){return EB.mat4.sub(this,this,A),this}targetTo(A,Q,B){return EB.mat4.targetTo(this,A,Q,B),this}toString(){return`[${this[0]},${this[1]},${this[2]},${this[3]}][${this[4]},${this[5]},${this[6]},${this[7]}][${this[8]},${this[9]},${this[10]},${this[11]}][${this[12]},${this[13]},${this[14]},${this[15]}]`}translate(A){return EB.mat4.translate(this,this,A),this}transpose(){return EB.mat4.transpose(this,this),this}}var J0=qA(I4(),1);class hV extends Float32Array{constructor(A,Q,B,Y){super([A,Q,B,Y])}get length(){return J0.quat.length(this)}get squaredLength(){return J0.quat.squaredLength(this)}get magnitude(){return J0.quat.length(this)}get squaredMagnitude(){return J0.quat.squaredLength(this)}get x(){return this[0]}set x(A){this[0]=A}get y(){return this[1]}set y(A){this[1]=A}get z(){return this[2]}set z(A){this[2]=A}get w(){return this[3]}set w(A){this[3]=A}static fromEuler(A,Q,B){let Y=J0.quat.fromEuler(new Float32Array(4),A,Q,B);return new hV(Y[0],Y[1],Y[2],Y[3])}static fromQuaternionLike(A){return new hV(A.x,A.y,A.z,A.w)}clone(){return new hV(this.x,this.y,this.z,this.w)}conjugate(){return J0.quat.conjugate(this,this),this}copy(A){return J0.quat.copy(this,A),this}dot(A){return J0.quat.dot(this,A)}exponential(){return J0.quat.exp(this,this),this}equals(A){return J0.quat.equals(this,A)}exactEquals(A){return J0.quat.exactEquals(this,A)}getAngle(A){return J0.quat.getAngle(this,A)}identity(){return J0.quat.identity(this),this}invert(){return J0.quat.invert(this,this),this}lerp(A,Q){return J0.quat.lerp(this,this,A,Q),this}logarithm(){return J0.quat.ln(this,this),this}multiply(A){return J0.quat.multiply(this,this,A),this}transformVector(A){return A.transformQuaternion(this)}normalize(){return J0.quat.normalize(this,this),this}power(A){return J0.quat.pow(this,this,A),this}randomize(){return J0.quat.random(this),this}rotateX(A){return J0.quat.rotateX(this,this,A),this}rotateY(A){return J0.quat.rotateY(this,this,A),this}rotateZ(A){return J0.quat.rotateZ(this,this,A),this}scale(A){return J0.quat.scale(this,this,A),this}setAxisAngle(A,Q){return J0.quat.setAxisAngle(this,A,Q),this}slerp(A,Q){return J0.quat.slerp(this,this,A,Q),this}toString(){return`${this.x},${this.y},${this.z},${this.w}`}}var vB=qA(I4(),1);class jM extends Float32Array{constructor(A,Q){super([A,Q])}get length(){return vB.vec2.length(this)}get squaredLength(){return vB.vec2.squaredLength(this)}get magnitude(){return vB.vec2.length(this)}get squaredMagnitude(){return vB.vec2.squaredLength(this)}get x(){return this[0]}set x(A){this[0]=A}get y(){return this[1]}set y(A){this[1]=A}static create(){return new jM(0,0)}add(A){return vB.vec2.add(this,this,A),this}angle(A){return vB.vec2.angle(this,A)}ceil(){return vB.vec2.ceil(this,this),this}clone(){return new jM(this.x,this.y)}copy(A){return vB.vec2.copy(this,A),this}distance(A){return vB.vec2.distance(this,A)}divide(A){return vB.vec2.divide(this,this,A),this}dot(A){return vB.vec2.dot(this,A)}equals(A){return vB.vec2.equals(this,A)}exactEquals(A){return vB.vec2.exactEquals(this,A)}floor(){return vB.vec2.floor(this,this),this}invert(){return vB.vec2.inverse(this,this),this}lerp(A,Q){return vB.vec2.lerp(this,this,A,Q),this}max(A){return vB.vec2.max(this,this,A),this}min(A){return vB.vec2.min(this,this,A),this}multiply(A){return vB.vec2.mul(this,this,A),this}negate(){return vB.vec2.negate(this,this),this}normalize(){return vB.vec2.normalize(this,this),this}randomize(A){return vB.vec2.random(this,A),this}rotate(A,Q){return vB.vec2.rotate(this,this,A,Q),this}round(){return vB.vec2.round(this,this),this}scale(A){return vB.vec2.scale(this,this,A),this}scaleAndAdd(A,Q){return vB.vec2.scaleAndAdd(this,this,A,Q),this}subtract(A){return vB.vec2.sub(this,this,A),this}toString(){return`${this.x},${this.y}`}transformMatrix2(A){return vB.vec2.transformMat2(this,this,A),this}transformMatrix3(A){return vB.vec2.transformMat3(this,this,A),this}transformMatrix4(A){return vB.vec2.transformMat4(this,this,A),this}zero(){return vB.vec2.zero(this),this}}var RB=qA(I4(),1);class xV extends Float32Array{constructor(A,Q,B){super([A,Q,B])}get length(){return RB.vec3.length(this)}get squaredLength(){return RB.vec3.squaredLength(this)}get magnitude(){return RB.vec3.length(this)}get squaredMagnitude(){return RB.vec3.squaredLength(this)}get x(){return this[0]}set x(A){this[0]=A}get y(){return this[1]}set y(A){this[1]=A}get z(){return this[2]}set z(A){this[2]=A}static create(){return new xV(0,0,0)}static fromVector3Like(A){return new xV(A.x,A.y,A.z)}add(A){return RB.vec3.add(this,this,A),this}ceil(){return RB.vec3.ceil(this,this),this}clone(){return new xV(this.x,this.y,this.z)}copy(A){return RB.vec3.copy(this,A),this}cross(A){return RB.vec3.cross(this,this,A),this}distance(A){return RB.vec3.distance(this,A)}divide(A){return RB.vec3.div(this,this,A),this}dot(A){return RB.vec3.dot(this,A)}equals(A){return RB.vec3.equals(this,A)}exactEquals(A){return RB.vec3.exactEquals(this,A)}floor(){return RB.vec3.floor(this,this),this}invert(){return RB.vec3.inverse(this,this),this}lerp(A,Q){return RB.vec3.lerp(this,this,A,Q),this}max(A){return RB.vec3.max(this,this,A),this}min(A){return RB.vec3.min(this,this,A),this}multiply(A){return RB.vec3.mul(this,this,A),this}negate(){return RB.vec3.negate(this,this),this}normalize(){return RB.vec3.normalize(this,this),this}randomize(A){return RB.vec3.random(this,A),this}rotateX(A,Q){return RB.vec3.rotateX(this,this,A,Q),this}rotateY(A,Q){return RB.vec3.rotateY(this,this,A,Q),this}rotateZ(A,Q){return RB.vec3.rotateZ(this,this,A,Q),this}round(){return RB.vec3.round(this,this),this}scale(A){return RB.vec3.scale(this,this,A),this}scaleAndAdd(A,Q){return RB.vec3.scaleAndAdd(this,this,A,Q),this}subtract(A){return RB.vec3.sub(this,this,A),this}toString(){return`${this.x},${this.y},${this.z}`}transformMatrix3(A){return RB.vec3.transformMat3(this,this,A),this}transformMatrix4(A){return RB.vec3.transformMat4(this,this,A),this}transformQuaternion(A){return RB.vec3.transformQuat(this,this,A),this}zero(){return RB.vec3.zero(this),this}}function W_Q(A){return function(Q,B,Y){let J=Y.value;if(typeof J!=="function")return Y;let C=Q.constructor?.name??"Unknown",X=A??`${C}.${String(B)}`,G=J,W=G.constructor.name==="AsyncFunction",F=function(...Z){if(W)return O0.instance.measureAsync(X,()=>G.apply(this,Z));return O0.instance.measure(X,()=>G.apply(this,Z))};return Y.value=F,Y}}function De0(A){return function(Q){let B=Q.prototype;if(!B)return Q;let Y=A??Q.name;for(let J of Object.getOwnPropertyNames(B)){if(J==="constructor")continue;let C=Object.getOwnPropertyDescriptor(B,J);if(!C)continue;if(typeof C.value!=="function")continue;let G=C;W_Q(`${Y}.${J}`)(B,J,G),Object.defineProperty(B,J,G)}return Q}}function Ne0(A,Q){return O0.instance.measure(A,Q)}async function Le0(A,Q){return O0.instance.measureAsync(A,Q)}var $_Q=qA(Z_Q(),1);class Ot extends UZ{_debug=!1;_entity;_maxFall=0;_maxJump=0;_maxOpenSetIterations=200;_onPathfindAbort;_onPathfindComplete;_onWaypointMoveComplete;_onWaypointMoveSkipped;_speed=0;_target;_verticalPenalty=0;_waypoints=[];_waypointNextIndex=0;_waypointStoppingDistance;_waypointTimeoutMs=2000;constructor(A={}){super(A)}get debug(){return this._debug}get maxFall(){return this._maxFall}get maxJump(){return this._maxJump}get maxOpenSetIterations(){return this._maxOpenSetIterations}get speed(){return this._speed}get target(){return this._target}get verticalPenalty(){return this._verticalPenalty}get waypoints(){return this._waypoints}get waypointNextIndex(){return this._waypointNextIndex}get waypointTimeoutMs(){return this._waypointTimeoutMs}pathfind(A,Q,B){if(this._target=A,this._speed=Q,this._debug=B?.debug??!1,this._maxFall=B?.maxFall?-Math.abs(B.maxFall):0,this._maxJump=B?.maxJump?Math.abs(B.maxJump):0,this._maxOpenSetIterations=B?.maxOpenSetIterations??200,this._onPathfindAbort=B?.pathfindAbortCallback,this._onPathfindComplete=B?.pathfindCompleteCallback,this._onWaypointMoveComplete=B?.waypointMoveCompleteCallback,this._onWaypointMoveSkipped=B?.waypointMoveSkippedCallback,this._verticalPenalty=B?.verticalPenalty??0,this._waypoints=[],this._waypointNextIndex=0,this._waypointStoppingDistance=B?.waypointStoppingDistance,this._waypointTimeoutMs=B?.waypointTimeoutMs??2000/Q,!this._calculatePath())return!1;return this._moveToNextWaypoint(),!0}attach(A){super.attach(A),this._entity=A}detach(A){super.detach(A),this._entity=void 0}_calculatePath(){if(!this._target||!this._entity?.world)return l.error("PathfindingEntityController._calculatePath: No target or world"),!1;let A=this._entity.height,Q=this._findGroundedStart();if(!Q){if(this._debug)l.warning(`PathfindingEntityController._calculatePath: No valid grounded start found within maxFall distance, path search aborted. Start: ${this._coordinateToKey(this._target)}, Target: ${this._coordinateToKey(this._target)}`);return!1}let B={x:Math.floor(this._target.x),y:Math.floor(this._target.y),z:Math.floor(this._target.z)},Y=Math.abs(B.x-Q.x),J=Math.abs(B.y-Q.y),C=Math.abs(B.z-Q.z);if(Y<=2&&J<=2&&C<=2&&!this._isNeighborCoordinateBlocked(Q,B,this._entity.height))return this._waypoints=[{x:Q.x+0.5,y:Q.y+A/2,z:Q.z+0.5},{x:B.x+0.5,y:B.y+A/2,z:B.z+0.5}],!0;if(Q.x===B.x&&Q.y===B.y&&Q.z===B.z)return this._waypoints=[{x:Q.x+0.5,y:Q.y+A/2,z:Q.z+0.5}],!0;let G=this._coordinateToKey(Q),W=new Map,F=new Map([[G,0]]),Z=new Map([[G,this._pathfindingHeuristic(Q,B)]]),U=new Set,$=new $_Q.Heap((L,z)=>{let M=Z.get(L[0])??1/0,N=Z.get(z[0])??1/0;return M-N});$.push([G,Q]);let E=[{x:0,y:0,z:1},{x:1,y:0,z:0},{x:0,y:0,z:-1},{x:-1,y:0,z:0},{x:1,y:0,z:1},{x:1,y:0,z:-1},{x:-1,y:0,z:1},{x:-1,y:0,z:-1}],K=[];for(let L=this._maxJump;L>=this._maxFall;L--){if(L===0)continue;let z=Math.abs(Q.y+L-B.y);K.push({y:L,distanceToTargetY:z})}K.sort((L,z)=>L.distanceToTargetY-z.distanceToTargetY);let I=[...E,...K.flatMap(({y:L})=>E.map((z)=>({...z,y:L})))],V=0,H=Math.abs(B.x-Q.x)+Math.abs(B.y-Q.y)+Math.abs(B.z-Q.z),D=Math.min(this._maxOpenSetIterations,H*20);while(!$.isEmpty()&&V({x:w.x+0.5,y:w.y+A/2,z:w.z+0.5})),this._debug)console.log(`PathfindingEntityController._calculatePath: Path found after ${V} open set iterations. Start: ${this._coordinateToKey(Q)}, Target: ${this._coordinateToKey(this._target)}`);return!0}U.add(L);let M=F.get(L),N=new Map;for(let q of I){let w=`${q.x},${q.z}`,P=q.y<0;if(P&&N.has(w))continue;let _={x:z.x+q.x,y:z.y+q.y,z:z.z+q.z};if(Math.abs(B.x-_.x)+Math.abs(B.y-_.y)+Math.abs(B.z-_.z)>H*1.5)continue;let k=this._coordinateToKey(_);if(U.has(k))continue;let T=this._isNeighborCoordinateBlocked(z,_,this._entity.height);if(P&&T){N.set(w,!0);continue}if(T)continue;let S=Math.abs(q.x),v=Math.abs(q.y),y=Math.abs(q.z),h=v===0?0:this._verticalPenalty,g=(Math.max(S,v,y)===1&&S+v+y>1?1.4:1)+h,m=M+g,n=F.get(k)??1/0;if(m>=n)continue;W.set(k,z),F.set(k,m);let i=m+this._pathfindingHeuristic(_,B);Z.set(k,i),$.push([k,_])}}if(V>=D){if(this._onPathfindAbort?.(),this._debug)l.warning(`PathfindingEntityController._calculatePath: Maximum open set iterations reached (${D}), path search aborted. Start: ${this._coordinateToKey(Q)}, Target: ${this._coordinateToKey(this._target)}`)}else if(this._debug)l.warning(`PathfindingEntityController._calculatePath: No valid path found. Start: ${this._coordinateToKey(Q)}, Target: ${this._coordinateToKey(this._target)}`);return this._target=void 0,this._waypoints=[],!1}_reconstructPath(A,Q){let B=[Q],Y=Q;while(A.has(this._coordinateToKey(Y)))Y=A.get(this._coordinateToKey(Y)),B.unshift(Y);return B}_coordinateToKey(A){return`${A.x},${A.y},${A.z}`}_moveToNextWaypoint(){let A=this._waypointNextIndex>0?this._waypoints[this._waypointNextIndex-1]:void 0,Q=this._waypoints[this._waypointNextIndex];if(!Q||!this._entity)return;let B=0;if(this._entity.isDynamic&&A&&Q.y>A.y){let Y=Q.y-A.y,J=Math.min(Y,this._maxJump)+0.75;this.jump(J);let C=Math.abs(this._entity.world.simulation.gravity.y),X=Math.sqrt(2*C*J),G=A.x+0.5,W=A.z+0.5,F=Q.x+0.5,Z=Q.z+0.5,U=F-G,$=Z-W,E=Math.sqrt(U*U+$*$),K=X/C,I=E/this._speed;B=Math.min(K*0.8,I)*1000}setTimeout(()=>{if(!this._entity)return;let Y=Date.now();this.face(Q,this._speed),this.move(Q,this._speed,{moveCompletesWhenStuck:!0,moveIgnoreAxes:{y:this._entity.isDynamic},moveStartIdleAnimationsOnCompletion:this._waypointNextIndex===this._waypoints.length-1,moveStoppingDistance:this._waypointStoppingDistance,moveCallback:()=>{if(Date.now()-Y>this._waypointTimeoutMs&&this._waypointNextIndex{if(this._waypointNextIndex void; +// @public (undocumented) +export interface CompressedWorldMap { + // (undocumented) + algorithm?: CompressedWorldMapAlgorithm; + // (undocumented) + blockTypes?: BlockTypeOptions[] | Record; + // Warning: (ae-forgotten-export) The symbol "CompressedWorldMapBounds" needs to be exported by the entry point index.d.ts + // + // (undocumented) + bounds: CompressedWorldMapBounds; + // (undocumented) + codecVersion?: number; + // (undocumented) + data: string; + // (undocumented) + entities?: WorldMap['entities']; + // (undocumented) + format?: 'hytopia.worldmap.compressed'; + // (undocumented) + mapVersion?: unknown; + // (undocumented) + metadata?: unknown; + // Warning: (ae-forgotten-export) The symbol "CompressedWorldMapOptions" needs to be exported by the entry point index.d.ts + // + // (undocumented) + options?: CompressedWorldMapOptions; + // (undocumented) + version?: string; +} + +// @public (undocumented) +export type CompressedWorldMapAlgorithm = 'brotli' | 'gzip' | 'none'; + +// @public (undocumented) +export interface CompressWorldMapOptions { + // (undocumented) + algorithm?: CompressedWorldMapAlgorithm; + // (undocumented) + includeRotations?: boolean; + // (undocumented) + level?: number; +} + // @public export interface ConeColliderOptions extends BaseColliderOptions { halfHeight?: number; @@ -959,6 +1005,18 @@ export class CpuProfiler { static captureProfile(durationMs: number, outputPath?: string): Promise; } +// @public (undocumented) +export interface CreateWorldMapChunkCacheOptions { + // (undocumented) + algorithm?: WorldMapChunkCacheAlgorithm; + // (undocumented) + includeRotations?: boolean; + // (undocumented) + level?: number; + // (undocumented) + sourceSha256?: string; +} + // @public export interface CylinderColliderOptions extends BaseColliderOptions { halfHeight?: number; @@ -1904,7 +1962,7 @@ export type ModelTrimesh = { }; // @public (undocumented) -export function Monitor(operationName?: string): (target: any, propertyKey: string, descriptor: PropertyDescriptor) => PropertyDescriptor; +export function Monitor(operationName?: string): MethodDecorator; // @public (undocumented) export function monitorAsyncBlock(name: string, fn: () => Promise): Promise; @@ -1912,10 +1970,10 @@ export function monitorAsyncBlock(name: string, fn: () => Promise): Promis // @public (undocumented) export function monitorBlock(name: string, fn: () => T): T; +// Warning: (ae-forgotten-export) The symbol "AnyConstructor" needs to be exported by the entry point index.d.ts +// // @public (undocumented) -export function MonitorClass(prefix?: string): (constructor: T) => T; +export function MonitorClass(prefix?: string): (constructor: TConstructor) => TConstructor; // @public export type MoveCallback = (currentPosition: Vector3Like, targetPosition: Vector3Like) => void; @@ -1962,6 +2020,8 @@ export class NetworkMetrics { // (undocumented) recordSerialization(durationMs: number): void; // (undocumented) + reset(): void; + // (undocumented) setConnectedPlayers(count: number): void; } @@ -2446,7 +2506,7 @@ export type PathfindingOptions = { // @public (undocumented) export class PerformanceMonitor extends EventRouter { // (undocumented) - beginTick(tick: number, entityCount: number, playerCount: number): void; + beginTick(tick: number, entityCount: number, playerCount: number, worldId?: number): void; // (undocumented) disable(): void; // (undocumented) @@ -2454,14 +2514,14 @@ export class PerformanceMonitor extends EventRouter { // (undocumented) enableEntityProfiling(enabled: boolean): void; // (undocumented) - endTick(): void; + endTick(worldId?: number): void; // (undocumented) getEntityCosts(): Map; // (undocumented) - getSnapshot(): PerformanceSnapshot; + getSnapshot(worldId?: number): PerformanceSnapshot; // (undocumented) static get instance(): PerformanceMonitor; // (undocumented) @@ -2475,7 +2535,7 @@ export class PerformanceMonitor extends EventRouter { // (undocumented) recordEntityCost(entityId: number, name: string, tickMs: number): void; // (undocumented) - recordPhase(phaseName: string, durationMs: number): void; + recordPhase(phaseName: string, durationMs: number, worldId?: number): void; // (undocumented) resetStats(): void; // (undocumented) @@ -3482,6 +3542,8 @@ export interface TickReport { playerCount: number; // (undocumented) tick: number; + // (undocumented) + worldId: number; } // @public @@ -3680,7 +3742,10 @@ export class World extends EventRouter implements protocol.Serializable { get fogFar(): number; get fogNear(): number; get id(): number; - loadMap(map: WorldMap): void; + loadMap(map: WorldMap | CompressedWorldMap | WorldMapChunkCache | string, options?: { + spawnEntities?: boolean; + preferMapArtifacts?: boolean; + }): void; get loop(): WorldLoop; get name(): string; // Warning: (ae-forgotten-export) The symbol "NetworkSynchronizer" needs to be exported by the entry point index.d.ts @@ -3882,6 +3947,113 @@ export interface WorldMap { }; } +// @public (undocumented) +export type WorldMapArtifacts = { + compressedMap: CompressedWorldMap; + compressedMapJson: string; + compressedMapSha256: string; + chunkCache: WorldMapChunkCache; + chunkCacheBuffer: Buffer; +}; + +// @public (undocumented) +export class WorldMapArtifactsGenerator { + // (undocumented) + static create(worldMap: WorldMap, options?: { + compressed?: CompressWorldMapOptions; + chunkCache?: Omit; + }): WorldMapArtifacts; +} + +// @public (undocumented) +export interface WorldMapChunkCache { + // (undocumented) + algorithm?: WorldMapChunkCacheAlgorithm; + // (undocumented) + blockTypes?: BlockTypeOptions[] | Record; + // (undocumented) + codecVersion?: number; + // (undocumented) + data: string; + // (undocumented) + entities?: WorldMap['entities']; + // (undocumented) + format?: 'hytopia.worldmap.chunk-cache'; + // (undocumented) + version?: string; +} + +// @public (undocumented) +export type WorldMapChunkCacheAlgorithm = 'brotli' | 'gzip' | 'none'; + +// @public (undocumented) +export class WorldMapChunkCacheCodec { + // (undocumented) + static create(map: WorldMap | CompressedWorldMap, options?: CreateWorldMapChunkCacheOptions): WorldMapChunkCache; + // (undocumented) + static decode(cache: WorldMapChunkCache): { + metadata: WorldMapChunkCacheMetadata; + chunks: Iterable; + }; + // (undocumented) + static decodeChunks(cache: WorldMapChunkCache): Iterable; + // (undocumented) + static decodeMetadata(cache: WorldMapChunkCache): WorldMapChunkCacheMetadata; + // (undocumented) + static decompressToWorldMap(cache: WorldMapChunkCache): WorldMap; + // (undocumented) + static isWorldMapChunkCache(value: unknown): value is WorldMapChunkCache; +} + +// @public (undocumented) +export interface WorldMapChunkCacheMetadata { + // (undocumented) + blockTypes?: BlockTypeOptions[]; + // (undocumented) + entities?: WorldMap['entities']; + // (undocumented) + mapVersion?: unknown; + // (undocumented) + metadata?: unknown; + // (undocumented) + options?: WorldMapChunkCacheOptions; + // (undocumented) + source?: { + sha256?: string; + }; +} + +// @public (undocumented) +export interface WorldMapChunkCacheOptions { + // (undocumented) + rotations?: boolean; +} + +// @public (undocumented) +export class WorldMapCodec { + // (undocumented) + static compress(map: WorldMap, options?: CompressWorldMapOptions): CompressedWorldMap; + // (undocumented) + static decodeBlockEntries(map: CompressedWorldMap): Iterable<{ + globalCoordinate: Vector3Like; + blockTypeId: number; + blockRotation?: BlockRotation; + }>; + // (undocumented) + static decompressToWorldMap(map: CompressedWorldMap): WorldMap; + // (undocumented) + static isCompressedWorldMap(value: unknown): value is CompressedWorldMap; +} + +// @public (undocumented) +export class WorldMapFileLoader { + // (undocumented) + static load(mapPath: string, options?: { + preferChunkCache?: boolean; + warnings?: 'auto' | 'always' | 'never'; + }): AnyWorldMap; +} + // @public export interface WorldOptions { ambientLightColor?: RgbColor; @@ -3894,7 +4066,7 @@ export interface WorldOptions { fogNear?: number; gravity?: Vector3Like; id: number; - map?: WorldMap; + map?: WorldMap | CompressedWorldMap | WorldMapChunkCache | string; name: string; skyboxIntensity?: number; skyboxUri: string; @@ -3902,6 +4074,10 @@ export interface WorldOptions { tickRate?: number; } +// Warnings were encountered during analysis: +// +// src/worlds/maps/WorldMapChunkCacheCodec.ts:211:92 - (ae-forgotten-export) The symbol "ChunkCacheChunk" needs to be exported by the entry point index.d.ts + // (No @packageDocumentation comment for this package) ``` diff --git a/server/src/index.ts b/server/src/index.ts index e8acf627..255c8a3b 100644 --- a/server/src/index.ts +++ b/server/src/index.ts @@ -212,6 +212,28 @@ export { default as WebServer, WebServerEvent } from '@/networking/WebServer'; export { default as World, WorldEvent } from '@/worlds/World'; export type { WorldEventPayloads, WorldMap, WorldOptions } from '@/worlds/World'; +// WorldMapCodec +export { default as WorldMapCodec } from '@/worlds/maps/WorldMapCodec'; +export type { CompressedWorldMap, CompressWorldMapOptions, CompressedWorldMapAlgorithm } from '@/worlds/maps/WorldMapCodec'; + +// WorldMapChunkCacheCodec +export { default as WorldMapChunkCacheCodec } from '@/worlds/maps/WorldMapChunkCacheCodec'; +export type { + WorldMapChunkCache, + WorldMapChunkCacheAlgorithm, + WorldMapChunkCacheMetadata, + WorldMapChunkCacheOptions, + CreateWorldMapChunkCacheOptions, +} from '@/worlds/maps/WorldMapChunkCacheCodec'; + +// WorldMapFileLoader +export { default as WorldMapFileLoader } from '@/worlds/maps/WorldMapFileLoader'; +export type { AnyWorldMap } from '@/worlds/maps/WorldMapFileLoader'; + +// WorldMapArtifactsGenerator +export { default as WorldMapArtifactsGenerator } from '@/worlds/maps/WorldMapArtifacts'; +export type { WorldMapArtifacts } from '@/worlds/maps/WorldMapArtifacts'; + // WorldLoop export { default as WorldLoop, WorldLoopEvent } from '@/worlds/WorldLoop'; export type { WorldLoopEventPayloads } from '@/worlds/WorldLoop'; diff --git a/server/src/worlds/World.ts b/server/src/worlds/World.ts index 96361548..249f8de5 100644 --- a/server/src/worlds/World.ts +++ b/server/src/worlds/World.ts @@ -12,11 +12,18 @@ import SceneUIManager from '@/worlds/ui/SceneUIManager'; import Serializer from '@/networking/Serializer'; import Simulation from '@/worlds/physics/Simulation'; import WorldLoop from '@/worlds/WorldLoop'; +import fs from 'fs'; +import path from 'path'; +import WorldMapCodec from '@/worlds/maps/WorldMapCodec'; +import WorldMapChunkCacheCodec from '@/worlds/maps/WorldMapChunkCacheCodec'; +import WorldMapFileLoader from '@/worlds/maps/WorldMapFileLoader'; import { BLOCK_ROTATIONS } from '@/worlds/blocks/Block'; import type { BlockTypeOptions } from '@/worlds/blocks/BlockType'; import type { EntityOptions } from '@/worlds/entities/Entity'; import type RgbColor from '@/shared/types/RgbColor'; import type Vector3Like from '@/shared/types/math/Vector3Like'; +import type { CompressedWorldMap } from '@/worlds/maps/WorldMapCodec'; +import type { WorldMapChunkCache } from '@/worlds/maps/WorldMapChunkCacheCodec'; /** * A map representation for initializing a world. @@ -95,7 +102,7 @@ export interface WorldOptions { fogNear?: number; /** The map of the world. */ - map?: WorldMap; + map?: WorldMap | CompressedWorldMap | WorldMapChunkCache | string; /** The name of the world. */ name: string; @@ -500,13 +507,42 @@ export default class World extends EventRouter implements protocol.Serializable * - Registers block types from the map into `World.blockTypeRegistry`. * - Spawns map entities as `isEnvironmental: true` by default. * - * @param map - The map to load. + * @param map - The map to load. Can be a map object (WorldMap, CompressedWorldMap, + * WorldMapChunkCache) or a string file path. When a string is provided, + * WorldMapFileLoader auto-detects the best available format. * * **Side effects:** Clears the chunk lattice, registers block types, and spawns entities. * * **Category:** Core */ - public loadMap(map: WorldMap) { + public loadMap( + map: WorldMap | CompressedWorldMap | WorldMapChunkCache | string, + options: { spawnEntities?: boolean; preferMapArtifacts?: boolean } = {}, + ) { + if (typeof map === 'string') { + map = WorldMapFileLoader.load(map); + } + + // Auto-upgrade: if a legacy WorldMap was passed but compressed artifacts exist, prefer those. + const preferMapArtifacts = options.preferMapArtifacts ?? true; + if (preferMapArtifacts && !WorldMapCodec.isCompressedWorldMap(map) && !WorldMapChunkCacheCodec.isWorldMapChunkCache(map) && typeof map === 'object' && map !== null && 'blocks' in map) { + const basePath = path.resolve(process.cwd(), 'assets/map'); + const chunkCachePath = basePath + '.chunks.bin'; + const compressedPath = basePath + '.compressed.json'; + const jsonPath = basePath + '.json'; + + if (fs.existsSync(jsonPath) && (fs.existsSync(chunkCachePath) || fs.existsSync(compressedPath))) { + map = WorldMapFileLoader.load('assets/map.json'); + } + } + + // Decompress if needed + if (WorldMapCodec.isCompressedWorldMap(map)) { + map = WorldMapCodec.decompressToWorldMap(map); + } else if (WorldMapChunkCacheCodec.isWorldMapChunkCache(map)) { + map = WorldMapChunkCacheCodec.decompressToWorldMap(map); + } + // Clear any prior map this.chunkLattice.clear(); @@ -554,7 +590,8 @@ export default class World extends EventRouter implements protocol.Serializable } // load map entities - if (map.entities) { + const spawnEntities = options.spawnEntities ?? true; + if (spawnEntities && map.entities) { for (const key in map.entities) { const entityOptions = map.entities[key]; const i1 = key.indexOf(','); diff --git a/server/src/worlds/maps/WorldMapArtifacts.ts b/server/src/worlds/maps/WorldMapArtifacts.ts new file mode 100644 index 00000000..ea6cc600 --- /dev/null +++ b/server/src/worlds/maps/WorldMapArtifacts.ts @@ -0,0 +1,48 @@ +import crypto from 'crypto'; +import WorldMapCodec from '@/worlds/maps/WorldMapCodec'; +import WorldMapChunkCacheCodec from '@/worlds/maps/WorldMapChunkCacheCodec'; +import type { WorldMap } from '@/worlds/World'; +import type { CompressedWorldMap, CompressWorldMapOptions } from '@/worlds/maps/WorldMapCodec'; +import type { WorldMapChunkCache, CreateWorldMapChunkCacheOptions } from '@/worlds/maps/WorldMapChunkCacheCodec'; + +export type WorldMapArtifacts = { + compressedMap: CompressedWorldMap; + compressedMapJson: string; + compressedMapSha256: string; + chunkCache: WorldMapChunkCache; + chunkCacheBuffer: Buffer; +}; + +function sha256Hex(input: string | Buffer): string { + const h = crypto.createHash('sha256'); + h.update(input); + + return h.digest('hex'); +} + +export default class WorldMapArtifactsGenerator { + public static create( + worldMap: WorldMap, + options: { + compressed?: CompressWorldMapOptions; + chunkCache?: Omit; + } = {}, + ): WorldMapArtifacts { + const compressedMap = WorldMapCodec.compress(worldMap, options.compressed); + const compressedMapJson = JSON.stringify(compressedMap); + const compressedMapSha256 = sha256Hex(compressedMapJson); + const chunkCache = WorldMapChunkCacheCodec.create(compressedMap, { + ...options.chunkCache, + sourceSha256: compressedMapSha256, + }); + const chunkCacheBuffer = Buffer.from(chunkCache.data, 'base64'); + + return { + compressedMap, + compressedMapJson, + compressedMapSha256, + chunkCache, + chunkCacheBuffer, + }; + } +} diff --git a/server/src/worlds/maps/WorldMapChunkCacheCodec.ts b/server/src/worlds/maps/WorldMapChunkCacheCodec.ts new file mode 100644 index 00000000..d70f11fb --- /dev/null +++ b/server/src/worlds/maps/WorldMapChunkCacheCodec.ts @@ -0,0 +1,525 @@ +import { brotliCompressSync, brotliDecompressSync, constants, gunzipSync, gzipSync } from 'zlib'; +import ErrorHandler from '@/errors/ErrorHandler'; +import { BLOCK_ROTATIONS } from '@/worlds/blocks/Block'; +import Chunk, { CHUNK_VOLUME } from '@/worlds/blocks/Chunk'; +import type { BlockRotation } from '@/worlds/blocks/Block'; +import type { BlockTypeOptions } from '@/worlds/blocks/BlockType'; +import type Vector3Like from '@/shared/types/math/Vector3Like'; +import type { WorldMap } from '@/worlds/World'; +import WorldMapCodec from '@/worlds/maps/WorldMapCodec'; +import type { CompressedWorldMap } from '@/worlds/maps/WorldMapCodec'; +import { + WORLD_MAP_CHUNK_CACHE_HEADER_SIZE, + WORLD_MAP_CHUNK_CACHE_MAGIC, + WORLD_MAP_CHUNK_CACHE_VERSION, + chunkCacheAlgorithmToByte, + chunkCacheByteToAlgorithm, +} from '@/worlds/maps/WorldMapChunkCacheFormat'; + +export type WorldMapChunkCacheAlgorithm = 'brotli' | 'gzip' | 'none'; + +export interface WorldMapChunkCacheOptions { + rotations?: boolean; +} + +export interface WorldMapChunkCacheMetadata { + blockTypes?: BlockTypeOptions[]; + entities?: WorldMap['entities']; + options?: WorldMapChunkCacheOptions; + source?: { sha256?: string }; + metadata?: unknown; + mapVersion?: unknown; +} + +export interface WorldMapChunkCache { + format?: 'hytopia.worldmap.chunk-cache'; + codecVersion?: number; + version?: string; + + algorithm?: WorldMapChunkCacheAlgorithm; + data: string; + + // Optional overlays. These are not part of the binary codec, but allow + // loaders to provide entities/blockTypes from a sibling JSON map when the + // cache was generated without them (or to override stale metadata). + blockTypes?: BlockTypeOptions[] | Record; + entities?: WorldMap['entities']; +} + +export interface CreateWorldMapChunkCacheOptions { + algorithm?: WorldMapChunkCacheAlgorithm; + level?: number; + includeRotations?: boolean; + sourceSha256?: string; +} + +export interface ChunkCacheChunk { + originCoordinate: Vector3Like; + blocks: Uint8Array; // length 4096 + blockRotations: Map; // blockIndex -> rotation +} + +const BLOCK_ROTATIONS_BY_ENUM_INDEX: BlockRotation[] = Object + .values(BLOCK_ROTATIONS) + .sort((a, b) => a.enumIndex - b.enumIndex); + +function isRecord(value: unknown): value is Record { + return value !== null && typeof value === 'object'; +} + +function zigzagEncode32(value: number): number { + return (value << 1) ^ (value >> 31); +} + +function zigzagDecode32(value: number): number { + return (value >>> 1) ^ -(value & 1); +} + +function varintSize(value: number): number { + let current = value >>> 0; + let size = 1; + while (current > 0x7f) { + size++; + current >>>= 7; + } + + return size; +} + +function signedVarintSize(signedValue: number): number { + return varintSize(zigzagEncode32(signedValue)); +} + +function writeVarint(buffer: Buffer, offset: number, value: number): number { + let current = value >>> 0; + while (current > 0x7f) { + buffer[offset++] = (current & 0x7f) | 0x80; + current >>>= 7; + } + buffer[offset++] = current; + + return offset; +} + +function writeSignedVarint(buffer: Buffer, offset: number, signedValue: number): number { + return writeVarint(buffer, offset, zigzagEncode32(signedValue)); +} + +function readVarint(buffer: Buffer, offset: number): { value: number, offset: number } { + let value = 0; + let shift = 0; + let byte = 0; + + do { + byte = buffer[offset++]; + value |= (byte & 0x7f) << shift; + shift += 7; + } while (byte & 0x80); + + return { value: value >>> 0, offset }; +} + +function readSignedVarint(buffer: Buffer, offset: number): { value: number, offset: number } { + const r = readVarint(buffer, offset); + + return { value: zigzagDecode32(r.value), offset: r.offset }; +} + +function compressData(algorithm: WorldMapChunkCacheAlgorithm, input: Buffer, level: number): Buffer { + if (algorithm === 'none') return input; + if (algorithm === 'gzip') return gzipSync(input, { level: Math.min(9, Math.max(0, level)) }); + + return brotliCompressSync(input, { + params: { + [ constants.BROTLI_PARAM_MODE ]: constants.BROTLI_MODE_GENERIC, + [ constants.BROTLI_PARAM_QUALITY ]: Math.min(11, Math.max(0, level)), + [ constants.BROTLI_PARAM_SIZE_HINT ]: input.byteLength, + }, + }); +} + +function decompressData(algorithm: WorldMapChunkCacheAlgorithm, input: Buffer): Buffer { + if (algorithm === 'none') return input; + if (algorithm === 'gzip') return gunzipSync(input); + + return brotliDecompressSync(input); +} + +function validateSafeInt(value: number, label: string): void { + if (!Number.isSafeInteger(value)) { + ErrorHandler.fatalError(`WorldMapChunkCacheCodec: ${label} must be a safe integer.`); + } +} + +function normalizeBlockTypes(value: unknown): BlockTypeOptions[] | undefined { + if (!value) return undefined; + if (Array.isArray(value)) return value as BlockTypeOptions[]; + if (isRecord(value)) return Object.values(value) as BlockTypeOptions[]; + + return undefined; +} + +export default class WorldMapChunkCacheCodec { + private static _writeHeader(algorithm: WorldMapChunkCacheAlgorithm): Buffer { + const header = Buffer.allocUnsafe(WORLD_MAP_CHUNK_CACHE_HEADER_SIZE); + WORLD_MAP_CHUNK_CACHE_MAGIC.copy(header, 0); + header.writeUInt8(WORLD_MAP_CHUNK_CACHE_VERSION, 8); + header.writeUInt8(chunkCacheAlgorithmToByte(algorithm), 9); + header.writeUInt16LE(0, 10); // reserved + + return header; + } + + public static isWorldMapChunkCache(value: unknown): value is WorldMapChunkCache { + if (!isRecord(value)) return false; + if (typeof value.data !== 'string') return false; + if (value.format === 'hytopia.worldmap.chunk-cache') return true; + + try { + const prefix = Buffer.from(value.data.slice(0, 24), 'base64'); + if (prefix.byteLength < 8) return false; + + return prefix.subarray(0, 8).equals(WORLD_MAP_CHUNK_CACHE_MAGIC); + } catch { + return false; + } + } + + public static create(map: WorldMap | CompressedWorldMap, options: CreateWorldMapChunkCacheOptions = {}): WorldMapChunkCache { + const algorithm = options.algorithm ?? 'brotli'; + const level = options.level ?? 6; + + const { encoded } = this._encodeBody(map, { + includeRotations: options.includeRotations, + sourceSha256: options.sourceSha256, + }); + + const header = this._writeHeader(algorithm); + + const bodyCompressed = compressData(algorithm, encoded, level); + const file = Buffer.concat([ header, bodyCompressed ]); + + return { + format: 'hytopia.worldmap.chunk-cache', + codecVersion: 1, + version: '1.0.0', + algorithm, + data: file.toString('base64'), + }; + } + + public static decode(cache: WorldMapChunkCache): { metadata: WorldMapChunkCacheMetadata, chunks: Iterable } { + const decoded = this._decodeFile(cache); + const decodedMetadata = this._decodeMetadata(decoded.body); + const includeRotations = decodedMetadata.metadata.options?.rotations === true; + const chunkCount = decodedMetadata.chunkCount; + const startOffset = decodedMetadata.offset; + + const chunks = this._decodeChunks(decoded.body, startOffset, chunkCount, includeRotations); + + return { metadata: decodedMetadata.metadata, chunks }; + } + + public static decodeMetadata(cache: WorldMapChunkCache): WorldMapChunkCacheMetadata { + const decoded = this._decodeFile(cache); + + return this._decodeMetadata(decoded.body).metadata; + } + + public static decodeChunks(cache: WorldMapChunkCache): Iterable { + const decoded = this._decodeFile(cache); + const metadataResult = this._decodeMetadata(decoded.body); + const includeRotations = metadataResult.metadata.options?.rotations === true; + + return this._decodeChunks(decoded.body, metadataResult.offset, metadataResult.chunkCount, includeRotations); + } + + public static decompressToWorldMap(cache: WorldMapChunkCache): WorldMap { + const { metadata, chunks } = this.decode(cache); + const blocks: NonNullable = {}; + const includeRotations = metadata.options?.rotations === true; + + for (const chunk of chunks) { + const origin = chunk.originCoordinate; + for (let blockIndex = 0; blockIndex < CHUNK_VOLUME; blockIndex++) { + const id = chunk.blocks[blockIndex]; + if (id === 0) continue; + + const localCoordinate = Chunk.blockIndexToLocalCoordinate(blockIndex); + + const key = `${origin.x + localCoordinate.x},${origin.y + localCoordinate.y},${origin.z + localCoordinate.z}`; + const rot = chunk.blockRotations.get(blockIndex); + if (!includeRotations || !rot || rot.enumIndex === 0) { + blocks[key] = id; + } else { + blocks[key] = { i: id, r: rot.enumIndex }; + } + } + } + + return { + blockTypes: metadata.blockTypes, + blocks, + entities: metadata.entities, + }; + } + + private static _decodeFile(cache: WorldMapChunkCache): { body: Buffer, algorithm: WorldMapChunkCacheAlgorithm } { + const raw = Buffer.from(cache.data, 'base64'); + if (raw.byteLength < WORLD_MAP_CHUNK_CACHE_HEADER_SIZE) { + ErrorHandler.fatalError('WorldMapChunkCacheCodec: Cache data too small.'); + } + + const magic = raw.subarray(0, 8); + if (!magic.equals(WORLD_MAP_CHUNK_CACHE_MAGIC)) { + ErrorHandler.fatalError('WorldMapChunkCacheCodec: Invalid cache magic header.'); + } + + const version = raw.readUInt8(8); + if (version !== WORLD_MAP_CHUNK_CACHE_VERSION) { + ErrorHandler.fatalError(`WorldMapChunkCacheCodec: Unsupported cache version ${version}.`); + } + + const compressionByte = raw.readUInt8(9); + const algorithm = chunkCacheByteToAlgorithm(compressionByte); + + const bodyCompressed = raw.subarray(WORLD_MAP_CHUNK_CACHE_HEADER_SIZE); + const body = decompressData(algorithm, bodyCompressed); + + return { body, algorithm }; + } + + private static _decodeMetadata(body: Buffer): { metadata: WorldMapChunkCacheMetadata, chunkCount: number, offset: number } { + let offset = 0; + const metaLenVarint = readVarint(body, offset); + offset = metaLenVarint.offset; + const metaLen = metaLenVarint.value; + + if (body.byteLength < offset + metaLen) { + ErrorHandler.fatalError('WorldMapChunkCacheCodec.decode(): Body too small for metadata.'); + } + + const metadataText = body.subarray(offset, offset + metaLen).toString('utf8'); + const metadata = JSON.parse(metadataText) as WorldMapChunkCacheMetadata; + metadata.blockTypes = normalizeBlockTypes(metadata.blockTypes); + offset += metaLen; + + const chunkCountVarint = readVarint(body, offset); + offset = chunkCountVarint.offset; + + return { metadata, chunkCount: chunkCountVarint.value, offset }; + } + + private static _decodeChunks( + body: Buffer, + startOffset: number, + chunkCount: number, + includeRotations: boolean, + ): Iterable { + let offset = startOffset; + + function* chunks(): Generator { + for (let i = 0; i < chunkCount; i++) { + let r = readSignedVarint(body, offset); + const x = r.value; + offset = r.offset; + + r = readSignedVarint(body, offset); + const y = r.value; + offset = r.offset; + + r = readSignedVarint(body, offset); + const z = r.value; + offset = r.offset; + + const blocksStart = offset; + const blocksEnd = blocksStart + CHUNK_VOLUME; + if (body.byteLength < blocksEnd) { + ErrorHandler.fatalError('WorldMapChunkCacheCodec.decode(): Body too small for chunk blocks.'); + } + + const blocks = body.subarray(blocksStart, blocksEnd); + offset = blocksEnd; + + const blockRotations: Map = new Map(); + if (includeRotations) { + const rotCountVarint = readVarint(body, offset); + const rotCount = rotCountVarint.value; + offset = rotCountVarint.offset; + + for (let j = 0; j < rotCount; j++) { + const blockIndexVarint = readVarint(body, offset); + const blockIndex = blockIndexVarint.value; + offset = blockIndexVarint.offset; + + if (blockIndex >= CHUNK_VOLUME) { + ErrorHandler.fatalError(`WorldMapChunkCacheCodec.decode(): Invalid block index ${blockIndex} (expected 0-${CHUNK_VOLUME - 1}).`); + } + + const rotationEnumIndex = body.readUInt8(offset++); + const rot = BLOCK_ROTATIONS_BY_ENUM_INDEX[rotationEnumIndex]; + if (!rot) { + ErrorHandler.fatalError(`WorldMapChunkCacheCodec.decode(): Invalid rotation enumIndex ${rotationEnumIndex}.`); + } + + blockRotations.set(blockIndex, rot); + } + } + + yield { + originCoordinate: { x, y, z }, + blocks, + blockRotations, + }; + } + } + + return chunks(); + } + + private static _encodeBody( + map: WorldMap | CompressedWorldMap, + options: { includeRotations?: boolean, sourceSha256?: string }, + ): { encoded: Buffer, hasRotations: boolean } { + type ChunkAccumulator = { + originCoordinate: Vector3Like; + blocks: Uint8Array; + rotationsByBlockIndex: Map; + }; + + const chunksByKey = new Map(); + let hasRotations = false; + + const addBlockToChunk = (globalCoordinate: Vector3Like, blockTypeId: number, rotationEnumIndex: number) => { + validateSafeInt(globalCoordinate.x, 'block x'); + validateSafeInt(globalCoordinate.y, 'block y'); + validateSafeInt(globalCoordinate.z, 'block z'); + + if (!Number.isInteger(blockTypeId) || blockTypeId < 0 || blockTypeId > 255) { + ErrorHandler.fatalError(`WorldMapChunkCacheCodec: Invalid block type id ${blockTypeId} (expected 0-255).`); + } + + if (!Number.isInteger(rotationEnumIndex) || rotationEnumIndex < 0 || rotationEnumIndex > 255) { + ErrorHandler.fatalError(`WorldMapChunkCacheCodec: Invalid rotation enumIndex ${rotationEnumIndex} (expected 0-255).`); + } + + const originCoordinate = Chunk.globalCoordinateToOriginCoordinate(globalCoordinate); + const chunkKey = `${originCoordinate.x},${originCoordinate.y},${originCoordinate.z}`; + let chunk = chunksByKey.get(chunkKey); + if (!chunk) { + chunk = { + originCoordinate, + blocks: new Uint8Array(CHUNK_VOLUME), + rotationsByBlockIndex: new Map(), + }; + chunksByKey.set(chunkKey, chunk); + } + + const localCoordinate = Chunk.globalCoordinateToLocalCoordinate(globalCoordinate); + const blockIndex = Chunk.localCoordinateToBlockIndex(localCoordinate); + chunk.blocks[blockIndex] = blockTypeId; + + if (rotationEnumIndex !== 0) { + chunk.rotationsByBlockIndex.set(blockIndex, rotationEnumIndex); + hasRotations = true; + } + }; + + if (WorldMapCodec.isCompressedWorldMap(map)) { + for (const entry of WorldMapCodec.decodeBlockEntries(map)) { + addBlockToChunk(entry.globalCoordinate, entry.blockTypeId, entry.blockRotation?.enumIndex ?? 0); + } + } else if (map.blocks) { + for (const key in map.blocks) { + const blockValue = map.blocks[key]; + const blockTypeId = typeof blockValue === 'number' ? blockValue : blockValue.i; + const rotationEnumIndex = typeof blockValue === 'number' ? 0 : (blockValue.r ?? 0); + const i1 = key.indexOf(','); + const i2 = key.indexOf(',', i1 + 1); + const x = Number(key.slice(0, i1)); + const y = Number(key.slice(i1 + 1, i2)); + const z = Number(key.slice(i2 + 1)); + addBlockToChunk({ x, y, z }, blockTypeId, rotationEnumIndex); + } + } + + const includeRotations = options.includeRotations ?? hasRotations; + if (!includeRotations && hasRotations) { + ErrorHandler.fatalError('WorldMapChunkCacheCodec: Map contains rotated blocks but includeRotations is false.'); + } + + const rotationsEnabled = includeRotations && hasRotations; + + const metadata: WorldMapChunkCacheMetadata = { + blockTypes: normalizeBlockTypes(map.blockTypes), + entities: map.entities, + options: { rotations: rotationsEnabled }, + source: options.sourceSha256 ? { sha256: options.sourceSha256 } : undefined, + metadata: WorldMapCodec.isCompressedWorldMap(map) ? map.metadata : undefined, + mapVersion: WorldMapCodec.isCompressedWorldMap(map) ? map.mapVersion : undefined, + }; + + const metadataJson = Buffer.from(JSON.stringify(metadata), 'utf8'); + + const chunkCount = chunksByKey.size; + const chunks = Array.from(chunksByKey.values()); + chunks.sort((a, b) => ( + a.originCoordinate.y - b.originCoordinate.y || + a.originCoordinate.x - b.originCoordinate.x || + a.originCoordinate.z - b.originCoordinate.z + )); + + let chunksSectionSize = 0; + for (const chunk of chunks) { + chunksSectionSize += signedVarintSize(chunk.originCoordinate.x); + chunksSectionSize += signedVarintSize(chunk.originCoordinate.y); + chunksSectionSize += signedVarintSize(chunk.originCoordinate.z); + chunksSectionSize += CHUNK_VOLUME; + + if (rotationsEnabled) { + const rotEntries = Array.from(chunk.rotationsByBlockIndex.entries()); + chunksSectionSize += varintSize(rotEntries.length); + for (const [ blockIndex ] of rotEntries) { + chunksSectionSize += varintSize(blockIndex); + chunksSectionSize += 1; + } + } + } + + const bodySize = + varintSize(metadataJson.byteLength) + + metadataJson.byteLength + + varintSize(chunkCount) + + chunksSectionSize; + + const body = Buffer.allocUnsafe(bodySize); + let offset = 0; + + offset = writeVarint(body, offset, metadataJson.byteLength); + metadataJson.copy(body, offset); + offset += metadataJson.byteLength; + + offset = writeVarint(body, offset, chunkCount); + + for (const chunk of chunks) { + offset = writeSignedVarint(body, offset, chunk.originCoordinate.x); + offset = writeSignedVarint(body, offset, chunk.originCoordinate.y); + offset = writeSignedVarint(body, offset, chunk.originCoordinate.z); + + body.set(chunk.blocks, offset); + offset += CHUNK_VOLUME; + + if (rotationsEnabled) { + const rotEntries = Array.from(chunk.rotationsByBlockIndex.entries()); + rotEntries.sort((a, b) => a[0] - b[0]); + offset = writeVarint(body, offset, rotEntries.length); + for (const [ blockIndex, rotEnumIndex ] of rotEntries) { + offset = writeVarint(body, offset, blockIndex); + body.writeUInt8(rotEnumIndex, offset++); + } + } + } + + return { encoded: body, hasRotations: rotationsEnabled }; + } +} diff --git a/server/src/worlds/maps/WorldMapChunkCacheFormat.ts b/server/src/worlds/maps/WorldMapChunkCacheFormat.ts new file mode 100644 index 00000000..0e73c25b --- /dev/null +++ b/server/src/worlds/maps/WorldMapChunkCacheFormat.ts @@ -0,0 +1,24 @@ +import type { WorldMapChunkCacheAlgorithm } from '@/worlds/maps/WorldMapChunkCacheCodec'; + +export const WORLD_MAP_CHUNK_CACHE_MAGIC = Buffer.from('HYTCHUNK'); // 8 bytes +export const WORLD_MAP_CHUNK_CACHE_VERSION = 1; +export const WORLD_MAP_CHUNK_CACHE_HEADER_SIZE = 12; + +const COMPRESSION_NONE = 0; +const COMPRESSION_BROTLI = 1; +const COMPRESSION_GZIP = 2; + +export function chunkCacheAlgorithmToByte(algorithm: WorldMapChunkCacheAlgorithm): number { + if (algorithm === 'none') return COMPRESSION_NONE; + if (algorithm === 'gzip') return COMPRESSION_GZIP; + + return COMPRESSION_BROTLI; +} + +export function chunkCacheByteToAlgorithm(value: number): WorldMapChunkCacheAlgorithm { + if (value === COMPRESSION_NONE) return 'none'; + if (value === COMPRESSION_GZIP) return 'gzip'; + + return 'brotli'; +} + diff --git a/server/src/worlds/maps/WorldMapCodec.ts b/server/src/worlds/maps/WorldMapCodec.ts new file mode 100644 index 00000000..d6079726 --- /dev/null +++ b/server/src/worlds/maps/WorldMapCodec.ts @@ -0,0 +1,381 @@ +import { brotliCompressSync, brotliDecompressSync, constants, gunzipSync, gzipSync } from 'zlib'; +import ErrorHandler from '@/errors/ErrorHandler'; +import { BLOCK_ROTATIONS } from '@/worlds/blocks/Block'; +import type { BlockRotation } from '@/worlds/blocks/Block'; +import type { BlockTypeOptions } from '@/worlds/blocks/BlockType'; +import type Vector3Like from '@/shared/types/math/Vector3Like'; +import type { WorldMap } from '@/worlds/World'; + +export type CompressedWorldMapAlgorithm = 'brotli' | 'gzip' | 'none'; + +export interface CompressedWorldMapBounds { + minX: number; + minY: number; + minZ: number; + maxX: number; + maxY: number; + maxZ: number; +} + +export interface CompressedWorldMapOptions { + rotations?: boolean; + useDelta?: boolean; + useVarint?: boolean; +} + +export interface CompressedWorldMap { + format?: 'hytopia.worldmap.compressed'; + codecVersion?: number; + version?: string; + + algorithm?: CompressedWorldMapAlgorithm; + data: string; + bounds: CompressedWorldMapBounds; + + blockTypes?: BlockTypeOptions[] | Record; + entities?: WorldMap['entities']; + options?: CompressedWorldMapOptions; + metadata?: unknown; + mapVersion?: unknown; +} + +export interface CompressWorldMapOptions { + algorithm?: CompressedWorldMapAlgorithm; + level?: number; + includeRotations?: boolean; +} + +const BLOCK_ROTATIONS_BY_INDEX: BlockRotation[] = Object.values(BLOCK_ROTATIONS).sort((a, b) => a.enumIndex - b.enumIndex); + +function encodeZigzag32(value: number): number { + return (value << 1) ^ (value >> 31); +} + +function decodeZigzag32(value: number): number { + return (value >>> 1) ^ -(value & 1); +} + +function writeVarint(buffer: Buffer, offset: number, value: number): number { + let current = value >>> 0; + while (current > 0x7f) { + buffer[offset++] = (current & 0x7f) | 0x80; + current >>>= 7; + } + + buffer[offset++] = current; + + return offset; +} + +function writeSignedVarint(buffer: Buffer, offset: number, signedValue: number): number { + return writeVarint(buffer, offset, encodeZigzag32(signedValue)); +} + +function readVarint(buffer: Buffer, offset: number): { value: number, offset: number } { + let value = 0; + let shift = 0; + let byte = 0; + + do { + byte = buffer[offset++]; + value |= (byte & 0x7f) << shift; + shift += 7; + } while (byte & 0x80); + + return { value: value >>> 0, offset }; +} + +function decompressData(algorithm: CompressedWorldMapAlgorithm, input: Buffer): Buffer { + if (algorithm === 'none') { + return input; + } + + if (algorithm === 'gzip') { + return gunzipSync(input); + } + + return brotliDecompressSync(input); +} + +function compressData(algorithm: CompressedWorldMapAlgorithm, input: Buffer, level: number): Buffer { + if (algorithm === 'none') { + return input; + } + + if (algorithm === 'gzip') { + return gzipSync(input, { level: Math.min(9, Math.max(0, level)) }); + } + + return brotliCompressSync(input, { + params: { + [constants.BROTLI_PARAM_MODE]: constants.BROTLI_MODE_GENERIC, + [constants.BROTLI_PARAM_QUALITY]: Math.min(11, Math.max(0, level)), + [constants.BROTLI_PARAM_SIZE_HINT]: input.byteLength, + }, + }); +} + +function isRecord(value: unknown): value is Record { + return value !== null && typeof value === 'object'; +} + +function toBlockTypesArray(blockTypes: CompressedWorldMap['blockTypes']): BlockTypeOptions[] | undefined { + if (!blockTypes) return undefined; + if (Array.isArray(blockTypes)) return blockTypes; + + return Object.values(blockTypes); +} + +export default class WorldMapCodec { + public static isCompressedWorldMap(value: unknown): value is CompressedWorldMap { + if (!isRecord(value)) return false; + if (typeof value.data !== 'string') return false; + if (!isRecord(value.bounds)) return false; + + const bounds = value.bounds; + + return typeof bounds.minX === 'number' && + typeof bounds.minY === 'number' && + typeof bounds.minZ === 'number' && + typeof bounds.maxX === 'number' && + typeof bounds.maxY === 'number' && + typeof bounds.maxZ === 'number'; + } + + public static compress(map: WorldMap, options: CompressWorldMapOptions = {}): CompressedWorldMap { + const blocks = map.blocks ?? {}; + const blockEntries: Array<{ x: number, y: number, z: number, id: number, r: number }> = []; + + let minX = Infinity; + let minY = Infinity; + let minZ = Infinity; + let maxX = -Infinity; + let maxY = -Infinity; + let maxZ = -Infinity; + + let hasNonDefaultRotations = false; + + for (const key in blocks) { + const blockValue = blocks[key]; + const blockTypeId = typeof blockValue === 'number' ? blockValue : blockValue.i; + const rotationIndex = typeof blockValue === 'number' ? 0 : (blockValue.r ?? 0); + + if (!Number.isInteger(blockTypeId) || blockTypeId < 0 || blockTypeId > 255) { + ErrorHandler.fatalError(`WorldMapCodec.compress(): Invalid block type id ${blockTypeId} at ${key} (expected 0-255).`); + } + + if (!Number.isInteger(rotationIndex) || rotationIndex < 0 || rotationIndex >= BLOCK_ROTATIONS_BY_INDEX.length) { + ErrorHandler.fatalError(`WorldMapCodec.compress(): Invalid block rotation index ${rotationIndex} at ${key}.`); + } + + if (rotationIndex !== 0) { + hasNonDefaultRotations = true; + } + + const i1 = key.indexOf(','); + const i2 = key.indexOf(',', i1 + 1); + + const x = Number(key.slice(0, i1)); + const y = Number(key.slice(i1 + 1, i2)); + const z = Number(key.slice(i2 + 1)); + + minX = Math.min(minX, x); + minY = Math.min(minY, y); + minZ = Math.min(minZ, z); + maxX = Math.max(maxX, x); + maxY = Math.max(maxY, y); + maxZ = Math.max(maxZ, z); + + blockEntries.push({ x, y, z, id: blockTypeId, r: rotationIndex }); + } + + if (blockEntries.length === 0) { + const empty: Buffer = Buffer.allocUnsafe(4); + empty.writeUInt32LE(0, 0); + + const algorithm = options.algorithm ?? 'brotli'; + const level = options.level ?? 9; + const compressed = compressData(algorithm, empty, level).toString('base64'); + + return { + format: 'hytopia.worldmap.compressed', + codecVersion: 1, + version: '1.0.0', + algorithm, + data: compressed, + bounds: { + minX: 0, + minY: 0, + minZ: 0, + maxX: 0, + maxY: 0, + maxZ: 0, + }, + blockTypes: map.blockTypes, + entities: map.entities, + options: { + rotations: false, + useDelta: true, + useVarint: true, + }, + }; + } + + const includeRotations = options.includeRotations ?? hasNonDefaultRotations; + if (!includeRotations && hasNonDefaultRotations) { + ErrorHandler.fatalError('WorldMapCodec.compress(): Map contains rotated blocks but includeRotations is false.'); + } + + for (let i = 0; i < blockEntries.length; i++) { + const b = blockEntries[i]; + b.x -= minX; + b.y -= minY; + b.z -= minZ; + } + + blockEntries.sort((a, b) => a.y - b.y || a.x - b.x || a.z - b.z); + + const perBlockBudget = includeRotations ? 25 : 20; + const buffer = Buffer.allocUnsafe(4 + (blockEntries.length * perBlockBudget)); + let offset = 0; + + buffer.writeUInt32LE(blockEntries.length, offset); + offset += 4; + + let lastX = 0; + let lastY = 0; + let lastZ = 0; + + for (let i = 0; i < blockEntries.length; i++) { + const b = blockEntries[i]; + offset = writeSignedVarint(buffer, offset, b.x - lastX); + offset = writeSignedVarint(buffer, offset, b.y - lastY); + offset = writeSignedVarint(buffer, offset, b.z - lastZ); + offset = writeSignedVarint(buffer, offset, b.id); + if (includeRotations) { + offset = writeSignedVarint(buffer, offset, b.r); + } + + lastX = b.x; + lastY = b.y; + lastZ = b.z; + } + + const encoded = buffer.slice(0, offset); + const algorithm = options.algorithm ?? 'brotli'; + const level = options.level ?? 9; + const compressed = compressData(algorithm, encoded, level).toString('base64'); + + return { + format: 'hytopia.worldmap.compressed', + codecVersion: 1, + version: '1.0.0', + algorithm, + data: compressed, + bounds: { minX, minY, minZ, maxX, maxY, maxZ }, + blockTypes: map.blockTypes, + entities: map.entities, + options: { + rotations: includeRotations, + useDelta: true, + useVarint: true, + }, + }; + } + + public static decodeBlockEntries(map: CompressedWorldMap): Iterable<{ + globalCoordinate: Vector3Like; + blockTypeId: number; + blockRotation?: BlockRotation; + }> { + const algorithm = map.algorithm ?? 'brotli'; + const includeRotations = map.options?.rotations === true; + + const compressedBuffer = Buffer.from(map.data, 'base64'); + const decompressed = decompressData(algorithm, compressedBuffer); + + const bounds = map.bounds; + let offset = 0; + + if (decompressed.byteLength < 4) { + ErrorHandler.fatalError('WorldMapCodec.decodeBlockEntries(): Decompressed data is too small.'); + } + + const blockCount = decompressed.readUInt32LE(offset); + offset += 4; + + function* entries(): Generator<{ globalCoordinate: Vector3Like, blockTypeId: number, blockRotation?: BlockRotation }> { + let lastX = 0; + let lastY = 0; + let lastZ = 0; + + for (let i = 0; i < blockCount; i++) { + let r = readVarint(decompressed, offset); + lastX += decodeZigzag32(r.value); + offset = r.offset; + + r = readVarint(decompressed, offset); + lastY += decodeZigzag32(r.value); + offset = r.offset; + + r = readVarint(decompressed, offset); + lastZ += decodeZigzag32(r.value); + offset = r.offset; + + r = readVarint(decompressed, offset); + const blockTypeId = decodeZigzag32(r.value); + offset = r.offset; + + let rotationIndex = 0; + if (includeRotations) { + r = readVarint(decompressed, offset); + rotationIndex = decodeZigzag32(r.value); + offset = r.offset; + } + + if (rotationIndex < 0 || rotationIndex >= BLOCK_ROTATIONS_BY_INDEX.length) { + ErrorHandler.fatalError(`WorldMapCodec.decodeBlockEntries(): Invalid rotation index ${rotationIndex} at block ${i}.`); + } + + if (blockTypeId < 0 || blockTypeId > 255) { + ErrorHandler.fatalError(`WorldMapCodec.decodeBlockEntries(): Invalid block type id ${blockTypeId} at block ${i} (expected 0-255).`); + } + + const x = lastX + bounds.minX; + const y = lastY + bounds.minY; + const z = lastZ + bounds.minZ; + + yield { + globalCoordinate: { x, y, z }, + blockTypeId, + blockRotation: rotationIndex !== 0 ? BLOCK_ROTATIONS_BY_INDEX[rotationIndex] : undefined, + }; + } + } + + return entries(); + } + + public static decompressToWorldMap(map: CompressedWorldMap): WorldMap { + const blockTypes = toBlockTypesArray(map.blockTypes); + const entities = map.entities; + const blocks: NonNullable = {}; + + const includeRotations = map.options?.rotations === true; + + for (const entry of this.decodeBlockEntries(map)) { + const key = `${entry.globalCoordinate.x},${entry.globalCoordinate.y},${entry.globalCoordinate.z}`; + if (!includeRotations || !entry.blockRotation || entry.blockRotation.enumIndex === 0) { + blocks[key] = entry.blockTypeId; + } else { + blocks[key] = { i: entry.blockTypeId, r: entry.blockRotation.enumIndex }; + } + } + + return { + blockTypes, + blocks, + entities, + }; + } +} diff --git a/server/src/worlds/maps/WorldMapFileLoader.ts b/server/src/worlds/maps/WorldMapFileLoader.ts new file mode 100644 index 00000000..7659ba3b --- /dev/null +++ b/server/src/worlds/maps/WorldMapFileLoader.ts @@ -0,0 +1,231 @@ +import fs from 'fs'; +import path from 'path'; +import crypto from 'crypto'; +import ErrorHandler from '@/errors/ErrorHandler'; +import WorldMapCodec from '@/worlds/maps/WorldMapCodec'; +import WorldMapChunkCacheCodec from '@/worlds/maps/WorldMapChunkCacheCodec'; +import { WORLD_MAP_CHUNK_CACHE_MAGIC, WORLD_MAP_CHUNK_CACHE_VERSION, WORLD_MAP_CHUNK_CACHE_HEADER_SIZE } from '@/worlds/maps/WorldMapChunkCacheFormat'; +import type { WorldMap } from '@/worlds/World'; +import type { CompressedWorldMap } from '@/worlds/maps/WorldMapCodec'; +import type { WorldMapChunkCache } from '@/worlds/maps/WorldMapChunkCacheCodec'; + +export type AnyWorldMap = WorldMap | CompressedWorldMap | WorldMapChunkCache; + +function sha256Hex(input: Buffer | string): string { + const h = crypto.createHash('sha256'); + h.update(input); + + return h.digest('hex'); +} + +function isRecord(value: unknown): value is Record { + return value !== null && typeof value === 'object'; +} + +function hasNonEmptyKeys(value: unknown): boolean { + return isRecord(value) && Object.keys(value).length > 0; +} + +function hasNonEmptyBlockTypes(value: unknown): boolean { + if (!value) return false; + if (Array.isArray(value)) return value.length > 0; + if (isRecord(value)) return Object.keys(value).length > 0; + + return false; +} + +function readJsonIfExists(filePath: string): unknown { + if (!fs.existsSync(filePath)) return undefined; + try { + return JSON.parse(fs.readFileSync(filePath, 'utf-8')) as unknown; + } catch { + return undefined; + } +} + +function extractOverlays(parsed: unknown): { blockTypes?: WorldMapChunkCache['blockTypes'], entities?: WorldMap['entities'] } { + if (WorldMapCodec.isCompressedWorldMap(parsed)) { + return { + blockTypes: parsed.blockTypes as unknown as WorldMapChunkCache['blockTypes'], + entities: parsed.entities, + }; + } + + if (!isRecord(parsed)) return {}; + + return { + blockTypes: parsed.blockTypes as WorldMapChunkCache['blockTypes'] | undefined, + entities: parsed.entities as WorldMap['entities'] | undefined, + }; +} + +export default class WorldMapFileLoader { + public static load(mapPath: string, options: { preferChunkCache?: boolean, warnings?: 'auto' | 'always' | 'never' } = {}): AnyWorldMap { + const preferChunkCache = options.preferChunkCache ?? true; + const absoluteMapPath = path.resolve(process.cwd(), mapPath); + const isExplicitChunkCache = absoluteMapPath.endsWith('.chunks.bin'); + const warnings = options.warnings ?? 'auto'; + const shouldWarn = warnings === 'always' || (warnings === 'auto' && process.env.NODE_ENV !== 'production'); + const warn = (message: string) => { if (shouldWarn) ErrorHandler.warning(message); }; + + if (preferChunkCache) { + if (isExplicitChunkCache && !fs.existsSync(absoluteMapPath)) { + ErrorHandler.fatalError(`WorldMapFileLoader.load(): Chunk cache file not found at ${absoluteMapPath}.`); + } + + let basePath = absoluteMapPath; + if (absoluteMapPath.endsWith('.compressed.json')) { + basePath = absoluteMapPath.slice(0, -'.compressed.json'.length); + } else if (absoluteMapPath.endsWith('.chunks.bin')) { + basePath = absoluteMapPath.slice(0, -'.chunks.bin'.length); + } else if (absoluteMapPath.endsWith('.json')) { + basePath = absoluteMapPath.slice(0, -'.json'.length); + } + + const chunkCachePath = basePath + '.chunks.bin'; + + if (fs.existsSync(chunkCachePath)) { + const raw = fs.readFileSync(chunkCachePath); + + const looksValid = raw.byteLength >= WORLD_MAP_CHUNK_CACHE_HEADER_SIZE && + raw.subarray(0, 8).equals(WORLD_MAP_CHUNK_CACHE_MAGIC) && + raw.readUInt8(8) === WORLD_MAP_CHUNK_CACHE_VERSION; + + if (looksValid) { + const cache: WorldMapChunkCache = { data: raw.toString('base64') }; + + try { + const metadata = WorldMapChunkCacheCodec.decodeMetadata(cache); + const expected = metadata.source?.sha256; + + const needsEntityOverlay = !hasNonEmptyKeys(metadata.entities); + const needsBlockTypesOverlay = !hasNonEmptyBlockTypes(metadata.blockTypes); + const needsOverlays = needsEntityOverlay || needsBlockTypesOverlay; + + let overlayEntities: WorldMap['entities'] | undefined; + let overlayEntitiesFrom: string | undefined; + let overlayBlockTypes: WorldMapChunkCache['blockTypes'] | undefined; + let overlayBlockTypesFrom: string | undefined; + + const applyOverlays = (): WorldMapChunkCache => { + const shouldOverlayEntities = needsEntityOverlay && overlayEntities; + const shouldOverlayBlockTypes = needsBlockTypesOverlay && overlayBlockTypes; + + if (!shouldOverlayEntities && !shouldOverlayBlockTypes) return cache; + + if (shouldOverlayEntities && overlayEntitiesFrom) { + warn(`WorldMapFileLoader.load(): Chunk cache at ${chunkCachePath} missing entities; using entities overlay from ${overlayEntitiesFrom}.`); + } + if (shouldOverlayBlockTypes && overlayBlockTypesFrom) { + warn(`WorldMapFileLoader.load(): Chunk cache at ${chunkCachePath} missing blockTypes; using blockTypes overlay from ${overlayBlockTypesFrom}.`); + } + + return { + ...cache, + ...(shouldOverlayEntities ? { entities: overlayEntities } : {}), + ...(shouldOverlayBlockTypes ? { blockTypes: overlayBlockTypes } : {}), + }; + }; + + const loadOverlaysFromPath = (candidatePath: string): void => { + if (!needsOverlays) return; + + const parsedOverlay = readJsonIfExists(candidatePath); + if (!parsedOverlay) return; + + const overlays = extractOverlays(parsedOverlay); + + if (!overlayEntities && hasNonEmptyKeys(overlays.entities)) { + overlayEntities = overlays.entities; + overlayEntitiesFrom = candidatePath; + } + if (!overlayBlockTypes && hasNonEmptyBlockTypes(overlays.blockTypes)) { + overlayBlockTypes = overlays.blockTypes; + overlayBlockTypesFrom = candidatePath; + } + }; + + const loadOverlaysFromCompressedRaw = (compressedRaw: string, candidatePath: string): void => { + if (!needsOverlays) return; + + try { + const parsedOverlay = JSON.parse(compressedRaw) as unknown; + const overlays = extractOverlays(parsedOverlay); + if (!overlayEntities && hasNonEmptyKeys(overlays.entities)) { + overlayEntities = overlays.entities; + overlayEntitiesFrom = candidatePath; + } + if (!overlayBlockTypes && hasNonEmptyBlockTypes(overlays.blockTypes)) { + overlayBlockTypes = overlays.blockTypes; + overlayBlockTypesFrom = candidatePath; + } + } catch { + // Ignore overlay parse failures. + } + }; + + if (expected) { + const compressedPath = absoluteMapPath.endsWith('.compressed.json') + ? absoluteMapPath + : basePath + '.compressed.json'; + + if (fs.existsSync(compressedPath)) { + const compressedRaw = fs.readFileSync(compressedPath, 'utf-8'); + const actual = sha256Hex(compressedRaw); + if (actual === expected) { + loadOverlaysFromCompressedRaw(compressedRaw, compressedPath); + + return applyOverlays(); + } + + warn(`WorldMapFileLoader.load(): Chunk cache sha256 mismatch for ${chunkCachePath}; ignoring cache and falling back to JSON.`); + } else { + warn(`WorldMapFileLoader.load(): Chunk cache has source sha256, but ${compressedPath} is missing; using cache without validation.`); + + loadOverlaysFromPath(basePath + '.compressed.json'); + loadOverlaysFromPath(basePath + '.json'); + + return applyOverlays(); + } + } else { + // Cache has no source hash; accept cache. + loadOverlaysFromPath(basePath + '.compressed.json'); + loadOverlaysFromPath(basePath + '.json'); + + return applyOverlays(); + } + } catch { + if (isExplicitChunkCache) { + ErrorHandler.fatalError(`WorldMapFileLoader.load(): Failed to decode chunk cache metadata for ${chunkCachePath}.`); + } + + warn(`WorldMapFileLoader.load(): Failed to decode chunk cache metadata for ${chunkCachePath}; ignoring cache and falling back to JSON.`); + } + } else if (isExplicitChunkCache) { + ErrorHandler.fatalError(`WorldMapFileLoader.load(): Invalid chunk cache at ${chunkCachePath}.`); + } + } + } + + if (isExplicitChunkCache) { + ErrorHandler.fatalError(`WorldMapFileLoader.load(): Failed to load chunk cache at ${absoluteMapPath}.`); + } + + const raw = fs.readFileSync(absoluteMapPath, 'utf-8'); + const parsed = JSON.parse(raw) as unknown; + + if (WorldMapChunkCacheCodec.isWorldMapChunkCache(parsed)) { + return parsed; + } + + if (WorldMapCodec.isCompressedWorldMap(parsed)) { + return parsed; + } + + if (parsed && typeof parsed === 'object') { + return parsed as WorldMap; + } + + ErrorHandler.fatalError(`WorldMapFileLoader.load(): Unsupported map file format at ${absoluteMapPath}.`); + } +} From 0ed330dc014180ace32d4224e5acd43a9a98ced9 Mon Sep 17 00:00:00 2001 From: web3dev1337 <160291380+web3dev1337@users.noreply.github.com> Date: Fri, 6 Mar 2026 13:15:19 +1100 Subject: [PATCH 20/40] feat: add missing Entity animation/emissive methods + Zoo Game full PerfHarness benchmark Added startModelLoopedAnimations, startModelOneshotAnimations, setModelNodeEmissiveColor, setModelNodeEmissiveIntensity to Entity.ts for Zoo Game SDK compatibility. Zoo Game now benchmarks with full PerfHarness: avg tick 0.25ms, p99 0.85ms, 313MB heap. Co-Authored-By: Claude Opus 4.6 --- .../decisions.md | 14 +- .../progress.md | 7 +- .../perf-results/zoo-game-bots-full.json | 83 ++++++ sdk/docs/server.entity.md | 70 +++++ ...r.entity.setmodelanimationsplaybackrate.md | 59 ++++ ...server.entity.setmodelnodeemissivecolor.md | 71 +++++ ...er.entity.setmodelnodeemissiveintensity.md | 71 +++++ ...erver.entity.startmodelloopedanimations.md | 55 ++++ ...rver.entity.startmodeloneshotanimations.md | 55 ++++ sdk/server.api.json | 277 ++++++++++++++++++ sdk/server.d.ts | 46 +++ sdk/server.mjs | 98 +++---- server/etc/server.api.md | 5 + server/src/worlds/entities/Entity.ts | 85 +++++- 14 files changed, 934 insertions(+), 62 deletions(-) create mode 100644 packages/perf-tools/perf-results/zoo-game-bots-full.json create mode 100644 sdk/docs/server.entity.setmodelanimationsplaybackrate.md create mode 100644 sdk/docs/server.entity.setmodelnodeemissivecolor.md create mode 100644 sdk/docs/server.entity.setmodelnodeemissiveintensity.md create mode 100644 sdk/docs/server.entity.startmodelloopedanimations.md create mode 100644 sdk/docs/server.entity.startmodeloneshotanimations.md diff --git a/ai-memory/feature/perf-external-notes-verification-20260305-2249094/decisions.md b/ai-memory/feature/perf-external-notes-verification-20260305-2249094/decisions.md index 1244219a..64853c2d 100644 --- a/ai-memory/feature/perf-external-notes-verification-20260305-2249094/decisions.md +++ b/ai-memory/feature/perf-external-notes-verification-20260305-2249094/decisions.md @@ -1,13 +1,11 @@ # Decisions -## Game SDK Compatibility -Both HyFire2 and Zoo Game have API breaks with our local SDK build: -- **HyFire2** (0.14.27): uses `WorldMapChunkCacheCodec`, `WorldMapFileLoader` — removed in 0.15.2 -- **Zoo Game** (^0.15.2): uses `setModelAnimationsPlaybackRate` — doesn't exist in published or local 0.15.2 - -Root cause: our fork has diverged from published SDK. Games developed against published versions. -Resolution: SDK version alignment needed upstream before game benchmarks can run. -Workaround: `--no-perf-api` mode gives OS-level monitoring even without PerfHarness. +## Game SDK Compatibility — RESOLVED +Both games had API breaks with our local SDK build. Fixed by adding missing APIs: +- **HyFire2**: Restored map compression codecs (WorldMapCodec, WorldMapChunkCacheCodec, WorldMapFileLoader, WorldMapArtifacts) from `feature/map-compression` branch. Also updated World.loadMap() to accept compressed formats. +- **Zoo Game**: Added missing Entity methods: `setModelAnimationsPlaybackRate`, `startModelLoopedAnimations`, `startModelOneshotAnimations`, `setModelNodeEmissiveColor`, `setModelNodeEmissiveIntensity`. +- Both games also needed `@fails-components/webtransport` installed locally (our SDK marks it as external). +- Both now run with full PerfHarness via `npm link hytopia`. ## ProcessMonitor Design Initially monitored single PID. But `spawn(cmd, {shell:true, detached:true})` creates a shell diff --git a/ai-memory/feature/perf-external-notes-verification-20260305-2249094/progress.md b/ai-memory/feature/perf-external-notes-verification-20260305-2249094/progress.md index 19356995..3f834b71 100644 --- a/ai-memory/feature/perf-external-notes-verification-20260305-2249094/progress.md +++ b/ai-memory/feature/perf-external-notes-verification-20260305-2249094/progress.md @@ -13,6 +13,7 @@ - [x] Verified: stress benchmark — CPU avg=2.9% max=13%, RSS 196MB - [x] Verified: --no-perf-api mode — OS-only monitoring works - [x] Verified: --log-file option — server output captured to file -- [x] HyFire2 — API breaks (WorldMapChunkCacheCodec/WorldMapFileLoader removed in 0.15.2) -- [x] Zoo game — API breaks (setModelAnimationsPlaybackRate not in published 0.15.2) -- [ ] Game benchmarks blocked — both games need SDK version alignment (upstream issue) +- [x] HyFire2 — restored map compression codecs from feature/map-compression branch +- [x] Zoo game — added missing Entity methods (setModelAnimationsPlaybackRate, startModelLoopedAnimations, startModelOneshotAnimations, setModelNodeEmissiveColor, setModelNodeEmissiveIntensity) +- [x] HyFire2 benchmark — PASS: avg tick 0.61ms, p99 1.34ms, 431MB heap, 1.2GB RSS +- [x] Zoo Game benchmark (full PerfHarness) — PASS: avg tick 0.25ms, p99 0.85ms, 313MB heap, 782MB RSS diff --git a/packages/perf-tools/perf-results/zoo-game-bots-full.json b/packages/perf-tools/perf-results/zoo-game-bots-full.json new file mode 100644 index 00000000..52e5fa9b --- /dev/null +++ b/packages/perf-tools/perf-results/zoo-game-bots-full.json @@ -0,0 +1,83 @@ +{ + "timestamp": "2026-03-06T02:14:26.782Z", + "scenario": "zoo-game-18-bots", + "durationMs": 129558, + "baseline": { + "avgTickMs": 0.2549325841085261, + "maxTickMs": 2.073420000000624, + "p95TickMs": 0.6464003333326218, + "p99TickMs": 0.8528039666671854, + "ticksOverBudgetPct": 0, + "avgMemoryMb": 313.16300671895345, + "operations": { + "entities_tick": { + "avgMs": 0.04462002311489062, + "p95Ms": 0.13042361666618188 + }, + "physics_step": { + "avgMs": 0.11469806608628241, + "p95Ms": 0.2668681666667908 + }, + "physics_cleanup": { + "avgMs": 0.0021119560521985978, + "p95Ms": 0.0033652583335727587 + }, + "simulation_step": { + "avgMs": 0.11956885418414905, + "p95Ms": 0.2744475249994442 + }, + "entities_emit_updates": { + "avgMs": 0.06976556052305873, + "p95Ms": 0.20276147499901828 + }, + "send_all_packets": { + "avgMs": 0.0018747430761021815, + "p95Ms": 0.003443375000976327 + }, + "network_synchronize_cleanup": { + "avgMs": 0.003389591343193421, + "p95Ms": 0.005195633333914884 + }, + "network_synchronize": { + "avgMs": 0.027452826833688247, + "p95Ms": 0.06792570833273809 + }, + "world_tick": { + "avgMs": 0.25370135807671634, + "p95Ms": 0.6378724583342167 + }, + "ticker_tick": { + "avgMs": 0.2883600087509416, + "p95Ms": 0.6806504083335312 + } + }, + "network": { + "totalBytesSent": 0, + "totalBytesReceived": 0, + "maxConnectedPlayers": 0, + "avgBytesSentPerSecond": 0, + "maxBytesSentPerSecond": 0, + "avgBytesReceivedPerSecond": 0, + "maxBytesReceivedPerSecond": 0, + "avgPacketsSentPerSecond": 0, + "maxPacketsSentPerSecond": 0, + "avgPacketsReceivedPerSecond": 0, + "maxPacketsReceivedPerSecond": 0, + "avgSerializationMs": 0, + "compressionCountTotal": 0 + } + }, + "phases": [ + { + "name": "gameplay", + "durationMs": 108824, + "collected": true + } + ], + "metrics": { + "tickReportCount": 0, + "spikeCount": 0, + "serverSnapshotCount": 120, + "clientSnapshotCount": 0 + } +} \ No newline at end of file diff --git a/sdk/docs/server.entity.md b/sdk/docs/server.entity.md index 34eec291..54876653 100644 --- a/sdk/docs/server.entity.md +++ b/sdk/docs/server.entity.md @@ -1005,6 +1005,48 @@ Use for: glow effects or highlighted states. Sets the emissive intensity of the entity. + + + +[setModelAnimationsPlaybackRate(playbackRate)](./server.entity.setmodelanimationsplaybackrate.md) + + + + + + + +Sets the playback rate for all of the entity's model animations. + + + + + +[setModelNodeEmissiveColor(nodeName, color)](./server.entity.setmodelnodeemissivecolor.md) + + + + + + + +Sets the emissive color for a model node by name. + + + + + +[setModelNodeEmissiveIntensity(nodeName, intensity)](./server.entity.setmodelnodeemissiveintensity.md) + + + + + + + +Sets the emissive intensity for a model node by name. + + @@ -1147,6 +1189,34 @@ Spawns the entity in the world. Use for: placing the entity into a world so it simulates and syncs to clients. Do NOT use for: reusing a single entity instance across multiple worlds. + + + +[startModelLoopedAnimations(names)](./server.entity.startmodelloopedanimations.md) + + + + + + + +Starts looped animations by name on this entity's model. + + + + + +[startModelOneshotAnimations(names)](./server.entity.startmodeloneshotanimations.md) + + + + + + + +Starts one-shot animations by name on this entity's model. + + diff --git a/sdk/docs/server.entity.setmodelanimationsplaybackrate.md b/sdk/docs/server.entity.setmodelanimationsplaybackrate.md new file mode 100644 index 00000000..fcd8997a --- /dev/null +++ b/sdk/docs/server.entity.setmodelanimationsplaybackrate.md @@ -0,0 +1,59 @@ + + +[Home](./index.md) > [server](./server.md) > [Entity](./server.entity.md) > [setModelAnimationsPlaybackRate](./server.entity.setmodelanimationsplaybackrate.md) + +## Entity.setModelAnimationsPlaybackRate() method + +Sets the playback rate for all of the entity's model animations. + +**Signature:** + +```typescript +setModelAnimationsPlaybackRate(playbackRate: number): void; +``` + +## Parameters + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +playbackRate + + + + +number + + + + +The playback rate of the entity's model animations. + +\*\*Category:\*\* Entities + + +
+**Returns:** + +void + +## Remarks + +A value of 1 is normal speed, 0.5 is half speed, 2 is double speed. A negative value will play the animation in reverse. + diff --git a/sdk/docs/server.entity.setmodelnodeemissivecolor.md b/sdk/docs/server.entity.setmodelnodeemissivecolor.md new file mode 100644 index 00000000..1fa37d6c --- /dev/null +++ b/sdk/docs/server.entity.setmodelnodeemissivecolor.md @@ -0,0 +1,71 @@ + + +[Home](./index.md) > [server](./server.md) > [Entity](./server.entity.md) > [setModelNodeEmissiveColor](./server.entity.setmodelnodeemissivecolor.md) + +## Entity.setModelNodeEmissiveColor() method + +Sets the emissive color for a model node by name. + +**Signature:** + +```typescript +setModelNodeEmissiveColor(nodeName: string, color: RgbColor | undefined): void; +``` + +## Parameters + + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +nodeName + + + + +string + + + + +The node name to target. + + +
+ +color + + + + +[RgbColor](./server.rgbcolor.md) \| undefined + + + + +The RGB color to set, or undefined to clear. + +\*\*Category:\*\* Entities + + +
+**Returns:** + +void + diff --git a/sdk/docs/server.entity.setmodelnodeemissiveintensity.md b/sdk/docs/server.entity.setmodelnodeemissiveintensity.md new file mode 100644 index 00000000..0433a3b1 --- /dev/null +++ b/sdk/docs/server.entity.setmodelnodeemissiveintensity.md @@ -0,0 +1,71 @@ + + +[Home](./index.md) > [server](./server.md) > [Entity](./server.entity.md) > [setModelNodeEmissiveIntensity](./server.entity.setmodelnodeemissiveintensity.md) + +## Entity.setModelNodeEmissiveIntensity() method + +Sets the emissive intensity for a model node by name. + +**Signature:** + +```typescript +setModelNodeEmissiveIntensity(nodeName: string, intensity: number | undefined): void; +``` + +## Parameters + + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +nodeName + + + + +string + + + + +The node name to target. + + +
+ +intensity + + + + +number \| undefined + + + + +The intensity value to set, or undefined to clear. + +\*\*Category:\*\* Entities + + +
+**Returns:** + +void + diff --git a/sdk/docs/server.entity.startmodelloopedanimations.md b/sdk/docs/server.entity.startmodelloopedanimations.md new file mode 100644 index 00000000..2a901147 --- /dev/null +++ b/sdk/docs/server.entity.startmodelloopedanimations.md @@ -0,0 +1,55 @@ + + +[Home](./index.md) > [server](./server.md) > [Entity](./server.entity.md) > [startModelLoopedAnimations](./server.entity.startmodelloopedanimations.md) + +## Entity.startModelLoopedAnimations() method + +Starts looped animations by name on this entity's model. + +**Signature:** + +```typescript +startModelLoopedAnimations(names: readonly string[]): void; +``` + +## Parameters + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +names + + + + +readonly string\[\] + + + + +Animation names to start looping. + +\*\*Category:\*\* Entities + + +
+**Returns:** + +void + diff --git a/sdk/docs/server.entity.startmodeloneshotanimations.md b/sdk/docs/server.entity.startmodeloneshotanimations.md new file mode 100644 index 00000000..47cce0b6 --- /dev/null +++ b/sdk/docs/server.entity.startmodeloneshotanimations.md @@ -0,0 +1,55 @@ + + +[Home](./index.md) > [server](./server.md) > [Entity](./server.entity.md) > [startModelOneshotAnimations](./server.entity.startmodeloneshotanimations.md) + +## Entity.startModelOneshotAnimations() method + +Starts one-shot animations by name on this entity's model. + +**Signature:** + +```typescript +startModelOneshotAnimations(names: readonly string[]): void; +``` + +## Parameters + + + +
+ +Parameter + + + + +Type + + + + +Description + + +
+ +names + + + + +readonly string\[\] + + + + +Animation names to play once. + +\*\*Category:\*\* Entities + + +
+**Returns:** + +void + diff --git a/sdk/server.api.json b/sdk/server.api.json index 65857012..b34a7d19 100644 --- a/sdk/server.api.json +++ b/sdk/server.api.json @@ -18578,6 +18578,187 @@ "isAbstract": false, "name": "setEmissiveIntensity" }, + { + "kind": "Method", + "canonicalReference": "server!Entity#setModelAnimationsPlaybackRate:member(1)", + "docComment": "/**\n * Sets the playback rate for all of the entity's model animations.\n *\n * @remarks\n *\n * A value of 1 is normal speed, 0.5 is half speed, 2 is double speed. A negative value will play the animation in reverse.\n *\n * @param playbackRate - The playback rate of the entity's model animations.\n *\n * **Category:** Entities\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "setModelAnimationsPlaybackRate(playbackRate: " + }, + { + "kind": "Content", + "text": "number" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Content", + "text": "void" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "playbackRate", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setModelAnimationsPlaybackRate" + }, + { + "kind": "Method", + "canonicalReference": "server!Entity#setModelNodeEmissiveColor:member(1)", + "docComment": "/**\n * Sets the emissive color for a model node by name.\n *\n * @param nodeName - The node name to target.\n *\n * @param color - The RGB color to set, or undefined to clear.\n *\n * **Category:** Entities\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "setModelNodeEmissiveColor(nodeName: " + }, + { + "kind": "Content", + "text": "string" + }, + { + "kind": "Content", + "text": ", color: " + }, + { + "kind": "Reference", + "text": "RgbColor", + "canonicalReference": "server!RgbColor:interface" + }, + { + "kind": "Content", + "text": " | undefined" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Content", + "text": "void" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 6, + "endIndex": 7 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "nodeName", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + }, + { + "parameterName": "color", + "parameterTypeTokenRange": { + "startIndex": 3, + "endIndex": 5 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setModelNodeEmissiveColor" + }, + { + "kind": "Method", + "canonicalReference": "server!Entity#setModelNodeEmissiveIntensity:member(1)", + "docComment": "/**\n * Sets the emissive intensity for a model node by name.\n *\n * @param nodeName - The node name to target.\n *\n * @param intensity - The intensity value to set, or undefined to clear.\n *\n * **Category:** Entities\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "setModelNodeEmissiveIntensity(nodeName: " + }, + { + "kind": "Content", + "text": "string" + }, + { + "kind": "Content", + "text": ", intensity: " + }, + { + "kind": "Content", + "text": "number | undefined" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Content", + "text": "void" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 5, + "endIndex": 6 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "nodeName", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + }, + { + "parameterName": "intensity", + "parameterTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "setModelNodeEmissiveIntensity" + }, { "kind": "Method", "canonicalReference": "server!Entity#setModelScale:member(1)", @@ -19180,6 +19361,102 @@ "isAbstract": false, "name": "spawn" }, + { + "kind": "Method", + "canonicalReference": "server!Entity#startModelLoopedAnimations:member(1)", + "docComment": "/**\n * Starts looped animations by name on this entity's model.\n *\n * @param names - Animation names to start looping.\n *\n * **Category:** Entities\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "startModelLoopedAnimations(names: " + }, + { + "kind": "Content", + "text": "readonly string[]" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Content", + "text": "void" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "names", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "startModelLoopedAnimations" + }, + { + "kind": "Method", + "canonicalReference": "server!Entity#startModelOneshotAnimations:member(1)", + "docComment": "/**\n * Starts one-shot animations by name on this entity's model.\n *\n * @param names - Animation names to play once.\n *\n * **Category:** Entities\n */\n", + "excerptTokens": [ + { + "kind": "Content", + "text": "startModelOneshotAnimations(names: " + }, + { + "kind": "Content", + "text": "readonly string[]" + }, + { + "kind": "Content", + "text": "): " + }, + { + "kind": "Content", + "text": "void" + }, + { + "kind": "Content", + "text": ";" + } + ], + "isStatic": false, + "returnTypeTokenRange": { + "startIndex": 3, + "endIndex": 4 + }, + "releaseTag": "Public", + "isProtected": false, + "overloadIndex": 1, + "parameters": [ + { + "parameterName": "names", + "parameterTypeTokenRange": { + "startIndex": 1, + "endIndex": 2 + }, + "isOptional": false + } + ], + "isOptional": false, + "isAbstract": false, + "name": "startModelOneshotAnimations" + }, { "kind": "Method", "canonicalReference": "server!Entity#stopAllModelAnimations:member(1)", diff --git a/sdk/server.d.ts b/sdk/server.d.ts index dfc98ae1..d87ed7ad 100644 --- a/sdk/server.d.ts +++ b/sdk/server.d.ts @@ -3621,6 +3621,52 @@ export declare class Entity extends RigidBody implements protocol.Serializable { * **Category:** Entities */ getModelAnimation(name: string): EntityModelAnimation | undefined; + /** + * Sets the playback rate for all of the entity's model animations. + * + * @remarks + * A value of 1 is normal speed, 0.5 is half speed, 2 is double speed. + * A negative value will play the animation in reverse. + * + * @param playbackRate - The playback rate of the entity's model animations. + * + * **Category:** Entities + */ + setModelAnimationsPlaybackRate(playbackRate: number): void; + /** + * Starts looped animations by name on this entity's model. + * + * @param names - Animation names to start looping. + * + * **Category:** Entities + */ + startModelLoopedAnimations(names: readonly string[]): void; + /** + * Starts one-shot animations by name on this entity's model. + * + * @param names - Animation names to play once. + * + * **Category:** Entities + */ + startModelOneshotAnimations(names: readonly string[]): void; + /** + * Sets the emissive color for a model node by name. + * + * @param nodeName - The node name to target. + * @param color - The RGB color to set, or undefined to clear. + * + * **Category:** Entities + */ + setModelNodeEmissiveColor(nodeName: string, color: RgbColor | undefined): void; + /** + * Sets the emissive intensity for a model node by name. + * + * @param nodeName - The node name to target. + * @param intensity - The intensity value to set, or undefined to clear. + * + * **Category:** Entities + */ + setModelNodeEmissiveIntensity(nodeName: string, intensity: number | undefined): void; /** * Gets or lazily creates a model node override for the entity's model. * diff --git a/sdk/server.mjs b/sdk/server.mjs index 87fa1ca4..2cb4d313 100644 --- a/sdk/server.mjs +++ b/sdk/server.mjs @@ -1,11 +1,11 @@ -import{createRequire as I_Q}from"node:module";var U_Q=Object.create;var{getPrototypeOf:E_Q,defineProperty:F_,getOwnPropertyNames:K_Q}=Object;var V_Q=Object.prototype.hasOwnProperty;var qA=(A,Q,B)=>{B=A!=null?U_Q(E_Q(A)):{};let Y=Q||!A||!A.__esModule?F_(B,"default",{value:A,enumerable:!0}):B;for(let J of K_Q(A))if(!V_Q.call(Y,J))F_(Y,J,{get:()=>A[J],enumerable:!0});return Y};var R=(A,Q)=>()=>(Q||A((Q={exports:{}}).exports,Q),Q.exports);var iG=(A,Q)=>{for(var B in Q)F_(A,B,{get:Q[B],enumerable:!0,configurable:!0,set:(Y)=>Q[B]=()=>Y})};var u=I_Q(import.meta.url);var Ne=R((ye0,Iv)=>{var z_Q=Object.prototype.hasOwnProperty,pJ="~";function XI(){}if(Object.create){if(XI.prototype=Object.create(null),!new XI().__proto__)pJ=!1}function R_Q(A,Q,B){this.fn=A,this.context=Q,this.once=B||!1}function De(A,Q,B,Y,J){if(typeof B!=="function")throw TypeError("The listener must be a function");var C=new R_Q(B,Y||A,J),X=pJ?pJ+Q:Q;if(!A._events[X])A._events[X]=C,A._eventsCount++;else if(!A._events[X].fn)A._events[X].push(C);else A._events[X]=[A._events[X],C];return A}function Kz(A,Q){if(--A._eventsCount===0)A._events=new XI;else delete A._events[Q]}function DJ(){this._events=new XI,this._eventsCount=0}DJ.prototype.eventNames=function(){var Q=[],B,Y;if(this._eventsCount===0)return Q;for(Y in B=this._events)if(z_Q.call(B,Y))Q.push(pJ?Y.slice(1):Y);if(Object.getOwnPropertySymbols)return Q.concat(Object.getOwnPropertySymbols(B));return Q};DJ.prototype.listeners=function(Q){var B=pJ?pJ+Q:Q,Y=this._events[B];if(!Y)return[];if(Y.fn)return[Y.fn];for(var J=0,C=Y.length,X=Array(C);J{te.exports=oe;oe.sync=wvQ;var re=u("fs");function RvQ(A,Q){var B=Q.pathExt!==void 0?Q.pathExt:process.env.PATHEXT;if(!B)return!0;if(B=B.split(";"),B.indexOf("")!==-1)return!0;for(var Y=0;Y{YAA.exports=QAA;QAA.sync=jvQ;var AAA=u("fs");function QAA(A,Q,B){AAA.stat(A,function(Y,J){B(Y,Y?!1:BAA(J,Q))})}function jvQ(A,Q){return BAA(AAA.statSync(A),Q)}function BAA(A,Q){return A.isFile()&&OvQ(A,Q)}function OvQ(A,Q){var{mode:B,uid:Y,gid:J}=A,C=Q.uid!==void 0?Q.uid:process.getuid&&process.getuid(),X=Q.gid!==void 0?Q.gid:process.getgid&&process.getgid(),G=parseInt("100",8),W=parseInt("010",8),F=parseInt("001",8),Z=G|W,U=B&F||B&W&&J===X||B&G&&Y===C||B&Z&&C===0;return U}});var XAA=R((RQY,CAA)=>{var zQY=u("fs"),Oz;if(process.platform==="win32"||global.TESTING_WINDOWS)Oz=ee();else Oz=JAA();CAA.exports=Ov;Ov.sync=PvQ;function Ov(A,Q,B){if(typeof Q==="function")B=Q,Q={};if(!B){if(typeof Promise!=="function")throw TypeError("callback not provided");return new Promise(function(Y,J){Ov(A,Q||{},function(C,X){if(C)J(C);else Y(X)})})}Oz(A,Q||{},function(Y,J){if(Y){if(Y.code==="EACCES"||Q&&Q.ignoreErrors)Y=null,J=!1}B(Y,J)})}function PvQ(A,Q){try{return Oz.sync(A,Q||{})}catch(B){if(Q&&Q.ignoreErrors||B.code==="EACCES")return!1;else throw B}}});var EAA=R((wQY,UAA)=>{var w4=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",GAA=u("path"),TvQ=w4?";":":",WAA=XAA(),FAA=(A)=>Object.assign(Error(`not found: ${A}`),{code:"ENOENT"}),ZAA=(A,Q)=>{let B=Q.colon||TvQ,Y=A.match(/\//)||w4&&A.match(/\\/)?[""]:[...w4?[process.cwd()]:[],...(Q.path||process.env.PATH||"").split(B)],J=w4?Q.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",C=w4?J.split(B):[""];if(w4){if(A.indexOf(".")!==-1&&C[0]!=="")C.unshift("")}return{pathEnv:Y,pathExt:C,pathExtExe:J}},$AA=(A,Q,B)=>{if(typeof Q==="function")B=Q,Q={};if(!Q)Q={};let{pathEnv:Y,pathExt:J,pathExtExe:C}=ZAA(A,Q),X=[],G=(F)=>new Promise((Z,U)=>{if(F===Y.length)return Q.all&&X.length?Z(X):U(FAA(A));let $=Y[F],E=/^".*"$/.test($)?$.slice(1,-1):$,K=GAA.join(E,A),I=!E&&/^\.[\\\/]/.test(A)?A.slice(0,2)+K:K;Z(W(I,F,0))}),W=(F,Z,U)=>new Promise(($,E)=>{if(U===J.length)return $(G(Z+1));let K=J[U];WAA(F+K,{pathExt:C},(I,V)=>{if(!I&&V)if(Q.all)X.push(F+K);else return $(F+K);return $(W(F,Z,U+1))})});return B?G(0).then((F)=>B(null,F),B):G(0)},SvQ=(A,Q)=>{Q=Q||{};let{pathEnv:B,pathExt:Y,pathExtExe:J}=ZAA(A,Q),C=[];for(let X=0;X{var KAA=(A={})=>{let Q=A.env||process.env;if((A.platform||process.platform)!=="win32")return"PATH";return Object.keys(Q).reverse().find((Y)=>Y.toUpperCase()==="PATH")||"Path"};Pv.exports=KAA;Pv.exports.default=KAA});var NAA=R((OQY,DAA)=>{var IAA=u("path"),kvQ=EAA(),_vQ=VAA();function HAA(A,Q){let B=A.options.env||process.env,Y=process.cwd(),J=A.options.cwd!=null,C=J&&process.chdir!==void 0&&!process.chdir.disabled;if(C)try{process.chdir(A.options.cwd)}catch(G){}let X;try{X=kvQ.sync(A.command,{path:B[_vQ({env:B})],pathExt:Q?IAA.delimiter:void 0})}catch(G){}finally{if(C)process.chdir(Y)}if(X)X=IAA.resolve(J?A.options.cwd:"",X);return X}function vvQ(A){return HAA(A)||HAA(A,!0)}DAA.exports=vvQ});var LAA=R((hvQ,Sv)=>{var Tv=/([()\][%!^"`<>&|;, *?])/g;function yvQ(A){return A=A.replace(Tv,"^$1"),A}function gvQ(A,Q){if(A=`${A}`,A=A.replace(/(?=(\\+?)?)\1"/g,"$1$1\\\""),A=A.replace(/(?=(\\+?)?)\1$/,"$1$1"),A=`"${A}"`,A=A.replace(Tv,"^$1"),Q)A=A.replace(Tv,"^$1");return A}hvQ.command=yvQ;hvQ.argument=gvQ});var MAA=R((PQY,qAA)=>{qAA.exports=/^#!(.*)/});var RAA=R((TQY,zAA)=>{var bvQ=MAA();zAA.exports=(A="")=>{let Q=A.match(bvQ);if(!Q)return null;let[B,Y]=Q[0].replace(/#! ?/,"").split(" "),J=B.split("/").pop();if(J==="env")return Y;return Y?`${J} ${Y}`:J}});var jAA=R((SQY,wAA)=>{var kv=u("fs"),mvQ=RAA();function uvQ(A){let B=Buffer.alloc(150),Y;try{Y=kv.openSync(A,"r"),kv.readSync(Y,B,0,150,0),kv.closeSync(Y)}catch(J){}return mvQ(B.toString())}wAA.exports=uvQ});var SAA=R((kQY,TAA)=>{var dvQ=u("path"),OAA=NAA(),PAA=LAA(),cvQ=jAA(),lvQ=process.platform==="win32",pvQ=/\.(?:com|exe)$/i,ivQ=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function nvQ(A){A.file=OAA(A);let Q=A.file&&cvQ(A.file);if(Q)return A.args.unshift(A.file),A.command=Q,OAA(A);return A.file}function svQ(A){if(!lvQ)return A;let Q=nvQ(A),B=!pvQ.test(Q);if(A.options.forceShell||B){let Y=ivQ.test(Q);A.command=dvQ.normalize(A.command),A.command=PAA.command(A.command),A.args=A.args.map((C)=>PAA.argument(C,Y));let J=[A.command].concat(A.args).join(" ");A.args=["/d","/s","/c",`"${J}"`],A.command=process.env.comspec||"cmd.exe",A.options.windowsVerbatimArguments=!0}return A}function rvQ(A,Q,B){if(Q&&!Array.isArray(Q))B=Q,Q=null;Q=Q?Q.slice(0):[],B=Object.assign({},B);let Y={command:A,args:Q,options:B,file:void 0,original:{command:A,args:Q}};return B.shell?Y:svQ(Y)}TAA.exports=rvQ});var vAA=R((_QY,_AA)=>{var _v=process.platform==="win32";function vv(A,Q){return Object.assign(Error(`${Q} ${A.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${Q} ${A.command}`,path:A.command,spawnargs:A.args})}function avQ(A,Q){if(!_v)return;let B=A.emit;A.emit=function(Y,J){if(Y==="exit"){let C=kAA(J,Q);if(C)return B.call(A,"error",C)}return B.apply(A,arguments)}}function kAA(A,Q){if(_v&&A===1&&!Q.file)return vv(Q.original,"spawn");return null}function ovQ(A,Q){if(_v&&A===1&&!Q.file)return vv(Q.original,"spawnSync");return null}_AA.exports={hookChildProcess:avQ,verifyENOENT:kAA,verifyENOENTSync:ovQ,notFoundError:vv}});var hAA=R((vQY,j4)=>{var yAA=u("child_process"),yv=SAA(),gv=vAA();function gAA(A,Q,B){let Y=yv(A,Q,B),J=yAA.spawn(Y.command,Y.args,Y.options);return gv.hookChildProcess(J,Y),J}function tvQ(A,Q,B){let Y=yv(A,Q,B),J=yAA.spawnSync(Y.command,Y.args,Y.options);return J.error=J.error||gv.verifyENOENTSync(J.status,Y),J}j4.exports=gAA;j4.exports.spawn=gAA;j4.exports.sync=tvQ;j4.exports._parse=yv;j4.exports._enoent=gv});var py=R((f1Y,vYA)=>{vYA.exports=kYA;function kYA(A,Q,B){if(A instanceof RegExp)A=SYA(A,B);if(Q instanceof RegExp)Q=SYA(Q,B);var Y=_YA(A,Q,B);return Y&&{start:Y[0],end:Y[1],pre:B.slice(0,Y[0]),body:B.slice(Y[0]+A.length,Y[1]),post:B.slice(Y[1]+Q.length)}}function SYA(A,Q){var B=Q.match(A);return B?B[0]:null}kYA.range=_YA;function _YA(A,Q,B){var Y,J,C,X,G,W=B.indexOf(A),F=B.indexOf(Q,W+1),Z=W;if(W>=0&&F>0){if(A===Q)return[W,F];Y=[],C=B.length;while(Z>=0&&!G){if(Z==W)Y.push(Z),W=B.indexOf(A,Z+1);else if(Y.length==1)G=[Y.pop(),F];else{if(J=Y.pop(),J=0?W:F}if(Y.length)G=[C,X]}return G}});var uYA=R((b1Y,mYA)=>{var yYA=py();mYA.exports=QmQ;var gYA="\x00SLASH"+Math.random()+"\x00",hYA="\x00OPEN"+Math.random()+"\x00",ny="\x00CLOSE"+Math.random()+"\x00",xYA="\x00COMMA"+Math.random()+"\x00",fYA="\x00PERIOD"+Math.random()+"\x00";function iy(A){return parseInt(A,10)==A?parseInt(A,10):A.charCodeAt(0)}function ebQ(A){return A.split("\\\\").join(gYA).split("\\{").join(hYA).split("\\}").join(ny).split("\\,").join(xYA).split("\\.").join(fYA)}function AmQ(A){return A.split(gYA).join("\\").split(hYA).join("{").split(ny).join("}").split(xYA).join(",").split(fYA).join(".")}function bYA(A){if(!A)return[""];var Q=[],B=yYA("{","}",A);if(!B)return A.split(",");var{pre:Y,body:J,post:C}=B,X=Y.split(",");X[X.length-1]+="{"+J+"}";var G=bYA(C);if(C.length)X[X.length-1]+=G.shift(),X.push.apply(X,G);return Q.push.apply(Q,X),Q}function QmQ(A){if(!A)return[];if(A.substr(0,2)==="{}")A="\\{\\}"+A.substr(2);return MI(ebQ(A),!0).map(AmQ)}function BmQ(A){return"{"+A+"}"}function YmQ(A){return/^-?0\d/.test(A)}function JmQ(A,Q){return A<=Q}function CmQ(A,Q){return A>=Q}function MI(A,Q){var B=[],Y=yYA("{","}",A);if(!Y)return[A];var J=Y.pre,C=Y.post.length?MI(Y.post,!1):[""];if(/\$$/.test(Y.pre))for(var X=0;X=0;if(!Z&&!U){if(Y.post.match(/,.*\}/))return A=Y.pre+"{"+Y.body+ny+Y.post,MI(A);return[A]}var $;if(Z)$=Y.body.split(/\.\./);else if($=bYA(Y.body),$.length===1){if($=MI($[0],!1).map(BmQ),$.length===1)return C.map(function(_){return Y.pre+$[0]+_})}var E;if(Z){var K=iy($[0]),I=iy($[1]),V=Math.max($[0].length,$[1].length),H=$.length==3?Math.abs(iy($[2])):1,D=JmQ,L=I0){var w=Array(q+1).join("0");if(M<0)N="-"+w+N.slice(1);else N=w+N}}E.push(N)}}else{E=[];for(var P=0;P<$.length;P++)E.push.apply(E,MI($[P],!1))}for(var P=0;P{function ddQ(A){var Q=Array(A);for(var B=0;B{/*! +import{createRequire as I_Q}from"node:module";var U_Q=Object.create;var{getPrototypeOf:E_Q,defineProperty:F_,getOwnPropertyNames:K_Q}=Object;var V_Q=Object.prototype.hasOwnProperty;var qA=(A,Q,B)=>{B=A!=null?U_Q(E_Q(A)):{};let Y=Q||!A||!A.__esModule?F_(B,"default",{value:A,enumerable:!0}):B;for(let J of K_Q(A))if(!V_Q.call(Y,J))F_(Y,J,{get:()=>A[J],enumerable:!0});return Y};var R=(A,Q)=>()=>(Q||A((Q={exports:{}}).exports,Q),Q.exports);var iG=(A,Q)=>{for(var B in Q)F_(A,B,{get:Q[B],enumerable:!0,configurable:!0,set:(Y)=>Q[B]=()=>Y})};var u=I_Q(import.meta.url);var Ne=R((ye0,Iv)=>{var z_Q=Object.prototype.hasOwnProperty,pJ="~";function XI(){}if(Object.create){if(XI.prototype=Object.create(null),!new XI().__proto__)pJ=!1}function R_Q(A,Q,B){this.fn=A,this.context=Q,this.once=B||!1}function De(A,Q,B,Y,J){if(typeof B!=="function")throw TypeError("The listener must be a function");var C=new R_Q(B,Y||A,J),X=pJ?pJ+Q:Q;if(!A._events[X])A._events[X]=C,A._eventsCount++;else if(!A._events[X].fn)A._events[X].push(C);else A._events[X]=[A._events[X],C];return A}function Kz(A,Q){if(--A._eventsCount===0)A._events=new XI;else delete A._events[Q]}function DJ(){this._events=new XI,this._eventsCount=0}DJ.prototype.eventNames=function(){var Q=[],B,Y;if(this._eventsCount===0)return Q;for(Y in B=this._events)if(z_Q.call(B,Y))Q.push(pJ?Y.slice(1):Y);if(Object.getOwnPropertySymbols)return Q.concat(Object.getOwnPropertySymbols(B));return Q};DJ.prototype.listeners=function(Q){var B=pJ?pJ+Q:Q,Y=this._events[B];if(!Y)return[];if(Y.fn)return[Y.fn];for(var J=0,C=Y.length,X=Array(C);J{te.exports=oe;oe.sync=wvQ;var re=u("fs");function RvQ(A,Q){var B=Q.pathExt!==void 0?Q.pathExt:process.env.PATHEXT;if(!B)return!0;if(B=B.split(";"),B.indexOf("")!==-1)return!0;for(var Y=0;Y{YAA.exports=QAA;QAA.sync=jvQ;var AAA=u("fs");function QAA(A,Q,B){AAA.stat(A,function(Y,J){B(Y,Y?!1:BAA(J,Q))})}function jvQ(A,Q){return BAA(AAA.statSync(A),Q)}function BAA(A,Q){return A.isFile()&&OvQ(A,Q)}function OvQ(A,Q){var{mode:B,uid:Y,gid:J}=A,C=Q.uid!==void 0?Q.uid:process.getuid&&process.getuid(),X=Q.gid!==void 0?Q.gid:process.getgid&&process.getgid(),G=parseInt("100",8),W=parseInt("010",8),F=parseInt("001",8),Z=G|W,U=B&F||B&W&&J===X||B&G&&Y===C||B&Z&&C===0;return U}});var XAA=R((RQY,CAA)=>{var zQY=u("fs"),Oz;if(process.platform==="win32"||global.TESTING_WINDOWS)Oz=ee();else Oz=JAA();CAA.exports=Ov;Ov.sync=PvQ;function Ov(A,Q,B){if(typeof Q==="function")B=Q,Q={};if(!B){if(typeof Promise!=="function")throw TypeError("callback not provided");return new Promise(function(Y,J){Ov(A,Q||{},function(C,X){if(C)J(C);else Y(X)})})}Oz(A,Q||{},function(Y,J){if(Y){if(Y.code==="EACCES"||Q&&Q.ignoreErrors)Y=null,J=!1}B(Y,J)})}function PvQ(A,Q){try{return Oz.sync(A,Q||{})}catch(B){if(Q&&Q.ignoreErrors||B.code==="EACCES")return!1;else throw B}}});var EAA=R((wQY,UAA)=>{var j4=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",GAA=u("path"),TvQ=j4?";":":",WAA=XAA(),FAA=(A)=>Object.assign(Error(`not found: ${A}`),{code:"ENOENT"}),ZAA=(A,Q)=>{let B=Q.colon||TvQ,Y=A.match(/\//)||j4&&A.match(/\\/)?[""]:[...j4?[process.cwd()]:[],...(Q.path||process.env.PATH||"").split(B)],J=j4?Q.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",C=j4?J.split(B):[""];if(j4){if(A.indexOf(".")!==-1&&C[0]!=="")C.unshift("")}return{pathEnv:Y,pathExt:C,pathExtExe:J}},$AA=(A,Q,B)=>{if(typeof Q==="function")B=Q,Q={};if(!Q)Q={};let{pathEnv:Y,pathExt:J,pathExtExe:C}=ZAA(A,Q),X=[],G=(F)=>new Promise((Z,U)=>{if(F===Y.length)return Q.all&&X.length?Z(X):U(FAA(A));let $=Y[F],E=/^".*"$/.test($)?$.slice(1,-1):$,K=GAA.join(E,A),I=!E&&/^\.[\\\/]/.test(A)?A.slice(0,2)+K:K;Z(W(I,F,0))}),W=(F,Z,U)=>new Promise(($,E)=>{if(U===J.length)return $(G(Z+1));let K=J[U];WAA(F+K,{pathExt:C},(I,V)=>{if(!I&&V)if(Q.all)X.push(F+K);else return $(F+K);return $(W(F,Z,U+1))})});return B?G(0).then((F)=>B(null,F),B):G(0)},SvQ=(A,Q)=>{Q=Q||{};let{pathEnv:B,pathExt:Y,pathExtExe:J}=ZAA(A,Q),C=[];for(let X=0;X{var KAA=(A={})=>{let Q=A.env||process.env;if((A.platform||process.platform)!=="win32")return"PATH";return Object.keys(Q).reverse().find((Y)=>Y.toUpperCase()==="PATH")||"Path"};Pv.exports=KAA;Pv.exports.default=KAA});var NAA=R((OQY,DAA)=>{var IAA=u("path"),kvQ=EAA(),_vQ=VAA();function HAA(A,Q){let B=A.options.env||process.env,Y=process.cwd(),J=A.options.cwd!=null,C=J&&process.chdir!==void 0&&!process.chdir.disabled;if(C)try{process.chdir(A.options.cwd)}catch(G){}let X;try{X=kvQ.sync(A.command,{path:B[_vQ({env:B})],pathExt:Q?IAA.delimiter:void 0})}catch(G){}finally{if(C)process.chdir(Y)}if(X)X=IAA.resolve(J?A.options.cwd:"",X);return X}function vvQ(A){return HAA(A)||HAA(A,!0)}DAA.exports=vvQ});var LAA=R((hvQ,Sv)=>{var Tv=/([()\][%!^"`<>&|;, *?])/g;function yvQ(A){return A=A.replace(Tv,"^$1"),A}function gvQ(A,Q){if(A=`${A}`,A=A.replace(/(?=(\\+?)?)\1"/g,"$1$1\\\""),A=A.replace(/(?=(\\+?)?)\1$/,"$1$1"),A=`"${A}"`,A=A.replace(Tv,"^$1"),Q)A=A.replace(Tv,"^$1");return A}hvQ.command=yvQ;hvQ.argument=gvQ});var MAA=R((PQY,qAA)=>{qAA.exports=/^#!(.*)/});var RAA=R((TQY,zAA)=>{var bvQ=MAA();zAA.exports=(A="")=>{let Q=A.match(bvQ);if(!Q)return null;let[B,Y]=Q[0].replace(/#! ?/,"").split(" "),J=B.split("/").pop();if(J==="env")return Y;return Y?`${J} ${Y}`:J}});var jAA=R((SQY,wAA)=>{var kv=u("fs"),mvQ=RAA();function uvQ(A){let B=Buffer.alloc(150),Y;try{Y=kv.openSync(A,"r"),kv.readSync(Y,B,0,150,0),kv.closeSync(Y)}catch(J){}return mvQ(B.toString())}wAA.exports=uvQ});var SAA=R((kQY,TAA)=>{var dvQ=u("path"),OAA=NAA(),PAA=LAA(),cvQ=jAA(),lvQ=process.platform==="win32",pvQ=/\.(?:com|exe)$/i,ivQ=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function nvQ(A){A.file=OAA(A);let Q=A.file&&cvQ(A.file);if(Q)return A.args.unshift(A.file),A.command=Q,OAA(A);return A.file}function svQ(A){if(!lvQ)return A;let Q=nvQ(A),B=!pvQ.test(Q);if(A.options.forceShell||B){let Y=ivQ.test(Q);A.command=dvQ.normalize(A.command),A.command=PAA.command(A.command),A.args=A.args.map((C)=>PAA.argument(C,Y));let J=[A.command].concat(A.args).join(" ");A.args=["/d","/s","/c",`"${J}"`],A.command=process.env.comspec||"cmd.exe",A.options.windowsVerbatimArguments=!0}return A}function rvQ(A,Q,B){if(Q&&!Array.isArray(Q))B=Q,Q=null;Q=Q?Q.slice(0):[],B=Object.assign({},B);let Y={command:A,args:Q,options:B,file:void 0,original:{command:A,args:Q}};return B.shell?Y:svQ(Y)}TAA.exports=rvQ});var vAA=R((_QY,_AA)=>{var _v=process.platform==="win32";function vv(A,Q){return Object.assign(Error(`${Q} ${A.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${Q} ${A.command}`,path:A.command,spawnargs:A.args})}function avQ(A,Q){if(!_v)return;let B=A.emit;A.emit=function(Y,J){if(Y==="exit"){let C=kAA(J,Q);if(C)return B.call(A,"error",C)}return B.apply(A,arguments)}}function kAA(A,Q){if(_v&&A===1&&!Q.file)return vv(Q.original,"spawn");return null}function ovQ(A,Q){if(_v&&A===1&&!Q.file)return vv(Q.original,"spawnSync");return null}_AA.exports={hookChildProcess:avQ,verifyENOENT:kAA,verifyENOENTSync:ovQ,notFoundError:vv}});var hAA=R((vQY,O4)=>{var yAA=u("child_process"),yv=SAA(),gv=vAA();function gAA(A,Q,B){let Y=yv(A,Q,B),J=yAA.spawn(Y.command,Y.args,Y.options);return gv.hookChildProcess(J,Y),J}function tvQ(A,Q,B){let Y=yv(A,Q,B),J=yAA.spawnSync(Y.command,Y.args,Y.options);return J.error=J.error||gv.verifyENOENTSync(J.status,Y),J}O4.exports=gAA;O4.exports.spawn=gAA;O4.exports.sync=tvQ;O4.exports._parse=yv;O4.exports._enoent=gv});var py=R((f1Y,vYA)=>{vYA.exports=kYA;function kYA(A,Q,B){if(A instanceof RegExp)A=SYA(A,B);if(Q instanceof RegExp)Q=SYA(Q,B);var Y=_YA(A,Q,B);return Y&&{start:Y[0],end:Y[1],pre:B.slice(0,Y[0]),body:B.slice(Y[0]+A.length,Y[1]),post:B.slice(Y[1]+Q.length)}}function SYA(A,Q){var B=Q.match(A);return B?B[0]:null}kYA.range=_YA;function _YA(A,Q,B){var Y,J,C,X,G,W=B.indexOf(A),F=B.indexOf(Q,W+1),Z=W;if(W>=0&&F>0){if(A===Q)return[W,F];Y=[],C=B.length;while(Z>=0&&!G){if(Z==W)Y.push(Z),W=B.indexOf(A,Z+1);else if(Y.length==1)G=[Y.pop(),F];else{if(J=Y.pop(),J=0?W:F}if(Y.length)G=[C,X]}return G}});var uYA=R((b1Y,mYA)=>{var yYA=py();mYA.exports=QmQ;var gYA="\x00SLASH"+Math.random()+"\x00",hYA="\x00OPEN"+Math.random()+"\x00",ny="\x00CLOSE"+Math.random()+"\x00",xYA="\x00COMMA"+Math.random()+"\x00",fYA="\x00PERIOD"+Math.random()+"\x00";function iy(A){return parseInt(A,10)==A?parseInt(A,10):A.charCodeAt(0)}function ebQ(A){return A.split("\\\\").join(gYA).split("\\{").join(hYA).split("\\}").join(ny).split("\\,").join(xYA).split("\\.").join(fYA)}function AmQ(A){return A.split(gYA).join("\\").split(hYA).join("{").split(ny).join("}").split(xYA).join(",").split(fYA).join(".")}function bYA(A){if(!A)return[""];var Q=[],B=yYA("{","}",A);if(!B)return A.split(",");var{pre:Y,body:J,post:C}=B,X=Y.split(",");X[X.length-1]+="{"+J+"}";var G=bYA(C);if(C.length)X[X.length-1]+=G.shift(),X.push.apply(X,G);return Q.push.apply(Q,X),Q}function QmQ(A){if(!A)return[];if(A.substr(0,2)==="{}")A="\\{\\}"+A.substr(2);return MI(ebQ(A),!0).map(AmQ)}function BmQ(A){return"{"+A+"}"}function YmQ(A){return/^-?0\d/.test(A)}function JmQ(A,Q){return A<=Q}function CmQ(A,Q){return A>=Q}function MI(A,Q){var B=[],Y=yYA("{","}",A);if(!Y)return[A];var J=Y.pre,C=Y.post.length?MI(Y.post,!1):[""];if(/\$$/.test(Y.pre))for(var X=0;X=0;if(!Z&&!U){if(Y.post.match(/,.*\}/))return A=Y.pre+"{"+Y.body+ny+Y.post,MI(A);return[A]}var $;if(Z)$=Y.body.split(/\.\./);else if($=bYA(Y.body),$.length===1){if($=MI($[0],!1).map(BmQ),$.length===1)return C.map(function(_){return Y.pre+$[0]+_})}var E;if(Z){var K=iy($[0]),I=iy($[1]),V=Math.max($[0].length,$[1].length),H=$.length==3?Math.abs(iy($[2])):1,D=JmQ,L=I0){var w=Array(q+1).join("0");if(M<0)N="-"+w+N.slice(1);else N=w+N}}E.push(N)}}else{E=[];for(var P=0;P<$.length;P++)E.push.apply(E,MI($[P],!1))}for(var P=0;P{function ddQ(A){var Q=Array(A);for(var B=0;B{/*! * Determine if an object is a Buffer * * @author Feross Aboukhadijeh * @license MIT */D9A.exports=function(A){return A!=null&&(H9A(A)||cdQ(A)||!!A._isBuffer)};function H9A(A){return!!A.constructor&&typeof A.constructor.isBuffer==="function"&&A.constructor.isBuffer(A)}function cdQ(A){return typeof A.readFloatLE==="function"&&typeof A.slice==="function"&&H9A(A.slice(0,0))}});var Qh=R((A6Y,L9A)=>{var ldQ=I9A(),pdQ=N9A(),idQ=typeof Float64Array<"u";function ndQ(A,Q){return A[0]-Q[0]}function sdQ(){var A=this.stride,Q=Array(A.length),B;for(B=0;BMath.abs(this.stride[1]))?[1,0]:[0,1]}})");else if(Q===3)J.push("var s0=Math.abs(this.stride[0]),s1=Math.abs(this.stride[1]),s2=Math.abs(this.stride[2]);if(s0>s1){if(s1>s2){return [2,1,0];}else if(s0>s2){return [1,2,0];}else{return [1,0,2];}}else if(s0>s2){return [2,0,1];}else if(s2>s1){return [0,1,2];}else{return [0,2,1];}}})")}else J.push("ORDER})");if(J.push("proto.set=function "+B+"_set("+X.join(",")+",v){"),Y)J.push("return this.data.set("+G+",v)}");else J.push("return this.data["+G+"]=v}");if(J.push("proto.get=function "+B+"_get("+X.join(",")+"){"),Y)J.push("return this.data.get("+G+")}");else J.push("return this.data["+G+"]}");J.push("proto.index=function "+B+"_index(",X.join(),"){return "+G+"}"),J.push("proto.hi=function "+B+"_hi("+X.join(",")+"){return new "+B+"(this.data,"+C.map(function(V){return["(typeof i",V,"!=='number'||i",V,"<0)?this.shape[",V,"]:i",V,"|0"].join("")}).join(",")+","+C.map(function(V){return"this.stride["+V+"]"}).join(",")+",this.offset)}");var Z=C.map(function(V){return"a"+V+"=this.shape["+V+"]"}),U=C.map(function(V){return"c"+V+"=this.stride["+V+"]"});J.push("proto.lo=function "+B+"_lo("+X.join(",")+"){var b=this.offset,d=0,"+Z.join(",")+","+U.join(","));for(var $=0;$=0){d=i"+$+"|0;b+=c"+$+"*d;a"+$+"-=d}");J.push("return new "+B+"(this.data,"+C.map(function(V){return"a"+V}).join(",")+","+C.map(function(V){return"c"+V}).join(",")+",b)}"),J.push("proto.step=function "+B+"_step("+X.join(",")+"){var "+C.map(function(V){return"a"+V+"=this.shape["+V+"]"}).join(",")+","+C.map(function(V){return"b"+V+"=this.stride["+V+"]"}).join(",")+",c=this.offset,d=0,ceil=Math.ceil");for(var $=0;$=0){c=(c+this.stride["+$+"]*i"+$+")|0}else{a.push(this.shape["+$+"]);b.push(this.stride["+$+"])}");J.push("var ctor=CTOR_LIST[a.length+1];return ctor(this.data,a,b,c)}"),J.push("return function construct_"+B+"(data,shape,stride,offset){return new "+B+"(data,"+C.map(function(V){return"shape["+V+"]"}).join(",")+","+C.map(function(V){return"stride["+V+"]"}).join(",")+",offset)}");var I=Function("CTOR_LIST","ORDER",J.join(` -`));return I(Z3[A],sdQ)}function adQ(A){if(pdQ(A))return"buffer";if(idQ)switch(Object.prototype.toString.call(A)){case"[object Float64Array]":return"float64";case"[object Float32Array]":return"float32";case"[object Int8Array]":return"int8";case"[object Int16Array]":return"int16";case"[object Int32Array]":return"int32";case"[object Uint8Array]":return"uint8";case"[object Uint16Array]":return"uint16";case"[object Uint32Array]":return"uint32";case"[object Uint8ClampedArray]":return"uint8_clamped";case"[object BigInt64Array]":return"bigint64";case"[object BigUint64Array]":return"biguint64"}if(Array.isArray(A))return"array";return"generic"}var Z3={float32:[],float64:[],int8:[],int16:[],int32:[],uint8:[],uint16:[],uint32:[],array:[],uint8_clamped:[],bigint64:[],biguint64:[],buffer:[],generic:[]};function odQ(A,Q,B,Y){if(A===void 0){var F=Z3.array[0];return F([])}else if(typeof A==="number")A=[A];if(Q===void 0)Q=[A.length];var J=Q.length;if(B===void 0){B=Array(J);for(var C=J-1,X=1;C>=0;--C)B[C]=X,X*=Q[C]}if(Y===void 0){Y=0;for(var C=0;C{var q9A=function(A){return typeof A<"u"&&A!==null},tdQ=function(A){return typeof A==="object"},edQ=function(A){return Object.prototype.toString.call(A)==="[object Object]"},AcQ=function(A){return typeof A==="function"},QcQ=function(A){return typeof A==="boolean"},BcQ=function(A){return A instanceof Buffer},YcQ=function(A){if(q9A(A))switch(A.constructor){case Uint8Array:case Uint8ClampedArray:case Int8Array:case Uint16Array:case Int16Array:case Uint32Array:case Int32Array:case Float32Array:case Float64Array:return!0}return!1},JcQ=function(A){return A instanceof ArrayBuffer},CcQ=function(A){return typeof A==="string"&&A.length>0},XcQ=function(A){return typeof A==="number"&&!Number.isNaN(A)},GcQ=function(A){return Number.isInteger(A)},WcQ=function(A,Q,B){return A>=Q&&A<=B},FcQ=function(A,Q){return Q.includes(A)},ZcQ=function(A,Q,B){return Error(`Expected ${Q} for ${A} but received ${B} of type ${typeof B}`)},$cQ=function(A,Q){return Q.message=A.message,Q};M9A.exports={defined:q9A,object:tdQ,plainObject:edQ,fn:AcQ,bool:QcQ,buffer:BcQ,typedArray:YcQ,arrayBuffer:JcQ,string:CcQ,number:XcQ,integer:GcQ,inRange:WcQ,inArray:FcQ,invalidParameterError:ZcQ,nativeError:$cQ}});var w9A=R((B6Y,R9A)=>{var z9A=()=>process.platform==="linux",$3=null,UcQ=()=>{if(!$3)if(z9A()&&process.report){let A=process.report.excludeNetwork;process.report.excludeNetwork=!0,$3=process.report.getReport(),process.report.excludeNetwork=A}else $3={};return $3};R9A.exports={isLinux:z9A,getReport:UcQ}});var P9A=R((Y6Y,O9A)=>{var j9A=u("fs"),EcQ=(A)=>j9A.readFileSync(A,"utf-8"),KcQ=(A)=>new Promise((Q,B)=>{j9A.readFile(A,"utf-8",(Y,J)=>{if(Y)B(Y);else Q(J)})});O9A.exports={LDD_PATH:"/usr/bin/ldd",readFileSync:EcQ,readFile:KcQ}});var AH=R((J6Y,l9A)=>{var S9A=u("child_process"),{isLinux:o4,getReport:k9A}=w9A(),{LDD_PATH:U3,readFile:_9A,readFileSync:v9A}=P9A(),h1,x1,G7="",y9A=()=>{if(!G7)return new Promise((A)=>{S9A.exec("getconf GNU_LIBC_VERSION 2>&1 || true; ldd --version 2>&1 || true",(Q,B)=>{G7=Q?" ":B,A(G7)})});return G7},g9A=()=>{if(!G7)try{G7=S9A.execSync("getconf GNU_LIBC_VERSION 2>&1 || true; ldd --version 2>&1 || true",{encoding:"utf8"})}catch(A){G7=" "}return G7},W7="glibc",h9A=/LIBC[a-z0-9 \-).]*?(\d+\.\d+)/i,a4="musl",VcQ=(A)=>A.includes("libc.musl-")||A.includes("ld-musl-"),x9A=()=>{let A=k9A();if(A.header&&A.header.glibcVersionRuntime)return W7;if(Array.isArray(A.sharedObjects)){if(A.sharedObjects.some(VcQ))return a4}return null},f9A=(A)=>{let[Q,B]=A.split(/[\r\n]+/);if(Q&&Q.includes(W7))return W7;if(B&&B.includes(a4))return a4;return null},b9A=(A)=>{if(A.includes("musl"))return a4;if(A.includes("GNU C Library"))return W7;return null},IcQ=async()=>{if(h1!==void 0)return h1;h1=null;try{let A=await _9A(U3);h1=b9A(A)}catch(A){}return h1},HcQ=()=>{if(h1!==void 0)return h1;h1=null;try{let A=v9A(U3);h1=b9A(A)}catch(A){}return h1},m9A=async()=>{let A=null;if(o4()){if(A=await IcQ(),!A)A=x9A();if(!A){let Q=await y9A();A=f9A(Q)}}return A},u9A=()=>{let A=null;if(o4()){if(A=HcQ(),!A)A=x9A();if(!A){let Q=g9A();A=f9A(Q)}}return A},DcQ=async()=>o4()&&await m9A()!==W7,NcQ=()=>o4()&&u9A()!==W7,LcQ=async()=>{if(x1!==void 0)return x1;x1=null;try{let Q=(await _9A(U3)).match(h9A);if(Q)x1=Q[1]}catch(A){}return x1},qcQ=()=>{if(x1!==void 0)return x1;x1=null;try{let Q=v9A(U3).match(h9A);if(Q)x1=Q[1]}catch(A){}return x1},d9A=()=>{let A=k9A();if(A.header&&A.header.glibcVersionRuntime)return A.header.glibcVersionRuntime;return null},T9A=(A)=>A.trim().split(/\s+/)[1],c9A=(A)=>{let[Q,B,Y]=A.split(/[\r\n]+/);if(Q&&Q.includes(W7))return T9A(Q);if(B&&Y&&B.includes(a4))return T9A(Y);return null},McQ=async()=>{let A=null;if(o4()){if(A=await LcQ(),!A)A=d9A();if(!A){let Q=await y9A();A=c9A(Q)}}return A},zcQ=()=>{let A=null;if(o4()){if(A=qcQ(),!A)A=d9A();if(!A){let Q=g9A();A=c9A(Q)}}return A};l9A.exports={GLIBC:W7,MUSL:a4,family:m9A,familySync:u9A,isNonGlibcLinux:DcQ,isNonGlibcLinuxSync:NcQ,version:McQ,versionSync:zcQ}});var QH=R((C6Y,p9A)=>{var RcQ=typeof process==="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...A)=>console.error("SEMVER",...A):()=>{};p9A.exports=RcQ});var E3=R((X6Y,i9A)=>{var wcQ=Number.MAX_SAFE_INTEGER||9007199254740991,jcQ=["major","premajor","minor","preminor","patch","prepatch","prerelease"];i9A.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:16,MAX_SAFE_BUILD_LENGTH:250,MAX_SAFE_INTEGER:wcQ,RELEASE_TYPES:jcQ,SEMVER_SPEC_VERSION:"2.0.0",FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var BH=R((f1,n9A)=>{var{MAX_SAFE_COMPONENT_LENGTH:Bh,MAX_SAFE_BUILD_LENGTH:OcQ,MAX_LENGTH:PcQ}=E3(),TcQ=QH();f1=n9A.exports={};var ScQ=f1.re=[],kcQ=f1.safeRe=[],dA=f1.src=[],_cQ=f1.safeSrc=[],cA=f1.t={},vcQ=0,Yh="[a-zA-Z0-9-]",ycQ=[["\\s",1],["\\d",PcQ],[Yh,OcQ]],gcQ=(A)=>{for(let[Q,B]of ycQ)A=A.split(`${Q}*`).join(`${Q}{0,${B}}`).split(`${Q}+`).join(`${Q}{1,${B}}`);return A},uQ=(A,Q,B)=>{let Y=gcQ(Q),J=vcQ++;TcQ(A,J,Q),cA[A]=J,dA[J]=Q,_cQ[J]=Y,ScQ[J]=new RegExp(Q,B?"g":void 0),kcQ[J]=new RegExp(Y,B?"g":void 0)};uQ("NUMERICIDENTIFIER","0|[1-9]\\d*");uQ("NUMERICIDENTIFIERLOOSE","\\d+");uQ("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${Yh}*`);uQ("MAINVERSION",`(${dA[cA.NUMERICIDENTIFIER]})\\.(${dA[cA.NUMERICIDENTIFIER]})\\.(${dA[cA.NUMERICIDENTIFIER]})`);uQ("MAINVERSIONLOOSE",`(${dA[cA.NUMERICIDENTIFIERLOOSE]})\\.(${dA[cA.NUMERICIDENTIFIERLOOSE]})\\.(${dA[cA.NUMERICIDENTIFIERLOOSE]})`);uQ("PRERELEASEIDENTIFIER",`(?:${dA[cA.NONNUMERICIDENTIFIER]}|${dA[cA.NUMERICIDENTIFIER]})`);uQ("PRERELEASEIDENTIFIERLOOSE",`(?:${dA[cA.NONNUMERICIDENTIFIER]}|${dA[cA.NUMERICIDENTIFIERLOOSE]})`);uQ("PRERELEASE",`(?:-(${dA[cA.PRERELEASEIDENTIFIER]}(?:\\.${dA[cA.PRERELEASEIDENTIFIER]})*))`);uQ("PRERELEASELOOSE",`(?:-?(${dA[cA.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${dA[cA.PRERELEASEIDENTIFIERLOOSE]})*))`);uQ("BUILDIDENTIFIER",`${Yh}+`);uQ("BUILD",`(?:\\+(${dA[cA.BUILDIDENTIFIER]}(?:\\.${dA[cA.BUILDIDENTIFIER]})*))`);uQ("FULLPLAIN",`v?${dA[cA.MAINVERSION]}${dA[cA.PRERELEASE]}?${dA[cA.BUILD]}?`);uQ("FULL",`^${dA[cA.FULLPLAIN]}$`);uQ("LOOSEPLAIN",`[v=\\s]*${dA[cA.MAINVERSIONLOOSE]}${dA[cA.PRERELEASELOOSE]}?${dA[cA.BUILD]}?`);uQ("LOOSE",`^${dA[cA.LOOSEPLAIN]}$`);uQ("GTLT","((?:<|>)?=?)");uQ("XRANGEIDENTIFIERLOOSE",`${dA[cA.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);uQ("XRANGEIDENTIFIER",`${dA[cA.NUMERICIDENTIFIER]}|x|X|\\*`);uQ("XRANGEPLAIN",`[v=\\s]*(${dA[cA.XRANGEIDENTIFIER]})(?:\\.(${dA[cA.XRANGEIDENTIFIER]})(?:\\.(${dA[cA.XRANGEIDENTIFIER]})(?:${dA[cA.PRERELEASE]})?${dA[cA.BUILD]}?)?)?`);uQ("XRANGEPLAINLOOSE",`[v=\\s]*(${dA[cA.XRANGEIDENTIFIERLOOSE]})(?:\\.(${dA[cA.XRANGEIDENTIFIERLOOSE]})(?:\\.(${dA[cA.XRANGEIDENTIFIERLOOSE]})(?:${dA[cA.PRERELEASELOOSE]})?${dA[cA.BUILD]}?)?)?`);uQ("XRANGE",`^${dA[cA.GTLT]}\\s*${dA[cA.XRANGEPLAIN]}$`);uQ("XRANGELOOSE",`^${dA[cA.GTLT]}\\s*${dA[cA.XRANGEPLAINLOOSE]}$`);uQ("COERCEPLAIN",`(^|[^\\d])(\\d{1,${Bh}})(?:\\.(\\d{1,${Bh}}))?(?:\\.(\\d{1,${Bh}}))?`);uQ("COERCE",`${dA[cA.COERCEPLAIN]}(?:$|[^\\d])`);uQ("COERCEFULL",dA[cA.COERCEPLAIN]+`(?:${dA[cA.PRERELEASE]})?(?:${dA[cA.BUILD]})?(?:$|[^\\d])`);uQ("COERCERTL",dA[cA.COERCE],!0);uQ("COERCERTLFULL",dA[cA.COERCEFULL],!0);uQ("LONETILDE","(?:~>?)");uQ("TILDETRIM",`(\\s*)${dA[cA.LONETILDE]}\\s+`,!0);f1.tildeTrimReplace="$1~";uQ("TILDE",`^${dA[cA.LONETILDE]}${dA[cA.XRANGEPLAIN]}$`);uQ("TILDELOOSE",`^${dA[cA.LONETILDE]}${dA[cA.XRANGEPLAINLOOSE]}$`);uQ("LONECARET","(?:\\^)");uQ("CARETTRIM",`(\\s*)${dA[cA.LONECARET]}\\s+`,!0);f1.caretTrimReplace="$1^";uQ("CARET",`^${dA[cA.LONECARET]}${dA[cA.XRANGEPLAIN]}$`);uQ("CARETLOOSE",`^${dA[cA.LONECARET]}${dA[cA.XRANGEPLAINLOOSE]}$`);uQ("COMPARATORLOOSE",`^${dA[cA.GTLT]}\\s*(${dA[cA.LOOSEPLAIN]})$|^$`);uQ("COMPARATOR",`^${dA[cA.GTLT]}\\s*(${dA[cA.FULLPLAIN]})$|^$`);uQ("COMPARATORTRIM",`(\\s*)${dA[cA.GTLT]}\\s*(${dA[cA.LOOSEPLAIN]}|${dA[cA.XRANGEPLAIN]})`,!0);f1.comparatorTrimReplace="$1$2$3";uQ("HYPHENRANGE",`^\\s*(${dA[cA.XRANGEPLAIN]})\\s+-\\s+(${dA[cA.XRANGEPLAIN]})\\s*$`);uQ("HYPHENRANGELOOSE",`^\\s*(${dA[cA.XRANGEPLAINLOOSE]})\\s+-\\s+(${dA[cA.XRANGEPLAINLOOSE]})\\s*$`);uQ("STAR","(<|>)?=?\\s*\\*");uQ("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");uQ("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var K3=R((G6Y,s9A)=>{var hcQ=Object.freeze({loose:!0}),xcQ=Object.freeze({}),fcQ=(A)=>{if(!A)return xcQ;if(typeof A!=="object")return hcQ;return A};s9A.exports=fcQ});var t9A=R((W6Y,o9A)=>{var r9A=/^[0-9]+$/,a9A=(A,Q)=>{let B=r9A.test(A),Y=r9A.test(Q);if(B&&Y)A=+A,Q=+Q;return A===Q?0:B&&!Y?-1:Y&&!B?1:Aa9A(Q,A);o9A.exports={compareIdentifiers:a9A,rcompareIdentifiers:bcQ}});var e4=R((F6Y,A8A)=>{var V3=QH(),{MAX_LENGTH:e9A,MAX_SAFE_INTEGER:I3}=E3(),{safeRe:H3,t:D3}=BH(),mcQ=K3(),{compareIdentifiers:t4}=t9A();class PC{constructor(A,Q){if(Q=mcQ(Q),A instanceof PC)if(A.loose===!!Q.loose&&A.includePrerelease===!!Q.includePrerelease)return A;else A=A.version;else if(typeof A!=="string")throw TypeError(`Invalid version. Must be a string. Got type "${typeof A}".`);if(A.length>e9A)throw TypeError(`version is longer than ${e9A} characters`);V3("SemVer",A,Q),this.options=Q,this.loose=!!Q.loose,this.includePrerelease=!!Q.includePrerelease;let B=A.trim().match(Q.loose?H3[D3.LOOSE]:H3[D3.FULL]);if(!B)throw TypeError(`Invalid Version: ${A}`);if(this.raw=A,this.major=+B[1],this.minor=+B[2],this.patch=+B[3],this.major>I3||this.major<0)throw TypeError("Invalid major version");if(this.minor>I3||this.minor<0)throw TypeError("Invalid minor version");if(this.patch>I3||this.patch<0)throw TypeError("Invalid patch version");if(!B[4])this.prerelease=[];else this.prerelease=B[4].split(".").map((Y)=>{if(/^[0-9]+$/.test(Y)){let J=+Y;if(J>=0&&J=0)if(typeof this.prerelease[J]==="number")this.prerelease[J]++,J=-2;if(J===-1){if(Q===this.prerelease.join(".")&&B===!1)throw Error("invalid increment argument: identifier already exists");this.prerelease.push(Y)}}if(Q){let J=[Q,Y];if(B===!1)J=[Q];if(t4(this.prerelease[0],Q)===0){if(isNaN(this.prerelease[1]))this.prerelease=J}else this.prerelease=J}break}default:throw Error(`invalid increment argument: ${A}`)}if(this.raw=this.format(),this.build.length)this.raw+=`+${this.build.join(".")}`;return this}}A8A.exports=PC});var Y8A=R((Z6Y,B8A)=>{var Q8A=e4(),ucQ=(A,Q,B=!1)=>{if(A instanceof Q8A)return A;try{return new Q8A(A,Q)}catch(Y){if(!B)return null;throw Y}};B8A.exports=ucQ});var C8A=R(($6Y,J8A)=>{var dcQ=e4(),ccQ=Y8A(),{safeRe:N3,t:L3}=BH(),lcQ=(A,Q)=>{if(A instanceof dcQ)return A;if(typeof A==="number")A=String(A);if(typeof A!=="string")return null;Q=Q||{};let B=null;if(!Q.rtl)B=A.match(Q.includePrerelease?N3[L3.COERCEFULL]:N3[L3.COERCE]);else{let W=Q.includePrerelease?N3[L3.COERCERTLFULL]:N3[L3.COERCERTL],F;while((F=W.exec(A))&&(!B||B.index+B[0].length!==A.length)){if(!B||F.index+F[0].length!==B.index+B[0].length)B=F;W.lastIndex=F.index+F[1].length+F[2].length}W.lastIndex=-1}if(B===null)return null;let Y=B[2],J=B[3]||"0",C=B[4]||"0",X=Q.includePrerelease&&B[5]?`-${B[5]}`:"",G=Q.includePrerelease&&B[6]?`+${B[6]}`:"";return ccQ(`${Y}.${J}.${C}${X}${G}`,Q)};J8A.exports=lcQ});var uF=R((U6Y,G8A)=>{var X8A=e4(),pcQ=(A,Q,B)=>new X8A(A,B).compare(new X8A(Q,B));G8A.exports=pcQ});var Jh=R((E6Y,W8A)=>{var icQ=uF(),ncQ=(A,Q,B)=>icQ(A,Q,B)>=0;W8A.exports=ncQ});var $8A=R((K6Y,Z8A)=>{class F8A{constructor(){this.max=1000,this.map=new Map}get(A){let Q=this.map.get(A);if(Q===void 0)return;else return this.map.delete(A),this.map.set(A,Q),Q}delete(A){return this.map.delete(A)}set(A,Q){if(!this.delete(A)&&Q!==void 0){if(this.map.size>=this.max){let Y=this.map.keys().next().value;this.delete(Y)}this.map.set(A,Q)}return this}}Z8A.exports=F8A});var E8A=R((V6Y,U8A)=>{var scQ=uF(),rcQ=(A,Q,B)=>scQ(A,Q,B)===0;U8A.exports=rcQ});var V8A=R((I6Y,K8A)=>{var acQ=uF(),ocQ=(A,Q,B)=>acQ(A,Q,B)!==0;K8A.exports=ocQ});var H8A=R((H6Y,I8A)=>{var tcQ=uF(),ecQ=(A,Q,B)=>tcQ(A,Q,B)>0;I8A.exports=ecQ});var N8A=R((D6Y,D8A)=>{var AlQ=uF(),QlQ=(A,Q,B)=>AlQ(A,Q,B)<0;D8A.exports=QlQ});var q8A=R((N6Y,L8A)=>{var BlQ=uF(),YlQ=(A,Q,B)=>BlQ(A,Q,B)<=0;L8A.exports=YlQ});var z8A=R((L6Y,M8A)=>{var JlQ=E8A(),ClQ=V8A(),XlQ=H8A(),GlQ=Jh(),WlQ=N8A(),FlQ=q8A(),ZlQ=(A,Q,B,Y)=>{switch(Q){case"===":if(typeof A==="object")A=A.version;if(typeof B==="object")B=B.version;return A===B;case"!==":if(typeof A==="object")A=A.version;if(typeof B==="object")B=B.version;return A!==B;case"":case"=":case"==":return JlQ(A,B,Y);case"!=":return ClQ(A,B,Y);case">":return XlQ(A,B,Y);case">=":return GlQ(A,B,Y);case"<":return WlQ(A,B,Y);case"<=":return FlQ(A,B,Y);default:throw TypeError(`Invalid operator: ${Q}`)}};M8A.exports=ZlQ});var S8A=R((q6Y,T8A)=>{var YH=Symbol("SemVer ANY");class q3{static get ANY(){return YH}constructor(A,Q){if(Q=R8A(Q),A instanceof q3)if(A.loose===!!Q.loose)return A;else A=A.value;if(A=A.trim().split(/\s+/).join(" "),Xh("comparator",A,Q),this.options=Q,this.loose=!!Q.loose,this.parse(A),this.semver===YH)this.value="";else this.value=this.operator+this.semver.version;Xh("comp",this)}parse(A){let Q=this.options.loose?w8A[j8A.COMPARATORLOOSE]:w8A[j8A.COMPARATOR],B=A.match(Q);if(!B)throw TypeError(`Invalid comparator: ${A}`);if(this.operator=B[1]!==void 0?B[1]:"",this.operator==="=")this.operator="";if(!B[2])this.semver=YH;else this.semver=new O8A(B[2],this.options.loose)}toString(){return this.value}test(A){if(Xh("Comparator.test",A,this.options.loose),this.semver===YH||A===YH)return!0;if(typeof A==="string")try{A=new O8A(A,this.options)}catch(Q){return!1}return Ch(A,this.operator,this.semver,this.options)}intersects(A,Q){if(!(A instanceof q3))throw TypeError("a Comparator is required");if(this.operator===""){if(this.value==="")return!0;return new P8A(A.value,Q).test(this.value)}else if(A.operator===""){if(A.value==="")return!0;return new P8A(this.value,Q).test(A.semver)}if(Q=R8A(Q),Q.includePrerelease&&(this.value==="<0.0.0-0"||A.value==="<0.0.0-0"))return!1;if(!Q.includePrerelease&&(this.value.startsWith("<0.0.0")||A.value.startsWith("<0.0.0")))return!1;if(this.operator.startsWith(">")&&A.operator.startsWith(">"))return!0;if(this.operator.startsWith("<")&&A.operator.startsWith("<"))return!0;if(this.semver.version===A.semver.version&&this.operator.includes("=")&&A.operator.includes("="))return!0;if(Ch(this.semver,"<",A.semver,Q)&&this.operator.startsWith(">")&&A.operator.startsWith("<"))return!0;if(Ch(this.semver,">",A.semver,Q)&&this.operator.startsWith("<")&&A.operator.startsWith(">"))return!0;return!1}}T8A.exports=q3;var R8A=K3(),{safeRe:w8A,t:j8A}=BH(),Ch=z8A(),Xh=QH(),O8A=e4(),P8A=Gh()});var Gh=R((M6Y,y8A)=>{var $lQ=/\s+/g;class JH{constructor(A,Q){if(Q=ElQ(Q),A instanceof JH)if(A.loose===!!Q.loose&&A.includePrerelease===!!Q.includePrerelease)return A;else return new JH(A.raw,Q);if(A instanceof Wh)return this.raw=A.value,this.set=[[A]],this.formatted=void 0,this;if(this.options=Q,this.loose=!!Q.loose,this.includePrerelease=!!Q.includePrerelease,this.raw=A.trim().replace($lQ," "),this.set=this.raw.split("||").map((B)=>this.parseRange(B.trim())).filter((B)=>B.length),!this.set.length)throw TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let B=this.set[0];if(this.set=this.set.filter((Y)=>!_8A(Y[0])),this.set.length===0)this.set=[B];else if(this.set.length>1){for(let Y of this.set)if(Y.length===1&&LlQ(Y[0])){this.set=[Y];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let A=0;A0)this.formatted+="||";let Q=this.set[A];for(let B=0;B0)this.formatted+=" ";this.formatted+=Q[B].toString().trim()}}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(A){let B=((this.options.includePrerelease&&DlQ)|(this.options.loose&&NlQ))+":"+A,Y=k8A.get(B);if(Y)return Y;let J=this.options.loose,C=J?_9[tJ.HYPHENRANGELOOSE]:_9[tJ.HYPHENRANGE];A=A.replace(C,SlQ(this.options.includePrerelease)),$0("hyphen replace",A),A=A.replace(_9[tJ.COMPARATORTRIM],VlQ),$0("comparator trim",A),A=A.replace(_9[tJ.TILDETRIM],IlQ),$0("tilde trim",A),A=A.replace(_9[tJ.CARETTRIM],HlQ),$0("caret trim",A);let X=A.split(" ").map((Z)=>qlQ(Z,this.options)).join(" ").split(/\s+/).map((Z)=>TlQ(Z,this.options));if(J)X=X.filter((Z)=>{return $0("loose invalid filter",Z,this.options),!!Z.match(_9[tJ.COMPARATORLOOSE])});$0("range list",X);let G=new Map,W=X.map((Z)=>new Wh(Z,this.options));for(let Z of W){if(_8A(Z))return[Z];G.set(Z.value,Z)}if(G.size>1&&G.has(""))G.delete("");let F=[...G.values()];return k8A.set(B,F),F}intersects(A,Q){if(!(A instanceof JH))throw TypeError("a Range is required");return this.set.some((B)=>{return v8A(B,Q)&&A.set.some((Y)=>{return v8A(Y,Q)&&B.every((J)=>{return Y.every((C)=>{return J.intersects(C,Q)})})})})}test(A){if(!A)return!1;if(typeof A==="string")try{A=new KlQ(A,this.options)}catch(Q){return!1}for(let Q=0;QA.value==="<0.0.0-0",LlQ=(A)=>A.value==="",v8A=(A,Q)=>{let B=!0,Y=A.slice(),J=Y.pop();while(B&&Y.length)B=Y.every((C)=>{return J.intersects(C,Q)}),J=Y.pop();return B},qlQ=(A,Q)=>{return $0("comp",A,Q),A=RlQ(A,Q),$0("caret",A),A=MlQ(A,Q),$0("tildes",A),A=jlQ(A,Q),$0("xrange",A),A=PlQ(A,Q),$0("stars",A),A},eJ=(A)=>!A||A.toLowerCase()==="x"||A==="*",MlQ=(A,Q)=>{return A.trim().split(/\s+/).map((B)=>zlQ(B,Q)).join(" ")},zlQ=(A,Q)=>{let B=Q.loose?_9[tJ.TILDELOOSE]:_9[tJ.TILDE];return A.replace(B,(Y,J,C,X,G)=>{$0("tilde",A,Y,J,C,X,G);let W;if(eJ(J))W="";else if(eJ(C))W=`>=${J}.0.0 <${+J+1}.0.0-0`;else if(eJ(X))W=`>=${J}.${C}.0 <${J}.${+C+1}.0-0`;else if(G)$0("replaceTilde pr",G),W=`>=${J}.${C}.${X}-${G} <${J}.${+C+1}.0-0`;else W=`>=${J}.${C}.${X} <${J}.${+C+1}.0-0`;return $0("tilde return",W),W})},RlQ=(A,Q)=>{return A.trim().split(/\s+/).map((B)=>wlQ(B,Q)).join(" ")},wlQ=(A,Q)=>{$0("caret",A,Q);let B=Q.loose?_9[tJ.CARETLOOSE]:_9[tJ.CARET],Y=Q.includePrerelease?"-0":"";return A.replace(B,(J,C,X,G,W)=>{$0("caret",A,J,C,X,G,W);let F;if(eJ(C))F="";else if(eJ(X))F=`>=${C}.0.0${Y} <${+C+1}.0.0-0`;else if(eJ(G))if(C==="0")F=`>=${C}.${X}.0${Y} <${C}.${+X+1}.0-0`;else F=`>=${C}.${X}.0${Y} <${+C+1}.0.0-0`;else if(W)if($0("replaceCaret pr",W),C==="0")if(X==="0")F=`>=${C}.${X}.${G}-${W} <${C}.${X}.${+G+1}-0`;else F=`>=${C}.${X}.${G}-${W} <${C}.${+X+1}.0-0`;else F=`>=${C}.${X}.${G}-${W} <${+C+1}.0.0-0`;else if($0("no pr"),C==="0")if(X==="0")F=`>=${C}.${X}.${G}${Y} <${C}.${X}.${+G+1}-0`;else F=`>=${C}.${X}.${G}${Y} <${C}.${+X+1}.0-0`;else F=`>=${C}.${X}.${G} <${+C+1}.0.0-0`;return $0("caret return",F),F})},jlQ=(A,Q)=>{return $0("replaceXRanges",A,Q),A.split(/\s+/).map((B)=>OlQ(B,Q)).join(" ")},OlQ=(A,Q)=>{A=A.trim();let B=Q.loose?_9[tJ.XRANGELOOSE]:_9[tJ.XRANGE];return A.replace(B,(Y,J,C,X,G,W)=>{$0("xRange",A,Y,J,C,X,G,W);let F=eJ(C),Z=F||eJ(X),U=Z||eJ(G),$=U;if(J==="="&&$)J="";if(W=Q.includePrerelease?"-0":"",F)if(J===">"||J==="<")Y="<0.0.0-0";else Y="*";else if(J&&$){if(Z)X=0;if(G=0,J===">")if(J=">=",Z)C=+C+1,X=0,G=0;else X=+X+1,G=0;else if(J==="<=")if(J="<",Z)C=+C+1;else X=+X+1;if(J==="<")W="-0";Y=`${J+C}.${X}.${G}${W}`}else if(Z)Y=`>=${C}.0.0${W} <${+C+1}.0.0-0`;else if(U)Y=`>=${C}.${X}.0${W} <${C}.${+X+1}.0-0`;return $0("xRange return",Y),Y})},PlQ=(A,Q)=>{return $0("replaceStars",A,Q),A.trim().replace(_9[tJ.STAR],"")},TlQ=(A,Q)=>{return $0("replaceGTE0",A,Q),A.trim().replace(_9[Q.includePrerelease?tJ.GTE0PRE:tJ.GTE0],"")},SlQ=(A)=>(Q,B,Y,J,C,X,G,W,F,Z,U,$)=>{if(eJ(Y))B="";else if(eJ(J))B=`>=${Y}.0.0${A?"-0":""}`;else if(eJ(C))B=`>=${Y}.${J}.0${A?"-0":""}`;else if(X)B=`>=${B}`;else B=`>=${B}${A?"-0":""}`;if(eJ(F))W="";else if(eJ(Z))W=`<${+F+1}.0.0-0`;else if(eJ(U))W=`<${F}.${+Z+1}.0-0`;else if($)W=`<=${F}.${Z}.${U}-${$}`;else if(A)W=`<${F}.${Z}.${+U+1}-0`;else W=`<=${W}`;return`${B} ${W}`.trim()},klQ=(A,Q,B)=>{for(let Y=0;Y0){let J=A[Y].semver;if(J.major===Q.major&&J.minor===Q.minor&&J.patch===Q.patch)return!0}}return!1}return!0}});var h8A=R((z6Y,g8A)=>{var _lQ=Gh(),vlQ=(A,Q,B)=>{try{Q=new _lQ(Q,B)}catch(Y){return!1}return Q.test(A)};g8A.exports=vlQ});var Fh=R((R6Y,ylQ)=>{ylQ.exports={name:"sharp",description:"High performance Node.js image processing, the fastest module to resize JPEG, PNG, WebP, GIF, AVIF and TIFF images",version:"0.34.3",author:"Lovell Fuller ",homepage:"https://sharp.pixelplumbing.com",contributors:["Pierre Inglebert ","Jonathan Ong ","Chanon Sajjamanochai ","Juliano Julio ","Daniel Gasienica ","Julian Walker ","Amit Pitaru ","Brandon Aaron ","Andreas Lind ","Maurus Cuelenaere ","Linus Unnebäck ","Victor Mateevitsi ","Alaric Holloway ","Bernhard K. Weisshuhn ","Chris Riley ","David Carley ","John Tobin ","Kenton Gray ","Felix Bünemann ","Samy Al Zahrani ","Chintan Thakkar ","F. Orlando Galashan ","Kleis Auke Wolthuizen ","Matt Hirsch ","Matthias Thoemmes ","Patrick Paskaris ","Jérémy Lal ","Rahul Nanwani ","Alice Monday ","Kristo Jorgenson ","YvesBos ","Guy Maliar ","Nicolas Coden ","Matt Parrish ","Marcel Bretschneider ","Matthew McEachen ","Jarda Kotěšovec ","Kenric D'Souza ","Oleh Aleinyk ","Marcel Bretschneider ","Andrea Bianco ","Rik Heywood ","Thomas Parisot ","Nathan Graves ","Tom Lokhorst ","Espen Hovlandsdal ","Sylvain Dumont ","Alun Davies ","Aidan Hoolachan ","Axel Eirola ","Freezy ","Daiz ","Julian Aubourg ","Keith Belovay ","Michael B. Klein ","Jordan Prudhomme ","Ilya Ovdin ","Andargor ","Paul Neave ","Brendan Kennedy ","Brychan Bennett-Odlum ","Edward Silverton ","Roman Malieiev ","Tomas Szabo ","Robert O'Rourke ","Guillermo Alfonso Varela Chouciño ","Christian Flintrup ","Manan Jadhav ","Leon Radley ","alza54 ","Jacob Smith ","Michael Nutt ","Brad Parham ","Taneli Vatanen ","Joris Dugué ","Chris Banks ","Ompal Singh ","Brodan ","Ankur Parihar ","Brahim Ait elhaj ","Mart Jansink ","Lachlan Newman ","Dennis Beatty ","Ingvar Stepanyan ","Don Denton "],scripts:{install:"node install/check.js",clean:"rm -rf src/build/ .nyc_output/ coverage/ test/fixtures/output.*",test:"npm run test-lint && npm run test-unit && npm run test-licensing && npm run test-types","test-lint":"semistandard && cpplint","test-unit":"nyc --reporter=lcov --reporter=text --check-coverage --branches=100 mocha","test-licensing":'license-checker --production --summary --onlyAllow="Apache-2.0;BSD;ISC;LGPL-3.0-or-later;MIT"',"test-leak":"./test/leak/leak.sh","test-types":"tsd","package-from-local-build":"node npm/from-local-build.js","docs-build":"node docs/build.mjs","docs-serve":"cd docs && npm start","docs-publish":"cd docs && npm run build && npx firebase-tools deploy --project pixelplumbing --only hosting:pixelplumbing-sharp"},type:"commonjs",main:"lib/index.js",types:"lib/index.d.ts",files:["install","lib","src/*.{cc,h,gyp}"],repository:{type:"git",url:"git://github.com/lovell/sharp.git"},keywords:["jpeg","png","webp","avif","tiff","gif","svg","jp2","dzi","image","resize","thumbnail","crop","embed","libvips","vips"],dependencies:{color:"^4.2.3","detect-libc":"^2.0.4",semver:"^7.7.2"},optionalDependencies:{"@img/sharp-darwin-arm64":"0.34.3","@img/sharp-darwin-x64":"0.34.3","@img/sharp-libvips-darwin-arm64":"1.2.0","@img/sharp-libvips-darwin-x64":"1.2.0","@img/sharp-libvips-linux-arm":"1.2.0","@img/sharp-libvips-linux-arm64":"1.2.0","@img/sharp-libvips-linux-ppc64":"1.2.0","@img/sharp-libvips-linux-s390x":"1.2.0","@img/sharp-libvips-linux-x64":"1.2.0","@img/sharp-libvips-linuxmusl-arm64":"1.2.0","@img/sharp-libvips-linuxmusl-x64":"1.2.0","@img/sharp-linux-arm":"0.34.3","@img/sharp-linux-arm64":"0.34.3","@img/sharp-linux-ppc64":"0.34.3","@img/sharp-linux-s390x":"0.34.3","@img/sharp-linux-x64":"0.34.3","@img/sharp-linuxmusl-arm64":"0.34.3","@img/sharp-linuxmusl-x64":"0.34.3","@img/sharp-wasm32":"0.34.3","@img/sharp-win32-arm64":"0.34.3","@img/sharp-win32-ia32":"0.34.3","@img/sharp-win32-x64":"0.34.3"},devDependencies:{"@emnapi/runtime":"^1.4.4","@img/sharp-libvips-dev":"1.2.0","@img/sharp-libvips-dev-wasm32":"1.2.0","@img/sharp-libvips-win32-arm64":"1.2.0","@img/sharp-libvips-win32-ia32":"1.2.0","@img/sharp-libvips-win32-x64":"1.2.0","@types/node":"*",cc:"^3.0.1",emnapi:"^1.4.4","exif-reader":"^2.0.2","extract-zip":"^2.0.1",icc:"^3.0.0","jsdoc-to-markdown":"^9.1.1","license-checker":"^25.0.1",mocha:"^11.7.1","node-addon-api":"^8.4.0","node-gyp":"^11.2.0",nyc:"^17.1.0",semistandard:"^17.0.0","tar-fs":"^3.1.0",tsd:"^0.32.0"},license:"Apache-2.0",engines:{node:"^18.17.0 || ^20.3.0 || >=21.0.0"},config:{libvips:">=8.17.1"},funding:{url:"https://opencollective.com/libvips"},semistandard:{env:["mocha"]},cc:{linelength:"120",filter:["build/include"]},nyc:{include:["lib"]},tsd:{directory:"test/types/"}}});var $h=R((w6Y,i8A)=>{var{spawnSync:M3}=u("node:child_process"),{createHash:glQ}=u("node:crypto"),m8A=C8A(),hlQ=Jh(),xlQ=h8A(),x8A=AH(),{config:flQ,engines:f8A,optionalDependencies:blQ}=Fh(),mlQ=process.env.npm_package_config_libvips||flQ.libvips,u8A=m8A(mlQ).version,ulQ=["darwin-arm64","darwin-x64","linux-arm","linux-arm64","linux-ppc64","linux-s390x","linux-x64","linuxmusl-arm64","linuxmusl-x64","win32-arm64","win32-ia32","win32-x64"],z3={encoding:"utf8",shell:!0},dlQ=(A)=>{if(A instanceof Error)console.error(`sharp: Installation error: ${A.message}`);else console.log(`sharp: ${A}`)},d8A=()=>x8A.isNonGlibcLinuxSync()?x8A.familySync():"",clQ=()=>`${process.platform}${d8A()}-${process.arch}`,AU=()=>{if(c8A())return"wasm32";let{npm_config_arch:A,npm_config_platform:Q,npm_config_libc:B}=process.env,Y=typeof B==="string"?B:d8A();return`${Q||process.platform}${Y}-${A||process.arch}`},llQ=()=>{try{return u(`@img/sharp-libvips-dev-${AU()}/include`)}catch{try{return (()=>{throw new Error("Cannot require module "+"@img/sharp-libvips-dev/include");})()}catch{}}return""},plQ=()=>{try{return (()=>{throw new Error("Cannot require module "+"@img/sharp-libvips-dev/cplusplus");})()}catch{}return""},ilQ=()=>{try{return u(`@img/sharp-libvips-dev-${AU()}/lib`)}catch{try{return u(`@img/sharp-libvips-${AU()}/lib`)}catch{}}return""},nlQ=()=>{if(process.release?.name==="node"&&process.versions){if(!xlQ(process.versions.node,f8A.node))return{found:process.versions.node,expected:f8A.node}}},c8A=()=>{let{CC:A}=process.env;return Boolean(A&&A.endsWith("/emcc"))},slQ=()=>{if(process.platform==="darwin"&&process.arch==="x64")return(M3("sysctl sysctl.proc_translated",z3).stdout||"").trim()==="sysctl.proc_translated: 1";return!1},b8A=(A)=>glQ("sha512").update(A).digest("hex"),rlQ=()=>{try{let A=b8A(`imgsharp-libvips-${AU()}`),Q=m8A(blQ[`@img/sharp-libvips-${AU()}`],{includePrerelease:!0}).version;return b8A(`${A}npm:${Q}`).slice(0,10)}catch{}return""},alQ=()=>M3(`node-gyp rebuild --directory=src ${c8A()?"--nodedir=emscripten":""}`,{...z3,stdio:"inherit"}).status,l8A=()=>{if(process.platform!=="win32")return(M3("pkg-config --modversion vips-cpp",{...z3,env:{...process.env,PKG_CONFIG_PATH:p8A()}}).stdout||"").trim();else return""},p8A=()=>{if(process.platform!=="win32")return[(M3('which brew >/dev/null 2>&1 && brew environment --plain | grep PKG_CONFIG_LIBDIR | cut -d" " -f2',z3).stdout||"").trim(),process.env.PKG_CONFIG_PATH,"/usr/local/lib/pkgconfig","/usr/lib/pkgconfig","/usr/local/libdata/pkgconfig","/usr/libdata/pkgconfig"].filter(Boolean).join(":");else return""},Zh=(A,Q,B)=>{if(B)B(`Detected ${Q}, skipping search for globally-installed libvips`);return A},olQ=(A)=>{if(Boolean(process.env.SHARP_IGNORE_GLOBAL_LIBVIPS)===!0)return Zh(!1,"SHARP_IGNORE_GLOBAL_LIBVIPS",A);if(Boolean(process.env.SHARP_FORCE_GLOBAL_LIBVIPS)===!0)return Zh(!0,"SHARP_FORCE_GLOBAL_LIBVIPS",A);if(slQ())return Zh(!1,"Rosetta",A);let Q=l8A();return!!Q&&hlQ(Q,u8A)};i8A.exports={minimumLibvipsVersion:u8A,prebuiltPlatforms:ulQ,buildPlatformArch:AU,buildSharpLibvipsIncludeDir:llQ,buildSharpLibvipsCPlusPlusDir:plQ,buildSharpLibvipsLibDir:ilQ,isUnsupportedNodeRuntime:nlQ,runtimePlatformArch:clQ,log:dlQ,yarnLocator:rlQ,spawnRebuild:alQ,globalLibvipsVersion:l8A,pkgConfigPath:p8A,useGlobalLibvips:olQ}});var XH=R((O6Y,s8A)=>{var{familySync:tlQ,versionSync:elQ}=AH(),{runtimePlatformArch:ApQ,isUnsupportedNodeRuntime:n8A,prebuiltPlatforms:QpQ,minimumLibvipsVersion:BpQ}=$h(),dF=ApQ(),YpQ=[`../src/build/Release/sharp-${dF}.node`,"../src/build/Release/sharp-wasm32.node",`@img/sharp-${dF}/sharp.node`,"@img/sharp-wasm32/sharp.node"],Uh,QU,CH=[];for(Uh of YpQ)try{QU=u(Uh);break}catch(A){CH.push(A)}if(QU&&Uh.startsWith("@img/sharp-linux-x64")&&!QU._isUsingX64V2()){let A=Error("Prebuilt binaries for linux-x64 require v2 microarchitecture");A.code="Unsupported CPU",CH.push(A),QU=null}if(QU)s8A.exports=QU;else{let[A,Q,B]=["linux","darwin","win32"].map((C)=>dF.startsWith(C)),Y=[`Could not load the "sharp" module using the ${dF} runtime`];CH.forEach((C)=>{if(C.code!=="MODULE_NOT_FOUND")Y.push(`${C.code}: ${C.message}`)});let J=CH.map((C)=>C.message).join(" ");if(Y.push("Possible solutions:"),n8A()){let{found:C,expected:X}=n8A();Y.push("- Please upgrade Node.js:",` Found ${C}`,` Requires ${X}`)}else if(QpQ.includes(dF)){let[C,X]=dF.split("-"),G=C.endsWith("musl")?" --libc=musl":"";Y.push("- Ensure optional dependencies can be installed:"," npm install --include=optional sharp","- Ensure your package manager supports multi-platform installation:"," See https://sharp.pixelplumbing.com/install#cross-platform","- Add platform-specific dependencies:",` npm install --os=${C.replace("musl","")}${G} --cpu=${X} sharp`)}else Y.push(`- Manually install libvips >= ${BpQ}`,"- Add experimental WebAssembly-based dependencies:"," npm install --cpu=wasm32 sharp"," npm install @img/sharp-wasm32");if(A&&/(symbol not found|CXXABI_)/i.test(J))try{let{config:C}=u(`@img/sharp-libvips-${dF}/package`),X=`${tlQ()} ${elQ()}`,G=`${C.musl?"musl":"glibc"} ${C.musl||C.glibc}`;Y.push("- Update your OS:",` Found ${X}`,` Requires ${G}`)}catch(C){}if(A&&/\/snap\/core[0-9]{2}/.test(J))Y.push("- Remove the Node.js Snap, which does not support native modules"," snap remove node");if(Q&&/Incompatible library version/.test(J))Y.push("- Update Homebrew:"," brew update && brew upgrade vips");if(CH.some((C)=>C.code==="ERR_DLOPEN_DISABLED"))Y.push("- Run Node.js without using the --no-addons flag");if(B&&/The specified procedure could not be found/.test(J))Y.push("- Using the canvas package on Windows?"," See https://sharp.pixelplumbing.com/install#canvas-and-windows","- Check for outdated versions of sharp in the dependency tree:"," npm ls sharp");throw Y.push("- Consult the installation documentation:"," See https://sharp.pixelplumbing.com/install"),Error(Y.join(` -`))}});var a8A=R((T6Y,r8A)=>{var JpQ=u("node:util"),Eh=u("node:stream"),CpQ=g1();XH();var XpQ=JpQ.debuglog("sharp"),cF=function(A,Q){if(arguments.length===1&&!CpQ.defined(A))throw Error("Invalid input");if(!(this instanceof cF))return new cF(A,Q);return Eh.Duplex.call(this),this.options={topOffsetPre:-1,leftOffsetPre:-1,widthPre:-1,heightPre:-1,topOffsetPost:-1,leftOffsetPost:-1,widthPost:-1,heightPost:-1,width:-1,height:-1,canvas:"crop",position:0,resizeBackground:[0,0,0,255],angle:0,rotationAngle:0,rotationBackground:[0,0,0,255],rotateBeforePreExtract:!1,flip:!1,flop:!1,extendTop:0,extendBottom:0,extendLeft:0,extendRight:0,extendBackground:[0,0,0,255],extendWith:"background",withoutEnlargement:!1,withoutReduction:!1,affineMatrix:[],affineBackground:[0,0,0,255],affineIdx:0,affineIdy:0,affineOdx:0,affineOdy:0,affineInterpolator:this.constructor.interpolators.bilinear,kernel:"lanczos3",fastShrinkOnLoad:!0,tint:[-1,0,0,0],flatten:!1,flattenBackground:[0,0,0],unflatten:!1,negate:!1,negateAlpha:!0,medianSize:0,blurSigma:0,precision:"integer",minAmpl:0.2,sharpenSigma:0,sharpenM1:1,sharpenM2:2,sharpenX1:2,sharpenY2:10,sharpenY3:20,threshold:0,thresholdGrayscale:!0,trimBackground:[],trimThreshold:-1,trimLineArt:!1,dilateWidth:0,erodeWidth:0,gamma:0,gammaOut:0,greyscale:!1,normalise:!1,normaliseLower:1,normaliseUpper:99,claheWidth:0,claheHeight:0,claheMaxSlope:3,brightness:1,saturation:1,hue:0,lightness:0,booleanBufferIn:null,booleanFileIn:"",joinChannelIn:[],extractChannel:-1,removeAlpha:!1,ensureAlpha:-1,colourspace:"srgb",colourspacePipeline:"last",composite:[],fileOut:"",formatOut:"input",streamOut:!1,keepMetadata:0,withMetadataOrientation:-1,withMetadataDensity:0,withIccProfile:"",withExif:{},withExifMerge:!0,withXmp:"",resolveWithObject:!1,loop:-1,delay:[],jpegQuality:80,jpegProgressive:!1,jpegChromaSubsampling:"4:2:0",jpegTrellisQuantisation:!1,jpegOvershootDeringing:!1,jpegOptimiseScans:!1,jpegOptimiseCoding:!0,jpegQuantisationTable:0,pngProgressive:!1,pngCompressionLevel:6,pngAdaptiveFiltering:!1,pngPalette:!1,pngQuality:100,pngEffort:7,pngBitdepth:8,pngDither:1,jp2Quality:80,jp2TileHeight:512,jp2TileWidth:512,jp2Lossless:!1,jp2ChromaSubsampling:"4:4:4",webpQuality:80,webpAlphaQuality:100,webpLossless:!1,webpNearLossless:!1,webpSmartSubsample:!1,webpSmartDeblock:!1,webpPreset:"default",webpEffort:4,webpMinSize:!1,webpMixed:!1,gifBitdepth:8,gifEffort:7,gifDither:1,gifInterFrameMaxError:0,gifInterPaletteMaxError:3,gifKeepDuplicateFrames:!1,gifReuse:!0,gifProgressive:!1,tiffQuality:80,tiffCompression:"jpeg",tiffPredictor:"horizontal",tiffPyramid:!1,tiffMiniswhite:!1,tiffBitdepth:8,tiffTile:!1,tiffTileHeight:256,tiffTileWidth:256,tiffXres:1,tiffYres:1,tiffResolutionUnit:"inch",heifQuality:50,heifLossless:!1,heifCompression:"av1",heifEffort:4,heifChromaSubsampling:"4:4:4",heifBitdepth:8,jxlDistance:1,jxlDecodingTier:0,jxlEffort:7,jxlLossless:!1,rawDepth:"uchar",tileSize:256,tileOverlap:0,tileContainer:"fs",tileLayout:"dz",tileFormat:"last",tileDepth:"last",tileAngle:0,tileSkipBlanks:-1,tileBackground:[255,255,255,255],tileCentre:!1,tileId:"https://example.com/iiif",tileBasename:"",timeoutSeconds:0,linearA:[],linearB:[],pdfBackground:[255,255,255,255],debuglog:(B)=>{this.emit("warning",B),XpQ(B)},queueListener:function(B){cF.queue.emit("change",B)}},this.options.input=this._createInputDescriptor(A,Q,{allowStream:!0}),this};Object.setPrototypeOf(cF.prototype,Eh.Duplex.prototype);Object.setPrototypeOf(cF,Eh.Duplex);function GpQ(){let A=this.constructor.call(),{debuglog:Q,queueListener:B,...Y}=this.options;if(A.options=structuredClone(Y),A.options.debuglog=Q,A.options.queueListener=B,this._isStreamInput())this.on("finish",()=>{this._flattenBufferIn(),A.options.input.buffer=this.options.input.buffer,A.emit("finish")});return A}Object.assign(cF.prototype,{clone:GpQ});r8A.exports=cF});var e8A=R((S6Y,t8A)=>{var AA=g1(),F7=XH(),WpQ={left:"low",top:"low",low:"low",center:"centre",centre:"centre",right:"high",bottom:"high",high:"high"},FpQ=["failOn","limitInputPixels","unlimited","animated","autoOrient","density","ignoreIcc","page","pages","sequentialRead","jp2","openSlide","pdf","raw","svg","tiff","failOnError","openSlideLevel","pdfBackground","tiffSubifd"];function o8A(A){let Q=FpQ.filter((B)=>AA.defined(A[B])).map((B)=>[B,A[B]]);return Q.length?Object.fromEntries(Q):void 0}function ZpQ(A,Q,B){let Y={autoOrient:!1,failOn:"warning",limitInputPixels:Math.pow(16383,2),ignoreIcc:!1,unlimited:!1,sequentialRead:!0};if(AA.string(A))Y.file=A;else if(AA.buffer(A)){if(A.length===0)throw Error("Input Buffer is empty");Y.buffer=A}else if(AA.arrayBuffer(A)){if(A.byteLength===0)throw Error("Input bit Array is empty");Y.buffer=Buffer.from(A,0,A.byteLength)}else if(AA.typedArray(A)){if(A.length===0)throw Error("Input Bit Array is empty");Y.buffer=Buffer.from(A.buffer,A.byteOffset,A.byteLength)}else if(AA.plainObject(A)&&!AA.defined(Q)){if(Q=A,o8A(Q))Y.buffer=[]}else if(!AA.defined(A)&&!AA.defined(Q)&&AA.object(B)&&B.allowStream)Y.buffer=[];else if(Array.isArray(A))if(A.length>1)if(!this.options.joining)this.options.joining=!0,this.options.join=A.map((J)=>this._createInputDescriptor(J));else throw Error("Recursive join is unsupported");else throw Error("Expected at least two images to join");else throw Error(`Unsupported input '${A}' of type ${typeof A}${AA.defined(Q)?` when also providing options of type ${typeof Q}`:""}`);if(AA.object(Q)){if(AA.defined(Q.failOnError))if(AA.bool(Q.failOnError))Y.failOn=Q.failOnError?"warning":"none";else throw AA.invalidParameterError("failOnError","boolean",Q.failOnError);if(AA.defined(Q.failOn))if(AA.string(Q.failOn)&&AA.inArray(Q.failOn,["none","truncated","error","warning"]))Y.failOn=Q.failOn;else throw AA.invalidParameterError("failOn","one of: none, truncated, error, warning",Q.failOn);if(AA.defined(Q.autoOrient))if(AA.bool(Q.autoOrient))Y.autoOrient=Q.autoOrient;else throw AA.invalidParameterError("autoOrient","boolean",Q.autoOrient);if(AA.defined(Q.density))if(AA.inRange(Q.density,1,1e5))Y.density=Q.density;else throw AA.invalidParameterError("density","number between 1 and 100000",Q.density);if(AA.defined(Q.ignoreIcc))if(AA.bool(Q.ignoreIcc))Y.ignoreIcc=Q.ignoreIcc;else throw AA.invalidParameterError("ignoreIcc","boolean",Q.ignoreIcc);if(AA.defined(Q.limitInputPixels))if(AA.bool(Q.limitInputPixels))Y.limitInputPixels=Q.limitInputPixels?Math.pow(16383,2):0;else if(AA.integer(Q.limitInputPixels)&&AA.inRange(Q.limitInputPixels,0,Number.MAX_SAFE_INTEGER))Y.limitInputPixels=Q.limitInputPixels;else throw AA.invalidParameterError("limitInputPixels","positive integer",Q.limitInputPixels);if(AA.defined(Q.unlimited))if(AA.bool(Q.unlimited))Y.unlimited=Q.unlimited;else throw AA.invalidParameterError("unlimited","boolean",Q.unlimited);if(AA.defined(Q.sequentialRead))if(AA.bool(Q.sequentialRead))Y.sequentialRead=Q.sequentialRead;else throw AA.invalidParameterError("sequentialRead","boolean",Q.sequentialRead);if(AA.defined(Q.raw)){if(AA.object(Q.raw)&&AA.integer(Q.raw.width)&&Q.raw.width>0&&AA.integer(Q.raw.height)&&Q.raw.height>0&&AA.integer(Q.raw.channels)&&AA.inRange(Q.raw.channels,1,4))switch(Y.rawWidth=Q.raw.width,Y.rawHeight=Q.raw.height,Y.rawChannels=Q.raw.channels,A.constructor){case Uint8Array:case Uint8ClampedArray:Y.rawDepth="uchar";break;case Int8Array:Y.rawDepth="char";break;case Uint16Array:Y.rawDepth="ushort";break;case Int16Array:Y.rawDepth="short";break;case Uint32Array:Y.rawDepth="uint";break;case Int32Array:Y.rawDepth="int";break;case Float32Array:Y.rawDepth="float";break;case Float64Array:Y.rawDepth="double";break;default:Y.rawDepth="uchar";break}else throw Error("Expected width, height and channels for raw pixel input");if(Y.rawPremultiplied=!1,AA.defined(Q.raw.premultiplied))if(AA.bool(Q.raw.premultiplied))Y.rawPremultiplied=Q.raw.premultiplied;else throw AA.invalidParameterError("raw.premultiplied","boolean",Q.raw.premultiplied);if(Y.rawPageHeight=0,AA.defined(Q.raw.pageHeight))if(AA.integer(Q.raw.pageHeight)&&Q.raw.pageHeight>0&&Q.raw.pageHeight<=Q.raw.height){if(Q.raw.height%Q.raw.pageHeight!==0)throw Error(`Expected raw.height ${Q.raw.height} to be a multiple of raw.pageHeight ${Q.raw.pageHeight}`);Y.rawPageHeight=Q.raw.pageHeight}else throw AA.invalidParameterError("raw.pageHeight","positive integer",Q.raw.pageHeight)}if(AA.defined(Q.animated))if(AA.bool(Q.animated))Y.pages=Q.animated?-1:1;else throw AA.invalidParameterError("animated","boolean",Q.animated);if(AA.defined(Q.pages))if(AA.integer(Q.pages)&&AA.inRange(Q.pages,-1,1e5))Y.pages=Q.pages;else throw AA.invalidParameterError("pages","integer between -1 and 100000",Q.pages);if(AA.defined(Q.page))if(AA.integer(Q.page)&&AA.inRange(Q.page,0,1e5))Y.page=Q.page;else throw AA.invalidParameterError("page","integer between 0 and 100000",Q.page);if(AA.object(Q.openSlide)&&AA.defined(Q.openSlide.level))if(AA.integer(Q.openSlide.level)&&AA.inRange(Q.openSlide.level,0,256))Y.openSlideLevel=Q.openSlide.level;else throw AA.invalidParameterError("openSlide.level","integer between 0 and 256",Q.openSlide.level);else if(AA.defined(Q.level))if(AA.integer(Q.level)&&AA.inRange(Q.level,0,256))Y.openSlideLevel=Q.level;else throw AA.invalidParameterError("level","integer between 0 and 256",Q.level);if(AA.object(Q.tiff)&&AA.defined(Q.tiff.subifd))if(AA.integer(Q.tiff.subifd)&&AA.inRange(Q.tiff.subifd,-1,1e5))Y.tiffSubifd=Q.tiff.subifd;else throw AA.invalidParameterError("tiff.subifd","integer between -1 and 100000",Q.tiff.subifd);else if(AA.defined(Q.subifd))if(AA.integer(Q.subifd)&&AA.inRange(Q.subifd,-1,1e5))Y.tiffSubifd=Q.subifd;else throw AA.invalidParameterError("subifd","integer between -1 and 100000",Q.subifd);if(AA.object(Q.svg)){if(AA.defined(Q.svg.stylesheet))if(AA.string(Q.svg.stylesheet))Y.svgStylesheet=Q.svg.stylesheet;else throw AA.invalidParameterError("svg.stylesheet","string",Q.svg.stylesheet);if(AA.defined(Q.svg.highBitdepth))if(AA.bool(Q.svg.highBitdepth))Y.svgHighBitdepth=Q.svg.highBitdepth;else throw AA.invalidParameterError("svg.highBitdepth","boolean",Q.svg.highBitdepth)}if(AA.object(Q.pdf)&&AA.defined(Q.pdf.background))Y.pdfBackground=this._getBackgroundColourOption(Q.pdf.background);else if(AA.defined(Q.pdfBackground))Y.pdfBackground=this._getBackgroundColourOption(Q.pdfBackground);if(AA.object(Q.jp2)&&AA.defined(Q.jp2.oneshot))if(AA.bool(Q.jp2.oneshot))Y.jp2Oneshot=Q.jp2.oneshot;else throw AA.invalidParameterError("jp2.oneshot","boolean",Q.jp2.oneshot);if(AA.defined(Q.create))if(AA.object(Q.create)&&AA.integer(Q.create.width)&&Q.create.width>0&&AA.integer(Q.create.height)&&Q.create.height>0&&AA.integer(Q.create.channels)){if(Y.createWidth=Q.create.width,Y.createHeight=Q.create.height,Y.createChannels=Q.create.channels,Y.createPageHeight=0,AA.defined(Q.create.pageHeight))if(AA.integer(Q.create.pageHeight)&&Q.create.pageHeight>0&&Q.create.pageHeight<=Q.create.height){if(Q.create.height%Q.create.pageHeight!==0)throw Error(`Expected create.height ${Q.create.height} to be a multiple of create.pageHeight ${Q.create.pageHeight}`);Y.createPageHeight=Q.create.pageHeight}else throw AA.invalidParameterError("create.pageHeight","positive integer",Q.create.pageHeight);if(AA.defined(Q.create.noise)){if(!AA.object(Q.create.noise))throw Error("Expected noise to be an object");if(Q.create.noise.type!=="gaussian")throw Error("Only gaussian noise is supported at the moment");if(Y.createNoiseType=Q.create.noise.type,!AA.inRange(Q.create.channels,1,4))throw AA.invalidParameterError("create.channels","number between 1 and 4",Q.create.channels);if(Y.createNoiseMean=128,AA.defined(Q.create.noise.mean))if(AA.number(Q.create.noise.mean)&&AA.inRange(Q.create.noise.mean,0,1e4))Y.createNoiseMean=Q.create.noise.mean;else throw AA.invalidParameterError("create.noise.mean","number between 0 and 10000",Q.create.noise.mean);if(Y.createNoiseSigma=30,AA.defined(Q.create.noise.sigma))if(AA.number(Q.create.noise.sigma)&&AA.inRange(Q.create.noise.sigma,0,1e4))Y.createNoiseSigma=Q.create.noise.sigma;else throw AA.invalidParameterError("create.noise.sigma","number between 0 and 10000",Q.create.noise.sigma)}else if(AA.defined(Q.create.background)){if(!AA.inRange(Q.create.channels,3,4))throw AA.invalidParameterError("create.channels","number between 3 and 4",Q.create.channels);Y.createBackground=this._getBackgroundColourOption(Q.create.background)}else throw Error("Expected valid noise or background to create a new input image");delete Y.buffer}else throw Error("Expected valid width, height and channels to create a new input image");if(AA.defined(Q.text))if(AA.object(Q.text)&&AA.string(Q.text.text)){if(Y.textValue=Q.text.text,AA.defined(Q.text.height)&&AA.defined(Q.text.dpi))throw Error("Expected only one of dpi or height");if(AA.defined(Q.text.font))if(AA.string(Q.text.font))Y.textFont=Q.text.font;else throw AA.invalidParameterError("text.font","string",Q.text.font);if(AA.defined(Q.text.fontfile))if(AA.string(Q.text.fontfile))Y.textFontfile=Q.text.fontfile;else throw AA.invalidParameterError("text.fontfile","string",Q.text.fontfile);if(AA.defined(Q.text.width))if(AA.integer(Q.text.width)&&Q.text.width>0)Y.textWidth=Q.text.width;else throw AA.invalidParameterError("text.width","positive integer",Q.text.width);if(AA.defined(Q.text.height))if(AA.integer(Q.text.height)&&Q.text.height>0)Y.textHeight=Q.text.height;else throw AA.invalidParameterError("text.height","positive integer",Q.text.height);if(AA.defined(Q.text.align))if(AA.string(Q.text.align)&&AA.string(this.constructor.align[Q.text.align]))Y.textAlign=this.constructor.align[Q.text.align];else throw AA.invalidParameterError("text.align","valid alignment",Q.text.align);if(AA.defined(Q.text.justify))if(AA.bool(Q.text.justify))Y.textJustify=Q.text.justify;else throw AA.invalidParameterError("text.justify","boolean",Q.text.justify);if(AA.defined(Q.text.dpi))if(AA.integer(Q.text.dpi)&&AA.inRange(Q.text.dpi,1,1e6))Y.textDpi=Q.text.dpi;else throw AA.invalidParameterError("text.dpi","integer between 1 and 1000000",Q.text.dpi);if(AA.defined(Q.text.rgba))if(AA.bool(Q.text.rgba))Y.textRgba=Q.text.rgba;else throw AA.invalidParameterError("text.rgba","bool",Q.text.rgba);if(AA.defined(Q.text.spacing))if(AA.integer(Q.text.spacing)&&AA.inRange(Q.text.spacing,-1e6,1e6))Y.textSpacing=Q.text.spacing;else throw AA.invalidParameterError("text.spacing","integer between -1000000 and 1000000",Q.text.spacing);if(AA.defined(Q.text.wrap))if(AA.string(Q.text.wrap)&&AA.inArray(Q.text.wrap,["word","char","word-char","none"]))Y.textWrap=Q.text.wrap;else throw AA.invalidParameterError("text.wrap","one of: word, char, word-char, none",Q.text.wrap);delete Y.buffer}else throw Error("Expected a valid string to create an image with text.");if(AA.defined(Q.join))if(AA.defined(this.options.join)){if(AA.defined(Q.join.animated))if(AA.bool(Q.join.animated))Y.joinAnimated=Q.join.animated;else throw AA.invalidParameterError("join.animated","boolean",Q.join.animated);if(AA.defined(Q.join.across))if(AA.integer(Q.join.across)&&AA.inRange(Q.join.across,1,1e6))Y.joinAcross=Q.join.across;else throw AA.invalidParameterError("join.across","integer between 1 and 100000",Q.join.across);if(AA.defined(Q.join.shim))if(AA.integer(Q.join.shim)&&AA.inRange(Q.join.shim,0,1e6))Y.joinShim=Q.join.shim;else throw AA.invalidParameterError("join.shim","integer between 0 and 100000",Q.join.shim);if(AA.defined(Q.join.background))Y.joinBackground=this._getBackgroundColourOption(Q.join.background);if(AA.defined(Q.join.halign))if(AA.string(Q.join.halign)&&AA.string(this.constructor.align[Q.join.halign]))Y.joinHalign=this.constructor.align[Q.join.halign];else throw AA.invalidParameterError("join.halign","valid alignment",Q.join.halign);if(AA.defined(Q.join.valign))if(AA.string(Q.join.valign)&&AA.string(this.constructor.align[Q.join.valign]))Y.joinValign=this.constructor.align[Q.join.valign];else throw AA.invalidParameterError("join.valign","valid alignment",Q.join.valign)}else throw Error("Expected input to be an array of images to join")}else if(AA.defined(Q))throw Error("Invalid input options "+Q);return Y}function $pQ(A,Q,B){if(Array.isArray(this.options.input.buffer))if(AA.buffer(A)){if(this.options.input.buffer.length===0)this.on("finish",()=>{this.streamInFinished=!0});this.options.input.buffer.push(A),B()}else B(Error("Non-Buffer data on Writable Stream"));else B(Error("Unexpected data on Writable Stream"))}function UpQ(){if(this._isStreamInput())this.options.input.buffer=Buffer.concat(this.options.input.buffer)}function EpQ(){return Array.isArray(this.options.input.buffer)}function KpQ(A){let Q=Error();if(AA.fn(A)){if(this._isStreamInput())this.on("finish",()=>{this._flattenBufferIn(),F7.metadata(this.options,(B,Y)=>{if(B)A(AA.nativeError(B,Q));else A(null,Y)})});else F7.metadata(this.options,(B,Y)=>{if(B)A(AA.nativeError(B,Q));else A(null,Y)});return this}else if(this._isStreamInput())return new Promise((B,Y)=>{let J=()=>{this._flattenBufferIn(),F7.metadata(this.options,(C,X)=>{if(C)Y(AA.nativeError(C,Q));else B(X)})};if(this.writableFinished)J();else this.once("finish",J)});else return new Promise((B,Y)=>{F7.metadata(this.options,(J,C)=>{if(J)Y(AA.nativeError(J,Q));else B(C)})})}function VpQ(A){let Q=Error();if(AA.fn(A)){if(this._isStreamInput())this.on("finish",()=>{this._flattenBufferIn(),F7.stats(this.options,(B,Y)=>{if(B)A(AA.nativeError(B,Q));else A(null,Y)})});else F7.stats(this.options,(B,Y)=>{if(B)A(AA.nativeError(B,Q));else A(null,Y)});return this}else if(this._isStreamInput())return new Promise((B,Y)=>{this.on("finish",function(){this._flattenBufferIn(),F7.stats(this.options,(J,C)=>{if(J)Y(AA.nativeError(J,Q));else B(C)})})});else return new Promise((B,Y)=>{F7.stats(this.options,(J,C)=>{if(J)Y(AA.nativeError(J,Q));else B(C)})})}t8A.exports=function(A){Object.assign(A.prototype,{_inputOptionsFromObject:o8A,_createInputDescriptor:ZpQ,_write:$pQ,_flattenBufferIn:UpQ,_isStreamInput:EpQ,metadata:KpQ,stats:VpQ}),A.align=WpQ}});var C5A=R((k6Y,J5A)=>{var XQ=g1(),Q5A={center:0,centre:0,north:1,east:2,south:3,west:4,northeast:5,southeast:6,southwest:7,northwest:8},B5A={top:1,right:2,bottom:3,left:4,"right top":5,"right bottom":6,"left bottom":7,"left top":8},A5A={background:"background",copy:"copy",repeat:"repeat",mirror:"mirror"},Y5A={entropy:16,attention:17},Kh={nearest:"nearest",linear:"linear",cubic:"cubic",mitchell:"mitchell",lanczos2:"lanczos2",lanczos3:"lanczos3",mks2013:"mks2013",mks2021:"mks2021"},IpQ={contain:"contain",cover:"cover",fill:"fill",inside:"inside",outside:"outside"},HpQ={contain:"embed",cover:"crop",fill:"ignore_aspect",inside:"max",outside:"min"};function Vh(A){return A.angle%360!==0||A.input.autoOrient===!0||A.rotationAngle!==0}function R3(A){return A.width!==-1||A.height!==-1}function DpQ(A,Q,B){if(R3(this.options))this.options.debuglog("ignoring previous resize options");if(this.options.widthPost!==-1)this.options.debuglog("operation order will be: extract, resize, extract");if(XQ.defined(A))if(XQ.object(A)&&!XQ.defined(B))B=A;else if(XQ.integer(A)&&A>0)this.options.width=A;else throw XQ.invalidParameterError("width","positive integer",A);else this.options.width=-1;if(XQ.defined(Q))if(XQ.integer(Q)&&Q>0)this.options.height=Q;else throw XQ.invalidParameterError("height","positive integer",Q);else this.options.height=-1;if(XQ.object(B)){if(XQ.defined(B.width))if(XQ.integer(B.width)&&B.width>0)this.options.width=B.width;else throw XQ.invalidParameterError("width","positive integer",B.width);if(XQ.defined(B.height))if(XQ.integer(B.height)&&B.height>0)this.options.height=B.height;else throw XQ.invalidParameterError("height","positive integer",B.height);if(XQ.defined(B.fit)){let Y=HpQ[B.fit];if(XQ.string(Y))this.options.canvas=Y;else throw XQ.invalidParameterError("fit","valid fit",B.fit)}if(XQ.defined(B.position)){let Y=XQ.integer(B.position)?B.position:Y5A[B.position]||B5A[B.position]||Q5A[B.position];if(XQ.integer(Y)&&(XQ.inRange(Y,0,8)||XQ.inRange(Y,16,17)))this.options.position=Y;else throw XQ.invalidParameterError("position","valid position/gravity/strategy",B.position)}if(this._setBackgroundColourOption("resizeBackground",B.background),XQ.defined(B.kernel))if(XQ.string(Kh[B.kernel]))this.options.kernel=Kh[B.kernel];else throw XQ.invalidParameterError("kernel","valid kernel name",B.kernel);if(XQ.defined(B.withoutEnlargement))this._setBooleanOption("withoutEnlargement",B.withoutEnlargement);if(XQ.defined(B.withoutReduction))this._setBooleanOption("withoutReduction",B.withoutReduction);if(XQ.defined(B.fastShrinkOnLoad))this._setBooleanOption("fastShrinkOnLoad",B.fastShrinkOnLoad)}if(Vh(this.options)&&R3(this.options))this.options.rotateBeforePreExtract=!0;return this}function NpQ(A){if(XQ.integer(A)&&A>0)this.options.extendTop=A,this.options.extendBottom=A,this.options.extendLeft=A,this.options.extendRight=A;else if(XQ.object(A)){if(XQ.defined(A.top))if(XQ.integer(A.top)&&A.top>=0)this.options.extendTop=A.top;else throw XQ.invalidParameterError("top","positive integer",A.top);if(XQ.defined(A.bottom))if(XQ.integer(A.bottom)&&A.bottom>=0)this.options.extendBottom=A.bottom;else throw XQ.invalidParameterError("bottom","positive integer",A.bottom);if(XQ.defined(A.left))if(XQ.integer(A.left)&&A.left>=0)this.options.extendLeft=A.left;else throw XQ.invalidParameterError("left","positive integer",A.left);if(XQ.defined(A.right))if(XQ.integer(A.right)&&A.right>=0)this.options.extendRight=A.right;else throw XQ.invalidParameterError("right","positive integer",A.right);if(this._setBackgroundColourOption("extendBackground",A.background),XQ.defined(A.extendWith))if(XQ.string(A5A[A.extendWith]))this.options.extendWith=A5A[A.extendWith];else throw XQ.invalidParameterError("extendWith","one of: background, copy, repeat, mirror",A.extendWith)}else throw XQ.invalidParameterError("extend","integer or object",A);return this}function LpQ(A){let Q=R3(this.options)||this.options.widthPre!==-1?"Post":"Pre";if(this.options[`width${Q}`]!==-1)this.options.debuglog("ignoring previous extract options");if(["left","top","width","height"].forEach(function(B){let Y=A[B];if(XQ.integer(Y)&&Y>=0)this.options[B+(B==="left"||B==="top"?"Offset":"")+Q]=Y;else throw XQ.invalidParameterError(B,"integer",Y)},this),Vh(this.options)&&!R3(this.options)){if(this.options.widthPre===-1||this.options.widthPost===-1)this.options.rotateBeforePreExtract=!0}return this}function qpQ(A){if(this.options.trimThreshold=10,XQ.defined(A))if(XQ.object(A)){if(XQ.defined(A.background))this._setBackgroundColourOption("trimBackground",A.background);if(XQ.defined(A.threshold))if(XQ.number(A.threshold)&&A.threshold>=0)this.options.trimThreshold=A.threshold;else throw XQ.invalidParameterError("threshold","positive number",A.threshold);if(XQ.defined(A.lineArt))this._setBooleanOption("trimLineArt",A.lineArt)}else throw XQ.invalidParameterError("trim","object",A);if(Vh(this.options))this.options.rotateBeforePreExtract=!0;return this}J5A.exports=function(A){Object.assign(A.prototype,{resize:DpQ,extend:NpQ,extract:LpQ,trim:qpQ}),A.gravity=Q5A,A.strategy=Y5A,A.kernel=Kh,A.fit=IpQ,A.position=B5A}});var G5A=R((_6Y,X5A)=>{var nB=g1(),Ih={clear:"clear",source:"source",over:"over",in:"in",out:"out",atop:"atop",dest:"dest","dest-over":"dest-over","dest-in":"dest-in","dest-out":"dest-out","dest-atop":"dest-atop",xor:"xor",add:"add",saturate:"saturate",multiply:"multiply",screen:"screen",overlay:"overlay",darken:"darken",lighten:"lighten","colour-dodge":"colour-dodge","color-dodge":"colour-dodge","colour-burn":"colour-burn","color-burn":"colour-burn","hard-light":"hard-light","soft-light":"soft-light",difference:"difference",exclusion:"exclusion"};function MpQ(A){if(!Array.isArray(A))throw nB.invalidParameterError("images to composite","array",A);return this.options.composite=A.map((Q)=>{if(!nB.object(Q))throw nB.invalidParameterError("image to composite","object",Q);let B=this._inputOptionsFromObject(Q),Y={input:this._createInputDescriptor(Q.input,B,{allowStream:!1}),blend:"over",tile:!1,left:0,top:0,hasOffset:!1,gravity:0,premultiplied:!1};if(nB.defined(Q.blend))if(nB.string(Ih[Q.blend]))Y.blend=Ih[Q.blend];else throw nB.invalidParameterError("blend","valid blend name",Q.blend);if(nB.defined(Q.tile))if(nB.bool(Q.tile))Y.tile=Q.tile;else throw nB.invalidParameterError("tile","boolean",Q.tile);if(nB.defined(Q.left))if(nB.integer(Q.left))Y.left=Q.left;else throw nB.invalidParameterError("left","integer",Q.left);if(nB.defined(Q.top))if(nB.integer(Q.top))Y.top=Q.top;else throw nB.invalidParameterError("top","integer",Q.top);if(nB.defined(Q.top)!==nB.defined(Q.left))throw Error("Expected both left and top to be set");else Y.hasOffset=nB.integer(Q.top)&&nB.integer(Q.left);if(nB.defined(Q.gravity))if(nB.integer(Q.gravity)&&nB.inRange(Q.gravity,0,8))Y.gravity=Q.gravity;else if(nB.string(Q.gravity)&&nB.integer(this.constructor.gravity[Q.gravity]))Y.gravity=this.constructor.gravity[Q.gravity];else throw nB.invalidParameterError("gravity","valid gravity",Q.gravity);if(nB.defined(Q.premultiplied))if(nB.bool(Q.premultiplied))Y.premultiplied=Q.premultiplied;else throw nB.invalidParameterError("premultiplied","boolean",Q.premultiplied);return Y}),this}X5A.exports=function(A){A.prototype.composite=MpQ,A.blend=Ih}});var U5A=R((v6Y,$5A)=>{var WA=g1(),W5A={integer:"integer",float:"float",approximate:"approximate"};function zpQ(A,Q){if(!WA.defined(A))return this.autoOrient();if(this.options.angle||this.options.rotationAngle)this.options.debuglog("ignoring previous rotate options"),this.options.angle=0,this.options.rotationAngle=0;if(WA.integer(A)&&!(A%90))this.options.angle=A;else if(WA.number(A)){if(this.options.rotationAngle=A,WA.object(Q)&&Q.background)this._setBackgroundColourOption("rotationBackground",Q.background)}else throw WA.invalidParameterError("angle","numeric",A);return this}function RpQ(){return this.options.input.autoOrient=!0,this}function wpQ(A){return this.options.flip=WA.bool(A)?A:!0,this}function jpQ(A){return this.options.flop=WA.bool(A)?A:!0,this}function OpQ(A,Q){let B=[].concat(...A);if(B.length===4&&B.every(WA.number))this.options.affineMatrix=B;else throw WA.invalidParameterError("matrix","1x4 or 2x2 array",A);if(WA.defined(Q))if(WA.object(Q)){if(this._setBackgroundColourOption("affineBackground",Q.background),WA.defined(Q.idx))if(WA.number(Q.idx))this.options.affineIdx=Q.idx;else throw WA.invalidParameterError("options.idx","number",Q.idx);if(WA.defined(Q.idy))if(WA.number(Q.idy))this.options.affineIdy=Q.idy;else throw WA.invalidParameterError("options.idy","number",Q.idy);if(WA.defined(Q.odx))if(WA.number(Q.odx))this.options.affineOdx=Q.odx;else throw WA.invalidParameterError("options.odx","number",Q.odx);if(WA.defined(Q.ody))if(WA.number(Q.ody))this.options.affineOdy=Q.ody;else throw WA.invalidParameterError("options.ody","number",Q.ody);if(WA.defined(Q.interpolator))if(WA.inArray(Q.interpolator,Object.values(this.constructor.interpolators)))this.options.affineInterpolator=Q.interpolator;else throw WA.invalidParameterError("options.interpolator","valid interpolator name",Q.interpolator)}else throw WA.invalidParameterError("options","object",Q);return this}function PpQ(A,Q,B){if(!WA.defined(A))this.options.sharpenSigma=-1;else if(WA.bool(A))this.options.sharpenSigma=A?-1:0;else if(WA.number(A)&&WA.inRange(A,0.01,1e4)){if(this.options.sharpenSigma=A,WA.defined(Q))if(WA.number(Q)&&WA.inRange(Q,0,1e4))this.options.sharpenM1=Q;else throw WA.invalidParameterError("flat","number between 0 and 10000",Q);if(WA.defined(B))if(WA.number(B)&&WA.inRange(B,0,1e4))this.options.sharpenM2=B;else throw WA.invalidParameterError("jagged","number between 0 and 10000",B)}else if(WA.plainObject(A)){if(WA.number(A.sigma)&&WA.inRange(A.sigma,0.000001,10))this.options.sharpenSigma=A.sigma;else throw WA.invalidParameterError("options.sigma","number between 0.000001 and 10",A.sigma);if(WA.defined(A.m1))if(WA.number(A.m1)&&WA.inRange(A.m1,0,1e6))this.options.sharpenM1=A.m1;else throw WA.invalidParameterError("options.m1","number between 0 and 1000000",A.m1);if(WA.defined(A.m2))if(WA.number(A.m2)&&WA.inRange(A.m2,0,1e6))this.options.sharpenM2=A.m2;else throw WA.invalidParameterError("options.m2","number between 0 and 1000000",A.m2);if(WA.defined(A.x1))if(WA.number(A.x1)&&WA.inRange(A.x1,0,1e6))this.options.sharpenX1=A.x1;else throw WA.invalidParameterError("options.x1","number between 0 and 1000000",A.x1);if(WA.defined(A.y2))if(WA.number(A.y2)&&WA.inRange(A.y2,0,1e6))this.options.sharpenY2=A.y2;else throw WA.invalidParameterError("options.y2","number between 0 and 1000000",A.y2);if(WA.defined(A.y3))if(WA.number(A.y3)&&WA.inRange(A.y3,0,1e6))this.options.sharpenY3=A.y3;else throw WA.invalidParameterError("options.y3","number between 0 and 1000000",A.y3)}else throw WA.invalidParameterError("sigma","number between 0.01 and 10000",A);return this}function TpQ(A){if(!WA.defined(A))this.options.medianSize=3;else if(WA.integer(A)&&WA.inRange(A,1,1000))this.options.medianSize=A;else throw WA.invalidParameterError("size","integer between 1 and 1000",A);return this}function SpQ(A){let Q;if(WA.number(A))Q=A;else if(WA.plainObject(A)){if(!WA.number(A.sigma))throw WA.invalidParameterError("options.sigma","number between 0.3 and 1000",Q);if(Q=A.sigma,"precision"in A)if(WA.string(W5A[A.precision]))this.options.precision=W5A[A.precision];else throw WA.invalidParameterError("precision","one of: integer, float, approximate",A.precision);if("minAmplitude"in A)if(WA.number(A.minAmplitude)&&WA.inRange(A.minAmplitude,0.001,1))this.options.minAmpl=A.minAmplitude;else throw WA.invalidParameterError("minAmplitude","number between 0.001 and 1",A.minAmplitude)}if(!WA.defined(A))this.options.blurSigma=-1;else if(WA.bool(A))this.options.blurSigma=A?-1:0;else if(WA.number(Q)&&WA.inRange(Q,0.3,1000))this.options.blurSigma=Q;else throw WA.invalidParameterError("sigma","number between 0.3 and 1000",Q);return this}function F5A(A){if(!WA.defined(A))this.options.dilateWidth=1;else if(WA.integer(A)&&A>0)this.options.dilateWidth=A;else throw WA.invalidParameterError("dilate","positive integer",F5A);return this}function Z5A(A){if(!WA.defined(A))this.options.erodeWidth=1;else if(WA.integer(A)&&A>0)this.options.erodeWidth=A;else throw WA.invalidParameterError("erode","positive integer",Z5A);return this}function kpQ(A){if(this.options.flatten=WA.bool(A)?A:!0,WA.object(A))this._setBackgroundColourOption("flattenBackground",A.background);return this}function _pQ(){return this.options.unflatten=!0,this}function vpQ(A,Q){if(!WA.defined(A))this.options.gamma=2.2;else if(WA.number(A)&&WA.inRange(A,1,3))this.options.gamma=A;else throw WA.invalidParameterError("gamma","number between 1.0 and 3.0",A);if(!WA.defined(Q))this.options.gammaOut=this.options.gamma;else if(WA.number(Q)&&WA.inRange(Q,1,3))this.options.gammaOut=Q;else throw WA.invalidParameterError("gammaOut","number between 1.0 and 3.0",Q);return this}function ypQ(A){if(this.options.negate=WA.bool(A)?A:!0,WA.plainObject(A)&&"alpha"in A)if(!WA.bool(A.alpha))throw WA.invalidParameterError("alpha","should be boolean value",A.alpha);else this.options.negateAlpha=A.alpha;return this}function gpQ(A){if(WA.plainObject(A)){if(WA.defined(A.lower))if(WA.number(A.lower)&&WA.inRange(A.lower,0,99))this.options.normaliseLower=A.lower;else throw WA.invalidParameterError("lower","number between 0 and 99",A.lower);if(WA.defined(A.upper))if(WA.number(A.upper)&&WA.inRange(A.upper,1,100))this.options.normaliseUpper=A.upper;else throw WA.invalidParameterError("upper","number between 1 and 100",A.upper)}if(this.options.normaliseLower>=this.options.normaliseUpper)throw WA.invalidParameterError("range","lower to be less than upper",`${this.options.normaliseLower} >= ${this.options.normaliseUpper}`);return this.options.normalise=!0,this}function hpQ(A){return this.normalise(A)}function xpQ(A){if(WA.plainObject(A)){if(WA.integer(A.width)&&A.width>0)this.options.claheWidth=A.width;else throw WA.invalidParameterError("width","integer greater than zero",A.width);if(WA.integer(A.height)&&A.height>0)this.options.claheHeight=A.height;else throw WA.invalidParameterError("height","integer greater than zero",A.height);if(WA.defined(A.maxSlope))if(WA.integer(A.maxSlope)&&WA.inRange(A.maxSlope,0,100))this.options.claheMaxSlope=A.maxSlope;else throw WA.invalidParameterError("maxSlope","integer between 0 and 100",A.maxSlope)}else throw WA.invalidParameterError("options","plain object",A);return this}function fpQ(A){if(!WA.object(A)||!Array.isArray(A.kernel)||!WA.integer(A.width)||!WA.integer(A.height)||!WA.inRange(A.width,3,1001)||!WA.inRange(A.height,3,1001)||A.height*A.width!==A.kernel.length)throw Error("Invalid convolution kernel");if(!WA.integer(A.scale))A.scale=A.kernel.reduce(function(Q,B){return Q+B},0);if(A.scale<1)A.scale=1;if(!WA.integer(A.offset))A.offset=0;return this.options.convKernel=A,this}function bpQ(A,Q){if(!WA.defined(A))this.options.threshold=128;else if(WA.bool(A))this.options.threshold=A?128:0;else if(WA.integer(A)&&WA.inRange(A,0,255))this.options.threshold=A;else throw WA.invalidParameterError("threshold","integer between 0 and 255",A);if(!WA.object(Q)||Q.greyscale===!0||Q.grayscale===!0)this.options.thresholdGrayscale=!0;else this.options.thresholdGrayscale=!1;return this}function mpQ(A,Q,B){if(this.options.boolean=this._createInputDescriptor(A,B),WA.string(Q)&&WA.inArray(Q,["and","or","eor"]))this.options.booleanOp=Q;else throw WA.invalidParameterError("operator","one of: and, or, eor",Q);return this}function upQ(A,Q){if(!WA.defined(A)&&WA.number(Q))A=1;else if(WA.number(A)&&!WA.defined(Q))Q=0;if(!WA.defined(A))this.options.linearA=[];else if(WA.number(A))this.options.linearA=[A];else if(Array.isArray(A)&&A.length&&A.every(WA.number))this.options.linearA=A;else throw WA.invalidParameterError("a","number or array of numbers",A);if(!WA.defined(Q))this.options.linearB=[];else if(WA.number(Q))this.options.linearB=[Q];else if(Array.isArray(Q)&&Q.length&&Q.every(WA.number))this.options.linearB=Q;else throw WA.invalidParameterError("b","number or array of numbers",Q);if(this.options.linearA.length!==this.options.linearB.length)throw Error("Expected a and b to be arrays of the same length");return this}function dpQ(A){if(!Array.isArray(A))throw WA.invalidParameterError("inputMatrix","array",A);if(A.length!==3&&A.length!==4)throw WA.invalidParameterError("inputMatrix","3x3 or 4x4 array",A.length);let Q=A.flat().map(Number);if(Q.length!==9&&Q.length!==16)throw WA.invalidParameterError("inputMatrix","cardinality of 9 or 16",Q.length);return this.options.recombMatrix=Q,this}function cpQ(A){if(!WA.plainObject(A))throw WA.invalidParameterError("options","plain object",A);if("brightness"in A)if(WA.number(A.brightness)&&A.brightness>=0)this.options.brightness=A.brightness;else throw WA.invalidParameterError("brightness","number above zero",A.brightness);if("saturation"in A)if(WA.number(A.saturation)&&A.saturation>=0)this.options.saturation=A.saturation;else throw WA.invalidParameterError("saturation","number above zero",A.saturation);if("hue"in A)if(WA.integer(A.hue))this.options.hue=A.hue%360;else throw WA.invalidParameterError("hue","number",A.hue);if("lightness"in A)if(WA.number(A.lightness))this.options.lightness=A.lightness;else throw WA.invalidParameterError("lightness","number",A.lightness);return this}$5A.exports=function(A){Object.assign(A.prototype,{autoOrient:RpQ,rotate:zpQ,flip:wpQ,flop:jpQ,affine:OpQ,sharpen:PpQ,erode:Z5A,dilate:F5A,median:TpQ,blur:SpQ,flatten:kpQ,unflatten:_pQ,gamma:vpQ,negate:ypQ,normalise:gpQ,normalize:hpQ,clahe:xpQ,convolve:fpQ,threshold:bpQ,boolean:mpQ,linear:upQ,recomb:dpQ,modulate:cpQ})}});var Hh=R((y6Y,E5A)=>{E5A.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}});var V5A=R((g6Y,K5A)=>{K5A.exports=function(Q){if(!Q||typeof Q==="string")return!1;return Q instanceof Array||Array.isArray(Q)||Q.length>=0&&(Q.splice instanceof Function||Object.getOwnPropertyDescriptor(Q,Q.length-1)&&Q.constructor.name!=="String")}});var D5A=R((h6Y,H5A)=>{var lpQ=V5A(),ppQ=Array.prototype.concat,ipQ=Array.prototype.slice,I5A=H5A.exports=function(Q){var B=[];for(var Y=0,J=Q.length;Y{var WH=Hh(),FH=D5A(),N5A=Object.hasOwnProperty,L5A=Object.create(null);for(GH in WH)if(N5A.call(WH,GH))L5A[WH[GH]]=GH;var GH,$8=q5A.exports={to:{},get:{}};$8.get=function(A){var Q=A.substring(0,3).toLowerCase(),B,Y;switch(Q){case"hsl":B=$8.get.hsl(A),Y="hsl";break;case"hwb":B=$8.get.hwb(A),Y="hwb";break;default:B=$8.get.rgb(A),Y="rgb";break}if(!B)return null;return{model:Y,value:B}};$8.get.rgb=function(A){if(!A)return null;var Q=/^#([a-f0-9]{3,4})$/i,B=/^#([a-f0-9]{6})([a-f0-9]{2})?$/i,Y=/^rgba?\(\s*([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/,J=/^rgba?\(\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/,C=/^(\w+)$/,X=[0,0,0,1],G,W,F;if(G=A.match(B)){F=G[2],G=G[1];for(W=0;W<3;W++){var Z=W*2;X[W]=parseInt(G.slice(Z,Z+2),16)}if(F)X[3]=parseInt(F,16)/255}else if(G=A.match(Q)){G=G[1],F=G[3];for(W=0;W<3;W++)X[W]=parseInt(G[W]+G[W],16);if(F)X[3]=parseInt(F+F,16)/255}else if(G=A.match(Y)){for(W=0;W<3;W++)X[W]=parseInt(G[W+1],0);if(G[4])if(G[5])X[3]=parseFloat(G[4])*0.01;else X[3]=parseFloat(G[4])}else if(G=A.match(J)){for(W=0;W<3;W++)X[W]=Math.round(parseFloat(G[W+1])*2.55);if(G[4])if(G[5])X[3]=parseFloat(G[4])*0.01;else X[3]=parseFloat(G[4])}else if(G=A.match(C)){if(G[1]==="transparent")return[0,0,0,0];if(!N5A.call(WH,G[1]))return null;return X=WH[G[1]],X[3]=1,X}else return null;for(W=0;W<3;W++)X[W]=Z7(X[W],0,255);return X[3]=Z7(X[3],0,1),X};$8.get.hsl=function(A){if(!A)return null;var Q=/^hsla?\(\s*([+-]?(?:\d{0,3}\.)?\d+)(?:deg)?\s*,?\s*([+-]?[\d\.]+)%\s*,?\s*([+-]?[\d\.]+)%\s*(?:[,|\/]\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:[eE][+-]?\d+)?)\s*)?\)$/,B=A.match(Q);if(B){var Y=parseFloat(B[4]),J=(parseFloat(B[1])%360+360)%360,C=Z7(parseFloat(B[2]),0,100),X=Z7(parseFloat(B[3]),0,100),G=Z7(isNaN(Y)?1:Y,0,1);return[J,C,X,G]}return null};$8.get.hwb=function(A){if(!A)return null;var Q=/^hwb\(\s*([+-]?\d{0,3}(?:\.\d+)?)(?:deg)?\s*,\s*([+-]?[\d\.]+)%\s*,\s*([+-]?[\d\.]+)%\s*(?:,\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:[eE][+-]?\d+)?)\s*)?\)$/,B=A.match(Q);if(B){var Y=parseFloat(B[4]),J=(parseFloat(B[1])%360+360)%360,C=Z7(parseFloat(B[2]),0,100),X=Z7(parseFloat(B[3]),0,100),G=Z7(isNaN(Y)?1:Y,0,1);return[J,C,X,G]}return null};$8.to.hex=function(){var A=FH(arguments);return"#"+w3(A[0])+w3(A[1])+w3(A[2])+(A[3]<1?w3(Math.round(A[3]*255)):"")};$8.to.rgb=function(){var A=FH(arguments);return A.length<4||A[3]===1?"rgb("+Math.round(A[0])+", "+Math.round(A[1])+", "+Math.round(A[2])+")":"rgba("+Math.round(A[0])+", "+Math.round(A[1])+", "+Math.round(A[2])+", "+A[3]+")"};$8.to.rgb.percent=function(){var A=FH(arguments),Q=Math.round(A[0]/255*100),B=Math.round(A[1]/255*100),Y=Math.round(A[2]/255*100);return A.length<4||A[3]===1?"rgb("+Q+"%, "+B+"%, "+Y+"%)":"rgba("+Q+"%, "+B+"%, "+Y+"%, "+A[3]+")"};$8.to.hsl=function(){var A=FH(arguments);return A.length<4||A[3]===1?"hsl("+A[0]+", "+A[1]+"%, "+A[2]+"%)":"hsla("+A[0]+", "+A[1]+"%, "+A[2]+"%, "+A[3]+")"};$8.to.hwb=function(){var A=FH(arguments),Q="";if(A.length>=4&&A[3]!==1)Q=", "+A[3];return"hwb("+A[0]+", "+A[1]+"%, "+A[2]+"%"+Q+")"};$8.to.keyword=function(A){return L5A[A.slice(0,3)]};function Z7(A,Q,B){return Math.min(Math.max(Q,A),B)}function w3(A){var Q=Math.round(A).toString(16).toUpperCase();return Q.length<2?"0"+Q:Q}});var Dh=R((f6Y,R5A)=>{var ZH=Hh(),z5A={};for(let A of Object.keys(ZH))z5A[ZH[A]]=A;var aA={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},lch:{channels:3,labels:"lch"},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}};R5A.exports=aA;for(let A of Object.keys(aA)){if(!("channels"in aA[A]))throw Error("missing channels property: "+A);if(!("labels"in aA[A]))throw Error("missing channel labels property: "+A);if(aA[A].labels.length!==aA[A].channels)throw Error("channel and label counts mismatch: "+A);let{channels:Q,labels:B}=aA[A];delete aA[A].channels,delete aA[A].labels,Object.defineProperty(aA[A],"channels",{value:Q}),Object.defineProperty(aA[A],"labels",{value:B})}aA.rgb.hsl=function(A){let Q=A[0]/255,B=A[1]/255,Y=A[2]/255,J=Math.min(Q,B,Y),C=Math.max(Q,B,Y),X=C-J,G,W;if(C===J)G=0;else if(Q===C)G=(B-Y)/X;else if(B===C)G=2+(Y-Q)/X;else if(Y===C)G=4+(Q-B)/X;if(G=Math.min(G*60,360),G<0)G+=360;let F=(J+C)/2;if(C===J)W=0;else if(F<=0.5)W=X/(C+J);else W=X/(2-C-J);return[G,W*100,F*100]};aA.rgb.hsv=function(A){let Q,B,Y,J,C,X=A[0]/255,G=A[1]/255,W=A[2]/255,F=Math.max(X,G,W),Z=F-Math.min(X,G,W),U=function($){return(F-$)/6/Z+0.5};if(Z===0)J=0,C=0;else{if(C=Z/F,Q=U(X),B=U(G),Y=U(W),X===F)J=Y-B;else if(G===F)J=0.3333333333333333+Q-Y;else if(W===F)J=0.6666666666666666+B-Q;if(J<0)J+=1;else if(J>1)J-=1}return[J*360,C*100,F*100]};aA.rgb.hwb=function(A){let Q=A[0],B=A[1],Y=A[2],J=aA.rgb.hsl(A)[0],C=0.00392156862745098*Math.min(Q,Math.min(B,Y));return Y=1-0.00392156862745098*Math.max(Q,Math.max(B,Y)),[J,C*100,Y*100]};aA.rgb.cmyk=function(A){let Q=A[0]/255,B=A[1]/255,Y=A[2]/255,J=Math.min(1-Q,1-B,1-Y),C=(1-Q-J)/(1-J)||0,X=(1-B-J)/(1-J)||0,G=(1-Y-J)/(1-J)||0;return[C*100,X*100,G*100,J*100]};function npQ(A,Q){return(A[0]-Q[0])**2+(A[1]-Q[1])**2+(A[2]-Q[2])**2}aA.rgb.keyword=function(A){let Q=z5A[A];if(Q)return Q;let B=1/0,Y;for(let J of Object.keys(ZH)){let C=ZH[J],X=npQ(A,C);if(X0.04045?((Q+0.055)/1.055)**2.4:Q/12.92,B=B>0.04045?((B+0.055)/1.055)**2.4:B/12.92,Y=Y>0.04045?((Y+0.055)/1.055)**2.4:Y/12.92;let J=Q*0.4124+B*0.3576+Y*0.1805,C=Q*0.2126+B*0.7152+Y*0.0722,X=Q*0.0193+B*0.1192+Y*0.9505;return[J*100,C*100,X*100]};aA.rgb.lab=function(A){let Q=aA.rgb.xyz(A),B=Q[0],Y=Q[1],J=Q[2];B/=95.047,Y/=100,J/=108.883,B=B>0.008856?B**0.3333333333333333:7.787*B+0.13793103448275862,Y=Y>0.008856?Y**0.3333333333333333:7.787*Y+0.13793103448275862,J=J>0.008856?J**0.3333333333333333:7.787*J+0.13793103448275862;let C=116*Y-16,X=500*(B-Y),G=200*(Y-J);return[C,X,G]};aA.hsl.rgb=function(A){let Q=A[0]/360,B=A[1]/100,Y=A[2]/100,J,C,X;if(B===0)return X=Y*255,[X,X,X];if(Y<0.5)J=Y*(1+B);else J=Y+B-Y*B;let G=2*Y-J,W=[0,0,0];for(let F=0;F<3;F++){if(C=Q+0.3333333333333333*-(F-1),C<0)C++;if(C>1)C--;if(6*C<1)X=G+(J-G)*6*C;else if(2*C<1)X=J;else if(3*C<2)X=G+(J-G)*(0.6666666666666666-C)*6;else X=G;W[F]=X*255}return W};aA.hsl.hsv=function(A){let Q=A[0],B=A[1]/100,Y=A[2]/100,J=B,C=Math.max(Y,0.01);Y*=2,B*=Y<=1?Y:2-Y,J*=C<=1?C:2-C;let X=(Y+B)/2,G=Y===0?2*J/(C+J):2*B/(Y+B);return[Q,G*100,X*100]};aA.hsv.rgb=function(A){let Q=A[0]/60,B=A[1]/100,Y=A[2]/100,J=Math.floor(Q)%6,C=Q-Math.floor(Q),X=255*Y*(1-B),G=255*Y*(1-B*C),W=255*Y*(1-B*(1-C));switch(Y*=255,J){case 0:return[Y,W,X];case 1:return[G,Y,X];case 2:return[X,Y,W];case 3:return[X,G,Y];case 4:return[W,X,Y];case 5:return[Y,X,G]}};aA.hsv.hsl=function(A){let Q=A[0],B=A[1]/100,Y=A[2]/100,J=Math.max(Y,0.01),C,X;X=(2-B)*Y;let G=(2-B)*J;return C=B*J,C/=G<=1?G:2-G,C=C||0,X/=2,[Q,C*100,X*100]};aA.hwb.rgb=function(A){let Q=A[0]/360,B=A[1]/100,Y=A[2]/100,J=B+Y,C;if(J>1)B/=J,Y/=J;let X=Math.floor(6*Q),G=1-Y;if(C=6*Q-X,(X&1)!==0)C=1-C;let W=B+C*(G-B),F,Z,U;switch(X){default:case 6:case 0:F=G,Z=W,U=B;break;case 1:F=W,Z=G,U=B;break;case 2:F=B,Z=G,U=W;break;case 3:F=B,Z=W,U=G;break;case 4:F=W,Z=B,U=G;break;case 5:F=G,Z=B,U=W;break}return[F*255,Z*255,U*255]};aA.cmyk.rgb=function(A){let Q=A[0]/100,B=A[1]/100,Y=A[2]/100,J=A[3]/100,C=1-Math.min(1,Q*(1-J)+J),X=1-Math.min(1,B*(1-J)+J),G=1-Math.min(1,Y*(1-J)+J);return[C*255,X*255,G*255]};aA.xyz.rgb=function(A){let Q=A[0]/100,B=A[1]/100,Y=A[2]/100,J,C,X;return J=Q*3.2406+B*-1.5372+Y*-0.4986,C=Q*-0.9689+B*1.8758+Y*0.0415,X=Q*0.0557+B*-0.204+Y*1.057,J=J>0.0031308?1.055*J**0.4166666666666667-0.055:J*12.92,C=C>0.0031308?1.055*C**0.4166666666666667-0.055:C*12.92,X=X>0.0031308?1.055*X**0.4166666666666667-0.055:X*12.92,J=Math.min(Math.max(0,J),1),C=Math.min(Math.max(0,C),1),X=Math.min(Math.max(0,X),1),[J*255,C*255,X*255]};aA.xyz.lab=function(A){let Q=A[0],B=A[1],Y=A[2];Q/=95.047,B/=100,Y/=108.883,Q=Q>0.008856?Q**0.3333333333333333:7.787*Q+0.13793103448275862,B=B>0.008856?B**0.3333333333333333:7.787*B+0.13793103448275862,Y=Y>0.008856?Y**0.3333333333333333:7.787*Y+0.13793103448275862;let J=116*B-16,C=500*(Q-B),X=200*(B-Y);return[J,C,X]};aA.lab.xyz=function(A){let Q=A[0],B=A[1],Y=A[2],J,C,X;C=(Q+16)/116,J=B/500+C,X=C-Y/200;let G=C**3,W=J**3,F=X**3;return C=G>0.008856?G:(C-0.13793103448275862)/7.787,J=W>0.008856?W:(J-0.13793103448275862)/7.787,X=F>0.008856?F:(X-0.13793103448275862)/7.787,J*=95.047,C*=100,X*=108.883,[J,C,X]};aA.lab.lch=function(A){let Q=A[0],B=A[1],Y=A[2],J;if(J=Math.atan2(Y,B)*360/2/Math.PI,J<0)J+=360;let X=Math.sqrt(B*B+Y*Y);return[Q,X,J]};aA.lch.lab=function(A){let Q=A[0],B=A[1],J=A[2]/360*2*Math.PI,C=B*Math.cos(J),X=B*Math.sin(J);return[Q,C,X]};aA.rgb.ansi16=function(A,Q=null){let[B,Y,J]=A,C=Q===null?aA.rgb.hsv(A)[2]:Q;if(C=Math.round(C/50),C===0)return 30;let X=30+(Math.round(J/255)<<2|Math.round(Y/255)<<1|Math.round(B/255));if(C===2)X+=60;return X};aA.hsv.ansi16=function(A){return aA.rgb.ansi16(aA.hsv.rgb(A),A[2])};aA.rgb.ansi256=function(A){let Q=A[0],B=A[1],Y=A[2];if(Q===B&&B===Y){if(Q<8)return 16;if(Q>248)return 231;return Math.round((Q-8)/247*24)+232}return 16+36*Math.round(Q/255*5)+6*Math.round(B/255*5)+Math.round(Y/255*5)};aA.ansi16.rgb=function(A){let Q=A%10;if(Q===0||Q===7){if(A>50)Q+=3.5;return Q=Q/10.5*255,[Q,Q,Q]}let B=(~~(A>50)+1)*0.5,Y=(Q&1)*B*255,J=(Q>>1&1)*B*255,C=(Q>>2&1)*B*255;return[Y,J,C]};aA.ansi256.rgb=function(A){if(A>=232){let C=(A-232)*10+8;return[C,C,C]}A-=16;let Q,B=Math.floor(A/36)/5*255,Y=Math.floor((Q=A%36)/6)/5*255,J=Q%6/5*255;return[B,Y,J]};aA.rgb.hex=function(A){let B=(((Math.round(A[0])&255)<<16)+((Math.round(A[1])&255)<<8)+(Math.round(A[2])&255)).toString(16).toUpperCase();return"000000".substring(B.length)+B};aA.hex.rgb=function(A){let Q=A.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!Q)return[0,0,0];let B=Q[0];if(Q[0].length===3)B=B.split("").map((G)=>{return G+G}).join("");let Y=parseInt(B,16),J=Y>>16&255,C=Y>>8&255,X=Y&255;return[J,C,X]};aA.rgb.hcg=function(A){let Q=A[0]/255,B=A[1]/255,Y=A[2]/255,J=Math.max(Math.max(Q,B),Y),C=Math.min(Math.min(Q,B),Y),X=J-C,G,W;if(X<1)G=C/(1-X);else G=0;if(X<=0)W=0;else if(J===Q)W=(B-Y)/X%6;else if(J===B)W=2+(Y-Q)/X;else W=4+(Q-B)/X;return W/=6,W%=1,[W*360,X*100,G*100]};aA.hsl.hcg=function(A){let Q=A[1]/100,B=A[2]/100,Y=B<0.5?2*Q*B:2*Q*(1-B),J=0;if(Y<1)J=(B-0.5*Y)/(1-Y);return[A[0],Y*100,J*100]};aA.hsv.hcg=function(A){let Q=A[1]/100,B=A[2]/100,Y=Q*B,J=0;if(Y<1)J=(B-Y)/(1-Y);return[A[0],Y*100,J*100]};aA.hcg.rgb=function(A){let Q=A[0]/360,B=A[1]/100,Y=A[2]/100;if(B===0)return[Y*255,Y*255,Y*255];let J=[0,0,0],C=Q%1*6,X=C%1,G=1-X,W=0;switch(Math.floor(C)){case 0:J[0]=1,J[1]=X,J[2]=0;break;case 1:J[0]=G,J[1]=1,J[2]=0;break;case 2:J[0]=0,J[1]=1,J[2]=X;break;case 3:J[0]=0,J[1]=G,J[2]=1;break;case 4:J[0]=X,J[1]=0,J[2]=1;break;default:J[0]=1,J[1]=0,J[2]=G}return W=(1-B)*Y,[(B*J[0]+W)*255,(B*J[1]+W)*255,(B*J[2]+W)*255]};aA.hcg.hsv=function(A){let Q=A[1]/100,B=A[2]/100,Y=Q+B*(1-Q),J=0;if(Y>0)J=Q/Y;return[A[0],J*100,Y*100]};aA.hcg.hsl=function(A){let Q=A[1]/100,Y=A[2]/100*(1-Q)+0.5*Q,J=0;if(Y>0&&Y<0.5)J=Q/(2*Y);else if(Y>=0.5&&Y<1)J=Q/(2*(1-Y));return[A[0],J*100,Y*100]};aA.hcg.hwb=function(A){let Q=A[1]/100,B=A[2]/100,Y=Q+B*(1-Q);return[A[0],(Y-Q)*100,(1-Y)*100]};aA.hwb.hcg=function(A){let Q=A[1]/100,Y=1-A[2]/100,J=Y-Q,C=0;if(J<1)C=(Y-J)/(1-J);return[A[0],J*100,C*100]};aA.apple.rgb=function(A){return[A[0]/65535*255,A[1]/65535*255,A[2]/65535*255]};aA.rgb.apple=function(A){return[A[0]/255*65535,A[1]/255*65535,A[2]/255*65535]};aA.gray.rgb=function(A){return[A[0]/100*255,A[0]/100*255,A[0]/100*255]};aA.gray.hsl=function(A){return[0,0,A[0]]};aA.gray.hsv=aA.gray.hsl;aA.gray.hwb=function(A){return[0,100,A[0]]};aA.gray.cmyk=function(A){return[0,0,0,A[0]]};aA.gray.lab=function(A){return[A[0],0,0]};aA.gray.hex=function(A){let Q=Math.round(A[0]/100*255)&255,Y=((Q<<16)+(Q<<8)+Q).toString(16).toUpperCase();return"000000".substring(Y.length)+Y};aA.rgb.gray=function(A){return[(A[0]+A[1]+A[2])/3/255*100]}});var j5A=R((b6Y,w5A)=>{var j3=Dh();function spQ(){let A={},Q=Object.keys(j3);for(let B=Q.length,Y=0;Y{var Nh=Dh(),tpQ=j5A(),BU={},epQ=Object.keys(Nh);function AiQ(A){let Q=function(...B){let Y=B[0];if(Y===void 0||Y===null)return Y;if(Y.length>1)B=Y;return A(B)};if("conversion"in A)Q.conversion=A.conversion;return Q}function QiQ(A){let Q=function(...B){let Y=B[0];if(Y===void 0||Y===null)return Y;if(Y.length>1)B=Y;let J=A(B);if(typeof J==="object")for(let C=J.length,X=0;X{BU[A]={},Object.defineProperty(BU[A],"channels",{value:Nh[A].channels}),Object.defineProperty(BU[A],"labels",{value:Nh[A].labels});let Q=tpQ(A);Object.keys(Q).forEach((Y)=>{let J=Q[Y];BU[A][Y]=QiQ(J),BU[A][Y].raw=AiQ(J)})});O5A.exports=BU});var k5A=R((u6Y,S5A)=>{var YU=M5A(),U8=P5A(),T5A=["keyword","gray","hex"],Lh={};for(let A of Object.keys(U8))Lh[[...U8[A].labels].sort().join("")]=A;var O3={};function pY(A,Q){if(!(this instanceof pY))return new pY(A,Q);if(Q&&Q in T5A)Q=null;if(Q&&!(Q in U8))throw Error("Unknown model: "+Q);let B,Y;if(A==null)this.model="rgb",this.color=[0,0,0],this.valpha=1;else if(A instanceof pY)this.model=A.model,this.color=[...A.color],this.valpha=A.valpha;else if(typeof A==="string"){let J=YU.get(A);if(J===null)throw Error("Unable to parse color from string: "+A);this.model=J.model,Y=U8[this.model].channels,this.color=J.value.slice(0,Y),this.valpha=typeof J.value[Y]==="number"?J.value[Y]:1}else if(A.length>0){this.model=Q||"rgb",Y=U8[this.model].channels;let J=Array.prototype.slice.call(A,0,Y);this.color=qh(J,Y),this.valpha=typeof A[Y]==="number"?A[Y]:1}else if(typeof A==="number")this.model="rgb",this.color=[A>>16&255,A>>8&255,A&255],this.valpha=1;else{this.valpha=1;let J=Object.keys(A);if("alpha"in A)J.splice(J.indexOf("alpha"),1),this.valpha=typeof A.alpha==="number"?A.alpha:0;let C=J.sort().join("");if(!(C in Lh))throw Error("Unable to parse color from object: "+JSON.stringify(A));this.model=Lh[C];let{labels:X}=U8[this.model],G=[];for(B=0;B(A%360+360)%360),saturationl:c0("hsl",1,kY(100)),lightness:c0("hsl",2,kY(100)),saturationv:c0("hsv",1,kY(100)),value:c0("hsv",2,kY(100)),chroma:c0("hcg",1,kY(100)),gray:c0("hcg",2,kY(100)),white:c0("hwb",1,kY(100)),wblack:c0("hwb",2,kY(100)),cyan:c0("cmyk",0,kY(100)),magenta:c0("cmyk",1,kY(100)),yellow:c0("cmyk",2,kY(100)),black:c0("cmyk",3,kY(100)),x:c0("xyz",0,kY(95.047)),y:c0("xyz",1,kY(100)),z:c0("xyz",2,kY(108.833)),l:c0("lab",0,kY(100)),a:c0("lab",1),b:c0("lab",2),keyword(A){if(A!==void 0)return new pY(A);return U8[this.model].keyword(this.color)},hex(A){if(A!==void 0)return new pY(A);return YU.to.hex(this.rgb().round().color)},hexa(A){if(A!==void 0)return new pY(A);let Q=this.rgb().round().color,B=Math.round(this.valpha*255).toString(16).toUpperCase();if(B.length===1)B="0"+B;return YU.to.hex(Q)+B},rgbNumber(){let A=this.rgb().color;return(A[0]&255)<<16|(A[1]&255)<<8|A[2]&255},luminosity(){let A=this.rgb().color,Q=[];for(let[B,Y]of A.entries()){let J=Y/255;Q[B]=J<=0.04045?J/12.92:((J+0.055)/1.055)**2.4}return 0.2126*Q[0]+0.7152*Q[1]+0.0722*Q[2]},contrast(A){let Q=this.luminosity(),B=A.luminosity();if(Q>B)return(Q+0.05)/(B+0.05);return(B+0.05)/(Q+0.05)},level(A){let Q=this.contrast(A);if(Q>=7)return"AAA";return Q>=4.5?"AA":""},isDark(){let A=this.rgb().color;return(A[0]*2126+A[1]*7152+A[2]*722)/1e4<128},isLight(){return!this.isDark()},negate(){let A=this.rgb();for(let Q=0;Q<3;Q++)A.color[Q]=255-A.color[Q];return A},lighten(A){let Q=this.hsl();return Q.color[2]+=Q.color[2]*A,Q},darken(A){let Q=this.hsl();return Q.color[2]-=Q.color[2]*A,Q},saturate(A){let Q=this.hsl();return Q.color[1]+=Q.color[1]*A,Q},desaturate(A){let Q=this.hsl();return Q.color[1]-=Q.color[1]*A,Q},whiten(A){let Q=this.hwb();return Q.color[1]+=Q.color[1]*A,Q},blacken(A){let Q=this.hwb();return Q.color[2]+=Q.color[2]*A,Q},grayscale(){let A=this.rgb().color,Q=A[0]*0.3+A[1]*0.59+A[2]*0.11;return pY.rgb(Q,Q,Q)},fade(A){return this.alpha(this.valpha-this.valpha*A)},opaquer(A){return this.alpha(this.valpha+this.valpha*A)},rotate(A){let Q=this.hsl(),B=Q.color[0];return B=(B+A)%360,B=B<0?360+B:B,Q.color[0]=B,Q},mix(A,Q){if(!A||!A.rgb)throw Error('Argument to "mix" was not a Color instance, but rather an instance of '+typeof A);let B=A.rgb(),Y=this.rgb(),J=Q===void 0?0.5:Q,C=2*J-1,X=B.alpha()-Y.alpha(),G=((C*X===-1?C:(C+X)/(1+C*X))+1)/2,W=1-G;return pY.rgb(G*B.red()+W*Y.red(),G*B.green()+W*Y.green(),G*B.blue()+W*Y.blue(),B.alpha()*J+Y.alpha()*(1-J))}};for(let A of Object.keys(U8)){if(T5A.includes(A))continue;let{channels:Q}=U8[A];pY.prototype[A]=function(...B){if(this.model===A)return new pY(this);if(B.length>0)return new pY(B,A);return new pY([...JiQ(U8[this.model][A].raw(this.color)),this.valpha],A)},pY[A]=function(...B){let Y=B[0];if(typeof Y==="number")Y=qh(B,Q);return new pY(Y,A)}}function BiQ(A,Q){return Number(A.toFixed(Q))}function YiQ(A){return function(Q){return BiQ(Q,A)}}function c0(A,Q,B){A=Array.isArray(A)?A:[A];for(let Y of A)(O3[Y]||(O3[Y]=[]))[Q]=B;return A=A[0],function(Y){let J;if(Y!==void 0){if(B)Y=B(Y);return J=this[A](),J.color[Q]=Y,J}if(J=this[A]().color[Q],B)J=B(J);return J}}function kY(A){return function(Q){return Math.max(0,Math.min(A,Q))}}function JiQ(A){return Array.isArray(A)?A:[A]}function qh(A,Q){for(let B=0;B{var CiQ=k5A(),q6=g1(),_5A={multiband:"multiband","b-w":"b-w",bw:"b-w",cmyk:"cmyk",srgb:"srgb"};function XiQ(A){return this._setBackgroundColourOption("tint",A),this}function GiQ(A){return this.options.greyscale=q6.bool(A)?A:!0,this}function WiQ(A){return this.greyscale(A)}function FiQ(A){if(!q6.string(A))throw q6.invalidParameterError("colourspace","string",A);return this.options.colourspacePipeline=A,this}function ZiQ(A){return this.pipelineColourspace(A)}function $iQ(A){if(!q6.string(A))throw q6.invalidParameterError("colourspace","string",A);return this.options.colourspace=A,this}function UiQ(A){return this.toColourspace(A)}function v5A(A){if(q6.object(A)||q6.string(A)){let Q=CiQ(A);return[Q.red(),Q.green(),Q.blue(),Math.round(Q.alpha()*255)]}else throw q6.invalidParameterError("background","object or string",A)}function EiQ(A,Q){if(q6.defined(Q))this.options[A]=v5A(Q)}y5A.exports=function(A){Object.assign(A.prototype,{tint:XiQ,greyscale:GiQ,grayscale:WiQ,pipelineColourspace:FiQ,pipelineColorspace:ZiQ,toColourspace:$iQ,toColorspace:UiQ,_getBackgroundColourOption:v5A,_setBackgroundColourOption:EiQ}),A.colourspace=_5A,A.colorspace=_5A}});var x5A=R((c6Y,h5A)=>{var b1=g1(),KiQ={and:"and",or:"or",eor:"eor"};function ViQ(){return this.options.removeAlpha=!0,this}function IiQ(A){if(b1.defined(A))if(b1.number(A)&&b1.inRange(A,0,1))this.options.ensureAlpha=A;else throw b1.invalidParameterError("alpha","number between 0 and 1",A);else this.options.ensureAlpha=1;return this}function HiQ(A){let Q={red:0,green:1,blue:2,alpha:3};if(Object.keys(Q).includes(A))A=Q[A];if(b1.integer(A)&&b1.inRange(A,0,4))this.options.extractChannel=A;else throw b1.invalidParameterError("channel","integer or one of: red, green, blue, alpha",A);return this}function DiQ(A,Q){if(Array.isArray(A))A.forEach(function(B){this.options.joinChannelIn.push(this._createInputDescriptor(B,Q))},this);else this.options.joinChannelIn.push(this._createInputDescriptor(A,Q));return this}function NiQ(A){if(b1.string(A)&&b1.inArray(A,["and","or","eor"]))this.options.bandBoolOp=A;else throw b1.invalidParameterError("boolOp","one of: and, or, eor",A);return this}h5A.exports=function(A){Object.assign(A.prototype,{removeAlpha:ViQ,ensureAlpha:IiQ,extractChannel:HiQ,joinChannel:DiQ,bandbool:NiQ}),A.bool=KiQ}});var d5A=R((l6Y,u5A)=>{var Mh=u("node:path"),f=g1(),JU=XH(),f5A=new Map([["heic","heif"],["heif","heif"],["avif","avif"],["jpeg","jpeg"],["jpg","jpeg"],["jpe","jpeg"],["tile","tile"],["dz","tile"],["png","png"],["raw","raw"],["tiff","tiff"],["tif","tiff"],["webp","webp"],["gif","gif"],["jp2","jp2"],["jpx","jp2"],["j2k","jp2"],["j2c","jp2"],["jxl","jxl"]]),LiQ=/\.(jp[2x]|j2[kc])$/i,b5A=()=>Error("JP2 output requires libvips with support for OpenJPEG"),m5A=(A)=>1<<31-Math.clz32(Math.ceil(Math.log2(A)));function qiQ(A,Q){let B;if(!f.string(A))B=Error("Missing output file path");else if(f.string(this.options.input.file)&&Mh.resolve(this.options.input.file)===Mh.resolve(A))B=Error("Cannot use same file for input and output");else if(LiQ.test(Mh.extname(A))&&!this.constructor.format.jp2k.output.file)B=b5A();if(B)if(f.fn(Q))Q(B);else return Promise.reject(B);else{this.options.fileOut=A;let Y=Error();return this._pipeline(Q,Y)}return this}function MiQ(A,Q){if(f.object(A))this._setBooleanOption("resolveWithObject",A.resolveWithObject);else if(this.options.resolveWithObject)this.options.resolveWithObject=!1;this.options.fileOut="";let B=Error();return this._pipeline(f.fn(A)?A:Q,B)}function ziQ(){return this.options.keepMetadata|=1,this}function RiQ(A){if(f.object(A))for(let[Q,B]of Object.entries(A))if(f.object(B))for(let[Y,J]of Object.entries(B))if(f.string(J))this.options.withExif[`exif-${Q.toLowerCase()}-${Y}`]=J;else throw f.invalidParameterError(`${Q}.${Y}`,"string",J);else throw f.invalidParameterError(Q,"object",B);else throw f.invalidParameterError("exif","object",A);return this.options.withExifMerge=!1,this.keepExif()}function wiQ(A){return this.withExif(A),this.options.withExifMerge=!0,this}function jiQ(){return this.options.keepMetadata|=8,this}function OiQ(A,Q){if(f.string(A))this.options.withIccProfile=A;else throw f.invalidParameterError("icc","string",A);if(this.keepIccProfile(),f.object(Q)){if(f.defined(Q.attach))if(f.bool(Q.attach)){if(!Q.attach)this.options.keepMetadata&=-9}else throw f.invalidParameterError("attach","boolean",Q.attach)}return this}function PiQ(){return this.options.keepMetadata|=2,this}function TiQ(A){if(f.string(A)&&A.length>0)this.options.withXmp=A,this.options.keepMetadata|=2;else throw f.invalidParameterError("xmp","non-empty string",A);return this}function SiQ(){return this.options.keepMetadata=31,this}function kiQ(A){if(this.keepMetadata(),this.withIccProfile("srgb"),f.object(A)){if(f.defined(A.orientation))if(f.integer(A.orientation)&&f.inRange(A.orientation,1,8))this.options.withMetadataOrientation=A.orientation;else throw f.invalidParameterError("orientation","integer between 1 and 8",A.orientation);if(f.defined(A.density))if(f.number(A.density)&&A.density>0)this.options.withMetadataDensity=A.density;else throw f.invalidParameterError("density","positive number",A.density);if(f.defined(A.icc))this.withIccProfile(A.icc);if(f.defined(A.exif))this.withExifMerge(A.exif)}return this}function _iQ(A,Q){let B=f5A.get((f.object(A)&&f.string(A.id)?A.id:A).toLowerCase());if(!B)throw f.invalidParameterError("format",`one of: ${[...f5A.keys()].join(", ")}`,A);return this[B](Q)}function viQ(A){if(f.object(A)){if(f.defined(A.quality))if(f.integer(A.quality)&&f.inRange(A.quality,1,100))this.options.jpegQuality=A.quality;else throw f.invalidParameterError("quality","integer between 1 and 100",A.quality);if(f.defined(A.progressive))this._setBooleanOption("jpegProgressive",A.progressive);if(f.defined(A.chromaSubsampling))if(f.string(A.chromaSubsampling)&&f.inArray(A.chromaSubsampling,["4:2:0","4:4:4"]))this.options.jpegChromaSubsampling=A.chromaSubsampling;else throw f.invalidParameterError("chromaSubsampling","one of: 4:2:0, 4:4:4",A.chromaSubsampling);let Q=f.bool(A.optimizeCoding)?A.optimizeCoding:A.optimiseCoding;if(f.defined(Q))this._setBooleanOption("jpegOptimiseCoding",Q);if(f.defined(A.mozjpeg))if(f.bool(A.mozjpeg)){if(A.mozjpeg)this.options.jpegTrellisQuantisation=!0,this.options.jpegOvershootDeringing=!0,this.options.jpegOptimiseScans=!0,this.options.jpegProgressive=!0,this.options.jpegQuantisationTable=3}else throw f.invalidParameterError("mozjpeg","boolean",A.mozjpeg);let B=f.bool(A.trellisQuantization)?A.trellisQuantization:A.trellisQuantisation;if(f.defined(B))this._setBooleanOption("jpegTrellisQuantisation",B);if(f.defined(A.overshootDeringing))this._setBooleanOption("jpegOvershootDeringing",A.overshootDeringing);let Y=f.bool(A.optimizeScans)?A.optimizeScans:A.optimiseScans;if(f.defined(Y)){if(this._setBooleanOption("jpegOptimiseScans",Y),Y)this.options.jpegProgressive=!0}let J=f.number(A.quantizationTable)?A.quantizationTable:A.quantisationTable;if(f.defined(J))if(f.integer(J)&&f.inRange(J,0,8))this.options.jpegQuantisationTable=J;else throw f.invalidParameterError("quantisationTable","integer between 0 and 8",J)}return this._updateFormatOut("jpeg",A)}function yiQ(A){if(f.object(A)){if(f.defined(A.progressive))this._setBooleanOption("pngProgressive",A.progressive);if(f.defined(A.compressionLevel))if(f.integer(A.compressionLevel)&&f.inRange(A.compressionLevel,0,9))this.options.pngCompressionLevel=A.compressionLevel;else throw f.invalidParameterError("compressionLevel","integer between 0 and 9",A.compressionLevel);if(f.defined(A.adaptiveFiltering))this._setBooleanOption("pngAdaptiveFiltering",A.adaptiveFiltering);let Q=A.colours||A.colors;if(f.defined(Q))if(f.integer(Q)&&f.inRange(Q,2,256))this.options.pngBitdepth=m5A(Q);else throw f.invalidParameterError("colours","integer between 2 and 256",Q);if(f.defined(A.palette))this._setBooleanOption("pngPalette",A.palette);else if([A.quality,A.effort,A.colours,A.colors,A.dither].some(f.defined))this._setBooleanOption("pngPalette",!0);if(this.options.pngPalette){if(f.defined(A.quality))if(f.integer(A.quality)&&f.inRange(A.quality,0,100))this.options.pngQuality=A.quality;else throw f.invalidParameterError("quality","integer between 0 and 100",A.quality);if(f.defined(A.effort))if(f.integer(A.effort)&&f.inRange(A.effort,1,10))this.options.pngEffort=A.effort;else throw f.invalidParameterError("effort","integer between 1 and 10",A.effort);if(f.defined(A.dither))if(f.number(A.dither)&&f.inRange(A.dither,0,1))this.options.pngDither=A.dither;else throw f.invalidParameterError("dither","number between 0.0 and 1.0",A.dither)}}return this._updateFormatOut("png",A)}function giQ(A){if(f.object(A)){if(f.defined(A.quality))if(f.integer(A.quality)&&f.inRange(A.quality,1,100))this.options.webpQuality=A.quality;else throw f.invalidParameterError("quality","integer between 1 and 100",A.quality);if(f.defined(A.alphaQuality))if(f.integer(A.alphaQuality)&&f.inRange(A.alphaQuality,0,100))this.options.webpAlphaQuality=A.alphaQuality;else throw f.invalidParameterError("alphaQuality","integer between 0 and 100",A.alphaQuality);if(f.defined(A.lossless))this._setBooleanOption("webpLossless",A.lossless);if(f.defined(A.nearLossless))this._setBooleanOption("webpNearLossless",A.nearLossless);if(f.defined(A.smartSubsample))this._setBooleanOption("webpSmartSubsample",A.smartSubsample);if(f.defined(A.smartDeblock))this._setBooleanOption("webpSmartDeblock",A.smartDeblock);if(f.defined(A.preset))if(f.string(A.preset)&&f.inArray(A.preset,["default","photo","picture","drawing","icon","text"]))this.options.webpPreset=A.preset;else throw f.invalidParameterError("preset","one of: default, photo, picture, drawing, icon, text",A.preset);if(f.defined(A.effort))if(f.integer(A.effort)&&f.inRange(A.effort,0,6))this.options.webpEffort=A.effort;else throw f.invalidParameterError("effort","integer between 0 and 6",A.effort);if(f.defined(A.minSize))this._setBooleanOption("webpMinSize",A.minSize);if(f.defined(A.mixed))this._setBooleanOption("webpMixed",A.mixed)}return zh(A,this.options),this._updateFormatOut("webp",A)}function hiQ(A){if(f.object(A)){if(f.defined(A.reuse))this._setBooleanOption("gifReuse",A.reuse);if(f.defined(A.progressive))this._setBooleanOption("gifProgressive",A.progressive);let Q=A.colours||A.colors;if(f.defined(Q))if(f.integer(Q)&&f.inRange(Q,2,256))this.options.gifBitdepth=m5A(Q);else throw f.invalidParameterError("colours","integer between 2 and 256",Q);if(f.defined(A.effort))if(f.number(A.effort)&&f.inRange(A.effort,1,10))this.options.gifEffort=A.effort;else throw f.invalidParameterError("effort","integer between 1 and 10",A.effort);if(f.defined(A.dither))if(f.number(A.dither)&&f.inRange(A.dither,0,1))this.options.gifDither=A.dither;else throw f.invalidParameterError("dither","number between 0.0 and 1.0",A.dither);if(f.defined(A.interFrameMaxError))if(f.number(A.interFrameMaxError)&&f.inRange(A.interFrameMaxError,0,32))this.options.gifInterFrameMaxError=A.interFrameMaxError;else throw f.invalidParameterError("interFrameMaxError","number between 0.0 and 32.0",A.interFrameMaxError);if(f.defined(A.interPaletteMaxError))if(f.number(A.interPaletteMaxError)&&f.inRange(A.interPaletteMaxError,0,256))this.options.gifInterPaletteMaxError=A.interPaletteMaxError;else throw f.invalidParameterError("interPaletteMaxError","number between 0.0 and 256.0",A.interPaletteMaxError);if(f.defined(A.keepDuplicateFrames))if(f.bool(A.keepDuplicateFrames))this._setBooleanOption("gifKeepDuplicateFrames",A.keepDuplicateFrames);else throw f.invalidParameterError("keepDuplicateFrames","boolean",A.keepDuplicateFrames)}return zh(A,this.options),this._updateFormatOut("gif",A)}function xiQ(A){if(!this.constructor.format.jp2k.output.buffer)throw b5A();if(f.object(A)){if(f.defined(A.quality))if(f.integer(A.quality)&&f.inRange(A.quality,1,100))this.options.jp2Quality=A.quality;else throw f.invalidParameterError("quality","integer between 1 and 100",A.quality);if(f.defined(A.lossless))if(f.bool(A.lossless))this.options.jp2Lossless=A.lossless;else throw f.invalidParameterError("lossless","boolean",A.lossless);if(f.defined(A.tileWidth))if(f.integer(A.tileWidth)&&f.inRange(A.tileWidth,1,32768))this.options.jp2TileWidth=A.tileWidth;else throw f.invalidParameterError("tileWidth","integer between 1 and 32768",A.tileWidth);if(f.defined(A.tileHeight))if(f.integer(A.tileHeight)&&f.inRange(A.tileHeight,1,32768))this.options.jp2TileHeight=A.tileHeight;else throw f.invalidParameterError("tileHeight","integer between 1 and 32768",A.tileHeight);if(f.defined(A.chromaSubsampling))if(f.string(A.chromaSubsampling)&&f.inArray(A.chromaSubsampling,["4:2:0","4:4:4"]))this.options.jp2ChromaSubsampling=A.chromaSubsampling;else throw f.invalidParameterError("chromaSubsampling","one of: 4:2:0, 4:4:4",A.chromaSubsampling)}return this._updateFormatOut("jp2",A)}function zh(A,Q){if(f.object(A)&&f.defined(A.loop))if(f.integer(A.loop)&&f.inRange(A.loop,0,65535))Q.loop=A.loop;else throw f.invalidParameterError("loop","integer between 0 and 65535",A.loop);if(f.object(A)&&f.defined(A.delay))if(f.integer(A.delay)&&f.inRange(A.delay,0,65535))Q.delay=[A.delay];else if(Array.isArray(A.delay)&&A.delay.every(f.integer)&&A.delay.every((B)=>f.inRange(B,0,65535)))Q.delay=A.delay;else throw f.invalidParameterError("delay","integer or an array of integers between 0 and 65535",A.delay)}function fiQ(A){if(f.object(A)){if(f.defined(A.quality))if(f.integer(A.quality)&&f.inRange(A.quality,1,100))this.options.tiffQuality=A.quality;else throw f.invalidParameterError("quality","integer between 1 and 100",A.quality);if(f.defined(A.bitdepth))if(f.integer(A.bitdepth)&&f.inArray(A.bitdepth,[1,2,4,8]))this.options.tiffBitdepth=A.bitdepth;else throw f.invalidParameterError("bitdepth","1, 2, 4 or 8",A.bitdepth);if(f.defined(A.tile))this._setBooleanOption("tiffTile",A.tile);if(f.defined(A.tileWidth))if(f.integer(A.tileWidth)&&A.tileWidth>0)this.options.tiffTileWidth=A.tileWidth;else throw f.invalidParameterError("tileWidth","integer greater than zero",A.tileWidth);if(f.defined(A.tileHeight))if(f.integer(A.tileHeight)&&A.tileHeight>0)this.options.tiffTileHeight=A.tileHeight;else throw f.invalidParameterError("tileHeight","integer greater than zero",A.tileHeight);if(f.defined(A.miniswhite))this._setBooleanOption("tiffMiniswhite",A.miniswhite);if(f.defined(A.pyramid))this._setBooleanOption("tiffPyramid",A.pyramid);if(f.defined(A.xres))if(f.number(A.xres)&&A.xres>0)this.options.tiffXres=A.xres;else throw f.invalidParameterError("xres","number greater than zero",A.xres);if(f.defined(A.yres))if(f.number(A.yres)&&A.yres>0)this.options.tiffYres=A.yres;else throw f.invalidParameterError("yres","number greater than zero",A.yres);if(f.defined(A.compression))if(f.string(A.compression)&&f.inArray(A.compression,["none","jpeg","deflate","packbits","ccittfax4","lzw","webp","zstd","jp2k"]))this.options.tiffCompression=A.compression;else throw f.invalidParameterError("compression","one of: none, jpeg, deflate, packbits, ccittfax4, lzw, webp, zstd, jp2k",A.compression);if(f.defined(A.predictor))if(f.string(A.predictor)&&f.inArray(A.predictor,["none","horizontal","float"]))this.options.tiffPredictor=A.predictor;else throw f.invalidParameterError("predictor","one of: none, horizontal, float",A.predictor);if(f.defined(A.resolutionUnit))if(f.string(A.resolutionUnit)&&f.inArray(A.resolutionUnit,["inch","cm"]))this.options.tiffResolutionUnit=A.resolutionUnit;else throw f.invalidParameterError("resolutionUnit","one of: inch, cm",A.resolutionUnit)}return this._updateFormatOut("tiff",A)}function biQ(A){return this.heif({...A,compression:"av1"})}function miQ(A){if(f.object(A)){if(f.string(A.compression)&&f.inArray(A.compression,["av1","hevc"]))this.options.heifCompression=A.compression;else throw f.invalidParameterError("compression","one of: av1, hevc",A.compression);if(f.defined(A.quality))if(f.integer(A.quality)&&f.inRange(A.quality,1,100))this.options.heifQuality=A.quality;else throw f.invalidParameterError("quality","integer between 1 and 100",A.quality);if(f.defined(A.lossless))if(f.bool(A.lossless))this.options.heifLossless=A.lossless;else throw f.invalidParameterError("lossless","boolean",A.lossless);if(f.defined(A.effort))if(f.integer(A.effort)&&f.inRange(A.effort,0,9))this.options.heifEffort=A.effort;else throw f.invalidParameterError("effort","integer between 0 and 9",A.effort);if(f.defined(A.chromaSubsampling))if(f.string(A.chromaSubsampling)&&f.inArray(A.chromaSubsampling,["4:2:0","4:4:4"]))this.options.heifChromaSubsampling=A.chromaSubsampling;else throw f.invalidParameterError("chromaSubsampling","one of: 4:2:0, 4:4:4",A.chromaSubsampling);if(f.defined(A.bitdepth))if(f.integer(A.bitdepth)&&f.inArray(A.bitdepth,[8,10,12])){if(A.bitdepth!==8&&this.constructor.versions.heif)throw f.invalidParameterError("bitdepth when using prebuilt binaries",8,A.bitdepth);this.options.heifBitdepth=A.bitdepth}else throw f.invalidParameterError("bitdepth","8, 10 or 12",A.bitdepth)}else throw f.invalidParameterError("options","Object",A);return this._updateFormatOut("heif",A)}function uiQ(A){if(f.object(A)){if(f.defined(A.quality))if(f.integer(A.quality)&&f.inRange(A.quality,1,100))this.options.jxlDistance=A.quality>=30?0.1+(100-A.quality)*0.09:0.017666666666666667*A.quality*A.quality-1.15*A.quality+25;else throw f.invalidParameterError("quality","integer between 1 and 100",A.quality);else if(f.defined(A.distance))if(f.number(A.distance)&&f.inRange(A.distance,0,15))this.options.jxlDistance=A.distance;else throw f.invalidParameterError("distance","number between 0.0 and 15.0",A.distance);if(f.defined(A.decodingTier))if(f.integer(A.decodingTier)&&f.inRange(A.decodingTier,0,4))this.options.jxlDecodingTier=A.decodingTier;else throw f.invalidParameterError("decodingTier","integer between 0 and 4",A.decodingTier);if(f.defined(A.lossless))if(f.bool(A.lossless))this.options.jxlLossless=A.lossless;else throw f.invalidParameterError("lossless","boolean",A.lossless);if(f.defined(A.effort))if(f.integer(A.effort)&&f.inRange(A.effort,1,9))this.options.jxlEffort=A.effort;else throw f.invalidParameterError("effort","integer between 1 and 9",A.effort)}return zh(A,this.options),this._updateFormatOut("jxl",A)}function diQ(A){if(f.object(A)){if(f.defined(A.depth))if(f.string(A.depth)&&f.inArray(A.depth,["char","uchar","short","ushort","int","uint","float","complex","double","dpcomplex"]))this.options.rawDepth=A.depth;else throw f.invalidParameterError("depth","one of: char, uchar, short, ushort, int, uint, float, complex, double, dpcomplex",A.depth)}return this._updateFormatOut("raw")}function ciQ(A){if(f.object(A)){if(f.defined(A.size))if(f.integer(A.size)&&f.inRange(A.size,1,8192))this.options.tileSize=A.size;else throw f.invalidParameterError("size","integer between 1 and 8192",A.size);if(f.defined(A.overlap))if(f.integer(A.overlap)&&f.inRange(A.overlap,0,8192)){if(A.overlap>this.options.tileSize)throw f.invalidParameterError("overlap",`<= size (${this.options.tileSize})`,A.overlap);this.options.tileOverlap=A.overlap}else throw f.invalidParameterError("overlap","integer between 0 and 8192",A.overlap);if(f.defined(A.container))if(f.string(A.container)&&f.inArray(A.container,["fs","zip"]))this.options.tileContainer=A.container;else throw f.invalidParameterError("container","one of: fs, zip",A.container);if(f.defined(A.layout))if(f.string(A.layout)&&f.inArray(A.layout,["dz","google","iiif","iiif3","zoomify"]))this.options.tileLayout=A.layout;else throw f.invalidParameterError("layout","one of: dz, google, iiif, iiif3, zoomify",A.layout);if(f.defined(A.angle))if(f.integer(A.angle)&&!(A.angle%90))this.options.tileAngle=A.angle;else throw f.invalidParameterError("angle","positive/negative multiple of 90",A.angle);if(this._setBackgroundColourOption("tileBackground",A.background),f.defined(A.depth))if(f.string(A.depth)&&f.inArray(A.depth,["onepixel","onetile","one"]))this.options.tileDepth=A.depth;else throw f.invalidParameterError("depth","one of: onepixel, onetile, one",A.depth);if(f.defined(A.skipBlanks))if(f.integer(A.skipBlanks)&&f.inRange(A.skipBlanks,-1,65535))this.options.tileSkipBlanks=A.skipBlanks;else throw f.invalidParameterError("skipBlanks","integer between -1 and 255/65535",A.skipBlanks);else if(f.defined(A.layout)&&A.layout==="google")this.options.tileSkipBlanks=5;let Q=f.bool(A.center)?A.center:A.centre;if(f.defined(Q))this._setBooleanOption("tileCentre",Q);if(f.defined(A.id))if(f.string(A.id))this.options.tileId=A.id;else throw f.invalidParameterError("id","string",A.id);if(f.defined(A.basename))if(f.string(A.basename))this.options.tileBasename=A.basename;else throw f.invalidParameterError("basename","string",A.basename)}if(f.inArray(this.options.formatOut,["jpeg","png","webp"]))this.options.tileFormat=this.options.formatOut;else if(this.options.formatOut!=="input")throw f.invalidParameterError("format","one of: jpeg, png, webp",this.options.formatOut);return this._updateFormatOut("dz")}function liQ(A){if(!f.plainObject(A))throw f.invalidParameterError("options","object",A);if(f.integer(A.seconds)&&f.inRange(A.seconds,0,3600))this.options.timeoutSeconds=A.seconds;else throw f.invalidParameterError("seconds","integer between 0 and 3600",A.seconds);return this}function piQ(A,Q){if(!(f.object(Q)&&Q.force===!1))this.options.formatOut=A;return this}function iiQ(A,Q){if(f.bool(Q))this.options[A]=Q;else throw f.invalidParameterError(A,"boolean",Q)}function niQ(){if(!this.options.streamOut){this.options.streamOut=!0;let A=Error();this._pipeline(void 0,A)}}function siQ(A,Q){if(typeof A==="function"){if(this._isStreamInput())this.on("finish",()=>{this._flattenBufferIn(),JU.pipeline(this.options,(B,Y,J)=>{if(B)A(f.nativeError(B,Q));else A(null,Y,J)})});else JU.pipeline(this.options,(B,Y,J)=>{if(B)A(f.nativeError(B,Q));else A(null,Y,J)});return this}else if(this.options.streamOut){if(this._isStreamInput()){if(this.once("finish",()=>{this._flattenBufferIn(),JU.pipeline(this.options,(B,Y,J)=>{if(B)this.emit("error",f.nativeError(B,Q));else this.emit("info",J),this.push(Y);this.push(null),this.on("end",()=>this.emit("close"))})}),this.streamInFinished)this.emit("finish")}else JU.pipeline(this.options,(B,Y,J)=>{if(B)this.emit("error",f.nativeError(B,Q));else this.emit("info",J),this.push(Y);this.push(null),this.on("end",()=>this.emit("close"))});return this}else if(this._isStreamInput())return new Promise((B,Y)=>{this.once("finish",()=>{this._flattenBufferIn(),JU.pipeline(this.options,(J,C,X)=>{if(J)Y(f.nativeError(J,Q));else if(this.options.resolveWithObject)B({data:C,info:X});else B(C)})})});else return new Promise((B,Y)=>{JU.pipeline(this.options,(J,C,X)=>{if(J)Y(f.nativeError(J,Q));else if(this.options.resolveWithObject)B({data:C,info:X});else B(C)})})}u5A.exports=function(A){Object.assign(A.prototype,{toFile:qiQ,toBuffer:MiQ,keepExif:ziQ,withExif:RiQ,withExifMerge:wiQ,keepIccProfile:jiQ,withIccProfile:OiQ,keepXmp:PiQ,withXmp:TiQ,keepMetadata:SiQ,withMetadata:kiQ,toFormat:_iQ,jpeg:viQ,jp2:xiQ,png:yiQ,webp:giQ,tiff:fiQ,avif:biQ,heif:miQ,jxl:uiQ,gif:hiQ,raw:diQ,tile:ciQ,timeout:liQ,_updateFormatOut:piQ,_setBooleanOption:iiQ,_read:niQ,_pipeline:siQ})}});var i5A=R((p6Y,p5A)=>{var riQ=u("node:events"),P3=AH(),E5=g1(),{runtimePlatformArch:aiQ}=$h(),A9=XH(),c5A=aiQ(),Rh=A9.libvipsVersion(),$7=A9.format();$7.heif.output.alias=["avif","heic"];$7.jpeg.output.alias=["jpe","jpg"];$7.tiff.output.alias=["tif"];$7.jp2k.output.alias=["j2c","j2k","jp2","jpx"];var oiQ={nearest:"nearest",bilinear:"bilinear",bicubic:"bicubic",locallyBoundedBicubic:"lbb",nohalo:"nohalo",vertexSplitQuadraticBasisSpline:"vsqbs"},CU={vips:Rh.semver};if(!Rh.isGlobal)if(!Rh.isWasm)try{CU=u(`@img/sharp-${c5A}/versions`)}catch(A){try{CU=u(`@img/sharp-libvips-${c5A}/versions`)}catch(Q){}}else try{CU=(()=>{throw new Error("Cannot require module "+"@img/sharp-wasm32/versions");})()}catch(A){}CU.sharp=Fh().version;if(CU.heif&&$7.heif)$7.heif.input.fileSuffix=[".avif"],$7.heif.output.alias=["avif"];function l5A(A){if(E5.bool(A))if(A)return A9.cache(50,20,100);else return A9.cache(0,0,0);else if(E5.object(A))return A9.cache(A.memory,A.files,A.items);else return A9.cache()}l5A(!0);function tiQ(A){return A9.concurrency(E5.integer(A)?A:null)}if(P3.familySync()===P3.GLIBC&&!A9._isUsingJemalloc())A9.concurrency(1);else if(P3.familySync()===P3.MUSL&&A9.concurrency()===1024)A9.concurrency(u("node:os").availableParallelism());var eiQ=new riQ.EventEmitter;function AnQ(){return A9.counters()}function QnQ(A){return A9.simd(E5.bool(A)?A:null)}function BnQ(A){if(E5.object(A))if(Array.isArray(A.operation)&&A.operation.every(E5.string))A9.block(A.operation,!0);else throw E5.invalidParameterError("operation","Array",A.operation);else throw E5.invalidParameterError("options","object",A)}function YnQ(A){if(E5.object(A))if(Array.isArray(A.operation)&&A.operation.every(E5.string))A9.block(A.operation,!1);else throw E5.invalidParameterError("operation","Array",A.operation);else throw E5.invalidParameterError("options","object",A)}p5A.exports=function(A){A.cache=l5A,A.concurrency=tiQ,A.counters=AnQ,A.simd=QnQ,A.format=$7,A.interpolators=oiQ,A.versions=CU,A.queue=eiQ,A.block=BnQ,A.unblock=YnQ}});var s5A=R((n6Y,n5A)=>{var M6=a8A();e8A()(M6);C5A()(M6);G5A()(M6);U5A()(M6);g5A()(M6);x5A()(M6);d5A()(M6);i5A()(M6);n5A.exports=M6});var a5A=R((s6Y,r5A)=>{function JnQ(A,Q){var B=1,Y=A.length,J=A[0],C=A[0];for(var X=1;X{var GnQ=a5A();function o5A(A,Q,B){var Y=A.length,J=Q.arrayArgs.length,C=Q.indexArgs.length>0,X=[],G=[],W=0,F=0,Z,U;for(Z=0;Z0)X.push("var "+G.join(","));for(Z=Y-1;Z>=0;--Z)W=A[Z],X.push(["for(i",Z,"=0;i",Z,"0)X.push(["index[",F,"]-=s",F].join(""));X.push(["++index[",W,"]"].join(""))}X.push("}")}return X.join(` +`));return I(Z3[A],sdQ)}function adQ(A){if(pdQ(A))return"buffer";if(idQ)switch(Object.prototype.toString.call(A)){case"[object Float64Array]":return"float64";case"[object Float32Array]":return"float32";case"[object Int8Array]":return"int8";case"[object Int16Array]":return"int16";case"[object Int32Array]":return"int32";case"[object Uint8Array]":return"uint8";case"[object Uint16Array]":return"uint16";case"[object Uint32Array]":return"uint32";case"[object Uint8ClampedArray]":return"uint8_clamped";case"[object BigInt64Array]":return"bigint64";case"[object BigUint64Array]":return"biguint64"}if(Array.isArray(A))return"array";return"generic"}var Z3={float32:[],float64:[],int8:[],int16:[],int32:[],uint8:[],uint16:[],uint32:[],array:[],uint8_clamped:[],bigint64:[],biguint64:[],buffer:[],generic:[]};function odQ(A,Q,B,Y){if(A===void 0){var F=Z3.array[0];return F([])}else if(typeof A==="number")A=[A];if(Q===void 0)Q=[A.length];var J=Q.length;if(B===void 0){B=Array(J);for(var C=J-1,X=1;C>=0;--C)B[C]=X,X*=Q[C]}if(Y===void 0){Y=0;for(var C=0;C{var q9A=function(A){return typeof A<"u"&&A!==null},tdQ=function(A){return typeof A==="object"},edQ=function(A){return Object.prototype.toString.call(A)==="[object Object]"},AcQ=function(A){return typeof A==="function"},QcQ=function(A){return typeof A==="boolean"},BcQ=function(A){return A instanceof Buffer},YcQ=function(A){if(q9A(A))switch(A.constructor){case Uint8Array:case Uint8ClampedArray:case Int8Array:case Uint16Array:case Int16Array:case Uint32Array:case Int32Array:case Float32Array:case Float64Array:return!0}return!1},JcQ=function(A){return A instanceof ArrayBuffer},CcQ=function(A){return typeof A==="string"&&A.length>0},XcQ=function(A){return typeof A==="number"&&!Number.isNaN(A)},GcQ=function(A){return Number.isInteger(A)},WcQ=function(A,Q,B){return A>=Q&&A<=B},FcQ=function(A,Q){return Q.includes(A)},ZcQ=function(A,Q,B){return Error(`Expected ${Q} for ${A} but received ${B} of type ${typeof B}`)},$cQ=function(A,Q){return Q.message=A.message,Q};M9A.exports={defined:q9A,object:tdQ,plainObject:edQ,fn:AcQ,bool:QcQ,buffer:BcQ,typedArray:YcQ,arrayBuffer:JcQ,string:CcQ,number:XcQ,integer:GcQ,inRange:WcQ,inArray:FcQ,invalidParameterError:ZcQ,nativeError:$cQ}});var w9A=R((B6Y,R9A)=>{var z9A=()=>process.platform==="linux",$3=null,UcQ=()=>{if(!$3)if(z9A()&&process.report){let A=process.report.excludeNetwork;process.report.excludeNetwork=!0,$3=process.report.getReport(),process.report.excludeNetwork=A}else $3={};return $3};R9A.exports={isLinux:z9A,getReport:UcQ}});var P9A=R((Y6Y,O9A)=>{var j9A=u("fs"),EcQ=(A)=>j9A.readFileSync(A,"utf-8"),KcQ=(A)=>new Promise((Q,B)=>{j9A.readFile(A,"utf-8",(Y,J)=>{if(Y)B(Y);else Q(J)})});O9A.exports={LDD_PATH:"/usr/bin/ldd",readFileSync:EcQ,readFile:KcQ}});var AH=R((J6Y,l9A)=>{var S9A=u("child_process"),{isLinux:t4,getReport:k9A}=w9A(),{LDD_PATH:U3,readFile:_9A,readFileSync:v9A}=P9A(),h1,x1,G7="",y9A=()=>{if(!G7)return new Promise((A)=>{S9A.exec("getconf GNU_LIBC_VERSION 2>&1 || true; ldd --version 2>&1 || true",(Q,B)=>{G7=Q?" ":B,A(G7)})});return G7},g9A=()=>{if(!G7)try{G7=S9A.execSync("getconf GNU_LIBC_VERSION 2>&1 || true; ldd --version 2>&1 || true",{encoding:"utf8"})}catch(A){G7=" "}return G7},W7="glibc",h9A=/LIBC[a-z0-9 \-).]*?(\d+\.\d+)/i,o4="musl",VcQ=(A)=>A.includes("libc.musl-")||A.includes("ld-musl-"),x9A=()=>{let A=k9A();if(A.header&&A.header.glibcVersionRuntime)return W7;if(Array.isArray(A.sharedObjects)){if(A.sharedObjects.some(VcQ))return o4}return null},f9A=(A)=>{let[Q,B]=A.split(/[\r\n]+/);if(Q&&Q.includes(W7))return W7;if(B&&B.includes(o4))return o4;return null},b9A=(A)=>{if(A.includes("musl"))return o4;if(A.includes("GNU C Library"))return W7;return null},IcQ=async()=>{if(h1!==void 0)return h1;h1=null;try{let A=await _9A(U3);h1=b9A(A)}catch(A){}return h1},HcQ=()=>{if(h1!==void 0)return h1;h1=null;try{let A=v9A(U3);h1=b9A(A)}catch(A){}return h1},m9A=async()=>{let A=null;if(t4()){if(A=await IcQ(),!A)A=x9A();if(!A){let Q=await y9A();A=f9A(Q)}}return A},u9A=()=>{let A=null;if(t4()){if(A=HcQ(),!A)A=x9A();if(!A){let Q=g9A();A=f9A(Q)}}return A},DcQ=async()=>t4()&&await m9A()!==W7,NcQ=()=>t4()&&u9A()!==W7,LcQ=async()=>{if(x1!==void 0)return x1;x1=null;try{let Q=(await _9A(U3)).match(h9A);if(Q)x1=Q[1]}catch(A){}return x1},qcQ=()=>{if(x1!==void 0)return x1;x1=null;try{let Q=v9A(U3).match(h9A);if(Q)x1=Q[1]}catch(A){}return x1},d9A=()=>{let A=k9A();if(A.header&&A.header.glibcVersionRuntime)return A.header.glibcVersionRuntime;return null},T9A=(A)=>A.trim().split(/\s+/)[1],c9A=(A)=>{let[Q,B,Y]=A.split(/[\r\n]+/);if(Q&&Q.includes(W7))return T9A(Q);if(B&&Y&&B.includes(o4))return T9A(Y);return null},McQ=async()=>{let A=null;if(t4()){if(A=await LcQ(),!A)A=d9A();if(!A){let Q=await y9A();A=c9A(Q)}}return A},zcQ=()=>{let A=null;if(t4()){if(A=qcQ(),!A)A=d9A();if(!A){let Q=g9A();A=c9A(Q)}}return A};l9A.exports={GLIBC:W7,MUSL:o4,family:m9A,familySync:u9A,isNonGlibcLinux:DcQ,isNonGlibcLinuxSync:NcQ,version:McQ,versionSync:zcQ}});var QH=R((C6Y,p9A)=>{var RcQ=typeof process==="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...A)=>console.error("SEMVER",...A):()=>{};p9A.exports=RcQ});var E3=R((X6Y,i9A)=>{var wcQ=Number.MAX_SAFE_INTEGER||9007199254740991,jcQ=["major","premajor","minor","preminor","patch","prepatch","prerelease"];i9A.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:16,MAX_SAFE_BUILD_LENGTH:250,MAX_SAFE_INTEGER:wcQ,RELEASE_TYPES:jcQ,SEMVER_SPEC_VERSION:"2.0.0",FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var BH=R((f1,n9A)=>{var{MAX_SAFE_COMPONENT_LENGTH:Bh,MAX_SAFE_BUILD_LENGTH:OcQ,MAX_LENGTH:PcQ}=E3(),TcQ=QH();f1=n9A.exports={};var ScQ=f1.re=[],kcQ=f1.safeRe=[],dA=f1.src=[],_cQ=f1.safeSrc=[],cA=f1.t={},vcQ=0,Yh="[a-zA-Z0-9-]",ycQ=[["\\s",1],["\\d",PcQ],[Yh,OcQ]],gcQ=(A)=>{for(let[Q,B]of ycQ)A=A.split(`${Q}*`).join(`${Q}{0,${B}}`).split(`${Q}+`).join(`${Q}{1,${B}}`);return A},uQ=(A,Q,B)=>{let Y=gcQ(Q),J=vcQ++;TcQ(A,J,Q),cA[A]=J,dA[J]=Q,_cQ[J]=Y,ScQ[J]=new RegExp(Q,B?"g":void 0),kcQ[J]=new RegExp(Y,B?"g":void 0)};uQ("NUMERICIDENTIFIER","0|[1-9]\\d*");uQ("NUMERICIDENTIFIERLOOSE","\\d+");uQ("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${Yh}*`);uQ("MAINVERSION",`(${dA[cA.NUMERICIDENTIFIER]})\\.(${dA[cA.NUMERICIDENTIFIER]})\\.(${dA[cA.NUMERICIDENTIFIER]})`);uQ("MAINVERSIONLOOSE",`(${dA[cA.NUMERICIDENTIFIERLOOSE]})\\.(${dA[cA.NUMERICIDENTIFIERLOOSE]})\\.(${dA[cA.NUMERICIDENTIFIERLOOSE]})`);uQ("PRERELEASEIDENTIFIER",`(?:${dA[cA.NONNUMERICIDENTIFIER]}|${dA[cA.NUMERICIDENTIFIER]})`);uQ("PRERELEASEIDENTIFIERLOOSE",`(?:${dA[cA.NONNUMERICIDENTIFIER]}|${dA[cA.NUMERICIDENTIFIERLOOSE]})`);uQ("PRERELEASE",`(?:-(${dA[cA.PRERELEASEIDENTIFIER]}(?:\\.${dA[cA.PRERELEASEIDENTIFIER]})*))`);uQ("PRERELEASELOOSE",`(?:-?(${dA[cA.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${dA[cA.PRERELEASEIDENTIFIERLOOSE]})*))`);uQ("BUILDIDENTIFIER",`${Yh}+`);uQ("BUILD",`(?:\\+(${dA[cA.BUILDIDENTIFIER]}(?:\\.${dA[cA.BUILDIDENTIFIER]})*))`);uQ("FULLPLAIN",`v?${dA[cA.MAINVERSION]}${dA[cA.PRERELEASE]}?${dA[cA.BUILD]}?`);uQ("FULL",`^${dA[cA.FULLPLAIN]}$`);uQ("LOOSEPLAIN",`[v=\\s]*${dA[cA.MAINVERSIONLOOSE]}${dA[cA.PRERELEASELOOSE]}?${dA[cA.BUILD]}?`);uQ("LOOSE",`^${dA[cA.LOOSEPLAIN]}$`);uQ("GTLT","((?:<|>)?=?)");uQ("XRANGEIDENTIFIERLOOSE",`${dA[cA.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);uQ("XRANGEIDENTIFIER",`${dA[cA.NUMERICIDENTIFIER]}|x|X|\\*`);uQ("XRANGEPLAIN",`[v=\\s]*(${dA[cA.XRANGEIDENTIFIER]})(?:\\.(${dA[cA.XRANGEIDENTIFIER]})(?:\\.(${dA[cA.XRANGEIDENTIFIER]})(?:${dA[cA.PRERELEASE]})?${dA[cA.BUILD]}?)?)?`);uQ("XRANGEPLAINLOOSE",`[v=\\s]*(${dA[cA.XRANGEIDENTIFIERLOOSE]})(?:\\.(${dA[cA.XRANGEIDENTIFIERLOOSE]})(?:\\.(${dA[cA.XRANGEIDENTIFIERLOOSE]})(?:${dA[cA.PRERELEASELOOSE]})?${dA[cA.BUILD]}?)?)?`);uQ("XRANGE",`^${dA[cA.GTLT]}\\s*${dA[cA.XRANGEPLAIN]}$`);uQ("XRANGELOOSE",`^${dA[cA.GTLT]}\\s*${dA[cA.XRANGEPLAINLOOSE]}$`);uQ("COERCEPLAIN",`(^|[^\\d])(\\d{1,${Bh}})(?:\\.(\\d{1,${Bh}}))?(?:\\.(\\d{1,${Bh}}))?`);uQ("COERCE",`${dA[cA.COERCEPLAIN]}(?:$|[^\\d])`);uQ("COERCEFULL",dA[cA.COERCEPLAIN]+`(?:${dA[cA.PRERELEASE]})?(?:${dA[cA.BUILD]})?(?:$|[^\\d])`);uQ("COERCERTL",dA[cA.COERCE],!0);uQ("COERCERTLFULL",dA[cA.COERCEFULL],!0);uQ("LONETILDE","(?:~>?)");uQ("TILDETRIM",`(\\s*)${dA[cA.LONETILDE]}\\s+`,!0);f1.tildeTrimReplace="$1~";uQ("TILDE",`^${dA[cA.LONETILDE]}${dA[cA.XRANGEPLAIN]}$`);uQ("TILDELOOSE",`^${dA[cA.LONETILDE]}${dA[cA.XRANGEPLAINLOOSE]}$`);uQ("LONECARET","(?:\\^)");uQ("CARETTRIM",`(\\s*)${dA[cA.LONECARET]}\\s+`,!0);f1.caretTrimReplace="$1^";uQ("CARET",`^${dA[cA.LONECARET]}${dA[cA.XRANGEPLAIN]}$`);uQ("CARETLOOSE",`^${dA[cA.LONECARET]}${dA[cA.XRANGEPLAINLOOSE]}$`);uQ("COMPARATORLOOSE",`^${dA[cA.GTLT]}\\s*(${dA[cA.LOOSEPLAIN]})$|^$`);uQ("COMPARATOR",`^${dA[cA.GTLT]}\\s*(${dA[cA.FULLPLAIN]})$|^$`);uQ("COMPARATORTRIM",`(\\s*)${dA[cA.GTLT]}\\s*(${dA[cA.LOOSEPLAIN]}|${dA[cA.XRANGEPLAIN]})`,!0);f1.comparatorTrimReplace="$1$2$3";uQ("HYPHENRANGE",`^\\s*(${dA[cA.XRANGEPLAIN]})\\s+-\\s+(${dA[cA.XRANGEPLAIN]})\\s*$`);uQ("HYPHENRANGELOOSE",`^\\s*(${dA[cA.XRANGEPLAINLOOSE]})\\s+-\\s+(${dA[cA.XRANGEPLAINLOOSE]})\\s*$`);uQ("STAR","(<|>)?=?\\s*\\*");uQ("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");uQ("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var K3=R((G6Y,s9A)=>{var hcQ=Object.freeze({loose:!0}),xcQ=Object.freeze({}),fcQ=(A)=>{if(!A)return xcQ;if(typeof A!=="object")return hcQ;return A};s9A.exports=fcQ});var t9A=R((W6Y,o9A)=>{var r9A=/^[0-9]+$/,a9A=(A,Q)=>{let B=r9A.test(A),Y=r9A.test(Q);if(B&&Y)A=+A,Q=+Q;return A===Q?0:B&&!Y?-1:Y&&!B?1:Aa9A(Q,A);o9A.exports={compareIdentifiers:a9A,rcompareIdentifiers:bcQ}});var AU=R((F6Y,A8A)=>{var V3=QH(),{MAX_LENGTH:e9A,MAX_SAFE_INTEGER:I3}=E3(),{safeRe:H3,t:D3}=BH(),mcQ=K3(),{compareIdentifiers:e4}=t9A();class PC{constructor(A,Q){if(Q=mcQ(Q),A instanceof PC)if(A.loose===!!Q.loose&&A.includePrerelease===!!Q.includePrerelease)return A;else A=A.version;else if(typeof A!=="string")throw TypeError(`Invalid version. Must be a string. Got type "${typeof A}".`);if(A.length>e9A)throw TypeError(`version is longer than ${e9A} characters`);V3("SemVer",A,Q),this.options=Q,this.loose=!!Q.loose,this.includePrerelease=!!Q.includePrerelease;let B=A.trim().match(Q.loose?H3[D3.LOOSE]:H3[D3.FULL]);if(!B)throw TypeError(`Invalid Version: ${A}`);if(this.raw=A,this.major=+B[1],this.minor=+B[2],this.patch=+B[3],this.major>I3||this.major<0)throw TypeError("Invalid major version");if(this.minor>I3||this.minor<0)throw TypeError("Invalid minor version");if(this.patch>I3||this.patch<0)throw TypeError("Invalid patch version");if(!B[4])this.prerelease=[];else this.prerelease=B[4].split(".").map((Y)=>{if(/^[0-9]+$/.test(Y)){let J=+Y;if(J>=0&&J=0)if(typeof this.prerelease[J]==="number")this.prerelease[J]++,J=-2;if(J===-1){if(Q===this.prerelease.join(".")&&B===!1)throw Error("invalid increment argument: identifier already exists");this.prerelease.push(Y)}}if(Q){let J=[Q,Y];if(B===!1)J=[Q];if(e4(this.prerelease[0],Q)===0){if(isNaN(this.prerelease[1]))this.prerelease=J}else this.prerelease=J}break}default:throw Error(`invalid increment argument: ${A}`)}if(this.raw=this.format(),this.build.length)this.raw+=`+${this.build.join(".")}`;return this}}A8A.exports=PC});var Y8A=R((Z6Y,B8A)=>{var Q8A=AU(),ucQ=(A,Q,B=!1)=>{if(A instanceof Q8A)return A;try{return new Q8A(A,Q)}catch(Y){if(!B)return null;throw Y}};B8A.exports=ucQ});var C8A=R(($6Y,J8A)=>{var dcQ=AU(),ccQ=Y8A(),{safeRe:N3,t:L3}=BH(),lcQ=(A,Q)=>{if(A instanceof dcQ)return A;if(typeof A==="number")A=String(A);if(typeof A!=="string")return null;Q=Q||{};let B=null;if(!Q.rtl)B=A.match(Q.includePrerelease?N3[L3.COERCEFULL]:N3[L3.COERCE]);else{let W=Q.includePrerelease?N3[L3.COERCERTLFULL]:N3[L3.COERCERTL],F;while((F=W.exec(A))&&(!B||B.index+B[0].length!==A.length)){if(!B||F.index+F[0].length!==B.index+B[0].length)B=F;W.lastIndex=F.index+F[1].length+F[2].length}W.lastIndex=-1}if(B===null)return null;let Y=B[2],J=B[3]||"0",C=B[4]||"0",X=Q.includePrerelease&&B[5]?`-${B[5]}`:"",G=Q.includePrerelease&&B[6]?`+${B[6]}`:"";return ccQ(`${Y}.${J}.${C}${X}${G}`,Q)};J8A.exports=lcQ});var uF=R((U6Y,G8A)=>{var X8A=AU(),pcQ=(A,Q,B)=>new X8A(A,B).compare(new X8A(Q,B));G8A.exports=pcQ});var Jh=R((E6Y,W8A)=>{var icQ=uF(),ncQ=(A,Q,B)=>icQ(A,Q,B)>=0;W8A.exports=ncQ});var $8A=R((K6Y,Z8A)=>{class F8A{constructor(){this.max=1000,this.map=new Map}get(A){let Q=this.map.get(A);if(Q===void 0)return;else return this.map.delete(A),this.map.set(A,Q),Q}delete(A){return this.map.delete(A)}set(A,Q){if(!this.delete(A)&&Q!==void 0){if(this.map.size>=this.max){let Y=this.map.keys().next().value;this.delete(Y)}this.map.set(A,Q)}return this}}Z8A.exports=F8A});var E8A=R((V6Y,U8A)=>{var scQ=uF(),rcQ=(A,Q,B)=>scQ(A,Q,B)===0;U8A.exports=rcQ});var V8A=R((I6Y,K8A)=>{var acQ=uF(),ocQ=(A,Q,B)=>acQ(A,Q,B)!==0;K8A.exports=ocQ});var H8A=R((H6Y,I8A)=>{var tcQ=uF(),ecQ=(A,Q,B)=>tcQ(A,Q,B)>0;I8A.exports=ecQ});var N8A=R((D6Y,D8A)=>{var AlQ=uF(),QlQ=(A,Q,B)=>AlQ(A,Q,B)<0;D8A.exports=QlQ});var q8A=R((N6Y,L8A)=>{var BlQ=uF(),YlQ=(A,Q,B)=>BlQ(A,Q,B)<=0;L8A.exports=YlQ});var z8A=R((L6Y,M8A)=>{var JlQ=E8A(),ClQ=V8A(),XlQ=H8A(),GlQ=Jh(),WlQ=N8A(),FlQ=q8A(),ZlQ=(A,Q,B,Y)=>{switch(Q){case"===":if(typeof A==="object")A=A.version;if(typeof B==="object")B=B.version;return A===B;case"!==":if(typeof A==="object")A=A.version;if(typeof B==="object")B=B.version;return A!==B;case"":case"=":case"==":return JlQ(A,B,Y);case"!=":return ClQ(A,B,Y);case">":return XlQ(A,B,Y);case">=":return GlQ(A,B,Y);case"<":return WlQ(A,B,Y);case"<=":return FlQ(A,B,Y);default:throw TypeError(`Invalid operator: ${Q}`)}};M8A.exports=ZlQ});var S8A=R((q6Y,T8A)=>{var YH=Symbol("SemVer ANY");class q3{static get ANY(){return YH}constructor(A,Q){if(Q=R8A(Q),A instanceof q3)if(A.loose===!!Q.loose)return A;else A=A.value;if(A=A.trim().split(/\s+/).join(" "),Xh("comparator",A,Q),this.options=Q,this.loose=!!Q.loose,this.parse(A),this.semver===YH)this.value="";else this.value=this.operator+this.semver.version;Xh("comp",this)}parse(A){let Q=this.options.loose?w8A[j8A.COMPARATORLOOSE]:w8A[j8A.COMPARATOR],B=A.match(Q);if(!B)throw TypeError(`Invalid comparator: ${A}`);if(this.operator=B[1]!==void 0?B[1]:"",this.operator==="=")this.operator="";if(!B[2])this.semver=YH;else this.semver=new O8A(B[2],this.options.loose)}toString(){return this.value}test(A){if(Xh("Comparator.test",A,this.options.loose),this.semver===YH||A===YH)return!0;if(typeof A==="string")try{A=new O8A(A,this.options)}catch(Q){return!1}return Ch(A,this.operator,this.semver,this.options)}intersects(A,Q){if(!(A instanceof q3))throw TypeError("a Comparator is required");if(this.operator===""){if(this.value==="")return!0;return new P8A(A.value,Q).test(this.value)}else if(A.operator===""){if(A.value==="")return!0;return new P8A(this.value,Q).test(A.semver)}if(Q=R8A(Q),Q.includePrerelease&&(this.value==="<0.0.0-0"||A.value==="<0.0.0-0"))return!1;if(!Q.includePrerelease&&(this.value.startsWith("<0.0.0")||A.value.startsWith("<0.0.0")))return!1;if(this.operator.startsWith(">")&&A.operator.startsWith(">"))return!0;if(this.operator.startsWith("<")&&A.operator.startsWith("<"))return!0;if(this.semver.version===A.semver.version&&this.operator.includes("=")&&A.operator.includes("="))return!0;if(Ch(this.semver,"<",A.semver,Q)&&this.operator.startsWith(">")&&A.operator.startsWith("<"))return!0;if(Ch(this.semver,">",A.semver,Q)&&this.operator.startsWith("<")&&A.operator.startsWith(">"))return!0;return!1}}T8A.exports=q3;var R8A=K3(),{safeRe:w8A,t:j8A}=BH(),Ch=z8A(),Xh=QH(),O8A=AU(),P8A=Gh()});var Gh=R((M6Y,y8A)=>{var $lQ=/\s+/g;class JH{constructor(A,Q){if(Q=ElQ(Q),A instanceof JH)if(A.loose===!!Q.loose&&A.includePrerelease===!!Q.includePrerelease)return A;else return new JH(A.raw,Q);if(A instanceof Wh)return this.raw=A.value,this.set=[[A]],this.formatted=void 0,this;if(this.options=Q,this.loose=!!Q.loose,this.includePrerelease=!!Q.includePrerelease,this.raw=A.trim().replace($lQ," "),this.set=this.raw.split("||").map((B)=>this.parseRange(B.trim())).filter((B)=>B.length),!this.set.length)throw TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let B=this.set[0];if(this.set=this.set.filter((Y)=>!_8A(Y[0])),this.set.length===0)this.set=[B];else if(this.set.length>1){for(let Y of this.set)if(Y.length===1&&LlQ(Y[0])){this.set=[Y];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let A=0;A0)this.formatted+="||";let Q=this.set[A];for(let B=0;B0)this.formatted+=" ";this.formatted+=Q[B].toString().trim()}}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(A){let B=((this.options.includePrerelease&&DlQ)|(this.options.loose&&NlQ))+":"+A,Y=k8A.get(B);if(Y)return Y;let J=this.options.loose,C=J?_9[tJ.HYPHENRANGELOOSE]:_9[tJ.HYPHENRANGE];A=A.replace(C,SlQ(this.options.includePrerelease)),$0("hyphen replace",A),A=A.replace(_9[tJ.COMPARATORTRIM],VlQ),$0("comparator trim",A),A=A.replace(_9[tJ.TILDETRIM],IlQ),$0("tilde trim",A),A=A.replace(_9[tJ.CARETTRIM],HlQ),$0("caret trim",A);let X=A.split(" ").map((Z)=>qlQ(Z,this.options)).join(" ").split(/\s+/).map((Z)=>TlQ(Z,this.options));if(J)X=X.filter((Z)=>{return $0("loose invalid filter",Z,this.options),!!Z.match(_9[tJ.COMPARATORLOOSE])});$0("range list",X);let G=new Map,W=X.map((Z)=>new Wh(Z,this.options));for(let Z of W){if(_8A(Z))return[Z];G.set(Z.value,Z)}if(G.size>1&&G.has(""))G.delete("");let F=[...G.values()];return k8A.set(B,F),F}intersects(A,Q){if(!(A instanceof JH))throw TypeError("a Range is required");return this.set.some((B)=>{return v8A(B,Q)&&A.set.some((Y)=>{return v8A(Y,Q)&&B.every((J)=>{return Y.every((C)=>{return J.intersects(C,Q)})})})})}test(A){if(!A)return!1;if(typeof A==="string")try{A=new KlQ(A,this.options)}catch(Q){return!1}for(let Q=0;QA.value==="<0.0.0-0",LlQ=(A)=>A.value==="",v8A=(A,Q)=>{let B=!0,Y=A.slice(),J=Y.pop();while(B&&Y.length)B=Y.every((C)=>{return J.intersects(C,Q)}),J=Y.pop();return B},qlQ=(A,Q)=>{return $0("comp",A,Q),A=RlQ(A,Q),$0("caret",A),A=MlQ(A,Q),$0("tildes",A),A=jlQ(A,Q),$0("xrange",A),A=PlQ(A,Q),$0("stars",A),A},eJ=(A)=>!A||A.toLowerCase()==="x"||A==="*",MlQ=(A,Q)=>{return A.trim().split(/\s+/).map((B)=>zlQ(B,Q)).join(" ")},zlQ=(A,Q)=>{let B=Q.loose?_9[tJ.TILDELOOSE]:_9[tJ.TILDE];return A.replace(B,(Y,J,C,X,G)=>{$0("tilde",A,Y,J,C,X,G);let W;if(eJ(J))W="";else if(eJ(C))W=`>=${J}.0.0 <${+J+1}.0.0-0`;else if(eJ(X))W=`>=${J}.${C}.0 <${J}.${+C+1}.0-0`;else if(G)$0("replaceTilde pr",G),W=`>=${J}.${C}.${X}-${G} <${J}.${+C+1}.0-0`;else W=`>=${J}.${C}.${X} <${J}.${+C+1}.0-0`;return $0("tilde return",W),W})},RlQ=(A,Q)=>{return A.trim().split(/\s+/).map((B)=>wlQ(B,Q)).join(" ")},wlQ=(A,Q)=>{$0("caret",A,Q);let B=Q.loose?_9[tJ.CARETLOOSE]:_9[tJ.CARET],Y=Q.includePrerelease?"-0":"";return A.replace(B,(J,C,X,G,W)=>{$0("caret",A,J,C,X,G,W);let F;if(eJ(C))F="";else if(eJ(X))F=`>=${C}.0.0${Y} <${+C+1}.0.0-0`;else if(eJ(G))if(C==="0")F=`>=${C}.${X}.0${Y} <${C}.${+X+1}.0-0`;else F=`>=${C}.${X}.0${Y} <${+C+1}.0.0-0`;else if(W)if($0("replaceCaret pr",W),C==="0")if(X==="0")F=`>=${C}.${X}.${G}-${W} <${C}.${X}.${+G+1}-0`;else F=`>=${C}.${X}.${G}-${W} <${C}.${+X+1}.0-0`;else F=`>=${C}.${X}.${G}-${W} <${+C+1}.0.0-0`;else if($0("no pr"),C==="0")if(X==="0")F=`>=${C}.${X}.${G}${Y} <${C}.${X}.${+G+1}-0`;else F=`>=${C}.${X}.${G}${Y} <${C}.${+X+1}.0-0`;else F=`>=${C}.${X}.${G} <${+C+1}.0.0-0`;return $0("caret return",F),F})},jlQ=(A,Q)=>{return $0("replaceXRanges",A,Q),A.split(/\s+/).map((B)=>OlQ(B,Q)).join(" ")},OlQ=(A,Q)=>{A=A.trim();let B=Q.loose?_9[tJ.XRANGELOOSE]:_9[tJ.XRANGE];return A.replace(B,(Y,J,C,X,G,W)=>{$0("xRange",A,Y,J,C,X,G,W);let F=eJ(C),Z=F||eJ(X),U=Z||eJ(G),$=U;if(J==="="&&$)J="";if(W=Q.includePrerelease?"-0":"",F)if(J===">"||J==="<")Y="<0.0.0-0";else Y="*";else if(J&&$){if(Z)X=0;if(G=0,J===">")if(J=">=",Z)C=+C+1,X=0,G=0;else X=+X+1,G=0;else if(J==="<=")if(J="<",Z)C=+C+1;else X=+X+1;if(J==="<")W="-0";Y=`${J+C}.${X}.${G}${W}`}else if(Z)Y=`>=${C}.0.0${W} <${+C+1}.0.0-0`;else if(U)Y=`>=${C}.${X}.0${W} <${C}.${+X+1}.0-0`;return $0("xRange return",Y),Y})},PlQ=(A,Q)=>{return $0("replaceStars",A,Q),A.trim().replace(_9[tJ.STAR],"")},TlQ=(A,Q)=>{return $0("replaceGTE0",A,Q),A.trim().replace(_9[Q.includePrerelease?tJ.GTE0PRE:tJ.GTE0],"")},SlQ=(A)=>(Q,B,Y,J,C,X,G,W,F,Z,U,$)=>{if(eJ(Y))B="";else if(eJ(J))B=`>=${Y}.0.0${A?"-0":""}`;else if(eJ(C))B=`>=${Y}.${J}.0${A?"-0":""}`;else if(X)B=`>=${B}`;else B=`>=${B}${A?"-0":""}`;if(eJ(F))W="";else if(eJ(Z))W=`<${+F+1}.0.0-0`;else if(eJ(U))W=`<${F}.${+Z+1}.0-0`;else if($)W=`<=${F}.${Z}.${U}-${$}`;else if(A)W=`<${F}.${Z}.${+U+1}-0`;else W=`<=${W}`;return`${B} ${W}`.trim()},klQ=(A,Q,B)=>{for(let Y=0;Y0){let J=A[Y].semver;if(J.major===Q.major&&J.minor===Q.minor&&J.patch===Q.patch)return!0}}return!1}return!0}});var h8A=R((z6Y,g8A)=>{var _lQ=Gh(),vlQ=(A,Q,B)=>{try{Q=new _lQ(Q,B)}catch(Y){return!1}return Q.test(A)};g8A.exports=vlQ});var Fh=R((R6Y,ylQ)=>{ylQ.exports={name:"sharp",description:"High performance Node.js image processing, the fastest module to resize JPEG, PNG, WebP, GIF, AVIF and TIFF images",version:"0.34.3",author:"Lovell Fuller ",homepage:"https://sharp.pixelplumbing.com",contributors:["Pierre Inglebert ","Jonathan Ong ","Chanon Sajjamanochai ","Juliano Julio ","Daniel Gasienica ","Julian Walker ","Amit Pitaru ","Brandon Aaron ","Andreas Lind ","Maurus Cuelenaere ","Linus Unnebäck ","Victor Mateevitsi ","Alaric Holloway ","Bernhard K. Weisshuhn ","Chris Riley ","David Carley ","John Tobin ","Kenton Gray ","Felix Bünemann ","Samy Al Zahrani ","Chintan Thakkar ","F. Orlando Galashan ","Kleis Auke Wolthuizen ","Matt Hirsch ","Matthias Thoemmes ","Patrick Paskaris ","Jérémy Lal ","Rahul Nanwani ","Alice Monday ","Kristo Jorgenson ","YvesBos ","Guy Maliar ","Nicolas Coden ","Matt Parrish ","Marcel Bretschneider ","Matthew McEachen ","Jarda Kotěšovec ","Kenric D'Souza ","Oleh Aleinyk ","Marcel Bretschneider ","Andrea Bianco ","Rik Heywood ","Thomas Parisot ","Nathan Graves ","Tom Lokhorst ","Espen Hovlandsdal ","Sylvain Dumont ","Alun Davies ","Aidan Hoolachan ","Axel Eirola ","Freezy ","Daiz ","Julian Aubourg ","Keith Belovay ","Michael B. Klein ","Jordan Prudhomme ","Ilya Ovdin ","Andargor ","Paul Neave ","Brendan Kennedy ","Brychan Bennett-Odlum ","Edward Silverton ","Roman Malieiev ","Tomas Szabo ","Robert O'Rourke ","Guillermo Alfonso Varela Chouciño ","Christian Flintrup ","Manan Jadhav ","Leon Radley ","alza54 ","Jacob Smith ","Michael Nutt ","Brad Parham ","Taneli Vatanen ","Joris Dugué ","Chris Banks ","Ompal Singh ","Brodan ","Ankur Parihar ","Brahim Ait elhaj ","Mart Jansink ","Lachlan Newman ","Dennis Beatty ","Ingvar Stepanyan ","Don Denton "],scripts:{install:"node install/check.js",clean:"rm -rf src/build/ .nyc_output/ coverage/ test/fixtures/output.*",test:"npm run test-lint && npm run test-unit && npm run test-licensing && npm run test-types","test-lint":"semistandard && cpplint","test-unit":"nyc --reporter=lcov --reporter=text --check-coverage --branches=100 mocha","test-licensing":'license-checker --production --summary --onlyAllow="Apache-2.0;BSD;ISC;LGPL-3.0-or-later;MIT"',"test-leak":"./test/leak/leak.sh","test-types":"tsd","package-from-local-build":"node npm/from-local-build.js","docs-build":"node docs/build.mjs","docs-serve":"cd docs && npm start","docs-publish":"cd docs && npm run build && npx firebase-tools deploy --project pixelplumbing --only hosting:pixelplumbing-sharp"},type:"commonjs",main:"lib/index.js",types:"lib/index.d.ts",files:["install","lib","src/*.{cc,h,gyp}"],repository:{type:"git",url:"git://github.com/lovell/sharp.git"},keywords:["jpeg","png","webp","avif","tiff","gif","svg","jp2","dzi","image","resize","thumbnail","crop","embed","libvips","vips"],dependencies:{color:"^4.2.3","detect-libc":"^2.0.4",semver:"^7.7.2"},optionalDependencies:{"@img/sharp-darwin-arm64":"0.34.3","@img/sharp-darwin-x64":"0.34.3","@img/sharp-libvips-darwin-arm64":"1.2.0","@img/sharp-libvips-darwin-x64":"1.2.0","@img/sharp-libvips-linux-arm":"1.2.0","@img/sharp-libvips-linux-arm64":"1.2.0","@img/sharp-libvips-linux-ppc64":"1.2.0","@img/sharp-libvips-linux-s390x":"1.2.0","@img/sharp-libvips-linux-x64":"1.2.0","@img/sharp-libvips-linuxmusl-arm64":"1.2.0","@img/sharp-libvips-linuxmusl-x64":"1.2.0","@img/sharp-linux-arm":"0.34.3","@img/sharp-linux-arm64":"0.34.3","@img/sharp-linux-ppc64":"0.34.3","@img/sharp-linux-s390x":"0.34.3","@img/sharp-linux-x64":"0.34.3","@img/sharp-linuxmusl-arm64":"0.34.3","@img/sharp-linuxmusl-x64":"0.34.3","@img/sharp-wasm32":"0.34.3","@img/sharp-win32-arm64":"0.34.3","@img/sharp-win32-ia32":"0.34.3","@img/sharp-win32-x64":"0.34.3"},devDependencies:{"@emnapi/runtime":"^1.4.4","@img/sharp-libvips-dev":"1.2.0","@img/sharp-libvips-dev-wasm32":"1.2.0","@img/sharp-libvips-win32-arm64":"1.2.0","@img/sharp-libvips-win32-ia32":"1.2.0","@img/sharp-libvips-win32-x64":"1.2.0","@types/node":"*",cc:"^3.0.1",emnapi:"^1.4.4","exif-reader":"^2.0.2","extract-zip":"^2.0.1",icc:"^3.0.0","jsdoc-to-markdown":"^9.1.1","license-checker":"^25.0.1",mocha:"^11.7.1","node-addon-api":"^8.4.0","node-gyp":"^11.2.0",nyc:"^17.1.0",semistandard:"^17.0.0","tar-fs":"^3.1.0",tsd:"^0.32.0"},license:"Apache-2.0",engines:{node:"^18.17.0 || ^20.3.0 || >=21.0.0"},config:{libvips:">=8.17.1"},funding:{url:"https://opencollective.com/libvips"},semistandard:{env:["mocha"]},cc:{linelength:"120",filter:["build/include"]},nyc:{include:["lib"]},tsd:{directory:"test/types/"}}});var $h=R((w6Y,i8A)=>{var{spawnSync:M3}=u("node:child_process"),{createHash:glQ}=u("node:crypto"),m8A=C8A(),hlQ=Jh(),xlQ=h8A(),x8A=AH(),{config:flQ,engines:f8A,optionalDependencies:blQ}=Fh(),mlQ=process.env.npm_package_config_libvips||flQ.libvips,u8A=m8A(mlQ).version,ulQ=["darwin-arm64","darwin-x64","linux-arm","linux-arm64","linux-ppc64","linux-s390x","linux-x64","linuxmusl-arm64","linuxmusl-x64","win32-arm64","win32-ia32","win32-x64"],z3={encoding:"utf8",shell:!0},dlQ=(A)=>{if(A instanceof Error)console.error(`sharp: Installation error: ${A.message}`);else console.log(`sharp: ${A}`)},d8A=()=>x8A.isNonGlibcLinuxSync()?x8A.familySync():"",clQ=()=>`${process.platform}${d8A()}-${process.arch}`,QU=()=>{if(c8A())return"wasm32";let{npm_config_arch:A,npm_config_platform:Q,npm_config_libc:B}=process.env,Y=typeof B==="string"?B:d8A();return`${Q||process.platform}${Y}-${A||process.arch}`},llQ=()=>{try{return u(`@img/sharp-libvips-dev-${QU()}/include`)}catch{try{return (()=>{throw new Error("Cannot require module "+"@img/sharp-libvips-dev/include");})()}catch{}}return""},plQ=()=>{try{return (()=>{throw new Error("Cannot require module "+"@img/sharp-libvips-dev/cplusplus");})()}catch{}return""},ilQ=()=>{try{return u(`@img/sharp-libvips-dev-${QU()}/lib`)}catch{try{return u(`@img/sharp-libvips-${QU()}/lib`)}catch{}}return""},nlQ=()=>{if(process.release?.name==="node"&&process.versions){if(!xlQ(process.versions.node,f8A.node))return{found:process.versions.node,expected:f8A.node}}},c8A=()=>{let{CC:A}=process.env;return Boolean(A&&A.endsWith("/emcc"))},slQ=()=>{if(process.platform==="darwin"&&process.arch==="x64")return(M3("sysctl sysctl.proc_translated",z3).stdout||"").trim()==="sysctl.proc_translated: 1";return!1},b8A=(A)=>glQ("sha512").update(A).digest("hex"),rlQ=()=>{try{let A=b8A(`imgsharp-libvips-${QU()}`),Q=m8A(blQ[`@img/sharp-libvips-${QU()}`],{includePrerelease:!0}).version;return b8A(`${A}npm:${Q}`).slice(0,10)}catch{}return""},alQ=()=>M3(`node-gyp rebuild --directory=src ${c8A()?"--nodedir=emscripten":""}`,{...z3,stdio:"inherit"}).status,l8A=()=>{if(process.platform!=="win32")return(M3("pkg-config --modversion vips-cpp",{...z3,env:{...process.env,PKG_CONFIG_PATH:p8A()}}).stdout||"").trim();else return""},p8A=()=>{if(process.platform!=="win32")return[(M3('which brew >/dev/null 2>&1 && brew environment --plain | grep PKG_CONFIG_LIBDIR | cut -d" " -f2',z3).stdout||"").trim(),process.env.PKG_CONFIG_PATH,"/usr/local/lib/pkgconfig","/usr/lib/pkgconfig","/usr/local/libdata/pkgconfig","/usr/libdata/pkgconfig"].filter(Boolean).join(":");else return""},Zh=(A,Q,B)=>{if(B)B(`Detected ${Q}, skipping search for globally-installed libvips`);return A},olQ=(A)=>{if(Boolean(process.env.SHARP_IGNORE_GLOBAL_LIBVIPS)===!0)return Zh(!1,"SHARP_IGNORE_GLOBAL_LIBVIPS",A);if(Boolean(process.env.SHARP_FORCE_GLOBAL_LIBVIPS)===!0)return Zh(!0,"SHARP_FORCE_GLOBAL_LIBVIPS",A);if(slQ())return Zh(!1,"Rosetta",A);let Q=l8A();return!!Q&&hlQ(Q,u8A)};i8A.exports={minimumLibvipsVersion:u8A,prebuiltPlatforms:ulQ,buildPlatformArch:QU,buildSharpLibvipsIncludeDir:llQ,buildSharpLibvipsCPlusPlusDir:plQ,buildSharpLibvipsLibDir:ilQ,isUnsupportedNodeRuntime:nlQ,runtimePlatformArch:clQ,log:dlQ,yarnLocator:rlQ,spawnRebuild:alQ,globalLibvipsVersion:l8A,pkgConfigPath:p8A,useGlobalLibvips:olQ}});var XH=R((O6Y,s8A)=>{var{familySync:tlQ,versionSync:elQ}=AH(),{runtimePlatformArch:ApQ,isUnsupportedNodeRuntime:n8A,prebuiltPlatforms:QpQ,minimumLibvipsVersion:BpQ}=$h(),dF=ApQ(),YpQ=[`../src/build/Release/sharp-${dF}.node`,"../src/build/Release/sharp-wasm32.node",`@img/sharp-${dF}/sharp.node`,"@img/sharp-wasm32/sharp.node"],Uh,BU,CH=[];for(Uh of YpQ)try{BU=u(Uh);break}catch(A){CH.push(A)}if(BU&&Uh.startsWith("@img/sharp-linux-x64")&&!BU._isUsingX64V2()){let A=Error("Prebuilt binaries for linux-x64 require v2 microarchitecture");A.code="Unsupported CPU",CH.push(A),BU=null}if(BU)s8A.exports=BU;else{let[A,Q,B]=["linux","darwin","win32"].map((C)=>dF.startsWith(C)),Y=[`Could not load the "sharp" module using the ${dF} runtime`];CH.forEach((C)=>{if(C.code!=="MODULE_NOT_FOUND")Y.push(`${C.code}: ${C.message}`)});let J=CH.map((C)=>C.message).join(" ");if(Y.push("Possible solutions:"),n8A()){let{found:C,expected:X}=n8A();Y.push("- Please upgrade Node.js:",` Found ${C}`,` Requires ${X}`)}else if(QpQ.includes(dF)){let[C,X]=dF.split("-"),G=C.endsWith("musl")?" --libc=musl":"";Y.push("- Ensure optional dependencies can be installed:"," npm install --include=optional sharp","- Ensure your package manager supports multi-platform installation:"," See https://sharp.pixelplumbing.com/install#cross-platform","- Add platform-specific dependencies:",` npm install --os=${C.replace("musl","")}${G} --cpu=${X} sharp`)}else Y.push(`- Manually install libvips >= ${BpQ}`,"- Add experimental WebAssembly-based dependencies:"," npm install --cpu=wasm32 sharp"," npm install @img/sharp-wasm32");if(A&&/(symbol not found|CXXABI_)/i.test(J))try{let{config:C}=u(`@img/sharp-libvips-${dF}/package`),X=`${tlQ()} ${elQ()}`,G=`${C.musl?"musl":"glibc"} ${C.musl||C.glibc}`;Y.push("- Update your OS:",` Found ${X}`,` Requires ${G}`)}catch(C){}if(A&&/\/snap\/core[0-9]{2}/.test(J))Y.push("- Remove the Node.js Snap, which does not support native modules"," snap remove node");if(Q&&/Incompatible library version/.test(J))Y.push("- Update Homebrew:"," brew update && brew upgrade vips");if(CH.some((C)=>C.code==="ERR_DLOPEN_DISABLED"))Y.push("- Run Node.js without using the --no-addons flag");if(B&&/The specified procedure could not be found/.test(J))Y.push("- Using the canvas package on Windows?"," See https://sharp.pixelplumbing.com/install#canvas-and-windows","- Check for outdated versions of sharp in the dependency tree:"," npm ls sharp");throw Y.push("- Consult the installation documentation:"," See https://sharp.pixelplumbing.com/install"),Error(Y.join(` +`))}});var a8A=R((T6Y,r8A)=>{var JpQ=u("node:util"),Eh=u("node:stream"),CpQ=g1();XH();var XpQ=JpQ.debuglog("sharp"),cF=function(A,Q){if(arguments.length===1&&!CpQ.defined(A))throw Error("Invalid input");if(!(this instanceof cF))return new cF(A,Q);return Eh.Duplex.call(this),this.options={topOffsetPre:-1,leftOffsetPre:-1,widthPre:-1,heightPre:-1,topOffsetPost:-1,leftOffsetPost:-1,widthPost:-1,heightPost:-1,width:-1,height:-1,canvas:"crop",position:0,resizeBackground:[0,0,0,255],angle:0,rotationAngle:0,rotationBackground:[0,0,0,255],rotateBeforePreExtract:!1,flip:!1,flop:!1,extendTop:0,extendBottom:0,extendLeft:0,extendRight:0,extendBackground:[0,0,0,255],extendWith:"background",withoutEnlargement:!1,withoutReduction:!1,affineMatrix:[],affineBackground:[0,0,0,255],affineIdx:0,affineIdy:0,affineOdx:0,affineOdy:0,affineInterpolator:this.constructor.interpolators.bilinear,kernel:"lanczos3",fastShrinkOnLoad:!0,tint:[-1,0,0,0],flatten:!1,flattenBackground:[0,0,0],unflatten:!1,negate:!1,negateAlpha:!0,medianSize:0,blurSigma:0,precision:"integer",minAmpl:0.2,sharpenSigma:0,sharpenM1:1,sharpenM2:2,sharpenX1:2,sharpenY2:10,sharpenY3:20,threshold:0,thresholdGrayscale:!0,trimBackground:[],trimThreshold:-1,trimLineArt:!1,dilateWidth:0,erodeWidth:0,gamma:0,gammaOut:0,greyscale:!1,normalise:!1,normaliseLower:1,normaliseUpper:99,claheWidth:0,claheHeight:0,claheMaxSlope:3,brightness:1,saturation:1,hue:0,lightness:0,booleanBufferIn:null,booleanFileIn:"",joinChannelIn:[],extractChannel:-1,removeAlpha:!1,ensureAlpha:-1,colourspace:"srgb",colourspacePipeline:"last",composite:[],fileOut:"",formatOut:"input",streamOut:!1,keepMetadata:0,withMetadataOrientation:-1,withMetadataDensity:0,withIccProfile:"",withExif:{},withExifMerge:!0,withXmp:"",resolveWithObject:!1,loop:-1,delay:[],jpegQuality:80,jpegProgressive:!1,jpegChromaSubsampling:"4:2:0",jpegTrellisQuantisation:!1,jpegOvershootDeringing:!1,jpegOptimiseScans:!1,jpegOptimiseCoding:!0,jpegQuantisationTable:0,pngProgressive:!1,pngCompressionLevel:6,pngAdaptiveFiltering:!1,pngPalette:!1,pngQuality:100,pngEffort:7,pngBitdepth:8,pngDither:1,jp2Quality:80,jp2TileHeight:512,jp2TileWidth:512,jp2Lossless:!1,jp2ChromaSubsampling:"4:4:4",webpQuality:80,webpAlphaQuality:100,webpLossless:!1,webpNearLossless:!1,webpSmartSubsample:!1,webpSmartDeblock:!1,webpPreset:"default",webpEffort:4,webpMinSize:!1,webpMixed:!1,gifBitdepth:8,gifEffort:7,gifDither:1,gifInterFrameMaxError:0,gifInterPaletteMaxError:3,gifKeepDuplicateFrames:!1,gifReuse:!0,gifProgressive:!1,tiffQuality:80,tiffCompression:"jpeg",tiffPredictor:"horizontal",tiffPyramid:!1,tiffMiniswhite:!1,tiffBitdepth:8,tiffTile:!1,tiffTileHeight:256,tiffTileWidth:256,tiffXres:1,tiffYres:1,tiffResolutionUnit:"inch",heifQuality:50,heifLossless:!1,heifCompression:"av1",heifEffort:4,heifChromaSubsampling:"4:4:4",heifBitdepth:8,jxlDistance:1,jxlDecodingTier:0,jxlEffort:7,jxlLossless:!1,rawDepth:"uchar",tileSize:256,tileOverlap:0,tileContainer:"fs",tileLayout:"dz",tileFormat:"last",tileDepth:"last",tileAngle:0,tileSkipBlanks:-1,tileBackground:[255,255,255,255],tileCentre:!1,tileId:"https://example.com/iiif",tileBasename:"",timeoutSeconds:0,linearA:[],linearB:[],pdfBackground:[255,255,255,255],debuglog:(B)=>{this.emit("warning",B),XpQ(B)},queueListener:function(B){cF.queue.emit("change",B)}},this.options.input=this._createInputDescriptor(A,Q,{allowStream:!0}),this};Object.setPrototypeOf(cF.prototype,Eh.Duplex.prototype);Object.setPrototypeOf(cF,Eh.Duplex);function GpQ(){let A=this.constructor.call(),{debuglog:Q,queueListener:B,...Y}=this.options;if(A.options=structuredClone(Y),A.options.debuglog=Q,A.options.queueListener=B,this._isStreamInput())this.on("finish",()=>{this._flattenBufferIn(),A.options.input.buffer=this.options.input.buffer,A.emit("finish")});return A}Object.assign(cF.prototype,{clone:GpQ});r8A.exports=cF});var e8A=R((S6Y,t8A)=>{var AA=g1(),F7=XH(),WpQ={left:"low",top:"low",low:"low",center:"centre",centre:"centre",right:"high",bottom:"high",high:"high"},FpQ=["failOn","limitInputPixels","unlimited","animated","autoOrient","density","ignoreIcc","page","pages","sequentialRead","jp2","openSlide","pdf","raw","svg","tiff","failOnError","openSlideLevel","pdfBackground","tiffSubifd"];function o8A(A){let Q=FpQ.filter((B)=>AA.defined(A[B])).map((B)=>[B,A[B]]);return Q.length?Object.fromEntries(Q):void 0}function ZpQ(A,Q,B){let Y={autoOrient:!1,failOn:"warning",limitInputPixels:Math.pow(16383,2),ignoreIcc:!1,unlimited:!1,sequentialRead:!0};if(AA.string(A))Y.file=A;else if(AA.buffer(A)){if(A.length===0)throw Error("Input Buffer is empty");Y.buffer=A}else if(AA.arrayBuffer(A)){if(A.byteLength===0)throw Error("Input bit Array is empty");Y.buffer=Buffer.from(A,0,A.byteLength)}else if(AA.typedArray(A)){if(A.length===0)throw Error("Input Bit Array is empty");Y.buffer=Buffer.from(A.buffer,A.byteOffset,A.byteLength)}else if(AA.plainObject(A)&&!AA.defined(Q)){if(Q=A,o8A(Q))Y.buffer=[]}else if(!AA.defined(A)&&!AA.defined(Q)&&AA.object(B)&&B.allowStream)Y.buffer=[];else if(Array.isArray(A))if(A.length>1)if(!this.options.joining)this.options.joining=!0,this.options.join=A.map((J)=>this._createInputDescriptor(J));else throw Error("Recursive join is unsupported");else throw Error("Expected at least two images to join");else throw Error(`Unsupported input '${A}' of type ${typeof A}${AA.defined(Q)?` when also providing options of type ${typeof Q}`:""}`);if(AA.object(Q)){if(AA.defined(Q.failOnError))if(AA.bool(Q.failOnError))Y.failOn=Q.failOnError?"warning":"none";else throw AA.invalidParameterError("failOnError","boolean",Q.failOnError);if(AA.defined(Q.failOn))if(AA.string(Q.failOn)&&AA.inArray(Q.failOn,["none","truncated","error","warning"]))Y.failOn=Q.failOn;else throw AA.invalidParameterError("failOn","one of: none, truncated, error, warning",Q.failOn);if(AA.defined(Q.autoOrient))if(AA.bool(Q.autoOrient))Y.autoOrient=Q.autoOrient;else throw AA.invalidParameterError("autoOrient","boolean",Q.autoOrient);if(AA.defined(Q.density))if(AA.inRange(Q.density,1,1e5))Y.density=Q.density;else throw AA.invalidParameterError("density","number between 1 and 100000",Q.density);if(AA.defined(Q.ignoreIcc))if(AA.bool(Q.ignoreIcc))Y.ignoreIcc=Q.ignoreIcc;else throw AA.invalidParameterError("ignoreIcc","boolean",Q.ignoreIcc);if(AA.defined(Q.limitInputPixels))if(AA.bool(Q.limitInputPixels))Y.limitInputPixels=Q.limitInputPixels?Math.pow(16383,2):0;else if(AA.integer(Q.limitInputPixels)&&AA.inRange(Q.limitInputPixels,0,Number.MAX_SAFE_INTEGER))Y.limitInputPixels=Q.limitInputPixels;else throw AA.invalidParameterError("limitInputPixels","positive integer",Q.limitInputPixels);if(AA.defined(Q.unlimited))if(AA.bool(Q.unlimited))Y.unlimited=Q.unlimited;else throw AA.invalidParameterError("unlimited","boolean",Q.unlimited);if(AA.defined(Q.sequentialRead))if(AA.bool(Q.sequentialRead))Y.sequentialRead=Q.sequentialRead;else throw AA.invalidParameterError("sequentialRead","boolean",Q.sequentialRead);if(AA.defined(Q.raw)){if(AA.object(Q.raw)&&AA.integer(Q.raw.width)&&Q.raw.width>0&&AA.integer(Q.raw.height)&&Q.raw.height>0&&AA.integer(Q.raw.channels)&&AA.inRange(Q.raw.channels,1,4))switch(Y.rawWidth=Q.raw.width,Y.rawHeight=Q.raw.height,Y.rawChannels=Q.raw.channels,A.constructor){case Uint8Array:case Uint8ClampedArray:Y.rawDepth="uchar";break;case Int8Array:Y.rawDepth="char";break;case Uint16Array:Y.rawDepth="ushort";break;case Int16Array:Y.rawDepth="short";break;case Uint32Array:Y.rawDepth="uint";break;case Int32Array:Y.rawDepth="int";break;case Float32Array:Y.rawDepth="float";break;case Float64Array:Y.rawDepth="double";break;default:Y.rawDepth="uchar";break}else throw Error("Expected width, height and channels for raw pixel input");if(Y.rawPremultiplied=!1,AA.defined(Q.raw.premultiplied))if(AA.bool(Q.raw.premultiplied))Y.rawPremultiplied=Q.raw.premultiplied;else throw AA.invalidParameterError("raw.premultiplied","boolean",Q.raw.premultiplied);if(Y.rawPageHeight=0,AA.defined(Q.raw.pageHeight))if(AA.integer(Q.raw.pageHeight)&&Q.raw.pageHeight>0&&Q.raw.pageHeight<=Q.raw.height){if(Q.raw.height%Q.raw.pageHeight!==0)throw Error(`Expected raw.height ${Q.raw.height} to be a multiple of raw.pageHeight ${Q.raw.pageHeight}`);Y.rawPageHeight=Q.raw.pageHeight}else throw AA.invalidParameterError("raw.pageHeight","positive integer",Q.raw.pageHeight)}if(AA.defined(Q.animated))if(AA.bool(Q.animated))Y.pages=Q.animated?-1:1;else throw AA.invalidParameterError("animated","boolean",Q.animated);if(AA.defined(Q.pages))if(AA.integer(Q.pages)&&AA.inRange(Q.pages,-1,1e5))Y.pages=Q.pages;else throw AA.invalidParameterError("pages","integer between -1 and 100000",Q.pages);if(AA.defined(Q.page))if(AA.integer(Q.page)&&AA.inRange(Q.page,0,1e5))Y.page=Q.page;else throw AA.invalidParameterError("page","integer between 0 and 100000",Q.page);if(AA.object(Q.openSlide)&&AA.defined(Q.openSlide.level))if(AA.integer(Q.openSlide.level)&&AA.inRange(Q.openSlide.level,0,256))Y.openSlideLevel=Q.openSlide.level;else throw AA.invalidParameterError("openSlide.level","integer between 0 and 256",Q.openSlide.level);else if(AA.defined(Q.level))if(AA.integer(Q.level)&&AA.inRange(Q.level,0,256))Y.openSlideLevel=Q.level;else throw AA.invalidParameterError("level","integer between 0 and 256",Q.level);if(AA.object(Q.tiff)&&AA.defined(Q.tiff.subifd))if(AA.integer(Q.tiff.subifd)&&AA.inRange(Q.tiff.subifd,-1,1e5))Y.tiffSubifd=Q.tiff.subifd;else throw AA.invalidParameterError("tiff.subifd","integer between -1 and 100000",Q.tiff.subifd);else if(AA.defined(Q.subifd))if(AA.integer(Q.subifd)&&AA.inRange(Q.subifd,-1,1e5))Y.tiffSubifd=Q.subifd;else throw AA.invalidParameterError("subifd","integer between -1 and 100000",Q.subifd);if(AA.object(Q.svg)){if(AA.defined(Q.svg.stylesheet))if(AA.string(Q.svg.stylesheet))Y.svgStylesheet=Q.svg.stylesheet;else throw AA.invalidParameterError("svg.stylesheet","string",Q.svg.stylesheet);if(AA.defined(Q.svg.highBitdepth))if(AA.bool(Q.svg.highBitdepth))Y.svgHighBitdepth=Q.svg.highBitdepth;else throw AA.invalidParameterError("svg.highBitdepth","boolean",Q.svg.highBitdepth)}if(AA.object(Q.pdf)&&AA.defined(Q.pdf.background))Y.pdfBackground=this._getBackgroundColourOption(Q.pdf.background);else if(AA.defined(Q.pdfBackground))Y.pdfBackground=this._getBackgroundColourOption(Q.pdfBackground);if(AA.object(Q.jp2)&&AA.defined(Q.jp2.oneshot))if(AA.bool(Q.jp2.oneshot))Y.jp2Oneshot=Q.jp2.oneshot;else throw AA.invalidParameterError("jp2.oneshot","boolean",Q.jp2.oneshot);if(AA.defined(Q.create))if(AA.object(Q.create)&&AA.integer(Q.create.width)&&Q.create.width>0&&AA.integer(Q.create.height)&&Q.create.height>0&&AA.integer(Q.create.channels)){if(Y.createWidth=Q.create.width,Y.createHeight=Q.create.height,Y.createChannels=Q.create.channels,Y.createPageHeight=0,AA.defined(Q.create.pageHeight))if(AA.integer(Q.create.pageHeight)&&Q.create.pageHeight>0&&Q.create.pageHeight<=Q.create.height){if(Q.create.height%Q.create.pageHeight!==0)throw Error(`Expected create.height ${Q.create.height} to be a multiple of create.pageHeight ${Q.create.pageHeight}`);Y.createPageHeight=Q.create.pageHeight}else throw AA.invalidParameterError("create.pageHeight","positive integer",Q.create.pageHeight);if(AA.defined(Q.create.noise)){if(!AA.object(Q.create.noise))throw Error("Expected noise to be an object");if(Q.create.noise.type!=="gaussian")throw Error("Only gaussian noise is supported at the moment");if(Y.createNoiseType=Q.create.noise.type,!AA.inRange(Q.create.channels,1,4))throw AA.invalidParameterError("create.channels","number between 1 and 4",Q.create.channels);if(Y.createNoiseMean=128,AA.defined(Q.create.noise.mean))if(AA.number(Q.create.noise.mean)&&AA.inRange(Q.create.noise.mean,0,1e4))Y.createNoiseMean=Q.create.noise.mean;else throw AA.invalidParameterError("create.noise.mean","number between 0 and 10000",Q.create.noise.mean);if(Y.createNoiseSigma=30,AA.defined(Q.create.noise.sigma))if(AA.number(Q.create.noise.sigma)&&AA.inRange(Q.create.noise.sigma,0,1e4))Y.createNoiseSigma=Q.create.noise.sigma;else throw AA.invalidParameterError("create.noise.sigma","number between 0 and 10000",Q.create.noise.sigma)}else if(AA.defined(Q.create.background)){if(!AA.inRange(Q.create.channels,3,4))throw AA.invalidParameterError("create.channels","number between 3 and 4",Q.create.channels);Y.createBackground=this._getBackgroundColourOption(Q.create.background)}else throw Error("Expected valid noise or background to create a new input image");delete Y.buffer}else throw Error("Expected valid width, height and channels to create a new input image");if(AA.defined(Q.text))if(AA.object(Q.text)&&AA.string(Q.text.text)){if(Y.textValue=Q.text.text,AA.defined(Q.text.height)&&AA.defined(Q.text.dpi))throw Error("Expected only one of dpi or height");if(AA.defined(Q.text.font))if(AA.string(Q.text.font))Y.textFont=Q.text.font;else throw AA.invalidParameterError("text.font","string",Q.text.font);if(AA.defined(Q.text.fontfile))if(AA.string(Q.text.fontfile))Y.textFontfile=Q.text.fontfile;else throw AA.invalidParameterError("text.fontfile","string",Q.text.fontfile);if(AA.defined(Q.text.width))if(AA.integer(Q.text.width)&&Q.text.width>0)Y.textWidth=Q.text.width;else throw AA.invalidParameterError("text.width","positive integer",Q.text.width);if(AA.defined(Q.text.height))if(AA.integer(Q.text.height)&&Q.text.height>0)Y.textHeight=Q.text.height;else throw AA.invalidParameterError("text.height","positive integer",Q.text.height);if(AA.defined(Q.text.align))if(AA.string(Q.text.align)&&AA.string(this.constructor.align[Q.text.align]))Y.textAlign=this.constructor.align[Q.text.align];else throw AA.invalidParameterError("text.align","valid alignment",Q.text.align);if(AA.defined(Q.text.justify))if(AA.bool(Q.text.justify))Y.textJustify=Q.text.justify;else throw AA.invalidParameterError("text.justify","boolean",Q.text.justify);if(AA.defined(Q.text.dpi))if(AA.integer(Q.text.dpi)&&AA.inRange(Q.text.dpi,1,1e6))Y.textDpi=Q.text.dpi;else throw AA.invalidParameterError("text.dpi","integer between 1 and 1000000",Q.text.dpi);if(AA.defined(Q.text.rgba))if(AA.bool(Q.text.rgba))Y.textRgba=Q.text.rgba;else throw AA.invalidParameterError("text.rgba","bool",Q.text.rgba);if(AA.defined(Q.text.spacing))if(AA.integer(Q.text.spacing)&&AA.inRange(Q.text.spacing,-1e6,1e6))Y.textSpacing=Q.text.spacing;else throw AA.invalidParameterError("text.spacing","integer between -1000000 and 1000000",Q.text.spacing);if(AA.defined(Q.text.wrap))if(AA.string(Q.text.wrap)&&AA.inArray(Q.text.wrap,["word","char","word-char","none"]))Y.textWrap=Q.text.wrap;else throw AA.invalidParameterError("text.wrap","one of: word, char, word-char, none",Q.text.wrap);delete Y.buffer}else throw Error("Expected a valid string to create an image with text.");if(AA.defined(Q.join))if(AA.defined(this.options.join)){if(AA.defined(Q.join.animated))if(AA.bool(Q.join.animated))Y.joinAnimated=Q.join.animated;else throw AA.invalidParameterError("join.animated","boolean",Q.join.animated);if(AA.defined(Q.join.across))if(AA.integer(Q.join.across)&&AA.inRange(Q.join.across,1,1e6))Y.joinAcross=Q.join.across;else throw AA.invalidParameterError("join.across","integer between 1 and 100000",Q.join.across);if(AA.defined(Q.join.shim))if(AA.integer(Q.join.shim)&&AA.inRange(Q.join.shim,0,1e6))Y.joinShim=Q.join.shim;else throw AA.invalidParameterError("join.shim","integer between 0 and 100000",Q.join.shim);if(AA.defined(Q.join.background))Y.joinBackground=this._getBackgroundColourOption(Q.join.background);if(AA.defined(Q.join.halign))if(AA.string(Q.join.halign)&&AA.string(this.constructor.align[Q.join.halign]))Y.joinHalign=this.constructor.align[Q.join.halign];else throw AA.invalidParameterError("join.halign","valid alignment",Q.join.halign);if(AA.defined(Q.join.valign))if(AA.string(Q.join.valign)&&AA.string(this.constructor.align[Q.join.valign]))Y.joinValign=this.constructor.align[Q.join.valign];else throw AA.invalidParameterError("join.valign","valid alignment",Q.join.valign)}else throw Error("Expected input to be an array of images to join")}else if(AA.defined(Q))throw Error("Invalid input options "+Q);return Y}function $pQ(A,Q,B){if(Array.isArray(this.options.input.buffer))if(AA.buffer(A)){if(this.options.input.buffer.length===0)this.on("finish",()=>{this.streamInFinished=!0});this.options.input.buffer.push(A),B()}else B(Error("Non-Buffer data on Writable Stream"));else B(Error("Unexpected data on Writable Stream"))}function UpQ(){if(this._isStreamInput())this.options.input.buffer=Buffer.concat(this.options.input.buffer)}function EpQ(){return Array.isArray(this.options.input.buffer)}function KpQ(A){let Q=Error();if(AA.fn(A)){if(this._isStreamInput())this.on("finish",()=>{this._flattenBufferIn(),F7.metadata(this.options,(B,Y)=>{if(B)A(AA.nativeError(B,Q));else A(null,Y)})});else F7.metadata(this.options,(B,Y)=>{if(B)A(AA.nativeError(B,Q));else A(null,Y)});return this}else if(this._isStreamInput())return new Promise((B,Y)=>{let J=()=>{this._flattenBufferIn(),F7.metadata(this.options,(C,X)=>{if(C)Y(AA.nativeError(C,Q));else B(X)})};if(this.writableFinished)J();else this.once("finish",J)});else return new Promise((B,Y)=>{F7.metadata(this.options,(J,C)=>{if(J)Y(AA.nativeError(J,Q));else B(C)})})}function VpQ(A){let Q=Error();if(AA.fn(A)){if(this._isStreamInput())this.on("finish",()=>{this._flattenBufferIn(),F7.stats(this.options,(B,Y)=>{if(B)A(AA.nativeError(B,Q));else A(null,Y)})});else F7.stats(this.options,(B,Y)=>{if(B)A(AA.nativeError(B,Q));else A(null,Y)});return this}else if(this._isStreamInput())return new Promise((B,Y)=>{this.on("finish",function(){this._flattenBufferIn(),F7.stats(this.options,(J,C)=>{if(J)Y(AA.nativeError(J,Q));else B(C)})})});else return new Promise((B,Y)=>{F7.stats(this.options,(J,C)=>{if(J)Y(AA.nativeError(J,Q));else B(C)})})}t8A.exports=function(A){Object.assign(A.prototype,{_inputOptionsFromObject:o8A,_createInputDescriptor:ZpQ,_write:$pQ,_flattenBufferIn:UpQ,_isStreamInput:EpQ,metadata:KpQ,stats:VpQ}),A.align=WpQ}});var C5A=R((k6Y,J5A)=>{var XQ=g1(),Q5A={center:0,centre:0,north:1,east:2,south:3,west:4,northeast:5,southeast:6,southwest:7,northwest:8},B5A={top:1,right:2,bottom:3,left:4,"right top":5,"right bottom":6,"left bottom":7,"left top":8},A5A={background:"background",copy:"copy",repeat:"repeat",mirror:"mirror"},Y5A={entropy:16,attention:17},Kh={nearest:"nearest",linear:"linear",cubic:"cubic",mitchell:"mitchell",lanczos2:"lanczos2",lanczos3:"lanczos3",mks2013:"mks2013",mks2021:"mks2021"},IpQ={contain:"contain",cover:"cover",fill:"fill",inside:"inside",outside:"outside"},HpQ={contain:"embed",cover:"crop",fill:"ignore_aspect",inside:"max",outside:"min"};function Vh(A){return A.angle%360!==0||A.input.autoOrient===!0||A.rotationAngle!==0}function R3(A){return A.width!==-1||A.height!==-1}function DpQ(A,Q,B){if(R3(this.options))this.options.debuglog("ignoring previous resize options");if(this.options.widthPost!==-1)this.options.debuglog("operation order will be: extract, resize, extract");if(XQ.defined(A))if(XQ.object(A)&&!XQ.defined(B))B=A;else if(XQ.integer(A)&&A>0)this.options.width=A;else throw XQ.invalidParameterError("width","positive integer",A);else this.options.width=-1;if(XQ.defined(Q))if(XQ.integer(Q)&&Q>0)this.options.height=Q;else throw XQ.invalidParameterError("height","positive integer",Q);else this.options.height=-1;if(XQ.object(B)){if(XQ.defined(B.width))if(XQ.integer(B.width)&&B.width>0)this.options.width=B.width;else throw XQ.invalidParameterError("width","positive integer",B.width);if(XQ.defined(B.height))if(XQ.integer(B.height)&&B.height>0)this.options.height=B.height;else throw XQ.invalidParameterError("height","positive integer",B.height);if(XQ.defined(B.fit)){let Y=HpQ[B.fit];if(XQ.string(Y))this.options.canvas=Y;else throw XQ.invalidParameterError("fit","valid fit",B.fit)}if(XQ.defined(B.position)){let Y=XQ.integer(B.position)?B.position:Y5A[B.position]||B5A[B.position]||Q5A[B.position];if(XQ.integer(Y)&&(XQ.inRange(Y,0,8)||XQ.inRange(Y,16,17)))this.options.position=Y;else throw XQ.invalidParameterError("position","valid position/gravity/strategy",B.position)}if(this._setBackgroundColourOption("resizeBackground",B.background),XQ.defined(B.kernel))if(XQ.string(Kh[B.kernel]))this.options.kernel=Kh[B.kernel];else throw XQ.invalidParameterError("kernel","valid kernel name",B.kernel);if(XQ.defined(B.withoutEnlargement))this._setBooleanOption("withoutEnlargement",B.withoutEnlargement);if(XQ.defined(B.withoutReduction))this._setBooleanOption("withoutReduction",B.withoutReduction);if(XQ.defined(B.fastShrinkOnLoad))this._setBooleanOption("fastShrinkOnLoad",B.fastShrinkOnLoad)}if(Vh(this.options)&&R3(this.options))this.options.rotateBeforePreExtract=!0;return this}function NpQ(A){if(XQ.integer(A)&&A>0)this.options.extendTop=A,this.options.extendBottom=A,this.options.extendLeft=A,this.options.extendRight=A;else if(XQ.object(A)){if(XQ.defined(A.top))if(XQ.integer(A.top)&&A.top>=0)this.options.extendTop=A.top;else throw XQ.invalidParameterError("top","positive integer",A.top);if(XQ.defined(A.bottom))if(XQ.integer(A.bottom)&&A.bottom>=0)this.options.extendBottom=A.bottom;else throw XQ.invalidParameterError("bottom","positive integer",A.bottom);if(XQ.defined(A.left))if(XQ.integer(A.left)&&A.left>=0)this.options.extendLeft=A.left;else throw XQ.invalidParameterError("left","positive integer",A.left);if(XQ.defined(A.right))if(XQ.integer(A.right)&&A.right>=0)this.options.extendRight=A.right;else throw XQ.invalidParameterError("right","positive integer",A.right);if(this._setBackgroundColourOption("extendBackground",A.background),XQ.defined(A.extendWith))if(XQ.string(A5A[A.extendWith]))this.options.extendWith=A5A[A.extendWith];else throw XQ.invalidParameterError("extendWith","one of: background, copy, repeat, mirror",A.extendWith)}else throw XQ.invalidParameterError("extend","integer or object",A);return this}function LpQ(A){let Q=R3(this.options)||this.options.widthPre!==-1?"Post":"Pre";if(this.options[`width${Q}`]!==-1)this.options.debuglog("ignoring previous extract options");if(["left","top","width","height"].forEach(function(B){let Y=A[B];if(XQ.integer(Y)&&Y>=0)this.options[B+(B==="left"||B==="top"?"Offset":"")+Q]=Y;else throw XQ.invalidParameterError(B,"integer",Y)},this),Vh(this.options)&&!R3(this.options)){if(this.options.widthPre===-1||this.options.widthPost===-1)this.options.rotateBeforePreExtract=!0}return this}function qpQ(A){if(this.options.trimThreshold=10,XQ.defined(A))if(XQ.object(A)){if(XQ.defined(A.background))this._setBackgroundColourOption("trimBackground",A.background);if(XQ.defined(A.threshold))if(XQ.number(A.threshold)&&A.threshold>=0)this.options.trimThreshold=A.threshold;else throw XQ.invalidParameterError("threshold","positive number",A.threshold);if(XQ.defined(A.lineArt))this._setBooleanOption("trimLineArt",A.lineArt)}else throw XQ.invalidParameterError("trim","object",A);if(Vh(this.options))this.options.rotateBeforePreExtract=!0;return this}J5A.exports=function(A){Object.assign(A.prototype,{resize:DpQ,extend:NpQ,extract:LpQ,trim:qpQ}),A.gravity=Q5A,A.strategy=Y5A,A.kernel=Kh,A.fit=IpQ,A.position=B5A}});var G5A=R((_6Y,X5A)=>{var nB=g1(),Ih={clear:"clear",source:"source",over:"over",in:"in",out:"out",atop:"atop",dest:"dest","dest-over":"dest-over","dest-in":"dest-in","dest-out":"dest-out","dest-atop":"dest-atop",xor:"xor",add:"add",saturate:"saturate",multiply:"multiply",screen:"screen",overlay:"overlay",darken:"darken",lighten:"lighten","colour-dodge":"colour-dodge","color-dodge":"colour-dodge","colour-burn":"colour-burn","color-burn":"colour-burn","hard-light":"hard-light","soft-light":"soft-light",difference:"difference",exclusion:"exclusion"};function MpQ(A){if(!Array.isArray(A))throw nB.invalidParameterError("images to composite","array",A);return this.options.composite=A.map((Q)=>{if(!nB.object(Q))throw nB.invalidParameterError("image to composite","object",Q);let B=this._inputOptionsFromObject(Q),Y={input:this._createInputDescriptor(Q.input,B,{allowStream:!1}),blend:"over",tile:!1,left:0,top:0,hasOffset:!1,gravity:0,premultiplied:!1};if(nB.defined(Q.blend))if(nB.string(Ih[Q.blend]))Y.blend=Ih[Q.blend];else throw nB.invalidParameterError("blend","valid blend name",Q.blend);if(nB.defined(Q.tile))if(nB.bool(Q.tile))Y.tile=Q.tile;else throw nB.invalidParameterError("tile","boolean",Q.tile);if(nB.defined(Q.left))if(nB.integer(Q.left))Y.left=Q.left;else throw nB.invalidParameterError("left","integer",Q.left);if(nB.defined(Q.top))if(nB.integer(Q.top))Y.top=Q.top;else throw nB.invalidParameterError("top","integer",Q.top);if(nB.defined(Q.top)!==nB.defined(Q.left))throw Error("Expected both left and top to be set");else Y.hasOffset=nB.integer(Q.top)&&nB.integer(Q.left);if(nB.defined(Q.gravity))if(nB.integer(Q.gravity)&&nB.inRange(Q.gravity,0,8))Y.gravity=Q.gravity;else if(nB.string(Q.gravity)&&nB.integer(this.constructor.gravity[Q.gravity]))Y.gravity=this.constructor.gravity[Q.gravity];else throw nB.invalidParameterError("gravity","valid gravity",Q.gravity);if(nB.defined(Q.premultiplied))if(nB.bool(Q.premultiplied))Y.premultiplied=Q.premultiplied;else throw nB.invalidParameterError("premultiplied","boolean",Q.premultiplied);return Y}),this}X5A.exports=function(A){A.prototype.composite=MpQ,A.blend=Ih}});var U5A=R((v6Y,$5A)=>{var WA=g1(),W5A={integer:"integer",float:"float",approximate:"approximate"};function zpQ(A,Q){if(!WA.defined(A))return this.autoOrient();if(this.options.angle||this.options.rotationAngle)this.options.debuglog("ignoring previous rotate options"),this.options.angle=0,this.options.rotationAngle=0;if(WA.integer(A)&&!(A%90))this.options.angle=A;else if(WA.number(A)){if(this.options.rotationAngle=A,WA.object(Q)&&Q.background)this._setBackgroundColourOption("rotationBackground",Q.background)}else throw WA.invalidParameterError("angle","numeric",A);return this}function RpQ(){return this.options.input.autoOrient=!0,this}function wpQ(A){return this.options.flip=WA.bool(A)?A:!0,this}function jpQ(A){return this.options.flop=WA.bool(A)?A:!0,this}function OpQ(A,Q){let B=[].concat(...A);if(B.length===4&&B.every(WA.number))this.options.affineMatrix=B;else throw WA.invalidParameterError("matrix","1x4 or 2x2 array",A);if(WA.defined(Q))if(WA.object(Q)){if(this._setBackgroundColourOption("affineBackground",Q.background),WA.defined(Q.idx))if(WA.number(Q.idx))this.options.affineIdx=Q.idx;else throw WA.invalidParameterError("options.idx","number",Q.idx);if(WA.defined(Q.idy))if(WA.number(Q.idy))this.options.affineIdy=Q.idy;else throw WA.invalidParameterError("options.idy","number",Q.idy);if(WA.defined(Q.odx))if(WA.number(Q.odx))this.options.affineOdx=Q.odx;else throw WA.invalidParameterError("options.odx","number",Q.odx);if(WA.defined(Q.ody))if(WA.number(Q.ody))this.options.affineOdy=Q.ody;else throw WA.invalidParameterError("options.ody","number",Q.ody);if(WA.defined(Q.interpolator))if(WA.inArray(Q.interpolator,Object.values(this.constructor.interpolators)))this.options.affineInterpolator=Q.interpolator;else throw WA.invalidParameterError("options.interpolator","valid interpolator name",Q.interpolator)}else throw WA.invalidParameterError("options","object",Q);return this}function PpQ(A,Q,B){if(!WA.defined(A))this.options.sharpenSigma=-1;else if(WA.bool(A))this.options.sharpenSigma=A?-1:0;else if(WA.number(A)&&WA.inRange(A,0.01,1e4)){if(this.options.sharpenSigma=A,WA.defined(Q))if(WA.number(Q)&&WA.inRange(Q,0,1e4))this.options.sharpenM1=Q;else throw WA.invalidParameterError("flat","number between 0 and 10000",Q);if(WA.defined(B))if(WA.number(B)&&WA.inRange(B,0,1e4))this.options.sharpenM2=B;else throw WA.invalidParameterError("jagged","number between 0 and 10000",B)}else if(WA.plainObject(A)){if(WA.number(A.sigma)&&WA.inRange(A.sigma,0.000001,10))this.options.sharpenSigma=A.sigma;else throw WA.invalidParameterError("options.sigma","number between 0.000001 and 10",A.sigma);if(WA.defined(A.m1))if(WA.number(A.m1)&&WA.inRange(A.m1,0,1e6))this.options.sharpenM1=A.m1;else throw WA.invalidParameterError("options.m1","number between 0 and 1000000",A.m1);if(WA.defined(A.m2))if(WA.number(A.m2)&&WA.inRange(A.m2,0,1e6))this.options.sharpenM2=A.m2;else throw WA.invalidParameterError("options.m2","number between 0 and 1000000",A.m2);if(WA.defined(A.x1))if(WA.number(A.x1)&&WA.inRange(A.x1,0,1e6))this.options.sharpenX1=A.x1;else throw WA.invalidParameterError("options.x1","number between 0 and 1000000",A.x1);if(WA.defined(A.y2))if(WA.number(A.y2)&&WA.inRange(A.y2,0,1e6))this.options.sharpenY2=A.y2;else throw WA.invalidParameterError("options.y2","number between 0 and 1000000",A.y2);if(WA.defined(A.y3))if(WA.number(A.y3)&&WA.inRange(A.y3,0,1e6))this.options.sharpenY3=A.y3;else throw WA.invalidParameterError("options.y3","number between 0 and 1000000",A.y3)}else throw WA.invalidParameterError("sigma","number between 0.01 and 10000",A);return this}function TpQ(A){if(!WA.defined(A))this.options.medianSize=3;else if(WA.integer(A)&&WA.inRange(A,1,1000))this.options.medianSize=A;else throw WA.invalidParameterError("size","integer between 1 and 1000",A);return this}function SpQ(A){let Q;if(WA.number(A))Q=A;else if(WA.plainObject(A)){if(!WA.number(A.sigma))throw WA.invalidParameterError("options.sigma","number between 0.3 and 1000",Q);if(Q=A.sigma,"precision"in A)if(WA.string(W5A[A.precision]))this.options.precision=W5A[A.precision];else throw WA.invalidParameterError("precision","one of: integer, float, approximate",A.precision);if("minAmplitude"in A)if(WA.number(A.minAmplitude)&&WA.inRange(A.minAmplitude,0.001,1))this.options.minAmpl=A.minAmplitude;else throw WA.invalidParameterError("minAmplitude","number between 0.001 and 1",A.minAmplitude)}if(!WA.defined(A))this.options.blurSigma=-1;else if(WA.bool(A))this.options.blurSigma=A?-1:0;else if(WA.number(Q)&&WA.inRange(Q,0.3,1000))this.options.blurSigma=Q;else throw WA.invalidParameterError("sigma","number between 0.3 and 1000",Q);return this}function F5A(A){if(!WA.defined(A))this.options.dilateWidth=1;else if(WA.integer(A)&&A>0)this.options.dilateWidth=A;else throw WA.invalidParameterError("dilate","positive integer",F5A);return this}function Z5A(A){if(!WA.defined(A))this.options.erodeWidth=1;else if(WA.integer(A)&&A>0)this.options.erodeWidth=A;else throw WA.invalidParameterError("erode","positive integer",Z5A);return this}function kpQ(A){if(this.options.flatten=WA.bool(A)?A:!0,WA.object(A))this._setBackgroundColourOption("flattenBackground",A.background);return this}function _pQ(){return this.options.unflatten=!0,this}function vpQ(A,Q){if(!WA.defined(A))this.options.gamma=2.2;else if(WA.number(A)&&WA.inRange(A,1,3))this.options.gamma=A;else throw WA.invalidParameterError("gamma","number between 1.0 and 3.0",A);if(!WA.defined(Q))this.options.gammaOut=this.options.gamma;else if(WA.number(Q)&&WA.inRange(Q,1,3))this.options.gammaOut=Q;else throw WA.invalidParameterError("gammaOut","number between 1.0 and 3.0",Q);return this}function ypQ(A){if(this.options.negate=WA.bool(A)?A:!0,WA.plainObject(A)&&"alpha"in A)if(!WA.bool(A.alpha))throw WA.invalidParameterError("alpha","should be boolean value",A.alpha);else this.options.negateAlpha=A.alpha;return this}function gpQ(A){if(WA.plainObject(A)){if(WA.defined(A.lower))if(WA.number(A.lower)&&WA.inRange(A.lower,0,99))this.options.normaliseLower=A.lower;else throw WA.invalidParameterError("lower","number between 0 and 99",A.lower);if(WA.defined(A.upper))if(WA.number(A.upper)&&WA.inRange(A.upper,1,100))this.options.normaliseUpper=A.upper;else throw WA.invalidParameterError("upper","number between 1 and 100",A.upper)}if(this.options.normaliseLower>=this.options.normaliseUpper)throw WA.invalidParameterError("range","lower to be less than upper",`${this.options.normaliseLower} >= ${this.options.normaliseUpper}`);return this.options.normalise=!0,this}function hpQ(A){return this.normalise(A)}function xpQ(A){if(WA.plainObject(A)){if(WA.integer(A.width)&&A.width>0)this.options.claheWidth=A.width;else throw WA.invalidParameterError("width","integer greater than zero",A.width);if(WA.integer(A.height)&&A.height>0)this.options.claheHeight=A.height;else throw WA.invalidParameterError("height","integer greater than zero",A.height);if(WA.defined(A.maxSlope))if(WA.integer(A.maxSlope)&&WA.inRange(A.maxSlope,0,100))this.options.claheMaxSlope=A.maxSlope;else throw WA.invalidParameterError("maxSlope","integer between 0 and 100",A.maxSlope)}else throw WA.invalidParameterError("options","plain object",A);return this}function fpQ(A){if(!WA.object(A)||!Array.isArray(A.kernel)||!WA.integer(A.width)||!WA.integer(A.height)||!WA.inRange(A.width,3,1001)||!WA.inRange(A.height,3,1001)||A.height*A.width!==A.kernel.length)throw Error("Invalid convolution kernel");if(!WA.integer(A.scale))A.scale=A.kernel.reduce(function(Q,B){return Q+B},0);if(A.scale<1)A.scale=1;if(!WA.integer(A.offset))A.offset=0;return this.options.convKernel=A,this}function bpQ(A,Q){if(!WA.defined(A))this.options.threshold=128;else if(WA.bool(A))this.options.threshold=A?128:0;else if(WA.integer(A)&&WA.inRange(A,0,255))this.options.threshold=A;else throw WA.invalidParameterError("threshold","integer between 0 and 255",A);if(!WA.object(Q)||Q.greyscale===!0||Q.grayscale===!0)this.options.thresholdGrayscale=!0;else this.options.thresholdGrayscale=!1;return this}function mpQ(A,Q,B){if(this.options.boolean=this._createInputDescriptor(A,B),WA.string(Q)&&WA.inArray(Q,["and","or","eor"]))this.options.booleanOp=Q;else throw WA.invalidParameterError("operator","one of: and, or, eor",Q);return this}function upQ(A,Q){if(!WA.defined(A)&&WA.number(Q))A=1;else if(WA.number(A)&&!WA.defined(Q))Q=0;if(!WA.defined(A))this.options.linearA=[];else if(WA.number(A))this.options.linearA=[A];else if(Array.isArray(A)&&A.length&&A.every(WA.number))this.options.linearA=A;else throw WA.invalidParameterError("a","number or array of numbers",A);if(!WA.defined(Q))this.options.linearB=[];else if(WA.number(Q))this.options.linearB=[Q];else if(Array.isArray(Q)&&Q.length&&Q.every(WA.number))this.options.linearB=Q;else throw WA.invalidParameterError("b","number or array of numbers",Q);if(this.options.linearA.length!==this.options.linearB.length)throw Error("Expected a and b to be arrays of the same length");return this}function dpQ(A){if(!Array.isArray(A))throw WA.invalidParameterError("inputMatrix","array",A);if(A.length!==3&&A.length!==4)throw WA.invalidParameterError("inputMatrix","3x3 or 4x4 array",A.length);let Q=A.flat().map(Number);if(Q.length!==9&&Q.length!==16)throw WA.invalidParameterError("inputMatrix","cardinality of 9 or 16",Q.length);return this.options.recombMatrix=Q,this}function cpQ(A){if(!WA.plainObject(A))throw WA.invalidParameterError("options","plain object",A);if("brightness"in A)if(WA.number(A.brightness)&&A.brightness>=0)this.options.brightness=A.brightness;else throw WA.invalidParameterError("brightness","number above zero",A.brightness);if("saturation"in A)if(WA.number(A.saturation)&&A.saturation>=0)this.options.saturation=A.saturation;else throw WA.invalidParameterError("saturation","number above zero",A.saturation);if("hue"in A)if(WA.integer(A.hue))this.options.hue=A.hue%360;else throw WA.invalidParameterError("hue","number",A.hue);if("lightness"in A)if(WA.number(A.lightness))this.options.lightness=A.lightness;else throw WA.invalidParameterError("lightness","number",A.lightness);return this}$5A.exports=function(A){Object.assign(A.prototype,{autoOrient:RpQ,rotate:zpQ,flip:wpQ,flop:jpQ,affine:OpQ,sharpen:PpQ,erode:Z5A,dilate:F5A,median:TpQ,blur:SpQ,flatten:kpQ,unflatten:_pQ,gamma:vpQ,negate:ypQ,normalise:gpQ,normalize:hpQ,clahe:xpQ,convolve:fpQ,threshold:bpQ,boolean:mpQ,linear:upQ,recomb:dpQ,modulate:cpQ})}});var Hh=R((y6Y,E5A)=>{E5A.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}});var V5A=R((g6Y,K5A)=>{K5A.exports=function(Q){if(!Q||typeof Q==="string")return!1;return Q instanceof Array||Array.isArray(Q)||Q.length>=0&&(Q.splice instanceof Function||Object.getOwnPropertyDescriptor(Q,Q.length-1)&&Q.constructor.name!=="String")}});var D5A=R((h6Y,H5A)=>{var lpQ=V5A(),ppQ=Array.prototype.concat,ipQ=Array.prototype.slice,I5A=H5A.exports=function(Q){var B=[];for(var Y=0,J=Q.length;Y{var WH=Hh(),FH=D5A(),N5A=Object.hasOwnProperty,L5A=Object.create(null);for(GH in WH)if(N5A.call(WH,GH))L5A[WH[GH]]=GH;var GH,$8=q5A.exports={to:{},get:{}};$8.get=function(A){var Q=A.substring(0,3).toLowerCase(),B,Y;switch(Q){case"hsl":B=$8.get.hsl(A),Y="hsl";break;case"hwb":B=$8.get.hwb(A),Y="hwb";break;default:B=$8.get.rgb(A),Y="rgb";break}if(!B)return null;return{model:Y,value:B}};$8.get.rgb=function(A){if(!A)return null;var Q=/^#([a-f0-9]{3,4})$/i,B=/^#([a-f0-9]{6})([a-f0-9]{2})?$/i,Y=/^rgba?\(\s*([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/,J=/^rgba?\(\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/,C=/^(\w+)$/,X=[0,0,0,1],G,W,F;if(G=A.match(B)){F=G[2],G=G[1];for(W=0;W<3;W++){var Z=W*2;X[W]=parseInt(G.slice(Z,Z+2),16)}if(F)X[3]=parseInt(F,16)/255}else if(G=A.match(Q)){G=G[1],F=G[3];for(W=0;W<3;W++)X[W]=parseInt(G[W]+G[W],16);if(F)X[3]=parseInt(F+F,16)/255}else if(G=A.match(Y)){for(W=0;W<3;W++)X[W]=parseInt(G[W+1],0);if(G[4])if(G[5])X[3]=parseFloat(G[4])*0.01;else X[3]=parseFloat(G[4])}else if(G=A.match(J)){for(W=0;W<3;W++)X[W]=Math.round(parseFloat(G[W+1])*2.55);if(G[4])if(G[5])X[3]=parseFloat(G[4])*0.01;else X[3]=parseFloat(G[4])}else if(G=A.match(C)){if(G[1]==="transparent")return[0,0,0,0];if(!N5A.call(WH,G[1]))return null;return X=WH[G[1]],X[3]=1,X}else return null;for(W=0;W<3;W++)X[W]=Z7(X[W],0,255);return X[3]=Z7(X[3],0,1),X};$8.get.hsl=function(A){if(!A)return null;var Q=/^hsla?\(\s*([+-]?(?:\d{0,3}\.)?\d+)(?:deg)?\s*,?\s*([+-]?[\d\.]+)%\s*,?\s*([+-]?[\d\.]+)%\s*(?:[,|\/]\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:[eE][+-]?\d+)?)\s*)?\)$/,B=A.match(Q);if(B){var Y=parseFloat(B[4]),J=(parseFloat(B[1])%360+360)%360,C=Z7(parseFloat(B[2]),0,100),X=Z7(parseFloat(B[3]),0,100),G=Z7(isNaN(Y)?1:Y,0,1);return[J,C,X,G]}return null};$8.get.hwb=function(A){if(!A)return null;var Q=/^hwb\(\s*([+-]?\d{0,3}(?:\.\d+)?)(?:deg)?\s*,\s*([+-]?[\d\.]+)%\s*,\s*([+-]?[\d\.]+)%\s*(?:,\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:[eE][+-]?\d+)?)\s*)?\)$/,B=A.match(Q);if(B){var Y=parseFloat(B[4]),J=(parseFloat(B[1])%360+360)%360,C=Z7(parseFloat(B[2]),0,100),X=Z7(parseFloat(B[3]),0,100),G=Z7(isNaN(Y)?1:Y,0,1);return[J,C,X,G]}return null};$8.to.hex=function(){var A=FH(arguments);return"#"+w3(A[0])+w3(A[1])+w3(A[2])+(A[3]<1?w3(Math.round(A[3]*255)):"")};$8.to.rgb=function(){var A=FH(arguments);return A.length<4||A[3]===1?"rgb("+Math.round(A[0])+", "+Math.round(A[1])+", "+Math.round(A[2])+")":"rgba("+Math.round(A[0])+", "+Math.round(A[1])+", "+Math.round(A[2])+", "+A[3]+")"};$8.to.rgb.percent=function(){var A=FH(arguments),Q=Math.round(A[0]/255*100),B=Math.round(A[1]/255*100),Y=Math.round(A[2]/255*100);return A.length<4||A[3]===1?"rgb("+Q+"%, "+B+"%, "+Y+"%)":"rgba("+Q+"%, "+B+"%, "+Y+"%, "+A[3]+")"};$8.to.hsl=function(){var A=FH(arguments);return A.length<4||A[3]===1?"hsl("+A[0]+", "+A[1]+"%, "+A[2]+"%)":"hsla("+A[0]+", "+A[1]+"%, "+A[2]+"%, "+A[3]+")"};$8.to.hwb=function(){var A=FH(arguments),Q="";if(A.length>=4&&A[3]!==1)Q=", "+A[3];return"hwb("+A[0]+", "+A[1]+"%, "+A[2]+"%"+Q+")"};$8.to.keyword=function(A){return L5A[A.slice(0,3)]};function Z7(A,Q,B){return Math.min(Math.max(Q,A),B)}function w3(A){var Q=Math.round(A).toString(16).toUpperCase();return Q.length<2?"0"+Q:Q}});var Dh=R((f6Y,R5A)=>{var ZH=Hh(),z5A={};for(let A of Object.keys(ZH))z5A[ZH[A]]=A;var aA={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},lch:{channels:3,labels:"lch"},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}};R5A.exports=aA;for(let A of Object.keys(aA)){if(!("channels"in aA[A]))throw Error("missing channels property: "+A);if(!("labels"in aA[A]))throw Error("missing channel labels property: "+A);if(aA[A].labels.length!==aA[A].channels)throw Error("channel and label counts mismatch: "+A);let{channels:Q,labels:B}=aA[A];delete aA[A].channels,delete aA[A].labels,Object.defineProperty(aA[A],"channels",{value:Q}),Object.defineProperty(aA[A],"labels",{value:B})}aA.rgb.hsl=function(A){let Q=A[0]/255,B=A[1]/255,Y=A[2]/255,J=Math.min(Q,B,Y),C=Math.max(Q,B,Y),X=C-J,G,W;if(C===J)G=0;else if(Q===C)G=(B-Y)/X;else if(B===C)G=2+(Y-Q)/X;else if(Y===C)G=4+(Q-B)/X;if(G=Math.min(G*60,360),G<0)G+=360;let F=(J+C)/2;if(C===J)W=0;else if(F<=0.5)W=X/(C+J);else W=X/(2-C-J);return[G,W*100,F*100]};aA.rgb.hsv=function(A){let Q,B,Y,J,C,X=A[0]/255,G=A[1]/255,W=A[2]/255,F=Math.max(X,G,W),Z=F-Math.min(X,G,W),U=function($){return(F-$)/6/Z+0.5};if(Z===0)J=0,C=0;else{if(C=Z/F,Q=U(X),B=U(G),Y=U(W),X===F)J=Y-B;else if(G===F)J=0.3333333333333333+Q-Y;else if(W===F)J=0.6666666666666666+B-Q;if(J<0)J+=1;else if(J>1)J-=1}return[J*360,C*100,F*100]};aA.rgb.hwb=function(A){let Q=A[0],B=A[1],Y=A[2],J=aA.rgb.hsl(A)[0],C=0.00392156862745098*Math.min(Q,Math.min(B,Y));return Y=1-0.00392156862745098*Math.max(Q,Math.max(B,Y)),[J,C*100,Y*100]};aA.rgb.cmyk=function(A){let Q=A[0]/255,B=A[1]/255,Y=A[2]/255,J=Math.min(1-Q,1-B,1-Y),C=(1-Q-J)/(1-J)||0,X=(1-B-J)/(1-J)||0,G=(1-Y-J)/(1-J)||0;return[C*100,X*100,G*100,J*100]};function npQ(A,Q){return(A[0]-Q[0])**2+(A[1]-Q[1])**2+(A[2]-Q[2])**2}aA.rgb.keyword=function(A){let Q=z5A[A];if(Q)return Q;let B=1/0,Y;for(let J of Object.keys(ZH)){let C=ZH[J],X=npQ(A,C);if(X0.04045?((Q+0.055)/1.055)**2.4:Q/12.92,B=B>0.04045?((B+0.055)/1.055)**2.4:B/12.92,Y=Y>0.04045?((Y+0.055)/1.055)**2.4:Y/12.92;let J=Q*0.4124+B*0.3576+Y*0.1805,C=Q*0.2126+B*0.7152+Y*0.0722,X=Q*0.0193+B*0.1192+Y*0.9505;return[J*100,C*100,X*100]};aA.rgb.lab=function(A){let Q=aA.rgb.xyz(A),B=Q[0],Y=Q[1],J=Q[2];B/=95.047,Y/=100,J/=108.883,B=B>0.008856?B**0.3333333333333333:7.787*B+0.13793103448275862,Y=Y>0.008856?Y**0.3333333333333333:7.787*Y+0.13793103448275862,J=J>0.008856?J**0.3333333333333333:7.787*J+0.13793103448275862;let C=116*Y-16,X=500*(B-Y),G=200*(Y-J);return[C,X,G]};aA.hsl.rgb=function(A){let Q=A[0]/360,B=A[1]/100,Y=A[2]/100,J,C,X;if(B===0)return X=Y*255,[X,X,X];if(Y<0.5)J=Y*(1+B);else J=Y+B-Y*B;let G=2*Y-J,W=[0,0,0];for(let F=0;F<3;F++){if(C=Q+0.3333333333333333*-(F-1),C<0)C++;if(C>1)C--;if(6*C<1)X=G+(J-G)*6*C;else if(2*C<1)X=J;else if(3*C<2)X=G+(J-G)*(0.6666666666666666-C)*6;else X=G;W[F]=X*255}return W};aA.hsl.hsv=function(A){let Q=A[0],B=A[1]/100,Y=A[2]/100,J=B,C=Math.max(Y,0.01);Y*=2,B*=Y<=1?Y:2-Y,J*=C<=1?C:2-C;let X=(Y+B)/2,G=Y===0?2*J/(C+J):2*B/(Y+B);return[Q,G*100,X*100]};aA.hsv.rgb=function(A){let Q=A[0]/60,B=A[1]/100,Y=A[2]/100,J=Math.floor(Q)%6,C=Q-Math.floor(Q),X=255*Y*(1-B),G=255*Y*(1-B*C),W=255*Y*(1-B*(1-C));switch(Y*=255,J){case 0:return[Y,W,X];case 1:return[G,Y,X];case 2:return[X,Y,W];case 3:return[X,G,Y];case 4:return[W,X,Y];case 5:return[Y,X,G]}};aA.hsv.hsl=function(A){let Q=A[0],B=A[1]/100,Y=A[2]/100,J=Math.max(Y,0.01),C,X;X=(2-B)*Y;let G=(2-B)*J;return C=B*J,C/=G<=1?G:2-G,C=C||0,X/=2,[Q,C*100,X*100]};aA.hwb.rgb=function(A){let Q=A[0]/360,B=A[1]/100,Y=A[2]/100,J=B+Y,C;if(J>1)B/=J,Y/=J;let X=Math.floor(6*Q),G=1-Y;if(C=6*Q-X,(X&1)!==0)C=1-C;let W=B+C*(G-B),F,Z,U;switch(X){default:case 6:case 0:F=G,Z=W,U=B;break;case 1:F=W,Z=G,U=B;break;case 2:F=B,Z=G,U=W;break;case 3:F=B,Z=W,U=G;break;case 4:F=W,Z=B,U=G;break;case 5:F=G,Z=B,U=W;break}return[F*255,Z*255,U*255]};aA.cmyk.rgb=function(A){let Q=A[0]/100,B=A[1]/100,Y=A[2]/100,J=A[3]/100,C=1-Math.min(1,Q*(1-J)+J),X=1-Math.min(1,B*(1-J)+J),G=1-Math.min(1,Y*(1-J)+J);return[C*255,X*255,G*255]};aA.xyz.rgb=function(A){let Q=A[0]/100,B=A[1]/100,Y=A[2]/100,J,C,X;return J=Q*3.2406+B*-1.5372+Y*-0.4986,C=Q*-0.9689+B*1.8758+Y*0.0415,X=Q*0.0557+B*-0.204+Y*1.057,J=J>0.0031308?1.055*J**0.4166666666666667-0.055:J*12.92,C=C>0.0031308?1.055*C**0.4166666666666667-0.055:C*12.92,X=X>0.0031308?1.055*X**0.4166666666666667-0.055:X*12.92,J=Math.min(Math.max(0,J),1),C=Math.min(Math.max(0,C),1),X=Math.min(Math.max(0,X),1),[J*255,C*255,X*255]};aA.xyz.lab=function(A){let Q=A[0],B=A[1],Y=A[2];Q/=95.047,B/=100,Y/=108.883,Q=Q>0.008856?Q**0.3333333333333333:7.787*Q+0.13793103448275862,B=B>0.008856?B**0.3333333333333333:7.787*B+0.13793103448275862,Y=Y>0.008856?Y**0.3333333333333333:7.787*Y+0.13793103448275862;let J=116*B-16,C=500*(Q-B),X=200*(B-Y);return[J,C,X]};aA.lab.xyz=function(A){let Q=A[0],B=A[1],Y=A[2],J,C,X;C=(Q+16)/116,J=B/500+C,X=C-Y/200;let G=C**3,W=J**3,F=X**3;return C=G>0.008856?G:(C-0.13793103448275862)/7.787,J=W>0.008856?W:(J-0.13793103448275862)/7.787,X=F>0.008856?F:(X-0.13793103448275862)/7.787,J*=95.047,C*=100,X*=108.883,[J,C,X]};aA.lab.lch=function(A){let Q=A[0],B=A[1],Y=A[2],J;if(J=Math.atan2(Y,B)*360/2/Math.PI,J<0)J+=360;let X=Math.sqrt(B*B+Y*Y);return[Q,X,J]};aA.lch.lab=function(A){let Q=A[0],B=A[1],J=A[2]/360*2*Math.PI,C=B*Math.cos(J),X=B*Math.sin(J);return[Q,C,X]};aA.rgb.ansi16=function(A,Q=null){let[B,Y,J]=A,C=Q===null?aA.rgb.hsv(A)[2]:Q;if(C=Math.round(C/50),C===0)return 30;let X=30+(Math.round(J/255)<<2|Math.round(Y/255)<<1|Math.round(B/255));if(C===2)X+=60;return X};aA.hsv.ansi16=function(A){return aA.rgb.ansi16(aA.hsv.rgb(A),A[2])};aA.rgb.ansi256=function(A){let Q=A[0],B=A[1],Y=A[2];if(Q===B&&B===Y){if(Q<8)return 16;if(Q>248)return 231;return Math.round((Q-8)/247*24)+232}return 16+36*Math.round(Q/255*5)+6*Math.round(B/255*5)+Math.round(Y/255*5)};aA.ansi16.rgb=function(A){let Q=A%10;if(Q===0||Q===7){if(A>50)Q+=3.5;return Q=Q/10.5*255,[Q,Q,Q]}let B=(~~(A>50)+1)*0.5,Y=(Q&1)*B*255,J=(Q>>1&1)*B*255,C=(Q>>2&1)*B*255;return[Y,J,C]};aA.ansi256.rgb=function(A){if(A>=232){let C=(A-232)*10+8;return[C,C,C]}A-=16;let Q,B=Math.floor(A/36)/5*255,Y=Math.floor((Q=A%36)/6)/5*255,J=Q%6/5*255;return[B,Y,J]};aA.rgb.hex=function(A){let B=(((Math.round(A[0])&255)<<16)+((Math.round(A[1])&255)<<8)+(Math.round(A[2])&255)).toString(16).toUpperCase();return"000000".substring(B.length)+B};aA.hex.rgb=function(A){let Q=A.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!Q)return[0,0,0];let B=Q[0];if(Q[0].length===3)B=B.split("").map((G)=>{return G+G}).join("");let Y=parseInt(B,16),J=Y>>16&255,C=Y>>8&255,X=Y&255;return[J,C,X]};aA.rgb.hcg=function(A){let Q=A[0]/255,B=A[1]/255,Y=A[2]/255,J=Math.max(Math.max(Q,B),Y),C=Math.min(Math.min(Q,B),Y),X=J-C,G,W;if(X<1)G=C/(1-X);else G=0;if(X<=0)W=0;else if(J===Q)W=(B-Y)/X%6;else if(J===B)W=2+(Y-Q)/X;else W=4+(Q-B)/X;return W/=6,W%=1,[W*360,X*100,G*100]};aA.hsl.hcg=function(A){let Q=A[1]/100,B=A[2]/100,Y=B<0.5?2*Q*B:2*Q*(1-B),J=0;if(Y<1)J=(B-0.5*Y)/(1-Y);return[A[0],Y*100,J*100]};aA.hsv.hcg=function(A){let Q=A[1]/100,B=A[2]/100,Y=Q*B,J=0;if(Y<1)J=(B-Y)/(1-Y);return[A[0],Y*100,J*100]};aA.hcg.rgb=function(A){let Q=A[0]/360,B=A[1]/100,Y=A[2]/100;if(B===0)return[Y*255,Y*255,Y*255];let J=[0,0,0],C=Q%1*6,X=C%1,G=1-X,W=0;switch(Math.floor(C)){case 0:J[0]=1,J[1]=X,J[2]=0;break;case 1:J[0]=G,J[1]=1,J[2]=0;break;case 2:J[0]=0,J[1]=1,J[2]=X;break;case 3:J[0]=0,J[1]=G,J[2]=1;break;case 4:J[0]=X,J[1]=0,J[2]=1;break;default:J[0]=1,J[1]=0,J[2]=G}return W=(1-B)*Y,[(B*J[0]+W)*255,(B*J[1]+W)*255,(B*J[2]+W)*255]};aA.hcg.hsv=function(A){let Q=A[1]/100,B=A[2]/100,Y=Q+B*(1-Q),J=0;if(Y>0)J=Q/Y;return[A[0],J*100,Y*100]};aA.hcg.hsl=function(A){let Q=A[1]/100,Y=A[2]/100*(1-Q)+0.5*Q,J=0;if(Y>0&&Y<0.5)J=Q/(2*Y);else if(Y>=0.5&&Y<1)J=Q/(2*(1-Y));return[A[0],J*100,Y*100]};aA.hcg.hwb=function(A){let Q=A[1]/100,B=A[2]/100,Y=Q+B*(1-Q);return[A[0],(Y-Q)*100,(1-Y)*100]};aA.hwb.hcg=function(A){let Q=A[1]/100,Y=1-A[2]/100,J=Y-Q,C=0;if(J<1)C=(Y-J)/(1-J);return[A[0],J*100,C*100]};aA.apple.rgb=function(A){return[A[0]/65535*255,A[1]/65535*255,A[2]/65535*255]};aA.rgb.apple=function(A){return[A[0]/255*65535,A[1]/255*65535,A[2]/255*65535]};aA.gray.rgb=function(A){return[A[0]/100*255,A[0]/100*255,A[0]/100*255]};aA.gray.hsl=function(A){return[0,0,A[0]]};aA.gray.hsv=aA.gray.hsl;aA.gray.hwb=function(A){return[0,100,A[0]]};aA.gray.cmyk=function(A){return[0,0,0,A[0]]};aA.gray.lab=function(A){return[A[0],0,0]};aA.gray.hex=function(A){let Q=Math.round(A[0]/100*255)&255,Y=((Q<<16)+(Q<<8)+Q).toString(16).toUpperCase();return"000000".substring(Y.length)+Y};aA.rgb.gray=function(A){return[(A[0]+A[1]+A[2])/3/255*100]}});var j5A=R((b6Y,w5A)=>{var j3=Dh();function spQ(){let A={},Q=Object.keys(j3);for(let B=Q.length,Y=0;Y{var Nh=Dh(),tpQ=j5A(),YU={},epQ=Object.keys(Nh);function AiQ(A){let Q=function(...B){let Y=B[0];if(Y===void 0||Y===null)return Y;if(Y.length>1)B=Y;return A(B)};if("conversion"in A)Q.conversion=A.conversion;return Q}function QiQ(A){let Q=function(...B){let Y=B[0];if(Y===void 0||Y===null)return Y;if(Y.length>1)B=Y;let J=A(B);if(typeof J==="object")for(let C=J.length,X=0;X{YU[A]={},Object.defineProperty(YU[A],"channels",{value:Nh[A].channels}),Object.defineProperty(YU[A],"labels",{value:Nh[A].labels});let Q=tpQ(A);Object.keys(Q).forEach((Y)=>{let J=Q[Y];YU[A][Y]=QiQ(J),YU[A][Y].raw=AiQ(J)})});O5A.exports=YU});var k5A=R((u6Y,S5A)=>{var JU=M5A(),U8=P5A(),T5A=["keyword","gray","hex"],Lh={};for(let A of Object.keys(U8))Lh[[...U8[A].labels].sort().join("")]=A;var O3={};function pY(A,Q){if(!(this instanceof pY))return new pY(A,Q);if(Q&&Q in T5A)Q=null;if(Q&&!(Q in U8))throw Error("Unknown model: "+Q);let B,Y;if(A==null)this.model="rgb",this.color=[0,0,0],this.valpha=1;else if(A instanceof pY)this.model=A.model,this.color=[...A.color],this.valpha=A.valpha;else if(typeof A==="string"){let J=JU.get(A);if(J===null)throw Error("Unable to parse color from string: "+A);this.model=J.model,Y=U8[this.model].channels,this.color=J.value.slice(0,Y),this.valpha=typeof J.value[Y]==="number"?J.value[Y]:1}else if(A.length>0){this.model=Q||"rgb",Y=U8[this.model].channels;let J=Array.prototype.slice.call(A,0,Y);this.color=qh(J,Y),this.valpha=typeof A[Y]==="number"?A[Y]:1}else if(typeof A==="number")this.model="rgb",this.color=[A>>16&255,A>>8&255,A&255],this.valpha=1;else{this.valpha=1;let J=Object.keys(A);if("alpha"in A)J.splice(J.indexOf("alpha"),1),this.valpha=typeof A.alpha==="number"?A.alpha:0;let C=J.sort().join("");if(!(C in Lh))throw Error("Unable to parse color from object: "+JSON.stringify(A));this.model=Lh[C];let{labels:X}=U8[this.model],G=[];for(B=0;B(A%360+360)%360),saturationl:c0("hsl",1,kY(100)),lightness:c0("hsl",2,kY(100)),saturationv:c0("hsv",1,kY(100)),value:c0("hsv",2,kY(100)),chroma:c0("hcg",1,kY(100)),gray:c0("hcg",2,kY(100)),white:c0("hwb",1,kY(100)),wblack:c0("hwb",2,kY(100)),cyan:c0("cmyk",0,kY(100)),magenta:c0("cmyk",1,kY(100)),yellow:c0("cmyk",2,kY(100)),black:c0("cmyk",3,kY(100)),x:c0("xyz",0,kY(95.047)),y:c0("xyz",1,kY(100)),z:c0("xyz",2,kY(108.833)),l:c0("lab",0,kY(100)),a:c0("lab",1),b:c0("lab",2),keyword(A){if(A!==void 0)return new pY(A);return U8[this.model].keyword(this.color)},hex(A){if(A!==void 0)return new pY(A);return JU.to.hex(this.rgb().round().color)},hexa(A){if(A!==void 0)return new pY(A);let Q=this.rgb().round().color,B=Math.round(this.valpha*255).toString(16).toUpperCase();if(B.length===1)B="0"+B;return JU.to.hex(Q)+B},rgbNumber(){let A=this.rgb().color;return(A[0]&255)<<16|(A[1]&255)<<8|A[2]&255},luminosity(){let A=this.rgb().color,Q=[];for(let[B,Y]of A.entries()){let J=Y/255;Q[B]=J<=0.04045?J/12.92:((J+0.055)/1.055)**2.4}return 0.2126*Q[0]+0.7152*Q[1]+0.0722*Q[2]},contrast(A){let Q=this.luminosity(),B=A.luminosity();if(Q>B)return(Q+0.05)/(B+0.05);return(B+0.05)/(Q+0.05)},level(A){let Q=this.contrast(A);if(Q>=7)return"AAA";return Q>=4.5?"AA":""},isDark(){let A=this.rgb().color;return(A[0]*2126+A[1]*7152+A[2]*722)/1e4<128},isLight(){return!this.isDark()},negate(){let A=this.rgb();for(let Q=0;Q<3;Q++)A.color[Q]=255-A.color[Q];return A},lighten(A){let Q=this.hsl();return Q.color[2]+=Q.color[2]*A,Q},darken(A){let Q=this.hsl();return Q.color[2]-=Q.color[2]*A,Q},saturate(A){let Q=this.hsl();return Q.color[1]+=Q.color[1]*A,Q},desaturate(A){let Q=this.hsl();return Q.color[1]-=Q.color[1]*A,Q},whiten(A){let Q=this.hwb();return Q.color[1]+=Q.color[1]*A,Q},blacken(A){let Q=this.hwb();return Q.color[2]+=Q.color[2]*A,Q},grayscale(){let A=this.rgb().color,Q=A[0]*0.3+A[1]*0.59+A[2]*0.11;return pY.rgb(Q,Q,Q)},fade(A){return this.alpha(this.valpha-this.valpha*A)},opaquer(A){return this.alpha(this.valpha+this.valpha*A)},rotate(A){let Q=this.hsl(),B=Q.color[0];return B=(B+A)%360,B=B<0?360+B:B,Q.color[0]=B,Q},mix(A,Q){if(!A||!A.rgb)throw Error('Argument to "mix" was not a Color instance, but rather an instance of '+typeof A);let B=A.rgb(),Y=this.rgb(),J=Q===void 0?0.5:Q,C=2*J-1,X=B.alpha()-Y.alpha(),G=((C*X===-1?C:(C+X)/(1+C*X))+1)/2,W=1-G;return pY.rgb(G*B.red()+W*Y.red(),G*B.green()+W*Y.green(),G*B.blue()+W*Y.blue(),B.alpha()*J+Y.alpha()*(1-J))}};for(let A of Object.keys(U8)){if(T5A.includes(A))continue;let{channels:Q}=U8[A];pY.prototype[A]=function(...B){if(this.model===A)return new pY(this);if(B.length>0)return new pY(B,A);return new pY([...JiQ(U8[this.model][A].raw(this.color)),this.valpha],A)},pY[A]=function(...B){let Y=B[0];if(typeof Y==="number")Y=qh(B,Q);return new pY(Y,A)}}function BiQ(A,Q){return Number(A.toFixed(Q))}function YiQ(A){return function(Q){return BiQ(Q,A)}}function c0(A,Q,B){A=Array.isArray(A)?A:[A];for(let Y of A)(O3[Y]||(O3[Y]=[]))[Q]=B;return A=A[0],function(Y){let J;if(Y!==void 0){if(B)Y=B(Y);return J=this[A](),J.color[Q]=Y,J}if(J=this[A]().color[Q],B)J=B(J);return J}}function kY(A){return function(Q){return Math.max(0,Math.min(A,Q))}}function JiQ(A){return Array.isArray(A)?A:[A]}function qh(A,Q){for(let B=0;B{var CiQ=k5A(),q6=g1(),_5A={multiband:"multiband","b-w":"b-w",bw:"b-w",cmyk:"cmyk",srgb:"srgb"};function XiQ(A){return this._setBackgroundColourOption("tint",A),this}function GiQ(A){return this.options.greyscale=q6.bool(A)?A:!0,this}function WiQ(A){return this.greyscale(A)}function FiQ(A){if(!q6.string(A))throw q6.invalidParameterError("colourspace","string",A);return this.options.colourspacePipeline=A,this}function ZiQ(A){return this.pipelineColourspace(A)}function $iQ(A){if(!q6.string(A))throw q6.invalidParameterError("colourspace","string",A);return this.options.colourspace=A,this}function UiQ(A){return this.toColourspace(A)}function v5A(A){if(q6.object(A)||q6.string(A)){let Q=CiQ(A);return[Q.red(),Q.green(),Q.blue(),Math.round(Q.alpha()*255)]}else throw q6.invalidParameterError("background","object or string",A)}function EiQ(A,Q){if(q6.defined(Q))this.options[A]=v5A(Q)}y5A.exports=function(A){Object.assign(A.prototype,{tint:XiQ,greyscale:GiQ,grayscale:WiQ,pipelineColourspace:FiQ,pipelineColorspace:ZiQ,toColourspace:$iQ,toColorspace:UiQ,_getBackgroundColourOption:v5A,_setBackgroundColourOption:EiQ}),A.colourspace=_5A,A.colorspace=_5A}});var x5A=R((c6Y,h5A)=>{var b1=g1(),KiQ={and:"and",or:"or",eor:"eor"};function ViQ(){return this.options.removeAlpha=!0,this}function IiQ(A){if(b1.defined(A))if(b1.number(A)&&b1.inRange(A,0,1))this.options.ensureAlpha=A;else throw b1.invalidParameterError("alpha","number between 0 and 1",A);else this.options.ensureAlpha=1;return this}function HiQ(A){let Q={red:0,green:1,blue:2,alpha:3};if(Object.keys(Q).includes(A))A=Q[A];if(b1.integer(A)&&b1.inRange(A,0,4))this.options.extractChannel=A;else throw b1.invalidParameterError("channel","integer or one of: red, green, blue, alpha",A);return this}function DiQ(A,Q){if(Array.isArray(A))A.forEach(function(B){this.options.joinChannelIn.push(this._createInputDescriptor(B,Q))},this);else this.options.joinChannelIn.push(this._createInputDescriptor(A,Q));return this}function NiQ(A){if(b1.string(A)&&b1.inArray(A,["and","or","eor"]))this.options.bandBoolOp=A;else throw b1.invalidParameterError("boolOp","one of: and, or, eor",A);return this}h5A.exports=function(A){Object.assign(A.prototype,{removeAlpha:ViQ,ensureAlpha:IiQ,extractChannel:HiQ,joinChannel:DiQ,bandbool:NiQ}),A.bool=KiQ}});var d5A=R((l6Y,u5A)=>{var Mh=u("node:path"),f=g1(),CU=XH(),f5A=new Map([["heic","heif"],["heif","heif"],["avif","avif"],["jpeg","jpeg"],["jpg","jpeg"],["jpe","jpeg"],["tile","tile"],["dz","tile"],["png","png"],["raw","raw"],["tiff","tiff"],["tif","tiff"],["webp","webp"],["gif","gif"],["jp2","jp2"],["jpx","jp2"],["j2k","jp2"],["j2c","jp2"],["jxl","jxl"]]),LiQ=/\.(jp[2x]|j2[kc])$/i,b5A=()=>Error("JP2 output requires libvips with support for OpenJPEG"),m5A=(A)=>1<<31-Math.clz32(Math.ceil(Math.log2(A)));function qiQ(A,Q){let B;if(!f.string(A))B=Error("Missing output file path");else if(f.string(this.options.input.file)&&Mh.resolve(this.options.input.file)===Mh.resolve(A))B=Error("Cannot use same file for input and output");else if(LiQ.test(Mh.extname(A))&&!this.constructor.format.jp2k.output.file)B=b5A();if(B)if(f.fn(Q))Q(B);else return Promise.reject(B);else{this.options.fileOut=A;let Y=Error();return this._pipeline(Q,Y)}return this}function MiQ(A,Q){if(f.object(A))this._setBooleanOption("resolveWithObject",A.resolveWithObject);else if(this.options.resolveWithObject)this.options.resolveWithObject=!1;this.options.fileOut="";let B=Error();return this._pipeline(f.fn(A)?A:Q,B)}function ziQ(){return this.options.keepMetadata|=1,this}function RiQ(A){if(f.object(A))for(let[Q,B]of Object.entries(A))if(f.object(B))for(let[Y,J]of Object.entries(B))if(f.string(J))this.options.withExif[`exif-${Q.toLowerCase()}-${Y}`]=J;else throw f.invalidParameterError(`${Q}.${Y}`,"string",J);else throw f.invalidParameterError(Q,"object",B);else throw f.invalidParameterError("exif","object",A);return this.options.withExifMerge=!1,this.keepExif()}function wiQ(A){return this.withExif(A),this.options.withExifMerge=!0,this}function jiQ(){return this.options.keepMetadata|=8,this}function OiQ(A,Q){if(f.string(A))this.options.withIccProfile=A;else throw f.invalidParameterError("icc","string",A);if(this.keepIccProfile(),f.object(Q)){if(f.defined(Q.attach))if(f.bool(Q.attach)){if(!Q.attach)this.options.keepMetadata&=-9}else throw f.invalidParameterError("attach","boolean",Q.attach)}return this}function PiQ(){return this.options.keepMetadata|=2,this}function TiQ(A){if(f.string(A)&&A.length>0)this.options.withXmp=A,this.options.keepMetadata|=2;else throw f.invalidParameterError("xmp","non-empty string",A);return this}function SiQ(){return this.options.keepMetadata=31,this}function kiQ(A){if(this.keepMetadata(),this.withIccProfile("srgb"),f.object(A)){if(f.defined(A.orientation))if(f.integer(A.orientation)&&f.inRange(A.orientation,1,8))this.options.withMetadataOrientation=A.orientation;else throw f.invalidParameterError("orientation","integer between 1 and 8",A.orientation);if(f.defined(A.density))if(f.number(A.density)&&A.density>0)this.options.withMetadataDensity=A.density;else throw f.invalidParameterError("density","positive number",A.density);if(f.defined(A.icc))this.withIccProfile(A.icc);if(f.defined(A.exif))this.withExifMerge(A.exif)}return this}function _iQ(A,Q){let B=f5A.get((f.object(A)&&f.string(A.id)?A.id:A).toLowerCase());if(!B)throw f.invalidParameterError("format",`one of: ${[...f5A.keys()].join(", ")}`,A);return this[B](Q)}function viQ(A){if(f.object(A)){if(f.defined(A.quality))if(f.integer(A.quality)&&f.inRange(A.quality,1,100))this.options.jpegQuality=A.quality;else throw f.invalidParameterError("quality","integer between 1 and 100",A.quality);if(f.defined(A.progressive))this._setBooleanOption("jpegProgressive",A.progressive);if(f.defined(A.chromaSubsampling))if(f.string(A.chromaSubsampling)&&f.inArray(A.chromaSubsampling,["4:2:0","4:4:4"]))this.options.jpegChromaSubsampling=A.chromaSubsampling;else throw f.invalidParameterError("chromaSubsampling","one of: 4:2:0, 4:4:4",A.chromaSubsampling);let Q=f.bool(A.optimizeCoding)?A.optimizeCoding:A.optimiseCoding;if(f.defined(Q))this._setBooleanOption("jpegOptimiseCoding",Q);if(f.defined(A.mozjpeg))if(f.bool(A.mozjpeg)){if(A.mozjpeg)this.options.jpegTrellisQuantisation=!0,this.options.jpegOvershootDeringing=!0,this.options.jpegOptimiseScans=!0,this.options.jpegProgressive=!0,this.options.jpegQuantisationTable=3}else throw f.invalidParameterError("mozjpeg","boolean",A.mozjpeg);let B=f.bool(A.trellisQuantization)?A.trellisQuantization:A.trellisQuantisation;if(f.defined(B))this._setBooleanOption("jpegTrellisQuantisation",B);if(f.defined(A.overshootDeringing))this._setBooleanOption("jpegOvershootDeringing",A.overshootDeringing);let Y=f.bool(A.optimizeScans)?A.optimizeScans:A.optimiseScans;if(f.defined(Y)){if(this._setBooleanOption("jpegOptimiseScans",Y),Y)this.options.jpegProgressive=!0}let J=f.number(A.quantizationTable)?A.quantizationTable:A.quantisationTable;if(f.defined(J))if(f.integer(J)&&f.inRange(J,0,8))this.options.jpegQuantisationTable=J;else throw f.invalidParameterError("quantisationTable","integer between 0 and 8",J)}return this._updateFormatOut("jpeg",A)}function yiQ(A){if(f.object(A)){if(f.defined(A.progressive))this._setBooleanOption("pngProgressive",A.progressive);if(f.defined(A.compressionLevel))if(f.integer(A.compressionLevel)&&f.inRange(A.compressionLevel,0,9))this.options.pngCompressionLevel=A.compressionLevel;else throw f.invalidParameterError("compressionLevel","integer between 0 and 9",A.compressionLevel);if(f.defined(A.adaptiveFiltering))this._setBooleanOption("pngAdaptiveFiltering",A.adaptiveFiltering);let Q=A.colours||A.colors;if(f.defined(Q))if(f.integer(Q)&&f.inRange(Q,2,256))this.options.pngBitdepth=m5A(Q);else throw f.invalidParameterError("colours","integer between 2 and 256",Q);if(f.defined(A.palette))this._setBooleanOption("pngPalette",A.palette);else if([A.quality,A.effort,A.colours,A.colors,A.dither].some(f.defined))this._setBooleanOption("pngPalette",!0);if(this.options.pngPalette){if(f.defined(A.quality))if(f.integer(A.quality)&&f.inRange(A.quality,0,100))this.options.pngQuality=A.quality;else throw f.invalidParameterError("quality","integer between 0 and 100",A.quality);if(f.defined(A.effort))if(f.integer(A.effort)&&f.inRange(A.effort,1,10))this.options.pngEffort=A.effort;else throw f.invalidParameterError("effort","integer between 1 and 10",A.effort);if(f.defined(A.dither))if(f.number(A.dither)&&f.inRange(A.dither,0,1))this.options.pngDither=A.dither;else throw f.invalidParameterError("dither","number between 0.0 and 1.0",A.dither)}}return this._updateFormatOut("png",A)}function giQ(A){if(f.object(A)){if(f.defined(A.quality))if(f.integer(A.quality)&&f.inRange(A.quality,1,100))this.options.webpQuality=A.quality;else throw f.invalidParameterError("quality","integer between 1 and 100",A.quality);if(f.defined(A.alphaQuality))if(f.integer(A.alphaQuality)&&f.inRange(A.alphaQuality,0,100))this.options.webpAlphaQuality=A.alphaQuality;else throw f.invalidParameterError("alphaQuality","integer between 0 and 100",A.alphaQuality);if(f.defined(A.lossless))this._setBooleanOption("webpLossless",A.lossless);if(f.defined(A.nearLossless))this._setBooleanOption("webpNearLossless",A.nearLossless);if(f.defined(A.smartSubsample))this._setBooleanOption("webpSmartSubsample",A.smartSubsample);if(f.defined(A.smartDeblock))this._setBooleanOption("webpSmartDeblock",A.smartDeblock);if(f.defined(A.preset))if(f.string(A.preset)&&f.inArray(A.preset,["default","photo","picture","drawing","icon","text"]))this.options.webpPreset=A.preset;else throw f.invalidParameterError("preset","one of: default, photo, picture, drawing, icon, text",A.preset);if(f.defined(A.effort))if(f.integer(A.effort)&&f.inRange(A.effort,0,6))this.options.webpEffort=A.effort;else throw f.invalidParameterError("effort","integer between 0 and 6",A.effort);if(f.defined(A.minSize))this._setBooleanOption("webpMinSize",A.minSize);if(f.defined(A.mixed))this._setBooleanOption("webpMixed",A.mixed)}return zh(A,this.options),this._updateFormatOut("webp",A)}function hiQ(A){if(f.object(A)){if(f.defined(A.reuse))this._setBooleanOption("gifReuse",A.reuse);if(f.defined(A.progressive))this._setBooleanOption("gifProgressive",A.progressive);let Q=A.colours||A.colors;if(f.defined(Q))if(f.integer(Q)&&f.inRange(Q,2,256))this.options.gifBitdepth=m5A(Q);else throw f.invalidParameterError("colours","integer between 2 and 256",Q);if(f.defined(A.effort))if(f.number(A.effort)&&f.inRange(A.effort,1,10))this.options.gifEffort=A.effort;else throw f.invalidParameterError("effort","integer between 1 and 10",A.effort);if(f.defined(A.dither))if(f.number(A.dither)&&f.inRange(A.dither,0,1))this.options.gifDither=A.dither;else throw f.invalidParameterError("dither","number between 0.0 and 1.0",A.dither);if(f.defined(A.interFrameMaxError))if(f.number(A.interFrameMaxError)&&f.inRange(A.interFrameMaxError,0,32))this.options.gifInterFrameMaxError=A.interFrameMaxError;else throw f.invalidParameterError("interFrameMaxError","number between 0.0 and 32.0",A.interFrameMaxError);if(f.defined(A.interPaletteMaxError))if(f.number(A.interPaletteMaxError)&&f.inRange(A.interPaletteMaxError,0,256))this.options.gifInterPaletteMaxError=A.interPaletteMaxError;else throw f.invalidParameterError("interPaletteMaxError","number between 0.0 and 256.0",A.interPaletteMaxError);if(f.defined(A.keepDuplicateFrames))if(f.bool(A.keepDuplicateFrames))this._setBooleanOption("gifKeepDuplicateFrames",A.keepDuplicateFrames);else throw f.invalidParameterError("keepDuplicateFrames","boolean",A.keepDuplicateFrames)}return zh(A,this.options),this._updateFormatOut("gif",A)}function xiQ(A){if(!this.constructor.format.jp2k.output.buffer)throw b5A();if(f.object(A)){if(f.defined(A.quality))if(f.integer(A.quality)&&f.inRange(A.quality,1,100))this.options.jp2Quality=A.quality;else throw f.invalidParameterError("quality","integer between 1 and 100",A.quality);if(f.defined(A.lossless))if(f.bool(A.lossless))this.options.jp2Lossless=A.lossless;else throw f.invalidParameterError("lossless","boolean",A.lossless);if(f.defined(A.tileWidth))if(f.integer(A.tileWidth)&&f.inRange(A.tileWidth,1,32768))this.options.jp2TileWidth=A.tileWidth;else throw f.invalidParameterError("tileWidth","integer between 1 and 32768",A.tileWidth);if(f.defined(A.tileHeight))if(f.integer(A.tileHeight)&&f.inRange(A.tileHeight,1,32768))this.options.jp2TileHeight=A.tileHeight;else throw f.invalidParameterError("tileHeight","integer between 1 and 32768",A.tileHeight);if(f.defined(A.chromaSubsampling))if(f.string(A.chromaSubsampling)&&f.inArray(A.chromaSubsampling,["4:2:0","4:4:4"]))this.options.jp2ChromaSubsampling=A.chromaSubsampling;else throw f.invalidParameterError("chromaSubsampling","one of: 4:2:0, 4:4:4",A.chromaSubsampling)}return this._updateFormatOut("jp2",A)}function zh(A,Q){if(f.object(A)&&f.defined(A.loop))if(f.integer(A.loop)&&f.inRange(A.loop,0,65535))Q.loop=A.loop;else throw f.invalidParameterError("loop","integer between 0 and 65535",A.loop);if(f.object(A)&&f.defined(A.delay))if(f.integer(A.delay)&&f.inRange(A.delay,0,65535))Q.delay=[A.delay];else if(Array.isArray(A.delay)&&A.delay.every(f.integer)&&A.delay.every((B)=>f.inRange(B,0,65535)))Q.delay=A.delay;else throw f.invalidParameterError("delay","integer or an array of integers between 0 and 65535",A.delay)}function fiQ(A){if(f.object(A)){if(f.defined(A.quality))if(f.integer(A.quality)&&f.inRange(A.quality,1,100))this.options.tiffQuality=A.quality;else throw f.invalidParameterError("quality","integer between 1 and 100",A.quality);if(f.defined(A.bitdepth))if(f.integer(A.bitdepth)&&f.inArray(A.bitdepth,[1,2,4,8]))this.options.tiffBitdepth=A.bitdepth;else throw f.invalidParameterError("bitdepth","1, 2, 4 or 8",A.bitdepth);if(f.defined(A.tile))this._setBooleanOption("tiffTile",A.tile);if(f.defined(A.tileWidth))if(f.integer(A.tileWidth)&&A.tileWidth>0)this.options.tiffTileWidth=A.tileWidth;else throw f.invalidParameterError("tileWidth","integer greater than zero",A.tileWidth);if(f.defined(A.tileHeight))if(f.integer(A.tileHeight)&&A.tileHeight>0)this.options.tiffTileHeight=A.tileHeight;else throw f.invalidParameterError("tileHeight","integer greater than zero",A.tileHeight);if(f.defined(A.miniswhite))this._setBooleanOption("tiffMiniswhite",A.miniswhite);if(f.defined(A.pyramid))this._setBooleanOption("tiffPyramid",A.pyramid);if(f.defined(A.xres))if(f.number(A.xres)&&A.xres>0)this.options.tiffXres=A.xres;else throw f.invalidParameterError("xres","number greater than zero",A.xres);if(f.defined(A.yres))if(f.number(A.yres)&&A.yres>0)this.options.tiffYres=A.yres;else throw f.invalidParameterError("yres","number greater than zero",A.yres);if(f.defined(A.compression))if(f.string(A.compression)&&f.inArray(A.compression,["none","jpeg","deflate","packbits","ccittfax4","lzw","webp","zstd","jp2k"]))this.options.tiffCompression=A.compression;else throw f.invalidParameterError("compression","one of: none, jpeg, deflate, packbits, ccittfax4, lzw, webp, zstd, jp2k",A.compression);if(f.defined(A.predictor))if(f.string(A.predictor)&&f.inArray(A.predictor,["none","horizontal","float"]))this.options.tiffPredictor=A.predictor;else throw f.invalidParameterError("predictor","one of: none, horizontal, float",A.predictor);if(f.defined(A.resolutionUnit))if(f.string(A.resolutionUnit)&&f.inArray(A.resolutionUnit,["inch","cm"]))this.options.tiffResolutionUnit=A.resolutionUnit;else throw f.invalidParameterError("resolutionUnit","one of: inch, cm",A.resolutionUnit)}return this._updateFormatOut("tiff",A)}function biQ(A){return this.heif({...A,compression:"av1"})}function miQ(A){if(f.object(A)){if(f.string(A.compression)&&f.inArray(A.compression,["av1","hevc"]))this.options.heifCompression=A.compression;else throw f.invalidParameterError("compression","one of: av1, hevc",A.compression);if(f.defined(A.quality))if(f.integer(A.quality)&&f.inRange(A.quality,1,100))this.options.heifQuality=A.quality;else throw f.invalidParameterError("quality","integer between 1 and 100",A.quality);if(f.defined(A.lossless))if(f.bool(A.lossless))this.options.heifLossless=A.lossless;else throw f.invalidParameterError("lossless","boolean",A.lossless);if(f.defined(A.effort))if(f.integer(A.effort)&&f.inRange(A.effort,0,9))this.options.heifEffort=A.effort;else throw f.invalidParameterError("effort","integer between 0 and 9",A.effort);if(f.defined(A.chromaSubsampling))if(f.string(A.chromaSubsampling)&&f.inArray(A.chromaSubsampling,["4:2:0","4:4:4"]))this.options.heifChromaSubsampling=A.chromaSubsampling;else throw f.invalidParameterError("chromaSubsampling","one of: 4:2:0, 4:4:4",A.chromaSubsampling);if(f.defined(A.bitdepth))if(f.integer(A.bitdepth)&&f.inArray(A.bitdepth,[8,10,12])){if(A.bitdepth!==8&&this.constructor.versions.heif)throw f.invalidParameterError("bitdepth when using prebuilt binaries",8,A.bitdepth);this.options.heifBitdepth=A.bitdepth}else throw f.invalidParameterError("bitdepth","8, 10 or 12",A.bitdepth)}else throw f.invalidParameterError("options","Object",A);return this._updateFormatOut("heif",A)}function uiQ(A){if(f.object(A)){if(f.defined(A.quality))if(f.integer(A.quality)&&f.inRange(A.quality,1,100))this.options.jxlDistance=A.quality>=30?0.1+(100-A.quality)*0.09:0.017666666666666667*A.quality*A.quality-1.15*A.quality+25;else throw f.invalidParameterError("quality","integer between 1 and 100",A.quality);else if(f.defined(A.distance))if(f.number(A.distance)&&f.inRange(A.distance,0,15))this.options.jxlDistance=A.distance;else throw f.invalidParameterError("distance","number between 0.0 and 15.0",A.distance);if(f.defined(A.decodingTier))if(f.integer(A.decodingTier)&&f.inRange(A.decodingTier,0,4))this.options.jxlDecodingTier=A.decodingTier;else throw f.invalidParameterError("decodingTier","integer between 0 and 4",A.decodingTier);if(f.defined(A.lossless))if(f.bool(A.lossless))this.options.jxlLossless=A.lossless;else throw f.invalidParameterError("lossless","boolean",A.lossless);if(f.defined(A.effort))if(f.integer(A.effort)&&f.inRange(A.effort,1,9))this.options.jxlEffort=A.effort;else throw f.invalidParameterError("effort","integer between 1 and 9",A.effort)}return zh(A,this.options),this._updateFormatOut("jxl",A)}function diQ(A){if(f.object(A)){if(f.defined(A.depth))if(f.string(A.depth)&&f.inArray(A.depth,["char","uchar","short","ushort","int","uint","float","complex","double","dpcomplex"]))this.options.rawDepth=A.depth;else throw f.invalidParameterError("depth","one of: char, uchar, short, ushort, int, uint, float, complex, double, dpcomplex",A.depth)}return this._updateFormatOut("raw")}function ciQ(A){if(f.object(A)){if(f.defined(A.size))if(f.integer(A.size)&&f.inRange(A.size,1,8192))this.options.tileSize=A.size;else throw f.invalidParameterError("size","integer between 1 and 8192",A.size);if(f.defined(A.overlap))if(f.integer(A.overlap)&&f.inRange(A.overlap,0,8192)){if(A.overlap>this.options.tileSize)throw f.invalidParameterError("overlap",`<= size (${this.options.tileSize})`,A.overlap);this.options.tileOverlap=A.overlap}else throw f.invalidParameterError("overlap","integer between 0 and 8192",A.overlap);if(f.defined(A.container))if(f.string(A.container)&&f.inArray(A.container,["fs","zip"]))this.options.tileContainer=A.container;else throw f.invalidParameterError("container","one of: fs, zip",A.container);if(f.defined(A.layout))if(f.string(A.layout)&&f.inArray(A.layout,["dz","google","iiif","iiif3","zoomify"]))this.options.tileLayout=A.layout;else throw f.invalidParameterError("layout","one of: dz, google, iiif, iiif3, zoomify",A.layout);if(f.defined(A.angle))if(f.integer(A.angle)&&!(A.angle%90))this.options.tileAngle=A.angle;else throw f.invalidParameterError("angle","positive/negative multiple of 90",A.angle);if(this._setBackgroundColourOption("tileBackground",A.background),f.defined(A.depth))if(f.string(A.depth)&&f.inArray(A.depth,["onepixel","onetile","one"]))this.options.tileDepth=A.depth;else throw f.invalidParameterError("depth","one of: onepixel, onetile, one",A.depth);if(f.defined(A.skipBlanks))if(f.integer(A.skipBlanks)&&f.inRange(A.skipBlanks,-1,65535))this.options.tileSkipBlanks=A.skipBlanks;else throw f.invalidParameterError("skipBlanks","integer between -1 and 255/65535",A.skipBlanks);else if(f.defined(A.layout)&&A.layout==="google")this.options.tileSkipBlanks=5;let Q=f.bool(A.center)?A.center:A.centre;if(f.defined(Q))this._setBooleanOption("tileCentre",Q);if(f.defined(A.id))if(f.string(A.id))this.options.tileId=A.id;else throw f.invalidParameterError("id","string",A.id);if(f.defined(A.basename))if(f.string(A.basename))this.options.tileBasename=A.basename;else throw f.invalidParameterError("basename","string",A.basename)}if(f.inArray(this.options.formatOut,["jpeg","png","webp"]))this.options.tileFormat=this.options.formatOut;else if(this.options.formatOut!=="input")throw f.invalidParameterError("format","one of: jpeg, png, webp",this.options.formatOut);return this._updateFormatOut("dz")}function liQ(A){if(!f.plainObject(A))throw f.invalidParameterError("options","object",A);if(f.integer(A.seconds)&&f.inRange(A.seconds,0,3600))this.options.timeoutSeconds=A.seconds;else throw f.invalidParameterError("seconds","integer between 0 and 3600",A.seconds);return this}function piQ(A,Q){if(!(f.object(Q)&&Q.force===!1))this.options.formatOut=A;return this}function iiQ(A,Q){if(f.bool(Q))this.options[A]=Q;else throw f.invalidParameterError(A,"boolean",Q)}function niQ(){if(!this.options.streamOut){this.options.streamOut=!0;let A=Error();this._pipeline(void 0,A)}}function siQ(A,Q){if(typeof A==="function"){if(this._isStreamInput())this.on("finish",()=>{this._flattenBufferIn(),CU.pipeline(this.options,(B,Y,J)=>{if(B)A(f.nativeError(B,Q));else A(null,Y,J)})});else CU.pipeline(this.options,(B,Y,J)=>{if(B)A(f.nativeError(B,Q));else A(null,Y,J)});return this}else if(this.options.streamOut){if(this._isStreamInput()){if(this.once("finish",()=>{this._flattenBufferIn(),CU.pipeline(this.options,(B,Y,J)=>{if(B)this.emit("error",f.nativeError(B,Q));else this.emit("info",J),this.push(Y);this.push(null),this.on("end",()=>this.emit("close"))})}),this.streamInFinished)this.emit("finish")}else CU.pipeline(this.options,(B,Y,J)=>{if(B)this.emit("error",f.nativeError(B,Q));else this.emit("info",J),this.push(Y);this.push(null),this.on("end",()=>this.emit("close"))});return this}else if(this._isStreamInput())return new Promise((B,Y)=>{this.once("finish",()=>{this._flattenBufferIn(),CU.pipeline(this.options,(J,C,X)=>{if(J)Y(f.nativeError(J,Q));else if(this.options.resolveWithObject)B({data:C,info:X});else B(C)})})});else return new Promise((B,Y)=>{CU.pipeline(this.options,(J,C,X)=>{if(J)Y(f.nativeError(J,Q));else if(this.options.resolveWithObject)B({data:C,info:X});else B(C)})})}u5A.exports=function(A){Object.assign(A.prototype,{toFile:qiQ,toBuffer:MiQ,keepExif:ziQ,withExif:RiQ,withExifMerge:wiQ,keepIccProfile:jiQ,withIccProfile:OiQ,keepXmp:PiQ,withXmp:TiQ,keepMetadata:SiQ,withMetadata:kiQ,toFormat:_iQ,jpeg:viQ,jp2:xiQ,png:yiQ,webp:giQ,tiff:fiQ,avif:biQ,heif:miQ,jxl:uiQ,gif:hiQ,raw:diQ,tile:ciQ,timeout:liQ,_updateFormatOut:piQ,_setBooleanOption:iiQ,_read:niQ,_pipeline:siQ})}});var i5A=R((p6Y,p5A)=>{var riQ=u("node:events"),P3=AH(),E5=g1(),{runtimePlatformArch:aiQ}=$h(),A9=XH(),c5A=aiQ(),Rh=A9.libvipsVersion(),$7=A9.format();$7.heif.output.alias=["avif","heic"];$7.jpeg.output.alias=["jpe","jpg"];$7.tiff.output.alias=["tif"];$7.jp2k.output.alias=["j2c","j2k","jp2","jpx"];var oiQ={nearest:"nearest",bilinear:"bilinear",bicubic:"bicubic",locallyBoundedBicubic:"lbb",nohalo:"nohalo",vertexSplitQuadraticBasisSpline:"vsqbs"},XU={vips:Rh.semver};if(!Rh.isGlobal)if(!Rh.isWasm)try{XU=u(`@img/sharp-${c5A}/versions`)}catch(A){try{XU=u(`@img/sharp-libvips-${c5A}/versions`)}catch(Q){}}else try{XU=(()=>{throw new Error("Cannot require module "+"@img/sharp-wasm32/versions");})()}catch(A){}XU.sharp=Fh().version;if(XU.heif&&$7.heif)$7.heif.input.fileSuffix=[".avif"],$7.heif.output.alias=["avif"];function l5A(A){if(E5.bool(A))if(A)return A9.cache(50,20,100);else return A9.cache(0,0,0);else if(E5.object(A))return A9.cache(A.memory,A.files,A.items);else return A9.cache()}l5A(!0);function tiQ(A){return A9.concurrency(E5.integer(A)?A:null)}if(P3.familySync()===P3.GLIBC&&!A9._isUsingJemalloc())A9.concurrency(1);else if(P3.familySync()===P3.MUSL&&A9.concurrency()===1024)A9.concurrency(u("node:os").availableParallelism());var eiQ=new riQ.EventEmitter;function AnQ(){return A9.counters()}function QnQ(A){return A9.simd(E5.bool(A)?A:null)}function BnQ(A){if(E5.object(A))if(Array.isArray(A.operation)&&A.operation.every(E5.string))A9.block(A.operation,!0);else throw E5.invalidParameterError("operation","Array",A.operation);else throw E5.invalidParameterError("options","object",A)}function YnQ(A){if(E5.object(A))if(Array.isArray(A.operation)&&A.operation.every(E5.string))A9.block(A.operation,!1);else throw E5.invalidParameterError("operation","Array",A.operation);else throw E5.invalidParameterError("options","object",A)}p5A.exports=function(A){A.cache=l5A,A.concurrency=tiQ,A.counters=AnQ,A.simd=QnQ,A.format=$7,A.interpolators=oiQ,A.versions=XU,A.queue=eiQ,A.block=BnQ,A.unblock=YnQ}});var s5A=R((n6Y,n5A)=>{var M6=a8A();e8A()(M6);C5A()(M6);G5A()(M6);U5A()(M6);g5A()(M6);x5A()(M6);d5A()(M6);i5A()(M6);n5A.exports=M6});var a5A=R((s6Y,r5A)=>{function JnQ(A,Q){var B=1,Y=A.length,J=A[0],C=A[0];for(var X=1;X{var GnQ=a5A();function o5A(A,Q,B){var Y=A.length,J=Q.arrayArgs.length,C=Q.indexArgs.length>0,X=[],G=[],W=0,F=0,Z,U;for(Z=0;Z0)X.push("var "+G.join(","));for(Z=Y-1;Z>=0;--Z)W=A[Z],X.push(["for(i",Z,"=0;i",Z,"0)X.push(["index[",F,"]-=s",F].join(""));X.push(["++index[",W,"]"].join(""))}X.push("}")}return X.join(` `)}function WnQ(A,Q,B,Y){var J=Q.length,C=B.arrayArgs.length,X=B.blockSize,G=B.indexArgs.length>0,W=[];for(var F=0;F0;){"].join("")),W.push(["if(j",F,"<",X,"){"].join("")),W.push(["s",Q[F],"=j",F].join("")),W.push(["j",F,"=0"].join("")),W.push(["}else{s",Q[F],"=",X].join("")),W.push(["j",F,"-=",X,"}"].join("")),G)W.push(["index[",Q[F],"]=j",F].join(""));for(var F=0;F{var KnQ=QCA();function VnQ(){this.argTypes=[],this.shimArgs=[],this.arrayArgs=[],this.arrayBlockIndices=[],this.scalarArgs=[],this.offsetArgs=[],this.offsetArgIndex=[],this.indexArgs=[],this.shapeArgs=[],this.funcName="",this.pre=null,this.body=null,this.post=null,this.debug=!1}function InQ(A){var Q=new VnQ;Q.pre=A.pre,Q.body=A.body,Q.post=A.post;var B=A.args.slice(0);Q.argTypes=B;for(var Y=0;Y0)throw Error("cwise: pre() block may not reference array args");if(Y0)throw Error("cwise: post() block may not reference array args")}else if(J==="scalar")Q.scalarArgs.push(Y),Q.shimArgs.push("scalar"+Y);else if(J==="index"){if(Q.indexArgs.push(Y),Y0)throw Error("cwise: pre() block may not reference array index");if(Y0)throw Error("cwise: post() block may not reference array index")}else if(J==="shape"){if(Q.shapeArgs.push(Y),YB.length)throw Error("cwise: Too many arguments in pre() block");if(Q.body.args.length>B.length)throw Error("cwise: Too many arguments in body() block");if(Q.post.args.length>B.length)throw Error("cwise: Too many arguments in post() block");return Q.debug=!!A.printCode||!!A.debug,Q.funcName=A.funcName||"cwise",Q.blockSize=A.blockSize||64,KnQ(Q)}BCA.exports=InQ});var ZCA=R((GY)=>{var v9=YCA(),T3={body:"",args:[],thisVars:[],localVars:[]};function jh(A){if(!A)return T3;for(var Q=0;Q>",rrshift:">>>"};(function(){for(var A in JCA){var Q=JCA[A];GY[A]=k0({args:["array","array","array"],body:{args:["a","b","c"],body:"a=b"+Q+"c"},funcName:A}),GY[A+"eq"]=k0({args:["array","array"],body:{args:["a","b"],body:"a"+Q+"=b"},rvalue:!0,funcName:A+"eq"}),GY[A+"s"]=k0({args:["array","array","scalar"],body:{args:["a","b","s"],body:"a=b"+Q+"s"},funcName:A+"s"}),GY[A+"seq"]=k0({args:["array","scalar"],body:{args:["a","s"],body:"a"+Q+"=s"},rvalue:!0,funcName:A+"seq"})}})();var CCA={not:"!",bnot:"~",neg:"-",recip:"1.0/"};(function(){for(var A in CCA){var Q=CCA[A];GY[A]=k0({args:["array","array"],body:{args:["a","b"],body:"a="+Q+"b"},funcName:A}),GY[A+"eq"]=k0({args:["array"],body:{args:["a"],body:"a="+Q+"a"},rvalue:!0,count:2,funcName:A+"eq"})}})();var XCA={and:"&&",or:"||",eq:"===",neq:"!==",lt:"<",gt:">",leq:"<=",geq:">="};(function(){for(var A in XCA){var Q=XCA[A];GY[A]=k0({args:["array","array","array"],body:{args:["a","b","c"],body:"a=b"+Q+"c"},funcName:A}),GY[A+"s"]=k0({args:["array","array","scalar"],body:{args:["a","b","s"],body:"a=b"+Q+"s"},funcName:A+"s"}),GY[A+"eq"]=k0({args:["array","array"],body:{args:["a","b"],body:"a=a"+Q+"b"},rvalue:!0,count:2,funcName:A+"eq"}),GY[A+"seq"]=k0({args:["array","scalar"],body:{args:["a","s"],body:"a=a"+Q+"s"},rvalue:!0,count:2,funcName:A+"seq"})}})();var GCA=["abs","acos","asin","atan","ceil","cos","exp","floor","log","round","sin","sqrt","tan"];(function(){for(var A=0;Athis_s){this_s=-a}else if(a>this_s){this_s=a}",localVars:[],thisVars:["this_s"]},post:{args:[],localVars:[],thisVars:["this_s"],body:"return this_s"},funcName:"norminf"});GY.norm1=v9({args:["array"],pre:{args:[],localVars:[],thisVars:["this_s"],body:"this_s=0"},body:{args:[{name:"a",lvalue:!1,rvalue:!0,count:3}],body:"this_s+=a<0?-a:a",localVars:[],thisVars:["this_s"]},post:{args:[],localVars:[],thisVars:["this_s"],body:"return this_s"},funcName:"norm1"});GY.sup=v9({args:["array"],pre:{body:"this_h=-Infinity",args:[],thisVars:["this_h"],localVars:[]},body:{body:"if(_inline_1_arg0_>this_h)this_h=_inline_1_arg0_",args:[{name:"_inline_1_arg0_",lvalue:!1,rvalue:!0,count:2}],thisVars:["this_h"],localVars:[]},post:{body:"return this_h",args:[],thisVars:["this_h"],localVars:[]}});GY.inf=v9({args:["array"],pre:{body:"this_h=Infinity",args:[],thisVars:["this_h"],localVars:[]},body:{body:"if(_inline_1_arg0_this_v){this_v=_inline_1_arg1_;for(var _inline_1_k=0;_inline_1_k<_inline_1_arg0_.length;++_inline_1_k){this_i[_inline_1_k]=_inline_1_arg0_[_inline_1_k]}}}",args:[{name:"_inline_1_arg0_",lvalue:!1,rvalue:!0,count:2},{name:"_inline_1_arg1_",lvalue:!1,rvalue:!0,count:2}],thisVars:["this_i","this_v"],localVars:["_inline_1_k"]},post:{body:"{return this_i}",args:[],thisVars:["this_i"],localVars:[]}});GY.random=k0({args:["array"],pre:{args:[],body:"this_f=Math.random",thisVars:["this_f"]},body:{args:["a"],body:"a=this_f()",thisVars:["this_f"]},funcName:"random"});GY.assign=k0({args:["array","array"],body:{args:["a","b"],body:"a=b"},funcName:"assign"});GY.assigns=k0({args:["array","scalar"],body:{args:["a","b"],body:"a=b"},funcName:"assigns"});GY.equals=v9({args:["array","array"],pre:T3,body:{args:[{name:"x",lvalue:!1,rvalue:!0,count:1},{name:"y",lvalue:!1,rvalue:!0,count:1}],body:"if(x!==y){return false}",localVars:[],thisVars:[]},post:{args:[],localVars:[],thisVars:[],body:"return true"},funcName:"equals"})});var J1A=R((EH,dh)=>{var u3=function(){var A="b9H79Tebbbe9ok9Geueu9Geub9Gbb9Gruuuuuuueu9Gvuuuuueu9Gduueu9Gluuuueu9Gvuuuuub9Gouuuuuub9Gluuuub9Giuuueui8AYdilveoveovrrwrrDDoDrbqqbelve9Weiiviebeoweuec;G:Qdkr:nlAo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bb8F9TW79O9V9Wt9FW9U9J9V9KW9wWVtW949c919M9MWV9mW4W2be8A9TW79O9V9Wt9FW9U9J9V9KW9wWVtW949c919M9MWVbd8F9TW79O9V9Wt9FW9U9J9V9KW9wWVtW949c919M9MWV9c9V919U9KbiE9TW79O9V9Wt9FW9U9J9V9KW9wWVtW949wWV79P9V9UblY9TW79O9V9Wt9FW9U9J9V9KW69U9KW949c919M9MWVbv8E9TW79O9V9Wt9FW9U9J9V9KW69U9KW949c919M9MWV9c9V919U9Kbo8A9TW79O9V9Wt9FW9U9J9V9KW69U9KW949wWV79P9V9UbrE9TW79O9V9Wt9FW9U9J9V9KW69U9KW949tWG91W9U9JWbwa9TW79O9V9Wt9FW9U9J9V9KW69U9KW949tWG91W9U9JW9c9V919U9KbDL9TW79O9V9Wt9FW9U9J9V9KWS9P2tWV9p9JtbqK9TW79O9V9Wt9FW9U9J9V9KWS9P2tWV9r919HtbkL9TW79O9V9Wt9FW9U9J9V9KWS9P2tWVT949WbxE9TW79O9V9Wt9F9V9Wt9P9T9P96W9wWVtW94J9H9J9OWbsa9TW79O9V9Wt9F9V9Wt9P9T9P96W9wWVtW94J9H9J9OW9ttV9P9Wbza9TW79O9V9Wt9F9V9Wt9P9T9P96W9wWVtW94SWt9J9O9sW9T9H9WbHK9TW79O9V9Wt9F79W9Ht9P9H29t9VVt9sW9T9H9WbOl79IV9RbCDwebcekdKLqN9OYdbk:Bhdhud9:8Jjjjjbc;qw9Rgr8KjjjjbcbhwdnaeTmbabcbyd;C:kjjbaoaocb9iEgDc:GeV86bbarc;adfcbcjdz:wjjjb8AdnaiTmbarc;adfadalz:vjjjb8Akarc;abfalfcbcbcjdal9RalcFe0Ez:wjjjb8Aarc;abfarc;adfalz:vjjjb8AarcUf9cb83ibarc8Wf9cb83ibarcyf9cb83ibarcaf9cb83ibarcKf9cb83ibarczf9cb83ibar9cb83iwar9cb83ibcj;abal9Uc;WFbGcjdalca0Ehqdnaicd6mbavcd9imbaDTmbadcefhkaqci2gxal2hmarc;alfclfhParc;qlfceVhsarc;qofclVhzarc;qofcKfhHarc;qofczfhOcbhAincdhCcbhodnavci6mbaH9cb83ibaO9cb83ibar9cb83i;yoar9cb83i;qoadaAfgoybbhXcbhQincbhwcbhLdninaoalfhKaoybbgYaX7aLVhLawcP0meaKhoaYhXawcefgwaQfai6mbkkcbhXarc;qofhwincwh8AcwhEdnaLaX93gocFeGg3cs0mbclhEa3ci0mba3cb9hcethEkdnaocw4cFeGg3cs0mbclh8Aa3ci0mba3cb9hceth8Aka8AaEfh3awydbh5cwh8AcwhEdnaocz4cFeGg8Ecs0mbclhEa8Eci0mba8Ecb9hcethEka3a5fh3dnaocFFFFb0mbclh8AaocFFF8F0mbaocFFFr0ceth8Akawa3aEfa8AfBdbawclfhwaXcefgXcw9hmbkaKhoaYhXaQczfgQai6mbkcbhocehwazhLinawaoaLydbarc;qofaocdtfydb6EhoaLclfhLawcefgwcw9hmbkcihCkcbh3arc;qlfcbcjdz:wjjjb8Aarc;alfcwfcbBdbar9cb83i;alaoclth8Fadhaaqhhakh5inarc;qlfadcba3cufgoaoa30Eal2falz:vjjjb8Aaiahaiah6Ehgdnaqaia39Ra3aqfai6EgYcsfc9WGgoaY9nmbarc;qofaYfcbaoaY9Rz:wjjjb8Akada3al2fh8Jcbh8Kina8Ka8FVcl4hQarc;alfa8Kcdtfh8LaAh8Mcbh8Nina8NaAfhwdndndndndndna8KPldebidkasa8Mc98GgLfhoa5aLfh8Aarc;qlfawc98GgLfRbbhXcwhwinaoRbbawtaXVhXaocefhoawcwfgwca9hmbkaYTmla8Ncith8Ea8JaLfhEcbhKinaERbbhLcwhoa8AhwinawRbbaotaLVhLawcefhwaocwfgoca9hmbkarc;qofaKfaLaX7aQ93a8E486bba8Aalfh8AaEalfhEaLhXaKcefgKaY9hmbxlkkaYTmia8Mc9:Ghoa8NcitcwGhEarc;qlfawceVfRbbcwtarc;qlfawc9:GfRbbVhLarc;qofhwaghXinawa5aofRbbcwtaaaofRbbVg8AaL9RgLcetaLcztcz91cs47cFFiGaE486bbaoalfhoawcefhwa8AhLa3aXcufgX9hmbxikkaYTmda8Jawfhoarc;qlfawfRbbhLarc;qofhwaghXinawaoRbbg8AaL9RgLcetaLcKtcK91cr4786bbawcefhwaoalfhoa8AhLa3aXcufgX9hmbxdkkaYTmeka8LydbhEcbhKarc;qofhoincdhLcbhwinaLaoawfRbbcb9hfhLawcefgwcz9hmbkclhXcbhwinaXaoawfRbbcd0fhXawcefgwcz9hmbkcwh8Acbhwina8AaoawfRbbcP0fh8Aawcefgwcz9hmbkaLaXaLaX6Egwa8Aawa8A6Egwczawcz6EaEfhEaoczfhoaKczfgKaY6mbka8LaEBdbka8Mcefh8Ma8Ncefg8Ncl9hmbka8Kcefg8KaC9hmbkaaamfhaahaxfhha5amfh5a3axfg3ai6mbkcbhocehwaPhLinawaoaLydbarc;alfaocdtfydb6EhoaLclfhLawcefgXhwaCaX9hmbkaraAcd4fa8FcdVaoaocdSE86bbaAclfgAal6mbkkabaefh8Kabcefhoalcd4gecbaDEhkadcefhOarc;abfceVhHcbhmdndninaiam9nmearc;qofcbcjdz:wjjjb8Aa8Kao9Rak6mdadamal2gwfhxcbh8JaOawfhzaocbakz:wjjjbghakfh5aqaiam9Ramaqfai6Egscsfgocl4cifcd4hCaoc9WGg8LThPindndndndndndndndndndnaDTmbara8Jcd4fRbbgLciGPlbedlbkasTmdaxa8Jfhoarc;abfa8JfRbbhLarc;qofhwashXinawaoRbbg8AaL9RgLcetaLcKtcK91cr4786bbawcefhwaoalfhoa8AhLaXcufgXmbxikkasTmia8JcitcwGhEarc;abfa8JceVfRbbcwtarc;abfa8Jc9:GgofRbbVhLaxaofhoarc;qofhwashXinawao8Vbbg8AaL9RgLcetaLcztcz91cs47cFFiGaE486bbawcefhwaoalfhoa8AhLaXcufgXmbxdkkaHa8Jc98GgEfhoazaEfh8Aarc;abfaEfRbbhXcwhwinaoRbbawtaXVhXaocefhoawcwfgwca9hmbkasTmbaLcl4hYa8JcitcKGh3axaEfhEcbhKinaERbbhLcwhoa8AhwinawRbbaotaLVhLawcefhwaocwfgoca9hmbkarc;qofaKfaLaX7aY93a3486bba8Aalfh8AaEalfhEaLhXaKcefgKas9hmbkkaDmbcbhoxlka8LTmbcbhodninarc;qofaofgwcwf8Pibaw8Pib:e9qTmeaoczfgoa8L9pmdxbkkdnavmbcehoxikcbhEaChKaChYinarc;qofaEfgocwf8Pibhyao8Pibh8PcdhLcbhwinaLaoawfRbbcb9hfhLawcefgwcz9hmbkclhXcbhwinaXaoawfRbbcd0fhXawcefgwcz9hmbkcwh8Acbhwina8AaoawfRbbcP0fh8Aawcefgwcz9hmbkaLaXaLaX6Egoa8Aaoa8A6Egoczaocz6EaYfhYaocucbaya8P:e9cb9sEgwaoaw6EaKfhKaEczfgEa8L9pmdxbkkaha8Jcd4fgoaoRbbcda8JcetcoGtV86bbxikdnaKas6mbaYas6mbaha8Jcd4fgoaoRbbcia8JcetcoGtV86bba8Ka59Ras6mra5arc;qofasz:vjjjbasfh5xikaKaY9phokaha8Jcd4fgwawRbbaoa8JcetcoGtV86bbka8Ka59RaC6mla5cbaCz:wjjjbgAaCfhYdndna8LmbaPhoxekdna8KaY9RcK9pmbaPhoxekaocdtc:q1jjbfcj1jjbaDEg5ydxggcetc;:FFFeGh8Fcuh3cuagtcu7cFeGhacbh8Marc;qofhLinarc;qofa8MfhQczhEdndndnagPDbeeeeeeedekcucbaQcwf8PibaQ8Pib:e9cb9sEhExekcbhoa8FhEinaEaaaLaofRbb9nfhEaocefgocz9hmbkkcih8Ecbh8Ainczhwdndndna5a8AcdtfydbgKPDbeeeeeeedekcucbaQcwf8PibaQ8Pib:e9cb9sEhwxekaKcetc;:FFFeGhwcuaKtcu7cFeGhXcbhoinawaXaLaofRbb9nfhwaocefgocz9hmbkkdndnawaE6mbaKa39hmeawaE9hmea5a8EcdtfydbcwSmeka8Ah8EawhEka8Acefg8Aci9hmbkaAa8Mco4fgoaoRbba8Ea8Mci4coGtV86bbdndndna5a8Ecdtfydbg3PDdbbbbbbbebkdncwa39Tg8ETmbcua3tcu7hwdndna3ceSmbcbh8NaLhQinaQhoa8Eh8AcbhXinaoRbbgEawcFeGgKaEaK6EaXa3tVhXaocefhoa8Acufg8AmbkaYaX86bbaQa8EfhQaYcefhYa8Na8Efg8Ncz6mbxdkkcbh8NaLhQinaQhoa8Eh8AcbhXinaoRbbgEawcFeGgKaEaK6EaXcetVhXaocefhoa8Acufg8AmbkaYaX:T9cFe:d9c:c:qj:bw9:9c:q;c1:I1e:d9c:b:c:e1z9:9ca188bbaQa8EfhQaYcefhYa8Na8Efg8Ncz6mbkkcbhoinaYaLaofRbbgX86bbaYaXawcFeG9pfhYaocefgocz9hmbxikkdna3ceSmbinaYcb86bbaYcefhYxbkkinaYcb86bbaYcefhYxbkkaYaQ8Pbb83bbaYcwfaQcwf8Pbb83bbaYczfhYka8Mczfg8Ma8L9pgomeaLczfhLa8KaY9RcK9pmbkkaoTmlaYh5aYTmlka8Jcefg8Jal9hmbkarc;abfaxascufal2falz:vjjjb8Aasamfhma5hoa5mbkcbhwxdkdna8Kao9RakalfgwcKcaaDEgLawaL0EgX9pmbcbhwxdkdnawaL9pmbaocbaXaw9Rgwz:wjjjbawfhokaoarc;adfalz:vjjjbalfhodnaDTmbaoaraez:vjjjbaefhokaoab9Rhwxekcbhwkarc;qwf8Kjjjjbawk5babaeadaialcdcbyd;C:kjjbz:bjjjbk9reduaecd4gdaefgicaaica0Eabcj;abae9Uc;WFbGcjdaeca0Egifcufai9Uae2aiadfaicl4cifcd4f2fcefkmbcbabBd;C:kjjbk:Ese5u8Jjjjjbc;ae9Rgl8Kjjjjbcbhvdnaici9UgocHfae0mbabcbyd;m:kjjbgrc;GeV86bbalc;abfcFecjez:wjjjb8AalcUfgw9cu83ibalc8WfgD9cu83ibalcyfgq9cu83ibalcafgk9cu83ibalcKfgx9cu83ibalczfgm9cu83ibal9cu83iwal9cu83ibabaefc9WfhPabcefgsaofhednaiTmbcmcsarcb9kgzEhHcbhOcbhAcbhCcbhXcbhQindnaeaP9nmbcbhvxikaQcufhvadaCcdtfgLydbhKaLcwfydbhYaLclfydbh8AcbhEdndndninalc;abfavcsGcitfgoydlh3dndndnaoydbgoaK9hmba3a8ASmekdnaoa8A9hmba3aY9hmbaEcefhExekaoaY9hmea3aK9hmeaEcdfhEkaEc870mdaXcufhvaLaEciGcx2goc;i1jjbfydbcdtfydbh3aLaoc;e1jjbfydbcdtfydbh8AaLaoc;a1jjbfydbcdtfydbhKcbhodnindnalavcsGcdtfydba39hmbaohYxdkcuhYavcufhvaocefgocz9hmbkkaOa3aOSgvaYce9iaYaH9oVgoGfhOdndndncbcsavEaYaoEgvcs9hmbarce9imba3a3aAa3cefaASgvEgAcefSmecmcsavEhvkasavaEcdtc;WeGV86bbavcs9hmea3aA9Rgvcetavc8F917hvinaeavcFb0crtavcFbGV86bbaecefheavcje6hoavcr4hvaoTmbka3hAxvkcPhvasaEcdtcPV86bba3hAkavTmiavaH9omicdhocehEaQhYxlkavcufhvaEclfgEc;ab9hmbkkdnaLceaYaOSceta8AaOSEcx2gvc;a1jjbfydbcdtfydbgKTaLavc;e1jjbfydbcdtfydbg8AceSGaLavc;i1jjbfydbcdtfydbg3cdSGaOcb9hGazGg5ce9hmbaw9cu83ibaD9cu83ibaq9cu83ibak9cu83ibax9cu83ibam9cu83ibal9cu83iwal9cu83ibcbhOkcbhEaXcufgvhodnindnalaocsGcdtfydba8A9hmbaEhYxdkcuhYaocufhoaEcefgEcz9hmbkkcbhodnindnalavcsGcdtfydba39hmbaohExdkcuhEavcufhvaocefgocz9hmbkkaOaKaOSg8EfhLdndnaYcm0mbaYcefhYxekcbcsa8AaLSgvEhYaLavfhLkdndnaEcm0mbaEcefhExekcbcsa3aLSgvEhEaLavfhLkc9:cua8EEh8FcbhvaEaYcltVgacFeGhodndndninavc:W1jjbfRbbaoSmeavcefgvcz9hmbxdkka5aKaO9havcm0VVmbasavc;WeV86bbxekasa8F86bbaeaa86bbaecefhekdna8EmbaKaA9Rgvcetavc8F917hvinaeavcFb0gocrtavcFbGV86bbavcr4hvaecefheaombkaKhAkdnaYcs9hmba8AaA9Rgvcetavc8F917hvinaeavcFb0gocrtavcFbGV86bbavcr4hvaecefheaombka8AhAkdnaEcs9hmba3aA9Rgvcetavc8F917hvinaeavcFb0gocrtavcFbGV86bbavcr4hvaecefheaombka3hAkalaXcdtfaKBdbaXcefcsGhvdndnaYPzbeeeeeeeeeeeeeebekalavcdtfa8ABdbaXcdfcsGhvkdndnaEPzbeeeeeeeeeeeeeebekalavcdtfa3BdbavcefcsGhvkcihoalc;abfaQcitfgEaKBdlaEa8ABdbaQcefcsGhYcdhEavhXaLhOxekcdhoalaXcdtfa3BdbcehEaXcefcsGhXaQhYkalc;abfaYcitfgva8ABdlava3Bdbalc;abfaQaEfcsGcitfgva3BdlavaKBdbascefhsaQaofcsGhQaCcifgCai6mbkkdnaeaP9nmbcbhvxekcbhvinaeavfavc:W1jjbfRbb86bbavcefgvcz9hmbkaeab9Ravfhvkalc;aef8KjjjjbavkZeeucbhddninadcefgdc8F0meceadtae6mbkkadcrfcFeGcr9Uci2cdfabci9U2cHfkmbcbabBd;m:kjjbk:Adewu8Jjjjjbcz9Rhlcbhvdnaicvfae0mbcbhvabcbRb;m:kjjbc;qeV86bbal9cb83iwabcefhoabaefc98fhrdnaiTmbcbhwcbhDindnaoar6mbcbskadaDcdtfydbgqalcwfawaqav9Rgvavc8F91gv7av9Rc507gwcdtfgkydb9Rgvc8E91c9:Gavcdt7awVhvinaoavcFb0gecrtavcFbGV86bbavcr4hvaocefhoaembkakaqBdbaqhvaDcefgDai9hmbkkdnaoar9nmbcbskaocbBbbaoab9RclfhvkavkBeeucbhddninadcefgdc8F0meceadtae6mbkkadcwfcFeGcr9Uab2cvfk:bvli99dui99ludnaeTmbcuadcetcuftcu7:Zhvdndncuaicuftcu7:ZgoJbbbZMgr:lJbbb9p9DTmbar:Ohwxekcjjjj94hwkcbhicbhDinalclfIdbgrJbbbbJbbjZalIdbgq:lar:lMalcwfIdbgk:lMgr:varJbbbb9BEgrNhxaqarNhrdndnakJbbbb9GTmbaxhqxekJbbjZar:l:tgqaq:maxJbbbb9GEhqJbbjZax:l:tgxax:marJbbbb9GEhrkdndnalcxfIdbgxJbbj:;axJbbj:;9GEgkJbbjZakJbbjZ9FEavNJbbbZJbbb:;axJbbbb9GEMgx:lJbbb9p9DTmbax:Ohmxekcjjjj94hmkdndnaqJbbj:;aqJbbj:;9GEgxJbbjZaxJbbjZ9FEaoNJbbbZJbbb:;aqJbbbb9GEMgq:lJbbb9p9DTmbaq:OhPxekcjjjj94hPkdndnarJbbj:;arJbbj:;9GEgqJbbjZaqJbbjZ9FEaoNJbbbZJbbb:;arJbbbb9GEMgr:lJbbb9p9DTmbar:Ohsxekcjjjj94hskdndnadcl9hmbabaifgzas86bbazcifam86bbazcdfaw86bbazcefaP86bbxekabaDfgzas87ebazcofam87ebazclfaw87ebazcdfaP87ebkalczfhlaiclfhiaDcwfhDaecufgembkkk;hlld99eud99eudnaeTmbdndncuaicuftcu7:ZgvJbbbZMgo:lJbbb9p9DTmbao:Ohixekcjjjj94hikaic;8FiGhrinabcofcicdalclfIdb:lalIdb:l9EgialcwfIdb:lalaicdtfIdb:l9EEgialcxfIdb:lalaicdtfIdb:l9EEgiarV87ebdndnJbbj:;JbbjZalaicdtfIdbJbbbb9DEgoalaicd7cdtfIdbJ;Zl:1ZNNgwJbbj:;awJbbj:;9GEgDJbbjZaDJbbjZ9FEavNJbbbZJbbb:;awJbbbb9GEMgw:lJbbb9p9DTmbaw:Ohqxekcjjjj94hqkabcdfaq87ebdndnalaicefciGcdtfIdbJ;Zl:1ZNaoNgwJbbj:;awJbbj:;9GEgDJbbjZaDJbbjZ9FEavNJbbbZJbbb:;awJbbbb9GEMgw:lJbbb9p9DTmbaw:Ohqxekcjjjj94hqkabaq87ebdndnaoalaicufciGcdtfIdbJ;Zl:1ZNNgoJbbj:;aoJbbj:;9GEgwJbbjZawJbbjZ9FEavNJbbbZJbbb:;aoJbbbb9GEMgo:lJbbb9p9DTmbao:Ohixekcjjjj94hikabclfai87ebabcwfhbalczfhlaecufgembkkk;3viDue99eu8Jjjjjbcjd9Rgo8Kjjjjbadcd4hrdndndndnavcd9hmbadcl6meaohwarhDinawc:CuBdbawclfhwaDcufgDmbkaeTmiadcl6mdarcdthqalhkcbhxinaohwakhDarhminawawydbgPcbaDIdbgs:8cL4cFeGc:cufasJbbbb9BEgzaPaz9kEBdbaDclfhDawclfhwamcufgmmbkakaqfhkaxcefgxaeSmixbkkaeTmdxekaeTmekarcdthkavce9hhqadcl6hdcbhxindndndnaqmbadmdc:CuhDalhwarhminaDcbawIdbgs:8cL4cFeGc:cufasJbbbb9BEgPaDaP9kEhDawclfhwamcufgmmbxdkkc:CuhDdndnavPleddbdkadmdaohwalhmarhPinawcbamIdbgs:8cL4cFeGgzc;:bazc;:b0Ec:cufasJbbbb9BEBdbamclfhmawclfhwaPcufgPmbxdkkadmecbhwarhminaoawfcbalawfIdbgs:8cL4cFeGgPc8AaPc8A0Ec:cufasJbbbb9BEBdbawclfhwamcufgmmbkkadmbcbhwarhPinaDhmdnavceSmbaoawfydbhmkdndnalawfIdbgscjjj;8iamai9RcefgmcLt9R::NJbbbZJbbb:;asJbbbb9GEMgs:lJbbb9p9DTmbas:Ohzxekcjjjj94hzkabawfazcFFFrGamcKtVBdbawclfhwaPcufgPmbkkabakfhbalakfhlaxcefgxae9hmbkkaocjdf8Kjjjjbk;YqdXui998Jjjjjbc:qd9Rgv8Kjjjjbavc:Sefcbc;Kbz:wjjjb8AcbhodnadTmbcbhoaiTmbdndnabaeSmbaehrxekavcuadcdtgwadcFFFFi0Ecbyd;u:kjjbHjjjjbbgrBd:SeavceBd:mdaraeawz:vjjjb8Akavc:GefcwfcbBdbav9cb83i:Geavc:Gefaradaiavc:Sefz:ojjjbavyd:GehDadci9Ugqcbyd;u:kjjbHjjjjbbheavc:Sefavyd:mdgkcdtfaeBdbavakcefgwBd:mdaecbaqz:wjjjbhxavc:SefawcdtfcuaicdtaicFFFFi0Ecbyd;u:kjjbHjjjjbbgmBdbavakcdfgPBd:mdalc;ebfhsaDheamhwinawalIdbasaeydbgzcwazcw6EcdtfIdbMUdbaeclfheawclfhwaicufgimbkavc:SefaPcdtfcuaqcdtadcFFFF970Ecbyd;u:kjjbHjjjjbbgPBdbdnadci6mbarheaPhwaqhiinawamaeydbcdtfIdbamaeclfydbcdtfIdbMamaecwfydbcdtfIdbMUdbaecxfheawclfhwaicufgimbkkakcifhoalc;ebfhHavc;qbfhOavheavyd:KehAavyd:OehCcbhzcbhwcbhXcehQinaehLcihkarawci2gKcdtfgeydbhsaeclfydbhdabaXcx2fgicwfaecwfydbgYBdbaiclfadBdbaiasBdbaxawfce86bbaOaYBdwaOadBdlaOasBdbaPawcdtfcbBdbdnazTmbcihkaLhiinaOakcdtfaiydbgeBdbakaeaY9haeas9haead9hGGfhkaiclfhiazcufgzmbkkaXcefhXcbhzinaCaAarazaKfcdtfydbcdtgifydbcdtfgYheaDaifgdydbgshidnasTmbdninaeydbawSmeaeclfheaicufgiTmdxbkkaeaYascdtfc98fydbBdbadadydbcufBdbkazcefgzci9hmbkdndnakTmbcuhwJbbbbh8Acbhdavyd:KehYavyd:OehKindndnaDaOadcdtfydbcdtgzfydbgembadcefhdxekadcs0hiamazfgsIdbhEasalcbadcefgdaiEcdtfIdbaHaecwaecw6EcdtfIdbMg3Udba3aE:th3aecdthiaKaYazfydbcdtfheinaPaeydbgzcdtfgsa3asIdbMgEUdbaEa8Aa8AaE9DgsEh8AazawasEhwaeclfheaic98fgimbkkadak9hmbkawcu9hmekaQaq9pmdindnaxaQfRbbmbaQhwxdkaqaQcefgQ9hmbxikkakczakcz6EhzaOheaLhOawcu9hmbkkaocdtavc:Seffc98fhedninaoTmeaeydbcbyd;q:kjjbH:bjjjbbaec98fheaocufhoxbkkavc:qdf8Kjjjjbk;IlevucuaicdtgvaicFFFFi0Egocbyd;u:kjjbHjjjjbbhralalyd9GgwcdtfarBdbalawcefBd9GabarBdbaocbyd;u:kjjbHjjjjbbhralalyd9GgocdtfarBdbalaocefBd9GabarBdlcuadcdtadcFFFFi0Ecbyd;u:kjjbHjjjjbbhralalyd9GgocdtfarBdbalaocefBd9GabarBdwabydbcbavz:wjjjb8Aadci9UhDdnadTmbabydbhoaehladhrinaoalydbcdtfgvavydbcefBdbalclfhlarcufgrmbkkdnaiTmbabydbhlabydlhrcbhvaihoinaravBdbarclfhralydbavfhvalclfhlaocufgombkkdnadci6mbabydlhrabydwhvcbhlinaecwfydbhoaeclfydbhdaraeydbcdtfgwawydbgwcefBdbavawcdtfalBdbaradcdtfgdadydbgdcefBdbavadcdtfalBdbaraocdtfgoaoydbgocefBdbavaocdtfalBdbaecxfheaDalcefgl9hmbkkdnaiTmbabydlheabydbhlinaeaeydbalydb9RBdbalclfhlaeclfheaicufgimbkkkQbabaeadaic;K1jjbz:njjjbkQbabaeadaic;m:jjjbz:njjjbk9DeeuabcFeaicdtz:wjjjbhlcbhbdnadTmbindnalaeydbcdtfgiydbcu9hmbaiabBdbabcefhbkaeclfheadcufgdmbkkabk:Vvioud9:du8Jjjjjbc;Wa9Rgl8Kjjjjbcbhvalcxfcbc;Kbz:wjjjb8AalcuadcitgoadcFFFFe0Ecbyd;u:kjjbHjjjjbbgrBdxalceBd2araeadaicez:tjjjbalcuaoadcjjjjoGEcbyd;u:kjjbHjjjjbbgwBdzadcdthednadTmbabhiinaiavBdbaiclfhiadavcefgv9hmbkkawaefhDalabBdwalawBdl9cbhqindnadTmbaq9cq9:hkarhvaDhiadheinaiav8Pibak1:NcFrG87ebavcwfhvaicdfhiaecufgembkkalclfaq:NceGcdtfydbhxalclfaq9ce98gq:NceGcdtfydbhmalc;Wbfcbcjaz:wjjjb8AaDhvadhidnadTmbinalc;Wbfav8VebcdtfgeaeydbcefBdbavcdfhvaicufgimbkkcbhvcbhiinalc;WbfavfgeydbhoaeaiBdbaoaifhiavclfgvcja9hmbkadhvdndnadTmbinalc;WbfaDamydbgicetf8VebcdtfgeaeydbgecefBdbaxaecdtfaiBdbamclfhmavcufgvmbkaq9cv9smdcbhvinabawydbcdtfavBdbawclfhwadavcefgv9hmbxdkkaq9cv9smekkclhvdninavc98Smealcxfavfydbcbyd;q:kjjbH:bjjjbbavc98fhvxbkkalc;Waf8Kjjjjbk:Jwliuo99iud9:cbhv8Jjjjjbca9Rgoczfcwfcbyd:8:kjjbBdbaocb8Pd:0:kjjb83izaocwfcbyd;i:kjjbBdbaocb8Pd;a:kjjb83ibaicd4hrdndnadmbJFFuFhwJFFuuhDJFFuuhqJFFuFhkJFFuuhxJFFuFhmxekarcdthPaehsincbhiinaoczfaifgzasaifIdbgwazIdbgDaDaw9EEUdbaoaifgzawazIdbgDaDaw9DEUdbaiclfgicx9hmbkasaPfhsavcefgvad9hmbkaoIdKhDaoIdwhwaoIdChqaoIdlhkaoIdzhxaoIdbhmkdnadTmbJbbbbJbFu9hJbbbbamax:tgmamJbbbb9DEgmakaq:tgkakam9DEgkawaD:tgwawak9DEgw:vawJbbbb9BEhwdnalmbarcdthoindndnaeclfIdbaq:tawNJbbbZMgk:lJbbb9p9DTmbak:Ohixekcjjjj94hikai:S9cC:ghHdndnaeIdbax:tawNJbbbZMgk:lJbbb9p9DTmbak:Ohixekcjjjj94hikaHai:S:ehHdndnaecwfIdbaD:tawNJbbbZMgk:lJbbb9p9DTmbak:Ohixekcjjjj94hikabaHai:T9cy:g:e83ibaeaofheabcwfhbadcufgdmbxdkkarcdthoindndnaeIdbax:tawNJbbbZMgk:lJbbb9p9DTmbak:Ohixekcjjjj94hikai:SgH9ca:gaH9cz:g9cjjj;4s:d:eaH9cFe:d:e9cF:bj;4:pj;ar:d9c:bd9:9c:p;G:d;4j:E;ar:d9cH9:9c;d;H:W:y:m:g;d;Hb:d9cv9:9c;j:KM;j:KM;j:Kd:dhOdndnaeclfIdbaq:tawNJbbbZMgk:lJbbb9p9DTmbak:Ohixekcjjjj94hikai:SgH9ca:gaH9cz:g9cjjj;4s:d:eaH9cFe:d:e9cF:bj;4:pj;ar:d9c:bd9:9c:p;G:d;4j:E;ar:d9cH9:9c;d;H:W:y:m:g;d;Hb:d9cq9:9cM;j:KM;j:KM;jl:daO:ehOdndnaecwfIdbaD:tawNJbbbZMgk:lJbbb9p9DTmbak:Ohixekcjjjj94hikabaOai:SgH9ca:gaH9cz:g9cjjj;4s:d:eaH9cFe:d:e9cF:bj;4:pj;ar:d9c:bd9:9c:p;G:d;4j:E;ar:d9cH9:9c;d;H:W:y:m:g;d;Hb:d9cC9:9c:KM;j:KM;j:KMD:d:e83ibaeaofheabcwfhbadcufgdmbkkk9teiucbcbyd;y:kjjbgeabcifc98GfgbBd;y:kjjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik;teeeudndnaeabVciGTmbabhixekdndnadcz9pmbabhixekabhiinaiaeydbBdbaiaeydlBdlaiaeydwBdwaiaeydxBdxaeczfheaiczfhiadc9Wfgdcs0mbkkadcl6mbinaiaeydbBdbaeclfheaiclfhiadc98fgdci0mbkkdnadTmbinaiaeRbb86bbaicefhiaecefheadcufgdmbkkabk:3eedudndnabciGTmbabhixekaecFeGc:b:c:ew2hldndnadcz9pmbabhixekabhiinaialBdxaialBdwaialBdlaialBdbaiczfhiadc9Wfgdcs0mbkkadcl6mbinaialBdbaiclfhiadc98fgdci0mbkkdnadTmbinaiae86bbaicefhiadcufgdmbkkabk9teiucbcbyd;y:kjjbgeabcrfc94GfgbBd;y:kjjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik9:eiuZbhedndncbyd;y:kjjbgdaecztgi9nmbcuheadai9RcFFifcz4nbcuSmekadhekcbabae9Rcifc98Gcbyd;y:kjjbfgdBd;y:kjjbdnadZbcztge9nmbadae9RcFFifcz4nb8Akkk;Qddbcjwk;mdbbbbdbbblbbbwbbbbbbbebbbdbbblbbbwbbbbbbbbbbbbbbbb4:h9w9N94:P:gW:j9O:ye9Pbbbbbbebbbdbbbebbbdbbbbbbbdbbbbbbbebbbbbbb:l29hZ;69:9kZ;N;76Z;rg97Z;z;o9xZ8J;B85Z;:;u9yZ;b;k9HZ:2;Z9DZ9e:l9mZ59A8KZ:r;T3Z:A:zYZ79OHZ;j4::8::Y:D9V8:bbbb9s:49:Z8R:hBZ9M9M;M8:L;z;o8:;8:PG89q;x:J878R:hQ8::M:B;e87bbbbbbjZbbjZbbjZ:E;V;N8::Y:DsZ9i;H;68:xd;R8:;h0838:;W:NoZbbbb:WV9O8:uf888:9i;H;68:9c9G;L89;n;m9m89;D8Ko8:bbbbf:8tZ9m836ZS:2AZL;zPZZ818EZ9e:lxZ;U98F8:819E;68:FFuuFFuuFFuuFFuFFFuFFFuFbc;mqkzebbbebbbdbbb9G:vbb",Q=new Uint8Array([32,0,65,2,1,106,34,33,3,128,11,4,13,64,6,253,10,7,15,116,127,5,8,12,40,16,19,54,20,9,27,255,113,17,42,67,24,23,146,148,18,14,22,45,70,69,56,114,101,21,25,63,75,136,108,28,118,29,73,115]);if(typeof WebAssembly!=="object")return{supported:!1};var B,Y=WebAssembly.instantiate(J(A),{}).then(function(E){B=E.instance,B.exports.__wasm_call_ctors(),B.exports.meshopt_encodeVertexVersion(0),B.exports.meshopt_encodeIndexVersion(1)});function J(E){var K=new Uint8Array(E.length);for(var I=0;I96?V-97:V>64?V-39:V+4}var H=0;for(var I=0;I=3),W(B.exports.meshopt_spatialSortRemap,E,E.length/K,K*4)},encodeVertexBuffer:function(E,K,I){C(I>0&&I<=256),C(I%4==0);var V=B.exports.meshopt_encodeVertexBufferBound(K,I);return F(B.exports.meshopt_encodeVertexBuffer,V,E,K,I)},encodeIndexBuffer:function(E,K,I){C(I==2||I==4),C(K%3==0);var V=U(E,I),H=B.exports.meshopt_encodeIndexBufferBound(K,Z(V)+1);return F(B.exports.meshopt_encodeIndexBuffer,H,V,K,4)},encodeIndexSequence:function(E,K,I){C(I==2||I==4);var V=U(E,I),H=B.exports.meshopt_encodeIndexSequenceBound(K,Z(V)+1);return F(B.exports.meshopt_encodeIndexSequence,H,V,K,4)},encodeGltfBuffer:function(E,K,I,V){var H={ATTRIBUTES:this.encodeVertexBuffer,TRIANGLES:this.encodeIndexBuffer,INDICES:this.encodeIndexSequence};return C(H[V]),H[V](E,K,I)},encodeFilterOct:function(E,K,I,V){return C(I==4||I==8),C(V>=1&&V<=16),$(B.exports.meshopt_encodeFilterOct,E,K,I,V,16)},encodeFilterQuat:function(E,K,I,V){return C(I==8),C(V>=4&&V<=16),$(B.exports.meshopt_encodeFilterQuat,E,K,I,V,16)},encodeFilterExp:function(E,K,I,V,H){C(I>0&&I%4==0),C(V>=1&&V<=24);var D={Separate:0,SharedVector:1,SharedComponent:2,Clamped:3};return $(B.exports.meshopt_encodeFilterExp,E,K,I,V,I,H?D[H]:1)}}}();if(typeof EH==="object"&&typeof dh==="object")dh.exports=u3;else if(typeof define==="function"&&define.amd)define([],function(){return u3});else if(typeof EH==="object")EH.MeshoptEncoder=u3;else(typeof self<"u"?self:EH).MeshoptEncoder=u3});var C1A=R((KH,ch)=>{var d3=function(){var A="b9H79Tebbbe8Fv9Gbb9Gvuuuuueu9Giuuub9Geueu9Giuuueuikqbeeedddillviebeoweuec:W:Odkr;leDo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bb8A9TW79O9V9Wt9F9KW9J9V9KW9wWVtW949c919M9MWVbeY9TW79O9V9Wt9F9KW9J9V9KW69U9KW949c919M9MWVbdE9TW79O9V9Wt9F9KW9J9V9KW69U9KW949tWG91W9U9JWbiL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9p9JtblK9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9r919HtbvL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWVT949Wbol79IV9Rbrq:S86qdbk;jYi5ud9:du8Jjjjjbcj;kb9Rgv8Kjjjjbc9:hodnalTmbcuhoaiRbbgrc;WeGc:Ge9hmbarcsGgwce0mbc9:hoalcufadcd4cbawEgDadfgrcKcaawEgqaraq0Egk6mbaicefhxcj;abad9Uc;WFbGcjdadca0EhmaialfgPar9Rgoadfhsavaoadz1jjjbgzceVhHcbhOdndninaeaO9nmeaPax9RaD6mdamaeaO9RaOamfgoae6EgAcsfglc9WGhCabaOad2fhXaAcethQaxaDfhiaOaeaoaeao6E9RhLalcl4cifcd4hKazcj;cbfaAfhYcbh8AazcjdfhEaHh3incbhodnawTmbaxa8Acd4fRbbhokaocFeGh5cbh8Eazcj;cbfhqinaih8Fdndndndna5a8Ecet4ciGgoc9:fPdebdkaPa8F9RaA6mrazcj;cbfa8EaA2fa8FaAz1jjjb8Aa8FaAfhixdkazcj;cbfa8EaA2fcbaAz:jjjjb8Aa8FhixekaPa8F9RaK6mva8FaKfhidnaCTmbaPai9RcK6mbaocdtc:q1jjbfcj1jjbawEhaczhrcbhlinargoc9Wfghaqfhrdndndndndndnaaa8Fahco4fRbbalcoG4ciGcdtfydbPDbedvivvvlvkar9cb83bbarcwf9cb83bbxlkarcbaiRbdai8Xbb9c:c:qj:bw9:9c:q;c1:I1e:d9c:b:c:e1z9:gg9cjjjjjz:dg8J9qE86bbaqaofgrcGfag9c8F1:NghcKtc8F91aicdfa8J9c8N1:Nfg8KRbbG86bbarcVfcba8KahcjeGcr4fghRbbag9cjjjjjl:dg8J9qE86bbarc7fcbaha8J9c8L1:NfghRbbag9cjjjjjd:dg8J9qE86bbarctfcbaha8J9c8K1:NfghRbbag9cjjjjje:dg8J9qE86bbarc91fcbaha8J9c8J1:NfghRbbag9cjjjj;ab:dg8J9qE86bbarc4fcbaha8J9cg1:NfghRbbag9cjjjja:dg8J9qE86bbarc93fcbaha8J9ch1:NfghRbbag9cjjjjz:dgg9qE86bbarc94fcbahag9ca1:NfghRbbai8Xbe9c:c:qj:bw9:9c:q;c1:I1e:d9c:b:c:e1z9:gg9cjjjjjz:dg8J9qE86bbarc95fag9c8F1:NgicKtc8F91aha8J9c8N1:NfghRbbG86bbarc96fcbahaicjeGcr4fgiRbbag9cjjjjjl:dg8J9qE86bbarc97fcbaia8J9c8L1:NfgiRbbag9cjjjjjd:dg8J9qE86bbarc98fcbaia8J9c8K1:NfgiRbbag9cjjjjje:dg8J9qE86bbarc99fcbaia8J9c8J1:NfgiRbbag9cjjjj;ab:dg8J9qE86bbarc9:fcbaia8J9cg1:NfgiRbbag9cjjjja:dg8J9qE86bbarcufcbaia8J9ch1:NfgiRbbag9cjjjjz:dgg9qE86bbaiag9ca1:NfhixikaraiRblaiRbbghco4g8Ka8KciSg8KE86bbaqaofgrcGfaiclfa8Kfg8KRbbahcl4ciGg8La8LciSg8LE86bbarcVfa8Ka8Lfg8KRbbahcd4ciGg8La8LciSg8LE86bbarc7fa8Ka8Lfg8KRbbahciGghahciSghE86bbarctfa8Kahfg8KRbbaiRbeghco4g8La8LciSg8LE86bbarc91fa8Ka8Lfg8KRbbahcl4ciGg8La8LciSg8LE86bbarc4fa8Ka8Lfg8KRbbahcd4ciGg8La8LciSg8LE86bbarc93fa8Ka8Lfg8KRbbahciGghahciSghE86bbarc94fa8Kahfg8KRbbaiRbdghco4g8La8LciSg8LE86bbarc95fa8Ka8Lfg8KRbbahcl4ciGg8La8LciSg8LE86bbarc96fa8Ka8Lfg8KRbbahcd4ciGg8La8LciSg8LE86bbarc97fa8Ka8Lfg8KRbbahciGghahciSghE86bbarc98fa8KahfghRbbaiRbigico4g8Ka8KciSg8KE86bbarc99faha8KfghRbbaicl4ciGg8Ka8KciSg8KE86bbarc9:faha8KfghRbbaicd4ciGg8Ka8KciSg8KE86bbarcufaha8KfgrRbbaiciGgiaiciSgiE86bbaraifhixdkaraiRbwaiRbbghcl4g8Ka8KcsSg8KE86bbaqaofgrcGfaicwfa8Kfg8KRbbahcsGghahcsSghE86bbarcVfa8KahfghRbbaiRbeg8Kcl4g8La8LcsSg8LE86bbarc7faha8LfghRbba8KcsGg8Ka8KcsSg8KE86bbarctfaha8KfghRbbaiRbdg8Kcl4g8La8LcsSg8LE86bbarc91faha8LfghRbba8KcsGg8Ka8KcsSg8KE86bbarc4faha8KfghRbbaiRbig8Kcl4g8La8LcsSg8LE86bbarc93faha8LfghRbba8KcsGg8Ka8KcsSg8KE86bbarc94faha8KfghRbbaiRblg8Kcl4g8La8LcsSg8LE86bbarc95faha8LfghRbba8KcsGg8Ka8KcsSg8KE86bbarc96faha8KfghRbbaiRbvg8Kcl4g8La8LcsSg8LE86bbarc97faha8LfghRbba8KcsGg8Ka8KcsSg8KE86bbarc98faha8KfghRbbaiRbog8Kcl4g8La8LcsSg8LE86bbarc99faha8LfghRbba8KcsGg8Ka8KcsSg8KE86bbarc9:faha8KfghRbbaiRbrgicl4g8Ka8KcsSg8KE86bbarcufaha8KfgrRbbaicsGgiaicsSgiE86bbaraifhixekarai8Pbb83bbarcwfaicwf8Pbb83bbaiczfhikdnaoaC9pmbalcdfhlaoczfhraPai9RcL0mekkaoaC6moaimexokaCmva8FTmvkaqaAfhqa8Ecefg8Ecl9hmbkdndndndnawTmbasa8Acd4fRbbgociGPlbedrbkaATmdaza8Afh8Fazcj;cbfhhcbh8EaEhaina8FRbbhraahocbhlinaoahalfRbbgqce4cbaqceG9R7arfgr86bbaoadfhoaAalcefgl9hmbkaacefhaa8Fcefh8FahaAfhha8Ecefg8Ecl9hmbxikkaATmeaza8Afhaazcj;cbfhhcbhoceh8EaYh8FinaEaofhlaa8Vbbhrcbhoinala8FaofRbbcwtahaofRbbgqVc;:FiGce4cbaqceG9R7arfgr87bbaladfhlaLaocefgofmbka8FaQfh8FcdhoaacdfhaahaQfhha8EceGhlcbh8EalmbxdkkaATmbcbaocl49Rh8Eaza8AfRbbhqcwhoa3hlinalRbbaotaqVhqalcefhlaocwfgoca9hmbkcbhhaEh8FaYhainazcj;cbfahfRbbhrcwhoaahlinalRbbaotarVhralaAfhlaocwfgoca9hmbkara8E93aq7hqcbhoa8Fhlinalaqao486bbalcefhlaocwfgoca9hmbka8Fadfh8FaacefhaahcefghaA9hmbkkaEclfhEa3clfh3a8Aclfg8Aad6mbkaXazcjdfaAad2z1jjjb8AazazcjdfaAcufad2fadz1jjjb8AaAaOfhOaihxaimbkc9:hoxdkcbc99aPax9RakSEhoxekc9:hokavcj;kbf8Kjjjjbaok:XseHu8Jjjjjbc;ae9Rgv8Kjjjjbc9:hodnaeci9UgrcHfal0mbcuhoaiRbbgwc;WeGc;Ge9hmbawcsGgDce0mbavc;abfcFecjez:jjjjb8AavcUf9cu83ibavc8Wf9cu83ibavcyf9cu83ibavcaf9cu83ibavcKf9cu83ibavczf9cu83ibav9cu83iwav9cu83ibaialfc9WfhqaicefgwarfhldnaeTmbcmcsaDceSEhkcbhxcbhmcbhrcbhicbhoindnalaq9nmbc9:hoxikdndnawRbbgDc;Ve0mbavc;abfaoaDcu7gPcl4fcsGcitfgsydlhzasydbhHdndnaDcsGgsak9pmbavaiaPfcsGcdtfydbaxasEhDaxasTgOfhxxekdndnascsSmbcehOasc987asamffcefhDxekalcefhDal8SbbgscFeGhPdndnascu9mmbaDhlxekalcvfhlaPcFbGhPcrhsdninaD8SbbgOcFbGastaPVhPaOcu9kmeaDcefhDascrfgsc8J9hmbxdkkaDcefhlkcehOaPce4cbaPceG9R7amfhDkaDhmkavc;abfaocitfgsaDBdbasazBdlavaicdtfaDBdbavc;abfaocefcsGcitfgsaHBdbasaDBdlaocdfhoaOaifhidnadcd9hmbabarcetfgsaH87ebasclfaD87ebascdfaz87ebxdkabarcdtfgsaHBdbascwfaDBdbasclfazBdbxekdnaDcpe0mbaxcefgOavaiaqaDcsGfRbbgscl49RcsGcdtfydbascz6gPEhDavaias9RcsGcdtfydbaOaPfgzascsGgOEhsaOThOdndnadcd9hmbabarcetfgHax87ebaHclfas87ebaHcdfaD87ebxekabarcdtfgHaxBdbaHcwfasBdbaHclfaDBdbkavaicdtfaxBdbavc;abfaocitfgHaDBdbaHaxBdlavaicefgicsGcdtfaDBdbavc;abfaocefcsGcitfgHasBdbaHaDBdlavaiaPfgicsGcdtfasBdbavc;abfaocdfcsGcitfgDaxBdbaDasBdlaocifhoaiaOfhiazaOfhxxekaxcbalRbbgHEgAaDc;:eSgDfhzaHcsGhCaHcl4hXdndnaHcs0mbazcefhOxekazhOavaiaX9RcsGcdtfydbhzkdndnaCmbaOcefhxxekaOhxavaiaH9RcsGcdtfydbhOkdndnaDTmbalcefhDxekalcdfhDal8SbegPcFeGhsdnaPcu9kmbalcofhAascFbGhscrhldninaD8SbbgPcFbGaltasVhsaPcu9kmeaDcefhDalcrfglc8J9hmbkaAhDxekaDcefhDkasce4cbasceG9R7amfgmhAkdndnaXcsSmbaDhsxekaDcefhsaD8SbbglcFeGhPdnalcu9kmbaDcvfhzaPcFbGhPcrhldninas8SbbgDcFbGaltaPVhPaDcu9kmeascefhsalcrfglc8J9hmbkazhsxekascefhskaPce4cbaPceG9R7amfgmhzkdndnaCcsSmbashlxekascefhlas8SbbgDcFeGhPdnaDcu9kmbascvfhOaPcFbGhPcrhDdninal8SbbgscFbGaDtaPVhPascu9kmealcefhlaDcrfgDc8J9hmbkaOhlxekalcefhlkaPce4cbaPceG9R7amfgmhOkdndnadcd9hmbabarcetfgDaA87ebaDclfaO87ebaDcdfaz87ebxekabarcdtfgDaABdbaDcwfaOBdbaDclfazBdbkavc;abfaocitfgDazBdbaDaABdlavaicdtfaABdbavc;abfaocefcsGcitfgDaOBdbaDazBdlavaicefgicsGcdtfazBdbavc;abfaocdfcsGcitfgDaABdbaDaOBdlavaiaHcz6aXcsSVfgicsGcdtfaOBdbaiaCTaCcsSVfhiaocifhokawcefhwaocsGhoaicsGhiarcifgrae6mbkkcbc99alaqSEhokavc;aef8Kjjjjbaok:clevu8Jjjjjbcz9Rhvdnaecvfal9nmbc9:skdnaiRbbc;:eGc;qeSmbcuskav9cb83iwaicefhoaialfc98fhrdnaeTmbdnadcdSmbcbhwindnaoar6mbc9:skaocefhlao8SbbgicFeGhddndnaicu9mmbalhoxekaocvfhoadcFbGhdcrhidninal8SbbgDcFbGaitadVhdaDcu9kmealcefhlaicrfgic8J9hmbxdkkalcefhokabawcdtfadc8Etc8F91adcd47avcwfadceGcdtVglydbfgiBdbalaiBdbawcefgwae9hmbxdkkcbhwindnaoar6mbc9:skaocefhlao8SbbgicFeGhddndnaicu9mmbalhoxekaocvfhoadcFbGhdcrhidninal8SbbgDcFbGaitadVhdaDcu9kmealcefhlaicrfgic8J9hmbxdkkalcefhokabawcetfadc8Etc8F91adcd47avcwfadceGcdtVglydbfgi87ebalaiBdbawcefgwae9hmbkkcbc99aoarSEk:Lvoeue99dud99eud99dndnadcl9hmbaeTmeindndnabcdfgd8Sbb:Yab8Sbbgi:Ygl:l:tabcefgv8Sbbgo:Ygr:l:tgwJbb;:9cawawNJbbbbawawJbbbb9GgDEgq:mgkaqaicb9iEalMgwawNakaqaocb9iEarMgqaqNMM:r:vglNJbbbZJbbb:;aDEMgr:lJbbb9p9DTmbar:Ohixekcjjjj94hikadai86bbdndnaqalNJbbbZJbbb:;aqJbbbb9GEMgq:lJbbb9p9DTmbaq:Ohdxekcjjjj94hdkavad86bbdndnawalNJbbbZJbbb:;awJbbbb9GEMgw:lJbbb9p9DTmbaw:Ohdxekcjjjj94hdkabad86bbabclfhbaecufgembxdkkaeTmbindndnabclfgd8Ueb:Yab8Uebgi:Ygl:l:tabcdfgv8Uebgo:Ygr:l:tgwJb;:FSawawNJbbbbawawJbbbb9GgDEgq:mgkaqaicb9iEalMgwawNakaqaocb9iEarMgqaqNMM:r:vglNJbbbZJbbb:;aDEMgr:lJbbb9p9DTmbar:Ohixekcjjjj94hikadai87ebdndnaqalNJbbbZJbbb:;aqJbbbb9GEMgq:lJbbb9p9DTmbaq:Ohdxekcjjjj94hdkavad87ebdndnawalNJbbbZJbbb:;awJbbbb9GEMgw:lJbbb9p9DTmbaw:Ohdxekcjjjj94hdkabad87ebabcwfhbaecufgembkkk;oiliui99iue99dnaeTmbcbhiabhlindndnJ;Zl81Zalcof8UebgvciV:Y:vgoal8Ueb:YNgrJb;:FSNJbbbZJbbb:;arJbbbb9GEMgw:lJbbb9p9DTmbaw:OhDxekcjjjj94hDkalclf8Uebhqalcdf8UebhkabaiavcefciGfcetfaD87ebdndnaoak:YNgwJb;:FSNJbbbZJbbb:;awJbbbb9GEMgx:lJbbb9p9DTmbax:OhDxekcjjjj94hDkabaiavciGfgkcd7cetfaD87ebdndnaoaq:YNgoJb;:FSNJbbbZJbbb:;aoJbbbb9GEMgx:lJbbb9p9DTmbax:OhDxekcjjjj94hDkabaiavcufciGfcetfaD87ebdndnJbbjZararN:tawawN:taoaoN:tgrJbbbbarJbbbb9GE:rJb;:FSNJbbbZMgr:lJbbb9p9DTmbar:Ohvxekcjjjj94hvkabakcetfav87ebalcwfhlaiclfhiaecufgembkkk9mbdnadcd4ae2gdTmbinababydbgecwtcw91:Yaece91cjjj98Gcjjj;8if::NUdbabclfhbadcufgdmbkkk9teiucbcbyd:K1jjbgeabcifc98GfgbBd:K1jjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik;teeeudndnaeabVciGTmbabhixekdndnadcz9pmbabhixekabhiinaiaeydbBdbaiaeydlBdlaiaeydwBdwaiaeydxBdxaeczfheaiczfhiadc9Wfgdcs0mbkkadcl6mbinaiaeydbBdbaeclfheaiclfhiadc98fgdci0mbkkdnadTmbinaiaeRbb86bbaicefhiaecefheadcufgdmbkkabk:3eedudndnabciGTmbabhixekaecFeGc:b:c:ew2hldndnadcz9pmbabhixekabhiinaialBdxaialBdwaialBdlaialBdbaiczfhiadc9Wfgdcs0mbkkadcl6mbinaialBdbaiclfhiadc98fgdci0mbkkdnadTmbinaiae86bbaicefhiadcufgdmbkkabkk81dbcjwk8Kbbbbdbbblbbbwbbbbbbbebbbdbbblbbbwbbbbc:Kwkl8WNbb",Q="b9H79TebbbeKl9Gbb9Gvuuuuueu9Giuuub9Geueuikqbbebeedddilve9Weeeviebeoweuec:q:6dkr;leDo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bb8A9TW79O9V9Wt9F9KW9J9V9KW9wWVtW949c919M9MWVbdY9TW79O9V9Wt9F9KW9J9V9KW69U9KW949c919M9MWVblE9TW79O9V9Wt9F9KW9J9V9KW69U9KW949tWG91W9U9JWbvL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9p9JtboK9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9r919HtbrL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWVT949Wbwl79IV9RbDq;G9Mqlbzik9:evu8Jjjjjbcz9Rhbcbheincbhdcbhiinabcwfadfaicjuaead4ceGglE86bbaialfhiadcefgdcw9hmbkaec:q:yjjbfai86bbaecitc:q1jjbfab8Piw83ibaecefgecjd9hmbkk:183lYud97dur978Jjjjjbcj;kb9Rgv8Kjjjjbc9:hodnalTmbcuhoaiRbbgrc;WeGc:Ge9hmbarcsGgwce0mbc9:hoalcufadcd4cbawEgDadfgrcKcaawEgqaraq0Egk6mbaicefhxavaialfgmar9Rgoad;8qbbcj;abad9Uc;WFbGcjdadca0EhPdndndnadTmbaoadfhscbhzinaeaz9nmdamax9RaD6miabazad2fhHaxaDfhOaPaeaz9RazaPfae6EgAcsfgocl4cifcd4hCavcj;cbfaoc9WGgXcetfhQavcj;cbfaXci2fhLavcj;cbfaXfhKcbhYaoc;ab6h8AincbhodnawTmbaxaYcd4fRbbhokaocFeGhEcbh3avcj;cbfh5indndndndnaEa3cet4ciGgoc9:fPdebdkamaO9RaX6mwavcj;cbfa3aX2faOaX;8qbbaOaAfhOxdkavcj;cbfa3aX2fcbaX;8kbxekamaO9RaC6moaoclVcbawEhraOaCfhocbhidna8Ambamao9Rc;Gb6mbcbhlina5alfhidndndndndndnaOalco4fRbbgqciGarfPDbedibledibkaipxbbbbbbbbbbbbbbbbpklbxlkaiaopbblaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLg8Ecdp:mea8EpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9og8Fpxiiiiiiiiiiiiiiiip8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaaaoclffahc:q:yjjbfRbbfhoxikaiaopbbwaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9og8Fpxssssssssssssssssp8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaaaocwffahc:q:yjjbfRbbfhoxdkaiaopbbbpklbaoczfhoxekaiaopbbdaoRbbgacitc:q1jjbfpbibaac:q:yjjbfRbbgapsaoRbeghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPpklbaaaocdffahc:q:yjjbfRbbfhokdndndndndndnaqcd4ciGarfPDbedibledibkaiczfpxbbbbbbbbbbbbbbbbpklbxlkaiczfaopbblaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLg8Ecdp:mea8EpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9og8Fpxiiiiiiiiiiiiiiiip8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaaaoclffahc:q:yjjbfRbbfhoxikaiczfaopbbwaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9og8Fpxssssssssssssssssp8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaaaocwffahc:q:yjjbfRbbfhoxdkaiczfaopbbbpklbaoczfhoxekaiczfaopbbdaoRbbgacitc:q1jjbfpbibaac:q:yjjbfRbbgapsaoRbeghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPpklbaaaocdffahc:q:yjjbfRbbfhokdndndndndndnaqcl4ciGarfPDbedibledibkaicafpxbbbbbbbbbbbbbbbbpklbxlkaicafaopbblaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLg8Ecdp:mea8EpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9og8Fpxiiiiiiiiiiiiiiiip8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaaaoclffahc:q:yjjbfRbbfhoxikaicafaopbbwaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9og8Fpxssssssssssssssssp8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaaaocwffahc:q:yjjbfRbbfhoxdkaicafaopbbbpklbaoczfhoxekaicafaopbbdaoRbbgacitc:q1jjbfpbibaac:q:yjjbfRbbgapsaoRbeghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPpklbaaaocdffahc:q:yjjbfRbbfhokdndndndndndnaqco4arfPDbedibledibkaic8Wfpxbbbbbbbbbbbbbbbbpklbxlkaic8Wfaopbblaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLg8Ecdp:mea8EpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9og8Fpxiiiiiiiiiiiiiiiip8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngicitc:q1jjbfpbibaic:q:yjjbfRbbgipsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Ngqcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaiaoclffaqc:q:yjjbfRbbfhoxikaic8Wfaopbbwaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9og8Fpxssssssssssssssssp8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngicitc:q1jjbfpbibaic:q:yjjbfRbbgipsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Ngqcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaiaocwffaqc:q:yjjbfRbbfhoxdkaic8Wfaopbbbpklbaoczfhoxekaic8WfaopbbdaoRbbgicitc:q1jjbfpbibaic:q:yjjbfRbbgipsaoRbegqcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPpklbaiaocdffaqc:q:yjjbfRbbfhokalc;abfhialcjefaX0meaihlamao9Rc;Fb0mbkkdnaiaX9pmbaici4hlinamao9RcK6mwa5aifhqdndndndndndnaOaico4fRbbalcoG4ciGarfPDbedibledibkaqpxbbbbbbbbbbbbbbbbpkbbxlkaqaopbblaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLg8Ecdp:mea8EpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9og8Fpxiiiiiiiiiiiiiiiip8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spkbbaaaoclffahc:q:yjjbfRbbfhoxikaqaopbbwaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9og8Fpxssssssssssssssssp8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spkbbaaaocwffahc:q:yjjbfRbbfhoxdkaqaopbbbpkbbaoczfhoxekaqaopbbdaoRbbgacitc:q1jjbfpbibaac:q:yjjbfRbbgapsaoRbeghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPpkbbaaaocdffahc:q:yjjbfRbbfhokalcdfhlaiczfgiaX6mbkkaohOaoTmoka5aXfh5a3cefg3cl9hmbkdndndndnawTmbasaYcd4fRbbglciGPlbedwbkaXTmdavcjdfaYfhlavaYfpbdbhgcbhoinalavcj;cbfaofpblbg8JaKaofpblbg8KpmbzeHdOiAlCvXoQrLg8LaQaofpblbg8MaLaofpblbg8NpmbzeHdOiAlCvXoQrLgypmbezHdiOAlvCXorQLg8Ecep9Ta8Epxeeeeeeeeeeeeeeeeg8Fp9op9Hp9rg8Eagp9Uggp9Abbbaladfglaga8Ea8Epmlvorlvorlvorlvorp9Uggp9Abbbaladfglaga8Ea8EpmwDqkwDqkwDqkwDqkp9Uggp9Abbbaladfglaga8Ea8EpmxmPsxmPsxmPsxmPsp9Uggp9Abbbaladfglaga8LaypmwDKYqk8AExm35Ps8E8Fg8Ecep9Ta8Ea8Fp9op9Hp9rg8Ep9Uggp9Abbbaladfglaga8Ea8Epmlvorlvorlvorlvorp9Uggp9Abbbaladfglaga8Ea8EpmwDqkwDqkwDqkwDqkp9Uggp9Abbbaladfglaga8Ea8EpmxmPsxmPsxmPsxmPsp9Uggp9Abbbaladfglaga8Ja8KpmwKDYq8AkEx3m5P8Es8Fg8Ja8Ma8NpmwKDYq8AkEx3m5P8Es8Fg8KpmbezHdiOAlvCXorQLg8Ecep9Ta8Ea8Fp9op9Hp9rg8Ep9Uggp9Abbbaladfglaga8Ea8Epmlvorlvorlvorlvorp9Uggp9Abbbaladfglaga8Ea8EpmwDqkwDqkwDqkwDqkp9Uggp9Abbbaladfglaga8Ea8EpmxmPsxmPsxmPsxmPsp9Uggp9Abbbaladfglaga8Ja8KpmwDKYqk8AExm35Ps8E8Fg8Ecep9Ta8Ea8Fp9op9Hp9rg8Ep9Ug8Fp9Abbbaladfgla8Fa8Ea8Epmlvorlvorlvorlvorp9Ug8Fp9Abbbaladfgla8Fa8Ea8EpmwDqkwDqkwDqkwDqkp9Ug8Fp9Abbbaladfgla8Fa8Ea8EpmxmPsxmPsxmPsxmPsp9Uggp9AbbbaladfhlaoczfgoaX6mbxikkaXTmeavcjdfaYfhlavaYfpbdbhgcbhoinalavcj;cbfaofpblbg8JaKaofpblbg8KpmbzeHdOiAlCvXoQrLg8LaQaofpblbg8MaLaofpblbg8NpmbzeHdOiAlCvXoQrLgypmbezHdiOAlvCXorQLg8Ecep:nea8Epxebebebebebebebebg8Fp9op:bep9rg8Eagp:oeggp9Abbbaladfglaga8Ea8Epmlvorlvorlvorlvorp:oeggp9Abbbaladfglaga8Ea8EpmwDqkwDqkwDqkwDqkp:oeggp9Abbbaladfglaga8Ea8EpmxmPsxmPsxmPsxmPsp:oeggp9Abbbaladfglaga8LaypmwDKYqk8AExm35Ps8E8Fg8Ecep:nea8Ea8Fp9op:bep9rg8Ep:oeggp9Abbbaladfglaga8Ea8Epmlvorlvorlvorlvorp:oeggp9Abbbaladfglaga8Ea8EpmwDqkwDqkwDqkwDqkp:oeggp9Abbbaladfglaga8Ea8EpmxmPsxmPsxmPsxmPsp:oeggp9Abbbaladfglaga8Ja8KpmwKDYq8AkEx3m5P8Es8Fg8Ja8Ma8NpmwKDYq8AkEx3m5P8Es8Fg8KpmbezHdiOAlvCXorQLg8Ecep:nea8Ea8Fp9op:bep9rg8Ep:oeggp9Abbbaladfglaga8Ea8Epmlvorlvorlvorlvorp:oeggp9Abbbaladfglaga8Ea8EpmwDqkwDqkwDqkwDqkp:oeggp9Abbbaladfglaga8Ea8EpmxmPsxmPsxmPsxmPsp:oeggp9Abbbaladfglaga8Ja8KpmwDKYqk8AExm35Ps8E8Fg8Ecep:nea8Ea8Fp9op:bep9rg8Ep:oeg8Fp9Abbbaladfgla8Fa8Ea8Epmlvorlvorlvorlvorp:oeg8Fp9Abbbaladfgla8Fa8Ea8EpmwDqkwDqkwDqkwDqkp:oeg8Fp9Abbbaladfgla8Fa8Ea8EpmxmPsxmPsxmPsxmPsp:oeggp9AbbbaladfhlaoczfgoaX6mbxdkkaXTmbcbhocbalcl4gl9Rc8FGhiavcjdfaYfhravaYfpbdbh8Finaravcj;cbfaofpblbggaKaofpblbg8JpmbzeHdOiAlCvXoQrLg8KaQaofpblbg8LaLaofpblbg8MpmbzeHdOiAlCvXoQrLg8NpmbezHdiOAlvCXorQLg8Eaip:Rea8Ealp:Sep9qg8Ea8Fp9rg8Fp9Abbbaradfgra8Fa8Ea8Epmlvorlvorlvorlvorp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmwDqkwDqkwDqkwDqkp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmxmPsxmPsxmPsxmPsp9rg8Fp9Abbbaradfgra8Fa8Ka8NpmwDKYqk8AExm35Ps8E8Fg8Eaip:Rea8Ealp:Sep9qg8Ep9rg8Fp9Abbbaradfgra8Fa8Ea8Epmlvorlvorlvorlvorp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmwDqkwDqkwDqkwDqkp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmxmPsxmPsxmPsxmPsp9rg8Fp9Abbbaradfgra8Faga8JpmwKDYq8AkEx3m5P8Es8Fgga8La8MpmwKDYq8AkEx3m5P8Es8Fg8JpmbezHdiOAlvCXorQLg8Eaip:Rea8Ealp:Sep9qg8Ep9rg8Fp9Abbbaradfgra8Fa8Ea8Epmlvorlvorlvorlvorp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmwDqkwDqkwDqkwDqkp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmxmPsxmPsxmPsxmPsp9rg8Fp9Abbbaradfgra8Faga8JpmwDKYqk8AExm35Ps8E8Fg8Eaip:Rea8Ealp:Sep9qg8Ep9rg8Fp9Abbbaradfgra8Fa8Ea8Epmlvorlvorlvorlvorp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmwDqkwDqkwDqkwDqkp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmxmPsxmPsxmPsxmPsp9rg8Fp9AbbbaradfhraoczfgoaX6mbkkaYclfgYad6mbkaHavcjdfaAad2;8qbbavavcjdfaAcufad2fad;8qbbaAazfhzc9:hoaOhxaOmbxlkkaeTmbaDalfhrcbhocuhlinaralaD9RglfaD6mdaPaeao9RaoaPfae6Eaofgoae6mbkaial9Rhxkcbc99amax9RakSEhoxekc9:hokavcj;kbf8Kjjjjbaokwbz:bjjjbk:TseHu8Jjjjjbc;ae9Rgv8Kjjjjbc9:hodnaeci9UgrcHfal0mbcuhoaiRbbgwc;WeGc;Ge9hmbawcsGgDce0mbavc;abfcFecje;8kbavcUf9cu83ibavc8Wf9cu83ibavcyf9cu83ibavcaf9cu83ibavcKf9cu83ibavczf9cu83ibav9cu83iwav9cu83ibaialfc9WfhqaicefgwarfhldnaeTmbcmcsaDceSEhkcbhxcbhmcbhrcbhicbhoindnalaq9nmbc9:hoxikdndnawRbbgDc;Ve0mbavc;abfaoaDcu7gPcl4fcsGcitfgsydlhzasydbhHdndnaDcsGgsak9pmbavaiaPfcsGcdtfydbaxasEhDaxasTgOfhxxekdndnascsSmbcehOasc987asamffcefhDxekalcefhDal8SbbgscFeGhPdndnascu9mmbaDhlxekalcvfhlaPcFbGhPcrhsdninaD8SbbgOcFbGastaPVhPaOcu9kmeaDcefhDascrfgsc8J9hmbxdkkaDcefhlkcehOaPce4cbaPceG9R7amfhDkaDhmkavc;abfaocitfgsaDBdbasazBdlavaicdtfaDBdbavc;abfaocefcsGcitfgsaHBdbasaDBdlaocdfhoaOaifhidnadcd9hmbabarcetfgsaH87ebasclfaD87ebascdfaz87ebxdkabarcdtfgsaHBdbascwfaDBdbasclfazBdbxekdnaDcpe0mbaxcefgOavaiaqaDcsGfRbbgscl49RcsGcdtfydbascz6gPEhDavaias9RcsGcdtfydbaOaPfgzascsGgOEhsaOThOdndnadcd9hmbabarcetfgHax87ebaHclfas87ebaHcdfaD87ebxekabarcdtfgHaxBdbaHcwfasBdbaHclfaDBdbkavaicdtfaxBdbavc;abfaocitfgHaDBdbaHaxBdlavaicefgicsGcdtfaDBdbavc;abfaocefcsGcitfgHasBdbaHaDBdlavaiaPfgicsGcdtfasBdbavc;abfaocdfcsGcitfgDaxBdbaDasBdlaocifhoaiaOfhiazaOfhxxekaxcbalRbbgHEgAaDc;:eSgDfhzaHcsGhCaHcl4hXdndnaHcs0mbazcefhOxekazhOavaiaX9RcsGcdtfydbhzkdndnaCmbaOcefhxxekaOhxavaiaH9RcsGcdtfydbhOkdndnaDTmbalcefhDxekalcdfhDal8SbegPcFeGhsdnaPcu9kmbalcofhAascFbGhscrhldninaD8SbbgPcFbGaltasVhsaPcu9kmeaDcefhDalcrfglc8J9hmbkaAhDxekaDcefhDkasce4cbasceG9R7amfgmhAkdndnaXcsSmbaDhsxekaDcefhsaD8SbbglcFeGhPdnalcu9kmbaDcvfhzaPcFbGhPcrhldninas8SbbgDcFbGaltaPVhPaDcu9kmeascefhsalcrfglc8J9hmbkazhsxekascefhskaPce4cbaPceG9R7amfgmhzkdndnaCcsSmbashlxekascefhlas8SbbgDcFeGhPdnaDcu9kmbascvfhOaPcFbGhPcrhDdninal8SbbgscFbGaDtaPVhPascu9kmealcefhlaDcrfgDc8J9hmbkaOhlxekalcefhlkaPce4cbaPceG9R7amfgmhOkdndnadcd9hmbabarcetfgDaA87ebaDclfaO87ebaDcdfaz87ebxekabarcdtfgDaABdbaDcwfaOBdbaDclfazBdbkavc;abfaocitfgDazBdbaDaABdlavaicdtfaABdbavc;abfaocefcsGcitfgDaOBdbaDazBdlavaicefgicsGcdtfazBdbavc;abfaocdfcsGcitfgDaABdbaDaOBdlavaiaHcz6aXcsSVfgicsGcdtfaOBdbaiaCTaCcsSVfhiaocifhokawcefhwaocsGhoaicsGhiarcifgrae6mbkkcbc99alaqSEhokavc;aef8Kjjjjbaok:clevu8Jjjjjbcz9Rhvdnaecvfal9nmbc9:skdnaiRbbc;:eGc;qeSmbcuskav9cb83iwaicefhoaialfc98fhrdnaeTmbdnadcdSmbcbhwindnaoar6mbc9:skaocefhlao8SbbgicFeGhddndnaicu9mmbalhoxekaocvfhoadcFbGhdcrhidninal8SbbgDcFbGaitadVhdaDcu9kmealcefhlaicrfgic8J9hmbxdkkalcefhokabawcdtfadc8Etc8F91adcd47avcwfadceGcdtVglydbfgiBdbalaiBdbawcefgwae9hmbxdkkcbhwindnaoar6mbc9:skaocefhlao8SbbgicFeGhddndnaicu9mmbalhoxekaocvfhoadcFbGhdcrhidninal8SbbgDcFbGaitadVhdaDcu9kmealcefhlaicrfgic8J9hmbxdkkalcefhokabawcetfadc8Etc8F91adcd47avcwfadceGcdtVglydbfgi87ebalaiBdbawcefgwae9hmbkkcbc99aoarSEk:SPliuo97eue978Jjjjjbca9Rhiaec98Ghldndnadcl9hmbdnalTmbcbhvabhdinadadpbbbgocKp:RecKp:Sep;6egraocwp:RecKp:Sep;6earp;Geaoczp:RecKp:Sep;6egwp;Gep;Kep;LegDpxbbbbbbbbbbbbbbbbp:2egqarpxbbbjbbbjbbbjbbbjgkp9op9rp;Kegrpxbb;:9cbb;:9cbb;:9cbb;:9cararp;MeaDaDp;Meawaqawakp9op9rp;Kegrarp;Mep;Kep;Kep;Jep;Negwp;Mepxbbn0bbn0bbn0bbn0gqp;KepxFbbbFbbbFbbbFbbbp9oaopxbbbFbbbFbbbFbbbFp9op9qarawp;Meaqp;Kecwp:RepxbFbbbFbbbFbbbFbbp9op9qaDawp;Meaqp;Keczp:RepxbbFbbbFbbbFbbbFbp9op9qpkbbadczfhdavclfgval6mbkkalaeSmeaipxbbbbbbbbbbbbbbbbgqpklbaiabalcdtfgdaeciGglcdtgv;8qbbdnalTmbaiaipblbgocKp:RecKp:Sep;6egraocwp:RecKp:Sep;6earp;Geaoczp:RecKp:Sep;6egwp;Gep;Kep;LegDaqp:2egqarpxbbbjbbbjbbbjbbbjgkp9op9rp;Kegrpxbb;:9cbb;:9cbb;:9cbb;:9cararp;MeaDaDp;Meawaqawakp9op9rp;Kegrarp;Mep;Kep;Kep;Jep;Negwp;Mepxbbn0bbn0bbn0bbn0gqp;KepxFbbbFbbbFbbbFbbbp9oaopxbbbFbbbFbbbFbbbFp9op9qarawp;Meaqp;Kecwp:RepxbFbbbFbbbFbbbFbbp9op9qaDawp;Meaqp;Keczp:RepxbbFbbbFbbbFbbbFbp9op9qpklbkadaiav;8qbbskdnalTmbcbhvabhdinadczfgxaxpbbbgopxbbbbbbFFbbbbbbFFgkp9oadpbbbgDaopmbediwDqkzHOAKY8AEgwczp:Reczp:Sep;6egraDaopmlvorxmPsCXQL358E8FpxFubbFubbFubbFubbp9op;7eawczp:Sep;6egwp;Gearp;Gep;Kep;Legopxbbbbbbbbbbbbbbbbp:2egqarpxbbbjbbbjbbbjbbbjgmp9op9rp;Kegrpxb;:FSb;:FSb;:FSb;:FSararp;Meaoaop;Meawaqawamp9op9rp;Kegrarp;Mep;Kep;Kep;Jep;Negwp;Mepxbbn0bbn0bbn0bbn0gqp;KepxFFbbFFbbFFbbFFbbp9oaoawp;Meaqp;Keczp:Rep9qgoarawp;Meaqp;KepxFFbbFFbbFFbbFFbbp9ogrpmwDKYqk8AExm35Ps8E8Fp9qpkbbadaDakp9oaoarpmbezHdiOAlvCXorQLp9qpkbbadcafhdavclfgval6mbkkalaeSmbaiczfpxbbbbbbbbbbbbbbbbgopklbaiaopklbaiabalcitfgdaeciGglcitgv;8qbbdnalTmbaiaipblzgopxbbbbbbFFbbbbbbFFgkp9oaipblbgDaopmbediwDqkzHOAKY8AEgwczp:Reczp:Sep;6egraDaopmlvorxmPsCXQL358E8FpxFubbFubbFubbFubbp9op;7eawczp:Sep;6egwp;Gearp;Gep;Kep;Legopxbbbbbbbbbbbbbbbbp:2egqarpxbbbjbbbjbbbjbbbjgmp9op9rp;Kegrpxb;:FSb;:FSb;:FSb;:FSararp;Meaoaop;Meawaqawamp9op9rp;Kegrarp;Mep;Kep;Kep;Jep;Negwp;Mepxbbn0bbn0bbn0bbn0gqp;KepxFFbbFFbbFFbbFFbbp9oaoawp;Meaqp;Keczp:Rep9qgoarawp;Meaqp;KepxFFbbFFbbFFbbFFbbp9ogrpmwDKYqk8AExm35Ps8E8Fp9qpklzaiaDakp9oaoarpmbezHdiOAlvCXorQLp9qpklbkadaiav;8qbbkk:oDllue97euv978Jjjjjbc8W9Rhidnaec98GglTmbcbhvabhoinaiaopbbbgraoczfgwpbbbgDpmlvorxmPsCXQL358E8Fgqczp:Segkclp:RepklbaopxbbjZbbjZbbjZbbjZpx;Zl81Z;Zl81Z;Zl81Z;Zl81Zakpxibbbibbbibbbibbbp9qp;6ep;NegkaraDpmbediwDqkzHOAKY8AEgrczp:Reczp:Sep;6ep;MegDaDp;Meakarczp:Sep;6ep;Megxaxp;Meakaqczp:Reczp:Sep;6ep;Megqaqp;Mep;Kep;Kep;Lepxbbbbbbbbbbbbbbbbp:4ep;Jepxb;:FSb;:FSb;:FSb;:FSgkp;Mepxbbn0bbn0bbn0bbn0grp;KepxFFbbFFbbFFbbFFbbgmp9oaxakp;Mearp;Keczp:Rep9qgxaDakp;Mearp;Keamp9oaqakp;Mearp;Keczp:Rep9qgkpmbezHdiOAlvCXorQLgrp5baipblbpEb:T:j83ibaocwfarp5eaipblbpEe:T:j83ibawaxakpmwDKYqk8AExm35Ps8E8Fgkp5baipblbpEd:T:j83ibaocKfakp5eaipblbpEi:T:j83ibaocafhoavclfgval6mbkkdnalaeSmbaiczfpxbbbbbbbbbbbbbbbbgkpklbaiakpklbaiabalcitfgoaeciGgvcitgw;8qbbdnavTmbaiaipblbgraipblzgDpmlvorxmPsCXQL358E8Fgqczp:Segkclp:RepklaaipxbbjZbbjZbbjZbbjZpx;Zl81Z;Zl81Z;Zl81Z;Zl81Zakpxibbbibbbibbbibbbp9qp;6ep;NegkaraDpmbediwDqkzHOAKY8AEgrczp:Reczp:Sep;6ep;MegDaDp;Meakarczp:Sep;6ep;Megxaxp;Meakaqczp:Reczp:Sep;6ep;Megqaqp;Mep;Kep;Kep;Lepxbbbbbbbbbbbbbbbbp:4ep;Jepxb;:FSb;:FSb;:FSb;:FSgkp;Mepxbbn0bbn0bbn0bbn0grp;KepxFFbbFFbbFFbbFFbbgmp9oaxakp;Mearp;Keczp:Rep9qgxaDakp;Mearp;Keamp9oaqakp;Mearp;Keczp:Rep9qgkpmbezHdiOAlvCXorQLgrp5baipblapEb:T:j83ibaiarp5eaipblapEe:T:j83iwaiaxakpmwDKYqk8AExm35Ps8E8Fgkp5baipblapEd:T:j83izaiakp5eaipblapEi:T:j83iKkaoaiaw;8qbbkk;uddiue978Jjjjjbc;ab9Rhidnadcd4ae2glc98GgvTmbcbheabhdinadadpbbbgocwp:Recwp:Sep;6eaocep:SepxbbjFbbjFbbjFbbjFp9opxbbjZbbjZbbjZbbjZp:Uep;Mepkbbadczfhdaeclfgeav6mbkkdnavalSmbaic8WfpxbbbbbbbbbbbbbbbbgopklbaicafaopklbaiczfaopklbaiaopklbaiabavcdtfgdalciGgecdtgv;8qbbdnaeTmbaiaipblbgocwp:Recwp:Sep;6eaocep:SepxbbjFbbjFbbjFbbjFp9opxbbjZbbjZbbjZbbjZp:Uep;Mepklbkadaiav;8qbbkk9teiucbcbydj1jjbgeabcifc98GfgbBdj1jjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaikkkebcjwklz:Dbb",B=new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,3,2,0,0,5,3,1,0,1,12,1,0,10,22,2,12,0,65,0,65,0,65,0,252,10,0,0,11,7,0,65,0,253,15,26,11]),Y=new Uint8Array([32,0,65,2,1,106,34,33,3,128,11,4,13,64,6,253,10,7,15,116,127,5,8,12,40,16,19,54,20,9,27,255,113,17,42,67,24,23,146,148,18,14,22,45,70,69,56,114,101,21,25,63,75,136,108,28,118,29,73,115]);if(typeof WebAssembly!=="object")return{supported:!1};var J=WebAssembly.validate(B)?G(Q):G(A),C,X=WebAssembly.instantiate(J,{}).then(function(H){C=H.instance,C.exports.__wasm_call_ctors()});function G(H){var D=new Uint8Array(H.length);for(var L=0;L96?z-97:z>64?z-39:z+4}var M=0;for(var L=0;L0)return I(H,D,L,Z[z],F[M]);return X.then(function(){var N=new Uint8Array(H*D);return W(C,C.exports[Z[z]],N,H,D,L,C.exports[F[M]]),N})}}}();if(typeof KH==="object"&&typeof ch==="object")ch.exports=d3;else if(typeof define==="function"&&define.amd)define([],function(){return d3});else if(typeof KH==="object")KH.MeshoptDecoder=d3;else(typeof self<"u"?self:KH).MeshoptDecoder=d3});var X1A=R((VH,lh)=>{var c3=function(){var A="b9H79Tebbbetm9Geueu9Geub9Gbb9Gsuuuuuuuuuuuu99uueu9Gvuuuuub9Gruuuuuuub9Gvuuuuue999Gvuuuuueu9Gquuuuuuu99uueu9Gwuuuuuu99ueu9Giuuue999Gluuuueu9GiuuueuiOHdilvorlwiDqkbxxbelve9Weiiviebeoweuec:G:Pdkr:Tewo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bbz9TW79O9V9Wt9F79P9T9W29P9M95br8E9TW79O9V9Wt9F79P9T9W29P9M959x9Pt9OcttV9P9I91tW7bwQ9TW79O9V9Wt9F79P9T9W29P9M959q9V9P9Ut7bDX9TW79O9V9Wt9F79P9T9W29P9M959t9J9H2Wbqa9TW79O9V9Wt9F9V9Wt9P9T9P96W9wWVtW94SWt9J9O9sW9T9H9Wbkl79IV9RbxDwebcekdzsq;B:xeHdbkM9Hi8Au8A99Au8Jjjjjbc;W;qb9Rgs8Kjjjjbcbhzascxfcbc;Kbz:ojjjb8AdnabaeSmbabaeadcdtz:njjjb8AkdndnamcdGmbascxfhHcbhOxekasalcrfci4gecbyd:m:jjjbHjjjjbbgABdxasceBd2aAcbaez:ojjjbhCcbhlcbhednadTmbcbhlabheadhAinaCaeydbgXci4fgQaQRbbgQceaXcrGgXtV86bbaQcu7aX4ceGalfhlaeclfheaAcufgAmbkcualcdtalcFFFFi0EhekascCfhHasaecbyd:m:jjjbHjjjjbbgOBdzascdBd2alcd4alfhXcehAinaAgecethAaeaX6mbkcdhzcbhLascuaecdtgAaecFFFFi0Ecbyd:m:jjjbHjjjjbbgXBdCasciBd2aXcFeaAz:ojjjbhKdnadTmbaecufhYcbh8AindndnaKabaLcdtfgEydbgQc:v;t;h;Ev2aYGgXcdtfgCydbgAcuSmbceheinaOaAcdtfydbaQSmdaXaefhAaecefheaKaAaYGgXcdtfgCydbgAcu9hmbkkaOa8AcdtfaQBdbaCa8ABdba8AhAa8Acefh8AkaEaABdbaLcefgLad9hmbkkaKcbyd1:jjjbH:bjjjbbascdBd2kcbh3aHcualcefgecdtaecFFFFi0Ecbyd:m:jjjbHjjjjbbg5Bdbasa5BdlasazceVgeBd2ascxfaecdtfcuadcitadcFFFFe0Ecbyd:m:jjjbHjjjjbbg8EBdbasa8EBdwasazcdfgeBd2asclfabadalcbz:cjjjbascxfaecdtfcualcdtgealcFFFFi0Eg8Fcbyd:m:jjjbHjjjjbbgABdbasazcifgXBd2ascxfaXcdtfa8Fcbyd:m:jjjbHjjjjbbgaBdbasazclVBd2aAaaaialavaOascxfz:djjjbalcbyd:m:jjjbHjjjjbbhCascxfasyd2ghcdtfaCBdbasahcefgXBd2ascxfaXcdtfa8Fcbyd:m:jjjbHjjjjbbgXBdbasahcdfgQBd2ascxfaQcdtfa8Fcbyd:m:jjjbHjjjjbbgQBdbasahcifggBd2aXcFeaez:ojjjbh8JaQcFeaez:ojjjbh8KdnalTmba8Ecwfh8Lindna5a3gQcefg3cdtfydbgKa5aQcdtgefydbgXSmbaKaX9Rhza8EaXcitfhHa8Kaefh8Ma8JaefhEcbhYindndnaHaYcitfydbg8AaQ9hmbaEaQBdba8MaQBdbxekdna5a8Acdtg8NfgeclfydbgXaeydbgeSmba8EaecitgKfydbaQSmeaXae9Rhyaecu7aXfhLa8LaKfhXcbheinaLaeSmeaecefheaXydbhKaXcwfhXaKaQ9hmbkaeay6meka8Ka8NfgeaQa8AaeydbcuSEBdbaEa8AaQaEydbcuSEBdbkaYcefgYaz9hmbkka3al9hmbkaAhXaahQa8KhKa8JhYcbheindndnaeaXydbg8A9hmbdnaeaQydbg8A9hmbaYydbh8AdnaKydbgLcu9hmba8Acu9hmbaCaefcb86bbxikaCaefhEdnaeaLSmbaea8ASmbaEce86bbxikaEcl86bbxdkdnaeaaa8AcdtgLfydb9hmbdnaKydbgEcuSmbaeaESmbaYydbgzcuSmbaeazSmba8KaLfydbgHcuSmbaHa8ASmba8JaLfydbgLcuSmbaLa8ASmbdnaAaEcdtfydbg8AaAaLcdtfydb9hmba8AaAazcdtfydbgLSmbaLaAaHcdtfydb9hmbaCaefcd86bbxlkaCaefcl86bbxikaCaefcl86bbxdkaCaefcl86bbxekaCaefaCa8AfRbb86bbkaXclfhXaQclfhQaKclfhKaYclfhYalaecefge9hmbkdnaqTmbdndnaOTmbaOheaAhXalhQindnaqaeydbfRbbTmbaCaXydbfcl86bbkaeclfheaXclfhXaQcufgQmbxdkkaAhealhXindnaqRbbTmbaCaeydbfcl86bbkaqcefhqaeclfheaXcufgXmbkkaAhealhQaChXindnaCaeydbfRbbcl9hmbaXcl86bbkaeclfheaXcefhXaQcufgQmbkkamceGTmbaChealhXindnaeRbbce9hmbaecl86bbkaecefheaXcufgXmbkkascxfagcdtfcualcx2alc;v:Q;v:Qe0Ecbyd:m:jjjbHjjjjbbg3BdbasahclfgHBd2a3aialavaOz:ejjjbh8PdndnaDmbcbhgcbh8Lxekcbh8LawhecbhXindnaeIdbJbbbb9ETmbasc;Wbfa8LcdtfaXBdba8Lcefh8LkaeclfheaDaXcefgX9hmbkascxfaHcdtfcua8Lal2gecdtaecFFFFi0Ecbyd:m:jjjbHjjjjbbggBdbasahcvfgHBd2alTmba8LTmbarcd4hEdnaOTmba8Lcdthzcbh8AaghLinaoaOa8AcdtfydbaE2cdtfhYasc;WbfheaLhXa8LhQinaXaYaeydbcdtgKfIdbawaKfIdbNUdbaeclfheaXclfhXaQcufgQmbkaLazfhLa8Acefg8Aal9hmbxdkka8Lcdthzcbh8AaghLinaoa8AaE2cdtfhYasc;WbfheaLhXa8LhQinaXaYaeydbcdtgKfIdbawaKfIdbNUdbaeclfheaXclfhXaQcufgQmbkaLazfhLa8Acefg8Aal9hmbkkascxfaHcdtfcualc8S2gealc;D;O;f8U0EgQcbyd:m:jjjbHjjjjbbgXBdbasaHcefgKBd2aXcbaez:ojjjbhqdndndna8LTmbascxfaKcdtfaQcbyd:m:jjjbHjjjjbbgvBdbasaHcdfgXBd2avcbaez:ojjjb8AascxfaXcdtfcua8Lal2gecltgXaecFFFFb0Ecbyd:m:jjjbHjjjjbbgiBdbasaHcifBd2aicbaXz:ojjjb8AadmexdkcbhvcbhiadTmekcbhYabhXindna3aXclfydbg8Acx2fgeIdba3aXydbgLcx2fgQIdbgI:tg8Ra3aXcwfydbgEcx2fgKIdlaQIdlg8S:tgRNaKIdbaI:tg8UaeIdla8S:tg8VN:tg8Wa8WNa8VaKIdwaQIdwg8X:tg8YNaRaeIdwa8X:tg8VN:tgRaRNa8Va8UNa8Ya8RN:tg8Ra8RNMM:rg8UJbbbb9ETmba8Wa8U:vh8Wa8Ra8U:vh8RaRa8U:vhRkaqaAaLcdtfydbc8S2fgeaRa8U:rg8UaRNNg8VaeIdbMUdbaea8Ra8Ua8RNg8ZNg8YaeIdlMUdlaea8Wa8Ua8WNg80Ng81aeIdwMUdwaea8ZaRNg8ZaeIdxMUdxaea80aRNgBaeIdzMUdzaea80a8RNg80aeIdCMUdCaeaRa8Ua8Wa8XNaRaINa8Sa8RNMM:mg8SNgINgRaeIdKMUdKaea8RaINg8RaeId3MUd3aea8WaINg8WaeIdaMUdaaeaIa8SNgIaeId8KMUd8Kaea8UaeIdyMUdyaqaAa8Acdtfydbc8S2fgea8VaeIdbMUdbaea8YaeIdlMUdlaea81aeIdwMUdwaea8ZaeIdxMUdxaeaBaeIdzMUdzaea80aeIdCMUdCaeaRaeIdKMUdKaea8RaeId3MUd3aea8WaeIdaMUdaaeaIaeId8KMUd8Kaea8UaeIdyMUdyaqaAaEcdtfydbc8S2fgea8VaeIdbMUdbaea8YaeIdlMUdlaea81aeIdwMUdwaea8ZaeIdxMUdxaeaBaeIdzMUdzaea80aeIdCMUdCaeaRaeIdKMUdKaea8RaeId3MUd3aea8WaeIdaMUdaaeaIaeId8KMUd8Kaea8UaeIdyMUdyaXcxfhXaYcifgYad6mbkcbhzabhLinabazcdtfh8AcbhXinaCa8AaXc;a1jjbfydbcdtfydbgQfRbbhedndnaCaLaXfydbgKfRbbgYc99fcFeGcpe0mbaec99fcFeGc;:e6mekdnaYcufcFeGce0mba8JaKcdtfydbaQ9hmekdnaecufcFeGce0mba8KaQcdtfydbaK9hmekdnaYcv2aefc:G1jjbfRbbTmbaAaQcdtfydbaAaKcdtfydb0mekJbbacJbbacJbbjZaecFeGceSEaYceSEh80dna3a8AaXc;e1jjbfydbcdtfydbcx2fgeIdwa3aKcx2fgYIdwg8S:tg8Wa3aQcx2fgEIdwa8S:tgRaRNaEIdbaYIdbg8X:tg8Ra8RNaEIdlaYIdlg8V:tg8Ua8UNMMgINa8WaRNaeIdba8X:tg81a8RNa8UaeIdla8V:tg8ZNMMg8YaRN:tg8Wa8WNa81aINa8Ya8RN:tgRaRNa8ZaINa8Ya8UN:tg8Ra8RNMM:rg8UJbbbb9ETmba8Wa8U:vh8Wa8Ra8U:vh8RaRa8U:vhRkaqaAaKcdtfydbc8S2fgeaRa80aI:rNg8UaRNNg8YaeIdbMUdbaea8Ra8Ua8RNg80Ng81aeIdlMUdlaea8Wa8Ua8WNgINg8ZaeIdwMUdwaea80aRNg80aeIdxMUdxaeaIaRNgBaeIdzMUdzaeaIa8RNg83aeIdCMUdCaeaRa8Ua8Wa8SNaRa8XNa8Va8RNMM:mg8SNgINgRaeIdKMUdKaea8RaINg8RaeId3MUd3aea8WaINg8WaeIdaMUdaaeaIa8SNgIaeId8KMUd8Kaea8UaeIdyMUdyaqaAaQcdtfydbc8S2fgea8YaeIdbMUdbaea81aeIdlMUdlaea8ZaeIdwMUdwaea80aeIdxMUdxaeaBaeIdzMUdzaea83aeIdCMUdCaeaRaeIdKMUdKaea8RaeId3MUd3aea8WaeIdaMUdaaeaIaeId8KMUd8Kaea8UaeIdyMUdykaXclfgXcx9hmbkaLcxfhLazcifgzad6mbka8LTmbcbhLinJbbbbh8Xa3abaLcdtfgeclfydbgEcx2fgXIdwa3aeydbgzcx2fgQIdwg8Z:tg8Ra8RNaXIdbaQIdbgB:tg8Wa8WNaXIdlaQIdlg83:tg8Ua8UNMMg80a3aecwfydbgHcx2fgeIdwa8Z:tgINa8Ra8RaINa8WaeIdbaB:tg8SNa8UaeIdla83:tg8VNMMgRN:tJbbbbJbbjZa80aIaINa8Sa8SNa8Va8VNMMg81NaRaRN:tg8Y:va8YJbbbb9BEg8YNhUa81a8RNaIaRN:ta8YNh85a80a8VNa8UaRN:ta8YNh86a81a8UNa8VaRN:ta8YNh87a80a8SNa8WaRN:ta8YNh88a81a8WNa8SaRN:ta8YNh89a8Wa8VNa8Sa8UN:tgRaRNa8UaINa8Va8RN:tgRaRNa8Ra8SNaIa8WN:tgRaRNMM:rJbbbZNhRagaza8L2gwcdtfhXagaHa8L2g8NcdtfhQagaEa8L2g5cdtfhKa8Z:mh8:a83:mhZaB:mhncbhYa8Lh8AJbbbbh8VJbbbbh8YJbbbbh80Jbbbbh81Jbbbbh8ZJbbbbhBJbbbbh83JbbbbhcJbbbbh9cinasc;WbfaYfgecwfaRa85aKIdbaXIdbgI:tg8UNaUaQIdbaI:tg8SNMg8RNUdbaeclfaRa87a8UNa86a8SNMg8WNUdbaeaRa89a8UNa88a8SNMg8UNUdbaecxfaRa8:a8RNaZa8WNaIana8UNMMMgINUdbaRa8Ra8WNNa81Mh81aRa8Ra8UNNa8ZMh8ZaRa8Wa8UNNaBMhBaRaIaINNa8XMh8XaRa8RaINNa8VMh8VaRa8WaINNa8YMh8YaRa8UaINNa80Mh80aRa8Ra8RNNa83Mh83aRa8Wa8WNNacMhcaRa8Ua8UNNa9cMh9caXclfhXaKclfhKaQclfhQaYczfhYa8Acufg8Ambkavazc8S2fgea9caeIdbMUdbaeacaeIdlMUdlaea83aeIdwMUdwaeaBaeIdxMUdxaea8ZaeIdzMUdzaea81aeIdCMUdCaea80aeIdKMUdKaea8YaeId3MUd3aea8VaeIdaMUdaaea8XaeId8KMUd8KaeaRaeIdyMUdyavaEc8S2fgea9caeIdbMUdbaeacaeIdlMUdlaea83aeIdwMUdwaeaBaeIdxMUdxaea8ZaeIdzMUdzaea81aeIdCMUdCaea80aeIdKMUdKaea8YaeId3MUd3aea8VaeIdaMUdaaea8XaeId8KMUd8KaeaRaeIdyMUdyavaHc8S2fgea9caeIdbMUdbaeacaeIdlMUdlaea83aeIdwMUdwaeaBaeIdxMUdxaea8ZaeIdzMUdzaea81aeIdCMUdCaea80aeIdKMUdKaea8YaeId3MUd3aea8VaeIdaMUdaaea8XaeId8KMUd8KaeaRaeIdyMUdyaiawcltfh8AcbhXa8LhKina8AaXfgeasc;WbfaXfgQIdbaeIdbMUdbaeclfgYaQclfIdbaYIdbMUdbaecwfgYaQcwfIdbaYIdbMUdbaecxfgeaQcxfIdbaeIdbMUdbaXczfhXaKcufgKmbkaia5cltfh8AcbhXa8LhKina8AaXfgeasc;WbfaXfgQIdbaeIdbMUdbaeclfgYaQclfIdbaYIdbMUdbaecwfgYaQcwfIdbaYIdbMUdbaecxfgeaQcxfIdbaeIdbMUdbaXczfhXaKcufgKmbkaia8Ncltfh8AcbhXa8LhKina8AaXfgeasc;WbfaXfgQIdbaeIdbMUdbaeclfgYaQclfIdbaYIdbMUdbaecwfgYaQcwfIdbaYIdbMUdbaecxfgeaQcxfIdbaeIdbMUdbaXczfhXaKcufgKmbkaLcifgLad6mbkkcbhQdndnamcwGgJmbJbbbbh8Vcbh9ecbhocbhhxekcbh9ea8Fcbyd:m:jjjbHjjjjbbhhascxfasyd2gecdtfahBdbasaecefgXBd2ascxfaXcdtfcuahalabadaAz:fjjjbgKcltaKcjjjjiGEcbyd:m:jjjbHjjjjbbgoBdbasaecdfBd2aoaKaha3alz:gjjjbJFFuuh8VaKTmbaoheaKhXinaeIdbgRa8Va8VaR9EEh8VaeclfheaXcufgXmbkaKh9ekasydlhTdnalTmbaTclfheaTydbhKaChXalhYcbhQincbaeydbg8AaK9RaXRbbcpeGEaQfhQaXcefhXaeclfhea8AhKaYcufgYmbkaQce4hQkcuadaQ9RcifgScx2aSc;v:Q;v:Qe0Ecbyd:m:jjjbHjjjjbbhDascxfasyd2g9hcdtfaDBdbasa9hcefgeBd2ascxfaecdtfcuaScdtaScFFFFi0Ecbyd:m:jjjbHjjjjbbgrBdbasa9hcdfgeBd2ascxfaecdtfa8Fcbyd:m:jjjbHjjjjbbgyBdbasa9hcifgeBd2ascxfaecdtfalcbyd:m:jjjbHjjjjbbg9iBdbasa9hclfg6Bd2axaxNa8PJbbjZamclGEgUaUN:vh9cJbbbbhcdnadak9nmbdnaSci6mba8Lclth9kaDcwfh0Jbbbbh83JbbbbhcinasclfabadalaAz:cjjjbabhzcbh8Ecbh8Finaba8FcdtfhHcbheindnaAazaefydbgQcdtgEfydbgYaAaHaec;q1jjbfydbcdtfydbgXcdtgwfydbg8ASmbaCaXfRbbgLcv2aCaQfRbbgKfc;G1jjbfRbbg5aKcv2aLfg8Nc;G1jjbfRbbg8MVcFeGTmbdna8AaY9nmba8Nc:G1jjbfRbbcFeGmekaKcufhYdnaKaL9hmbaYcFeGce0mba8JaEfydbaX9hmekdndnaKclSmbaLcl9hmekdnaYcFeGce0mba8JaEfydbaX9hmdkaLcufcFeGce0mba8KawfydbaQ9hmekaDa8Ecx2fgKaXaQa8McFeGgYEBdlaKaQaXaYEBdbaKaYa5Gcb9hBdwa8Ecefh8Ekaeclfgecx9hmbkdna8Fcifg8Fad9pmbazcxfhza8EcifaS9nmekka8ETmdcbhLinaqaAaDaLcx2fgKydbgYcdtgzfydbc8S2fgeIdwa3aKydlg8Acx2fgXIdwg8WNaeIdzaXIdbg8UNaeIdaMgRaRMMa8WNaeIdlaXIdlgINaeIdCa8WNaeId3MgRaRMMaINaeIdba8UNaeIdxaINaeIdKMgRaRMMa8UNaeId8KMMM:lhRJbbbbJbbjZaeIdyg8R:va8RJbbbb9BEh8RdndnaKydwgEmbJFFuuh8YxekJbbbbJbbjZaqaAa8Acdtfydbc8S2fgeIdyg8S:va8SJbbbb9BEaeIdwa3aYcx2fgXIdwg8SNaeIdzaXIdbg8XNaeIdaMg8Ya8YMMa8SNaeIdlaXIdlg8YNaeIdCa8SNaeId3Mg8Sa8SMMa8YNaeIdba8XNaeIdxa8YNaeIdKMg8Sa8SMMa8XNaeId8KMMM:lNh8Yka8RaRNh80dna8LTmbavaYc8S2fgQIdwa8WNaQIdza8UNaQIdaMgRaRMMa8WNaQIdlaINaQIdCa8WNaQId3MgRaRMMaINaQIdba8UNaQIdxaINaQIdKMgRaRMMa8UNaQId8KMMMhRaga8Aa8L2gHcdtfhXaiaYa8L2gwcltfheaQIdyh8Sa8LhQinaXIdbg8Ra8Ra8SNaecxfIdba8WaecwfIdbNa8UaeIdbNaIaeclfIdbNMMMg8Ra8RM:tNaRMhRaXclfhXaeczfheaQcufgQmbkdndnaEmbJbbbbh8Rxekava8Ac8S2fgQIdwa3aYcx2fgeIdwg8UNaQIdzaeIdbgINaQIdaMg8Ra8RMMa8UNaQIdlaeIdlg8SNaQIdCa8UNaQId3Mg8Ra8RMMa8SNaQIdbaINaQIdxa8SNaQIdKMg8Ra8RMMaINaQId8KMMMh8RagawcdtfhXaiaHcltfheaQIdyh8Xa8LhQinaXIdbg8Wa8Wa8XNaecxfIdba8UaecwfIdbNaIaeIdbNa8SaeclfIdbNMMMg8Wa8WM:tNa8RMh8RaXclfhXaeczfheaQcufgQmbka8R:lh8Rka80aR:lMh80a8Ya8RMh8YaCaYfRbbcd9hmbdna8Ka8Ja8Jazfydba8ASEaaazfydbgHcdtfydbgzcu9hmbaaa8AcdtfydbhzkavaHc8S2fgQIdwa3azcx2fgeIdwg8WNaQIdzaeIdbg8UNaQIdaMgRaRMMa8WNaQIdlaeIdlgINaQIdCa8WNaQId3MgRaRMMaINaQIdba8UNaQIdxaINaQIdKMgRaRMMa8UNaQId8KMMMhRagaza8L2gwcdtfhXaiaHa8L2g8NcltfheaQIdyh8Sa8LhQinaXIdbg8Ra8Ra8SNaecxfIdba8WaecwfIdbNa8UaeIdbNaIaeclfIdbNMMMg8Ra8RM:tNaRMhRaXclfhXaeczfheaQcufgQmbkdndnaEmbJbbbbh8Rxekavazc8S2fgQIdwa3aHcx2fgeIdwg8UNaQIdzaeIdbgINaQIdaMg8Ra8RMMa8UNaQIdlaeIdlg8SNaQIdCa8UNaQId3Mg8Ra8RMMa8SNaQIdbaINaQIdxa8SNaQIdKMg8Ra8RMMaINaQId8KMMMh8Raga8NcdtfhXaiawcltfheaQIdyh8Xa8LhQinaXIdbg8Wa8Wa8XNaecxfIdba8UaecwfIdbNaIaeIdbNa8SaeclfIdbNMMMg8Wa8WM:tNa8RMh8RaXclfhXaeczfheaQcufgQmbka8R:lh8Rka80aR:lMh80a8Ya8RMh8YkaKa80a8Ya80a8Y9FgeEUdwaKa8AaYaeaETVgeEBdlaKaYa8AaeEBdbaLcefgLa8E9hmbkasc;Wbfcbcj;qbz:ojjjb8Aa0hea8EhXinasc;WbfaeydbcA4cF8FGgQcFAaQcFA6EcdtfgQaQydbcefBdbaecxfheaXcufgXmbkcbhecbhXinasc;WbfaefgQydbhKaQaXBdbaKaXfhXaeclfgecj;qb9hmbkcbhea0hXinasc;WbfaXydbcA4cF8FGgQcFAaQcFA6EcdtfgQaQydbgQcefBdbaraQcdtfaeBdbaXcxfhXa8Eaecefge9hmbkadak9RgQci9Uh9mdnalTmbcbheayhXinaXaeBdbaXclfhXalaecefge9hmbkkcbh9na9icbalz:ojjjbh8FaQcO9Uh9oa9mce4h9pasydwh9qcbh8Mcbh5dninaDara5cdtfydbcx2fg8NIdwgRa9c9Emea8Ma9m9pmeJFFuuh8Rdna9pa8E9pmbaDara9pcdtfydbcx2fIdwJbb;aZNh8RkdnaRa8R9ETmbaRac9ETmba8Ma9o0mdkdna8FaAa8NydlgHcdtg9rfydbgKfg9sRbba8FaAa8Nydbgzcdtg9tfydbgefg9uRbbVmbaCazfRbbh9vdnaTaecdtfgXclfydbgQaXydbgXSmbaQaX9RhYa3aKcx2fhLa3aecx2fhEa9qaXcitfhecbhXcehwdnindnayaeydbcdtfydbgQaKSmbayaeclfydbcdtfydbg8AaKSmbaQa8ASmba3a8Acx2fg8AIdba3aQcx2fgQIdbg8W:tgRaEIdlaQIdlg8U:tg8XNaEIdba8W:tg8Ya8AIdla8U:tg8RN:tgIaRaLIdla8U:tg80NaLIdba8W:tg81a8RN:tg8UNa8RaEIdwaQIdwg8S:tg8ZNa8Xa8AIdwa8S:tg8WN:tg8Xa8RaLIdwa8S:tgBNa80a8WN:tg8RNa8Wa8YNa8ZaRN:tg8Sa8Wa81NaBaRN:tgRNMMaIaINa8Xa8XNa8Sa8SNMMa8Ua8UNa8Ra8RNaRaRNMMN:rJbbj8:N9FmdkaecwfheaXcefgXaY6hwaYaX9hmbkkawceGTmba9pcefh9pxekdndndndna9vc9:fPdebdkazheinayaecdtgefaHBdbaaaefydbgeaz9hmbxikkdna8Ka8Ja8Ja9tfydbaHSEaaa9tfydbgzcdtfydbgecu9hmbaaa9rfydbhekaya9tfaHBdbaehHkayazcdtfaHBdbka9uce86bba9sce86bba8NIdwgRacacaR9DEhca9ncefh9ncecda9vceSEa8Mfh8Mka5cefg5a8E9hmbkka9nTmddnalTmbcbh8AcbhEindnayaEcdtgefydbgQaESmbaAaQcdtfydbhzdnaEaAaefydb9hgHmbaqazc8S2fgeaqaEc8S2fgXIdbaeIdbMUdbaeaXIdlaeIdlMUdlaeaXIdwaeIdwMUdwaeaXIdxaeIdxMUdxaeaXIdzaeIdzMUdzaeaXIdCaeIdCMUdCaeaXIdKaeIdKMUdKaeaXId3aeId3MUd3aeaXIdaaeIdaMUdaaeaXId8KaeId8KMUd8KaeaXIdyaeIdyMUdyka8LTmbavaQc8S2fgeavaEc8S2gwfgXIdbaeIdbMUdbaeaXIdlaeIdlMUdlaeaXIdwaeIdwMUdwaeaXIdxaeIdxMUdxaeaXIdzaeIdzMUdzaeaXIdCaeIdCMUdCaeaXIdKaeIdKMUdKaeaXId3aeId3MUd3aeaXIdaaeIdaMUdaaeaXId8KaeId8KMUd8KaeaXIdyaeIdyMUdya9kaQ2hLaihXa8LhKinaXaLfgeaXa8AfgQIdbaeIdbMUdbaeclfgYaQclfIdbaYIdbMUdbaecwfgYaQcwfIdbaYIdbMUdbaecxfgeaQcxfIdbaeIdbMUdbaXczfhXaKcufgKmbkaHmbJbbbbJbbjZaqawfgeIdygR:vaRJbbbb9BEaeIdwa3azcx2fgXIdwgRNaeIdzaXIdbg8RNaeIdaMg8Wa8WMMaRNaeIdlaXIdlg8WNaeIdCaRNaeId3MgRaRMMa8WNaeIdba8RNaeIdxa8WNaeIdKMgRaRMMa8RNaeId8KMMM:lNgRa83a83aR9DEh83ka8Aa9kfh8AaEcefgEal9hmbkcbhXa8JheindnaeydbgQcuSmbdnaXayaQcdtgKfydbgQ9hmbcuhQa8JaKfydbgKcuSmbayaKcdtfydbhQkaeaQBdbkaeclfhealaXcefgX9hmbkcbhXa8KheindnaeydbgQcuSmbdnaXayaQcdtgKfydbgQ9hmbcuhQa8KaKfydbgKcuSmbayaKcdtfydbhQkaeaQBdbkaeclfhealaXcefgX9hmbkka83aca8LEh83cbhKabhecbhYindnayaeydbcdtfydbgXayaeclfydbcdtfydbgQSmbaXayaecwfydbcdtfydbg8ASmbaQa8ASmbabaKcdtfgLaXBdbaLcwfa8ABdbaLclfaQBdbaKcifhKkaecxfheaYcifgYad6mbkdndnaJTmbaKak9nmba8Va839FTmbcbhdabhecbhXindnaoahaeydbgQcdtfydbcdtfIdba839ETmbabadcdtfgYaQBdbaYclfaeclfydbBdbaYcwfaecwfydbBdbadcifhdkaecxfheaXcifgXaK6mbkJFFuuh8Va9eTmeaohea9ehXJFFuuhRinaeIdbg8RaRaRa8R9EEg8WaRa8Ra839EgQEhRa8Wa8VaQEh8VaeclfheaXcufgXmbxdkkaKhdkadak0mbxdkkasclfabadalaAz:cjjjbkdndnadak0mbadhXxekdnaJmbadhXxekdna8Va9c9FmbadhXxekina8VJbb;aZNgRa9caRa9c9DEh8WJbbbbhRdna9eTmbaohea9ehAinaeIdbg8RaRa8Ra8W9FEaRa8RaR9EEhRaeclfheaAcufgAmbkkcbhXabhecbhAindnaoahaeydbgQcdtfydbcdtfIdba8W9ETmbabaXcdtfgKaQBdbaKclfaeclfydbBdbaKcwfaecwfydbBdbaXcifhXkaecxfheaAcifgAad6mbkJFFuuh8Vdna9eTmbaohea9ehAJFFuuh8RinaeIdbg8Ua8Ra8Ra8U9EEgIa8Ra8Ua8W9EgQEh8RaIa8VaQEh8VaeclfheaAcufgAmbkkdnaXad9hmbadhXxdkaRacacaR9DEhcaXak9nmeaXhda8Va9c9FmbkkdnamcjjjjlGTmbaOmbaXTmbcbh8AabheinaCaeydbgKfRbbc3thLaecwfgEydbhAdndna8JaKcdtgHfydbaeclfgzydbgQSmbcbhYa8KaQcdtfydbaK9hmekcjjjj94hYkaeaLaYVaKVBdbaCaQfRbbc3thLdndna8JaQcdtfydbaASmbcbhYa8KaAcdtfydbaQ9hmekcjjjj94hYkazaLaYVaQVBdbaCaAfRbbc3thYdndna8JaAcdtfydbaKSmbcbhQa8KaHfydbaA9hmekcjjjj94hQkaEaYaQVaAVBdbaecxfhea8Acifg8AaX6mbkkdnaOTmbaXTmbaXheinabaOabydbcdtfydbBdbabclfhbaecufgembkkdnaPTmbaPaUac:rNUdbka9hcdtascxffcxfhednina6Tmeaeydbcbyd1:jjjbH:bjjjbbaec98fhea6cufh6xbkkasc;W;qbf8KjjjjbaXk;Yieouabydlhvabydbclfcbaicdtz:ojjjbhoadci9UhrdnadTmbdnalTmbaehwadhDinaoalawydbcdtfydbcdtfgqaqydbcefBdbawclfhwaDcufgDmbxdkkaehwadhDinaoawydbcdtfgqaqydbcefBdbawclfhwaDcufgDmbkkdnaiTmbcbhDaohwinawydbhqawaDBdbawclfhwaqaDfhDaicufgimbkkdnadci6mbinaecwfydbhwaeclfydbhDaeydbhidnalTmbalawcdtfydbhwalaDcdtfydbhDalaicdtfydbhikavaoaicdtfgqydbcitfaDBdbavaqydbcitfawBdlaqaqydbcefBdbavaoaDcdtfgqydbcitfawBdbavaqydbcitfaiBdlaqaqydbcefBdbavaoawcdtfgwydbcitfaiBdbavawydbcitfaDBdlawawydbcefBdbaecxfhearcufgrmbkkabydbcbBdbk:todDue99aicd4aifhrcehwinawgDcethwaDar6mbkcuaDcdtgraDcFFFFi0Ecbyd:m:jjjbHjjjjbbhwaoaoyd9GgqcefBd9GaoaqcdtfawBdbawcFearz:ojjjbhkdnaiTmbalcd4hlaDcufhxcbhminamhDdnavTmbavamcdtfydbhDkcbadaDal2cdtfgDydlgwawcjjjj94SEgwcH4aw7c:F:b:DD2cbaDydbgwawcjjjj94SEgwcH4aw7c;D;O:B8J27cbaDydwgDaDcjjjj94SEgDcH4aD7c:3F;N8N27axGhwamcdthPdndndnavTmbakawcdtfgrydbgDcuSmeadavaPfydbal2cdtfgsIdbhzcehqinaqhrdnadavaDcdtfydbal2cdtfgqIdbaz9CmbaqIdlasIdl9CmbaqIdwasIdw9BmlkarcefhqakawarfaxGgwcdtfgrydbgDcu9hmbxdkkakawcdtfgrydbgDcuSmbadamal2cdtfgsIdbhzcehqinaqhrdnadaDal2cdtfgqIdbaz9CmbaqIdlasIdl9CmbaqIdwasIdw9BmikarcefhqakawarfaxGgwcdtfgrydbgDcu9hmbkkaramBdbamhDkabaPfaDBdbamcefgmai9hmbkkakcbyd1:jjjbH:bjjjbbaoaoyd9GcufBd9GdnaeTmbaiTmbcbhDaehwinawaDBdbawclfhwaiaDcefgD9hmbkcbhDaehwindnaDabydbgrSmbawaearcdtfgrydbBdbaraDBdbkawclfhwabclfhbaiaDcefgD9hmbkkk;Qodvuv998Jjjjjbca9Rgvczfcwfcbyd11jjbBdbavcb8Pdj1jjb83izavcwfcbydN1jjbBdbavcb8Pd:m1jjb83ibdnadTmbaicd4hodnabmbdnalTmbcbhrinaealarcdtfydbao2cdtfhwcbhiinavczfaifgDawaifIdbgqaDIdbgkakaq9EEUdbavaifgDaqaDIdbgkakaq9DEUdbaiclfgicx9hmbkarcefgrad9hmbxikkaocdthrcbhwincbhiinavczfaifgDaeaifIdbgqaDIdbgkakaq9EEUdbavaifgDaqaDIdbgkakaq9DEUdbaiclfgicx9hmbkaearfheawcefgwad9hmbxdkkdnalTmbcbhrinabarcx2fgiaealarcdtfydbao2cdtfgwIdbUdbaiawIdlUdlaiawIdwUdwcbhiinavczfaifgDawaifIdbgqaDIdbgkakaq9EEUdbavaifgDaqaDIdbgkakaq9DEUdbaiclfgicx9hmbkarcefgrad9hmbxdkkaocdthlcbhraehwinabarcx2fgiaearao2cdtfgDIdbUdbaiaDIdlUdlaiaDIdwUdwcbhiinavczfaifgDawaifIdbgqaDIdbgkakaq9EEUdbavaifgDaqaDIdbgkakaq9DEUdbaiclfgicx9hmbkawalfhwarcefgrad9hmbkkJbbbbavIdbavIdzgk:tgqaqJbbbb9DEgqavIdlavIdCgx:tgmamaq9DEgqavIdwavIdKgm:tgPaPaq9DEhPdnabTmbadTmbJbbbbJbbjZaP:vaPJbbbb9BEhqinabaqabIdbak:tNUdbabclfgvaqavIdbax:tNUdbabcwfgvaqavIdbam:tNUdbabcxfhbadcufgdmbkkaPk:ZlewudnaeTmbcbhvabhoinaoavBdbaoclfhoaeavcefgv9hmbkkdnaiTmbcbhrinadarcdtfhwcbhDinalawaDcdtgvc;a1jjbfydbcdtfydbcdtfydbhodnabalawavfydbcdtfydbgqcdtfgkydbgvaqSmbinakabavgqcdtfgxydbgvBdbaxhkaqav9hmbkkdnabaocdtfgkydbgvaoSmbinakabavgocdtfgxydbgvBdbaxhkaoav9hmbkkdnaqaoSmbabaqaoaqao0Ecdtfaqaoaqao6EBdbkaDcefgDci9hmbkarcifgrai6mbkkdnaembcbskcbhxindnalaxcdtgvfydbax9hmbaxhodnabavfgDydbgvaxSmbaDhqinaqabavgocdtfgkydbgvBdbakhqaoav9hmbkkaDaoBdbkaxcefgxae9hmbkcbhvabhocbhkindndnavalydbgq9hmbdnavaoydbgq9hmbaoakBdbakcefhkxdkaoabaqcdtfydbBdbxekaoabaqcdtfydbBdbkaoclfhoalclfhlaeavcefgv9hmbkakk;Jiilud99duabcbaecltz:ojjjbhvdnalTmbadhoaihralhwinarcwfIdbhDarclfIdbhqavaoydbcltfgkarIdbakIdbMUdbakclfgxaqaxIdbMUdbakcwfgxaDaxIdbMUdbakcxfgkakIdbJbbjZMUdbaoclfhoarcxfhrawcufgwmbkkdnaeTmbavhraehkinarcxfgoIdbhDaocbBdbararIdbJbbbbJbbjZaD:vaDJbbbb9BEgDNUdbarclfgoaDaoIdbNUdbarcwfgoaDaoIdbNUdbarczfhrakcufgkmbkkdnalTmbinavadydbcltfgrcxfgkaicwfIdbarcwfIdb:tgDaDNaiIdbarIdb:tgDaDNaiclfIdbarclfIdb:tgDaDNMMgDakIdbgqaqaD9DEUdbadclfhdaicxfhialcufglmbkkdnaeTmbavcxfhrinabarIdbUdbarczfhrabclfhbaecufgembkkk8MbabaeadaialavcbcbcbcbcbaoarawaDz:bjjjbk8MbabaeadaialavaoarawaDaqakaxamaPz:bjjjbk:DCoDud99rue99iul998Jjjjjbc;Wb9Rgw8KjjjjbdndnarmbcbhDxekawcxfcbc;Kbz:ojjjb8Aawcuadcx2adc;v:Q;v:Qe0Ecbyd:m:jjjbHjjjjbbgqBdxawceBd2aqaeadaicbz:ejjjb8AawcuadcdtadcFFFFi0Egkcbyd:m:jjjbHjjjjbbgxBdzawcdBd2adcd4adfhmceheinaegicetheaiam6mbkcbhPawcuaicdtgsaicFFFFi0Ecbyd:m:jjjbHjjjjbbgzBdCawciBd2dndnar:ZgH:rJbbbZMgO:lJbbb9p9DTmbaO:Ohexekcjjjj94hekaicufhAc:bwhmcbhCadhXcbhQinaChLaeamgKcufaeaK9iEaPgDcefaeaD9kEhYdndnadTmbaYcuf:YhOaqhiaxheadhmindndnaiIdbaONJbbbZMg8A:lJbbb9p9DTmba8A:OhCxekcjjjj94hCkaCcCthCdndnaiclfIdbaONJbbbZMg8A:lJbbb9p9DTmba8A:OhExekcjjjj94hEkaEcqtaCVhCdndnaicwfIdbaONJbbbZMg8A:lJbbb9p9DTmba8A:OhExekcjjjj94hEkaeaCaEVBdbaicxfhiaeclfheamcufgmmbkazcFeasz:ojjjbh3cbh5cbhPindna3axaPcdtfydbgCcm4aC7c:v;t;h;Ev2gics4ai7aAGgmcdtfgEydbgecuSmbaeaCSmbcehiina3amaifaAGgmcdtfgEydbgecuSmeaicefhiaeaC9hmbkkaEaCBdba5aecuSfh5aPcefgPad9hmbxdkkazcFeasz:ojjjb8Acbh5kaDaYa5ar0giEhPaLa5aiEhCdna5arSmbaYaKaiEgmaP9Rcd9imbdndnaQcl0mbdnaX:ZgOaL:Zg8A:taY:Yg8EaD:Y:tg8Fa8EaK:Y:tgaa5:ZghaH:tNNNaOaH:taaNa8Aah:tNa8AaH:ta8FNahaO:tNM:va8EMJbbbZMgO:lJbbb9p9DTmbaO:Ohexdkcjjjj94hexekaPamfcd9Theka5aXaiEhXaQcefgQcs9hmekkdndnaCmbcihicbhDxekcbhiawakcbyd:m:jjjbHjjjjbbg5BdKawclBd2aPcuf:Yh8AdndnadTmbaqhiaxheadhmindndnaiIdba8ANJbbbZMgO:lJbbb9p9DTmbaO:OhCxekcjjjj94hCkaCcCthCdndnaiclfIdba8ANJbbbZMgO:lJbbb9p9DTmbaO:OhExekcjjjj94hEkaEcqtaCVhCdndnaicwfIdba8ANJbbbZMgO:lJbbb9p9DTmbaO:OhExekcjjjj94hEkaeaCaEVBdbaicxfhiaeclfheamcufgmmbkazcFeasz:ojjjbh3cbhDcbhYindndndna3axaYcdtgKfydbgCcm4aC7c:v;t;h;Ev2gics4ai7aAGgmcdtfgEydbgecuSmbcehiinaxaecdtgefydbaCSmdamaifheaicefhia3aeaAGgmcdtfgEydbgecu9hmbkkaEaYBdbaDhiaDcefhDxeka5aefydbhika5aKfaiBdbaYcefgYad9hmbkcuaDc32giaDc;j:KM;jb0EhexekazcFeasz:ojjjb8AcbhDcbhekawaecbyd:m:jjjbHjjjjbbgeBd3awcvBd2aecbaiz:ojjjbhEavcd4hKdnadTmbdnalTmbaKcdth3a5hCaqhealhmadhAinaEaCydbc32fgiaeIdbaiIdbMUdbaiaeclfIdbaiIdlMUdlaiaecwfIdbaiIdwMUdwaiamIdbaiIdxMUdxaiamclfIdbaiIdzMUdzaiamcwfIdbaiIdCMUdCaiaiIdKJbbjZMUdKaCclfhCaecxfheama3fhmaAcufgAmbxdkka5hmaqheadhCinaEamydbc32fgiaeIdbaiIdbMUdbaiaeclfIdbaiIdlMUdlaiaecwfIdbaiIdwMUdwaiaiIdxJbbbbMUdxaiaiIdzJbbbbMUdzaiaiIdCJbbbbMUdCaiaiIdKJbbjZMUdKamclfhmaecxfheaCcufgCmbkkdnaDTmbaEhiaDheinaiaiIdbJbbbbJbbjZaicKfIdbgO:vaOJbbbb9BEgONUdbaiclfgmaOamIdbNUdbaicwfgmaOamIdbNUdbaicxfgmaOamIdbNUdbaiczfgmaOamIdbNUdbaicCfgmaOamIdbNUdbaic3fhiaecufgembkkcbhCawcuaDcdtgYaDcFFFFi0Egicbyd:m:jjjbHjjjjbbgeBdaawcoBd2awaicbyd:m:jjjbHjjjjbbg3Bd8KaecFeaYz:ojjjbhxdnadTmbJbbjZJbbjZa8A:vaPceSEaoNgOaONh8AaKcdthPalheina8Aaec;81jjbalEgmIdwaEa5ydbgAc32fgiIdC:tgOaONamIdbaiIdx:tgOaONamIdlaiIdz:tgOaONMMNaqcwfIdbaiIdw:tgOaONaqIdbaiIdb:tgOaONaqclfIdbaiIdl:tgOaONMMMhOdndnaxaAcdtgifgmydbcuSmba3aifIdbaO9ETmekamaCBdba3aifaOUdbka5clfh5aqcxfhqaeaPfheadaCcefgC9hmbkkabaxaYz:njjjb8AcrhikaicdthiinaiTmeaic98fgiawcxffydbcbyd1:jjjbH:bjjjbbxbkkawc;Wbf8KjjjjbaDk:Ydidui99ducbhi8Jjjjjbca9Rglczfcwfcbyd11jjbBdbalcb8Pdj1jjb83izalcwfcbydN1jjbBdbalcb8Pd:m1jjb83ibdndnaembJbbjFhvJbbjFhoJbbjFhrxekadcd4cdthwincbhdinalczfadfgDabadfIdbgvaDIdbgoaoav9EEUdbaladfgDavaDIdbgoaoav9DEUdbadclfgdcx9hmbkabawfhbaicefgiae9hmbkalIdwalIdK:thralIdlalIdC:thoalIdbalIdz:thvkJbbbbavavJbbbb9DEgvaoaoav9DEgvararav9DEk9DeeuabcFeaicdtz:ojjjbhlcbhbdnadTmbindnalaeydbcdtfgiydbcu9hmbaiabBdbabcefhbkaeclfheadcufgdmbkkabk9teiucbcbyd:q:jjjbgeabcifc98GfgbBd:q:jjjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik;teeeudndnaeabVciGTmbabhixekdndnadcz9pmbabhixekabhiinaiaeydbBdbaiaeydlBdlaiaeydwBdwaiaeydxBdxaeczfheaiczfhiadc9Wfgdcs0mbkkadcl6mbinaiaeydbBdbaeclfheaiclfhiadc98fgdci0mbkkdnadTmbinaiaeRbb86bbaicefhiaecefheadcufgdmbkkabk:3eedudndnabciGTmbabhixekaecFeGc:b:c:ew2hldndnadcz9pmbabhixekabhiinaialBdxaialBdwaialBdlaialBdbaiczfhiadc9Wfgdcs0mbkkadcl6mbinaialBdbaiclfhiadc98fgdci0mbkkdnadTmbinaiae86bbaicefhiadcufgdmbkkabk9teiucbcbyd:q:jjjbgeabcrfc94GfgbBd:q:jjjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik9:eiuZbhedndncbyd:q:jjjbgdaecztgi9nmbcuheadai9RcFFifcz4nbcuSmekadhekcbabae9Rcifc98Gcbyd:q:jjjbfgdBd:q:jjjbdnadZbcztge9nmbadae9RcFFifcz4nb8Akkk:Iedbcjwk1eFFuuFFuuFFuuFFuFFFuFFFuFbbbbbbbbeeebeebebbeeebebbbbbebebbbbbbbbbebbbdbbbbbbbebbbebbbdbbbbbbbbbbbeeeeebebbebbebebbbeebbbbbbbbbbbbbbbbbbbbbc1Dkxebbbdbbb:GNbb",Q=new Uint8Array([32,0,65,2,1,106,34,33,3,128,11,4,13,64,6,253,10,7,15,116,127,5,8,12,40,16,19,54,20,9,27,255,113,17,42,67,24,23,146,148,18,14,22,45,70,69,56,114,101,21,25,63,75,136,108,28,118,29,73,115]);if(typeof WebAssembly!=="object")return{supported:!1};var B,Y=WebAssembly.instantiate(J(A),{}).then(function(K){B=K.instance,B.exports.__wasm_call_ctors()});function J(K){var I=new Uint8Array(K.length);for(var V=0;V96?H-97:H>64?H-39:H+4}var D=0;for(var V=0;V=3),C(H>=0&&H<=K.length),C(H%3==0),C(D>=0);var z=0;for(var M=0;M<(L?L.length:0);++M)C(L[M]in E),z|=E[L[M]];var N=K.BYTES_PER_ELEMENT==4?K:new Uint32Array(K),q=F(B.exports.meshopt_simplify,N,K.length,I,I.length/V,V*4,H,D,z);return q[0]=K instanceof Uint32Array?q[0]:new K.constructor(q[0]),q},simplifyWithAttributes:function(K,I,V,H,D,L,z,M,N,q){C(K instanceof Uint32Array||K instanceof Int32Array||K instanceof Uint16Array||K instanceof Int16Array),C(K.length%3==0),C(I instanceof Float32Array),C(I.length%V==0),C(V>=3),C(H instanceof Float32Array),C(H.length%D==0),C(D>=0),C(z==null||z instanceof Uint8Array),C(z==null||z.length==I.length/V),C(M>=0&&M<=K.length),C(M%3==0),C(N>=0),C(Array.isArray(L)),C(D>=L.length),C(L.length<=32);for(var w=0;w=0);var P=0;for(var w=0;w<(q?q.length:0);++w)C(q[w]in E),P|=E[q[w]];var _=K.BYTES_PER_ELEMENT==4?K:new Uint32Array(K),j=Z(B.exports.meshopt_simplifyWithAttributes,_,K.length,I,I.length/V,V*4,H,D*4,new Float32Array(L),z?new Uint8Array(z):null,M,N,P);return j[0]=K instanceof Uint32Array?j[0]:new K.constructor(j[0]),j},getScale:function(K,I){return C(K instanceof Float32Array),C(K.length%I==0),C(I>=3),U(B.exports.meshopt_simplifyScale,K,K.length/I,I*4)},simplifyPoints:function(K,I,V,H,D,L){if(C(K instanceof Float32Array),C(K.length%I==0),C(I>=3),C(V>=0&&V<=K.length/I),H)return C(H instanceof Float32Array),C(H.length%D==0),C(D>=3),C(K.length/I==H.length/D),$(B.exports.meshopt_simplifyPoints,K,K.length/I,I*4,H,D*4,L,V);else return $(B.exports.meshopt_simplifyPoints,K,K.length/I,I*4,void 0,0,0,V)}}}();if(typeof VH==="object"&&typeof lh==="object")lh.exports=c3;else if(typeof define==="function"&&define.amd)define([],function(){return c3});else if(typeof VH==="object")VH.MeshoptSimplifier=c3;else(typeof self<"u"?self:VH).MeshoptSimplifier=c3});var G1A=R((IH,ph)=>{var l3=function(){var A="b9H79TebbbeVx9Geueu9Geub9Gbb9Giuuueu9Gmuuuuuuuuuuu9999eu9Gvuuuuueu9Gwuuuuuuuub9Gxuuuuuuuuuuuueu9Gkuuuuuuuuuu99eu9Gouuuuuub9Gruuuuuuub9GluuuubiOHdilvorwDqqkbiibeilve9Weiiviebeoweuec;G:Odkr:Yewo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bb8A9TW79O9V9Wt9F9I919P29K9nW79O2Wt79c9V919U9KbeX9TW79O9V9Wt9F9I919P29K9nW79O2Wt7bo39TW79O9V9Wt9F9J9V9T9W91tWJ2917tWV9c9V919U9K7br39TW79O9V9Wt9F9J9V9T9W91tW9nW79O2Wt9c9V919U9K7bDL9TW79O9V9Wt9F9V9Wt9P9T9P96W9nW79O2Wtbql79IV9RbkDwebcekdsPq;Q9BHdbkIbabaec9:fgefcufae9Ugeabci9Uadfcufad9Ugbaeab0Ek:w8KDPue99eux99dui99euo99iu8Jjjjjbc:WD9Rgm8KjjjjbdndnalmbcbhPxekamc:Cwfcbc;Kbz:njjjb8Adndnalcb9imbaoal9nmbamcuaocdtaocFFFFi0Egscbyd;y1jjbHjjjjbbgzBd:CwamceBd;8wamascbyd;y1jjbHjjjjbbgHBd:GwamcdBd;8wamcualcdtalcFFFFi0Ecbyd;y1jjbHjjjjbbgOBd:KwamciBd;8waihsalhAinazasydbcdtfcbBdbasclfhsaAcufgAmbkaihsalhAinazasydbcdtfgCaCydbcefBdbasclfhsaAcufgAmbkaihsalhCcbhXindnazasydbcdtgQfgAydbcb9imbaHaQfaXBdbaAaAydbgQcjjjj94VBdbaQaXfhXkasclfhsaCcufgCmbkalci9UhLdnalci6mbcbhsaihAinaAcwfydbhCaAclfydbhXaHaAydbcdtfgQaQydbgQcefBdbaOaQcdtfasBdbaHaXcdtfgXaXydbgXcefBdbaOaXcdtfasBdbaHaCcdtfgCaCydbgCcefBdbaOaCcdtfasBdbaAcxfhAaLascefgs9hmbkkaihsalhAindnazasydbcdtgCfgXydbgQcu9kmbaXaQcFFFFrGgQBdbaHaCfgCaCydbaQ9RBdbkasclfhsaAcufgAmbxdkkamcuaocdtgsaocFFFFi0EgAcbyd;y1jjbHjjjjbbgzBd:CwamceBd;8wamaAcbyd;y1jjbHjjjjbbgHBd:GwamcdBd;8wamcualcdtalcFFFFi0Ecbyd;y1jjbHjjjjbbgOBd:KwamciBd;8wazcbasz:njjjbhXalci9UhLaihsalhAinaXasydbcdtfgCaCydbcefBdbasclfhsaAcufgAmbkdnaoTmbcbhsaHhAaXhCaohQinaAasBdbaAclfhAaCydbasfhsaCclfhCaQcufgQmbkkdnalci6mbcbhsaihAinaAcwfydbhCaAclfydbhQaHaAydbcdtfgKaKydbgKcefBdbaOaKcdtfasBdbaHaQcdtfgQaQydbgQcefBdbaOaQcdtfasBdbaHaCcdtfgCaCydbgCcefBdbaOaCcdtfasBdbaAcxfhAaLascefgs9hmbkkaoTmbcbhsaohAinaHasfgCaCydbaXasfydb9RBdbasclfhsaAcufgAmbkkamaLcbyd;y1jjbHjjjjbbgsBd:OwamclBd;8wascbaLz:njjjbhYamcuaLcK2alcjjjjd0Ecbyd;y1jjbHjjjjbbg8ABd:SwamcvBd;8wJbbbbhEdnalci6g3mbarcd4hKaihAa8AhsaLhrJbbbbh5inavaAclfydbaK2cdtfgCIdlh8EavaAydbaK2cdtfgXIdlhEavaAcwfydbaK2cdtfgQIdlh8FaCIdwhaaXIdwhhaQIdwhgasaCIdbg8JaXIdbg8KMaQIdbg8LMJbbnn:vUdbasclfaXIdlaCIdlMaQIdlMJbbnn:vUdbaQIdwh8MaCIdwh8NaXIdwhyascxfa8EaE:tg8Eagah:tggNa8FaE:tg8Faaah:tgaN:tgEJbbbbJbbjZa8Ja8K:tg8Ja8FNa8La8K:tg8Ka8EN:tghahNaEaENaaa8KNaga8JN:tgEaENMM:rg8K:va8KJbbbb9BEg8ENUdbasczfaEa8ENUdbascCfaha8ENUdbascwfa8Maya8NMMJbbnn:vUdba5a8KMh5aAcxfhAascKfhsarcufgrmbka5aL:Z:vJbbbZNhEkamcuaLcdtalcFFFF970Ecbyd;y1jjbHjjjjbbgCBd:WwamcoBd;8waEaq:ZNhEdna3mbcbhsaChAinaAasBdbaAclfhAaLascefgs9hmbkkaE:rhhcuh8PamcuaLcltalcFFFFd0Ecbyd;y1jjbHjjjjbbgIBd:0wamcrBd;8wcbaIa8AaCaLz:djjjb8AJFFuuhyJFFuuh8RJFFuuh8Sdnalci6gXmbJFFuuh8Sa8AhsaLhAJFFuuh8RJFFuuhyinascwfIdbgEayayaE9EEhyasclfIdbgEa8Ra8RaE9EEh8RasIdbgEa8Sa8SaE9EEh8SascKfhsaAcufgAmbkkahJbbbZNhgamaocetgscuaocu9kEcbyd;y1jjbHjjjjbbgABd:4waAcFeasz:njjjbhCdnaXmbcbhAJFFuuhEa8Ahscuh8PinascwfIdbay:tghahNasIdba8S:tghahNasclfIdba8R:tghahNMM:rghaEa8PcuSahaE9DVgXEhEaAa8PaXEh8PascKfhsaLaAcefgA9hmbkkamczfcbcjwz:njjjb8Aamcwf9cb83ibam9cb83ibagaxNhRJbbjZak:th8Ncbh8UJbbbbh8VJbbbbh8WJbbbbh8XJbbbbh8YJbbbbh8ZJbbbbh80cbh81cbhPinJbbbbhEdna8UTmbJbbjZa8U:Z:vhEkJbbbbhhdna80a80Na8Ya8YNa8Za8ZNMMg8KJbbbb9BmbJbbjZa8K:r:vhhka8XaENh5a8WaENh8Fa8VaENhaa8PhQdndndndndna8UaPVTmbamydwgBTmea80ahNh8Ja8ZahNh8La8YahNh8Maeamydbcdtfh83cbh3JFFuuhEcvhXcuhQindnaza83a3cdtfydbcdtgsfydbgvTmbaOaHasfydbcdtfhAindndnaCaiaAydbgKcx2fgsclfydbgrcetf8Vebcs4aCasydbgLcetf8Vebcs4faCascwfydbglcetf8Vebcs4fgombcbhsxekcehsazaLcdtfydbgLceSmbcehsazarcdtfydbgrceSmbcehsazalcdtfydbglceSmbdnarcdSaLcdSfalcdSfcd6mbaocefhsxekaocdfhskdnasaX9kmba8AaKcK2fgLIdwa5:thhaLIdla8F:th8KaLIdbaa:th8EdndnakJbbbb9DTmba8E:lg8Ea8K:lg8Ka8Ea8K9EEg8Kah:lgha8Kah9EEag:vJbbjZMhhxekahahNa8Ea8ENa8Ka8KNMM:rag:va8NNJbbjZMJ9VO:d86JbbjZaLIdCa8JNaLIdxa8MNa8LaLIdzNMMakN:tghahJ9VO:d869DENhhkaKaQasaX6ahaE9DVgLEhQasaXaLEhXahaEaLEhEkaAclfhAavcufgvmbkka3cefg3aB9hmbkkaQcu9hmekama5Ud:ODama8FUd:KDamaaUd:GDamcuBd:qDamcFFF;7rBdjDaIcba8AaYamc:GDfakJbbbb9Damc:qDfamcjDfz:ejjjbamyd:qDhQdndnaxJbbbb9ETmba8UaD6mbaQcuSmeceh3amIdjDaR9EmixdkaQcu9hmekdna8UTmbdnamydlgza8Uci2fgsciGTmbadasfcba8Uazcu7fciGcefz:njjjb8AkabaPcltfgzam8Pib83dbazcwfamcwf8Pib83dbaPcefhPkc3hzinazc98Smvamc:Cwfazfydbcbyd;u1jjbH:bjjjbbazc98fhzxbkkcbh3a8Uaq9pmbamydwaCaiaQcx2fgsydbcetf8Vebcs4aCascwfydbcetf8Vebcs4faCasclfydbcetf8Vebcs4ffaw9nmekcbhscbhAdna81TmbcbhAamczfhXinamczfaAcdtfaXydbgLBdbaXclfhXaAaYaLfRbbTfhAa81cufg81mbkkamydwhlamydbhXam9cu83i:GDam9cu83i:ODam9cu83i:qDam9cu83i:yDaAc;8eaAclfc:bd6Eh81inamcjDfasfcFFF;7rBdbasclfgscz9hmbka81cdthBdnalTmbaeaXcdtfhocbhrindnazaoarcdtfydbcdtgsfydbgvTmbaOaHasfydbcdtfhAcuhLcuhsinazaiaAydbgKcx2fgXclfydbcdtfydbazaXydbcdtfydbfazaXcwfydbcdtfydbfgXasaXas6gXEhsaKaLaXEhLaAclfhAavcufgvmbkaLcuSmba8AaLcK2fgAIdway:tgEaENaAIdba8S:tgEaENaAIdla8R:tgEaENMM:rhEcbhAindndnasamc:qDfaAfgvydbgX6mbasaX9hmeaEamcjDfaAfIdb9FTmekavasBdbamc:GDfaAfaLBdbamcjDfaAfaEUdbxdkaAclfgAcz9hmbkkarcefgral9hmbkkamczfaBfhLcbhscbhAindnamc:GDfasfydbgXcuSmbaLaAcdtfaXBdbaAcefhAkasclfgscz9hmbkaAa81fg81TmbJFFuuhhcuhKamczfhsa81hvcuhLina8AasydbgXcK2fgAIdway:tgEaENaAIdba8S:tgEaENaAIdla8R:tgEaENMM:rhEdndnazaiaXcx2fgAclfydbcdtfydbazaAydbcdtfydbfazaAcwfydbcdtfydbfgAaL6mbaAaL9hmeaEah9DTmekaEhhaAhLaXhKkasclfhsavcufgvmbkaKcuSmbaKhQkdnamaiaQcx2fgrydbarclfydbarcwfydbaCabaeadaPawaqa3z:fjjjbTmbaPcefhPJbbbbh8VJbbbbh8WJbbbbh8XJbbbbh8YJbbbbh8ZJbbbbh80kcbhXinaOaHaraXcdtfydbcdtgAfydbcdtfgKhsazaAfgvydbgLhAdnaLTmbdninasydbaQSmeasclfhsaAcufgATmdxbkkasaKaLcdtfc98fydbBdbavavydbcufBdbkaXcefgXci9hmbka8AaQcK2fgsIdbhEasIdlhhasIdwh8KasIdxh8EasIdzh5asIdCh8FaYaQfce86bba80a8FMh80a8Za5Mh8Za8Ya8EMh8Ya8Xa8KMh8Xa8WahMh8Wa8VaEMh8Vamydxh8Uxbkkamc:WDf8KjjjjbaPk;Vvivuv99lu8Jjjjjbca9Rgv8Kjjjjbdndnalcw0mbaiydbhoaeabcitfgralcdtcufBdlaraoBdbdnalcd6mbaiclfhoalcufhwarcxfhrinaoydbhDarcuBdbarc98faDBdbarcwfhraoclfhoawcufgwmbkkalabfhrxekcbhDavczfcwfcbBdbav9cb83izavcwfcbBdbav9cb83ibJbbjZhqJbbjZhkinadaiaDcdtfydbcK2fhwcbhrinavczfarfgoawarfIdbgxaoIdbgm:tgPakNamMgmUdbavarfgoaPaxam:tNaoIdbMUdbarclfgrcx9hmbkJbbjZaqJbbjZMgq:vhkaDcefgDal9hmbkcbhoadcbcecdavIdlgxavIdwgm9GEgravIdbgPam9GEaraPax9GEgscdtgrfhzavczfarfIdbhxaihralhwinaiaocdtfgDydbhHaDarydbgOBdbaraHBdbarclfhraoazaOcK2fIdbax9Dfhoawcufgwmbkaeabcitfhrdndnaocv6mbaoalc98f6mekaraiydbBdbaralcdtcufBdlaiclfhoalcufhwarcxfhrinaoydbhDarcuBdbarc98faDBdbarcwfhraoclfhoawcufgwmbkalabfhrxekaraxUdbararydlc98GasVBdlabcefaeadaiaoz:djjjbhwararydlciGawabcu7fcdtVBdlawaeadaiaocdtfalao9Rz:djjjbhrkavcaf8Kjjjjbark:;idiud99dndnabaecitfgwydlgDciGgqciSmbinabcbaDcd4gDalaqcdtfIdbawIdb:tgkJbbbb9FEgwaecefgefadaialavaoarz:ejjjbak:larIdb9FTmdabawaD7aefgecitfgwydlgDciGgqci9hmbkkabaecitfgeclfhbdnavmbcuhwindnaiaeydbgDfRbbmbadaDcK2fgqIdwalIdw:tgkakNaqIdbalIdb:tgkakNaqIdlalIdl:tgkakNMM:rgkarIdb9DTmbarakUdbaoaDBdbkaecwfheawcefgwabydbcd46mbxdkkcuhwindnaiaeydbgDfRbbmbadaDcK2fgqIdbalIdb:t:lgkaqIdlalIdl:t:lgxakax9EEgkaqIdwalIdw:t:lgxakax9EEgkarIdb9DTmbarakUdbaoaDBdbkaecwfheawcefgwabydbcd46mbkkk;llevudnabydwgxaladcetfgm8Vebcs4alaecetfgP8Vebgscs4falaicetfgz8Vebcs4ffaD0abydxaq9pVakVgDce9hmbavawcltfgxab8Pdb83dbaxcwfabcwfgx8Pdb83dbdnaxydbgqTmbaoabydbcdtfhxaqhsinalaxydbcetfcFFi87ebaxclfhxascufgsmbkkdnabydxglci2gsabydlgxfgkciGTmbarakfcbalaxcu7fciGcefz:njjjb8Aabydxci2hsabydlhxabydwhqkab9cb83dwababydbaqfBdbabascifc98GaxfBdlaP8Vebhscbhxkdnascztcz91cu9kmbabaxcefBdwaPax87ebaoabydbcdtfaxcdtfaeBdbkdnam8Uebcu9kmbababydwgxcefBdwamax87ebaoabydbcdtfaxcdtfadBdbkdnaz8Uebcu9kmbababydwgxcefBdwazax87ebaoabydbcdtfaxcdtfaiBdbkarabydlfabydxci2faPRbb86bbarabydlfabydxci2fcefamRbb86bbarabydlfabydxci2fcdfazRbb86bbababydxcefBdxaDk8LbabaeadaialavaoarawaDaDaqJbbbbz:cjjjbk;Nkovud99euv99eul998Jjjjjbc:W;ae9Rgo8KjjjjbdndnadTmbavcd4hrcbhwcbhDindnaiaeclfydbar2cdtfgvIdbaiaeydbar2cdtfgqIdbgk:tgxaiaecwfydbar2cdtfgmIdlaqIdlgP:tgsNamIdbak:tgzavIdlaP:tgPN:tgkakNaPamIdwaqIdwgH:tgONasavIdwaH:tgHN:tgPaPNaHazNaOaxN:tgxaxNMM:rgsJbbbb9Bmbaoc:W:qefawcx2fgAakas:vUdwaAaxas:vUdlaAaPas:vUdbaoc8Wfawc8K2fgAaq8Pdb83dbaAav8Pdb83dxaAam8Pdb83dKaAcwfaqcwfydbBdbaAcCfavcwfydbBdbaAcafamcwfydbBdbawcefhwkaecxfheaDcifgDad6mbkab9cb83dbabcyf9cb83dbabcaf9cb83dbabcKf9cb83dbabczf9cb83dbabcwf9cb83dbawTmeaocbBd8Sao9cb83iKao9cb83izaoczfaoc8Wfawci2cxaoc8Sfcbcrz1jjjbaoIdKhCaoIdChXaoIdzhQao9cb83iwao9cb83ibaoaoc:W:qefawcxaoc8Sfcbciz1jjjbJbbjZhkaoIdwgPJbbbbJbbjZaPaPNaoIdbgPaPNaoIdlgsasNMM:rgx:vaxJbbbb9BEgzNhxasazNhsaPazNhzaoc:W:qefheawhvinaecwfIdbaxNaeIdbazNasaeclfIdbNMMgPakaPak9DEhkaecxfheavcufgvmbkabaCUdwabaXUdlabaQUdbabaoId3UdxdndnakJ;n;m;m899FmbJbbbbhPaoc:W:qefheaoc8WfhvinaCavcwfIdb:taecwfIdbgHNaQavIdb:taeIdbgONaXavclfIdb:taeclfIdbgLNMMaxaHNazaONasaLNMM:vgHaPaHaP9EEhPavc8KfhvaecxfheawcufgwmbkabaxUd8KabasUdaabazUd3abaCaxaPN:tUdKabaXasaPN:tUdCabaQazaPN:tUdzabJbbjZakakN:t:rgkUdydndnaxJbbj:;axJbbj:;9GEgPJbbjZaPJbbjZ9FEJbb;:9cNJbbbZJbbb:;axJbbbb9GEMgP:lJbbb9p9DTmbaP:Ohexekcjjjj94hekabae86b8UdndnasJbbj:;asJbbj:;9GEgPJbbjZaPJbbjZ9FEJbb;:9cNJbbbZJbbb:;asJbbbb9GEMgP:lJbbb9p9DTmbaP:Ohvxekcjjjj94hvkabav86bRdndnazJbbj:;azJbbj:;9GEgPJbbjZaPJbbjZ9FEJbb;:9cNJbbbZJbbb:;azJbbbb9GEMgP:lJbbb9p9DTmbaP:Ohqxekcjjjj94hqkabaq86b8SdndnaecKtcK91:YJbb;:9c:vax:t:lavcKtcK91:YJbb;:9c:vas:t:laqcKtcK91:YJbb;:9c:vaz:t:lakMMMJbb;:9cNJbbjZMgk:lJbbb9p9DTmbak:Ohexekcjjjj94hekaecFbaecFb9iEhexekabcjjj;8iBdycFbhekabae86b8Vxekab9cb83dbabcyf9cb83dbabcaf9cb83dbabcKf9cb83dbabczf9cb83dbabcwf9cb83dbkaoc:W;aef8Kjjjjbk;Iwwvul99iud99eue99eul998Jjjjjbcje9Rgr8Kjjjjbavcd4hwaicd4hDdndnaoTmbarc;abfcbaocdtgvz:njjjb8Aarc;Gbfcbavz:njjjb8AarhvarcafhiaohqinavcFFF97BdbaicFFF;7rBdbaiclfhiavclfhvaqcufgqmbkdnadTmbcbhkinaeakaD2cdtfgvIdwhxavIdlhmavIdbhPalakaw2cdtfIdbhsarc;abfhzarhiarc;GbfhHarcafhqcj1jjbhvaohOinasavcwfIdbaxNavIdbaPNavclfIdbamNMMgAMhCakhXdnaAas:tgAaqIdbgQ9DgLmbaHydbhXkaHaXBdbakhXdnaCaiIdbgK9EmbazydbhXaKhCkazaXBdbaiaCUdbaqaAaQaLEUdbavcxfhvaqclfhqaHclfhHaiclfhiazclfhzaOcufgOmbkakcefgkad9hmbkkadThkJbbbbhCcbhXarc;abfhvarc;Gbfhicbhqinalavydbgzaw2cdtfIdbalaiydbgHaw2cdtfIdbaeazaD2cdtfgzIdwaeaHaD2cdtfgHIdw:tgsasNazIdbaHIdb:tgsasNazIdlaHIdl:tgsasNMM:rMMgsaCasaC9EgzEhCaqaXazEhXaiclfhiavclfhvaoaqcefgq9hmbkaCJbbbZNhKxekadThkcbhXJbbbbhKkJbbbbhCdnaearc;abfaXcdtgifydbgqaD2cdtfgvIdwaearc;GbfaifydbgzaD2cdtfgiIdwgm:tgsasNavIdbaiIdbgY:tgAaANavIdlaiIdlgP:tgQaQNMM:rgxJbbbb9ETmbaxalaqaw2cdtfIdbMalazaw2cdtfIdb:taxaxM:vhCkasaCNamMhmaQaCNaPMhPaAaCNaYMhYdnakmbaDcdthvawcdthiindnalIdbg8AaecwfIdbam:tgCaCNaeIdbaY:tgsasNaeclfIdbaP:tgAaANMM:rgQMgEaK9ETmbJbbbbhxdnaQJbbbb9ETmbaEaK:taQaQM:vhxkaxaCNamMhmaxaANaPMhPaxasNaYMhYa8AaKaQMMJbbbZNhKkaeavfhealaifhladcufgdmbkkabaKUdxabamUdwabaPUdlabaYUdbarcjef8Kjjjjbkjeeiu8Jjjjjbcj8W9Rgr8Kjjjjbaici2hwdnaiTmbawceawce0EhDarhiinaiaeadRbbcdtfydbBdbadcefhdaiclfhiaDcufgDmbkkabarawaladaoz:hjjjbarcj8Wf8Kjjjjbk:3lequ8JjjjjbcjP9Rgl8Kjjjjbcbhvalcjxfcbaiz:njjjb8AdndnadTmbcjehoaehrincuhwarhDcuhqavhkdninawakaoalcjxfaDcefRbbfRbb9RcFeGci6aoalcjxfaDRbbfRbb9RcFeGci6faoalcjxfaDcdfRbbfRbb9RcFeGci6fgxaq9mgmEhwdnammbaxce0mdkaxaqaxaq9kEhqaDcifhDadakcefgk9hmbkkaeawci2fgDcdfRbbhqaDcefRbbhxaDRbbhkaeavci2fgDcifaDawav9Rci2z:qjjjb8Aakalcjxffaocefgo86bbaxalcjxffao86bbaDcdfaq86bbaDcefax86bbaDak86bbaqalcjxffao86bbarcifhravcefgvad9hmbkalcFeaicetz:njjjbhoadci2gDceaDce0EhqcbhxindnaoaeRbbgkcetfgw8UebgDcu9kmbawax87ebaocjlfaxcdtfabakcdtfydbBdbaxhDaxcefhxkaeaD86bbaecefheaqcufgqmbkaxcdthDxekcbhDkabalcjlfaDz:mjjjb8AalcjPf8Kjjjjbk9teiucbcbyd;C1jjbgeabcifc98GfgbBd;C1jjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik;teeeudndnaeabVciGTmbabhixekdndnadcz9pmbabhixekabhiinaiaeydbBdbaiaeydlBdlaiaeydwBdwaiaeydxBdxaeczfheaiczfhiadc9Wfgdcs0mbkkadcl6mbinaiaeydbBdbaeclfheaiclfhiadc98fgdci0mbkkdnadTmbinaiaeRbb86bbaicefhiaecefheadcufgdmbkkabk:3eedudndnabciGTmbabhixekaecFeGc:b:c:ew2hldndnadcz9pmbabhixekabhiinaialBdxaialBdwaialBdlaialBdbaiczfhiadc9Wfgdcs0mbkkadcl6mbinaialBdbaiclfhiadc98fgdci0mbkkdnadTmbinaiae86bbaicefhiadcufgdmbkkabk9teiucbcbyd;C1jjbgeabcrfc94GfgbBd;C1jjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik9:eiuZbhedndncbyd;C1jjbgdaecztgi9nmbcuheadai9RcFFifcz4nbcuSmekadhekcbabae9Rcifc98Gcbyd;C1jjbfgdBd;C1jjbdnadZbcztge9nmbadae9RcFFifcz4nb8Akk:;Deludndndnadch9pmbabaeSmdaeabadfgi9Rcbadcet9R0mekabaead;8qbbxekaeab7ciGhldndndnabae9pmbdnalTmbadhvabhixikdnabciGmbadhvabhixdkadTmiabaeRbb86bbadcufhvdnabcefgiciGmbaecefhexdkavTmiabaeRbe86beadc9:fhvdnabcdfgiciGmbaecdfhexdkavTmiabaeRbd86bdadc99fhvdnabcifgiciGmbaecifhexdkavTmiabaeRbi86biabclfhiaeclfheadc98fhvxekdnalmbdnaiciGTmbadTmlabadcufgifglaeaifRbb86bbdnalciGmbaihdxekaiTmlabadc9:fgifglaeaifRbb86bbdnalciGmbaihdxekaiTmlabadc99fgifglaeaifRbb86bbdnalciGmbaihdxekaiTmlabadc98fgdfaeadfRbb86bbkadcl6mbdnadc98fgocd4cefciGgiTmbaec98fhlabc98fhvinavadfaladfydbBdbadc98fhdaicufgimbkkaocx6mbaec9Wfhvabc9WfhoinaoadfgicxfavadfglcxfydbBdbaicwfalcwfydbBdbaiclfalclfydbBdbaialydbBdbadc9Wfgdci0mbkkadTmdadhidnadciGglTmbaecufhvabcufhoadhiinaoaifavaifRbb86bbaicufhialcufglmbkkadcl6mdaec98fhlabc98fhvinavaifgecifalaifgdcifRbb86bbaecdfadcdfRbb86bbaecefadcefRbb86bbaeadRbb86bbaic98fgimbxikkavcl6mbdnavc98fglcd4cefcrGgdTmbavadcdt9RhvinaiaeydbBdbaeclfheaiclfhiadcufgdmbkkalc36mbinaiaeydbBdbaiaeydlBdlaiaeydwBdwaiaeydxBdxaiaeydzBdzaiaeydCBdCaiaeydKBdKaiaeyd3Bd3aecafheaicafhiavc9Gfgvci0mbkkavTmbdndnavcrGgdmbavhlxekavc94GhlinaiaeRbb86bbaicefhiaecefheadcufgdmbkkavcw6mbinaiaeRbb86bbaiaeRbe86beaiaeRbd86bdaiaeRbi86biaiaeRbl86blaiaeRbv86bvaiaeRbo86boaiaeRbr86braicwfhiaecwfhealc94fglmbkkabkk9Tdbcjwk9ubbjZbbbbbbbbbbbbbbjZbbbbbbbbbbbbbbjZ86;nAZ86;nAZ86;nAZ86;nA:;86;nAZ86;nAZ86;nAZ86;nA:;86;nAZ86;nAZ86;nAZ86;nA:;bc;uwkxebbbdbbb9GNbb",Q=new Uint8Array([32,0,65,2,1,106,34,33,3,128,11,4,13,64,6,253,10,7,15,116,127,5,8,12,40,16,19,54,20,9,27,255,113,17,42,67,24,23,146,148,18,14,22,45,70,69,56,114,101,21,25,63,75,136,108,28,118,29,73,115]);if(typeof WebAssembly!=="object")return{supported:!1};var B,Y=WebAssembly.instantiate(J(A),{}).then(function(K){B=K.instance,B.exports.__wasm_call_ctors()});function J(K){var I=new Uint8Array(K.length);for(var V=0;V96?H-97:H>64?H-39:H+4}var D=0;for(var V=0;V=3),C(H<=256||H>0),C(D<=512),C(D%4==0),L=L||0;var z=K.BYTES_PER_ELEMENT==4?K:new Uint32Array(K);return Z(z,I,I.length/V,V*4,H,D,L)},computeClusterBounds:function(K,I,V){C(K.length%3==0),C(K.length/3<=512),C(I instanceof Float32Array),C(I.length%V==0),C(V>=3);var H=K.BYTES_PER_ELEMENT==4?K:new Uint32Array(K);return E(H,I,I.length/V,V*4)},computeMeshletBounds:function(K,I,V){return C(K.meshletCount!=0),C(I instanceof Float32Array),C(I.length%V==0),C(V>=3),$(K,I,I.length/V,V*4)},extractMeshlet:function(K,I){return C(I>=0&&I{var HrQ=J1A(),DrQ=C1A(),NrQ=X1A(),LrQ=G1A();W1A.exports={MeshoptEncoder:HrQ,MeshoptDecoder:DrQ,MeshoptSimplifier:NrQ,MeshoptClusterizer:LrQ}});var ah=R((rrQ)=>{function irQ(A,Q,B,C){var J=0,C=C===void 0?{}:C,X=C.loop===void 0?null:C.loop,G=C.palette===void 0?null:C.palette;if(Q<=0||B<=0||Q>65535||B>65535)throw Error("Width/Height invalid.");function W(V){var H=V.length;if(H<2||H>256||H&H-1)throw Error("Invalid code/color length, must be power of 2 and 2 .. 256.");return H}A[J++]=71,A[J++]=73,A[J++]=70,A[J++]=56,A[J++]=57,A[J++]=97;var F=0,Z=0;if(G!==null){var U=W(G);while(U>>=1)++F;if(U=1<=U)throw Error("Background index out of range.");if(Z===0)throw Error("Background index explicitly passed as 0.")}}if(A[J++]=Q&255,A[J++]=Q>>8&255,A[J++]=B&255,A[J++]=B>>8&255,A[J++]=(G!==null?128:0)|F,A[J++]=Z,A[J++]=0,G!==null)for(var $=0,E=G.length;$>16&255,A[J++]=K>>8&255,A[J++]=K&255}if(X!==null){if(X<0||X>65535)throw Error("Loop count invalid.");A[J++]=33,A[J++]=255,A[J++]=11,A[J++]=78,A[J++]=69,A[J++]=84,A[J++]=83,A[J++]=67,A[J++]=65,A[J++]=80,A[J++]=69,A[J++]=50,A[J++]=46,A[J++]=48,A[J++]=3,A[J++]=1,A[J++]=X&255,A[J++]=X>>8&255,A[J++]=0}var I=!1;this.addFrame=function(V,H,D,L,z,M){if(I===!0)--J,I=!1;if(M=M===void 0?{}:M,V<0||H<0||V>65535||H>65535)throw Error("x/y invalid.");if(D<=0||L<=0||D>65535||L>65535)throw Error("Width/Height invalid.");if(z.length>=1)++P;w=1<3)throw Error("Disposal out of range.");var k=!1,T=0;if(M.transparent!==void 0&&M.transparent!==null){if(k=!0,T=M.transparent,T<0||T>=w)throw Error("Transparent color index.")}if(j!==0||k||_!==0)A[J++]=33,A[J++]=249,A[J++]=4,A[J++]=j<<2|(k===!0?1:0),A[J++]=_&255,A[J++]=_>>8&255,A[J++]=T,A[J++]=0;if(A[J++]=44,A[J++]=V&255,A[J++]=V>>8&255,A[J++]=H&255,A[J++]=H>>8&255,A[J++]=D&255,A[J++]=D>>8&255,A[J++]=L&255,A[J++]=L>>8&255,A[J++]=N===!0?128|P-1:0,N===!0)for(var S=0,v=q.length;S>16&255,A[J++]=y>>8&255,A[J++]=y&255}return J=nrQ(A,J,P<2?2:P,z),J},this.end=function(){if(I===!1)A[J++]=59,I=!0;return J},this.getOutputBuffer=function(){return A},this.setOutputBuffer=function(V){A=V},this.getOutputBufferPosition=function(){return J},this.setOutputBufferPosition=function(V){J=V}}function nrQ(A,Q,B,Y){A[Q++]=B;var J=Q++,C=1<=M)if(A[Q++]=U&255,U>>=8,Z-=8,Q===J+256)A[J]=255,J=Q++}function E(M){U|=M<=8)if(A[Q++]=U&255,U>>=8,Z-=8,Q===J+256)A[J]=255,J=Q++;if(W===4096)E(C),W=G+1,F=B+1,I={};else{if(W>=1<>7,X=J&7,G=1<=0))throw Error("Invalid block size");if(H===0)break;Q+=H}}break;case 249:if(A[Q++]!==4||A[Q+4]!==0)throw Error("Invalid graphics extension block.");var D=A[Q++];if(E=A[Q++]|A[Q++]<<8,K=A[Q++],(D&1)===0)K=null;I=D>>2&7,Q++;break;case 254:while(!0){var H=A[Q++];if(!(H>=0))throw Error("Invalid block size");if(H===0)break;Q+=H}break;default:throw Error("Unknown graphic control label: 0x"+A[Q-1].toString(16))}break;case 44:var L=A[Q++]|A[Q++]<<8,z=A[Q++]|A[Q++]<<8,M=A[Q++]|A[Q++]<<8,N=A[Q++]|A[Q++]<<8,q=A[Q++],w=q>>7,P=q>>6&1,_=q&7,j=1<<_+1,k=F,T=Z,S=!1;if(w){var S=!0;k=Q,T=j,Q+=j*3}var v=Q;Q++;while(!0){var H=A[Q++];if(!(H>=0))throw Error("Invalid block size");if(H===0)break;Q+=H}$.push({x:L,y:z,width:M,height:N,has_local_palette:S,palette_offset:k,palette_size:T,data_offset:v,data_length:Q-v,transparent_index:K,interlaced:!!P,delay:E,disposal:I});break;case 59:U=!1;break;default:throw Error("Unknown gif block: 0x"+A[Q-1].toString(16))}this.numFrames=function(){return $.length},this.loopCount=function(){return V},this.frameInfo=function(y){if(y<0||y>=$.length)throw Error("Frame index out of range.");return $[y]},this.decodeAndBlitFrameBGRA=function(y,h){var g=this.frameInfo(y),m=g.width*g.height,n=new Uint8Array(m);j1A(A,g.data_offset,n,m);var{palette_offset:i,transparent_index:p}=g;if(p===null)p=256;var d=g.width,x=B-d,b=d,o=(g.y*B+g.x)*4,GA=((g.y+g.height)*B+g.x)*4,VA=o,EA=x*4;if(g.interlaced===!0)EA+=B*4*7;var UA=8;for(var CA=0,QA=n.length;CA=GA)EA=x*4+B*4*(UA-1),VA=o+(d+x)*(UA<<1),UA>>=1}if(KA===p)VA+=4;else{var HA=A[i+KA*3],DA=A[i+KA*3+1],hA=A[i+KA*3+2];h[VA++]=hA,h[VA++]=DA,h[VA++]=HA,h[VA++]=255}--b}},this.decodeAndBlitFrameRGBA=function(y,h){var g=this.frameInfo(y),m=g.width*g.height,n=new Uint8Array(m);j1A(A,g.data_offset,n,m);var{palette_offset:i,transparent_index:p}=g;if(p===null)p=256;var d=g.width,x=B-d,b=d,o=(g.y*B+g.x)*4,GA=((g.y+g.height)*B+g.x)*4,VA=o,EA=x*4;if(g.interlaced===!0)EA+=B*4*7;var UA=8;for(var CA=0,QA=n.length;CA=GA)EA=x*4+B*4*(UA-1),VA=o+(d+x)*(UA<<1),UA>>=1}if(KA===p)VA+=4;else{var HA=A[i+KA*3],DA=A[i+KA*3+1],hA=A[i+KA*3+2];h[VA++]=HA,h[VA++]=DA,h[VA++]=hA,h[VA++]=255}--b}}}function j1A(A,Q,B,Y){var J=A[Q++],C=1<>=W,Z-=W,V===C){G=X+1,W=J+1,F=(1<C)L=K[L]>>8,++D;var z=L,M=$+D+(H!==V?1:0);if(M>Y){console.log("Warning, gif stream longer than expected.");return}B[$++]=z,$+=D;var N=$;if(H!==V)B[$++]=z;L=H;while(D--)L=K[L],B[--N]=L&255,L>>=8;if(I!==null&&G<4096){if(K[G++]=I<<8|z,G>=F+1&&W<12)++W,F=F<<1|1}I=V}if($!==Y)console.log("Warning, gif stream shorter than expected.");return B}try{rrQ.GifWriter=irQ,rrQ.GifReader=srQ}catch(A){}});var a3=R((xGY,O1A)=>{class NH{constructor(...A){if(A.length===0)throw Error("constructor requires parameters");let Q=A[0];if(Q!==null&&typeof Q==="object")if(Q instanceof NH){let B=Q.bitmap;this.bitmap={width:B.width,height:B.height,data:new Buffer(B.width*B.height*4)},B.data.copy(this.bitmap.data)}else if(Q.width&&Q.height&&Q.data)this.bitmap=Q;else throw Error("unrecognized constructor parameters");else if(typeof Q==="number"&&typeof A[1]==="number"){let B=Q,Y=A[1],J=A[2];if(this.bitmap={width:B,height:Y},Buffer.isBuffer(J))this.bitmap.data=J;else if(this.bitmap.data=new Buffer(B*Y*4),typeof J==="number")this.fillRGBA(J)}else throw Error("unrecognized constructor parameters")}blit(A,Q,B,Y,J,C,X){if(Y+C>this.bitmap.width)throw Error("copy exceeds width of source bitmap");if(Q+C>A.bitmap.width)throw Error("copy exceeds width of target bitmap");if(J+X>this.bitmap.height)throw Error("copy exceeds height of source bitmap");if(B+X>A.bitmap.height)throw new Erro("copy exceeds height of target bitmap");let G=this.bitmap.data,W=A.bitmap.data,F=this.bitmap.width*4,Z=A.bitmap.width*4,U=C*4,$=J*F+Y*4,E=B*Z+Q*4;while(--X>=0)G.copy(W,E,$,$+U),$+=F,E+=Z;return this}fillRGBA(A){let Q=this.bitmap.data,B=this.bitmap.height*4,Y=0;while(Y{let J=Math.round(0.299*A[Y]+0.587*A[Y+1]+0.114*A[Y+2]);A[Y]=J,A[Y+1]=J,A[Y+2]=J}),this}reframe(A,Q,B,Y,J){let C=A<0?0:A,X=Q<0?0:Q,G=B+C>this.bitmap.width?this.bitmap.width-C:B,W=Y+X>this.bitmap.height?this.bitmap.height-X:Y,F=A<0?-A:0,Z=Q<0?-Q:0,U;if(J===void 0){if(C!==A||X!=Q||G!==B||W!==Y)throw new GifError("fillRGBA required for this reframing");U=new NH(B,Y)}else U=new NH(B,Y,J);return this.blit(U,F,Z,C,X,G,W),this.bitmap=U.bitmap,this}scale(A){if(A===1)return;if(!Number.isInteger(A)||A<1)throw Error("the scale must be an integer >= 1");let Q=this.bitmap.width,B=this.bitmap.height,Y=Q*A*4,J=this.bitmap.data,C=new Buffer(B*Y*A),X=0,G,W=0;for(let F=0;F{class LH{constructor(A,Q,B){this.width=B.width,this.height=B.height,this.loops=B.loops,this.usesTransparency=B.usesTransparency,this.colorScope=B.colorScope,this.frames=Q,this.buffer=A}}LH.GlobalColorsPreferred=0;LH.GlobalColorsOnly=1;LH.LocalColorsOnly=2;class P1A extends Error{constructor(A){super(A);if(A instanceof Error)this.stack="Gif"+A.stack}}arQ.Gif=LH;arQ.GifError=P1A});var HXA=R((bGY,IXA)=>{var{defineProperty:e3,getOwnPropertyDescriptor:erQ,getOwnPropertyNames:AaQ}=Object,QaQ=Object.prototype.hasOwnProperty,BaQ=(A,Q,B)=>(Q in A)?e3(A,Q,{enumerable:!0,configurable:!0,writable:!0,value:B}):A[Q]=B,YaQ=(A)=>e3(A,"__esModule",{value:!0}),u1=(A,Q)=>{for(var B in Q)e3(A,B,{get:Q[B],enumerable:!0})},JaQ=(A,Q,B,Y)=>{if(Q&&typeof Q==="object"||typeof Q==="function"){for(let J of AaQ(Q))if(!QaQ.call(A,J)&&(B||J!=="default"))e3(A,J,{get:()=>Q[J],enumerable:!(Y=erQ(Q,J))||Y.enumerable})}return A},CaQ=((A)=>{return(Q,B)=>{return A&&A.get(Q)||(B=JaQ(YaQ({}),Q,1),A&&A.set(Q,B),B)}})(typeof WeakMap<"u"?new WeakMap:0),FA=(A,Q,B)=>{return BaQ(A,typeof Q!=="symbol"?Q+"":Q,B),B},_1A={};u1(_1A,{applyPalette:()=>jaQ,applyPaletteSync:()=>waQ,buildPalette:()=>RaQ,buildPaletteSync:()=>zaQ,constants:()=>v1A,conversion:()=>f1A,distance:()=>i1A,image:()=>ZXA,palette:()=>JXA,quality:()=>EXA,utils:()=>CXA});var v1A={};u1(v1A,{bt709:()=>y1A});var y1A={};u1(y1A,{Y:()=>g1A,x:()=>h1A,y:()=>x1A});var g1A=((A)=>{return A[A.RED=0.2126]="RED",A[A.GREEN=0.7152]="GREEN",A[A.BLUE=0.0722]="BLUE",A[A.WHITE=1]="WHITE",A})(g1A||{}),h1A=((A)=>{return A[A.RED=0.64]="RED",A[A.GREEN=0.3]="GREEN",A[A.BLUE=0.15]="BLUE",A[A.WHITE=0.3127]="WHITE",A})(h1A||{}),x1A=((A)=>{return A[A.RED=0.33]="RED",A[A.GREEN=0.6]="GREEN",A[A.BLUE=0.06]="BLUE",A[A.WHITE=0.329]="WHITE",A})(x1A||{}),f1A={};u1(f1A,{lab2rgb:()=>EaQ,lab2xyz:()=>l1A,rgb2hsl:()=>o3,rgb2lab:()=>zH,rgb2xyz:()=>b1A,xyz2lab:()=>c1A,xyz2rgb:()=>p1A});function oh(A){return A>0.04045?((A+0.055)/1.055)**2.4:A/12.92}function b1A(A,Q,B){return A=oh(A/255),Q=oh(Q/255),B=oh(B/255),{x:A*0.4124+Q*0.3576+B*0.1805,y:A*0.2126+Q*0.7152+B*0.0722,z:A*0.0193+Q*0.1192+B*0.9505}}var m1A={};u1(m1A,{degrees2radians:()=>E7,inRange0to255:()=>I8,inRange0to255Rounded:()=>H5,intInRange:()=>XaQ,max3:()=>u1A,min3:()=>d1A,stableSort:()=>Bx});function E7(A){return A*(Math.PI/180)}function u1A(A,Q,B){let Y=A;if(YQ)Y=Q;if(Y>B)Y=B;return Y}function XaQ(A,Q,B){if(A>B)A=B;if(A255)A=255;else if(A<0)A=0;return A}function I8(A){if(A>255)A=255;else if(A<0)A=0;return A}function Bx(A,Q){let B=typeof A[0],Y;if(B==="number"||B==="string"){let J=Object.create(null);for(let C=0,X=A.length;CQ(C,X)||J[C]-J[X])}else{let J=A.slice(0);Y=A.sort((C,X)=>Q(C,X)||J.indexOf(C)-J.indexOf(X))}return Y}function o3(A,Q,B){let Y=d1A(A,Q,B),J=u1A(A,Q,B),C=J-Y,X=(Y+J)/510,G=0;if(X>0&&X<1)G=C/(X<0.5?J+Y:510-J-Y);let W=0;if(C>0){if(J===A)W=(Q-B)/C;else if(J===Q)W=2+(B-A)/C;else W=4+(A-Q)/C;if(W*=60,W<0)W+=360}return{h:W,s:G,l:X}}var GaQ=0.95047,WaQ=1,FaQ=1.08883;function th(A){return A>0.008856?A**0.3333333333333333:7.787*A+0.13793103448275862}function c1A(A,Q,B){if(A=th(A/GaQ),Q=th(Q/WaQ),B=th(B/FaQ),116*Q-16<0)throw Error("xxx");return{L:Math.max(0,116*Q-16),a:500*(A-Q),b:200*(Q-B)}}function zH(A,Q,B){let Y=b1A(A,Q,B);return c1A(Y.x,Y.y,Y.z)}var ZaQ=0.95047,$aQ=1,UaQ=1.08883;function eh(A){return A>0.206893034?A**3:(A-0.13793103448275862)/7.787}function l1A(A,Q,B){let Y=(A+16)/116,J=Q/500+Y,C=Y-B/200;return{x:ZaQ*eh(J),y:$aQ*eh(Y),z:UaQ*eh(C)}}function Ax(A){return A>0.0031308?1.055*A**0.4166666666666667-0.055:12.92*A}function p1A(A,Q,B){let Y=Ax(A*3.2406+Q*-1.5372+B*-0.4986),J=Ax(A*-0.9689+Q*1.8758+B*0.0415),C=Ax(A*0.0557+Q*-0.204+B*1.057);return{r:H5(Y*255),g:H5(J*255),b:H5(C*255)}}function EaQ(A,Q,B){let Y=l1A(A,Q,B);return p1A(Y.x,Y.y,Y.z)}var i1A={};u1(i1A,{AbstractDistanceCalculator:()=>nF,AbstractEuclidean:()=>AR,AbstractManhattan:()=>QR,CIE94GraphicArts:()=>r1A,CIE94Textiles:()=>s1A,CIEDE2000:()=>kC,CMetric:()=>a1A,Euclidean:()=>o1A,EuclideanBT709:()=>t1A,EuclideanBT709NoAlpha:()=>e1A,Manhattan:()=>AXA,ManhattanBT709:()=>BXA,ManhattanNommyde:()=>QXA,PNGQuant:()=>YXA});var nF=class{constructor(){FA(this,"_maxDistance"),FA(this,"_whitePoint"),this._setDefaults(),this.setWhitePoint(255,255,255,255)}setWhitePoint(A,Q,B,Y){this._whitePoint={r:A>0?255/A:0,g:Q>0?255/Q:0,b:B>0?255/B:0,a:Y>0?255/Y:0},this._maxDistance=this.calculateRaw(A,Q,B,Y,0,0,0,0)}calculateNormalized(A,Q){return this.calculateRaw(A.r,A.g,A.b,A.a,Q.r,Q.g,Q.b,Q.a)/this._maxDistance}},n1A=class extends nF{calculateRaw(A,Q,B,Y,J,C,X,G){let W=zH(I8(A*this._whitePoint.r),I8(Q*this._whitePoint.g),I8(B*this._whitePoint.b)),F=zH(I8(J*this._whitePoint.r),I8(C*this._whitePoint.g),I8(X*this._whitePoint.b)),Z=W.L-F.L,U=W.a-F.a,$=W.b-F.b,E=Math.sqrt(W.a*W.a+W.b*W.b),K=Math.sqrt(F.a*F.a+F.b*F.b),I=E-K,V=U*U+$*$-I*I;V=V<0?0:Math.sqrt(V);let H=(G-Y)*this._whitePoint.a*this._kA;return Math.sqrt((Z/this._Kl)**2+(I/(1+this._K1*E))**2+(V/(1+this._K2*E))**2+H**2)}},s1A=class extends n1A{_setDefaults(){this._Kl=2,this._K1=0.048,this._K2=0.014,this._kA=0.049019607843137254}},r1A=class extends n1A{_setDefaults(){this._Kl=1,this._K1=0.045,this._K2=0.015,this._kA=0.09803921568627451}},R0=class extends nF{_setDefaults(){}static _calculatehp(A,Q){let B=Math.atan2(A,Q);if(B>=0)return B;return B+R0._deg360InRad}static _calculateRT(A,Q){let B=Q**7,Y=2*Math.sqrt(B/(B+R0._pow25to7)),J=R0._deg30InRad*Math.exp(-(((A-R0._deg275InRad)/R0._deg25InRad)**2));return-Math.sin(2*J)*Y}static _calculateT(A){return 1-0.17*Math.cos(A-R0._deg30InRad)+0.24*Math.cos(A*2)+0.32*Math.cos(A*3+R0._deg6InRad)-0.2*Math.cos(A*4-R0._deg63InRad)}static _calculate_ahp(A,Q,B,Y){let J=B+Y;if(A===0)return J;if(Q<=R0._deg180InRad)return J/2;if(J>8)+4*Z*Z+((767-W)*U*U>>8),E=(G-Y)*this._whitePoint.a;return Math.sqrt($+E*E)}_setDefaults(){}},AR=class extends nF{calculateRaw(A,Q,B,Y,J,C,X,G){let W=J-A,F=C-Q,Z=X-B,U=G-Y;return Math.sqrt(this._kR*W*W+this._kG*F*F+this._kB*Z*Z+this._kA*U*U)}},o1A=class extends AR{_setDefaults(){this._kR=1,this._kG=1,this._kB=1,this._kA=1}},t1A=class extends AR{_setDefaults(){this._kR=0.2126,this._kG=0.7152,this._kB=0.0722,this._kA=1}},e1A=class extends AR{_setDefaults(){this._kR=0.2126,this._kG=0.7152,this._kB=0.0722,this._kA=0}},QR=class extends nF{calculateRaw(A,Q,B,Y,J,C,X,G){let W=J-A,F=C-Q,Z=X-B,U=G-Y;if(W<0)W=0-W;if(F<0)F=0-F;if(Z<0)Z=0-Z;if(U<0)U=0-U;return this._kR*W+this._kG*F+this._kB*Z+this._kA*U}},AXA=class extends QR{_setDefaults(){this._kR=1,this._kG=1,this._kB=1,this._kA=1}},QXA=class extends QR{_setDefaults(){this._kR=0.4984,this._kG=0.8625,this._kB=0.2979,this._kA=1}},BXA=class extends QR{_setDefaults(){this._kR=0.2126,this._kG=0.7152,this._kB=0.0722,this._kA=1}},YXA=class extends nF{calculateRaw(A,Q,B,Y,J,C,X,G){let W=(G-Y)*this._whitePoint.a;return this._colordifferenceCh(A*this._whitePoint.r,J*this._whitePoint.r,W)+this._colordifferenceCh(Q*this._whitePoint.g,C*this._whitePoint.g,W)+this._colordifferenceCh(B*this._whitePoint.b,X*this._whitePoint.b,W)}_colordifferenceCh(A,Q,B){let Y=A-Q,J=Y+B;return Y*Y+J*J}_setDefaults(){}},JXA={};u1(JXA,{AbstractPaletteQuantizer:()=>RH,ColorHistogram:()=>jH,NeuQuant:()=>_0,NeuQuantFloat:()=>v0,RGBQuant:()=>WXA,WuColorCube:()=>FXA,WuQuant:()=>IU});var RH=class{quantizeSync(){for(let A of this.quantize())if(A.palette)return A.palette;throw Error("unreachable")}},H8=class{constructor(){FA(this,"r"),FA(this,"g"),FA(this,"b"),FA(this,"a"),FA(this,"uint32"),FA(this,"rgba"),this.uint32=4294967295,this.r=this.g=this.b=this.a=0,this.rgba=[,,,,],this.rgba[0]=0,this.rgba[1]=0,this.rgba[2]=0,this.rgba[3]=0}static createByQuadruplet(A){let Q=new H8;return Q.r=A[0]|0,Q.g=A[1]|0,Q.b=A[2]|0,Q.a=A[3]|0,Q._loadUINT32(),Q._loadQuadruplet(),Q}static createByRGBA(A,Q,B,Y){let J=new H8;return J.r=A|0,J.g=Q|0,J.b=B|0,J.a=Y|0,J._loadUINT32(),J._loadQuadruplet(),J}static createByUint32(A){let Q=new H8;return Q.uint32=A>>>0,Q._loadRGBA(),Q._loadQuadruplet(),Q}from(A){this.r=A.r,this.g=A.g,this.b=A.b,this.a=A.a,this.uint32=A.uint32,this.rgba[0]=A.r,this.rgba[1]=A.g,this.rgba[2]=A.b,this.rgba[3]=A.a}getLuminosity(A){let Q=this.r,B=this.g,Y=this.b;if(A)Q=Math.min(255,255-this.a+this.a*Q/255),B=Math.min(255,255-this.a+this.a*B/255),Y=Math.min(255,255-this.a+this.a*Y/255);return Q*0.2126+B*0.7152+Y*0.0722}_loadUINT32(){this.uint32=(this.a<<24|this.b<<16|this.g<<8|this.r)>>>0}_loadRGBA(){this.r=this.uint32&255,this.g=this.uint32>>>8&255,this.b=this.uint32>>>16&255,this.a=this.uint32>>>24&255}_loadQuadruplet(){this.rgba[0]=this.r,this.rgba[1]=this.g,this.rgba[2]=this.b,this.rgba[3]=this.a}},O6=class{constructor(){FA(this,"_pointArray"),FA(this,"_width"),FA(this,"_height"),this._width=0,this._height=0,this._pointArray=[]}getWidth(){return this._width}getHeight(){return this._height}setWidth(A){this._width=A}setHeight(A){this._height=A}getPointArray(){return this._pointArray}clone(){let A=new O6;A._width=this._width,A._height=this._height;for(let Q=0,B=this._pointArray.length;Q=X&&A=0;Q--)if(A.uint32===this._pointArray[Q].uint32)return!0;return!1}getNearestColor(A,Q){return this._pointArray[this._getNearestIndex(A,Q)|0]}getPointContainer(){return this._pointContainer}_nearestPointFromCache(A){return typeof this._i32idx[A]==="number"?this._i32idx[A]:-1}_getNearestIndex(A,Q){let B=this._nearestPointFromCache(""+Q.uint32);if(B>=0)return B;let Y=Number.MAX_VALUE;B=0;for(let J=0,C=this._pointArray.length;J{let B=o3(A.r,A.g,A.b),Y=o3(Q.r,Q.g,Q.b),J=A.r===A.g&&A.g===A.b?0:1+Qx(B.h,T1A),X=(Q.r===Q.g&&Q.g===Q.b?0:1+Qx(Y.h,T1A))-J;if(X)return-X;let G=A.getLuminosity(!0),W=Q.getLuminosity(!0);if(W-G!==0)return W-G;let F=(Y.s*100|0)-(B.s*100|0);if(F)return-F;return 0})}},CXA={};u1(CXA,{HueStatistics:()=>XXA,Palette:()=>wH,Point:()=>H8,PointContainer:()=>O6,ProgressTracker:()=>P6,arithmetic:()=>m1A});var KaQ=class{constructor(){FA(this,"num",0),FA(this,"cols",[])}},XXA=class{constructor(A,Q){FA(this,"_numGroups"),FA(this,"_minCols"),FA(this,"_stats"),FA(this,"_groupsFull"),this._numGroups=A,this._minCols=Q,this._stats=[];for(let B=0;B<=A;B++)this._stats[B]=new KaQ;this._groupsFull=0}check(A){if(this._groupsFull===this._numGroups+1)this.check=()=>{};let Q=A&255,B=A>>>8&255,Y=A>>>16&255,J=Q===B&&B===Y?0:1+Qx(o3(Q,B,Y).h,this._numGroups),C=this._stats[J],X=this._minCols;if(C.num++,C.num>X)return;if(C.num===X)this._groupsFull++;if(C.num<=X)this._stats[J].cols.push(A)}injectIntoDictionary(A){for(let Q=0;Q<=this._numGroups;Q++)if(this._stats[Q].num<=this._minCols)this._stats[Q].cols.forEach((B)=>{if(!A[B])A[B]=1;else A[B]++})}injectIntoArray(A){for(let Q=0;Q<=this._numGroups;Q++)if(this._stats[Q].num<=this._minCols)this._stats[Q].cols.forEach((B)=>{if(A.indexOf(B)===-1)A.push(B)})}},GXA=class{constructor(A,Q){FA(this,"progress"),FA(this,"_step"),FA(this,"_range"),FA(this,"_last"),FA(this,"_progressRange"),this._range=A,this._progressRange=Q,this._step=Math.max(1,this._range/(GXA.steps+1)|0),this._last=-this._step,this.progress=0}shouldNotify(A){if(A-this._last>=this._step)return this._last=A,this.progress=Math.min(this._progressRange*this._last/this._range,this._progressRange),!0;return!1}},P6=GXA;FA(P6,"steps",100);var Q9=3,VaQ=class{constructor(A){FA(this,"r"),FA(this,"g"),FA(this,"b"),FA(this,"a"),this.r=this.g=this.b=this.a=A}toPoint(){return H8.createByRGBA(this.r>>Q9,this.g>>Q9,this.b>>Q9,this.a>>Q9)}subtract(A,Q,B,Y){this.r-=A|0,this.g-=Q|0,this.b-=B|0,this.a-=Y|0}},BB=class extends RH{constructor(A,Q=256){super();FA(this,"_pointArray"),FA(this,"_networkSize"),FA(this,"_network"),FA(this,"_sampleFactor"),FA(this,"_radPower"),FA(this,"_freq"),FA(this,"_bias"),FA(this,"_distance"),this._distance=A,this._pointArray=[],this._sampleFactor=1,this._networkSize=Q,this._distance.setWhitePoint(255<>3)*BB._radiusBias,G=X>>BB._radiusBiasShift;if(G<=1)G=0;for(let Z=0;Z>>0;let W;if(Q=Q)U-=Q;if(Z++,J===0)J=1;if(Z%J===0){if(C-=C/B|0,X-=X/BB._radiusDecrease|0,G=X>>BB._radiusBiasShift,G<=1)G=0;for(let D=0;D>>0}}}_buildPalette(){let A=new wH;return this._network.forEach((Q)=>{A.add(Q.toPoint())}),A.sort(),A}_alterNeighbour(A,Q,B,Y,J,C){let X=Q-A;if(X<-1)X=-1;let G=Q+A;if(G>this._networkSize)G=this._networkSize;let W=Q+1,F=Q-1,Z=1;while(WX){let U=this._radPower[Z++]/BB._alphaRadBias;if(WX){let $=this._network[F--];$.subtract(U*($.r-J),U*($.g-Y),U*($.b-B),U*($.a-C))}}}_alterSingle(A,Q,B,Y,J,C){A/=BB._initAlpha;let X=this._network[Q];X.subtract(A*(X.r-J),A*(X.g-Y),A*(X.b-B),A*(X.a-C))}_contest(A,Q,B,Y){let J=1020<>BB._initialBiasShift-Q9);if($>BB._betaShift;this._freq[F]-=E,this._bias[F]+=E<>BB._betaShift);FA(_0,"_betaGamma",BB._initialBias<>B9,this.g>>B9,this.b>>B9,this.a>>B9)}subtract(A,Q,B,Y){this.r-=A,this.g-=Q,this.b-=B,this.a-=Y}},YB=class extends RH{constructor(A,Q=256){super();FA(this,"_pointArray"),FA(this,"_networkSize"),FA(this,"_network"),FA(this,"_sampleFactor"),FA(this,"_radPower"),FA(this,"_freq"),FA(this,"_bias"),FA(this,"_distance"),this._distance=A,this._pointArray=[],this._sampleFactor=1,this._networkSize=Q,this._distance.setWhitePoint(255<>3)*YB._radiusBias,G=X>>YB._radiusBiasShift;if(G<=1)G=0;for(let Z=0;Z=Q)U-=Q;if(Z++,J===0)J=1;if(Z%J===0){if(C-=C/B,X-=X/YB._radiusDecrease,G=X>>YB._radiusBiasShift,G<=1)G=0;for(let D=0;D{A.add(Q.toPoint())}),A.sort(),A}_alterNeighbour(A,Q,B,Y,J,C){let X=Q-A;if(X<-1)X=-1;let G=Q+A;if(G>this._networkSize)G=this._networkSize;let W=Q+1,F=Q-1,Z=1;while(WX){let U=this._radPower[Z++]/YB._alphaRadBias;if(WX){let $=this._network[F--];$.subtract(U*($.r-J),U*($.g-Y),U*($.b-B),U*($.a-C))}}}_alterSingle(A,Q,B,Y,J,C){A/=YB._initAlpha;let X=this._network[Q];X.subtract(A*(X.r-J),A*(X.g-Y),A*(X.b-B),A*(X.a-C))}_contest(A,Q,B,Y){let J=1020<>YB._initialBiasShift-B9);if($>YB._betaShift;this._freq[F]-=E,this._bias[F]+=E<>YB._betaShift);FA(v0,"_betaGamma",YB._initialBias<this._histogram[Y]-this._histogram[B]);if(A.length===0)return[];let Q;switch(this._method){case 1:let B=Math.min(A.length,this._initColors),Y=A[B-1],J=this._histogram[Y];Q=A.slice(0,B);let C=B,X=A.length;while(C+B)}_colorStats1D(A){let Q=this._histogram,B=A.getPointArray(),Y=B.length;for(let J=0;J{let Z=Math.round(F.w*F.h/X)*MH._boxPixels;if(Z<2)Z=2;let U={};this._iterateBox(F,Q,($)=>{let E=Y[$].uint32;if(this._hueStats.check(E),E in W)W[E]++;else if(E in U){if(++U[E]>=Z)W[E]=U[E]}else U[E]=1})}),this._hueStats.injectIntoDictionary(W)}_iterateBox(A,Q,B){let Y=A,J=Y.y*Q+Y.x,C=(Y.y+Y.h-1)*Q+(Y.x+Y.w-1),X=Q-Y.w+1,G=0,W=J;do B.call(this,W),W+=++G%Y.w===0?X:1;while(W<=C)}_makeBoxes(A,Q,B,Y){let J=A%B,C=Q%Y,X=A-J,G=Q-C,W=[];for(let F=0;Fthis._colors){C.length=0;for(let Z=0;Zthis._colors*3?this._initialDistance:this._distanceIncrement}if(X$.distance-U.distance);let Z=0;while(X=0;Z--)if(Y[Z]===0){if(Z!==F-1)B[Z]=B[F-1];--F}B.length=F,Q.sort(),yield{palette:Q,progress:100}}};function $U(A){let Q=[];for(let B=0;B0){let B=this._sums[Q],Y=this._reds[Q]/B,J=this._greens[Q]/B,C=this._blues[Q]/B,X=this._alphas[Q]/B,G=H8.createByRGBA(Y|0,J|0,C|0,X|0);A.add(G)}A.sort(),yield{palette:A,progress:100}}*_preparePalette(){yield*this._calculateMoments();let A=0,Q=$U(this._colors);for(let X=1;X1?this._calculateVariance(this._cubes[A]):0,Q[X]=this._cubes[X].volume>1?this._calculateVariance(this._cubes[X]):0;else Q[A]=0,X--;A=0;let G=Q[0];for(let W=1;W<=X;++W)if(Q[W]>G)G=Q[W],A=W;if(G<=0){this._colors=X+1;break}}let B=[],Y=[],J=[],C=[];for(let X=0;X0)B[X]=OQ._volume(this._cubes[X],this._momentsRed)/G|0,Y[X]=OQ._volume(this._cubes[X],this._momentsGreen)/G|0,J[X]=OQ._volume(this._cubes[X],this._momentsBlue)/G|0,C[X]=OQ._volume(this._cubes[X],this._momentsAlpha)/G|0;else B[X]=0,Y[X]=0,J[X]=0,C[X]=0}this._reds=$U(this._colors+1),this._greens=$U(this._colors+1),this._blues=$U(this._colors+1),this._alphas=$U(this._colors+1),this._sums=$U(this._colors+1);for(let X=0,G=this._pixels.length;X>Q)+1,Y=(A.g>>Q)+1,J=(A.b>>Q)+1,C=(A.a>>Q)+1;this._weights[C][B][Y][J]++,this._momentsRed[C][B][Y][J]+=A.r,this._momentsGreen[C][B][Y][J]+=A.g,this._momentsBlue[C][B][Y][J]+=A.b,this._momentsAlpha[C][B][Y][J]+=A.a,this._moments[C][B][Y][J]+=this._table[A.r]+this._table[A.g]+this._table[A.b]+this._table[A.a]}*_calculateMoments(){let A=[],Q=[],B=[],Y=[],J=[],C=[],X=EU(this._sideSize,this._sideSize,this._sideSize),G=EU(this._sideSize,this._sideSize,this._sideSize),W=EU(this._sideSize,this._sideSize,this._sideSize),F=EU(this._sideSize,this._sideSize,this._sideSize),Z=EU(this._sideSize,this._sideSize,this._sideSize),U=EU(this._sideSize,this._sideSize,this._sideSize),$=0,E=new P6(this._alphaMaxSideIndex*this._maxSideIndex,99);for(let K=1;K<=this._alphaMaxSideIndex;++K){KU(X,this._sideSize,this._sideSize,this._sideSize,0),KU(G,this._sideSize,this._sideSize,this._sideSize,0),KU(W,this._sideSize,this._sideSize,this._sideSize,0),KU(F,this._sideSize,this._sideSize,this._sideSize,0),KU(Z,this._sideSize,this._sideSize,this._sideSize,0),KU(U,this._sideSize,this._sideSize,this._sideSize,0);for(let I=1;I<=this._maxSideIndex;++I,++$){if(E.shouldNotify($))yield{progress:E.progress};VU(A,this._sideSize,0),VU(Q,this._sideSize,0),VU(B,this._sideSize,0),VU(Y,this._sideSize,0),VU(J,this._sideSize,0),VU(C,this._sideSize,0);for(let V=1;V<=this._maxSideIndex;++V){let H=0,D=0,L=0,z=0,M=0,N=0;for(let q=1;q<=this._maxSideIndex;++q)H+=this._weights[K][I][V][q],D+=this._momentsRed[K][I][V][q],L+=this._momentsGreen[K][I][V][q],z+=this._momentsBlue[K][I][V][q],M+=this._momentsAlpha[K][I][V][q],N+=this._moments[K][I][V][q],A[q]+=H,Q[q]+=D,B[q]+=L,Y[q]+=z,J[q]+=M,C[q]+=N,X[I][V][q]=X[I-1][V][q]+A[q],G[I][V][q]=G[I-1][V][q]+Q[q],W[I][V][q]=W[I-1][V][q]+B[q],F[I][V][q]=F[I-1][V][q]+Y[q],Z[I][V][q]=Z[I-1][V][q]+J[q],U[I][V][q]=U[I-1][V][q]+C[q],this._weights[K][I][V][q]=this._weights[K-1][I][V][q]+X[I][V][q],this._momentsRed[K][I][V][q]=this._momentsRed[K-1][I][V][q]+G[I][V][q],this._momentsGreen[K][I][V][q]=this._momentsGreen[K-1][I][V][q]+W[I][V][q],this._momentsBlue[K][I][V][q]=this._momentsBlue[K-1][I][V][q]+F[I][V][q],this._momentsAlpha[K][I][V][q]=this._momentsAlpha[K-1][I][V][q]+Z[I][V][q],this._moments[K][I][V][q]=this._moments[K-1][I][V][q]+U[I][V][q]}}}}static _volumeFloat(A,Q){return Q[A.alphaMaximum][A.redMaximum][A.greenMaximum][A.blueMaximum]-Q[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMaximum]-Q[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMaximum]+Q[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMaximum]-Q[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMaximum]+Q[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMaximum]+Q[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMaximum]-Q[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(Q[A.alphaMaximum][A.redMaximum][A.greenMaximum][A.blueMinimum]-Q[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMinimum]-Q[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMinimum]+Q[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]-Q[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMinimum]+Q[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]+Q[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]-Q[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum])}static _volume(A,Q){return OQ._volumeFloat(A,Q)|0}static _top(A,Q,B,Y){let J;switch(Q){case OQ._alpha:J=Y[B][A.redMaximum][A.greenMaximum][A.blueMaximum]-Y[B][A.redMaximum][A.greenMinimum][A.blueMaximum]-Y[B][A.redMinimum][A.greenMaximum][A.blueMaximum]+Y[B][A.redMinimum][A.greenMinimum][A.blueMaximum]-(Y[B][A.redMaximum][A.greenMaximum][A.blueMinimum]-Y[B][A.redMaximum][A.greenMinimum][A.blueMinimum]-Y[B][A.redMinimum][A.greenMaximum][A.blueMinimum]+Y[B][A.redMinimum][A.greenMinimum][A.blueMinimum]);break;case OQ._red:J=Y[A.alphaMaximum][B][A.greenMaximum][A.blueMaximum]-Y[A.alphaMaximum][B][A.greenMinimum][A.blueMaximum]-Y[A.alphaMinimum][B][A.greenMaximum][A.blueMaximum]+Y[A.alphaMinimum][B][A.greenMinimum][A.blueMaximum]-(Y[A.alphaMaximum][B][A.greenMaximum][A.blueMinimum]-Y[A.alphaMaximum][B][A.greenMinimum][A.blueMinimum]-Y[A.alphaMinimum][B][A.greenMaximum][A.blueMinimum]+Y[A.alphaMinimum][B][A.greenMinimum][A.blueMinimum]);break;case OQ._green:J=Y[A.alphaMaximum][A.redMaximum][B][A.blueMaximum]-Y[A.alphaMaximum][A.redMinimum][B][A.blueMaximum]-Y[A.alphaMinimum][A.redMaximum][B][A.blueMaximum]+Y[A.alphaMinimum][A.redMinimum][B][A.blueMaximum]-(Y[A.alphaMaximum][A.redMaximum][B][A.blueMinimum]-Y[A.alphaMaximum][A.redMinimum][B][A.blueMinimum]-Y[A.alphaMinimum][A.redMaximum][B][A.blueMinimum]+Y[A.alphaMinimum][A.redMinimum][B][A.blueMinimum]);break;case OQ._blue:J=Y[A.alphaMaximum][A.redMaximum][A.greenMaximum][B]-Y[A.alphaMaximum][A.redMaximum][A.greenMinimum][B]-Y[A.alphaMaximum][A.redMinimum][A.greenMaximum][B]+Y[A.alphaMaximum][A.redMinimum][A.greenMinimum][B]-(Y[A.alphaMinimum][A.redMaximum][A.greenMaximum][B]-Y[A.alphaMinimum][A.redMaximum][A.greenMinimum][B]-Y[A.alphaMinimum][A.redMinimum][A.greenMaximum][B]+Y[A.alphaMinimum][A.redMinimum][A.greenMinimum][B]);break;default:throw Error("impossible")}return J|0}static _bottom(A,Q,B){switch(Q){case OQ._alpha:return-B[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMaximum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMaximum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMaximum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(-B[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMinimum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);case OQ._red:return-B[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMaximum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMaximum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMaximum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(-B[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMinimum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);case OQ._green:return-B[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMaximum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMaximum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMaximum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(-B[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);case OQ._blue:return-B[A.alphaMaximum][A.redMaximum][A.greenMaximum][A.blueMinimum]+B[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]-(-B[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMinimum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);default:return 0}}_calculateVariance(A){let Q=OQ._volume(A,this._momentsRed),B=OQ._volume(A,this._momentsGreen),Y=OQ._volume(A,this._momentsBlue),J=OQ._volume(A,this._momentsAlpha),C=OQ._volumeFloat(A,this._moments),X=OQ._volume(A,this._weights),G=Q*Q+B*B+Y*Y+J*J;return C-G/X}_maximize(A,Q,B,Y,J,C,X,G,W){let F=OQ._bottom(A,Q,this._momentsRed)|0,Z=OQ._bottom(A,Q,this._momentsGreen)|0,U=OQ._bottom(A,Q,this._momentsBlue)|0,$=OQ._bottom(A,Q,this._momentsAlpha)|0,E=OQ._bottom(A,Q,this._weights)|0,K=0,I=-1;for(let V=B;VK)K=q,I=V}}}return{max:K,position:I}}_cut(A,Q){let B,Y=OQ._volume(A,this._momentsRed),J=OQ._volume(A,this._momentsGreen),C=OQ._volume(A,this._momentsBlue),X=OQ._volume(A,this._momentsAlpha),G=OQ._volume(A,this._weights),W=this._maximize(A,OQ._red,A.redMinimum+1,A.redMaximum,Y,J,C,X,G),F=this._maximize(A,OQ._green,A.greenMinimum+1,A.greenMaximum,Y,J,C,X,G),Z=this._maximize(A,OQ._blue,A.blueMinimum+1,A.blueMaximum,Y,J,C,X,G),U=this._maximize(A,OQ._alpha,A.alphaMinimum+1,A.alphaMaximum,Y,J,C,X,G);if(U.max>=W.max&&U.max>=F.max&&U.max>=Z.max){if(B=OQ._alpha,U.position<0)return!1}else if(W.max>=U.max&&W.max>=F.max&&W.max>=Z.max)B=OQ._red;else if(F.max>=U.max&&F.max>=W.max&&F.max>=Z.max)B=OQ._green;else B=OQ._blue;switch(Q.redMaximum=A.redMaximum,Q.greenMaximum=A.greenMaximum,Q.blueMaximum=A.blueMaximum,Q.alphaMaximum=A.alphaMaximum,B){case OQ._red:Q.redMinimum=A.redMaximum=W.position,Q.greenMinimum=A.greenMinimum,Q.blueMinimum=A.blueMinimum,Q.alphaMinimum=A.alphaMinimum;break;case OQ._green:Q.greenMinimum=A.greenMaximum=F.position,Q.redMinimum=A.redMinimum,Q.blueMinimum=A.blueMinimum,Q.alphaMinimum=A.alphaMinimum;break;case OQ._blue:Q.blueMinimum=A.blueMaximum=Z.position,Q.redMinimum=A.redMinimum,Q.greenMinimum=A.greenMinimum,Q.alphaMinimum=A.alphaMinimum;break;case OQ._alpha:Q.alphaMinimum=A.alphaMaximum=U.position,Q.blueMinimum=A.blueMinimum,Q.redMinimum=A.redMinimum,Q.greenMinimum=A.greenMinimum;break}return A.volume=(A.redMaximum-A.redMinimum)*(A.greenMaximum-A.greenMinimum)*(A.blueMaximum-A.blueMinimum)*(A.alphaMaximum-A.alphaMinimum),Q.volume=(Q.redMaximum-Q.redMinimum)*(Q.greenMaximum-Q.greenMinimum)*(Q.blueMaximum-Q.blueMinimum)*(Q.alphaMaximum-Q.alphaMinimum),!0}_initialize(A){this._colors=A,this._cubes=[];for(let Q=0;QBR,ErrorDiffusionArray:()=>m1,ErrorDiffusionArrayKernel:()=>UXA,ErrorDiffusionRiemersma:()=>Yx,NearestColor:()=>$XA});var BR=class{quantizeSync(A,Q){for(let B of this.quantize(A,Q))if(B.pointContainer)return B.pointContainer;throw Error("unreachable")}},$XA=class extends BR{constructor(A){super();FA(this,"_distance"),this._distance=A}*quantize(A,Q){let B=A.getPointArray(),Y=A.getWidth(),J=A.getHeight(),C=new P6(J,99);for(let X=0;X{return A[A.FloydSteinberg=0]="FloydSteinberg",A[A.FalseFloydSteinberg=1]="FalseFloydSteinberg",A[A.Stucki=2]="Stucki",A[A.Atkinson=3]="Atkinson",A[A.Jarvis=4]="Jarvis",A[A.Burkes=5]="Burkes",A[A.Sierra=6]="Sierra",A[A.TwoSierra=7]="TwoSierra",A[A.SierraLite=8]="SierraLite",A})(UXA||{}),m1=class extends BR{constructor(A,Q,B=!0,Y=0,J=!1){super();FA(this,"_minColorDistance"),FA(this,"_serpentine"),FA(this,"_kernel"),FA(this,"_calculateErrorLikeGIMP"),FA(this,"_distance"),this._setKernel(Q),this._distance=A,this._minColorDistance=Y,this._serpentine=B,this._calculateErrorLikeGIMP=J}*quantize(A,Q){let B=A.getPointArray(),Y=new H8,J=A.getWidth(),C=A.getHeight(),X=[],G=1,W=1;for(let Z of this._kernel){let U=Z[2]+1;if(W=0&&k+I=0&&T+ZQ)A.length=Q;let B=A.length;for(let Y=0;Y=0&&A.x=0&&A.y{let F=B[G+W*Y],{r:Z,g:U,b:$,a:E}=F;for(let H=0;HqaQ});var NaQ=0.01,LaQ=0.03;function qaQ(A,Q){if(A.getHeight()!==Q.getHeight()||A.getWidth()!==Q.getWidth())throw Error("Images have different sizes!");let Y=255,J=(NaQ*Y)**2,C=(LaQ*Y)**2,X=0,G=0;return MaQ(A,Q,(W,F,Z,U)=>{let $=0,E=0,K=0;for(let L=0;Lprocess.nextTick(A):(A)=>setTimeout(A,0);function zaQ(A,{colorDistanceFormula:Q,paletteQuantization:B,colors:Y}={}){let J=YR(Q),C=VXA(J,B,Y);return A.forEach((X)=>C.sample(X)),C.quantizeSync()}async function RaQ(A,{colorDistanceFormula:Q,paletteQuantization:B,colors:Y,onProgress:J}={}){return new Promise((C,X)=>{let G=YR(Q),W=VXA(G,B,Y);A.forEach(($)=>W.sample($));let F,Z=W.quantize(),U=()=>{try{let $=Z.next();if($.done)C(F);else{if($.value.palette)F=$.value.palette;if(J)J($.value.progress);t3(U)}}catch($){X($)}};t3(U)})}function waQ(A,Q,{colorDistanceFormula:B,imageQuantization:Y}={}){let J=YR(B);return KXA(J,Y).quantizeSync(A,Q)}async function jaQ(A,Q,{colorDistanceFormula:B,imageQuantization:Y,onProgress:J}={}){return new Promise((C,X)=>{let G=YR(B),W=KXA(G,Y),F,Z=W.quantize(A,Q),U=()=>{try{let $=Z.next();if($.done)C(F);else{if($.value.pointContainer)F=$.value.pointContainer;if(J)J($.value.progress);t3(U)}}catch($){X($)}};t3(U)})}function YR(A="euclidean-bt709"){switch(A){case"cie94-graphic-arts":return new r1A;case"cie94-textiles":return new s1A;case"ciede2000":return new kC;case"color-metric":return new a1A;case"euclidean":return new o1A;case"euclidean-bt709":return new t1A;case"euclidean-bt709-noalpha":return new e1A;case"manhattan":return new AXA;case"manhattan-bt709":return new BXA;case"manhattan-nommyde":return new QXA;case"pngquant":return new YXA;default:throw Error(`Unknown colorDistanceFormula ${A}`)}}function KXA(A,Q="floyd-steinberg"){switch(Q){case"nearest":return new $XA(A);case"riemersma":return new Yx(A);case"floyd-steinberg":return new m1(A,0);case"false-floyd-steinberg":return new m1(A,1);case"stucki":return new m1(A,2);case"atkinson":return new m1(A,3);case"jarvis":return new m1(A,4);case"burkes":return new m1(A,5);case"sierra":return new m1(A,6);case"two-sierra":return new m1(A,7);case"sierra-lite":return new m1(A,8);default:throw Error(`Unknown imageQuantization ${Q}`)}}function VXA(A,Q="wuquant",B=256){switch(Q){case"neuquant":return new _0(A,B);case"rgbquant":return new WXA(A,B);case"wuquant":return new IU(A,B);case"neuquant-float":return new v0(A,B);default:throw Error(`Unknown paletteQuantization ${Q}`)}}IXA.exports=CaQ(_1A)});var JR=R((OaQ)=>{var DXA=a3(),{GifError:q7Y}=qH();class K7 extends DXA{constructor(...A){super(...A);if(A[0]instanceof K7){let Q=A[0];this.xOffset=Q.xOffset,this.yOffset=Q.yOffset,this.disposalMethod=Q.disposalMethod,this.delayCentisecs=Q.delayCentisecs,this.interlaced=Q.interlaced}else{let Q=A[A.length-1],B={};if(typeof Q==="object"&&!(Q instanceof DXA))B=Q;this.xOffset=B.xOffset||0,this.yOffset=B.yOffset||0,this.disposalMethod=B.disposalMethod!==void 0?B.disposalMethod:K7.DisposeToBackgroundColor,this.delayCentisecs=B.delayCentisecs||8,this.interlaced=B.interlaced||!1}}getPalette(){let A=new Set,Q=this.bitmap.data,B=0,Y=!1;while(B>8&16777215;A.add(G)}B+=4}let J=Array(A.size),C=A.values();for(B=0;BG-W);let X=J.length;if(Y)++X;return{colors:J,usesTransparency:Y,indexCount:X}}}K7.DisposeToAnything=0;K7.DisposeNothing=1;K7.DisposeToBackgroundColor=2;K7.DisposeToPrevious=3;OaQ.GifFrame=K7});var Cx=R((haQ)=>{var NXA=u("fs"),HU=HXA(),TaQ=a3(),{GifFrame:SaQ}=JR(),{GifError:kaQ}=qH(),{GifCodec:_aQ}=Xx(),vaQ=[".jpg",".jpeg",".png",".bmp"],LXA=new _aQ;haQ.cloneFrames=function(A){let Q=[];return A.forEach((B)=>{Q.push(new SaQ(B))}),Q};haQ.getColorInfo=function(A,Q){let B=!1,Y=[];for(let W=0;W256)throw new kaQ(`Frame ${W} uses more than 256 color indexes`);Y.push(F)}if(Q===0)return{usesTransparency:B,palettes:Y};let J=new Set;Y.forEach((W)=>{W.colors.forEach((F)=>{J.add(F)})});let C=J.size;if(B)++C;if(Q&&C>Q)return{usesTransparency:B,palettes:Y};let X=Array(J.size),G=J.values();for(let W=0;WW-F),{colors:X,indexCount:C,usesTransparency:B,palettes:Y}};haQ.copyAsJimp=function(A,Q){return haQ.shareAsJimp(A,new TaQ(Q))};haQ.getMaxDimensions=function(A){let Q=0,B=0;return A.forEach((Y)=>{let J=Y.xOffset+Y.bitmap.width;if(J>Q)Q=J;let C=Y.yOffset+Y.bitmap.height;if(C>B)B=C}),{maxWidth:Q,maxHeight:B}};haQ.quantizeDekker=function(A,Q,B){Q=Q||256,Jx(A,"NeuQuantFloat",Q,0,B)};haQ.quantizeSorokin=function(A,Q,B,Y){Q=Q||256,B=B||"min-pop";let J;switch(B){case"min-pop":J=2;break;case"top-pop":J=1;break;default:throw Error(`Invalid quantizeSorokin histogram '${B}'`)}Jx(A,"RGBQuant",Q,J,Y)};haQ.quantizeWu=function(A,Q,B,Y){if(Q=Q||256,B=B||5,B<1||B>8)throw Error("Invalid quantization quality");Jx(A,"WuQuant",Q,B,Y)};haQ.read=function(A,Q){if(Q=Q||LXA,Buffer.isBuffer(A))return Q.decodeGif(A);return yaQ(A).then((B)=>{return Q.decodeGif(B)})};haQ.shareAsJimp=function(A,Q){let B=new A(Q.bitmap.width,Q.bitmap.height,0);return B.bitmap.data=Q.bitmap.data,B};haQ.write=function(A,Q,B,Y){Y=Y||LXA;let J=A.match(/\.[a-zA-Z]+$/);if(J!==null&&vaQ.includes(J[0].toLowerCase()))throw Error(`GIF '${A}' has an unexpected suffix`);return Y.encodeGif(Q,B).then((C)=>{return gaQ(A,C.buffer).then(()=>{return C})})};function Jx(A,Q,B,Y,J){let C=Array.isArray(A)?A:[A],X=["FloydSteinberg","FalseFloydSteinberg","Stucki","Atkinson","Jarvis","Burkes","Sierra","TwoSierra","SierraLite"];if(J){if(X.indexOf(J.ditherAlgorithm)<0)throw Error(`Invalid ditherAlgorithm '${J.ditherAlgorithm}'`);if(J.serpentine===void 0)J.serpentine=!0;if(J.minimumColorDistanceToDither===void 0)J.minimumColorDistanceToDither=0;if(J.calculateErrorLikeGIMP===void 0)J.calculateErrorLikeGIMP=!1}let G=new HU.distance.Euclidean,W=new HU.palette[Q](G,B,Y),F;if(J)F=new HU.image.ErrorDiffusionArray(G,HU.image.ErrorDiffusionArrayKernel[J.ditherAlgorithm],J.serpentine,J.minimumColorDistanceToDither,J.calculateErrorLikeGIMP);else F=new HU.image.NearestColor(G);let Z=[];C.forEach(($)=>{let E=$.bitmap.data,K=new ArrayBuffer(E.length),I=new Uint32Array(K);for(let H=0,D=0;H{NXA.readFile(A,(Y,J)=>{if(Y)return B(Y);return Q(J)})})}function gaQ(A,Q){return new Promise((B,Y)=>{NXA.writeFile(A,Q,(J)=>{if(J)return Y(J);return B()})})}});var Xx=R((AoQ)=>{var Gx=ah(),{Gif:V7,GifError:T6}=qH();function CR(){let A=Cx();return CR=function(){return A},A}var{GifFrame:naQ}=JR(),qXA=200,saQ=100;class RXA{constructor(A={}){if(this._transparentRGB=null,typeof A.transparentRGB==="number"&&A.transparentRGB!==0)this._transparentRGBA=A.transparentRGB*256;this._testInitialBufferSize=0}decodeGif(A){try{let Q;try{Q=new Gx.GifReader(A)}catch(C){throw new T6(C)}let B=Q.numFrames(),Y=[],J={width:Q.width,height:Q.height,loops:Q.loopCount()};J.usesTransparency=!1;for(let C=0;CY.width)for(let G=0;G0)return this._testInitialBufferSize;let B=qXA+768,Y=zXA(A);return Q.forEach((J)=>{B+=MXA(J,Y)}),B}_getSizeEstimateLocal(A,Q){if(this._testInitialBufferSize>0)return this._testInitialBufferSize;let B=qXA;for(let Y=0;YQ)Y=J-1;else if(A[J]Y)Y<<=1;Q.length=Y,Q.fill(0,B)}function MXA(A,Q){let B=A.bitmap.width*A.bitmap.height;return B=Math.ceil(B*Q/8),B+=Math.ceil(B/255),saQ+B+768}function eaQ(A,Q,B){let Y=B.colors,J=Y.length<=8?raQ:aaQ,C=Q.bitmap.data,X=new Buffer(C.length/4),G=Y.length,W=0,F=0;while(W>8&16777215;X[F]=J(Y,Z)}else X[F]=G;W+=4,++F}if(B.usesTransparency){if(G===256)throw new T6(`Frame ${A} already has 256 colorsand so can't use transparency`)}else G=null;return{buffer:X,transparentIndex:G}}function zXA(A){let Q=A.indexCount,B=0;--Q;while(Q)++B,Q>>=1;return B>0?B:1}function jXA(A,Q,B,Y,J){if(B.interlaced)throw new T6("writing interlaced GIFs is not supported");let C=eaQ(Q,B,Y),X={delay:B.delayCentisecs,disposal:B.disposalMethod,transparent:C.transparentIndex};if(J)wXA(Y),X.palette=Y.colors;try{let G=A.getOutputBuffer(),W=A.getOutputBufferPosition(),F,Z=!0;while(Z)if(F=A.addFrame(B.xOffset,B.yOffset,B.bitmap.width,B.bitmap.height,C.buffer,X),Z=!1,F>=G.length-1){let U=new Buffer(G.length*1.5);G.copy(U),A.setOutputBuffer(U),A.setOutputBufferPosition(W),G=U,Z=!0}return G}catch(G){throw new T6(G)}}});var PXA=R((w7Y,OXA)=>{var BoQ=a3(),{Gif:YoQ,GifError:JoQ}=qH(),{GifCodec:CoQ}=Xx(),{GifFrame:XoQ}=JR(),GoQ=Cx();OXA.exports={BitmapImage:BoQ,Gif:YoQ,GifCodec:CoQ,GifFrame:XoQ,GifUtil:GoQ,GifError:JoQ}});var _XA=R((O7Y,GR)=>{var kXA=kXA||function(A){return Buffer.from(A).toString("base64")};function WoQ(A){var Q=this,B=Math.round,Y=Math.floor,J=Array(64),C=Array(64),X=Array(64),G=Array(64),W,F,Z,U,$=Array(65535),E=Array(65535),K=Array(64),I=Array(64),V=[],H=0,D=7,L=Array(64),z=Array(64),M=Array(64),N=Array(256),q=Array(2048),w,P=[0,1,5,6,14,15,27,28,2,4,7,13,16,26,29,42,3,8,12,17,25,30,41,43,9,11,18,24,31,40,44,53,10,19,23,32,39,45,52,54,20,22,33,38,46,51,55,60,21,34,37,47,50,56,59,61,35,36,48,49,57,58,62,63],_=[0,0,1,5,1,1,1,1,1,1,0,0,0,0,0,0,0],j=[0,1,2,3,4,5,6,7,8,9,10,11],k=[0,0,2,1,3,3,2,4,3,5,5,4,4,0,0,1,125],T=[1,2,3,0,4,17,5,18,33,49,65,6,19,81,97,7,34,113,20,50,129,145,161,8,35,66,177,193,21,82,209,240,36,51,98,114,130,9,10,22,23,24,25,26,37,38,39,40,41,42,52,53,54,55,56,57,58,67,68,69,70,71,72,73,74,83,84,85,86,87,88,89,90,99,100,101,102,103,104,105,106,115,116,117,118,119,120,121,122,131,132,133,134,135,136,137,138,146,147,148,149,150,151,152,153,154,162,163,164,165,166,167,168,169,170,178,179,180,181,182,183,184,185,186,194,195,196,197,198,199,200,201,202,210,211,212,213,214,215,216,217,218,225,226,227,228,229,230,231,232,233,234,241,242,243,244,245,246,247,248,249,250],S=[0,0,3,1,1,1,1,1,1,1,1,1,0,0,0,0,0],v=[0,1,2,3,4,5,6,7,8,9,10,11],y=[0,0,2,1,2,4,4,3,4,7,5,4,4,0,1,2,119],h=[0,1,2,3,17,4,5,33,49,6,18,65,81,7,97,113,19,34,50,129,8,20,66,145,161,177,193,9,35,51,82,240,21,98,114,209,10,22,36,52,225,37,241,23,24,25,26,38,39,40,41,42,53,54,55,56,57,58,67,68,69,70,71,72,73,74,83,84,85,86,87,88,89,90,99,100,101,102,103,104,105,106,115,116,117,118,119,120,121,122,130,131,132,133,134,135,136,137,138,146,147,148,149,150,151,152,153,154,162,163,164,165,166,167,168,169,170,178,179,180,181,182,183,184,185,186,194,195,196,197,198,199,200,201,202,210,211,212,213,214,215,216,217,218,226,227,228,229,230,231,232,233,234,242,243,244,245,246,247,248,249,250];function g(XA){var PA=[16,11,10,16,24,40,51,61,12,12,14,19,26,58,60,55,14,13,16,24,40,57,69,56,14,17,22,29,51,87,80,62,18,22,37,56,68,109,103,77,24,35,55,64,81,104,113,92,49,64,78,87,103,121,120,101,72,92,95,98,112,100,103,99];for(var NA=0;NA<64;NA++){var TA=Y((PA[NA]*XA+50)/100);if(TA<1)TA=1;else if(TA>255)TA=255;J[P[NA]]=TA}var vA=[17,18,24,47,99,99,99,99,18,21,26,66,99,99,99,99,24,26,56,99,99,99,99,99,47,66,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99];for(var mA=0;mA<64;mA++){var ZQ=Y((vA[mA]*XA+50)/100);if(ZQ<1)ZQ=1;else if(ZQ>255)ZQ=255;C[P[mA]]=ZQ}var NQ=[1,1.387039845,1.306562965,1.175875602,1,0.785694958,0.5411961,0.275899379],CQ=0;for(var SQ=0;SQ<8;SQ++)for(var LA=0;LA<8;LA++)X[CQ]=1/(J[P[CQ]]*NQ[SQ]*NQ[LA]*8),G[CQ]=1/(C[P[CQ]]*NQ[SQ]*NQ[LA]*8),CQ++}function m(XA,PA){var NA=0,TA=0,vA=[];for(var mA=1;mA<=16;mA++){for(var ZQ=1;ZQ<=XA[mA];ZQ++)vA[PA[TA]]=[],vA[PA[TA]][0]=NA,vA[PA[TA]][1]=mA,TA++,NA++;NA*=2}return vA}function n(){W=m(_,j),F=m(S,v),Z=m(k,T),U=m(y,h)}function i(){var XA=1,PA=2;for(var NA=1;NA<=15;NA++){for(var TA=XA;TA>0]=38470*XA,q[XA+512>>0]=7471*XA+32768,q[XA+768>>0]=-11059*XA,q[XA+1024>>0]=-21709*XA,q[XA+1280>>0]=32768*XA+8421375,q[XA+1536>>0]=-27439*XA,q[XA+1792>>0]=-5329*XA}function d(XA){var PA=XA[0],NA=XA[1]-1;while(NA>=0){if(PA&1<>8&255),x(XA&255)}function o(XA,PA){var NA,TA,vA,mA,ZQ,NQ,CQ,SQ,LA=0,IA,jA=8,tQ=64;for(IA=0;IA0?SM+0.5|0:SM-0.5|0;return K}function GA(){b(65504),b(16),x(74),x(70),x(73),x(70),x(0),x(1),x(1),x(0),b(1),b(1),x(0),x(0)}function VA(XA){if(!XA)return;if(b(65505),XA[0]===69&&XA[1]===120&&XA[2]===105&&XA[3]===102)b(XA.length+2);else b(XA.length+5+2),x(69),x(120),x(105),x(102),x(0);for(var PA=0;PA"u"||XA.constructor!==Array)return;XA.forEach((PA)=>{if(typeof PA!=="string")return;b(65534);var NA=PA.length;b(NA+2);var TA;for(TA=0;TA0&&I[IQ]==0;IQ--);if(IQ==0)return d(mA),NA;var vQ=1,KB;while(vQ<=IQ){var zA=vQ;for(;I[vQ]==0&&vQ<=IQ;++vQ);var uA=vQ-zA;if(uA>=CQ){KB=uA>>4;for(var MQ=1;MQ<=KB;++MQ)d(ZQ);uA=uA&15}NQ=32767+I[vQ],d(vA[(uA<<4)+E[NQ]]),d($[NQ]),vQ++}if(IQ!=SQ)d(mA);return NA}function DA(){var XA=String.fromCharCode;for(var PA=0;PA<256;PA++)N[PA]=XA(PA)}this.encode=function(XA,PA){var NA=new Date().getTime();if(PA)hA(PA);V=[],H=0,D=7,b(65496),GA(),QA(XA.comments),VA(XA.exifBuffer),UA(),EA(XA.width,XA.height),CA(),KA();var TA=0,vA=0,mA=0;H=0,D=7,this.encode.displayName="_encode_";var{data:ZQ,width:NQ,height:CQ}=XA,SQ=NQ*4,LA=NQ*3,IA,jA=0,tQ,IQ,vQ,KB,zA,uA,MQ,bQ;while(jA>3,uA=(bQ&7)*4,zA=KB+MQ*SQ+uA,jA+MQ>=CQ)zA-=SQ*(jA+1+MQ-CQ);if(IA+uA>=SQ)zA-=IA+uA-SQ+4;tQ=ZQ[zA++],IQ=ZQ[zA++],vQ=ZQ[zA++],L[bQ]=(q[tQ]+q[IQ+256>>0]+q[vQ+512>>0]>>16)-128,z[bQ]=(q[tQ+768>>0]+q[IQ+1024>>0]+q[vQ+1280>>0]>>16)-128,M[bQ]=(q[tQ+1280>>0]+q[IQ+1536>>0]+q[vQ+1792>>0]>>16)-128}TA=HA(L,X,TA,W,Z),vA=HA(z,G,vA,F,U),mA=HA(M,G,mA,F,U),IA+=32}jA+=8}if(D>=0){var eQ=[];eQ[1]=D+1,eQ[0]=(1<"u")return new Uint8Array(V);return Buffer.from(V);var lB,mQ};function hA(XA){if(XA<=0)XA=1;if(XA>100)XA=100;if(w==XA)return;var PA=0;if(XA<50)PA=Math.floor(5000/XA);else PA=Math.floor(200-XA*2);g(PA),w=XA}function QQ(){var XA=new Date().getTime();if(!A)A=50;DA(),n(),i(),p(),hA(A);var PA=new Date().getTime()-XA}QQ()}if(typeof GR<"u")GR.exports=SXA;else if(typeof window<"u")window["jpeg-js"]=window["jpeg-js"]||{},window["jpeg-js"].encode=SXA;function SXA(A,Q){if(typeof Q>"u")Q=50;var B=new WoQ(Q),Y=B.encode(A,Q);return{data:Y,width:A.width,height:A.height}}});var yXA=R((P7Y,Fx)=>{var Wx=function(){var Q=new Int32Array([0,1,8,16,9,2,3,10,17,24,32,25,18,11,4,5,12,19,26,33,40,48,41,34,27,20,13,6,7,14,21,28,35,42,49,56,57,50,43,36,29,22,15,23,30,37,44,51,58,59,52,45,38,31,39,46,53,60,61,54,47,55,62,63]),B=4017,Y=799,J=3406,C=2276,X=1567,G=3784,W=5793,F=2896;function Z(){}function U(D,L){var z=0,M=[],N,q,w=16;while(w>0&&!D[w-1])w--;M.push({children:[],index:0});var P=M[0],_;for(N=0;N0){if(M.length===0)throw Error("Could not recreate Huffman Table");P=M.pop()}P.index++,M.push(P);while(M.length<=N)M.push(_={children:[],index:0}),P.children[P.index]=_.children,P=_;z++}if(N+10)return i--,n>>i&1;if(n=D[L++],n==255){var LA=D[L++];if(LA)throw Error("unexpected marker: "+(n<<8|LA).toString(16))}return i=7,n>>>7}function d(LA){var IA=LA,jA;while((jA=p())!==null){if(IA=IA[jA],typeof IA==="number")return IA;if(typeof IA!=="object")throw Error("invalid huffman sequence")}return null}function x(LA){var IA=0;while(LA>0){var jA=p();if(jA===null)return;IA=IA<<1|jA,LA--}return IA}function b(LA){var IA=x(LA);if(IA>=1<>4;if(KB===0){if(zA<15)break;IQ+=16;continue}IQ+=zA;var uA=Q[IQ];IA[uA]=b(KB),IQ++}}function GA(LA,IA){var jA=d(LA.huffmanTableDC),tQ=jA===0?0:b(jA)<<_;IA[0]=LA.pred+=tQ}function VA(LA,IA){IA[0]|=p()<<_}var EA=0;function UA(LA,IA){if(EA>0){EA--;return}var jA=q,tQ=w;while(jA<=tQ){var IQ=d(LA.huffmanTableAC),vQ=IQ&15,KB=IQ>>4;if(vQ===0){if(KB<15){EA=x(KB)+(1<>4;if(uA===0)if(IQ<15)EA=x(IQ)+(1<=65488&&ZQ<=65495)L+=2;else break}return L-m}function E(D,L){var z=[],M=L.blocksPerLine,N=L.blocksPerColumn,q=M<<3,w=new Int32Array(64),P=new Uint8Array(64);function _(m,n,i){var p=L.quantizationTable,d,x,b,o,GA,VA,EA,UA,CA,QA=i,KA;for(KA=0;KA<64;KA++)QA[KA]=m[KA]*p[KA];for(KA=0;KA<8;++KA){var HA=8*KA;if(QA[1+HA]==0&&QA[2+HA]==0&&QA[3+HA]==0&&QA[4+HA]==0&&QA[5+HA]==0&&QA[6+HA]==0&&QA[7+HA]==0){CA=W*QA[0+HA]+512>>10,QA[0+HA]=CA,QA[1+HA]=CA,QA[2+HA]=CA,QA[3+HA]=CA,QA[4+HA]=CA,QA[5+HA]=CA,QA[6+HA]=CA,QA[7+HA]=CA;continue}d=W*QA[0+HA]+128>>8,x=W*QA[4+HA]+128>>8,b=QA[2+HA],o=QA[6+HA],GA=F*(QA[1+HA]-QA[7+HA])+128>>8,UA=F*(QA[1+HA]+QA[7+HA])+128>>8,VA=QA[3+HA]<<4,EA=QA[5+HA]<<4,CA=d-x+1>>1,d=d+x+1>>1,x=CA,CA=b*G+o*X+128>>8,b=b*X-o*G+128>>8,o=CA,CA=GA-EA+1>>1,GA=GA+EA+1>>1,EA=CA,CA=UA+VA+1>>1,VA=UA-VA+1>>1,UA=CA,CA=d-o+1>>1,d=d+o+1>>1,o=CA,CA=x-b+1>>1,x=x+b+1>>1,b=CA,CA=GA*C+UA*J+2048>>12,GA=GA*J-UA*C+2048>>12,UA=CA,CA=VA*Y+EA*B+2048>>12,VA=VA*B-EA*Y+2048>>12,EA=CA,QA[0+HA]=d+UA,QA[7+HA]=d-UA,QA[1+HA]=x+EA,QA[6+HA]=x-EA,QA[2+HA]=b+VA,QA[5+HA]=b-VA,QA[3+HA]=o+GA,QA[4+HA]=o-GA}for(KA=0;KA<8;++KA){var DA=KA;if(QA[8+DA]==0&&QA[16+DA]==0&&QA[24+DA]==0&&QA[32+DA]==0&&QA[40+DA]==0&&QA[48+DA]==0&&QA[56+DA]==0){CA=W*i[KA+0]+8192>>14,QA[0+DA]=CA,QA[8+DA]=CA,QA[16+DA]=CA,QA[24+DA]=CA,QA[32+DA]=CA,QA[40+DA]=CA,QA[48+DA]=CA,QA[56+DA]=CA;continue}d=W*QA[0+DA]+2048>>12,x=W*QA[32+DA]+2048>>12,b=QA[16+DA],o=QA[48+DA],GA=F*(QA[8+DA]-QA[56+DA])+2048>>12,UA=F*(QA[8+DA]+QA[56+DA])+2048>>12,VA=QA[24+DA],EA=QA[40+DA],CA=d-x+1>>1,d=d+x+1>>1,x=CA,CA=b*G+o*X+2048>>12,b=b*X-o*G+2048>>12,o=CA,CA=GA-EA+1>>1,GA=GA+EA+1>>1,EA=CA,CA=UA+VA+1>>1,VA=UA-VA+1>>1,UA=CA,CA=d-o+1>>1,d=d+o+1>>1,o=CA,CA=x-b+1>>1,x=x+b+1>>1,b=CA,CA=GA*C+UA*J+2048>>12,GA=GA*J-UA*C+2048>>12,UA=CA,CA=VA*Y+EA*B+2048>>12,VA=VA*B-EA*Y+2048>>12,EA=CA,QA[0+DA]=d+UA,QA[56+DA]=d-UA,QA[8+DA]=x+EA,QA[48+DA]=x-EA,QA[16+DA]=b+VA,QA[40+DA]=b-VA,QA[24+DA]=o+GA,QA[32+DA]=o-GA}for(KA=0;KA<64;++KA){var hA=128+(QA[KA]+8>>4);n[KA]=hA<0?0:hA>255?255:hA}}H(q*N*8);var j,k;for(var T=0;T255?255:D}Z.prototype={load:function(L){var z=new XMLHttpRequest;z.open("GET",L,!0),z.responseType="arraybuffer",z.onload=function(){var M=new Uint8Array(z.response||z.mozResponseArrayBuffer);if(this.parse(M),this.onload)this.onload()}.bind(this),z.send(null)},parse:function(L){var z=this.opts.maxResolutionInMP*1000*1000,M=0,N=L.length;function q(){var zA=L[M]<<8|L[M+1];return M+=2,zA}function w(){var zA=q(),uA=L.subarray(M,M+zA-2);return M+=uA.length,uA}function P(zA){var uA=1,MQ=1,bQ,eQ;for(eQ in zA.components)if(zA.components.hasOwnProperty(eQ)){if(bQ=zA.components[eQ],uA>4===0)for(p=0;p<64;p++){var UA=Q[p];EA[UA]=L[M++]}else if(VA>>4===1)for(p=0;p<64;p++){var UA=Q[p];EA[UA]=q()}else throw Error("DQT: invalid table spec");v[VA&15]=EA}break;case 65472:case 65473:case 65474:q(),T={},T.extended=m===65473,T.progressive=m===65474,T.precision=L[M++],T.scanLines=q(),T.samplesPerLine=q(),T.components={},T.componentsOrder=[];var CA=T.scanLines*T.samplesPerLine;if(CA>z){var QA=Math.ceil((CA-z)/1e6);throw Error(`maxResolutionInMP limit exceeded by ${QA}MP`)}var KA=L[M++],HA,DA=0,hA=0;for(i=0;i>4,XA=L[M+1]&15,PA=L[M+2];if(QQ<=0||XA<=0)throw Error("Invalid sampling factor, expected values above 0");T.componentsOrder.push(HA),T.components[HA]={h:QQ,v:XA,quantizationIdx:PA},M+=3}P(T),y.push(T);break;case 65476:var NA=q();for(i=2;i>4===0?g:h)[TA&15]=U(vA,ZQ)}break;case 65501:q(),S=q();break;case 65500:q(),q();break;case 65498:var NQ=q(),CQ=L[M++],SQ=[],LA;for(i=0;i>4],LA.huffmanTableAC=h[IA&15],SQ.push(LA)}var jA=L[M++],tQ=L[M++],IQ=L[M++],vQ=$(L,M,T,SQ,S,jA,tQ,IQ>>4,IQ&15,this.opts);M+=vQ;break;case 65535:if(L[M]!==255)M--;break;default:if(L[M-3]==255&&L[M-2]>=192&&L[M-2]<=254){M-=3;break}else if(m===224||m==225){if(n!==-1)throw Error(`first unknown JPEG marker at offset ${n.toString(16)}, second unknown JPEG marker ${m.toString(16)} at offset ${(M-1).toString(16)}`);n=M-1;let zA=q();if(L[M+zA-2]===255){M+=zA-2;break}}throw Error("unknown JPEG marker "+m.toString(16))}m=q()}if(y.length!=1)throw Error("only single frame JPEGs supported");for(var i=0;iV){var z=Math.ceil((L-V)/1024/1024);throw Error(`maxMemoryUsageInMB limit exceeded by at least ${z}MB`)}I=L}return Z.resetMaxMemoryUsage=function(D){I=0,V=D},Z.getBytesAllocated=function(){return I},Z.requestMemoryAllocation=H,Z}();if(typeof Fx<"u")Fx.exports=vXA;else if(typeof window<"u")window["jpeg-js"]=window["jpeg-js"]||{},window["jpeg-js"].decode=vXA;function vXA(A,Q={}){var B={colorTransform:void 0,useTArray:!1,formatAsRGBA:!0,tolerantDecoding:!0,maxResolutionInMP:100,maxMemoryUsageInMB:512},Y={...B,...Q},J=new Uint8Array(A),C=new Wx;C.opts=Y,Wx.resetMaxMemoryUsage(Y.maxMemoryUsageInMB*1024*1024),C.parse(J);var X=Y.formatAsRGBA?4:3,G=C.width*C.height*X;try{Wx.requestMemoryAllocation(G);var W={width:C.width,height:C.height,exifBuffer:C.exifBuffer,data:Y.useTArray?new Uint8Array(G):Buffer.alloc(G)};if(C.comments.length>0)W.comments=C.comments}catch(F){if(F instanceof RangeError)throw Error("Could not allocate enough memory for the image. Required: "+G);if(F instanceof ReferenceError){if(F.message==="Buffer is not defined")throw Error("Buffer is not globally defined in this environment. Consider setting useTArray to true")}throw F}return C.copyToImageData(W,Y.formatAsRGBA),W}});var hXA=R((T7Y,gXA)=>{var FoQ=_XA(),ZoQ=yXA();gXA.exports={encode:FoQ,decode:ZoQ}});var $x=R((k7Y,fXA)=>{var $oQ=u("util"),xXA=u("stream"),_C=fXA.exports=function(){xXA.call(this),this._buffers=[],this._buffered=0,this._reads=[],this._paused=!1,this._encoding="utf8",this.writable=!0};$oQ.inherits(_C,xXA);_C.prototype.read=function(A,Q){this._reads.push({length:Math.abs(A),allowLess:A<0,func:Q}),process.nextTick(function(){if(this._process(),this._paused&&this._reads&&this._reads.length>0)this._paused=!1,this.emit("drain")}.bind(this))};_C.prototype.write=function(A,Q){if(!this.writable)return this.emit("error",Error("Stream not writable")),!1;let B;if(Buffer.isBuffer(A))B=A;else B=Buffer.from(A,Q||this._encoding);if(this._buffers.push(B),this._buffered+=B.length,this._process(),this._reads&&this._reads.length===0)this._paused=!0;return this.writable&&!this._paused};_C.prototype.end=function(A,Q){if(A)this.write(A,Q);if(this.writable=!1,!this._buffers)return;if(this._buffers.length===0)this._end();else this._buffers.push(null),this._process()};_C.prototype.destroySoon=_C.prototype.end;_C.prototype._end=function(){if(this._reads.length>0)this.emit("error",Error("Unexpected end of input"));this.destroy()};_C.prototype.destroy=function(){if(!this._buffers)return;this.writable=!1,this._reads=null,this._buffers=null,this.emit("close")};_C.prototype._processReadAllowingLess=function(A){this._reads.shift();let Q=this._buffers[0];if(Q.length>A.length)this._buffered-=A.length,this._buffers[0]=Q.slice(A.length),A.func.call(this,Q.slice(0,A.length));else this._buffered-=Q.length,this._buffers.shift(),A.func.call(this,Q)};_C.prototype._processRead=function(A){this._reads.shift();let Q=0,B=0,Y=Buffer.alloc(A.length);while(Q0)this._buffers.splice(0,B);this._buffered-=A.length,A.func.call(this,Y)};_C.prototype._process=function(){try{while(this._buffered>0&&this._reads&&this._reads.length>0){let A=this._reads[0];if(A.allowLess)this._processReadAllowingLess(A);else if(this._buffered>=A.length)this._processRead(A);else break}if(this._buffers&&!this.writable)this._end()}catch(A){this.emit("error",A)}}});var Ux=R((UoQ)=>{var H7=[{x:[0],y:[0]},{x:[4],y:[0]},{x:[0,4],y:[4]},{x:[2,6],y:[0,4]},{x:[0,2,4,6],y:[2,6]},{x:[1,3,5,7],y:[0,2,4,6]},{x:[0,1,2,3,4,5,6,7],y:[1,3,5,7]}];UoQ.getImagePasses=function(A,Q){let B=[],Y=A%8,J=Q%8,C=(A-Y)/8,X=(Q-J)/8;for(let G=0;G0&&Z>0)B.push({width:F,height:Z,index:G})}return B};UoQ.getInterlaceIterator=function(A){return function(Q,B,Y){let J=Q%H7[Y].x.length,C=(Q-J)/H7[Y].x.length*8+H7[Y].x[J],X=B%H7[Y].y.length,G=(B-X)/H7[Y].y.length*8+H7[Y].y[X];return C*4+G*A*4}}});var Ex=R((v7Y,bXA)=>{bXA.exports=function(Q,B,Y){let J=Q+B-Y,C=Math.abs(J-Q),X=Math.abs(J-B),G=Math.abs(J-Y);if(C<=X&&C<=G)return Q;if(X<=G)return B;return Y}});var Kx=R((y7Y,uXA)=>{var VoQ=Ux(),IoQ=Ex();function mXA(A,Q,B){let Y=A*Q;if(B!==8)Y=Math.ceil(Y/(8/B));return Y}var DU=uXA.exports=function(A,Q){let{width:B,height:Y,interlace:J,bpp:C,depth:X}=A;if(this.read=Q.read,this.write=Q.write,this.complete=Q.complete,this._imageIndex=0,this._images=[],J){let G=VoQ.getImagePasses(B,Y);for(let W=0;WJ?Q[C-Y]:0;Q[C]=X+G}};DU.prototype._unFilterType2=function(A,Q,B){let Y=this._lastLine;for(let J=0;JJ?Q[X-Y]:0,Z=Math.floor((F+W)/2);Q[X]=G+Z}};DU.prototype._unFilterType4=function(A,Q,B){let Y=this._xComparison,J=Y-1,C=this._lastLine;for(let X=0;XJ?Q[X-Y]:0,Z=X>J&&C?C[X-Y]:0,U=IoQ(F,W,Z);Q[X]=G+U}};DU.prototype._reverseFilterLine=function(A){let Q=A[0],B,Y=this._images[this._imageIndex],J=Y.byteWidth;if(Q===0)B=A.slice(1,J+1);else switch(B=Buffer.alloc(J),Q){case 1:this._unFilterType1(A,B,J);break;case 2:this._unFilterType2(A,B,J);break;case 3:this._unFilterType3(A,B,J);break;case 4:this._unFilterType4(A,B,J);break;default:throw Error("Unrecognised filter type - "+Q)}if(this.write(B),Y.lineIndex++,Y.lineIndex>=Y.height)this._lastLine=null,this._imageIndex++,Y=this._images[this._imageIndex];else this._lastLine=B;if(Y)this.read(Y.byteWidth+1,this._reverseFilterLine.bind(this));else this._lastLine=null,this.complete()}});var lXA=R((g7Y,cXA)=>{var HoQ=u("util"),dXA=$x(),DoQ=Kx(),NoQ=cXA.exports=function(A){dXA.call(this);let Q=[],B=this;this._filter=new DoQ(A,{read:this.read.bind(this),write:function(Y){Q.push(Y)},complete:function(){B.emit("complete",Buffer.concat(Q))}}),this._filter.start()};HoQ.inherits(NoQ,dXA)});var NU=R((h7Y,pXA)=>{pXA.exports={PNG_SIGNATURE:[137,80,78,71,13,10,26,10],TYPE_IHDR:1229472850,TYPE_IEND:1229278788,TYPE_IDAT:1229209940,TYPE_PLTE:1347179589,TYPE_tRNS:1951551059,TYPE_gAMA:1732332865,COLORTYPE_GRAYSCALE:0,COLORTYPE_PALETTE:1,COLORTYPE_COLOR:2,COLORTYPE_ALPHA:4,COLORTYPE_PALETTE_COLOR:3,COLORTYPE_COLOR_ALPHA:6,COLORTYPE_TO_BPP_MAP:{0:1,2:3,3:1,4:2,6:4},GAMMA_DIVISION:1e5}});var Hx=R((x7Y,iXA)=>{var Vx=[];(function(){for(let A=0;A<256;A++){let Q=A;for(let B=0;B<8;B++)if(Q&1)Q=3988292384^Q>>>1;else Q=Q>>>1;Vx[A]=Q}})();var Ix=iXA.exports=function(){this._crc=-1};Ix.prototype.write=function(A){for(let Q=0;Q>>8;return!0};Ix.prototype.crc32=function(){return this._crc^-1};Ix.crc32=function(A){let Q=-1;for(let B=0;B>>8;return Q^-1}});var Dx=R((f7Y,nXA)=>{var _Y=NU(),LoQ=Hx(),iY=nXA.exports=function(A,Q){this._options=A,A.checkCRC=A.checkCRC!==!1,this._hasIHDR=!1,this._hasIEND=!1,this._emittedHeadersFinished=!1,this._palette=[],this._colorType=0,this._chunks={},this._chunks[_Y.TYPE_IHDR]=this._handleIHDR.bind(this),this._chunks[_Y.TYPE_IEND]=this._handleIEND.bind(this),this._chunks[_Y.TYPE_IDAT]=this._handleIDAT.bind(this),this._chunks[_Y.TYPE_PLTE]=this._handlePLTE.bind(this),this._chunks[_Y.TYPE_tRNS]=this._handleTRNS.bind(this),this._chunks[_Y.TYPE_gAMA]=this._handleGAMA.bind(this),this.read=Q.read,this.error=Q.error,this.metadata=Q.metadata,this.gamma=Q.gamma,this.transColor=Q.transColor,this.palette=Q.palette,this.parsed=Q.parsed,this.inflateData=Q.inflateData,this.finished=Q.finished,this.simpleTransparency=Q.simpleTransparency,this.headersFinished=Q.headersFinished||function(){}};iY.prototype.start=function(){this.read(_Y.PNG_SIGNATURE.length,this._parseSignature.bind(this))};iY.prototype._parseSignature=function(A){let Q=_Y.PNG_SIGNATURE;for(let B=0;Bthis._palette.length){this.error(Error("More transparent colors than palette size"));return}for(let Q=0;Q0)this._handleIDAT(B);else this._handleChunkEnd()};iY.prototype._handleIEND=function(A){this.read(A,this._parseIEND.bind(this))};iY.prototype._parseIEND=function(A){if(this._crc.write(A),this._hasIEND=!0,this._handleChunkEnd(),this.finished)this.finished()}});var Nx=R((joQ)=>{var sXA=Ux(),qoQ=[function(){},function(A,Q,B,Y){if(Y===Q.length)throw Error("Ran out of data");let J=Q[Y];A[B]=J,A[B+1]=J,A[B+2]=J,A[B+3]=255},function(A,Q,B,Y){if(Y+1>=Q.length)throw Error("Ran out of data");let J=Q[Y];A[B]=J,A[B+1]=J,A[B+2]=J,A[B+3]=Q[Y+1]},function(A,Q,B,Y){if(Y+2>=Q.length)throw Error("Ran out of data");A[B]=Q[Y],A[B+1]=Q[Y+1],A[B+2]=Q[Y+2],A[B+3]=255},function(A,Q,B,Y){if(Y+3>=Q.length)throw Error("Ran out of data");A[B]=Q[Y],A[B+1]=Q[Y+1],A[B+2]=Q[Y+2],A[B+3]=Q[Y+3]}],MoQ=[function(){},function(A,Q,B,Y){let J=Q[0];A[B]=J,A[B+1]=J,A[B+2]=J,A[B+3]=Y},function(A,Q,B){let Y=Q[0];A[B]=Y,A[B+1]=Y,A[B+2]=Y,A[B+3]=Q[1]},function(A,Q,B,Y){A[B]=Q[0],A[B+1]=Q[1],A[B+2]=Q[2],A[B+3]=Y},function(A,Q,B){A[B]=Q[0],A[B+1]=Q[1],A[B+2]=Q[2],A[B+3]=Q[3]}];function zoQ(A,Q){let B=[],Y=0;function J(){if(Y===A.length)throw Error("Ran out of data");let C=A[Y];Y++;let X,G,W,F,Z,U,$,E;switch(Q){default:throw Error("unrecognised depth");case 16:$=A[Y],Y++,B.push((C<<8)+$);break;case 4:$=C&15,E=C>>4,B.push(E,$);break;case 2:Z=C&3,U=C>>2&3,$=C>>4&3,E=C>>6&3,B.push(E,$,U,Z);break;case 1:X=C&1,G=C>>1&1,W=C>>2&1,F=C>>3&1,Z=C>>4&1,U=C>>5&1,$=C>>6&1,E=C>>7&1,B.push(E,$,U,Z,F,W,G,X);break}}return{get:function(C){while(B.length{function PoQ(A,Q,B,Y,J){let C=0;for(let X=0;X{var koQ=u("util"),qx=u("zlib"),aXA=$x(),_oQ=lXA(),voQ=Dx(),yoQ=Nx(),goQ=Lx(),d1=oXA.exports=function(A){aXA.call(this),this._parser=new voQ(A,{read:this.read.bind(this),error:this._handleError.bind(this),metadata:this._handleMetaData.bind(this),gamma:this.emit.bind(this,"gamma"),palette:this._handlePalette.bind(this),transColor:this._handleTransColor.bind(this),finished:this._finished.bind(this),inflateData:this._inflateData.bind(this),simpleTransparency:this._simpleTransparency.bind(this),headersFinished:this._headersFinished.bind(this)}),this._options=A,this.writable=!0,this._parser.start()};koQ.inherits(d1,aXA);d1.prototype._handleError=function(A){if(this.emit("error",A),this.writable=!1,this.destroy(),this._inflate&&this._inflate.destroy)this._inflate.destroy();if(this._filter)this._filter.destroy(),this._filter.on("error",function(){});this.errord=!0};d1.prototype._inflateData=function(A){if(!this._inflate)if(this._bitmapInfo.interlace)this._inflate=qx.createInflate(),this._inflate.on("error",this.emit.bind(this,"error")),this._filter.on("complete",this._complete.bind(this)),this._inflate.pipe(this._filter);else{let B=((this._bitmapInfo.width*this._bitmapInfo.bpp*this._bitmapInfo.depth+7>>3)+1)*this._bitmapInfo.height,Y=Math.max(B,qx.Z_MIN_CHUNK);this._inflate=qx.createInflate({chunkSize:Y});let J=B,C=this.emit.bind(this,"error");this._inflate.on("error",function(G){if(!J)return;C(G)}),this._filter.on("complete",this._complete.bind(this));let X=this._filter.write.bind(this._filter);this._inflate.on("data",function(G){if(!J)return;if(G.length>J)G=G.slice(0,J);J-=G.length,X(G)}),this._inflate.on("end",this._filter.end.bind(this._filter))}this._inflate.write(A)};d1.prototype._handleMetaData=function(A){this._metaData=A,this._bitmapInfo=Object.create(A),this._filter=new _oQ(this._bitmapInfo)};d1.prototype._handleTransColor=function(A){this._bitmapInfo.transColor=A};d1.prototype._handlePalette=function(A){this._bitmapInfo.palette=A};d1.prototype._simpleTransparency=function(){this._metaData.alpha=!0};d1.prototype._headersFinished=function(){this.emit("metadata",this._metaData)};d1.prototype._finished=function(){if(this.errord)return;if(!this._inflate)this.emit("error","No Inflate block");else this._inflate.end()};d1.prototype._complete=function(A){if(this.errord)return;let Q;try{let B=yoQ.dataToBitMap(A,this._bitmapInfo);Q=goQ(B,this._bitmapInfo,this._options.skipRescale),B=null}catch(B){this._handleError(B);return}this.emit("parsed",Q)}});var A6A=R((d7Y,eXA)=>{var D5=NU();eXA.exports=function(A,Q,B,Y){let J=[D5.COLORTYPE_COLOR_ALPHA,D5.COLORTYPE_ALPHA].indexOf(Y.colorType)!==-1;if(Y.colorType===Y.inputColorType){let K=function(){let I=new ArrayBuffer(2);return new DataView(I).setInt16(0,256,!0),new Int16Array(I)[0]!==256}();if(Y.bitDepth===8||Y.bitDepth===16&&K)return A}let C=Y.bitDepth!==16?A:new Uint16Array(A.buffer),X=255,G=D5.COLORTYPE_TO_BPP_MAP[Y.inputColorType];if(G===4&&!Y.inputHasAlpha)G=3;let W=D5.COLORTYPE_TO_BPP_MAP[Y.colorType];if(Y.bitDepth===16)X=65535,W*=2;let F=Buffer.alloc(Q*B*W),Z=0,U=0,$=Y.bgColor||{};if($.red===void 0)$.red=X;if($.green===void 0)$.green=X;if($.blue===void 0)$.blue=X;function E(){let K,I,V,H=X;switch(Y.inputColorType){case D5.COLORTYPE_COLOR_ALPHA:H=C[Z+3],K=C[Z],I=C[Z+1],V=C[Z+2];break;case D5.COLORTYPE_COLOR:K=C[Z],I=C[Z+1],V=C[Z+2];break;case D5.COLORTYPE_ALPHA:H=C[Z+1],K=C[Z],I=K,V=K;break;case D5.COLORTYPE_GRAYSCALE:K=C[Z],I=K,V=K;break;default:throw Error("input color type:"+Y.inputColorType+" is not supported at present")}if(Y.inputHasAlpha){if(!J)H/=X,K=Math.min(Math.max(Math.round((1-H)*$.red+H*K),0),X),I=Math.min(Math.max(Math.round((1-H)*$.green+H*I),0),X),V=Math.min(Math.max(Math.round((1-H)*$.blue+H*V),0),X)}return{red:K,green:I,blue:V,alpha:H}}for(let K=0;K{var Q6A=Ex();function hoQ(A,Q,B,Y,J){for(let C=0;C=C?A[Q+X-C]:0,W=A[Q+X]-G;Y[J+X]=W}}function boQ(A,Q,B,Y){let J=0;for(let C=0;C=Y?A[Q+C-Y]:0,G=A[Q+C]-X;J+=Math.abs(G)}return J}function moQ(A,Q,B,Y,J){for(let C=0;C0?A[Q+C-B]:0,G=A[Q+C]-X;Y[J+C]=G}}function uoQ(A,Q,B){let Y=0,J=Q+B;for(let C=Q;C0?A[C-B]:0,G=A[C]-X;Y+=Math.abs(G)}return Y}function doQ(A,Q,B,Y,J,C){for(let X=0;X=C?A[Q+X-C]:0,W=Q>0?A[Q+X-B]:0,F=A[Q+X]-(G+W>>1);Y[J+X]=F}}function coQ(A,Q,B,Y){let J=0;for(let C=0;C=Y?A[Q+C-Y]:0,G=Q>0?A[Q+C-B]:0,W=A[Q+C]-(X+G>>1);J+=Math.abs(W)}return J}function loQ(A,Q,B,Y,J,C){for(let X=0;X=C?A[Q+X-C]:0,W=Q>0?A[Q+X-B]:0,F=Q>0&&X>=C?A[Q+X-(B+C)]:0,Z=A[Q+X]-Q6A(G,W,F);Y[J+X]=Z}}function poQ(A,Q,B,Y){let J=0;for(let C=0;C=Y?A[Q+C-Y]:0,G=Q>0?A[Q+C-B]:0,W=Q>0&&C>=Y?A[Q+C-(B+Y)]:0,F=A[Q+C]-Q6A(X,G,W);J+=Math.abs(F)}return J}var ioQ={0:hoQ,1:foQ,2:moQ,3:doQ,4:loQ},noQ={0:xoQ,1:boQ,2:uoQ,3:coQ,4:poQ};B6A.exports=function(A,Q,B,Y,J){let C;if(!("filterType"in Y)||Y.filterType===-1)C=[0,1,2,3,4];else if(typeof Y.filterType==="number")C=[Y.filterType];else throw Error("unrecognised filter types");if(Y.bitDepth===16)J*=2;let X=Q*J,G=0,W=0,F=Buffer.alloc((X+1)*B),Z=C[0];for(let U=0;U1){let $=1/0;for(let E=0;E{var RJ=NU(),soQ=Hx(),roQ=A6A(),aoQ=Y6A(),ooQ=u("zlib"),D7=J6A.exports=function(A){if(this._options=A,A.deflateChunkSize=A.deflateChunkSize||32768,A.deflateLevel=A.deflateLevel!=null?A.deflateLevel:9,A.deflateStrategy=A.deflateStrategy!=null?A.deflateStrategy:3,A.inputHasAlpha=A.inputHasAlpha!=null?A.inputHasAlpha:!0,A.deflateFactory=A.deflateFactory||ooQ.createDeflate,A.bitDepth=A.bitDepth||8,A.colorType=typeof A.colorType==="number"?A.colorType:RJ.COLORTYPE_COLOR_ALPHA,A.inputColorType=typeof A.inputColorType==="number"?A.inputColorType:RJ.COLORTYPE_COLOR_ALPHA,[RJ.COLORTYPE_GRAYSCALE,RJ.COLORTYPE_COLOR,RJ.COLORTYPE_COLOR_ALPHA,RJ.COLORTYPE_ALPHA].indexOf(A.colorType)===-1)throw Error("option color type:"+A.colorType+" is not supported at present");if([RJ.COLORTYPE_GRAYSCALE,RJ.COLORTYPE_COLOR,RJ.COLORTYPE_COLOR_ALPHA,RJ.COLORTYPE_ALPHA].indexOf(A.inputColorType)===-1)throw Error("option input color type:"+A.inputColorType+" is not supported at present");if(A.bitDepth!==8&&A.bitDepth!==16)throw Error("option bit depth:"+A.bitDepth+" is not supported at present")};D7.prototype.getDeflateOptions=function(){return{chunkSize:this._options.deflateChunkSize,level:this._options.deflateLevel,strategy:this._options.deflateStrategy}};D7.prototype.createDeflate=function(){return this._options.deflateFactory(this.getDeflateOptions())};D7.prototype.filterData=function(A,Q,B){let Y=roQ(A,Q,B,this._options),J=RJ.COLORTYPE_TO_BPP_MAP[this._options.colorType];return aoQ(Y,Q,B,this._options,J)};D7.prototype._packChunk=function(A,Q){let B=Q?Q.length:0,Y=Buffer.alloc(B+12);if(Y.writeUInt32BE(B,0),Y.writeUInt32BE(A,4),Q)Q.copy(Y,8);return Y.writeInt32BE(soQ.crc32(Y.slice(4,Y.length-4)),Y.length-4),Y};D7.prototype.packGAMA=function(A){let Q=Buffer.alloc(4);return Q.writeUInt32BE(Math.floor(A*RJ.GAMMA_DIVISION),0),this._packChunk(RJ.TYPE_gAMA,Q)};D7.prototype.packIHDR=function(A,Q){let B=Buffer.alloc(13);return B.writeUInt32BE(A,0),B.writeUInt32BE(Q,4),B[8]=this._options.bitDepth,B[9]=this._options.colorType,B[10]=0,B[11]=0,B[12]=0,this._packChunk(RJ.TYPE_IHDR,B)};D7.prototype.packIDAT=function(A){return this._packChunk(RJ.TYPE_IDAT,A)};D7.prototype.packIEND=function(){return this._packChunk(RJ.TYPE_IEND,null)}});var W6A=R((p7Y,G6A)=>{var toQ=u("util"),C6A=u("stream"),eoQ=NU(),AtQ=Mx(),X6A=G6A.exports=function(A){C6A.call(this);let Q=A||{};this._packer=new AtQ(Q),this._deflate=this._packer.createDeflate(),this.readable=!0};toQ.inherits(X6A,C6A);X6A.prototype.pack=function(A,Q,B,Y){if(this.emit("data",Buffer.from(eoQ.PNG_SIGNATURE)),this.emit("data",this._packer.packIHDR(Q,B)),Y)this.emit("data",this._packer.packGAMA(Y));let J=this._packer.filterData(A,Q,B);this._deflate.on("error",this.emit.bind(this,"error")),this._deflate.on("data",function(C){this.emit("data",this._packer.packIDAT(C))}.bind(this)),this._deflate.on("end",function(){this.emit("data",this._packer.packIEND()),this.emit("end")}.bind(this)),this._deflate.end(J)}});var K6A=R((OH,E6A)=>{var F6A=u("assert").ok,LU=u("zlib"),QtQ=u("util"),Z6A=u("buffer").kMaxLength;function sF(A){if(!(this instanceof sF))return new sF(A);if(A&&A.chunkSize=0,"have should not go down"),V>0){let H=Y._buffer.slice(Y._offset,Y._offset+V);if(Y._offset+=V,H.length>X)H=H.slice(0,X);if(W.push(H),F+=H.length,X-=H.length,X===0)return!1}if(I===0||Y._offset>=Y._chunkSize)C=Y._chunkSize,Y._offset=0,Y._buffer=Buffer.allocUnsafe(Y._chunkSize);if(I===0)return G+=J-K,J=K,!0;return!1}F6A(this._handle,"zlib binding closed");let $;do $=this._handle.writeSync(Q,A,G,J,this._buffer,this._offset,C),$=$||this._writeState;while(!this._hadError&&U($[0],$[1]));if(this._hadError)throw Z;if(F>=Z6A)throw $6A(this),RangeError("Cannot create final Buffer. It would be larger than 0x"+Z6A.toString(16)+" bytes");let E=Buffer.concat(W,F);return $6A(this),E};QtQ.inherits(sF,LU.Inflate);function YtQ(A,Q){if(typeof Q==="string")Q=Buffer.from(Q);if(!(Q instanceof Buffer))throw TypeError("Not a string or buffer");let B=A._finishFlushFlag;if(B==null)B=LU.Z_FINISH;return A._processChunk(Q,B)}function U6A(A,Q){return YtQ(new sF(Q),A)}E6A.exports=OH=U6A;OH.Inflate=sF;OH.createInflate=BtQ;OH.inflateSync=U6A});var zx=R((i7Y,I6A)=>{var V6A=I6A.exports=function(A){this._buffer=A,this._reads=[]};V6A.prototype.read=function(A,Q){this._reads.push({length:Math.abs(A),allowLess:A<0,func:Q})};V6A.prototype.process=function(){while(this._reads.length>0&&this._buffer.length){let A=this._reads[0];if(this._buffer.length&&(this._buffer.length>=A.length||A.allowLess)){this._reads.shift();let Q=this._buffer;this._buffer=Q.slice(A.length),A.func.call(this,Q.slice(0,A.length))}else break}if(this._reads.length>0)throw Error("There are some read requests waitng on finished stream");if(this._buffer.length>0)throw Error("unrecognised content at end of stream")}});var H6A=R((XtQ)=>{var JtQ=zx(),CtQ=Kx();XtQ.process=function(A,Q){let B=[],Y=new JtQ(A);return new CtQ(Q,{read:Y.read.bind(Y),write:function(C){B.push(C)},complete:function(){}}).start(),Y.process(),Buffer.concat(B)}});var q6A=R((s7Y,L6A)=>{var D6A=!0,N6A=u("zlib"),WtQ=K6A();if(!N6A.deflateSync)D6A=!1;var FtQ=zx(),ZtQ=H6A(),$tQ=Dx(),UtQ=Nx(),EtQ=Lx();L6A.exports=function(A,Q){if(!D6A)throw Error("To use the sync capability of this library in old node versions, please pin pngjs to v2.3.0");let B;function Y(z){B=z}let J;function C(z){J=z}function X(z){J.transColor=z}function G(z){J.palette=z}function W(){J.alpha=!0}let F;function Z(z){F=z}let U=[];function $(z){U.push(z)}let E=new FtQ(A);if(new $tQ(Q,{read:E.read.bind(E),error:Y,metadata:C,gamma:Z,palette:G,transColor:X,inflateData:$,simpleTransparency:W}).start(),E.process(),B)throw B;let I=Buffer.concat(U);U.length=0;let V;if(J.interlace)V=N6A.inflateSync(I);else{let M=((J.width*J.bpp*J.depth+7>>3)+1)*J.height;V=WtQ(I,{chunkSize:M,maxLength:M})}if(I=null,!V||!V.length)throw Error("bad png - invalid inflate data response");let H=ZtQ.process(V,J);I=null;let D=UtQ.dataToBitMap(H,J);H=null;let L=EtQ(D,J,Q.skipRescale);return J.data=L,J.gamma=F||0,J}});var w6A=R((r7Y,R6A)=>{var M6A=!0,z6A=u("zlib");if(!z6A.deflateSync)M6A=!1;var KtQ=NU(),VtQ=Mx();R6A.exports=function(A,Q){if(!M6A)throw Error("To use the sync capability of this library in old node versions, please pin pngjs to v2.3.0");let Y=new VtQ(Q||{}),J=[];if(J.push(Buffer.from(KtQ.PNG_SIGNATURE)),J.push(Y.packIHDR(A.width,A.height)),A.gamma)J.push(Y.packGAMA(A.gamma));let C=Y.filterData(A.data,A.width,A.height),X=z6A.deflateSync(C,Y.getDeflateOptions());if(C=null,!X||!X.length)throw Error("bad png - invalid compressed data response");return J.push(Y.packIDAT(X)),J.push(Y.packIEND()),Buffer.concat(J)}});var j6A=R((DtQ)=>{var ItQ=q6A(),HtQ=w6A();DtQ.read=function(A,Q){return ItQ(A,Q||{})};DtQ.write=function(A,Q){return HtQ(A,Q)}});var P6A=R((wtQ)=>{var qtQ=u("util"),O6A=u("stream"),MtQ=tXA(),ztQ=W6A(),RtQ=j6A(),Y9=wtQ.PNG=function(A){if(O6A.call(this),A=A||{},this.width=A.width|0,this.height=A.height|0,this.data=this.width>0&&this.height>0?Buffer.alloc(4*this.width*this.height):null,A.fill&&this.data)this.data.fill(0);this.gamma=0,this.readable=this.writable=!0,this._parser=new MtQ(A),this._parser.on("error",this.emit.bind(this,"error")),this._parser.on("close",this._handleClose.bind(this)),this._parser.on("metadata",this._metadata.bind(this)),this._parser.on("gamma",this._gamma.bind(this)),this._parser.on("parsed",function(Q){this.data=Q,this.emit("parsed",Q)}.bind(this)),this._packer=new ztQ(A),this._packer.on("data",this.emit.bind(this,"data")),this._packer.on("end",this.emit.bind(this,"end")),this._parser.on("close",this._handleClose.bind(this)),this._packer.on("error",this.emit.bind(this,"error"))};qtQ.inherits(Y9,O6A);Y9.sync=RtQ;Y9.prototype.pack=function(){if(!this.data||!this.data.length)return this.emit("error","No data provided"),this;return process.nextTick(function(){this._packer.pack(this.data,this.width,this.height,this.gamma)}.bind(this)),this};Y9.prototype.parse=function(A,Q){if(Q){let B,Y;B=function(J){this.removeListener("error",Y),this.data=J,Q(null,this)}.bind(this),Y=function(J){this.removeListener("parsed",B),Q(J,null)}.bind(this),this.once("parsed",B),this.once("error",Y)}return this.end(A),this};Y9.prototype.write=function(A){return this._parser.write(A),!0};Y9.prototype.end=function(A){this._parser.end(A)};Y9.prototype._metadata=function(A){this.width=A.width,this.height=A.height,this.emit("metadata",A)};Y9.prototype._gamma=function(A){this.gamma=A};Y9.prototype._handleClose=function(){if(!this._parser.writable&&!this._packer.readable)this.emit("close")};Y9.bitblt=function(A,Q,B,Y,J,C,X,G){if(B|=0,Y|=0,J|=0,C|=0,X|=0,G|=0,B>A.width||Y>A.height||B+J>A.width||Y+C>A.height)throw Error("bitblt reading outside image");if(X>Q.width||G>Q.height||X+J>Q.width||G+C>Q.height)throw Error("bitblt writing outside image");for(let W=0;W{var TtQ=typeof Uint8Array<"u"&&typeof Uint16Array<"u"&&typeof Int32Array<"u";function StQ(A,Q){return Object.prototype.hasOwnProperty.call(A,Q)}Rx.assign=function(A){var Q=Array.prototype.slice.call(arguments,1);while(Q.length){var B=Q.shift();if(!B)continue;if(typeof B!=="object")throw TypeError(B+"must be non-object");for(var Y in B)if(StQ(B,Y))A[Y]=B[Y]}return A};Rx.shrinkBuf=function(A,Q){if(A.length===Q)return A;if(A.subarray)return A.subarray(0,Q);return A.length=Q,A};var ktQ={arraySet:function(A,Q,B,Y,J){if(Q.subarray&&A.subarray){A.set(Q.subarray(B,B+Y),J);return}for(var C=0;C{var ytQ=S6(),gtQ=4,S6A=0,k6A=1,htQ=2;function MU(A){var Q=A.length;while(--Q>=0)A[Q]=0}var xtQ=0,x6A=1,ftQ=2,btQ=3,mtQ=258,_x=29,yH=256,SH=yH+1+_x,qU=30,vx=19,f6A=2*SH+1,rF=15,jx=16,utQ=7,yx=256,b6A=16,m6A=17,u6A=18,Sx=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],UR=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],dtQ=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],d6A=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],ctQ=512,k6=Array((SH+2)*2);MU(k6);var TH=Array(qU*2);MU(TH);var kH=Array(ctQ);MU(kH);var _H=Array(mtQ-btQ+1);MU(_H);var gx=Array(_x);MU(gx);var ER=Array(qU);MU(ER);function Ox(A,Q,B,Y,J){this.static_tree=A,this.extra_bits=Q,this.extra_base=B,this.elems=Y,this.max_length=J,this.has_stree=A&&A.length}var c6A,l6A,p6A;function Px(A,Q){this.dyn_tree=A,this.max_code=0,this.stat_desc=Q}function i6A(A){return A<256?kH[A]:kH[256+(A>>>7)]}function vH(A,Q){A.pending_buf[A.pending++]=Q&255,A.pending_buf[A.pending++]=Q>>>8&255}function y9(A,Q,B){if(A.bi_valid>jx-B)A.bi_buf|=Q<>jx-A.bi_valid,A.bi_valid+=B-jx;else A.bi_buf|=Q<>>=1,B<<=1;while(--Q>0);return B>>>1}function ltQ(A){if(A.bi_valid===16)vH(A,A.bi_buf),A.bi_buf=0,A.bi_valid=0;else if(A.bi_valid>=8)A.pending_buf[A.pending++]=A.bi_buf&255,A.bi_buf>>=8,A.bi_valid-=8}function ptQ(A,Q){var{dyn_tree:B,max_code:Y}=Q,J=Q.stat_desc.static_tree,C=Q.stat_desc.has_stree,X=Q.stat_desc.extra_bits,G=Q.stat_desc.extra_base,W=Q.stat_desc.max_length,F,Z,U,$,E,K,I=0;for($=0;$<=rF;$++)A.bl_count[$]=0;B[A.heap[A.heap_max]*2+1]=0;for(F=A.heap_max+1;FW)$=W,I++;if(B[Z*2+1]=$,Z>Y)continue;if(A.bl_count[$]++,E=0,Z>=G)E=X[Z-G];if(K=B[Z*2],A.opt_len+=K*($+E),C)A.static_len+=K*(J[Z*2+1]+E)}if(I===0)return;do{$=W-1;while(A.bl_count[$]===0)$--;A.bl_count[$]--,A.bl_count[$+1]+=2,A.bl_count[W]--,I-=2}while(I>0);for($=W;$!==0;$--){Z=A.bl_count[$];while(Z!==0){if(U=A.heap[--F],U>Y)continue;if(B[U*2+1]!==$)A.opt_len+=($-B[U*2+1])*B[U*2],B[U*2+1]=$;Z--}}}function s6A(A,Q,B){var Y=Array(rF+1),J=0,C,X;for(C=1;C<=rF;C++)Y[C]=J=J+B[C-1]<<1;for(X=0;X<=Q;X++){var G=A[X*2+1];if(G===0)continue;A[X*2]=n6A(Y[G]++,G)}}function itQ(){var A,Q,B,Y,J,C=Array(rF+1);B=0;for(Y=0;Y<_x-1;Y++){gx[Y]=B;for(A=0;A<1<>=7;for(;Y8)vH(A,A.bi_buf);else if(A.bi_valid>0)A.pending_buf[A.pending++]=A.bi_buf;A.bi_buf=0,A.bi_valid=0}function ntQ(A,Q,B,Y){if(a6A(A),Y)vH(A,B),vH(A,~B);ytQ.arraySet(A.pending_buf,A.window,Q,B,A.pending),A.pending+=B}function _6A(A,Q,B,Y){var J=Q*2,C=B*2;return A[J]>1;X>=1;X--)Tx(A,B,X);F=C;do X=A.heap[1],A.heap[1]=A.heap[A.heap_len--],Tx(A,B,1),G=A.heap[1],A.heap[--A.heap_max]=X,A.heap[--A.heap_max]=G,B[F*2]=B[X*2]+B[G*2],A.depth[F]=(A.depth[X]>=A.depth[G]?A.depth[X]:A.depth[G])+1,B[X*2+1]=B[G*2+1]=F,A.heap[1]=F++,Tx(A,B,1);while(A.heap_len>=2);A.heap[--A.heap_max]=A.heap[1],ptQ(A,Q),s6A(B,W,A.bl_count)}function y6A(A,Q,B){var Y,J=-1,C,X=Q[1],G=0,W=7,F=4;if(X===0)W=138,F=3;Q[(B+1)*2+1]=65535;for(Y=0;Y<=B;Y++){if(C=X,X=Q[(Y+1)*2+1],++G=3;Q--)if(A.bl_tree[d6A[Q]*2+1]!==0)break;return A.opt_len+=3*(Q+1)+5+5+4,Q}function rtQ(A,Q,B,Y){var J;y9(A,Q-257,5),y9(A,B-1,5),y9(A,Y-4,4);for(J=0;J>>=1)if(Q&1&&A.dyn_ltree[B*2]!==0)return S6A;if(A.dyn_ltree[18]!==0||A.dyn_ltree[20]!==0||A.dyn_ltree[26]!==0)return k6A;for(B=32;B0){if(A.strm.data_type===htQ)A.strm.data_type=atQ(A);if(kx(A,A.l_desc),kx(A,A.d_desc),X=stQ(A),J=A.opt_len+3+7>>>3,C=A.static_len+3+7>>>3,C<=J)J=C}else J=C=B+5;if(B+4<=J&&Q!==-1)o6A(A,Q,B,Y);else if(A.strategy===gtQ||C===J)y9(A,(x6A<<1)+(Y?1:0),3),v6A(A,k6,TH);else y9(A,(ftQ<<1)+(Y?1:0),3),rtQ(A,A.l_desc.max_code+1,A.d_desc.max_code+1,X+1),v6A(A,A.dyn_ltree,A.dyn_dtree);if(r6A(A),Y)a6A(A)}function AeQ(A,Q,B){if(A.pending_buf[A.d_buf+A.last_lit*2]=Q>>>8&255,A.pending_buf[A.d_buf+A.last_lit*2+1]=Q&255,A.pending_buf[A.l_buf+A.last_lit]=B&255,A.last_lit++,Q===0)A.dyn_ltree[B*2]++;else A.matches++,Q--,A.dyn_ltree[(_H[B]+yH+1)*2]++,A.dyn_dtree[i6A(Q)*2]++;return A.last_lit===A.lit_bufsize-1}QeQ._tr_init=otQ;QeQ._tr_stored_block=o6A;QeQ._tr_flush_block=etQ;QeQ._tr_tally=AeQ;QeQ._tr_align=ttQ});var hx=R((CWY,e6A)=>{function GeQ(A,Q,B,Y){var J=A&65535|0,C=A>>>16&65535|0,X=0;while(B!==0){X=B>2000?2000:B,B-=X;do J=J+Q[Y++]|0,C=C+J|0;while(--X);J%=65521,C%=65521}return J|C<<16|0}e6A.exports=GeQ});var xx=R((XWY,AGA)=>{function WeQ(){var A,Q=[];for(var B=0;B<256;B++){A=B;for(var Y=0;Y<8;Y++)A=A&1?3988292384^A>>>1:A>>>1;Q[B]=A}return Q}var FeQ=WeQ();function ZeQ(A,Q,B,Y){var J=FeQ,C=Y+B;A^=-1;for(var X=Y;X>>8^J[(A^Q[X])&255];return A^-1}AGA.exports=ZeQ});var KR=R((GWY,QGA)=>{QGA.exports={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}});var ZGA=R((ceQ)=>{var J9=S6(),N5=t6A(),CGA=hx(),N7=xx(),$eQ=KR(),eF=0,UeQ=1,EeQ=3,R7=4,BGA=5,p1=0,YGA=1,L5=-2,KeQ=-3,fx=-5,VeQ=-1,IeQ=1,VR=2,HeQ=3,DeQ=4,NeQ=0,LeQ=2,NR=8,qeQ=9,MeQ=15,zeQ=8,ReQ=29,weQ=256,mx=weQ+1+ReQ,jeQ=30,OeQ=19,PeQ=2*mx+1,TeQ=15,IB=3,M7=258,vC=M7+IB+1,SeQ=32,LR=42,ux=69,IR=73,HR=91,DR=103,aF=113,hH=666,vY=1,xH=2,oF=3,wU=4,keQ=3;function z7(A,Q){return A.msg=$eQ[Q],Q}function JGA(A){return(A<<1)-(A>4?9:0)}function q7(A){var Q=A.length;while(--Q>=0)A[Q]=0}function L7(A){var Q=A.state,B=Q.pending;if(B>A.avail_out)B=A.avail_out;if(B===0)return;if(J9.arraySet(A.output,Q.pending_buf,Q.pending_out,B,A.next_out),A.next_out+=B,Q.pending_out+=B,A.total_out+=B,A.avail_out-=B,Q.pending-=B,Q.pending===0)Q.pending_out=0}function GJ(A,Q){N5._tr_flush_block(A,A.block_start>=0?A.block_start:-1,A.strstart-A.block_start,Q),A.block_start=A.strstart,L7(A.strm)}function TB(A,Q){A.pending_buf[A.pending++]=Q}function gH(A,Q){A.pending_buf[A.pending++]=Q>>>8&255,A.pending_buf[A.pending++]=Q&255}function _eQ(A,Q,B,Y){var J=A.avail_in;if(J>Y)J=Y;if(J===0)return 0;if(A.avail_in-=J,J9.arraySet(Q,A.input,A.next_in,J,B),A.state.wrap===1)A.adler=CGA(A.adler,Q,J,B);else if(A.state.wrap===2)A.adler=N7(A.adler,Q,J,B);return A.next_in+=J,A.total_in+=J,J}function XGA(A,Q){var{max_chain_length:B,strstart:Y}=A,J,C,X=A.prev_length,G=A.nice_match,W=A.strstart>A.w_size-vC?A.strstart-(A.w_size-vC):0,F=A.window,Z=A.w_mask,U=A.prev,$=A.strstart+M7,E=F[Y+X-1],K=F[Y+X];if(A.prev_length>=A.good_match)B>>=2;if(G>A.lookahead)G=A.lookahead;do{if(J=Q,F[J+X]!==K||F[J+X-1]!==E||F[J]!==F[Y]||F[++J]!==F[Y+1])continue;Y+=2,J++;do;while(F[++Y]===F[++J]&&F[++Y]===F[++J]&&F[++Y]===F[++J]&&F[++Y]===F[++J]&&F[++Y]===F[++J]&&F[++Y]===F[++J]&&F[++Y]===F[++J]&&F[++Y]===F[++J]&&Y<$);if(C=M7-($-Y),Y=$-M7,C>X){if(A.match_start=Q,X=C,C>=G)break;E=F[Y+X-1],K=F[Y+X]}}while((Q=U[Q&Z])>W&&--B!==0);if(X<=A.lookahead)return X;return A.lookahead}function tF(A){var Q=A.w_size,B,Y,J,C,X;do{if(C=A.window_size-A.lookahead-A.strstart,A.strstart>=Q+(Q-vC)){J9.arraySet(A.window,A.window,Q,Q,0),A.match_start-=Q,A.strstart-=Q,A.block_start-=Q,Y=A.hash_size,B=Y;do J=A.head[--B],A.head[B]=J>=Q?J-Q:0;while(--Y);Y=Q,B=Y;do J=A.prev[--B],A.prev[B]=J>=Q?J-Q:0;while(--Y);C+=Q}if(A.strm.avail_in===0)break;if(Y=_eQ(A.strm,A.window,A.strstart+A.lookahead,C),A.lookahead+=Y,A.lookahead+A.insert>=IB){X=A.strstart-A.insert,A.ins_h=A.window[X],A.ins_h=(A.ins_h<A.pending_buf_size-5)B=A.pending_buf_size-5;for(;;){if(A.lookahead<=1){if(tF(A),A.lookahead===0&&Q===eF)return vY;if(A.lookahead===0)break}A.strstart+=A.lookahead,A.lookahead=0;var Y=A.block_start+B;if(A.strstart===0||A.strstart>=Y){if(A.lookahead=A.strstart-Y,A.strstart=Y,GJ(A,!1),A.strm.avail_out===0)return vY}if(A.strstart-A.block_start>=A.w_size-vC){if(GJ(A,!1),A.strm.avail_out===0)return vY}}if(A.insert=0,Q===R7){if(GJ(A,!0),A.strm.avail_out===0)return oF;return wU}if(A.strstart>A.block_start){if(GJ(A,!1),A.strm.avail_out===0)return vY}return vY}function bx(A,Q){var B,Y;for(;;){if(A.lookahead=IB)A.ins_h=(A.ins_h<=IB)if(Y=N5._tr_tally(A,A.strstart-A.match_start,A.match_length-IB),A.lookahead-=A.match_length,A.match_length<=A.max_lazy_match&&A.lookahead>=IB){A.match_length--;do A.strstart++,A.ins_h=(A.ins_h<=IB)A.ins_h=(A.ins_h<4096))A.match_length=IB-1}if(A.prev_length>=IB&&A.match_length<=A.prev_length){J=A.strstart+A.lookahead-IB,Y=N5._tr_tally(A,A.strstart-1-A.prev_match,A.prev_length-IB),A.lookahead-=A.prev_length-1,A.prev_length-=2;do if(++A.strstart<=J)A.ins_h=(A.ins_h<=IB&&A.strstart>0){if(J=A.strstart-1,Y=X[J],Y===X[++J]&&Y===X[++J]&&Y===X[++J]){C=A.strstart+M7;do;while(Y===X[++J]&&Y===X[++J]&&Y===X[++J]&&Y===X[++J]&&Y===X[++J]&&Y===X[++J]&&Y===X[++J]&&Y===X[++J]&&JA.lookahead)A.match_length=A.lookahead}}if(A.match_length>=IB)B=N5._tr_tally(A,1,A.match_length-IB),A.lookahead-=A.match_length,A.strstart+=A.match_length,A.match_length=0;else B=N5._tr_tally(A,0,A.window[A.strstart]),A.lookahead--,A.strstart++;if(B){if(GJ(A,!1),A.strm.avail_out===0)return vY}}if(A.insert=0,Q===R7){if(GJ(A,!0),A.strm.avail_out===0)return oF;return wU}if(A.last_lit){if(GJ(A,!1),A.strm.avail_out===0)return vY}return xH}function geQ(A,Q){var B;for(;;){if(A.lookahead===0){if(tF(A),A.lookahead===0){if(Q===eF)return vY;break}}if(A.match_length=0,B=N5._tr_tally(A,0,A.window[A.strstart]),A.lookahead--,A.strstart++,B){if(GJ(A,!1),A.strm.avail_out===0)return vY}}if(A.insert=0,Q===R7){if(GJ(A,!0),A.strm.avail_out===0)return oF;return wU}if(A.last_lit){if(GJ(A,!1),A.strm.avail_out===0)return vY}return xH}function l1(A,Q,B,Y,J){this.good_length=A,this.max_lazy=Q,this.nice_length=B,this.max_chain=Y,this.func=J}var RU;RU=[new l1(0,0,0,0,veQ),new l1(4,4,8,4,bx),new l1(4,5,16,8,bx),new l1(4,6,32,32,bx),new l1(4,4,16,16,zU),new l1(8,16,32,32,zU),new l1(8,16,128,128,zU),new l1(8,32,128,256,zU),new l1(32,128,258,1024,zU),new l1(32,258,258,4096,zU)];function heQ(A){A.window_size=2*A.w_size,q7(A.head),A.max_lazy_match=RU[A.level].max_lazy,A.good_match=RU[A.level].good_length,A.nice_match=RU[A.level].nice_length,A.max_chain_length=RU[A.level].max_chain,A.strstart=0,A.block_start=0,A.lookahead=0,A.insert=0,A.match_length=A.prev_length=IB-1,A.match_available=0,A.ins_h=0}function xeQ(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=NR,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new J9.Buf16(PeQ*2),this.dyn_dtree=new J9.Buf16((2*jeQ+1)*2),this.bl_tree=new J9.Buf16((2*OeQ+1)*2),q7(this.dyn_ltree),q7(this.dyn_dtree),q7(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new J9.Buf16(TeQ+1),this.heap=new J9.Buf16(2*mx+1),q7(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new J9.Buf16(2*mx+1),q7(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function GGA(A){var Q;if(!A||!A.state)return z7(A,L5);if(A.total_in=A.total_out=0,A.data_type=LeQ,Q=A.state,Q.pending=0,Q.pending_out=0,Q.wrap<0)Q.wrap=-Q.wrap;return Q.status=Q.wrap?LR:aF,A.adler=Q.wrap===2?0:1,Q.last_flush=eF,N5._tr_init(Q),p1}function WGA(A){var Q=GGA(A);if(Q===p1)heQ(A.state);return Q}function feQ(A,Q){if(!A||!A.state)return L5;if(A.state.wrap!==2)return L5;return A.state.gzhead=Q,p1}function FGA(A,Q,B,Y,J,C){if(!A)return L5;var X=1;if(Q===VeQ)Q=6;if(Y<0)X=0,Y=-Y;else if(Y>15)X=2,Y-=16;if(J<1||J>qeQ||B!==NR||Y<8||Y>15||Q<0||Q>9||C<0||C>DeQ)return z7(A,L5);if(Y===8)Y=9;var G=new xeQ;return A.state=G,G.strm=A,G.wrap=X,G.gzhead=null,G.w_bits=Y,G.w_size=1<BGA||Q<0)return A?z7(A,L5):L5;if(Y=A.state,!A.output||!A.input&&A.avail_in!==0||Y.status===hH&&Q!==R7)return z7(A,A.avail_out===0?fx:L5);if(Y.strm=A,B=Y.last_flush,Y.last_flush=Q,Y.status===LR)if(Y.wrap===2)if(A.adler=0,TB(Y,31),TB(Y,139),TB(Y,8),!Y.gzhead)TB(Y,0),TB(Y,0),TB(Y,0),TB(Y,0),TB(Y,0),TB(Y,Y.level===9?2:Y.strategy>=VR||Y.level<2?4:0),TB(Y,keQ),Y.status=aF;else{if(TB(Y,(Y.gzhead.text?1:0)+(Y.gzhead.hcrc?2:0)+(!Y.gzhead.extra?0:4)+(!Y.gzhead.name?0:8)+(!Y.gzhead.comment?0:16)),TB(Y,Y.gzhead.time&255),TB(Y,Y.gzhead.time>>8&255),TB(Y,Y.gzhead.time>>16&255),TB(Y,Y.gzhead.time>>24&255),TB(Y,Y.level===9?2:Y.strategy>=VR||Y.level<2?4:0),TB(Y,Y.gzhead.os&255),Y.gzhead.extra&&Y.gzhead.extra.length)TB(Y,Y.gzhead.extra.length&255),TB(Y,Y.gzhead.extra.length>>8&255);if(Y.gzhead.hcrc)A.adler=N7(A.adler,Y.pending_buf,Y.pending,0);Y.gzindex=0,Y.status=ux}else{var X=NR+(Y.w_bits-8<<4)<<8,G=-1;if(Y.strategy>=VR||Y.level<2)G=0;else if(Y.level<6)G=1;else if(Y.level===6)G=2;else G=3;if(X|=G<<6,Y.strstart!==0)X|=SeQ;if(X+=31-X%31,Y.status=aF,gH(Y,X),Y.strstart!==0)gH(Y,A.adler>>>16),gH(Y,A.adler&65535);A.adler=1}if(Y.status===ux)if(Y.gzhead.extra){J=Y.pending;while(Y.gzindex<(Y.gzhead.extra.length&65535)){if(Y.pending===Y.pending_buf_size){if(Y.gzhead.hcrc&&Y.pending>J)A.adler=N7(A.adler,Y.pending_buf,Y.pending-J,J);if(L7(A),J=Y.pending,Y.pending===Y.pending_buf_size)break}TB(Y,Y.gzhead.extra[Y.gzindex]&255),Y.gzindex++}if(Y.gzhead.hcrc&&Y.pending>J)A.adler=N7(A.adler,Y.pending_buf,Y.pending-J,J);if(Y.gzindex===Y.gzhead.extra.length)Y.gzindex=0,Y.status=IR}else Y.status=IR;if(Y.status===IR)if(Y.gzhead.name){J=Y.pending;do{if(Y.pending===Y.pending_buf_size){if(Y.gzhead.hcrc&&Y.pending>J)A.adler=N7(A.adler,Y.pending_buf,Y.pending-J,J);if(L7(A),J=Y.pending,Y.pending===Y.pending_buf_size){C=1;break}}if(Y.gzindexJ)A.adler=N7(A.adler,Y.pending_buf,Y.pending-J,J);if(C===0)Y.gzindex=0,Y.status=HR}else Y.status=HR;if(Y.status===HR)if(Y.gzhead.comment){J=Y.pending;do{if(Y.pending===Y.pending_buf_size){if(Y.gzhead.hcrc&&Y.pending>J)A.adler=N7(A.adler,Y.pending_buf,Y.pending-J,J);if(L7(A),J=Y.pending,Y.pending===Y.pending_buf_size){C=1;break}}if(Y.gzindexJ)A.adler=N7(A.adler,Y.pending_buf,Y.pending-J,J);if(C===0)Y.status=DR}else Y.status=DR;if(Y.status===DR)if(Y.gzhead.hcrc){if(Y.pending+2>Y.pending_buf_size)L7(A);if(Y.pending+2<=Y.pending_buf_size)TB(Y,A.adler&255),TB(Y,A.adler>>8&255),A.adler=0,Y.status=aF}else Y.status=aF;if(Y.pending!==0){if(L7(A),A.avail_out===0)return Y.last_flush=-1,p1}else if(A.avail_in===0&&JGA(Q)<=JGA(B)&&Q!==R7)return z7(A,fx);if(Y.status===hH&&A.avail_in!==0)return z7(A,fx);if(A.avail_in!==0||Y.lookahead!==0||Q!==eF&&Y.status!==hH){var W=Y.strategy===VR?geQ(Y,Q):Y.strategy===HeQ?yeQ(Y,Q):RU[Y.level].func(Y,Q);if(W===oF||W===wU)Y.status=hH;if(W===vY||W===oF){if(A.avail_out===0)Y.last_flush=-1;return p1}if(W===xH){if(Q===UeQ)N5._tr_align(Y);else if(Q!==BGA){if(N5._tr_stored_block(Y,0,0,!1),Q===EeQ){if(q7(Y.head),Y.lookahead===0)Y.strstart=0,Y.block_start=0,Y.insert=0}}if(L7(A),A.avail_out===0)return Y.last_flush=-1,p1}}if(Q!==R7)return p1;if(Y.wrap<=0)return YGA;if(Y.wrap===2)TB(Y,A.adler&255),TB(Y,A.adler>>8&255),TB(Y,A.adler>>16&255),TB(Y,A.adler>>24&255),TB(Y,A.total_in&255),TB(Y,A.total_in>>8&255),TB(Y,A.total_in>>16&255),TB(Y,A.total_in>>24&255);else gH(Y,A.adler>>>16),gH(Y,A.adler&65535);if(L7(A),Y.wrap>0)Y.wrap=-Y.wrap;return Y.pending!==0?p1:YGA}function ueQ(A){var Q;if(!A||!A.state)return L5;if(Q=A.state.status,Q!==LR&&Q!==ux&&Q!==IR&&Q!==HR&&Q!==DR&&Q!==aF&&Q!==hH)return z7(A,L5);return A.state=null,Q===aF?z7(A,KeQ):p1}function deQ(A,Q){var B=Q.length,Y,J,C,X,G,W,F,Z;if(!A||!A.state)return L5;if(Y=A.state,X=Y.wrap,X===2||X===1&&Y.status!==LR||Y.lookahead)return L5;if(X===1)A.adler=CGA(A.adler,Q,B,0);if(Y.wrap=0,B>=Y.w_size){if(X===0)q7(Y.head),Y.strstart=0,Y.block_start=0,Y.insert=0;Z=new J9.Buf8(Y.w_size),J9.arraySet(Z,Q,B-Y.w_size,Y.w_size,0),Q=Z,B=Y.w_size}G=A.avail_in,W=A.next_in,F=A.input,A.avail_in=B,A.next_in=0,A.input=Q,tF(Y);while(Y.lookahead>=IB){J=Y.strstart,C=Y.lookahead-(IB-1);do Y.ins_h=(Y.ins_h<{var qR=S6(),$GA=!0,UGA=!0;try{String.fromCharCode.apply(null,[0])}catch(A){$GA=!1}try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(A){UGA=!1}var fH=new qR.Buf8(256);for(i1=0;i1<256;i1++)fH[i1]=i1>=252?6:i1>=248?5:i1>=240?4:i1>=224?3:i1>=192?2:1;var i1;fH[254]=fH[254]=1;eeQ.string2buf=function(A){var Q,B,Y,J,C,X=A.length,G=0;for(J=0;J>>6,Q[C++]=128|B&63;else if(B<65536)Q[C++]=224|B>>>12,Q[C++]=128|B>>>6&63,Q[C++]=128|B&63;else Q[C++]=240|B>>>18,Q[C++]=128|B>>>12&63,Q[C++]=128|B>>>6&63,Q[C++]=128|B&63}return Q};function EGA(A,Q){if(Q<65534){if(A.subarray&&UGA||!A.subarray&&$GA)return String.fromCharCode.apply(null,qR.shrinkBuf(A,Q))}var B="";for(var Y=0;Y4){G[Y++]=65533,B+=C-1;continue}J&=C===2?31:C===3?15:7;while(C>1&&B1){G[Y++]=65533;continue}if(J<65536)G[Y++]=J;else J-=65536,G[Y++]=55296|J>>10&1023,G[Y++]=56320|J&1023}return EGA(G,Y)};eeQ.utf8border=function(A,Q){var B;if(Q=Q||A.length,Q>A.length)Q=A.length;B=Q-1;while(B>=0&&(A[B]&192)===128)B--;if(B<0)return Q;if(B===0)return Q;return B+fH[A[B]]>Q?B:Q}});var cx=R((ZWY,KGA)=>{function CAB(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}KGA.exports=CAB});var DGA=R((EAB)=>{var bH=ZGA(),mH=S6(),px=dx(),ix=KR(),XAB=cx(),HGA=Object.prototype.toString,GAB=0,lx=4,jU=0,VGA=1,IGA=2,WAB=-1,FAB=0,ZAB=8;function AZ(A){if(!(this instanceof AZ))return new AZ(A);this.options=mH.assign({level:WAB,method:ZAB,chunkSize:16384,windowBits:15,memLevel:8,strategy:FAB,to:""},A||{});var Q=this.options;if(Q.raw&&Q.windowBits>0)Q.windowBits=-Q.windowBits;else if(Q.gzip&&Q.windowBits>0&&Q.windowBits<16)Q.windowBits+=16;this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new XAB,this.strm.avail_out=0;var B=bH.deflateInit2(this.strm,Q.level,Q.method,Q.windowBits,Q.memLevel,Q.strategy);if(B!==jU)throw Error(ix[B]);if(Q.header)bH.deflateSetHeader(this.strm,Q.header);if(Q.dictionary){var Y;if(typeof Q.dictionary==="string")Y=px.string2buf(Q.dictionary);else if(HGA.call(Q.dictionary)==="[object ArrayBuffer]")Y=new Uint8Array(Q.dictionary);else Y=Q.dictionary;if(B=bH.deflateSetDictionary(this.strm,Y),B!==jU)throw Error(ix[B]);this._dict_set=!0}}AZ.prototype.push=function(A,Q){var B=this.strm,Y=this.options.chunkSize,J,C;if(this.ended)return!1;if(C=Q===~~Q?Q:Q===!0?lx:GAB,typeof A==="string")B.input=px.string2buf(A);else if(HGA.call(A)==="[object ArrayBuffer]")B.input=new Uint8Array(A);else B.input=A;B.next_in=0,B.avail_in=B.input.length;do{if(B.avail_out===0)B.output=new mH.Buf8(Y),B.next_out=0,B.avail_out=Y;if(J=bH.deflate(B,C),J!==VGA&&J!==jU)return this.onEnd(J),this.ended=!0,!1;if(B.avail_out===0||B.avail_in===0&&(C===lx||C===IGA))if(this.options.to==="string")this.onData(px.buf2binstring(mH.shrinkBuf(B.output,B.next_out)));else this.onData(mH.shrinkBuf(B.output,B.next_out))}while((B.avail_in>0||B.avail_out===0)&&J!==VGA);if(C===lx)return J=bH.deflateEnd(this.strm),this.onEnd(J),this.ended=!0,J===jU;if(C===IGA)return this.onEnd(jU),B.avail_out=0,!0;return!0};AZ.prototype.onData=function(A){this.chunks.push(A)};AZ.prototype.onEnd=function(A){if(A===jU)if(this.options.to==="string")this.result=this.chunks.join("");else this.result=mH.flattenChunks(this.chunks);this.chunks=[],this.err=A,this.msg=this.strm.msg};function nx(A,Q){var B=new AZ(Q);if(B.push(A,!0),B.err)throw B.msg||ix[B.err];return B.result}function $AB(A,Q){return Q=Q||{},Q.raw=!0,nx(A,Q)}function UAB(A,Q){return Q=Q||{},Q.gzip=!0,nx(A,Q)}EAB.Deflate=AZ;EAB.deflate=nx;EAB.deflateRaw=$AB;EAB.gzip=UAB});var LGA=R((UWY,NGA)=>{var MR=30,DAB=12;NGA.exports=function(Q,B){var Y,J,C,X,G,W,F,Z,U,$,E,K,I,V,H,D,L,z,M,N,q,w,P,_,j;Y=Q.state,J=Q.next_in,_=Q.input,C=J+(Q.avail_in-5),X=Q.next_out,j=Q.output,G=X-(B-Q.avail_out),W=X+(Q.avail_out-257),F=Y.dmax,Z=Y.wsize,U=Y.whave,$=Y.wnext,E=Y.window,K=Y.hold,I=Y.bits,V=Y.lencode,H=Y.distcode,D=(1<>>24,K>>>=M,I-=M,M=z>>>16&255,M===0)j[X++]=z&65535;else if(M&16){if(N=z&65535,M&=15,M){if(I>>=M,I-=M}if(I<15)K+=_[J++]<>>24,K>>>=M,I-=M,M=z>>>16&255,M&16){if(q=z&65535,M&=15,IF){Q.msg="invalid distance too far back",Y.mode=MR;break A}if(K>>>=M,I-=M,M=X-G,q>M){if(M=q-M,M>U){if(Y.sane){Q.msg="invalid distance too far back",Y.mode=MR;break A}}if(w=0,P=E,$===0){if(w+=Z-M,M2)j[X++]=P[w++],j[X++]=P[w++],j[X++]=P[w++],N-=3;if(N){if(j[X++]=P[w++],N>1)j[X++]=P[w++]}}else{w=X-q;do j[X++]=j[w++],j[X++]=j[w++],j[X++]=j[w++],N-=3;while(N>2);if(N){if(j[X++]=j[w++],N>1)j[X++]=j[w++]}}}else if((M&64)===0){z=H[(z&65535)+(K&(1<>3,J-=N,I-=N<<3,K&=(1<{var qGA=S6(),OU=15,MGA=852,zGA=592,RGA=0,sx=1,wGA=2,NAB=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],LAB=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78],qAB=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],MAB=[16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];jGA.exports=function(Q,B,Y,J,C,X,G,W){var F=W.bits,Z=0,U=0,$=0,E=0,K=0,I=0,V=0,H=0,D=0,L=0,z,M,N,q,w,P=null,_=0,j,k=new qGA.Buf16(OU+1),T=new qGA.Buf16(OU+1),S=null,v=0,y,h,g;for(Z=0;Z<=OU;Z++)k[Z]=0;for(U=0;U=1;E--)if(k[E]!==0)break;if(K>E)K=E;if(E===0)return C[X++]=20971520,C[X++]=20971520,W.bits=1,0;for($=1;$0&&(Q===RGA||E!==1))return-1;T[1]=0;for(Z=1;ZMGA||Q===wGA&&D>zGA)return 1;for(;;){if(y=Z-V,G[U]j)h=S[v+G[U]],g=P[_+G[U]];else h=96,g=0;z=1<>V)+M]=y<<24|h<<16|g|0;while(M!==0);z=1<>=1;if(z!==0)L&=z-1,L+=z;else L=0;if(U++,--k[Z]===0){if(Z===E)break;Z=B[Y+G[U]]}if(Z>K&&(L&q)!==N){if(V===0)V=K;w+=$,I=Z-V,H=1<MGA||Q===wGA&&D>zGA)return 1;N=L&q,C[N]=K<<24|I<<16|w-X|0}}if(L!==0)C[w+L]=Z-V<<24|4194304|0;return W.bits=K,0}});var W7A=R((uAB)=>{var D8=S6(),Af=hx(),n1=xx(),zAB=LGA(),uH=OGA(),RAB=0,eGA=1,A7A=2,PGA=4,wAB=5,zR=6,QZ=0,jAB=1,OAB=2,q5=-2,Q7A=-3,Qf=-4,PAB=-5,TGA=8,B7A=1,SGA=2,kGA=3,_GA=4,vGA=5,yGA=6,gGA=7,hGA=8,xGA=9,fGA=10,jR=11,_6=12,rx=13,bGA=14,ax=15,mGA=16,uGA=17,dGA=18,cGA=19,RR=20,wR=21,lGA=22,pGA=23,iGA=24,nGA=25,sGA=26,ox=27,rGA=28,aGA=29,w0=30,Bf=31,TAB=32,SAB=852,kAB=592,_AB=15,vAB=_AB;function oGA(A){return(A>>>24&255)+(A>>>8&65280)+((A&65280)<<8)+((A&255)<<24)}function yAB(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new D8.Buf16(320),this.work=new D8.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function Y7A(A){var Q;if(!A||!A.state)return q5;if(Q=A.state,A.total_in=A.total_out=Q.total=0,A.msg="",Q.wrap)A.adler=Q.wrap&1;return Q.mode=B7A,Q.last=0,Q.havedict=0,Q.dmax=32768,Q.head=null,Q.hold=0,Q.bits=0,Q.lencode=Q.lendyn=new D8.Buf32(SAB),Q.distcode=Q.distdyn=new D8.Buf32(kAB),Q.sane=1,Q.back=-1,QZ}function J7A(A){var Q;if(!A||!A.state)return q5;return Q=A.state,Q.wsize=0,Q.whave=0,Q.wnext=0,Y7A(A)}function C7A(A,Q){var B,Y;if(!A||!A.state)return q5;if(Y=A.state,Q<0)B=0,Q=-Q;else if(B=(Q>>4)+1,Q<48)Q&=15;if(Q&&(Q<8||Q>15))return q5;if(Y.window!==null&&Y.wbits!==Q)Y.window=null;return Y.wrap=B,Y.wbits=Q,J7A(A)}function X7A(A,Q){var B,Y;if(!A)return q5;if(Y=new yAB,A.state=Y,Y.window=null,B=C7A(A,Q),B!==QZ)A.state=null;return B}function gAB(A){return X7A(A,vAB)}var tGA=!0,tx,ex;function hAB(A){if(tGA){var Q;tx=new D8.Buf32(512),ex=new D8.Buf32(32),Q=0;while(Q<144)A.lens[Q++]=8;while(Q<256)A.lens[Q++]=9;while(Q<280)A.lens[Q++]=7;while(Q<288)A.lens[Q++]=8;uH(eGA,A.lens,0,288,tx,0,A.work,{bits:9}),Q=0;while(Q<32)A.lens[Q++]=5;uH(A7A,A.lens,0,32,ex,0,A.work,{bits:5}),tGA=!1}A.lencode=tx,A.lenbits=9,A.distcode=ex,A.distbits=5}function G7A(A,Q,B,Y){var J,C=A.state;if(C.window===null)C.wsize=1<=C.wsize)D8.arraySet(C.window,Q,B-C.wsize,C.wsize,0),C.wnext=0,C.whave=C.wsize;else{if(J=C.wsize-C.wnext,J>Y)J=Y;if(D8.arraySet(C.window,Q,B-Y,J,C.wnext),Y-=J,Y)D8.arraySet(C.window,Q,B-Y,Y,0),C.wnext=Y,C.whave=C.wsize;else{if(C.wnext+=J,C.wnext===C.wsize)C.wnext=0;if(C.whave>>8&255,B.check=n1(B.check,P,2,0),F=0,Z=0,B.mode=SGA;break}if(B.flags=0,B.head)B.head.done=!1;if(!(B.wrap&1)||(((F&255)<<8)+(F>>8))%31){A.msg="incorrect header check",B.mode=w0;break}if((F&15)!==TGA){A.msg="unknown compression method",B.mode=w0;break}if(F>>>=4,Z-=4,q=(F&15)+8,B.wbits===0)B.wbits=q;else if(q>B.wbits){A.msg="invalid window size",B.mode=w0;break}B.dmax=1<>8&1;if(B.flags&512)P[0]=F&255,P[1]=F>>>8&255,B.check=n1(B.check,P,2,0);F=0,Z=0,B.mode=kGA;case kGA:while(Z<32){if(G===0)break A;G--,F+=Y[C++]<>>8&255,P[2]=F>>>16&255,P[3]=F>>>24&255,B.check=n1(B.check,P,4,0);F=0,Z=0,B.mode=_GA;case _GA:while(Z<16){if(G===0)break A;G--,F+=Y[C++]<>8;if(B.flags&512)P[0]=F&255,P[1]=F>>>8&255,B.check=n1(B.check,P,2,0);F=0,Z=0,B.mode=vGA;case vGA:if(B.flags&1024){while(Z<16){if(G===0)break A;G--,F+=Y[C++]<>>8&255,B.check=n1(B.check,P,2,0);F=0,Z=0}else if(B.head)B.head.extra=null;B.mode=yGA;case yGA:if(B.flags&1024){if(E=B.length,E>G)E=G;if(E){if(B.head){if(q=B.head.extra_len-B.length,!B.head.extra)B.head.extra=Array(B.head.extra_len);D8.arraySet(B.head.extra,Y,C,E,q)}if(B.flags&512)B.check=n1(B.check,Y,E,C);G-=E,C+=E,B.length-=E}if(B.length)break A}B.length=0,B.mode=gGA;case gGA:if(B.flags&2048){if(G===0)break A;E=0;do if(q=Y[C+E++],B.head&&q&&B.length<65536)B.head.name+=String.fromCharCode(q);while(q&&E>9&1,B.head.done=!0;A.adler=B.check=0,B.mode=_6;break;case fGA:while(Z<32){if(G===0)break A;G--,F+=Y[C++]<>>=Z&7,Z-=Z&7,B.mode=ox;break}while(Z<3){if(G===0)break A;G--,F+=Y[C++]<>>=1,Z-=1,F&3){case 0:B.mode=bGA;break;case 1:if(hAB(B),B.mode=RR,Q===zR){F>>>=2,Z-=2;break A}break;case 2:B.mode=uGA;break;case 3:A.msg="invalid block type",B.mode=w0}F>>>=2,Z-=2;break;case bGA:F>>>=Z&7,Z-=Z&7;while(Z<32){if(G===0)break A;G--,F+=Y[C++]<>>16^65535)){A.msg="invalid stored block lengths",B.mode=w0;break}if(B.length=F&65535,F=0,Z=0,B.mode=ax,Q===zR)break A;case ax:B.mode=mGA;case mGA:if(E=B.length,E){if(E>G)E=G;if(E>W)E=W;if(E===0)break A;D8.arraySet(J,Y,C,E,X),G-=E,C+=E,W-=E,X+=E,B.length-=E;break}B.mode=_6;break;case uGA:while(Z<14){if(G===0)break A;G--,F+=Y[C++]<>>=5,Z-=5,B.ndist=(F&31)+1,F>>>=5,Z-=5,B.ncode=(F&15)+4,F>>>=4,Z-=4,B.nlen>286||B.ndist>30){A.msg="too many length or distance symbols",B.mode=w0;break}B.have=0,B.mode=dGA;case dGA:while(B.have>>=3,Z-=3}while(B.have<19)B.lens[k[B.have++]]=0;if(B.lencode=B.lendyn,B.lenbits=7,_={bits:B.lenbits},w=uH(RAB,B.lens,0,19,B.lencode,0,B.work,_),B.lenbits=_.bits,w){A.msg="invalid code lengths set",B.mode=w0;break}B.have=0,B.mode=cGA;case cGA:while(B.have>>24,D=V>>>16&255,L=V&65535,H<=Z)break;if(G===0)break A;G--,F+=Y[C++]<>>=H,Z-=H,B.lens[B.have++]=L;else{if(L===16){j=H+2;while(Z>>=H,Z-=H,B.have===0){A.msg="invalid bit length repeat",B.mode=w0;break}q=B.lens[B.have-1],E=3+(F&3),F>>>=2,Z-=2}else if(L===17){j=H+3;while(Z>>=H,Z-=H,q=0,E=3+(F&7),F>>>=3,Z-=3}else{j=H+7;while(Z>>=H,Z-=H,q=0,E=11+(F&127),F>>>=7,Z-=7}if(B.have+E>B.nlen+B.ndist){A.msg="invalid bit length repeat",B.mode=w0;break}while(E--)B.lens[B.have++]=q}}if(B.mode===w0)break;if(B.lens[256]===0){A.msg="invalid code -- missing end-of-block",B.mode=w0;break}if(B.lenbits=9,_={bits:B.lenbits},w=uH(eGA,B.lens,0,B.nlen,B.lencode,0,B.work,_),B.lenbits=_.bits,w){A.msg="invalid literal/lengths set",B.mode=w0;break}if(B.distbits=6,B.distcode=B.distdyn,_={bits:B.distbits},w=uH(A7A,B.lens,B.nlen,B.ndist,B.distcode,0,B.work,_),B.distbits=_.bits,w){A.msg="invalid distances set",B.mode=w0;break}if(B.mode=RR,Q===zR)break A;case RR:B.mode=wR;case wR:if(G>=6&&W>=258){if(A.next_out=X,A.avail_out=W,A.next_in=C,A.avail_in=G,B.hold=F,B.bits=Z,zAB(A,$),X=A.next_out,J=A.output,W=A.avail_out,C=A.next_in,Y=A.input,G=A.avail_in,F=B.hold,Z=B.bits,B.mode===_6)B.back=-1;break}B.back=0;for(;;){if(V=B.lencode[F&(1<>>24,D=V>>>16&255,L=V&65535,H<=Z)break;if(G===0)break A;G--,F+=Y[C++]<>z)],H=V>>>24,D=V>>>16&255,L=V&65535,z+H<=Z)break;if(G===0)break A;G--,F+=Y[C++]<>>=z,Z-=z,B.back+=z}if(F>>>=H,Z-=H,B.back+=H,B.length=L,D===0){B.mode=sGA;break}if(D&32){B.back=-1,B.mode=_6;break}if(D&64){A.msg="invalid literal/length code",B.mode=w0;break}B.extra=D&15,B.mode=lGA;case lGA:if(B.extra){j=B.extra;while(Z>>=B.extra,Z-=B.extra,B.back+=B.extra}B.was=B.length,B.mode=pGA;case pGA:for(;;){if(V=B.distcode[F&(1<>>24,D=V>>>16&255,L=V&65535,H<=Z)break;if(G===0)break A;G--,F+=Y[C++]<>z)],H=V>>>24,D=V>>>16&255,L=V&65535,z+H<=Z)break;if(G===0)break A;G--,F+=Y[C++]<>>=z,Z-=z,B.back+=z}if(F>>>=H,Z-=H,B.back+=H,D&64){A.msg="invalid distance code",B.mode=w0;break}B.offset=L,B.extra=D&15,B.mode=iGA;case iGA:if(B.extra){j=B.extra;while(Z>>=B.extra,Z-=B.extra,B.back+=B.extra}if(B.offset>B.dmax){A.msg="invalid distance too far back",B.mode=w0;break}B.mode=nGA;case nGA:if(W===0)break A;if(E=$-W,B.offset>E){if(E=B.offset-E,E>B.whave){if(B.sane){A.msg="invalid distance too far back",B.mode=w0;break}}if(E>B.wnext)E-=B.wnext,K=B.wsize-E;else K=B.wnext-E;if(E>B.length)E=B.length;I=B.window}else I=J,K=X-B.offset,E=B.length;if(E>W)E=W;W-=E,B.length-=E;do J[X++]=I[K++];while(--E);if(B.length===0)B.mode=wR;break;case sGA:if(W===0)break A;J[X++]=B.length,W--,B.mode=wR;break;case ox:if(B.wrap){while(Z<32){if(G===0)break A;G--,F|=Y[C++]<{F7A.exports={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8}});var $7A=R((IWY,Z7A)=>{function tAB(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}Z7A.exports=tAB});var E7A=R((BQB)=>{var PU=W7A(),dH=S6(),OR=dx(),WY=Yf(),Jf=KR(),eAB=cx(),AQB=$7A(),U7A=Object.prototype.toString;function BZ(A){if(!(this instanceof BZ))return new BZ(A);this.options=dH.assign({chunkSize:16384,windowBits:0,to:""},A||{});var Q=this.options;if(Q.raw&&Q.windowBits>=0&&Q.windowBits<16){if(Q.windowBits=-Q.windowBits,Q.windowBits===0)Q.windowBits=-15}if(Q.windowBits>=0&&Q.windowBits<16&&!(A&&A.windowBits))Q.windowBits+=32;if(Q.windowBits>15&&Q.windowBits<48){if((Q.windowBits&15)===0)Q.windowBits|=15}this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new eAB,this.strm.avail_out=0;var B=PU.inflateInit2(this.strm,Q.windowBits);if(B!==WY.Z_OK)throw Error(Jf[B]);if(this.header=new AQB,PU.inflateGetHeader(this.strm,this.header),Q.dictionary){if(typeof Q.dictionary==="string")Q.dictionary=OR.string2buf(Q.dictionary);else if(U7A.call(Q.dictionary)==="[object ArrayBuffer]")Q.dictionary=new Uint8Array(Q.dictionary);if(Q.raw){if(B=PU.inflateSetDictionary(this.strm,Q.dictionary),B!==WY.Z_OK)throw Error(Jf[B])}}}BZ.prototype.push=function(A,Q){var B=this.strm,Y=this.options.chunkSize,J=this.options.dictionary,C,X,G,W,F,Z=!1;if(this.ended)return!1;if(X=Q===~~Q?Q:Q===!0?WY.Z_FINISH:WY.Z_NO_FLUSH,typeof A==="string")B.input=OR.binstring2buf(A);else if(U7A.call(A)==="[object ArrayBuffer]")B.input=new Uint8Array(A);else B.input=A;B.next_in=0,B.avail_in=B.input.length;do{if(B.avail_out===0)B.output=new dH.Buf8(Y),B.next_out=0,B.avail_out=Y;if(C=PU.inflate(B,WY.Z_NO_FLUSH),C===WY.Z_NEED_DICT&&J)C=PU.inflateSetDictionary(this.strm,J);if(C===WY.Z_BUF_ERROR&&Z===!0)C=WY.Z_OK,Z=!1;if(C!==WY.Z_STREAM_END&&C!==WY.Z_OK)return this.onEnd(C),this.ended=!0,!1;if(B.next_out){if(B.avail_out===0||C===WY.Z_STREAM_END||B.avail_in===0&&(X===WY.Z_FINISH||X===WY.Z_SYNC_FLUSH))if(this.options.to==="string"){if(G=OR.utf8border(B.output,B.next_out),W=B.next_out-G,F=OR.buf2string(B.output,G),B.next_out=W,B.avail_out=Y-W,W)dH.arraySet(B.output,B.output,G,W,0);this.onData(F)}else this.onData(dH.shrinkBuf(B.output,B.next_out))}if(B.avail_in===0&&B.avail_out===0)Z=!0}while((B.avail_in>0||B.avail_out===0)&&C!==WY.Z_STREAM_END);if(C===WY.Z_STREAM_END)X=WY.Z_FINISH;if(X===WY.Z_FINISH)return C=PU.inflateEnd(this.strm),this.onEnd(C),this.ended=!0,C===WY.Z_OK;if(X===WY.Z_SYNC_FLUSH)return this.onEnd(WY.Z_OK),B.avail_out=0,!0;return!0};BZ.prototype.onData=function(A){this.chunks.push(A)};BZ.prototype.onEnd=function(A){if(A===WY.Z_OK)if(this.options.to==="string")this.result=this.chunks.join("");else this.result=dH.flattenChunks(this.chunks);this.chunks=[],this.err=A,this.msg=this.strm.msg};function Cf(A,Q){var B=new BZ(Q);if(B.push(A,!0),B.err)throw B.msg||Jf[B.err];return B.result}function QQB(A,Q){return Q=Q||{},Q.raw=!0,Cf(A,Q)}BQB.Inflate=BZ;BQB.inflate=Cf;BQB.inflateRaw=QQB;BQB.ungzip=Cf});var I7A=R((DWY,V7A)=>{var GQB=S6().assign,WQB=DGA(),FQB=E7A(),ZQB=Yf(),K7A={};GQB(K7A,WQB,FQB,ZQB);V7A.exports=K7A});var H7A=R((NWY,Xf)=>{(function(){var A={};if(typeof Xf=="object")Xf.exports=A;else self.UTIF=A;var Q=I7A();function B(){if(typeof process>"u"||process.env.NODE_ENV=="development")console.log.apply(console,arguments)}(function(Y,J){(function(){var C=function(){function U($){this.message="JPEG error: "+$}return U.prototype=Error(),U.prototype.name="JpegError",U.constructor=U,U}(),X=function(){var U=new Uint8Array([0,1,8,16,9,2,3,10,17,24,32,25,18,11,4,5,12,19,26,33,40,48,41,34,27,20,13,6,7,14,21,28,35,42,49,56,57,50,43,36,29,22,15,23,30,37,44,51,58,59,52,45,38,31,39,46,53,60,61,54,47,55,62,63]),$=4017,E=799,K=3406,I=2276,V=1567,H=3784,D=5793,L=2896;function z(j){if(j==null)j={};if(j.w==null)j.w=-1;this.V=j.n,this.N=j.w}function M(j,k){var T=0,S=[],v,y,h=16,g;while(h>0&&!j[h-1])h--;S.push({children:[],index:0});var m=S[0];for(v=0;v0)m=S.pop();m.index++,S.push(m);while(S.length<=v)S.push(g={children:[],index:0}),m.children[m.index]=g.children,m=g;T++}if(v+10)return b--,x>>b&1;if(x=j[k++],x===255){var zA=j[k++];if(zA){if(zA===220&&n){k+=2;var uA=W(j,k);if(k+=2,uA>0&&uA!==T.s)throw new DNLMarkerError("Found DNL marker (0xFFDC) while parsing scan data",uA)}else if(zA===217){if(n){var MQ=EA*8;if(MQ>0&&MQ>>7}function vA(zA){var uA=zA;while(!0){switch(uA=uA[TA()],typeof uA){case"number":return uA;case"object":continue}throw new C("invalid huffman sequence")}}function mA(zA){var uA=0;while(zA>0)uA=uA<<1|TA(),zA--;return uA}function ZQ(zA){if(zA===1)return TA()===1?1:-1;var uA=mA(zA);if(uA>=1<>4;if(mQ===0){if(yB<15)break;eQ+=16;continue}eQ+=yB;var L0=U[eQ];zA.D[uA+L0]=ZQ(mQ),eQ++}}function CQ(zA,uA){var MQ=vA(zA.J),bQ=MQ===0?0:ZQ(MQ)<0){o--;return}var MQ=y,bQ=h;while(MQ<=bQ){var eQ=vA(zA.i),lB=eQ&15,mQ=eQ>>4;if(lB===0){if(mQ<15){o=mA(mQ)+(1<>4,lB===0)if(eQ<15)o=mA(eQ)+(1<0){for(CA=0;CA0?"unexpected":"excessive";k=QQ.offset}if(QQ.M>=65488&&QQ.M<=65495)k+=2;else break}return k-d}function w(j,k,T){var{$:S,D:v}=j,y,h,g,m,n,i,p,d,x,b,o,GA,VA,EA,UA,CA,QA;if(!S)throw new C("missing required Quantization Table.");for(var KA=0;KA<64;KA+=8){if(x=v[k+KA],b=v[k+KA+1],o=v[k+KA+2],GA=v[k+KA+3],VA=v[k+KA+4],EA=v[k+KA+5],UA=v[k+KA+6],CA=v[k+KA+7],x*=S[KA],(b|o|GA|VA|EA|UA|CA)===0){QA=D*x+512>>10,T[KA]=QA,T[KA+1]=QA,T[KA+2]=QA,T[KA+3]=QA,T[KA+4]=QA,T[KA+5]=QA,T[KA+6]=QA,T[KA+7]=QA;continue}b*=S[KA+1],o*=S[KA+2],GA*=S[KA+3],VA*=S[KA+4],EA*=S[KA+5],UA*=S[KA+6],CA*=S[KA+7],y=D*x+128>>8,h=D*VA+128>>8,g=o,m=UA,n=L*(b-CA)+128>>8,d=L*(b+CA)+128>>8,i=GA<<4,p=EA<<4,y=y+h+1>>1,h=y-h,QA=g*H+m*V+128>>8,g=g*V-m*H+128>>8,m=QA,n=n+p+1>>1,p=n-p,d=d+i+1>>1,i=d-i,y=y+m+1>>1,m=y-m,h=h+g+1>>1,g=h-g,QA=n*I+d*K+2048>>12,n=n*K-d*I+2048>>12,d=QA,QA=i*E+p*$+2048>>12,i=i*$-p*E+2048>>12,p=QA,T[KA]=y+d,T[KA+7]=y-d,T[KA+1]=h+p,T[KA+6]=h-p,T[KA+2]=g+i,T[KA+5]=g-i,T[KA+3]=m+n,T[KA+4]=m-n}for(var HA=0;HA<8;++HA){if(x=T[HA],b=T[HA+8],o=T[HA+16],GA=T[HA+24],VA=T[HA+32],EA=T[HA+40],UA=T[HA+48],CA=T[HA+56],(b|o|GA|VA|EA|UA|CA)===0){if(QA=D*x+8192>>14,QA<-2040)QA=0;else if(QA>=2024)QA=255;else QA=QA+2056>>4;v[k+HA]=QA,v[k+HA+8]=QA,v[k+HA+16]=QA,v[k+HA+24]=QA,v[k+HA+32]=QA,v[k+HA+40]=QA,v[k+HA+48]=QA,v[k+HA+56]=QA;continue}if(y=D*x+2048>>12,h=D*VA+2048>>12,g=o,m=UA,n=L*(b-CA)+2048>>12,d=L*(b+CA)+2048>>12,i=GA,p=EA,y=(y+h+1>>1)+4112,h=y-h,QA=g*H+m*V+2048>>12,g=g*V-m*H+2048>>12,m=QA,n=n+p+1>>1,p=n-p,d=d+i+1>>1,i=d-i,y=y+m+1>>1,m=y-m,h=h+g+1>>1,g=h-g,QA=n*I+d*K+2048>>12,n=n*K-d*I+2048>>12,d=QA,QA=i*E+p*$+2048>>12,i=i*$-p*E+2048>>12,p=QA,x=y+d,CA=y-d,b=h+p,UA=h-p,o=g+i,EA=g-i,GA=m+n,VA=m-n,x<16)x=0;else if(x>=4080)x=255;else x>>=4;if(b<16)b=0;else if(b>=4080)b=255;else b>>=4;if(o<16)o=0;else if(o>=4080)o=255;else o>>=4;if(GA<16)GA=0;else if(GA>=4080)GA=255;else GA>>=4;if(VA<16)VA=0;else if(VA>=4080)VA=255;else VA>>=4;if(EA<16)EA=0;else if(EA>=4080)EA=255;else EA>>=4;if(UA<16)UA=0;else if(UA>=4080)UA=255;else UA>>=4;if(CA<16)CA=0;else if(CA>=4080)CA=255;else CA>>=4;v[k+HA]=x,v[k+HA+8]=b,v[k+HA+16]=o,v[k+HA+24]=GA,v[k+HA+32]=VA,v[k+HA+40]=EA,v[k+HA+48]=UA,v[k+HA+56]=CA}}function P(j,k){var{P:T,c:S}=k,v=new Int16Array(64);for(var y=0;y=S)return null;var y=W(j,k);if(y>=65472&&y<=65534)return{u:null,M:y,offset:k};var h=W(j,v);while(!(h>=65472&&h<=65534)){if(++v>=S)return null;h=W(j,v)}return{u:y.toString(16),M:h,offset:v}}return z.prototype={parse(j,k){if(k==null)k={};var T=k.F,S=0,v=null,y=null,h,g,m=0;function n(){var mQ=W(j,S);S+=2;var yB=S+mQ-2,L0=_(j,yB,S);if(L0&&L0.u)yB=L0.offset;var cJ=j.subarray(S,yB);return S+=cJ.length,cJ}function i(mQ){var yB=Math.ceil(mQ.o/8/mQ.X),L0=Math.ceil(mQ.s/8/mQ.B);for(var cJ=0;cJ>4===0)for(GA=0;GA<64;GA++)CA=U[GA],HA[CA]=j[S++];else if(KA>>4===1)for(GA=0;GA<64;GA++)CA=U[GA],HA[CA]=W(j,S),S+=2;else throw new C("DQT - invalid table spec");p[KA&15]=HA}break;case 65472:case 65473:case 65474:if(h)throw new C("Only single frame JPEGs supported");S+=2,h={},h.G=b===65473,h.Z=b===65474,h.precision=j[S++];var DA=W(j,S),hA,QQ=0,XA=0;S+=2,h.s=T||DA,h.o=W(j,S),S+=2,h.W=[],h._={};var PA=j[S++];for(o=0;o>4,TA=j[S+1]&15;if(QQ>4===0?x:d)[ZQ&15]=M(NQ,SQ)}break;case 65501:S+=2,g=W(j,S),S+=2;break;case 65498:var LA=++m===1&&!T,IA;S+=2;var jA=j[S++],tQ=[];for(o=0;o>4],IA.i=d[KB&15],tQ.push(IA)}var zA=j[S++],uA=j[S++],MQ=j[S++];try{var bQ=q(j,S,h,tQ,g,zA,uA,MQ>>4,MQ&15,LA);S+=bQ}catch(mQ){if(mQ instanceof DNLMarkerError)return this.parse(j,{F:mQ.s});else if(mQ instanceof EOIMarkerError)break A;throw mQ}break;case 65500:S+=4;break;case 65535:if(j[S]!==255)S--;break;default:var eQ=_(j,S-2,S-3);if(eQ&&eQ.u){S=eQ.offset;break}if(S>=j.length-1)break A;throw new C("JpegImage.parse - unknown marker: "+b.toString(16))}b=W(j,S),S+=2}this.width=h.o,this.height=h.s,this.g=v,this.b=y,this.W=[];for(o=0;o>8)+HA[x+1];return UA},get f(){if(this.b)return!!this.b.a;if(this.p===3){if(this.N===0)return!1;else if(this.W[0].index===82&&this.W[1].index===71&&this.W[2].index===66)return!1;return!0}if(this.N===1)return!0;return!1},z:function(k){var T,S,v;for(var y=0,h=k.length;y4)throw new C("Unsupported color mode");var y=this.Y(k,T,v);if(this.p===1&&S){var h=y.length,g=new Uint8ClampedArray(h*3),m=0;for(var n=0;n>24}function W(Z,U){return Z[U]<<8|Z[U+1]}function F(Z,U){return(Z[U]<<24|Z[U+1]<<16|Z[U+2]<<8|Z[U+3])>>>0}Y.JpegDecoder=X})(),Y.encodeImage=function(C,X,G,W){var F={t256:[X],t257:[G],t258:[8,8,8,8],t259:[1],t262:[2],t273:[1000],t277:[4],t278:[G],t279:[X*G*4],t282:[[72,1]],t283:[[72,1]],t284:[1],t286:[[0,1]],t287:[[0,1]],t296:[1],t305:["Photopea (UTIF.js)"],t338:[1]};if(W)for(var Z in W)F[Z]=W[Z];var U=new Uint8Array(Y.encode([F])),$=new Uint8Array(C),E=new Uint8Array(1000+X*G*4);for(var Z=0;Z3)X.t258=X.t258.slice(0,3);var $=X.t277?X.t277[0]:1,E=X.t258?X.t258[0]:1,K=E*$;if(Z==1&&X.t279!=null&&X.t278&&X.t262[0]==32803)K=Math.round(X.t279[0]*8/(X.width*X.t278[0]));if(X.t50885&&X.t50885[0]==4)K=X.t258[0]*3;var I=Math.ceil(X.width*K/8)*8,V=X.t273;if(V==null||X.t322)V=X.t324;var H=X.t279;if(Z==1&&V.length==1)H=[X.height*(I>>>3)];if(H==null||X.t322)H=X.t325;var D=new Uint8Array(X.height*(I>>>3)),L=0;if(X.t322!=null){var z=X.t322[0],M=X.t323[0],N=Math.floor((X.width+z-1)/z),q=Math.floor((X.height+M-1)/M),w=new Uint8Array(Math.ceil(z*M*K/8)|0);console.log("====",N,q);for(var P=0;P>>3,N=Math.ceil(L*z*K/8);if(L==16&&!C.isLE&&C.t33422==null)for(var q=0;q>>8&255}else if(z==3)for(var V=3;V>3^16368,(g[L]|g[L+1]<<8)>>(D&7)&~(-1<>2,N[1]=((i(1)&3)<<12|i(2)<<4|i(3)>>4)&16383,N[2]=i(3)>>2&3,N[3]=(i(3)&3)<<8|i(4),N[4]=i(5)<<2|i(6)>>6,N[5]=(i(6)&63)<<4|i(7)>>4,N[6]=i(7)>>2&3,N[7]=(i(7)&3)<<8|i(8),N[8]=i(9)<<2&1020|i(10)>>6,N[9]=(i(10)<<4|i(11)>>4)&1023,N[10]=i(11)>>2&3,N[11]=(i(11)&3)<<8|i(12),N[12]=(i(13)<<2&1020|i(14)>>6)&1023,N[13]=(i(14)<<4|i(15)>>4)&1023,D+=16,L=0}function d(){N[0]=i(0)<<4|i(1)>>4,N[1]=((i(1)&15)<<8|i(2))&4095,N[2]=i(3)>>6&3,N[3]=(i(3)&63)<<2|i(4)>>6,N[4]=(i(4)&63)<<2|i(5)>>6,N[5]=(i(5)&63)<<2|i(6)>>6,N[6]=i(6)>>4&3,N[7]=(i(6)&15)<<4|i(7)>>4,N[8]=(i(7)&15)<<4|i(8)>>4,N[9]=(i(8)&15)<<4|i(9)>>4,N[10]=i(9)>>2&3,N[11]=(i(9)&3)<<6|i(10)>>2,N[12]=(i(10)&3)<<6|i(11)>>2,N[13]=(i(11)&3)<<6|i(12)>>2,N[14]=i(12)&3,N[15]=i(13),N[16]=i(14),N[17]=i(15),D+=16,L=0}function x(){_[0]=0,_[1]=0,j[0]=0,j[1]=0}if(I==7)throw I;else if(I==6){var b=K==12,o=b?d:p,GA=b?14:11,VA=b?128:512,EA=b?2048:8192,UA=b?16383:65535,CA=b?4095:16383,QA=$/GA,KA=QA*16,HA=b?18:14;for(v=0;vS)PA+=j[k]-S;j[k]=PA}else if(_[k]=PA,PA)j[k]=PA;else PA=j[k];m[T+y++]=PA-15<=UA?PA-15&UA:PA+2147483633>>31&CA}}}}}else if(I==5){var NA=K==12?10:9;for(v=0;v>4),m[T++]=((N[4]&15)<<8)+N[3],m[T++]=16*N[5]+(N[4]>>4),m[T++]=((N[7]&15)<<8)+N[6],m[T++]=16*N[8]+(N[7]>>4),m[T++]=((N[10]&15)<<8)+N[9],m[T++]=16*N[11]+(N[10]>>4),m[T++]=((N[13]&15)<<8)+N[12],m[T++]=16*N[14]+(N[13]>>4);else if(K==14)m[T++]=N[0]+((N[1]&63)<<8),m[T++]=(N[1]>>6)+4*N[2]+((N[3]&15)<<10),m[T++]=(N[3]>>4)+16*N[4]+((N[5]&3)<<12),m[T++]=((N[5]&252)>>2)+(N[6]<<6),m[T++]=N[7]+((N[8]&63)<<8),m[T++]=(N[8]>>6)+4*N[9]+((N[10]&15)<<10),m[T++]=(N[10]>>4)+16*N[11]+((N[12]&3)<<12),m[T++]=((N[12]&252)>>2)+(N[13]<<6),m[T++]=N[14]+((N[15]&63)<<8)}else if(I==4)for(v=0;v>3-n(2);if(j[k]){if(w=n(8),w!=0){if(_[k]-=128<11)_[k]=j[k]<<4|n(4);m[T++]=_[y&1]}else throw I},Y.decode._decodeVC5=function(){var C=[1,0,1,0,2,2,1,1,3,7,1,2,5,25,1,3,6,48,1,4,6,54,1,5,7,111,1,8,7,99,1,6,7,105,12,0,7,107,1,7,8,209,20,0,8,212,1,9,8,220,1,10,9,393,1,11,9,394,32,0,9,416,1,12,9,427,1,13,10,887,1,18,10,784,1,14,10,790,1,15,10,835,60,0,10,852,1,16,10,885,1,17,11,1571,1,19,11,1668,1,20,11,1669,100,0,11,1707,1,21,11,1772,1,22,12,3547,1,29,12,3164,1,24,12,3166,1,25,12,3140,1,23,12,3413,1,26,12,3537,1,27,12,3539,1,28,13,7093,1,35,13,6283,1,30,13,6331,1,31,13,6335,180,0,13,6824,1,32,13,7072,1,33,13,7077,320,0,13,7076,1,34,14,12565,1,36,14,12661,1,37,14,12669,1,38,14,13651,1,39,14,14184,1,40,15,28295,1,46,15,28371,1,47,15,25320,1,42,15,25336,1,43,15,25128,1,41,15,27300,1,44,15,28293,1,45,16,50259,1,48,16,50643,1,49,16,50675,1,50,16,56740,1,53,16,56584,1,51,16,56588,1,52,17,113483,1,61,17,113482,1,60,17,101285,1,55,17,101349,1,56,17,109205,1,57,17,109207,1,58,17,100516,1,54,17,113171,1,59,18,202568,1,62,18,202696,1,63,18,218408,1,64,18,218412,1,65,18,226340,1,66,18,226356,1,67,18,226358,1,68,19,402068,1,69,19,405138,1,70,19,405394,1,71,19,436818,1,72,19,436826,1,73,19,452714,1,75,19,452718,1,76,19,452682,1,74,20,804138,1,77,20,810279,1,78,20,810790,1,79,20,873638,1,80,20,873654,1,81,20,905366,1,82,20,905430,1,83,20,905438,1,84,21,1608278,1,85,21,1620557,1,86,21,1621582,1,87,21,1621583,1,88,21,1747310,1,89,21,1810734,1,90,21,1810735,1,91,21,1810863,1,92,21,1810879,1,93,22,3621725,1,99,22,3621757,1,100,22,3241112,1,94,22,3494556,1,95,22,3494557,1,96,22,3494622,1,97,22,3494623,1,98,23,6482227,1,102,23,6433117,1,101,23,6989117,1,103,23,6989119,1,105,23,6989118,1,104,23,7243449,1,106,23,7243512,1,107,24,13978233,1,111,24,12964453,1,109,24,12866232,1,108,24,14486897,1,113,24,13978232,1,110,24,14486896,1,112,24,14487026,1,114,24,14487027,1,115,25,25732598,1,225,25,25732597,1,189,25,25732596,1,188,25,25732595,1,203,25,25732594,1,202,25,25732593,1,197,25,25732592,1,207,25,25732591,1,169,25,25732590,1,223,25,25732589,1,159,25,25732522,1,235,25,25732579,1,152,25,25732575,1,192,25,25732489,1,179,25,25732573,1,201,25,25732472,1,172,25,25732576,1,149,25,25732488,1,178,25,25732566,1,120,25,25732571,1,219,25,25732577,1,150,25,25732487,1,127,25,25732506,1,211,25,25732548,1,125,25,25732588,1,158,25,25732486,1,247,25,25732467,1,238,25,25732508,1,163,25,25732552,1,228,25,25732603,1,183,25,25732513,1,217,25,25732587,1,168,25,25732520,1,122,25,25732484,1,128,25,25732562,1,249,25,25732505,1,187,25,25732504,1,186,25,25732483,1,136,25,25928905,1,181,25,25732560,1,255,25,25732500,1,230,25,25732482,1,135,25,25732555,1,233,25,25732568,1,222,25,25732583,1,145,25,25732481,1,134,25,25732586,1,167,25,25732521,1,248,25,25732518,1,209,25,25732480,1,243,25,25732512,1,216,25,25732509,1,164,25,25732547,1,140,25,25732479,1,157,25,25732544,1,239,25,25732574,1,191,25,25732564,1,251,25,25732478,1,156,25,25732546,1,139,25,25732498,1,242,25,25732557,1,133,25,25732477,1,162,25,25732515,1,213,25,25732584,1,165,25,25732514,1,212,25,25732476,1,227,25,25732494,1,198,25,25732531,1,236,25,25732530,1,234,25,25732529,1,117,25,25732528,1,215,25,25732527,1,124,25,25732526,1,123,25,25732525,1,254,25,25732524,1,253,25,25732523,1,148,25,25732570,1,218,25,25732580,1,146,25,25732581,1,147,25,25732569,1,224,25,25732533,1,143,25,25732540,1,184,25,25732541,1,185,25,25732585,1,166,25,25732556,1,132,25,25732485,1,129,25,25732563,1,250,25,25732578,1,151,25,25732501,1,119,25,25732502,1,193,25,25732536,1,176,25,25732496,1,245,25,25732553,1,229,25,25732516,1,206,25,25732582,1,144,25,25732517,1,208,25,25732558,1,137,25,25732543,1,241,25,25732466,1,237,25,25732507,1,190,25,25732542,1,240,25,25732551,1,131,25,25732554,1,232,25,25732565,1,252,25,25732475,1,171,25,25732493,1,205,25,25732492,1,204,25,25732491,1,118,25,25732490,1,214,25,25928904,1,180,25,25732549,1,126,25,25732602,1,182,25,25732539,1,175,25,25732545,1,141,25,25732559,1,138,25,25732537,1,177,25,25732534,1,153,25,25732503,1,194,25,25732606,1,160,25,25732567,1,121,25,25732538,1,174,25,25732497,1,246,25,25732550,1,130,25,25732572,1,200,25,25732474,1,170,25,25732511,1,221,25,25732601,1,196,25,25732532,1,142,25,25732519,1,210,25,25732495,1,199,25,25732605,1,155,25,25732535,1,154,25,25732499,1,244,25,25732510,1,220,25,25732600,1,195,25,25732607,1,161,25,25732604,1,231,25,25732473,1,173,25,25732599,1,226,26,51465122,1,116,26,51465123,0,1],X,G,W,F=[3,3,3,3,2,2,2,1,1,1],Z=24576,U=16384,$=8192,E=U|$;function K(q){var w=q[1],P=q[0][w>>>3]>>>7-(w&7)&1;return q[1]++,P}function I(q,w){if(X==null){X={};for(var P=0;P>>1}return q}function H(q,w){return q>>w}function D(q,w,P,_,j,k){w[P]=H(H(11*q[j]-4*q[j+k]+q[j+k+k]+4,3)+q[_],1),w[P+k]=H(H(5*q[j]+4*q[j+k]-q[j+k+k]+4,3)-q[_],1)}function L(q,w,P,_,j,k){var T=q[j-k]-q[j+k],S=q[j],v=q[_];w[P]=H(H(T+4,3)+S+v,1),w[P+k]=H(H(-T+4,3)+S-v,1)}function z(q,w,P,_,j,k){w[P]=H(H(5*q[j]+4*q[j-k]-q[j-k-k]+4,3)+q[_],1),w[P+k]=H(H(11*q[j]-4*q[j-k]+q[j-k-k]+4,3)-q[_],1)}function M(q){return q=q<0?0:q>4095?4095:q,q=W[q]>>>2,q}function N(q,w,P,_,j,k){_=new Uint16Array(_.buffer);var T=Date.now(),S=Y._binBE,v=w+P,y,h,g,m,n,i,p,d,x,b,o,GA,VA,EA,UA,CA,QA,KA;w+=4;var HA=k[0]==1;while(w>>1)*(g>>>1));KA=new Int16Array((h>>>1)*(g>>>1)),G=new Int16Array(1024);for(var NA=0;NA<1024;NA++){var TA=NA-512,vA=Math.abs(TA),y=Math.floor(768*vA*vA*vA/16581375)+vA;G[NA]=Math.sign(TA)*y}W=new Uint16Array(4096);var mA=65535;for(var NA=0;NA<4096;NA++){var ZQ=NA,NQ=mA*(Math.pow(113,ZQ/4095)-1)/112;W[NA]=Math.min(NQ,mA)}}var CQ=QA[p],SQ=V(h,1+F[m]),LA=V(g,1+F[m]);if(m==0)for(var IA=0;IA>>1)+jA]=q[tQ]<<8|q[tQ+1]}else{var IQ=[q,w*8],vQ=[],KB=0,zA=SQ*LA,uA=[0,0],MQ=0,hA=0;while(KB0)vQ[KB++]=hA,MQ--}var bQ=(m-1)%3,eQ=bQ!=1?SQ:0,lB=bQ!=0?LA:0;for(var IA=0;IA>>1)+eQ,yB=IA*SQ;for(var jA=0;jA>>1,L0=SQ*2,cJ=LA*2;for(var IA=0;IA>14-R1*2&3;var fV=z1[uX];if(fV!=0)for(var IA=0;IA>>1)*(h>>>1)+(jA>>>1),NF=bV[tQ],W_=OM[tQ]-2048,LF=PM[tQ]-2048,D4=TM[tQ]-2048,qF=(W_<<1)+NF,MF=(LF<<1)+NF,mV=NF+D4,uV=NF-D4;if(HA)_[IC]=M(mV),_[IC+1]=M(MF),_[IC+h]=M(qF),_[IC+h+1]=M(uV);else _[IC]=M(qF),_[IC+1]=M(mV),_[IC+h]=M(uV),_[IC+h+1]=M(MF)}}w+=PA*4}else if(QQ==16388)w+=PA*4;else if(XA==8192||XA==8448||XA==9216);else throw QQ.toString(16)}}console.log(Date.now()-T)}return N}(),Y.decode._decodeLogLuv32=function(C,X,G,W,F,Z){var U=C.width,$=U*4,E=0,K=new Uint8Array($);while(E>>(D[p]>>>8);for(var L=0;L>>4,F[Z+p+1]=P<<4|j>>>4,F[Z+p+2]=j<<4|_>>>4}return}var k=new Uint16Array(16),T,S,v,y,h,g,m,n,i,p,d,x=new Uint8Array(U+1);for(T=0;T<$;T++){for(var b=0;b>>11,g=15&v>>>22,m=15&v>>>26;for(n=0;n<4&&128<>3))>>>(i&7)&127)<2047)k[p]=2047;i+=7}for(p=0;p<16;p++,S+=2){var w=k[p]<<1;Y.decode._putsF(F,(T*U+S)*E,w<<16-E)}S-=S&1?1:31}}},Y.decode._decodeNikon=function(C,X,G,W,F,Z,U){var $=[[0,0,1,5,1,1,1,1,1,1,2,0,0,0,0,0,0,5,4,3,6,2,7,1,0,8,9,11,10,12],[0,0,1,5,1,1,1,1,1,1,2,0,0,0,0,0,0,57,90,56,39,22,5,4,3,2,1,0,11,12,12],[0,0,1,4,2,3,1,2,0,0,0,0,0,0,0,0,0,5,4,6,3,7,2,8,1,9,0,10,11,12],[0,0,1,4,3,1,1,1,1,1,2,0,0,0,0,0,0,5,6,4,7,8,3,9,2,1,0,10,11,12,13,14],[0,0,1,5,1,1,1,1,1,1,1,2,0,0,0,0,0,8,92,75,58,41,7,6,5,4,3,2,1,0,13,14],[0,0,1,4,2,2,3,1,2,0,0,0,0,0,0,0,0,7,6,8,5,9,4,10,3,11,12,2,0,1,13,14]],E=C.t256[0],K=C.t257[0],I=C.t258[0],V=0,H=0,D=Y.decode._make_decoder,L=Y.decode._getbithuff,z=X[0].exifIFD.makerNote,M=z.t150?z.t150:z.t140,N=0,q=M[N++],w=M[N++];if(q==73||w==88)N+=2110;if(q==70)V=2;if(I==14)V+=3;var P=[[0,0],[0,0]],_=C.isLE?Y._binLE:Y._binBE;for(var v=0;v<2;v++)for(var j=0;j<2;j++)P[v][j]=_.readShort(M,N),N+=2;var k=1<1)T=Math.floor(k/(S-1));if(q==68&&w==32&&T>0)H=_.readShort(M,562);var v,y,h,g,m,n,i=0,p=[0,0],d=D($[V]),x=[W,0,0,0];for(i=y=0;y>>4,n=(L(G,x,g-m,0)<<1)+1<>>1,(n&1<>>3;C[W]|=G>>>16,C[W+1]|=G>>>8,C[W+2]|=G},Y.decode._getbithuff=function(C,X,G,W){var F=0,Z=Y.decode._get_byte,U,$=X[0],E=X[1],K=X[2],I=X[3];if(G==0||K<0)return 0;while(!I&&K>>32-G,W)K-=W[U+1]>>>8,U=W[U+1]&255;else K-=G;if(K<0)throw"e";return X[0]=$,X[1]=E,X[2]=K,X[3]=I,U},Y.decode._make_decoder=function(C){var X,G,W,F,Z,U=[];for(X=16;X!=0&&!C[X];X--);var $=17;U[0]=X;for(W=G=1;G<=X;G++)for(F=0;F>>8;else for(var H=0;H>>8,F[Z+(H<<1)+1]=M[H]&255;else if(z==14||z==12||z==10){var q=16-z;for(var H=0;H1;if(!z){if(X[G]==255&&X[G+1]==F)return{jpegOffset:G};if(w!=null){if(X[G+P]==255&&X[G+P+1]==F)V=G+P;else B("JPEGInterchangeFormat does not point to SOI");if(_==null)B("JPEGInterchangeFormatLength field is missing");else if(P>=H||P+j<=H)B("JPEGInterchangeFormatLength field value is invalid");if(V!=null)return{jpegOffset:V}}}if(T!=null)S=T[0],v=T[1];if(w!=null){if(_!=null)if(j>=2&&P+j<=H){if(X[G+P+j-2]==255&&X[G+P+j-1]==F)D=new Uint8Array(j-2);else D=new Uint8Array(j);for(M=0;M offset to first strip or tile")}if(D==null){var g=0,m=[];m[g++]=255,m[g++]=F;var n=C.t519;if(n==null)throw Error("JPEGQTables tag is missing");for(M=0;M>>8,m[g++]=p&255,m[g++]=M|q<<4;for(N=0;N<16;N++)m[g++]=X[G+i[M]+N];for(N=0;N>>8&255,m[g++]=C.height&255,m[g++]=C.width>>>8&255,m[g++]=C.width&255,m[g++]=y,y==1)m[g++]=1,m[g++]=17,m[g++]=0;else for(M=0;M<3;M++)m[g++]=M+1,m[g++]=M!=0?17:(S&15)<<4|v&15,m[g++]=M;if(h!=null&&h[0]!=0)m[g++]=255,m[g++]=E,m[g++]=0,m[g++]=4,m[g++]=h[0]>>>8&255,m[g++]=h[0]&255;D=new Uint8Array(m)}var d=-1;M=0;while(M>>8&255,D[b++]=C.height&255,D[b++]=C.width>>>8&255,D[b++]=C.width&255,D[b++]=y,y==1)D[b++]=1,D[b++]=17,D[b++]=0;else for(M=0;M<3;M++)D[b++]=M+1,D[b++]=M!=0?17:(S&15)<<4|v&15,D[b++]=M}if(X[H]==255&&X[H+1]==I){var o=X[H+2]<<8|X[H+3];L=new Uint8Array(o+2),L[0]=X[H],L[1]=X[H+1],L[2]=X[H+2],L[3]=X[H+3];for(M=0;M>>8&255,K[V.sofPosition+6]=C.height&255,K[V.sofPosition+7]=C.width>>>8&255,K[V.sofPosition+8]=C.width&255,X[G]!=255||X[G+1]!=SOS)K.set(V.sosMarker,I),I+=sosMarker.length;for(U=0;U=0&&E<128)for(var K=0;K=-127&&E<0){for(var K=0;K<-E+1;K++)U[F]=Z[X],F++;X++}}return F},Y.decode._decodeThunder=function(C,X,G,W,F){var Z=[0,1,0,-1],U=[0,1,2,3,0,-3,-2,-1],$=X+G,E=F*2,K=0;while(X<$){var I=C[X],V=I>>>6,H=I&63;if(X++,V==3)K=H&15,W[E>>>1]|=K<<4*(1-E&1),E++;if(V==0)for(var D=0;D>>1]|=K<<4*(1-E&1),E++;if(V==2)for(var D=0;D<2;D++){var L=H>>>3*(1-D)&7;if(L!=4)K+=U[L],W[E>>>1]|=K<<4*(1-E&1),E++}if(V==1)for(var D=0;D<3;D++){var L=H>>>2*(2-D)&3;if(L!=2)K+=Z[L],W[E>>>1]|=K<<4*(1-E&1),E++}}},Y.decode._dmap={"1":0,"011":1,"000011":2,"0000011":3,"010":-1,"000010":-2,"0000010":-3},Y.decode._lens=function(){var C=function(E,K,I,V){for(var H=0;H>>3>>3]>>>7-(E&7)&1;if(U==2)T=C[E>>>3]>>>(E&7)&1;if(E++,I+=T,_=="H"){if($._lens[w][I]!=null){var S=$._lens[w][I];if(I="",K+=S,S<64){if($._addNtimes(V,K,w),L+=K,w=1-w,K=0,j--,j==0)_=""}}}else{if(I=="0001")I="",$._addNtimes(V,q-L,w),L=q;if(I=="001")I="",_="H",j=2;if($._dmap[I]!=null)z=N+$._dmap[I],$._addNtimes(V,z-L,w),L=z,I="",w=1-w}if(V.length==Z&&_=="")$._writeBits(V,W,F*8+P*k),w=0,P++,L=0,H=$._makeDiff(V),V=[]}},Y.decode._findDiff=function(C,X,G){for(var W=0;W=X&&C[W+1]==G)return C[W]},Y.decode._makeDiff=function(C){var X=[];if(C[0]==1)X.push(0,1);for(var G=1;G>>3>>3]>>>7-(E&7)&1;if(U==2)z=C[E>>>3]>>>(E&7)&1;if(E++,I+=z,K=$._lens[H][I],K!=null){if($._addNtimes(V,K,H),I="",K<64)H=1-H;if(V.length==Z){if($._writeBits(V,W,F*8+D*L),V=[],D++,H=0,(E&7)!=0)E+=8-(E&7);if(K>=64)E+=8}}}},Y.decode._decodeG3=function(C,X,G,W,F,Z,U,$){var E=Y.decode,K=X<<3,I=0,V="",H=[],D=[];for(var L=0;L>>3>>3]>>>7-(K&7)&1;if(U==2)v=C[K>>>3]>>>(K&7)&1;if(K++,V+=v,T){if(E._lens[P][V]!=null){var y=E._lens[P][V];if(V="",I+=y,y<64)E._addNtimes(H,I,P),P=1-P,I=0}}else if(j=="H"){if(E._lens[P][V]!=null){var y=E._lens[P][V];if(V="",I+=y,y<64){if(E._addNtimes(H,I,P),z+=I,P=1-P,I=0,k--,k==0)j=""}}}else{if(V=="0001")V="",E._addNtimes(H,w-z,P),z=w;if(V=="001")V="",j="H",k=2;if(E._dmap[V]!=null)M=q+E._dmap[V],E._addNtimes(H,M-z,P),z=M,V="",P=1-P}if(V.endsWith("000000000001")){if(_>=0)E._writeBits(H,W,F*8+_*S);if($){if(U==1)T=(C[K>>>3]>>>7-(K&7)&1)==1;if(U==2)T=(C[K>>>3]>>>(K&7)&1)==1;K++}V="",P=0,_++,z=0,D=E._makeDiff(H),H=[]}}if(H.length==Z)E._writeBits(H,W,F*8+_*S)},Y.decode._addNtimes=function(C,X,G){for(var W=0;W>>3]|=C[W]<<7-(G+W&7)},Y.decode._decodeLZW=Y.decode._decodeLZW=function(){var C,X,G,W,F=0,Z=0,U=0,$=0,E=function(){var M=C>>>3,N=X[M]<<16|X[M+1]<<8|X[M+2],q=N>>>24-(C&7)-Z&(1<>>----------------");for(var E=0;EX.buffer.byteLength)V=X.buffer.byteLength-L;D=new Uint8Array(X.buffer,L,V)}if(I==2){var z=V<5?G-4:H,M=X[z],N=Math.max(0,Math.min(V-1,X.length-z));if(M<128||N==0)D.push(C.readASCII(X,z,N));else D=new Uint8Array(X.buffer,z,N)}if(I==3)for(var q=0;q4)C.writeUint(G,W,$),M=$;if(V==1||V==7)for(var N=0;N4)z+=z&1,$+=z;W+=4}return[W,$]},Y.toRGBA8=function(C,X){function G(CQ){return CQ<0.0031308?12.92*CQ:1.055*Math.pow(CQ,0.4166666666666667)-0.055}var{width:W,height:F}=C,Z=W*F,U=Z*4,$=C.data,E=new Uint8Array(Z*4),K=C.t262?C.t262[0]:2,I=C.t258?Math.min(32,C.t258[0]):1;if(C.t262==null&&I==1)K=0;var V=C.t277?C.t277[0]:C.t258?C.t258.length:[1,1,3,1,1,4,3][K],H=C.t339?C.t339[0]:null;if(K==1&&I==32&&H!=3)throw"e";var D=Math.ceil(V*I*W/8);if(K==0){X=0.00390625;for(var L=0;L>3)]>>7-(N&7)&1;E[q]=E[q+1]=E[q+2]=(1-w)*255,E[q+3]=255}if(I==4)for(var N=0;N>1)]>>4-4*(N&1)&15;E[q]=E[q+1]=E[q+2]=(15-w)*17,E[q+3]=255}if(I==8)for(var N=0;N>3)]>>7-(N&7)&1;E[q]=E[q+1]=E[q+2]=w*255,E[q+3]=255}if(I==2)for(var N=0;N>2)]>>6-2*(N&3)&3;E[q]=E[q+1]=E[q+2]=w*85,E[q+3]=255}if(I==8)for(var N=0;N>>2)+N,w=_[P];E[q]=E[q+1]=E[q+2]=~~(0.5+255*w),E[q+3]=255}}}else if(K==2)if(I==8){if(V==1)for(var N=0;N=4)for(var N=0;N1&&C.t338&&C.t338[0]!=0;for(var L=0;L>>3)]>>>7-(n&7)&1;else if(I==2)i=$[p+(n>>>2)]>>>6-2*(n&3)&3;else if(I==4)i=$[p+(n>>>1)]>>>4-4*(n&1)&15;else if(I==8)i=$[p+n*V];else throw I;E[q]=h[i]>>8,E[q+1]=h[g+i]>>8,E[q+2]=h[g+g+i]>>8,E[q+3]=m?$[p+n*V+1]:255}}else if(K==5){var d=V>4?1:0;for(var N=0;N>>1),GA=$[x+(QA&1)],KA=$[x+2]-128,HA=$[x+3]-128,DA=GA+((HA>>2)+(HA>>3)+(HA>>5)),hA=GA-((KA>>2)+(KA>>4)+(KA>>5))-((HA>>1)+(HA>>3)+(HA>>4)+(HA>>5)),QQ=GA+(KA+(KA>>1)+(KA>>2)+(KA>>6));E[q]=Math.max(0,Math.min(255,DA)),E[q+1]=Math.max(0,Math.min(255,hA)),E[q+2]=Math.max(0,Math.min(255,QQ)),E[q+3]=255}}}else if(K==32845)for(var L=0;LW)W=$,F=U}Y.decodeImage(C,F,X);var E=Y.toRGBA8(F),K=F.width,I=F.height,V=document.createElement("canvas");V.width=K,V.height=I;var H=V.getContext("2d"),D=new ImageData(new Uint8ClampedArray(E.buffer),K,I);return H.putImageData(D,0,0),V.toDataURL()},Y._binBE={nextZero:function(C,X){while(C[X]!=0)X++;return X},readUshort:function(C,X){return C[X]<<8|C[X+1]},readShort:function(C,X){var G=Y._binBE.ui8;return G[0]=C[X+1],G[1]=C[X+0],Y._binBE.i16[0]},readInt:function(C,X){var G=Y._binBE.ui8;return G[0]=C[X+3],G[1]=C[X+2],G[2]=C[X+1],G[3]=C[X+0],Y._binBE.i32[0]},readUint:function(C,X){var G=Y._binBE.ui8;return G[0]=C[X+3],G[1]=C[X+2],G[2]=C[X+1],G[3]=C[X+0],Y._binBE.ui32[0]},readASCII:function(C,X,G){var W="";for(var F=0;F>8&255,C[X+1]=G&255},writeInt:function(C,X,G){var W=Y._binBE.ui8;Y._binBE.i32[0]=G,C[X+3]=W[0],C[X+2]=W[1],C[X+1]=W[2],C[X+0]=W[3]},writeUint:function(C,X,G){C[X]=G>>24&255,C[X+1]=G>>16&255,C[X+2]=G>>8&255,C[X+3]=G>>0&255},writeASCII:function(C,X,G){for(var W=0;W>8&255},writeInt:function(C,X,G){var W=Y._binBE.ui8;Y._binBE.i32[0]=G,C[X+0]=W[0],C[X+1]=W[1],C[X+2]=W[2],C[X+3]=W[3]},writeUint:function(C,X,G){C[X]=G>>>0&255,C[X+1]=G>>>8&255,C[X+2]=G>>>16&255,C[X+3]=G>>>24&255},writeASCII:Y._binBE.writeASCII},Y._copyTile=function(C,X,G,W,F,Z,U,$){var E=Math.min(X,F-U),K=Math.min(G,Z-$);for(var I=0;I>--S&1,y=q[y+h];T[_]=y}}function Z(M,N,q,w){if(M[N+3]!=255)return 0;if(q==0)return N;for(var P=0;P<2;P++){if(M[N+P]==0)M[N+P]=M.length,M.push(0,0,w,255);var _=Z(M,M[N+P],q-1,w+1);if(_!=0)return _}return 0}function U(M){var{b:N,f:q}=M;while(N<25&&M.a>(N.b-=M)&65535>>16-M}function E(M,N){var q=M[0],w=0,P=255,_=0;if(N.b<16)U(N);var j=N.f>>N.b-8&255;w=M[1][j],P=q[w+3],N.b-=q[w+2];while(P==255)_=N.f>>--N.b&1,w=q[w+_],P=q[w+3];return P}function K(M,N){if(M<32768>>16-N)M+=-(1<>4,n&15]}}else if(y==65476){var p=X+h-2;while(X>>4],_[x[0]]=x.slice(1)}q=G(),X+=2;break}else if(y==65501)P=W();else X+=h-2}var b=w>8?Uint16Array:Uint8Array,o=new b(S*v*T),GA={b:0,f:0,c:q==8,a:X,data:C,d:C.length,e:P};if(GA.c)D(o,v*T,GA,k[0],S);else{var VA=[],EA=0,UA=0;for(var g=0;gEA)EA=QA;if(KA>UA)UA=KA;VA.push(QA*KA)}if(EA!=1||UA!=1){if(T!=3||VA[1]!=1||VA[2]!=1)throw"e";if(EA!=2||UA!=1&&UA!=2)throw"e";var HA=[],DA=0;for(var g=0;g>>1)*QQ+(QA>>>1))*DA,ZQ=(KA&1)*2+(QA&1);o[vA]=TA[mA+ZQ],o[vA+1]=TA[mA+4],o[vA+2]=TA[mA+5]}else for(var QA=0;QA>>1))*DA,ZQ=QA&1;o[vA]=TA[mA+ZQ],o[vA+1]=TA[mA+2],o[vA+2]=TA[mA+3]}}else if(V(o,v*T,GA,k,T,S),P==0)z(o,q,v,S,0,T,T,w);else{var NQ=Math.floor(P/v);for(var KA=0;KA>>1);else if(N==6)i=M[m]+(n-M[m-j]>>>1);else if(N==7)i=n+M[m]>>>1;else throw N;M[g]+=i}}}return L}(),function(){var C=0,X=1,G=2,W=3,F=4,Z=5,U=6,$=7,E=8,K=9,I=10,V=11,H=12,D=13,L=14,z=15,M=16,N=17,q=18;function w(d){var x=Y._binBE.readUshort,b={b:x(d,0),i:d[2],C:d[3],u:d[4],q:x(d,5),k:x(d,7),e:x(d,9),l:x(d,11),s:d[13],d:x(d,14)};if(b.b!=18771||b.i>1||b.q<6||b.q%6||b.e<768||b.e%24||b.l!=768||b.k=b.l||b.s>16||b.s!=b.k/b.l||b.s!=Math.ceil(b.e/b.l)||b.d!=b.q/6||b.u!=12&&b.u!=14&&b.u!=16||b.C!=16&&b.C!=0)throw"Invalid data";if(b.i==0)throw"Not implemented. We need this file!";return b.h=b.C==16,b.m=(b.h?b.l*2/3:b.l>>>1)|0,b.A=b.m+2,b.f=64,b.g=(1<>>6);for(var o=0;o<3;o++)for(var GA=0;GA<41;GA++)x[o][GA]=[b,1];return x}function S(d){for(var x=-1,b=0;!b;x++)if(b=d[d.j]>>>7-d.a&1,d.a++,d.a&=7,!d.a)d.j++;return x}function v(d,x){var b=0,o=8-d.a,GA=d.j,VA=d.a;if(x){if(x>=o)do b<<=o,x-=o,b|=d[d.j]&(1<=8);if(x)b<<=x,o-=x,b|=d[d.j]>>>o&(1<IA&&LA>>2,UA){XA[CA]=jA;return}hA=x.t*x.c[d.g+vA-NA]+x.c[d.g+TA-vA]}else jA=vA>TA&&vA>mA||vA>>2:ZQ+NQ>>>1,hA=x.t*x.c[d.g+vA-TA]+x.c[d.g+TA-ZQ];QQ=CQ(hA);var tQ=S(b);if(tQ>>1):DA>>>1,EA[QQ][0]+=CQ(DA),EA[QQ][1]==d.f)EA[QQ][0]>>>=1,EA[QQ][1]>>>=1;if(EA[QQ][1]++,jA=hA<0?jA-DA:jA+DA,d.i){if(jA<0)jA+=x.w;else if(jA>d.g)jA-=x.w}XA[CA]=jA>=0?Math.min(jA,d.g):0}function g(d,x,b){var o=d[0].length;for(var GA=x;GA<=b;GA++)d[GA][0]=d[GA-1][1],d[GA][o-1]=d[GA-1][o-2]}function m(d){g(d,$,H),g(d,G,F),g(d,z,N)}function n(d,x,b,o,GA,VA,EA,UA,CA,QA,KA,HA,DA){var hA=0,QQ=1,XA=GAF;while(QQ8)h(d,x,b,o,GA,QQ,UA[CA]),h(d,x,b,o,VA,QQ,UA[CA]),QQ+=2}m(o)}function i(d,x,b,o,GA,VA){n(d,x,b,o,G,$,GA,VA,0,0,1,0,8),n(d,x,b,o,E,z,GA,VA,1,0,1,0,8),n(d,x,b,o,W,K,GA,VA,2,1,0,3,0),n(d,x,b,o,I,M,GA,VA,0,0,0,3,2),n(d,x,b,o,F,V,GA,VA,1,0,0,3,2),n(d,x,b,o,H,N,GA,VA,2,1,0,3,0)}function p(d,x,b,o,GA,VA){var EA=VA.length,UA=d.l;if(GA+1==d.s)UA=d.e-GA*d.l;var CA=6*d.e*o+GA*d.l;for(var QA=0;QA<6;QA++){for(var KA=0;KA>>1);else if(HA==2)DA=z+(QA>>>1);else DA=$+QA;var hA=d.h?(KA*2/3&2147483646|KA%3&1)+(KA%3>>>1):KA>>>1;x[CA+KA]=b[DA][hA+1]}CA+=d.e}}Y._decompressRAF=function(d,x){var b=w(d),o=P(d,b),GA=k(b),VA=new Int16Array(b.e*b.q);if(x==null)x=b.h?[[1,1,0,1,1,2],[1,1,2,1,1,0],[2,0,1,0,2,1],[1,1,2,1,1,0],[1,1,0,1,1,2],[0,2,1,2,0,1]]:[[0,1],[3,2]];var EA=[[C,W],[X,F],[Z,V],[U,H],[D,M],[L,N]],UA=[];for(var CA=0;CA{/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh */oBB.read=function(A,Q,B,Y,J){var C,X,G=J*8-Y-1,W=(1<>1,Z=-7,U=B?J-1:0,$=B?-1:1,E=A[Q+U];U+=$,C=E&(1<<-Z)-1,E>>=-Z,Z+=G;for(;Z>0;C=C*256+A[Q+U],U+=$,Z-=8);X=C&(1<<-Z)-1,C>>=-Z,Z+=Y;for(;Z>0;X=X*256+A[Q+U],U+=$,Z-=8);if(C===0)C=1-F;else if(C===W)return X?NaN:(E?-1:1)*(1/0);else X=X+Math.pow(2,Y),C=C-F;return(E?-1:1)*X*Math.pow(2,C-Y)};oBB.write=function(A,Q,B,Y,J,C){var X,G,W,F=C*8-J-1,Z=(1<>1,$=J===23?Math.pow(2,-24)-Math.pow(2,-77):0,E=Y?0:C-1,K=Y?1:-1,I=Q<0||Q===0&&1/Q<0?1:0;if(Q=Math.abs(Q),isNaN(Q)||Q===1/0)G=isNaN(Q)?1:0,X=Z;else{if(X=Math.floor(Math.log(Q)/Math.LN2),Q*(W=Math.pow(2,-X))<1)X--,W*=2;if(X+U>=1)Q+=$/W;else Q+=$*Math.pow(2,1-U);if(Q*W>=2)X++,W/=2;if(X+U>=Z)G=0,X=Z;else if(X+U>=1)G=(Q*W-1)*Math.pow(2,J),X=X+U;else G=Q*Math.pow(2,U-1)*Math.pow(2,J),X=0}for(;J>=8;A[B+E]=G&255,E+=K,G/=256,J-=8);X=X<0;A[B+E]=X&255,E+=K,X/=256,F-=8);A[B+E-K]|=I*128}});var p7A=R((u7A)=>{Object.defineProperty(u7A,"__esModule",{value:!0});u7A.AnsiStringType=u7A.StringType=u7A.BufferType=u7A.Uint8ArrayType=u7A.IgnoreType=u7A.Float80_LE=u7A.Float80_BE=u7A.Float64_LE=u7A.Float64_BE=u7A.Float32_LE=u7A.Float32_BE=u7A.Float16_LE=u7A.Float16_BE=u7A.INT64_BE=u7A.UINT64_BE=u7A.INT64_LE=u7A.UINT64_LE=u7A.INT32_LE=u7A.INT32_BE=u7A.INT24_BE=u7A.INT24_LE=u7A.INT16_LE=u7A.INT16_BE=u7A.INT8=u7A.UINT32_BE=u7A.UINT32_LE=u7A.UINT24_BE=u7A.UINT24_LE=u7A.UINT16_BE=u7A.UINT16_LE=u7A.UINT8=void 0;var _7=h7A();function iQ(A){return new DataView(A.buffer,A.byteOffset)}u7A.UINT8={len:1,get(A,Q){return iQ(A).getUint8(Q)},put(A,Q,B){return iQ(A).setUint8(Q,B),Q+1}};u7A.UINT16_LE={len:2,get(A,Q){return iQ(A).getUint16(Q,!0)},put(A,Q,B){return iQ(A).setUint16(Q,B,!0),Q+2}};u7A.UINT16_BE={len:2,get(A,Q){return iQ(A).getUint16(Q)},put(A,Q,B){return iQ(A).setUint16(Q,B),Q+2}};u7A.UINT24_LE={len:3,get(A,Q){let B=iQ(A);return B.getUint8(Q)+(B.getUint16(Q+1,!0)<<8)},put(A,Q,B){let Y=iQ(A);return Y.setUint8(Q,B&255),Y.setUint16(Q+1,B>>8,!0),Q+3}};u7A.UINT24_BE={len:3,get(A,Q){let B=iQ(A);return(B.getUint16(Q)<<8)+B.getUint8(Q+2)},put(A,Q,B){let Y=iQ(A);return Y.setUint16(Q,B>>8),Y.setUint8(Q+2,B&255),Q+3}};u7A.UINT32_LE={len:4,get(A,Q){return iQ(A).getUint32(Q,!0)},put(A,Q,B){return iQ(A).setUint32(Q,B,!0),Q+4}};u7A.UINT32_BE={len:4,get(A,Q){return iQ(A).getUint32(Q)},put(A,Q,B){return iQ(A).setUint32(Q,B),Q+4}};u7A.INT8={len:1,get(A,Q){return iQ(A).getInt8(Q)},put(A,Q,B){return iQ(A).setInt8(Q,B),Q+1}};u7A.INT16_BE={len:2,get(A,Q){return iQ(A).getInt16(Q)},put(A,Q,B){return iQ(A).setInt16(Q,B),Q+2}};u7A.INT16_LE={len:2,get(A,Q){return iQ(A).getInt16(Q,!0)},put(A,Q,B){return iQ(A).setInt16(Q,B,!0),Q+2}};u7A.INT24_LE={len:3,get(A,Q){let B=u7A.UINT24_LE.get(A,Q);return B>8388607?B-16777216:B},put(A,Q,B){let Y=iQ(A);return Y.setUint8(Q,B&255),Y.setUint16(Q+1,B>>8,!0),Q+3}};u7A.INT24_BE={len:3,get(A,Q){let B=u7A.UINT24_BE.get(A,Q);return B>8388607?B-16777216:B},put(A,Q,B){let Y=iQ(A);return Y.setUint16(Q,B>>8),Y.setUint8(Q+2,B&255),Q+3}};u7A.INT32_BE={len:4,get(A,Q){return iQ(A).getInt32(Q)},put(A,Q,B){return iQ(A).setInt32(Q,B),Q+4}};u7A.INT32_LE={len:4,get(A,Q){return iQ(A).getInt32(Q,!0)},put(A,Q,B){return iQ(A).setInt32(Q,B,!0),Q+4}};u7A.UINT64_LE={len:8,get(A,Q){return iQ(A).getBigUint64(Q,!0)},put(A,Q,B){return iQ(A).setBigUint64(Q,B,!0),Q+8}};u7A.INT64_LE={len:8,get(A,Q){return iQ(A).getBigInt64(Q,!0)},put(A,Q,B){return iQ(A).setBigInt64(Q,B,!0),Q+8}};u7A.UINT64_BE={len:8,get(A,Q){return iQ(A).getBigUint64(Q)},put(A,Q,B){return iQ(A).setBigUint64(Q,B),Q+8}};u7A.INT64_BE={len:8,get(A,Q){return iQ(A).getBigInt64(Q)},put(A,Q,B){return iQ(A).setBigInt64(Q,B),Q+8}};u7A.Float16_BE={len:2,get(A,Q){return _7.read(A,Q,!1,10,this.len)},put(A,Q,B){return _7.write(A,B,Q,!1,10,this.len),Q+this.len}};u7A.Float16_LE={len:2,get(A,Q){return _7.read(A,Q,!0,10,this.len)},put(A,Q,B){return _7.write(A,B,Q,!0,10,this.len),Q+this.len}};u7A.Float32_BE={len:4,get(A,Q){return iQ(A).getFloat32(Q)},put(A,Q,B){return iQ(A).setFloat32(Q,B),Q+4}};u7A.Float32_LE={len:4,get(A,Q){return iQ(A).getFloat32(Q,!0)},put(A,Q,B){return iQ(A).setFloat32(Q,B,!0),Q+4}};u7A.Float64_BE={len:8,get(A,Q){return iQ(A).getFloat64(Q)},put(A,Q,B){return iQ(A).setFloat64(Q,B),Q+8}};u7A.Float64_LE={len:8,get(A,Q){return iQ(A).getFloat64(Q,!0)},put(A,Q,B){return iQ(A).setFloat64(Q,B,!0),Q+8}};u7A.Float80_BE={len:10,get(A,Q){return _7.read(A,Q,!1,63,this.len)},put(A,Q,B){return _7.write(A,B,Q,!1,63,this.len),Q+this.len}};u7A.Float80_LE={len:10,get(A,Q){return _7.read(A,Q,!0,63,this.len)},put(A,Q,B){return _7.write(A,B,Q,!0,63,this.len),Q+this.len}};class x7A{constructor(A){this.len=A}get(A,Q){}}u7A.IgnoreType=x7A;class f7A{constructor(A){this.len=A}get(A,Q){return A.subarray(Q,Q+this.len)}}u7A.Uint8ArrayType=f7A;class b7A{constructor(A){this.len=A}get(A,Q){return Buffer.from(A.subarray(Q,Q+this.len))}}u7A.BufferType=b7A;class m7A{constructor(A,Q){this.len=A,this.encoding=Q}get(A,Q){return Buffer.from(A).toString(this.encoding,Q,Q+this.len)}}u7A.StringType=m7A;class k7{constructor(A){this.len=A}static decode(A,Q,B){let Y="";for(let J=Q;J>10)+55296,(A&1023)+56320)}static singleByteDecoder(A){if(k7.inRange(A,0,127))return A;let Q=k7.windows1252[A-128];if(Q===null)throw Error("invaliding encoding");return Q}get(A,Q=0){return k7.decode(A,Q,Q+this.len)}}u7A.AnsiStringType=k7;k7.windows1252=[8364,129,8218,402,8222,8230,8224,8225,710,8240,352,8249,338,141,381,143,144,8216,8217,8220,8221,8226,8211,8212,732,8482,353,8250,339,157,382,376,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255]});var yR=R((n7A)=>{Object.defineProperty(n7A,"__esModule",{value:!0});n7A.EndOfStreamError=n7A.defaultMessages=void 0;n7A.defaultMessages="End-Of-Stream";class i7A extends Error{constructor(){super(n7A.defaultMessages)}}n7A.EndOfStreamError=i7A});var e7A=R((o7A)=>{Object.defineProperty(o7A,"__esModule",{value:!0});o7A.Deferred=void 0;class a7A{constructor(){this.resolve=()=>null,this.reject=()=>null,this.promise=new Promise((A,Q)=>{this.reject=Q,this.resolve=A})}}o7A.Deferred=a7A});var YWA=R((Kf)=>{Object.defineProperty(Kf,"__esModule",{value:!0});Kf.StreamReader=Kf.EndOfStreamError=void 0;var AWA=yR(),P0B=e7A(),T0B=yR();Object.defineProperty(Kf,"EndOfStreamError",{enumerable:!0,get:function(){return T0B.EndOfStreamError}});var S0B=1048576;class QWA{constructor(A){if(this.s=A,this.deferred=null,this.endOfStream=!1,this.peekQueue=[],!A.read||!A.once)throw Error("Expected an instance of stream.Readable");this.s.once("end",()=>this.reject(new AWA.EndOfStreamError)),this.s.once("error",(Q)=>this.reject(Q)),this.s.once("close",()=>this.reject(Error("Stream closed")))}async peek(A,Q,B){let Y=await this.read(A,Q,B);return this.peekQueue.push(A.subarray(Q,Q+Y)),Y}async read(A,Q,B){if(B===0)return 0;if(this.peekQueue.length===0&&this.endOfStream)throw new AWA.EndOfStreamError;let Y=B,J=0;while(this.peekQueue.length>0&&Y>0){let C=this.peekQueue.pop();if(!C)throw Error("peekData should be defined");let X=Math.min(C.length,Y);if(A.set(C.subarray(0,X),Q+J),J+=X,Y-=X,X0&&!this.endOfStream){let C=Math.min(Y,S0B),X=await this.readFromStream(A,Q+J,C);if(J+=X,X{this.readDeferred(J)}),J.deferred.promise}}readDeferred(A){let Q=this.s.read(A.length);if(Q)A.buffer.set(Q,A.offset),A.deferred.resolve(Q.length),this.deferred=null;else this.s.once("readable",()=>{this.readDeferred(A)})}reject(A){if(this.endOfStream=!0,this.deferred)this.deferred.reject(A),this.deferred=null}}Kf.StreamReader=QWA});var oH=R((gR)=>{Object.defineProperty(gR,"__esModule",{value:!0});gR.StreamReader=gR.EndOfStreamError=void 0;var k0B=yR();Object.defineProperty(gR,"EndOfStreamError",{enumerable:!0,get:function(){return k0B.EndOfStreamError}});var _0B=YWA();Object.defineProperty(gR,"StreamReader",{enumerable:!0,get:function(){return _0B.StreamReader}})});var Vf=R((CWA)=>{Object.defineProperty(CWA,"__esModule",{value:!0});CWA.AbstractTokenizer=void 0;var hR=oH();class JWA{constructor(A){this.position=0,this.numBuffer=new Uint8Array(8),this.fileInfo=A?A:{}}async readToken(A,Q=this.position){let B=Buffer.alloc(A.len);if(await this.readBuffer(B,{position:Q})Q)return this.position+=Q,Q}return this.position+=A,A}async close(){}normalizeOptions(A,Q){if(Q&&Q.position!==void 0&&Q.position{Object.defineProperty(WWA,"__esModule",{value:!0});WWA.ReadStreamTokenizer=void 0;var y0B=Vf(),xR=oH(),g0B=256000;class GWA extends y0B.AbstractTokenizer{constructor(A,Q){super(Q);this.streamReader=new xR.StreamReader(A)}async getFileInfo(){return this.fileInfo}async readBuffer(A,Q){let B=this.normalizeOptions(A,Q),Y=B.position-this.position;if(Y>0)return await this.ignore(Y),this.readBuffer(A,Q);else if(Y<0)throw Error("`options.position` must be equal or greater than `tokenizer.position`");if(B.length===0)return 0;let J=await this.streamReader.read(A,B.offset,B.length);if(this.position+=J,(!Q||!Q.mayBeLess)&&J0){let C=new Uint8Array(B.length+J);return Y=await this.peekBuffer(C,{mayBeLess:B.mayBeLess}),A.set(C.subarray(J),B.offset),Y-J}else if(J<0)throw Error("Cannot peek from a negative offset in a stream")}if(B.length>0){try{Y=await this.streamReader.peek(A,B.offset,B.length)}catch(J){if(Q&&Q.mayBeLess&&J instanceof xR.EndOfStreamError)return 0;throw J}if(!B.mayBeLess&&Y{Object.defineProperty(UWA,"__esModule",{value:!0});UWA.BufferTokenizer=void 0;var h0B=oH(),x0B=Vf();class $WA extends x0B.AbstractTokenizer{constructor(A,Q){super(Q);this.uint8Array=A,this.fileInfo.size=this.fileInfo.size?this.fileInfo.size:A.length}async readBuffer(A,Q){if(Q&&Q.position){if(Q.position{Object.defineProperty(If,"__esModule",{value:!0});If.fromBuffer=If.fromStream=If.EndOfStreamError=void 0;var f0B=ZWA(),b0B=KWA(),m0B=oH();Object.defineProperty(If,"EndOfStreamError",{enumerable:!0,get:function(){return m0B.EndOfStreamError}});function u0B(A,Q){return Q=Q?Q:{},new f0B.ReadStreamTokenizer(A,Q)}If.fromStream=u0B;function d0B(A,Q){return new b0B.BufferTokenizer(A,Q)}If.fromBuffer=d0B});var HWA=R((l0B)=>{l0B.stringToBytes=(A)=>[...A].map((Q)=>Q.charCodeAt(0));l0B.tarHeaderChecksumMatches=(A,Q=0)=>{let B=parseInt(A.toString("utf8",148,154).replace(/\0.*$/,"").trim(),8);if(isNaN(B))return!1;let Y=256;for(let J=Q;J{return A[Q+3]&127|A[Q+2]<<7|A[Q+1]<<14|A[Q]<<21},len:4}});var NWA=R((MFY,DWA)=>{DWA.exports={extensions:["jpg","png","apng","gif","webp","flif","xcf","cr2","cr3","orf","arw","dng","nef","rw2","raf","tif","bmp","icns","jxr","psd","indd","zip","tar","rar","gz","bz2","7z","dmg","mp4","mid","mkv","webm","mov","avi","mpg","mp2","mp3","m4a","oga","ogg","ogv","opus","flac","wav","spx","amr","pdf","epub","exe","swf","rtf","wasm","woff","woff2","eot","ttf","otf","ico","flv","ps","xz","sqlite","nes","crx","xpi","cab","deb","ar","rpm","Z","lz","cfb","mxf","mts","blend","bpg","docx","pptx","xlsx","3gp","3g2","jp2","jpm","jpx","mj2","aif","qcp","odt","ods","odp","xml","mobi","heic","cur","ktx","ape","wv","dcm","ics","glb","pcap","dsf","lnk","alias","voc","ac3","m4v","m4p","m4b","f4v","f4p","f4b","f4a","mie","asf","ogm","ogx","mpc","arrow","shp","aac","mp1","it","s3m","xm","ai","skp","avif","eps","lzh","pgp","asar","stl","chm","3mf","zst","jxl","vcf"],mimeTypes:["image/jpeg","image/png","image/gif","image/webp","image/flif","image/x-xcf","image/x-canon-cr2","image/x-canon-cr3","image/tiff","image/bmp","image/vnd.ms-photo","image/vnd.adobe.photoshop","application/x-indesign","application/epub+zip","application/x-xpinstall","application/vnd.oasis.opendocument.text","application/vnd.oasis.opendocument.spreadsheet","application/vnd.oasis.opendocument.presentation","application/vnd.openxmlformats-officedocument.wordprocessingml.document","application/vnd.openxmlformats-officedocument.presentationml.presentation","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet","application/zip","application/x-tar","application/x-rar-compressed","application/gzip","application/x-bzip2","application/x-7z-compressed","application/x-apple-diskimage","application/x-apache-arrow","video/mp4","audio/midi","video/x-matroska","video/webm","video/quicktime","video/vnd.avi","audio/vnd.wave","audio/qcelp","audio/x-ms-asf","video/x-ms-asf","application/vnd.ms-asf","video/mpeg","video/3gpp","audio/mpeg","audio/mp4","audio/opus","video/ogg","audio/ogg","application/ogg","audio/x-flac","audio/ape","audio/wavpack","audio/amr","application/pdf","application/x-msdownload","application/x-shockwave-flash","application/rtf","application/wasm","font/woff","font/woff2","application/vnd.ms-fontobject","font/ttf","font/otf","image/x-icon","video/x-flv","application/postscript","application/eps","application/x-xz","application/x-sqlite3","application/x-nintendo-nes-rom","application/x-google-chrome-extension","application/vnd.ms-cab-compressed","application/x-deb","application/x-unix-archive","application/x-rpm","application/x-compress","application/x-lzip","application/x-cfb","application/x-mie","application/mxf","video/mp2t","application/x-blender","image/bpg","image/jp2","image/jpx","image/jpm","image/mj2","audio/aiff","application/xml","application/x-mobipocket-ebook","image/heif","image/heif-sequence","image/heic","image/heic-sequence","image/icns","image/ktx","application/dicom","audio/x-musepack","text/calendar","text/vcard","model/gltf-binary","application/vnd.tcpdump.pcap","audio/x-dsf","application/x.ms.shortcut","application/x.apple.alias","audio/x-voc","audio/vnd.dolby.dd-raw","audio/x-m4a","image/apng","image/x-olympus-orf","image/x-sony-arw","image/x-adobe-dng","image/x-nikon-nef","image/x-panasonic-rw2","image/x-fujifilm-raf","video/x-m4v","video/3gpp2","application/x-esri-shape","audio/aac","audio/x-it","audio/x-s3m","audio/x-xm","video/MP1S","video/MP2P","application/vnd.sketchup.skp","image/avif","application/x-lzh-compressed","application/pgp-encrypted","application/x-asar","model/stl","application/vnd.ms-htmlhelp","model/3mf","image/jxl","application/zstd"]}});var zWA=R((MWA,Df)=>{var h6=p7A(),fR=IWA(),{stringToBytes:s0B,tarHeaderChecksumMatches:r0B,uint32SyncSafeToken:a0B}=HWA(),LWA=NWA(),zFY=4100;async function o0B(A){let Q=await fR.fromStream(A);try{return await bR(Q)}finally{await Q.close()}}async function qWA(A){if(!(A instanceof Uint8Array||A instanceof ArrayBuffer||Buffer.isBuffer(A)))throw TypeError(`Expected the \`input\` argument to be of type \`Uint8Array\` or \`Buffer\` or \`ArrayBuffer\`, got \`${typeof A}\``);let Q=A instanceof Buffer?A:Buffer.from(A);if(!(Q&&Q.length>1))return;let B=fR.fromBuffer(Q);return bR(B)}function o1(A,Q,B){B={offset:0,...B};for(let[Y,J]of Q.entries())if(B.mask){if(J!==(B.mask[Y]&A[Y+B.offset]))return!1}else if(J!==A[Y+B.offset])return!1;return!0}async function bR(A){try{return t0B(A)}catch(Q){if(!(Q instanceof fR.EndOfStreamError))throw Q}}async function t0B(A){let Q=Buffer.alloc(4100),B=12,Y=(C,X)=>o1(Q,C,X),J=(C,X)=>Y(s0B(C),X);if(!A.fileInfo.size)A.fileInfo.size=Number.MAX_SAFE_INTEGER;if(await A.peekBuffer(Q,{length:B,mayBeLess:!0}),Y([66,77]))return{ext:"bmp",mime:"image/bmp"};if(Y([11,119]))return{ext:"ac3",mime:"audio/vnd.dolby.dd-raw"};if(Y([120,1]))return{ext:"dmg",mime:"application/x-apple-diskimage"};if(Y([77,90]))return{ext:"exe",mime:"application/x-msdownload"};if(Y([37,33])){if(await A.peekBuffer(Q,{length:24,mayBeLess:!0}),J("PS-Adobe-",{offset:2})&&J(" EPSF-",{offset:14}))return{ext:"eps",mime:"application/eps"};return{ext:"ps",mime:"application/postscript"}}if(Y([31,160])||Y([31,157]))return{ext:"Z",mime:"application/x-compress"};if(Y([255,216,255]))return{ext:"jpg",mime:"image/jpeg"};if(Y([73,73,188]))return{ext:"jxr",mime:"image/vnd.ms-photo"};if(Y([31,139,8]))return{ext:"gz",mime:"application/gzip"};if(Y([66,90,104]))return{ext:"bz2",mime:"application/x-bzip2"};if(J("ID3")){await A.ignore(6);let C=await A.readToken(a0B);if(A.position+C>A.fileInfo.size)return{ext:"mp3",mime:"audio/mpeg"};return await A.ignore(C),bR(A)}if(J("MP+"))return{ext:"mpc",mime:"audio/x-musepack"};if((Q[0]===67||Q[0]===70)&&Y([87,83],{offset:1}))return{ext:"swf",mime:"application/x-shockwave-flash"};if(Y([71,73,70]))return{ext:"gif",mime:"image/gif"};if(J("FLIF"))return{ext:"flif",mime:"image/flif"};if(J("8BPS"))return{ext:"psd",mime:"image/vnd.adobe.photoshop"};if(J("WEBP",{offset:8}))return{ext:"webp",mime:"image/webp"};if(J("MPCK"))return{ext:"mpc",mime:"audio/x-musepack"};if(J("FORM"))return{ext:"aif",mime:"audio/aiff"};if(J("icns",{offset:0}))return{ext:"icns",mime:"image/icns"};if(Y([80,75,3,4])){try{while(A.position+30=0?X:Q.length)}else await A.ignore(C.compressedSize)}}catch(C){if(!(C instanceof fR.EndOfStreamError))throw C}return{ext:"zip",mime:"application/zip"}}if(J("OggS")){await A.ignore(28);let C=Buffer.alloc(8);if(await A.readBuffer(C),o1(C,[79,112,117,115,72,101,97,100]))return{ext:"opus",mime:"audio/opus"};if(o1(C,[128,116,104,101,111,114,97]))return{ext:"ogv",mime:"video/ogg"};if(o1(C,[1,118,105,100,101,111,0]))return{ext:"ogm",mime:"video/ogg"};if(o1(C,[127,70,76,65,67]))return{ext:"oga",mime:"audio/ogg"};if(o1(C,[83,112,101,101,120,32,32]))return{ext:"spx",mime:"audio/ogg"};if(o1(C,[1,118,111,114,98,105,115]))return{ext:"ogg",mime:"audio/ogg"};return{ext:"ogx",mime:"application/ogg"}}if(Y([80,75])&&(Q[2]===3||Q[2]===5||Q[2]===7)&&(Q[3]===4||Q[3]===6||Q[3]===8))return{ext:"zip",mime:"application/zip"};if(J("ftyp",{offset:4})&&(Q[8]&96)!==0){let C=Q.toString("binary",8,12).replace("\x00"," ").trim();switch(C){case"avif":return{ext:"avif",mime:"image/avif"};case"mif1":return{ext:"heic",mime:"image/heif"};case"msf1":return{ext:"heic",mime:"image/heif-sequence"};case"heic":case"heix":return{ext:"heic",mime:"image/heic"};case"hevc":case"hevx":return{ext:"heic",mime:"image/heic-sequence"};case"qt":return{ext:"mov",mime:"video/quicktime"};case"M4V":case"M4VH":case"M4VP":return{ext:"m4v",mime:"video/x-m4v"};case"M4P":return{ext:"m4p",mime:"video/mp4"};case"M4B":return{ext:"m4b",mime:"audio/mp4"};case"M4A":return{ext:"m4a",mime:"audio/x-m4a"};case"F4V":return{ext:"f4v",mime:"video/mp4"};case"F4P":return{ext:"f4p",mime:"video/mp4"};case"F4A":return{ext:"f4a",mime:"audio/mp4"};case"F4B":return{ext:"f4b",mime:"audio/mp4"};case"crx":return{ext:"cr3",mime:"image/x-canon-cr3"};default:if(C.startsWith("3g")){if(C.startsWith("3g2"))return{ext:"3g2",mime:"video/3gpp2"};return{ext:"3gp",mime:"video/3gpp"}}return{ext:"mp4",mime:"video/mp4"}}}if(J("MThd"))return{ext:"mid",mime:"audio/midi"};if(J("wOFF")&&(Y([0,1,0,0],{offset:4})||J("OTTO",{offset:4})))return{ext:"woff",mime:"font/woff"};if(J("wOF2")&&(Y([0,1,0,0],{offset:4})||J("OTTO",{offset:4})))return{ext:"woff2",mime:"font/woff2"};if(Y([212,195,178,161])||Y([161,178,195,212]))return{ext:"pcap",mime:"application/vnd.tcpdump.pcap"};if(J("DSD "))return{ext:"dsf",mime:"audio/x-dsf"};if(J("LZIP"))return{ext:"lz",mime:"application/x-lzip"};if(J("fLaC"))return{ext:"flac",mime:"audio/x-flac"};if(Y([66,80,71,251]))return{ext:"bpg",mime:"image/bpg"};if(J("wvpk"))return{ext:"wv",mime:"audio/wavpack"};if(J("%PDF")){await A.ignore(1350);let C=10485760,X=Buffer.alloc(Math.min(C,A.fileInfo.size));if(await A.readBuffer(X,{mayBeLess:!0}),X.includes(Buffer.from("AIPrivateData")))return{ext:"ai",mime:"application/postscript"};return{ext:"pdf",mime:"application/pdf"}}if(Y([0,97,115,109]))return{ext:"wasm",mime:"application/wasm"};if(Y([73,73,42,0])){if(J("CR",{offset:8}))return{ext:"cr2",mime:"image/x-canon-cr2"};if(Y([28,0,254,0],{offset:8})||Y([31,0,11,0],{offset:8}))return{ext:"nef",mime:"image/x-nikon-nef"};if(Y([8,0,0,0],{offset:4})&&(Y([45,0,254,0],{offset:8})||Y([39,0,254,0],{offset:8})))return{ext:"dng",mime:"image/x-adobe-dng"};if(Q=Buffer.alloc(24),await A.peekBuffer(Q),(Y([16,251,134,1],{offset:4})||Y([8,0,0,0],{offset:4}))&&Y([0,254,0,4,0,1,0,0,0,1,0,0,0,3,1],{offset:9}))return{ext:"arw",mime:"image/x-sony-arw"};return{ext:"tif",mime:"image/tiff"}}if(Y([77,77,0,42]))return{ext:"tif",mime:"image/tiff"};if(J("MAC "))return{ext:"ape",mime:"audio/ape"};if(Y([26,69,223,163])){async function C(){let Z=await A.peekNumber(h6.UINT8),U=128,$=0;while((Z&U)===0&&U!==0)++$,U>>=1;let E=Buffer.alloc($+1);return await A.readBuffer(E),E}async function X(){let Z=await C(),U=await C();U[0]^=128>>U.length-1;let $=Math.min(6,U.length);return{id:Z.readUIntBE(0,Z.length),len:U.readUIntBE(U.length-$,$)}}async function G(Z,U){while(U>0){let $=await X();if($.id===17026)return A.readToken(new h6.StringType($.len,"utf-8"));await A.ignore($.len),--U}}let W=await X();switch(await G(1,W.len)){case"webm":return{ext:"webm",mime:"video/webm"};case"matroska":return{ext:"mkv",mime:"video/x-matroska"};default:return}}if(Y([82,73,70,70])){if(Y([65,86,73],{offset:8}))return{ext:"avi",mime:"video/vnd.avi"};if(Y([87,65,86,69],{offset:8}))return{ext:"wav",mime:"audio/vnd.wave"};if(Y([81,76,67,77],{offset:8}))return{ext:"qcp",mime:"audio/qcelp"}}if(J("SQLi"))return{ext:"sqlite",mime:"application/x-sqlite3"};if(Y([78,69,83,26]))return{ext:"nes",mime:"application/x-nintendo-nes-rom"};if(J("Cr24"))return{ext:"crx",mime:"application/x-google-chrome-extension"};if(J("MSCF")||J("ISc("))return{ext:"cab",mime:"application/vnd.ms-cab-compressed"};if(Y([237,171,238,219]))return{ext:"rpm",mime:"application/x-rpm"};if(Y([197,208,211,198]))return{ext:"eps",mime:"application/eps"};if(Y([40,181,47,253]))return{ext:"zst",mime:"application/zstd"};if(Y([79,84,84,79,0]))return{ext:"otf",mime:"font/otf"};if(J("#!AMR"))return{ext:"amr",mime:"audio/amr"};if(J("{\\rtf"))return{ext:"rtf",mime:"application/rtf"};if(Y([70,76,86,1]))return{ext:"flv",mime:"video/x-flv"};if(J("IMPM"))return{ext:"it",mime:"audio/x-it"};if(J("-lh0-",{offset:2})||J("-lh1-",{offset:2})||J("-lh2-",{offset:2})||J("-lh3-",{offset:2})||J("-lh4-",{offset:2})||J("-lh5-",{offset:2})||J("-lh6-",{offset:2})||J("-lh7-",{offset:2})||J("-lzs-",{offset:2})||J("-lz4-",{offset:2})||J("-lz5-",{offset:2})||J("-lhd-",{offset:2}))return{ext:"lzh",mime:"application/x-lzh-compressed"};if(Y([0,0,1,186])){if(Y([33],{offset:4,mask:[241]}))return{ext:"mpg",mime:"video/MP1S"};if(Y([68],{offset:4,mask:[196]}))return{ext:"mpg",mime:"video/MP2P"}}if(J("ITSF"))return{ext:"chm",mime:"application/vnd.ms-htmlhelp"};if(Y([253,55,122,88,90,0]))return{ext:"xz",mime:"application/x-xz"};if(J("")){if(await A.ignore(8),await A.readToken(new h6.StringType(13,"ascii"))==="debian-binary")return{ext:"deb",mime:"application/x-deb"};return{ext:"ar",mime:"application/x-unix-archive"}}if(Y([137,80,78,71,13,10,26,10])){await A.ignore(8);async function C(){return{length:await A.readToken(h6.INT32_BE),type:await A.readToken(new h6.StringType(4,"binary"))}}do{let X=await C();if(X.length<0)return;switch(X.type){case"IDAT":return{ext:"png",mime:"image/png"};case"acTL":return{ext:"apng",mime:"image/apng"};default:await A.ignore(X.length+4)}}while(A.position+8=16){let C=Q.readUInt32LE(12);if(C>12&&Q.length>=C+16)try{let X=Q.slice(16,C+16).toString();if(JSON.parse(X).files)return{ext:"asar",mime:"application/x-asar"}}catch(X){}}if(Y([6,14,43,52,2,5,1,1,13,1,2,1,1,2]))return{ext:"mxf",mime:"application/mxf"};if(J("SCRM",{offset:44}))return{ext:"s3m",mime:"audio/x-s3m"};if(Y([71],{offset:4})&&(Y([71],{offset:192})||Y([71],{offset:196})))return{ext:"mts",mime:"video/mp2t"};if(Y([66,79,79,75,77,79,66,73],{offset:60}))return{ext:"mobi",mime:"application/x-mobipocket-ebook"};if(Y([68,73,67,77],{offset:128}))return{ext:"dcm",mime:"application/dicom"};if(Y([76,0,0,0,1,20,2,0,0,0,0,0,192,0,0,0,0,0,0,70]))return{ext:"lnk",mime:"application/x.ms.shortcut"};if(Y([98,111,111,107,0,0,0,0,109,97,114,107,0,0,0,0]))return{ext:"alias",mime:"application/x.apple.alias"};if(Y([76,80],{offset:34})&&(Y([0,0,1],{offset:8})||Y([1,0,2],{offset:8})||Y([2,0,2],{offset:8})))return{ext:"eot",mime:"application/vnd.ms-fontobject"};if(Y([6,6,237,245,216,29,70,229,189,49,239,231,254,116,183,29]))return{ext:"indd",mime:"application/x-indesign"};if(await A.peekBuffer(Q,{length:Math.min(512,A.fileInfo.size),mayBeLess:!0}),r0B(Q))return{ext:"tar",mime:"application/x-tar"};if(Y([255,254,255,14,83,0,107,0,101,0,116,0,99,0,104,0,85,0,112,0,32,0,77,0,111,0,100,0,101,0,108,0]))return{ext:"skp",mime:"application/vnd.sketchup.skp"};if(J("-----BEGIN PGP MESSAGE-----"))return{ext:"pgp",mime:"application/pgp-encrypted"};if(Q.length>=2&&Y([255,224],{offset:0,mask:[255,224]})){if(Y([16],{offset:1,mask:[22]})){if(Y([8],{offset:1,mask:[8]}))return{ext:"aac",mime:"audio/aac"};return{ext:"aac",mime:"audio/aac"}}if(Y([2],{offset:1,mask:[6]}))return{ext:"mp3",mime:"audio/mpeg"};if(Y([4],{offset:1,mask:[6]}))return{ext:"mp2",mime:"audio/mpeg"};if(Y([6],{offset:1,mask:[6]}))return{ext:"mp1",mime:"audio/mpeg"}}}var e0B=(readableStream)=>new Promise((resolve,reject)=>{let stream=eval("require")("stream");readableStream.on("error",reject),readableStream.once("readable",async()=>{let A=new stream.PassThrough,Q;if(stream.pipeline)Q=stream.pipeline(readableStream,A,()=>{});else Q=readableStream.pipe(A);let B=readableStream.read(4100)||readableStream.read()||Buffer.alloc(0);try{let Y=await qWA(B);A.fileType=Y}catch(Y){reject(Y)}resolve(Q)})}),Hf={fromStream:o0B,fromTokenizer:bR,fromBuffer:qWA,stream:e0B};Object.defineProperty(Hf,"extensions",{get(){return new Set(LWA.extensions)}});Object.defineProperty(Hf,"mimeTypes",{get(){return new Set(LWA.mimeTypes)}});Df.exports=Hf});var wWA=R((mR,RWA)=>{(function(A,Q){typeof mR==="object"&&typeof RWA<"u"?Q(mR):typeof define==="function"&&define.amd?define(["exports"],Q):Q(A.awaitToJs={})})(mR,function(A){function Q(B,Y){return B.then(function(J){return[null,J]}).catch(function(J){if(Y)Object.assign(J,Y);return[J,void 0]})}A.to=Q,A.default=Q,Object.defineProperty(A,"__esModule",{value:!0})})});var kWA=R((OFY,SWA)=>{function uR(){this._types=Object.create(null),this._extensions=Object.create(null);for(let A=0;A{_WA.exports={"application/andrew-inset":["ez"],"application/applixware":["aw"],"application/atom+xml":["atom"],"application/atomcat+xml":["atomcat"],"application/atomdeleted+xml":["atomdeleted"],"application/atomsvc+xml":["atomsvc"],"application/atsc-dwd+xml":["dwd"],"application/atsc-held+xml":["held"],"application/atsc-rsat+xml":["rsat"],"application/bdoc":["bdoc"],"application/calendar+xml":["xcs"],"application/ccxml+xml":["ccxml"],"application/cdfx+xml":["cdfx"],"application/cdmi-capability":["cdmia"],"application/cdmi-container":["cdmic"],"application/cdmi-domain":["cdmid"],"application/cdmi-object":["cdmio"],"application/cdmi-queue":["cdmiq"],"application/cu-seeme":["cu"],"application/dash+xml":["mpd"],"application/davmount+xml":["davmount"],"application/docbook+xml":["dbk"],"application/dssc+der":["dssc"],"application/dssc+xml":["xdssc"],"application/ecmascript":["es","ecma"],"application/emma+xml":["emma"],"application/emotionml+xml":["emotionml"],"application/epub+zip":["epub"],"application/exi":["exi"],"application/express":["exp"],"application/fdt+xml":["fdt"],"application/font-tdpfr":["pfr"],"application/geo+json":["geojson"],"application/gml+xml":["gml"],"application/gpx+xml":["gpx"],"application/gxf":["gxf"],"application/gzip":["gz"],"application/hjson":["hjson"],"application/hyperstudio":["stk"],"application/inkml+xml":["ink","inkml"],"application/ipfix":["ipfix"],"application/its+xml":["its"],"application/java-archive":["jar","war","ear"],"application/java-serialized-object":["ser"],"application/java-vm":["class"],"application/javascript":["js","mjs"],"application/json":["json","map"],"application/json5":["json5"],"application/jsonml+json":["jsonml"],"application/ld+json":["jsonld"],"application/lgr+xml":["lgr"],"application/lost+xml":["lostxml"],"application/mac-binhex40":["hqx"],"application/mac-compactpro":["cpt"],"application/mads+xml":["mads"],"application/manifest+json":["webmanifest"],"application/marc":["mrc"],"application/marcxml+xml":["mrcx"],"application/mathematica":["ma","nb","mb"],"application/mathml+xml":["mathml"],"application/mbox":["mbox"],"application/mediaservercontrol+xml":["mscml"],"application/metalink+xml":["metalink"],"application/metalink4+xml":["meta4"],"application/mets+xml":["mets"],"application/mmt-aei+xml":["maei"],"application/mmt-usd+xml":["musd"],"application/mods+xml":["mods"],"application/mp21":["m21","mp21"],"application/mp4":["mp4s","m4p"],"application/msword":["doc","dot"],"application/mxf":["mxf"],"application/n-quads":["nq"],"application/n-triples":["nt"],"application/node":["cjs"],"application/octet-stream":["bin","dms","lrf","mar","so","dist","distz","pkg","bpk","dump","elc","deploy","exe","dll","deb","dmg","iso","img","msi","msp","msm","buffer"],"application/oda":["oda"],"application/oebps-package+xml":["opf"],"application/ogg":["ogx"],"application/omdoc+xml":["omdoc"],"application/onenote":["onetoc","onetoc2","onetmp","onepkg"],"application/oxps":["oxps"],"application/p2p-overlay+xml":["relo"],"application/patch-ops-error+xml":["xer"],"application/pdf":["pdf"],"application/pgp-encrypted":["pgp"],"application/pgp-signature":["asc","sig"],"application/pics-rules":["prf"],"application/pkcs10":["p10"],"application/pkcs7-mime":["p7m","p7c"],"application/pkcs7-signature":["p7s"],"application/pkcs8":["p8"],"application/pkix-attr-cert":["ac"],"application/pkix-cert":["cer"],"application/pkix-crl":["crl"],"application/pkix-pkipath":["pkipath"],"application/pkixcmp":["pki"],"application/pls+xml":["pls"],"application/postscript":["ai","eps","ps"],"application/provenance+xml":["provx"],"application/pskc+xml":["pskcxml"],"application/raml+yaml":["raml"],"application/rdf+xml":["rdf","owl"],"application/reginfo+xml":["rif"],"application/relax-ng-compact-syntax":["rnc"],"application/resource-lists+xml":["rl"],"application/resource-lists-diff+xml":["rld"],"application/rls-services+xml":["rs"],"application/route-apd+xml":["rapd"],"application/route-s-tsid+xml":["sls"],"application/route-usd+xml":["rusd"],"application/rpki-ghostbusters":["gbr"],"application/rpki-manifest":["mft"],"application/rpki-roa":["roa"],"application/rsd+xml":["rsd"],"application/rss+xml":["rss"],"application/rtf":["rtf"],"application/sbml+xml":["sbml"],"application/scvp-cv-request":["scq"],"application/scvp-cv-response":["scs"],"application/scvp-vp-request":["spq"],"application/scvp-vp-response":["spp"],"application/sdp":["sdp"],"application/senml+xml":["senmlx"],"application/sensml+xml":["sensmlx"],"application/set-payment-initiation":["setpay"],"application/set-registration-initiation":["setreg"],"application/shf+xml":["shf"],"application/sieve":["siv","sieve"],"application/smil+xml":["smi","smil"],"application/sparql-query":["rq"],"application/sparql-results+xml":["srx"],"application/srgs":["gram"],"application/srgs+xml":["grxml"],"application/sru+xml":["sru"],"application/ssdl+xml":["ssdl"],"application/ssml+xml":["ssml"],"application/swid+xml":["swidtag"],"application/tei+xml":["tei","teicorpus"],"application/thraud+xml":["tfi"],"application/timestamped-data":["tsd"],"application/toml":["toml"],"application/trig":["trig"],"application/ttml+xml":["ttml"],"application/ubjson":["ubj"],"application/urc-ressheet+xml":["rsheet"],"application/urc-targetdesc+xml":["td"],"application/voicexml+xml":["vxml"],"application/wasm":["wasm"],"application/widget":["wgt"],"application/winhlp":["hlp"],"application/wsdl+xml":["wsdl"],"application/wspolicy+xml":["wspolicy"],"application/xaml+xml":["xaml"],"application/xcap-att+xml":["xav"],"application/xcap-caps+xml":["xca"],"application/xcap-diff+xml":["xdf"],"application/xcap-el+xml":["xel"],"application/xcap-ns+xml":["xns"],"application/xenc+xml":["xenc"],"application/xhtml+xml":["xhtml","xht"],"application/xliff+xml":["xlf"],"application/xml":["xml","xsl","xsd","rng"],"application/xml-dtd":["dtd"],"application/xop+xml":["xop"],"application/xproc+xml":["xpl"],"application/xslt+xml":["*xsl","xslt"],"application/xspf+xml":["xspf"],"application/xv+xml":["mxml","xhvml","xvml","xvm"],"application/yang":["yang"],"application/yin+xml":["yin"],"application/zip":["zip"],"audio/3gpp":["*3gpp"],"audio/adpcm":["adp"],"audio/amr":["amr"],"audio/basic":["au","snd"],"audio/midi":["mid","midi","kar","rmi"],"audio/mobile-xmf":["mxmf"],"audio/mp3":["*mp3"],"audio/mp4":["m4a","mp4a"],"audio/mpeg":["mpga","mp2","mp2a","mp3","m2a","m3a"],"audio/ogg":["oga","ogg","spx","opus"],"audio/s3m":["s3m"],"audio/silk":["sil"],"audio/wav":["wav"],"audio/wave":["*wav"],"audio/webm":["weba"],"audio/xm":["xm"],"font/collection":["ttc"],"font/otf":["otf"],"font/ttf":["ttf"],"font/woff":["woff"],"font/woff2":["woff2"],"image/aces":["exr"],"image/apng":["apng"],"image/avif":["avif"],"image/bmp":["bmp"],"image/cgm":["cgm"],"image/dicom-rle":["drle"],"image/emf":["emf"],"image/fits":["fits"],"image/g3fax":["g3"],"image/gif":["gif"],"image/heic":["heic"],"image/heic-sequence":["heics"],"image/heif":["heif"],"image/heif-sequence":["heifs"],"image/hej2k":["hej2"],"image/hsj2":["hsj2"],"image/ief":["ief"],"image/jls":["jls"],"image/jp2":["jp2","jpg2"],"image/jpeg":["jpeg","jpg","jpe"],"image/jph":["jph"],"image/jphc":["jhc"],"image/jpm":["jpm"],"image/jpx":["jpx","jpf"],"image/jxr":["jxr"],"image/jxra":["jxra"],"image/jxrs":["jxrs"],"image/jxs":["jxs"],"image/jxsc":["jxsc"],"image/jxsi":["jxsi"],"image/jxss":["jxss"],"image/ktx":["ktx"],"image/ktx2":["ktx2"],"image/png":["png"],"image/sgi":["sgi"],"image/svg+xml":["svg","svgz"],"image/t38":["t38"],"image/tiff":["tif","tiff"],"image/tiff-fx":["tfx"],"image/webp":["webp"],"image/wmf":["wmf"],"message/disposition-notification":["disposition-notification"],"message/global":["u8msg"],"message/global-delivery-status":["u8dsn"],"message/global-disposition-notification":["u8mdn"],"message/global-headers":["u8hdr"],"message/rfc822":["eml","mime"],"model/3mf":["3mf"],"model/gltf+json":["gltf"],"model/gltf-binary":["glb"],"model/iges":["igs","iges"],"model/mesh":["msh","mesh","silo"],"model/mtl":["mtl"],"model/obj":["obj"],"model/step+xml":["stpx"],"model/step+zip":["stpz"],"model/step-xml+zip":["stpxz"],"model/stl":["stl"],"model/vrml":["wrl","vrml"],"model/x3d+binary":["*x3db","x3dbz"],"model/x3d+fastinfoset":["x3db"],"model/x3d+vrml":["*x3dv","x3dvz"],"model/x3d+xml":["x3d","x3dz"],"model/x3d-vrml":["x3dv"],"text/cache-manifest":["appcache","manifest"],"text/calendar":["ics","ifb"],"text/coffeescript":["coffee","litcoffee"],"text/css":["css"],"text/csv":["csv"],"text/html":["html","htm","shtml"],"text/jade":["jade"],"text/jsx":["jsx"],"text/less":["less"],"text/markdown":["markdown","md"],"text/mathml":["mml"],"text/mdx":["mdx"],"text/n3":["n3"],"text/plain":["txt","text","conf","def","list","log","in","ini"],"text/richtext":["rtx"],"text/rtf":["*rtf"],"text/sgml":["sgml","sgm"],"text/shex":["shex"],"text/slim":["slim","slm"],"text/spdx":["spdx"],"text/stylus":["stylus","styl"],"text/tab-separated-values":["tsv"],"text/troff":["t","tr","roff","man","me","ms"],"text/turtle":["ttl"],"text/uri-list":["uri","uris","urls"],"text/vcard":["vcard"],"text/vtt":["vtt"],"text/xml":["*xml"],"text/yaml":["yaml","yml"],"video/3gpp":["3gp","3gpp"],"video/3gpp2":["3g2"],"video/h261":["h261"],"video/h263":["h263"],"video/h264":["h264"],"video/iso.segment":["m4s"],"video/jpeg":["jpgv"],"video/jpm":["*jpm","jpgm"],"video/mj2":["mj2","mjp2"],"video/mp2t":["ts"],"video/mp4":["mp4","mp4v","mpg4"],"video/mpeg":["mpeg","mpg","mpe","m1v","m2v"],"video/ogg":["ogv"],"video/quicktime":["qt","mov"],"video/webm":["webm"]}});var gWA=R((TFY,yWA)=>{var AYB=kWA();yWA.exports=new AYB(vWA())});var sWA=R((gFY,nWA)=>{nWA.exports={parseSections:function(A,Q){var B,Y;A.setBigEndian(!0);while(A.remainingLength()>0&&Y!==218){if(A.nextUInt8()!==255)throw Error("Invalid JPEG section offset");if(Y=A.nextUInt8(),Y>=208&&Y<=217||Y===218)B=0;else B=A.nextUInt16()-2;Q(Y,A.branch(0,B)),A.skip(B)}},getSizeFromSOFSection:function(A){return A.skip(1),{height:A.nextUInt16(),width:A.nextUInt16()}},getSectionName:function(A){var Q,B;switch(A){case 216:Q="SOI";break;case 196:Q="DHT";break;case 219:Q="DQT";break;case 221:Q="DRI";break;case 218:Q="SOS";break;case 254:Q="COM";break;case 217:Q="EOI";break;default:if(A>=224&&A<=239)Q="APP",B=A-224;else if(A>=192&&A<=207&&A!==196&&A!==200&&A!==204)Q="SOF",B=A-192;else if(A>=208&&A<=215)Q="RST",B=A-208;break}var Y={name:Q};if(typeof B==="number")Y.index=B;return Y}}});var Lf=R((hFY,rWA)=>{function BYB(A,Q){switch(A){case 1:return Q.nextUInt8();case 3:return Q.nextUInt16();case 4:return Q.nextUInt32();case 5:return[Q.nextUInt32(),Q.nextUInt32()];case 6:return Q.nextInt8();case 8:return Q.nextUInt16();case 9:return Q.nextUInt32();case 10:return[Q.nextInt32(),Q.nextInt32()];case 11:return Q.nextFloat();case 12:return Q.nextDouble();default:throw Error("Invalid format while decoding: "+A)}}function YYB(A){switch(A){case 1:case 2:case 6:case 7:return 1;case 3:case 8:return 2;case 4:case 9:case 11:return 4;case 5:case 10:case 12:return 8;default:return 0}}function JYB(A,Q){var B=Q.nextUInt16(),Y=Q.nextUInt16(),J=YYB(Y),C=Q.nextUInt32(),X=J*C,G,W,F;if(X>4)Q=A.openWithOffset(Q.nextUInt32());if(Y===2){G=Q.nextString(C);var Z=G.indexOf("\x00");if(Z!==-1)G=G.substr(0,Z)}else if(Y===7)G=Q.nextBuffer(C);else if(Y!==0){G=[];for(F=0;F{function qf(A){return parseInt(A,10)}var XYB=3600,GYB=60;function aWA(A,Q){A=A.map(qf),Q=Q.map(qf);var B=A[0],Y=A[1]-1,J=A[2],C=Q[0],X=Q[1],G=Q[2],W=Date.UTC(B,Y,J,C,X,G,0),F=W/1000;return F}function oWA(A){var Q=A.substr(0,10).split("-"),B=A.substr(11,8).split(":"),Y=A.substr(19,6),J=Y.split(":").map(qf),C=J[0]*XYB+J[1]*GYB,X=aWA(Q,B);if(X-=C,typeof X==="number"&&!isNaN(X))return X}function tWA(A){var Q=A.split(" "),B=Q[0].split(":"),Y=Q[1].split(":"),J=aWA(B,Y);if(typeof J==="number"&&!isNaN(J))return J}function WYB(A){var Q=A.length===19&&A.charAt(4)===":",B=A.length===25&&A.charAt(10)==="T",Y;if(B)return oWA(A);else if(Q)return tWA(A)}eWA.exports={parseDateWithSpecFormat:tWA,parseDateWithTimezoneFormat:oWA,parseExifDate:WYB}});var BFA=R((fFY,QFA)=>{var nU=Lf(),FYB=AFA(),ZYB=[{section:nU.GPSIFD,type:2,name:"GPSLatitude",refType:1,refName:"GPSLatitudeRef",posVal:"N"},{section:nU.GPSIFD,type:4,name:"GPSLongitude",refType:3,refName:"GPSLongitudeRef",posVal:"E"}],$YB=[{section:nU.SubIFD,type:306,name:"ModifyDate"},{section:nU.SubIFD,type:36867,name:"DateTimeOriginal"},{section:nU.SubIFD,type:36868,name:"CreateDate"},{section:nU.SubIFD,type:306,name:"ModifyDate"}];QFA.exports={castDegreeValues:function(A,Q){ZYB.forEach(function(B){var Y=A(B);if(Y){var J=A({section:B.section,type:B.refType,name:B.refName}),C=J===B.posVal?1:-1,X=(Y[0]+Y[1]/60+Y[2]/3600)*C;Q(B,X)}})},castDateValues:function(A,Q){$YB.forEach(function(B){var Y=A(B);if(Y){var J=FYB.parseExifDate(Y);if(typeof J<"u")Q(B,J)}})},simplifyValue:function(A,Q){if(Array.isArray(A)){if(A=A.map(function(B){if(Q===10||Q===5)return B[0]/B[1];return B}),A.length===1)A=A[0]}return A}}});var JFA=R((bFY,YFA)=>{YFA.exports={exif:{1:"InteropIndex",2:"InteropVersion",11:"ProcessingSoftware",254:"SubfileType",255:"OldSubfileType",256:"ImageWidth",257:"ImageHeight",258:"BitsPerSample",259:"Compression",262:"PhotometricInterpretation",263:"Thresholding",264:"CellWidth",265:"CellLength",266:"FillOrder",269:"DocumentName",270:"ImageDescription",271:"Make",272:"Model",273:"StripOffsets",274:"Orientation",277:"SamplesPerPixel",278:"RowsPerStrip",279:"StripByteCounts",280:"MinSampleValue",281:"MaxSampleValue",282:"XResolution",283:"YResolution",284:"PlanarConfiguration",285:"PageName",286:"XPosition",287:"YPosition",288:"FreeOffsets",289:"FreeByteCounts",290:"GrayResponseUnit",291:"GrayResponseCurve",292:"T4Options",293:"T6Options",296:"ResolutionUnit",297:"PageNumber",300:"ColorResponseUnit",301:"TransferFunction",305:"Software",306:"ModifyDate",315:"Artist",316:"HostComputer",317:"Predictor",318:"WhitePoint",319:"PrimaryChromaticities",320:"ColorMap",321:"HalftoneHints",322:"TileWidth",323:"TileLength",324:"TileOffsets",325:"TileByteCounts",326:"BadFaxLines",327:"CleanFaxData",328:"ConsecutiveBadFaxLines",330:"SubIFD",332:"InkSet",333:"InkNames",334:"NumberofInks",336:"DotRange",337:"TargetPrinter",338:"ExtraSamples",339:"SampleFormat",340:"SMinSampleValue",341:"SMaxSampleValue",342:"TransferRange",343:"ClipPath",344:"XClipPathUnits",345:"YClipPathUnits",346:"Indexed",347:"JPEGTables",351:"OPIProxy",400:"GlobalParametersIFD",401:"ProfileType",402:"FaxProfile",403:"CodingMethods",404:"VersionYear",405:"ModeNumber",433:"Decode",434:"DefaultImageColor",435:"T82Options",437:"JPEGTables",512:"JPEGProc",513:"ThumbnailOffset",514:"ThumbnailLength",515:"JPEGRestartInterval",517:"JPEGLosslessPredictors",518:"JPEGPointTransforms",519:"JPEGQTables",520:"JPEGDCTables",521:"JPEGACTables",529:"YCbCrCoefficients",530:"YCbCrSubSampling",531:"YCbCrPositioning",532:"ReferenceBlackWhite",559:"StripRowCounts",700:"ApplicationNotes",999:"USPTOMiscellaneous",4096:"RelatedImageFileFormat",4097:"RelatedImageWidth",4098:"RelatedImageHeight",18246:"Rating",18247:"XP_DIP_XML",18248:"StitchInfo",18249:"RatingPercent",32781:"ImageID",32931:"WangTag1",32932:"WangAnnotation",32933:"WangTag3",32934:"WangTag4",32995:"Matteing",32996:"DataType",32997:"ImageDepth",32998:"TileDepth",33405:"Model2",33421:"CFARepeatPatternDim",33422:"CFAPattern2",33423:"BatteryLevel",33424:"KodakIFD",33432:"Copyright",33434:"ExposureTime",33437:"FNumber",33445:"MDFileTag",33446:"MDScalePixel",33447:"MDColorTable",33448:"MDLabName",33449:"MDSampleInfo",33450:"MDPrepDate",33451:"MDPrepTime",33452:"MDFileUnits",33550:"PixelScale",33589:"AdventScale",33590:"AdventRevision",33628:"UIC1Tag",33629:"UIC2Tag",33630:"UIC3Tag",33631:"UIC4Tag",33723:"IPTC-NAA",33918:"IntergraphPacketData",33919:"IntergraphFlagRegisters",33920:"IntergraphMatrix",33921:"INGRReserved",33922:"ModelTiePoint",34016:"Site",34017:"ColorSequence",34018:"IT8Header",34019:"RasterPadding",34020:"BitsPerRunLength",34021:"BitsPerExtendedRunLength",34022:"ColorTable",34023:"ImageColorIndicator",34024:"BackgroundColorIndicator",34025:"ImageColorValue",34026:"BackgroundColorValue",34027:"PixelIntensityRange",34028:"TransparencyIndicator",34029:"ColorCharacterization",34030:"HCUsage",34031:"TrapIndicator",34032:"CMYKEquivalent",34118:"SEMInfo",34152:"AFCP_IPTC",34232:"PixelMagicJBIGOptions",34264:"ModelTransform",34306:"WB_GRGBLevels",34310:"LeafData",34377:"PhotoshopSettings",34665:"ExifOffset",34675:"ICC_Profile",34687:"TIFF_FXExtensions",34688:"MultiProfiles",34689:"SharedData",34690:"T88Options",34732:"ImageLayer",34735:"GeoTiffDirectory",34736:"GeoTiffDoubleParams",34737:"GeoTiffAsciiParams",34850:"ExposureProgram",34852:"SpectralSensitivity",34853:"GPSInfo",34855:"ISO",34856:"Opto-ElectricConvFactor",34857:"Interlace",34858:"TimeZoneOffset",34859:"SelfTimerMode",34864:"SensitivityType",34865:"StandardOutputSensitivity",34866:"RecommendedExposureIndex",34867:"ISOSpeed",34868:"ISOSpeedLatitudeyyy",34869:"ISOSpeedLatitudezzz",34908:"FaxRecvParams",34909:"FaxSubAddress",34910:"FaxRecvTime",34954:"LeafSubIFD",36864:"ExifVersion",36867:"DateTimeOriginal",36868:"CreateDate",37121:"ComponentsConfiguration",37122:"CompressedBitsPerPixel",37377:"ShutterSpeedValue",37378:"ApertureValue",37379:"BrightnessValue",37380:"ExposureCompensation",37381:"MaxApertureValue",37382:"SubjectDistance",37383:"MeteringMode",37384:"LightSource",37385:"Flash",37386:"FocalLength",37387:"FlashEnergy",37388:"SpatialFrequencyResponse",37389:"Noise",37390:"FocalPlaneXResolution",37391:"FocalPlaneYResolution",37392:"FocalPlaneResolutionUnit",37393:"ImageNumber",37394:"SecurityClassification",37395:"ImageHistory",37396:"SubjectArea",37397:"ExposureIndex",37398:"TIFF-EPStandardID",37399:"SensingMethod",37434:"CIP3DataFile",37435:"CIP3Sheet",37436:"CIP3Side",37439:"StoNits",37500:"MakerNote",37510:"UserComment",37520:"SubSecTime",37521:"SubSecTimeOriginal",37522:"SubSecTimeDigitized",37679:"MSDocumentText",37680:"MSPropertySetStorage",37681:"MSDocumentTextPosition",37724:"ImageSourceData",40091:"XPTitle",40092:"XPComment",40093:"XPAuthor",40094:"XPKeywords",40095:"XPSubject",40960:"FlashpixVersion",40961:"ColorSpace",40962:"ExifImageWidth",40963:"ExifImageHeight",40964:"RelatedSoundFile",40965:"InteropOffset",41483:"FlashEnergy",41484:"SpatialFrequencyResponse",41485:"Noise",41486:"FocalPlaneXResolution",41487:"FocalPlaneYResolution",41488:"FocalPlaneResolutionUnit",41489:"ImageNumber",41490:"SecurityClassification",41491:"ImageHistory",41492:"SubjectLocation",41493:"ExposureIndex",41494:"TIFF-EPStandardID",41495:"SensingMethod",41728:"FileSource",41729:"SceneType",41730:"CFAPattern",41985:"CustomRendered",41986:"ExposureMode",41987:"WhiteBalance",41988:"DigitalZoomRatio",41989:"FocalLengthIn35mmFormat",41990:"SceneCaptureType",41991:"GainControl",41992:"Contrast",41993:"Saturation",41994:"Sharpness",41995:"DeviceSettingDescription",41996:"SubjectDistanceRange",42016:"ImageUniqueID",42032:"OwnerName",42033:"SerialNumber",42034:"LensInfo",42035:"LensMake",42036:"LensModel",42037:"LensSerialNumber",42112:"GDALMetadata",42113:"GDALNoData",42240:"Gamma",44992:"ExpandSoftware",44993:"ExpandLens",44994:"ExpandFilm",44995:"ExpandFilterLens",44996:"ExpandScanner",44997:"ExpandFlashLamp",48129:"PixelFormat",48130:"Transformation",48131:"Uncompressed",48132:"ImageType",48256:"ImageWidth",48257:"ImageHeight",48258:"WidthResolution",48259:"HeightResolution",48320:"ImageOffset",48321:"ImageByteCount",48322:"AlphaOffset",48323:"AlphaByteCount",48324:"ImageDataDiscard",48325:"AlphaDataDiscard",50215:"OceScanjobDesc",50216:"OceApplicationSelector",50217:"OceIDNumber",50218:"OceImageLogic",50255:"Annotations",50341:"PrintIM",50560:"USPTOOriginalContentType",50706:"DNGVersion",50707:"DNGBackwardVersion",50708:"UniqueCameraModel",50709:"LocalizedCameraModel",50710:"CFAPlaneColor",50711:"CFALayout",50712:"LinearizationTable",50713:"BlackLevelRepeatDim",50714:"BlackLevel",50715:"BlackLevelDeltaH",50716:"BlackLevelDeltaV",50717:"WhiteLevel",50718:"DefaultScale",50719:"DefaultCropOrigin",50720:"DefaultCropSize",50721:"ColorMatrix1",50722:"ColorMatrix2",50723:"CameraCalibration1",50724:"CameraCalibration2",50725:"ReductionMatrix1",50726:"ReductionMatrix2",50727:"AnalogBalance",50728:"AsShotNeutral",50729:"AsShotWhiteXY",50730:"BaselineExposure",50731:"BaselineNoise",50732:"BaselineSharpness",50733:"BayerGreenSplit",50734:"LinearResponseLimit",50735:"CameraSerialNumber",50736:"DNGLensInfo",50737:"ChromaBlurRadius",50738:"AntiAliasStrength",50739:"ShadowScale",50740:"DNGPrivateData",50741:"MakerNoteSafety",50752:"RawImageSegmentation",50778:"CalibrationIlluminant1",50779:"CalibrationIlluminant2",50780:"BestQualityScale",50781:"RawDataUniqueID",50784:"AliasLayerMetadata",50827:"OriginalRawFileName",50828:"OriginalRawFileData",50829:"ActiveArea",50830:"MaskedAreas",50831:"AsShotICCProfile",50832:"AsShotPreProfileMatrix",50833:"CurrentICCProfile",50834:"CurrentPreProfileMatrix",50879:"ColorimetricReference",50898:"PanasonicTitle",50899:"PanasonicTitle2",50931:"CameraCalibrationSig",50932:"ProfileCalibrationSig",50933:"ProfileIFD",50934:"AsShotProfileName",50935:"NoiseReductionApplied",50936:"ProfileName",50937:"ProfileHueSatMapDims",50938:"ProfileHueSatMapData1",50939:"ProfileHueSatMapData2",50940:"ProfileToneCurve",50941:"ProfileEmbedPolicy",50942:"ProfileCopyright",50964:"ForwardMatrix1",50965:"ForwardMatrix2",50966:"PreviewApplicationName",50967:"PreviewApplicationVersion",50968:"PreviewSettingsName",50969:"PreviewSettingsDigest",50970:"PreviewColorSpace",50971:"PreviewDateTime",50972:"RawImageDigest",50973:"OriginalRawFileDigest",50974:"SubTileBlockSize",50975:"RowInterleaveFactor",50981:"ProfileLookTableDims",50982:"ProfileLookTableData",51008:"OpcodeList1",51009:"OpcodeList2",51022:"OpcodeList3",51041:"NoiseProfile",51043:"TimeCodes",51044:"FrameRate",51058:"TStop",51081:"ReelName",51089:"OriginalDefaultFinalSize",51090:"OriginalBestQualitySize",51091:"OriginalDefaultCropSize",51105:"CameraLabel",51107:"ProfileHueSatMapEncoding",51108:"ProfileLookTableEncoding",51109:"BaselineExposureOffset",51110:"DefaultBlackRender",51111:"NewRawImageDigest",51112:"RawToPreviewGain",51125:"DefaultUserCrop",59932:"Padding",59933:"OffsetSchema",65000:"OwnerName",65001:"SerialNumber",65002:"Lens",65024:"KDC_IFD",65100:"RawFile",65101:"Converter",65102:"WhiteBalance",65105:"Exposure",65106:"Shadows",65107:"Brightness",65108:"Contrast",65109:"Saturation",65110:"Sharpness",65111:"Smoothness",65112:"MoireFilter"},gps:{0:"GPSVersionID",1:"GPSLatitudeRef",2:"GPSLatitude",3:"GPSLongitudeRef",4:"GPSLongitude",5:"GPSAltitudeRef",6:"GPSAltitude",7:"GPSTimeStamp",8:"GPSSatellites",9:"GPSStatus",10:"GPSMeasureMode",11:"GPSDOP",12:"GPSSpeedRef",13:"GPSSpeed",14:"GPSTrackRef",15:"GPSTrack",16:"GPSImgDirectionRef",17:"GPSImgDirection",18:"GPSMapDatum",19:"GPSDestLatitudeRef",20:"GPSDestLatitude",21:"GPSDestLongitudeRef",22:"GPSDestLongitude",23:"GPSDestBearingRef",24:"GPSDestBearing",25:"GPSDestDistanceRef",26:"GPSDestDistance",27:"GPSProcessingMethod",28:"GPSAreaInformation",29:"GPSDateStamp",30:"GPSDifferential",31:"GPSHPositioningError"}}});var FFA=R((mFY,WFA)=>{var sU=sWA(),CFA=Lf(),Mf=BFA();function XFA(A,Q,B,Y,J,C,X){this.startMarker=A,this.tags=Q,this.imageSize=B,this.thumbnailOffset=Y,this.thumbnailLength=J,this.thumbnailType=C,this.app1Offset=X}XFA.prototype={hasThumbnail:function(A){if(!this.thumbnailOffset||!this.thumbnailLength)return!1;if(typeof A!=="string")return!0;if(A.toLowerCase().trim()==="image/jpeg")return this.thumbnailType===6;if(A.toLowerCase().trim()==="image/tiff")return this.thumbnailType===1;return!1},getThumbnailOffset:function(){return this.app1Offset+6+this.thumbnailOffset},getThumbnailLength:function(){return this.thumbnailLength},getThumbnailBuffer:function(){return this._getThumbnailStream().nextBuffer(this.thumbnailLength)},_getThumbnailStream:function(){return this.startMarker.openWithOffset(this.getThumbnailOffset())},getImageSize:function(){return this.imageSize},getThumbnailSize:function(){var A=this._getThumbnailStream(),Q;return sU.parseSections(A,function(B,Y){if(sU.getSectionName(B).name==="SOF")Q=sU.getSizeFromSOFSection(Y)}),Q}};function GFA(A){this.stream=A,this.flags={readBinaryTags:!1,resolveTagNames:!0,simplifyValues:!0,imageSize:!0,hidePointers:!0,returnTags:!0}}GFA.prototype={enableBinaryFields:function(A){return this.flags.readBinaryTags=!!A,this},enablePointers:function(A){return this.flags.hidePointers=!A,this},enableTagNames:function(A){return this.flags.resolveTagNames=!!A,this},enableImageSize:function(A){return this.flags.imageSize=!!A,this},enableReturnTags:function(A){return this.flags.returnTags=!!A,this},enableSimpleValues:function(A){return this.flags.simplifyValues=!!A,this},parse:function(){var A=this.stream.mark(),Q=A.openWithOffset(0),B=this.flags,Y,J,C,X,G,W,F,Z,U;if(B.resolveTagNames)F=JFA();if(B.resolveTagNames)Y={},Z=function($){return Y[$.name]},U=function($,E){Y[$.name]=E};else Y=[],Z=function($){var E;for(E=0;E{function cR(A,Q,B,Y,J,C){this.global=J,Q=Q||0,B=B||A.byteLength-Q,this.arrayBuffer=A.slice(Q,Q+B),this.view=new J.DataView(this.arrayBuffer,0,this.arrayBuffer.byteLength),this.setBigEndian(Y),this.offset=0,this.parentOffset=(C||0)+Q}cR.prototype={setBigEndian:function(A){this.littleEndian=!A},nextUInt8:function(){var A=this.view.getUint8(this.offset);return this.offset+=1,A},nextInt8:function(){var A=this.view.getInt8(this.offset);return this.offset+=1,A},nextUInt16:function(){var A=this.view.getUint16(this.offset,this.littleEndian);return this.offset+=2,A},nextUInt32:function(){var A=this.view.getUint32(this.offset,this.littleEndian);return this.offset+=4,A},nextInt16:function(){var A=this.view.getInt16(this.offset,this.littleEndian);return this.offset+=2,A},nextInt32:function(){var A=this.view.getInt32(this.offset,this.littleEndian);return this.offset+=4,A},nextFloat:function(){var A=this.view.getFloat32(this.offset,this.littleEndian);return this.offset+=4,A},nextDouble:function(){var A=this.view.getFloat64(this.offset,this.littleEndian);return this.offset+=8,A},nextBuffer:function(A){var Q=this.arrayBuffer.slice(this.offset,this.offset+A);return this.offset+=A,Q},remainingLength:function(){return this.arrayBuffer.byteLength-this.offset},nextString:function(A){var Q=this.arrayBuffer.slice(this.offset,this.offset+A);return Q=String.fromCharCode.apply(null,new this.global.Uint8Array(Q)),this.offset+=A,Q},mark:function(){var A=this;return{openWithOffset:function(Q){return Q=(Q||0)+this.offset,new cR(A.arrayBuffer,Q,A.arrayBuffer.byteLength-Q,!A.littleEndian,A.global,A.parentOffset)},offset:this.offset,getParentOffset:function(){return A.parentOffset}}},offsetFrom:function(A){return this.parentOffset+this.offset-(A.offset+A.getParentOffset())},skip:function(A){this.offset+=A},branch:function(A,Q){return Q=typeof Q==="number"?Q:this.arrayBuffer.byteLength-(this.offset+A),new cR(this.arrayBuffer,this.offset+A,Q,!this.littleEndian,this.global,this.parentOffset)}};ZFA.exports=cR});var EFA=R((dFY,UFA)=>{function lR(A,Q,B,Y){this.buffer=A,this.offset=Q||0,B=typeof B==="number"?B:A.length,this.endPosition=this.offset+B,this.setBigEndian(Y)}lR.prototype={setBigEndian:function(A){this.bigEndian=!!A},nextUInt8:function(){var A=this.buffer.readUInt8(this.offset);return this.offset+=1,A},nextInt8:function(){var A=this.buffer.readInt8(this.offset);return this.offset+=1,A},nextUInt16:function(){var A=this.bigEndian?this.buffer.readUInt16BE(this.offset):this.buffer.readUInt16LE(this.offset);return this.offset+=2,A},nextUInt32:function(){var A=this.bigEndian?this.buffer.readUInt32BE(this.offset):this.buffer.readUInt32LE(this.offset);return this.offset+=4,A},nextInt16:function(){var A=this.bigEndian?this.buffer.readInt16BE(this.offset):this.buffer.readInt16LE(this.offset);return this.offset+=2,A},nextInt32:function(){var A=this.bigEndian?this.buffer.readInt32BE(this.offset):this.buffer.readInt32LE(this.offset);return this.offset+=4,A},nextFloat:function(){var A=this.bigEndian?this.buffer.readFloatBE(this.offset):this.buffer.readFloatLE(this.offset);return this.offset+=4,A},nextDouble:function(){var A=this.bigEndian?this.buffer.readDoubleBE(this.offset):this.buffer.readDoubleLE(this.offset);return this.offset+=8,A},nextBuffer:function(A){var Q=this.buffer.slice(this.offset,this.offset+A);return this.offset+=A,Q},remainingLength:function(){return this.endPosition-this.offset},nextString:function(A){var Q=this.buffer.toString("utf8",this.offset,this.offset+A);return this.offset+=A,Q},mark:function(){var A=this;return{openWithOffset:function(Q){return Q=(Q||0)+this.offset,new lR(A.buffer,Q,A.endPosition-Q,A.bigEndian)},offset:this.offset}},offsetFrom:function(A){return this.offset-A.offset},skip:function(A){this.offset+=A},branch:function(A,Q){return Q=typeof Q==="number"?Q:this.endPosition-(this.offset+A),new lR(this.buffer,this.offset+A,Q,this.bigEndian)}};UFA.exports=lR});var IFA=R((cFY,VFA)=>{var KFA=FFA();function UYB(){return(0,eval)("this")}VFA.exports={create:function(A,Q){if(Q=Q||UYB(),A instanceof Q.ArrayBuffer){var B=$FA();return new KFA(new B(A,0,A.byteLength,!0,Q))}else{var Y=EFA();return new KFA(new Y(A,0,A.length,!0))}}}});var kFA=R((RZY,SFA)=>{function Of(A,Q){if(!A||!Q||!A.length||!Q.length)throw Error("Bad alphabet");this.srcAlphabet=A,this.dstAlphabet=Q}Of.prototype.convert=function(A){var Q,B,Y,J={},C=this.srcAlphabet.length,X=this.dstAlphabet.length,G=A.length,W=typeof A==="string"?"":[];if(!this.isValid(A))throw Error('Number "'+A+'" contains of non-alphabetic digits ('+this.srcAlphabet+")");if(this.srcAlphabet===this.dstAlphabet)return A;for(Q=0;Q=X)J[Y++]=parseInt(B/X,10),B=B%X;else if(Y>0)J[Y++]=0;G=Y,W=this.dstAlphabet.slice(B,B+1).concat(W)}while(Y!==0);return W};Of.prototype.isValid=function(A){var Q=0;for(;Q{var yYB=kFA();function eH(A,Q){var B=new yYB(A,Q);return function(Y){return B.convert(Y)}}eH.BIN="01";eH.OCT="01234567";eH.DEC="0123456789";eH.HEX="0123456789abcdef";_FA.exports=eH});var VD=R((bZA)=>{Object.defineProperty(bZA,"__esModule",{value:!0});bZA.regexpCode=bZA.getEsmExportName=bZA.getProperty=bZA.safeStringify=bZA.stringify=bZA.strConcat=bZA.addCodeArg=bZA.str=bZA._=bZA.nil=bZA._Code=bZA.Name=bZA.IDENTIFIER=bZA._CodeOrName=void 0;class tR{}bZA._CodeOrName=tR;bZA.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;class FE extends tR{constructor(A){super();if(!bZA.IDENTIFIER.test(A))throw Error("CodeGen: name must be a valid identifier");this.str=A}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}}bZA.Name=FE;class dC extends tR{constructor(A){super();this._items=typeof A==="string"?[A]:A}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let A=this._items[0];return A===""||A==='""'}get str(){var A;return(A=this._str)!==null&&A!==void 0?A:this._str=this._items.reduce((Q,B)=>`${Q}${B}`,"")}get names(){var A;return(A=this._names)!==null&&A!==void 0?A:this._names=this._items.reduce((Q,B)=>{if(B instanceof FE)Q[B.str]=(Q[B.str]||0)+1;return Q},{})}}bZA._Code=dC;bZA.nil=new dC("");function xZA(A,...Q){let B=[A[0]],Y=0;while(Y{Object.defineProperty(cZA,"__esModule",{value:!0});cZA.ValueScope=cZA.ValueScopeName=cZA.Scope=cZA.varKinds=cZA.UsedValueState=void 0;var x9=VD();class uZA extends Error{constructor(A){super(`CodeGen: "code" for ${A} not defined`);this.value=A.value}}var Aw;(function(A){A[A.Started=0]="Started",A[A.Completed=1]="Completed"})(Aw||(cZA.UsedValueState=Aw={}));cZA.varKinds={const:new x9.Name("const"),let:new x9.Name("let"),var:new x9.Name("var")};class tf{constructor({prefixes:A,parent:Q}={}){this._names={},this._prefixes=A,this._parent=Q}toName(A){return A instanceof x9.Name?A:this.name(A)}name(A){return new x9.Name(this._newName(A))}_newName(A){let Q=this._names[A]||this._nameGroup(A);return`${A}${Q.index++}`}_nameGroup(A){var Q,B;if(((B=(Q=this._parent)===null||Q===void 0?void 0:Q._prefixes)===null||B===void 0?void 0:B.has(A))||this._prefixes&&!this._prefixes.has(A))throw Error(`CodeGen: prefix "${A}" is not allowed in this scope`);return this._names[A]={prefix:A,index:0}}}cZA.Scope=tf;class ef extends x9.Name{constructor(A,Q){super(Q);this.prefix=A}setValue(A,{property:Q,itemIndex:B}){this.value=A,this.scopePath=x9._`.${new x9.Name(Q)}[${B}]`}}cZA.ValueScopeName=ef;var eJB=x9._`\n`;class dZA extends tf{constructor(A){super(A);this._values={},this._scope=A.scope,this.opts={...A,_n:A.lines?eJB:x9.nil}}get(){return this._scope}name(A){return new ef(A,this._newName(A))}value(A,Q){var B;if(Q.ref===void 0)throw Error("CodeGen: ref must be passed in value");let Y=this.toName(A),{prefix:J}=Y,C=(B=Q.key)!==null&&B!==void 0?B:Q.ref,X=this._values[J];if(X){let F=X.get(C);if(F)return F}else X=this._values[J]=new Map;X.set(C,Y);let G=this._scope[J]||(this._scope[J]=[]),W=G.length;return G[W]=Q.ref,Y.setValue(Q,{property:J,itemIndex:W}),Y}getValue(A,Q){let B=this._values[A];if(!B)return;return B.get(Q)}scopeRefs(A,Q=this._values){return this._reduceValues(Q,(B)=>{if(B.scopePath===void 0)throw Error(`CodeGen: name "${B}" has no value`);return x9._`${A}${B.scopePath}`})}scopeCode(A=this._values,Q,B){return this._reduceValues(A,(Y)=>{if(Y.value===void 0)throw Error(`CodeGen: name "${Y}" has no value`);return Y.value.code},Q,B)}_reduceValues(A,Q,B={},Y){let J=x9.nil;for(let C in A){let X=A[C];if(!X)continue;let G=B[C]=B[C]||new Map;X.forEach((W)=>{if(G.has(W))return;G.set(W,Aw.Started);let F=Q(W);if(F){let Z=this.opts.es5?cZA.varKinds.var:cZA.varKinds.const;J=x9._`${J}${Z} ${W} = ${F};${this.opts._n}`}else if(F=Y===null||Y===void 0?void 0:Y(W))J=x9._`${J}${F}${this.opts._n}`;else throw new uZA(W);G.set(W,Aw.Completed)})}return J}}cZA.ValueScope=dZA});var GB=R((f9)=>{Object.defineProperty(f9,"__esModule",{value:!0});f9.or=f9.and=f9.not=f9.CodeGen=f9.operators=f9.varKinds=f9.ValueScopeName=f9.ValueScope=f9.Scope=f9.Name=f9.regexpCode=f9.stringify=f9.getProperty=f9.nil=f9.strConcat=f9.str=f9._=void 0;var HB=VD(),cC=Ab(),x7=VD();Object.defineProperty(f9,"_",{enumerable:!0,get:function(){return x7._}});Object.defineProperty(f9,"str",{enumerable:!0,get:function(){return x7.str}});Object.defineProperty(f9,"strConcat",{enumerable:!0,get:function(){return x7.strConcat}});Object.defineProperty(f9,"nil",{enumerable:!0,get:function(){return x7.nil}});Object.defineProperty(f9,"getProperty",{enumerable:!0,get:function(){return x7.getProperty}});Object.defineProperty(f9,"stringify",{enumerable:!0,get:function(){return x7.stringify}});Object.defineProperty(f9,"regexpCode",{enumerable:!0,get:function(){return x7.regexpCode}});Object.defineProperty(f9,"Name",{enumerable:!0,get:function(){return x7.Name}});var Xw=Ab();Object.defineProperty(f9,"Scope",{enumerable:!0,get:function(){return Xw.Scope}});Object.defineProperty(f9,"ValueScope",{enumerable:!0,get:function(){return Xw.ValueScope}});Object.defineProperty(f9,"ValueScopeName",{enumerable:!0,get:function(){return Xw.ValueScopeName}});Object.defineProperty(f9,"varKinds",{enumerable:!0,get:function(){return Xw.varKinds}});f9.operators={GT:new HB._Code(">"),GTE:new HB._Code(">="),LT:new HB._Code("<"),LTE:new HB._Code("<="),EQ:new HB._Code("==="),NEQ:new HB._Code("!=="),NOT:new HB._Code("!"),OR:new HB._Code("||"),AND:new HB._Code("&&"),ADD:new HB._Code("+")};class f7{optimizeNodes(){return this}optimizeNames(A,Q){return this}}class pZA extends f7{constructor(A,Q,B){super();this.varKind=A,this.name=Q,this.rhs=B}render({es5:A,_n:Q}){let B=A?cC.varKinds.var:this.varKind,Y=this.rhs===void 0?"":` = ${this.rhs}`;return`${B} ${this.name}${Y};`+Q}optimizeNames(A,Q){if(!A[this.name.str])return;if(this.rhs)this.rhs=$E(this.rhs,A,Q);return this}get names(){return this.rhs instanceof HB._CodeOrName?this.rhs.names:{}}}class Yb extends f7{constructor(A,Q,B){super();this.lhs=A,this.rhs=Q,this.sideEffects=B}render({_n:A}){return`${this.lhs} = ${this.rhs};`+A}optimizeNames(A,Q){if(this.lhs instanceof HB.Name&&!A[this.lhs.str]&&!this.sideEffects)return;return this.rhs=$E(this.rhs,A,Q),this}get names(){let A=this.lhs instanceof HB.Name?{}:{...this.lhs.names};return Cw(A,this.rhs)}}class iZA extends Yb{constructor(A,Q,B,Y){super(A,B,Y);this.op=Q}render({_n:A}){return`${this.lhs} ${this.op}= ${this.rhs};`+A}}class nZA extends f7{constructor(A){super();this.label=A,this.names={}}render({_n:A}){return`${this.label}:`+A}}class sZA extends f7{constructor(A){super();this.label=A,this.names={}}render({_n:A}){return`break${this.label?` ${this.label}`:""};`+A}}class rZA extends f7{constructor(A){super();this.error=A}render({_n:A}){return`throw ${this.error};`+A}get names(){return this.error.names}}class aZA extends f7{constructor(A){super();this.code=A}render({_n:A}){return`${this.code};`+A}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(A,Q){return this.code=$E(this.code,A,Q),this}get names(){return this.code instanceof HB._CodeOrName?this.code.names:{}}}class Gw extends f7{constructor(A=[]){super();this.nodes=A}render(A){return this.nodes.reduce((Q,B)=>Q+B.render(A),"")}optimizeNodes(){let{nodes:A}=this,Q=A.length;while(Q--){let B=A[Q].optimizeNodes();if(Array.isArray(B))A.splice(Q,1,...B);else if(B)A[Q]=B;else A.splice(Q,1)}return A.length>0?this:void 0}optimizeNames(A,Q){let{nodes:B}=this,Y=B.length;while(Y--){let J=B[Y];if(J.optimizeNames(A,Q))continue;Y9B(A,J.names),B.splice(Y,1)}return B.length>0?this:void 0}get names(){return this.nodes.reduce((A,Q)=>EZ(A,Q.names),{})}}class b7 extends Gw{render(A){return"{"+A._n+super.render(A)+"}"+A._n}}class oZA extends Gw{}class ID extends b7{}ID.kind="else";class m6 extends b7{constructor(A,Q){super(Q);this.condition=A}render(A){let Q=`if(${this.condition})`+super.render(A);if(this.else)Q+="else "+this.else.render(A);return Q}optimizeNodes(){super.optimizeNodes();let A=this.condition;if(A===!0)return this.nodes;let Q=this.else;if(Q){let B=Q.optimizeNodes();Q=this.else=Array.isArray(B)?new ID(B):B}if(Q){if(A===!1)return Q instanceof m6?Q:Q.nodes;if(this.nodes.length)return this;return new m6(B$A(A),Q instanceof m6?[Q]:Q.nodes)}if(A===!1||!this.nodes.length)return;return this}optimizeNames(A,Q){var B;if(this.else=(B=this.else)===null||B===void 0?void 0:B.optimizeNames(A,Q),!(super.optimizeNames(A,Q)||this.else))return;return this.condition=$E(this.condition,A,Q),this}get names(){let A=super.names;if(Cw(A,this.condition),this.else)EZ(A,this.else.names);return A}}m6.kind="if";class ZE extends b7{}ZE.kind="for";class tZA extends ZE{constructor(A){super();this.iteration=A}render(A){return`for(${this.iteration})`+super.render(A)}optimizeNames(A,Q){if(!super.optimizeNames(A,Q))return;return this.iteration=$E(this.iteration,A,Q),this}get names(){return EZ(super.names,this.iteration.names)}}class eZA extends ZE{constructor(A,Q,B,Y){super();this.varKind=A,this.name=Q,this.from=B,this.to=Y}render(A){let Q=A.es5?cC.varKinds.var:this.varKind,{name:B,from:Y,to:J}=this;return`for(${Q} ${B}=${Y}; ${B}<${J}; ${B}++)`+super.render(A)}get names(){let A=Cw(super.names,this.from);return Cw(A,this.to)}}class Qb extends ZE{constructor(A,Q,B,Y){super();this.loop=A,this.varKind=Q,this.name=B,this.iterable=Y}render(A){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(A)}optimizeNames(A,Q){if(!super.optimizeNames(A,Q))return;return this.iterable=$E(this.iterable,A,Q),this}get names(){return EZ(super.names,this.iterable.names)}}class Qw extends b7{constructor(A,Q,B){super();this.name=A,this.args=Q,this.async=B}render(A){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(A)}}Qw.kind="func";class Bw extends Gw{render(A){return"return "+super.render(A)}}Bw.kind="return";class A$A extends b7{render(A){let Q="try"+super.render(A);if(this.catch)Q+=this.catch.render(A);if(this.finally)Q+=this.finally.render(A);return Q}optimizeNodes(){var A,Q;return super.optimizeNodes(),(A=this.catch)===null||A===void 0||A.optimizeNodes(),(Q=this.finally)===null||Q===void 0||Q.optimizeNodes(),this}optimizeNames(A,Q){var B,Y;return super.optimizeNames(A,Q),(B=this.catch)===null||B===void 0||B.optimizeNames(A,Q),(Y=this.finally)===null||Y===void 0||Y.optimizeNames(A,Q),this}get names(){let A=super.names;if(this.catch)EZ(A,this.catch.names);if(this.finally)EZ(A,this.finally.names);return A}}class Yw extends b7{constructor(A){super();this.error=A}render(A){return`catch(${this.error})`+super.render(A)}}Yw.kind="catch";class Jw extends b7{render(A){return"finally"+super.render(A)}}Jw.kind="finally";class Q$A{constructor(A,Q={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...Q,_n:Q.lines?` -`:""},this._extScope=A,this._scope=new cC.Scope({parent:A}),this._nodes=[new oZA]}toString(){return this._root.render(this.opts)}name(A){return this._scope.name(A)}scopeName(A){return this._extScope.name(A)}scopeValue(A,Q){let B=this._extScope.value(A,Q);return(this._values[B.prefix]||(this._values[B.prefix]=new Set)).add(B),B}getScopeValue(A,Q){return this._extScope.getValue(A,Q)}scopeRefs(A){return this._extScope.scopeRefs(A,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(A,Q,B,Y){let J=this._scope.toName(Q);if(B!==void 0&&Y)this._constants[J.str]=B;return this._leafNode(new pZA(A,J,B)),J}const(A,Q,B){return this._def(cC.varKinds.const,A,Q,B)}let(A,Q,B){return this._def(cC.varKinds.let,A,Q,B)}var(A,Q,B){return this._def(cC.varKinds.var,A,Q,B)}assign(A,Q,B){return this._leafNode(new Yb(A,Q,B))}add(A,Q){return this._leafNode(new iZA(A,f9.operators.ADD,Q))}code(A){if(typeof A=="function")A();else if(A!==HB.nil)this._leafNode(new aZA(A));return this}object(...A){let Q=["{"];for(let[B,Y]of A){if(Q.length>1)Q.push(",");if(Q.push(B),B!==Y||this.opts.es5)Q.push(":"),(0,HB.addCodeArg)(Q,Y)}return Q.push("}"),new HB._Code(Q)}if(A,Q,B){if(this._blockNode(new m6(A)),Q&&B)this.code(Q).else().code(B).endIf();else if(Q)this.code(Q).endIf();else if(B)throw Error('CodeGen: "else" body without "then" body');return this}elseIf(A){return this._elseNode(new m6(A))}else(){return this._elseNode(new ID)}endIf(){return this._endBlockNode(m6,ID)}_for(A,Q){if(this._blockNode(A),Q)this.code(Q).endFor();return this}for(A,Q){return this._for(new tZA(A),Q)}forRange(A,Q,B,Y,J=this.opts.es5?cC.varKinds.var:cC.varKinds.let){let C=this._scope.toName(A);return this._for(new eZA(J,C,Q,B),()=>Y(C))}forOf(A,Q,B,Y=cC.varKinds.const){let J=this._scope.toName(A);if(this.opts.es5){let C=Q instanceof HB.Name?Q:this.var("_arr",Q);return this.forRange("_i",0,HB._`${C}.length`,(X)=>{this.var(J,HB._`${C}[${X}]`),B(J)})}return this._for(new Qb("of",Y,J,Q),()=>B(J))}forIn(A,Q,B,Y=this.opts.es5?cC.varKinds.var:cC.varKinds.const){if(this.opts.ownProperties)return this.forOf(A,HB._`Object.keys(${Q})`,B);let J=this._scope.toName(A);return this._for(new Qb("in",Y,J,Q),()=>B(J))}endFor(){return this._endBlockNode(ZE)}label(A){return this._leafNode(new nZA(A))}break(A){return this._leafNode(new sZA(A))}return(A){let Q=new Bw;if(this._blockNode(Q),this.code(A),Q.nodes.length!==1)throw Error('CodeGen: "return" should have one node');return this._endBlockNode(Bw)}try(A,Q,B){if(!Q&&!B)throw Error('CodeGen: "try" without "catch" and "finally"');let Y=new A$A;if(this._blockNode(Y),this.code(A),Q){let J=this.name("e");this._currNode=Y.catch=new Yw(J),Q(J)}if(B)this._currNode=Y.finally=new Jw,this.code(B);return this._endBlockNode(Yw,Jw)}throw(A){return this._leafNode(new rZA(A))}block(A,Q){if(this._blockStarts.push(this._nodes.length),A)this.code(A).endBlock(Q);return this}endBlock(A){let Q=this._blockStarts.pop();if(Q===void 0)throw Error("CodeGen: not in self-balancing block");let B=this._nodes.length-Q;if(B<0||A!==void 0&&B!==A)throw Error(`CodeGen: wrong number of nodes: ${B} vs ${A} expected`);return this._nodes.length=Q,this}func(A,Q=HB.nil,B,Y){if(this._blockNode(new Qw(A,Q,B)),Y)this.code(Y).endFunc();return this}endFunc(){return this._endBlockNode(Qw)}optimize(A=1){while(A-- >0)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(A){return this._currNode.nodes.push(A),this}_blockNode(A){this._currNode.nodes.push(A),this._nodes.push(A)}_endBlockNode(A,Q){let B=this._currNode;if(B instanceof A||Q&&B instanceof Q)return this._nodes.pop(),this;throw Error(`CodeGen: not in block "${Q?`${A.kind}/${Q.kind}`:A.kind}"`)}_elseNode(A){let Q=this._currNode;if(!(Q instanceof m6))throw Error('CodeGen: "else" without "if"');return this._currNode=Q.else=A,this}get _root(){return this._nodes[0]}get _currNode(){let A=this._nodes;return A[A.length-1]}set _currNode(A){let Q=this._nodes;Q[Q.length-1]=A}}f9.CodeGen=Q$A;function EZ(A,Q){for(let B in Q)A[B]=(A[B]||0)+(Q[B]||0);return A}function Cw(A,Q){return Q instanceof HB._CodeOrName?EZ(A,Q.names):A}function $E(A,Q,B){if(A instanceof HB.Name)return Y(A);if(!J(A))return A;return new HB._Code(A._items.reduce((C,X)=>{if(X instanceof HB.Name)X=Y(X);if(X instanceof HB._Code)C.push(...X._items);else C.push(X);return C},[]));function Y(C){let X=B[C.str];if(X===void 0||Q[C.str]!==1)return C;return delete Q[C.str],X}function J(C){return C instanceof HB._Code&&C._items.some((X)=>X instanceof HB.Name&&Q[X.str]===1&&B[X.str]!==void 0)}}function Y9B(A,Q){for(let B in Q)A[B]=(A[B]||0)-(Q[B]||0)}function B$A(A){return typeof A=="boolean"||typeof A=="number"||A===null?!A:HB._`!${Bb(A)}`}f9.not=B$A;var J9B=Y$A(f9.operators.AND);function C9B(...A){return A.reduce(J9B)}f9.and=C9B;var X9B=Y$A(f9.operators.OR);function G9B(...A){return A.reduce(X9B)}f9.or=G9B;function Y$A(A){return(Q,B)=>Q===HB.nil?B:B===HB.nil?Q:HB._`${Bb(Q)} ${A} ${Bb(B)}`}function Bb(A){return A instanceof HB.Name?A:HB._`(${A})`}});var wB=R((U$A)=>{Object.defineProperty(U$A,"__esModule",{value:!0});U$A.checkStrictMode=U$A.getErrorPath=U$A.Type=U$A.useFunc=U$A.setEvaluated=U$A.evaluatedPropsToName=U$A.mergeEvaluated=U$A.eachItem=U$A.unescapeJsonPointer=U$A.escapeJsonPointer=U$A.escapeFragment=U$A.unescapeFragment=U$A.schemaRefOrVal=U$A.schemaHasRulesButRef=U$A.schemaHasRules=U$A.checkUnknownRules=U$A.alwaysValidSchema=U$A.toHash=void 0;var eB=GB(),$9B=VD();function U9B(A){let Q={};for(let B of A)Q[B]=!0;return Q}U$A.toHash=U9B;function E9B(A,Q){if(typeof Q=="boolean")return Q;if(Object.keys(Q).length===0)return!0;return G$A(A,Q),!W$A(Q,A.self.RULES.all)}U$A.alwaysValidSchema=E9B;function G$A(A,Q=A.schema){let{opts:B,self:Y}=A;if(!B.strictSchema)return;if(typeof Q==="boolean")return;let J=Y.RULES.keywords;for(let C in Q)if(!J[C])$$A(A,`unknown keyword: "${C}"`)}U$A.checkUnknownRules=G$A;function W$A(A,Q){if(typeof A=="boolean")return!A;for(let B in A)if(Q[B])return!0;return!1}U$A.schemaHasRules=W$A;function K9B(A,Q){if(typeof A=="boolean")return!A;for(let B in A)if(B!=="$ref"&&Q.all[B])return!0;return!1}U$A.schemaHasRulesButRef=K9B;function V9B({topSchemaRef:A,schemaPath:Q},B,Y,J){if(!J){if(typeof B=="number"||typeof B=="boolean")return B;if(typeof B=="string")return eB._`${B}`}return eB._`${A}${Q}${(0,eB.getProperty)(Y)}`}U$A.schemaRefOrVal=V9B;function I9B(A){return F$A(decodeURIComponent(A))}U$A.unescapeFragment=I9B;function H9B(A){return encodeURIComponent(Cb(A))}U$A.escapeFragment=H9B;function Cb(A){if(typeof A=="number")return`${A}`;return A.replace(/~/g,"~0").replace(/\//g,"~1")}U$A.escapeJsonPointer=Cb;function F$A(A){return A.replace(/~1/g,"/").replace(/~0/g,"~")}U$A.unescapeJsonPointer=F$A;function D9B(A,Q){if(Array.isArray(A))for(let B of A)Q(B);else Q(A)}U$A.eachItem=D9B;function C$A({mergeNames:A,mergeToName:Q,mergeValues:B,resultToName:Y}){return(J,C,X,G)=>{let W=X===void 0?C:X instanceof eB.Name?(C instanceof eB.Name?A(J,C,X):Q(J,C,X),X):C instanceof eB.Name?(Q(J,X,C),C):B(C,X);return G===eB.Name&&!(W instanceof eB.Name)?Y(J,W):W}}U$A.mergeEvaluated={props:C$A({mergeNames:(A,Q,B)=>A.if(eB._`${B} !== true && ${Q} !== undefined`,()=>{A.if(eB._`${Q} === true`,()=>A.assign(B,!0),()=>A.assign(B,eB._`${B} || {}`).code(eB._`Object.assign(${B}, ${Q})`))}),mergeToName:(A,Q,B)=>A.if(eB._`${B} !== true`,()=>{if(Q===!0)A.assign(B,!0);else A.assign(B,eB._`${B} || {}`),Xb(A,B,Q)}),mergeValues:(A,Q)=>A===!0?!0:{...A,...Q},resultToName:Z$A}),items:C$A({mergeNames:(A,Q,B)=>A.if(eB._`${B} !== true && ${Q} !== undefined`,()=>A.assign(B,eB._`${Q} === true ? true : ${B} > ${Q} ? ${B} : ${Q}`)),mergeToName:(A,Q,B)=>A.if(eB._`${B} !== true`,()=>A.assign(B,Q===!0?!0:eB._`${B} > ${Q} ? ${B} : ${Q}`)),mergeValues:(A,Q)=>A===!0?!0:Math.max(A,Q),resultToName:(A,Q)=>A.var("items",Q)})};function Z$A(A,Q){if(Q===!0)return A.var("props",!0);let B=A.var("props",eB._`{}`);if(Q!==void 0)Xb(A,B,Q);return B}U$A.evaluatedPropsToName=Z$A;function Xb(A,Q,B){Object.keys(B).forEach((Y)=>A.assign(eB._`${Q}${(0,eB.getProperty)(Y)}`,!0))}U$A.setEvaluated=Xb;var X$A={};function N9B(A,Q){return A.scopeValue("func",{ref:Q,code:X$A[Q.code]||(X$A[Q.code]=new $9B._Code(Q.code))})}U$A.useFunc=N9B;var Jb;(function(A){A[A.Num=0]="Num",A[A.Str=1]="Str"})(Jb||(U$A.Type=Jb={}));function L9B(A,Q,B){if(A instanceof eB.Name){let Y=Q===Jb.Num;return B?Y?eB._`"[" + ${A} + "]"`:eB._`"['" + ${A} + "']"`:Y?eB._`"/" + ${A}`:eB._`"/" + ${A}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return B?(0,eB.getProperty)(A).toString():"/"+Cb(A)}U$A.getErrorPath=L9B;function $$A(A,Q,B=A.opts.strictSchema){if(!B)return;if(Q=`strict mode: ${Q}`,B===!0)throw Error(Q);A.self.logger.warn(Q)}U$A.checkStrictMode=$$A});var u6=R((K$A)=>{Object.defineProperty(K$A,"__esModule",{value:!0});var OJ=GB(),f9B={data:new OJ.Name("data"),valCxt:new OJ.Name("valCxt"),instancePath:new OJ.Name("instancePath"),parentData:new OJ.Name("parentData"),parentDataProperty:new OJ.Name("parentDataProperty"),rootData:new OJ.Name("rootData"),dynamicAnchors:new OJ.Name("dynamicAnchors"),vErrors:new OJ.Name("vErrors"),errors:new OJ.Name("errors"),this:new OJ.Name("this"),self:new OJ.Name("self"),scope:new OJ.Name("scope"),json:new OJ.Name("json"),jsonPos:new OJ.Name("jsonPos"),jsonLen:new OJ.Name("jsonLen"),jsonPart:new OJ.Name("jsonPart")};K$A.default=f9B});var HD=R((D$A)=>{Object.defineProperty(D$A,"__esModule",{value:!0});D$A.extendErrors=D$A.resetErrorsCount=D$A.reportExtraError=D$A.reportError=D$A.keyword$DataError=D$A.keywordError=void 0;var qB=GB(),Fw=wB(),W9=u6();D$A.keywordError={message:({keyword:A})=>qB.str`must pass "${A}" keyword validation`};D$A.keyword$DataError={message:({keyword:A,schemaType:Q})=>Q?qB.str`"${A}" keyword must be ${Q} ($data)`:qB.str`"${A}" keyword is invalid ($data)`};function m9B(A,Q=D$A.keywordError,B,Y){let{it:J}=A,{gen:C,compositeRule:X,allErrors:G}=J,W=H$A(A,Q,B);if(Y!==null&&Y!==void 0?Y:X||G)V$A(C,W);else I$A(J,qB._`[${W}]`)}D$A.reportError=m9B;function u9B(A,Q=D$A.keywordError,B){let{it:Y}=A,{gen:J,compositeRule:C,allErrors:X}=Y,G=H$A(A,Q,B);if(V$A(J,G),!(C||X))I$A(Y,W9.default.vErrors)}D$A.reportExtraError=u9B;function d9B(A,Q){A.assign(W9.default.errors,Q),A.if(qB._`${W9.default.vErrors} !== null`,()=>A.if(Q,()=>A.assign(qB._`${W9.default.vErrors}.length`,Q),()=>A.assign(W9.default.vErrors,null)))}D$A.resetErrorsCount=d9B;function c9B({gen:A,keyword:Q,schemaValue:B,data:Y,errsCount:J,it:C}){if(J===void 0)throw Error("ajv implementation error");let X=A.name("err");A.forRange("i",J,W9.default.errors,(G)=>{if(A.const(X,qB._`${W9.default.vErrors}[${G}]`),A.if(qB._`${X}.instancePath === undefined`,()=>A.assign(qB._`${X}.instancePath`,(0,qB.strConcat)(W9.default.instancePath,C.errorPath))),A.assign(qB._`${X}.schemaPath`,qB.str`${C.errSchemaPath}/${Q}`),C.opts.verbose)A.assign(qB._`${X}.schema`,B),A.assign(qB._`${X}.data`,Y)})}D$A.extendErrors=c9B;function V$A(A,Q){let B=A.const("err",Q);A.if(qB._`${W9.default.vErrors} === null`,()=>A.assign(W9.default.vErrors,qB._`[${B}]`),qB._`${W9.default.vErrors}.push(${B})`),A.code(qB._`${W9.default.errors}++`)}function I$A(A,Q){let{gen:B,validateName:Y,schemaEnv:J}=A;if(J.$async)B.throw(qB._`new ${A.ValidationError}(${Q})`);else B.assign(qB._`${Y}.errors`,Q),B.return(!1)}var KZ={keyword:new qB.Name("keyword"),schemaPath:new qB.Name("schemaPath"),params:new qB.Name("params"),propertyName:new qB.Name("propertyName"),message:new qB.Name("message"),schema:new qB.Name("schema"),parentSchema:new qB.Name("parentSchema")};function H$A(A,Q,B){let{createErrors:Y}=A.it;if(Y===!1)return qB._`{}`;return l9B(A,Q,B)}function l9B(A,Q,B={}){let{gen:Y,it:J}=A,C=[p9B(J,B),i9B(A,B)];return n9B(A,Q,C),Y.object(...C)}function p9B({errorPath:A},{instancePath:Q}){let B=Q?qB.str`${A}${(0,Fw.getErrorPath)(Q,Fw.Type.Str)}`:A;return[W9.default.instancePath,(0,qB.strConcat)(W9.default.instancePath,B)]}function i9B({keyword:A,it:{errSchemaPath:Q}},{schemaPath:B,parentSchema:Y}){let J=Y?Q:qB.str`${Q}/${A}`;if(B)J=qB.str`${J}${(0,Fw.getErrorPath)(B,Fw.Type.Str)}`;return[KZ.schemaPath,J]}function n9B(A,{params:Q,message:B},Y){let{keyword:J,data:C,schemaValue:X,it:G}=A,{opts:W,propertyName:F,topSchemaRef:Z,schemaPath:U}=G;if(Y.push([KZ.keyword,J],[KZ.params,typeof Q=="function"?Q(A):Q||qB._`{}`]),W.messages)Y.push([KZ.message,typeof B=="function"?B(A):B]);if(W.verbose)Y.push([KZ.schema,X],[KZ.parentSchema,qB._`${Z}${U}`],[W9.default.data,C]);if(F)Y.push([KZ.propertyName,F])}});var z$A=R((q$A)=>{Object.defineProperty(q$A,"__esModule",{value:!0});q$A.boolOrEmptySchema=q$A.topBoolOrEmptySchema=void 0;var t9B=HD(),e9B=GB(),A8B=u6(),Q8B={message:"boolean schema is false"};function B8B(A){let{gen:Q,schema:B,validateName:Y}=A;if(B===!1)L$A(A,!1);else if(typeof B=="object"&&B.$async===!0)Q.return(A8B.default.data);else Q.assign(e9B._`${Y}.errors`,null),Q.return(!0)}q$A.topBoolOrEmptySchema=B8B;function Y8B(A,Q){let{gen:B,schema:Y}=A;if(Y===!1)B.var(Q,!1),L$A(A);else B.var(Q,!0)}q$A.boolOrEmptySchema=Y8B;function L$A(A,Q){let{gen:B,data:Y}=A,J={gen:B,keyword:"false schema",data:Y,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:A};(0,t9B.reportError)(J,Q8B,void 0,Q)}});var Wb=R((R$A)=>{Object.defineProperty(R$A,"__esModule",{value:!0});R$A.getRules=R$A.isJSONType=void 0;var C8B=["string","number","integer","boolean","null","object","array"],X8B=new Set(C8B);function G8B(A){return typeof A=="string"&&X8B.has(A)}R$A.isJSONType=G8B;function W8B(){let A={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...A,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},A.number,A.string,A.array,A.object],post:{rules:[]},all:{},keywords:{}}}R$A.getRules=W8B});var Fb=R((P$A)=>{Object.defineProperty(P$A,"__esModule",{value:!0});P$A.shouldUseRule=P$A.shouldUseGroup=P$A.schemaHasRulesForType=void 0;function Z8B({schema:A,self:Q},B){let Y=Q.RULES.types[B];return Y&&Y!==!0&&j$A(A,Y)}P$A.schemaHasRulesForType=Z8B;function j$A(A,Q){return Q.rules.some((B)=>O$A(A,B))}P$A.shouldUseGroup=j$A;function O$A(A,Q){var B;return A[Q.keyword]!==void 0||((B=Q.definition.implements)===null||B===void 0?void 0:B.some((Y)=>A[Y]!==void 0))}P$A.shouldUseRule=O$A});var DD=R((v$A)=>{Object.defineProperty(v$A,"__esModule",{value:!0});v$A.reportTypeError=v$A.checkDataTypes=v$A.checkDataType=v$A.coerceAndCheckDataType=v$A.getJSONTypes=v$A.getSchemaTypes=v$A.DataType=void 0;var E8B=Wb(),K8B=Fb(),V8B=HD(),aQ=GB(),S$A=wB(),UE;(function(A){A[A.Correct=0]="Correct",A[A.Wrong=1]="Wrong"})(UE||(v$A.DataType=UE={}));function I8B(A){let Q=k$A(A.type);if(Q.includes("null")){if(A.nullable===!1)throw Error("type: null contradicts nullable: false")}else{if(!Q.length&&A.nullable!==void 0)throw Error('"nullable" cannot be used without "type"');if(A.nullable===!0)Q.push("null")}return Q}v$A.getSchemaTypes=I8B;function k$A(A){let Q=Array.isArray(A)?A:A?[A]:[];if(Q.every(E8B.isJSONType))return Q;throw Error("type must be JSONType or JSONType[]: "+Q.join(","))}v$A.getJSONTypes=k$A;function H8B(A,Q){let{gen:B,data:Y,opts:J}=A,C=D8B(Q,J.coerceTypes),X=Q.length>0&&!(C.length===0&&Q.length===1&&(0,K8B.schemaHasRulesForType)(A,Q[0]));if(X){let G=$b(Q,Y,J.strictNumbers,UE.Wrong);B.if(G,()=>{if(C.length)N8B(A,Q,C);else Ub(A)})}return X}v$A.coerceAndCheckDataType=H8B;var _$A=new Set(["string","number","integer","boolean","null"]);function D8B(A,Q){return Q?A.filter((B)=>_$A.has(B)||Q==="array"&&B==="array"):[]}function N8B(A,Q,B){let{gen:Y,data:J,opts:C}=A,X=Y.let("dataType",aQ._`typeof ${J}`),G=Y.let("coerced",aQ._`undefined`);if(C.coerceTypes==="array")Y.if(aQ._`${X} == 'object' && Array.isArray(${J}) && ${J}.length == 1`,()=>Y.assign(J,aQ._`${J}[0]`).assign(X,aQ._`typeof ${J}`).if($b(Q,J,C.strictNumbers),()=>Y.assign(G,J)));Y.if(aQ._`${G} !== undefined`);for(let F of B)if(_$A.has(F)||F==="array"&&C.coerceTypes==="array")W(F);Y.else(),Ub(A),Y.endIf(),Y.if(aQ._`${G} !== undefined`,()=>{Y.assign(J,G),L8B(A,G)});function W(F){switch(F){case"string":Y.elseIf(aQ._`${X} == "number" || ${X} == "boolean"`).assign(G,aQ._`"" + ${J}`).elseIf(aQ._`${J} === null`).assign(G,aQ._`""`);return;case"number":Y.elseIf(aQ._`${X} == "boolean" || ${J} === null +`));return U(UnQ.bind(void 0,A))}ACA.exports=EnQ});var YCA=R((o6Y,BCA)=>{var KnQ=QCA();function VnQ(){this.argTypes=[],this.shimArgs=[],this.arrayArgs=[],this.arrayBlockIndices=[],this.scalarArgs=[],this.offsetArgs=[],this.offsetArgIndex=[],this.indexArgs=[],this.shapeArgs=[],this.funcName="",this.pre=null,this.body=null,this.post=null,this.debug=!1}function InQ(A){var Q=new VnQ;Q.pre=A.pre,Q.body=A.body,Q.post=A.post;var B=A.args.slice(0);Q.argTypes=B;for(var Y=0;Y0)throw Error("cwise: pre() block may not reference array args");if(Y0)throw Error("cwise: post() block may not reference array args")}else if(J==="scalar")Q.scalarArgs.push(Y),Q.shimArgs.push("scalar"+Y);else if(J==="index"){if(Q.indexArgs.push(Y),Y0)throw Error("cwise: pre() block may not reference array index");if(Y0)throw Error("cwise: post() block may not reference array index")}else if(J==="shape"){if(Q.shapeArgs.push(Y),YB.length)throw Error("cwise: Too many arguments in pre() block");if(Q.body.args.length>B.length)throw Error("cwise: Too many arguments in body() block");if(Q.post.args.length>B.length)throw Error("cwise: Too many arguments in post() block");return Q.debug=!!A.printCode||!!A.debug,Q.funcName=A.funcName||"cwise",Q.blockSize=A.blockSize||64,KnQ(Q)}BCA.exports=InQ});var ZCA=R((GY)=>{var v9=YCA(),T3={body:"",args:[],thisVars:[],localVars:[]};function jh(A){if(!A)return T3;for(var Q=0;Q>",rrshift:">>>"};(function(){for(var A in JCA){var Q=JCA[A];GY[A]=k0({args:["array","array","array"],body:{args:["a","b","c"],body:"a=b"+Q+"c"},funcName:A}),GY[A+"eq"]=k0({args:["array","array"],body:{args:["a","b"],body:"a"+Q+"=b"},rvalue:!0,funcName:A+"eq"}),GY[A+"s"]=k0({args:["array","array","scalar"],body:{args:["a","b","s"],body:"a=b"+Q+"s"},funcName:A+"s"}),GY[A+"seq"]=k0({args:["array","scalar"],body:{args:["a","s"],body:"a"+Q+"=s"},rvalue:!0,funcName:A+"seq"})}})();var CCA={not:"!",bnot:"~",neg:"-",recip:"1.0/"};(function(){for(var A in CCA){var Q=CCA[A];GY[A]=k0({args:["array","array"],body:{args:["a","b"],body:"a="+Q+"b"},funcName:A}),GY[A+"eq"]=k0({args:["array"],body:{args:["a"],body:"a="+Q+"a"},rvalue:!0,count:2,funcName:A+"eq"})}})();var XCA={and:"&&",or:"||",eq:"===",neq:"!==",lt:"<",gt:">",leq:"<=",geq:">="};(function(){for(var A in XCA){var Q=XCA[A];GY[A]=k0({args:["array","array","array"],body:{args:["a","b","c"],body:"a=b"+Q+"c"},funcName:A}),GY[A+"s"]=k0({args:["array","array","scalar"],body:{args:["a","b","s"],body:"a=b"+Q+"s"},funcName:A+"s"}),GY[A+"eq"]=k0({args:["array","array"],body:{args:["a","b"],body:"a=a"+Q+"b"},rvalue:!0,count:2,funcName:A+"eq"}),GY[A+"seq"]=k0({args:["array","scalar"],body:{args:["a","s"],body:"a=a"+Q+"s"},rvalue:!0,count:2,funcName:A+"seq"})}})();var GCA=["abs","acos","asin","atan","ceil","cos","exp","floor","log","round","sin","sqrt","tan"];(function(){for(var A=0;Athis_s){this_s=-a}else if(a>this_s){this_s=a}",localVars:[],thisVars:["this_s"]},post:{args:[],localVars:[],thisVars:["this_s"],body:"return this_s"},funcName:"norminf"});GY.norm1=v9({args:["array"],pre:{args:[],localVars:[],thisVars:["this_s"],body:"this_s=0"},body:{args:[{name:"a",lvalue:!1,rvalue:!0,count:3}],body:"this_s+=a<0?-a:a",localVars:[],thisVars:["this_s"]},post:{args:[],localVars:[],thisVars:["this_s"],body:"return this_s"},funcName:"norm1"});GY.sup=v9({args:["array"],pre:{body:"this_h=-Infinity",args:[],thisVars:["this_h"],localVars:[]},body:{body:"if(_inline_1_arg0_>this_h)this_h=_inline_1_arg0_",args:[{name:"_inline_1_arg0_",lvalue:!1,rvalue:!0,count:2}],thisVars:["this_h"],localVars:[]},post:{body:"return this_h",args:[],thisVars:["this_h"],localVars:[]}});GY.inf=v9({args:["array"],pre:{body:"this_h=Infinity",args:[],thisVars:["this_h"],localVars:[]},body:{body:"if(_inline_1_arg0_this_v){this_v=_inline_1_arg1_;for(var _inline_1_k=0;_inline_1_k<_inline_1_arg0_.length;++_inline_1_k){this_i[_inline_1_k]=_inline_1_arg0_[_inline_1_k]}}}",args:[{name:"_inline_1_arg0_",lvalue:!1,rvalue:!0,count:2},{name:"_inline_1_arg1_",lvalue:!1,rvalue:!0,count:2}],thisVars:["this_i","this_v"],localVars:["_inline_1_k"]},post:{body:"{return this_i}",args:[],thisVars:["this_i"],localVars:[]}});GY.random=k0({args:["array"],pre:{args:[],body:"this_f=Math.random",thisVars:["this_f"]},body:{args:["a"],body:"a=this_f()",thisVars:["this_f"]},funcName:"random"});GY.assign=k0({args:["array","array"],body:{args:["a","b"],body:"a=b"},funcName:"assign"});GY.assigns=k0({args:["array","scalar"],body:{args:["a","b"],body:"a=b"},funcName:"assigns"});GY.equals=v9({args:["array","array"],pre:T3,body:{args:[{name:"x",lvalue:!1,rvalue:!0,count:1},{name:"y",lvalue:!1,rvalue:!0,count:1}],body:"if(x!==y){return false}",localVars:[],thisVars:[]},post:{args:[],localVars:[],thisVars:[],body:"return true"},funcName:"equals"})});var J1A=R((EH,dh)=>{var u3=function(){var A="b9H79Tebbbe9ok9Geueu9Geub9Gbb9Gruuuuuuueu9Gvuuuuueu9Gduueu9Gluuuueu9Gvuuuuub9Gouuuuuub9Gluuuub9Giuuueui8AYdilveoveovrrwrrDDoDrbqqbelve9Weiiviebeoweuec;G:Qdkr:nlAo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bb8F9TW79O9V9Wt9FW9U9J9V9KW9wWVtW949c919M9MWV9mW4W2be8A9TW79O9V9Wt9FW9U9J9V9KW9wWVtW949c919M9MWVbd8F9TW79O9V9Wt9FW9U9J9V9KW9wWVtW949c919M9MWV9c9V919U9KbiE9TW79O9V9Wt9FW9U9J9V9KW9wWVtW949wWV79P9V9UblY9TW79O9V9Wt9FW9U9J9V9KW69U9KW949c919M9MWVbv8E9TW79O9V9Wt9FW9U9J9V9KW69U9KW949c919M9MWV9c9V919U9Kbo8A9TW79O9V9Wt9FW9U9J9V9KW69U9KW949wWV79P9V9UbrE9TW79O9V9Wt9FW9U9J9V9KW69U9KW949tWG91W9U9JWbwa9TW79O9V9Wt9FW9U9J9V9KW69U9KW949tWG91W9U9JW9c9V919U9KbDL9TW79O9V9Wt9FW9U9J9V9KWS9P2tWV9p9JtbqK9TW79O9V9Wt9FW9U9J9V9KWS9P2tWV9r919HtbkL9TW79O9V9Wt9FW9U9J9V9KWS9P2tWVT949WbxE9TW79O9V9Wt9F9V9Wt9P9T9P96W9wWVtW94J9H9J9OWbsa9TW79O9V9Wt9F9V9Wt9P9T9P96W9wWVtW94J9H9J9OW9ttV9P9Wbza9TW79O9V9Wt9F9V9Wt9P9T9P96W9wWVtW94SWt9J9O9sW9T9H9WbHK9TW79O9V9Wt9F79W9Ht9P9H29t9VVt9sW9T9H9WbOl79IV9RbCDwebcekdKLqN9OYdbk:Bhdhud9:8Jjjjjbc;qw9Rgr8KjjjjbcbhwdnaeTmbabcbyd;C:kjjbaoaocb9iEgDc:GeV86bbarc;adfcbcjdz:wjjjb8AdnaiTmbarc;adfadalz:vjjjb8Akarc;abfalfcbcbcjdal9RalcFe0Ez:wjjjb8Aarc;abfarc;adfalz:vjjjb8AarcUf9cb83ibarc8Wf9cb83ibarcyf9cb83ibarcaf9cb83ibarcKf9cb83ibarczf9cb83ibar9cb83iwar9cb83ibcj;abal9Uc;WFbGcjdalca0Ehqdnaicd6mbavcd9imbaDTmbadcefhkaqci2gxal2hmarc;alfclfhParc;qlfceVhsarc;qofclVhzarc;qofcKfhHarc;qofczfhOcbhAincdhCcbhodnavci6mbaH9cb83ibaO9cb83ibar9cb83i;yoar9cb83i;qoadaAfgoybbhXcbhQincbhwcbhLdninaoalfhKaoybbgYaX7aLVhLawcP0meaKhoaYhXawcefgwaQfai6mbkkcbhXarc;qofhwincwh8AcwhEdnaLaX93gocFeGg3cs0mbclhEa3ci0mba3cb9hcethEkdnaocw4cFeGg3cs0mbclh8Aa3ci0mba3cb9hceth8Aka8AaEfh3awydbh5cwh8AcwhEdnaocz4cFeGg8Ecs0mbclhEa8Eci0mba8Ecb9hcethEka3a5fh3dnaocFFFFb0mbclh8AaocFFF8F0mbaocFFFr0ceth8Akawa3aEfa8AfBdbawclfhwaXcefgXcw9hmbkaKhoaYhXaQczfgQai6mbkcbhocehwazhLinawaoaLydbarc;qofaocdtfydb6EhoaLclfhLawcefgwcw9hmbkcihCkcbh3arc;qlfcbcjdz:wjjjb8Aarc;alfcwfcbBdbar9cb83i;alaoclth8Fadhaaqhhakh5inarc;qlfadcba3cufgoaoa30Eal2falz:vjjjb8Aaiahaiah6Ehgdnaqaia39Ra3aqfai6EgYcsfc9WGgoaY9nmbarc;qofaYfcbaoaY9Rz:wjjjb8Akada3al2fh8Jcbh8Kina8Ka8FVcl4hQarc;alfa8Kcdtfh8LaAh8Mcbh8Nina8NaAfhwdndndndndndna8KPldebidkasa8Mc98GgLfhoa5aLfh8Aarc;qlfawc98GgLfRbbhXcwhwinaoRbbawtaXVhXaocefhoawcwfgwca9hmbkaYTmla8Ncith8Ea8JaLfhEcbhKinaERbbhLcwhoa8AhwinawRbbaotaLVhLawcefhwaocwfgoca9hmbkarc;qofaKfaLaX7aQ93a8E486bba8Aalfh8AaEalfhEaLhXaKcefgKaY9hmbxlkkaYTmia8Mc9:Ghoa8NcitcwGhEarc;qlfawceVfRbbcwtarc;qlfawc9:GfRbbVhLarc;qofhwaghXinawa5aofRbbcwtaaaofRbbVg8AaL9RgLcetaLcztcz91cs47cFFiGaE486bbaoalfhoawcefhwa8AhLa3aXcufgX9hmbxikkaYTmda8Jawfhoarc;qlfawfRbbhLarc;qofhwaghXinawaoRbbg8AaL9RgLcetaLcKtcK91cr4786bbawcefhwaoalfhoa8AhLa3aXcufgX9hmbxdkkaYTmeka8LydbhEcbhKarc;qofhoincdhLcbhwinaLaoawfRbbcb9hfhLawcefgwcz9hmbkclhXcbhwinaXaoawfRbbcd0fhXawcefgwcz9hmbkcwh8Acbhwina8AaoawfRbbcP0fh8Aawcefgwcz9hmbkaLaXaLaX6Egwa8Aawa8A6Egwczawcz6EaEfhEaoczfhoaKczfgKaY6mbka8LaEBdbka8Mcefh8Ma8Ncefg8Ncl9hmbka8Kcefg8KaC9hmbkaaamfhaahaxfhha5amfh5a3axfg3ai6mbkcbhocehwaPhLinawaoaLydbarc;alfaocdtfydb6EhoaLclfhLawcefgXhwaCaX9hmbkaraAcd4fa8FcdVaoaocdSE86bbaAclfgAal6mbkkabaefh8Kabcefhoalcd4gecbaDEhkadcefhOarc;abfceVhHcbhmdndninaiam9nmearc;qofcbcjdz:wjjjb8Aa8Kao9Rak6mdadamal2gwfhxcbh8JaOawfhzaocbakz:wjjjbghakfh5aqaiam9Ramaqfai6Egscsfgocl4cifcd4hCaoc9WGg8LThPindndndndndndndndndndnaDTmbara8Jcd4fRbbgLciGPlbedlbkasTmdaxa8Jfhoarc;abfa8JfRbbhLarc;qofhwashXinawaoRbbg8AaL9RgLcetaLcKtcK91cr4786bbawcefhwaoalfhoa8AhLaXcufgXmbxikkasTmia8JcitcwGhEarc;abfa8JceVfRbbcwtarc;abfa8Jc9:GgofRbbVhLaxaofhoarc;qofhwashXinawao8Vbbg8AaL9RgLcetaLcztcz91cs47cFFiGaE486bbawcefhwaoalfhoa8AhLaXcufgXmbxdkkaHa8Jc98GgEfhoazaEfh8Aarc;abfaEfRbbhXcwhwinaoRbbawtaXVhXaocefhoawcwfgwca9hmbkasTmbaLcl4hYa8JcitcKGh3axaEfhEcbhKinaERbbhLcwhoa8AhwinawRbbaotaLVhLawcefhwaocwfgoca9hmbkarc;qofaKfaLaX7aY93a3486bba8Aalfh8AaEalfhEaLhXaKcefgKas9hmbkkaDmbcbhoxlka8LTmbcbhodninarc;qofaofgwcwf8Pibaw8Pib:e9qTmeaoczfgoa8L9pmdxbkkdnavmbcehoxikcbhEaChKaChYinarc;qofaEfgocwf8Pibhyao8Pibh8PcdhLcbhwinaLaoawfRbbcb9hfhLawcefgwcz9hmbkclhXcbhwinaXaoawfRbbcd0fhXawcefgwcz9hmbkcwh8Acbhwina8AaoawfRbbcP0fh8Aawcefgwcz9hmbkaLaXaLaX6Egoa8Aaoa8A6Egoczaocz6EaYfhYaocucbaya8P:e9cb9sEgwaoaw6EaKfhKaEczfgEa8L9pmdxbkkaha8Jcd4fgoaoRbbcda8JcetcoGtV86bbxikdnaKas6mbaYas6mbaha8Jcd4fgoaoRbbcia8JcetcoGtV86bba8Ka59Ras6mra5arc;qofasz:vjjjbasfh5xikaKaY9phokaha8Jcd4fgwawRbbaoa8JcetcoGtV86bbka8Ka59RaC6mla5cbaCz:wjjjbgAaCfhYdndna8LmbaPhoxekdna8KaY9RcK9pmbaPhoxekaocdtc:q1jjbfcj1jjbaDEg5ydxggcetc;:FFFeGh8Fcuh3cuagtcu7cFeGhacbh8Marc;qofhLinarc;qofa8MfhQczhEdndndnagPDbeeeeeeedekcucbaQcwf8PibaQ8Pib:e9cb9sEhExekcbhoa8FhEinaEaaaLaofRbb9nfhEaocefgocz9hmbkkcih8Ecbh8Ainczhwdndndna5a8AcdtfydbgKPDbeeeeeeedekcucbaQcwf8PibaQ8Pib:e9cb9sEhwxekaKcetc;:FFFeGhwcuaKtcu7cFeGhXcbhoinawaXaLaofRbb9nfhwaocefgocz9hmbkkdndnawaE6mbaKa39hmeawaE9hmea5a8EcdtfydbcwSmeka8Ah8EawhEka8Acefg8Aci9hmbkaAa8Mco4fgoaoRbba8Ea8Mci4coGtV86bbdndndna5a8Ecdtfydbg3PDdbbbbbbbebkdncwa39Tg8ETmbcua3tcu7hwdndna3ceSmbcbh8NaLhQinaQhoa8Eh8AcbhXinaoRbbgEawcFeGgKaEaK6EaXa3tVhXaocefhoa8Acufg8AmbkaYaX86bbaQa8EfhQaYcefhYa8Na8Efg8Ncz6mbxdkkcbh8NaLhQinaQhoa8Eh8AcbhXinaoRbbgEawcFeGgKaEaK6EaXcetVhXaocefhoa8Acufg8AmbkaYaX:T9cFe:d9c:c:qj:bw9:9c:q;c1:I1e:d9c:b:c:e1z9:9ca188bbaQa8EfhQaYcefhYa8Na8Efg8Ncz6mbkkcbhoinaYaLaofRbbgX86bbaYaXawcFeG9pfhYaocefgocz9hmbxikkdna3ceSmbinaYcb86bbaYcefhYxbkkinaYcb86bbaYcefhYxbkkaYaQ8Pbb83bbaYcwfaQcwf8Pbb83bbaYczfhYka8Mczfg8Ma8L9pgomeaLczfhLa8KaY9RcK9pmbkkaoTmlaYh5aYTmlka8Jcefg8Jal9hmbkarc;abfaxascufal2falz:vjjjb8Aasamfhma5hoa5mbkcbhwxdkdna8Kao9RakalfgwcKcaaDEgLawaL0EgX9pmbcbhwxdkdnawaL9pmbaocbaXaw9Rgwz:wjjjbawfhokaoarc;adfalz:vjjjbalfhodnaDTmbaoaraez:vjjjbaefhokaoab9Rhwxekcbhwkarc;qwf8Kjjjjbawk5babaeadaialcdcbyd;C:kjjbz:bjjjbk9reduaecd4gdaefgicaaica0Eabcj;abae9Uc;WFbGcjdaeca0Egifcufai9Uae2aiadfaicl4cifcd4f2fcefkmbcbabBd;C:kjjbk:Ese5u8Jjjjjbc;ae9Rgl8Kjjjjbcbhvdnaici9UgocHfae0mbabcbyd;m:kjjbgrc;GeV86bbalc;abfcFecjez:wjjjb8AalcUfgw9cu83ibalc8WfgD9cu83ibalcyfgq9cu83ibalcafgk9cu83ibalcKfgx9cu83ibalczfgm9cu83ibal9cu83iwal9cu83ibabaefc9WfhPabcefgsaofhednaiTmbcmcsarcb9kgzEhHcbhOcbhAcbhCcbhXcbhQindnaeaP9nmbcbhvxikaQcufhvadaCcdtfgLydbhKaLcwfydbhYaLclfydbh8AcbhEdndndninalc;abfavcsGcitfgoydlh3dndndnaoydbgoaK9hmba3a8ASmekdnaoa8A9hmba3aY9hmbaEcefhExekaoaY9hmea3aK9hmeaEcdfhEkaEc870mdaXcufhvaLaEciGcx2goc;i1jjbfydbcdtfydbh3aLaoc;e1jjbfydbcdtfydbh8AaLaoc;a1jjbfydbcdtfydbhKcbhodnindnalavcsGcdtfydba39hmbaohYxdkcuhYavcufhvaocefgocz9hmbkkaOa3aOSgvaYce9iaYaH9oVgoGfhOdndndncbcsavEaYaoEgvcs9hmbarce9imba3a3aAa3cefaASgvEgAcefSmecmcsavEhvkasavaEcdtc;WeGV86bbavcs9hmea3aA9Rgvcetavc8F917hvinaeavcFb0crtavcFbGV86bbaecefheavcje6hoavcr4hvaoTmbka3hAxvkcPhvasaEcdtcPV86bba3hAkavTmiavaH9omicdhocehEaQhYxlkavcufhvaEclfgEc;ab9hmbkkdnaLceaYaOSceta8AaOSEcx2gvc;a1jjbfydbcdtfydbgKTaLavc;e1jjbfydbcdtfydbg8AceSGaLavc;i1jjbfydbcdtfydbg3cdSGaOcb9hGazGg5ce9hmbaw9cu83ibaD9cu83ibaq9cu83ibak9cu83ibax9cu83ibam9cu83ibal9cu83iwal9cu83ibcbhOkcbhEaXcufgvhodnindnalaocsGcdtfydba8A9hmbaEhYxdkcuhYaocufhoaEcefgEcz9hmbkkcbhodnindnalavcsGcdtfydba39hmbaohExdkcuhEavcufhvaocefgocz9hmbkkaOaKaOSg8EfhLdndnaYcm0mbaYcefhYxekcbcsa8AaLSgvEhYaLavfhLkdndnaEcm0mbaEcefhExekcbcsa3aLSgvEhEaLavfhLkc9:cua8EEh8FcbhvaEaYcltVgacFeGhodndndninavc:W1jjbfRbbaoSmeavcefgvcz9hmbxdkka5aKaO9havcm0VVmbasavc;WeV86bbxekasa8F86bbaeaa86bbaecefhekdna8EmbaKaA9Rgvcetavc8F917hvinaeavcFb0gocrtavcFbGV86bbavcr4hvaecefheaombkaKhAkdnaYcs9hmba8AaA9Rgvcetavc8F917hvinaeavcFb0gocrtavcFbGV86bbavcr4hvaecefheaombka8AhAkdnaEcs9hmba3aA9Rgvcetavc8F917hvinaeavcFb0gocrtavcFbGV86bbavcr4hvaecefheaombka3hAkalaXcdtfaKBdbaXcefcsGhvdndnaYPzbeeeeeeeeeeeeeebekalavcdtfa8ABdbaXcdfcsGhvkdndnaEPzbeeeeeeeeeeeeeebekalavcdtfa3BdbavcefcsGhvkcihoalc;abfaQcitfgEaKBdlaEa8ABdbaQcefcsGhYcdhEavhXaLhOxekcdhoalaXcdtfa3BdbcehEaXcefcsGhXaQhYkalc;abfaYcitfgva8ABdlava3Bdbalc;abfaQaEfcsGcitfgva3BdlavaKBdbascefhsaQaofcsGhQaCcifgCai6mbkkdnaeaP9nmbcbhvxekcbhvinaeavfavc:W1jjbfRbb86bbavcefgvcz9hmbkaeab9Ravfhvkalc;aef8KjjjjbavkZeeucbhddninadcefgdc8F0meceadtae6mbkkadcrfcFeGcr9Uci2cdfabci9U2cHfkmbcbabBd;m:kjjbk:Adewu8Jjjjjbcz9Rhlcbhvdnaicvfae0mbcbhvabcbRb;m:kjjbc;qeV86bbal9cb83iwabcefhoabaefc98fhrdnaiTmbcbhwcbhDindnaoar6mbcbskadaDcdtfydbgqalcwfawaqav9Rgvavc8F91gv7av9Rc507gwcdtfgkydb9Rgvc8E91c9:Gavcdt7awVhvinaoavcFb0gecrtavcFbGV86bbavcr4hvaocefhoaembkakaqBdbaqhvaDcefgDai9hmbkkdnaoar9nmbcbskaocbBbbaoab9RclfhvkavkBeeucbhddninadcefgdc8F0meceadtae6mbkkadcwfcFeGcr9Uab2cvfk:bvli99dui99ludnaeTmbcuadcetcuftcu7:Zhvdndncuaicuftcu7:ZgoJbbbZMgr:lJbbb9p9DTmbar:Ohwxekcjjjj94hwkcbhicbhDinalclfIdbgrJbbbbJbbjZalIdbgq:lar:lMalcwfIdbgk:lMgr:varJbbbb9BEgrNhxaqarNhrdndnakJbbbb9GTmbaxhqxekJbbjZar:l:tgqaq:maxJbbbb9GEhqJbbjZax:l:tgxax:marJbbbb9GEhrkdndnalcxfIdbgxJbbj:;axJbbj:;9GEgkJbbjZakJbbjZ9FEavNJbbbZJbbb:;axJbbbb9GEMgx:lJbbb9p9DTmbax:Ohmxekcjjjj94hmkdndnaqJbbj:;aqJbbj:;9GEgxJbbjZaxJbbjZ9FEaoNJbbbZJbbb:;aqJbbbb9GEMgq:lJbbb9p9DTmbaq:OhPxekcjjjj94hPkdndnarJbbj:;arJbbj:;9GEgqJbbjZaqJbbjZ9FEaoNJbbbZJbbb:;arJbbbb9GEMgr:lJbbb9p9DTmbar:Ohsxekcjjjj94hskdndnadcl9hmbabaifgzas86bbazcifam86bbazcdfaw86bbazcefaP86bbxekabaDfgzas87ebazcofam87ebazclfaw87ebazcdfaP87ebkalczfhlaiclfhiaDcwfhDaecufgembkkk;hlld99eud99eudnaeTmbdndncuaicuftcu7:ZgvJbbbZMgo:lJbbb9p9DTmbao:Ohixekcjjjj94hikaic;8FiGhrinabcofcicdalclfIdb:lalIdb:l9EgialcwfIdb:lalaicdtfIdb:l9EEgialcxfIdb:lalaicdtfIdb:l9EEgiarV87ebdndnJbbj:;JbbjZalaicdtfIdbJbbbb9DEgoalaicd7cdtfIdbJ;Zl:1ZNNgwJbbj:;awJbbj:;9GEgDJbbjZaDJbbjZ9FEavNJbbbZJbbb:;awJbbbb9GEMgw:lJbbb9p9DTmbaw:Ohqxekcjjjj94hqkabcdfaq87ebdndnalaicefciGcdtfIdbJ;Zl:1ZNaoNgwJbbj:;awJbbj:;9GEgDJbbjZaDJbbjZ9FEavNJbbbZJbbb:;awJbbbb9GEMgw:lJbbb9p9DTmbaw:Ohqxekcjjjj94hqkabaq87ebdndnaoalaicufciGcdtfIdbJ;Zl:1ZNNgoJbbj:;aoJbbj:;9GEgwJbbjZawJbbjZ9FEavNJbbbZJbbb:;aoJbbbb9GEMgo:lJbbb9p9DTmbao:Ohixekcjjjj94hikabclfai87ebabcwfhbalczfhlaecufgembkkk;3viDue99eu8Jjjjjbcjd9Rgo8Kjjjjbadcd4hrdndndndnavcd9hmbadcl6meaohwarhDinawc:CuBdbawclfhwaDcufgDmbkaeTmiadcl6mdarcdthqalhkcbhxinaohwakhDarhminawawydbgPcbaDIdbgs:8cL4cFeGc:cufasJbbbb9BEgzaPaz9kEBdbaDclfhDawclfhwamcufgmmbkakaqfhkaxcefgxaeSmixbkkaeTmdxekaeTmekarcdthkavce9hhqadcl6hdcbhxindndndnaqmbadmdc:CuhDalhwarhminaDcbawIdbgs:8cL4cFeGc:cufasJbbbb9BEgPaDaP9kEhDawclfhwamcufgmmbxdkkc:CuhDdndnavPleddbdkadmdaohwalhmarhPinawcbamIdbgs:8cL4cFeGgzc;:bazc;:b0Ec:cufasJbbbb9BEBdbamclfhmawclfhwaPcufgPmbxdkkadmecbhwarhminaoawfcbalawfIdbgs:8cL4cFeGgPc8AaPc8A0Ec:cufasJbbbb9BEBdbawclfhwamcufgmmbkkadmbcbhwarhPinaDhmdnavceSmbaoawfydbhmkdndnalawfIdbgscjjj;8iamai9RcefgmcLt9R::NJbbbZJbbb:;asJbbbb9GEMgs:lJbbb9p9DTmbas:Ohzxekcjjjj94hzkabawfazcFFFrGamcKtVBdbawclfhwaPcufgPmbkkabakfhbalakfhlaxcefgxae9hmbkkaocjdf8Kjjjjbk;YqdXui998Jjjjjbc:qd9Rgv8Kjjjjbavc:Sefcbc;Kbz:wjjjb8AcbhodnadTmbcbhoaiTmbdndnabaeSmbaehrxekavcuadcdtgwadcFFFFi0Ecbyd;u:kjjbHjjjjbbgrBd:SeavceBd:mdaraeawz:vjjjb8Akavc:GefcwfcbBdbav9cb83i:Geavc:Gefaradaiavc:Sefz:ojjjbavyd:GehDadci9Ugqcbyd;u:kjjbHjjjjbbheavc:Sefavyd:mdgkcdtfaeBdbavakcefgwBd:mdaecbaqz:wjjjbhxavc:SefawcdtfcuaicdtaicFFFFi0Ecbyd;u:kjjbHjjjjbbgmBdbavakcdfgPBd:mdalc;ebfhsaDheamhwinawalIdbasaeydbgzcwazcw6EcdtfIdbMUdbaeclfheawclfhwaicufgimbkavc:SefaPcdtfcuaqcdtadcFFFF970Ecbyd;u:kjjbHjjjjbbgPBdbdnadci6mbarheaPhwaqhiinawamaeydbcdtfIdbamaeclfydbcdtfIdbMamaecwfydbcdtfIdbMUdbaecxfheawclfhwaicufgimbkkakcifhoalc;ebfhHavc;qbfhOavheavyd:KehAavyd:OehCcbhzcbhwcbhXcehQinaehLcihkarawci2gKcdtfgeydbhsaeclfydbhdabaXcx2fgicwfaecwfydbgYBdbaiclfadBdbaiasBdbaxawfce86bbaOaYBdwaOadBdlaOasBdbaPawcdtfcbBdbdnazTmbcihkaLhiinaOakcdtfaiydbgeBdbakaeaY9haeas9haead9hGGfhkaiclfhiazcufgzmbkkaXcefhXcbhzinaCaAarazaKfcdtfydbcdtgifydbcdtfgYheaDaifgdydbgshidnasTmbdninaeydbawSmeaeclfheaicufgiTmdxbkkaeaYascdtfc98fydbBdbadadydbcufBdbkazcefgzci9hmbkdndnakTmbcuhwJbbbbh8Acbhdavyd:KehYavyd:OehKindndnaDaOadcdtfydbcdtgzfydbgembadcefhdxekadcs0hiamazfgsIdbhEasalcbadcefgdaiEcdtfIdbaHaecwaecw6EcdtfIdbMg3Udba3aE:th3aecdthiaKaYazfydbcdtfheinaPaeydbgzcdtfgsa3asIdbMgEUdbaEa8Aa8AaE9DgsEh8AazawasEhwaeclfheaic98fgimbkkadak9hmbkawcu9hmekaQaq9pmdindnaxaQfRbbmbaQhwxdkaqaQcefgQ9hmbxikkakczakcz6EhzaOheaLhOawcu9hmbkkaocdtavc:Seffc98fhedninaoTmeaeydbcbyd;q:kjjbH:bjjjbbaec98fheaocufhoxbkkavc:qdf8Kjjjjbk;IlevucuaicdtgvaicFFFFi0Egocbyd;u:kjjbHjjjjbbhralalyd9GgwcdtfarBdbalawcefBd9GabarBdbaocbyd;u:kjjbHjjjjbbhralalyd9GgocdtfarBdbalaocefBd9GabarBdlcuadcdtadcFFFFi0Ecbyd;u:kjjbHjjjjbbhralalyd9GgocdtfarBdbalaocefBd9GabarBdwabydbcbavz:wjjjb8Aadci9UhDdnadTmbabydbhoaehladhrinaoalydbcdtfgvavydbcefBdbalclfhlarcufgrmbkkdnaiTmbabydbhlabydlhrcbhvaihoinaravBdbarclfhralydbavfhvalclfhlaocufgombkkdnadci6mbabydlhrabydwhvcbhlinaecwfydbhoaeclfydbhdaraeydbcdtfgwawydbgwcefBdbavawcdtfalBdbaradcdtfgdadydbgdcefBdbavadcdtfalBdbaraocdtfgoaoydbgocefBdbavaocdtfalBdbaecxfheaDalcefgl9hmbkkdnaiTmbabydlheabydbhlinaeaeydbalydb9RBdbalclfhlaeclfheaicufgimbkkkQbabaeadaic;K1jjbz:njjjbkQbabaeadaic;m:jjjbz:njjjbk9DeeuabcFeaicdtz:wjjjbhlcbhbdnadTmbindnalaeydbcdtfgiydbcu9hmbaiabBdbabcefhbkaeclfheadcufgdmbkkabk:Vvioud9:du8Jjjjjbc;Wa9Rgl8Kjjjjbcbhvalcxfcbc;Kbz:wjjjb8AalcuadcitgoadcFFFFe0Ecbyd;u:kjjbHjjjjbbgrBdxalceBd2araeadaicez:tjjjbalcuaoadcjjjjoGEcbyd;u:kjjbHjjjjbbgwBdzadcdthednadTmbabhiinaiavBdbaiclfhiadavcefgv9hmbkkawaefhDalabBdwalawBdl9cbhqindnadTmbaq9cq9:hkarhvaDhiadheinaiav8Pibak1:NcFrG87ebavcwfhvaicdfhiaecufgembkkalclfaq:NceGcdtfydbhxalclfaq9ce98gq:NceGcdtfydbhmalc;Wbfcbcjaz:wjjjb8AaDhvadhidnadTmbinalc;Wbfav8VebcdtfgeaeydbcefBdbavcdfhvaicufgimbkkcbhvcbhiinalc;WbfavfgeydbhoaeaiBdbaoaifhiavclfgvcja9hmbkadhvdndnadTmbinalc;WbfaDamydbgicetf8VebcdtfgeaeydbgecefBdbaxaecdtfaiBdbamclfhmavcufgvmbkaq9cv9smdcbhvinabawydbcdtfavBdbawclfhwadavcefgv9hmbxdkkaq9cv9smekkclhvdninavc98Smealcxfavfydbcbyd;q:kjjbH:bjjjbbavc98fhvxbkkalc;Waf8Kjjjjbk:Jwliuo99iud9:cbhv8Jjjjjbca9Rgoczfcwfcbyd:8:kjjbBdbaocb8Pd:0:kjjb83izaocwfcbyd;i:kjjbBdbaocb8Pd;a:kjjb83ibaicd4hrdndnadmbJFFuFhwJFFuuhDJFFuuhqJFFuFhkJFFuuhxJFFuFhmxekarcdthPaehsincbhiinaoczfaifgzasaifIdbgwazIdbgDaDaw9EEUdbaoaifgzawazIdbgDaDaw9DEUdbaiclfgicx9hmbkasaPfhsavcefgvad9hmbkaoIdKhDaoIdwhwaoIdChqaoIdlhkaoIdzhxaoIdbhmkdnadTmbJbbbbJbFu9hJbbbbamax:tgmamJbbbb9DEgmakaq:tgkakam9DEgkawaD:tgwawak9DEgw:vawJbbbb9BEhwdnalmbarcdthoindndnaeclfIdbaq:tawNJbbbZMgk:lJbbb9p9DTmbak:Ohixekcjjjj94hikai:S9cC:ghHdndnaeIdbax:tawNJbbbZMgk:lJbbb9p9DTmbak:Ohixekcjjjj94hikaHai:S:ehHdndnaecwfIdbaD:tawNJbbbZMgk:lJbbb9p9DTmbak:Ohixekcjjjj94hikabaHai:T9cy:g:e83ibaeaofheabcwfhbadcufgdmbxdkkarcdthoindndnaeIdbax:tawNJbbbZMgk:lJbbb9p9DTmbak:Ohixekcjjjj94hikai:SgH9ca:gaH9cz:g9cjjj;4s:d:eaH9cFe:d:e9cF:bj;4:pj;ar:d9c:bd9:9c:p;G:d;4j:E;ar:d9cH9:9c;d;H:W:y:m:g;d;Hb:d9cv9:9c;j:KM;j:KM;j:Kd:dhOdndnaeclfIdbaq:tawNJbbbZMgk:lJbbb9p9DTmbak:Ohixekcjjjj94hikai:SgH9ca:gaH9cz:g9cjjj;4s:d:eaH9cFe:d:e9cF:bj;4:pj;ar:d9c:bd9:9c:p;G:d;4j:E;ar:d9cH9:9c;d;H:W:y:m:g;d;Hb:d9cq9:9cM;j:KM;j:KM;jl:daO:ehOdndnaecwfIdbaD:tawNJbbbZMgk:lJbbb9p9DTmbak:Ohixekcjjjj94hikabaOai:SgH9ca:gaH9cz:g9cjjj;4s:d:eaH9cFe:d:e9cF:bj;4:pj;ar:d9c:bd9:9c:p;G:d;4j:E;ar:d9cH9:9c;d;H:W:y:m:g;d;Hb:d9cC9:9c:KM;j:KM;j:KMD:d:e83ibaeaofheabcwfhbadcufgdmbkkk9teiucbcbyd;y:kjjbgeabcifc98GfgbBd;y:kjjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik;teeeudndnaeabVciGTmbabhixekdndnadcz9pmbabhixekabhiinaiaeydbBdbaiaeydlBdlaiaeydwBdwaiaeydxBdxaeczfheaiczfhiadc9Wfgdcs0mbkkadcl6mbinaiaeydbBdbaeclfheaiclfhiadc98fgdci0mbkkdnadTmbinaiaeRbb86bbaicefhiaecefheadcufgdmbkkabk:3eedudndnabciGTmbabhixekaecFeGc:b:c:ew2hldndnadcz9pmbabhixekabhiinaialBdxaialBdwaialBdlaialBdbaiczfhiadc9Wfgdcs0mbkkadcl6mbinaialBdbaiclfhiadc98fgdci0mbkkdnadTmbinaiae86bbaicefhiadcufgdmbkkabk9teiucbcbyd;y:kjjbgeabcrfc94GfgbBd;y:kjjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik9:eiuZbhedndncbyd;y:kjjbgdaecztgi9nmbcuheadai9RcFFifcz4nbcuSmekadhekcbabae9Rcifc98Gcbyd;y:kjjbfgdBd;y:kjjbdnadZbcztge9nmbadae9RcFFifcz4nb8Akkk;Qddbcjwk;mdbbbbdbbblbbbwbbbbbbbebbbdbbblbbbwbbbbbbbbbbbbbbbb4:h9w9N94:P:gW:j9O:ye9Pbbbbbbebbbdbbbebbbdbbbbbbbdbbbbbbbebbbbbbb:l29hZ;69:9kZ;N;76Z;rg97Z;z;o9xZ8J;B85Z;:;u9yZ;b;k9HZ:2;Z9DZ9e:l9mZ59A8KZ:r;T3Z:A:zYZ79OHZ;j4::8::Y:D9V8:bbbb9s:49:Z8R:hBZ9M9M;M8:L;z;o8:;8:PG89q;x:J878R:hQ8::M:B;e87bbbbbbjZbbjZbbjZ:E;V;N8::Y:DsZ9i;H;68:xd;R8:;h0838:;W:NoZbbbb:WV9O8:uf888:9i;H;68:9c9G;L89;n;m9m89;D8Ko8:bbbbf:8tZ9m836ZS:2AZL;zPZZ818EZ9e:lxZ;U98F8:819E;68:FFuuFFuuFFuuFFuFFFuFFFuFbc;mqkzebbbebbbdbbb9G:vbb",Q=new Uint8Array([32,0,65,2,1,106,34,33,3,128,11,4,13,64,6,253,10,7,15,116,127,5,8,12,40,16,19,54,20,9,27,255,113,17,42,67,24,23,146,148,18,14,22,45,70,69,56,114,101,21,25,63,75,136,108,28,118,29,73,115]);if(typeof WebAssembly!=="object")return{supported:!1};var B,Y=WebAssembly.instantiate(J(A),{}).then(function(E){B=E.instance,B.exports.__wasm_call_ctors(),B.exports.meshopt_encodeVertexVersion(0),B.exports.meshopt_encodeIndexVersion(1)});function J(E){var K=new Uint8Array(E.length);for(var I=0;I96?V-97:V>64?V-39:V+4}var H=0;for(var I=0;I=3),W(B.exports.meshopt_spatialSortRemap,E,E.length/K,K*4)},encodeVertexBuffer:function(E,K,I){C(I>0&&I<=256),C(I%4==0);var V=B.exports.meshopt_encodeVertexBufferBound(K,I);return F(B.exports.meshopt_encodeVertexBuffer,V,E,K,I)},encodeIndexBuffer:function(E,K,I){C(I==2||I==4),C(K%3==0);var V=U(E,I),H=B.exports.meshopt_encodeIndexBufferBound(K,Z(V)+1);return F(B.exports.meshopt_encodeIndexBuffer,H,V,K,4)},encodeIndexSequence:function(E,K,I){C(I==2||I==4);var V=U(E,I),H=B.exports.meshopt_encodeIndexSequenceBound(K,Z(V)+1);return F(B.exports.meshopt_encodeIndexSequence,H,V,K,4)},encodeGltfBuffer:function(E,K,I,V){var H={ATTRIBUTES:this.encodeVertexBuffer,TRIANGLES:this.encodeIndexBuffer,INDICES:this.encodeIndexSequence};return C(H[V]),H[V](E,K,I)},encodeFilterOct:function(E,K,I,V){return C(I==4||I==8),C(V>=1&&V<=16),$(B.exports.meshopt_encodeFilterOct,E,K,I,V,16)},encodeFilterQuat:function(E,K,I,V){return C(I==8),C(V>=4&&V<=16),$(B.exports.meshopt_encodeFilterQuat,E,K,I,V,16)},encodeFilterExp:function(E,K,I,V,H){C(I>0&&I%4==0),C(V>=1&&V<=24);var D={Separate:0,SharedVector:1,SharedComponent:2,Clamped:3};return $(B.exports.meshopt_encodeFilterExp,E,K,I,V,I,H?D[H]:1)}}}();if(typeof EH==="object"&&typeof dh==="object")dh.exports=u3;else if(typeof define==="function"&&define.amd)define([],function(){return u3});else if(typeof EH==="object")EH.MeshoptEncoder=u3;else(typeof self<"u"?self:EH).MeshoptEncoder=u3});var C1A=R((KH,ch)=>{var d3=function(){var A="b9H79Tebbbe8Fv9Gbb9Gvuuuuueu9Giuuub9Geueu9Giuuueuikqbeeedddillviebeoweuec:W:Odkr;leDo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bb8A9TW79O9V9Wt9F9KW9J9V9KW9wWVtW949c919M9MWVbeY9TW79O9V9Wt9F9KW9J9V9KW69U9KW949c919M9MWVbdE9TW79O9V9Wt9F9KW9J9V9KW69U9KW949tWG91W9U9JWbiL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9p9JtblK9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9r919HtbvL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWVT949Wbol79IV9Rbrq:S86qdbk;jYi5ud9:du8Jjjjjbcj;kb9Rgv8Kjjjjbc9:hodnalTmbcuhoaiRbbgrc;WeGc:Ge9hmbarcsGgwce0mbc9:hoalcufadcd4cbawEgDadfgrcKcaawEgqaraq0Egk6mbaicefhxcj;abad9Uc;WFbGcjdadca0EhmaialfgPar9Rgoadfhsavaoadz1jjjbgzceVhHcbhOdndninaeaO9nmeaPax9RaD6mdamaeaO9RaOamfgoae6EgAcsfglc9WGhCabaOad2fhXaAcethQaxaDfhiaOaeaoaeao6E9RhLalcl4cifcd4hKazcj;cbfaAfhYcbh8AazcjdfhEaHh3incbhodnawTmbaxa8Acd4fRbbhokaocFeGh5cbh8Eazcj;cbfhqinaih8Fdndndndna5a8Ecet4ciGgoc9:fPdebdkaPa8F9RaA6mrazcj;cbfa8EaA2fa8FaAz1jjjb8Aa8FaAfhixdkazcj;cbfa8EaA2fcbaAz:jjjjb8Aa8FhixekaPa8F9RaK6mva8FaKfhidnaCTmbaPai9RcK6mbaocdtc:q1jjbfcj1jjbawEhaczhrcbhlinargoc9Wfghaqfhrdndndndndndnaaa8Fahco4fRbbalcoG4ciGcdtfydbPDbedvivvvlvkar9cb83bbarcwf9cb83bbxlkarcbaiRbdai8Xbb9c:c:qj:bw9:9c:q;c1:I1e:d9c:b:c:e1z9:gg9cjjjjjz:dg8J9qE86bbaqaofgrcGfag9c8F1:NghcKtc8F91aicdfa8J9c8N1:Nfg8KRbbG86bbarcVfcba8KahcjeGcr4fghRbbag9cjjjjjl:dg8J9qE86bbarc7fcbaha8J9c8L1:NfghRbbag9cjjjjjd:dg8J9qE86bbarctfcbaha8J9c8K1:NfghRbbag9cjjjjje:dg8J9qE86bbarc91fcbaha8J9c8J1:NfghRbbag9cjjjj;ab:dg8J9qE86bbarc4fcbaha8J9cg1:NfghRbbag9cjjjja:dg8J9qE86bbarc93fcbaha8J9ch1:NfghRbbag9cjjjjz:dgg9qE86bbarc94fcbahag9ca1:NfghRbbai8Xbe9c:c:qj:bw9:9c:q;c1:I1e:d9c:b:c:e1z9:gg9cjjjjjz:dg8J9qE86bbarc95fag9c8F1:NgicKtc8F91aha8J9c8N1:NfghRbbG86bbarc96fcbahaicjeGcr4fgiRbbag9cjjjjjl:dg8J9qE86bbarc97fcbaia8J9c8L1:NfgiRbbag9cjjjjjd:dg8J9qE86bbarc98fcbaia8J9c8K1:NfgiRbbag9cjjjjje:dg8J9qE86bbarc99fcbaia8J9c8J1:NfgiRbbag9cjjjj;ab:dg8J9qE86bbarc9:fcbaia8J9cg1:NfgiRbbag9cjjjja:dg8J9qE86bbarcufcbaia8J9ch1:NfgiRbbag9cjjjjz:dgg9qE86bbaiag9ca1:NfhixikaraiRblaiRbbghco4g8Ka8KciSg8KE86bbaqaofgrcGfaiclfa8Kfg8KRbbahcl4ciGg8La8LciSg8LE86bbarcVfa8Ka8Lfg8KRbbahcd4ciGg8La8LciSg8LE86bbarc7fa8Ka8Lfg8KRbbahciGghahciSghE86bbarctfa8Kahfg8KRbbaiRbeghco4g8La8LciSg8LE86bbarc91fa8Ka8Lfg8KRbbahcl4ciGg8La8LciSg8LE86bbarc4fa8Ka8Lfg8KRbbahcd4ciGg8La8LciSg8LE86bbarc93fa8Ka8Lfg8KRbbahciGghahciSghE86bbarc94fa8Kahfg8KRbbaiRbdghco4g8La8LciSg8LE86bbarc95fa8Ka8Lfg8KRbbahcl4ciGg8La8LciSg8LE86bbarc96fa8Ka8Lfg8KRbbahcd4ciGg8La8LciSg8LE86bbarc97fa8Ka8Lfg8KRbbahciGghahciSghE86bbarc98fa8KahfghRbbaiRbigico4g8Ka8KciSg8KE86bbarc99faha8KfghRbbaicl4ciGg8Ka8KciSg8KE86bbarc9:faha8KfghRbbaicd4ciGg8Ka8KciSg8KE86bbarcufaha8KfgrRbbaiciGgiaiciSgiE86bbaraifhixdkaraiRbwaiRbbghcl4g8Ka8KcsSg8KE86bbaqaofgrcGfaicwfa8Kfg8KRbbahcsGghahcsSghE86bbarcVfa8KahfghRbbaiRbeg8Kcl4g8La8LcsSg8LE86bbarc7faha8LfghRbba8KcsGg8Ka8KcsSg8KE86bbarctfaha8KfghRbbaiRbdg8Kcl4g8La8LcsSg8LE86bbarc91faha8LfghRbba8KcsGg8Ka8KcsSg8KE86bbarc4faha8KfghRbbaiRbig8Kcl4g8La8LcsSg8LE86bbarc93faha8LfghRbba8KcsGg8Ka8KcsSg8KE86bbarc94faha8KfghRbbaiRblg8Kcl4g8La8LcsSg8LE86bbarc95faha8LfghRbba8KcsGg8Ka8KcsSg8KE86bbarc96faha8KfghRbbaiRbvg8Kcl4g8La8LcsSg8LE86bbarc97faha8LfghRbba8KcsGg8Ka8KcsSg8KE86bbarc98faha8KfghRbbaiRbog8Kcl4g8La8LcsSg8LE86bbarc99faha8LfghRbba8KcsGg8Ka8KcsSg8KE86bbarc9:faha8KfghRbbaiRbrgicl4g8Ka8KcsSg8KE86bbarcufaha8KfgrRbbaicsGgiaicsSgiE86bbaraifhixekarai8Pbb83bbarcwfaicwf8Pbb83bbaiczfhikdnaoaC9pmbalcdfhlaoczfhraPai9RcL0mekkaoaC6moaimexokaCmva8FTmvkaqaAfhqa8Ecefg8Ecl9hmbkdndndndnawTmbasa8Acd4fRbbgociGPlbedrbkaATmdaza8Afh8Fazcj;cbfhhcbh8EaEhaina8FRbbhraahocbhlinaoahalfRbbgqce4cbaqceG9R7arfgr86bbaoadfhoaAalcefgl9hmbkaacefhaa8Fcefh8FahaAfhha8Ecefg8Ecl9hmbxikkaATmeaza8Afhaazcj;cbfhhcbhoceh8EaYh8FinaEaofhlaa8Vbbhrcbhoinala8FaofRbbcwtahaofRbbgqVc;:FiGce4cbaqceG9R7arfgr87bbaladfhlaLaocefgofmbka8FaQfh8FcdhoaacdfhaahaQfhha8EceGhlcbh8EalmbxdkkaATmbcbaocl49Rh8Eaza8AfRbbhqcwhoa3hlinalRbbaotaqVhqalcefhlaocwfgoca9hmbkcbhhaEh8FaYhainazcj;cbfahfRbbhrcwhoaahlinalRbbaotarVhralaAfhlaocwfgoca9hmbkara8E93aq7hqcbhoa8Fhlinalaqao486bbalcefhlaocwfgoca9hmbka8Fadfh8FaacefhaahcefghaA9hmbkkaEclfhEa3clfh3a8Aclfg8Aad6mbkaXazcjdfaAad2z1jjjb8AazazcjdfaAcufad2fadz1jjjb8AaAaOfhOaihxaimbkc9:hoxdkcbc99aPax9RakSEhoxekc9:hokavcj;kbf8Kjjjjbaok:XseHu8Jjjjjbc;ae9Rgv8Kjjjjbc9:hodnaeci9UgrcHfal0mbcuhoaiRbbgwc;WeGc;Ge9hmbawcsGgDce0mbavc;abfcFecjez:jjjjb8AavcUf9cu83ibavc8Wf9cu83ibavcyf9cu83ibavcaf9cu83ibavcKf9cu83ibavczf9cu83ibav9cu83iwav9cu83ibaialfc9WfhqaicefgwarfhldnaeTmbcmcsaDceSEhkcbhxcbhmcbhrcbhicbhoindnalaq9nmbc9:hoxikdndnawRbbgDc;Ve0mbavc;abfaoaDcu7gPcl4fcsGcitfgsydlhzasydbhHdndnaDcsGgsak9pmbavaiaPfcsGcdtfydbaxasEhDaxasTgOfhxxekdndnascsSmbcehOasc987asamffcefhDxekalcefhDal8SbbgscFeGhPdndnascu9mmbaDhlxekalcvfhlaPcFbGhPcrhsdninaD8SbbgOcFbGastaPVhPaOcu9kmeaDcefhDascrfgsc8J9hmbxdkkaDcefhlkcehOaPce4cbaPceG9R7amfhDkaDhmkavc;abfaocitfgsaDBdbasazBdlavaicdtfaDBdbavc;abfaocefcsGcitfgsaHBdbasaDBdlaocdfhoaOaifhidnadcd9hmbabarcetfgsaH87ebasclfaD87ebascdfaz87ebxdkabarcdtfgsaHBdbascwfaDBdbasclfazBdbxekdnaDcpe0mbaxcefgOavaiaqaDcsGfRbbgscl49RcsGcdtfydbascz6gPEhDavaias9RcsGcdtfydbaOaPfgzascsGgOEhsaOThOdndnadcd9hmbabarcetfgHax87ebaHclfas87ebaHcdfaD87ebxekabarcdtfgHaxBdbaHcwfasBdbaHclfaDBdbkavaicdtfaxBdbavc;abfaocitfgHaDBdbaHaxBdlavaicefgicsGcdtfaDBdbavc;abfaocefcsGcitfgHasBdbaHaDBdlavaiaPfgicsGcdtfasBdbavc;abfaocdfcsGcitfgDaxBdbaDasBdlaocifhoaiaOfhiazaOfhxxekaxcbalRbbgHEgAaDc;:eSgDfhzaHcsGhCaHcl4hXdndnaHcs0mbazcefhOxekazhOavaiaX9RcsGcdtfydbhzkdndnaCmbaOcefhxxekaOhxavaiaH9RcsGcdtfydbhOkdndnaDTmbalcefhDxekalcdfhDal8SbegPcFeGhsdnaPcu9kmbalcofhAascFbGhscrhldninaD8SbbgPcFbGaltasVhsaPcu9kmeaDcefhDalcrfglc8J9hmbkaAhDxekaDcefhDkasce4cbasceG9R7amfgmhAkdndnaXcsSmbaDhsxekaDcefhsaD8SbbglcFeGhPdnalcu9kmbaDcvfhzaPcFbGhPcrhldninas8SbbgDcFbGaltaPVhPaDcu9kmeascefhsalcrfglc8J9hmbkazhsxekascefhskaPce4cbaPceG9R7amfgmhzkdndnaCcsSmbashlxekascefhlas8SbbgDcFeGhPdnaDcu9kmbascvfhOaPcFbGhPcrhDdninal8SbbgscFbGaDtaPVhPascu9kmealcefhlaDcrfgDc8J9hmbkaOhlxekalcefhlkaPce4cbaPceG9R7amfgmhOkdndnadcd9hmbabarcetfgDaA87ebaDclfaO87ebaDcdfaz87ebxekabarcdtfgDaABdbaDcwfaOBdbaDclfazBdbkavc;abfaocitfgDazBdbaDaABdlavaicdtfaABdbavc;abfaocefcsGcitfgDaOBdbaDazBdlavaicefgicsGcdtfazBdbavc;abfaocdfcsGcitfgDaABdbaDaOBdlavaiaHcz6aXcsSVfgicsGcdtfaOBdbaiaCTaCcsSVfhiaocifhokawcefhwaocsGhoaicsGhiarcifgrae6mbkkcbc99alaqSEhokavc;aef8Kjjjjbaok:clevu8Jjjjjbcz9Rhvdnaecvfal9nmbc9:skdnaiRbbc;:eGc;qeSmbcuskav9cb83iwaicefhoaialfc98fhrdnaeTmbdnadcdSmbcbhwindnaoar6mbc9:skaocefhlao8SbbgicFeGhddndnaicu9mmbalhoxekaocvfhoadcFbGhdcrhidninal8SbbgDcFbGaitadVhdaDcu9kmealcefhlaicrfgic8J9hmbxdkkalcefhokabawcdtfadc8Etc8F91adcd47avcwfadceGcdtVglydbfgiBdbalaiBdbawcefgwae9hmbxdkkcbhwindnaoar6mbc9:skaocefhlao8SbbgicFeGhddndnaicu9mmbalhoxekaocvfhoadcFbGhdcrhidninal8SbbgDcFbGaitadVhdaDcu9kmealcefhlaicrfgic8J9hmbxdkkalcefhokabawcetfadc8Etc8F91adcd47avcwfadceGcdtVglydbfgi87ebalaiBdbawcefgwae9hmbkkcbc99aoarSEk:Lvoeue99dud99eud99dndnadcl9hmbaeTmeindndnabcdfgd8Sbb:Yab8Sbbgi:Ygl:l:tabcefgv8Sbbgo:Ygr:l:tgwJbb;:9cawawNJbbbbawawJbbbb9GgDEgq:mgkaqaicb9iEalMgwawNakaqaocb9iEarMgqaqNMM:r:vglNJbbbZJbbb:;aDEMgr:lJbbb9p9DTmbar:Ohixekcjjjj94hikadai86bbdndnaqalNJbbbZJbbb:;aqJbbbb9GEMgq:lJbbb9p9DTmbaq:Ohdxekcjjjj94hdkavad86bbdndnawalNJbbbZJbbb:;awJbbbb9GEMgw:lJbbb9p9DTmbaw:Ohdxekcjjjj94hdkabad86bbabclfhbaecufgembxdkkaeTmbindndnabclfgd8Ueb:Yab8Uebgi:Ygl:l:tabcdfgv8Uebgo:Ygr:l:tgwJb;:FSawawNJbbbbawawJbbbb9GgDEgq:mgkaqaicb9iEalMgwawNakaqaocb9iEarMgqaqNMM:r:vglNJbbbZJbbb:;aDEMgr:lJbbb9p9DTmbar:Ohixekcjjjj94hikadai87ebdndnaqalNJbbbZJbbb:;aqJbbbb9GEMgq:lJbbb9p9DTmbaq:Ohdxekcjjjj94hdkavad87ebdndnawalNJbbbZJbbb:;awJbbbb9GEMgw:lJbbb9p9DTmbaw:Ohdxekcjjjj94hdkabad87ebabcwfhbaecufgembkkk;oiliui99iue99dnaeTmbcbhiabhlindndnJ;Zl81Zalcof8UebgvciV:Y:vgoal8Ueb:YNgrJb;:FSNJbbbZJbbb:;arJbbbb9GEMgw:lJbbb9p9DTmbaw:OhDxekcjjjj94hDkalclf8Uebhqalcdf8UebhkabaiavcefciGfcetfaD87ebdndnaoak:YNgwJb;:FSNJbbbZJbbb:;awJbbbb9GEMgx:lJbbb9p9DTmbax:OhDxekcjjjj94hDkabaiavciGfgkcd7cetfaD87ebdndnaoaq:YNgoJb;:FSNJbbbZJbbb:;aoJbbbb9GEMgx:lJbbb9p9DTmbax:OhDxekcjjjj94hDkabaiavcufciGfcetfaD87ebdndnJbbjZararN:tawawN:taoaoN:tgrJbbbbarJbbbb9GE:rJb;:FSNJbbbZMgr:lJbbb9p9DTmbar:Ohvxekcjjjj94hvkabakcetfav87ebalcwfhlaiclfhiaecufgembkkk9mbdnadcd4ae2gdTmbinababydbgecwtcw91:Yaece91cjjj98Gcjjj;8if::NUdbabclfhbadcufgdmbkkk9teiucbcbyd:K1jjbgeabcifc98GfgbBd:K1jjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik;teeeudndnaeabVciGTmbabhixekdndnadcz9pmbabhixekabhiinaiaeydbBdbaiaeydlBdlaiaeydwBdwaiaeydxBdxaeczfheaiczfhiadc9Wfgdcs0mbkkadcl6mbinaiaeydbBdbaeclfheaiclfhiadc98fgdci0mbkkdnadTmbinaiaeRbb86bbaicefhiaecefheadcufgdmbkkabk:3eedudndnabciGTmbabhixekaecFeGc:b:c:ew2hldndnadcz9pmbabhixekabhiinaialBdxaialBdwaialBdlaialBdbaiczfhiadc9Wfgdcs0mbkkadcl6mbinaialBdbaiclfhiadc98fgdci0mbkkdnadTmbinaiae86bbaicefhiadcufgdmbkkabkk81dbcjwk8Kbbbbdbbblbbbwbbbbbbbebbbdbbblbbbwbbbbc:Kwkl8WNbb",Q="b9H79TebbbeKl9Gbb9Gvuuuuueu9Giuuub9Geueuikqbbebeedddilve9Weeeviebeoweuec:q:6dkr;leDo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bb8A9TW79O9V9Wt9F9KW9J9V9KW9wWVtW949c919M9MWVbdY9TW79O9V9Wt9F9KW9J9V9KW69U9KW949c919M9MWVblE9TW79O9V9Wt9F9KW9J9V9KW69U9KW949tWG91W9U9JWbvL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9p9JtboK9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9r919HtbrL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWVT949Wbwl79IV9RbDq;G9Mqlbzik9:evu8Jjjjjbcz9Rhbcbheincbhdcbhiinabcwfadfaicjuaead4ceGglE86bbaialfhiadcefgdcw9hmbkaec:q:yjjbfai86bbaecitc:q1jjbfab8Piw83ibaecefgecjd9hmbkk:183lYud97dur978Jjjjjbcj;kb9Rgv8Kjjjjbc9:hodnalTmbcuhoaiRbbgrc;WeGc:Ge9hmbarcsGgwce0mbc9:hoalcufadcd4cbawEgDadfgrcKcaawEgqaraq0Egk6mbaicefhxavaialfgmar9Rgoad;8qbbcj;abad9Uc;WFbGcjdadca0EhPdndndnadTmbaoadfhscbhzinaeaz9nmdamax9RaD6miabazad2fhHaxaDfhOaPaeaz9RazaPfae6EgAcsfgocl4cifcd4hCavcj;cbfaoc9WGgXcetfhQavcj;cbfaXci2fhLavcj;cbfaXfhKcbhYaoc;ab6h8AincbhodnawTmbaxaYcd4fRbbhokaocFeGhEcbh3avcj;cbfh5indndndndnaEa3cet4ciGgoc9:fPdebdkamaO9RaX6mwavcj;cbfa3aX2faOaX;8qbbaOaAfhOxdkavcj;cbfa3aX2fcbaX;8kbxekamaO9RaC6moaoclVcbawEhraOaCfhocbhidna8Ambamao9Rc;Gb6mbcbhlina5alfhidndndndndndnaOalco4fRbbgqciGarfPDbedibledibkaipxbbbbbbbbbbbbbbbbpklbxlkaiaopbblaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLg8Ecdp:mea8EpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9og8Fpxiiiiiiiiiiiiiiiip8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaaaoclffahc:q:yjjbfRbbfhoxikaiaopbbwaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9og8Fpxssssssssssssssssp8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaaaocwffahc:q:yjjbfRbbfhoxdkaiaopbbbpklbaoczfhoxekaiaopbbdaoRbbgacitc:q1jjbfpbibaac:q:yjjbfRbbgapsaoRbeghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPpklbaaaocdffahc:q:yjjbfRbbfhokdndndndndndnaqcd4ciGarfPDbedibledibkaiczfpxbbbbbbbbbbbbbbbbpklbxlkaiczfaopbblaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLg8Ecdp:mea8EpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9og8Fpxiiiiiiiiiiiiiiiip8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaaaoclffahc:q:yjjbfRbbfhoxikaiczfaopbbwaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9og8Fpxssssssssssssssssp8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaaaocwffahc:q:yjjbfRbbfhoxdkaiczfaopbbbpklbaoczfhoxekaiczfaopbbdaoRbbgacitc:q1jjbfpbibaac:q:yjjbfRbbgapsaoRbeghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPpklbaaaocdffahc:q:yjjbfRbbfhokdndndndndndnaqcl4ciGarfPDbedibledibkaicafpxbbbbbbbbbbbbbbbbpklbxlkaicafaopbblaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLg8Ecdp:mea8EpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9og8Fpxiiiiiiiiiiiiiiiip8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaaaoclffahc:q:yjjbfRbbfhoxikaicafaopbbwaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9og8Fpxssssssssssssssssp8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaaaocwffahc:q:yjjbfRbbfhoxdkaicafaopbbbpklbaoczfhoxekaicafaopbbdaoRbbgacitc:q1jjbfpbibaac:q:yjjbfRbbgapsaoRbeghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPpklbaaaocdffahc:q:yjjbfRbbfhokdndndndndndnaqco4arfPDbedibledibkaic8Wfpxbbbbbbbbbbbbbbbbpklbxlkaic8Wfaopbblaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLg8Ecdp:mea8EpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9og8Fpxiiiiiiiiiiiiiiiip8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngicitc:q1jjbfpbibaic:q:yjjbfRbbgipsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Ngqcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaiaoclffaqc:q:yjjbfRbbfhoxikaic8Wfaopbbwaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9og8Fpxssssssssssssssssp8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngicitc:q1jjbfpbibaic:q:yjjbfRbbgipsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Ngqcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spklbaiaocwffaqc:q:yjjbfRbbfhoxdkaic8Wfaopbbbpklbaoczfhoxekaic8WfaopbbdaoRbbgicitc:q1jjbfpbibaic:q:yjjbfRbbgipsaoRbegqcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPpklbaiaocdffaqc:q:yjjbfRbbfhokalc;abfhialcjefaX0meaihlamao9Rc;Fb0mbkkdnaiaX9pmbaici4hlinamao9RcK6mwa5aifhqdndndndndndnaOaico4fRbbalcoG4ciGarfPDbedibledibkaqpxbbbbbbbbbbbbbbbbpkbbxlkaqaopbblaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLg8Ecdp:mea8EpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9og8Fpxiiiiiiiiiiiiiiiip8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spkbbaaaoclffahc:q:yjjbfRbbfhoxikaqaopbbwaopbbbg8Eclp:mea8EpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9og8Fpxssssssssssssssssp8Jg8Ep5b9cjF;8;4;W;G;ab9:9cU1:Ngacitc:q1jjbfpbibaac:q:yjjbfRbbgapsa8Ep5e9cjF;8;4;W;G;ab9:9cU1:Nghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPa8Fa8Ep9spkbbaaaocwffahc:q:yjjbfRbbfhoxdkaqaopbbbpkbbaoczfhoxekaqaopbbdaoRbbgacitc:q1jjbfpbibaac:q:yjjbfRbbgapsaoRbeghcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPpkbbaaaocdffahc:q:yjjbfRbbfhokalcdfhlaiczfgiaX6mbkkaohOaoTmoka5aXfh5a3cefg3cl9hmbkdndndndnawTmbasaYcd4fRbbglciGPlbedwbkaXTmdavcjdfaYfhlavaYfpbdbhgcbhoinalavcj;cbfaofpblbg8JaKaofpblbg8KpmbzeHdOiAlCvXoQrLg8LaQaofpblbg8MaLaofpblbg8NpmbzeHdOiAlCvXoQrLgypmbezHdiOAlvCXorQLg8Ecep9Ta8Epxeeeeeeeeeeeeeeeeg8Fp9op9Hp9rg8Eagp9Uggp9Abbbaladfglaga8Ea8Epmlvorlvorlvorlvorp9Uggp9Abbbaladfglaga8Ea8EpmwDqkwDqkwDqkwDqkp9Uggp9Abbbaladfglaga8Ea8EpmxmPsxmPsxmPsxmPsp9Uggp9Abbbaladfglaga8LaypmwDKYqk8AExm35Ps8E8Fg8Ecep9Ta8Ea8Fp9op9Hp9rg8Ep9Uggp9Abbbaladfglaga8Ea8Epmlvorlvorlvorlvorp9Uggp9Abbbaladfglaga8Ea8EpmwDqkwDqkwDqkwDqkp9Uggp9Abbbaladfglaga8Ea8EpmxmPsxmPsxmPsxmPsp9Uggp9Abbbaladfglaga8Ja8KpmwKDYq8AkEx3m5P8Es8Fg8Ja8Ma8NpmwKDYq8AkEx3m5P8Es8Fg8KpmbezHdiOAlvCXorQLg8Ecep9Ta8Ea8Fp9op9Hp9rg8Ep9Uggp9Abbbaladfglaga8Ea8Epmlvorlvorlvorlvorp9Uggp9Abbbaladfglaga8Ea8EpmwDqkwDqkwDqkwDqkp9Uggp9Abbbaladfglaga8Ea8EpmxmPsxmPsxmPsxmPsp9Uggp9Abbbaladfglaga8Ja8KpmwDKYqk8AExm35Ps8E8Fg8Ecep9Ta8Ea8Fp9op9Hp9rg8Ep9Ug8Fp9Abbbaladfgla8Fa8Ea8Epmlvorlvorlvorlvorp9Ug8Fp9Abbbaladfgla8Fa8Ea8EpmwDqkwDqkwDqkwDqkp9Ug8Fp9Abbbaladfgla8Fa8Ea8EpmxmPsxmPsxmPsxmPsp9Uggp9AbbbaladfhlaoczfgoaX6mbxikkaXTmeavcjdfaYfhlavaYfpbdbhgcbhoinalavcj;cbfaofpblbg8JaKaofpblbg8KpmbzeHdOiAlCvXoQrLg8LaQaofpblbg8MaLaofpblbg8NpmbzeHdOiAlCvXoQrLgypmbezHdiOAlvCXorQLg8Ecep:nea8Epxebebebebebebebebg8Fp9op:bep9rg8Eagp:oeggp9Abbbaladfglaga8Ea8Epmlvorlvorlvorlvorp:oeggp9Abbbaladfglaga8Ea8EpmwDqkwDqkwDqkwDqkp:oeggp9Abbbaladfglaga8Ea8EpmxmPsxmPsxmPsxmPsp:oeggp9Abbbaladfglaga8LaypmwDKYqk8AExm35Ps8E8Fg8Ecep:nea8Ea8Fp9op:bep9rg8Ep:oeggp9Abbbaladfglaga8Ea8Epmlvorlvorlvorlvorp:oeggp9Abbbaladfglaga8Ea8EpmwDqkwDqkwDqkwDqkp:oeggp9Abbbaladfglaga8Ea8EpmxmPsxmPsxmPsxmPsp:oeggp9Abbbaladfglaga8Ja8KpmwKDYq8AkEx3m5P8Es8Fg8Ja8Ma8NpmwKDYq8AkEx3m5P8Es8Fg8KpmbezHdiOAlvCXorQLg8Ecep:nea8Ea8Fp9op:bep9rg8Ep:oeggp9Abbbaladfglaga8Ea8Epmlvorlvorlvorlvorp:oeggp9Abbbaladfglaga8Ea8EpmwDqkwDqkwDqkwDqkp:oeggp9Abbbaladfglaga8Ea8EpmxmPsxmPsxmPsxmPsp:oeggp9Abbbaladfglaga8Ja8KpmwDKYqk8AExm35Ps8E8Fg8Ecep:nea8Ea8Fp9op:bep9rg8Ep:oeg8Fp9Abbbaladfgla8Fa8Ea8Epmlvorlvorlvorlvorp:oeg8Fp9Abbbaladfgla8Fa8Ea8EpmwDqkwDqkwDqkwDqkp:oeg8Fp9Abbbaladfgla8Fa8Ea8EpmxmPsxmPsxmPsxmPsp:oeggp9AbbbaladfhlaoczfgoaX6mbxdkkaXTmbcbhocbalcl4gl9Rc8FGhiavcjdfaYfhravaYfpbdbh8Finaravcj;cbfaofpblbggaKaofpblbg8JpmbzeHdOiAlCvXoQrLg8KaQaofpblbg8LaLaofpblbg8MpmbzeHdOiAlCvXoQrLg8NpmbezHdiOAlvCXorQLg8Eaip:Rea8Ealp:Sep9qg8Ea8Fp9rg8Fp9Abbbaradfgra8Fa8Ea8Epmlvorlvorlvorlvorp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmwDqkwDqkwDqkwDqkp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmxmPsxmPsxmPsxmPsp9rg8Fp9Abbbaradfgra8Fa8Ka8NpmwDKYqk8AExm35Ps8E8Fg8Eaip:Rea8Ealp:Sep9qg8Ep9rg8Fp9Abbbaradfgra8Fa8Ea8Epmlvorlvorlvorlvorp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmwDqkwDqkwDqkwDqkp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmxmPsxmPsxmPsxmPsp9rg8Fp9Abbbaradfgra8Faga8JpmwKDYq8AkEx3m5P8Es8Fgga8La8MpmwKDYq8AkEx3m5P8Es8Fg8JpmbezHdiOAlvCXorQLg8Eaip:Rea8Ealp:Sep9qg8Ep9rg8Fp9Abbbaradfgra8Fa8Ea8Epmlvorlvorlvorlvorp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmwDqkwDqkwDqkwDqkp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmxmPsxmPsxmPsxmPsp9rg8Fp9Abbbaradfgra8Faga8JpmwDKYqk8AExm35Ps8E8Fg8Eaip:Rea8Ealp:Sep9qg8Ep9rg8Fp9Abbbaradfgra8Fa8Ea8Epmlvorlvorlvorlvorp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmwDqkwDqkwDqkwDqkp9rg8Fp9Abbbaradfgra8Fa8Ea8EpmxmPsxmPsxmPsxmPsp9rg8Fp9AbbbaradfhraoczfgoaX6mbkkaYclfgYad6mbkaHavcjdfaAad2;8qbbavavcjdfaAcufad2fad;8qbbaAazfhzc9:hoaOhxaOmbxlkkaeTmbaDalfhrcbhocuhlinaralaD9RglfaD6mdaPaeao9RaoaPfae6Eaofgoae6mbkaial9Rhxkcbc99amax9RakSEhoxekc9:hokavcj;kbf8Kjjjjbaokwbz:bjjjbk:TseHu8Jjjjjbc;ae9Rgv8Kjjjjbc9:hodnaeci9UgrcHfal0mbcuhoaiRbbgwc;WeGc;Ge9hmbawcsGgDce0mbavc;abfcFecje;8kbavcUf9cu83ibavc8Wf9cu83ibavcyf9cu83ibavcaf9cu83ibavcKf9cu83ibavczf9cu83ibav9cu83iwav9cu83ibaialfc9WfhqaicefgwarfhldnaeTmbcmcsaDceSEhkcbhxcbhmcbhrcbhicbhoindnalaq9nmbc9:hoxikdndnawRbbgDc;Ve0mbavc;abfaoaDcu7gPcl4fcsGcitfgsydlhzasydbhHdndnaDcsGgsak9pmbavaiaPfcsGcdtfydbaxasEhDaxasTgOfhxxekdndnascsSmbcehOasc987asamffcefhDxekalcefhDal8SbbgscFeGhPdndnascu9mmbaDhlxekalcvfhlaPcFbGhPcrhsdninaD8SbbgOcFbGastaPVhPaOcu9kmeaDcefhDascrfgsc8J9hmbxdkkaDcefhlkcehOaPce4cbaPceG9R7amfhDkaDhmkavc;abfaocitfgsaDBdbasazBdlavaicdtfaDBdbavc;abfaocefcsGcitfgsaHBdbasaDBdlaocdfhoaOaifhidnadcd9hmbabarcetfgsaH87ebasclfaD87ebascdfaz87ebxdkabarcdtfgsaHBdbascwfaDBdbasclfazBdbxekdnaDcpe0mbaxcefgOavaiaqaDcsGfRbbgscl49RcsGcdtfydbascz6gPEhDavaias9RcsGcdtfydbaOaPfgzascsGgOEhsaOThOdndnadcd9hmbabarcetfgHax87ebaHclfas87ebaHcdfaD87ebxekabarcdtfgHaxBdbaHcwfasBdbaHclfaDBdbkavaicdtfaxBdbavc;abfaocitfgHaDBdbaHaxBdlavaicefgicsGcdtfaDBdbavc;abfaocefcsGcitfgHasBdbaHaDBdlavaiaPfgicsGcdtfasBdbavc;abfaocdfcsGcitfgDaxBdbaDasBdlaocifhoaiaOfhiazaOfhxxekaxcbalRbbgHEgAaDc;:eSgDfhzaHcsGhCaHcl4hXdndnaHcs0mbazcefhOxekazhOavaiaX9RcsGcdtfydbhzkdndnaCmbaOcefhxxekaOhxavaiaH9RcsGcdtfydbhOkdndnaDTmbalcefhDxekalcdfhDal8SbegPcFeGhsdnaPcu9kmbalcofhAascFbGhscrhldninaD8SbbgPcFbGaltasVhsaPcu9kmeaDcefhDalcrfglc8J9hmbkaAhDxekaDcefhDkasce4cbasceG9R7amfgmhAkdndnaXcsSmbaDhsxekaDcefhsaD8SbbglcFeGhPdnalcu9kmbaDcvfhzaPcFbGhPcrhldninas8SbbgDcFbGaltaPVhPaDcu9kmeascefhsalcrfglc8J9hmbkazhsxekascefhskaPce4cbaPceG9R7amfgmhzkdndnaCcsSmbashlxekascefhlas8SbbgDcFeGhPdnaDcu9kmbascvfhOaPcFbGhPcrhDdninal8SbbgscFbGaDtaPVhPascu9kmealcefhlaDcrfgDc8J9hmbkaOhlxekalcefhlkaPce4cbaPceG9R7amfgmhOkdndnadcd9hmbabarcetfgDaA87ebaDclfaO87ebaDcdfaz87ebxekabarcdtfgDaABdbaDcwfaOBdbaDclfazBdbkavc;abfaocitfgDazBdbaDaABdlavaicdtfaABdbavc;abfaocefcsGcitfgDaOBdbaDazBdlavaicefgicsGcdtfazBdbavc;abfaocdfcsGcitfgDaABdbaDaOBdlavaiaHcz6aXcsSVfgicsGcdtfaOBdbaiaCTaCcsSVfhiaocifhokawcefhwaocsGhoaicsGhiarcifgrae6mbkkcbc99alaqSEhokavc;aef8Kjjjjbaok:clevu8Jjjjjbcz9Rhvdnaecvfal9nmbc9:skdnaiRbbc;:eGc;qeSmbcuskav9cb83iwaicefhoaialfc98fhrdnaeTmbdnadcdSmbcbhwindnaoar6mbc9:skaocefhlao8SbbgicFeGhddndnaicu9mmbalhoxekaocvfhoadcFbGhdcrhidninal8SbbgDcFbGaitadVhdaDcu9kmealcefhlaicrfgic8J9hmbxdkkalcefhokabawcdtfadc8Etc8F91adcd47avcwfadceGcdtVglydbfgiBdbalaiBdbawcefgwae9hmbxdkkcbhwindnaoar6mbc9:skaocefhlao8SbbgicFeGhddndnaicu9mmbalhoxekaocvfhoadcFbGhdcrhidninal8SbbgDcFbGaitadVhdaDcu9kmealcefhlaicrfgic8J9hmbxdkkalcefhokabawcetfadc8Etc8F91adcd47avcwfadceGcdtVglydbfgi87ebalaiBdbawcefgwae9hmbkkcbc99aoarSEk:SPliuo97eue978Jjjjjbca9Rhiaec98Ghldndnadcl9hmbdnalTmbcbhvabhdinadadpbbbgocKp:RecKp:Sep;6egraocwp:RecKp:Sep;6earp;Geaoczp:RecKp:Sep;6egwp;Gep;Kep;LegDpxbbbbbbbbbbbbbbbbp:2egqarpxbbbjbbbjbbbjbbbjgkp9op9rp;Kegrpxbb;:9cbb;:9cbb;:9cbb;:9cararp;MeaDaDp;Meawaqawakp9op9rp;Kegrarp;Mep;Kep;Kep;Jep;Negwp;Mepxbbn0bbn0bbn0bbn0gqp;KepxFbbbFbbbFbbbFbbbp9oaopxbbbFbbbFbbbFbbbFp9op9qarawp;Meaqp;Kecwp:RepxbFbbbFbbbFbbbFbbp9op9qaDawp;Meaqp;Keczp:RepxbbFbbbFbbbFbbbFbp9op9qpkbbadczfhdavclfgval6mbkkalaeSmeaipxbbbbbbbbbbbbbbbbgqpklbaiabalcdtfgdaeciGglcdtgv;8qbbdnalTmbaiaipblbgocKp:RecKp:Sep;6egraocwp:RecKp:Sep;6earp;Geaoczp:RecKp:Sep;6egwp;Gep;Kep;LegDaqp:2egqarpxbbbjbbbjbbbjbbbjgkp9op9rp;Kegrpxbb;:9cbb;:9cbb;:9cbb;:9cararp;MeaDaDp;Meawaqawakp9op9rp;Kegrarp;Mep;Kep;Kep;Jep;Negwp;Mepxbbn0bbn0bbn0bbn0gqp;KepxFbbbFbbbFbbbFbbbp9oaopxbbbFbbbFbbbFbbbFp9op9qarawp;Meaqp;Kecwp:RepxbFbbbFbbbFbbbFbbp9op9qaDawp;Meaqp;Keczp:RepxbbFbbbFbbbFbbbFbp9op9qpklbkadaiav;8qbbskdnalTmbcbhvabhdinadczfgxaxpbbbgopxbbbbbbFFbbbbbbFFgkp9oadpbbbgDaopmbediwDqkzHOAKY8AEgwczp:Reczp:Sep;6egraDaopmlvorxmPsCXQL358E8FpxFubbFubbFubbFubbp9op;7eawczp:Sep;6egwp;Gearp;Gep;Kep;Legopxbbbbbbbbbbbbbbbbp:2egqarpxbbbjbbbjbbbjbbbjgmp9op9rp;Kegrpxb;:FSb;:FSb;:FSb;:FSararp;Meaoaop;Meawaqawamp9op9rp;Kegrarp;Mep;Kep;Kep;Jep;Negwp;Mepxbbn0bbn0bbn0bbn0gqp;KepxFFbbFFbbFFbbFFbbp9oaoawp;Meaqp;Keczp:Rep9qgoarawp;Meaqp;KepxFFbbFFbbFFbbFFbbp9ogrpmwDKYqk8AExm35Ps8E8Fp9qpkbbadaDakp9oaoarpmbezHdiOAlvCXorQLp9qpkbbadcafhdavclfgval6mbkkalaeSmbaiczfpxbbbbbbbbbbbbbbbbgopklbaiaopklbaiabalcitfgdaeciGglcitgv;8qbbdnalTmbaiaipblzgopxbbbbbbFFbbbbbbFFgkp9oaipblbgDaopmbediwDqkzHOAKY8AEgwczp:Reczp:Sep;6egraDaopmlvorxmPsCXQL358E8FpxFubbFubbFubbFubbp9op;7eawczp:Sep;6egwp;Gearp;Gep;Kep;Legopxbbbbbbbbbbbbbbbbp:2egqarpxbbbjbbbjbbbjbbbjgmp9op9rp;Kegrpxb;:FSb;:FSb;:FSb;:FSararp;Meaoaop;Meawaqawamp9op9rp;Kegrarp;Mep;Kep;Kep;Jep;Negwp;Mepxbbn0bbn0bbn0bbn0gqp;KepxFFbbFFbbFFbbFFbbp9oaoawp;Meaqp;Keczp:Rep9qgoarawp;Meaqp;KepxFFbbFFbbFFbbFFbbp9ogrpmwDKYqk8AExm35Ps8E8Fp9qpklzaiaDakp9oaoarpmbezHdiOAlvCXorQLp9qpklbkadaiav;8qbbkk:oDllue97euv978Jjjjjbc8W9Rhidnaec98GglTmbcbhvabhoinaiaopbbbgraoczfgwpbbbgDpmlvorxmPsCXQL358E8Fgqczp:Segkclp:RepklbaopxbbjZbbjZbbjZbbjZpx;Zl81Z;Zl81Z;Zl81Z;Zl81Zakpxibbbibbbibbbibbbp9qp;6ep;NegkaraDpmbediwDqkzHOAKY8AEgrczp:Reczp:Sep;6ep;MegDaDp;Meakarczp:Sep;6ep;Megxaxp;Meakaqczp:Reczp:Sep;6ep;Megqaqp;Mep;Kep;Kep;Lepxbbbbbbbbbbbbbbbbp:4ep;Jepxb;:FSb;:FSb;:FSb;:FSgkp;Mepxbbn0bbn0bbn0bbn0grp;KepxFFbbFFbbFFbbFFbbgmp9oaxakp;Mearp;Keczp:Rep9qgxaDakp;Mearp;Keamp9oaqakp;Mearp;Keczp:Rep9qgkpmbezHdiOAlvCXorQLgrp5baipblbpEb:T:j83ibaocwfarp5eaipblbpEe:T:j83ibawaxakpmwDKYqk8AExm35Ps8E8Fgkp5baipblbpEd:T:j83ibaocKfakp5eaipblbpEi:T:j83ibaocafhoavclfgval6mbkkdnalaeSmbaiczfpxbbbbbbbbbbbbbbbbgkpklbaiakpklbaiabalcitfgoaeciGgvcitgw;8qbbdnavTmbaiaipblbgraipblzgDpmlvorxmPsCXQL358E8Fgqczp:Segkclp:RepklaaipxbbjZbbjZbbjZbbjZpx;Zl81Z;Zl81Z;Zl81Z;Zl81Zakpxibbbibbbibbbibbbp9qp;6ep;NegkaraDpmbediwDqkzHOAKY8AEgrczp:Reczp:Sep;6ep;MegDaDp;Meakarczp:Sep;6ep;Megxaxp;Meakaqczp:Reczp:Sep;6ep;Megqaqp;Mep;Kep;Kep;Lepxbbbbbbbbbbbbbbbbp:4ep;Jepxb;:FSb;:FSb;:FSb;:FSgkp;Mepxbbn0bbn0bbn0bbn0grp;KepxFFbbFFbbFFbbFFbbgmp9oaxakp;Mearp;Keczp:Rep9qgxaDakp;Mearp;Keamp9oaqakp;Mearp;Keczp:Rep9qgkpmbezHdiOAlvCXorQLgrp5baipblapEb:T:j83ibaiarp5eaipblapEe:T:j83iwaiaxakpmwDKYqk8AExm35Ps8E8Fgkp5baipblapEd:T:j83izaiakp5eaipblapEi:T:j83iKkaoaiaw;8qbbkk;uddiue978Jjjjjbc;ab9Rhidnadcd4ae2glc98GgvTmbcbheabhdinadadpbbbgocwp:Recwp:Sep;6eaocep:SepxbbjFbbjFbbjFbbjFp9opxbbjZbbjZbbjZbbjZp:Uep;Mepkbbadczfhdaeclfgeav6mbkkdnavalSmbaic8WfpxbbbbbbbbbbbbbbbbgopklbaicafaopklbaiczfaopklbaiaopklbaiabavcdtfgdalciGgecdtgv;8qbbdnaeTmbaiaipblbgocwp:Recwp:Sep;6eaocep:SepxbbjFbbjFbbjFbbjFp9opxbbjZbbjZbbjZbbjZp:Uep;Mepklbkadaiav;8qbbkk9teiucbcbydj1jjbgeabcifc98GfgbBdj1jjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaikkkebcjwklz:Dbb",B=new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,3,2,0,0,5,3,1,0,1,12,1,0,10,22,2,12,0,65,0,65,0,65,0,252,10,0,0,11,7,0,65,0,253,15,26,11]),Y=new Uint8Array([32,0,65,2,1,106,34,33,3,128,11,4,13,64,6,253,10,7,15,116,127,5,8,12,40,16,19,54,20,9,27,255,113,17,42,67,24,23,146,148,18,14,22,45,70,69,56,114,101,21,25,63,75,136,108,28,118,29,73,115]);if(typeof WebAssembly!=="object")return{supported:!1};var J=WebAssembly.validate(B)?G(Q):G(A),C,X=WebAssembly.instantiate(J,{}).then(function(H){C=H.instance,C.exports.__wasm_call_ctors()});function G(H){var D=new Uint8Array(H.length);for(var L=0;L96?z-97:z>64?z-39:z+4}var M=0;for(var L=0;L0)return I(H,D,L,Z[z],F[M]);return X.then(function(){var N=new Uint8Array(H*D);return W(C,C.exports[Z[z]],N,H,D,L,C.exports[F[M]]),N})}}}();if(typeof KH==="object"&&typeof ch==="object")ch.exports=d3;else if(typeof define==="function"&&define.amd)define([],function(){return d3});else if(typeof KH==="object")KH.MeshoptDecoder=d3;else(typeof self<"u"?self:KH).MeshoptDecoder=d3});var X1A=R((VH,lh)=>{var c3=function(){var A="b9H79Tebbbetm9Geueu9Geub9Gbb9Gsuuuuuuuuuuuu99uueu9Gvuuuuub9Gruuuuuuub9Gvuuuuue999Gvuuuuueu9Gquuuuuuu99uueu9Gwuuuuuu99ueu9Giuuue999Gluuuueu9GiuuueuiOHdilvorlwiDqkbxxbelve9Weiiviebeoweuec:G:Pdkr:Tewo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bbz9TW79O9V9Wt9F79P9T9W29P9M95br8E9TW79O9V9Wt9F79P9T9W29P9M959x9Pt9OcttV9P9I91tW7bwQ9TW79O9V9Wt9F79P9T9W29P9M959q9V9P9Ut7bDX9TW79O9V9Wt9F79P9T9W29P9M959t9J9H2Wbqa9TW79O9V9Wt9F9V9Wt9P9T9P96W9wWVtW94SWt9J9O9sW9T9H9Wbkl79IV9RbxDwebcekdzsq;B:xeHdbkM9Hi8Au8A99Au8Jjjjjbc;W;qb9Rgs8Kjjjjbcbhzascxfcbc;Kbz:ojjjb8AdnabaeSmbabaeadcdtz:njjjb8AkdndnamcdGmbascxfhHcbhOxekasalcrfci4gecbyd:m:jjjbHjjjjbbgABdxasceBd2aAcbaez:ojjjbhCcbhlcbhednadTmbcbhlabheadhAinaCaeydbgXci4fgQaQRbbgQceaXcrGgXtV86bbaQcu7aX4ceGalfhlaeclfheaAcufgAmbkcualcdtalcFFFFi0EhekascCfhHasaecbyd:m:jjjbHjjjjbbgOBdzascdBd2alcd4alfhXcehAinaAgecethAaeaX6mbkcdhzcbhLascuaecdtgAaecFFFFi0Ecbyd:m:jjjbHjjjjbbgXBdCasciBd2aXcFeaAz:ojjjbhKdnadTmbaecufhYcbh8AindndnaKabaLcdtfgEydbgQc:v;t;h;Ev2aYGgXcdtfgCydbgAcuSmbceheinaOaAcdtfydbaQSmdaXaefhAaecefheaKaAaYGgXcdtfgCydbgAcu9hmbkkaOa8AcdtfaQBdbaCa8ABdba8AhAa8Acefh8AkaEaABdbaLcefgLad9hmbkkaKcbyd1:jjjbH:bjjjbbascdBd2kcbh3aHcualcefgecdtaecFFFFi0Ecbyd:m:jjjbHjjjjbbg5Bdbasa5BdlasazceVgeBd2ascxfaecdtfcuadcitadcFFFFe0Ecbyd:m:jjjbHjjjjbbg8EBdbasa8EBdwasazcdfgeBd2asclfabadalcbz:cjjjbascxfaecdtfcualcdtgealcFFFFi0Eg8Fcbyd:m:jjjbHjjjjbbgABdbasazcifgXBd2ascxfaXcdtfa8Fcbyd:m:jjjbHjjjjbbgaBdbasazclVBd2aAaaaialavaOascxfz:djjjbalcbyd:m:jjjbHjjjjbbhCascxfasyd2ghcdtfaCBdbasahcefgXBd2ascxfaXcdtfa8Fcbyd:m:jjjbHjjjjbbgXBdbasahcdfgQBd2ascxfaQcdtfa8Fcbyd:m:jjjbHjjjjbbgQBdbasahcifggBd2aXcFeaez:ojjjbh8JaQcFeaez:ojjjbh8KdnalTmba8Ecwfh8Lindna5a3gQcefg3cdtfydbgKa5aQcdtgefydbgXSmbaKaX9Rhza8EaXcitfhHa8Kaefh8Ma8JaefhEcbhYindndnaHaYcitfydbg8AaQ9hmbaEaQBdba8MaQBdbxekdna5a8Acdtg8NfgeclfydbgXaeydbgeSmba8EaecitgKfydbaQSmeaXae9Rhyaecu7aXfhLa8LaKfhXcbheinaLaeSmeaecefheaXydbhKaXcwfhXaKaQ9hmbkaeay6meka8Ka8NfgeaQa8AaeydbcuSEBdbaEa8AaQaEydbcuSEBdbkaYcefgYaz9hmbkka3al9hmbkaAhXaahQa8KhKa8JhYcbheindndnaeaXydbg8A9hmbdnaeaQydbg8A9hmbaYydbh8AdnaKydbgLcu9hmba8Acu9hmbaCaefcb86bbxikaCaefhEdnaeaLSmbaea8ASmbaEce86bbxikaEcl86bbxdkdnaeaaa8AcdtgLfydb9hmbdnaKydbgEcuSmbaeaESmbaYydbgzcuSmbaeazSmba8KaLfydbgHcuSmbaHa8ASmba8JaLfydbgLcuSmbaLa8ASmbdnaAaEcdtfydbg8AaAaLcdtfydb9hmba8AaAazcdtfydbgLSmbaLaAaHcdtfydb9hmbaCaefcd86bbxlkaCaefcl86bbxikaCaefcl86bbxdkaCaefcl86bbxekaCaefaCa8AfRbb86bbkaXclfhXaQclfhQaKclfhKaYclfhYalaecefge9hmbkdnaqTmbdndnaOTmbaOheaAhXalhQindnaqaeydbfRbbTmbaCaXydbfcl86bbkaeclfheaXclfhXaQcufgQmbxdkkaAhealhXindnaqRbbTmbaCaeydbfcl86bbkaqcefhqaeclfheaXcufgXmbkkaAhealhQaChXindnaCaeydbfRbbcl9hmbaXcl86bbkaeclfheaXcefhXaQcufgQmbkkamceGTmbaChealhXindnaeRbbce9hmbaecl86bbkaecefheaXcufgXmbkkascxfagcdtfcualcx2alc;v:Q;v:Qe0Ecbyd:m:jjjbHjjjjbbg3BdbasahclfgHBd2a3aialavaOz:ejjjbh8PdndnaDmbcbhgcbh8Lxekcbh8LawhecbhXindnaeIdbJbbbb9ETmbasc;Wbfa8LcdtfaXBdba8Lcefh8LkaeclfheaDaXcefgX9hmbkascxfaHcdtfcua8Lal2gecdtaecFFFFi0Ecbyd:m:jjjbHjjjjbbggBdbasahcvfgHBd2alTmba8LTmbarcd4hEdnaOTmba8Lcdthzcbh8AaghLinaoaOa8AcdtfydbaE2cdtfhYasc;WbfheaLhXa8LhQinaXaYaeydbcdtgKfIdbawaKfIdbNUdbaeclfheaXclfhXaQcufgQmbkaLazfhLa8Acefg8Aal9hmbxdkka8Lcdthzcbh8AaghLinaoa8AaE2cdtfhYasc;WbfheaLhXa8LhQinaXaYaeydbcdtgKfIdbawaKfIdbNUdbaeclfheaXclfhXaQcufgQmbkaLazfhLa8Acefg8Aal9hmbkkascxfaHcdtfcualc8S2gealc;D;O;f8U0EgQcbyd:m:jjjbHjjjjbbgXBdbasaHcefgKBd2aXcbaez:ojjjbhqdndndna8LTmbascxfaKcdtfaQcbyd:m:jjjbHjjjjbbgvBdbasaHcdfgXBd2avcbaez:ojjjb8AascxfaXcdtfcua8Lal2gecltgXaecFFFFb0Ecbyd:m:jjjbHjjjjbbgiBdbasaHcifBd2aicbaXz:ojjjb8AadmexdkcbhvcbhiadTmekcbhYabhXindna3aXclfydbg8Acx2fgeIdba3aXydbgLcx2fgQIdbgI:tg8Ra3aXcwfydbgEcx2fgKIdlaQIdlg8S:tgRNaKIdbaI:tg8UaeIdla8S:tg8VN:tg8Wa8WNa8VaKIdwaQIdwg8X:tg8YNaRaeIdwa8X:tg8VN:tgRaRNa8Va8UNa8Ya8RN:tg8Ra8RNMM:rg8UJbbbb9ETmba8Wa8U:vh8Wa8Ra8U:vh8RaRa8U:vhRkaqaAaLcdtfydbc8S2fgeaRa8U:rg8UaRNNg8VaeIdbMUdbaea8Ra8Ua8RNg8ZNg8YaeIdlMUdlaea8Wa8Ua8WNg80Ng81aeIdwMUdwaea8ZaRNg8ZaeIdxMUdxaea80aRNgBaeIdzMUdzaea80a8RNg80aeIdCMUdCaeaRa8Ua8Wa8XNaRaINa8Sa8RNMM:mg8SNgINgRaeIdKMUdKaea8RaINg8RaeId3MUd3aea8WaINg8WaeIdaMUdaaeaIa8SNgIaeId8KMUd8Kaea8UaeIdyMUdyaqaAa8Acdtfydbc8S2fgea8VaeIdbMUdbaea8YaeIdlMUdlaea81aeIdwMUdwaea8ZaeIdxMUdxaeaBaeIdzMUdzaea80aeIdCMUdCaeaRaeIdKMUdKaea8RaeId3MUd3aea8WaeIdaMUdaaeaIaeId8KMUd8Kaea8UaeIdyMUdyaqaAaEcdtfydbc8S2fgea8VaeIdbMUdbaea8YaeIdlMUdlaea81aeIdwMUdwaea8ZaeIdxMUdxaeaBaeIdzMUdzaea80aeIdCMUdCaeaRaeIdKMUdKaea8RaeId3MUd3aea8WaeIdaMUdaaeaIaeId8KMUd8Kaea8UaeIdyMUdyaXcxfhXaYcifgYad6mbkcbhzabhLinabazcdtfh8AcbhXinaCa8AaXc;a1jjbfydbcdtfydbgQfRbbhedndnaCaLaXfydbgKfRbbgYc99fcFeGcpe0mbaec99fcFeGc;:e6mekdnaYcufcFeGce0mba8JaKcdtfydbaQ9hmekdnaecufcFeGce0mba8KaQcdtfydbaK9hmekdnaYcv2aefc:G1jjbfRbbTmbaAaQcdtfydbaAaKcdtfydb0mekJbbacJbbacJbbjZaecFeGceSEaYceSEh80dna3a8AaXc;e1jjbfydbcdtfydbcx2fgeIdwa3aKcx2fgYIdwg8S:tg8Wa3aQcx2fgEIdwa8S:tgRaRNaEIdbaYIdbg8X:tg8Ra8RNaEIdlaYIdlg8V:tg8Ua8UNMMgINa8WaRNaeIdba8X:tg81a8RNa8UaeIdla8V:tg8ZNMMg8YaRN:tg8Wa8WNa81aINa8Ya8RN:tgRaRNa8ZaINa8Ya8UN:tg8Ra8RNMM:rg8UJbbbb9ETmba8Wa8U:vh8Wa8Ra8U:vh8RaRa8U:vhRkaqaAaKcdtfydbc8S2fgeaRa80aI:rNg8UaRNNg8YaeIdbMUdbaea8Ra8Ua8RNg80Ng81aeIdlMUdlaea8Wa8Ua8WNgINg8ZaeIdwMUdwaea80aRNg80aeIdxMUdxaeaIaRNgBaeIdzMUdzaeaIa8RNg83aeIdCMUdCaeaRa8Ua8Wa8SNaRa8XNa8Va8RNMM:mg8SNgINgRaeIdKMUdKaea8RaINg8RaeId3MUd3aea8WaINg8WaeIdaMUdaaeaIa8SNgIaeId8KMUd8Kaea8UaeIdyMUdyaqaAaQcdtfydbc8S2fgea8YaeIdbMUdbaea81aeIdlMUdlaea8ZaeIdwMUdwaea80aeIdxMUdxaeaBaeIdzMUdzaea83aeIdCMUdCaeaRaeIdKMUdKaea8RaeId3MUd3aea8WaeIdaMUdaaeaIaeId8KMUd8Kaea8UaeIdyMUdykaXclfgXcx9hmbkaLcxfhLazcifgzad6mbka8LTmbcbhLinJbbbbh8Xa3abaLcdtfgeclfydbgEcx2fgXIdwa3aeydbgzcx2fgQIdwg8Z:tg8Ra8RNaXIdbaQIdbgB:tg8Wa8WNaXIdlaQIdlg83:tg8Ua8UNMMg80a3aecwfydbgHcx2fgeIdwa8Z:tgINa8Ra8RaINa8WaeIdbaB:tg8SNa8UaeIdla83:tg8VNMMgRN:tJbbbbJbbjZa80aIaINa8Sa8SNa8Va8VNMMg81NaRaRN:tg8Y:va8YJbbbb9BEg8YNhUa81a8RNaIaRN:ta8YNh85a80a8VNa8UaRN:ta8YNh86a81a8UNa8VaRN:ta8YNh87a80a8SNa8WaRN:ta8YNh88a81a8WNa8SaRN:ta8YNh89a8Wa8VNa8Sa8UN:tgRaRNa8UaINa8Va8RN:tgRaRNa8Ra8SNaIa8WN:tgRaRNMM:rJbbbZNhRagaza8L2gwcdtfhXagaHa8L2g8NcdtfhQagaEa8L2g5cdtfhKa8Z:mh8:a83:mhZaB:mhncbhYa8Lh8AJbbbbh8VJbbbbh8YJbbbbh80Jbbbbh81Jbbbbh8ZJbbbbhBJbbbbh83JbbbbhcJbbbbh9cinasc;WbfaYfgecwfaRa85aKIdbaXIdbgI:tg8UNaUaQIdbaI:tg8SNMg8RNUdbaeclfaRa87a8UNa86a8SNMg8WNUdbaeaRa89a8UNa88a8SNMg8UNUdbaecxfaRa8:a8RNaZa8WNaIana8UNMMMgINUdbaRa8Ra8WNNa81Mh81aRa8Ra8UNNa8ZMh8ZaRa8Wa8UNNaBMhBaRaIaINNa8XMh8XaRa8RaINNa8VMh8VaRa8WaINNa8YMh8YaRa8UaINNa80Mh80aRa8Ra8RNNa83Mh83aRa8Wa8WNNacMhcaRa8Ua8UNNa9cMh9caXclfhXaKclfhKaQclfhQaYczfhYa8Acufg8Ambkavazc8S2fgea9caeIdbMUdbaeacaeIdlMUdlaea83aeIdwMUdwaeaBaeIdxMUdxaea8ZaeIdzMUdzaea81aeIdCMUdCaea80aeIdKMUdKaea8YaeId3MUd3aea8VaeIdaMUdaaea8XaeId8KMUd8KaeaRaeIdyMUdyavaEc8S2fgea9caeIdbMUdbaeacaeIdlMUdlaea83aeIdwMUdwaeaBaeIdxMUdxaea8ZaeIdzMUdzaea81aeIdCMUdCaea80aeIdKMUdKaea8YaeId3MUd3aea8VaeIdaMUdaaea8XaeId8KMUd8KaeaRaeIdyMUdyavaHc8S2fgea9caeIdbMUdbaeacaeIdlMUdlaea83aeIdwMUdwaeaBaeIdxMUdxaea8ZaeIdzMUdzaea81aeIdCMUdCaea80aeIdKMUdKaea8YaeId3MUd3aea8VaeIdaMUdaaea8XaeId8KMUd8KaeaRaeIdyMUdyaiawcltfh8AcbhXa8LhKina8AaXfgeasc;WbfaXfgQIdbaeIdbMUdbaeclfgYaQclfIdbaYIdbMUdbaecwfgYaQcwfIdbaYIdbMUdbaecxfgeaQcxfIdbaeIdbMUdbaXczfhXaKcufgKmbkaia5cltfh8AcbhXa8LhKina8AaXfgeasc;WbfaXfgQIdbaeIdbMUdbaeclfgYaQclfIdbaYIdbMUdbaecwfgYaQcwfIdbaYIdbMUdbaecxfgeaQcxfIdbaeIdbMUdbaXczfhXaKcufgKmbkaia8Ncltfh8AcbhXa8LhKina8AaXfgeasc;WbfaXfgQIdbaeIdbMUdbaeclfgYaQclfIdbaYIdbMUdbaecwfgYaQcwfIdbaYIdbMUdbaecxfgeaQcxfIdbaeIdbMUdbaXczfhXaKcufgKmbkaLcifgLad6mbkkcbhQdndnamcwGgJmbJbbbbh8Vcbh9ecbhocbhhxekcbh9ea8Fcbyd:m:jjjbHjjjjbbhhascxfasyd2gecdtfahBdbasaecefgXBd2ascxfaXcdtfcuahalabadaAz:fjjjbgKcltaKcjjjjiGEcbyd:m:jjjbHjjjjbbgoBdbasaecdfBd2aoaKaha3alz:gjjjbJFFuuh8VaKTmbaoheaKhXinaeIdbgRa8Va8VaR9EEh8VaeclfheaXcufgXmbkaKh9ekasydlhTdnalTmbaTclfheaTydbhKaChXalhYcbhQincbaeydbg8AaK9RaXRbbcpeGEaQfhQaXcefhXaeclfhea8AhKaYcufgYmbkaQce4hQkcuadaQ9RcifgScx2aSc;v:Q;v:Qe0Ecbyd:m:jjjbHjjjjbbhDascxfasyd2g9hcdtfaDBdbasa9hcefgeBd2ascxfaecdtfcuaScdtaScFFFFi0Ecbyd:m:jjjbHjjjjbbgrBdbasa9hcdfgeBd2ascxfaecdtfa8Fcbyd:m:jjjbHjjjjbbgyBdbasa9hcifgeBd2ascxfaecdtfalcbyd:m:jjjbHjjjjbbg9iBdbasa9hclfg6Bd2axaxNa8PJbbjZamclGEgUaUN:vh9cJbbbbhcdnadak9nmbdnaSci6mba8Lclth9kaDcwfh0Jbbbbh83JbbbbhcinasclfabadalaAz:cjjjbabhzcbh8Ecbh8Finaba8FcdtfhHcbheindnaAazaefydbgQcdtgEfydbgYaAaHaec;q1jjbfydbcdtfydbgXcdtgwfydbg8ASmbaCaXfRbbgLcv2aCaQfRbbgKfc;G1jjbfRbbg5aKcv2aLfg8Nc;G1jjbfRbbg8MVcFeGTmbdna8AaY9nmba8Nc:G1jjbfRbbcFeGmekaKcufhYdnaKaL9hmbaYcFeGce0mba8JaEfydbaX9hmekdndnaKclSmbaLcl9hmekdnaYcFeGce0mba8JaEfydbaX9hmdkaLcufcFeGce0mba8KawfydbaQ9hmekaDa8Ecx2fgKaXaQa8McFeGgYEBdlaKaQaXaYEBdbaKaYa5Gcb9hBdwa8Ecefh8Ekaeclfgecx9hmbkdna8Fcifg8Fad9pmbazcxfhza8EcifaS9nmekka8ETmdcbhLinaqaAaDaLcx2fgKydbgYcdtgzfydbc8S2fgeIdwa3aKydlg8Acx2fgXIdwg8WNaeIdzaXIdbg8UNaeIdaMgRaRMMa8WNaeIdlaXIdlgINaeIdCa8WNaeId3MgRaRMMaINaeIdba8UNaeIdxaINaeIdKMgRaRMMa8UNaeId8KMMM:lhRJbbbbJbbjZaeIdyg8R:va8RJbbbb9BEh8RdndnaKydwgEmbJFFuuh8YxekJbbbbJbbjZaqaAa8Acdtfydbc8S2fgeIdyg8S:va8SJbbbb9BEaeIdwa3aYcx2fgXIdwg8SNaeIdzaXIdbg8XNaeIdaMg8Ya8YMMa8SNaeIdlaXIdlg8YNaeIdCa8SNaeId3Mg8Sa8SMMa8YNaeIdba8XNaeIdxa8YNaeIdKMg8Sa8SMMa8XNaeId8KMMM:lNh8Yka8RaRNh80dna8LTmbavaYc8S2fgQIdwa8WNaQIdza8UNaQIdaMgRaRMMa8WNaQIdlaINaQIdCa8WNaQId3MgRaRMMaINaQIdba8UNaQIdxaINaQIdKMgRaRMMa8UNaQId8KMMMhRaga8Aa8L2gHcdtfhXaiaYa8L2gwcltfheaQIdyh8Sa8LhQinaXIdbg8Ra8Ra8SNaecxfIdba8WaecwfIdbNa8UaeIdbNaIaeclfIdbNMMMg8Ra8RM:tNaRMhRaXclfhXaeczfheaQcufgQmbkdndnaEmbJbbbbh8Rxekava8Ac8S2fgQIdwa3aYcx2fgeIdwg8UNaQIdzaeIdbgINaQIdaMg8Ra8RMMa8UNaQIdlaeIdlg8SNaQIdCa8UNaQId3Mg8Ra8RMMa8SNaQIdbaINaQIdxa8SNaQIdKMg8Ra8RMMaINaQId8KMMMh8RagawcdtfhXaiaHcltfheaQIdyh8Xa8LhQinaXIdbg8Wa8Wa8XNaecxfIdba8UaecwfIdbNaIaeIdbNa8SaeclfIdbNMMMg8Wa8WM:tNa8RMh8RaXclfhXaeczfheaQcufgQmbka8R:lh8Rka80aR:lMh80a8Ya8RMh8YaCaYfRbbcd9hmbdna8Ka8Ja8Jazfydba8ASEaaazfydbgHcdtfydbgzcu9hmbaaa8AcdtfydbhzkavaHc8S2fgQIdwa3azcx2fgeIdwg8WNaQIdzaeIdbg8UNaQIdaMgRaRMMa8WNaQIdlaeIdlgINaQIdCa8WNaQId3MgRaRMMaINaQIdba8UNaQIdxaINaQIdKMgRaRMMa8UNaQId8KMMMhRagaza8L2gwcdtfhXaiaHa8L2g8NcltfheaQIdyh8Sa8LhQinaXIdbg8Ra8Ra8SNaecxfIdba8WaecwfIdbNa8UaeIdbNaIaeclfIdbNMMMg8Ra8RM:tNaRMhRaXclfhXaeczfheaQcufgQmbkdndnaEmbJbbbbh8Rxekavazc8S2fgQIdwa3aHcx2fgeIdwg8UNaQIdzaeIdbgINaQIdaMg8Ra8RMMa8UNaQIdlaeIdlg8SNaQIdCa8UNaQId3Mg8Ra8RMMa8SNaQIdbaINaQIdxa8SNaQIdKMg8Ra8RMMaINaQId8KMMMh8Raga8NcdtfhXaiawcltfheaQIdyh8Xa8LhQinaXIdbg8Wa8Wa8XNaecxfIdba8UaecwfIdbNaIaeIdbNa8SaeclfIdbNMMMg8Wa8WM:tNa8RMh8RaXclfhXaeczfheaQcufgQmbka8R:lh8Rka80aR:lMh80a8Ya8RMh8YkaKa80a8Ya80a8Y9FgeEUdwaKa8AaYaeaETVgeEBdlaKaYa8AaeEBdbaLcefgLa8E9hmbkasc;Wbfcbcj;qbz:ojjjb8Aa0hea8EhXinasc;WbfaeydbcA4cF8FGgQcFAaQcFA6EcdtfgQaQydbcefBdbaecxfheaXcufgXmbkcbhecbhXinasc;WbfaefgQydbhKaQaXBdbaKaXfhXaeclfgecj;qb9hmbkcbhea0hXinasc;WbfaXydbcA4cF8FGgQcFAaQcFA6EcdtfgQaQydbgQcefBdbaraQcdtfaeBdbaXcxfhXa8Eaecefge9hmbkadak9RgQci9Uh9mdnalTmbcbheayhXinaXaeBdbaXclfhXalaecefge9hmbkkcbh9na9icbalz:ojjjbh8FaQcO9Uh9oa9mce4h9pasydwh9qcbh8Mcbh5dninaDara5cdtfydbcx2fg8NIdwgRa9c9Emea8Ma9m9pmeJFFuuh8Rdna9pa8E9pmbaDara9pcdtfydbcx2fIdwJbb;aZNh8RkdnaRa8R9ETmbaRac9ETmba8Ma9o0mdkdna8FaAa8NydlgHcdtg9rfydbgKfg9sRbba8FaAa8Nydbgzcdtg9tfydbgefg9uRbbVmbaCazfRbbh9vdnaTaecdtfgXclfydbgQaXydbgXSmbaQaX9RhYa3aKcx2fhLa3aecx2fhEa9qaXcitfhecbhXcehwdnindnayaeydbcdtfydbgQaKSmbayaeclfydbcdtfydbg8AaKSmbaQa8ASmba3a8Acx2fg8AIdba3aQcx2fgQIdbg8W:tgRaEIdlaQIdlg8U:tg8XNaEIdba8W:tg8Ya8AIdla8U:tg8RN:tgIaRaLIdla8U:tg80NaLIdba8W:tg81a8RN:tg8UNa8RaEIdwaQIdwg8S:tg8ZNa8Xa8AIdwa8S:tg8WN:tg8Xa8RaLIdwa8S:tgBNa80a8WN:tg8RNa8Wa8YNa8ZaRN:tg8Sa8Wa81NaBaRN:tgRNMMaIaINa8Xa8XNa8Sa8SNMMa8Ua8UNa8Ra8RNaRaRNMMN:rJbbj8:N9FmdkaecwfheaXcefgXaY6hwaYaX9hmbkkawceGTmba9pcefh9pxekdndndndna9vc9:fPdebdkazheinayaecdtgefaHBdbaaaefydbgeaz9hmbxikkdna8Ka8Ja8Ja9tfydbaHSEaaa9tfydbgzcdtfydbgecu9hmbaaa9rfydbhekaya9tfaHBdbaehHkayazcdtfaHBdbka9uce86bba9sce86bba8NIdwgRacacaR9DEhca9ncefh9ncecda9vceSEa8Mfh8Mka5cefg5a8E9hmbkka9nTmddnalTmbcbh8AcbhEindnayaEcdtgefydbgQaESmbaAaQcdtfydbhzdnaEaAaefydb9hgHmbaqazc8S2fgeaqaEc8S2fgXIdbaeIdbMUdbaeaXIdlaeIdlMUdlaeaXIdwaeIdwMUdwaeaXIdxaeIdxMUdxaeaXIdzaeIdzMUdzaeaXIdCaeIdCMUdCaeaXIdKaeIdKMUdKaeaXId3aeId3MUd3aeaXIdaaeIdaMUdaaeaXId8KaeId8KMUd8KaeaXIdyaeIdyMUdyka8LTmbavaQc8S2fgeavaEc8S2gwfgXIdbaeIdbMUdbaeaXIdlaeIdlMUdlaeaXIdwaeIdwMUdwaeaXIdxaeIdxMUdxaeaXIdzaeIdzMUdzaeaXIdCaeIdCMUdCaeaXIdKaeIdKMUdKaeaXId3aeId3MUd3aeaXIdaaeIdaMUdaaeaXId8KaeId8KMUd8KaeaXIdyaeIdyMUdya9kaQ2hLaihXa8LhKinaXaLfgeaXa8AfgQIdbaeIdbMUdbaeclfgYaQclfIdbaYIdbMUdbaecwfgYaQcwfIdbaYIdbMUdbaecxfgeaQcxfIdbaeIdbMUdbaXczfhXaKcufgKmbkaHmbJbbbbJbbjZaqawfgeIdygR:vaRJbbbb9BEaeIdwa3azcx2fgXIdwgRNaeIdzaXIdbg8RNaeIdaMg8Wa8WMMaRNaeIdlaXIdlg8WNaeIdCaRNaeId3MgRaRMMa8WNaeIdba8RNaeIdxa8WNaeIdKMgRaRMMa8RNaeId8KMMM:lNgRa83a83aR9DEh83ka8Aa9kfh8AaEcefgEal9hmbkcbhXa8JheindnaeydbgQcuSmbdnaXayaQcdtgKfydbgQ9hmbcuhQa8JaKfydbgKcuSmbayaKcdtfydbhQkaeaQBdbkaeclfhealaXcefgX9hmbkcbhXa8KheindnaeydbgQcuSmbdnaXayaQcdtgKfydbgQ9hmbcuhQa8KaKfydbgKcuSmbayaKcdtfydbhQkaeaQBdbkaeclfhealaXcefgX9hmbkka83aca8LEh83cbhKabhecbhYindnayaeydbcdtfydbgXayaeclfydbcdtfydbgQSmbaXayaecwfydbcdtfydbg8ASmbaQa8ASmbabaKcdtfgLaXBdbaLcwfa8ABdbaLclfaQBdbaKcifhKkaecxfheaYcifgYad6mbkdndnaJTmbaKak9nmba8Va839FTmbcbhdabhecbhXindnaoahaeydbgQcdtfydbcdtfIdba839ETmbabadcdtfgYaQBdbaYclfaeclfydbBdbaYcwfaecwfydbBdbadcifhdkaecxfheaXcifgXaK6mbkJFFuuh8Va9eTmeaohea9ehXJFFuuhRinaeIdbg8RaRaRa8R9EEg8WaRa8Ra839EgQEhRa8Wa8VaQEh8VaeclfheaXcufgXmbxdkkaKhdkadak0mbxdkkasclfabadalaAz:cjjjbkdndnadak0mbadhXxekdnaJmbadhXxekdna8Va9c9FmbadhXxekina8VJbb;aZNgRa9caRa9c9DEh8WJbbbbhRdna9eTmbaohea9ehAinaeIdbg8RaRa8Ra8W9FEaRa8RaR9EEhRaeclfheaAcufgAmbkkcbhXabhecbhAindnaoahaeydbgQcdtfydbcdtfIdba8W9ETmbabaXcdtfgKaQBdbaKclfaeclfydbBdbaKcwfaecwfydbBdbaXcifhXkaecxfheaAcifgAad6mbkJFFuuh8Vdna9eTmbaohea9ehAJFFuuh8RinaeIdbg8Ua8Ra8Ra8U9EEgIa8Ra8Ua8W9EgQEh8RaIa8VaQEh8VaeclfheaAcufgAmbkkdnaXad9hmbadhXxdkaRacacaR9DEhcaXak9nmeaXhda8Va9c9FmbkkdnamcjjjjlGTmbaOmbaXTmbcbh8AabheinaCaeydbgKfRbbc3thLaecwfgEydbhAdndna8JaKcdtgHfydbaeclfgzydbgQSmbcbhYa8KaQcdtfydbaK9hmekcjjjj94hYkaeaLaYVaKVBdbaCaQfRbbc3thLdndna8JaQcdtfydbaASmbcbhYa8KaAcdtfydbaQ9hmekcjjjj94hYkazaLaYVaQVBdbaCaAfRbbc3thYdndna8JaAcdtfydbaKSmbcbhQa8KaHfydbaA9hmekcjjjj94hQkaEaYaQVaAVBdbaecxfhea8Acifg8AaX6mbkkdnaOTmbaXTmbaXheinabaOabydbcdtfydbBdbabclfhbaecufgembkkdnaPTmbaPaUac:rNUdbka9hcdtascxffcxfhednina6Tmeaeydbcbyd1:jjjbH:bjjjbbaec98fhea6cufh6xbkkasc;W;qbf8KjjjjbaXk;Yieouabydlhvabydbclfcbaicdtz:ojjjbhoadci9UhrdnadTmbdnalTmbaehwadhDinaoalawydbcdtfydbcdtfgqaqydbcefBdbawclfhwaDcufgDmbxdkkaehwadhDinaoawydbcdtfgqaqydbcefBdbawclfhwaDcufgDmbkkdnaiTmbcbhDaohwinawydbhqawaDBdbawclfhwaqaDfhDaicufgimbkkdnadci6mbinaecwfydbhwaeclfydbhDaeydbhidnalTmbalawcdtfydbhwalaDcdtfydbhDalaicdtfydbhikavaoaicdtfgqydbcitfaDBdbavaqydbcitfawBdlaqaqydbcefBdbavaoaDcdtfgqydbcitfawBdbavaqydbcitfaiBdlaqaqydbcefBdbavaoawcdtfgwydbcitfaiBdbavawydbcitfaDBdlawawydbcefBdbaecxfhearcufgrmbkkabydbcbBdbk:todDue99aicd4aifhrcehwinawgDcethwaDar6mbkcuaDcdtgraDcFFFFi0Ecbyd:m:jjjbHjjjjbbhwaoaoyd9GgqcefBd9GaoaqcdtfawBdbawcFearz:ojjjbhkdnaiTmbalcd4hlaDcufhxcbhminamhDdnavTmbavamcdtfydbhDkcbadaDal2cdtfgDydlgwawcjjjj94SEgwcH4aw7c:F:b:DD2cbaDydbgwawcjjjj94SEgwcH4aw7c;D;O:B8J27cbaDydwgDaDcjjjj94SEgDcH4aD7c:3F;N8N27axGhwamcdthPdndndnavTmbakawcdtfgrydbgDcuSmeadavaPfydbal2cdtfgsIdbhzcehqinaqhrdnadavaDcdtfydbal2cdtfgqIdbaz9CmbaqIdlasIdl9CmbaqIdwasIdw9BmlkarcefhqakawarfaxGgwcdtfgrydbgDcu9hmbxdkkakawcdtfgrydbgDcuSmbadamal2cdtfgsIdbhzcehqinaqhrdnadaDal2cdtfgqIdbaz9CmbaqIdlasIdl9CmbaqIdwasIdw9BmikarcefhqakawarfaxGgwcdtfgrydbgDcu9hmbkkaramBdbamhDkabaPfaDBdbamcefgmai9hmbkkakcbyd1:jjjbH:bjjjbbaoaoyd9GcufBd9GdnaeTmbaiTmbcbhDaehwinawaDBdbawclfhwaiaDcefgD9hmbkcbhDaehwindnaDabydbgrSmbawaearcdtfgrydbBdbaraDBdbkawclfhwabclfhbaiaDcefgD9hmbkkk;Qodvuv998Jjjjjbca9Rgvczfcwfcbyd11jjbBdbavcb8Pdj1jjb83izavcwfcbydN1jjbBdbavcb8Pd:m1jjb83ibdnadTmbaicd4hodnabmbdnalTmbcbhrinaealarcdtfydbao2cdtfhwcbhiinavczfaifgDawaifIdbgqaDIdbgkakaq9EEUdbavaifgDaqaDIdbgkakaq9DEUdbaiclfgicx9hmbkarcefgrad9hmbxikkaocdthrcbhwincbhiinavczfaifgDaeaifIdbgqaDIdbgkakaq9EEUdbavaifgDaqaDIdbgkakaq9DEUdbaiclfgicx9hmbkaearfheawcefgwad9hmbxdkkdnalTmbcbhrinabarcx2fgiaealarcdtfydbao2cdtfgwIdbUdbaiawIdlUdlaiawIdwUdwcbhiinavczfaifgDawaifIdbgqaDIdbgkakaq9EEUdbavaifgDaqaDIdbgkakaq9DEUdbaiclfgicx9hmbkarcefgrad9hmbxdkkaocdthlcbhraehwinabarcx2fgiaearao2cdtfgDIdbUdbaiaDIdlUdlaiaDIdwUdwcbhiinavczfaifgDawaifIdbgqaDIdbgkakaq9EEUdbavaifgDaqaDIdbgkakaq9DEUdbaiclfgicx9hmbkawalfhwarcefgrad9hmbkkJbbbbavIdbavIdzgk:tgqaqJbbbb9DEgqavIdlavIdCgx:tgmamaq9DEgqavIdwavIdKgm:tgPaPaq9DEhPdnabTmbadTmbJbbbbJbbjZaP:vaPJbbbb9BEhqinabaqabIdbak:tNUdbabclfgvaqavIdbax:tNUdbabcwfgvaqavIdbam:tNUdbabcxfhbadcufgdmbkkaPk:ZlewudnaeTmbcbhvabhoinaoavBdbaoclfhoaeavcefgv9hmbkkdnaiTmbcbhrinadarcdtfhwcbhDinalawaDcdtgvc;a1jjbfydbcdtfydbcdtfydbhodnabalawavfydbcdtfydbgqcdtfgkydbgvaqSmbinakabavgqcdtfgxydbgvBdbaxhkaqav9hmbkkdnabaocdtfgkydbgvaoSmbinakabavgocdtfgxydbgvBdbaxhkaoav9hmbkkdnaqaoSmbabaqaoaqao0Ecdtfaqaoaqao6EBdbkaDcefgDci9hmbkarcifgrai6mbkkdnaembcbskcbhxindnalaxcdtgvfydbax9hmbaxhodnabavfgDydbgvaxSmbaDhqinaqabavgocdtfgkydbgvBdbakhqaoav9hmbkkaDaoBdbkaxcefgxae9hmbkcbhvabhocbhkindndnavalydbgq9hmbdnavaoydbgq9hmbaoakBdbakcefhkxdkaoabaqcdtfydbBdbxekaoabaqcdtfydbBdbkaoclfhoalclfhlaeavcefgv9hmbkakk;Jiilud99duabcbaecltz:ojjjbhvdnalTmbadhoaihralhwinarcwfIdbhDarclfIdbhqavaoydbcltfgkarIdbakIdbMUdbakclfgxaqaxIdbMUdbakcwfgxaDaxIdbMUdbakcxfgkakIdbJbbjZMUdbaoclfhoarcxfhrawcufgwmbkkdnaeTmbavhraehkinarcxfgoIdbhDaocbBdbararIdbJbbbbJbbjZaD:vaDJbbbb9BEgDNUdbarclfgoaDaoIdbNUdbarcwfgoaDaoIdbNUdbarczfhrakcufgkmbkkdnalTmbinavadydbcltfgrcxfgkaicwfIdbarcwfIdb:tgDaDNaiIdbarIdb:tgDaDNaiclfIdbarclfIdb:tgDaDNMMgDakIdbgqaqaD9DEUdbadclfhdaicxfhialcufglmbkkdnaeTmbavcxfhrinabarIdbUdbarczfhrabclfhbaecufgembkkk8MbabaeadaialavcbcbcbcbcbaoarawaDz:bjjjbk8MbabaeadaialavaoarawaDaqakaxamaPz:bjjjbk:DCoDud99rue99iul998Jjjjjbc;Wb9Rgw8KjjjjbdndnarmbcbhDxekawcxfcbc;Kbz:ojjjb8Aawcuadcx2adc;v:Q;v:Qe0Ecbyd:m:jjjbHjjjjbbgqBdxawceBd2aqaeadaicbz:ejjjb8AawcuadcdtadcFFFFi0Egkcbyd:m:jjjbHjjjjbbgxBdzawcdBd2adcd4adfhmceheinaegicetheaiam6mbkcbhPawcuaicdtgsaicFFFFi0Ecbyd:m:jjjbHjjjjbbgzBdCawciBd2dndnar:ZgH:rJbbbZMgO:lJbbb9p9DTmbaO:Ohexekcjjjj94hekaicufhAc:bwhmcbhCadhXcbhQinaChLaeamgKcufaeaK9iEaPgDcefaeaD9kEhYdndnadTmbaYcuf:YhOaqhiaxheadhmindndnaiIdbaONJbbbZMg8A:lJbbb9p9DTmba8A:OhCxekcjjjj94hCkaCcCthCdndnaiclfIdbaONJbbbZMg8A:lJbbb9p9DTmba8A:OhExekcjjjj94hEkaEcqtaCVhCdndnaicwfIdbaONJbbbZMg8A:lJbbb9p9DTmba8A:OhExekcjjjj94hEkaeaCaEVBdbaicxfhiaeclfheamcufgmmbkazcFeasz:ojjjbh3cbh5cbhPindna3axaPcdtfydbgCcm4aC7c:v;t;h;Ev2gics4ai7aAGgmcdtfgEydbgecuSmbaeaCSmbcehiina3amaifaAGgmcdtfgEydbgecuSmeaicefhiaeaC9hmbkkaEaCBdba5aecuSfh5aPcefgPad9hmbxdkkazcFeasz:ojjjb8Acbh5kaDaYa5ar0giEhPaLa5aiEhCdna5arSmbaYaKaiEgmaP9Rcd9imbdndnaQcl0mbdnaX:ZgOaL:Zg8A:taY:Yg8EaD:Y:tg8Fa8EaK:Y:tgaa5:ZghaH:tNNNaOaH:taaNa8Aah:tNa8AaH:ta8FNahaO:tNM:va8EMJbbbZMgO:lJbbb9p9DTmbaO:Ohexdkcjjjj94hexekaPamfcd9Theka5aXaiEhXaQcefgQcs9hmekkdndnaCmbcihicbhDxekcbhiawakcbyd:m:jjjbHjjjjbbg5BdKawclBd2aPcuf:Yh8AdndnadTmbaqhiaxheadhmindndnaiIdba8ANJbbbZMgO:lJbbb9p9DTmbaO:OhCxekcjjjj94hCkaCcCthCdndnaiclfIdba8ANJbbbZMgO:lJbbb9p9DTmbaO:OhExekcjjjj94hEkaEcqtaCVhCdndnaicwfIdba8ANJbbbZMgO:lJbbb9p9DTmbaO:OhExekcjjjj94hEkaeaCaEVBdbaicxfhiaeclfheamcufgmmbkazcFeasz:ojjjbh3cbhDcbhYindndndna3axaYcdtgKfydbgCcm4aC7c:v;t;h;Ev2gics4ai7aAGgmcdtfgEydbgecuSmbcehiinaxaecdtgefydbaCSmdamaifheaicefhia3aeaAGgmcdtfgEydbgecu9hmbkkaEaYBdbaDhiaDcefhDxeka5aefydbhika5aKfaiBdbaYcefgYad9hmbkcuaDc32giaDc;j:KM;jb0EhexekazcFeasz:ojjjb8AcbhDcbhekawaecbyd:m:jjjbHjjjjbbgeBd3awcvBd2aecbaiz:ojjjbhEavcd4hKdnadTmbdnalTmbaKcdth3a5hCaqhealhmadhAinaEaCydbc32fgiaeIdbaiIdbMUdbaiaeclfIdbaiIdlMUdlaiaecwfIdbaiIdwMUdwaiamIdbaiIdxMUdxaiamclfIdbaiIdzMUdzaiamcwfIdbaiIdCMUdCaiaiIdKJbbjZMUdKaCclfhCaecxfheama3fhmaAcufgAmbxdkka5hmaqheadhCinaEamydbc32fgiaeIdbaiIdbMUdbaiaeclfIdbaiIdlMUdlaiaecwfIdbaiIdwMUdwaiaiIdxJbbbbMUdxaiaiIdzJbbbbMUdzaiaiIdCJbbbbMUdCaiaiIdKJbbjZMUdKamclfhmaecxfheaCcufgCmbkkdnaDTmbaEhiaDheinaiaiIdbJbbbbJbbjZaicKfIdbgO:vaOJbbbb9BEgONUdbaiclfgmaOamIdbNUdbaicwfgmaOamIdbNUdbaicxfgmaOamIdbNUdbaiczfgmaOamIdbNUdbaicCfgmaOamIdbNUdbaic3fhiaecufgembkkcbhCawcuaDcdtgYaDcFFFFi0Egicbyd:m:jjjbHjjjjbbgeBdaawcoBd2awaicbyd:m:jjjbHjjjjbbg3Bd8KaecFeaYz:ojjjbhxdnadTmbJbbjZJbbjZa8A:vaPceSEaoNgOaONh8AaKcdthPalheina8Aaec;81jjbalEgmIdwaEa5ydbgAc32fgiIdC:tgOaONamIdbaiIdx:tgOaONamIdlaiIdz:tgOaONMMNaqcwfIdbaiIdw:tgOaONaqIdbaiIdb:tgOaONaqclfIdbaiIdl:tgOaONMMMhOdndnaxaAcdtgifgmydbcuSmba3aifIdbaO9ETmekamaCBdba3aifaOUdbka5clfh5aqcxfhqaeaPfheadaCcefgC9hmbkkabaxaYz:njjjb8AcrhikaicdthiinaiTmeaic98fgiawcxffydbcbyd1:jjjbH:bjjjbbxbkkawc;Wbf8KjjjjbaDk:Ydidui99ducbhi8Jjjjjbca9Rglczfcwfcbyd11jjbBdbalcb8Pdj1jjb83izalcwfcbydN1jjbBdbalcb8Pd:m1jjb83ibdndnaembJbbjFhvJbbjFhoJbbjFhrxekadcd4cdthwincbhdinalczfadfgDabadfIdbgvaDIdbgoaoav9EEUdbaladfgDavaDIdbgoaoav9DEUdbadclfgdcx9hmbkabawfhbaicefgiae9hmbkalIdwalIdK:thralIdlalIdC:thoalIdbalIdz:thvkJbbbbavavJbbbb9DEgvaoaoav9DEgvararav9DEk9DeeuabcFeaicdtz:ojjjbhlcbhbdnadTmbindnalaeydbcdtfgiydbcu9hmbaiabBdbabcefhbkaeclfheadcufgdmbkkabk9teiucbcbyd:q:jjjbgeabcifc98GfgbBd:q:jjjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik;teeeudndnaeabVciGTmbabhixekdndnadcz9pmbabhixekabhiinaiaeydbBdbaiaeydlBdlaiaeydwBdwaiaeydxBdxaeczfheaiczfhiadc9Wfgdcs0mbkkadcl6mbinaiaeydbBdbaeclfheaiclfhiadc98fgdci0mbkkdnadTmbinaiaeRbb86bbaicefhiaecefheadcufgdmbkkabk:3eedudndnabciGTmbabhixekaecFeGc:b:c:ew2hldndnadcz9pmbabhixekabhiinaialBdxaialBdwaialBdlaialBdbaiczfhiadc9Wfgdcs0mbkkadcl6mbinaialBdbaiclfhiadc98fgdci0mbkkdnadTmbinaiae86bbaicefhiadcufgdmbkkabk9teiucbcbyd:q:jjjbgeabcrfc94GfgbBd:q:jjjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik9:eiuZbhedndncbyd:q:jjjbgdaecztgi9nmbcuheadai9RcFFifcz4nbcuSmekadhekcbabae9Rcifc98Gcbyd:q:jjjbfgdBd:q:jjjbdnadZbcztge9nmbadae9RcFFifcz4nb8Akkk:Iedbcjwk1eFFuuFFuuFFuuFFuFFFuFFFuFbbbbbbbbeeebeebebbeeebebbbbbebebbbbbbbbbebbbdbbbbbbbebbbebbbdbbbbbbbbbbbeeeeebebbebbebebbbeebbbbbbbbbbbbbbbbbbbbbc1Dkxebbbdbbb:GNbb",Q=new Uint8Array([32,0,65,2,1,106,34,33,3,128,11,4,13,64,6,253,10,7,15,116,127,5,8,12,40,16,19,54,20,9,27,255,113,17,42,67,24,23,146,148,18,14,22,45,70,69,56,114,101,21,25,63,75,136,108,28,118,29,73,115]);if(typeof WebAssembly!=="object")return{supported:!1};var B,Y=WebAssembly.instantiate(J(A),{}).then(function(K){B=K.instance,B.exports.__wasm_call_ctors()});function J(K){var I=new Uint8Array(K.length);for(var V=0;V96?H-97:H>64?H-39:H+4}var D=0;for(var V=0;V=3),C(H>=0&&H<=K.length),C(H%3==0),C(D>=0);var z=0;for(var M=0;M<(L?L.length:0);++M)C(L[M]in E),z|=E[L[M]];var N=K.BYTES_PER_ELEMENT==4?K:new Uint32Array(K),q=F(B.exports.meshopt_simplify,N,K.length,I,I.length/V,V*4,H,D,z);return q[0]=K instanceof Uint32Array?q[0]:new K.constructor(q[0]),q},simplifyWithAttributes:function(K,I,V,H,D,L,z,M,N,q){C(K instanceof Uint32Array||K instanceof Int32Array||K instanceof Uint16Array||K instanceof Int16Array),C(K.length%3==0),C(I instanceof Float32Array),C(I.length%V==0),C(V>=3),C(H instanceof Float32Array),C(H.length%D==0),C(D>=0),C(z==null||z instanceof Uint8Array),C(z==null||z.length==I.length/V),C(M>=0&&M<=K.length),C(M%3==0),C(N>=0),C(Array.isArray(L)),C(D>=L.length),C(L.length<=32);for(var w=0;w=0);var P=0;for(var w=0;w<(q?q.length:0);++w)C(q[w]in E),P|=E[q[w]];var _=K.BYTES_PER_ELEMENT==4?K:new Uint32Array(K),j=Z(B.exports.meshopt_simplifyWithAttributes,_,K.length,I,I.length/V,V*4,H,D*4,new Float32Array(L),z?new Uint8Array(z):null,M,N,P);return j[0]=K instanceof Uint32Array?j[0]:new K.constructor(j[0]),j},getScale:function(K,I){return C(K instanceof Float32Array),C(K.length%I==0),C(I>=3),U(B.exports.meshopt_simplifyScale,K,K.length/I,I*4)},simplifyPoints:function(K,I,V,H,D,L){if(C(K instanceof Float32Array),C(K.length%I==0),C(I>=3),C(V>=0&&V<=K.length/I),H)return C(H instanceof Float32Array),C(H.length%D==0),C(D>=3),C(K.length/I==H.length/D),$(B.exports.meshopt_simplifyPoints,K,K.length/I,I*4,H,D*4,L,V);else return $(B.exports.meshopt_simplifyPoints,K,K.length/I,I*4,void 0,0,0,V)}}}();if(typeof VH==="object"&&typeof lh==="object")lh.exports=c3;else if(typeof define==="function"&&define.amd)define([],function(){return c3});else if(typeof VH==="object")VH.MeshoptSimplifier=c3;else(typeof self<"u"?self:VH).MeshoptSimplifier=c3});var G1A=R((IH,ph)=>{var l3=function(){var A="b9H79TebbbeVx9Geueu9Geub9Gbb9Giuuueu9Gmuuuuuuuuuuu9999eu9Gvuuuuueu9Gwuuuuuuuub9Gxuuuuuuuuuuuueu9Gkuuuuuuuuuu99eu9Gouuuuuub9Gruuuuuuub9GluuuubiOHdilvorwDqqkbiibeilve9Weiiviebeoweuec;G:Odkr:Yewo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bb8A9TW79O9V9Wt9F9I919P29K9nW79O2Wt79c9V919U9KbeX9TW79O9V9Wt9F9I919P29K9nW79O2Wt7bo39TW79O9V9Wt9F9J9V9T9W91tWJ2917tWV9c9V919U9K7br39TW79O9V9Wt9F9J9V9T9W91tW9nW79O2Wt9c9V919U9K7bDL9TW79O9V9Wt9F9V9Wt9P9T9P96W9nW79O2Wtbql79IV9RbkDwebcekdsPq;Q9BHdbkIbabaec9:fgefcufae9Ugeabci9Uadfcufad9Ugbaeab0Ek:w8KDPue99eux99dui99euo99iu8Jjjjjbc:WD9Rgm8KjjjjbdndnalmbcbhPxekamc:Cwfcbc;Kbz:njjjb8Adndnalcb9imbaoal9nmbamcuaocdtaocFFFFi0Egscbyd;y1jjbHjjjjbbgzBd:CwamceBd;8wamascbyd;y1jjbHjjjjbbgHBd:GwamcdBd;8wamcualcdtalcFFFFi0Ecbyd;y1jjbHjjjjbbgOBd:KwamciBd;8waihsalhAinazasydbcdtfcbBdbasclfhsaAcufgAmbkaihsalhAinazasydbcdtfgCaCydbcefBdbasclfhsaAcufgAmbkaihsalhCcbhXindnazasydbcdtgQfgAydbcb9imbaHaQfaXBdbaAaAydbgQcjjjj94VBdbaQaXfhXkasclfhsaCcufgCmbkalci9UhLdnalci6mbcbhsaihAinaAcwfydbhCaAclfydbhXaHaAydbcdtfgQaQydbgQcefBdbaOaQcdtfasBdbaHaXcdtfgXaXydbgXcefBdbaOaXcdtfasBdbaHaCcdtfgCaCydbgCcefBdbaOaCcdtfasBdbaAcxfhAaLascefgs9hmbkkaihsalhAindnazasydbcdtgCfgXydbgQcu9kmbaXaQcFFFFrGgQBdbaHaCfgCaCydbaQ9RBdbkasclfhsaAcufgAmbxdkkamcuaocdtgsaocFFFFi0EgAcbyd;y1jjbHjjjjbbgzBd:CwamceBd;8wamaAcbyd;y1jjbHjjjjbbgHBd:GwamcdBd;8wamcualcdtalcFFFFi0Ecbyd;y1jjbHjjjjbbgOBd:KwamciBd;8wazcbasz:njjjbhXalci9UhLaihsalhAinaXasydbcdtfgCaCydbcefBdbasclfhsaAcufgAmbkdnaoTmbcbhsaHhAaXhCaohQinaAasBdbaAclfhAaCydbasfhsaCclfhCaQcufgQmbkkdnalci6mbcbhsaihAinaAcwfydbhCaAclfydbhQaHaAydbcdtfgKaKydbgKcefBdbaOaKcdtfasBdbaHaQcdtfgQaQydbgQcefBdbaOaQcdtfasBdbaHaCcdtfgCaCydbgCcefBdbaOaCcdtfasBdbaAcxfhAaLascefgs9hmbkkaoTmbcbhsaohAinaHasfgCaCydbaXasfydb9RBdbasclfhsaAcufgAmbkkamaLcbyd;y1jjbHjjjjbbgsBd:OwamclBd;8wascbaLz:njjjbhYamcuaLcK2alcjjjjd0Ecbyd;y1jjbHjjjjbbg8ABd:SwamcvBd;8wJbbbbhEdnalci6g3mbarcd4hKaihAa8AhsaLhrJbbbbh5inavaAclfydbaK2cdtfgCIdlh8EavaAydbaK2cdtfgXIdlhEavaAcwfydbaK2cdtfgQIdlh8FaCIdwhaaXIdwhhaQIdwhgasaCIdbg8JaXIdbg8KMaQIdbg8LMJbbnn:vUdbasclfaXIdlaCIdlMaQIdlMJbbnn:vUdbaQIdwh8MaCIdwh8NaXIdwhyascxfa8EaE:tg8Eagah:tggNa8FaE:tg8Faaah:tgaN:tgEJbbbbJbbjZa8Ja8K:tg8Ja8FNa8La8K:tg8Ka8EN:tghahNaEaENaaa8KNaga8JN:tgEaENMM:rg8K:va8KJbbbb9BEg8ENUdbasczfaEa8ENUdbascCfaha8ENUdbascwfa8Maya8NMMJbbnn:vUdba5a8KMh5aAcxfhAascKfhsarcufgrmbka5aL:Z:vJbbbZNhEkamcuaLcdtalcFFFF970Ecbyd;y1jjbHjjjjbbgCBd:WwamcoBd;8waEaq:ZNhEdna3mbcbhsaChAinaAasBdbaAclfhAaLascefgs9hmbkkaE:rhhcuh8PamcuaLcltalcFFFFd0Ecbyd;y1jjbHjjjjbbgIBd:0wamcrBd;8wcbaIa8AaCaLz:djjjb8AJFFuuhyJFFuuh8RJFFuuh8Sdnalci6gXmbJFFuuh8Sa8AhsaLhAJFFuuh8RJFFuuhyinascwfIdbgEayayaE9EEhyasclfIdbgEa8Ra8RaE9EEh8RasIdbgEa8Sa8SaE9EEh8SascKfhsaAcufgAmbkkahJbbbZNhgamaocetgscuaocu9kEcbyd;y1jjbHjjjjbbgABd:4waAcFeasz:njjjbhCdnaXmbcbhAJFFuuhEa8Ahscuh8PinascwfIdbay:tghahNasIdba8S:tghahNasclfIdba8R:tghahNMM:rghaEa8PcuSahaE9DVgXEhEaAa8PaXEh8PascKfhsaLaAcefgA9hmbkkamczfcbcjwz:njjjb8Aamcwf9cb83ibam9cb83ibagaxNhRJbbjZak:th8Ncbh8UJbbbbh8VJbbbbh8WJbbbbh8XJbbbbh8YJbbbbh8ZJbbbbh80cbh81cbhPinJbbbbhEdna8UTmbJbbjZa8U:Z:vhEkJbbbbhhdna80a80Na8Ya8YNa8Za8ZNMMg8KJbbbb9BmbJbbjZa8K:r:vhhka8XaENh5a8WaENh8Fa8VaENhaa8PhQdndndndndna8UaPVTmbamydwgBTmea80ahNh8Ja8ZahNh8La8YahNh8Maeamydbcdtfh83cbh3JFFuuhEcvhXcuhQindnaza83a3cdtfydbcdtgsfydbgvTmbaOaHasfydbcdtfhAindndnaCaiaAydbgKcx2fgsclfydbgrcetf8Vebcs4aCasydbgLcetf8Vebcs4faCascwfydbglcetf8Vebcs4fgombcbhsxekcehsazaLcdtfydbgLceSmbcehsazarcdtfydbgrceSmbcehsazalcdtfydbglceSmbdnarcdSaLcdSfalcdSfcd6mbaocefhsxekaocdfhskdnasaX9kmba8AaKcK2fgLIdwa5:thhaLIdla8F:th8KaLIdbaa:th8EdndnakJbbbb9DTmba8E:lg8Ea8K:lg8Ka8Ea8K9EEg8Kah:lgha8Kah9EEag:vJbbjZMhhxekahahNa8Ea8ENa8Ka8KNMM:rag:va8NNJbbjZMJ9VO:d86JbbjZaLIdCa8JNaLIdxa8MNa8LaLIdzNMMakN:tghahJ9VO:d869DENhhkaKaQasaX6ahaE9DVgLEhQasaXaLEhXahaEaLEhEkaAclfhAavcufgvmbkka3cefg3aB9hmbkkaQcu9hmekama5Ud:ODama8FUd:KDamaaUd:GDamcuBd:qDamcFFF;7rBdjDaIcba8AaYamc:GDfakJbbbb9Damc:qDfamcjDfz:ejjjbamyd:qDhQdndnaxJbbbb9ETmba8UaD6mbaQcuSmeceh3amIdjDaR9EmixdkaQcu9hmekdna8UTmbdnamydlgza8Uci2fgsciGTmbadasfcba8Uazcu7fciGcefz:njjjb8AkabaPcltfgzam8Pib83dbazcwfamcwf8Pib83dbaPcefhPkc3hzinazc98Smvamc:Cwfazfydbcbyd;u1jjbH:bjjjbbazc98fhzxbkkcbh3a8Uaq9pmbamydwaCaiaQcx2fgsydbcetf8Vebcs4aCascwfydbcetf8Vebcs4faCasclfydbcetf8Vebcs4ffaw9nmekcbhscbhAdna81TmbcbhAamczfhXinamczfaAcdtfaXydbgLBdbaXclfhXaAaYaLfRbbTfhAa81cufg81mbkkamydwhlamydbhXam9cu83i:GDam9cu83i:ODam9cu83i:qDam9cu83i:yDaAc;8eaAclfc:bd6Eh81inamcjDfasfcFFF;7rBdbasclfgscz9hmbka81cdthBdnalTmbaeaXcdtfhocbhrindnazaoarcdtfydbcdtgsfydbgvTmbaOaHasfydbcdtfhAcuhLcuhsinazaiaAydbgKcx2fgXclfydbcdtfydbazaXydbcdtfydbfazaXcwfydbcdtfydbfgXasaXas6gXEhsaKaLaXEhLaAclfhAavcufgvmbkaLcuSmba8AaLcK2fgAIdway:tgEaENaAIdba8S:tgEaENaAIdla8R:tgEaENMM:rhEcbhAindndnasamc:qDfaAfgvydbgX6mbasaX9hmeaEamcjDfaAfIdb9FTmekavasBdbamc:GDfaAfaLBdbamcjDfaAfaEUdbxdkaAclfgAcz9hmbkkarcefgral9hmbkkamczfaBfhLcbhscbhAindnamc:GDfasfydbgXcuSmbaLaAcdtfaXBdbaAcefhAkasclfgscz9hmbkaAa81fg81TmbJFFuuhhcuhKamczfhsa81hvcuhLina8AasydbgXcK2fgAIdway:tgEaENaAIdba8S:tgEaENaAIdla8R:tgEaENMM:rhEdndnazaiaXcx2fgAclfydbcdtfydbazaAydbcdtfydbfazaAcwfydbcdtfydbfgAaL6mbaAaL9hmeaEah9DTmekaEhhaAhLaXhKkasclfhsavcufgvmbkaKcuSmbaKhQkdnamaiaQcx2fgrydbarclfydbarcwfydbaCabaeadaPawaqa3z:fjjjbTmbaPcefhPJbbbbh8VJbbbbh8WJbbbbh8XJbbbbh8YJbbbbh8ZJbbbbh80kcbhXinaOaHaraXcdtfydbcdtgAfydbcdtfgKhsazaAfgvydbgLhAdnaLTmbdninasydbaQSmeasclfhsaAcufgATmdxbkkasaKaLcdtfc98fydbBdbavavydbcufBdbkaXcefgXci9hmbka8AaQcK2fgsIdbhEasIdlhhasIdwh8KasIdxh8EasIdzh5asIdCh8FaYaQfce86bba80a8FMh80a8Za5Mh8Za8Ya8EMh8Ya8Xa8KMh8Xa8WahMh8Wa8VaEMh8Vamydxh8Uxbkkamc:WDf8KjjjjbaPk;Vvivuv99lu8Jjjjjbca9Rgv8Kjjjjbdndnalcw0mbaiydbhoaeabcitfgralcdtcufBdlaraoBdbdnalcd6mbaiclfhoalcufhwarcxfhrinaoydbhDarcuBdbarc98faDBdbarcwfhraoclfhoawcufgwmbkkalabfhrxekcbhDavczfcwfcbBdbav9cb83izavcwfcbBdbav9cb83ibJbbjZhqJbbjZhkinadaiaDcdtfydbcK2fhwcbhrinavczfarfgoawarfIdbgxaoIdbgm:tgPakNamMgmUdbavarfgoaPaxam:tNaoIdbMUdbarclfgrcx9hmbkJbbjZaqJbbjZMgq:vhkaDcefgDal9hmbkcbhoadcbcecdavIdlgxavIdwgm9GEgravIdbgPam9GEaraPax9GEgscdtgrfhzavczfarfIdbhxaihralhwinaiaocdtfgDydbhHaDarydbgOBdbaraHBdbarclfhraoazaOcK2fIdbax9Dfhoawcufgwmbkaeabcitfhrdndnaocv6mbaoalc98f6mekaraiydbBdbaralcdtcufBdlaiclfhoalcufhwarcxfhrinaoydbhDarcuBdbarc98faDBdbarcwfhraoclfhoawcufgwmbkalabfhrxekaraxUdbararydlc98GasVBdlabcefaeadaiaoz:djjjbhwararydlciGawabcu7fcdtVBdlawaeadaiaocdtfalao9Rz:djjjbhrkavcaf8Kjjjjbark:;idiud99dndnabaecitfgwydlgDciGgqciSmbinabcbaDcd4gDalaqcdtfIdbawIdb:tgkJbbbb9FEgwaecefgefadaialavaoarz:ejjjbak:larIdb9FTmdabawaD7aefgecitfgwydlgDciGgqci9hmbkkabaecitfgeclfhbdnavmbcuhwindnaiaeydbgDfRbbmbadaDcK2fgqIdwalIdw:tgkakNaqIdbalIdb:tgkakNaqIdlalIdl:tgkakNMM:rgkarIdb9DTmbarakUdbaoaDBdbkaecwfheawcefgwabydbcd46mbxdkkcuhwindnaiaeydbgDfRbbmbadaDcK2fgqIdbalIdb:t:lgkaqIdlalIdl:t:lgxakax9EEgkaqIdwalIdw:t:lgxakax9EEgkarIdb9DTmbarakUdbaoaDBdbkaecwfheawcefgwabydbcd46mbkkk;llevudnabydwgxaladcetfgm8Vebcs4alaecetfgP8Vebgscs4falaicetfgz8Vebcs4ffaD0abydxaq9pVakVgDce9hmbavawcltfgxab8Pdb83dbaxcwfabcwfgx8Pdb83dbdnaxydbgqTmbaoabydbcdtfhxaqhsinalaxydbcetfcFFi87ebaxclfhxascufgsmbkkdnabydxglci2gsabydlgxfgkciGTmbarakfcbalaxcu7fciGcefz:njjjb8Aabydxci2hsabydlhxabydwhqkab9cb83dwababydbaqfBdbabascifc98GaxfBdlaP8Vebhscbhxkdnascztcz91cu9kmbabaxcefBdwaPax87ebaoabydbcdtfaxcdtfaeBdbkdnam8Uebcu9kmbababydwgxcefBdwamax87ebaoabydbcdtfaxcdtfadBdbkdnaz8Uebcu9kmbababydwgxcefBdwazax87ebaoabydbcdtfaxcdtfaiBdbkarabydlfabydxci2faPRbb86bbarabydlfabydxci2fcefamRbb86bbarabydlfabydxci2fcdfazRbb86bbababydxcefBdxaDk8LbabaeadaialavaoarawaDaDaqJbbbbz:cjjjbk;Nkovud99euv99eul998Jjjjjbc:W;ae9Rgo8KjjjjbdndnadTmbavcd4hrcbhwcbhDindnaiaeclfydbar2cdtfgvIdbaiaeydbar2cdtfgqIdbgk:tgxaiaecwfydbar2cdtfgmIdlaqIdlgP:tgsNamIdbak:tgzavIdlaP:tgPN:tgkakNaPamIdwaqIdwgH:tgONasavIdwaH:tgHN:tgPaPNaHazNaOaxN:tgxaxNMM:rgsJbbbb9Bmbaoc:W:qefawcx2fgAakas:vUdwaAaxas:vUdlaAaPas:vUdbaoc8Wfawc8K2fgAaq8Pdb83dbaAav8Pdb83dxaAam8Pdb83dKaAcwfaqcwfydbBdbaAcCfavcwfydbBdbaAcafamcwfydbBdbawcefhwkaecxfheaDcifgDad6mbkab9cb83dbabcyf9cb83dbabcaf9cb83dbabcKf9cb83dbabczf9cb83dbabcwf9cb83dbawTmeaocbBd8Sao9cb83iKao9cb83izaoczfaoc8Wfawci2cxaoc8Sfcbcrz1jjjbaoIdKhCaoIdChXaoIdzhQao9cb83iwao9cb83ibaoaoc:W:qefawcxaoc8Sfcbciz1jjjbJbbjZhkaoIdwgPJbbbbJbbjZaPaPNaoIdbgPaPNaoIdlgsasNMM:rgx:vaxJbbbb9BEgzNhxasazNhsaPazNhzaoc:W:qefheawhvinaecwfIdbaxNaeIdbazNasaeclfIdbNMMgPakaPak9DEhkaecxfheavcufgvmbkabaCUdwabaXUdlabaQUdbabaoId3UdxdndnakJ;n;m;m899FmbJbbbbhPaoc:W:qefheaoc8WfhvinaCavcwfIdb:taecwfIdbgHNaQavIdb:taeIdbgONaXavclfIdb:taeclfIdbgLNMMaxaHNazaONasaLNMM:vgHaPaHaP9EEhPavc8KfhvaecxfheawcufgwmbkabaxUd8KabasUdaabazUd3abaCaxaPN:tUdKabaXasaPN:tUdCabaQazaPN:tUdzabJbbjZakakN:t:rgkUdydndnaxJbbj:;axJbbj:;9GEgPJbbjZaPJbbjZ9FEJbb;:9cNJbbbZJbbb:;axJbbbb9GEMgP:lJbbb9p9DTmbaP:Ohexekcjjjj94hekabae86b8UdndnasJbbj:;asJbbj:;9GEgPJbbjZaPJbbjZ9FEJbb;:9cNJbbbZJbbb:;asJbbbb9GEMgP:lJbbb9p9DTmbaP:Ohvxekcjjjj94hvkabav86bRdndnazJbbj:;azJbbj:;9GEgPJbbjZaPJbbjZ9FEJbb;:9cNJbbbZJbbb:;azJbbbb9GEMgP:lJbbb9p9DTmbaP:Ohqxekcjjjj94hqkabaq86b8SdndnaecKtcK91:YJbb;:9c:vax:t:lavcKtcK91:YJbb;:9c:vas:t:laqcKtcK91:YJbb;:9c:vaz:t:lakMMMJbb;:9cNJbbjZMgk:lJbbb9p9DTmbak:Ohexekcjjjj94hekaecFbaecFb9iEhexekabcjjj;8iBdycFbhekabae86b8Vxekab9cb83dbabcyf9cb83dbabcaf9cb83dbabcKf9cb83dbabczf9cb83dbabcwf9cb83dbkaoc:W;aef8Kjjjjbk;Iwwvul99iud99eue99eul998Jjjjjbcje9Rgr8Kjjjjbavcd4hwaicd4hDdndnaoTmbarc;abfcbaocdtgvz:njjjb8Aarc;Gbfcbavz:njjjb8AarhvarcafhiaohqinavcFFF97BdbaicFFF;7rBdbaiclfhiavclfhvaqcufgqmbkdnadTmbcbhkinaeakaD2cdtfgvIdwhxavIdlhmavIdbhPalakaw2cdtfIdbhsarc;abfhzarhiarc;GbfhHarcafhqcj1jjbhvaohOinasavcwfIdbaxNavIdbaPNavclfIdbamNMMgAMhCakhXdnaAas:tgAaqIdbgQ9DgLmbaHydbhXkaHaXBdbakhXdnaCaiIdbgK9EmbazydbhXaKhCkazaXBdbaiaCUdbaqaAaQaLEUdbavcxfhvaqclfhqaHclfhHaiclfhiazclfhzaOcufgOmbkakcefgkad9hmbkkadThkJbbbbhCcbhXarc;abfhvarc;Gbfhicbhqinalavydbgzaw2cdtfIdbalaiydbgHaw2cdtfIdbaeazaD2cdtfgzIdwaeaHaD2cdtfgHIdw:tgsasNazIdbaHIdb:tgsasNazIdlaHIdl:tgsasNMM:rMMgsaCasaC9EgzEhCaqaXazEhXaiclfhiavclfhvaoaqcefgq9hmbkaCJbbbZNhKxekadThkcbhXJbbbbhKkJbbbbhCdnaearc;abfaXcdtgifydbgqaD2cdtfgvIdwaearc;GbfaifydbgzaD2cdtfgiIdwgm:tgsasNavIdbaiIdbgY:tgAaANavIdlaiIdlgP:tgQaQNMM:rgxJbbbb9ETmbaxalaqaw2cdtfIdbMalazaw2cdtfIdb:taxaxM:vhCkasaCNamMhmaQaCNaPMhPaAaCNaYMhYdnakmbaDcdthvawcdthiindnalIdbg8AaecwfIdbam:tgCaCNaeIdbaY:tgsasNaeclfIdbaP:tgAaANMM:rgQMgEaK9ETmbJbbbbhxdnaQJbbbb9ETmbaEaK:taQaQM:vhxkaxaCNamMhmaxaANaPMhPaxasNaYMhYa8AaKaQMMJbbbZNhKkaeavfhealaifhladcufgdmbkkabaKUdxabamUdwabaPUdlabaYUdbarcjef8Kjjjjbkjeeiu8Jjjjjbcj8W9Rgr8Kjjjjbaici2hwdnaiTmbawceawce0EhDarhiinaiaeadRbbcdtfydbBdbadcefhdaiclfhiaDcufgDmbkkabarawaladaoz:hjjjbarcj8Wf8Kjjjjbk:3lequ8JjjjjbcjP9Rgl8Kjjjjbcbhvalcjxfcbaiz:njjjb8AdndnadTmbcjehoaehrincuhwarhDcuhqavhkdninawakaoalcjxfaDcefRbbfRbb9RcFeGci6aoalcjxfaDRbbfRbb9RcFeGci6faoalcjxfaDcdfRbbfRbb9RcFeGci6fgxaq9mgmEhwdnammbaxce0mdkaxaqaxaq9kEhqaDcifhDadakcefgk9hmbkkaeawci2fgDcdfRbbhqaDcefRbbhxaDRbbhkaeavci2fgDcifaDawav9Rci2z:qjjjb8Aakalcjxffaocefgo86bbaxalcjxffao86bbaDcdfaq86bbaDcefax86bbaDak86bbaqalcjxffao86bbarcifhravcefgvad9hmbkalcFeaicetz:njjjbhoadci2gDceaDce0EhqcbhxindnaoaeRbbgkcetfgw8UebgDcu9kmbawax87ebaocjlfaxcdtfabakcdtfydbBdbaxhDaxcefhxkaeaD86bbaecefheaqcufgqmbkaxcdthDxekcbhDkabalcjlfaDz:mjjjb8AalcjPf8Kjjjjbk9teiucbcbyd;C1jjbgeabcifc98GfgbBd;C1jjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik;teeeudndnaeabVciGTmbabhixekdndnadcz9pmbabhixekabhiinaiaeydbBdbaiaeydlBdlaiaeydwBdwaiaeydxBdxaeczfheaiczfhiadc9Wfgdcs0mbkkadcl6mbinaiaeydbBdbaeclfheaiclfhiadc98fgdci0mbkkdnadTmbinaiaeRbb86bbaicefhiaecefheadcufgdmbkkabk:3eedudndnabciGTmbabhixekaecFeGc:b:c:ew2hldndnadcz9pmbabhixekabhiinaialBdxaialBdwaialBdlaialBdbaiczfhiadc9Wfgdcs0mbkkadcl6mbinaialBdbaiclfhiadc98fgdci0mbkkdnadTmbinaiae86bbaicefhiadcufgdmbkkabk9teiucbcbyd;C1jjbgeabcrfc94GfgbBd;C1jjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik9:eiuZbhedndncbyd;C1jjbgdaecztgi9nmbcuheadai9RcFFifcz4nbcuSmekadhekcbabae9Rcifc98Gcbyd;C1jjbfgdBd;C1jjbdnadZbcztge9nmbadae9RcFFifcz4nb8Akk:;Deludndndnadch9pmbabaeSmdaeabadfgi9Rcbadcet9R0mekabaead;8qbbxekaeab7ciGhldndndnabae9pmbdnalTmbadhvabhixikdnabciGmbadhvabhixdkadTmiabaeRbb86bbadcufhvdnabcefgiciGmbaecefhexdkavTmiabaeRbe86beadc9:fhvdnabcdfgiciGmbaecdfhexdkavTmiabaeRbd86bdadc99fhvdnabcifgiciGmbaecifhexdkavTmiabaeRbi86biabclfhiaeclfheadc98fhvxekdnalmbdnaiciGTmbadTmlabadcufgifglaeaifRbb86bbdnalciGmbaihdxekaiTmlabadc9:fgifglaeaifRbb86bbdnalciGmbaihdxekaiTmlabadc99fgifglaeaifRbb86bbdnalciGmbaihdxekaiTmlabadc98fgdfaeadfRbb86bbkadcl6mbdnadc98fgocd4cefciGgiTmbaec98fhlabc98fhvinavadfaladfydbBdbadc98fhdaicufgimbkkaocx6mbaec9Wfhvabc9WfhoinaoadfgicxfavadfglcxfydbBdbaicwfalcwfydbBdbaiclfalclfydbBdbaialydbBdbadc9Wfgdci0mbkkadTmdadhidnadciGglTmbaecufhvabcufhoadhiinaoaifavaifRbb86bbaicufhialcufglmbkkadcl6mdaec98fhlabc98fhvinavaifgecifalaifgdcifRbb86bbaecdfadcdfRbb86bbaecefadcefRbb86bbaeadRbb86bbaic98fgimbxikkavcl6mbdnavc98fglcd4cefcrGgdTmbavadcdt9RhvinaiaeydbBdbaeclfheaiclfhiadcufgdmbkkalc36mbinaiaeydbBdbaiaeydlBdlaiaeydwBdwaiaeydxBdxaiaeydzBdzaiaeydCBdCaiaeydKBdKaiaeyd3Bd3aecafheaicafhiavc9Gfgvci0mbkkavTmbdndnavcrGgdmbavhlxekavc94GhlinaiaeRbb86bbaicefhiaecefheadcufgdmbkkavcw6mbinaiaeRbb86bbaiaeRbe86beaiaeRbd86bdaiaeRbi86biaiaeRbl86blaiaeRbv86bvaiaeRbo86boaiaeRbr86braicwfhiaecwfhealc94fglmbkkabkk9Tdbcjwk9ubbjZbbbbbbbbbbbbbbjZbbbbbbbbbbbbbbjZ86;nAZ86;nAZ86;nAZ86;nA:;86;nAZ86;nAZ86;nAZ86;nA:;86;nAZ86;nAZ86;nAZ86;nA:;bc;uwkxebbbdbbb9GNbb",Q=new Uint8Array([32,0,65,2,1,106,34,33,3,128,11,4,13,64,6,253,10,7,15,116,127,5,8,12,40,16,19,54,20,9,27,255,113,17,42,67,24,23,146,148,18,14,22,45,70,69,56,114,101,21,25,63,75,136,108,28,118,29,73,115]);if(typeof WebAssembly!=="object")return{supported:!1};var B,Y=WebAssembly.instantiate(J(A),{}).then(function(K){B=K.instance,B.exports.__wasm_call_ctors()});function J(K){var I=new Uint8Array(K.length);for(var V=0;V96?H-97:H>64?H-39:H+4}var D=0;for(var V=0;V=3),C(H<=256||H>0),C(D<=512),C(D%4==0),L=L||0;var z=K.BYTES_PER_ELEMENT==4?K:new Uint32Array(K);return Z(z,I,I.length/V,V*4,H,D,L)},computeClusterBounds:function(K,I,V){C(K.length%3==0),C(K.length/3<=512),C(I instanceof Float32Array),C(I.length%V==0),C(V>=3);var H=K.BYTES_PER_ELEMENT==4?K:new Uint32Array(K);return E(H,I,I.length/V,V*4)},computeMeshletBounds:function(K,I,V){return C(K.meshletCount!=0),C(I instanceof Float32Array),C(I.length%V==0),C(V>=3),$(K,I,I.length/V,V*4)},extractMeshlet:function(K,I){return C(I>=0&&I{var HrQ=J1A(),DrQ=C1A(),NrQ=X1A(),LrQ=G1A();W1A.exports={MeshoptEncoder:HrQ,MeshoptDecoder:DrQ,MeshoptSimplifier:NrQ,MeshoptClusterizer:LrQ}});var ah=R((rrQ)=>{function irQ(A,Q,B,C){var J=0,C=C===void 0?{}:C,X=C.loop===void 0?null:C.loop,G=C.palette===void 0?null:C.palette;if(Q<=0||B<=0||Q>65535||B>65535)throw Error("Width/Height invalid.");function W(V){var H=V.length;if(H<2||H>256||H&H-1)throw Error("Invalid code/color length, must be power of 2 and 2 .. 256.");return H}A[J++]=71,A[J++]=73,A[J++]=70,A[J++]=56,A[J++]=57,A[J++]=97;var F=0,Z=0;if(G!==null){var U=W(G);while(U>>=1)++F;if(U=1<=U)throw Error("Background index out of range.");if(Z===0)throw Error("Background index explicitly passed as 0.")}}if(A[J++]=Q&255,A[J++]=Q>>8&255,A[J++]=B&255,A[J++]=B>>8&255,A[J++]=(G!==null?128:0)|F,A[J++]=Z,A[J++]=0,G!==null)for(var $=0,E=G.length;$>16&255,A[J++]=K>>8&255,A[J++]=K&255}if(X!==null){if(X<0||X>65535)throw Error("Loop count invalid.");A[J++]=33,A[J++]=255,A[J++]=11,A[J++]=78,A[J++]=69,A[J++]=84,A[J++]=83,A[J++]=67,A[J++]=65,A[J++]=80,A[J++]=69,A[J++]=50,A[J++]=46,A[J++]=48,A[J++]=3,A[J++]=1,A[J++]=X&255,A[J++]=X>>8&255,A[J++]=0}var I=!1;this.addFrame=function(V,H,D,L,z,M){if(I===!0)--J,I=!1;if(M=M===void 0?{}:M,V<0||H<0||V>65535||H>65535)throw Error("x/y invalid.");if(D<=0||L<=0||D>65535||L>65535)throw Error("Width/Height invalid.");if(z.length>=1)++P;w=1<3)throw Error("Disposal out of range.");var k=!1,T=0;if(M.transparent!==void 0&&M.transparent!==null){if(k=!0,T=M.transparent,T<0||T>=w)throw Error("Transparent color index.")}if(j!==0||k||_!==0)A[J++]=33,A[J++]=249,A[J++]=4,A[J++]=j<<2|(k===!0?1:0),A[J++]=_&255,A[J++]=_>>8&255,A[J++]=T,A[J++]=0;if(A[J++]=44,A[J++]=V&255,A[J++]=V>>8&255,A[J++]=H&255,A[J++]=H>>8&255,A[J++]=D&255,A[J++]=D>>8&255,A[J++]=L&255,A[J++]=L>>8&255,A[J++]=N===!0?128|P-1:0,N===!0)for(var S=0,v=q.length;S>16&255,A[J++]=y>>8&255,A[J++]=y&255}return J=nrQ(A,J,P<2?2:P,z),J},this.end=function(){if(I===!1)A[J++]=59,I=!0;return J},this.getOutputBuffer=function(){return A},this.setOutputBuffer=function(V){A=V},this.getOutputBufferPosition=function(){return J},this.setOutputBufferPosition=function(V){J=V}}function nrQ(A,Q,B,Y){A[Q++]=B;var J=Q++,C=1<=M)if(A[Q++]=U&255,U>>=8,Z-=8,Q===J+256)A[J]=255,J=Q++}function E(M){U|=M<=8)if(A[Q++]=U&255,U>>=8,Z-=8,Q===J+256)A[J]=255,J=Q++;if(W===4096)E(C),W=G+1,F=B+1,I={};else{if(W>=1<>7,X=J&7,G=1<=0))throw Error("Invalid block size");if(H===0)break;Q+=H}}break;case 249:if(A[Q++]!==4||A[Q+4]!==0)throw Error("Invalid graphics extension block.");var D=A[Q++];if(E=A[Q++]|A[Q++]<<8,K=A[Q++],(D&1)===0)K=null;I=D>>2&7,Q++;break;case 254:while(!0){var H=A[Q++];if(!(H>=0))throw Error("Invalid block size");if(H===0)break;Q+=H}break;default:throw Error("Unknown graphic control label: 0x"+A[Q-1].toString(16))}break;case 44:var L=A[Q++]|A[Q++]<<8,z=A[Q++]|A[Q++]<<8,M=A[Q++]|A[Q++]<<8,N=A[Q++]|A[Q++]<<8,q=A[Q++],w=q>>7,P=q>>6&1,_=q&7,j=1<<_+1,k=F,T=Z,S=!1;if(w){var S=!0;k=Q,T=j,Q+=j*3}var v=Q;Q++;while(!0){var H=A[Q++];if(!(H>=0))throw Error("Invalid block size");if(H===0)break;Q+=H}$.push({x:L,y:z,width:M,height:N,has_local_palette:S,palette_offset:k,palette_size:T,data_offset:v,data_length:Q-v,transparent_index:K,interlaced:!!P,delay:E,disposal:I});break;case 59:U=!1;break;default:throw Error("Unknown gif block: 0x"+A[Q-1].toString(16))}this.numFrames=function(){return $.length},this.loopCount=function(){return V},this.frameInfo=function(y){if(y<0||y>=$.length)throw Error("Frame index out of range.");return $[y]},this.decodeAndBlitFrameBGRA=function(y,h){var g=this.frameInfo(y),m=g.width*g.height,n=new Uint8Array(m);j1A(A,g.data_offset,n,m);var{palette_offset:i,transparent_index:p}=g;if(p===null)p=256;var d=g.width,x=B-d,b=d,o=(g.y*B+g.x)*4,GA=((g.y+g.height)*B+g.x)*4,VA=o,EA=x*4;if(g.interlaced===!0)EA+=B*4*7;var UA=8;for(var CA=0,QA=n.length;CA=GA)EA=x*4+B*4*(UA-1),VA=o+(d+x)*(UA<<1),UA>>=1}if(KA===p)VA+=4;else{var HA=A[i+KA*3],DA=A[i+KA*3+1],hA=A[i+KA*3+2];h[VA++]=hA,h[VA++]=DA,h[VA++]=HA,h[VA++]=255}--b}},this.decodeAndBlitFrameRGBA=function(y,h){var g=this.frameInfo(y),m=g.width*g.height,n=new Uint8Array(m);j1A(A,g.data_offset,n,m);var{palette_offset:i,transparent_index:p}=g;if(p===null)p=256;var d=g.width,x=B-d,b=d,o=(g.y*B+g.x)*4,GA=((g.y+g.height)*B+g.x)*4,VA=o,EA=x*4;if(g.interlaced===!0)EA+=B*4*7;var UA=8;for(var CA=0,QA=n.length;CA=GA)EA=x*4+B*4*(UA-1),VA=o+(d+x)*(UA<<1),UA>>=1}if(KA===p)VA+=4;else{var HA=A[i+KA*3],DA=A[i+KA*3+1],hA=A[i+KA*3+2];h[VA++]=HA,h[VA++]=DA,h[VA++]=hA,h[VA++]=255}--b}}}function j1A(A,Q,B,Y){var J=A[Q++],C=1<>=W,Z-=W,V===C){G=X+1,W=J+1,F=(1<C)L=K[L]>>8,++D;var z=L,M=$+D+(H!==V?1:0);if(M>Y){console.log("Warning, gif stream longer than expected.");return}B[$++]=z,$+=D;var N=$;if(H!==V)B[$++]=z;L=H;while(D--)L=K[L],B[--N]=L&255,L>>=8;if(I!==null&&G<4096){if(K[G++]=I<<8|z,G>=F+1&&W<12)++W,F=F<<1|1}I=V}if($!==Y)console.log("Warning, gif stream shorter than expected.");return B}try{rrQ.GifWriter=irQ,rrQ.GifReader=srQ}catch(A){}});var a3=R((xGY,O1A)=>{class NH{constructor(...A){if(A.length===0)throw Error("constructor requires parameters");let Q=A[0];if(Q!==null&&typeof Q==="object")if(Q instanceof NH){let B=Q.bitmap;this.bitmap={width:B.width,height:B.height,data:new Buffer(B.width*B.height*4)},B.data.copy(this.bitmap.data)}else if(Q.width&&Q.height&&Q.data)this.bitmap=Q;else throw Error("unrecognized constructor parameters");else if(typeof Q==="number"&&typeof A[1]==="number"){let B=Q,Y=A[1],J=A[2];if(this.bitmap={width:B,height:Y},Buffer.isBuffer(J))this.bitmap.data=J;else if(this.bitmap.data=new Buffer(B*Y*4),typeof J==="number")this.fillRGBA(J)}else throw Error("unrecognized constructor parameters")}blit(A,Q,B,Y,J,C,X){if(Y+C>this.bitmap.width)throw Error("copy exceeds width of source bitmap");if(Q+C>A.bitmap.width)throw Error("copy exceeds width of target bitmap");if(J+X>this.bitmap.height)throw Error("copy exceeds height of source bitmap");if(B+X>A.bitmap.height)throw new Erro("copy exceeds height of target bitmap");let G=this.bitmap.data,W=A.bitmap.data,F=this.bitmap.width*4,Z=A.bitmap.width*4,U=C*4,$=J*F+Y*4,E=B*Z+Q*4;while(--X>=0)G.copy(W,E,$,$+U),$+=F,E+=Z;return this}fillRGBA(A){let Q=this.bitmap.data,B=this.bitmap.height*4,Y=0;while(Y{let J=Math.round(0.299*A[Y]+0.587*A[Y+1]+0.114*A[Y+2]);A[Y]=J,A[Y+1]=J,A[Y+2]=J}),this}reframe(A,Q,B,Y,J){let C=A<0?0:A,X=Q<0?0:Q,G=B+C>this.bitmap.width?this.bitmap.width-C:B,W=Y+X>this.bitmap.height?this.bitmap.height-X:Y,F=A<0?-A:0,Z=Q<0?-Q:0,U;if(J===void 0){if(C!==A||X!=Q||G!==B||W!==Y)throw new GifError("fillRGBA required for this reframing");U=new NH(B,Y)}else U=new NH(B,Y,J);return this.blit(U,F,Z,C,X,G,W),this.bitmap=U.bitmap,this}scale(A){if(A===1)return;if(!Number.isInteger(A)||A<1)throw Error("the scale must be an integer >= 1");let Q=this.bitmap.width,B=this.bitmap.height,Y=Q*A*4,J=this.bitmap.data,C=new Buffer(B*Y*A),X=0,G,W=0;for(let F=0;F{class LH{constructor(A,Q,B){this.width=B.width,this.height=B.height,this.loops=B.loops,this.usesTransparency=B.usesTransparency,this.colorScope=B.colorScope,this.frames=Q,this.buffer=A}}LH.GlobalColorsPreferred=0;LH.GlobalColorsOnly=1;LH.LocalColorsOnly=2;class P1A extends Error{constructor(A){super(A);if(A instanceof Error)this.stack="Gif"+A.stack}}arQ.Gif=LH;arQ.GifError=P1A});var HXA=R((bGY,IXA)=>{var{defineProperty:e3,getOwnPropertyDescriptor:erQ,getOwnPropertyNames:AaQ}=Object,QaQ=Object.prototype.hasOwnProperty,BaQ=(A,Q,B)=>(Q in A)?e3(A,Q,{enumerable:!0,configurable:!0,writable:!0,value:B}):A[Q]=B,YaQ=(A)=>e3(A,"__esModule",{value:!0}),u1=(A,Q)=>{for(var B in Q)e3(A,B,{get:Q[B],enumerable:!0})},JaQ=(A,Q,B,Y)=>{if(Q&&typeof Q==="object"||typeof Q==="function"){for(let J of AaQ(Q))if(!QaQ.call(A,J)&&(B||J!=="default"))e3(A,J,{get:()=>Q[J],enumerable:!(Y=erQ(Q,J))||Y.enumerable})}return A},CaQ=((A)=>{return(Q,B)=>{return A&&A.get(Q)||(B=JaQ(YaQ({}),Q,1),A&&A.set(Q,B),B)}})(typeof WeakMap<"u"?new WeakMap:0),FA=(A,Q,B)=>{return BaQ(A,typeof Q!=="symbol"?Q+"":Q,B),B},_1A={};u1(_1A,{applyPalette:()=>jaQ,applyPaletteSync:()=>waQ,buildPalette:()=>RaQ,buildPaletteSync:()=>zaQ,constants:()=>v1A,conversion:()=>f1A,distance:()=>i1A,image:()=>ZXA,palette:()=>JXA,quality:()=>EXA,utils:()=>CXA});var v1A={};u1(v1A,{bt709:()=>y1A});var y1A={};u1(y1A,{Y:()=>g1A,x:()=>h1A,y:()=>x1A});var g1A=((A)=>{return A[A.RED=0.2126]="RED",A[A.GREEN=0.7152]="GREEN",A[A.BLUE=0.0722]="BLUE",A[A.WHITE=1]="WHITE",A})(g1A||{}),h1A=((A)=>{return A[A.RED=0.64]="RED",A[A.GREEN=0.3]="GREEN",A[A.BLUE=0.15]="BLUE",A[A.WHITE=0.3127]="WHITE",A})(h1A||{}),x1A=((A)=>{return A[A.RED=0.33]="RED",A[A.GREEN=0.6]="GREEN",A[A.BLUE=0.06]="BLUE",A[A.WHITE=0.329]="WHITE",A})(x1A||{}),f1A={};u1(f1A,{lab2rgb:()=>EaQ,lab2xyz:()=>l1A,rgb2hsl:()=>o3,rgb2lab:()=>zH,rgb2xyz:()=>b1A,xyz2lab:()=>c1A,xyz2rgb:()=>p1A});function oh(A){return A>0.04045?((A+0.055)/1.055)**2.4:A/12.92}function b1A(A,Q,B){return A=oh(A/255),Q=oh(Q/255),B=oh(B/255),{x:A*0.4124+Q*0.3576+B*0.1805,y:A*0.2126+Q*0.7152+B*0.0722,z:A*0.0193+Q*0.1192+B*0.9505}}var m1A={};u1(m1A,{degrees2radians:()=>E7,inRange0to255:()=>I8,inRange0to255Rounded:()=>H5,intInRange:()=>XaQ,max3:()=>u1A,min3:()=>d1A,stableSort:()=>Bx});function E7(A){return A*(Math.PI/180)}function u1A(A,Q,B){let Y=A;if(YQ)Y=Q;if(Y>B)Y=B;return Y}function XaQ(A,Q,B){if(A>B)A=B;if(A255)A=255;else if(A<0)A=0;return A}function I8(A){if(A>255)A=255;else if(A<0)A=0;return A}function Bx(A,Q){let B=typeof A[0],Y;if(B==="number"||B==="string"){let J=Object.create(null);for(let C=0,X=A.length;CQ(C,X)||J[C]-J[X])}else{let J=A.slice(0);Y=A.sort((C,X)=>Q(C,X)||J.indexOf(C)-J.indexOf(X))}return Y}function o3(A,Q,B){let Y=d1A(A,Q,B),J=u1A(A,Q,B),C=J-Y,X=(Y+J)/510,G=0;if(X>0&&X<1)G=C/(X<0.5?J+Y:510-J-Y);let W=0;if(C>0){if(J===A)W=(Q-B)/C;else if(J===Q)W=2+(B-A)/C;else W=4+(A-Q)/C;if(W*=60,W<0)W+=360}return{h:W,s:G,l:X}}var GaQ=0.95047,WaQ=1,FaQ=1.08883;function th(A){return A>0.008856?A**0.3333333333333333:7.787*A+0.13793103448275862}function c1A(A,Q,B){if(A=th(A/GaQ),Q=th(Q/WaQ),B=th(B/FaQ),116*Q-16<0)throw Error("xxx");return{L:Math.max(0,116*Q-16),a:500*(A-Q),b:200*(Q-B)}}function zH(A,Q,B){let Y=b1A(A,Q,B);return c1A(Y.x,Y.y,Y.z)}var ZaQ=0.95047,$aQ=1,UaQ=1.08883;function eh(A){return A>0.206893034?A**3:(A-0.13793103448275862)/7.787}function l1A(A,Q,B){let Y=(A+16)/116,J=Q/500+Y,C=Y-B/200;return{x:ZaQ*eh(J),y:$aQ*eh(Y),z:UaQ*eh(C)}}function Ax(A){return A>0.0031308?1.055*A**0.4166666666666667-0.055:12.92*A}function p1A(A,Q,B){let Y=Ax(A*3.2406+Q*-1.5372+B*-0.4986),J=Ax(A*-0.9689+Q*1.8758+B*0.0415),C=Ax(A*0.0557+Q*-0.204+B*1.057);return{r:H5(Y*255),g:H5(J*255),b:H5(C*255)}}function EaQ(A,Q,B){let Y=l1A(A,Q,B);return p1A(Y.x,Y.y,Y.z)}var i1A={};u1(i1A,{AbstractDistanceCalculator:()=>nF,AbstractEuclidean:()=>AR,AbstractManhattan:()=>QR,CIE94GraphicArts:()=>r1A,CIE94Textiles:()=>s1A,CIEDE2000:()=>kC,CMetric:()=>a1A,Euclidean:()=>o1A,EuclideanBT709:()=>t1A,EuclideanBT709NoAlpha:()=>e1A,Manhattan:()=>AXA,ManhattanBT709:()=>BXA,ManhattanNommyde:()=>QXA,PNGQuant:()=>YXA});var nF=class{constructor(){FA(this,"_maxDistance"),FA(this,"_whitePoint"),this._setDefaults(),this.setWhitePoint(255,255,255,255)}setWhitePoint(A,Q,B,Y){this._whitePoint={r:A>0?255/A:0,g:Q>0?255/Q:0,b:B>0?255/B:0,a:Y>0?255/Y:0},this._maxDistance=this.calculateRaw(A,Q,B,Y,0,0,0,0)}calculateNormalized(A,Q){return this.calculateRaw(A.r,A.g,A.b,A.a,Q.r,Q.g,Q.b,Q.a)/this._maxDistance}},n1A=class extends nF{calculateRaw(A,Q,B,Y,J,C,X,G){let W=zH(I8(A*this._whitePoint.r),I8(Q*this._whitePoint.g),I8(B*this._whitePoint.b)),F=zH(I8(J*this._whitePoint.r),I8(C*this._whitePoint.g),I8(X*this._whitePoint.b)),Z=W.L-F.L,U=W.a-F.a,$=W.b-F.b,E=Math.sqrt(W.a*W.a+W.b*W.b),K=Math.sqrt(F.a*F.a+F.b*F.b),I=E-K,V=U*U+$*$-I*I;V=V<0?0:Math.sqrt(V);let H=(G-Y)*this._whitePoint.a*this._kA;return Math.sqrt((Z/this._Kl)**2+(I/(1+this._K1*E))**2+(V/(1+this._K2*E))**2+H**2)}},s1A=class extends n1A{_setDefaults(){this._Kl=2,this._K1=0.048,this._K2=0.014,this._kA=0.049019607843137254}},r1A=class extends n1A{_setDefaults(){this._Kl=1,this._K1=0.045,this._K2=0.015,this._kA=0.09803921568627451}},R0=class extends nF{_setDefaults(){}static _calculatehp(A,Q){let B=Math.atan2(A,Q);if(B>=0)return B;return B+R0._deg360InRad}static _calculateRT(A,Q){let B=Q**7,Y=2*Math.sqrt(B/(B+R0._pow25to7)),J=R0._deg30InRad*Math.exp(-(((A-R0._deg275InRad)/R0._deg25InRad)**2));return-Math.sin(2*J)*Y}static _calculateT(A){return 1-0.17*Math.cos(A-R0._deg30InRad)+0.24*Math.cos(A*2)+0.32*Math.cos(A*3+R0._deg6InRad)-0.2*Math.cos(A*4-R0._deg63InRad)}static _calculate_ahp(A,Q,B,Y){let J=B+Y;if(A===0)return J;if(Q<=R0._deg180InRad)return J/2;if(J>8)+4*Z*Z+((767-W)*U*U>>8),E=(G-Y)*this._whitePoint.a;return Math.sqrt($+E*E)}_setDefaults(){}},AR=class extends nF{calculateRaw(A,Q,B,Y,J,C,X,G){let W=J-A,F=C-Q,Z=X-B,U=G-Y;return Math.sqrt(this._kR*W*W+this._kG*F*F+this._kB*Z*Z+this._kA*U*U)}},o1A=class extends AR{_setDefaults(){this._kR=1,this._kG=1,this._kB=1,this._kA=1}},t1A=class extends AR{_setDefaults(){this._kR=0.2126,this._kG=0.7152,this._kB=0.0722,this._kA=1}},e1A=class extends AR{_setDefaults(){this._kR=0.2126,this._kG=0.7152,this._kB=0.0722,this._kA=0}},QR=class extends nF{calculateRaw(A,Q,B,Y,J,C,X,G){let W=J-A,F=C-Q,Z=X-B,U=G-Y;if(W<0)W=0-W;if(F<0)F=0-F;if(Z<0)Z=0-Z;if(U<0)U=0-U;return this._kR*W+this._kG*F+this._kB*Z+this._kA*U}},AXA=class extends QR{_setDefaults(){this._kR=1,this._kG=1,this._kB=1,this._kA=1}},QXA=class extends QR{_setDefaults(){this._kR=0.4984,this._kG=0.8625,this._kB=0.2979,this._kA=1}},BXA=class extends QR{_setDefaults(){this._kR=0.2126,this._kG=0.7152,this._kB=0.0722,this._kA=1}},YXA=class extends nF{calculateRaw(A,Q,B,Y,J,C,X,G){let W=(G-Y)*this._whitePoint.a;return this._colordifferenceCh(A*this._whitePoint.r,J*this._whitePoint.r,W)+this._colordifferenceCh(Q*this._whitePoint.g,C*this._whitePoint.g,W)+this._colordifferenceCh(B*this._whitePoint.b,X*this._whitePoint.b,W)}_colordifferenceCh(A,Q,B){let Y=A-Q,J=Y+B;return Y*Y+J*J}_setDefaults(){}},JXA={};u1(JXA,{AbstractPaletteQuantizer:()=>RH,ColorHistogram:()=>jH,NeuQuant:()=>_0,NeuQuantFloat:()=>v0,RGBQuant:()=>WXA,WuColorCube:()=>FXA,WuQuant:()=>HU});var RH=class{quantizeSync(){for(let A of this.quantize())if(A.palette)return A.palette;throw Error("unreachable")}},H8=class{constructor(){FA(this,"r"),FA(this,"g"),FA(this,"b"),FA(this,"a"),FA(this,"uint32"),FA(this,"rgba"),this.uint32=4294967295,this.r=this.g=this.b=this.a=0,this.rgba=[,,,,],this.rgba[0]=0,this.rgba[1]=0,this.rgba[2]=0,this.rgba[3]=0}static createByQuadruplet(A){let Q=new H8;return Q.r=A[0]|0,Q.g=A[1]|0,Q.b=A[2]|0,Q.a=A[3]|0,Q._loadUINT32(),Q._loadQuadruplet(),Q}static createByRGBA(A,Q,B,Y){let J=new H8;return J.r=A|0,J.g=Q|0,J.b=B|0,J.a=Y|0,J._loadUINT32(),J._loadQuadruplet(),J}static createByUint32(A){let Q=new H8;return Q.uint32=A>>>0,Q._loadRGBA(),Q._loadQuadruplet(),Q}from(A){this.r=A.r,this.g=A.g,this.b=A.b,this.a=A.a,this.uint32=A.uint32,this.rgba[0]=A.r,this.rgba[1]=A.g,this.rgba[2]=A.b,this.rgba[3]=A.a}getLuminosity(A){let Q=this.r,B=this.g,Y=this.b;if(A)Q=Math.min(255,255-this.a+this.a*Q/255),B=Math.min(255,255-this.a+this.a*B/255),Y=Math.min(255,255-this.a+this.a*Y/255);return Q*0.2126+B*0.7152+Y*0.0722}_loadUINT32(){this.uint32=(this.a<<24|this.b<<16|this.g<<8|this.r)>>>0}_loadRGBA(){this.r=this.uint32&255,this.g=this.uint32>>>8&255,this.b=this.uint32>>>16&255,this.a=this.uint32>>>24&255}_loadQuadruplet(){this.rgba[0]=this.r,this.rgba[1]=this.g,this.rgba[2]=this.b,this.rgba[3]=this.a}},O6=class{constructor(){FA(this,"_pointArray"),FA(this,"_width"),FA(this,"_height"),this._width=0,this._height=0,this._pointArray=[]}getWidth(){return this._width}getHeight(){return this._height}setWidth(A){this._width=A}setHeight(A){this._height=A}getPointArray(){return this._pointArray}clone(){let A=new O6;A._width=this._width,A._height=this._height;for(let Q=0,B=this._pointArray.length;Q=X&&A=0;Q--)if(A.uint32===this._pointArray[Q].uint32)return!0;return!1}getNearestColor(A,Q){return this._pointArray[this._getNearestIndex(A,Q)|0]}getPointContainer(){return this._pointContainer}_nearestPointFromCache(A){return typeof this._i32idx[A]==="number"?this._i32idx[A]:-1}_getNearestIndex(A,Q){let B=this._nearestPointFromCache(""+Q.uint32);if(B>=0)return B;let Y=Number.MAX_VALUE;B=0;for(let J=0,C=this._pointArray.length;J{let B=o3(A.r,A.g,A.b),Y=o3(Q.r,Q.g,Q.b),J=A.r===A.g&&A.g===A.b?0:1+Qx(B.h,T1A),X=(Q.r===Q.g&&Q.g===Q.b?0:1+Qx(Y.h,T1A))-J;if(X)return-X;let G=A.getLuminosity(!0),W=Q.getLuminosity(!0);if(W-G!==0)return W-G;let F=(Y.s*100|0)-(B.s*100|0);if(F)return-F;return 0})}},CXA={};u1(CXA,{HueStatistics:()=>XXA,Palette:()=>wH,Point:()=>H8,PointContainer:()=>O6,ProgressTracker:()=>P6,arithmetic:()=>m1A});var KaQ=class{constructor(){FA(this,"num",0),FA(this,"cols",[])}},XXA=class{constructor(A,Q){FA(this,"_numGroups"),FA(this,"_minCols"),FA(this,"_stats"),FA(this,"_groupsFull"),this._numGroups=A,this._minCols=Q,this._stats=[];for(let B=0;B<=A;B++)this._stats[B]=new KaQ;this._groupsFull=0}check(A){if(this._groupsFull===this._numGroups+1)this.check=()=>{};let Q=A&255,B=A>>>8&255,Y=A>>>16&255,J=Q===B&&B===Y?0:1+Qx(o3(Q,B,Y).h,this._numGroups),C=this._stats[J],X=this._minCols;if(C.num++,C.num>X)return;if(C.num===X)this._groupsFull++;if(C.num<=X)this._stats[J].cols.push(A)}injectIntoDictionary(A){for(let Q=0;Q<=this._numGroups;Q++)if(this._stats[Q].num<=this._minCols)this._stats[Q].cols.forEach((B)=>{if(!A[B])A[B]=1;else A[B]++})}injectIntoArray(A){for(let Q=0;Q<=this._numGroups;Q++)if(this._stats[Q].num<=this._minCols)this._stats[Q].cols.forEach((B)=>{if(A.indexOf(B)===-1)A.push(B)})}},GXA=class{constructor(A,Q){FA(this,"progress"),FA(this,"_step"),FA(this,"_range"),FA(this,"_last"),FA(this,"_progressRange"),this._range=A,this._progressRange=Q,this._step=Math.max(1,this._range/(GXA.steps+1)|0),this._last=-this._step,this.progress=0}shouldNotify(A){if(A-this._last>=this._step)return this._last=A,this.progress=Math.min(this._progressRange*this._last/this._range,this._progressRange),!0;return!1}},P6=GXA;FA(P6,"steps",100);var Q9=3,VaQ=class{constructor(A){FA(this,"r"),FA(this,"g"),FA(this,"b"),FA(this,"a"),this.r=this.g=this.b=this.a=A}toPoint(){return H8.createByRGBA(this.r>>Q9,this.g>>Q9,this.b>>Q9,this.a>>Q9)}subtract(A,Q,B,Y){this.r-=A|0,this.g-=Q|0,this.b-=B|0,this.a-=Y|0}},BB=class extends RH{constructor(A,Q=256){super();FA(this,"_pointArray"),FA(this,"_networkSize"),FA(this,"_network"),FA(this,"_sampleFactor"),FA(this,"_radPower"),FA(this,"_freq"),FA(this,"_bias"),FA(this,"_distance"),this._distance=A,this._pointArray=[],this._sampleFactor=1,this._networkSize=Q,this._distance.setWhitePoint(255<>3)*BB._radiusBias,G=X>>BB._radiusBiasShift;if(G<=1)G=0;for(let Z=0;Z>>0;let W;if(Q=Q)U-=Q;if(Z++,J===0)J=1;if(Z%J===0){if(C-=C/B|0,X-=X/BB._radiusDecrease|0,G=X>>BB._radiusBiasShift,G<=1)G=0;for(let D=0;D>>0}}}_buildPalette(){let A=new wH;return this._network.forEach((Q)=>{A.add(Q.toPoint())}),A.sort(),A}_alterNeighbour(A,Q,B,Y,J,C){let X=Q-A;if(X<-1)X=-1;let G=Q+A;if(G>this._networkSize)G=this._networkSize;let W=Q+1,F=Q-1,Z=1;while(WX){let U=this._radPower[Z++]/BB._alphaRadBias;if(WX){let $=this._network[F--];$.subtract(U*($.r-J),U*($.g-Y),U*($.b-B),U*($.a-C))}}}_alterSingle(A,Q,B,Y,J,C){A/=BB._initAlpha;let X=this._network[Q];X.subtract(A*(X.r-J),A*(X.g-Y),A*(X.b-B),A*(X.a-C))}_contest(A,Q,B,Y){let J=1020<>BB._initialBiasShift-Q9);if($>BB._betaShift;this._freq[F]-=E,this._bias[F]+=E<>BB._betaShift);FA(_0,"_betaGamma",BB._initialBias<>B9,this.g>>B9,this.b>>B9,this.a>>B9)}subtract(A,Q,B,Y){this.r-=A,this.g-=Q,this.b-=B,this.a-=Y}},YB=class extends RH{constructor(A,Q=256){super();FA(this,"_pointArray"),FA(this,"_networkSize"),FA(this,"_network"),FA(this,"_sampleFactor"),FA(this,"_radPower"),FA(this,"_freq"),FA(this,"_bias"),FA(this,"_distance"),this._distance=A,this._pointArray=[],this._sampleFactor=1,this._networkSize=Q,this._distance.setWhitePoint(255<>3)*YB._radiusBias,G=X>>YB._radiusBiasShift;if(G<=1)G=0;for(let Z=0;Z=Q)U-=Q;if(Z++,J===0)J=1;if(Z%J===0){if(C-=C/B,X-=X/YB._radiusDecrease,G=X>>YB._radiusBiasShift,G<=1)G=0;for(let D=0;D{A.add(Q.toPoint())}),A.sort(),A}_alterNeighbour(A,Q,B,Y,J,C){let X=Q-A;if(X<-1)X=-1;let G=Q+A;if(G>this._networkSize)G=this._networkSize;let W=Q+1,F=Q-1,Z=1;while(WX){let U=this._radPower[Z++]/YB._alphaRadBias;if(WX){let $=this._network[F--];$.subtract(U*($.r-J),U*($.g-Y),U*($.b-B),U*($.a-C))}}}_alterSingle(A,Q,B,Y,J,C){A/=YB._initAlpha;let X=this._network[Q];X.subtract(A*(X.r-J),A*(X.g-Y),A*(X.b-B),A*(X.a-C))}_contest(A,Q,B,Y){let J=1020<>YB._initialBiasShift-B9);if($>YB._betaShift;this._freq[F]-=E,this._bias[F]+=E<>YB._betaShift);FA(v0,"_betaGamma",YB._initialBias<this._histogram[Y]-this._histogram[B]);if(A.length===0)return[];let Q;switch(this._method){case 1:let B=Math.min(A.length,this._initColors),Y=A[B-1],J=this._histogram[Y];Q=A.slice(0,B);let C=B,X=A.length;while(C+B)}_colorStats1D(A){let Q=this._histogram,B=A.getPointArray(),Y=B.length;for(let J=0;J{let Z=Math.round(F.w*F.h/X)*MH._boxPixels;if(Z<2)Z=2;let U={};this._iterateBox(F,Q,($)=>{let E=Y[$].uint32;if(this._hueStats.check(E),E in W)W[E]++;else if(E in U){if(++U[E]>=Z)W[E]=U[E]}else U[E]=1})}),this._hueStats.injectIntoDictionary(W)}_iterateBox(A,Q,B){let Y=A,J=Y.y*Q+Y.x,C=(Y.y+Y.h-1)*Q+(Y.x+Y.w-1),X=Q-Y.w+1,G=0,W=J;do B.call(this,W),W+=++G%Y.w===0?X:1;while(W<=C)}_makeBoxes(A,Q,B,Y){let J=A%B,C=Q%Y,X=A-J,G=Q-C,W=[];for(let F=0;Fthis._colors){C.length=0;for(let Z=0;Zthis._colors*3?this._initialDistance:this._distanceIncrement}if(X$.distance-U.distance);let Z=0;while(X=0;Z--)if(Y[Z]===0){if(Z!==F-1)B[Z]=B[F-1];--F}B.length=F,Q.sort(),yield{palette:Q,progress:100}}};function UU(A){let Q=[];for(let B=0;B0){let B=this._sums[Q],Y=this._reds[Q]/B,J=this._greens[Q]/B,C=this._blues[Q]/B,X=this._alphas[Q]/B,G=H8.createByRGBA(Y|0,J|0,C|0,X|0);A.add(G)}A.sort(),yield{palette:A,progress:100}}*_preparePalette(){yield*this._calculateMoments();let A=0,Q=UU(this._colors);for(let X=1;X1?this._calculateVariance(this._cubes[A]):0,Q[X]=this._cubes[X].volume>1?this._calculateVariance(this._cubes[X]):0;else Q[A]=0,X--;A=0;let G=Q[0];for(let W=1;W<=X;++W)if(Q[W]>G)G=Q[W],A=W;if(G<=0){this._colors=X+1;break}}let B=[],Y=[],J=[],C=[];for(let X=0;X0)B[X]=OQ._volume(this._cubes[X],this._momentsRed)/G|0,Y[X]=OQ._volume(this._cubes[X],this._momentsGreen)/G|0,J[X]=OQ._volume(this._cubes[X],this._momentsBlue)/G|0,C[X]=OQ._volume(this._cubes[X],this._momentsAlpha)/G|0;else B[X]=0,Y[X]=0,J[X]=0,C[X]=0}this._reds=UU(this._colors+1),this._greens=UU(this._colors+1),this._blues=UU(this._colors+1),this._alphas=UU(this._colors+1),this._sums=UU(this._colors+1);for(let X=0,G=this._pixels.length;X>Q)+1,Y=(A.g>>Q)+1,J=(A.b>>Q)+1,C=(A.a>>Q)+1;this._weights[C][B][Y][J]++,this._momentsRed[C][B][Y][J]+=A.r,this._momentsGreen[C][B][Y][J]+=A.g,this._momentsBlue[C][B][Y][J]+=A.b,this._momentsAlpha[C][B][Y][J]+=A.a,this._moments[C][B][Y][J]+=this._table[A.r]+this._table[A.g]+this._table[A.b]+this._table[A.a]}*_calculateMoments(){let A=[],Q=[],B=[],Y=[],J=[],C=[],X=KU(this._sideSize,this._sideSize,this._sideSize),G=KU(this._sideSize,this._sideSize,this._sideSize),W=KU(this._sideSize,this._sideSize,this._sideSize),F=KU(this._sideSize,this._sideSize,this._sideSize),Z=KU(this._sideSize,this._sideSize,this._sideSize),U=KU(this._sideSize,this._sideSize,this._sideSize),$=0,E=new P6(this._alphaMaxSideIndex*this._maxSideIndex,99);for(let K=1;K<=this._alphaMaxSideIndex;++K){VU(X,this._sideSize,this._sideSize,this._sideSize,0),VU(G,this._sideSize,this._sideSize,this._sideSize,0),VU(W,this._sideSize,this._sideSize,this._sideSize,0),VU(F,this._sideSize,this._sideSize,this._sideSize,0),VU(Z,this._sideSize,this._sideSize,this._sideSize,0),VU(U,this._sideSize,this._sideSize,this._sideSize,0);for(let I=1;I<=this._maxSideIndex;++I,++$){if(E.shouldNotify($))yield{progress:E.progress};IU(A,this._sideSize,0),IU(Q,this._sideSize,0),IU(B,this._sideSize,0),IU(Y,this._sideSize,0),IU(J,this._sideSize,0),IU(C,this._sideSize,0);for(let V=1;V<=this._maxSideIndex;++V){let H=0,D=0,L=0,z=0,M=0,N=0;for(let q=1;q<=this._maxSideIndex;++q)H+=this._weights[K][I][V][q],D+=this._momentsRed[K][I][V][q],L+=this._momentsGreen[K][I][V][q],z+=this._momentsBlue[K][I][V][q],M+=this._momentsAlpha[K][I][V][q],N+=this._moments[K][I][V][q],A[q]+=H,Q[q]+=D,B[q]+=L,Y[q]+=z,J[q]+=M,C[q]+=N,X[I][V][q]=X[I-1][V][q]+A[q],G[I][V][q]=G[I-1][V][q]+Q[q],W[I][V][q]=W[I-1][V][q]+B[q],F[I][V][q]=F[I-1][V][q]+Y[q],Z[I][V][q]=Z[I-1][V][q]+J[q],U[I][V][q]=U[I-1][V][q]+C[q],this._weights[K][I][V][q]=this._weights[K-1][I][V][q]+X[I][V][q],this._momentsRed[K][I][V][q]=this._momentsRed[K-1][I][V][q]+G[I][V][q],this._momentsGreen[K][I][V][q]=this._momentsGreen[K-1][I][V][q]+W[I][V][q],this._momentsBlue[K][I][V][q]=this._momentsBlue[K-1][I][V][q]+F[I][V][q],this._momentsAlpha[K][I][V][q]=this._momentsAlpha[K-1][I][V][q]+Z[I][V][q],this._moments[K][I][V][q]=this._moments[K-1][I][V][q]+U[I][V][q]}}}}static _volumeFloat(A,Q){return Q[A.alphaMaximum][A.redMaximum][A.greenMaximum][A.blueMaximum]-Q[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMaximum]-Q[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMaximum]+Q[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMaximum]-Q[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMaximum]+Q[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMaximum]+Q[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMaximum]-Q[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(Q[A.alphaMaximum][A.redMaximum][A.greenMaximum][A.blueMinimum]-Q[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMinimum]-Q[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMinimum]+Q[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]-Q[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMinimum]+Q[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]+Q[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]-Q[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum])}static _volume(A,Q){return OQ._volumeFloat(A,Q)|0}static _top(A,Q,B,Y){let J;switch(Q){case OQ._alpha:J=Y[B][A.redMaximum][A.greenMaximum][A.blueMaximum]-Y[B][A.redMaximum][A.greenMinimum][A.blueMaximum]-Y[B][A.redMinimum][A.greenMaximum][A.blueMaximum]+Y[B][A.redMinimum][A.greenMinimum][A.blueMaximum]-(Y[B][A.redMaximum][A.greenMaximum][A.blueMinimum]-Y[B][A.redMaximum][A.greenMinimum][A.blueMinimum]-Y[B][A.redMinimum][A.greenMaximum][A.blueMinimum]+Y[B][A.redMinimum][A.greenMinimum][A.blueMinimum]);break;case OQ._red:J=Y[A.alphaMaximum][B][A.greenMaximum][A.blueMaximum]-Y[A.alphaMaximum][B][A.greenMinimum][A.blueMaximum]-Y[A.alphaMinimum][B][A.greenMaximum][A.blueMaximum]+Y[A.alphaMinimum][B][A.greenMinimum][A.blueMaximum]-(Y[A.alphaMaximum][B][A.greenMaximum][A.blueMinimum]-Y[A.alphaMaximum][B][A.greenMinimum][A.blueMinimum]-Y[A.alphaMinimum][B][A.greenMaximum][A.blueMinimum]+Y[A.alphaMinimum][B][A.greenMinimum][A.blueMinimum]);break;case OQ._green:J=Y[A.alphaMaximum][A.redMaximum][B][A.blueMaximum]-Y[A.alphaMaximum][A.redMinimum][B][A.blueMaximum]-Y[A.alphaMinimum][A.redMaximum][B][A.blueMaximum]+Y[A.alphaMinimum][A.redMinimum][B][A.blueMaximum]-(Y[A.alphaMaximum][A.redMaximum][B][A.blueMinimum]-Y[A.alphaMaximum][A.redMinimum][B][A.blueMinimum]-Y[A.alphaMinimum][A.redMaximum][B][A.blueMinimum]+Y[A.alphaMinimum][A.redMinimum][B][A.blueMinimum]);break;case OQ._blue:J=Y[A.alphaMaximum][A.redMaximum][A.greenMaximum][B]-Y[A.alphaMaximum][A.redMaximum][A.greenMinimum][B]-Y[A.alphaMaximum][A.redMinimum][A.greenMaximum][B]+Y[A.alphaMaximum][A.redMinimum][A.greenMinimum][B]-(Y[A.alphaMinimum][A.redMaximum][A.greenMaximum][B]-Y[A.alphaMinimum][A.redMaximum][A.greenMinimum][B]-Y[A.alphaMinimum][A.redMinimum][A.greenMaximum][B]+Y[A.alphaMinimum][A.redMinimum][A.greenMinimum][B]);break;default:throw Error("impossible")}return J|0}static _bottom(A,Q,B){switch(Q){case OQ._alpha:return-B[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMaximum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMaximum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMaximum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(-B[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMinimum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);case OQ._red:return-B[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMaximum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMaximum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMaximum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(-B[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMinimum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);case OQ._green:return-B[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMaximum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMaximum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMaximum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(-B[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);case OQ._blue:return-B[A.alphaMaximum][A.redMaximum][A.greenMaximum][A.blueMinimum]+B[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]-(-B[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMinimum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);default:return 0}}_calculateVariance(A){let Q=OQ._volume(A,this._momentsRed),B=OQ._volume(A,this._momentsGreen),Y=OQ._volume(A,this._momentsBlue),J=OQ._volume(A,this._momentsAlpha),C=OQ._volumeFloat(A,this._moments),X=OQ._volume(A,this._weights),G=Q*Q+B*B+Y*Y+J*J;return C-G/X}_maximize(A,Q,B,Y,J,C,X,G,W){let F=OQ._bottom(A,Q,this._momentsRed)|0,Z=OQ._bottom(A,Q,this._momentsGreen)|0,U=OQ._bottom(A,Q,this._momentsBlue)|0,$=OQ._bottom(A,Q,this._momentsAlpha)|0,E=OQ._bottom(A,Q,this._weights)|0,K=0,I=-1;for(let V=B;VK)K=q,I=V}}}return{max:K,position:I}}_cut(A,Q){let B,Y=OQ._volume(A,this._momentsRed),J=OQ._volume(A,this._momentsGreen),C=OQ._volume(A,this._momentsBlue),X=OQ._volume(A,this._momentsAlpha),G=OQ._volume(A,this._weights),W=this._maximize(A,OQ._red,A.redMinimum+1,A.redMaximum,Y,J,C,X,G),F=this._maximize(A,OQ._green,A.greenMinimum+1,A.greenMaximum,Y,J,C,X,G),Z=this._maximize(A,OQ._blue,A.blueMinimum+1,A.blueMaximum,Y,J,C,X,G),U=this._maximize(A,OQ._alpha,A.alphaMinimum+1,A.alphaMaximum,Y,J,C,X,G);if(U.max>=W.max&&U.max>=F.max&&U.max>=Z.max){if(B=OQ._alpha,U.position<0)return!1}else if(W.max>=U.max&&W.max>=F.max&&W.max>=Z.max)B=OQ._red;else if(F.max>=U.max&&F.max>=W.max&&F.max>=Z.max)B=OQ._green;else B=OQ._blue;switch(Q.redMaximum=A.redMaximum,Q.greenMaximum=A.greenMaximum,Q.blueMaximum=A.blueMaximum,Q.alphaMaximum=A.alphaMaximum,B){case OQ._red:Q.redMinimum=A.redMaximum=W.position,Q.greenMinimum=A.greenMinimum,Q.blueMinimum=A.blueMinimum,Q.alphaMinimum=A.alphaMinimum;break;case OQ._green:Q.greenMinimum=A.greenMaximum=F.position,Q.redMinimum=A.redMinimum,Q.blueMinimum=A.blueMinimum,Q.alphaMinimum=A.alphaMinimum;break;case OQ._blue:Q.blueMinimum=A.blueMaximum=Z.position,Q.redMinimum=A.redMinimum,Q.greenMinimum=A.greenMinimum,Q.alphaMinimum=A.alphaMinimum;break;case OQ._alpha:Q.alphaMinimum=A.alphaMaximum=U.position,Q.blueMinimum=A.blueMinimum,Q.redMinimum=A.redMinimum,Q.greenMinimum=A.greenMinimum;break}return A.volume=(A.redMaximum-A.redMinimum)*(A.greenMaximum-A.greenMinimum)*(A.blueMaximum-A.blueMinimum)*(A.alphaMaximum-A.alphaMinimum),Q.volume=(Q.redMaximum-Q.redMinimum)*(Q.greenMaximum-Q.greenMinimum)*(Q.blueMaximum-Q.blueMinimum)*(Q.alphaMaximum-Q.alphaMinimum),!0}_initialize(A){this._colors=A,this._cubes=[];for(let Q=0;QBR,ErrorDiffusionArray:()=>m1,ErrorDiffusionArrayKernel:()=>UXA,ErrorDiffusionRiemersma:()=>Yx,NearestColor:()=>$XA});var BR=class{quantizeSync(A,Q){for(let B of this.quantize(A,Q))if(B.pointContainer)return B.pointContainer;throw Error("unreachable")}},$XA=class extends BR{constructor(A){super();FA(this,"_distance"),this._distance=A}*quantize(A,Q){let B=A.getPointArray(),Y=A.getWidth(),J=A.getHeight(),C=new P6(J,99);for(let X=0;X{return A[A.FloydSteinberg=0]="FloydSteinberg",A[A.FalseFloydSteinberg=1]="FalseFloydSteinberg",A[A.Stucki=2]="Stucki",A[A.Atkinson=3]="Atkinson",A[A.Jarvis=4]="Jarvis",A[A.Burkes=5]="Burkes",A[A.Sierra=6]="Sierra",A[A.TwoSierra=7]="TwoSierra",A[A.SierraLite=8]="SierraLite",A})(UXA||{}),m1=class extends BR{constructor(A,Q,B=!0,Y=0,J=!1){super();FA(this,"_minColorDistance"),FA(this,"_serpentine"),FA(this,"_kernel"),FA(this,"_calculateErrorLikeGIMP"),FA(this,"_distance"),this._setKernel(Q),this._distance=A,this._minColorDistance=Y,this._serpentine=B,this._calculateErrorLikeGIMP=J}*quantize(A,Q){let B=A.getPointArray(),Y=new H8,J=A.getWidth(),C=A.getHeight(),X=[],G=1,W=1;for(let Z of this._kernel){let U=Z[2]+1;if(W=0&&k+I=0&&T+ZQ)A.length=Q;let B=A.length;for(let Y=0;Y=0&&A.x=0&&A.y{let F=B[G+W*Y],{r:Z,g:U,b:$,a:E}=F;for(let H=0;HqaQ});var NaQ=0.01,LaQ=0.03;function qaQ(A,Q){if(A.getHeight()!==Q.getHeight()||A.getWidth()!==Q.getWidth())throw Error("Images have different sizes!");let Y=255,J=(NaQ*Y)**2,C=(LaQ*Y)**2,X=0,G=0;return MaQ(A,Q,(W,F,Z,U)=>{let $=0,E=0,K=0;for(let L=0;Lprocess.nextTick(A):(A)=>setTimeout(A,0);function zaQ(A,{colorDistanceFormula:Q,paletteQuantization:B,colors:Y}={}){let J=YR(Q),C=VXA(J,B,Y);return A.forEach((X)=>C.sample(X)),C.quantizeSync()}async function RaQ(A,{colorDistanceFormula:Q,paletteQuantization:B,colors:Y,onProgress:J}={}){return new Promise((C,X)=>{let G=YR(Q),W=VXA(G,B,Y);A.forEach(($)=>W.sample($));let F,Z=W.quantize(),U=()=>{try{let $=Z.next();if($.done)C(F);else{if($.value.palette)F=$.value.palette;if(J)J($.value.progress);t3(U)}}catch($){X($)}};t3(U)})}function waQ(A,Q,{colorDistanceFormula:B,imageQuantization:Y}={}){let J=YR(B);return KXA(J,Y).quantizeSync(A,Q)}async function jaQ(A,Q,{colorDistanceFormula:B,imageQuantization:Y,onProgress:J}={}){return new Promise((C,X)=>{let G=YR(B),W=KXA(G,Y),F,Z=W.quantize(A,Q),U=()=>{try{let $=Z.next();if($.done)C(F);else{if($.value.pointContainer)F=$.value.pointContainer;if(J)J($.value.progress);t3(U)}}catch($){X($)}};t3(U)})}function YR(A="euclidean-bt709"){switch(A){case"cie94-graphic-arts":return new r1A;case"cie94-textiles":return new s1A;case"ciede2000":return new kC;case"color-metric":return new a1A;case"euclidean":return new o1A;case"euclidean-bt709":return new t1A;case"euclidean-bt709-noalpha":return new e1A;case"manhattan":return new AXA;case"manhattan-bt709":return new BXA;case"manhattan-nommyde":return new QXA;case"pngquant":return new YXA;default:throw Error(`Unknown colorDistanceFormula ${A}`)}}function KXA(A,Q="floyd-steinberg"){switch(Q){case"nearest":return new $XA(A);case"riemersma":return new Yx(A);case"floyd-steinberg":return new m1(A,0);case"false-floyd-steinberg":return new m1(A,1);case"stucki":return new m1(A,2);case"atkinson":return new m1(A,3);case"jarvis":return new m1(A,4);case"burkes":return new m1(A,5);case"sierra":return new m1(A,6);case"two-sierra":return new m1(A,7);case"sierra-lite":return new m1(A,8);default:throw Error(`Unknown imageQuantization ${Q}`)}}function VXA(A,Q="wuquant",B=256){switch(Q){case"neuquant":return new _0(A,B);case"rgbquant":return new WXA(A,B);case"wuquant":return new HU(A,B);case"neuquant-float":return new v0(A,B);default:throw Error(`Unknown paletteQuantization ${Q}`)}}IXA.exports=CaQ(_1A)});var JR=R((OaQ)=>{var DXA=a3(),{GifError:q7Y}=qH();class K7 extends DXA{constructor(...A){super(...A);if(A[0]instanceof K7){let Q=A[0];this.xOffset=Q.xOffset,this.yOffset=Q.yOffset,this.disposalMethod=Q.disposalMethod,this.delayCentisecs=Q.delayCentisecs,this.interlaced=Q.interlaced}else{let Q=A[A.length-1],B={};if(typeof Q==="object"&&!(Q instanceof DXA))B=Q;this.xOffset=B.xOffset||0,this.yOffset=B.yOffset||0,this.disposalMethod=B.disposalMethod!==void 0?B.disposalMethod:K7.DisposeToBackgroundColor,this.delayCentisecs=B.delayCentisecs||8,this.interlaced=B.interlaced||!1}}getPalette(){let A=new Set,Q=this.bitmap.data,B=0,Y=!1;while(B>8&16777215;A.add(G)}B+=4}let J=Array(A.size),C=A.values();for(B=0;BG-W);let X=J.length;if(Y)++X;return{colors:J,usesTransparency:Y,indexCount:X}}}K7.DisposeToAnything=0;K7.DisposeNothing=1;K7.DisposeToBackgroundColor=2;K7.DisposeToPrevious=3;OaQ.GifFrame=K7});var Cx=R((haQ)=>{var NXA=u("fs"),DU=HXA(),TaQ=a3(),{GifFrame:SaQ}=JR(),{GifError:kaQ}=qH(),{GifCodec:_aQ}=Xx(),vaQ=[".jpg",".jpeg",".png",".bmp"],LXA=new _aQ;haQ.cloneFrames=function(A){let Q=[];return A.forEach((B)=>{Q.push(new SaQ(B))}),Q};haQ.getColorInfo=function(A,Q){let B=!1,Y=[];for(let W=0;W256)throw new kaQ(`Frame ${W} uses more than 256 color indexes`);Y.push(F)}if(Q===0)return{usesTransparency:B,palettes:Y};let J=new Set;Y.forEach((W)=>{W.colors.forEach((F)=>{J.add(F)})});let C=J.size;if(B)++C;if(Q&&C>Q)return{usesTransparency:B,palettes:Y};let X=Array(J.size),G=J.values();for(let W=0;WW-F),{colors:X,indexCount:C,usesTransparency:B,palettes:Y}};haQ.copyAsJimp=function(A,Q){return haQ.shareAsJimp(A,new TaQ(Q))};haQ.getMaxDimensions=function(A){let Q=0,B=0;return A.forEach((Y)=>{let J=Y.xOffset+Y.bitmap.width;if(J>Q)Q=J;let C=Y.yOffset+Y.bitmap.height;if(C>B)B=C}),{maxWidth:Q,maxHeight:B}};haQ.quantizeDekker=function(A,Q,B){Q=Q||256,Jx(A,"NeuQuantFloat",Q,0,B)};haQ.quantizeSorokin=function(A,Q,B,Y){Q=Q||256,B=B||"min-pop";let J;switch(B){case"min-pop":J=2;break;case"top-pop":J=1;break;default:throw Error(`Invalid quantizeSorokin histogram '${B}'`)}Jx(A,"RGBQuant",Q,J,Y)};haQ.quantizeWu=function(A,Q,B,Y){if(Q=Q||256,B=B||5,B<1||B>8)throw Error("Invalid quantization quality");Jx(A,"WuQuant",Q,B,Y)};haQ.read=function(A,Q){if(Q=Q||LXA,Buffer.isBuffer(A))return Q.decodeGif(A);return yaQ(A).then((B)=>{return Q.decodeGif(B)})};haQ.shareAsJimp=function(A,Q){let B=new A(Q.bitmap.width,Q.bitmap.height,0);return B.bitmap.data=Q.bitmap.data,B};haQ.write=function(A,Q,B,Y){Y=Y||LXA;let J=A.match(/\.[a-zA-Z]+$/);if(J!==null&&vaQ.includes(J[0].toLowerCase()))throw Error(`GIF '${A}' has an unexpected suffix`);return Y.encodeGif(Q,B).then((C)=>{return gaQ(A,C.buffer).then(()=>{return C})})};function Jx(A,Q,B,Y,J){let C=Array.isArray(A)?A:[A],X=["FloydSteinberg","FalseFloydSteinberg","Stucki","Atkinson","Jarvis","Burkes","Sierra","TwoSierra","SierraLite"];if(J){if(X.indexOf(J.ditherAlgorithm)<0)throw Error(`Invalid ditherAlgorithm '${J.ditherAlgorithm}'`);if(J.serpentine===void 0)J.serpentine=!0;if(J.minimumColorDistanceToDither===void 0)J.minimumColorDistanceToDither=0;if(J.calculateErrorLikeGIMP===void 0)J.calculateErrorLikeGIMP=!1}let G=new DU.distance.Euclidean,W=new DU.palette[Q](G,B,Y),F;if(J)F=new DU.image.ErrorDiffusionArray(G,DU.image.ErrorDiffusionArrayKernel[J.ditherAlgorithm],J.serpentine,J.minimumColorDistanceToDither,J.calculateErrorLikeGIMP);else F=new DU.image.NearestColor(G);let Z=[];C.forEach(($)=>{let E=$.bitmap.data,K=new ArrayBuffer(E.length),I=new Uint32Array(K);for(let H=0,D=0;H{NXA.readFile(A,(Y,J)=>{if(Y)return B(Y);return Q(J)})})}function gaQ(A,Q){return new Promise((B,Y)=>{NXA.writeFile(A,Q,(J)=>{if(J)return Y(J);return B()})})}});var Xx=R((AoQ)=>{var Gx=ah(),{Gif:V7,GifError:T6}=qH();function CR(){let A=Cx();return CR=function(){return A},A}var{GifFrame:naQ}=JR(),qXA=200,saQ=100;class RXA{constructor(A={}){if(this._transparentRGB=null,typeof A.transparentRGB==="number"&&A.transparentRGB!==0)this._transparentRGBA=A.transparentRGB*256;this._testInitialBufferSize=0}decodeGif(A){try{let Q;try{Q=new Gx.GifReader(A)}catch(C){throw new T6(C)}let B=Q.numFrames(),Y=[],J={width:Q.width,height:Q.height,loops:Q.loopCount()};J.usesTransparency=!1;for(let C=0;CY.width)for(let G=0;G0)return this._testInitialBufferSize;let B=qXA+768,Y=zXA(A);return Q.forEach((J)=>{B+=MXA(J,Y)}),B}_getSizeEstimateLocal(A,Q){if(this._testInitialBufferSize>0)return this._testInitialBufferSize;let B=qXA;for(let Y=0;YQ)Y=J-1;else if(A[J]Y)Y<<=1;Q.length=Y,Q.fill(0,B)}function MXA(A,Q){let B=A.bitmap.width*A.bitmap.height;return B=Math.ceil(B*Q/8),B+=Math.ceil(B/255),saQ+B+768}function eaQ(A,Q,B){let Y=B.colors,J=Y.length<=8?raQ:aaQ,C=Q.bitmap.data,X=new Buffer(C.length/4),G=Y.length,W=0,F=0;while(W>8&16777215;X[F]=J(Y,Z)}else X[F]=G;W+=4,++F}if(B.usesTransparency){if(G===256)throw new T6(`Frame ${A} already has 256 colorsand so can't use transparency`)}else G=null;return{buffer:X,transparentIndex:G}}function zXA(A){let Q=A.indexCount,B=0;--Q;while(Q)++B,Q>>=1;return B>0?B:1}function jXA(A,Q,B,Y,J){if(B.interlaced)throw new T6("writing interlaced GIFs is not supported");let C=eaQ(Q,B,Y),X={delay:B.delayCentisecs,disposal:B.disposalMethod,transparent:C.transparentIndex};if(J)wXA(Y),X.palette=Y.colors;try{let G=A.getOutputBuffer(),W=A.getOutputBufferPosition(),F,Z=!0;while(Z)if(F=A.addFrame(B.xOffset,B.yOffset,B.bitmap.width,B.bitmap.height,C.buffer,X),Z=!1,F>=G.length-1){let U=new Buffer(G.length*1.5);G.copy(U),A.setOutputBuffer(U),A.setOutputBufferPosition(W),G=U,Z=!0}return G}catch(G){throw new T6(G)}}});var PXA=R((w7Y,OXA)=>{var BoQ=a3(),{Gif:YoQ,GifError:JoQ}=qH(),{GifCodec:CoQ}=Xx(),{GifFrame:XoQ}=JR(),GoQ=Cx();OXA.exports={BitmapImage:BoQ,Gif:YoQ,GifCodec:CoQ,GifFrame:XoQ,GifUtil:GoQ,GifError:JoQ}});var _XA=R((O7Y,GR)=>{var kXA=kXA||function(A){return Buffer.from(A).toString("base64")};function WoQ(A){var Q=this,B=Math.round,Y=Math.floor,J=Array(64),C=Array(64),X=Array(64),G=Array(64),W,F,Z,U,$=Array(65535),E=Array(65535),K=Array(64),I=Array(64),V=[],H=0,D=7,L=Array(64),z=Array(64),M=Array(64),N=Array(256),q=Array(2048),w,P=[0,1,5,6,14,15,27,28,2,4,7,13,16,26,29,42,3,8,12,17,25,30,41,43,9,11,18,24,31,40,44,53,10,19,23,32,39,45,52,54,20,22,33,38,46,51,55,60,21,34,37,47,50,56,59,61,35,36,48,49,57,58,62,63],_=[0,0,1,5,1,1,1,1,1,1,0,0,0,0,0,0,0],j=[0,1,2,3,4,5,6,7,8,9,10,11],k=[0,0,2,1,3,3,2,4,3,5,5,4,4,0,0,1,125],T=[1,2,3,0,4,17,5,18,33,49,65,6,19,81,97,7,34,113,20,50,129,145,161,8,35,66,177,193,21,82,209,240,36,51,98,114,130,9,10,22,23,24,25,26,37,38,39,40,41,42,52,53,54,55,56,57,58,67,68,69,70,71,72,73,74,83,84,85,86,87,88,89,90,99,100,101,102,103,104,105,106,115,116,117,118,119,120,121,122,131,132,133,134,135,136,137,138,146,147,148,149,150,151,152,153,154,162,163,164,165,166,167,168,169,170,178,179,180,181,182,183,184,185,186,194,195,196,197,198,199,200,201,202,210,211,212,213,214,215,216,217,218,225,226,227,228,229,230,231,232,233,234,241,242,243,244,245,246,247,248,249,250],S=[0,0,3,1,1,1,1,1,1,1,1,1,0,0,0,0,0],v=[0,1,2,3,4,5,6,7,8,9,10,11],y=[0,0,2,1,2,4,4,3,4,7,5,4,4,0,1,2,119],h=[0,1,2,3,17,4,5,33,49,6,18,65,81,7,97,113,19,34,50,129,8,20,66,145,161,177,193,9,35,51,82,240,21,98,114,209,10,22,36,52,225,37,241,23,24,25,26,38,39,40,41,42,53,54,55,56,57,58,67,68,69,70,71,72,73,74,83,84,85,86,87,88,89,90,99,100,101,102,103,104,105,106,115,116,117,118,119,120,121,122,130,131,132,133,134,135,136,137,138,146,147,148,149,150,151,152,153,154,162,163,164,165,166,167,168,169,170,178,179,180,181,182,183,184,185,186,194,195,196,197,198,199,200,201,202,210,211,212,213,214,215,216,217,218,226,227,228,229,230,231,232,233,234,242,243,244,245,246,247,248,249,250];function g(XA){var PA=[16,11,10,16,24,40,51,61,12,12,14,19,26,58,60,55,14,13,16,24,40,57,69,56,14,17,22,29,51,87,80,62,18,22,37,56,68,109,103,77,24,35,55,64,81,104,113,92,49,64,78,87,103,121,120,101,72,92,95,98,112,100,103,99];for(var NA=0;NA<64;NA++){var TA=Y((PA[NA]*XA+50)/100);if(TA<1)TA=1;else if(TA>255)TA=255;J[P[NA]]=TA}var vA=[17,18,24,47,99,99,99,99,18,21,26,66,99,99,99,99,24,26,56,99,99,99,99,99,47,66,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99];for(var mA=0;mA<64;mA++){var ZQ=Y((vA[mA]*XA+50)/100);if(ZQ<1)ZQ=1;else if(ZQ>255)ZQ=255;C[P[mA]]=ZQ}var NQ=[1,1.387039845,1.306562965,1.175875602,1,0.785694958,0.5411961,0.275899379],CQ=0;for(var SQ=0;SQ<8;SQ++)for(var LA=0;LA<8;LA++)X[CQ]=1/(J[P[CQ]]*NQ[SQ]*NQ[LA]*8),G[CQ]=1/(C[P[CQ]]*NQ[SQ]*NQ[LA]*8),CQ++}function m(XA,PA){var NA=0,TA=0,vA=[];for(var mA=1;mA<=16;mA++){for(var ZQ=1;ZQ<=XA[mA];ZQ++)vA[PA[TA]]=[],vA[PA[TA]][0]=NA,vA[PA[TA]][1]=mA,TA++,NA++;NA*=2}return vA}function n(){W=m(_,j),F=m(S,v),Z=m(k,T),U=m(y,h)}function i(){var XA=1,PA=2;for(var NA=1;NA<=15;NA++){for(var TA=XA;TA>0]=38470*XA,q[XA+512>>0]=7471*XA+32768,q[XA+768>>0]=-11059*XA,q[XA+1024>>0]=-21709*XA,q[XA+1280>>0]=32768*XA+8421375,q[XA+1536>>0]=-27439*XA,q[XA+1792>>0]=-5329*XA}function d(XA){var PA=XA[0],NA=XA[1]-1;while(NA>=0){if(PA&1<>8&255),x(XA&255)}function o(XA,PA){var NA,TA,vA,mA,ZQ,NQ,CQ,SQ,LA=0,IA,jA=8,tQ=64;for(IA=0;IA0?SM+0.5|0:SM-0.5|0;return K}function GA(){b(65504),b(16),x(74),x(70),x(73),x(70),x(0),x(1),x(1),x(0),b(1),b(1),x(0),x(0)}function VA(XA){if(!XA)return;if(b(65505),XA[0]===69&&XA[1]===120&&XA[2]===105&&XA[3]===102)b(XA.length+2);else b(XA.length+5+2),x(69),x(120),x(105),x(102),x(0);for(var PA=0;PA"u"||XA.constructor!==Array)return;XA.forEach((PA)=>{if(typeof PA!=="string")return;b(65534);var NA=PA.length;b(NA+2);var TA;for(TA=0;TA0&&I[IQ]==0;IQ--);if(IQ==0)return d(mA),NA;var vQ=1,KB;while(vQ<=IQ){var zA=vQ;for(;I[vQ]==0&&vQ<=IQ;++vQ);var uA=vQ-zA;if(uA>=CQ){KB=uA>>4;for(var MQ=1;MQ<=KB;++MQ)d(ZQ);uA=uA&15}NQ=32767+I[vQ],d(vA[(uA<<4)+E[NQ]]),d($[NQ]),vQ++}if(IQ!=SQ)d(mA);return NA}function DA(){var XA=String.fromCharCode;for(var PA=0;PA<256;PA++)N[PA]=XA(PA)}this.encode=function(XA,PA){var NA=new Date().getTime();if(PA)hA(PA);V=[],H=0,D=7,b(65496),GA(),QA(XA.comments),VA(XA.exifBuffer),UA(),EA(XA.width,XA.height),CA(),KA();var TA=0,vA=0,mA=0;H=0,D=7,this.encode.displayName="_encode_";var{data:ZQ,width:NQ,height:CQ}=XA,SQ=NQ*4,LA=NQ*3,IA,jA=0,tQ,IQ,vQ,KB,zA,uA,MQ,bQ;while(jA>3,uA=(bQ&7)*4,zA=KB+MQ*SQ+uA,jA+MQ>=CQ)zA-=SQ*(jA+1+MQ-CQ);if(IA+uA>=SQ)zA-=IA+uA-SQ+4;tQ=ZQ[zA++],IQ=ZQ[zA++],vQ=ZQ[zA++],L[bQ]=(q[tQ]+q[IQ+256>>0]+q[vQ+512>>0]>>16)-128,z[bQ]=(q[tQ+768>>0]+q[IQ+1024>>0]+q[vQ+1280>>0]>>16)-128,M[bQ]=(q[tQ+1280>>0]+q[IQ+1536>>0]+q[vQ+1792>>0]>>16)-128}TA=HA(L,X,TA,W,Z),vA=HA(z,G,vA,F,U),mA=HA(M,G,mA,F,U),IA+=32}jA+=8}if(D>=0){var eQ=[];eQ[1]=D+1,eQ[0]=(1<"u")return new Uint8Array(V);return Buffer.from(V);var lB,mQ};function hA(XA){if(XA<=0)XA=1;if(XA>100)XA=100;if(w==XA)return;var PA=0;if(XA<50)PA=Math.floor(5000/XA);else PA=Math.floor(200-XA*2);g(PA),w=XA}function QQ(){var XA=new Date().getTime();if(!A)A=50;DA(),n(),i(),p(),hA(A);var PA=new Date().getTime()-XA}QQ()}if(typeof GR<"u")GR.exports=SXA;else if(typeof window<"u")window["jpeg-js"]=window["jpeg-js"]||{},window["jpeg-js"].encode=SXA;function SXA(A,Q){if(typeof Q>"u")Q=50;var B=new WoQ(Q),Y=B.encode(A,Q);return{data:Y,width:A.width,height:A.height}}});var yXA=R((P7Y,Fx)=>{var Wx=function(){var Q=new Int32Array([0,1,8,16,9,2,3,10,17,24,32,25,18,11,4,5,12,19,26,33,40,48,41,34,27,20,13,6,7,14,21,28,35,42,49,56,57,50,43,36,29,22,15,23,30,37,44,51,58,59,52,45,38,31,39,46,53,60,61,54,47,55,62,63]),B=4017,Y=799,J=3406,C=2276,X=1567,G=3784,W=5793,F=2896;function Z(){}function U(D,L){var z=0,M=[],N,q,w=16;while(w>0&&!D[w-1])w--;M.push({children:[],index:0});var P=M[0],_;for(N=0;N0){if(M.length===0)throw Error("Could not recreate Huffman Table");P=M.pop()}P.index++,M.push(P);while(M.length<=N)M.push(_={children:[],index:0}),P.children[P.index]=_.children,P=_;z++}if(N+10)return i--,n>>i&1;if(n=D[L++],n==255){var LA=D[L++];if(LA)throw Error("unexpected marker: "+(n<<8|LA).toString(16))}return i=7,n>>>7}function d(LA){var IA=LA,jA;while((jA=p())!==null){if(IA=IA[jA],typeof IA==="number")return IA;if(typeof IA!=="object")throw Error("invalid huffman sequence")}return null}function x(LA){var IA=0;while(LA>0){var jA=p();if(jA===null)return;IA=IA<<1|jA,LA--}return IA}function b(LA){var IA=x(LA);if(IA>=1<>4;if(KB===0){if(zA<15)break;IQ+=16;continue}IQ+=zA;var uA=Q[IQ];IA[uA]=b(KB),IQ++}}function GA(LA,IA){var jA=d(LA.huffmanTableDC),tQ=jA===0?0:b(jA)<<_;IA[0]=LA.pred+=tQ}function VA(LA,IA){IA[0]|=p()<<_}var EA=0;function UA(LA,IA){if(EA>0){EA--;return}var jA=q,tQ=w;while(jA<=tQ){var IQ=d(LA.huffmanTableAC),vQ=IQ&15,KB=IQ>>4;if(vQ===0){if(KB<15){EA=x(KB)+(1<>4;if(uA===0)if(IQ<15)EA=x(IQ)+(1<=65488&&ZQ<=65495)L+=2;else break}return L-m}function E(D,L){var z=[],M=L.blocksPerLine,N=L.blocksPerColumn,q=M<<3,w=new Int32Array(64),P=new Uint8Array(64);function _(m,n,i){var p=L.quantizationTable,d,x,b,o,GA,VA,EA,UA,CA,QA=i,KA;for(KA=0;KA<64;KA++)QA[KA]=m[KA]*p[KA];for(KA=0;KA<8;++KA){var HA=8*KA;if(QA[1+HA]==0&&QA[2+HA]==0&&QA[3+HA]==0&&QA[4+HA]==0&&QA[5+HA]==0&&QA[6+HA]==0&&QA[7+HA]==0){CA=W*QA[0+HA]+512>>10,QA[0+HA]=CA,QA[1+HA]=CA,QA[2+HA]=CA,QA[3+HA]=CA,QA[4+HA]=CA,QA[5+HA]=CA,QA[6+HA]=CA,QA[7+HA]=CA;continue}d=W*QA[0+HA]+128>>8,x=W*QA[4+HA]+128>>8,b=QA[2+HA],o=QA[6+HA],GA=F*(QA[1+HA]-QA[7+HA])+128>>8,UA=F*(QA[1+HA]+QA[7+HA])+128>>8,VA=QA[3+HA]<<4,EA=QA[5+HA]<<4,CA=d-x+1>>1,d=d+x+1>>1,x=CA,CA=b*G+o*X+128>>8,b=b*X-o*G+128>>8,o=CA,CA=GA-EA+1>>1,GA=GA+EA+1>>1,EA=CA,CA=UA+VA+1>>1,VA=UA-VA+1>>1,UA=CA,CA=d-o+1>>1,d=d+o+1>>1,o=CA,CA=x-b+1>>1,x=x+b+1>>1,b=CA,CA=GA*C+UA*J+2048>>12,GA=GA*J-UA*C+2048>>12,UA=CA,CA=VA*Y+EA*B+2048>>12,VA=VA*B-EA*Y+2048>>12,EA=CA,QA[0+HA]=d+UA,QA[7+HA]=d-UA,QA[1+HA]=x+EA,QA[6+HA]=x-EA,QA[2+HA]=b+VA,QA[5+HA]=b-VA,QA[3+HA]=o+GA,QA[4+HA]=o-GA}for(KA=0;KA<8;++KA){var DA=KA;if(QA[8+DA]==0&&QA[16+DA]==0&&QA[24+DA]==0&&QA[32+DA]==0&&QA[40+DA]==0&&QA[48+DA]==0&&QA[56+DA]==0){CA=W*i[KA+0]+8192>>14,QA[0+DA]=CA,QA[8+DA]=CA,QA[16+DA]=CA,QA[24+DA]=CA,QA[32+DA]=CA,QA[40+DA]=CA,QA[48+DA]=CA,QA[56+DA]=CA;continue}d=W*QA[0+DA]+2048>>12,x=W*QA[32+DA]+2048>>12,b=QA[16+DA],o=QA[48+DA],GA=F*(QA[8+DA]-QA[56+DA])+2048>>12,UA=F*(QA[8+DA]+QA[56+DA])+2048>>12,VA=QA[24+DA],EA=QA[40+DA],CA=d-x+1>>1,d=d+x+1>>1,x=CA,CA=b*G+o*X+2048>>12,b=b*X-o*G+2048>>12,o=CA,CA=GA-EA+1>>1,GA=GA+EA+1>>1,EA=CA,CA=UA+VA+1>>1,VA=UA-VA+1>>1,UA=CA,CA=d-o+1>>1,d=d+o+1>>1,o=CA,CA=x-b+1>>1,x=x+b+1>>1,b=CA,CA=GA*C+UA*J+2048>>12,GA=GA*J-UA*C+2048>>12,UA=CA,CA=VA*Y+EA*B+2048>>12,VA=VA*B-EA*Y+2048>>12,EA=CA,QA[0+DA]=d+UA,QA[56+DA]=d-UA,QA[8+DA]=x+EA,QA[48+DA]=x-EA,QA[16+DA]=b+VA,QA[40+DA]=b-VA,QA[24+DA]=o+GA,QA[32+DA]=o-GA}for(KA=0;KA<64;++KA){var hA=128+(QA[KA]+8>>4);n[KA]=hA<0?0:hA>255?255:hA}}H(q*N*8);var j,k;for(var T=0;T255?255:D}Z.prototype={load:function(L){var z=new XMLHttpRequest;z.open("GET",L,!0),z.responseType="arraybuffer",z.onload=function(){var M=new Uint8Array(z.response||z.mozResponseArrayBuffer);if(this.parse(M),this.onload)this.onload()}.bind(this),z.send(null)},parse:function(L){var z=this.opts.maxResolutionInMP*1000*1000,M=0,N=L.length;function q(){var zA=L[M]<<8|L[M+1];return M+=2,zA}function w(){var zA=q(),uA=L.subarray(M,M+zA-2);return M+=uA.length,uA}function P(zA){var uA=1,MQ=1,bQ,eQ;for(eQ in zA.components)if(zA.components.hasOwnProperty(eQ)){if(bQ=zA.components[eQ],uA>4===0)for(p=0;p<64;p++){var UA=Q[p];EA[UA]=L[M++]}else if(VA>>4===1)for(p=0;p<64;p++){var UA=Q[p];EA[UA]=q()}else throw Error("DQT: invalid table spec");v[VA&15]=EA}break;case 65472:case 65473:case 65474:q(),T={},T.extended=m===65473,T.progressive=m===65474,T.precision=L[M++],T.scanLines=q(),T.samplesPerLine=q(),T.components={},T.componentsOrder=[];var CA=T.scanLines*T.samplesPerLine;if(CA>z){var QA=Math.ceil((CA-z)/1e6);throw Error(`maxResolutionInMP limit exceeded by ${QA}MP`)}var KA=L[M++],HA,DA=0,hA=0;for(i=0;i>4,XA=L[M+1]&15,PA=L[M+2];if(QQ<=0||XA<=0)throw Error("Invalid sampling factor, expected values above 0");T.componentsOrder.push(HA),T.components[HA]={h:QQ,v:XA,quantizationIdx:PA},M+=3}P(T),y.push(T);break;case 65476:var NA=q();for(i=2;i>4===0?g:h)[TA&15]=U(vA,ZQ)}break;case 65501:q(),S=q();break;case 65500:q(),q();break;case 65498:var NQ=q(),CQ=L[M++],SQ=[],LA;for(i=0;i>4],LA.huffmanTableAC=h[IA&15],SQ.push(LA)}var jA=L[M++],tQ=L[M++],IQ=L[M++],vQ=$(L,M,T,SQ,S,jA,tQ,IQ>>4,IQ&15,this.opts);M+=vQ;break;case 65535:if(L[M]!==255)M--;break;default:if(L[M-3]==255&&L[M-2]>=192&&L[M-2]<=254){M-=3;break}else if(m===224||m==225){if(n!==-1)throw Error(`first unknown JPEG marker at offset ${n.toString(16)}, second unknown JPEG marker ${m.toString(16)} at offset ${(M-1).toString(16)}`);n=M-1;let zA=q();if(L[M+zA-2]===255){M+=zA-2;break}}throw Error("unknown JPEG marker "+m.toString(16))}m=q()}if(y.length!=1)throw Error("only single frame JPEGs supported");for(var i=0;iV){var z=Math.ceil((L-V)/1024/1024);throw Error(`maxMemoryUsageInMB limit exceeded by at least ${z}MB`)}I=L}return Z.resetMaxMemoryUsage=function(D){I=0,V=D},Z.getBytesAllocated=function(){return I},Z.requestMemoryAllocation=H,Z}();if(typeof Fx<"u")Fx.exports=vXA;else if(typeof window<"u")window["jpeg-js"]=window["jpeg-js"]||{},window["jpeg-js"].decode=vXA;function vXA(A,Q={}){var B={colorTransform:void 0,useTArray:!1,formatAsRGBA:!0,tolerantDecoding:!0,maxResolutionInMP:100,maxMemoryUsageInMB:512},Y={...B,...Q},J=new Uint8Array(A),C=new Wx;C.opts=Y,Wx.resetMaxMemoryUsage(Y.maxMemoryUsageInMB*1024*1024),C.parse(J);var X=Y.formatAsRGBA?4:3,G=C.width*C.height*X;try{Wx.requestMemoryAllocation(G);var W={width:C.width,height:C.height,exifBuffer:C.exifBuffer,data:Y.useTArray?new Uint8Array(G):Buffer.alloc(G)};if(C.comments.length>0)W.comments=C.comments}catch(F){if(F instanceof RangeError)throw Error("Could not allocate enough memory for the image. Required: "+G);if(F instanceof ReferenceError){if(F.message==="Buffer is not defined")throw Error("Buffer is not globally defined in this environment. Consider setting useTArray to true")}throw F}return C.copyToImageData(W,Y.formatAsRGBA),W}});var hXA=R((T7Y,gXA)=>{var FoQ=_XA(),ZoQ=yXA();gXA.exports={encode:FoQ,decode:ZoQ}});var $x=R((k7Y,fXA)=>{var $oQ=u("util"),xXA=u("stream"),_C=fXA.exports=function(){xXA.call(this),this._buffers=[],this._buffered=0,this._reads=[],this._paused=!1,this._encoding="utf8",this.writable=!0};$oQ.inherits(_C,xXA);_C.prototype.read=function(A,Q){this._reads.push({length:Math.abs(A),allowLess:A<0,func:Q}),process.nextTick(function(){if(this._process(),this._paused&&this._reads&&this._reads.length>0)this._paused=!1,this.emit("drain")}.bind(this))};_C.prototype.write=function(A,Q){if(!this.writable)return this.emit("error",Error("Stream not writable")),!1;let B;if(Buffer.isBuffer(A))B=A;else B=Buffer.from(A,Q||this._encoding);if(this._buffers.push(B),this._buffered+=B.length,this._process(),this._reads&&this._reads.length===0)this._paused=!0;return this.writable&&!this._paused};_C.prototype.end=function(A,Q){if(A)this.write(A,Q);if(this.writable=!1,!this._buffers)return;if(this._buffers.length===0)this._end();else this._buffers.push(null),this._process()};_C.prototype.destroySoon=_C.prototype.end;_C.prototype._end=function(){if(this._reads.length>0)this.emit("error",Error("Unexpected end of input"));this.destroy()};_C.prototype.destroy=function(){if(!this._buffers)return;this.writable=!1,this._reads=null,this._buffers=null,this.emit("close")};_C.prototype._processReadAllowingLess=function(A){this._reads.shift();let Q=this._buffers[0];if(Q.length>A.length)this._buffered-=A.length,this._buffers[0]=Q.slice(A.length),A.func.call(this,Q.slice(0,A.length));else this._buffered-=Q.length,this._buffers.shift(),A.func.call(this,Q)};_C.prototype._processRead=function(A){this._reads.shift();let Q=0,B=0,Y=Buffer.alloc(A.length);while(Q0)this._buffers.splice(0,B);this._buffered-=A.length,A.func.call(this,Y)};_C.prototype._process=function(){try{while(this._buffered>0&&this._reads&&this._reads.length>0){let A=this._reads[0];if(A.allowLess)this._processReadAllowingLess(A);else if(this._buffered>=A.length)this._processRead(A);else break}if(this._buffers&&!this.writable)this._end()}catch(A){this.emit("error",A)}}});var Ux=R((UoQ)=>{var H7=[{x:[0],y:[0]},{x:[4],y:[0]},{x:[0,4],y:[4]},{x:[2,6],y:[0,4]},{x:[0,2,4,6],y:[2,6]},{x:[1,3,5,7],y:[0,2,4,6]},{x:[0,1,2,3,4,5,6,7],y:[1,3,5,7]}];UoQ.getImagePasses=function(A,Q){let B=[],Y=A%8,J=Q%8,C=(A-Y)/8,X=(Q-J)/8;for(let G=0;G0&&Z>0)B.push({width:F,height:Z,index:G})}return B};UoQ.getInterlaceIterator=function(A){return function(Q,B,Y){let J=Q%H7[Y].x.length,C=(Q-J)/H7[Y].x.length*8+H7[Y].x[J],X=B%H7[Y].y.length,G=(B-X)/H7[Y].y.length*8+H7[Y].y[X];return C*4+G*A*4}}});var Ex=R((v7Y,bXA)=>{bXA.exports=function(Q,B,Y){let J=Q+B-Y,C=Math.abs(J-Q),X=Math.abs(J-B),G=Math.abs(J-Y);if(C<=X&&C<=G)return Q;if(X<=G)return B;return Y}});var Kx=R((y7Y,uXA)=>{var VoQ=Ux(),IoQ=Ex();function mXA(A,Q,B){let Y=A*Q;if(B!==8)Y=Math.ceil(Y/(8/B));return Y}var NU=uXA.exports=function(A,Q){let{width:B,height:Y,interlace:J,bpp:C,depth:X}=A;if(this.read=Q.read,this.write=Q.write,this.complete=Q.complete,this._imageIndex=0,this._images=[],J){let G=VoQ.getImagePasses(B,Y);for(let W=0;WJ?Q[C-Y]:0;Q[C]=X+G}};NU.prototype._unFilterType2=function(A,Q,B){let Y=this._lastLine;for(let J=0;JJ?Q[X-Y]:0,Z=Math.floor((F+W)/2);Q[X]=G+Z}};NU.prototype._unFilterType4=function(A,Q,B){let Y=this._xComparison,J=Y-1,C=this._lastLine;for(let X=0;XJ?Q[X-Y]:0,Z=X>J&&C?C[X-Y]:0,U=IoQ(F,W,Z);Q[X]=G+U}};NU.prototype._reverseFilterLine=function(A){let Q=A[0],B,Y=this._images[this._imageIndex],J=Y.byteWidth;if(Q===0)B=A.slice(1,J+1);else switch(B=Buffer.alloc(J),Q){case 1:this._unFilterType1(A,B,J);break;case 2:this._unFilterType2(A,B,J);break;case 3:this._unFilterType3(A,B,J);break;case 4:this._unFilterType4(A,B,J);break;default:throw Error("Unrecognised filter type - "+Q)}if(this.write(B),Y.lineIndex++,Y.lineIndex>=Y.height)this._lastLine=null,this._imageIndex++,Y=this._images[this._imageIndex];else this._lastLine=B;if(Y)this.read(Y.byteWidth+1,this._reverseFilterLine.bind(this));else this._lastLine=null,this.complete()}});var lXA=R((g7Y,cXA)=>{var HoQ=u("util"),dXA=$x(),DoQ=Kx(),NoQ=cXA.exports=function(A){dXA.call(this);let Q=[],B=this;this._filter=new DoQ(A,{read:this.read.bind(this),write:function(Y){Q.push(Y)},complete:function(){B.emit("complete",Buffer.concat(Q))}}),this._filter.start()};HoQ.inherits(NoQ,dXA)});var LU=R((h7Y,pXA)=>{pXA.exports={PNG_SIGNATURE:[137,80,78,71,13,10,26,10],TYPE_IHDR:1229472850,TYPE_IEND:1229278788,TYPE_IDAT:1229209940,TYPE_PLTE:1347179589,TYPE_tRNS:1951551059,TYPE_gAMA:1732332865,COLORTYPE_GRAYSCALE:0,COLORTYPE_PALETTE:1,COLORTYPE_COLOR:2,COLORTYPE_ALPHA:4,COLORTYPE_PALETTE_COLOR:3,COLORTYPE_COLOR_ALPHA:6,COLORTYPE_TO_BPP_MAP:{0:1,2:3,3:1,4:2,6:4},GAMMA_DIVISION:1e5}});var Hx=R((x7Y,iXA)=>{var Vx=[];(function(){for(let A=0;A<256;A++){let Q=A;for(let B=0;B<8;B++)if(Q&1)Q=3988292384^Q>>>1;else Q=Q>>>1;Vx[A]=Q}})();var Ix=iXA.exports=function(){this._crc=-1};Ix.prototype.write=function(A){for(let Q=0;Q>>8;return!0};Ix.prototype.crc32=function(){return this._crc^-1};Ix.crc32=function(A){let Q=-1;for(let B=0;B>>8;return Q^-1}});var Dx=R((f7Y,nXA)=>{var _Y=LU(),LoQ=Hx(),iY=nXA.exports=function(A,Q){this._options=A,A.checkCRC=A.checkCRC!==!1,this._hasIHDR=!1,this._hasIEND=!1,this._emittedHeadersFinished=!1,this._palette=[],this._colorType=0,this._chunks={},this._chunks[_Y.TYPE_IHDR]=this._handleIHDR.bind(this),this._chunks[_Y.TYPE_IEND]=this._handleIEND.bind(this),this._chunks[_Y.TYPE_IDAT]=this._handleIDAT.bind(this),this._chunks[_Y.TYPE_PLTE]=this._handlePLTE.bind(this),this._chunks[_Y.TYPE_tRNS]=this._handleTRNS.bind(this),this._chunks[_Y.TYPE_gAMA]=this._handleGAMA.bind(this),this.read=Q.read,this.error=Q.error,this.metadata=Q.metadata,this.gamma=Q.gamma,this.transColor=Q.transColor,this.palette=Q.palette,this.parsed=Q.parsed,this.inflateData=Q.inflateData,this.finished=Q.finished,this.simpleTransparency=Q.simpleTransparency,this.headersFinished=Q.headersFinished||function(){}};iY.prototype.start=function(){this.read(_Y.PNG_SIGNATURE.length,this._parseSignature.bind(this))};iY.prototype._parseSignature=function(A){let Q=_Y.PNG_SIGNATURE;for(let B=0;Bthis._palette.length){this.error(Error("More transparent colors than palette size"));return}for(let Q=0;Q0)this._handleIDAT(B);else this._handleChunkEnd()};iY.prototype._handleIEND=function(A){this.read(A,this._parseIEND.bind(this))};iY.prototype._parseIEND=function(A){if(this._crc.write(A),this._hasIEND=!0,this._handleChunkEnd(),this.finished)this.finished()}});var Nx=R((joQ)=>{var sXA=Ux(),qoQ=[function(){},function(A,Q,B,Y){if(Y===Q.length)throw Error("Ran out of data");let J=Q[Y];A[B]=J,A[B+1]=J,A[B+2]=J,A[B+3]=255},function(A,Q,B,Y){if(Y+1>=Q.length)throw Error("Ran out of data");let J=Q[Y];A[B]=J,A[B+1]=J,A[B+2]=J,A[B+3]=Q[Y+1]},function(A,Q,B,Y){if(Y+2>=Q.length)throw Error("Ran out of data");A[B]=Q[Y],A[B+1]=Q[Y+1],A[B+2]=Q[Y+2],A[B+3]=255},function(A,Q,B,Y){if(Y+3>=Q.length)throw Error("Ran out of data");A[B]=Q[Y],A[B+1]=Q[Y+1],A[B+2]=Q[Y+2],A[B+3]=Q[Y+3]}],MoQ=[function(){},function(A,Q,B,Y){let J=Q[0];A[B]=J,A[B+1]=J,A[B+2]=J,A[B+3]=Y},function(A,Q,B){let Y=Q[0];A[B]=Y,A[B+1]=Y,A[B+2]=Y,A[B+3]=Q[1]},function(A,Q,B,Y){A[B]=Q[0],A[B+1]=Q[1],A[B+2]=Q[2],A[B+3]=Y},function(A,Q,B){A[B]=Q[0],A[B+1]=Q[1],A[B+2]=Q[2],A[B+3]=Q[3]}];function zoQ(A,Q){let B=[],Y=0;function J(){if(Y===A.length)throw Error("Ran out of data");let C=A[Y];Y++;let X,G,W,F,Z,U,$,E;switch(Q){default:throw Error("unrecognised depth");case 16:$=A[Y],Y++,B.push((C<<8)+$);break;case 4:$=C&15,E=C>>4,B.push(E,$);break;case 2:Z=C&3,U=C>>2&3,$=C>>4&3,E=C>>6&3,B.push(E,$,U,Z);break;case 1:X=C&1,G=C>>1&1,W=C>>2&1,F=C>>3&1,Z=C>>4&1,U=C>>5&1,$=C>>6&1,E=C>>7&1,B.push(E,$,U,Z,F,W,G,X);break}}return{get:function(C){while(B.length{function PoQ(A,Q,B,Y,J){let C=0;for(let X=0;X{var koQ=u("util"),qx=u("zlib"),aXA=$x(),_oQ=lXA(),voQ=Dx(),yoQ=Nx(),goQ=Lx(),d1=oXA.exports=function(A){aXA.call(this),this._parser=new voQ(A,{read:this.read.bind(this),error:this._handleError.bind(this),metadata:this._handleMetaData.bind(this),gamma:this.emit.bind(this,"gamma"),palette:this._handlePalette.bind(this),transColor:this._handleTransColor.bind(this),finished:this._finished.bind(this),inflateData:this._inflateData.bind(this),simpleTransparency:this._simpleTransparency.bind(this),headersFinished:this._headersFinished.bind(this)}),this._options=A,this.writable=!0,this._parser.start()};koQ.inherits(d1,aXA);d1.prototype._handleError=function(A){if(this.emit("error",A),this.writable=!1,this.destroy(),this._inflate&&this._inflate.destroy)this._inflate.destroy();if(this._filter)this._filter.destroy(),this._filter.on("error",function(){});this.errord=!0};d1.prototype._inflateData=function(A){if(!this._inflate)if(this._bitmapInfo.interlace)this._inflate=qx.createInflate(),this._inflate.on("error",this.emit.bind(this,"error")),this._filter.on("complete",this._complete.bind(this)),this._inflate.pipe(this._filter);else{let B=((this._bitmapInfo.width*this._bitmapInfo.bpp*this._bitmapInfo.depth+7>>3)+1)*this._bitmapInfo.height,Y=Math.max(B,qx.Z_MIN_CHUNK);this._inflate=qx.createInflate({chunkSize:Y});let J=B,C=this.emit.bind(this,"error");this._inflate.on("error",function(G){if(!J)return;C(G)}),this._filter.on("complete",this._complete.bind(this));let X=this._filter.write.bind(this._filter);this._inflate.on("data",function(G){if(!J)return;if(G.length>J)G=G.slice(0,J);J-=G.length,X(G)}),this._inflate.on("end",this._filter.end.bind(this._filter))}this._inflate.write(A)};d1.prototype._handleMetaData=function(A){this._metaData=A,this._bitmapInfo=Object.create(A),this._filter=new _oQ(this._bitmapInfo)};d1.prototype._handleTransColor=function(A){this._bitmapInfo.transColor=A};d1.prototype._handlePalette=function(A){this._bitmapInfo.palette=A};d1.prototype._simpleTransparency=function(){this._metaData.alpha=!0};d1.prototype._headersFinished=function(){this.emit("metadata",this._metaData)};d1.prototype._finished=function(){if(this.errord)return;if(!this._inflate)this.emit("error","No Inflate block");else this._inflate.end()};d1.prototype._complete=function(A){if(this.errord)return;let Q;try{let B=yoQ.dataToBitMap(A,this._bitmapInfo);Q=goQ(B,this._bitmapInfo,this._options.skipRescale),B=null}catch(B){this._handleError(B);return}this.emit("parsed",Q)}});var A6A=R((d7Y,eXA)=>{var D5=LU();eXA.exports=function(A,Q,B,Y){let J=[D5.COLORTYPE_COLOR_ALPHA,D5.COLORTYPE_ALPHA].indexOf(Y.colorType)!==-1;if(Y.colorType===Y.inputColorType){let K=function(){let I=new ArrayBuffer(2);return new DataView(I).setInt16(0,256,!0),new Int16Array(I)[0]!==256}();if(Y.bitDepth===8||Y.bitDepth===16&&K)return A}let C=Y.bitDepth!==16?A:new Uint16Array(A.buffer),X=255,G=D5.COLORTYPE_TO_BPP_MAP[Y.inputColorType];if(G===4&&!Y.inputHasAlpha)G=3;let W=D5.COLORTYPE_TO_BPP_MAP[Y.colorType];if(Y.bitDepth===16)X=65535,W*=2;let F=Buffer.alloc(Q*B*W),Z=0,U=0,$=Y.bgColor||{};if($.red===void 0)$.red=X;if($.green===void 0)$.green=X;if($.blue===void 0)$.blue=X;function E(){let K,I,V,H=X;switch(Y.inputColorType){case D5.COLORTYPE_COLOR_ALPHA:H=C[Z+3],K=C[Z],I=C[Z+1],V=C[Z+2];break;case D5.COLORTYPE_COLOR:K=C[Z],I=C[Z+1],V=C[Z+2];break;case D5.COLORTYPE_ALPHA:H=C[Z+1],K=C[Z],I=K,V=K;break;case D5.COLORTYPE_GRAYSCALE:K=C[Z],I=K,V=K;break;default:throw Error("input color type:"+Y.inputColorType+" is not supported at present")}if(Y.inputHasAlpha){if(!J)H/=X,K=Math.min(Math.max(Math.round((1-H)*$.red+H*K),0),X),I=Math.min(Math.max(Math.round((1-H)*$.green+H*I),0),X),V=Math.min(Math.max(Math.round((1-H)*$.blue+H*V),0),X)}return{red:K,green:I,blue:V,alpha:H}}for(let K=0;K{var Q6A=Ex();function hoQ(A,Q,B,Y,J){for(let C=0;C=C?A[Q+X-C]:0,W=A[Q+X]-G;Y[J+X]=W}}function boQ(A,Q,B,Y){let J=0;for(let C=0;C=Y?A[Q+C-Y]:0,G=A[Q+C]-X;J+=Math.abs(G)}return J}function moQ(A,Q,B,Y,J){for(let C=0;C0?A[Q+C-B]:0,G=A[Q+C]-X;Y[J+C]=G}}function uoQ(A,Q,B){let Y=0,J=Q+B;for(let C=Q;C0?A[C-B]:0,G=A[C]-X;Y+=Math.abs(G)}return Y}function doQ(A,Q,B,Y,J,C){for(let X=0;X=C?A[Q+X-C]:0,W=Q>0?A[Q+X-B]:0,F=A[Q+X]-(G+W>>1);Y[J+X]=F}}function coQ(A,Q,B,Y){let J=0;for(let C=0;C=Y?A[Q+C-Y]:0,G=Q>0?A[Q+C-B]:0,W=A[Q+C]-(X+G>>1);J+=Math.abs(W)}return J}function loQ(A,Q,B,Y,J,C){for(let X=0;X=C?A[Q+X-C]:0,W=Q>0?A[Q+X-B]:0,F=Q>0&&X>=C?A[Q+X-(B+C)]:0,Z=A[Q+X]-Q6A(G,W,F);Y[J+X]=Z}}function poQ(A,Q,B,Y){let J=0;for(let C=0;C=Y?A[Q+C-Y]:0,G=Q>0?A[Q+C-B]:0,W=Q>0&&C>=Y?A[Q+C-(B+Y)]:0,F=A[Q+C]-Q6A(X,G,W);J+=Math.abs(F)}return J}var ioQ={0:hoQ,1:foQ,2:moQ,3:doQ,4:loQ},noQ={0:xoQ,1:boQ,2:uoQ,3:coQ,4:poQ};B6A.exports=function(A,Q,B,Y,J){let C;if(!("filterType"in Y)||Y.filterType===-1)C=[0,1,2,3,4];else if(typeof Y.filterType==="number")C=[Y.filterType];else throw Error("unrecognised filter types");if(Y.bitDepth===16)J*=2;let X=Q*J,G=0,W=0,F=Buffer.alloc((X+1)*B),Z=C[0];for(let U=0;U1){let $=1/0;for(let E=0;E{var RJ=LU(),soQ=Hx(),roQ=A6A(),aoQ=Y6A(),ooQ=u("zlib"),D7=J6A.exports=function(A){if(this._options=A,A.deflateChunkSize=A.deflateChunkSize||32768,A.deflateLevel=A.deflateLevel!=null?A.deflateLevel:9,A.deflateStrategy=A.deflateStrategy!=null?A.deflateStrategy:3,A.inputHasAlpha=A.inputHasAlpha!=null?A.inputHasAlpha:!0,A.deflateFactory=A.deflateFactory||ooQ.createDeflate,A.bitDepth=A.bitDepth||8,A.colorType=typeof A.colorType==="number"?A.colorType:RJ.COLORTYPE_COLOR_ALPHA,A.inputColorType=typeof A.inputColorType==="number"?A.inputColorType:RJ.COLORTYPE_COLOR_ALPHA,[RJ.COLORTYPE_GRAYSCALE,RJ.COLORTYPE_COLOR,RJ.COLORTYPE_COLOR_ALPHA,RJ.COLORTYPE_ALPHA].indexOf(A.colorType)===-1)throw Error("option color type:"+A.colorType+" is not supported at present");if([RJ.COLORTYPE_GRAYSCALE,RJ.COLORTYPE_COLOR,RJ.COLORTYPE_COLOR_ALPHA,RJ.COLORTYPE_ALPHA].indexOf(A.inputColorType)===-1)throw Error("option input color type:"+A.inputColorType+" is not supported at present");if(A.bitDepth!==8&&A.bitDepth!==16)throw Error("option bit depth:"+A.bitDepth+" is not supported at present")};D7.prototype.getDeflateOptions=function(){return{chunkSize:this._options.deflateChunkSize,level:this._options.deflateLevel,strategy:this._options.deflateStrategy}};D7.prototype.createDeflate=function(){return this._options.deflateFactory(this.getDeflateOptions())};D7.prototype.filterData=function(A,Q,B){let Y=roQ(A,Q,B,this._options),J=RJ.COLORTYPE_TO_BPP_MAP[this._options.colorType];return aoQ(Y,Q,B,this._options,J)};D7.prototype._packChunk=function(A,Q){let B=Q?Q.length:0,Y=Buffer.alloc(B+12);if(Y.writeUInt32BE(B,0),Y.writeUInt32BE(A,4),Q)Q.copy(Y,8);return Y.writeInt32BE(soQ.crc32(Y.slice(4,Y.length-4)),Y.length-4),Y};D7.prototype.packGAMA=function(A){let Q=Buffer.alloc(4);return Q.writeUInt32BE(Math.floor(A*RJ.GAMMA_DIVISION),0),this._packChunk(RJ.TYPE_gAMA,Q)};D7.prototype.packIHDR=function(A,Q){let B=Buffer.alloc(13);return B.writeUInt32BE(A,0),B.writeUInt32BE(Q,4),B[8]=this._options.bitDepth,B[9]=this._options.colorType,B[10]=0,B[11]=0,B[12]=0,this._packChunk(RJ.TYPE_IHDR,B)};D7.prototype.packIDAT=function(A){return this._packChunk(RJ.TYPE_IDAT,A)};D7.prototype.packIEND=function(){return this._packChunk(RJ.TYPE_IEND,null)}});var W6A=R((p7Y,G6A)=>{var toQ=u("util"),C6A=u("stream"),eoQ=LU(),AtQ=Mx(),X6A=G6A.exports=function(A){C6A.call(this);let Q=A||{};this._packer=new AtQ(Q),this._deflate=this._packer.createDeflate(),this.readable=!0};toQ.inherits(X6A,C6A);X6A.prototype.pack=function(A,Q,B,Y){if(this.emit("data",Buffer.from(eoQ.PNG_SIGNATURE)),this.emit("data",this._packer.packIHDR(Q,B)),Y)this.emit("data",this._packer.packGAMA(Y));let J=this._packer.filterData(A,Q,B);this._deflate.on("error",this.emit.bind(this,"error")),this._deflate.on("data",function(C){this.emit("data",this._packer.packIDAT(C))}.bind(this)),this._deflate.on("end",function(){this.emit("data",this._packer.packIEND()),this.emit("end")}.bind(this)),this._deflate.end(J)}});var K6A=R((OH,E6A)=>{var F6A=u("assert").ok,qU=u("zlib"),QtQ=u("util"),Z6A=u("buffer").kMaxLength;function sF(A){if(!(this instanceof sF))return new sF(A);if(A&&A.chunkSize=0,"have should not go down"),V>0){let H=Y._buffer.slice(Y._offset,Y._offset+V);if(Y._offset+=V,H.length>X)H=H.slice(0,X);if(W.push(H),F+=H.length,X-=H.length,X===0)return!1}if(I===0||Y._offset>=Y._chunkSize)C=Y._chunkSize,Y._offset=0,Y._buffer=Buffer.allocUnsafe(Y._chunkSize);if(I===0)return G+=J-K,J=K,!0;return!1}F6A(this._handle,"zlib binding closed");let $;do $=this._handle.writeSync(Q,A,G,J,this._buffer,this._offset,C),$=$||this._writeState;while(!this._hadError&&U($[0],$[1]));if(this._hadError)throw Z;if(F>=Z6A)throw $6A(this),RangeError("Cannot create final Buffer. It would be larger than 0x"+Z6A.toString(16)+" bytes");let E=Buffer.concat(W,F);return $6A(this),E};QtQ.inherits(sF,qU.Inflate);function YtQ(A,Q){if(typeof Q==="string")Q=Buffer.from(Q);if(!(Q instanceof Buffer))throw TypeError("Not a string or buffer");let B=A._finishFlushFlag;if(B==null)B=qU.Z_FINISH;return A._processChunk(Q,B)}function U6A(A,Q){return YtQ(new sF(Q),A)}E6A.exports=OH=U6A;OH.Inflate=sF;OH.createInflate=BtQ;OH.inflateSync=U6A});var zx=R((i7Y,I6A)=>{var V6A=I6A.exports=function(A){this._buffer=A,this._reads=[]};V6A.prototype.read=function(A,Q){this._reads.push({length:Math.abs(A),allowLess:A<0,func:Q})};V6A.prototype.process=function(){while(this._reads.length>0&&this._buffer.length){let A=this._reads[0];if(this._buffer.length&&(this._buffer.length>=A.length||A.allowLess)){this._reads.shift();let Q=this._buffer;this._buffer=Q.slice(A.length),A.func.call(this,Q.slice(0,A.length))}else break}if(this._reads.length>0)throw Error("There are some read requests waitng on finished stream");if(this._buffer.length>0)throw Error("unrecognised content at end of stream")}});var H6A=R((XtQ)=>{var JtQ=zx(),CtQ=Kx();XtQ.process=function(A,Q){let B=[],Y=new JtQ(A);return new CtQ(Q,{read:Y.read.bind(Y),write:function(C){B.push(C)},complete:function(){}}).start(),Y.process(),Buffer.concat(B)}});var q6A=R((s7Y,L6A)=>{var D6A=!0,N6A=u("zlib"),WtQ=K6A();if(!N6A.deflateSync)D6A=!1;var FtQ=zx(),ZtQ=H6A(),$tQ=Dx(),UtQ=Nx(),EtQ=Lx();L6A.exports=function(A,Q){if(!D6A)throw Error("To use the sync capability of this library in old node versions, please pin pngjs to v2.3.0");let B;function Y(z){B=z}let J;function C(z){J=z}function X(z){J.transColor=z}function G(z){J.palette=z}function W(){J.alpha=!0}let F;function Z(z){F=z}let U=[];function $(z){U.push(z)}let E=new FtQ(A);if(new $tQ(Q,{read:E.read.bind(E),error:Y,metadata:C,gamma:Z,palette:G,transColor:X,inflateData:$,simpleTransparency:W}).start(),E.process(),B)throw B;let I=Buffer.concat(U);U.length=0;let V;if(J.interlace)V=N6A.inflateSync(I);else{let M=((J.width*J.bpp*J.depth+7>>3)+1)*J.height;V=WtQ(I,{chunkSize:M,maxLength:M})}if(I=null,!V||!V.length)throw Error("bad png - invalid inflate data response");let H=ZtQ.process(V,J);I=null;let D=UtQ.dataToBitMap(H,J);H=null;let L=EtQ(D,J,Q.skipRescale);return J.data=L,J.gamma=F||0,J}});var w6A=R((r7Y,R6A)=>{var M6A=!0,z6A=u("zlib");if(!z6A.deflateSync)M6A=!1;var KtQ=LU(),VtQ=Mx();R6A.exports=function(A,Q){if(!M6A)throw Error("To use the sync capability of this library in old node versions, please pin pngjs to v2.3.0");let Y=new VtQ(Q||{}),J=[];if(J.push(Buffer.from(KtQ.PNG_SIGNATURE)),J.push(Y.packIHDR(A.width,A.height)),A.gamma)J.push(Y.packGAMA(A.gamma));let C=Y.filterData(A.data,A.width,A.height),X=z6A.deflateSync(C,Y.getDeflateOptions());if(C=null,!X||!X.length)throw Error("bad png - invalid compressed data response");return J.push(Y.packIDAT(X)),J.push(Y.packIEND()),Buffer.concat(J)}});var j6A=R((DtQ)=>{var ItQ=q6A(),HtQ=w6A();DtQ.read=function(A,Q){return ItQ(A,Q||{})};DtQ.write=function(A,Q){return HtQ(A,Q)}});var P6A=R((wtQ)=>{var qtQ=u("util"),O6A=u("stream"),MtQ=tXA(),ztQ=W6A(),RtQ=j6A(),Y9=wtQ.PNG=function(A){if(O6A.call(this),A=A||{},this.width=A.width|0,this.height=A.height|0,this.data=this.width>0&&this.height>0?Buffer.alloc(4*this.width*this.height):null,A.fill&&this.data)this.data.fill(0);this.gamma=0,this.readable=this.writable=!0,this._parser=new MtQ(A),this._parser.on("error",this.emit.bind(this,"error")),this._parser.on("close",this._handleClose.bind(this)),this._parser.on("metadata",this._metadata.bind(this)),this._parser.on("gamma",this._gamma.bind(this)),this._parser.on("parsed",function(Q){this.data=Q,this.emit("parsed",Q)}.bind(this)),this._packer=new ztQ(A),this._packer.on("data",this.emit.bind(this,"data")),this._packer.on("end",this.emit.bind(this,"end")),this._parser.on("close",this._handleClose.bind(this)),this._packer.on("error",this.emit.bind(this,"error"))};qtQ.inherits(Y9,O6A);Y9.sync=RtQ;Y9.prototype.pack=function(){if(!this.data||!this.data.length)return this.emit("error","No data provided"),this;return process.nextTick(function(){this._packer.pack(this.data,this.width,this.height,this.gamma)}.bind(this)),this};Y9.prototype.parse=function(A,Q){if(Q){let B,Y;B=function(J){this.removeListener("error",Y),this.data=J,Q(null,this)}.bind(this),Y=function(J){this.removeListener("parsed",B),Q(J,null)}.bind(this),this.once("parsed",B),this.once("error",Y)}return this.end(A),this};Y9.prototype.write=function(A){return this._parser.write(A),!0};Y9.prototype.end=function(A){this._parser.end(A)};Y9.prototype._metadata=function(A){this.width=A.width,this.height=A.height,this.emit("metadata",A)};Y9.prototype._gamma=function(A){this.gamma=A};Y9.prototype._handleClose=function(){if(!this._parser.writable&&!this._packer.readable)this.emit("close")};Y9.bitblt=function(A,Q,B,Y,J,C,X,G){if(B|=0,Y|=0,J|=0,C|=0,X|=0,G|=0,B>A.width||Y>A.height||B+J>A.width||Y+C>A.height)throw Error("bitblt reading outside image");if(X>Q.width||G>Q.height||X+J>Q.width||G+C>Q.height)throw Error("bitblt writing outside image");for(let W=0;W{var TtQ=typeof Uint8Array<"u"&&typeof Uint16Array<"u"&&typeof Int32Array<"u";function StQ(A,Q){return Object.prototype.hasOwnProperty.call(A,Q)}Rx.assign=function(A){var Q=Array.prototype.slice.call(arguments,1);while(Q.length){var B=Q.shift();if(!B)continue;if(typeof B!=="object")throw TypeError(B+"must be non-object");for(var Y in B)if(StQ(B,Y))A[Y]=B[Y]}return A};Rx.shrinkBuf=function(A,Q){if(A.length===Q)return A;if(A.subarray)return A.subarray(0,Q);return A.length=Q,A};var ktQ={arraySet:function(A,Q,B,Y,J){if(Q.subarray&&A.subarray){A.set(Q.subarray(B,B+Y),J);return}for(var C=0;C{var ytQ=S6(),gtQ=4,S6A=0,k6A=1,htQ=2;function zU(A){var Q=A.length;while(--Q>=0)A[Q]=0}var xtQ=0,x6A=1,ftQ=2,btQ=3,mtQ=258,_x=29,yH=256,SH=yH+1+_x,MU=30,vx=19,f6A=2*SH+1,rF=15,jx=16,utQ=7,yx=256,b6A=16,m6A=17,u6A=18,Sx=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],UR=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],dtQ=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],d6A=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],ctQ=512,k6=Array((SH+2)*2);zU(k6);var TH=Array(MU*2);zU(TH);var kH=Array(ctQ);zU(kH);var _H=Array(mtQ-btQ+1);zU(_H);var gx=Array(_x);zU(gx);var ER=Array(MU);zU(ER);function Ox(A,Q,B,Y,J){this.static_tree=A,this.extra_bits=Q,this.extra_base=B,this.elems=Y,this.max_length=J,this.has_stree=A&&A.length}var c6A,l6A,p6A;function Px(A,Q){this.dyn_tree=A,this.max_code=0,this.stat_desc=Q}function i6A(A){return A<256?kH[A]:kH[256+(A>>>7)]}function vH(A,Q){A.pending_buf[A.pending++]=Q&255,A.pending_buf[A.pending++]=Q>>>8&255}function y9(A,Q,B){if(A.bi_valid>jx-B)A.bi_buf|=Q<>jx-A.bi_valid,A.bi_valid+=B-jx;else A.bi_buf|=Q<>>=1,B<<=1;while(--Q>0);return B>>>1}function ltQ(A){if(A.bi_valid===16)vH(A,A.bi_buf),A.bi_buf=0,A.bi_valid=0;else if(A.bi_valid>=8)A.pending_buf[A.pending++]=A.bi_buf&255,A.bi_buf>>=8,A.bi_valid-=8}function ptQ(A,Q){var{dyn_tree:B,max_code:Y}=Q,J=Q.stat_desc.static_tree,C=Q.stat_desc.has_stree,X=Q.stat_desc.extra_bits,G=Q.stat_desc.extra_base,W=Q.stat_desc.max_length,F,Z,U,$,E,K,I=0;for($=0;$<=rF;$++)A.bl_count[$]=0;B[A.heap[A.heap_max]*2+1]=0;for(F=A.heap_max+1;FW)$=W,I++;if(B[Z*2+1]=$,Z>Y)continue;if(A.bl_count[$]++,E=0,Z>=G)E=X[Z-G];if(K=B[Z*2],A.opt_len+=K*($+E),C)A.static_len+=K*(J[Z*2+1]+E)}if(I===0)return;do{$=W-1;while(A.bl_count[$]===0)$--;A.bl_count[$]--,A.bl_count[$+1]+=2,A.bl_count[W]--,I-=2}while(I>0);for($=W;$!==0;$--){Z=A.bl_count[$];while(Z!==0){if(U=A.heap[--F],U>Y)continue;if(B[U*2+1]!==$)A.opt_len+=($-B[U*2+1])*B[U*2],B[U*2+1]=$;Z--}}}function s6A(A,Q,B){var Y=Array(rF+1),J=0,C,X;for(C=1;C<=rF;C++)Y[C]=J=J+B[C-1]<<1;for(X=0;X<=Q;X++){var G=A[X*2+1];if(G===0)continue;A[X*2]=n6A(Y[G]++,G)}}function itQ(){var A,Q,B,Y,J,C=Array(rF+1);B=0;for(Y=0;Y<_x-1;Y++){gx[Y]=B;for(A=0;A<1<>=7;for(;Y8)vH(A,A.bi_buf);else if(A.bi_valid>0)A.pending_buf[A.pending++]=A.bi_buf;A.bi_buf=0,A.bi_valid=0}function ntQ(A,Q,B,Y){if(a6A(A),Y)vH(A,B),vH(A,~B);ytQ.arraySet(A.pending_buf,A.window,Q,B,A.pending),A.pending+=B}function _6A(A,Q,B,Y){var J=Q*2,C=B*2;return A[J]>1;X>=1;X--)Tx(A,B,X);F=C;do X=A.heap[1],A.heap[1]=A.heap[A.heap_len--],Tx(A,B,1),G=A.heap[1],A.heap[--A.heap_max]=X,A.heap[--A.heap_max]=G,B[F*2]=B[X*2]+B[G*2],A.depth[F]=(A.depth[X]>=A.depth[G]?A.depth[X]:A.depth[G])+1,B[X*2+1]=B[G*2+1]=F,A.heap[1]=F++,Tx(A,B,1);while(A.heap_len>=2);A.heap[--A.heap_max]=A.heap[1],ptQ(A,Q),s6A(B,W,A.bl_count)}function y6A(A,Q,B){var Y,J=-1,C,X=Q[1],G=0,W=7,F=4;if(X===0)W=138,F=3;Q[(B+1)*2+1]=65535;for(Y=0;Y<=B;Y++){if(C=X,X=Q[(Y+1)*2+1],++G=3;Q--)if(A.bl_tree[d6A[Q]*2+1]!==0)break;return A.opt_len+=3*(Q+1)+5+5+4,Q}function rtQ(A,Q,B,Y){var J;y9(A,Q-257,5),y9(A,B-1,5),y9(A,Y-4,4);for(J=0;J>>=1)if(Q&1&&A.dyn_ltree[B*2]!==0)return S6A;if(A.dyn_ltree[18]!==0||A.dyn_ltree[20]!==0||A.dyn_ltree[26]!==0)return k6A;for(B=32;B0){if(A.strm.data_type===htQ)A.strm.data_type=atQ(A);if(kx(A,A.l_desc),kx(A,A.d_desc),X=stQ(A),J=A.opt_len+3+7>>>3,C=A.static_len+3+7>>>3,C<=J)J=C}else J=C=B+5;if(B+4<=J&&Q!==-1)o6A(A,Q,B,Y);else if(A.strategy===gtQ||C===J)y9(A,(x6A<<1)+(Y?1:0),3),v6A(A,k6,TH);else y9(A,(ftQ<<1)+(Y?1:0),3),rtQ(A,A.l_desc.max_code+1,A.d_desc.max_code+1,X+1),v6A(A,A.dyn_ltree,A.dyn_dtree);if(r6A(A),Y)a6A(A)}function AeQ(A,Q,B){if(A.pending_buf[A.d_buf+A.last_lit*2]=Q>>>8&255,A.pending_buf[A.d_buf+A.last_lit*2+1]=Q&255,A.pending_buf[A.l_buf+A.last_lit]=B&255,A.last_lit++,Q===0)A.dyn_ltree[B*2]++;else A.matches++,Q--,A.dyn_ltree[(_H[B]+yH+1)*2]++,A.dyn_dtree[i6A(Q)*2]++;return A.last_lit===A.lit_bufsize-1}QeQ._tr_init=otQ;QeQ._tr_stored_block=o6A;QeQ._tr_flush_block=etQ;QeQ._tr_tally=AeQ;QeQ._tr_align=ttQ});var hx=R((CWY,e6A)=>{function GeQ(A,Q,B,Y){var J=A&65535|0,C=A>>>16&65535|0,X=0;while(B!==0){X=B>2000?2000:B,B-=X;do J=J+Q[Y++]|0,C=C+J|0;while(--X);J%=65521,C%=65521}return J|C<<16|0}e6A.exports=GeQ});var xx=R((XWY,AGA)=>{function WeQ(){var A,Q=[];for(var B=0;B<256;B++){A=B;for(var Y=0;Y<8;Y++)A=A&1?3988292384^A>>>1:A>>>1;Q[B]=A}return Q}var FeQ=WeQ();function ZeQ(A,Q,B,Y){var J=FeQ,C=Y+B;A^=-1;for(var X=Y;X>>8^J[(A^Q[X])&255];return A^-1}AGA.exports=ZeQ});var KR=R((GWY,QGA)=>{QGA.exports={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}});var ZGA=R((ceQ)=>{var J9=S6(),N5=t6A(),CGA=hx(),N7=xx(),$eQ=KR(),eF=0,UeQ=1,EeQ=3,R7=4,BGA=5,p1=0,YGA=1,L5=-2,KeQ=-3,fx=-5,VeQ=-1,IeQ=1,VR=2,HeQ=3,DeQ=4,NeQ=0,LeQ=2,NR=8,qeQ=9,MeQ=15,zeQ=8,ReQ=29,weQ=256,mx=weQ+1+ReQ,jeQ=30,OeQ=19,PeQ=2*mx+1,TeQ=15,IB=3,M7=258,vC=M7+IB+1,SeQ=32,LR=42,ux=69,IR=73,HR=91,DR=103,aF=113,hH=666,vY=1,xH=2,oF=3,jU=4,keQ=3;function z7(A,Q){return A.msg=$eQ[Q],Q}function JGA(A){return(A<<1)-(A>4?9:0)}function q7(A){var Q=A.length;while(--Q>=0)A[Q]=0}function L7(A){var Q=A.state,B=Q.pending;if(B>A.avail_out)B=A.avail_out;if(B===0)return;if(J9.arraySet(A.output,Q.pending_buf,Q.pending_out,B,A.next_out),A.next_out+=B,Q.pending_out+=B,A.total_out+=B,A.avail_out-=B,Q.pending-=B,Q.pending===0)Q.pending_out=0}function GJ(A,Q){N5._tr_flush_block(A,A.block_start>=0?A.block_start:-1,A.strstart-A.block_start,Q),A.block_start=A.strstart,L7(A.strm)}function TB(A,Q){A.pending_buf[A.pending++]=Q}function gH(A,Q){A.pending_buf[A.pending++]=Q>>>8&255,A.pending_buf[A.pending++]=Q&255}function _eQ(A,Q,B,Y){var J=A.avail_in;if(J>Y)J=Y;if(J===0)return 0;if(A.avail_in-=J,J9.arraySet(Q,A.input,A.next_in,J,B),A.state.wrap===1)A.adler=CGA(A.adler,Q,J,B);else if(A.state.wrap===2)A.adler=N7(A.adler,Q,J,B);return A.next_in+=J,A.total_in+=J,J}function XGA(A,Q){var{max_chain_length:B,strstart:Y}=A,J,C,X=A.prev_length,G=A.nice_match,W=A.strstart>A.w_size-vC?A.strstart-(A.w_size-vC):0,F=A.window,Z=A.w_mask,U=A.prev,$=A.strstart+M7,E=F[Y+X-1],K=F[Y+X];if(A.prev_length>=A.good_match)B>>=2;if(G>A.lookahead)G=A.lookahead;do{if(J=Q,F[J+X]!==K||F[J+X-1]!==E||F[J]!==F[Y]||F[++J]!==F[Y+1])continue;Y+=2,J++;do;while(F[++Y]===F[++J]&&F[++Y]===F[++J]&&F[++Y]===F[++J]&&F[++Y]===F[++J]&&F[++Y]===F[++J]&&F[++Y]===F[++J]&&F[++Y]===F[++J]&&F[++Y]===F[++J]&&Y<$);if(C=M7-($-Y),Y=$-M7,C>X){if(A.match_start=Q,X=C,C>=G)break;E=F[Y+X-1],K=F[Y+X]}}while((Q=U[Q&Z])>W&&--B!==0);if(X<=A.lookahead)return X;return A.lookahead}function tF(A){var Q=A.w_size,B,Y,J,C,X;do{if(C=A.window_size-A.lookahead-A.strstart,A.strstart>=Q+(Q-vC)){J9.arraySet(A.window,A.window,Q,Q,0),A.match_start-=Q,A.strstart-=Q,A.block_start-=Q,Y=A.hash_size,B=Y;do J=A.head[--B],A.head[B]=J>=Q?J-Q:0;while(--Y);Y=Q,B=Y;do J=A.prev[--B],A.prev[B]=J>=Q?J-Q:0;while(--Y);C+=Q}if(A.strm.avail_in===0)break;if(Y=_eQ(A.strm,A.window,A.strstart+A.lookahead,C),A.lookahead+=Y,A.lookahead+A.insert>=IB){X=A.strstart-A.insert,A.ins_h=A.window[X],A.ins_h=(A.ins_h<A.pending_buf_size-5)B=A.pending_buf_size-5;for(;;){if(A.lookahead<=1){if(tF(A),A.lookahead===0&&Q===eF)return vY;if(A.lookahead===0)break}A.strstart+=A.lookahead,A.lookahead=0;var Y=A.block_start+B;if(A.strstart===0||A.strstart>=Y){if(A.lookahead=A.strstart-Y,A.strstart=Y,GJ(A,!1),A.strm.avail_out===0)return vY}if(A.strstart-A.block_start>=A.w_size-vC){if(GJ(A,!1),A.strm.avail_out===0)return vY}}if(A.insert=0,Q===R7){if(GJ(A,!0),A.strm.avail_out===0)return oF;return jU}if(A.strstart>A.block_start){if(GJ(A,!1),A.strm.avail_out===0)return vY}return vY}function bx(A,Q){var B,Y;for(;;){if(A.lookahead=IB)A.ins_h=(A.ins_h<=IB)if(Y=N5._tr_tally(A,A.strstart-A.match_start,A.match_length-IB),A.lookahead-=A.match_length,A.match_length<=A.max_lazy_match&&A.lookahead>=IB){A.match_length--;do A.strstart++,A.ins_h=(A.ins_h<=IB)A.ins_h=(A.ins_h<4096))A.match_length=IB-1}if(A.prev_length>=IB&&A.match_length<=A.prev_length){J=A.strstart+A.lookahead-IB,Y=N5._tr_tally(A,A.strstart-1-A.prev_match,A.prev_length-IB),A.lookahead-=A.prev_length-1,A.prev_length-=2;do if(++A.strstart<=J)A.ins_h=(A.ins_h<=IB&&A.strstart>0){if(J=A.strstart-1,Y=X[J],Y===X[++J]&&Y===X[++J]&&Y===X[++J]){C=A.strstart+M7;do;while(Y===X[++J]&&Y===X[++J]&&Y===X[++J]&&Y===X[++J]&&Y===X[++J]&&Y===X[++J]&&Y===X[++J]&&Y===X[++J]&&JA.lookahead)A.match_length=A.lookahead}}if(A.match_length>=IB)B=N5._tr_tally(A,1,A.match_length-IB),A.lookahead-=A.match_length,A.strstart+=A.match_length,A.match_length=0;else B=N5._tr_tally(A,0,A.window[A.strstart]),A.lookahead--,A.strstart++;if(B){if(GJ(A,!1),A.strm.avail_out===0)return vY}}if(A.insert=0,Q===R7){if(GJ(A,!0),A.strm.avail_out===0)return oF;return jU}if(A.last_lit){if(GJ(A,!1),A.strm.avail_out===0)return vY}return xH}function geQ(A,Q){var B;for(;;){if(A.lookahead===0){if(tF(A),A.lookahead===0){if(Q===eF)return vY;break}}if(A.match_length=0,B=N5._tr_tally(A,0,A.window[A.strstart]),A.lookahead--,A.strstart++,B){if(GJ(A,!1),A.strm.avail_out===0)return vY}}if(A.insert=0,Q===R7){if(GJ(A,!0),A.strm.avail_out===0)return oF;return jU}if(A.last_lit){if(GJ(A,!1),A.strm.avail_out===0)return vY}return xH}function l1(A,Q,B,Y,J){this.good_length=A,this.max_lazy=Q,this.nice_length=B,this.max_chain=Y,this.func=J}var wU;wU=[new l1(0,0,0,0,veQ),new l1(4,4,8,4,bx),new l1(4,5,16,8,bx),new l1(4,6,32,32,bx),new l1(4,4,16,16,RU),new l1(8,16,32,32,RU),new l1(8,16,128,128,RU),new l1(8,32,128,256,RU),new l1(32,128,258,1024,RU),new l1(32,258,258,4096,RU)];function heQ(A){A.window_size=2*A.w_size,q7(A.head),A.max_lazy_match=wU[A.level].max_lazy,A.good_match=wU[A.level].good_length,A.nice_match=wU[A.level].nice_length,A.max_chain_length=wU[A.level].max_chain,A.strstart=0,A.block_start=0,A.lookahead=0,A.insert=0,A.match_length=A.prev_length=IB-1,A.match_available=0,A.ins_h=0}function xeQ(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=NR,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new J9.Buf16(PeQ*2),this.dyn_dtree=new J9.Buf16((2*jeQ+1)*2),this.bl_tree=new J9.Buf16((2*OeQ+1)*2),q7(this.dyn_ltree),q7(this.dyn_dtree),q7(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new J9.Buf16(TeQ+1),this.heap=new J9.Buf16(2*mx+1),q7(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new J9.Buf16(2*mx+1),q7(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function GGA(A){var Q;if(!A||!A.state)return z7(A,L5);if(A.total_in=A.total_out=0,A.data_type=LeQ,Q=A.state,Q.pending=0,Q.pending_out=0,Q.wrap<0)Q.wrap=-Q.wrap;return Q.status=Q.wrap?LR:aF,A.adler=Q.wrap===2?0:1,Q.last_flush=eF,N5._tr_init(Q),p1}function WGA(A){var Q=GGA(A);if(Q===p1)heQ(A.state);return Q}function feQ(A,Q){if(!A||!A.state)return L5;if(A.state.wrap!==2)return L5;return A.state.gzhead=Q,p1}function FGA(A,Q,B,Y,J,C){if(!A)return L5;var X=1;if(Q===VeQ)Q=6;if(Y<0)X=0,Y=-Y;else if(Y>15)X=2,Y-=16;if(J<1||J>qeQ||B!==NR||Y<8||Y>15||Q<0||Q>9||C<0||C>DeQ)return z7(A,L5);if(Y===8)Y=9;var G=new xeQ;return A.state=G,G.strm=A,G.wrap=X,G.gzhead=null,G.w_bits=Y,G.w_size=1<BGA||Q<0)return A?z7(A,L5):L5;if(Y=A.state,!A.output||!A.input&&A.avail_in!==0||Y.status===hH&&Q!==R7)return z7(A,A.avail_out===0?fx:L5);if(Y.strm=A,B=Y.last_flush,Y.last_flush=Q,Y.status===LR)if(Y.wrap===2)if(A.adler=0,TB(Y,31),TB(Y,139),TB(Y,8),!Y.gzhead)TB(Y,0),TB(Y,0),TB(Y,0),TB(Y,0),TB(Y,0),TB(Y,Y.level===9?2:Y.strategy>=VR||Y.level<2?4:0),TB(Y,keQ),Y.status=aF;else{if(TB(Y,(Y.gzhead.text?1:0)+(Y.gzhead.hcrc?2:0)+(!Y.gzhead.extra?0:4)+(!Y.gzhead.name?0:8)+(!Y.gzhead.comment?0:16)),TB(Y,Y.gzhead.time&255),TB(Y,Y.gzhead.time>>8&255),TB(Y,Y.gzhead.time>>16&255),TB(Y,Y.gzhead.time>>24&255),TB(Y,Y.level===9?2:Y.strategy>=VR||Y.level<2?4:0),TB(Y,Y.gzhead.os&255),Y.gzhead.extra&&Y.gzhead.extra.length)TB(Y,Y.gzhead.extra.length&255),TB(Y,Y.gzhead.extra.length>>8&255);if(Y.gzhead.hcrc)A.adler=N7(A.adler,Y.pending_buf,Y.pending,0);Y.gzindex=0,Y.status=ux}else{var X=NR+(Y.w_bits-8<<4)<<8,G=-1;if(Y.strategy>=VR||Y.level<2)G=0;else if(Y.level<6)G=1;else if(Y.level===6)G=2;else G=3;if(X|=G<<6,Y.strstart!==0)X|=SeQ;if(X+=31-X%31,Y.status=aF,gH(Y,X),Y.strstart!==0)gH(Y,A.adler>>>16),gH(Y,A.adler&65535);A.adler=1}if(Y.status===ux)if(Y.gzhead.extra){J=Y.pending;while(Y.gzindex<(Y.gzhead.extra.length&65535)){if(Y.pending===Y.pending_buf_size){if(Y.gzhead.hcrc&&Y.pending>J)A.adler=N7(A.adler,Y.pending_buf,Y.pending-J,J);if(L7(A),J=Y.pending,Y.pending===Y.pending_buf_size)break}TB(Y,Y.gzhead.extra[Y.gzindex]&255),Y.gzindex++}if(Y.gzhead.hcrc&&Y.pending>J)A.adler=N7(A.adler,Y.pending_buf,Y.pending-J,J);if(Y.gzindex===Y.gzhead.extra.length)Y.gzindex=0,Y.status=IR}else Y.status=IR;if(Y.status===IR)if(Y.gzhead.name){J=Y.pending;do{if(Y.pending===Y.pending_buf_size){if(Y.gzhead.hcrc&&Y.pending>J)A.adler=N7(A.adler,Y.pending_buf,Y.pending-J,J);if(L7(A),J=Y.pending,Y.pending===Y.pending_buf_size){C=1;break}}if(Y.gzindexJ)A.adler=N7(A.adler,Y.pending_buf,Y.pending-J,J);if(C===0)Y.gzindex=0,Y.status=HR}else Y.status=HR;if(Y.status===HR)if(Y.gzhead.comment){J=Y.pending;do{if(Y.pending===Y.pending_buf_size){if(Y.gzhead.hcrc&&Y.pending>J)A.adler=N7(A.adler,Y.pending_buf,Y.pending-J,J);if(L7(A),J=Y.pending,Y.pending===Y.pending_buf_size){C=1;break}}if(Y.gzindexJ)A.adler=N7(A.adler,Y.pending_buf,Y.pending-J,J);if(C===0)Y.status=DR}else Y.status=DR;if(Y.status===DR)if(Y.gzhead.hcrc){if(Y.pending+2>Y.pending_buf_size)L7(A);if(Y.pending+2<=Y.pending_buf_size)TB(Y,A.adler&255),TB(Y,A.adler>>8&255),A.adler=0,Y.status=aF}else Y.status=aF;if(Y.pending!==0){if(L7(A),A.avail_out===0)return Y.last_flush=-1,p1}else if(A.avail_in===0&&JGA(Q)<=JGA(B)&&Q!==R7)return z7(A,fx);if(Y.status===hH&&A.avail_in!==0)return z7(A,fx);if(A.avail_in!==0||Y.lookahead!==0||Q!==eF&&Y.status!==hH){var W=Y.strategy===VR?geQ(Y,Q):Y.strategy===HeQ?yeQ(Y,Q):wU[Y.level].func(Y,Q);if(W===oF||W===jU)Y.status=hH;if(W===vY||W===oF){if(A.avail_out===0)Y.last_flush=-1;return p1}if(W===xH){if(Q===UeQ)N5._tr_align(Y);else if(Q!==BGA){if(N5._tr_stored_block(Y,0,0,!1),Q===EeQ){if(q7(Y.head),Y.lookahead===0)Y.strstart=0,Y.block_start=0,Y.insert=0}}if(L7(A),A.avail_out===0)return Y.last_flush=-1,p1}}if(Q!==R7)return p1;if(Y.wrap<=0)return YGA;if(Y.wrap===2)TB(Y,A.adler&255),TB(Y,A.adler>>8&255),TB(Y,A.adler>>16&255),TB(Y,A.adler>>24&255),TB(Y,A.total_in&255),TB(Y,A.total_in>>8&255),TB(Y,A.total_in>>16&255),TB(Y,A.total_in>>24&255);else gH(Y,A.adler>>>16),gH(Y,A.adler&65535);if(L7(A),Y.wrap>0)Y.wrap=-Y.wrap;return Y.pending!==0?p1:YGA}function ueQ(A){var Q;if(!A||!A.state)return L5;if(Q=A.state.status,Q!==LR&&Q!==ux&&Q!==IR&&Q!==HR&&Q!==DR&&Q!==aF&&Q!==hH)return z7(A,L5);return A.state=null,Q===aF?z7(A,KeQ):p1}function deQ(A,Q){var B=Q.length,Y,J,C,X,G,W,F,Z;if(!A||!A.state)return L5;if(Y=A.state,X=Y.wrap,X===2||X===1&&Y.status!==LR||Y.lookahead)return L5;if(X===1)A.adler=CGA(A.adler,Q,B,0);if(Y.wrap=0,B>=Y.w_size){if(X===0)q7(Y.head),Y.strstart=0,Y.block_start=0,Y.insert=0;Z=new J9.Buf8(Y.w_size),J9.arraySet(Z,Q,B-Y.w_size,Y.w_size,0),Q=Z,B=Y.w_size}G=A.avail_in,W=A.next_in,F=A.input,A.avail_in=B,A.next_in=0,A.input=Q,tF(Y);while(Y.lookahead>=IB){J=Y.strstart,C=Y.lookahead-(IB-1);do Y.ins_h=(Y.ins_h<{var qR=S6(),$GA=!0,UGA=!0;try{String.fromCharCode.apply(null,[0])}catch(A){$GA=!1}try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(A){UGA=!1}var fH=new qR.Buf8(256);for(i1=0;i1<256;i1++)fH[i1]=i1>=252?6:i1>=248?5:i1>=240?4:i1>=224?3:i1>=192?2:1;var i1;fH[254]=fH[254]=1;eeQ.string2buf=function(A){var Q,B,Y,J,C,X=A.length,G=0;for(J=0;J>>6,Q[C++]=128|B&63;else if(B<65536)Q[C++]=224|B>>>12,Q[C++]=128|B>>>6&63,Q[C++]=128|B&63;else Q[C++]=240|B>>>18,Q[C++]=128|B>>>12&63,Q[C++]=128|B>>>6&63,Q[C++]=128|B&63}return Q};function EGA(A,Q){if(Q<65534){if(A.subarray&&UGA||!A.subarray&&$GA)return String.fromCharCode.apply(null,qR.shrinkBuf(A,Q))}var B="";for(var Y=0;Y4){G[Y++]=65533,B+=C-1;continue}J&=C===2?31:C===3?15:7;while(C>1&&B1){G[Y++]=65533;continue}if(J<65536)G[Y++]=J;else J-=65536,G[Y++]=55296|J>>10&1023,G[Y++]=56320|J&1023}return EGA(G,Y)};eeQ.utf8border=function(A,Q){var B;if(Q=Q||A.length,Q>A.length)Q=A.length;B=Q-1;while(B>=0&&(A[B]&192)===128)B--;if(B<0)return Q;if(B===0)return Q;return B+fH[A[B]]>Q?B:Q}});var cx=R((ZWY,KGA)=>{function CAB(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}KGA.exports=CAB});var DGA=R((EAB)=>{var bH=ZGA(),mH=S6(),px=dx(),ix=KR(),XAB=cx(),HGA=Object.prototype.toString,GAB=0,lx=4,OU=0,VGA=1,IGA=2,WAB=-1,FAB=0,ZAB=8;function AZ(A){if(!(this instanceof AZ))return new AZ(A);this.options=mH.assign({level:WAB,method:ZAB,chunkSize:16384,windowBits:15,memLevel:8,strategy:FAB,to:""},A||{});var Q=this.options;if(Q.raw&&Q.windowBits>0)Q.windowBits=-Q.windowBits;else if(Q.gzip&&Q.windowBits>0&&Q.windowBits<16)Q.windowBits+=16;this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new XAB,this.strm.avail_out=0;var B=bH.deflateInit2(this.strm,Q.level,Q.method,Q.windowBits,Q.memLevel,Q.strategy);if(B!==OU)throw Error(ix[B]);if(Q.header)bH.deflateSetHeader(this.strm,Q.header);if(Q.dictionary){var Y;if(typeof Q.dictionary==="string")Y=px.string2buf(Q.dictionary);else if(HGA.call(Q.dictionary)==="[object ArrayBuffer]")Y=new Uint8Array(Q.dictionary);else Y=Q.dictionary;if(B=bH.deflateSetDictionary(this.strm,Y),B!==OU)throw Error(ix[B]);this._dict_set=!0}}AZ.prototype.push=function(A,Q){var B=this.strm,Y=this.options.chunkSize,J,C;if(this.ended)return!1;if(C=Q===~~Q?Q:Q===!0?lx:GAB,typeof A==="string")B.input=px.string2buf(A);else if(HGA.call(A)==="[object ArrayBuffer]")B.input=new Uint8Array(A);else B.input=A;B.next_in=0,B.avail_in=B.input.length;do{if(B.avail_out===0)B.output=new mH.Buf8(Y),B.next_out=0,B.avail_out=Y;if(J=bH.deflate(B,C),J!==VGA&&J!==OU)return this.onEnd(J),this.ended=!0,!1;if(B.avail_out===0||B.avail_in===0&&(C===lx||C===IGA))if(this.options.to==="string")this.onData(px.buf2binstring(mH.shrinkBuf(B.output,B.next_out)));else this.onData(mH.shrinkBuf(B.output,B.next_out))}while((B.avail_in>0||B.avail_out===0)&&J!==VGA);if(C===lx)return J=bH.deflateEnd(this.strm),this.onEnd(J),this.ended=!0,J===OU;if(C===IGA)return this.onEnd(OU),B.avail_out=0,!0;return!0};AZ.prototype.onData=function(A){this.chunks.push(A)};AZ.prototype.onEnd=function(A){if(A===OU)if(this.options.to==="string")this.result=this.chunks.join("");else this.result=mH.flattenChunks(this.chunks);this.chunks=[],this.err=A,this.msg=this.strm.msg};function nx(A,Q){var B=new AZ(Q);if(B.push(A,!0),B.err)throw B.msg||ix[B.err];return B.result}function $AB(A,Q){return Q=Q||{},Q.raw=!0,nx(A,Q)}function UAB(A,Q){return Q=Q||{},Q.gzip=!0,nx(A,Q)}EAB.Deflate=AZ;EAB.deflate=nx;EAB.deflateRaw=$AB;EAB.gzip=UAB});var LGA=R((UWY,NGA)=>{var MR=30,DAB=12;NGA.exports=function(Q,B){var Y,J,C,X,G,W,F,Z,U,$,E,K,I,V,H,D,L,z,M,N,q,w,P,_,j;Y=Q.state,J=Q.next_in,_=Q.input,C=J+(Q.avail_in-5),X=Q.next_out,j=Q.output,G=X-(B-Q.avail_out),W=X+(Q.avail_out-257),F=Y.dmax,Z=Y.wsize,U=Y.whave,$=Y.wnext,E=Y.window,K=Y.hold,I=Y.bits,V=Y.lencode,H=Y.distcode,D=(1<>>24,K>>>=M,I-=M,M=z>>>16&255,M===0)j[X++]=z&65535;else if(M&16){if(N=z&65535,M&=15,M){if(I>>=M,I-=M}if(I<15)K+=_[J++]<>>24,K>>>=M,I-=M,M=z>>>16&255,M&16){if(q=z&65535,M&=15,IF){Q.msg="invalid distance too far back",Y.mode=MR;break A}if(K>>>=M,I-=M,M=X-G,q>M){if(M=q-M,M>U){if(Y.sane){Q.msg="invalid distance too far back",Y.mode=MR;break A}}if(w=0,P=E,$===0){if(w+=Z-M,M2)j[X++]=P[w++],j[X++]=P[w++],j[X++]=P[w++],N-=3;if(N){if(j[X++]=P[w++],N>1)j[X++]=P[w++]}}else{w=X-q;do j[X++]=j[w++],j[X++]=j[w++],j[X++]=j[w++],N-=3;while(N>2);if(N){if(j[X++]=j[w++],N>1)j[X++]=j[w++]}}}else if((M&64)===0){z=H[(z&65535)+(K&(1<>3,J-=N,I-=N<<3,K&=(1<{var qGA=S6(),PU=15,MGA=852,zGA=592,RGA=0,sx=1,wGA=2,NAB=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],LAB=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78],qAB=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],MAB=[16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];jGA.exports=function(Q,B,Y,J,C,X,G,W){var F=W.bits,Z=0,U=0,$=0,E=0,K=0,I=0,V=0,H=0,D=0,L=0,z,M,N,q,w,P=null,_=0,j,k=new qGA.Buf16(PU+1),T=new qGA.Buf16(PU+1),S=null,v=0,y,h,g;for(Z=0;Z<=PU;Z++)k[Z]=0;for(U=0;U=1;E--)if(k[E]!==0)break;if(K>E)K=E;if(E===0)return C[X++]=20971520,C[X++]=20971520,W.bits=1,0;for($=1;$0&&(Q===RGA||E!==1))return-1;T[1]=0;for(Z=1;ZMGA||Q===wGA&&D>zGA)return 1;for(;;){if(y=Z-V,G[U]j)h=S[v+G[U]],g=P[_+G[U]];else h=96,g=0;z=1<>V)+M]=y<<24|h<<16|g|0;while(M!==0);z=1<>=1;if(z!==0)L&=z-1,L+=z;else L=0;if(U++,--k[Z]===0){if(Z===E)break;Z=B[Y+G[U]]}if(Z>K&&(L&q)!==N){if(V===0)V=K;w+=$,I=Z-V,H=1<MGA||Q===wGA&&D>zGA)return 1;N=L&q,C[N]=K<<24|I<<16|w-X|0}}if(L!==0)C[w+L]=Z-V<<24|4194304|0;return W.bits=K,0}});var W7A=R((uAB)=>{var D8=S6(),Af=hx(),n1=xx(),zAB=LGA(),uH=OGA(),RAB=0,eGA=1,A7A=2,PGA=4,wAB=5,zR=6,QZ=0,jAB=1,OAB=2,q5=-2,Q7A=-3,Qf=-4,PAB=-5,TGA=8,B7A=1,SGA=2,kGA=3,_GA=4,vGA=5,yGA=6,gGA=7,hGA=8,xGA=9,fGA=10,jR=11,_6=12,rx=13,bGA=14,ax=15,mGA=16,uGA=17,dGA=18,cGA=19,RR=20,wR=21,lGA=22,pGA=23,iGA=24,nGA=25,sGA=26,ox=27,rGA=28,aGA=29,w0=30,Bf=31,TAB=32,SAB=852,kAB=592,_AB=15,vAB=_AB;function oGA(A){return(A>>>24&255)+(A>>>8&65280)+((A&65280)<<8)+((A&255)<<24)}function yAB(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new D8.Buf16(320),this.work=new D8.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function Y7A(A){var Q;if(!A||!A.state)return q5;if(Q=A.state,A.total_in=A.total_out=Q.total=0,A.msg="",Q.wrap)A.adler=Q.wrap&1;return Q.mode=B7A,Q.last=0,Q.havedict=0,Q.dmax=32768,Q.head=null,Q.hold=0,Q.bits=0,Q.lencode=Q.lendyn=new D8.Buf32(SAB),Q.distcode=Q.distdyn=new D8.Buf32(kAB),Q.sane=1,Q.back=-1,QZ}function J7A(A){var Q;if(!A||!A.state)return q5;return Q=A.state,Q.wsize=0,Q.whave=0,Q.wnext=0,Y7A(A)}function C7A(A,Q){var B,Y;if(!A||!A.state)return q5;if(Y=A.state,Q<0)B=0,Q=-Q;else if(B=(Q>>4)+1,Q<48)Q&=15;if(Q&&(Q<8||Q>15))return q5;if(Y.window!==null&&Y.wbits!==Q)Y.window=null;return Y.wrap=B,Y.wbits=Q,J7A(A)}function X7A(A,Q){var B,Y;if(!A)return q5;if(Y=new yAB,A.state=Y,Y.window=null,B=C7A(A,Q),B!==QZ)A.state=null;return B}function gAB(A){return X7A(A,vAB)}var tGA=!0,tx,ex;function hAB(A){if(tGA){var Q;tx=new D8.Buf32(512),ex=new D8.Buf32(32),Q=0;while(Q<144)A.lens[Q++]=8;while(Q<256)A.lens[Q++]=9;while(Q<280)A.lens[Q++]=7;while(Q<288)A.lens[Q++]=8;uH(eGA,A.lens,0,288,tx,0,A.work,{bits:9}),Q=0;while(Q<32)A.lens[Q++]=5;uH(A7A,A.lens,0,32,ex,0,A.work,{bits:5}),tGA=!1}A.lencode=tx,A.lenbits=9,A.distcode=ex,A.distbits=5}function G7A(A,Q,B,Y){var J,C=A.state;if(C.window===null)C.wsize=1<=C.wsize)D8.arraySet(C.window,Q,B-C.wsize,C.wsize,0),C.wnext=0,C.whave=C.wsize;else{if(J=C.wsize-C.wnext,J>Y)J=Y;if(D8.arraySet(C.window,Q,B-Y,J,C.wnext),Y-=J,Y)D8.arraySet(C.window,Q,B-Y,Y,0),C.wnext=Y,C.whave=C.wsize;else{if(C.wnext+=J,C.wnext===C.wsize)C.wnext=0;if(C.whave>>8&255,B.check=n1(B.check,P,2,0),F=0,Z=0,B.mode=SGA;break}if(B.flags=0,B.head)B.head.done=!1;if(!(B.wrap&1)||(((F&255)<<8)+(F>>8))%31){A.msg="incorrect header check",B.mode=w0;break}if((F&15)!==TGA){A.msg="unknown compression method",B.mode=w0;break}if(F>>>=4,Z-=4,q=(F&15)+8,B.wbits===0)B.wbits=q;else if(q>B.wbits){A.msg="invalid window size",B.mode=w0;break}B.dmax=1<>8&1;if(B.flags&512)P[0]=F&255,P[1]=F>>>8&255,B.check=n1(B.check,P,2,0);F=0,Z=0,B.mode=kGA;case kGA:while(Z<32){if(G===0)break A;G--,F+=Y[C++]<>>8&255,P[2]=F>>>16&255,P[3]=F>>>24&255,B.check=n1(B.check,P,4,0);F=0,Z=0,B.mode=_GA;case _GA:while(Z<16){if(G===0)break A;G--,F+=Y[C++]<>8;if(B.flags&512)P[0]=F&255,P[1]=F>>>8&255,B.check=n1(B.check,P,2,0);F=0,Z=0,B.mode=vGA;case vGA:if(B.flags&1024){while(Z<16){if(G===0)break A;G--,F+=Y[C++]<>>8&255,B.check=n1(B.check,P,2,0);F=0,Z=0}else if(B.head)B.head.extra=null;B.mode=yGA;case yGA:if(B.flags&1024){if(E=B.length,E>G)E=G;if(E){if(B.head){if(q=B.head.extra_len-B.length,!B.head.extra)B.head.extra=Array(B.head.extra_len);D8.arraySet(B.head.extra,Y,C,E,q)}if(B.flags&512)B.check=n1(B.check,Y,E,C);G-=E,C+=E,B.length-=E}if(B.length)break A}B.length=0,B.mode=gGA;case gGA:if(B.flags&2048){if(G===0)break A;E=0;do if(q=Y[C+E++],B.head&&q&&B.length<65536)B.head.name+=String.fromCharCode(q);while(q&&E>9&1,B.head.done=!0;A.adler=B.check=0,B.mode=_6;break;case fGA:while(Z<32){if(G===0)break A;G--,F+=Y[C++]<>>=Z&7,Z-=Z&7,B.mode=ox;break}while(Z<3){if(G===0)break A;G--,F+=Y[C++]<>>=1,Z-=1,F&3){case 0:B.mode=bGA;break;case 1:if(hAB(B),B.mode=RR,Q===zR){F>>>=2,Z-=2;break A}break;case 2:B.mode=uGA;break;case 3:A.msg="invalid block type",B.mode=w0}F>>>=2,Z-=2;break;case bGA:F>>>=Z&7,Z-=Z&7;while(Z<32){if(G===0)break A;G--,F+=Y[C++]<>>16^65535)){A.msg="invalid stored block lengths",B.mode=w0;break}if(B.length=F&65535,F=0,Z=0,B.mode=ax,Q===zR)break A;case ax:B.mode=mGA;case mGA:if(E=B.length,E){if(E>G)E=G;if(E>W)E=W;if(E===0)break A;D8.arraySet(J,Y,C,E,X),G-=E,C+=E,W-=E,X+=E,B.length-=E;break}B.mode=_6;break;case uGA:while(Z<14){if(G===0)break A;G--,F+=Y[C++]<>>=5,Z-=5,B.ndist=(F&31)+1,F>>>=5,Z-=5,B.ncode=(F&15)+4,F>>>=4,Z-=4,B.nlen>286||B.ndist>30){A.msg="too many length or distance symbols",B.mode=w0;break}B.have=0,B.mode=dGA;case dGA:while(B.have>>=3,Z-=3}while(B.have<19)B.lens[k[B.have++]]=0;if(B.lencode=B.lendyn,B.lenbits=7,_={bits:B.lenbits},w=uH(RAB,B.lens,0,19,B.lencode,0,B.work,_),B.lenbits=_.bits,w){A.msg="invalid code lengths set",B.mode=w0;break}B.have=0,B.mode=cGA;case cGA:while(B.have>>24,D=V>>>16&255,L=V&65535,H<=Z)break;if(G===0)break A;G--,F+=Y[C++]<>>=H,Z-=H,B.lens[B.have++]=L;else{if(L===16){j=H+2;while(Z>>=H,Z-=H,B.have===0){A.msg="invalid bit length repeat",B.mode=w0;break}q=B.lens[B.have-1],E=3+(F&3),F>>>=2,Z-=2}else if(L===17){j=H+3;while(Z>>=H,Z-=H,q=0,E=3+(F&7),F>>>=3,Z-=3}else{j=H+7;while(Z>>=H,Z-=H,q=0,E=11+(F&127),F>>>=7,Z-=7}if(B.have+E>B.nlen+B.ndist){A.msg="invalid bit length repeat",B.mode=w0;break}while(E--)B.lens[B.have++]=q}}if(B.mode===w0)break;if(B.lens[256]===0){A.msg="invalid code -- missing end-of-block",B.mode=w0;break}if(B.lenbits=9,_={bits:B.lenbits},w=uH(eGA,B.lens,0,B.nlen,B.lencode,0,B.work,_),B.lenbits=_.bits,w){A.msg="invalid literal/lengths set",B.mode=w0;break}if(B.distbits=6,B.distcode=B.distdyn,_={bits:B.distbits},w=uH(A7A,B.lens,B.nlen,B.ndist,B.distcode,0,B.work,_),B.distbits=_.bits,w){A.msg="invalid distances set",B.mode=w0;break}if(B.mode=RR,Q===zR)break A;case RR:B.mode=wR;case wR:if(G>=6&&W>=258){if(A.next_out=X,A.avail_out=W,A.next_in=C,A.avail_in=G,B.hold=F,B.bits=Z,zAB(A,$),X=A.next_out,J=A.output,W=A.avail_out,C=A.next_in,Y=A.input,G=A.avail_in,F=B.hold,Z=B.bits,B.mode===_6)B.back=-1;break}B.back=0;for(;;){if(V=B.lencode[F&(1<>>24,D=V>>>16&255,L=V&65535,H<=Z)break;if(G===0)break A;G--,F+=Y[C++]<>z)],H=V>>>24,D=V>>>16&255,L=V&65535,z+H<=Z)break;if(G===0)break A;G--,F+=Y[C++]<>>=z,Z-=z,B.back+=z}if(F>>>=H,Z-=H,B.back+=H,B.length=L,D===0){B.mode=sGA;break}if(D&32){B.back=-1,B.mode=_6;break}if(D&64){A.msg="invalid literal/length code",B.mode=w0;break}B.extra=D&15,B.mode=lGA;case lGA:if(B.extra){j=B.extra;while(Z>>=B.extra,Z-=B.extra,B.back+=B.extra}B.was=B.length,B.mode=pGA;case pGA:for(;;){if(V=B.distcode[F&(1<>>24,D=V>>>16&255,L=V&65535,H<=Z)break;if(G===0)break A;G--,F+=Y[C++]<>z)],H=V>>>24,D=V>>>16&255,L=V&65535,z+H<=Z)break;if(G===0)break A;G--,F+=Y[C++]<>>=z,Z-=z,B.back+=z}if(F>>>=H,Z-=H,B.back+=H,D&64){A.msg="invalid distance code",B.mode=w0;break}B.offset=L,B.extra=D&15,B.mode=iGA;case iGA:if(B.extra){j=B.extra;while(Z>>=B.extra,Z-=B.extra,B.back+=B.extra}if(B.offset>B.dmax){A.msg="invalid distance too far back",B.mode=w0;break}B.mode=nGA;case nGA:if(W===0)break A;if(E=$-W,B.offset>E){if(E=B.offset-E,E>B.whave){if(B.sane){A.msg="invalid distance too far back",B.mode=w0;break}}if(E>B.wnext)E-=B.wnext,K=B.wsize-E;else K=B.wnext-E;if(E>B.length)E=B.length;I=B.window}else I=J,K=X-B.offset,E=B.length;if(E>W)E=W;W-=E,B.length-=E;do J[X++]=I[K++];while(--E);if(B.length===0)B.mode=wR;break;case sGA:if(W===0)break A;J[X++]=B.length,W--,B.mode=wR;break;case ox:if(B.wrap){while(Z<32){if(G===0)break A;G--,F|=Y[C++]<{F7A.exports={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8}});var $7A=R((IWY,Z7A)=>{function tAB(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}Z7A.exports=tAB});var E7A=R((BQB)=>{var TU=W7A(),dH=S6(),OR=dx(),WY=Yf(),Jf=KR(),eAB=cx(),AQB=$7A(),U7A=Object.prototype.toString;function BZ(A){if(!(this instanceof BZ))return new BZ(A);this.options=dH.assign({chunkSize:16384,windowBits:0,to:""},A||{});var Q=this.options;if(Q.raw&&Q.windowBits>=0&&Q.windowBits<16){if(Q.windowBits=-Q.windowBits,Q.windowBits===0)Q.windowBits=-15}if(Q.windowBits>=0&&Q.windowBits<16&&!(A&&A.windowBits))Q.windowBits+=32;if(Q.windowBits>15&&Q.windowBits<48){if((Q.windowBits&15)===0)Q.windowBits|=15}this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new eAB,this.strm.avail_out=0;var B=TU.inflateInit2(this.strm,Q.windowBits);if(B!==WY.Z_OK)throw Error(Jf[B]);if(this.header=new AQB,TU.inflateGetHeader(this.strm,this.header),Q.dictionary){if(typeof Q.dictionary==="string")Q.dictionary=OR.string2buf(Q.dictionary);else if(U7A.call(Q.dictionary)==="[object ArrayBuffer]")Q.dictionary=new Uint8Array(Q.dictionary);if(Q.raw){if(B=TU.inflateSetDictionary(this.strm,Q.dictionary),B!==WY.Z_OK)throw Error(Jf[B])}}}BZ.prototype.push=function(A,Q){var B=this.strm,Y=this.options.chunkSize,J=this.options.dictionary,C,X,G,W,F,Z=!1;if(this.ended)return!1;if(X=Q===~~Q?Q:Q===!0?WY.Z_FINISH:WY.Z_NO_FLUSH,typeof A==="string")B.input=OR.binstring2buf(A);else if(U7A.call(A)==="[object ArrayBuffer]")B.input=new Uint8Array(A);else B.input=A;B.next_in=0,B.avail_in=B.input.length;do{if(B.avail_out===0)B.output=new dH.Buf8(Y),B.next_out=0,B.avail_out=Y;if(C=TU.inflate(B,WY.Z_NO_FLUSH),C===WY.Z_NEED_DICT&&J)C=TU.inflateSetDictionary(this.strm,J);if(C===WY.Z_BUF_ERROR&&Z===!0)C=WY.Z_OK,Z=!1;if(C!==WY.Z_STREAM_END&&C!==WY.Z_OK)return this.onEnd(C),this.ended=!0,!1;if(B.next_out){if(B.avail_out===0||C===WY.Z_STREAM_END||B.avail_in===0&&(X===WY.Z_FINISH||X===WY.Z_SYNC_FLUSH))if(this.options.to==="string"){if(G=OR.utf8border(B.output,B.next_out),W=B.next_out-G,F=OR.buf2string(B.output,G),B.next_out=W,B.avail_out=Y-W,W)dH.arraySet(B.output,B.output,G,W,0);this.onData(F)}else this.onData(dH.shrinkBuf(B.output,B.next_out))}if(B.avail_in===0&&B.avail_out===0)Z=!0}while((B.avail_in>0||B.avail_out===0)&&C!==WY.Z_STREAM_END);if(C===WY.Z_STREAM_END)X=WY.Z_FINISH;if(X===WY.Z_FINISH)return C=TU.inflateEnd(this.strm),this.onEnd(C),this.ended=!0,C===WY.Z_OK;if(X===WY.Z_SYNC_FLUSH)return this.onEnd(WY.Z_OK),B.avail_out=0,!0;return!0};BZ.prototype.onData=function(A){this.chunks.push(A)};BZ.prototype.onEnd=function(A){if(A===WY.Z_OK)if(this.options.to==="string")this.result=this.chunks.join("");else this.result=dH.flattenChunks(this.chunks);this.chunks=[],this.err=A,this.msg=this.strm.msg};function Cf(A,Q){var B=new BZ(Q);if(B.push(A,!0),B.err)throw B.msg||Jf[B.err];return B.result}function QQB(A,Q){return Q=Q||{},Q.raw=!0,Cf(A,Q)}BQB.Inflate=BZ;BQB.inflate=Cf;BQB.inflateRaw=QQB;BQB.ungzip=Cf});var I7A=R((DWY,V7A)=>{var GQB=S6().assign,WQB=DGA(),FQB=E7A(),ZQB=Yf(),K7A={};GQB(K7A,WQB,FQB,ZQB);V7A.exports=K7A});var H7A=R((NWY,Xf)=>{(function(){var A={};if(typeof Xf=="object")Xf.exports=A;else self.UTIF=A;var Q=I7A();function B(){if(typeof process>"u"||process.env.NODE_ENV=="development")console.log.apply(console,arguments)}(function(Y,J){(function(){var C=function(){function U($){this.message="JPEG error: "+$}return U.prototype=Error(),U.prototype.name="JpegError",U.constructor=U,U}(),X=function(){var U=new Uint8Array([0,1,8,16,9,2,3,10,17,24,32,25,18,11,4,5,12,19,26,33,40,48,41,34,27,20,13,6,7,14,21,28,35,42,49,56,57,50,43,36,29,22,15,23,30,37,44,51,58,59,52,45,38,31,39,46,53,60,61,54,47,55,62,63]),$=4017,E=799,K=3406,I=2276,V=1567,H=3784,D=5793,L=2896;function z(j){if(j==null)j={};if(j.w==null)j.w=-1;this.V=j.n,this.N=j.w}function M(j,k){var T=0,S=[],v,y,h=16,g;while(h>0&&!j[h-1])h--;S.push({children:[],index:0});var m=S[0];for(v=0;v0)m=S.pop();m.index++,S.push(m);while(S.length<=v)S.push(g={children:[],index:0}),m.children[m.index]=g.children,m=g;T++}if(v+10)return b--,x>>b&1;if(x=j[k++],x===255){var zA=j[k++];if(zA){if(zA===220&&n){k+=2;var uA=W(j,k);if(k+=2,uA>0&&uA!==T.s)throw new DNLMarkerError("Found DNL marker (0xFFDC) while parsing scan data",uA)}else if(zA===217){if(n){var MQ=EA*8;if(MQ>0&&MQ>>7}function vA(zA){var uA=zA;while(!0){switch(uA=uA[TA()],typeof uA){case"number":return uA;case"object":continue}throw new C("invalid huffman sequence")}}function mA(zA){var uA=0;while(zA>0)uA=uA<<1|TA(),zA--;return uA}function ZQ(zA){if(zA===1)return TA()===1?1:-1;var uA=mA(zA);if(uA>=1<>4;if(mQ===0){if(yB<15)break;eQ+=16;continue}eQ+=yB;var L0=U[eQ];zA.D[uA+L0]=ZQ(mQ),eQ++}}function CQ(zA,uA){var MQ=vA(zA.J),bQ=MQ===0?0:ZQ(MQ)<0){o--;return}var MQ=y,bQ=h;while(MQ<=bQ){var eQ=vA(zA.i),lB=eQ&15,mQ=eQ>>4;if(lB===0){if(mQ<15){o=mA(mQ)+(1<>4,lB===0)if(eQ<15)o=mA(eQ)+(1<0){for(CA=0;CA0?"unexpected":"excessive";k=QQ.offset}if(QQ.M>=65488&&QQ.M<=65495)k+=2;else break}return k-d}function w(j,k,T){var{$:S,D:v}=j,y,h,g,m,n,i,p,d,x,b,o,GA,VA,EA,UA,CA,QA;if(!S)throw new C("missing required Quantization Table.");for(var KA=0;KA<64;KA+=8){if(x=v[k+KA],b=v[k+KA+1],o=v[k+KA+2],GA=v[k+KA+3],VA=v[k+KA+4],EA=v[k+KA+5],UA=v[k+KA+6],CA=v[k+KA+7],x*=S[KA],(b|o|GA|VA|EA|UA|CA)===0){QA=D*x+512>>10,T[KA]=QA,T[KA+1]=QA,T[KA+2]=QA,T[KA+3]=QA,T[KA+4]=QA,T[KA+5]=QA,T[KA+6]=QA,T[KA+7]=QA;continue}b*=S[KA+1],o*=S[KA+2],GA*=S[KA+3],VA*=S[KA+4],EA*=S[KA+5],UA*=S[KA+6],CA*=S[KA+7],y=D*x+128>>8,h=D*VA+128>>8,g=o,m=UA,n=L*(b-CA)+128>>8,d=L*(b+CA)+128>>8,i=GA<<4,p=EA<<4,y=y+h+1>>1,h=y-h,QA=g*H+m*V+128>>8,g=g*V-m*H+128>>8,m=QA,n=n+p+1>>1,p=n-p,d=d+i+1>>1,i=d-i,y=y+m+1>>1,m=y-m,h=h+g+1>>1,g=h-g,QA=n*I+d*K+2048>>12,n=n*K-d*I+2048>>12,d=QA,QA=i*E+p*$+2048>>12,i=i*$-p*E+2048>>12,p=QA,T[KA]=y+d,T[KA+7]=y-d,T[KA+1]=h+p,T[KA+6]=h-p,T[KA+2]=g+i,T[KA+5]=g-i,T[KA+3]=m+n,T[KA+4]=m-n}for(var HA=0;HA<8;++HA){if(x=T[HA],b=T[HA+8],o=T[HA+16],GA=T[HA+24],VA=T[HA+32],EA=T[HA+40],UA=T[HA+48],CA=T[HA+56],(b|o|GA|VA|EA|UA|CA)===0){if(QA=D*x+8192>>14,QA<-2040)QA=0;else if(QA>=2024)QA=255;else QA=QA+2056>>4;v[k+HA]=QA,v[k+HA+8]=QA,v[k+HA+16]=QA,v[k+HA+24]=QA,v[k+HA+32]=QA,v[k+HA+40]=QA,v[k+HA+48]=QA,v[k+HA+56]=QA;continue}if(y=D*x+2048>>12,h=D*VA+2048>>12,g=o,m=UA,n=L*(b-CA)+2048>>12,d=L*(b+CA)+2048>>12,i=GA,p=EA,y=(y+h+1>>1)+4112,h=y-h,QA=g*H+m*V+2048>>12,g=g*V-m*H+2048>>12,m=QA,n=n+p+1>>1,p=n-p,d=d+i+1>>1,i=d-i,y=y+m+1>>1,m=y-m,h=h+g+1>>1,g=h-g,QA=n*I+d*K+2048>>12,n=n*K-d*I+2048>>12,d=QA,QA=i*E+p*$+2048>>12,i=i*$-p*E+2048>>12,p=QA,x=y+d,CA=y-d,b=h+p,UA=h-p,o=g+i,EA=g-i,GA=m+n,VA=m-n,x<16)x=0;else if(x>=4080)x=255;else x>>=4;if(b<16)b=0;else if(b>=4080)b=255;else b>>=4;if(o<16)o=0;else if(o>=4080)o=255;else o>>=4;if(GA<16)GA=0;else if(GA>=4080)GA=255;else GA>>=4;if(VA<16)VA=0;else if(VA>=4080)VA=255;else VA>>=4;if(EA<16)EA=0;else if(EA>=4080)EA=255;else EA>>=4;if(UA<16)UA=0;else if(UA>=4080)UA=255;else UA>>=4;if(CA<16)CA=0;else if(CA>=4080)CA=255;else CA>>=4;v[k+HA]=x,v[k+HA+8]=b,v[k+HA+16]=o,v[k+HA+24]=GA,v[k+HA+32]=VA,v[k+HA+40]=EA,v[k+HA+48]=UA,v[k+HA+56]=CA}}function P(j,k){var{P:T,c:S}=k,v=new Int16Array(64);for(var y=0;y=S)return null;var y=W(j,k);if(y>=65472&&y<=65534)return{u:null,M:y,offset:k};var h=W(j,v);while(!(h>=65472&&h<=65534)){if(++v>=S)return null;h=W(j,v)}return{u:y.toString(16),M:h,offset:v}}return z.prototype={parse(j,k){if(k==null)k={};var T=k.F,S=0,v=null,y=null,h,g,m=0;function n(){var mQ=W(j,S);S+=2;var yB=S+mQ-2,L0=_(j,yB,S);if(L0&&L0.u)yB=L0.offset;var cJ=j.subarray(S,yB);return S+=cJ.length,cJ}function i(mQ){var yB=Math.ceil(mQ.o/8/mQ.X),L0=Math.ceil(mQ.s/8/mQ.B);for(var cJ=0;cJ>4===0)for(GA=0;GA<64;GA++)CA=U[GA],HA[CA]=j[S++];else if(KA>>4===1)for(GA=0;GA<64;GA++)CA=U[GA],HA[CA]=W(j,S),S+=2;else throw new C("DQT - invalid table spec");p[KA&15]=HA}break;case 65472:case 65473:case 65474:if(h)throw new C("Only single frame JPEGs supported");S+=2,h={},h.G=b===65473,h.Z=b===65474,h.precision=j[S++];var DA=W(j,S),hA,QQ=0,XA=0;S+=2,h.s=T||DA,h.o=W(j,S),S+=2,h.W=[],h._={};var PA=j[S++];for(o=0;o>4,TA=j[S+1]&15;if(QQ>4===0?x:d)[ZQ&15]=M(NQ,SQ)}break;case 65501:S+=2,g=W(j,S),S+=2;break;case 65498:var LA=++m===1&&!T,IA;S+=2;var jA=j[S++],tQ=[];for(o=0;o>4],IA.i=d[KB&15],tQ.push(IA)}var zA=j[S++],uA=j[S++],MQ=j[S++];try{var bQ=q(j,S,h,tQ,g,zA,uA,MQ>>4,MQ&15,LA);S+=bQ}catch(mQ){if(mQ instanceof DNLMarkerError)return this.parse(j,{F:mQ.s});else if(mQ instanceof EOIMarkerError)break A;throw mQ}break;case 65500:S+=4;break;case 65535:if(j[S]!==255)S--;break;default:var eQ=_(j,S-2,S-3);if(eQ&&eQ.u){S=eQ.offset;break}if(S>=j.length-1)break A;throw new C("JpegImage.parse - unknown marker: "+b.toString(16))}b=W(j,S),S+=2}this.width=h.o,this.height=h.s,this.g=v,this.b=y,this.W=[];for(o=0;o>8)+HA[x+1];return UA},get f(){if(this.b)return!!this.b.a;if(this.p===3){if(this.N===0)return!1;else if(this.W[0].index===82&&this.W[1].index===71&&this.W[2].index===66)return!1;return!0}if(this.N===1)return!0;return!1},z:function(k){var T,S,v;for(var y=0,h=k.length;y4)throw new C("Unsupported color mode");var y=this.Y(k,T,v);if(this.p===1&&S){var h=y.length,g=new Uint8ClampedArray(h*3),m=0;for(var n=0;n>24}function W(Z,U){return Z[U]<<8|Z[U+1]}function F(Z,U){return(Z[U]<<24|Z[U+1]<<16|Z[U+2]<<8|Z[U+3])>>>0}Y.JpegDecoder=X})(),Y.encodeImage=function(C,X,G,W){var F={t256:[X],t257:[G],t258:[8,8,8,8],t259:[1],t262:[2],t273:[1000],t277:[4],t278:[G],t279:[X*G*4],t282:[[72,1]],t283:[[72,1]],t284:[1],t286:[[0,1]],t287:[[0,1]],t296:[1],t305:["Photopea (UTIF.js)"],t338:[1]};if(W)for(var Z in W)F[Z]=W[Z];var U=new Uint8Array(Y.encode([F])),$=new Uint8Array(C),E=new Uint8Array(1000+X*G*4);for(var Z=0;Z3)X.t258=X.t258.slice(0,3);var $=X.t277?X.t277[0]:1,E=X.t258?X.t258[0]:1,K=E*$;if(Z==1&&X.t279!=null&&X.t278&&X.t262[0]==32803)K=Math.round(X.t279[0]*8/(X.width*X.t278[0]));if(X.t50885&&X.t50885[0]==4)K=X.t258[0]*3;var I=Math.ceil(X.width*K/8)*8,V=X.t273;if(V==null||X.t322)V=X.t324;var H=X.t279;if(Z==1&&V.length==1)H=[X.height*(I>>>3)];if(H==null||X.t322)H=X.t325;var D=new Uint8Array(X.height*(I>>>3)),L=0;if(X.t322!=null){var z=X.t322[0],M=X.t323[0],N=Math.floor((X.width+z-1)/z),q=Math.floor((X.height+M-1)/M),w=new Uint8Array(Math.ceil(z*M*K/8)|0);console.log("====",N,q);for(var P=0;P>>3,N=Math.ceil(L*z*K/8);if(L==16&&!C.isLE&&C.t33422==null)for(var q=0;q>>8&255}else if(z==3)for(var V=3;V>3^16368,(g[L]|g[L+1]<<8)>>(D&7)&~(-1<>2,N[1]=((i(1)&3)<<12|i(2)<<4|i(3)>>4)&16383,N[2]=i(3)>>2&3,N[3]=(i(3)&3)<<8|i(4),N[4]=i(5)<<2|i(6)>>6,N[5]=(i(6)&63)<<4|i(7)>>4,N[6]=i(7)>>2&3,N[7]=(i(7)&3)<<8|i(8),N[8]=i(9)<<2&1020|i(10)>>6,N[9]=(i(10)<<4|i(11)>>4)&1023,N[10]=i(11)>>2&3,N[11]=(i(11)&3)<<8|i(12),N[12]=(i(13)<<2&1020|i(14)>>6)&1023,N[13]=(i(14)<<4|i(15)>>4)&1023,D+=16,L=0}function d(){N[0]=i(0)<<4|i(1)>>4,N[1]=((i(1)&15)<<8|i(2))&4095,N[2]=i(3)>>6&3,N[3]=(i(3)&63)<<2|i(4)>>6,N[4]=(i(4)&63)<<2|i(5)>>6,N[5]=(i(5)&63)<<2|i(6)>>6,N[6]=i(6)>>4&3,N[7]=(i(6)&15)<<4|i(7)>>4,N[8]=(i(7)&15)<<4|i(8)>>4,N[9]=(i(8)&15)<<4|i(9)>>4,N[10]=i(9)>>2&3,N[11]=(i(9)&3)<<6|i(10)>>2,N[12]=(i(10)&3)<<6|i(11)>>2,N[13]=(i(11)&3)<<6|i(12)>>2,N[14]=i(12)&3,N[15]=i(13),N[16]=i(14),N[17]=i(15),D+=16,L=0}function x(){_[0]=0,_[1]=0,j[0]=0,j[1]=0}if(I==7)throw I;else if(I==6){var b=K==12,o=b?d:p,GA=b?14:11,VA=b?128:512,EA=b?2048:8192,UA=b?16383:65535,CA=b?4095:16383,QA=$/GA,KA=QA*16,HA=b?18:14;for(v=0;vS)PA+=j[k]-S;j[k]=PA}else if(_[k]=PA,PA)j[k]=PA;else PA=j[k];m[T+y++]=PA-15<=UA?PA-15&UA:PA+2147483633>>31&CA}}}}}else if(I==5){var NA=K==12?10:9;for(v=0;v>4),m[T++]=((N[4]&15)<<8)+N[3],m[T++]=16*N[5]+(N[4]>>4),m[T++]=((N[7]&15)<<8)+N[6],m[T++]=16*N[8]+(N[7]>>4),m[T++]=((N[10]&15)<<8)+N[9],m[T++]=16*N[11]+(N[10]>>4),m[T++]=((N[13]&15)<<8)+N[12],m[T++]=16*N[14]+(N[13]>>4);else if(K==14)m[T++]=N[0]+((N[1]&63)<<8),m[T++]=(N[1]>>6)+4*N[2]+((N[3]&15)<<10),m[T++]=(N[3]>>4)+16*N[4]+((N[5]&3)<<12),m[T++]=((N[5]&252)>>2)+(N[6]<<6),m[T++]=N[7]+((N[8]&63)<<8),m[T++]=(N[8]>>6)+4*N[9]+((N[10]&15)<<10),m[T++]=(N[10]>>4)+16*N[11]+((N[12]&3)<<12),m[T++]=((N[12]&252)>>2)+(N[13]<<6),m[T++]=N[14]+((N[15]&63)<<8)}else if(I==4)for(v=0;v>3-n(2);if(j[k]){if(w=n(8),w!=0){if(_[k]-=128<11)_[k]=j[k]<<4|n(4);m[T++]=_[y&1]}else throw I},Y.decode._decodeVC5=function(){var C=[1,0,1,0,2,2,1,1,3,7,1,2,5,25,1,3,6,48,1,4,6,54,1,5,7,111,1,8,7,99,1,6,7,105,12,0,7,107,1,7,8,209,20,0,8,212,1,9,8,220,1,10,9,393,1,11,9,394,32,0,9,416,1,12,9,427,1,13,10,887,1,18,10,784,1,14,10,790,1,15,10,835,60,0,10,852,1,16,10,885,1,17,11,1571,1,19,11,1668,1,20,11,1669,100,0,11,1707,1,21,11,1772,1,22,12,3547,1,29,12,3164,1,24,12,3166,1,25,12,3140,1,23,12,3413,1,26,12,3537,1,27,12,3539,1,28,13,7093,1,35,13,6283,1,30,13,6331,1,31,13,6335,180,0,13,6824,1,32,13,7072,1,33,13,7077,320,0,13,7076,1,34,14,12565,1,36,14,12661,1,37,14,12669,1,38,14,13651,1,39,14,14184,1,40,15,28295,1,46,15,28371,1,47,15,25320,1,42,15,25336,1,43,15,25128,1,41,15,27300,1,44,15,28293,1,45,16,50259,1,48,16,50643,1,49,16,50675,1,50,16,56740,1,53,16,56584,1,51,16,56588,1,52,17,113483,1,61,17,113482,1,60,17,101285,1,55,17,101349,1,56,17,109205,1,57,17,109207,1,58,17,100516,1,54,17,113171,1,59,18,202568,1,62,18,202696,1,63,18,218408,1,64,18,218412,1,65,18,226340,1,66,18,226356,1,67,18,226358,1,68,19,402068,1,69,19,405138,1,70,19,405394,1,71,19,436818,1,72,19,436826,1,73,19,452714,1,75,19,452718,1,76,19,452682,1,74,20,804138,1,77,20,810279,1,78,20,810790,1,79,20,873638,1,80,20,873654,1,81,20,905366,1,82,20,905430,1,83,20,905438,1,84,21,1608278,1,85,21,1620557,1,86,21,1621582,1,87,21,1621583,1,88,21,1747310,1,89,21,1810734,1,90,21,1810735,1,91,21,1810863,1,92,21,1810879,1,93,22,3621725,1,99,22,3621757,1,100,22,3241112,1,94,22,3494556,1,95,22,3494557,1,96,22,3494622,1,97,22,3494623,1,98,23,6482227,1,102,23,6433117,1,101,23,6989117,1,103,23,6989119,1,105,23,6989118,1,104,23,7243449,1,106,23,7243512,1,107,24,13978233,1,111,24,12964453,1,109,24,12866232,1,108,24,14486897,1,113,24,13978232,1,110,24,14486896,1,112,24,14487026,1,114,24,14487027,1,115,25,25732598,1,225,25,25732597,1,189,25,25732596,1,188,25,25732595,1,203,25,25732594,1,202,25,25732593,1,197,25,25732592,1,207,25,25732591,1,169,25,25732590,1,223,25,25732589,1,159,25,25732522,1,235,25,25732579,1,152,25,25732575,1,192,25,25732489,1,179,25,25732573,1,201,25,25732472,1,172,25,25732576,1,149,25,25732488,1,178,25,25732566,1,120,25,25732571,1,219,25,25732577,1,150,25,25732487,1,127,25,25732506,1,211,25,25732548,1,125,25,25732588,1,158,25,25732486,1,247,25,25732467,1,238,25,25732508,1,163,25,25732552,1,228,25,25732603,1,183,25,25732513,1,217,25,25732587,1,168,25,25732520,1,122,25,25732484,1,128,25,25732562,1,249,25,25732505,1,187,25,25732504,1,186,25,25732483,1,136,25,25928905,1,181,25,25732560,1,255,25,25732500,1,230,25,25732482,1,135,25,25732555,1,233,25,25732568,1,222,25,25732583,1,145,25,25732481,1,134,25,25732586,1,167,25,25732521,1,248,25,25732518,1,209,25,25732480,1,243,25,25732512,1,216,25,25732509,1,164,25,25732547,1,140,25,25732479,1,157,25,25732544,1,239,25,25732574,1,191,25,25732564,1,251,25,25732478,1,156,25,25732546,1,139,25,25732498,1,242,25,25732557,1,133,25,25732477,1,162,25,25732515,1,213,25,25732584,1,165,25,25732514,1,212,25,25732476,1,227,25,25732494,1,198,25,25732531,1,236,25,25732530,1,234,25,25732529,1,117,25,25732528,1,215,25,25732527,1,124,25,25732526,1,123,25,25732525,1,254,25,25732524,1,253,25,25732523,1,148,25,25732570,1,218,25,25732580,1,146,25,25732581,1,147,25,25732569,1,224,25,25732533,1,143,25,25732540,1,184,25,25732541,1,185,25,25732585,1,166,25,25732556,1,132,25,25732485,1,129,25,25732563,1,250,25,25732578,1,151,25,25732501,1,119,25,25732502,1,193,25,25732536,1,176,25,25732496,1,245,25,25732553,1,229,25,25732516,1,206,25,25732582,1,144,25,25732517,1,208,25,25732558,1,137,25,25732543,1,241,25,25732466,1,237,25,25732507,1,190,25,25732542,1,240,25,25732551,1,131,25,25732554,1,232,25,25732565,1,252,25,25732475,1,171,25,25732493,1,205,25,25732492,1,204,25,25732491,1,118,25,25732490,1,214,25,25928904,1,180,25,25732549,1,126,25,25732602,1,182,25,25732539,1,175,25,25732545,1,141,25,25732559,1,138,25,25732537,1,177,25,25732534,1,153,25,25732503,1,194,25,25732606,1,160,25,25732567,1,121,25,25732538,1,174,25,25732497,1,246,25,25732550,1,130,25,25732572,1,200,25,25732474,1,170,25,25732511,1,221,25,25732601,1,196,25,25732532,1,142,25,25732519,1,210,25,25732495,1,199,25,25732605,1,155,25,25732535,1,154,25,25732499,1,244,25,25732510,1,220,25,25732600,1,195,25,25732607,1,161,25,25732604,1,231,25,25732473,1,173,25,25732599,1,226,26,51465122,1,116,26,51465123,0,1],X,G,W,F=[3,3,3,3,2,2,2,1,1,1],Z=24576,U=16384,$=8192,E=U|$;function K(q){var w=q[1],P=q[0][w>>>3]>>>7-(w&7)&1;return q[1]++,P}function I(q,w){if(X==null){X={};for(var P=0;P>>1}return q}function H(q,w){return q>>w}function D(q,w,P,_,j,k){w[P]=H(H(11*q[j]-4*q[j+k]+q[j+k+k]+4,3)+q[_],1),w[P+k]=H(H(5*q[j]+4*q[j+k]-q[j+k+k]+4,3)-q[_],1)}function L(q,w,P,_,j,k){var T=q[j-k]-q[j+k],S=q[j],v=q[_];w[P]=H(H(T+4,3)+S+v,1),w[P+k]=H(H(-T+4,3)+S-v,1)}function z(q,w,P,_,j,k){w[P]=H(H(5*q[j]+4*q[j-k]-q[j-k-k]+4,3)+q[_],1),w[P+k]=H(H(11*q[j]-4*q[j-k]+q[j-k-k]+4,3)-q[_],1)}function M(q){return q=q<0?0:q>4095?4095:q,q=W[q]>>>2,q}function N(q,w,P,_,j,k){_=new Uint16Array(_.buffer);var T=Date.now(),S=Y._binBE,v=w+P,y,h,g,m,n,i,p,d,x,b,o,GA,VA,EA,UA,CA,QA,KA;w+=4;var HA=k[0]==1;while(w>>1)*(g>>>1));KA=new Int16Array((h>>>1)*(g>>>1)),G=new Int16Array(1024);for(var NA=0;NA<1024;NA++){var TA=NA-512,vA=Math.abs(TA),y=Math.floor(768*vA*vA*vA/16581375)+vA;G[NA]=Math.sign(TA)*y}W=new Uint16Array(4096);var mA=65535;for(var NA=0;NA<4096;NA++){var ZQ=NA,NQ=mA*(Math.pow(113,ZQ/4095)-1)/112;W[NA]=Math.min(NQ,mA)}}var CQ=QA[p],SQ=V(h,1+F[m]),LA=V(g,1+F[m]);if(m==0)for(var IA=0;IA>>1)+jA]=q[tQ]<<8|q[tQ+1]}else{var IQ=[q,w*8],vQ=[],KB=0,zA=SQ*LA,uA=[0,0],MQ=0,hA=0;while(KB0)vQ[KB++]=hA,MQ--}var bQ=(m-1)%3,eQ=bQ!=1?SQ:0,lB=bQ!=0?LA:0;for(var IA=0;IA>>1)+eQ,yB=IA*SQ;for(var jA=0;jA>>1,L0=SQ*2,cJ=LA*2;for(var IA=0;IA>14-R1*2&3;var fV=z1[uX];if(fV!=0)for(var IA=0;IA>>1)*(h>>>1)+(jA>>>1),NF=bV[tQ],W_=OM[tQ]-2048,LF=PM[tQ]-2048,N4=TM[tQ]-2048,qF=(W_<<1)+NF,MF=(LF<<1)+NF,mV=NF+N4,uV=NF-N4;if(HA)_[IC]=M(mV),_[IC+1]=M(MF),_[IC+h]=M(qF),_[IC+h+1]=M(uV);else _[IC]=M(qF),_[IC+1]=M(mV),_[IC+h]=M(uV),_[IC+h+1]=M(MF)}}w+=PA*4}else if(QQ==16388)w+=PA*4;else if(XA==8192||XA==8448||XA==9216);else throw QQ.toString(16)}}console.log(Date.now()-T)}return N}(),Y.decode._decodeLogLuv32=function(C,X,G,W,F,Z){var U=C.width,$=U*4,E=0,K=new Uint8Array($);while(E>>(D[p]>>>8);for(var L=0;L>>4,F[Z+p+1]=P<<4|j>>>4,F[Z+p+2]=j<<4|_>>>4}return}var k=new Uint16Array(16),T,S,v,y,h,g,m,n,i,p,d,x=new Uint8Array(U+1);for(T=0;T<$;T++){for(var b=0;b>>11,g=15&v>>>22,m=15&v>>>26;for(n=0;n<4&&128<>3))>>>(i&7)&127)<2047)k[p]=2047;i+=7}for(p=0;p<16;p++,S+=2){var w=k[p]<<1;Y.decode._putsF(F,(T*U+S)*E,w<<16-E)}S-=S&1?1:31}}},Y.decode._decodeNikon=function(C,X,G,W,F,Z,U){var $=[[0,0,1,5,1,1,1,1,1,1,2,0,0,0,0,0,0,5,4,3,6,2,7,1,0,8,9,11,10,12],[0,0,1,5,1,1,1,1,1,1,2,0,0,0,0,0,0,57,90,56,39,22,5,4,3,2,1,0,11,12,12],[0,0,1,4,2,3,1,2,0,0,0,0,0,0,0,0,0,5,4,6,3,7,2,8,1,9,0,10,11,12],[0,0,1,4,3,1,1,1,1,1,2,0,0,0,0,0,0,5,6,4,7,8,3,9,2,1,0,10,11,12,13,14],[0,0,1,5,1,1,1,1,1,1,1,2,0,0,0,0,0,8,92,75,58,41,7,6,5,4,3,2,1,0,13,14],[0,0,1,4,2,2,3,1,2,0,0,0,0,0,0,0,0,7,6,8,5,9,4,10,3,11,12,2,0,1,13,14]],E=C.t256[0],K=C.t257[0],I=C.t258[0],V=0,H=0,D=Y.decode._make_decoder,L=Y.decode._getbithuff,z=X[0].exifIFD.makerNote,M=z.t150?z.t150:z.t140,N=0,q=M[N++],w=M[N++];if(q==73||w==88)N+=2110;if(q==70)V=2;if(I==14)V+=3;var P=[[0,0],[0,0]],_=C.isLE?Y._binLE:Y._binBE;for(var v=0;v<2;v++)for(var j=0;j<2;j++)P[v][j]=_.readShort(M,N),N+=2;var k=1<1)T=Math.floor(k/(S-1));if(q==68&&w==32&&T>0)H=_.readShort(M,562);var v,y,h,g,m,n,i=0,p=[0,0],d=D($[V]),x=[W,0,0,0];for(i=y=0;y>>4,n=(L(G,x,g-m,0)<<1)+1<>>1,(n&1<>>3;C[W]|=G>>>16,C[W+1]|=G>>>8,C[W+2]|=G},Y.decode._getbithuff=function(C,X,G,W){var F=0,Z=Y.decode._get_byte,U,$=X[0],E=X[1],K=X[2],I=X[3];if(G==0||K<0)return 0;while(!I&&K>>32-G,W)K-=W[U+1]>>>8,U=W[U+1]&255;else K-=G;if(K<0)throw"e";return X[0]=$,X[1]=E,X[2]=K,X[3]=I,U},Y.decode._make_decoder=function(C){var X,G,W,F,Z,U=[];for(X=16;X!=0&&!C[X];X--);var $=17;U[0]=X;for(W=G=1;G<=X;G++)for(F=0;F>>8;else for(var H=0;H>>8,F[Z+(H<<1)+1]=M[H]&255;else if(z==14||z==12||z==10){var q=16-z;for(var H=0;H1;if(!z){if(X[G]==255&&X[G+1]==F)return{jpegOffset:G};if(w!=null){if(X[G+P]==255&&X[G+P+1]==F)V=G+P;else B("JPEGInterchangeFormat does not point to SOI");if(_==null)B("JPEGInterchangeFormatLength field is missing");else if(P>=H||P+j<=H)B("JPEGInterchangeFormatLength field value is invalid");if(V!=null)return{jpegOffset:V}}}if(T!=null)S=T[0],v=T[1];if(w!=null){if(_!=null)if(j>=2&&P+j<=H){if(X[G+P+j-2]==255&&X[G+P+j-1]==F)D=new Uint8Array(j-2);else D=new Uint8Array(j);for(M=0;M offset to first strip or tile")}if(D==null){var g=0,m=[];m[g++]=255,m[g++]=F;var n=C.t519;if(n==null)throw Error("JPEGQTables tag is missing");for(M=0;M>>8,m[g++]=p&255,m[g++]=M|q<<4;for(N=0;N<16;N++)m[g++]=X[G+i[M]+N];for(N=0;N>>8&255,m[g++]=C.height&255,m[g++]=C.width>>>8&255,m[g++]=C.width&255,m[g++]=y,y==1)m[g++]=1,m[g++]=17,m[g++]=0;else for(M=0;M<3;M++)m[g++]=M+1,m[g++]=M!=0?17:(S&15)<<4|v&15,m[g++]=M;if(h!=null&&h[0]!=0)m[g++]=255,m[g++]=E,m[g++]=0,m[g++]=4,m[g++]=h[0]>>>8&255,m[g++]=h[0]&255;D=new Uint8Array(m)}var d=-1;M=0;while(M>>8&255,D[b++]=C.height&255,D[b++]=C.width>>>8&255,D[b++]=C.width&255,D[b++]=y,y==1)D[b++]=1,D[b++]=17,D[b++]=0;else for(M=0;M<3;M++)D[b++]=M+1,D[b++]=M!=0?17:(S&15)<<4|v&15,D[b++]=M}if(X[H]==255&&X[H+1]==I){var o=X[H+2]<<8|X[H+3];L=new Uint8Array(o+2),L[0]=X[H],L[1]=X[H+1],L[2]=X[H+2],L[3]=X[H+3];for(M=0;M>>8&255,K[V.sofPosition+6]=C.height&255,K[V.sofPosition+7]=C.width>>>8&255,K[V.sofPosition+8]=C.width&255,X[G]!=255||X[G+1]!=SOS)K.set(V.sosMarker,I),I+=sosMarker.length;for(U=0;U=0&&E<128)for(var K=0;K=-127&&E<0){for(var K=0;K<-E+1;K++)U[F]=Z[X],F++;X++}}return F},Y.decode._decodeThunder=function(C,X,G,W,F){var Z=[0,1,0,-1],U=[0,1,2,3,0,-3,-2,-1],$=X+G,E=F*2,K=0;while(X<$){var I=C[X],V=I>>>6,H=I&63;if(X++,V==3)K=H&15,W[E>>>1]|=K<<4*(1-E&1),E++;if(V==0)for(var D=0;D>>1]|=K<<4*(1-E&1),E++;if(V==2)for(var D=0;D<2;D++){var L=H>>>3*(1-D)&7;if(L!=4)K+=U[L],W[E>>>1]|=K<<4*(1-E&1),E++}if(V==1)for(var D=0;D<3;D++){var L=H>>>2*(2-D)&3;if(L!=2)K+=Z[L],W[E>>>1]|=K<<4*(1-E&1),E++}}},Y.decode._dmap={"1":0,"011":1,"000011":2,"0000011":3,"010":-1,"000010":-2,"0000010":-3},Y.decode._lens=function(){var C=function(E,K,I,V){for(var H=0;H>>3>>3]>>>7-(E&7)&1;if(U==2)T=C[E>>>3]>>>(E&7)&1;if(E++,I+=T,_=="H"){if($._lens[w][I]!=null){var S=$._lens[w][I];if(I="",K+=S,S<64){if($._addNtimes(V,K,w),L+=K,w=1-w,K=0,j--,j==0)_=""}}}else{if(I=="0001")I="",$._addNtimes(V,q-L,w),L=q;if(I=="001")I="",_="H",j=2;if($._dmap[I]!=null)z=N+$._dmap[I],$._addNtimes(V,z-L,w),L=z,I="",w=1-w}if(V.length==Z&&_=="")$._writeBits(V,W,F*8+P*k),w=0,P++,L=0,H=$._makeDiff(V),V=[]}},Y.decode._findDiff=function(C,X,G){for(var W=0;W=X&&C[W+1]==G)return C[W]},Y.decode._makeDiff=function(C){var X=[];if(C[0]==1)X.push(0,1);for(var G=1;G>>3>>3]>>>7-(E&7)&1;if(U==2)z=C[E>>>3]>>>(E&7)&1;if(E++,I+=z,K=$._lens[H][I],K!=null){if($._addNtimes(V,K,H),I="",K<64)H=1-H;if(V.length==Z){if($._writeBits(V,W,F*8+D*L),V=[],D++,H=0,(E&7)!=0)E+=8-(E&7);if(K>=64)E+=8}}}},Y.decode._decodeG3=function(C,X,G,W,F,Z,U,$){var E=Y.decode,K=X<<3,I=0,V="",H=[],D=[];for(var L=0;L>>3>>3]>>>7-(K&7)&1;if(U==2)v=C[K>>>3]>>>(K&7)&1;if(K++,V+=v,T){if(E._lens[P][V]!=null){var y=E._lens[P][V];if(V="",I+=y,y<64)E._addNtimes(H,I,P),P=1-P,I=0}}else if(j=="H"){if(E._lens[P][V]!=null){var y=E._lens[P][V];if(V="",I+=y,y<64){if(E._addNtimes(H,I,P),z+=I,P=1-P,I=0,k--,k==0)j=""}}}else{if(V=="0001")V="",E._addNtimes(H,w-z,P),z=w;if(V=="001")V="",j="H",k=2;if(E._dmap[V]!=null)M=q+E._dmap[V],E._addNtimes(H,M-z,P),z=M,V="",P=1-P}if(V.endsWith("000000000001")){if(_>=0)E._writeBits(H,W,F*8+_*S);if($){if(U==1)T=(C[K>>>3]>>>7-(K&7)&1)==1;if(U==2)T=(C[K>>>3]>>>(K&7)&1)==1;K++}V="",P=0,_++,z=0,D=E._makeDiff(H),H=[]}}if(H.length==Z)E._writeBits(H,W,F*8+_*S)},Y.decode._addNtimes=function(C,X,G){for(var W=0;W>>3]|=C[W]<<7-(G+W&7)},Y.decode._decodeLZW=Y.decode._decodeLZW=function(){var C,X,G,W,F=0,Z=0,U=0,$=0,E=function(){var M=C>>>3,N=X[M]<<16|X[M+1]<<8|X[M+2],q=N>>>24-(C&7)-Z&(1<>>----------------");for(var E=0;EX.buffer.byteLength)V=X.buffer.byteLength-L;D=new Uint8Array(X.buffer,L,V)}if(I==2){var z=V<5?G-4:H,M=X[z],N=Math.max(0,Math.min(V-1,X.length-z));if(M<128||N==0)D.push(C.readASCII(X,z,N));else D=new Uint8Array(X.buffer,z,N)}if(I==3)for(var q=0;q4)C.writeUint(G,W,$),M=$;if(V==1||V==7)for(var N=0;N4)z+=z&1,$+=z;W+=4}return[W,$]},Y.toRGBA8=function(C,X){function G(CQ){return CQ<0.0031308?12.92*CQ:1.055*Math.pow(CQ,0.4166666666666667)-0.055}var{width:W,height:F}=C,Z=W*F,U=Z*4,$=C.data,E=new Uint8Array(Z*4),K=C.t262?C.t262[0]:2,I=C.t258?Math.min(32,C.t258[0]):1;if(C.t262==null&&I==1)K=0;var V=C.t277?C.t277[0]:C.t258?C.t258.length:[1,1,3,1,1,4,3][K],H=C.t339?C.t339[0]:null;if(K==1&&I==32&&H!=3)throw"e";var D=Math.ceil(V*I*W/8);if(K==0){X=0.00390625;for(var L=0;L>3)]>>7-(N&7)&1;E[q]=E[q+1]=E[q+2]=(1-w)*255,E[q+3]=255}if(I==4)for(var N=0;N>1)]>>4-4*(N&1)&15;E[q]=E[q+1]=E[q+2]=(15-w)*17,E[q+3]=255}if(I==8)for(var N=0;N>3)]>>7-(N&7)&1;E[q]=E[q+1]=E[q+2]=w*255,E[q+3]=255}if(I==2)for(var N=0;N>2)]>>6-2*(N&3)&3;E[q]=E[q+1]=E[q+2]=w*85,E[q+3]=255}if(I==8)for(var N=0;N>>2)+N,w=_[P];E[q]=E[q+1]=E[q+2]=~~(0.5+255*w),E[q+3]=255}}}else if(K==2)if(I==8){if(V==1)for(var N=0;N=4)for(var N=0;N1&&C.t338&&C.t338[0]!=0;for(var L=0;L>>3)]>>>7-(n&7)&1;else if(I==2)i=$[p+(n>>>2)]>>>6-2*(n&3)&3;else if(I==4)i=$[p+(n>>>1)]>>>4-4*(n&1)&15;else if(I==8)i=$[p+n*V];else throw I;E[q]=h[i]>>8,E[q+1]=h[g+i]>>8,E[q+2]=h[g+g+i]>>8,E[q+3]=m?$[p+n*V+1]:255}}else if(K==5){var d=V>4?1:0;for(var N=0;N>>1),GA=$[x+(QA&1)],KA=$[x+2]-128,HA=$[x+3]-128,DA=GA+((HA>>2)+(HA>>3)+(HA>>5)),hA=GA-((KA>>2)+(KA>>4)+(KA>>5))-((HA>>1)+(HA>>3)+(HA>>4)+(HA>>5)),QQ=GA+(KA+(KA>>1)+(KA>>2)+(KA>>6));E[q]=Math.max(0,Math.min(255,DA)),E[q+1]=Math.max(0,Math.min(255,hA)),E[q+2]=Math.max(0,Math.min(255,QQ)),E[q+3]=255}}}else if(K==32845)for(var L=0;LW)W=$,F=U}Y.decodeImage(C,F,X);var E=Y.toRGBA8(F),K=F.width,I=F.height,V=document.createElement("canvas");V.width=K,V.height=I;var H=V.getContext("2d"),D=new ImageData(new Uint8ClampedArray(E.buffer),K,I);return H.putImageData(D,0,0),V.toDataURL()},Y._binBE={nextZero:function(C,X){while(C[X]!=0)X++;return X},readUshort:function(C,X){return C[X]<<8|C[X+1]},readShort:function(C,X){var G=Y._binBE.ui8;return G[0]=C[X+1],G[1]=C[X+0],Y._binBE.i16[0]},readInt:function(C,X){var G=Y._binBE.ui8;return G[0]=C[X+3],G[1]=C[X+2],G[2]=C[X+1],G[3]=C[X+0],Y._binBE.i32[0]},readUint:function(C,X){var G=Y._binBE.ui8;return G[0]=C[X+3],G[1]=C[X+2],G[2]=C[X+1],G[3]=C[X+0],Y._binBE.ui32[0]},readASCII:function(C,X,G){var W="";for(var F=0;F>8&255,C[X+1]=G&255},writeInt:function(C,X,G){var W=Y._binBE.ui8;Y._binBE.i32[0]=G,C[X+3]=W[0],C[X+2]=W[1],C[X+1]=W[2],C[X+0]=W[3]},writeUint:function(C,X,G){C[X]=G>>24&255,C[X+1]=G>>16&255,C[X+2]=G>>8&255,C[X+3]=G>>0&255},writeASCII:function(C,X,G){for(var W=0;W>8&255},writeInt:function(C,X,G){var W=Y._binBE.ui8;Y._binBE.i32[0]=G,C[X+0]=W[0],C[X+1]=W[1],C[X+2]=W[2],C[X+3]=W[3]},writeUint:function(C,X,G){C[X]=G>>>0&255,C[X+1]=G>>>8&255,C[X+2]=G>>>16&255,C[X+3]=G>>>24&255},writeASCII:Y._binBE.writeASCII},Y._copyTile=function(C,X,G,W,F,Z,U,$){var E=Math.min(X,F-U),K=Math.min(G,Z-$);for(var I=0;I>--S&1,y=q[y+h];T[_]=y}}function Z(M,N,q,w){if(M[N+3]!=255)return 0;if(q==0)return N;for(var P=0;P<2;P++){if(M[N+P]==0)M[N+P]=M.length,M.push(0,0,w,255);var _=Z(M,M[N+P],q-1,w+1);if(_!=0)return _}return 0}function U(M){var{b:N,f:q}=M;while(N<25&&M.a>(N.b-=M)&65535>>16-M}function E(M,N){var q=M[0],w=0,P=255,_=0;if(N.b<16)U(N);var j=N.f>>N.b-8&255;w=M[1][j],P=q[w+3],N.b-=q[w+2];while(P==255)_=N.f>>--N.b&1,w=q[w+_],P=q[w+3];return P}function K(M,N){if(M<32768>>16-N)M+=-(1<>4,n&15]}}else if(y==65476){var p=X+h-2;while(X>>4],_[x[0]]=x.slice(1)}q=G(),X+=2;break}else if(y==65501)P=W();else X+=h-2}var b=w>8?Uint16Array:Uint8Array,o=new b(S*v*T),GA={b:0,f:0,c:q==8,a:X,data:C,d:C.length,e:P};if(GA.c)D(o,v*T,GA,k[0],S);else{var VA=[],EA=0,UA=0;for(var g=0;gEA)EA=QA;if(KA>UA)UA=KA;VA.push(QA*KA)}if(EA!=1||UA!=1){if(T!=3||VA[1]!=1||VA[2]!=1)throw"e";if(EA!=2||UA!=1&&UA!=2)throw"e";var HA=[],DA=0;for(var g=0;g>>1)*QQ+(QA>>>1))*DA,ZQ=(KA&1)*2+(QA&1);o[vA]=TA[mA+ZQ],o[vA+1]=TA[mA+4],o[vA+2]=TA[mA+5]}else for(var QA=0;QA>>1))*DA,ZQ=QA&1;o[vA]=TA[mA+ZQ],o[vA+1]=TA[mA+2],o[vA+2]=TA[mA+3]}}else if(V(o,v*T,GA,k,T,S),P==0)z(o,q,v,S,0,T,T,w);else{var NQ=Math.floor(P/v);for(var KA=0;KA>>1);else if(N==6)i=M[m]+(n-M[m-j]>>>1);else if(N==7)i=n+M[m]>>>1;else throw N;M[g]+=i}}}return L}(),function(){var C=0,X=1,G=2,W=3,F=4,Z=5,U=6,$=7,E=8,K=9,I=10,V=11,H=12,D=13,L=14,z=15,M=16,N=17,q=18;function w(d){var x=Y._binBE.readUshort,b={b:x(d,0),i:d[2],C:d[3],u:d[4],q:x(d,5),k:x(d,7),e:x(d,9),l:x(d,11),s:d[13],d:x(d,14)};if(b.b!=18771||b.i>1||b.q<6||b.q%6||b.e<768||b.e%24||b.l!=768||b.k=b.l||b.s>16||b.s!=b.k/b.l||b.s!=Math.ceil(b.e/b.l)||b.d!=b.q/6||b.u!=12&&b.u!=14&&b.u!=16||b.C!=16&&b.C!=0)throw"Invalid data";if(b.i==0)throw"Not implemented. We need this file!";return b.h=b.C==16,b.m=(b.h?b.l*2/3:b.l>>>1)|0,b.A=b.m+2,b.f=64,b.g=(1<>>6);for(var o=0;o<3;o++)for(var GA=0;GA<41;GA++)x[o][GA]=[b,1];return x}function S(d){for(var x=-1,b=0;!b;x++)if(b=d[d.j]>>>7-d.a&1,d.a++,d.a&=7,!d.a)d.j++;return x}function v(d,x){var b=0,o=8-d.a,GA=d.j,VA=d.a;if(x){if(x>=o)do b<<=o,x-=o,b|=d[d.j]&(1<=8);if(x)b<<=x,o-=x,b|=d[d.j]>>>o&(1<IA&&LA>>2,UA){XA[CA]=jA;return}hA=x.t*x.c[d.g+vA-NA]+x.c[d.g+TA-vA]}else jA=vA>TA&&vA>mA||vA>>2:ZQ+NQ>>>1,hA=x.t*x.c[d.g+vA-TA]+x.c[d.g+TA-ZQ];QQ=CQ(hA);var tQ=S(b);if(tQ>>1):DA>>>1,EA[QQ][0]+=CQ(DA),EA[QQ][1]==d.f)EA[QQ][0]>>>=1,EA[QQ][1]>>>=1;if(EA[QQ][1]++,jA=hA<0?jA-DA:jA+DA,d.i){if(jA<0)jA+=x.w;else if(jA>d.g)jA-=x.w}XA[CA]=jA>=0?Math.min(jA,d.g):0}function g(d,x,b){var o=d[0].length;for(var GA=x;GA<=b;GA++)d[GA][0]=d[GA-1][1],d[GA][o-1]=d[GA-1][o-2]}function m(d){g(d,$,H),g(d,G,F),g(d,z,N)}function n(d,x,b,o,GA,VA,EA,UA,CA,QA,KA,HA,DA){var hA=0,QQ=1,XA=GAF;while(QQ8)h(d,x,b,o,GA,QQ,UA[CA]),h(d,x,b,o,VA,QQ,UA[CA]),QQ+=2}m(o)}function i(d,x,b,o,GA,VA){n(d,x,b,o,G,$,GA,VA,0,0,1,0,8),n(d,x,b,o,E,z,GA,VA,1,0,1,0,8),n(d,x,b,o,W,K,GA,VA,2,1,0,3,0),n(d,x,b,o,I,M,GA,VA,0,0,0,3,2),n(d,x,b,o,F,V,GA,VA,1,0,0,3,2),n(d,x,b,o,H,N,GA,VA,2,1,0,3,0)}function p(d,x,b,o,GA,VA){var EA=VA.length,UA=d.l;if(GA+1==d.s)UA=d.e-GA*d.l;var CA=6*d.e*o+GA*d.l;for(var QA=0;QA<6;QA++){for(var KA=0;KA>>1);else if(HA==2)DA=z+(QA>>>1);else DA=$+QA;var hA=d.h?(KA*2/3&2147483646|KA%3&1)+(KA%3>>>1):KA>>>1;x[CA+KA]=b[DA][hA+1]}CA+=d.e}}Y._decompressRAF=function(d,x){var b=w(d),o=P(d,b),GA=k(b),VA=new Int16Array(b.e*b.q);if(x==null)x=b.h?[[1,1,0,1,1,2],[1,1,2,1,1,0],[2,0,1,0,2,1],[1,1,2,1,1,0],[1,1,0,1,1,2],[0,2,1,2,0,1]]:[[0,1],[3,2]];var EA=[[C,W],[X,F],[Z,V],[U,H],[D,M],[L,N]],UA=[];for(var CA=0;CA{/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh */oBB.read=function(A,Q,B,Y,J){var C,X,G=J*8-Y-1,W=(1<>1,Z=-7,U=B?J-1:0,$=B?-1:1,E=A[Q+U];U+=$,C=E&(1<<-Z)-1,E>>=-Z,Z+=G;for(;Z>0;C=C*256+A[Q+U],U+=$,Z-=8);X=C&(1<<-Z)-1,C>>=-Z,Z+=Y;for(;Z>0;X=X*256+A[Q+U],U+=$,Z-=8);if(C===0)C=1-F;else if(C===W)return X?NaN:(E?-1:1)*(1/0);else X=X+Math.pow(2,Y),C=C-F;return(E?-1:1)*X*Math.pow(2,C-Y)};oBB.write=function(A,Q,B,Y,J,C){var X,G,W,F=C*8-J-1,Z=(1<>1,$=J===23?Math.pow(2,-24)-Math.pow(2,-77):0,E=Y?0:C-1,K=Y?1:-1,I=Q<0||Q===0&&1/Q<0?1:0;if(Q=Math.abs(Q),isNaN(Q)||Q===1/0)G=isNaN(Q)?1:0,X=Z;else{if(X=Math.floor(Math.log(Q)/Math.LN2),Q*(W=Math.pow(2,-X))<1)X--,W*=2;if(X+U>=1)Q+=$/W;else Q+=$*Math.pow(2,1-U);if(Q*W>=2)X++,W/=2;if(X+U>=Z)G=0,X=Z;else if(X+U>=1)G=(Q*W-1)*Math.pow(2,J),X=X+U;else G=Q*Math.pow(2,U-1)*Math.pow(2,J),X=0}for(;J>=8;A[B+E]=G&255,E+=K,G/=256,J-=8);X=X<0;A[B+E]=X&255,E+=K,X/=256,F-=8);A[B+E-K]|=I*128}});var p7A=R((u7A)=>{Object.defineProperty(u7A,"__esModule",{value:!0});u7A.AnsiStringType=u7A.StringType=u7A.BufferType=u7A.Uint8ArrayType=u7A.IgnoreType=u7A.Float80_LE=u7A.Float80_BE=u7A.Float64_LE=u7A.Float64_BE=u7A.Float32_LE=u7A.Float32_BE=u7A.Float16_LE=u7A.Float16_BE=u7A.INT64_BE=u7A.UINT64_BE=u7A.INT64_LE=u7A.UINT64_LE=u7A.INT32_LE=u7A.INT32_BE=u7A.INT24_BE=u7A.INT24_LE=u7A.INT16_LE=u7A.INT16_BE=u7A.INT8=u7A.UINT32_BE=u7A.UINT32_LE=u7A.UINT24_BE=u7A.UINT24_LE=u7A.UINT16_BE=u7A.UINT16_LE=u7A.UINT8=void 0;var _7=h7A();function iQ(A){return new DataView(A.buffer,A.byteOffset)}u7A.UINT8={len:1,get(A,Q){return iQ(A).getUint8(Q)},put(A,Q,B){return iQ(A).setUint8(Q,B),Q+1}};u7A.UINT16_LE={len:2,get(A,Q){return iQ(A).getUint16(Q,!0)},put(A,Q,B){return iQ(A).setUint16(Q,B,!0),Q+2}};u7A.UINT16_BE={len:2,get(A,Q){return iQ(A).getUint16(Q)},put(A,Q,B){return iQ(A).setUint16(Q,B),Q+2}};u7A.UINT24_LE={len:3,get(A,Q){let B=iQ(A);return B.getUint8(Q)+(B.getUint16(Q+1,!0)<<8)},put(A,Q,B){let Y=iQ(A);return Y.setUint8(Q,B&255),Y.setUint16(Q+1,B>>8,!0),Q+3}};u7A.UINT24_BE={len:3,get(A,Q){let B=iQ(A);return(B.getUint16(Q)<<8)+B.getUint8(Q+2)},put(A,Q,B){let Y=iQ(A);return Y.setUint16(Q,B>>8),Y.setUint8(Q+2,B&255),Q+3}};u7A.UINT32_LE={len:4,get(A,Q){return iQ(A).getUint32(Q,!0)},put(A,Q,B){return iQ(A).setUint32(Q,B,!0),Q+4}};u7A.UINT32_BE={len:4,get(A,Q){return iQ(A).getUint32(Q)},put(A,Q,B){return iQ(A).setUint32(Q,B),Q+4}};u7A.INT8={len:1,get(A,Q){return iQ(A).getInt8(Q)},put(A,Q,B){return iQ(A).setInt8(Q,B),Q+1}};u7A.INT16_BE={len:2,get(A,Q){return iQ(A).getInt16(Q)},put(A,Q,B){return iQ(A).setInt16(Q,B),Q+2}};u7A.INT16_LE={len:2,get(A,Q){return iQ(A).getInt16(Q,!0)},put(A,Q,B){return iQ(A).setInt16(Q,B,!0),Q+2}};u7A.INT24_LE={len:3,get(A,Q){let B=u7A.UINT24_LE.get(A,Q);return B>8388607?B-16777216:B},put(A,Q,B){let Y=iQ(A);return Y.setUint8(Q,B&255),Y.setUint16(Q+1,B>>8,!0),Q+3}};u7A.INT24_BE={len:3,get(A,Q){let B=u7A.UINT24_BE.get(A,Q);return B>8388607?B-16777216:B},put(A,Q,B){let Y=iQ(A);return Y.setUint16(Q,B>>8),Y.setUint8(Q+2,B&255),Q+3}};u7A.INT32_BE={len:4,get(A,Q){return iQ(A).getInt32(Q)},put(A,Q,B){return iQ(A).setInt32(Q,B),Q+4}};u7A.INT32_LE={len:4,get(A,Q){return iQ(A).getInt32(Q,!0)},put(A,Q,B){return iQ(A).setInt32(Q,B,!0),Q+4}};u7A.UINT64_LE={len:8,get(A,Q){return iQ(A).getBigUint64(Q,!0)},put(A,Q,B){return iQ(A).setBigUint64(Q,B,!0),Q+8}};u7A.INT64_LE={len:8,get(A,Q){return iQ(A).getBigInt64(Q,!0)},put(A,Q,B){return iQ(A).setBigInt64(Q,B,!0),Q+8}};u7A.UINT64_BE={len:8,get(A,Q){return iQ(A).getBigUint64(Q)},put(A,Q,B){return iQ(A).setBigUint64(Q,B),Q+8}};u7A.INT64_BE={len:8,get(A,Q){return iQ(A).getBigInt64(Q)},put(A,Q,B){return iQ(A).setBigInt64(Q,B),Q+8}};u7A.Float16_BE={len:2,get(A,Q){return _7.read(A,Q,!1,10,this.len)},put(A,Q,B){return _7.write(A,B,Q,!1,10,this.len),Q+this.len}};u7A.Float16_LE={len:2,get(A,Q){return _7.read(A,Q,!0,10,this.len)},put(A,Q,B){return _7.write(A,B,Q,!0,10,this.len),Q+this.len}};u7A.Float32_BE={len:4,get(A,Q){return iQ(A).getFloat32(Q)},put(A,Q,B){return iQ(A).setFloat32(Q,B),Q+4}};u7A.Float32_LE={len:4,get(A,Q){return iQ(A).getFloat32(Q,!0)},put(A,Q,B){return iQ(A).setFloat32(Q,B,!0),Q+4}};u7A.Float64_BE={len:8,get(A,Q){return iQ(A).getFloat64(Q)},put(A,Q,B){return iQ(A).setFloat64(Q,B),Q+8}};u7A.Float64_LE={len:8,get(A,Q){return iQ(A).getFloat64(Q,!0)},put(A,Q,B){return iQ(A).setFloat64(Q,B,!0),Q+8}};u7A.Float80_BE={len:10,get(A,Q){return _7.read(A,Q,!1,63,this.len)},put(A,Q,B){return _7.write(A,B,Q,!1,63,this.len),Q+this.len}};u7A.Float80_LE={len:10,get(A,Q){return _7.read(A,Q,!0,63,this.len)},put(A,Q,B){return _7.write(A,B,Q,!0,63,this.len),Q+this.len}};class x7A{constructor(A){this.len=A}get(A,Q){}}u7A.IgnoreType=x7A;class f7A{constructor(A){this.len=A}get(A,Q){return A.subarray(Q,Q+this.len)}}u7A.Uint8ArrayType=f7A;class b7A{constructor(A){this.len=A}get(A,Q){return Buffer.from(A.subarray(Q,Q+this.len))}}u7A.BufferType=b7A;class m7A{constructor(A,Q){this.len=A,this.encoding=Q}get(A,Q){return Buffer.from(A).toString(this.encoding,Q,Q+this.len)}}u7A.StringType=m7A;class k7{constructor(A){this.len=A}static decode(A,Q,B){let Y="";for(let J=Q;J>10)+55296,(A&1023)+56320)}static singleByteDecoder(A){if(k7.inRange(A,0,127))return A;let Q=k7.windows1252[A-128];if(Q===null)throw Error("invaliding encoding");return Q}get(A,Q=0){return k7.decode(A,Q,Q+this.len)}}u7A.AnsiStringType=k7;k7.windows1252=[8364,129,8218,402,8222,8230,8224,8225,710,8240,352,8249,338,141,381,143,144,8216,8217,8220,8221,8226,8211,8212,732,8482,353,8250,339,157,382,376,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255]});var yR=R((n7A)=>{Object.defineProperty(n7A,"__esModule",{value:!0});n7A.EndOfStreamError=n7A.defaultMessages=void 0;n7A.defaultMessages="End-Of-Stream";class i7A extends Error{constructor(){super(n7A.defaultMessages)}}n7A.EndOfStreamError=i7A});var e7A=R((o7A)=>{Object.defineProperty(o7A,"__esModule",{value:!0});o7A.Deferred=void 0;class a7A{constructor(){this.resolve=()=>null,this.reject=()=>null,this.promise=new Promise((A,Q)=>{this.reject=Q,this.resolve=A})}}o7A.Deferred=a7A});var YWA=R((Kf)=>{Object.defineProperty(Kf,"__esModule",{value:!0});Kf.StreamReader=Kf.EndOfStreamError=void 0;var AWA=yR(),P0B=e7A(),T0B=yR();Object.defineProperty(Kf,"EndOfStreamError",{enumerable:!0,get:function(){return T0B.EndOfStreamError}});var S0B=1048576;class QWA{constructor(A){if(this.s=A,this.deferred=null,this.endOfStream=!1,this.peekQueue=[],!A.read||!A.once)throw Error("Expected an instance of stream.Readable");this.s.once("end",()=>this.reject(new AWA.EndOfStreamError)),this.s.once("error",(Q)=>this.reject(Q)),this.s.once("close",()=>this.reject(Error("Stream closed")))}async peek(A,Q,B){let Y=await this.read(A,Q,B);return this.peekQueue.push(A.subarray(Q,Q+Y)),Y}async read(A,Q,B){if(B===0)return 0;if(this.peekQueue.length===0&&this.endOfStream)throw new AWA.EndOfStreamError;let Y=B,J=0;while(this.peekQueue.length>0&&Y>0){let C=this.peekQueue.pop();if(!C)throw Error("peekData should be defined");let X=Math.min(C.length,Y);if(A.set(C.subarray(0,X),Q+J),J+=X,Y-=X,X0&&!this.endOfStream){let C=Math.min(Y,S0B),X=await this.readFromStream(A,Q+J,C);if(J+=X,X{this.readDeferred(J)}),J.deferred.promise}}readDeferred(A){let Q=this.s.read(A.length);if(Q)A.buffer.set(Q,A.offset),A.deferred.resolve(Q.length),this.deferred=null;else this.s.once("readable",()=>{this.readDeferred(A)})}reject(A){if(this.endOfStream=!0,this.deferred)this.deferred.reject(A),this.deferred=null}}Kf.StreamReader=QWA});var oH=R((gR)=>{Object.defineProperty(gR,"__esModule",{value:!0});gR.StreamReader=gR.EndOfStreamError=void 0;var k0B=yR();Object.defineProperty(gR,"EndOfStreamError",{enumerable:!0,get:function(){return k0B.EndOfStreamError}});var _0B=YWA();Object.defineProperty(gR,"StreamReader",{enumerable:!0,get:function(){return _0B.StreamReader}})});var Vf=R((CWA)=>{Object.defineProperty(CWA,"__esModule",{value:!0});CWA.AbstractTokenizer=void 0;var hR=oH();class JWA{constructor(A){this.position=0,this.numBuffer=new Uint8Array(8),this.fileInfo=A?A:{}}async readToken(A,Q=this.position){let B=Buffer.alloc(A.len);if(await this.readBuffer(B,{position:Q})Q)return this.position+=Q,Q}return this.position+=A,A}async close(){}normalizeOptions(A,Q){if(Q&&Q.position!==void 0&&Q.position{Object.defineProperty(WWA,"__esModule",{value:!0});WWA.ReadStreamTokenizer=void 0;var y0B=Vf(),xR=oH(),g0B=256000;class GWA extends y0B.AbstractTokenizer{constructor(A,Q){super(Q);this.streamReader=new xR.StreamReader(A)}async getFileInfo(){return this.fileInfo}async readBuffer(A,Q){let B=this.normalizeOptions(A,Q),Y=B.position-this.position;if(Y>0)return await this.ignore(Y),this.readBuffer(A,Q);else if(Y<0)throw Error("`options.position` must be equal or greater than `tokenizer.position`");if(B.length===0)return 0;let J=await this.streamReader.read(A,B.offset,B.length);if(this.position+=J,(!Q||!Q.mayBeLess)&&J0){let C=new Uint8Array(B.length+J);return Y=await this.peekBuffer(C,{mayBeLess:B.mayBeLess}),A.set(C.subarray(J),B.offset),Y-J}else if(J<0)throw Error("Cannot peek from a negative offset in a stream")}if(B.length>0){try{Y=await this.streamReader.peek(A,B.offset,B.length)}catch(J){if(Q&&Q.mayBeLess&&J instanceof xR.EndOfStreamError)return 0;throw J}if(!B.mayBeLess&&Y{Object.defineProperty(UWA,"__esModule",{value:!0});UWA.BufferTokenizer=void 0;var h0B=oH(),x0B=Vf();class $WA extends x0B.AbstractTokenizer{constructor(A,Q){super(Q);this.uint8Array=A,this.fileInfo.size=this.fileInfo.size?this.fileInfo.size:A.length}async readBuffer(A,Q){if(Q&&Q.position){if(Q.position{Object.defineProperty(If,"__esModule",{value:!0});If.fromBuffer=If.fromStream=If.EndOfStreamError=void 0;var f0B=ZWA(),b0B=KWA(),m0B=oH();Object.defineProperty(If,"EndOfStreamError",{enumerable:!0,get:function(){return m0B.EndOfStreamError}});function u0B(A,Q){return Q=Q?Q:{},new f0B.ReadStreamTokenizer(A,Q)}If.fromStream=u0B;function d0B(A,Q){return new b0B.BufferTokenizer(A,Q)}If.fromBuffer=d0B});var HWA=R((l0B)=>{l0B.stringToBytes=(A)=>[...A].map((Q)=>Q.charCodeAt(0));l0B.tarHeaderChecksumMatches=(A,Q=0)=>{let B=parseInt(A.toString("utf8",148,154).replace(/\0.*$/,"").trim(),8);if(isNaN(B))return!1;let Y=256;for(let J=Q;J{return A[Q+3]&127|A[Q+2]<<7|A[Q+1]<<14|A[Q]<<21},len:4}});var NWA=R((MFY,DWA)=>{DWA.exports={extensions:["jpg","png","apng","gif","webp","flif","xcf","cr2","cr3","orf","arw","dng","nef","rw2","raf","tif","bmp","icns","jxr","psd","indd","zip","tar","rar","gz","bz2","7z","dmg","mp4","mid","mkv","webm","mov","avi","mpg","mp2","mp3","m4a","oga","ogg","ogv","opus","flac","wav","spx","amr","pdf","epub","exe","swf","rtf","wasm","woff","woff2","eot","ttf","otf","ico","flv","ps","xz","sqlite","nes","crx","xpi","cab","deb","ar","rpm","Z","lz","cfb","mxf","mts","blend","bpg","docx","pptx","xlsx","3gp","3g2","jp2","jpm","jpx","mj2","aif","qcp","odt","ods","odp","xml","mobi","heic","cur","ktx","ape","wv","dcm","ics","glb","pcap","dsf","lnk","alias","voc","ac3","m4v","m4p","m4b","f4v","f4p","f4b","f4a","mie","asf","ogm","ogx","mpc","arrow","shp","aac","mp1","it","s3m","xm","ai","skp","avif","eps","lzh","pgp","asar","stl","chm","3mf","zst","jxl","vcf"],mimeTypes:["image/jpeg","image/png","image/gif","image/webp","image/flif","image/x-xcf","image/x-canon-cr2","image/x-canon-cr3","image/tiff","image/bmp","image/vnd.ms-photo","image/vnd.adobe.photoshop","application/x-indesign","application/epub+zip","application/x-xpinstall","application/vnd.oasis.opendocument.text","application/vnd.oasis.opendocument.spreadsheet","application/vnd.oasis.opendocument.presentation","application/vnd.openxmlformats-officedocument.wordprocessingml.document","application/vnd.openxmlformats-officedocument.presentationml.presentation","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet","application/zip","application/x-tar","application/x-rar-compressed","application/gzip","application/x-bzip2","application/x-7z-compressed","application/x-apple-diskimage","application/x-apache-arrow","video/mp4","audio/midi","video/x-matroska","video/webm","video/quicktime","video/vnd.avi","audio/vnd.wave","audio/qcelp","audio/x-ms-asf","video/x-ms-asf","application/vnd.ms-asf","video/mpeg","video/3gpp","audio/mpeg","audio/mp4","audio/opus","video/ogg","audio/ogg","application/ogg","audio/x-flac","audio/ape","audio/wavpack","audio/amr","application/pdf","application/x-msdownload","application/x-shockwave-flash","application/rtf","application/wasm","font/woff","font/woff2","application/vnd.ms-fontobject","font/ttf","font/otf","image/x-icon","video/x-flv","application/postscript","application/eps","application/x-xz","application/x-sqlite3","application/x-nintendo-nes-rom","application/x-google-chrome-extension","application/vnd.ms-cab-compressed","application/x-deb","application/x-unix-archive","application/x-rpm","application/x-compress","application/x-lzip","application/x-cfb","application/x-mie","application/mxf","video/mp2t","application/x-blender","image/bpg","image/jp2","image/jpx","image/jpm","image/mj2","audio/aiff","application/xml","application/x-mobipocket-ebook","image/heif","image/heif-sequence","image/heic","image/heic-sequence","image/icns","image/ktx","application/dicom","audio/x-musepack","text/calendar","text/vcard","model/gltf-binary","application/vnd.tcpdump.pcap","audio/x-dsf","application/x.ms.shortcut","application/x.apple.alias","audio/x-voc","audio/vnd.dolby.dd-raw","audio/x-m4a","image/apng","image/x-olympus-orf","image/x-sony-arw","image/x-adobe-dng","image/x-nikon-nef","image/x-panasonic-rw2","image/x-fujifilm-raf","video/x-m4v","video/3gpp2","application/x-esri-shape","audio/aac","audio/x-it","audio/x-s3m","audio/x-xm","video/MP1S","video/MP2P","application/vnd.sketchup.skp","image/avif","application/x-lzh-compressed","application/pgp-encrypted","application/x-asar","model/stl","application/vnd.ms-htmlhelp","model/3mf","image/jxl","application/zstd"]}});var zWA=R((MWA,Df)=>{var h6=p7A(),fR=IWA(),{stringToBytes:s0B,tarHeaderChecksumMatches:r0B,uint32SyncSafeToken:a0B}=HWA(),LWA=NWA(),zFY=4100;async function o0B(A){let Q=await fR.fromStream(A);try{return await bR(Q)}finally{await Q.close()}}async function qWA(A){if(!(A instanceof Uint8Array||A instanceof ArrayBuffer||Buffer.isBuffer(A)))throw TypeError(`Expected the \`input\` argument to be of type \`Uint8Array\` or \`Buffer\` or \`ArrayBuffer\`, got \`${typeof A}\``);let Q=A instanceof Buffer?A:Buffer.from(A);if(!(Q&&Q.length>1))return;let B=fR.fromBuffer(Q);return bR(B)}function o1(A,Q,B){B={offset:0,...B};for(let[Y,J]of Q.entries())if(B.mask){if(J!==(B.mask[Y]&A[Y+B.offset]))return!1}else if(J!==A[Y+B.offset])return!1;return!0}async function bR(A){try{return t0B(A)}catch(Q){if(!(Q instanceof fR.EndOfStreamError))throw Q}}async function t0B(A){let Q=Buffer.alloc(4100),B=12,Y=(C,X)=>o1(Q,C,X),J=(C,X)=>Y(s0B(C),X);if(!A.fileInfo.size)A.fileInfo.size=Number.MAX_SAFE_INTEGER;if(await A.peekBuffer(Q,{length:B,mayBeLess:!0}),Y([66,77]))return{ext:"bmp",mime:"image/bmp"};if(Y([11,119]))return{ext:"ac3",mime:"audio/vnd.dolby.dd-raw"};if(Y([120,1]))return{ext:"dmg",mime:"application/x-apple-diskimage"};if(Y([77,90]))return{ext:"exe",mime:"application/x-msdownload"};if(Y([37,33])){if(await A.peekBuffer(Q,{length:24,mayBeLess:!0}),J("PS-Adobe-",{offset:2})&&J(" EPSF-",{offset:14}))return{ext:"eps",mime:"application/eps"};return{ext:"ps",mime:"application/postscript"}}if(Y([31,160])||Y([31,157]))return{ext:"Z",mime:"application/x-compress"};if(Y([255,216,255]))return{ext:"jpg",mime:"image/jpeg"};if(Y([73,73,188]))return{ext:"jxr",mime:"image/vnd.ms-photo"};if(Y([31,139,8]))return{ext:"gz",mime:"application/gzip"};if(Y([66,90,104]))return{ext:"bz2",mime:"application/x-bzip2"};if(J("ID3")){await A.ignore(6);let C=await A.readToken(a0B);if(A.position+C>A.fileInfo.size)return{ext:"mp3",mime:"audio/mpeg"};return await A.ignore(C),bR(A)}if(J("MP+"))return{ext:"mpc",mime:"audio/x-musepack"};if((Q[0]===67||Q[0]===70)&&Y([87,83],{offset:1}))return{ext:"swf",mime:"application/x-shockwave-flash"};if(Y([71,73,70]))return{ext:"gif",mime:"image/gif"};if(J("FLIF"))return{ext:"flif",mime:"image/flif"};if(J("8BPS"))return{ext:"psd",mime:"image/vnd.adobe.photoshop"};if(J("WEBP",{offset:8}))return{ext:"webp",mime:"image/webp"};if(J("MPCK"))return{ext:"mpc",mime:"audio/x-musepack"};if(J("FORM"))return{ext:"aif",mime:"audio/aiff"};if(J("icns",{offset:0}))return{ext:"icns",mime:"image/icns"};if(Y([80,75,3,4])){try{while(A.position+30=0?X:Q.length)}else await A.ignore(C.compressedSize)}}catch(C){if(!(C instanceof fR.EndOfStreamError))throw C}return{ext:"zip",mime:"application/zip"}}if(J("OggS")){await A.ignore(28);let C=Buffer.alloc(8);if(await A.readBuffer(C),o1(C,[79,112,117,115,72,101,97,100]))return{ext:"opus",mime:"audio/opus"};if(o1(C,[128,116,104,101,111,114,97]))return{ext:"ogv",mime:"video/ogg"};if(o1(C,[1,118,105,100,101,111,0]))return{ext:"ogm",mime:"video/ogg"};if(o1(C,[127,70,76,65,67]))return{ext:"oga",mime:"audio/ogg"};if(o1(C,[83,112,101,101,120,32,32]))return{ext:"spx",mime:"audio/ogg"};if(o1(C,[1,118,111,114,98,105,115]))return{ext:"ogg",mime:"audio/ogg"};return{ext:"ogx",mime:"application/ogg"}}if(Y([80,75])&&(Q[2]===3||Q[2]===5||Q[2]===7)&&(Q[3]===4||Q[3]===6||Q[3]===8))return{ext:"zip",mime:"application/zip"};if(J("ftyp",{offset:4})&&(Q[8]&96)!==0){let C=Q.toString("binary",8,12).replace("\x00"," ").trim();switch(C){case"avif":return{ext:"avif",mime:"image/avif"};case"mif1":return{ext:"heic",mime:"image/heif"};case"msf1":return{ext:"heic",mime:"image/heif-sequence"};case"heic":case"heix":return{ext:"heic",mime:"image/heic"};case"hevc":case"hevx":return{ext:"heic",mime:"image/heic-sequence"};case"qt":return{ext:"mov",mime:"video/quicktime"};case"M4V":case"M4VH":case"M4VP":return{ext:"m4v",mime:"video/x-m4v"};case"M4P":return{ext:"m4p",mime:"video/mp4"};case"M4B":return{ext:"m4b",mime:"audio/mp4"};case"M4A":return{ext:"m4a",mime:"audio/x-m4a"};case"F4V":return{ext:"f4v",mime:"video/mp4"};case"F4P":return{ext:"f4p",mime:"video/mp4"};case"F4A":return{ext:"f4a",mime:"audio/mp4"};case"F4B":return{ext:"f4b",mime:"audio/mp4"};case"crx":return{ext:"cr3",mime:"image/x-canon-cr3"};default:if(C.startsWith("3g")){if(C.startsWith("3g2"))return{ext:"3g2",mime:"video/3gpp2"};return{ext:"3gp",mime:"video/3gpp"}}return{ext:"mp4",mime:"video/mp4"}}}if(J("MThd"))return{ext:"mid",mime:"audio/midi"};if(J("wOFF")&&(Y([0,1,0,0],{offset:4})||J("OTTO",{offset:4})))return{ext:"woff",mime:"font/woff"};if(J("wOF2")&&(Y([0,1,0,0],{offset:4})||J("OTTO",{offset:4})))return{ext:"woff2",mime:"font/woff2"};if(Y([212,195,178,161])||Y([161,178,195,212]))return{ext:"pcap",mime:"application/vnd.tcpdump.pcap"};if(J("DSD "))return{ext:"dsf",mime:"audio/x-dsf"};if(J("LZIP"))return{ext:"lz",mime:"application/x-lzip"};if(J("fLaC"))return{ext:"flac",mime:"audio/x-flac"};if(Y([66,80,71,251]))return{ext:"bpg",mime:"image/bpg"};if(J("wvpk"))return{ext:"wv",mime:"audio/wavpack"};if(J("%PDF")){await A.ignore(1350);let C=10485760,X=Buffer.alloc(Math.min(C,A.fileInfo.size));if(await A.readBuffer(X,{mayBeLess:!0}),X.includes(Buffer.from("AIPrivateData")))return{ext:"ai",mime:"application/postscript"};return{ext:"pdf",mime:"application/pdf"}}if(Y([0,97,115,109]))return{ext:"wasm",mime:"application/wasm"};if(Y([73,73,42,0])){if(J("CR",{offset:8}))return{ext:"cr2",mime:"image/x-canon-cr2"};if(Y([28,0,254,0],{offset:8})||Y([31,0,11,0],{offset:8}))return{ext:"nef",mime:"image/x-nikon-nef"};if(Y([8,0,0,0],{offset:4})&&(Y([45,0,254,0],{offset:8})||Y([39,0,254,0],{offset:8})))return{ext:"dng",mime:"image/x-adobe-dng"};if(Q=Buffer.alloc(24),await A.peekBuffer(Q),(Y([16,251,134,1],{offset:4})||Y([8,0,0,0],{offset:4}))&&Y([0,254,0,4,0,1,0,0,0,1,0,0,0,3,1],{offset:9}))return{ext:"arw",mime:"image/x-sony-arw"};return{ext:"tif",mime:"image/tiff"}}if(Y([77,77,0,42]))return{ext:"tif",mime:"image/tiff"};if(J("MAC "))return{ext:"ape",mime:"audio/ape"};if(Y([26,69,223,163])){async function C(){let Z=await A.peekNumber(h6.UINT8),U=128,$=0;while((Z&U)===0&&U!==0)++$,U>>=1;let E=Buffer.alloc($+1);return await A.readBuffer(E),E}async function X(){let Z=await C(),U=await C();U[0]^=128>>U.length-1;let $=Math.min(6,U.length);return{id:Z.readUIntBE(0,Z.length),len:U.readUIntBE(U.length-$,$)}}async function G(Z,U){while(U>0){let $=await X();if($.id===17026)return A.readToken(new h6.StringType($.len,"utf-8"));await A.ignore($.len),--U}}let W=await X();switch(await G(1,W.len)){case"webm":return{ext:"webm",mime:"video/webm"};case"matroska":return{ext:"mkv",mime:"video/x-matroska"};default:return}}if(Y([82,73,70,70])){if(Y([65,86,73],{offset:8}))return{ext:"avi",mime:"video/vnd.avi"};if(Y([87,65,86,69],{offset:8}))return{ext:"wav",mime:"audio/vnd.wave"};if(Y([81,76,67,77],{offset:8}))return{ext:"qcp",mime:"audio/qcelp"}}if(J("SQLi"))return{ext:"sqlite",mime:"application/x-sqlite3"};if(Y([78,69,83,26]))return{ext:"nes",mime:"application/x-nintendo-nes-rom"};if(J("Cr24"))return{ext:"crx",mime:"application/x-google-chrome-extension"};if(J("MSCF")||J("ISc("))return{ext:"cab",mime:"application/vnd.ms-cab-compressed"};if(Y([237,171,238,219]))return{ext:"rpm",mime:"application/x-rpm"};if(Y([197,208,211,198]))return{ext:"eps",mime:"application/eps"};if(Y([40,181,47,253]))return{ext:"zst",mime:"application/zstd"};if(Y([79,84,84,79,0]))return{ext:"otf",mime:"font/otf"};if(J("#!AMR"))return{ext:"amr",mime:"audio/amr"};if(J("{\\rtf"))return{ext:"rtf",mime:"application/rtf"};if(Y([70,76,86,1]))return{ext:"flv",mime:"video/x-flv"};if(J("IMPM"))return{ext:"it",mime:"audio/x-it"};if(J("-lh0-",{offset:2})||J("-lh1-",{offset:2})||J("-lh2-",{offset:2})||J("-lh3-",{offset:2})||J("-lh4-",{offset:2})||J("-lh5-",{offset:2})||J("-lh6-",{offset:2})||J("-lh7-",{offset:2})||J("-lzs-",{offset:2})||J("-lz4-",{offset:2})||J("-lz5-",{offset:2})||J("-lhd-",{offset:2}))return{ext:"lzh",mime:"application/x-lzh-compressed"};if(Y([0,0,1,186])){if(Y([33],{offset:4,mask:[241]}))return{ext:"mpg",mime:"video/MP1S"};if(Y([68],{offset:4,mask:[196]}))return{ext:"mpg",mime:"video/MP2P"}}if(J("ITSF"))return{ext:"chm",mime:"application/vnd.ms-htmlhelp"};if(Y([253,55,122,88,90,0]))return{ext:"xz",mime:"application/x-xz"};if(J("")){if(await A.ignore(8),await A.readToken(new h6.StringType(13,"ascii"))==="debian-binary")return{ext:"deb",mime:"application/x-deb"};return{ext:"ar",mime:"application/x-unix-archive"}}if(Y([137,80,78,71,13,10,26,10])){await A.ignore(8);async function C(){return{length:await A.readToken(h6.INT32_BE),type:await A.readToken(new h6.StringType(4,"binary"))}}do{let X=await C();if(X.length<0)return;switch(X.type){case"IDAT":return{ext:"png",mime:"image/png"};case"acTL":return{ext:"apng",mime:"image/apng"};default:await A.ignore(X.length+4)}}while(A.position+8=16){let C=Q.readUInt32LE(12);if(C>12&&Q.length>=C+16)try{let X=Q.slice(16,C+16).toString();if(JSON.parse(X).files)return{ext:"asar",mime:"application/x-asar"}}catch(X){}}if(Y([6,14,43,52,2,5,1,1,13,1,2,1,1,2]))return{ext:"mxf",mime:"application/mxf"};if(J("SCRM",{offset:44}))return{ext:"s3m",mime:"audio/x-s3m"};if(Y([71],{offset:4})&&(Y([71],{offset:192})||Y([71],{offset:196})))return{ext:"mts",mime:"video/mp2t"};if(Y([66,79,79,75,77,79,66,73],{offset:60}))return{ext:"mobi",mime:"application/x-mobipocket-ebook"};if(Y([68,73,67,77],{offset:128}))return{ext:"dcm",mime:"application/dicom"};if(Y([76,0,0,0,1,20,2,0,0,0,0,0,192,0,0,0,0,0,0,70]))return{ext:"lnk",mime:"application/x.ms.shortcut"};if(Y([98,111,111,107,0,0,0,0,109,97,114,107,0,0,0,0]))return{ext:"alias",mime:"application/x.apple.alias"};if(Y([76,80],{offset:34})&&(Y([0,0,1],{offset:8})||Y([1,0,2],{offset:8})||Y([2,0,2],{offset:8})))return{ext:"eot",mime:"application/vnd.ms-fontobject"};if(Y([6,6,237,245,216,29,70,229,189,49,239,231,254,116,183,29]))return{ext:"indd",mime:"application/x-indesign"};if(await A.peekBuffer(Q,{length:Math.min(512,A.fileInfo.size),mayBeLess:!0}),r0B(Q))return{ext:"tar",mime:"application/x-tar"};if(Y([255,254,255,14,83,0,107,0,101,0,116,0,99,0,104,0,85,0,112,0,32,0,77,0,111,0,100,0,101,0,108,0]))return{ext:"skp",mime:"application/vnd.sketchup.skp"};if(J("-----BEGIN PGP MESSAGE-----"))return{ext:"pgp",mime:"application/pgp-encrypted"};if(Q.length>=2&&Y([255,224],{offset:0,mask:[255,224]})){if(Y([16],{offset:1,mask:[22]})){if(Y([8],{offset:1,mask:[8]}))return{ext:"aac",mime:"audio/aac"};return{ext:"aac",mime:"audio/aac"}}if(Y([2],{offset:1,mask:[6]}))return{ext:"mp3",mime:"audio/mpeg"};if(Y([4],{offset:1,mask:[6]}))return{ext:"mp2",mime:"audio/mpeg"};if(Y([6],{offset:1,mask:[6]}))return{ext:"mp1",mime:"audio/mpeg"}}}var e0B=(readableStream)=>new Promise((resolve,reject)=>{let stream=eval("require")("stream");readableStream.on("error",reject),readableStream.once("readable",async()=>{let A=new stream.PassThrough,Q;if(stream.pipeline)Q=stream.pipeline(readableStream,A,()=>{});else Q=readableStream.pipe(A);let B=readableStream.read(4100)||readableStream.read()||Buffer.alloc(0);try{let Y=await qWA(B);A.fileType=Y}catch(Y){reject(Y)}resolve(Q)})}),Hf={fromStream:o0B,fromTokenizer:bR,fromBuffer:qWA,stream:e0B};Object.defineProperty(Hf,"extensions",{get(){return new Set(LWA.extensions)}});Object.defineProperty(Hf,"mimeTypes",{get(){return new Set(LWA.mimeTypes)}});Df.exports=Hf});var wWA=R((mR,RWA)=>{(function(A,Q){typeof mR==="object"&&typeof RWA<"u"?Q(mR):typeof define==="function"&&define.amd?define(["exports"],Q):Q(A.awaitToJs={})})(mR,function(A){function Q(B,Y){return B.then(function(J){return[null,J]}).catch(function(J){if(Y)Object.assign(J,Y);return[J,void 0]})}A.to=Q,A.default=Q,Object.defineProperty(A,"__esModule",{value:!0})})});var kWA=R((OFY,SWA)=>{function uR(){this._types=Object.create(null),this._extensions=Object.create(null);for(let A=0;A{_WA.exports={"application/andrew-inset":["ez"],"application/applixware":["aw"],"application/atom+xml":["atom"],"application/atomcat+xml":["atomcat"],"application/atomdeleted+xml":["atomdeleted"],"application/atomsvc+xml":["atomsvc"],"application/atsc-dwd+xml":["dwd"],"application/atsc-held+xml":["held"],"application/atsc-rsat+xml":["rsat"],"application/bdoc":["bdoc"],"application/calendar+xml":["xcs"],"application/ccxml+xml":["ccxml"],"application/cdfx+xml":["cdfx"],"application/cdmi-capability":["cdmia"],"application/cdmi-container":["cdmic"],"application/cdmi-domain":["cdmid"],"application/cdmi-object":["cdmio"],"application/cdmi-queue":["cdmiq"],"application/cu-seeme":["cu"],"application/dash+xml":["mpd"],"application/davmount+xml":["davmount"],"application/docbook+xml":["dbk"],"application/dssc+der":["dssc"],"application/dssc+xml":["xdssc"],"application/ecmascript":["es","ecma"],"application/emma+xml":["emma"],"application/emotionml+xml":["emotionml"],"application/epub+zip":["epub"],"application/exi":["exi"],"application/express":["exp"],"application/fdt+xml":["fdt"],"application/font-tdpfr":["pfr"],"application/geo+json":["geojson"],"application/gml+xml":["gml"],"application/gpx+xml":["gpx"],"application/gxf":["gxf"],"application/gzip":["gz"],"application/hjson":["hjson"],"application/hyperstudio":["stk"],"application/inkml+xml":["ink","inkml"],"application/ipfix":["ipfix"],"application/its+xml":["its"],"application/java-archive":["jar","war","ear"],"application/java-serialized-object":["ser"],"application/java-vm":["class"],"application/javascript":["js","mjs"],"application/json":["json","map"],"application/json5":["json5"],"application/jsonml+json":["jsonml"],"application/ld+json":["jsonld"],"application/lgr+xml":["lgr"],"application/lost+xml":["lostxml"],"application/mac-binhex40":["hqx"],"application/mac-compactpro":["cpt"],"application/mads+xml":["mads"],"application/manifest+json":["webmanifest"],"application/marc":["mrc"],"application/marcxml+xml":["mrcx"],"application/mathematica":["ma","nb","mb"],"application/mathml+xml":["mathml"],"application/mbox":["mbox"],"application/mediaservercontrol+xml":["mscml"],"application/metalink+xml":["metalink"],"application/metalink4+xml":["meta4"],"application/mets+xml":["mets"],"application/mmt-aei+xml":["maei"],"application/mmt-usd+xml":["musd"],"application/mods+xml":["mods"],"application/mp21":["m21","mp21"],"application/mp4":["mp4s","m4p"],"application/msword":["doc","dot"],"application/mxf":["mxf"],"application/n-quads":["nq"],"application/n-triples":["nt"],"application/node":["cjs"],"application/octet-stream":["bin","dms","lrf","mar","so","dist","distz","pkg","bpk","dump","elc","deploy","exe","dll","deb","dmg","iso","img","msi","msp","msm","buffer"],"application/oda":["oda"],"application/oebps-package+xml":["opf"],"application/ogg":["ogx"],"application/omdoc+xml":["omdoc"],"application/onenote":["onetoc","onetoc2","onetmp","onepkg"],"application/oxps":["oxps"],"application/p2p-overlay+xml":["relo"],"application/patch-ops-error+xml":["xer"],"application/pdf":["pdf"],"application/pgp-encrypted":["pgp"],"application/pgp-signature":["asc","sig"],"application/pics-rules":["prf"],"application/pkcs10":["p10"],"application/pkcs7-mime":["p7m","p7c"],"application/pkcs7-signature":["p7s"],"application/pkcs8":["p8"],"application/pkix-attr-cert":["ac"],"application/pkix-cert":["cer"],"application/pkix-crl":["crl"],"application/pkix-pkipath":["pkipath"],"application/pkixcmp":["pki"],"application/pls+xml":["pls"],"application/postscript":["ai","eps","ps"],"application/provenance+xml":["provx"],"application/pskc+xml":["pskcxml"],"application/raml+yaml":["raml"],"application/rdf+xml":["rdf","owl"],"application/reginfo+xml":["rif"],"application/relax-ng-compact-syntax":["rnc"],"application/resource-lists+xml":["rl"],"application/resource-lists-diff+xml":["rld"],"application/rls-services+xml":["rs"],"application/route-apd+xml":["rapd"],"application/route-s-tsid+xml":["sls"],"application/route-usd+xml":["rusd"],"application/rpki-ghostbusters":["gbr"],"application/rpki-manifest":["mft"],"application/rpki-roa":["roa"],"application/rsd+xml":["rsd"],"application/rss+xml":["rss"],"application/rtf":["rtf"],"application/sbml+xml":["sbml"],"application/scvp-cv-request":["scq"],"application/scvp-cv-response":["scs"],"application/scvp-vp-request":["spq"],"application/scvp-vp-response":["spp"],"application/sdp":["sdp"],"application/senml+xml":["senmlx"],"application/sensml+xml":["sensmlx"],"application/set-payment-initiation":["setpay"],"application/set-registration-initiation":["setreg"],"application/shf+xml":["shf"],"application/sieve":["siv","sieve"],"application/smil+xml":["smi","smil"],"application/sparql-query":["rq"],"application/sparql-results+xml":["srx"],"application/srgs":["gram"],"application/srgs+xml":["grxml"],"application/sru+xml":["sru"],"application/ssdl+xml":["ssdl"],"application/ssml+xml":["ssml"],"application/swid+xml":["swidtag"],"application/tei+xml":["tei","teicorpus"],"application/thraud+xml":["tfi"],"application/timestamped-data":["tsd"],"application/toml":["toml"],"application/trig":["trig"],"application/ttml+xml":["ttml"],"application/ubjson":["ubj"],"application/urc-ressheet+xml":["rsheet"],"application/urc-targetdesc+xml":["td"],"application/voicexml+xml":["vxml"],"application/wasm":["wasm"],"application/widget":["wgt"],"application/winhlp":["hlp"],"application/wsdl+xml":["wsdl"],"application/wspolicy+xml":["wspolicy"],"application/xaml+xml":["xaml"],"application/xcap-att+xml":["xav"],"application/xcap-caps+xml":["xca"],"application/xcap-diff+xml":["xdf"],"application/xcap-el+xml":["xel"],"application/xcap-ns+xml":["xns"],"application/xenc+xml":["xenc"],"application/xhtml+xml":["xhtml","xht"],"application/xliff+xml":["xlf"],"application/xml":["xml","xsl","xsd","rng"],"application/xml-dtd":["dtd"],"application/xop+xml":["xop"],"application/xproc+xml":["xpl"],"application/xslt+xml":["*xsl","xslt"],"application/xspf+xml":["xspf"],"application/xv+xml":["mxml","xhvml","xvml","xvm"],"application/yang":["yang"],"application/yin+xml":["yin"],"application/zip":["zip"],"audio/3gpp":["*3gpp"],"audio/adpcm":["adp"],"audio/amr":["amr"],"audio/basic":["au","snd"],"audio/midi":["mid","midi","kar","rmi"],"audio/mobile-xmf":["mxmf"],"audio/mp3":["*mp3"],"audio/mp4":["m4a","mp4a"],"audio/mpeg":["mpga","mp2","mp2a","mp3","m2a","m3a"],"audio/ogg":["oga","ogg","spx","opus"],"audio/s3m":["s3m"],"audio/silk":["sil"],"audio/wav":["wav"],"audio/wave":["*wav"],"audio/webm":["weba"],"audio/xm":["xm"],"font/collection":["ttc"],"font/otf":["otf"],"font/ttf":["ttf"],"font/woff":["woff"],"font/woff2":["woff2"],"image/aces":["exr"],"image/apng":["apng"],"image/avif":["avif"],"image/bmp":["bmp"],"image/cgm":["cgm"],"image/dicom-rle":["drle"],"image/emf":["emf"],"image/fits":["fits"],"image/g3fax":["g3"],"image/gif":["gif"],"image/heic":["heic"],"image/heic-sequence":["heics"],"image/heif":["heif"],"image/heif-sequence":["heifs"],"image/hej2k":["hej2"],"image/hsj2":["hsj2"],"image/ief":["ief"],"image/jls":["jls"],"image/jp2":["jp2","jpg2"],"image/jpeg":["jpeg","jpg","jpe"],"image/jph":["jph"],"image/jphc":["jhc"],"image/jpm":["jpm"],"image/jpx":["jpx","jpf"],"image/jxr":["jxr"],"image/jxra":["jxra"],"image/jxrs":["jxrs"],"image/jxs":["jxs"],"image/jxsc":["jxsc"],"image/jxsi":["jxsi"],"image/jxss":["jxss"],"image/ktx":["ktx"],"image/ktx2":["ktx2"],"image/png":["png"],"image/sgi":["sgi"],"image/svg+xml":["svg","svgz"],"image/t38":["t38"],"image/tiff":["tif","tiff"],"image/tiff-fx":["tfx"],"image/webp":["webp"],"image/wmf":["wmf"],"message/disposition-notification":["disposition-notification"],"message/global":["u8msg"],"message/global-delivery-status":["u8dsn"],"message/global-disposition-notification":["u8mdn"],"message/global-headers":["u8hdr"],"message/rfc822":["eml","mime"],"model/3mf":["3mf"],"model/gltf+json":["gltf"],"model/gltf-binary":["glb"],"model/iges":["igs","iges"],"model/mesh":["msh","mesh","silo"],"model/mtl":["mtl"],"model/obj":["obj"],"model/step+xml":["stpx"],"model/step+zip":["stpz"],"model/step-xml+zip":["stpxz"],"model/stl":["stl"],"model/vrml":["wrl","vrml"],"model/x3d+binary":["*x3db","x3dbz"],"model/x3d+fastinfoset":["x3db"],"model/x3d+vrml":["*x3dv","x3dvz"],"model/x3d+xml":["x3d","x3dz"],"model/x3d-vrml":["x3dv"],"text/cache-manifest":["appcache","manifest"],"text/calendar":["ics","ifb"],"text/coffeescript":["coffee","litcoffee"],"text/css":["css"],"text/csv":["csv"],"text/html":["html","htm","shtml"],"text/jade":["jade"],"text/jsx":["jsx"],"text/less":["less"],"text/markdown":["markdown","md"],"text/mathml":["mml"],"text/mdx":["mdx"],"text/n3":["n3"],"text/plain":["txt","text","conf","def","list","log","in","ini"],"text/richtext":["rtx"],"text/rtf":["*rtf"],"text/sgml":["sgml","sgm"],"text/shex":["shex"],"text/slim":["slim","slm"],"text/spdx":["spdx"],"text/stylus":["stylus","styl"],"text/tab-separated-values":["tsv"],"text/troff":["t","tr","roff","man","me","ms"],"text/turtle":["ttl"],"text/uri-list":["uri","uris","urls"],"text/vcard":["vcard"],"text/vtt":["vtt"],"text/xml":["*xml"],"text/yaml":["yaml","yml"],"video/3gpp":["3gp","3gpp"],"video/3gpp2":["3g2"],"video/h261":["h261"],"video/h263":["h263"],"video/h264":["h264"],"video/iso.segment":["m4s"],"video/jpeg":["jpgv"],"video/jpm":["*jpm","jpgm"],"video/mj2":["mj2","mjp2"],"video/mp2t":["ts"],"video/mp4":["mp4","mp4v","mpg4"],"video/mpeg":["mpeg","mpg","mpe","m1v","m2v"],"video/ogg":["ogv"],"video/quicktime":["qt","mov"],"video/webm":["webm"]}});var gWA=R((TFY,yWA)=>{var AYB=kWA();yWA.exports=new AYB(vWA())});var sWA=R((gFY,nWA)=>{nWA.exports={parseSections:function(A,Q){var B,Y;A.setBigEndian(!0);while(A.remainingLength()>0&&Y!==218){if(A.nextUInt8()!==255)throw Error("Invalid JPEG section offset");if(Y=A.nextUInt8(),Y>=208&&Y<=217||Y===218)B=0;else B=A.nextUInt16()-2;Q(Y,A.branch(0,B)),A.skip(B)}},getSizeFromSOFSection:function(A){return A.skip(1),{height:A.nextUInt16(),width:A.nextUInt16()}},getSectionName:function(A){var Q,B;switch(A){case 216:Q="SOI";break;case 196:Q="DHT";break;case 219:Q="DQT";break;case 221:Q="DRI";break;case 218:Q="SOS";break;case 254:Q="COM";break;case 217:Q="EOI";break;default:if(A>=224&&A<=239)Q="APP",B=A-224;else if(A>=192&&A<=207&&A!==196&&A!==200&&A!==204)Q="SOF",B=A-192;else if(A>=208&&A<=215)Q="RST",B=A-208;break}var Y={name:Q};if(typeof B==="number")Y.index=B;return Y}}});var Lf=R((hFY,rWA)=>{function BYB(A,Q){switch(A){case 1:return Q.nextUInt8();case 3:return Q.nextUInt16();case 4:return Q.nextUInt32();case 5:return[Q.nextUInt32(),Q.nextUInt32()];case 6:return Q.nextInt8();case 8:return Q.nextUInt16();case 9:return Q.nextUInt32();case 10:return[Q.nextInt32(),Q.nextInt32()];case 11:return Q.nextFloat();case 12:return Q.nextDouble();default:throw Error("Invalid format while decoding: "+A)}}function YYB(A){switch(A){case 1:case 2:case 6:case 7:return 1;case 3:case 8:return 2;case 4:case 9:case 11:return 4;case 5:case 10:case 12:return 8;default:return 0}}function JYB(A,Q){var B=Q.nextUInt16(),Y=Q.nextUInt16(),J=YYB(Y),C=Q.nextUInt32(),X=J*C,G,W,F;if(X>4)Q=A.openWithOffset(Q.nextUInt32());if(Y===2){G=Q.nextString(C);var Z=G.indexOf("\x00");if(Z!==-1)G=G.substr(0,Z)}else if(Y===7)G=Q.nextBuffer(C);else if(Y!==0){G=[];for(F=0;F{function qf(A){return parseInt(A,10)}var XYB=3600,GYB=60;function aWA(A,Q){A=A.map(qf),Q=Q.map(qf);var B=A[0],Y=A[1]-1,J=A[2],C=Q[0],X=Q[1],G=Q[2],W=Date.UTC(B,Y,J,C,X,G,0),F=W/1000;return F}function oWA(A){var Q=A.substr(0,10).split("-"),B=A.substr(11,8).split(":"),Y=A.substr(19,6),J=Y.split(":").map(qf),C=J[0]*XYB+J[1]*GYB,X=aWA(Q,B);if(X-=C,typeof X==="number"&&!isNaN(X))return X}function tWA(A){var Q=A.split(" "),B=Q[0].split(":"),Y=Q[1].split(":"),J=aWA(B,Y);if(typeof J==="number"&&!isNaN(J))return J}function WYB(A){var Q=A.length===19&&A.charAt(4)===":",B=A.length===25&&A.charAt(10)==="T",Y;if(B)return oWA(A);else if(Q)return tWA(A)}eWA.exports={parseDateWithSpecFormat:tWA,parseDateWithTimezoneFormat:oWA,parseExifDate:WYB}});var BFA=R((fFY,QFA)=>{var sU=Lf(),FYB=AFA(),ZYB=[{section:sU.GPSIFD,type:2,name:"GPSLatitude",refType:1,refName:"GPSLatitudeRef",posVal:"N"},{section:sU.GPSIFD,type:4,name:"GPSLongitude",refType:3,refName:"GPSLongitudeRef",posVal:"E"}],$YB=[{section:sU.SubIFD,type:306,name:"ModifyDate"},{section:sU.SubIFD,type:36867,name:"DateTimeOriginal"},{section:sU.SubIFD,type:36868,name:"CreateDate"},{section:sU.SubIFD,type:306,name:"ModifyDate"}];QFA.exports={castDegreeValues:function(A,Q){ZYB.forEach(function(B){var Y=A(B);if(Y){var J=A({section:B.section,type:B.refType,name:B.refName}),C=J===B.posVal?1:-1,X=(Y[0]+Y[1]/60+Y[2]/3600)*C;Q(B,X)}})},castDateValues:function(A,Q){$YB.forEach(function(B){var Y=A(B);if(Y){var J=FYB.parseExifDate(Y);if(typeof J<"u")Q(B,J)}})},simplifyValue:function(A,Q){if(Array.isArray(A)){if(A=A.map(function(B){if(Q===10||Q===5)return B[0]/B[1];return B}),A.length===1)A=A[0]}return A}}});var JFA=R((bFY,YFA)=>{YFA.exports={exif:{1:"InteropIndex",2:"InteropVersion",11:"ProcessingSoftware",254:"SubfileType",255:"OldSubfileType",256:"ImageWidth",257:"ImageHeight",258:"BitsPerSample",259:"Compression",262:"PhotometricInterpretation",263:"Thresholding",264:"CellWidth",265:"CellLength",266:"FillOrder",269:"DocumentName",270:"ImageDescription",271:"Make",272:"Model",273:"StripOffsets",274:"Orientation",277:"SamplesPerPixel",278:"RowsPerStrip",279:"StripByteCounts",280:"MinSampleValue",281:"MaxSampleValue",282:"XResolution",283:"YResolution",284:"PlanarConfiguration",285:"PageName",286:"XPosition",287:"YPosition",288:"FreeOffsets",289:"FreeByteCounts",290:"GrayResponseUnit",291:"GrayResponseCurve",292:"T4Options",293:"T6Options",296:"ResolutionUnit",297:"PageNumber",300:"ColorResponseUnit",301:"TransferFunction",305:"Software",306:"ModifyDate",315:"Artist",316:"HostComputer",317:"Predictor",318:"WhitePoint",319:"PrimaryChromaticities",320:"ColorMap",321:"HalftoneHints",322:"TileWidth",323:"TileLength",324:"TileOffsets",325:"TileByteCounts",326:"BadFaxLines",327:"CleanFaxData",328:"ConsecutiveBadFaxLines",330:"SubIFD",332:"InkSet",333:"InkNames",334:"NumberofInks",336:"DotRange",337:"TargetPrinter",338:"ExtraSamples",339:"SampleFormat",340:"SMinSampleValue",341:"SMaxSampleValue",342:"TransferRange",343:"ClipPath",344:"XClipPathUnits",345:"YClipPathUnits",346:"Indexed",347:"JPEGTables",351:"OPIProxy",400:"GlobalParametersIFD",401:"ProfileType",402:"FaxProfile",403:"CodingMethods",404:"VersionYear",405:"ModeNumber",433:"Decode",434:"DefaultImageColor",435:"T82Options",437:"JPEGTables",512:"JPEGProc",513:"ThumbnailOffset",514:"ThumbnailLength",515:"JPEGRestartInterval",517:"JPEGLosslessPredictors",518:"JPEGPointTransforms",519:"JPEGQTables",520:"JPEGDCTables",521:"JPEGACTables",529:"YCbCrCoefficients",530:"YCbCrSubSampling",531:"YCbCrPositioning",532:"ReferenceBlackWhite",559:"StripRowCounts",700:"ApplicationNotes",999:"USPTOMiscellaneous",4096:"RelatedImageFileFormat",4097:"RelatedImageWidth",4098:"RelatedImageHeight",18246:"Rating",18247:"XP_DIP_XML",18248:"StitchInfo",18249:"RatingPercent",32781:"ImageID",32931:"WangTag1",32932:"WangAnnotation",32933:"WangTag3",32934:"WangTag4",32995:"Matteing",32996:"DataType",32997:"ImageDepth",32998:"TileDepth",33405:"Model2",33421:"CFARepeatPatternDim",33422:"CFAPattern2",33423:"BatteryLevel",33424:"KodakIFD",33432:"Copyright",33434:"ExposureTime",33437:"FNumber",33445:"MDFileTag",33446:"MDScalePixel",33447:"MDColorTable",33448:"MDLabName",33449:"MDSampleInfo",33450:"MDPrepDate",33451:"MDPrepTime",33452:"MDFileUnits",33550:"PixelScale",33589:"AdventScale",33590:"AdventRevision",33628:"UIC1Tag",33629:"UIC2Tag",33630:"UIC3Tag",33631:"UIC4Tag",33723:"IPTC-NAA",33918:"IntergraphPacketData",33919:"IntergraphFlagRegisters",33920:"IntergraphMatrix",33921:"INGRReserved",33922:"ModelTiePoint",34016:"Site",34017:"ColorSequence",34018:"IT8Header",34019:"RasterPadding",34020:"BitsPerRunLength",34021:"BitsPerExtendedRunLength",34022:"ColorTable",34023:"ImageColorIndicator",34024:"BackgroundColorIndicator",34025:"ImageColorValue",34026:"BackgroundColorValue",34027:"PixelIntensityRange",34028:"TransparencyIndicator",34029:"ColorCharacterization",34030:"HCUsage",34031:"TrapIndicator",34032:"CMYKEquivalent",34118:"SEMInfo",34152:"AFCP_IPTC",34232:"PixelMagicJBIGOptions",34264:"ModelTransform",34306:"WB_GRGBLevels",34310:"LeafData",34377:"PhotoshopSettings",34665:"ExifOffset",34675:"ICC_Profile",34687:"TIFF_FXExtensions",34688:"MultiProfiles",34689:"SharedData",34690:"T88Options",34732:"ImageLayer",34735:"GeoTiffDirectory",34736:"GeoTiffDoubleParams",34737:"GeoTiffAsciiParams",34850:"ExposureProgram",34852:"SpectralSensitivity",34853:"GPSInfo",34855:"ISO",34856:"Opto-ElectricConvFactor",34857:"Interlace",34858:"TimeZoneOffset",34859:"SelfTimerMode",34864:"SensitivityType",34865:"StandardOutputSensitivity",34866:"RecommendedExposureIndex",34867:"ISOSpeed",34868:"ISOSpeedLatitudeyyy",34869:"ISOSpeedLatitudezzz",34908:"FaxRecvParams",34909:"FaxSubAddress",34910:"FaxRecvTime",34954:"LeafSubIFD",36864:"ExifVersion",36867:"DateTimeOriginal",36868:"CreateDate",37121:"ComponentsConfiguration",37122:"CompressedBitsPerPixel",37377:"ShutterSpeedValue",37378:"ApertureValue",37379:"BrightnessValue",37380:"ExposureCompensation",37381:"MaxApertureValue",37382:"SubjectDistance",37383:"MeteringMode",37384:"LightSource",37385:"Flash",37386:"FocalLength",37387:"FlashEnergy",37388:"SpatialFrequencyResponse",37389:"Noise",37390:"FocalPlaneXResolution",37391:"FocalPlaneYResolution",37392:"FocalPlaneResolutionUnit",37393:"ImageNumber",37394:"SecurityClassification",37395:"ImageHistory",37396:"SubjectArea",37397:"ExposureIndex",37398:"TIFF-EPStandardID",37399:"SensingMethod",37434:"CIP3DataFile",37435:"CIP3Sheet",37436:"CIP3Side",37439:"StoNits",37500:"MakerNote",37510:"UserComment",37520:"SubSecTime",37521:"SubSecTimeOriginal",37522:"SubSecTimeDigitized",37679:"MSDocumentText",37680:"MSPropertySetStorage",37681:"MSDocumentTextPosition",37724:"ImageSourceData",40091:"XPTitle",40092:"XPComment",40093:"XPAuthor",40094:"XPKeywords",40095:"XPSubject",40960:"FlashpixVersion",40961:"ColorSpace",40962:"ExifImageWidth",40963:"ExifImageHeight",40964:"RelatedSoundFile",40965:"InteropOffset",41483:"FlashEnergy",41484:"SpatialFrequencyResponse",41485:"Noise",41486:"FocalPlaneXResolution",41487:"FocalPlaneYResolution",41488:"FocalPlaneResolutionUnit",41489:"ImageNumber",41490:"SecurityClassification",41491:"ImageHistory",41492:"SubjectLocation",41493:"ExposureIndex",41494:"TIFF-EPStandardID",41495:"SensingMethod",41728:"FileSource",41729:"SceneType",41730:"CFAPattern",41985:"CustomRendered",41986:"ExposureMode",41987:"WhiteBalance",41988:"DigitalZoomRatio",41989:"FocalLengthIn35mmFormat",41990:"SceneCaptureType",41991:"GainControl",41992:"Contrast",41993:"Saturation",41994:"Sharpness",41995:"DeviceSettingDescription",41996:"SubjectDistanceRange",42016:"ImageUniqueID",42032:"OwnerName",42033:"SerialNumber",42034:"LensInfo",42035:"LensMake",42036:"LensModel",42037:"LensSerialNumber",42112:"GDALMetadata",42113:"GDALNoData",42240:"Gamma",44992:"ExpandSoftware",44993:"ExpandLens",44994:"ExpandFilm",44995:"ExpandFilterLens",44996:"ExpandScanner",44997:"ExpandFlashLamp",48129:"PixelFormat",48130:"Transformation",48131:"Uncompressed",48132:"ImageType",48256:"ImageWidth",48257:"ImageHeight",48258:"WidthResolution",48259:"HeightResolution",48320:"ImageOffset",48321:"ImageByteCount",48322:"AlphaOffset",48323:"AlphaByteCount",48324:"ImageDataDiscard",48325:"AlphaDataDiscard",50215:"OceScanjobDesc",50216:"OceApplicationSelector",50217:"OceIDNumber",50218:"OceImageLogic",50255:"Annotations",50341:"PrintIM",50560:"USPTOOriginalContentType",50706:"DNGVersion",50707:"DNGBackwardVersion",50708:"UniqueCameraModel",50709:"LocalizedCameraModel",50710:"CFAPlaneColor",50711:"CFALayout",50712:"LinearizationTable",50713:"BlackLevelRepeatDim",50714:"BlackLevel",50715:"BlackLevelDeltaH",50716:"BlackLevelDeltaV",50717:"WhiteLevel",50718:"DefaultScale",50719:"DefaultCropOrigin",50720:"DefaultCropSize",50721:"ColorMatrix1",50722:"ColorMatrix2",50723:"CameraCalibration1",50724:"CameraCalibration2",50725:"ReductionMatrix1",50726:"ReductionMatrix2",50727:"AnalogBalance",50728:"AsShotNeutral",50729:"AsShotWhiteXY",50730:"BaselineExposure",50731:"BaselineNoise",50732:"BaselineSharpness",50733:"BayerGreenSplit",50734:"LinearResponseLimit",50735:"CameraSerialNumber",50736:"DNGLensInfo",50737:"ChromaBlurRadius",50738:"AntiAliasStrength",50739:"ShadowScale",50740:"DNGPrivateData",50741:"MakerNoteSafety",50752:"RawImageSegmentation",50778:"CalibrationIlluminant1",50779:"CalibrationIlluminant2",50780:"BestQualityScale",50781:"RawDataUniqueID",50784:"AliasLayerMetadata",50827:"OriginalRawFileName",50828:"OriginalRawFileData",50829:"ActiveArea",50830:"MaskedAreas",50831:"AsShotICCProfile",50832:"AsShotPreProfileMatrix",50833:"CurrentICCProfile",50834:"CurrentPreProfileMatrix",50879:"ColorimetricReference",50898:"PanasonicTitle",50899:"PanasonicTitle2",50931:"CameraCalibrationSig",50932:"ProfileCalibrationSig",50933:"ProfileIFD",50934:"AsShotProfileName",50935:"NoiseReductionApplied",50936:"ProfileName",50937:"ProfileHueSatMapDims",50938:"ProfileHueSatMapData1",50939:"ProfileHueSatMapData2",50940:"ProfileToneCurve",50941:"ProfileEmbedPolicy",50942:"ProfileCopyright",50964:"ForwardMatrix1",50965:"ForwardMatrix2",50966:"PreviewApplicationName",50967:"PreviewApplicationVersion",50968:"PreviewSettingsName",50969:"PreviewSettingsDigest",50970:"PreviewColorSpace",50971:"PreviewDateTime",50972:"RawImageDigest",50973:"OriginalRawFileDigest",50974:"SubTileBlockSize",50975:"RowInterleaveFactor",50981:"ProfileLookTableDims",50982:"ProfileLookTableData",51008:"OpcodeList1",51009:"OpcodeList2",51022:"OpcodeList3",51041:"NoiseProfile",51043:"TimeCodes",51044:"FrameRate",51058:"TStop",51081:"ReelName",51089:"OriginalDefaultFinalSize",51090:"OriginalBestQualitySize",51091:"OriginalDefaultCropSize",51105:"CameraLabel",51107:"ProfileHueSatMapEncoding",51108:"ProfileLookTableEncoding",51109:"BaselineExposureOffset",51110:"DefaultBlackRender",51111:"NewRawImageDigest",51112:"RawToPreviewGain",51125:"DefaultUserCrop",59932:"Padding",59933:"OffsetSchema",65000:"OwnerName",65001:"SerialNumber",65002:"Lens",65024:"KDC_IFD",65100:"RawFile",65101:"Converter",65102:"WhiteBalance",65105:"Exposure",65106:"Shadows",65107:"Brightness",65108:"Contrast",65109:"Saturation",65110:"Sharpness",65111:"Smoothness",65112:"MoireFilter"},gps:{0:"GPSVersionID",1:"GPSLatitudeRef",2:"GPSLatitude",3:"GPSLongitudeRef",4:"GPSLongitude",5:"GPSAltitudeRef",6:"GPSAltitude",7:"GPSTimeStamp",8:"GPSSatellites",9:"GPSStatus",10:"GPSMeasureMode",11:"GPSDOP",12:"GPSSpeedRef",13:"GPSSpeed",14:"GPSTrackRef",15:"GPSTrack",16:"GPSImgDirectionRef",17:"GPSImgDirection",18:"GPSMapDatum",19:"GPSDestLatitudeRef",20:"GPSDestLatitude",21:"GPSDestLongitudeRef",22:"GPSDestLongitude",23:"GPSDestBearingRef",24:"GPSDestBearing",25:"GPSDestDistanceRef",26:"GPSDestDistance",27:"GPSProcessingMethod",28:"GPSAreaInformation",29:"GPSDateStamp",30:"GPSDifferential",31:"GPSHPositioningError"}}});var FFA=R((mFY,WFA)=>{var rU=sWA(),CFA=Lf(),Mf=BFA();function XFA(A,Q,B,Y,J,C,X){this.startMarker=A,this.tags=Q,this.imageSize=B,this.thumbnailOffset=Y,this.thumbnailLength=J,this.thumbnailType=C,this.app1Offset=X}XFA.prototype={hasThumbnail:function(A){if(!this.thumbnailOffset||!this.thumbnailLength)return!1;if(typeof A!=="string")return!0;if(A.toLowerCase().trim()==="image/jpeg")return this.thumbnailType===6;if(A.toLowerCase().trim()==="image/tiff")return this.thumbnailType===1;return!1},getThumbnailOffset:function(){return this.app1Offset+6+this.thumbnailOffset},getThumbnailLength:function(){return this.thumbnailLength},getThumbnailBuffer:function(){return this._getThumbnailStream().nextBuffer(this.thumbnailLength)},_getThumbnailStream:function(){return this.startMarker.openWithOffset(this.getThumbnailOffset())},getImageSize:function(){return this.imageSize},getThumbnailSize:function(){var A=this._getThumbnailStream(),Q;return rU.parseSections(A,function(B,Y){if(rU.getSectionName(B).name==="SOF")Q=rU.getSizeFromSOFSection(Y)}),Q}};function GFA(A){this.stream=A,this.flags={readBinaryTags:!1,resolveTagNames:!0,simplifyValues:!0,imageSize:!0,hidePointers:!0,returnTags:!0}}GFA.prototype={enableBinaryFields:function(A){return this.flags.readBinaryTags=!!A,this},enablePointers:function(A){return this.flags.hidePointers=!A,this},enableTagNames:function(A){return this.flags.resolveTagNames=!!A,this},enableImageSize:function(A){return this.flags.imageSize=!!A,this},enableReturnTags:function(A){return this.flags.returnTags=!!A,this},enableSimpleValues:function(A){return this.flags.simplifyValues=!!A,this},parse:function(){var A=this.stream.mark(),Q=A.openWithOffset(0),B=this.flags,Y,J,C,X,G,W,F,Z,U;if(B.resolveTagNames)F=JFA();if(B.resolveTagNames)Y={},Z=function($){return Y[$.name]},U=function($,E){Y[$.name]=E};else Y=[],Z=function($){var E;for(E=0;E{function cR(A,Q,B,Y,J,C){this.global=J,Q=Q||0,B=B||A.byteLength-Q,this.arrayBuffer=A.slice(Q,Q+B),this.view=new J.DataView(this.arrayBuffer,0,this.arrayBuffer.byteLength),this.setBigEndian(Y),this.offset=0,this.parentOffset=(C||0)+Q}cR.prototype={setBigEndian:function(A){this.littleEndian=!A},nextUInt8:function(){var A=this.view.getUint8(this.offset);return this.offset+=1,A},nextInt8:function(){var A=this.view.getInt8(this.offset);return this.offset+=1,A},nextUInt16:function(){var A=this.view.getUint16(this.offset,this.littleEndian);return this.offset+=2,A},nextUInt32:function(){var A=this.view.getUint32(this.offset,this.littleEndian);return this.offset+=4,A},nextInt16:function(){var A=this.view.getInt16(this.offset,this.littleEndian);return this.offset+=2,A},nextInt32:function(){var A=this.view.getInt32(this.offset,this.littleEndian);return this.offset+=4,A},nextFloat:function(){var A=this.view.getFloat32(this.offset,this.littleEndian);return this.offset+=4,A},nextDouble:function(){var A=this.view.getFloat64(this.offset,this.littleEndian);return this.offset+=8,A},nextBuffer:function(A){var Q=this.arrayBuffer.slice(this.offset,this.offset+A);return this.offset+=A,Q},remainingLength:function(){return this.arrayBuffer.byteLength-this.offset},nextString:function(A){var Q=this.arrayBuffer.slice(this.offset,this.offset+A);return Q=String.fromCharCode.apply(null,new this.global.Uint8Array(Q)),this.offset+=A,Q},mark:function(){var A=this;return{openWithOffset:function(Q){return Q=(Q||0)+this.offset,new cR(A.arrayBuffer,Q,A.arrayBuffer.byteLength-Q,!A.littleEndian,A.global,A.parentOffset)},offset:this.offset,getParentOffset:function(){return A.parentOffset}}},offsetFrom:function(A){return this.parentOffset+this.offset-(A.offset+A.getParentOffset())},skip:function(A){this.offset+=A},branch:function(A,Q){return Q=typeof Q==="number"?Q:this.arrayBuffer.byteLength-(this.offset+A),new cR(this.arrayBuffer,this.offset+A,Q,!this.littleEndian,this.global,this.parentOffset)}};ZFA.exports=cR});var EFA=R((dFY,UFA)=>{function lR(A,Q,B,Y){this.buffer=A,this.offset=Q||0,B=typeof B==="number"?B:A.length,this.endPosition=this.offset+B,this.setBigEndian(Y)}lR.prototype={setBigEndian:function(A){this.bigEndian=!!A},nextUInt8:function(){var A=this.buffer.readUInt8(this.offset);return this.offset+=1,A},nextInt8:function(){var A=this.buffer.readInt8(this.offset);return this.offset+=1,A},nextUInt16:function(){var A=this.bigEndian?this.buffer.readUInt16BE(this.offset):this.buffer.readUInt16LE(this.offset);return this.offset+=2,A},nextUInt32:function(){var A=this.bigEndian?this.buffer.readUInt32BE(this.offset):this.buffer.readUInt32LE(this.offset);return this.offset+=4,A},nextInt16:function(){var A=this.bigEndian?this.buffer.readInt16BE(this.offset):this.buffer.readInt16LE(this.offset);return this.offset+=2,A},nextInt32:function(){var A=this.bigEndian?this.buffer.readInt32BE(this.offset):this.buffer.readInt32LE(this.offset);return this.offset+=4,A},nextFloat:function(){var A=this.bigEndian?this.buffer.readFloatBE(this.offset):this.buffer.readFloatLE(this.offset);return this.offset+=4,A},nextDouble:function(){var A=this.bigEndian?this.buffer.readDoubleBE(this.offset):this.buffer.readDoubleLE(this.offset);return this.offset+=8,A},nextBuffer:function(A){var Q=this.buffer.slice(this.offset,this.offset+A);return this.offset+=A,Q},remainingLength:function(){return this.endPosition-this.offset},nextString:function(A){var Q=this.buffer.toString("utf8",this.offset,this.offset+A);return this.offset+=A,Q},mark:function(){var A=this;return{openWithOffset:function(Q){return Q=(Q||0)+this.offset,new lR(A.buffer,Q,A.endPosition-Q,A.bigEndian)},offset:this.offset}},offsetFrom:function(A){return this.offset-A.offset},skip:function(A){this.offset+=A},branch:function(A,Q){return Q=typeof Q==="number"?Q:this.endPosition-(this.offset+A),new lR(this.buffer,this.offset+A,Q,this.bigEndian)}};UFA.exports=lR});var IFA=R((cFY,VFA)=>{var KFA=FFA();function UYB(){return(0,eval)("this")}VFA.exports={create:function(A,Q){if(Q=Q||UYB(),A instanceof Q.ArrayBuffer){var B=$FA();return new KFA(new B(A,0,A.byteLength,!0,Q))}else{var Y=EFA();return new KFA(new Y(A,0,A.length,!0))}}}});var kFA=R((RZY,SFA)=>{function Of(A,Q){if(!A||!Q||!A.length||!Q.length)throw Error("Bad alphabet");this.srcAlphabet=A,this.dstAlphabet=Q}Of.prototype.convert=function(A){var Q,B,Y,J={},C=this.srcAlphabet.length,X=this.dstAlphabet.length,G=A.length,W=typeof A==="string"?"":[];if(!this.isValid(A))throw Error('Number "'+A+'" contains of non-alphabetic digits ('+this.srcAlphabet+")");if(this.srcAlphabet===this.dstAlphabet)return A;for(Q=0;Q=X)J[Y++]=parseInt(B/X,10),B=B%X;else if(Y>0)J[Y++]=0;G=Y,W=this.dstAlphabet.slice(B,B+1).concat(W)}while(Y!==0);return W};Of.prototype.isValid=function(A){var Q=0;for(;Q{var yYB=kFA();function eH(A,Q){var B=new yYB(A,Q);return function(Y){return B.convert(Y)}}eH.BIN="01";eH.OCT="01234567";eH.DEC="0123456789";eH.HEX="0123456789abcdef";_FA.exports=eH});var VD=R((bZA)=>{Object.defineProperty(bZA,"__esModule",{value:!0});bZA.regexpCode=bZA.getEsmExportName=bZA.getProperty=bZA.safeStringify=bZA.stringify=bZA.strConcat=bZA.addCodeArg=bZA.str=bZA._=bZA.nil=bZA._Code=bZA.Name=bZA.IDENTIFIER=bZA._CodeOrName=void 0;class tR{}bZA._CodeOrName=tR;bZA.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;class FE extends tR{constructor(A){super();if(!bZA.IDENTIFIER.test(A))throw Error("CodeGen: name must be a valid identifier");this.str=A}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}}bZA.Name=FE;class dC extends tR{constructor(A){super();this._items=typeof A==="string"?[A]:A}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let A=this._items[0];return A===""||A==='""'}get str(){var A;return(A=this._str)!==null&&A!==void 0?A:this._str=this._items.reduce((Q,B)=>`${Q}${B}`,"")}get names(){var A;return(A=this._names)!==null&&A!==void 0?A:this._names=this._items.reduce((Q,B)=>{if(B instanceof FE)Q[B.str]=(Q[B.str]||0)+1;return Q},{})}}bZA._Code=dC;bZA.nil=new dC("");function xZA(A,...Q){let B=[A[0]],Y=0;while(Y{Object.defineProperty(cZA,"__esModule",{value:!0});cZA.ValueScope=cZA.ValueScopeName=cZA.Scope=cZA.varKinds=cZA.UsedValueState=void 0;var x9=VD();class uZA extends Error{constructor(A){super(`CodeGen: "code" for ${A} not defined`);this.value=A.value}}var Aw;(function(A){A[A.Started=0]="Started",A[A.Completed=1]="Completed"})(Aw||(cZA.UsedValueState=Aw={}));cZA.varKinds={const:new x9.Name("const"),let:new x9.Name("let"),var:new x9.Name("var")};class tf{constructor({prefixes:A,parent:Q}={}){this._names={},this._prefixes=A,this._parent=Q}toName(A){return A instanceof x9.Name?A:this.name(A)}name(A){return new x9.Name(this._newName(A))}_newName(A){let Q=this._names[A]||this._nameGroup(A);return`${A}${Q.index++}`}_nameGroup(A){var Q,B;if(((B=(Q=this._parent)===null||Q===void 0?void 0:Q._prefixes)===null||B===void 0?void 0:B.has(A))||this._prefixes&&!this._prefixes.has(A))throw Error(`CodeGen: prefix "${A}" is not allowed in this scope`);return this._names[A]={prefix:A,index:0}}}cZA.Scope=tf;class ef extends x9.Name{constructor(A,Q){super(Q);this.prefix=A}setValue(A,{property:Q,itemIndex:B}){this.value=A,this.scopePath=x9._`.${new x9.Name(Q)}[${B}]`}}cZA.ValueScopeName=ef;var eJB=x9._`\n`;class dZA extends tf{constructor(A){super(A);this._values={},this._scope=A.scope,this.opts={...A,_n:A.lines?eJB:x9.nil}}get(){return this._scope}name(A){return new ef(A,this._newName(A))}value(A,Q){var B;if(Q.ref===void 0)throw Error("CodeGen: ref must be passed in value");let Y=this.toName(A),{prefix:J}=Y,C=(B=Q.key)!==null&&B!==void 0?B:Q.ref,X=this._values[J];if(X){let F=X.get(C);if(F)return F}else X=this._values[J]=new Map;X.set(C,Y);let G=this._scope[J]||(this._scope[J]=[]),W=G.length;return G[W]=Q.ref,Y.setValue(Q,{property:J,itemIndex:W}),Y}getValue(A,Q){let B=this._values[A];if(!B)return;return B.get(Q)}scopeRefs(A,Q=this._values){return this._reduceValues(Q,(B)=>{if(B.scopePath===void 0)throw Error(`CodeGen: name "${B}" has no value`);return x9._`${A}${B.scopePath}`})}scopeCode(A=this._values,Q,B){return this._reduceValues(A,(Y)=>{if(Y.value===void 0)throw Error(`CodeGen: name "${Y}" has no value`);return Y.value.code},Q,B)}_reduceValues(A,Q,B={},Y){let J=x9.nil;for(let C in A){let X=A[C];if(!X)continue;let G=B[C]=B[C]||new Map;X.forEach((W)=>{if(G.has(W))return;G.set(W,Aw.Started);let F=Q(W);if(F){let Z=this.opts.es5?cZA.varKinds.var:cZA.varKinds.const;J=x9._`${J}${Z} ${W} = ${F};${this.opts._n}`}else if(F=Y===null||Y===void 0?void 0:Y(W))J=x9._`${J}${F}${this.opts._n}`;else throw new uZA(W);G.set(W,Aw.Completed)})}return J}}cZA.ValueScope=dZA});var GB=R((f9)=>{Object.defineProperty(f9,"__esModule",{value:!0});f9.or=f9.and=f9.not=f9.CodeGen=f9.operators=f9.varKinds=f9.ValueScopeName=f9.ValueScope=f9.Scope=f9.Name=f9.regexpCode=f9.stringify=f9.getProperty=f9.nil=f9.strConcat=f9.str=f9._=void 0;var HB=VD(),cC=Ab(),x7=VD();Object.defineProperty(f9,"_",{enumerable:!0,get:function(){return x7._}});Object.defineProperty(f9,"str",{enumerable:!0,get:function(){return x7.str}});Object.defineProperty(f9,"strConcat",{enumerable:!0,get:function(){return x7.strConcat}});Object.defineProperty(f9,"nil",{enumerable:!0,get:function(){return x7.nil}});Object.defineProperty(f9,"getProperty",{enumerable:!0,get:function(){return x7.getProperty}});Object.defineProperty(f9,"stringify",{enumerable:!0,get:function(){return x7.stringify}});Object.defineProperty(f9,"regexpCode",{enumerable:!0,get:function(){return x7.regexpCode}});Object.defineProperty(f9,"Name",{enumerable:!0,get:function(){return x7.Name}});var Xw=Ab();Object.defineProperty(f9,"Scope",{enumerable:!0,get:function(){return Xw.Scope}});Object.defineProperty(f9,"ValueScope",{enumerable:!0,get:function(){return Xw.ValueScope}});Object.defineProperty(f9,"ValueScopeName",{enumerable:!0,get:function(){return Xw.ValueScopeName}});Object.defineProperty(f9,"varKinds",{enumerable:!0,get:function(){return Xw.varKinds}});f9.operators={GT:new HB._Code(">"),GTE:new HB._Code(">="),LT:new HB._Code("<"),LTE:new HB._Code("<="),EQ:new HB._Code("==="),NEQ:new HB._Code("!=="),NOT:new HB._Code("!"),OR:new HB._Code("||"),AND:new HB._Code("&&"),ADD:new HB._Code("+")};class f7{optimizeNodes(){return this}optimizeNames(A,Q){return this}}class pZA extends f7{constructor(A,Q,B){super();this.varKind=A,this.name=Q,this.rhs=B}render({es5:A,_n:Q}){let B=A?cC.varKinds.var:this.varKind,Y=this.rhs===void 0?"":` = ${this.rhs}`;return`${B} ${this.name}${Y};`+Q}optimizeNames(A,Q){if(!A[this.name.str])return;if(this.rhs)this.rhs=$E(this.rhs,A,Q);return this}get names(){return this.rhs instanceof HB._CodeOrName?this.rhs.names:{}}}class Yb extends f7{constructor(A,Q,B){super();this.lhs=A,this.rhs=Q,this.sideEffects=B}render({_n:A}){return`${this.lhs} = ${this.rhs};`+A}optimizeNames(A,Q){if(this.lhs instanceof HB.Name&&!A[this.lhs.str]&&!this.sideEffects)return;return this.rhs=$E(this.rhs,A,Q),this}get names(){let A=this.lhs instanceof HB.Name?{}:{...this.lhs.names};return Cw(A,this.rhs)}}class iZA extends Yb{constructor(A,Q,B,Y){super(A,B,Y);this.op=Q}render({_n:A}){return`${this.lhs} ${this.op}= ${this.rhs};`+A}}class nZA extends f7{constructor(A){super();this.label=A,this.names={}}render({_n:A}){return`${this.label}:`+A}}class sZA extends f7{constructor(A){super();this.label=A,this.names={}}render({_n:A}){return`break${this.label?` ${this.label}`:""};`+A}}class rZA extends f7{constructor(A){super();this.error=A}render({_n:A}){return`throw ${this.error};`+A}get names(){return this.error.names}}class aZA extends f7{constructor(A){super();this.code=A}render({_n:A}){return`${this.code};`+A}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(A,Q){return this.code=$E(this.code,A,Q),this}get names(){return this.code instanceof HB._CodeOrName?this.code.names:{}}}class Gw extends f7{constructor(A=[]){super();this.nodes=A}render(A){return this.nodes.reduce((Q,B)=>Q+B.render(A),"")}optimizeNodes(){let{nodes:A}=this,Q=A.length;while(Q--){let B=A[Q].optimizeNodes();if(Array.isArray(B))A.splice(Q,1,...B);else if(B)A[Q]=B;else A.splice(Q,1)}return A.length>0?this:void 0}optimizeNames(A,Q){let{nodes:B}=this,Y=B.length;while(Y--){let J=B[Y];if(J.optimizeNames(A,Q))continue;Y9B(A,J.names),B.splice(Y,1)}return B.length>0?this:void 0}get names(){return this.nodes.reduce((A,Q)=>KZ(A,Q.names),{})}}class b7 extends Gw{render(A){return"{"+A._n+super.render(A)+"}"+A._n}}class oZA extends Gw{}class ID extends b7{}ID.kind="else";class m6 extends b7{constructor(A,Q){super(Q);this.condition=A}render(A){let Q=`if(${this.condition})`+super.render(A);if(this.else)Q+="else "+this.else.render(A);return Q}optimizeNodes(){super.optimizeNodes();let A=this.condition;if(A===!0)return this.nodes;let Q=this.else;if(Q){let B=Q.optimizeNodes();Q=this.else=Array.isArray(B)?new ID(B):B}if(Q){if(A===!1)return Q instanceof m6?Q:Q.nodes;if(this.nodes.length)return this;return new m6(B$A(A),Q instanceof m6?[Q]:Q.nodes)}if(A===!1||!this.nodes.length)return;return this}optimizeNames(A,Q){var B;if(this.else=(B=this.else)===null||B===void 0?void 0:B.optimizeNames(A,Q),!(super.optimizeNames(A,Q)||this.else))return;return this.condition=$E(this.condition,A,Q),this}get names(){let A=super.names;if(Cw(A,this.condition),this.else)KZ(A,this.else.names);return A}}m6.kind="if";class ZE extends b7{}ZE.kind="for";class tZA extends ZE{constructor(A){super();this.iteration=A}render(A){return`for(${this.iteration})`+super.render(A)}optimizeNames(A,Q){if(!super.optimizeNames(A,Q))return;return this.iteration=$E(this.iteration,A,Q),this}get names(){return KZ(super.names,this.iteration.names)}}class eZA extends ZE{constructor(A,Q,B,Y){super();this.varKind=A,this.name=Q,this.from=B,this.to=Y}render(A){let Q=A.es5?cC.varKinds.var:this.varKind,{name:B,from:Y,to:J}=this;return`for(${Q} ${B}=${Y}; ${B}<${J}; ${B}++)`+super.render(A)}get names(){let A=Cw(super.names,this.from);return Cw(A,this.to)}}class Qb extends ZE{constructor(A,Q,B,Y){super();this.loop=A,this.varKind=Q,this.name=B,this.iterable=Y}render(A){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(A)}optimizeNames(A,Q){if(!super.optimizeNames(A,Q))return;return this.iterable=$E(this.iterable,A,Q),this}get names(){return KZ(super.names,this.iterable.names)}}class Qw extends b7{constructor(A,Q,B){super();this.name=A,this.args=Q,this.async=B}render(A){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(A)}}Qw.kind="func";class Bw extends Gw{render(A){return"return "+super.render(A)}}Bw.kind="return";class A$A extends b7{render(A){let Q="try"+super.render(A);if(this.catch)Q+=this.catch.render(A);if(this.finally)Q+=this.finally.render(A);return Q}optimizeNodes(){var A,Q;return super.optimizeNodes(),(A=this.catch)===null||A===void 0||A.optimizeNodes(),(Q=this.finally)===null||Q===void 0||Q.optimizeNodes(),this}optimizeNames(A,Q){var B,Y;return super.optimizeNames(A,Q),(B=this.catch)===null||B===void 0||B.optimizeNames(A,Q),(Y=this.finally)===null||Y===void 0||Y.optimizeNames(A,Q),this}get names(){let A=super.names;if(this.catch)KZ(A,this.catch.names);if(this.finally)KZ(A,this.finally.names);return A}}class Yw extends b7{constructor(A){super();this.error=A}render(A){return`catch(${this.error})`+super.render(A)}}Yw.kind="catch";class Jw extends b7{render(A){return"finally"+super.render(A)}}Jw.kind="finally";class Q$A{constructor(A,Q={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...Q,_n:Q.lines?` +`:""},this._extScope=A,this._scope=new cC.Scope({parent:A}),this._nodes=[new oZA]}toString(){return this._root.render(this.opts)}name(A){return this._scope.name(A)}scopeName(A){return this._extScope.name(A)}scopeValue(A,Q){let B=this._extScope.value(A,Q);return(this._values[B.prefix]||(this._values[B.prefix]=new Set)).add(B),B}getScopeValue(A,Q){return this._extScope.getValue(A,Q)}scopeRefs(A){return this._extScope.scopeRefs(A,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(A,Q,B,Y){let J=this._scope.toName(Q);if(B!==void 0&&Y)this._constants[J.str]=B;return this._leafNode(new pZA(A,J,B)),J}const(A,Q,B){return this._def(cC.varKinds.const,A,Q,B)}let(A,Q,B){return this._def(cC.varKinds.let,A,Q,B)}var(A,Q,B){return this._def(cC.varKinds.var,A,Q,B)}assign(A,Q,B){return this._leafNode(new Yb(A,Q,B))}add(A,Q){return this._leafNode(new iZA(A,f9.operators.ADD,Q))}code(A){if(typeof A=="function")A();else if(A!==HB.nil)this._leafNode(new aZA(A));return this}object(...A){let Q=["{"];for(let[B,Y]of A){if(Q.length>1)Q.push(",");if(Q.push(B),B!==Y||this.opts.es5)Q.push(":"),(0,HB.addCodeArg)(Q,Y)}return Q.push("}"),new HB._Code(Q)}if(A,Q,B){if(this._blockNode(new m6(A)),Q&&B)this.code(Q).else().code(B).endIf();else if(Q)this.code(Q).endIf();else if(B)throw Error('CodeGen: "else" body without "then" body');return this}elseIf(A){return this._elseNode(new m6(A))}else(){return this._elseNode(new ID)}endIf(){return this._endBlockNode(m6,ID)}_for(A,Q){if(this._blockNode(A),Q)this.code(Q).endFor();return this}for(A,Q){return this._for(new tZA(A),Q)}forRange(A,Q,B,Y,J=this.opts.es5?cC.varKinds.var:cC.varKinds.let){let C=this._scope.toName(A);return this._for(new eZA(J,C,Q,B),()=>Y(C))}forOf(A,Q,B,Y=cC.varKinds.const){let J=this._scope.toName(A);if(this.opts.es5){let C=Q instanceof HB.Name?Q:this.var("_arr",Q);return this.forRange("_i",0,HB._`${C}.length`,(X)=>{this.var(J,HB._`${C}[${X}]`),B(J)})}return this._for(new Qb("of",Y,J,Q),()=>B(J))}forIn(A,Q,B,Y=this.opts.es5?cC.varKinds.var:cC.varKinds.const){if(this.opts.ownProperties)return this.forOf(A,HB._`Object.keys(${Q})`,B);let J=this._scope.toName(A);return this._for(new Qb("in",Y,J,Q),()=>B(J))}endFor(){return this._endBlockNode(ZE)}label(A){return this._leafNode(new nZA(A))}break(A){return this._leafNode(new sZA(A))}return(A){let Q=new Bw;if(this._blockNode(Q),this.code(A),Q.nodes.length!==1)throw Error('CodeGen: "return" should have one node');return this._endBlockNode(Bw)}try(A,Q,B){if(!Q&&!B)throw Error('CodeGen: "try" without "catch" and "finally"');let Y=new A$A;if(this._blockNode(Y),this.code(A),Q){let J=this.name("e");this._currNode=Y.catch=new Yw(J),Q(J)}if(B)this._currNode=Y.finally=new Jw,this.code(B);return this._endBlockNode(Yw,Jw)}throw(A){return this._leafNode(new rZA(A))}block(A,Q){if(this._blockStarts.push(this._nodes.length),A)this.code(A).endBlock(Q);return this}endBlock(A){let Q=this._blockStarts.pop();if(Q===void 0)throw Error("CodeGen: not in self-balancing block");let B=this._nodes.length-Q;if(B<0||A!==void 0&&B!==A)throw Error(`CodeGen: wrong number of nodes: ${B} vs ${A} expected`);return this._nodes.length=Q,this}func(A,Q=HB.nil,B,Y){if(this._blockNode(new Qw(A,Q,B)),Y)this.code(Y).endFunc();return this}endFunc(){return this._endBlockNode(Qw)}optimize(A=1){while(A-- >0)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(A){return this._currNode.nodes.push(A),this}_blockNode(A){this._currNode.nodes.push(A),this._nodes.push(A)}_endBlockNode(A,Q){let B=this._currNode;if(B instanceof A||Q&&B instanceof Q)return this._nodes.pop(),this;throw Error(`CodeGen: not in block "${Q?`${A.kind}/${Q.kind}`:A.kind}"`)}_elseNode(A){let Q=this._currNode;if(!(Q instanceof m6))throw Error('CodeGen: "else" without "if"');return this._currNode=Q.else=A,this}get _root(){return this._nodes[0]}get _currNode(){let A=this._nodes;return A[A.length-1]}set _currNode(A){let Q=this._nodes;Q[Q.length-1]=A}}f9.CodeGen=Q$A;function KZ(A,Q){for(let B in Q)A[B]=(A[B]||0)+(Q[B]||0);return A}function Cw(A,Q){return Q instanceof HB._CodeOrName?KZ(A,Q.names):A}function $E(A,Q,B){if(A instanceof HB.Name)return Y(A);if(!J(A))return A;return new HB._Code(A._items.reduce((C,X)=>{if(X instanceof HB.Name)X=Y(X);if(X instanceof HB._Code)C.push(...X._items);else C.push(X);return C},[]));function Y(C){let X=B[C.str];if(X===void 0||Q[C.str]!==1)return C;return delete Q[C.str],X}function J(C){return C instanceof HB._Code&&C._items.some((X)=>X instanceof HB.Name&&Q[X.str]===1&&B[X.str]!==void 0)}}function Y9B(A,Q){for(let B in Q)A[B]=(A[B]||0)-(Q[B]||0)}function B$A(A){return typeof A=="boolean"||typeof A=="number"||A===null?!A:HB._`!${Bb(A)}`}f9.not=B$A;var J9B=Y$A(f9.operators.AND);function C9B(...A){return A.reduce(J9B)}f9.and=C9B;var X9B=Y$A(f9.operators.OR);function G9B(...A){return A.reduce(X9B)}f9.or=G9B;function Y$A(A){return(Q,B)=>Q===HB.nil?B:B===HB.nil?Q:HB._`${Bb(Q)} ${A} ${Bb(B)}`}function Bb(A){return A instanceof HB.Name?A:HB._`(${A})`}});var wB=R((U$A)=>{Object.defineProperty(U$A,"__esModule",{value:!0});U$A.checkStrictMode=U$A.getErrorPath=U$A.Type=U$A.useFunc=U$A.setEvaluated=U$A.evaluatedPropsToName=U$A.mergeEvaluated=U$A.eachItem=U$A.unescapeJsonPointer=U$A.escapeJsonPointer=U$A.escapeFragment=U$A.unescapeFragment=U$A.schemaRefOrVal=U$A.schemaHasRulesButRef=U$A.schemaHasRules=U$A.checkUnknownRules=U$A.alwaysValidSchema=U$A.toHash=void 0;var eB=GB(),$9B=VD();function U9B(A){let Q={};for(let B of A)Q[B]=!0;return Q}U$A.toHash=U9B;function E9B(A,Q){if(typeof Q=="boolean")return Q;if(Object.keys(Q).length===0)return!0;return G$A(A,Q),!W$A(Q,A.self.RULES.all)}U$A.alwaysValidSchema=E9B;function G$A(A,Q=A.schema){let{opts:B,self:Y}=A;if(!B.strictSchema)return;if(typeof Q==="boolean")return;let J=Y.RULES.keywords;for(let C in Q)if(!J[C])$$A(A,`unknown keyword: "${C}"`)}U$A.checkUnknownRules=G$A;function W$A(A,Q){if(typeof A=="boolean")return!A;for(let B in A)if(Q[B])return!0;return!1}U$A.schemaHasRules=W$A;function K9B(A,Q){if(typeof A=="boolean")return!A;for(let B in A)if(B!=="$ref"&&Q.all[B])return!0;return!1}U$A.schemaHasRulesButRef=K9B;function V9B({topSchemaRef:A,schemaPath:Q},B,Y,J){if(!J){if(typeof B=="number"||typeof B=="boolean")return B;if(typeof B=="string")return eB._`${B}`}return eB._`${A}${Q}${(0,eB.getProperty)(Y)}`}U$A.schemaRefOrVal=V9B;function I9B(A){return F$A(decodeURIComponent(A))}U$A.unescapeFragment=I9B;function H9B(A){return encodeURIComponent(Cb(A))}U$A.escapeFragment=H9B;function Cb(A){if(typeof A=="number")return`${A}`;return A.replace(/~/g,"~0").replace(/\//g,"~1")}U$A.escapeJsonPointer=Cb;function F$A(A){return A.replace(/~1/g,"/").replace(/~0/g,"~")}U$A.unescapeJsonPointer=F$A;function D9B(A,Q){if(Array.isArray(A))for(let B of A)Q(B);else Q(A)}U$A.eachItem=D9B;function C$A({mergeNames:A,mergeToName:Q,mergeValues:B,resultToName:Y}){return(J,C,X,G)=>{let W=X===void 0?C:X instanceof eB.Name?(C instanceof eB.Name?A(J,C,X):Q(J,C,X),X):C instanceof eB.Name?(Q(J,X,C),C):B(C,X);return G===eB.Name&&!(W instanceof eB.Name)?Y(J,W):W}}U$A.mergeEvaluated={props:C$A({mergeNames:(A,Q,B)=>A.if(eB._`${B} !== true && ${Q} !== undefined`,()=>{A.if(eB._`${Q} === true`,()=>A.assign(B,!0),()=>A.assign(B,eB._`${B} || {}`).code(eB._`Object.assign(${B}, ${Q})`))}),mergeToName:(A,Q,B)=>A.if(eB._`${B} !== true`,()=>{if(Q===!0)A.assign(B,!0);else A.assign(B,eB._`${B} || {}`),Xb(A,B,Q)}),mergeValues:(A,Q)=>A===!0?!0:{...A,...Q},resultToName:Z$A}),items:C$A({mergeNames:(A,Q,B)=>A.if(eB._`${B} !== true && ${Q} !== undefined`,()=>A.assign(B,eB._`${Q} === true ? true : ${B} > ${Q} ? ${B} : ${Q}`)),mergeToName:(A,Q,B)=>A.if(eB._`${B} !== true`,()=>A.assign(B,Q===!0?!0:eB._`${B} > ${Q} ? ${B} : ${Q}`)),mergeValues:(A,Q)=>A===!0?!0:Math.max(A,Q),resultToName:(A,Q)=>A.var("items",Q)})};function Z$A(A,Q){if(Q===!0)return A.var("props",!0);let B=A.var("props",eB._`{}`);if(Q!==void 0)Xb(A,B,Q);return B}U$A.evaluatedPropsToName=Z$A;function Xb(A,Q,B){Object.keys(B).forEach((Y)=>A.assign(eB._`${Q}${(0,eB.getProperty)(Y)}`,!0))}U$A.setEvaluated=Xb;var X$A={};function N9B(A,Q){return A.scopeValue("func",{ref:Q,code:X$A[Q.code]||(X$A[Q.code]=new $9B._Code(Q.code))})}U$A.useFunc=N9B;var Jb;(function(A){A[A.Num=0]="Num",A[A.Str=1]="Str"})(Jb||(U$A.Type=Jb={}));function L9B(A,Q,B){if(A instanceof eB.Name){let Y=Q===Jb.Num;return B?Y?eB._`"[" + ${A} + "]"`:eB._`"['" + ${A} + "']"`:Y?eB._`"/" + ${A}`:eB._`"/" + ${A}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return B?(0,eB.getProperty)(A).toString():"/"+Cb(A)}U$A.getErrorPath=L9B;function $$A(A,Q,B=A.opts.strictSchema){if(!B)return;if(Q=`strict mode: ${Q}`,B===!0)throw Error(Q);A.self.logger.warn(Q)}U$A.checkStrictMode=$$A});var u6=R((K$A)=>{Object.defineProperty(K$A,"__esModule",{value:!0});var OJ=GB(),f9B={data:new OJ.Name("data"),valCxt:new OJ.Name("valCxt"),instancePath:new OJ.Name("instancePath"),parentData:new OJ.Name("parentData"),parentDataProperty:new OJ.Name("parentDataProperty"),rootData:new OJ.Name("rootData"),dynamicAnchors:new OJ.Name("dynamicAnchors"),vErrors:new OJ.Name("vErrors"),errors:new OJ.Name("errors"),this:new OJ.Name("this"),self:new OJ.Name("self"),scope:new OJ.Name("scope"),json:new OJ.Name("json"),jsonPos:new OJ.Name("jsonPos"),jsonLen:new OJ.Name("jsonLen"),jsonPart:new OJ.Name("jsonPart")};K$A.default=f9B});var HD=R((D$A)=>{Object.defineProperty(D$A,"__esModule",{value:!0});D$A.extendErrors=D$A.resetErrorsCount=D$A.reportExtraError=D$A.reportError=D$A.keyword$DataError=D$A.keywordError=void 0;var qB=GB(),Fw=wB(),W9=u6();D$A.keywordError={message:({keyword:A})=>qB.str`must pass "${A}" keyword validation`};D$A.keyword$DataError={message:({keyword:A,schemaType:Q})=>Q?qB.str`"${A}" keyword must be ${Q} ($data)`:qB.str`"${A}" keyword is invalid ($data)`};function m9B(A,Q=D$A.keywordError,B,Y){let{it:J}=A,{gen:C,compositeRule:X,allErrors:G}=J,W=H$A(A,Q,B);if(Y!==null&&Y!==void 0?Y:X||G)V$A(C,W);else I$A(J,qB._`[${W}]`)}D$A.reportError=m9B;function u9B(A,Q=D$A.keywordError,B){let{it:Y}=A,{gen:J,compositeRule:C,allErrors:X}=Y,G=H$A(A,Q,B);if(V$A(J,G),!(C||X))I$A(Y,W9.default.vErrors)}D$A.reportExtraError=u9B;function d9B(A,Q){A.assign(W9.default.errors,Q),A.if(qB._`${W9.default.vErrors} !== null`,()=>A.if(Q,()=>A.assign(qB._`${W9.default.vErrors}.length`,Q),()=>A.assign(W9.default.vErrors,null)))}D$A.resetErrorsCount=d9B;function c9B({gen:A,keyword:Q,schemaValue:B,data:Y,errsCount:J,it:C}){if(J===void 0)throw Error("ajv implementation error");let X=A.name("err");A.forRange("i",J,W9.default.errors,(G)=>{if(A.const(X,qB._`${W9.default.vErrors}[${G}]`),A.if(qB._`${X}.instancePath === undefined`,()=>A.assign(qB._`${X}.instancePath`,(0,qB.strConcat)(W9.default.instancePath,C.errorPath))),A.assign(qB._`${X}.schemaPath`,qB.str`${C.errSchemaPath}/${Q}`),C.opts.verbose)A.assign(qB._`${X}.schema`,B),A.assign(qB._`${X}.data`,Y)})}D$A.extendErrors=c9B;function V$A(A,Q){let B=A.const("err",Q);A.if(qB._`${W9.default.vErrors} === null`,()=>A.assign(W9.default.vErrors,qB._`[${B}]`),qB._`${W9.default.vErrors}.push(${B})`),A.code(qB._`${W9.default.errors}++`)}function I$A(A,Q){let{gen:B,validateName:Y,schemaEnv:J}=A;if(J.$async)B.throw(qB._`new ${A.ValidationError}(${Q})`);else B.assign(qB._`${Y}.errors`,Q),B.return(!1)}var VZ={keyword:new qB.Name("keyword"),schemaPath:new qB.Name("schemaPath"),params:new qB.Name("params"),propertyName:new qB.Name("propertyName"),message:new qB.Name("message"),schema:new qB.Name("schema"),parentSchema:new qB.Name("parentSchema")};function H$A(A,Q,B){let{createErrors:Y}=A.it;if(Y===!1)return qB._`{}`;return l9B(A,Q,B)}function l9B(A,Q,B={}){let{gen:Y,it:J}=A,C=[p9B(J,B),i9B(A,B)];return n9B(A,Q,C),Y.object(...C)}function p9B({errorPath:A},{instancePath:Q}){let B=Q?qB.str`${A}${(0,Fw.getErrorPath)(Q,Fw.Type.Str)}`:A;return[W9.default.instancePath,(0,qB.strConcat)(W9.default.instancePath,B)]}function i9B({keyword:A,it:{errSchemaPath:Q}},{schemaPath:B,parentSchema:Y}){let J=Y?Q:qB.str`${Q}/${A}`;if(B)J=qB.str`${J}${(0,Fw.getErrorPath)(B,Fw.Type.Str)}`;return[VZ.schemaPath,J]}function n9B(A,{params:Q,message:B},Y){let{keyword:J,data:C,schemaValue:X,it:G}=A,{opts:W,propertyName:F,topSchemaRef:Z,schemaPath:U}=G;if(Y.push([VZ.keyword,J],[VZ.params,typeof Q=="function"?Q(A):Q||qB._`{}`]),W.messages)Y.push([VZ.message,typeof B=="function"?B(A):B]);if(W.verbose)Y.push([VZ.schema,X],[VZ.parentSchema,qB._`${Z}${U}`],[W9.default.data,C]);if(F)Y.push([VZ.propertyName,F])}});var z$A=R((q$A)=>{Object.defineProperty(q$A,"__esModule",{value:!0});q$A.boolOrEmptySchema=q$A.topBoolOrEmptySchema=void 0;var t9B=HD(),e9B=GB(),A8B=u6(),Q8B={message:"boolean schema is false"};function B8B(A){let{gen:Q,schema:B,validateName:Y}=A;if(B===!1)L$A(A,!1);else if(typeof B=="object"&&B.$async===!0)Q.return(A8B.default.data);else Q.assign(e9B._`${Y}.errors`,null),Q.return(!0)}q$A.topBoolOrEmptySchema=B8B;function Y8B(A,Q){let{gen:B,schema:Y}=A;if(Y===!1)B.var(Q,!1),L$A(A);else B.var(Q,!0)}q$A.boolOrEmptySchema=Y8B;function L$A(A,Q){let{gen:B,data:Y}=A,J={gen:B,keyword:"false schema",data:Y,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:A};(0,t9B.reportError)(J,Q8B,void 0,Q)}});var Wb=R((R$A)=>{Object.defineProperty(R$A,"__esModule",{value:!0});R$A.getRules=R$A.isJSONType=void 0;var C8B=["string","number","integer","boolean","null","object","array"],X8B=new Set(C8B);function G8B(A){return typeof A=="string"&&X8B.has(A)}R$A.isJSONType=G8B;function W8B(){let A={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...A,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},A.number,A.string,A.array,A.object],post:{rules:[]},all:{},keywords:{}}}R$A.getRules=W8B});var Fb=R((P$A)=>{Object.defineProperty(P$A,"__esModule",{value:!0});P$A.shouldUseRule=P$A.shouldUseGroup=P$A.schemaHasRulesForType=void 0;function Z8B({schema:A,self:Q},B){let Y=Q.RULES.types[B];return Y&&Y!==!0&&j$A(A,Y)}P$A.schemaHasRulesForType=Z8B;function j$A(A,Q){return Q.rules.some((B)=>O$A(A,B))}P$A.shouldUseGroup=j$A;function O$A(A,Q){var B;return A[Q.keyword]!==void 0||((B=Q.definition.implements)===null||B===void 0?void 0:B.some((Y)=>A[Y]!==void 0))}P$A.shouldUseRule=O$A});var DD=R((v$A)=>{Object.defineProperty(v$A,"__esModule",{value:!0});v$A.reportTypeError=v$A.checkDataTypes=v$A.checkDataType=v$A.coerceAndCheckDataType=v$A.getJSONTypes=v$A.getSchemaTypes=v$A.DataType=void 0;var E8B=Wb(),K8B=Fb(),V8B=HD(),aQ=GB(),S$A=wB(),UE;(function(A){A[A.Correct=0]="Correct",A[A.Wrong=1]="Wrong"})(UE||(v$A.DataType=UE={}));function I8B(A){let Q=k$A(A.type);if(Q.includes("null")){if(A.nullable===!1)throw Error("type: null contradicts nullable: false")}else{if(!Q.length&&A.nullable!==void 0)throw Error('"nullable" cannot be used without "type"');if(A.nullable===!0)Q.push("null")}return Q}v$A.getSchemaTypes=I8B;function k$A(A){let Q=Array.isArray(A)?A:A?[A]:[];if(Q.every(E8B.isJSONType))return Q;throw Error("type must be JSONType or JSONType[]: "+Q.join(","))}v$A.getJSONTypes=k$A;function H8B(A,Q){let{gen:B,data:Y,opts:J}=A,C=D8B(Q,J.coerceTypes),X=Q.length>0&&!(C.length===0&&Q.length===1&&(0,K8B.schemaHasRulesForType)(A,Q[0]));if(X){let G=$b(Q,Y,J.strictNumbers,UE.Wrong);B.if(G,()=>{if(C.length)N8B(A,Q,C);else Ub(A)})}return X}v$A.coerceAndCheckDataType=H8B;var _$A=new Set(["string","number","integer","boolean","null"]);function D8B(A,Q){return Q?A.filter((B)=>_$A.has(B)||Q==="array"&&B==="array"):[]}function N8B(A,Q,B){let{gen:Y,data:J,opts:C}=A,X=Y.let("dataType",aQ._`typeof ${J}`),G=Y.let("coerced",aQ._`undefined`);if(C.coerceTypes==="array")Y.if(aQ._`${X} == 'object' && Array.isArray(${J}) && ${J}.length == 1`,()=>Y.assign(J,aQ._`${J}[0]`).assign(X,aQ._`typeof ${J}`).if($b(Q,J,C.strictNumbers),()=>Y.assign(G,J)));Y.if(aQ._`${G} !== undefined`);for(let F of B)if(_$A.has(F)||F==="array"&&C.coerceTypes==="array")W(F);Y.else(),Ub(A),Y.endIf(),Y.if(aQ._`${G} !== undefined`,()=>{Y.assign(J,G),L8B(A,G)});function W(F){switch(F){case"string":Y.elseIf(aQ._`${X} == "number" || ${X} == "boolean"`).assign(G,aQ._`"" + ${J}`).elseIf(aQ._`${J} === null`).assign(G,aQ._`""`);return;case"number":Y.elseIf(aQ._`${X} == "boolean" || ${J} === null || (${X} == "string" && ${J} && ${J} == +${J})`).assign(G,aQ._`+${J}`);return;case"integer":Y.elseIf(aQ._`${X} === "boolean" || ${J} === null || (${X} === "string" && ${J} && ${J} == +${J} && !(${J} % 1))`).assign(G,aQ._`+${J}`);return;case"boolean":Y.elseIf(aQ._`${J} === "false" || ${J} === 0 || ${J} === null`).assign(G,!1).elseIf(aQ._`${J} === "true" || ${J} === 1`).assign(G,!0);return;case"null":Y.elseIf(aQ._`${J} === "" || ${J} === 0 || ${J} === false`),Y.assign(G,null);return;case"array":Y.elseIf(aQ._`${X} === "string" || ${X} === "number" - || ${X} === "boolean" || ${J} === null`).assign(G,aQ._`[${J}]`)}}}function L8B({gen:A,parentData:Q,parentDataProperty:B},Y){A.if(aQ._`${Q} !== undefined`,()=>A.assign(aQ._`${Q}[${B}]`,Y))}function Zb(A,Q,B,Y=UE.Correct){let J=Y===UE.Correct?aQ.operators.EQ:aQ.operators.NEQ,C;switch(A){case"null":return aQ._`${Q} ${J} null`;case"array":C=aQ._`Array.isArray(${Q})`;break;case"object":C=aQ._`${Q} && typeof ${Q} == "object" && !Array.isArray(${Q})`;break;case"integer":C=X(aQ._`!(${Q} % 1) && !isNaN(${Q})`);break;case"number":C=X();break;default:return aQ._`typeof ${Q} ${J} ${A}`}return Y===UE.Correct?C:(0,aQ.not)(C);function X(G=aQ.nil){return(0,aQ.and)(aQ._`typeof ${Q} == "number"`,G,B?aQ._`isFinite(${Q})`:aQ.nil)}}v$A.checkDataType=Zb;function $b(A,Q,B,Y){if(A.length===1)return Zb(A[0],Q,B,Y);let J,C=(0,S$A.toHash)(A);if(C.array&&C.object){let X=aQ._`typeof ${Q} != "object"`;J=C.null?X:aQ._`!${Q} || ${X}`,delete C.null,delete C.array,delete C.object}else J=aQ.nil;if(C.number)delete C.integer;for(let X in C)J=(0,aQ.and)(J,Zb(X,Q,B,Y));return J}v$A.checkDataTypes=$b;var q8B={message:({schema:A})=>`must be ${A}`,params:({schema:A,schemaValue:Q})=>typeof A=="string"?aQ._`{type: ${A}}`:aQ._`{type: ${Q}}`};function Ub(A){let Q=M8B(A);(0,V8B.reportError)(Q,q8B)}v$A.reportTypeError=Ub;function M8B(A){let{gen:Q,data:B,schema:Y}=A,J=(0,S$A.schemaRefOrVal)(A,Y,"type");return{gen:Q,keyword:"type",data:B,schema:Y.type,schemaCode:J,schemaValue:J,parentSchema:Y,params:{},it:A}}});var f$A=R((h$A)=>{Object.defineProperty(h$A,"__esModule",{value:!0});h$A.assignDefaults=void 0;var EE=GB(),T8B=wB();function S8B(A,Q){let{properties:B,items:Y}=A.schema;if(Q==="object"&&B)for(let J in B)g$A(A,J,B[J].default);else if(Q==="array"&&Array.isArray(Y))Y.forEach((J,C)=>g$A(A,C,J.default))}h$A.assignDefaults=S8B;function g$A(A,Q,B){let{gen:Y,compositeRule:J,data:C,opts:X}=A;if(B===void 0)return;let G=EE._`${C}${(0,EE.getProperty)(Q)}`;if(J){(0,T8B.checkStrictMode)(A,`default is ignored for: ${G}`);return}let W=EE._`${G} === undefined`;if(X.useDefaults==="empty")W=EE._`${W} || ${G} === null || ${G} === ""`;Y.if(W,EE._`${G} = ${(0,EE.stringify)(B)}`)}});var w5=R((u$A)=>{Object.defineProperty(u$A,"__esModule",{value:!0});u$A.validateUnion=u$A.validateArray=u$A.usePattern=u$A.callValidateCode=u$A.schemaProperties=u$A.allSchemaProperties=u$A.noPropertyInData=u$A.propertyInData=u$A.isOwnProperty=u$A.hasPropFunc=u$A.reportMissingProp=u$A.checkMissingProp=u$A.checkReportMissingProp=void 0;var E0=GB(),Eb=wB(),m7=u6(),k8B=wB();function _8B(A,Q){let{gen:B,data:Y,it:J}=A;B.if(Vb(B,Y,Q,J.opts.ownProperties),()=>{A.setParams({missingProperty:E0._`${Q}`},!0),A.error()})}u$A.checkReportMissingProp=_8B;function v8B({gen:A,data:Q,it:{opts:B}},Y,J){return(0,E0.or)(...Y.map((C)=>(0,E0.and)(Vb(A,Q,C,B.ownProperties),E0._`${J} = ${C}`)))}u$A.checkMissingProp=v8B;function y8B(A,Q){A.setParams({missingProperty:Q},!0),A.error()}u$A.reportMissingProp=y8B;function b$A(A){return A.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:E0._`Object.prototype.hasOwnProperty`})}u$A.hasPropFunc=b$A;function Kb(A,Q,B){return E0._`${b$A(A)}.call(${Q}, ${B})`}u$A.isOwnProperty=Kb;function g8B(A,Q,B,Y){let J=E0._`${Q}${(0,E0.getProperty)(B)} !== undefined`;return Y?E0._`${J} && ${Kb(A,Q,B)}`:J}u$A.propertyInData=g8B;function Vb(A,Q,B,Y){let J=E0._`${Q}${(0,E0.getProperty)(B)} === undefined`;return Y?(0,E0.or)(J,(0,E0.not)(Kb(A,Q,B))):J}u$A.noPropertyInData=Vb;function m$A(A){return A?Object.keys(A).filter((Q)=>Q!=="__proto__"):[]}u$A.allSchemaProperties=m$A;function h8B(A,Q){return m$A(Q).filter((B)=>!(0,Eb.alwaysValidSchema)(A,Q[B]))}u$A.schemaProperties=h8B;function x8B({schemaCode:A,data:Q,it:{gen:B,topSchemaRef:Y,schemaPath:J,errorPath:C},it:X},G,W,F){let Z=F?E0._`${A}, ${Q}, ${Y}${J}`:Q,U=[[m7.default.instancePath,(0,E0.strConcat)(m7.default.instancePath,C)],[m7.default.parentData,X.parentData],[m7.default.parentDataProperty,X.parentDataProperty],[m7.default.rootData,m7.default.rootData]];if(X.opts.dynamicRef)U.push([m7.default.dynamicAnchors,m7.default.dynamicAnchors]);let $=E0._`${Z}, ${B.object(...U)}`;return W!==E0.nil?E0._`${G}.call(${W}, ${$})`:E0._`${G}(${$})`}u$A.callValidateCode=x8B;var f8B=E0._`new RegExp`;function b8B({gen:A,it:{opts:Q}},B){let Y=Q.unicodeRegExp?"u":"",{regExp:J}=Q.code,C=J(B,Y);return A.scopeValue("pattern",{key:C.toString(),ref:C,code:E0._`${J.code==="new RegExp"?f8B:(0,k8B.useFunc)(A,J)}(${B}, ${Y})`})}u$A.usePattern=b8B;function m8B(A){let{gen:Q,data:B,keyword:Y,it:J}=A,C=Q.name("valid");if(J.allErrors){let G=Q.let("valid",!0);return X(()=>Q.assign(G,!1)),G}return Q.var(C,!0),X(()=>Q.break()),C;function X(G){let W=Q.const("len",E0._`${B}.length`);Q.forRange("i",0,W,(F)=>{A.subschema({keyword:Y,dataProp:F,dataPropType:Eb.Type.Num},C),Q.if((0,E0.not)(C),G)})}}u$A.validateArray=m8B;function u8B(A){let{gen:Q,schema:B,keyword:Y,it:J}=A;if(!Array.isArray(B))throw Error("ajv implementation error");if(B.some((W)=>(0,Eb.alwaysValidSchema)(J,W))&&!J.opts.unevaluated)return;let X=Q.let("valid",!1),G=Q.name("_valid");Q.block(()=>B.forEach((W,F)=>{let Z=A.subschema({keyword:Y,schemaProp:F,compositeRule:!0},G);if(Q.assign(X,E0._`${X} || ${G}`),!A.mergeValidEvaluated(Z,G))Q.if((0,E0.not)(X))})),A.result(X,()=>A.reset(),()=>A.error(!0))}u$A.validateUnion=u8B});var n$A=R((p$A)=>{Object.defineProperty(p$A,"__esModule",{value:!0});p$A.validateKeywordUsage=p$A.validSchemaType=p$A.funcKeywordCode=p$A.macroKeywordCode=void 0;var F9=GB(),VZ=u6(),A5B=w5(),Q5B=HD();function B5B(A,Q){let{gen:B,keyword:Y,schema:J,parentSchema:C,it:X}=A,G=Q.macro.call(X.self,J,C,X),W=l$A(B,Y,G);if(X.opts.validateSchema!==!1)X.self.validateSchema(G,!0);let F=B.name("valid");A.subschema({schema:G,schemaPath:F9.nil,errSchemaPath:`${X.errSchemaPath}/${Y}`,topSchemaRef:W,compositeRule:!0},F),A.pass(F,()=>A.error(!0))}p$A.macroKeywordCode=B5B;function Y5B(A,Q){var B;let{gen:Y,keyword:J,schema:C,parentSchema:X,$data:G,it:W}=A;C5B(W,Q);let F=!G&&Q.compile?Q.compile.call(W.self,C,X,W):Q.validate,Z=l$A(Y,J,F),U=Y.let("valid");A.block$data(U,$),A.ok((B=Q.valid)!==null&&B!==void 0?B:U);function $(){if(Q.errors===!1){if(I(),Q.modifying)c$A(A);V(()=>A.error())}else{let H=Q.async?E():K();if(Q.modifying)c$A(A);V(()=>J5B(A,H))}}function E(){let H=Y.let("ruleErrs",null);return Y.try(()=>I(F9._`await `),(D)=>Y.assign(U,!1).if(F9._`${D} instanceof ${W.ValidationError}`,()=>Y.assign(H,F9._`${D}.errors`),()=>Y.throw(D))),H}function K(){let H=F9._`${Z}.errors`;return Y.assign(H,null),I(F9.nil),H}function I(H=Q.async?F9._`await `:F9.nil){let D=W.opts.passContext?VZ.default.this:VZ.default.self,L=!(("compile"in Q)&&!G||Q.schema===!1);Y.assign(U,F9._`${H}${(0,A5B.callValidateCode)(A,Z,D,L)}`,Q.modifying)}function V(H){var D;Y.if((0,F9.not)((D=Q.valid)!==null&&D!==void 0?D:U),H)}}p$A.funcKeywordCode=Y5B;function c$A(A){let{gen:Q,data:B,it:Y}=A;Q.if(Y.parentData,()=>Q.assign(B,F9._`${Y.parentData}[${Y.parentDataProperty}]`))}function J5B(A,Q){let{gen:B}=A;B.if(F9._`Array.isArray(${Q})`,()=>{B.assign(VZ.default.vErrors,F9._`${VZ.default.vErrors} === null ? ${Q} : ${VZ.default.vErrors}.concat(${Q})`).assign(VZ.default.errors,F9._`${VZ.default.vErrors}.length`),(0,Q5B.extendErrors)(A)},()=>A.error())}function C5B({schemaEnv:A},Q){if(Q.async&&!A.$async)throw Error("async keyword in sync schema")}function l$A(A,Q,B){if(B===void 0)throw Error(`keyword "${Q}" failed to compile`);return A.scopeValue("keyword",typeof B=="function"?{ref:B}:{ref:B,code:(0,F9.stringify)(B)})}function X5B(A,Q,B=!1){return!Q.length||Q.some((Y)=>Y==="array"?Array.isArray(A):Y==="object"?A&&typeof A=="object"&&!Array.isArray(A):typeof A==Y||B&&typeof A>"u")}p$A.validSchemaType=X5B;function G5B({schema:A,opts:Q,self:B,errSchemaPath:Y},J,C){if(Array.isArray(J.keyword)?!J.keyword.includes(C):J.keyword!==C)throw Error("ajv implementation error");let X=J.dependencies;if(X===null||X===void 0?void 0:X.some((G)=>!Object.prototype.hasOwnProperty.call(A,G)))throw Error(`parent schema must have dependencies of ${C}: ${X.join(",")}`);if(J.validateSchema){if(!J.validateSchema(A[C])){let W=`keyword "${C}" value is invalid at path "${Y}": `+B.errorsText(J.validateSchema.errors);if(Q.validateSchema==="log")B.logger.error(W);else throw Error(W)}}}p$A.validateKeywordUsage=G5B});var o$A=R((r$A)=>{Object.defineProperty(r$A,"__esModule",{value:!0});r$A.extendSubschemaMode=r$A.extendSubschemaData=r$A.getSubschema=void 0;var e1=GB(),s$A=wB();function $5B(A,{keyword:Q,schemaProp:B,schema:Y,schemaPath:J,errSchemaPath:C,topSchemaRef:X}){if(Q!==void 0&&Y!==void 0)throw Error('both "keyword" and "schema" passed, only one allowed');if(Q!==void 0){let G=A.schema[Q];return B===void 0?{schema:G,schemaPath:e1._`${A.schemaPath}${(0,e1.getProperty)(Q)}`,errSchemaPath:`${A.errSchemaPath}/${Q}`}:{schema:G[B],schemaPath:e1._`${A.schemaPath}${(0,e1.getProperty)(Q)}${(0,e1.getProperty)(B)}`,errSchemaPath:`${A.errSchemaPath}/${Q}/${(0,s$A.escapeFragment)(B)}`}}if(Y!==void 0){if(J===void 0||C===void 0||X===void 0)throw Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:Y,schemaPath:J,topSchemaRef:X,errSchemaPath:C}}throw Error('either "keyword" or "schema" must be passed')}r$A.getSubschema=$5B;function U5B(A,Q,{dataProp:B,dataPropType:Y,data:J,dataTypes:C,propertyName:X}){if(J!==void 0&&B!==void 0)throw Error('both "data" and "dataProp" passed, only one allowed');let{gen:G}=Q;if(B!==void 0){let{errorPath:F,dataPathArr:Z,opts:U}=Q,$=G.let("data",e1._`${Q.data}${(0,e1.getProperty)(B)}`,!0);W($),A.errorPath=e1.str`${F}${(0,s$A.getErrorPath)(B,Y,U.jsPropertySyntax)}`,A.parentDataProperty=e1._`${B}`,A.dataPathArr=[...Z,A.parentDataProperty]}if(J!==void 0){let F=J instanceof e1.Name?J:G.let("data",J,!0);if(W(F),X!==void 0)A.propertyName=X}if(C)A.dataTypes=C;function W(F){A.data=F,A.dataLevel=Q.dataLevel+1,A.dataTypes=[],Q.definedProperties=new Set,A.parentData=Q.data,A.dataNames=[...Q.dataNames,F]}}r$A.extendSubschemaData=U5B;function E5B(A,{jtdDiscriminator:Q,jtdMetadata:B,compositeRule:Y,createErrors:J,allErrors:C}){if(Y!==void 0)A.compositeRule=Y;if(J!==void 0)A.createErrors=J;if(C!==void 0)A.allErrors=C;A.jtdDiscriminator=Q,A.jtdMetadata=B}r$A.extendSubschemaMode=E5B});var Ib=R((pUY,t$A)=>{t$A.exports=function A(Q,B){if(Q===B)return!0;if(Q&&B&&typeof Q=="object"&&typeof B=="object"){if(Q.constructor!==B.constructor)return!1;var Y,J,C;if(Array.isArray(Q)){if(Y=Q.length,Y!=B.length)return!1;for(J=Y;J--!==0;)if(!A(Q[J],B[J]))return!1;return!0}if(Q.constructor===RegExp)return Q.source===B.source&&Q.flags===B.flags;if(Q.valueOf!==Object.prototype.valueOf)return Q.valueOf()===B.valueOf();if(Q.toString!==Object.prototype.toString)return Q.toString()===B.toString();if(C=Object.keys(Q),Y=C.length,Y!==Object.keys(B).length)return!1;for(J=Y;J--!==0;)if(!Object.prototype.hasOwnProperty.call(B,C[J]))return!1;for(J=Y;J--!==0;){var X=C[J];if(!A(Q[X],B[X]))return!1}return!0}return Q!==Q&&B!==B}});var A4A=R((iUY,e$A)=>{var u7=e$A.exports=function(A,Q,B){if(typeof Q=="function")B=Q,Q={};B=Q.cb||B;var Y=typeof B=="function"?B:B.pre||function(){},J=B.post||function(){};Zw(Q,Y,J,A,"",A)};u7.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};u7.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};u7.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};u7.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function Zw(A,Q,B,Y,J,C,X,G,W,F){if(Y&&typeof Y=="object"&&!Array.isArray(Y)){Q(Y,J,C,X,G,W,F);for(var Z in Y){var U=Y[Z];if(Array.isArray(U)){if(Z in u7.arrayKeywords)for(var $=0;${Object.defineProperty(J4A,"__esModule",{value:!0});J4A.getSchemaRefs=J4A.resolveUrl=J4A.normalizeId=J4A._getFullPath=J4A.getFullPath=J4A.inlineRef=void 0;var H5B=wB(),D5B=Ib(),N5B=A4A(),L5B=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function q5B(A,Q=!0){if(typeof A=="boolean")return!0;if(Q===!0)return!Hb(A);if(!Q)return!1;return Q4A(A)<=Q}J4A.inlineRef=q5B;var M5B=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Hb(A){for(let Q in A){if(M5B.has(Q))return!0;let B=A[Q];if(Array.isArray(B)&&B.some(Hb))return!0;if(typeof B=="object"&&Hb(B))return!0}return!1}function Q4A(A){let Q=0;for(let B in A){if(B==="$ref")return 1/0;if(Q++,L5B.has(B))continue;if(typeof A[B]=="object")(0,H5B.eachItem)(A[B],(Y)=>Q+=Q4A(Y));if(Q===1/0)return 1/0}return Q}function B4A(A,Q="",B){if(B!==!1)Q=KE(Q);let Y=A.parse(Q);return Y4A(A,Y)}J4A.getFullPath=B4A;function Y4A(A,Q){return A.serialize(Q).split("#")[0]+"#"}J4A._getFullPath=Y4A;var z5B=/#\/?$/;function KE(A){return A?A.replace(z5B,""):""}J4A.normalizeId=KE;function R5B(A,Q,B){return B=KE(B),A.resolve(Q,B)}J4A.resolveUrl=R5B;var w5B=/^[a-z_][-a-z0-9._]*$/i;function j5B(A,Q){if(typeof A=="boolean")return{};let{schemaId:B,uriResolver:Y}=this.opts,J=KE(A[B]||Q),C={"":J},X=B4A(Y,J,!1),G={},W=new Set;return N5B(A,{allKeys:!0},(U,$,E,K)=>{if(K===void 0)return;let I=X+$,V=C[K];if(typeof U[B]=="string")V=H.call(this,U[B]);D.call(this,U.$anchor),D.call(this,U.$dynamicAnchor),C[$]=V;function H(L){let z=this.opts.uriResolver.resolve;if(L=KE(V?z(V,L):L),W.has(L))throw Z(L);W.add(L);let M=this.refs[L];if(typeof M=="string")M=this.refs[M];if(typeof M=="object")F(U,M.schema,L);else if(L!==KE(I))if(L[0]==="#")F(U,G[L],L),G[L]=U;else this.refs[L]=I;return L}function D(L){if(typeof L=="string"){if(!w5B.test(L))throw Error(`invalid anchor "${L}"`);H.call(this,`#${L}`)}}}),G;function F(U,$,E){if($!==void 0&&!D5B(U,$))throw Z(E)}function Z(U){return Error(`reference "${U}" resolves to more than one schema`)}}J4A.getSchemaRefs=j5B});var MD=R((L4A)=>{Object.defineProperty(L4A,"__esModule",{value:!0});L4A.getData=L4A.KeywordCxt=L4A.validateFunctionCode=void 0;var Z4A=z$A(),X4A=DD(),Nb=Fb(),$w=DD(),_5B=f$A(),qD=n$A(),Db=o$A(),WQ=GB(),yQ=u6(),v5B=ND(),d6=wB(),LD=HD();function y5B(A){if(E4A(A)){if(K4A(A),U4A(A)){x5B(A);return}}$4A(A,()=>(0,Z4A.topBoolOrEmptySchema)(A))}L4A.validateFunctionCode=y5B;function $4A({gen:A,validateName:Q,schema:B,schemaEnv:Y,opts:J},C){if(J.code.es5)A.func(Q,WQ._`${yQ.default.data}, ${yQ.default.valCxt}`,Y.$async,()=>{A.code(WQ._`"use strict"; ${G4A(B,J)}`),h5B(A,J),A.code(C)});else A.func(Q,WQ._`${yQ.default.data}, ${g5B(J)}`,Y.$async,()=>A.code(G4A(B,J)).code(C))}function g5B(A){return WQ._`{${yQ.default.instancePath}="", ${yQ.default.parentData}, ${yQ.default.parentDataProperty}, ${yQ.default.rootData}=${yQ.default.data}${A.dynamicRef?WQ._`, ${yQ.default.dynamicAnchors}={}`:WQ.nil}}={}`}function h5B(A,Q){A.if(yQ.default.valCxt,()=>{if(A.var(yQ.default.instancePath,WQ._`${yQ.default.valCxt}.${yQ.default.instancePath}`),A.var(yQ.default.parentData,WQ._`${yQ.default.valCxt}.${yQ.default.parentData}`),A.var(yQ.default.parentDataProperty,WQ._`${yQ.default.valCxt}.${yQ.default.parentDataProperty}`),A.var(yQ.default.rootData,WQ._`${yQ.default.valCxt}.${yQ.default.rootData}`),Q.dynamicRef)A.var(yQ.default.dynamicAnchors,WQ._`${yQ.default.valCxt}.${yQ.default.dynamicAnchors}`)},()=>{if(A.var(yQ.default.instancePath,WQ._`""`),A.var(yQ.default.parentData,WQ._`undefined`),A.var(yQ.default.parentDataProperty,WQ._`undefined`),A.var(yQ.default.rootData,yQ.default.data),Q.dynamicRef)A.var(yQ.default.dynamicAnchors,WQ._`{}`)})}function x5B(A){let{schema:Q,opts:B,gen:Y}=A;$4A(A,()=>{if(B.$comment&&Q.$comment)I4A(A);if(d5B(A),Y.let(yQ.default.vErrors,null),Y.let(yQ.default.errors,0),B.unevaluated)f5B(A);V4A(A),p5B(A)});return}function f5B(A){let{gen:Q,validateName:B}=A;A.evaluated=Q.const("evaluated",WQ._`${B}.evaluated`),Q.if(WQ._`${A.evaluated}.dynamicProps`,()=>Q.assign(WQ._`${A.evaluated}.props`,WQ._`undefined`)),Q.if(WQ._`${A.evaluated}.dynamicItems`,()=>Q.assign(WQ._`${A.evaluated}.items`,WQ._`undefined`))}function G4A(A,Q){let B=typeof A=="object"&&A[Q.schemaId];return B&&(Q.code.source||Q.code.process)?WQ._`/*# sourceURL=${B} */`:WQ.nil}function b5B(A,Q){if(E4A(A)){if(K4A(A),U4A(A)){m5B(A,Q);return}}(0,Z4A.boolOrEmptySchema)(A,Q)}function U4A({schema:A,self:Q}){if(typeof A=="boolean")return!A;for(let B in A)if(Q.RULES.all[B])return!0;return!1}function E4A(A){return typeof A.schema!="boolean"}function m5B(A,Q){let{schema:B,gen:Y,opts:J}=A;if(J.$comment&&B.$comment)I4A(A);c5B(A),l5B(A);let C=Y.const("_errs",yQ.default.errors);V4A(A,C),Y.var(Q,WQ._`${C} === ${yQ.default.errors}`)}function K4A(A){(0,d6.checkUnknownRules)(A),u5B(A)}function V4A(A,Q){if(A.opts.jtd)return W4A(A,[],!1,Q);let B=(0,X4A.getSchemaTypes)(A.schema),Y=(0,X4A.coerceAndCheckDataType)(A,B);W4A(A,B,!Y,Q)}function u5B(A){let{schema:Q,errSchemaPath:B,opts:Y,self:J}=A;if(Q.$ref&&Y.ignoreKeywordsWithRef&&(0,d6.schemaHasRulesButRef)(Q,J.RULES))J.logger.warn(`$ref: keywords ignored in schema at path "${B}"`)}function d5B(A){let{schema:Q,opts:B}=A;if(Q.default!==void 0&&B.useDefaults&&B.strictSchema)(0,d6.checkStrictMode)(A,"default is ignored in the schema root")}function c5B(A){let Q=A.schema[A.opts.schemaId];if(Q)A.baseId=(0,v5B.resolveUrl)(A.opts.uriResolver,A.baseId,Q)}function l5B(A){if(A.schema.$async&&!A.schemaEnv.$async)throw Error("async schema in sync schema")}function I4A({gen:A,schemaEnv:Q,schema:B,errSchemaPath:Y,opts:J}){let C=B.$comment;if(J.$comment===!0)A.code(WQ._`${yQ.default.self}.logger.log(${C})`);else if(typeof J.$comment=="function"){let X=WQ.str`${Y}/$comment`,G=A.scopeValue("root",{ref:Q.root});A.code(WQ._`${yQ.default.self}.opts.$comment(${C}, ${X}, ${G}.schema)`)}}function p5B(A){let{gen:Q,schemaEnv:B,validateName:Y,ValidationError:J,opts:C}=A;if(B.$async)Q.if(WQ._`${yQ.default.errors} === 0`,()=>Q.return(yQ.default.data),()=>Q.throw(WQ._`new ${J}(${yQ.default.vErrors})`));else{if(Q.assign(WQ._`${Y}.errors`,yQ.default.vErrors),C.unevaluated)i5B(A);Q.return(WQ._`${yQ.default.errors} === 0`)}}function i5B({gen:A,evaluated:Q,props:B,items:Y}){if(B instanceof WQ.Name)A.assign(WQ._`${Q}.props`,B);if(Y instanceof WQ.Name)A.assign(WQ._`${Q}.items`,Y)}function W4A(A,Q,B,Y){let{gen:J,schema:C,data:X,allErrors:G,opts:W,self:F}=A,{RULES:Z}=F;if(C.$ref&&(W.ignoreKeywordsWithRef||!(0,d6.schemaHasRulesButRef)(C,Z))){J.block(()=>D4A(A,"$ref",Z.all.$ref.definition));return}if(!W.jtd)n5B(A,Q);J.block(()=>{for(let $ of Z.rules)U($);U(Z.post)});function U($){if(!(0,Nb.shouldUseGroup)(C,$))return;if($.type){if(J.if((0,$w.checkDataType)($.type,X,W.strictNumbers)),F4A(A,$),Q.length===1&&Q[0]===$.type&&B)J.else(),(0,$w.reportTypeError)(A);J.endIf()}else F4A(A,$);if(!G)J.if(WQ._`${yQ.default.errors} === ${Y||0}`)}}function F4A(A,Q){let{gen:B,schema:Y,opts:{useDefaults:J}}=A;if(J)(0,_5B.assignDefaults)(A,Q.type);B.block(()=>{for(let C of Q.rules)if((0,Nb.shouldUseRule)(Y,C))D4A(A,C.keyword,C.definition,Q.type)})}function n5B(A,Q){if(A.schemaEnv.meta||!A.opts.strictTypes)return;if(s5B(A,Q),!A.opts.allowUnionTypes)r5B(A,Q);a5B(A,A.dataTypes)}function s5B(A,Q){if(!Q.length)return;if(!A.dataTypes.length){A.dataTypes=Q;return}Q.forEach((B)=>{if(!H4A(A.dataTypes,B))Lb(A,`type "${B}" not allowed by context "${A.dataTypes.join(",")}"`)}),t5B(A,Q)}function r5B(A,Q){if(Q.length>1&&!(Q.length===2&&Q.includes("null")))Lb(A,"use allowUnionTypes to allow union type keyword")}function a5B(A,Q){let B=A.self.RULES.all;for(let Y in B){let J=B[Y];if(typeof J=="object"&&(0,Nb.shouldUseRule)(A.schema,J)){let{type:C}=J.definition;if(C.length&&!C.some((X)=>o5B(Q,X)))Lb(A,`missing type "${C.join(",")}" for keyword "${Y}"`)}}}function o5B(A,Q){return A.includes(Q)||Q==="number"&&A.includes("integer")}function H4A(A,Q){return A.includes(Q)||Q==="integer"&&A.includes("number")}function t5B(A,Q){let B=[];for(let Y of A.dataTypes)if(H4A(Q,Y))B.push(Y);else if(Q.includes("integer")&&Y==="number")B.push("integer");A.dataTypes=B}function Lb(A,Q){let B=A.schemaEnv.baseId+A.errSchemaPath;Q+=` at "${B}" (strictTypes)`,(0,d6.checkStrictMode)(A,Q,A.opts.strictTypes)}class qb{constructor(A,Q,B){if((0,qD.validateKeywordUsage)(A,Q,B),this.gen=A.gen,this.allErrors=A.allErrors,this.keyword=B,this.data=A.data,this.schema=A.schema[B],this.$data=Q.$data&&A.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,d6.schemaRefOrVal)(A,this.schema,B,this.$data),this.schemaType=Q.schemaType,this.parentSchema=A.schema,this.params={},this.it=A,this.def=Q,this.$data)this.schemaCode=A.gen.const("vSchema",N4A(this.$data,A));else if(this.schemaCode=this.schemaValue,!(0,qD.validSchemaType)(this.schema,Q.schemaType,Q.allowUndefined))throw Error(`${B} value must be ${JSON.stringify(Q.schemaType)}`);if("code"in Q?Q.trackErrors:Q.errors!==!1)this.errsCount=A.gen.const("_errs",yQ.default.errors)}result(A,Q,B){this.failResult((0,WQ.not)(A),Q,B)}failResult(A,Q,B){if(this.gen.if(A),B)B();else this.error();if(Q){if(this.gen.else(),Q(),this.allErrors)this.gen.endIf()}else if(this.allErrors)this.gen.endIf();else this.gen.else()}pass(A,Q){this.failResult((0,WQ.not)(A),void 0,Q)}fail(A){if(A===void 0){if(this.error(),!this.allErrors)this.gen.if(!1);return}if(this.gen.if(A),this.error(),this.allErrors)this.gen.endIf();else this.gen.else()}fail$data(A){if(!this.$data)return this.fail(A);let{schemaCode:Q}=this;this.fail(WQ._`${Q} !== undefined && (${(0,WQ.or)(this.invalid$data(),A)})`)}error(A,Q,B){if(Q){this.setParams(Q),this._error(A,B),this.setParams({});return}this._error(A,B)}_error(A,Q){(A?LD.reportExtraError:LD.reportError)(this,this.def.error,Q)}$dataError(){(0,LD.reportError)(this,this.def.$dataError||LD.keyword$DataError)}reset(){if(this.errsCount===void 0)throw Error('add "trackErrors" to keyword definition');(0,LD.resetErrorsCount)(this.gen,this.errsCount)}ok(A){if(!this.allErrors)this.gen.if(A)}setParams(A,Q){if(Q)Object.assign(this.params,A);else this.params=A}block$data(A,Q,B=WQ.nil){this.gen.block(()=>{this.check$data(A,B),Q()})}check$data(A=WQ.nil,Q=WQ.nil){if(!this.$data)return;let{gen:B,schemaCode:Y,schemaType:J,def:C}=this;if(B.if((0,WQ.or)(WQ._`${Y} === undefined`,Q)),A!==WQ.nil)B.assign(A,!0);if(J.length||C.validateSchema){if(B.elseIf(this.invalid$data()),this.$dataError(),A!==WQ.nil)B.assign(A,!1)}B.else()}invalid$data(){let{gen:A,schemaCode:Q,schemaType:B,def:Y,it:J}=this;return(0,WQ.or)(C(),X());function C(){if(B.length){if(!(Q instanceof WQ.Name))throw Error("ajv implementation error");let G=Array.isArray(B)?B:[B];return WQ._`${(0,$w.checkDataTypes)(G,Q,J.opts.strictNumbers,$w.DataType.Wrong)}`}return WQ.nil}function X(){if(Y.validateSchema){let G=A.scopeValue("validate$data",{ref:Y.validateSchema});return WQ._`!${G}(${Q})`}return WQ.nil}}subschema(A,Q){let B=(0,Db.getSubschema)(this.it,A);(0,Db.extendSubschemaData)(B,this.it,A),(0,Db.extendSubschemaMode)(B,A);let Y={...this.it,...B,items:void 0,props:void 0};return b5B(Y,Q),Y}mergeEvaluated(A,Q){let{it:B,gen:Y}=this;if(!B.opts.unevaluated)return;if(B.props!==!0&&A.props!==void 0)B.props=d6.mergeEvaluated.props(Y,A.props,B.props,Q);if(B.items!==!0&&A.items!==void 0)B.items=d6.mergeEvaluated.items(Y,A.items,B.items,Q)}mergeValidEvaluated(A,Q){let{it:B,gen:Y}=this;if(B.opts.unevaluated&&(B.props!==!0||B.items!==!0))return Y.if(Q,()=>this.mergeEvaluated(A,WQ.Name)),!0}}L4A.KeywordCxt=qb;function D4A(A,Q,B,Y){let J=new qb(A,B,Q);if("code"in B)B.code(J,Y);else if(J.$data&&B.validate)(0,qD.funcKeywordCode)(J,B);else if("macro"in B)(0,qD.macroKeywordCode)(J,B);else if(B.compile||B.validate)(0,qD.funcKeywordCode)(J,B)}var e5B=/^\/(?:[^~]|~0|~1)*$/,ACB=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function N4A(A,{dataLevel:Q,dataNames:B,dataPathArr:Y}){let J,C;if(A==="")return yQ.default.rootData;if(A[0]==="/"){if(!e5B.test(A))throw Error(`Invalid JSON-pointer: ${A}`);J=A,C=yQ.default.rootData}else{let F=ACB.exec(A);if(!F)throw Error(`Invalid JSON-pointer: ${A}`);let Z=+F[1];if(J=F[2],J==="#"){if(Z>=Q)throw Error(W("property/index",Z));return Y[Q-Z]}if(Z>Q)throw Error(W("data",Z));if(C=B[Q-Z],!J)return C}let X=C,G=J.split("/");for(let F of G)if(F)C=WQ._`${C}${(0,WQ.getProperty)((0,d6.unescapeJsonPointer)(F))}`,X=WQ._`${X} && ${C}`;return X;function W(F,Z){return`Cannot access ${F} ${Z} levels up, current level is ${Q}`}}L4A.getData=N4A});var Uw=R((z4A)=>{Object.defineProperty(z4A,"__esModule",{value:!0});class M4A extends Error{constructor(A){super("validation failed");this.errors=A,this.ajv=this.validation=!0}}z4A.default=M4A});var zD=R((w4A)=>{Object.defineProperty(w4A,"__esModule",{value:!0});var Mb=ND();class R4A extends Error{constructor(A,Q,B,Y){super(Y||`can't resolve reference ${B} from id ${Q}`);this.missingRef=(0,Mb.resolveUrl)(A,Q,B),this.missingSchema=(0,Mb.normalizeId)((0,Mb.getFullPath)(A,this.missingRef))}}w4A.default=R4A});var Kw=R((P4A)=>{Object.defineProperty(P4A,"__esModule",{value:!0});P4A.resolveSchema=P4A.getCompilingSchema=P4A.resolveRef=P4A.compileSchema=P4A.SchemaEnv=void 0;var lC=GB(),CCB=Uw(),IZ=u6(),pC=ND(),j4A=wB(),XCB=MD();class RD{constructor(A){var Q;this.refs={},this.dynamicAnchors={};let B;if(typeof A.schema=="object")B=A.schema;this.schema=A.schema,this.schemaId=A.schemaId,this.root=A.root||this,this.baseId=(Q=A.baseId)!==null&&Q!==void 0?Q:(0,pC.normalizeId)(B===null||B===void 0?void 0:B[A.schemaId||"$id"]),this.schemaPath=A.schemaPath,this.localRefs=A.localRefs,this.meta=A.meta,this.$async=B===null||B===void 0?void 0:B.$async,this.refs={}}}P4A.SchemaEnv=RD;function Rb(A){let Q=O4A.call(this,A);if(Q)return Q;let B=(0,pC.getFullPath)(this.opts.uriResolver,A.root.baseId),{es5:Y,lines:J}=this.opts.code,{ownProperties:C}=this.opts,X=new lC.CodeGen(this.scope,{es5:Y,lines:J,ownProperties:C}),G;if(A.$async)G=X.scopeValue("Error",{ref:CCB.default,code:lC._`require("ajv/dist/runtime/validation_error").default`});let W=X.scopeName("validate");A.validateName=W;let F={gen:X,allErrors:this.opts.allErrors,data:IZ.default.data,parentData:IZ.default.parentData,parentDataProperty:IZ.default.parentDataProperty,dataNames:[IZ.default.data],dataPathArr:[lC.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:X.scopeValue("schema",this.opts.code.source===!0?{ref:A.schema,code:(0,lC.stringify)(A.schema)}:{ref:A.schema}),validateName:W,ValidationError:G,schema:A.schema,schemaEnv:A,rootId:B,baseId:A.baseId||B,schemaPath:lC.nil,errSchemaPath:A.schemaPath||(this.opts.jtd?"":"#"),errorPath:lC._`""`,opts:this.opts,self:this},Z;try{this._compilations.add(A),(0,XCB.validateFunctionCode)(F),X.optimize(this.opts.code.optimize);let U=X.toString();if(Z=`${X.scopeRefs(IZ.default.scope)}return ${U}`,this.opts.code.process)Z=this.opts.code.process(Z,A);let E=Function(`${IZ.default.self}`,`${IZ.default.scope}`,Z)(this,this.scope.get());if(this.scope.value(W,{ref:E}),E.errors=null,E.schema=A.schema,E.schemaEnv=A,A.$async)E.$async=!0;if(this.opts.code.source===!0)E.source={validateName:W,validateCode:U,scopeValues:X._values};if(this.opts.unevaluated){let{props:K,items:I}=F;if(E.evaluated={props:K instanceof lC.Name?void 0:K,items:I instanceof lC.Name?void 0:I,dynamicProps:K instanceof lC.Name,dynamicItems:I instanceof lC.Name},E.source)E.source.evaluated=(0,lC.stringify)(E.evaluated)}return A.validate=E,A}catch(U){if(delete A.validate,delete A.validateName,Z)this.logger.error("Error compiling schema, function code:",Z);throw U}finally{this._compilations.delete(A)}}P4A.compileSchema=Rb;function GCB(A,Q,B){var Y;B=(0,pC.resolveUrl)(this.opts.uriResolver,Q,B);let J=A.refs[B];if(J)return J;let C=ZCB.call(this,A,B);if(C===void 0){let X=(Y=A.localRefs)===null||Y===void 0?void 0:Y[B],{schemaId:G}=this.opts;if(X)C=new RD({schema:X,schemaId:G,root:A,baseId:Q})}if(C===void 0)return;return A.refs[B]=WCB.call(this,C)}P4A.resolveRef=GCB;function WCB(A){if((0,pC.inlineRef)(A.schema,this.opts.inlineRefs))return A.schema;return A.validate?A:Rb.call(this,A)}function O4A(A){for(let Q of this._compilations)if(FCB(Q,A))return Q}P4A.getCompilingSchema=O4A;function FCB(A,Q){return A.schema===Q.schema&&A.root===Q.root&&A.baseId===Q.baseId}function ZCB(A,Q){let B;while(typeof(B=this.refs[Q])=="string")Q=B;return B||this.schemas[Q]||Ew.call(this,A,Q)}function Ew(A,Q){let B=this.opts.uriResolver.parse(Q),Y=(0,pC._getFullPath)(this.opts.uriResolver,B),J=(0,pC.getFullPath)(this.opts.uriResolver,A.baseId,void 0);if(Object.keys(A.schema).length>0&&Y===J)return zb.call(this,B,A);let C=(0,pC.normalizeId)(Y),X=this.refs[C]||this.schemas[C];if(typeof X=="string"){let G=Ew.call(this,A,X);if(typeof(G===null||G===void 0?void 0:G.schema)!=="object")return;return zb.call(this,B,G)}if(typeof(X===null||X===void 0?void 0:X.schema)!=="object")return;if(!X.validate)Rb.call(this,X);if(C===(0,pC.normalizeId)(Q)){let{schema:G}=X,{schemaId:W}=this.opts,F=G[W];if(F)J=(0,pC.resolveUrl)(this.opts.uriResolver,J,F);return new RD({schema:G,schemaId:W,root:A,baseId:J})}return zb.call(this,B,X)}P4A.resolveSchema=Ew;var $CB=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function zb(A,{baseId:Q,schema:B,root:Y}){var J;if(((J=A.fragment)===null||J===void 0?void 0:J[0])!=="/")return;for(let G of A.fragment.slice(1).split("/")){if(typeof B==="boolean")return;let W=B[(0,j4A.unescapeFragment)(G)];if(W===void 0)return;B=W;let F=typeof B==="object"&&B[this.opts.schemaId];if(!$CB.has(G)&&F)Q=(0,pC.resolveUrl)(this.opts.uriResolver,Q,F)}let C;if(typeof B!="boolean"&&B.$ref&&!(0,j4A.schemaHasRulesButRef)(B,this.RULES)){let G=(0,pC.resolveUrl)(this.opts.uriResolver,Q,B.$ref);C=Ew.call(this,Y,G)}let{schemaId:X}=this.opts;if(C=C||new RD({schema:B,schemaId:X,root:Y,baseId:Q}),C.schema!==C.root.schema)return C;return}});var S4A=R((tUY,ICB)=>{ICB.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var _4A=R((eUY,k4A)=>{var HCB={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,a:10,A:10,b:11,B:11,c:12,C:12,d:13,D:13,e:14,E:14,f:15,F:15};k4A.exports={HEX:HCB}});var m4A=R((AEY,b4A)=>{var{HEX:DCB}=_4A(),NCB=/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u;function h4A(A){if(f4A(A,".")<3)return{host:A,isIPV4:!1};let Q=A.match(NCB)||[],[B]=Q;if(B)return{host:qCB(B,"."),isIPV4:!0};else return{host:A,isIPV4:!1}}function wb(A,Q=!1){let B="",Y=!0;for(let J of A){if(DCB[J]===void 0)return;if(J!=="0"&&Y===!0)Y=!1;if(!Y)B+=J}if(Q&&B.length===0)B="0";return B}function LCB(A){let Q=0,B={error:!1,address:"",zone:""},Y=[],J=[],C=!1,X=!1,G=!1;function W(){if(J.length){if(C===!1){let F=wb(J);if(F!==void 0)Y.push(F);else return B.error=!0,!1}J.length=0}return!0}for(let F=0;F7){B.error=!0;break}if(F-1>=0&&A[F-1]===":")X=!0;continue}else if(Z==="%"){if(!W())break;C=!0}else{J.push(Z);continue}}if(J.length)if(C)B.zone=J.join("");else if(G)Y.push(J.join(""));else Y.push(wb(J));return B.address=Y.join(""),B}function x4A(A){if(f4A(A,":")<2)return{host:A,isIPV6:!1};let Q=LCB(A);if(!Q.error){let{address:B,address:Y}=Q;if(Q.zone)B+="%"+Q.zone,Y+="%25"+Q.zone;return{host:B,escapedHost:Y,isIPV6:!0}}else return{host:A,isIPV6:!1}}function qCB(A,Q){let B="",Y=!0,J=A.length;for(let C=0;C{var jCB=/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu,OCB=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu;function u4A(A){return typeof A.secure==="boolean"?A.secure:String(A.scheme).toLowerCase()==="wss"}function d4A(A){if(!A.host)A.error=A.error||"HTTP URIs must have a host.";return A}function c4A(A){let Q=String(A.scheme).toLowerCase()==="https";if(A.port===(Q?443:80)||A.port==="")A.port=void 0;if(!A.path)A.path="/";return A}function PCB(A){return A.secure=u4A(A),A.resourceName=(A.path||"/")+(A.query?"?"+A.query:""),A.path=void 0,A.query=void 0,A}function TCB(A){if(A.port===(u4A(A)?443:80)||A.port==="")A.port=void 0;if(typeof A.secure==="boolean")A.scheme=A.secure?"wss":"ws",A.secure=void 0;if(A.resourceName){let[Q,B]=A.resourceName.split("?");A.path=Q&&Q!=="/"?Q:void 0,A.query=B,A.resourceName=void 0}return A.fragment=void 0,A}function SCB(A,Q){if(!A.path)return A.error="URN can not be parsed",A;let B=A.path.match(OCB);if(B){let Y=Q.scheme||A.scheme||"urn";A.nid=B[1].toLowerCase(),A.nss=B[2];let J=`${Y}:${Q.nid||A.nid}`,C=jb[J];if(A.path=void 0,C)A=C.parse(A,Q)}else A.error=A.error||"URN can not be parsed.";return A}function kCB(A,Q){let B=Q.scheme||A.scheme||"urn",Y=A.nid.toLowerCase(),J=`${B}:${Q.nid||Y}`,C=jb[J];if(C)A=C.serialize(A,Q);let X=A,G=A.nss;return X.path=`${Y||Q.nid}:${G}`,Q.skipEscape=!0,X}function _CB(A,Q){let B=A;if(B.uuid=B.nss,B.nss=void 0,!Q.tolerant&&(!B.uuid||!jCB.test(B.uuid)))B.error=B.error||"UUID is not valid.";return B}function vCB(A){let Q=A;return Q.nss=(A.uuid||"").toLowerCase(),Q}var l4A={scheme:"http",domainHost:!0,parse:d4A,serialize:c4A},yCB={scheme:"https",domainHost:l4A.domainHost,parse:d4A,serialize:c4A},Vw={scheme:"ws",domainHost:!0,parse:PCB,serialize:TCB},gCB={scheme:"wss",domainHost:Vw.domainHost,parse:Vw.parse,serialize:Vw.serialize},hCB={scheme:"urn",parse:SCB,serialize:kCB,skipNormalize:!0},xCB={scheme:"urn:uuid",parse:_CB,serialize:vCB,skipNormalize:!0},jb={http:l4A,https:yCB,ws:Vw,wss:gCB,urn:hCB,"urn:uuid":xCB};p4A.exports=jb});var s4A=R((BEY,Hw)=>{var{normalizeIPv6:fCB,normalizeIPv4:bCB,removeDotSegments:wD,recomposeAuthority:mCB,normalizeComponentEncoding:Iw}=m4A(),Ob=i4A();function uCB(A,Q){if(typeof A==="string")A=AX(c6(A,Q),Q);else if(typeof A==="object")A=c6(AX(A,Q),Q);return A}function dCB(A,Q,B){let Y=Object.assign({scheme:"null"},B),J=n4A(c6(A,Y),c6(Q,Y),Y,!0);return AX(J,{...Y,skipEscape:!0})}function n4A(A,Q,B,Y){let J={};if(!Y)A=c6(AX(A,B),B),Q=c6(AX(Q,B),B);if(B=B||{},!B.tolerant&&Q.scheme)J.scheme=Q.scheme,J.userinfo=Q.userinfo,J.host=Q.host,J.port=Q.port,J.path=wD(Q.path||""),J.query=Q.query;else{if(Q.userinfo!==void 0||Q.host!==void 0||Q.port!==void 0)J.userinfo=Q.userinfo,J.host=Q.host,J.port=Q.port,J.path=wD(Q.path||""),J.query=Q.query;else{if(!Q.path)if(J.path=A.path,Q.query!==void 0)J.query=Q.query;else J.query=A.query;else{if(Q.path.charAt(0)==="/")J.path=wD(Q.path);else{if((A.userinfo!==void 0||A.host!==void 0||A.port!==void 0)&&!A.path)J.path="/"+Q.path;else if(!A.path)J.path=Q.path;else J.path=A.path.slice(0,A.path.lastIndexOf("/")+1)+Q.path;J.path=wD(J.path)}J.query=Q.query}J.userinfo=A.userinfo,J.host=A.host,J.port=A.port}J.scheme=A.scheme}return J.fragment=Q.fragment,J}function cCB(A,Q,B){if(typeof A==="string")A=unescape(A),A=AX(Iw(c6(A,B),!0),{...B,skipEscape:!0});else if(typeof A==="object")A=AX(Iw(A,!0),{...B,skipEscape:!0});if(typeof Q==="string")Q=unescape(Q),Q=AX(Iw(c6(Q,B),!0),{...B,skipEscape:!0});else if(typeof Q==="object")Q=AX(Iw(Q,!0),{...B,skipEscape:!0});return A.toLowerCase()===Q.toLowerCase()}function AX(A,Q){let B={host:A.host,scheme:A.scheme,userinfo:A.userinfo,port:A.port,path:A.path,query:A.query,nid:A.nid,nss:A.nss,uuid:A.uuid,fragment:A.fragment,reference:A.reference,resourceName:A.resourceName,secure:A.secure,error:""},Y=Object.assign({},Q),J=[],C=Ob[(Y.scheme||B.scheme||"").toLowerCase()];if(C&&C.serialize)C.serialize(B,Y);if(B.path!==void 0)if(!Y.skipEscape){if(B.path=escape(B.path),B.scheme!==void 0)B.path=B.path.split("%3A").join(":")}else B.path=unescape(B.path);if(Y.reference!=="suffix"&&B.scheme)J.push(B.scheme,":");let X=mCB(B);if(X!==void 0){if(Y.reference!=="suffix")J.push("//");if(J.push(X),B.path&&B.path.charAt(0)!=="/")J.push("/")}if(B.path!==void 0){let G=B.path;if(!Y.absolutePath&&(!C||!C.absolutePath))G=wD(G);if(X===void 0)G=G.replace(/^\/\//u,"/%2F");J.push(G)}if(B.query!==void 0)J.push("?",B.query);if(B.fragment!==void 0)J.push("#",B.fragment);return J.join("")}var lCB=Array.from({length:127},(A,Q)=>/[^!"$&'()*+,\-.;=_`a-z{}~]/u.test(String.fromCharCode(Q)));function pCB(A){let Q=0;for(let B=0,Y=A.length;B126||lCB[Q])return!0;return!1}var iCB=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function c6(A,Q){let B=Object.assign({},Q),Y={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},J=A.indexOf("%")!==-1,C=!1;if(B.reference==="suffix")A=(B.scheme?B.scheme+":":"")+"//"+A;let X=A.match(iCB);if(X){if(Y.scheme=X[1],Y.userinfo=X[3],Y.host=X[4],Y.port=parseInt(X[5],10),Y.path=X[6]||"",Y.query=X[7],Y.fragment=X[8],isNaN(Y.port))Y.port=X[5];if(Y.host){let W=bCB(Y.host);if(W.isIPV4===!1){let F=fCB(W.host);Y.host=F.host.toLowerCase(),C=F.isIPV6}else Y.host=W.host,C=!0}if(Y.scheme===void 0&&Y.userinfo===void 0&&Y.host===void 0&&Y.port===void 0&&Y.query===void 0&&!Y.path)Y.reference="same-document";else if(Y.scheme===void 0)Y.reference="relative";else if(Y.fragment===void 0)Y.reference="absolute";else Y.reference="uri";if(B.reference&&B.reference!=="suffix"&&B.reference!==Y.reference)Y.error=Y.error||"URI is not a "+B.reference+" reference.";let G=Ob[(B.scheme||Y.scheme||"").toLowerCase()];if(!B.unicodeSupport&&(!G||!G.unicodeSupport)){if(Y.host&&(B.domainHost||G&&G.domainHost)&&C===!1&&pCB(Y.host))try{Y.host=URL.domainToASCII(Y.host.toLowerCase())}catch(W){Y.error=Y.error||"Host's domain name can not be converted to ASCII: "+W}}if(!G||G&&!G.skipNormalize){if(J&&Y.scheme!==void 0)Y.scheme=unescape(Y.scheme);if(J&&Y.host!==void 0)Y.host=unescape(Y.host);if(Y.path)Y.path=escape(unescape(Y.path));if(Y.fragment)Y.fragment=encodeURI(decodeURIComponent(Y.fragment))}if(G&&G.parse)G.parse(Y,B)}else Y.error=Y.error||"URI can not be parsed.";return Y}var Pb={SCHEMES:Ob,normalize:uCB,resolve:dCB,resolveComponents:n4A,equal:cCB,serialize:AX,parse:c6};Hw.exports=Pb;Hw.exports.default=Pb;Hw.exports.fastUri=Pb});var o4A=R((a4A)=>{Object.defineProperty(a4A,"__esModule",{value:!0});var r4A=s4A();r4A.code='require("ajv/dist/runtime/uri").default';a4A.default=r4A});var CUA=R((l6)=>{Object.defineProperty(l6,"__esModule",{value:!0});l6.CodeGen=l6.Name=l6.nil=l6.stringify=l6.str=l6._=l6.KeywordCxt=void 0;var sCB=MD();Object.defineProperty(l6,"KeywordCxt",{enumerable:!0,get:function(){return sCB.KeywordCxt}});var VE=GB();Object.defineProperty(l6,"_",{enumerable:!0,get:function(){return VE._}});Object.defineProperty(l6,"str",{enumerable:!0,get:function(){return VE.str}});Object.defineProperty(l6,"stringify",{enumerable:!0,get:function(){return VE.stringify}});Object.defineProperty(l6,"nil",{enumerable:!0,get:function(){return VE.nil}});Object.defineProperty(l6,"Name",{enumerable:!0,get:function(){return VE.Name}});Object.defineProperty(l6,"CodeGen",{enumerable:!0,get:function(){return VE.CodeGen}});var rCB=Uw(),BUA=zD(),aCB=Wb(),jD=Kw(),oCB=GB(),OD=ND(),Dw=DD(),Sb=wB(),t4A=S4A(),tCB=o4A(),YUA=(A,Q)=>new RegExp(A,Q);YUA.code="new RegExp";var eCB=["removeAdditional","useDefaults","coerceTypes"],A1B=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),Q1B={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},B1B={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},e4A=200;function Y1B(A){var Q,B,Y,J,C,X,G,W,F,Z,U,$,E,K,I,V,H,D,L,z,M,N,q,w,P;let _=A.strict,j=(Q=A.code)===null||Q===void 0?void 0:Q.optimize,k=j===!0||j===void 0?1:j||0,T=(Y=(B=A.code)===null||B===void 0?void 0:B.regExp)!==null&&Y!==void 0?Y:YUA,S=(J=A.uriResolver)!==null&&J!==void 0?J:tCB.default;return{strictSchema:(X=(C=A.strictSchema)!==null&&C!==void 0?C:_)!==null&&X!==void 0?X:!0,strictNumbers:(W=(G=A.strictNumbers)!==null&&G!==void 0?G:_)!==null&&W!==void 0?W:!0,strictTypes:(Z=(F=A.strictTypes)!==null&&F!==void 0?F:_)!==null&&Z!==void 0?Z:"log",strictTuples:($=(U=A.strictTuples)!==null&&U!==void 0?U:_)!==null&&$!==void 0?$:"log",strictRequired:(K=(E=A.strictRequired)!==null&&E!==void 0?E:_)!==null&&K!==void 0?K:!1,code:A.code?{...A.code,optimize:k,regExp:T}:{optimize:k,regExp:T},loopRequired:(I=A.loopRequired)!==null&&I!==void 0?I:e4A,loopEnum:(V=A.loopEnum)!==null&&V!==void 0?V:e4A,meta:(H=A.meta)!==null&&H!==void 0?H:!0,messages:(D=A.messages)!==null&&D!==void 0?D:!0,inlineRefs:(L=A.inlineRefs)!==null&&L!==void 0?L:!0,schemaId:(z=A.schemaId)!==null&&z!==void 0?z:"$id",addUsedSchema:(M=A.addUsedSchema)!==null&&M!==void 0?M:!0,validateSchema:(N=A.validateSchema)!==null&&N!==void 0?N:!0,validateFormats:(q=A.validateFormats)!==null&&q!==void 0?q:!0,unicodeRegExp:(w=A.unicodeRegExp)!==null&&w!==void 0?w:!0,int32range:(P=A.int32range)!==null&&P!==void 0?P:!0,uriResolver:S}}class Nw{constructor(A={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,A=this.opts={...A,...Y1B(A)};let{es5:Q,lines:B}=this.opts.code;this.scope=new oCB.ValueScope({scope:{},prefixes:A1B,es5:Q,lines:B}),this.logger=F1B(A.logger);let Y=A.validateFormats;if(A.validateFormats=!1,this.RULES=(0,aCB.getRules)(),AUA.call(this,Q1B,A,"NOT SUPPORTED"),AUA.call(this,B1B,A,"DEPRECATED","warn"),this._metaOpts=G1B.call(this),A.formats)C1B.call(this);if(this._addVocabularies(),this._addDefaultMetaSchema(),A.keywords)X1B.call(this,A.keywords);if(typeof A.meta=="object")this.addMetaSchema(A.meta);J1B.call(this),A.validateFormats=Y}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:A,meta:Q,schemaId:B}=this.opts,Y=t4A;if(B==="id")Y={...t4A},Y.id=Y.$id,delete Y.$id;if(Q&&A)this.addMetaSchema(Y,Y[B],!1)}defaultMeta(){let{meta:A,schemaId:Q}=this.opts;return this.opts.defaultMeta=typeof A=="object"?A[Q]||A:void 0}validate(A,Q){let B;if(typeof A=="string"){if(B=this.getSchema(A),!B)throw Error(`no schema with key or ref "${A}"`)}else B=this.compile(A);let Y=B(Q);if(!("$async"in B))this.errors=B.errors;return Y}compile(A,Q){let B=this._addSchema(A,Q);return B.validate||this._compileSchemaEnv(B)}compileAsync(A,Q){if(typeof this.opts.loadSchema!="function")throw Error("options.loadSchema should be a function");let{loadSchema:B}=this.opts;return Y.call(this,A,Q);async function Y(F,Z){await J.call(this,F.$schema);let U=this._addSchema(F,Z);return U.validate||C.call(this,U)}async function J(F){if(F&&!this.getSchema(F))await Y.call(this,{$ref:F},!0)}async function C(F){try{return this._compileSchemaEnv(F)}catch(Z){if(!(Z instanceof BUA.default))throw Z;return X.call(this,Z),await G.call(this,Z.missingSchema),C.call(this,F)}}function X({missingSchema:F,missingRef:Z}){if(this.refs[F])throw Error(`AnySchema ${F} is loaded but ${Z} cannot be resolved`)}async function G(F){let Z=await W.call(this,F);if(!this.refs[F])await J.call(this,Z.$schema);if(!this.refs[F])this.addSchema(Z,F,Q)}async function W(F){let Z=this._loading[F];if(Z)return Z;try{return await(this._loading[F]=B(F))}finally{delete this._loading[F]}}}addSchema(A,Q,B,Y=this.opts.validateSchema){if(Array.isArray(A)){for(let C of A)this.addSchema(C,void 0,B,Y);return this}let J;if(typeof A==="object"){let{schemaId:C}=this.opts;if(J=A[C],J!==void 0&&typeof J!="string")throw Error(`schema ${C} must be string`)}return Q=(0,OD.normalizeId)(Q||J),this._checkUnique(Q),this.schemas[Q]=this._addSchema(A,B,Q,Y,!0),this}addMetaSchema(A,Q,B=this.opts.validateSchema){return this.addSchema(A,Q,!0,B),this}validateSchema(A,Q){if(typeof A=="boolean")return!0;let B;if(B=A.$schema,B!==void 0&&typeof B!="string")throw Error("$schema must be a string");if(B=B||this.opts.defaultMeta||this.defaultMeta(),!B)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let Y=this.validate(B,A);if(!Y&&Q){let J="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(J);else throw Error(J)}return Y}getSchema(A){let Q;while(typeof(Q=QUA.call(this,A))=="string")A=Q;if(Q===void 0){let{schemaId:B}=this.opts,Y=new jD.SchemaEnv({schema:{},schemaId:B});if(Q=jD.resolveSchema.call(this,Y,A),!Q)return;this.refs[A]=Q}return Q.validate||this._compileSchemaEnv(Q)}removeSchema(A){if(A instanceof RegExp)return this._removeAllSchemas(this.schemas,A),this._removeAllSchemas(this.refs,A),this;switch(typeof A){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let Q=QUA.call(this,A);if(typeof Q=="object")this._cache.delete(Q.schema);return delete this.schemas[A],delete this.refs[A],this}case"object":{let Q=A;this._cache.delete(Q);let B=A[this.opts.schemaId];if(B)B=(0,OD.normalizeId)(B),delete this.schemas[B],delete this.refs[B];return this}default:throw Error("ajv.removeSchema: invalid parameter")}}addVocabulary(A){for(let Q of A)this.addKeyword(Q);return this}addKeyword(A,Q){let B;if(typeof A=="string"){if(B=A,typeof Q=="object")this.logger.warn("these parameters are deprecated, see docs for addKeyword"),Q.keyword=B}else if(typeof A=="object"&&Q===void 0){if(Q=A,B=Q.keyword,Array.isArray(B)&&!B.length)throw Error("addKeywords: keyword must be string or non-empty array")}else throw Error("invalid addKeywords parameters");if($1B.call(this,B,Q),!Q)return(0,Sb.eachItem)(B,(J)=>Tb.call(this,J)),this;E1B.call(this,Q);let Y={...Q,type:(0,Dw.getJSONTypes)(Q.type),schemaType:(0,Dw.getJSONTypes)(Q.schemaType)};return(0,Sb.eachItem)(B,Y.type.length===0?(J)=>Tb.call(this,J,Y):(J)=>Y.type.forEach((C)=>Tb.call(this,J,Y,C))),this}getKeyword(A){let Q=this.RULES.all[A];return typeof Q=="object"?Q.definition:!!Q}removeKeyword(A){let{RULES:Q}=this;delete Q.keywords[A],delete Q.all[A];for(let B of Q.rules){let Y=B.rules.findIndex((J)=>J.keyword===A);if(Y>=0)B.rules.splice(Y,1)}return this}addFormat(A,Q){if(typeof Q=="string")Q=new RegExp(Q);return this.formats[A]=Q,this}errorsText(A=this.errors,{separator:Q=", ",dataVar:B="data"}={}){if(!A||A.length===0)return"No errors";return A.map((Y)=>`${B}${Y.instancePath} ${Y.message}`).reduce((Y,J)=>Y+Q+J)}$dataMetaSchema(A,Q){let B=this.RULES.all;A=JSON.parse(JSON.stringify(A));for(let Y of Q){let J=Y.split("/").slice(1),C=A;for(let X of J)C=C[X];for(let X in B){let G=B[X];if(typeof G!="object")continue;let{$data:W}=G.definition,F=C[X];if(W&&F)C[X]=JUA(F)}}return A}_removeAllSchemas(A,Q){for(let B in A){let Y=A[B];if(!Q||Q.test(B)){if(typeof Y=="string")delete A[B];else if(Y&&!Y.meta)this._cache.delete(Y.schema),delete A[B]}}}_addSchema(A,Q,B,Y=this.opts.validateSchema,J=this.opts.addUsedSchema){let C,{schemaId:X}=this.opts;if(typeof A=="object")C=A[X];else if(this.opts.jtd)throw Error("schema must be object");else if(typeof A!="boolean")throw Error("schema must be object or boolean");let G=this._cache.get(A);if(G!==void 0)return G;B=(0,OD.normalizeId)(C||B);let W=OD.getSchemaRefs.call(this,A,B);if(G=new jD.SchemaEnv({schema:A,schemaId:X,meta:Q,baseId:B,localRefs:W}),this._cache.set(G.schema,G),J&&!B.startsWith("#")){if(B)this._checkUnique(B);this.refs[B]=G}if(Y)this.validateSchema(A,!0);return G}_checkUnique(A){if(this.schemas[A]||this.refs[A])throw Error(`schema with key or id "${A}" already exists`)}_compileSchemaEnv(A){if(A.meta)this._compileMetaSchema(A);else jD.compileSchema.call(this,A);if(!A.validate)throw Error("ajv implementation error");return A.validate}_compileMetaSchema(A){let Q=this.opts;this.opts=this._metaOpts;try{jD.compileSchema.call(this,A)}finally{this.opts=Q}}}Nw.ValidationError=rCB.default;Nw.MissingRefError=BUA.default;l6.default=Nw;function AUA(A,Q,B,Y="error"){for(let J in A){let C=J;if(C in Q)this.logger[Y](`${B}: option ${J}. ${A[C]}`)}}function QUA(A){return A=(0,OD.normalizeId)(A),this.schemas[A]||this.refs[A]}function J1B(){let A=this.opts.schemas;if(!A)return;if(Array.isArray(A))this.addSchema(A);else for(let Q in A)this.addSchema(A[Q],Q)}function C1B(){for(let A in this.opts.formats){let Q=this.opts.formats[A];if(Q)this.addFormat(A,Q)}}function X1B(A){if(Array.isArray(A)){this.addVocabulary(A);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let Q in A){let B=A[Q];if(!B.keyword)B.keyword=Q;this.addKeyword(B)}}function G1B(){let A={...this.opts};for(let Q of eCB)delete A[Q];return A}var W1B={log(){},warn(){},error(){}};function F1B(A){if(A===!1)return W1B;if(A===void 0)return console;if(A.log&&A.warn&&A.error)return A;throw Error("logger must implement log, warn and error methods")}var Z1B=/^[a-z_$][a-z0-9_$:-]*$/i;function $1B(A,Q){let{RULES:B}=this;if((0,Sb.eachItem)(A,(Y)=>{if(B.keywords[Y])throw Error(`Keyword ${Y} is already defined`);if(!Z1B.test(Y))throw Error(`Keyword ${Y} has invalid name`)}),!Q)return;if(Q.$data&&!(("code"in Q)||("validate"in Q)))throw Error('$data keyword must have "code" or "validate" function')}function Tb(A,Q,B){var Y;let J=Q===null||Q===void 0?void 0:Q.post;if(B&&J)throw Error('keyword with "post" flag cannot have "type"');let{RULES:C}=this,X=J?C.post:C.rules.find(({type:W})=>W===B);if(!X)X={type:B,rules:[]},C.rules.push(X);if(C.keywords[A]=!0,!Q)return;let G={keyword:A,definition:{...Q,type:(0,Dw.getJSONTypes)(Q.type),schemaType:(0,Dw.getJSONTypes)(Q.schemaType)}};if(Q.before)U1B.call(this,X,G,Q.before);else X.rules.push(G);C.all[A]=G,(Y=Q.implements)===null||Y===void 0||Y.forEach((W)=>this.addKeyword(W))}function U1B(A,Q,B){let Y=A.rules.findIndex((J)=>J.keyword===B);if(Y>=0)A.rules.splice(Y,0,Q);else A.rules.push(Q),this.logger.warn(`rule ${B} is not defined`)}function E1B(A){let{metaSchema:Q}=A;if(Q===void 0)return;if(A.$data&&this.opts.$data)Q=JUA(Q);A.validateSchema=this.compile(Q,!0)}var K1B={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function JUA(A){return{anyOf:[A,K1B]}}});var GUA=R((XUA)=>{Object.defineProperty(XUA,"__esModule",{value:!0});var H1B={keyword:"id",code(){throw Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};XUA.default=H1B});var EUA=R(($UA)=>{Object.defineProperty($UA,"__esModule",{value:!0});$UA.callRef=$UA.getValidate=void 0;var N1B=zD(),WUA=w5(),b9=GB(),IE=u6(),FUA=Kw(),Lw=wB(),L1B={keyword:"$ref",schemaType:"string",code(A){let{gen:Q,schema:B,it:Y}=A,{baseId:J,schemaEnv:C,validateName:X,opts:G,self:W}=Y,{root:F}=C;if((B==="#"||B==="#/")&&J===F.baseId)return U();let Z=FUA.resolveRef.call(W,F,J,B);if(Z===void 0)throw new N1B.default(Y.opts.uriResolver,J,B);if(Z instanceof FUA.SchemaEnv)return $(Z);return E(Z);function U(){if(C===F)return qw(A,X,C,C.$async);let K=Q.scopeValue("root",{ref:F});return qw(A,b9._`${K}.validate`,F,F.$async)}function $(K){let I=ZUA(A,K);qw(A,I,K,K.$async)}function E(K){let I=Q.scopeValue("schema",G.code.source===!0?{ref:K,code:(0,b9.stringify)(K)}:{ref:K}),V=Q.name("valid"),H=A.subschema({schema:K,dataTypes:[],schemaPath:b9.nil,topSchemaRef:I,errSchemaPath:B},V);A.mergeEvaluated(H),A.ok(V)}}};function ZUA(A,Q){let{gen:B}=A;return Q.validate?B.scopeValue("validate",{ref:Q.validate}):b9._`${B.scopeValue("wrapper",{ref:Q})}.validate`}$UA.getValidate=ZUA;function qw(A,Q,B,Y){let{gen:J,it:C}=A,{allErrors:X,schemaEnv:G,opts:W}=C,F=W.passContext?IE.default.this:b9.nil;if(Y)Z();else U();function Z(){if(!G.$async)throw Error("async schema referenced by sync schema");let K=J.let("valid");J.try(()=>{if(J.code(b9._`await ${(0,WUA.callValidateCode)(A,Q,F)}`),E(Q),!X)J.assign(K,!0)},(I)=>{if(J.if(b9._`!(${I} instanceof ${C.ValidationError})`,()=>J.throw(I)),$(I),!X)J.assign(K,!1)}),A.ok(K)}function U(){A.result((0,WUA.callValidateCode)(A,Q,F),()=>E(Q),()=>$(Q))}function $(K){let I=b9._`${K}.errors`;J.assign(IE.default.vErrors,b9._`${IE.default.vErrors} === null ? ${I} : ${IE.default.vErrors}.concat(${I})`),J.assign(IE.default.errors,b9._`${IE.default.vErrors}.length`)}function E(K){var I;if(!C.opts.unevaluated)return;let V=(I=B===null||B===void 0?void 0:B.validate)===null||I===void 0?void 0:I.evaluated;if(C.props!==!0)if(V&&!V.dynamicProps){if(V.props!==void 0)C.props=Lw.mergeEvaluated.props(J,V.props,C.props)}else{let H=J.var("props",b9._`${K}.evaluated.props`);C.props=Lw.mergeEvaluated.props(J,H,C.props,b9.Name)}if(C.items!==!0)if(V&&!V.dynamicItems){if(V.items!==void 0)C.items=Lw.mergeEvaluated.items(J,V.items,C.items)}else{let H=J.var("items",b9._`${K}.evaluated.items`);C.items=Lw.mergeEvaluated.items(J,H,C.items,b9.Name)}}}$UA.callRef=qw;$UA.default=L1B});var VUA=R((KUA)=>{Object.defineProperty(KUA,"__esModule",{value:!0});var z1B=GUA(),R1B=EUA(),w1B=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",z1B.default,R1B.default];KUA.default=w1B});var HUA=R((IUA)=>{Object.defineProperty(IUA,"__esModule",{value:!0});var Mw=GB(),d7=Mw.operators,zw={maximum:{okStr:"<=",ok:d7.LTE,fail:d7.GT},minimum:{okStr:">=",ok:d7.GTE,fail:d7.LT},exclusiveMaximum:{okStr:"<",ok:d7.LT,fail:d7.GTE},exclusiveMinimum:{okStr:">",ok:d7.GT,fail:d7.LTE}},O1B={message:({keyword:A,schemaCode:Q})=>Mw.str`must be ${zw[A].okStr} ${Q}`,params:({keyword:A,schemaCode:Q})=>Mw._`{comparison: ${zw[A].okStr}, limit: ${Q}}`},P1B={keyword:Object.keys(zw),type:"number",schemaType:"number",$data:!0,error:O1B,code(A){let{keyword:Q,data:B,schemaCode:Y}=A;A.fail$data(Mw._`${B} ${zw[Q].fail} ${Y} || isNaN(${B})`)}};IUA.default=P1B});var NUA=R((DUA)=>{Object.defineProperty(DUA,"__esModule",{value:!0});var PD=GB(),S1B={message:({schemaCode:A})=>PD.str`must be multiple of ${A}`,params:({schemaCode:A})=>PD._`{multipleOf: ${A}}`},k1B={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:S1B,code(A){let{gen:Q,data:B,schemaCode:Y,it:J}=A,C=J.opts.multipleOfPrecision,X=Q.let("res"),G=C?PD._`Math.abs(Math.round(${X}) - ${X}) > 1e-${C}`:PD._`${X} !== parseInt(${X})`;A.fail$data(PD._`(${Y} === 0 || (${X} = ${B}/${Y}, ${G}))`)}};DUA.default=k1B});var MUA=R((qUA)=>{Object.defineProperty(qUA,"__esModule",{value:!0});function LUA(A){let Q=A.length,B=0,Y=0,J;while(Y=55296&&J<=56319&&Y{Object.defineProperty(zUA,"__esModule",{value:!0});var HZ=GB(),y1B=wB(),g1B=MUA(),h1B={message({keyword:A,schemaCode:Q}){let B=A==="maxLength"?"more":"fewer";return HZ.str`must NOT have ${B} than ${Q} characters`},params:({schemaCode:A})=>HZ._`{limit: ${A}}`},x1B={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:h1B,code(A){let{keyword:Q,data:B,schemaCode:Y,it:J}=A,C=Q==="maxLength"?HZ.operators.GT:HZ.operators.LT,X=J.opts.unicode===!1?HZ._`${B}.length`:HZ._`${(0,y1B.useFunc)(A.gen,g1B.default)}(${B})`;A.fail$data(HZ._`${X} ${C} ${Y}`)}};zUA.default=x1B});var jUA=R((wUA)=>{Object.defineProperty(wUA,"__esModule",{value:!0});var b1B=w5(),Rw=GB(),m1B={message:({schemaCode:A})=>Rw.str`must match pattern "${A}"`,params:({schemaCode:A})=>Rw._`{pattern: ${A}}`},u1B={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:m1B,code(A){let{data:Q,$data:B,schema:Y,schemaCode:J,it:C}=A,X=C.opts.unicodeRegExp?"u":"",G=B?Rw._`(new RegExp(${J}, ${X}))`:(0,b1B.usePattern)(A,Y);A.fail$data(Rw._`!${G}.test(${Q})`)}};wUA.default=u1B});var PUA=R((OUA)=>{Object.defineProperty(OUA,"__esModule",{value:!0});var TD=GB(),c1B={message({keyword:A,schemaCode:Q}){let B=A==="maxProperties"?"more":"fewer";return TD.str`must NOT have ${B} than ${Q} properties`},params:({schemaCode:A})=>TD._`{limit: ${A}}`},l1B={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:c1B,code(A){let{keyword:Q,data:B,schemaCode:Y}=A,J=Q==="maxProperties"?TD.operators.GT:TD.operators.LT;A.fail$data(TD._`Object.keys(${B}).length ${J} ${Y}`)}};OUA.default=l1B});var SUA=R((TUA)=>{Object.defineProperty(TUA,"__esModule",{value:!0});var SD=w5(),kD=GB(),i1B=wB(),n1B={message:({params:{missingProperty:A}})=>kD.str`must have required property '${A}'`,params:({params:{missingProperty:A}})=>kD._`{missingProperty: ${A}}`},s1B={keyword:"required",type:"object",schemaType:"array",$data:!0,error:n1B,code(A){let{gen:Q,schema:B,schemaCode:Y,data:J,$data:C,it:X}=A,{opts:G}=X;if(!C&&B.length===0)return;let W=B.length>=G.loopRequired;if(X.allErrors)F();else Z();if(G.strictRequired){let E=A.parentSchema.properties,{definedProperties:K}=A.it;for(let I of B)if((E===null||E===void 0?void 0:E[I])===void 0&&!K.has(I)){let V=X.schemaEnv.baseId+X.errSchemaPath,H=`required property "${I}" is not defined at "${V}" (strictRequired)`;(0,i1B.checkStrictMode)(X,H,X.opts.strictRequired)}}function F(){if(W||C)A.block$data(kD.nil,U);else for(let E of B)(0,SD.checkReportMissingProp)(A,E)}function Z(){let E=Q.let("missing");if(W||C){let K=Q.let("valid",!0);A.block$data(K,()=>$(E,K)),A.ok(K)}else Q.if((0,SD.checkMissingProp)(A,B,E)),(0,SD.reportMissingProp)(A,E),Q.else()}function U(){Q.forOf("prop",Y,(E)=>{A.setParams({missingProperty:E}),Q.if((0,SD.noPropertyInData)(Q,J,E,G.ownProperties),()=>A.error())})}function $(E,K){A.setParams({missingProperty:E}),Q.forOf(E,Y,()=>{Q.assign(K,(0,SD.propertyInData)(Q,J,E,G.ownProperties)),Q.if((0,kD.not)(K),()=>{A.error(),Q.break()})},kD.nil)}}};TUA.default=s1B});var _UA=R((kUA)=>{Object.defineProperty(kUA,"__esModule",{value:!0});var _D=GB(),a1B={message({keyword:A,schemaCode:Q}){let B=A==="maxItems"?"more":"fewer";return _D.str`must NOT have ${B} than ${Q} items`},params:({schemaCode:A})=>_D._`{limit: ${A}}`},o1B={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:a1B,code(A){let{keyword:Q,data:B,schemaCode:Y}=A,J=Q==="maxItems"?_D.operators.GT:_D.operators.LT;A.fail$data(_D._`${B}.length ${J} ${Y}`)}};kUA.default=o1B});var ww=R((yUA)=>{Object.defineProperty(yUA,"__esModule",{value:!0});var vUA=Ib();vUA.code='require("ajv/dist/runtime/equal").default';yUA.default=vUA});var hUA=R((gUA)=>{Object.defineProperty(gUA,"__esModule",{value:!0});var kb=DD(),ZJ=GB(),AXB=wB(),QXB=ww(),BXB={message:({params:{i:A,j:Q}})=>ZJ.str`must NOT have duplicate items (items ## ${Q} and ${A} are identical)`,params:({params:{i:A,j:Q}})=>ZJ._`{i: ${A}, j: ${Q}}`},YXB={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:BXB,code(A){let{gen:Q,data:B,$data:Y,schema:J,parentSchema:C,schemaCode:X,it:G}=A;if(!Y&&!J)return;let W=Q.let("valid"),F=C.items?(0,kb.getSchemaTypes)(C.items):[];A.block$data(W,Z,ZJ._`${X} === false`),A.ok(W);function Z(){let K=Q.let("i",ZJ._`${B}.length`),I=Q.let("j");A.setParams({i:K,j:I}),Q.assign(W,!0),Q.if(ZJ._`${K} > 1`,()=>(U()?$:E)(K,I))}function U(){return F.length>0&&!F.some((K)=>K==="object"||K==="array")}function $(K,I){let V=Q.name("item"),H=(0,kb.checkDataTypes)(F,V,G.opts.strictNumbers,kb.DataType.Wrong),D=Q.const("indices",ZJ._`{}`);Q.for(ZJ._`;${K}--;`,()=>{if(Q.let(V,ZJ._`${B}[${K}]`),Q.if(H,ZJ._`continue`),F.length>1)Q.if(ZJ._`typeof ${V} == "string"`,ZJ._`${V} += "_"`);Q.if(ZJ._`typeof ${D}[${V}] == "number"`,()=>{Q.assign(I,ZJ._`${D}[${V}]`),A.error(),Q.assign(W,!1).break()}).code(ZJ._`${D}[${V}] = ${K}`)})}function E(K,I){let V=(0,AXB.useFunc)(Q,QXB.default),H=Q.name("outer");Q.label(H).for(ZJ._`;${K}--;`,()=>Q.for(ZJ._`${I} = ${K}; ${I}--;`,()=>Q.if(ZJ._`${V}(${B}[${K}], ${B}[${I}])`,()=>{A.error(),Q.assign(W,!1).break(H)})))}}};gUA.default=YXB});var fUA=R((xUA)=>{Object.defineProperty(xUA,"__esModule",{value:!0});var _b=GB(),CXB=wB(),XXB=ww(),GXB={message:"must be equal to constant",params:({schemaCode:A})=>_b._`{allowedValue: ${A}}`},WXB={keyword:"const",$data:!0,error:GXB,code(A){let{gen:Q,data:B,$data:Y,schemaCode:J,schema:C}=A;if(Y||C&&typeof C=="object")A.fail$data(_b._`!${(0,CXB.useFunc)(Q,XXB.default)}(${B}, ${J})`);else A.fail(_b._`${C} !== ${B}`)}};xUA.default=WXB});var mUA=R((bUA)=>{Object.defineProperty(bUA,"__esModule",{value:!0});var vD=GB(),ZXB=wB(),$XB=ww(),UXB={message:"must be equal to one of the allowed values",params:({schemaCode:A})=>vD._`{allowedValues: ${A}}`},EXB={keyword:"enum",schemaType:"array",$data:!0,error:UXB,code(A){let{gen:Q,data:B,$data:Y,schema:J,schemaCode:C,it:X}=A;if(!Y&&J.length===0)throw Error("enum must have non-empty array");let G=J.length>=X.opts.loopEnum,W,F=()=>W!==null&&W!==void 0?W:W=(0,ZXB.useFunc)(Q,$XB.default),Z;if(G||Y)Z=Q.let("valid"),A.block$data(Z,U);else{if(!Array.isArray(J))throw Error("ajv implementation error");let E=Q.const("vSchema",C);Z=(0,vD.or)(...J.map((K,I)=>$(E,I)))}A.pass(Z);function U(){Q.assign(Z,!1),Q.forOf("v",C,(E)=>Q.if(vD._`${F()}(${B}, ${E})`,()=>Q.assign(Z,!0).break()))}function $(E,K){let I=J[K];return typeof I==="object"&&I!==null?vD._`${F()}(${B}, ${E}[${K}])`:vD._`${B} === ${I}`}}};bUA.default=EXB});var dUA=R((uUA)=>{Object.defineProperty(uUA,"__esModule",{value:!0});var VXB=HUA(),IXB=NUA(),HXB=RUA(),DXB=jUA(),NXB=PUA(),LXB=SUA(),qXB=_UA(),MXB=hUA(),zXB=fUA(),RXB=mUA(),wXB=[VXB.default,IXB.default,HXB.default,DXB.default,NXB.default,LXB.default,qXB.default,MXB.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},zXB.default,RXB.default];uUA.default=wXB});var yb=R((lUA)=>{Object.defineProperty(lUA,"__esModule",{value:!0});lUA.validateAdditionalItems=void 0;var DZ=GB(),vb=wB(),OXB={message:({params:{len:A}})=>DZ.str`must NOT have more than ${A} items`,params:({params:{len:A}})=>DZ._`{limit: ${A}}`},PXB={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:OXB,code(A){let{parentSchema:Q,it:B}=A,{items:Y}=Q;if(!Array.isArray(Y)){(0,vb.checkStrictMode)(B,'"additionalItems" is ignored when "items" is not an array of schemas');return}cUA(A,Y)}};function cUA(A,Q){let{gen:B,schema:Y,data:J,keyword:C,it:X}=A;X.items=!0;let G=B.const("len",DZ._`${J}.length`);if(Y===!1)A.setParams({len:Q.length}),A.pass(DZ._`${G} <= ${Q.length}`);else if(typeof Y=="object"&&!(0,vb.alwaysValidSchema)(X,Y)){let F=B.var("valid",DZ._`${G} <= ${Q.length}`);B.if((0,DZ.not)(F),()=>W(F)),A.ok(F)}function W(F){B.forRange("i",Q.length,G,(Z)=>{if(A.subschema({keyword:C,dataProp:Z,dataPropType:vb.Type.Num},F),!X.allErrors)B.if((0,DZ.not)(F),()=>B.break())})}}lUA.validateAdditionalItems=cUA;lUA.default=PXB});var gb=R((sUA)=>{Object.defineProperty(sUA,"__esModule",{value:!0});sUA.validateTuple=void 0;var iUA=GB(),jw=wB(),SXB=w5(),kXB={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(A){let{schema:Q,it:B}=A;if(Array.isArray(Q))return nUA(A,"additionalItems",Q);if(B.items=!0,(0,jw.alwaysValidSchema)(B,Q))return;A.ok((0,SXB.validateArray)(A))}};function nUA(A,Q,B=A.schema){let{gen:Y,parentSchema:J,data:C,keyword:X,it:G}=A;if(Z(J),G.opts.unevaluated&&B.length&&G.items!==!0)G.items=jw.mergeEvaluated.items(Y,B.length,G.items);let W=Y.name("valid"),F=Y.const("len",iUA._`${C}.length`);B.forEach((U,$)=>{if((0,jw.alwaysValidSchema)(G,U))return;Y.if(iUA._`${F} > ${$}`,()=>A.subschema({keyword:X,schemaProp:$,dataProp:$},W)),A.ok(W)});function Z(U){let{opts:$,errSchemaPath:E}=G,K=B.length,I=K===U.minItems&&(K===U.maxItems||U[Q]===!1);if($.strictTuples&&!I){let V=`"${X}" is ${K}-tuple, but minItems or maxItems/${Q} are not specified or different at path "${E}"`;(0,jw.checkStrictMode)(G,V,$.strictTuples)}}}sUA.validateTuple=nUA;sUA.default=kXB});var oUA=R((aUA)=>{Object.defineProperty(aUA,"__esModule",{value:!0});var vXB=gb(),yXB={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:(A)=>(0,vXB.validateTuple)(A,"items")};aUA.default=yXB});var AEA=R((eUA)=>{Object.defineProperty(eUA,"__esModule",{value:!0});var tUA=GB(),hXB=wB(),xXB=w5(),fXB=yb(),bXB={message:({params:{len:A}})=>tUA.str`must NOT have more than ${A} items`,params:({params:{len:A}})=>tUA._`{limit: ${A}}`},mXB={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:bXB,code(A){let{schema:Q,parentSchema:B,it:Y}=A,{prefixItems:J}=B;if(Y.items=!0,(0,hXB.alwaysValidSchema)(Y,Q))return;if(J)(0,fXB.validateAdditionalItems)(A,J);else A.ok((0,xXB.validateArray)(A))}};eUA.default=mXB});var BEA=R((QEA)=>{Object.defineProperty(QEA,"__esModule",{value:!0});var j5=GB(),Ow=wB(),dXB={message:({params:{min:A,max:Q}})=>Q===void 0?j5.str`must contain at least ${A} valid item(s)`:j5.str`must contain at least ${A} and no more than ${Q} valid item(s)`,params:({params:{min:A,max:Q}})=>Q===void 0?j5._`{minContains: ${A}}`:j5._`{minContains: ${A}, maxContains: ${Q}}`},cXB={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:dXB,code(A){let{gen:Q,schema:B,parentSchema:Y,data:J,it:C}=A,X,G,{minContains:W,maxContains:F}=Y;if(C.opts.next)X=W===void 0?1:W,G=F;else X=1;let Z=Q.const("len",j5._`${J}.length`);if(A.setParams({min:X,max:G}),G===void 0&&X===0){(0,Ow.checkStrictMode)(C,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(G!==void 0&&X>G){(0,Ow.checkStrictMode)(C,'"minContains" > "maxContains" is always invalid'),A.fail();return}if((0,Ow.alwaysValidSchema)(C,B)){let I=j5._`${Z} >= ${X}`;if(G!==void 0)I=j5._`${I} && ${Z} <= ${G}`;A.pass(I);return}C.items=!0;let U=Q.name("valid");if(G===void 0&&X===1)E(U,()=>Q.if(U,()=>Q.break()));else if(X===0){if(Q.let(U,!0),G!==void 0)Q.if(j5._`${J}.length > 0`,$)}else Q.let(U,!1),$();A.result(U,()=>A.reset());function $(){let I=Q.name("_valid"),V=Q.let("count",0);E(I,()=>Q.if(I,()=>K(V)))}function E(I,V){Q.forRange("i",0,Z,(H)=>{A.subschema({keyword:"contains",dataProp:H,dataPropType:Ow.Type.Num,compositeRule:!0},I),V()})}function K(I){if(Q.code(j5._`${I}++`),G===void 0)Q.if(j5._`${I} >= ${X}`,()=>Q.assign(U,!0).break());else if(Q.if(j5._`${I} > ${G}`,()=>Q.assign(U,!1).break()),X===1)Q.assign(U,!0);else Q.if(j5._`${I} >= ${X}`,()=>Q.assign(U,!0))}}};QEA.default=cXB});var WEA=R((CEA)=>{Object.defineProperty(CEA,"__esModule",{value:!0});CEA.validateSchemaDeps=CEA.validatePropertyDeps=CEA.error=void 0;var hb=GB(),pXB=wB(),yD=w5();CEA.error={message:({params:{property:A,depsCount:Q,deps:B}})=>{let Y=Q===1?"property":"properties";return hb.str`must have ${Y} ${B} when property ${A} is present`},params:({params:{property:A,depsCount:Q,deps:B,missingProperty:Y}})=>hb._`{property: ${A}, + || ${X} === "boolean" || ${J} === null`).assign(G,aQ._`[${J}]`)}}}function L8B({gen:A,parentData:Q,parentDataProperty:B},Y){A.if(aQ._`${Q} !== undefined`,()=>A.assign(aQ._`${Q}[${B}]`,Y))}function Zb(A,Q,B,Y=UE.Correct){let J=Y===UE.Correct?aQ.operators.EQ:aQ.operators.NEQ,C;switch(A){case"null":return aQ._`${Q} ${J} null`;case"array":C=aQ._`Array.isArray(${Q})`;break;case"object":C=aQ._`${Q} && typeof ${Q} == "object" && !Array.isArray(${Q})`;break;case"integer":C=X(aQ._`!(${Q} % 1) && !isNaN(${Q})`);break;case"number":C=X();break;default:return aQ._`typeof ${Q} ${J} ${A}`}return Y===UE.Correct?C:(0,aQ.not)(C);function X(G=aQ.nil){return(0,aQ.and)(aQ._`typeof ${Q} == "number"`,G,B?aQ._`isFinite(${Q})`:aQ.nil)}}v$A.checkDataType=Zb;function $b(A,Q,B,Y){if(A.length===1)return Zb(A[0],Q,B,Y);let J,C=(0,S$A.toHash)(A);if(C.array&&C.object){let X=aQ._`typeof ${Q} != "object"`;J=C.null?X:aQ._`!${Q} || ${X}`,delete C.null,delete C.array,delete C.object}else J=aQ.nil;if(C.number)delete C.integer;for(let X in C)J=(0,aQ.and)(J,Zb(X,Q,B,Y));return J}v$A.checkDataTypes=$b;var q8B={message:({schema:A})=>`must be ${A}`,params:({schema:A,schemaValue:Q})=>typeof A=="string"?aQ._`{type: ${A}}`:aQ._`{type: ${Q}}`};function Ub(A){let Q=M8B(A);(0,V8B.reportError)(Q,q8B)}v$A.reportTypeError=Ub;function M8B(A){let{gen:Q,data:B,schema:Y}=A,J=(0,S$A.schemaRefOrVal)(A,Y,"type");return{gen:Q,keyword:"type",data:B,schema:Y.type,schemaCode:J,schemaValue:J,parentSchema:Y,params:{},it:A}}});var f$A=R((h$A)=>{Object.defineProperty(h$A,"__esModule",{value:!0});h$A.assignDefaults=void 0;var EE=GB(),T8B=wB();function S8B(A,Q){let{properties:B,items:Y}=A.schema;if(Q==="object"&&B)for(let J in B)g$A(A,J,B[J].default);else if(Q==="array"&&Array.isArray(Y))Y.forEach((J,C)=>g$A(A,C,J.default))}h$A.assignDefaults=S8B;function g$A(A,Q,B){let{gen:Y,compositeRule:J,data:C,opts:X}=A;if(B===void 0)return;let G=EE._`${C}${(0,EE.getProperty)(Q)}`;if(J){(0,T8B.checkStrictMode)(A,`default is ignored for: ${G}`);return}let W=EE._`${G} === undefined`;if(X.useDefaults==="empty")W=EE._`${W} || ${G} === null || ${G} === ""`;Y.if(W,EE._`${G} = ${(0,EE.stringify)(B)}`)}});var w5=R((u$A)=>{Object.defineProperty(u$A,"__esModule",{value:!0});u$A.validateUnion=u$A.validateArray=u$A.usePattern=u$A.callValidateCode=u$A.schemaProperties=u$A.allSchemaProperties=u$A.noPropertyInData=u$A.propertyInData=u$A.isOwnProperty=u$A.hasPropFunc=u$A.reportMissingProp=u$A.checkMissingProp=u$A.checkReportMissingProp=void 0;var E0=GB(),Eb=wB(),m7=u6(),k8B=wB();function _8B(A,Q){let{gen:B,data:Y,it:J}=A;B.if(Vb(B,Y,Q,J.opts.ownProperties),()=>{A.setParams({missingProperty:E0._`${Q}`},!0),A.error()})}u$A.checkReportMissingProp=_8B;function v8B({gen:A,data:Q,it:{opts:B}},Y,J){return(0,E0.or)(...Y.map((C)=>(0,E0.and)(Vb(A,Q,C,B.ownProperties),E0._`${J} = ${C}`)))}u$A.checkMissingProp=v8B;function y8B(A,Q){A.setParams({missingProperty:Q},!0),A.error()}u$A.reportMissingProp=y8B;function b$A(A){return A.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:E0._`Object.prototype.hasOwnProperty`})}u$A.hasPropFunc=b$A;function Kb(A,Q,B){return E0._`${b$A(A)}.call(${Q}, ${B})`}u$A.isOwnProperty=Kb;function g8B(A,Q,B,Y){let J=E0._`${Q}${(0,E0.getProperty)(B)} !== undefined`;return Y?E0._`${J} && ${Kb(A,Q,B)}`:J}u$A.propertyInData=g8B;function Vb(A,Q,B,Y){let J=E0._`${Q}${(0,E0.getProperty)(B)} === undefined`;return Y?(0,E0.or)(J,(0,E0.not)(Kb(A,Q,B))):J}u$A.noPropertyInData=Vb;function m$A(A){return A?Object.keys(A).filter((Q)=>Q!=="__proto__"):[]}u$A.allSchemaProperties=m$A;function h8B(A,Q){return m$A(Q).filter((B)=>!(0,Eb.alwaysValidSchema)(A,Q[B]))}u$A.schemaProperties=h8B;function x8B({schemaCode:A,data:Q,it:{gen:B,topSchemaRef:Y,schemaPath:J,errorPath:C},it:X},G,W,F){let Z=F?E0._`${A}, ${Q}, ${Y}${J}`:Q,U=[[m7.default.instancePath,(0,E0.strConcat)(m7.default.instancePath,C)],[m7.default.parentData,X.parentData],[m7.default.parentDataProperty,X.parentDataProperty],[m7.default.rootData,m7.default.rootData]];if(X.opts.dynamicRef)U.push([m7.default.dynamicAnchors,m7.default.dynamicAnchors]);let $=E0._`${Z}, ${B.object(...U)}`;return W!==E0.nil?E0._`${G}.call(${W}, ${$})`:E0._`${G}(${$})`}u$A.callValidateCode=x8B;var f8B=E0._`new RegExp`;function b8B({gen:A,it:{opts:Q}},B){let Y=Q.unicodeRegExp?"u":"",{regExp:J}=Q.code,C=J(B,Y);return A.scopeValue("pattern",{key:C.toString(),ref:C,code:E0._`${J.code==="new RegExp"?f8B:(0,k8B.useFunc)(A,J)}(${B}, ${Y})`})}u$A.usePattern=b8B;function m8B(A){let{gen:Q,data:B,keyword:Y,it:J}=A,C=Q.name("valid");if(J.allErrors){let G=Q.let("valid",!0);return X(()=>Q.assign(G,!1)),G}return Q.var(C,!0),X(()=>Q.break()),C;function X(G){let W=Q.const("len",E0._`${B}.length`);Q.forRange("i",0,W,(F)=>{A.subschema({keyword:Y,dataProp:F,dataPropType:Eb.Type.Num},C),Q.if((0,E0.not)(C),G)})}}u$A.validateArray=m8B;function u8B(A){let{gen:Q,schema:B,keyword:Y,it:J}=A;if(!Array.isArray(B))throw Error("ajv implementation error");if(B.some((W)=>(0,Eb.alwaysValidSchema)(J,W))&&!J.opts.unevaluated)return;let X=Q.let("valid",!1),G=Q.name("_valid");Q.block(()=>B.forEach((W,F)=>{let Z=A.subschema({keyword:Y,schemaProp:F,compositeRule:!0},G);if(Q.assign(X,E0._`${X} || ${G}`),!A.mergeValidEvaluated(Z,G))Q.if((0,E0.not)(X))})),A.result(X,()=>A.reset(),()=>A.error(!0))}u$A.validateUnion=u8B});var n$A=R((p$A)=>{Object.defineProperty(p$A,"__esModule",{value:!0});p$A.validateKeywordUsage=p$A.validSchemaType=p$A.funcKeywordCode=p$A.macroKeywordCode=void 0;var F9=GB(),IZ=u6(),A5B=w5(),Q5B=HD();function B5B(A,Q){let{gen:B,keyword:Y,schema:J,parentSchema:C,it:X}=A,G=Q.macro.call(X.self,J,C,X),W=l$A(B,Y,G);if(X.opts.validateSchema!==!1)X.self.validateSchema(G,!0);let F=B.name("valid");A.subschema({schema:G,schemaPath:F9.nil,errSchemaPath:`${X.errSchemaPath}/${Y}`,topSchemaRef:W,compositeRule:!0},F),A.pass(F,()=>A.error(!0))}p$A.macroKeywordCode=B5B;function Y5B(A,Q){var B;let{gen:Y,keyword:J,schema:C,parentSchema:X,$data:G,it:W}=A;C5B(W,Q);let F=!G&&Q.compile?Q.compile.call(W.self,C,X,W):Q.validate,Z=l$A(Y,J,F),U=Y.let("valid");A.block$data(U,$),A.ok((B=Q.valid)!==null&&B!==void 0?B:U);function $(){if(Q.errors===!1){if(I(),Q.modifying)c$A(A);V(()=>A.error())}else{let H=Q.async?E():K();if(Q.modifying)c$A(A);V(()=>J5B(A,H))}}function E(){let H=Y.let("ruleErrs",null);return Y.try(()=>I(F9._`await `),(D)=>Y.assign(U,!1).if(F9._`${D} instanceof ${W.ValidationError}`,()=>Y.assign(H,F9._`${D}.errors`),()=>Y.throw(D))),H}function K(){let H=F9._`${Z}.errors`;return Y.assign(H,null),I(F9.nil),H}function I(H=Q.async?F9._`await `:F9.nil){let D=W.opts.passContext?IZ.default.this:IZ.default.self,L=!(("compile"in Q)&&!G||Q.schema===!1);Y.assign(U,F9._`${H}${(0,A5B.callValidateCode)(A,Z,D,L)}`,Q.modifying)}function V(H){var D;Y.if((0,F9.not)((D=Q.valid)!==null&&D!==void 0?D:U),H)}}p$A.funcKeywordCode=Y5B;function c$A(A){let{gen:Q,data:B,it:Y}=A;Q.if(Y.parentData,()=>Q.assign(B,F9._`${Y.parentData}[${Y.parentDataProperty}]`))}function J5B(A,Q){let{gen:B}=A;B.if(F9._`Array.isArray(${Q})`,()=>{B.assign(IZ.default.vErrors,F9._`${IZ.default.vErrors} === null ? ${Q} : ${IZ.default.vErrors}.concat(${Q})`).assign(IZ.default.errors,F9._`${IZ.default.vErrors}.length`),(0,Q5B.extendErrors)(A)},()=>A.error())}function C5B({schemaEnv:A},Q){if(Q.async&&!A.$async)throw Error("async keyword in sync schema")}function l$A(A,Q,B){if(B===void 0)throw Error(`keyword "${Q}" failed to compile`);return A.scopeValue("keyword",typeof B=="function"?{ref:B}:{ref:B,code:(0,F9.stringify)(B)})}function X5B(A,Q,B=!1){return!Q.length||Q.some((Y)=>Y==="array"?Array.isArray(A):Y==="object"?A&&typeof A=="object"&&!Array.isArray(A):typeof A==Y||B&&typeof A>"u")}p$A.validSchemaType=X5B;function G5B({schema:A,opts:Q,self:B,errSchemaPath:Y},J,C){if(Array.isArray(J.keyword)?!J.keyword.includes(C):J.keyword!==C)throw Error("ajv implementation error");let X=J.dependencies;if(X===null||X===void 0?void 0:X.some((G)=>!Object.prototype.hasOwnProperty.call(A,G)))throw Error(`parent schema must have dependencies of ${C}: ${X.join(",")}`);if(J.validateSchema){if(!J.validateSchema(A[C])){let W=`keyword "${C}" value is invalid at path "${Y}": `+B.errorsText(J.validateSchema.errors);if(Q.validateSchema==="log")B.logger.error(W);else throw Error(W)}}}p$A.validateKeywordUsage=G5B});var o$A=R((r$A)=>{Object.defineProperty(r$A,"__esModule",{value:!0});r$A.extendSubschemaMode=r$A.extendSubschemaData=r$A.getSubschema=void 0;var e1=GB(),s$A=wB();function $5B(A,{keyword:Q,schemaProp:B,schema:Y,schemaPath:J,errSchemaPath:C,topSchemaRef:X}){if(Q!==void 0&&Y!==void 0)throw Error('both "keyword" and "schema" passed, only one allowed');if(Q!==void 0){let G=A.schema[Q];return B===void 0?{schema:G,schemaPath:e1._`${A.schemaPath}${(0,e1.getProperty)(Q)}`,errSchemaPath:`${A.errSchemaPath}/${Q}`}:{schema:G[B],schemaPath:e1._`${A.schemaPath}${(0,e1.getProperty)(Q)}${(0,e1.getProperty)(B)}`,errSchemaPath:`${A.errSchemaPath}/${Q}/${(0,s$A.escapeFragment)(B)}`}}if(Y!==void 0){if(J===void 0||C===void 0||X===void 0)throw Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:Y,schemaPath:J,topSchemaRef:X,errSchemaPath:C}}throw Error('either "keyword" or "schema" must be passed')}r$A.getSubschema=$5B;function U5B(A,Q,{dataProp:B,dataPropType:Y,data:J,dataTypes:C,propertyName:X}){if(J!==void 0&&B!==void 0)throw Error('both "data" and "dataProp" passed, only one allowed');let{gen:G}=Q;if(B!==void 0){let{errorPath:F,dataPathArr:Z,opts:U}=Q,$=G.let("data",e1._`${Q.data}${(0,e1.getProperty)(B)}`,!0);W($),A.errorPath=e1.str`${F}${(0,s$A.getErrorPath)(B,Y,U.jsPropertySyntax)}`,A.parentDataProperty=e1._`${B}`,A.dataPathArr=[...Z,A.parentDataProperty]}if(J!==void 0){let F=J instanceof e1.Name?J:G.let("data",J,!0);if(W(F),X!==void 0)A.propertyName=X}if(C)A.dataTypes=C;function W(F){A.data=F,A.dataLevel=Q.dataLevel+1,A.dataTypes=[],Q.definedProperties=new Set,A.parentData=Q.data,A.dataNames=[...Q.dataNames,F]}}r$A.extendSubschemaData=U5B;function E5B(A,{jtdDiscriminator:Q,jtdMetadata:B,compositeRule:Y,createErrors:J,allErrors:C}){if(Y!==void 0)A.compositeRule=Y;if(J!==void 0)A.createErrors=J;if(C!==void 0)A.allErrors=C;A.jtdDiscriminator=Q,A.jtdMetadata=B}r$A.extendSubschemaMode=E5B});var Ib=R((pUY,t$A)=>{t$A.exports=function A(Q,B){if(Q===B)return!0;if(Q&&B&&typeof Q=="object"&&typeof B=="object"){if(Q.constructor!==B.constructor)return!1;var Y,J,C;if(Array.isArray(Q)){if(Y=Q.length,Y!=B.length)return!1;for(J=Y;J--!==0;)if(!A(Q[J],B[J]))return!1;return!0}if(Q.constructor===RegExp)return Q.source===B.source&&Q.flags===B.flags;if(Q.valueOf!==Object.prototype.valueOf)return Q.valueOf()===B.valueOf();if(Q.toString!==Object.prototype.toString)return Q.toString()===B.toString();if(C=Object.keys(Q),Y=C.length,Y!==Object.keys(B).length)return!1;for(J=Y;J--!==0;)if(!Object.prototype.hasOwnProperty.call(B,C[J]))return!1;for(J=Y;J--!==0;){var X=C[J];if(!A(Q[X],B[X]))return!1}return!0}return Q!==Q&&B!==B}});var A4A=R((iUY,e$A)=>{var u7=e$A.exports=function(A,Q,B){if(typeof Q=="function")B=Q,Q={};B=Q.cb||B;var Y=typeof B=="function"?B:B.pre||function(){},J=B.post||function(){};Zw(Q,Y,J,A,"",A)};u7.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};u7.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};u7.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};u7.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function Zw(A,Q,B,Y,J,C,X,G,W,F){if(Y&&typeof Y=="object"&&!Array.isArray(Y)){Q(Y,J,C,X,G,W,F);for(var Z in Y){var U=Y[Z];if(Array.isArray(U)){if(Z in u7.arrayKeywords)for(var $=0;${Object.defineProperty(J4A,"__esModule",{value:!0});J4A.getSchemaRefs=J4A.resolveUrl=J4A.normalizeId=J4A._getFullPath=J4A.getFullPath=J4A.inlineRef=void 0;var H5B=wB(),D5B=Ib(),N5B=A4A(),L5B=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function q5B(A,Q=!0){if(typeof A=="boolean")return!0;if(Q===!0)return!Hb(A);if(!Q)return!1;return Q4A(A)<=Q}J4A.inlineRef=q5B;var M5B=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Hb(A){for(let Q in A){if(M5B.has(Q))return!0;let B=A[Q];if(Array.isArray(B)&&B.some(Hb))return!0;if(typeof B=="object"&&Hb(B))return!0}return!1}function Q4A(A){let Q=0;for(let B in A){if(B==="$ref")return 1/0;if(Q++,L5B.has(B))continue;if(typeof A[B]=="object")(0,H5B.eachItem)(A[B],(Y)=>Q+=Q4A(Y));if(Q===1/0)return 1/0}return Q}function B4A(A,Q="",B){if(B!==!1)Q=KE(Q);let Y=A.parse(Q);return Y4A(A,Y)}J4A.getFullPath=B4A;function Y4A(A,Q){return A.serialize(Q).split("#")[0]+"#"}J4A._getFullPath=Y4A;var z5B=/#\/?$/;function KE(A){return A?A.replace(z5B,""):""}J4A.normalizeId=KE;function R5B(A,Q,B){return B=KE(B),A.resolve(Q,B)}J4A.resolveUrl=R5B;var w5B=/^[a-z_][-a-z0-9._]*$/i;function j5B(A,Q){if(typeof A=="boolean")return{};let{schemaId:B,uriResolver:Y}=this.opts,J=KE(A[B]||Q),C={"":J},X=B4A(Y,J,!1),G={},W=new Set;return N5B(A,{allKeys:!0},(U,$,E,K)=>{if(K===void 0)return;let I=X+$,V=C[K];if(typeof U[B]=="string")V=H.call(this,U[B]);D.call(this,U.$anchor),D.call(this,U.$dynamicAnchor),C[$]=V;function H(L){let z=this.opts.uriResolver.resolve;if(L=KE(V?z(V,L):L),W.has(L))throw Z(L);W.add(L);let M=this.refs[L];if(typeof M=="string")M=this.refs[M];if(typeof M=="object")F(U,M.schema,L);else if(L!==KE(I))if(L[0]==="#")F(U,G[L],L),G[L]=U;else this.refs[L]=I;return L}function D(L){if(typeof L=="string"){if(!w5B.test(L))throw Error(`invalid anchor "${L}"`);H.call(this,`#${L}`)}}}),G;function F(U,$,E){if($!==void 0&&!D5B(U,$))throw Z(E)}function Z(U){return Error(`reference "${U}" resolves to more than one schema`)}}J4A.getSchemaRefs=j5B});var MD=R((L4A)=>{Object.defineProperty(L4A,"__esModule",{value:!0});L4A.getData=L4A.KeywordCxt=L4A.validateFunctionCode=void 0;var Z4A=z$A(),X4A=DD(),Nb=Fb(),$w=DD(),_5B=f$A(),qD=n$A(),Db=o$A(),WQ=GB(),yQ=u6(),v5B=ND(),d6=wB(),LD=HD();function y5B(A){if(E4A(A)){if(K4A(A),U4A(A)){x5B(A);return}}$4A(A,()=>(0,Z4A.topBoolOrEmptySchema)(A))}L4A.validateFunctionCode=y5B;function $4A({gen:A,validateName:Q,schema:B,schemaEnv:Y,opts:J},C){if(J.code.es5)A.func(Q,WQ._`${yQ.default.data}, ${yQ.default.valCxt}`,Y.$async,()=>{A.code(WQ._`"use strict"; ${G4A(B,J)}`),h5B(A,J),A.code(C)});else A.func(Q,WQ._`${yQ.default.data}, ${g5B(J)}`,Y.$async,()=>A.code(G4A(B,J)).code(C))}function g5B(A){return WQ._`{${yQ.default.instancePath}="", ${yQ.default.parentData}, ${yQ.default.parentDataProperty}, ${yQ.default.rootData}=${yQ.default.data}${A.dynamicRef?WQ._`, ${yQ.default.dynamicAnchors}={}`:WQ.nil}}={}`}function h5B(A,Q){A.if(yQ.default.valCxt,()=>{if(A.var(yQ.default.instancePath,WQ._`${yQ.default.valCxt}.${yQ.default.instancePath}`),A.var(yQ.default.parentData,WQ._`${yQ.default.valCxt}.${yQ.default.parentData}`),A.var(yQ.default.parentDataProperty,WQ._`${yQ.default.valCxt}.${yQ.default.parentDataProperty}`),A.var(yQ.default.rootData,WQ._`${yQ.default.valCxt}.${yQ.default.rootData}`),Q.dynamicRef)A.var(yQ.default.dynamicAnchors,WQ._`${yQ.default.valCxt}.${yQ.default.dynamicAnchors}`)},()=>{if(A.var(yQ.default.instancePath,WQ._`""`),A.var(yQ.default.parentData,WQ._`undefined`),A.var(yQ.default.parentDataProperty,WQ._`undefined`),A.var(yQ.default.rootData,yQ.default.data),Q.dynamicRef)A.var(yQ.default.dynamicAnchors,WQ._`{}`)})}function x5B(A){let{schema:Q,opts:B,gen:Y}=A;$4A(A,()=>{if(B.$comment&&Q.$comment)I4A(A);if(d5B(A),Y.let(yQ.default.vErrors,null),Y.let(yQ.default.errors,0),B.unevaluated)f5B(A);V4A(A),p5B(A)});return}function f5B(A){let{gen:Q,validateName:B}=A;A.evaluated=Q.const("evaluated",WQ._`${B}.evaluated`),Q.if(WQ._`${A.evaluated}.dynamicProps`,()=>Q.assign(WQ._`${A.evaluated}.props`,WQ._`undefined`)),Q.if(WQ._`${A.evaluated}.dynamicItems`,()=>Q.assign(WQ._`${A.evaluated}.items`,WQ._`undefined`))}function G4A(A,Q){let B=typeof A=="object"&&A[Q.schemaId];return B&&(Q.code.source||Q.code.process)?WQ._`/*# sourceURL=${B} */`:WQ.nil}function b5B(A,Q){if(E4A(A)){if(K4A(A),U4A(A)){m5B(A,Q);return}}(0,Z4A.boolOrEmptySchema)(A,Q)}function U4A({schema:A,self:Q}){if(typeof A=="boolean")return!A;for(let B in A)if(Q.RULES.all[B])return!0;return!1}function E4A(A){return typeof A.schema!="boolean"}function m5B(A,Q){let{schema:B,gen:Y,opts:J}=A;if(J.$comment&&B.$comment)I4A(A);c5B(A),l5B(A);let C=Y.const("_errs",yQ.default.errors);V4A(A,C),Y.var(Q,WQ._`${C} === ${yQ.default.errors}`)}function K4A(A){(0,d6.checkUnknownRules)(A),u5B(A)}function V4A(A,Q){if(A.opts.jtd)return W4A(A,[],!1,Q);let B=(0,X4A.getSchemaTypes)(A.schema),Y=(0,X4A.coerceAndCheckDataType)(A,B);W4A(A,B,!Y,Q)}function u5B(A){let{schema:Q,errSchemaPath:B,opts:Y,self:J}=A;if(Q.$ref&&Y.ignoreKeywordsWithRef&&(0,d6.schemaHasRulesButRef)(Q,J.RULES))J.logger.warn(`$ref: keywords ignored in schema at path "${B}"`)}function d5B(A){let{schema:Q,opts:B}=A;if(Q.default!==void 0&&B.useDefaults&&B.strictSchema)(0,d6.checkStrictMode)(A,"default is ignored in the schema root")}function c5B(A){let Q=A.schema[A.opts.schemaId];if(Q)A.baseId=(0,v5B.resolveUrl)(A.opts.uriResolver,A.baseId,Q)}function l5B(A){if(A.schema.$async&&!A.schemaEnv.$async)throw Error("async schema in sync schema")}function I4A({gen:A,schemaEnv:Q,schema:B,errSchemaPath:Y,opts:J}){let C=B.$comment;if(J.$comment===!0)A.code(WQ._`${yQ.default.self}.logger.log(${C})`);else if(typeof J.$comment=="function"){let X=WQ.str`${Y}/$comment`,G=A.scopeValue("root",{ref:Q.root});A.code(WQ._`${yQ.default.self}.opts.$comment(${C}, ${X}, ${G}.schema)`)}}function p5B(A){let{gen:Q,schemaEnv:B,validateName:Y,ValidationError:J,opts:C}=A;if(B.$async)Q.if(WQ._`${yQ.default.errors} === 0`,()=>Q.return(yQ.default.data),()=>Q.throw(WQ._`new ${J}(${yQ.default.vErrors})`));else{if(Q.assign(WQ._`${Y}.errors`,yQ.default.vErrors),C.unevaluated)i5B(A);Q.return(WQ._`${yQ.default.errors} === 0`)}}function i5B({gen:A,evaluated:Q,props:B,items:Y}){if(B instanceof WQ.Name)A.assign(WQ._`${Q}.props`,B);if(Y instanceof WQ.Name)A.assign(WQ._`${Q}.items`,Y)}function W4A(A,Q,B,Y){let{gen:J,schema:C,data:X,allErrors:G,opts:W,self:F}=A,{RULES:Z}=F;if(C.$ref&&(W.ignoreKeywordsWithRef||!(0,d6.schemaHasRulesButRef)(C,Z))){J.block(()=>D4A(A,"$ref",Z.all.$ref.definition));return}if(!W.jtd)n5B(A,Q);J.block(()=>{for(let $ of Z.rules)U($);U(Z.post)});function U($){if(!(0,Nb.shouldUseGroup)(C,$))return;if($.type){if(J.if((0,$w.checkDataType)($.type,X,W.strictNumbers)),F4A(A,$),Q.length===1&&Q[0]===$.type&&B)J.else(),(0,$w.reportTypeError)(A);J.endIf()}else F4A(A,$);if(!G)J.if(WQ._`${yQ.default.errors} === ${Y||0}`)}}function F4A(A,Q){let{gen:B,schema:Y,opts:{useDefaults:J}}=A;if(J)(0,_5B.assignDefaults)(A,Q.type);B.block(()=>{for(let C of Q.rules)if((0,Nb.shouldUseRule)(Y,C))D4A(A,C.keyword,C.definition,Q.type)})}function n5B(A,Q){if(A.schemaEnv.meta||!A.opts.strictTypes)return;if(s5B(A,Q),!A.opts.allowUnionTypes)r5B(A,Q);a5B(A,A.dataTypes)}function s5B(A,Q){if(!Q.length)return;if(!A.dataTypes.length){A.dataTypes=Q;return}Q.forEach((B)=>{if(!H4A(A.dataTypes,B))Lb(A,`type "${B}" not allowed by context "${A.dataTypes.join(",")}"`)}),t5B(A,Q)}function r5B(A,Q){if(Q.length>1&&!(Q.length===2&&Q.includes("null")))Lb(A,"use allowUnionTypes to allow union type keyword")}function a5B(A,Q){let B=A.self.RULES.all;for(let Y in B){let J=B[Y];if(typeof J=="object"&&(0,Nb.shouldUseRule)(A.schema,J)){let{type:C}=J.definition;if(C.length&&!C.some((X)=>o5B(Q,X)))Lb(A,`missing type "${C.join(",")}" for keyword "${Y}"`)}}}function o5B(A,Q){return A.includes(Q)||Q==="number"&&A.includes("integer")}function H4A(A,Q){return A.includes(Q)||Q==="integer"&&A.includes("number")}function t5B(A,Q){let B=[];for(let Y of A.dataTypes)if(H4A(Q,Y))B.push(Y);else if(Q.includes("integer")&&Y==="number")B.push("integer");A.dataTypes=B}function Lb(A,Q){let B=A.schemaEnv.baseId+A.errSchemaPath;Q+=` at "${B}" (strictTypes)`,(0,d6.checkStrictMode)(A,Q,A.opts.strictTypes)}class qb{constructor(A,Q,B){if((0,qD.validateKeywordUsage)(A,Q,B),this.gen=A.gen,this.allErrors=A.allErrors,this.keyword=B,this.data=A.data,this.schema=A.schema[B],this.$data=Q.$data&&A.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,d6.schemaRefOrVal)(A,this.schema,B,this.$data),this.schemaType=Q.schemaType,this.parentSchema=A.schema,this.params={},this.it=A,this.def=Q,this.$data)this.schemaCode=A.gen.const("vSchema",N4A(this.$data,A));else if(this.schemaCode=this.schemaValue,!(0,qD.validSchemaType)(this.schema,Q.schemaType,Q.allowUndefined))throw Error(`${B} value must be ${JSON.stringify(Q.schemaType)}`);if("code"in Q?Q.trackErrors:Q.errors!==!1)this.errsCount=A.gen.const("_errs",yQ.default.errors)}result(A,Q,B){this.failResult((0,WQ.not)(A),Q,B)}failResult(A,Q,B){if(this.gen.if(A),B)B();else this.error();if(Q){if(this.gen.else(),Q(),this.allErrors)this.gen.endIf()}else if(this.allErrors)this.gen.endIf();else this.gen.else()}pass(A,Q){this.failResult((0,WQ.not)(A),void 0,Q)}fail(A){if(A===void 0){if(this.error(),!this.allErrors)this.gen.if(!1);return}if(this.gen.if(A),this.error(),this.allErrors)this.gen.endIf();else this.gen.else()}fail$data(A){if(!this.$data)return this.fail(A);let{schemaCode:Q}=this;this.fail(WQ._`${Q} !== undefined && (${(0,WQ.or)(this.invalid$data(),A)})`)}error(A,Q,B){if(Q){this.setParams(Q),this._error(A,B),this.setParams({});return}this._error(A,B)}_error(A,Q){(A?LD.reportExtraError:LD.reportError)(this,this.def.error,Q)}$dataError(){(0,LD.reportError)(this,this.def.$dataError||LD.keyword$DataError)}reset(){if(this.errsCount===void 0)throw Error('add "trackErrors" to keyword definition');(0,LD.resetErrorsCount)(this.gen,this.errsCount)}ok(A){if(!this.allErrors)this.gen.if(A)}setParams(A,Q){if(Q)Object.assign(this.params,A);else this.params=A}block$data(A,Q,B=WQ.nil){this.gen.block(()=>{this.check$data(A,B),Q()})}check$data(A=WQ.nil,Q=WQ.nil){if(!this.$data)return;let{gen:B,schemaCode:Y,schemaType:J,def:C}=this;if(B.if((0,WQ.or)(WQ._`${Y} === undefined`,Q)),A!==WQ.nil)B.assign(A,!0);if(J.length||C.validateSchema){if(B.elseIf(this.invalid$data()),this.$dataError(),A!==WQ.nil)B.assign(A,!1)}B.else()}invalid$data(){let{gen:A,schemaCode:Q,schemaType:B,def:Y,it:J}=this;return(0,WQ.or)(C(),X());function C(){if(B.length){if(!(Q instanceof WQ.Name))throw Error("ajv implementation error");let G=Array.isArray(B)?B:[B];return WQ._`${(0,$w.checkDataTypes)(G,Q,J.opts.strictNumbers,$w.DataType.Wrong)}`}return WQ.nil}function X(){if(Y.validateSchema){let G=A.scopeValue("validate$data",{ref:Y.validateSchema});return WQ._`!${G}(${Q})`}return WQ.nil}}subschema(A,Q){let B=(0,Db.getSubschema)(this.it,A);(0,Db.extendSubschemaData)(B,this.it,A),(0,Db.extendSubschemaMode)(B,A);let Y={...this.it,...B,items:void 0,props:void 0};return b5B(Y,Q),Y}mergeEvaluated(A,Q){let{it:B,gen:Y}=this;if(!B.opts.unevaluated)return;if(B.props!==!0&&A.props!==void 0)B.props=d6.mergeEvaluated.props(Y,A.props,B.props,Q);if(B.items!==!0&&A.items!==void 0)B.items=d6.mergeEvaluated.items(Y,A.items,B.items,Q)}mergeValidEvaluated(A,Q){let{it:B,gen:Y}=this;if(B.opts.unevaluated&&(B.props!==!0||B.items!==!0))return Y.if(Q,()=>this.mergeEvaluated(A,WQ.Name)),!0}}L4A.KeywordCxt=qb;function D4A(A,Q,B,Y){let J=new qb(A,B,Q);if("code"in B)B.code(J,Y);else if(J.$data&&B.validate)(0,qD.funcKeywordCode)(J,B);else if("macro"in B)(0,qD.macroKeywordCode)(J,B);else if(B.compile||B.validate)(0,qD.funcKeywordCode)(J,B)}var e5B=/^\/(?:[^~]|~0|~1)*$/,ACB=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function N4A(A,{dataLevel:Q,dataNames:B,dataPathArr:Y}){let J,C;if(A==="")return yQ.default.rootData;if(A[0]==="/"){if(!e5B.test(A))throw Error(`Invalid JSON-pointer: ${A}`);J=A,C=yQ.default.rootData}else{let F=ACB.exec(A);if(!F)throw Error(`Invalid JSON-pointer: ${A}`);let Z=+F[1];if(J=F[2],J==="#"){if(Z>=Q)throw Error(W("property/index",Z));return Y[Q-Z]}if(Z>Q)throw Error(W("data",Z));if(C=B[Q-Z],!J)return C}let X=C,G=J.split("/");for(let F of G)if(F)C=WQ._`${C}${(0,WQ.getProperty)((0,d6.unescapeJsonPointer)(F))}`,X=WQ._`${X} && ${C}`;return X;function W(F,Z){return`Cannot access ${F} ${Z} levels up, current level is ${Q}`}}L4A.getData=N4A});var Uw=R((z4A)=>{Object.defineProperty(z4A,"__esModule",{value:!0});class M4A extends Error{constructor(A){super("validation failed");this.errors=A,this.ajv=this.validation=!0}}z4A.default=M4A});var zD=R((w4A)=>{Object.defineProperty(w4A,"__esModule",{value:!0});var Mb=ND();class R4A extends Error{constructor(A,Q,B,Y){super(Y||`can't resolve reference ${B} from id ${Q}`);this.missingRef=(0,Mb.resolveUrl)(A,Q,B),this.missingSchema=(0,Mb.normalizeId)((0,Mb.getFullPath)(A,this.missingRef))}}w4A.default=R4A});var Kw=R((P4A)=>{Object.defineProperty(P4A,"__esModule",{value:!0});P4A.resolveSchema=P4A.getCompilingSchema=P4A.resolveRef=P4A.compileSchema=P4A.SchemaEnv=void 0;var lC=GB(),CCB=Uw(),HZ=u6(),pC=ND(),j4A=wB(),XCB=MD();class RD{constructor(A){var Q;this.refs={},this.dynamicAnchors={};let B;if(typeof A.schema=="object")B=A.schema;this.schema=A.schema,this.schemaId=A.schemaId,this.root=A.root||this,this.baseId=(Q=A.baseId)!==null&&Q!==void 0?Q:(0,pC.normalizeId)(B===null||B===void 0?void 0:B[A.schemaId||"$id"]),this.schemaPath=A.schemaPath,this.localRefs=A.localRefs,this.meta=A.meta,this.$async=B===null||B===void 0?void 0:B.$async,this.refs={}}}P4A.SchemaEnv=RD;function Rb(A){let Q=O4A.call(this,A);if(Q)return Q;let B=(0,pC.getFullPath)(this.opts.uriResolver,A.root.baseId),{es5:Y,lines:J}=this.opts.code,{ownProperties:C}=this.opts,X=new lC.CodeGen(this.scope,{es5:Y,lines:J,ownProperties:C}),G;if(A.$async)G=X.scopeValue("Error",{ref:CCB.default,code:lC._`require("ajv/dist/runtime/validation_error").default`});let W=X.scopeName("validate");A.validateName=W;let F={gen:X,allErrors:this.opts.allErrors,data:HZ.default.data,parentData:HZ.default.parentData,parentDataProperty:HZ.default.parentDataProperty,dataNames:[HZ.default.data],dataPathArr:[lC.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:X.scopeValue("schema",this.opts.code.source===!0?{ref:A.schema,code:(0,lC.stringify)(A.schema)}:{ref:A.schema}),validateName:W,ValidationError:G,schema:A.schema,schemaEnv:A,rootId:B,baseId:A.baseId||B,schemaPath:lC.nil,errSchemaPath:A.schemaPath||(this.opts.jtd?"":"#"),errorPath:lC._`""`,opts:this.opts,self:this},Z;try{this._compilations.add(A),(0,XCB.validateFunctionCode)(F),X.optimize(this.opts.code.optimize);let U=X.toString();if(Z=`${X.scopeRefs(HZ.default.scope)}return ${U}`,this.opts.code.process)Z=this.opts.code.process(Z,A);let E=Function(`${HZ.default.self}`,`${HZ.default.scope}`,Z)(this,this.scope.get());if(this.scope.value(W,{ref:E}),E.errors=null,E.schema=A.schema,E.schemaEnv=A,A.$async)E.$async=!0;if(this.opts.code.source===!0)E.source={validateName:W,validateCode:U,scopeValues:X._values};if(this.opts.unevaluated){let{props:K,items:I}=F;if(E.evaluated={props:K instanceof lC.Name?void 0:K,items:I instanceof lC.Name?void 0:I,dynamicProps:K instanceof lC.Name,dynamicItems:I instanceof lC.Name},E.source)E.source.evaluated=(0,lC.stringify)(E.evaluated)}return A.validate=E,A}catch(U){if(delete A.validate,delete A.validateName,Z)this.logger.error("Error compiling schema, function code:",Z);throw U}finally{this._compilations.delete(A)}}P4A.compileSchema=Rb;function GCB(A,Q,B){var Y;B=(0,pC.resolveUrl)(this.opts.uriResolver,Q,B);let J=A.refs[B];if(J)return J;let C=ZCB.call(this,A,B);if(C===void 0){let X=(Y=A.localRefs)===null||Y===void 0?void 0:Y[B],{schemaId:G}=this.opts;if(X)C=new RD({schema:X,schemaId:G,root:A,baseId:Q})}if(C===void 0)return;return A.refs[B]=WCB.call(this,C)}P4A.resolveRef=GCB;function WCB(A){if((0,pC.inlineRef)(A.schema,this.opts.inlineRefs))return A.schema;return A.validate?A:Rb.call(this,A)}function O4A(A){for(let Q of this._compilations)if(FCB(Q,A))return Q}P4A.getCompilingSchema=O4A;function FCB(A,Q){return A.schema===Q.schema&&A.root===Q.root&&A.baseId===Q.baseId}function ZCB(A,Q){let B;while(typeof(B=this.refs[Q])=="string")Q=B;return B||this.schemas[Q]||Ew.call(this,A,Q)}function Ew(A,Q){let B=this.opts.uriResolver.parse(Q),Y=(0,pC._getFullPath)(this.opts.uriResolver,B),J=(0,pC.getFullPath)(this.opts.uriResolver,A.baseId,void 0);if(Object.keys(A.schema).length>0&&Y===J)return zb.call(this,B,A);let C=(0,pC.normalizeId)(Y),X=this.refs[C]||this.schemas[C];if(typeof X=="string"){let G=Ew.call(this,A,X);if(typeof(G===null||G===void 0?void 0:G.schema)!=="object")return;return zb.call(this,B,G)}if(typeof(X===null||X===void 0?void 0:X.schema)!=="object")return;if(!X.validate)Rb.call(this,X);if(C===(0,pC.normalizeId)(Q)){let{schema:G}=X,{schemaId:W}=this.opts,F=G[W];if(F)J=(0,pC.resolveUrl)(this.opts.uriResolver,J,F);return new RD({schema:G,schemaId:W,root:A,baseId:J})}return zb.call(this,B,X)}P4A.resolveSchema=Ew;var $CB=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function zb(A,{baseId:Q,schema:B,root:Y}){var J;if(((J=A.fragment)===null||J===void 0?void 0:J[0])!=="/")return;for(let G of A.fragment.slice(1).split("/")){if(typeof B==="boolean")return;let W=B[(0,j4A.unescapeFragment)(G)];if(W===void 0)return;B=W;let F=typeof B==="object"&&B[this.opts.schemaId];if(!$CB.has(G)&&F)Q=(0,pC.resolveUrl)(this.opts.uriResolver,Q,F)}let C;if(typeof B!="boolean"&&B.$ref&&!(0,j4A.schemaHasRulesButRef)(B,this.RULES)){let G=(0,pC.resolveUrl)(this.opts.uriResolver,Q,B.$ref);C=Ew.call(this,Y,G)}let{schemaId:X}=this.opts;if(C=C||new RD({schema:B,schemaId:X,root:Y,baseId:Q}),C.schema!==C.root.schema)return C;return}});var S4A=R((tUY,ICB)=>{ICB.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var _4A=R((eUY,k4A)=>{var HCB={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,a:10,A:10,b:11,B:11,c:12,C:12,d:13,D:13,e:14,E:14,f:15,F:15};k4A.exports={HEX:HCB}});var m4A=R((AEY,b4A)=>{var{HEX:DCB}=_4A(),NCB=/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u;function h4A(A){if(f4A(A,".")<3)return{host:A,isIPV4:!1};let Q=A.match(NCB)||[],[B]=Q;if(B)return{host:qCB(B,"."),isIPV4:!0};else return{host:A,isIPV4:!1}}function wb(A,Q=!1){let B="",Y=!0;for(let J of A){if(DCB[J]===void 0)return;if(J!=="0"&&Y===!0)Y=!1;if(!Y)B+=J}if(Q&&B.length===0)B="0";return B}function LCB(A){let Q=0,B={error:!1,address:"",zone:""},Y=[],J=[],C=!1,X=!1,G=!1;function W(){if(J.length){if(C===!1){let F=wb(J);if(F!==void 0)Y.push(F);else return B.error=!0,!1}J.length=0}return!0}for(let F=0;F7){B.error=!0;break}if(F-1>=0&&A[F-1]===":")X=!0;continue}else if(Z==="%"){if(!W())break;C=!0}else{J.push(Z);continue}}if(J.length)if(C)B.zone=J.join("");else if(G)Y.push(J.join(""));else Y.push(wb(J));return B.address=Y.join(""),B}function x4A(A){if(f4A(A,":")<2)return{host:A,isIPV6:!1};let Q=LCB(A);if(!Q.error){let{address:B,address:Y}=Q;if(Q.zone)B+="%"+Q.zone,Y+="%25"+Q.zone;return{host:B,escapedHost:Y,isIPV6:!0}}else return{host:A,isIPV6:!1}}function qCB(A,Q){let B="",Y=!0,J=A.length;for(let C=0;C{var jCB=/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu,OCB=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu;function u4A(A){return typeof A.secure==="boolean"?A.secure:String(A.scheme).toLowerCase()==="wss"}function d4A(A){if(!A.host)A.error=A.error||"HTTP URIs must have a host.";return A}function c4A(A){let Q=String(A.scheme).toLowerCase()==="https";if(A.port===(Q?443:80)||A.port==="")A.port=void 0;if(!A.path)A.path="/";return A}function PCB(A){return A.secure=u4A(A),A.resourceName=(A.path||"/")+(A.query?"?"+A.query:""),A.path=void 0,A.query=void 0,A}function TCB(A){if(A.port===(u4A(A)?443:80)||A.port==="")A.port=void 0;if(typeof A.secure==="boolean")A.scheme=A.secure?"wss":"ws",A.secure=void 0;if(A.resourceName){let[Q,B]=A.resourceName.split("?");A.path=Q&&Q!=="/"?Q:void 0,A.query=B,A.resourceName=void 0}return A.fragment=void 0,A}function SCB(A,Q){if(!A.path)return A.error="URN can not be parsed",A;let B=A.path.match(OCB);if(B){let Y=Q.scheme||A.scheme||"urn";A.nid=B[1].toLowerCase(),A.nss=B[2];let J=`${Y}:${Q.nid||A.nid}`,C=jb[J];if(A.path=void 0,C)A=C.parse(A,Q)}else A.error=A.error||"URN can not be parsed.";return A}function kCB(A,Q){let B=Q.scheme||A.scheme||"urn",Y=A.nid.toLowerCase(),J=`${B}:${Q.nid||Y}`,C=jb[J];if(C)A=C.serialize(A,Q);let X=A,G=A.nss;return X.path=`${Y||Q.nid}:${G}`,Q.skipEscape=!0,X}function _CB(A,Q){let B=A;if(B.uuid=B.nss,B.nss=void 0,!Q.tolerant&&(!B.uuid||!jCB.test(B.uuid)))B.error=B.error||"UUID is not valid.";return B}function vCB(A){let Q=A;return Q.nss=(A.uuid||"").toLowerCase(),Q}var l4A={scheme:"http",domainHost:!0,parse:d4A,serialize:c4A},yCB={scheme:"https",domainHost:l4A.domainHost,parse:d4A,serialize:c4A},Vw={scheme:"ws",domainHost:!0,parse:PCB,serialize:TCB},gCB={scheme:"wss",domainHost:Vw.domainHost,parse:Vw.parse,serialize:Vw.serialize},hCB={scheme:"urn",parse:SCB,serialize:kCB,skipNormalize:!0},xCB={scheme:"urn:uuid",parse:_CB,serialize:vCB,skipNormalize:!0},jb={http:l4A,https:yCB,ws:Vw,wss:gCB,urn:hCB,"urn:uuid":xCB};p4A.exports=jb});var s4A=R((BEY,Hw)=>{var{normalizeIPv6:fCB,normalizeIPv4:bCB,removeDotSegments:wD,recomposeAuthority:mCB,normalizeComponentEncoding:Iw}=m4A(),Ob=i4A();function uCB(A,Q){if(typeof A==="string")A=AX(c6(A,Q),Q);else if(typeof A==="object")A=c6(AX(A,Q),Q);return A}function dCB(A,Q,B){let Y=Object.assign({scheme:"null"},B),J=n4A(c6(A,Y),c6(Q,Y),Y,!0);return AX(J,{...Y,skipEscape:!0})}function n4A(A,Q,B,Y){let J={};if(!Y)A=c6(AX(A,B),B),Q=c6(AX(Q,B),B);if(B=B||{},!B.tolerant&&Q.scheme)J.scheme=Q.scheme,J.userinfo=Q.userinfo,J.host=Q.host,J.port=Q.port,J.path=wD(Q.path||""),J.query=Q.query;else{if(Q.userinfo!==void 0||Q.host!==void 0||Q.port!==void 0)J.userinfo=Q.userinfo,J.host=Q.host,J.port=Q.port,J.path=wD(Q.path||""),J.query=Q.query;else{if(!Q.path)if(J.path=A.path,Q.query!==void 0)J.query=Q.query;else J.query=A.query;else{if(Q.path.charAt(0)==="/")J.path=wD(Q.path);else{if((A.userinfo!==void 0||A.host!==void 0||A.port!==void 0)&&!A.path)J.path="/"+Q.path;else if(!A.path)J.path=Q.path;else J.path=A.path.slice(0,A.path.lastIndexOf("/")+1)+Q.path;J.path=wD(J.path)}J.query=Q.query}J.userinfo=A.userinfo,J.host=A.host,J.port=A.port}J.scheme=A.scheme}return J.fragment=Q.fragment,J}function cCB(A,Q,B){if(typeof A==="string")A=unescape(A),A=AX(Iw(c6(A,B),!0),{...B,skipEscape:!0});else if(typeof A==="object")A=AX(Iw(A,!0),{...B,skipEscape:!0});if(typeof Q==="string")Q=unescape(Q),Q=AX(Iw(c6(Q,B),!0),{...B,skipEscape:!0});else if(typeof Q==="object")Q=AX(Iw(Q,!0),{...B,skipEscape:!0});return A.toLowerCase()===Q.toLowerCase()}function AX(A,Q){let B={host:A.host,scheme:A.scheme,userinfo:A.userinfo,port:A.port,path:A.path,query:A.query,nid:A.nid,nss:A.nss,uuid:A.uuid,fragment:A.fragment,reference:A.reference,resourceName:A.resourceName,secure:A.secure,error:""},Y=Object.assign({},Q),J=[],C=Ob[(Y.scheme||B.scheme||"").toLowerCase()];if(C&&C.serialize)C.serialize(B,Y);if(B.path!==void 0)if(!Y.skipEscape){if(B.path=escape(B.path),B.scheme!==void 0)B.path=B.path.split("%3A").join(":")}else B.path=unescape(B.path);if(Y.reference!=="suffix"&&B.scheme)J.push(B.scheme,":");let X=mCB(B);if(X!==void 0){if(Y.reference!=="suffix")J.push("//");if(J.push(X),B.path&&B.path.charAt(0)!=="/")J.push("/")}if(B.path!==void 0){let G=B.path;if(!Y.absolutePath&&(!C||!C.absolutePath))G=wD(G);if(X===void 0)G=G.replace(/^\/\//u,"/%2F");J.push(G)}if(B.query!==void 0)J.push("?",B.query);if(B.fragment!==void 0)J.push("#",B.fragment);return J.join("")}var lCB=Array.from({length:127},(A,Q)=>/[^!"$&'()*+,\-.;=_`a-z{}~]/u.test(String.fromCharCode(Q)));function pCB(A){let Q=0;for(let B=0,Y=A.length;B126||lCB[Q])return!0;return!1}var iCB=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function c6(A,Q){let B=Object.assign({},Q),Y={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},J=A.indexOf("%")!==-1,C=!1;if(B.reference==="suffix")A=(B.scheme?B.scheme+":":"")+"//"+A;let X=A.match(iCB);if(X){if(Y.scheme=X[1],Y.userinfo=X[3],Y.host=X[4],Y.port=parseInt(X[5],10),Y.path=X[6]||"",Y.query=X[7],Y.fragment=X[8],isNaN(Y.port))Y.port=X[5];if(Y.host){let W=bCB(Y.host);if(W.isIPV4===!1){let F=fCB(W.host);Y.host=F.host.toLowerCase(),C=F.isIPV6}else Y.host=W.host,C=!0}if(Y.scheme===void 0&&Y.userinfo===void 0&&Y.host===void 0&&Y.port===void 0&&Y.query===void 0&&!Y.path)Y.reference="same-document";else if(Y.scheme===void 0)Y.reference="relative";else if(Y.fragment===void 0)Y.reference="absolute";else Y.reference="uri";if(B.reference&&B.reference!=="suffix"&&B.reference!==Y.reference)Y.error=Y.error||"URI is not a "+B.reference+" reference.";let G=Ob[(B.scheme||Y.scheme||"").toLowerCase()];if(!B.unicodeSupport&&(!G||!G.unicodeSupport)){if(Y.host&&(B.domainHost||G&&G.domainHost)&&C===!1&&pCB(Y.host))try{Y.host=URL.domainToASCII(Y.host.toLowerCase())}catch(W){Y.error=Y.error||"Host's domain name can not be converted to ASCII: "+W}}if(!G||G&&!G.skipNormalize){if(J&&Y.scheme!==void 0)Y.scheme=unescape(Y.scheme);if(J&&Y.host!==void 0)Y.host=unescape(Y.host);if(Y.path)Y.path=escape(unescape(Y.path));if(Y.fragment)Y.fragment=encodeURI(decodeURIComponent(Y.fragment))}if(G&&G.parse)G.parse(Y,B)}else Y.error=Y.error||"URI can not be parsed.";return Y}var Pb={SCHEMES:Ob,normalize:uCB,resolve:dCB,resolveComponents:n4A,equal:cCB,serialize:AX,parse:c6};Hw.exports=Pb;Hw.exports.default=Pb;Hw.exports.fastUri=Pb});var o4A=R((a4A)=>{Object.defineProperty(a4A,"__esModule",{value:!0});var r4A=s4A();r4A.code='require("ajv/dist/runtime/uri").default';a4A.default=r4A});var CUA=R((l6)=>{Object.defineProperty(l6,"__esModule",{value:!0});l6.CodeGen=l6.Name=l6.nil=l6.stringify=l6.str=l6._=l6.KeywordCxt=void 0;var sCB=MD();Object.defineProperty(l6,"KeywordCxt",{enumerable:!0,get:function(){return sCB.KeywordCxt}});var VE=GB();Object.defineProperty(l6,"_",{enumerable:!0,get:function(){return VE._}});Object.defineProperty(l6,"str",{enumerable:!0,get:function(){return VE.str}});Object.defineProperty(l6,"stringify",{enumerable:!0,get:function(){return VE.stringify}});Object.defineProperty(l6,"nil",{enumerable:!0,get:function(){return VE.nil}});Object.defineProperty(l6,"Name",{enumerable:!0,get:function(){return VE.Name}});Object.defineProperty(l6,"CodeGen",{enumerable:!0,get:function(){return VE.CodeGen}});var rCB=Uw(),BUA=zD(),aCB=Wb(),jD=Kw(),oCB=GB(),OD=ND(),Dw=DD(),Sb=wB(),t4A=S4A(),tCB=o4A(),YUA=(A,Q)=>new RegExp(A,Q);YUA.code="new RegExp";var eCB=["removeAdditional","useDefaults","coerceTypes"],A1B=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),Q1B={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},B1B={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},e4A=200;function Y1B(A){var Q,B,Y,J,C,X,G,W,F,Z,U,$,E,K,I,V,H,D,L,z,M,N,q,w,P;let _=A.strict,j=(Q=A.code)===null||Q===void 0?void 0:Q.optimize,k=j===!0||j===void 0?1:j||0,T=(Y=(B=A.code)===null||B===void 0?void 0:B.regExp)!==null&&Y!==void 0?Y:YUA,S=(J=A.uriResolver)!==null&&J!==void 0?J:tCB.default;return{strictSchema:(X=(C=A.strictSchema)!==null&&C!==void 0?C:_)!==null&&X!==void 0?X:!0,strictNumbers:(W=(G=A.strictNumbers)!==null&&G!==void 0?G:_)!==null&&W!==void 0?W:!0,strictTypes:(Z=(F=A.strictTypes)!==null&&F!==void 0?F:_)!==null&&Z!==void 0?Z:"log",strictTuples:($=(U=A.strictTuples)!==null&&U!==void 0?U:_)!==null&&$!==void 0?$:"log",strictRequired:(K=(E=A.strictRequired)!==null&&E!==void 0?E:_)!==null&&K!==void 0?K:!1,code:A.code?{...A.code,optimize:k,regExp:T}:{optimize:k,regExp:T},loopRequired:(I=A.loopRequired)!==null&&I!==void 0?I:e4A,loopEnum:(V=A.loopEnum)!==null&&V!==void 0?V:e4A,meta:(H=A.meta)!==null&&H!==void 0?H:!0,messages:(D=A.messages)!==null&&D!==void 0?D:!0,inlineRefs:(L=A.inlineRefs)!==null&&L!==void 0?L:!0,schemaId:(z=A.schemaId)!==null&&z!==void 0?z:"$id",addUsedSchema:(M=A.addUsedSchema)!==null&&M!==void 0?M:!0,validateSchema:(N=A.validateSchema)!==null&&N!==void 0?N:!0,validateFormats:(q=A.validateFormats)!==null&&q!==void 0?q:!0,unicodeRegExp:(w=A.unicodeRegExp)!==null&&w!==void 0?w:!0,int32range:(P=A.int32range)!==null&&P!==void 0?P:!0,uriResolver:S}}class Nw{constructor(A={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,A=this.opts={...A,...Y1B(A)};let{es5:Q,lines:B}=this.opts.code;this.scope=new oCB.ValueScope({scope:{},prefixes:A1B,es5:Q,lines:B}),this.logger=F1B(A.logger);let Y=A.validateFormats;if(A.validateFormats=!1,this.RULES=(0,aCB.getRules)(),AUA.call(this,Q1B,A,"NOT SUPPORTED"),AUA.call(this,B1B,A,"DEPRECATED","warn"),this._metaOpts=G1B.call(this),A.formats)C1B.call(this);if(this._addVocabularies(),this._addDefaultMetaSchema(),A.keywords)X1B.call(this,A.keywords);if(typeof A.meta=="object")this.addMetaSchema(A.meta);J1B.call(this),A.validateFormats=Y}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:A,meta:Q,schemaId:B}=this.opts,Y=t4A;if(B==="id")Y={...t4A},Y.id=Y.$id,delete Y.$id;if(Q&&A)this.addMetaSchema(Y,Y[B],!1)}defaultMeta(){let{meta:A,schemaId:Q}=this.opts;return this.opts.defaultMeta=typeof A=="object"?A[Q]||A:void 0}validate(A,Q){let B;if(typeof A=="string"){if(B=this.getSchema(A),!B)throw Error(`no schema with key or ref "${A}"`)}else B=this.compile(A);let Y=B(Q);if(!("$async"in B))this.errors=B.errors;return Y}compile(A,Q){let B=this._addSchema(A,Q);return B.validate||this._compileSchemaEnv(B)}compileAsync(A,Q){if(typeof this.opts.loadSchema!="function")throw Error("options.loadSchema should be a function");let{loadSchema:B}=this.opts;return Y.call(this,A,Q);async function Y(F,Z){await J.call(this,F.$schema);let U=this._addSchema(F,Z);return U.validate||C.call(this,U)}async function J(F){if(F&&!this.getSchema(F))await Y.call(this,{$ref:F},!0)}async function C(F){try{return this._compileSchemaEnv(F)}catch(Z){if(!(Z instanceof BUA.default))throw Z;return X.call(this,Z),await G.call(this,Z.missingSchema),C.call(this,F)}}function X({missingSchema:F,missingRef:Z}){if(this.refs[F])throw Error(`AnySchema ${F} is loaded but ${Z} cannot be resolved`)}async function G(F){let Z=await W.call(this,F);if(!this.refs[F])await J.call(this,Z.$schema);if(!this.refs[F])this.addSchema(Z,F,Q)}async function W(F){let Z=this._loading[F];if(Z)return Z;try{return await(this._loading[F]=B(F))}finally{delete this._loading[F]}}}addSchema(A,Q,B,Y=this.opts.validateSchema){if(Array.isArray(A)){for(let C of A)this.addSchema(C,void 0,B,Y);return this}let J;if(typeof A==="object"){let{schemaId:C}=this.opts;if(J=A[C],J!==void 0&&typeof J!="string")throw Error(`schema ${C} must be string`)}return Q=(0,OD.normalizeId)(Q||J),this._checkUnique(Q),this.schemas[Q]=this._addSchema(A,B,Q,Y,!0),this}addMetaSchema(A,Q,B=this.opts.validateSchema){return this.addSchema(A,Q,!0,B),this}validateSchema(A,Q){if(typeof A=="boolean")return!0;let B;if(B=A.$schema,B!==void 0&&typeof B!="string")throw Error("$schema must be a string");if(B=B||this.opts.defaultMeta||this.defaultMeta(),!B)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let Y=this.validate(B,A);if(!Y&&Q){let J="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(J);else throw Error(J)}return Y}getSchema(A){let Q;while(typeof(Q=QUA.call(this,A))=="string")A=Q;if(Q===void 0){let{schemaId:B}=this.opts,Y=new jD.SchemaEnv({schema:{},schemaId:B});if(Q=jD.resolveSchema.call(this,Y,A),!Q)return;this.refs[A]=Q}return Q.validate||this._compileSchemaEnv(Q)}removeSchema(A){if(A instanceof RegExp)return this._removeAllSchemas(this.schemas,A),this._removeAllSchemas(this.refs,A),this;switch(typeof A){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let Q=QUA.call(this,A);if(typeof Q=="object")this._cache.delete(Q.schema);return delete this.schemas[A],delete this.refs[A],this}case"object":{let Q=A;this._cache.delete(Q);let B=A[this.opts.schemaId];if(B)B=(0,OD.normalizeId)(B),delete this.schemas[B],delete this.refs[B];return this}default:throw Error("ajv.removeSchema: invalid parameter")}}addVocabulary(A){for(let Q of A)this.addKeyword(Q);return this}addKeyword(A,Q){let B;if(typeof A=="string"){if(B=A,typeof Q=="object")this.logger.warn("these parameters are deprecated, see docs for addKeyword"),Q.keyword=B}else if(typeof A=="object"&&Q===void 0){if(Q=A,B=Q.keyword,Array.isArray(B)&&!B.length)throw Error("addKeywords: keyword must be string or non-empty array")}else throw Error("invalid addKeywords parameters");if($1B.call(this,B,Q),!Q)return(0,Sb.eachItem)(B,(J)=>Tb.call(this,J)),this;E1B.call(this,Q);let Y={...Q,type:(0,Dw.getJSONTypes)(Q.type),schemaType:(0,Dw.getJSONTypes)(Q.schemaType)};return(0,Sb.eachItem)(B,Y.type.length===0?(J)=>Tb.call(this,J,Y):(J)=>Y.type.forEach((C)=>Tb.call(this,J,Y,C))),this}getKeyword(A){let Q=this.RULES.all[A];return typeof Q=="object"?Q.definition:!!Q}removeKeyword(A){let{RULES:Q}=this;delete Q.keywords[A],delete Q.all[A];for(let B of Q.rules){let Y=B.rules.findIndex((J)=>J.keyword===A);if(Y>=0)B.rules.splice(Y,1)}return this}addFormat(A,Q){if(typeof Q=="string")Q=new RegExp(Q);return this.formats[A]=Q,this}errorsText(A=this.errors,{separator:Q=", ",dataVar:B="data"}={}){if(!A||A.length===0)return"No errors";return A.map((Y)=>`${B}${Y.instancePath} ${Y.message}`).reduce((Y,J)=>Y+Q+J)}$dataMetaSchema(A,Q){let B=this.RULES.all;A=JSON.parse(JSON.stringify(A));for(let Y of Q){let J=Y.split("/").slice(1),C=A;for(let X of J)C=C[X];for(let X in B){let G=B[X];if(typeof G!="object")continue;let{$data:W}=G.definition,F=C[X];if(W&&F)C[X]=JUA(F)}}return A}_removeAllSchemas(A,Q){for(let B in A){let Y=A[B];if(!Q||Q.test(B)){if(typeof Y=="string")delete A[B];else if(Y&&!Y.meta)this._cache.delete(Y.schema),delete A[B]}}}_addSchema(A,Q,B,Y=this.opts.validateSchema,J=this.opts.addUsedSchema){let C,{schemaId:X}=this.opts;if(typeof A=="object")C=A[X];else if(this.opts.jtd)throw Error("schema must be object");else if(typeof A!="boolean")throw Error("schema must be object or boolean");let G=this._cache.get(A);if(G!==void 0)return G;B=(0,OD.normalizeId)(C||B);let W=OD.getSchemaRefs.call(this,A,B);if(G=new jD.SchemaEnv({schema:A,schemaId:X,meta:Q,baseId:B,localRefs:W}),this._cache.set(G.schema,G),J&&!B.startsWith("#")){if(B)this._checkUnique(B);this.refs[B]=G}if(Y)this.validateSchema(A,!0);return G}_checkUnique(A){if(this.schemas[A]||this.refs[A])throw Error(`schema with key or id "${A}" already exists`)}_compileSchemaEnv(A){if(A.meta)this._compileMetaSchema(A);else jD.compileSchema.call(this,A);if(!A.validate)throw Error("ajv implementation error");return A.validate}_compileMetaSchema(A){let Q=this.opts;this.opts=this._metaOpts;try{jD.compileSchema.call(this,A)}finally{this.opts=Q}}}Nw.ValidationError=rCB.default;Nw.MissingRefError=BUA.default;l6.default=Nw;function AUA(A,Q,B,Y="error"){for(let J in A){let C=J;if(C in Q)this.logger[Y](`${B}: option ${J}. ${A[C]}`)}}function QUA(A){return A=(0,OD.normalizeId)(A),this.schemas[A]||this.refs[A]}function J1B(){let A=this.opts.schemas;if(!A)return;if(Array.isArray(A))this.addSchema(A);else for(let Q in A)this.addSchema(A[Q],Q)}function C1B(){for(let A in this.opts.formats){let Q=this.opts.formats[A];if(Q)this.addFormat(A,Q)}}function X1B(A){if(Array.isArray(A)){this.addVocabulary(A);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let Q in A){let B=A[Q];if(!B.keyword)B.keyword=Q;this.addKeyword(B)}}function G1B(){let A={...this.opts};for(let Q of eCB)delete A[Q];return A}var W1B={log(){},warn(){},error(){}};function F1B(A){if(A===!1)return W1B;if(A===void 0)return console;if(A.log&&A.warn&&A.error)return A;throw Error("logger must implement log, warn and error methods")}var Z1B=/^[a-z_$][a-z0-9_$:-]*$/i;function $1B(A,Q){let{RULES:B}=this;if((0,Sb.eachItem)(A,(Y)=>{if(B.keywords[Y])throw Error(`Keyword ${Y} is already defined`);if(!Z1B.test(Y))throw Error(`Keyword ${Y} has invalid name`)}),!Q)return;if(Q.$data&&!(("code"in Q)||("validate"in Q)))throw Error('$data keyword must have "code" or "validate" function')}function Tb(A,Q,B){var Y;let J=Q===null||Q===void 0?void 0:Q.post;if(B&&J)throw Error('keyword with "post" flag cannot have "type"');let{RULES:C}=this,X=J?C.post:C.rules.find(({type:W})=>W===B);if(!X)X={type:B,rules:[]},C.rules.push(X);if(C.keywords[A]=!0,!Q)return;let G={keyword:A,definition:{...Q,type:(0,Dw.getJSONTypes)(Q.type),schemaType:(0,Dw.getJSONTypes)(Q.schemaType)}};if(Q.before)U1B.call(this,X,G,Q.before);else X.rules.push(G);C.all[A]=G,(Y=Q.implements)===null||Y===void 0||Y.forEach((W)=>this.addKeyword(W))}function U1B(A,Q,B){let Y=A.rules.findIndex((J)=>J.keyword===B);if(Y>=0)A.rules.splice(Y,0,Q);else A.rules.push(Q),this.logger.warn(`rule ${B} is not defined`)}function E1B(A){let{metaSchema:Q}=A;if(Q===void 0)return;if(A.$data&&this.opts.$data)Q=JUA(Q);A.validateSchema=this.compile(Q,!0)}var K1B={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function JUA(A){return{anyOf:[A,K1B]}}});var GUA=R((XUA)=>{Object.defineProperty(XUA,"__esModule",{value:!0});var H1B={keyword:"id",code(){throw Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};XUA.default=H1B});var EUA=R(($UA)=>{Object.defineProperty($UA,"__esModule",{value:!0});$UA.callRef=$UA.getValidate=void 0;var N1B=zD(),WUA=w5(),b9=GB(),IE=u6(),FUA=Kw(),Lw=wB(),L1B={keyword:"$ref",schemaType:"string",code(A){let{gen:Q,schema:B,it:Y}=A,{baseId:J,schemaEnv:C,validateName:X,opts:G,self:W}=Y,{root:F}=C;if((B==="#"||B==="#/")&&J===F.baseId)return U();let Z=FUA.resolveRef.call(W,F,J,B);if(Z===void 0)throw new N1B.default(Y.opts.uriResolver,J,B);if(Z instanceof FUA.SchemaEnv)return $(Z);return E(Z);function U(){if(C===F)return qw(A,X,C,C.$async);let K=Q.scopeValue("root",{ref:F});return qw(A,b9._`${K}.validate`,F,F.$async)}function $(K){let I=ZUA(A,K);qw(A,I,K,K.$async)}function E(K){let I=Q.scopeValue("schema",G.code.source===!0?{ref:K,code:(0,b9.stringify)(K)}:{ref:K}),V=Q.name("valid"),H=A.subschema({schema:K,dataTypes:[],schemaPath:b9.nil,topSchemaRef:I,errSchemaPath:B},V);A.mergeEvaluated(H),A.ok(V)}}};function ZUA(A,Q){let{gen:B}=A;return Q.validate?B.scopeValue("validate",{ref:Q.validate}):b9._`${B.scopeValue("wrapper",{ref:Q})}.validate`}$UA.getValidate=ZUA;function qw(A,Q,B,Y){let{gen:J,it:C}=A,{allErrors:X,schemaEnv:G,opts:W}=C,F=W.passContext?IE.default.this:b9.nil;if(Y)Z();else U();function Z(){if(!G.$async)throw Error("async schema referenced by sync schema");let K=J.let("valid");J.try(()=>{if(J.code(b9._`await ${(0,WUA.callValidateCode)(A,Q,F)}`),E(Q),!X)J.assign(K,!0)},(I)=>{if(J.if(b9._`!(${I} instanceof ${C.ValidationError})`,()=>J.throw(I)),$(I),!X)J.assign(K,!1)}),A.ok(K)}function U(){A.result((0,WUA.callValidateCode)(A,Q,F),()=>E(Q),()=>$(Q))}function $(K){let I=b9._`${K}.errors`;J.assign(IE.default.vErrors,b9._`${IE.default.vErrors} === null ? ${I} : ${IE.default.vErrors}.concat(${I})`),J.assign(IE.default.errors,b9._`${IE.default.vErrors}.length`)}function E(K){var I;if(!C.opts.unevaluated)return;let V=(I=B===null||B===void 0?void 0:B.validate)===null||I===void 0?void 0:I.evaluated;if(C.props!==!0)if(V&&!V.dynamicProps){if(V.props!==void 0)C.props=Lw.mergeEvaluated.props(J,V.props,C.props)}else{let H=J.var("props",b9._`${K}.evaluated.props`);C.props=Lw.mergeEvaluated.props(J,H,C.props,b9.Name)}if(C.items!==!0)if(V&&!V.dynamicItems){if(V.items!==void 0)C.items=Lw.mergeEvaluated.items(J,V.items,C.items)}else{let H=J.var("items",b9._`${K}.evaluated.items`);C.items=Lw.mergeEvaluated.items(J,H,C.items,b9.Name)}}}$UA.callRef=qw;$UA.default=L1B});var VUA=R((KUA)=>{Object.defineProperty(KUA,"__esModule",{value:!0});var z1B=GUA(),R1B=EUA(),w1B=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",z1B.default,R1B.default];KUA.default=w1B});var HUA=R((IUA)=>{Object.defineProperty(IUA,"__esModule",{value:!0});var Mw=GB(),d7=Mw.operators,zw={maximum:{okStr:"<=",ok:d7.LTE,fail:d7.GT},minimum:{okStr:">=",ok:d7.GTE,fail:d7.LT},exclusiveMaximum:{okStr:"<",ok:d7.LT,fail:d7.GTE},exclusiveMinimum:{okStr:">",ok:d7.GT,fail:d7.LTE}},O1B={message:({keyword:A,schemaCode:Q})=>Mw.str`must be ${zw[A].okStr} ${Q}`,params:({keyword:A,schemaCode:Q})=>Mw._`{comparison: ${zw[A].okStr}, limit: ${Q}}`},P1B={keyword:Object.keys(zw),type:"number",schemaType:"number",$data:!0,error:O1B,code(A){let{keyword:Q,data:B,schemaCode:Y}=A;A.fail$data(Mw._`${B} ${zw[Q].fail} ${Y} || isNaN(${B})`)}};IUA.default=P1B});var NUA=R((DUA)=>{Object.defineProperty(DUA,"__esModule",{value:!0});var PD=GB(),S1B={message:({schemaCode:A})=>PD.str`must be multiple of ${A}`,params:({schemaCode:A})=>PD._`{multipleOf: ${A}}`},k1B={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:S1B,code(A){let{gen:Q,data:B,schemaCode:Y,it:J}=A,C=J.opts.multipleOfPrecision,X=Q.let("res"),G=C?PD._`Math.abs(Math.round(${X}) - ${X}) > 1e-${C}`:PD._`${X} !== parseInt(${X})`;A.fail$data(PD._`(${Y} === 0 || (${X} = ${B}/${Y}, ${G}))`)}};DUA.default=k1B});var MUA=R((qUA)=>{Object.defineProperty(qUA,"__esModule",{value:!0});function LUA(A){let Q=A.length,B=0,Y=0,J;while(Y=55296&&J<=56319&&Y{Object.defineProperty(zUA,"__esModule",{value:!0});var DZ=GB(),y1B=wB(),g1B=MUA(),h1B={message({keyword:A,schemaCode:Q}){let B=A==="maxLength"?"more":"fewer";return DZ.str`must NOT have ${B} than ${Q} characters`},params:({schemaCode:A})=>DZ._`{limit: ${A}}`},x1B={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:h1B,code(A){let{keyword:Q,data:B,schemaCode:Y,it:J}=A,C=Q==="maxLength"?DZ.operators.GT:DZ.operators.LT,X=J.opts.unicode===!1?DZ._`${B}.length`:DZ._`${(0,y1B.useFunc)(A.gen,g1B.default)}(${B})`;A.fail$data(DZ._`${X} ${C} ${Y}`)}};zUA.default=x1B});var jUA=R((wUA)=>{Object.defineProperty(wUA,"__esModule",{value:!0});var b1B=w5(),Rw=GB(),m1B={message:({schemaCode:A})=>Rw.str`must match pattern "${A}"`,params:({schemaCode:A})=>Rw._`{pattern: ${A}}`},u1B={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:m1B,code(A){let{data:Q,$data:B,schema:Y,schemaCode:J,it:C}=A,X=C.opts.unicodeRegExp?"u":"",G=B?Rw._`(new RegExp(${J}, ${X}))`:(0,b1B.usePattern)(A,Y);A.fail$data(Rw._`!${G}.test(${Q})`)}};wUA.default=u1B});var PUA=R((OUA)=>{Object.defineProperty(OUA,"__esModule",{value:!0});var TD=GB(),c1B={message({keyword:A,schemaCode:Q}){let B=A==="maxProperties"?"more":"fewer";return TD.str`must NOT have ${B} than ${Q} properties`},params:({schemaCode:A})=>TD._`{limit: ${A}}`},l1B={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:c1B,code(A){let{keyword:Q,data:B,schemaCode:Y}=A,J=Q==="maxProperties"?TD.operators.GT:TD.operators.LT;A.fail$data(TD._`Object.keys(${B}).length ${J} ${Y}`)}};OUA.default=l1B});var SUA=R((TUA)=>{Object.defineProperty(TUA,"__esModule",{value:!0});var SD=w5(),kD=GB(),i1B=wB(),n1B={message:({params:{missingProperty:A}})=>kD.str`must have required property '${A}'`,params:({params:{missingProperty:A}})=>kD._`{missingProperty: ${A}}`},s1B={keyword:"required",type:"object",schemaType:"array",$data:!0,error:n1B,code(A){let{gen:Q,schema:B,schemaCode:Y,data:J,$data:C,it:X}=A,{opts:G}=X;if(!C&&B.length===0)return;let W=B.length>=G.loopRequired;if(X.allErrors)F();else Z();if(G.strictRequired){let E=A.parentSchema.properties,{definedProperties:K}=A.it;for(let I of B)if((E===null||E===void 0?void 0:E[I])===void 0&&!K.has(I)){let V=X.schemaEnv.baseId+X.errSchemaPath,H=`required property "${I}" is not defined at "${V}" (strictRequired)`;(0,i1B.checkStrictMode)(X,H,X.opts.strictRequired)}}function F(){if(W||C)A.block$data(kD.nil,U);else for(let E of B)(0,SD.checkReportMissingProp)(A,E)}function Z(){let E=Q.let("missing");if(W||C){let K=Q.let("valid",!0);A.block$data(K,()=>$(E,K)),A.ok(K)}else Q.if((0,SD.checkMissingProp)(A,B,E)),(0,SD.reportMissingProp)(A,E),Q.else()}function U(){Q.forOf("prop",Y,(E)=>{A.setParams({missingProperty:E}),Q.if((0,SD.noPropertyInData)(Q,J,E,G.ownProperties),()=>A.error())})}function $(E,K){A.setParams({missingProperty:E}),Q.forOf(E,Y,()=>{Q.assign(K,(0,SD.propertyInData)(Q,J,E,G.ownProperties)),Q.if((0,kD.not)(K),()=>{A.error(),Q.break()})},kD.nil)}}};TUA.default=s1B});var _UA=R((kUA)=>{Object.defineProperty(kUA,"__esModule",{value:!0});var _D=GB(),a1B={message({keyword:A,schemaCode:Q}){let B=A==="maxItems"?"more":"fewer";return _D.str`must NOT have ${B} than ${Q} items`},params:({schemaCode:A})=>_D._`{limit: ${A}}`},o1B={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:a1B,code(A){let{keyword:Q,data:B,schemaCode:Y}=A,J=Q==="maxItems"?_D.operators.GT:_D.operators.LT;A.fail$data(_D._`${B}.length ${J} ${Y}`)}};kUA.default=o1B});var ww=R((yUA)=>{Object.defineProperty(yUA,"__esModule",{value:!0});var vUA=Ib();vUA.code='require("ajv/dist/runtime/equal").default';yUA.default=vUA});var hUA=R((gUA)=>{Object.defineProperty(gUA,"__esModule",{value:!0});var kb=DD(),ZJ=GB(),AXB=wB(),QXB=ww(),BXB={message:({params:{i:A,j:Q}})=>ZJ.str`must NOT have duplicate items (items ## ${Q} and ${A} are identical)`,params:({params:{i:A,j:Q}})=>ZJ._`{i: ${A}, j: ${Q}}`},YXB={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:BXB,code(A){let{gen:Q,data:B,$data:Y,schema:J,parentSchema:C,schemaCode:X,it:G}=A;if(!Y&&!J)return;let W=Q.let("valid"),F=C.items?(0,kb.getSchemaTypes)(C.items):[];A.block$data(W,Z,ZJ._`${X} === false`),A.ok(W);function Z(){let K=Q.let("i",ZJ._`${B}.length`),I=Q.let("j");A.setParams({i:K,j:I}),Q.assign(W,!0),Q.if(ZJ._`${K} > 1`,()=>(U()?$:E)(K,I))}function U(){return F.length>0&&!F.some((K)=>K==="object"||K==="array")}function $(K,I){let V=Q.name("item"),H=(0,kb.checkDataTypes)(F,V,G.opts.strictNumbers,kb.DataType.Wrong),D=Q.const("indices",ZJ._`{}`);Q.for(ZJ._`;${K}--;`,()=>{if(Q.let(V,ZJ._`${B}[${K}]`),Q.if(H,ZJ._`continue`),F.length>1)Q.if(ZJ._`typeof ${V} == "string"`,ZJ._`${V} += "_"`);Q.if(ZJ._`typeof ${D}[${V}] == "number"`,()=>{Q.assign(I,ZJ._`${D}[${V}]`),A.error(),Q.assign(W,!1).break()}).code(ZJ._`${D}[${V}] = ${K}`)})}function E(K,I){let V=(0,AXB.useFunc)(Q,QXB.default),H=Q.name("outer");Q.label(H).for(ZJ._`;${K}--;`,()=>Q.for(ZJ._`${I} = ${K}; ${I}--;`,()=>Q.if(ZJ._`${V}(${B}[${K}], ${B}[${I}])`,()=>{A.error(),Q.assign(W,!1).break(H)})))}}};gUA.default=YXB});var fUA=R((xUA)=>{Object.defineProperty(xUA,"__esModule",{value:!0});var _b=GB(),CXB=wB(),XXB=ww(),GXB={message:"must be equal to constant",params:({schemaCode:A})=>_b._`{allowedValue: ${A}}`},WXB={keyword:"const",$data:!0,error:GXB,code(A){let{gen:Q,data:B,$data:Y,schemaCode:J,schema:C}=A;if(Y||C&&typeof C=="object")A.fail$data(_b._`!${(0,CXB.useFunc)(Q,XXB.default)}(${B}, ${J})`);else A.fail(_b._`${C} !== ${B}`)}};xUA.default=WXB});var mUA=R((bUA)=>{Object.defineProperty(bUA,"__esModule",{value:!0});var vD=GB(),ZXB=wB(),$XB=ww(),UXB={message:"must be equal to one of the allowed values",params:({schemaCode:A})=>vD._`{allowedValues: ${A}}`},EXB={keyword:"enum",schemaType:"array",$data:!0,error:UXB,code(A){let{gen:Q,data:B,$data:Y,schema:J,schemaCode:C,it:X}=A;if(!Y&&J.length===0)throw Error("enum must have non-empty array");let G=J.length>=X.opts.loopEnum,W,F=()=>W!==null&&W!==void 0?W:W=(0,ZXB.useFunc)(Q,$XB.default),Z;if(G||Y)Z=Q.let("valid"),A.block$data(Z,U);else{if(!Array.isArray(J))throw Error("ajv implementation error");let E=Q.const("vSchema",C);Z=(0,vD.or)(...J.map((K,I)=>$(E,I)))}A.pass(Z);function U(){Q.assign(Z,!1),Q.forOf("v",C,(E)=>Q.if(vD._`${F()}(${B}, ${E})`,()=>Q.assign(Z,!0).break()))}function $(E,K){let I=J[K];return typeof I==="object"&&I!==null?vD._`${F()}(${B}, ${E}[${K}])`:vD._`${B} === ${I}`}}};bUA.default=EXB});var dUA=R((uUA)=>{Object.defineProperty(uUA,"__esModule",{value:!0});var VXB=HUA(),IXB=NUA(),HXB=RUA(),DXB=jUA(),NXB=PUA(),LXB=SUA(),qXB=_UA(),MXB=hUA(),zXB=fUA(),RXB=mUA(),wXB=[VXB.default,IXB.default,HXB.default,DXB.default,NXB.default,LXB.default,qXB.default,MXB.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},zXB.default,RXB.default];uUA.default=wXB});var yb=R((lUA)=>{Object.defineProperty(lUA,"__esModule",{value:!0});lUA.validateAdditionalItems=void 0;var NZ=GB(),vb=wB(),OXB={message:({params:{len:A}})=>NZ.str`must NOT have more than ${A} items`,params:({params:{len:A}})=>NZ._`{limit: ${A}}`},PXB={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:OXB,code(A){let{parentSchema:Q,it:B}=A,{items:Y}=Q;if(!Array.isArray(Y)){(0,vb.checkStrictMode)(B,'"additionalItems" is ignored when "items" is not an array of schemas');return}cUA(A,Y)}};function cUA(A,Q){let{gen:B,schema:Y,data:J,keyword:C,it:X}=A;X.items=!0;let G=B.const("len",NZ._`${J}.length`);if(Y===!1)A.setParams({len:Q.length}),A.pass(NZ._`${G} <= ${Q.length}`);else if(typeof Y=="object"&&!(0,vb.alwaysValidSchema)(X,Y)){let F=B.var("valid",NZ._`${G} <= ${Q.length}`);B.if((0,NZ.not)(F),()=>W(F)),A.ok(F)}function W(F){B.forRange("i",Q.length,G,(Z)=>{if(A.subschema({keyword:C,dataProp:Z,dataPropType:vb.Type.Num},F),!X.allErrors)B.if((0,NZ.not)(F),()=>B.break())})}}lUA.validateAdditionalItems=cUA;lUA.default=PXB});var gb=R((sUA)=>{Object.defineProperty(sUA,"__esModule",{value:!0});sUA.validateTuple=void 0;var iUA=GB(),jw=wB(),SXB=w5(),kXB={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(A){let{schema:Q,it:B}=A;if(Array.isArray(Q))return nUA(A,"additionalItems",Q);if(B.items=!0,(0,jw.alwaysValidSchema)(B,Q))return;A.ok((0,SXB.validateArray)(A))}};function nUA(A,Q,B=A.schema){let{gen:Y,parentSchema:J,data:C,keyword:X,it:G}=A;if(Z(J),G.opts.unevaluated&&B.length&&G.items!==!0)G.items=jw.mergeEvaluated.items(Y,B.length,G.items);let W=Y.name("valid"),F=Y.const("len",iUA._`${C}.length`);B.forEach((U,$)=>{if((0,jw.alwaysValidSchema)(G,U))return;Y.if(iUA._`${F} > ${$}`,()=>A.subschema({keyword:X,schemaProp:$,dataProp:$},W)),A.ok(W)});function Z(U){let{opts:$,errSchemaPath:E}=G,K=B.length,I=K===U.minItems&&(K===U.maxItems||U[Q]===!1);if($.strictTuples&&!I){let V=`"${X}" is ${K}-tuple, but minItems or maxItems/${Q} are not specified or different at path "${E}"`;(0,jw.checkStrictMode)(G,V,$.strictTuples)}}}sUA.validateTuple=nUA;sUA.default=kXB});var oUA=R((aUA)=>{Object.defineProperty(aUA,"__esModule",{value:!0});var vXB=gb(),yXB={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:(A)=>(0,vXB.validateTuple)(A,"items")};aUA.default=yXB});var AEA=R((eUA)=>{Object.defineProperty(eUA,"__esModule",{value:!0});var tUA=GB(),hXB=wB(),xXB=w5(),fXB=yb(),bXB={message:({params:{len:A}})=>tUA.str`must NOT have more than ${A} items`,params:({params:{len:A}})=>tUA._`{limit: ${A}}`},mXB={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:bXB,code(A){let{schema:Q,parentSchema:B,it:Y}=A,{prefixItems:J}=B;if(Y.items=!0,(0,hXB.alwaysValidSchema)(Y,Q))return;if(J)(0,fXB.validateAdditionalItems)(A,J);else A.ok((0,xXB.validateArray)(A))}};eUA.default=mXB});var BEA=R((QEA)=>{Object.defineProperty(QEA,"__esModule",{value:!0});var j5=GB(),Ow=wB(),dXB={message:({params:{min:A,max:Q}})=>Q===void 0?j5.str`must contain at least ${A} valid item(s)`:j5.str`must contain at least ${A} and no more than ${Q} valid item(s)`,params:({params:{min:A,max:Q}})=>Q===void 0?j5._`{minContains: ${A}}`:j5._`{minContains: ${A}, maxContains: ${Q}}`},cXB={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:dXB,code(A){let{gen:Q,schema:B,parentSchema:Y,data:J,it:C}=A,X,G,{minContains:W,maxContains:F}=Y;if(C.opts.next)X=W===void 0?1:W,G=F;else X=1;let Z=Q.const("len",j5._`${J}.length`);if(A.setParams({min:X,max:G}),G===void 0&&X===0){(0,Ow.checkStrictMode)(C,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(G!==void 0&&X>G){(0,Ow.checkStrictMode)(C,'"minContains" > "maxContains" is always invalid'),A.fail();return}if((0,Ow.alwaysValidSchema)(C,B)){let I=j5._`${Z} >= ${X}`;if(G!==void 0)I=j5._`${I} && ${Z} <= ${G}`;A.pass(I);return}C.items=!0;let U=Q.name("valid");if(G===void 0&&X===1)E(U,()=>Q.if(U,()=>Q.break()));else if(X===0){if(Q.let(U,!0),G!==void 0)Q.if(j5._`${J}.length > 0`,$)}else Q.let(U,!1),$();A.result(U,()=>A.reset());function $(){let I=Q.name("_valid"),V=Q.let("count",0);E(I,()=>Q.if(I,()=>K(V)))}function E(I,V){Q.forRange("i",0,Z,(H)=>{A.subschema({keyword:"contains",dataProp:H,dataPropType:Ow.Type.Num,compositeRule:!0},I),V()})}function K(I){if(Q.code(j5._`${I}++`),G===void 0)Q.if(j5._`${I} >= ${X}`,()=>Q.assign(U,!0).break());else if(Q.if(j5._`${I} > ${G}`,()=>Q.assign(U,!1).break()),X===1)Q.assign(U,!0);else Q.if(j5._`${I} >= ${X}`,()=>Q.assign(U,!0))}}};QEA.default=cXB});var WEA=R((CEA)=>{Object.defineProperty(CEA,"__esModule",{value:!0});CEA.validateSchemaDeps=CEA.validatePropertyDeps=CEA.error=void 0;var hb=GB(),pXB=wB(),yD=w5();CEA.error={message:({params:{property:A,depsCount:Q,deps:B}})=>{let Y=Q===1?"property":"properties";return hb.str`must have ${Y} ${B} when property ${A} is present`},params:({params:{property:A,depsCount:Q,deps:B,missingProperty:Y}})=>hb._`{property: ${A}, missingProperty: ${Y}, depsCount: ${Q}, - deps: ${B}}`};var iXB={keyword:"dependencies",type:"object",schemaType:"object",error:CEA.error,code(A){let[Q,B]=nXB(A);YEA(A,Q),JEA(A,B)}};function nXB({schema:A}){let Q={},B={};for(let Y in A){if(Y==="__proto__")continue;let J=Array.isArray(A[Y])?Q:B;J[Y]=A[Y]}return[Q,B]}function YEA(A,Q=A.schema){let{gen:B,data:Y,it:J}=A;if(Object.keys(Q).length===0)return;let C=B.let("missing");for(let X in Q){let G=Q[X];if(G.length===0)continue;let W=(0,yD.propertyInData)(B,Y,X,J.opts.ownProperties);if(A.setParams({property:X,depsCount:G.length,deps:G.join(", ")}),J.allErrors)B.if(W,()=>{for(let F of G)(0,yD.checkReportMissingProp)(A,F)});else B.if(hb._`${W} && (${(0,yD.checkMissingProp)(A,G,C)})`),(0,yD.reportMissingProp)(A,C),B.else()}}CEA.validatePropertyDeps=YEA;function JEA(A,Q=A.schema){let{gen:B,data:Y,keyword:J,it:C}=A,X=B.name("valid");for(let G in Q){if((0,pXB.alwaysValidSchema)(C,Q[G]))continue;B.if((0,yD.propertyInData)(B,Y,G,C.opts.ownProperties),()=>{let W=A.subschema({keyword:J,schemaProp:G},X);A.mergeValidEvaluated(W,X)},()=>B.var(X,!0)),A.ok(X)}}CEA.validateSchemaDeps=JEA;CEA.default=iXB});var $EA=R((ZEA)=>{Object.defineProperty(ZEA,"__esModule",{value:!0});var FEA=GB(),aXB=wB(),oXB={message:"property name must be valid",params:({params:A})=>FEA._`{propertyName: ${A.propertyName}}`},tXB={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:oXB,code(A){let{gen:Q,schema:B,data:Y,it:J}=A;if((0,aXB.alwaysValidSchema)(J,B))return;let C=Q.name("valid");Q.forIn("key",Y,(X)=>{A.setParams({propertyName:X}),A.subschema({keyword:"propertyNames",data:X,dataTypes:["string"],propertyName:X,compositeRule:!0},C),Q.if((0,FEA.not)(C),()=>{if(A.error(!0),!J.allErrors)Q.break()})}),A.ok(C)}};ZEA.default=tXB});var xb=R((UEA)=>{Object.defineProperty(UEA,"__esModule",{value:!0});var Pw=w5(),iC=GB(),A6B=u6(),Tw=wB(),Q6B={message:"must NOT have additional properties",params:({params:A})=>iC._`{additionalProperty: ${A.additionalProperty}}`},B6B={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:Q6B,code(A){let{gen:Q,schema:B,parentSchema:Y,data:J,errsCount:C,it:X}=A;if(!C)throw Error("ajv implementation error");let{allErrors:G,opts:W}=X;if(X.props=!0,W.removeAdditional!=="all"&&(0,Tw.alwaysValidSchema)(X,B))return;let F=(0,Pw.allSchemaProperties)(Y.properties),Z=(0,Pw.allSchemaProperties)(Y.patternProperties);U(),A.ok(iC._`${C} === ${A6B.default.errors}`);function U(){Q.forIn("key",J,(V)=>{if(!F.length&&!Z.length)K(V);else Q.if($(V),()=>K(V))})}function $(V){let H;if(F.length>8){let D=(0,Tw.schemaRefOrVal)(X,Y.properties,"properties");H=(0,Pw.isOwnProperty)(Q,D,V)}else if(F.length)H=(0,iC.or)(...F.map((D)=>iC._`${V} === ${D}`));else H=iC.nil;if(Z.length)H=(0,iC.or)(H,...Z.map((D)=>iC._`${(0,Pw.usePattern)(A,D)}.test(${V})`));return(0,iC.not)(H)}function E(V){Q.code(iC._`delete ${J}[${V}]`)}function K(V){if(W.removeAdditional==="all"||W.removeAdditional&&B===!1){E(V);return}if(B===!1){if(A.setParams({additionalProperty:V}),A.error(),!G)Q.break();return}if(typeof B=="object"&&!(0,Tw.alwaysValidSchema)(X,B)){let H=Q.name("valid");if(W.removeAdditional==="failing")I(V,H,!1),Q.if((0,iC.not)(H),()=>{A.reset(),E(V)});else if(I(V,H),!G)Q.if((0,iC.not)(H),()=>Q.break())}}function I(V,H,D){let L={keyword:"additionalProperties",dataProp:V,dataPropType:Tw.Type.Str};if(D===!1)Object.assign(L,{compositeRule:!0,createErrors:!1,allErrors:!1});A.subschema(L,H)}}};UEA.default=B6B});var IEA=R((VEA)=>{Object.defineProperty(VEA,"__esModule",{value:!0});var J6B=MD(),EEA=w5(),fb=wB(),KEA=xb(),C6B={keyword:"properties",type:"object",schemaType:"object",code(A){let{gen:Q,schema:B,parentSchema:Y,data:J,it:C}=A;if(C.opts.removeAdditional==="all"&&Y.additionalProperties===void 0)KEA.default.code(new J6B.KeywordCxt(C,KEA.default,"additionalProperties"));let X=(0,EEA.allSchemaProperties)(B);for(let U of X)C.definedProperties.add(U);if(C.opts.unevaluated&&X.length&&C.props!==!0)C.props=fb.mergeEvaluated.props(Q,(0,fb.toHash)(X),C.props);let G=X.filter((U)=>!(0,fb.alwaysValidSchema)(C,B[U]));if(G.length===0)return;let W=Q.name("valid");for(let U of G){if(F(U))Z(U);else{if(Q.if((0,EEA.propertyInData)(Q,J,U,C.opts.ownProperties)),Z(U),!C.allErrors)Q.else().var(W,!0);Q.endIf()}A.it.definedProperties.add(U),A.ok(W)}function F(U){return C.opts.useDefaults&&!C.compositeRule&&B[U].default!==void 0}function Z(U){A.subschema({keyword:"properties",schemaProp:U,dataProp:U},W)}}};VEA.default=C6B});var qEA=R((LEA)=>{Object.defineProperty(LEA,"__esModule",{value:!0});var HEA=w5(),Sw=GB(),DEA=wB(),NEA=wB(),G6B={keyword:"patternProperties",type:"object",schemaType:"object",code(A){let{gen:Q,schema:B,data:Y,parentSchema:J,it:C}=A,{opts:X}=C,G=(0,HEA.allSchemaProperties)(B),W=G.filter((I)=>(0,DEA.alwaysValidSchema)(C,B[I]));if(G.length===0||W.length===G.length&&(!C.opts.unevaluated||C.props===!0))return;let F=X.strictSchema&&!X.allowMatchingProperties&&J.properties,Z=Q.name("valid");if(C.props!==!0&&!(C.props instanceof Sw.Name))C.props=(0,NEA.evaluatedPropsToName)(Q,C.props);let{props:U}=C;$();function $(){for(let I of G){if(F)E(I);if(C.allErrors)K(I);else Q.var(Z,!0),K(I),Q.if(Z)}}function E(I){for(let V in F)if(new RegExp(I).test(V))(0,DEA.checkStrictMode)(C,`property ${V} matches pattern ${I} (use allowMatchingProperties)`)}function K(I){Q.forIn("key",Y,(V)=>{Q.if(Sw._`${(0,HEA.usePattern)(A,I)}.test(${V})`,()=>{let H=W.includes(I);if(!H)A.subschema({keyword:"patternProperties",schemaProp:I,dataProp:V,dataPropType:NEA.Type.Str},Z);if(C.opts.unevaluated&&U!==!0)Q.assign(Sw._`${U}[${V}]`,!0);else if(!H&&!C.allErrors)Q.if((0,Sw.not)(Z),()=>Q.break())})})}}};LEA.default=G6B});var zEA=R((MEA)=>{Object.defineProperty(MEA,"__esModule",{value:!0});var F6B=wB(),Z6B={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(A){let{gen:Q,schema:B,it:Y}=A;if((0,F6B.alwaysValidSchema)(Y,B)){A.fail();return}let J=Q.name("valid");A.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},J),A.failResult(J,()=>A.reset(),()=>A.error())},error:{message:"must NOT be valid"}};MEA.default=Z6B});var wEA=R((REA)=>{Object.defineProperty(REA,"__esModule",{value:!0});var U6B=w5(),E6B={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:U6B.validateUnion,error:{message:"must match a schema in anyOf"}};REA.default=E6B});var OEA=R((jEA)=>{Object.defineProperty(jEA,"__esModule",{value:!0});var kw=GB(),V6B=wB(),I6B={message:"must match exactly one schema in oneOf",params:({params:A})=>kw._`{passingSchemas: ${A.passing}}`},H6B={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:I6B,code(A){let{gen:Q,schema:B,parentSchema:Y,it:J}=A;if(!Array.isArray(B))throw Error("ajv implementation error");if(J.opts.discriminator&&Y.discriminator)return;let C=B,X=Q.let("valid",!1),G=Q.let("passing",null),W=Q.name("_valid");A.setParams({passing:G}),Q.block(F),A.result(X,()=>A.reset(),()=>A.error(!0));function F(){C.forEach((Z,U)=>{let $;if((0,V6B.alwaysValidSchema)(J,Z))Q.var(W,!0);else $=A.subschema({keyword:"oneOf",schemaProp:U,compositeRule:!0},W);if(U>0)Q.if(kw._`${W} && ${X}`).assign(X,!1).assign(G,kw._`[${G}, ${U}]`).else();Q.if(W,()=>{if(Q.assign(X,!0),Q.assign(G,U),$)A.mergeEvaluated($,kw.Name)})})}}};jEA.default=H6B});var TEA=R((PEA)=>{Object.defineProperty(PEA,"__esModule",{value:!0});var N6B=wB(),L6B={keyword:"allOf",schemaType:"array",code(A){let{gen:Q,schema:B,it:Y}=A;if(!Array.isArray(B))throw Error("ajv implementation error");let J=Q.name("valid");B.forEach((C,X)=>{if((0,N6B.alwaysValidSchema)(Y,C))return;let G=A.subschema({keyword:"allOf",schemaProp:X},J);A.ok(J),A.mergeEvaluated(G)})}};PEA.default=L6B});var vEA=R((_EA)=>{Object.defineProperty(_EA,"__esModule",{value:!0});var _w=GB(),kEA=wB(),M6B={message:({params:A})=>_w.str`must match "${A.ifClause}" schema`,params:({params:A})=>_w._`{failingKeyword: ${A.ifClause}}`},z6B={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:M6B,code(A){let{gen:Q,parentSchema:B,it:Y}=A;if(B.then===void 0&&B.else===void 0)(0,kEA.checkStrictMode)(Y,'"if" without "then" and "else" is ignored');let J=SEA(Y,"then"),C=SEA(Y,"else");if(!J&&!C)return;let X=Q.let("valid",!0),G=Q.name("_valid");if(W(),A.reset(),J&&C){let Z=Q.let("ifClause");A.setParams({ifClause:Z}),Q.if(G,F("then",Z),F("else",Z))}else if(J)Q.if(G,F("then"));else Q.if((0,_w.not)(G),F("else"));A.pass(X,()=>A.error(!0));function W(){let Z=A.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},G);A.mergeEvaluated(Z)}function F(Z,U){return()=>{let $=A.subschema({keyword:Z},G);if(Q.assign(X,G),A.mergeValidEvaluated($,X),U)Q.assign(U,_w._`${Z}`);else A.setParams({ifClause:Z})}}}};function SEA(A,Q){let B=A.schema[Q];return B!==void 0&&!(0,kEA.alwaysValidSchema)(A,B)}_EA.default=z6B});var gEA=R((yEA)=>{Object.defineProperty(yEA,"__esModule",{value:!0});var w6B=wB(),j6B={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:A,parentSchema:Q,it:B}){if(Q.if===void 0)(0,w6B.checkStrictMode)(B,`"${A}" without "if" is ignored`)}};yEA.default=j6B});var xEA=R((hEA)=>{Object.defineProperty(hEA,"__esModule",{value:!0});var P6B=yb(),T6B=oUA(),S6B=gb(),k6B=AEA(),_6B=BEA(),v6B=WEA(),y6B=$EA(),g6B=xb(),h6B=IEA(),x6B=qEA(),f6B=zEA(),b6B=wEA(),m6B=OEA(),u6B=TEA(),d6B=vEA(),c6B=gEA();function l6B(A=!1){let Q=[f6B.default,b6B.default,m6B.default,u6B.default,d6B.default,c6B.default,y6B.default,g6B.default,v6B.default,h6B.default,x6B.default];if(A)Q.push(T6B.default,k6B.default);else Q.push(P6B.default,S6B.default);return Q.push(_6B.default),Q}hEA.default=l6B});var bEA=R((fEA)=>{Object.defineProperty(fEA,"__esModule",{value:!0});var FY=GB(),i6B={message:({schemaCode:A})=>FY.str`must match format "${A}"`,params:({schemaCode:A})=>FY._`{format: ${A}}`},n6B={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:i6B,code(A,Q){let{gen:B,data:Y,$data:J,schema:C,schemaCode:X,it:G}=A,{opts:W,errSchemaPath:F,schemaEnv:Z,self:U}=G;if(!W.validateFormats)return;if(J)$();else E();function $(){let K=B.scopeValue("formats",{ref:U.formats,code:W.code.formats}),I=B.const("fDef",FY._`${K}[${X}]`),V=B.let("fType"),H=B.let("format");B.if(FY._`typeof ${I} == "object" && !(${I} instanceof RegExp)`,()=>B.assign(V,FY._`${I}.type || "string"`).assign(H,FY._`${I}.validate`),()=>B.assign(V,FY._`"string"`).assign(H,I)),A.fail$data((0,FY.or)(D(),L()));function D(){if(W.strictSchema===!1)return FY.nil;return FY._`${X} && !${H}`}function L(){let z=Z.$async?FY._`(${I}.async ? await ${H}(${Y}) : ${H}(${Y}))`:FY._`${H}(${Y})`,M=FY._`(typeof ${H} == "function" ? ${z} : ${H}.test(${Y}))`;return FY._`${H} && ${H} !== true && ${V} === ${Q} && !${M}`}}function E(){let K=U.formats[C];if(!K){D();return}if(K===!0)return;let[I,V,H]=L(K);if(I===Q)A.pass(z());function D(){if(W.strictSchema===!1){U.logger.warn(M());return}throw Error(M());function M(){return`unknown format "${C}" ignored in schema at path "${F}"`}}function L(M){let N=M instanceof RegExp?(0,FY.regexpCode)(M):W.code.formats?FY._`${W.code.formats}${(0,FY.getProperty)(C)}`:void 0,q=B.scopeValue("formats",{key:C,ref:M,code:N});if(typeof M=="object"&&!(M instanceof RegExp))return[M.type||"string",M.validate,FY._`${q}.validate`];return["string",M,q]}function z(){if(typeof K=="object"&&!(K instanceof RegExp)&&K.async){if(!Z.$async)throw Error("async format in sync schema");return FY._`await ${H}(${Y})`}return typeof V=="function"?FY._`${H}(${Y})`:FY._`${H}.test(${Y})`}}}};fEA.default=n6B});var uEA=R((mEA)=>{Object.defineProperty(mEA,"__esModule",{value:!0});var r6B=bEA(),a6B=[r6B.default];mEA.default=a6B});var lEA=R((dEA)=>{Object.defineProperty(dEA,"__esModule",{value:!0});dEA.contentVocabulary=dEA.metadataVocabulary=void 0;dEA.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];dEA.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var nEA=R((iEA)=>{Object.defineProperty(iEA,"__esModule",{value:!0});var e6B=VUA(),AGB=dUA(),QGB=xEA(),BGB=uEA(),pEA=lEA(),YGB=[e6B.default,AGB.default,(0,QGB.default)(),BGB.default,pEA.metadataVocabulary,pEA.contentVocabulary];iEA.default=YGB});var oEA=R((rEA)=>{Object.defineProperty(rEA,"__esModule",{value:!0});rEA.DiscrError=void 0;var sEA;(function(A){A.Tag="tag",A.Mapping="mapping"})(sEA||(rEA.DiscrError=sEA={}))});var AKA=R((eEA)=>{Object.defineProperty(eEA,"__esModule",{value:!0});var HE=GB(),bb=oEA(),tEA=Kw(),CGB=zD(),XGB=wB(),GGB={message:({params:{discrError:A,tagName:Q}})=>A===bb.DiscrError.Tag?`tag "${Q}" must be string`:`value of tag "${Q}" must be in oneOf`,params:({params:{discrError:A,tag:Q,tagName:B}})=>HE._`{error: ${A}, tag: ${B}, tagValue: ${Q}}`},WGB={keyword:"discriminator",type:"object",schemaType:"object",error:GGB,code(A){let{gen:Q,data:B,schema:Y,parentSchema:J,it:C}=A,{oneOf:X}=J;if(!C.opts.discriminator)throw Error("discriminator: requires discriminator option");let G=Y.propertyName;if(typeof G!="string")throw Error("discriminator: requires propertyName");if(Y.mapping)throw Error("discriminator: mapping is not supported");if(!X)throw Error("discriminator: requires oneOf keyword");let W=Q.let("valid",!1),F=Q.const("tag",HE._`${B}${(0,HE.getProperty)(G)}`);Q.if(HE._`typeof ${F} == "string"`,()=>Z(),()=>A.error(!1,{discrError:bb.DiscrError.Tag,tag:F,tagName:G})),A.ok(W);function Z(){let E=$();Q.if(!1);for(let K in E)Q.elseIf(HE._`${F} === ${K}`),Q.assign(W,U(E[K]));Q.else(),A.error(!1,{discrError:bb.DiscrError.Mapping,tag:F,tagName:G}),Q.endIf()}function U(E){let K=Q.name("valid"),I=A.subschema({keyword:"oneOf",schemaProp:E},K);return A.mergeEvaluated(I,HE.Name),K}function $(){var E;let K={},I=H(J),V=!0;for(let z=0;z{ZGB.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var YKA=R((m9,mb)=>{Object.defineProperty(m9,"__esModule",{value:!0});m9.MissingRefError=m9.ValidationError=m9.CodeGen=m9.Name=m9.nil=m9.stringify=m9.str=m9._=m9.KeywordCxt=m9.Ajv=void 0;var $GB=CUA(),UGB=nEA(),EGB=AKA(),BKA=QKA(),KGB=["/properties"],vw="http://json-schema.org/draft-07/schema";class gD extends $GB.default{_addVocabularies(){if(super._addVocabularies(),UGB.default.forEach((A)=>this.addVocabulary(A)),this.opts.discriminator)this.addKeyword(EGB.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let A=this.opts.$data?this.$dataMetaSchema(BKA,KGB):BKA;this.addMetaSchema(A,vw,!1),this.refs["http://json-schema.org/schema"]=vw}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(vw)?vw:void 0)}}m9.Ajv=gD;mb.exports=m9=gD;mb.exports.Ajv=gD;Object.defineProperty(m9,"__esModule",{value:!0});m9.default=gD;var VGB=MD();Object.defineProperty(m9,"KeywordCxt",{enumerable:!0,get:function(){return VGB.KeywordCxt}});var DE=GB();Object.defineProperty(m9,"_",{enumerable:!0,get:function(){return DE._}});Object.defineProperty(m9,"str",{enumerable:!0,get:function(){return DE.str}});Object.defineProperty(m9,"stringify",{enumerable:!0,get:function(){return DE.stringify}});Object.defineProperty(m9,"nil",{enumerable:!0,get:function(){return DE.nil}});Object.defineProperty(m9,"Name",{enumerable:!0,get:function(){return DE.Name}});Object.defineProperty(m9,"CodeGen",{enumerable:!0,get:function(){return DE.CodeGen}});var IGB=Uw();Object.defineProperty(m9,"ValidationError",{enumerable:!0,get:function(){return IGB.default}});var HGB=zD();Object.defineProperty(m9,"MissingRefError",{enumerable:!0,get:function(){return HGB.default}})});var vKA=R((_KA)=>{Object.defineProperty(_KA,"__esModule",{value:!0});_KA.fromEnv=OGB;var kKA="HYTOPIA_API_KEY";function jGB(A){let Q=process.env[kKA];if(!Q)throw Error(`Missing environment variable ${A}`);return Q}function OGB(){return{apiKey:jGB(kKA)}}});var yKA=R((Pm)=>{Object.defineProperty(Pm,"__esModule",{value:!0});Pm.fromEnv=void 0;var TGB=vKA();Object.defineProperty(Pm,"fromEnv",{enumerable:!0,get:function(){return TGB.fromEnv}})});var hKA=R((NE)=>{var Tm=NE&&NE.__importDefault||function(A){return A&&A.__esModule?A:{default:A}};Object.defineProperty(NE,"__esModule",{value:!0});NE.LocalBackend=void 0;var Sm=Tm(u("fs")),kGB=Tm(u("path")),km=Tm(u("util")),_GB=km.default.promisify(Sm.default.mkdir),vGB=km.default.promisify(Sm.default.readFile),yGB=km.default.promisify(Sm.default.writeFile);class gKA{dataDir;constructor(A){this.dataDir=A}calculatePath(A,Q){return`${this.dataDir}/${A}/${Q}.json`}async load(A,Q){try{let B=await vGB(this.calculatePath(A,Q),"utf8"),Y=JSON.parse(B);if(!Y.__version)Y.__version=1;return Y}catch(B){return{__version:1}}}async upload(A,Q){await _GB(kGB.default.join(this.dataDir,A),{recursive:!0});var B=[];for(var[Y,J]of Object.entries(Q))B.push(yGB(this.calculatePath(A,Y),JSON.stringify(J)));await Promise.all(B)}}NE.LocalBackend=gKA});var _m=R((fKA)=>{Object.defineProperty(fKA,"__esModule",{value:!0});fKA.proxifyObject=xKA;function xKA(A,Q){for(let[B,Y]of Object.entries(A))if(Y instanceof Object)A[B]=xKA(Y,Q);return new Proxy(A,Q)}});var uKA=R((mKA)=>{Object.defineProperty(mKA,"__esModule",{value:!0});mKA.load=hGB;var bKA=_m();async function hGB(A){let Q=await this.backend.load(this.gameId,A),B=this.saveStatesManager,Y={set(C,X,G){if(typeof G==="function")return!1;if(G instanceof Object)C[X]=(0,bKA.proxifyObject)(G,Y);else C[X]=G;if(X!=="__version")B.incrementVersion(A);return!0},deleteProperty(C,X){if(X in C)delete C[X];return B.incrementVersion(A),!0}},J=(0,bKA.proxifyObject)(Q,Y);return B.setReference(A,J),J}});var iKA=R((lKA)=>{Object.defineProperty(lKA,"__esModule",{value:!0});lKA.SaveStatesManager=void 0;var dKA=_m();class cKA{_stateReferences={};_pendingSaveQueue={};_hasQueuedSaves=!1;setReference(A,Q){this._stateReferences[A]=Q}getReference(A){return this._stateReferences[A]??null}dropReference(A){if(!this._stateReferences)return;delete this._stateReferences[A]}incrementVersion(A){if(!this._stateReferences[A])return;this._hasQueuedSaves=!0;let Q=this._stateReferences[A];Q.__version+=1,this._pendingSaveQueue[A]=Q}getPendingSaves(){if(!this._hasQueuedSaves)return null;let A=JSON.parse(JSON.stringify(this._pendingSaveQueue));return this._pendingSaveQueue={},this._hasQueuedSaves=!1,A}load(A,Q){let B=this.getReference(A);if(B)return{value:B.value};let Y=this,J={set(X,G,W){if(typeof W==="function")return!1;if(W instanceof Object)X[G]=(0,dKA.proxifyObject)(W,J);else X[G]=W;if(G!=="__version")Y.incrementVersion(A);return!0},deleteProperty(X,G){if(G in X)delete X[G];return Y.incrementVersion(A),!0}},C=(0,dKA.proxifyObject)(Q.value,J);return Y.setReference(A,C),{error:void 0,value:C}}}lKA.SaveStatesManager=cKA});var sKA=R((nKA)=>{Object.defineProperty(nKA,"__esModule",{value:!0});nKA.flush=fGB;async function fGB(){let A=this.saveStatesManager.getPendingSaves();if(!A)return;await this.backend.upload(this.gameId,A)}});var tKA=R((aKA)=>{Object.defineProperty(aKA,"__esModule",{value:!0});aKA.RemoteBackend=void 0;class rKA{baseUrl;credentials;constructor(A,Q,B){this.baseUrl=A,this.credentials=Q}async load(A,Q){while(!0){try{let B=await fetch(`${this.baseUrl}/play/kv/get/${A}/${Q}`,{headers:{"X-Api-Key":this.credentials.apiKey}}),Y=await B.json();if(B.ok){if(!Y.value.__version)Y.value.__version=1;return Y.value}if(Y&&Y.error){if(Y.error.code==="keyNotFound")return{__version:1};console.warn(`[SaveStates] Got an error loading remote state for key ${Q}: ${Y.error.code}, retrying in 1s...`),await new Promise((J)=>setTimeout(J,1000));continue}throw Error("Unexpected error body")}catch(B){console.warn(`[SaveStates] Could not load remote state for key ${Q} due to a connection issue, retrying in 1s...`)}await new Promise((B)=>setTimeout(B,1000))}}async upload(A,Q){while(!0){try{let B=await fetch(`${this.baseUrl}/play/kv/setbulk/${A}`,{method:"POST",headers:{"Content-Type":"application/json","X-Api-Key":this.credentials.apiKey},body:JSON.stringify(Q)}),Y=await B.json();if(B.ok)return;if(Y&&Y.error){console.warn(`[SaveStates] Could not upload state to remote due to an error (code '${Y.error.code}'), retrying in 1s...`),await new Promise((J)=>setTimeout(J,1000));continue}throw Error("Unexpected error body")}catch(B){console.warn("[SaveStates] Could not upload state to remote due to a connection issue, retrying in 1s...")}await new Promise((B)=>setTimeout(B,1000))}}}aKA.RemoteBackend=rKA});var AVA=R((eKA)=>{Object.defineProperty(eKA,"__esModule",{value:!0});eKA.unload=mGB;async function mGB(A){this.saveStatesManager.dropReference(A),await this.flush()}});var JVA=R((BVA)=>{Object.defineProperty(BVA,"__esModule",{value:!0});BVA.SaveStatesClient=void 0;var dGB=yKA(),cGB=hKA(),lGB=uKA(),pGB=iKA(),iGB=sKA(),nGB=tKA(),sGB=AVA();function rGB(A){if(A)return A;try{let Q=(0,dGB.fromEnv)(),B=process.env.HYTOPIA_PERSUADE_CREATIVE_GATEWAY_BASE_URL??"https://prod.persuade-creative.hytopia.com",Y=process.env.HYTOPIA_GAME_ID;if(!Y)throw Error("Missing HYTOPIA_GAME_ID environment variable");return new nGB.RemoteBackend(B,Q,Y)}catch{return console.warn("[SaveStates] Couldn't load credentials from environment variables, defaulting to local backend"),new cGB.LocalBackend("dev")}}class QVA{backend;gameId;saveStatesManager;constructor(A){this.backend=rGB(A?.backend),this.gameId=A?.gameId??process.env.HYTOPIA_GAME_ID??"persistence",this.saveStatesManager=new pGB.SaveStatesManager;async function Q(B){while(!0)await B.flush(),await new Promise((Y)=>{setTimeout(Y,1000).unref()})}Q(this)}load=lGB.load;unload=sGB.unload;flush=iGB.flush}BVA.SaveStatesClient=QVA});var p6=R((uDY,GVA)=>{var CVA=["nodebuffer","arraybuffer","fragments"],XVA=typeof Blob<"u";if(XVA)CVA.push("blob");GVA.exports={BINARY_TYPES:CVA,EMPTY_BUFFER:Buffer.alloc(0),GUID:"258EAFA5-E914-47DA-95CA-C5AB0DC85B11",hasBlob:XVA,kForOnEventAttribute:Symbol("kIsForOnEventAttribute"),kListener:Symbol("kListener"),kStatusCode:Symbol("status-code"),kWebSocket:Symbol("websocket"),NOOP:()=>{}}});var mD=R((dDY,fw)=>{var{EMPTY_BUFFER:aGB}=p6(),vm=Buffer[Symbol.species];function oGB(A,Q){if(A.length===0)return aGB;if(A.length===1)return A[0];let B=Buffer.allocUnsafe(Q),Y=0;for(let J=0;J{throw new Error("Cannot require module "+"bufferutil");})();fw.exports.mask=function(Q,B,Y,J,C){if(C<48)WVA(Q,B,Y,J,C);else A.mask(Q,B,Y,J,C)},fw.exports.unmask=function(Q,B){if(Q.length<32)FVA(Q,B);else A.unmask(Q,B)}}catch(A){}});var EVA=R((cDY,UVA)=>{var ZVA=Symbol("kDone"),gm=Symbol("kRun");class $VA{constructor(A){this[ZVA]=()=>{this.pending--,this[gm]()},this.concurrency=A||1/0,this.jobs=[],this.pending=0}add(A){this.jobs.push(A),this[gm]()}[gm](){if(this.pending===this.concurrency)return;if(this.jobs.length){let A=this.jobs.shift();this.pending++,A(this[ZVA])}}}UVA.exports=$VA});var dD=R((lDY,DVA)=>{var uD=u("zlib"),KVA=mD(),eGB=EVA(),{kStatusCode:VVA}=p6(),A7B=Buffer[Symbol.species],Q7B=Buffer.from([0,0,255,255]),mw=Symbol("permessage-deflate"),i6=Symbol("total-length"),LE=Symbol("callback"),c7=Symbol("buffers"),qE=Symbol("error"),bw;class IVA{constructor(A,Q,B){if(this._maxPayload=B|0,this._options=A||{},this._threshold=this._options.threshold!==void 0?this._options.threshold:1024,this._isServer=!!Q,this._deflate=null,this._inflate=null,this.params=null,!bw){let Y=this._options.concurrencyLimit!==void 0?this._options.concurrencyLimit:10;bw=new eGB(Y)}}static get extensionName(){return"permessage-deflate"}offer(){let A={};if(this._options.serverNoContextTakeover)A.server_no_context_takeover=!0;if(this._options.clientNoContextTakeover)A.client_no_context_takeover=!0;if(this._options.serverMaxWindowBits)A.server_max_window_bits=this._options.serverMaxWindowBits;if(this._options.clientMaxWindowBits)A.client_max_window_bits=this._options.clientMaxWindowBits;else if(this._options.clientMaxWindowBits==null)A.client_max_window_bits=!0;return A}accept(A){return A=this.normalizeParams(A),this.params=this._isServer?this.acceptAsServer(A):this.acceptAsClient(A),this.params}cleanup(){if(this._inflate)this._inflate.close(),this._inflate=null;if(this._deflate){let A=this._deflate[LE];if(this._deflate.close(),this._deflate=null,A)A(Error("The deflate stream was closed while data was being processed"))}}acceptAsServer(A){let Q=this._options,B=A.find((Y)=>{if(Q.serverNoContextTakeover===!1&&Y.server_no_context_takeover||Y.server_max_window_bits&&(Q.serverMaxWindowBits===!1||typeof Q.serverMaxWindowBits==="number"&&Q.serverMaxWindowBits>Y.server_max_window_bits)||typeof Q.clientMaxWindowBits==="number"&&!Y.client_max_window_bits)return!1;return!0});if(!B)throw Error("None of the extension offers can be accepted");if(Q.serverNoContextTakeover)B.server_no_context_takeover=!0;if(Q.clientNoContextTakeover)B.client_no_context_takeover=!0;if(typeof Q.serverMaxWindowBits==="number")B.server_max_window_bits=Q.serverMaxWindowBits;if(typeof Q.clientMaxWindowBits==="number")B.client_max_window_bits=Q.clientMaxWindowBits;else if(B.client_max_window_bits===!0||Q.clientMaxWindowBits===!1)delete B.client_max_window_bits;return B}acceptAsClient(A){let Q=A[0];if(this._options.clientNoContextTakeover===!1&&Q.client_no_context_takeover)throw Error('Unexpected parameter "client_no_context_takeover"');if(!Q.client_max_window_bits){if(typeof this._options.clientMaxWindowBits==="number")Q.client_max_window_bits=this._options.clientMaxWindowBits}else if(this._options.clientMaxWindowBits===!1||typeof this._options.clientMaxWindowBits==="number"&&Q.client_max_window_bits>this._options.clientMaxWindowBits)throw Error('Unexpected or invalid parameter "client_max_window_bits"');return Q}normalizeParams(A){return A.forEach((Q)=>{Object.keys(Q).forEach((B)=>{let Y=Q[B];if(Y.length>1)throw Error(`Parameter "${B}" must have only a single value`);if(Y=Y[0],B==="client_max_window_bits"){if(Y!==!0){let J=+Y;if(!Number.isInteger(J)||J<8||J>15)throw TypeError(`Invalid value for parameter "${B}": ${Y}`);Y=J}else if(!this._isServer)throw TypeError(`Invalid value for parameter "${B}": ${Y}`)}else if(B==="server_max_window_bits"){let J=+Y;if(!Number.isInteger(J)||J<8||J>15)throw TypeError(`Invalid value for parameter "${B}": ${Y}`);Y=J}else if(B==="client_no_context_takeover"||B==="server_no_context_takeover"){if(Y!==!0)throw TypeError(`Invalid value for parameter "${B}": ${Y}`)}else throw Error(`Unknown parameter "${B}"`);Q[B]=Y})}),A}decompress(A,Q,B){bw.add((Y)=>{this._decompress(A,Q,(J,C)=>{Y(),B(J,C)})})}compress(A,Q,B){bw.add((Y)=>{this._compress(A,Q,(J,C)=>{Y(),B(J,C)})})}_decompress(A,Q,B){let Y=this._isServer?"client":"server";if(!this._inflate){let J=`${Y}_max_window_bits`,C=typeof this.params[J]!=="number"?uD.Z_DEFAULT_WINDOWBITS:this.params[J];this._inflate=uD.createInflateRaw({...this._options.zlibInflateOptions,windowBits:C}),this._inflate[mw]=this,this._inflate[i6]=0,this._inflate[c7]=[],this._inflate.on("error",Y7B),this._inflate.on("data",HVA)}if(this._inflate[LE]=B,this._inflate.write(A),Q)this._inflate.write(Q7B);this._inflate.flush(()=>{let J=this._inflate[qE];if(J){this._inflate.close(),this._inflate=null,B(J);return}let C=KVA.concat(this._inflate[c7],this._inflate[i6]);if(this._inflate._readableState.endEmitted)this._inflate.close(),this._inflate=null;else if(this._inflate[i6]=0,this._inflate[c7]=[],Q&&this.params[`${Y}_no_context_takeover`])this._inflate.reset();B(null,C)})}_compress(A,Q,B){let Y=this._isServer?"server":"client";if(!this._deflate){let J=`${Y}_max_window_bits`,C=typeof this.params[J]!=="number"?uD.Z_DEFAULT_WINDOWBITS:this.params[J];this._deflate=uD.createDeflateRaw({...this._options.zlibDeflateOptions,windowBits:C}),this._deflate[i6]=0,this._deflate[c7]=[],this._deflate.on("data",B7B)}this._deflate[LE]=B,this._deflate.write(A),this._deflate.flush(uD.Z_SYNC_FLUSH,()=>{if(!this._deflate)return;let J=KVA.concat(this._deflate[c7],this._deflate[i6]);if(Q)J=new A7B(J.buffer,J.byteOffset,J.length-4);if(this._deflate[LE]=null,this._deflate[i6]=0,this._deflate[c7]=[],Q&&this.params[`${Y}_no_context_takeover`])this._deflate.reset();B(null,J)})}}DVA.exports=IVA;function B7B(A){this[c7].push(A),this[i6]+=A.length}function HVA(A){if(this[i6]+=A.length,this[mw]._maxPayload<1||this[i6]<=this[mw]._maxPayload){this[c7].push(A);return}this[qE]=RangeError("Max payload size exceeded"),this[qE].code="WS_ERR_UNSUPPORTED_MESSAGE_LENGTH",this[qE][VVA]=1009,this.removeListener("data",HVA),this.reset()}function Y7B(A){if(this[mw]._inflate=null,this[qE]){this[LE](this[qE]);return}A[VVA]=1007,this[LE](A)}});var ME=R((pDY,uw)=>{var{isUtf8:NVA}=u("buffer"),{hasBlob:J7B}=p6(),C7B=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,1,1,1,0,0,1,1,0,1,1,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,0,1,0];function X7B(A){return A>=1000&&A<=1014&&A!==1004&&A!==1005&&A!==1006||A>=3000&&A<=4999}function hm(A){let Q=A.length,B=0;while(B=Q||(A[B+1]&192)!==128||(A[B+2]&192)!==128||A[B]===224&&(A[B+1]&224)===128||A[B]===237&&(A[B+1]&224)===160)return!1;B+=3}else if((A[B]&248)===240){if(B+3>=Q||(A[B+1]&192)!==128||(A[B+2]&192)!==128||(A[B+3]&192)!==128||A[B]===240&&(A[B+1]&240)===128||A[B]===244&&A[B+1]>143||A[B]>244)return!1;B+=4}else return!1;return!0}function G7B(A){return J7B&&typeof A==="object"&&typeof A.arrayBuffer==="function"&&typeof A.type==="string"&&typeof A.stream==="function"&&(A[Symbol.toStringTag]==="Blob"||A[Symbol.toStringTag]==="File")}uw.exports={isBlob:G7B,isValidStatusCode:X7B,isValidUTF8:hm,tokenChars:C7B};if(NVA)uw.exports.isValidUTF8=function(A){return A.length<24?hm(A):NVA(A)};else if(!process.env.WS_NO_UTF_8_VALIDATE)try{let A=(()=>{throw new Error("Cannot require module "+"utf-8-validate");})();uw.exports.isValidUTF8=function(Q){return Q.length<32?hm(Q):A(Q)}}catch(A){}});var fm=R((iDY,RVA)=>{var{Writable:W7B}=u("stream"),LVA=dD(),{BINARY_TYPES:F7B,EMPTY_BUFFER:qVA,kStatusCode:Z7B,kWebSocket:$7B}=p6(),{concat:xm,toArrayBuffer:U7B,unmask:E7B}=mD(),{isValidStatusCode:K7B,isValidUTF8:MVA}=ME(),dw=Buffer[Symbol.species];class zVA extends W7B{constructor(A={}){super();this._allowSynchronousEvents=A.allowSynchronousEvents!==void 0?A.allowSynchronousEvents:!0,this._binaryType=A.binaryType||F7B[0],this._extensions=A.extensions||{},this._isServer=!!A.isServer,this._maxPayload=A.maxPayload|0,this._skipUTF8Validation=!!A.skipUTF8Validation,this[$7B]=void 0,this._bufferedBytes=0,this._buffers=[],this._compressed=!1,this._payloadLength=0,this._mask=void 0,this._fragmented=0,this._masked=!1,this._fin=!1,this._opcode=0,this._totalPayloadLength=0,this._messageLength=0,this._fragments=[],this._errored=!1,this._loop=!1,this._state=0}_write(A,Q,B){if(this._opcode===8&&this._state==0)return B();this._bufferedBytes+=A.length,this._buffers.push(A),this.startLoop(B)}consume(A){if(this._bufferedBytes-=A,A===this._buffers[0].length)return this._buffers.shift();if(A=B.length)Q.set(this._buffers.shift(),Y);else Q.set(new Uint8Array(B.buffer,B.byteOffset,A),Y),this._buffers[0]=new dw(B.buffer,B.byteOffset+A,B.length-A);A-=B.length}while(A>0);return Q}startLoop(A){this._loop=!0;do switch(this._state){case 0:this.getInfo(A);break;case 1:this.getPayloadLength16(A);break;case 2:this.getPayloadLength64(A);break;case 3:this.getMask();break;case 4:this.getData(A);break;case 5:case 6:this._loop=!1;return}while(this._loop);if(!this._errored)A()}getInfo(A){if(this._bufferedBytes<2){this._loop=!1;return}let Q=this.consume(2);if((Q[0]&48)!==0){let Y=this.createError(RangeError,"RSV2 and RSV3 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_2_3");A(Y);return}let B=(Q[0]&64)===64;if(B&&!this._extensions[LVA.extensionName]){let Y=this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");A(Y);return}if(this._fin=(Q[0]&128)===128,this._opcode=Q[0]&15,this._payloadLength=Q[1]&127,this._opcode===0){if(B){let Y=this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");A(Y);return}if(!this._fragmented){let Y=this.createError(RangeError,"invalid opcode 0",!0,1002,"WS_ERR_INVALID_OPCODE");A(Y);return}this._opcode=this._fragmented}else if(this._opcode===1||this._opcode===2){if(this._fragmented){let Y=this.createError(RangeError,`invalid opcode ${this._opcode}`,!0,1002,"WS_ERR_INVALID_OPCODE");A(Y);return}this._compressed=B}else if(this._opcode>7&&this._opcode<11){if(!this._fin){let Y=this.createError(RangeError,"FIN must be set",!0,1002,"WS_ERR_EXPECTED_FIN");A(Y);return}if(B){let Y=this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");A(Y);return}if(this._payloadLength>125||this._opcode===8&&this._payloadLength===1){let Y=this.createError(RangeError,`invalid payload length ${this._payloadLength}`,!0,1002,"WS_ERR_INVALID_CONTROL_PAYLOAD_LENGTH");A(Y);return}}else{let Y=this.createError(RangeError,`invalid opcode ${this._opcode}`,!0,1002,"WS_ERR_INVALID_OPCODE");A(Y);return}if(!this._fin&&!this._fragmented)this._fragmented=this._opcode;if(this._masked=(Q[1]&128)===128,this._isServer){if(!this._masked){let Y=this.createError(RangeError,"MASK must be set",!0,1002,"WS_ERR_EXPECTED_MASK");A(Y);return}}else if(this._masked){let Y=this.createError(RangeError,"MASK must be clear",!0,1002,"WS_ERR_UNEXPECTED_MASK");A(Y);return}if(this._payloadLength===126)this._state=1;else if(this._payloadLength===127)this._state=2;else this.haveLength(A)}getPayloadLength16(A){if(this._bufferedBytes<2){this._loop=!1;return}this._payloadLength=this.consume(2).readUInt16BE(0),this.haveLength(A)}getPayloadLength64(A){if(this._bufferedBytes<8){this._loop=!1;return}let Q=this.consume(8),B=Q.readUInt32BE(0);if(B>Math.pow(2,21)-1){let Y=this.createError(RangeError,"Unsupported WebSocket frame: payload length > 2^53 - 1",!1,1009,"WS_ERR_UNSUPPORTED_DATA_PAYLOAD_LENGTH");A(Y);return}this._payloadLength=B*Math.pow(2,32)+Q.readUInt32BE(4),this.haveLength(A)}haveLength(A){if(this._payloadLength&&this._opcode<8){if(this._totalPayloadLength+=this._payloadLength,this._totalPayloadLength>this._maxPayload&&this._maxPayload>0){let Q=this.createError(RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH");A(Q);return}}if(this._masked)this._state=3;else this._state=4}getMask(){if(this._bufferedBytes<4){this._loop=!1;return}this._mask=this.consume(4),this._state=4}getData(A){let Q=qVA;if(this._payloadLength){if(this._bufferedBytes7){this.controlMessage(Q,A);return}if(this._compressed){this._state=5,this.decompress(Q,A);return}if(Q.length)this._messageLength=this._totalPayloadLength,this._fragments.push(Q);this.dataMessage(A)}decompress(A,Q){this._extensions[LVA.extensionName].decompress(A,this._fin,(Y,J)=>{if(Y)return Q(Y);if(J.length){if(this._messageLength+=J.length,this._messageLength>this._maxPayload&&this._maxPayload>0){let C=this.createError(RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH");Q(C);return}this._fragments.push(J)}if(this.dataMessage(Q),this._state===0)this.startLoop(Q)})}dataMessage(A){if(!this._fin){this._state=0;return}let Q=this._messageLength,B=this._fragments;if(this._totalPayloadLength=0,this._messageLength=0,this._fragmented=0,this._fragments=[],this._opcode===2){let Y;if(this._binaryType==="nodebuffer")Y=xm(B,Q);else if(this._binaryType==="arraybuffer")Y=U7B(xm(B,Q));else if(this._binaryType==="blob")Y=new Blob(B);else Y=B;if(this._allowSynchronousEvents)this.emit("message",Y,!0),this._state=0;else this._state=6,setImmediate(()=>{this.emit("message",Y,!0),this._state=0,this.startLoop(A)})}else{let Y=xm(B,Q);if(!this._skipUTF8Validation&&!MVA(Y)){let J=this.createError(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8");A(J);return}if(this._state===5||this._allowSynchronousEvents)this.emit("message",Y,!1),this._state=0;else this._state=6,setImmediate(()=>{this.emit("message",Y,!1),this._state=0,this.startLoop(A)})}}controlMessage(A,Q){if(this._opcode===8){if(A.length===0)this._loop=!1,this.emit("conclude",1005,qVA),this.end();else{let B=A.readUInt16BE(0);if(!K7B(B)){let J=this.createError(RangeError,`invalid status code ${B}`,!0,1002,"WS_ERR_INVALID_CLOSE_CODE");Q(J);return}let Y=new dw(A.buffer,A.byteOffset+2,A.length-2);if(!this._skipUTF8Validation&&!MVA(Y)){let J=this.createError(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8");Q(J);return}this._loop=!1,this.emit("conclude",B,Y),this.end()}this._state=0;return}if(this._allowSynchronousEvents)this.emit(this._opcode===9?"ping":"pong",A),this._state=0;else this._state=6,setImmediate(()=>{this.emit(this._opcode===9?"ping":"pong",A),this._state=0,this.startLoop(Q)})}createError(A,Q,B,Y,J){this._loop=!1,this._errored=!0;let C=new A(B?`Invalid WebSocket frame: ${Q}`:Q);return Error.captureStackTrace(C,this.createError),C.code=J,C[Z7B]=Y,C}}RVA.exports=zVA});var mm=R((sDY,OVA)=>{var{Duplex:nDY}=u("stream"),{randomFillSync:V7B}=u("crypto"),wVA=dD(),{EMPTY_BUFFER:I7B,kWebSocket:H7B,NOOP:D7B}=p6(),{isBlob:zE,isValidStatusCode:N7B}=ME(),{mask:jVA,toBuffer:NZ}=mD(),O5=Symbol("kByteLength"),L7B=Buffer.alloc(4),LZ,RE=8192,nC=0,q7B=1,M7B=2;class l7{constructor(A,Q,B){if(this._extensions=Q||{},B)this._generateMask=B,this._maskBuffer=Buffer.alloc(4);this._socket=A,this._firstFragment=!0,this._compress=!1,this._bufferedBytes=0,this._queue=[],this._state=nC,this.onerror=D7B,this[H7B]=void 0}static frame(A,Q){let B,Y=!1,J=2,C=!1;if(Q.mask){if(B=Q.maskBuffer||L7B,Q.generateMask)Q.generateMask(B);else{if(RE===8192){if(LZ===void 0)LZ=Buffer.alloc(8192);V7B(LZ,0,8192),RE=0}B[0]=LZ[RE++],B[1]=LZ[RE++],B[2]=LZ[RE++],B[3]=LZ[RE++]}C=(B[0]|B[1]|B[2]|B[3])===0,J=6}let X;if(typeof A==="string")if((!Q.mask||C)&&Q[O5]!==void 0)X=Q[O5];else A=Buffer.from(A),X=A.length;else X=A.length,Y=Q.mask&&Q.readOnly&&!C;let G=X;if(X>=65536)J+=8,G=127;else if(X>125)J+=2,G=126;let W=Buffer.allocUnsafe(Y?X+J:J);if(W[0]=Q.fin?Q.opcode|128:Q.opcode,Q.rsv1)W[0]|=64;if(W[1]=G,G===126)W.writeUInt16BE(X,2);else if(G===127)W[2]=W[3]=0,W.writeUIntBE(X,4,6);if(!Q.mask)return[W,A];if(W[1]|=128,W[J-4]=B[0],W[J-3]=B[1],W[J-2]=B[2],W[J-1]=B[3],C)return[W,A];if(Y)return jVA(A,B,W,J,X),[W];return jVA(A,B,A,0,X),[W,A]}close(A,Q,B,Y){let J;if(A===void 0)J=I7B;else if(typeof A!=="number"||!N7B(A))throw TypeError("First argument must be a valid error code number");else if(Q===void 0||!Q.length)J=Buffer.allocUnsafe(2),J.writeUInt16BE(A,0);else{let X=Buffer.byteLength(Q);if(X>123)throw RangeError("The message must not be greater than 123 bytes");if(J=Buffer.allocUnsafe(2+X),J.writeUInt16BE(A,0),typeof Q==="string")J.write(Q,2);else J.set(Q,2)}let C={[O5]:J.length,fin:!0,generateMask:this._generateMask,mask:B,maskBuffer:this._maskBuffer,opcode:8,readOnly:!1,rsv1:!1};if(this._state!==nC)this.enqueue([this.dispatch,J,!1,C,Y]);else this.sendFrame(l7.frame(J,C),Y)}ping(A,Q,B){let Y,J;if(typeof A==="string")Y=Buffer.byteLength(A),J=!1;else if(zE(A))Y=A.size,J=!1;else A=NZ(A),Y=A.length,J=NZ.readOnly;if(Y>125)throw RangeError("The data size must not be greater than 125 bytes");let C={[O5]:Y,fin:!0,generateMask:this._generateMask,mask:Q,maskBuffer:this._maskBuffer,opcode:9,readOnly:J,rsv1:!1};if(zE(A))if(this._state!==nC)this.enqueue([this.getBlobData,A,!1,C,B]);else this.getBlobData(A,!1,C,B);else if(this._state!==nC)this.enqueue([this.dispatch,A,!1,C,B]);else this.sendFrame(l7.frame(A,C),B)}pong(A,Q,B){let Y,J;if(typeof A==="string")Y=Buffer.byteLength(A),J=!1;else if(zE(A))Y=A.size,J=!1;else A=NZ(A),Y=A.length,J=NZ.readOnly;if(Y>125)throw RangeError("The data size must not be greater than 125 bytes");let C={[O5]:Y,fin:!0,generateMask:this._generateMask,mask:Q,maskBuffer:this._maskBuffer,opcode:10,readOnly:J,rsv1:!1};if(zE(A))if(this._state!==nC)this.enqueue([this.getBlobData,A,!1,C,B]);else this.getBlobData(A,!1,C,B);else if(this._state!==nC)this.enqueue([this.dispatch,A,!1,C,B]);else this.sendFrame(l7.frame(A,C),B)}send(A,Q,B){let Y=this._extensions[wVA.extensionName],J=Q.binary?2:1,C=Q.compress,X,G;if(typeof A==="string")X=Buffer.byteLength(A),G=!1;else if(zE(A))X=A.size,G=!1;else A=NZ(A),X=A.length,G=NZ.readOnly;if(this._firstFragment){if(this._firstFragment=!1,C&&Y&&Y.params[Y._isServer?"server_no_context_takeover":"client_no_context_takeover"])C=X>=Y._threshold;this._compress=C}else C=!1,J=0;if(Q.fin)this._firstFragment=!0;let W={[O5]:X,fin:Q.fin,generateMask:this._generateMask,mask:Q.mask,maskBuffer:this._maskBuffer,opcode:J,readOnly:G,rsv1:C};if(zE(A))if(this._state!==nC)this.enqueue([this.getBlobData,A,this._compress,W,B]);else this.getBlobData(A,this._compress,W,B);else if(this._state!==nC)this.enqueue([this.dispatch,A,this._compress,W,B]);else this.dispatch(A,this._compress,W,B)}getBlobData(A,Q,B,Y){this._bufferedBytes+=B[O5],this._state=M7B,A.arrayBuffer().then((J)=>{if(this._socket.destroyed){let X=Error("The socket was closed while the blob was being read");process.nextTick(bm,this,X,Y);return}this._bufferedBytes-=B[O5];let C=NZ(J);if(!Q)this._state=nC,this.sendFrame(l7.frame(C,B),Y),this.dequeue();else this.dispatch(C,Q,B,Y)}).catch((J)=>{process.nextTick(z7B,this,J,Y)})}dispatch(A,Q,B,Y){if(!Q){this.sendFrame(l7.frame(A,B),Y);return}let J=this._extensions[wVA.extensionName];this._bufferedBytes+=B[O5],this._state=q7B,J.compress(A,B.fin,(C,X)=>{if(this._socket.destroyed){let G=Error("The socket was closed while data was being compressed");bm(this,G,Y);return}this._bufferedBytes-=B[O5],this._state=nC,B.readOnly=!1,this.sendFrame(l7.frame(X,B),Y),this.dequeue()})}dequeue(){while(this._state===nC&&this._queue.length){let A=this._queue.shift();this._bufferedBytes-=A[3][O5],Reflect.apply(A[0],this,A.slice(1))}}enqueue(A){this._bufferedBytes+=A[3][O5],this._queue.push(A)}sendFrame(A,Q){if(A.length===2)this._socket.cork(),this._socket.write(A[0]),this._socket.write(A[1],Q),this._socket.uncork();else this._socket.write(A[0],Q)}}OVA.exports=l7;function bm(A,Q,B){if(typeof B==="function")B(Q);for(let Y=0;Y{var{kForOnEventAttribute:cD,kListener:um}=p6(),PVA=Symbol("kCode"),TVA=Symbol("kData"),SVA=Symbol("kError"),kVA=Symbol("kMessage"),_VA=Symbol("kReason"),wE=Symbol("kTarget"),vVA=Symbol("kType"),yVA=Symbol("kWasClean");class p7{constructor(A){this[wE]=null,this[vVA]=A}get target(){return this[wE]}get type(){return this[vVA]}}Object.defineProperty(p7.prototype,"target",{enumerable:!0});Object.defineProperty(p7.prototype,"type",{enumerable:!0});class jE extends p7{constructor(A,Q={}){super(A);this[PVA]=Q.code===void 0?0:Q.code,this[_VA]=Q.reason===void 0?"":Q.reason,this[yVA]=Q.wasClean===void 0?!1:Q.wasClean}get code(){return this[PVA]}get reason(){return this[_VA]}get wasClean(){return this[yVA]}}Object.defineProperty(jE.prototype,"code",{enumerable:!0});Object.defineProperty(jE.prototype,"reason",{enumerable:!0});Object.defineProperty(jE.prototype,"wasClean",{enumerable:!0});class lD extends p7{constructor(A,Q={}){super(A);this[SVA]=Q.error===void 0?null:Q.error,this[kVA]=Q.message===void 0?"":Q.message}get error(){return this[SVA]}get message(){return this[kVA]}}Object.defineProperty(lD.prototype,"error",{enumerable:!0});Object.defineProperty(lD.prototype,"message",{enumerable:!0});class lw extends p7{constructor(A,Q={}){super(A);this[TVA]=Q.data===void 0?null:Q.data}get data(){return this[TVA]}}Object.defineProperty(lw.prototype,"data",{enumerable:!0});var R7B={addEventListener(A,Q,B={}){for(let J of this.listeners(A))if(!B[cD]&&J[um]===Q&&!J[cD])return;let Y;if(A==="message")Y=function(C,X){let G=new lw("message",{data:X?C:C.toString()});G[wE]=this,cw(Q,this,G)};else if(A==="close")Y=function(C,X){let G=new jE("close",{code:C,reason:X.toString(),wasClean:this._closeFrameReceived&&this._closeFrameSent});G[wE]=this,cw(Q,this,G)};else if(A==="error")Y=function(C){let X=new lD("error",{error:C,message:C.message});X[wE]=this,cw(Q,this,X)};else if(A==="open")Y=function(){let C=new p7("open");C[wE]=this,cw(Q,this,C)};else return;if(Y[cD]=!!B[cD],Y[um]=Q,B.once)this.once(A,Y);else this.on(A,Y)},removeEventListener(A,Q){for(let B of this.listeners(A))if(B[um]===Q&&!B[cD]){this.removeListener(A,B);break}}};gVA.exports={CloseEvent:jE,ErrorEvent:lD,Event:p7,EventTarget:R7B,MessageEvent:lw};function cw(A,Q,B){if(typeof A==="object"&&A.handleEvent)A.handleEvent.call(A,B);else A.call(Q,B)}});var dm=R((aDY,xVA)=>{var{tokenChars:pD}=ME();function QX(A,Q,B){if(A[Q]===void 0)A[Q]=[B];else A[Q].push(B)}function w7B(A){let Q=Object.create(null),B=Object.create(null),Y=!1,J=!1,C=!1,X,G,W=-1,F=-1,Z=-1,U=0;for(;U{let B=A[Q];if(!Array.isArray(B))B=[B];return B.map((Y)=>{return[Q].concat(Object.keys(Y).map((J)=>{let C=Y[J];if(!Array.isArray(C))C=[C];return C.map((X)=>X===!0?J:`${J}=${X}`).join("; ")})).join("; ")}).join(", ")}).join(", ")}xVA.exports={format:j7B,parse:w7B}});var sw=R((eDY,rVA)=>{var O7B=u("events"),P7B=u("https"),T7B=u("http"),mVA=u("net"),S7B=u("tls"),{randomBytes:k7B,createHash:_7B}=u("crypto"),{Duplex:oDY,Readable:tDY}=u("stream"),{URL:cm}=u("url"),i7=dD(),v7B=fm(),y7B=mm(),{isBlob:g7B}=ME(),{BINARY_TYPES:fVA,EMPTY_BUFFER:pw,GUID:h7B,kForOnEventAttribute:lm,kListener:x7B,kStatusCode:f7B,kWebSocket:nY,NOOP:uVA}=p6(),{EventTarget:{addEventListener:b7B,removeEventListener:m7B}}=hVA(),{format:u7B,parse:d7B}=dm(),{toBuffer:c7B}=mD(),dVA=Symbol("kAborted"),pm=[8,13],n6=["CONNECTING","OPEN","CLOSING","CLOSED"],l7B=/^[!#$%&'*+\-.0-9A-Z^_`|a-z~]+$/;class xQ extends O7B{constructor(A,Q,B){super();if(this._binaryType=fVA[0],this._closeCode=1006,this._closeFrameReceived=!1,this._closeFrameSent=!1,this._closeMessage=pw,this._closeTimer=null,this._errorEmitted=!1,this._extensions={},this._paused=!1,this._protocol="",this._readyState=xQ.CONNECTING,this._receiver=null,this._sender=null,this._socket=null,A!==null){if(this._bufferedAmount=0,this._isServer=!1,this._redirects=0,Q===void 0)Q=[];else if(!Array.isArray(Q))if(typeof Q==="object"&&Q!==null)B=Q,Q=[];else Q=[Q];cVA(this,A,Q,B)}else this._autoPong=B.autoPong,this._isServer=!0}get binaryType(){return this._binaryType}set binaryType(A){if(!fVA.includes(A))return;if(this._binaryType=A,this._receiver)this._receiver._binaryType=A}get bufferedAmount(){if(!this._socket)return this._bufferedAmount;return this._socket._writableState.length+this._sender._bufferedBytes}get extensions(){return Object.keys(this._extensions).join()}get isPaused(){return this._paused}get onclose(){return null}get onerror(){return null}get onopen(){return null}get onmessage(){return null}get protocol(){return this._protocol}get readyState(){return this._readyState}get url(){return this._url}setSocket(A,Q,B){let Y=new v7B({allowSynchronousEvents:B.allowSynchronousEvents,binaryType:this.binaryType,extensions:this._extensions,isServer:this._isServer,maxPayload:B.maxPayload,skipUTF8Validation:B.skipUTF8Validation}),J=new y7B(A,this._extensions,B.generateMask);if(this._receiver=Y,this._sender=J,this._socket=A,Y[nY]=this,J[nY]=this,A[nY]=this,Y.on("conclude",n7B),Y.on("drain",s7B),Y.on("error",r7B),Y.on("message",a7B),Y.on("ping",o7B),Y.on("pong",t7B),J.onerror=e7B,A.setTimeout)A.setTimeout(0);if(A.setNoDelay)A.setNoDelay();if(Q.length>0)A.unshift(Q);A.on("close",iVA),A.on("data",nw),A.on("end",nVA),A.on("error",sVA),this._readyState=xQ.OPEN,this.emit("open")}emitClose(){if(!this._socket){this._readyState=xQ.CLOSED,this.emit("close",this._closeCode,this._closeMessage);return}if(this._extensions[i7.extensionName])this._extensions[i7.extensionName].cleanup();this._receiver.removeAllListeners(),this._readyState=xQ.CLOSED,this.emit("close",this._closeCode,this._closeMessage)}close(A,Q){if(this.readyState===xQ.CLOSED)return;if(this.readyState===xQ.CONNECTING){P8(this,this._req,"WebSocket was closed before the connection was established");return}if(this.readyState===xQ.CLOSING){if(this._closeFrameSent&&(this._closeFrameReceived||this._receiver._writableState.errorEmitted))this._socket.end();return}this._readyState=xQ.CLOSING,this._sender.close(A,Q,!this._isServer,(B)=>{if(B)return;if(this._closeFrameSent=!0,this._closeFrameReceived||this._receiver._writableState.errorEmitted)this._socket.end()}),pVA(this)}pause(){if(this.readyState===xQ.CONNECTING||this.readyState===xQ.CLOSED)return;this._paused=!0,this._socket.pause()}ping(A,Q,B){if(this.readyState===xQ.CONNECTING)throw Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof A==="function")B=A,A=Q=void 0;else if(typeof Q==="function")B=Q,Q=void 0;if(typeof A==="number")A=A.toString();if(this.readyState!==xQ.OPEN){im(this,A,B);return}if(Q===void 0)Q=!this._isServer;this._sender.ping(A||pw,Q,B)}pong(A,Q,B){if(this.readyState===xQ.CONNECTING)throw Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof A==="function")B=A,A=Q=void 0;else if(typeof Q==="function")B=Q,Q=void 0;if(typeof A==="number")A=A.toString();if(this.readyState!==xQ.OPEN){im(this,A,B);return}if(Q===void 0)Q=!this._isServer;this._sender.pong(A||pw,Q,B)}resume(){if(this.readyState===xQ.CONNECTING||this.readyState===xQ.CLOSED)return;if(this._paused=!1,!this._receiver._writableState.needDrain)this._socket.resume()}send(A,Q,B){if(this.readyState===xQ.CONNECTING)throw Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof Q==="function")B=Q,Q={};if(typeof A==="number")A=A.toString();if(this.readyState!==xQ.OPEN){im(this,A,B);return}let Y={binary:typeof A!=="string",mask:!this._isServer,compress:!0,fin:!0,...Q};if(!this._extensions[i7.extensionName])Y.compress=!1;this._sender.send(A||pw,Y,B)}terminate(){if(this.readyState===xQ.CLOSED)return;if(this.readyState===xQ.CONNECTING){P8(this,this._req,"WebSocket was closed before the connection was established");return}if(this._socket)this._readyState=xQ.CLOSING,this._socket.destroy()}}Object.defineProperty(xQ,"CONNECTING",{enumerable:!0,value:n6.indexOf("CONNECTING")});Object.defineProperty(xQ.prototype,"CONNECTING",{enumerable:!0,value:n6.indexOf("CONNECTING")});Object.defineProperty(xQ,"OPEN",{enumerable:!0,value:n6.indexOf("OPEN")});Object.defineProperty(xQ.prototype,"OPEN",{enumerable:!0,value:n6.indexOf("OPEN")});Object.defineProperty(xQ,"CLOSING",{enumerable:!0,value:n6.indexOf("CLOSING")});Object.defineProperty(xQ.prototype,"CLOSING",{enumerable:!0,value:n6.indexOf("CLOSING")});Object.defineProperty(xQ,"CLOSED",{enumerable:!0,value:n6.indexOf("CLOSED")});Object.defineProperty(xQ.prototype,"CLOSED",{enumerable:!0,value:n6.indexOf("CLOSED")});["binaryType","bufferedAmount","extensions","isPaused","protocol","readyState","url"].forEach((A)=>{Object.defineProperty(xQ.prototype,A,{enumerable:!0})});["open","error","close","message"].forEach((A)=>{Object.defineProperty(xQ.prototype,`on${A}`,{enumerable:!0,get(){for(let Q of this.listeners(A))if(Q[lm])return Q[x7B];return null},set(Q){for(let B of this.listeners(A))if(B[lm]){this.removeListener(A,B);break}if(typeof Q!=="function")return;this.addEventListener(A,Q,{[lm]:!0})}})});xQ.prototype.addEventListener=b7B;xQ.prototype.removeEventListener=m7B;rVA.exports=xQ;function cVA(A,Q,B,Y){let J={allowSynchronousEvents:!0,autoPong:!0,protocolVersion:pm[1],maxPayload:104857600,skipUTF8Validation:!1,perMessageDeflate:!0,followRedirects:!1,maxRedirects:10,...Y,socketPath:void 0,hostname:void 0,protocol:void 0,timeout:void 0,method:"GET",host:void 0,path:void 0,port:void 0};if(A._autoPong=J.autoPong,!pm.includes(J.protocolVersion))throw RangeError(`Unsupported protocol version: ${J.protocolVersion} (supported versions: ${pm.join(", ")})`);let C;if(Q instanceof cm)C=Q;else try{C=new cm(Q)}catch(I){throw SyntaxError(`Invalid URL: ${Q}`)}if(C.protocol==="http:")C.protocol="ws:";else if(C.protocol==="https:")C.protocol="wss:";A._url=C.href;let X=C.protocol==="wss:",G=C.protocol==="ws+unix:",W;if(C.protocol!=="ws:"&&!X&&!G)W=`The URL's protocol must be one of "ws:", "wss:", "http:", "https:", or "ws+unix:"`;else if(G&&!C.pathname)W="The URL's pathname is empty";else if(C.hash)W="The URL contains a fragment identifier";if(W){let I=SyntaxError(W);if(A._redirects===0)throw I;else{iw(A,I);return}}let F=X?443:80,Z=k7B(16).toString("base64"),U=X?P7B.request:T7B.request,$=new Set,E;if(J.createConnection=J.createConnection||(X?i7B:p7B),J.defaultPort=J.defaultPort||F,J.port=C.port||F,J.host=C.hostname.startsWith("[")?C.hostname.slice(1,-1):C.hostname,J.headers={...J.headers,"Sec-WebSocket-Version":J.protocolVersion,"Sec-WebSocket-Key":Z,Connection:"Upgrade",Upgrade:"websocket"},J.path=C.pathname+C.search,J.timeout=J.handshakeTimeout,J.perMessageDeflate)E=new i7(J.perMessageDeflate!==!0?J.perMessageDeflate:{},!1,J.maxPayload),J.headers["Sec-WebSocket-Extensions"]=u7B({[i7.extensionName]:E.offer()});if(B.length){for(let I of B){if(typeof I!=="string"||!l7B.test(I)||$.has(I))throw SyntaxError("An invalid or duplicated subprotocol was specified");$.add(I)}J.headers["Sec-WebSocket-Protocol"]=B.join(",")}if(J.origin)if(J.protocolVersion<13)J.headers["Sec-WebSocket-Origin"]=J.origin;else J.headers.Origin=J.origin;if(C.username||C.password)J.auth=`${C.username}:${C.password}`;if(G){let I=J.path.split(":");J.socketPath=I[0],J.path=I[1]}let K;if(J.followRedirects){if(A._redirects===0){A._originalIpc=G,A._originalSecure=X,A._originalHostOrSocketPath=G?J.socketPath:C.host;let I=Y&&Y.headers;if(Y={...Y,headers:{}},I)for(let[V,H]of Object.entries(I))Y.headers[V.toLowerCase()]=H}else if(A.listenerCount("redirect")===0){let I=G?A._originalIpc?J.socketPath===A._originalHostOrSocketPath:!1:A._originalIpc?!1:C.host===A._originalHostOrSocketPath;if(!I||A._originalSecure&&!X){if(delete J.headers.authorization,delete J.headers.cookie,!I)delete J.headers.host;J.auth=void 0}}if(J.auth&&!Y.headers.authorization)Y.headers.authorization="Basic "+Buffer.from(J.auth).toString("base64");if(K=A._req=U(J),A._redirects)A.emit("redirect",A.url,K)}else K=A._req=U(J);if(J.timeout)K.on("timeout",()=>{P8(A,K,"Opening handshake has timed out")});if(K.on("error",(I)=>{if(K===null||K[dVA])return;K=A._req=null,iw(A,I)}),K.on("response",(I)=>{let V=I.headers.location,H=I.statusCode;if(V&&J.followRedirects&&H>=300&&H<400){if(++A._redirects>J.maxRedirects){P8(A,K,"Maximum redirects exceeded");return}K.abort();let D;try{D=new cm(V,Q)}catch(L){let z=SyntaxError(`Invalid URL: ${V}`);iw(A,z);return}cVA(A,D,B,Y)}else if(!A.emit("unexpected-response",K,I))P8(A,K,`Unexpected server response: ${I.statusCode}`)}),K.on("upgrade",(I,V,H)=>{if(A.emit("upgrade",I),A.readyState!==xQ.CONNECTING)return;K=A._req=null;let D=I.headers.upgrade;if(D===void 0||D.toLowerCase()!=="websocket"){P8(A,V,"Invalid Upgrade header");return}let L=_7B("sha1").update(Z+h7B).digest("base64");if(I.headers["sec-websocket-accept"]!==L){P8(A,V,"Invalid Sec-WebSocket-Accept header");return}let z=I.headers["sec-websocket-protocol"],M;if(z!==void 0){if(!$.size)M="Server sent a subprotocol but none was requested";else if(!$.has(z))M="Server sent an invalid subprotocol"}else if($.size)M="Server sent no subprotocol";if(M){P8(A,V,M);return}if(z)A._protocol=z;let N=I.headers["sec-websocket-extensions"];if(N!==void 0){if(!E){P8(A,V,"Server sent a Sec-WebSocket-Extensions header but no extension was requested");return}let q;try{q=d7B(N)}catch(P){P8(A,V,"Invalid Sec-WebSocket-Extensions header");return}let w=Object.keys(q);if(w.length!==1||w[0]!==i7.extensionName){P8(A,V,"Server indicated an extension that was not requested");return}try{E.accept(q[i7.extensionName])}catch(P){P8(A,V,"Invalid Sec-WebSocket-Extensions header");return}A._extensions[i7.extensionName]=E}A.setSocket(V,H,{allowSynchronousEvents:J.allowSynchronousEvents,generateMask:J.generateMask,maxPayload:J.maxPayload,skipUTF8Validation:J.skipUTF8Validation})}),J.finishRequest)J.finishRequest(K,A);else K.end()}function iw(A,Q){A._readyState=xQ.CLOSING,A._errorEmitted=!0,A.emit("error",Q),A.emitClose()}function p7B(A){return A.path=A.socketPath,mVA.connect(A)}function i7B(A){if(A.path=void 0,!A.servername&&A.servername!=="")A.servername=mVA.isIP(A.host)?"":A.host;return S7B.connect(A)}function P8(A,Q,B){A._readyState=xQ.CLOSING;let Y=Error(B);if(Error.captureStackTrace(Y,P8),Q.setHeader){if(Q[dVA]=!0,Q.abort(),Q.socket&&!Q.socket.destroyed)Q.socket.destroy();process.nextTick(iw,A,Y)}else Q.destroy(Y),Q.once("error",A.emit.bind(A,"error")),Q.once("close",A.emitClose.bind(A))}function im(A,Q,B){if(Q){let Y=g7B(Q)?Q.size:c7B(Q).length;if(A._socket)A._sender._bufferedBytes+=Y;else A._bufferedAmount+=Y}if(B){let Y=Error(`WebSocket is not open: readyState ${A.readyState} (${n6[A.readyState]})`);process.nextTick(B,Y)}}function n7B(A,Q){let B=this[nY];if(B._closeFrameReceived=!0,B._closeMessage=Q,B._closeCode=A,B._socket[nY]===void 0)return;if(B._socket.removeListener("data",nw),process.nextTick(lVA,B._socket),A===1005)B.close();else B.close(A,Q)}function s7B(){let A=this[nY];if(!A.isPaused)A._socket.resume()}function r7B(A){let Q=this[nY];if(Q._socket[nY]!==void 0)Q._socket.removeListener("data",nw),process.nextTick(lVA,Q._socket),Q.close(A[f7B]);if(!Q._errorEmitted)Q._errorEmitted=!0,Q.emit("error",A)}function bVA(){this[nY].emitClose()}function a7B(A,Q){this[nY].emit("message",A,Q)}function o7B(A){let Q=this[nY];if(Q._autoPong)Q.pong(A,!this._isServer,uVA);Q.emit("ping",A)}function t7B(A){this[nY].emit("pong",A)}function lVA(A){A.resume()}function e7B(A){let Q=this[nY];if(Q.readyState===xQ.CLOSED)return;if(Q.readyState===xQ.OPEN)Q._readyState=xQ.CLOSING,pVA(Q);if(this._socket.end(),!Q._errorEmitted)Q._errorEmitted=!0,Q.emit("error",A)}function pVA(A){A._closeTimer=setTimeout(A._socket.destroy.bind(A._socket),30000)}function iVA(){let A=this[nY];this.removeListener("close",iVA),this.removeListener("data",nw),this.removeListener("end",nVA),A._readyState=xQ.CLOSING;let Q;if(!this._readableState.endEmitted&&!A._closeFrameReceived&&!A._receiver._writableState.errorEmitted&&(Q=A._socket.read())!==null)A._receiver.write(Q);if(A._receiver.end(),this[nY]=void 0,clearTimeout(A._closeTimer),A._receiver._writableState.finished||A._receiver._writableState.errorEmitted)A.emitClose();else A._receiver.on("error",bVA),A._receiver.on("finish",bVA)}function nw(A){if(!this[nY]._receiver.write(A))this.pause()}function nVA(){let A=this[nY];A._readyState=xQ.CLOSING,A._receiver.end(),this.end()}function sVA(){let A=this[nY];if(this.removeListener("error",sVA),this.on("error",uVA),A)A._readyState=xQ.CLOSING,this.destroy()}});var eVA=R((QNY,tVA)=>{var ANY=sw(),{Duplex:AWB}=u("stream");function aVA(A){A.emit("close")}function QWB(){if(!this.destroyed&&this._writableState.finished)this.destroy()}function oVA(A){if(this.removeListener("error",oVA),this.destroy(),this.listenerCount("error")===0)this.emit("error",A)}function BWB(A,Q){let B=!0,Y=new AWB({...Q,autoDestroy:!1,emitClose:!1,objectMode:!1,writableObjectMode:!1});return A.on("message",function(C,X){let G=!X&&Y._readableState.objectMode?C.toString():C;if(!Y.push(G))A.pause()}),A.once("error",function(C){if(Y.destroyed)return;B=!1,Y.destroy(C)}),A.once("close",function(){if(Y.destroyed)return;Y.push(null)}),Y._destroy=function(J,C){if(A.readyState===A.CLOSED){C(J),process.nextTick(aVA,Y);return}let X=!1;if(A.once("error",function(W){X=!0,C(W)}),A.once("close",function(){if(!X)C(J);process.nextTick(aVA,Y)}),B)A.terminate()},Y._final=function(J){if(A.readyState===A.CONNECTING){A.once("open",function(){Y._final(J)});return}if(A._socket===null)return;if(A._socket._writableState.finished){if(J(),Y._readableState.endEmitted)Y.destroy()}else A._socket.once("finish",function(){J()}),A.close()},Y._read=function(){if(A.isPaused)A.resume()},Y._write=function(J,C,X){if(A.readyState===A.CONNECTING){A.once("open",function(){Y._write(J,C,X)});return}A.send(J,X)},Y.on("end",QWB),Y.on("error",oVA),Y}tVA.exports=BWB});var QIA=R((BNY,AIA)=>{var{tokenChars:YWB}=ME();function JWB(A){let Q=new Set,B=-1,Y=-1,J=0;for(J;J{var CWB=u("events"),rw=u("http"),{Duplex:YNY}=u("stream"),{createHash:XWB}=u("crypto"),BIA=dm(),qZ=dD(),GWB=QIA(),WWB=sw(),{GUID:FWB,kWebSocket:ZWB}=p6(),$WB=/^[+/0-9A-Za-z]{22}==$/;class JIA extends CWB{constructor(A,Q){super();if(A={allowSynchronousEvents:!0,autoPong:!0,maxPayload:104857600,skipUTF8Validation:!1,perMessageDeflate:!1,handleProtocols:null,clientTracking:!0,verifyClient:null,noServer:!1,backlog:null,server:null,host:null,path:null,port:null,WebSocket:WWB,...A},A.port==null&&!A.server&&!A.noServer||A.port!=null&&(A.server||A.noServer)||A.server&&A.noServer)throw TypeError('One and only one of the "port", "server", or "noServer" options must be specified');if(A.port!=null)this._server=rw.createServer((B,Y)=>{let J=rw.STATUS_CODES[426];Y.writeHead(426,{"Content-Length":J.length,"Content-Type":"text/plain"}),Y.end(J)}),this._server.listen(A.port,A.host,A.backlog,Q);else if(A.server)this._server=A.server;if(this._server){let B=this.emit.bind(this,"connection");this._removeListeners=UWB(this._server,{listening:this.emit.bind(this,"listening"),error:this.emit.bind(this,"error"),upgrade:(Y,J,C)=>{this.handleUpgrade(Y,J,C,B)}})}if(A.perMessageDeflate===!0)A.perMessageDeflate={};if(A.clientTracking)this.clients=new Set,this._shouldEmitClose=!1;this.options=A,this._state=0}address(){if(this.options.noServer)throw Error('The server is operating in "noServer" mode');if(!this._server)return null;return this._server.address()}close(A){if(this._state===2){if(A)this.once("close",()=>{A(Error("The server is not running"))});process.nextTick(iD,this);return}if(A)this.once("close",A);if(this._state===1)return;if(this._state=1,this.options.noServer||this.options.server){if(this._server)this._removeListeners(),this._removeListeners=this._server=null;if(this.clients)if(!this.clients.size)process.nextTick(iD,this);else this._shouldEmitClose=!0;else process.nextTick(iD,this)}else{let Q=this._server;this._removeListeners(),this._removeListeners=this._server=null,Q.close(()=>{iD(this)})}}shouldHandle(A){if(this.options.path){let Q=A.url.indexOf("?");if((Q!==-1?A.url.slice(0,Q):A.url)!==this.options.path)return!1}return!0}handleUpgrade(A,Q,B,Y){Q.on("error",YIA);let J=A.headers["sec-websocket-key"],C=A.headers.upgrade,X=+A.headers["sec-websocket-version"];if(A.method!=="GET"){MZ(this,A,Q,405,"Invalid HTTP method");return}if(C===void 0||C.toLowerCase()!=="websocket"){MZ(this,A,Q,400,"Invalid Upgrade header");return}if(J===void 0||!$WB.test(J)){MZ(this,A,Q,400,"Missing or invalid Sec-WebSocket-Key header");return}if(X!==13&&X!==8){MZ(this,A,Q,400,"Missing or invalid Sec-WebSocket-Version header",{"Sec-WebSocket-Version":"13, 8"});return}if(!this.shouldHandle(A)){nD(Q,400);return}let G=A.headers["sec-websocket-protocol"],W=new Set;if(G!==void 0)try{W=GWB.parse(G)}catch(U){MZ(this,A,Q,400,"Invalid Sec-WebSocket-Protocol header");return}let F=A.headers["sec-websocket-extensions"],Z={};if(this.options.perMessageDeflate&&F!==void 0){let U=new qZ(this.options.perMessageDeflate,!0,this.options.maxPayload);try{let $=BIA.parse(F);if($[qZ.extensionName])U.accept($[qZ.extensionName]),Z[qZ.extensionName]=U}catch($){MZ(this,A,Q,400,"Invalid or unacceptable Sec-WebSocket-Extensions header");return}}if(this.options.verifyClient){let U={origin:A.headers[`${X===8?"sec-websocket-origin":"origin"}`],secure:!!(A.socket.authorized||A.socket.encrypted),req:A};if(this.options.verifyClient.length===2){this.options.verifyClient(U,($,E,K,I)=>{if(!$)return nD(Q,E||401,K,I);this.completeUpgrade(Z,J,W,A,Q,B,Y)});return}if(!this.options.verifyClient(U))return nD(Q,401)}this.completeUpgrade(Z,J,W,A,Q,B,Y)}completeUpgrade(A,Q,B,Y,J,C,X){if(!J.readable||!J.writable)return J.destroy();if(J[ZWB])throw Error("server.handleUpgrade() was called more than once with the same socket, possibly due to a misconfiguration");if(this._state>0)return nD(J,503);let W=["HTTP/1.1 101 Switching Protocols","Upgrade: websocket","Connection: Upgrade",`Sec-WebSocket-Accept: ${XWB("sha1").update(Q+FWB).digest("base64")}`],F=new this.options.WebSocket(null,void 0,this.options);if(B.size){let Z=this.options.handleProtocols?this.options.handleProtocols(B,Y):B.values().next().value;if(Z)W.push(`Sec-WebSocket-Protocol: ${Z}`),F._protocol=Z}if(A[qZ.extensionName]){let Z=A[qZ.extensionName].params,U=BIA.format({[qZ.extensionName]:[Z]});W.push(`Sec-WebSocket-Extensions: ${U}`),F._extensions=A}if(this.emit("headers",W,Y),J.write(W.concat(`\r + deps: ${B}}`};var iXB={keyword:"dependencies",type:"object",schemaType:"object",error:CEA.error,code(A){let[Q,B]=nXB(A);YEA(A,Q),JEA(A,B)}};function nXB({schema:A}){let Q={},B={};for(let Y in A){if(Y==="__proto__")continue;let J=Array.isArray(A[Y])?Q:B;J[Y]=A[Y]}return[Q,B]}function YEA(A,Q=A.schema){let{gen:B,data:Y,it:J}=A;if(Object.keys(Q).length===0)return;let C=B.let("missing");for(let X in Q){let G=Q[X];if(G.length===0)continue;let W=(0,yD.propertyInData)(B,Y,X,J.opts.ownProperties);if(A.setParams({property:X,depsCount:G.length,deps:G.join(", ")}),J.allErrors)B.if(W,()=>{for(let F of G)(0,yD.checkReportMissingProp)(A,F)});else B.if(hb._`${W} && (${(0,yD.checkMissingProp)(A,G,C)})`),(0,yD.reportMissingProp)(A,C),B.else()}}CEA.validatePropertyDeps=YEA;function JEA(A,Q=A.schema){let{gen:B,data:Y,keyword:J,it:C}=A,X=B.name("valid");for(let G in Q){if((0,pXB.alwaysValidSchema)(C,Q[G]))continue;B.if((0,yD.propertyInData)(B,Y,G,C.opts.ownProperties),()=>{let W=A.subschema({keyword:J,schemaProp:G},X);A.mergeValidEvaluated(W,X)},()=>B.var(X,!0)),A.ok(X)}}CEA.validateSchemaDeps=JEA;CEA.default=iXB});var $EA=R((ZEA)=>{Object.defineProperty(ZEA,"__esModule",{value:!0});var FEA=GB(),aXB=wB(),oXB={message:"property name must be valid",params:({params:A})=>FEA._`{propertyName: ${A.propertyName}}`},tXB={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:oXB,code(A){let{gen:Q,schema:B,data:Y,it:J}=A;if((0,aXB.alwaysValidSchema)(J,B))return;let C=Q.name("valid");Q.forIn("key",Y,(X)=>{A.setParams({propertyName:X}),A.subschema({keyword:"propertyNames",data:X,dataTypes:["string"],propertyName:X,compositeRule:!0},C),Q.if((0,FEA.not)(C),()=>{if(A.error(!0),!J.allErrors)Q.break()})}),A.ok(C)}};ZEA.default=tXB});var xb=R((UEA)=>{Object.defineProperty(UEA,"__esModule",{value:!0});var Pw=w5(),iC=GB(),A6B=u6(),Tw=wB(),Q6B={message:"must NOT have additional properties",params:({params:A})=>iC._`{additionalProperty: ${A.additionalProperty}}`},B6B={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:Q6B,code(A){let{gen:Q,schema:B,parentSchema:Y,data:J,errsCount:C,it:X}=A;if(!C)throw Error("ajv implementation error");let{allErrors:G,opts:W}=X;if(X.props=!0,W.removeAdditional!=="all"&&(0,Tw.alwaysValidSchema)(X,B))return;let F=(0,Pw.allSchemaProperties)(Y.properties),Z=(0,Pw.allSchemaProperties)(Y.patternProperties);U(),A.ok(iC._`${C} === ${A6B.default.errors}`);function U(){Q.forIn("key",J,(V)=>{if(!F.length&&!Z.length)K(V);else Q.if($(V),()=>K(V))})}function $(V){let H;if(F.length>8){let D=(0,Tw.schemaRefOrVal)(X,Y.properties,"properties");H=(0,Pw.isOwnProperty)(Q,D,V)}else if(F.length)H=(0,iC.or)(...F.map((D)=>iC._`${V} === ${D}`));else H=iC.nil;if(Z.length)H=(0,iC.or)(H,...Z.map((D)=>iC._`${(0,Pw.usePattern)(A,D)}.test(${V})`));return(0,iC.not)(H)}function E(V){Q.code(iC._`delete ${J}[${V}]`)}function K(V){if(W.removeAdditional==="all"||W.removeAdditional&&B===!1){E(V);return}if(B===!1){if(A.setParams({additionalProperty:V}),A.error(),!G)Q.break();return}if(typeof B=="object"&&!(0,Tw.alwaysValidSchema)(X,B)){let H=Q.name("valid");if(W.removeAdditional==="failing")I(V,H,!1),Q.if((0,iC.not)(H),()=>{A.reset(),E(V)});else if(I(V,H),!G)Q.if((0,iC.not)(H),()=>Q.break())}}function I(V,H,D){let L={keyword:"additionalProperties",dataProp:V,dataPropType:Tw.Type.Str};if(D===!1)Object.assign(L,{compositeRule:!0,createErrors:!1,allErrors:!1});A.subschema(L,H)}}};UEA.default=B6B});var IEA=R((VEA)=>{Object.defineProperty(VEA,"__esModule",{value:!0});var J6B=MD(),EEA=w5(),fb=wB(),KEA=xb(),C6B={keyword:"properties",type:"object",schemaType:"object",code(A){let{gen:Q,schema:B,parentSchema:Y,data:J,it:C}=A;if(C.opts.removeAdditional==="all"&&Y.additionalProperties===void 0)KEA.default.code(new J6B.KeywordCxt(C,KEA.default,"additionalProperties"));let X=(0,EEA.allSchemaProperties)(B);for(let U of X)C.definedProperties.add(U);if(C.opts.unevaluated&&X.length&&C.props!==!0)C.props=fb.mergeEvaluated.props(Q,(0,fb.toHash)(X),C.props);let G=X.filter((U)=>!(0,fb.alwaysValidSchema)(C,B[U]));if(G.length===0)return;let W=Q.name("valid");for(let U of G){if(F(U))Z(U);else{if(Q.if((0,EEA.propertyInData)(Q,J,U,C.opts.ownProperties)),Z(U),!C.allErrors)Q.else().var(W,!0);Q.endIf()}A.it.definedProperties.add(U),A.ok(W)}function F(U){return C.opts.useDefaults&&!C.compositeRule&&B[U].default!==void 0}function Z(U){A.subschema({keyword:"properties",schemaProp:U,dataProp:U},W)}}};VEA.default=C6B});var qEA=R((LEA)=>{Object.defineProperty(LEA,"__esModule",{value:!0});var HEA=w5(),Sw=GB(),DEA=wB(),NEA=wB(),G6B={keyword:"patternProperties",type:"object",schemaType:"object",code(A){let{gen:Q,schema:B,data:Y,parentSchema:J,it:C}=A,{opts:X}=C,G=(0,HEA.allSchemaProperties)(B),W=G.filter((I)=>(0,DEA.alwaysValidSchema)(C,B[I]));if(G.length===0||W.length===G.length&&(!C.opts.unevaluated||C.props===!0))return;let F=X.strictSchema&&!X.allowMatchingProperties&&J.properties,Z=Q.name("valid");if(C.props!==!0&&!(C.props instanceof Sw.Name))C.props=(0,NEA.evaluatedPropsToName)(Q,C.props);let{props:U}=C;$();function $(){for(let I of G){if(F)E(I);if(C.allErrors)K(I);else Q.var(Z,!0),K(I),Q.if(Z)}}function E(I){for(let V in F)if(new RegExp(I).test(V))(0,DEA.checkStrictMode)(C,`property ${V} matches pattern ${I} (use allowMatchingProperties)`)}function K(I){Q.forIn("key",Y,(V)=>{Q.if(Sw._`${(0,HEA.usePattern)(A,I)}.test(${V})`,()=>{let H=W.includes(I);if(!H)A.subschema({keyword:"patternProperties",schemaProp:I,dataProp:V,dataPropType:NEA.Type.Str},Z);if(C.opts.unevaluated&&U!==!0)Q.assign(Sw._`${U}[${V}]`,!0);else if(!H&&!C.allErrors)Q.if((0,Sw.not)(Z),()=>Q.break())})})}}};LEA.default=G6B});var zEA=R((MEA)=>{Object.defineProperty(MEA,"__esModule",{value:!0});var F6B=wB(),Z6B={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(A){let{gen:Q,schema:B,it:Y}=A;if((0,F6B.alwaysValidSchema)(Y,B)){A.fail();return}let J=Q.name("valid");A.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},J),A.failResult(J,()=>A.reset(),()=>A.error())},error:{message:"must NOT be valid"}};MEA.default=Z6B});var wEA=R((REA)=>{Object.defineProperty(REA,"__esModule",{value:!0});var U6B=w5(),E6B={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:U6B.validateUnion,error:{message:"must match a schema in anyOf"}};REA.default=E6B});var OEA=R((jEA)=>{Object.defineProperty(jEA,"__esModule",{value:!0});var kw=GB(),V6B=wB(),I6B={message:"must match exactly one schema in oneOf",params:({params:A})=>kw._`{passingSchemas: ${A.passing}}`},H6B={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:I6B,code(A){let{gen:Q,schema:B,parentSchema:Y,it:J}=A;if(!Array.isArray(B))throw Error("ajv implementation error");if(J.opts.discriminator&&Y.discriminator)return;let C=B,X=Q.let("valid",!1),G=Q.let("passing",null),W=Q.name("_valid");A.setParams({passing:G}),Q.block(F),A.result(X,()=>A.reset(),()=>A.error(!0));function F(){C.forEach((Z,U)=>{let $;if((0,V6B.alwaysValidSchema)(J,Z))Q.var(W,!0);else $=A.subschema({keyword:"oneOf",schemaProp:U,compositeRule:!0},W);if(U>0)Q.if(kw._`${W} && ${X}`).assign(X,!1).assign(G,kw._`[${G}, ${U}]`).else();Q.if(W,()=>{if(Q.assign(X,!0),Q.assign(G,U),$)A.mergeEvaluated($,kw.Name)})})}}};jEA.default=H6B});var TEA=R((PEA)=>{Object.defineProperty(PEA,"__esModule",{value:!0});var N6B=wB(),L6B={keyword:"allOf",schemaType:"array",code(A){let{gen:Q,schema:B,it:Y}=A;if(!Array.isArray(B))throw Error("ajv implementation error");let J=Q.name("valid");B.forEach((C,X)=>{if((0,N6B.alwaysValidSchema)(Y,C))return;let G=A.subschema({keyword:"allOf",schemaProp:X},J);A.ok(J),A.mergeEvaluated(G)})}};PEA.default=L6B});var vEA=R((_EA)=>{Object.defineProperty(_EA,"__esModule",{value:!0});var _w=GB(),kEA=wB(),M6B={message:({params:A})=>_w.str`must match "${A.ifClause}" schema`,params:({params:A})=>_w._`{failingKeyword: ${A.ifClause}}`},z6B={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:M6B,code(A){let{gen:Q,parentSchema:B,it:Y}=A;if(B.then===void 0&&B.else===void 0)(0,kEA.checkStrictMode)(Y,'"if" without "then" and "else" is ignored');let J=SEA(Y,"then"),C=SEA(Y,"else");if(!J&&!C)return;let X=Q.let("valid",!0),G=Q.name("_valid");if(W(),A.reset(),J&&C){let Z=Q.let("ifClause");A.setParams({ifClause:Z}),Q.if(G,F("then",Z),F("else",Z))}else if(J)Q.if(G,F("then"));else Q.if((0,_w.not)(G),F("else"));A.pass(X,()=>A.error(!0));function W(){let Z=A.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},G);A.mergeEvaluated(Z)}function F(Z,U){return()=>{let $=A.subschema({keyword:Z},G);if(Q.assign(X,G),A.mergeValidEvaluated($,X),U)Q.assign(U,_w._`${Z}`);else A.setParams({ifClause:Z})}}}};function SEA(A,Q){let B=A.schema[Q];return B!==void 0&&!(0,kEA.alwaysValidSchema)(A,B)}_EA.default=z6B});var gEA=R((yEA)=>{Object.defineProperty(yEA,"__esModule",{value:!0});var w6B=wB(),j6B={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:A,parentSchema:Q,it:B}){if(Q.if===void 0)(0,w6B.checkStrictMode)(B,`"${A}" without "if" is ignored`)}};yEA.default=j6B});var xEA=R((hEA)=>{Object.defineProperty(hEA,"__esModule",{value:!0});var P6B=yb(),T6B=oUA(),S6B=gb(),k6B=AEA(),_6B=BEA(),v6B=WEA(),y6B=$EA(),g6B=xb(),h6B=IEA(),x6B=qEA(),f6B=zEA(),b6B=wEA(),m6B=OEA(),u6B=TEA(),d6B=vEA(),c6B=gEA();function l6B(A=!1){let Q=[f6B.default,b6B.default,m6B.default,u6B.default,d6B.default,c6B.default,y6B.default,g6B.default,v6B.default,h6B.default,x6B.default];if(A)Q.push(T6B.default,k6B.default);else Q.push(P6B.default,S6B.default);return Q.push(_6B.default),Q}hEA.default=l6B});var bEA=R((fEA)=>{Object.defineProperty(fEA,"__esModule",{value:!0});var FY=GB(),i6B={message:({schemaCode:A})=>FY.str`must match format "${A}"`,params:({schemaCode:A})=>FY._`{format: ${A}}`},n6B={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:i6B,code(A,Q){let{gen:B,data:Y,$data:J,schema:C,schemaCode:X,it:G}=A,{opts:W,errSchemaPath:F,schemaEnv:Z,self:U}=G;if(!W.validateFormats)return;if(J)$();else E();function $(){let K=B.scopeValue("formats",{ref:U.formats,code:W.code.formats}),I=B.const("fDef",FY._`${K}[${X}]`),V=B.let("fType"),H=B.let("format");B.if(FY._`typeof ${I} == "object" && !(${I} instanceof RegExp)`,()=>B.assign(V,FY._`${I}.type || "string"`).assign(H,FY._`${I}.validate`),()=>B.assign(V,FY._`"string"`).assign(H,I)),A.fail$data((0,FY.or)(D(),L()));function D(){if(W.strictSchema===!1)return FY.nil;return FY._`${X} && !${H}`}function L(){let z=Z.$async?FY._`(${I}.async ? await ${H}(${Y}) : ${H}(${Y}))`:FY._`${H}(${Y})`,M=FY._`(typeof ${H} == "function" ? ${z} : ${H}.test(${Y}))`;return FY._`${H} && ${H} !== true && ${V} === ${Q} && !${M}`}}function E(){let K=U.formats[C];if(!K){D();return}if(K===!0)return;let[I,V,H]=L(K);if(I===Q)A.pass(z());function D(){if(W.strictSchema===!1){U.logger.warn(M());return}throw Error(M());function M(){return`unknown format "${C}" ignored in schema at path "${F}"`}}function L(M){let N=M instanceof RegExp?(0,FY.regexpCode)(M):W.code.formats?FY._`${W.code.formats}${(0,FY.getProperty)(C)}`:void 0,q=B.scopeValue("formats",{key:C,ref:M,code:N});if(typeof M=="object"&&!(M instanceof RegExp))return[M.type||"string",M.validate,FY._`${q}.validate`];return["string",M,q]}function z(){if(typeof K=="object"&&!(K instanceof RegExp)&&K.async){if(!Z.$async)throw Error("async format in sync schema");return FY._`await ${H}(${Y})`}return typeof V=="function"?FY._`${H}(${Y})`:FY._`${H}.test(${Y})`}}}};fEA.default=n6B});var uEA=R((mEA)=>{Object.defineProperty(mEA,"__esModule",{value:!0});var r6B=bEA(),a6B=[r6B.default];mEA.default=a6B});var lEA=R((dEA)=>{Object.defineProperty(dEA,"__esModule",{value:!0});dEA.contentVocabulary=dEA.metadataVocabulary=void 0;dEA.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];dEA.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var nEA=R((iEA)=>{Object.defineProperty(iEA,"__esModule",{value:!0});var e6B=VUA(),AGB=dUA(),QGB=xEA(),BGB=uEA(),pEA=lEA(),YGB=[e6B.default,AGB.default,(0,QGB.default)(),BGB.default,pEA.metadataVocabulary,pEA.contentVocabulary];iEA.default=YGB});var oEA=R((rEA)=>{Object.defineProperty(rEA,"__esModule",{value:!0});rEA.DiscrError=void 0;var sEA;(function(A){A.Tag="tag",A.Mapping="mapping"})(sEA||(rEA.DiscrError=sEA={}))});var AKA=R((eEA)=>{Object.defineProperty(eEA,"__esModule",{value:!0});var HE=GB(),bb=oEA(),tEA=Kw(),CGB=zD(),XGB=wB(),GGB={message:({params:{discrError:A,tagName:Q}})=>A===bb.DiscrError.Tag?`tag "${Q}" must be string`:`value of tag "${Q}" must be in oneOf`,params:({params:{discrError:A,tag:Q,tagName:B}})=>HE._`{error: ${A}, tag: ${B}, tagValue: ${Q}}`},WGB={keyword:"discriminator",type:"object",schemaType:"object",error:GGB,code(A){let{gen:Q,data:B,schema:Y,parentSchema:J,it:C}=A,{oneOf:X}=J;if(!C.opts.discriminator)throw Error("discriminator: requires discriminator option");let G=Y.propertyName;if(typeof G!="string")throw Error("discriminator: requires propertyName");if(Y.mapping)throw Error("discriminator: mapping is not supported");if(!X)throw Error("discriminator: requires oneOf keyword");let W=Q.let("valid",!1),F=Q.const("tag",HE._`${B}${(0,HE.getProperty)(G)}`);Q.if(HE._`typeof ${F} == "string"`,()=>Z(),()=>A.error(!1,{discrError:bb.DiscrError.Tag,tag:F,tagName:G})),A.ok(W);function Z(){let E=$();Q.if(!1);for(let K in E)Q.elseIf(HE._`${F} === ${K}`),Q.assign(W,U(E[K]));Q.else(),A.error(!1,{discrError:bb.DiscrError.Mapping,tag:F,tagName:G}),Q.endIf()}function U(E){let K=Q.name("valid"),I=A.subschema({keyword:"oneOf",schemaProp:E},K);return A.mergeEvaluated(I,HE.Name),K}function $(){var E;let K={},I=H(J),V=!0;for(let z=0;z{ZGB.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var YKA=R((m9,mb)=>{Object.defineProperty(m9,"__esModule",{value:!0});m9.MissingRefError=m9.ValidationError=m9.CodeGen=m9.Name=m9.nil=m9.stringify=m9.str=m9._=m9.KeywordCxt=m9.Ajv=void 0;var $GB=CUA(),UGB=nEA(),EGB=AKA(),BKA=QKA(),KGB=["/properties"],vw="http://json-schema.org/draft-07/schema";class gD extends $GB.default{_addVocabularies(){if(super._addVocabularies(),UGB.default.forEach((A)=>this.addVocabulary(A)),this.opts.discriminator)this.addKeyword(EGB.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let A=this.opts.$data?this.$dataMetaSchema(BKA,KGB):BKA;this.addMetaSchema(A,vw,!1),this.refs["http://json-schema.org/schema"]=vw}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(vw)?vw:void 0)}}m9.Ajv=gD;mb.exports=m9=gD;mb.exports.Ajv=gD;Object.defineProperty(m9,"__esModule",{value:!0});m9.default=gD;var VGB=MD();Object.defineProperty(m9,"KeywordCxt",{enumerable:!0,get:function(){return VGB.KeywordCxt}});var DE=GB();Object.defineProperty(m9,"_",{enumerable:!0,get:function(){return DE._}});Object.defineProperty(m9,"str",{enumerable:!0,get:function(){return DE.str}});Object.defineProperty(m9,"stringify",{enumerable:!0,get:function(){return DE.stringify}});Object.defineProperty(m9,"nil",{enumerable:!0,get:function(){return DE.nil}});Object.defineProperty(m9,"Name",{enumerable:!0,get:function(){return DE.Name}});Object.defineProperty(m9,"CodeGen",{enumerable:!0,get:function(){return DE.CodeGen}});var IGB=Uw();Object.defineProperty(m9,"ValidationError",{enumerable:!0,get:function(){return IGB.default}});var HGB=zD();Object.defineProperty(m9,"MissingRefError",{enumerable:!0,get:function(){return HGB.default}})});var vKA=R((_KA)=>{Object.defineProperty(_KA,"__esModule",{value:!0});_KA.fromEnv=OGB;var kKA="HYTOPIA_API_KEY";function jGB(A){let Q=process.env[kKA];if(!Q)throw Error(`Missing environment variable ${A}`);return Q}function OGB(){return{apiKey:jGB(kKA)}}});var yKA=R((Pm)=>{Object.defineProperty(Pm,"__esModule",{value:!0});Pm.fromEnv=void 0;var TGB=vKA();Object.defineProperty(Pm,"fromEnv",{enumerable:!0,get:function(){return TGB.fromEnv}})});var hKA=R((NE)=>{var Tm=NE&&NE.__importDefault||function(A){return A&&A.__esModule?A:{default:A}};Object.defineProperty(NE,"__esModule",{value:!0});NE.LocalBackend=void 0;var Sm=Tm(u("fs")),kGB=Tm(u("path")),km=Tm(u("util")),_GB=km.default.promisify(Sm.default.mkdir),vGB=km.default.promisify(Sm.default.readFile),yGB=km.default.promisify(Sm.default.writeFile);class gKA{dataDir;constructor(A){this.dataDir=A}calculatePath(A,Q){return`${this.dataDir}/${A}/${Q}.json`}async load(A,Q){try{let B=await vGB(this.calculatePath(A,Q),"utf8"),Y=JSON.parse(B);if(!Y.__version)Y.__version=1;return Y}catch(B){return{__version:1}}}async upload(A,Q){await _GB(kGB.default.join(this.dataDir,A),{recursive:!0});var B=[];for(var[Y,J]of Object.entries(Q))B.push(yGB(this.calculatePath(A,Y),JSON.stringify(J)));await Promise.all(B)}}NE.LocalBackend=gKA});var _m=R((fKA)=>{Object.defineProperty(fKA,"__esModule",{value:!0});fKA.proxifyObject=xKA;function xKA(A,Q){for(let[B,Y]of Object.entries(A))if(Y instanceof Object)A[B]=xKA(Y,Q);return new Proxy(A,Q)}});var uKA=R((mKA)=>{Object.defineProperty(mKA,"__esModule",{value:!0});mKA.load=hGB;var bKA=_m();async function hGB(A){let Q=await this.backend.load(this.gameId,A),B=this.saveStatesManager,Y={set(C,X,G){if(typeof G==="function")return!1;if(G instanceof Object)C[X]=(0,bKA.proxifyObject)(G,Y);else C[X]=G;if(X!=="__version")B.incrementVersion(A);return!0},deleteProperty(C,X){if(X in C)delete C[X];return B.incrementVersion(A),!0}},J=(0,bKA.proxifyObject)(Q,Y);return B.setReference(A,J),J}});var iKA=R((lKA)=>{Object.defineProperty(lKA,"__esModule",{value:!0});lKA.SaveStatesManager=void 0;var dKA=_m();class cKA{_stateReferences={};_pendingSaveQueue={};_hasQueuedSaves=!1;setReference(A,Q){this._stateReferences[A]=Q}getReference(A){return this._stateReferences[A]??null}dropReference(A){if(!this._stateReferences)return;delete this._stateReferences[A]}incrementVersion(A){if(!this._stateReferences[A])return;this._hasQueuedSaves=!0;let Q=this._stateReferences[A];Q.__version+=1,this._pendingSaveQueue[A]=Q}getPendingSaves(){if(!this._hasQueuedSaves)return null;let A=JSON.parse(JSON.stringify(this._pendingSaveQueue));return this._pendingSaveQueue={},this._hasQueuedSaves=!1,A}load(A,Q){let B=this.getReference(A);if(B)return{value:B.value};let Y=this,J={set(X,G,W){if(typeof W==="function")return!1;if(W instanceof Object)X[G]=(0,dKA.proxifyObject)(W,J);else X[G]=W;if(G!=="__version")Y.incrementVersion(A);return!0},deleteProperty(X,G){if(G in X)delete X[G];return Y.incrementVersion(A),!0}},C=(0,dKA.proxifyObject)(Q.value,J);return Y.setReference(A,C),{error:void 0,value:C}}}lKA.SaveStatesManager=cKA});var sKA=R((nKA)=>{Object.defineProperty(nKA,"__esModule",{value:!0});nKA.flush=fGB;async function fGB(){let A=this.saveStatesManager.getPendingSaves();if(!A)return;await this.backend.upload(this.gameId,A)}});var tKA=R((aKA)=>{Object.defineProperty(aKA,"__esModule",{value:!0});aKA.RemoteBackend=void 0;class rKA{baseUrl;credentials;constructor(A,Q,B){this.baseUrl=A,this.credentials=Q}async load(A,Q){while(!0){try{let B=await fetch(`${this.baseUrl}/play/kv/get/${A}/${Q}`,{headers:{"X-Api-Key":this.credentials.apiKey}}),Y=await B.json();if(B.ok){if(!Y.value.__version)Y.value.__version=1;return Y.value}if(Y&&Y.error){if(Y.error.code==="keyNotFound")return{__version:1};console.warn(`[SaveStates] Got an error loading remote state for key ${Q}: ${Y.error.code}, retrying in 1s...`),await new Promise((J)=>setTimeout(J,1000));continue}throw Error("Unexpected error body")}catch(B){console.warn(`[SaveStates] Could not load remote state for key ${Q} due to a connection issue, retrying in 1s...`)}await new Promise((B)=>setTimeout(B,1000))}}async upload(A,Q){while(!0){try{let B=await fetch(`${this.baseUrl}/play/kv/setbulk/${A}`,{method:"POST",headers:{"Content-Type":"application/json","X-Api-Key":this.credentials.apiKey},body:JSON.stringify(Q)}),Y=await B.json();if(B.ok)return;if(Y&&Y.error){console.warn(`[SaveStates] Could not upload state to remote due to an error (code '${Y.error.code}'), retrying in 1s...`),await new Promise((J)=>setTimeout(J,1000));continue}throw Error("Unexpected error body")}catch(B){console.warn("[SaveStates] Could not upload state to remote due to a connection issue, retrying in 1s...")}await new Promise((B)=>setTimeout(B,1000))}}}aKA.RemoteBackend=rKA});var AVA=R((eKA)=>{Object.defineProperty(eKA,"__esModule",{value:!0});eKA.unload=mGB;async function mGB(A){this.saveStatesManager.dropReference(A),await this.flush()}});var JVA=R((BVA)=>{Object.defineProperty(BVA,"__esModule",{value:!0});BVA.SaveStatesClient=void 0;var dGB=yKA(),cGB=hKA(),lGB=uKA(),pGB=iKA(),iGB=sKA(),nGB=tKA(),sGB=AVA();function rGB(A){if(A)return A;try{let Q=(0,dGB.fromEnv)(),B=process.env.HYTOPIA_PERSUADE_CREATIVE_GATEWAY_BASE_URL??"https://prod.persuade-creative.hytopia.com",Y=process.env.HYTOPIA_GAME_ID;if(!Y)throw Error("Missing HYTOPIA_GAME_ID environment variable");return new nGB.RemoteBackend(B,Q,Y)}catch{return console.warn("[SaveStates] Couldn't load credentials from environment variables, defaulting to local backend"),new cGB.LocalBackend("dev")}}class QVA{backend;gameId;saveStatesManager;constructor(A){this.backend=rGB(A?.backend),this.gameId=A?.gameId??process.env.HYTOPIA_GAME_ID??"persistence",this.saveStatesManager=new pGB.SaveStatesManager;async function Q(B){while(!0)await B.flush(),await new Promise((Y)=>{setTimeout(Y,1000).unref()})}Q(this)}load=lGB.load;unload=sGB.unload;flush=iGB.flush}BVA.SaveStatesClient=QVA});var p6=R((uDY,GVA)=>{var CVA=["nodebuffer","arraybuffer","fragments"],XVA=typeof Blob<"u";if(XVA)CVA.push("blob");GVA.exports={BINARY_TYPES:CVA,EMPTY_BUFFER:Buffer.alloc(0),GUID:"258EAFA5-E914-47DA-95CA-C5AB0DC85B11",hasBlob:XVA,kForOnEventAttribute:Symbol("kIsForOnEventAttribute"),kListener:Symbol("kListener"),kStatusCode:Symbol("status-code"),kWebSocket:Symbol("websocket"),NOOP:()=>{}}});var mD=R((dDY,fw)=>{var{EMPTY_BUFFER:aGB}=p6(),vm=Buffer[Symbol.species];function oGB(A,Q){if(A.length===0)return aGB;if(A.length===1)return A[0];let B=Buffer.allocUnsafe(Q),Y=0;for(let J=0;J{throw new Error("Cannot require module "+"bufferutil");})();fw.exports.mask=function(Q,B,Y,J,C){if(C<48)WVA(Q,B,Y,J,C);else A.mask(Q,B,Y,J,C)},fw.exports.unmask=function(Q,B){if(Q.length<32)FVA(Q,B);else A.unmask(Q,B)}}catch(A){}});var EVA=R((cDY,UVA)=>{var ZVA=Symbol("kDone"),gm=Symbol("kRun");class $VA{constructor(A){this[ZVA]=()=>{this.pending--,this[gm]()},this.concurrency=A||1/0,this.jobs=[],this.pending=0}add(A){this.jobs.push(A),this[gm]()}[gm](){if(this.pending===this.concurrency)return;if(this.jobs.length){let A=this.jobs.shift();this.pending++,A(this[ZVA])}}}UVA.exports=$VA});var dD=R((lDY,DVA)=>{var uD=u("zlib"),KVA=mD(),eGB=EVA(),{kStatusCode:VVA}=p6(),A7B=Buffer[Symbol.species],Q7B=Buffer.from([0,0,255,255]),mw=Symbol("permessage-deflate"),i6=Symbol("total-length"),LE=Symbol("callback"),c7=Symbol("buffers"),qE=Symbol("error"),bw;class IVA{constructor(A,Q,B){if(this._maxPayload=B|0,this._options=A||{},this._threshold=this._options.threshold!==void 0?this._options.threshold:1024,this._isServer=!!Q,this._deflate=null,this._inflate=null,this.params=null,!bw){let Y=this._options.concurrencyLimit!==void 0?this._options.concurrencyLimit:10;bw=new eGB(Y)}}static get extensionName(){return"permessage-deflate"}offer(){let A={};if(this._options.serverNoContextTakeover)A.server_no_context_takeover=!0;if(this._options.clientNoContextTakeover)A.client_no_context_takeover=!0;if(this._options.serverMaxWindowBits)A.server_max_window_bits=this._options.serverMaxWindowBits;if(this._options.clientMaxWindowBits)A.client_max_window_bits=this._options.clientMaxWindowBits;else if(this._options.clientMaxWindowBits==null)A.client_max_window_bits=!0;return A}accept(A){return A=this.normalizeParams(A),this.params=this._isServer?this.acceptAsServer(A):this.acceptAsClient(A),this.params}cleanup(){if(this._inflate)this._inflate.close(),this._inflate=null;if(this._deflate){let A=this._deflate[LE];if(this._deflate.close(),this._deflate=null,A)A(Error("The deflate stream was closed while data was being processed"))}}acceptAsServer(A){let Q=this._options,B=A.find((Y)=>{if(Q.serverNoContextTakeover===!1&&Y.server_no_context_takeover||Y.server_max_window_bits&&(Q.serverMaxWindowBits===!1||typeof Q.serverMaxWindowBits==="number"&&Q.serverMaxWindowBits>Y.server_max_window_bits)||typeof Q.clientMaxWindowBits==="number"&&!Y.client_max_window_bits)return!1;return!0});if(!B)throw Error("None of the extension offers can be accepted");if(Q.serverNoContextTakeover)B.server_no_context_takeover=!0;if(Q.clientNoContextTakeover)B.client_no_context_takeover=!0;if(typeof Q.serverMaxWindowBits==="number")B.server_max_window_bits=Q.serverMaxWindowBits;if(typeof Q.clientMaxWindowBits==="number")B.client_max_window_bits=Q.clientMaxWindowBits;else if(B.client_max_window_bits===!0||Q.clientMaxWindowBits===!1)delete B.client_max_window_bits;return B}acceptAsClient(A){let Q=A[0];if(this._options.clientNoContextTakeover===!1&&Q.client_no_context_takeover)throw Error('Unexpected parameter "client_no_context_takeover"');if(!Q.client_max_window_bits){if(typeof this._options.clientMaxWindowBits==="number")Q.client_max_window_bits=this._options.clientMaxWindowBits}else if(this._options.clientMaxWindowBits===!1||typeof this._options.clientMaxWindowBits==="number"&&Q.client_max_window_bits>this._options.clientMaxWindowBits)throw Error('Unexpected or invalid parameter "client_max_window_bits"');return Q}normalizeParams(A){return A.forEach((Q)=>{Object.keys(Q).forEach((B)=>{let Y=Q[B];if(Y.length>1)throw Error(`Parameter "${B}" must have only a single value`);if(Y=Y[0],B==="client_max_window_bits"){if(Y!==!0){let J=+Y;if(!Number.isInteger(J)||J<8||J>15)throw TypeError(`Invalid value for parameter "${B}": ${Y}`);Y=J}else if(!this._isServer)throw TypeError(`Invalid value for parameter "${B}": ${Y}`)}else if(B==="server_max_window_bits"){let J=+Y;if(!Number.isInteger(J)||J<8||J>15)throw TypeError(`Invalid value for parameter "${B}": ${Y}`);Y=J}else if(B==="client_no_context_takeover"||B==="server_no_context_takeover"){if(Y!==!0)throw TypeError(`Invalid value for parameter "${B}": ${Y}`)}else throw Error(`Unknown parameter "${B}"`);Q[B]=Y})}),A}decompress(A,Q,B){bw.add((Y)=>{this._decompress(A,Q,(J,C)=>{Y(),B(J,C)})})}compress(A,Q,B){bw.add((Y)=>{this._compress(A,Q,(J,C)=>{Y(),B(J,C)})})}_decompress(A,Q,B){let Y=this._isServer?"client":"server";if(!this._inflate){let J=`${Y}_max_window_bits`,C=typeof this.params[J]!=="number"?uD.Z_DEFAULT_WINDOWBITS:this.params[J];this._inflate=uD.createInflateRaw({...this._options.zlibInflateOptions,windowBits:C}),this._inflate[mw]=this,this._inflate[i6]=0,this._inflate[c7]=[],this._inflate.on("error",Y7B),this._inflate.on("data",HVA)}if(this._inflate[LE]=B,this._inflate.write(A),Q)this._inflate.write(Q7B);this._inflate.flush(()=>{let J=this._inflate[qE];if(J){this._inflate.close(),this._inflate=null,B(J);return}let C=KVA.concat(this._inflate[c7],this._inflate[i6]);if(this._inflate._readableState.endEmitted)this._inflate.close(),this._inflate=null;else if(this._inflate[i6]=0,this._inflate[c7]=[],Q&&this.params[`${Y}_no_context_takeover`])this._inflate.reset();B(null,C)})}_compress(A,Q,B){let Y=this._isServer?"server":"client";if(!this._deflate){let J=`${Y}_max_window_bits`,C=typeof this.params[J]!=="number"?uD.Z_DEFAULT_WINDOWBITS:this.params[J];this._deflate=uD.createDeflateRaw({...this._options.zlibDeflateOptions,windowBits:C}),this._deflate[i6]=0,this._deflate[c7]=[],this._deflate.on("data",B7B)}this._deflate[LE]=B,this._deflate.write(A),this._deflate.flush(uD.Z_SYNC_FLUSH,()=>{if(!this._deflate)return;let J=KVA.concat(this._deflate[c7],this._deflate[i6]);if(Q)J=new A7B(J.buffer,J.byteOffset,J.length-4);if(this._deflate[LE]=null,this._deflate[i6]=0,this._deflate[c7]=[],Q&&this.params[`${Y}_no_context_takeover`])this._deflate.reset();B(null,J)})}}DVA.exports=IVA;function B7B(A){this[c7].push(A),this[i6]+=A.length}function HVA(A){if(this[i6]+=A.length,this[mw]._maxPayload<1||this[i6]<=this[mw]._maxPayload){this[c7].push(A);return}this[qE]=RangeError("Max payload size exceeded"),this[qE].code="WS_ERR_UNSUPPORTED_MESSAGE_LENGTH",this[qE][VVA]=1009,this.removeListener("data",HVA),this.reset()}function Y7B(A){if(this[mw]._inflate=null,this[qE]){this[LE](this[qE]);return}A[VVA]=1007,this[LE](A)}});var ME=R((pDY,uw)=>{var{isUtf8:NVA}=u("buffer"),{hasBlob:J7B}=p6(),C7B=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,1,1,1,0,0,1,1,0,1,1,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,0,1,0];function X7B(A){return A>=1000&&A<=1014&&A!==1004&&A!==1005&&A!==1006||A>=3000&&A<=4999}function hm(A){let Q=A.length,B=0;while(B=Q||(A[B+1]&192)!==128||(A[B+2]&192)!==128||A[B]===224&&(A[B+1]&224)===128||A[B]===237&&(A[B+1]&224)===160)return!1;B+=3}else if((A[B]&248)===240){if(B+3>=Q||(A[B+1]&192)!==128||(A[B+2]&192)!==128||(A[B+3]&192)!==128||A[B]===240&&(A[B+1]&240)===128||A[B]===244&&A[B+1]>143||A[B]>244)return!1;B+=4}else return!1;return!0}function G7B(A){return J7B&&typeof A==="object"&&typeof A.arrayBuffer==="function"&&typeof A.type==="string"&&typeof A.stream==="function"&&(A[Symbol.toStringTag]==="Blob"||A[Symbol.toStringTag]==="File")}uw.exports={isBlob:G7B,isValidStatusCode:X7B,isValidUTF8:hm,tokenChars:C7B};if(NVA)uw.exports.isValidUTF8=function(A){return A.length<24?hm(A):NVA(A)};else if(!process.env.WS_NO_UTF_8_VALIDATE)try{let A=(()=>{throw new Error("Cannot require module "+"utf-8-validate");})();uw.exports.isValidUTF8=function(Q){return Q.length<32?hm(Q):A(Q)}}catch(A){}});var fm=R((iDY,RVA)=>{var{Writable:W7B}=u("stream"),LVA=dD(),{BINARY_TYPES:F7B,EMPTY_BUFFER:qVA,kStatusCode:Z7B,kWebSocket:$7B}=p6(),{concat:xm,toArrayBuffer:U7B,unmask:E7B}=mD(),{isValidStatusCode:K7B,isValidUTF8:MVA}=ME(),dw=Buffer[Symbol.species];class zVA extends W7B{constructor(A={}){super();this._allowSynchronousEvents=A.allowSynchronousEvents!==void 0?A.allowSynchronousEvents:!0,this._binaryType=A.binaryType||F7B[0],this._extensions=A.extensions||{},this._isServer=!!A.isServer,this._maxPayload=A.maxPayload|0,this._skipUTF8Validation=!!A.skipUTF8Validation,this[$7B]=void 0,this._bufferedBytes=0,this._buffers=[],this._compressed=!1,this._payloadLength=0,this._mask=void 0,this._fragmented=0,this._masked=!1,this._fin=!1,this._opcode=0,this._totalPayloadLength=0,this._messageLength=0,this._fragments=[],this._errored=!1,this._loop=!1,this._state=0}_write(A,Q,B){if(this._opcode===8&&this._state==0)return B();this._bufferedBytes+=A.length,this._buffers.push(A),this.startLoop(B)}consume(A){if(this._bufferedBytes-=A,A===this._buffers[0].length)return this._buffers.shift();if(A=B.length)Q.set(this._buffers.shift(),Y);else Q.set(new Uint8Array(B.buffer,B.byteOffset,A),Y),this._buffers[0]=new dw(B.buffer,B.byteOffset+A,B.length-A);A-=B.length}while(A>0);return Q}startLoop(A){this._loop=!0;do switch(this._state){case 0:this.getInfo(A);break;case 1:this.getPayloadLength16(A);break;case 2:this.getPayloadLength64(A);break;case 3:this.getMask();break;case 4:this.getData(A);break;case 5:case 6:this._loop=!1;return}while(this._loop);if(!this._errored)A()}getInfo(A){if(this._bufferedBytes<2){this._loop=!1;return}let Q=this.consume(2);if((Q[0]&48)!==0){let Y=this.createError(RangeError,"RSV2 and RSV3 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_2_3");A(Y);return}let B=(Q[0]&64)===64;if(B&&!this._extensions[LVA.extensionName]){let Y=this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");A(Y);return}if(this._fin=(Q[0]&128)===128,this._opcode=Q[0]&15,this._payloadLength=Q[1]&127,this._opcode===0){if(B){let Y=this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");A(Y);return}if(!this._fragmented){let Y=this.createError(RangeError,"invalid opcode 0",!0,1002,"WS_ERR_INVALID_OPCODE");A(Y);return}this._opcode=this._fragmented}else if(this._opcode===1||this._opcode===2){if(this._fragmented){let Y=this.createError(RangeError,`invalid opcode ${this._opcode}`,!0,1002,"WS_ERR_INVALID_OPCODE");A(Y);return}this._compressed=B}else if(this._opcode>7&&this._opcode<11){if(!this._fin){let Y=this.createError(RangeError,"FIN must be set",!0,1002,"WS_ERR_EXPECTED_FIN");A(Y);return}if(B){let Y=this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");A(Y);return}if(this._payloadLength>125||this._opcode===8&&this._payloadLength===1){let Y=this.createError(RangeError,`invalid payload length ${this._payloadLength}`,!0,1002,"WS_ERR_INVALID_CONTROL_PAYLOAD_LENGTH");A(Y);return}}else{let Y=this.createError(RangeError,`invalid opcode ${this._opcode}`,!0,1002,"WS_ERR_INVALID_OPCODE");A(Y);return}if(!this._fin&&!this._fragmented)this._fragmented=this._opcode;if(this._masked=(Q[1]&128)===128,this._isServer){if(!this._masked){let Y=this.createError(RangeError,"MASK must be set",!0,1002,"WS_ERR_EXPECTED_MASK");A(Y);return}}else if(this._masked){let Y=this.createError(RangeError,"MASK must be clear",!0,1002,"WS_ERR_UNEXPECTED_MASK");A(Y);return}if(this._payloadLength===126)this._state=1;else if(this._payloadLength===127)this._state=2;else this.haveLength(A)}getPayloadLength16(A){if(this._bufferedBytes<2){this._loop=!1;return}this._payloadLength=this.consume(2).readUInt16BE(0),this.haveLength(A)}getPayloadLength64(A){if(this._bufferedBytes<8){this._loop=!1;return}let Q=this.consume(8),B=Q.readUInt32BE(0);if(B>Math.pow(2,21)-1){let Y=this.createError(RangeError,"Unsupported WebSocket frame: payload length > 2^53 - 1",!1,1009,"WS_ERR_UNSUPPORTED_DATA_PAYLOAD_LENGTH");A(Y);return}this._payloadLength=B*Math.pow(2,32)+Q.readUInt32BE(4),this.haveLength(A)}haveLength(A){if(this._payloadLength&&this._opcode<8){if(this._totalPayloadLength+=this._payloadLength,this._totalPayloadLength>this._maxPayload&&this._maxPayload>0){let Q=this.createError(RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH");A(Q);return}}if(this._masked)this._state=3;else this._state=4}getMask(){if(this._bufferedBytes<4){this._loop=!1;return}this._mask=this.consume(4),this._state=4}getData(A){let Q=qVA;if(this._payloadLength){if(this._bufferedBytes7){this.controlMessage(Q,A);return}if(this._compressed){this._state=5,this.decompress(Q,A);return}if(Q.length)this._messageLength=this._totalPayloadLength,this._fragments.push(Q);this.dataMessage(A)}decompress(A,Q){this._extensions[LVA.extensionName].decompress(A,this._fin,(Y,J)=>{if(Y)return Q(Y);if(J.length){if(this._messageLength+=J.length,this._messageLength>this._maxPayload&&this._maxPayload>0){let C=this.createError(RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH");Q(C);return}this._fragments.push(J)}if(this.dataMessage(Q),this._state===0)this.startLoop(Q)})}dataMessage(A){if(!this._fin){this._state=0;return}let Q=this._messageLength,B=this._fragments;if(this._totalPayloadLength=0,this._messageLength=0,this._fragmented=0,this._fragments=[],this._opcode===2){let Y;if(this._binaryType==="nodebuffer")Y=xm(B,Q);else if(this._binaryType==="arraybuffer")Y=U7B(xm(B,Q));else if(this._binaryType==="blob")Y=new Blob(B);else Y=B;if(this._allowSynchronousEvents)this.emit("message",Y,!0),this._state=0;else this._state=6,setImmediate(()=>{this.emit("message",Y,!0),this._state=0,this.startLoop(A)})}else{let Y=xm(B,Q);if(!this._skipUTF8Validation&&!MVA(Y)){let J=this.createError(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8");A(J);return}if(this._state===5||this._allowSynchronousEvents)this.emit("message",Y,!1),this._state=0;else this._state=6,setImmediate(()=>{this.emit("message",Y,!1),this._state=0,this.startLoop(A)})}}controlMessage(A,Q){if(this._opcode===8){if(A.length===0)this._loop=!1,this.emit("conclude",1005,qVA),this.end();else{let B=A.readUInt16BE(0);if(!K7B(B)){let J=this.createError(RangeError,`invalid status code ${B}`,!0,1002,"WS_ERR_INVALID_CLOSE_CODE");Q(J);return}let Y=new dw(A.buffer,A.byteOffset+2,A.length-2);if(!this._skipUTF8Validation&&!MVA(Y)){let J=this.createError(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8");Q(J);return}this._loop=!1,this.emit("conclude",B,Y),this.end()}this._state=0;return}if(this._allowSynchronousEvents)this.emit(this._opcode===9?"ping":"pong",A),this._state=0;else this._state=6,setImmediate(()=>{this.emit(this._opcode===9?"ping":"pong",A),this._state=0,this.startLoop(Q)})}createError(A,Q,B,Y,J){this._loop=!1,this._errored=!0;let C=new A(B?`Invalid WebSocket frame: ${Q}`:Q);return Error.captureStackTrace(C,this.createError),C.code=J,C[Z7B]=Y,C}}RVA.exports=zVA});var mm=R((sDY,OVA)=>{var{Duplex:nDY}=u("stream"),{randomFillSync:V7B}=u("crypto"),wVA=dD(),{EMPTY_BUFFER:I7B,kWebSocket:H7B,NOOP:D7B}=p6(),{isBlob:zE,isValidStatusCode:N7B}=ME(),{mask:jVA,toBuffer:LZ}=mD(),O5=Symbol("kByteLength"),L7B=Buffer.alloc(4),qZ,RE=8192,nC=0,q7B=1,M7B=2;class l7{constructor(A,Q,B){if(this._extensions=Q||{},B)this._generateMask=B,this._maskBuffer=Buffer.alloc(4);this._socket=A,this._firstFragment=!0,this._compress=!1,this._bufferedBytes=0,this._queue=[],this._state=nC,this.onerror=D7B,this[H7B]=void 0}static frame(A,Q){let B,Y=!1,J=2,C=!1;if(Q.mask){if(B=Q.maskBuffer||L7B,Q.generateMask)Q.generateMask(B);else{if(RE===8192){if(qZ===void 0)qZ=Buffer.alloc(8192);V7B(qZ,0,8192),RE=0}B[0]=qZ[RE++],B[1]=qZ[RE++],B[2]=qZ[RE++],B[3]=qZ[RE++]}C=(B[0]|B[1]|B[2]|B[3])===0,J=6}let X;if(typeof A==="string")if((!Q.mask||C)&&Q[O5]!==void 0)X=Q[O5];else A=Buffer.from(A),X=A.length;else X=A.length,Y=Q.mask&&Q.readOnly&&!C;let G=X;if(X>=65536)J+=8,G=127;else if(X>125)J+=2,G=126;let W=Buffer.allocUnsafe(Y?X+J:J);if(W[0]=Q.fin?Q.opcode|128:Q.opcode,Q.rsv1)W[0]|=64;if(W[1]=G,G===126)W.writeUInt16BE(X,2);else if(G===127)W[2]=W[3]=0,W.writeUIntBE(X,4,6);if(!Q.mask)return[W,A];if(W[1]|=128,W[J-4]=B[0],W[J-3]=B[1],W[J-2]=B[2],W[J-1]=B[3],C)return[W,A];if(Y)return jVA(A,B,W,J,X),[W];return jVA(A,B,A,0,X),[W,A]}close(A,Q,B,Y){let J;if(A===void 0)J=I7B;else if(typeof A!=="number"||!N7B(A))throw TypeError("First argument must be a valid error code number");else if(Q===void 0||!Q.length)J=Buffer.allocUnsafe(2),J.writeUInt16BE(A,0);else{let X=Buffer.byteLength(Q);if(X>123)throw RangeError("The message must not be greater than 123 bytes");if(J=Buffer.allocUnsafe(2+X),J.writeUInt16BE(A,0),typeof Q==="string")J.write(Q,2);else J.set(Q,2)}let C={[O5]:J.length,fin:!0,generateMask:this._generateMask,mask:B,maskBuffer:this._maskBuffer,opcode:8,readOnly:!1,rsv1:!1};if(this._state!==nC)this.enqueue([this.dispatch,J,!1,C,Y]);else this.sendFrame(l7.frame(J,C),Y)}ping(A,Q,B){let Y,J;if(typeof A==="string")Y=Buffer.byteLength(A),J=!1;else if(zE(A))Y=A.size,J=!1;else A=LZ(A),Y=A.length,J=LZ.readOnly;if(Y>125)throw RangeError("The data size must not be greater than 125 bytes");let C={[O5]:Y,fin:!0,generateMask:this._generateMask,mask:Q,maskBuffer:this._maskBuffer,opcode:9,readOnly:J,rsv1:!1};if(zE(A))if(this._state!==nC)this.enqueue([this.getBlobData,A,!1,C,B]);else this.getBlobData(A,!1,C,B);else if(this._state!==nC)this.enqueue([this.dispatch,A,!1,C,B]);else this.sendFrame(l7.frame(A,C),B)}pong(A,Q,B){let Y,J;if(typeof A==="string")Y=Buffer.byteLength(A),J=!1;else if(zE(A))Y=A.size,J=!1;else A=LZ(A),Y=A.length,J=LZ.readOnly;if(Y>125)throw RangeError("The data size must not be greater than 125 bytes");let C={[O5]:Y,fin:!0,generateMask:this._generateMask,mask:Q,maskBuffer:this._maskBuffer,opcode:10,readOnly:J,rsv1:!1};if(zE(A))if(this._state!==nC)this.enqueue([this.getBlobData,A,!1,C,B]);else this.getBlobData(A,!1,C,B);else if(this._state!==nC)this.enqueue([this.dispatch,A,!1,C,B]);else this.sendFrame(l7.frame(A,C),B)}send(A,Q,B){let Y=this._extensions[wVA.extensionName],J=Q.binary?2:1,C=Q.compress,X,G;if(typeof A==="string")X=Buffer.byteLength(A),G=!1;else if(zE(A))X=A.size,G=!1;else A=LZ(A),X=A.length,G=LZ.readOnly;if(this._firstFragment){if(this._firstFragment=!1,C&&Y&&Y.params[Y._isServer?"server_no_context_takeover":"client_no_context_takeover"])C=X>=Y._threshold;this._compress=C}else C=!1,J=0;if(Q.fin)this._firstFragment=!0;let W={[O5]:X,fin:Q.fin,generateMask:this._generateMask,mask:Q.mask,maskBuffer:this._maskBuffer,opcode:J,readOnly:G,rsv1:C};if(zE(A))if(this._state!==nC)this.enqueue([this.getBlobData,A,this._compress,W,B]);else this.getBlobData(A,this._compress,W,B);else if(this._state!==nC)this.enqueue([this.dispatch,A,this._compress,W,B]);else this.dispatch(A,this._compress,W,B)}getBlobData(A,Q,B,Y){this._bufferedBytes+=B[O5],this._state=M7B,A.arrayBuffer().then((J)=>{if(this._socket.destroyed){let X=Error("The socket was closed while the blob was being read");process.nextTick(bm,this,X,Y);return}this._bufferedBytes-=B[O5];let C=LZ(J);if(!Q)this._state=nC,this.sendFrame(l7.frame(C,B),Y),this.dequeue();else this.dispatch(C,Q,B,Y)}).catch((J)=>{process.nextTick(z7B,this,J,Y)})}dispatch(A,Q,B,Y){if(!Q){this.sendFrame(l7.frame(A,B),Y);return}let J=this._extensions[wVA.extensionName];this._bufferedBytes+=B[O5],this._state=q7B,J.compress(A,B.fin,(C,X)=>{if(this._socket.destroyed){let G=Error("The socket was closed while data was being compressed");bm(this,G,Y);return}this._bufferedBytes-=B[O5],this._state=nC,B.readOnly=!1,this.sendFrame(l7.frame(X,B),Y),this.dequeue()})}dequeue(){while(this._state===nC&&this._queue.length){let A=this._queue.shift();this._bufferedBytes-=A[3][O5],Reflect.apply(A[0],this,A.slice(1))}}enqueue(A){this._bufferedBytes+=A[3][O5],this._queue.push(A)}sendFrame(A,Q){if(A.length===2)this._socket.cork(),this._socket.write(A[0]),this._socket.write(A[1],Q),this._socket.uncork();else this._socket.write(A[0],Q)}}OVA.exports=l7;function bm(A,Q,B){if(typeof B==="function")B(Q);for(let Y=0;Y{var{kForOnEventAttribute:cD,kListener:um}=p6(),PVA=Symbol("kCode"),TVA=Symbol("kData"),SVA=Symbol("kError"),kVA=Symbol("kMessage"),_VA=Symbol("kReason"),wE=Symbol("kTarget"),vVA=Symbol("kType"),yVA=Symbol("kWasClean");class p7{constructor(A){this[wE]=null,this[vVA]=A}get target(){return this[wE]}get type(){return this[vVA]}}Object.defineProperty(p7.prototype,"target",{enumerable:!0});Object.defineProperty(p7.prototype,"type",{enumerable:!0});class jE extends p7{constructor(A,Q={}){super(A);this[PVA]=Q.code===void 0?0:Q.code,this[_VA]=Q.reason===void 0?"":Q.reason,this[yVA]=Q.wasClean===void 0?!1:Q.wasClean}get code(){return this[PVA]}get reason(){return this[_VA]}get wasClean(){return this[yVA]}}Object.defineProperty(jE.prototype,"code",{enumerable:!0});Object.defineProperty(jE.prototype,"reason",{enumerable:!0});Object.defineProperty(jE.prototype,"wasClean",{enumerable:!0});class lD extends p7{constructor(A,Q={}){super(A);this[SVA]=Q.error===void 0?null:Q.error,this[kVA]=Q.message===void 0?"":Q.message}get error(){return this[SVA]}get message(){return this[kVA]}}Object.defineProperty(lD.prototype,"error",{enumerable:!0});Object.defineProperty(lD.prototype,"message",{enumerable:!0});class lw extends p7{constructor(A,Q={}){super(A);this[TVA]=Q.data===void 0?null:Q.data}get data(){return this[TVA]}}Object.defineProperty(lw.prototype,"data",{enumerable:!0});var R7B={addEventListener(A,Q,B={}){for(let J of this.listeners(A))if(!B[cD]&&J[um]===Q&&!J[cD])return;let Y;if(A==="message")Y=function(C,X){let G=new lw("message",{data:X?C:C.toString()});G[wE]=this,cw(Q,this,G)};else if(A==="close")Y=function(C,X){let G=new jE("close",{code:C,reason:X.toString(),wasClean:this._closeFrameReceived&&this._closeFrameSent});G[wE]=this,cw(Q,this,G)};else if(A==="error")Y=function(C){let X=new lD("error",{error:C,message:C.message});X[wE]=this,cw(Q,this,X)};else if(A==="open")Y=function(){let C=new p7("open");C[wE]=this,cw(Q,this,C)};else return;if(Y[cD]=!!B[cD],Y[um]=Q,B.once)this.once(A,Y);else this.on(A,Y)},removeEventListener(A,Q){for(let B of this.listeners(A))if(B[um]===Q&&!B[cD]){this.removeListener(A,B);break}}};gVA.exports={CloseEvent:jE,ErrorEvent:lD,Event:p7,EventTarget:R7B,MessageEvent:lw};function cw(A,Q,B){if(typeof A==="object"&&A.handleEvent)A.handleEvent.call(A,B);else A.call(Q,B)}});var dm=R((aDY,xVA)=>{var{tokenChars:pD}=ME();function QX(A,Q,B){if(A[Q]===void 0)A[Q]=[B];else A[Q].push(B)}function w7B(A){let Q=Object.create(null),B=Object.create(null),Y=!1,J=!1,C=!1,X,G,W=-1,F=-1,Z=-1,U=0;for(;U{let B=A[Q];if(!Array.isArray(B))B=[B];return B.map((Y)=>{return[Q].concat(Object.keys(Y).map((J)=>{let C=Y[J];if(!Array.isArray(C))C=[C];return C.map((X)=>X===!0?J:`${J}=${X}`).join("; ")})).join("; ")}).join(", ")}).join(", ")}xVA.exports={format:j7B,parse:w7B}});var sw=R((eDY,rVA)=>{var O7B=u("events"),P7B=u("https"),T7B=u("http"),mVA=u("net"),S7B=u("tls"),{randomBytes:k7B,createHash:_7B}=u("crypto"),{Duplex:oDY,Readable:tDY}=u("stream"),{URL:cm}=u("url"),i7=dD(),v7B=fm(),y7B=mm(),{isBlob:g7B}=ME(),{BINARY_TYPES:fVA,EMPTY_BUFFER:pw,GUID:h7B,kForOnEventAttribute:lm,kListener:x7B,kStatusCode:f7B,kWebSocket:nY,NOOP:uVA}=p6(),{EventTarget:{addEventListener:b7B,removeEventListener:m7B}}=hVA(),{format:u7B,parse:d7B}=dm(),{toBuffer:c7B}=mD(),dVA=Symbol("kAborted"),pm=[8,13],n6=["CONNECTING","OPEN","CLOSING","CLOSED"],l7B=/^[!#$%&'*+\-.0-9A-Z^_`|a-z~]+$/;class xQ extends O7B{constructor(A,Q,B){super();if(this._binaryType=fVA[0],this._closeCode=1006,this._closeFrameReceived=!1,this._closeFrameSent=!1,this._closeMessage=pw,this._closeTimer=null,this._errorEmitted=!1,this._extensions={},this._paused=!1,this._protocol="",this._readyState=xQ.CONNECTING,this._receiver=null,this._sender=null,this._socket=null,A!==null){if(this._bufferedAmount=0,this._isServer=!1,this._redirects=0,Q===void 0)Q=[];else if(!Array.isArray(Q))if(typeof Q==="object"&&Q!==null)B=Q,Q=[];else Q=[Q];cVA(this,A,Q,B)}else this._autoPong=B.autoPong,this._isServer=!0}get binaryType(){return this._binaryType}set binaryType(A){if(!fVA.includes(A))return;if(this._binaryType=A,this._receiver)this._receiver._binaryType=A}get bufferedAmount(){if(!this._socket)return this._bufferedAmount;return this._socket._writableState.length+this._sender._bufferedBytes}get extensions(){return Object.keys(this._extensions).join()}get isPaused(){return this._paused}get onclose(){return null}get onerror(){return null}get onopen(){return null}get onmessage(){return null}get protocol(){return this._protocol}get readyState(){return this._readyState}get url(){return this._url}setSocket(A,Q,B){let Y=new v7B({allowSynchronousEvents:B.allowSynchronousEvents,binaryType:this.binaryType,extensions:this._extensions,isServer:this._isServer,maxPayload:B.maxPayload,skipUTF8Validation:B.skipUTF8Validation}),J=new y7B(A,this._extensions,B.generateMask);if(this._receiver=Y,this._sender=J,this._socket=A,Y[nY]=this,J[nY]=this,A[nY]=this,Y.on("conclude",n7B),Y.on("drain",s7B),Y.on("error",r7B),Y.on("message",a7B),Y.on("ping",o7B),Y.on("pong",t7B),J.onerror=e7B,A.setTimeout)A.setTimeout(0);if(A.setNoDelay)A.setNoDelay();if(Q.length>0)A.unshift(Q);A.on("close",iVA),A.on("data",nw),A.on("end",nVA),A.on("error",sVA),this._readyState=xQ.OPEN,this.emit("open")}emitClose(){if(!this._socket){this._readyState=xQ.CLOSED,this.emit("close",this._closeCode,this._closeMessage);return}if(this._extensions[i7.extensionName])this._extensions[i7.extensionName].cleanup();this._receiver.removeAllListeners(),this._readyState=xQ.CLOSED,this.emit("close",this._closeCode,this._closeMessage)}close(A,Q){if(this.readyState===xQ.CLOSED)return;if(this.readyState===xQ.CONNECTING){P8(this,this._req,"WebSocket was closed before the connection was established");return}if(this.readyState===xQ.CLOSING){if(this._closeFrameSent&&(this._closeFrameReceived||this._receiver._writableState.errorEmitted))this._socket.end();return}this._readyState=xQ.CLOSING,this._sender.close(A,Q,!this._isServer,(B)=>{if(B)return;if(this._closeFrameSent=!0,this._closeFrameReceived||this._receiver._writableState.errorEmitted)this._socket.end()}),pVA(this)}pause(){if(this.readyState===xQ.CONNECTING||this.readyState===xQ.CLOSED)return;this._paused=!0,this._socket.pause()}ping(A,Q,B){if(this.readyState===xQ.CONNECTING)throw Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof A==="function")B=A,A=Q=void 0;else if(typeof Q==="function")B=Q,Q=void 0;if(typeof A==="number")A=A.toString();if(this.readyState!==xQ.OPEN){im(this,A,B);return}if(Q===void 0)Q=!this._isServer;this._sender.ping(A||pw,Q,B)}pong(A,Q,B){if(this.readyState===xQ.CONNECTING)throw Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof A==="function")B=A,A=Q=void 0;else if(typeof Q==="function")B=Q,Q=void 0;if(typeof A==="number")A=A.toString();if(this.readyState!==xQ.OPEN){im(this,A,B);return}if(Q===void 0)Q=!this._isServer;this._sender.pong(A||pw,Q,B)}resume(){if(this.readyState===xQ.CONNECTING||this.readyState===xQ.CLOSED)return;if(this._paused=!1,!this._receiver._writableState.needDrain)this._socket.resume()}send(A,Q,B){if(this.readyState===xQ.CONNECTING)throw Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof Q==="function")B=Q,Q={};if(typeof A==="number")A=A.toString();if(this.readyState!==xQ.OPEN){im(this,A,B);return}let Y={binary:typeof A!=="string",mask:!this._isServer,compress:!0,fin:!0,...Q};if(!this._extensions[i7.extensionName])Y.compress=!1;this._sender.send(A||pw,Y,B)}terminate(){if(this.readyState===xQ.CLOSED)return;if(this.readyState===xQ.CONNECTING){P8(this,this._req,"WebSocket was closed before the connection was established");return}if(this._socket)this._readyState=xQ.CLOSING,this._socket.destroy()}}Object.defineProperty(xQ,"CONNECTING",{enumerable:!0,value:n6.indexOf("CONNECTING")});Object.defineProperty(xQ.prototype,"CONNECTING",{enumerable:!0,value:n6.indexOf("CONNECTING")});Object.defineProperty(xQ,"OPEN",{enumerable:!0,value:n6.indexOf("OPEN")});Object.defineProperty(xQ.prototype,"OPEN",{enumerable:!0,value:n6.indexOf("OPEN")});Object.defineProperty(xQ,"CLOSING",{enumerable:!0,value:n6.indexOf("CLOSING")});Object.defineProperty(xQ.prototype,"CLOSING",{enumerable:!0,value:n6.indexOf("CLOSING")});Object.defineProperty(xQ,"CLOSED",{enumerable:!0,value:n6.indexOf("CLOSED")});Object.defineProperty(xQ.prototype,"CLOSED",{enumerable:!0,value:n6.indexOf("CLOSED")});["binaryType","bufferedAmount","extensions","isPaused","protocol","readyState","url"].forEach((A)=>{Object.defineProperty(xQ.prototype,A,{enumerable:!0})});["open","error","close","message"].forEach((A)=>{Object.defineProperty(xQ.prototype,`on${A}`,{enumerable:!0,get(){for(let Q of this.listeners(A))if(Q[lm])return Q[x7B];return null},set(Q){for(let B of this.listeners(A))if(B[lm]){this.removeListener(A,B);break}if(typeof Q!=="function")return;this.addEventListener(A,Q,{[lm]:!0})}})});xQ.prototype.addEventListener=b7B;xQ.prototype.removeEventListener=m7B;rVA.exports=xQ;function cVA(A,Q,B,Y){let J={allowSynchronousEvents:!0,autoPong:!0,protocolVersion:pm[1],maxPayload:104857600,skipUTF8Validation:!1,perMessageDeflate:!0,followRedirects:!1,maxRedirects:10,...Y,socketPath:void 0,hostname:void 0,protocol:void 0,timeout:void 0,method:"GET",host:void 0,path:void 0,port:void 0};if(A._autoPong=J.autoPong,!pm.includes(J.protocolVersion))throw RangeError(`Unsupported protocol version: ${J.protocolVersion} (supported versions: ${pm.join(", ")})`);let C;if(Q instanceof cm)C=Q;else try{C=new cm(Q)}catch(I){throw SyntaxError(`Invalid URL: ${Q}`)}if(C.protocol==="http:")C.protocol="ws:";else if(C.protocol==="https:")C.protocol="wss:";A._url=C.href;let X=C.protocol==="wss:",G=C.protocol==="ws+unix:",W;if(C.protocol!=="ws:"&&!X&&!G)W=`The URL's protocol must be one of "ws:", "wss:", "http:", "https:", or "ws+unix:"`;else if(G&&!C.pathname)W="The URL's pathname is empty";else if(C.hash)W="The URL contains a fragment identifier";if(W){let I=SyntaxError(W);if(A._redirects===0)throw I;else{iw(A,I);return}}let F=X?443:80,Z=k7B(16).toString("base64"),U=X?P7B.request:T7B.request,$=new Set,E;if(J.createConnection=J.createConnection||(X?i7B:p7B),J.defaultPort=J.defaultPort||F,J.port=C.port||F,J.host=C.hostname.startsWith("[")?C.hostname.slice(1,-1):C.hostname,J.headers={...J.headers,"Sec-WebSocket-Version":J.protocolVersion,"Sec-WebSocket-Key":Z,Connection:"Upgrade",Upgrade:"websocket"},J.path=C.pathname+C.search,J.timeout=J.handshakeTimeout,J.perMessageDeflate)E=new i7(J.perMessageDeflate!==!0?J.perMessageDeflate:{},!1,J.maxPayload),J.headers["Sec-WebSocket-Extensions"]=u7B({[i7.extensionName]:E.offer()});if(B.length){for(let I of B){if(typeof I!=="string"||!l7B.test(I)||$.has(I))throw SyntaxError("An invalid or duplicated subprotocol was specified");$.add(I)}J.headers["Sec-WebSocket-Protocol"]=B.join(",")}if(J.origin)if(J.protocolVersion<13)J.headers["Sec-WebSocket-Origin"]=J.origin;else J.headers.Origin=J.origin;if(C.username||C.password)J.auth=`${C.username}:${C.password}`;if(G){let I=J.path.split(":");J.socketPath=I[0],J.path=I[1]}let K;if(J.followRedirects){if(A._redirects===0){A._originalIpc=G,A._originalSecure=X,A._originalHostOrSocketPath=G?J.socketPath:C.host;let I=Y&&Y.headers;if(Y={...Y,headers:{}},I)for(let[V,H]of Object.entries(I))Y.headers[V.toLowerCase()]=H}else if(A.listenerCount("redirect")===0){let I=G?A._originalIpc?J.socketPath===A._originalHostOrSocketPath:!1:A._originalIpc?!1:C.host===A._originalHostOrSocketPath;if(!I||A._originalSecure&&!X){if(delete J.headers.authorization,delete J.headers.cookie,!I)delete J.headers.host;J.auth=void 0}}if(J.auth&&!Y.headers.authorization)Y.headers.authorization="Basic "+Buffer.from(J.auth).toString("base64");if(K=A._req=U(J),A._redirects)A.emit("redirect",A.url,K)}else K=A._req=U(J);if(J.timeout)K.on("timeout",()=>{P8(A,K,"Opening handshake has timed out")});if(K.on("error",(I)=>{if(K===null||K[dVA])return;K=A._req=null,iw(A,I)}),K.on("response",(I)=>{let V=I.headers.location,H=I.statusCode;if(V&&J.followRedirects&&H>=300&&H<400){if(++A._redirects>J.maxRedirects){P8(A,K,"Maximum redirects exceeded");return}K.abort();let D;try{D=new cm(V,Q)}catch(L){let z=SyntaxError(`Invalid URL: ${V}`);iw(A,z);return}cVA(A,D,B,Y)}else if(!A.emit("unexpected-response",K,I))P8(A,K,`Unexpected server response: ${I.statusCode}`)}),K.on("upgrade",(I,V,H)=>{if(A.emit("upgrade",I),A.readyState!==xQ.CONNECTING)return;K=A._req=null;let D=I.headers.upgrade;if(D===void 0||D.toLowerCase()!=="websocket"){P8(A,V,"Invalid Upgrade header");return}let L=_7B("sha1").update(Z+h7B).digest("base64");if(I.headers["sec-websocket-accept"]!==L){P8(A,V,"Invalid Sec-WebSocket-Accept header");return}let z=I.headers["sec-websocket-protocol"],M;if(z!==void 0){if(!$.size)M="Server sent a subprotocol but none was requested";else if(!$.has(z))M="Server sent an invalid subprotocol"}else if($.size)M="Server sent no subprotocol";if(M){P8(A,V,M);return}if(z)A._protocol=z;let N=I.headers["sec-websocket-extensions"];if(N!==void 0){if(!E){P8(A,V,"Server sent a Sec-WebSocket-Extensions header but no extension was requested");return}let q;try{q=d7B(N)}catch(P){P8(A,V,"Invalid Sec-WebSocket-Extensions header");return}let w=Object.keys(q);if(w.length!==1||w[0]!==i7.extensionName){P8(A,V,"Server indicated an extension that was not requested");return}try{E.accept(q[i7.extensionName])}catch(P){P8(A,V,"Invalid Sec-WebSocket-Extensions header");return}A._extensions[i7.extensionName]=E}A.setSocket(V,H,{allowSynchronousEvents:J.allowSynchronousEvents,generateMask:J.generateMask,maxPayload:J.maxPayload,skipUTF8Validation:J.skipUTF8Validation})}),J.finishRequest)J.finishRequest(K,A);else K.end()}function iw(A,Q){A._readyState=xQ.CLOSING,A._errorEmitted=!0,A.emit("error",Q),A.emitClose()}function p7B(A){return A.path=A.socketPath,mVA.connect(A)}function i7B(A){if(A.path=void 0,!A.servername&&A.servername!=="")A.servername=mVA.isIP(A.host)?"":A.host;return S7B.connect(A)}function P8(A,Q,B){A._readyState=xQ.CLOSING;let Y=Error(B);if(Error.captureStackTrace(Y,P8),Q.setHeader){if(Q[dVA]=!0,Q.abort(),Q.socket&&!Q.socket.destroyed)Q.socket.destroy();process.nextTick(iw,A,Y)}else Q.destroy(Y),Q.once("error",A.emit.bind(A,"error")),Q.once("close",A.emitClose.bind(A))}function im(A,Q,B){if(Q){let Y=g7B(Q)?Q.size:c7B(Q).length;if(A._socket)A._sender._bufferedBytes+=Y;else A._bufferedAmount+=Y}if(B){let Y=Error(`WebSocket is not open: readyState ${A.readyState} (${n6[A.readyState]})`);process.nextTick(B,Y)}}function n7B(A,Q){let B=this[nY];if(B._closeFrameReceived=!0,B._closeMessage=Q,B._closeCode=A,B._socket[nY]===void 0)return;if(B._socket.removeListener("data",nw),process.nextTick(lVA,B._socket),A===1005)B.close();else B.close(A,Q)}function s7B(){let A=this[nY];if(!A.isPaused)A._socket.resume()}function r7B(A){let Q=this[nY];if(Q._socket[nY]!==void 0)Q._socket.removeListener("data",nw),process.nextTick(lVA,Q._socket),Q.close(A[f7B]);if(!Q._errorEmitted)Q._errorEmitted=!0,Q.emit("error",A)}function bVA(){this[nY].emitClose()}function a7B(A,Q){this[nY].emit("message",A,Q)}function o7B(A){let Q=this[nY];if(Q._autoPong)Q.pong(A,!this._isServer,uVA);Q.emit("ping",A)}function t7B(A){this[nY].emit("pong",A)}function lVA(A){A.resume()}function e7B(A){let Q=this[nY];if(Q.readyState===xQ.CLOSED)return;if(Q.readyState===xQ.OPEN)Q._readyState=xQ.CLOSING,pVA(Q);if(this._socket.end(),!Q._errorEmitted)Q._errorEmitted=!0,Q.emit("error",A)}function pVA(A){A._closeTimer=setTimeout(A._socket.destroy.bind(A._socket),30000)}function iVA(){let A=this[nY];this.removeListener("close",iVA),this.removeListener("data",nw),this.removeListener("end",nVA),A._readyState=xQ.CLOSING;let Q;if(!this._readableState.endEmitted&&!A._closeFrameReceived&&!A._receiver._writableState.errorEmitted&&(Q=A._socket.read())!==null)A._receiver.write(Q);if(A._receiver.end(),this[nY]=void 0,clearTimeout(A._closeTimer),A._receiver._writableState.finished||A._receiver._writableState.errorEmitted)A.emitClose();else A._receiver.on("error",bVA),A._receiver.on("finish",bVA)}function nw(A){if(!this[nY]._receiver.write(A))this.pause()}function nVA(){let A=this[nY];A._readyState=xQ.CLOSING,A._receiver.end(),this.end()}function sVA(){let A=this[nY];if(this.removeListener("error",sVA),this.on("error",uVA),A)A._readyState=xQ.CLOSING,this.destroy()}});var eVA=R((QNY,tVA)=>{var ANY=sw(),{Duplex:AWB}=u("stream");function aVA(A){A.emit("close")}function QWB(){if(!this.destroyed&&this._writableState.finished)this.destroy()}function oVA(A){if(this.removeListener("error",oVA),this.destroy(),this.listenerCount("error")===0)this.emit("error",A)}function BWB(A,Q){let B=!0,Y=new AWB({...Q,autoDestroy:!1,emitClose:!1,objectMode:!1,writableObjectMode:!1});return A.on("message",function(C,X){let G=!X&&Y._readableState.objectMode?C.toString():C;if(!Y.push(G))A.pause()}),A.once("error",function(C){if(Y.destroyed)return;B=!1,Y.destroy(C)}),A.once("close",function(){if(Y.destroyed)return;Y.push(null)}),Y._destroy=function(J,C){if(A.readyState===A.CLOSED){C(J),process.nextTick(aVA,Y);return}let X=!1;if(A.once("error",function(W){X=!0,C(W)}),A.once("close",function(){if(!X)C(J);process.nextTick(aVA,Y)}),B)A.terminate()},Y._final=function(J){if(A.readyState===A.CONNECTING){A.once("open",function(){Y._final(J)});return}if(A._socket===null)return;if(A._socket._writableState.finished){if(J(),Y._readableState.endEmitted)Y.destroy()}else A._socket.once("finish",function(){J()}),A.close()},Y._read=function(){if(A.isPaused)A.resume()},Y._write=function(J,C,X){if(A.readyState===A.CONNECTING){A.once("open",function(){Y._write(J,C,X)});return}A.send(J,X)},Y.on("end",QWB),Y.on("error",oVA),Y}tVA.exports=BWB});var QIA=R((BNY,AIA)=>{var{tokenChars:YWB}=ME();function JWB(A){let Q=new Set,B=-1,Y=-1,J=0;for(J;J{var CWB=u("events"),rw=u("http"),{Duplex:YNY}=u("stream"),{createHash:XWB}=u("crypto"),BIA=dm(),MZ=dD(),GWB=QIA(),WWB=sw(),{GUID:FWB,kWebSocket:ZWB}=p6(),$WB=/^[+/0-9A-Za-z]{22}==$/;class JIA extends CWB{constructor(A,Q){super();if(A={allowSynchronousEvents:!0,autoPong:!0,maxPayload:104857600,skipUTF8Validation:!1,perMessageDeflate:!1,handleProtocols:null,clientTracking:!0,verifyClient:null,noServer:!1,backlog:null,server:null,host:null,path:null,port:null,WebSocket:WWB,...A},A.port==null&&!A.server&&!A.noServer||A.port!=null&&(A.server||A.noServer)||A.server&&A.noServer)throw TypeError('One and only one of the "port", "server", or "noServer" options must be specified');if(A.port!=null)this._server=rw.createServer((B,Y)=>{let J=rw.STATUS_CODES[426];Y.writeHead(426,{"Content-Length":J.length,"Content-Type":"text/plain"}),Y.end(J)}),this._server.listen(A.port,A.host,A.backlog,Q);else if(A.server)this._server=A.server;if(this._server){let B=this.emit.bind(this,"connection");this._removeListeners=UWB(this._server,{listening:this.emit.bind(this,"listening"),error:this.emit.bind(this,"error"),upgrade:(Y,J,C)=>{this.handleUpgrade(Y,J,C,B)}})}if(A.perMessageDeflate===!0)A.perMessageDeflate={};if(A.clientTracking)this.clients=new Set,this._shouldEmitClose=!1;this.options=A,this._state=0}address(){if(this.options.noServer)throw Error('The server is operating in "noServer" mode');if(!this._server)return null;return this._server.address()}close(A){if(this._state===2){if(A)this.once("close",()=>{A(Error("The server is not running"))});process.nextTick(iD,this);return}if(A)this.once("close",A);if(this._state===1)return;if(this._state=1,this.options.noServer||this.options.server){if(this._server)this._removeListeners(),this._removeListeners=this._server=null;if(this.clients)if(!this.clients.size)process.nextTick(iD,this);else this._shouldEmitClose=!0;else process.nextTick(iD,this)}else{let Q=this._server;this._removeListeners(),this._removeListeners=this._server=null,Q.close(()=>{iD(this)})}}shouldHandle(A){if(this.options.path){let Q=A.url.indexOf("?");if((Q!==-1?A.url.slice(0,Q):A.url)!==this.options.path)return!1}return!0}handleUpgrade(A,Q,B,Y){Q.on("error",YIA);let J=A.headers["sec-websocket-key"],C=A.headers.upgrade,X=+A.headers["sec-websocket-version"];if(A.method!=="GET"){zZ(this,A,Q,405,"Invalid HTTP method");return}if(C===void 0||C.toLowerCase()!=="websocket"){zZ(this,A,Q,400,"Invalid Upgrade header");return}if(J===void 0||!$WB.test(J)){zZ(this,A,Q,400,"Missing or invalid Sec-WebSocket-Key header");return}if(X!==13&&X!==8){zZ(this,A,Q,400,"Missing or invalid Sec-WebSocket-Version header",{"Sec-WebSocket-Version":"13, 8"});return}if(!this.shouldHandle(A)){nD(Q,400);return}let G=A.headers["sec-websocket-protocol"],W=new Set;if(G!==void 0)try{W=GWB.parse(G)}catch(U){zZ(this,A,Q,400,"Invalid Sec-WebSocket-Protocol header");return}let F=A.headers["sec-websocket-extensions"],Z={};if(this.options.perMessageDeflate&&F!==void 0){let U=new MZ(this.options.perMessageDeflate,!0,this.options.maxPayload);try{let $=BIA.parse(F);if($[MZ.extensionName])U.accept($[MZ.extensionName]),Z[MZ.extensionName]=U}catch($){zZ(this,A,Q,400,"Invalid or unacceptable Sec-WebSocket-Extensions header");return}}if(this.options.verifyClient){let U={origin:A.headers[`${X===8?"sec-websocket-origin":"origin"}`],secure:!!(A.socket.authorized||A.socket.encrypted),req:A};if(this.options.verifyClient.length===2){this.options.verifyClient(U,($,E,K,I)=>{if(!$)return nD(Q,E||401,K,I);this.completeUpgrade(Z,J,W,A,Q,B,Y)});return}if(!this.options.verifyClient(U))return nD(Q,401)}this.completeUpgrade(Z,J,W,A,Q,B,Y)}completeUpgrade(A,Q,B,Y,J,C,X){if(!J.readable||!J.writable)return J.destroy();if(J[ZWB])throw Error("server.handleUpgrade() was called more than once with the same socket, possibly due to a misconfiguration");if(this._state>0)return nD(J,503);let W=["HTTP/1.1 101 Switching Protocols","Upgrade: websocket","Connection: Upgrade",`Sec-WebSocket-Accept: ${XWB("sha1").update(Q+FWB).digest("base64")}`],F=new this.options.WebSocket(null,void 0,this.options);if(B.size){let Z=this.options.handleProtocols?this.options.handleProtocols(B,Y):B.values().next().value;if(Z)W.push(`Sec-WebSocket-Protocol: ${Z}`),F._protocol=Z}if(A[MZ.extensionName]){let Z=A[MZ.extensionName].params,U=BIA.format({[MZ.extensionName]:[Z]});W.push(`Sec-WebSocket-Extensions: ${U}`),F._extensions=A}if(this.emit("headers",W,Y),J.write(W.concat(`\r `).join(`\r `)),J.removeListener("error",YIA),F.setSocket(J,C,{allowSynchronousEvents:this.options.allowSynchronousEvents,maxPayload:this.options.maxPayload,skipUTF8Validation:this.options.skipUTF8Validation}),this.clients)this.clients.add(F),F.on("close",()=>{if(this.clients.delete(F),this._shouldEmitClose&&!this.clients.size)process.nextTick(iD,this)});X(F,Y)}}CIA.exports=JIA;function UWB(A,Q){for(let B of Object.keys(Q))A.on(B,Q[B]);return function(){for(let Y of Object.keys(Q))A.removeListener(Y,Q[Y])}}function iD(A){A._state=2,A.emit("close")}function YIA(){this.destroy()}function nD(A,Q,B,Y){B=B||rw.STATUS_CODES[Q],Y={Connection:"close","Content-Type":"text/html","Content-Length":Buffer.byteLength(B),...Y},A.once("finish",A.destroy),A.end(`HTTP/1.1 ${Q} ${rw.STATUS_CODES[Q]}\r `+Object.keys(Y).map((J)=>`${J}: ${Y[J]}`).join(`\r `)+`\r \r -`+B)}function MZ(A,Q,B,Y,J,C){if(A.listenerCount("wsClientError")){let X=Error(J);Error.captureStackTrace(X,MZ),A.emit("wsClientError",X,B,Q)}else nD(B,Y,J,C)}});var om=R(($IA)=>{Object.defineProperty($IA,"__esModule",{value:!0});$IA.buildDefaultCredentialsProvider=LWB;function LWB(){let A=process.env.HYTOPIA_API_KEY,Q=process.env.HYTOPIA_GAME_ID,B=process.env.HYTOPIA_LOBBY_ID;if(!A)throw Error("Missing environment variable HYTOPIA_API_KEY");if(!Q)throw Error("Missing environment variable HYTOPIA_GAME_ID");if(!B)throw Error("Missing environment variable HYTOPIA_LOBBY_ID");return async()=>({apiKey:A,gameId:Q,lobbyId:B})}});var EIA=R((UIA)=>{Object.defineProperty(UIA,"__esModule",{value:!0});UIA.getLoadout=MWB;async function MWB(A){return await fetch(`${this.context.baseUrl}/Locker/GetLoadoutForGameByUserId/${A}`).then((Q)=>Q.json()).then((Q)=>Q).catch(()=>({error:{code:"networkError",message:"A network error happened"}}))}});var IIA=R((VIA)=>{Object.defineProperty(VIA,"__esModule",{value:!0});VIA.default=KIA;function KIA(A){if(!A)return A;for(let[B,Y]of Object.entries(A))if(typeof Y==="string"){var Q=/^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2}(?:\.\d*))(?:Z|(\+|-)([\d|:]*))?$/;if(Q.test(Y))A[B]=new Date(Y)}else if(typeof Y==="object")KIA(Y);return A}});var HIA=R((sD)=>{var wWB=sD&&sD.__importDefault||function(A){return A&&A.__esModule?A:{default:A}};Object.defineProperty(sD,"__esModule",{value:!0});sD.getSession=OWB;var jWB=wWB(IIA());async function OWB(A){let Q=await this.context.credentialsProvider();return await fetch(`${this.context.baseUrl}/Play/Matchmaking/Lobbies/ValidateSession`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({lobbyId:Q.lobbyId,sessionToken:A})}).then((B)=>B.json()).then((B)=>(0,jWB.default)(B)).then((B)=>B).catch(()=>({error:{code:"networkError",message:"A network error happened"}}))}});var NIA=R((DIA)=>{Object.defineProperty(DIA,"__esModule",{value:!0});DIA.get=PWB;async function PWB(A){let Q=await this.context.credentialsProvider();return await fetch(`${this.context.baseUrl}/Play/KV/Get/${Q.gameId}/${A}`,{headers:{"X-Api-Key":Q.apiKey}}).then((B)=>B.json()).then((B)=>B).catch(()=>({error:{code:"networkError",message:"A network error happened"}}))}});var qIA=R((LIA)=>{Object.defineProperty(LIA,"__esModule",{value:!0});LIA.set=SWB;async function SWB(A,Q,B="merge"){let Y=await this.context.credentialsProvider();return await fetch(`${this.context.baseUrl}/Play/KV/Set/${Y.gameId}/${A}?mode=${B}`,{method:"POST",headers:{"Content-Type":"application/json","X-Api-Key":Y.apiKey},body:JSON.stringify(Q)}).then((J)=>J.json()).then((J)=>J).catch(()=>({error:{code:"networkError",message:"A network error happened"}}))}});var zIA=R((MIA)=>{Object.defineProperty(MIA,"__esModule",{value:!0});MIA.unset=_WB;async function _WB(A){let Q=await this.context.credentialsProvider();return await fetch(`${this.context.baseUrl}/Play/KV/Unset/${Q.gameId}/${A}`,{method:"DELETE",headers:{"X-Api-Key":Q.apiKey}}).then((B)=>B.json()).then((B)=>B).catch(()=>({error:{code:"networkError",message:"A network error happened"}}))}});var OIA=R((wIA)=>{Object.defineProperty(wIA,"__esModule",{value:!0});wIA.KVClient=void 0;var yWB=NIA(),gWB=qIA(),hWB=zIA();class RIA{context;constructor(A){this.context=A}get=yWB.get;set=gWB.set;unset=hWB.unset}wIA.KVClient=RIA});var _IA=R((TIA)=>{Object.defineProperty(TIA,"__esModule",{value:!0});TIA.CreativeGateway=TIA.DEFAULT_BASE_URL=void 0;var xWB=om(),fWB=EIA(),bWB=HIA(),mWB=OIA();TIA.DEFAULT_BASE_URL="https://prod.creative.hytopia.com";class PIA{context;kv;constructor(A){if(A?.baseUrl){if(!A.baseUrl.startsWith("https://")&&!A.baseUrl.startsWith("http://"))throw Error("Base URL, if provided, must start with https:// or http://");if(A.baseUrl.endsWith("/"))throw Error("Base URL, if provided, must not end with '/'")}this.context={baseUrl:A?.baseUrl??process.env.HYTOPIA_CREATIVE_GATEWAY_BASE_URL??TIA.DEFAULT_BASE_URL,credentialsProvider:A?.credentialsProvider??(0,xWB.buildDefaultCredentialsProvider)()},this.kv=new mWB.KVClient(this.context)}getLoadout=fWB.getLoadout;getSession=bWB.getSession}TIA.CreativeGateway=PIA});var vIA=R((ow)=>{Object.defineProperty(ow,"__esModule",{value:!0});ow.buildDefaultCredentialsProvider=ow.CreativeGateway=void 0;var uWB=_IA();Object.defineProperty(ow,"CreativeGateway",{enumerable:!0,get:function(){return uWB.CreativeGateway}});var dWB=om();Object.defineProperty(ow,"buildDefaultCredentialsProvider",{enumerable:!0,get:function(){return dWB.buildDefaultCredentialsProvider}})});var cIA=R((uIA)=>{Object.defineProperty(uIA,"__esModule",{value:!0});uIA.default=void 0;var bLY=uIA.default="ffffffff-ffff-ffff-ffff-ffffffffffff"});var iIA=R((lIA)=>{Object.defineProperty(lIA,"__esModule",{value:!0});lIA.default=void 0;var uLY=lIA.default="00000000-0000-0000-0000-000000000000"});var rIA=R((nIA)=>{Object.defineProperty(nIA,"__esModule",{value:!0});nIA.default=void 0;var cLY=nIA.default=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/i});var CN=R((aIA)=>{Object.defineProperty(aIA,"__esModule",{value:!0});aIA.default=void 0;var aWB=oWB(rIA());function oWB(A){return A&&A.__esModule?A:{default:A}}function tWB(A){return typeof A==="string"&&aWB.default.test(A)}var pLY=aIA.default=tWB});var XN=R((tIA)=>{Object.defineProperty(tIA,"__esModule",{value:!0});tIA.default=void 0;var eWB=AFB(CN());function AFB(A){return A&&A.__esModule?A:{default:A}}function QFB(A){if(!(0,eWB.default)(A))throw TypeError("Invalid UUID");let Q,B=new Uint8Array(16);return B[0]=(Q=parseInt(A.slice(0,8),16))>>>24,B[1]=Q>>>16&255,B[2]=Q>>>8&255,B[3]=Q&255,B[4]=(Q=parseInt(A.slice(9,13),16))>>>8,B[5]=Q&255,B[6]=(Q=parseInt(A.slice(14,18),16))>>>8,B[7]=Q&255,B[8]=(Q=parseInt(A.slice(19,23),16))>>>8,B[9]=Q&255,B[10]=(Q=parseInt(A.slice(24,36),16))/1099511627776&255,B[11]=Q/4294967296&255,B[12]=Q>>>24&255,B[13]=Q>>>16&255,B[14]=Q>>>8&255,B[15]=Q&255,B}var nLY=tIA.default=QFB});var s6=R((QHA)=>{Object.defineProperty(QHA,"__esModule",{value:!0});QHA.default=void 0;QHA.unsafeStringify=AHA;var BFB=YFB(CN());function YFB(A){return A&&A.__esModule?A:{default:A}}var $J=[];for(let A=0;A<256;++A)$J.push((A+256).toString(16).slice(1));function AHA(A,Q=0){return($J[A[Q+0]]+$J[A[Q+1]]+$J[A[Q+2]]+$J[A[Q+3]]+"-"+$J[A[Q+4]]+$J[A[Q+5]]+"-"+$J[A[Q+6]]+$J[A[Q+7]]+"-"+$J[A[Q+8]]+$J[A[Q+9]]+"-"+$J[A[Q+10]]+$J[A[Q+11]]+$J[A[Q+12]]+$J[A[Q+13]]+$J[A[Q+14]]+$J[A[Q+15]]).toLowerCase()}function JFB(A,Q=0){let B=AHA(A,Q);if(!(0,BFB.default)(B))throw TypeError("Stringified UUID is invalid");return B}var rLY=QHA.default=JFB});var Bj=R((YHA)=>{Object.defineProperty(YHA,"__esModule",{value:!0});YHA.default=WFB;var XFB=GFB(u("node:crypto"));function GFB(A){return A&&A.__esModule?A:{default:A}}var Qj=new Uint8Array(256),Aj=Qj.length;function WFB(){if(Aj>Qj.length-16)XFB.default.randomFillSync(Qj),Aj=0;return Qj.slice(Aj,Aj+=16)}});var Gu=R((JHA)=>{Object.defineProperty(JHA,"__esModule",{value:!0});JHA.default=void 0;var ZFB=UFB(Bj()),$FB=s6();function UFB(A){return A&&A.__esModule?A:{default:A}}var Ju,Yj,Cu=0,Xu=0;function EFB(A,Q,B){let Y=Q&&B||0,J=Q||Array(16);A=A||{};let{node:C,clockseq:X}=A;if(!A._v6){if(!C)C=Ju;if(X==null)X=Yj}if(C==null||X==null){let $=A.random||(A.rng||ZFB.default)();if(C==null){if(C=[$[0],$[1],$[2],$[3],$[4],$[5]],!Ju&&!A._v6)C[0]|=1,Ju=C}if(X==null){if(X=($[6]<<8|$[7])&16383,Yj===void 0&&!A._v6)Yj=X}}let G=A.msecs!==void 0?A.msecs:Date.now(),W=A.nsecs!==void 0?A.nsecs:Xu+1,F=G-Cu+(W-Xu)/1e4;if(F<0&&A.clockseq===void 0)X=X+1&16383;if((F<0||G>Cu)&&A.nsecs===void 0)W=0;if(W>=1e4)throw Error("uuid.v1(): Can't create more than 10M uuids/sec");Cu=G,Xu=W,Yj=X,G+=12219292800000;let Z=((G&268435455)*1e4+W)%4294967296;J[Y++]=Z>>>24&255,J[Y++]=Z>>>16&255,J[Y++]=Z>>>8&255,J[Y++]=Z&255;let U=G/4294967296*1e4&268435455;J[Y++]=U>>>8&255,J[Y++]=U&255,J[Y++]=U>>>24&15|16,J[Y++]=U>>>16&255,J[Y++]=X>>>8|128,J[Y++]=X&255;for(let $=0;$<6;++$)J[Y+$]=C[$];return Q||(0,$FB.unsafeStringify)(J)}var tLY=JHA.default=EFB});var Wu=R((XHA)=>{Object.defineProperty(XHA,"__esModule",{value:!0});XHA.default=HFB;var KFB=IFB(XN()),VFB=s6();function IFB(A){return A&&A.__esModule?A:{default:A}}function HFB(A){let Q=typeof A==="string"?(0,KFB.default)(A):A,B=DFB(Q);return typeof A==="string"?(0,VFB.unsafeStringify)(B):B}function DFB(A,Q=!1){return Uint8Array.of((A[6]&15)<<4|A[7]>>4&15,(A[7]&15)<<4|(A[4]&240)>>4,(A[4]&15)<<4|(A[5]&240)>>4,(A[5]&15)<<4|(A[0]&240)>>4,(A[0]&15)<<4|(A[1]&240)>>4,(A[1]&15)<<4|(A[2]&240)>>4,96|A[2]&15,A[3],A[8],A[9],A[10],A[11],A[12],A[13],A[14],A[15])}});var Fu=R((GHA)=>{Object.defineProperty(GHA,"__esModule",{value:!0});GHA.URL=GHA.DNS=void 0;GHA.default=jFB;var LFB=s6(),qFB=MFB(XN());function MFB(A){return A&&A.__esModule?A:{default:A}}function zFB(A){A=unescape(encodeURIComponent(A));let Q=[];for(let B=0;B{Object.defineProperty(FHA,"__esModule",{value:!0});FHA.default=void 0;var TFB=SFB(u("node:crypto"));function SFB(A){return A&&A.__esModule?A:{default:A}}function kFB(A){if(Array.isArray(A))A=Buffer.from(A);else if(typeof A==="string")A=Buffer.from(A,"utf8");return TFB.default.createHash("md5").update(A).digest()}var BqY=FHA.default=kFB});var VHA=R((EHA)=>{Object.defineProperty(EHA,"__esModule",{value:!0});EHA.default=void 0;var _FB=UHA(Fu()),vFB=UHA($HA());function UHA(A){return A&&A.__esModule?A:{default:A}}var yFB=(0,_FB.default)("v3",48,vFB.default),JqY=EHA.default=yFB});var DHA=R((IHA)=>{Object.defineProperty(IHA,"__esModule",{value:!0});IHA.default=void 0;var gFB=hFB(u("node:crypto"));function hFB(A){return A&&A.__esModule?A:{default:A}}var XqY=IHA.default={randomUUID:gFB.default.randomUUID}});var zHA=R((qHA)=>{Object.defineProperty(qHA,"__esModule",{value:!0});qHA.default=void 0;var NHA=LHA(DHA()),xFB=LHA(Bj()),fFB=s6();function LHA(A){return A&&A.__esModule?A:{default:A}}function bFB(A,Q,B){if(NHA.default.randomUUID&&!Q&&!A)return NHA.default.randomUUID();A=A||{};let Y=A.random||(A.rng||xFB.default)();if(Y[6]=Y[6]&15|64,Y[8]=Y[8]&63|128,Q){B=B||0;for(let J=0;J<16;++J)Q[B+J]=Y[J];return Q}return(0,fFB.unsafeStringify)(Y)}var WqY=qHA.default=bFB});var jHA=R((RHA)=>{Object.defineProperty(RHA,"__esModule",{value:!0});RHA.default=void 0;var mFB=uFB(u("node:crypto"));function uFB(A){return A&&A.__esModule?A:{default:A}}function dFB(A){if(Array.isArray(A))A=Buffer.from(A);else if(typeof A==="string")A=Buffer.from(A,"utf8");return mFB.default.createHash("sha1").update(A).digest()}var ZqY=RHA.default=dFB});var SHA=R((PHA)=>{Object.defineProperty(PHA,"__esModule",{value:!0});PHA.default=void 0;var cFB=OHA(Fu()),lFB=OHA(jHA());function OHA(A){return A&&A.__esModule?A:{default:A}}var pFB=(0,cFB.default)("v5",80,lFB.default),UqY=PHA.default=pFB});var vHA=R((_HA)=>{Object.defineProperty(_HA,"__esModule",{value:!0});_HA.default=rFB;var iFB=s6(),nFB=kHA(Gu()),sFB=kHA(Wu());function kHA(A){return A&&A.__esModule?A:{default:A}}function rFB(A={},Q,B=0){let Y=(0,nFB.default)({...A,_v6:!0},new Uint8Array(16));if(Y=(0,sFB.default)(Y),Q){for(let J=0;J<16;J++)Q[B+J]=Y[J];return Q}return(0,iFB.unsafeStringify)(Y)}});var gHA=R((yHA)=>{Object.defineProperty(yHA,"__esModule",{value:!0});yHA.default=AZB;var oFB=eFB(XN()),tFB=s6();function eFB(A){return A&&A.__esModule?A:{default:A}}function AZB(A){let Q=typeof A==="string"?(0,oFB.default)(A):A,B=QZB(Q);return typeof A==="string"?(0,tFB.unsafeStringify)(B):B}function QZB(A){return Uint8Array.of((A[3]&15)<<4|A[4]>>4&15,(A[4]&15)<<4|(A[5]&240)>>4,(A[5]&15)<<4|A[6]&15,A[7],(A[1]&15)<<4|(A[2]&240)>>4,(A[2]&15)<<4|(A[3]&240)>>4,16|(A[0]&240)>>4,(A[0]&15)<<4|(A[1]&240)>>4,A[8],A[9],A[10],A[11],A[12],A[13],A[14],A[15])}});var mHA=R((fHA)=>{Object.defineProperty(fHA,"__esModule",{value:!0});fHA.default=void 0;var YZB=CZB(Bj()),JZB=s6();function CZB(A){return A&&A.__esModule?A:{default:A}}var hHA=null,xHA=null,sC=0;function XZB(A,Q,B){A=A||{};let Y=Q&&B||0,J=Q||new Uint8Array(16),C=A.random||(A.rng||YZB.default)(),X=A.msecs!==void 0?A.msecs:Date.now(),G=A.seq!==void 0?A.seq:null,W=xHA,F=hHA;if(X>sC&&A.msecs===void 0){if(sC=X,G!==null)W=null,F=null}if(G!==null){if(G>2147483647)G=2147483647;W=G>>>19&4095,F=G&524287}if(W===null||F===null)W=C[6]&127,W=W<<8|C[7],F=C[8]&63,F=F<<8|C[9],F=F<<5|C[10]>>>3;if(X+1e4>sC&&G===null){if(++F>524287){if(F=0,++W>4095)W=0,sC++}}else sC=X;return xHA=W,hHA=F,J[Y++]=sC/1099511627776&255,J[Y++]=sC/4294967296&255,J[Y++]=sC/16777216&255,J[Y++]=sC/65536&255,J[Y++]=sC/256&255,J[Y++]=sC&255,J[Y++]=W>>>4&15|112,J[Y++]=W&255,J[Y++]=F>>>13&63|128,J[Y++]=F>>>5&255,J[Y++]=F<<3&255|C[10]&7,J[Y++]=C[11],J[Y++]=C[12],J[Y++]=C[13],J[Y++]=C[14],J[Y++]=C[15],Q||(0,JZB.unsafeStringify)(J)}var IqY=fHA.default=XZB});var cHA=R((uHA)=>{Object.defineProperty(uHA,"__esModule",{value:!0});uHA.default=void 0;var GZB=WZB(CN());function WZB(A){return A&&A.__esModule?A:{default:A}}function FZB(A){if(!(0,GZB.default)(A))throw TypeError("Invalid UUID");return parseInt(A.slice(14,15),16)}var DqY=uHA.default=FZB});var lHA=R((PJ)=>{Object.defineProperty(PJ,"__esModule",{value:!0});Object.defineProperty(PJ,"MAX",{enumerable:!0,get:function(){return ZZB.default}});Object.defineProperty(PJ,"NIL",{enumerable:!0,get:function(){return $ZB.default}});Object.defineProperty(PJ,"parse",{enumerable:!0,get:function(){return UZB.default}});Object.defineProperty(PJ,"stringify",{enumerable:!0,get:function(){return EZB.default}});Object.defineProperty(PJ,"v1",{enumerable:!0,get:function(){return KZB.default}});Object.defineProperty(PJ,"v1ToV6",{enumerable:!0,get:function(){return VZB.default}});Object.defineProperty(PJ,"v3",{enumerable:!0,get:function(){return IZB.default}});Object.defineProperty(PJ,"v4",{enumerable:!0,get:function(){return HZB.default}});Object.defineProperty(PJ,"v5",{enumerable:!0,get:function(){return DZB.default}});Object.defineProperty(PJ,"v6",{enumerable:!0,get:function(){return NZB.default}});Object.defineProperty(PJ,"v6ToV1",{enumerable:!0,get:function(){return LZB.default}});Object.defineProperty(PJ,"v7",{enumerable:!0,get:function(){return qZB.default}});Object.defineProperty(PJ,"validate",{enumerable:!0,get:function(){return MZB.default}});Object.defineProperty(PJ,"version",{enumerable:!0,get:function(){return zZB.default}});var ZZB=l9(cIA()),$ZB=l9(iIA()),UZB=l9(XN()),EZB=l9(s6()),KZB=l9(Gu()),VZB=l9(Wu()),IZB=l9(VHA()),HZB=l9(zHA()),DZB=l9(SHA()),NZB=l9(vHA()),LZB=l9(gHA()),qZB=l9(mHA()),MZB=l9(CN()),zZB=l9(cHA());function l9(A){return A&&A.__esModule?A:{default:A}}});var xDA=R((tqY,hDA)=>{var aZB=u("fs"),rC=u("path"),oZB=u("url"),jDA=u("os"),ODA=typeof __webpack_require__==="function"?__non_webpack_require__:u,tZB=process.config&&process.config.variables||{},eZB=!!process.env.PREBUILDS_ONLY,Su=process.versions,Ou=Su.modules;if(Su.deno||process.isBun)Ou="unsupported";var ju=B$B()?"electron":Q$B()?"node-webkit":"node",Kj=process.env.npm_config_arch||jDA.arch(),Vj=process.env.npm_config_platform||jDA.platform(),PDA=process.env.LIBC||(Y$B(Vj)?"musl":"glibc"),Pu=process.env.ARM_VERSION||(Kj==="arm64"?"8":tZB.arm_version)||"",TDA=(Su.uv||"").split(".")[0];hDA.exports=CX;function CX(A){return ODA(CX.resolve(A))}CX.resolve=CX.path=function(A){A=rC.resolve(A||".");var Q="",B;try{Q=ODA(rC.join(A,"package.json")).name;var Y=Q.toUpperCase().replace(/-/g,"_");if(process.env[Y+"_PREBUILD"])A=process.env[Y+"_PREBUILD"]}catch(I){B=I}if(!eZB){var J=RDA(rC.join(A,"build/Release"),wDA);if(J)return J;var C=RDA(rC.join(A,"build/Debug"),wDA);if(C)return C}var X=E(A);if(X)return X;var G=E(rC.dirname(process.execPath));if(G)return G;var W=(Q[0]=="@"?"":"@"+Q+"/")+Q+"-"+Vj+"-"+Kj,F;try{var Z=rC.dirname(u("module").createRequire(oZB.pathToFileURL(rC.join(A,"package.json"))).resolve(W));return K(Z)}catch(I){F=I}var U=["platform="+Vj,"arch="+Kj,"runtime="+ju,"abi="+Ou,"uv="+TDA,Pu?"armv="+Pu:"","libc="+PDA,"node="+process.versions.node,process.versions.electron?"electron="+process.versions.electron:"",typeof __webpack_require__==="function"?"webpack=true":""].filter(Boolean).join(" ");let $="No native build was found for "+U+` +`+B)}function zZ(A,Q,B,Y,J,C){if(A.listenerCount("wsClientError")){let X=Error(J);Error.captureStackTrace(X,zZ),A.emit("wsClientError",X,B,Q)}else nD(B,Y,J,C)}});var om=R(($IA)=>{Object.defineProperty($IA,"__esModule",{value:!0});$IA.buildDefaultCredentialsProvider=LWB;function LWB(){let A=process.env.HYTOPIA_API_KEY,Q=process.env.HYTOPIA_GAME_ID,B=process.env.HYTOPIA_LOBBY_ID;if(!A)throw Error("Missing environment variable HYTOPIA_API_KEY");if(!Q)throw Error("Missing environment variable HYTOPIA_GAME_ID");if(!B)throw Error("Missing environment variable HYTOPIA_LOBBY_ID");return async()=>({apiKey:A,gameId:Q,lobbyId:B})}});var EIA=R((UIA)=>{Object.defineProperty(UIA,"__esModule",{value:!0});UIA.getLoadout=MWB;async function MWB(A){return await fetch(`${this.context.baseUrl}/Locker/GetLoadoutForGameByUserId/${A}`).then((Q)=>Q.json()).then((Q)=>Q).catch(()=>({error:{code:"networkError",message:"A network error happened"}}))}});var IIA=R((VIA)=>{Object.defineProperty(VIA,"__esModule",{value:!0});VIA.default=KIA;function KIA(A){if(!A)return A;for(let[B,Y]of Object.entries(A))if(typeof Y==="string"){var Q=/^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2}(?:\.\d*))(?:Z|(\+|-)([\d|:]*))?$/;if(Q.test(Y))A[B]=new Date(Y)}else if(typeof Y==="object")KIA(Y);return A}});var HIA=R((sD)=>{var wWB=sD&&sD.__importDefault||function(A){return A&&A.__esModule?A:{default:A}};Object.defineProperty(sD,"__esModule",{value:!0});sD.getSession=OWB;var jWB=wWB(IIA());async function OWB(A){let Q=await this.context.credentialsProvider();return await fetch(`${this.context.baseUrl}/Play/Matchmaking/Lobbies/ValidateSession`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({lobbyId:Q.lobbyId,sessionToken:A})}).then((B)=>B.json()).then((B)=>(0,jWB.default)(B)).then((B)=>B).catch(()=>({error:{code:"networkError",message:"A network error happened"}}))}});var NIA=R((DIA)=>{Object.defineProperty(DIA,"__esModule",{value:!0});DIA.get=PWB;async function PWB(A){let Q=await this.context.credentialsProvider();return await fetch(`${this.context.baseUrl}/Play/KV/Get/${Q.gameId}/${A}`,{headers:{"X-Api-Key":Q.apiKey}}).then((B)=>B.json()).then((B)=>B).catch(()=>({error:{code:"networkError",message:"A network error happened"}}))}});var qIA=R((LIA)=>{Object.defineProperty(LIA,"__esModule",{value:!0});LIA.set=SWB;async function SWB(A,Q,B="merge"){let Y=await this.context.credentialsProvider();return await fetch(`${this.context.baseUrl}/Play/KV/Set/${Y.gameId}/${A}?mode=${B}`,{method:"POST",headers:{"Content-Type":"application/json","X-Api-Key":Y.apiKey},body:JSON.stringify(Q)}).then((J)=>J.json()).then((J)=>J).catch(()=>({error:{code:"networkError",message:"A network error happened"}}))}});var zIA=R((MIA)=>{Object.defineProperty(MIA,"__esModule",{value:!0});MIA.unset=_WB;async function _WB(A){let Q=await this.context.credentialsProvider();return await fetch(`${this.context.baseUrl}/Play/KV/Unset/${Q.gameId}/${A}`,{method:"DELETE",headers:{"X-Api-Key":Q.apiKey}}).then((B)=>B.json()).then((B)=>B).catch(()=>({error:{code:"networkError",message:"A network error happened"}}))}});var OIA=R((wIA)=>{Object.defineProperty(wIA,"__esModule",{value:!0});wIA.KVClient=void 0;var yWB=NIA(),gWB=qIA(),hWB=zIA();class RIA{context;constructor(A){this.context=A}get=yWB.get;set=gWB.set;unset=hWB.unset}wIA.KVClient=RIA});var _IA=R((TIA)=>{Object.defineProperty(TIA,"__esModule",{value:!0});TIA.CreativeGateway=TIA.DEFAULT_BASE_URL=void 0;var xWB=om(),fWB=EIA(),bWB=HIA(),mWB=OIA();TIA.DEFAULT_BASE_URL="https://prod.creative.hytopia.com";class PIA{context;kv;constructor(A){if(A?.baseUrl){if(!A.baseUrl.startsWith("https://")&&!A.baseUrl.startsWith("http://"))throw Error("Base URL, if provided, must start with https:// or http://");if(A.baseUrl.endsWith("/"))throw Error("Base URL, if provided, must not end with '/'")}this.context={baseUrl:A?.baseUrl??process.env.HYTOPIA_CREATIVE_GATEWAY_BASE_URL??TIA.DEFAULT_BASE_URL,credentialsProvider:A?.credentialsProvider??(0,xWB.buildDefaultCredentialsProvider)()},this.kv=new mWB.KVClient(this.context)}getLoadout=fWB.getLoadout;getSession=bWB.getSession}TIA.CreativeGateway=PIA});var vIA=R((ow)=>{Object.defineProperty(ow,"__esModule",{value:!0});ow.buildDefaultCredentialsProvider=ow.CreativeGateway=void 0;var uWB=_IA();Object.defineProperty(ow,"CreativeGateway",{enumerable:!0,get:function(){return uWB.CreativeGateway}});var dWB=om();Object.defineProperty(ow,"buildDefaultCredentialsProvider",{enumerable:!0,get:function(){return dWB.buildDefaultCredentialsProvider}})});var cIA=R((uIA)=>{Object.defineProperty(uIA,"__esModule",{value:!0});uIA.default=void 0;var bLY=uIA.default="ffffffff-ffff-ffff-ffff-ffffffffffff"});var iIA=R((lIA)=>{Object.defineProperty(lIA,"__esModule",{value:!0});lIA.default=void 0;var uLY=lIA.default="00000000-0000-0000-0000-000000000000"});var rIA=R((nIA)=>{Object.defineProperty(nIA,"__esModule",{value:!0});nIA.default=void 0;var cLY=nIA.default=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/i});var CN=R((aIA)=>{Object.defineProperty(aIA,"__esModule",{value:!0});aIA.default=void 0;var aWB=oWB(rIA());function oWB(A){return A&&A.__esModule?A:{default:A}}function tWB(A){return typeof A==="string"&&aWB.default.test(A)}var pLY=aIA.default=tWB});var XN=R((tIA)=>{Object.defineProperty(tIA,"__esModule",{value:!0});tIA.default=void 0;var eWB=AFB(CN());function AFB(A){return A&&A.__esModule?A:{default:A}}function QFB(A){if(!(0,eWB.default)(A))throw TypeError("Invalid UUID");let Q,B=new Uint8Array(16);return B[0]=(Q=parseInt(A.slice(0,8),16))>>>24,B[1]=Q>>>16&255,B[2]=Q>>>8&255,B[3]=Q&255,B[4]=(Q=parseInt(A.slice(9,13),16))>>>8,B[5]=Q&255,B[6]=(Q=parseInt(A.slice(14,18),16))>>>8,B[7]=Q&255,B[8]=(Q=parseInt(A.slice(19,23),16))>>>8,B[9]=Q&255,B[10]=(Q=parseInt(A.slice(24,36),16))/1099511627776&255,B[11]=Q/4294967296&255,B[12]=Q>>>24&255,B[13]=Q>>>16&255,B[14]=Q>>>8&255,B[15]=Q&255,B}var nLY=tIA.default=QFB});var s6=R((QHA)=>{Object.defineProperty(QHA,"__esModule",{value:!0});QHA.default=void 0;QHA.unsafeStringify=AHA;var BFB=YFB(CN());function YFB(A){return A&&A.__esModule?A:{default:A}}var $J=[];for(let A=0;A<256;++A)$J.push((A+256).toString(16).slice(1));function AHA(A,Q=0){return($J[A[Q+0]]+$J[A[Q+1]]+$J[A[Q+2]]+$J[A[Q+3]]+"-"+$J[A[Q+4]]+$J[A[Q+5]]+"-"+$J[A[Q+6]]+$J[A[Q+7]]+"-"+$J[A[Q+8]]+$J[A[Q+9]]+"-"+$J[A[Q+10]]+$J[A[Q+11]]+$J[A[Q+12]]+$J[A[Q+13]]+$J[A[Q+14]]+$J[A[Q+15]]).toLowerCase()}function JFB(A,Q=0){let B=AHA(A,Q);if(!(0,BFB.default)(B))throw TypeError("Stringified UUID is invalid");return B}var rLY=QHA.default=JFB});var Bj=R((YHA)=>{Object.defineProperty(YHA,"__esModule",{value:!0});YHA.default=WFB;var XFB=GFB(u("node:crypto"));function GFB(A){return A&&A.__esModule?A:{default:A}}var Qj=new Uint8Array(256),Aj=Qj.length;function WFB(){if(Aj>Qj.length-16)XFB.default.randomFillSync(Qj),Aj=0;return Qj.slice(Aj,Aj+=16)}});var Gu=R((JHA)=>{Object.defineProperty(JHA,"__esModule",{value:!0});JHA.default=void 0;var ZFB=UFB(Bj()),$FB=s6();function UFB(A){return A&&A.__esModule?A:{default:A}}var Ju,Yj,Cu=0,Xu=0;function EFB(A,Q,B){let Y=Q&&B||0,J=Q||Array(16);A=A||{};let{node:C,clockseq:X}=A;if(!A._v6){if(!C)C=Ju;if(X==null)X=Yj}if(C==null||X==null){let $=A.random||(A.rng||ZFB.default)();if(C==null){if(C=[$[0],$[1],$[2],$[3],$[4],$[5]],!Ju&&!A._v6)C[0]|=1,Ju=C}if(X==null){if(X=($[6]<<8|$[7])&16383,Yj===void 0&&!A._v6)Yj=X}}let G=A.msecs!==void 0?A.msecs:Date.now(),W=A.nsecs!==void 0?A.nsecs:Xu+1,F=G-Cu+(W-Xu)/1e4;if(F<0&&A.clockseq===void 0)X=X+1&16383;if((F<0||G>Cu)&&A.nsecs===void 0)W=0;if(W>=1e4)throw Error("uuid.v1(): Can't create more than 10M uuids/sec");Cu=G,Xu=W,Yj=X,G+=12219292800000;let Z=((G&268435455)*1e4+W)%4294967296;J[Y++]=Z>>>24&255,J[Y++]=Z>>>16&255,J[Y++]=Z>>>8&255,J[Y++]=Z&255;let U=G/4294967296*1e4&268435455;J[Y++]=U>>>8&255,J[Y++]=U&255,J[Y++]=U>>>24&15|16,J[Y++]=U>>>16&255,J[Y++]=X>>>8|128,J[Y++]=X&255;for(let $=0;$<6;++$)J[Y+$]=C[$];return Q||(0,$FB.unsafeStringify)(J)}var tLY=JHA.default=EFB});var Wu=R((XHA)=>{Object.defineProperty(XHA,"__esModule",{value:!0});XHA.default=HFB;var KFB=IFB(XN()),VFB=s6();function IFB(A){return A&&A.__esModule?A:{default:A}}function HFB(A){let Q=typeof A==="string"?(0,KFB.default)(A):A,B=DFB(Q);return typeof A==="string"?(0,VFB.unsafeStringify)(B):B}function DFB(A,Q=!1){return Uint8Array.of((A[6]&15)<<4|A[7]>>4&15,(A[7]&15)<<4|(A[4]&240)>>4,(A[4]&15)<<4|(A[5]&240)>>4,(A[5]&15)<<4|(A[0]&240)>>4,(A[0]&15)<<4|(A[1]&240)>>4,(A[1]&15)<<4|(A[2]&240)>>4,96|A[2]&15,A[3],A[8],A[9],A[10],A[11],A[12],A[13],A[14],A[15])}});var Fu=R((GHA)=>{Object.defineProperty(GHA,"__esModule",{value:!0});GHA.URL=GHA.DNS=void 0;GHA.default=jFB;var LFB=s6(),qFB=MFB(XN());function MFB(A){return A&&A.__esModule?A:{default:A}}function zFB(A){A=unescape(encodeURIComponent(A));let Q=[];for(let B=0;B{Object.defineProperty(FHA,"__esModule",{value:!0});FHA.default=void 0;var TFB=SFB(u("node:crypto"));function SFB(A){return A&&A.__esModule?A:{default:A}}function kFB(A){if(Array.isArray(A))A=Buffer.from(A);else if(typeof A==="string")A=Buffer.from(A,"utf8");return TFB.default.createHash("md5").update(A).digest()}var BqY=FHA.default=kFB});var VHA=R((EHA)=>{Object.defineProperty(EHA,"__esModule",{value:!0});EHA.default=void 0;var _FB=UHA(Fu()),vFB=UHA($HA());function UHA(A){return A&&A.__esModule?A:{default:A}}var yFB=(0,_FB.default)("v3",48,vFB.default),JqY=EHA.default=yFB});var DHA=R((IHA)=>{Object.defineProperty(IHA,"__esModule",{value:!0});IHA.default=void 0;var gFB=hFB(u("node:crypto"));function hFB(A){return A&&A.__esModule?A:{default:A}}var XqY=IHA.default={randomUUID:gFB.default.randomUUID}});var zHA=R((qHA)=>{Object.defineProperty(qHA,"__esModule",{value:!0});qHA.default=void 0;var NHA=LHA(DHA()),xFB=LHA(Bj()),fFB=s6();function LHA(A){return A&&A.__esModule?A:{default:A}}function bFB(A,Q,B){if(NHA.default.randomUUID&&!Q&&!A)return NHA.default.randomUUID();A=A||{};let Y=A.random||(A.rng||xFB.default)();if(Y[6]=Y[6]&15|64,Y[8]=Y[8]&63|128,Q){B=B||0;for(let J=0;J<16;++J)Q[B+J]=Y[J];return Q}return(0,fFB.unsafeStringify)(Y)}var WqY=qHA.default=bFB});var jHA=R((RHA)=>{Object.defineProperty(RHA,"__esModule",{value:!0});RHA.default=void 0;var mFB=uFB(u("node:crypto"));function uFB(A){return A&&A.__esModule?A:{default:A}}function dFB(A){if(Array.isArray(A))A=Buffer.from(A);else if(typeof A==="string")A=Buffer.from(A,"utf8");return mFB.default.createHash("sha1").update(A).digest()}var ZqY=RHA.default=dFB});var SHA=R((PHA)=>{Object.defineProperty(PHA,"__esModule",{value:!0});PHA.default=void 0;var cFB=OHA(Fu()),lFB=OHA(jHA());function OHA(A){return A&&A.__esModule?A:{default:A}}var pFB=(0,cFB.default)("v5",80,lFB.default),UqY=PHA.default=pFB});var vHA=R((_HA)=>{Object.defineProperty(_HA,"__esModule",{value:!0});_HA.default=rFB;var iFB=s6(),nFB=kHA(Gu()),sFB=kHA(Wu());function kHA(A){return A&&A.__esModule?A:{default:A}}function rFB(A={},Q,B=0){let Y=(0,nFB.default)({...A,_v6:!0},new Uint8Array(16));if(Y=(0,sFB.default)(Y),Q){for(let J=0;J<16;J++)Q[B+J]=Y[J];return Q}return(0,iFB.unsafeStringify)(Y)}});var gHA=R((yHA)=>{Object.defineProperty(yHA,"__esModule",{value:!0});yHA.default=AZB;var oFB=eFB(XN()),tFB=s6();function eFB(A){return A&&A.__esModule?A:{default:A}}function AZB(A){let Q=typeof A==="string"?(0,oFB.default)(A):A,B=QZB(Q);return typeof A==="string"?(0,tFB.unsafeStringify)(B):B}function QZB(A){return Uint8Array.of((A[3]&15)<<4|A[4]>>4&15,(A[4]&15)<<4|(A[5]&240)>>4,(A[5]&15)<<4|A[6]&15,A[7],(A[1]&15)<<4|(A[2]&240)>>4,(A[2]&15)<<4|(A[3]&240)>>4,16|(A[0]&240)>>4,(A[0]&15)<<4|(A[1]&240)>>4,A[8],A[9],A[10],A[11],A[12],A[13],A[14],A[15])}});var mHA=R((fHA)=>{Object.defineProperty(fHA,"__esModule",{value:!0});fHA.default=void 0;var YZB=CZB(Bj()),JZB=s6();function CZB(A){return A&&A.__esModule?A:{default:A}}var hHA=null,xHA=null,sC=0;function XZB(A,Q,B){A=A||{};let Y=Q&&B||0,J=Q||new Uint8Array(16),C=A.random||(A.rng||YZB.default)(),X=A.msecs!==void 0?A.msecs:Date.now(),G=A.seq!==void 0?A.seq:null,W=xHA,F=hHA;if(X>sC&&A.msecs===void 0){if(sC=X,G!==null)W=null,F=null}if(G!==null){if(G>2147483647)G=2147483647;W=G>>>19&4095,F=G&524287}if(W===null||F===null)W=C[6]&127,W=W<<8|C[7],F=C[8]&63,F=F<<8|C[9],F=F<<5|C[10]>>>3;if(X+1e4>sC&&G===null){if(++F>524287){if(F=0,++W>4095)W=0,sC++}}else sC=X;return xHA=W,hHA=F,J[Y++]=sC/1099511627776&255,J[Y++]=sC/4294967296&255,J[Y++]=sC/16777216&255,J[Y++]=sC/65536&255,J[Y++]=sC/256&255,J[Y++]=sC&255,J[Y++]=W>>>4&15|112,J[Y++]=W&255,J[Y++]=F>>>13&63|128,J[Y++]=F>>>5&255,J[Y++]=F<<3&255|C[10]&7,J[Y++]=C[11],J[Y++]=C[12],J[Y++]=C[13],J[Y++]=C[14],J[Y++]=C[15],Q||(0,JZB.unsafeStringify)(J)}var IqY=fHA.default=XZB});var cHA=R((uHA)=>{Object.defineProperty(uHA,"__esModule",{value:!0});uHA.default=void 0;var GZB=WZB(CN());function WZB(A){return A&&A.__esModule?A:{default:A}}function FZB(A){if(!(0,GZB.default)(A))throw TypeError("Invalid UUID");return parseInt(A.slice(14,15),16)}var DqY=uHA.default=FZB});var lHA=R((PJ)=>{Object.defineProperty(PJ,"__esModule",{value:!0});Object.defineProperty(PJ,"MAX",{enumerable:!0,get:function(){return ZZB.default}});Object.defineProperty(PJ,"NIL",{enumerable:!0,get:function(){return $ZB.default}});Object.defineProperty(PJ,"parse",{enumerable:!0,get:function(){return UZB.default}});Object.defineProperty(PJ,"stringify",{enumerable:!0,get:function(){return EZB.default}});Object.defineProperty(PJ,"v1",{enumerable:!0,get:function(){return KZB.default}});Object.defineProperty(PJ,"v1ToV6",{enumerable:!0,get:function(){return VZB.default}});Object.defineProperty(PJ,"v3",{enumerable:!0,get:function(){return IZB.default}});Object.defineProperty(PJ,"v4",{enumerable:!0,get:function(){return HZB.default}});Object.defineProperty(PJ,"v5",{enumerable:!0,get:function(){return DZB.default}});Object.defineProperty(PJ,"v6",{enumerable:!0,get:function(){return NZB.default}});Object.defineProperty(PJ,"v6ToV1",{enumerable:!0,get:function(){return LZB.default}});Object.defineProperty(PJ,"v7",{enumerable:!0,get:function(){return qZB.default}});Object.defineProperty(PJ,"validate",{enumerable:!0,get:function(){return MZB.default}});Object.defineProperty(PJ,"version",{enumerable:!0,get:function(){return zZB.default}});var ZZB=l9(cIA()),$ZB=l9(iIA()),UZB=l9(XN()),EZB=l9(s6()),KZB=l9(Gu()),VZB=l9(Wu()),IZB=l9(VHA()),HZB=l9(zHA()),DZB=l9(SHA()),NZB=l9(vHA()),LZB=l9(gHA()),qZB=l9(mHA()),MZB=l9(CN()),zZB=l9(cHA());function l9(A){return A&&A.__esModule?A:{default:A}}});var xDA=R((tqY,hDA)=>{var aZB=u("fs"),rC=u("path"),oZB=u("url"),jDA=u("os"),ODA=typeof __webpack_require__==="function"?__non_webpack_require__:u,tZB=process.config&&process.config.variables||{},eZB=!!process.env.PREBUILDS_ONLY,Su=process.versions,Ou=Su.modules;if(Su.deno||process.isBun)Ou="unsupported";var ju=B$B()?"electron":Q$B()?"node-webkit":"node",Kj=process.env.npm_config_arch||jDA.arch(),Vj=process.env.npm_config_platform||jDA.platform(),PDA=process.env.LIBC||(Y$B(Vj)?"musl":"glibc"),Pu=process.env.ARM_VERSION||(Kj==="arm64"?"8":tZB.arm_version)||"",TDA=(Su.uv||"").split(".")[0];hDA.exports=CX;function CX(A){return ODA(CX.resolve(A))}CX.resolve=CX.path=function(A){A=rC.resolve(A||".");var Q="",B;try{Q=ODA(rC.join(A,"package.json")).name;var Y=Q.toUpperCase().replace(/-/g,"_");if(process.env[Y+"_PREBUILD"])A=process.env[Y+"_PREBUILD"]}catch(I){B=I}if(!eZB){var J=RDA(rC.join(A,"build/Release"),wDA);if(J)return J;var C=RDA(rC.join(A,"build/Debug"),wDA);if(C)return C}var X=E(A);if(X)return X;var G=E(rC.dirname(process.execPath));if(G)return G;var W=(Q[0]=="@"?"":"@"+Q+"/")+Q+"-"+Vj+"-"+Kj,F;try{var Z=rC.dirname(u("module").createRequire(oZB.pathToFileURL(rC.join(A,"package.json"))).resolve(W));return K(Z)}catch(I){F=I}var U=["platform="+Vj,"arch="+Kj,"runtime="+ju,"abi="+Ou,"uv="+TDA,Pu?"armv="+Pu:"","libc="+PDA,"node="+process.versions.node,process.versions.electron?"electron="+process.versions.electron:"",typeof __webpack_require__==="function"?"webpack=true":""].filter(Boolean).join(" ");let $="No native build was found for "+U+` attempted loading from: `+A+" and package: "+W+` `;if(B)$+="Error finding package.json: "+B.message+` `;if(F)$+="Error resolving package: "+F.message+` -`;throw Error($);function E(I){var V=Tu(rC.join(I,"prebuilds")).map(SDA),H=V.filter(kDA(Vj,Kj)).sort(_DA)[0];if(!H)return;return K(rC.join(I,"prebuilds",H.name))}function K(I){var V=Tu(I).map(vDA),H=V.filter(yDA(ju,Ou)),D=H.sort(gDA(ju))[0];if(D)return rC.join(I,D.file)}};function Tu(A){try{return aZB.readdirSync(A)}catch(Q){return[]}}function RDA(A,Q){var B=Tu(A).filter(Q);return B[0]&&rC.join(A,B[0])}function wDA(A){return/\.node$/.test(A)}function SDA(A){var Q=A.split("-");if(Q.length!==2)return;var B=Q[0],Y=Q[1].split("+");if(!B)return;if(!Y.length)return;if(!Y.every(Boolean))return;return{name:A,platform:B,architectures:Y}}function kDA(A,Q){return function(B){if(B==null)return!1;if(B.platform!==A)return!1;return B.architectures.includes(Q)}}function _DA(A,Q){return A.architectures.length-Q.architectures.length}function vDA(A){var Q=A.split("."),B=Q.pop(),Y={file:A,specificity:0};if(B!=="node")return;for(var J=0;JB.specificity?-1:1;else return 0}}function Q$B(){return!!(process.versions&&process.versions.nw)}function B$B(){if(process.versions&&process.versions.electron)return!0;if(process.env.ELECTRON_RUN_AS_NODE)return!0;return typeof window<"u"&&window.process&&window.process.type==="renderer"}function Y$B(A){if(A!=="linux")return!1;let{familySync:Q,MUSL:B}=AH();return Q()===B}CX.parseTags=vDA;CX.matchTags=yDA;CX.compareTags=gDA;CX.parseTuple=SDA;CX.matchTuple=kDA;CX.compareTuples=_DA});var fDA=R((AMY,_u)=>{var ku=typeof __webpack_require__==="function"?__non_webpack_require__:u;if(typeof ku.addon==="function")_u.exports=ku.addon.bind(ku);else _u.exports=xDA()});var mDA=R((BMY,bDA)=>{var __dirname="/home/ab/GitHub/hytopia/work1/server/node_modules/msgpackr-extract";bDA.exports=fDA()(__dirname)});var mLA=R((fLA)=>{Object.defineProperty(fLA,"__esModule",{value:!0});fLA._globalThis=void 0;fLA._globalThis=typeof globalThis==="object"?globalThis:global});var uLA=R((iZ)=>{var lUB=iZ&&iZ.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),pUB=iZ&&iZ.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))lUB(Q,A,B)};Object.defineProperty(iZ,"__esModule",{value:!0});pUB(mLA(),iZ)});var dLA=R((nZ)=>{var iUB=nZ&&nZ.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),nUB=nZ&&nZ.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))iUB(Q,A,B)};Object.defineProperty(nZ,"__esModule",{value:!0});nUB(uLA(),nZ)});var $c=R((cLA)=>{Object.defineProperty(cLA,"__esModule",{value:!0});cLA.VERSION=void 0;cLA.VERSION="1.9.0"});var rLA=R((nLA)=>{Object.defineProperty(nLA,"__esModule",{value:!0});nLA.isCompatible=nLA._makeCompatibilityCheck=void 0;var sUB=$c(),pLA=/^(\d+)\.(\d+)\.(\d+)(-(.+))?$/;function iLA(A){let Q=new Set([A]),B=new Set,Y=A.match(pLA);if(!Y)return()=>!1;let J={major:+Y[1],minor:+Y[2],patch:+Y[3],prerelease:Y[4]};if(J.prerelease!=null)return function(W){return W===A};function C(G){return B.add(G),!1}function X(G){return Q.add(G),!0}return function(W){if(Q.has(W))return!0;if(B.has(W))return!1;let F=W.match(pLA);if(!F)return C(W);let Z={major:+F[1],minor:+F[2],patch:+F[3],prerelease:F[4]};if(Z.prerelease!=null)return C(W);if(J.major!==Z.major)return C(W);if(J.major===0){if(J.minor===Z.minor&&J.patch<=Z.patch)return X(W);return C(W)}if(J.minor<=Z.minor)return X(W);return C(W)}}nLA._makeCompatibilityCheck=iLA;nLA.isCompatible=iLA(sUB.VERSION)});var sZ=R((aLA)=>{Object.defineProperty(aLA,"__esModule",{value:!0});aLA.unregisterGlobal=aLA.getGlobal=aLA.registerGlobal=void 0;var aUB=dLA(),oE=$c(),oUB=rLA(),tUB=oE.VERSION.split(".")[0],mN=Symbol.for(`opentelemetry.js.api.${tUB}`),uN=aUB._globalThis;function eUB(A,Q,B,Y=!1){var J;let C=uN[mN]=(J=uN[mN])!==null&&J!==void 0?J:{version:oE.VERSION};if(!Y&&C[A]){let X=Error(`@opentelemetry/api: Attempted duplicate registration of API: ${A}`);return B.error(X.stack||X.message),!1}if(C.version!==oE.VERSION){let X=Error(`@opentelemetry/api: Registration of version v${C.version} for ${A} does not match previously registered API v${oE.VERSION}`);return B.error(X.stack||X.message),!1}return C[A]=Q,B.debug(`@opentelemetry/api: Registered a global for ${A} v${oE.VERSION}.`),!0}aLA.registerGlobal=eUB;function AEB(A){var Q,B;let Y=(Q=uN[mN])===null||Q===void 0?void 0:Q.version;if(!Y||!(0,oUB.isCompatible)(Y))return;return(B=uN[mN])===null||B===void 0?void 0:B[A]}aLA.getGlobal=AEB;function QEB(A,Q){Q.debug(`@opentelemetry/api: Unregistering a global for ${A} v${oE.VERSION}.`);let B=uN[mN];if(B)delete B[A]}aLA.unregisterGlobal=QEB});var QqA=R((eLA)=>{Object.defineProperty(eLA,"__esModule",{value:!0});eLA.DiagComponentLogger=void 0;var JEB=sZ();class tLA{constructor(A){this._namespace=A.namespace||"DiagComponentLogger"}debug(...A){return dN("debug",this._namespace,A)}error(...A){return dN("error",this._namespace,A)}info(...A){return dN("info",this._namespace,A)}warn(...A){return dN("warn",this._namespace,A)}verbose(...A){return dN("verbose",this._namespace,A)}}eLA.DiagComponentLogger=tLA;function dN(A,Q,B){let Y=(0,JEB.getGlobal)("diag");if(!Y)return;return B.unshift(Q),Y[A](...B)}});var aj=R((BqA)=>{Object.defineProperty(BqA,"__esModule",{value:!0});BqA.DiagLogLevel=void 0;var CEB;(function(A){A[A.NONE=0]="NONE",A[A.ERROR=30]="ERROR",A[A.WARN=50]="WARN",A[A.INFO=60]="INFO",A[A.DEBUG=70]="DEBUG",A[A.VERBOSE=80]="VERBOSE",A[A.ALL=9999]="ALL"})(CEB=BqA.DiagLogLevel||(BqA.DiagLogLevel={}))});var CqA=R((YqA)=>{Object.defineProperty(YqA,"__esModule",{value:!0});YqA.createLogLevelDiagLogger=void 0;var GG=aj();function XEB(A,Q){if(AGG.DiagLogLevel.ALL)A=GG.DiagLogLevel.ALL;Q=Q||{};function B(Y,J){let C=Q[Y];if(typeof C==="function"&&A>=J)return C.bind(Q);return function(){}}return{error:B("error",GG.DiagLogLevel.ERROR),warn:B("warn",GG.DiagLogLevel.WARN),info:B("info",GG.DiagLogLevel.INFO),debug:B("debug",GG.DiagLogLevel.DEBUG),verbose:B("verbose",GG.DiagLogLevel.VERBOSE)}}YqA.createLogLevelDiagLogger=XEB});var rZ=R((GqA)=>{Object.defineProperty(GqA,"__esModule",{value:!0});GqA.DiagAPI=void 0;var GEB=QqA(),WEB=CqA(),XqA=aj(),oj=sZ(),FEB="diag";class Ec{constructor(){function A(Y){return function(...J){let C=(0,oj.getGlobal)("diag");if(!C)return;return C[Y](...J)}}let Q=this,B=(Y,J={logLevel:XqA.DiagLogLevel.INFO})=>{var C,X,G;if(Y===Q){let Z=Error("Cannot use diag as the logger for itself. Please use a DiagLogger implementation like ConsoleDiagLogger or a custom implementation");return Q.error((C=Z.stack)!==null&&C!==void 0?C:Z.message),!1}if(typeof J==="number")J={logLevel:J};let W=(0,oj.getGlobal)("diag"),F=(0,WEB.createLogLevelDiagLogger)((X=J.logLevel)!==null&&X!==void 0?X:XqA.DiagLogLevel.INFO,Y);if(W&&!J.suppressOverrideMessage){let Z=(G=Error().stack)!==null&&G!==void 0?G:"";W.warn(`Current logger will be overwritten from ${Z}`),F.warn(`Current logger will overwrite one already registered from ${Z}`)}return(0,oj.registerGlobal)("diag",F,Q,!0)};Q.setLogger=B,Q.disable=()=>{(0,oj.unregisterGlobal)(FEB,Q)},Q.createComponentLogger=(Y)=>{return new GEB.DiagComponentLogger(Y)},Q.verbose=A("verbose"),Q.debug=A("debug"),Q.info=A("info"),Q.warn=A("warn"),Q.error=A("error")}static instance(){if(!this._instance)this._instance=new Ec;return this._instance}}GqA.DiagAPI=Ec});var $qA=R((FqA)=>{Object.defineProperty(FqA,"__esModule",{value:!0});FqA.BaggageImpl=void 0;class tE{constructor(A){this._entries=A?new Map(A):new Map}getEntry(A){let Q=this._entries.get(A);if(!Q)return;return Object.assign({},Q)}getAllEntries(){return Array.from(this._entries.entries()).map(([A,Q])=>[A,Q])}setEntry(A,Q){let B=new tE(this._entries);return B._entries.set(A,Q),B}removeEntry(A){let Q=new tE(this._entries);return Q._entries.delete(A),Q}removeEntries(...A){let Q=new tE(this._entries);for(let B of A)Q._entries.delete(B);return Q}clear(){return new tE}}FqA.BaggageImpl=tE});var KqA=R((UqA)=>{Object.defineProperty(UqA,"__esModule",{value:!0});UqA.baggageEntryMetadataSymbol=void 0;UqA.baggageEntryMetadataSymbol=Symbol("BaggageEntryMetadata")});var Kc=R((VqA)=>{Object.defineProperty(VqA,"__esModule",{value:!0});VqA.baggageEntryMetadataFromString=VqA.createBaggage=void 0;var ZEB=rZ(),$EB=$qA(),UEB=KqA(),EEB=ZEB.DiagAPI.instance();function KEB(A={}){return new $EB.BaggageImpl(new Map(Object.entries(A)))}VqA.createBaggage=KEB;function VEB(A){if(typeof A!=="string")EEB.error(`Cannot create baggage metadata from unknown type: ${typeof A}`),A="";return{__TYPE__:UEB.baggageEntryMetadataSymbol,toString(){return A}}}VqA.baggageEntryMetadataFromString=VEB});var cN=R((HqA)=>{Object.defineProperty(HqA,"__esModule",{value:!0});HqA.ROOT_CONTEXT=HqA.createContextKey=void 0;function HEB(A){return Symbol.for(A)}HqA.createContextKey=HEB;class tj{constructor(A){let Q=this;Q._currentContext=A?new Map(A):new Map,Q.getValue=(B)=>Q._currentContext.get(B),Q.setValue=(B,Y)=>{let J=new tj(Q._currentContext);return J._currentContext.set(B,Y),J},Q.deleteValue=(B)=>{let Y=new tj(Q._currentContext);return Y._currentContext.delete(B),Y}}}HqA.ROOT_CONTEXT=new tj});var MqA=R((LqA)=>{Object.defineProperty(LqA,"__esModule",{value:!0});LqA.DiagConsoleLogger=void 0;var Vc=[{n:"error",c:"error"},{n:"warn",c:"warn"},{n:"info",c:"info"},{n:"debug",c:"debug"},{n:"verbose",c:"trace"}];class NqA{constructor(){function A(Q){return function(...B){if(console){let Y=console[Q];if(typeof Y!=="function")Y=console.log;if(typeof Y==="function")return Y.apply(console,B)}}}for(let Q=0;Q{Object.defineProperty(zqA,"__esModule",{value:!0});zqA.createNoopMeter=zqA.NOOP_OBSERVABLE_UP_DOWN_COUNTER_METRIC=zqA.NOOP_OBSERVABLE_GAUGE_METRIC=zqA.NOOP_OBSERVABLE_COUNTER_METRIC=zqA.NOOP_UP_DOWN_COUNTER_METRIC=zqA.NOOP_HISTOGRAM_METRIC=zqA.NOOP_GAUGE_METRIC=zqA.NOOP_COUNTER_METRIC=zqA.NOOP_METER=zqA.NoopObservableUpDownCounterMetric=zqA.NoopObservableGaugeMetric=zqA.NoopObservableCounterMetric=zqA.NoopObservableMetric=zqA.NoopHistogramMetric=zqA.NoopGaugeMetric=zqA.NoopUpDownCounterMetric=zqA.NoopCounterMetric=zqA.NoopMetric=zqA.NoopMeter=void 0;class Ic{constructor(){}createGauge(A,Q){return zqA.NOOP_GAUGE_METRIC}createHistogram(A,Q){return zqA.NOOP_HISTOGRAM_METRIC}createCounter(A,Q){return zqA.NOOP_COUNTER_METRIC}createUpDownCounter(A,Q){return zqA.NOOP_UP_DOWN_COUNTER_METRIC}createObservableGauge(A,Q){return zqA.NOOP_OBSERVABLE_GAUGE_METRIC}createObservableCounter(A,Q){return zqA.NOOP_OBSERVABLE_COUNTER_METRIC}createObservableUpDownCounter(A,Q){return zqA.NOOP_OBSERVABLE_UP_DOWN_COUNTER_METRIC}addBatchObservableCallback(A,Q){}removeBatchObservableCallback(A){}}zqA.NoopMeter=Ic;class eE{}zqA.NoopMetric=eE;class Hc extends eE{add(A,Q){}}zqA.NoopCounterMetric=Hc;class Dc extends eE{add(A,Q){}}zqA.NoopUpDownCounterMetric=Dc;class Nc extends eE{record(A,Q){}}zqA.NoopGaugeMetric=Nc;class Lc extends eE{record(A,Q){}}zqA.NoopHistogramMetric=Lc;class lN{addCallback(A){}removeCallback(A){}}zqA.NoopObservableMetric=lN;class qc extends lN{}zqA.NoopObservableCounterMetric=qc;class Mc extends lN{}zqA.NoopObservableGaugeMetric=Mc;class zc extends lN{}zqA.NoopObservableUpDownCounterMetric=zc;zqA.NOOP_METER=new Ic;zqA.NOOP_COUNTER_METRIC=new Hc;zqA.NOOP_GAUGE_METRIC=new Nc;zqA.NOOP_HISTOGRAM_METRIC=new Lc;zqA.NOOP_UP_DOWN_COUNTER_METRIC=new Dc;zqA.NOOP_OBSERVABLE_COUNTER_METRIC=new qc;zqA.NOOP_OBSERVABLE_GAUGE_METRIC=new Mc;zqA.NOOP_OBSERVABLE_UP_DOWN_COUNTER_METRIC=new zc;function NEB(){return zqA.NOOP_METER}zqA.createNoopMeter=NEB});var yqA=R((vqA)=>{Object.defineProperty(vqA,"__esModule",{value:!0});vqA.ValueType=void 0;var SEB;(function(A){A[A.INT=0]="INT",A[A.DOUBLE=1]="DOUBLE"})(SEB=vqA.ValueType||(vqA.ValueType={}))});var jc=R((gqA)=>{Object.defineProperty(gqA,"__esModule",{value:!0});gqA.defaultTextMapSetter=gqA.defaultTextMapGetter=void 0;gqA.defaultTextMapGetter={get(A,Q){if(A==null)return;return A[Q]},keys(A){if(A==null)return[];return Object.keys(A)}};gqA.defaultTextMapSetter={set(A,Q,B){if(A==null)return;A[Q]=B}}});var mqA=R((fqA)=>{Object.defineProperty(fqA,"__esModule",{value:!0});fqA.NoopContextManager=void 0;var _EB=cN();class xqA{active(){return _EB.ROOT_CONTEXT}with(A,Q,B,...Y){return Q.call(B,...Y)}bind(A,Q){return Q}enable(){return this}disable(){return this}}fqA.NoopContextManager=xqA});var pN=R((dqA)=>{Object.defineProperty(dqA,"__esModule",{value:!0});dqA.ContextAPI=void 0;var vEB=mqA(),Oc=sZ(),uqA=rZ(),Pc="context",yEB=new vEB.NoopContextManager;class Tc{constructor(){}static getInstance(){if(!this._instance)this._instance=new Tc;return this._instance}setGlobalContextManager(A){return(0,Oc.registerGlobal)(Pc,A,uqA.DiagAPI.instance())}active(){return this._getContextManager().active()}with(A,Q,B,...Y){return this._getContextManager().with(A,Q,B,...Y)}bind(A,Q){return this._getContextManager().bind(A,Q)}_getContextManager(){return(0,Oc.getGlobal)(Pc)||yEB}disable(){this._getContextManager().disable(),(0,Oc.unregisterGlobal)(Pc,uqA.DiagAPI.instance())}}dqA.ContextAPI=Tc});var kc=R((lqA)=>{Object.defineProperty(lqA,"__esModule",{value:!0});lqA.TraceFlags=void 0;var gEB;(function(A){A[A.NONE=0]="NONE",A[A.SAMPLED=1]="SAMPLED"})(gEB=lqA.TraceFlags||(lqA.TraceFlags={}))});var ej=R((pqA)=>{Object.defineProperty(pqA,"__esModule",{value:!0});pqA.INVALID_SPAN_CONTEXT=pqA.INVALID_TRACEID=pqA.INVALID_SPANID=void 0;var hEB=kc();pqA.INVALID_SPANID="0000000000000000";pqA.INVALID_TRACEID="00000000000000000000000000000000";pqA.INVALID_SPAN_CONTEXT={traceId:pqA.INVALID_TRACEID,spanId:pqA.INVALID_SPANID,traceFlags:hEB.TraceFlags.NONE}});var AO=R((aqA)=>{Object.defineProperty(aqA,"__esModule",{value:!0});aqA.NonRecordingSpan=void 0;var xEB=ej();class rqA{constructor(A=xEB.INVALID_SPAN_CONTEXT){this._spanContext=A}spanContext(){return this._spanContext}setAttribute(A,Q){return this}setAttributes(A){return this}addEvent(A,Q){return this}addLink(A){return this}addLinks(A){return this}setStatus(A){return this}updateName(A){return this}end(A){}isRecording(){return!1}recordException(A,Q){}}aqA.NonRecordingSpan=rqA});var yc=R((eqA)=>{Object.defineProperty(eqA,"__esModule",{value:!0});eqA.getSpanContext=eqA.setSpanContext=eqA.deleteSpan=eqA.setSpan=eqA.getActiveSpan=eqA.getSpan=void 0;var fEB=cN(),bEB=AO(),mEB=pN(),_c=(0,fEB.createContextKey)("OpenTelemetry Context Key SPAN");function vc(A){return A.getValue(_c)||void 0}eqA.getSpan=vc;function uEB(){return vc(mEB.ContextAPI.getInstance().active())}eqA.getActiveSpan=uEB;function tqA(A,Q){return A.setValue(_c,Q)}eqA.setSpan=tqA;function dEB(A){return A.deleteValue(_c)}eqA.deleteSpan=dEB;function cEB(A,Q){return tqA(A,new bEB.NonRecordingSpan(Q))}eqA.setSpanContext=cEB;function lEB(A){var Q;return(Q=vc(A))===null||Q===void 0?void 0:Q.spanContext()}eqA.getSpanContext=lEB});var QO=R((JMA)=>{Object.defineProperty(JMA,"__esModule",{value:!0});JMA.wrapSpanContext=JMA.isSpanContextValid=JMA.isValidSpanId=JMA.isValidTraceId=void 0;var QMA=ej(),aEB=AO(),oEB=/^([0-9a-f]{32})$/i,tEB=/^[0-9a-f]{16}$/i;function BMA(A){return oEB.test(A)&&A!==QMA.INVALID_TRACEID}JMA.isValidTraceId=BMA;function YMA(A){return tEB.test(A)&&A!==QMA.INVALID_SPANID}JMA.isValidSpanId=YMA;function eEB(A){return BMA(A.traceId)&&YMA(A.spanId)}JMA.isSpanContextValid=eEB;function AKB(A){return new aEB.NonRecordingSpan(A)}JMA.wrapSpanContext=AKB});var xc=R((WMA)=>{Object.defineProperty(WMA,"__esModule",{value:!0});WMA.NoopTracer=void 0;var JKB=pN(),XMA=yc(),gc=AO(),CKB=QO(),hc=JKB.ContextAPI.getInstance();class GMA{startSpan(A,Q,B=hc.active()){if(Boolean(Q===null||Q===void 0?void 0:Q.root))return new gc.NonRecordingSpan;let J=B&&(0,XMA.getSpanContext)(B);if(XKB(J)&&(0,CKB.isSpanContextValid)(J))return new gc.NonRecordingSpan(J);else return new gc.NonRecordingSpan}startActiveSpan(A,Q,B,Y){let J,C,X;if(arguments.length<2)return;else if(arguments.length===2)X=Q;else if(arguments.length===3)J=Q,X=B;else J=Q,C=B,X=Y;let G=C!==null&&C!==void 0?C:hc.active(),W=this.startSpan(A,J,G),F=(0,XMA.setSpan)(G,W);return hc.with(F,X,void 0,W)}}WMA.NoopTracer=GMA;function XKB(A){return typeof A==="object"&&typeof A.spanId==="string"&&typeof A.traceId==="string"&&typeof A.traceFlags==="number"}});var fc=R(($MA)=>{Object.defineProperty($MA,"__esModule",{value:!0});$MA.ProxyTracer=void 0;var GKB=xc(),WKB=new GKB.NoopTracer;class ZMA{constructor(A,Q,B,Y){this._provider=A,this.name=Q,this.version=B,this.options=Y}startSpan(A,Q,B){return this._getTracer().startSpan(A,Q,B)}startActiveSpan(A,Q,B,Y){let J=this._getTracer();return Reflect.apply(J.startActiveSpan,J,arguments)}_getTracer(){if(this._delegate)return this._delegate;let A=this._provider.getDelegateTracer(this.name,this.version,this.options);if(!A)return WKB;return this._delegate=A,this._delegate}}$MA.ProxyTracer=ZMA});var IMA=R((KMA)=>{Object.defineProperty(KMA,"__esModule",{value:!0});KMA.NoopTracerProvider=void 0;var FKB=xc();class EMA{getTracer(A,Q,B){return new FKB.NoopTracer}}KMA.NoopTracerProvider=EMA});var bc=R((DMA)=>{Object.defineProperty(DMA,"__esModule",{value:!0});DMA.ProxyTracerProvider=void 0;var ZKB=fc(),$KB=IMA(),UKB=new $KB.NoopTracerProvider;class HMA{getTracer(A,Q,B){var Y;return(Y=this.getDelegateTracer(A,Q,B))!==null&&Y!==void 0?Y:new ZKB.ProxyTracer(this,A,Q,B)}getDelegate(){var A;return(A=this._delegate)!==null&&A!==void 0?A:UKB}setDelegate(A){this._delegate=A}getDelegateTracer(A,Q,B){var Y;return(Y=this._delegate)===null||Y===void 0?void 0:Y.getTracer(A,Q,B)}}DMA.ProxyTracerProvider=HMA});var qMA=R((LMA)=>{Object.defineProperty(LMA,"__esModule",{value:!0});LMA.SamplingDecision=void 0;var EKB;(function(A){A[A.NOT_RECORD=0]="NOT_RECORD",A[A.RECORD=1]="RECORD",A[A.RECORD_AND_SAMPLED=2]="RECORD_AND_SAMPLED"})(EKB=LMA.SamplingDecision||(LMA.SamplingDecision={}))});var zMA=R((MMA)=>{Object.defineProperty(MMA,"__esModule",{value:!0});MMA.SpanKind=void 0;var KKB;(function(A){A[A.INTERNAL=0]="INTERNAL",A[A.SERVER=1]="SERVER",A[A.CLIENT=2]="CLIENT",A[A.PRODUCER=3]="PRODUCER",A[A.CONSUMER=4]="CONSUMER"})(KKB=MMA.SpanKind||(MMA.SpanKind={}))});var wMA=R((RMA)=>{Object.defineProperty(RMA,"__esModule",{value:!0});RMA.SpanStatusCode=void 0;var VKB;(function(A){A[A.UNSET=0]="UNSET",A[A.OK=1]="OK",A[A.ERROR=2]="ERROR"})(VKB=RMA.SpanStatusCode||(RMA.SpanStatusCode={}))});var PMA=R((jMA)=>{Object.defineProperty(jMA,"__esModule",{value:!0});jMA.validateValue=jMA.validateKey=void 0;var cc="[_0-9a-z-*/]",IKB=`[a-z]${cc}{0,255}`,HKB=`[a-z0-9]${cc}{0,240}@[a-z]${cc}{0,13}`,DKB=new RegExp(`^(?:${IKB}|${HKB})$`),NKB=/^[ -~]{0,255}[!-~]$/,LKB=/,|=/;function qKB(A){return DKB.test(A)}jMA.validateKey=qKB;function MKB(A){return NKB.test(A)&&!LKB.test(A)}jMA.validateValue=MKB});var gMA=R((vMA)=>{Object.defineProperty(vMA,"__esModule",{value:!0});vMA.TraceStateImpl=void 0;var TMA=PMA(),SMA=32,RKB=512,kMA=",",_MA="=";class lc{constructor(A){if(this._internalState=new Map,A)this._parse(A)}set(A,Q){let B=this._clone();if(B._internalState.has(A))B._internalState.delete(A);return B._internalState.set(A,Q),B}unset(A){let Q=this._clone();return Q._internalState.delete(A),Q}get(A){return this._internalState.get(A)}serialize(){return this._keys().reduce((A,Q)=>{return A.push(Q+_MA+this.get(Q)),A},[]).join(kMA)}_parse(A){if(A.length>RKB)return;if(this._internalState=A.split(kMA).reverse().reduce((Q,B)=>{let Y=B.trim(),J=Y.indexOf(_MA);if(J!==-1){let C=Y.slice(0,J),X=Y.slice(J+1,B.length);if((0,TMA.validateKey)(C)&&(0,TMA.validateValue)(X))Q.set(C,X)}return Q},new Map),this._internalState.size>SMA)this._internalState=new Map(Array.from(this._internalState.entries()).reverse().slice(0,SMA))}_keys(){return Array.from(this._internalState.keys()).reverse()}_clone(){let A=new lc;return A._internalState=new Map(this._internalState),A}}vMA.TraceStateImpl=lc});var fMA=R((hMA)=>{Object.defineProperty(hMA,"__esModule",{value:!0});hMA.createTraceState=void 0;var wKB=gMA();function jKB(A){return new wKB.TraceStateImpl(A)}hMA.createTraceState=jKB});var uMA=R((bMA)=>{Object.defineProperty(bMA,"__esModule",{value:!0});bMA.context=void 0;var OKB=pN();bMA.context=OKB.ContextAPI.getInstance()});var lMA=R((dMA)=>{Object.defineProperty(dMA,"__esModule",{value:!0});dMA.diag=void 0;var PKB=rZ();dMA.diag=PKB.DiagAPI.instance()});var nMA=R((pMA)=>{Object.defineProperty(pMA,"__esModule",{value:!0});pMA.NOOP_METER_PROVIDER=pMA.NoopMeterProvider=void 0;var TKB=Rc();class pc{getMeter(A,Q,B){return TKB.NOOP_METER}}pMA.NoopMeterProvider=pc;pMA.NOOP_METER_PROVIDER=new pc});var oMA=R((rMA)=>{Object.defineProperty(rMA,"__esModule",{value:!0});rMA.MetricsAPI=void 0;var kKB=nMA(),ic=sZ(),sMA=rZ(),nc="metrics";class sc{constructor(){}static getInstance(){if(!this._instance)this._instance=new sc;return this._instance}setGlobalMeterProvider(A){return(0,ic.registerGlobal)(nc,A,sMA.DiagAPI.instance())}getMeterProvider(){return(0,ic.getGlobal)(nc)||kKB.NOOP_METER_PROVIDER}getMeter(A,Q,B){return this.getMeterProvider().getMeter(A,Q,B)}disable(){(0,ic.unregisterGlobal)(nc,sMA.DiagAPI.instance())}}rMA.MetricsAPI=sc});var AzA=R((tMA)=>{Object.defineProperty(tMA,"__esModule",{value:!0});tMA.metrics=void 0;var _KB=oMA();tMA.metrics=_KB.MetricsAPI.getInstance()});var JzA=R((BzA)=>{Object.defineProperty(BzA,"__esModule",{value:!0});BzA.NoopTextMapPropagator=void 0;class QzA{inject(A,Q){}extract(A,Q){return A}fields(){return[]}}BzA.NoopTextMapPropagator=QzA});var WzA=R((XzA)=>{Object.defineProperty(XzA,"__esModule",{value:!0});XzA.deleteBaggage=XzA.setBaggage=XzA.getActiveBaggage=XzA.getBaggage=void 0;var vKB=pN(),yKB=cN(),rc=(0,yKB.createContextKey)("OpenTelemetry Baggage Key");function CzA(A){return A.getValue(rc)||void 0}XzA.getBaggage=CzA;function gKB(){return CzA(vKB.ContextAPI.getInstance().active())}XzA.getActiveBaggage=gKB;function hKB(A,Q){return A.setValue(rc,Q)}XzA.setBaggage=hKB;function xKB(A){return A.deleteValue(rc)}XzA.deleteBaggage=xKB});var EzA=R(($zA)=>{Object.defineProperty($zA,"__esModule",{value:!0});$zA.PropagationAPI=void 0;var ac=sZ(),uKB=JzA(),FzA=jc(),BO=WzA(),dKB=Kc(),ZzA=rZ(),oc="propagation",cKB=new uKB.NoopTextMapPropagator;class tc{constructor(){this.createBaggage=dKB.createBaggage,this.getBaggage=BO.getBaggage,this.getActiveBaggage=BO.getActiveBaggage,this.setBaggage=BO.setBaggage,this.deleteBaggage=BO.deleteBaggage}static getInstance(){if(!this._instance)this._instance=new tc;return this._instance}setGlobalPropagator(A){return(0,ac.registerGlobal)(oc,A,ZzA.DiagAPI.instance())}inject(A,Q,B=FzA.defaultTextMapSetter){return this._getGlobalPropagator().inject(A,Q,B)}extract(A,Q,B=FzA.defaultTextMapGetter){return this._getGlobalPropagator().extract(A,Q,B)}fields(){return this._getGlobalPropagator().fields()}disable(){(0,ac.unregisterGlobal)(oc,ZzA.DiagAPI.instance())}_getGlobalPropagator(){return(0,ac.getGlobal)(oc)||cKB}}$zA.PropagationAPI=tc});var IzA=R((KzA)=>{Object.defineProperty(KzA,"__esModule",{value:!0});KzA.propagation=void 0;var lKB=EzA();KzA.propagation=lKB.PropagationAPI.getInstance()});var MzA=R((LzA)=>{Object.defineProperty(LzA,"__esModule",{value:!0});LzA.TraceAPI=void 0;var ec=sZ(),HzA=bc(),DzA=QO(),AK=yc(),NzA=rZ(),Al="trace";class Ql{constructor(){this._proxyTracerProvider=new HzA.ProxyTracerProvider,this.wrapSpanContext=DzA.wrapSpanContext,this.isSpanContextValid=DzA.isSpanContextValid,this.deleteSpan=AK.deleteSpan,this.getSpan=AK.getSpan,this.getActiveSpan=AK.getActiveSpan,this.getSpanContext=AK.getSpanContext,this.setSpan=AK.setSpan,this.setSpanContext=AK.setSpanContext}static getInstance(){if(!this._instance)this._instance=new Ql;return this._instance}setGlobalTracerProvider(A){let Q=(0,ec.registerGlobal)(Al,this._proxyTracerProvider,NzA.DiagAPI.instance());if(Q)this._proxyTracerProvider.setDelegate(A);return Q}getTracerProvider(){return(0,ec.getGlobal)(Al)||this._proxyTracerProvider}getTracer(A,Q){return this.getTracerProvider().getTracer(A,Q)}disable(){(0,ec.unregisterGlobal)(Al,NzA.DiagAPI.instance()),this._proxyTracerProvider=new HzA.ProxyTracerProvider}}LzA.TraceAPI=Ql});var wzA=R((zzA)=>{Object.defineProperty(zzA,"__esModule",{value:!0});zzA.trace=void 0;var pKB=MzA();zzA.trace=pKB.TraceAPI.getInstance()});var yA=R((uB)=>{Object.defineProperty(uB,"__esModule",{value:!0});uB.trace=uB.propagation=uB.metrics=uB.diag=uB.context=uB.INVALID_SPAN_CONTEXT=uB.INVALID_TRACEID=uB.INVALID_SPANID=uB.isValidSpanId=uB.isValidTraceId=uB.isSpanContextValid=uB.createTraceState=uB.TraceFlags=uB.SpanStatusCode=uB.SpanKind=uB.SamplingDecision=uB.ProxyTracerProvider=uB.ProxyTracer=uB.defaultTextMapSetter=uB.defaultTextMapGetter=uB.ValueType=uB.createNoopMeter=uB.DiagLogLevel=uB.DiagConsoleLogger=uB.ROOT_CONTEXT=uB.createContextKey=uB.baggageEntryMetadataFromString=void 0;var iKB=Kc();Object.defineProperty(uB,"baggageEntryMetadataFromString",{enumerable:!0,get:function(){return iKB.baggageEntryMetadataFromString}});var jzA=cN();Object.defineProperty(uB,"createContextKey",{enumerable:!0,get:function(){return jzA.createContextKey}});Object.defineProperty(uB,"ROOT_CONTEXT",{enumerable:!0,get:function(){return jzA.ROOT_CONTEXT}});var nKB=MqA();Object.defineProperty(uB,"DiagConsoleLogger",{enumerable:!0,get:function(){return nKB.DiagConsoleLogger}});var sKB=aj();Object.defineProperty(uB,"DiagLogLevel",{enumerable:!0,get:function(){return sKB.DiagLogLevel}});var rKB=Rc();Object.defineProperty(uB,"createNoopMeter",{enumerable:!0,get:function(){return rKB.createNoopMeter}});var aKB=yqA();Object.defineProperty(uB,"ValueType",{enumerable:!0,get:function(){return aKB.ValueType}});var OzA=jc();Object.defineProperty(uB,"defaultTextMapGetter",{enumerable:!0,get:function(){return OzA.defaultTextMapGetter}});Object.defineProperty(uB,"defaultTextMapSetter",{enumerable:!0,get:function(){return OzA.defaultTextMapSetter}});var oKB=fc();Object.defineProperty(uB,"ProxyTracer",{enumerable:!0,get:function(){return oKB.ProxyTracer}});var tKB=bc();Object.defineProperty(uB,"ProxyTracerProvider",{enumerable:!0,get:function(){return tKB.ProxyTracerProvider}});var eKB=qMA();Object.defineProperty(uB,"SamplingDecision",{enumerable:!0,get:function(){return eKB.SamplingDecision}});var AVB=zMA();Object.defineProperty(uB,"SpanKind",{enumerable:!0,get:function(){return AVB.SpanKind}});var QVB=wMA();Object.defineProperty(uB,"SpanStatusCode",{enumerable:!0,get:function(){return QVB.SpanStatusCode}});var BVB=kc();Object.defineProperty(uB,"TraceFlags",{enumerable:!0,get:function(){return BVB.TraceFlags}});var YVB=fMA();Object.defineProperty(uB,"createTraceState",{enumerable:!0,get:function(){return YVB.createTraceState}});var Bl=QO();Object.defineProperty(uB,"isSpanContextValid",{enumerable:!0,get:function(){return Bl.isSpanContextValid}});Object.defineProperty(uB,"isValidTraceId",{enumerable:!0,get:function(){return Bl.isValidTraceId}});Object.defineProperty(uB,"isValidSpanId",{enumerable:!0,get:function(){return Bl.isValidSpanId}});var Yl=ej();Object.defineProperty(uB,"INVALID_SPANID",{enumerable:!0,get:function(){return Yl.INVALID_SPANID}});Object.defineProperty(uB,"INVALID_TRACEID",{enumerable:!0,get:function(){return Yl.INVALID_TRACEID}});Object.defineProperty(uB,"INVALID_SPAN_CONTEXT",{enumerable:!0,get:function(){return Yl.INVALID_SPAN_CONTEXT}});var PzA=uMA();Object.defineProperty(uB,"context",{enumerable:!0,get:function(){return PzA.context}});var TzA=lMA();Object.defineProperty(uB,"diag",{enumerable:!0,get:function(){return TzA.diag}});var SzA=AzA();Object.defineProperty(uB,"metrics",{enumerable:!0,get:function(){return SzA.metrics}});var kzA=IzA();Object.defineProperty(uB,"propagation",{enumerable:!0,get:function(){return kzA.propagation}});var _zA=wzA();Object.defineProperty(uB,"trace",{enumerable:!0,get:function(){return _zA.trace}});uB.default={context:PzA.context,diag:TzA.diag,metrics:SzA.metrics,propagation:kzA.propagation,trace:_zA.trace}});var iN=R((vzA)=>{Object.defineProperty(vzA,"__esModule",{value:!0});vzA.isTracingSuppressed=vzA.unsuppressTracing=vzA.suppressTracing=void 0;var XVB=yA(),Jl=(0,XVB.createContextKey)("OpenTelemetry SDK Context Key SUPPRESS_TRACING");function GVB(A){return A.setValue(Jl,!0)}vzA.suppressTracing=GVB;function WVB(A){return A.deleteValue(Jl)}vzA.unsuppressTracing=WVB;function FVB(A){return A.getValue(Jl)===!0}vzA.isTracingSuppressed=FVB});var Cl=R((gzA)=>{Object.defineProperty(gzA,"__esModule",{value:!0});gzA.BAGGAGE_MAX_TOTAL_LENGTH=gzA.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS=gzA.BAGGAGE_MAX_NAME_VALUE_PAIRS=gzA.BAGGAGE_HEADER=gzA.BAGGAGE_ITEMS_SEPARATOR=gzA.BAGGAGE_PROPERTIES_SEPARATOR=gzA.BAGGAGE_KEY_PAIR_SEPARATOR=void 0;gzA.BAGGAGE_KEY_PAIR_SEPARATOR="=";gzA.BAGGAGE_PROPERTIES_SEPARATOR=";";gzA.BAGGAGE_ITEMS_SEPARATOR=",";gzA.BAGGAGE_HEADER="baggage";gzA.BAGGAGE_MAX_NAME_VALUE_PAIRS=180;gzA.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS=4096;gzA.BAGGAGE_MAX_TOTAL_LENGTH=8192});var Xl=R((fzA)=>{Object.defineProperty(fzA,"__esModule",{value:!0});fzA.parseKeyPairsIntoRecord=fzA.parsePairKeyValue=fzA.getKeyPairs=fzA.serializeKeyPairs=void 0;var DVB=yA(),aZ=Cl();function NVB(A){return A.reduce((Q,B)=>{let Y=`${Q}${Q!==""?aZ.BAGGAGE_ITEMS_SEPARATOR:""}${B}`;return Y.length>aZ.BAGGAGE_MAX_TOTAL_LENGTH?Q:Y},"")}fzA.serializeKeyPairs=NVB;function LVB(A){return A.getAllEntries().map(([Q,B])=>{let Y=`${encodeURIComponent(Q)}=${encodeURIComponent(B.value)}`;if(B.metadata!==void 0)Y+=aZ.BAGGAGE_PROPERTIES_SEPARATOR+B.metadata.toString();return Y})}fzA.getKeyPairs=LVB;function xzA(A){let Q=A.split(aZ.BAGGAGE_PROPERTIES_SEPARATOR);if(Q.length<=0)return;let B=Q.shift();if(!B)return;let Y=B.indexOf(aZ.BAGGAGE_KEY_PAIR_SEPARATOR);if(Y<=0)return;let J=decodeURIComponent(B.substring(0,Y).trim()),C=decodeURIComponent(B.substring(Y+1).trim()),X;if(Q.length>0)X=(0,DVB.baggageEntryMetadataFromString)(Q.join(aZ.BAGGAGE_PROPERTIES_SEPARATOR));return{key:J,value:C,metadata:X}}fzA.parsePairKeyValue=xzA;function qVB(A){if(typeof A!=="string"||A.length===0)return{};return A.split(aZ.BAGGAGE_ITEMS_SEPARATOR).map((Q)=>{return xzA(Q)}).filter((Q)=>Q!==void 0&&Q.value.length>0).reduce((Q,B)=>{return Q[B.key]=B.value,Q},{})}fzA.parseKeyPairsIntoRecord=qVB});var czA=R((uzA)=>{Object.defineProperty(uzA,"__esModule",{value:!0});uzA.W3CBaggagePropagator=void 0;var Gl=yA(),wVB=iN(),oZ=Cl(),Wl=Xl();class mzA{inject(A,Q,B){let Y=Gl.propagation.getBaggage(A);if(!Y||(0,wVB.isTracingSuppressed)(A))return;let J=(0,Wl.getKeyPairs)(Y).filter((X)=>{return X.length<=oZ.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS}).slice(0,oZ.BAGGAGE_MAX_NAME_VALUE_PAIRS),C=(0,Wl.serializeKeyPairs)(J);if(C.length>0)B.set(Q,oZ.BAGGAGE_HEADER,C)}extract(A,Q,B){let Y=B.get(Q,oZ.BAGGAGE_HEADER),J=Array.isArray(Y)?Y.join(oZ.BAGGAGE_ITEMS_SEPARATOR):Y;if(!J)return A;let C={};if(J.length===0)return A;if(J.split(oZ.BAGGAGE_ITEMS_SEPARATOR).forEach((G)=>{let W=(0,Wl.parsePairKeyValue)(G);if(W){let F={value:W.value};if(W.metadata)F.metadata=W.metadata;C[W.key]=F}}),Object.entries(C).length===0)return A;return Gl.propagation.setBaggage(A,Gl.propagation.createBaggage(C))}fields(){return[oZ.BAGGAGE_HEADER]}}uzA.W3CBaggagePropagator=mzA});var nzA=R((pzA)=>{Object.defineProperty(pzA,"__esModule",{value:!0});pzA.AnchoredClock=void 0;class lzA{constructor(A,Q){this._monotonicClock=Q,this._epochMillis=A.now(),this._performanceMillis=Q.now()}now(){let A=this._monotonicClock.now()-this._performanceMillis;return this._epochMillis+A}}pzA.AnchoredClock=lzA});var A2A=R((tzA)=>{Object.defineProperty(tzA,"__esModule",{value:!0});tzA.isAttributeValue=tzA.isAttributeKey=tzA.sanitizeAttributes=void 0;var szA=yA();function jVB(A){let Q={};if(typeof A!=="object"||A==null)return Q;for(let[B,Y]of Object.entries(A)){if(!rzA(B)){szA.diag.warn(`Invalid attribute key: ${B}`);continue}if(!azA(Y)){szA.diag.warn(`Invalid attribute value set for key: ${B}`);continue}if(Array.isArray(Y))Q[B]=Y.slice();else Q[B]=Y}return Q}tzA.sanitizeAttributes=jVB;function rzA(A){return typeof A==="string"&&A.length>0}tzA.isAttributeKey=rzA;function azA(A){if(A==null)return!0;if(Array.isArray(A))return OVB(A);return ozA(A)}tzA.isAttributeValue=azA;function OVB(A){let Q;for(let B of A){if(B==null)continue;if(!Q){if(ozA(B)){Q=typeof B;continue}return!1}if(typeof B===Q)continue;return!1}return!0}function ozA(A){switch(typeof A){case"number":case"boolean":case"string":return!0}return!1}});var Fl=R((Q2A)=>{Object.defineProperty(Q2A,"__esModule",{value:!0});Q2A.loggingErrorHandler=void 0;var SVB=yA();function kVB(){return(A)=>{SVB.diag.error(_VB(A))}}Q2A.loggingErrorHandler=kVB;function _VB(A){if(typeof A==="string")return A;else return JSON.stringify(vVB(A))}function vVB(A){let Q={},B=A;while(B!==null)Object.getOwnPropertyNames(B).forEach((Y)=>{if(Q[Y])return;let J=B[Y];if(J)Q[Y]=String(J)}),B=Object.getPrototypeOf(B);return Q}});var Zl=R((J2A)=>{Object.defineProperty(J2A,"__esModule",{value:!0});J2A.globalErrorHandler=J2A.setGlobalErrorHandler=void 0;var yVB=Fl(),Y2A=(0,yVB.loggingErrorHandler)();function gVB(A){Y2A=A}J2A.setGlobalErrorHandler=gVB;function hVB(A){try{Y2A(A)}catch(Q){}}J2A.globalErrorHandler=hVB});var Ul=R((X2A)=>{Object.defineProperty(X2A,"__esModule",{value:!0});X2A.TracesSamplerValues=void 0;var fVB;(function(A){A.AlwaysOff="always_off",A.AlwaysOn="always_on",A.ParentBasedAlwaysOff="parentbased_always_off",A.ParentBasedAlwaysOn="parentbased_always_on",A.ParentBasedTraceIdRatio="parentbased_traceidratio",A.TraceIdRatio="traceidratio"})(fVB=X2A.TracesSamplerValues||(X2A.TracesSamplerValues={}))});var El=R((G2A)=>{Object.defineProperty(G2A,"__esModule",{value:!0});G2A.parseEnvironment=G2A.DEFAULT_ENVIRONMENT=G2A.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=G2A.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=G2A.DEFAULT_ATTRIBUTE_COUNT_LIMIT=G2A.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=void 0;var $W=yA(),bVB=Ul(),mVB=",",uVB=["OTEL_SDK_DISABLED"];function dVB(A){return uVB.indexOf(A)>-1}var cVB=["OTEL_BSP_EXPORT_TIMEOUT","OTEL_BSP_MAX_EXPORT_BATCH_SIZE","OTEL_BSP_MAX_QUEUE_SIZE","OTEL_BSP_SCHEDULE_DELAY","OTEL_BLRP_EXPORT_TIMEOUT","OTEL_BLRP_MAX_EXPORT_BATCH_SIZE","OTEL_BLRP_MAX_QUEUE_SIZE","OTEL_BLRP_SCHEDULE_DELAY","OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_ATTRIBUTE_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT","OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT","OTEL_SPAN_EVENT_COUNT_LIMIT","OTEL_SPAN_LINK_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT","OTEL_EXPORTER_OTLP_TIMEOUT","OTEL_EXPORTER_OTLP_TRACES_TIMEOUT","OTEL_EXPORTER_OTLP_METRICS_TIMEOUT","OTEL_EXPORTER_OTLP_LOGS_TIMEOUT","OTEL_EXPORTER_JAEGER_AGENT_PORT"];function lVB(A){return cVB.indexOf(A)>-1}var pVB=["OTEL_NO_PATCH_MODULES","OTEL_PROPAGATORS","OTEL_SEMCONV_STABILITY_OPT_IN"];function iVB(A){return pVB.indexOf(A)>-1}G2A.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=1/0;G2A.DEFAULT_ATTRIBUTE_COUNT_LIMIT=128;G2A.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=128;G2A.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=128;G2A.DEFAULT_ENVIRONMENT={OTEL_SDK_DISABLED:!1,CONTAINER_NAME:"",ECS_CONTAINER_METADATA_URI_V4:"",ECS_CONTAINER_METADATA_URI:"",HOSTNAME:"",KUBERNETES_SERVICE_HOST:"",NAMESPACE:"",OTEL_BSP_EXPORT_TIMEOUT:30000,OTEL_BSP_MAX_EXPORT_BATCH_SIZE:512,OTEL_BSP_MAX_QUEUE_SIZE:2048,OTEL_BSP_SCHEDULE_DELAY:5000,OTEL_BLRP_EXPORT_TIMEOUT:30000,OTEL_BLRP_MAX_EXPORT_BATCH_SIZE:512,OTEL_BLRP_MAX_QUEUE_SIZE:2048,OTEL_BLRP_SCHEDULE_DELAY:5000,OTEL_EXPORTER_JAEGER_AGENT_HOST:"",OTEL_EXPORTER_JAEGER_AGENT_PORT:6832,OTEL_EXPORTER_JAEGER_ENDPOINT:"",OTEL_EXPORTER_JAEGER_PASSWORD:"",OTEL_EXPORTER_JAEGER_USER:"",OTEL_EXPORTER_OTLP_ENDPOINT:"",OTEL_EXPORTER_OTLP_TRACES_ENDPOINT:"",OTEL_EXPORTER_OTLP_METRICS_ENDPOINT:"",OTEL_EXPORTER_OTLP_LOGS_ENDPOINT:"",OTEL_EXPORTER_OTLP_HEADERS:"",OTEL_EXPORTER_OTLP_TRACES_HEADERS:"",OTEL_EXPORTER_OTLP_METRICS_HEADERS:"",OTEL_EXPORTER_OTLP_LOGS_HEADERS:"",OTEL_EXPORTER_OTLP_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_TRACES_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_METRICS_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_LOGS_TIMEOUT:1e4,OTEL_EXPORTER_ZIPKIN_ENDPOINT:"http://localhost:9411/api/v2/spans",OTEL_LOG_LEVEL:$W.DiagLogLevel.INFO,OTEL_NO_PATCH_MODULES:[],OTEL_PROPAGATORS:["tracecontext","baggage"],OTEL_RESOURCE_ATTRIBUTES:"",OTEL_SERVICE_NAME:"",OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT:G2A.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_ATTRIBUTE_COUNT_LIMIT:G2A.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT:G2A.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT:G2A.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT:G2A.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT:G2A.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_SPAN_EVENT_COUNT_LIMIT:128,OTEL_SPAN_LINK_COUNT_LIMIT:128,OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT:G2A.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT,OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT:G2A.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT,OTEL_TRACES_EXPORTER:"",OTEL_TRACES_SAMPLER:bVB.TracesSamplerValues.ParentBasedAlwaysOn,OTEL_TRACES_SAMPLER_ARG:"",OTEL_LOGS_EXPORTER:"",OTEL_EXPORTER_OTLP_INSECURE:"",OTEL_EXPORTER_OTLP_TRACES_INSECURE:"",OTEL_EXPORTER_OTLP_METRICS_INSECURE:"",OTEL_EXPORTER_OTLP_LOGS_INSECURE:"",OTEL_EXPORTER_OTLP_CERTIFICATE:"",OTEL_EXPORTER_OTLP_TRACES_CERTIFICATE:"",OTEL_EXPORTER_OTLP_METRICS_CERTIFICATE:"",OTEL_EXPORTER_OTLP_LOGS_CERTIFICATE:"",OTEL_EXPORTER_OTLP_COMPRESSION:"",OTEL_EXPORTER_OTLP_TRACES_COMPRESSION:"",OTEL_EXPORTER_OTLP_METRICS_COMPRESSION:"",OTEL_EXPORTER_OTLP_LOGS_COMPRESSION:"",OTEL_EXPORTER_OTLP_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_TRACES_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_METRICS_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_LOGS_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_TRACES_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_METRICS_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_LOGS_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_TRACES_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_METRICS_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_LOGS_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_METRICS_TEMPORALITY_PREFERENCE:"cumulative",OTEL_SEMCONV_STABILITY_OPT_IN:[]};function nVB(A,Q,B){if(typeof B[A]>"u")return;let Y=String(B[A]);Q[A]=Y.toLowerCase()==="true"}function sVB(A,Q,B,Y=-1/0,J=1/0){if(typeof B[A]<"u"){let C=Number(B[A]);if(!isNaN(C))if(CJ)Q[A]=J;else Q[A]=C}}function rVB(A,Q,B,Y=mVB){let J=B[A];if(typeof J==="string")Q[A]=J.split(Y).map((C)=>C.trim())}var aVB={ALL:$W.DiagLogLevel.ALL,VERBOSE:$W.DiagLogLevel.VERBOSE,DEBUG:$W.DiagLogLevel.DEBUG,INFO:$W.DiagLogLevel.INFO,WARN:$W.DiagLogLevel.WARN,ERROR:$W.DiagLogLevel.ERROR,NONE:$W.DiagLogLevel.NONE};function oVB(A,Q,B){let Y=B[A];if(typeof Y==="string"){let J=aVB[Y.toUpperCase()];if(J!=null)Q[A]=J}}function tVB(A){let Q={};for(let B in G2A.DEFAULT_ENVIRONMENT){let Y=B;switch(Y){case"OTEL_LOG_LEVEL":oVB(Y,Q,A);break;default:if(dVB(Y))nVB(Y,Q,A);else if(lVB(Y))sVB(Y,Q,A);else if(iVB(Y))rVB(Y,Q,A);else{let J=A[Y];if(typeof J<"u"&&J!==null)Q[Y]=String(J)}}}return Q}G2A.parseEnvironment=tVB});var K2A=R((U2A)=>{Object.defineProperty(U2A,"__esModule",{value:!0});U2A.getEnvWithoutDefaults=U2A.getEnv=void 0;var Kl=El();function eVB(){let A=(0,Kl.parseEnvironment)(process.env);return Object.assign({},Kl.DEFAULT_ENVIRONMENT,A)}U2A.getEnv=eVB;function AIB(){return(0,Kl.parseEnvironment)(process.env)}U2A.getEnvWithoutDefaults=AIB});var H2A=R((V2A)=>{Object.defineProperty(V2A,"__esModule",{value:!0});V2A._globalThis=void 0;V2A._globalThis=typeof globalThis==="object"?globalThis:global});var Vl=R((N2A)=>{Object.defineProperty(N2A,"__esModule",{value:!0});N2A.hexToBinary=void 0;function D2A(A){if(A>=48&&A<=57)return A-48;if(A>=97&&A<=102)return A-87;return A-55}function BIB(A){let Q=new Uint8Array(A.length/2),B=0;for(let Y=0;Y{Object.defineProperty(q2A,"__esModule",{value:!0});q2A.hexToBase64=void 0;var YIB=Vl();function JIB(A){return Buffer.from((0,YIB.hexToBinary)(A)).toString("base64")}q2A.hexToBase64=JIB});var T2A=R((O2A)=>{Object.defineProperty(O2A,"__esModule",{value:!0});O2A.RandomIdGenerator=void 0;var CIB=8,w2A=16;class j2A{constructor(){this.generateTraceId=R2A(w2A),this.generateSpanId=R2A(CIB)}}O2A.RandomIdGenerator=j2A;var CO=Buffer.allocUnsafe(w2A);function R2A(A){return function(){for(let B=0;B>>0,B*4);for(let B=0;B0)break;else if(B===A-1)CO[A-1]=1;return CO.toString("hex",0,A)}}});var _2A=R((S2A)=>{Object.defineProperty(S2A,"__esModule",{value:!0});S2A.otperformance=void 0;var XIB=u("perf_hooks");S2A.otperformance=XIB.performance});var Il=R((v2A)=>{Object.defineProperty(v2A,"__esModule",{value:!0});v2A.VERSION=void 0;v2A.VERSION="1.30.1"});var Hl=R((g2A)=>{Object.defineProperty(g2A,"__esModule",{value:!0});g2A.createConstMap=void 0;function GIB(A){let Q={},B=A.length;for(let Y=0;Y{Object.defineProperty(jOA,"__esModule",{value:!0});jOA.SEMATTRS_NET_HOST_CARRIER_ICC=jOA.SEMATTRS_NET_HOST_CARRIER_MNC=jOA.SEMATTRS_NET_HOST_CARRIER_MCC=jOA.SEMATTRS_NET_HOST_CARRIER_NAME=jOA.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=jOA.SEMATTRS_NET_HOST_CONNECTION_TYPE=jOA.SEMATTRS_NET_HOST_NAME=jOA.SEMATTRS_NET_HOST_PORT=jOA.SEMATTRS_NET_HOST_IP=jOA.SEMATTRS_NET_PEER_NAME=jOA.SEMATTRS_NET_PEER_PORT=jOA.SEMATTRS_NET_PEER_IP=jOA.SEMATTRS_NET_TRANSPORT=jOA.SEMATTRS_FAAS_INVOKED_REGION=jOA.SEMATTRS_FAAS_INVOKED_PROVIDER=jOA.SEMATTRS_FAAS_INVOKED_NAME=jOA.SEMATTRS_FAAS_COLDSTART=jOA.SEMATTRS_FAAS_CRON=jOA.SEMATTRS_FAAS_TIME=jOA.SEMATTRS_FAAS_DOCUMENT_NAME=jOA.SEMATTRS_FAAS_DOCUMENT_TIME=jOA.SEMATTRS_FAAS_DOCUMENT_OPERATION=jOA.SEMATTRS_FAAS_DOCUMENT_COLLECTION=jOA.SEMATTRS_FAAS_EXECUTION=jOA.SEMATTRS_FAAS_TRIGGER=jOA.SEMATTRS_EXCEPTION_ESCAPED=jOA.SEMATTRS_EXCEPTION_STACKTRACE=jOA.SEMATTRS_EXCEPTION_MESSAGE=jOA.SEMATTRS_EXCEPTION_TYPE=jOA.SEMATTRS_DB_SQL_TABLE=jOA.SEMATTRS_DB_MONGODB_COLLECTION=jOA.SEMATTRS_DB_REDIS_DATABASE_INDEX=jOA.SEMATTRS_DB_HBASE_NAMESPACE=jOA.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=jOA.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=jOA.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=jOA.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=jOA.SEMATTRS_DB_CASSANDRA_TABLE=jOA.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=jOA.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=jOA.SEMATTRS_DB_CASSANDRA_KEYSPACE=jOA.SEMATTRS_DB_MSSQL_INSTANCE_NAME=jOA.SEMATTRS_DB_OPERATION=jOA.SEMATTRS_DB_STATEMENT=jOA.SEMATTRS_DB_NAME=jOA.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=jOA.SEMATTRS_DB_USER=jOA.SEMATTRS_DB_CONNECTION_STRING=jOA.SEMATTRS_DB_SYSTEM=jOA.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=void 0;jOA.SEMATTRS_MESSAGING_DESTINATION_KIND=jOA.SEMATTRS_MESSAGING_DESTINATION=jOA.SEMATTRS_MESSAGING_SYSTEM=jOA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=jOA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=jOA.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=jOA.SEMATTRS_AWS_DYNAMODB_COUNT=jOA.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=jOA.SEMATTRS_AWS_DYNAMODB_SEGMENT=jOA.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=jOA.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=jOA.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=jOA.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=jOA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=jOA.SEMATTRS_AWS_DYNAMODB_SELECT=jOA.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=jOA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=jOA.SEMATTRS_AWS_DYNAMODB_LIMIT=jOA.SEMATTRS_AWS_DYNAMODB_PROJECTION=jOA.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=jOA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=jOA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=jOA.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=jOA.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=jOA.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=jOA.SEMATTRS_HTTP_CLIENT_IP=jOA.SEMATTRS_HTTP_ROUTE=jOA.SEMATTRS_HTTP_SERVER_NAME=jOA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=jOA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=jOA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=jOA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=jOA.SEMATTRS_HTTP_USER_AGENT=jOA.SEMATTRS_HTTP_FLAVOR=jOA.SEMATTRS_HTTP_STATUS_CODE=jOA.SEMATTRS_HTTP_SCHEME=jOA.SEMATTRS_HTTP_HOST=jOA.SEMATTRS_HTTP_TARGET=jOA.SEMATTRS_HTTP_URL=jOA.SEMATTRS_HTTP_METHOD=jOA.SEMATTRS_CODE_LINENO=jOA.SEMATTRS_CODE_FILEPATH=jOA.SEMATTRS_CODE_NAMESPACE=jOA.SEMATTRS_CODE_FUNCTION=jOA.SEMATTRS_THREAD_NAME=jOA.SEMATTRS_THREAD_ID=jOA.SEMATTRS_ENDUSER_SCOPE=jOA.SEMATTRS_ENDUSER_ROLE=jOA.SEMATTRS_ENDUSER_ID=jOA.SEMATTRS_PEER_SERVICE=void 0;jOA.DBSYSTEMVALUES_FILEMAKER=jOA.DBSYSTEMVALUES_DERBY=jOA.DBSYSTEMVALUES_FIREBIRD=jOA.DBSYSTEMVALUES_ADABAS=jOA.DBSYSTEMVALUES_CACHE=jOA.DBSYSTEMVALUES_EDB=jOA.DBSYSTEMVALUES_FIRSTSQL=jOA.DBSYSTEMVALUES_INGRES=jOA.DBSYSTEMVALUES_HANADB=jOA.DBSYSTEMVALUES_MAXDB=jOA.DBSYSTEMVALUES_PROGRESS=jOA.DBSYSTEMVALUES_HSQLDB=jOA.DBSYSTEMVALUES_CLOUDSCAPE=jOA.DBSYSTEMVALUES_HIVE=jOA.DBSYSTEMVALUES_REDSHIFT=jOA.DBSYSTEMVALUES_POSTGRESQL=jOA.DBSYSTEMVALUES_DB2=jOA.DBSYSTEMVALUES_ORACLE=jOA.DBSYSTEMVALUES_MYSQL=jOA.DBSYSTEMVALUES_MSSQL=jOA.DBSYSTEMVALUES_OTHER_SQL=jOA.SemanticAttributes=jOA.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=jOA.SEMATTRS_MESSAGE_COMPRESSED_SIZE=jOA.SEMATTRS_MESSAGE_ID=jOA.SEMATTRS_MESSAGE_TYPE=jOA.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=jOA.SEMATTRS_RPC_JSONRPC_ERROR_CODE=jOA.SEMATTRS_RPC_JSONRPC_REQUEST_ID=jOA.SEMATTRS_RPC_JSONRPC_VERSION=jOA.SEMATTRS_RPC_GRPC_STATUS_CODE=jOA.SEMATTRS_RPC_METHOD=jOA.SEMATTRS_RPC_SERVICE=jOA.SEMATTRS_RPC_SYSTEM=jOA.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=jOA.SEMATTRS_MESSAGING_KAFKA_PARTITION=jOA.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=jOA.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=jOA.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=jOA.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=jOA.SEMATTRS_MESSAGING_CONSUMER_ID=jOA.SEMATTRS_MESSAGING_OPERATION=jOA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=jOA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=jOA.SEMATTRS_MESSAGING_CONVERSATION_ID=jOA.SEMATTRS_MESSAGING_MESSAGE_ID=jOA.SEMATTRS_MESSAGING_URL=jOA.SEMATTRS_MESSAGING_PROTOCOL_VERSION=jOA.SEMATTRS_MESSAGING_PROTOCOL=jOA.SEMATTRS_MESSAGING_TEMP_DESTINATION=void 0;jOA.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=jOA.FaasDocumentOperationValues=jOA.FAASDOCUMENTOPERATIONVALUES_DELETE=jOA.FAASDOCUMENTOPERATIONVALUES_EDIT=jOA.FAASDOCUMENTOPERATIONVALUES_INSERT=jOA.FaasTriggerValues=jOA.FAASTRIGGERVALUES_OTHER=jOA.FAASTRIGGERVALUES_TIMER=jOA.FAASTRIGGERVALUES_PUBSUB=jOA.FAASTRIGGERVALUES_HTTP=jOA.FAASTRIGGERVALUES_DATASOURCE=jOA.DbCassandraConsistencyLevelValues=jOA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=jOA.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=jOA.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=jOA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=jOA.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=jOA.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=jOA.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=jOA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=jOA.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=jOA.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=jOA.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=jOA.DbSystemValues=jOA.DBSYSTEMVALUES_COCKROACHDB=jOA.DBSYSTEMVALUES_MEMCACHED=jOA.DBSYSTEMVALUES_ELASTICSEARCH=jOA.DBSYSTEMVALUES_GEODE=jOA.DBSYSTEMVALUES_NEO4J=jOA.DBSYSTEMVALUES_DYNAMODB=jOA.DBSYSTEMVALUES_COSMOSDB=jOA.DBSYSTEMVALUES_COUCHDB=jOA.DBSYSTEMVALUES_COUCHBASE=jOA.DBSYSTEMVALUES_REDIS=jOA.DBSYSTEMVALUES_MONGODB=jOA.DBSYSTEMVALUES_HBASE=jOA.DBSYSTEMVALUES_CASSANDRA=jOA.DBSYSTEMVALUES_COLDFUSION=jOA.DBSYSTEMVALUES_H2=jOA.DBSYSTEMVALUES_VERTICA=jOA.DBSYSTEMVALUES_TERADATA=jOA.DBSYSTEMVALUES_SYBASE=jOA.DBSYSTEMVALUES_SQLITE=jOA.DBSYSTEMVALUES_POINTBASE=jOA.DBSYSTEMVALUES_PERVASIVE=jOA.DBSYSTEMVALUES_NETEZZA=jOA.DBSYSTEMVALUES_MARIADB=jOA.DBSYSTEMVALUES_INTERBASE=jOA.DBSYSTEMVALUES_INSTANTDB=jOA.DBSYSTEMVALUES_INFORMIX=void 0;jOA.MESSAGINGOPERATIONVALUES_RECEIVE=jOA.MessagingDestinationKindValues=jOA.MESSAGINGDESTINATIONKINDVALUES_TOPIC=jOA.MESSAGINGDESTINATIONKINDVALUES_QUEUE=jOA.HttpFlavorValues=jOA.HTTPFLAVORVALUES_QUIC=jOA.HTTPFLAVORVALUES_SPDY=jOA.HTTPFLAVORVALUES_HTTP_2_0=jOA.HTTPFLAVORVALUES_HTTP_1_1=jOA.HTTPFLAVORVALUES_HTTP_1_0=jOA.NetHostConnectionSubtypeValues=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_NR=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=jOA.NetHostConnectionTypeValues=jOA.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=jOA.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=jOA.NETHOSTCONNECTIONTYPEVALUES_CELL=jOA.NETHOSTCONNECTIONTYPEVALUES_WIRED=jOA.NETHOSTCONNECTIONTYPEVALUES_WIFI=jOA.NetTransportValues=jOA.NETTRANSPORTVALUES_OTHER=jOA.NETTRANSPORTVALUES_INPROC=jOA.NETTRANSPORTVALUES_PIPE=jOA.NETTRANSPORTVALUES_UNIX=jOA.NETTRANSPORTVALUES_IP=jOA.NETTRANSPORTVALUES_IP_UDP=jOA.NETTRANSPORTVALUES_IP_TCP=jOA.FaasInvokedProviderValues=jOA.FAASINVOKEDPROVIDERVALUES_GCP=jOA.FAASINVOKEDPROVIDERVALUES_AZURE=jOA.FAASINVOKEDPROVIDERVALUES_AWS=void 0;jOA.MessageTypeValues=jOA.MESSAGETYPEVALUES_RECEIVED=jOA.MESSAGETYPEVALUES_SENT=jOA.RpcGrpcStatusCodeValues=jOA.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=jOA.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=jOA.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=jOA.RPCGRPCSTATUSCODEVALUES_INTERNAL=jOA.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=jOA.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=jOA.RPCGRPCSTATUSCODEVALUES_ABORTED=jOA.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=jOA.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=jOA.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=jOA.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=jOA.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=jOA.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=jOA.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=jOA.RPCGRPCSTATUSCODEVALUES_UNKNOWN=jOA.RPCGRPCSTATUSCODEVALUES_CANCELLED=jOA.RPCGRPCSTATUSCODEVALUES_OK=jOA.MessagingOperationValues=jOA.MESSAGINGOPERATIONVALUES_PROCESS=void 0;var h5=Hl(),x2A="aws.lambda.invoked_arn",f2A="db.system",b2A="db.connection_string",m2A="db.user",u2A="db.jdbc.driver_classname",d2A="db.name",c2A="db.statement",l2A="db.operation",p2A="db.mssql.instance_name",i2A="db.cassandra.keyspace",n2A="db.cassandra.page_size",s2A="db.cassandra.consistency_level",r2A="db.cassandra.table",a2A="db.cassandra.idempotence",o2A="db.cassandra.speculative_execution_count",t2A="db.cassandra.coordinator.id",e2A="db.cassandra.coordinator.dc",A3A="db.hbase.namespace",Q3A="db.redis.database_index",B3A="db.mongodb.collection",Y3A="db.sql.table",J3A="exception.type",C3A="exception.message",X3A="exception.stacktrace",G3A="exception.escaped",W3A="faas.trigger",F3A="faas.execution",Z3A="faas.document.collection",$3A="faas.document.operation",U3A="faas.document.time",E3A="faas.document.name",K3A="faas.time",V3A="faas.cron",I3A="faas.coldstart",H3A="faas.invoked_name",D3A="faas.invoked_provider",N3A="faas.invoked_region",L3A="net.transport",q3A="net.peer.ip",M3A="net.peer.port",z3A="net.peer.name",R3A="net.host.ip",w3A="net.host.port",j3A="net.host.name",O3A="net.host.connection.type",P3A="net.host.connection.subtype",T3A="net.host.carrier.name",S3A="net.host.carrier.mcc",k3A="net.host.carrier.mnc",_3A="net.host.carrier.icc",v3A="peer.service",y3A="enduser.id",g3A="enduser.role",h3A="enduser.scope",x3A="thread.id",f3A="thread.name",b3A="code.function",m3A="code.namespace",u3A="code.filepath",d3A="code.lineno",c3A="http.method",l3A="http.url",p3A="http.target",i3A="http.host",n3A="http.scheme",s3A="http.status_code",r3A="http.flavor",a3A="http.user_agent",o3A="http.request_content_length",t3A="http.request_content_length_uncompressed",e3A="http.response_content_length",ARA="http.response_content_length_uncompressed",QRA="http.server_name",BRA="http.route",YRA="http.client_ip",JRA="aws.dynamodb.table_names",CRA="aws.dynamodb.consumed_capacity",XRA="aws.dynamodb.item_collection_metrics",GRA="aws.dynamodb.provisioned_read_capacity",WRA="aws.dynamodb.provisioned_write_capacity",FRA="aws.dynamodb.consistent_read",ZRA="aws.dynamodb.projection",$RA="aws.dynamodb.limit",URA="aws.dynamodb.attributes_to_get",ERA="aws.dynamodb.index_name",KRA="aws.dynamodb.select",VRA="aws.dynamodb.global_secondary_indexes",IRA="aws.dynamodb.local_secondary_indexes",HRA="aws.dynamodb.exclusive_start_table",DRA="aws.dynamodb.table_count",NRA="aws.dynamodb.scan_forward",LRA="aws.dynamodb.segment",qRA="aws.dynamodb.total_segments",MRA="aws.dynamodb.count",zRA="aws.dynamodb.scanned_count",RRA="aws.dynamodb.attribute_definitions",wRA="aws.dynamodb.global_secondary_index_updates",jRA="messaging.system",ORA="messaging.destination",PRA="messaging.destination_kind",TRA="messaging.temp_destination",SRA="messaging.protocol",kRA="messaging.protocol_version",_RA="messaging.url",vRA="messaging.message_id",yRA="messaging.conversation_id",gRA="messaging.message_payload_size_bytes",hRA="messaging.message_payload_compressed_size_bytes",xRA="messaging.operation",fRA="messaging.consumer_id",bRA="messaging.rabbitmq.routing_key",mRA="messaging.kafka.message_key",uRA="messaging.kafka.consumer_group",dRA="messaging.kafka.client_id",cRA="messaging.kafka.partition",lRA="messaging.kafka.tombstone",pRA="rpc.system",iRA="rpc.service",nRA="rpc.method",sRA="rpc.grpc.status_code",rRA="rpc.jsonrpc.version",aRA="rpc.jsonrpc.request_id",oRA="rpc.jsonrpc.error_code",tRA="rpc.jsonrpc.error_message",eRA="message.type",AwA="message.id",QwA="message.compressed_size",BwA="message.uncompressed_size";jOA.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=x2A;jOA.SEMATTRS_DB_SYSTEM=f2A;jOA.SEMATTRS_DB_CONNECTION_STRING=b2A;jOA.SEMATTRS_DB_USER=m2A;jOA.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=u2A;jOA.SEMATTRS_DB_NAME=d2A;jOA.SEMATTRS_DB_STATEMENT=c2A;jOA.SEMATTRS_DB_OPERATION=l2A;jOA.SEMATTRS_DB_MSSQL_INSTANCE_NAME=p2A;jOA.SEMATTRS_DB_CASSANDRA_KEYSPACE=i2A;jOA.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=n2A;jOA.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=s2A;jOA.SEMATTRS_DB_CASSANDRA_TABLE=r2A;jOA.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=a2A;jOA.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=o2A;jOA.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=t2A;jOA.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=e2A;jOA.SEMATTRS_DB_HBASE_NAMESPACE=A3A;jOA.SEMATTRS_DB_REDIS_DATABASE_INDEX=Q3A;jOA.SEMATTRS_DB_MONGODB_COLLECTION=B3A;jOA.SEMATTRS_DB_SQL_TABLE=Y3A;jOA.SEMATTRS_EXCEPTION_TYPE=J3A;jOA.SEMATTRS_EXCEPTION_MESSAGE=C3A;jOA.SEMATTRS_EXCEPTION_STACKTRACE=X3A;jOA.SEMATTRS_EXCEPTION_ESCAPED=G3A;jOA.SEMATTRS_FAAS_TRIGGER=W3A;jOA.SEMATTRS_FAAS_EXECUTION=F3A;jOA.SEMATTRS_FAAS_DOCUMENT_COLLECTION=Z3A;jOA.SEMATTRS_FAAS_DOCUMENT_OPERATION=$3A;jOA.SEMATTRS_FAAS_DOCUMENT_TIME=U3A;jOA.SEMATTRS_FAAS_DOCUMENT_NAME=E3A;jOA.SEMATTRS_FAAS_TIME=K3A;jOA.SEMATTRS_FAAS_CRON=V3A;jOA.SEMATTRS_FAAS_COLDSTART=I3A;jOA.SEMATTRS_FAAS_INVOKED_NAME=H3A;jOA.SEMATTRS_FAAS_INVOKED_PROVIDER=D3A;jOA.SEMATTRS_FAAS_INVOKED_REGION=N3A;jOA.SEMATTRS_NET_TRANSPORT=L3A;jOA.SEMATTRS_NET_PEER_IP=q3A;jOA.SEMATTRS_NET_PEER_PORT=M3A;jOA.SEMATTRS_NET_PEER_NAME=z3A;jOA.SEMATTRS_NET_HOST_IP=R3A;jOA.SEMATTRS_NET_HOST_PORT=w3A;jOA.SEMATTRS_NET_HOST_NAME=j3A;jOA.SEMATTRS_NET_HOST_CONNECTION_TYPE=O3A;jOA.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=P3A;jOA.SEMATTRS_NET_HOST_CARRIER_NAME=T3A;jOA.SEMATTRS_NET_HOST_CARRIER_MCC=S3A;jOA.SEMATTRS_NET_HOST_CARRIER_MNC=k3A;jOA.SEMATTRS_NET_HOST_CARRIER_ICC=_3A;jOA.SEMATTRS_PEER_SERVICE=v3A;jOA.SEMATTRS_ENDUSER_ID=y3A;jOA.SEMATTRS_ENDUSER_ROLE=g3A;jOA.SEMATTRS_ENDUSER_SCOPE=h3A;jOA.SEMATTRS_THREAD_ID=x3A;jOA.SEMATTRS_THREAD_NAME=f3A;jOA.SEMATTRS_CODE_FUNCTION=b3A;jOA.SEMATTRS_CODE_NAMESPACE=m3A;jOA.SEMATTRS_CODE_FILEPATH=u3A;jOA.SEMATTRS_CODE_LINENO=d3A;jOA.SEMATTRS_HTTP_METHOD=c3A;jOA.SEMATTRS_HTTP_URL=l3A;jOA.SEMATTRS_HTTP_TARGET=p3A;jOA.SEMATTRS_HTTP_HOST=i3A;jOA.SEMATTRS_HTTP_SCHEME=n3A;jOA.SEMATTRS_HTTP_STATUS_CODE=s3A;jOA.SEMATTRS_HTTP_FLAVOR=r3A;jOA.SEMATTRS_HTTP_USER_AGENT=a3A;jOA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=o3A;jOA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=t3A;jOA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=e3A;jOA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=ARA;jOA.SEMATTRS_HTTP_SERVER_NAME=QRA;jOA.SEMATTRS_HTTP_ROUTE=BRA;jOA.SEMATTRS_HTTP_CLIENT_IP=YRA;jOA.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=JRA;jOA.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=CRA;jOA.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=XRA;jOA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=GRA;jOA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=WRA;jOA.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=FRA;jOA.SEMATTRS_AWS_DYNAMODB_PROJECTION=ZRA;jOA.SEMATTRS_AWS_DYNAMODB_LIMIT=$RA;jOA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=URA;jOA.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=ERA;jOA.SEMATTRS_AWS_DYNAMODB_SELECT=KRA;jOA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=VRA;jOA.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=IRA;jOA.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=HRA;jOA.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=DRA;jOA.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=NRA;jOA.SEMATTRS_AWS_DYNAMODB_SEGMENT=LRA;jOA.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=qRA;jOA.SEMATTRS_AWS_DYNAMODB_COUNT=MRA;jOA.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=zRA;jOA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=RRA;jOA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=wRA;jOA.SEMATTRS_MESSAGING_SYSTEM=jRA;jOA.SEMATTRS_MESSAGING_DESTINATION=ORA;jOA.SEMATTRS_MESSAGING_DESTINATION_KIND=PRA;jOA.SEMATTRS_MESSAGING_TEMP_DESTINATION=TRA;jOA.SEMATTRS_MESSAGING_PROTOCOL=SRA;jOA.SEMATTRS_MESSAGING_PROTOCOL_VERSION=kRA;jOA.SEMATTRS_MESSAGING_URL=_RA;jOA.SEMATTRS_MESSAGING_MESSAGE_ID=vRA;jOA.SEMATTRS_MESSAGING_CONVERSATION_ID=yRA;jOA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=gRA;jOA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=hRA;jOA.SEMATTRS_MESSAGING_OPERATION=xRA;jOA.SEMATTRS_MESSAGING_CONSUMER_ID=fRA;jOA.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=bRA;jOA.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=mRA;jOA.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=uRA;jOA.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=dRA;jOA.SEMATTRS_MESSAGING_KAFKA_PARTITION=cRA;jOA.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=lRA;jOA.SEMATTRS_RPC_SYSTEM=pRA;jOA.SEMATTRS_RPC_SERVICE=iRA;jOA.SEMATTRS_RPC_METHOD=nRA;jOA.SEMATTRS_RPC_GRPC_STATUS_CODE=sRA;jOA.SEMATTRS_RPC_JSONRPC_VERSION=rRA;jOA.SEMATTRS_RPC_JSONRPC_REQUEST_ID=aRA;jOA.SEMATTRS_RPC_JSONRPC_ERROR_CODE=oRA;jOA.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=tRA;jOA.SEMATTRS_MESSAGE_TYPE=eRA;jOA.SEMATTRS_MESSAGE_ID=AwA;jOA.SEMATTRS_MESSAGE_COMPRESSED_SIZE=QwA;jOA.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=BwA;jOA.SemanticAttributes=(0,h5.createConstMap)([x2A,f2A,b2A,m2A,u2A,d2A,c2A,l2A,p2A,i2A,n2A,s2A,r2A,a2A,o2A,t2A,e2A,A3A,Q3A,B3A,Y3A,J3A,C3A,X3A,G3A,W3A,F3A,Z3A,$3A,U3A,E3A,K3A,V3A,I3A,H3A,D3A,N3A,L3A,q3A,M3A,z3A,R3A,w3A,j3A,O3A,P3A,T3A,S3A,k3A,_3A,v3A,y3A,g3A,h3A,x3A,f3A,b3A,m3A,u3A,d3A,c3A,l3A,p3A,i3A,n3A,s3A,r3A,a3A,o3A,t3A,e3A,ARA,QRA,BRA,YRA,JRA,CRA,XRA,GRA,WRA,FRA,ZRA,$RA,URA,ERA,KRA,VRA,IRA,HRA,DRA,NRA,LRA,qRA,MRA,zRA,RRA,wRA,jRA,ORA,PRA,TRA,SRA,kRA,_RA,vRA,yRA,gRA,hRA,xRA,fRA,bRA,mRA,uRA,dRA,cRA,lRA,pRA,iRA,nRA,sRA,rRA,aRA,oRA,tRA,eRA,AwA,QwA,BwA]);var YwA="other_sql",JwA="mssql",CwA="mysql",XwA="oracle",GwA="db2",WwA="postgresql",FwA="redshift",ZwA="hive",$wA="cloudscape",UwA="hsqldb",EwA="progress",KwA="maxdb",VwA="hanadb",IwA="ingres",HwA="firstsql",DwA="edb",NwA="cache",LwA="adabas",qwA="firebird",MwA="derby",zwA="filemaker",RwA="informix",wwA="instantdb",jwA="interbase",OwA="mariadb",PwA="netezza",TwA="pervasive",SwA="pointbase",kwA="sqlite",_wA="sybase",vwA="teradata",ywA="vertica",gwA="h2",hwA="coldfusion",xwA="cassandra",fwA="hbase",bwA="mongodb",mwA="redis",uwA="couchbase",dwA="couchdb",cwA="cosmosdb",lwA="dynamodb",pwA="neo4j",iwA="geode",nwA="elasticsearch",swA="memcached",rwA="cockroachdb";jOA.DBSYSTEMVALUES_OTHER_SQL=YwA;jOA.DBSYSTEMVALUES_MSSQL=JwA;jOA.DBSYSTEMVALUES_MYSQL=CwA;jOA.DBSYSTEMVALUES_ORACLE=XwA;jOA.DBSYSTEMVALUES_DB2=GwA;jOA.DBSYSTEMVALUES_POSTGRESQL=WwA;jOA.DBSYSTEMVALUES_REDSHIFT=FwA;jOA.DBSYSTEMVALUES_HIVE=ZwA;jOA.DBSYSTEMVALUES_CLOUDSCAPE=$wA;jOA.DBSYSTEMVALUES_HSQLDB=UwA;jOA.DBSYSTEMVALUES_PROGRESS=EwA;jOA.DBSYSTEMVALUES_MAXDB=KwA;jOA.DBSYSTEMVALUES_HANADB=VwA;jOA.DBSYSTEMVALUES_INGRES=IwA;jOA.DBSYSTEMVALUES_FIRSTSQL=HwA;jOA.DBSYSTEMVALUES_EDB=DwA;jOA.DBSYSTEMVALUES_CACHE=NwA;jOA.DBSYSTEMVALUES_ADABAS=LwA;jOA.DBSYSTEMVALUES_FIREBIRD=qwA;jOA.DBSYSTEMVALUES_DERBY=MwA;jOA.DBSYSTEMVALUES_FILEMAKER=zwA;jOA.DBSYSTEMVALUES_INFORMIX=RwA;jOA.DBSYSTEMVALUES_INSTANTDB=wwA;jOA.DBSYSTEMVALUES_INTERBASE=jwA;jOA.DBSYSTEMVALUES_MARIADB=OwA;jOA.DBSYSTEMVALUES_NETEZZA=PwA;jOA.DBSYSTEMVALUES_PERVASIVE=TwA;jOA.DBSYSTEMVALUES_POINTBASE=SwA;jOA.DBSYSTEMVALUES_SQLITE=kwA;jOA.DBSYSTEMVALUES_SYBASE=_wA;jOA.DBSYSTEMVALUES_TERADATA=vwA;jOA.DBSYSTEMVALUES_VERTICA=ywA;jOA.DBSYSTEMVALUES_H2=gwA;jOA.DBSYSTEMVALUES_COLDFUSION=hwA;jOA.DBSYSTEMVALUES_CASSANDRA=xwA;jOA.DBSYSTEMVALUES_HBASE=fwA;jOA.DBSYSTEMVALUES_MONGODB=bwA;jOA.DBSYSTEMVALUES_REDIS=mwA;jOA.DBSYSTEMVALUES_COUCHBASE=uwA;jOA.DBSYSTEMVALUES_COUCHDB=dwA;jOA.DBSYSTEMVALUES_COSMOSDB=cwA;jOA.DBSYSTEMVALUES_DYNAMODB=lwA;jOA.DBSYSTEMVALUES_NEO4J=pwA;jOA.DBSYSTEMVALUES_GEODE=iwA;jOA.DBSYSTEMVALUES_ELASTICSEARCH=nwA;jOA.DBSYSTEMVALUES_MEMCACHED=swA;jOA.DBSYSTEMVALUES_COCKROACHDB=rwA;jOA.DbSystemValues=(0,h5.createConstMap)([YwA,JwA,CwA,XwA,GwA,WwA,FwA,ZwA,$wA,UwA,EwA,KwA,VwA,IwA,HwA,DwA,NwA,LwA,qwA,MwA,zwA,RwA,wwA,jwA,OwA,PwA,TwA,SwA,kwA,_wA,vwA,ywA,gwA,hwA,xwA,fwA,bwA,mwA,uwA,dwA,cwA,lwA,pwA,iwA,nwA,swA,rwA]);var awA="all",owA="each_quorum",twA="quorum",ewA="local_quorum",AjA="one",QjA="two",BjA="three",YjA="local_one",JjA="any",CjA="serial",XjA="local_serial";jOA.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=awA;jOA.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=owA;jOA.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=twA;jOA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=ewA;jOA.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=AjA;jOA.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=QjA;jOA.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=BjA;jOA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=YjA;jOA.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=JjA;jOA.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=CjA;jOA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=XjA;jOA.DbCassandraConsistencyLevelValues=(0,h5.createConstMap)([awA,owA,twA,ewA,AjA,QjA,BjA,YjA,JjA,CjA,XjA]);var GjA="datasource",WjA="http",FjA="pubsub",ZjA="timer",$jA="other";jOA.FAASTRIGGERVALUES_DATASOURCE=GjA;jOA.FAASTRIGGERVALUES_HTTP=WjA;jOA.FAASTRIGGERVALUES_PUBSUB=FjA;jOA.FAASTRIGGERVALUES_TIMER=ZjA;jOA.FAASTRIGGERVALUES_OTHER=$jA;jOA.FaasTriggerValues=(0,h5.createConstMap)([GjA,WjA,FjA,ZjA,$jA]);var UjA="insert",EjA="edit",KjA="delete";jOA.FAASDOCUMENTOPERATIONVALUES_INSERT=UjA;jOA.FAASDOCUMENTOPERATIONVALUES_EDIT=EjA;jOA.FAASDOCUMENTOPERATIONVALUES_DELETE=KjA;jOA.FaasDocumentOperationValues=(0,h5.createConstMap)([UjA,EjA,KjA]);var VjA="alibaba_cloud",IjA="aws",HjA="azure",DjA="gcp";jOA.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=VjA;jOA.FAASINVOKEDPROVIDERVALUES_AWS=IjA;jOA.FAASINVOKEDPROVIDERVALUES_AZURE=HjA;jOA.FAASINVOKEDPROVIDERVALUES_GCP=DjA;jOA.FaasInvokedProviderValues=(0,h5.createConstMap)([VjA,IjA,HjA,DjA]);var NjA="ip_tcp",LjA="ip_udp",qjA="ip",MjA="unix",zjA="pipe",RjA="inproc",wjA="other";jOA.NETTRANSPORTVALUES_IP_TCP=NjA;jOA.NETTRANSPORTVALUES_IP_UDP=LjA;jOA.NETTRANSPORTVALUES_IP=qjA;jOA.NETTRANSPORTVALUES_UNIX=MjA;jOA.NETTRANSPORTVALUES_PIPE=zjA;jOA.NETTRANSPORTVALUES_INPROC=RjA;jOA.NETTRANSPORTVALUES_OTHER=wjA;jOA.NetTransportValues=(0,h5.createConstMap)([NjA,LjA,qjA,MjA,zjA,RjA,wjA]);var jjA="wifi",OjA="wired",PjA="cell",TjA="unavailable",SjA="unknown";jOA.NETHOSTCONNECTIONTYPEVALUES_WIFI=jjA;jOA.NETHOSTCONNECTIONTYPEVALUES_WIRED=OjA;jOA.NETHOSTCONNECTIONTYPEVALUES_CELL=PjA;jOA.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=TjA;jOA.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=SjA;jOA.NetHostConnectionTypeValues=(0,h5.createConstMap)([jjA,OjA,PjA,TjA,SjA]);var kjA="gprs",_jA="edge",vjA="umts",yjA="cdma",gjA="evdo_0",hjA="evdo_a",xjA="cdma2000_1xrtt",fjA="hsdpa",bjA="hsupa",mjA="hspa",ujA="iden",djA="evdo_b",cjA="lte",ljA="ehrpd",pjA="hspap",ijA="gsm",njA="td_scdma",sjA="iwlan",rjA="nr",ajA="nrnsa",ojA="lte_ca";jOA.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=kjA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=_jA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=vjA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=yjA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=gjA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=hjA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=xjA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=fjA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=bjA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=mjA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=ujA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=djA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=cjA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=ljA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=pjA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=ijA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=njA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=sjA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_NR=rjA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=ajA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=ojA;jOA.NetHostConnectionSubtypeValues=(0,h5.createConstMap)([kjA,_jA,vjA,yjA,gjA,hjA,xjA,fjA,bjA,mjA,ujA,djA,cjA,ljA,pjA,ijA,njA,sjA,rjA,ajA,ojA]);var tjA="1.0",ejA="1.1",AOA="2.0",QOA="SPDY",BOA="QUIC";jOA.HTTPFLAVORVALUES_HTTP_1_0=tjA;jOA.HTTPFLAVORVALUES_HTTP_1_1=ejA;jOA.HTTPFLAVORVALUES_HTTP_2_0=AOA;jOA.HTTPFLAVORVALUES_SPDY=QOA;jOA.HTTPFLAVORVALUES_QUIC=BOA;jOA.HttpFlavorValues={HTTP_1_0:tjA,HTTP_1_1:ejA,HTTP_2_0:AOA,SPDY:QOA,QUIC:BOA};var YOA="queue",JOA="topic";jOA.MESSAGINGDESTINATIONKINDVALUES_QUEUE=YOA;jOA.MESSAGINGDESTINATIONKINDVALUES_TOPIC=JOA;jOA.MessagingDestinationKindValues=(0,h5.createConstMap)([YOA,JOA]);var COA="receive",XOA="process";jOA.MESSAGINGOPERATIONVALUES_RECEIVE=COA;jOA.MESSAGINGOPERATIONVALUES_PROCESS=XOA;jOA.MessagingOperationValues=(0,h5.createConstMap)([COA,XOA]);var GOA=0,WOA=1,FOA=2,ZOA=3,$OA=4,UOA=5,EOA=6,KOA=7,VOA=8,IOA=9,HOA=10,DOA=11,NOA=12,LOA=13,qOA=14,MOA=15,zOA=16;jOA.RPCGRPCSTATUSCODEVALUES_OK=GOA;jOA.RPCGRPCSTATUSCODEVALUES_CANCELLED=WOA;jOA.RPCGRPCSTATUSCODEVALUES_UNKNOWN=FOA;jOA.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=ZOA;jOA.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=$OA;jOA.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=UOA;jOA.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=EOA;jOA.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=KOA;jOA.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=VOA;jOA.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=IOA;jOA.RPCGRPCSTATUSCODEVALUES_ABORTED=HOA;jOA.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=DOA;jOA.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=NOA;jOA.RPCGRPCSTATUSCODEVALUES_INTERNAL=LOA;jOA.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=qOA;jOA.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=MOA;jOA.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=zOA;jOA.RpcGrpcStatusCodeValues={OK:GOA,CANCELLED:WOA,UNKNOWN:FOA,INVALID_ARGUMENT:ZOA,DEADLINE_EXCEEDED:$OA,NOT_FOUND:UOA,ALREADY_EXISTS:EOA,PERMISSION_DENIED:KOA,RESOURCE_EXHAUSTED:VOA,FAILED_PRECONDITION:IOA,ABORTED:HOA,OUT_OF_RANGE:DOA,UNIMPLEMENTED:NOA,INTERNAL:LOA,UNAVAILABLE:qOA,DATA_LOSS:MOA,UNAUTHENTICATED:zOA};var ROA="SENT",wOA="RECEIVED";jOA.MESSAGETYPEVALUES_SENT=ROA;jOA.MESSAGETYPEVALUES_RECEIVED=wOA;jOA.MessageTypeValues=(0,h5.createConstMap)([ROA,wOA])});var yOA=R((tZ)=>{var CqB=tZ&&tZ.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),XqB=tZ&&tZ.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))CqB(Q,A,B)};Object.defineProperty(tZ,"__esModule",{value:!0});XqB(vOA(),tZ)});var FSA=R((CSA)=>{Object.defineProperty(CSA,"__esModule",{value:!0});CSA.SEMRESATTRS_K8S_STATEFULSET_NAME=CSA.SEMRESATTRS_K8S_STATEFULSET_UID=CSA.SEMRESATTRS_K8S_DEPLOYMENT_NAME=CSA.SEMRESATTRS_K8S_DEPLOYMENT_UID=CSA.SEMRESATTRS_K8S_REPLICASET_NAME=CSA.SEMRESATTRS_K8S_REPLICASET_UID=CSA.SEMRESATTRS_K8S_CONTAINER_NAME=CSA.SEMRESATTRS_K8S_POD_NAME=CSA.SEMRESATTRS_K8S_POD_UID=CSA.SEMRESATTRS_K8S_NAMESPACE_NAME=CSA.SEMRESATTRS_K8S_NODE_UID=CSA.SEMRESATTRS_K8S_NODE_NAME=CSA.SEMRESATTRS_K8S_CLUSTER_NAME=CSA.SEMRESATTRS_HOST_IMAGE_VERSION=CSA.SEMRESATTRS_HOST_IMAGE_ID=CSA.SEMRESATTRS_HOST_IMAGE_NAME=CSA.SEMRESATTRS_HOST_ARCH=CSA.SEMRESATTRS_HOST_TYPE=CSA.SEMRESATTRS_HOST_NAME=CSA.SEMRESATTRS_HOST_ID=CSA.SEMRESATTRS_FAAS_MAX_MEMORY=CSA.SEMRESATTRS_FAAS_INSTANCE=CSA.SEMRESATTRS_FAAS_VERSION=CSA.SEMRESATTRS_FAAS_ID=CSA.SEMRESATTRS_FAAS_NAME=CSA.SEMRESATTRS_DEVICE_MODEL_NAME=CSA.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=CSA.SEMRESATTRS_DEVICE_ID=CSA.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=CSA.SEMRESATTRS_CONTAINER_IMAGE_TAG=CSA.SEMRESATTRS_CONTAINER_IMAGE_NAME=CSA.SEMRESATTRS_CONTAINER_RUNTIME=CSA.SEMRESATTRS_CONTAINER_ID=CSA.SEMRESATTRS_CONTAINER_NAME=CSA.SEMRESATTRS_AWS_LOG_STREAM_ARNS=CSA.SEMRESATTRS_AWS_LOG_STREAM_NAMES=CSA.SEMRESATTRS_AWS_LOG_GROUP_ARNS=CSA.SEMRESATTRS_AWS_LOG_GROUP_NAMES=CSA.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=CSA.SEMRESATTRS_AWS_ECS_TASK_REVISION=CSA.SEMRESATTRS_AWS_ECS_TASK_FAMILY=CSA.SEMRESATTRS_AWS_ECS_TASK_ARN=CSA.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=CSA.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=CSA.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=CSA.SEMRESATTRS_CLOUD_PLATFORM=CSA.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=CSA.SEMRESATTRS_CLOUD_REGION=CSA.SEMRESATTRS_CLOUD_ACCOUNT_ID=CSA.SEMRESATTRS_CLOUD_PROVIDER=void 0;CSA.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=CSA.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=CSA.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=CSA.CLOUDPLATFORMVALUES_AZURE_AKS=CSA.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=CSA.CLOUDPLATFORMVALUES_AZURE_VM=CSA.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=CSA.CLOUDPLATFORMVALUES_AWS_LAMBDA=CSA.CLOUDPLATFORMVALUES_AWS_EKS=CSA.CLOUDPLATFORMVALUES_AWS_ECS=CSA.CLOUDPLATFORMVALUES_AWS_EC2=CSA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=CSA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=CSA.CloudProviderValues=CSA.CLOUDPROVIDERVALUES_GCP=CSA.CLOUDPROVIDERVALUES_AZURE=CSA.CLOUDPROVIDERVALUES_AWS=CSA.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=CSA.SemanticResourceAttributes=CSA.SEMRESATTRS_WEBENGINE_DESCRIPTION=CSA.SEMRESATTRS_WEBENGINE_VERSION=CSA.SEMRESATTRS_WEBENGINE_NAME=CSA.SEMRESATTRS_TELEMETRY_AUTO_VERSION=CSA.SEMRESATTRS_TELEMETRY_SDK_VERSION=CSA.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=CSA.SEMRESATTRS_TELEMETRY_SDK_NAME=CSA.SEMRESATTRS_SERVICE_VERSION=CSA.SEMRESATTRS_SERVICE_INSTANCE_ID=CSA.SEMRESATTRS_SERVICE_NAMESPACE=CSA.SEMRESATTRS_SERVICE_NAME=CSA.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=CSA.SEMRESATTRS_PROCESS_RUNTIME_VERSION=CSA.SEMRESATTRS_PROCESS_RUNTIME_NAME=CSA.SEMRESATTRS_PROCESS_OWNER=CSA.SEMRESATTRS_PROCESS_COMMAND_ARGS=CSA.SEMRESATTRS_PROCESS_COMMAND_LINE=CSA.SEMRESATTRS_PROCESS_COMMAND=CSA.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=CSA.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=CSA.SEMRESATTRS_PROCESS_PID=CSA.SEMRESATTRS_OS_VERSION=CSA.SEMRESATTRS_OS_NAME=CSA.SEMRESATTRS_OS_DESCRIPTION=CSA.SEMRESATTRS_OS_TYPE=CSA.SEMRESATTRS_K8S_CRONJOB_NAME=CSA.SEMRESATTRS_K8S_CRONJOB_UID=CSA.SEMRESATTRS_K8S_JOB_NAME=CSA.SEMRESATTRS_K8S_JOB_UID=CSA.SEMRESATTRS_K8S_DAEMONSET_NAME=CSA.SEMRESATTRS_K8S_DAEMONSET_UID=void 0;CSA.TelemetrySdkLanguageValues=CSA.TELEMETRYSDKLANGUAGEVALUES_WEBJS=CSA.TELEMETRYSDKLANGUAGEVALUES_RUBY=CSA.TELEMETRYSDKLANGUAGEVALUES_PYTHON=CSA.TELEMETRYSDKLANGUAGEVALUES_PHP=CSA.TELEMETRYSDKLANGUAGEVALUES_NODEJS=CSA.TELEMETRYSDKLANGUAGEVALUES_JAVA=CSA.TELEMETRYSDKLANGUAGEVALUES_GO=CSA.TELEMETRYSDKLANGUAGEVALUES_ERLANG=CSA.TELEMETRYSDKLANGUAGEVALUES_DOTNET=CSA.TELEMETRYSDKLANGUAGEVALUES_CPP=CSA.OsTypeValues=CSA.OSTYPEVALUES_Z_OS=CSA.OSTYPEVALUES_SOLARIS=CSA.OSTYPEVALUES_AIX=CSA.OSTYPEVALUES_HPUX=CSA.OSTYPEVALUES_DRAGONFLYBSD=CSA.OSTYPEVALUES_OPENBSD=CSA.OSTYPEVALUES_NETBSD=CSA.OSTYPEVALUES_FREEBSD=CSA.OSTYPEVALUES_DARWIN=CSA.OSTYPEVALUES_LINUX=CSA.OSTYPEVALUES_WINDOWS=CSA.HostArchValues=CSA.HOSTARCHVALUES_X86=CSA.HOSTARCHVALUES_PPC64=CSA.HOSTARCHVALUES_PPC32=CSA.HOSTARCHVALUES_IA64=CSA.HOSTARCHVALUES_ARM64=CSA.HOSTARCHVALUES_ARM32=CSA.HOSTARCHVALUES_AMD64=CSA.AwsEcsLaunchtypeValues=CSA.AWSECSLAUNCHTYPEVALUES_FARGATE=CSA.AWSECSLAUNCHTYPEVALUES_EC2=CSA.CloudPlatformValues=CSA.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=CSA.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=CSA.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=CSA.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=void 0;var eZ=Hl(),gOA="cloud.provider",hOA="cloud.account.id",xOA="cloud.region",fOA="cloud.availability_zone",bOA="cloud.platform",mOA="aws.ecs.container.arn",uOA="aws.ecs.cluster.arn",dOA="aws.ecs.launchtype",cOA="aws.ecs.task.arn",lOA="aws.ecs.task.family",pOA="aws.ecs.task.revision",iOA="aws.eks.cluster.arn",nOA="aws.log.group.names",sOA="aws.log.group.arns",rOA="aws.log.stream.names",aOA="aws.log.stream.arns",oOA="container.name",tOA="container.id",eOA="container.runtime",APA="container.image.name",QPA="container.image.tag",BPA="deployment.environment",YPA="device.id",JPA="device.model.identifier",CPA="device.model.name",XPA="faas.name",GPA="faas.id",WPA="faas.version",FPA="faas.instance",ZPA="faas.max_memory",$PA="host.id",UPA="host.name",EPA="host.type",KPA="host.arch",VPA="host.image.name",IPA="host.image.id",HPA="host.image.version",DPA="k8s.cluster.name",NPA="k8s.node.name",LPA="k8s.node.uid",qPA="k8s.namespace.name",MPA="k8s.pod.uid",zPA="k8s.pod.name",RPA="k8s.container.name",wPA="k8s.replicaset.uid",jPA="k8s.replicaset.name",OPA="k8s.deployment.uid",PPA="k8s.deployment.name",TPA="k8s.statefulset.uid",SPA="k8s.statefulset.name",kPA="k8s.daemonset.uid",_PA="k8s.daemonset.name",vPA="k8s.job.uid",yPA="k8s.job.name",gPA="k8s.cronjob.uid",hPA="k8s.cronjob.name",xPA="os.type",fPA="os.description",bPA="os.name",mPA="os.version",uPA="process.pid",dPA="process.executable.name",cPA="process.executable.path",lPA="process.command",pPA="process.command_line",iPA="process.command_args",nPA="process.owner",sPA="process.runtime.name",rPA="process.runtime.version",aPA="process.runtime.description",oPA="service.name",tPA="service.namespace",ePA="service.instance.id",ATA="service.version",QTA="telemetry.sdk.name",BTA="telemetry.sdk.language",YTA="telemetry.sdk.version",JTA="telemetry.auto.version",CTA="webengine.name",XTA="webengine.version",GTA="webengine.description";CSA.SEMRESATTRS_CLOUD_PROVIDER=gOA;CSA.SEMRESATTRS_CLOUD_ACCOUNT_ID=hOA;CSA.SEMRESATTRS_CLOUD_REGION=xOA;CSA.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=fOA;CSA.SEMRESATTRS_CLOUD_PLATFORM=bOA;CSA.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=mOA;CSA.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=uOA;CSA.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=dOA;CSA.SEMRESATTRS_AWS_ECS_TASK_ARN=cOA;CSA.SEMRESATTRS_AWS_ECS_TASK_FAMILY=lOA;CSA.SEMRESATTRS_AWS_ECS_TASK_REVISION=pOA;CSA.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=iOA;CSA.SEMRESATTRS_AWS_LOG_GROUP_NAMES=nOA;CSA.SEMRESATTRS_AWS_LOG_GROUP_ARNS=sOA;CSA.SEMRESATTRS_AWS_LOG_STREAM_NAMES=rOA;CSA.SEMRESATTRS_AWS_LOG_STREAM_ARNS=aOA;CSA.SEMRESATTRS_CONTAINER_NAME=oOA;CSA.SEMRESATTRS_CONTAINER_ID=tOA;CSA.SEMRESATTRS_CONTAINER_RUNTIME=eOA;CSA.SEMRESATTRS_CONTAINER_IMAGE_NAME=APA;CSA.SEMRESATTRS_CONTAINER_IMAGE_TAG=QPA;CSA.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=BPA;CSA.SEMRESATTRS_DEVICE_ID=YPA;CSA.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=JPA;CSA.SEMRESATTRS_DEVICE_MODEL_NAME=CPA;CSA.SEMRESATTRS_FAAS_NAME=XPA;CSA.SEMRESATTRS_FAAS_ID=GPA;CSA.SEMRESATTRS_FAAS_VERSION=WPA;CSA.SEMRESATTRS_FAAS_INSTANCE=FPA;CSA.SEMRESATTRS_FAAS_MAX_MEMORY=ZPA;CSA.SEMRESATTRS_HOST_ID=$PA;CSA.SEMRESATTRS_HOST_NAME=UPA;CSA.SEMRESATTRS_HOST_TYPE=EPA;CSA.SEMRESATTRS_HOST_ARCH=KPA;CSA.SEMRESATTRS_HOST_IMAGE_NAME=VPA;CSA.SEMRESATTRS_HOST_IMAGE_ID=IPA;CSA.SEMRESATTRS_HOST_IMAGE_VERSION=HPA;CSA.SEMRESATTRS_K8S_CLUSTER_NAME=DPA;CSA.SEMRESATTRS_K8S_NODE_NAME=NPA;CSA.SEMRESATTRS_K8S_NODE_UID=LPA;CSA.SEMRESATTRS_K8S_NAMESPACE_NAME=qPA;CSA.SEMRESATTRS_K8S_POD_UID=MPA;CSA.SEMRESATTRS_K8S_POD_NAME=zPA;CSA.SEMRESATTRS_K8S_CONTAINER_NAME=RPA;CSA.SEMRESATTRS_K8S_REPLICASET_UID=wPA;CSA.SEMRESATTRS_K8S_REPLICASET_NAME=jPA;CSA.SEMRESATTRS_K8S_DEPLOYMENT_UID=OPA;CSA.SEMRESATTRS_K8S_DEPLOYMENT_NAME=PPA;CSA.SEMRESATTRS_K8S_STATEFULSET_UID=TPA;CSA.SEMRESATTRS_K8S_STATEFULSET_NAME=SPA;CSA.SEMRESATTRS_K8S_DAEMONSET_UID=kPA;CSA.SEMRESATTRS_K8S_DAEMONSET_NAME=_PA;CSA.SEMRESATTRS_K8S_JOB_UID=vPA;CSA.SEMRESATTRS_K8S_JOB_NAME=yPA;CSA.SEMRESATTRS_K8S_CRONJOB_UID=gPA;CSA.SEMRESATTRS_K8S_CRONJOB_NAME=hPA;CSA.SEMRESATTRS_OS_TYPE=xPA;CSA.SEMRESATTRS_OS_DESCRIPTION=fPA;CSA.SEMRESATTRS_OS_NAME=bPA;CSA.SEMRESATTRS_OS_VERSION=mPA;CSA.SEMRESATTRS_PROCESS_PID=uPA;CSA.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=dPA;CSA.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=cPA;CSA.SEMRESATTRS_PROCESS_COMMAND=lPA;CSA.SEMRESATTRS_PROCESS_COMMAND_LINE=pPA;CSA.SEMRESATTRS_PROCESS_COMMAND_ARGS=iPA;CSA.SEMRESATTRS_PROCESS_OWNER=nPA;CSA.SEMRESATTRS_PROCESS_RUNTIME_NAME=sPA;CSA.SEMRESATTRS_PROCESS_RUNTIME_VERSION=rPA;CSA.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=aPA;CSA.SEMRESATTRS_SERVICE_NAME=oPA;CSA.SEMRESATTRS_SERVICE_NAMESPACE=tPA;CSA.SEMRESATTRS_SERVICE_INSTANCE_ID=ePA;CSA.SEMRESATTRS_SERVICE_VERSION=ATA;CSA.SEMRESATTRS_TELEMETRY_SDK_NAME=QTA;CSA.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=BTA;CSA.SEMRESATTRS_TELEMETRY_SDK_VERSION=YTA;CSA.SEMRESATTRS_TELEMETRY_AUTO_VERSION=JTA;CSA.SEMRESATTRS_WEBENGINE_NAME=CTA;CSA.SEMRESATTRS_WEBENGINE_VERSION=XTA;CSA.SEMRESATTRS_WEBENGINE_DESCRIPTION=GTA;CSA.SemanticResourceAttributes=(0,eZ.createConstMap)([gOA,hOA,xOA,fOA,bOA,mOA,uOA,dOA,cOA,lOA,pOA,iOA,nOA,sOA,rOA,aOA,oOA,tOA,eOA,APA,QPA,BPA,YPA,JPA,CPA,XPA,GPA,WPA,FPA,ZPA,$PA,UPA,EPA,KPA,VPA,IPA,HPA,DPA,NPA,LPA,qPA,MPA,zPA,RPA,wPA,jPA,OPA,PPA,TPA,SPA,kPA,_PA,vPA,yPA,gPA,hPA,xPA,fPA,bPA,mPA,uPA,dPA,cPA,lPA,pPA,iPA,nPA,sPA,rPA,aPA,oPA,tPA,ePA,ATA,QTA,BTA,YTA,JTA,CTA,XTA,GTA]);var WTA="alibaba_cloud",FTA="aws",ZTA="azure",$TA="gcp";CSA.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=WTA;CSA.CLOUDPROVIDERVALUES_AWS=FTA;CSA.CLOUDPROVIDERVALUES_AZURE=ZTA;CSA.CLOUDPROVIDERVALUES_GCP=$TA;CSA.CloudProviderValues=(0,eZ.createConstMap)([WTA,FTA,ZTA,$TA]);var UTA="alibaba_cloud_ecs",ETA="alibaba_cloud_fc",KTA="aws_ec2",VTA="aws_ecs",ITA="aws_eks",HTA="aws_lambda",DTA="aws_elastic_beanstalk",NTA="azure_vm",LTA="azure_container_instances",qTA="azure_aks",MTA="azure_functions",zTA="azure_app_service",RTA="gcp_compute_engine",wTA="gcp_cloud_run",jTA="gcp_kubernetes_engine",OTA="gcp_cloud_functions",PTA="gcp_app_engine";CSA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=UTA;CSA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=ETA;CSA.CLOUDPLATFORMVALUES_AWS_EC2=KTA;CSA.CLOUDPLATFORMVALUES_AWS_ECS=VTA;CSA.CLOUDPLATFORMVALUES_AWS_EKS=ITA;CSA.CLOUDPLATFORMVALUES_AWS_LAMBDA=HTA;CSA.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=DTA;CSA.CLOUDPLATFORMVALUES_AZURE_VM=NTA;CSA.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=LTA;CSA.CLOUDPLATFORMVALUES_AZURE_AKS=qTA;CSA.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=MTA;CSA.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=zTA;CSA.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=RTA;CSA.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=wTA;CSA.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=jTA;CSA.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=OTA;CSA.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=PTA;CSA.CloudPlatformValues=(0,eZ.createConstMap)([UTA,ETA,KTA,VTA,ITA,HTA,DTA,NTA,LTA,qTA,MTA,zTA,RTA,wTA,jTA,OTA,PTA]);var TTA="ec2",STA="fargate";CSA.AWSECSLAUNCHTYPEVALUES_EC2=TTA;CSA.AWSECSLAUNCHTYPEVALUES_FARGATE=STA;CSA.AwsEcsLaunchtypeValues=(0,eZ.createConstMap)([TTA,STA]);var kTA="amd64",_TA="arm32",vTA="arm64",yTA="ia64",gTA="ppc32",hTA="ppc64",xTA="x86";CSA.HOSTARCHVALUES_AMD64=kTA;CSA.HOSTARCHVALUES_ARM32=_TA;CSA.HOSTARCHVALUES_ARM64=vTA;CSA.HOSTARCHVALUES_IA64=yTA;CSA.HOSTARCHVALUES_PPC32=gTA;CSA.HOSTARCHVALUES_PPC64=hTA;CSA.HOSTARCHVALUES_X86=xTA;CSA.HostArchValues=(0,eZ.createConstMap)([kTA,_TA,vTA,yTA,gTA,hTA,xTA]);var fTA="windows",bTA="linux",mTA="darwin",uTA="freebsd",dTA="netbsd",cTA="openbsd",lTA="dragonflybsd",pTA="hpux",iTA="aix",nTA="solaris",sTA="z_os";CSA.OSTYPEVALUES_WINDOWS=fTA;CSA.OSTYPEVALUES_LINUX=bTA;CSA.OSTYPEVALUES_DARWIN=mTA;CSA.OSTYPEVALUES_FREEBSD=uTA;CSA.OSTYPEVALUES_NETBSD=dTA;CSA.OSTYPEVALUES_OPENBSD=cTA;CSA.OSTYPEVALUES_DRAGONFLYBSD=lTA;CSA.OSTYPEVALUES_HPUX=pTA;CSA.OSTYPEVALUES_AIX=iTA;CSA.OSTYPEVALUES_SOLARIS=nTA;CSA.OSTYPEVALUES_Z_OS=sTA;CSA.OsTypeValues=(0,eZ.createConstMap)([fTA,bTA,mTA,uTA,dTA,cTA,lTA,pTA,iTA,nTA,sTA]);var rTA="cpp",aTA="dotnet",oTA="erlang",tTA="go",eTA="java",ASA="nodejs",QSA="php",BSA="python",YSA="ruby",JSA="webjs";CSA.TELEMETRYSDKLANGUAGEVALUES_CPP=rTA;CSA.TELEMETRYSDKLANGUAGEVALUES_DOTNET=aTA;CSA.TELEMETRYSDKLANGUAGEVALUES_ERLANG=oTA;CSA.TELEMETRYSDKLANGUAGEVALUES_GO=tTA;CSA.TELEMETRYSDKLANGUAGEVALUES_JAVA=eTA;CSA.TELEMETRYSDKLANGUAGEVALUES_NODEJS=ASA;CSA.TELEMETRYSDKLANGUAGEVALUES_PHP=QSA;CSA.TELEMETRYSDKLANGUAGEVALUES_PYTHON=BSA;CSA.TELEMETRYSDKLANGUAGEVALUES_RUBY=YSA;CSA.TELEMETRYSDKLANGUAGEVALUES_WEBJS=JSA;CSA.TelemetrySdkLanguageValues=(0,eZ.createConstMap)([rTA,aTA,oTA,tTA,eTA,ASA,QSA,BSA,YSA,JSA])});var ZSA=R((A$)=>{var gzB=A$&&A$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),hzB=A$&&A$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))gzB(Q,A,B)};Object.defineProperty(A$,"__esModule",{value:!0});hzB(FSA(),A$)});var VSA=R(($SA)=>{Object.defineProperty($SA,"__esModule",{value:!0});$SA.HTTP_REQUEST_METHOD_VALUE_POST=$SA.HTTP_REQUEST_METHOD_VALUE_PATCH=$SA.HTTP_REQUEST_METHOD_VALUE_OPTIONS=$SA.HTTP_REQUEST_METHOD_VALUE_HEAD=$SA.HTTP_REQUEST_METHOD_VALUE_GET=$SA.HTTP_REQUEST_METHOD_VALUE_DELETE=$SA.HTTP_REQUEST_METHOD_VALUE_CONNECT=$SA.HTTP_REQUEST_METHOD_VALUE_OTHER=$SA.ATTR_HTTP_REQUEST_METHOD=$SA.ATTR_HTTP_REQUEST_HEADER=$SA.ATTR_EXCEPTION_TYPE=$SA.ATTR_EXCEPTION_STACKTRACE=$SA.ATTR_EXCEPTION_MESSAGE=$SA.ATTR_EXCEPTION_ESCAPED=$SA.ERROR_TYPE_VALUE_OTHER=$SA.ATTR_ERROR_TYPE=$SA.ATTR_CLIENT_PORT=$SA.ATTR_CLIENT_ADDRESS=$SA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS=$SA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE=$SA.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS=$SA.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK=$SA.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED=$SA.ATTR_ASPNETCORE_RATE_LIMITING_POLICY=$SA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED=$SA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED=$SA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED=$SA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED=$SA.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT=$SA.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE=$SA.ATTR_TELEMETRY_SDK_VERSION=$SA.ATTR_TELEMETRY_SDK_NAME=$SA.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS=$SA.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT=$SA.TELEMETRY_SDK_LANGUAGE_VALUE_RUST=$SA.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY=$SA.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON=$SA.TELEMETRY_SDK_LANGUAGE_VALUE_PHP=$SA.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS=$SA.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA=$SA.TELEMETRY_SDK_LANGUAGE_VALUE_GO=$SA.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG=$SA.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET=$SA.TELEMETRY_SDK_LANGUAGE_VALUE_CPP=$SA.ATTR_TELEMETRY_SDK_LANGUAGE=$SA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED=$SA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER=$SA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER=$SA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED=$SA.ATTR_ASPNETCORE_RATE_LIMITING_RESULT=void 0;$SA.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT=$SA.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE=$SA.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN=$SA.ATTR_SIGNALR_CONNECTION_STATUS=$SA.ATTR_SERVICE_VERSION=$SA.ATTR_SERVICE_NAME=$SA.ATTR_SERVER_PORT=$SA.ATTR_SERVER_ADDRESS=$SA.ATTR_OTEL_STATUS_DESCRIPTION=$SA.OTEL_STATUS_CODE_VALUE_OK=$SA.OTEL_STATUS_CODE_VALUE_ERROR=$SA.ATTR_OTEL_STATUS_CODE=$SA.ATTR_OTEL_SCOPE_VERSION=$SA.ATTR_OTEL_SCOPE_NAME=$SA.NETWORK_TYPE_VALUE_IPV6=$SA.NETWORK_TYPE_VALUE_IPV4=$SA.ATTR_NETWORK_TYPE=$SA.NETWORK_TRANSPORT_VALUE_UNIX=$SA.NETWORK_TRANSPORT_VALUE_UDP=$SA.NETWORK_TRANSPORT_VALUE_TCP=$SA.NETWORK_TRANSPORT_VALUE_QUIC=$SA.NETWORK_TRANSPORT_VALUE_PIPE=$SA.ATTR_NETWORK_TRANSPORT=$SA.ATTR_NETWORK_PROTOCOL_VERSION=$SA.ATTR_NETWORK_PROTOCOL_NAME=$SA.ATTR_NETWORK_PEER_PORT=$SA.ATTR_NETWORK_PEER_ADDRESS=$SA.ATTR_NETWORK_LOCAL_PORT=$SA.ATTR_NETWORK_LOCAL_ADDRESS=$SA.JVM_THREAD_STATE_VALUE_WAITING=$SA.JVM_THREAD_STATE_VALUE_TIMED_WAITING=$SA.JVM_THREAD_STATE_VALUE_TERMINATED=$SA.JVM_THREAD_STATE_VALUE_RUNNABLE=$SA.JVM_THREAD_STATE_VALUE_NEW=$SA.JVM_THREAD_STATE_VALUE_BLOCKED=$SA.ATTR_JVM_THREAD_STATE=$SA.ATTR_JVM_THREAD_DAEMON=$SA.JVM_MEMORY_TYPE_VALUE_NON_HEAP=$SA.JVM_MEMORY_TYPE_VALUE_HEAP=$SA.ATTR_JVM_MEMORY_TYPE=$SA.ATTR_JVM_MEMORY_POOL_NAME=$SA.ATTR_JVM_GC_NAME=$SA.ATTR_JVM_GC_ACTION=$SA.ATTR_HTTP_ROUTE=$SA.ATTR_HTTP_RESPONSE_STATUS_CODE=$SA.ATTR_HTTP_RESPONSE_HEADER=$SA.ATTR_HTTP_REQUEST_RESEND_COUNT=$SA.ATTR_HTTP_REQUEST_METHOD_ORIGINAL=$SA.HTTP_REQUEST_METHOD_VALUE_TRACE=$SA.HTTP_REQUEST_METHOD_VALUE_PUT=void 0;$SA.ATTR_USER_AGENT_ORIGINAL=$SA.ATTR_URL_SCHEME=$SA.ATTR_URL_QUERY=$SA.ATTR_URL_PATH=$SA.ATTR_URL_FULL=$SA.ATTR_URL_FRAGMENT=$SA.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS=$SA.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS=$SA.SIGNALR_TRANSPORT_VALUE_LONG_POLLING=$SA.ATTR_SIGNALR_TRANSPORT=void 0;$SA.ATTR_ASPNETCORE_RATE_LIMITING_RESULT="aspnetcore.rate_limiting.result";$SA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED="acquired";$SA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER="endpoint_limiter";$SA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER="global_limiter";$SA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED="request_canceled";$SA.ATTR_TELEMETRY_SDK_LANGUAGE="telemetry.sdk.language";$SA.TELEMETRY_SDK_LANGUAGE_VALUE_CPP="cpp";$SA.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET="dotnet";$SA.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG="erlang";$SA.TELEMETRY_SDK_LANGUAGE_VALUE_GO="go";$SA.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA="java";$SA.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS="nodejs";$SA.TELEMETRY_SDK_LANGUAGE_VALUE_PHP="php";$SA.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON="python";$SA.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY="ruby";$SA.TELEMETRY_SDK_LANGUAGE_VALUE_RUST="rust";$SA.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT="swift";$SA.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS="webjs";$SA.ATTR_TELEMETRY_SDK_NAME="telemetry.sdk.name";$SA.ATTR_TELEMETRY_SDK_VERSION="telemetry.sdk.version";$SA.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE="aspnetcore.diagnostics.handler.type";$SA.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT="aspnetcore.diagnostics.exception.result";$SA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED="aborted";$SA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED="handled";$SA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED="skipped";$SA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED="unhandled";$SA.ATTR_ASPNETCORE_RATE_LIMITING_POLICY="aspnetcore.rate_limiting.policy";$SA.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED="aspnetcore.request.is_unhandled";$SA.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK="aspnetcore.routing.is_fallback";$SA.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS="aspnetcore.routing.match_status";$SA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE="failure";$SA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS="success";$SA.ATTR_CLIENT_ADDRESS="client.address";$SA.ATTR_CLIENT_PORT="client.port";$SA.ATTR_ERROR_TYPE="error.type";$SA.ERROR_TYPE_VALUE_OTHER="_OTHER";$SA.ATTR_EXCEPTION_ESCAPED="exception.escaped";$SA.ATTR_EXCEPTION_MESSAGE="exception.message";$SA.ATTR_EXCEPTION_STACKTRACE="exception.stacktrace";$SA.ATTR_EXCEPTION_TYPE="exception.type";var xzB=(A)=>`http.request.header.${A}`;$SA.ATTR_HTTP_REQUEST_HEADER=xzB;$SA.ATTR_HTTP_REQUEST_METHOD="http.request.method";$SA.HTTP_REQUEST_METHOD_VALUE_OTHER="_OTHER";$SA.HTTP_REQUEST_METHOD_VALUE_CONNECT="CONNECT";$SA.HTTP_REQUEST_METHOD_VALUE_DELETE="DELETE";$SA.HTTP_REQUEST_METHOD_VALUE_GET="GET";$SA.HTTP_REQUEST_METHOD_VALUE_HEAD="HEAD";$SA.HTTP_REQUEST_METHOD_VALUE_OPTIONS="OPTIONS";$SA.HTTP_REQUEST_METHOD_VALUE_PATCH="PATCH";$SA.HTTP_REQUEST_METHOD_VALUE_POST="POST";$SA.HTTP_REQUEST_METHOD_VALUE_PUT="PUT";$SA.HTTP_REQUEST_METHOD_VALUE_TRACE="TRACE";$SA.ATTR_HTTP_REQUEST_METHOD_ORIGINAL="http.request.method_original";$SA.ATTR_HTTP_REQUEST_RESEND_COUNT="http.request.resend_count";var fzB=(A)=>`http.response.header.${A}`;$SA.ATTR_HTTP_RESPONSE_HEADER=fzB;$SA.ATTR_HTTP_RESPONSE_STATUS_CODE="http.response.status_code";$SA.ATTR_HTTP_ROUTE="http.route";$SA.ATTR_JVM_GC_ACTION="jvm.gc.action";$SA.ATTR_JVM_GC_NAME="jvm.gc.name";$SA.ATTR_JVM_MEMORY_POOL_NAME="jvm.memory.pool.name";$SA.ATTR_JVM_MEMORY_TYPE="jvm.memory.type";$SA.JVM_MEMORY_TYPE_VALUE_HEAP="heap";$SA.JVM_MEMORY_TYPE_VALUE_NON_HEAP="non_heap";$SA.ATTR_JVM_THREAD_DAEMON="jvm.thread.daemon";$SA.ATTR_JVM_THREAD_STATE="jvm.thread.state";$SA.JVM_THREAD_STATE_VALUE_BLOCKED="blocked";$SA.JVM_THREAD_STATE_VALUE_NEW="new";$SA.JVM_THREAD_STATE_VALUE_RUNNABLE="runnable";$SA.JVM_THREAD_STATE_VALUE_TERMINATED="terminated";$SA.JVM_THREAD_STATE_VALUE_TIMED_WAITING="timed_waiting";$SA.JVM_THREAD_STATE_VALUE_WAITING="waiting";$SA.ATTR_NETWORK_LOCAL_ADDRESS="network.local.address";$SA.ATTR_NETWORK_LOCAL_PORT="network.local.port";$SA.ATTR_NETWORK_PEER_ADDRESS="network.peer.address";$SA.ATTR_NETWORK_PEER_PORT="network.peer.port";$SA.ATTR_NETWORK_PROTOCOL_NAME="network.protocol.name";$SA.ATTR_NETWORK_PROTOCOL_VERSION="network.protocol.version";$SA.ATTR_NETWORK_TRANSPORT="network.transport";$SA.NETWORK_TRANSPORT_VALUE_PIPE="pipe";$SA.NETWORK_TRANSPORT_VALUE_QUIC="quic";$SA.NETWORK_TRANSPORT_VALUE_TCP="tcp";$SA.NETWORK_TRANSPORT_VALUE_UDP="udp";$SA.NETWORK_TRANSPORT_VALUE_UNIX="unix";$SA.ATTR_NETWORK_TYPE="network.type";$SA.NETWORK_TYPE_VALUE_IPV4="ipv4";$SA.NETWORK_TYPE_VALUE_IPV6="ipv6";$SA.ATTR_OTEL_SCOPE_NAME="otel.scope.name";$SA.ATTR_OTEL_SCOPE_VERSION="otel.scope.version";$SA.ATTR_OTEL_STATUS_CODE="otel.status_code";$SA.OTEL_STATUS_CODE_VALUE_ERROR="ERROR";$SA.OTEL_STATUS_CODE_VALUE_OK="OK";$SA.ATTR_OTEL_STATUS_DESCRIPTION="otel.status_description";$SA.ATTR_SERVER_ADDRESS="server.address";$SA.ATTR_SERVER_PORT="server.port";$SA.ATTR_SERVICE_NAME="service.name";$SA.ATTR_SERVICE_VERSION="service.version";$SA.ATTR_SIGNALR_CONNECTION_STATUS="signalr.connection.status";$SA.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN="app_shutdown";$SA.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE="normal_closure";$SA.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT="timeout";$SA.ATTR_SIGNALR_TRANSPORT="signalr.transport";$SA.SIGNALR_TRANSPORT_VALUE_LONG_POLLING="long_polling";$SA.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS="server_sent_events";$SA.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS="web_sockets";$SA.ATTR_URL_FRAGMENT="url.fragment";$SA.ATTR_URL_FULL="url.full";$SA.ATTR_URL_PATH="url.path";$SA.ATTR_URL_QUERY="url.query";$SA.ATTR_URL_SCHEME="url.scheme";$SA.ATTR_USER_AGENT_ORIGINAL="user_agent.original"});var DSA=R((ISA)=>{Object.defineProperty(ISA,"__esModule",{value:!0});ISA.METRIC_SIGNALR_SERVER_CONNECTION_DURATION=ISA.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS=ISA.METRIC_KESTREL_UPGRADED_CONNECTIONS=ISA.METRIC_KESTREL_TLS_HANDSHAKE_DURATION=ISA.METRIC_KESTREL_REJECTED_CONNECTIONS=ISA.METRIC_KESTREL_QUEUED_REQUESTS=ISA.METRIC_KESTREL_QUEUED_CONNECTIONS=ISA.METRIC_KESTREL_CONNECTION_DURATION=ISA.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES=ISA.METRIC_KESTREL_ACTIVE_CONNECTIONS=ISA.METRIC_JVM_THREAD_COUNT=ISA.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC=ISA.METRIC_JVM_MEMORY_USED=ISA.METRIC_JVM_MEMORY_LIMIT=ISA.METRIC_JVM_MEMORY_COMMITTED=ISA.METRIC_JVM_GC_DURATION=ISA.METRIC_JVM_CPU_TIME=ISA.METRIC_JVM_CPU_RECENT_UTILIZATION=ISA.METRIC_JVM_CPU_COUNT=ISA.METRIC_JVM_CLASS_UNLOADED=ISA.METRIC_JVM_CLASS_LOADED=ISA.METRIC_JVM_CLASS_COUNT=ISA.METRIC_HTTP_SERVER_REQUEST_DURATION=ISA.METRIC_HTTP_CLIENT_REQUEST_DURATION=ISA.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS=ISA.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS=ISA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION=ISA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE=ISA.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS=ISA.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES=ISA.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS=void 0;ISA.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS="aspnetcore.diagnostics.exceptions";ISA.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES="aspnetcore.rate_limiting.active_request_leases";ISA.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS="aspnetcore.rate_limiting.queued_requests";ISA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE="aspnetcore.rate_limiting.request.time_in_queue";ISA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION="aspnetcore.rate_limiting.request_lease.duration";ISA.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS="aspnetcore.rate_limiting.requests";ISA.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS="aspnetcore.routing.match_attempts";ISA.METRIC_HTTP_CLIENT_REQUEST_DURATION="http.client.request.duration";ISA.METRIC_HTTP_SERVER_REQUEST_DURATION="http.server.request.duration";ISA.METRIC_JVM_CLASS_COUNT="jvm.class.count";ISA.METRIC_JVM_CLASS_LOADED="jvm.class.loaded";ISA.METRIC_JVM_CLASS_UNLOADED="jvm.class.unloaded";ISA.METRIC_JVM_CPU_COUNT="jvm.cpu.count";ISA.METRIC_JVM_CPU_RECENT_UTILIZATION="jvm.cpu.recent_utilization";ISA.METRIC_JVM_CPU_TIME="jvm.cpu.time";ISA.METRIC_JVM_GC_DURATION="jvm.gc.duration";ISA.METRIC_JVM_MEMORY_COMMITTED="jvm.memory.committed";ISA.METRIC_JVM_MEMORY_LIMIT="jvm.memory.limit";ISA.METRIC_JVM_MEMORY_USED="jvm.memory.used";ISA.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC="jvm.memory.used_after_last_gc";ISA.METRIC_JVM_THREAD_COUNT="jvm.thread.count";ISA.METRIC_KESTREL_ACTIVE_CONNECTIONS="kestrel.active_connections";ISA.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES="kestrel.active_tls_handshakes";ISA.METRIC_KESTREL_CONNECTION_DURATION="kestrel.connection.duration";ISA.METRIC_KESTREL_QUEUED_CONNECTIONS="kestrel.queued_connections";ISA.METRIC_KESTREL_QUEUED_REQUESTS="kestrel.queued_requests";ISA.METRIC_KESTREL_REJECTED_CONNECTIONS="kestrel.rejected_connections";ISA.METRIC_KESTREL_TLS_HANDSHAKE_DURATION="kestrel.tls_handshake.duration";ISA.METRIC_KESTREL_UPGRADED_CONNECTIONS="kestrel.upgraded_connections";ISA.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS="signalr.server.active_connections";ISA.METRIC_SIGNALR_SERVER_CONNECTION_DURATION="signalr.server.connection.duration"});var NSA=R((WX)=>{var KRB=WX&&WX.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),XO=WX&&WX.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))KRB(Q,A,B)};Object.defineProperty(WX,"__esModule",{value:!0});XO(yOA(),WX);XO(ZSA(),WX);XO(VSA(),WX);XO(DSA(),WX)});var MSA=R((LSA)=>{Object.defineProperty(LSA,"__esModule",{value:!0});LSA.SDK_INFO=void 0;var VRB=Il(),nN=NSA();LSA.SDK_INFO={[nN.SEMRESATTRS_TELEMETRY_SDK_NAME]:"opentelemetry",[nN.SEMRESATTRS_PROCESS_RUNTIME_NAME]:"node",[nN.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE]:nN.TELEMETRYSDKLANGUAGEVALUES_NODEJS,[nN.SEMRESATTRS_TELEMETRY_SDK_VERSION]:VRB.VERSION}});var wSA=R((zSA)=>{Object.defineProperty(zSA,"__esModule",{value:!0});zSA.unrefTimer=void 0;function IRB(A){A.unref()}zSA.unrefTimer=IRB});var OSA=R((FX)=>{Object.defineProperty(FX,"__esModule",{value:!0});FX.unrefTimer=FX.SDK_INFO=FX.otperformance=FX.RandomIdGenerator=FX.hexToBase64=FX._globalThis=FX.getEnv=FX.getEnvWithoutDefaults=void 0;var jSA=K2A();Object.defineProperty(FX,"getEnvWithoutDefaults",{enumerable:!0,get:function(){return jSA.getEnvWithoutDefaults}});Object.defineProperty(FX,"getEnv",{enumerable:!0,get:function(){return jSA.getEnv}});var HRB=H2A();Object.defineProperty(FX,"_globalThis",{enumerable:!0,get:function(){return HRB._globalThis}});var DRB=z2A();Object.defineProperty(FX,"hexToBase64",{enumerable:!0,get:function(){return DRB.hexToBase64}});var NRB=T2A();Object.defineProperty(FX,"RandomIdGenerator",{enumerable:!0,get:function(){return NRB.RandomIdGenerator}});var LRB=_2A();Object.defineProperty(FX,"otperformance",{enumerable:!0,get:function(){return LRB.otperformance}});var qRB=MSA();Object.defineProperty(FX,"SDK_INFO",{enumerable:!0,get:function(){return qRB.SDK_INFO}});var MRB=wSA();Object.defineProperty(FX,"unrefTimer",{enumerable:!0,get:function(){return MRB.unrefTimer}})});var Dl=R((ZX)=>{Object.defineProperty(ZX,"__esModule",{value:!0});ZX.unrefTimer=ZX.otperformance=ZX.hexToBase64=ZX.getEnvWithoutDefaults=ZX.getEnv=ZX._globalThis=ZX.SDK_INFO=ZX.RandomIdGenerator=void 0;var UW=OSA();Object.defineProperty(ZX,"RandomIdGenerator",{enumerable:!0,get:function(){return UW.RandomIdGenerator}});Object.defineProperty(ZX,"SDK_INFO",{enumerable:!0,get:function(){return UW.SDK_INFO}});Object.defineProperty(ZX,"_globalThis",{enumerable:!0,get:function(){return UW._globalThis}});Object.defineProperty(ZX,"getEnv",{enumerable:!0,get:function(){return UW.getEnv}});Object.defineProperty(ZX,"getEnvWithoutDefaults",{enumerable:!0,get:function(){return UW.getEnvWithoutDefaults}});Object.defineProperty(ZX,"hexToBase64",{enumerable:!0,get:function(){return UW.hexToBase64}});Object.defineProperty(ZX,"otperformance",{enumerable:!0,get:function(){return UW.otperformance}});Object.defineProperty(ZX,"unrefTimer",{enumerable:!0,get:function(){return UW.unrefTimer}})});var vSA=R((kSA)=>{Object.defineProperty(kSA,"__esModule",{value:!0});kSA.addHrTimes=kSA.isTimeInput=kSA.isTimeInputHrTime=kSA.hrTimeToMicroseconds=kSA.hrTimeToMilliseconds=kSA.hrTimeToNanoseconds=kSA.hrTimeToTimeStamp=kSA.hrTimeDuration=kSA.timeInputToHrTime=kSA.hrTime=kSA.getTimeOrigin=kSA.millisToHrTime=void 0;var Nl=Dl(),PSA=9,wRB=6,jRB=Math.pow(10,wRB),GO=Math.pow(10,PSA);function sN(A){let Q=A/1000,B=Math.trunc(Q),Y=Math.round(A%1000*jRB);return[B,Y]}kSA.millisToHrTime=sN;function Ll(){let A=Nl.otperformance.timeOrigin;if(typeof A!=="number"){let Q=Nl.otperformance;A=Q.timing&&Q.timing.fetchStart}return A}kSA.getTimeOrigin=Ll;function TSA(A){let Q=sN(Ll()),B=sN(typeof A==="number"?A:Nl.otperformance.now());return SSA(Q,B)}kSA.hrTime=TSA;function ORB(A){if(ql(A))return A;else if(typeof A==="number")if(A=GO)B[1]-=GO,B[0]+=1;return B}kSA.addHrTimes=SSA});var gSA=R((ySA)=>{Object.defineProperty(ySA,"__esModule",{value:!0});ySA.ExportResultCode=void 0;var pRB;(function(A){A[A.SUCCESS=0]="SUCCESS",A[A.FAILED=1]="FAILED"})(pRB=ySA.ExportResultCode||(ySA.ExportResultCode={}))});var mSA=R((fSA)=>{Object.defineProperty(fSA,"__esModule",{value:!0});fSA.CompositePropagator=void 0;var hSA=yA();class xSA{constructor(A={}){var Q;this._propagators=(Q=A.propagators)!==null&&Q!==void 0?Q:[],this._fields=Array.from(new Set(this._propagators.map((B)=>typeof B.fields==="function"?B.fields():[]).reduce((B,Y)=>B.concat(Y),[])))}inject(A,Q,B){for(let Y of this._propagators)try{Y.inject(A,Q,B)}catch(J){hSA.diag.warn(`Failed to inject with ${Y.constructor.name}. Err: ${J.message}`)}}extract(A,Q,B){return this._propagators.reduce((Y,J)=>{try{return J.extract(Y,Q,B)}catch(C){hSA.diag.warn(`Failed to extract with ${J.constructor.name}. Err: ${C.message}`)}return Y},A)}fields(){return this._fields.slice()}}fSA.CompositePropagator=xSA});var cSA=R((uSA)=>{Object.defineProperty(uSA,"__esModule",{value:!0});uSA.validateValue=uSA.validateKey=void 0;var zl="[_0-9a-z-*/]",iRB=`[a-z]${zl}{0,255}`,nRB=`[a-z0-9]${zl}{0,240}@[a-z]${zl}{0,13}`,sRB=new RegExp(`^(?:${iRB}|${nRB})$`),rRB=/^[ -~]{0,255}[!-~]$/,aRB=/,|=/;function oRB(A){return sRB.test(A)}uSA.validateKey=oRB;function tRB(A){return rRB.test(A)&&!aRB.test(A)}uSA.validateValue=tRB});var wl=R((sSA)=>{Object.defineProperty(sSA,"__esModule",{value:!0});sSA.TraceState=void 0;var lSA=cSA(),pSA=32,AwB=512,iSA=",",nSA="=";class Rl{constructor(A){if(this._internalState=new Map,A)this._parse(A)}set(A,Q){let B=this._clone();if(B._internalState.has(A))B._internalState.delete(A);return B._internalState.set(A,Q),B}unset(A){let Q=this._clone();return Q._internalState.delete(A),Q}get(A){return this._internalState.get(A)}serialize(){return this._keys().reduce((A,Q)=>{return A.push(Q+nSA+this.get(Q)),A},[]).join(iSA)}_parse(A){if(A.length>AwB)return;if(this._internalState=A.split(iSA).reverse().reduce((Q,B)=>{let Y=B.trim(),J=Y.indexOf(nSA);if(J!==-1){let C=Y.slice(0,J),X=Y.slice(J+1,B.length);if((0,lSA.validateKey)(C)&&(0,lSA.validateValue)(X))Q.set(C,X)}return Q},new Map),this._internalState.size>pSA)this._internalState=new Map(Array.from(this._internalState.entries()).reverse().slice(0,pSA))}_keys(){return Array.from(this._internalState.keys()).reverse()}_clone(){let A=new Rl;return A._internalState=new Map(this._internalState),A}}sSA.TraceState=Rl});var AkA=R((tSA)=>{Object.defineProperty(tSA,"__esModule",{value:!0});tSA.W3CTraceContextPropagator=tSA.parseTraceParent=tSA.TRACE_STATE_HEADER=tSA.TRACE_PARENT_HEADER=void 0;var WO=yA(),QwB=iN(),BwB=wl();tSA.TRACE_PARENT_HEADER="traceparent";tSA.TRACE_STATE_HEADER="tracestate";var YwB="00",JwB="(?!ff)[\\da-f]{2}",CwB="(?![0]{32})[\\da-f]{32}",XwB="(?![0]{16})[\\da-f]{16}",GwB="[\\da-f]{2}",WwB=new RegExp(`^\\s?(${JwB})-(${CwB})-(${XwB})-(${GwB})(-.*)?\\s?$`);function aSA(A){let Q=WwB.exec(A);if(!Q)return null;if(Q[1]==="00"&&Q[5])return null;return{traceId:Q[2],spanId:Q[3],traceFlags:parseInt(Q[4],16)}}tSA.parseTraceParent=aSA;class oSA{inject(A,Q,B){let Y=WO.trace.getSpanContext(A);if(!Y||(0,QwB.isTracingSuppressed)(A)||!(0,WO.isSpanContextValid)(Y))return;let J=`${YwB}-${Y.traceId}-${Y.spanId}-0${Number(Y.traceFlags||WO.TraceFlags.NONE).toString(16)}`;if(B.set(Q,tSA.TRACE_PARENT_HEADER,J),Y.traceState)B.set(Q,tSA.TRACE_STATE_HEADER,Y.traceState.serialize())}extract(A,Q,B){let Y=B.get(Q,tSA.TRACE_PARENT_HEADER);if(!Y)return A;let J=Array.isArray(Y)?Y[0]:Y;if(typeof J!=="string")return A;let C=aSA(J);if(!C)return A;C.isRemote=!0;let X=B.get(Q,tSA.TRACE_STATE_HEADER);if(X){let G=Array.isArray(X)?X.join(","):X;C.traceState=new BwB.TraceState(typeof G==="string"?G:void 0)}return WO.trace.setSpanContext(A,C)}fields(){return[tSA.TRACE_PARENT_HEADER,tSA.TRACE_STATE_HEADER]}}tSA.W3CTraceContextPropagator=oSA});var JkA=R((BkA)=>{Object.defineProperty(BkA,"__esModule",{value:!0});BkA.getRPCMetadata=BkA.deleteRPCMetadata=BkA.setRPCMetadata=BkA.RPCType=void 0;var ZwB=yA(),jl=(0,ZwB.createContextKey)("OpenTelemetry SDK Context Key RPC_METADATA"),$wB;(function(A){A.HTTP="http"})($wB=BkA.RPCType||(BkA.RPCType={}));function UwB(A,Q){return A.setValue(jl,Q)}BkA.setRPCMetadata=UwB;function EwB(A){return A.deleteValue(jl)}BkA.deleteRPCMetadata=EwB;function KwB(A){return A.getValue(jl)}BkA.getRPCMetadata=KwB});var Ol=R((XkA)=>{Object.defineProperty(XkA,"__esModule",{value:!0});XkA.AlwaysOffSampler=void 0;var HwB=yA();class CkA{shouldSample(){return{decision:HwB.SamplingDecision.NOT_RECORD}}toString(){return"AlwaysOffSampler"}}XkA.AlwaysOffSampler=CkA});var Pl=R((FkA)=>{Object.defineProperty(FkA,"__esModule",{value:!0});FkA.AlwaysOnSampler=void 0;var DwB=yA();class WkA{shouldSample(){return{decision:DwB.SamplingDecision.RECORD_AND_SAMPLED}}toString(){return"AlwaysOnSampler"}}FkA.AlwaysOnSampler=WkA});var VkA=R((EkA)=>{Object.defineProperty(EkA,"__esModule",{value:!0});EkA.ParentBasedSampler=void 0;var $O=yA(),NwB=Zl(),$kA=Ol(),Tl=Pl();class UkA{constructor(A){var Q,B,Y,J;if(this._root=A.root,!this._root)(0,NwB.globalErrorHandler)(Error("ParentBasedSampler must have a root sampler configured")),this._root=new Tl.AlwaysOnSampler;this._remoteParentSampled=(Q=A.remoteParentSampled)!==null&&Q!==void 0?Q:new Tl.AlwaysOnSampler,this._remoteParentNotSampled=(B=A.remoteParentNotSampled)!==null&&B!==void 0?B:new $kA.AlwaysOffSampler,this._localParentSampled=(Y=A.localParentSampled)!==null&&Y!==void 0?Y:new Tl.AlwaysOnSampler,this._localParentNotSampled=(J=A.localParentNotSampled)!==null&&J!==void 0?J:new $kA.AlwaysOffSampler}shouldSample(A,Q,B,Y,J,C){let X=$O.trace.getSpanContext(A);if(!X||!(0,$O.isSpanContextValid)(X))return this._root.shouldSample(A,Q,B,Y,J,C);if(X.isRemote){if(X.traceFlags&$O.TraceFlags.SAMPLED)return this._remoteParentSampled.shouldSample(A,Q,B,Y,J,C);return this._remoteParentNotSampled.shouldSample(A,Q,B,Y,J,C)}if(X.traceFlags&$O.TraceFlags.SAMPLED)return this._localParentSampled.shouldSample(A,Q,B,Y,J,C);return this._localParentNotSampled.shouldSample(A,Q,B,Y,J,C)}toString(){return`ParentBased{root=${this._root.toString()}, remoteParentSampled=${this._remoteParentSampled.toString()}, remoteParentNotSampled=${this._remoteParentNotSampled.toString()}, localParentSampled=${this._localParentSampled.toString()}, localParentNotSampled=${this._localParentNotSampled.toString()}}`}}EkA.ParentBasedSampler=UkA});var NkA=R((HkA)=>{Object.defineProperty(HkA,"__esModule",{value:!0});HkA.TraceIdRatioBasedSampler=void 0;var Sl=yA();class IkA{constructor(A=0){this._ratio=A,this._ratio=this._normalize(A),this._upperBound=Math.floor(this._ratio*4294967295)}shouldSample(A,Q){return{decision:(0,Sl.isValidTraceId)(Q)&&this._accumulate(Q)=1?1:A<=0?0:A}_accumulate(A){let Q=0;for(let B=0;B>>0}return Q}}HkA.TraceIdRatioBasedSampler=IkA});var jkA=R((RkA)=>{Object.defineProperty(RkA,"__esModule",{value:!0});RkA.isPlainObject=void 0;var LwB="[object Object]",qwB="[object Null]",MwB="[object Undefined]",zwB=Function.prototype,LkA=zwB.toString,RwB=LkA.call(Object),wwB=jwB(Object.getPrototypeOf,Object),qkA=Object.prototype,MkA=qkA.hasOwnProperty,Q$=Symbol?Symbol.toStringTag:void 0,zkA=qkA.toString;function jwB(A,Q){return function(B){return A(Q(B))}}function OwB(A){if(!PwB(A)||TwB(A)!==LwB)return!1;let Q=wwB(A);if(Q===null)return!0;let B=MkA.call(Q,"constructor")&&Q.constructor;return typeof B=="function"&&B instanceof B&&LkA.call(B)===RwB}RkA.isPlainObject=OwB;function PwB(A){return A!=null&&typeof A=="object"}function TwB(A){if(A==null)return A===void 0?MwB:qwB;return Q$&&Q$ in Object(A)?SwB(A):kwB(A)}function SwB(A){let Q=MkA.call(A,Q$),B=A[Q$],Y=!1;try{A[Q$]=void 0,Y=!0}catch(C){}let J=zkA.call(A);if(Y)if(Q)A[Q$]=B;else delete A[Q$];return J}function kwB(A){return zkA.call(A)}});var vkA=R((kkA)=>{Object.defineProperty(kkA,"__esModule",{value:!0});kkA.merge=void 0;var OkA=jkA(),_wB=20;function vwB(...A){let Q=A.shift(),B=new WeakMap;while(A.length>0)Q=TkA(Q,A.shift(),0,B);return Q}kkA.merge=vwB;function kl(A){if(EO(A))return A.slice();return A}function TkA(A,Q,B=0,Y){let J;if(B>_wB)return;if(B++,UO(A)||UO(Q)||SkA(Q))J=kl(Q);else if(EO(A)){if(J=A.slice(),EO(Q))for(let C=0,X=Q.length;C"u")delete J[W];else J[W]=F;else{let Z=J[W],U=F;if(PkA(A,W,Y)||PkA(Q,W,Y))delete J[W];else{if(rN(Z)&&rN(U)){let $=Y.get(Z)||[],E=Y.get(U)||[];$.push({obj:A,key:W}),E.push({obj:Q,key:W}),Y.set(Z,$),Y.set(U,E)}J[W]=TkA(J[W],F,B,Y)}}}}else J=Q;return J}function PkA(A,Q,B){let Y=B.get(A[Q])||[];for(let J=0,C=Y.length;J"u"||A instanceof Date||A instanceof RegExp||A===null}function ywB(A,Q){if(!(0,OkA.isPlainObject)(A)||!(0,OkA.isPlainObject)(Q))return!1;return!0}});var hkA=R((ykA)=>{Object.defineProperty(ykA,"__esModule",{value:!0});ykA.callWithTimeout=ykA.TimeoutError=void 0;class KO extends Error{constructor(A){super(A);Object.setPrototypeOf(this,KO.prototype)}}ykA.TimeoutError=KO;function gwB(A,Q){let B,Y=new Promise(function(C,X){B=setTimeout(function(){X(new KO("Operation timed out."))},Q)});return Promise.race([A,Y]).then((J)=>{return clearTimeout(B),J},(J)=>{throw clearTimeout(B),J})}ykA.callWithTimeout=gwB});var mkA=R((fkA)=>{Object.defineProperty(fkA,"__esModule",{value:!0});fkA.isUrlIgnored=fkA.urlMatches=void 0;function xkA(A,Q){if(typeof Q==="string")return A===Q;else return!!A.match(Q)}fkA.urlMatches=xkA;function xwB(A,Q){if(!Q)return!1;for(let B of Q)if(xkA(A,B))return!0;return!1}fkA.isUrlIgnored=xwB});var ckA=R((ukA)=>{Object.defineProperty(ukA,"__esModule",{value:!0});ukA.isWrapped=void 0;function bwB(A){return typeof A==="function"&&typeof A.__original==="function"&&typeof A.__unwrap==="function"&&A.__wrapped===!0}ukA.isWrapped=bwB});var nkA=R((pkA)=>{Object.defineProperty(pkA,"__esModule",{value:!0});pkA.Deferred=void 0;class lkA{constructor(){this._promise=new Promise((A,Q)=>{this._resolve=A,this._reject=Q})}get promise(){return this._promise}resolve(A){this._resolve(A)}reject(A){this._reject(A)}}pkA.Deferred=lkA});var okA=R((rkA)=>{Object.defineProperty(rkA,"__esModule",{value:!0});rkA.BindOnceFuture=void 0;var mwB=nkA();class skA{constructor(A,Q){this._callback=A,this._that=Q,this._isCalled=!1,this._deferred=new mwB.Deferred}get isCalled(){return this._isCalled}get promise(){return this._deferred.promise}call(...A){if(!this._isCalled){this._isCalled=!0;try{Promise.resolve(this._callback.call(this._that,...A)).then((Q)=>this._deferred.resolve(Q),(Q)=>this._deferred.reject(Q))}catch(Q){this._deferred.reject(Q)}}return this._deferred.promise}}rkA.BindOnceFuture=skA});var Q_A=R((ekA)=>{Object.defineProperty(ekA,"__esModule",{value:!0});ekA._export=void 0;var tkA=yA(),uwB=iN();function dwB(A,Q){return new Promise((B)=>{tkA.context.with((0,uwB.suppressTracing)(tkA.context.active()),()=>{A.export(Q,(Y)=>{B(Y)})})})}ekA._export=dwB});var MB=R((sA)=>{Object.defineProperty(sA,"__esModule",{value:!0});sA.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=sA.DEFAULT_ATTRIBUTE_COUNT_LIMIT=sA.TraceState=sA.unsuppressTracing=sA.suppressTracing=sA.isTracingSuppressed=sA.TraceIdRatioBasedSampler=sA.ParentBasedSampler=sA.AlwaysOnSampler=sA.AlwaysOffSampler=sA.setRPCMetadata=sA.getRPCMetadata=sA.deleteRPCMetadata=sA.RPCType=sA.parseTraceParent=sA.W3CTraceContextPropagator=sA.TRACE_STATE_HEADER=sA.TRACE_PARENT_HEADER=sA.CompositePropagator=sA.unrefTimer=sA.otperformance=sA.hexToBase64=sA.getEnvWithoutDefaults=sA.getEnv=sA._globalThis=sA.SDK_INFO=sA.RandomIdGenerator=sA.baggageUtils=sA.ExportResultCode=sA.hexToBinary=sA.timeInputToHrTime=sA.millisToHrTime=sA.isTimeInputHrTime=sA.isTimeInput=sA.hrTimeToTimeStamp=sA.hrTimeToNanoseconds=sA.hrTimeToMilliseconds=sA.hrTimeToMicroseconds=sA.hrTimeDuration=sA.hrTime=sA.getTimeOrigin=sA.addHrTimes=sA.loggingErrorHandler=sA.setGlobalErrorHandler=sA.globalErrorHandler=sA.sanitizeAttributes=sA.isAttributeValue=sA.isAttributeKey=sA.AnchoredClock=sA.W3CBaggagePropagator=void 0;sA.internal=sA.VERSION=sA.BindOnceFuture=sA.isWrapped=sA.urlMatches=sA.isUrlIgnored=sA.callWithTimeout=sA.TimeoutError=sA.TracesSamplerValues=sA.merge=sA.parseEnvironment=sA.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=sA.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=sA.DEFAULT_ENVIRONMENT=void 0;var cwB=czA();Object.defineProperty(sA,"W3CBaggagePropagator",{enumerable:!0,get:function(){return cwB.W3CBaggagePropagator}});var lwB=nzA();Object.defineProperty(sA,"AnchoredClock",{enumerable:!0,get:function(){return lwB.AnchoredClock}});var _l=A2A();Object.defineProperty(sA,"isAttributeKey",{enumerable:!0,get:function(){return _l.isAttributeKey}});Object.defineProperty(sA,"isAttributeValue",{enumerable:!0,get:function(){return _l.isAttributeValue}});Object.defineProperty(sA,"sanitizeAttributes",{enumerable:!0,get:function(){return _l.sanitizeAttributes}});var B_A=Zl();Object.defineProperty(sA,"globalErrorHandler",{enumerable:!0,get:function(){return B_A.globalErrorHandler}});Object.defineProperty(sA,"setGlobalErrorHandler",{enumerable:!0,get:function(){return B_A.setGlobalErrorHandler}});var pwB=Fl();Object.defineProperty(sA,"loggingErrorHandler",{enumerable:!0,get:function(){return pwB.loggingErrorHandler}});var x5=vSA();Object.defineProperty(sA,"addHrTimes",{enumerable:!0,get:function(){return x5.addHrTimes}});Object.defineProperty(sA,"getTimeOrigin",{enumerable:!0,get:function(){return x5.getTimeOrigin}});Object.defineProperty(sA,"hrTime",{enumerable:!0,get:function(){return x5.hrTime}});Object.defineProperty(sA,"hrTimeDuration",{enumerable:!0,get:function(){return x5.hrTimeDuration}});Object.defineProperty(sA,"hrTimeToMicroseconds",{enumerable:!0,get:function(){return x5.hrTimeToMicroseconds}});Object.defineProperty(sA,"hrTimeToMilliseconds",{enumerable:!0,get:function(){return x5.hrTimeToMilliseconds}});Object.defineProperty(sA,"hrTimeToNanoseconds",{enumerable:!0,get:function(){return x5.hrTimeToNanoseconds}});Object.defineProperty(sA,"hrTimeToTimeStamp",{enumerable:!0,get:function(){return x5.hrTimeToTimeStamp}});Object.defineProperty(sA,"isTimeInput",{enumerable:!0,get:function(){return x5.isTimeInput}});Object.defineProperty(sA,"isTimeInputHrTime",{enumerable:!0,get:function(){return x5.isTimeInputHrTime}});Object.defineProperty(sA,"millisToHrTime",{enumerable:!0,get:function(){return x5.millisToHrTime}});Object.defineProperty(sA,"timeInputToHrTime",{enumerable:!0,get:function(){return x5.timeInputToHrTime}});var iwB=Vl();Object.defineProperty(sA,"hexToBinary",{enumerable:!0,get:function(){return iwB.hexToBinary}});var nwB=gSA();Object.defineProperty(sA,"ExportResultCode",{enumerable:!0,get:function(){return nwB.ExportResultCode}});var VO=Xl();sA.baggageUtils={getKeyPairs:VO.getKeyPairs,serializeKeyPairs:VO.serializeKeyPairs,parseKeyPairsIntoRecord:VO.parseKeyPairsIntoRecord,parsePairKeyValue:VO.parsePairKeyValue};var EW=Dl();Object.defineProperty(sA,"RandomIdGenerator",{enumerable:!0,get:function(){return EW.RandomIdGenerator}});Object.defineProperty(sA,"SDK_INFO",{enumerable:!0,get:function(){return EW.SDK_INFO}});Object.defineProperty(sA,"_globalThis",{enumerable:!0,get:function(){return EW._globalThis}});Object.defineProperty(sA,"getEnv",{enumerable:!0,get:function(){return EW.getEnv}});Object.defineProperty(sA,"getEnvWithoutDefaults",{enumerable:!0,get:function(){return EW.getEnvWithoutDefaults}});Object.defineProperty(sA,"hexToBase64",{enumerable:!0,get:function(){return EW.hexToBase64}});Object.defineProperty(sA,"otperformance",{enumerable:!0,get:function(){return EW.otperformance}});Object.defineProperty(sA,"unrefTimer",{enumerable:!0,get:function(){return EW.unrefTimer}});var swB=mSA();Object.defineProperty(sA,"CompositePropagator",{enumerable:!0,get:function(){return swB.CompositePropagator}});var IO=AkA();Object.defineProperty(sA,"TRACE_PARENT_HEADER",{enumerable:!0,get:function(){return IO.TRACE_PARENT_HEADER}});Object.defineProperty(sA,"TRACE_STATE_HEADER",{enumerable:!0,get:function(){return IO.TRACE_STATE_HEADER}});Object.defineProperty(sA,"W3CTraceContextPropagator",{enumerable:!0,get:function(){return IO.W3CTraceContextPropagator}});Object.defineProperty(sA,"parseTraceParent",{enumerable:!0,get:function(){return IO.parseTraceParent}});var HO=JkA();Object.defineProperty(sA,"RPCType",{enumerable:!0,get:function(){return HO.RPCType}});Object.defineProperty(sA,"deleteRPCMetadata",{enumerable:!0,get:function(){return HO.deleteRPCMetadata}});Object.defineProperty(sA,"getRPCMetadata",{enumerable:!0,get:function(){return HO.getRPCMetadata}});Object.defineProperty(sA,"setRPCMetadata",{enumerable:!0,get:function(){return HO.setRPCMetadata}});var rwB=Ol();Object.defineProperty(sA,"AlwaysOffSampler",{enumerable:!0,get:function(){return rwB.AlwaysOffSampler}});var awB=Pl();Object.defineProperty(sA,"AlwaysOnSampler",{enumerable:!0,get:function(){return awB.AlwaysOnSampler}});var owB=VkA();Object.defineProperty(sA,"ParentBasedSampler",{enumerable:!0,get:function(){return owB.ParentBasedSampler}});var twB=NkA();Object.defineProperty(sA,"TraceIdRatioBasedSampler",{enumerable:!0,get:function(){return twB.TraceIdRatioBasedSampler}});var vl=iN();Object.defineProperty(sA,"isTracingSuppressed",{enumerable:!0,get:function(){return vl.isTracingSuppressed}});Object.defineProperty(sA,"suppressTracing",{enumerable:!0,get:function(){return vl.suppressTracing}});Object.defineProperty(sA,"unsuppressTracing",{enumerable:!0,get:function(){return vl.unsuppressTracing}});var ewB=wl();Object.defineProperty(sA,"TraceState",{enumerable:!0,get:function(){return ewB.TraceState}});var QK=El();Object.defineProperty(sA,"DEFAULT_ATTRIBUTE_COUNT_LIMIT",{enumerable:!0,get:function(){return QK.DEFAULT_ATTRIBUTE_COUNT_LIMIT}});Object.defineProperty(sA,"DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT",{enumerable:!0,get:function(){return QK.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT}});Object.defineProperty(sA,"DEFAULT_ENVIRONMENT",{enumerable:!0,get:function(){return QK.DEFAULT_ENVIRONMENT}});Object.defineProperty(sA,"DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT",{enumerable:!0,get:function(){return QK.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT}});Object.defineProperty(sA,"DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT",{enumerable:!0,get:function(){return QK.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT}});Object.defineProperty(sA,"parseEnvironment",{enumerable:!0,get:function(){return QK.parseEnvironment}});var AjB=vkA();Object.defineProperty(sA,"merge",{enumerable:!0,get:function(){return AjB.merge}});var QjB=Ul();Object.defineProperty(sA,"TracesSamplerValues",{enumerable:!0,get:function(){return QjB.TracesSamplerValues}});var Y_A=hkA();Object.defineProperty(sA,"TimeoutError",{enumerable:!0,get:function(){return Y_A.TimeoutError}});Object.defineProperty(sA,"callWithTimeout",{enumerable:!0,get:function(){return Y_A.callWithTimeout}});var J_A=mkA();Object.defineProperty(sA,"isUrlIgnored",{enumerable:!0,get:function(){return J_A.isUrlIgnored}});Object.defineProperty(sA,"urlMatches",{enumerable:!0,get:function(){return J_A.urlMatches}});var BjB=ckA();Object.defineProperty(sA,"isWrapped",{enumerable:!0,get:function(){return BjB.isWrapped}});var YjB=okA();Object.defineProperty(sA,"BindOnceFuture",{enumerable:!0,get:function(){return YjB.BindOnceFuture}});var JjB=Il();Object.defineProperty(sA,"VERSION",{enumerable:!0,get:function(){return JjB.VERSION}});var CjB=Q_A();sA.internal={_export:CjB._export}});var aN=R((lvY,X_A)=>{var WjB=Number.MAX_SAFE_INTEGER||9007199254740991,FjB=["major","premajor","minor","preminor","patch","prepatch","prerelease"];X_A.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:16,MAX_SAFE_BUILD_LENGTH:250,MAX_SAFE_INTEGER:WjB,RELEASE_TYPES:FjB,SEMVER_SPEC_VERSION:"2.0.0",FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var oN=R((pvY,G_A)=>{var ZjB=typeof process==="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...A)=>console.error("SEMVER",...A):()=>{};G_A.exports=ZjB});var BK=R(($X,W_A)=>{var{MAX_SAFE_COMPONENT_LENGTH:yl,MAX_SAFE_BUILD_LENGTH:$jB,MAX_LENGTH:UjB}=aN(),EjB=oN();$X=W_A.exports={};var KjB=$X.re=[],VjB=$X.safeRe=[],lA=$X.src=[],IjB=$X.safeSrc=[],pA=$X.t={},HjB=0,gl="[a-zA-Z0-9-]",DjB=[["\\s",1],["\\d",UjB],[gl,$jB]],NjB=(A)=>{for(let[Q,B]of DjB)A=A.split(`${Q}*`).join(`${Q}{0,${B}}`).split(`${Q}+`).join(`${Q}{1,${B}}`);return A},dQ=(A,Q,B)=>{let Y=NjB(Q),J=HjB++;EjB(A,J,Q),pA[A]=J,lA[J]=Q,IjB[J]=Y,KjB[J]=new RegExp(Q,B?"g":void 0),VjB[J]=new RegExp(Y,B?"g":void 0)};dQ("NUMERICIDENTIFIER","0|[1-9]\\d*");dQ("NUMERICIDENTIFIERLOOSE","\\d+");dQ("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${gl}*`);dQ("MAINVERSION",`(${lA[pA.NUMERICIDENTIFIER]})\\.(${lA[pA.NUMERICIDENTIFIER]})\\.(${lA[pA.NUMERICIDENTIFIER]})`);dQ("MAINVERSIONLOOSE",`(${lA[pA.NUMERICIDENTIFIERLOOSE]})\\.(${lA[pA.NUMERICIDENTIFIERLOOSE]})\\.(${lA[pA.NUMERICIDENTIFIERLOOSE]})`);dQ("PRERELEASEIDENTIFIER",`(?:${lA[pA.NUMERICIDENTIFIER]}|${lA[pA.NONNUMERICIDENTIFIER]})`);dQ("PRERELEASEIDENTIFIERLOOSE",`(?:${lA[pA.NUMERICIDENTIFIERLOOSE]}|${lA[pA.NONNUMERICIDENTIFIER]})`);dQ("PRERELEASE",`(?:-(${lA[pA.PRERELEASEIDENTIFIER]}(?:\\.${lA[pA.PRERELEASEIDENTIFIER]})*))`);dQ("PRERELEASELOOSE",`(?:-?(${lA[pA.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${lA[pA.PRERELEASEIDENTIFIERLOOSE]})*))`);dQ("BUILDIDENTIFIER",`${gl}+`);dQ("BUILD",`(?:\\+(${lA[pA.BUILDIDENTIFIER]}(?:\\.${lA[pA.BUILDIDENTIFIER]})*))`);dQ("FULLPLAIN",`v?${lA[pA.MAINVERSION]}${lA[pA.PRERELEASE]}?${lA[pA.BUILD]}?`);dQ("FULL",`^${lA[pA.FULLPLAIN]}$`);dQ("LOOSEPLAIN",`[v=\\s]*${lA[pA.MAINVERSIONLOOSE]}${lA[pA.PRERELEASELOOSE]}?${lA[pA.BUILD]}?`);dQ("LOOSE",`^${lA[pA.LOOSEPLAIN]}$`);dQ("GTLT","((?:<|>)?=?)");dQ("XRANGEIDENTIFIERLOOSE",`${lA[pA.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);dQ("XRANGEIDENTIFIER",`${lA[pA.NUMERICIDENTIFIER]}|x|X|\\*`);dQ("XRANGEPLAIN",`[v=\\s]*(${lA[pA.XRANGEIDENTIFIER]})(?:\\.(${lA[pA.XRANGEIDENTIFIER]})(?:\\.(${lA[pA.XRANGEIDENTIFIER]})(?:${lA[pA.PRERELEASE]})?${lA[pA.BUILD]}?)?)?`);dQ("XRANGEPLAINLOOSE",`[v=\\s]*(${lA[pA.XRANGEIDENTIFIERLOOSE]})(?:\\.(${lA[pA.XRANGEIDENTIFIERLOOSE]})(?:\\.(${lA[pA.XRANGEIDENTIFIERLOOSE]})(?:${lA[pA.PRERELEASELOOSE]})?${lA[pA.BUILD]}?)?)?`);dQ("XRANGE",`^${lA[pA.GTLT]}\\s*${lA[pA.XRANGEPLAIN]}$`);dQ("XRANGELOOSE",`^${lA[pA.GTLT]}\\s*${lA[pA.XRANGEPLAINLOOSE]}$`);dQ("COERCEPLAIN",`(^|[^\\d])(\\d{1,${yl}})(?:\\.(\\d{1,${yl}}))?(?:\\.(\\d{1,${yl}}))?`);dQ("COERCE",`${lA[pA.COERCEPLAIN]}(?:$|[^\\d])`);dQ("COERCEFULL",lA[pA.COERCEPLAIN]+`(?:${lA[pA.PRERELEASE]})?(?:${lA[pA.BUILD]})?(?:$|[^\\d])`);dQ("COERCERTL",lA[pA.COERCE],!0);dQ("COERCERTLFULL",lA[pA.COERCEFULL],!0);dQ("LONETILDE","(?:~>?)");dQ("TILDETRIM",`(\\s*)${lA[pA.LONETILDE]}\\s+`,!0);$X.tildeTrimReplace="$1~";dQ("TILDE",`^${lA[pA.LONETILDE]}${lA[pA.XRANGEPLAIN]}$`);dQ("TILDELOOSE",`^${lA[pA.LONETILDE]}${lA[pA.XRANGEPLAINLOOSE]}$`);dQ("LONECARET","(?:\\^)");dQ("CARETTRIM",`(\\s*)${lA[pA.LONECARET]}\\s+`,!0);$X.caretTrimReplace="$1^";dQ("CARET",`^${lA[pA.LONECARET]}${lA[pA.XRANGEPLAIN]}$`);dQ("CARETLOOSE",`^${lA[pA.LONECARET]}${lA[pA.XRANGEPLAINLOOSE]}$`);dQ("COMPARATORLOOSE",`^${lA[pA.GTLT]}\\s*(${lA[pA.LOOSEPLAIN]})$|^$`);dQ("COMPARATOR",`^${lA[pA.GTLT]}\\s*(${lA[pA.FULLPLAIN]})$|^$`);dQ("COMPARATORTRIM",`(\\s*)${lA[pA.GTLT]}\\s*(${lA[pA.LOOSEPLAIN]}|${lA[pA.XRANGEPLAIN]})`,!0);$X.comparatorTrimReplace="$1$2$3";dQ("HYPHENRANGE",`^\\s*(${lA[pA.XRANGEPLAIN]})\\s+-\\s+(${lA[pA.XRANGEPLAIN]})\\s*$`);dQ("HYPHENRANGELOOSE",`^\\s*(${lA[pA.XRANGEPLAINLOOSE]})\\s+-\\s+(${lA[pA.XRANGEPLAINLOOSE]})\\s*$`);dQ("STAR","(<|>)?=?\\s*\\*");dQ("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");dQ("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var DO=R((ivY,F_A)=>{var LjB=Object.freeze({loose:!0}),qjB=Object.freeze({}),MjB=(A)=>{if(!A)return qjB;if(typeof A!=="object")return LjB;return A};F_A.exports=MjB});var hl=R((nvY,U_A)=>{var Z_A=/^[0-9]+$/,$_A=(A,Q)=>{let B=Z_A.test(A),Y=Z_A.test(Q);if(B&&Y)A=+A,Q=+Q;return A===Q?0:B&&!Y?-1:Y&&!B?1:A$_A(Q,A);U_A.exports={compareIdentifiers:$_A,rcompareIdentifiers:zjB}});var kJ=R((svY,I_A)=>{var NO=oN(),{MAX_LENGTH:E_A,MAX_SAFE_INTEGER:LO}=aN(),{safeRe:K_A,safeSrc:V_A,t:qO}=BK(),RjB=DO(),{compareIdentifiers:YK}=hl();class C1{constructor(A,Q){if(Q=RjB(Q),A instanceof C1)if(A.loose===!!Q.loose&&A.includePrerelease===!!Q.includePrerelease)return A;else A=A.version;else if(typeof A!=="string")throw TypeError(`Invalid version. Must be a string. Got type "${typeof A}".`);if(A.length>E_A)throw TypeError(`version is longer than ${E_A} characters`);NO("SemVer",A,Q),this.options=Q,this.loose=!!Q.loose,this.includePrerelease=!!Q.includePrerelease;let B=A.trim().match(Q.loose?K_A[qO.LOOSE]:K_A[qO.FULL]);if(!B)throw TypeError(`Invalid Version: ${A}`);if(this.raw=A,this.major=+B[1],this.minor=+B[2],this.patch=+B[3],this.major>LO||this.major<0)throw TypeError("Invalid major version");if(this.minor>LO||this.minor<0)throw TypeError("Invalid minor version");if(this.patch>LO||this.patch<0)throw TypeError("Invalid patch version");if(!B[4])this.prerelease=[];else this.prerelease=B[4].split(".").map((Y)=>{if(/^[0-9]+$/.test(Y)){let J=+Y;if(J>=0&&J=0)if(typeof this.prerelease[J]==="number")this.prerelease[J]++,J=-2;if(J===-1){if(Q===this.prerelease.join(".")&&B===!1)throw Error("invalid increment argument: identifier already exists");this.prerelease.push(Y)}}if(Q){let J=[Q,Y];if(B===!1)J=[Q];if(YK(this.prerelease[0],Q)===0){if(isNaN(this.prerelease[1]))this.prerelease=J}else this.prerelease=J}break}default:throw Error(`invalid increment argument: ${A}`)}if(this.raw=this.format(),this.build.length)this.raw+=`+${this.build.join(".")}`;return this}}I_A.exports=C1});var B$=R((rvY,D_A)=>{var H_A=kJ(),wjB=(A,Q,B=!1)=>{if(A instanceof H_A)return A;try{return new H_A(A,Q)}catch(Y){if(!B)return null;throw Y}};D_A.exports=wjB});var L_A=R((avY,N_A)=>{var jjB=B$(),OjB=(A,Q)=>{let B=jjB(A,Q);return B?B.version:null};N_A.exports=OjB});var M_A=R((ovY,q_A)=>{var PjB=B$(),TjB=(A,Q)=>{let B=PjB(A.trim().replace(/^[=v]+/,""),Q);return B?B.version:null};q_A.exports=TjB});var w_A=R((tvY,R_A)=>{var z_A=kJ(),SjB=(A,Q,B,Y,J)=>{if(typeof B==="string")J=Y,Y=B,B=void 0;try{return new z_A(A instanceof z_A?A.version:A,B).inc(Q,Y,J).version}catch(C){return null}};R_A.exports=SjB});var P_A=R((evY,O_A)=>{var j_A=B$(),kjB=(A,Q)=>{let B=j_A(A,null,!0),Y=j_A(Q,null,!0),J=B.compare(Y);if(J===0)return null;let C=J>0,X=C?B:Y,G=C?Y:B,W=!!X.prerelease.length;if(!!G.prerelease.length&&!W){if(!G.patch&&!G.minor)return"major";if(G.compareMain(X)===0){if(G.minor&&!G.patch)return"minor";return"patch"}}let Z=W?"pre":"";if(B.major!==Y.major)return Z+"major";if(B.minor!==Y.minor)return Z+"minor";if(B.patch!==Y.patch)return Z+"patch";return"prerelease"};O_A.exports=kjB});var S_A=R((AyY,T_A)=>{var _jB=kJ(),vjB=(A,Q)=>new _jB(A,Q).major;T_A.exports=vjB});var __A=R((QyY,k_A)=>{var yjB=kJ(),gjB=(A,Q)=>new yjB(A,Q).minor;k_A.exports=gjB});var y_A=R((ByY,v_A)=>{var hjB=kJ(),xjB=(A,Q)=>new hjB(A,Q).patch;v_A.exports=xjB});var h_A=R((YyY,g_A)=>{var fjB=B$(),bjB=(A,Q)=>{let B=fjB(A,Q);return B&&B.prerelease.length?B.prerelease:null};g_A.exports=bjB});var f5=R((JyY,f_A)=>{var x_A=kJ(),mjB=(A,Q,B)=>new x_A(A,B).compare(new x_A(Q,B));f_A.exports=mjB});var m_A=R((CyY,b_A)=>{var ujB=f5(),djB=(A,Q,B)=>ujB(Q,A,B);b_A.exports=djB});var d_A=R((XyY,u_A)=>{var cjB=f5(),ljB=(A,Q)=>cjB(A,Q,!0);u_A.exports=ljB});var MO=R((GyY,l_A)=>{var c_A=kJ(),pjB=(A,Q,B)=>{let Y=new c_A(A,B),J=new c_A(Q,B);return Y.compare(J)||Y.compareBuild(J)};l_A.exports=pjB});var i_A=R((WyY,p_A)=>{var ijB=MO(),njB=(A,Q)=>A.sort((B,Y)=>ijB(B,Y,Q));p_A.exports=njB});var s_A=R((FyY,n_A)=>{var sjB=MO(),rjB=(A,Q)=>A.sort((B,Y)=>sjB(Y,B,Q));n_A.exports=rjB});var tN=R((ZyY,r_A)=>{var ajB=f5(),ojB=(A,Q,B)=>ajB(A,Q,B)>0;r_A.exports=ojB});var zO=R(($yY,a_A)=>{var tjB=f5(),ejB=(A,Q,B)=>tjB(A,Q,B)<0;a_A.exports=ejB});var xl=R((UyY,o_A)=>{var AOB=f5(),QOB=(A,Q,B)=>AOB(A,Q,B)===0;o_A.exports=QOB});var fl=R((EyY,t_A)=>{var BOB=f5(),YOB=(A,Q,B)=>BOB(A,Q,B)!==0;t_A.exports=YOB});var RO=R((KyY,e_A)=>{var JOB=f5(),COB=(A,Q,B)=>JOB(A,Q,B)>=0;e_A.exports=COB});var wO=R((VyY,AvA)=>{var XOB=f5(),GOB=(A,Q,B)=>XOB(A,Q,B)<=0;AvA.exports=GOB});var bl=R((IyY,QvA)=>{var WOB=xl(),FOB=fl(),ZOB=tN(),$OB=RO(),UOB=zO(),EOB=wO(),KOB=(A,Q,B,Y)=>{switch(Q){case"===":if(typeof A==="object")A=A.version;if(typeof B==="object")B=B.version;return A===B;case"!==":if(typeof A==="object")A=A.version;if(typeof B==="object")B=B.version;return A!==B;case"":case"=":case"==":return WOB(A,B,Y);case"!=":return FOB(A,B,Y);case">":return ZOB(A,B,Y);case">=":return $OB(A,B,Y);case"<":return UOB(A,B,Y);case"<=":return EOB(A,B,Y);default:throw TypeError(`Invalid operator: ${Q}`)}};QvA.exports=KOB});var YvA=R((HyY,BvA)=>{var VOB=kJ(),IOB=B$(),{safeRe:jO,t:OO}=BK(),HOB=(A,Q)=>{if(A instanceof VOB)return A;if(typeof A==="number")A=String(A);if(typeof A!=="string")return null;Q=Q||{};let B=null;if(!Q.rtl)B=A.match(Q.includePrerelease?jO[OO.COERCEFULL]:jO[OO.COERCE]);else{let W=Q.includePrerelease?jO[OO.COERCERTLFULL]:jO[OO.COERCERTL],F;while((F=W.exec(A))&&(!B||B.index+B[0].length!==A.length)){if(!B||F.index+F[0].length!==B.index+B[0].length)B=F;W.lastIndex=F.index+F[1].length+F[2].length}W.lastIndex=-1}if(B===null)return null;let Y=B[2],J=B[3]||"0",C=B[4]||"0",X=Q.includePrerelease&&B[5]?`-${B[5]}`:"",G=Q.includePrerelease&&B[6]?`+${B[6]}`:"";return IOB(`${Y}.${J}.${C}${X}${G}`,Q)};BvA.exports=HOB});var XvA=R((DyY,CvA)=>{class JvA{constructor(){this.max=1000,this.map=new Map}get(A){let Q=this.map.get(A);if(Q===void 0)return;else return this.map.delete(A),this.map.set(A,Q),Q}delete(A){return this.map.delete(A)}set(A,Q){if(!this.delete(A)&&Q!==void 0){if(this.map.size>=this.max){let Y=this.map.keys().next().value;this.delete(Y)}this.map.set(A,Q)}return this}}CvA.exports=JvA});var b5=R((NyY,ZvA)=>{var DOB=/\s+/g;class eN{constructor(A,Q){if(Q=LOB(Q),A instanceof eN)if(A.loose===!!Q.loose&&A.includePrerelease===!!Q.includePrerelease)return A;else return new eN(A.raw,Q);if(A instanceof ml)return this.raw=A.value,this.set=[[A]],this.formatted=void 0,this;if(this.options=Q,this.loose=!!Q.loose,this.includePrerelease=!!Q.includePrerelease,this.raw=A.trim().replace(DOB," "),this.set=this.raw.split("||").map((B)=>this.parseRange(B.trim())).filter((B)=>B.length),!this.set.length)throw TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let B=this.set[0];if(this.set=this.set.filter((Y)=>!WvA(Y[0])),this.set.length===0)this.set=[B];else if(this.set.length>1){for(let Y of this.set)if(Y.length===1&&OOB(Y[0])){this.set=[Y];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let A=0;A0)this.formatted+="||";let Q=this.set[A];for(let B=0;B0)this.formatted+=" ";this.formatted+=Q[B].toString().trim()}}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(A){let B=((this.options.includePrerelease&&wOB)|(this.options.loose&&jOB))+":"+A,Y=GvA.get(B);if(Y)return Y;let J=this.options.loose,C=J?a9[K9.HYPHENRANGELOOSE]:a9[K9.HYPHENRANGE];A=A.replace(C,xOB(this.options.includePrerelease)),V0("hyphen replace",A),A=A.replace(a9[K9.COMPARATORTRIM],MOB),V0("comparator trim",A),A=A.replace(a9[K9.TILDETRIM],zOB),V0("tilde trim",A),A=A.replace(a9[K9.CARETTRIM],ROB),V0("caret trim",A);let X=A.split(" ").map((Z)=>POB(Z,this.options)).join(" ").split(/\s+/).map((Z)=>hOB(Z,this.options));if(J)X=X.filter((Z)=>{return V0("loose invalid filter",Z,this.options),!!Z.match(a9[K9.COMPARATORLOOSE])});V0("range list",X);let G=new Map,W=X.map((Z)=>new ml(Z,this.options));for(let Z of W){if(WvA(Z))return[Z];G.set(Z.value,Z)}if(G.size>1&&G.has(""))G.delete("");let F=[...G.values()];return GvA.set(B,F),F}intersects(A,Q){if(!(A instanceof eN))throw TypeError("a Range is required");return this.set.some((B)=>{return FvA(B,Q)&&A.set.some((Y)=>{return FvA(Y,Q)&&B.every((J)=>{return Y.every((C)=>{return J.intersects(C,Q)})})})})}test(A){if(!A)return!1;if(typeof A==="string")try{A=new qOB(A,this.options)}catch(Q){return!1}for(let Q=0;QA.value==="<0.0.0-0",OOB=(A)=>A.value==="",FvA=(A,Q)=>{let B=!0,Y=A.slice(),J=Y.pop();while(B&&Y.length)B=Y.every((C)=>{return J.intersects(C,Q)}),J=Y.pop();return B},POB=(A,Q)=>{return V0("comp",A,Q),A=kOB(A,Q),V0("caret",A),A=TOB(A,Q),V0("tildes",A),A=vOB(A,Q),V0("xrange",A),A=gOB(A,Q),V0("stars",A),A},V9=(A)=>!A||A.toLowerCase()==="x"||A==="*",TOB=(A,Q)=>{return A.trim().split(/\s+/).map((B)=>SOB(B,Q)).join(" ")},SOB=(A,Q)=>{let B=Q.loose?a9[K9.TILDELOOSE]:a9[K9.TILDE];return A.replace(B,(Y,J,C,X,G)=>{V0("tilde",A,Y,J,C,X,G);let W;if(V9(J))W="";else if(V9(C))W=`>=${J}.0.0 <${+J+1}.0.0-0`;else if(V9(X))W=`>=${J}.${C}.0 <${J}.${+C+1}.0-0`;else if(G)V0("replaceTilde pr",G),W=`>=${J}.${C}.${X}-${G} <${J}.${+C+1}.0-0`;else W=`>=${J}.${C}.${X} <${J}.${+C+1}.0-0`;return V0("tilde return",W),W})},kOB=(A,Q)=>{return A.trim().split(/\s+/).map((B)=>_OB(B,Q)).join(" ")},_OB=(A,Q)=>{V0("caret",A,Q);let B=Q.loose?a9[K9.CARETLOOSE]:a9[K9.CARET],Y=Q.includePrerelease?"-0":"";return A.replace(B,(J,C,X,G,W)=>{V0("caret",A,J,C,X,G,W);let F;if(V9(C))F="";else if(V9(X))F=`>=${C}.0.0${Y} <${+C+1}.0.0-0`;else if(V9(G))if(C==="0")F=`>=${C}.${X}.0${Y} <${C}.${+X+1}.0-0`;else F=`>=${C}.${X}.0${Y} <${+C+1}.0.0-0`;else if(W)if(V0("replaceCaret pr",W),C==="0")if(X==="0")F=`>=${C}.${X}.${G}-${W} <${C}.${X}.${+G+1}-0`;else F=`>=${C}.${X}.${G}-${W} <${C}.${+X+1}.0-0`;else F=`>=${C}.${X}.${G}-${W} <${+C+1}.0.0-0`;else if(V0("no pr"),C==="0")if(X==="0")F=`>=${C}.${X}.${G}${Y} <${C}.${X}.${+G+1}-0`;else F=`>=${C}.${X}.${G}${Y} <${C}.${+X+1}.0-0`;else F=`>=${C}.${X}.${G} <${+C+1}.0.0-0`;return V0("caret return",F),F})},vOB=(A,Q)=>{return V0("replaceXRanges",A,Q),A.split(/\s+/).map((B)=>yOB(B,Q)).join(" ")},yOB=(A,Q)=>{A=A.trim();let B=Q.loose?a9[K9.XRANGELOOSE]:a9[K9.XRANGE];return A.replace(B,(Y,J,C,X,G,W)=>{V0("xRange",A,Y,J,C,X,G,W);let F=V9(C),Z=F||V9(X),U=Z||V9(G),$=U;if(J==="="&&$)J="";if(W=Q.includePrerelease?"-0":"",F)if(J===">"||J==="<")Y="<0.0.0-0";else Y="*";else if(J&&$){if(Z)X=0;if(G=0,J===">")if(J=">=",Z)C=+C+1,X=0,G=0;else X=+X+1,G=0;else if(J==="<=")if(J="<",Z)C=+C+1;else X=+X+1;if(J==="<")W="-0";Y=`${J+C}.${X}.${G}${W}`}else if(Z)Y=`>=${C}.0.0${W} <${+C+1}.0.0-0`;else if(U)Y=`>=${C}.${X}.0${W} <${C}.${+X+1}.0-0`;return V0("xRange return",Y),Y})},gOB=(A,Q)=>{return V0("replaceStars",A,Q),A.trim().replace(a9[K9.STAR],"")},hOB=(A,Q)=>{return V0("replaceGTE0",A,Q),A.trim().replace(a9[Q.includePrerelease?K9.GTE0PRE:K9.GTE0],"")},xOB=(A)=>(Q,B,Y,J,C,X,G,W,F,Z,U,$)=>{if(V9(Y))B="";else if(V9(J))B=`>=${Y}.0.0${A?"-0":""}`;else if(V9(C))B=`>=${Y}.${J}.0${A?"-0":""}`;else if(X)B=`>=${B}`;else B=`>=${B}${A?"-0":""}`;if(V9(F))W="";else if(V9(Z))W=`<${+F+1}.0.0-0`;else if(V9(U))W=`<${F}.${+Z+1}.0-0`;else if($)W=`<=${F}.${Z}.${U}-${$}`;else if(A)W=`<${F}.${Z}.${+U+1}-0`;else W=`<=${W}`;return`${B} ${W}`.trim()},fOB=(A,Q,B)=>{for(let Y=0;Y0){let J=A[Y].semver;if(J.major===Q.major&&J.minor===Q.minor&&J.patch===Q.patch)return!0}}return!1}return!0}});var AL=R((LyY,IvA)=>{var QL=Symbol("SemVer ANY");class PO{static get ANY(){return QL}constructor(A,Q){if(Q=$vA(Q),A instanceof PO)if(A.loose===!!Q.loose)return A;else A=A.value;if(A=A.trim().split(/\s+/).join(" "),dl("comparator",A,Q),this.options=Q,this.loose=!!Q.loose,this.parse(A),this.semver===QL)this.value="";else this.value=this.operator+this.semver.version;dl("comp",this)}parse(A){let Q=this.options.loose?UvA[EvA.COMPARATORLOOSE]:UvA[EvA.COMPARATOR],B=A.match(Q);if(!B)throw TypeError(`Invalid comparator: ${A}`);if(this.operator=B[1]!==void 0?B[1]:"",this.operator==="=")this.operator="";if(!B[2])this.semver=QL;else this.semver=new KvA(B[2],this.options.loose)}toString(){return this.value}test(A){if(dl("Comparator.test",A,this.options.loose),this.semver===QL||A===QL)return!0;if(typeof A==="string")try{A=new KvA(A,this.options)}catch(Q){return!1}return ul(A,this.operator,this.semver,this.options)}intersects(A,Q){if(!(A instanceof PO))throw TypeError("a Comparator is required");if(this.operator===""){if(this.value==="")return!0;return new VvA(A.value,Q).test(this.value)}else if(A.operator===""){if(A.value==="")return!0;return new VvA(this.value,Q).test(A.semver)}if(Q=$vA(Q),Q.includePrerelease&&(this.value==="<0.0.0-0"||A.value==="<0.0.0-0"))return!1;if(!Q.includePrerelease&&(this.value.startsWith("<0.0.0")||A.value.startsWith("<0.0.0")))return!1;if(this.operator.startsWith(">")&&A.operator.startsWith(">"))return!0;if(this.operator.startsWith("<")&&A.operator.startsWith("<"))return!0;if(this.semver.version===A.semver.version&&this.operator.includes("=")&&A.operator.includes("="))return!0;if(ul(this.semver,"<",A.semver,Q)&&this.operator.startsWith(">")&&A.operator.startsWith("<"))return!0;if(ul(this.semver,">",A.semver,Q)&&this.operator.startsWith("<")&&A.operator.startsWith(">"))return!0;return!1}}IvA.exports=PO;var $vA=DO(),{safeRe:UvA,t:EvA}=BK(),ul=bl(),dl=oN(),KvA=kJ(),VvA=b5()});var BL=R((qyY,HvA)=>{var bOB=b5(),mOB=(A,Q,B)=>{try{Q=new bOB(Q,B)}catch(Y){return!1}return Q.test(A)};HvA.exports=mOB});var NvA=R((MyY,DvA)=>{var uOB=b5(),dOB=(A,Q)=>new uOB(A,Q).set.map((B)=>B.map((Y)=>Y.value).join(" ").trim().split(" "));DvA.exports=dOB});var qvA=R((zyY,LvA)=>{var cOB=kJ(),lOB=b5(),pOB=(A,Q,B)=>{let Y=null,J=null,C=null;try{C=new lOB(Q,B)}catch(X){return null}return A.forEach((X)=>{if(C.test(X)){if(!Y||J.compare(X)===-1)Y=X,J=new cOB(Y,B)}}),Y};LvA.exports=pOB});var zvA=R((RyY,MvA)=>{var iOB=kJ(),nOB=b5(),sOB=(A,Q,B)=>{let Y=null,J=null,C=null;try{C=new nOB(Q,B)}catch(X){return null}return A.forEach((X)=>{if(C.test(X)){if(!Y||J.compare(X)===1)Y=X,J=new iOB(Y,B)}}),Y};MvA.exports=sOB});var jvA=R((wyY,wvA)=>{var cl=kJ(),rOB=b5(),RvA=tN(),aOB=(A,Q)=>{A=new rOB(A,Q);let B=new cl("0.0.0");if(A.test(B))return B;if(B=new cl("0.0.0-0"),A.test(B))return B;B=null;for(let Y=0;Y{let G=new cl(X.semver.version);switch(X.operator){case">":if(G.prerelease.length===0)G.patch++;else G.prerelease.push(0);G.raw=G.format();case"":case">=":if(!C||RvA(G,C))C=G;break;case"<":case"<=":break;default:throw Error(`Unexpected operation: ${X.operator}`)}}),C&&(!B||RvA(B,C)))B=C}if(B&&A.test(B))return B;return null};wvA.exports=aOB});var PvA=R((jyY,OvA)=>{var oOB=b5(),tOB=(A,Q)=>{try{return new oOB(A,Q).range||"*"}catch(B){return null}};OvA.exports=tOB});var TO=R((OyY,_vA)=>{var eOB=kJ(),kvA=AL(),{ANY:APB}=kvA,QPB=b5(),BPB=BL(),TvA=tN(),SvA=zO(),YPB=wO(),JPB=RO(),CPB=(A,Q,B,Y)=>{A=new eOB(A,Y),Q=new QPB(Q,Y);let J,C,X,G,W;switch(B){case">":J=TvA,C=YPB,X=SvA,G=">",W=">=";break;case"<":J=SvA,C=JPB,X=TvA,G="<",W="<=";break;default:throw TypeError('Must provide a hilo val of "<" or ">"')}if(BPB(A,Q,Y))return!1;for(let F=0;F{if(E.semver===APB)E=new kvA(">=0.0.0");if(U=U||E,$=$||E,J(E.semver,U.semver,Y))U=E;else if(X(E.semver,$.semver,Y))$=E}),U.operator===G||U.operator===W)return!1;if((!$.operator||$.operator===G)&&C(A,$.semver))return!1;else if($.operator===W&&X(A,$.semver))return!1}return!0};_vA.exports=CPB});var yvA=R((PyY,vvA)=>{var XPB=TO(),GPB=(A,Q,B)=>XPB(A,Q,">",B);vvA.exports=GPB});var hvA=R((TyY,gvA)=>{var WPB=TO(),FPB=(A,Q,B)=>WPB(A,Q,"<",B);gvA.exports=FPB});var bvA=R((SyY,fvA)=>{var xvA=b5(),ZPB=(A,Q,B)=>{return A=new xvA(A,B),Q=new xvA(Q,B),A.intersects(Q,B)};fvA.exports=ZPB});var uvA=R((kyY,mvA)=>{var $PB=BL(),UPB=f5();mvA.exports=(A,Q,B)=>{let Y=[],J=null,C=null,X=A.sort((Z,U)=>UPB(Z,U,B));for(let Z of X)if($PB(Z,Q,B)){if(C=Z,!J)J=Z}else{if(C)Y.push([J,C]);C=null,J=null}if(J)Y.push([J,null]);let G=[];for(let[Z,U]of Y)if(Z===U)G.push(Z);else if(!U&&Z===X[0])G.push("*");else if(!U)G.push(`>=${Z}`);else if(Z===X[0])G.push(`<=${U}`);else G.push(`${Z} - ${U}`);let W=G.join(" || "),F=typeof Q.raw==="string"?Q.raw:String(Q);return W.length{var dvA=b5(),pl=AL(),{ANY:ll}=pl,YL=BL(),il=f5(),EPB=(A,Q,B={})=>{if(A===Q)return!0;A=new dvA(A,B),Q=new dvA(Q,B);let Y=!1;A:for(let J of A.set){for(let C of Q.set){let X=VPB(J,C,B);if(Y=Y||X!==null,X)continue A}if(Y)return!1}return!0},KPB=[new pl(">=0.0.0-0")],cvA=[new pl(">=0.0.0")],VPB=(A,Q,B)=>{if(A===Q)return!0;if(A.length===1&&A[0].semver===ll)if(Q.length===1&&Q[0].semver===ll)return!0;else if(B.includePrerelease)A=KPB;else A=cvA;if(Q.length===1&&Q[0].semver===ll)if(B.includePrerelease)return!0;else Q=cvA;let Y=new Set,J,C;for(let E of A)if(E.operator===">"||E.operator===">=")J=lvA(J,E,B);else if(E.operator==="<"||E.operator==="<=")C=pvA(C,E,B);else Y.add(E.semver);if(Y.size>1)return null;let X;if(J&&C){if(X=il(J.semver,C.semver,B),X>0)return null;else if(X===0&&(J.operator!==">="||C.operator!=="<="))return null}for(let E of Y){if(J&&!YL(E,String(J),B))return null;if(C&&!YL(E,String(C),B))return null;for(let K of Q)if(!YL(E,String(K),B))return!1;return!0}let G,W,F,Z,U=C&&!B.includePrerelease&&C.semver.prerelease.length?C.semver:!1,$=J&&!B.includePrerelease&&J.semver.prerelease.length?J.semver:!1;if(U&&U.prerelease.length===1&&C.operator==="<"&&U.prerelease[0]===0)U=!1;for(let E of Q){if(Z=Z||E.operator===">"||E.operator===">=",F=F||E.operator==="<"||E.operator==="<=",J){if($){if(E.semver.prerelease&&E.semver.prerelease.length&&E.semver.major===$.major&&E.semver.minor===$.minor&&E.semver.patch===$.patch)$=!1}if(E.operator===">"||E.operator===">="){if(G=lvA(J,E,B),G===E&&G!==J)return!1}else if(J.operator===">="&&!YL(J.semver,String(E),B))return!1}if(C){if(U){if(E.semver.prerelease&&E.semver.prerelease.length&&E.semver.major===U.major&&E.semver.minor===U.minor&&E.semver.patch===U.patch)U=!1}if(E.operator==="<"||E.operator==="<="){if(W=pvA(C,E,B),W===E&&W!==C)return!1}else if(C.operator==="<="&&!YL(C.semver,String(E),B))return!1}if(!E.operator&&(C||J)&&X!==0)return!1}if(J&&F&&!C&&X!==0)return!1;if(C&&Z&&!J&&X!==0)return!1;if($||U)return!1;return!0},lvA=(A,Q,B)=>{if(!A)return Q;let Y=il(A.semver,Q.semver,B);return Y>0?A:Y<0?Q:Q.operator===">"&&A.operator===">="?Q:A},pvA=(A,Q,B)=>{if(!A)return Q;let Y=il(A.semver,Q.semver,B);return Y<0?A:Y>0?Q:Q.operator==="<"&&A.operator==="<="?Q:A};ivA.exports=EPB});var ovA=R((vyY,avA)=>{var nl=BK(),svA=aN(),IPB=kJ(),rvA=hl(),HPB=B$(),DPB=L_A(),NPB=M_A(),LPB=w_A(),qPB=P_A(),MPB=S_A(),zPB=__A(),RPB=y_A(),wPB=h_A(),jPB=f5(),OPB=m_A(),PPB=d_A(),TPB=MO(),SPB=i_A(),kPB=s_A(),_PB=tN(),vPB=zO(),yPB=xl(),gPB=fl(),hPB=RO(),xPB=wO(),fPB=bl(),bPB=YvA(),mPB=AL(),uPB=b5(),dPB=BL(),cPB=NvA(),lPB=qvA(),pPB=zvA(),iPB=jvA(),nPB=PvA(),sPB=TO(),rPB=yvA(),aPB=hvA(),oPB=bvA(),tPB=uvA(),ePB=nvA();avA.exports={parse:HPB,valid:DPB,clean:NPB,inc:LPB,diff:qPB,major:MPB,minor:zPB,patch:RPB,prerelease:wPB,compare:jPB,rcompare:OPB,compareLoose:PPB,compareBuild:TPB,sort:SPB,rsort:kPB,gt:_PB,lt:vPB,eq:yPB,neq:gPB,gte:hPB,lte:xPB,cmp:fPB,coerce:bPB,Comparator:mPB,Range:uPB,satisfies:dPB,toComparators:cPB,maxSatisfying:lPB,minSatisfying:pPB,minVersion:iPB,validRange:nPB,outside:sPB,gtr:rPB,ltr:aPB,intersects:oPB,simplifyRange:tPB,subset:ePB,SemVer:IPB,re:nl.re,src:nl.src,tokens:nl.t,SEMVER_SPEC_VERSION:svA.SEMVER_SPEC_VERSION,RELEASE_TYPES:svA.RELEASE_TYPES,compareIdentifiers:rvA.compareIdentifiers,rcompareIdentifiers:rvA.rcompareIdentifiers}});var AyA=R((tvA)=>{Object.defineProperty(tvA,"__esModule",{value:!0});tvA.VERSION=void 0;tvA.VERSION="0.57.2"});var ByA=R((QyA)=>{Object.defineProperty(QyA,"__esModule",{value:!0});QyA.SeverityNumber=void 0;var ATB;(function(A){A[A.UNSPECIFIED=0]="UNSPECIFIED",A[A.TRACE=1]="TRACE",A[A.TRACE2=2]="TRACE2",A[A.TRACE3=3]="TRACE3",A[A.TRACE4=4]="TRACE4",A[A.DEBUG=5]="DEBUG",A[A.DEBUG2=6]="DEBUG2",A[A.DEBUG3=7]="DEBUG3",A[A.DEBUG4=8]="DEBUG4",A[A.INFO=9]="INFO",A[A.INFO2=10]="INFO2",A[A.INFO3=11]="INFO3",A[A.INFO4=12]="INFO4",A[A.WARN=13]="WARN",A[A.WARN2=14]="WARN2",A[A.WARN3=15]="WARN3",A[A.WARN4=16]="WARN4",A[A.ERROR=17]="ERROR",A[A.ERROR2=18]="ERROR2",A[A.ERROR3=19]="ERROR3",A[A.ERROR4=20]="ERROR4",A[A.FATAL=21]="FATAL",A[A.FATAL2=22]="FATAL2",A[A.FATAL3=23]="FATAL3",A[A.FATAL4=24]="FATAL4"})(ATB=QyA.SeverityNumber||(QyA.SeverityNumber={}))});var SO=R((YyA)=>{Object.defineProperty(YyA,"__esModule",{value:!0});YyA.NOOP_LOGGER=YyA.NoopLogger=void 0;class rl{emit(A){}}YyA.NoopLogger=rl;YyA.NOOP_LOGGER=new rl});var kO=R((CyA)=>{Object.defineProperty(CyA,"__esModule",{value:!0});CyA.NOOP_LOGGER_PROVIDER=CyA.NoopLoggerProvider=void 0;var BTB=SO();class al{getLogger(A,Q,B){return new BTB.NoopLogger}}CyA.NoopLoggerProvider=al;CyA.NOOP_LOGGER_PROVIDER=new al});var ol=R((WyA)=>{Object.defineProperty(WyA,"__esModule",{value:!0});WyA.ProxyLogger=void 0;var JTB=SO();class GyA{constructor(A,Q,B,Y){this._provider=A,this.name=Q,this.version=B,this.options=Y}emit(A){this._getLogger().emit(A)}_getLogger(){if(this._delegate)return this._delegate;let A=this._provider.getDelegateLogger(this.name,this.version,this.options);if(!A)return JTB.NOOP_LOGGER;return this._delegate=A,this._delegate}}WyA.ProxyLogger=GyA});var tl=R(($yA)=>{Object.defineProperty($yA,"__esModule",{value:!0});$yA.ProxyLoggerProvider=void 0;var CTB=kO(),XTB=ol();class ZyA{getLogger(A,Q,B){var Y;return(Y=this.getDelegateLogger(A,Q,B))!==null&&Y!==void 0?Y:new XTB.ProxyLogger(this,A,Q,B)}getDelegate(){var A;return(A=this._delegate)!==null&&A!==void 0?A:CTB.NOOP_LOGGER_PROVIDER}setDelegate(A){this._delegate=A}getDelegateLogger(A,Q,B){var Y;return(Y=this._delegate)===null||Y===void 0?void 0:Y.getLogger(A,Q,B)}}$yA.ProxyLoggerProvider=ZyA});var VyA=R((EyA)=>{Object.defineProperty(EyA,"__esModule",{value:!0});EyA._globalThis=void 0;EyA._globalThis=typeof globalThis==="object"?globalThis:global});var IyA=R((el)=>{Object.defineProperty(el,"__esModule",{value:!0});el._globalThis=void 0;var GTB=VyA();Object.defineProperty(el,"_globalThis",{enumerable:!0,get:function(){return GTB._globalThis}})});var HyA=R((Ap)=>{Object.defineProperty(Ap,"__esModule",{value:!0});Ap._globalThis=void 0;var FTB=IyA();Object.defineProperty(Ap,"_globalThis",{enumerable:!0,get:function(){return FTB._globalThis}})});var LyA=R((DyA)=>{Object.defineProperty(DyA,"__esModule",{value:!0});DyA.API_BACKWARDS_COMPATIBILITY_VERSION=DyA.makeGetter=DyA._global=DyA.GLOBAL_LOGS_API_KEY=void 0;var $TB=HyA();DyA.GLOBAL_LOGS_API_KEY=Symbol.for("io.opentelemetry.js.api.logs");DyA._global=$TB._globalThis;function UTB(A,Q,B){return(Y)=>Y===A?Q:B}DyA.makeGetter=UTB;DyA.API_BACKWARDS_COMPATIBILITY_VERSION=1});var RyA=R((MyA)=>{Object.defineProperty(MyA,"__esModule",{value:!0});MyA.LogsAPI=void 0;var m5=LyA(),ITB=kO(),qyA=tl();class Qp{constructor(){this._proxyLoggerProvider=new qyA.ProxyLoggerProvider}static getInstance(){if(!this._instance)this._instance=new Qp;return this._instance}setGlobalLoggerProvider(A){if(m5._global[m5.GLOBAL_LOGS_API_KEY])return this.getLoggerProvider();return m5._global[m5.GLOBAL_LOGS_API_KEY]=(0,m5.makeGetter)(m5.API_BACKWARDS_COMPATIBILITY_VERSION,A,ITB.NOOP_LOGGER_PROVIDER),this._proxyLoggerProvider.setDelegate(A),A}getLoggerProvider(){var A,Q;return(Q=(A=m5._global[m5.GLOBAL_LOGS_API_KEY])===null||A===void 0?void 0:A.call(m5._global,m5.API_BACKWARDS_COMPATIBILITY_VERSION))!==null&&Q!==void 0?Q:this._proxyLoggerProvider}getLogger(A,Q,B){return this.getLoggerProvider().getLogger(A,Q,B)}disable(){delete m5._global[m5.GLOBAL_LOGS_API_KEY],this._proxyLoggerProvider=new qyA.ProxyLoggerProvider}}MyA.LogsAPI=Qp});var Bp=R((WG)=>{Object.defineProperty(WG,"__esModule",{value:!0});WG.logs=WG.ProxyLoggerProvider=WG.ProxyLogger=WG.NoopLoggerProvider=WG.NOOP_LOGGER_PROVIDER=WG.NoopLogger=WG.NOOP_LOGGER=WG.SeverityNumber=void 0;var HTB=ByA();Object.defineProperty(WG,"SeverityNumber",{enumerable:!0,get:function(){return HTB.SeverityNumber}});var wyA=SO();Object.defineProperty(WG,"NOOP_LOGGER",{enumerable:!0,get:function(){return wyA.NOOP_LOGGER}});Object.defineProperty(WG,"NoopLogger",{enumerable:!0,get:function(){return wyA.NoopLogger}});var jyA=kO();Object.defineProperty(WG,"NOOP_LOGGER_PROVIDER",{enumerable:!0,get:function(){return jyA.NOOP_LOGGER_PROVIDER}});Object.defineProperty(WG,"NoopLoggerProvider",{enumerable:!0,get:function(){return jyA.NoopLoggerProvider}});var DTB=ol();Object.defineProperty(WG,"ProxyLogger",{enumerable:!0,get:function(){return DTB.ProxyLogger}});var NTB=tl();Object.defineProperty(WG,"ProxyLoggerProvider",{enumerable:!0,get:function(){return NTB.ProxyLoggerProvider}});var LTB=RyA();WG.logs=LTB.LogsAPI.getInstance()});var SyA=R((PyA)=>{Object.defineProperty(PyA,"__esModule",{value:!0});PyA.disableInstrumentations=PyA.enableInstrumentations=void 0;function qTB(A,Q,B,Y){for(let J=0,C=A.length;JQ.disable())}PyA.disableInstrumentations=MTB});var gyA=R((vyA)=>{Object.defineProperty(vyA,"__esModule",{value:!0});vyA.registerInstrumentations=void 0;var kyA=yA(),RTB=Bp(),_yA=SyA();function wTB(A){var Q,B;let Y=A.tracerProvider||kyA.trace.getTracerProvider(),J=A.meterProvider||kyA.metrics.getMeterProvider(),C=A.loggerProvider||RTB.logs.getLoggerProvider(),X=(B=(Q=A.instrumentations)===null||Q===void 0?void 0:Q.flat())!==null&&B!==void 0?B:[];return(0,_yA.enableInstrumentations)(X,Y,J,C),()=>{(0,_yA.disableInstrumentations)(X)}}vyA.registerInstrumentations=wTB});var JL=R((QgY,hyA)=>{var jTB=Number.MAX_SAFE_INTEGER||9007199254740991,OTB=["major","premajor","minor","preminor","patch","prepatch","prerelease"];hyA.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:16,MAX_SAFE_BUILD_LENGTH:250,MAX_SAFE_INTEGER:jTB,RELEASE_TYPES:OTB,SEMVER_SPEC_VERSION:"2.0.0",FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var CL=R((BgY,xyA)=>{var PTB=typeof process==="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...A)=>console.error("SEMVER",...A):()=>{};xyA.exports=PTB});var JK=R((UX,fyA)=>{var{MAX_SAFE_COMPONENT_LENGTH:Yp,MAX_SAFE_BUILD_LENGTH:TTB,MAX_LENGTH:STB}=JL(),kTB=CL();UX=fyA.exports={};var _TB=UX.re=[],vTB=UX.safeRe=[],iA=UX.src=[],yTB=UX.safeSrc=[],nA=UX.t={},gTB=0,Jp="[a-zA-Z0-9-]",hTB=[["\\s",1],["\\d",STB],[Jp,TTB]],xTB=(A)=>{for(let[Q,B]of hTB)A=A.split(`${Q}*`).join(`${Q}{0,${B}}`).split(`${Q}+`).join(`${Q}{1,${B}}`);return A},cQ=(A,Q,B)=>{let Y=xTB(Q),J=gTB++;kTB(A,J,Q),nA[A]=J,iA[J]=Q,yTB[J]=Y,_TB[J]=new RegExp(Q,B?"g":void 0),vTB[J]=new RegExp(Y,B?"g":void 0)};cQ("NUMERICIDENTIFIER","0|[1-9]\\d*");cQ("NUMERICIDENTIFIERLOOSE","\\d+");cQ("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${Jp}*`);cQ("MAINVERSION",`(${iA[nA.NUMERICIDENTIFIER]})\\.(${iA[nA.NUMERICIDENTIFIER]})\\.(${iA[nA.NUMERICIDENTIFIER]})`);cQ("MAINVERSIONLOOSE",`(${iA[nA.NUMERICIDENTIFIERLOOSE]})\\.(${iA[nA.NUMERICIDENTIFIERLOOSE]})\\.(${iA[nA.NUMERICIDENTIFIERLOOSE]})`);cQ("PRERELEASEIDENTIFIER",`(?:${iA[nA.NUMERICIDENTIFIER]}|${iA[nA.NONNUMERICIDENTIFIER]})`);cQ("PRERELEASEIDENTIFIERLOOSE",`(?:${iA[nA.NUMERICIDENTIFIERLOOSE]}|${iA[nA.NONNUMERICIDENTIFIER]})`);cQ("PRERELEASE",`(?:-(${iA[nA.PRERELEASEIDENTIFIER]}(?:\\.${iA[nA.PRERELEASEIDENTIFIER]})*))`);cQ("PRERELEASELOOSE",`(?:-?(${iA[nA.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${iA[nA.PRERELEASEIDENTIFIERLOOSE]})*))`);cQ("BUILDIDENTIFIER",`${Jp}+`);cQ("BUILD",`(?:\\+(${iA[nA.BUILDIDENTIFIER]}(?:\\.${iA[nA.BUILDIDENTIFIER]})*))`);cQ("FULLPLAIN",`v?${iA[nA.MAINVERSION]}${iA[nA.PRERELEASE]}?${iA[nA.BUILD]}?`);cQ("FULL",`^${iA[nA.FULLPLAIN]}$`);cQ("LOOSEPLAIN",`[v=\\s]*${iA[nA.MAINVERSIONLOOSE]}${iA[nA.PRERELEASELOOSE]}?${iA[nA.BUILD]}?`);cQ("LOOSE",`^${iA[nA.LOOSEPLAIN]}$`);cQ("GTLT","((?:<|>)?=?)");cQ("XRANGEIDENTIFIERLOOSE",`${iA[nA.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);cQ("XRANGEIDENTIFIER",`${iA[nA.NUMERICIDENTIFIER]}|x|X|\\*`);cQ("XRANGEPLAIN",`[v=\\s]*(${iA[nA.XRANGEIDENTIFIER]})(?:\\.(${iA[nA.XRANGEIDENTIFIER]})(?:\\.(${iA[nA.XRANGEIDENTIFIER]})(?:${iA[nA.PRERELEASE]})?${iA[nA.BUILD]}?)?)?`);cQ("XRANGEPLAINLOOSE",`[v=\\s]*(${iA[nA.XRANGEIDENTIFIERLOOSE]})(?:\\.(${iA[nA.XRANGEIDENTIFIERLOOSE]})(?:\\.(${iA[nA.XRANGEIDENTIFIERLOOSE]})(?:${iA[nA.PRERELEASELOOSE]})?${iA[nA.BUILD]}?)?)?`);cQ("XRANGE",`^${iA[nA.GTLT]}\\s*${iA[nA.XRANGEPLAIN]}$`);cQ("XRANGELOOSE",`^${iA[nA.GTLT]}\\s*${iA[nA.XRANGEPLAINLOOSE]}$`);cQ("COERCEPLAIN",`(^|[^\\d])(\\d{1,${Yp}})(?:\\.(\\d{1,${Yp}}))?(?:\\.(\\d{1,${Yp}}))?`);cQ("COERCE",`${iA[nA.COERCEPLAIN]}(?:$|[^\\d])`);cQ("COERCEFULL",iA[nA.COERCEPLAIN]+`(?:${iA[nA.PRERELEASE]})?(?:${iA[nA.BUILD]})?(?:$|[^\\d])`);cQ("COERCERTL",iA[nA.COERCE],!0);cQ("COERCERTLFULL",iA[nA.COERCEFULL],!0);cQ("LONETILDE","(?:~>?)");cQ("TILDETRIM",`(\\s*)${iA[nA.LONETILDE]}\\s+`,!0);UX.tildeTrimReplace="$1~";cQ("TILDE",`^${iA[nA.LONETILDE]}${iA[nA.XRANGEPLAIN]}$`);cQ("TILDELOOSE",`^${iA[nA.LONETILDE]}${iA[nA.XRANGEPLAINLOOSE]}$`);cQ("LONECARET","(?:\\^)");cQ("CARETTRIM",`(\\s*)${iA[nA.LONECARET]}\\s+`,!0);UX.caretTrimReplace="$1^";cQ("CARET",`^${iA[nA.LONECARET]}${iA[nA.XRANGEPLAIN]}$`);cQ("CARETLOOSE",`^${iA[nA.LONECARET]}${iA[nA.XRANGEPLAINLOOSE]}$`);cQ("COMPARATORLOOSE",`^${iA[nA.GTLT]}\\s*(${iA[nA.LOOSEPLAIN]})$|^$`);cQ("COMPARATOR",`^${iA[nA.GTLT]}\\s*(${iA[nA.FULLPLAIN]})$|^$`);cQ("COMPARATORTRIM",`(\\s*)${iA[nA.GTLT]}\\s*(${iA[nA.LOOSEPLAIN]}|${iA[nA.XRANGEPLAIN]})`,!0);UX.comparatorTrimReplace="$1$2$3";cQ("HYPHENRANGE",`^\\s*(${iA[nA.XRANGEPLAIN]})\\s+-\\s+(${iA[nA.XRANGEPLAIN]})\\s*$`);cQ("HYPHENRANGELOOSE",`^\\s*(${iA[nA.XRANGEPLAINLOOSE]})\\s+-\\s+(${iA[nA.XRANGEPLAINLOOSE]})\\s*$`);cQ("STAR","(<|>)?=?\\s*\\*");cQ("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");cQ("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var _O=R((YgY,byA)=>{var fTB=Object.freeze({loose:!0}),bTB=Object.freeze({}),mTB=(A)=>{if(!A)return bTB;if(typeof A!=="object")return fTB;return A};byA.exports=mTB});var Cp=R((JgY,dyA)=>{var myA=/^[0-9]+$/,uyA=(A,Q)=>{let B=myA.test(A),Y=myA.test(Q);if(B&&Y)A=+A,Q=+Q;return A===Q?0:B&&!Y?-1:Y&&!B?1:AuyA(Q,A);dyA.exports={compareIdentifiers:uyA,rcompareIdentifiers:uTB}});var _J=R((CgY,iyA)=>{var vO=CL(),{MAX_LENGTH:cyA,MAX_SAFE_INTEGER:yO}=JL(),{safeRe:lyA,safeSrc:pyA,t:gO}=JK(),dTB=_O(),{compareIdentifiers:CK}=Cp();class X1{constructor(A,Q){if(Q=dTB(Q),A instanceof X1)if(A.loose===!!Q.loose&&A.includePrerelease===!!Q.includePrerelease)return A;else A=A.version;else if(typeof A!=="string")throw TypeError(`Invalid version. Must be a string. Got type "${typeof A}".`);if(A.length>cyA)throw TypeError(`version is longer than ${cyA} characters`);vO("SemVer",A,Q),this.options=Q,this.loose=!!Q.loose,this.includePrerelease=!!Q.includePrerelease;let B=A.trim().match(Q.loose?lyA[gO.LOOSE]:lyA[gO.FULL]);if(!B)throw TypeError(`Invalid Version: ${A}`);if(this.raw=A,this.major=+B[1],this.minor=+B[2],this.patch=+B[3],this.major>yO||this.major<0)throw TypeError("Invalid major version");if(this.minor>yO||this.minor<0)throw TypeError("Invalid minor version");if(this.patch>yO||this.patch<0)throw TypeError("Invalid patch version");if(!B[4])this.prerelease=[];else this.prerelease=B[4].split(".").map((Y)=>{if(/^[0-9]+$/.test(Y)){let J=+Y;if(J>=0&&J=0)if(typeof this.prerelease[J]==="number")this.prerelease[J]++,J=-2;if(J===-1){if(Q===this.prerelease.join(".")&&B===!1)throw Error("invalid increment argument: identifier already exists");this.prerelease.push(Y)}}if(Q){let J=[Q,Y];if(B===!1)J=[Q];if(CK(this.prerelease[0],Q)===0){if(isNaN(this.prerelease[1]))this.prerelease=J}else this.prerelease=J}break}default:throw Error(`invalid increment argument: ${A}`)}if(this.raw=this.format(),this.build.length)this.raw+=`+${this.build.join(".")}`;return this}}iyA.exports=X1});var Y$=R((XgY,syA)=>{var nyA=_J(),cTB=(A,Q,B=!1)=>{if(A instanceof nyA)return A;try{return new nyA(A,Q)}catch(Y){if(!B)return null;throw Y}};syA.exports=cTB});var ayA=R((GgY,ryA)=>{var lTB=Y$(),pTB=(A,Q)=>{let B=lTB(A,Q);return B?B.version:null};ryA.exports=pTB});var tyA=R((WgY,oyA)=>{var iTB=Y$(),nTB=(A,Q)=>{let B=iTB(A.trim().replace(/^[=v]+/,""),Q);return B?B.version:null};oyA.exports=nTB});var QgA=R((FgY,AgA)=>{var eyA=_J(),sTB=(A,Q,B,Y,J)=>{if(typeof B==="string")J=Y,Y=B,B=void 0;try{return new eyA(A instanceof eyA?A.version:A,B).inc(Q,Y,J).version}catch(C){return null}};AgA.exports=sTB});var JgA=R((ZgY,YgA)=>{var BgA=Y$(),rTB=(A,Q)=>{let B=BgA(A,null,!0),Y=BgA(Q,null,!0),J=B.compare(Y);if(J===0)return null;let C=J>0,X=C?B:Y,G=C?Y:B,W=!!X.prerelease.length;if(!!G.prerelease.length&&!W){if(!G.patch&&!G.minor)return"major";if(G.compareMain(X)===0){if(G.minor&&!G.patch)return"minor";return"patch"}}let Z=W?"pre":"";if(B.major!==Y.major)return Z+"major";if(B.minor!==Y.minor)return Z+"minor";if(B.patch!==Y.patch)return Z+"patch";return"prerelease"};YgA.exports=rTB});var XgA=R(($gY,CgA)=>{var aTB=_J(),oTB=(A,Q)=>new aTB(A,Q).major;CgA.exports=oTB});var WgA=R((UgY,GgA)=>{var tTB=_J(),eTB=(A,Q)=>new tTB(A,Q).minor;GgA.exports=eTB});var ZgA=R((EgY,FgA)=>{var ASB=_J(),QSB=(A,Q)=>new ASB(A,Q).patch;FgA.exports=QSB});var UgA=R((KgY,$gA)=>{var BSB=Y$(),YSB=(A,Q)=>{let B=BSB(A,Q);return B&&B.prerelease.length?B.prerelease:null};$gA.exports=YSB});var u5=R((VgY,KgA)=>{var EgA=_J(),JSB=(A,Q,B)=>new EgA(A,B).compare(new EgA(Q,B));KgA.exports=JSB});var IgA=R((IgY,VgA)=>{var CSB=u5(),XSB=(A,Q,B)=>CSB(Q,A,B);VgA.exports=XSB});var DgA=R((HgY,HgA)=>{var GSB=u5(),WSB=(A,Q)=>GSB(A,Q,!0);HgA.exports=WSB});var hO=R((DgY,LgA)=>{var NgA=_J(),FSB=(A,Q,B)=>{let Y=new NgA(A,B),J=new NgA(Q,B);return Y.compare(J)||Y.compareBuild(J)};LgA.exports=FSB});var MgA=R((NgY,qgA)=>{var ZSB=hO(),$SB=(A,Q)=>A.sort((B,Y)=>ZSB(B,Y,Q));qgA.exports=$SB});var RgA=R((LgY,zgA)=>{var USB=hO(),ESB=(A,Q)=>A.sort((B,Y)=>USB(Y,B,Q));zgA.exports=ESB});var XL=R((qgY,wgA)=>{var KSB=u5(),VSB=(A,Q,B)=>KSB(A,Q,B)>0;wgA.exports=VSB});var xO=R((MgY,jgA)=>{var ISB=u5(),HSB=(A,Q,B)=>ISB(A,Q,B)<0;jgA.exports=HSB});var Xp=R((zgY,OgA)=>{var DSB=u5(),NSB=(A,Q,B)=>DSB(A,Q,B)===0;OgA.exports=NSB});var Gp=R((RgY,PgA)=>{var LSB=u5(),qSB=(A,Q,B)=>LSB(A,Q,B)!==0;PgA.exports=qSB});var fO=R((wgY,TgA)=>{var MSB=u5(),zSB=(A,Q,B)=>MSB(A,Q,B)>=0;TgA.exports=zSB});var bO=R((jgY,SgA)=>{var RSB=u5(),wSB=(A,Q,B)=>RSB(A,Q,B)<=0;SgA.exports=wSB});var Wp=R((OgY,kgA)=>{var jSB=Xp(),OSB=Gp(),PSB=XL(),TSB=fO(),SSB=xO(),kSB=bO(),_SB=(A,Q,B,Y)=>{switch(Q){case"===":if(typeof A==="object")A=A.version;if(typeof B==="object")B=B.version;return A===B;case"!==":if(typeof A==="object")A=A.version;if(typeof B==="object")B=B.version;return A!==B;case"":case"=":case"==":return jSB(A,B,Y);case"!=":return OSB(A,B,Y);case">":return PSB(A,B,Y);case">=":return TSB(A,B,Y);case"<":return SSB(A,B,Y);case"<=":return kSB(A,B,Y);default:throw TypeError(`Invalid operator: ${Q}`)}};kgA.exports=_SB});var vgA=R((PgY,_gA)=>{var vSB=_J(),ySB=Y$(),{safeRe:mO,t:uO}=JK(),gSB=(A,Q)=>{if(A instanceof vSB)return A;if(typeof A==="number")A=String(A);if(typeof A!=="string")return null;Q=Q||{};let B=null;if(!Q.rtl)B=A.match(Q.includePrerelease?mO[uO.COERCEFULL]:mO[uO.COERCE]);else{let W=Q.includePrerelease?mO[uO.COERCERTLFULL]:mO[uO.COERCERTL],F;while((F=W.exec(A))&&(!B||B.index+B[0].length!==A.length)){if(!B||F.index+F[0].length!==B.index+B[0].length)B=F;W.lastIndex=F.index+F[1].length+F[2].length}W.lastIndex=-1}if(B===null)return null;let Y=B[2],J=B[3]||"0",C=B[4]||"0",X=Q.includePrerelease&&B[5]?`-${B[5]}`:"",G=Q.includePrerelease&&B[6]?`+${B[6]}`:"";return ySB(`${Y}.${J}.${C}${X}${G}`,Q)};_gA.exports=gSB});var hgA=R((TgY,ggA)=>{class ygA{constructor(){this.max=1000,this.map=new Map}get(A){let Q=this.map.get(A);if(Q===void 0)return;else return this.map.delete(A),this.map.set(A,Q),Q}delete(A){return this.map.delete(A)}set(A,Q){if(!this.delete(A)&&Q!==void 0){if(this.map.size>=this.max){let Y=this.map.keys().next().value;this.delete(Y)}this.map.set(A,Q)}return this}}ggA.exports=ygA});var d5=R((SgY,mgA)=>{var hSB=/\s+/g;class GL{constructor(A,Q){if(Q=fSB(Q),A instanceof GL)if(A.loose===!!Q.loose&&A.includePrerelease===!!Q.includePrerelease)return A;else return new GL(A.raw,Q);if(A instanceof Fp)return this.raw=A.value,this.set=[[A]],this.formatted=void 0,this;if(this.options=Q,this.loose=!!Q.loose,this.includePrerelease=!!Q.includePrerelease,this.raw=A.trim().replace(hSB," "),this.set=this.raw.split("||").map((B)=>this.parseRange(B.trim())).filter((B)=>B.length),!this.set.length)throw TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let B=this.set[0];if(this.set=this.set.filter((Y)=>!fgA(Y[0])),this.set.length===0)this.set=[B];else if(this.set.length>1){for(let Y of this.set)if(Y.length===1&&pSB(Y[0])){this.set=[Y];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let A=0;A0)this.formatted+="||";let Q=this.set[A];for(let B=0;B0)this.formatted+=" ";this.formatted+=Q[B].toString().trim()}}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(A){let B=((this.options.includePrerelease&&cSB)|(this.options.loose&&lSB))+":"+A,Y=xgA.get(B);if(Y)return Y;let J=this.options.loose,C=J?o9[I9.HYPHENRANGELOOSE]:o9[I9.HYPHENRANGE];A=A.replace(C,QkB(this.options.includePrerelease)),I0("hyphen replace",A),A=A.replace(o9[I9.COMPARATORTRIM],mSB),I0("comparator trim",A),A=A.replace(o9[I9.TILDETRIM],uSB),I0("tilde trim",A),A=A.replace(o9[I9.CARETTRIM],dSB),I0("caret trim",A);let X=A.split(" ").map((Z)=>iSB(Z,this.options)).join(" ").split(/\s+/).map((Z)=>AkB(Z,this.options));if(J)X=X.filter((Z)=>{return I0("loose invalid filter",Z,this.options),!!Z.match(o9[I9.COMPARATORLOOSE])});I0("range list",X);let G=new Map,W=X.map((Z)=>new Fp(Z,this.options));for(let Z of W){if(fgA(Z))return[Z];G.set(Z.value,Z)}if(G.size>1&&G.has(""))G.delete("");let F=[...G.values()];return xgA.set(B,F),F}intersects(A,Q){if(!(A instanceof GL))throw TypeError("a Range is required");return this.set.some((B)=>{return bgA(B,Q)&&A.set.some((Y)=>{return bgA(Y,Q)&&B.every((J)=>{return Y.every((C)=>{return J.intersects(C,Q)})})})})}test(A){if(!A)return!1;if(typeof A==="string")try{A=new bSB(A,this.options)}catch(Q){return!1}for(let Q=0;QA.value==="<0.0.0-0",pSB=(A)=>A.value==="",bgA=(A,Q)=>{let B=!0,Y=A.slice(),J=Y.pop();while(B&&Y.length)B=Y.every((C)=>{return J.intersects(C,Q)}),J=Y.pop();return B},iSB=(A,Q)=>{return I0("comp",A,Q),A=rSB(A,Q),I0("caret",A),A=nSB(A,Q),I0("tildes",A),A=oSB(A,Q),I0("xrange",A),A=eSB(A,Q),I0("stars",A),A},H9=(A)=>!A||A.toLowerCase()==="x"||A==="*",nSB=(A,Q)=>{return A.trim().split(/\s+/).map((B)=>sSB(B,Q)).join(" ")},sSB=(A,Q)=>{let B=Q.loose?o9[I9.TILDELOOSE]:o9[I9.TILDE];return A.replace(B,(Y,J,C,X,G)=>{I0("tilde",A,Y,J,C,X,G);let W;if(H9(J))W="";else if(H9(C))W=`>=${J}.0.0 <${+J+1}.0.0-0`;else if(H9(X))W=`>=${J}.${C}.0 <${J}.${+C+1}.0-0`;else if(G)I0("replaceTilde pr",G),W=`>=${J}.${C}.${X}-${G} <${J}.${+C+1}.0-0`;else W=`>=${J}.${C}.${X} <${J}.${+C+1}.0-0`;return I0("tilde return",W),W})},rSB=(A,Q)=>{return A.trim().split(/\s+/).map((B)=>aSB(B,Q)).join(" ")},aSB=(A,Q)=>{I0("caret",A,Q);let B=Q.loose?o9[I9.CARETLOOSE]:o9[I9.CARET],Y=Q.includePrerelease?"-0":"";return A.replace(B,(J,C,X,G,W)=>{I0("caret",A,J,C,X,G,W);let F;if(H9(C))F="";else if(H9(X))F=`>=${C}.0.0${Y} <${+C+1}.0.0-0`;else if(H9(G))if(C==="0")F=`>=${C}.${X}.0${Y} <${C}.${+X+1}.0-0`;else F=`>=${C}.${X}.0${Y} <${+C+1}.0.0-0`;else if(W)if(I0("replaceCaret pr",W),C==="0")if(X==="0")F=`>=${C}.${X}.${G}-${W} <${C}.${X}.${+G+1}-0`;else F=`>=${C}.${X}.${G}-${W} <${C}.${+X+1}.0-0`;else F=`>=${C}.${X}.${G}-${W} <${+C+1}.0.0-0`;else if(I0("no pr"),C==="0")if(X==="0")F=`>=${C}.${X}.${G}${Y} <${C}.${X}.${+G+1}-0`;else F=`>=${C}.${X}.${G}${Y} <${C}.${+X+1}.0-0`;else F=`>=${C}.${X}.${G} <${+C+1}.0.0-0`;return I0("caret return",F),F})},oSB=(A,Q)=>{return I0("replaceXRanges",A,Q),A.split(/\s+/).map((B)=>tSB(B,Q)).join(" ")},tSB=(A,Q)=>{A=A.trim();let B=Q.loose?o9[I9.XRANGELOOSE]:o9[I9.XRANGE];return A.replace(B,(Y,J,C,X,G,W)=>{I0("xRange",A,Y,J,C,X,G,W);let F=H9(C),Z=F||H9(X),U=Z||H9(G),$=U;if(J==="="&&$)J="";if(W=Q.includePrerelease?"-0":"",F)if(J===">"||J==="<")Y="<0.0.0-0";else Y="*";else if(J&&$){if(Z)X=0;if(G=0,J===">")if(J=">=",Z)C=+C+1,X=0,G=0;else X=+X+1,G=0;else if(J==="<=")if(J="<",Z)C=+C+1;else X=+X+1;if(J==="<")W="-0";Y=`${J+C}.${X}.${G}${W}`}else if(Z)Y=`>=${C}.0.0${W} <${+C+1}.0.0-0`;else if(U)Y=`>=${C}.${X}.0${W} <${C}.${+X+1}.0-0`;return I0("xRange return",Y),Y})},eSB=(A,Q)=>{return I0("replaceStars",A,Q),A.trim().replace(o9[I9.STAR],"")},AkB=(A,Q)=>{return I0("replaceGTE0",A,Q),A.trim().replace(o9[Q.includePrerelease?I9.GTE0PRE:I9.GTE0],"")},QkB=(A)=>(Q,B,Y,J,C,X,G,W,F,Z,U,$)=>{if(H9(Y))B="";else if(H9(J))B=`>=${Y}.0.0${A?"-0":""}`;else if(H9(C))B=`>=${Y}.${J}.0${A?"-0":""}`;else if(X)B=`>=${B}`;else B=`>=${B}${A?"-0":""}`;if(H9(F))W="";else if(H9(Z))W=`<${+F+1}.0.0-0`;else if(H9(U))W=`<${F}.${+Z+1}.0-0`;else if($)W=`<=${F}.${Z}.${U}-${$}`;else if(A)W=`<${F}.${Z}.${+U+1}-0`;else W=`<=${W}`;return`${B} ${W}`.trim()},BkB=(A,Q,B)=>{for(let Y=0;Y0){let J=A[Y].semver;if(J.major===Q.major&&J.minor===Q.minor&&J.patch===Q.patch)return!0}}return!1}return!0}});var WL=R((kgY,igA)=>{var FL=Symbol("SemVer ANY");class dO{static get ANY(){return FL}constructor(A,Q){if(Q=ugA(Q),A instanceof dO)if(A.loose===!!Q.loose)return A;else A=A.value;if(A=A.trim().split(/\s+/).join(" "),$p("comparator",A,Q),this.options=Q,this.loose=!!Q.loose,this.parse(A),this.semver===FL)this.value="";else this.value=this.operator+this.semver.version;$p("comp",this)}parse(A){let Q=this.options.loose?dgA[cgA.COMPARATORLOOSE]:dgA[cgA.COMPARATOR],B=A.match(Q);if(!B)throw TypeError(`Invalid comparator: ${A}`);if(this.operator=B[1]!==void 0?B[1]:"",this.operator==="=")this.operator="";if(!B[2])this.semver=FL;else this.semver=new lgA(B[2],this.options.loose)}toString(){return this.value}test(A){if($p("Comparator.test",A,this.options.loose),this.semver===FL||A===FL)return!0;if(typeof A==="string")try{A=new lgA(A,this.options)}catch(Q){return!1}return Zp(A,this.operator,this.semver,this.options)}intersects(A,Q){if(!(A instanceof dO))throw TypeError("a Comparator is required");if(this.operator===""){if(this.value==="")return!0;return new pgA(A.value,Q).test(this.value)}else if(A.operator===""){if(A.value==="")return!0;return new pgA(this.value,Q).test(A.semver)}if(Q=ugA(Q),Q.includePrerelease&&(this.value==="<0.0.0-0"||A.value==="<0.0.0-0"))return!1;if(!Q.includePrerelease&&(this.value.startsWith("<0.0.0")||A.value.startsWith("<0.0.0")))return!1;if(this.operator.startsWith(">")&&A.operator.startsWith(">"))return!0;if(this.operator.startsWith("<")&&A.operator.startsWith("<"))return!0;if(this.semver.version===A.semver.version&&this.operator.includes("=")&&A.operator.includes("="))return!0;if(Zp(this.semver,"<",A.semver,Q)&&this.operator.startsWith(">")&&A.operator.startsWith("<"))return!0;if(Zp(this.semver,">",A.semver,Q)&&this.operator.startsWith("<")&&A.operator.startsWith(">"))return!0;return!1}}igA.exports=dO;var ugA=_O(),{safeRe:dgA,t:cgA}=JK(),Zp=Wp(),$p=CL(),lgA=_J(),pgA=d5()});var ZL=R((_gY,ngA)=>{var YkB=d5(),JkB=(A,Q,B)=>{try{Q=new YkB(Q,B)}catch(Y){return!1}return Q.test(A)};ngA.exports=JkB});var rgA=R((vgY,sgA)=>{var CkB=d5(),XkB=(A,Q)=>new CkB(A,Q).set.map((B)=>B.map((Y)=>Y.value).join(" ").trim().split(" "));sgA.exports=XkB});var ogA=R((ygY,agA)=>{var GkB=_J(),WkB=d5(),FkB=(A,Q,B)=>{let Y=null,J=null,C=null;try{C=new WkB(Q,B)}catch(X){return null}return A.forEach((X)=>{if(C.test(X)){if(!Y||J.compare(X)===-1)Y=X,J=new GkB(Y,B)}}),Y};agA.exports=FkB});var egA=R((ggY,tgA)=>{var ZkB=_J(),$kB=d5(),UkB=(A,Q,B)=>{let Y=null,J=null,C=null;try{C=new $kB(Q,B)}catch(X){return null}return A.forEach((X)=>{if(C.test(X)){if(!Y||J.compare(X)===1)Y=X,J=new ZkB(Y,B)}}),Y};tgA.exports=UkB});var BhA=R((hgY,QhA)=>{var Up=_J(),EkB=d5(),AhA=XL(),KkB=(A,Q)=>{A=new EkB(A,Q);let B=new Up("0.0.0");if(A.test(B))return B;if(B=new Up("0.0.0-0"),A.test(B))return B;B=null;for(let Y=0;Y{let G=new Up(X.semver.version);switch(X.operator){case">":if(G.prerelease.length===0)G.patch++;else G.prerelease.push(0);G.raw=G.format();case"":case">=":if(!C||AhA(G,C))C=G;break;case"<":case"<=":break;default:throw Error(`Unexpected operation: ${X.operator}`)}}),C&&(!B||AhA(B,C)))B=C}if(B&&A.test(B))return B;return null};QhA.exports=KkB});var JhA=R((xgY,YhA)=>{var VkB=d5(),IkB=(A,Q)=>{try{return new VkB(A,Q).range||"*"}catch(B){return null}};YhA.exports=IkB});var cO=R((fgY,WhA)=>{var HkB=_J(),GhA=WL(),{ANY:DkB}=GhA,NkB=d5(),LkB=ZL(),ChA=XL(),XhA=xO(),qkB=bO(),MkB=fO(),zkB=(A,Q,B,Y)=>{A=new HkB(A,Y),Q=new NkB(Q,Y);let J,C,X,G,W;switch(B){case">":J=ChA,C=qkB,X=XhA,G=">",W=">=";break;case"<":J=XhA,C=MkB,X=ChA,G="<",W="<=";break;default:throw TypeError('Must provide a hilo val of "<" or ">"')}if(LkB(A,Q,Y))return!1;for(let F=0;F{if(E.semver===DkB)E=new GhA(">=0.0.0");if(U=U||E,$=$||E,J(E.semver,U.semver,Y))U=E;else if(X(E.semver,$.semver,Y))$=E}),U.operator===G||U.operator===W)return!1;if((!$.operator||$.operator===G)&&C(A,$.semver))return!1;else if($.operator===W&&X(A,$.semver))return!1}return!0};WhA.exports=zkB});var ZhA=R((bgY,FhA)=>{var RkB=cO(),wkB=(A,Q,B)=>RkB(A,Q,">",B);FhA.exports=wkB});var UhA=R((mgY,$hA)=>{var jkB=cO(),OkB=(A,Q,B)=>jkB(A,Q,"<",B);$hA.exports=OkB});var VhA=R((ugY,KhA)=>{var EhA=d5(),PkB=(A,Q,B)=>{return A=new EhA(A,B),Q=new EhA(Q,B),A.intersects(Q,B)};KhA.exports=PkB});var HhA=R((dgY,IhA)=>{var TkB=ZL(),SkB=u5();IhA.exports=(A,Q,B)=>{let Y=[],J=null,C=null,X=A.sort((Z,U)=>SkB(Z,U,B));for(let Z of X)if(TkB(Z,Q,B)){if(C=Z,!J)J=Z}else{if(C)Y.push([J,C]);C=null,J=null}if(J)Y.push([J,null]);let G=[];for(let[Z,U]of Y)if(Z===U)G.push(Z);else if(!U&&Z===X[0])G.push("*");else if(!U)G.push(`>=${Z}`);else if(Z===X[0])G.push(`<=${U}`);else G.push(`${Z} - ${U}`);let W=G.join(" || "),F=typeof Q.raw==="string"?Q.raw:String(Q);return W.length{var DhA=d5(),Kp=WL(),{ANY:Ep}=Kp,$L=ZL(),Vp=u5(),kkB=(A,Q,B={})=>{if(A===Q)return!0;A=new DhA(A,B),Q=new DhA(Q,B);let Y=!1;A:for(let J of A.set){for(let C of Q.set){let X=vkB(J,C,B);if(Y=Y||X!==null,X)continue A}if(Y)return!1}return!0},_kB=[new Kp(">=0.0.0-0")],NhA=[new Kp(">=0.0.0")],vkB=(A,Q,B)=>{if(A===Q)return!0;if(A.length===1&&A[0].semver===Ep)if(Q.length===1&&Q[0].semver===Ep)return!0;else if(B.includePrerelease)A=_kB;else A=NhA;if(Q.length===1&&Q[0].semver===Ep)if(B.includePrerelease)return!0;else Q=NhA;let Y=new Set,J,C;for(let E of A)if(E.operator===">"||E.operator===">=")J=LhA(J,E,B);else if(E.operator==="<"||E.operator==="<=")C=qhA(C,E,B);else Y.add(E.semver);if(Y.size>1)return null;let X;if(J&&C){if(X=Vp(J.semver,C.semver,B),X>0)return null;else if(X===0&&(J.operator!==">="||C.operator!=="<="))return null}for(let E of Y){if(J&&!$L(E,String(J),B))return null;if(C&&!$L(E,String(C),B))return null;for(let K of Q)if(!$L(E,String(K),B))return!1;return!0}let G,W,F,Z,U=C&&!B.includePrerelease&&C.semver.prerelease.length?C.semver:!1,$=J&&!B.includePrerelease&&J.semver.prerelease.length?J.semver:!1;if(U&&U.prerelease.length===1&&C.operator==="<"&&U.prerelease[0]===0)U=!1;for(let E of Q){if(Z=Z||E.operator===">"||E.operator===">=",F=F||E.operator==="<"||E.operator==="<=",J){if($){if(E.semver.prerelease&&E.semver.prerelease.length&&E.semver.major===$.major&&E.semver.minor===$.minor&&E.semver.patch===$.patch)$=!1}if(E.operator===">"||E.operator===">="){if(G=LhA(J,E,B),G===E&&G!==J)return!1}else if(J.operator===">="&&!$L(J.semver,String(E),B))return!1}if(C){if(U){if(E.semver.prerelease&&E.semver.prerelease.length&&E.semver.major===U.major&&E.semver.minor===U.minor&&E.semver.patch===U.patch)U=!1}if(E.operator==="<"||E.operator==="<="){if(W=qhA(C,E,B),W===E&&W!==C)return!1}else if(C.operator==="<="&&!$L(C.semver,String(E),B))return!1}if(!E.operator&&(C||J)&&X!==0)return!1}if(J&&F&&!C&&X!==0)return!1;if(C&&Z&&!J&&X!==0)return!1;if($||U)return!1;return!0},LhA=(A,Q,B)=>{if(!A)return Q;let Y=Vp(A.semver,Q.semver,B);return Y>0?A:Y<0?Q:Q.operator===">"&&A.operator===">="?Q:A},qhA=(A,Q,B)=>{if(!A)return Q;let Y=Vp(A.semver,Q.semver,B);return Y<0?A:Y>0?Q:Q.operator==="<"&&A.operator==="<="?Q:A};MhA.exports=kkB});var OhA=R((lgY,jhA)=>{var Ip=JK(),RhA=JL(),ykB=_J(),whA=Cp(),gkB=Y$(),hkB=ayA(),xkB=tyA(),fkB=QgA(),bkB=JgA(),mkB=XgA(),ukB=WgA(),dkB=ZgA(),ckB=UgA(),lkB=u5(),pkB=IgA(),ikB=DgA(),nkB=hO(),skB=MgA(),rkB=RgA(),akB=XL(),okB=xO(),tkB=Xp(),ekB=Gp(),A_B=fO(),Q_B=bO(),B_B=Wp(),Y_B=vgA(),J_B=WL(),C_B=d5(),X_B=ZL(),G_B=rgA(),W_B=ogA(),F_B=egA(),Z_B=BhA(),$_B=JhA(),U_B=cO(),E_B=ZhA(),K_B=UhA(),V_B=VhA(),I_B=HhA(),H_B=zhA();jhA.exports={parse:gkB,valid:hkB,clean:xkB,inc:fkB,diff:bkB,major:mkB,minor:ukB,patch:dkB,prerelease:ckB,compare:lkB,rcompare:pkB,compareLoose:ikB,compareBuild:nkB,sort:skB,rsort:rkB,gt:akB,lt:okB,eq:tkB,neq:ekB,gte:A_B,lte:Q_B,cmp:B_B,coerce:Y_B,Comparator:J_B,Range:C_B,satisfies:X_B,toComparators:G_B,maxSatisfying:W_B,minSatisfying:F_B,minVersion:Z_B,validRange:$_B,outside:U_B,gtr:E_B,ltr:K_B,intersects:V_B,simplifyRange:I_B,subset:H_B,SemVer:ykB,re:Ip.re,src:Ip.src,tokens:Ip.t,SEMVER_SPEC_VERSION:RhA.SEMVER_SPEC_VERSION,RELEASE_TYPES:RhA.RELEASE_TYPES,compareIdentifiers:whA.compareIdentifiers,rcompareIdentifiers:whA.rcompareIdentifiers}});var Dp=R((pgY,ShA)=>{function Hp(A){return typeof A==="function"}var D9=console.error.bind(console);function UL(A,Q,B){var Y=!!A[Q]&&A.propertyIsEnumerable(Q);Object.defineProperty(A,Q,{configurable:!0,enumerable:Y,writable:!0,value:B})}function EL(A){if(A&&A.logger)if(!Hp(A.logger))D9("new logger isn't a function, not replacing");else D9=A.logger}function PhA(A,Q,B){if(!A||!A[Q]){D9("no original function "+Q+" to wrap");return}if(!B){D9("no wrapper function"),D9(Error().stack);return}if(!Hp(A[Q])||!Hp(B)){D9("original object and wrapper must be functions");return}var Y=A[Q],J=B(Y,Q);return UL(J,"__original",Y),UL(J,"__unwrap",function(){if(A[Q]===J)UL(A,Q,Y)}),UL(J,"__wrapped",!0),UL(A,Q,J),J}function D_B(A,Q,B){if(!A){D9("must provide one or more modules to patch"),D9(Error().stack);return}else if(!Array.isArray(A))A=[A];if(!(Q&&Array.isArray(Q))){D9("must provide one or more functions to wrap on modules");return}A.forEach(function(Y){Q.forEach(function(J){PhA(Y,J,B)})})}function ThA(A,Q){if(!A||!A[Q]){D9("no function to unwrap."),D9(Error().stack);return}if(!A[Q].__unwrap)D9("no original to unwrap to -- has "+Q+" already been unwrapped?");else return A[Q].__unwrap()}function N_B(A,Q){if(!A){D9("must provide one or more modules to patch"),D9(Error().stack);return}else if(!Array.isArray(A))A=[A];if(!(Q&&Array.isArray(Q))){D9("must provide one or more functions to unwrap on modules");return}A.forEach(function(B){Q.forEach(function(Y){ThA(B,Y)})})}EL.wrap=PhA;EL.massWrap=D_B;EL.unwrap=ThA;EL.massUnwrap=N_B;ShA.exports=EL});var yhA=R((_hA)=>{Object.defineProperty(_hA,"__esModule",{value:!0});_hA.InstrumentationAbstract=void 0;var Np=yA(),L_B=Bp(),lO=Dp();class khA{constructor(A,Q,B){this.instrumentationName=A,this.instrumentationVersion=Q,this._config={},this._wrap=lO.wrap,this._unwrap=lO.unwrap,this._massWrap=lO.massWrap,this._massUnwrap=lO.massUnwrap,this.setConfig(B),this._diag=Np.diag.createComponentLogger({namespace:A}),this._tracer=Np.trace.getTracer(A,Q),this._meter=Np.metrics.getMeter(A,Q),this._logger=L_B.logs.getLogger(A,Q),this._updateMetricInstruments()}get meter(){return this._meter}setMeterProvider(A){this._meter=A.getMeter(this.instrumentationName,this.instrumentationVersion),this._updateMetricInstruments()}get logger(){return this._logger}setLoggerProvider(A){this._logger=A.getLogger(this.instrumentationName,this.instrumentationVersion)}getModuleDefinitions(){var A;let Q=(A=this.init())!==null&&A!==void 0?A:[];if(!Array.isArray(Q))return[Q];return Q}_updateMetricInstruments(){return}getConfig(){return this._config}setConfig(A){this._config=Object.assign({enabled:!0},A)}setTracerProvider(A){this._tracer=A.getTracer(this.instrumentationName,this.instrumentationVersion)}get tracer(){return this._tracer}_runSpanCustomizationHook(A,Q,B,Y){if(!A)return;try{A(B,Y)}catch(J){this._diag.error("Error running span customization hook due to exception in handler",{triggerName:Q},J)}}}_hA.InstrumentationAbstract=khA});var hhA=R((ngY,ghA)=>{var XK=1000,GK=XK*60,WK=GK*60,J$=WK*24,q_B=J$*7,M_B=J$*365.25;ghA.exports=function(A,Q){Q=Q||{};var B=typeof A;if(B==="string"&&A.length>0)return z_B(A);else if(B==="number"&&isFinite(A))return Q.long?w_B(A):R_B(A);throw Error("val is not a non-empty string or a valid number. val="+JSON.stringify(A))};function z_B(A){if(A=String(A),A.length>100)return;var Q=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(A);if(!Q)return;var B=parseFloat(Q[1]),Y=(Q[2]||"ms").toLowerCase();switch(Y){case"years":case"year":case"yrs":case"yr":case"y":return B*M_B;case"weeks":case"week":case"w":return B*q_B;case"days":case"day":case"d":return B*J$;case"hours":case"hour":case"hrs":case"hr":case"h":return B*WK;case"minutes":case"minute":case"mins":case"min":case"m":return B*GK;case"seconds":case"second":case"secs":case"sec":case"s":return B*XK;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return B;default:return}}function R_B(A){var Q=Math.abs(A);if(Q>=J$)return Math.round(A/J$)+"d";if(Q>=WK)return Math.round(A/WK)+"h";if(Q>=GK)return Math.round(A/GK)+"m";if(Q>=XK)return Math.round(A/XK)+"s";return A+"ms"}function w_B(A){var Q=Math.abs(A);if(Q>=J$)return pO(A,Q,J$,"day");if(Q>=WK)return pO(A,Q,WK,"hour");if(Q>=GK)return pO(A,Q,GK,"minute");if(Q>=XK)return pO(A,Q,XK,"second");return A+" ms"}function pO(A,Q,B,Y){var J=Q>=B*1.5;return Math.round(A/B)+" "+Y+(J?"s":"")}});var Lp=R((sgY,xhA)=>{function j_B(A){B.debug=B,B.default=B,B.coerce=W,B.disable=X,B.enable=J,B.enabled=G,B.humanize=hhA(),B.destroy=F,Object.keys(A).forEach((Z)=>{B[Z]=A[Z]}),B.names=[],B.skips=[],B.formatters={};function Q(Z){let U=0;for(let $=0;${if(N==="%%")return"%";z++;let w=B.formatters[q];if(typeof w==="function"){let P=V[z];N=w.call(H,P),V.splice(z,1),z--}return N}),B.formatArgs.call(H,V),(H.log||B.log).apply(H,V)}if(I.namespace=Z,I.useColors=B.useColors(),I.color=B.selectColor(Z),I.extend=Y,I.destroy=B.destroy,Object.defineProperty(I,"enabled",{enumerable:!0,configurable:!1,get:()=>{if($!==null)return $;if(E!==B.namespaces)E=B.namespaces,K=B.enabled(Z);return K},set:(V)=>{$=V}}),typeof B.init==="function")B.init(I);return I}function Y(Z,U){let $=B(this.namespace+(typeof U>"u"?":":U)+Z);return $.log=this.log,$}function J(Z){B.save(Z),B.namespaces=Z,B.names=[],B.skips=[];let U=(typeof Z==="string"?Z:"").trim().replace(/\s+/g,",").split(",").filter(Boolean);for(let $ of U)if($[0]==="-")B.skips.push($.slice(1));else B.names.push($)}function C(Z,U){let $=0,E=0,K=-1,I=0;while($"-"+U)].join(",");return B.enable(""),Z}function G(Z){for(let U of B.skips)if(C(Z,U))return!1;for(let U of B.names)if(C(Z,U))return!0;return!1}function W(Z){if(Z instanceof Error)return Z.stack||Z.message;return Z}function F(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return B.enable(B.load()),B}xhA.exports=j_B});var bhA=R((fhA,iO)=>{fhA.formatArgs=P_B;fhA.save=T_B;fhA.load=S_B;fhA.useColors=O_B;fhA.storage=k_B();fhA.destroy=(()=>{let A=!1;return()=>{if(!A)A=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}})();fhA.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function O_B(){if(typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let A;return typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&(A=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(A[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function P_B(A){if(A[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+A[0]+(this.useColors?"%c ":" ")+"+"+iO.exports.humanize(this.diff),!this.useColors)return;let Q="color: "+this.color;A.splice(1,0,Q,"color: inherit");let B=0,Y=0;A[0].replace(/%[a-zA-Z%]/g,(J)=>{if(J==="%%")return;if(B++,J==="%c")Y=B}),A.splice(Y,0,Q)}fhA.log=console.debug||console.log||(()=>{});function T_B(A){try{if(A)fhA.storage.setItem("debug",A);else fhA.storage.removeItem("debug")}catch(Q){}}function S_B(){let A;try{A=fhA.storage.getItem("debug")||fhA.storage.getItem("DEBUG")}catch(Q){}if(!A&&typeof process<"u"&&"env"in process)A=process.env.DEBUG;return A}function k_B(){try{return localStorage}catch(A){}}iO.exports=Lp()(fhA);var{formatters:__B}=iO.exports;__B.j=function(A){try{return JSON.stringify(A)}catch(Q){return"[UnexpectedJSONParseError]: "+Q.message}}});var uhA=R((agY,mhA)=>{mhA.exports=(A,Q)=>{Q=Q||process.argv;let B=A.startsWith("-")?"":A.length===1?"-":"--",Y=Q.indexOf(B+A),J=Q.indexOf("--");return Y!==-1&&(J===-1?!0:Y{var m_B=u("os"),G1=uhA(),vJ=process.env,FK;if(G1("no-color")||G1("no-colors")||G1("color=false"))FK=!1;else if(G1("color")||G1("colors")||G1("color=true")||G1("color=always"))FK=!0;if("FORCE_COLOR"in vJ)FK=vJ.FORCE_COLOR.length===0||parseInt(vJ.FORCE_COLOR,10)!==0;function u_B(A){if(A===0)return!1;return{level:A,hasBasic:!0,has256:A>=2,has16m:A>=3}}function d_B(A){if(FK===!1)return 0;if(G1("color=16m")||G1("color=full")||G1("color=truecolor"))return 3;if(G1("color=256"))return 2;if(A&&!A.isTTY&&FK!==!0)return 0;let Q=FK?1:0;if(process.platform==="win32"){let B=m_B.release().split(".");if(Number(process.versions.node.split(".")[0])>=8&&Number(B[0])>=10&&Number(B[2])>=10586)return Number(B[2])>=14931?3:2;return 1}if("CI"in vJ){if(["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI"].some((B)=>(B in vJ))||vJ.CI_NAME==="codeship")return 1;return Q}if("TEAMCITY_VERSION"in vJ)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(vJ.TEAMCITY_VERSION)?1:0;if(vJ.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in vJ){let B=parseInt((vJ.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(vJ.TERM_PROGRAM){case"iTerm.app":return B>=3?3:2;case"Apple_Terminal":return 2}}if(/-256(color)?$/i.test(vJ.TERM))return 2;if(/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(vJ.TERM))return 1;if("COLORTERM"in vJ)return 1;if(vJ.TERM==="dumb")return Q;return Q}function qp(A){let Q=d_B(A);return u_B(Q)}dhA.exports={supportsColor:qp,stdout:qp(process.stdout),stderr:qp(process.stderr)}});var nhA=R((phA,sO)=>{var c_B=u("tty"),nO=u("util");phA.init=a_B;phA.log=n_B;phA.formatArgs=p_B;phA.save=s_B;phA.load=r_B;phA.useColors=l_B;phA.destroy=nO.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");phA.colors=[6,2,3,4,5,1];try{let A=chA();if(A&&(A.stderr||A).level>=2)phA.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221]}catch(A){}phA.inspectOpts=Object.keys(process.env).filter((A)=>{return/^debug_/i.test(A)}).reduce((A,Q)=>{let B=Q.substring(6).toLowerCase().replace(/_([a-z])/g,(J,C)=>{return C.toUpperCase()}),Y=process.env[Q];if(/^(yes|on|true|enabled)$/i.test(Y))Y=!0;else if(/^(no|off|false|disabled)$/i.test(Y))Y=!1;else if(Y==="null")Y=null;else Y=Number(Y);return A[B]=Y,A},{});function l_B(){return"colors"in phA.inspectOpts?Boolean(phA.inspectOpts.colors):c_B.isatty(process.stderr.fd)}function p_B(A){let{namespace:Q,useColors:B}=this;if(B){let Y=this.color,J="\x1B[3"+(Y<8?Y:"8;5;"+Y),C=` ${J};1m${Q} \x1B[0m`;A[0]=C+A[0].split(` +`;throw Error($);function E(I){var V=Tu(rC.join(I,"prebuilds")).map(SDA),H=V.filter(kDA(Vj,Kj)).sort(_DA)[0];if(!H)return;return K(rC.join(I,"prebuilds",H.name))}function K(I){var V=Tu(I).map(vDA),H=V.filter(yDA(ju,Ou)),D=H.sort(gDA(ju))[0];if(D)return rC.join(I,D.file)}};function Tu(A){try{return aZB.readdirSync(A)}catch(Q){return[]}}function RDA(A,Q){var B=Tu(A).filter(Q);return B[0]&&rC.join(A,B[0])}function wDA(A){return/\.node$/.test(A)}function SDA(A){var Q=A.split("-");if(Q.length!==2)return;var B=Q[0],Y=Q[1].split("+");if(!B)return;if(!Y.length)return;if(!Y.every(Boolean))return;return{name:A,platform:B,architectures:Y}}function kDA(A,Q){return function(B){if(B==null)return!1;if(B.platform!==A)return!1;return B.architectures.includes(Q)}}function _DA(A,Q){return A.architectures.length-Q.architectures.length}function vDA(A){var Q=A.split("."),B=Q.pop(),Y={file:A,specificity:0};if(B!=="node")return;for(var J=0;JB.specificity?-1:1;else return 0}}function Q$B(){return!!(process.versions&&process.versions.nw)}function B$B(){if(process.versions&&process.versions.electron)return!0;if(process.env.ELECTRON_RUN_AS_NODE)return!0;return typeof window<"u"&&window.process&&window.process.type==="renderer"}function Y$B(A){if(A!=="linux")return!1;let{familySync:Q,MUSL:B}=AH();return Q()===B}CX.parseTags=vDA;CX.matchTags=yDA;CX.compareTags=gDA;CX.parseTuple=SDA;CX.matchTuple=kDA;CX.compareTuples=_DA});var fDA=R((AMY,_u)=>{var ku=typeof __webpack_require__==="function"?__non_webpack_require__:u;if(typeof ku.addon==="function")_u.exports=ku.addon.bind(ku);else _u.exports=xDA()});var mDA=R((BMY,bDA)=>{var __dirname="/home/ab/GitHub/hytopia/work1/server/node_modules/msgpackr-extract";bDA.exports=fDA()(__dirname)});var mLA=R((fLA)=>{Object.defineProperty(fLA,"__esModule",{value:!0});fLA._globalThis=void 0;fLA._globalThis=typeof globalThis==="object"?globalThis:global});var uLA=R((nZ)=>{var lUB=nZ&&nZ.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),pUB=nZ&&nZ.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))lUB(Q,A,B)};Object.defineProperty(nZ,"__esModule",{value:!0});pUB(mLA(),nZ)});var dLA=R((sZ)=>{var iUB=sZ&&sZ.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),nUB=sZ&&sZ.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))iUB(Q,A,B)};Object.defineProperty(sZ,"__esModule",{value:!0});nUB(uLA(),sZ)});var $c=R((cLA)=>{Object.defineProperty(cLA,"__esModule",{value:!0});cLA.VERSION=void 0;cLA.VERSION="1.9.0"});var rLA=R((nLA)=>{Object.defineProperty(nLA,"__esModule",{value:!0});nLA.isCompatible=nLA._makeCompatibilityCheck=void 0;var sUB=$c(),pLA=/^(\d+)\.(\d+)\.(\d+)(-(.+))?$/;function iLA(A){let Q=new Set([A]),B=new Set,Y=A.match(pLA);if(!Y)return()=>!1;let J={major:+Y[1],minor:+Y[2],patch:+Y[3],prerelease:Y[4]};if(J.prerelease!=null)return function(W){return W===A};function C(G){return B.add(G),!1}function X(G){return Q.add(G),!0}return function(W){if(Q.has(W))return!0;if(B.has(W))return!1;let F=W.match(pLA);if(!F)return C(W);let Z={major:+F[1],minor:+F[2],patch:+F[3],prerelease:F[4]};if(Z.prerelease!=null)return C(W);if(J.major!==Z.major)return C(W);if(J.major===0){if(J.minor===Z.minor&&J.patch<=Z.patch)return X(W);return C(W)}if(J.minor<=Z.minor)return X(W);return C(W)}}nLA._makeCompatibilityCheck=iLA;nLA.isCompatible=iLA(sUB.VERSION)});var rZ=R((aLA)=>{Object.defineProperty(aLA,"__esModule",{value:!0});aLA.unregisterGlobal=aLA.getGlobal=aLA.registerGlobal=void 0;var aUB=dLA(),oE=$c(),oUB=rLA(),tUB=oE.VERSION.split(".")[0],mN=Symbol.for(`opentelemetry.js.api.${tUB}`),uN=aUB._globalThis;function eUB(A,Q,B,Y=!1){var J;let C=uN[mN]=(J=uN[mN])!==null&&J!==void 0?J:{version:oE.VERSION};if(!Y&&C[A]){let X=Error(`@opentelemetry/api: Attempted duplicate registration of API: ${A}`);return B.error(X.stack||X.message),!1}if(C.version!==oE.VERSION){let X=Error(`@opentelemetry/api: Registration of version v${C.version} for ${A} does not match previously registered API v${oE.VERSION}`);return B.error(X.stack||X.message),!1}return C[A]=Q,B.debug(`@opentelemetry/api: Registered a global for ${A} v${oE.VERSION}.`),!0}aLA.registerGlobal=eUB;function AEB(A){var Q,B;let Y=(Q=uN[mN])===null||Q===void 0?void 0:Q.version;if(!Y||!(0,oUB.isCompatible)(Y))return;return(B=uN[mN])===null||B===void 0?void 0:B[A]}aLA.getGlobal=AEB;function QEB(A,Q){Q.debug(`@opentelemetry/api: Unregistering a global for ${A} v${oE.VERSION}.`);let B=uN[mN];if(B)delete B[A]}aLA.unregisterGlobal=QEB});var QqA=R((eLA)=>{Object.defineProperty(eLA,"__esModule",{value:!0});eLA.DiagComponentLogger=void 0;var JEB=rZ();class tLA{constructor(A){this._namespace=A.namespace||"DiagComponentLogger"}debug(...A){return dN("debug",this._namespace,A)}error(...A){return dN("error",this._namespace,A)}info(...A){return dN("info",this._namespace,A)}warn(...A){return dN("warn",this._namespace,A)}verbose(...A){return dN("verbose",this._namespace,A)}}eLA.DiagComponentLogger=tLA;function dN(A,Q,B){let Y=(0,JEB.getGlobal)("diag");if(!Y)return;return B.unshift(Q),Y[A](...B)}});var aj=R((BqA)=>{Object.defineProperty(BqA,"__esModule",{value:!0});BqA.DiagLogLevel=void 0;var CEB;(function(A){A[A.NONE=0]="NONE",A[A.ERROR=30]="ERROR",A[A.WARN=50]="WARN",A[A.INFO=60]="INFO",A[A.DEBUG=70]="DEBUG",A[A.VERBOSE=80]="VERBOSE",A[A.ALL=9999]="ALL"})(CEB=BqA.DiagLogLevel||(BqA.DiagLogLevel={}))});var CqA=R((YqA)=>{Object.defineProperty(YqA,"__esModule",{value:!0});YqA.createLogLevelDiagLogger=void 0;var GG=aj();function XEB(A,Q){if(AGG.DiagLogLevel.ALL)A=GG.DiagLogLevel.ALL;Q=Q||{};function B(Y,J){let C=Q[Y];if(typeof C==="function"&&A>=J)return C.bind(Q);return function(){}}return{error:B("error",GG.DiagLogLevel.ERROR),warn:B("warn",GG.DiagLogLevel.WARN),info:B("info",GG.DiagLogLevel.INFO),debug:B("debug",GG.DiagLogLevel.DEBUG),verbose:B("verbose",GG.DiagLogLevel.VERBOSE)}}YqA.createLogLevelDiagLogger=XEB});var aZ=R((GqA)=>{Object.defineProperty(GqA,"__esModule",{value:!0});GqA.DiagAPI=void 0;var GEB=QqA(),WEB=CqA(),XqA=aj(),oj=rZ(),FEB="diag";class Ec{constructor(){function A(Y){return function(...J){let C=(0,oj.getGlobal)("diag");if(!C)return;return C[Y](...J)}}let Q=this,B=(Y,J={logLevel:XqA.DiagLogLevel.INFO})=>{var C,X,G;if(Y===Q){let Z=Error("Cannot use diag as the logger for itself. Please use a DiagLogger implementation like ConsoleDiagLogger or a custom implementation");return Q.error((C=Z.stack)!==null&&C!==void 0?C:Z.message),!1}if(typeof J==="number")J={logLevel:J};let W=(0,oj.getGlobal)("diag"),F=(0,WEB.createLogLevelDiagLogger)((X=J.logLevel)!==null&&X!==void 0?X:XqA.DiagLogLevel.INFO,Y);if(W&&!J.suppressOverrideMessage){let Z=(G=Error().stack)!==null&&G!==void 0?G:"";W.warn(`Current logger will be overwritten from ${Z}`),F.warn(`Current logger will overwrite one already registered from ${Z}`)}return(0,oj.registerGlobal)("diag",F,Q,!0)};Q.setLogger=B,Q.disable=()=>{(0,oj.unregisterGlobal)(FEB,Q)},Q.createComponentLogger=(Y)=>{return new GEB.DiagComponentLogger(Y)},Q.verbose=A("verbose"),Q.debug=A("debug"),Q.info=A("info"),Q.warn=A("warn"),Q.error=A("error")}static instance(){if(!this._instance)this._instance=new Ec;return this._instance}}GqA.DiagAPI=Ec});var $qA=R((FqA)=>{Object.defineProperty(FqA,"__esModule",{value:!0});FqA.BaggageImpl=void 0;class tE{constructor(A){this._entries=A?new Map(A):new Map}getEntry(A){let Q=this._entries.get(A);if(!Q)return;return Object.assign({},Q)}getAllEntries(){return Array.from(this._entries.entries()).map(([A,Q])=>[A,Q])}setEntry(A,Q){let B=new tE(this._entries);return B._entries.set(A,Q),B}removeEntry(A){let Q=new tE(this._entries);return Q._entries.delete(A),Q}removeEntries(...A){let Q=new tE(this._entries);for(let B of A)Q._entries.delete(B);return Q}clear(){return new tE}}FqA.BaggageImpl=tE});var KqA=R((UqA)=>{Object.defineProperty(UqA,"__esModule",{value:!0});UqA.baggageEntryMetadataSymbol=void 0;UqA.baggageEntryMetadataSymbol=Symbol("BaggageEntryMetadata")});var Kc=R((VqA)=>{Object.defineProperty(VqA,"__esModule",{value:!0});VqA.baggageEntryMetadataFromString=VqA.createBaggage=void 0;var ZEB=aZ(),$EB=$qA(),UEB=KqA(),EEB=ZEB.DiagAPI.instance();function KEB(A={}){return new $EB.BaggageImpl(new Map(Object.entries(A)))}VqA.createBaggage=KEB;function VEB(A){if(typeof A!=="string")EEB.error(`Cannot create baggage metadata from unknown type: ${typeof A}`),A="";return{__TYPE__:UEB.baggageEntryMetadataSymbol,toString(){return A}}}VqA.baggageEntryMetadataFromString=VEB});var cN=R((HqA)=>{Object.defineProperty(HqA,"__esModule",{value:!0});HqA.ROOT_CONTEXT=HqA.createContextKey=void 0;function HEB(A){return Symbol.for(A)}HqA.createContextKey=HEB;class tj{constructor(A){let Q=this;Q._currentContext=A?new Map(A):new Map,Q.getValue=(B)=>Q._currentContext.get(B),Q.setValue=(B,Y)=>{let J=new tj(Q._currentContext);return J._currentContext.set(B,Y),J},Q.deleteValue=(B)=>{let Y=new tj(Q._currentContext);return Y._currentContext.delete(B),Y}}}HqA.ROOT_CONTEXT=new tj});var MqA=R((LqA)=>{Object.defineProperty(LqA,"__esModule",{value:!0});LqA.DiagConsoleLogger=void 0;var Vc=[{n:"error",c:"error"},{n:"warn",c:"warn"},{n:"info",c:"info"},{n:"debug",c:"debug"},{n:"verbose",c:"trace"}];class NqA{constructor(){function A(Q){return function(...B){if(console){let Y=console[Q];if(typeof Y!=="function")Y=console.log;if(typeof Y==="function")return Y.apply(console,B)}}}for(let Q=0;Q{Object.defineProperty(zqA,"__esModule",{value:!0});zqA.createNoopMeter=zqA.NOOP_OBSERVABLE_UP_DOWN_COUNTER_METRIC=zqA.NOOP_OBSERVABLE_GAUGE_METRIC=zqA.NOOP_OBSERVABLE_COUNTER_METRIC=zqA.NOOP_UP_DOWN_COUNTER_METRIC=zqA.NOOP_HISTOGRAM_METRIC=zqA.NOOP_GAUGE_METRIC=zqA.NOOP_COUNTER_METRIC=zqA.NOOP_METER=zqA.NoopObservableUpDownCounterMetric=zqA.NoopObservableGaugeMetric=zqA.NoopObservableCounterMetric=zqA.NoopObservableMetric=zqA.NoopHistogramMetric=zqA.NoopGaugeMetric=zqA.NoopUpDownCounterMetric=zqA.NoopCounterMetric=zqA.NoopMetric=zqA.NoopMeter=void 0;class Ic{constructor(){}createGauge(A,Q){return zqA.NOOP_GAUGE_METRIC}createHistogram(A,Q){return zqA.NOOP_HISTOGRAM_METRIC}createCounter(A,Q){return zqA.NOOP_COUNTER_METRIC}createUpDownCounter(A,Q){return zqA.NOOP_UP_DOWN_COUNTER_METRIC}createObservableGauge(A,Q){return zqA.NOOP_OBSERVABLE_GAUGE_METRIC}createObservableCounter(A,Q){return zqA.NOOP_OBSERVABLE_COUNTER_METRIC}createObservableUpDownCounter(A,Q){return zqA.NOOP_OBSERVABLE_UP_DOWN_COUNTER_METRIC}addBatchObservableCallback(A,Q){}removeBatchObservableCallback(A){}}zqA.NoopMeter=Ic;class eE{}zqA.NoopMetric=eE;class Hc extends eE{add(A,Q){}}zqA.NoopCounterMetric=Hc;class Dc extends eE{add(A,Q){}}zqA.NoopUpDownCounterMetric=Dc;class Nc extends eE{record(A,Q){}}zqA.NoopGaugeMetric=Nc;class Lc extends eE{record(A,Q){}}zqA.NoopHistogramMetric=Lc;class lN{addCallback(A){}removeCallback(A){}}zqA.NoopObservableMetric=lN;class qc extends lN{}zqA.NoopObservableCounterMetric=qc;class Mc extends lN{}zqA.NoopObservableGaugeMetric=Mc;class zc extends lN{}zqA.NoopObservableUpDownCounterMetric=zc;zqA.NOOP_METER=new Ic;zqA.NOOP_COUNTER_METRIC=new Hc;zqA.NOOP_GAUGE_METRIC=new Nc;zqA.NOOP_HISTOGRAM_METRIC=new Lc;zqA.NOOP_UP_DOWN_COUNTER_METRIC=new Dc;zqA.NOOP_OBSERVABLE_COUNTER_METRIC=new qc;zqA.NOOP_OBSERVABLE_GAUGE_METRIC=new Mc;zqA.NOOP_OBSERVABLE_UP_DOWN_COUNTER_METRIC=new zc;function NEB(){return zqA.NOOP_METER}zqA.createNoopMeter=NEB});var yqA=R((vqA)=>{Object.defineProperty(vqA,"__esModule",{value:!0});vqA.ValueType=void 0;var SEB;(function(A){A[A.INT=0]="INT",A[A.DOUBLE=1]="DOUBLE"})(SEB=vqA.ValueType||(vqA.ValueType={}))});var jc=R((gqA)=>{Object.defineProperty(gqA,"__esModule",{value:!0});gqA.defaultTextMapSetter=gqA.defaultTextMapGetter=void 0;gqA.defaultTextMapGetter={get(A,Q){if(A==null)return;return A[Q]},keys(A){if(A==null)return[];return Object.keys(A)}};gqA.defaultTextMapSetter={set(A,Q,B){if(A==null)return;A[Q]=B}}});var mqA=R((fqA)=>{Object.defineProperty(fqA,"__esModule",{value:!0});fqA.NoopContextManager=void 0;var _EB=cN();class xqA{active(){return _EB.ROOT_CONTEXT}with(A,Q,B,...Y){return Q.call(B,...Y)}bind(A,Q){return Q}enable(){return this}disable(){return this}}fqA.NoopContextManager=xqA});var pN=R((dqA)=>{Object.defineProperty(dqA,"__esModule",{value:!0});dqA.ContextAPI=void 0;var vEB=mqA(),Oc=rZ(),uqA=aZ(),Pc="context",yEB=new vEB.NoopContextManager;class Tc{constructor(){}static getInstance(){if(!this._instance)this._instance=new Tc;return this._instance}setGlobalContextManager(A){return(0,Oc.registerGlobal)(Pc,A,uqA.DiagAPI.instance())}active(){return this._getContextManager().active()}with(A,Q,B,...Y){return this._getContextManager().with(A,Q,B,...Y)}bind(A,Q){return this._getContextManager().bind(A,Q)}_getContextManager(){return(0,Oc.getGlobal)(Pc)||yEB}disable(){this._getContextManager().disable(),(0,Oc.unregisterGlobal)(Pc,uqA.DiagAPI.instance())}}dqA.ContextAPI=Tc});var kc=R((lqA)=>{Object.defineProperty(lqA,"__esModule",{value:!0});lqA.TraceFlags=void 0;var gEB;(function(A){A[A.NONE=0]="NONE",A[A.SAMPLED=1]="SAMPLED"})(gEB=lqA.TraceFlags||(lqA.TraceFlags={}))});var ej=R((pqA)=>{Object.defineProperty(pqA,"__esModule",{value:!0});pqA.INVALID_SPAN_CONTEXT=pqA.INVALID_TRACEID=pqA.INVALID_SPANID=void 0;var hEB=kc();pqA.INVALID_SPANID="0000000000000000";pqA.INVALID_TRACEID="00000000000000000000000000000000";pqA.INVALID_SPAN_CONTEXT={traceId:pqA.INVALID_TRACEID,spanId:pqA.INVALID_SPANID,traceFlags:hEB.TraceFlags.NONE}});var AO=R((aqA)=>{Object.defineProperty(aqA,"__esModule",{value:!0});aqA.NonRecordingSpan=void 0;var xEB=ej();class rqA{constructor(A=xEB.INVALID_SPAN_CONTEXT){this._spanContext=A}spanContext(){return this._spanContext}setAttribute(A,Q){return this}setAttributes(A){return this}addEvent(A,Q){return this}addLink(A){return this}addLinks(A){return this}setStatus(A){return this}updateName(A){return this}end(A){}isRecording(){return!1}recordException(A,Q){}}aqA.NonRecordingSpan=rqA});var yc=R((eqA)=>{Object.defineProperty(eqA,"__esModule",{value:!0});eqA.getSpanContext=eqA.setSpanContext=eqA.deleteSpan=eqA.setSpan=eqA.getActiveSpan=eqA.getSpan=void 0;var fEB=cN(),bEB=AO(),mEB=pN(),_c=(0,fEB.createContextKey)("OpenTelemetry Context Key SPAN");function vc(A){return A.getValue(_c)||void 0}eqA.getSpan=vc;function uEB(){return vc(mEB.ContextAPI.getInstance().active())}eqA.getActiveSpan=uEB;function tqA(A,Q){return A.setValue(_c,Q)}eqA.setSpan=tqA;function dEB(A){return A.deleteValue(_c)}eqA.deleteSpan=dEB;function cEB(A,Q){return tqA(A,new bEB.NonRecordingSpan(Q))}eqA.setSpanContext=cEB;function lEB(A){var Q;return(Q=vc(A))===null||Q===void 0?void 0:Q.spanContext()}eqA.getSpanContext=lEB});var QO=R((JMA)=>{Object.defineProperty(JMA,"__esModule",{value:!0});JMA.wrapSpanContext=JMA.isSpanContextValid=JMA.isValidSpanId=JMA.isValidTraceId=void 0;var QMA=ej(),aEB=AO(),oEB=/^([0-9a-f]{32})$/i,tEB=/^[0-9a-f]{16}$/i;function BMA(A){return oEB.test(A)&&A!==QMA.INVALID_TRACEID}JMA.isValidTraceId=BMA;function YMA(A){return tEB.test(A)&&A!==QMA.INVALID_SPANID}JMA.isValidSpanId=YMA;function eEB(A){return BMA(A.traceId)&&YMA(A.spanId)}JMA.isSpanContextValid=eEB;function AKB(A){return new aEB.NonRecordingSpan(A)}JMA.wrapSpanContext=AKB});var xc=R((WMA)=>{Object.defineProperty(WMA,"__esModule",{value:!0});WMA.NoopTracer=void 0;var JKB=pN(),XMA=yc(),gc=AO(),CKB=QO(),hc=JKB.ContextAPI.getInstance();class GMA{startSpan(A,Q,B=hc.active()){if(Boolean(Q===null||Q===void 0?void 0:Q.root))return new gc.NonRecordingSpan;let J=B&&(0,XMA.getSpanContext)(B);if(XKB(J)&&(0,CKB.isSpanContextValid)(J))return new gc.NonRecordingSpan(J);else return new gc.NonRecordingSpan}startActiveSpan(A,Q,B,Y){let J,C,X;if(arguments.length<2)return;else if(arguments.length===2)X=Q;else if(arguments.length===3)J=Q,X=B;else J=Q,C=B,X=Y;let G=C!==null&&C!==void 0?C:hc.active(),W=this.startSpan(A,J,G),F=(0,XMA.setSpan)(G,W);return hc.with(F,X,void 0,W)}}WMA.NoopTracer=GMA;function XKB(A){return typeof A==="object"&&typeof A.spanId==="string"&&typeof A.traceId==="string"&&typeof A.traceFlags==="number"}});var fc=R(($MA)=>{Object.defineProperty($MA,"__esModule",{value:!0});$MA.ProxyTracer=void 0;var GKB=xc(),WKB=new GKB.NoopTracer;class ZMA{constructor(A,Q,B,Y){this._provider=A,this.name=Q,this.version=B,this.options=Y}startSpan(A,Q,B){return this._getTracer().startSpan(A,Q,B)}startActiveSpan(A,Q,B,Y){let J=this._getTracer();return Reflect.apply(J.startActiveSpan,J,arguments)}_getTracer(){if(this._delegate)return this._delegate;let A=this._provider.getDelegateTracer(this.name,this.version,this.options);if(!A)return WKB;return this._delegate=A,this._delegate}}$MA.ProxyTracer=ZMA});var IMA=R((KMA)=>{Object.defineProperty(KMA,"__esModule",{value:!0});KMA.NoopTracerProvider=void 0;var FKB=xc();class EMA{getTracer(A,Q,B){return new FKB.NoopTracer}}KMA.NoopTracerProvider=EMA});var bc=R((DMA)=>{Object.defineProperty(DMA,"__esModule",{value:!0});DMA.ProxyTracerProvider=void 0;var ZKB=fc(),$KB=IMA(),UKB=new $KB.NoopTracerProvider;class HMA{getTracer(A,Q,B){var Y;return(Y=this.getDelegateTracer(A,Q,B))!==null&&Y!==void 0?Y:new ZKB.ProxyTracer(this,A,Q,B)}getDelegate(){var A;return(A=this._delegate)!==null&&A!==void 0?A:UKB}setDelegate(A){this._delegate=A}getDelegateTracer(A,Q,B){var Y;return(Y=this._delegate)===null||Y===void 0?void 0:Y.getTracer(A,Q,B)}}DMA.ProxyTracerProvider=HMA});var qMA=R((LMA)=>{Object.defineProperty(LMA,"__esModule",{value:!0});LMA.SamplingDecision=void 0;var EKB;(function(A){A[A.NOT_RECORD=0]="NOT_RECORD",A[A.RECORD=1]="RECORD",A[A.RECORD_AND_SAMPLED=2]="RECORD_AND_SAMPLED"})(EKB=LMA.SamplingDecision||(LMA.SamplingDecision={}))});var zMA=R((MMA)=>{Object.defineProperty(MMA,"__esModule",{value:!0});MMA.SpanKind=void 0;var KKB;(function(A){A[A.INTERNAL=0]="INTERNAL",A[A.SERVER=1]="SERVER",A[A.CLIENT=2]="CLIENT",A[A.PRODUCER=3]="PRODUCER",A[A.CONSUMER=4]="CONSUMER"})(KKB=MMA.SpanKind||(MMA.SpanKind={}))});var wMA=R((RMA)=>{Object.defineProperty(RMA,"__esModule",{value:!0});RMA.SpanStatusCode=void 0;var VKB;(function(A){A[A.UNSET=0]="UNSET",A[A.OK=1]="OK",A[A.ERROR=2]="ERROR"})(VKB=RMA.SpanStatusCode||(RMA.SpanStatusCode={}))});var PMA=R((jMA)=>{Object.defineProperty(jMA,"__esModule",{value:!0});jMA.validateValue=jMA.validateKey=void 0;var cc="[_0-9a-z-*/]",IKB=`[a-z]${cc}{0,255}`,HKB=`[a-z0-9]${cc}{0,240}@[a-z]${cc}{0,13}`,DKB=new RegExp(`^(?:${IKB}|${HKB})$`),NKB=/^[ -~]{0,255}[!-~]$/,LKB=/,|=/;function qKB(A){return DKB.test(A)}jMA.validateKey=qKB;function MKB(A){return NKB.test(A)&&!LKB.test(A)}jMA.validateValue=MKB});var gMA=R((vMA)=>{Object.defineProperty(vMA,"__esModule",{value:!0});vMA.TraceStateImpl=void 0;var TMA=PMA(),SMA=32,RKB=512,kMA=",",_MA="=";class lc{constructor(A){if(this._internalState=new Map,A)this._parse(A)}set(A,Q){let B=this._clone();if(B._internalState.has(A))B._internalState.delete(A);return B._internalState.set(A,Q),B}unset(A){let Q=this._clone();return Q._internalState.delete(A),Q}get(A){return this._internalState.get(A)}serialize(){return this._keys().reduce((A,Q)=>{return A.push(Q+_MA+this.get(Q)),A},[]).join(kMA)}_parse(A){if(A.length>RKB)return;if(this._internalState=A.split(kMA).reverse().reduce((Q,B)=>{let Y=B.trim(),J=Y.indexOf(_MA);if(J!==-1){let C=Y.slice(0,J),X=Y.slice(J+1,B.length);if((0,TMA.validateKey)(C)&&(0,TMA.validateValue)(X))Q.set(C,X)}return Q},new Map),this._internalState.size>SMA)this._internalState=new Map(Array.from(this._internalState.entries()).reverse().slice(0,SMA))}_keys(){return Array.from(this._internalState.keys()).reverse()}_clone(){let A=new lc;return A._internalState=new Map(this._internalState),A}}vMA.TraceStateImpl=lc});var fMA=R((hMA)=>{Object.defineProperty(hMA,"__esModule",{value:!0});hMA.createTraceState=void 0;var wKB=gMA();function jKB(A){return new wKB.TraceStateImpl(A)}hMA.createTraceState=jKB});var uMA=R((bMA)=>{Object.defineProperty(bMA,"__esModule",{value:!0});bMA.context=void 0;var OKB=pN();bMA.context=OKB.ContextAPI.getInstance()});var lMA=R((dMA)=>{Object.defineProperty(dMA,"__esModule",{value:!0});dMA.diag=void 0;var PKB=aZ();dMA.diag=PKB.DiagAPI.instance()});var nMA=R((pMA)=>{Object.defineProperty(pMA,"__esModule",{value:!0});pMA.NOOP_METER_PROVIDER=pMA.NoopMeterProvider=void 0;var TKB=Rc();class pc{getMeter(A,Q,B){return TKB.NOOP_METER}}pMA.NoopMeterProvider=pc;pMA.NOOP_METER_PROVIDER=new pc});var oMA=R((rMA)=>{Object.defineProperty(rMA,"__esModule",{value:!0});rMA.MetricsAPI=void 0;var kKB=nMA(),ic=rZ(),sMA=aZ(),nc="metrics";class sc{constructor(){}static getInstance(){if(!this._instance)this._instance=new sc;return this._instance}setGlobalMeterProvider(A){return(0,ic.registerGlobal)(nc,A,sMA.DiagAPI.instance())}getMeterProvider(){return(0,ic.getGlobal)(nc)||kKB.NOOP_METER_PROVIDER}getMeter(A,Q,B){return this.getMeterProvider().getMeter(A,Q,B)}disable(){(0,ic.unregisterGlobal)(nc,sMA.DiagAPI.instance())}}rMA.MetricsAPI=sc});var AzA=R((tMA)=>{Object.defineProperty(tMA,"__esModule",{value:!0});tMA.metrics=void 0;var _KB=oMA();tMA.metrics=_KB.MetricsAPI.getInstance()});var JzA=R((BzA)=>{Object.defineProperty(BzA,"__esModule",{value:!0});BzA.NoopTextMapPropagator=void 0;class QzA{inject(A,Q){}extract(A,Q){return A}fields(){return[]}}BzA.NoopTextMapPropagator=QzA});var WzA=R((XzA)=>{Object.defineProperty(XzA,"__esModule",{value:!0});XzA.deleteBaggage=XzA.setBaggage=XzA.getActiveBaggage=XzA.getBaggage=void 0;var vKB=pN(),yKB=cN(),rc=(0,yKB.createContextKey)("OpenTelemetry Baggage Key");function CzA(A){return A.getValue(rc)||void 0}XzA.getBaggage=CzA;function gKB(){return CzA(vKB.ContextAPI.getInstance().active())}XzA.getActiveBaggage=gKB;function hKB(A,Q){return A.setValue(rc,Q)}XzA.setBaggage=hKB;function xKB(A){return A.deleteValue(rc)}XzA.deleteBaggage=xKB});var EzA=R(($zA)=>{Object.defineProperty($zA,"__esModule",{value:!0});$zA.PropagationAPI=void 0;var ac=rZ(),uKB=JzA(),FzA=jc(),BO=WzA(),dKB=Kc(),ZzA=aZ(),oc="propagation",cKB=new uKB.NoopTextMapPropagator;class tc{constructor(){this.createBaggage=dKB.createBaggage,this.getBaggage=BO.getBaggage,this.getActiveBaggage=BO.getActiveBaggage,this.setBaggage=BO.setBaggage,this.deleteBaggage=BO.deleteBaggage}static getInstance(){if(!this._instance)this._instance=new tc;return this._instance}setGlobalPropagator(A){return(0,ac.registerGlobal)(oc,A,ZzA.DiagAPI.instance())}inject(A,Q,B=FzA.defaultTextMapSetter){return this._getGlobalPropagator().inject(A,Q,B)}extract(A,Q,B=FzA.defaultTextMapGetter){return this._getGlobalPropagator().extract(A,Q,B)}fields(){return this._getGlobalPropagator().fields()}disable(){(0,ac.unregisterGlobal)(oc,ZzA.DiagAPI.instance())}_getGlobalPropagator(){return(0,ac.getGlobal)(oc)||cKB}}$zA.PropagationAPI=tc});var IzA=R((KzA)=>{Object.defineProperty(KzA,"__esModule",{value:!0});KzA.propagation=void 0;var lKB=EzA();KzA.propagation=lKB.PropagationAPI.getInstance()});var MzA=R((LzA)=>{Object.defineProperty(LzA,"__esModule",{value:!0});LzA.TraceAPI=void 0;var ec=rZ(),HzA=bc(),DzA=QO(),AK=yc(),NzA=aZ(),Al="trace";class Ql{constructor(){this._proxyTracerProvider=new HzA.ProxyTracerProvider,this.wrapSpanContext=DzA.wrapSpanContext,this.isSpanContextValid=DzA.isSpanContextValid,this.deleteSpan=AK.deleteSpan,this.getSpan=AK.getSpan,this.getActiveSpan=AK.getActiveSpan,this.getSpanContext=AK.getSpanContext,this.setSpan=AK.setSpan,this.setSpanContext=AK.setSpanContext}static getInstance(){if(!this._instance)this._instance=new Ql;return this._instance}setGlobalTracerProvider(A){let Q=(0,ec.registerGlobal)(Al,this._proxyTracerProvider,NzA.DiagAPI.instance());if(Q)this._proxyTracerProvider.setDelegate(A);return Q}getTracerProvider(){return(0,ec.getGlobal)(Al)||this._proxyTracerProvider}getTracer(A,Q){return this.getTracerProvider().getTracer(A,Q)}disable(){(0,ec.unregisterGlobal)(Al,NzA.DiagAPI.instance()),this._proxyTracerProvider=new HzA.ProxyTracerProvider}}LzA.TraceAPI=Ql});var wzA=R((zzA)=>{Object.defineProperty(zzA,"__esModule",{value:!0});zzA.trace=void 0;var pKB=MzA();zzA.trace=pKB.TraceAPI.getInstance()});var yA=R((uB)=>{Object.defineProperty(uB,"__esModule",{value:!0});uB.trace=uB.propagation=uB.metrics=uB.diag=uB.context=uB.INVALID_SPAN_CONTEXT=uB.INVALID_TRACEID=uB.INVALID_SPANID=uB.isValidSpanId=uB.isValidTraceId=uB.isSpanContextValid=uB.createTraceState=uB.TraceFlags=uB.SpanStatusCode=uB.SpanKind=uB.SamplingDecision=uB.ProxyTracerProvider=uB.ProxyTracer=uB.defaultTextMapSetter=uB.defaultTextMapGetter=uB.ValueType=uB.createNoopMeter=uB.DiagLogLevel=uB.DiagConsoleLogger=uB.ROOT_CONTEXT=uB.createContextKey=uB.baggageEntryMetadataFromString=void 0;var iKB=Kc();Object.defineProperty(uB,"baggageEntryMetadataFromString",{enumerable:!0,get:function(){return iKB.baggageEntryMetadataFromString}});var jzA=cN();Object.defineProperty(uB,"createContextKey",{enumerable:!0,get:function(){return jzA.createContextKey}});Object.defineProperty(uB,"ROOT_CONTEXT",{enumerable:!0,get:function(){return jzA.ROOT_CONTEXT}});var nKB=MqA();Object.defineProperty(uB,"DiagConsoleLogger",{enumerable:!0,get:function(){return nKB.DiagConsoleLogger}});var sKB=aj();Object.defineProperty(uB,"DiagLogLevel",{enumerable:!0,get:function(){return sKB.DiagLogLevel}});var rKB=Rc();Object.defineProperty(uB,"createNoopMeter",{enumerable:!0,get:function(){return rKB.createNoopMeter}});var aKB=yqA();Object.defineProperty(uB,"ValueType",{enumerable:!0,get:function(){return aKB.ValueType}});var OzA=jc();Object.defineProperty(uB,"defaultTextMapGetter",{enumerable:!0,get:function(){return OzA.defaultTextMapGetter}});Object.defineProperty(uB,"defaultTextMapSetter",{enumerable:!0,get:function(){return OzA.defaultTextMapSetter}});var oKB=fc();Object.defineProperty(uB,"ProxyTracer",{enumerable:!0,get:function(){return oKB.ProxyTracer}});var tKB=bc();Object.defineProperty(uB,"ProxyTracerProvider",{enumerable:!0,get:function(){return tKB.ProxyTracerProvider}});var eKB=qMA();Object.defineProperty(uB,"SamplingDecision",{enumerable:!0,get:function(){return eKB.SamplingDecision}});var AVB=zMA();Object.defineProperty(uB,"SpanKind",{enumerable:!0,get:function(){return AVB.SpanKind}});var QVB=wMA();Object.defineProperty(uB,"SpanStatusCode",{enumerable:!0,get:function(){return QVB.SpanStatusCode}});var BVB=kc();Object.defineProperty(uB,"TraceFlags",{enumerable:!0,get:function(){return BVB.TraceFlags}});var YVB=fMA();Object.defineProperty(uB,"createTraceState",{enumerable:!0,get:function(){return YVB.createTraceState}});var Bl=QO();Object.defineProperty(uB,"isSpanContextValid",{enumerable:!0,get:function(){return Bl.isSpanContextValid}});Object.defineProperty(uB,"isValidTraceId",{enumerable:!0,get:function(){return Bl.isValidTraceId}});Object.defineProperty(uB,"isValidSpanId",{enumerable:!0,get:function(){return Bl.isValidSpanId}});var Yl=ej();Object.defineProperty(uB,"INVALID_SPANID",{enumerable:!0,get:function(){return Yl.INVALID_SPANID}});Object.defineProperty(uB,"INVALID_TRACEID",{enumerable:!0,get:function(){return Yl.INVALID_TRACEID}});Object.defineProperty(uB,"INVALID_SPAN_CONTEXT",{enumerable:!0,get:function(){return Yl.INVALID_SPAN_CONTEXT}});var PzA=uMA();Object.defineProperty(uB,"context",{enumerable:!0,get:function(){return PzA.context}});var TzA=lMA();Object.defineProperty(uB,"diag",{enumerable:!0,get:function(){return TzA.diag}});var SzA=AzA();Object.defineProperty(uB,"metrics",{enumerable:!0,get:function(){return SzA.metrics}});var kzA=IzA();Object.defineProperty(uB,"propagation",{enumerable:!0,get:function(){return kzA.propagation}});var _zA=wzA();Object.defineProperty(uB,"trace",{enumerable:!0,get:function(){return _zA.trace}});uB.default={context:PzA.context,diag:TzA.diag,metrics:SzA.metrics,propagation:kzA.propagation,trace:_zA.trace}});var iN=R((vzA)=>{Object.defineProperty(vzA,"__esModule",{value:!0});vzA.isTracingSuppressed=vzA.unsuppressTracing=vzA.suppressTracing=void 0;var XVB=yA(),Jl=(0,XVB.createContextKey)("OpenTelemetry SDK Context Key SUPPRESS_TRACING");function GVB(A){return A.setValue(Jl,!0)}vzA.suppressTracing=GVB;function WVB(A){return A.deleteValue(Jl)}vzA.unsuppressTracing=WVB;function FVB(A){return A.getValue(Jl)===!0}vzA.isTracingSuppressed=FVB});var Cl=R((gzA)=>{Object.defineProperty(gzA,"__esModule",{value:!0});gzA.BAGGAGE_MAX_TOTAL_LENGTH=gzA.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS=gzA.BAGGAGE_MAX_NAME_VALUE_PAIRS=gzA.BAGGAGE_HEADER=gzA.BAGGAGE_ITEMS_SEPARATOR=gzA.BAGGAGE_PROPERTIES_SEPARATOR=gzA.BAGGAGE_KEY_PAIR_SEPARATOR=void 0;gzA.BAGGAGE_KEY_PAIR_SEPARATOR="=";gzA.BAGGAGE_PROPERTIES_SEPARATOR=";";gzA.BAGGAGE_ITEMS_SEPARATOR=",";gzA.BAGGAGE_HEADER="baggage";gzA.BAGGAGE_MAX_NAME_VALUE_PAIRS=180;gzA.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS=4096;gzA.BAGGAGE_MAX_TOTAL_LENGTH=8192});var Xl=R((fzA)=>{Object.defineProperty(fzA,"__esModule",{value:!0});fzA.parseKeyPairsIntoRecord=fzA.parsePairKeyValue=fzA.getKeyPairs=fzA.serializeKeyPairs=void 0;var DVB=yA(),oZ=Cl();function NVB(A){return A.reduce((Q,B)=>{let Y=`${Q}${Q!==""?oZ.BAGGAGE_ITEMS_SEPARATOR:""}${B}`;return Y.length>oZ.BAGGAGE_MAX_TOTAL_LENGTH?Q:Y},"")}fzA.serializeKeyPairs=NVB;function LVB(A){return A.getAllEntries().map(([Q,B])=>{let Y=`${encodeURIComponent(Q)}=${encodeURIComponent(B.value)}`;if(B.metadata!==void 0)Y+=oZ.BAGGAGE_PROPERTIES_SEPARATOR+B.metadata.toString();return Y})}fzA.getKeyPairs=LVB;function xzA(A){let Q=A.split(oZ.BAGGAGE_PROPERTIES_SEPARATOR);if(Q.length<=0)return;let B=Q.shift();if(!B)return;let Y=B.indexOf(oZ.BAGGAGE_KEY_PAIR_SEPARATOR);if(Y<=0)return;let J=decodeURIComponent(B.substring(0,Y).trim()),C=decodeURIComponent(B.substring(Y+1).trim()),X;if(Q.length>0)X=(0,DVB.baggageEntryMetadataFromString)(Q.join(oZ.BAGGAGE_PROPERTIES_SEPARATOR));return{key:J,value:C,metadata:X}}fzA.parsePairKeyValue=xzA;function qVB(A){if(typeof A!=="string"||A.length===0)return{};return A.split(oZ.BAGGAGE_ITEMS_SEPARATOR).map((Q)=>{return xzA(Q)}).filter((Q)=>Q!==void 0&&Q.value.length>0).reduce((Q,B)=>{return Q[B.key]=B.value,Q},{})}fzA.parseKeyPairsIntoRecord=qVB});var czA=R((uzA)=>{Object.defineProperty(uzA,"__esModule",{value:!0});uzA.W3CBaggagePropagator=void 0;var Gl=yA(),wVB=iN(),tZ=Cl(),Wl=Xl();class mzA{inject(A,Q,B){let Y=Gl.propagation.getBaggage(A);if(!Y||(0,wVB.isTracingSuppressed)(A))return;let J=(0,Wl.getKeyPairs)(Y).filter((X)=>{return X.length<=tZ.BAGGAGE_MAX_PER_NAME_VALUE_PAIRS}).slice(0,tZ.BAGGAGE_MAX_NAME_VALUE_PAIRS),C=(0,Wl.serializeKeyPairs)(J);if(C.length>0)B.set(Q,tZ.BAGGAGE_HEADER,C)}extract(A,Q,B){let Y=B.get(Q,tZ.BAGGAGE_HEADER),J=Array.isArray(Y)?Y.join(tZ.BAGGAGE_ITEMS_SEPARATOR):Y;if(!J)return A;let C={};if(J.length===0)return A;if(J.split(tZ.BAGGAGE_ITEMS_SEPARATOR).forEach((G)=>{let W=(0,Wl.parsePairKeyValue)(G);if(W){let F={value:W.value};if(W.metadata)F.metadata=W.metadata;C[W.key]=F}}),Object.entries(C).length===0)return A;return Gl.propagation.setBaggage(A,Gl.propagation.createBaggage(C))}fields(){return[tZ.BAGGAGE_HEADER]}}uzA.W3CBaggagePropagator=mzA});var nzA=R((pzA)=>{Object.defineProperty(pzA,"__esModule",{value:!0});pzA.AnchoredClock=void 0;class lzA{constructor(A,Q){this._monotonicClock=Q,this._epochMillis=A.now(),this._performanceMillis=Q.now()}now(){let A=this._monotonicClock.now()-this._performanceMillis;return this._epochMillis+A}}pzA.AnchoredClock=lzA});var A2A=R((tzA)=>{Object.defineProperty(tzA,"__esModule",{value:!0});tzA.isAttributeValue=tzA.isAttributeKey=tzA.sanitizeAttributes=void 0;var szA=yA();function jVB(A){let Q={};if(typeof A!=="object"||A==null)return Q;for(let[B,Y]of Object.entries(A)){if(!rzA(B)){szA.diag.warn(`Invalid attribute key: ${B}`);continue}if(!azA(Y)){szA.diag.warn(`Invalid attribute value set for key: ${B}`);continue}if(Array.isArray(Y))Q[B]=Y.slice();else Q[B]=Y}return Q}tzA.sanitizeAttributes=jVB;function rzA(A){return typeof A==="string"&&A.length>0}tzA.isAttributeKey=rzA;function azA(A){if(A==null)return!0;if(Array.isArray(A))return OVB(A);return ozA(A)}tzA.isAttributeValue=azA;function OVB(A){let Q;for(let B of A){if(B==null)continue;if(!Q){if(ozA(B)){Q=typeof B;continue}return!1}if(typeof B===Q)continue;return!1}return!0}function ozA(A){switch(typeof A){case"number":case"boolean":case"string":return!0}return!1}});var Fl=R((Q2A)=>{Object.defineProperty(Q2A,"__esModule",{value:!0});Q2A.loggingErrorHandler=void 0;var SVB=yA();function kVB(){return(A)=>{SVB.diag.error(_VB(A))}}Q2A.loggingErrorHandler=kVB;function _VB(A){if(typeof A==="string")return A;else return JSON.stringify(vVB(A))}function vVB(A){let Q={},B=A;while(B!==null)Object.getOwnPropertyNames(B).forEach((Y)=>{if(Q[Y])return;let J=B[Y];if(J)Q[Y]=String(J)}),B=Object.getPrototypeOf(B);return Q}});var Zl=R((J2A)=>{Object.defineProperty(J2A,"__esModule",{value:!0});J2A.globalErrorHandler=J2A.setGlobalErrorHandler=void 0;var yVB=Fl(),Y2A=(0,yVB.loggingErrorHandler)();function gVB(A){Y2A=A}J2A.setGlobalErrorHandler=gVB;function hVB(A){try{Y2A(A)}catch(Q){}}J2A.globalErrorHandler=hVB});var Ul=R((X2A)=>{Object.defineProperty(X2A,"__esModule",{value:!0});X2A.TracesSamplerValues=void 0;var fVB;(function(A){A.AlwaysOff="always_off",A.AlwaysOn="always_on",A.ParentBasedAlwaysOff="parentbased_always_off",A.ParentBasedAlwaysOn="parentbased_always_on",A.ParentBasedTraceIdRatio="parentbased_traceidratio",A.TraceIdRatio="traceidratio"})(fVB=X2A.TracesSamplerValues||(X2A.TracesSamplerValues={}))});var El=R((G2A)=>{Object.defineProperty(G2A,"__esModule",{value:!0});G2A.parseEnvironment=G2A.DEFAULT_ENVIRONMENT=G2A.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=G2A.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=G2A.DEFAULT_ATTRIBUTE_COUNT_LIMIT=G2A.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=void 0;var $W=yA(),bVB=Ul(),mVB=",",uVB=["OTEL_SDK_DISABLED"];function dVB(A){return uVB.indexOf(A)>-1}var cVB=["OTEL_BSP_EXPORT_TIMEOUT","OTEL_BSP_MAX_EXPORT_BATCH_SIZE","OTEL_BSP_MAX_QUEUE_SIZE","OTEL_BSP_SCHEDULE_DELAY","OTEL_BLRP_EXPORT_TIMEOUT","OTEL_BLRP_MAX_EXPORT_BATCH_SIZE","OTEL_BLRP_MAX_QUEUE_SIZE","OTEL_BLRP_SCHEDULE_DELAY","OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_ATTRIBUTE_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT","OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT","OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT","OTEL_SPAN_EVENT_COUNT_LIMIT","OTEL_SPAN_LINK_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT","OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT","OTEL_EXPORTER_OTLP_TIMEOUT","OTEL_EXPORTER_OTLP_TRACES_TIMEOUT","OTEL_EXPORTER_OTLP_METRICS_TIMEOUT","OTEL_EXPORTER_OTLP_LOGS_TIMEOUT","OTEL_EXPORTER_JAEGER_AGENT_PORT"];function lVB(A){return cVB.indexOf(A)>-1}var pVB=["OTEL_NO_PATCH_MODULES","OTEL_PROPAGATORS","OTEL_SEMCONV_STABILITY_OPT_IN"];function iVB(A){return pVB.indexOf(A)>-1}G2A.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=1/0;G2A.DEFAULT_ATTRIBUTE_COUNT_LIMIT=128;G2A.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=128;G2A.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=128;G2A.DEFAULT_ENVIRONMENT={OTEL_SDK_DISABLED:!1,CONTAINER_NAME:"",ECS_CONTAINER_METADATA_URI_V4:"",ECS_CONTAINER_METADATA_URI:"",HOSTNAME:"",KUBERNETES_SERVICE_HOST:"",NAMESPACE:"",OTEL_BSP_EXPORT_TIMEOUT:30000,OTEL_BSP_MAX_EXPORT_BATCH_SIZE:512,OTEL_BSP_MAX_QUEUE_SIZE:2048,OTEL_BSP_SCHEDULE_DELAY:5000,OTEL_BLRP_EXPORT_TIMEOUT:30000,OTEL_BLRP_MAX_EXPORT_BATCH_SIZE:512,OTEL_BLRP_MAX_QUEUE_SIZE:2048,OTEL_BLRP_SCHEDULE_DELAY:5000,OTEL_EXPORTER_JAEGER_AGENT_HOST:"",OTEL_EXPORTER_JAEGER_AGENT_PORT:6832,OTEL_EXPORTER_JAEGER_ENDPOINT:"",OTEL_EXPORTER_JAEGER_PASSWORD:"",OTEL_EXPORTER_JAEGER_USER:"",OTEL_EXPORTER_OTLP_ENDPOINT:"",OTEL_EXPORTER_OTLP_TRACES_ENDPOINT:"",OTEL_EXPORTER_OTLP_METRICS_ENDPOINT:"",OTEL_EXPORTER_OTLP_LOGS_ENDPOINT:"",OTEL_EXPORTER_OTLP_HEADERS:"",OTEL_EXPORTER_OTLP_TRACES_HEADERS:"",OTEL_EXPORTER_OTLP_METRICS_HEADERS:"",OTEL_EXPORTER_OTLP_LOGS_HEADERS:"",OTEL_EXPORTER_OTLP_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_TRACES_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_METRICS_TIMEOUT:1e4,OTEL_EXPORTER_OTLP_LOGS_TIMEOUT:1e4,OTEL_EXPORTER_ZIPKIN_ENDPOINT:"http://localhost:9411/api/v2/spans",OTEL_LOG_LEVEL:$W.DiagLogLevel.INFO,OTEL_NO_PATCH_MODULES:[],OTEL_PROPAGATORS:["tracecontext","baggage"],OTEL_RESOURCE_ATTRIBUTES:"",OTEL_SERVICE_NAME:"",OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT:G2A.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_ATTRIBUTE_COUNT_LIMIT:G2A.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT:G2A.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT:G2A.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT:G2A.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT:G2A.DEFAULT_ATTRIBUTE_COUNT_LIMIT,OTEL_SPAN_EVENT_COUNT_LIMIT:128,OTEL_SPAN_LINK_COUNT_LIMIT:128,OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT:G2A.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT,OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT:G2A.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT,OTEL_TRACES_EXPORTER:"",OTEL_TRACES_SAMPLER:bVB.TracesSamplerValues.ParentBasedAlwaysOn,OTEL_TRACES_SAMPLER_ARG:"",OTEL_LOGS_EXPORTER:"",OTEL_EXPORTER_OTLP_INSECURE:"",OTEL_EXPORTER_OTLP_TRACES_INSECURE:"",OTEL_EXPORTER_OTLP_METRICS_INSECURE:"",OTEL_EXPORTER_OTLP_LOGS_INSECURE:"",OTEL_EXPORTER_OTLP_CERTIFICATE:"",OTEL_EXPORTER_OTLP_TRACES_CERTIFICATE:"",OTEL_EXPORTER_OTLP_METRICS_CERTIFICATE:"",OTEL_EXPORTER_OTLP_LOGS_CERTIFICATE:"",OTEL_EXPORTER_OTLP_COMPRESSION:"",OTEL_EXPORTER_OTLP_TRACES_COMPRESSION:"",OTEL_EXPORTER_OTLP_METRICS_COMPRESSION:"",OTEL_EXPORTER_OTLP_LOGS_COMPRESSION:"",OTEL_EXPORTER_OTLP_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_TRACES_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_METRICS_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_LOGS_CLIENT_KEY:"",OTEL_EXPORTER_OTLP_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_TRACES_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_METRICS_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_LOGS_CLIENT_CERTIFICATE:"",OTEL_EXPORTER_OTLP_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_TRACES_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_METRICS_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_LOGS_PROTOCOL:"http/protobuf",OTEL_EXPORTER_OTLP_METRICS_TEMPORALITY_PREFERENCE:"cumulative",OTEL_SEMCONV_STABILITY_OPT_IN:[]};function nVB(A,Q,B){if(typeof B[A]>"u")return;let Y=String(B[A]);Q[A]=Y.toLowerCase()==="true"}function sVB(A,Q,B,Y=-1/0,J=1/0){if(typeof B[A]<"u"){let C=Number(B[A]);if(!isNaN(C))if(CJ)Q[A]=J;else Q[A]=C}}function rVB(A,Q,B,Y=mVB){let J=B[A];if(typeof J==="string")Q[A]=J.split(Y).map((C)=>C.trim())}var aVB={ALL:$W.DiagLogLevel.ALL,VERBOSE:$W.DiagLogLevel.VERBOSE,DEBUG:$W.DiagLogLevel.DEBUG,INFO:$W.DiagLogLevel.INFO,WARN:$W.DiagLogLevel.WARN,ERROR:$W.DiagLogLevel.ERROR,NONE:$W.DiagLogLevel.NONE};function oVB(A,Q,B){let Y=B[A];if(typeof Y==="string"){let J=aVB[Y.toUpperCase()];if(J!=null)Q[A]=J}}function tVB(A){let Q={};for(let B in G2A.DEFAULT_ENVIRONMENT){let Y=B;switch(Y){case"OTEL_LOG_LEVEL":oVB(Y,Q,A);break;default:if(dVB(Y))nVB(Y,Q,A);else if(lVB(Y))sVB(Y,Q,A);else if(iVB(Y))rVB(Y,Q,A);else{let J=A[Y];if(typeof J<"u"&&J!==null)Q[Y]=String(J)}}}return Q}G2A.parseEnvironment=tVB});var K2A=R((U2A)=>{Object.defineProperty(U2A,"__esModule",{value:!0});U2A.getEnvWithoutDefaults=U2A.getEnv=void 0;var Kl=El();function eVB(){let A=(0,Kl.parseEnvironment)(process.env);return Object.assign({},Kl.DEFAULT_ENVIRONMENT,A)}U2A.getEnv=eVB;function AIB(){return(0,Kl.parseEnvironment)(process.env)}U2A.getEnvWithoutDefaults=AIB});var H2A=R((V2A)=>{Object.defineProperty(V2A,"__esModule",{value:!0});V2A._globalThis=void 0;V2A._globalThis=typeof globalThis==="object"?globalThis:global});var Vl=R((N2A)=>{Object.defineProperty(N2A,"__esModule",{value:!0});N2A.hexToBinary=void 0;function D2A(A){if(A>=48&&A<=57)return A-48;if(A>=97&&A<=102)return A-87;return A-55}function BIB(A){let Q=new Uint8Array(A.length/2),B=0;for(let Y=0;Y{Object.defineProperty(q2A,"__esModule",{value:!0});q2A.hexToBase64=void 0;var YIB=Vl();function JIB(A){return Buffer.from((0,YIB.hexToBinary)(A)).toString("base64")}q2A.hexToBase64=JIB});var T2A=R((O2A)=>{Object.defineProperty(O2A,"__esModule",{value:!0});O2A.RandomIdGenerator=void 0;var CIB=8,w2A=16;class j2A{constructor(){this.generateTraceId=R2A(w2A),this.generateSpanId=R2A(CIB)}}O2A.RandomIdGenerator=j2A;var CO=Buffer.allocUnsafe(w2A);function R2A(A){return function(){for(let B=0;B>>0,B*4);for(let B=0;B0)break;else if(B===A-1)CO[A-1]=1;return CO.toString("hex",0,A)}}});var _2A=R((S2A)=>{Object.defineProperty(S2A,"__esModule",{value:!0});S2A.otperformance=void 0;var XIB=u("perf_hooks");S2A.otperformance=XIB.performance});var Il=R((v2A)=>{Object.defineProperty(v2A,"__esModule",{value:!0});v2A.VERSION=void 0;v2A.VERSION="1.30.1"});var Hl=R((g2A)=>{Object.defineProperty(g2A,"__esModule",{value:!0});g2A.createConstMap=void 0;function GIB(A){let Q={},B=A.length;for(let Y=0;Y{Object.defineProperty(jOA,"__esModule",{value:!0});jOA.SEMATTRS_NET_HOST_CARRIER_ICC=jOA.SEMATTRS_NET_HOST_CARRIER_MNC=jOA.SEMATTRS_NET_HOST_CARRIER_MCC=jOA.SEMATTRS_NET_HOST_CARRIER_NAME=jOA.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=jOA.SEMATTRS_NET_HOST_CONNECTION_TYPE=jOA.SEMATTRS_NET_HOST_NAME=jOA.SEMATTRS_NET_HOST_PORT=jOA.SEMATTRS_NET_HOST_IP=jOA.SEMATTRS_NET_PEER_NAME=jOA.SEMATTRS_NET_PEER_PORT=jOA.SEMATTRS_NET_PEER_IP=jOA.SEMATTRS_NET_TRANSPORT=jOA.SEMATTRS_FAAS_INVOKED_REGION=jOA.SEMATTRS_FAAS_INVOKED_PROVIDER=jOA.SEMATTRS_FAAS_INVOKED_NAME=jOA.SEMATTRS_FAAS_COLDSTART=jOA.SEMATTRS_FAAS_CRON=jOA.SEMATTRS_FAAS_TIME=jOA.SEMATTRS_FAAS_DOCUMENT_NAME=jOA.SEMATTRS_FAAS_DOCUMENT_TIME=jOA.SEMATTRS_FAAS_DOCUMENT_OPERATION=jOA.SEMATTRS_FAAS_DOCUMENT_COLLECTION=jOA.SEMATTRS_FAAS_EXECUTION=jOA.SEMATTRS_FAAS_TRIGGER=jOA.SEMATTRS_EXCEPTION_ESCAPED=jOA.SEMATTRS_EXCEPTION_STACKTRACE=jOA.SEMATTRS_EXCEPTION_MESSAGE=jOA.SEMATTRS_EXCEPTION_TYPE=jOA.SEMATTRS_DB_SQL_TABLE=jOA.SEMATTRS_DB_MONGODB_COLLECTION=jOA.SEMATTRS_DB_REDIS_DATABASE_INDEX=jOA.SEMATTRS_DB_HBASE_NAMESPACE=jOA.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=jOA.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=jOA.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=jOA.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=jOA.SEMATTRS_DB_CASSANDRA_TABLE=jOA.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=jOA.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=jOA.SEMATTRS_DB_CASSANDRA_KEYSPACE=jOA.SEMATTRS_DB_MSSQL_INSTANCE_NAME=jOA.SEMATTRS_DB_OPERATION=jOA.SEMATTRS_DB_STATEMENT=jOA.SEMATTRS_DB_NAME=jOA.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=jOA.SEMATTRS_DB_USER=jOA.SEMATTRS_DB_CONNECTION_STRING=jOA.SEMATTRS_DB_SYSTEM=jOA.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=void 0;jOA.SEMATTRS_MESSAGING_DESTINATION_KIND=jOA.SEMATTRS_MESSAGING_DESTINATION=jOA.SEMATTRS_MESSAGING_SYSTEM=jOA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=jOA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=jOA.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=jOA.SEMATTRS_AWS_DYNAMODB_COUNT=jOA.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=jOA.SEMATTRS_AWS_DYNAMODB_SEGMENT=jOA.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=jOA.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=jOA.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=jOA.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=jOA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=jOA.SEMATTRS_AWS_DYNAMODB_SELECT=jOA.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=jOA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=jOA.SEMATTRS_AWS_DYNAMODB_LIMIT=jOA.SEMATTRS_AWS_DYNAMODB_PROJECTION=jOA.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=jOA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=jOA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=jOA.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=jOA.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=jOA.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=jOA.SEMATTRS_HTTP_CLIENT_IP=jOA.SEMATTRS_HTTP_ROUTE=jOA.SEMATTRS_HTTP_SERVER_NAME=jOA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=jOA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=jOA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=jOA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=jOA.SEMATTRS_HTTP_USER_AGENT=jOA.SEMATTRS_HTTP_FLAVOR=jOA.SEMATTRS_HTTP_STATUS_CODE=jOA.SEMATTRS_HTTP_SCHEME=jOA.SEMATTRS_HTTP_HOST=jOA.SEMATTRS_HTTP_TARGET=jOA.SEMATTRS_HTTP_URL=jOA.SEMATTRS_HTTP_METHOD=jOA.SEMATTRS_CODE_LINENO=jOA.SEMATTRS_CODE_FILEPATH=jOA.SEMATTRS_CODE_NAMESPACE=jOA.SEMATTRS_CODE_FUNCTION=jOA.SEMATTRS_THREAD_NAME=jOA.SEMATTRS_THREAD_ID=jOA.SEMATTRS_ENDUSER_SCOPE=jOA.SEMATTRS_ENDUSER_ROLE=jOA.SEMATTRS_ENDUSER_ID=jOA.SEMATTRS_PEER_SERVICE=void 0;jOA.DBSYSTEMVALUES_FILEMAKER=jOA.DBSYSTEMVALUES_DERBY=jOA.DBSYSTEMVALUES_FIREBIRD=jOA.DBSYSTEMVALUES_ADABAS=jOA.DBSYSTEMVALUES_CACHE=jOA.DBSYSTEMVALUES_EDB=jOA.DBSYSTEMVALUES_FIRSTSQL=jOA.DBSYSTEMVALUES_INGRES=jOA.DBSYSTEMVALUES_HANADB=jOA.DBSYSTEMVALUES_MAXDB=jOA.DBSYSTEMVALUES_PROGRESS=jOA.DBSYSTEMVALUES_HSQLDB=jOA.DBSYSTEMVALUES_CLOUDSCAPE=jOA.DBSYSTEMVALUES_HIVE=jOA.DBSYSTEMVALUES_REDSHIFT=jOA.DBSYSTEMVALUES_POSTGRESQL=jOA.DBSYSTEMVALUES_DB2=jOA.DBSYSTEMVALUES_ORACLE=jOA.DBSYSTEMVALUES_MYSQL=jOA.DBSYSTEMVALUES_MSSQL=jOA.DBSYSTEMVALUES_OTHER_SQL=jOA.SemanticAttributes=jOA.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=jOA.SEMATTRS_MESSAGE_COMPRESSED_SIZE=jOA.SEMATTRS_MESSAGE_ID=jOA.SEMATTRS_MESSAGE_TYPE=jOA.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=jOA.SEMATTRS_RPC_JSONRPC_ERROR_CODE=jOA.SEMATTRS_RPC_JSONRPC_REQUEST_ID=jOA.SEMATTRS_RPC_JSONRPC_VERSION=jOA.SEMATTRS_RPC_GRPC_STATUS_CODE=jOA.SEMATTRS_RPC_METHOD=jOA.SEMATTRS_RPC_SERVICE=jOA.SEMATTRS_RPC_SYSTEM=jOA.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=jOA.SEMATTRS_MESSAGING_KAFKA_PARTITION=jOA.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=jOA.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=jOA.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=jOA.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=jOA.SEMATTRS_MESSAGING_CONSUMER_ID=jOA.SEMATTRS_MESSAGING_OPERATION=jOA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=jOA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=jOA.SEMATTRS_MESSAGING_CONVERSATION_ID=jOA.SEMATTRS_MESSAGING_MESSAGE_ID=jOA.SEMATTRS_MESSAGING_URL=jOA.SEMATTRS_MESSAGING_PROTOCOL_VERSION=jOA.SEMATTRS_MESSAGING_PROTOCOL=jOA.SEMATTRS_MESSAGING_TEMP_DESTINATION=void 0;jOA.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=jOA.FaasDocumentOperationValues=jOA.FAASDOCUMENTOPERATIONVALUES_DELETE=jOA.FAASDOCUMENTOPERATIONVALUES_EDIT=jOA.FAASDOCUMENTOPERATIONVALUES_INSERT=jOA.FaasTriggerValues=jOA.FAASTRIGGERVALUES_OTHER=jOA.FAASTRIGGERVALUES_TIMER=jOA.FAASTRIGGERVALUES_PUBSUB=jOA.FAASTRIGGERVALUES_HTTP=jOA.FAASTRIGGERVALUES_DATASOURCE=jOA.DbCassandraConsistencyLevelValues=jOA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=jOA.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=jOA.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=jOA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=jOA.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=jOA.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=jOA.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=jOA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=jOA.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=jOA.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=jOA.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=jOA.DbSystemValues=jOA.DBSYSTEMVALUES_COCKROACHDB=jOA.DBSYSTEMVALUES_MEMCACHED=jOA.DBSYSTEMVALUES_ELASTICSEARCH=jOA.DBSYSTEMVALUES_GEODE=jOA.DBSYSTEMVALUES_NEO4J=jOA.DBSYSTEMVALUES_DYNAMODB=jOA.DBSYSTEMVALUES_COSMOSDB=jOA.DBSYSTEMVALUES_COUCHDB=jOA.DBSYSTEMVALUES_COUCHBASE=jOA.DBSYSTEMVALUES_REDIS=jOA.DBSYSTEMVALUES_MONGODB=jOA.DBSYSTEMVALUES_HBASE=jOA.DBSYSTEMVALUES_CASSANDRA=jOA.DBSYSTEMVALUES_COLDFUSION=jOA.DBSYSTEMVALUES_H2=jOA.DBSYSTEMVALUES_VERTICA=jOA.DBSYSTEMVALUES_TERADATA=jOA.DBSYSTEMVALUES_SYBASE=jOA.DBSYSTEMVALUES_SQLITE=jOA.DBSYSTEMVALUES_POINTBASE=jOA.DBSYSTEMVALUES_PERVASIVE=jOA.DBSYSTEMVALUES_NETEZZA=jOA.DBSYSTEMVALUES_MARIADB=jOA.DBSYSTEMVALUES_INTERBASE=jOA.DBSYSTEMVALUES_INSTANTDB=jOA.DBSYSTEMVALUES_INFORMIX=void 0;jOA.MESSAGINGOPERATIONVALUES_RECEIVE=jOA.MessagingDestinationKindValues=jOA.MESSAGINGDESTINATIONKINDVALUES_TOPIC=jOA.MESSAGINGDESTINATIONKINDVALUES_QUEUE=jOA.HttpFlavorValues=jOA.HTTPFLAVORVALUES_QUIC=jOA.HTTPFLAVORVALUES_SPDY=jOA.HTTPFLAVORVALUES_HTTP_2_0=jOA.HTTPFLAVORVALUES_HTTP_1_1=jOA.HTTPFLAVORVALUES_HTTP_1_0=jOA.NetHostConnectionSubtypeValues=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_NR=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=jOA.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=jOA.NetHostConnectionTypeValues=jOA.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=jOA.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=jOA.NETHOSTCONNECTIONTYPEVALUES_CELL=jOA.NETHOSTCONNECTIONTYPEVALUES_WIRED=jOA.NETHOSTCONNECTIONTYPEVALUES_WIFI=jOA.NetTransportValues=jOA.NETTRANSPORTVALUES_OTHER=jOA.NETTRANSPORTVALUES_INPROC=jOA.NETTRANSPORTVALUES_PIPE=jOA.NETTRANSPORTVALUES_UNIX=jOA.NETTRANSPORTVALUES_IP=jOA.NETTRANSPORTVALUES_IP_UDP=jOA.NETTRANSPORTVALUES_IP_TCP=jOA.FaasInvokedProviderValues=jOA.FAASINVOKEDPROVIDERVALUES_GCP=jOA.FAASINVOKEDPROVIDERVALUES_AZURE=jOA.FAASINVOKEDPROVIDERVALUES_AWS=void 0;jOA.MessageTypeValues=jOA.MESSAGETYPEVALUES_RECEIVED=jOA.MESSAGETYPEVALUES_SENT=jOA.RpcGrpcStatusCodeValues=jOA.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=jOA.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=jOA.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=jOA.RPCGRPCSTATUSCODEVALUES_INTERNAL=jOA.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=jOA.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=jOA.RPCGRPCSTATUSCODEVALUES_ABORTED=jOA.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=jOA.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=jOA.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=jOA.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=jOA.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=jOA.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=jOA.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=jOA.RPCGRPCSTATUSCODEVALUES_UNKNOWN=jOA.RPCGRPCSTATUSCODEVALUES_CANCELLED=jOA.RPCGRPCSTATUSCODEVALUES_OK=jOA.MessagingOperationValues=jOA.MESSAGINGOPERATIONVALUES_PROCESS=void 0;var h5=Hl(),x2A="aws.lambda.invoked_arn",f2A="db.system",b2A="db.connection_string",m2A="db.user",u2A="db.jdbc.driver_classname",d2A="db.name",c2A="db.statement",l2A="db.operation",p2A="db.mssql.instance_name",i2A="db.cassandra.keyspace",n2A="db.cassandra.page_size",s2A="db.cassandra.consistency_level",r2A="db.cassandra.table",a2A="db.cassandra.idempotence",o2A="db.cassandra.speculative_execution_count",t2A="db.cassandra.coordinator.id",e2A="db.cassandra.coordinator.dc",A3A="db.hbase.namespace",Q3A="db.redis.database_index",B3A="db.mongodb.collection",Y3A="db.sql.table",J3A="exception.type",C3A="exception.message",X3A="exception.stacktrace",G3A="exception.escaped",W3A="faas.trigger",F3A="faas.execution",Z3A="faas.document.collection",$3A="faas.document.operation",U3A="faas.document.time",E3A="faas.document.name",K3A="faas.time",V3A="faas.cron",I3A="faas.coldstart",H3A="faas.invoked_name",D3A="faas.invoked_provider",N3A="faas.invoked_region",L3A="net.transport",q3A="net.peer.ip",M3A="net.peer.port",z3A="net.peer.name",R3A="net.host.ip",w3A="net.host.port",j3A="net.host.name",O3A="net.host.connection.type",P3A="net.host.connection.subtype",T3A="net.host.carrier.name",S3A="net.host.carrier.mcc",k3A="net.host.carrier.mnc",_3A="net.host.carrier.icc",v3A="peer.service",y3A="enduser.id",g3A="enduser.role",h3A="enduser.scope",x3A="thread.id",f3A="thread.name",b3A="code.function",m3A="code.namespace",u3A="code.filepath",d3A="code.lineno",c3A="http.method",l3A="http.url",p3A="http.target",i3A="http.host",n3A="http.scheme",s3A="http.status_code",r3A="http.flavor",a3A="http.user_agent",o3A="http.request_content_length",t3A="http.request_content_length_uncompressed",e3A="http.response_content_length",ARA="http.response_content_length_uncompressed",QRA="http.server_name",BRA="http.route",YRA="http.client_ip",JRA="aws.dynamodb.table_names",CRA="aws.dynamodb.consumed_capacity",XRA="aws.dynamodb.item_collection_metrics",GRA="aws.dynamodb.provisioned_read_capacity",WRA="aws.dynamodb.provisioned_write_capacity",FRA="aws.dynamodb.consistent_read",ZRA="aws.dynamodb.projection",$RA="aws.dynamodb.limit",URA="aws.dynamodb.attributes_to_get",ERA="aws.dynamodb.index_name",KRA="aws.dynamodb.select",VRA="aws.dynamodb.global_secondary_indexes",IRA="aws.dynamodb.local_secondary_indexes",HRA="aws.dynamodb.exclusive_start_table",DRA="aws.dynamodb.table_count",NRA="aws.dynamodb.scan_forward",LRA="aws.dynamodb.segment",qRA="aws.dynamodb.total_segments",MRA="aws.dynamodb.count",zRA="aws.dynamodb.scanned_count",RRA="aws.dynamodb.attribute_definitions",wRA="aws.dynamodb.global_secondary_index_updates",jRA="messaging.system",ORA="messaging.destination",PRA="messaging.destination_kind",TRA="messaging.temp_destination",SRA="messaging.protocol",kRA="messaging.protocol_version",_RA="messaging.url",vRA="messaging.message_id",yRA="messaging.conversation_id",gRA="messaging.message_payload_size_bytes",hRA="messaging.message_payload_compressed_size_bytes",xRA="messaging.operation",fRA="messaging.consumer_id",bRA="messaging.rabbitmq.routing_key",mRA="messaging.kafka.message_key",uRA="messaging.kafka.consumer_group",dRA="messaging.kafka.client_id",cRA="messaging.kafka.partition",lRA="messaging.kafka.tombstone",pRA="rpc.system",iRA="rpc.service",nRA="rpc.method",sRA="rpc.grpc.status_code",rRA="rpc.jsonrpc.version",aRA="rpc.jsonrpc.request_id",oRA="rpc.jsonrpc.error_code",tRA="rpc.jsonrpc.error_message",eRA="message.type",AwA="message.id",QwA="message.compressed_size",BwA="message.uncompressed_size";jOA.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=x2A;jOA.SEMATTRS_DB_SYSTEM=f2A;jOA.SEMATTRS_DB_CONNECTION_STRING=b2A;jOA.SEMATTRS_DB_USER=m2A;jOA.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=u2A;jOA.SEMATTRS_DB_NAME=d2A;jOA.SEMATTRS_DB_STATEMENT=c2A;jOA.SEMATTRS_DB_OPERATION=l2A;jOA.SEMATTRS_DB_MSSQL_INSTANCE_NAME=p2A;jOA.SEMATTRS_DB_CASSANDRA_KEYSPACE=i2A;jOA.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=n2A;jOA.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=s2A;jOA.SEMATTRS_DB_CASSANDRA_TABLE=r2A;jOA.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=a2A;jOA.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=o2A;jOA.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=t2A;jOA.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=e2A;jOA.SEMATTRS_DB_HBASE_NAMESPACE=A3A;jOA.SEMATTRS_DB_REDIS_DATABASE_INDEX=Q3A;jOA.SEMATTRS_DB_MONGODB_COLLECTION=B3A;jOA.SEMATTRS_DB_SQL_TABLE=Y3A;jOA.SEMATTRS_EXCEPTION_TYPE=J3A;jOA.SEMATTRS_EXCEPTION_MESSAGE=C3A;jOA.SEMATTRS_EXCEPTION_STACKTRACE=X3A;jOA.SEMATTRS_EXCEPTION_ESCAPED=G3A;jOA.SEMATTRS_FAAS_TRIGGER=W3A;jOA.SEMATTRS_FAAS_EXECUTION=F3A;jOA.SEMATTRS_FAAS_DOCUMENT_COLLECTION=Z3A;jOA.SEMATTRS_FAAS_DOCUMENT_OPERATION=$3A;jOA.SEMATTRS_FAAS_DOCUMENT_TIME=U3A;jOA.SEMATTRS_FAAS_DOCUMENT_NAME=E3A;jOA.SEMATTRS_FAAS_TIME=K3A;jOA.SEMATTRS_FAAS_CRON=V3A;jOA.SEMATTRS_FAAS_COLDSTART=I3A;jOA.SEMATTRS_FAAS_INVOKED_NAME=H3A;jOA.SEMATTRS_FAAS_INVOKED_PROVIDER=D3A;jOA.SEMATTRS_FAAS_INVOKED_REGION=N3A;jOA.SEMATTRS_NET_TRANSPORT=L3A;jOA.SEMATTRS_NET_PEER_IP=q3A;jOA.SEMATTRS_NET_PEER_PORT=M3A;jOA.SEMATTRS_NET_PEER_NAME=z3A;jOA.SEMATTRS_NET_HOST_IP=R3A;jOA.SEMATTRS_NET_HOST_PORT=w3A;jOA.SEMATTRS_NET_HOST_NAME=j3A;jOA.SEMATTRS_NET_HOST_CONNECTION_TYPE=O3A;jOA.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=P3A;jOA.SEMATTRS_NET_HOST_CARRIER_NAME=T3A;jOA.SEMATTRS_NET_HOST_CARRIER_MCC=S3A;jOA.SEMATTRS_NET_HOST_CARRIER_MNC=k3A;jOA.SEMATTRS_NET_HOST_CARRIER_ICC=_3A;jOA.SEMATTRS_PEER_SERVICE=v3A;jOA.SEMATTRS_ENDUSER_ID=y3A;jOA.SEMATTRS_ENDUSER_ROLE=g3A;jOA.SEMATTRS_ENDUSER_SCOPE=h3A;jOA.SEMATTRS_THREAD_ID=x3A;jOA.SEMATTRS_THREAD_NAME=f3A;jOA.SEMATTRS_CODE_FUNCTION=b3A;jOA.SEMATTRS_CODE_NAMESPACE=m3A;jOA.SEMATTRS_CODE_FILEPATH=u3A;jOA.SEMATTRS_CODE_LINENO=d3A;jOA.SEMATTRS_HTTP_METHOD=c3A;jOA.SEMATTRS_HTTP_URL=l3A;jOA.SEMATTRS_HTTP_TARGET=p3A;jOA.SEMATTRS_HTTP_HOST=i3A;jOA.SEMATTRS_HTTP_SCHEME=n3A;jOA.SEMATTRS_HTTP_STATUS_CODE=s3A;jOA.SEMATTRS_HTTP_FLAVOR=r3A;jOA.SEMATTRS_HTTP_USER_AGENT=a3A;jOA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=o3A;jOA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=t3A;jOA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=e3A;jOA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=ARA;jOA.SEMATTRS_HTTP_SERVER_NAME=QRA;jOA.SEMATTRS_HTTP_ROUTE=BRA;jOA.SEMATTRS_HTTP_CLIENT_IP=YRA;jOA.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=JRA;jOA.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=CRA;jOA.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=XRA;jOA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=GRA;jOA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=WRA;jOA.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=FRA;jOA.SEMATTRS_AWS_DYNAMODB_PROJECTION=ZRA;jOA.SEMATTRS_AWS_DYNAMODB_LIMIT=$RA;jOA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=URA;jOA.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=ERA;jOA.SEMATTRS_AWS_DYNAMODB_SELECT=KRA;jOA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=VRA;jOA.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=IRA;jOA.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=HRA;jOA.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=DRA;jOA.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=NRA;jOA.SEMATTRS_AWS_DYNAMODB_SEGMENT=LRA;jOA.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=qRA;jOA.SEMATTRS_AWS_DYNAMODB_COUNT=MRA;jOA.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=zRA;jOA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=RRA;jOA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=wRA;jOA.SEMATTRS_MESSAGING_SYSTEM=jRA;jOA.SEMATTRS_MESSAGING_DESTINATION=ORA;jOA.SEMATTRS_MESSAGING_DESTINATION_KIND=PRA;jOA.SEMATTRS_MESSAGING_TEMP_DESTINATION=TRA;jOA.SEMATTRS_MESSAGING_PROTOCOL=SRA;jOA.SEMATTRS_MESSAGING_PROTOCOL_VERSION=kRA;jOA.SEMATTRS_MESSAGING_URL=_RA;jOA.SEMATTRS_MESSAGING_MESSAGE_ID=vRA;jOA.SEMATTRS_MESSAGING_CONVERSATION_ID=yRA;jOA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=gRA;jOA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=hRA;jOA.SEMATTRS_MESSAGING_OPERATION=xRA;jOA.SEMATTRS_MESSAGING_CONSUMER_ID=fRA;jOA.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=bRA;jOA.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=mRA;jOA.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=uRA;jOA.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=dRA;jOA.SEMATTRS_MESSAGING_KAFKA_PARTITION=cRA;jOA.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=lRA;jOA.SEMATTRS_RPC_SYSTEM=pRA;jOA.SEMATTRS_RPC_SERVICE=iRA;jOA.SEMATTRS_RPC_METHOD=nRA;jOA.SEMATTRS_RPC_GRPC_STATUS_CODE=sRA;jOA.SEMATTRS_RPC_JSONRPC_VERSION=rRA;jOA.SEMATTRS_RPC_JSONRPC_REQUEST_ID=aRA;jOA.SEMATTRS_RPC_JSONRPC_ERROR_CODE=oRA;jOA.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=tRA;jOA.SEMATTRS_MESSAGE_TYPE=eRA;jOA.SEMATTRS_MESSAGE_ID=AwA;jOA.SEMATTRS_MESSAGE_COMPRESSED_SIZE=QwA;jOA.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=BwA;jOA.SemanticAttributes=(0,h5.createConstMap)([x2A,f2A,b2A,m2A,u2A,d2A,c2A,l2A,p2A,i2A,n2A,s2A,r2A,a2A,o2A,t2A,e2A,A3A,Q3A,B3A,Y3A,J3A,C3A,X3A,G3A,W3A,F3A,Z3A,$3A,U3A,E3A,K3A,V3A,I3A,H3A,D3A,N3A,L3A,q3A,M3A,z3A,R3A,w3A,j3A,O3A,P3A,T3A,S3A,k3A,_3A,v3A,y3A,g3A,h3A,x3A,f3A,b3A,m3A,u3A,d3A,c3A,l3A,p3A,i3A,n3A,s3A,r3A,a3A,o3A,t3A,e3A,ARA,QRA,BRA,YRA,JRA,CRA,XRA,GRA,WRA,FRA,ZRA,$RA,URA,ERA,KRA,VRA,IRA,HRA,DRA,NRA,LRA,qRA,MRA,zRA,RRA,wRA,jRA,ORA,PRA,TRA,SRA,kRA,_RA,vRA,yRA,gRA,hRA,xRA,fRA,bRA,mRA,uRA,dRA,cRA,lRA,pRA,iRA,nRA,sRA,rRA,aRA,oRA,tRA,eRA,AwA,QwA,BwA]);var YwA="other_sql",JwA="mssql",CwA="mysql",XwA="oracle",GwA="db2",WwA="postgresql",FwA="redshift",ZwA="hive",$wA="cloudscape",UwA="hsqldb",EwA="progress",KwA="maxdb",VwA="hanadb",IwA="ingres",HwA="firstsql",DwA="edb",NwA="cache",LwA="adabas",qwA="firebird",MwA="derby",zwA="filemaker",RwA="informix",wwA="instantdb",jwA="interbase",OwA="mariadb",PwA="netezza",TwA="pervasive",SwA="pointbase",kwA="sqlite",_wA="sybase",vwA="teradata",ywA="vertica",gwA="h2",hwA="coldfusion",xwA="cassandra",fwA="hbase",bwA="mongodb",mwA="redis",uwA="couchbase",dwA="couchdb",cwA="cosmosdb",lwA="dynamodb",pwA="neo4j",iwA="geode",nwA="elasticsearch",swA="memcached",rwA="cockroachdb";jOA.DBSYSTEMVALUES_OTHER_SQL=YwA;jOA.DBSYSTEMVALUES_MSSQL=JwA;jOA.DBSYSTEMVALUES_MYSQL=CwA;jOA.DBSYSTEMVALUES_ORACLE=XwA;jOA.DBSYSTEMVALUES_DB2=GwA;jOA.DBSYSTEMVALUES_POSTGRESQL=WwA;jOA.DBSYSTEMVALUES_REDSHIFT=FwA;jOA.DBSYSTEMVALUES_HIVE=ZwA;jOA.DBSYSTEMVALUES_CLOUDSCAPE=$wA;jOA.DBSYSTEMVALUES_HSQLDB=UwA;jOA.DBSYSTEMVALUES_PROGRESS=EwA;jOA.DBSYSTEMVALUES_MAXDB=KwA;jOA.DBSYSTEMVALUES_HANADB=VwA;jOA.DBSYSTEMVALUES_INGRES=IwA;jOA.DBSYSTEMVALUES_FIRSTSQL=HwA;jOA.DBSYSTEMVALUES_EDB=DwA;jOA.DBSYSTEMVALUES_CACHE=NwA;jOA.DBSYSTEMVALUES_ADABAS=LwA;jOA.DBSYSTEMVALUES_FIREBIRD=qwA;jOA.DBSYSTEMVALUES_DERBY=MwA;jOA.DBSYSTEMVALUES_FILEMAKER=zwA;jOA.DBSYSTEMVALUES_INFORMIX=RwA;jOA.DBSYSTEMVALUES_INSTANTDB=wwA;jOA.DBSYSTEMVALUES_INTERBASE=jwA;jOA.DBSYSTEMVALUES_MARIADB=OwA;jOA.DBSYSTEMVALUES_NETEZZA=PwA;jOA.DBSYSTEMVALUES_PERVASIVE=TwA;jOA.DBSYSTEMVALUES_POINTBASE=SwA;jOA.DBSYSTEMVALUES_SQLITE=kwA;jOA.DBSYSTEMVALUES_SYBASE=_wA;jOA.DBSYSTEMVALUES_TERADATA=vwA;jOA.DBSYSTEMVALUES_VERTICA=ywA;jOA.DBSYSTEMVALUES_H2=gwA;jOA.DBSYSTEMVALUES_COLDFUSION=hwA;jOA.DBSYSTEMVALUES_CASSANDRA=xwA;jOA.DBSYSTEMVALUES_HBASE=fwA;jOA.DBSYSTEMVALUES_MONGODB=bwA;jOA.DBSYSTEMVALUES_REDIS=mwA;jOA.DBSYSTEMVALUES_COUCHBASE=uwA;jOA.DBSYSTEMVALUES_COUCHDB=dwA;jOA.DBSYSTEMVALUES_COSMOSDB=cwA;jOA.DBSYSTEMVALUES_DYNAMODB=lwA;jOA.DBSYSTEMVALUES_NEO4J=pwA;jOA.DBSYSTEMVALUES_GEODE=iwA;jOA.DBSYSTEMVALUES_ELASTICSEARCH=nwA;jOA.DBSYSTEMVALUES_MEMCACHED=swA;jOA.DBSYSTEMVALUES_COCKROACHDB=rwA;jOA.DbSystemValues=(0,h5.createConstMap)([YwA,JwA,CwA,XwA,GwA,WwA,FwA,ZwA,$wA,UwA,EwA,KwA,VwA,IwA,HwA,DwA,NwA,LwA,qwA,MwA,zwA,RwA,wwA,jwA,OwA,PwA,TwA,SwA,kwA,_wA,vwA,ywA,gwA,hwA,xwA,fwA,bwA,mwA,uwA,dwA,cwA,lwA,pwA,iwA,nwA,swA,rwA]);var awA="all",owA="each_quorum",twA="quorum",ewA="local_quorum",AjA="one",QjA="two",BjA="three",YjA="local_one",JjA="any",CjA="serial",XjA="local_serial";jOA.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=awA;jOA.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=owA;jOA.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=twA;jOA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=ewA;jOA.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=AjA;jOA.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=QjA;jOA.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=BjA;jOA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=YjA;jOA.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=JjA;jOA.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=CjA;jOA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=XjA;jOA.DbCassandraConsistencyLevelValues=(0,h5.createConstMap)([awA,owA,twA,ewA,AjA,QjA,BjA,YjA,JjA,CjA,XjA]);var GjA="datasource",WjA="http",FjA="pubsub",ZjA="timer",$jA="other";jOA.FAASTRIGGERVALUES_DATASOURCE=GjA;jOA.FAASTRIGGERVALUES_HTTP=WjA;jOA.FAASTRIGGERVALUES_PUBSUB=FjA;jOA.FAASTRIGGERVALUES_TIMER=ZjA;jOA.FAASTRIGGERVALUES_OTHER=$jA;jOA.FaasTriggerValues=(0,h5.createConstMap)([GjA,WjA,FjA,ZjA,$jA]);var UjA="insert",EjA="edit",KjA="delete";jOA.FAASDOCUMENTOPERATIONVALUES_INSERT=UjA;jOA.FAASDOCUMENTOPERATIONVALUES_EDIT=EjA;jOA.FAASDOCUMENTOPERATIONVALUES_DELETE=KjA;jOA.FaasDocumentOperationValues=(0,h5.createConstMap)([UjA,EjA,KjA]);var VjA="alibaba_cloud",IjA="aws",HjA="azure",DjA="gcp";jOA.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=VjA;jOA.FAASINVOKEDPROVIDERVALUES_AWS=IjA;jOA.FAASINVOKEDPROVIDERVALUES_AZURE=HjA;jOA.FAASINVOKEDPROVIDERVALUES_GCP=DjA;jOA.FaasInvokedProviderValues=(0,h5.createConstMap)([VjA,IjA,HjA,DjA]);var NjA="ip_tcp",LjA="ip_udp",qjA="ip",MjA="unix",zjA="pipe",RjA="inproc",wjA="other";jOA.NETTRANSPORTVALUES_IP_TCP=NjA;jOA.NETTRANSPORTVALUES_IP_UDP=LjA;jOA.NETTRANSPORTVALUES_IP=qjA;jOA.NETTRANSPORTVALUES_UNIX=MjA;jOA.NETTRANSPORTVALUES_PIPE=zjA;jOA.NETTRANSPORTVALUES_INPROC=RjA;jOA.NETTRANSPORTVALUES_OTHER=wjA;jOA.NetTransportValues=(0,h5.createConstMap)([NjA,LjA,qjA,MjA,zjA,RjA,wjA]);var jjA="wifi",OjA="wired",PjA="cell",TjA="unavailable",SjA="unknown";jOA.NETHOSTCONNECTIONTYPEVALUES_WIFI=jjA;jOA.NETHOSTCONNECTIONTYPEVALUES_WIRED=OjA;jOA.NETHOSTCONNECTIONTYPEVALUES_CELL=PjA;jOA.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=TjA;jOA.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=SjA;jOA.NetHostConnectionTypeValues=(0,h5.createConstMap)([jjA,OjA,PjA,TjA,SjA]);var kjA="gprs",_jA="edge",vjA="umts",yjA="cdma",gjA="evdo_0",hjA="evdo_a",xjA="cdma2000_1xrtt",fjA="hsdpa",bjA="hsupa",mjA="hspa",ujA="iden",djA="evdo_b",cjA="lte",ljA="ehrpd",pjA="hspap",ijA="gsm",njA="td_scdma",sjA="iwlan",rjA="nr",ajA="nrnsa",ojA="lte_ca";jOA.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=kjA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=_jA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=vjA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=yjA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=gjA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=hjA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=xjA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=fjA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=bjA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=mjA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=ujA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=djA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=cjA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=ljA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=pjA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=ijA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=njA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=sjA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_NR=rjA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=ajA;jOA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=ojA;jOA.NetHostConnectionSubtypeValues=(0,h5.createConstMap)([kjA,_jA,vjA,yjA,gjA,hjA,xjA,fjA,bjA,mjA,ujA,djA,cjA,ljA,pjA,ijA,njA,sjA,rjA,ajA,ojA]);var tjA="1.0",ejA="1.1",AOA="2.0",QOA="SPDY",BOA="QUIC";jOA.HTTPFLAVORVALUES_HTTP_1_0=tjA;jOA.HTTPFLAVORVALUES_HTTP_1_1=ejA;jOA.HTTPFLAVORVALUES_HTTP_2_0=AOA;jOA.HTTPFLAVORVALUES_SPDY=QOA;jOA.HTTPFLAVORVALUES_QUIC=BOA;jOA.HttpFlavorValues={HTTP_1_0:tjA,HTTP_1_1:ejA,HTTP_2_0:AOA,SPDY:QOA,QUIC:BOA};var YOA="queue",JOA="topic";jOA.MESSAGINGDESTINATIONKINDVALUES_QUEUE=YOA;jOA.MESSAGINGDESTINATIONKINDVALUES_TOPIC=JOA;jOA.MessagingDestinationKindValues=(0,h5.createConstMap)([YOA,JOA]);var COA="receive",XOA="process";jOA.MESSAGINGOPERATIONVALUES_RECEIVE=COA;jOA.MESSAGINGOPERATIONVALUES_PROCESS=XOA;jOA.MessagingOperationValues=(0,h5.createConstMap)([COA,XOA]);var GOA=0,WOA=1,FOA=2,ZOA=3,$OA=4,UOA=5,EOA=6,KOA=7,VOA=8,IOA=9,HOA=10,DOA=11,NOA=12,LOA=13,qOA=14,MOA=15,zOA=16;jOA.RPCGRPCSTATUSCODEVALUES_OK=GOA;jOA.RPCGRPCSTATUSCODEVALUES_CANCELLED=WOA;jOA.RPCGRPCSTATUSCODEVALUES_UNKNOWN=FOA;jOA.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=ZOA;jOA.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=$OA;jOA.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=UOA;jOA.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=EOA;jOA.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=KOA;jOA.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=VOA;jOA.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=IOA;jOA.RPCGRPCSTATUSCODEVALUES_ABORTED=HOA;jOA.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=DOA;jOA.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=NOA;jOA.RPCGRPCSTATUSCODEVALUES_INTERNAL=LOA;jOA.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=qOA;jOA.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=MOA;jOA.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=zOA;jOA.RpcGrpcStatusCodeValues={OK:GOA,CANCELLED:WOA,UNKNOWN:FOA,INVALID_ARGUMENT:ZOA,DEADLINE_EXCEEDED:$OA,NOT_FOUND:UOA,ALREADY_EXISTS:EOA,PERMISSION_DENIED:KOA,RESOURCE_EXHAUSTED:VOA,FAILED_PRECONDITION:IOA,ABORTED:HOA,OUT_OF_RANGE:DOA,UNIMPLEMENTED:NOA,INTERNAL:LOA,UNAVAILABLE:qOA,DATA_LOSS:MOA,UNAUTHENTICATED:zOA};var ROA="SENT",wOA="RECEIVED";jOA.MESSAGETYPEVALUES_SENT=ROA;jOA.MESSAGETYPEVALUES_RECEIVED=wOA;jOA.MessageTypeValues=(0,h5.createConstMap)([ROA,wOA])});var yOA=R((eZ)=>{var CqB=eZ&&eZ.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),XqB=eZ&&eZ.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))CqB(Q,A,B)};Object.defineProperty(eZ,"__esModule",{value:!0});XqB(vOA(),eZ)});var FSA=R((CSA)=>{Object.defineProperty(CSA,"__esModule",{value:!0});CSA.SEMRESATTRS_K8S_STATEFULSET_NAME=CSA.SEMRESATTRS_K8S_STATEFULSET_UID=CSA.SEMRESATTRS_K8S_DEPLOYMENT_NAME=CSA.SEMRESATTRS_K8S_DEPLOYMENT_UID=CSA.SEMRESATTRS_K8S_REPLICASET_NAME=CSA.SEMRESATTRS_K8S_REPLICASET_UID=CSA.SEMRESATTRS_K8S_CONTAINER_NAME=CSA.SEMRESATTRS_K8S_POD_NAME=CSA.SEMRESATTRS_K8S_POD_UID=CSA.SEMRESATTRS_K8S_NAMESPACE_NAME=CSA.SEMRESATTRS_K8S_NODE_UID=CSA.SEMRESATTRS_K8S_NODE_NAME=CSA.SEMRESATTRS_K8S_CLUSTER_NAME=CSA.SEMRESATTRS_HOST_IMAGE_VERSION=CSA.SEMRESATTRS_HOST_IMAGE_ID=CSA.SEMRESATTRS_HOST_IMAGE_NAME=CSA.SEMRESATTRS_HOST_ARCH=CSA.SEMRESATTRS_HOST_TYPE=CSA.SEMRESATTRS_HOST_NAME=CSA.SEMRESATTRS_HOST_ID=CSA.SEMRESATTRS_FAAS_MAX_MEMORY=CSA.SEMRESATTRS_FAAS_INSTANCE=CSA.SEMRESATTRS_FAAS_VERSION=CSA.SEMRESATTRS_FAAS_ID=CSA.SEMRESATTRS_FAAS_NAME=CSA.SEMRESATTRS_DEVICE_MODEL_NAME=CSA.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=CSA.SEMRESATTRS_DEVICE_ID=CSA.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=CSA.SEMRESATTRS_CONTAINER_IMAGE_TAG=CSA.SEMRESATTRS_CONTAINER_IMAGE_NAME=CSA.SEMRESATTRS_CONTAINER_RUNTIME=CSA.SEMRESATTRS_CONTAINER_ID=CSA.SEMRESATTRS_CONTAINER_NAME=CSA.SEMRESATTRS_AWS_LOG_STREAM_ARNS=CSA.SEMRESATTRS_AWS_LOG_STREAM_NAMES=CSA.SEMRESATTRS_AWS_LOG_GROUP_ARNS=CSA.SEMRESATTRS_AWS_LOG_GROUP_NAMES=CSA.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=CSA.SEMRESATTRS_AWS_ECS_TASK_REVISION=CSA.SEMRESATTRS_AWS_ECS_TASK_FAMILY=CSA.SEMRESATTRS_AWS_ECS_TASK_ARN=CSA.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=CSA.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=CSA.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=CSA.SEMRESATTRS_CLOUD_PLATFORM=CSA.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=CSA.SEMRESATTRS_CLOUD_REGION=CSA.SEMRESATTRS_CLOUD_ACCOUNT_ID=CSA.SEMRESATTRS_CLOUD_PROVIDER=void 0;CSA.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=CSA.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=CSA.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=CSA.CLOUDPLATFORMVALUES_AZURE_AKS=CSA.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=CSA.CLOUDPLATFORMVALUES_AZURE_VM=CSA.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=CSA.CLOUDPLATFORMVALUES_AWS_LAMBDA=CSA.CLOUDPLATFORMVALUES_AWS_EKS=CSA.CLOUDPLATFORMVALUES_AWS_ECS=CSA.CLOUDPLATFORMVALUES_AWS_EC2=CSA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=CSA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=CSA.CloudProviderValues=CSA.CLOUDPROVIDERVALUES_GCP=CSA.CLOUDPROVIDERVALUES_AZURE=CSA.CLOUDPROVIDERVALUES_AWS=CSA.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=CSA.SemanticResourceAttributes=CSA.SEMRESATTRS_WEBENGINE_DESCRIPTION=CSA.SEMRESATTRS_WEBENGINE_VERSION=CSA.SEMRESATTRS_WEBENGINE_NAME=CSA.SEMRESATTRS_TELEMETRY_AUTO_VERSION=CSA.SEMRESATTRS_TELEMETRY_SDK_VERSION=CSA.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=CSA.SEMRESATTRS_TELEMETRY_SDK_NAME=CSA.SEMRESATTRS_SERVICE_VERSION=CSA.SEMRESATTRS_SERVICE_INSTANCE_ID=CSA.SEMRESATTRS_SERVICE_NAMESPACE=CSA.SEMRESATTRS_SERVICE_NAME=CSA.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=CSA.SEMRESATTRS_PROCESS_RUNTIME_VERSION=CSA.SEMRESATTRS_PROCESS_RUNTIME_NAME=CSA.SEMRESATTRS_PROCESS_OWNER=CSA.SEMRESATTRS_PROCESS_COMMAND_ARGS=CSA.SEMRESATTRS_PROCESS_COMMAND_LINE=CSA.SEMRESATTRS_PROCESS_COMMAND=CSA.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=CSA.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=CSA.SEMRESATTRS_PROCESS_PID=CSA.SEMRESATTRS_OS_VERSION=CSA.SEMRESATTRS_OS_NAME=CSA.SEMRESATTRS_OS_DESCRIPTION=CSA.SEMRESATTRS_OS_TYPE=CSA.SEMRESATTRS_K8S_CRONJOB_NAME=CSA.SEMRESATTRS_K8S_CRONJOB_UID=CSA.SEMRESATTRS_K8S_JOB_NAME=CSA.SEMRESATTRS_K8S_JOB_UID=CSA.SEMRESATTRS_K8S_DAEMONSET_NAME=CSA.SEMRESATTRS_K8S_DAEMONSET_UID=void 0;CSA.TelemetrySdkLanguageValues=CSA.TELEMETRYSDKLANGUAGEVALUES_WEBJS=CSA.TELEMETRYSDKLANGUAGEVALUES_RUBY=CSA.TELEMETRYSDKLANGUAGEVALUES_PYTHON=CSA.TELEMETRYSDKLANGUAGEVALUES_PHP=CSA.TELEMETRYSDKLANGUAGEVALUES_NODEJS=CSA.TELEMETRYSDKLANGUAGEVALUES_JAVA=CSA.TELEMETRYSDKLANGUAGEVALUES_GO=CSA.TELEMETRYSDKLANGUAGEVALUES_ERLANG=CSA.TELEMETRYSDKLANGUAGEVALUES_DOTNET=CSA.TELEMETRYSDKLANGUAGEVALUES_CPP=CSA.OsTypeValues=CSA.OSTYPEVALUES_Z_OS=CSA.OSTYPEVALUES_SOLARIS=CSA.OSTYPEVALUES_AIX=CSA.OSTYPEVALUES_HPUX=CSA.OSTYPEVALUES_DRAGONFLYBSD=CSA.OSTYPEVALUES_OPENBSD=CSA.OSTYPEVALUES_NETBSD=CSA.OSTYPEVALUES_FREEBSD=CSA.OSTYPEVALUES_DARWIN=CSA.OSTYPEVALUES_LINUX=CSA.OSTYPEVALUES_WINDOWS=CSA.HostArchValues=CSA.HOSTARCHVALUES_X86=CSA.HOSTARCHVALUES_PPC64=CSA.HOSTARCHVALUES_PPC32=CSA.HOSTARCHVALUES_IA64=CSA.HOSTARCHVALUES_ARM64=CSA.HOSTARCHVALUES_ARM32=CSA.HOSTARCHVALUES_AMD64=CSA.AwsEcsLaunchtypeValues=CSA.AWSECSLAUNCHTYPEVALUES_FARGATE=CSA.AWSECSLAUNCHTYPEVALUES_EC2=CSA.CloudPlatformValues=CSA.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=CSA.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=CSA.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=CSA.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=void 0;var A$=Hl(),gOA="cloud.provider",hOA="cloud.account.id",xOA="cloud.region",fOA="cloud.availability_zone",bOA="cloud.platform",mOA="aws.ecs.container.arn",uOA="aws.ecs.cluster.arn",dOA="aws.ecs.launchtype",cOA="aws.ecs.task.arn",lOA="aws.ecs.task.family",pOA="aws.ecs.task.revision",iOA="aws.eks.cluster.arn",nOA="aws.log.group.names",sOA="aws.log.group.arns",rOA="aws.log.stream.names",aOA="aws.log.stream.arns",oOA="container.name",tOA="container.id",eOA="container.runtime",APA="container.image.name",QPA="container.image.tag",BPA="deployment.environment",YPA="device.id",JPA="device.model.identifier",CPA="device.model.name",XPA="faas.name",GPA="faas.id",WPA="faas.version",FPA="faas.instance",ZPA="faas.max_memory",$PA="host.id",UPA="host.name",EPA="host.type",KPA="host.arch",VPA="host.image.name",IPA="host.image.id",HPA="host.image.version",DPA="k8s.cluster.name",NPA="k8s.node.name",LPA="k8s.node.uid",qPA="k8s.namespace.name",MPA="k8s.pod.uid",zPA="k8s.pod.name",RPA="k8s.container.name",wPA="k8s.replicaset.uid",jPA="k8s.replicaset.name",OPA="k8s.deployment.uid",PPA="k8s.deployment.name",TPA="k8s.statefulset.uid",SPA="k8s.statefulset.name",kPA="k8s.daemonset.uid",_PA="k8s.daemonset.name",vPA="k8s.job.uid",yPA="k8s.job.name",gPA="k8s.cronjob.uid",hPA="k8s.cronjob.name",xPA="os.type",fPA="os.description",bPA="os.name",mPA="os.version",uPA="process.pid",dPA="process.executable.name",cPA="process.executable.path",lPA="process.command",pPA="process.command_line",iPA="process.command_args",nPA="process.owner",sPA="process.runtime.name",rPA="process.runtime.version",aPA="process.runtime.description",oPA="service.name",tPA="service.namespace",ePA="service.instance.id",ATA="service.version",QTA="telemetry.sdk.name",BTA="telemetry.sdk.language",YTA="telemetry.sdk.version",JTA="telemetry.auto.version",CTA="webengine.name",XTA="webengine.version",GTA="webengine.description";CSA.SEMRESATTRS_CLOUD_PROVIDER=gOA;CSA.SEMRESATTRS_CLOUD_ACCOUNT_ID=hOA;CSA.SEMRESATTRS_CLOUD_REGION=xOA;CSA.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=fOA;CSA.SEMRESATTRS_CLOUD_PLATFORM=bOA;CSA.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=mOA;CSA.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=uOA;CSA.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=dOA;CSA.SEMRESATTRS_AWS_ECS_TASK_ARN=cOA;CSA.SEMRESATTRS_AWS_ECS_TASK_FAMILY=lOA;CSA.SEMRESATTRS_AWS_ECS_TASK_REVISION=pOA;CSA.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=iOA;CSA.SEMRESATTRS_AWS_LOG_GROUP_NAMES=nOA;CSA.SEMRESATTRS_AWS_LOG_GROUP_ARNS=sOA;CSA.SEMRESATTRS_AWS_LOG_STREAM_NAMES=rOA;CSA.SEMRESATTRS_AWS_LOG_STREAM_ARNS=aOA;CSA.SEMRESATTRS_CONTAINER_NAME=oOA;CSA.SEMRESATTRS_CONTAINER_ID=tOA;CSA.SEMRESATTRS_CONTAINER_RUNTIME=eOA;CSA.SEMRESATTRS_CONTAINER_IMAGE_NAME=APA;CSA.SEMRESATTRS_CONTAINER_IMAGE_TAG=QPA;CSA.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=BPA;CSA.SEMRESATTRS_DEVICE_ID=YPA;CSA.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=JPA;CSA.SEMRESATTRS_DEVICE_MODEL_NAME=CPA;CSA.SEMRESATTRS_FAAS_NAME=XPA;CSA.SEMRESATTRS_FAAS_ID=GPA;CSA.SEMRESATTRS_FAAS_VERSION=WPA;CSA.SEMRESATTRS_FAAS_INSTANCE=FPA;CSA.SEMRESATTRS_FAAS_MAX_MEMORY=ZPA;CSA.SEMRESATTRS_HOST_ID=$PA;CSA.SEMRESATTRS_HOST_NAME=UPA;CSA.SEMRESATTRS_HOST_TYPE=EPA;CSA.SEMRESATTRS_HOST_ARCH=KPA;CSA.SEMRESATTRS_HOST_IMAGE_NAME=VPA;CSA.SEMRESATTRS_HOST_IMAGE_ID=IPA;CSA.SEMRESATTRS_HOST_IMAGE_VERSION=HPA;CSA.SEMRESATTRS_K8S_CLUSTER_NAME=DPA;CSA.SEMRESATTRS_K8S_NODE_NAME=NPA;CSA.SEMRESATTRS_K8S_NODE_UID=LPA;CSA.SEMRESATTRS_K8S_NAMESPACE_NAME=qPA;CSA.SEMRESATTRS_K8S_POD_UID=MPA;CSA.SEMRESATTRS_K8S_POD_NAME=zPA;CSA.SEMRESATTRS_K8S_CONTAINER_NAME=RPA;CSA.SEMRESATTRS_K8S_REPLICASET_UID=wPA;CSA.SEMRESATTRS_K8S_REPLICASET_NAME=jPA;CSA.SEMRESATTRS_K8S_DEPLOYMENT_UID=OPA;CSA.SEMRESATTRS_K8S_DEPLOYMENT_NAME=PPA;CSA.SEMRESATTRS_K8S_STATEFULSET_UID=TPA;CSA.SEMRESATTRS_K8S_STATEFULSET_NAME=SPA;CSA.SEMRESATTRS_K8S_DAEMONSET_UID=kPA;CSA.SEMRESATTRS_K8S_DAEMONSET_NAME=_PA;CSA.SEMRESATTRS_K8S_JOB_UID=vPA;CSA.SEMRESATTRS_K8S_JOB_NAME=yPA;CSA.SEMRESATTRS_K8S_CRONJOB_UID=gPA;CSA.SEMRESATTRS_K8S_CRONJOB_NAME=hPA;CSA.SEMRESATTRS_OS_TYPE=xPA;CSA.SEMRESATTRS_OS_DESCRIPTION=fPA;CSA.SEMRESATTRS_OS_NAME=bPA;CSA.SEMRESATTRS_OS_VERSION=mPA;CSA.SEMRESATTRS_PROCESS_PID=uPA;CSA.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=dPA;CSA.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=cPA;CSA.SEMRESATTRS_PROCESS_COMMAND=lPA;CSA.SEMRESATTRS_PROCESS_COMMAND_LINE=pPA;CSA.SEMRESATTRS_PROCESS_COMMAND_ARGS=iPA;CSA.SEMRESATTRS_PROCESS_OWNER=nPA;CSA.SEMRESATTRS_PROCESS_RUNTIME_NAME=sPA;CSA.SEMRESATTRS_PROCESS_RUNTIME_VERSION=rPA;CSA.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=aPA;CSA.SEMRESATTRS_SERVICE_NAME=oPA;CSA.SEMRESATTRS_SERVICE_NAMESPACE=tPA;CSA.SEMRESATTRS_SERVICE_INSTANCE_ID=ePA;CSA.SEMRESATTRS_SERVICE_VERSION=ATA;CSA.SEMRESATTRS_TELEMETRY_SDK_NAME=QTA;CSA.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=BTA;CSA.SEMRESATTRS_TELEMETRY_SDK_VERSION=YTA;CSA.SEMRESATTRS_TELEMETRY_AUTO_VERSION=JTA;CSA.SEMRESATTRS_WEBENGINE_NAME=CTA;CSA.SEMRESATTRS_WEBENGINE_VERSION=XTA;CSA.SEMRESATTRS_WEBENGINE_DESCRIPTION=GTA;CSA.SemanticResourceAttributes=(0,A$.createConstMap)([gOA,hOA,xOA,fOA,bOA,mOA,uOA,dOA,cOA,lOA,pOA,iOA,nOA,sOA,rOA,aOA,oOA,tOA,eOA,APA,QPA,BPA,YPA,JPA,CPA,XPA,GPA,WPA,FPA,ZPA,$PA,UPA,EPA,KPA,VPA,IPA,HPA,DPA,NPA,LPA,qPA,MPA,zPA,RPA,wPA,jPA,OPA,PPA,TPA,SPA,kPA,_PA,vPA,yPA,gPA,hPA,xPA,fPA,bPA,mPA,uPA,dPA,cPA,lPA,pPA,iPA,nPA,sPA,rPA,aPA,oPA,tPA,ePA,ATA,QTA,BTA,YTA,JTA,CTA,XTA,GTA]);var WTA="alibaba_cloud",FTA="aws",ZTA="azure",$TA="gcp";CSA.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=WTA;CSA.CLOUDPROVIDERVALUES_AWS=FTA;CSA.CLOUDPROVIDERVALUES_AZURE=ZTA;CSA.CLOUDPROVIDERVALUES_GCP=$TA;CSA.CloudProviderValues=(0,A$.createConstMap)([WTA,FTA,ZTA,$TA]);var UTA="alibaba_cloud_ecs",ETA="alibaba_cloud_fc",KTA="aws_ec2",VTA="aws_ecs",ITA="aws_eks",HTA="aws_lambda",DTA="aws_elastic_beanstalk",NTA="azure_vm",LTA="azure_container_instances",qTA="azure_aks",MTA="azure_functions",zTA="azure_app_service",RTA="gcp_compute_engine",wTA="gcp_cloud_run",jTA="gcp_kubernetes_engine",OTA="gcp_cloud_functions",PTA="gcp_app_engine";CSA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=UTA;CSA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=ETA;CSA.CLOUDPLATFORMVALUES_AWS_EC2=KTA;CSA.CLOUDPLATFORMVALUES_AWS_ECS=VTA;CSA.CLOUDPLATFORMVALUES_AWS_EKS=ITA;CSA.CLOUDPLATFORMVALUES_AWS_LAMBDA=HTA;CSA.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=DTA;CSA.CLOUDPLATFORMVALUES_AZURE_VM=NTA;CSA.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=LTA;CSA.CLOUDPLATFORMVALUES_AZURE_AKS=qTA;CSA.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=MTA;CSA.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=zTA;CSA.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=RTA;CSA.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=wTA;CSA.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=jTA;CSA.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=OTA;CSA.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=PTA;CSA.CloudPlatformValues=(0,A$.createConstMap)([UTA,ETA,KTA,VTA,ITA,HTA,DTA,NTA,LTA,qTA,MTA,zTA,RTA,wTA,jTA,OTA,PTA]);var TTA="ec2",STA="fargate";CSA.AWSECSLAUNCHTYPEVALUES_EC2=TTA;CSA.AWSECSLAUNCHTYPEVALUES_FARGATE=STA;CSA.AwsEcsLaunchtypeValues=(0,A$.createConstMap)([TTA,STA]);var kTA="amd64",_TA="arm32",vTA="arm64",yTA="ia64",gTA="ppc32",hTA="ppc64",xTA="x86";CSA.HOSTARCHVALUES_AMD64=kTA;CSA.HOSTARCHVALUES_ARM32=_TA;CSA.HOSTARCHVALUES_ARM64=vTA;CSA.HOSTARCHVALUES_IA64=yTA;CSA.HOSTARCHVALUES_PPC32=gTA;CSA.HOSTARCHVALUES_PPC64=hTA;CSA.HOSTARCHVALUES_X86=xTA;CSA.HostArchValues=(0,A$.createConstMap)([kTA,_TA,vTA,yTA,gTA,hTA,xTA]);var fTA="windows",bTA="linux",mTA="darwin",uTA="freebsd",dTA="netbsd",cTA="openbsd",lTA="dragonflybsd",pTA="hpux",iTA="aix",nTA="solaris",sTA="z_os";CSA.OSTYPEVALUES_WINDOWS=fTA;CSA.OSTYPEVALUES_LINUX=bTA;CSA.OSTYPEVALUES_DARWIN=mTA;CSA.OSTYPEVALUES_FREEBSD=uTA;CSA.OSTYPEVALUES_NETBSD=dTA;CSA.OSTYPEVALUES_OPENBSD=cTA;CSA.OSTYPEVALUES_DRAGONFLYBSD=lTA;CSA.OSTYPEVALUES_HPUX=pTA;CSA.OSTYPEVALUES_AIX=iTA;CSA.OSTYPEVALUES_SOLARIS=nTA;CSA.OSTYPEVALUES_Z_OS=sTA;CSA.OsTypeValues=(0,A$.createConstMap)([fTA,bTA,mTA,uTA,dTA,cTA,lTA,pTA,iTA,nTA,sTA]);var rTA="cpp",aTA="dotnet",oTA="erlang",tTA="go",eTA="java",ASA="nodejs",QSA="php",BSA="python",YSA="ruby",JSA="webjs";CSA.TELEMETRYSDKLANGUAGEVALUES_CPP=rTA;CSA.TELEMETRYSDKLANGUAGEVALUES_DOTNET=aTA;CSA.TELEMETRYSDKLANGUAGEVALUES_ERLANG=oTA;CSA.TELEMETRYSDKLANGUAGEVALUES_GO=tTA;CSA.TELEMETRYSDKLANGUAGEVALUES_JAVA=eTA;CSA.TELEMETRYSDKLANGUAGEVALUES_NODEJS=ASA;CSA.TELEMETRYSDKLANGUAGEVALUES_PHP=QSA;CSA.TELEMETRYSDKLANGUAGEVALUES_PYTHON=BSA;CSA.TELEMETRYSDKLANGUAGEVALUES_RUBY=YSA;CSA.TELEMETRYSDKLANGUAGEVALUES_WEBJS=JSA;CSA.TelemetrySdkLanguageValues=(0,A$.createConstMap)([rTA,aTA,oTA,tTA,eTA,ASA,QSA,BSA,YSA,JSA])});var ZSA=R((Q$)=>{var gzB=Q$&&Q$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),hzB=Q$&&Q$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))gzB(Q,A,B)};Object.defineProperty(Q$,"__esModule",{value:!0});hzB(FSA(),Q$)});var VSA=R(($SA)=>{Object.defineProperty($SA,"__esModule",{value:!0});$SA.HTTP_REQUEST_METHOD_VALUE_POST=$SA.HTTP_REQUEST_METHOD_VALUE_PATCH=$SA.HTTP_REQUEST_METHOD_VALUE_OPTIONS=$SA.HTTP_REQUEST_METHOD_VALUE_HEAD=$SA.HTTP_REQUEST_METHOD_VALUE_GET=$SA.HTTP_REQUEST_METHOD_VALUE_DELETE=$SA.HTTP_REQUEST_METHOD_VALUE_CONNECT=$SA.HTTP_REQUEST_METHOD_VALUE_OTHER=$SA.ATTR_HTTP_REQUEST_METHOD=$SA.ATTR_HTTP_REQUEST_HEADER=$SA.ATTR_EXCEPTION_TYPE=$SA.ATTR_EXCEPTION_STACKTRACE=$SA.ATTR_EXCEPTION_MESSAGE=$SA.ATTR_EXCEPTION_ESCAPED=$SA.ERROR_TYPE_VALUE_OTHER=$SA.ATTR_ERROR_TYPE=$SA.ATTR_CLIENT_PORT=$SA.ATTR_CLIENT_ADDRESS=$SA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS=$SA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE=$SA.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS=$SA.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK=$SA.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED=$SA.ATTR_ASPNETCORE_RATE_LIMITING_POLICY=$SA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED=$SA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED=$SA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED=$SA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED=$SA.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT=$SA.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE=$SA.ATTR_TELEMETRY_SDK_VERSION=$SA.ATTR_TELEMETRY_SDK_NAME=$SA.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS=$SA.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT=$SA.TELEMETRY_SDK_LANGUAGE_VALUE_RUST=$SA.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY=$SA.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON=$SA.TELEMETRY_SDK_LANGUAGE_VALUE_PHP=$SA.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS=$SA.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA=$SA.TELEMETRY_SDK_LANGUAGE_VALUE_GO=$SA.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG=$SA.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET=$SA.TELEMETRY_SDK_LANGUAGE_VALUE_CPP=$SA.ATTR_TELEMETRY_SDK_LANGUAGE=$SA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED=$SA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER=$SA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER=$SA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED=$SA.ATTR_ASPNETCORE_RATE_LIMITING_RESULT=void 0;$SA.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT=$SA.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE=$SA.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN=$SA.ATTR_SIGNALR_CONNECTION_STATUS=$SA.ATTR_SERVICE_VERSION=$SA.ATTR_SERVICE_NAME=$SA.ATTR_SERVER_PORT=$SA.ATTR_SERVER_ADDRESS=$SA.ATTR_OTEL_STATUS_DESCRIPTION=$SA.OTEL_STATUS_CODE_VALUE_OK=$SA.OTEL_STATUS_CODE_VALUE_ERROR=$SA.ATTR_OTEL_STATUS_CODE=$SA.ATTR_OTEL_SCOPE_VERSION=$SA.ATTR_OTEL_SCOPE_NAME=$SA.NETWORK_TYPE_VALUE_IPV6=$SA.NETWORK_TYPE_VALUE_IPV4=$SA.ATTR_NETWORK_TYPE=$SA.NETWORK_TRANSPORT_VALUE_UNIX=$SA.NETWORK_TRANSPORT_VALUE_UDP=$SA.NETWORK_TRANSPORT_VALUE_TCP=$SA.NETWORK_TRANSPORT_VALUE_QUIC=$SA.NETWORK_TRANSPORT_VALUE_PIPE=$SA.ATTR_NETWORK_TRANSPORT=$SA.ATTR_NETWORK_PROTOCOL_VERSION=$SA.ATTR_NETWORK_PROTOCOL_NAME=$SA.ATTR_NETWORK_PEER_PORT=$SA.ATTR_NETWORK_PEER_ADDRESS=$SA.ATTR_NETWORK_LOCAL_PORT=$SA.ATTR_NETWORK_LOCAL_ADDRESS=$SA.JVM_THREAD_STATE_VALUE_WAITING=$SA.JVM_THREAD_STATE_VALUE_TIMED_WAITING=$SA.JVM_THREAD_STATE_VALUE_TERMINATED=$SA.JVM_THREAD_STATE_VALUE_RUNNABLE=$SA.JVM_THREAD_STATE_VALUE_NEW=$SA.JVM_THREAD_STATE_VALUE_BLOCKED=$SA.ATTR_JVM_THREAD_STATE=$SA.ATTR_JVM_THREAD_DAEMON=$SA.JVM_MEMORY_TYPE_VALUE_NON_HEAP=$SA.JVM_MEMORY_TYPE_VALUE_HEAP=$SA.ATTR_JVM_MEMORY_TYPE=$SA.ATTR_JVM_MEMORY_POOL_NAME=$SA.ATTR_JVM_GC_NAME=$SA.ATTR_JVM_GC_ACTION=$SA.ATTR_HTTP_ROUTE=$SA.ATTR_HTTP_RESPONSE_STATUS_CODE=$SA.ATTR_HTTP_RESPONSE_HEADER=$SA.ATTR_HTTP_REQUEST_RESEND_COUNT=$SA.ATTR_HTTP_REQUEST_METHOD_ORIGINAL=$SA.HTTP_REQUEST_METHOD_VALUE_TRACE=$SA.HTTP_REQUEST_METHOD_VALUE_PUT=void 0;$SA.ATTR_USER_AGENT_ORIGINAL=$SA.ATTR_URL_SCHEME=$SA.ATTR_URL_QUERY=$SA.ATTR_URL_PATH=$SA.ATTR_URL_FULL=$SA.ATTR_URL_FRAGMENT=$SA.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS=$SA.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS=$SA.SIGNALR_TRANSPORT_VALUE_LONG_POLLING=$SA.ATTR_SIGNALR_TRANSPORT=void 0;$SA.ATTR_ASPNETCORE_RATE_LIMITING_RESULT="aspnetcore.rate_limiting.result";$SA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED="acquired";$SA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER="endpoint_limiter";$SA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER="global_limiter";$SA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED="request_canceled";$SA.ATTR_TELEMETRY_SDK_LANGUAGE="telemetry.sdk.language";$SA.TELEMETRY_SDK_LANGUAGE_VALUE_CPP="cpp";$SA.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET="dotnet";$SA.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG="erlang";$SA.TELEMETRY_SDK_LANGUAGE_VALUE_GO="go";$SA.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA="java";$SA.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS="nodejs";$SA.TELEMETRY_SDK_LANGUAGE_VALUE_PHP="php";$SA.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON="python";$SA.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY="ruby";$SA.TELEMETRY_SDK_LANGUAGE_VALUE_RUST="rust";$SA.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT="swift";$SA.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS="webjs";$SA.ATTR_TELEMETRY_SDK_NAME="telemetry.sdk.name";$SA.ATTR_TELEMETRY_SDK_VERSION="telemetry.sdk.version";$SA.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE="aspnetcore.diagnostics.handler.type";$SA.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT="aspnetcore.diagnostics.exception.result";$SA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED="aborted";$SA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED="handled";$SA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED="skipped";$SA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED="unhandled";$SA.ATTR_ASPNETCORE_RATE_LIMITING_POLICY="aspnetcore.rate_limiting.policy";$SA.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED="aspnetcore.request.is_unhandled";$SA.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK="aspnetcore.routing.is_fallback";$SA.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS="aspnetcore.routing.match_status";$SA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE="failure";$SA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS="success";$SA.ATTR_CLIENT_ADDRESS="client.address";$SA.ATTR_CLIENT_PORT="client.port";$SA.ATTR_ERROR_TYPE="error.type";$SA.ERROR_TYPE_VALUE_OTHER="_OTHER";$SA.ATTR_EXCEPTION_ESCAPED="exception.escaped";$SA.ATTR_EXCEPTION_MESSAGE="exception.message";$SA.ATTR_EXCEPTION_STACKTRACE="exception.stacktrace";$SA.ATTR_EXCEPTION_TYPE="exception.type";var xzB=(A)=>`http.request.header.${A}`;$SA.ATTR_HTTP_REQUEST_HEADER=xzB;$SA.ATTR_HTTP_REQUEST_METHOD="http.request.method";$SA.HTTP_REQUEST_METHOD_VALUE_OTHER="_OTHER";$SA.HTTP_REQUEST_METHOD_VALUE_CONNECT="CONNECT";$SA.HTTP_REQUEST_METHOD_VALUE_DELETE="DELETE";$SA.HTTP_REQUEST_METHOD_VALUE_GET="GET";$SA.HTTP_REQUEST_METHOD_VALUE_HEAD="HEAD";$SA.HTTP_REQUEST_METHOD_VALUE_OPTIONS="OPTIONS";$SA.HTTP_REQUEST_METHOD_VALUE_PATCH="PATCH";$SA.HTTP_REQUEST_METHOD_VALUE_POST="POST";$SA.HTTP_REQUEST_METHOD_VALUE_PUT="PUT";$SA.HTTP_REQUEST_METHOD_VALUE_TRACE="TRACE";$SA.ATTR_HTTP_REQUEST_METHOD_ORIGINAL="http.request.method_original";$SA.ATTR_HTTP_REQUEST_RESEND_COUNT="http.request.resend_count";var fzB=(A)=>`http.response.header.${A}`;$SA.ATTR_HTTP_RESPONSE_HEADER=fzB;$SA.ATTR_HTTP_RESPONSE_STATUS_CODE="http.response.status_code";$SA.ATTR_HTTP_ROUTE="http.route";$SA.ATTR_JVM_GC_ACTION="jvm.gc.action";$SA.ATTR_JVM_GC_NAME="jvm.gc.name";$SA.ATTR_JVM_MEMORY_POOL_NAME="jvm.memory.pool.name";$SA.ATTR_JVM_MEMORY_TYPE="jvm.memory.type";$SA.JVM_MEMORY_TYPE_VALUE_HEAP="heap";$SA.JVM_MEMORY_TYPE_VALUE_NON_HEAP="non_heap";$SA.ATTR_JVM_THREAD_DAEMON="jvm.thread.daemon";$SA.ATTR_JVM_THREAD_STATE="jvm.thread.state";$SA.JVM_THREAD_STATE_VALUE_BLOCKED="blocked";$SA.JVM_THREAD_STATE_VALUE_NEW="new";$SA.JVM_THREAD_STATE_VALUE_RUNNABLE="runnable";$SA.JVM_THREAD_STATE_VALUE_TERMINATED="terminated";$SA.JVM_THREAD_STATE_VALUE_TIMED_WAITING="timed_waiting";$SA.JVM_THREAD_STATE_VALUE_WAITING="waiting";$SA.ATTR_NETWORK_LOCAL_ADDRESS="network.local.address";$SA.ATTR_NETWORK_LOCAL_PORT="network.local.port";$SA.ATTR_NETWORK_PEER_ADDRESS="network.peer.address";$SA.ATTR_NETWORK_PEER_PORT="network.peer.port";$SA.ATTR_NETWORK_PROTOCOL_NAME="network.protocol.name";$SA.ATTR_NETWORK_PROTOCOL_VERSION="network.protocol.version";$SA.ATTR_NETWORK_TRANSPORT="network.transport";$SA.NETWORK_TRANSPORT_VALUE_PIPE="pipe";$SA.NETWORK_TRANSPORT_VALUE_QUIC="quic";$SA.NETWORK_TRANSPORT_VALUE_TCP="tcp";$SA.NETWORK_TRANSPORT_VALUE_UDP="udp";$SA.NETWORK_TRANSPORT_VALUE_UNIX="unix";$SA.ATTR_NETWORK_TYPE="network.type";$SA.NETWORK_TYPE_VALUE_IPV4="ipv4";$SA.NETWORK_TYPE_VALUE_IPV6="ipv6";$SA.ATTR_OTEL_SCOPE_NAME="otel.scope.name";$SA.ATTR_OTEL_SCOPE_VERSION="otel.scope.version";$SA.ATTR_OTEL_STATUS_CODE="otel.status_code";$SA.OTEL_STATUS_CODE_VALUE_ERROR="ERROR";$SA.OTEL_STATUS_CODE_VALUE_OK="OK";$SA.ATTR_OTEL_STATUS_DESCRIPTION="otel.status_description";$SA.ATTR_SERVER_ADDRESS="server.address";$SA.ATTR_SERVER_PORT="server.port";$SA.ATTR_SERVICE_NAME="service.name";$SA.ATTR_SERVICE_VERSION="service.version";$SA.ATTR_SIGNALR_CONNECTION_STATUS="signalr.connection.status";$SA.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN="app_shutdown";$SA.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE="normal_closure";$SA.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT="timeout";$SA.ATTR_SIGNALR_TRANSPORT="signalr.transport";$SA.SIGNALR_TRANSPORT_VALUE_LONG_POLLING="long_polling";$SA.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS="server_sent_events";$SA.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS="web_sockets";$SA.ATTR_URL_FRAGMENT="url.fragment";$SA.ATTR_URL_FULL="url.full";$SA.ATTR_URL_PATH="url.path";$SA.ATTR_URL_QUERY="url.query";$SA.ATTR_URL_SCHEME="url.scheme";$SA.ATTR_USER_AGENT_ORIGINAL="user_agent.original"});var DSA=R((ISA)=>{Object.defineProperty(ISA,"__esModule",{value:!0});ISA.METRIC_SIGNALR_SERVER_CONNECTION_DURATION=ISA.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS=ISA.METRIC_KESTREL_UPGRADED_CONNECTIONS=ISA.METRIC_KESTREL_TLS_HANDSHAKE_DURATION=ISA.METRIC_KESTREL_REJECTED_CONNECTIONS=ISA.METRIC_KESTREL_QUEUED_REQUESTS=ISA.METRIC_KESTREL_QUEUED_CONNECTIONS=ISA.METRIC_KESTREL_CONNECTION_DURATION=ISA.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES=ISA.METRIC_KESTREL_ACTIVE_CONNECTIONS=ISA.METRIC_JVM_THREAD_COUNT=ISA.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC=ISA.METRIC_JVM_MEMORY_USED=ISA.METRIC_JVM_MEMORY_LIMIT=ISA.METRIC_JVM_MEMORY_COMMITTED=ISA.METRIC_JVM_GC_DURATION=ISA.METRIC_JVM_CPU_TIME=ISA.METRIC_JVM_CPU_RECENT_UTILIZATION=ISA.METRIC_JVM_CPU_COUNT=ISA.METRIC_JVM_CLASS_UNLOADED=ISA.METRIC_JVM_CLASS_LOADED=ISA.METRIC_JVM_CLASS_COUNT=ISA.METRIC_HTTP_SERVER_REQUEST_DURATION=ISA.METRIC_HTTP_CLIENT_REQUEST_DURATION=ISA.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS=ISA.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS=ISA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION=ISA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE=ISA.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS=ISA.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES=ISA.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS=void 0;ISA.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS="aspnetcore.diagnostics.exceptions";ISA.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES="aspnetcore.rate_limiting.active_request_leases";ISA.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS="aspnetcore.rate_limiting.queued_requests";ISA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE="aspnetcore.rate_limiting.request.time_in_queue";ISA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION="aspnetcore.rate_limiting.request_lease.duration";ISA.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS="aspnetcore.rate_limiting.requests";ISA.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS="aspnetcore.routing.match_attempts";ISA.METRIC_HTTP_CLIENT_REQUEST_DURATION="http.client.request.duration";ISA.METRIC_HTTP_SERVER_REQUEST_DURATION="http.server.request.duration";ISA.METRIC_JVM_CLASS_COUNT="jvm.class.count";ISA.METRIC_JVM_CLASS_LOADED="jvm.class.loaded";ISA.METRIC_JVM_CLASS_UNLOADED="jvm.class.unloaded";ISA.METRIC_JVM_CPU_COUNT="jvm.cpu.count";ISA.METRIC_JVM_CPU_RECENT_UTILIZATION="jvm.cpu.recent_utilization";ISA.METRIC_JVM_CPU_TIME="jvm.cpu.time";ISA.METRIC_JVM_GC_DURATION="jvm.gc.duration";ISA.METRIC_JVM_MEMORY_COMMITTED="jvm.memory.committed";ISA.METRIC_JVM_MEMORY_LIMIT="jvm.memory.limit";ISA.METRIC_JVM_MEMORY_USED="jvm.memory.used";ISA.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC="jvm.memory.used_after_last_gc";ISA.METRIC_JVM_THREAD_COUNT="jvm.thread.count";ISA.METRIC_KESTREL_ACTIVE_CONNECTIONS="kestrel.active_connections";ISA.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES="kestrel.active_tls_handshakes";ISA.METRIC_KESTREL_CONNECTION_DURATION="kestrel.connection.duration";ISA.METRIC_KESTREL_QUEUED_CONNECTIONS="kestrel.queued_connections";ISA.METRIC_KESTREL_QUEUED_REQUESTS="kestrel.queued_requests";ISA.METRIC_KESTREL_REJECTED_CONNECTIONS="kestrel.rejected_connections";ISA.METRIC_KESTREL_TLS_HANDSHAKE_DURATION="kestrel.tls_handshake.duration";ISA.METRIC_KESTREL_UPGRADED_CONNECTIONS="kestrel.upgraded_connections";ISA.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS="signalr.server.active_connections";ISA.METRIC_SIGNALR_SERVER_CONNECTION_DURATION="signalr.server.connection.duration"});var NSA=R((WX)=>{var KRB=WX&&WX.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),XO=WX&&WX.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))KRB(Q,A,B)};Object.defineProperty(WX,"__esModule",{value:!0});XO(yOA(),WX);XO(ZSA(),WX);XO(VSA(),WX);XO(DSA(),WX)});var MSA=R((LSA)=>{Object.defineProperty(LSA,"__esModule",{value:!0});LSA.SDK_INFO=void 0;var VRB=Il(),nN=NSA();LSA.SDK_INFO={[nN.SEMRESATTRS_TELEMETRY_SDK_NAME]:"opentelemetry",[nN.SEMRESATTRS_PROCESS_RUNTIME_NAME]:"node",[nN.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE]:nN.TELEMETRYSDKLANGUAGEVALUES_NODEJS,[nN.SEMRESATTRS_TELEMETRY_SDK_VERSION]:VRB.VERSION}});var wSA=R((zSA)=>{Object.defineProperty(zSA,"__esModule",{value:!0});zSA.unrefTimer=void 0;function IRB(A){A.unref()}zSA.unrefTimer=IRB});var OSA=R((FX)=>{Object.defineProperty(FX,"__esModule",{value:!0});FX.unrefTimer=FX.SDK_INFO=FX.otperformance=FX.RandomIdGenerator=FX.hexToBase64=FX._globalThis=FX.getEnv=FX.getEnvWithoutDefaults=void 0;var jSA=K2A();Object.defineProperty(FX,"getEnvWithoutDefaults",{enumerable:!0,get:function(){return jSA.getEnvWithoutDefaults}});Object.defineProperty(FX,"getEnv",{enumerable:!0,get:function(){return jSA.getEnv}});var HRB=H2A();Object.defineProperty(FX,"_globalThis",{enumerable:!0,get:function(){return HRB._globalThis}});var DRB=z2A();Object.defineProperty(FX,"hexToBase64",{enumerable:!0,get:function(){return DRB.hexToBase64}});var NRB=T2A();Object.defineProperty(FX,"RandomIdGenerator",{enumerable:!0,get:function(){return NRB.RandomIdGenerator}});var LRB=_2A();Object.defineProperty(FX,"otperformance",{enumerable:!0,get:function(){return LRB.otperformance}});var qRB=MSA();Object.defineProperty(FX,"SDK_INFO",{enumerable:!0,get:function(){return qRB.SDK_INFO}});var MRB=wSA();Object.defineProperty(FX,"unrefTimer",{enumerable:!0,get:function(){return MRB.unrefTimer}})});var Dl=R((ZX)=>{Object.defineProperty(ZX,"__esModule",{value:!0});ZX.unrefTimer=ZX.otperformance=ZX.hexToBase64=ZX.getEnvWithoutDefaults=ZX.getEnv=ZX._globalThis=ZX.SDK_INFO=ZX.RandomIdGenerator=void 0;var UW=OSA();Object.defineProperty(ZX,"RandomIdGenerator",{enumerable:!0,get:function(){return UW.RandomIdGenerator}});Object.defineProperty(ZX,"SDK_INFO",{enumerable:!0,get:function(){return UW.SDK_INFO}});Object.defineProperty(ZX,"_globalThis",{enumerable:!0,get:function(){return UW._globalThis}});Object.defineProperty(ZX,"getEnv",{enumerable:!0,get:function(){return UW.getEnv}});Object.defineProperty(ZX,"getEnvWithoutDefaults",{enumerable:!0,get:function(){return UW.getEnvWithoutDefaults}});Object.defineProperty(ZX,"hexToBase64",{enumerable:!0,get:function(){return UW.hexToBase64}});Object.defineProperty(ZX,"otperformance",{enumerable:!0,get:function(){return UW.otperformance}});Object.defineProperty(ZX,"unrefTimer",{enumerable:!0,get:function(){return UW.unrefTimer}})});var vSA=R((kSA)=>{Object.defineProperty(kSA,"__esModule",{value:!0});kSA.addHrTimes=kSA.isTimeInput=kSA.isTimeInputHrTime=kSA.hrTimeToMicroseconds=kSA.hrTimeToMilliseconds=kSA.hrTimeToNanoseconds=kSA.hrTimeToTimeStamp=kSA.hrTimeDuration=kSA.timeInputToHrTime=kSA.hrTime=kSA.getTimeOrigin=kSA.millisToHrTime=void 0;var Nl=Dl(),PSA=9,wRB=6,jRB=Math.pow(10,wRB),GO=Math.pow(10,PSA);function sN(A){let Q=A/1000,B=Math.trunc(Q),Y=Math.round(A%1000*jRB);return[B,Y]}kSA.millisToHrTime=sN;function Ll(){let A=Nl.otperformance.timeOrigin;if(typeof A!=="number"){let Q=Nl.otperformance;A=Q.timing&&Q.timing.fetchStart}return A}kSA.getTimeOrigin=Ll;function TSA(A){let Q=sN(Ll()),B=sN(typeof A==="number"?A:Nl.otperformance.now());return SSA(Q,B)}kSA.hrTime=TSA;function ORB(A){if(ql(A))return A;else if(typeof A==="number")if(A=GO)B[1]-=GO,B[0]+=1;return B}kSA.addHrTimes=SSA});var gSA=R((ySA)=>{Object.defineProperty(ySA,"__esModule",{value:!0});ySA.ExportResultCode=void 0;var pRB;(function(A){A[A.SUCCESS=0]="SUCCESS",A[A.FAILED=1]="FAILED"})(pRB=ySA.ExportResultCode||(ySA.ExportResultCode={}))});var mSA=R((fSA)=>{Object.defineProperty(fSA,"__esModule",{value:!0});fSA.CompositePropagator=void 0;var hSA=yA();class xSA{constructor(A={}){var Q;this._propagators=(Q=A.propagators)!==null&&Q!==void 0?Q:[],this._fields=Array.from(new Set(this._propagators.map((B)=>typeof B.fields==="function"?B.fields():[]).reduce((B,Y)=>B.concat(Y),[])))}inject(A,Q,B){for(let Y of this._propagators)try{Y.inject(A,Q,B)}catch(J){hSA.diag.warn(`Failed to inject with ${Y.constructor.name}. Err: ${J.message}`)}}extract(A,Q,B){return this._propagators.reduce((Y,J)=>{try{return J.extract(Y,Q,B)}catch(C){hSA.diag.warn(`Failed to extract with ${J.constructor.name}. Err: ${C.message}`)}return Y},A)}fields(){return this._fields.slice()}}fSA.CompositePropagator=xSA});var cSA=R((uSA)=>{Object.defineProperty(uSA,"__esModule",{value:!0});uSA.validateValue=uSA.validateKey=void 0;var zl="[_0-9a-z-*/]",iRB=`[a-z]${zl}{0,255}`,nRB=`[a-z0-9]${zl}{0,240}@[a-z]${zl}{0,13}`,sRB=new RegExp(`^(?:${iRB}|${nRB})$`),rRB=/^[ -~]{0,255}[!-~]$/,aRB=/,|=/;function oRB(A){return sRB.test(A)}uSA.validateKey=oRB;function tRB(A){return rRB.test(A)&&!aRB.test(A)}uSA.validateValue=tRB});var wl=R((sSA)=>{Object.defineProperty(sSA,"__esModule",{value:!0});sSA.TraceState=void 0;var lSA=cSA(),pSA=32,AwB=512,iSA=",",nSA="=";class Rl{constructor(A){if(this._internalState=new Map,A)this._parse(A)}set(A,Q){let B=this._clone();if(B._internalState.has(A))B._internalState.delete(A);return B._internalState.set(A,Q),B}unset(A){let Q=this._clone();return Q._internalState.delete(A),Q}get(A){return this._internalState.get(A)}serialize(){return this._keys().reduce((A,Q)=>{return A.push(Q+nSA+this.get(Q)),A},[]).join(iSA)}_parse(A){if(A.length>AwB)return;if(this._internalState=A.split(iSA).reverse().reduce((Q,B)=>{let Y=B.trim(),J=Y.indexOf(nSA);if(J!==-1){let C=Y.slice(0,J),X=Y.slice(J+1,B.length);if((0,lSA.validateKey)(C)&&(0,lSA.validateValue)(X))Q.set(C,X)}return Q},new Map),this._internalState.size>pSA)this._internalState=new Map(Array.from(this._internalState.entries()).reverse().slice(0,pSA))}_keys(){return Array.from(this._internalState.keys()).reverse()}_clone(){let A=new Rl;return A._internalState=new Map(this._internalState),A}}sSA.TraceState=Rl});var AkA=R((tSA)=>{Object.defineProperty(tSA,"__esModule",{value:!0});tSA.W3CTraceContextPropagator=tSA.parseTraceParent=tSA.TRACE_STATE_HEADER=tSA.TRACE_PARENT_HEADER=void 0;var WO=yA(),QwB=iN(),BwB=wl();tSA.TRACE_PARENT_HEADER="traceparent";tSA.TRACE_STATE_HEADER="tracestate";var YwB="00",JwB="(?!ff)[\\da-f]{2}",CwB="(?![0]{32})[\\da-f]{32}",XwB="(?![0]{16})[\\da-f]{16}",GwB="[\\da-f]{2}",WwB=new RegExp(`^\\s?(${JwB})-(${CwB})-(${XwB})-(${GwB})(-.*)?\\s?$`);function aSA(A){let Q=WwB.exec(A);if(!Q)return null;if(Q[1]==="00"&&Q[5])return null;return{traceId:Q[2],spanId:Q[3],traceFlags:parseInt(Q[4],16)}}tSA.parseTraceParent=aSA;class oSA{inject(A,Q,B){let Y=WO.trace.getSpanContext(A);if(!Y||(0,QwB.isTracingSuppressed)(A)||!(0,WO.isSpanContextValid)(Y))return;let J=`${YwB}-${Y.traceId}-${Y.spanId}-0${Number(Y.traceFlags||WO.TraceFlags.NONE).toString(16)}`;if(B.set(Q,tSA.TRACE_PARENT_HEADER,J),Y.traceState)B.set(Q,tSA.TRACE_STATE_HEADER,Y.traceState.serialize())}extract(A,Q,B){let Y=B.get(Q,tSA.TRACE_PARENT_HEADER);if(!Y)return A;let J=Array.isArray(Y)?Y[0]:Y;if(typeof J!=="string")return A;let C=aSA(J);if(!C)return A;C.isRemote=!0;let X=B.get(Q,tSA.TRACE_STATE_HEADER);if(X){let G=Array.isArray(X)?X.join(","):X;C.traceState=new BwB.TraceState(typeof G==="string"?G:void 0)}return WO.trace.setSpanContext(A,C)}fields(){return[tSA.TRACE_PARENT_HEADER,tSA.TRACE_STATE_HEADER]}}tSA.W3CTraceContextPropagator=oSA});var JkA=R((BkA)=>{Object.defineProperty(BkA,"__esModule",{value:!0});BkA.getRPCMetadata=BkA.deleteRPCMetadata=BkA.setRPCMetadata=BkA.RPCType=void 0;var ZwB=yA(),jl=(0,ZwB.createContextKey)("OpenTelemetry SDK Context Key RPC_METADATA"),$wB;(function(A){A.HTTP="http"})($wB=BkA.RPCType||(BkA.RPCType={}));function UwB(A,Q){return A.setValue(jl,Q)}BkA.setRPCMetadata=UwB;function EwB(A){return A.deleteValue(jl)}BkA.deleteRPCMetadata=EwB;function KwB(A){return A.getValue(jl)}BkA.getRPCMetadata=KwB});var Ol=R((XkA)=>{Object.defineProperty(XkA,"__esModule",{value:!0});XkA.AlwaysOffSampler=void 0;var HwB=yA();class CkA{shouldSample(){return{decision:HwB.SamplingDecision.NOT_RECORD}}toString(){return"AlwaysOffSampler"}}XkA.AlwaysOffSampler=CkA});var Pl=R((FkA)=>{Object.defineProperty(FkA,"__esModule",{value:!0});FkA.AlwaysOnSampler=void 0;var DwB=yA();class WkA{shouldSample(){return{decision:DwB.SamplingDecision.RECORD_AND_SAMPLED}}toString(){return"AlwaysOnSampler"}}FkA.AlwaysOnSampler=WkA});var VkA=R((EkA)=>{Object.defineProperty(EkA,"__esModule",{value:!0});EkA.ParentBasedSampler=void 0;var $O=yA(),NwB=Zl(),$kA=Ol(),Tl=Pl();class UkA{constructor(A){var Q,B,Y,J;if(this._root=A.root,!this._root)(0,NwB.globalErrorHandler)(Error("ParentBasedSampler must have a root sampler configured")),this._root=new Tl.AlwaysOnSampler;this._remoteParentSampled=(Q=A.remoteParentSampled)!==null&&Q!==void 0?Q:new Tl.AlwaysOnSampler,this._remoteParentNotSampled=(B=A.remoteParentNotSampled)!==null&&B!==void 0?B:new $kA.AlwaysOffSampler,this._localParentSampled=(Y=A.localParentSampled)!==null&&Y!==void 0?Y:new Tl.AlwaysOnSampler,this._localParentNotSampled=(J=A.localParentNotSampled)!==null&&J!==void 0?J:new $kA.AlwaysOffSampler}shouldSample(A,Q,B,Y,J,C){let X=$O.trace.getSpanContext(A);if(!X||!(0,$O.isSpanContextValid)(X))return this._root.shouldSample(A,Q,B,Y,J,C);if(X.isRemote){if(X.traceFlags&$O.TraceFlags.SAMPLED)return this._remoteParentSampled.shouldSample(A,Q,B,Y,J,C);return this._remoteParentNotSampled.shouldSample(A,Q,B,Y,J,C)}if(X.traceFlags&$O.TraceFlags.SAMPLED)return this._localParentSampled.shouldSample(A,Q,B,Y,J,C);return this._localParentNotSampled.shouldSample(A,Q,B,Y,J,C)}toString(){return`ParentBased{root=${this._root.toString()}, remoteParentSampled=${this._remoteParentSampled.toString()}, remoteParentNotSampled=${this._remoteParentNotSampled.toString()}, localParentSampled=${this._localParentSampled.toString()}, localParentNotSampled=${this._localParentNotSampled.toString()}}`}}EkA.ParentBasedSampler=UkA});var NkA=R((HkA)=>{Object.defineProperty(HkA,"__esModule",{value:!0});HkA.TraceIdRatioBasedSampler=void 0;var Sl=yA();class IkA{constructor(A=0){this._ratio=A,this._ratio=this._normalize(A),this._upperBound=Math.floor(this._ratio*4294967295)}shouldSample(A,Q){return{decision:(0,Sl.isValidTraceId)(Q)&&this._accumulate(Q)=1?1:A<=0?0:A}_accumulate(A){let Q=0;for(let B=0;B>>0}return Q}}HkA.TraceIdRatioBasedSampler=IkA});var jkA=R((RkA)=>{Object.defineProperty(RkA,"__esModule",{value:!0});RkA.isPlainObject=void 0;var LwB="[object Object]",qwB="[object Null]",MwB="[object Undefined]",zwB=Function.prototype,LkA=zwB.toString,RwB=LkA.call(Object),wwB=jwB(Object.getPrototypeOf,Object),qkA=Object.prototype,MkA=qkA.hasOwnProperty,B$=Symbol?Symbol.toStringTag:void 0,zkA=qkA.toString;function jwB(A,Q){return function(B){return A(Q(B))}}function OwB(A){if(!PwB(A)||TwB(A)!==LwB)return!1;let Q=wwB(A);if(Q===null)return!0;let B=MkA.call(Q,"constructor")&&Q.constructor;return typeof B=="function"&&B instanceof B&&LkA.call(B)===RwB}RkA.isPlainObject=OwB;function PwB(A){return A!=null&&typeof A=="object"}function TwB(A){if(A==null)return A===void 0?MwB:qwB;return B$&&B$ in Object(A)?SwB(A):kwB(A)}function SwB(A){let Q=MkA.call(A,B$),B=A[B$],Y=!1;try{A[B$]=void 0,Y=!0}catch(C){}let J=zkA.call(A);if(Y)if(Q)A[B$]=B;else delete A[B$];return J}function kwB(A){return zkA.call(A)}});var vkA=R((kkA)=>{Object.defineProperty(kkA,"__esModule",{value:!0});kkA.merge=void 0;var OkA=jkA(),_wB=20;function vwB(...A){let Q=A.shift(),B=new WeakMap;while(A.length>0)Q=TkA(Q,A.shift(),0,B);return Q}kkA.merge=vwB;function kl(A){if(EO(A))return A.slice();return A}function TkA(A,Q,B=0,Y){let J;if(B>_wB)return;if(B++,UO(A)||UO(Q)||SkA(Q))J=kl(Q);else if(EO(A)){if(J=A.slice(),EO(Q))for(let C=0,X=Q.length;C"u")delete J[W];else J[W]=F;else{let Z=J[W],U=F;if(PkA(A,W,Y)||PkA(Q,W,Y))delete J[W];else{if(rN(Z)&&rN(U)){let $=Y.get(Z)||[],E=Y.get(U)||[];$.push({obj:A,key:W}),E.push({obj:Q,key:W}),Y.set(Z,$),Y.set(U,E)}J[W]=TkA(J[W],F,B,Y)}}}}else J=Q;return J}function PkA(A,Q,B){let Y=B.get(A[Q])||[];for(let J=0,C=Y.length;J"u"||A instanceof Date||A instanceof RegExp||A===null}function ywB(A,Q){if(!(0,OkA.isPlainObject)(A)||!(0,OkA.isPlainObject)(Q))return!1;return!0}});var hkA=R((ykA)=>{Object.defineProperty(ykA,"__esModule",{value:!0});ykA.callWithTimeout=ykA.TimeoutError=void 0;class KO extends Error{constructor(A){super(A);Object.setPrototypeOf(this,KO.prototype)}}ykA.TimeoutError=KO;function gwB(A,Q){let B,Y=new Promise(function(C,X){B=setTimeout(function(){X(new KO("Operation timed out."))},Q)});return Promise.race([A,Y]).then((J)=>{return clearTimeout(B),J},(J)=>{throw clearTimeout(B),J})}ykA.callWithTimeout=gwB});var mkA=R((fkA)=>{Object.defineProperty(fkA,"__esModule",{value:!0});fkA.isUrlIgnored=fkA.urlMatches=void 0;function xkA(A,Q){if(typeof Q==="string")return A===Q;else return!!A.match(Q)}fkA.urlMatches=xkA;function xwB(A,Q){if(!Q)return!1;for(let B of Q)if(xkA(A,B))return!0;return!1}fkA.isUrlIgnored=xwB});var ckA=R((ukA)=>{Object.defineProperty(ukA,"__esModule",{value:!0});ukA.isWrapped=void 0;function bwB(A){return typeof A==="function"&&typeof A.__original==="function"&&typeof A.__unwrap==="function"&&A.__wrapped===!0}ukA.isWrapped=bwB});var nkA=R((pkA)=>{Object.defineProperty(pkA,"__esModule",{value:!0});pkA.Deferred=void 0;class lkA{constructor(){this._promise=new Promise((A,Q)=>{this._resolve=A,this._reject=Q})}get promise(){return this._promise}resolve(A){this._resolve(A)}reject(A){this._reject(A)}}pkA.Deferred=lkA});var okA=R((rkA)=>{Object.defineProperty(rkA,"__esModule",{value:!0});rkA.BindOnceFuture=void 0;var mwB=nkA();class skA{constructor(A,Q){this._callback=A,this._that=Q,this._isCalled=!1,this._deferred=new mwB.Deferred}get isCalled(){return this._isCalled}get promise(){return this._deferred.promise}call(...A){if(!this._isCalled){this._isCalled=!0;try{Promise.resolve(this._callback.call(this._that,...A)).then((Q)=>this._deferred.resolve(Q),(Q)=>this._deferred.reject(Q))}catch(Q){this._deferred.reject(Q)}}return this._deferred.promise}}rkA.BindOnceFuture=skA});var Q_A=R((ekA)=>{Object.defineProperty(ekA,"__esModule",{value:!0});ekA._export=void 0;var tkA=yA(),uwB=iN();function dwB(A,Q){return new Promise((B)=>{tkA.context.with((0,uwB.suppressTracing)(tkA.context.active()),()=>{A.export(Q,(Y)=>{B(Y)})})})}ekA._export=dwB});var MB=R((sA)=>{Object.defineProperty(sA,"__esModule",{value:!0});sA.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT=sA.DEFAULT_ATTRIBUTE_COUNT_LIMIT=sA.TraceState=sA.unsuppressTracing=sA.suppressTracing=sA.isTracingSuppressed=sA.TraceIdRatioBasedSampler=sA.ParentBasedSampler=sA.AlwaysOnSampler=sA.AlwaysOffSampler=sA.setRPCMetadata=sA.getRPCMetadata=sA.deleteRPCMetadata=sA.RPCType=sA.parseTraceParent=sA.W3CTraceContextPropagator=sA.TRACE_STATE_HEADER=sA.TRACE_PARENT_HEADER=sA.CompositePropagator=sA.unrefTimer=sA.otperformance=sA.hexToBase64=sA.getEnvWithoutDefaults=sA.getEnv=sA._globalThis=sA.SDK_INFO=sA.RandomIdGenerator=sA.baggageUtils=sA.ExportResultCode=sA.hexToBinary=sA.timeInputToHrTime=sA.millisToHrTime=sA.isTimeInputHrTime=sA.isTimeInput=sA.hrTimeToTimeStamp=sA.hrTimeToNanoseconds=sA.hrTimeToMilliseconds=sA.hrTimeToMicroseconds=sA.hrTimeDuration=sA.hrTime=sA.getTimeOrigin=sA.addHrTimes=sA.loggingErrorHandler=sA.setGlobalErrorHandler=sA.globalErrorHandler=sA.sanitizeAttributes=sA.isAttributeValue=sA.isAttributeKey=sA.AnchoredClock=sA.W3CBaggagePropagator=void 0;sA.internal=sA.VERSION=sA.BindOnceFuture=sA.isWrapped=sA.urlMatches=sA.isUrlIgnored=sA.callWithTimeout=sA.TimeoutError=sA.TracesSamplerValues=sA.merge=sA.parseEnvironment=sA.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT=sA.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT=sA.DEFAULT_ENVIRONMENT=void 0;var cwB=czA();Object.defineProperty(sA,"W3CBaggagePropagator",{enumerable:!0,get:function(){return cwB.W3CBaggagePropagator}});var lwB=nzA();Object.defineProperty(sA,"AnchoredClock",{enumerable:!0,get:function(){return lwB.AnchoredClock}});var _l=A2A();Object.defineProperty(sA,"isAttributeKey",{enumerable:!0,get:function(){return _l.isAttributeKey}});Object.defineProperty(sA,"isAttributeValue",{enumerable:!0,get:function(){return _l.isAttributeValue}});Object.defineProperty(sA,"sanitizeAttributes",{enumerable:!0,get:function(){return _l.sanitizeAttributes}});var B_A=Zl();Object.defineProperty(sA,"globalErrorHandler",{enumerable:!0,get:function(){return B_A.globalErrorHandler}});Object.defineProperty(sA,"setGlobalErrorHandler",{enumerable:!0,get:function(){return B_A.setGlobalErrorHandler}});var pwB=Fl();Object.defineProperty(sA,"loggingErrorHandler",{enumerable:!0,get:function(){return pwB.loggingErrorHandler}});var x5=vSA();Object.defineProperty(sA,"addHrTimes",{enumerable:!0,get:function(){return x5.addHrTimes}});Object.defineProperty(sA,"getTimeOrigin",{enumerable:!0,get:function(){return x5.getTimeOrigin}});Object.defineProperty(sA,"hrTime",{enumerable:!0,get:function(){return x5.hrTime}});Object.defineProperty(sA,"hrTimeDuration",{enumerable:!0,get:function(){return x5.hrTimeDuration}});Object.defineProperty(sA,"hrTimeToMicroseconds",{enumerable:!0,get:function(){return x5.hrTimeToMicroseconds}});Object.defineProperty(sA,"hrTimeToMilliseconds",{enumerable:!0,get:function(){return x5.hrTimeToMilliseconds}});Object.defineProperty(sA,"hrTimeToNanoseconds",{enumerable:!0,get:function(){return x5.hrTimeToNanoseconds}});Object.defineProperty(sA,"hrTimeToTimeStamp",{enumerable:!0,get:function(){return x5.hrTimeToTimeStamp}});Object.defineProperty(sA,"isTimeInput",{enumerable:!0,get:function(){return x5.isTimeInput}});Object.defineProperty(sA,"isTimeInputHrTime",{enumerable:!0,get:function(){return x5.isTimeInputHrTime}});Object.defineProperty(sA,"millisToHrTime",{enumerable:!0,get:function(){return x5.millisToHrTime}});Object.defineProperty(sA,"timeInputToHrTime",{enumerable:!0,get:function(){return x5.timeInputToHrTime}});var iwB=Vl();Object.defineProperty(sA,"hexToBinary",{enumerable:!0,get:function(){return iwB.hexToBinary}});var nwB=gSA();Object.defineProperty(sA,"ExportResultCode",{enumerable:!0,get:function(){return nwB.ExportResultCode}});var VO=Xl();sA.baggageUtils={getKeyPairs:VO.getKeyPairs,serializeKeyPairs:VO.serializeKeyPairs,parseKeyPairsIntoRecord:VO.parseKeyPairsIntoRecord,parsePairKeyValue:VO.parsePairKeyValue};var EW=Dl();Object.defineProperty(sA,"RandomIdGenerator",{enumerable:!0,get:function(){return EW.RandomIdGenerator}});Object.defineProperty(sA,"SDK_INFO",{enumerable:!0,get:function(){return EW.SDK_INFO}});Object.defineProperty(sA,"_globalThis",{enumerable:!0,get:function(){return EW._globalThis}});Object.defineProperty(sA,"getEnv",{enumerable:!0,get:function(){return EW.getEnv}});Object.defineProperty(sA,"getEnvWithoutDefaults",{enumerable:!0,get:function(){return EW.getEnvWithoutDefaults}});Object.defineProperty(sA,"hexToBase64",{enumerable:!0,get:function(){return EW.hexToBase64}});Object.defineProperty(sA,"otperformance",{enumerable:!0,get:function(){return EW.otperformance}});Object.defineProperty(sA,"unrefTimer",{enumerable:!0,get:function(){return EW.unrefTimer}});var swB=mSA();Object.defineProperty(sA,"CompositePropagator",{enumerable:!0,get:function(){return swB.CompositePropagator}});var IO=AkA();Object.defineProperty(sA,"TRACE_PARENT_HEADER",{enumerable:!0,get:function(){return IO.TRACE_PARENT_HEADER}});Object.defineProperty(sA,"TRACE_STATE_HEADER",{enumerable:!0,get:function(){return IO.TRACE_STATE_HEADER}});Object.defineProperty(sA,"W3CTraceContextPropagator",{enumerable:!0,get:function(){return IO.W3CTraceContextPropagator}});Object.defineProperty(sA,"parseTraceParent",{enumerable:!0,get:function(){return IO.parseTraceParent}});var HO=JkA();Object.defineProperty(sA,"RPCType",{enumerable:!0,get:function(){return HO.RPCType}});Object.defineProperty(sA,"deleteRPCMetadata",{enumerable:!0,get:function(){return HO.deleteRPCMetadata}});Object.defineProperty(sA,"getRPCMetadata",{enumerable:!0,get:function(){return HO.getRPCMetadata}});Object.defineProperty(sA,"setRPCMetadata",{enumerable:!0,get:function(){return HO.setRPCMetadata}});var rwB=Ol();Object.defineProperty(sA,"AlwaysOffSampler",{enumerable:!0,get:function(){return rwB.AlwaysOffSampler}});var awB=Pl();Object.defineProperty(sA,"AlwaysOnSampler",{enumerable:!0,get:function(){return awB.AlwaysOnSampler}});var owB=VkA();Object.defineProperty(sA,"ParentBasedSampler",{enumerable:!0,get:function(){return owB.ParentBasedSampler}});var twB=NkA();Object.defineProperty(sA,"TraceIdRatioBasedSampler",{enumerable:!0,get:function(){return twB.TraceIdRatioBasedSampler}});var vl=iN();Object.defineProperty(sA,"isTracingSuppressed",{enumerable:!0,get:function(){return vl.isTracingSuppressed}});Object.defineProperty(sA,"suppressTracing",{enumerable:!0,get:function(){return vl.suppressTracing}});Object.defineProperty(sA,"unsuppressTracing",{enumerable:!0,get:function(){return vl.unsuppressTracing}});var ewB=wl();Object.defineProperty(sA,"TraceState",{enumerable:!0,get:function(){return ewB.TraceState}});var QK=El();Object.defineProperty(sA,"DEFAULT_ATTRIBUTE_COUNT_LIMIT",{enumerable:!0,get:function(){return QK.DEFAULT_ATTRIBUTE_COUNT_LIMIT}});Object.defineProperty(sA,"DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT",{enumerable:!0,get:function(){return QK.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT}});Object.defineProperty(sA,"DEFAULT_ENVIRONMENT",{enumerable:!0,get:function(){return QK.DEFAULT_ENVIRONMENT}});Object.defineProperty(sA,"DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT",{enumerable:!0,get:function(){return QK.DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT}});Object.defineProperty(sA,"DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT",{enumerable:!0,get:function(){return QK.DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT}});Object.defineProperty(sA,"parseEnvironment",{enumerable:!0,get:function(){return QK.parseEnvironment}});var AjB=vkA();Object.defineProperty(sA,"merge",{enumerable:!0,get:function(){return AjB.merge}});var QjB=Ul();Object.defineProperty(sA,"TracesSamplerValues",{enumerable:!0,get:function(){return QjB.TracesSamplerValues}});var Y_A=hkA();Object.defineProperty(sA,"TimeoutError",{enumerable:!0,get:function(){return Y_A.TimeoutError}});Object.defineProperty(sA,"callWithTimeout",{enumerable:!0,get:function(){return Y_A.callWithTimeout}});var J_A=mkA();Object.defineProperty(sA,"isUrlIgnored",{enumerable:!0,get:function(){return J_A.isUrlIgnored}});Object.defineProperty(sA,"urlMatches",{enumerable:!0,get:function(){return J_A.urlMatches}});var BjB=ckA();Object.defineProperty(sA,"isWrapped",{enumerable:!0,get:function(){return BjB.isWrapped}});var YjB=okA();Object.defineProperty(sA,"BindOnceFuture",{enumerable:!0,get:function(){return YjB.BindOnceFuture}});var JjB=Il();Object.defineProperty(sA,"VERSION",{enumerable:!0,get:function(){return JjB.VERSION}});var CjB=Q_A();sA.internal={_export:CjB._export}});var aN=R((lvY,X_A)=>{var WjB=Number.MAX_SAFE_INTEGER||9007199254740991,FjB=["major","premajor","minor","preminor","patch","prepatch","prerelease"];X_A.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:16,MAX_SAFE_BUILD_LENGTH:250,MAX_SAFE_INTEGER:WjB,RELEASE_TYPES:FjB,SEMVER_SPEC_VERSION:"2.0.0",FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var oN=R((pvY,G_A)=>{var ZjB=typeof process==="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...A)=>console.error("SEMVER",...A):()=>{};G_A.exports=ZjB});var BK=R(($X,W_A)=>{var{MAX_SAFE_COMPONENT_LENGTH:yl,MAX_SAFE_BUILD_LENGTH:$jB,MAX_LENGTH:UjB}=aN(),EjB=oN();$X=W_A.exports={};var KjB=$X.re=[],VjB=$X.safeRe=[],lA=$X.src=[],IjB=$X.safeSrc=[],pA=$X.t={},HjB=0,gl="[a-zA-Z0-9-]",DjB=[["\\s",1],["\\d",UjB],[gl,$jB]],NjB=(A)=>{for(let[Q,B]of DjB)A=A.split(`${Q}*`).join(`${Q}{0,${B}}`).split(`${Q}+`).join(`${Q}{1,${B}}`);return A},dQ=(A,Q,B)=>{let Y=NjB(Q),J=HjB++;EjB(A,J,Q),pA[A]=J,lA[J]=Q,IjB[J]=Y,KjB[J]=new RegExp(Q,B?"g":void 0),VjB[J]=new RegExp(Y,B?"g":void 0)};dQ("NUMERICIDENTIFIER","0|[1-9]\\d*");dQ("NUMERICIDENTIFIERLOOSE","\\d+");dQ("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${gl}*`);dQ("MAINVERSION",`(${lA[pA.NUMERICIDENTIFIER]})\\.(${lA[pA.NUMERICIDENTIFIER]})\\.(${lA[pA.NUMERICIDENTIFIER]})`);dQ("MAINVERSIONLOOSE",`(${lA[pA.NUMERICIDENTIFIERLOOSE]})\\.(${lA[pA.NUMERICIDENTIFIERLOOSE]})\\.(${lA[pA.NUMERICIDENTIFIERLOOSE]})`);dQ("PRERELEASEIDENTIFIER",`(?:${lA[pA.NUMERICIDENTIFIER]}|${lA[pA.NONNUMERICIDENTIFIER]})`);dQ("PRERELEASEIDENTIFIERLOOSE",`(?:${lA[pA.NUMERICIDENTIFIERLOOSE]}|${lA[pA.NONNUMERICIDENTIFIER]})`);dQ("PRERELEASE",`(?:-(${lA[pA.PRERELEASEIDENTIFIER]}(?:\\.${lA[pA.PRERELEASEIDENTIFIER]})*))`);dQ("PRERELEASELOOSE",`(?:-?(${lA[pA.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${lA[pA.PRERELEASEIDENTIFIERLOOSE]})*))`);dQ("BUILDIDENTIFIER",`${gl}+`);dQ("BUILD",`(?:\\+(${lA[pA.BUILDIDENTIFIER]}(?:\\.${lA[pA.BUILDIDENTIFIER]})*))`);dQ("FULLPLAIN",`v?${lA[pA.MAINVERSION]}${lA[pA.PRERELEASE]}?${lA[pA.BUILD]}?`);dQ("FULL",`^${lA[pA.FULLPLAIN]}$`);dQ("LOOSEPLAIN",`[v=\\s]*${lA[pA.MAINVERSIONLOOSE]}${lA[pA.PRERELEASELOOSE]}?${lA[pA.BUILD]}?`);dQ("LOOSE",`^${lA[pA.LOOSEPLAIN]}$`);dQ("GTLT","((?:<|>)?=?)");dQ("XRANGEIDENTIFIERLOOSE",`${lA[pA.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);dQ("XRANGEIDENTIFIER",`${lA[pA.NUMERICIDENTIFIER]}|x|X|\\*`);dQ("XRANGEPLAIN",`[v=\\s]*(${lA[pA.XRANGEIDENTIFIER]})(?:\\.(${lA[pA.XRANGEIDENTIFIER]})(?:\\.(${lA[pA.XRANGEIDENTIFIER]})(?:${lA[pA.PRERELEASE]})?${lA[pA.BUILD]}?)?)?`);dQ("XRANGEPLAINLOOSE",`[v=\\s]*(${lA[pA.XRANGEIDENTIFIERLOOSE]})(?:\\.(${lA[pA.XRANGEIDENTIFIERLOOSE]})(?:\\.(${lA[pA.XRANGEIDENTIFIERLOOSE]})(?:${lA[pA.PRERELEASELOOSE]})?${lA[pA.BUILD]}?)?)?`);dQ("XRANGE",`^${lA[pA.GTLT]}\\s*${lA[pA.XRANGEPLAIN]}$`);dQ("XRANGELOOSE",`^${lA[pA.GTLT]}\\s*${lA[pA.XRANGEPLAINLOOSE]}$`);dQ("COERCEPLAIN",`(^|[^\\d])(\\d{1,${yl}})(?:\\.(\\d{1,${yl}}))?(?:\\.(\\d{1,${yl}}))?`);dQ("COERCE",`${lA[pA.COERCEPLAIN]}(?:$|[^\\d])`);dQ("COERCEFULL",lA[pA.COERCEPLAIN]+`(?:${lA[pA.PRERELEASE]})?(?:${lA[pA.BUILD]})?(?:$|[^\\d])`);dQ("COERCERTL",lA[pA.COERCE],!0);dQ("COERCERTLFULL",lA[pA.COERCEFULL],!0);dQ("LONETILDE","(?:~>?)");dQ("TILDETRIM",`(\\s*)${lA[pA.LONETILDE]}\\s+`,!0);$X.tildeTrimReplace="$1~";dQ("TILDE",`^${lA[pA.LONETILDE]}${lA[pA.XRANGEPLAIN]}$`);dQ("TILDELOOSE",`^${lA[pA.LONETILDE]}${lA[pA.XRANGEPLAINLOOSE]}$`);dQ("LONECARET","(?:\\^)");dQ("CARETTRIM",`(\\s*)${lA[pA.LONECARET]}\\s+`,!0);$X.caretTrimReplace="$1^";dQ("CARET",`^${lA[pA.LONECARET]}${lA[pA.XRANGEPLAIN]}$`);dQ("CARETLOOSE",`^${lA[pA.LONECARET]}${lA[pA.XRANGEPLAINLOOSE]}$`);dQ("COMPARATORLOOSE",`^${lA[pA.GTLT]}\\s*(${lA[pA.LOOSEPLAIN]})$|^$`);dQ("COMPARATOR",`^${lA[pA.GTLT]}\\s*(${lA[pA.FULLPLAIN]})$|^$`);dQ("COMPARATORTRIM",`(\\s*)${lA[pA.GTLT]}\\s*(${lA[pA.LOOSEPLAIN]}|${lA[pA.XRANGEPLAIN]})`,!0);$X.comparatorTrimReplace="$1$2$3";dQ("HYPHENRANGE",`^\\s*(${lA[pA.XRANGEPLAIN]})\\s+-\\s+(${lA[pA.XRANGEPLAIN]})\\s*$`);dQ("HYPHENRANGELOOSE",`^\\s*(${lA[pA.XRANGEPLAINLOOSE]})\\s+-\\s+(${lA[pA.XRANGEPLAINLOOSE]})\\s*$`);dQ("STAR","(<|>)?=?\\s*\\*");dQ("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");dQ("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var DO=R((ivY,F_A)=>{var LjB=Object.freeze({loose:!0}),qjB=Object.freeze({}),MjB=(A)=>{if(!A)return qjB;if(typeof A!=="object")return LjB;return A};F_A.exports=MjB});var hl=R((nvY,U_A)=>{var Z_A=/^[0-9]+$/,$_A=(A,Q)=>{let B=Z_A.test(A),Y=Z_A.test(Q);if(B&&Y)A=+A,Q=+Q;return A===Q?0:B&&!Y?-1:Y&&!B?1:A$_A(Q,A);U_A.exports={compareIdentifiers:$_A,rcompareIdentifiers:zjB}});var kJ=R((svY,I_A)=>{var NO=oN(),{MAX_LENGTH:E_A,MAX_SAFE_INTEGER:LO}=aN(),{safeRe:K_A,safeSrc:V_A,t:qO}=BK(),RjB=DO(),{compareIdentifiers:YK}=hl();class C1{constructor(A,Q){if(Q=RjB(Q),A instanceof C1)if(A.loose===!!Q.loose&&A.includePrerelease===!!Q.includePrerelease)return A;else A=A.version;else if(typeof A!=="string")throw TypeError(`Invalid version. Must be a string. Got type "${typeof A}".`);if(A.length>E_A)throw TypeError(`version is longer than ${E_A} characters`);NO("SemVer",A,Q),this.options=Q,this.loose=!!Q.loose,this.includePrerelease=!!Q.includePrerelease;let B=A.trim().match(Q.loose?K_A[qO.LOOSE]:K_A[qO.FULL]);if(!B)throw TypeError(`Invalid Version: ${A}`);if(this.raw=A,this.major=+B[1],this.minor=+B[2],this.patch=+B[3],this.major>LO||this.major<0)throw TypeError("Invalid major version");if(this.minor>LO||this.minor<0)throw TypeError("Invalid minor version");if(this.patch>LO||this.patch<0)throw TypeError("Invalid patch version");if(!B[4])this.prerelease=[];else this.prerelease=B[4].split(".").map((Y)=>{if(/^[0-9]+$/.test(Y)){let J=+Y;if(J>=0&&J=0)if(typeof this.prerelease[J]==="number")this.prerelease[J]++,J=-2;if(J===-1){if(Q===this.prerelease.join(".")&&B===!1)throw Error("invalid increment argument: identifier already exists");this.prerelease.push(Y)}}if(Q){let J=[Q,Y];if(B===!1)J=[Q];if(YK(this.prerelease[0],Q)===0){if(isNaN(this.prerelease[1]))this.prerelease=J}else this.prerelease=J}break}default:throw Error(`invalid increment argument: ${A}`)}if(this.raw=this.format(),this.build.length)this.raw+=`+${this.build.join(".")}`;return this}}I_A.exports=C1});var Y$=R((rvY,D_A)=>{var H_A=kJ(),wjB=(A,Q,B=!1)=>{if(A instanceof H_A)return A;try{return new H_A(A,Q)}catch(Y){if(!B)return null;throw Y}};D_A.exports=wjB});var L_A=R((avY,N_A)=>{var jjB=Y$(),OjB=(A,Q)=>{let B=jjB(A,Q);return B?B.version:null};N_A.exports=OjB});var M_A=R((ovY,q_A)=>{var PjB=Y$(),TjB=(A,Q)=>{let B=PjB(A.trim().replace(/^[=v]+/,""),Q);return B?B.version:null};q_A.exports=TjB});var w_A=R((tvY,R_A)=>{var z_A=kJ(),SjB=(A,Q,B,Y,J)=>{if(typeof B==="string")J=Y,Y=B,B=void 0;try{return new z_A(A instanceof z_A?A.version:A,B).inc(Q,Y,J).version}catch(C){return null}};R_A.exports=SjB});var P_A=R((evY,O_A)=>{var j_A=Y$(),kjB=(A,Q)=>{let B=j_A(A,null,!0),Y=j_A(Q,null,!0),J=B.compare(Y);if(J===0)return null;let C=J>0,X=C?B:Y,G=C?Y:B,W=!!X.prerelease.length;if(!!G.prerelease.length&&!W){if(!G.patch&&!G.minor)return"major";if(G.compareMain(X)===0){if(G.minor&&!G.patch)return"minor";return"patch"}}let Z=W?"pre":"";if(B.major!==Y.major)return Z+"major";if(B.minor!==Y.minor)return Z+"minor";if(B.patch!==Y.patch)return Z+"patch";return"prerelease"};O_A.exports=kjB});var S_A=R((AyY,T_A)=>{var _jB=kJ(),vjB=(A,Q)=>new _jB(A,Q).major;T_A.exports=vjB});var __A=R((QyY,k_A)=>{var yjB=kJ(),gjB=(A,Q)=>new yjB(A,Q).minor;k_A.exports=gjB});var y_A=R((ByY,v_A)=>{var hjB=kJ(),xjB=(A,Q)=>new hjB(A,Q).patch;v_A.exports=xjB});var h_A=R((YyY,g_A)=>{var fjB=Y$(),bjB=(A,Q)=>{let B=fjB(A,Q);return B&&B.prerelease.length?B.prerelease:null};g_A.exports=bjB});var f5=R((JyY,f_A)=>{var x_A=kJ(),mjB=(A,Q,B)=>new x_A(A,B).compare(new x_A(Q,B));f_A.exports=mjB});var m_A=R((CyY,b_A)=>{var ujB=f5(),djB=(A,Q,B)=>ujB(Q,A,B);b_A.exports=djB});var d_A=R((XyY,u_A)=>{var cjB=f5(),ljB=(A,Q)=>cjB(A,Q,!0);u_A.exports=ljB});var MO=R((GyY,l_A)=>{var c_A=kJ(),pjB=(A,Q,B)=>{let Y=new c_A(A,B),J=new c_A(Q,B);return Y.compare(J)||Y.compareBuild(J)};l_A.exports=pjB});var i_A=R((WyY,p_A)=>{var ijB=MO(),njB=(A,Q)=>A.sort((B,Y)=>ijB(B,Y,Q));p_A.exports=njB});var s_A=R((FyY,n_A)=>{var sjB=MO(),rjB=(A,Q)=>A.sort((B,Y)=>sjB(Y,B,Q));n_A.exports=rjB});var tN=R((ZyY,r_A)=>{var ajB=f5(),ojB=(A,Q,B)=>ajB(A,Q,B)>0;r_A.exports=ojB});var zO=R(($yY,a_A)=>{var tjB=f5(),ejB=(A,Q,B)=>tjB(A,Q,B)<0;a_A.exports=ejB});var xl=R((UyY,o_A)=>{var AOB=f5(),QOB=(A,Q,B)=>AOB(A,Q,B)===0;o_A.exports=QOB});var fl=R((EyY,t_A)=>{var BOB=f5(),YOB=(A,Q,B)=>BOB(A,Q,B)!==0;t_A.exports=YOB});var RO=R((KyY,e_A)=>{var JOB=f5(),COB=(A,Q,B)=>JOB(A,Q,B)>=0;e_A.exports=COB});var wO=R((VyY,AvA)=>{var XOB=f5(),GOB=(A,Q,B)=>XOB(A,Q,B)<=0;AvA.exports=GOB});var bl=R((IyY,QvA)=>{var WOB=xl(),FOB=fl(),ZOB=tN(),$OB=RO(),UOB=zO(),EOB=wO(),KOB=(A,Q,B,Y)=>{switch(Q){case"===":if(typeof A==="object")A=A.version;if(typeof B==="object")B=B.version;return A===B;case"!==":if(typeof A==="object")A=A.version;if(typeof B==="object")B=B.version;return A!==B;case"":case"=":case"==":return WOB(A,B,Y);case"!=":return FOB(A,B,Y);case">":return ZOB(A,B,Y);case">=":return $OB(A,B,Y);case"<":return UOB(A,B,Y);case"<=":return EOB(A,B,Y);default:throw TypeError(`Invalid operator: ${Q}`)}};QvA.exports=KOB});var YvA=R((HyY,BvA)=>{var VOB=kJ(),IOB=Y$(),{safeRe:jO,t:OO}=BK(),HOB=(A,Q)=>{if(A instanceof VOB)return A;if(typeof A==="number")A=String(A);if(typeof A!=="string")return null;Q=Q||{};let B=null;if(!Q.rtl)B=A.match(Q.includePrerelease?jO[OO.COERCEFULL]:jO[OO.COERCE]);else{let W=Q.includePrerelease?jO[OO.COERCERTLFULL]:jO[OO.COERCERTL],F;while((F=W.exec(A))&&(!B||B.index+B[0].length!==A.length)){if(!B||F.index+F[0].length!==B.index+B[0].length)B=F;W.lastIndex=F.index+F[1].length+F[2].length}W.lastIndex=-1}if(B===null)return null;let Y=B[2],J=B[3]||"0",C=B[4]||"0",X=Q.includePrerelease&&B[5]?`-${B[5]}`:"",G=Q.includePrerelease&&B[6]?`+${B[6]}`:"";return IOB(`${Y}.${J}.${C}${X}${G}`,Q)};BvA.exports=HOB});var XvA=R((DyY,CvA)=>{class JvA{constructor(){this.max=1000,this.map=new Map}get(A){let Q=this.map.get(A);if(Q===void 0)return;else return this.map.delete(A),this.map.set(A,Q),Q}delete(A){return this.map.delete(A)}set(A,Q){if(!this.delete(A)&&Q!==void 0){if(this.map.size>=this.max){let Y=this.map.keys().next().value;this.delete(Y)}this.map.set(A,Q)}return this}}CvA.exports=JvA});var b5=R((NyY,ZvA)=>{var DOB=/\s+/g;class eN{constructor(A,Q){if(Q=LOB(Q),A instanceof eN)if(A.loose===!!Q.loose&&A.includePrerelease===!!Q.includePrerelease)return A;else return new eN(A.raw,Q);if(A instanceof ml)return this.raw=A.value,this.set=[[A]],this.formatted=void 0,this;if(this.options=Q,this.loose=!!Q.loose,this.includePrerelease=!!Q.includePrerelease,this.raw=A.trim().replace(DOB," "),this.set=this.raw.split("||").map((B)=>this.parseRange(B.trim())).filter((B)=>B.length),!this.set.length)throw TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let B=this.set[0];if(this.set=this.set.filter((Y)=>!WvA(Y[0])),this.set.length===0)this.set=[B];else if(this.set.length>1){for(let Y of this.set)if(Y.length===1&&OOB(Y[0])){this.set=[Y];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let A=0;A0)this.formatted+="||";let Q=this.set[A];for(let B=0;B0)this.formatted+=" ";this.formatted+=Q[B].toString().trim()}}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(A){let B=((this.options.includePrerelease&&wOB)|(this.options.loose&&jOB))+":"+A,Y=GvA.get(B);if(Y)return Y;let J=this.options.loose,C=J?a9[K9.HYPHENRANGELOOSE]:a9[K9.HYPHENRANGE];A=A.replace(C,xOB(this.options.includePrerelease)),V0("hyphen replace",A),A=A.replace(a9[K9.COMPARATORTRIM],MOB),V0("comparator trim",A),A=A.replace(a9[K9.TILDETRIM],zOB),V0("tilde trim",A),A=A.replace(a9[K9.CARETTRIM],ROB),V0("caret trim",A);let X=A.split(" ").map((Z)=>POB(Z,this.options)).join(" ").split(/\s+/).map((Z)=>hOB(Z,this.options));if(J)X=X.filter((Z)=>{return V0("loose invalid filter",Z,this.options),!!Z.match(a9[K9.COMPARATORLOOSE])});V0("range list",X);let G=new Map,W=X.map((Z)=>new ml(Z,this.options));for(let Z of W){if(WvA(Z))return[Z];G.set(Z.value,Z)}if(G.size>1&&G.has(""))G.delete("");let F=[...G.values()];return GvA.set(B,F),F}intersects(A,Q){if(!(A instanceof eN))throw TypeError("a Range is required");return this.set.some((B)=>{return FvA(B,Q)&&A.set.some((Y)=>{return FvA(Y,Q)&&B.every((J)=>{return Y.every((C)=>{return J.intersects(C,Q)})})})})}test(A){if(!A)return!1;if(typeof A==="string")try{A=new qOB(A,this.options)}catch(Q){return!1}for(let Q=0;QA.value==="<0.0.0-0",OOB=(A)=>A.value==="",FvA=(A,Q)=>{let B=!0,Y=A.slice(),J=Y.pop();while(B&&Y.length)B=Y.every((C)=>{return J.intersects(C,Q)}),J=Y.pop();return B},POB=(A,Q)=>{return V0("comp",A,Q),A=kOB(A,Q),V0("caret",A),A=TOB(A,Q),V0("tildes",A),A=vOB(A,Q),V0("xrange",A),A=gOB(A,Q),V0("stars",A),A},V9=(A)=>!A||A.toLowerCase()==="x"||A==="*",TOB=(A,Q)=>{return A.trim().split(/\s+/).map((B)=>SOB(B,Q)).join(" ")},SOB=(A,Q)=>{let B=Q.loose?a9[K9.TILDELOOSE]:a9[K9.TILDE];return A.replace(B,(Y,J,C,X,G)=>{V0("tilde",A,Y,J,C,X,G);let W;if(V9(J))W="";else if(V9(C))W=`>=${J}.0.0 <${+J+1}.0.0-0`;else if(V9(X))W=`>=${J}.${C}.0 <${J}.${+C+1}.0-0`;else if(G)V0("replaceTilde pr",G),W=`>=${J}.${C}.${X}-${G} <${J}.${+C+1}.0-0`;else W=`>=${J}.${C}.${X} <${J}.${+C+1}.0-0`;return V0("tilde return",W),W})},kOB=(A,Q)=>{return A.trim().split(/\s+/).map((B)=>_OB(B,Q)).join(" ")},_OB=(A,Q)=>{V0("caret",A,Q);let B=Q.loose?a9[K9.CARETLOOSE]:a9[K9.CARET],Y=Q.includePrerelease?"-0":"";return A.replace(B,(J,C,X,G,W)=>{V0("caret",A,J,C,X,G,W);let F;if(V9(C))F="";else if(V9(X))F=`>=${C}.0.0${Y} <${+C+1}.0.0-0`;else if(V9(G))if(C==="0")F=`>=${C}.${X}.0${Y} <${C}.${+X+1}.0-0`;else F=`>=${C}.${X}.0${Y} <${+C+1}.0.0-0`;else if(W)if(V0("replaceCaret pr",W),C==="0")if(X==="0")F=`>=${C}.${X}.${G}-${W} <${C}.${X}.${+G+1}-0`;else F=`>=${C}.${X}.${G}-${W} <${C}.${+X+1}.0-0`;else F=`>=${C}.${X}.${G}-${W} <${+C+1}.0.0-0`;else if(V0("no pr"),C==="0")if(X==="0")F=`>=${C}.${X}.${G}${Y} <${C}.${X}.${+G+1}-0`;else F=`>=${C}.${X}.${G}${Y} <${C}.${+X+1}.0-0`;else F=`>=${C}.${X}.${G} <${+C+1}.0.0-0`;return V0("caret return",F),F})},vOB=(A,Q)=>{return V0("replaceXRanges",A,Q),A.split(/\s+/).map((B)=>yOB(B,Q)).join(" ")},yOB=(A,Q)=>{A=A.trim();let B=Q.loose?a9[K9.XRANGELOOSE]:a9[K9.XRANGE];return A.replace(B,(Y,J,C,X,G,W)=>{V0("xRange",A,Y,J,C,X,G,W);let F=V9(C),Z=F||V9(X),U=Z||V9(G),$=U;if(J==="="&&$)J="";if(W=Q.includePrerelease?"-0":"",F)if(J===">"||J==="<")Y="<0.0.0-0";else Y="*";else if(J&&$){if(Z)X=0;if(G=0,J===">")if(J=">=",Z)C=+C+1,X=0,G=0;else X=+X+1,G=0;else if(J==="<=")if(J="<",Z)C=+C+1;else X=+X+1;if(J==="<")W="-0";Y=`${J+C}.${X}.${G}${W}`}else if(Z)Y=`>=${C}.0.0${W} <${+C+1}.0.0-0`;else if(U)Y=`>=${C}.${X}.0${W} <${C}.${+X+1}.0-0`;return V0("xRange return",Y),Y})},gOB=(A,Q)=>{return V0("replaceStars",A,Q),A.trim().replace(a9[K9.STAR],"")},hOB=(A,Q)=>{return V0("replaceGTE0",A,Q),A.trim().replace(a9[Q.includePrerelease?K9.GTE0PRE:K9.GTE0],"")},xOB=(A)=>(Q,B,Y,J,C,X,G,W,F,Z,U,$)=>{if(V9(Y))B="";else if(V9(J))B=`>=${Y}.0.0${A?"-0":""}`;else if(V9(C))B=`>=${Y}.${J}.0${A?"-0":""}`;else if(X)B=`>=${B}`;else B=`>=${B}${A?"-0":""}`;if(V9(F))W="";else if(V9(Z))W=`<${+F+1}.0.0-0`;else if(V9(U))W=`<${F}.${+Z+1}.0-0`;else if($)W=`<=${F}.${Z}.${U}-${$}`;else if(A)W=`<${F}.${Z}.${+U+1}-0`;else W=`<=${W}`;return`${B} ${W}`.trim()},fOB=(A,Q,B)=>{for(let Y=0;Y0){let J=A[Y].semver;if(J.major===Q.major&&J.minor===Q.minor&&J.patch===Q.patch)return!0}}return!1}return!0}});var AL=R((LyY,IvA)=>{var QL=Symbol("SemVer ANY");class PO{static get ANY(){return QL}constructor(A,Q){if(Q=$vA(Q),A instanceof PO)if(A.loose===!!Q.loose)return A;else A=A.value;if(A=A.trim().split(/\s+/).join(" "),dl("comparator",A,Q),this.options=Q,this.loose=!!Q.loose,this.parse(A),this.semver===QL)this.value="";else this.value=this.operator+this.semver.version;dl("comp",this)}parse(A){let Q=this.options.loose?UvA[EvA.COMPARATORLOOSE]:UvA[EvA.COMPARATOR],B=A.match(Q);if(!B)throw TypeError(`Invalid comparator: ${A}`);if(this.operator=B[1]!==void 0?B[1]:"",this.operator==="=")this.operator="";if(!B[2])this.semver=QL;else this.semver=new KvA(B[2],this.options.loose)}toString(){return this.value}test(A){if(dl("Comparator.test",A,this.options.loose),this.semver===QL||A===QL)return!0;if(typeof A==="string")try{A=new KvA(A,this.options)}catch(Q){return!1}return ul(A,this.operator,this.semver,this.options)}intersects(A,Q){if(!(A instanceof PO))throw TypeError("a Comparator is required");if(this.operator===""){if(this.value==="")return!0;return new VvA(A.value,Q).test(this.value)}else if(A.operator===""){if(A.value==="")return!0;return new VvA(this.value,Q).test(A.semver)}if(Q=$vA(Q),Q.includePrerelease&&(this.value==="<0.0.0-0"||A.value==="<0.0.0-0"))return!1;if(!Q.includePrerelease&&(this.value.startsWith("<0.0.0")||A.value.startsWith("<0.0.0")))return!1;if(this.operator.startsWith(">")&&A.operator.startsWith(">"))return!0;if(this.operator.startsWith("<")&&A.operator.startsWith("<"))return!0;if(this.semver.version===A.semver.version&&this.operator.includes("=")&&A.operator.includes("="))return!0;if(ul(this.semver,"<",A.semver,Q)&&this.operator.startsWith(">")&&A.operator.startsWith("<"))return!0;if(ul(this.semver,">",A.semver,Q)&&this.operator.startsWith("<")&&A.operator.startsWith(">"))return!0;return!1}}IvA.exports=PO;var $vA=DO(),{safeRe:UvA,t:EvA}=BK(),ul=bl(),dl=oN(),KvA=kJ(),VvA=b5()});var BL=R((qyY,HvA)=>{var bOB=b5(),mOB=(A,Q,B)=>{try{Q=new bOB(Q,B)}catch(Y){return!1}return Q.test(A)};HvA.exports=mOB});var NvA=R((MyY,DvA)=>{var uOB=b5(),dOB=(A,Q)=>new uOB(A,Q).set.map((B)=>B.map((Y)=>Y.value).join(" ").trim().split(" "));DvA.exports=dOB});var qvA=R((zyY,LvA)=>{var cOB=kJ(),lOB=b5(),pOB=(A,Q,B)=>{let Y=null,J=null,C=null;try{C=new lOB(Q,B)}catch(X){return null}return A.forEach((X)=>{if(C.test(X)){if(!Y||J.compare(X)===-1)Y=X,J=new cOB(Y,B)}}),Y};LvA.exports=pOB});var zvA=R((RyY,MvA)=>{var iOB=kJ(),nOB=b5(),sOB=(A,Q,B)=>{let Y=null,J=null,C=null;try{C=new nOB(Q,B)}catch(X){return null}return A.forEach((X)=>{if(C.test(X)){if(!Y||J.compare(X)===1)Y=X,J=new iOB(Y,B)}}),Y};MvA.exports=sOB});var jvA=R((wyY,wvA)=>{var cl=kJ(),rOB=b5(),RvA=tN(),aOB=(A,Q)=>{A=new rOB(A,Q);let B=new cl("0.0.0");if(A.test(B))return B;if(B=new cl("0.0.0-0"),A.test(B))return B;B=null;for(let Y=0;Y{let G=new cl(X.semver.version);switch(X.operator){case">":if(G.prerelease.length===0)G.patch++;else G.prerelease.push(0);G.raw=G.format();case"":case">=":if(!C||RvA(G,C))C=G;break;case"<":case"<=":break;default:throw Error(`Unexpected operation: ${X.operator}`)}}),C&&(!B||RvA(B,C)))B=C}if(B&&A.test(B))return B;return null};wvA.exports=aOB});var PvA=R((jyY,OvA)=>{var oOB=b5(),tOB=(A,Q)=>{try{return new oOB(A,Q).range||"*"}catch(B){return null}};OvA.exports=tOB});var TO=R((OyY,_vA)=>{var eOB=kJ(),kvA=AL(),{ANY:APB}=kvA,QPB=b5(),BPB=BL(),TvA=tN(),SvA=zO(),YPB=wO(),JPB=RO(),CPB=(A,Q,B,Y)=>{A=new eOB(A,Y),Q=new QPB(Q,Y);let J,C,X,G,W;switch(B){case">":J=TvA,C=YPB,X=SvA,G=">",W=">=";break;case"<":J=SvA,C=JPB,X=TvA,G="<",W="<=";break;default:throw TypeError('Must provide a hilo val of "<" or ">"')}if(BPB(A,Q,Y))return!1;for(let F=0;F{if(E.semver===APB)E=new kvA(">=0.0.0");if(U=U||E,$=$||E,J(E.semver,U.semver,Y))U=E;else if(X(E.semver,$.semver,Y))$=E}),U.operator===G||U.operator===W)return!1;if((!$.operator||$.operator===G)&&C(A,$.semver))return!1;else if($.operator===W&&X(A,$.semver))return!1}return!0};_vA.exports=CPB});var yvA=R((PyY,vvA)=>{var XPB=TO(),GPB=(A,Q,B)=>XPB(A,Q,">",B);vvA.exports=GPB});var hvA=R((TyY,gvA)=>{var WPB=TO(),FPB=(A,Q,B)=>WPB(A,Q,"<",B);gvA.exports=FPB});var bvA=R((SyY,fvA)=>{var xvA=b5(),ZPB=(A,Q,B)=>{return A=new xvA(A,B),Q=new xvA(Q,B),A.intersects(Q,B)};fvA.exports=ZPB});var uvA=R((kyY,mvA)=>{var $PB=BL(),UPB=f5();mvA.exports=(A,Q,B)=>{let Y=[],J=null,C=null,X=A.sort((Z,U)=>UPB(Z,U,B));for(let Z of X)if($PB(Z,Q,B)){if(C=Z,!J)J=Z}else{if(C)Y.push([J,C]);C=null,J=null}if(J)Y.push([J,null]);let G=[];for(let[Z,U]of Y)if(Z===U)G.push(Z);else if(!U&&Z===X[0])G.push("*");else if(!U)G.push(`>=${Z}`);else if(Z===X[0])G.push(`<=${U}`);else G.push(`${Z} - ${U}`);let W=G.join(" || "),F=typeof Q.raw==="string"?Q.raw:String(Q);return W.length{var dvA=b5(),pl=AL(),{ANY:ll}=pl,YL=BL(),il=f5(),EPB=(A,Q,B={})=>{if(A===Q)return!0;A=new dvA(A,B),Q=new dvA(Q,B);let Y=!1;A:for(let J of A.set){for(let C of Q.set){let X=VPB(J,C,B);if(Y=Y||X!==null,X)continue A}if(Y)return!1}return!0},KPB=[new pl(">=0.0.0-0")],cvA=[new pl(">=0.0.0")],VPB=(A,Q,B)=>{if(A===Q)return!0;if(A.length===1&&A[0].semver===ll)if(Q.length===1&&Q[0].semver===ll)return!0;else if(B.includePrerelease)A=KPB;else A=cvA;if(Q.length===1&&Q[0].semver===ll)if(B.includePrerelease)return!0;else Q=cvA;let Y=new Set,J,C;for(let E of A)if(E.operator===">"||E.operator===">=")J=lvA(J,E,B);else if(E.operator==="<"||E.operator==="<=")C=pvA(C,E,B);else Y.add(E.semver);if(Y.size>1)return null;let X;if(J&&C){if(X=il(J.semver,C.semver,B),X>0)return null;else if(X===0&&(J.operator!==">="||C.operator!=="<="))return null}for(let E of Y){if(J&&!YL(E,String(J),B))return null;if(C&&!YL(E,String(C),B))return null;for(let K of Q)if(!YL(E,String(K),B))return!1;return!0}let G,W,F,Z,U=C&&!B.includePrerelease&&C.semver.prerelease.length?C.semver:!1,$=J&&!B.includePrerelease&&J.semver.prerelease.length?J.semver:!1;if(U&&U.prerelease.length===1&&C.operator==="<"&&U.prerelease[0]===0)U=!1;for(let E of Q){if(Z=Z||E.operator===">"||E.operator===">=",F=F||E.operator==="<"||E.operator==="<=",J){if($){if(E.semver.prerelease&&E.semver.prerelease.length&&E.semver.major===$.major&&E.semver.minor===$.minor&&E.semver.patch===$.patch)$=!1}if(E.operator===">"||E.operator===">="){if(G=lvA(J,E,B),G===E&&G!==J)return!1}else if(J.operator===">="&&!YL(J.semver,String(E),B))return!1}if(C){if(U){if(E.semver.prerelease&&E.semver.prerelease.length&&E.semver.major===U.major&&E.semver.minor===U.minor&&E.semver.patch===U.patch)U=!1}if(E.operator==="<"||E.operator==="<="){if(W=pvA(C,E,B),W===E&&W!==C)return!1}else if(C.operator==="<="&&!YL(C.semver,String(E),B))return!1}if(!E.operator&&(C||J)&&X!==0)return!1}if(J&&F&&!C&&X!==0)return!1;if(C&&Z&&!J&&X!==0)return!1;if($||U)return!1;return!0},lvA=(A,Q,B)=>{if(!A)return Q;let Y=il(A.semver,Q.semver,B);return Y>0?A:Y<0?Q:Q.operator===">"&&A.operator===">="?Q:A},pvA=(A,Q,B)=>{if(!A)return Q;let Y=il(A.semver,Q.semver,B);return Y<0?A:Y>0?Q:Q.operator==="<"&&A.operator==="<="?Q:A};ivA.exports=EPB});var ovA=R((vyY,avA)=>{var nl=BK(),svA=aN(),IPB=kJ(),rvA=hl(),HPB=Y$(),DPB=L_A(),NPB=M_A(),LPB=w_A(),qPB=P_A(),MPB=S_A(),zPB=__A(),RPB=y_A(),wPB=h_A(),jPB=f5(),OPB=m_A(),PPB=d_A(),TPB=MO(),SPB=i_A(),kPB=s_A(),_PB=tN(),vPB=zO(),yPB=xl(),gPB=fl(),hPB=RO(),xPB=wO(),fPB=bl(),bPB=YvA(),mPB=AL(),uPB=b5(),dPB=BL(),cPB=NvA(),lPB=qvA(),pPB=zvA(),iPB=jvA(),nPB=PvA(),sPB=TO(),rPB=yvA(),aPB=hvA(),oPB=bvA(),tPB=uvA(),ePB=nvA();avA.exports={parse:HPB,valid:DPB,clean:NPB,inc:LPB,diff:qPB,major:MPB,minor:zPB,patch:RPB,prerelease:wPB,compare:jPB,rcompare:OPB,compareLoose:PPB,compareBuild:TPB,sort:SPB,rsort:kPB,gt:_PB,lt:vPB,eq:yPB,neq:gPB,gte:hPB,lte:xPB,cmp:fPB,coerce:bPB,Comparator:mPB,Range:uPB,satisfies:dPB,toComparators:cPB,maxSatisfying:lPB,minSatisfying:pPB,minVersion:iPB,validRange:nPB,outside:sPB,gtr:rPB,ltr:aPB,intersects:oPB,simplifyRange:tPB,subset:ePB,SemVer:IPB,re:nl.re,src:nl.src,tokens:nl.t,SEMVER_SPEC_VERSION:svA.SEMVER_SPEC_VERSION,RELEASE_TYPES:svA.RELEASE_TYPES,compareIdentifiers:rvA.compareIdentifiers,rcompareIdentifiers:rvA.rcompareIdentifiers}});var AyA=R((tvA)=>{Object.defineProperty(tvA,"__esModule",{value:!0});tvA.VERSION=void 0;tvA.VERSION="0.57.2"});var ByA=R((QyA)=>{Object.defineProperty(QyA,"__esModule",{value:!0});QyA.SeverityNumber=void 0;var ATB;(function(A){A[A.UNSPECIFIED=0]="UNSPECIFIED",A[A.TRACE=1]="TRACE",A[A.TRACE2=2]="TRACE2",A[A.TRACE3=3]="TRACE3",A[A.TRACE4=4]="TRACE4",A[A.DEBUG=5]="DEBUG",A[A.DEBUG2=6]="DEBUG2",A[A.DEBUG3=7]="DEBUG3",A[A.DEBUG4=8]="DEBUG4",A[A.INFO=9]="INFO",A[A.INFO2=10]="INFO2",A[A.INFO3=11]="INFO3",A[A.INFO4=12]="INFO4",A[A.WARN=13]="WARN",A[A.WARN2=14]="WARN2",A[A.WARN3=15]="WARN3",A[A.WARN4=16]="WARN4",A[A.ERROR=17]="ERROR",A[A.ERROR2=18]="ERROR2",A[A.ERROR3=19]="ERROR3",A[A.ERROR4=20]="ERROR4",A[A.FATAL=21]="FATAL",A[A.FATAL2=22]="FATAL2",A[A.FATAL3=23]="FATAL3",A[A.FATAL4=24]="FATAL4"})(ATB=QyA.SeverityNumber||(QyA.SeverityNumber={}))});var SO=R((YyA)=>{Object.defineProperty(YyA,"__esModule",{value:!0});YyA.NOOP_LOGGER=YyA.NoopLogger=void 0;class rl{emit(A){}}YyA.NoopLogger=rl;YyA.NOOP_LOGGER=new rl});var kO=R((CyA)=>{Object.defineProperty(CyA,"__esModule",{value:!0});CyA.NOOP_LOGGER_PROVIDER=CyA.NoopLoggerProvider=void 0;var BTB=SO();class al{getLogger(A,Q,B){return new BTB.NoopLogger}}CyA.NoopLoggerProvider=al;CyA.NOOP_LOGGER_PROVIDER=new al});var ol=R((WyA)=>{Object.defineProperty(WyA,"__esModule",{value:!0});WyA.ProxyLogger=void 0;var JTB=SO();class GyA{constructor(A,Q,B,Y){this._provider=A,this.name=Q,this.version=B,this.options=Y}emit(A){this._getLogger().emit(A)}_getLogger(){if(this._delegate)return this._delegate;let A=this._provider.getDelegateLogger(this.name,this.version,this.options);if(!A)return JTB.NOOP_LOGGER;return this._delegate=A,this._delegate}}WyA.ProxyLogger=GyA});var tl=R(($yA)=>{Object.defineProperty($yA,"__esModule",{value:!0});$yA.ProxyLoggerProvider=void 0;var CTB=kO(),XTB=ol();class ZyA{getLogger(A,Q,B){var Y;return(Y=this.getDelegateLogger(A,Q,B))!==null&&Y!==void 0?Y:new XTB.ProxyLogger(this,A,Q,B)}getDelegate(){var A;return(A=this._delegate)!==null&&A!==void 0?A:CTB.NOOP_LOGGER_PROVIDER}setDelegate(A){this._delegate=A}getDelegateLogger(A,Q,B){var Y;return(Y=this._delegate)===null||Y===void 0?void 0:Y.getLogger(A,Q,B)}}$yA.ProxyLoggerProvider=ZyA});var VyA=R((EyA)=>{Object.defineProperty(EyA,"__esModule",{value:!0});EyA._globalThis=void 0;EyA._globalThis=typeof globalThis==="object"?globalThis:global});var IyA=R((el)=>{Object.defineProperty(el,"__esModule",{value:!0});el._globalThis=void 0;var GTB=VyA();Object.defineProperty(el,"_globalThis",{enumerable:!0,get:function(){return GTB._globalThis}})});var HyA=R((Ap)=>{Object.defineProperty(Ap,"__esModule",{value:!0});Ap._globalThis=void 0;var FTB=IyA();Object.defineProperty(Ap,"_globalThis",{enumerable:!0,get:function(){return FTB._globalThis}})});var LyA=R((DyA)=>{Object.defineProperty(DyA,"__esModule",{value:!0});DyA.API_BACKWARDS_COMPATIBILITY_VERSION=DyA.makeGetter=DyA._global=DyA.GLOBAL_LOGS_API_KEY=void 0;var $TB=HyA();DyA.GLOBAL_LOGS_API_KEY=Symbol.for("io.opentelemetry.js.api.logs");DyA._global=$TB._globalThis;function UTB(A,Q,B){return(Y)=>Y===A?Q:B}DyA.makeGetter=UTB;DyA.API_BACKWARDS_COMPATIBILITY_VERSION=1});var RyA=R((MyA)=>{Object.defineProperty(MyA,"__esModule",{value:!0});MyA.LogsAPI=void 0;var m5=LyA(),ITB=kO(),qyA=tl();class Qp{constructor(){this._proxyLoggerProvider=new qyA.ProxyLoggerProvider}static getInstance(){if(!this._instance)this._instance=new Qp;return this._instance}setGlobalLoggerProvider(A){if(m5._global[m5.GLOBAL_LOGS_API_KEY])return this.getLoggerProvider();return m5._global[m5.GLOBAL_LOGS_API_KEY]=(0,m5.makeGetter)(m5.API_BACKWARDS_COMPATIBILITY_VERSION,A,ITB.NOOP_LOGGER_PROVIDER),this._proxyLoggerProvider.setDelegate(A),A}getLoggerProvider(){var A,Q;return(Q=(A=m5._global[m5.GLOBAL_LOGS_API_KEY])===null||A===void 0?void 0:A.call(m5._global,m5.API_BACKWARDS_COMPATIBILITY_VERSION))!==null&&Q!==void 0?Q:this._proxyLoggerProvider}getLogger(A,Q,B){return this.getLoggerProvider().getLogger(A,Q,B)}disable(){delete m5._global[m5.GLOBAL_LOGS_API_KEY],this._proxyLoggerProvider=new qyA.ProxyLoggerProvider}}MyA.LogsAPI=Qp});var Bp=R((WG)=>{Object.defineProperty(WG,"__esModule",{value:!0});WG.logs=WG.ProxyLoggerProvider=WG.ProxyLogger=WG.NoopLoggerProvider=WG.NOOP_LOGGER_PROVIDER=WG.NoopLogger=WG.NOOP_LOGGER=WG.SeverityNumber=void 0;var HTB=ByA();Object.defineProperty(WG,"SeverityNumber",{enumerable:!0,get:function(){return HTB.SeverityNumber}});var wyA=SO();Object.defineProperty(WG,"NOOP_LOGGER",{enumerable:!0,get:function(){return wyA.NOOP_LOGGER}});Object.defineProperty(WG,"NoopLogger",{enumerable:!0,get:function(){return wyA.NoopLogger}});var jyA=kO();Object.defineProperty(WG,"NOOP_LOGGER_PROVIDER",{enumerable:!0,get:function(){return jyA.NOOP_LOGGER_PROVIDER}});Object.defineProperty(WG,"NoopLoggerProvider",{enumerable:!0,get:function(){return jyA.NoopLoggerProvider}});var DTB=ol();Object.defineProperty(WG,"ProxyLogger",{enumerable:!0,get:function(){return DTB.ProxyLogger}});var NTB=tl();Object.defineProperty(WG,"ProxyLoggerProvider",{enumerable:!0,get:function(){return NTB.ProxyLoggerProvider}});var LTB=RyA();WG.logs=LTB.LogsAPI.getInstance()});var SyA=R((PyA)=>{Object.defineProperty(PyA,"__esModule",{value:!0});PyA.disableInstrumentations=PyA.enableInstrumentations=void 0;function qTB(A,Q,B,Y){for(let J=0,C=A.length;JQ.disable())}PyA.disableInstrumentations=MTB});var gyA=R((vyA)=>{Object.defineProperty(vyA,"__esModule",{value:!0});vyA.registerInstrumentations=void 0;var kyA=yA(),RTB=Bp(),_yA=SyA();function wTB(A){var Q,B;let Y=A.tracerProvider||kyA.trace.getTracerProvider(),J=A.meterProvider||kyA.metrics.getMeterProvider(),C=A.loggerProvider||RTB.logs.getLoggerProvider(),X=(B=(Q=A.instrumentations)===null||Q===void 0?void 0:Q.flat())!==null&&B!==void 0?B:[];return(0,_yA.enableInstrumentations)(X,Y,J,C),()=>{(0,_yA.disableInstrumentations)(X)}}vyA.registerInstrumentations=wTB});var JL=R((QgY,hyA)=>{var jTB=Number.MAX_SAFE_INTEGER||9007199254740991,OTB=["major","premajor","minor","preminor","patch","prepatch","prerelease"];hyA.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:16,MAX_SAFE_BUILD_LENGTH:250,MAX_SAFE_INTEGER:jTB,RELEASE_TYPES:OTB,SEMVER_SPEC_VERSION:"2.0.0",FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var CL=R((BgY,xyA)=>{var PTB=typeof process==="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...A)=>console.error("SEMVER",...A):()=>{};xyA.exports=PTB});var JK=R((UX,fyA)=>{var{MAX_SAFE_COMPONENT_LENGTH:Yp,MAX_SAFE_BUILD_LENGTH:TTB,MAX_LENGTH:STB}=JL(),kTB=CL();UX=fyA.exports={};var _TB=UX.re=[],vTB=UX.safeRe=[],iA=UX.src=[],yTB=UX.safeSrc=[],nA=UX.t={},gTB=0,Jp="[a-zA-Z0-9-]",hTB=[["\\s",1],["\\d",STB],[Jp,TTB]],xTB=(A)=>{for(let[Q,B]of hTB)A=A.split(`${Q}*`).join(`${Q}{0,${B}}`).split(`${Q}+`).join(`${Q}{1,${B}}`);return A},cQ=(A,Q,B)=>{let Y=xTB(Q),J=gTB++;kTB(A,J,Q),nA[A]=J,iA[J]=Q,yTB[J]=Y,_TB[J]=new RegExp(Q,B?"g":void 0),vTB[J]=new RegExp(Y,B?"g":void 0)};cQ("NUMERICIDENTIFIER","0|[1-9]\\d*");cQ("NUMERICIDENTIFIERLOOSE","\\d+");cQ("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${Jp}*`);cQ("MAINVERSION",`(${iA[nA.NUMERICIDENTIFIER]})\\.(${iA[nA.NUMERICIDENTIFIER]})\\.(${iA[nA.NUMERICIDENTIFIER]})`);cQ("MAINVERSIONLOOSE",`(${iA[nA.NUMERICIDENTIFIERLOOSE]})\\.(${iA[nA.NUMERICIDENTIFIERLOOSE]})\\.(${iA[nA.NUMERICIDENTIFIERLOOSE]})`);cQ("PRERELEASEIDENTIFIER",`(?:${iA[nA.NUMERICIDENTIFIER]}|${iA[nA.NONNUMERICIDENTIFIER]})`);cQ("PRERELEASEIDENTIFIERLOOSE",`(?:${iA[nA.NUMERICIDENTIFIERLOOSE]}|${iA[nA.NONNUMERICIDENTIFIER]})`);cQ("PRERELEASE",`(?:-(${iA[nA.PRERELEASEIDENTIFIER]}(?:\\.${iA[nA.PRERELEASEIDENTIFIER]})*))`);cQ("PRERELEASELOOSE",`(?:-?(${iA[nA.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${iA[nA.PRERELEASEIDENTIFIERLOOSE]})*))`);cQ("BUILDIDENTIFIER",`${Jp}+`);cQ("BUILD",`(?:\\+(${iA[nA.BUILDIDENTIFIER]}(?:\\.${iA[nA.BUILDIDENTIFIER]})*))`);cQ("FULLPLAIN",`v?${iA[nA.MAINVERSION]}${iA[nA.PRERELEASE]}?${iA[nA.BUILD]}?`);cQ("FULL",`^${iA[nA.FULLPLAIN]}$`);cQ("LOOSEPLAIN",`[v=\\s]*${iA[nA.MAINVERSIONLOOSE]}${iA[nA.PRERELEASELOOSE]}?${iA[nA.BUILD]}?`);cQ("LOOSE",`^${iA[nA.LOOSEPLAIN]}$`);cQ("GTLT","((?:<|>)?=?)");cQ("XRANGEIDENTIFIERLOOSE",`${iA[nA.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);cQ("XRANGEIDENTIFIER",`${iA[nA.NUMERICIDENTIFIER]}|x|X|\\*`);cQ("XRANGEPLAIN",`[v=\\s]*(${iA[nA.XRANGEIDENTIFIER]})(?:\\.(${iA[nA.XRANGEIDENTIFIER]})(?:\\.(${iA[nA.XRANGEIDENTIFIER]})(?:${iA[nA.PRERELEASE]})?${iA[nA.BUILD]}?)?)?`);cQ("XRANGEPLAINLOOSE",`[v=\\s]*(${iA[nA.XRANGEIDENTIFIERLOOSE]})(?:\\.(${iA[nA.XRANGEIDENTIFIERLOOSE]})(?:\\.(${iA[nA.XRANGEIDENTIFIERLOOSE]})(?:${iA[nA.PRERELEASELOOSE]})?${iA[nA.BUILD]}?)?)?`);cQ("XRANGE",`^${iA[nA.GTLT]}\\s*${iA[nA.XRANGEPLAIN]}$`);cQ("XRANGELOOSE",`^${iA[nA.GTLT]}\\s*${iA[nA.XRANGEPLAINLOOSE]}$`);cQ("COERCEPLAIN",`(^|[^\\d])(\\d{1,${Yp}})(?:\\.(\\d{1,${Yp}}))?(?:\\.(\\d{1,${Yp}}))?`);cQ("COERCE",`${iA[nA.COERCEPLAIN]}(?:$|[^\\d])`);cQ("COERCEFULL",iA[nA.COERCEPLAIN]+`(?:${iA[nA.PRERELEASE]})?(?:${iA[nA.BUILD]})?(?:$|[^\\d])`);cQ("COERCERTL",iA[nA.COERCE],!0);cQ("COERCERTLFULL",iA[nA.COERCEFULL],!0);cQ("LONETILDE","(?:~>?)");cQ("TILDETRIM",`(\\s*)${iA[nA.LONETILDE]}\\s+`,!0);UX.tildeTrimReplace="$1~";cQ("TILDE",`^${iA[nA.LONETILDE]}${iA[nA.XRANGEPLAIN]}$`);cQ("TILDELOOSE",`^${iA[nA.LONETILDE]}${iA[nA.XRANGEPLAINLOOSE]}$`);cQ("LONECARET","(?:\\^)");cQ("CARETTRIM",`(\\s*)${iA[nA.LONECARET]}\\s+`,!0);UX.caretTrimReplace="$1^";cQ("CARET",`^${iA[nA.LONECARET]}${iA[nA.XRANGEPLAIN]}$`);cQ("CARETLOOSE",`^${iA[nA.LONECARET]}${iA[nA.XRANGEPLAINLOOSE]}$`);cQ("COMPARATORLOOSE",`^${iA[nA.GTLT]}\\s*(${iA[nA.LOOSEPLAIN]})$|^$`);cQ("COMPARATOR",`^${iA[nA.GTLT]}\\s*(${iA[nA.FULLPLAIN]})$|^$`);cQ("COMPARATORTRIM",`(\\s*)${iA[nA.GTLT]}\\s*(${iA[nA.LOOSEPLAIN]}|${iA[nA.XRANGEPLAIN]})`,!0);UX.comparatorTrimReplace="$1$2$3";cQ("HYPHENRANGE",`^\\s*(${iA[nA.XRANGEPLAIN]})\\s+-\\s+(${iA[nA.XRANGEPLAIN]})\\s*$`);cQ("HYPHENRANGELOOSE",`^\\s*(${iA[nA.XRANGEPLAINLOOSE]})\\s+-\\s+(${iA[nA.XRANGEPLAINLOOSE]})\\s*$`);cQ("STAR","(<|>)?=?\\s*\\*");cQ("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");cQ("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var _O=R((YgY,byA)=>{var fTB=Object.freeze({loose:!0}),bTB=Object.freeze({}),mTB=(A)=>{if(!A)return bTB;if(typeof A!=="object")return fTB;return A};byA.exports=mTB});var Cp=R((JgY,dyA)=>{var myA=/^[0-9]+$/,uyA=(A,Q)=>{let B=myA.test(A),Y=myA.test(Q);if(B&&Y)A=+A,Q=+Q;return A===Q?0:B&&!Y?-1:Y&&!B?1:AuyA(Q,A);dyA.exports={compareIdentifiers:uyA,rcompareIdentifiers:uTB}});var _J=R((CgY,iyA)=>{var vO=CL(),{MAX_LENGTH:cyA,MAX_SAFE_INTEGER:yO}=JL(),{safeRe:lyA,safeSrc:pyA,t:gO}=JK(),dTB=_O(),{compareIdentifiers:CK}=Cp();class X1{constructor(A,Q){if(Q=dTB(Q),A instanceof X1)if(A.loose===!!Q.loose&&A.includePrerelease===!!Q.includePrerelease)return A;else A=A.version;else if(typeof A!=="string")throw TypeError(`Invalid version. Must be a string. Got type "${typeof A}".`);if(A.length>cyA)throw TypeError(`version is longer than ${cyA} characters`);vO("SemVer",A,Q),this.options=Q,this.loose=!!Q.loose,this.includePrerelease=!!Q.includePrerelease;let B=A.trim().match(Q.loose?lyA[gO.LOOSE]:lyA[gO.FULL]);if(!B)throw TypeError(`Invalid Version: ${A}`);if(this.raw=A,this.major=+B[1],this.minor=+B[2],this.patch=+B[3],this.major>yO||this.major<0)throw TypeError("Invalid major version");if(this.minor>yO||this.minor<0)throw TypeError("Invalid minor version");if(this.patch>yO||this.patch<0)throw TypeError("Invalid patch version");if(!B[4])this.prerelease=[];else this.prerelease=B[4].split(".").map((Y)=>{if(/^[0-9]+$/.test(Y)){let J=+Y;if(J>=0&&J=0)if(typeof this.prerelease[J]==="number")this.prerelease[J]++,J=-2;if(J===-1){if(Q===this.prerelease.join(".")&&B===!1)throw Error("invalid increment argument: identifier already exists");this.prerelease.push(Y)}}if(Q){let J=[Q,Y];if(B===!1)J=[Q];if(CK(this.prerelease[0],Q)===0){if(isNaN(this.prerelease[1]))this.prerelease=J}else this.prerelease=J}break}default:throw Error(`invalid increment argument: ${A}`)}if(this.raw=this.format(),this.build.length)this.raw+=`+${this.build.join(".")}`;return this}}iyA.exports=X1});var J$=R((XgY,syA)=>{var nyA=_J(),cTB=(A,Q,B=!1)=>{if(A instanceof nyA)return A;try{return new nyA(A,Q)}catch(Y){if(!B)return null;throw Y}};syA.exports=cTB});var ayA=R((GgY,ryA)=>{var lTB=J$(),pTB=(A,Q)=>{let B=lTB(A,Q);return B?B.version:null};ryA.exports=pTB});var tyA=R((WgY,oyA)=>{var iTB=J$(),nTB=(A,Q)=>{let B=iTB(A.trim().replace(/^[=v]+/,""),Q);return B?B.version:null};oyA.exports=nTB});var QgA=R((FgY,AgA)=>{var eyA=_J(),sTB=(A,Q,B,Y,J)=>{if(typeof B==="string")J=Y,Y=B,B=void 0;try{return new eyA(A instanceof eyA?A.version:A,B).inc(Q,Y,J).version}catch(C){return null}};AgA.exports=sTB});var JgA=R((ZgY,YgA)=>{var BgA=J$(),rTB=(A,Q)=>{let B=BgA(A,null,!0),Y=BgA(Q,null,!0),J=B.compare(Y);if(J===0)return null;let C=J>0,X=C?B:Y,G=C?Y:B,W=!!X.prerelease.length;if(!!G.prerelease.length&&!W){if(!G.patch&&!G.minor)return"major";if(G.compareMain(X)===0){if(G.minor&&!G.patch)return"minor";return"patch"}}let Z=W?"pre":"";if(B.major!==Y.major)return Z+"major";if(B.minor!==Y.minor)return Z+"minor";if(B.patch!==Y.patch)return Z+"patch";return"prerelease"};YgA.exports=rTB});var XgA=R(($gY,CgA)=>{var aTB=_J(),oTB=(A,Q)=>new aTB(A,Q).major;CgA.exports=oTB});var WgA=R((UgY,GgA)=>{var tTB=_J(),eTB=(A,Q)=>new tTB(A,Q).minor;GgA.exports=eTB});var ZgA=R((EgY,FgA)=>{var ASB=_J(),QSB=(A,Q)=>new ASB(A,Q).patch;FgA.exports=QSB});var UgA=R((KgY,$gA)=>{var BSB=J$(),YSB=(A,Q)=>{let B=BSB(A,Q);return B&&B.prerelease.length?B.prerelease:null};$gA.exports=YSB});var u5=R((VgY,KgA)=>{var EgA=_J(),JSB=(A,Q,B)=>new EgA(A,B).compare(new EgA(Q,B));KgA.exports=JSB});var IgA=R((IgY,VgA)=>{var CSB=u5(),XSB=(A,Q,B)=>CSB(Q,A,B);VgA.exports=XSB});var DgA=R((HgY,HgA)=>{var GSB=u5(),WSB=(A,Q)=>GSB(A,Q,!0);HgA.exports=WSB});var hO=R((DgY,LgA)=>{var NgA=_J(),FSB=(A,Q,B)=>{let Y=new NgA(A,B),J=new NgA(Q,B);return Y.compare(J)||Y.compareBuild(J)};LgA.exports=FSB});var MgA=R((NgY,qgA)=>{var ZSB=hO(),$SB=(A,Q)=>A.sort((B,Y)=>ZSB(B,Y,Q));qgA.exports=$SB});var RgA=R((LgY,zgA)=>{var USB=hO(),ESB=(A,Q)=>A.sort((B,Y)=>USB(Y,B,Q));zgA.exports=ESB});var XL=R((qgY,wgA)=>{var KSB=u5(),VSB=(A,Q,B)=>KSB(A,Q,B)>0;wgA.exports=VSB});var xO=R((MgY,jgA)=>{var ISB=u5(),HSB=(A,Q,B)=>ISB(A,Q,B)<0;jgA.exports=HSB});var Xp=R((zgY,OgA)=>{var DSB=u5(),NSB=(A,Q,B)=>DSB(A,Q,B)===0;OgA.exports=NSB});var Gp=R((RgY,PgA)=>{var LSB=u5(),qSB=(A,Q,B)=>LSB(A,Q,B)!==0;PgA.exports=qSB});var fO=R((wgY,TgA)=>{var MSB=u5(),zSB=(A,Q,B)=>MSB(A,Q,B)>=0;TgA.exports=zSB});var bO=R((jgY,SgA)=>{var RSB=u5(),wSB=(A,Q,B)=>RSB(A,Q,B)<=0;SgA.exports=wSB});var Wp=R((OgY,kgA)=>{var jSB=Xp(),OSB=Gp(),PSB=XL(),TSB=fO(),SSB=xO(),kSB=bO(),_SB=(A,Q,B,Y)=>{switch(Q){case"===":if(typeof A==="object")A=A.version;if(typeof B==="object")B=B.version;return A===B;case"!==":if(typeof A==="object")A=A.version;if(typeof B==="object")B=B.version;return A!==B;case"":case"=":case"==":return jSB(A,B,Y);case"!=":return OSB(A,B,Y);case">":return PSB(A,B,Y);case">=":return TSB(A,B,Y);case"<":return SSB(A,B,Y);case"<=":return kSB(A,B,Y);default:throw TypeError(`Invalid operator: ${Q}`)}};kgA.exports=_SB});var vgA=R((PgY,_gA)=>{var vSB=_J(),ySB=J$(),{safeRe:mO,t:uO}=JK(),gSB=(A,Q)=>{if(A instanceof vSB)return A;if(typeof A==="number")A=String(A);if(typeof A!=="string")return null;Q=Q||{};let B=null;if(!Q.rtl)B=A.match(Q.includePrerelease?mO[uO.COERCEFULL]:mO[uO.COERCE]);else{let W=Q.includePrerelease?mO[uO.COERCERTLFULL]:mO[uO.COERCERTL],F;while((F=W.exec(A))&&(!B||B.index+B[0].length!==A.length)){if(!B||F.index+F[0].length!==B.index+B[0].length)B=F;W.lastIndex=F.index+F[1].length+F[2].length}W.lastIndex=-1}if(B===null)return null;let Y=B[2],J=B[3]||"0",C=B[4]||"0",X=Q.includePrerelease&&B[5]?`-${B[5]}`:"",G=Q.includePrerelease&&B[6]?`+${B[6]}`:"";return ySB(`${Y}.${J}.${C}${X}${G}`,Q)};_gA.exports=gSB});var hgA=R((TgY,ggA)=>{class ygA{constructor(){this.max=1000,this.map=new Map}get(A){let Q=this.map.get(A);if(Q===void 0)return;else return this.map.delete(A),this.map.set(A,Q),Q}delete(A){return this.map.delete(A)}set(A,Q){if(!this.delete(A)&&Q!==void 0){if(this.map.size>=this.max){let Y=this.map.keys().next().value;this.delete(Y)}this.map.set(A,Q)}return this}}ggA.exports=ygA});var d5=R((SgY,mgA)=>{var hSB=/\s+/g;class GL{constructor(A,Q){if(Q=fSB(Q),A instanceof GL)if(A.loose===!!Q.loose&&A.includePrerelease===!!Q.includePrerelease)return A;else return new GL(A.raw,Q);if(A instanceof Fp)return this.raw=A.value,this.set=[[A]],this.formatted=void 0,this;if(this.options=Q,this.loose=!!Q.loose,this.includePrerelease=!!Q.includePrerelease,this.raw=A.trim().replace(hSB," "),this.set=this.raw.split("||").map((B)=>this.parseRange(B.trim())).filter((B)=>B.length),!this.set.length)throw TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let B=this.set[0];if(this.set=this.set.filter((Y)=>!fgA(Y[0])),this.set.length===0)this.set=[B];else if(this.set.length>1){for(let Y of this.set)if(Y.length===1&&pSB(Y[0])){this.set=[Y];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let A=0;A0)this.formatted+="||";let Q=this.set[A];for(let B=0;B0)this.formatted+=" ";this.formatted+=Q[B].toString().trim()}}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(A){let B=((this.options.includePrerelease&&cSB)|(this.options.loose&&lSB))+":"+A,Y=xgA.get(B);if(Y)return Y;let J=this.options.loose,C=J?o9[I9.HYPHENRANGELOOSE]:o9[I9.HYPHENRANGE];A=A.replace(C,QkB(this.options.includePrerelease)),I0("hyphen replace",A),A=A.replace(o9[I9.COMPARATORTRIM],mSB),I0("comparator trim",A),A=A.replace(o9[I9.TILDETRIM],uSB),I0("tilde trim",A),A=A.replace(o9[I9.CARETTRIM],dSB),I0("caret trim",A);let X=A.split(" ").map((Z)=>iSB(Z,this.options)).join(" ").split(/\s+/).map((Z)=>AkB(Z,this.options));if(J)X=X.filter((Z)=>{return I0("loose invalid filter",Z,this.options),!!Z.match(o9[I9.COMPARATORLOOSE])});I0("range list",X);let G=new Map,W=X.map((Z)=>new Fp(Z,this.options));for(let Z of W){if(fgA(Z))return[Z];G.set(Z.value,Z)}if(G.size>1&&G.has(""))G.delete("");let F=[...G.values()];return xgA.set(B,F),F}intersects(A,Q){if(!(A instanceof GL))throw TypeError("a Range is required");return this.set.some((B)=>{return bgA(B,Q)&&A.set.some((Y)=>{return bgA(Y,Q)&&B.every((J)=>{return Y.every((C)=>{return J.intersects(C,Q)})})})})}test(A){if(!A)return!1;if(typeof A==="string")try{A=new bSB(A,this.options)}catch(Q){return!1}for(let Q=0;QA.value==="<0.0.0-0",pSB=(A)=>A.value==="",bgA=(A,Q)=>{let B=!0,Y=A.slice(),J=Y.pop();while(B&&Y.length)B=Y.every((C)=>{return J.intersects(C,Q)}),J=Y.pop();return B},iSB=(A,Q)=>{return I0("comp",A,Q),A=rSB(A,Q),I0("caret",A),A=nSB(A,Q),I0("tildes",A),A=oSB(A,Q),I0("xrange",A),A=eSB(A,Q),I0("stars",A),A},H9=(A)=>!A||A.toLowerCase()==="x"||A==="*",nSB=(A,Q)=>{return A.trim().split(/\s+/).map((B)=>sSB(B,Q)).join(" ")},sSB=(A,Q)=>{let B=Q.loose?o9[I9.TILDELOOSE]:o9[I9.TILDE];return A.replace(B,(Y,J,C,X,G)=>{I0("tilde",A,Y,J,C,X,G);let W;if(H9(J))W="";else if(H9(C))W=`>=${J}.0.0 <${+J+1}.0.0-0`;else if(H9(X))W=`>=${J}.${C}.0 <${J}.${+C+1}.0-0`;else if(G)I0("replaceTilde pr",G),W=`>=${J}.${C}.${X}-${G} <${J}.${+C+1}.0-0`;else W=`>=${J}.${C}.${X} <${J}.${+C+1}.0-0`;return I0("tilde return",W),W})},rSB=(A,Q)=>{return A.trim().split(/\s+/).map((B)=>aSB(B,Q)).join(" ")},aSB=(A,Q)=>{I0("caret",A,Q);let B=Q.loose?o9[I9.CARETLOOSE]:o9[I9.CARET],Y=Q.includePrerelease?"-0":"";return A.replace(B,(J,C,X,G,W)=>{I0("caret",A,J,C,X,G,W);let F;if(H9(C))F="";else if(H9(X))F=`>=${C}.0.0${Y} <${+C+1}.0.0-0`;else if(H9(G))if(C==="0")F=`>=${C}.${X}.0${Y} <${C}.${+X+1}.0-0`;else F=`>=${C}.${X}.0${Y} <${+C+1}.0.0-0`;else if(W)if(I0("replaceCaret pr",W),C==="0")if(X==="0")F=`>=${C}.${X}.${G}-${W} <${C}.${X}.${+G+1}-0`;else F=`>=${C}.${X}.${G}-${W} <${C}.${+X+1}.0-0`;else F=`>=${C}.${X}.${G}-${W} <${+C+1}.0.0-0`;else if(I0("no pr"),C==="0")if(X==="0")F=`>=${C}.${X}.${G}${Y} <${C}.${X}.${+G+1}-0`;else F=`>=${C}.${X}.${G}${Y} <${C}.${+X+1}.0-0`;else F=`>=${C}.${X}.${G} <${+C+1}.0.0-0`;return I0("caret return",F),F})},oSB=(A,Q)=>{return I0("replaceXRanges",A,Q),A.split(/\s+/).map((B)=>tSB(B,Q)).join(" ")},tSB=(A,Q)=>{A=A.trim();let B=Q.loose?o9[I9.XRANGELOOSE]:o9[I9.XRANGE];return A.replace(B,(Y,J,C,X,G,W)=>{I0("xRange",A,Y,J,C,X,G,W);let F=H9(C),Z=F||H9(X),U=Z||H9(G),$=U;if(J==="="&&$)J="";if(W=Q.includePrerelease?"-0":"",F)if(J===">"||J==="<")Y="<0.0.0-0";else Y="*";else if(J&&$){if(Z)X=0;if(G=0,J===">")if(J=">=",Z)C=+C+1,X=0,G=0;else X=+X+1,G=0;else if(J==="<=")if(J="<",Z)C=+C+1;else X=+X+1;if(J==="<")W="-0";Y=`${J+C}.${X}.${G}${W}`}else if(Z)Y=`>=${C}.0.0${W} <${+C+1}.0.0-0`;else if(U)Y=`>=${C}.${X}.0${W} <${C}.${+X+1}.0-0`;return I0("xRange return",Y),Y})},eSB=(A,Q)=>{return I0("replaceStars",A,Q),A.trim().replace(o9[I9.STAR],"")},AkB=(A,Q)=>{return I0("replaceGTE0",A,Q),A.trim().replace(o9[Q.includePrerelease?I9.GTE0PRE:I9.GTE0],"")},QkB=(A)=>(Q,B,Y,J,C,X,G,W,F,Z,U,$)=>{if(H9(Y))B="";else if(H9(J))B=`>=${Y}.0.0${A?"-0":""}`;else if(H9(C))B=`>=${Y}.${J}.0${A?"-0":""}`;else if(X)B=`>=${B}`;else B=`>=${B}${A?"-0":""}`;if(H9(F))W="";else if(H9(Z))W=`<${+F+1}.0.0-0`;else if(H9(U))W=`<${F}.${+Z+1}.0-0`;else if($)W=`<=${F}.${Z}.${U}-${$}`;else if(A)W=`<${F}.${Z}.${+U+1}-0`;else W=`<=${W}`;return`${B} ${W}`.trim()},BkB=(A,Q,B)=>{for(let Y=0;Y0){let J=A[Y].semver;if(J.major===Q.major&&J.minor===Q.minor&&J.patch===Q.patch)return!0}}return!1}return!0}});var WL=R((kgY,igA)=>{var FL=Symbol("SemVer ANY");class dO{static get ANY(){return FL}constructor(A,Q){if(Q=ugA(Q),A instanceof dO)if(A.loose===!!Q.loose)return A;else A=A.value;if(A=A.trim().split(/\s+/).join(" "),$p("comparator",A,Q),this.options=Q,this.loose=!!Q.loose,this.parse(A),this.semver===FL)this.value="";else this.value=this.operator+this.semver.version;$p("comp",this)}parse(A){let Q=this.options.loose?dgA[cgA.COMPARATORLOOSE]:dgA[cgA.COMPARATOR],B=A.match(Q);if(!B)throw TypeError(`Invalid comparator: ${A}`);if(this.operator=B[1]!==void 0?B[1]:"",this.operator==="=")this.operator="";if(!B[2])this.semver=FL;else this.semver=new lgA(B[2],this.options.loose)}toString(){return this.value}test(A){if($p("Comparator.test",A,this.options.loose),this.semver===FL||A===FL)return!0;if(typeof A==="string")try{A=new lgA(A,this.options)}catch(Q){return!1}return Zp(A,this.operator,this.semver,this.options)}intersects(A,Q){if(!(A instanceof dO))throw TypeError("a Comparator is required");if(this.operator===""){if(this.value==="")return!0;return new pgA(A.value,Q).test(this.value)}else if(A.operator===""){if(A.value==="")return!0;return new pgA(this.value,Q).test(A.semver)}if(Q=ugA(Q),Q.includePrerelease&&(this.value==="<0.0.0-0"||A.value==="<0.0.0-0"))return!1;if(!Q.includePrerelease&&(this.value.startsWith("<0.0.0")||A.value.startsWith("<0.0.0")))return!1;if(this.operator.startsWith(">")&&A.operator.startsWith(">"))return!0;if(this.operator.startsWith("<")&&A.operator.startsWith("<"))return!0;if(this.semver.version===A.semver.version&&this.operator.includes("=")&&A.operator.includes("="))return!0;if(Zp(this.semver,"<",A.semver,Q)&&this.operator.startsWith(">")&&A.operator.startsWith("<"))return!0;if(Zp(this.semver,">",A.semver,Q)&&this.operator.startsWith("<")&&A.operator.startsWith(">"))return!0;return!1}}igA.exports=dO;var ugA=_O(),{safeRe:dgA,t:cgA}=JK(),Zp=Wp(),$p=CL(),lgA=_J(),pgA=d5()});var ZL=R((_gY,ngA)=>{var YkB=d5(),JkB=(A,Q,B)=>{try{Q=new YkB(Q,B)}catch(Y){return!1}return Q.test(A)};ngA.exports=JkB});var rgA=R((vgY,sgA)=>{var CkB=d5(),XkB=(A,Q)=>new CkB(A,Q).set.map((B)=>B.map((Y)=>Y.value).join(" ").trim().split(" "));sgA.exports=XkB});var ogA=R((ygY,agA)=>{var GkB=_J(),WkB=d5(),FkB=(A,Q,B)=>{let Y=null,J=null,C=null;try{C=new WkB(Q,B)}catch(X){return null}return A.forEach((X)=>{if(C.test(X)){if(!Y||J.compare(X)===-1)Y=X,J=new GkB(Y,B)}}),Y};agA.exports=FkB});var egA=R((ggY,tgA)=>{var ZkB=_J(),$kB=d5(),UkB=(A,Q,B)=>{let Y=null,J=null,C=null;try{C=new $kB(Q,B)}catch(X){return null}return A.forEach((X)=>{if(C.test(X)){if(!Y||J.compare(X)===1)Y=X,J=new ZkB(Y,B)}}),Y};tgA.exports=UkB});var BhA=R((hgY,QhA)=>{var Up=_J(),EkB=d5(),AhA=XL(),KkB=(A,Q)=>{A=new EkB(A,Q);let B=new Up("0.0.0");if(A.test(B))return B;if(B=new Up("0.0.0-0"),A.test(B))return B;B=null;for(let Y=0;Y{let G=new Up(X.semver.version);switch(X.operator){case">":if(G.prerelease.length===0)G.patch++;else G.prerelease.push(0);G.raw=G.format();case"":case">=":if(!C||AhA(G,C))C=G;break;case"<":case"<=":break;default:throw Error(`Unexpected operation: ${X.operator}`)}}),C&&(!B||AhA(B,C)))B=C}if(B&&A.test(B))return B;return null};QhA.exports=KkB});var JhA=R((xgY,YhA)=>{var VkB=d5(),IkB=(A,Q)=>{try{return new VkB(A,Q).range||"*"}catch(B){return null}};YhA.exports=IkB});var cO=R((fgY,WhA)=>{var HkB=_J(),GhA=WL(),{ANY:DkB}=GhA,NkB=d5(),LkB=ZL(),ChA=XL(),XhA=xO(),qkB=bO(),MkB=fO(),zkB=(A,Q,B,Y)=>{A=new HkB(A,Y),Q=new NkB(Q,Y);let J,C,X,G,W;switch(B){case">":J=ChA,C=qkB,X=XhA,G=">",W=">=";break;case"<":J=XhA,C=MkB,X=ChA,G="<",W="<=";break;default:throw TypeError('Must provide a hilo val of "<" or ">"')}if(LkB(A,Q,Y))return!1;for(let F=0;F{if(E.semver===DkB)E=new GhA(">=0.0.0");if(U=U||E,$=$||E,J(E.semver,U.semver,Y))U=E;else if(X(E.semver,$.semver,Y))$=E}),U.operator===G||U.operator===W)return!1;if((!$.operator||$.operator===G)&&C(A,$.semver))return!1;else if($.operator===W&&X(A,$.semver))return!1}return!0};WhA.exports=zkB});var ZhA=R((bgY,FhA)=>{var RkB=cO(),wkB=(A,Q,B)=>RkB(A,Q,">",B);FhA.exports=wkB});var UhA=R((mgY,$hA)=>{var jkB=cO(),OkB=(A,Q,B)=>jkB(A,Q,"<",B);$hA.exports=OkB});var VhA=R((ugY,KhA)=>{var EhA=d5(),PkB=(A,Q,B)=>{return A=new EhA(A,B),Q=new EhA(Q,B),A.intersects(Q,B)};KhA.exports=PkB});var HhA=R((dgY,IhA)=>{var TkB=ZL(),SkB=u5();IhA.exports=(A,Q,B)=>{let Y=[],J=null,C=null,X=A.sort((Z,U)=>SkB(Z,U,B));for(let Z of X)if(TkB(Z,Q,B)){if(C=Z,!J)J=Z}else{if(C)Y.push([J,C]);C=null,J=null}if(J)Y.push([J,null]);let G=[];for(let[Z,U]of Y)if(Z===U)G.push(Z);else if(!U&&Z===X[0])G.push("*");else if(!U)G.push(`>=${Z}`);else if(Z===X[0])G.push(`<=${U}`);else G.push(`${Z} - ${U}`);let W=G.join(" || "),F=typeof Q.raw==="string"?Q.raw:String(Q);return W.length{var DhA=d5(),Kp=WL(),{ANY:Ep}=Kp,$L=ZL(),Vp=u5(),kkB=(A,Q,B={})=>{if(A===Q)return!0;A=new DhA(A,B),Q=new DhA(Q,B);let Y=!1;A:for(let J of A.set){for(let C of Q.set){let X=vkB(J,C,B);if(Y=Y||X!==null,X)continue A}if(Y)return!1}return!0},_kB=[new Kp(">=0.0.0-0")],NhA=[new Kp(">=0.0.0")],vkB=(A,Q,B)=>{if(A===Q)return!0;if(A.length===1&&A[0].semver===Ep)if(Q.length===1&&Q[0].semver===Ep)return!0;else if(B.includePrerelease)A=_kB;else A=NhA;if(Q.length===1&&Q[0].semver===Ep)if(B.includePrerelease)return!0;else Q=NhA;let Y=new Set,J,C;for(let E of A)if(E.operator===">"||E.operator===">=")J=LhA(J,E,B);else if(E.operator==="<"||E.operator==="<=")C=qhA(C,E,B);else Y.add(E.semver);if(Y.size>1)return null;let X;if(J&&C){if(X=Vp(J.semver,C.semver,B),X>0)return null;else if(X===0&&(J.operator!==">="||C.operator!=="<="))return null}for(let E of Y){if(J&&!$L(E,String(J),B))return null;if(C&&!$L(E,String(C),B))return null;for(let K of Q)if(!$L(E,String(K),B))return!1;return!0}let G,W,F,Z,U=C&&!B.includePrerelease&&C.semver.prerelease.length?C.semver:!1,$=J&&!B.includePrerelease&&J.semver.prerelease.length?J.semver:!1;if(U&&U.prerelease.length===1&&C.operator==="<"&&U.prerelease[0]===0)U=!1;for(let E of Q){if(Z=Z||E.operator===">"||E.operator===">=",F=F||E.operator==="<"||E.operator==="<=",J){if($){if(E.semver.prerelease&&E.semver.prerelease.length&&E.semver.major===$.major&&E.semver.minor===$.minor&&E.semver.patch===$.patch)$=!1}if(E.operator===">"||E.operator===">="){if(G=LhA(J,E,B),G===E&&G!==J)return!1}else if(J.operator===">="&&!$L(J.semver,String(E),B))return!1}if(C){if(U){if(E.semver.prerelease&&E.semver.prerelease.length&&E.semver.major===U.major&&E.semver.minor===U.minor&&E.semver.patch===U.patch)U=!1}if(E.operator==="<"||E.operator==="<="){if(W=qhA(C,E,B),W===E&&W!==C)return!1}else if(C.operator==="<="&&!$L(C.semver,String(E),B))return!1}if(!E.operator&&(C||J)&&X!==0)return!1}if(J&&F&&!C&&X!==0)return!1;if(C&&Z&&!J&&X!==0)return!1;if($||U)return!1;return!0},LhA=(A,Q,B)=>{if(!A)return Q;let Y=Vp(A.semver,Q.semver,B);return Y>0?A:Y<0?Q:Q.operator===">"&&A.operator===">="?Q:A},qhA=(A,Q,B)=>{if(!A)return Q;let Y=Vp(A.semver,Q.semver,B);return Y<0?A:Y>0?Q:Q.operator==="<"&&A.operator==="<="?Q:A};MhA.exports=kkB});var OhA=R((lgY,jhA)=>{var Ip=JK(),RhA=JL(),ykB=_J(),whA=Cp(),gkB=J$(),hkB=ayA(),xkB=tyA(),fkB=QgA(),bkB=JgA(),mkB=XgA(),ukB=WgA(),dkB=ZgA(),ckB=UgA(),lkB=u5(),pkB=IgA(),ikB=DgA(),nkB=hO(),skB=MgA(),rkB=RgA(),akB=XL(),okB=xO(),tkB=Xp(),ekB=Gp(),A_B=fO(),Q_B=bO(),B_B=Wp(),Y_B=vgA(),J_B=WL(),C_B=d5(),X_B=ZL(),G_B=rgA(),W_B=ogA(),F_B=egA(),Z_B=BhA(),$_B=JhA(),U_B=cO(),E_B=ZhA(),K_B=UhA(),V_B=VhA(),I_B=HhA(),H_B=zhA();jhA.exports={parse:gkB,valid:hkB,clean:xkB,inc:fkB,diff:bkB,major:mkB,minor:ukB,patch:dkB,prerelease:ckB,compare:lkB,rcompare:pkB,compareLoose:ikB,compareBuild:nkB,sort:skB,rsort:rkB,gt:akB,lt:okB,eq:tkB,neq:ekB,gte:A_B,lte:Q_B,cmp:B_B,coerce:Y_B,Comparator:J_B,Range:C_B,satisfies:X_B,toComparators:G_B,maxSatisfying:W_B,minSatisfying:F_B,minVersion:Z_B,validRange:$_B,outside:U_B,gtr:E_B,ltr:K_B,intersects:V_B,simplifyRange:I_B,subset:H_B,SemVer:ykB,re:Ip.re,src:Ip.src,tokens:Ip.t,SEMVER_SPEC_VERSION:RhA.SEMVER_SPEC_VERSION,RELEASE_TYPES:RhA.RELEASE_TYPES,compareIdentifiers:whA.compareIdentifiers,rcompareIdentifiers:whA.rcompareIdentifiers}});var Dp=R((pgY,ShA)=>{function Hp(A){return typeof A==="function"}var D9=console.error.bind(console);function UL(A,Q,B){var Y=!!A[Q]&&A.propertyIsEnumerable(Q);Object.defineProperty(A,Q,{configurable:!0,enumerable:Y,writable:!0,value:B})}function EL(A){if(A&&A.logger)if(!Hp(A.logger))D9("new logger isn't a function, not replacing");else D9=A.logger}function PhA(A,Q,B){if(!A||!A[Q]){D9("no original function "+Q+" to wrap");return}if(!B){D9("no wrapper function"),D9(Error().stack);return}if(!Hp(A[Q])||!Hp(B)){D9("original object and wrapper must be functions");return}var Y=A[Q],J=B(Y,Q);return UL(J,"__original",Y),UL(J,"__unwrap",function(){if(A[Q]===J)UL(A,Q,Y)}),UL(J,"__wrapped",!0),UL(A,Q,J),J}function D_B(A,Q,B){if(!A){D9("must provide one or more modules to patch"),D9(Error().stack);return}else if(!Array.isArray(A))A=[A];if(!(Q&&Array.isArray(Q))){D9("must provide one or more functions to wrap on modules");return}A.forEach(function(Y){Q.forEach(function(J){PhA(Y,J,B)})})}function ThA(A,Q){if(!A||!A[Q]){D9("no function to unwrap."),D9(Error().stack);return}if(!A[Q].__unwrap)D9("no original to unwrap to -- has "+Q+" already been unwrapped?");else return A[Q].__unwrap()}function N_B(A,Q){if(!A){D9("must provide one or more modules to patch"),D9(Error().stack);return}else if(!Array.isArray(A))A=[A];if(!(Q&&Array.isArray(Q))){D9("must provide one or more functions to unwrap on modules");return}A.forEach(function(B){Q.forEach(function(Y){ThA(B,Y)})})}EL.wrap=PhA;EL.massWrap=D_B;EL.unwrap=ThA;EL.massUnwrap=N_B;ShA.exports=EL});var yhA=R((_hA)=>{Object.defineProperty(_hA,"__esModule",{value:!0});_hA.InstrumentationAbstract=void 0;var Np=yA(),L_B=Bp(),lO=Dp();class khA{constructor(A,Q,B){this.instrumentationName=A,this.instrumentationVersion=Q,this._config={},this._wrap=lO.wrap,this._unwrap=lO.unwrap,this._massWrap=lO.massWrap,this._massUnwrap=lO.massUnwrap,this.setConfig(B),this._diag=Np.diag.createComponentLogger({namespace:A}),this._tracer=Np.trace.getTracer(A,Q),this._meter=Np.metrics.getMeter(A,Q),this._logger=L_B.logs.getLogger(A,Q),this._updateMetricInstruments()}get meter(){return this._meter}setMeterProvider(A){this._meter=A.getMeter(this.instrumentationName,this.instrumentationVersion),this._updateMetricInstruments()}get logger(){return this._logger}setLoggerProvider(A){this._logger=A.getLogger(this.instrumentationName,this.instrumentationVersion)}getModuleDefinitions(){var A;let Q=(A=this.init())!==null&&A!==void 0?A:[];if(!Array.isArray(Q))return[Q];return Q}_updateMetricInstruments(){return}getConfig(){return this._config}setConfig(A){this._config=Object.assign({enabled:!0},A)}setTracerProvider(A){this._tracer=A.getTracer(this.instrumentationName,this.instrumentationVersion)}get tracer(){return this._tracer}_runSpanCustomizationHook(A,Q,B,Y){if(!A)return;try{A(B,Y)}catch(J){this._diag.error("Error running span customization hook due to exception in handler",{triggerName:Q},J)}}}_hA.InstrumentationAbstract=khA});var hhA=R((ngY,ghA)=>{var XK=1000,GK=XK*60,WK=GK*60,C$=WK*24,q_B=C$*7,M_B=C$*365.25;ghA.exports=function(A,Q){Q=Q||{};var B=typeof A;if(B==="string"&&A.length>0)return z_B(A);else if(B==="number"&&isFinite(A))return Q.long?w_B(A):R_B(A);throw Error("val is not a non-empty string or a valid number. val="+JSON.stringify(A))};function z_B(A){if(A=String(A),A.length>100)return;var Q=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(A);if(!Q)return;var B=parseFloat(Q[1]),Y=(Q[2]||"ms").toLowerCase();switch(Y){case"years":case"year":case"yrs":case"yr":case"y":return B*M_B;case"weeks":case"week":case"w":return B*q_B;case"days":case"day":case"d":return B*C$;case"hours":case"hour":case"hrs":case"hr":case"h":return B*WK;case"minutes":case"minute":case"mins":case"min":case"m":return B*GK;case"seconds":case"second":case"secs":case"sec":case"s":return B*XK;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return B;default:return}}function R_B(A){var Q=Math.abs(A);if(Q>=C$)return Math.round(A/C$)+"d";if(Q>=WK)return Math.round(A/WK)+"h";if(Q>=GK)return Math.round(A/GK)+"m";if(Q>=XK)return Math.round(A/XK)+"s";return A+"ms"}function w_B(A){var Q=Math.abs(A);if(Q>=C$)return pO(A,Q,C$,"day");if(Q>=WK)return pO(A,Q,WK,"hour");if(Q>=GK)return pO(A,Q,GK,"minute");if(Q>=XK)return pO(A,Q,XK,"second");return A+" ms"}function pO(A,Q,B,Y){var J=Q>=B*1.5;return Math.round(A/B)+" "+Y+(J?"s":"")}});var Lp=R((sgY,xhA)=>{function j_B(A){B.debug=B,B.default=B,B.coerce=W,B.disable=X,B.enable=J,B.enabled=G,B.humanize=hhA(),B.destroy=F,Object.keys(A).forEach((Z)=>{B[Z]=A[Z]}),B.names=[],B.skips=[],B.formatters={};function Q(Z){let U=0;for(let $=0;${if(N==="%%")return"%";z++;let w=B.formatters[q];if(typeof w==="function"){let P=V[z];N=w.call(H,P),V.splice(z,1),z--}return N}),B.formatArgs.call(H,V),(H.log||B.log).apply(H,V)}if(I.namespace=Z,I.useColors=B.useColors(),I.color=B.selectColor(Z),I.extend=Y,I.destroy=B.destroy,Object.defineProperty(I,"enabled",{enumerable:!0,configurable:!1,get:()=>{if($!==null)return $;if(E!==B.namespaces)E=B.namespaces,K=B.enabled(Z);return K},set:(V)=>{$=V}}),typeof B.init==="function")B.init(I);return I}function Y(Z,U){let $=B(this.namespace+(typeof U>"u"?":":U)+Z);return $.log=this.log,$}function J(Z){B.save(Z),B.namespaces=Z,B.names=[],B.skips=[];let U=(typeof Z==="string"?Z:"").trim().replace(/\s+/g,",").split(",").filter(Boolean);for(let $ of U)if($[0]==="-")B.skips.push($.slice(1));else B.names.push($)}function C(Z,U){let $=0,E=0,K=-1,I=0;while($"-"+U)].join(",");return B.enable(""),Z}function G(Z){for(let U of B.skips)if(C(Z,U))return!1;for(let U of B.names)if(C(Z,U))return!0;return!1}function W(Z){if(Z instanceof Error)return Z.stack||Z.message;return Z}function F(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return B.enable(B.load()),B}xhA.exports=j_B});var bhA=R((fhA,iO)=>{fhA.formatArgs=P_B;fhA.save=T_B;fhA.load=S_B;fhA.useColors=O_B;fhA.storage=k_B();fhA.destroy=(()=>{let A=!1;return()=>{if(!A)A=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}})();fhA.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function O_B(){if(typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let A;return typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&(A=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(A[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function P_B(A){if(A[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+A[0]+(this.useColors?"%c ":" ")+"+"+iO.exports.humanize(this.diff),!this.useColors)return;let Q="color: "+this.color;A.splice(1,0,Q,"color: inherit");let B=0,Y=0;A[0].replace(/%[a-zA-Z%]/g,(J)=>{if(J==="%%")return;if(B++,J==="%c")Y=B}),A.splice(Y,0,Q)}fhA.log=console.debug||console.log||(()=>{});function T_B(A){try{if(A)fhA.storage.setItem("debug",A);else fhA.storage.removeItem("debug")}catch(Q){}}function S_B(){let A;try{A=fhA.storage.getItem("debug")||fhA.storage.getItem("DEBUG")}catch(Q){}if(!A&&typeof process<"u"&&"env"in process)A=process.env.DEBUG;return A}function k_B(){try{return localStorage}catch(A){}}iO.exports=Lp()(fhA);var{formatters:__B}=iO.exports;__B.j=function(A){try{return JSON.stringify(A)}catch(Q){return"[UnexpectedJSONParseError]: "+Q.message}}});var uhA=R((agY,mhA)=>{mhA.exports=(A,Q)=>{Q=Q||process.argv;let B=A.startsWith("-")?"":A.length===1?"-":"--",Y=Q.indexOf(B+A),J=Q.indexOf("--");return Y!==-1&&(J===-1?!0:Y{var m_B=u("os"),G1=uhA(),vJ=process.env,FK;if(G1("no-color")||G1("no-colors")||G1("color=false"))FK=!1;else if(G1("color")||G1("colors")||G1("color=true")||G1("color=always"))FK=!0;if("FORCE_COLOR"in vJ)FK=vJ.FORCE_COLOR.length===0||parseInt(vJ.FORCE_COLOR,10)!==0;function u_B(A){if(A===0)return!1;return{level:A,hasBasic:!0,has256:A>=2,has16m:A>=3}}function d_B(A){if(FK===!1)return 0;if(G1("color=16m")||G1("color=full")||G1("color=truecolor"))return 3;if(G1("color=256"))return 2;if(A&&!A.isTTY&&FK!==!0)return 0;let Q=FK?1:0;if(process.platform==="win32"){let B=m_B.release().split(".");if(Number(process.versions.node.split(".")[0])>=8&&Number(B[0])>=10&&Number(B[2])>=10586)return Number(B[2])>=14931?3:2;return 1}if("CI"in vJ){if(["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI"].some((B)=>(B in vJ))||vJ.CI_NAME==="codeship")return 1;return Q}if("TEAMCITY_VERSION"in vJ)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(vJ.TEAMCITY_VERSION)?1:0;if(vJ.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in vJ){let B=parseInt((vJ.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(vJ.TERM_PROGRAM){case"iTerm.app":return B>=3?3:2;case"Apple_Terminal":return 2}}if(/-256(color)?$/i.test(vJ.TERM))return 2;if(/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(vJ.TERM))return 1;if("COLORTERM"in vJ)return 1;if(vJ.TERM==="dumb")return Q;return Q}function qp(A){let Q=d_B(A);return u_B(Q)}dhA.exports={supportsColor:qp,stdout:qp(process.stdout),stderr:qp(process.stderr)}});var nhA=R((phA,sO)=>{var c_B=u("tty"),nO=u("util");phA.init=a_B;phA.log=n_B;phA.formatArgs=p_B;phA.save=s_B;phA.load=r_B;phA.useColors=l_B;phA.destroy=nO.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");phA.colors=[6,2,3,4,5,1];try{let A=chA();if(A&&(A.stderr||A).level>=2)phA.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221]}catch(A){}phA.inspectOpts=Object.keys(process.env).filter((A)=>{return/^debug_/i.test(A)}).reduce((A,Q)=>{let B=Q.substring(6).toLowerCase().replace(/_([a-z])/g,(J,C)=>{return C.toUpperCase()}),Y=process.env[Q];if(/^(yes|on|true|enabled)$/i.test(Y))Y=!0;else if(/^(no|off|false|disabled)$/i.test(Y))Y=!1;else if(Y==="null")Y=null;else Y=Number(Y);return A[B]=Y,A},{});function l_B(){return"colors"in phA.inspectOpts?Boolean(phA.inspectOpts.colors):c_B.isatty(process.stderr.fd)}function p_B(A){let{namespace:Q,useColors:B}=this;if(B){let Y=this.color,J="\x1B[3"+(Y<8?Y:"8;5;"+Y),C=` ${J};1m${Q} \x1B[0m`;A[0]=C+A[0].split(` `).join(` `+C),A.push(J+"m+"+sO.exports.humanize(this.diff)+"\x1B[0m")}else A[0]=i_B()+Q+" "+A[0]}function i_B(){if(phA.inspectOpts.hideDate)return"";return new Date().toISOString()+" "}function n_B(...A){return process.stderr.write(nO.formatWithOptions(phA.inspectOpts,...A)+` `)}function s_B(A){if(A)process.env.DEBUG=A;else delete process.env.DEBUG}function r_B(){return process.env.DEBUG}function a_B(A){A.inspectOpts={};let Q=Object.keys(phA.inspectOpts);for(let B=0;BQ.trim()).join(" ")};lhA.O=function(A){return this.inspectOpts.colors=this.useColors,nO.inspect(A,this.inspectOpts)}});var shA=R((egY,Mp)=>{if(typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs)Mp.exports=bhA();else Mp.exports=nhA()});var Rp=R((AhY,rhA)=>{var zp=u("path").sep;rhA.exports=function(A){var Q=A.split(zp),B=Q.lastIndexOf("node_modules");if(B===-1)return;if(!Q[B+1])return;var Y=Q[B+1][0]==="@",J=Y?Q[B+1]+"/"+Q[B+2]:Q[B+1],C=Y?3:2,X="",G=B+C-1;for(var W=0;W<=G;W++)if(W===G)X+=Q[W];else X+=Q[W]+zp;var F="",Z=Q.length-1;for(var U=B+C;U<=Z;U++)if(U===Z)F+=Q[U];else F+=Q[U]+zp;return{name:J,basedir:X,path:F}}});var wp=R((QhY,ahA)=>{var JvB=u("os");ahA.exports=JvB.homedir||function(){var Q=process.env.HOME,B=process.env.LOGNAME||process.env.USER||process.env.LNAME||process.env.USERNAME;if(process.platform==="win32")return process.env.USERPROFILE||process.env.HOMEDRIVE+process.env.HOMEPATH||Q||null;if(process.platform==="darwin")return Q||(B?"/Users/"+B:null);if(process.platform==="linux")return Q||(process.getuid()===0?"/root":B?"/home/"+B:null);return Q||null}});var jp=R((BhY,ohA)=>{ohA.exports=function(){var A=Error.prepareStackTrace;Error.prepareStackTrace=function(B,Y){return Y};var Q=Error().stack;return Error.prepareStackTrace=A,Q[2].getFileName()}});var thA=R((YhY,VL)=>{var CvB=process.platform==="win32",XvB=/^(((?:[a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/]+)?[\\\/]?)(?:[^\\\/]*[\\\/])*)((\.{1,2}|[^\\\/]+?|)(\.[^.\/\\]*|))[\\\/]*$/,Op={};function GvB(A){return XvB.exec(A).slice(1)}Op.parse=function(A){if(typeof A!=="string")throw TypeError("Parameter 'pathString' must be a string, not "+typeof A);var Q=GvB(A);if(!Q||Q.length!==5)throw TypeError("Invalid path '"+A+"'");return{root:Q[1],dir:Q[0]===Q[1]?Q[0]:Q[0].slice(0,-1),base:Q[2],ext:Q[4],name:Q[3]}};var WvB=/^((\/?)(?:[^\/]*\/)*)((\.{1,2}|[^\/]+?|)(\.[^.\/]*|))[\/]*$/,Pp={};function FvB(A){return WvB.exec(A).slice(1)}Pp.parse=function(A){if(typeof A!=="string")throw TypeError("Parameter 'pathString' must be a string, not "+typeof A);var Q=FvB(A);if(!Q||Q.length!==5)throw TypeError("Invalid path '"+A+"'");return{root:Q[1],dir:Q[0].slice(0,-1),base:Q[2],ext:Q[4],name:Q[3]}};if(CvB)VL.exports=Op.parse;else VL.exports=Pp.parse;VL.exports.posix=Pp.parse;VL.exports.win32=Op.parse});var Tp=R((JhY,BxA)=>{var QxA=u("path"),ehA=QxA.parse||thA(),AxA=function(Q,B){var Y="/";if(/^([A-Za-z]:)/.test(Q))Y="";else if(/^\\\\/.test(Q))Y="\\\\";var J=[Q],C=ehA(Q);while(C.dir!==J[J.length-1])J.push(C.dir),C=ehA(C.dir);return J.reduce(function(X,G){return X.concat(B.map(function(W){return QxA.resolve(Y,G,W)}))},[])};BxA.exports=function(Q,B,Y){var J=B&&B.moduleDirectory?[].concat(B.moduleDirectory):["node_modules"];if(B&&typeof B.paths==="function")return B.paths(Y,Q,function(){return AxA(Q,J)},B);var C=AxA(Q,J);return B&&B.paths?C.concat(B.paths):C}});var Sp=R((ChY,YxA)=>{YxA.exports=function(A,Q){return Q||{}}});var XxA=R((XhY,CxA)=>{var ZvB="Function.prototype.bind called on incompatible ",$vB=Object.prototype.toString,UvB=Math.max,EvB="[object Function]",JxA=function(Q,B){var Y=[];for(var J=0;J{var IvB=XxA();GxA.exports=Function.prototype.bind||IvB});var ZxA=R((WhY,FxA)=>{var HvB=Function.prototype.call,DvB=Object.prototype.hasOwnProperty,NvB=WxA();FxA.exports=NvB.call(HvB,DvB)});var $xA=R((FhY,LvB)=>{LvB.exports={assert:!0,"node:assert":[">= 14.18 && < 15",">= 16"],"assert/strict":">= 15","node:assert/strict":">= 16",async_hooks:">= 8","node:async_hooks":[">= 14.18 && < 15",">= 16"],buffer_ieee754:">= 0.5 && < 0.9.7",buffer:!0,"node:buffer":[">= 14.18 && < 15",">= 16"],child_process:!0,"node:child_process":[">= 14.18 && < 15",">= 16"],cluster:">= 0.5","node:cluster":[">= 14.18 && < 15",">= 16"],console:!0,"node:console":[">= 14.18 && < 15",">= 16"],constants:!0,"node:constants":[">= 14.18 && < 15",">= 16"],crypto:!0,"node:crypto":[">= 14.18 && < 15",">= 16"],_debug_agent:">= 1 && < 8",_debugger:"< 8",dgram:!0,"node:dgram":[">= 14.18 && < 15",">= 16"],diagnostics_channel:[">= 14.17 && < 15",">= 15.1"],"node:diagnostics_channel":[">= 14.18 && < 15",">= 16"],dns:!0,"node:dns":[">= 14.18 && < 15",">= 16"],"dns/promises":">= 15","node:dns/promises":">= 16",domain:">= 0.7.12","node:domain":[">= 14.18 && < 15",">= 16"],events:!0,"node:events":[">= 14.18 && < 15",">= 16"],freelist:"< 6",fs:!0,"node:fs":[">= 14.18 && < 15",">= 16"],"fs/promises":[">= 10 && < 10.1",">= 14"],"node:fs/promises":[">= 14.18 && < 15",">= 16"],_http_agent:">= 0.11.1","node:_http_agent":[">= 14.18 && < 15",">= 16"],_http_client:">= 0.11.1","node:_http_client":[">= 14.18 && < 15",">= 16"],_http_common:">= 0.11.1","node:_http_common":[">= 14.18 && < 15",">= 16"],_http_incoming:">= 0.11.1","node:_http_incoming":[">= 14.18 && < 15",">= 16"],_http_outgoing:">= 0.11.1","node:_http_outgoing":[">= 14.18 && < 15",">= 16"],_http_server:">= 0.11.1","node:_http_server":[">= 14.18 && < 15",">= 16"],http:!0,"node:http":[">= 14.18 && < 15",">= 16"],http2:">= 8.8","node:http2":[">= 14.18 && < 15",">= 16"],https:!0,"node:https":[">= 14.18 && < 15",">= 16"],inspector:">= 8","node:inspector":[">= 14.18 && < 15",">= 16"],"inspector/promises":[">= 19"],"node:inspector/promises":[">= 19"],_linklist:"< 8",module:!0,"node:module":[">= 14.18 && < 15",">= 16"],net:!0,"node:net":[">= 14.18 && < 15",">= 16"],"node-inspect/lib/_inspect":">= 7.6 && < 12","node-inspect/lib/internal/inspect_client":">= 7.6 && < 12","node-inspect/lib/internal/inspect_repl":">= 7.6 && < 12",os:!0,"node:os":[">= 14.18 && < 15",">= 16"],path:!0,"node:path":[">= 14.18 && < 15",">= 16"],"path/posix":">= 15.3","node:path/posix":">= 16","path/win32":">= 15.3","node:path/win32":">= 16",perf_hooks:">= 8.5","node:perf_hooks":[">= 14.18 && < 15",">= 16"],process:">= 1","node:process":[">= 14.18 && < 15",">= 16"],punycode:">= 0.5","node:punycode":[">= 14.18 && < 15",">= 16"],querystring:!0,"node:querystring":[">= 14.18 && < 15",">= 16"],readline:!0,"node:readline":[">= 14.18 && < 15",">= 16"],"readline/promises":">= 17","node:readline/promises":">= 17",repl:!0,"node:repl":[">= 14.18 && < 15",">= 16"],"node:sea":[">= 20.12 && < 21",">= 21.7"],smalloc:">= 0.11.5 && < 3","node:sqlite":[">= 22.13 && < 23",">= 23.4"],_stream_duplex:">= 0.9.4","node:_stream_duplex":[">= 14.18 && < 15",">= 16"],_stream_transform:">= 0.9.4","node:_stream_transform":[">= 14.18 && < 15",">= 16"],_stream_wrap:">= 1.4.1","node:_stream_wrap":[">= 14.18 && < 15",">= 16"],_stream_passthrough:">= 0.9.4","node:_stream_passthrough":[">= 14.18 && < 15",">= 16"],_stream_readable:">= 0.9.4","node:_stream_readable":[">= 14.18 && < 15",">= 16"],_stream_writable:">= 0.9.4","node:_stream_writable":[">= 14.18 && < 15",">= 16"],stream:!0,"node:stream":[">= 14.18 && < 15",">= 16"],"stream/consumers":">= 16.7","node:stream/consumers":">= 16.7","stream/promises":">= 15","node:stream/promises":">= 16","stream/web":">= 16.5","node:stream/web":">= 16.5",string_decoder:!0,"node:string_decoder":[">= 14.18 && < 15",">= 16"],sys:[">= 0.4 && < 0.7",">= 0.8"],"node:sys":[">= 14.18 && < 15",">= 16"],"test/reporters":">= 19.9 && < 20.2","node:test/reporters":[">= 18.17 && < 19",">= 19.9",">= 20"],"test/mock_loader":">= 22.3 && < 22.7","node:test/mock_loader":">= 22.3 && < 22.7","node:test":[">= 16.17 && < 17",">= 18"],timers:!0,"node:timers":[">= 14.18 && < 15",">= 16"],"timers/promises":">= 15","node:timers/promises":">= 16",_tls_common:">= 0.11.13","node:_tls_common":[">= 14.18 && < 15",">= 16"],_tls_legacy:">= 0.11.3 && < 10",_tls_wrap:">= 0.11.3","node:_tls_wrap":[">= 14.18 && < 15",">= 16"],tls:!0,"node:tls":[">= 14.18 && < 15",">= 16"],trace_events:">= 10","node:trace_events":[">= 14.18 && < 15",">= 16"],tty:!0,"node:tty":[">= 14.18 && < 15",">= 16"],url:!0,"node:url":[">= 14.18 && < 15",">= 16"],util:!0,"node:util":[">= 14.18 && < 15",">= 16"],"util/types":">= 15.3","node:util/types":">= 16","v8/tools/arguments":">= 10 && < 12","v8/tools/codemap":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/consarray":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/csvparser":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/logreader":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/profile_view":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/splaytree":[">= 4.4 && < 5",">= 5.2 && < 12"],v8:">= 1","node:v8":[">= 14.18 && < 15",">= 16"],vm:!0,"node:vm":[">= 14.18 && < 15",">= 16"],wasi:[">= 13.4 && < 13.5",">= 18.17 && < 19",">= 20"],"node:wasi":[">= 18.17 && < 19",">= 20"],worker_threads:">= 11.7","node:worker_threads":[">= 14.18 && < 15",">= 16"],zlib:">= 0.5","node:zlib":[">= 14.18 && < 15",">= 16"]}});var IL=R((ZhY,KxA)=>{var qvB=ZxA();function MvB(A,Q){var B=A.split("."),Y=Q.split(" "),J=Y.length>1?Y[0]:"=",C=(Y.length>1?Y[1]:Y[0]).split(".");for(var X=0;X<3;++X){var G=parseInt(B[X]||0,10),W=parseInt(C[X]||0,10);if(G===W)continue;if(J==="<")return G=")return G>=W;return!1}return J===">="}function UxA(A,Q){var B=Q.split(/ ?&& ?/);if(B.length===0)return!1;for(var Y=0;Y"u"?process.versions&&process.versions.node:A;if(typeof B!=="string")throw TypeError(typeof A>"u"?"Unable to determine current node version":"If provided, a valid node version is required");if(Q&&typeof Q==="object"){for(var Y=0;Y{var X$=u("fs"),RvB=wp(),zY=u("path"),wvB=jp(),jvB=Tp(),OvB=Sp(),PvB=IL(),TvB=process.platform!=="win32"&&X$.realpath&&typeof X$.realpath.native==="function"?X$.realpath.native:X$.realpath,VxA=RvB(),SvB=function(){return[zY.join(VxA,".node_modules"),zY.join(VxA,".node_libraries")]},kvB=function(Q,B){X$.stat(Q,function(Y,J){if(!Y)return B(null,J.isFile()||J.isFIFO());if(Y.code==="ENOENT"||Y.code==="ENOTDIR")return B(null,!1);return B(Y)})},_vB=function(Q,B){X$.stat(Q,function(Y,J){if(!Y)return B(null,J.isDirectory());if(Y.code==="ENOENT"||Y.code==="ENOTDIR")return B(null,!1);return B(Y)})},vvB=function(Q,B){TvB(Q,function(Y,J){if(Y&&Y.code!=="ENOENT")B(Y);else B(null,Y?Q:J)})},HL=function(Q,B,Y,J){if(Y&&Y.preserveSymlinks===!1)Q(B,J);else J(null,B)},yvB=function(Q,B,Y){Q(B,function(J,C){if(J)Y(J);else try{var X=JSON.parse(C);Y(null,X)}catch(G){Y(null)}})},gvB=function(Q,B,Y){var J=jvB(B,Y,Q);for(var C=0;C{hvB.exports={assert:!0,"node:assert":[">= 14.18 && < 15",">= 16"],"assert/strict":">= 15","node:assert/strict":">= 16",async_hooks:">= 8","node:async_hooks":[">= 14.18 && < 15",">= 16"],buffer_ieee754:">= 0.5 && < 0.9.7",buffer:!0,"node:buffer":[">= 14.18 && < 15",">= 16"],child_process:!0,"node:child_process":[">= 14.18 && < 15",">= 16"],cluster:">= 0.5","node:cluster":[">= 14.18 && < 15",">= 16"],console:!0,"node:console":[">= 14.18 && < 15",">= 16"],constants:!0,"node:constants":[">= 14.18 && < 15",">= 16"],crypto:!0,"node:crypto":[">= 14.18 && < 15",">= 16"],_debug_agent:">= 1 && < 8",_debugger:"< 8",dgram:!0,"node:dgram":[">= 14.18 && < 15",">= 16"],diagnostics_channel:[">= 14.17 && < 15",">= 15.1"],"node:diagnostics_channel":[">= 14.18 && < 15",">= 16"],dns:!0,"node:dns":[">= 14.18 && < 15",">= 16"],"dns/promises":">= 15","node:dns/promises":">= 16",domain:">= 0.7.12","node:domain":[">= 14.18 && < 15",">= 16"],events:!0,"node:events":[">= 14.18 && < 15",">= 16"],freelist:"< 6",fs:!0,"node:fs":[">= 14.18 && < 15",">= 16"],"fs/promises":[">= 10 && < 10.1",">= 14"],"node:fs/promises":[">= 14.18 && < 15",">= 16"],_http_agent:">= 0.11.1","node:_http_agent":[">= 14.18 && < 15",">= 16"],_http_client:">= 0.11.1","node:_http_client":[">= 14.18 && < 15",">= 16"],_http_common:">= 0.11.1","node:_http_common":[">= 14.18 && < 15",">= 16"],_http_incoming:">= 0.11.1","node:_http_incoming":[">= 14.18 && < 15",">= 16"],_http_outgoing:">= 0.11.1","node:_http_outgoing":[">= 14.18 && < 15",">= 16"],_http_server:">= 0.11.1","node:_http_server":[">= 14.18 && < 15",">= 16"],http:!0,"node:http":[">= 14.18 && < 15",">= 16"],http2:">= 8.8","node:http2":[">= 14.18 && < 15",">= 16"],https:!0,"node:https":[">= 14.18 && < 15",">= 16"],inspector:">= 8","node:inspector":[">= 14.18 && < 15",">= 16"],"inspector/promises":[">= 19"],"node:inspector/promises":[">= 19"],_linklist:"< 8",module:!0,"node:module":[">= 14.18 && < 15",">= 16"],net:!0,"node:net":[">= 14.18 && < 15",">= 16"],"node-inspect/lib/_inspect":">= 7.6 && < 12","node-inspect/lib/internal/inspect_client":">= 7.6 && < 12","node-inspect/lib/internal/inspect_repl":">= 7.6 && < 12",os:!0,"node:os":[">= 14.18 && < 15",">= 16"],path:!0,"node:path":[">= 14.18 && < 15",">= 16"],"path/posix":">= 15.3","node:path/posix":">= 16","path/win32":">= 15.3","node:path/win32":">= 16",perf_hooks:">= 8.5","node:perf_hooks":[">= 14.18 && < 15",">= 16"],process:">= 1","node:process":[">= 14.18 && < 15",">= 16"],punycode:">= 0.5","node:punycode":[">= 14.18 && < 15",">= 16"],querystring:!0,"node:querystring":[">= 14.18 && < 15",">= 16"],readline:!0,"node:readline":[">= 14.18 && < 15",">= 16"],"readline/promises":">= 17","node:readline/promises":">= 17",repl:!0,"node:repl":[">= 14.18 && < 15",">= 16"],"node:sea":[">= 20.12 && < 21",">= 21.7"],smalloc:">= 0.11.5 && < 3","node:sqlite":">= 23.4",_stream_duplex:">= 0.9.4","node:_stream_duplex":[">= 14.18 && < 15",">= 16"],_stream_transform:">= 0.9.4","node:_stream_transform":[">= 14.18 && < 15",">= 16"],_stream_wrap:">= 1.4.1","node:_stream_wrap":[">= 14.18 && < 15",">= 16"],_stream_passthrough:">= 0.9.4","node:_stream_passthrough":[">= 14.18 && < 15",">= 16"],_stream_readable:">= 0.9.4","node:_stream_readable":[">= 14.18 && < 15",">= 16"],_stream_writable:">= 0.9.4","node:_stream_writable":[">= 14.18 && < 15",">= 16"],stream:!0,"node:stream":[">= 14.18 && < 15",">= 16"],"stream/consumers":">= 16.7","node:stream/consumers":">= 16.7","stream/promises":">= 15","node:stream/promises":">= 16","stream/web":">= 16.5","node:stream/web":">= 16.5",string_decoder:!0,"node:string_decoder":[">= 14.18 && < 15",">= 16"],sys:[">= 0.4 && < 0.7",">= 0.8"],"node:sys":[">= 14.18 && < 15",">= 16"],"test/reporters":">= 19.9 && < 20.2","node:test/reporters":[">= 18.17 && < 19",">= 19.9",">= 20"],"test/mock_loader":">= 22.3 && < 22.7","node:test/mock_loader":">= 22.3 && < 22.7","node:test":[">= 16.17 && < 17",">= 18"],timers:!0,"node:timers":[">= 14.18 && < 15",">= 16"],"timers/promises":">= 15","node:timers/promises":">= 16",_tls_common:">= 0.11.13","node:_tls_common":[">= 14.18 && < 15",">= 16"],_tls_legacy:">= 0.11.3 && < 10",_tls_wrap:">= 0.11.3","node:_tls_wrap":[">= 14.18 && < 15",">= 16"],tls:!0,"node:tls":[">= 14.18 && < 15",">= 16"],trace_events:">= 10","node:trace_events":[">= 14.18 && < 15",">= 16"],tty:!0,"node:tty":[">= 14.18 && < 15",">= 16"],url:!0,"node:url":[">= 14.18 && < 15",">= 16"],util:!0,"node:util":[">= 14.18 && < 15",">= 16"],"util/types":">= 15.3","node:util/types":">= 16","v8/tools/arguments":">= 10 && < 12","v8/tools/codemap":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/consarray":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/csvparser":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/logreader":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/profile_view":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/splaytree":[">= 4.4 && < 5",">= 5.2 && < 12"],v8:">= 1","node:v8":[">= 14.18 && < 15",">= 16"],vm:!0,"node:vm":[">= 14.18 && < 15",">= 16"],wasi:[">= 13.4 && < 13.5",">= 18.17 && < 19",">= 20"],"node:wasi":[">= 18.17 && < 19",">= 20"],worker_threads:">= 11.7","node:worker_threads":[">= 14.18 && < 15",">= 16"],zlib:">= 0.5","node:zlib":[">= 14.18 && < 15",">= 16"]}});var MxA=R((EhY,qxA)=>{var xvB=IL(),NxA=DxA(),LxA={};for(DL in NxA)if(Object.prototype.hasOwnProperty.call(NxA,DL))LxA[DL]=xvB(DL);var DL;qxA.exports=LxA});var RxA=R((KhY,zxA)=>{var fvB=IL();zxA.exports=function(Q){return fvB(Q)}});var OxA=R((VhY,jxA)=>{var bvB=IL(),G$=u("fs"),yJ=u("path"),mvB=wp(),uvB=jp(),dvB=Tp(),cvB=Sp(),lvB=process.platform!=="win32"&&G$.realpathSync&&typeof G$.realpathSync.native==="function"?G$.realpathSync.native:G$.realpathSync,wxA=mvB(),pvB=function(){return[yJ.join(wxA,".node_modules"),yJ.join(wxA,".node_libraries")]},ivB=function(Q){try{var B=G$.statSync(Q,{throwIfNoEntry:!1})}catch(Y){if(Y&&(Y.code==="ENOENT"||Y.code==="ENOTDIR"))return!1;throw Y}return!!B&&(B.isFile()||B.isFIFO())},nvB=function(Q){try{var B=G$.statSync(Q,{throwIfNoEntry:!1})}catch(Y){if(Y&&(Y.code==="ENOENT"||Y.code==="ENOTDIR"))return!1;throw Y}return!!B&&B.isDirectory()},svB=function(Q){try{return lvB(Q)}catch(B){if(B.code!=="ENOENT")throw B}return Q},NL=function(Q,B,Y){if(Y&&Y.preserveSymlinks===!1)return Q(B);return B},rvB=function(Q,B){var Y=Q(B);try{var J=JSON.parse(Y);return J}catch(C){}},avB=function(Q,B,Y){var J=dvB(B,Y,Q);for(var C=0;C{var rO=HxA();rO.core=MxA();rO.isCore=RxA();rO.sync=OxA();PxA.exports=rO});var TxA=R((HhY,ovB)=>{ovB.exports={name:"require-in-the-middle",version:"7.5.2",description:"Module to hook into the Node.js require function",main:"index.js",types:"types/index.d.ts",dependencies:{debug:"^4.3.5","module-details-from-path":"^1.0.3",resolve:"^1.22.8"},devDependencies:{"@babel/core":"^7.9.0","@babel/preset-env":"^7.9.5","@babel/preset-typescript":"^7.9.0","@babel/register":"^7.9.0","ipp-printer":"^1.0.0",patterns:"^1.0.3",roundround:"^0.2.0",semver:"^6.3.0",standard:"^14.3.1",tape:"^4.11.0"},scripts:{test:"npm run test:lint && npm run test:tape && npm run test:babel","test:lint":"standard","test:tape":"tape test/*.js","test:babel":"node test/babel/babel-register.js"},repository:{type:"git",url:"git+https://github.com/nodejs/require-in-the-middle.git"},keywords:["require","hook","shim","shimmer","shimming","patch","monkey","monkeypatch","module","load"],files:["types"],author:"Thomas Watson Steen (https://twitter.com/wa7son)",license:"MIT",bugs:{url:"https://github.com/nodejs/require-in-the-middle/issues"},homepage:"https://github.com/nodejs/require-in-the-middle#readme",engines:{node:">=8.6.0"}}});var yp=R((DhY,vp)=>{var $K=u("path"),W1=u("module"),EY=shA()("require-in-the-middle"),tvB=Rp();vp.exports=LL;vp.exports.Hook=LL;var _p,ZK;if(W1.isBuiltin)ZK=W1.isBuiltin;else if(W1.builtinModules)ZK=(A)=>{if(A.startsWith("node:"))return!0;if(_p===void 0)_p=new Set(W1.builtinModules);return _p.has(A)};else{let A=kp(),[Q,B]=process.versions.node.split(".").map(Number);if(Q===8&&B<8)ZK=(Y)=>{if(Y==="http2")return!0;return!!A.core[Y]};else ZK=(Y)=>{return!!A.core[Y]}}var aO;function evB(A,Q){if(!aO)if(u.resolve&&u.resolve.paths)aO=function(B,Y){return u.resolve(B,{paths:[Y]})};else{let B=kp();aO=function(Y,J){return B.sync(Y,{basedir:J})}}return aO(A,Q)}var AyB=/([/\\]index)?(\.js)?$/;class SxA{constructor(){this._localCache=new Map,this._kRitmExports=Symbol("RitmExports")}has(A,Q){if(this._localCache.has(A))return!0;else if(!Q){let B=u.cache[A];return!!(B&&(this._kRitmExports in B))}else return!1}get(A,Q){let B=this._localCache.get(A);if(B!==void 0)return B;else if(!Q){let Y=u.cache[A];return Y&&Y[this._kRitmExports]}}set(A,Q,B){if(B)this._localCache.set(A,Q);else if(A in u.cache)u.cache[A][this._kRitmExports]=Q;else EY('non-core module is unexpectedly not in require.cache: "%s"',A),this._localCache.set(A,Q)}}function LL(A,Q,B){if(this instanceof LL===!1)return new LL(A,Q,B);if(typeof A==="function")B=A,A=null,Q=null;else if(typeof Q==="function")B=Q,Q=null;if(typeof W1._resolveFilename!=="function"){console.error("Error: Expected Module._resolveFilename to be a function (was: %s) - aborting!",typeof W1._resolveFilename),console.error("Please report this error as an issue related to Node.js %s at %s",process.version,TxA().bugs.url);return}this._cache=new SxA,this._unhooked=!1,this._origRequire=W1.prototype.require;let Y=this,J=new Set,C=Q?Q.internals===!0:!1,X=Array.isArray(A);if(EY("registering require hook"),this._require=W1.prototype.require=function(W){if(Y._unhooked===!0)return EY("ignoring require call - module is soft-unhooked"),Y._origRequire.apply(this,arguments);return G.call(this,arguments,!1)},typeof process.getBuiltinModule==="function")this._origGetBuiltinModule=process.getBuiltinModule,this._getBuiltinModule=process.getBuiltinModule=function(W){if(Y._unhooked===!0)return EY("ignoring process.getBuiltinModule call - module is soft-unhooked"),Y._origGetBuiltinModule.apply(this,arguments);return G.call(this,arguments,!0)};function G(W,F){let Z=W[0],U=ZK(Z),$;if(U){if($=Z,Z.startsWith("node:")){let D=Z.slice(5);if(ZK(D))$=D}}else if(F)return EY("call to process.getBuiltinModule with unknown built-in id"),Y._origGetBuiltinModule.apply(this,W);else try{$=W1._resolveFilename(Z,this)}catch(D){return EY('Module._resolveFilename("%s") threw %j, calling original Module.require',Z,D.message),Y._origRequire.apply(this,W)}let E,K;if(EY("processing %s module require('%s'): %s",U===!0?"core":"non-core",Z,$),Y._cache.has($,U)===!0)return EY("returning already patched cached module: %s",$),Y._cache.get($,U);let I=J.has($);if(I===!1)J.add($);let V=F?Y._origGetBuiltinModule.apply(this,W):Y._origRequire.apply(this,W);if(I===!0)return EY("module is in the process of being patched already - ignoring: %s",$),V;if(J.delete($),U===!0){if(X===!0&&A.includes($)===!1)return EY("ignoring core module not on whitelist: %s",$),V;E=$}else if(X===!0&&A.includes($)){let D=$K.parse($);E=D.name,K=D.dir}else{let D=tvB($);if(D===void 0)return EY("could not parse filename: %s",$),V;E=D.name,K=D.basedir;let L=QyB(D);EY("resolved filename to module: %s (id: %s, resolved: %s, basedir: %s)",E,Z,L,K);let z=!1;if(X){if(!Z.startsWith(".")&&A.includes(Z))E=Z,z=!0;if(!A.includes(E)&&!A.includes(L))return V;if(A.includes(L)&&L!==E)E=L,z=!0}if(!z){let M;try{M=evB(E,K)}catch(N){return EY("could not resolve module: %s",E),Y._cache.set($,V,U),V}if(M!==$)if(C===!0)E=E+$K.sep+$K.relative(K,$),EY("preparing to process require of internal file: %s",E);else return EY("ignoring require of non-main module file: %s",M),Y._cache.set($,V,U),V}}Y._cache.set($,V,U),EY("calling require hook: %s",E);let H=B(V,E,K);return Y._cache.set($,H,U),EY("returning module: %s",E),H}}LL.prototype.unhook=function(){if(this._unhooked=!0,this._require===W1.prototype.require)W1.prototype.require=this._origRequire,EY("require unhook successful");else EY("require unhook unsuccessful");if(process.getBuiltinModule!==void 0)if(this._getBuiltinModule===process.getBuiltinModule)process.getBuiltinModule=this._origGetBuiltinModule,EY("process.getBuiltinModule unhook successful");else EY("process.getBuiltinModule unhook unsuccessful")};function QyB(A){let Q=$K.sep!=="/"?A.path.split($K.sep).join("/"):A.path;return $K.posix.join(A.name,Q).replace(AyB,"")}});var yxA=R((_xA)=>{Object.defineProperty(_xA,"__esModule",{value:!0});_xA.ModuleNameTrie=_xA.ModuleNameSeparator=void 0;_xA.ModuleNameSeparator="/";class gp{constructor(){this.hooks=[],this.children=new Map}}class kxA{constructor(){this._trie=new gp,this._counter=0}insert(A){let Q=this._trie;for(let B of A.moduleName.split(_xA.ModuleNameSeparator)){let Y=Q.children.get(B);if(!Y)Y=new gp,Q.children.set(B,Y);Q=Y}Q.hooks.push({hook:A,insertedId:this._counter++})}search(A,{maintainInsertionOrder:Q,fullOnly:B}={}){let Y=this._trie,J=[],C=!0;for(let X of A.split(_xA.ModuleNameSeparator)){let G=Y.children.get(X);if(!G){C=!1;break}if(!B)J.push(...G.hooks);Y=G}if(B&&C)J.push(...Y.hooks);if(J.length===0)return[];if(J.length===1)return[J[0].hook];if(Q)J.sort((X,G)=>X.insertedId-G.insertedId);return J.map(({hook:X})=>X)}}_xA.ModuleNameTrie=kxA});var fxA=R((hxA)=>{Object.defineProperty(hxA,"__esModule",{value:!0});hxA.RequireInTheMiddleSingleton=void 0;var ByB=yp(),gxA=u("path"),xp=yxA(),YyB=["afterEach","after","beforeEach","before","describe","it"].every((A)=>{return typeof global[A]==="function"});class oO{constructor(){this._moduleNameTrie=new xp.ModuleNameTrie,this._initialize()}_initialize(){new ByB.Hook(null,{internals:!0},(A,Q,B)=>{let Y=JyB(Q),J=this._moduleNameTrie.search(Y,{maintainInsertionOrder:!0,fullOnly:B===void 0});for(let{onRequire:C}of J)A=C(A,Q,B);return A})}register(A,Q){let B={moduleName:A,onRequire:Q};return this._moduleNameTrie.insert(B),B}static getInstance(){var A;if(YyB)return new oO;return this._instance=(A=this._instance)!==null&&A!==void 0?A:new oO}}hxA.RequireInTheMiddleSingleton=oO;function JyB(A){return gxA.sep!==xp.ModuleNameSeparator?A.split(gxA.sep).join(xp.ModuleNameSeparator):A}});var cxA=R((GyB)=>{var bxA=[],fp=new WeakMap,mxA=new WeakMap,uxA=new Map,dxA=[],CyB={set(A,Q,B){return fp.get(A)[Q](B)},get(A,Q){if(Q===Symbol.toStringTag)return"Module";let B=mxA.get(A)[Q];if(typeof B==="function")return B()},defineProperty(A,Q,B){if(!("value"in B))throw Error("Getters/setters are not supported for exports property descriptors.");return fp.get(A)[Q](B.value)}};function XyB(A,Q,B,Y,J){uxA.set(A,J),fp.set(Q,B),mxA.set(Q,Y);let C=new Proxy(Q,CyB);bxA.forEach((X)=>X(A,C)),dxA.push([A,C])}GyB.register=XyB;GyB.importHooks=bxA;GyB.specifiers=uxA;GyB.toHook=dxA});var up=R((zhY,UK)=>{var lxA=u("path"),UyB=Rp(),{fileURLToPath:pxA}=u("url"),{MessageChannel:EyB}=u("worker_threads"),{importHooks:bp,specifiers:KyB,toHook:VyB}=cxA();function nxA(A){bp.push(A),VyB.forEach(([Q,B])=>A(Q,B))}function sxA(A){let Q=bp.indexOf(A);if(Q>-1)bp.splice(Q,1)}function ixA(A,Q,B,Y){let J=A(Q,B,Y);if(J&&J!==Q)Q.default=J}var mp;function IyB(){let{port1:A,port2:Q}=new EyB,B=0,Y;mp=(G)=>{B++,A.postMessage(G)},A.on("message",()=>{if(B--,Y&&B<=0)Y()}).unref();function J(){let G=setInterval(()=>{},1000),W=new Promise((F)=>{Y=F}).then(()=>{clearInterval(G)});if(B===0)Y();return W}let C=Q;return{registerOptions:{data:{addHookMessagePort:C,include:[]},transferList:[C]},addHookMessagePort:C,waitForAllMessagesAcknowledged:J}}function qL(A,Q,B){if(this instanceof qL===!1)return new qL(A,Q,B);if(typeof A==="function")B=A,A=null,Q=null;else if(typeof Q==="function")B=Q,Q=null;let Y=Q?Q.internals===!0:!1;if(mp&&Array.isArray(A))mp(A);this._iitmHook=(J,C)=>{let X=J,G=J.startsWith("node:"),W;if(G)J=J.replace(/^node:/,"");else{if(J.startsWith("file://"))try{J=pxA(J)}catch(Z){}let F=UyB(J);if(F)J=F.name,W=F.basedir}if(A){for(let F of A)if(F===J){if(W){if(Y)J=J+lxA.sep+lxA.relative(W,pxA(X));else if(!W.endsWith(KyB.get(X)))continue}ixA(B,C,J,W)}}else ixA(B,C,J,W)},nxA(this._iitmHook)}qL.prototype.unhook=function(){sxA(this._iitmHook)};UK.exports=qL;UK.exports.Hook=qL;UK.exports.addHook=nxA;UK.exports.removeHook=sxA;UK.exports.createAddHookMessageChannel=IyB});var dp=R((rxA)=>{Object.defineProperty(rxA,"__esModule",{value:!0});rxA.isWrapped=rxA.safeExecuteInTheMiddleAsync=rxA.safeExecuteInTheMiddle=void 0;function HyB(A,Q,B){let Y,J;try{J=A()}catch(C){Y=C}finally{if(Q(Y,J),Y&&!B)throw Y;return J}}rxA.safeExecuteInTheMiddle=HyB;async function DyB(A,Q,B){let Y,J;try{J=await A()}catch(C){Y=C}finally{if(Q(Y,J),Y&&!B)throw Y;return J}}rxA.safeExecuteInTheMiddleAsync=DyB;function NyB(A){return typeof A==="function"&&typeof A.__original==="function"&&typeof A.__unwrap==="function"&&A.__wrapped===!0}rxA.isWrapped=NyB});var BfA=R((AfA)=>{Object.defineProperty(AfA,"__esModule",{value:!0});AfA.InstrumentationBase=void 0;var ML=u("path"),oxA=u("util"),MyB=OhA(),cp=Dp(),zyB=yhA(),RyB=fxA(),wyB=up(),zL=yA(),jyB=yp(),OyB=u("fs"),PyB=dp();class exA extends zyB.InstrumentationAbstract{constructor(A,Q,B){super(A,Q,B);this._hooks=[],this._requireInTheMiddleSingleton=RyB.RequireInTheMiddleSingleton.getInstance(),this._enabled=!1,this._wrap=(J,C,X)=>{if((0,PyB.isWrapped)(J[C]))this._unwrap(J,C);if(!oxA.types.isProxy(J))return(0,cp.wrap)(J,C,X);else{let G=(0,cp.wrap)(Object.assign({},J),C,X);return Object.defineProperty(J,C,{value:G}),G}},this._unwrap=(J,C)=>{if(!oxA.types.isProxy(J))return(0,cp.unwrap)(J,C);else return Object.defineProperty(J,C,{value:J[C]})},this._massWrap=(J,C,X)=>{if(!J){zL.diag.error("must provide one or more modules to patch");return}else if(!Array.isArray(J))J=[J];if(!(C&&Array.isArray(C))){zL.diag.error("must provide one or more functions to wrap on modules");return}J.forEach((G)=>{C.forEach((W)=>{this._wrap(G,W,X)})})},this._massUnwrap=(J,C)=>{if(!J){zL.diag.error("must provide one or more modules to patch");return}else if(!Array.isArray(J))J=[J];if(!(C&&Array.isArray(C))){zL.diag.error("must provide one or more functions to wrap on modules");return}J.forEach((X)=>{C.forEach((G)=>{this._unwrap(X,G)})})};let Y=this.init();if(Y&&!Array.isArray(Y))Y=[Y];if(this._modules=Y||[],this._config.enabled)this.enable()}_warnOnPreloadedModules(){this._modules.forEach((A)=>{let{name:Q}=A;try{let B=u.resolve(Q);if(u.cache[B])this._diag.warn(`Module ${Q} has been loaded before ${this.instrumentationName} so it might not work, please initialize it before requiring ${Q}`)}catch(B){}})}_extractPackageVersion(A){try{let Q=(0,OyB.readFileSync)(ML.join(A,"package.json"),{encoding:"utf8"}),B=JSON.parse(Q).version;return typeof B==="string"?B:void 0}catch(Q){zL.diag.warn("Failed extracting version",A)}return}_onRequire(A,Q,B,Y){var J;if(!Y){if(typeof A.patch==="function"){if(A.moduleExports=Q,this._enabled)return this._diag.debug("Applying instrumentation patch for nodejs core module on require hook",{module:A.name}),A.patch(Q)}return Q}let C=this._extractPackageVersion(Y);if(A.moduleVersion=C,A.name===B){if(txA(A.supportedVersions,C,A.includePrerelease)){if(typeof A.patch==="function"){if(A.moduleExports=Q,this._enabled)return this._diag.debug("Applying instrumentation patch for module on require hook",{module:A.name,version:A.moduleVersion,baseDir:Y}),A.patch(Q,A.moduleVersion)}}return Q}let X=(J=A.files)!==null&&J!==void 0?J:[],G=ML.normalize(B);return X.filter((F)=>F.name===G).filter((F)=>txA(F.supportedVersions,C,A.includePrerelease)).reduce((F,Z)=>{if(Z.moduleExports=F,this._enabled)return this._diag.debug("Applying instrumentation patch for nodejs module file on require hook",{module:A.name,version:A.moduleVersion,fileName:Z.name,baseDir:Y}),Z.patch(F,A.moduleVersion);return F},Q)}enable(){if(this._enabled)return;if(this._enabled=!0,this._hooks.length>0){for(let A of this._modules){if(typeof A.patch==="function"&&A.moduleExports)this._diag.debug("Applying instrumentation patch for nodejs module on instrumentation enabled",{module:A.name,version:A.moduleVersion}),A.patch(A.moduleExports,A.moduleVersion);for(let Q of A.files)if(Q.moduleExports)this._diag.debug("Applying instrumentation patch for nodejs module file on instrumentation enabled",{module:A.name,version:A.moduleVersion,fileName:Q.name}),Q.patch(Q.moduleExports,A.moduleVersion)}return}this._warnOnPreloadedModules();for(let A of this._modules){let Q=(C,X,G)=>{if(!G&&ML.isAbsolute(X)){let W=ML.parse(X);X=W.name,G=W.dir}return this._onRequire(A,C,X,G)},B=(C,X,G)=>{return this._onRequire(A,C,X,G)},Y=ML.isAbsolute(A.name)?new jyB.Hook([A.name],{internals:!0},B):this._requireInTheMiddleSingleton.register(A.name,B);this._hooks.push(Y);let J=new wyB.Hook([A.name],{internals:!1},Q);this._hooks.push(J)}}disable(){if(!this._enabled)return;this._enabled=!1;for(let A of this._modules){if(typeof A.unpatch==="function"&&A.moduleExports)this._diag.debug("Removing instrumentation patch for nodejs module on instrumentation disabled",{module:A.name,version:A.moduleVersion}),A.unpatch(A.moduleExports,A.moduleVersion);for(let Q of A.files)if(Q.moduleExports)this._diag.debug("Removing instrumentation patch for nodejs module file on instrumentation disabled",{module:A.name,version:A.moduleVersion,fileName:Q.name}),Q.unpatch(Q.moduleExports,A.moduleVersion)}}isEnabled(){return this._enabled}}AfA.InstrumentationBase=exA;function txA(A,Q,B){if(typeof Q>"u")return A.includes("*");return A.some((Y)=>{return(0,MyB.satisfies)(Q,Y,{includePrerelease:B})})}});var YfA=R((lp)=>{Object.defineProperty(lp,"__esModule",{value:!0});lp.normalize=void 0;var TyB=u("path");Object.defineProperty(lp,"normalize",{enumerable:!0,get:function(){return TyB.normalize}})});var JfA=R((tO)=>{Object.defineProperty(tO,"__esModule",{value:!0});tO.normalize=tO.InstrumentationBase=void 0;var kyB=BfA();Object.defineProperty(tO,"InstrumentationBase",{enumerable:!0,get:function(){return kyB.InstrumentationBase}});var _yB=YfA();Object.defineProperty(tO,"normalize",{enumerable:!0,get:function(){return _yB.normalize}})});var pp=R((eO)=>{Object.defineProperty(eO,"__esModule",{value:!0});eO.normalize=eO.InstrumentationBase=void 0;var CfA=JfA();Object.defineProperty(eO,"InstrumentationBase",{enumerable:!0,get:function(){return CfA.InstrumentationBase}});Object.defineProperty(eO,"normalize",{enumerable:!0,get:function(){return CfA.normalize}})});var FfA=R((GfA)=>{Object.defineProperty(GfA,"__esModule",{value:!0});GfA.InstrumentationNodeModuleDefinition=void 0;class XfA{constructor(A,Q,B,Y,J){this.name=A,this.supportedVersions=Q,this.patch=B,this.unpatch=Y,this.files=J||[]}}GfA.InstrumentationNodeModuleDefinition=XfA});var EfA=R(($fA)=>{Object.defineProperty($fA,"__esModule",{value:!0});$fA.InstrumentationNodeModuleFile=void 0;var gyB=pp();class ZfA{constructor(A,Q,B,Y){this.supportedVersions=Q,this.patch=B,this.unpatch=Y,this.name=(0,gyB.normalize)(A)}}$fA.InstrumentationNodeModuleFile=ZfA});var NB=R((FG)=>{Object.defineProperty(FG,"__esModule",{value:!0});FG.safeExecuteInTheMiddleAsync=FG.safeExecuteInTheMiddle=FG.isWrapped=FG.InstrumentationNodeModuleFile=FG.InstrumentationNodeModuleDefinition=FG.InstrumentationBase=FG.registerInstrumentations=void 0;var hyB=gyA();Object.defineProperty(FG,"registerInstrumentations",{enumerable:!0,get:function(){return hyB.registerInstrumentations}});var xyB=pp();Object.defineProperty(FG,"InstrumentationBase",{enumerable:!0,get:function(){return xyB.InstrumentationBase}});var fyB=FfA();Object.defineProperty(FG,"InstrumentationNodeModuleDefinition",{enumerable:!0,get:function(){return fyB.InstrumentationNodeModuleDefinition}});var byB=EfA();Object.defineProperty(FG,"InstrumentationNodeModuleFile",{enumerable:!0,get:function(){return byB.InstrumentationNodeModuleFile}});var ip=dp();Object.defineProperty(FG,"isWrapped",{enumerable:!0,get:function(){return ip.isWrapped}});Object.defineProperty(FG,"safeExecuteInTheMiddle",{enumerable:!0,get:function(){return ip.safeExecuteInTheMiddle}});Object.defineProperty(FG,"safeExecuteInTheMiddleAsync",{enumerable:!0,get:function(){return ip.safeExecuteInTheMiddleAsync}})});var np=R((KfA)=>{Object.defineProperty(KfA,"__esModule",{value:!0});KfA.createConstMap=void 0;function uyB(A){let Q={},B=A.length;for(let Y=0;Y{Object.defineProperty(CcA,"__esModule",{value:!0});CcA.SEMATTRS_NET_HOST_CARRIER_ICC=CcA.SEMATTRS_NET_HOST_CARRIER_MNC=CcA.SEMATTRS_NET_HOST_CARRIER_MCC=CcA.SEMATTRS_NET_HOST_CARRIER_NAME=CcA.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=CcA.SEMATTRS_NET_HOST_CONNECTION_TYPE=CcA.SEMATTRS_NET_HOST_NAME=CcA.SEMATTRS_NET_HOST_PORT=CcA.SEMATTRS_NET_HOST_IP=CcA.SEMATTRS_NET_PEER_NAME=CcA.SEMATTRS_NET_PEER_PORT=CcA.SEMATTRS_NET_PEER_IP=CcA.SEMATTRS_NET_TRANSPORT=CcA.SEMATTRS_FAAS_INVOKED_REGION=CcA.SEMATTRS_FAAS_INVOKED_PROVIDER=CcA.SEMATTRS_FAAS_INVOKED_NAME=CcA.SEMATTRS_FAAS_COLDSTART=CcA.SEMATTRS_FAAS_CRON=CcA.SEMATTRS_FAAS_TIME=CcA.SEMATTRS_FAAS_DOCUMENT_NAME=CcA.SEMATTRS_FAAS_DOCUMENT_TIME=CcA.SEMATTRS_FAAS_DOCUMENT_OPERATION=CcA.SEMATTRS_FAAS_DOCUMENT_COLLECTION=CcA.SEMATTRS_FAAS_EXECUTION=CcA.SEMATTRS_FAAS_TRIGGER=CcA.SEMATTRS_EXCEPTION_ESCAPED=CcA.SEMATTRS_EXCEPTION_STACKTRACE=CcA.SEMATTRS_EXCEPTION_MESSAGE=CcA.SEMATTRS_EXCEPTION_TYPE=CcA.SEMATTRS_DB_SQL_TABLE=CcA.SEMATTRS_DB_MONGODB_COLLECTION=CcA.SEMATTRS_DB_REDIS_DATABASE_INDEX=CcA.SEMATTRS_DB_HBASE_NAMESPACE=CcA.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=CcA.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=CcA.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=CcA.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=CcA.SEMATTRS_DB_CASSANDRA_TABLE=CcA.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=CcA.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=CcA.SEMATTRS_DB_CASSANDRA_KEYSPACE=CcA.SEMATTRS_DB_MSSQL_INSTANCE_NAME=CcA.SEMATTRS_DB_OPERATION=CcA.SEMATTRS_DB_STATEMENT=CcA.SEMATTRS_DB_NAME=CcA.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=CcA.SEMATTRS_DB_USER=CcA.SEMATTRS_DB_CONNECTION_STRING=CcA.SEMATTRS_DB_SYSTEM=CcA.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=void 0;CcA.SEMATTRS_MESSAGING_DESTINATION_KIND=CcA.SEMATTRS_MESSAGING_DESTINATION=CcA.SEMATTRS_MESSAGING_SYSTEM=CcA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=CcA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=CcA.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=CcA.SEMATTRS_AWS_DYNAMODB_COUNT=CcA.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=CcA.SEMATTRS_AWS_DYNAMODB_SEGMENT=CcA.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=CcA.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=CcA.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=CcA.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=CcA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=CcA.SEMATTRS_AWS_DYNAMODB_SELECT=CcA.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=CcA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=CcA.SEMATTRS_AWS_DYNAMODB_LIMIT=CcA.SEMATTRS_AWS_DYNAMODB_PROJECTION=CcA.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=CcA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=CcA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=CcA.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=CcA.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=CcA.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=CcA.SEMATTRS_HTTP_CLIENT_IP=CcA.SEMATTRS_HTTP_ROUTE=CcA.SEMATTRS_HTTP_SERVER_NAME=CcA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=CcA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=CcA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=CcA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=CcA.SEMATTRS_HTTP_USER_AGENT=CcA.SEMATTRS_HTTP_FLAVOR=CcA.SEMATTRS_HTTP_STATUS_CODE=CcA.SEMATTRS_HTTP_SCHEME=CcA.SEMATTRS_HTTP_HOST=CcA.SEMATTRS_HTTP_TARGET=CcA.SEMATTRS_HTTP_URL=CcA.SEMATTRS_HTTP_METHOD=CcA.SEMATTRS_CODE_LINENO=CcA.SEMATTRS_CODE_FILEPATH=CcA.SEMATTRS_CODE_NAMESPACE=CcA.SEMATTRS_CODE_FUNCTION=CcA.SEMATTRS_THREAD_NAME=CcA.SEMATTRS_THREAD_ID=CcA.SEMATTRS_ENDUSER_SCOPE=CcA.SEMATTRS_ENDUSER_ROLE=CcA.SEMATTRS_ENDUSER_ID=CcA.SEMATTRS_PEER_SERVICE=void 0;CcA.DBSYSTEMVALUES_FILEMAKER=CcA.DBSYSTEMVALUES_DERBY=CcA.DBSYSTEMVALUES_FIREBIRD=CcA.DBSYSTEMVALUES_ADABAS=CcA.DBSYSTEMVALUES_CACHE=CcA.DBSYSTEMVALUES_EDB=CcA.DBSYSTEMVALUES_FIRSTSQL=CcA.DBSYSTEMVALUES_INGRES=CcA.DBSYSTEMVALUES_HANADB=CcA.DBSYSTEMVALUES_MAXDB=CcA.DBSYSTEMVALUES_PROGRESS=CcA.DBSYSTEMVALUES_HSQLDB=CcA.DBSYSTEMVALUES_CLOUDSCAPE=CcA.DBSYSTEMVALUES_HIVE=CcA.DBSYSTEMVALUES_REDSHIFT=CcA.DBSYSTEMVALUES_POSTGRESQL=CcA.DBSYSTEMVALUES_DB2=CcA.DBSYSTEMVALUES_ORACLE=CcA.DBSYSTEMVALUES_MYSQL=CcA.DBSYSTEMVALUES_MSSQL=CcA.DBSYSTEMVALUES_OTHER_SQL=CcA.SemanticAttributes=CcA.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=CcA.SEMATTRS_MESSAGE_COMPRESSED_SIZE=CcA.SEMATTRS_MESSAGE_ID=CcA.SEMATTRS_MESSAGE_TYPE=CcA.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=CcA.SEMATTRS_RPC_JSONRPC_ERROR_CODE=CcA.SEMATTRS_RPC_JSONRPC_REQUEST_ID=CcA.SEMATTRS_RPC_JSONRPC_VERSION=CcA.SEMATTRS_RPC_GRPC_STATUS_CODE=CcA.SEMATTRS_RPC_METHOD=CcA.SEMATTRS_RPC_SERVICE=CcA.SEMATTRS_RPC_SYSTEM=CcA.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=CcA.SEMATTRS_MESSAGING_KAFKA_PARTITION=CcA.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=CcA.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=CcA.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=CcA.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=CcA.SEMATTRS_MESSAGING_CONSUMER_ID=CcA.SEMATTRS_MESSAGING_OPERATION=CcA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=CcA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=CcA.SEMATTRS_MESSAGING_CONVERSATION_ID=CcA.SEMATTRS_MESSAGING_MESSAGE_ID=CcA.SEMATTRS_MESSAGING_URL=CcA.SEMATTRS_MESSAGING_PROTOCOL_VERSION=CcA.SEMATTRS_MESSAGING_PROTOCOL=CcA.SEMATTRS_MESSAGING_TEMP_DESTINATION=void 0;CcA.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=CcA.FaasDocumentOperationValues=CcA.FAASDOCUMENTOPERATIONVALUES_DELETE=CcA.FAASDOCUMENTOPERATIONVALUES_EDIT=CcA.FAASDOCUMENTOPERATIONVALUES_INSERT=CcA.FaasTriggerValues=CcA.FAASTRIGGERVALUES_OTHER=CcA.FAASTRIGGERVALUES_TIMER=CcA.FAASTRIGGERVALUES_PUBSUB=CcA.FAASTRIGGERVALUES_HTTP=CcA.FAASTRIGGERVALUES_DATASOURCE=CcA.DbCassandraConsistencyLevelValues=CcA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=CcA.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=CcA.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=CcA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=CcA.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=CcA.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=CcA.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=CcA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=CcA.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=CcA.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=CcA.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=CcA.DbSystemValues=CcA.DBSYSTEMVALUES_COCKROACHDB=CcA.DBSYSTEMVALUES_MEMCACHED=CcA.DBSYSTEMVALUES_ELASTICSEARCH=CcA.DBSYSTEMVALUES_GEODE=CcA.DBSYSTEMVALUES_NEO4J=CcA.DBSYSTEMVALUES_DYNAMODB=CcA.DBSYSTEMVALUES_COSMOSDB=CcA.DBSYSTEMVALUES_COUCHDB=CcA.DBSYSTEMVALUES_COUCHBASE=CcA.DBSYSTEMVALUES_REDIS=CcA.DBSYSTEMVALUES_MONGODB=CcA.DBSYSTEMVALUES_HBASE=CcA.DBSYSTEMVALUES_CASSANDRA=CcA.DBSYSTEMVALUES_COLDFUSION=CcA.DBSYSTEMVALUES_H2=CcA.DBSYSTEMVALUES_VERTICA=CcA.DBSYSTEMVALUES_TERADATA=CcA.DBSYSTEMVALUES_SYBASE=CcA.DBSYSTEMVALUES_SQLITE=CcA.DBSYSTEMVALUES_POINTBASE=CcA.DBSYSTEMVALUES_PERVASIVE=CcA.DBSYSTEMVALUES_NETEZZA=CcA.DBSYSTEMVALUES_MARIADB=CcA.DBSYSTEMVALUES_INTERBASE=CcA.DBSYSTEMVALUES_INSTANTDB=CcA.DBSYSTEMVALUES_INFORMIX=void 0;CcA.MESSAGINGOPERATIONVALUES_RECEIVE=CcA.MessagingDestinationKindValues=CcA.MESSAGINGDESTINATIONKINDVALUES_TOPIC=CcA.MESSAGINGDESTINATIONKINDVALUES_QUEUE=CcA.HttpFlavorValues=CcA.HTTPFLAVORVALUES_QUIC=CcA.HTTPFLAVORVALUES_SPDY=CcA.HTTPFLAVORVALUES_HTTP_2_0=CcA.HTTPFLAVORVALUES_HTTP_1_1=CcA.HTTPFLAVORVALUES_HTTP_1_0=CcA.NetHostConnectionSubtypeValues=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_NR=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=CcA.NetHostConnectionTypeValues=CcA.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=CcA.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=CcA.NETHOSTCONNECTIONTYPEVALUES_CELL=CcA.NETHOSTCONNECTIONTYPEVALUES_WIRED=CcA.NETHOSTCONNECTIONTYPEVALUES_WIFI=CcA.NetTransportValues=CcA.NETTRANSPORTVALUES_OTHER=CcA.NETTRANSPORTVALUES_INPROC=CcA.NETTRANSPORTVALUES_PIPE=CcA.NETTRANSPORTVALUES_UNIX=CcA.NETTRANSPORTVALUES_IP=CcA.NETTRANSPORTVALUES_IP_UDP=CcA.NETTRANSPORTVALUES_IP_TCP=CcA.FaasInvokedProviderValues=CcA.FAASINVOKEDPROVIDERVALUES_GCP=CcA.FAASINVOKEDPROVIDERVALUES_AZURE=CcA.FAASINVOKEDPROVIDERVALUES_AWS=void 0;CcA.MessageTypeValues=CcA.MESSAGETYPEVALUES_RECEIVED=CcA.MESSAGETYPEVALUES_SENT=CcA.RpcGrpcStatusCodeValues=CcA.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=CcA.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=CcA.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=CcA.RPCGRPCSTATUSCODEVALUES_INTERNAL=CcA.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=CcA.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=CcA.RPCGRPCSTATUSCODEVALUES_ABORTED=CcA.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=CcA.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=CcA.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=CcA.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=CcA.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=CcA.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=CcA.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=CcA.RPCGRPCSTATUSCODEVALUES_UNKNOWN=CcA.RPCGRPCSTATUSCODEVALUES_CANCELLED=CcA.RPCGRPCSTATUSCODEVALUES_OK=CcA.MessagingOperationValues=CcA.MESSAGINGOPERATIONVALUES_PROCESS=void 0;var c5=np(),IfA="aws.lambda.invoked_arn",HfA="db.system",DfA="db.connection_string",NfA="db.user",LfA="db.jdbc.driver_classname",qfA="db.name",MfA="db.statement",zfA="db.operation",RfA="db.mssql.instance_name",wfA="db.cassandra.keyspace",jfA="db.cassandra.page_size",OfA="db.cassandra.consistency_level",PfA="db.cassandra.table",TfA="db.cassandra.idempotence",SfA="db.cassandra.speculative_execution_count",kfA="db.cassandra.coordinator.id",_fA="db.cassandra.coordinator.dc",vfA="db.hbase.namespace",yfA="db.redis.database_index",gfA="db.mongodb.collection",hfA="db.sql.table",xfA="exception.type",ffA="exception.message",bfA="exception.stacktrace",mfA="exception.escaped",ufA="faas.trigger",dfA="faas.execution",cfA="faas.document.collection",lfA="faas.document.operation",pfA="faas.document.time",ifA="faas.document.name",nfA="faas.time",sfA="faas.cron",rfA="faas.coldstart",afA="faas.invoked_name",ofA="faas.invoked_provider",tfA="faas.invoked_region",efA="net.transport",AbA="net.peer.ip",QbA="net.peer.port",BbA="net.peer.name",YbA="net.host.ip",JbA="net.host.port",CbA="net.host.name",XbA="net.host.connection.type",GbA="net.host.connection.subtype",WbA="net.host.carrier.name",FbA="net.host.carrier.mcc",ZbA="net.host.carrier.mnc",$bA="net.host.carrier.icc",UbA="peer.service",EbA="enduser.id",KbA="enduser.role",VbA="enduser.scope",IbA="thread.id",HbA="thread.name",DbA="code.function",NbA="code.namespace",LbA="code.filepath",qbA="code.lineno",MbA="http.method",zbA="http.url",RbA="http.target",wbA="http.host",jbA="http.scheme",ObA="http.status_code",PbA="http.flavor",TbA="http.user_agent",SbA="http.request_content_length",kbA="http.request_content_length_uncompressed",_bA="http.response_content_length",vbA="http.response_content_length_uncompressed",ybA="http.server_name",gbA="http.route",hbA="http.client_ip",xbA="aws.dynamodb.table_names",fbA="aws.dynamodb.consumed_capacity",bbA="aws.dynamodb.item_collection_metrics",mbA="aws.dynamodb.provisioned_read_capacity",ubA="aws.dynamodb.provisioned_write_capacity",dbA="aws.dynamodb.consistent_read",cbA="aws.dynamodb.projection",lbA="aws.dynamodb.limit",pbA="aws.dynamodb.attributes_to_get",ibA="aws.dynamodb.index_name",nbA="aws.dynamodb.select",sbA="aws.dynamodb.global_secondary_indexes",rbA="aws.dynamodb.local_secondary_indexes",abA="aws.dynamodb.exclusive_start_table",obA="aws.dynamodb.table_count",tbA="aws.dynamodb.scan_forward",ebA="aws.dynamodb.segment",AmA="aws.dynamodb.total_segments",QmA="aws.dynamodb.count",BmA="aws.dynamodb.scanned_count",YmA="aws.dynamodb.attribute_definitions",JmA="aws.dynamodb.global_secondary_index_updates",CmA="messaging.system",XmA="messaging.destination",GmA="messaging.destination_kind",WmA="messaging.temp_destination",FmA="messaging.protocol",ZmA="messaging.protocol_version",$mA="messaging.url",UmA="messaging.message_id",EmA="messaging.conversation_id",KmA="messaging.message_payload_size_bytes",VmA="messaging.message_payload_compressed_size_bytes",ImA="messaging.operation",HmA="messaging.consumer_id",DmA="messaging.rabbitmq.routing_key",NmA="messaging.kafka.message_key",LmA="messaging.kafka.consumer_group",qmA="messaging.kafka.client_id",MmA="messaging.kafka.partition",zmA="messaging.kafka.tombstone",RmA="rpc.system",wmA="rpc.service",jmA="rpc.method",OmA="rpc.grpc.status_code",PmA="rpc.jsonrpc.version",TmA="rpc.jsonrpc.request_id",SmA="rpc.jsonrpc.error_code",kmA="rpc.jsonrpc.error_message",_mA="message.type",vmA="message.id",ymA="message.compressed_size",gmA="message.uncompressed_size";CcA.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=IfA;CcA.SEMATTRS_DB_SYSTEM=HfA;CcA.SEMATTRS_DB_CONNECTION_STRING=DfA;CcA.SEMATTRS_DB_USER=NfA;CcA.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=LfA;CcA.SEMATTRS_DB_NAME=qfA;CcA.SEMATTRS_DB_STATEMENT=MfA;CcA.SEMATTRS_DB_OPERATION=zfA;CcA.SEMATTRS_DB_MSSQL_INSTANCE_NAME=RfA;CcA.SEMATTRS_DB_CASSANDRA_KEYSPACE=wfA;CcA.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=jfA;CcA.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=OfA;CcA.SEMATTRS_DB_CASSANDRA_TABLE=PfA;CcA.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=TfA;CcA.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=SfA;CcA.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=kfA;CcA.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=_fA;CcA.SEMATTRS_DB_HBASE_NAMESPACE=vfA;CcA.SEMATTRS_DB_REDIS_DATABASE_INDEX=yfA;CcA.SEMATTRS_DB_MONGODB_COLLECTION=gfA;CcA.SEMATTRS_DB_SQL_TABLE=hfA;CcA.SEMATTRS_EXCEPTION_TYPE=xfA;CcA.SEMATTRS_EXCEPTION_MESSAGE=ffA;CcA.SEMATTRS_EXCEPTION_STACKTRACE=bfA;CcA.SEMATTRS_EXCEPTION_ESCAPED=mfA;CcA.SEMATTRS_FAAS_TRIGGER=ufA;CcA.SEMATTRS_FAAS_EXECUTION=dfA;CcA.SEMATTRS_FAAS_DOCUMENT_COLLECTION=cfA;CcA.SEMATTRS_FAAS_DOCUMENT_OPERATION=lfA;CcA.SEMATTRS_FAAS_DOCUMENT_TIME=pfA;CcA.SEMATTRS_FAAS_DOCUMENT_NAME=ifA;CcA.SEMATTRS_FAAS_TIME=nfA;CcA.SEMATTRS_FAAS_CRON=sfA;CcA.SEMATTRS_FAAS_COLDSTART=rfA;CcA.SEMATTRS_FAAS_INVOKED_NAME=afA;CcA.SEMATTRS_FAAS_INVOKED_PROVIDER=ofA;CcA.SEMATTRS_FAAS_INVOKED_REGION=tfA;CcA.SEMATTRS_NET_TRANSPORT=efA;CcA.SEMATTRS_NET_PEER_IP=AbA;CcA.SEMATTRS_NET_PEER_PORT=QbA;CcA.SEMATTRS_NET_PEER_NAME=BbA;CcA.SEMATTRS_NET_HOST_IP=YbA;CcA.SEMATTRS_NET_HOST_PORT=JbA;CcA.SEMATTRS_NET_HOST_NAME=CbA;CcA.SEMATTRS_NET_HOST_CONNECTION_TYPE=XbA;CcA.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=GbA;CcA.SEMATTRS_NET_HOST_CARRIER_NAME=WbA;CcA.SEMATTRS_NET_HOST_CARRIER_MCC=FbA;CcA.SEMATTRS_NET_HOST_CARRIER_MNC=ZbA;CcA.SEMATTRS_NET_HOST_CARRIER_ICC=$bA;CcA.SEMATTRS_PEER_SERVICE=UbA;CcA.SEMATTRS_ENDUSER_ID=EbA;CcA.SEMATTRS_ENDUSER_ROLE=KbA;CcA.SEMATTRS_ENDUSER_SCOPE=VbA;CcA.SEMATTRS_THREAD_ID=IbA;CcA.SEMATTRS_THREAD_NAME=HbA;CcA.SEMATTRS_CODE_FUNCTION=DbA;CcA.SEMATTRS_CODE_NAMESPACE=NbA;CcA.SEMATTRS_CODE_FILEPATH=LbA;CcA.SEMATTRS_CODE_LINENO=qbA;CcA.SEMATTRS_HTTP_METHOD=MbA;CcA.SEMATTRS_HTTP_URL=zbA;CcA.SEMATTRS_HTTP_TARGET=RbA;CcA.SEMATTRS_HTTP_HOST=wbA;CcA.SEMATTRS_HTTP_SCHEME=jbA;CcA.SEMATTRS_HTTP_STATUS_CODE=ObA;CcA.SEMATTRS_HTTP_FLAVOR=PbA;CcA.SEMATTRS_HTTP_USER_AGENT=TbA;CcA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=SbA;CcA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=kbA;CcA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=_bA;CcA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=vbA;CcA.SEMATTRS_HTTP_SERVER_NAME=ybA;CcA.SEMATTRS_HTTP_ROUTE=gbA;CcA.SEMATTRS_HTTP_CLIENT_IP=hbA;CcA.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=xbA;CcA.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=fbA;CcA.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=bbA;CcA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=mbA;CcA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=ubA;CcA.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=dbA;CcA.SEMATTRS_AWS_DYNAMODB_PROJECTION=cbA;CcA.SEMATTRS_AWS_DYNAMODB_LIMIT=lbA;CcA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=pbA;CcA.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=ibA;CcA.SEMATTRS_AWS_DYNAMODB_SELECT=nbA;CcA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=sbA;CcA.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=rbA;CcA.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=abA;CcA.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=obA;CcA.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=tbA;CcA.SEMATTRS_AWS_DYNAMODB_SEGMENT=ebA;CcA.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=AmA;CcA.SEMATTRS_AWS_DYNAMODB_COUNT=QmA;CcA.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=BmA;CcA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=YmA;CcA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=JmA;CcA.SEMATTRS_MESSAGING_SYSTEM=CmA;CcA.SEMATTRS_MESSAGING_DESTINATION=XmA;CcA.SEMATTRS_MESSAGING_DESTINATION_KIND=GmA;CcA.SEMATTRS_MESSAGING_TEMP_DESTINATION=WmA;CcA.SEMATTRS_MESSAGING_PROTOCOL=FmA;CcA.SEMATTRS_MESSAGING_PROTOCOL_VERSION=ZmA;CcA.SEMATTRS_MESSAGING_URL=$mA;CcA.SEMATTRS_MESSAGING_MESSAGE_ID=UmA;CcA.SEMATTRS_MESSAGING_CONVERSATION_ID=EmA;CcA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=KmA;CcA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=VmA;CcA.SEMATTRS_MESSAGING_OPERATION=ImA;CcA.SEMATTRS_MESSAGING_CONSUMER_ID=HmA;CcA.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=DmA;CcA.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=NmA;CcA.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=LmA;CcA.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=qmA;CcA.SEMATTRS_MESSAGING_KAFKA_PARTITION=MmA;CcA.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=zmA;CcA.SEMATTRS_RPC_SYSTEM=RmA;CcA.SEMATTRS_RPC_SERVICE=wmA;CcA.SEMATTRS_RPC_METHOD=jmA;CcA.SEMATTRS_RPC_GRPC_STATUS_CODE=OmA;CcA.SEMATTRS_RPC_JSONRPC_VERSION=PmA;CcA.SEMATTRS_RPC_JSONRPC_REQUEST_ID=TmA;CcA.SEMATTRS_RPC_JSONRPC_ERROR_CODE=SmA;CcA.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=kmA;CcA.SEMATTRS_MESSAGE_TYPE=_mA;CcA.SEMATTRS_MESSAGE_ID=vmA;CcA.SEMATTRS_MESSAGE_COMPRESSED_SIZE=ymA;CcA.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=gmA;CcA.SemanticAttributes=(0,c5.createConstMap)([IfA,HfA,DfA,NfA,LfA,qfA,MfA,zfA,RfA,wfA,jfA,OfA,PfA,TfA,SfA,kfA,_fA,vfA,yfA,gfA,hfA,xfA,ffA,bfA,mfA,ufA,dfA,cfA,lfA,pfA,ifA,nfA,sfA,rfA,afA,ofA,tfA,efA,AbA,QbA,BbA,YbA,JbA,CbA,XbA,GbA,WbA,FbA,ZbA,$bA,UbA,EbA,KbA,VbA,IbA,HbA,DbA,NbA,LbA,qbA,MbA,zbA,RbA,wbA,jbA,ObA,PbA,TbA,SbA,kbA,_bA,vbA,ybA,gbA,hbA,xbA,fbA,bbA,mbA,ubA,dbA,cbA,lbA,pbA,ibA,nbA,sbA,rbA,abA,obA,tbA,ebA,AmA,QmA,BmA,YmA,JmA,CmA,XmA,GmA,WmA,FmA,ZmA,$mA,UmA,EmA,KmA,VmA,ImA,HmA,DmA,NmA,LmA,qmA,MmA,zmA,RmA,wmA,jmA,OmA,PmA,TmA,SmA,kmA,_mA,vmA,ymA,gmA]);var hmA="other_sql",xmA="mssql",fmA="mysql",bmA="oracle",mmA="db2",umA="postgresql",dmA="redshift",cmA="hive",lmA="cloudscape",pmA="hsqldb",imA="progress",nmA="maxdb",smA="hanadb",rmA="ingres",amA="firstsql",omA="edb",tmA="cache",emA="adabas",AuA="firebird",QuA="derby",BuA="filemaker",YuA="informix",JuA="instantdb",CuA="interbase",XuA="mariadb",GuA="netezza",WuA="pervasive",FuA="pointbase",ZuA="sqlite",$uA="sybase",UuA="teradata",EuA="vertica",KuA="h2",VuA="coldfusion",IuA="cassandra",HuA="hbase",DuA="mongodb",NuA="redis",LuA="couchbase",quA="couchdb",MuA="cosmosdb",zuA="dynamodb",RuA="neo4j",wuA="geode",juA="elasticsearch",OuA="memcached",PuA="cockroachdb";CcA.DBSYSTEMVALUES_OTHER_SQL=hmA;CcA.DBSYSTEMVALUES_MSSQL=xmA;CcA.DBSYSTEMVALUES_MYSQL=fmA;CcA.DBSYSTEMVALUES_ORACLE=bmA;CcA.DBSYSTEMVALUES_DB2=mmA;CcA.DBSYSTEMVALUES_POSTGRESQL=umA;CcA.DBSYSTEMVALUES_REDSHIFT=dmA;CcA.DBSYSTEMVALUES_HIVE=cmA;CcA.DBSYSTEMVALUES_CLOUDSCAPE=lmA;CcA.DBSYSTEMVALUES_HSQLDB=pmA;CcA.DBSYSTEMVALUES_PROGRESS=imA;CcA.DBSYSTEMVALUES_MAXDB=nmA;CcA.DBSYSTEMVALUES_HANADB=smA;CcA.DBSYSTEMVALUES_INGRES=rmA;CcA.DBSYSTEMVALUES_FIRSTSQL=amA;CcA.DBSYSTEMVALUES_EDB=omA;CcA.DBSYSTEMVALUES_CACHE=tmA;CcA.DBSYSTEMVALUES_ADABAS=emA;CcA.DBSYSTEMVALUES_FIREBIRD=AuA;CcA.DBSYSTEMVALUES_DERBY=QuA;CcA.DBSYSTEMVALUES_FILEMAKER=BuA;CcA.DBSYSTEMVALUES_INFORMIX=YuA;CcA.DBSYSTEMVALUES_INSTANTDB=JuA;CcA.DBSYSTEMVALUES_INTERBASE=CuA;CcA.DBSYSTEMVALUES_MARIADB=XuA;CcA.DBSYSTEMVALUES_NETEZZA=GuA;CcA.DBSYSTEMVALUES_PERVASIVE=WuA;CcA.DBSYSTEMVALUES_POINTBASE=FuA;CcA.DBSYSTEMVALUES_SQLITE=ZuA;CcA.DBSYSTEMVALUES_SYBASE=$uA;CcA.DBSYSTEMVALUES_TERADATA=UuA;CcA.DBSYSTEMVALUES_VERTICA=EuA;CcA.DBSYSTEMVALUES_H2=KuA;CcA.DBSYSTEMVALUES_COLDFUSION=VuA;CcA.DBSYSTEMVALUES_CASSANDRA=IuA;CcA.DBSYSTEMVALUES_HBASE=HuA;CcA.DBSYSTEMVALUES_MONGODB=DuA;CcA.DBSYSTEMVALUES_REDIS=NuA;CcA.DBSYSTEMVALUES_COUCHBASE=LuA;CcA.DBSYSTEMVALUES_COUCHDB=quA;CcA.DBSYSTEMVALUES_COSMOSDB=MuA;CcA.DBSYSTEMVALUES_DYNAMODB=zuA;CcA.DBSYSTEMVALUES_NEO4J=RuA;CcA.DBSYSTEMVALUES_GEODE=wuA;CcA.DBSYSTEMVALUES_ELASTICSEARCH=juA;CcA.DBSYSTEMVALUES_MEMCACHED=OuA;CcA.DBSYSTEMVALUES_COCKROACHDB=PuA;CcA.DbSystemValues=(0,c5.createConstMap)([hmA,xmA,fmA,bmA,mmA,umA,dmA,cmA,lmA,pmA,imA,nmA,smA,rmA,amA,omA,tmA,emA,AuA,QuA,BuA,YuA,JuA,CuA,XuA,GuA,WuA,FuA,ZuA,$uA,UuA,EuA,KuA,VuA,IuA,HuA,DuA,NuA,LuA,quA,MuA,zuA,RuA,wuA,juA,OuA,PuA]);var TuA="all",SuA="each_quorum",kuA="quorum",_uA="local_quorum",vuA="one",yuA="two",guA="three",huA="local_one",xuA="any",fuA="serial",buA="local_serial";CcA.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=TuA;CcA.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=SuA;CcA.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=kuA;CcA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=_uA;CcA.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=vuA;CcA.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=yuA;CcA.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=guA;CcA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=huA;CcA.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=xuA;CcA.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=fuA;CcA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=buA;CcA.DbCassandraConsistencyLevelValues=(0,c5.createConstMap)([TuA,SuA,kuA,_uA,vuA,yuA,guA,huA,xuA,fuA,buA]);var muA="datasource",uuA="http",duA="pubsub",cuA="timer",luA="other";CcA.FAASTRIGGERVALUES_DATASOURCE=muA;CcA.FAASTRIGGERVALUES_HTTP=uuA;CcA.FAASTRIGGERVALUES_PUBSUB=duA;CcA.FAASTRIGGERVALUES_TIMER=cuA;CcA.FAASTRIGGERVALUES_OTHER=luA;CcA.FaasTriggerValues=(0,c5.createConstMap)([muA,uuA,duA,cuA,luA]);var puA="insert",iuA="edit",nuA="delete";CcA.FAASDOCUMENTOPERATIONVALUES_INSERT=puA;CcA.FAASDOCUMENTOPERATIONVALUES_EDIT=iuA;CcA.FAASDOCUMENTOPERATIONVALUES_DELETE=nuA;CcA.FaasDocumentOperationValues=(0,c5.createConstMap)([puA,iuA,nuA]);var suA="alibaba_cloud",ruA="aws",auA="azure",ouA="gcp";CcA.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=suA;CcA.FAASINVOKEDPROVIDERVALUES_AWS=ruA;CcA.FAASINVOKEDPROVIDERVALUES_AZURE=auA;CcA.FAASINVOKEDPROVIDERVALUES_GCP=ouA;CcA.FaasInvokedProviderValues=(0,c5.createConstMap)([suA,ruA,auA,ouA]);var tuA="ip_tcp",euA="ip_udp",AdA="ip",QdA="unix",BdA="pipe",YdA="inproc",JdA="other";CcA.NETTRANSPORTVALUES_IP_TCP=tuA;CcA.NETTRANSPORTVALUES_IP_UDP=euA;CcA.NETTRANSPORTVALUES_IP=AdA;CcA.NETTRANSPORTVALUES_UNIX=QdA;CcA.NETTRANSPORTVALUES_PIPE=BdA;CcA.NETTRANSPORTVALUES_INPROC=YdA;CcA.NETTRANSPORTVALUES_OTHER=JdA;CcA.NetTransportValues=(0,c5.createConstMap)([tuA,euA,AdA,QdA,BdA,YdA,JdA]);var CdA="wifi",XdA="wired",GdA="cell",WdA="unavailable",FdA="unknown";CcA.NETHOSTCONNECTIONTYPEVALUES_WIFI=CdA;CcA.NETHOSTCONNECTIONTYPEVALUES_WIRED=XdA;CcA.NETHOSTCONNECTIONTYPEVALUES_CELL=GdA;CcA.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=WdA;CcA.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=FdA;CcA.NetHostConnectionTypeValues=(0,c5.createConstMap)([CdA,XdA,GdA,WdA,FdA]);var ZdA="gprs",$dA="edge",UdA="umts",EdA="cdma",KdA="evdo_0",VdA="evdo_a",IdA="cdma2000_1xrtt",HdA="hsdpa",DdA="hsupa",NdA="hspa",LdA="iden",qdA="evdo_b",MdA="lte",zdA="ehrpd",RdA="hspap",wdA="gsm",jdA="td_scdma",OdA="iwlan",PdA="nr",TdA="nrnsa",SdA="lte_ca";CcA.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=ZdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=$dA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=UdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=EdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=KdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=VdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=IdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=HdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=DdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=NdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=LdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=qdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=MdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=zdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=RdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=wdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=jdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=OdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_NR=PdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=TdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=SdA;CcA.NetHostConnectionSubtypeValues=(0,c5.createConstMap)([ZdA,$dA,UdA,EdA,KdA,VdA,IdA,HdA,DdA,NdA,LdA,qdA,MdA,zdA,RdA,wdA,jdA,OdA,PdA,TdA,SdA]);var kdA="1.0",_dA="1.1",vdA="2.0",ydA="SPDY",gdA="QUIC";CcA.HTTPFLAVORVALUES_HTTP_1_0=kdA;CcA.HTTPFLAVORVALUES_HTTP_1_1=_dA;CcA.HTTPFLAVORVALUES_HTTP_2_0=vdA;CcA.HTTPFLAVORVALUES_SPDY=ydA;CcA.HTTPFLAVORVALUES_QUIC=gdA;CcA.HttpFlavorValues={HTTP_1_0:kdA,HTTP_1_1:_dA,HTTP_2_0:vdA,SPDY:ydA,QUIC:gdA};var hdA="queue",xdA="topic";CcA.MESSAGINGDESTINATIONKINDVALUES_QUEUE=hdA;CcA.MESSAGINGDESTINATIONKINDVALUES_TOPIC=xdA;CcA.MessagingDestinationKindValues=(0,c5.createConstMap)([hdA,xdA]);var fdA="receive",bdA="process";CcA.MESSAGINGOPERATIONVALUES_RECEIVE=fdA;CcA.MESSAGINGOPERATIONVALUES_PROCESS=bdA;CcA.MessagingOperationValues=(0,c5.createConstMap)([fdA,bdA]);var mdA=0,udA=1,ddA=2,cdA=3,ldA=4,pdA=5,idA=6,ndA=7,sdA=8,rdA=9,adA=10,odA=11,tdA=12,edA=13,AcA=14,QcA=15,BcA=16;CcA.RPCGRPCSTATUSCODEVALUES_OK=mdA;CcA.RPCGRPCSTATUSCODEVALUES_CANCELLED=udA;CcA.RPCGRPCSTATUSCODEVALUES_UNKNOWN=ddA;CcA.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=cdA;CcA.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=ldA;CcA.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=pdA;CcA.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=idA;CcA.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=ndA;CcA.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=sdA;CcA.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=rdA;CcA.RPCGRPCSTATUSCODEVALUES_ABORTED=adA;CcA.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=odA;CcA.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=tdA;CcA.RPCGRPCSTATUSCODEVALUES_INTERNAL=edA;CcA.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=AcA;CcA.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=QcA;CcA.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=BcA;CcA.RpcGrpcStatusCodeValues={OK:mdA,CANCELLED:udA,UNKNOWN:ddA,INVALID_ARGUMENT:cdA,DEADLINE_EXCEEDED:ldA,NOT_FOUND:pdA,ALREADY_EXISTS:idA,PERMISSION_DENIED:ndA,RESOURCE_EXHAUSTED:sdA,FAILED_PRECONDITION:rdA,ABORTED:adA,OUT_OF_RANGE:odA,UNIMPLEMENTED:tdA,INTERNAL:edA,UNAVAILABLE:AcA,DATA_LOSS:QcA,UNAUTHENTICATED:BcA};var YcA="SENT",JcA="RECEIVED";CcA.MESSAGETYPEVALUES_SENT=YcA;CcA.MESSAGETYPEVALUES_RECEIVED=JcA;CcA.MessageTypeValues=(0,c5.createConstMap)([YcA,JcA])});var EcA=R((W$)=>{var bbB=W$&&W$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),mbB=W$&&W$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))bbB(Q,A,B)};Object.defineProperty(W$,"__esModule",{value:!0});mbB(UcA(),W$)});var dpA=R((fpA)=>{Object.defineProperty(fpA,"__esModule",{value:!0});fpA.SEMRESATTRS_K8S_STATEFULSET_NAME=fpA.SEMRESATTRS_K8S_STATEFULSET_UID=fpA.SEMRESATTRS_K8S_DEPLOYMENT_NAME=fpA.SEMRESATTRS_K8S_DEPLOYMENT_UID=fpA.SEMRESATTRS_K8S_REPLICASET_NAME=fpA.SEMRESATTRS_K8S_REPLICASET_UID=fpA.SEMRESATTRS_K8S_CONTAINER_NAME=fpA.SEMRESATTRS_K8S_POD_NAME=fpA.SEMRESATTRS_K8S_POD_UID=fpA.SEMRESATTRS_K8S_NAMESPACE_NAME=fpA.SEMRESATTRS_K8S_NODE_UID=fpA.SEMRESATTRS_K8S_NODE_NAME=fpA.SEMRESATTRS_K8S_CLUSTER_NAME=fpA.SEMRESATTRS_HOST_IMAGE_VERSION=fpA.SEMRESATTRS_HOST_IMAGE_ID=fpA.SEMRESATTRS_HOST_IMAGE_NAME=fpA.SEMRESATTRS_HOST_ARCH=fpA.SEMRESATTRS_HOST_TYPE=fpA.SEMRESATTRS_HOST_NAME=fpA.SEMRESATTRS_HOST_ID=fpA.SEMRESATTRS_FAAS_MAX_MEMORY=fpA.SEMRESATTRS_FAAS_INSTANCE=fpA.SEMRESATTRS_FAAS_VERSION=fpA.SEMRESATTRS_FAAS_ID=fpA.SEMRESATTRS_FAAS_NAME=fpA.SEMRESATTRS_DEVICE_MODEL_NAME=fpA.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=fpA.SEMRESATTRS_DEVICE_ID=fpA.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=fpA.SEMRESATTRS_CONTAINER_IMAGE_TAG=fpA.SEMRESATTRS_CONTAINER_IMAGE_NAME=fpA.SEMRESATTRS_CONTAINER_RUNTIME=fpA.SEMRESATTRS_CONTAINER_ID=fpA.SEMRESATTRS_CONTAINER_NAME=fpA.SEMRESATTRS_AWS_LOG_STREAM_ARNS=fpA.SEMRESATTRS_AWS_LOG_STREAM_NAMES=fpA.SEMRESATTRS_AWS_LOG_GROUP_ARNS=fpA.SEMRESATTRS_AWS_LOG_GROUP_NAMES=fpA.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=fpA.SEMRESATTRS_AWS_ECS_TASK_REVISION=fpA.SEMRESATTRS_AWS_ECS_TASK_FAMILY=fpA.SEMRESATTRS_AWS_ECS_TASK_ARN=fpA.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=fpA.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=fpA.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=fpA.SEMRESATTRS_CLOUD_PLATFORM=fpA.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=fpA.SEMRESATTRS_CLOUD_REGION=fpA.SEMRESATTRS_CLOUD_ACCOUNT_ID=fpA.SEMRESATTRS_CLOUD_PROVIDER=void 0;fpA.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=fpA.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=fpA.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=fpA.CLOUDPLATFORMVALUES_AZURE_AKS=fpA.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=fpA.CLOUDPLATFORMVALUES_AZURE_VM=fpA.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=fpA.CLOUDPLATFORMVALUES_AWS_LAMBDA=fpA.CLOUDPLATFORMVALUES_AWS_EKS=fpA.CLOUDPLATFORMVALUES_AWS_ECS=fpA.CLOUDPLATFORMVALUES_AWS_EC2=fpA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=fpA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=fpA.CloudProviderValues=fpA.CLOUDPROVIDERVALUES_GCP=fpA.CLOUDPROVIDERVALUES_AZURE=fpA.CLOUDPROVIDERVALUES_AWS=fpA.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=fpA.SemanticResourceAttributes=fpA.SEMRESATTRS_WEBENGINE_DESCRIPTION=fpA.SEMRESATTRS_WEBENGINE_VERSION=fpA.SEMRESATTRS_WEBENGINE_NAME=fpA.SEMRESATTRS_TELEMETRY_AUTO_VERSION=fpA.SEMRESATTRS_TELEMETRY_SDK_VERSION=fpA.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=fpA.SEMRESATTRS_TELEMETRY_SDK_NAME=fpA.SEMRESATTRS_SERVICE_VERSION=fpA.SEMRESATTRS_SERVICE_INSTANCE_ID=fpA.SEMRESATTRS_SERVICE_NAMESPACE=fpA.SEMRESATTRS_SERVICE_NAME=fpA.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=fpA.SEMRESATTRS_PROCESS_RUNTIME_VERSION=fpA.SEMRESATTRS_PROCESS_RUNTIME_NAME=fpA.SEMRESATTRS_PROCESS_OWNER=fpA.SEMRESATTRS_PROCESS_COMMAND_ARGS=fpA.SEMRESATTRS_PROCESS_COMMAND_LINE=fpA.SEMRESATTRS_PROCESS_COMMAND=fpA.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=fpA.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=fpA.SEMRESATTRS_PROCESS_PID=fpA.SEMRESATTRS_OS_VERSION=fpA.SEMRESATTRS_OS_NAME=fpA.SEMRESATTRS_OS_DESCRIPTION=fpA.SEMRESATTRS_OS_TYPE=fpA.SEMRESATTRS_K8S_CRONJOB_NAME=fpA.SEMRESATTRS_K8S_CRONJOB_UID=fpA.SEMRESATTRS_K8S_JOB_NAME=fpA.SEMRESATTRS_K8S_JOB_UID=fpA.SEMRESATTRS_K8S_DAEMONSET_NAME=fpA.SEMRESATTRS_K8S_DAEMONSET_UID=void 0;fpA.TelemetrySdkLanguageValues=fpA.TELEMETRYSDKLANGUAGEVALUES_WEBJS=fpA.TELEMETRYSDKLANGUAGEVALUES_RUBY=fpA.TELEMETRYSDKLANGUAGEVALUES_PYTHON=fpA.TELEMETRYSDKLANGUAGEVALUES_PHP=fpA.TELEMETRYSDKLANGUAGEVALUES_NODEJS=fpA.TELEMETRYSDKLANGUAGEVALUES_JAVA=fpA.TELEMETRYSDKLANGUAGEVALUES_GO=fpA.TELEMETRYSDKLANGUAGEVALUES_ERLANG=fpA.TELEMETRYSDKLANGUAGEVALUES_DOTNET=fpA.TELEMETRYSDKLANGUAGEVALUES_CPP=fpA.OsTypeValues=fpA.OSTYPEVALUES_Z_OS=fpA.OSTYPEVALUES_SOLARIS=fpA.OSTYPEVALUES_AIX=fpA.OSTYPEVALUES_HPUX=fpA.OSTYPEVALUES_DRAGONFLYBSD=fpA.OSTYPEVALUES_OPENBSD=fpA.OSTYPEVALUES_NETBSD=fpA.OSTYPEVALUES_FREEBSD=fpA.OSTYPEVALUES_DARWIN=fpA.OSTYPEVALUES_LINUX=fpA.OSTYPEVALUES_WINDOWS=fpA.HostArchValues=fpA.HOSTARCHVALUES_X86=fpA.HOSTARCHVALUES_PPC64=fpA.HOSTARCHVALUES_PPC32=fpA.HOSTARCHVALUES_IA64=fpA.HOSTARCHVALUES_ARM64=fpA.HOSTARCHVALUES_ARM32=fpA.HOSTARCHVALUES_AMD64=fpA.AwsEcsLaunchtypeValues=fpA.AWSECSLAUNCHTYPEVALUES_FARGATE=fpA.AWSECSLAUNCHTYPEVALUES_EC2=fpA.CloudPlatformValues=fpA.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=fpA.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=fpA.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=fpA.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=void 0;var F$=np(),KcA="cloud.provider",VcA="cloud.account.id",IcA="cloud.region",HcA="cloud.availability_zone",DcA="cloud.platform",NcA="aws.ecs.container.arn",LcA="aws.ecs.cluster.arn",qcA="aws.ecs.launchtype",McA="aws.ecs.task.arn",zcA="aws.ecs.task.family",RcA="aws.ecs.task.revision",wcA="aws.eks.cluster.arn",jcA="aws.log.group.names",OcA="aws.log.group.arns",PcA="aws.log.stream.names",TcA="aws.log.stream.arns",ScA="container.name",kcA="container.id",_cA="container.runtime",vcA="container.image.name",ycA="container.image.tag",gcA="deployment.environment",hcA="device.id",xcA="device.model.identifier",fcA="device.model.name",bcA="faas.name",mcA="faas.id",ucA="faas.version",dcA="faas.instance",ccA="faas.max_memory",lcA="host.id",pcA="host.name",icA="host.type",ncA="host.arch",scA="host.image.name",rcA="host.image.id",acA="host.image.version",ocA="k8s.cluster.name",tcA="k8s.node.name",ecA="k8s.node.uid",AlA="k8s.namespace.name",QlA="k8s.pod.uid",BlA="k8s.pod.name",YlA="k8s.container.name",JlA="k8s.replicaset.uid",ClA="k8s.replicaset.name",XlA="k8s.deployment.uid",GlA="k8s.deployment.name",WlA="k8s.statefulset.uid",FlA="k8s.statefulset.name",ZlA="k8s.daemonset.uid",$lA="k8s.daemonset.name",UlA="k8s.job.uid",ElA="k8s.job.name",KlA="k8s.cronjob.uid",VlA="k8s.cronjob.name",IlA="os.type",HlA="os.description",DlA="os.name",NlA="os.version",LlA="process.pid",qlA="process.executable.name",MlA="process.executable.path",zlA="process.command",RlA="process.command_line",wlA="process.command_args",jlA="process.owner",OlA="process.runtime.name",PlA="process.runtime.version",TlA="process.runtime.description",SlA="service.name",klA="service.namespace",_lA="service.instance.id",vlA="service.version",ylA="telemetry.sdk.name",glA="telemetry.sdk.language",hlA="telemetry.sdk.version",xlA="telemetry.auto.version",flA="webengine.name",blA="webengine.version",mlA="webengine.description";fpA.SEMRESATTRS_CLOUD_PROVIDER=KcA;fpA.SEMRESATTRS_CLOUD_ACCOUNT_ID=VcA;fpA.SEMRESATTRS_CLOUD_REGION=IcA;fpA.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=HcA;fpA.SEMRESATTRS_CLOUD_PLATFORM=DcA;fpA.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=NcA;fpA.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=LcA;fpA.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=qcA;fpA.SEMRESATTRS_AWS_ECS_TASK_ARN=McA;fpA.SEMRESATTRS_AWS_ECS_TASK_FAMILY=zcA;fpA.SEMRESATTRS_AWS_ECS_TASK_REVISION=RcA;fpA.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=wcA;fpA.SEMRESATTRS_AWS_LOG_GROUP_NAMES=jcA;fpA.SEMRESATTRS_AWS_LOG_GROUP_ARNS=OcA;fpA.SEMRESATTRS_AWS_LOG_STREAM_NAMES=PcA;fpA.SEMRESATTRS_AWS_LOG_STREAM_ARNS=TcA;fpA.SEMRESATTRS_CONTAINER_NAME=ScA;fpA.SEMRESATTRS_CONTAINER_ID=kcA;fpA.SEMRESATTRS_CONTAINER_RUNTIME=_cA;fpA.SEMRESATTRS_CONTAINER_IMAGE_NAME=vcA;fpA.SEMRESATTRS_CONTAINER_IMAGE_TAG=ycA;fpA.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=gcA;fpA.SEMRESATTRS_DEVICE_ID=hcA;fpA.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=xcA;fpA.SEMRESATTRS_DEVICE_MODEL_NAME=fcA;fpA.SEMRESATTRS_FAAS_NAME=bcA;fpA.SEMRESATTRS_FAAS_ID=mcA;fpA.SEMRESATTRS_FAAS_VERSION=ucA;fpA.SEMRESATTRS_FAAS_INSTANCE=dcA;fpA.SEMRESATTRS_FAAS_MAX_MEMORY=ccA;fpA.SEMRESATTRS_HOST_ID=lcA;fpA.SEMRESATTRS_HOST_NAME=pcA;fpA.SEMRESATTRS_HOST_TYPE=icA;fpA.SEMRESATTRS_HOST_ARCH=ncA;fpA.SEMRESATTRS_HOST_IMAGE_NAME=scA;fpA.SEMRESATTRS_HOST_IMAGE_ID=rcA;fpA.SEMRESATTRS_HOST_IMAGE_VERSION=acA;fpA.SEMRESATTRS_K8S_CLUSTER_NAME=ocA;fpA.SEMRESATTRS_K8S_NODE_NAME=tcA;fpA.SEMRESATTRS_K8S_NODE_UID=ecA;fpA.SEMRESATTRS_K8S_NAMESPACE_NAME=AlA;fpA.SEMRESATTRS_K8S_POD_UID=QlA;fpA.SEMRESATTRS_K8S_POD_NAME=BlA;fpA.SEMRESATTRS_K8S_CONTAINER_NAME=YlA;fpA.SEMRESATTRS_K8S_REPLICASET_UID=JlA;fpA.SEMRESATTRS_K8S_REPLICASET_NAME=ClA;fpA.SEMRESATTRS_K8S_DEPLOYMENT_UID=XlA;fpA.SEMRESATTRS_K8S_DEPLOYMENT_NAME=GlA;fpA.SEMRESATTRS_K8S_STATEFULSET_UID=WlA;fpA.SEMRESATTRS_K8S_STATEFULSET_NAME=FlA;fpA.SEMRESATTRS_K8S_DAEMONSET_UID=ZlA;fpA.SEMRESATTRS_K8S_DAEMONSET_NAME=$lA;fpA.SEMRESATTRS_K8S_JOB_UID=UlA;fpA.SEMRESATTRS_K8S_JOB_NAME=ElA;fpA.SEMRESATTRS_K8S_CRONJOB_UID=KlA;fpA.SEMRESATTRS_K8S_CRONJOB_NAME=VlA;fpA.SEMRESATTRS_OS_TYPE=IlA;fpA.SEMRESATTRS_OS_DESCRIPTION=HlA;fpA.SEMRESATTRS_OS_NAME=DlA;fpA.SEMRESATTRS_OS_VERSION=NlA;fpA.SEMRESATTRS_PROCESS_PID=LlA;fpA.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=qlA;fpA.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=MlA;fpA.SEMRESATTRS_PROCESS_COMMAND=zlA;fpA.SEMRESATTRS_PROCESS_COMMAND_LINE=RlA;fpA.SEMRESATTRS_PROCESS_COMMAND_ARGS=wlA;fpA.SEMRESATTRS_PROCESS_OWNER=jlA;fpA.SEMRESATTRS_PROCESS_RUNTIME_NAME=OlA;fpA.SEMRESATTRS_PROCESS_RUNTIME_VERSION=PlA;fpA.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=TlA;fpA.SEMRESATTRS_SERVICE_NAME=SlA;fpA.SEMRESATTRS_SERVICE_NAMESPACE=klA;fpA.SEMRESATTRS_SERVICE_INSTANCE_ID=_lA;fpA.SEMRESATTRS_SERVICE_VERSION=vlA;fpA.SEMRESATTRS_TELEMETRY_SDK_NAME=ylA;fpA.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=glA;fpA.SEMRESATTRS_TELEMETRY_SDK_VERSION=hlA;fpA.SEMRESATTRS_TELEMETRY_AUTO_VERSION=xlA;fpA.SEMRESATTRS_WEBENGINE_NAME=flA;fpA.SEMRESATTRS_WEBENGINE_VERSION=blA;fpA.SEMRESATTRS_WEBENGINE_DESCRIPTION=mlA;fpA.SemanticResourceAttributes=(0,F$.createConstMap)([KcA,VcA,IcA,HcA,DcA,NcA,LcA,qcA,McA,zcA,RcA,wcA,jcA,OcA,PcA,TcA,ScA,kcA,_cA,vcA,ycA,gcA,hcA,xcA,fcA,bcA,mcA,ucA,dcA,ccA,lcA,pcA,icA,ncA,scA,rcA,acA,ocA,tcA,ecA,AlA,QlA,BlA,YlA,JlA,ClA,XlA,GlA,WlA,FlA,ZlA,$lA,UlA,ElA,KlA,VlA,IlA,HlA,DlA,NlA,LlA,qlA,MlA,zlA,RlA,wlA,jlA,OlA,PlA,TlA,SlA,klA,_lA,vlA,ylA,glA,hlA,xlA,flA,blA,mlA]);var ulA="alibaba_cloud",dlA="aws",clA="azure",llA="gcp";fpA.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=ulA;fpA.CLOUDPROVIDERVALUES_AWS=dlA;fpA.CLOUDPROVIDERVALUES_AZURE=clA;fpA.CLOUDPROVIDERVALUES_GCP=llA;fpA.CloudProviderValues=(0,F$.createConstMap)([ulA,dlA,clA,llA]);var plA="alibaba_cloud_ecs",ilA="alibaba_cloud_fc",nlA="aws_ec2",slA="aws_ecs",rlA="aws_eks",alA="aws_lambda",olA="aws_elastic_beanstalk",tlA="azure_vm",elA="azure_container_instances",ApA="azure_aks",QpA="azure_functions",BpA="azure_app_service",YpA="gcp_compute_engine",JpA="gcp_cloud_run",CpA="gcp_kubernetes_engine",XpA="gcp_cloud_functions",GpA="gcp_app_engine";fpA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=plA;fpA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=ilA;fpA.CLOUDPLATFORMVALUES_AWS_EC2=nlA;fpA.CLOUDPLATFORMVALUES_AWS_ECS=slA;fpA.CLOUDPLATFORMVALUES_AWS_EKS=rlA;fpA.CLOUDPLATFORMVALUES_AWS_LAMBDA=alA;fpA.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=olA;fpA.CLOUDPLATFORMVALUES_AZURE_VM=tlA;fpA.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=elA;fpA.CLOUDPLATFORMVALUES_AZURE_AKS=ApA;fpA.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=QpA;fpA.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=BpA;fpA.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=YpA;fpA.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=JpA;fpA.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=CpA;fpA.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=XpA;fpA.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=GpA;fpA.CloudPlatformValues=(0,F$.createConstMap)([plA,ilA,nlA,slA,rlA,alA,olA,tlA,elA,ApA,QpA,BpA,YpA,JpA,CpA,XpA,GpA]);var WpA="ec2",FpA="fargate";fpA.AWSECSLAUNCHTYPEVALUES_EC2=WpA;fpA.AWSECSLAUNCHTYPEVALUES_FARGATE=FpA;fpA.AwsEcsLaunchtypeValues=(0,F$.createConstMap)([WpA,FpA]);var ZpA="amd64",$pA="arm32",UpA="arm64",EpA="ia64",KpA="ppc32",VpA="ppc64",IpA="x86";fpA.HOSTARCHVALUES_AMD64=ZpA;fpA.HOSTARCHVALUES_ARM32=$pA;fpA.HOSTARCHVALUES_ARM64=UpA;fpA.HOSTARCHVALUES_IA64=EpA;fpA.HOSTARCHVALUES_PPC32=KpA;fpA.HOSTARCHVALUES_PPC64=VpA;fpA.HOSTARCHVALUES_X86=IpA;fpA.HostArchValues=(0,F$.createConstMap)([ZpA,$pA,UpA,EpA,KpA,VpA,IpA]);var HpA="windows",DpA="linux",NpA="darwin",LpA="freebsd",qpA="netbsd",MpA="openbsd",zpA="dragonflybsd",RpA="hpux",wpA="aix",jpA="solaris",OpA="z_os";fpA.OSTYPEVALUES_WINDOWS=HpA;fpA.OSTYPEVALUES_LINUX=DpA;fpA.OSTYPEVALUES_DARWIN=NpA;fpA.OSTYPEVALUES_FREEBSD=LpA;fpA.OSTYPEVALUES_NETBSD=qpA;fpA.OSTYPEVALUES_OPENBSD=MpA;fpA.OSTYPEVALUES_DRAGONFLYBSD=zpA;fpA.OSTYPEVALUES_HPUX=RpA;fpA.OSTYPEVALUES_AIX=wpA;fpA.OSTYPEVALUES_SOLARIS=jpA;fpA.OSTYPEVALUES_Z_OS=OpA;fpA.OsTypeValues=(0,F$.createConstMap)([HpA,DpA,NpA,LpA,qpA,MpA,zpA,RpA,wpA,jpA,OpA]);var PpA="cpp",TpA="dotnet",SpA="erlang",kpA="go",_pA="java",vpA="nodejs",ypA="php",gpA="python",hpA="ruby",xpA="webjs";fpA.TELEMETRYSDKLANGUAGEVALUES_CPP=PpA;fpA.TELEMETRYSDKLANGUAGEVALUES_DOTNET=TpA;fpA.TELEMETRYSDKLANGUAGEVALUES_ERLANG=SpA;fpA.TELEMETRYSDKLANGUAGEVALUES_GO=kpA;fpA.TELEMETRYSDKLANGUAGEVALUES_JAVA=_pA;fpA.TELEMETRYSDKLANGUAGEVALUES_NODEJS=vpA;fpA.TELEMETRYSDKLANGUAGEVALUES_PHP=ypA;fpA.TELEMETRYSDKLANGUAGEVALUES_PYTHON=gpA;fpA.TELEMETRYSDKLANGUAGEVALUES_RUBY=hpA;fpA.TELEMETRYSDKLANGUAGEVALUES_WEBJS=xpA;fpA.TelemetrySdkLanguageValues=(0,F$.createConstMap)([PpA,TpA,SpA,kpA,_pA,vpA,ypA,gpA,hpA,xpA])});var cpA=R((Z$)=>{var VdB=Z$&&Z$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),IdB=Z$&&Z$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))VdB(Q,A,B)};Object.defineProperty(Z$,"__esModule",{value:!0});IdB(dpA(),Z$)});var spA=R((lpA)=>{Object.defineProperty(lpA,"__esModule",{value:!0});lpA.HTTP_REQUEST_METHOD_VALUE_POST=lpA.HTTP_REQUEST_METHOD_VALUE_PATCH=lpA.HTTP_REQUEST_METHOD_VALUE_OPTIONS=lpA.HTTP_REQUEST_METHOD_VALUE_HEAD=lpA.HTTP_REQUEST_METHOD_VALUE_GET=lpA.HTTP_REQUEST_METHOD_VALUE_DELETE=lpA.HTTP_REQUEST_METHOD_VALUE_CONNECT=lpA.HTTP_REQUEST_METHOD_VALUE_OTHER=lpA.ATTR_HTTP_REQUEST_METHOD=lpA.ATTR_HTTP_REQUEST_HEADER=lpA.ATTR_EXCEPTION_TYPE=lpA.ATTR_EXCEPTION_STACKTRACE=lpA.ATTR_EXCEPTION_MESSAGE=lpA.ATTR_EXCEPTION_ESCAPED=lpA.ERROR_TYPE_VALUE_OTHER=lpA.ATTR_ERROR_TYPE=lpA.ATTR_CLIENT_PORT=lpA.ATTR_CLIENT_ADDRESS=lpA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS=lpA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE=lpA.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS=lpA.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK=lpA.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED=lpA.ATTR_ASPNETCORE_RATE_LIMITING_POLICY=lpA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED=lpA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED=lpA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED=lpA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED=lpA.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT=lpA.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE=lpA.ATTR_TELEMETRY_SDK_VERSION=lpA.ATTR_TELEMETRY_SDK_NAME=lpA.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS=lpA.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT=lpA.TELEMETRY_SDK_LANGUAGE_VALUE_RUST=lpA.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY=lpA.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON=lpA.TELEMETRY_SDK_LANGUAGE_VALUE_PHP=lpA.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS=lpA.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA=lpA.TELEMETRY_SDK_LANGUAGE_VALUE_GO=lpA.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG=lpA.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET=lpA.TELEMETRY_SDK_LANGUAGE_VALUE_CPP=lpA.ATTR_TELEMETRY_SDK_LANGUAGE=lpA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED=lpA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER=lpA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER=lpA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED=lpA.ATTR_ASPNETCORE_RATE_LIMITING_RESULT=void 0;lpA.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT=lpA.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE=lpA.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN=lpA.ATTR_SIGNALR_CONNECTION_STATUS=lpA.ATTR_SERVICE_VERSION=lpA.ATTR_SERVICE_NAME=lpA.ATTR_SERVER_PORT=lpA.ATTR_SERVER_ADDRESS=lpA.ATTR_OTEL_STATUS_DESCRIPTION=lpA.OTEL_STATUS_CODE_VALUE_OK=lpA.OTEL_STATUS_CODE_VALUE_ERROR=lpA.ATTR_OTEL_STATUS_CODE=lpA.ATTR_OTEL_SCOPE_VERSION=lpA.ATTR_OTEL_SCOPE_NAME=lpA.NETWORK_TYPE_VALUE_IPV6=lpA.NETWORK_TYPE_VALUE_IPV4=lpA.ATTR_NETWORK_TYPE=lpA.NETWORK_TRANSPORT_VALUE_UNIX=lpA.NETWORK_TRANSPORT_VALUE_UDP=lpA.NETWORK_TRANSPORT_VALUE_TCP=lpA.NETWORK_TRANSPORT_VALUE_QUIC=lpA.NETWORK_TRANSPORT_VALUE_PIPE=lpA.ATTR_NETWORK_TRANSPORT=lpA.ATTR_NETWORK_PROTOCOL_VERSION=lpA.ATTR_NETWORK_PROTOCOL_NAME=lpA.ATTR_NETWORK_PEER_PORT=lpA.ATTR_NETWORK_PEER_ADDRESS=lpA.ATTR_NETWORK_LOCAL_PORT=lpA.ATTR_NETWORK_LOCAL_ADDRESS=lpA.JVM_THREAD_STATE_VALUE_WAITING=lpA.JVM_THREAD_STATE_VALUE_TIMED_WAITING=lpA.JVM_THREAD_STATE_VALUE_TERMINATED=lpA.JVM_THREAD_STATE_VALUE_RUNNABLE=lpA.JVM_THREAD_STATE_VALUE_NEW=lpA.JVM_THREAD_STATE_VALUE_BLOCKED=lpA.ATTR_JVM_THREAD_STATE=lpA.ATTR_JVM_THREAD_DAEMON=lpA.JVM_MEMORY_TYPE_VALUE_NON_HEAP=lpA.JVM_MEMORY_TYPE_VALUE_HEAP=lpA.ATTR_JVM_MEMORY_TYPE=lpA.ATTR_JVM_MEMORY_POOL_NAME=lpA.ATTR_JVM_GC_NAME=lpA.ATTR_JVM_GC_ACTION=lpA.ATTR_HTTP_ROUTE=lpA.ATTR_HTTP_RESPONSE_STATUS_CODE=lpA.ATTR_HTTP_RESPONSE_HEADER=lpA.ATTR_HTTP_REQUEST_RESEND_COUNT=lpA.ATTR_HTTP_REQUEST_METHOD_ORIGINAL=lpA.HTTP_REQUEST_METHOD_VALUE_TRACE=lpA.HTTP_REQUEST_METHOD_VALUE_PUT=void 0;lpA.ATTR_USER_AGENT_ORIGINAL=lpA.ATTR_URL_SCHEME=lpA.ATTR_URL_QUERY=lpA.ATTR_URL_PATH=lpA.ATTR_URL_FULL=lpA.ATTR_URL_FRAGMENT=lpA.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS=lpA.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS=lpA.SIGNALR_TRANSPORT_VALUE_LONG_POLLING=lpA.ATTR_SIGNALR_TRANSPORT=void 0;lpA.ATTR_ASPNETCORE_RATE_LIMITING_RESULT="aspnetcore.rate_limiting.result";lpA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED="acquired";lpA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER="endpoint_limiter";lpA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER="global_limiter";lpA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED="request_canceled";lpA.ATTR_TELEMETRY_SDK_LANGUAGE="telemetry.sdk.language";lpA.TELEMETRY_SDK_LANGUAGE_VALUE_CPP="cpp";lpA.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET="dotnet";lpA.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG="erlang";lpA.TELEMETRY_SDK_LANGUAGE_VALUE_GO="go";lpA.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA="java";lpA.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS="nodejs";lpA.TELEMETRY_SDK_LANGUAGE_VALUE_PHP="php";lpA.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON="python";lpA.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY="ruby";lpA.TELEMETRY_SDK_LANGUAGE_VALUE_RUST="rust";lpA.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT="swift";lpA.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS="webjs";lpA.ATTR_TELEMETRY_SDK_NAME="telemetry.sdk.name";lpA.ATTR_TELEMETRY_SDK_VERSION="telemetry.sdk.version";lpA.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE="aspnetcore.diagnostics.handler.type";lpA.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT="aspnetcore.diagnostics.exception.result";lpA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED="aborted";lpA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED="handled";lpA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED="skipped";lpA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED="unhandled";lpA.ATTR_ASPNETCORE_RATE_LIMITING_POLICY="aspnetcore.rate_limiting.policy";lpA.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED="aspnetcore.request.is_unhandled";lpA.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK="aspnetcore.routing.is_fallback";lpA.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS="aspnetcore.routing.match_status";lpA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE="failure";lpA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS="success";lpA.ATTR_CLIENT_ADDRESS="client.address";lpA.ATTR_CLIENT_PORT="client.port";lpA.ATTR_ERROR_TYPE="error.type";lpA.ERROR_TYPE_VALUE_OTHER="_OTHER";lpA.ATTR_EXCEPTION_ESCAPED="exception.escaped";lpA.ATTR_EXCEPTION_MESSAGE="exception.message";lpA.ATTR_EXCEPTION_STACKTRACE="exception.stacktrace";lpA.ATTR_EXCEPTION_TYPE="exception.type";var HdB=(A)=>`http.request.header.${A}`;lpA.ATTR_HTTP_REQUEST_HEADER=HdB;lpA.ATTR_HTTP_REQUEST_METHOD="http.request.method";lpA.HTTP_REQUEST_METHOD_VALUE_OTHER="_OTHER";lpA.HTTP_REQUEST_METHOD_VALUE_CONNECT="CONNECT";lpA.HTTP_REQUEST_METHOD_VALUE_DELETE="DELETE";lpA.HTTP_REQUEST_METHOD_VALUE_GET="GET";lpA.HTTP_REQUEST_METHOD_VALUE_HEAD="HEAD";lpA.HTTP_REQUEST_METHOD_VALUE_OPTIONS="OPTIONS";lpA.HTTP_REQUEST_METHOD_VALUE_PATCH="PATCH";lpA.HTTP_REQUEST_METHOD_VALUE_POST="POST";lpA.HTTP_REQUEST_METHOD_VALUE_PUT="PUT";lpA.HTTP_REQUEST_METHOD_VALUE_TRACE="TRACE";lpA.ATTR_HTTP_REQUEST_METHOD_ORIGINAL="http.request.method_original";lpA.ATTR_HTTP_REQUEST_RESEND_COUNT="http.request.resend_count";var DdB=(A)=>`http.response.header.${A}`;lpA.ATTR_HTTP_RESPONSE_HEADER=DdB;lpA.ATTR_HTTP_RESPONSE_STATUS_CODE="http.response.status_code";lpA.ATTR_HTTP_ROUTE="http.route";lpA.ATTR_JVM_GC_ACTION="jvm.gc.action";lpA.ATTR_JVM_GC_NAME="jvm.gc.name";lpA.ATTR_JVM_MEMORY_POOL_NAME="jvm.memory.pool.name";lpA.ATTR_JVM_MEMORY_TYPE="jvm.memory.type";lpA.JVM_MEMORY_TYPE_VALUE_HEAP="heap";lpA.JVM_MEMORY_TYPE_VALUE_NON_HEAP="non_heap";lpA.ATTR_JVM_THREAD_DAEMON="jvm.thread.daemon";lpA.ATTR_JVM_THREAD_STATE="jvm.thread.state";lpA.JVM_THREAD_STATE_VALUE_BLOCKED="blocked";lpA.JVM_THREAD_STATE_VALUE_NEW="new";lpA.JVM_THREAD_STATE_VALUE_RUNNABLE="runnable";lpA.JVM_THREAD_STATE_VALUE_TERMINATED="terminated";lpA.JVM_THREAD_STATE_VALUE_TIMED_WAITING="timed_waiting";lpA.JVM_THREAD_STATE_VALUE_WAITING="waiting";lpA.ATTR_NETWORK_LOCAL_ADDRESS="network.local.address";lpA.ATTR_NETWORK_LOCAL_PORT="network.local.port";lpA.ATTR_NETWORK_PEER_ADDRESS="network.peer.address";lpA.ATTR_NETWORK_PEER_PORT="network.peer.port";lpA.ATTR_NETWORK_PROTOCOL_NAME="network.protocol.name";lpA.ATTR_NETWORK_PROTOCOL_VERSION="network.protocol.version";lpA.ATTR_NETWORK_TRANSPORT="network.transport";lpA.NETWORK_TRANSPORT_VALUE_PIPE="pipe";lpA.NETWORK_TRANSPORT_VALUE_QUIC="quic";lpA.NETWORK_TRANSPORT_VALUE_TCP="tcp";lpA.NETWORK_TRANSPORT_VALUE_UDP="udp";lpA.NETWORK_TRANSPORT_VALUE_UNIX="unix";lpA.ATTR_NETWORK_TYPE="network.type";lpA.NETWORK_TYPE_VALUE_IPV4="ipv4";lpA.NETWORK_TYPE_VALUE_IPV6="ipv6";lpA.ATTR_OTEL_SCOPE_NAME="otel.scope.name";lpA.ATTR_OTEL_SCOPE_VERSION="otel.scope.version";lpA.ATTR_OTEL_STATUS_CODE="otel.status_code";lpA.OTEL_STATUS_CODE_VALUE_ERROR="ERROR";lpA.OTEL_STATUS_CODE_VALUE_OK="OK";lpA.ATTR_OTEL_STATUS_DESCRIPTION="otel.status_description";lpA.ATTR_SERVER_ADDRESS="server.address";lpA.ATTR_SERVER_PORT="server.port";lpA.ATTR_SERVICE_NAME="service.name";lpA.ATTR_SERVICE_VERSION="service.version";lpA.ATTR_SIGNALR_CONNECTION_STATUS="signalr.connection.status";lpA.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN="app_shutdown";lpA.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE="normal_closure";lpA.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT="timeout";lpA.ATTR_SIGNALR_TRANSPORT="signalr.transport";lpA.SIGNALR_TRANSPORT_VALUE_LONG_POLLING="long_polling";lpA.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS="server_sent_events";lpA.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS="web_sockets";lpA.ATTR_URL_FRAGMENT="url.fragment";lpA.ATTR_URL_FULL="url.full";lpA.ATTR_URL_PATH="url.path";lpA.ATTR_URL_QUERY="url.query";lpA.ATTR_URL_SCHEME="url.scheme";lpA.ATTR_USER_AGENT_ORIGINAL="user_agent.original"});var opA=R((rpA)=>{Object.defineProperty(rpA,"__esModule",{value:!0});rpA.METRIC_SIGNALR_SERVER_CONNECTION_DURATION=rpA.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS=rpA.METRIC_KESTREL_UPGRADED_CONNECTIONS=rpA.METRIC_KESTREL_TLS_HANDSHAKE_DURATION=rpA.METRIC_KESTREL_REJECTED_CONNECTIONS=rpA.METRIC_KESTREL_QUEUED_REQUESTS=rpA.METRIC_KESTREL_QUEUED_CONNECTIONS=rpA.METRIC_KESTREL_CONNECTION_DURATION=rpA.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES=rpA.METRIC_KESTREL_ACTIVE_CONNECTIONS=rpA.METRIC_JVM_THREAD_COUNT=rpA.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC=rpA.METRIC_JVM_MEMORY_USED=rpA.METRIC_JVM_MEMORY_LIMIT=rpA.METRIC_JVM_MEMORY_COMMITTED=rpA.METRIC_JVM_GC_DURATION=rpA.METRIC_JVM_CPU_TIME=rpA.METRIC_JVM_CPU_RECENT_UTILIZATION=rpA.METRIC_JVM_CPU_COUNT=rpA.METRIC_JVM_CLASS_UNLOADED=rpA.METRIC_JVM_CLASS_LOADED=rpA.METRIC_JVM_CLASS_COUNT=rpA.METRIC_HTTP_SERVER_REQUEST_DURATION=rpA.METRIC_HTTP_CLIENT_REQUEST_DURATION=rpA.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS=rpA.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS=rpA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION=rpA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE=rpA.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS=rpA.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES=rpA.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS=void 0;rpA.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS="aspnetcore.diagnostics.exceptions";rpA.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES="aspnetcore.rate_limiting.active_request_leases";rpA.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS="aspnetcore.rate_limiting.queued_requests";rpA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE="aspnetcore.rate_limiting.request.time_in_queue";rpA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION="aspnetcore.rate_limiting.request_lease.duration";rpA.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS="aspnetcore.rate_limiting.requests";rpA.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS="aspnetcore.routing.match_attempts";rpA.METRIC_HTTP_CLIENT_REQUEST_DURATION="http.client.request.duration";rpA.METRIC_HTTP_SERVER_REQUEST_DURATION="http.server.request.duration";rpA.METRIC_JVM_CLASS_COUNT="jvm.class.count";rpA.METRIC_JVM_CLASS_LOADED="jvm.class.loaded";rpA.METRIC_JVM_CLASS_UNLOADED="jvm.class.unloaded";rpA.METRIC_JVM_CPU_COUNT="jvm.cpu.count";rpA.METRIC_JVM_CPU_RECENT_UTILIZATION="jvm.cpu.recent_utilization";rpA.METRIC_JVM_CPU_TIME="jvm.cpu.time";rpA.METRIC_JVM_GC_DURATION="jvm.gc.duration";rpA.METRIC_JVM_MEMORY_COMMITTED="jvm.memory.committed";rpA.METRIC_JVM_MEMORY_LIMIT="jvm.memory.limit";rpA.METRIC_JVM_MEMORY_USED="jvm.memory.used";rpA.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC="jvm.memory.used_after_last_gc";rpA.METRIC_JVM_THREAD_COUNT="jvm.thread.count";rpA.METRIC_KESTREL_ACTIVE_CONNECTIONS="kestrel.active_connections";rpA.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES="kestrel.active_tls_handshakes";rpA.METRIC_KESTREL_CONNECTION_DURATION="kestrel.connection.duration";rpA.METRIC_KESTREL_QUEUED_CONNECTIONS="kestrel.queued_connections";rpA.METRIC_KESTREL_QUEUED_REQUESTS="kestrel.queued_requests";rpA.METRIC_KESTREL_REJECTED_CONNECTIONS="kestrel.rejected_connections";rpA.METRIC_KESTREL_TLS_HANDSHAKE_DURATION="kestrel.tls_handshake.duration";rpA.METRIC_KESTREL_UPGRADED_CONNECTIONS="kestrel.upgraded_connections";rpA.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS="signalr.server.active_connections";rpA.METRIC_SIGNALR_SERVER_CONNECTION_DURATION="signalr.server.connection.duration"});var sp=R((EX)=>{var slB=EX&&EX.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),AP=EX&&EX.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))slB(Q,A,B)};Object.defineProperty(EX,"__esModule",{value:!0});AP(EcA(),EX);AP(cpA(),EX);AP(spA(),EX);AP(opA(),EX)});var epA=R((tpA)=>{Object.defineProperty(tpA,"__esModule",{value:!0});tpA.AttributeNames=void 0;var rlB;(function(A){A.HTTP_ERROR_NAME="http.error_name",A.HTTP_ERROR_MESSAGE="http.error_message",A.HTTP_STATUS_TEXT="http.status_text"})(rlB=tpA.AttributeNames||(tpA.AttributeNames={}))});var QiA=R((ahY,AiA)=>{var alB=u("util");function ap(A,Q){Error.captureStackTrace(this,ap),this.name=this.constructor.name,this.message=A,this.input=Q}alB.inherits(ap,Error);AiA.exports=ap});var YiA=R((ohY,BiA)=>{function olB(A){return A===34||A===40||A===41||A===44||A===47||A>=58&&A<=64||A>=91&&A<=93||A===123||A===125}function tlB(A){return A===33||A>=35&&A<=39||A===42||A===43||A===45||A===46||A>=48&&A<=57||A>=65&&A<=90||A>=94&&A<=122||A===124||A===126}function elB(A){return A>=32&&A<=126}function ApB(A){return A>=128&&A<=255}BiA.exports={isDelimiter:olB,isTokenChar:tlB,isExtended:ApB,isPrint:elB}});var WiA=R((thY,GiA)=>{var QpB=u("util"),EK=QiA(),QP=YiA(),BpB=QP.isDelimiter,JiA=QP.isTokenChar,CiA=QP.isExtended,YpB=QP.isPrint;function XiA(A){return A.replace(/\\(.)/g,"$1")}function RL(A,Q){return QpB.format("Unexpected character '%s' at index %d",A.charAt(Q),Q)}function JpB(A){var Q=!1,B=!1,Y=!1,J={},C=[],X=-1,G=-1,W,F;for(var Z=0;Z{Object.defineProperty(KiA,"__esModule",{value:!0});KiA.headerCapture=KiA.getIncomingStableRequestMetricAttributesOnResponse=KiA.getIncomingRequestMetricAttributesOnResponse=KiA.getIncomingRequestAttributesOnResponse=KiA.getIncomingRequestMetricAttributes=KiA.getIncomingRequestAttributes=KiA.getRemoteClientAddress=KiA.getOutgoingRequestMetricAttributesOnResponse=KiA.getOutgoingRequestAttributesOnResponse=KiA.setAttributesFromHttpKind=KiA.getOutgoingRequestMetricAttributes=KiA.getOutgoingRequestAttributes=KiA.extractHostnameAndPort=KiA.isValidOptionsType=KiA.getRequestInfo=KiA.isCompressed=KiA.setResponseContentLengthAttribute=KiA.setRequestContentLengthAttribute=KiA.setSpanWithError=KiA.satisfiesPattern=KiA.parseResponseStatus=KiA.getAbsoluteUrl=void 0;var wL=yA(),SA=sp(),FiA=MB(),CpB=u("url"),BP=epA(),XpB=WiA(),GpB=(A,Q,B="http:")=>{let Y=A||{},J=Y.protocol||B,C=(Y.port||"").toString(),X=Y.path||"/",G=Y.host||Y.hostname||Q.host||"localhost";if(G.indexOf(":")===-1&&C&&C!=="80"&&C!=="443")G+=`:${C}`;return`${J}//${G}${X}`};KiA.getAbsoluteUrl=GpB;var WpB=(A,Q)=>{let B=A===wL.SpanKind.CLIENT?400:500;if(Q&&Q>=100&&Q{if(typeof Q==="string")return Q===A;else if(Q instanceof RegExp)return Q.test(A);else if(typeof Q==="function")return Q(A);else throw TypeError("Pattern is in unsupported datatype")};KiA.satisfiesPattern=FpB;var ZpB=(A,Q,B)=>{let Y=Q.message;if((B&2)===2)A.setAttribute(BP.AttributeNames.HTTP_ERROR_NAME,Q.name),A.setAttribute(BP.AttributeNames.HTTP_ERROR_MESSAGE,Y);if((B&1)===1)A.setAttribute(SA.ATTR_ERROR_TYPE,Q.name);A.setStatus({code:wL.SpanStatusCode.ERROR,message:Y}),A.recordException(Q)};KiA.setSpanWithError=ZpB;var $pB=(A,Q)=>{let B=ZiA(A.headers);if(B===null)return;if(KiA.isCompressed(A.headers))Q[SA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH]=B;else Q[SA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED]=B};KiA.setRequestContentLengthAttribute=$pB;var UpB=(A,Q)=>{let B=ZiA(A.headers);if(B===null)return;if(KiA.isCompressed(A.headers))Q[SA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH]=B;else Q[SA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED]=B};KiA.setResponseContentLengthAttribute=UpB;function ZiA(A){let Q=A["content-length"];if(Q===void 0)return null;let B=parseInt(Q,10);if(isNaN(B))return null;return B}var EpB=(A)=>{let Q=A["content-encoding"];return!!Q&&Q!=="identity"};KiA.isCompressed=EpB;function KpB(A){let{hostname:Q,pathname:B,port:Y,username:J,password:C,search:X,protocol:G,hash:W,href:F,origin:Z,host:U}=new URL(A),$={protocol:G,hostname:Q&&Q[0]==="["?Q.slice(1,-1):Q,hash:W,search:X,pathname:B,path:`${B||""}${X||""}`,href:F,origin:Z,host:U};if(Y!=="")$.port=Number(Y);if(J||C)$.auth=`${decodeURIComponent(J)}:${decodeURIComponent(C)}`;return $}var VpB=(A,Q,B)=>{let Y,J,C,X=!1;if(typeof Q==="string"){try{let W=KpB(Q);C=W,Y=W.pathname||"/"}catch(W){X=!0,A.verbose("Unable to parse URL provided to HTTP request, using fallback to determine path. Original error:",W),C={path:Q},Y=C.path||"/"}if(J=`${C.protocol||"http:"}//${C.host}`,B!==void 0)Object.assign(C,B)}else if(Q instanceof CpB.URL){if(C={protocol:Q.protocol,hostname:typeof Q.hostname==="string"&&Q.hostname.startsWith("[")?Q.hostname.slice(1,-1):Q.hostname,path:`${Q.pathname||""}${Q.search||""}`},Q.port!=="")C.port=Number(Q.port);if(Q.username||Q.password)C.auth=`${Q.username}:${Q.password}`;if(Y=Q.pathname,J=Q.origin,B!==void 0)Object.assign(C,B)}else{C=Object.assign({protocol:Q.host?"http:":void 0},Q);let W=C.host||(C.port!=null?`${C.hostname}${C.port}`:C.hostname);if(J=`${C.protocol||"http:"}//${W}`,Y=Q.pathname,!Y&&C.path)try{Y=new URL(C.path,J).pathname||"/"}catch(F){Y="/"}}let G=C.method?C.method.toUpperCase():"GET";return{origin:J,pathname:Y,method:G,optionsParsed:C,invalidUrl:X}};KiA.getRequestInfo=VpB;var IpB=(A)=>{if(!A)return!1;let Q=typeof A;return Q==="string"||Q==="object"&&!Array.isArray(A)};KiA.isValidOptionsType=IpB;var HpB=(A)=>{var Q;if(A.hostname&&A.port)return{hostname:A.hostname,port:A.port};let B=((Q=A.host)===null||Q===void 0?void 0:Q.match(/^([^:/ ]+)(:\d{1,5})?/))||null,Y=A.hostname||(B===null?"localhost":B[1]),J=A.port;if(!J)if(B&&B[2])J=B[2].substring(1);else J=A.protocol==="https:"?"443":"80";return{hostname:Y,port:J}};KiA.extractHostnameAndPort=HpB;var DpB=(A,Q,B)=>{var Y,J;let{hostname:C,port:X}=Q,G=(Y=A.method)!==null&&Y!==void 0?Y:"GET",W=UiA(G),F=A.headers||{},Z=F["user-agent"],U=KiA.getAbsoluteUrl(A,F,`${Q.component}:`),$={[SA.SEMATTRS_HTTP_URL]:U,[SA.SEMATTRS_HTTP_METHOD]:G,[SA.SEMATTRS_HTTP_TARGET]:A.path||"/",[SA.SEMATTRS_NET_PEER_NAME]:C,[SA.SEMATTRS_HTTP_HOST]:(J=F.host)!==null&&J!==void 0?J:`${C}:${X}`},E={[SA.ATTR_HTTP_REQUEST_METHOD]:W,[SA.ATTR_SERVER_ADDRESS]:C,[SA.ATTR_SERVER_PORT]:Number(X),[SA.ATTR_URL_FULL]:U};if(G!==W)E[SA.ATTR_HTTP_REQUEST_METHOD_ORIGINAL]=G;if(Z!==void 0)$[SA.SEMATTRS_HTTP_USER_AGENT]=Z;switch(B){case 1:return Object.assign(E,Q.hookAttributes);case 2:return Object.assign($,Q.hookAttributes)}return Object.assign($,E,Q.hookAttributes)};KiA.getOutgoingRequestAttributes=DpB;var NpB=(A)=>{let Q={};return Q[SA.SEMATTRS_HTTP_METHOD]=A[SA.SEMATTRS_HTTP_METHOD],Q[SA.SEMATTRS_NET_PEER_NAME]=A[SA.SEMATTRS_NET_PEER_NAME],Q};KiA.getOutgoingRequestMetricAttributes=NpB;var LpB=(A,Q)=>{if(A)if(Q[SA.SEMATTRS_HTTP_FLAVOR]=A,A.toUpperCase()!=="QUIC")Q[SA.SEMATTRS_NET_TRANSPORT]=SA.NETTRANSPORTVALUES_IP_TCP;else Q[SA.SEMATTRS_NET_TRANSPORT]=SA.NETTRANSPORTVALUES_IP_UDP};KiA.setAttributesFromHttpKind=LpB;var qpB=(A,Q)=>{let{statusCode:B,statusMessage:Y,httpVersion:J,socket:C}=A,X={},G={};if(B!=null)G[SA.ATTR_HTTP_RESPONSE_STATUS_CODE]=B;if(C){let{remoteAddress:W,remotePort:F}=C;X[SA.SEMATTRS_NET_PEER_IP]=W,X[SA.SEMATTRS_NET_PEER_PORT]=F,G[SA.ATTR_NETWORK_PEER_ADDRESS]=W,G[SA.ATTR_NETWORK_PEER_PORT]=F,G[SA.ATTR_NETWORK_PROTOCOL_VERSION]=A.httpVersion}if(KiA.setResponseContentLengthAttribute(A,X),B)X[SA.SEMATTRS_HTTP_STATUS_CODE]=B,X[BP.AttributeNames.HTTP_STATUS_TEXT]=(Y||"").toUpperCase();switch(KiA.setAttributesFromHttpKind(J,X),Q){case 1:return G;case 2:return X}return Object.assign(X,G)};KiA.getOutgoingRequestAttributesOnResponse=qpB;var MpB=(A)=>{let Q={};return Q[SA.SEMATTRS_NET_PEER_PORT]=A[SA.SEMATTRS_NET_PEER_PORT],Q[SA.SEMATTRS_HTTP_STATUS_CODE]=A[SA.SEMATTRS_HTTP_STATUS_CODE],Q[SA.SEMATTRS_HTTP_FLAVOR]=A[SA.SEMATTRS_HTTP_FLAVOR],Q};KiA.getOutgoingRequestMetricAttributesOnResponse=MpB;function KW(A,Q){let B=A.split(":");if(B.length===1){if(Q==="http")return{host:B[0],port:"80"};if(Q==="https")return{host:B[0],port:"443"};return{host:B[0]}}if(B.length===2)return{host:B[0],port:B[1]};if(B[0].startsWith("[")){if(B[B.length-1].endsWith("]")){if(Q==="http")return{host:A,port:"80"};if(Q==="https")return{host:A,port:"443"}}else if(B[B.length-2].endsWith("]"))return{host:B.slice(0,-1).join(":"),port:B[B.length-1]}}return{host:A}}function zpB(A,Q){let B=A.headers.forwarded;if(B){for(let C of EiA(B))if(C.host)return KW(C.host,C.proto)}let Y=A.headers["x-forwarded-host"];if(typeof Y==="string"){if(typeof A.headers["x-forwarded-proto"]==="string")return KW(Y,A.headers["x-forwarded-proto"]);if(Array.isArray(A.headers["x-forwarded-proto"]))return KW(Y,A.headers["x-forwarded-proto"][0]);return KW(Y)}else if(Array.isArray(Y)&&typeof Y[0]==="string"&&Y[0].length>0){if(typeof A.headers["x-forwarded-proto"]==="string")return KW(Y[0],A.headers["x-forwarded-proto"]);if(Array.isArray(A.headers["x-forwarded-proto"]))return KW(Y[0],A.headers["x-forwarded-proto"][0]);return KW(Y[0])}let J=A.headers.host;if(typeof J==="string"&&J.length>0)return KW(J,Q);return null}function $iA(A){let Q=A.headers.forwarded;if(Q){for(let J of EiA(Q))if(J.for)return J.for}let B=A.headers["x-forwarded-for"];if(typeof B==="string")return B;else if(Array.isArray(B))return B[0];let Y=A.socket.remoteAddress;if(Y)return Y;return null}KiA.getRemoteClientAddress=$iA;function RpB(A,Q,B){var Y,J;try{if(Q.headers.host)return new URL((Y=Q.url)!==null&&Y!==void 0?Y:"/",`${A}://${Q.headers.host}`);else{let C=new URL((J=Q.url)!==null&&J!==void 0?J:"/",`${A}://localhost`);return{pathname:C.pathname,search:C.search,toString:function(){return C.pathname+C.search}}}}catch(C){return B.verbose("Unable to get URL from request",C),{}}}var wpB=(A,Q,B)=>{let Y=A.headers,J=Y["user-agent"],C=Y["x-forwarded-for"],X=A.httpVersion,G=Y.host,W=(G===null||G===void 0?void 0:G.replace(/^(.*)(:[0-9]{1,5})/,"$1"))||"localhost",F=A.method,Z=UiA(F),U=zpB(A,Q.component),$=Q.serverName,E=$iA(A),K={[SA.ATTR_HTTP_REQUEST_METHOD]:Z,[SA.ATTR_URL_SCHEME]:Q.component,[SA.ATTR_SERVER_ADDRESS]:U===null||U===void 0?void 0:U.host,[SA.ATTR_NETWORK_PEER_ADDRESS]:A.socket.remoteAddress,[SA.ATTR_NETWORK_PEER_PORT]:A.socket.remotePort,[SA.ATTR_NETWORK_PROTOCOL_VERSION]:A.httpVersion,[SA.ATTR_USER_AGENT_ORIGINAL]:J},I=RpB(Q.component,A,B);if((I===null||I===void 0?void 0:I.pathname)!=null)K[SA.ATTR_URL_PATH]=I.pathname;if(E!=null)K[SA.ATTR_CLIENT_ADDRESS]=E;if((U===null||U===void 0?void 0:U.port)!=null)K[SA.ATTR_SERVER_PORT]=Number(U.port);if(F!==Z)K[SA.ATTR_HTTP_REQUEST_METHOD_ORIGINAL]=F;let V={[SA.SEMATTRS_HTTP_URL]:I.toString(),[SA.SEMATTRS_HTTP_HOST]:G,[SA.SEMATTRS_NET_HOST_NAME]:W,[SA.SEMATTRS_HTTP_METHOD]:F,[SA.SEMATTRS_HTTP_SCHEME]:Q.component};if(typeof C==="string")V[SA.SEMATTRS_HTTP_CLIENT_IP]=C.split(",")[0];if(typeof $==="string")V[SA.SEMATTRS_HTTP_SERVER_NAME]=$;if(I===null||I===void 0?void 0:I.pathname)V[SA.SEMATTRS_HTTP_TARGET]=(I===null||I===void 0?void 0:I.pathname)+(I===null||I===void 0?void 0:I.search)||"/";if(J!==void 0)V[SA.SEMATTRS_HTTP_USER_AGENT]=J;switch(KiA.setRequestContentLengthAttribute(A,V),KiA.setAttributesFromHttpKind(X,V),Q.semconvStability){case 1:return Object.assign(K,Q.hookAttributes);case 2:return Object.assign(V,Q.hookAttributes)}return Object.assign(V,K,Q.hookAttributes)};KiA.getIncomingRequestAttributes=wpB;var jpB=(A)=>{let Q={};return Q[SA.SEMATTRS_HTTP_SCHEME]=A[SA.SEMATTRS_HTTP_SCHEME],Q[SA.SEMATTRS_HTTP_METHOD]=A[SA.SEMATTRS_HTTP_METHOD],Q[SA.SEMATTRS_NET_HOST_NAME]=A[SA.SEMATTRS_NET_HOST_NAME],Q[SA.SEMATTRS_HTTP_FLAVOR]=A[SA.SEMATTRS_HTTP_FLAVOR],Q};KiA.getIncomingRequestMetricAttributes=jpB;var OpB=(A,Q,B)=>{let{socket:Y}=A,{statusCode:J,statusMessage:C}=Q,X={[SA.ATTR_HTTP_RESPONSE_STATUS_CODE]:J},G=(0,FiA.getRPCMetadata)(wL.context.active()),W={};if(Y){let{localAddress:F,localPort:Z,remoteAddress:U,remotePort:$}=Y;W[SA.SEMATTRS_NET_HOST_IP]=F,W[SA.SEMATTRS_NET_HOST_PORT]=Z,W[SA.SEMATTRS_NET_PEER_IP]=U,W[SA.SEMATTRS_NET_PEER_PORT]=$}if(W[SA.SEMATTRS_HTTP_STATUS_CODE]=J,W[BP.AttributeNames.HTTP_STATUS_TEXT]=(C||"").toUpperCase(),(G===null||G===void 0?void 0:G.type)===FiA.RPCType.HTTP&&G.route!==void 0)W[SA.SEMATTRS_HTTP_ROUTE]=G.route,X[SA.ATTR_HTTP_ROUTE]=G.route;switch(B){case 1:return X;case 2:return W}return Object.assign(W,X)};KiA.getIncomingRequestAttributesOnResponse=OpB;var PpB=(A)=>{let Q={};if(Q[SA.SEMATTRS_HTTP_STATUS_CODE]=A[SA.SEMATTRS_HTTP_STATUS_CODE],Q[SA.SEMATTRS_NET_HOST_PORT]=A[SA.SEMATTRS_NET_HOST_PORT],A[SA.SEMATTRS_HTTP_ROUTE]!==void 0)Q[SA.SEMATTRS_HTTP_ROUTE]=A[SA.SEMATTRS_HTTP_ROUTE];return Q};KiA.getIncomingRequestMetricAttributesOnResponse=PpB;var TpB=(A)=>{let Q={};if(A[SA.ATTR_HTTP_ROUTE]!==void 0)Q[SA.ATTR_HTTP_ROUTE]=A[SA.SEMATTRS_HTTP_ROUTE];if(A[SA.ATTR_HTTP_RESPONSE_STATUS_CODE])Q[SA.ATTR_HTTP_RESPONSE_STATUS_CODE]=A[SA.ATTR_HTTP_RESPONSE_STATUS_CODE];return Q};KiA.getIncomingStableRequestMetricAttributesOnResponse=TpB;function SpB(A,Q){let B=new Map;for(let Y=0,J=Q.length;Y{for(let C of B.keys()){let X=J(C);if(X===void 0)continue;let G=B.get(C),W=`http.${A}.header.${G}`;if(typeof X==="string")Y.setAttribute(W,[X]);else if(Array.isArray(X))Y.setAttribute(W,X);else Y.setAttribute(W,[X])}}}KiA.headerCapture=SpB;var kpB=new Set(["GET","HEAD","POST","PUT","DELETE","CONNECT","OPTIONS","TRACE","PATCH"]);function UiA(A){if(A==null)return"GET";let Q=A.toUpperCase();if(kpB.has(Q))return Q;return"_OTHER"}function EiA(A){try{return XpB(A)}catch(Q){return[]}}});var RiA=R((MiA)=>{Object.defineProperty(MiA,"__esModule",{value:!0});MiA.HttpInstrumentation=void 0;var _Q=yA(),KK=MB(),LiA=ovA(),spB=u("url"),rpB=AyA(),l5=NB(),ep=MB(),Ai=u("events"),n0=sp(),b0=NiA();class qiA extends l5.InstrumentationBase{constructor(A={}){super("@opentelemetry/instrumentation-http",rpB.VERSION,A);this._spanNotEnded=new WeakSet,this._semconvStability=2,this._headerCapture=this._createHeaderCapture();for(let Q of(0,ep.getEnv)().OTEL_SEMCONV_STABILITY_OPT_IN)if(Q.toLowerCase()==="http/dup"){this._semconvStability=3;break}else if(Q.toLowerCase()==="http")this._semconvStability=1}_updateMetricInstruments(){this._oldHttpServerDurationHistogram=this.meter.createHistogram("http.server.duration",{description:"Measures the duration of inbound HTTP requests.",unit:"ms",valueType:_Q.ValueType.DOUBLE}),this._oldHttpClientDurationHistogram=this.meter.createHistogram("http.client.duration",{description:"Measures the duration of outbound HTTP requests.",unit:"ms",valueType:_Q.ValueType.DOUBLE}),this._stableHttpServerDurationHistogram=this.meter.createHistogram(n0.METRIC_HTTP_SERVER_REQUEST_DURATION,{description:"Duration of HTTP server requests.",unit:"s",valueType:_Q.ValueType.DOUBLE,advice:{explicitBucketBoundaries:[0.005,0.01,0.025,0.05,0.075,0.1,0.25,0.5,0.75,1,2.5,5,7.5,10]}}),this._stableHttpClientDurationHistogram=this.meter.createHistogram(n0.METRIC_HTTP_CLIENT_REQUEST_DURATION,{description:"Duration of HTTP client requests.",unit:"s",valueType:_Q.ValueType.DOUBLE,advice:{explicitBucketBoundaries:[0.005,0.01,0.025,0.05,0.075,0.1,0.25,0.5,0.75,1,2.5,5,7.5,10]}})}_recordServerDuration(A,Q,B){if((this._semconvStability&2)===2)this._oldHttpServerDurationHistogram.record(A,Q);if((this._semconvStability&1)===1)this._stableHttpServerDurationHistogram.record(A/1000,B)}_recordClientDuration(A,Q,B){if((this._semconvStability&2)===2)this._oldHttpClientDurationHistogram.record(A,Q);if((this._semconvStability&1)===1)this._stableHttpClientDurationHistogram.record(A/1000,B)}setConfig(A={}){super.setConfig(A),this._headerCapture=this._createHeaderCapture()}init(){return[this._getHttpsInstrumentation(),this._getHttpInstrumentation()]}_getHttpInstrumentation(){return new l5.InstrumentationNodeModuleDefinition("http",["*"],(A)=>{let Q=A[Symbol.toStringTag]==="Module";if(!this.getConfig().disableOutgoingRequestInstrumentation){let B=this._wrap(A,"request",this._getPatchOutgoingRequestFunction("http")),Y=this._wrap(A,"get",this._getPatchOutgoingGetFunction(B));if(Q)A.default.request=B,A.default.get=Y}if(!this.getConfig().disableIncomingRequestInstrumentation)this._wrap(A.Server.prototype,"emit",this._getPatchIncomingRequestFunction("http"));return A},(A)=>{if(A===void 0)return;if(!this.getConfig().disableOutgoingRequestInstrumentation)this._unwrap(A,"request"),this._unwrap(A,"get");if(!this.getConfig().disableIncomingRequestInstrumentation)this._unwrap(A.Server.prototype,"emit")})}_getHttpsInstrumentation(){return new l5.InstrumentationNodeModuleDefinition("https",["*"],(A)=>{let Q=A[Symbol.toStringTag]==="Module";if(!this.getConfig().disableOutgoingRequestInstrumentation){let B=this._wrap(A,"request",this._getPatchHttpsOutgoingRequestFunction("https")),Y=this._wrap(A,"get",this._getPatchHttpsOutgoingGetFunction(B));if(Q)A.default.request=B,A.default.get=Y}if(!this.getConfig().disableIncomingRequestInstrumentation)this._wrap(A.Server.prototype,"emit",this._getPatchIncomingRequestFunction("https"));return A},(A)=>{if(A===void 0)return;if(!this.getConfig().disableOutgoingRequestInstrumentation)this._unwrap(A,"request"),this._unwrap(A,"get");if(!this.getConfig().disableIncomingRequestInstrumentation)this._unwrap(A.Server.prototype,"emit")})}_getPatchIncomingRequestFunction(A){return(Q)=>{return this._incomingRequestFunction(A,Q)}}_getPatchOutgoingRequestFunction(A){return(Q)=>{return this._outgoingRequestFunction(A,Q)}}_getPatchOutgoingGetFunction(A){return(Q)=>{return function(Y,...J){let C=A(Y,...J);return C.end(),C}}}_getPatchHttpsOutgoingRequestFunction(A){return(Q)=>{let B=this;return function(J,...C){var X;if(A==="https"&&typeof J==="object"&&((X=J===null||J===void 0?void 0:J.constructor)===null||X===void 0?void 0:X.name)!=="URL")J=Object.assign({},J),B._setDefaultOptions(J);return B._getPatchOutgoingRequestFunction(A)(Q)(J,...C)}}}_setDefaultOptions(A){A.protocol=A.protocol||"https:",A.port=A.port||443}_getPatchHttpsOutgoingGetFunction(A){return(Q)=>{let B=this;return function(J,...C){return B._getPatchOutgoingGetFunction(A)(Q)(J,...C)}}}_traceClientRequest(A,Q,B,Y,J){if(this.getConfig().requestHook)this._callRequestHook(Q,A);let C=!1;return A.prependListener("response",(X)=>{if(this._diag.debug("outgoingRequest on response()"),A.listenerCount("response")<=1)X.resume();let G=(0,b0.getOutgoingRequestAttributesOnResponse)(X,this._semconvStability);if(Q.setAttributes(G),Y=Object.assign(Y,(0,b0.getOutgoingRequestMetricAttributesOnResponse)(G)),this.getConfig().responseHook)this._callResponseHook(Q,X);this._headerCapture.client.captureRequestHeaders(Q,(F)=>A.getHeader(F)),this._headerCapture.client.captureResponseHeaders(Q,(F)=>X.headers[F]),_Q.context.bind(_Q.context.active(),X);let W=()=>{if(this._diag.debug("outgoingRequest on end()"),C)return;C=!0;let F;if(X.aborted&&!X.complete)F={code:_Q.SpanStatusCode.ERROR};else F={code:(0,b0.parseResponseStatus)(_Q.SpanKind.CLIENT,X.statusCode)};if(Q.setStatus(F),this.getConfig().applyCustomAttributesOnSpan)(0,l5.safeExecuteInTheMiddle)(()=>this.getConfig().applyCustomAttributesOnSpan(Q,A,X),()=>{},!0);this._closeHttpSpan(Q,_Q.SpanKind.CLIENT,B,Y,J)};if(X.on("end",W),LiA.lt(process.version,"16.0.0"))X.on("close",W);X.on(Ai.errorMonitor,(F)=>{if(this._diag.debug("outgoingRequest on error()",F),C)return;C=!0,(0,b0.setSpanWithError)(Q,F,this._semconvStability),Q.setStatus({code:_Q.SpanStatusCode.ERROR,message:F.message}),this._closeHttpSpan(Q,_Q.SpanKind.CLIENT,B,Y,J)})}),A.on("close",()=>{if(this._diag.debug("outgoingRequest on request close()"),A.aborted||C)return;C=!0,this._closeHttpSpan(Q,_Q.SpanKind.CLIENT,B,Y,J)}),A.on(Ai.errorMonitor,(X)=>{if(this._diag.debug("outgoingRequest on request error()",X),C)return;C=!0,(0,b0.setSpanWithError)(Q,X,this._semconvStability),this._closeHttpSpan(Q,_Q.SpanKind.CLIENT,B,Y,J)}),this._diag.debug("http.ClientRequest return request"),A}_incomingRequestFunction(A,Q){let B=this;return function(J,...C){if(J!=="request")return Q.apply(this,[J,...C]);let X=C[0],G=C[1],W=X.method||"GET";if(B._diag.debug(`${A} instrumentation incomingRequest`),(0,l5.safeExecuteInTheMiddle)(()=>{var D,L;return(L=(D=B.getConfig()).ignoreIncomingRequestHook)===null||L===void 0?void 0:L.call(D,X)},(D)=>{if(D!=null)B._diag.error("caught ignoreIncomingRequestHook error: ",D)},!0))return _Q.context.with((0,KK.suppressTracing)(_Q.context.active()),()=>{return _Q.context.bind(_Q.context.active(),X),_Q.context.bind(_Q.context.active(),G),Q.apply(this,[J,...C])});let F=X.headers,Z=(0,b0.getIncomingRequestAttributes)(X,{component:A,serverName:B.getConfig().serverName,hookAttributes:B._callStartSpanHook(X,B.getConfig().startIncomingSpanHook),semconvStability:B._semconvStability},B._diag),U={kind:_Q.SpanKind.SERVER,attributes:Z},$=(0,KK.hrTime)(),E=(0,b0.getIncomingRequestMetricAttributes)(Z),K={[n0.ATTR_HTTP_REQUEST_METHOD]:Z[n0.ATTR_HTTP_REQUEST_METHOD],[n0.ATTR_URL_SCHEME]:Z[n0.ATTR_URL_SCHEME]};if(Z[n0.ATTR_NETWORK_PROTOCOL_VERSION])K[n0.ATTR_NETWORK_PROTOCOL_VERSION]=Z[n0.ATTR_NETWORK_PROTOCOL_VERSION];let I=_Q.propagation.extract(_Q.ROOT_CONTEXT,F),V=B._startHttpSpan(W,U,I),H={type:ep.RPCType.HTTP,span:V};return _Q.context.with((0,ep.setRPCMetadata)(_Q.trace.setSpan(I,V),H),()=>{if(_Q.context.bind(_Q.context.active(),X),_Q.context.bind(_Q.context.active(),G),B.getConfig().requestHook)B._callRequestHook(V,X);if(B.getConfig().responseHook)B._callResponseHook(V,G);B._headerCapture.server.captureRequestHeaders(V,(L)=>X.headers[L]);let D=!1;return G.on("close",()=>{if(D)return;B._onServerResponseFinish(X,G,V,E,K,$)}),G.on(Ai.errorMonitor,(L)=>{D=!0,B._onServerResponseError(V,E,K,$,L)}),(0,l5.safeExecuteInTheMiddle)(()=>Q.apply(this,[J,...C]),(L)=>{if(L)throw(0,b0.setSpanWithError)(V,L,B._semconvStability),B._closeHttpSpan(V,_Q.SpanKind.SERVER,$,E,K),L})})}}_outgoingRequestFunction(A,Q){let B=this;return function(J,...C){if(!(0,b0.isValidOptionsType)(J))return Q.apply(this,[J,...C]);let X=typeof C[0]==="object"&&(typeof J==="string"||J instanceof spB.URL)?C.shift():void 0,{method:G,invalidUrl:W,optionsParsed:F}=(0,b0.getRequestInfo)(B._diag,J,X);if(A==="http"&&LiA.lt(process.version,"9.0.0")&&F.protocol==="https:")return Q.apply(this,[F,...C]);if((0,l5.safeExecuteInTheMiddle)(()=>{var z,M;return(M=(z=B.getConfig()).ignoreOutgoingRequestHook)===null||M===void 0?void 0:M.call(z,F)},(z)=>{if(z!=null)B._diag.error("caught ignoreOutgoingRequestHook error: ",z)},!0))return Q.apply(this,[F,...C]);let{hostname:Z,port:U}=(0,b0.extractHostnameAndPort)(F),$=(0,b0.getOutgoingRequestAttributes)(F,{component:A,port:U,hostname:Z,hookAttributes:B._callStartSpanHook(F,B.getConfig().startOutgoingSpanHook)},B._semconvStability),E=(0,KK.hrTime)(),K=(0,b0.getOutgoingRequestMetricAttributes)($),I={[n0.ATTR_HTTP_REQUEST_METHOD]:$[n0.ATTR_HTTP_REQUEST_METHOD],[n0.ATTR_SERVER_ADDRESS]:$[n0.ATTR_SERVER_ADDRESS],[n0.ATTR_SERVER_PORT]:$[n0.ATTR_SERVER_PORT]};if($[n0.ATTR_HTTP_RESPONSE_STATUS_CODE])I[n0.ATTR_HTTP_RESPONSE_STATUS_CODE]=$[n0.ATTR_HTTP_RESPONSE_STATUS_CODE];if($[n0.ATTR_NETWORK_PROTOCOL_VERSION])I[n0.ATTR_NETWORK_PROTOCOL_VERSION]=$[n0.ATTR_NETWORK_PROTOCOL_VERSION];let V={kind:_Q.SpanKind.CLIENT,attributes:$},H=B._startHttpSpan(G,V),D=_Q.context.active(),L=_Q.trace.setSpan(D,H);if(!F.headers)F.headers={};else F.headers=Object.assign({},F.headers);return _Q.propagation.inject(L,F.headers),_Q.context.with(L,()=>{let z=C[C.length-1];if(typeof z==="function")C[C.length-1]=_Q.context.bind(D,z);let M=(0,l5.safeExecuteInTheMiddle)(()=>{if(W)return Q.apply(this,[J,...C]);else return Q.apply(this,[F,...C])},(N)=>{if(N)throw(0,b0.setSpanWithError)(H,N,B._semconvStability),B._closeHttpSpan(H,_Q.SpanKind.CLIENT,E,K,I),N});return B._diag.debug(`${A} instrumentation outgoingRequest`),_Q.context.bind(D,M),B._traceClientRequest(M,H,E,K,I)})}}_onServerResponseFinish(A,Q,B,Y,J,C){let X=(0,b0.getIncomingRequestAttributesOnResponse)(A,Q,this._semconvStability);Y=Object.assign(Y,(0,b0.getIncomingRequestMetricAttributesOnResponse)(X)),J=Object.assign(J,(0,b0.getIncomingStableRequestMetricAttributesOnResponse)(X)),this._headerCapture.server.captureResponseHeaders(B,(W)=>Q.getHeader(W)),B.setAttributes(X).setStatus({code:(0,b0.parseResponseStatus)(_Q.SpanKind.SERVER,Q.statusCode)});let G=X[n0.SEMATTRS_HTTP_ROUTE];if(G)B.updateName(`${A.method||"GET"} ${G}`);if(this.getConfig().applyCustomAttributesOnSpan)(0,l5.safeExecuteInTheMiddle)(()=>this.getConfig().applyCustomAttributesOnSpan(B,A,Q),()=>{},!0);this._closeHttpSpan(B,_Q.SpanKind.SERVER,C,Y,J)}_onServerResponseError(A,Q,B,Y,J){(0,b0.setSpanWithError)(A,J,this._semconvStability),this._closeHttpSpan(A,_Q.SpanKind.SERVER,Y,Q,B)}_startHttpSpan(A,Q,B=_Q.context.active()){let Y=Q.kind===_Q.SpanKind.CLIENT?this.getConfig().requireParentforOutgoingSpans:this.getConfig().requireParentforIncomingSpans,J,C=_Q.trace.getSpan(B);if(Y===!0&&C===void 0)J=_Q.trace.wrapSpanContext(_Q.INVALID_SPAN_CONTEXT);else if(Y===!0&&(C===null||C===void 0?void 0:C.spanContext().isRemote))J=C;else J=this.tracer.startSpan(A,Q,B);return this._spanNotEnded.add(J),J}_closeHttpSpan(A,Q,B,Y,J){if(!this._spanNotEnded.has(A))return;A.end(),this._spanNotEnded.delete(A);let C=(0,KK.hrTimeToMilliseconds)((0,KK.hrTimeDuration)(B,(0,KK.hrTime)()));if(Q===_Q.SpanKind.SERVER)this._recordServerDuration(C,Y,J);else if(Q===_Q.SpanKind.CLIENT)this._recordClientDuration(C,Y,J)}_callResponseHook(A,Q){(0,l5.safeExecuteInTheMiddle)(()=>this.getConfig().responseHook(A,Q),()=>{},!0)}_callRequestHook(A,Q){(0,l5.safeExecuteInTheMiddle)(()=>this.getConfig().requestHook(A,Q),()=>{},!0)}_callStartSpanHook(A,Q){if(typeof Q==="function")return(0,l5.safeExecuteInTheMiddle)(()=>Q(A),()=>{},!0)}_createHeaderCapture(){var A,Q,B,Y,J,C,X,G,W,F,Z,U;let $=this.getConfig();return{client:{captureRequestHeaders:(0,b0.headerCapture)("request",(B=(Q=(A=$.headersToSpanAttributes)===null||A===void 0?void 0:A.client)===null||Q===void 0?void 0:Q.requestHeaders)!==null&&B!==void 0?B:[]),captureResponseHeaders:(0,b0.headerCapture)("response",(C=(J=(Y=$.headersToSpanAttributes)===null||Y===void 0?void 0:Y.client)===null||J===void 0?void 0:J.responseHeaders)!==null&&C!==void 0?C:[])},server:{captureRequestHeaders:(0,b0.headerCapture)("request",(W=(G=(X=$.headersToSpanAttributes)===null||X===void 0?void 0:X.server)===null||G===void 0?void 0:G.requestHeaders)!==null&&W!==void 0?W:[]),captureResponseHeaders:(0,b0.headerCapture)("response",(U=(Z=(F=$.headersToSpanAttributes)===null||F===void 0?void 0:F.server)===null||Z===void 0?void 0:Z.responseHeaders)!==null&&U!==void 0?U:[])}}}}MiA.HttpInstrumentation=qiA});var wiA=R((Qi)=>{Object.defineProperty(Qi,"__esModule",{value:!0});Qi.HttpInstrumentation=void 0;var apB=RiA();Object.defineProperty(Qi,"HttpInstrumentation",{enumerable:!0,get:function(){return apB.HttpInstrumentation}})});var Yi=R((jiA)=>{Object.defineProperty(jiA,"__esModule",{value:!0});jiA.createConstMap=void 0;function QiB(A){let Q={},B=A.length;for(let Y=0;Y{Object.defineProperty(HoA,"__esModule",{value:!0});HoA.SEMATTRS_NET_HOST_CARRIER_ICC=HoA.SEMATTRS_NET_HOST_CARRIER_MNC=HoA.SEMATTRS_NET_HOST_CARRIER_MCC=HoA.SEMATTRS_NET_HOST_CARRIER_NAME=HoA.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=HoA.SEMATTRS_NET_HOST_CONNECTION_TYPE=HoA.SEMATTRS_NET_HOST_NAME=HoA.SEMATTRS_NET_HOST_PORT=HoA.SEMATTRS_NET_HOST_IP=HoA.SEMATTRS_NET_PEER_NAME=HoA.SEMATTRS_NET_PEER_PORT=HoA.SEMATTRS_NET_PEER_IP=HoA.SEMATTRS_NET_TRANSPORT=HoA.SEMATTRS_FAAS_INVOKED_REGION=HoA.SEMATTRS_FAAS_INVOKED_PROVIDER=HoA.SEMATTRS_FAAS_INVOKED_NAME=HoA.SEMATTRS_FAAS_COLDSTART=HoA.SEMATTRS_FAAS_CRON=HoA.SEMATTRS_FAAS_TIME=HoA.SEMATTRS_FAAS_DOCUMENT_NAME=HoA.SEMATTRS_FAAS_DOCUMENT_TIME=HoA.SEMATTRS_FAAS_DOCUMENT_OPERATION=HoA.SEMATTRS_FAAS_DOCUMENT_COLLECTION=HoA.SEMATTRS_FAAS_EXECUTION=HoA.SEMATTRS_FAAS_TRIGGER=HoA.SEMATTRS_EXCEPTION_ESCAPED=HoA.SEMATTRS_EXCEPTION_STACKTRACE=HoA.SEMATTRS_EXCEPTION_MESSAGE=HoA.SEMATTRS_EXCEPTION_TYPE=HoA.SEMATTRS_DB_SQL_TABLE=HoA.SEMATTRS_DB_MONGODB_COLLECTION=HoA.SEMATTRS_DB_REDIS_DATABASE_INDEX=HoA.SEMATTRS_DB_HBASE_NAMESPACE=HoA.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=HoA.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=HoA.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=HoA.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=HoA.SEMATTRS_DB_CASSANDRA_TABLE=HoA.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=HoA.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=HoA.SEMATTRS_DB_CASSANDRA_KEYSPACE=HoA.SEMATTRS_DB_MSSQL_INSTANCE_NAME=HoA.SEMATTRS_DB_OPERATION=HoA.SEMATTRS_DB_STATEMENT=HoA.SEMATTRS_DB_NAME=HoA.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=HoA.SEMATTRS_DB_USER=HoA.SEMATTRS_DB_CONNECTION_STRING=HoA.SEMATTRS_DB_SYSTEM=HoA.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=void 0;HoA.SEMATTRS_MESSAGING_DESTINATION_KIND=HoA.SEMATTRS_MESSAGING_DESTINATION=HoA.SEMATTRS_MESSAGING_SYSTEM=HoA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=HoA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=HoA.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=HoA.SEMATTRS_AWS_DYNAMODB_COUNT=HoA.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=HoA.SEMATTRS_AWS_DYNAMODB_SEGMENT=HoA.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=HoA.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=HoA.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=HoA.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=HoA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=HoA.SEMATTRS_AWS_DYNAMODB_SELECT=HoA.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=HoA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=HoA.SEMATTRS_AWS_DYNAMODB_LIMIT=HoA.SEMATTRS_AWS_DYNAMODB_PROJECTION=HoA.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=HoA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=HoA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=HoA.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=HoA.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=HoA.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=HoA.SEMATTRS_HTTP_CLIENT_IP=HoA.SEMATTRS_HTTP_ROUTE=HoA.SEMATTRS_HTTP_SERVER_NAME=HoA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=HoA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=HoA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=HoA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=HoA.SEMATTRS_HTTP_USER_AGENT=HoA.SEMATTRS_HTTP_FLAVOR=HoA.SEMATTRS_HTTP_STATUS_CODE=HoA.SEMATTRS_HTTP_SCHEME=HoA.SEMATTRS_HTTP_HOST=HoA.SEMATTRS_HTTP_TARGET=HoA.SEMATTRS_HTTP_URL=HoA.SEMATTRS_HTTP_METHOD=HoA.SEMATTRS_CODE_LINENO=HoA.SEMATTRS_CODE_FILEPATH=HoA.SEMATTRS_CODE_NAMESPACE=HoA.SEMATTRS_CODE_FUNCTION=HoA.SEMATTRS_THREAD_NAME=HoA.SEMATTRS_THREAD_ID=HoA.SEMATTRS_ENDUSER_SCOPE=HoA.SEMATTRS_ENDUSER_ROLE=HoA.SEMATTRS_ENDUSER_ID=HoA.SEMATTRS_PEER_SERVICE=void 0;HoA.DBSYSTEMVALUES_FILEMAKER=HoA.DBSYSTEMVALUES_DERBY=HoA.DBSYSTEMVALUES_FIREBIRD=HoA.DBSYSTEMVALUES_ADABAS=HoA.DBSYSTEMVALUES_CACHE=HoA.DBSYSTEMVALUES_EDB=HoA.DBSYSTEMVALUES_FIRSTSQL=HoA.DBSYSTEMVALUES_INGRES=HoA.DBSYSTEMVALUES_HANADB=HoA.DBSYSTEMVALUES_MAXDB=HoA.DBSYSTEMVALUES_PROGRESS=HoA.DBSYSTEMVALUES_HSQLDB=HoA.DBSYSTEMVALUES_CLOUDSCAPE=HoA.DBSYSTEMVALUES_HIVE=HoA.DBSYSTEMVALUES_REDSHIFT=HoA.DBSYSTEMVALUES_POSTGRESQL=HoA.DBSYSTEMVALUES_DB2=HoA.DBSYSTEMVALUES_ORACLE=HoA.DBSYSTEMVALUES_MYSQL=HoA.DBSYSTEMVALUES_MSSQL=HoA.DBSYSTEMVALUES_OTHER_SQL=HoA.SemanticAttributes=HoA.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=HoA.SEMATTRS_MESSAGE_COMPRESSED_SIZE=HoA.SEMATTRS_MESSAGE_ID=HoA.SEMATTRS_MESSAGE_TYPE=HoA.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=HoA.SEMATTRS_RPC_JSONRPC_ERROR_CODE=HoA.SEMATTRS_RPC_JSONRPC_REQUEST_ID=HoA.SEMATTRS_RPC_JSONRPC_VERSION=HoA.SEMATTRS_RPC_GRPC_STATUS_CODE=HoA.SEMATTRS_RPC_METHOD=HoA.SEMATTRS_RPC_SERVICE=HoA.SEMATTRS_RPC_SYSTEM=HoA.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=HoA.SEMATTRS_MESSAGING_KAFKA_PARTITION=HoA.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=HoA.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=HoA.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=HoA.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=HoA.SEMATTRS_MESSAGING_CONSUMER_ID=HoA.SEMATTRS_MESSAGING_OPERATION=HoA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=HoA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=HoA.SEMATTRS_MESSAGING_CONVERSATION_ID=HoA.SEMATTRS_MESSAGING_MESSAGE_ID=HoA.SEMATTRS_MESSAGING_URL=HoA.SEMATTRS_MESSAGING_PROTOCOL_VERSION=HoA.SEMATTRS_MESSAGING_PROTOCOL=HoA.SEMATTRS_MESSAGING_TEMP_DESTINATION=void 0;HoA.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=HoA.FaasDocumentOperationValues=HoA.FAASDOCUMENTOPERATIONVALUES_DELETE=HoA.FAASDOCUMENTOPERATIONVALUES_EDIT=HoA.FAASDOCUMENTOPERATIONVALUES_INSERT=HoA.FaasTriggerValues=HoA.FAASTRIGGERVALUES_OTHER=HoA.FAASTRIGGERVALUES_TIMER=HoA.FAASTRIGGERVALUES_PUBSUB=HoA.FAASTRIGGERVALUES_HTTP=HoA.FAASTRIGGERVALUES_DATASOURCE=HoA.DbCassandraConsistencyLevelValues=HoA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=HoA.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=HoA.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=HoA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=HoA.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=HoA.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=HoA.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=HoA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=HoA.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=HoA.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=HoA.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=HoA.DbSystemValues=HoA.DBSYSTEMVALUES_COCKROACHDB=HoA.DBSYSTEMVALUES_MEMCACHED=HoA.DBSYSTEMVALUES_ELASTICSEARCH=HoA.DBSYSTEMVALUES_GEODE=HoA.DBSYSTEMVALUES_NEO4J=HoA.DBSYSTEMVALUES_DYNAMODB=HoA.DBSYSTEMVALUES_COSMOSDB=HoA.DBSYSTEMVALUES_COUCHDB=HoA.DBSYSTEMVALUES_COUCHBASE=HoA.DBSYSTEMVALUES_REDIS=HoA.DBSYSTEMVALUES_MONGODB=HoA.DBSYSTEMVALUES_HBASE=HoA.DBSYSTEMVALUES_CASSANDRA=HoA.DBSYSTEMVALUES_COLDFUSION=HoA.DBSYSTEMVALUES_H2=HoA.DBSYSTEMVALUES_VERTICA=HoA.DBSYSTEMVALUES_TERADATA=HoA.DBSYSTEMVALUES_SYBASE=HoA.DBSYSTEMVALUES_SQLITE=HoA.DBSYSTEMVALUES_POINTBASE=HoA.DBSYSTEMVALUES_PERVASIVE=HoA.DBSYSTEMVALUES_NETEZZA=HoA.DBSYSTEMVALUES_MARIADB=HoA.DBSYSTEMVALUES_INTERBASE=HoA.DBSYSTEMVALUES_INSTANTDB=HoA.DBSYSTEMVALUES_INFORMIX=void 0;HoA.MESSAGINGOPERATIONVALUES_RECEIVE=HoA.MessagingDestinationKindValues=HoA.MESSAGINGDESTINATIONKINDVALUES_TOPIC=HoA.MESSAGINGDESTINATIONKINDVALUES_QUEUE=HoA.HttpFlavorValues=HoA.HTTPFLAVORVALUES_QUIC=HoA.HTTPFLAVORVALUES_SPDY=HoA.HTTPFLAVORVALUES_HTTP_2_0=HoA.HTTPFLAVORVALUES_HTTP_1_1=HoA.HTTPFLAVORVALUES_HTTP_1_0=HoA.NetHostConnectionSubtypeValues=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_NR=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=HoA.NetHostConnectionTypeValues=HoA.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=HoA.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=HoA.NETHOSTCONNECTIONTYPEVALUES_CELL=HoA.NETHOSTCONNECTIONTYPEVALUES_WIRED=HoA.NETHOSTCONNECTIONTYPEVALUES_WIFI=HoA.NetTransportValues=HoA.NETTRANSPORTVALUES_OTHER=HoA.NETTRANSPORTVALUES_INPROC=HoA.NETTRANSPORTVALUES_PIPE=HoA.NETTRANSPORTVALUES_UNIX=HoA.NETTRANSPORTVALUES_IP=HoA.NETTRANSPORTVALUES_IP_UDP=HoA.NETTRANSPORTVALUES_IP_TCP=HoA.FaasInvokedProviderValues=HoA.FAASINVOKEDPROVIDERVALUES_GCP=HoA.FAASINVOKEDPROVIDERVALUES_AZURE=HoA.FAASINVOKEDPROVIDERVALUES_AWS=void 0;HoA.MessageTypeValues=HoA.MESSAGETYPEVALUES_RECEIVED=HoA.MESSAGETYPEVALUES_SENT=HoA.RpcGrpcStatusCodeValues=HoA.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=HoA.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=HoA.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=HoA.RPCGRPCSTATUSCODEVALUES_INTERNAL=HoA.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=HoA.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=HoA.RPCGRPCSTATUSCODEVALUES_ABORTED=HoA.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=HoA.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=HoA.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=HoA.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=HoA.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=HoA.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=HoA.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=HoA.RPCGRPCSTATUSCODEVALUES_UNKNOWN=HoA.RPCGRPCSTATUSCODEVALUES_CANCELLED=HoA.RPCGRPCSTATUSCODEVALUES_OK=HoA.MessagingOperationValues=HoA.MESSAGINGOPERATIONVALUES_PROCESS=void 0;var p5=Yi(),PiA="aws.lambda.invoked_arn",TiA="db.system",SiA="db.connection_string",kiA="db.user",_iA="db.jdbc.driver_classname",viA="db.name",yiA="db.statement",giA="db.operation",hiA="db.mssql.instance_name",xiA="db.cassandra.keyspace",fiA="db.cassandra.page_size",biA="db.cassandra.consistency_level",miA="db.cassandra.table",uiA="db.cassandra.idempotence",diA="db.cassandra.speculative_execution_count",ciA="db.cassandra.coordinator.id",liA="db.cassandra.coordinator.dc",piA="db.hbase.namespace",iiA="db.redis.database_index",niA="db.mongodb.collection",siA="db.sql.table",riA="exception.type",aiA="exception.message",oiA="exception.stacktrace",tiA="exception.escaped",eiA="faas.trigger",AnA="faas.execution",QnA="faas.document.collection",BnA="faas.document.operation",YnA="faas.document.time",JnA="faas.document.name",CnA="faas.time",XnA="faas.cron",GnA="faas.coldstart",WnA="faas.invoked_name",FnA="faas.invoked_provider",ZnA="faas.invoked_region",$nA="net.transport",UnA="net.peer.ip",EnA="net.peer.port",KnA="net.peer.name",VnA="net.host.ip",InA="net.host.port",HnA="net.host.name",DnA="net.host.connection.type",NnA="net.host.connection.subtype",LnA="net.host.carrier.name",qnA="net.host.carrier.mcc",MnA="net.host.carrier.mnc",znA="net.host.carrier.icc",RnA="peer.service",wnA="enduser.id",jnA="enduser.role",OnA="enduser.scope",PnA="thread.id",TnA="thread.name",SnA="code.function",knA="code.namespace",_nA="code.filepath",vnA="code.lineno",ynA="http.method",gnA="http.url",hnA="http.target",xnA="http.host",fnA="http.scheme",bnA="http.status_code",mnA="http.flavor",unA="http.user_agent",dnA="http.request_content_length",cnA="http.request_content_length_uncompressed",lnA="http.response_content_length",pnA="http.response_content_length_uncompressed",inA="http.server_name",nnA="http.route",snA="http.client_ip",rnA="aws.dynamodb.table_names",anA="aws.dynamodb.consumed_capacity",onA="aws.dynamodb.item_collection_metrics",tnA="aws.dynamodb.provisioned_read_capacity",enA="aws.dynamodb.provisioned_write_capacity",AsA="aws.dynamodb.consistent_read",QsA="aws.dynamodb.projection",BsA="aws.dynamodb.limit",YsA="aws.dynamodb.attributes_to_get",JsA="aws.dynamodb.index_name",CsA="aws.dynamodb.select",XsA="aws.dynamodb.global_secondary_indexes",GsA="aws.dynamodb.local_secondary_indexes",WsA="aws.dynamodb.exclusive_start_table",FsA="aws.dynamodb.table_count",ZsA="aws.dynamodb.scan_forward",$sA="aws.dynamodb.segment",UsA="aws.dynamodb.total_segments",EsA="aws.dynamodb.count",KsA="aws.dynamodb.scanned_count",VsA="aws.dynamodb.attribute_definitions",IsA="aws.dynamodb.global_secondary_index_updates",HsA="messaging.system",DsA="messaging.destination",NsA="messaging.destination_kind",LsA="messaging.temp_destination",qsA="messaging.protocol",MsA="messaging.protocol_version",zsA="messaging.url",RsA="messaging.message_id",wsA="messaging.conversation_id",jsA="messaging.message_payload_size_bytes",OsA="messaging.message_payload_compressed_size_bytes",PsA="messaging.operation",TsA="messaging.consumer_id",SsA="messaging.rabbitmq.routing_key",ksA="messaging.kafka.message_key",_sA="messaging.kafka.consumer_group",vsA="messaging.kafka.client_id",ysA="messaging.kafka.partition",gsA="messaging.kafka.tombstone",hsA="rpc.system",xsA="rpc.service",fsA="rpc.method",bsA="rpc.grpc.status_code",msA="rpc.jsonrpc.version",usA="rpc.jsonrpc.request_id",dsA="rpc.jsonrpc.error_code",csA="rpc.jsonrpc.error_message",lsA="message.type",psA="message.id",isA="message.compressed_size",nsA="message.uncompressed_size";HoA.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=PiA;HoA.SEMATTRS_DB_SYSTEM=TiA;HoA.SEMATTRS_DB_CONNECTION_STRING=SiA;HoA.SEMATTRS_DB_USER=kiA;HoA.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=_iA;HoA.SEMATTRS_DB_NAME=viA;HoA.SEMATTRS_DB_STATEMENT=yiA;HoA.SEMATTRS_DB_OPERATION=giA;HoA.SEMATTRS_DB_MSSQL_INSTANCE_NAME=hiA;HoA.SEMATTRS_DB_CASSANDRA_KEYSPACE=xiA;HoA.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=fiA;HoA.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=biA;HoA.SEMATTRS_DB_CASSANDRA_TABLE=miA;HoA.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=uiA;HoA.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=diA;HoA.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=ciA;HoA.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=liA;HoA.SEMATTRS_DB_HBASE_NAMESPACE=piA;HoA.SEMATTRS_DB_REDIS_DATABASE_INDEX=iiA;HoA.SEMATTRS_DB_MONGODB_COLLECTION=niA;HoA.SEMATTRS_DB_SQL_TABLE=siA;HoA.SEMATTRS_EXCEPTION_TYPE=riA;HoA.SEMATTRS_EXCEPTION_MESSAGE=aiA;HoA.SEMATTRS_EXCEPTION_STACKTRACE=oiA;HoA.SEMATTRS_EXCEPTION_ESCAPED=tiA;HoA.SEMATTRS_FAAS_TRIGGER=eiA;HoA.SEMATTRS_FAAS_EXECUTION=AnA;HoA.SEMATTRS_FAAS_DOCUMENT_COLLECTION=QnA;HoA.SEMATTRS_FAAS_DOCUMENT_OPERATION=BnA;HoA.SEMATTRS_FAAS_DOCUMENT_TIME=YnA;HoA.SEMATTRS_FAAS_DOCUMENT_NAME=JnA;HoA.SEMATTRS_FAAS_TIME=CnA;HoA.SEMATTRS_FAAS_CRON=XnA;HoA.SEMATTRS_FAAS_COLDSTART=GnA;HoA.SEMATTRS_FAAS_INVOKED_NAME=WnA;HoA.SEMATTRS_FAAS_INVOKED_PROVIDER=FnA;HoA.SEMATTRS_FAAS_INVOKED_REGION=ZnA;HoA.SEMATTRS_NET_TRANSPORT=$nA;HoA.SEMATTRS_NET_PEER_IP=UnA;HoA.SEMATTRS_NET_PEER_PORT=EnA;HoA.SEMATTRS_NET_PEER_NAME=KnA;HoA.SEMATTRS_NET_HOST_IP=VnA;HoA.SEMATTRS_NET_HOST_PORT=InA;HoA.SEMATTRS_NET_HOST_NAME=HnA;HoA.SEMATTRS_NET_HOST_CONNECTION_TYPE=DnA;HoA.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=NnA;HoA.SEMATTRS_NET_HOST_CARRIER_NAME=LnA;HoA.SEMATTRS_NET_HOST_CARRIER_MCC=qnA;HoA.SEMATTRS_NET_HOST_CARRIER_MNC=MnA;HoA.SEMATTRS_NET_HOST_CARRIER_ICC=znA;HoA.SEMATTRS_PEER_SERVICE=RnA;HoA.SEMATTRS_ENDUSER_ID=wnA;HoA.SEMATTRS_ENDUSER_ROLE=jnA;HoA.SEMATTRS_ENDUSER_SCOPE=OnA;HoA.SEMATTRS_THREAD_ID=PnA;HoA.SEMATTRS_THREAD_NAME=TnA;HoA.SEMATTRS_CODE_FUNCTION=SnA;HoA.SEMATTRS_CODE_NAMESPACE=knA;HoA.SEMATTRS_CODE_FILEPATH=_nA;HoA.SEMATTRS_CODE_LINENO=vnA;HoA.SEMATTRS_HTTP_METHOD=ynA;HoA.SEMATTRS_HTTP_URL=gnA;HoA.SEMATTRS_HTTP_TARGET=hnA;HoA.SEMATTRS_HTTP_HOST=xnA;HoA.SEMATTRS_HTTP_SCHEME=fnA;HoA.SEMATTRS_HTTP_STATUS_CODE=bnA;HoA.SEMATTRS_HTTP_FLAVOR=mnA;HoA.SEMATTRS_HTTP_USER_AGENT=unA;HoA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=dnA;HoA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=cnA;HoA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=lnA;HoA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=pnA;HoA.SEMATTRS_HTTP_SERVER_NAME=inA;HoA.SEMATTRS_HTTP_ROUTE=nnA;HoA.SEMATTRS_HTTP_CLIENT_IP=snA;HoA.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=rnA;HoA.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=anA;HoA.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=onA;HoA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=tnA;HoA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=enA;HoA.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=AsA;HoA.SEMATTRS_AWS_DYNAMODB_PROJECTION=QsA;HoA.SEMATTRS_AWS_DYNAMODB_LIMIT=BsA;HoA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=YsA;HoA.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=JsA;HoA.SEMATTRS_AWS_DYNAMODB_SELECT=CsA;HoA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=XsA;HoA.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=GsA;HoA.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=WsA;HoA.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=FsA;HoA.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=ZsA;HoA.SEMATTRS_AWS_DYNAMODB_SEGMENT=$sA;HoA.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=UsA;HoA.SEMATTRS_AWS_DYNAMODB_COUNT=EsA;HoA.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=KsA;HoA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=VsA;HoA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=IsA;HoA.SEMATTRS_MESSAGING_SYSTEM=HsA;HoA.SEMATTRS_MESSAGING_DESTINATION=DsA;HoA.SEMATTRS_MESSAGING_DESTINATION_KIND=NsA;HoA.SEMATTRS_MESSAGING_TEMP_DESTINATION=LsA;HoA.SEMATTRS_MESSAGING_PROTOCOL=qsA;HoA.SEMATTRS_MESSAGING_PROTOCOL_VERSION=MsA;HoA.SEMATTRS_MESSAGING_URL=zsA;HoA.SEMATTRS_MESSAGING_MESSAGE_ID=RsA;HoA.SEMATTRS_MESSAGING_CONVERSATION_ID=wsA;HoA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=jsA;HoA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=OsA;HoA.SEMATTRS_MESSAGING_OPERATION=PsA;HoA.SEMATTRS_MESSAGING_CONSUMER_ID=TsA;HoA.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=SsA;HoA.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=ksA;HoA.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=_sA;HoA.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=vsA;HoA.SEMATTRS_MESSAGING_KAFKA_PARTITION=ysA;HoA.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=gsA;HoA.SEMATTRS_RPC_SYSTEM=hsA;HoA.SEMATTRS_RPC_SERVICE=xsA;HoA.SEMATTRS_RPC_METHOD=fsA;HoA.SEMATTRS_RPC_GRPC_STATUS_CODE=bsA;HoA.SEMATTRS_RPC_JSONRPC_VERSION=msA;HoA.SEMATTRS_RPC_JSONRPC_REQUEST_ID=usA;HoA.SEMATTRS_RPC_JSONRPC_ERROR_CODE=dsA;HoA.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=csA;HoA.SEMATTRS_MESSAGE_TYPE=lsA;HoA.SEMATTRS_MESSAGE_ID=psA;HoA.SEMATTRS_MESSAGE_COMPRESSED_SIZE=isA;HoA.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=nsA;HoA.SemanticAttributes=(0,p5.createConstMap)([PiA,TiA,SiA,kiA,_iA,viA,yiA,giA,hiA,xiA,fiA,biA,miA,uiA,diA,ciA,liA,piA,iiA,niA,siA,riA,aiA,oiA,tiA,eiA,AnA,QnA,BnA,YnA,JnA,CnA,XnA,GnA,WnA,FnA,ZnA,$nA,UnA,EnA,KnA,VnA,InA,HnA,DnA,NnA,LnA,qnA,MnA,znA,RnA,wnA,jnA,OnA,PnA,TnA,SnA,knA,_nA,vnA,ynA,gnA,hnA,xnA,fnA,bnA,mnA,unA,dnA,cnA,lnA,pnA,inA,nnA,snA,rnA,anA,onA,tnA,enA,AsA,QsA,BsA,YsA,JsA,CsA,XsA,GsA,WsA,FsA,ZsA,$sA,UsA,EsA,KsA,VsA,IsA,HsA,DsA,NsA,LsA,qsA,MsA,zsA,RsA,wsA,jsA,OsA,PsA,TsA,SsA,ksA,_sA,vsA,ysA,gsA,hsA,xsA,fsA,bsA,msA,usA,dsA,csA,lsA,psA,isA,nsA]);var ssA="other_sql",rsA="mssql",asA="mysql",osA="oracle",tsA="db2",esA="postgresql",ArA="redshift",QrA="hive",BrA="cloudscape",YrA="hsqldb",JrA="progress",CrA="maxdb",XrA="hanadb",GrA="ingres",WrA="firstsql",FrA="edb",ZrA="cache",$rA="adabas",UrA="firebird",ErA="derby",KrA="filemaker",VrA="informix",IrA="instantdb",HrA="interbase",DrA="mariadb",NrA="netezza",LrA="pervasive",qrA="pointbase",MrA="sqlite",zrA="sybase",RrA="teradata",wrA="vertica",jrA="h2",OrA="coldfusion",PrA="cassandra",TrA="hbase",SrA="mongodb",krA="redis",_rA="couchbase",vrA="couchdb",yrA="cosmosdb",grA="dynamodb",hrA="neo4j",xrA="geode",frA="elasticsearch",brA="memcached",mrA="cockroachdb";HoA.DBSYSTEMVALUES_OTHER_SQL=ssA;HoA.DBSYSTEMVALUES_MSSQL=rsA;HoA.DBSYSTEMVALUES_MYSQL=asA;HoA.DBSYSTEMVALUES_ORACLE=osA;HoA.DBSYSTEMVALUES_DB2=tsA;HoA.DBSYSTEMVALUES_POSTGRESQL=esA;HoA.DBSYSTEMVALUES_REDSHIFT=ArA;HoA.DBSYSTEMVALUES_HIVE=QrA;HoA.DBSYSTEMVALUES_CLOUDSCAPE=BrA;HoA.DBSYSTEMVALUES_HSQLDB=YrA;HoA.DBSYSTEMVALUES_PROGRESS=JrA;HoA.DBSYSTEMVALUES_MAXDB=CrA;HoA.DBSYSTEMVALUES_HANADB=XrA;HoA.DBSYSTEMVALUES_INGRES=GrA;HoA.DBSYSTEMVALUES_FIRSTSQL=WrA;HoA.DBSYSTEMVALUES_EDB=FrA;HoA.DBSYSTEMVALUES_CACHE=ZrA;HoA.DBSYSTEMVALUES_ADABAS=$rA;HoA.DBSYSTEMVALUES_FIREBIRD=UrA;HoA.DBSYSTEMVALUES_DERBY=ErA;HoA.DBSYSTEMVALUES_FILEMAKER=KrA;HoA.DBSYSTEMVALUES_INFORMIX=VrA;HoA.DBSYSTEMVALUES_INSTANTDB=IrA;HoA.DBSYSTEMVALUES_INTERBASE=HrA;HoA.DBSYSTEMVALUES_MARIADB=DrA;HoA.DBSYSTEMVALUES_NETEZZA=NrA;HoA.DBSYSTEMVALUES_PERVASIVE=LrA;HoA.DBSYSTEMVALUES_POINTBASE=qrA;HoA.DBSYSTEMVALUES_SQLITE=MrA;HoA.DBSYSTEMVALUES_SYBASE=zrA;HoA.DBSYSTEMVALUES_TERADATA=RrA;HoA.DBSYSTEMVALUES_VERTICA=wrA;HoA.DBSYSTEMVALUES_H2=jrA;HoA.DBSYSTEMVALUES_COLDFUSION=OrA;HoA.DBSYSTEMVALUES_CASSANDRA=PrA;HoA.DBSYSTEMVALUES_HBASE=TrA;HoA.DBSYSTEMVALUES_MONGODB=SrA;HoA.DBSYSTEMVALUES_REDIS=krA;HoA.DBSYSTEMVALUES_COUCHBASE=_rA;HoA.DBSYSTEMVALUES_COUCHDB=vrA;HoA.DBSYSTEMVALUES_COSMOSDB=yrA;HoA.DBSYSTEMVALUES_DYNAMODB=grA;HoA.DBSYSTEMVALUES_NEO4J=hrA;HoA.DBSYSTEMVALUES_GEODE=xrA;HoA.DBSYSTEMVALUES_ELASTICSEARCH=frA;HoA.DBSYSTEMVALUES_MEMCACHED=brA;HoA.DBSYSTEMVALUES_COCKROACHDB=mrA;HoA.DbSystemValues=(0,p5.createConstMap)([ssA,rsA,asA,osA,tsA,esA,ArA,QrA,BrA,YrA,JrA,CrA,XrA,GrA,WrA,FrA,ZrA,$rA,UrA,ErA,KrA,VrA,IrA,HrA,DrA,NrA,LrA,qrA,MrA,zrA,RrA,wrA,jrA,OrA,PrA,TrA,SrA,krA,_rA,vrA,yrA,grA,hrA,xrA,frA,brA,mrA]);var urA="all",drA="each_quorum",crA="quorum",lrA="local_quorum",prA="one",irA="two",nrA="three",srA="local_one",rrA="any",arA="serial",orA="local_serial";HoA.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=urA;HoA.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=drA;HoA.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=crA;HoA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=lrA;HoA.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=prA;HoA.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=irA;HoA.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=nrA;HoA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=srA;HoA.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=rrA;HoA.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=arA;HoA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=orA;HoA.DbCassandraConsistencyLevelValues=(0,p5.createConstMap)([urA,drA,crA,lrA,prA,irA,nrA,srA,rrA,arA,orA]);var trA="datasource",erA="http",AaA="pubsub",QaA="timer",BaA="other";HoA.FAASTRIGGERVALUES_DATASOURCE=trA;HoA.FAASTRIGGERVALUES_HTTP=erA;HoA.FAASTRIGGERVALUES_PUBSUB=AaA;HoA.FAASTRIGGERVALUES_TIMER=QaA;HoA.FAASTRIGGERVALUES_OTHER=BaA;HoA.FaasTriggerValues=(0,p5.createConstMap)([trA,erA,AaA,QaA,BaA]);var YaA="insert",JaA="edit",CaA="delete";HoA.FAASDOCUMENTOPERATIONVALUES_INSERT=YaA;HoA.FAASDOCUMENTOPERATIONVALUES_EDIT=JaA;HoA.FAASDOCUMENTOPERATIONVALUES_DELETE=CaA;HoA.FaasDocumentOperationValues=(0,p5.createConstMap)([YaA,JaA,CaA]);var XaA="alibaba_cloud",GaA="aws",WaA="azure",FaA="gcp";HoA.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=XaA;HoA.FAASINVOKEDPROVIDERVALUES_AWS=GaA;HoA.FAASINVOKEDPROVIDERVALUES_AZURE=WaA;HoA.FAASINVOKEDPROVIDERVALUES_GCP=FaA;HoA.FaasInvokedProviderValues=(0,p5.createConstMap)([XaA,GaA,WaA,FaA]);var ZaA="ip_tcp",$aA="ip_udp",UaA="ip",EaA="unix",KaA="pipe",VaA="inproc",IaA="other";HoA.NETTRANSPORTVALUES_IP_TCP=ZaA;HoA.NETTRANSPORTVALUES_IP_UDP=$aA;HoA.NETTRANSPORTVALUES_IP=UaA;HoA.NETTRANSPORTVALUES_UNIX=EaA;HoA.NETTRANSPORTVALUES_PIPE=KaA;HoA.NETTRANSPORTVALUES_INPROC=VaA;HoA.NETTRANSPORTVALUES_OTHER=IaA;HoA.NetTransportValues=(0,p5.createConstMap)([ZaA,$aA,UaA,EaA,KaA,VaA,IaA]);var HaA="wifi",DaA="wired",NaA="cell",LaA="unavailable",qaA="unknown";HoA.NETHOSTCONNECTIONTYPEVALUES_WIFI=HaA;HoA.NETHOSTCONNECTIONTYPEVALUES_WIRED=DaA;HoA.NETHOSTCONNECTIONTYPEVALUES_CELL=NaA;HoA.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=LaA;HoA.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=qaA;HoA.NetHostConnectionTypeValues=(0,p5.createConstMap)([HaA,DaA,NaA,LaA,qaA]);var MaA="gprs",zaA="edge",RaA="umts",waA="cdma",jaA="evdo_0",OaA="evdo_a",PaA="cdma2000_1xrtt",TaA="hsdpa",SaA="hsupa",kaA="hspa",_aA="iden",vaA="evdo_b",yaA="lte",gaA="ehrpd",haA="hspap",xaA="gsm",faA="td_scdma",baA="iwlan",maA="nr",uaA="nrnsa",daA="lte_ca";HoA.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=MaA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=zaA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=RaA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=waA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=jaA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=OaA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=PaA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=TaA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=SaA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=kaA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=_aA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=vaA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=yaA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=gaA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=haA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=xaA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=faA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=baA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_NR=maA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=uaA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=daA;HoA.NetHostConnectionSubtypeValues=(0,p5.createConstMap)([MaA,zaA,RaA,waA,jaA,OaA,PaA,TaA,SaA,kaA,_aA,vaA,yaA,gaA,haA,xaA,faA,baA,maA,uaA,daA]);var caA="1.0",laA="1.1",paA="2.0",iaA="SPDY",naA="QUIC";HoA.HTTPFLAVORVALUES_HTTP_1_0=caA;HoA.HTTPFLAVORVALUES_HTTP_1_1=laA;HoA.HTTPFLAVORVALUES_HTTP_2_0=paA;HoA.HTTPFLAVORVALUES_SPDY=iaA;HoA.HTTPFLAVORVALUES_QUIC=naA;HoA.HttpFlavorValues={HTTP_1_0:caA,HTTP_1_1:laA,HTTP_2_0:paA,SPDY:iaA,QUIC:naA};var saA="queue",raA="topic";HoA.MESSAGINGDESTINATIONKINDVALUES_QUEUE=saA;HoA.MESSAGINGDESTINATIONKINDVALUES_TOPIC=raA;HoA.MessagingDestinationKindValues=(0,p5.createConstMap)([saA,raA]);var aaA="receive",oaA="process";HoA.MESSAGINGOPERATIONVALUES_RECEIVE=aaA;HoA.MESSAGINGOPERATIONVALUES_PROCESS=oaA;HoA.MessagingOperationValues=(0,p5.createConstMap)([aaA,oaA]);var taA=0,eaA=1,AoA=2,QoA=3,BoA=4,YoA=5,JoA=6,CoA=7,XoA=8,GoA=9,WoA=10,FoA=11,ZoA=12,$oA=13,UoA=14,EoA=15,KoA=16;HoA.RPCGRPCSTATUSCODEVALUES_OK=taA;HoA.RPCGRPCSTATUSCODEVALUES_CANCELLED=eaA;HoA.RPCGRPCSTATUSCODEVALUES_UNKNOWN=AoA;HoA.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=QoA;HoA.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=BoA;HoA.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=YoA;HoA.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=JoA;HoA.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=CoA;HoA.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=XoA;HoA.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=GoA;HoA.RPCGRPCSTATUSCODEVALUES_ABORTED=WoA;HoA.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=FoA;HoA.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=ZoA;HoA.RPCGRPCSTATUSCODEVALUES_INTERNAL=$oA;HoA.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=UoA;HoA.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=EoA;HoA.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=KoA;HoA.RpcGrpcStatusCodeValues={OK:taA,CANCELLED:eaA,UNKNOWN:AoA,INVALID_ARGUMENT:QoA,DEADLINE_EXCEEDED:BoA,NOT_FOUND:YoA,ALREADY_EXISTS:JoA,PERMISSION_DENIED:CoA,RESOURCE_EXHAUSTED:XoA,FAILED_PRECONDITION:GoA,ABORTED:WoA,OUT_OF_RANGE:FoA,UNIMPLEMENTED:ZoA,INTERNAL:$oA,UNAVAILABLE:UoA,DATA_LOSS:EoA,UNAUTHENTICATED:KoA};var VoA="SENT",IoA="RECEIVED";HoA.MESSAGETYPEVALUES_SENT=VoA;HoA.MESSAGETYPEVALUES_RECEIVED=IoA;HoA.MessageTypeValues=(0,p5.createConstMap)([VoA,IoA])});var woA=R(($$)=>{var eaB=$$&&$$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;var J=Object.getOwnPropertyDescriptor(Q,B);if(!J||("get"in J?!Q.__esModule:J.writable||J.configurable))J={enumerable:!0,get:function(){return Q[B]}};Object.defineProperty(A,Y,J)}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),AoB=$$&&$$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))eaB(Q,A,B)};Object.defineProperty($$,"__esModule",{value:!0});AoB(RoA(),$$)});var AAQ=R((aeA)=>{Object.defineProperty(aeA,"__esModule",{value:!0});aeA.SEMRESATTRS_K8S_STATEFULSET_NAME=aeA.SEMRESATTRS_K8S_STATEFULSET_UID=aeA.SEMRESATTRS_K8S_DEPLOYMENT_NAME=aeA.SEMRESATTRS_K8S_DEPLOYMENT_UID=aeA.SEMRESATTRS_K8S_REPLICASET_NAME=aeA.SEMRESATTRS_K8S_REPLICASET_UID=aeA.SEMRESATTRS_K8S_CONTAINER_NAME=aeA.SEMRESATTRS_K8S_POD_NAME=aeA.SEMRESATTRS_K8S_POD_UID=aeA.SEMRESATTRS_K8S_NAMESPACE_NAME=aeA.SEMRESATTRS_K8S_NODE_UID=aeA.SEMRESATTRS_K8S_NODE_NAME=aeA.SEMRESATTRS_K8S_CLUSTER_NAME=aeA.SEMRESATTRS_HOST_IMAGE_VERSION=aeA.SEMRESATTRS_HOST_IMAGE_ID=aeA.SEMRESATTRS_HOST_IMAGE_NAME=aeA.SEMRESATTRS_HOST_ARCH=aeA.SEMRESATTRS_HOST_TYPE=aeA.SEMRESATTRS_HOST_NAME=aeA.SEMRESATTRS_HOST_ID=aeA.SEMRESATTRS_FAAS_MAX_MEMORY=aeA.SEMRESATTRS_FAAS_INSTANCE=aeA.SEMRESATTRS_FAAS_VERSION=aeA.SEMRESATTRS_FAAS_ID=aeA.SEMRESATTRS_FAAS_NAME=aeA.SEMRESATTRS_DEVICE_MODEL_NAME=aeA.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=aeA.SEMRESATTRS_DEVICE_ID=aeA.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=aeA.SEMRESATTRS_CONTAINER_IMAGE_TAG=aeA.SEMRESATTRS_CONTAINER_IMAGE_NAME=aeA.SEMRESATTRS_CONTAINER_RUNTIME=aeA.SEMRESATTRS_CONTAINER_ID=aeA.SEMRESATTRS_CONTAINER_NAME=aeA.SEMRESATTRS_AWS_LOG_STREAM_ARNS=aeA.SEMRESATTRS_AWS_LOG_STREAM_NAMES=aeA.SEMRESATTRS_AWS_LOG_GROUP_ARNS=aeA.SEMRESATTRS_AWS_LOG_GROUP_NAMES=aeA.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=aeA.SEMRESATTRS_AWS_ECS_TASK_REVISION=aeA.SEMRESATTRS_AWS_ECS_TASK_FAMILY=aeA.SEMRESATTRS_AWS_ECS_TASK_ARN=aeA.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=aeA.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=aeA.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=aeA.SEMRESATTRS_CLOUD_PLATFORM=aeA.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=aeA.SEMRESATTRS_CLOUD_REGION=aeA.SEMRESATTRS_CLOUD_ACCOUNT_ID=aeA.SEMRESATTRS_CLOUD_PROVIDER=void 0;aeA.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=aeA.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=aeA.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=aeA.CLOUDPLATFORMVALUES_AZURE_AKS=aeA.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=aeA.CLOUDPLATFORMVALUES_AZURE_VM=aeA.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=aeA.CLOUDPLATFORMVALUES_AWS_LAMBDA=aeA.CLOUDPLATFORMVALUES_AWS_EKS=aeA.CLOUDPLATFORMVALUES_AWS_ECS=aeA.CLOUDPLATFORMVALUES_AWS_EC2=aeA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=aeA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=aeA.CloudProviderValues=aeA.CLOUDPROVIDERVALUES_GCP=aeA.CLOUDPROVIDERVALUES_AZURE=aeA.CLOUDPROVIDERVALUES_AWS=aeA.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=aeA.SemanticResourceAttributes=aeA.SEMRESATTRS_WEBENGINE_DESCRIPTION=aeA.SEMRESATTRS_WEBENGINE_VERSION=aeA.SEMRESATTRS_WEBENGINE_NAME=aeA.SEMRESATTRS_TELEMETRY_AUTO_VERSION=aeA.SEMRESATTRS_TELEMETRY_SDK_VERSION=aeA.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=aeA.SEMRESATTRS_TELEMETRY_SDK_NAME=aeA.SEMRESATTRS_SERVICE_VERSION=aeA.SEMRESATTRS_SERVICE_INSTANCE_ID=aeA.SEMRESATTRS_SERVICE_NAMESPACE=aeA.SEMRESATTRS_SERVICE_NAME=aeA.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=aeA.SEMRESATTRS_PROCESS_RUNTIME_VERSION=aeA.SEMRESATTRS_PROCESS_RUNTIME_NAME=aeA.SEMRESATTRS_PROCESS_OWNER=aeA.SEMRESATTRS_PROCESS_COMMAND_ARGS=aeA.SEMRESATTRS_PROCESS_COMMAND_LINE=aeA.SEMRESATTRS_PROCESS_COMMAND=aeA.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=aeA.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=aeA.SEMRESATTRS_PROCESS_PID=aeA.SEMRESATTRS_OS_VERSION=aeA.SEMRESATTRS_OS_NAME=aeA.SEMRESATTRS_OS_DESCRIPTION=aeA.SEMRESATTRS_OS_TYPE=aeA.SEMRESATTRS_K8S_CRONJOB_NAME=aeA.SEMRESATTRS_K8S_CRONJOB_UID=aeA.SEMRESATTRS_K8S_JOB_NAME=aeA.SEMRESATTRS_K8S_JOB_UID=aeA.SEMRESATTRS_K8S_DAEMONSET_NAME=aeA.SEMRESATTRS_K8S_DAEMONSET_UID=void 0;aeA.TelemetrySdkLanguageValues=aeA.TELEMETRYSDKLANGUAGEVALUES_WEBJS=aeA.TELEMETRYSDKLANGUAGEVALUES_RUBY=aeA.TELEMETRYSDKLANGUAGEVALUES_PYTHON=aeA.TELEMETRYSDKLANGUAGEVALUES_PHP=aeA.TELEMETRYSDKLANGUAGEVALUES_NODEJS=aeA.TELEMETRYSDKLANGUAGEVALUES_JAVA=aeA.TELEMETRYSDKLANGUAGEVALUES_GO=aeA.TELEMETRYSDKLANGUAGEVALUES_ERLANG=aeA.TELEMETRYSDKLANGUAGEVALUES_DOTNET=aeA.TELEMETRYSDKLANGUAGEVALUES_CPP=aeA.OsTypeValues=aeA.OSTYPEVALUES_Z_OS=aeA.OSTYPEVALUES_SOLARIS=aeA.OSTYPEVALUES_AIX=aeA.OSTYPEVALUES_HPUX=aeA.OSTYPEVALUES_DRAGONFLYBSD=aeA.OSTYPEVALUES_OPENBSD=aeA.OSTYPEVALUES_NETBSD=aeA.OSTYPEVALUES_FREEBSD=aeA.OSTYPEVALUES_DARWIN=aeA.OSTYPEVALUES_LINUX=aeA.OSTYPEVALUES_WINDOWS=aeA.HostArchValues=aeA.HOSTARCHVALUES_X86=aeA.HOSTARCHVALUES_PPC64=aeA.HOSTARCHVALUES_PPC32=aeA.HOSTARCHVALUES_IA64=aeA.HOSTARCHVALUES_ARM64=aeA.HOSTARCHVALUES_ARM32=aeA.HOSTARCHVALUES_AMD64=aeA.AwsEcsLaunchtypeValues=aeA.AWSECSLAUNCHTYPEVALUES_FARGATE=aeA.AWSECSLAUNCHTYPEVALUES_EC2=aeA.CloudPlatformValues=aeA.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=aeA.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=aeA.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=aeA.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=void 0;var U$=Yi(),joA="cloud.provider",OoA="cloud.account.id",PoA="cloud.region",ToA="cloud.availability_zone",SoA="cloud.platform",koA="aws.ecs.container.arn",_oA="aws.ecs.cluster.arn",voA="aws.ecs.launchtype",yoA="aws.ecs.task.arn",goA="aws.ecs.task.family",hoA="aws.ecs.task.revision",xoA="aws.eks.cluster.arn",foA="aws.log.group.names",boA="aws.log.group.arns",moA="aws.log.stream.names",uoA="aws.log.stream.arns",doA="container.name",coA="container.id",loA="container.runtime",poA="container.image.name",ioA="container.image.tag",noA="deployment.environment",soA="device.id",roA="device.model.identifier",aoA="device.model.name",ooA="faas.name",toA="faas.id",eoA="faas.version",AtA="faas.instance",QtA="faas.max_memory",BtA="host.id",YtA="host.name",JtA="host.type",CtA="host.arch",XtA="host.image.name",GtA="host.image.id",WtA="host.image.version",FtA="k8s.cluster.name",ZtA="k8s.node.name",$tA="k8s.node.uid",UtA="k8s.namespace.name",EtA="k8s.pod.uid",KtA="k8s.pod.name",VtA="k8s.container.name",ItA="k8s.replicaset.uid",HtA="k8s.replicaset.name",DtA="k8s.deployment.uid",NtA="k8s.deployment.name",LtA="k8s.statefulset.uid",qtA="k8s.statefulset.name",MtA="k8s.daemonset.uid",ztA="k8s.daemonset.name",RtA="k8s.job.uid",wtA="k8s.job.name",jtA="k8s.cronjob.uid",OtA="k8s.cronjob.name",PtA="os.type",TtA="os.description",StA="os.name",ktA="os.version",_tA="process.pid",vtA="process.executable.name",ytA="process.executable.path",gtA="process.command",htA="process.command_line",xtA="process.command_args",ftA="process.owner",btA="process.runtime.name",mtA="process.runtime.version",utA="process.runtime.description",dtA="service.name",ctA="service.namespace",ltA="service.instance.id",ptA="service.version",itA="telemetry.sdk.name",ntA="telemetry.sdk.language",stA="telemetry.sdk.version",rtA="telemetry.auto.version",atA="webengine.name",otA="webengine.version",ttA="webengine.description";aeA.SEMRESATTRS_CLOUD_PROVIDER=joA;aeA.SEMRESATTRS_CLOUD_ACCOUNT_ID=OoA;aeA.SEMRESATTRS_CLOUD_REGION=PoA;aeA.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=ToA;aeA.SEMRESATTRS_CLOUD_PLATFORM=SoA;aeA.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=koA;aeA.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=_oA;aeA.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=voA;aeA.SEMRESATTRS_AWS_ECS_TASK_ARN=yoA;aeA.SEMRESATTRS_AWS_ECS_TASK_FAMILY=goA;aeA.SEMRESATTRS_AWS_ECS_TASK_REVISION=hoA;aeA.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=xoA;aeA.SEMRESATTRS_AWS_LOG_GROUP_NAMES=foA;aeA.SEMRESATTRS_AWS_LOG_GROUP_ARNS=boA;aeA.SEMRESATTRS_AWS_LOG_STREAM_NAMES=moA;aeA.SEMRESATTRS_AWS_LOG_STREAM_ARNS=uoA;aeA.SEMRESATTRS_CONTAINER_NAME=doA;aeA.SEMRESATTRS_CONTAINER_ID=coA;aeA.SEMRESATTRS_CONTAINER_RUNTIME=loA;aeA.SEMRESATTRS_CONTAINER_IMAGE_NAME=poA;aeA.SEMRESATTRS_CONTAINER_IMAGE_TAG=ioA;aeA.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=noA;aeA.SEMRESATTRS_DEVICE_ID=soA;aeA.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=roA;aeA.SEMRESATTRS_DEVICE_MODEL_NAME=aoA;aeA.SEMRESATTRS_FAAS_NAME=ooA;aeA.SEMRESATTRS_FAAS_ID=toA;aeA.SEMRESATTRS_FAAS_VERSION=eoA;aeA.SEMRESATTRS_FAAS_INSTANCE=AtA;aeA.SEMRESATTRS_FAAS_MAX_MEMORY=QtA;aeA.SEMRESATTRS_HOST_ID=BtA;aeA.SEMRESATTRS_HOST_NAME=YtA;aeA.SEMRESATTRS_HOST_TYPE=JtA;aeA.SEMRESATTRS_HOST_ARCH=CtA;aeA.SEMRESATTRS_HOST_IMAGE_NAME=XtA;aeA.SEMRESATTRS_HOST_IMAGE_ID=GtA;aeA.SEMRESATTRS_HOST_IMAGE_VERSION=WtA;aeA.SEMRESATTRS_K8S_CLUSTER_NAME=FtA;aeA.SEMRESATTRS_K8S_NODE_NAME=ZtA;aeA.SEMRESATTRS_K8S_NODE_UID=$tA;aeA.SEMRESATTRS_K8S_NAMESPACE_NAME=UtA;aeA.SEMRESATTRS_K8S_POD_UID=EtA;aeA.SEMRESATTRS_K8S_POD_NAME=KtA;aeA.SEMRESATTRS_K8S_CONTAINER_NAME=VtA;aeA.SEMRESATTRS_K8S_REPLICASET_UID=ItA;aeA.SEMRESATTRS_K8S_REPLICASET_NAME=HtA;aeA.SEMRESATTRS_K8S_DEPLOYMENT_UID=DtA;aeA.SEMRESATTRS_K8S_DEPLOYMENT_NAME=NtA;aeA.SEMRESATTRS_K8S_STATEFULSET_UID=LtA;aeA.SEMRESATTRS_K8S_STATEFULSET_NAME=qtA;aeA.SEMRESATTRS_K8S_DAEMONSET_UID=MtA;aeA.SEMRESATTRS_K8S_DAEMONSET_NAME=ztA;aeA.SEMRESATTRS_K8S_JOB_UID=RtA;aeA.SEMRESATTRS_K8S_JOB_NAME=wtA;aeA.SEMRESATTRS_K8S_CRONJOB_UID=jtA;aeA.SEMRESATTRS_K8S_CRONJOB_NAME=OtA;aeA.SEMRESATTRS_OS_TYPE=PtA;aeA.SEMRESATTRS_OS_DESCRIPTION=TtA;aeA.SEMRESATTRS_OS_NAME=StA;aeA.SEMRESATTRS_OS_VERSION=ktA;aeA.SEMRESATTRS_PROCESS_PID=_tA;aeA.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=vtA;aeA.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=ytA;aeA.SEMRESATTRS_PROCESS_COMMAND=gtA;aeA.SEMRESATTRS_PROCESS_COMMAND_LINE=htA;aeA.SEMRESATTRS_PROCESS_COMMAND_ARGS=xtA;aeA.SEMRESATTRS_PROCESS_OWNER=ftA;aeA.SEMRESATTRS_PROCESS_RUNTIME_NAME=btA;aeA.SEMRESATTRS_PROCESS_RUNTIME_VERSION=mtA;aeA.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=utA;aeA.SEMRESATTRS_SERVICE_NAME=dtA;aeA.SEMRESATTRS_SERVICE_NAMESPACE=ctA;aeA.SEMRESATTRS_SERVICE_INSTANCE_ID=ltA;aeA.SEMRESATTRS_SERVICE_VERSION=ptA;aeA.SEMRESATTRS_TELEMETRY_SDK_NAME=itA;aeA.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=ntA;aeA.SEMRESATTRS_TELEMETRY_SDK_VERSION=stA;aeA.SEMRESATTRS_TELEMETRY_AUTO_VERSION=rtA;aeA.SEMRESATTRS_WEBENGINE_NAME=atA;aeA.SEMRESATTRS_WEBENGINE_VERSION=otA;aeA.SEMRESATTRS_WEBENGINE_DESCRIPTION=ttA;aeA.SemanticResourceAttributes=(0,U$.createConstMap)([joA,OoA,PoA,ToA,SoA,koA,_oA,voA,yoA,goA,hoA,xoA,foA,boA,moA,uoA,doA,coA,loA,poA,ioA,noA,soA,roA,aoA,ooA,toA,eoA,AtA,QtA,BtA,YtA,JtA,CtA,XtA,GtA,WtA,FtA,ZtA,$tA,UtA,EtA,KtA,VtA,ItA,HtA,DtA,NtA,LtA,qtA,MtA,ztA,RtA,wtA,jtA,OtA,PtA,TtA,StA,ktA,_tA,vtA,ytA,gtA,htA,xtA,ftA,btA,mtA,utA,dtA,ctA,ltA,ptA,itA,ntA,stA,rtA,atA,otA,ttA]);var etA="alibaba_cloud",AeA="aws",QeA="azure",BeA="gcp";aeA.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=etA;aeA.CLOUDPROVIDERVALUES_AWS=AeA;aeA.CLOUDPROVIDERVALUES_AZURE=QeA;aeA.CLOUDPROVIDERVALUES_GCP=BeA;aeA.CloudProviderValues=(0,U$.createConstMap)([etA,AeA,QeA,BeA]);var YeA="alibaba_cloud_ecs",JeA="alibaba_cloud_fc",CeA="aws_ec2",XeA="aws_ecs",GeA="aws_eks",WeA="aws_lambda",FeA="aws_elastic_beanstalk",ZeA="azure_vm",$eA="azure_container_instances",UeA="azure_aks",EeA="azure_functions",KeA="azure_app_service",VeA="gcp_compute_engine",IeA="gcp_cloud_run",HeA="gcp_kubernetes_engine",DeA="gcp_cloud_functions",NeA="gcp_app_engine";aeA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=YeA;aeA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=JeA;aeA.CLOUDPLATFORMVALUES_AWS_EC2=CeA;aeA.CLOUDPLATFORMVALUES_AWS_ECS=XeA;aeA.CLOUDPLATFORMVALUES_AWS_EKS=GeA;aeA.CLOUDPLATFORMVALUES_AWS_LAMBDA=WeA;aeA.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=FeA;aeA.CLOUDPLATFORMVALUES_AZURE_VM=ZeA;aeA.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=$eA;aeA.CLOUDPLATFORMVALUES_AZURE_AKS=UeA;aeA.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=EeA;aeA.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=KeA;aeA.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=VeA;aeA.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=IeA;aeA.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=HeA;aeA.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=DeA;aeA.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=NeA;aeA.CloudPlatformValues=(0,U$.createConstMap)([YeA,JeA,CeA,XeA,GeA,WeA,FeA,ZeA,$eA,UeA,EeA,KeA,VeA,IeA,HeA,DeA,NeA]);var LeA="ec2",qeA="fargate";aeA.AWSECSLAUNCHTYPEVALUES_EC2=LeA;aeA.AWSECSLAUNCHTYPEVALUES_FARGATE=qeA;aeA.AwsEcsLaunchtypeValues=(0,U$.createConstMap)([LeA,qeA]);var MeA="amd64",zeA="arm32",ReA="arm64",weA="ia64",jeA="ppc32",OeA="ppc64",PeA="x86";aeA.HOSTARCHVALUES_AMD64=MeA;aeA.HOSTARCHVALUES_ARM32=zeA;aeA.HOSTARCHVALUES_ARM64=ReA;aeA.HOSTARCHVALUES_IA64=weA;aeA.HOSTARCHVALUES_PPC32=jeA;aeA.HOSTARCHVALUES_PPC64=OeA;aeA.HOSTARCHVALUES_X86=PeA;aeA.HostArchValues=(0,U$.createConstMap)([MeA,zeA,ReA,weA,jeA,OeA,PeA]);var TeA="windows",SeA="linux",keA="darwin",_eA="freebsd",veA="netbsd",yeA="openbsd",geA="dragonflybsd",heA="hpux",xeA="aix",feA="solaris",beA="z_os";aeA.OSTYPEVALUES_WINDOWS=TeA;aeA.OSTYPEVALUES_LINUX=SeA;aeA.OSTYPEVALUES_DARWIN=keA;aeA.OSTYPEVALUES_FREEBSD=_eA;aeA.OSTYPEVALUES_NETBSD=veA;aeA.OSTYPEVALUES_OPENBSD=yeA;aeA.OSTYPEVALUES_DRAGONFLYBSD=geA;aeA.OSTYPEVALUES_HPUX=heA;aeA.OSTYPEVALUES_AIX=xeA;aeA.OSTYPEVALUES_SOLARIS=feA;aeA.OSTYPEVALUES_Z_OS=beA;aeA.OsTypeValues=(0,U$.createConstMap)([TeA,SeA,keA,_eA,veA,yeA,geA,heA,xeA,feA,beA]);var meA="cpp",ueA="dotnet",deA="erlang",ceA="go",leA="java",peA="nodejs",ieA="php",neA="python",seA="ruby",reA="webjs";aeA.TELEMETRYSDKLANGUAGEVALUES_CPP=meA;aeA.TELEMETRYSDKLANGUAGEVALUES_DOTNET=ueA;aeA.TELEMETRYSDKLANGUAGEVALUES_ERLANG=deA;aeA.TELEMETRYSDKLANGUAGEVALUES_GO=ceA;aeA.TELEMETRYSDKLANGUAGEVALUES_JAVA=leA;aeA.TELEMETRYSDKLANGUAGEVALUES_NODEJS=peA;aeA.TELEMETRYSDKLANGUAGEVALUES_PHP=ieA;aeA.TELEMETRYSDKLANGUAGEVALUES_PYTHON=neA;aeA.TELEMETRYSDKLANGUAGEVALUES_RUBY=seA;aeA.TELEMETRYSDKLANGUAGEVALUES_WEBJS=reA;aeA.TelemetrySdkLanguageValues=(0,U$.createConstMap)([meA,ueA,deA,ceA,leA,peA,ieA,neA,seA,reA])});var QAQ=R((E$)=>{var TeB=E$&&E$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;var J=Object.getOwnPropertyDescriptor(Q,B);if(!J||("get"in J?!Q.__esModule:J.writable||J.configurable))J={enumerable:!0,get:function(){return Q[B]}};Object.defineProperty(A,Y,J)}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),SeB=E$&&E$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))TeB(Q,A,B)};Object.defineProperty(E$,"__esModule",{value:!0});SeB(AAQ(),E$)});var XAQ=R((BAQ)=>{Object.defineProperty(BAQ,"__esModule",{value:!0});BAQ.ATTR_HTTP_REQUEST_HEADER=BAQ.ATTR_EXCEPTION_TYPE=BAQ.ATTR_EXCEPTION_STACKTRACE=BAQ.ATTR_EXCEPTION_MESSAGE=BAQ.ATTR_EXCEPTION_ESCAPED=BAQ.ERROR_TYPE_VALUE_OTHER=BAQ.ATTR_ERROR_TYPE=BAQ.DOTNET_GC_HEAP_GENERATION_VALUE_POH=BAQ.DOTNET_GC_HEAP_GENERATION_VALUE_LOH=BAQ.DOTNET_GC_HEAP_GENERATION_VALUE_GEN2=BAQ.DOTNET_GC_HEAP_GENERATION_VALUE_GEN1=BAQ.DOTNET_GC_HEAP_GENERATION_VALUE_GEN0=BAQ.ATTR_DOTNET_GC_HEAP_GENERATION=BAQ.DB_SYSTEM_NAME_VALUE_POSTGRESQL=BAQ.DB_SYSTEM_NAME_VALUE_MYSQL=BAQ.DB_SYSTEM_NAME_VALUE_MICROSOFT_SQL_SERVER=BAQ.DB_SYSTEM_NAME_VALUE_MARIADB=BAQ.ATTR_DB_SYSTEM_NAME=BAQ.ATTR_DB_STORED_PROCEDURE_NAME=BAQ.ATTR_DB_RESPONSE_STATUS_CODE=BAQ.ATTR_DB_QUERY_TEXT=BAQ.ATTR_DB_QUERY_SUMMARY=BAQ.ATTR_DB_OPERATION_NAME=BAQ.ATTR_DB_OPERATION_BATCH_SIZE=BAQ.ATTR_DB_NAMESPACE=BAQ.ATTR_DB_COLLECTION_NAME=BAQ.ATTR_CODE_STACKTRACE=BAQ.ATTR_CODE_LINE_NUMBER=BAQ.ATTR_CODE_FUNCTION_NAME=BAQ.ATTR_CODE_FILE_PATH=BAQ.ATTR_CODE_COLUMN_NUMBER=BAQ.ATTR_CLIENT_PORT=BAQ.ATTR_CLIENT_ADDRESS=BAQ.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS=BAQ.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE=BAQ.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS=BAQ.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK=BAQ.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED=BAQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED=BAQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER=BAQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER=BAQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED=BAQ.ATTR_ASPNETCORE_RATE_LIMITING_RESULT=BAQ.ATTR_ASPNETCORE_RATE_LIMITING_POLICY=BAQ.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE=BAQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED=BAQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED=BAQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED=BAQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED=BAQ.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT=void 0;BAQ.OTEL_STATUS_CODE_VALUE_OK=BAQ.OTEL_STATUS_CODE_VALUE_ERROR=BAQ.ATTR_OTEL_STATUS_CODE=BAQ.ATTR_OTEL_SCOPE_VERSION=BAQ.ATTR_OTEL_SCOPE_NAME=BAQ.NETWORK_TYPE_VALUE_IPV6=BAQ.NETWORK_TYPE_VALUE_IPV4=BAQ.ATTR_NETWORK_TYPE=BAQ.NETWORK_TRANSPORT_VALUE_UNIX=BAQ.NETWORK_TRANSPORT_VALUE_UDP=BAQ.NETWORK_TRANSPORT_VALUE_TCP=BAQ.NETWORK_TRANSPORT_VALUE_QUIC=BAQ.NETWORK_TRANSPORT_VALUE_PIPE=BAQ.ATTR_NETWORK_TRANSPORT=BAQ.ATTR_NETWORK_PROTOCOL_VERSION=BAQ.ATTR_NETWORK_PROTOCOL_NAME=BAQ.ATTR_NETWORK_PEER_PORT=BAQ.ATTR_NETWORK_PEER_ADDRESS=BAQ.ATTR_NETWORK_LOCAL_PORT=BAQ.ATTR_NETWORK_LOCAL_ADDRESS=BAQ.JVM_THREAD_STATE_VALUE_WAITING=BAQ.JVM_THREAD_STATE_VALUE_TIMED_WAITING=BAQ.JVM_THREAD_STATE_VALUE_TERMINATED=BAQ.JVM_THREAD_STATE_VALUE_RUNNABLE=BAQ.JVM_THREAD_STATE_VALUE_NEW=BAQ.JVM_THREAD_STATE_VALUE_BLOCKED=BAQ.ATTR_JVM_THREAD_STATE=BAQ.ATTR_JVM_THREAD_DAEMON=BAQ.JVM_MEMORY_TYPE_VALUE_NON_HEAP=BAQ.JVM_MEMORY_TYPE_VALUE_HEAP=BAQ.ATTR_JVM_MEMORY_TYPE=BAQ.ATTR_JVM_MEMORY_POOL_NAME=BAQ.ATTR_JVM_GC_NAME=BAQ.ATTR_JVM_GC_ACTION=BAQ.ATTR_HTTP_ROUTE=BAQ.ATTR_HTTP_RESPONSE_STATUS_CODE=BAQ.ATTR_HTTP_RESPONSE_HEADER=BAQ.ATTR_HTTP_REQUEST_RESEND_COUNT=BAQ.ATTR_HTTP_REQUEST_METHOD_ORIGINAL=BAQ.HTTP_REQUEST_METHOD_VALUE_TRACE=BAQ.HTTP_REQUEST_METHOD_VALUE_PUT=BAQ.HTTP_REQUEST_METHOD_VALUE_POST=BAQ.HTTP_REQUEST_METHOD_VALUE_PATCH=BAQ.HTTP_REQUEST_METHOD_VALUE_OPTIONS=BAQ.HTTP_REQUEST_METHOD_VALUE_HEAD=BAQ.HTTP_REQUEST_METHOD_VALUE_GET=BAQ.HTTP_REQUEST_METHOD_VALUE_DELETE=BAQ.HTTP_REQUEST_METHOD_VALUE_CONNECT=BAQ.HTTP_REQUEST_METHOD_VALUE_OTHER=BAQ.ATTR_HTTP_REQUEST_METHOD=void 0;BAQ.ATTR_USER_AGENT_ORIGINAL=BAQ.ATTR_URL_SCHEME=BAQ.ATTR_URL_QUERY=BAQ.ATTR_URL_PATH=BAQ.ATTR_URL_FULL=BAQ.ATTR_URL_FRAGMENT=BAQ.ATTR_TELEMETRY_SDK_VERSION=BAQ.ATTR_TELEMETRY_SDK_NAME=BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS=BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT=BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_RUST=BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY=BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON=BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_PHP=BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS=BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA=BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_GO=BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG=BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET=BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_CPP=BAQ.ATTR_TELEMETRY_SDK_LANGUAGE=BAQ.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS=BAQ.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS=BAQ.SIGNALR_TRANSPORT_VALUE_LONG_POLLING=BAQ.ATTR_SIGNALR_TRANSPORT=BAQ.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT=BAQ.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE=BAQ.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN=BAQ.ATTR_SIGNALR_CONNECTION_STATUS=BAQ.ATTR_SERVICE_VERSION=BAQ.ATTR_SERVICE_NAME=BAQ.ATTR_SERVER_PORT=BAQ.ATTR_SERVER_ADDRESS=BAQ.ATTR_OTEL_STATUS_DESCRIPTION=void 0;BAQ.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT="aspnetcore.diagnostics.exception.result";BAQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED="aborted";BAQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED="handled";BAQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED="skipped";BAQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED="unhandled";BAQ.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE="aspnetcore.diagnostics.handler.type";BAQ.ATTR_ASPNETCORE_RATE_LIMITING_POLICY="aspnetcore.rate_limiting.policy";BAQ.ATTR_ASPNETCORE_RATE_LIMITING_RESULT="aspnetcore.rate_limiting.result";BAQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED="acquired";BAQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER="endpoint_limiter";BAQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER="global_limiter";BAQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED="request_canceled";BAQ.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED="aspnetcore.request.is_unhandled";BAQ.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK="aspnetcore.routing.is_fallback";BAQ.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS="aspnetcore.routing.match_status";BAQ.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE="failure";BAQ.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS="success";BAQ.ATTR_CLIENT_ADDRESS="client.address";BAQ.ATTR_CLIENT_PORT="client.port";BAQ.ATTR_CODE_COLUMN_NUMBER="code.column.number";BAQ.ATTR_CODE_FILE_PATH="code.file.path";BAQ.ATTR_CODE_FUNCTION_NAME="code.function.name";BAQ.ATTR_CODE_LINE_NUMBER="code.line.number";BAQ.ATTR_CODE_STACKTRACE="code.stacktrace";BAQ.ATTR_DB_COLLECTION_NAME="db.collection.name";BAQ.ATTR_DB_NAMESPACE="db.namespace";BAQ.ATTR_DB_OPERATION_BATCH_SIZE="db.operation.batch.size";BAQ.ATTR_DB_OPERATION_NAME="db.operation.name";BAQ.ATTR_DB_QUERY_SUMMARY="db.query.summary";BAQ.ATTR_DB_QUERY_TEXT="db.query.text";BAQ.ATTR_DB_RESPONSE_STATUS_CODE="db.response.status_code";BAQ.ATTR_DB_STORED_PROCEDURE_NAME="db.stored_procedure.name";BAQ.ATTR_DB_SYSTEM_NAME="db.system.name";BAQ.DB_SYSTEM_NAME_VALUE_MARIADB="mariadb";BAQ.DB_SYSTEM_NAME_VALUE_MICROSOFT_SQL_SERVER="microsoft.sql_server";BAQ.DB_SYSTEM_NAME_VALUE_MYSQL="mysql";BAQ.DB_SYSTEM_NAME_VALUE_POSTGRESQL="postgresql";BAQ.ATTR_DOTNET_GC_HEAP_GENERATION="dotnet.gc.heap.generation";BAQ.DOTNET_GC_HEAP_GENERATION_VALUE_GEN0="gen0";BAQ.DOTNET_GC_HEAP_GENERATION_VALUE_GEN1="gen1";BAQ.DOTNET_GC_HEAP_GENERATION_VALUE_GEN2="gen2";BAQ.DOTNET_GC_HEAP_GENERATION_VALUE_LOH="loh";BAQ.DOTNET_GC_HEAP_GENERATION_VALUE_POH="poh";BAQ.ATTR_ERROR_TYPE="error.type";BAQ.ERROR_TYPE_VALUE_OTHER="_OTHER";BAQ.ATTR_EXCEPTION_ESCAPED="exception.escaped";BAQ.ATTR_EXCEPTION_MESSAGE="exception.message";BAQ.ATTR_EXCEPTION_STACKTRACE="exception.stacktrace";BAQ.ATTR_EXCEPTION_TYPE="exception.type";var keB=(A)=>`http.request.header.${A}`;BAQ.ATTR_HTTP_REQUEST_HEADER=keB;BAQ.ATTR_HTTP_REQUEST_METHOD="http.request.method";BAQ.HTTP_REQUEST_METHOD_VALUE_OTHER="_OTHER";BAQ.HTTP_REQUEST_METHOD_VALUE_CONNECT="CONNECT";BAQ.HTTP_REQUEST_METHOD_VALUE_DELETE="DELETE";BAQ.HTTP_REQUEST_METHOD_VALUE_GET="GET";BAQ.HTTP_REQUEST_METHOD_VALUE_HEAD="HEAD";BAQ.HTTP_REQUEST_METHOD_VALUE_OPTIONS="OPTIONS";BAQ.HTTP_REQUEST_METHOD_VALUE_PATCH="PATCH";BAQ.HTTP_REQUEST_METHOD_VALUE_POST="POST";BAQ.HTTP_REQUEST_METHOD_VALUE_PUT="PUT";BAQ.HTTP_REQUEST_METHOD_VALUE_TRACE="TRACE";BAQ.ATTR_HTTP_REQUEST_METHOD_ORIGINAL="http.request.method_original";BAQ.ATTR_HTTP_REQUEST_RESEND_COUNT="http.request.resend_count";var _eB=(A)=>`http.response.header.${A}`;BAQ.ATTR_HTTP_RESPONSE_HEADER=_eB;BAQ.ATTR_HTTP_RESPONSE_STATUS_CODE="http.response.status_code";BAQ.ATTR_HTTP_ROUTE="http.route";BAQ.ATTR_JVM_GC_ACTION="jvm.gc.action";BAQ.ATTR_JVM_GC_NAME="jvm.gc.name";BAQ.ATTR_JVM_MEMORY_POOL_NAME="jvm.memory.pool.name";BAQ.ATTR_JVM_MEMORY_TYPE="jvm.memory.type";BAQ.JVM_MEMORY_TYPE_VALUE_HEAP="heap";BAQ.JVM_MEMORY_TYPE_VALUE_NON_HEAP="non_heap";BAQ.ATTR_JVM_THREAD_DAEMON="jvm.thread.daemon";BAQ.ATTR_JVM_THREAD_STATE="jvm.thread.state";BAQ.JVM_THREAD_STATE_VALUE_BLOCKED="blocked";BAQ.JVM_THREAD_STATE_VALUE_NEW="new";BAQ.JVM_THREAD_STATE_VALUE_RUNNABLE="runnable";BAQ.JVM_THREAD_STATE_VALUE_TERMINATED="terminated";BAQ.JVM_THREAD_STATE_VALUE_TIMED_WAITING="timed_waiting";BAQ.JVM_THREAD_STATE_VALUE_WAITING="waiting";BAQ.ATTR_NETWORK_LOCAL_ADDRESS="network.local.address";BAQ.ATTR_NETWORK_LOCAL_PORT="network.local.port";BAQ.ATTR_NETWORK_PEER_ADDRESS="network.peer.address";BAQ.ATTR_NETWORK_PEER_PORT="network.peer.port";BAQ.ATTR_NETWORK_PROTOCOL_NAME="network.protocol.name";BAQ.ATTR_NETWORK_PROTOCOL_VERSION="network.protocol.version";BAQ.ATTR_NETWORK_TRANSPORT="network.transport";BAQ.NETWORK_TRANSPORT_VALUE_PIPE="pipe";BAQ.NETWORK_TRANSPORT_VALUE_QUIC="quic";BAQ.NETWORK_TRANSPORT_VALUE_TCP="tcp";BAQ.NETWORK_TRANSPORT_VALUE_UDP="udp";BAQ.NETWORK_TRANSPORT_VALUE_UNIX="unix";BAQ.ATTR_NETWORK_TYPE="network.type";BAQ.NETWORK_TYPE_VALUE_IPV4="ipv4";BAQ.NETWORK_TYPE_VALUE_IPV6="ipv6";BAQ.ATTR_OTEL_SCOPE_NAME="otel.scope.name";BAQ.ATTR_OTEL_SCOPE_VERSION="otel.scope.version";BAQ.ATTR_OTEL_STATUS_CODE="otel.status_code";BAQ.OTEL_STATUS_CODE_VALUE_ERROR="ERROR";BAQ.OTEL_STATUS_CODE_VALUE_OK="OK";BAQ.ATTR_OTEL_STATUS_DESCRIPTION="otel.status_description";BAQ.ATTR_SERVER_ADDRESS="server.address";BAQ.ATTR_SERVER_PORT="server.port";BAQ.ATTR_SERVICE_NAME="service.name";BAQ.ATTR_SERVICE_VERSION="service.version";BAQ.ATTR_SIGNALR_CONNECTION_STATUS="signalr.connection.status";BAQ.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN="app_shutdown";BAQ.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE="normal_closure";BAQ.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT="timeout";BAQ.ATTR_SIGNALR_TRANSPORT="signalr.transport";BAQ.SIGNALR_TRANSPORT_VALUE_LONG_POLLING="long_polling";BAQ.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS="server_sent_events";BAQ.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS="web_sockets";BAQ.ATTR_TELEMETRY_SDK_LANGUAGE="telemetry.sdk.language";BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_CPP="cpp";BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET="dotnet";BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG="erlang";BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_GO="go";BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA="java";BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS="nodejs";BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_PHP="php";BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON="python";BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY="ruby";BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_RUST="rust";BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT="swift";BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS="webjs";BAQ.ATTR_TELEMETRY_SDK_NAME="telemetry.sdk.name";BAQ.ATTR_TELEMETRY_SDK_VERSION="telemetry.sdk.version";BAQ.ATTR_URL_FRAGMENT="url.fragment";BAQ.ATTR_URL_FULL="url.full";BAQ.ATTR_URL_PATH="url.path";BAQ.ATTR_URL_QUERY="url.query";BAQ.ATTR_URL_SCHEME="url.scheme";BAQ.ATTR_USER_AGENT_ORIGINAL="user_agent.original"});var ZAQ=R((GAQ)=>{Object.defineProperty(GAQ,"__esModule",{value:!0});GAQ.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS=GAQ.METRIC_KESTREL_UPGRADED_CONNECTIONS=GAQ.METRIC_KESTREL_TLS_HANDSHAKE_DURATION=GAQ.METRIC_KESTREL_REJECTED_CONNECTIONS=GAQ.METRIC_KESTREL_QUEUED_REQUESTS=GAQ.METRIC_KESTREL_QUEUED_CONNECTIONS=GAQ.METRIC_KESTREL_CONNECTION_DURATION=GAQ.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES=GAQ.METRIC_KESTREL_ACTIVE_CONNECTIONS=GAQ.METRIC_JVM_THREAD_COUNT=GAQ.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC=GAQ.METRIC_JVM_MEMORY_USED=GAQ.METRIC_JVM_MEMORY_LIMIT=GAQ.METRIC_JVM_MEMORY_COMMITTED=GAQ.METRIC_JVM_GC_DURATION=GAQ.METRIC_JVM_CPU_TIME=GAQ.METRIC_JVM_CPU_RECENT_UTILIZATION=GAQ.METRIC_JVM_CPU_COUNT=GAQ.METRIC_JVM_CLASS_UNLOADED=GAQ.METRIC_JVM_CLASS_LOADED=GAQ.METRIC_JVM_CLASS_COUNT=GAQ.METRIC_HTTP_SERVER_REQUEST_DURATION=GAQ.METRIC_HTTP_CLIENT_REQUEST_DURATION=GAQ.METRIC_DOTNET_TIMER_COUNT=GAQ.METRIC_DOTNET_THREAD_POOL_WORK_ITEM_COUNT=GAQ.METRIC_DOTNET_THREAD_POOL_THREAD_COUNT=GAQ.METRIC_DOTNET_THREAD_POOL_QUEUE_LENGTH=GAQ.METRIC_DOTNET_PROCESS_MEMORY_WORKING_SET=GAQ.METRIC_DOTNET_PROCESS_CPU_TIME=GAQ.METRIC_DOTNET_PROCESS_CPU_COUNT=GAQ.METRIC_DOTNET_MONITOR_LOCK_CONTENTIONS=GAQ.METRIC_DOTNET_JIT_COMPILED_METHODS=GAQ.METRIC_DOTNET_JIT_COMPILED_IL_SIZE=GAQ.METRIC_DOTNET_JIT_COMPILATION_TIME=GAQ.METRIC_DOTNET_GC_PAUSE_TIME=GAQ.METRIC_DOTNET_GC_LAST_COLLECTION_MEMORY_COMMITTED_SIZE=GAQ.METRIC_DOTNET_GC_LAST_COLLECTION_HEAP_SIZE=GAQ.METRIC_DOTNET_GC_LAST_COLLECTION_HEAP_FRAGMENTATION_SIZE=GAQ.METRIC_DOTNET_GC_HEAP_TOTAL_ALLOCATED=GAQ.METRIC_DOTNET_GC_COLLECTIONS=GAQ.METRIC_DOTNET_EXCEPTIONS=GAQ.METRIC_DOTNET_ASSEMBLY_COUNT=GAQ.METRIC_DB_CLIENT_OPERATION_DURATION=GAQ.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS=GAQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS=GAQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION=GAQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE=GAQ.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS=GAQ.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES=GAQ.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS=void 0;GAQ.METRIC_SIGNALR_SERVER_CONNECTION_DURATION=void 0;GAQ.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS="aspnetcore.diagnostics.exceptions";GAQ.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES="aspnetcore.rate_limiting.active_request_leases";GAQ.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS="aspnetcore.rate_limiting.queued_requests";GAQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE="aspnetcore.rate_limiting.request.time_in_queue";GAQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION="aspnetcore.rate_limiting.request_lease.duration";GAQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS="aspnetcore.rate_limiting.requests";GAQ.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS="aspnetcore.routing.match_attempts";GAQ.METRIC_DB_CLIENT_OPERATION_DURATION="db.client.operation.duration";GAQ.METRIC_DOTNET_ASSEMBLY_COUNT="dotnet.assembly.count";GAQ.METRIC_DOTNET_EXCEPTIONS="dotnet.exceptions";GAQ.METRIC_DOTNET_GC_COLLECTIONS="dotnet.gc.collections";GAQ.METRIC_DOTNET_GC_HEAP_TOTAL_ALLOCATED="dotnet.gc.heap.total_allocated";GAQ.METRIC_DOTNET_GC_LAST_COLLECTION_HEAP_FRAGMENTATION_SIZE="dotnet.gc.last_collection.heap.fragmentation.size";GAQ.METRIC_DOTNET_GC_LAST_COLLECTION_HEAP_SIZE="dotnet.gc.last_collection.heap.size";GAQ.METRIC_DOTNET_GC_LAST_COLLECTION_MEMORY_COMMITTED_SIZE="dotnet.gc.last_collection.memory.committed_size";GAQ.METRIC_DOTNET_GC_PAUSE_TIME="dotnet.gc.pause.time";GAQ.METRIC_DOTNET_JIT_COMPILATION_TIME="dotnet.jit.compilation.time";GAQ.METRIC_DOTNET_JIT_COMPILED_IL_SIZE="dotnet.jit.compiled_il.size";GAQ.METRIC_DOTNET_JIT_COMPILED_METHODS="dotnet.jit.compiled_methods";GAQ.METRIC_DOTNET_MONITOR_LOCK_CONTENTIONS="dotnet.monitor.lock_contentions";GAQ.METRIC_DOTNET_PROCESS_CPU_COUNT="dotnet.process.cpu.count";GAQ.METRIC_DOTNET_PROCESS_CPU_TIME="dotnet.process.cpu.time";GAQ.METRIC_DOTNET_PROCESS_MEMORY_WORKING_SET="dotnet.process.memory.working_set";GAQ.METRIC_DOTNET_THREAD_POOL_QUEUE_LENGTH="dotnet.thread_pool.queue.length";GAQ.METRIC_DOTNET_THREAD_POOL_THREAD_COUNT="dotnet.thread_pool.thread.count";GAQ.METRIC_DOTNET_THREAD_POOL_WORK_ITEM_COUNT="dotnet.thread_pool.work_item.count";GAQ.METRIC_DOTNET_TIMER_COUNT="dotnet.timer.count";GAQ.METRIC_HTTP_CLIENT_REQUEST_DURATION="http.client.request.duration";GAQ.METRIC_HTTP_SERVER_REQUEST_DURATION="http.server.request.duration";GAQ.METRIC_JVM_CLASS_COUNT="jvm.class.count";GAQ.METRIC_JVM_CLASS_LOADED="jvm.class.loaded";GAQ.METRIC_JVM_CLASS_UNLOADED="jvm.class.unloaded";GAQ.METRIC_JVM_CPU_COUNT="jvm.cpu.count";GAQ.METRIC_JVM_CPU_RECENT_UTILIZATION="jvm.cpu.recent_utilization";GAQ.METRIC_JVM_CPU_TIME="jvm.cpu.time";GAQ.METRIC_JVM_GC_DURATION="jvm.gc.duration";GAQ.METRIC_JVM_MEMORY_COMMITTED="jvm.memory.committed";GAQ.METRIC_JVM_MEMORY_LIMIT="jvm.memory.limit";GAQ.METRIC_JVM_MEMORY_USED="jvm.memory.used";GAQ.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC="jvm.memory.used_after_last_gc";GAQ.METRIC_JVM_THREAD_COUNT="jvm.thread.count";GAQ.METRIC_KESTREL_ACTIVE_CONNECTIONS="kestrel.active_connections";GAQ.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES="kestrel.active_tls_handshakes";GAQ.METRIC_KESTREL_CONNECTION_DURATION="kestrel.connection.duration";GAQ.METRIC_KESTREL_QUEUED_CONNECTIONS="kestrel.queued_connections";GAQ.METRIC_KESTREL_QUEUED_REQUESTS="kestrel.queued_requests";GAQ.METRIC_KESTREL_REJECTED_CONNECTIONS="kestrel.rejected_connections";GAQ.METRIC_KESTREL_TLS_HANDSHAKE_DURATION="kestrel.tls_handshake.duration";GAQ.METRIC_KESTREL_UPGRADED_CONNECTIONS="kestrel.upgraded_connections";GAQ.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS="signalr.server.active_connections";GAQ.METRIC_SIGNALR_SERVER_CONNECTION_DURATION="signalr.server.connection.duration"});var dB=R((KX)=>{var oB0=KX&&KX.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;var J=Object.getOwnPropertyDescriptor(Q,B);if(!J||("get"in J?!Q.__esModule:J.writable||J.configurable))J={enumerable:!0,get:function(){return Q[B]}};Object.defineProperty(A,Y,J)}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),JP=KX&&KX.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))oB0(Q,A,B)};Object.defineProperty(KX,"__esModule",{value:!0});JP(woA(),KX);JP(QAQ(),KX);JP(XAQ(),KX);JP(ZAQ(),KX)});var Ji=R(($AQ)=>{Object.defineProperty($AQ,"__esModule",{value:!0});$AQ.createConstMap=void 0;function tB0(A){let Q={},B=A.length;for(let Y=0;Y{Object.defineProperty(BJQ,"__esModule",{value:!0});BJQ.SEMATTRS_NET_HOST_CARRIER_ICC=BJQ.SEMATTRS_NET_HOST_CARRIER_MNC=BJQ.SEMATTRS_NET_HOST_CARRIER_MCC=BJQ.SEMATTRS_NET_HOST_CARRIER_NAME=BJQ.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=BJQ.SEMATTRS_NET_HOST_CONNECTION_TYPE=BJQ.SEMATTRS_NET_HOST_NAME=BJQ.SEMATTRS_NET_HOST_PORT=BJQ.SEMATTRS_NET_HOST_IP=BJQ.SEMATTRS_NET_PEER_NAME=BJQ.SEMATTRS_NET_PEER_PORT=BJQ.SEMATTRS_NET_PEER_IP=BJQ.SEMATTRS_NET_TRANSPORT=BJQ.SEMATTRS_FAAS_INVOKED_REGION=BJQ.SEMATTRS_FAAS_INVOKED_PROVIDER=BJQ.SEMATTRS_FAAS_INVOKED_NAME=BJQ.SEMATTRS_FAAS_COLDSTART=BJQ.SEMATTRS_FAAS_CRON=BJQ.SEMATTRS_FAAS_TIME=BJQ.SEMATTRS_FAAS_DOCUMENT_NAME=BJQ.SEMATTRS_FAAS_DOCUMENT_TIME=BJQ.SEMATTRS_FAAS_DOCUMENT_OPERATION=BJQ.SEMATTRS_FAAS_DOCUMENT_COLLECTION=BJQ.SEMATTRS_FAAS_EXECUTION=BJQ.SEMATTRS_FAAS_TRIGGER=BJQ.SEMATTRS_EXCEPTION_ESCAPED=BJQ.SEMATTRS_EXCEPTION_STACKTRACE=BJQ.SEMATTRS_EXCEPTION_MESSAGE=BJQ.SEMATTRS_EXCEPTION_TYPE=BJQ.SEMATTRS_DB_SQL_TABLE=BJQ.SEMATTRS_DB_MONGODB_COLLECTION=BJQ.SEMATTRS_DB_REDIS_DATABASE_INDEX=BJQ.SEMATTRS_DB_HBASE_NAMESPACE=BJQ.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=BJQ.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=BJQ.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=BJQ.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=BJQ.SEMATTRS_DB_CASSANDRA_TABLE=BJQ.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=BJQ.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=BJQ.SEMATTRS_DB_CASSANDRA_KEYSPACE=BJQ.SEMATTRS_DB_MSSQL_INSTANCE_NAME=BJQ.SEMATTRS_DB_OPERATION=BJQ.SEMATTRS_DB_STATEMENT=BJQ.SEMATTRS_DB_NAME=BJQ.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=BJQ.SEMATTRS_DB_USER=BJQ.SEMATTRS_DB_CONNECTION_STRING=BJQ.SEMATTRS_DB_SYSTEM=BJQ.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=void 0;BJQ.SEMATTRS_MESSAGING_DESTINATION_KIND=BJQ.SEMATTRS_MESSAGING_DESTINATION=BJQ.SEMATTRS_MESSAGING_SYSTEM=BJQ.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=BJQ.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=BJQ.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=BJQ.SEMATTRS_AWS_DYNAMODB_COUNT=BJQ.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=BJQ.SEMATTRS_AWS_DYNAMODB_SEGMENT=BJQ.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=BJQ.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=BJQ.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=BJQ.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=BJQ.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=BJQ.SEMATTRS_AWS_DYNAMODB_SELECT=BJQ.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=BJQ.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=BJQ.SEMATTRS_AWS_DYNAMODB_LIMIT=BJQ.SEMATTRS_AWS_DYNAMODB_PROJECTION=BJQ.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=BJQ.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=BJQ.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=BJQ.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=BJQ.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=BJQ.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=BJQ.SEMATTRS_HTTP_CLIENT_IP=BJQ.SEMATTRS_HTTP_ROUTE=BJQ.SEMATTRS_HTTP_SERVER_NAME=BJQ.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=BJQ.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=BJQ.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=BJQ.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=BJQ.SEMATTRS_HTTP_USER_AGENT=BJQ.SEMATTRS_HTTP_FLAVOR=BJQ.SEMATTRS_HTTP_STATUS_CODE=BJQ.SEMATTRS_HTTP_SCHEME=BJQ.SEMATTRS_HTTP_HOST=BJQ.SEMATTRS_HTTP_TARGET=BJQ.SEMATTRS_HTTP_URL=BJQ.SEMATTRS_HTTP_METHOD=BJQ.SEMATTRS_CODE_LINENO=BJQ.SEMATTRS_CODE_FILEPATH=BJQ.SEMATTRS_CODE_NAMESPACE=BJQ.SEMATTRS_CODE_FUNCTION=BJQ.SEMATTRS_THREAD_NAME=BJQ.SEMATTRS_THREAD_ID=BJQ.SEMATTRS_ENDUSER_SCOPE=BJQ.SEMATTRS_ENDUSER_ROLE=BJQ.SEMATTRS_ENDUSER_ID=BJQ.SEMATTRS_PEER_SERVICE=void 0;BJQ.DBSYSTEMVALUES_FILEMAKER=BJQ.DBSYSTEMVALUES_DERBY=BJQ.DBSYSTEMVALUES_FIREBIRD=BJQ.DBSYSTEMVALUES_ADABAS=BJQ.DBSYSTEMVALUES_CACHE=BJQ.DBSYSTEMVALUES_EDB=BJQ.DBSYSTEMVALUES_FIRSTSQL=BJQ.DBSYSTEMVALUES_INGRES=BJQ.DBSYSTEMVALUES_HANADB=BJQ.DBSYSTEMVALUES_MAXDB=BJQ.DBSYSTEMVALUES_PROGRESS=BJQ.DBSYSTEMVALUES_HSQLDB=BJQ.DBSYSTEMVALUES_CLOUDSCAPE=BJQ.DBSYSTEMVALUES_HIVE=BJQ.DBSYSTEMVALUES_REDSHIFT=BJQ.DBSYSTEMVALUES_POSTGRESQL=BJQ.DBSYSTEMVALUES_DB2=BJQ.DBSYSTEMVALUES_ORACLE=BJQ.DBSYSTEMVALUES_MYSQL=BJQ.DBSYSTEMVALUES_MSSQL=BJQ.DBSYSTEMVALUES_OTHER_SQL=BJQ.SemanticAttributes=BJQ.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=BJQ.SEMATTRS_MESSAGE_COMPRESSED_SIZE=BJQ.SEMATTRS_MESSAGE_ID=BJQ.SEMATTRS_MESSAGE_TYPE=BJQ.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=BJQ.SEMATTRS_RPC_JSONRPC_ERROR_CODE=BJQ.SEMATTRS_RPC_JSONRPC_REQUEST_ID=BJQ.SEMATTRS_RPC_JSONRPC_VERSION=BJQ.SEMATTRS_RPC_GRPC_STATUS_CODE=BJQ.SEMATTRS_RPC_METHOD=BJQ.SEMATTRS_RPC_SERVICE=BJQ.SEMATTRS_RPC_SYSTEM=BJQ.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=BJQ.SEMATTRS_MESSAGING_KAFKA_PARTITION=BJQ.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=BJQ.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=BJQ.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=BJQ.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=BJQ.SEMATTRS_MESSAGING_CONSUMER_ID=BJQ.SEMATTRS_MESSAGING_OPERATION=BJQ.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=BJQ.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=BJQ.SEMATTRS_MESSAGING_CONVERSATION_ID=BJQ.SEMATTRS_MESSAGING_MESSAGE_ID=BJQ.SEMATTRS_MESSAGING_URL=BJQ.SEMATTRS_MESSAGING_PROTOCOL_VERSION=BJQ.SEMATTRS_MESSAGING_PROTOCOL=BJQ.SEMATTRS_MESSAGING_TEMP_DESTINATION=void 0;BJQ.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=BJQ.FaasDocumentOperationValues=BJQ.FAASDOCUMENTOPERATIONVALUES_DELETE=BJQ.FAASDOCUMENTOPERATIONVALUES_EDIT=BJQ.FAASDOCUMENTOPERATIONVALUES_INSERT=BJQ.FaasTriggerValues=BJQ.FAASTRIGGERVALUES_OTHER=BJQ.FAASTRIGGERVALUES_TIMER=BJQ.FAASTRIGGERVALUES_PUBSUB=BJQ.FAASTRIGGERVALUES_HTTP=BJQ.FAASTRIGGERVALUES_DATASOURCE=BJQ.DbCassandraConsistencyLevelValues=BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=BJQ.DbSystemValues=BJQ.DBSYSTEMVALUES_COCKROACHDB=BJQ.DBSYSTEMVALUES_MEMCACHED=BJQ.DBSYSTEMVALUES_ELASTICSEARCH=BJQ.DBSYSTEMVALUES_GEODE=BJQ.DBSYSTEMVALUES_NEO4J=BJQ.DBSYSTEMVALUES_DYNAMODB=BJQ.DBSYSTEMVALUES_COSMOSDB=BJQ.DBSYSTEMVALUES_COUCHDB=BJQ.DBSYSTEMVALUES_COUCHBASE=BJQ.DBSYSTEMVALUES_REDIS=BJQ.DBSYSTEMVALUES_MONGODB=BJQ.DBSYSTEMVALUES_HBASE=BJQ.DBSYSTEMVALUES_CASSANDRA=BJQ.DBSYSTEMVALUES_COLDFUSION=BJQ.DBSYSTEMVALUES_H2=BJQ.DBSYSTEMVALUES_VERTICA=BJQ.DBSYSTEMVALUES_TERADATA=BJQ.DBSYSTEMVALUES_SYBASE=BJQ.DBSYSTEMVALUES_SQLITE=BJQ.DBSYSTEMVALUES_POINTBASE=BJQ.DBSYSTEMVALUES_PERVASIVE=BJQ.DBSYSTEMVALUES_NETEZZA=BJQ.DBSYSTEMVALUES_MARIADB=BJQ.DBSYSTEMVALUES_INTERBASE=BJQ.DBSYSTEMVALUES_INSTANTDB=BJQ.DBSYSTEMVALUES_INFORMIX=void 0;BJQ.MESSAGINGOPERATIONVALUES_RECEIVE=BJQ.MessagingDestinationKindValues=BJQ.MESSAGINGDESTINATIONKINDVALUES_TOPIC=BJQ.MESSAGINGDESTINATIONKINDVALUES_QUEUE=BJQ.HttpFlavorValues=BJQ.HTTPFLAVORVALUES_QUIC=BJQ.HTTPFLAVORVALUES_SPDY=BJQ.HTTPFLAVORVALUES_HTTP_2_0=BJQ.HTTPFLAVORVALUES_HTTP_1_1=BJQ.HTTPFLAVORVALUES_HTTP_1_0=BJQ.NetHostConnectionSubtypeValues=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_NR=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=BJQ.NetHostConnectionTypeValues=BJQ.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=BJQ.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=BJQ.NETHOSTCONNECTIONTYPEVALUES_CELL=BJQ.NETHOSTCONNECTIONTYPEVALUES_WIRED=BJQ.NETHOSTCONNECTIONTYPEVALUES_WIFI=BJQ.NetTransportValues=BJQ.NETTRANSPORTVALUES_OTHER=BJQ.NETTRANSPORTVALUES_INPROC=BJQ.NETTRANSPORTVALUES_PIPE=BJQ.NETTRANSPORTVALUES_UNIX=BJQ.NETTRANSPORTVALUES_IP=BJQ.NETTRANSPORTVALUES_IP_UDP=BJQ.NETTRANSPORTVALUES_IP_TCP=BJQ.FaasInvokedProviderValues=BJQ.FAASINVOKEDPROVIDERVALUES_GCP=BJQ.FAASINVOKEDPROVIDERVALUES_AZURE=BJQ.FAASINVOKEDPROVIDERVALUES_AWS=void 0;BJQ.MessageTypeValues=BJQ.MESSAGETYPEVALUES_RECEIVED=BJQ.MESSAGETYPEVALUES_SENT=BJQ.RpcGrpcStatusCodeValues=BJQ.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=BJQ.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=BJQ.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=BJQ.RPCGRPCSTATUSCODEVALUES_INTERNAL=BJQ.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=BJQ.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=BJQ.RPCGRPCSTATUSCODEVALUES_ABORTED=BJQ.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=BJQ.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=BJQ.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=BJQ.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=BJQ.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=BJQ.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=BJQ.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=BJQ.RPCGRPCSTATUSCODEVALUES_UNKNOWN=BJQ.RPCGRPCSTATUSCODEVALUES_CANCELLED=BJQ.RPCGRPCSTATUSCODEVALUES_OK=BJQ.MessagingOperationValues=BJQ.MESSAGINGOPERATIONVALUES_PROCESS=void 0;var i5=Ji(),EAQ="aws.lambda.invoked_arn",KAQ="db.system",VAQ="db.connection_string",IAQ="db.user",HAQ="db.jdbc.driver_classname",DAQ="db.name",NAQ="db.statement",LAQ="db.operation",qAQ="db.mssql.instance_name",MAQ="db.cassandra.keyspace",zAQ="db.cassandra.page_size",RAQ="db.cassandra.consistency_level",wAQ="db.cassandra.table",jAQ="db.cassandra.idempotence",OAQ="db.cassandra.speculative_execution_count",PAQ="db.cassandra.coordinator.id",TAQ="db.cassandra.coordinator.dc",SAQ="db.hbase.namespace",kAQ="db.redis.database_index",_AQ="db.mongodb.collection",vAQ="db.sql.table",yAQ="exception.type",gAQ="exception.message",hAQ="exception.stacktrace",xAQ="exception.escaped",fAQ="faas.trigger",bAQ="faas.execution",mAQ="faas.document.collection",uAQ="faas.document.operation",dAQ="faas.document.time",cAQ="faas.document.name",lAQ="faas.time",pAQ="faas.cron",iAQ="faas.coldstart",nAQ="faas.invoked_name",sAQ="faas.invoked_provider",rAQ="faas.invoked_region",aAQ="net.transport",oAQ="net.peer.ip",tAQ="net.peer.port",eAQ="net.peer.name",AQQ="net.host.ip",QQQ="net.host.port",BQQ="net.host.name",YQQ="net.host.connection.type",JQQ="net.host.connection.subtype",CQQ="net.host.carrier.name",XQQ="net.host.carrier.mcc",GQQ="net.host.carrier.mnc",WQQ="net.host.carrier.icc",FQQ="peer.service",ZQQ="enduser.id",$QQ="enduser.role",UQQ="enduser.scope",EQQ="thread.id",KQQ="thread.name",VQQ="code.function",IQQ="code.namespace",HQQ="code.filepath",DQQ="code.lineno",NQQ="http.method",LQQ="http.url",qQQ="http.target",MQQ="http.host",zQQ="http.scheme",RQQ="http.status_code",wQQ="http.flavor",jQQ="http.user_agent",OQQ="http.request_content_length",PQQ="http.request_content_length_uncompressed",TQQ="http.response_content_length",SQQ="http.response_content_length_uncompressed",kQQ="http.server_name",_QQ="http.route",vQQ="http.client_ip",yQQ="aws.dynamodb.table_names",gQQ="aws.dynamodb.consumed_capacity",hQQ="aws.dynamodb.item_collection_metrics",xQQ="aws.dynamodb.provisioned_read_capacity",fQQ="aws.dynamodb.provisioned_write_capacity",bQQ="aws.dynamodb.consistent_read",mQQ="aws.dynamodb.projection",uQQ="aws.dynamodb.limit",dQQ="aws.dynamodb.attributes_to_get",cQQ="aws.dynamodb.index_name",lQQ="aws.dynamodb.select",pQQ="aws.dynamodb.global_secondary_indexes",iQQ="aws.dynamodb.local_secondary_indexes",nQQ="aws.dynamodb.exclusive_start_table",sQQ="aws.dynamodb.table_count",rQQ="aws.dynamodb.scan_forward",aQQ="aws.dynamodb.segment",oQQ="aws.dynamodb.total_segments",tQQ="aws.dynamodb.count",eQQ="aws.dynamodb.scanned_count",ABQ="aws.dynamodb.attribute_definitions",QBQ="aws.dynamodb.global_secondary_index_updates",BBQ="messaging.system",YBQ="messaging.destination",JBQ="messaging.destination_kind",CBQ="messaging.temp_destination",XBQ="messaging.protocol",GBQ="messaging.protocol_version",WBQ="messaging.url",FBQ="messaging.message_id",ZBQ="messaging.conversation_id",$BQ="messaging.message_payload_size_bytes",UBQ="messaging.message_payload_compressed_size_bytes",EBQ="messaging.operation",KBQ="messaging.consumer_id",VBQ="messaging.rabbitmq.routing_key",IBQ="messaging.kafka.message_key",HBQ="messaging.kafka.consumer_group",DBQ="messaging.kafka.client_id",NBQ="messaging.kafka.partition",LBQ="messaging.kafka.tombstone",qBQ="rpc.system",MBQ="rpc.service",zBQ="rpc.method",RBQ="rpc.grpc.status_code",wBQ="rpc.jsonrpc.version",jBQ="rpc.jsonrpc.request_id",OBQ="rpc.jsonrpc.error_code",PBQ="rpc.jsonrpc.error_message",TBQ="message.type",SBQ="message.id",kBQ="message.compressed_size",_BQ="message.uncompressed_size";BJQ.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=EAQ;BJQ.SEMATTRS_DB_SYSTEM=KAQ;BJQ.SEMATTRS_DB_CONNECTION_STRING=VAQ;BJQ.SEMATTRS_DB_USER=IAQ;BJQ.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=HAQ;BJQ.SEMATTRS_DB_NAME=DAQ;BJQ.SEMATTRS_DB_STATEMENT=NAQ;BJQ.SEMATTRS_DB_OPERATION=LAQ;BJQ.SEMATTRS_DB_MSSQL_INSTANCE_NAME=qAQ;BJQ.SEMATTRS_DB_CASSANDRA_KEYSPACE=MAQ;BJQ.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=zAQ;BJQ.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=RAQ;BJQ.SEMATTRS_DB_CASSANDRA_TABLE=wAQ;BJQ.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=jAQ;BJQ.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=OAQ;BJQ.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=PAQ;BJQ.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=TAQ;BJQ.SEMATTRS_DB_HBASE_NAMESPACE=SAQ;BJQ.SEMATTRS_DB_REDIS_DATABASE_INDEX=kAQ;BJQ.SEMATTRS_DB_MONGODB_COLLECTION=_AQ;BJQ.SEMATTRS_DB_SQL_TABLE=vAQ;BJQ.SEMATTRS_EXCEPTION_TYPE=yAQ;BJQ.SEMATTRS_EXCEPTION_MESSAGE=gAQ;BJQ.SEMATTRS_EXCEPTION_STACKTRACE=hAQ;BJQ.SEMATTRS_EXCEPTION_ESCAPED=xAQ;BJQ.SEMATTRS_FAAS_TRIGGER=fAQ;BJQ.SEMATTRS_FAAS_EXECUTION=bAQ;BJQ.SEMATTRS_FAAS_DOCUMENT_COLLECTION=mAQ;BJQ.SEMATTRS_FAAS_DOCUMENT_OPERATION=uAQ;BJQ.SEMATTRS_FAAS_DOCUMENT_TIME=dAQ;BJQ.SEMATTRS_FAAS_DOCUMENT_NAME=cAQ;BJQ.SEMATTRS_FAAS_TIME=lAQ;BJQ.SEMATTRS_FAAS_CRON=pAQ;BJQ.SEMATTRS_FAAS_COLDSTART=iAQ;BJQ.SEMATTRS_FAAS_INVOKED_NAME=nAQ;BJQ.SEMATTRS_FAAS_INVOKED_PROVIDER=sAQ;BJQ.SEMATTRS_FAAS_INVOKED_REGION=rAQ;BJQ.SEMATTRS_NET_TRANSPORT=aAQ;BJQ.SEMATTRS_NET_PEER_IP=oAQ;BJQ.SEMATTRS_NET_PEER_PORT=tAQ;BJQ.SEMATTRS_NET_PEER_NAME=eAQ;BJQ.SEMATTRS_NET_HOST_IP=AQQ;BJQ.SEMATTRS_NET_HOST_PORT=QQQ;BJQ.SEMATTRS_NET_HOST_NAME=BQQ;BJQ.SEMATTRS_NET_HOST_CONNECTION_TYPE=YQQ;BJQ.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=JQQ;BJQ.SEMATTRS_NET_HOST_CARRIER_NAME=CQQ;BJQ.SEMATTRS_NET_HOST_CARRIER_MCC=XQQ;BJQ.SEMATTRS_NET_HOST_CARRIER_MNC=GQQ;BJQ.SEMATTRS_NET_HOST_CARRIER_ICC=WQQ;BJQ.SEMATTRS_PEER_SERVICE=FQQ;BJQ.SEMATTRS_ENDUSER_ID=ZQQ;BJQ.SEMATTRS_ENDUSER_ROLE=$QQ;BJQ.SEMATTRS_ENDUSER_SCOPE=UQQ;BJQ.SEMATTRS_THREAD_ID=EQQ;BJQ.SEMATTRS_THREAD_NAME=KQQ;BJQ.SEMATTRS_CODE_FUNCTION=VQQ;BJQ.SEMATTRS_CODE_NAMESPACE=IQQ;BJQ.SEMATTRS_CODE_FILEPATH=HQQ;BJQ.SEMATTRS_CODE_LINENO=DQQ;BJQ.SEMATTRS_HTTP_METHOD=NQQ;BJQ.SEMATTRS_HTTP_URL=LQQ;BJQ.SEMATTRS_HTTP_TARGET=qQQ;BJQ.SEMATTRS_HTTP_HOST=MQQ;BJQ.SEMATTRS_HTTP_SCHEME=zQQ;BJQ.SEMATTRS_HTTP_STATUS_CODE=RQQ;BJQ.SEMATTRS_HTTP_FLAVOR=wQQ;BJQ.SEMATTRS_HTTP_USER_AGENT=jQQ;BJQ.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=OQQ;BJQ.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=PQQ;BJQ.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=TQQ;BJQ.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=SQQ;BJQ.SEMATTRS_HTTP_SERVER_NAME=kQQ;BJQ.SEMATTRS_HTTP_ROUTE=_QQ;BJQ.SEMATTRS_HTTP_CLIENT_IP=vQQ;BJQ.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=yQQ;BJQ.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=gQQ;BJQ.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=hQQ;BJQ.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=xQQ;BJQ.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=fQQ;BJQ.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=bQQ;BJQ.SEMATTRS_AWS_DYNAMODB_PROJECTION=mQQ;BJQ.SEMATTRS_AWS_DYNAMODB_LIMIT=uQQ;BJQ.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=dQQ;BJQ.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=cQQ;BJQ.SEMATTRS_AWS_DYNAMODB_SELECT=lQQ;BJQ.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=pQQ;BJQ.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=iQQ;BJQ.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=nQQ;BJQ.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=sQQ;BJQ.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=rQQ;BJQ.SEMATTRS_AWS_DYNAMODB_SEGMENT=aQQ;BJQ.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=oQQ;BJQ.SEMATTRS_AWS_DYNAMODB_COUNT=tQQ;BJQ.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=eQQ;BJQ.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=ABQ;BJQ.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=QBQ;BJQ.SEMATTRS_MESSAGING_SYSTEM=BBQ;BJQ.SEMATTRS_MESSAGING_DESTINATION=YBQ;BJQ.SEMATTRS_MESSAGING_DESTINATION_KIND=JBQ;BJQ.SEMATTRS_MESSAGING_TEMP_DESTINATION=CBQ;BJQ.SEMATTRS_MESSAGING_PROTOCOL=XBQ;BJQ.SEMATTRS_MESSAGING_PROTOCOL_VERSION=GBQ;BJQ.SEMATTRS_MESSAGING_URL=WBQ;BJQ.SEMATTRS_MESSAGING_MESSAGE_ID=FBQ;BJQ.SEMATTRS_MESSAGING_CONVERSATION_ID=ZBQ;BJQ.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=$BQ;BJQ.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=UBQ;BJQ.SEMATTRS_MESSAGING_OPERATION=EBQ;BJQ.SEMATTRS_MESSAGING_CONSUMER_ID=KBQ;BJQ.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=VBQ;BJQ.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=IBQ;BJQ.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=HBQ;BJQ.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=DBQ;BJQ.SEMATTRS_MESSAGING_KAFKA_PARTITION=NBQ;BJQ.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=LBQ;BJQ.SEMATTRS_RPC_SYSTEM=qBQ;BJQ.SEMATTRS_RPC_SERVICE=MBQ;BJQ.SEMATTRS_RPC_METHOD=zBQ;BJQ.SEMATTRS_RPC_GRPC_STATUS_CODE=RBQ;BJQ.SEMATTRS_RPC_JSONRPC_VERSION=wBQ;BJQ.SEMATTRS_RPC_JSONRPC_REQUEST_ID=jBQ;BJQ.SEMATTRS_RPC_JSONRPC_ERROR_CODE=OBQ;BJQ.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=PBQ;BJQ.SEMATTRS_MESSAGE_TYPE=TBQ;BJQ.SEMATTRS_MESSAGE_ID=SBQ;BJQ.SEMATTRS_MESSAGE_COMPRESSED_SIZE=kBQ;BJQ.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=_BQ;BJQ.SemanticAttributes=(0,i5.createConstMap)([EAQ,KAQ,VAQ,IAQ,HAQ,DAQ,NAQ,LAQ,qAQ,MAQ,zAQ,RAQ,wAQ,jAQ,OAQ,PAQ,TAQ,SAQ,kAQ,_AQ,vAQ,yAQ,gAQ,hAQ,xAQ,fAQ,bAQ,mAQ,uAQ,dAQ,cAQ,lAQ,pAQ,iAQ,nAQ,sAQ,rAQ,aAQ,oAQ,tAQ,eAQ,AQQ,QQQ,BQQ,YQQ,JQQ,CQQ,XQQ,GQQ,WQQ,FQQ,ZQQ,$QQ,UQQ,EQQ,KQQ,VQQ,IQQ,HQQ,DQQ,NQQ,LQQ,qQQ,MQQ,zQQ,RQQ,wQQ,jQQ,OQQ,PQQ,TQQ,SQQ,kQQ,_QQ,vQQ,yQQ,gQQ,hQQ,xQQ,fQQ,bQQ,mQQ,uQQ,dQQ,cQQ,lQQ,pQQ,iQQ,nQQ,sQQ,rQQ,aQQ,oQQ,tQQ,eQQ,ABQ,QBQ,BBQ,YBQ,JBQ,CBQ,XBQ,GBQ,WBQ,FBQ,ZBQ,$BQ,UBQ,EBQ,KBQ,VBQ,IBQ,HBQ,DBQ,NBQ,LBQ,qBQ,MBQ,zBQ,RBQ,wBQ,jBQ,OBQ,PBQ,TBQ,SBQ,kBQ,_BQ]);var vBQ="other_sql",yBQ="mssql",gBQ="mysql",hBQ="oracle",xBQ="db2",fBQ="postgresql",bBQ="redshift",mBQ="hive",uBQ="cloudscape",dBQ="hsqldb",cBQ="progress",lBQ="maxdb",pBQ="hanadb",iBQ="ingres",nBQ="firstsql",sBQ="edb",rBQ="cache",aBQ="adabas",oBQ="firebird",tBQ="derby",eBQ="filemaker",A0Q="informix",Q0Q="instantdb",B0Q="interbase",Y0Q="mariadb",J0Q="netezza",C0Q="pervasive",X0Q="pointbase",G0Q="sqlite",W0Q="sybase",F0Q="teradata",Z0Q="vertica",$0Q="h2",U0Q="coldfusion",E0Q="cassandra",K0Q="hbase",V0Q="mongodb",I0Q="redis",H0Q="couchbase",D0Q="couchdb",N0Q="cosmosdb",L0Q="dynamodb",q0Q="neo4j",M0Q="geode",z0Q="elasticsearch",R0Q="memcached",w0Q="cockroachdb";BJQ.DBSYSTEMVALUES_OTHER_SQL=vBQ;BJQ.DBSYSTEMVALUES_MSSQL=yBQ;BJQ.DBSYSTEMVALUES_MYSQL=gBQ;BJQ.DBSYSTEMVALUES_ORACLE=hBQ;BJQ.DBSYSTEMVALUES_DB2=xBQ;BJQ.DBSYSTEMVALUES_POSTGRESQL=fBQ;BJQ.DBSYSTEMVALUES_REDSHIFT=bBQ;BJQ.DBSYSTEMVALUES_HIVE=mBQ;BJQ.DBSYSTEMVALUES_CLOUDSCAPE=uBQ;BJQ.DBSYSTEMVALUES_HSQLDB=dBQ;BJQ.DBSYSTEMVALUES_PROGRESS=cBQ;BJQ.DBSYSTEMVALUES_MAXDB=lBQ;BJQ.DBSYSTEMVALUES_HANADB=pBQ;BJQ.DBSYSTEMVALUES_INGRES=iBQ;BJQ.DBSYSTEMVALUES_FIRSTSQL=nBQ;BJQ.DBSYSTEMVALUES_EDB=sBQ;BJQ.DBSYSTEMVALUES_CACHE=rBQ;BJQ.DBSYSTEMVALUES_ADABAS=aBQ;BJQ.DBSYSTEMVALUES_FIREBIRD=oBQ;BJQ.DBSYSTEMVALUES_DERBY=tBQ;BJQ.DBSYSTEMVALUES_FILEMAKER=eBQ;BJQ.DBSYSTEMVALUES_INFORMIX=A0Q;BJQ.DBSYSTEMVALUES_INSTANTDB=Q0Q;BJQ.DBSYSTEMVALUES_INTERBASE=B0Q;BJQ.DBSYSTEMVALUES_MARIADB=Y0Q;BJQ.DBSYSTEMVALUES_NETEZZA=J0Q;BJQ.DBSYSTEMVALUES_PERVASIVE=C0Q;BJQ.DBSYSTEMVALUES_POINTBASE=X0Q;BJQ.DBSYSTEMVALUES_SQLITE=G0Q;BJQ.DBSYSTEMVALUES_SYBASE=W0Q;BJQ.DBSYSTEMVALUES_TERADATA=F0Q;BJQ.DBSYSTEMVALUES_VERTICA=Z0Q;BJQ.DBSYSTEMVALUES_H2=$0Q;BJQ.DBSYSTEMVALUES_COLDFUSION=U0Q;BJQ.DBSYSTEMVALUES_CASSANDRA=E0Q;BJQ.DBSYSTEMVALUES_HBASE=K0Q;BJQ.DBSYSTEMVALUES_MONGODB=V0Q;BJQ.DBSYSTEMVALUES_REDIS=I0Q;BJQ.DBSYSTEMVALUES_COUCHBASE=H0Q;BJQ.DBSYSTEMVALUES_COUCHDB=D0Q;BJQ.DBSYSTEMVALUES_COSMOSDB=N0Q;BJQ.DBSYSTEMVALUES_DYNAMODB=L0Q;BJQ.DBSYSTEMVALUES_NEO4J=q0Q;BJQ.DBSYSTEMVALUES_GEODE=M0Q;BJQ.DBSYSTEMVALUES_ELASTICSEARCH=z0Q;BJQ.DBSYSTEMVALUES_MEMCACHED=R0Q;BJQ.DBSYSTEMVALUES_COCKROACHDB=w0Q;BJQ.DbSystemValues=(0,i5.createConstMap)([vBQ,yBQ,gBQ,hBQ,xBQ,fBQ,bBQ,mBQ,uBQ,dBQ,cBQ,lBQ,pBQ,iBQ,nBQ,sBQ,rBQ,aBQ,oBQ,tBQ,eBQ,A0Q,Q0Q,B0Q,Y0Q,J0Q,C0Q,X0Q,G0Q,W0Q,F0Q,Z0Q,$0Q,U0Q,E0Q,K0Q,V0Q,I0Q,H0Q,D0Q,N0Q,L0Q,q0Q,M0Q,z0Q,R0Q,w0Q]);var j0Q="all",O0Q="each_quorum",P0Q="quorum",T0Q="local_quorum",S0Q="one",k0Q="two",_0Q="three",v0Q="local_one",y0Q="any",g0Q="serial",h0Q="local_serial";BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=j0Q;BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=O0Q;BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=P0Q;BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=T0Q;BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=S0Q;BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=k0Q;BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=_0Q;BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=v0Q;BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=y0Q;BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=g0Q;BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=h0Q;BJQ.DbCassandraConsistencyLevelValues=(0,i5.createConstMap)([j0Q,O0Q,P0Q,T0Q,S0Q,k0Q,_0Q,v0Q,y0Q,g0Q,h0Q]);var x0Q="datasource",f0Q="http",b0Q="pubsub",m0Q="timer",u0Q="other";BJQ.FAASTRIGGERVALUES_DATASOURCE=x0Q;BJQ.FAASTRIGGERVALUES_HTTP=f0Q;BJQ.FAASTRIGGERVALUES_PUBSUB=b0Q;BJQ.FAASTRIGGERVALUES_TIMER=m0Q;BJQ.FAASTRIGGERVALUES_OTHER=u0Q;BJQ.FaasTriggerValues=(0,i5.createConstMap)([x0Q,f0Q,b0Q,m0Q,u0Q]);var d0Q="insert",c0Q="edit",l0Q="delete";BJQ.FAASDOCUMENTOPERATIONVALUES_INSERT=d0Q;BJQ.FAASDOCUMENTOPERATIONVALUES_EDIT=c0Q;BJQ.FAASDOCUMENTOPERATIONVALUES_DELETE=l0Q;BJQ.FaasDocumentOperationValues=(0,i5.createConstMap)([d0Q,c0Q,l0Q]);var p0Q="alibaba_cloud",i0Q="aws",n0Q="azure",s0Q="gcp";BJQ.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=p0Q;BJQ.FAASINVOKEDPROVIDERVALUES_AWS=i0Q;BJQ.FAASINVOKEDPROVIDERVALUES_AZURE=n0Q;BJQ.FAASINVOKEDPROVIDERVALUES_GCP=s0Q;BJQ.FaasInvokedProviderValues=(0,i5.createConstMap)([p0Q,i0Q,n0Q,s0Q]);var r0Q="ip_tcp",a0Q="ip_udp",o0Q="ip",t0Q="unix",e0Q="pipe",AYQ="inproc",QYQ="other";BJQ.NETTRANSPORTVALUES_IP_TCP=r0Q;BJQ.NETTRANSPORTVALUES_IP_UDP=a0Q;BJQ.NETTRANSPORTVALUES_IP=o0Q;BJQ.NETTRANSPORTVALUES_UNIX=t0Q;BJQ.NETTRANSPORTVALUES_PIPE=e0Q;BJQ.NETTRANSPORTVALUES_INPROC=AYQ;BJQ.NETTRANSPORTVALUES_OTHER=QYQ;BJQ.NetTransportValues=(0,i5.createConstMap)([r0Q,a0Q,o0Q,t0Q,e0Q,AYQ,QYQ]);var BYQ="wifi",YYQ="wired",JYQ="cell",CYQ="unavailable",XYQ="unknown";BJQ.NETHOSTCONNECTIONTYPEVALUES_WIFI=BYQ;BJQ.NETHOSTCONNECTIONTYPEVALUES_WIRED=YYQ;BJQ.NETHOSTCONNECTIONTYPEVALUES_CELL=JYQ;BJQ.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=CYQ;BJQ.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=XYQ;BJQ.NetHostConnectionTypeValues=(0,i5.createConstMap)([BYQ,YYQ,JYQ,CYQ,XYQ]);var GYQ="gprs",WYQ="edge",FYQ="umts",ZYQ="cdma",$YQ="evdo_0",UYQ="evdo_a",EYQ="cdma2000_1xrtt",KYQ="hsdpa",VYQ="hsupa",IYQ="hspa",HYQ="iden",DYQ="evdo_b",NYQ="lte",LYQ="ehrpd",qYQ="hspap",MYQ="gsm",zYQ="td_scdma",RYQ="iwlan",wYQ="nr",jYQ="nrnsa",OYQ="lte_ca";BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=GYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=WYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=FYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=ZYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=$YQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=UYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=EYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=KYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=VYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=IYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=HYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=DYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=NYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=LYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=qYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=MYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=zYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=RYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_NR=wYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=jYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=OYQ;BJQ.NetHostConnectionSubtypeValues=(0,i5.createConstMap)([GYQ,WYQ,FYQ,ZYQ,$YQ,UYQ,EYQ,KYQ,VYQ,IYQ,HYQ,DYQ,NYQ,LYQ,qYQ,MYQ,zYQ,RYQ,wYQ,jYQ,OYQ]);var PYQ="1.0",TYQ="1.1",SYQ="2.0",kYQ="SPDY",_YQ="QUIC";BJQ.HTTPFLAVORVALUES_HTTP_1_0=PYQ;BJQ.HTTPFLAVORVALUES_HTTP_1_1=TYQ;BJQ.HTTPFLAVORVALUES_HTTP_2_0=SYQ;BJQ.HTTPFLAVORVALUES_SPDY=kYQ;BJQ.HTTPFLAVORVALUES_QUIC=_YQ;BJQ.HttpFlavorValues={HTTP_1_0:PYQ,HTTP_1_1:TYQ,HTTP_2_0:SYQ,SPDY:kYQ,QUIC:_YQ};var vYQ="queue",yYQ="topic";BJQ.MESSAGINGDESTINATIONKINDVALUES_QUEUE=vYQ;BJQ.MESSAGINGDESTINATIONKINDVALUES_TOPIC=yYQ;BJQ.MessagingDestinationKindValues=(0,i5.createConstMap)([vYQ,yYQ]);var gYQ="receive",hYQ="process";BJQ.MESSAGINGOPERATIONVALUES_RECEIVE=gYQ;BJQ.MESSAGINGOPERATIONVALUES_PROCESS=hYQ;BJQ.MessagingOperationValues=(0,i5.createConstMap)([gYQ,hYQ]);var xYQ=0,fYQ=1,bYQ=2,mYQ=3,uYQ=4,dYQ=5,cYQ=6,lYQ=7,pYQ=8,iYQ=9,nYQ=10,sYQ=11,rYQ=12,aYQ=13,oYQ=14,tYQ=15,eYQ=16;BJQ.RPCGRPCSTATUSCODEVALUES_OK=xYQ;BJQ.RPCGRPCSTATUSCODEVALUES_CANCELLED=fYQ;BJQ.RPCGRPCSTATUSCODEVALUES_UNKNOWN=bYQ;BJQ.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=mYQ;BJQ.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=uYQ;BJQ.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=dYQ;BJQ.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=cYQ;BJQ.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=lYQ;BJQ.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=pYQ;BJQ.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=iYQ;BJQ.RPCGRPCSTATUSCODEVALUES_ABORTED=nYQ;BJQ.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=sYQ;BJQ.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=rYQ;BJQ.RPCGRPCSTATUSCODEVALUES_INTERNAL=aYQ;BJQ.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=oYQ;BJQ.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=tYQ;BJQ.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=eYQ;BJQ.RpcGrpcStatusCodeValues={OK:xYQ,CANCELLED:fYQ,UNKNOWN:bYQ,INVALID_ARGUMENT:mYQ,DEADLINE_EXCEEDED:uYQ,NOT_FOUND:dYQ,ALREADY_EXISTS:cYQ,PERMISSION_DENIED:lYQ,RESOURCE_EXHAUSTED:pYQ,FAILED_PRECONDITION:iYQ,ABORTED:nYQ,OUT_OF_RANGE:sYQ,UNIMPLEMENTED:rYQ,INTERNAL:aYQ,UNAVAILABLE:oYQ,DATA_LOSS:tYQ,UNAUTHENTICATED:eYQ};var AJQ="SENT",QJQ="RECEIVED";BJQ.MESSAGETYPEVALUES_SENT=AJQ;BJQ.MESSAGETYPEVALUES_RECEIVED=QJQ;BJQ.MessageTypeValues=(0,i5.createConstMap)([AJQ,QJQ])});var ZJQ=R((K$)=>{var a80=K$&&K$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),o80=K$&&K$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))a80(Q,A,B)};Object.defineProperty(K$,"__esModule",{value:!0});o80(FJQ(),K$)});var b8Q=R((g8Q)=>{Object.defineProperty(g8Q,"__esModule",{value:!0});g8Q.SEMRESATTRS_K8S_STATEFULSET_NAME=g8Q.SEMRESATTRS_K8S_STATEFULSET_UID=g8Q.SEMRESATTRS_K8S_DEPLOYMENT_NAME=g8Q.SEMRESATTRS_K8S_DEPLOYMENT_UID=g8Q.SEMRESATTRS_K8S_REPLICASET_NAME=g8Q.SEMRESATTRS_K8S_REPLICASET_UID=g8Q.SEMRESATTRS_K8S_CONTAINER_NAME=g8Q.SEMRESATTRS_K8S_POD_NAME=g8Q.SEMRESATTRS_K8S_POD_UID=g8Q.SEMRESATTRS_K8S_NAMESPACE_NAME=g8Q.SEMRESATTRS_K8S_NODE_UID=g8Q.SEMRESATTRS_K8S_NODE_NAME=g8Q.SEMRESATTRS_K8S_CLUSTER_NAME=g8Q.SEMRESATTRS_HOST_IMAGE_VERSION=g8Q.SEMRESATTRS_HOST_IMAGE_ID=g8Q.SEMRESATTRS_HOST_IMAGE_NAME=g8Q.SEMRESATTRS_HOST_ARCH=g8Q.SEMRESATTRS_HOST_TYPE=g8Q.SEMRESATTRS_HOST_NAME=g8Q.SEMRESATTRS_HOST_ID=g8Q.SEMRESATTRS_FAAS_MAX_MEMORY=g8Q.SEMRESATTRS_FAAS_INSTANCE=g8Q.SEMRESATTRS_FAAS_VERSION=g8Q.SEMRESATTRS_FAAS_ID=g8Q.SEMRESATTRS_FAAS_NAME=g8Q.SEMRESATTRS_DEVICE_MODEL_NAME=g8Q.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=g8Q.SEMRESATTRS_DEVICE_ID=g8Q.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=g8Q.SEMRESATTRS_CONTAINER_IMAGE_TAG=g8Q.SEMRESATTRS_CONTAINER_IMAGE_NAME=g8Q.SEMRESATTRS_CONTAINER_RUNTIME=g8Q.SEMRESATTRS_CONTAINER_ID=g8Q.SEMRESATTRS_CONTAINER_NAME=g8Q.SEMRESATTRS_AWS_LOG_STREAM_ARNS=g8Q.SEMRESATTRS_AWS_LOG_STREAM_NAMES=g8Q.SEMRESATTRS_AWS_LOG_GROUP_ARNS=g8Q.SEMRESATTRS_AWS_LOG_GROUP_NAMES=g8Q.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=g8Q.SEMRESATTRS_AWS_ECS_TASK_REVISION=g8Q.SEMRESATTRS_AWS_ECS_TASK_FAMILY=g8Q.SEMRESATTRS_AWS_ECS_TASK_ARN=g8Q.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=g8Q.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=g8Q.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=g8Q.SEMRESATTRS_CLOUD_PLATFORM=g8Q.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=g8Q.SEMRESATTRS_CLOUD_REGION=g8Q.SEMRESATTRS_CLOUD_ACCOUNT_ID=g8Q.SEMRESATTRS_CLOUD_PROVIDER=void 0;g8Q.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=g8Q.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=g8Q.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=g8Q.CLOUDPLATFORMVALUES_AZURE_AKS=g8Q.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=g8Q.CLOUDPLATFORMVALUES_AZURE_VM=g8Q.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=g8Q.CLOUDPLATFORMVALUES_AWS_LAMBDA=g8Q.CLOUDPLATFORMVALUES_AWS_EKS=g8Q.CLOUDPLATFORMVALUES_AWS_ECS=g8Q.CLOUDPLATFORMVALUES_AWS_EC2=g8Q.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=g8Q.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=g8Q.CloudProviderValues=g8Q.CLOUDPROVIDERVALUES_GCP=g8Q.CLOUDPROVIDERVALUES_AZURE=g8Q.CLOUDPROVIDERVALUES_AWS=g8Q.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=g8Q.SemanticResourceAttributes=g8Q.SEMRESATTRS_WEBENGINE_DESCRIPTION=g8Q.SEMRESATTRS_WEBENGINE_VERSION=g8Q.SEMRESATTRS_WEBENGINE_NAME=g8Q.SEMRESATTRS_TELEMETRY_AUTO_VERSION=g8Q.SEMRESATTRS_TELEMETRY_SDK_VERSION=g8Q.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=g8Q.SEMRESATTRS_TELEMETRY_SDK_NAME=g8Q.SEMRESATTRS_SERVICE_VERSION=g8Q.SEMRESATTRS_SERVICE_INSTANCE_ID=g8Q.SEMRESATTRS_SERVICE_NAMESPACE=g8Q.SEMRESATTRS_SERVICE_NAME=g8Q.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=g8Q.SEMRESATTRS_PROCESS_RUNTIME_VERSION=g8Q.SEMRESATTRS_PROCESS_RUNTIME_NAME=g8Q.SEMRESATTRS_PROCESS_OWNER=g8Q.SEMRESATTRS_PROCESS_COMMAND_ARGS=g8Q.SEMRESATTRS_PROCESS_COMMAND_LINE=g8Q.SEMRESATTRS_PROCESS_COMMAND=g8Q.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=g8Q.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=g8Q.SEMRESATTRS_PROCESS_PID=g8Q.SEMRESATTRS_OS_VERSION=g8Q.SEMRESATTRS_OS_NAME=g8Q.SEMRESATTRS_OS_DESCRIPTION=g8Q.SEMRESATTRS_OS_TYPE=g8Q.SEMRESATTRS_K8S_CRONJOB_NAME=g8Q.SEMRESATTRS_K8S_CRONJOB_UID=g8Q.SEMRESATTRS_K8S_JOB_NAME=g8Q.SEMRESATTRS_K8S_JOB_UID=g8Q.SEMRESATTRS_K8S_DAEMONSET_NAME=g8Q.SEMRESATTRS_K8S_DAEMONSET_UID=void 0;g8Q.TelemetrySdkLanguageValues=g8Q.TELEMETRYSDKLANGUAGEVALUES_WEBJS=g8Q.TELEMETRYSDKLANGUAGEVALUES_RUBY=g8Q.TELEMETRYSDKLANGUAGEVALUES_PYTHON=g8Q.TELEMETRYSDKLANGUAGEVALUES_PHP=g8Q.TELEMETRYSDKLANGUAGEVALUES_NODEJS=g8Q.TELEMETRYSDKLANGUAGEVALUES_JAVA=g8Q.TELEMETRYSDKLANGUAGEVALUES_GO=g8Q.TELEMETRYSDKLANGUAGEVALUES_ERLANG=g8Q.TELEMETRYSDKLANGUAGEVALUES_DOTNET=g8Q.TELEMETRYSDKLANGUAGEVALUES_CPP=g8Q.OsTypeValues=g8Q.OSTYPEVALUES_Z_OS=g8Q.OSTYPEVALUES_SOLARIS=g8Q.OSTYPEVALUES_AIX=g8Q.OSTYPEVALUES_HPUX=g8Q.OSTYPEVALUES_DRAGONFLYBSD=g8Q.OSTYPEVALUES_OPENBSD=g8Q.OSTYPEVALUES_NETBSD=g8Q.OSTYPEVALUES_FREEBSD=g8Q.OSTYPEVALUES_DARWIN=g8Q.OSTYPEVALUES_LINUX=g8Q.OSTYPEVALUES_WINDOWS=g8Q.HostArchValues=g8Q.HOSTARCHVALUES_X86=g8Q.HOSTARCHVALUES_PPC64=g8Q.HOSTARCHVALUES_PPC32=g8Q.HOSTARCHVALUES_IA64=g8Q.HOSTARCHVALUES_ARM64=g8Q.HOSTARCHVALUES_ARM32=g8Q.HOSTARCHVALUES_AMD64=g8Q.AwsEcsLaunchtypeValues=g8Q.AWSECSLAUNCHTYPEVALUES_FARGATE=g8Q.AWSECSLAUNCHTYPEVALUES_EC2=g8Q.CloudPlatformValues=g8Q.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=g8Q.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=g8Q.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=g8Q.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=void 0;var V$=Ji(),$JQ="cloud.provider",UJQ="cloud.account.id",EJQ="cloud.region",KJQ="cloud.availability_zone",VJQ="cloud.platform",IJQ="aws.ecs.container.arn",HJQ="aws.ecs.cluster.arn",DJQ="aws.ecs.launchtype",NJQ="aws.ecs.task.arn",LJQ="aws.ecs.task.family",qJQ="aws.ecs.task.revision",MJQ="aws.eks.cluster.arn",zJQ="aws.log.group.names",RJQ="aws.log.group.arns",wJQ="aws.log.stream.names",jJQ="aws.log.stream.arns",OJQ="container.name",PJQ="container.id",TJQ="container.runtime",SJQ="container.image.name",kJQ="container.image.tag",_JQ="deployment.environment",vJQ="device.id",yJQ="device.model.identifier",gJQ="device.model.name",hJQ="faas.name",xJQ="faas.id",fJQ="faas.version",bJQ="faas.instance",mJQ="faas.max_memory",uJQ="host.id",dJQ="host.name",cJQ="host.type",lJQ="host.arch",pJQ="host.image.name",iJQ="host.image.id",nJQ="host.image.version",sJQ="k8s.cluster.name",rJQ="k8s.node.name",aJQ="k8s.node.uid",oJQ="k8s.namespace.name",tJQ="k8s.pod.uid",eJQ="k8s.pod.name",A9Q="k8s.container.name",Q9Q="k8s.replicaset.uid",B9Q="k8s.replicaset.name",Y9Q="k8s.deployment.uid",J9Q="k8s.deployment.name",C9Q="k8s.statefulset.uid",X9Q="k8s.statefulset.name",G9Q="k8s.daemonset.uid",W9Q="k8s.daemonset.name",F9Q="k8s.job.uid",Z9Q="k8s.job.name",$9Q="k8s.cronjob.uid",U9Q="k8s.cronjob.name",E9Q="os.type",K9Q="os.description",V9Q="os.name",I9Q="os.version",H9Q="process.pid",D9Q="process.executable.name",N9Q="process.executable.path",L9Q="process.command",q9Q="process.command_line",M9Q="process.command_args",z9Q="process.owner",R9Q="process.runtime.name",w9Q="process.runtime.version",j9Q="process.runtime.description",O9Q="service.name",P9Q="service.namespace",T9Q="service.instance.id",S9Q="service.version",k9Q="telemetry.sdk.name",_9Q="telemetry.sdk.language",v9Q="telemetry.sdk.version",y9Q="telemetry.auto.version",g9Q="webengine.name",h9Q="webengine.version",x9Q="webengine.description";g8Q.SEMRESATTRS_CLOUD_PROVIDER=$JQ;g8Q.SEMRESATTRS_CLOUD_ACCOUNT_ID=UJQ;g8Q.SEMRESATTRS_CLOUD_REGION=EJQ;g8Q.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=KJQ;g8Q.SEMRESATTRS_CLOUD_PLATFORM=VJQ;g8Q.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=IJQ;g8Q.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=HJQ;g8Q.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=DJQ;g8Q.SEMRESATTRS_AWS_ECS_TASK_ARN=NJQ;g8Q.SEMRESATTRS_AWS_ECS_TASK_FAMILY=LJQ;g8Q.SEMRESATTRS_AWS_ECS_TASK_REVISION=qJQ;g8Q.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=MJQ;g8Q.SEMRESATTRS_AWS_LOG_GROUP_NAMES=zJQ;g8Q.SEMRESATTRS_AWS_LOG_GROUP_ARNS=RJQ;g8Q.SEMRESATTRS_AWS_LOG_STREAM_NAMES=wJQ;g8Q.SEMRESATTRS_AWS_LOG_STREAM_ARNS=jJQ;g8Q.SEMRESATTRS_CONTAINER_NAME=OJQ;g8Q.SEMRESATTRS_CONTAINER_ID=PJQ;g8Q.SEMRESATTRS_CONTAINER_RUNTIME=TJQ;g8Q.SEMRESATTRS_CONTAINER_IMAGE_NAME=SJQ;g8Q.SEMRESATTRS_CONTAINER_IMAGE_TAG=kJQ;g8Q.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=_JQ;g8Q.SEMRESATTRS_DEVICE_ID=vJQ;g8Q.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=yJQ;g8Q.SEMRESATTRS_DEVICE_MODEL_NAME=gJQ;g8Q.SEMRESATTRS_FAAS_NAME=hJQ;g8Q.SEMRESATTRS_FAAS_ID=xJQ;g8Q.SEMRESATTRS_FAAS_VERSION=fJQ;g8Q.SEMRESATTRS_FAAS_INSTANCE=bJQ;g8Q.SEMRESATTRS_FAAS_MAX_MEMORY=mJQ;g8Q.SEMRESATTRS_HOST_ID=uJQ;g8Q.SEMRESATTRS_HOST_NAME=dJQ;g8Q.SEMRESATTRS_HOST_TYPE=cJQ;g8Q.SEMRESATTRS_HOST_ARCH=lJQ;g8Q.SEMRESATTRS_HOST_IMAGE_NAME=pJQ;g8Q.SEMRESATTRS_HOST_IMAGE_ID=iJQ;g8Q.SEMRESATTRS_HOST_IMAGE_VERSION=nJQ;g8Q.SEMRESATTRS_K8S_CLUSTER_NAME=sJQ;g8Q.SEMRESATTRS_K8S_NODE_NAME=rJQ;g8Q.SEMRESATTRS_K8S_NODE_UID=aJQ;g8Q.SEMRESATTRS_K8S_NAMESPACE_NAME=oJQ;g8Q.SEMRESATTRS_K8S_POD_UID=tJQ;g8Q.SEMRESATTRS_K8S_POD_NAME=eJQ;g8Q.SEMRESATTRS_K8S_CONTAINER_NAME=A9Q;g8Q.SEMRESATTRS_K8S_REPLICASET_UID=Q9Q;g8Q.SEMRESATTRS_K8S_REPLICASET_NAME=B9Q;g8Q.SEMRESATTRS_K8S_DEPLOYMENT_UID=Y9Q;g8Q.SEMRESATTRS_K8S_DEPLOYMENT_NAME=J9Q;g8Q.SEMRESATTRS_K8S_STATEFULSET_UID=C9Q;g8Q.SEMRESATTRS_K8S_STATEFULSET_NAME=X9Q;g8Q.SEMRESATTRS_K8S_DAEMONSET_UID=G9Q;g8Q.SEMRESATTRS_K8S_DAEMONSET_NAME=W9Q;g8Q.SEMRESATTRS_K8S_JOB_UID=F9Q;g8Q.SEMRESATTRS_K8S_JOB_NAME=Z9Q;g8Q.SEMRESATTRS_K8S_CRONJOB_UID=$9Q;g8Q.SEMRESATTRS_K8S_CRONJOB_NAME=U9Q;g8Q.SEMRESATTRS_OS_TYPE=E9Q;g8Q.SEMRESATTRS_OS_DESCRIPTION=K9Q;g8Q.SEMRESATTRS_OS_NAME=V9Q;g8Q.SEMRESATTRS_OS_VERSION=I9Q;g8Q.SEMRESATTRS_PROCESS_PID=H9Q;g8Q.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=D9Q;g8Q.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=N9Q;g8Q.SEMRESATTRS_PROCESS_COMMAND=L9Q;g8Q.SEMRESATTRS_PROCESS_COMMAND_LINE=q9Q;g8Q.SEMRESATTRS_PROCESS_COMMAND_ARGS=M9Q;g8Q.SEMRESATTRS_PROCESS_OWNER=z9Q;g8Q.SEMRESATTRS_PROCESS_RUNTIME_NAME=R9Q;g8Q.SEMRESATTRS_PROCESS_RUNTIME_VERSION=w9Q;g8Q.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=j9Q;g8Q.SEMRESATTRS_SERVICE_NAME=O9Q;g8Q.SEMRESATTRS_SERVICE_NAMESPACE=P9Q;g8Q.SEMRESATTRS_SERVICE_INSTANCE_ID=T9Q;g8Q.SEMRESATTRS_SERVICE_VERSION=S9Q;g8Q.SEMRESATTRS_TELEMETRY_SDK_NAME=k9Q;g8Q.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=_9Q;g8Q.SEMRESATTRS_TELEMETRY_SDK_VERSION=v9Q;g8Q.SEMRESATTRS_TELEMETRY_AUTO_VERSION=y9Q;g8Q.SEMRESATTRS_WEBENGINE_NAME=g9Q;g8Q.SEMRESATTRS_WEBENGINE_VERSION=h9Q;g8Q.SEMRESATTRS_WEBENGINE_DESCRIPTION=x9Q;g8Q.SemanticResourceAttributes=(0,V$.createConstMap)([$JQ,UJQ,EJQ,KJQ,VJQ,IJQ,HJQ,DJQ,NJQ,LJQ,qJQ,MJQ,zJQ,RJQ,wJQ,jJQ,OJQ,PJQ,TJQ,SJQ,kJQ,_JQ,vJQ,yJQ,gJQ,hJQ,xJQ,fJQ,bJQ,mJQ,uJQ,dJQ,cJQ,lJQ,pJQ,iJQ,nJQ,sJQ,rJQ,aJQ,oJQ,tJQ,eJQ,A9Q,Q9Q,B9Q,Y9Q,J9Q,C9Q,X9Q,G9Q,W9Q,F9Q,Z9Q,$9Q,U9Q,E9Q,K9Q,V9Q,I9Q,H9Q,D9Q,N9Q,L9Q,q9Q,M9Q,z9Q,R9Q,w9Q,j9Q,O9Q,P9Q,T9Q,S9Q,k9Q,_9Q,v9Q,y9Q,g9Q,h9Q,x9Q]);var f9Q="alibaba_cloud",b9Q="aws",m9Q="azure",u9Q="gcp";g8Q.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=f9Q;g8Q.CLOUDPROVIDERVALUES_AWS=b9Q;g8Q.CLOUDPROVIDERVALUES_AZURE=m9Q;g8Q.CLOUDPROVIDERVALUES_GCP=u9Q;g8Q.CloudProviderValues=(0,V$.createConstMap)([f9Q,b9Q,m9Q,u9Q]);var d9Q="alibaba_cloud_ecs",c9Q="alibaba_cloud_fc",l9Q="aws_ec2",p9Q="aws_ecs",i9Q="aws_eks",n9Q="aws_lambda",s9Q="aws_elastic_beanstalk",r9Q="azure_vm",a9Q="azure_container_instances",o9Q="azure_aks",t9Q="azure_functions",e9Q="azure_app_service",A8Q="gcp_compute_engine",Q8Q="gcp_cloud_run",B8Q="gcp_kubernetes_engine",Y8Q="gcp_cloud_functions",J8Q="gcp_app_engine";g8Q.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=d9Q;g8Q.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=c9Q;g8Q.CLOUDPLATFORMVALUES_AWS_EC2=l9Q;g8Q.CLOUDPLATFORMVALUES_AWS_ECS=p9Q;g8Q.CLOUDPLATFORMVALUES_AWS_EKS=i9Q;g8Q.CLOUDPLATFORMVALUES_AWS_LAMBDA=n9Q;g8Q.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=s9Q;g8Q.CLOUDPLATFORMVALUES_AZURE_VM=r9Q;g8Q.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=a9Q;g8Q.CLOUDPLATFORMVALUES_AZURE_AKS=o9Q;g8Q.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=t9Q;g8Q.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=e9Q;g8Q.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=A8Q;g8Q.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=Q8Q;g8Q.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=B8Q;g8Q.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=Y8Q;g8Q.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=J8Q;g8Q.CloudPlatformValues=(0,V$.createConstMap)([d9Q,c9Q,l9Q,p9Q,i9Q,n9Q,s9Q,r9Q,a9Q,o9Q,t9Q,e9Q,A8Q,Q8Q,B8Q,Y8Q,J8Q]);var C8Q="ec2",X8Q="fargate";g8Q.AWSECSLAUNCHTYPEVALUES_EC2=C8Q;g8Q.AWSECSLAUNCHTYPEVALUES_FARGATE=X8Q;g8Q.AwsEcsLaunchtypeValues=(0,V$.createConstMap)([C8Q,X8Q]);var G8Q="amd64",W8Q="arm32",F8Q="arm64",Z8Q="ia64",$8Q="ppc32",U8Q="ppc64",E8Q="x86";g8Q.HOSTARCHVALUES_AMD64=G8Q;g8Q.HOSTARCHVALUES_ARM32=W8Q;g8Q.HOSTARCHVALUES_ARM64=F8Q;g8Q.HOSTARCHVALUES_IA64=Z8Q;g8Q.HOSTARCHVALUES_PPC32=$8Q;g8Q.HOSTARCHVALUES_PPC64=U8Q;g8Q.HOSTARCHVALUES_X86=E8Q;g8Q.HostArchValues=(0,V$.createConstMap)([G8Q,W8Q,F8Q,Z8Q,$8Q,U8Q,E8Q]);var K8Q="windows",V8Q="linux",I8Q="darwin",H8Q="freebsd",D8Q="netbsd",N8Q="openbsd",L8Q="dragonflybsd",q8Q="hpux",M8Q="aix",z8Q="solaris",R8Q="z_os";g8Q.OSTYPEVALUES_WINDOWS=K8Q;g8Q.OSTYPEVALUES_LINUX=V8Q;g8Q.OSTYPEVALUES_DARWIN=I8Q;g8Q.OSTYPEVALUES_FREEBSD=H8Q;g8Q.OSTYPEVALUES_NETBSD=D8Q;g8Q.OSTYPEVALUES_OPENBSD=N8Q;g8Q.OSTYPEVALUES_DRAGONFLYBSD=L8Q;g8Q.OSTYPEVALUES_HPUX=q8Q;g8Q.OSTYPEVALUES_AIX=M8Q;g8Q.OSTYPEVALUES_SOLARIS=z8Q;g8Q.OSTYPEVALUES_Z_OS=R8Q;g8Q.OsTypeValues=(0,V$.createConstMap)([K8Q,V8Q,I8Q,H8Q,D8Q,N8Q,L8Q,q8Q,M8Q,z8Q,R8Q]);var w8Q="cpp",j8Q="dotnet",O8Q="erlang",P8Q="go",T8Q="java",S8Q="nodejs",k8Q="php",_8Q="python",v8Q="ruby",y8Q="webjs";g8Q.TELEMETRYSDKLANGUAGEVALUES_CPP=w8Q;g8Q.TELEMETRYSDKLANGUAGEVALUES_DOTNET=j8Q;g8Q.TELEMETRYSDKLANGUAGEVALUES_ERLANG=O8Q;g8Q.TELEMETRYSDKLANGUAGEVALUES_GO=P8Q;g8Q.TELEMETRYSDKLANGUAGEVALUES_JAVA=T8Q;g8Q.TELEMETRYSDKLANGUAGEVALUES_NODEJS=S8Q;g8Q.TELEMETRYSDKLANGUAGEVALUES_PHP=k8Q;g8Q.TELEMETRYSDKLANGUAGEVALUES_PYTHON=_8Q;g8Q.TELEMETRYSDKLANGUAGEVALUES_RUBY=v8Q;g8Q.TELEMETRYSDKLANGUAGEVALUES_WEBJS=y8Q;g8Q.TelemetrySdkLanguageValues=(0,V$.createConstMap)([w8Q,j8Q,O8Q,P8Q,T8Q,S8Q,k8Q,_8Q,v8Q,y8Q])});var m8Q=R((I$)=>{var j10=I$&&I$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),O10=I$&&I$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))j10(Q,A,B)};Object.defineProperty(I$,"__esModule",{value:!0});O10(b8Q(),I$)});var p8Q=R((u8Q)=>{Object.defineProperty(u8Q,"__esModule",{value:!0});u8Q.HTTP_REQUEST_METHOD_VALUE_POST=u8Q.HTTP_REQUEST_METHOD_VALUE_PATCH=u8Q.HTTP_REQUEST_METHOD_VALUE_OPTIONS=u8Q.HTTP_REQUEST_METHOD_VALUE_HEAD=u8Q.HTTP_REQUEST_METHOD_VALUE_GET=u8Q.HTTP_REQUEST_METHOD_VALUE_DELETE=u8Q.HTTP_REQUEST_METHOD_VALUE_CONNECT=u8Q.HTTP_REQUEST_METHOD_VALUE_OTHER=u8Q.ATTR_HTTP_REQUEST_METHOD=u8Q.ATTR_HTTP_REQUEST_HEADER=u8Q.ATTR_EXCEPTION_TYPE=u8Q.ATTR_EXCEPTION_STACKTRACE=u8Q.ATTR_EXCEPTION_MESSAGE=u8Q.ATTR_EXCEPTION_ESCAPED=u8Q.ERROR_TYPE_VALUE_OTHER=u8Q.ATTR_ERROR_TYPE=u8Q.ATTR_CLIENT_PORT=u8Q.ATTR_CLIENT_ADDRESS=u8Q.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS=u8Q.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE=u8Q.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS=u8Q.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK=u8Q.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED=u8Q.ATTR_ASPNETCORE_RATE_LIMITING_POLICY=u8Q.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED=u8Q.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED=u8Q.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED=u8Q.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED=u8Q.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT=u8Q.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE=u8Q.ATTR_TELEMETRY_SDK_VERSION=u8Q.ATTR_TELEMETRY_SDK_NAME=u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS=u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT=u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_RUST=u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY=u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON=u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_PHP=u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS=u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA=u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_GO=u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG=u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET=u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_CPP=u8Q.ATTR_TELEMETRY_SDK_LANGUAGE=u8Q.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED=u8Q.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER=u8Q.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER=u8Q.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED=u8Q.ATTR_ASPNETCORE_RATE_LIMITING_RESULT=void 0;u8Q.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT=u8Q.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE=u8Q.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN=u8Q.ATTR_SIGNALR_CONNECTION_STATUS=u8Q.ATTR_SERVICE_VERSION=u8Q.ATTR_SERVICE_NAME=u8Q.ATTR_SERVER_PORT=u8Q.ATTR_SERVER_ADDRESS=u8Q.ATTR_OTEL_STATUS_DESCRIPTION=u8Q.OTEL_STATUS_CODE_VALUE_OK=u8Q.OTEL_STATUS_CODE_VALUE_ERROR=u8Q.ATTR_OTEL_STATUS_CODE=u8Q.ATTR_OTEL_SCOPE_VERSION=u8Q.ATTR_OTEL_SCOPE_NAME=u8Q.NETWORK_TYPE_VALUE_IPV6=u8Q.NETWORK_TYPE_VALUE_IPV4=u8Q.ATTR_NETWORK_TYPE=u8Q.NETWORK_TRANSPORT_VALUE_UNIX=u8Q.NETWORK_TRANSPORT_VALUE_UDP=u8Q.NETWORK_TRANSPORT_VALUE_TCP=u8Q.NETWORK_TRANSPORT_VALUE_QUIC=u8Q.NETWORK_TRANSPORT_VALUE_PIPE=u8Q.ATTR_NETWORK_TRANSPORT=u8Q.ATTR_NETWORK_PROTOCOL_VERSION=u8Q.ATTR_NETWORK_PROTOCOL_NAME=u8Q.ATTR_NETWORK_PEER_PORT=u8Q.ATTR_NETWORK_PEER_ADDRESS=u8Q.ATTR_NETWORK_LOCAL_PORT=u8Q.ATTR_NETWORK_LOCAL_ADDRESS=u8Q.JVM_THREAD_STATE_VALUE_WAITING=u8Q.JVM_THREAD_STATE_VALUE_TIMED_WAITING=u8Q.JVM_THREAD_STATE_VALUE_TERMINATED=u8Q.JVM_THREAD_STATE_VALUE_RUNNABLE=u8Q.JVM_THREAD_STATE_VALUE_NEW=u8Q.JVM_THREAD_STATE_VALUE_BLOCKED=u8Q.ATTR_JVM_THREAD_STATE=u8Q.ATTR_JVM_THREAD_DAEMON=u8Q.JVM_MEMORY_TYPE_VALUE_NON_HEAP=u8Q.JVM_MEMORY_TYPE_VALUE_HEAP=u8Q.ATTR_JVM_MEMORY_TYPE=u8Q.ATTR_JVM_MEMORY_POOL_NAME=u8Q.ATTR_JVM_GC_NAME=u8Q.ATTR_JVM_GC_ACTION=u8Q.ATTR_HTTP_ROUTE=u8Q.ATTR_HTTP_RESPONSE_STATUS_CODE=u8Q.ATTR_HTTP_RESPONSE_HEADER=u8Q.ATTR_HTTP_REQUEST_RESEND_COUNT=u8Q.ATTR_HTTP_REQUEST_METHOD_ORIGINAL=u8Q.HTTP_REQUEST_METHOD_VALUE_TRACE=u8Q.HTTP_REQUEST_METHOD_VALUE_PUT=void 0;u8Q.ATTR_USER_AGENT_ORIGINAL=u8Q.ATTR_URL_SCHEME=u8Q.ATTR_URL_QUERY=u8Q.ATTR_URL_PATH=u8Q.ATTR_URL_FULL=u8Q.ATTR_URL_FRAGMENT=u8Q.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS=u8Q.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS=u8Q.SIGNALR_TRANSPORT_VALUE_LONG_POLLING=u8Q.ATTR_SIGNALR_TRANSPORT=void 0;u8Q.ATTR_ASPNETCORE_RATE_LIMITING_RESULT="aspnetcore.rate_limiting.result";u8Q.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED="acquired";u8Q.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER="endpoint_limiter";u8Q.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER="global_limiter";u8Q.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED="request_canceled";u8Q.ATTR_TELEMETRY_SDK_LANGUAGE="telemetry.sdk.language";u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_CPP="cpp";u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET="dotnet";u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG="erlang";u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_GO="go";u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA="java";u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS="nodejs";u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_PHP="php";u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON="python";u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY="ruby";u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_RUST="rust";u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT="swift";u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS="webjs";u8Q.ATTR_TELEMETRY_SDK_NAME="telemetry.sdk.name";u8Q.ATTR_TELEMETRY_SDK_VERSION="telemetry.sdk.version";u8Q.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE="aspnetcore.diagnostics.handler.type";u8Q.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT="aspnetcore.diagnostics.exception.result";u8Q.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED="aborted";u8Q.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED="handled";u8Q.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED="skipped";u8Q.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED="unhandled";u8Q.ATTR_ASPNETCORE_RATE_LIMITING_POLICY="aspnetcore.rate_limiting.policy";u8Q.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED="aspnetcore.request.is_unhandled";u8Q.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK="aspnetcore.routing.is_fallback";u8Q.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS="aspnetcore.routing.match_status";u8Q.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE="failure";u8Q.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS="success";u8Q.ATTR_CLIENT_ADDRESS="client.address";u8Q.ATTR_CLIENT_PORT="client.port";u8Q.ATTR_ERROR_TYPE="error.type";u8Q.ERROR_TYPE_VALUE_OTHER="_OTHER";u8Q.ATTR_EXCEPTION_ESCAPED="exception.escaped";u8Q.ATTR_EXCEPTION_MESSAGE="exception.message";u8Q.ATTR_EXCEPTION_STACKTRACE="exception.stacktrace";u8Q.ATTR_EXCEPTION_TYPE="exception.type";var P10=(A)=>`http.request.header.${A}`;u8Q.ATTR_HTTP_REQUEST_HEADER=P10;u8Q.ATTR_HTTP_REQUEST_METHOD="http.request.method";u8Q.HTTP_REQUEST_METHOD_VALUE_OTHER="_OTHER";u8Q.HTTP_REQUEST_METHOD_VALUE_CONNECT="CONNECT";u8Q.HTTP_REQUEST_METHOD_VALUE_DELETE="DELETE";u8Q.HTTP_REQUEST_METHOD_VALUE_GET="GET";u8Q.HTTP_REQUEST_METHOD_VALUE_HEAD="HEAD";u8Q.HTTP_REQUEST_METHOD_VALUE_OPTIONS="OPTIONS";u8Q.HTTP_REQUEST_METHOD_VALUE_PATCH="PATCH";u8Q.HTTP_REQUEST_METHOD_VALUE_POST="POST";u8Q.HTTP_REQUEST_METHOD_VALUE_PUT="PUT";u8Q.HTTP_REQUEST_METHOD_VALUE_TRACE="TRACE";u8Q.ATTR_HTTP_REQUEST_METHOD_ORIGINAL="http.request.method_original";u8Q.ATTR_HTTP_REQUEST_RESEND_COUNT="http.request.resend_count";var T10=(A)=>`http.response.header.${A}`;u8Q.ATTR_HTTP_RESPONSE_HEADER=T10;u8Q.ATTR_HTTP_RESPONSE_STATUS_CODE="http.response.status_code";u8Q.ATTR_HTTP_ROUTE="http.route";u8Q.ATTR_JVM_GC_ACTION="jvm.gc.action";u8Q.ATTR_JVM_GC_NAME="jvm.gc.name";u8Q.ATTR_JVM_MEMORY_POOL_NAME="jvm.memory.pool.name";u8Q.ATTR_JVM_MEMORY_TYPE="jvm.memory.type";u8Q.JVM_MEMORY_TYPE_VALUE_HEAP="heap";u8Q.JVM_MEMORY_TYPE_VALUE_NON_HEAP="non_heap";u8Q.ATTR_JVM_THREAD_DAEMON="jvm.thread.daemon";u8Q.ATTR_JVM_THREAD_STATE="jvm.thread.state";u8Q.JVM_THREAD_STATE_VALUE_BLOCKED="blocked";u8Q.JVM_THREAD_STATE_VALUE_NEW="new";u8Q.JVM_THREAD_STATE_VALUE_RUNNABLE="runnable";u8Q.JVM_THREAD_STATE_VALUE_TERMINATED="terminated";u8Q.JVM_THREAD_STATE_VALUE_TIMED_WAITING="timed_waiting";u8Q.JVM_THREAD_STATE_VALUE_WAITING="waiting";u8Q.ATTR_NETWORK_LOCAL_ADDRESS="network.local.address";u8Q.ATTR_NETWORK_LOCAL_PORT="network.local.port";u8Q.ATTR_NETWORK_PEER_ADDRESS="network.peer.address";u8Q.ATTR_NETWORK_PEER_PORT="network.peer.port";u8Q.ATTR_NETWORK_PROTOCOL_NAME="network.protocol.name";u8Q.ATTR_NETWORK_PROTOCOL_VERSION="network.protocol.version";u8Q.ATTR_NETWORK_TRANSPORT="network.transport";u8Q.NETWORK_TRANSPORT_VALUE_PIPE="pipe";u8Q.NETWORK_TRANSPORT_VALUE_QUIC="quic";u8Q.NETWORK_TRANSPORT_VALUE_TCP="tcp";u8Q.NETWORK_TRANSPORT_VALUE_UDP="udp";u8Q.NETWORK_TRANSPORT_VALUE_UNIX="unix";u8Q.ATTR_NETWORK_TYPE="network.type";u8Q.NETWORK_TYPE_VALUE_IPV4="ipv4";u8Q.NETWORK_TYPE_VALUE_IPV6="ipv6";u8Q.ATTR_OTEL_SCOPE_NAME="otel.scope.name";u8Q.ATTR_OTEL_SCOPE_VERSION="otel.scope.version";u8Q.ATTR_OTEL_STATUS_CODE="otel.status_code";u8Q.OTEL_STATUS_CODE_VALUE_ERROR="ERROR";u8Q.OTEL_STATUS_CODE_VALUE_OK="OK";u8Q.ATTR_OTEL_STATUS_DESCRIPTION="otel.status_description";u8Q.ATTR_SERVER_ADDRESS="server.address";u8Q.ATTR_SERVER_PORT="server.port";u8Q.ATTR_SERVICE_NAME="service.name";u8Q.ATTR_SERVICE_VERSION="service.version";u8Q.ATTR_SIGNALR_CONNECTION_STATUS="signalr.connection.status";u8Q.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN="app_shutdown";u8Q.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE="normal_closure";u8Q.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT="timeout";u8Q.ATTR_SIGNALR_TRANSPORT="signalr.transport";u8Q.SIGNALR_TRANSPORT_VALUE_LONG_POLLING="long_polling";u8Q.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS="server_sent_events";u8Q.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS="web_sockets";u8Q.ATTR_URL_FRAGMENT="url.fragment";u8Q.ATTR_URL_FULL="url.full";u8Q.ATTR_URL_PATH="url.path";u8Q.ATTR_URL_QUERY="url.query";u8Q.ATTR_URL_SCHEME="url.scheme";u8Q.ATTR_USER_AGENT_ORIGINAL="user_agent.original"});var s8Q=R((i8Q)=>{Object.defineProperty(i8Q,"__esModule",{value:!0});i8Q.METRIC_SIGNALR_SERVER_CONNECTION_DURATION=i8Q.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS=i8Q.METRIC_KESTREL_UPGRADED_CONNECTIONS=i8Q.METRIC_KESTREL_TLS_HANDSHAKE_DURATION=i8Q.METRIC_KESTREL_REJECTED_CONNECTIONS=i8Q.METRIC_KESTREL_QUEUED_REQUESTS=i8Q.METRIC_KESTREL_QUEUED_CONNECTIONS=i8Q.METRIC_KESTREL_CONNECTION_DURATION=i8Q.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES=i8Q.METRIC_KESTREL_ACTIVE_CONNECTIONS=i8Q.METRIC_JVM_THREAD_COUNT=i8Q.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC=i8Q.METRIC_JVM_MEMORY_USED=i8Q.METRIC_JVM_MEMORY_LIMIT=i8Q.METRIC_JVM_MEMORY_COMMITTED=i8Q.METRIC_JVM_GC_DURATION=i8Q.METRIC_JVM_CPU_TIME=i8Q.METRIC_JVM_CPU_RECENT_UTILIZATION=i8Q.METRIC_JVM_CPU_COUNT=i8Q.METRIC_JVM_CLASS_UNLOADED=i8Q.METRIC_JVM_CLASS_LOADED=i8Q.METRIC_JVM_CLASS_COUNT=i8Q.METRIC_HTTP_SERVER_REQUEST_DURATION=i8Q.METRIC_HTTP_CLIENT_REQUEST_DURATION=i8Q.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS=i8Q.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS=i8Q.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION=i8Q.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE=i8Q.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS=i8Q.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES=i8Q.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS=void 0;i8Q.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS="aspnetcore.diagnostics.exceptions";i8Q.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES="aspnetcore.rate_limiting.active_request_leases";i8Q.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS="aspnetcore.rate_limiting.queued_requests";i8Q.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE="aspnetcore.rate_limiting.request.time_in_queue";i8Q.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION="aspnetcore.rate_limiting.request_lease.duration";i8Q.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS="aspnetcore.rate_limiting.requests";i8Q.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS="aspnetcore.routing.match_attempts";i8Q.METRIC_HTTP_CLIENT_REQUEST_DURATION="http.client.request.duration";i8Q.METRIC_HTTP_SERVER_REQUEST_DURATION="http.server.request.duration";i8Q.METRIC_JVM_CLASS_COUNT="jvm.class.count";i8Q.METRIC_JVM_CLASS_LOADED="jvm.class.loaded";i8Q.METRIC_JVM_CLASS_UNLOADED="jvm.class.unloaded";i8Q.METRIC_JVM_CPU_COUNT="jvm.cpu.count";i8Q.METRIC_JVM_CPU_RECENT_UTILIZATION="jvm.cpu.recent_utilization";i8Q.METRIC_JVM_CPU_TIME="jvm.cpu.time";i8Q.METRIC_JVM_GC_DURATION="jvm.gc.duration";i8Q.METRIC_JVM_MEMORY_COMMITTED="jvm.memory.committed";i8Q.METRIC_JVM_MEMORY_LIMIT="jvm.memory.limit";i8Q.METRIC_JVM_MEMORY_USED="jvm.memory.used";i8Q.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC="jvm.memory.used_after_last_gc";i8Q.METRIC_JVM_THREAD_COUNT="jvm.thread.count";i8Q.METRIC_KESTREL_ACTIVE_CONNECTIONS="kestrel.active_connections";i8Q.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES="kestrel.active_tls_handshakes";i8Q.METRIC_KESTREL_CONNECTION_DURATION="kestrel.connection.duration";i8Q.METRIC_KESTREL_QUEUED_CONNECTIONS="kestrel.queued_connections";i8Q.METRIC_KESTREL_QUEUED_REQUESTS="kestrel.queued_requests";i8Q.METRIC_KESTREL_REJECTED_CONNECTIONS="kestrel.rejected_connections";i8Q.METRIC_KESTREL_TLS_HANDSHAKE_DURATION="kestrel.tls_handshake.duration";i8Q.METRIC_KESTREL_UPGRADED_CONNECTIONS="kestrel.upgraded_connections";i8Q.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS="signalr.server.active_connections";i8Q.METRIC_SIGNALR_SERVER_CONNECTION_DURATION="signalr.server.connection.duration"});var r8Q=R((VX)=>{var CG0=VX&&VX.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),CP=VX&&VX.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))CG0(Q,A,B)};Object.defineProperty(VX,"__esModule",{value:!0});CP(ZJQ(),VX);CP(m8Q(),VX);CP(p8Q(),VX);CP(s8Q(),VX)});var t8Q=R((a8Q)=>{Object.defineProperty(a8Q,"__esModule",{value:!0});a8Q.ExceptionEventName=void 0;a8Q.ExceptionEventName="exception"});var Ci=R((A5Q)=>{Object.defineProperty(A5Q,"__esModule",{value:!0});A5Q.Span=void 0;var n5=yA(),gJ=MB(),H$=r8Q(),XG0=t8Q();class e8Q{constructor(A,Q,B,Y,J,C,X=[],G,W,F){this.attributes={},this.links=[],this.events=[],this._droppedAttributesCount=0,this._droppedEventsCount=0,this._droppedLinksCount=0,this.status={code:n5.SpanStatusCode.UNSET},this.endTime=[0,0],this._ended=!1,this._duration=[-1,-1],this.name=B,this._spanContext=Y,this.parentSpanId=C,this.kind=J,this.links=X;let Z=Date.now();if(this._performanceStartTime=gJ.otperformance.now(),this._performanceOffset=Z-(this._performanceStartTime+(0,gJ.getTimeOrigin)()),this._startTimeProvided=G!=null,this.startTime=this._getTime(G!==null&&G!==void 0?G:Z),this.resource=A.resource,this.instrumentationLibrary=A.instrumentationLibrary,this._spanLimits=A.getSpanLimits(),this._attributeValueLengthLimit=this._spanLimits.attributeValueLengthLimit||0,F!=null)this.setAttributes(F);this._spanProcessor=A.getActiveSpanProcessor(),this._spanProcessor.onStart(this,Q)}spanContext(){return this._spanContext}setAttribute(A,Q){if(Q==null||this._isSpanEnded())return this;if(A.length===0)return n5.diag.warn(`Invalid attribute key: ${A}`),this;if(!(0,gJ.isAttributeValue)(Q))return n5.diag.warn(`Invalid attribute value set for key: ${A}`),this;if(Object.keys(this.attributes).length>=this._spanLimits.attributeCountLimit&&!Object.prototype.hasOwnProperty.call(this.attributes,A))return this._droppedAttributesCount++,this;return this.attributes[A]=this._truncateToSize(Q),this}setAttributes(A){for(let[Q,B]of Object.entries(A))this.setAttribute(Q,B);return this}addEvent(A,Q,B){if(this._isSpanEnded())return this;if(this._spanLimits.eventCountLimit===0)return n5.diag.warn("No events allowed."),this._droppedEventsCount++,this;if(this.events.length>=this._spanLimits.eventCountLimit){if(this._droppedEventsCount===0)n5.diag.debug("Dropping extra events.");this.events.shift(),this._droppedEventsCount++}if((0,gJ.isTimeInput)(Q)){if(!(0,gJ.isTimeInput)(B))B=Q;Q=void 0}let Y=(0,gJ.sanitizeAttributes)(Q);return this.events.push({name:A,attributes:Y,time:this._getTime(B),droppedAttributesCount:0}),this}addLink(A){return this.links.push(A),this}addLinks(A){return this.links.push(...A),this}setStatus(A){if(this._isSpanEnded())return this;if(this.status=Object.assign({},A),this.status.message!=null&&typeof A.message!=="string")n5.diag.warn(`Dropping invalid status.message of type '${typeof A.message}', expected 'string'`),delete this.status.message;return this}updateName(A){if(this._isSpanEnded())return this;return this.name=A,this}end(A){if(this._isSpanEnded()){n5.diag.error(`${this.name} ${this._spanContext.traceId}-${this._spanContext.spanId} - You can only call end() on a span once.`);return}if(this._ended=!0,this.endTime=this._getTime(A),this._duration=(0,gJ.hrTimeDuration)(this.startTime,this.endTime),this._duration[0]<0)n5.diag.warn("Inconsistent start and end time, startTime > endTime. Setting span duration to 0ms.",this.startTime,this.endTime),this.endTime=this.startTime.slice(),this._duration=[0,0];if(this._droppedEventsCount>0)n5.diag.warn(`Dropped ${this._droppedEventsCount} events because eventCountLimit reached`);this._spanProcessor.onEnd(this)}_getTime(A){if(typeof A==="number"&&A<=gJ.otperformance.now())return(0,gJ.hrTime)(A+this._performanceOffset);if(typeof A==="number")return(0,gJ.millisToHrTime)(A);if(A instanceof Date)return(0,gJ.millisToHrTime)(A.getTime());if((0,gJ.isTimeInputHrTime)(A))return A;if(this._startTimeProvided)return(0,gJ.millisToHrTime)(Date.now());let Q=gJ.otperformance.now()-this._performanceStartTime;return(0,gJ.addHrTimes)(this.startTime,(0,gJ.millisToHrTime)(Q))}isRecording(){return this._ended===!1}recordException(A,Q){let B={};if(typeof A==="string")B[H$.SEMATTRS_EXCEPTION_MESSAGE]=A;else if(A){if(A.code)B[H$.SEMATTRS_EXCEPTION_TYPE]=A.code.toString();else if(A.name)B[H$.SEMATTRS_EXCEPTION_TYPE]=A.name;if(A.message)B[H$.SEMATTRS_EXCEPTION_MESSAGE]=A.message;if(A.stack)B[H$.SEMATTRS_EXCEPTION_STACKTRACE]=A.stack}if(B[H$.SEMATTRS_EXCEPTION_TYPE]||B[H$.SEMATTRS_EXCEPTION_MESSAGE])this.addEvent(XG0.ExceptionEventName,B,Q);else n5.diag.warn(`Failed to record an exception ${A}`)}get duration(){return this._duration}get ended(){return this._ended}get droppedAttributesCount(){return this._droppedAttributesCount}get droppedEventsCount(){return this._droppedEventsCount}get droppedLinksCount(){return this._droppedLinksCount}_isSpanEnded(){if(this._ended)n5.diag.warn(`Can not execute the operation on ended Span {traceId: ${this._spanContext.traceId}, spanId: ${this._spanContext.spanId}}`);return this._ended}_truncateToLimitUtil(A,Q){if(A.length<=Q)return A;return A.substring(0,Q)}_truncateToSize(A){let Q=this._attributeValueLengthLimit;if(Q<=0)return n5.diag.warn(`Attribute value limit must be positive, got ${Q}`),A;if(typeof A==="string")return this._truncateToLimitUtil(A,Q);if(Array.isArray(A))return A.map((B)=>typeof B==="string"?this._truncateToLimitUtil(B,Q):B);return A}}A5Q.Span=e8Q});var OL=R((B5Q)=>{Object.defineProperty(B5Q,"__esModule",{value:!0});B5Q.SamplingDecision=void 0;var GG0;(function(A){A[A.NOT_RECORD=0]="NOT_RECORD",A[A.RECORD=1]="RECORD",A[A.RECORD_AND_SAMPLED=2]="RECORD_AND_SAMPLED"})(GG0=B5Q.SamplingDecision||(B5Q.SamplingDecision={}))});var XP=R((J5Q)=>{Object.defineProperty(J5Q,"__esModule",{value:!0});J5Q.AlwaysOffSampler=void 0;var WG0=OL();class Y5Q{shouldSample(){return{decision:WG0.SamplingDecision.NOT_RECORD}}toString(){return"AlwaysOffSampler"}}J5Q.AlwaysOffSampler=Y5Q});var GP=R((G5Q)=>{Object.defineProperty(G5Q,"__esModule",{value:!0});G5Q.AlwaysOnSampler=void 0;var FG0=OL();class X5Q{shouldSample(){return{decision:FG0.SamplingDecision.RECORD_AND_SAMPLED}}toString(){return"AlwaysOnSampler"}}G5Q.AlwaysOnSampler=X5Q});var Wi=R(($5Q)=>{Object.defineProperty($5Q,"__esModule",{value:!0});$5Q.ParentBasedSampler=void 0;var WP=yA(),ZG0=MB(),F5Q=XP(),Gi=GP();class Z5Q{constructor(A){var Q,B,Y,J;if(this._root=A.root,!this._root)(0,ZG0.globalErrorHandler)(Error("ParentBasedSampler must have a root sampler configured")),this._root=new Gi.AlwaysOnSampler;this._remoteParentSampled=(Q=A.remoteParentSampled)!==null&&Q!==void 0?Q:new Gi.AlwaysOnSampler,this._remoteParentNotSampled=(B=A.remoteParentNotSampled)!==null&&B!==void 0?B:new F5Q.AlwaysOffSampler,this._localParentSampled=(Y=A.localParentSampled)!==null&&Y!==void 0?Y:new Gi.AlwaysOnSampler,this._localParentNotSampled=(J=A.localParentNotSampled)!==null&&J!==void 0?J:new F5Q.AlwaysOffSampler}shouldSample(A,Q,B,Y,J,C){let X=WP.trace.getSpanContext(A);if(!X||!(0,WP.isSpanContextValid)(X))return this._root.shouldSample(A,Q,B,Y,J,C);if(X.isRemote){if(X.traceFlags&WP.TraceFlags.SAMPLED)return this._remoteParentSampled.shouldSample(A,Q,B,Y,J,C);return this._remoteParentNotSampled.shouldSample(A,Q,B,Y,J,C)}if(X.traceFlags&WP.TraceFlags.SAMPLED)return this._localParentSampled.shouldSample(A,Q,B,Y,J,C);return this._localParentNotSampled.shouldSample(A,Q,B,Y,J,C)}toString(){return`ParentBased{root=${this._root.toString()}, remoteParentSampled=${this._remoteParentSampled.toString()}, remoteParentNotSampled=${this._remoteParentNotSampled.toString()}, localParentSampled=${this._localParentSampled.toString()}, localParentNotSampled=${this._localParentNotSampled.toString()}}`}}$5Q.ParentBasedSampler=Z5Q});var Fi=R((V5Q)=>{Object.defineProperty(V5Q,"__esModule",{value:!0});V5Q.TraceIdRatioBasedSampler=void 0;var $G0=yA(),E5Q=OL();class K5Q{constructor(A=0){this._ratio=A,this._ratio=this._normalize(A),this._upperBound=Math.floor(this._ratio*4294967295)}shouldSample(A,Q){return{decision:(0,$G0.isValidTraceId)(Q)&&this._accumulate(Q)=1?1:A<=0?0:A}_accumulate(A){let Q=0;for(let B=0;B>>0}return Q}}V5Q.TraceIdRatioBasedSampler=K5Q});var Ui=R((q5Q)=>{Object.defineProperty(q5Q,"__esModule",{value:!0});q5Q.buildSamplerFromEnv=q5Q.loadDefaultConfig=void 0;var FP=yA(),ZG=MB(),H5Q=XP(),Zi=GP(),$i=Wi(),D5Q=Fi(),UG0=ZG.TracesSamplerValues.AlwaysOn,VK=1;function EG0(){let A=(0,ZG.getEnv)();return{sampler:L5Q(A),forceFlushTimeoutMillis:30000,generalLimits:{attributeValueLengthLimit:A.OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT,attributeCountLimit:A.OTEL_ATTRIBUTE_COUNT_LIMIT},spanLimits:{attributeValueLengthLimit:A.OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT,attributeCountLimit:A.OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT,linkCountLimit:A.OTEL_SPAN_LINK_COUNT_LIMIT,eventCountLimit:A.OTEL_SPAN_EVENT_COUNT_LIMIT,attributePerEventCountLimit:A.OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT,attributePerLinkCountLimit:A.OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT},mergeResourceWithDefaults:!0}}q5Q.loadDefaultConfig=EG0;function L5Q(A=(0,ZG.getEnv)()){switch(A.OTEL_TRACES_SAMPLER){case ZG.TracesSamplerValues.AlwaysOn:return new Zi.AlwaysOnSampler;case ZG.TracesSamplerValues.AlwaysOff:return new H5Q.AlwaysOffSampler;case ZG.TracesSamplerValues.ParentBasedAlwaysOn:return new $i.ParentBasedSampler({root:new Zi.AlwaysOnSampler});case ZG.TracesSamplerValues.ParentBasedAlwaysOff:return new $i.ParentBasedSampler({root:new H5Q.AlwaysOffSampler});case ZG.TracesSamplerValues.TraceIdRatio:return new D5Q.TraceIdRatioBasedSampler(N5Q(A));case ZG.TracesSamplerValues.ParentBasedTraceIdRatio:return new $i.ParentBasedSampler({root:new D5Q.TraceIdRatioBasedSampler(N5Q(A))});default:return FP.diag.error(`OTEL_TRACES_SAMPLER value "${A.OTEL_TRACES_SAMPLER} invalid, defaulting to ${UG0}".`),new Zi.AlwaysOnSampler}}q5Q.buildSamplerFromEnv=L5Q;function N5Q(A){if(A.OTEL_TRACES_SAMPLER_ARG===void 0||A.OTEL_TRACES_SAMPLER_ARG==="")return FP.diag.error(`OTEL_TRACES_SAMPLER_ARG is blank, defaulting to ${VK}.`),VK;let Q=Number(A.OTEL_TRACES_SAMPLER_ARG);if(isNaN(Q))return FP.diag.error(`OTEL_TRACES_SAMPLER_ARG=${A.OTEL_TRACES_SAMPLER_ARG} was given, but it is invalid, defaulting to ${VK}.`),VK;if(Q<0||Q>1)return FP.diag.error(`OTEL_TRACES_SAMPLER_ARG=${A.OTEL_TRACES_SAMPLER_ARG} was given, but it is out of range ([0..1]), defaulting to ${VK}.`),VK;return Q}});var Ki=R((R5Q)=>{Object.defineProperty(R5Q,"__esModule",{value:!0});R5Q.reconfigureLimits=R5Q.mergeConfig=void 0;var z5Q=Ui(),Ei=MB();function VG0(A){let Q={sampler:(0,z5Q.buildSamplerFromEnv)()},B=(0,z5Q.loadDefaultConfig)(),Y=Object.assign({},B,Q,A);return Y.generalLimits=Object.assign({},B.generalLimits,A.generalLimits||{}),Y.spanLimits=Object.assign({},B.spanLimits,A.spanLimits||{}),Y}R5Q.mergeConfig=VG0;function IG0(A){var Q,B,Y,J,C,X,G,W,F,Z,U,$;let E=Object.assign({},A.spanLimits),K=(0,Ei.getEnvWithoutDefaults)();return E.attributeCountLimit=(X=(C=(J=(B=(Q=A.spanLimits)===null||Q===void 0?void 0:Q.attributeCountLimit)!==null&&B!==void 0?B:(Y=A.generalLimits)===null||Y===void 0?void 0:Y.attributeCountLimit)!==null&&J!==void 0?J:K.OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT)!==null&&C!==void 0?C:K.OTEL_ATTRIBUTE_COUNT_LIMIT)!==null&&X!==void 0?X:Ei.DEFAULT_ATTRIBUTE_COUNT_LIMIT,E.attributeValueLengthLimit=($=(U=(Z=(W=(G=A.spanLimits)===null||G===void 0?void 0:G.attributeValueLengthLimit)!==null&&W!==void 0?W:(F=A.generalLimits)===null||F===void 0?void 0:F.attributeValueLengthLimit)!==null&&Z!==void 0?Z:K.OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT)!==null&&U!==void 0?U:K.OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT)!==null&&$!==void 0?$:Ei.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,Object.assign({},A,{spanLimits:E})}R5Q.reconfigureLimits=IG0});var T5Q=R((O5Q)=>{Object.defineProperty(O5Q,"__esModule",{value:!0});O5Q.BatchSpanProcessorBase=void 0;var IK=yA(),D$=MB();class j5Q{constructor(A,Q){this._exporter=A,this._isExporting=!1,this._finishedSpans=[],this._droppedSpansCount=0;let B=(0,D$.getEnv)();if(this._maxExportBatchSize=typeof(Q===null||Q===void 0?void 0:Q.maxExportBatchSize)==="number"?Q.maxExportBatchSize:B.OTEL_BSP_MAX_EXPORT_BATCH_SIZE,this._maxQueueSize=typeof(Q===null||Q===void 0?void 0:Q.maxQueueSize)==="number"?Q.maxQueueSize:B.OTEL_BSP_MAX_QUEUE_SIZE,this._scheduledDelayMillis=typeof(Q===null||Q===void 0?void 0:Q.scheduledDelayMillis)==="number"?Q.scheduledDelayMillis:B.OTEL_BSP_SCHEDULE_DELAY,this._exportTimeoutMillis=typeof(Q===null||Q===void 0?void 0:Q.exportTimeoutMillis)==="number"?Q.exportTimeoutMillis:B.OTEL_BSP_EXPORT_TIMEOUT,this._shutdownOnce=new D$.BindOnceFuture(this._shutdown,this),this._maxExportBatchSize>this._maxQueueSize)IK.diag.warn("BatchSpanProcessor: maxExportBatchSize must be smaller or equal to maxQueueSize, setting maxExportBatchSize to match maxQueueSize"),this._maxExportBatchSize=this._maxQueueSize}forceFlush(){if(this._shutdownOnce.isCalled)return this._shutdownOnce.promise;return this._flushAll()}onStart(A,Q){}onEnd(A){if(this._shutdownOnce.isCalled)return;if((A.spanContext().traceFlags&IK.TraceFlags.SAMPLED)===0)return;this._addToBuffer(A)}shutdown(){return this._shutdownOnce.call()}_shutdown(){return Promise.resolve().then(()=>{return this.onShutdown()}).then(()=>{return this._flushAll()}).then(()=>{return this._exporter.shutdown()})}_addToBuffer(A){if(this._finishedSpans.length>=this._maxQueueSize){if(this._droppedSpansCount===0)IK.diag.debug("maxQueueSize reached, dropping spans");this._droppedSpansCount++;return}if(this._droppedSpansCount>0)IK.diag.warn(`Dropped ${this._droppedSpansCount} spans because maxQueueSize reached`),this._droppedSpansCount=0;this._finishedSpans.push(A),this._maybeStartTimer()}_flushAll(){return new Promise((A,Q)=>{let B=[],Y=Math.ceil(this._finishedSpans.length/this._maxExportBatchSize);for(let J=0,C=Y;J{A()}).catch(Q)})}_flushOneBatch(){if(this._clearTimer(),this._finishedSpans.length===0)return Promise.resolve();return new Promise((A,Q)=>{let B=setTimeout(()=>{Q(Error("Timeout"))},this._exportTimeoutMillis);IK.context.with((0,D$.suppressTracing)(IK.context.active()),()=>{let Y;if(this._finishedSpans.length<=this._maxExportBatchSize)Y=this._finishedSpans,this._finishedSpans=[];else Y=this._finishedSpans.splice(0,this._maxExportBatchSize);let J=()=>this._exporter.export(Y,(X)=>{var G;if(clearTimeout(B),X.code===D$.ExportResultCode.SUCCESS)A();else Q((G=X.error)!==null&&G!==void 0?G:Error("BatchSpanProcessor: span export failed"))}),C=null;for(let X=0,G=Y.length;X{(0,D$.globalErrorHandler)(X),Q(X)})})})}_maybeStartTimer(){if(this._isExporting)return;let A=()=>{this._isExporting=!0,this._flushOneBatch().finally(()=>{if(this._isExporting=!1,this._finishedSpans.length>0)this._clearTimer(),this._maybeStartTimer()}).catch((Q)=>{this._isExporting=!1,(0,D$.globalErrorHandler)(Q)})};if(this._finishedSpans.length>=this._maxExportBatchSize)return A();if(this._timer!==void 0)return;this._timer=setTimeout(()=>A(),this._scheduledDelayMillis),(0,D$.unrefTimer)(this._timer)}_clearTimer(){if(this._timer!==void 0)clearTimeout(this._timer),this._timer=void 0}}O5Q.BatchSpanProcessorBase=j5Q});var v5Q=R((k5Q)=>{Object.defineProperty(k5Q,"__esModule",{value:!0});k5Q.BatchSpanProcessor=void 0;var DG0=T5Q();class S5Q extends DG0.BatchSpanProcessorBase{onShutdown(){}}k5Q.BatchSpanProcessor=S5Q});var b5Q=R((x5Q)=>{Object.defineProperty(x5Q,"__esModule",{value:!0});x5Q.RandomIdGenerator=void 0;var NG0=8,g5Q=16;class h5Q{constructor(){this.generateTraceId=y5Q(g5Q),this.generateSpanId=y5Q(NG0)}}x5Q.RandomIdGenerator=h5Q;var ZP=Buffer.allocUnsafe(g5Q);function y5Q(A){return function(){for(let B=0;B>>0,B*4);for(let B=0;B0)break;else if(B===A-1)ZP[A-1]=1;return ZP.toString("hex",0,A)}}});var m5Q=R(($P)=>{Object.defineProperty($P,"__esModule",{value:!0});$P.RandomIdGenerator=$P.BatchSpanProcessor=void 0;var LG0=v5Q();Object.defineProperty($P,"BatchSpanProcessor",{enumerable:!0,get:function(){return LG0.BatchSpanProcessor}});var qG0=b5Q();Object.defineProperty($P,"RandomIdGenerator",{enumerable:!0,get:function(){return qG0.RandomIdGenerator}})});var EP=R((UP)=>{Object.defineProperty(UP,"__esModule",{value:!0});UP.RandomIdGenerator=UP.BatchSpanProcessor=void 0;var u5Q=m5Q();Object.defineProperty(UP,"BatchSpanProcessor",{enumerable:!0,get:function(){return u5Q.BatchSpanProcessor}});Object.defineProperty(UP,"RandomIdGenerator",{enumerable:!0,get:function(){return u5Q.RandomIdGenerator}})});var Vi=R((c5Q)=>{Object.defineProperty(c5Q,"__esModule",{value:!0});c5Q.Tracer=void 0;var EJ=yA(),KP=MB(),RG0=Ci(),wG0=Ki(),jG0=EP();class d5Q{constructor(A,Q,B){this._tracerProvider=B;let Y=(0,wG0.mergeConfig)(Q);this._sampler=Y.sampler,this._generalLimits=Y.generalLimits,this._spanLimits=Y.spanLimits,this._idGenerator=Q.idGenerator||new jG0.RandomIdGenerator,this.resource=B.resource,this.instrumentationLibrary=A}startSpan(A,Q={},B=EJ.context.active()){var Y,J,C;if(Q.root)B=EJ.trace.deleteSpan(B);let X=EJ.trace.getSpan(B);if((0,KP.isTracingSuppressed)(B))return EJ.diag.debug("Instrumentation suppressed, returning Noop Span"),EJ.trace.wrapSpanContext(EJ.INVALID_SPAN_CONTEXT);let G=X===null||X===void 0?void 0:X.spanContext(),W=this._idGenerator.generateSpanId(),F,Z,U;if(!G||!EJ.trace.isSpanContextValid(G))F=this._idGenerator.generateTraceId();else F=G.traceId,Z=G.traceState,U=G.spanId;let $=(Y=Q.kind)!==null&&Y!==void 0?Y:EJ.SpanKind.INTERNAL,E=((J=Q.links)!==null&&J!==void 0?J:[]).map((z)=>{return{context:z.context,attributes:(0,KP.sanitizeAttributes)(z.attributes)}}),K=(0,KP.sanitizeAttributes)(Q.attributes),I=this._sampler.shouldSample(B,F,A,$,K,E);Z=(C=I.traceState)!==null&&C!==void 0?C:Z;let V=I.decision===EJ.SamplingDecision.RECORD_AND_SAMPLED?EJ.TraceFlags.SAMPLED:EJ.TraceFlags.NONE,H={traceId:F,spanId:W,traceFlags:V,traceState:Z};if(I.decision===EJ.SamplingDecision.NOT_RECORD)return EJ.diag.debug("Recording is off, propagating context in a non-recording span"),EJ.trace.wrapSpanContext(H);let D=(0,KP.sanitizeAttributes)(Object.assign(K,I.attributes));return new RG0.Span(this,B,A,H,$,U,E,Q.startTime,void 0,D)}startActiveSpan(A,Q,B,Y){let J,C,X;if(arguments.length<2)return;else if(arguments.length===2)X=Q;else if(arguments.length===3)J=Q,X=B;else J=Q,C=B,X=Y;let G=C!==null&&C!==void 0?C:EJ.context.active(),W=this.startSpan(A,J,G),F=EJ.trace.setSpan(G,W);return EJ.context.with(F,X,void 0,W)}getGeneralLimits(){return this._generalLimits}getSpanLimits(){return this._spanLimits}getActiveSpanProcessor(){return this._tracerProvider.getActiveSpanProcessor()}}c5Q.Tracer=d5Q});var Ii=R((p5Q)=>{Object.defineProperty(p5Q,"__esModule",{value:!0});p5Q.createConstMap=void 0;function OG0(A){let Q={},B=A.length;for(let Y=0;Y{Object.defineProperty(hGQ,"__esModule",{value:!0});hGQ.SEMATTRS_NET_HOST_CARRIER_ICC=hGQ.SEMATTRS_NET_HOST_CARRIER_MNC=hGQ.SEMATTRS_NET_HOST_CARRIER_MCC=hGQ.SEMATTRS_NET_HOST_CARRIER_NAME=hGQ.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=hGQ.SEMATTRS_NET_HOST_CONNECTION_TYPE=hGQ.SEMATTRS_NET_HOST_NAME=hGQ.SEMATTRS_NET_HOST_PORT=hGQ.SEMATTRS_NET_HOST_IP=hGQ.SEMATTRS_NET_PEER_NAME=hGQ.SEMATTRS_NET_PEER_PORT=hGQ.SEMATTRS_NET_PEER_IP=hGQ.SEMATTRS_NET_TRANSPORT=hGQ.SEMATTRS_FAAS_INVOKED_REGION=hGQ.SEMATTRS_FAAS_INVOKED_PROVIDER=hGQ.SEMATTRS_FAAS_INVOKED_NAME=hGQ.SEMATTRS_FAAS_COLDSTART=hGQ.SEMATTRS_FAAS_CRON=hGQ.SEMATTRS_FAAS_TIME=hGQ.SEMATTRS_FAAS_DOCUMENT_NAME=hGQ.SEMATTRS_FAAS_DOCUMENT_TIME=hGQ.SEMATTRS_FAAS_DOCUMENT_OPERATION=hGQ.SEMATTRS_FAAS_DOCUMENT_COLLECTION=hGQ.SEMATTRS_FAAS_EXECUTION=hGQ.SEMATTRS_FAAS_TRIGGER=hGQ.SEMATTRS_EXCEPTION_ESCAPED=hGQ.SEMATTRS_EXCEPTION_STACKTRACE=hGQ.SEMATTRS_EXCEPTION_MESSAGE=hGQ.SEMATTRS_EXCEPTION_TYPE=hGQ.SEMATTRS_DB_SQL_TABLE=hGQ.SEMATTRS_DB_MONGODB_COLLECTION=hGQ.SEMATTRS_DB_REDIS_DATABASE_INDEX=hGQ.SEMATTRS_DB_HBASE_NAMESPACE=hGQ.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=hGQ.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=hGQ.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=hGQ.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=hGQ.SEMATTRS_DB_CASSANDRA_TABLE=hGQ.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=hGQ.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=hGQ.SEMATTRS_DB_CASSANDRA_KEYSPACE=hGQ.SEMATTRS_DB_MSSQL_INSTANCE_NAME=hGQ.SEMATTRS_DB_OPERATION=hGQ.SEMATTRS_DB_STATEMENT=hGQ.SEMATTRS_DB_NAME=hGQ.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=hGQ.SEMATTRS_DB_USER=hGQ.SEMATTRS_DB_CONNECTION_STRING=hGQ.SEMATTRS_DB_SYSTEM=hGQ.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=void 0;hGQ.SEMATTRS_MESSAGING_DESTINATION_KIND=hGQ.SEMATTRS_MESSAGING_DESTINATION=hGQ.SEMATTRS_MESSAGING_SYSTEM=hGQ.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=hGQ.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=hGQ.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=hGQ.SEMATTRS_AWS_DYNAMODB_COUNT=hGQ.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=hGQ.SEMATTRS_AWS_DYNAMODB_SEGMENT=hGQ.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=hGQ.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=hGQ.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=hGQ.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=hGQ.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=hGQ.SEMATTRS_AWS_DYNAMODB_SELECT=hGQ.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=hGQ.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=hGQ.SEMATTRS_AWS_DYNAMODB_LIMIT=hGQ.SEMATTRS_AWS_DYNAMODB_PROJECTION=hGQ.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=hGQ.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=hGQ.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=hGQ.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=hGQ.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=hGQ.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=hGQ.SEMATTRS_HTTP_CLIENT_IP=hGQ.SEMATTRS_HTTP_ROUTE=hGQ.SEMATTRS_HTTP_SERVER_NAME=hGQ.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=hGQ.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=hGQ.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=hGQ.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=hGQ.SEMATTRS_HTTP_USER_AGENT=hGQ.SEMATTRS_HTTP_FLAVOR=hGQ.SEMATTRS_HTTP_STATUS_CODE=hGQ.SEMATTRS_HTTP_SCHEME=hGQ.SEMATTRS_HTTP_HOST=hGQ.SEMATTRS_HTTP_TARGET=hGQ.SEMATTRS_HTTP_URL=hGQ.SEMATTRS_HTTP_METHOD=hGQ.SEMATTRS_CODE_LINENO=hGQ.SEMATTRS_CODE_FILEPATH=hGQ.SEMATTRS_CODE_NAMESPACE=hGQ.SEMATTRS_CODE_FUNCTION=hGQ.SEMATTRS_THREAD_NAME=hGQ.SEMATTRS_THREAD_ID=hGQ.SEMATTRS_ENDUSER_SCOPE=hGQ.SEMATTRS_ENDUSER_ROLE=hGQ.SEMATTRS_ENDUSER_ID=hGQ.SEMATTRS_PEER_SERVICE=void 0;hGQ.DBSYSTEMVALUES_FILEMAKER=hGQ.DBSYSTEMVALUES_DERBY=hGQ.DBSYSTEMVALUES_FIREBIRD=hGQ.DBSYSTEMVALUES_ADABAS=hGQ.DBSYSTEMVALUES_CACHE=hGQ.DBSYSTEMVALUES_EDB=hGQ.DBSYSTEMVALUES_FIRSTSQL=hGQ.DBSYSTEMVALUES_INGRES=hGQ.DBSYSTEMVALUES_HANADB=hGQ.DBSYSTEMVALUES_MAXDB=hGQ.DBSYSTEMVALUES_PROGRESS=hGQ.DBSYSTEMVALUES_HSQLDB=hGQ.DBSYSTEMVALUES_CLOUDSCAPE=hGQ.DBSYSTEMVALUES_HIVE=hGQ.DBSYSTEMVALUES_REDSHIFT=hGQ.DBSYSTEMVALUES_POSTGRESQL=hGQ.DBSYSTEMVALUES_DB2=hGQ.DBSYSTEMVALUES_ORACLE=hGQ.DBSYSTEMVALUES_MYSQL=hGQ.DBSYSTEMVALUES_MSSQL=hGQ.DBSYSTEMVALUES_OTHER_SQL=hGQ.SemanticAttributes=hGQ.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=hGQ.SEMATTRS_MESSAGE_COMPRESSED_SIZE=hGQ.SEMATTRS_MESSAGE_ID=hGQ.SEMATTRS_MESSAGE_TYPE=hGQ.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=hGQ.SEMATTRS_RPC_JSONRPC_ERROR_CODE=hGQ.SEMATTRS_RPC_JSONRPC_REQUEST_ID=hGQ.SEMATTRS_RPC_JSONRPC_VERSION=hGQ.SEMATTRS_RPC_GRPC_STATUS_CODE=hGQ.SEMATTRS_RPC_METHOD=hGQ.SEMATTRS_RPC_SERVICE=hGQ.SEMATTRS_RPC_SYSTEM=hGQ.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=hGQ.SEMATTRS_MESSAGING_KAFKA_PARTITION=hGQ.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=hGQ.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=hGQ.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=hGQ.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=hGQ.SEMATTRS_MESSAGING_CONSUMER_ID=hGQ.SEMATTRS_MESSAGING_OPERATION=hGQ.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=hGQ.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=hGQ.SEMATTRS_MESSAGING_CONVERSATION_ID=hGQ.SEMATTRS_MESSAGING_MESSAGE_ID=hGQ.SEMATTRS_MESSAGING_URL=hGQ.SEMATTRS_MESSAGING_PROTOCOL_VERSION=hGQ.SEMATTRS_MESSAGING_PROTOCOL=hGQ.SEMATTRS_MESSAGING_TEMP_DESTINATION=void 0;hGQ.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=hGQ.FaasDocumentOperationValues=hGQ.FAASDOCUMENTOPERATIONVALUES_DELETE=hGQ.FAASDOCUMENTOPERATIONVALUES_EDIT=hGQ.FAASDOCUMENTOPERATIONVALUES_INSERT=hGQ.FaasTriggerValues=hGQ.FAASTRIGGERVALUES_OTHER=hGQ.FAASTRIGGERVALUES_TIMER=hGQ.FAASTRIGGERVALUES_PUBSUB=hGQ.FAASTRIGGERVALUES_HTTP=hGQ.FAASTRIGGERVALUES_DATASOURCE=hGQ.DbCassandraConsistencyLevelValues=hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=hGQ.DbSystemValues=hGQ.DBSYSTEMVALUES_COCKROACHDB=hGQ.DBSYSTEMVALUES_MEMCACHED=hGQ.DBSYSTEMVALUES_ELASTICSEARCH=hGQ.DBSYSTEMVALUES_GEODE=hGQ.DBSYSTEMVALUES_NEO4J=hGQ.DBSYSTEMVALUES_DYNAMODB=hGQ.DBSYSTEMVALUES_COSMOSDB=hGQ.DBSYSTEMVALUES_COUCHDB=hGQ.DBSYSTEMVALUES_COUCHBASE=hGQ.DBSYSTEMVALUES_REDIS=hGQ.DBSYSTEMVALUES_MONGODB=hGQ.DBSYSTEMVALUES_HBASE=hGQ.DBSYSTEMVALUES_CASSANDRA=hGQ.DBSYSTEMVALUES_COLDFUSION=hGQ.DBSYSTEMVALUES_H2=hGQ.DBSYSTEMVALUES_VERTICA=hGQ.DBSYSTEMVALUES_TERADATA=hGQ.DBSYSTEMVALUES_SYBASE=hGQ.DBSYSTEMVALUES_SQLITE=hGQ.DBSYSTEMVALUES_POINTBASE=hGQ.DBSYSTEMVALUES_PERVASIVE=hGQ.DBSYSTEMVALUES_NETEZZA=hGQ.DBSYSTEMVALUES_MARIADB=hGQ.DBSYSTEMVALUES_INTERBASE=hGQ.DBSYSTEMVALUES_INSTANTDB=hGQ.DBSYSTEMVALUES_INFORMIX=void 0;hGQ.MESSAGINGOPERATIONVALUES_RECEIVE=hGQ.MessagingDestinationKindValues=hGQ.MESSAGINGDESTINATIONKINDVALUES_TOPIC=hGQ.MESSAGINGDESTINATIONKINDVALUES_QUEUE=hGQ.HttpFlavorValues=hGQ.HTTPFLAVORVALUES_QUIC=hGQ.HTTPFLAVORVALUES_SPDY=hGQ.HTTPFLAVORVALUES_HTTP_2_0=hGQ.HTTPFLAVORVALUES_HTTP_1_1=hGQ.HTTPFLAVORVALUES_HTTP_1_0=hGQ.NetHostConnectionSubtypeValues=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_NR=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=hGQ.NetHostConnectionTypeValues=hGQ.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=hGQ.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=hGQ.NETHOSTCONNECTIONTYPEVALUES_CELL=hGQ.NETHOSTCONNECTIONTYPEVALUES_WIRED=hGQ.NETHOSTCONNECTIONTYPEVALUES_WIFI=hGQ.NetTransportValues=hGQ.NETTRANSPORTVALUES_OTHER=hGQ.NETTRANSPORTVALUES_INPROC=hGQ.NETTRANSPORTVALUES_PIPE=hGQ.NETTRANSPORTVALUES_UNIX=hGQ.NETTRANSPORTVALUES_IP=hGQ.NETTRANSPORTVALUES_IP_UDP=hGQ.NETTRANSPORTVALUES_IP_TCP=hGQ.FaasInvokedProviderValues=hGQ.FAASINVOKEDPROVIDERVALUES_GCP=hGQ.FAASINVOKEDPROVIDERVALUES_AZURE=hGQ.FAASINVOKEDPROVIDERVALUES_AWS=void 0;hGQ.MessageTypeValues=hGQ.MESSAGETYPEVALUES_RECEIVED=hGQ.MESSAGETYPEVALUES_SENT=hGQ.RpcGrpcStatusCodeValues=hGQ.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=hGQ.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=hGQ.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=hGQ.RPCGRPCSTATUSCODEVALUES_INTERNAL=hGQ.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=hGQ.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=hGQ.RPCGRPCSTATUSCODEVALUES_ABORTED=hGQ.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=hGQ.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=hGQ.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=hGQ.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=hGQ.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=hGQ.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=hGQ.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=hGQ.RPCGRPCSTATUSCODEVALUES_UNKNOWN=hGQ.RPCGRPCSTATUSCODEVALUES_CANCELLED=hGQ.RPCGRPCSTATUSCODEVALUES_OK=hGQ.MessagingOperationValues=hGQ.MESSAGINGOPERATIONVALUES_PROCESS=void 0;var s5=Ii(),n5Q="aws.lambda.invoked_arn",s5Q="db.system",r5Q="db.connection_string",a5Q="db.user",o5Q="db.jdbc.driver_classname",t5Q="db.name",e5Q="db.statement",ACQ="db.operation",QCQ="db.mssql.instance_name",BCQ="db.cassandra.keyspace",YCQ="db.cassandra.page_size",JCQ="db.cassandra.consistency_level",CCQ="db.cassandra.table",XCQ="db.cassandra.idempotence",GCQ="db.cassandra.speculative_execution_count",WCQ="db.cassandra.coordinator.id",FCQ="db.cassandra.coordinator.dc",ZCQ="db.hbase.namespace",$CQ="db.redis.database_index",UCQ="db.mongodb.collection",ECQ="db.sql.table",KCQ="exception.type",VCQ="exception.message",ICQ="exception.stacktrace",HCQ="exception.escaped",DCQ="faas.trigger",NCQ="faas.execution",LCQ="faas.document.collection",qCQ="faas.document.operation",MCQ="faas.document.time",zCQ="faas.document.name",RCQ="faas.time",wCQ="faas.cron",jCQ="faas.coldstart",OCQ="faas.invoked_name",PCQ="faas.invoked_provider",TCQ="faas.invoked_region",SCQ="net.transport",kCQ="net.peer.ip",_CQ="net.peer.port",vCQ="net.peer.name",yCQ="net.host.ip",gCQ="net.host.port",hCQ="net.host.name",xCQ="net.host.connection.type",fCQ="net.host.connection.subtype",bCQ="net.host.carrier.name",mCQ="net.host.carrier.mcc",uCQ="net.host.carrier.mnc",dCQ="net.host.carrier.icc",cCQ="peer.service",lCQ="enduser.id",pCQ="enduser.role",iCQ="enduser.scope",nCQ="thread.id",sCQ="thread.name",rCQ="code.function",aCQ="code.namespace",oCQ="code.filepath",tCQ="code.lineno",eCQ="http.method",A1Q="http.url",Q1Q="http.target",B1Q="http.host",Y1Q="http.scheme",J1Q="http.status_code",C1Q="http.flavor",X1Q="http.user_agent",G1Q="http.request_content_length",W1Q="http.request_content_length_uncompressed",F1Q="http.response_content_length",Z1Q="http.response_content_length_uncompressed",$1Q="http.server_name",U1Q="http.route",E1Q="http.client_ip",K1Q="aws.dynamodb.table_names",V1Q="aws.dynamodb.consumed_capacity",I1Q="aws.dynamodb.item_collection_metrics",H1Q="aws.dynamodb.provisioned_read_capacity",D1Q="aws.dynamodb.provisioned_write_capacity",N1Q="aws.dynamodb.consistent_read",L1Q="aws.dynamodb.projection",q1Q="aws.dynamodb.limit",M1Q="aws.dynamodb.attributes_to_get",z1Q="aws.dynamodb.index_name",R1Q="aws.dynamodb.select",w1Q="aws.dynamodb.global_secondary_indexes",j1Q="aws.dynamodb.local_secondary_indexes",O1Q="aws.dynamodb.exclusive_start_table",P1Q="aws.dynamodb.table_count",T1Q="aws.dynamodb.scan_forward",S1Q="aws.dynamodb.segment",k1Q="aws.dynamodb.total_segments",_1Q="aws.dynamodb.count",v1Q="aws.dynamodb.scanned_count",y1Q="aws.dynamodb.attribute_definitions",g1Q="aws.dynamodb.global_secondary_index_updates",h1Q="messaging.system",x1Q="messaging.destination",f1Q="messaging.destination_kind",b1Q="messaging.temp_destination",m1Q="messaging.protocol",u1Q="messaging.protocol_version",d1Q="messaging.url",c1Q="messaging.message_id",l1Q="messaging.conversation_id",p1Q="messaging.message_payload_size_bytes",i1Q="messaging.message_payload_compressed_size_bytes",n1Q="messaging.operation",s1Q="messaging.consumer_id",r1Q="messaging.rabbitmq.routing_key",a1Q="messaging.kafka.message_key",o1Q="messaging.kafka.consumer_group",t1Q="messaging.kafka.client_id",e1Q="messaging.kafka.partition",AXQ="messaging.kafka.tombstone",QXQ="rpc.system",BXQ="rpc.service",YXQ="rpc.method",JXQ="rpc.grpc.status_code",CXQ="rpc.jsonrpc.version",XXQ="rpc.jsonrpc.request_id",GXQ="rpc.jsonrpc.error_code",WXQ="rpc.jsonrpc.error_message",FXQ="message.type",ZXQ="message.id",$XQ="message.compressed_size",UXQ="message.uncompressed_size";hGQ.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=n5Q;hGQ.SEMATTRS_DB_SYSTEM=s5Q;hGQ.SEMATTRS_DB_CONNECTION_STRING=r5Q;hGQ.SEMATTRS_DB_USER=a5Q;hGQ.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=o5Q;hGQ.SEMATTRS_DB_NAME=t5Q;hGQ.SEMATTRS_DB_STATEMENT=e5Q;hGQ.SEMATTRS_DB_OPERATION=ACQ;hGQ.SEMATTRS_DB_MSSQL_INSTANCE_NAME=QCQ;hGQ.SEMATTRS_DB_CASSANDRA_KEYSPACE=BCQ;hGQ.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=YCQ;hGQ.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=JCQ;hGQ.SEMATTRS_DB_CASSANDRA_TABLE=CCQ;hGQ.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=XCQ;hGQ.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=GCQ;hGQ.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=WCQ;hGQ.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=FCQ;hGQ.SEMATTRS_DB_HBASE_NAMESPACE=ZCQ;hGQ.SEMATTRS_DB_REDIS_DATABASE_INDEX=$CQ;hGQ.SEMATTRS_DB_MONGODB_COLLECTION=UCQ;hGQ.SEMATTRS_DB_SQL_TABLE=ECQ;hGQ.SEMATTRS_EXCEPTION_TYPE=KCQ;hGQ.SEMATTRS_EXCEPTION_MESSAGE=VCQ;hGQ.SEMATTRS_EXCEPTION_STACKTRACE=ICQ;hGQ.SEMATTRS_EXCEPTION_ESCAPED=HCQ;hGQ.SEMATTRS_FAAS_TRIGGER=DCQ;hGQ.SEMATTRS_FAAS_EXECUTION=NCQ;hGQ.SEMATTRS_FAAS_DOCUMENT_COLLECTION=LCQ;hGQ.SEMATTRS_FAAS_DOCUMENT_OPERATION=qCQ;hGQ.SEMATTRS_FAAS_DOCUMENT_TIME=MCQ;hGQ.SEMATTRS_FAAS_DOCUMENT_NAME=zCQ;hGQ.SEMATTRS_FAAS_TIME=RCQ;hGQ.SEMATTRS_FAAS_CRON=wCQ;hGQ.SEMATTRS_FAAS_COLDSTART=jCQ;hGQ.SEMATTRS_FAAS_INVOKED_NAME=OCQ;hGQ.SEMATTRS_FAAS_INVOKED_PROVIDER=PCQ;hGQ.SEMATTRS_FAAS_INVOKED_REGION=TCQ;hGQ.SEMATTRS_NET_TRANSPORT=SCQ;hGQ.SEMATTRS_NET_PEER_IP=kCQ;hGQ.SEMATTRS_NET_PEER_PORT=_CQ;hGQ.SEMATTRS_NET_PEER_NAME=vCQ;hGQ.SEMATTRS_NET_HOST_IP=yCQ;hGQ.SEMATTRS_NET_HOST_PORT=gCQ;hGQ.SEMATTRS_NET_HOST_NAME=hCQ;hGQ.SEMATTRS_NET_HOST_CONNECTION_TYPE=xCQ;hGQ.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=fCQ;hGQ.SEMATTRS_NET_HOST_CARRIER_NAME=bCQ;hGQ.SEMATTRS_NET_HOST_CARRIER_MCC=mCQ;hGQ.SEMATTRS_NET_HOST_CARRIER_MNC=uCQ;hGQ.SEMATTRS_NET_HOST_CARRIER_ICC=dCQ;hGQ.SEMATTRS_PEER_SERVICE=cCQ;hGQ.SEMATTRS_ENDUSER_ID=lCQ;hGQ.SEMATTRS_ENDUSER_ROLE=pCQ;hGQ.SEMATTRS_ENDUSER_SCOPE=iCQ;hGQ.SEMATTRS_THREAD_ID=nCQ;hGQ.SEMATTRS_THREAD_NAME=sCQ;hGQ.SEMATTRS_CODE_FUNCTION=rCQ;hGQ.SEMATTRS_CODE_NAMESPACE=aCQ;hGQ.SEMATTRS_CODE_FILEPATH=oCQ;hGQ.SEMATTRS_CODE_LINENO=tCQ;hGQ.SEMATTRS_HTTP_METHOD=eCQ;hGQ.SEMATTRS_HTTP_URL=A1Q;hGQ.SEMATTRS_HTTP_TARGET=Q1Q;hGQ.SEMATTRS_HTTP_HOST=B1Q;hGQ.SEMATTRS_HTTP_SCHEME=Y1Q;hGQ.SEMATTRS_HTTP_STATUS_CODE=J1Q;hGQ.SEMATTRS_HTTP_FLAVOR=C1Q;hGQ.SEMATTRS_HTTP_USER_AGENT=X1Q;hGQ.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=G1Q;hGQ.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=W1Q;hGQ.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=F1Q;hGQ.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=Z1Q;hGQ.SEMATTRS_HTTP_SERVER_NAME=$1Q;hGQ.SEMATTRS_HTTP_ROUTE=U1Q;hGQ.SEMATTRS_HTTP_CLIENT_IP=E1Q;hGQ.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=K1Q;hGQ.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=V1Q;hGQ.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=I1Q;hGQ.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=H1Q;hGQ.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=D1Q;hGQ.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=N1Q;hGQ.SEMATTRS_AWS_DYNAMODB_PROJECTION=L1Q;hGQ.SEMATTRS_AWS_DYNAMODB_LIMIT=q1Q;hGQ.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=M1Q;hGQ.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=z1Q;hGQ.SEMATTRS_AWS_DYNAMODB_SELECT=R1Q;hGQ.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=w1Q;hGQ.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=j1Q;hGQ.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=O1Q;hGQ.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=P1Q;hGQ.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=T1Q;hGQ.SEMATTRS_AWS_DYNAMODB_SEGMENT=S1Q;hGQ.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=k1Q;hGQ.SEMATTRS_AWS_DYNAMODB_COUNT=_1Q;hGQ.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=v1Q;hGQ.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=y1Q;hGQ.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=g1Q;hGQ.SEMATTRS_MESSAGING_SYSTEM=h1Q;hGQ.SEMATTRS_MESSAGING_DESTINATION=x1Q;hGQ.SEMATTRS_MESSAGING_DESTINATION_KIND=f1Q;hGQ.SEMATTRS_MESSAGING_TEMP_DESTINATION=b1Q;hGQ.SEMATTRS_MESSAGING_PROTOCOL=m1Q;hGQ.SEMATTRS_MESSAGING_PROTOCOL_VERSION=u1Q;hGQ.SEMATTRS_MESSAGING_URL=d1Q;hGQ.SEMATTRS_MESSAGING_MESSAGE_ID=c1Q;hGQ.SEMATTRS_MESSAGING_CONVERSATION_ID=l1Q;hGQ.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=p1Q;hGQ.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=i1Q;hGQ.SEMATTRS_MESSAGING_OPERATION=n1Q;hGQ.SEMATTRS_MESSAGING_CONSUMER_ID=s1Q;hGQ.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=r1Q;hGQ.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=a1Q;hGQ.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=o1Q;hGQ.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=t1Q;hGQ.SEMATTRS_MESSAGING_KAFKA_PARTITION=e1Q;hGQ.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=AXQ;hGQ.SEMATTRS_RPC_SYSTEM=QXQ;hGQ.SEMATTRS_RPC_SERVICE=BXQ;hGQ.SEMATTRS_RPC_METHOD=YXQ;hGQ.SEMATTRS_RPC_GRPC_STATUS_CODE=JXQ;hGQ.SEMATTRS_RPC_JSONRPC_VERSION=CXQ;hGQ.SEMATTRS_RPC_JSONRPC_REQUEST_ID=XXQ;hGQ.SEMATTRS_RPC_JSONRPC_ERROR_CODE=GXQ;hGQ.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=WXQ;hGQ.SEMATTRS_MESSAGE_TYPE=FXQ;hGQ.SEMATTRS_MESSAGE_ID=ZXQ;hGQ.SEMATTRS_MESSAGE_COMPRESSED_SIZE=$XQ;hGQ.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=UXQ;hGQ.SemanticAttributes=(0,s5.createConstMap)([n5Q,s5Q,r5Q,a5Q,o5Q,t5Q,e5Q,ACQ,QCQ,BCQ,YCQ,JCQ,CCQ,XCQ,GCQ,WCQ,FCQ,ZCQ,$CQ,UCQ,ECQ,KCQ,VCQ,ICQ,HCQ,DCQ,NCQ,LCQ,qCQ,MCQ,zCQ,RCQ,wCQ,jCQ,OCQ,PCQ,TCQ,SCQ,kCQ,_CQ,vCQ,yCQ,gCQ,hCQ,xCQ,fCQ,bCQ,mCQ,uCQ,dCQ,cCQ,lCQ,pCQ,iCQ,nCQ,sCQ,rCQ,aCQ,oCQ,tCQ,eCQ,A1Q,Q1Q,B1Q,Y1Q,J1Q,C1Q,X1Q,G1Q,W1Q,F1Q,Z1Q,$1Q,U1Q,E1Q,K1Q,V1Q,I1Q,H1Q,D1Q,N1Q,L1Q,q1Q,M1Q,z1Q,R1Q,w1Q,j1Q,O1Q,P1Q,T1Q,S1Q,k1Q,_1Q,v1Q,y1Q,g1Q,h1Q,x1Q,f1Q,b1Q,m1Q,u1Q,d1Q,c1Q,l1Q,p1Q,i1Q,n1Q,s1Q,r1Q,a1Q,o1Q,t1Q,e1Q,AXQ,QXQ,BXQ,YXQ,JXQ,CXQ,XXQ,GXQ,WXQ,FXQ,ZXQ,$XQ,UXQ]);var EXQ="other_sql",KXQ="mssql",VXQ="mysql",IXQ="oracle",HXQ="db2",DXQ="postgresql",NXQ="redshift",LXQ="hive",qXQ="cloudscape",MXQ="hsqldb",zXQ="progress",RXQ="maxdb",wXQ="hanadb",jXQ="ingres",OXQ="firstsql",PXQ="edb",TXQ="cache",SXQ="adabas",kXQ="firebird",_XQ="derby",vXQ="filemaker",yXQ="informix",gXQ="instantdb",hXQ="interbase",xXQ="mariadb",fXQ="netezza",bXQ="pervasive",mXQ="pointbase",uXQ="sqlite",dXQ="sybase",cXQ="teradata",lXQ="vertica",pXQ="h2",iXQ="coldfusion",nXQ="cassandra",sXQ="hbase",rXQ="mongodb",aXQ="redis",oXQ="couchbase",tXQ="couchdb",eXQ="cosmosdb",A6Q="dynamodb",Q6Q="neo4j",B6Q="geode",Y6Q="elasticsearch",J6Q="memcached",C6Q="cockroachdb";hGQ.DBSYSTEMVALUES_OTHER_SQL=EXQ;hGQ.DBSYSTEMVALUES_MSSQL=KXQ;hGQ.DBSYSTEMVALUES_MYSQL=VXQ;hGQ.DBSYSTEMVALUES_ORACLE=IXQ;hGQ.DBSYSTEMVALUES_DB2=HXQ;hGQ.DBSYSTEMVALUES_POSTGRESQL=DXQ;hGQ.DBSYSTEMVALUES_REDSHIFT=NXQ;hGQ.DBSYSTEMVALUES_HIVE=LXQ;hGQ.DBSYSTEMVALUES_CLOUDSCAPE=qXQ;hGQ.DBSYSTEMVALUES_HSQLDB=MXQ;hGQ.DBSYSTEMVALUES_PROGRESS=zXQ;hGQ.DBSYSTEMVALUES_MAXDB=RXQ;hGQ.DBSYSTEMVALUES_HANADB=wXQ;hGQ.DBSYSTEMVALUES_INGRES=jXQ;hGQ.DBSYSTEMVALUES_FIRSTSQL=OXQ;hGQ.DBSYSTEMVALUES_EDB=PXQ;hGQ.DBSYSTEMVALUES_CACHE=TXQ;hGQ.DBSYSTEMVALUES_ADABAS=SXQ;hGQ.DBSYSTEMVALUES_FIREBIRD=kXQ;hGQ.DBSYSTEMVALUES_DERBY=_XQ;hGQ.DBSYSTEMVALUES_FILEMAKER=vXQ;hGQ.DBSYSTEMVALUES_INFORMIX=yXQ;hGQ.DBSYSTEMVALUES_INSTANTDB=gXQ;hGQ.DBSYSTEMVALUES_INTERBASE=hXQ;hGQ.DBSYSTEMVALUES_MARIADB=xXQ;hGQ.DBSYSTEMVALUES_NETEZZA=fXQ;hGQ.DBSYSTEMVALUES_PERVASIVE=bXQ;hGQ.DBSYSTEMVALUES_POINTBASE=mXQ;hGQ.DBSYSTEMVALUES_SQLITE=uXQ;hGQ.DBSYSTEMVALUES_SYBASE=dXQ;hGQ.DBSYSTEMVALUES_TERADATA=cXQ;hGQ.DBSYSTEMVALUES_VERTICA=lXQ;hGQ.DBSYSTEMVALUES_H2=pXQ;hGQ.DBSYSTEMVALUES_COLDFUSION=iXQ;hGQ.DBSYSTEMVALUES_CASSANDRA=nXQ;hGQ.DBSYSTEMVALUES_HBASE=sXQ;hGQ.DBSYSTEMVALUES_MONGODB=rXQ;hGQ.DBSYSTEMVALUES_REDIS=aXQ;hGQ.DBSYSTEMVALUES_COUCHBASE=oXQ;hGQ.DBSYSTEMVALUES_COUCHDB=tXQ;hGQ.DBSYSTEMVALUES_COSMOSDB=eXQ;hGQ.DBSYSTEMVALUES_DYNAMODB=A6Q;hGQ.DBSYSTEMVALUES_NEO4J=Q6Q;hGQ.DBSYSTEMVALUES_GEODE=B6Q;hGQ.DBSYSTEMVALUES_ELASTICSEARCH=Y6Q;hGQ.DBSYSTEMVALUES_MEMCACHED=J6Q;hGQ.DBSYSTEMVALUES_COCKROACHDB=C6Q;hGQ.DbSystemValues=(0,s5.createConstMap)([EXQ,KXQ,VXQ,IXQ,HXQ,DXQ,NXQ,LXQ,qXQ,MXQ,zXQ,RXQ,wXQ,jXQ,OXQ,PXQ,TXQ,SXQ,kXQ,_XQ,vXQ,yXQ,gXQ,hXQ,xXQ,fXQ,bXQ,mXQ,uXQ,dXQ,cXQ,lXQ,pXQ,iXQ,nXQ,sXQ,rXQ,aXQ,oXQ,tXQ,eXQ,A6Q,Q6Q,B6Q,Y6Q,J6Q,C6Q]);var X6Q="all",G6Q="each_quorum",W6Q="quorum",F6Q="local_quorum",Z6Q="one",$6Q="two",U6Q="three",E6Q="local_one",K6Q="any",V6Q="serial",I6Q="local_serial";hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=X6Q;hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=G6Q;hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=W6Q;hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=F6Q;hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=Z6Q;hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=$6Q;hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=U6Q;hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=E6Q;hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=K6Q;hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=V6Q;hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=I6Q;hGQ.DbCassandraConsistencyLevelValues=(0,s5.createConstMap)([X6Q,G6Q,W6Q,F6Q,Z6Q,$6Q,U6Q,E6Q,K6Q,V6Q,I6Q]);var H6Q="datasource",D6Q="http",N6Q="pubsub",L6Q="timer",q6Q="other";hGQ.FAASTRIGGERVALUES_DATASOURCE=H6Q;hGQ.FAASTRIGGERVALUES_HTTP=D6Q;hGQ.FAASTRIGGERVALUES_PUBSUB=N6Q;hGQ.FAASTRIGGERVALUES_TIMER=L6Q;hGQ.FAASTRIGGERVALUES_OTHER=q6Q;hGQ.FaasTriggerValues=(0,s5.createConstMap)([H6Q,D6Q,N6Q,L6Q,q6Q]);var M6Q="insert",z6Q="edit",R6Q="delete";hGQ.FAASDOCUMENTOPERATIONVALUES_INSERT=M6Q;hGQ.FAASDOCUMENTOPERATIONVALUES_EDIT=z6Q;hGQ.FAASDOCUMENTOPERATIONVALUES_DELETE=R6Q;hGQ.FaasDocumentOperationValues=(0,s5.createConstMap)([M6Q,z6Q,R6Q]);var w6Q="alibaba_cloud",j6Q="aws",O6Q="azure",P6Q="gcp";hGQ.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=w6Q;hGQ.FAASINVOKEDPROVIDERVALUES_AWS=j6Q;hGQ.FAASINVOKEDPROVIDERVALUES_AZURE=O6Q;hGQ.FAASINVOKEDPROVIDERVALUES_GCP=P6Q;hGQ.FaasInvokedProviderValues=(0,s5.createConstMap)([w6Q,j6Q,O6Q,P6Q]);var T6Q="ip_tcp",S6Q="ip_udp",k6Q="ip",_6Q="unix",v6Q="pipe",y6Q="inproc",g6Q="other";hGQ.NETTRANSPORTVALUES_IP_TCP=T6Q;hGQ.NETTRANSPORTVALUES_IP_UDP=S6Q;hGQ.NETTRANSPORTVALUES_IP=k6Q;hGQ.NETTRANSPORTVALUES_UNIX=_6Q;hGQ.NETTRANSPORTVALUES_PIPE=v6Q;hGQ.NETTRANSPORTVALUES_INPROC=y6Q;hGQ.NETTRANSPORTVALUES_OTHER=g6Q;hGQ.NetTransportValues=(0,s5.createConstMap)([T6Q,S6Q,k6Q,_6Q,v6Q,y6Q,g6Q]);var h6Q="wifi",x6Q="wired",f6Q="cell",b6Q="unavailable",m6Q="unknown";hGQ.NETHOSTCONNECTIONTYPEVALUES_WIFI=h6Q;hGQ.NETHOSTCONNECTIONTYPEVALUES_WIRED=x6Q;hGQ.NETHOSTCONNECTIONTYPEVALUES_CELL=f6Q;hGQ.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=b6Q;hGQ.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=m6Q;hGQ.NetHostConnectionTypeValues=(0,s5.createConstMap)([h6Q,x6Q,f6Q,b6Q,m6Q]);var u6Q="gprs",d6Q="edge",c6Q="umts",l6Q="cdma",p6Q="evdo_0",i6Q="evdo_a",n6Q="cdma2000_1xrtt",s6Q="hsdpa",r6Q="hsupa",a6Q="hspa",o6Q="iden",t6Q="evdo_b",e6Q="lte",AGQ="ehrpd",QGQ="hspap",BGQ="gsm",YGQ="td_scdma",JGQ="iwlan",CGQ="nr",XGQ="nrnsa",GGQ="lte_ca";hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=u6Q;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=d6Q;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=c6Q;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=l6Q;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=p6Q;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=i6Q;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=n6Q;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=s6Q;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=r6Q;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=a6Q;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=o6Q;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=t6Q;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=e6Q;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=AGQ;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=QGQ;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=BGQ;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=YGQ;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=JGQ;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_NR=CGQ;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=XGQ;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=GGQ;hGQ.NetHostConnectionSubtypeValues=(0,s5.createConstMap)([u6Q,d6Q,c6Q,l6Q,p6Q,i6Q,n6Q,s6Q,r6Q,a6Q,o6Q,t6Q,e6Q,AGQ,QGQ,BGQ,YGQ,JGQ,CGQ,XGQ,GGQ]);var WGQ="1.0",FGQ="1.1",ZGQ="2.0",$GQ="SPDY",UGQ="QUIC";hGQ.HTTPFLAVORVALUES_HTTP_1_0=WGQ;hGQ.HTTPFLAVORVALUES_HTTP_1_1=FGQ;hGQ.HTTPFLAVORVALUES_HTTP_2_0=ZGQ;hGQ.HTTPFLAVORVALUES_SPDY=$GQ;hGQ.HTTPFLAVORVALUES_QUIC=UGQ;hGQ.HttpFlavorValues={HTTP_1_0:WGQ,HTTP_1_1:FGQ,HTTP_2_0:ZGQ,SPDY:$GQ,QUIC:UGQ};var EGQ="queue",KGQ="topic";hGQ.MESSAGINGDESTINATIONKINDVALUES_QUEUE=EGQ;hGQ.MESSAGINGDESTINATIONKINDVALUES_TOPIC=KGQ;hGQ.MessagingDestinationKindValues=(0,s5.createConstMap)([EGQ,KGQ]);var VGQ="receive",IGQ="process";hGQ.MESSAGINGOPERATIONVALUES_RECEIVE=VGQ;hGQ.MESSAGINGOPERATIONVALUES_PROCESS=IGQ;hGQ.MessagingOperationValues=(0,s5.createConstMap)([VGQ,IGQ]);var HGQ=0,DGQ=1,NGQ=2,LGQ=3,qGQ=4,MGQ=5,zGQ=6,RGQ=7,wGQ=8,jGQ=9,OGQ=10,PGQ=11,TGQ=12,SGQ=13,kGQ=14,_GQ=15,vGQ=16;hGQ.RPCGRPCSTATUSCODEVALUES_OK=HGQ;hGQ.RPCGRPCSTATUSCODEVALUES_CANCELLED=DGQ;hGQ.RPCGRPCSTATUSCODEVALUES_UNKNOWN=NGQ;hGQ.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=LGQ;hGQ.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=qGQ;hGQ.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=MGQ;hGQ.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=zGQ;hGQ.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=RGQ;hGQ.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=wGQ;hGQ.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=jGQ;hGQ.RPCGRPCSTATUSCODEVALUES_ABORTED=OGQ;hGQ.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=PGQ;hGQ.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=TGQ;hGQ.RPCGRPCSTATUSCODEVALUES_INTERNAL=SGQ;hGQ.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=kGQ;hGQ.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=_GQ;hGQ.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=vGQ;hGQ.RpcGrpcStatusCodeValues={OK:HGQ,CANCELLED:DGQ,UNKNOWN:NGQ,INVALID_ARGUMENT:LGQ,DEADLINE_EXCEEDED:qGQ,NOT_FOUND:MGQ,ALREADY_EXISTS:zGQ,PERMISSION_DENIED:RGQ,RESOURCE_EXHAUSTED:wGQ,FAILED_PRECONDITION:jGQ,ABORTED:OGQ,OUT_OF_RANGE:PGQ,UNIMPLEMENTED:TGQ,INTERNAL:SGQ,UNAVAILABLE:kGQ,DATA_LOSS:_GQ,UNAUTHENTICATED:vGQ};var yGQ="SENT",gGQ="RECEIVED";hGQ.MESSAGETYPEVALUES_SENT=yGQ;hGQ.MESSAGETYPEVALUES_RECEIVED=gGQ;hGQ.MessageTypeValues=(0,s5.createConstMap)([yGQ,gGQ])});var lGQ=R((N$)=>{var w$0=N$&&N$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),j$0=N$&&N$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))w$0(Q,A,B)};Object.defineProperty(N$,"__esModule",{value:!0});j$0(cGQ(),N$)});var NFQ=R((VFQ)=>{Object.defineProperty(VFQ,"__esModule",{value:!0});VFQ.SEMRESATTRS_K8S_STATEFULSET_NAME=VFQ.SEMRESATTRS_K8S_STATEFULSET_UID=VFQ.SEMRESATTRS_K8S_DEPLOYMENT_NAME=VFQ.SEMRESATTRS_K8S_DEPLOYMENT_UID=VFQ.SEMRESATTRS_K8S_REPLICASET_NAME=VFQ.SEMRESATTRS_K8S_REPLICASET_UID=VFQ.SEMRESATTRS_K8S_CONTAINER_NAME=VFQ.SEMRESATTRS_K8S_POD_NAME=VFQ.SEMRESATTRS_K8S_POD_UID=VFQ.SEMRESATTRS_K8S_NAMESPACE_NAME=VFQ.SEMRESATTRS_K8S_NODE_UID=VFQ.SEMRESATTRS_K8S_NODE_NAME=VFQ.SEMRESATTRS_K8S_CLUSTER_NAME=VFQ.SEMRESATTRS_HOST_IMAGE_VERSION=VFQ.SEMRESATTRS_HOST_IMAGE_ID=VFQ.SEMRESATTRS_HOST_IMAGE_NAME=VFQ.SEMRESATTRS_HOST_ARCH=VFQ.SEMRESATTRS_HOST_TYPE=VFQ.SEMRESATTRS_HOST_NAME=VFQ.SEMRESATTRS_HOST_ID=VFQ.SEMRESATTRS_FAAS_MAX_MEMORY=VFQ.SEMRESATTRS_FAAS_INSTANCE=VFQ.SEMRESATTRS_FAAS_VERSION=VFQ.SEMRESATTRS_FAAS_ID=VFQ.SEMRESATTRS_FAAS_NAME=VFQ.SEMRESATTRS_DEVICE_MODEL_NAME=VFQ.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=VFQ.SEMRESATTRS_DEVICE_ID=VFQ.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=VFQ.SEMRESATTRS_CONTAINER_IMAGE_TAG=VFQ.SEMRESATTRS_CONTAINER_IMAGE_NAME=VFQ.SEMRESATTRS_CONTAINER_RUNTIME=VFQ.SEMRESATTRS_CONTAINER_ID=VFQ.SEMRESATTRS_CONTAINER_NAME=VFQ.SEMRESATTRS_AWS_LOG_STREAM_ARNS=VFQ.SEMRESATTRS_AWS_LOG_STREAM_NAMES=VFQ.SEMRESATTRS_AWS_LOG_GROUP_ARNS=VFQ.SEMRESATTRS_AWS_LOG_GROUP_NAMES=VFQ.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=VFQ.SEMRESATTRS_AWS_ECS_TASK_REVISION=VFQ.SEMRESATTRS_AWS_ECS_TASK_FAMILY=VFQ.SEMRESATTRS_AWS_ECS_TASK_ARN=VFQ.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=VFQ.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=VFQ.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=VFQ.SEMRESATTRS_CLOUD_PLATFORM=VFQ.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=VFQ.SEMRESATTRS_CLOUD_REGION=VFQ.SEMRESATTRS_CLOUD_ACCOUNT_ID=VFQ.SEMRESATTRS_CLOUD_PROVIDER=void 0;VFQ.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=VFQ.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=VFQ.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=VFQ.CLOUDPLATFORMVALUES_AZURE_AKS=VFQ.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=VFQ.CLOUDPLATFORMVALUES_AZURE_VM=VFQ.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=VFQ.CLOUDPLATFORMVALUES_AWS_LAMBDA=VFQ.CLOUDPLATFORMVALUES_AWS_EKS=VFQ.CLOUDPLATFORMVALUES_AWS_ECS=VFQ.CLOUDPLATFORMVALUES_AWS_EC2=VFQ.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=VFQ.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=VFQ.CloudProviderValues=VFQ.CLOUDPROVIDERVALUES_GCP=VFQ.CLOUDPROVIDERVALUES_AZURE=VFQ.CLOUDPROVIDERVALUES_AWS=VFQ.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=VFQ.SemanticResourceAttributes=VFQ.SEMRESATTRS_WEBENGINE_DESCRIPTION=VFQ.SEMRESATTRS_WEBENGINE_VERSION=VFQ.SEMRESATTRS_WEBENGINE_NAME=VFQ.SEMRESATTRS_TELEMETRY_AUTO_VERSION=VFQ.SEMRESATTRS_TELEMETRY_SDK_VERSION=VFQ.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=VFQ.SEMRESATTRS_TELEMETRY_SDK_NAME=VFQ.SEMRESATTRS_SERVICE_VERSION=VFQ.SEMRESATTRS_SERVICE_INSTANCE_ID=VFQ.SEMRESATTRS_SERVICE_NAMESPACE=VFQ.SEMRESATTRS_SERVICE_NAME=VFQ.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=VFQ.SEMRESATTRS_PROCESS_RUNTIME_VERSION=VFQ.SEMRESATTRS_PROCESS_RUNTIME_NAME=VFQ.SEMRESATTRS_PROCESS_OWNER=VFQ.SEMRESATTRS_PROCESS_COMMAND_ARGS=VFQ.SEMRESATTRS_PROCESS_COMMAND_LINE=VFQ.SEMRESATTRS_PROCESS_COMMAND=VFQ.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=VFQ.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=VFQ.SEMRESATTRS_PROCESS_PID=VFQ.SEMRESATTRS_OS_VERSION=VFQ.SEMRESATTRS_OS_NAME=VFQ.SEMRESATTRS_OS_DESCRIPTION=VFQ.SEMRESATTRS_OS_TYPE=VFQ.SEMRESATTRS_K8S_CRONJOB_NAME=VFQ.SEMRESATTRS_K8S_CRONJOB_UID=VFQ.SEMRESATTRS_K8S_JOB_NAME=VFQ.SEMRESATTRS_K8S_JOB_UID=VFQ.SEMRESATTRS_K8S_DAEMONSET_NAME=VFQ.SEMRESATTRS_K8S_DAEMONSET_UID=void 0;VFQ.TelemetrySdkLanguageValues=VFQ.TELEMETRYSDKLANGUAGEVALUES_WEBJS=VFQ.TELEMETRYSDKLANGUAGEVALUES_RUBY=VFQ.TELEMETRYSDKLANGUAGEVALUES_PYTHON=VFQ.TELEMETRYSDKLANGUAGEVALUES_PHP=VFQ.TELEMETRYSDKLANGUAGEVALUES_NODEJS=VFQ.TELEMETRYSDKLANGUAGEVALUES_JAVA=VFQ.TELEMETRYSDKLANGUAGEVALUES_GO=VFQ.TELEMETRYSDKLANGUAGEVALUES_ERLANG=VFQ.TELEMETRYSDKLANGUAGEVALUES_DOTNET=VFQ.TELEMETRYSDKLANGUAGEVALUES_CPP=VFQ.OsTypeValues=VFQ.OSTYPEVALUES_Z_OS=VFQ.OSTYPEVALUES_SOLARIS=VFQ.OSTYPEVALUES_AIX=VFQ.OSTYPEVALUES_HPUX=VFQ.OSTYPEVALUES_DRAGONFLYBSD=VFQ.OSTYPEVALUES_OPENBSD=VFQ.OSTYPEVALUES_NETBSD=VFQ.OSTYPEVALUES_FREEBSD=VFQ.OSTYPEVALUES_DARWIN=VFQ.OSTYPEVALUES_LINUX=VFQ.OSTYPEVALUES_WINDOWS=VFQ.HostArchValues=VFQ.HOSTARCHVALUES_X86=VFQ.HOSTARCHVALUES_PPC64=VFQ.HOSTARCHVALUES_PPC32=VFQ.HOSTARCHVALUES_IA64=VFQ.HOSTARCHVALUES_ARM64=VFQ.HOSTARCHVALUES_ARM32=VFQ.HOSTARCHVALUES_AMD64=VFQ.AwsEcsLaunchtypeValues=VFQ.AWSECSLAUNCHTYPEVALUES_FARGATE=VFQ.AWSECSLAUNCHTYPEVALUES_EC2=VFQ.CloudPlatformValues=VFQ.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=VFQ.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=VFQ.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=VFQ.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=void 0;var L$=Ii(),pGQ="cloud.provider",iGQ="cloud.account.id",nGQ="cloud.region",sGQ="cloud.availability_zone",rGQ="cloud.platform",aGQ="aws.ecs.container.arn",oGQ="aws.ecs.cluster.arn",tGQ="aws.ecs.launchtype",eGQ="aws.ecs.task.arn",A7Q="aws.ecs.task.family",Q7Q="aws.ecs.task.revision",B7Q="aws.eks.cluster.arn",Y7Q="aws.log.group.names",J7Q="aws.log.group.arns",C7Q="aws.log.stream.names",X7Q="aws.log.stream.arns",G7Q="container.name",W7Q="container.id",F7Q="container.runtime",Z7Q="container.image.name",$7Q="container.image.tag",U7Q="deployment.environment",E7Q="device.id",K7Q="device.model.identifier",V7Q="device.model.name",I7Q="faas.name",H7Q="faas.id",D7Q="faas.version",N7Q="faas.instance",L7Q="faas.max_memory",q7Q="host.id",M7Q="host.name",z7Q="host.type",R7Q="host.arch",w7Q="host.image.name",j7Q="host.image.id",O7Q="host.image.version",P7Q="k8s.cluster.name",T7Q="k8s.node.name",S7Q="k8s.node.uid",k7Q="k8s.namespace.name",_7Q="k8s.pod.uid",v7Q="k8s.pod.name",y7Q="k8s.container.name",g7Q="k8s.replicaset.uid",h7Q="k8s.replicaset.name",x7Q="k8s.deployment.uid",f7Q="k8s.deployment.name",b7Q="k8s.statefulset.uid",m7Q="k8s.statefulset.name",u7Q="k8s.daemonset.uid",d7Q="k8s.daemonset.name",c7Q="k8s.job.uid",l7Q="k8s.job.name",p7Q="k8s.cronjob.uid",i7Q="k8s.cronjob.name",n7Q="os.type",s7Q="os.description",r7Q="os.name",a7Q="os.version",o7Q="process.pid",t7Q="process.executable.name",e7Q="process.executable.path",AWQ="process.command",QWQ="process.command_line",BWQ="process.command_args",YWQ="process.owner",JWQ="process.runtime.name",CWQ="process.runtime.version",XWQ="process.runtime.description",GWQ="service.name",WWQ="service.namespace",FWQ="service.instance.id",ZWQ="service.version",$WQ="telemetry.sdk.name",UWQ="telemetry.sdk.language",EWQ="telemetry.sdk.version",KWQ="telemetry.auto.version",VWQ="webengine.name",IWQ="webengine.version",HWQ="webengine.description";VFQ.SEMRESATTRS_CLOUD_PROVIDER=pGQ;VFQ.SEMRESATTRS_CLOUD_ACCOUNT_ID=iGQ;VFQ.SEMRESATTRS_CLOUD_REGION=nGQ;VFQ.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=sGQ;VFQ.SEMRESATTRS_CLOUD_PLATFORM=rGQ;VFQ.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=aGQ;VFQ.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=oGQ;VFQ.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=tGQ;VFQ.SEMRESATTRS_AWS_ECS_TASK_ARN=eGQ;VFQ.SEMRESATTRS_AWS_ECS_TASK_FAMILY=A7Q;VFQ.SEMRESATTRS_AWS_ECS_TASK_REVISION=Q7Q;VFQ.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=B7Q;VFQ.SEMRESATTRS_AWS_LOG_GROUP_NAMES=Y7Q;VFQ.SEMRESATTRS_AWS_LOG_GROUP_ARNS=J7Q;VFQ.SEMRESATTRS_AWS_LOG_STREAM_NAMES=C7Q;VFQ.SEMRESATTRS_AWS_LOG_STREAM_ARNS=X7Q;VFQ.SEMRESATTRS_CONTAINER_NAME=G7Q;VFQ.SEMRESATTRS_CONTAINER_ID=W7Q;VFQ.SEMRESATTRS_CONTAINER_RUNTIME=F7Q;VFQ.SEMRESATTRS_CONTAINER_IMAGE_NAME=Z7Q;VFQ.SEMRESATTRS_CONTAINER_IMAGE_TAG=$7Q;VFQ.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=U7Q;VFQ.SEMRESATTRS_DEVICE_ID=E7Q;VFQ.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=K7Q;VFQ.SEMRESATTRS_DEVICE_MODEL_NAME=V7Q;VFQ.SEMRESATTRS_FAAS_NAME=I7Q;VFQ.SEMRESATTRS_FAAS_ID=H7Q;VFQ.SEMRESATTRS_FAAS_VERSION=D7Q;VFQ.SEMRESATTRS_FAAS_INSTANCE=N7Q;VFQ.SEMRESATTRS_FAAS_MAX_MEMORY=L7Q;VFQ.SEMRESATTRS_HOST_ID=q7Q;VFQ.SEMRESATTRS_HOST_NAME=M7Q;VFQ.SEMRESATTRS_HOST_TYPE=z7Q;VFQ.SEMRESATTRS_HOST_ARCH=R7Q;VFQ.SEMRESATTRS_HOST_IMAGE_NAME=w7Q;VFQ.SEMRESATTRS_HOST_IMAGE_ID=j7Q;VFQ.SEMRESATTRS_HOST_IMAGE_VERSION=O7Q;VFQ.SEMRESATTRS_K8S_CLUSTER_NAME=P7Q;VFQ.SEMRESATTRS_K8S_NODE_NAME=T7Q;VFQ.SEMRESATTRS_K8S_NODE_UID=S7Q;VFQ.SEMRESATTRS_K8S_NAMESPACE_NAME=k7Q;VFQ.SEMRESATTRS_K8S_POD_UID=_7Q;VFQ.SEMRESATTRS_K8S_POD_NAME=v7Q;VFQ.SEMRESATTRS_K8S_CONTAINER_NAME=y7Q;VFQ.SEMRESATTRS_K8S_REPLICASET_UID=g7Q;VFQ.SEMRESATTRS_K8S_REPLICASET_NAME=h7Q;VFQ.SEMRESATTRS_K8S_DEPLOYMENT_UID=x7Q;VFQ.SEMRESATTRS_K8S_DEPLOYMENT_NAME=f7Q;VFQ.SEMRESATTRS_K8S_STATEFULSET_UID=b7Q;VFQ.SEMRESATTRS_K8S_STATEFULSET_NAME=m7Q;VFQ.SEMRESATTRS_K8S_DAEMONSET_UID=u7Q;VFQ.SEMRESATTRS_K8S_DAEMONSET_NAME=d7Q;VFQ.SEMRESATTRS_K8S_JOB_UID=c7Q;VFQ.SEMRESATTRS_K8S_JOB_NAME=l7Q;VFQ.SEMRESATTRS_K8S_CRONJOB_UID=p7Q;VFQ.SEMRESATTRS_K8S_CRONJOB_NAME=i7Q;VFQ.SEMRESATTRS_OS_TYPE=n7Q;VFQ.SEMRESATTRS_OS_DESCRIPTION=s7Q;VFQ.SEMRESATTRS_OS_NAME=r7Q;VFQ.SEMRESATTRS_OS_VERSION=a7Q;VFQ.SEMRESATTRS_PROCESS_PID=o7Q;VFQ.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=t7Q;VFQ.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=e7Q;VFQ.SEMRESATTRS_PROCESS_COMMAND=AWQ;VFQ.SEMRESATTRS_PROCESS_COMMAND_LINE=QWQ;VFQ.SEMRESATTRS_PROCESS_COMMAND_ARGS=BWQ;VFQ.SEMRESATTRS_PROCESS_OWNER=YWQ;VFQ.SEMRESATTRS_PROCESS_RUNTIME_NAME=JWQ;VFQ.SEMRESATTRS_PROCESS_RUNTIME_VERSION=CWQ;VFQ.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=XWQ;VFQ.SEMRESATTRS_SERVICE_NAME=GWQ;VFQ.SEMRESATTRS_SERVICE_NAMESPACE=WWQ;VFQ.SEMRESATTRS_SERVICE_INSTANCE_ID=FWQ;VFQ.SEMRESATTRS_SERVICE_VERSION=ZWQ;VFQ.SEMRESATTRS_TELEMETRY_SDK_NAME=$WQ;VFQ.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=UWQ;VFQ.SEMRESATTRS_TELEMETRY_SDK_VERSION=EWQ;VFQ.SEMRESATTRS_TELEMETRY_AUTO_VERSION=KWQ;VFQ.SEMRESATTRS_WEBENGINE_NAME=VWQ;VFQ.SEMRESATTRS_WEBENGINE_VERSION=IWQ;VFQ.SEMRESATTRS_WEBENGINE_DESCRIPTION=HWQ;VFQ.SemanticResourceAttributes=(0,L$.createConstMap)([pGQ,iGQ,nGQ,sGQ,rGQ,aGQ,oGQ,tGQ,eGQ,A7Q,Q7Q,B7Q,Y7Q,J7Q,C7Q,X7Q,G7Q,W7Q,F7Q,Z7Q,$7Q,U7Q,E7Q,K7Q,V7Q,I7Q,H7Q,D7Q,N7Q,L7Q,q7Q,M7Q,z7Q,R7Q,w7Q,j7Q,O7Q,P7Q,T7Q,S7Q,k7Q,_7Q,v7Q,y7Q,g7Q,h7Q,x7Q,f7Q,b7Q,m7Q,u7Q,d7Q,c7Q,l7Q,p7Q,i7Q,n7Q,s7Q,r7Q,a7Q,o7Q,t7Q,e7Q,AWQ,QWQ,BWQ,YWQ,JWQ,CWQ,XWQ,GWQ,WWQ,FWQ,ZWQ,$WQ,UWQ,EWQ,KWQ,VWQ,IWQ,HWQ]);var DWQ="alibaba_cloud",NWQ="aws",LWQ="azure",qWQ="gcp";VFQ.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=DWQ;VFQ.CLOUDPROVIDERVALUES_AWS=NWQ;VFQ.CLOUDPROVIDERVALUES_AZURE=LWQ;VFQ.CLOUDPROVIDERVALUES_GCP=qWQ;VFQ.CloudProviderValues=(0,L$.createConstMap)([DWQ,NWQ,LWQ,qWQ]);var MWQ="alibaba_cloud_ecs",zWQ="alibaba_cloud_fc",RWQ="aws_ec2",wWQ="aws_ecs",jWQ="aws_eks",OWQ="aws_lambda",PWQ="aws_elastic_beanstalk",TWQ="azure_vm",SWQ="azure_container_instances",kWQ="azure_aks",_WQ="azure_functions",vWQ="azure_app_service",yWQ="gcp_compute_engine",gWQ="gcp_cloud_run",hWQ="gcp_kubernetes_engine",xWQ="gcp_cloud_functions",fWQ="gcp_app_engine";VFQ.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=MWQ;VFQ.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=zWQ;VFQ.CLOUDPLATFORMVALUES_AWS_EC2=RWQ;VFQ.CLOUDPLATFORMVALUES_AWS_ECS=wWQ;VFQ.CLOUDPLATFORMVALUES_AWS_EKS=jWQ;VFQ.CLOUDPLATFORMVALUES_AWS_LAMBDA=OWQ;VFQ.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=PWQ;VFQ.CLOUDPLATFORMVALUES_AZURE_VM=TWQ;VFQ.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=SWQ;VFQ.CLOUDPLATFORMVALUES_AZURE_AKS=kWQ;VFQ.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=_WQ;VFQ.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=vWQ;VFQ.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=yWQ;VFQ.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=gWQ;VFQ.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=hWQ;VFQ.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=xWQ;VFQ.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=fWQ;VFQ.CloudPlatformValues=(0,L$.createConstMap)([MWQ,zWQ,RWQ,wWQ,jWQ,OWQ,PWQ,TWQ,SWQ,kWQ,_WQ,vWQ,yWQ,gWQ,hWQ,xWQ,fWQ]);var bWQ="ec2",mWQ="fargate";VFQ.AWSECSLAUNCHTYPEVALUES_EC2=bWQ;VFQ.AWSECSLAUNCHTYPEVALUES_FARGATE=mWQ;VFQ.AwsEcsLaunchtypeValues=(0,L$.createConstMap)([bWQ,mWQ]);var uWQ="amd64",dWQ="arm32",cWQ="arm64",lWQ="ia64",pWQ="ppc32",iWQ="ppc64",nWQ="x86";VFQ.HOSTARCHVALUES_AMD64=uWQ;VFQ.HOSTARCHVALUES_ARM32=dWQ;VFQ.HOSTARCHVALUES_ARM64=cWQ;VFQ.HOSTARCHVALUES_IA64=lWQ;VFQ.HOSTARCHVALUES_PPC32=pWQ;VFQ.HOSTARCHVALUES_PPC64=iWQ;VFQ.HOSTARCHVALUES_X86=nWQ;VFQ.HostArchValues=(0,L$.createConstMap)([uWQ,dWQ,cWQ,lWQ,pWQ,iWQ,nWQ]);var sWQ="windows",rWQ="linux",aWQ="darwin",oWQ="freebsd",tWQ="netbsd",eWQ="openbsd",AFQ="dragonflybsd",QFQ="hpux",BFQ="aix",YFQ="solaris",JFQ="z_os";VFQ.OSTYPEVALUES_WINDOWS=sWQ;VFQ.OSTYPEVALUES_LINUX=rWQ;VFQ.OSTYPEVALUES_DARWIN=aWQ;VFQ.OSTYPEVALUES_FREEBSD=oWQ;VFQ.OSTYPEVALUES_NETBSD=tWQ;VFQ.OSTYPEVALUES_OPENBSD=eWQ;VFQ.OSTYPEVALUES_DRAGONFLYBSD=AFQ;VFQ.OSTYPEVALUES_HPUX=QFQ;VFQ.OSTYPEVALUES_AIX=BFQ;VFQ.OSTYPEVALUES_SOLARIS=YFQ;VFQ.OSTYPEVALUES_Z_OS=JFQ;VFQ.OsTypeValues=(0,L$.createConstMap)([sWQ,rWQ,aWQ,oWQ,tWQ,eWQ,AFQ,QFQ,BFQ,YFQ,JFQ]);var CFQ="cpp",XFQ="dotnet",GFQ="erlang",WFQ="go",FFQ="java",ZFQ="nodejs",$FQ="php",UFQ="python",EFQ="ruby",KFQ="webjs";VFQ.TELEMETRYSDKLANGUAGEVALUES_CPP=CFQ;VFQ.TELEMETRYSDKLANGUAGEVALUES_DOTNET=XFQ;VFQ.TELEMETRYSDKLANGUAGEVALUES_ERLANG=GFQ;VFQ.TELEMETRYSDKLANGUAGEVALUES_GO=WFQ;VFQ.TELEMETRYSDKLANGUAGEVALUES_JAVA=FFQ;VFQ.TELEMETRYSDKLANGUAGEVALUES_NODEJS=ZFQ;VFQ.TELEMETRYSDKLANGUAGEVALUES_PHP=$FQ;VFQ.TELEMETRYSDKLANGUAGEVALUES_PYTHON=UFQ;VFQ.TELEMETRYSDKLANGUAGEVALUES_RUBY=EFQ;VFQ.TELEMETRYSDKLANGUAGEVALUES_WEBJS=KFQ;VFQ.TelemetrySdkLanguageValues=(0,L$.createConstMap)([CFQ,XFQ,GFQ,WFQ,FFQ,ZFQ,$FQ,UFQ,EFQ,KFQ])});var LFQ=R((q$)=>{var QE0=q$&&q$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),BE0=q$&&q$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))QE0(Q,A,B)};Object.defineProperty(q$,"__esModule",{value:!0});BE0(NFQ(),q$)});var wFQ=R((qFQ)=>{Object.defineProperty(qFQ,"__esModule",{value:!0});qFQ.HTTP_REQUEST_METHOD_VALUE_POST=qFQ.HTTP_REQUEST_METHOD_VALUE_PATCH=qFQ.HTTP_REQUEST_METHOD_VALUE_OPTIONS=qFQ.HTTP_REQUEST_METHOD_VALUE_HEAD=qFQ.HTTP_REQUEST_METHOD_VALUE_GET=qFQ.HTTP_REQUEST_METHOD_VALUE_DELETE=qFQ.HTTP_REQUEST_METHOD_VALUE_CONNECT=qFQ.HTTP_REQUEST_METHOD_VALUE_OTHER=qFQ.ATTR_HTTP_REQUEST_METHOD=qFQ.ATTR_HTTP_REQUEST_HEADER=qFQ.ATTR_EXCEPTION_TYPE=qFQ.ATTR_EXCEPTION_STACKTRACE=qFQ.ATTR_EXCEPTION_MESSAGE=qFQ.ATTR_EXCEPTION_ESCAPED=qFQ.ERROR_TYPE_VALUE_OTHER=qFQ.ATTR_ERROR_TYPE=qFQ.ATTR_CLIENT_PORT=qFQ.ATTR_CLIENT_ADDRESS=qFQ.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS=qFQ.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE=qFQ.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS=qFQ.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK=qFQ.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED=qFQ.ATTR_ASPNETCORE_RATE_LIMITING_POLICY=qFQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED=qFQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED=qFQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED=qFQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED=qFQ.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT=qFQ.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE=qFQ.ATTR_TELEMETRY_SDK_VERSION=qFQ.ATTR_TELEMETRY_SDK_NAME=qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS=qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT=qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_RUST=qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY=qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON=qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_PHP=qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS=qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA=qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_GO=qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG=qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET=qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_CPP=qFQ.ATTR_TELEMETRY_SDK_LANGUAGE=qFQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED=qFQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER=qFQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER=qFQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED=qFQ.ATTR_ASPNETCORE_RATE_LIMITING_RESULT=void 0;qFQ.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT=qFQ.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE=qFQ.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN=qFQ.ATTR_SIGNALR_CONNECTION_STATUS=qFQ.ATTR_SERVICE_VERSION=qFQ.ATTR_SERVICE_NAME=qFQ.ATTR_SERVER_PORT=qFQ.ATTR_SERVER_ADDRESS=qFQ.ATTR_OTEL_STATUS_DESCRIPTION=qFQ.OTEL_STATUS_CODE_VALUE_OK=qFQ.OTEL_STATUS_CODE_VALUE_ERROR=qFQ.ATTR_OTEL_STATUS_CODE=qFQ.ATTR_OTEL_SCOPE_VERSION=qFQ.ATTR_OTEL_SCOPE_NAME=qFQ.NETWORK_TYPE_VALUE_IPV6=qFQ.NETWORK_TYPE_VALUE_IPV4=qFQ.ATTR_NETWORK_TYPE=qFQ.NETWORK_TRANSPORT_VALUE_UNIX=qFQ.NETWORK_TRANSPORT_VALUE_UDP=qFQ.NETWORK_TRANSPORT_VALUE_TCP=qFQ.NETWORK_TRANSPORT_VALUE_QUIC=qFQ.NETWORK_TRANSPORT_VALUE_PIPE=qFQ.ATTR_NETWORK_TRANSPORT=qFQ.ATTR_NETWORK_PROTOCOL_VERSION=qFQ.ATTR_NETWORK_PROTOCOL_NAME=qFQ.ATTR_NETWORK_PEER_PORT=qFQ.ATTR_NETWORK_PEER_ADDRESS=qFQ.ATTR_NETWORK_LOCAL_PORT=qFQ.ATTR_NETWORK_LOCAL_ADDRESS=qFQ.JVM_THREAD_STATE_VALUE_WAITING=qFQ.JVM_THREAD_STATE_VALUE_TIMED_WAITING=qFQ.JVM_THREAD_STATE_VALUE_TERMINATED=qFQ.JVM_THREAD_STATE_VALUE_RUNNABLE=qFQ.JVM_THREAD_STATE_VALUE_NEW=qFQ.JVM_THREAD_STATE_VALUE_BLOCKED=qFQ.ATTR_JVM_THREAD_STATE=qFQ.ATTR_JVM_THREAD_DAEMON=qFQ.JVM_MEMORY_TYPE_VALUE_NON_HEAP=qFQ.JVM_MEMORY_TYPE_VALUE_HEAP=qFQ.ATTR_JVM_MEMORY_TYPE=qFQ.ATTR_JVM_MEMORY_POOL_NAME=qFQ.ATTR_JVM_GC_NAME=qFQ.ATTR_JVM_GC_ACTION=qFQ.ATTR_HTTP_ROUTE=qFQ.ATTR_HTTP_RESPONSE_STATUS_CODE=qFQ.ATTR_HTTP_RESPONSE_HEADER=qFQ.ATTR_HTTP_REQUEST_RESEND_COUNT=qFQ.ATTR_HTTP_REQUEST_METHOD_ORIGINAL=qFQ.HTTP_REQUEST_METHOD_VALUE_TRACE=qFQ.HTTP_REQUEST_METHOD_VALUE_PUT=void 0;qFQ.ATTR_USER_AGENT_ORIGINAL=qFQ.ATTR_URL_SCHEME=qFQ.ATTR_URL_QUERY=qFQ.ATTR_URL_PATH=qFQ.ATTR_URL_FULL=qFQ.ATTR_URL_FRAGMENT=qFQ.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS=qFQ.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS=qFQ.SIGNALR_TRANSPORT_VALUE_LONG_POLLING=qFQ.ATTR_SIGNALR_TRANSPORT=void 0;qFQ.ATTR_ASPNETCORE_RATE_LIMITING_RESULT="aspnetcore.rate_limiting.result";qFQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED="acquired";qFQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER="endpoint_limiter";qFQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER="global_limiter";qFQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED="request_canceled";qFQ.ATTR_TELEMETRY_SDK_LANGUAGE="telemetry.sdk.language";qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_CPP="cpp";qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET="dotnet";qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG="erlang";qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_GO="go";qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA="java";qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS="nodejs";qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_PHP="php";qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON="python";qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY="ruby";qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_RUST="rust";qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT="swift";qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS="webjs";qFQ.ATTR_TELEMETRY_SDK_NAME="telemetry.sdk.name";qFQ.ATTR_TELEMETRY_SDK_VERSION="telemetry.sdk.version";qFQ.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE="aspnetcore.diagnostics.handler.type";qFQ.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT="aspnetcore.diagnostics.exception.result";qFQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED="aborted";qFQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED="handled";qFQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED="skipped";qFQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED="unhandled";qFQ.ATTR_ASPNETCORE_RATE_LIMITING_POLICY="aspnetcore.rate_limiting.policy";qFQ.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED="aspnetcore.request.is_unhandled";qFQ.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK="aspnetcore.routing.is_fallback";qFQ.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS="aspnetcore.routing.match_status";qFQ.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE="failure";qFQ.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS="success";qFQ.ATTR_CLIENT_ADDRESS="client.address";qFQ.ATTR_CLIENT_PORT="client.port";qFQ.ATTR_ERROR_TYPE="error.type";qFQ.ERROR_TYPE_VALUE_OTHER="_OTHER";qFQ.ATTR_EXCEPTION_ESCAPED="exception.escaped";qFQ.ATTR_EXCEPTION_MESSAGE="exception.message";qFQ.ATTR_EXCEPTION_STACKTRACE="exception.stacktrace";qFQ.ATTR_EXCEPTION_TYPE="exception.type";var YE0=(A)=>`http.request.header.${A}`;qFQ.ATTR_HTTP_REQUEST_HEADER=YE0;qFQ.ATTR_HTTP_REQUEST_METHOD="http.request.method";qFQ.HTTP_REQUEST_METHOD_VALUE_OTHER="_OTHER";qFQ.HTTP_REQUEST_METHOD_VALUE_CONNECT="CONNECT";qFQ.HTTP_REQUEST_METHOD_VALUE_DELETE="DELETE";qFQ.HTTP_REQUEST_METHOD_VALUE_GET="GET";qFQ.HTTP_REQUEST_METHOD_VALUE_HEAD="HEAD";qFQ.HTTP_REQUEST_METHOD_VALUE_OPTIONS="OPTIONS";qFQ.HTTP_REQUEST_METHOD_VALUE_PATCH="PATCH";qFQ.HTTP_REQUEST_METHOD_VALUE_POST="POST";qFQ.HTTP_REQUEST_METHOD_VALUE_PUT="PUT";qFQ.HTTP_REQUEST_METHOD_VALUE_TRACE="TRACE";qFQ.ATTR_HTTP_REQUEST_METHOD_ORIGINAL="http.request.method_original";qFQ.ATTR_HTTP_REQUEST_RESEND_COUNT="http.request.resend_count";var JE0=(A)=>`http.response.header.${A}`;qFQ.ATTR_HTTP_RESPONSE_HEADER=JE0;qFQ.ATTR_HTTP_RESPONSE_STATUS_CODE="http.response.status_code";qFQ.ATTR_HTTP_ROUTE="http.route";qFQ.ATTR_JVM_GC_ACTION="jvm.gc.action";qFQ.ATTR_JVM_GC_NAME="jvm.gc.name";qFQ.ATTR_JVM_MEMORY_POOL_NAME="jvm.memory.pool.name";qFQ.ATTR_JVM_MEMORY_TYPE="jvm.memory.type";qFQ.JVM_MEMORY_TYPE_VALUE_HEAP="heap";qFQ.JVM_MEMORY_TYPE_VALUE_NON_HEAP="non_heap";qFQ.ATTR_JVM_THREAD_DAEMON="jvm.thread.daemon";qFQ.ATTR_JVM_THREAD_STATE="jvm.thread.state";qFQ.JVM_THREAD_STATE_VALUE_BLOCKED="blocked";qFQ.JVM_THREAD_STATE_VALUE_NEW="new";qFQ.JVM_THREAD_STATE_VALUE_RUNNABLE="runnable";qFQ.JVM_THREAD_STATE_VALUE_TERMINATED="terminated";qFQ.JVM_THREAD_STATE_VALUE_TIMED_WAITING="timed_waiting";qFQ.JVM_THREAD_STATE_VALUE_WAITING="waiting";qFQ.ATTR_NETWORK_LOCAL_ADDRESS="network.local.address";qFQ.ATTR_NETWORK_LOCAL_PORT="network.local.port";qFQ.ATTR_NETWORK_PEER_ADDRESS="network.peer.address";qFQ.ATTR_NETWORK_PEER_PORT="network.peer.port";qFQ.ATTR_NETWORK_PROTOCOL_NAME="network.protocol.name";qFQ.ATTR_NETWORK_PROTOCOL_VERSION="network.protocol.version";qFQ.ATTR_NETWORK_TRANSPORT="network.transport";qFQ.NETWORK_TRANSPORT_VALUE_PIPE="pipe";qFQ.NETWORK_TRANSPORT_VALUE_QUIC="quic";qFQ.NETWORK_TRANSPORT_VALUE_TCP="tcp";qFQ.NETWORK_TRANSPORT_VALUE_UDP="udp";qFQ.NETWORK_TRANSPORT_VALUE_UNIX="unix";qFQ.ATTR_NETWORK_TYPE="network.type";qFQ.NETWORK_TYPE_VALUE_IPV4="ipv4";qFQ.NETWORK_TYPE_VALUE_IPV6="ipv6";qFQ.ATTR_OTEL_SCOPE_NAME="otel.scope.name";qFQ.ATTR_OTEL_SCOPE_VERSION="otel.scope.version";qFQ.ATTR_OTEL_STATUS_CODE="otel.status_code";qFQ.OTEL_STATUS_CODE_VALUE_ERROR="ERROR";qFQ.OTEL_STATUS_CODE_VALUE_OK="OK";qFQ.ATTR_OTEL_STATUS_DESCRIPTION="otel.status_description";qFQ.ATTR_SERVER_ADDRESS="server.address";qFQ.ATTR_SERVER_PORT="server.port";qFQ.ATTR_SERVICE_NAME="service.name";qFQ.ATTR_SERVICE_VERSION="service.version";qFQ.ATTR_SIGNALR_CONNECTION_STATUS="signalr.connection.status";qFQ.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN="app_shutdown";qFQ.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE="normal_closure";qFQ.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT="timeout";qFQ.ATTR_SIGNALR_TRANSPORT="signalr.transport";qFQ.SIGNALR_TRANSPORT_VALUE_LONG_POLLING="long_polling";qFQ.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS="server_sent_events";qFQ.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS="web_sockets";qFQ.ATTR_URL_FRAGMENT="url.fragment";qFQ.ATTR_URL_FULL="url.full";qFQ.ATTR_URL_PATH="url.path";qFQ.ATTR_URL_QUERY="url.query";qFQ.ATTR_URL_SCHEME="url.scheme";qFQ.ATTR_USER_AGENT_ORIGINAL="user_agent.original"});var PFQ=R((jFQ)=>{Object.defineProperty(jFQ,"__esModule",{value:!0});jFQ.METRIC_SIGNALR_SERVER_CONNECTION_DURATION=jFQ.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS=jFQ.METRIC_KESTREL_UPGRADED_CONNECTIONS=jFQ.METRIC_KESTREL_TLS_HANDSHAKE_DURATION=jFQ.METRIC_KESTREL_REJECTED_CONNECTIONS=jFQ.METRIC_KESTREL_QUEUED_REQUESTS=jFQ.METRIC_KESTREL_QUEUED_CONNECTIONS=jFQ.METRIC_KESTREL_CONNECTION_DURATION=jFQ.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES=jFQ.METRIC_KESTREL_ACTIVE_CONNECTIONS=jFQ.METRIC_JVM_THREAD_COUNT=jFQ.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC=jFQ.METRIC_JVM_MEMORY_USED=jFQ.METRIC_JVM_MEMORY_LIMIT=jFQ.METRIC_JVM_MEMORY_COMMITTED=jFQ.METRIC_JVM_GC_DURATION=jFQ.METRIC_JVM_CPU_TIME=jFQ.METRIC_JVM_CPU_RECENT_UTILIZATION=jFQ.METRIC_JVM_CPU_COUNT=jFQ.METRIC_JVM_CLASS_UNLOADED=jFQ.METRIC_JVM_CLASS_LOADED=jFQ.METRIC_JVM_CLASS_COUNT=jFQ.METRIC_HTTP_SERVER_REQUEST_DURATION=jFQ.METRIC_HTTP_CLIENT_REQUEST_DURATION=jFQ.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS=jFQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS=jFQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION=jFQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE=jFQ.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS=jFQ.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES=jFQ.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS=void 0;jFQ.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS="aspnetcore.diagnostics.exceptions";jFQ.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES="aspnetcore.rate_limiting.active_request_leases";jFQ.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS="aspnetcore.rate_limiting.queued_requests";jFQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE="aspnetcore.rate_limiting.request.time_in_queue";jFQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION="aspnetcore.rate_limiting.request_lease.duration";jFQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS="aspnetcore.rate_limiting.requests";jFQ.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS="aspnetcore.routing.match_attempts";jFQ.METRIC_HTTP_CLIENT_REQUEST_DURATION="http.client.request.duration";jFQ.METRIC_HTTP_SERVER_REQUEST_DURATION="http.server.request.duration";jFQ.METRIC_JVM_CLASS_COUNT="jvm.class.count";jFQ.METRIC_JVM_CLASS_LOADED="jvm.class.loaded";jFQ.METRIC_JVM_CLASS_UNLOADED="jvm.class.unloaded";jFQ.METRIC_JVM_CPU_COUNT="jvm.cpu.count";jFQ.METRIC_JVM_CPU_RECENT_UTILIZATION="jvm.cpu.recent_utilization";jFQ.METRIC_JVM_CPU_TIME="jvm.cpu.time";jFQ.METRIC_JVM_GC_DURATION="jvm.gc.duration";jFQ.METRIC_JVM_MEMORY_COMMITTED="jvm.memory.committed";jFQ.METRIC_JVM_MEMORY_LIMIT="jvm.memory.limit";jFQ.METRIC_JVM_MEMORY_USED="jvm.memory.used";jFQ.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC="jvm.memory.used_after_last_gc";jFQ.METRIC_JVM_THREAD_COUNT="jvm.thread.count";jFQ.METRIC_KESTREL_ACTIVE_CONNECTIONS="kestrel.active_connections";jFQ.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES="kestrel.active_tls_handshakes";jFQ.METRIC_KESTREL_CONNECTION_DURATION="kestrel.connection.duration";jFQ.METRIC_KESTREL_QUEUED_CONNECTIONS="kestrel.queued_connections";jFQ.METRIC_KESTREL_QUEUED_REQUESTS="kestrel.queued_requests";jFQ.METRIC_KESTREL_REJECTED_CONNECTIONS="kestrel.rejected_connections";jFQ.METRIC_KESTREL_TLS_HANDSHAKE_DURATION="kestrel.tls_handshake.duration";jFQ.METRIC_KESTREL_UPGRADED_CONNECTIONS="kestrel.upgraded_connections";jFQ.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS="signalr.server.active_connections";jFQ.METRIC_SIGNALR_SERVER_CONNECTION_DURATION="signalr.server.connection.duration"});var IW=R((IX)=>{var yV0=IX&&IX.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),VP=IX&&IX.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))yV0(Q,A,B)};Object.defineProperty(IX,"__esModule",{value:!0});VP(lGQ(),IX);VP(LFQ(),IX);VP(wFQ(),IX);VP(PFQ(),IX)});var kFQ=R((TFQ)=>{Object.defineProperty(TFQ,"__esModule",{value:!0});TFQ.defaultServiceName=void 0;function gV0(){return`unknown_service:${process.argv0}`}TFQ.defaultServiceName=gV0});var _FQ=R((Hi)=>{Object.defineProperty(Hi,"__esModule",{value:!0});Hi.defaultServiceName=void 0;var hV0=kFQ();Object.defineProperty(Hi,"defaultServiceName",{enumerable:!0,get:function(){return hV0.defaultServiceName}})});var Ni=R((Di)=>{Object.defineProperty(Di,"__esModule",{value:!0});Di.defaultServiceName=void 0;var fV0=_FQ();Object.defineProperty(Di,"defaultServiceName",{enumerable:!0,get:function(){return fV0.defaultServiceName}})});var $G=R((yFQ)=>{Object.defineProperty(yFQ,"__esModule",{value:!0});yFQ.Resource=void 0;var vFQ=yA(),M$=IW(),Li=MB(),mV0=Ni();class HW{constructor(A,Q){var B;this._attributes=A,this.asyncAttributesPending=Q!=null,this._syncAttributes=(B=this._attributes)!==null&&B!==void 0?B:{},this._asyncAttributesPromise=Q===null||Q===void 0?void 0:Q.then((Y)=>{return this._attributes=Object.assign({},this._attributes,Y),this.asyncAttributesPending=!1,Y},(Y)=>{return vFQ.diag.debug("a resource's async attributes promise rejected: %s",Y),this.asyncAttributesPending=!1,{}})}static empty(){return HW.EMPTY}static default(){return new HW({[M$.SEMRESATTRS_SERVICE_NAME]:(0,mV0.defaultServiceName)(),[M$.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE]:Li.SDK_INFO[M$.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE],[M$.SEMRESATTRS_TELEMETRY_SDK_NAME]:Li.SDK_INFO[M$.SEMRESATTRS_TELEMETRY_SDK_NAME],[M$.SEMRESATTRS_TELEMETRY_SDK_VERSION]:Li.SDK_INFO[M$.SEMRESATTRS_TELEMETRY_SDK_VERSION]})}get attributes(){var A;if(this.asyncAttributesPending)vFQ.diag.error("Accessing resource attributes before async attributes settled");return(A=this._attributes)!==null&&A!==void 0?A:{}}async waitForAsyncAttributes(){if(this.asyncAttributesPending)await this._asyncAttributesPromise}merge(A){var Q;if(!A)return this;let B=Object.assign(Object.assign({},this._syncAttributes),(Q=A._syncAttributes)!==null&&Q!==void 0?Q:A.attributes);if(!this._asyncAttributesPromise&&!A._asyncAttributesPromise)return new HW(B);let Y=Promise.all([this._asyncAttributesPromise,A._asyncAttributesPromise]).then(([J,C])=>{var X;return Object.assign(Object.assign(Object.assign(Object.assign({},this._syncAttributes),J),(X=A._syncAttributes)!==null&&X!==void 0?X:A.attributes),C)});return new HW(B,Y)}}yFQ.Resource=HW;HW.EMPTY=new HW({})});var qi=R((hFQ)=>{Object.defineProperty(hFQ,"__esModule",{value:!0});hFQ.normalizeType=hFQ.normalizeArch=void 0;var uV0=(A)=>{switch(A){case"arm":return"arm32";case"ppc":return"ppc32";case"x64":return"amd64";default:return A}};hFQ.normalizeArch=uV0;var dV0=(A)=>{switch(A){case"sunos":return"solaris";case"win32":return"windows";default:return A}};hFQ.normalizeType=dV0});var IP=R((fFQ)=>{Object.defineProperty(fFQ,"__esModule",{value:!0});fFQ.execAsync=void 0;var lV0=u("child_process"),pV0=u("util");fFQ.execAsync=pV0.promisify(lV0.exec)});var dFQ=R((mFQ)=>{Object.defineProperty(mFQ,"__esModule",{value:!0});mFQ.getMachineId=void 0;var iV0=IP(),nV0=yA();async function sV0(){try{let Q=(await(0,iV0.execAsync)('ioreg -rd1 -c "IOPlatformExpertDevice"')).stdout.split(` -`).find((Y)=>Y.includes("IOPlatformUUID"));if(!Q)return"";let B=Q.split('" = "');if(B.length===2)return B[1].slice(0,-1)}catch(A){nV0.diag.debug(`error reading machine id: ${A}`)}return""}mFQ.getMachineId=sV0});var pFQ=R((cFQ)=>{Object.defineProperty(cFQ,"__esModule",{value:!0});cFQ.getMachineId=void 0;var rV0=u("fs"),aV0=yA();async function oV0(){let A=["/etc/machine-id","/var/lib/dbus/machine-id"];for(let Q of A)try{return(await rV0.promises.readFile(Q,{encoding:"utf8"})).trim()}catch(B){aV0.diag.debug(`error reading machine id: ${B}`)}return""}cFQ.getMachineId=oV0});var rFQ=R((nFQ)=>{Object.defineProperty(nFQ,"__esModule",{value:!0});nFQ.getMachineId=void 0;var tV0=u("fs"),eV0=IP(),iFQ=yA();async function AI0(){try{return(await tV0.promises.readFile("/etc/hostid",{encoding:"utf8"})).trim()}catch(A){iFQ.diag.debug(`error reading machine id: ${A}`)}try{return(await(0,eV0.execAsync)("kenv -q smbios.system.uuid")).stdout.trim()}catch(A){iFQ.diag.debug(`error reading machine id: ${A}`)}return""}nFQ.getMachineId=AI0});var eFQ=R((oFQ)=>{Object.defineProperty(oFQ,"__esModule",{value:!0});oFQ.getMachineId=void 0;var aFQ=u("process"),QI0=IP(),BI0=yA();async function YI0(){let Q="%windir%\\System32\\REG.exe";if(aFQ.arch==="ia32"&&"PROCESSOR_ARCHITEW6432"in aFQ.env)Q="%windir%\\sysnative\\cmd.exe /c "+Q;try{let Y=(await(0,QI0.execAsync)(`${Q} QUERY HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Cryptography /v MachineGuid`)).stdout.split("REG_SZ");if(Y.length===2)return Y[1].trim()}catch(B){BI0.diag.debug(`error reading machine id: ${B}`)}return""}oFQ.getMachineId=YI0});var BZQ=R((AZQ)=>{Object.defineProperty(AZQ,"__esModule",{value:!0});AZQ.getMachineId=void 0;var JI0=yA();async function CI0(){return JI0.diag.debug("could not read machine-id: unsupported platform"),""}AZQ.getMachineId=CI0});var JZQ=R((YZQ)=>{Object.defineProperty(YZQ,"__esModule",{value:!0});YZQ.getMachineId=void 0;var XI0=u("process"),HK;YZQ.getMachineId=HK;switch(XI0.platform){case"darwin":YZQ.getMachineId=HK=dFQ().getMachineId;break;case"linux":YZQ.getMachineId=HK=pFQ().getMachineId;break;case"freebsd":YZQ.getMachineId=HK=rFQ().getMachineId;break;case"win32":YZQ.getMachineId=HK=eFQ().getMachineId;break;default:YZQ.getMachineId=HK=BZQ().getMachineId}});var zi=R((GZQ)=>{Object.defineProperty(GZQ,"__esModule",{value:!0});GZQ.hostDetectorSync=void 0;var Mi=IW(),GI0=$G(),CZQ=u("os"),WI0=qi(),FI0=JZQ();class XZQ{detect(A){let Q={[Mi.SEMRESATTRS_HOST_NAME]:(0,CZQ.hostname)(),[Mi.SEMRESATTRS_HOST_ARCH]:(0,WI0.normalizeArch)((0,CZQ.arch)())};return new GI0.Resource(Q,this._getAsyncAttributes())}_getAsyncAttributes(){return(0,FI0.getMachineId)().then((A)=>{let Q={};if(A)Q[Mi.SEMRESATTRS_HOST_ID]=A;return Q})}}GZQ.hostDetectorSync=new XZQ});var UZQ=R((ZZQ)=>{Object.defineProperty(ZZQ,"__esModule",{value:!0});ZZQ.hostDetector=void 0;var ZI0=zi();class FZQ{detect(A){return Promise.resolve(ZI0.hostDetectorSync.detect(A))}}ZZQ.hostDetector=new FZQ});var Ri=R((IZQ)=>{Object.defineProperty(IZQ,"__esModule",{value:!0});IZQ.osDetectorSync=void 0;var EZQ=IW(),$I0=$G(),KZQ=u("os"),UI0=qi();class VZQ{detect(A){let Q={[EZQ.SEMRESATTRS_OS_TYPE]:(0,UI0.normalizeType)((0,KZQ.platform)()),[EZQ.SEMRESATTRS_OS_VERSION]:(0,KZQ.release)()};return new $I0.Resource(Q)}}IZQ.osDetectorSync=new VZQ});var qZQ=R((NZQ)=>{Object.defineProperty(NZQ,"__esModule",{value:!0});NZQ.osDetector=void 0;var EI0=Ri();class DZQ{detect(A){return Promise.resolve(EI0.osDetectorSync.detect(A))}}NZQ.osDetector=new DZQ});var wi=R((zZQ)=>{Object.defineProperty(zZQ,"__esModule",{value:!0});zZQ.processDetectorSync=void 0;var KI0=yA(),UG=IW(),VI0=$G(),II0=u("os");class MZQ{detect(A){let Q={[UG.SEMRESATTRS_PROCESS_PID]:process.pid,[UG.SEMRESATTRS_PROCESS_EXECUTABLE_NAME]:process.title,[UG.SEMRESATTRS_PROCESS_EXECUTABLE_PATH]:process.execPath,[UG.SEMRESATTRS_PROCESS_COMMAND_ARGS]:[process.argv[0],...process.execArgv,...process.argv.slice(1)],[UG.SEMRESATTRS_PROCESS_RUNTIME_VERSION]:process.versions.node,[UG.SEMRESATTRS_PROCESS_RUNTIME_NAME]:"nodejs",[UG.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION]:"Node.js"};if(process.argv.length>1)Q[UG.SEMRESATTRS_PROCESS_COMMAND]=process.argv[1];try{let B=II0.userInfo();Q[UG.SEMRESATTRS_PROCESS_OWNER]=B.username}catch(B){KI0.diag.debug(`error obtaining process owner: ${B}`)}return new VI0.Resource(Q)}}zZQ.processDetectorSync=new MZQ});var PZQ=R((jZQ)=>{Object.defineProperty(jZQ,"__esModule",{value:!0});jZQ.processDetector=void 0;var HI0=wi();class wZQ{detect(A){return Promise.resolve(HI0.processDetectorSync.detect(A))}}jZQ.processDetector=new wZQ});var _ZQ=R((SZQ)=>{Object.defineProperty(SZQ,"__esModule",{value:!0});SZQ.serviceInstanceIdDetectorSync=void 0;var DI0=IW(),NI0=$G(),LI0=u("crypto");class TZQ{detect(A){let Q={[DI0.SEMRESATTRS_SERVICE_INSTANCE_ID]:(0,LI0.randomUUID)()};return new NI0.Resource(Q)}}SZQ.serviceInstanceIdDetectorSync=new TZQ});var vZQ=R((EG)=>{Object.defineProperty(EG,"__esModule",{value:!0});EG.serviceInstanceIdDetectorSync=EG.processDetectorSync=EG.processDetector=EG.osDetectorSync=EG.osDetector=EG.hostDetectorSync=EG.hostDetector=void 0;var qI0=UZQ();Object.defineProperty(EG,"hostDetector",{enumerable:!0,get:function(){return qI0.hostDetector}});var MI0=zi();Object.defineProperty(EG,"hostDetectorSync",{enumerable:!0,get:function(){return MI0.hostDetectorSync}});var zI0=qZQ();Object.defineProperty(EG,"osDetector",{enumerable:!0,get:function(){return zI0.osDetector}});var RI0=Ri();Object.defineProperty(EG,"osDetectorSync",{enumerable:!0,get:function(){return RI0.osDetectorSync}});var wI0=PZQ();Object.defineProperty(EG,"processDetector",{enumerable:!0,get:function(){return wI0.processDetector}});var jI0=wi();Object.defineProperty(EG,"processDetectorSync",{enumerable:!0,get:function(){return jI0.processDetectorSync}});var OI0=_ZQ();Object.defineProperty(EG,"serviceInstanceIdDetectorSync",{enumerable:!0,get:function(){return OI0.serviceInstanceIdDetectorSync}})});var yZQ=R((KG)=>{Object.defineProperty(KG,"__esModule",{value:!0});KG.serviceInstanceIdDetectorSync=KG.processDetectorSync=KG.processDetector=KG.osDetectorSync=KG.osDetector=KG.hostDetectorSync=KG.hostDetector=void 0;var R$=vZQ();Object.defineProperty(KG,"hostDetector",{enumerable:!0,get:function(){return R$.hostDetector}});Object.defineProperty(KG,"hostDetectorSync",{enumerable:!0,get:function(){return R$.hostDetectorSync}});Object.defineProperty(KG,"osDetector",{enumerable:!0,get:function(){return R$.osDetector}});Object.defineProperty(KG,"osDetectorSync",{enumerable:!0,get:function(){return R$.osDetectorSync}});Object.defineProperty(KG,"processDetector",{enumerable:!0,get:function(){return R$.processDetector}});Object.defineProperty(KG,"processDetectorSync",{enumerable:!0,get:function(){return R$.processDetectorSync}});Object.defineProperty(KG,"serviceInstanceIdDetectorSync",{enumerable:!0,get:function(){return R$.serviceInstanceIdDetectorSync}})});var Oi=R((hZQ)=>{Object.defineProperty(hZQ,"__esModule",{value:!0});hZQ.browserDetectorSync=void 0;var HP=IW(),SI0=yA(),ji=$G();class gZQ{detect(A){var Q,B,Y;if(!(typeof navigator<"u"&&((B=(Q=global.process)===null||Q===void 0?void 0:Q.versions)===null||B===void 0?void 0:B.node)===void 0&&((Y=global.Bun)===null||Y===void 0?void 0:Y.version)===void 0))return ji.Resource.empty();let C={[HP.SEMRESATTRS_PROCESS_RUNTIME_NAME]:"browser",[HP.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION]:"Web Browser",[HP.SEMRESATTRS_PROCESS_RUNTIME_VERSION]:navigator.userAgent};return this._getResourceAttributes(C,A)}_getResourceAttributes(A,Q){if(A[HP.SEMRESATTRS_PROCESS_RUNTIME_VERSION]==="")return SI0.diag.debug("BrowserDetector failed: Unable to find required browser resources. "),ji.Resource.empty();else return new ji.Resource(Object.assign({},A))}}hZQ.browserDetectorSync=new gZQ});var uZQ=R((bZQ)=>{Object.defineProperty(bZQ,"__esModule",{value:!0});bZQ.browserDetector=void 0;var kI0=Oi();class fZQ{detect(A){return Promise.resolve(kI0.browserDetectorSync.detect(A))}}bZQ.browserDetector=new fZQ});var Pi=R((cZQ)=>{Object.defineProperty(cZQ,"__esModule",{value:!0});cZQ.envDetectorSync=void 0;var _I0=yA(),vI0=MB(),yI0=IW(),gI0=$G();class dZQ{constructor(){this._MAX_LENGTH=255,this._COMMA_SEPARATOR=",",this._LABEL_KEY_VALUE_SPLITTER="=",this._ERROR_MESSAGE_INVALID_CHARS="should be a ASCII string with a length greater than 0 and not exceed "+this._MAX_LENGTH+" characters.",this._ERROR_MESSAGE_INVALID_VALUE="should be a ASCII string with a length not exceed "+this._MAX_LENGTH+" characters."}detect(A){let Q={},B=(0,vI0.getEnv)(),Y=B.OTEL_RESOURCE_ATTRIBUTES,J=B.OTEL_SERVICE_NAME;if(Y)try{let C=this._parseResourceAttributes(Y);Object.assign(Q,C)}catch(C){_I0.diag.debug(`EnvDetector failed: ${C.message}`)}if(J)Q[yI0.SEMRESATTRS_SERVICE_NAME]=J;return new gI0.Resource(Q)}_parseResourceAttributes(A){if(!A)return{};let Q={},B=A.split(this._COMMA_SEPARATOR,-1);for(let Y of B){let J=Y.split(this._LABEL_KEY_VALUE_SPLITTER,-1);if(J.length!==2)continue;let[C,X]=J;if(C=C.trim(),X=X.trim().split(/^"|"$/).join(""),!this._isValidAndNotEmpty(C))throw Error(`Attribute key ${this._ERROR_MESSAGE_INVALID_CHARS}`);if(!this._isValid(X))throw Error(`Attribute value ${this._ERROR_MESSAGE_INVALID_VALUE}`);Q[C]=decodeURIComponent(X)}return Q}_isValid(A){return A.length<=this._MAX_LENGTH&&this._isBaggageOctetString(A)}_isBaggageOctetString(A){for(let Q=0;Q126)return!1}return!0}_isValidAndNotEmpty(A){return A.length>0&&this._isValid(A)}}cZQ.envDetectorSync=new dZQ});var sZQ=R((iZQ)=>{Object.defineProperty(iZQ,"__esModule",{value:!0});iZQ.envDetector=void 0;var hI0=Pi();class pZQ{detect(A){return Promise.resolve(hI0.envDetectorSync.detect(A))}}iZQ.envDetector=new pZQ});var rZQ=R((u8)=>{Object.defineProperty(u8,"__esModule",{value:!0});u8.envDetectorSync=u8.browserDetectorSync=u8.envDetector=u8.browserDetector=u8.serviceInstanceIdDetectorSync=u8.processDetectorSync=u8.processDetector=u8.osDetectorSync=u8.osDetector=u8.hostDetectorSync=u8.hostDetector=void 0;var w$=yZQ();Object.defineProperty(u8,"hostDetector",{enumerable:!0,get:function(){return w$.hostDetector}});Object.defineProperty(u8,"hostDetectorSync",{enumerable:!0,get:function(){return w$.hostDetectorSync}});Object.defineProperty(u8,"osDetector",{enumerable:!0,get:function(){return w$.osDetector}});Object.defineProperty(u8,"osDetectorSync",{enumerable:!0,get:function(){return w$.osDetectorSync}});Object.defineProperty(u8,"processDetector",{enumerable:!0,get:function(){return w$.processDetector}});Object.defineProperty(u8,"processDetectorSync",{enumerable:!0,get:function(){return w$.processDetectorSync}});Object.defineProperty(u8,"serviceInstanceIdDetectorSync",{enumerable:!0,get:function(){return w$.serviceInstanceIdDetectorSync}});var xI0=uZQ();Object.defineProperty(u8,"browserDetector",{enumerable:!0,get:function(){return xI0.browserDetector}});var fI0=sZQ();Object.defineProperty(u8,"envDetector",{enumerable:!0,get:function(){return fI0.envDetector}});var bI0=Oi();Object.defineProperty(u8,"browserDetectorSync",{enumerable:!0,get:function(){return bI0.browserDetectorSync}});var mI0=Pi();Object.defineProperty(u8,"envDetectorSync",{enumerable:!0,get:function(){return mI0.envDetectorSync}})});var tZQ=R((aZQ)=>{Object.defineProperty(aZQ,"__esModule",{value:!0});aZQ.isPromiseLike=void 0;var dI0=(A)=>{return A!==null&&typeof A==="object"&&typeof A.then==="function"};aZQ.isPromiseLike=dI0});var B$Q=R((A$Q)=>{Object.defineProperty(A$Q,"__esModule",{value:!0});A$Q.detectResourcesSync=A$Q.detectResources=void 0;var PL=$G(),DK=yA(),cI0=tZQ(),lI0=async(A={})=>{let Q=await Promise.all((A.detectors||[]).map(async(B)=>{try{let Y=await B.detect(A);return DK.diag.debug(`${B.constructor.name} found resource.`,Y),Y}catch(Y){return DK.diag.debug(`${B.constructor.name} failed: ${Y.message}`),PL.Resource.empty()}}));return eZQ(Q),Q.reduce((B,Y)=>B.merge(Y),PL.Resource.empty())};A$Q.detectResources=lI0;var pI0=(A={})=>{var Q;let B=((Q=A.detectors)!==null&&Q!==void 0?Q:[]).map((J)=>{try{let C=J.detect(A),X;if((0,cI0.isPromiseLike)(C)){let G=async()=>{var W;let F=await C;return await((W=F.waitForAsyncAttributes)===null||W===void 0?void 0:W.call(F)),F.attributes};X=new PL.Resource({},G())}else X=C;if(X.waitForAsyncAttributes)X.waitForAsyncAttributes().then(()=>DK.diag.debug(`${J.constructor.name} found resource.`,X));else DK.diag.debug(`${J.constructor.name} found resource.`,X);return X}catch(C){return DK.diag.error(`${J.constructor.name} failed: ${C.message}`),PL.Resource.empty()}}),Y=B.reduce((J,C)=>J.merge(C),PL.Resource.empty());if(Y.waitForAsyncAttributes)Y.waitForAsyncAttributes().then(()=>{eZQ(B)});return Y};A$Q.detectResourcesSync=pI0;var eZQ=(A)=>{A.forEach((Q)=>{if(Object.keys(Q.attributes).length>0){let B=JSON.stringify(Q.attributes,null,4);DK.diag.verbose(B)}})}});var Ti=R((KJ)=>{Object.defineProperty(KJ,"__esModule",{value:!0});KJ.detectResources=KJ.detectResourcesSync=KJ.serviceInstanceIdDetectorSync=KJ.processDetectorSync=KJ.processDetector=KJ.osDetectorSync=KJ.osDetector=KJ.hostDetectorSync=KJ.hostDetector=KJ.envDetectorSync=KJ.envDetector=KJ.browserDetectorSync=KJ.browserDetector=KJ.defaultServiceName=KJ.Resource=void 0;var nI0=$G();Object.defineProperty(KJ,"Resource",{enumerable:!0,get:function(){return nI0.Resource}});var sI0=Ni();Object.defineProperty(KJ,"defaultServiceName",{enumerable:!0,get:function(){return sI0.defaultServiceName}});var F1=rZQ();Object.defineProperty(KJ,"browserDetector",{enumerable:!0,get:function(){return F1.browserDetector}});Object.defineProperty(KJ,"browserDetectorSync",{enumerable:!0,get:function(){return F1.browserDetectorSync}});Object.defineProperty(KJ,"envDetector",{enumerable:!0,get:function(){return F1.envDetector}});Object.defineProperty(KJ,"envDetectorSync",{enumerable:!0,get:function(){return F1.envDetectorSync}});Object.defineProperty(KJ,"hostDetector",{enumerable:!0,get:function(){return F1.hostDetector}});Object.defineProperty(KJ,"hostDetectorSync",{enumerable:!0,get:function(){return F1.hostDetectorSync}});Object.defineProperty(KJ,"osDetector",{enumerable:!0,get:function(){return F1.osDetector}});Object.defineProperty(KJ,"osDetectorSync",{enumerable:!0,get:function(){return F1.osDetectorSync}});Object.defineProperty(KJ,"processDetector",{enumerable:!0,get:function(){return F1.processDetector}});Object.defineProperty(KJ,"processDetectorSync",{enumerable:!0,get:function(){return F1.processDetectorSync}});Object.defineProperty(KJ,"serviceInstanceIdDetectorSync",{enumerable:!0,get:function(){return F1.serviceInstanceIdDetectorSync}});var Y$Q=B$Q();Object.defineProperty(KJ,"detectResourcesSync",{enumerable:!0,get:function(){return Y$Q.detectResourcesSync}});Object.defineProperty(KJ,"detectResources",{enumerable:!0,get:function(){return Y$Q.detectResources}})});var G$Q=R((C$Q)=>{Object.defineProperty(C$Q,"__esModule",{value:!0});C$Q.MultiSpanProcessor=void 0;var aI0=MB();class J$Q{constructor(A){this._spanProcessors=A}forceFlush(){let A=[];for(let Q of this._spanProcessors)A.push(Q.forceFlush());return new Promise((Q)=>{Promise.all(A).then(()=>{Q()}).catch((B)=>{(0,aI0.globalErrorHandler)(B||Error("MultiSpanProcessor: forceFlush failed")),Q()})})}onStart(A,Q){for(let B of this._spanProcessors)B.onStart(A,Q)}onEnd(A){for(let Q of this._spanProcessors)Q.onEnd(A)}shutdown(){let A=[];for(let Q of this._spanProcessors)A.push(Q.shutdown());return new Promise((Q,B)=>{Promise.all(A).then(()=>{Q()},B)})}}C$Q.MultiSpanProcessor=J$Q});var Si=R((F$Q)=>{Object.defineProperty(F$Q,"__esModule",{value:!0});F$Q.NoopSpanProcessor=void 0;class W$Q{onStart(A,Q){}onEnd(A){}shutdown(){return Promise.resolve()}forceFlush(){return Promise.resolve()}}F$Q.NoopSpanProcessor=W$Q});var I$Q=R((K$Q)=>{Object.defineProperty(K$Q,"__esModule",{value:!0});K$Q.BasicTracerProvider=K$Q.ForceFlushState=void 0;var NK=yA(),qK=MB(),$$Q=Ti(),oI0=Vi(),tI0=Ui(),U$Q=G$Q(),eI0=Si(),AH0=EP(),QH0=Ki(),LK;(function(A){A[A.resolved=0]="resolved",A[A.timeout=1]="timeout",A[A.error=2]="error",A[A.unresolved=3]="unresolved"})(LK=K$Q.ForceFlushState||(K$Q.ForceFlushState={}));class DP{constructor(A={}){var Q,B;this._registeredSpanProcessors=[],this._tracers=new Map;let Y=(0,qK.merge)({},(0,tI0.loadDefaultConfig)(),(0,QH0.reconfigureLimits)(A));if(this.resource=(Q=Y.resource)!==null&&Q!==void 0?Q:$$Q.Resource.empty(),Y.mergeResourceWithDefaults)this.resource=$$Q.Resource.default().merge(this.resource);if(this._config=Object.assign({},Y,{resource:this.resource}),(B=A.spanProcessors)===null||B===void 0?void 0:B.length)this._registeredSpanProcessors=[...A.spanProcessors],this.activeSpanProcessor=new U$Q.MultiSpanProcessor(this._registeredSpanProcessors);else{let J=this._buildExporterFromEnv();if(J!==void 0){let C=new AH0.BatchSpanProcessor(J);this.activeSpanProcessor=C}else this.activeSpanProcessor=new eI0.NoopSpanProcessor}}getTracer(A,Q,B){let Y=`${A}@${Q||""}:${(B===null||B===void 0?void 0:B.schemaUrl)||""}`;if(!this._tracers.has(Y))this._tracers.set(Y,new oI0.Tracer({name:A,version:Q,schemaUrl:B===null||B===void 0?void 0:B.schemaUrl},this._config,this));return this._tracers.get(Y)}addSpanProcessor(A){if(this._registeredSpanProcessors.length===0)this.activeSpanProcessor.shutdown().catch((Q)=>NK.diag.error("Error while trying to shutdown current span processor",Q));this._registeredSpanProcessors.push(A),this.activeSpanProcessor=new U$Q.MultiSpanProcessor(this._registeredSpanProcessors)}getActiveSpanProcessor(){return this.activeSpanProcessor}register(A={}){if(NK.trace.setGlobalTracerProvider(this),A.propagator===void 0)A.propagator=this._buildPropagatorFromEnv();if(A.contextManager)NK.context.setGlobalContextManager(A.contextManager);if(A.propagator)NK.propagation.setGlobalPropagator(A.propagator)}forceFlush(){let A=this._config.forceFlushTimeoutMillis,Q=this._registeredSpanProcessors.map((B)=>{return new Promise((Y)=>{let J,C=setTimeout(()=>{Y(Error(`Span processor did not completed within timeout period of ${A} ms`)),J=LK.timeout},A);B.forceFlush().then(()=>{if(clearTimeout(C),J!==LK.timeout)J=LK.resolved,Y(J)}).catch((X)=>{clearTimeout(C),J=LK.error,Y(X)})})});return new Promise((B,Y)=>{Promise.all(Q).then((J)=>{let C=J.filter((X)=>X!==LK.resolved);if(C.length>0)Y(C);else B()}).catch((J)=>Y([J]))})}shutdown(){return this.activeSpanProcessor.shutdown()}_getPropagator(A){var Q;return(Q=this.constructor._registeredPropagators.get(A))===null||Q===void 0?void 0:Q()}_getSpanExporter(A){var Q;return(Q=this.constructor._registeredExporters.get(A))===null||Q===void 0?void 0:Q()}_buildPropagatorFromEnv(){let A=Array.from(new Set((0,qK.getEnv)().OTEL_PROPAGATORS)),B=A.map((Y)=>{let J=this._getPropagator(Y);if(!J)NK.diag.warn(`Propagator "${Y}" requested through environment variable is unavailable.`);return J}).reduce((Y,J)=>{if(J)Y.push(J);return Y},[]);if(B.length===0)return;else if(A.length===1)return B[0];else return new qK.CompositePropagator({propagators:B})}_buildExporterFromEnv(){let A=(0,qK.getEnv)().OTEL_TRACES_EXPORTER;if(A==="none"||A==="")return;let Q=this._getSpanExporter(A);if(!Q)NK.diag.error(`Exporter "${A}" requested through environment variable is unavailable.`);return Q}}K$Q.BasicTracerProvider=DP;DP._registeredPropagators=new Map([["tracecontext",()=>new qK.W3CTraceContextPropagator],["baggage",()=>new qK.W3CBaggagePropagator]]);DP._registeredExporters=new Map});var L$Q=R((D$Q)=>{Object.defineProperty(D$Q,"__esModule",{value:!0});D$Q.ConsoleSpanExporter=void 0;var ki=MB();class H$Q{export(A,Q){return this._sendSpans(A,Q)}shutdown(){return this._sendSpans([]),this.forceFlush()}forceFlush(){return Promise.resolve()}_exportInfo(A){var Q;return{resource:{attributes:A.resource.attributes},instrumentationScope:A.instrumentationLibrary,traceId:A.spanContext().traceId,parentId:A.parentSpanId,traceState:(Q=A.spanContext().traceState)===null||Q===void 0?void 0:Q.serialize(),name:A.name,id:A.spanContext().spanId,kind:A.kind,timestamp:(0,ki.hrTimeToMicroseconds)(A.startTime),duration:(0,ki.hrTimeToMicroseconds)(A.duration),attributes:A.attributes,status:A.status,events:A.events,links:A.links}}_sendSpans(A,Q){for(let B of A)console.dir(this._exportInfo(B),{depth:3});if(Q)return Q({code:ki.ExportResultCode.SUCCESS})}}D$Q.ConsoleSpanExporter=H$Q});var w$Q=R((z$Q)=>{Object.defineProperty(z$Q,"__esModule",{value:!0});z$Q.InMemorySpanExporter=void 0;var q$Q=MB();class M$Q{constructor(){this._finishedSpans=[],this._stopped=!1}export(A,Q){if(this._stopped)return Q({code:q$Q.ExportResultCode.FAILED,error:Error("Exporter has been stopped")});this._finishedSpans.push(...A),setTimeout(()=>Q({code:q$Q.ExportResultCode.SUCCESS}),0)}shutdown(){return this._stopped=!0,this._finishedSpans=[],this.forceFlush()}forceFlush(){return Promise.resolve()}reset(){this._finishedSpans=[]}getFinishedSpans(){return this._finishedSpans}}z$Q.InMemorySpanExporter=M$Q});var T$Q=R((O$Q)=>{Object.defineProperty(O$Q,"__esModule",{value:!0});O$Q.SimpleSpanProcessor=void 0;var BH0=yA(),MK=MB();class j$Q{constructor(A){this._exporter=A,this._shutdownOnce=new MK.BindOnceFuture(this._shutdown,this),this._unresolvedExports=new Set}async forceFlush(){if(await Promise.all(Array.from(this._unresolvedExports)),this._exporter.forceFlush)await this._exporter.forceFlush()}onStart(A,Q){}onEnd(A){var Q,B;if(this._shutdownOnce.isCalled)return;if((A.spanContext().traceFlags&BH0.TraceFlags.SAMPLED)===0)return;let Y=()=>MK.internal._export(this._exporter,[A]).then((J)=>{var C;if(J.code!==MK.ExportResultCode.SUCCESS)(0,MK.globalErrorHandler)((C=J.error)!==null&&C!==void 0?C:Error(`SimpleSpanProcessor: span export failed (status ${J})`))}).catch((J)=>{(0,MK.globalErrorHandler)(J)});if(A.resource.asyncAttributesPending){let J=(B=(Q=A.resource).waitForAsyncAttributes)===null||B===void 0?void 0:B.call(Q).then(()=>{if(J!=null)this._unresolvedExports.delete(J);return Y()},(C)=>(0,MK.globalErrorHandler)(C));if(J!=null)this._unresolvedExports.add(J)}else Y()}shutdown(){return this._shutdownOnce.call()}_shutdown(){return this._exporter.shutdown()}}O$Q.SimpleSpanProcessor=j$Q});var _i=R((VJ)=>{Object.defineProperty(VJ,"__esModule",{value:!0});VJ.Span=VJ.SamplingDecision=VJ.TraceIdRatioBasedSampler=VJ.ParentBasedSampler=VJ.AlwaysOnSampler=VJ.AlwaysOffSampler=VJ.NoopSpanProcessor=VJ.SimpleSpanProcessor=VJ.InMemorySpanExporter=VJ.ConsoleSpanExporter=VJ.RandomIdGenerator=VJ.BatchSpanProcessor=VJ.ForceFlushState=VJ.BasicTracerProvider=VJ.Tracer=void 0;var YH0=Vi();Object.defineProperty(VJ,"Tracer",{enumerable:!0,get:function(){return YH0.Tracer}});var S$Q=I$Q();Object.defineProperty(VJ,"BasicTracerProvider",{enumerable:!0,get:function(){return S$Q.BasicTracerProvider}});Object.defineProperty(VJ,"ForceFlushState",{enumerable:!0,get:function(){return S$Q.ForceFlushState}});var k$Q=EP();Object.defineProperty(VJ,"BatchSpanProcessor",{enumerable:!0,get:function(){return k$Q.BatchSpanProcessor}});Object.defineProperty(VJ,"RandomIdGenerator",{enumerable:!0,get:function(){return k$Q.RandomIdGenerator}});var JH0=L$Q();Object.defineProperty(VJ,"ConsoleSpanExporter",{enumerable:!0,get:function(){return JH0.ConsoleSpanExporter}});var CH0=w$Q();Object.defineProperty(VJ,"InMemorySpanExporter",{enumerable:!0,get:function(){return CH0.InMemorySpanExporter}});var XH0=T$Q();Object.defineProperty(VJ,"SimpleSpanProcessor",{enumerable:!0,get:function(){return XH0.SimpleSpanProcessor}});var GH0=Si();Object.defineProperty(VJ,"NoopSpanProcessor",{enumerable:!0,get:function(){return GH0.NoopSpanProcessor}});var WH0=XP();Object.defineProperty(VJ,"AlwaysOffSampler",{enumerable:!0,get:function(){return WH0.AlwaysOffSampler}});var FH0=GP();Object.defineProperty(VJ,"AlwaysOnSampler",{enumerable:!0,get:function(){return FH0.AlwaysOnSampler}});var ZH0=Wi();Object.defineProperty(VJ,"ParentBasedSampler",{enumerable:!0,get:function(){return ZH0.ParentBasedSampler}});var $H0=Fi();Object.defineProperty(VJ,"TraceIdRatioBasedSampler",{enumerable:!0,get:function(){return $H0.TraceIdRatioBasedSampler}});var UH0=OL();Object.defineProperty(VJ,"SamplingDecision",{enumerable:!0,get:function(){return UH0.SamplingDecision}});var EH0=Ci();Object.defineProperty(VJ,"Span",{enumerable:!0,get:function(){return EH0.Span}})});var $4Q=R((F4Q)=>{Object.defineProperty(F4Q,"__esModule",{value:!0});F4Q.PACKAGE_NAME=F4Q.PACKAGE_VERSION=void 0;F4Q.PACKAGE_VERSION="0.10.1";F4Q.PACKAGE_NAME="@opentelemetry/instrumentation-undici"});var K4Q=R((U4Q)=>{Object.defineProperty(U4Q,"__esModule",{value:!0});U4Q.SemanticAttributes=void 0;U4Q.SemanticAttributes={HTTP_CONNECTION_STATE:"http.connection.state",ERROR_TYPE:"error.type",HTTP_REQUEST_BODY_SIZE:"http.request.body.size",HTTP_REQUEST_METHOD:"http.request.method",HTTP_REQUEST_METHOD_ORIGINAL:"http.request.method_original",HTTP_REQUEST_RESEND_COUNT:"http.request.resend_count",HTTP_RESPONSE_BODY_SIZE:"http.response.body.size",HTTP_RESPONSE_STATUS_CODE:"http.response.status_code",HTTP_ROUTE:"http.route",NETWORK_PEER_ADDRESS:"network.peer.address",NETWORK_PEER_PORT:"network.peer.port",NETWORK_PROTOCOL_NAME:"network.protocol.name",NETWORK_PROTOCOL_VERSION:"network.protocol.version",SERVER_ADDRESS:"server.address",SERVER_PORT:"server.port",URL_FULL:"url.full",URL_PATH:"url.path",URL_QUERY:"url.query",URL_SCHEME:"url.scheme",USER_AGENT_ORIGINAL:"user_agent.original"}});var N4Q=R((H4Q)=>{Object.defineProperty(H4Q,"__esModule",{value:!0});H4Q.UndiciInstrumentation=void 0;var vL=u("diagnostics_channel"),UD0=u("url"),yL=NB(),d8=yA(),V4Q=$4Q(),xY=K4Q(),wP=MB();class I4Q extends yL.InstrumentationBase{constructor(A={}){super(V4Q.PACKAGE_NAME,V4Q.PACKAGE_VERSION,A);this._recordFromReq=new WeakMap}init(){return}disable(){super.disable(),this._channelSubs.forEach((A)=>A.unsubscribe()),this._channelSubs.length=0}enable(){if(super.enable(),this._channelSubs=this._channelSubs||[],this._channelSubs.length>0)return;this.subscribeToChannel("undici:request:create",this.onRequestCreated.bind(this)),this.subscribeToChannel("undici:client:sendHeaders",this.onRequestHeaders.bind(this)),this.subscribeToChannel("undici:request:headers",this.onResponseHeaders.bind(this)),this.subscribeToChannel("undici:request:trailers",this.onDone.bind(this)),this.subscribeToChannel("undici:request:error",this.onError.bind(this))}_updateMetricInstruments(){this._httpClientDurationHistogram=this.meter.createHistogram("http.client.request.duration",{description:"Measures the duration of outbound HTTP requests.",unit:"s",valueType:d8.ValueType.DOUBLE,advice:{explicitBucketBoundaries:[0.005,0.01,0.025,0.05,0.075,0.1,0.25,0.5,0.75,1,2.5,5,7.5,10]}})}subscribeToChannel(A,Q){var B;let[Y,J]=process.version.replace("v","").split(".").map((G)=>Number(G)),C=Y>18||Y===18&&J>=19,X;if(C)(B=vL.subscribe)===null||B===void 0||B.call(vL,A,Q),X=()=>{var G;return(G=vL.unsubscribe)===null||G===void 0?void 0:G.call(vL,A,Q)};else{let G=vL.channel(A);G.subscribe(Q),X=()=>G.unsubscribe(Q)}this._channelSubs.push({name:A,unsubscribe:X})}onRequestCreated({request:A}){let Q=this.getConfig(),B=Q.enabled!==!1;if((0,yL.safeExecuteInTheMiddle)(()=>{var z;return!B||A.method==="CONNECT"||((z=Q.ignoreRequestHook)===null||z===void 0?void 0:z.call(Q,A))},(z)=>z&&this._diag.error("caught ignoreRequestHook error: ",z),!0))return;let J=(0,wP.hrTime)(),C;try{C=new UD0.URL(A.path,A.origin)}catch(z){this._diag.warn("could not determine url.full:",z);return}let X=C.protocol.replace(":",""),G=this.getRequestMethod(A.method),W={[xY.SemanticAttributes.HTTP_REQUEST_METHOD]:G,[xY.SemanticAttributes.HTTP_REQUEST_METHOD_ORIGINAL]:A.method,[xY.SemanticAttributes.URL_FULL]:C.toString(),[xY.SemanticAttributes.URL_PATH]:C.pathname,[xY.SemanticAttributes.URL_QUERY]:C.search,[xY.SemanticAttributes.URL_SCHEME]:X},F={https:"443",http:"80"},Z=C.hostname,U=C.port||F[X];if(W[xY.SemanticAttributes.SERVER_ADDRESS]=Z,U&&!isNaN(Number(U)))W[xY.SemanticAttributes.SERVER_PORT]=Number(U);let $;if(Array.isArray(A.headers)){let z=A.headers.findIndex((M)=>M.toLowerCase()==="user-agent");if(z>=0)$=A.headers[z+1]}else if(typeof A.headers==="string"){let M=A.headers.split(`\r +`).map((Q)=>Q.trim()).join(" ")};lhA.O=function(A){return this.inspectOpts.colors=this.useColors,nO.inspect(A,this.inspectOpts)}});var shA=R((egY,Mp)=>{if(typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs)Mp.exports=bhA();else Mp.exports=nhA()});var Rp=R((AhY,rhA)=>{var zp=u("path").sep;rhA.exports=function(A){var Q=A.split(zp),B=Q.lastIndexOf("node_modules");if(B===-1)return;if(!Q[B+1])return;var Y=Q[B+1][0]==="@",J=Y?Q[B+1]+"/"+Q[B+2]:Q[B+1],C=Y?3:2,X="",G=B+C-1;for(var W=0;W<=G;W++)if(W===G)X+=Q[W];else X+=Q[W]+zp;var F="",Z=Q.length-1;for(var U=B+C;U<=Z;U++)if(U===Z)F+=Q[U];else F+=Q[U]+zp;return{name:J,basedir:X,path:F}}});var wp=R((QhY,ahA)=>{var JvB=u("os");ahA.exports=JvB.homedir||function(){var Q=process.env.HOME,B=process.env.LOGNAME||process.env.USER||process.env.LNAME||process.env.USERNAME;if(process.platform==="win32")return process.env.USERPROFILE||process.env.HOMEDRIVE+process.env.HOMEPATH||Q||null;if(process.platform==="darwin")return Q||(B?"/Users/"+B:null);if(process.platform==="linux")return Q||(process.getuid()===0?"/root":B?"/home/"+B:null);return Q||null}});var jp=R((BhY,ohA)=>{ohA.exports=function(){var A=Error.prepareStackTrace;Error.prepareStackTrace=function(B,Y){return Y};var Q=Error().stack;return Error.prepareStackTrace=A,Q[2].getFileName()}});var thA=R((YhY,VL)=>{var CvB=process.platform==="win32",XvB=/^(((?:[a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/]+)?[\\\/]?)(?:[^\\\/]*[\\\/])*)((\.{1,2}|[^\\\/]+?|)(\.[^.\/\\]*|))[\\\/]*$/,Op={};function GvB(A){return XvB.exec(A).slice(1)}Op.parse=function(A){if(typeof A!=="string")throw TypeError("Parameter 'pathString' must be a string, not "+typeof A);var Q=GvB(A);if(!Q||Q.length!==5)throw TypeError("Invalid path '"+A+"'");return{root:Q[1],dir:Q[0]===Q[1]?Q[0]:Q[0].slice(0,-1),base:Q[2],ext:Q[4],name:Q[3]}};var WvB=/^((\/?)(?:[^\/]*\/)*)((\.{1,2}|[^\/]+?|)(\.[^.\/]*|))[\/]*$/,Pp={};function FvB(A){return WvB.exec(A).slice(1)}Pp.parse=function(A){if(typeof A!=="string")throw TypeError("Parameter 'pathString' must be a string, not "+typeof A);var Q=FvB(A);if(!Q||Q.length!==5)throw TypeError("Invalid path '"+A+"'");return{root:Q[1],dir:Q[0].slice(0,-1),base:Q[2],ext:Q[4],name:Q[3]}};if(CvB)VL.exports=Op.parse;else VL.exports=Pp.parse;VL.exports.posix=Pp.parse;VL.exports.win32=Op.parse});var Tp=R((JhY,BxA)=>{var QxA=u("path"),ehA=QxA.parse||thA(),AxA=function(Q,B){var Y="/";if(/^([A-Za-z]:)/.test(Q))Y="";else if(/^\\\\/.test(Q))Y="\\\\";var J=[Q],C=ehA(Q);while(C.dir!==J[J.length-1])J.push(C.dir),C=ehA(C.dir);return J.reduce(function(X,G){return X.concat(B.map(function(W){return QxA.resolve(Y,G,W)}))},[])};BxA.exports=function(Q,B,Y){var J=B&&B.moduleDirectory?[].concat(B.moduleDirectory):["node_modules"];if(B&&typeof B.paths==="function")return B.paths(Y,Q,function(){return AxA(Q,J)},B);var C=AxA(Q,J);return B&&B.paths?C.concat(B.paths):C}});var Sp=R((ChY,YxA)=>{YxA.exports=function(A,Q){return Q||{}}});var XxA=R((XhY,CxA)=>{var ZvB="Function.prototype.bind called on incompatible ",$vB=Object.prototype.toString,UvB=Math.max,EvB="[object Function]",JxA=function(Q,B){var Y=[];for(var J=0;J{var IvB=XxA();GxA.exports=Function.prototype.bind||IvB});var ZxA=R((WhY,FxA)=>{var HvB=Function.prototype.call,DvB=Object.prototype.hasOwnProperty,NvB=WxA();FxA.exports=NvB.call(HvB,DvB)});var $xA=R((FhY,LvB)=>{LvB.exports={assert:!0,"node:assert":[">= 14.18 && < 15",">= 16"],"assert/strict":">= 15","node:assert/strict":">= 16",async_hooks:">= 8","node:async_hooks":[">= 14.18 && < 15",">= 16"],buffer_ieee754:">= 0.5 && < 0.9.7",buffer:!0,"node:buffer":[">= 14.18 && < 15",">= 16"],child_process:!0,"node:child_process":[">= 14.18 && < 15",">= 16"],cluster:">= 0.5","node:cluster":[">= 14.18 && < 15",">= 16"],console:!0,"node:console":[">= 14.18 && < 15",">= 16"],constants:!0,"node:constants":[">= 14.18 && < 15",">= 16"],crypto:!0,"node:crypto":[">= 14.18 && < 15",">= 16"],_debug_agent:">= 1 && < 8",_debugger:"< 8",dgram:!0,"node:dgram":[">= 14.18 && < 15",">= 16"],diagnostics_channel:[">= 14.17 && < 15",">= 15.1"],"node:diagnostics_channel":[">= 14.18 && < 15",">= 16"],dns:!0,"node:dns":[">= 14.18 && < 15",">= 16"],"dns/promises":">= 15","node:dns/promises":">= 16",domain:">= 0.7.12","node:domain":[">= 14.18 && < 15",">= 16"],events:!0,"node:events":[">= 14.18 && < 15",">= 16"],freelist:"< 6",fs:!0,"node:fs":[">= 14.18 && < 15",">= 16"],"fs/promises":[">= 10 && < 10.1",">= 14"],"node:fs/promises":[">= 14.18 && < 15",">= 16"],_http_agent:">= 0.11.1","node:_http_agent":[">= 14.18 && < 15",">= 16"],_http_client:">= 0.11.1","node:_http_client":[">= 14.18 && < 15",">= 16"],_http_common:">= 0.11.1","node:_http_common":[">= 14.18 && < 15",">= 16"],_http_incoming:">= 0.11.1","node:_http_incoming":[">= 14.18 && < 15",">= 16"],_http_outgoing:">= 0.11.1","node:_http_outgoing":[">= 14.18 && < 15",">= 16"],_http_server:">= 0.11.1","node:_http_server":[">= 14.18 && < 15",">= 16"],http:!0,"node:http":[">= 14.18 && < 15",">= 16"],http2:">= 8.8","node:http2":[">= 14.18 && < 15",">= 16"],https:!0,"node:https":[">= 14.18 && < 15",">= 16"],inspector:">= 8","node:inspector":[">= 14.18 && < 15",">= 16"],"inspector/promises":[">= 19"],"node:inspector/promises":[">= 19"],_linklist:"< 8",module:!0,"node:module":[">= 14.18 && < 15",">= 16"],net:!0,"node:net":[">= 14.18 && < 15",">= 16"],"node-inspect/lib/_inspect":">= 7.6 && < 12","node-inspect/lib/internal/inspect_client":">= 7.6 && < 12","node-inspect/lib/internal/inspect_repl":">= 7.6 && < 12",os:!0,"node:os":[">= 14.18 && < 15",">= 16"],path:!0,"node:path":[">= 14.18 && < 15",">= 16"],"path/posix":">= 15.3","node:path/posix":">= 16","path/win32":">= 15.3","node:path/win32":">= 16",perf_hooks:">= 8.5","node:perf_hooks":[">= 14.18 && < 15",">= 16"],process:">= 1","node:process":[">= 14.18 && < 15",">= 16"],punycode:">= 0.5","node:punycode":[">= 14.18 && < 15",">= 16"],querystring:!0,"node:querystring":[">= 14.18 && < 15",">= 16"],readline:!0,"node:readline":[">= 14.18 && < 15",">= 16"],"readline/promises":">= 17","node:readline/promises":">= 17",repl:!0,"node:repl":[">= 14.18 && < 15",">= 16"],"node:sea":[">= 20.12 && < 21",">= 21.7"],smalloc:">= 0.11.5 && < 3","node:sqlite":[">= 22.13 && < 23",">= 23.4"],_stream_duplex:">= 0.9.4","node:_stream_duplex":[">= 14.18 && < 15",">= 16"],_stream_transform:">= 0.9.4","node:_stream_transform":[">= 14.18 && < 15",">= 16"],_stream_wrap:">= 1.4.1","node:_stream_wrap":[">= 14.18 && < 15",">= 16"],_stream_passthrough:">= 0.9.4","node:_stream_passthrough":[">= 14.18 && < 15",">= 16"],_stream_readable:">= 0.9.4","node:_stream_readable":[">= 14.18 && < 15",">= 16"],_stream_writable:">= 0.9.4","node:_stream_writable":[">= 14.18 && < 15",">= 16"],stream:!0,"node:stream":[">= 14.18 && < 15",">= 16"],"stream/consumers":">= 16.7","node:stream/consumers":">= 16.7","stream/promises":">= 15","node:stream/promises":">= 16","stream/web":">= 16.5","node:stream/web":">= 16.5",string_decoder:!0,"node:string_decoder":[">= 14.18 && < 15",">= 16"],sys:[">= 0.4 && < 0.7",">= 0.8"],"node:sys":[">= 14.18 && < 15",">= 16"],"test/reporters":">= 19.9 && < 20.2","node:test/reporters":[">= 18.17 && < 19",">= 19.9",">= 20"],"test/mock_loader":">= 22.3 && < 22.7","node:test/mock_loader":">= 22.3 && < 22.7","node:test":[">= 16.17 && < 17",">= 18"],timers:!0,"node:timers":[">= 14.18 && < 15",">= 16"],"timers/promises":">= 15","node:timers/promises":">= 16",_tls_common:">= 0.11.13","node:_tls_common":[">= 14.18 && < 15",">= 16"],_tls_legacy:">= 0.11.3 && < 10",_tls_wrap:">= 0.11.3","node:_tls_wrap":[">= 14.18 && < 15",">= 16"],tls:!0,"node:tls":[">= 14.18 && < 15",">= 16"],trace_events:">= 10","node:trace_events":[">= 14.18 && < 15",">= 16"],tty:!0,"node:tty":[">= 14.18 && < 15",">= 16"],url:!0,"node:url":[">= 14.18 && < 15",">= 16"],util:!0,"node:util":[">= 14.18 && < 15",">= 16"],"util/types":">= 15.3","node:util/types":">= 16","v8/tools/arguments":">= 10 && < 12","v8/tools/codemap":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/consarray":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/csvparser":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/logreader":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/profile_view":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/splaytree":[">= 4.4 && < 5",">= 5.2 && < 12"],v8:">= 1","node:v8":[">= 14.18 && < 15",">= 16"],vm:!0,"node:vm":[">= 14.18 && < 15",">= 16"],wasi:[">= 13.4 && < 13.5",">= 18.17 && < 19",">= 20"],"node:wasi":[">= 18.17 && < 19",">= 20"],worker_threads:">= 11.7","node:worker_threads":[">= 14.18 && < 15",">= 16"],zlib:">= 0.5","node:zlib":[">= 14.18 && < 15",">= 16"]}});var IL=R((ZhY,KxA)=>{var qvB=ZxA();function MvB(A,Q){var B=A.split("."),Y=Q.split(" "),J=Y.length>1?Y[0]:"=",C=(Y.length>1?Y[1]:Y[0]).split(".");for(var X=0;X<3;++X){var G=parseInt(B[X]||0,10),W=parseInt(C[X]||0,10);if(G===W)continue;if(J==="<")return G=")return G>=W;return!1}return J===">="}function UxA(A,Q){var B=Q.split(/ ?&& ?/);if(B.length===0)return!1;for(var Y=0;Y"u"?process.versions&&process.versions.node:A;if(typeof B!=="string")throw TypeError(typeof A>"u"?"Unable to determine current node version":"If provided, a valid node version is required");if(Q&&typeof Q==="object"){for(var Y=0;Y{var G$=u("fs"),RvB=wp(),zY=u("path"),wvB=jp(),jvB=Tp(),OvB=Sp(),PvB=IL(),TvB=process.platform!=="win32"&&G$.realpath&&typeof G$.realpath.native==="function"?G$.realpath.native:G$.realpath,VxA=RvB(),SvB=function(){return[zY.join(VxA,".node_modules"),zY.join(VxA,".node_libraries")]},kvB=function(Q,B){G$.stat(Q,function(Y,J){if(!Y)return B(null,J.isFile()||J.isFIFO());if(Y.code==="ENOENT"||Y.code==="ENOTDIR")return B(null,!1);return B(Y)})},_vB=function(Q,B){G$.stat(Q,function(Y,J){if(!Y)return B(null,J.isDirectory());if(Y.code==="ENOENT"||Y.code==="ENOTDIR")return B(null,!1);return B(Y)})},vvB=function(Q,B){TvB(Q,function(Y,J){if(Y&&Y.code!=="ENOENT")B(Y);else B(null,Y?Q:J)})},HL=function(Q,B,Y,J){if(Y&&Y.preserveSymlinks===!1)Q(B,J);else J(null,B)},yvB=function(Q,B,Y){Q(B,function(J,C){if(J)Y(J);else try{var X=JSON.parse(C);Y(null,X)}catch(G){Y(null)}})},gvB=function(Q,B,Y){var J=jvB(B,Y,Q);for(var C=0;C{hvB.exports={assert:!0,"node:assert":[">= 14.18 && < 15",">= 16"],"assert/strict":">= 15","node:assert/strict":">= 16",async_hooks:">= 8","node:async_hooks":[">= 14.18 && < 15",">= 16"],buffer_ieee754:">= 0.5 && < 0.9.7",buffer:!0,"node:buffer":[">= 14.18 && < 15",">= 16"],child_process:!0,"node:child_process":[">= 14.18 && < 15",">= 16"],cluster:">= 0.5","node:cluster":[">= 14.18 && < 15",">= 16"],console:!0,"node:console":[">= 14.18 && < 15",">= 16"],constants:!0,"node:constants":[">= 14.18 && < 15",">= 16"],crypto:!0,"node:crypto":[">= 14.18 && < 15",">= 16"],_debug_agent:">= 1 && < 8",_debugger:"< 8",dgram:!0,"node:dgram":[">= 14.18 && < 15",">= 16"],diagnostics_channel:[">= 14.17 && < 15",">= 15.1"],"node:diagnostics_channel":[">= 14.18 && < 15",">= 16"],dns:!0,"node:dns":[">= 14.18 && < 15",">= 16"],"dns/promises":">= 15","node:dns/promises":">= 16",domain:">= 0.7.12","node:domain":[">= 14.18 && < 15",">= 16"],events:!0,"node:events":[">= 14.18 && < 15",">= 16"],freelist:"< 6",fs:!0,"node:fs":[">= 14.18 && < 15",">= 16"],"fs/promises":[">= 10 && < 10.1",">= 14"],"node:fs/promises":[">= 14.18 && < 15",">= 16"],_http_agent:">= 0.11.1","node:_http_agent":[">= 14.18 && < 15",">= 16"],_http_client:">= 0.11.1","node:_http_client":[">= 14.18 && < 15",">= 16"],_http_common:">= 0.11.1","node:_http_common":[">= 14.18 && < 15",">= 16"],_http_incoming:">= 0.11.1","node:_http_incoming":[">= 14.18 && < 15",">= 16"],_http_outgoing:">= 0.11.1","node:_http_outgoing":[">= 14.18 && < 15",">= 16"],_http_server:">= 0.11.1","node:_http_server":[">= 14.18 && < 15",">= 16"],http:!0,"node:http":[">= 14.18 && < 15",">= 16"],http2:">= 8.8","node:http2":[">= 14.18 && < 15",">= 16"],https:!0,"node:https":[">= 14.18 && < 15",">= 16"],inspector:">= 8","node:inspector":[">= 14.18 && < 15",">= 16"],"inspector/promises":[">= 19"],"node:inspector/promises":[">= 19"],_linklist:"< 8",module:!0,"node:module":[">= 14.18 && < 15",">= 16"],net:!0,"node:net":[">= 14.18 && < 15",">= 16"],"node-inspect/lib/_inspect":">= 7.6 && < 12","node-inspect/lib/internal/inspect_client":">= 7.6 && < 12","node-inspect/lib/internal/inspect_repl":">= 7.6 && < 12",os:!0,"node:os":[">= 14.18 && < 15",">= 16"],path:!0,"node:path":[">= 14.18 && < 15",">= 16"],"path/posix":">= 15.3","node:path/posix":">= 16","path/win32":">= 15.3","node:path/win32":">= 16",perf_hooks:">= 8.5","node:perf_hooks":[">= 14.18 && < 15",">= 16"],process:">= 1","node:process":[">= 14.18 && < 15",">= 16"],punycode:">= 0.5","node:punycode":[">= 14.18 && < 15",">= 16"],querystring:!0,"node:querystring":[">= 14.18 && < 15",">= 16"],readline:!0,"node:readline":[">= 14.18 && < 15",">= 16"],"readline/promises":">= 17","node:readline/promises":">= 17",repl:!0,"node:repl":[">= 14.18 && < 15",">= 16"],"node:sea":[">= 20.12 && < 21",">= 21.7"],smalloc:">= 0.11.5 && < 3","node:sqlite":">= 23.4",_stream_duplex:">= 0.9.4","node:_stream_duplex":[">= 14.18 && < 15",">= 16"],_stream_transform:">= 0.9.4","node:_stream_transform":[">= 14.18 && < 15",">= 16"],_stream_wrap:">= 1.4.1","node:_stream_wrap":[">= 14.18 && < 15",">= 16"],_stream_passthrough:">= 0.9.4","node:_stream_passthrough":[">= 14.18 && < 15",">= 16"],_stream_readable:">= 0.9.4","node:_stream_readable":[">= 14.18 && < 15",">= 16"],_stream_writable:">= 0.9.4","node:_stream_writable":[">= 14.18 && < 15",">= 16"],stream:!0,"node:stream":[">= 14.18 && < 15",">= 16"],"stream/consumers":">= 16.7","node:stream/consumers":">= 16.7","stream/promises":">= 15","node:stream/promises":">= 16","stream/web":">= 16.5","node:stream/web":">= 16.5",string_decoder:!0,"node:string_decoder":[">= 14.18 && < 15",">= 16"],sys:[">= 0.4 && < 0.7",">= 0.8"],"node:sys":[">= 14.18 && < 15",">= 16"],"test/reporters":">= 19.9 && < 20.2","node:test/reporters":[">= 18.17 && < 19",">= 19.9",">= 20"],"test/mock_loader":">= 22.3 && < 22.7","node:test/mock_loader":">= 22.3 && < 22.7","node:test":[">= 16.17 && < 17",">= 18"],timers:!0,"node:timers":[">= 14.18 && < 15",">= 16"],"timers/promises":">= 15","node:timers/promises":">= 16",_tls_common:">= 0.11.13","node:_tls_common":[">= 14.18 && < 15",">= 16"],_tls_legacy:">= 0.11.3 && < 10",_tls_wrap:">= 0.11.3","node:_tls_wrap":[">= 14.18 && < 15",">= 16"],tls:!0,"node:tls":[">= 14.18 && < 15",">= 16"],trace_events:">= 10","node:trace_events":[">= 14.18 && < 15",">= 16"],tty:!0,"node:tty":[">= 14.18 && < 15",">= 16"],url:!0,"node:url":[">= 14.18 && < 15",">= 16"],util:!0,"node:util":[">= 14.18 && < 15",">= 16"],"util/types":">= 15.3","node:util/types":">= 16","v8/tools/arguments":">= 10 && < 12","v8/tools/codemap":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/consarray":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/csvparser":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/logreader":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/profile_view":[">= 4.4 && < 5",">= 5.2 && < 12"],"v8/tools/splaytree":[">= 4.4 && < 5",">= 5.2 && < 12"],v8:">= 1","node:v8":[">= 14.18 && < 15",">= 16"],vm:!0,"node:vm":[">= 14.18 && < 15",">= 16"],wasi:[">= 13.4 && < 13.5",">= 18.17 && < 19",">= 20"],"node:wasi":[">= 18.17 && < 19",">= 20"],worker_threads:">= 11.7","node:worker_threads":[">= 14.18 && < 15",">= 16"],zlib:">= 0.5","node:zlib":[">= 14.18 && < 15",">= 16"]}});var MxA=R((EhY,qxA)=>{var xvB=IL(),NxA=DxA(),LxA={};for(DL in NxA)if(Object.prototype.hasOwnProperty.call(NxA,DL))LxA[DL]=xvB(DL);var DL;qxA.exports=LxA});var RxA=R((KhY,zxA)=>{var fvB=IL();zxA.exports=function(Q){return fvB(Q)}});var OxA=R((VhY,jxA)=>{var bvB=IL(),W$=u("fs"),yJ=u("path"),mvB=wp(),uvB=jp(),dvB=Tp(),cvB=Sp(),lvB=process.platform!=="win32"&&W$.realpathSync&&typeof W$.realpathSync.native==="function"?W$.realpathSync.native:W$.realpathSync,wxA=mvB(),pvB=function(){return[yJ.join(wxA,".node_modules"),yJ.join(wxA,".node_libraries")]},ivB=function(Q){try{var B=W$.statSync(Q,{throwIfNoEntry:!1})}catch(Y){if(Y&&(Y.code==="ENOENT"||Y.code==="ENOTDIR"))return!1;throw Y}return!!B&&(B.isFile()||B.isFIFO())},nvB=function(Q){try{var B=W$.statSync(Q,{throwIfNoEntry:!1})}catch(Y){if(Y&&(Y.code==="ENOENT"||Y.code==="ENOTDIR"))return!1;throw Y}return!!B&&B.isDirectory()},svB=function(Q){try{return lvB(Q)}catch(B){if(B.code!=="ENOENT")throw B}return Q},NL=function(Q,B,Y){if(Y&&Y.preserveSymlinks===!1)return Q(B);return B},rvB=function(Q,B){var Y=Q(B);try{var J=JSON.parse(Y);return J}catch(C){}},avB=function(Q,B,Y){var J=dvB(B,Y,Q);for(var C=0;C{var rO=HxA();rO.core=MxA();rO.isCore=RxA();rO.sync=OxA();PxA.exports=rO});var TxA=R((HhY,ovB)=>{ovB.exports={name:"require-in-the-middle",version:"7.5.2",description:"Module to hook into the Node.js require function",main:"index.js",types:"types/index.d.ts",dependencies:{debug:"^4.3.5","module-details-from-path":"^1.0.3",resolve:"^1.22.8"},devDependencies:{"@babel/core":"^7.9.0","@babel/preset-env":"^7.9.5","@babel/preset-typescript":"^7.9.0","@babel/register":"^7.9.0","ipp-printer":"^1.0.0",patterns:"^1.0.3",roundround:"^0.2.0",semver:"^6.3.0",standard:"^14.3.1",tape:"^4.11.0"},scripts:{test:"npm run test:lint && npm run test:tape && npm run test:babel","test:lint":"standard","test:tape":"tape test/*.js","test:babel":"node test/babel/babel-register.js"},repository:{type:"git",url:"git+https://github.com/nodejs/require-in-the-middle.git"},keywords:["require","hook","shim","shimmer","shimming","patch","monkey","monkeypatch","module","load"],files:["types"],author:"Thomas Watson Steen (https://twitter.com/wa7son)",license:"MIT",bugs:{url:"https://github.com/nodejs/require-in-the-middle/issues"},homepage:"https://github.com/nodejs/require-in-the-middle#readme",engines:{node:">=8.6.0"}}});var yp=R((DhY,vp)=>{var $K=u("path"),W1=u("module"),EY=shA()("require-in-the-middle"),tvB=Rp();vp.exports=LL;vp.exports.Hook=LL;var _p,ZK;if(W1.isBuiltin)ZK=W1.isBuiltin;else if(W1.builtinModules)ZK=(A)=>{if(A.startsWith("node:"))return!0;if(_p===void 0)_p=new Set(W1.builtinModules);return _p.has(A)};else{let A=kp(),[Q,B]=process.versions.node.split(".").map(Number);if(Q===8&&B<8)ZK=(Y)=>{if(Y==="http2")return!0;return!!A.core[Y]};else ZK=(Y)=>{return!!A.core[Y]}}var aO;function evB(A,Q){if(!aO)if(u.resolve&&u.resolve.paths)aO=function(B,Y){return u.resolve(B,{paths:[Y]})};else{let B=kp();aO=function(Y,J){return B.sync(Y,{basedir:J})}}return aO(A,Q)}var AyB=/([/\\]index)?(\.js)?$/;class SxA{constructor(){this._localCache=new Map,this._kRitmExports=Symbol("RitmExports")}has(A,Q){if(this._localCache.has(A))return!0;else if(!Q){let B=u.cache[A];return!!(B&&(this._kRitmExports in B))}else return!1}get(A,Q){let B=this._localCache.get(A);if(B!==void 0)return B;else if(!Q){let Y=u.cache[A];return Y&&Y[this._kRitmExports]}}set(A,Q,B){if(B)this._localCache.set(A,Q);else if(A in u.cache)u.cache[A][this._kRitmExports]=Q;else EY('non-core module is unexpectedly not in require.cache: "%s"',A),this._localCache.set(A,Q)}}function LL(A,Q,B){if(this instanceof LL===!1)return new LL(A,Q,B);if(typeof A==="function")B=A,A=null,Q=null;else if(typeof Q==="function")B=Q,Q=null;if(typeof W1._resolveFilename!=="function"){console.error("Error: Expected Module._resolveFilename to be a function (was: %s) - aborting!",typeof W1._resolveFilename),console.error("Please report this error as an issue related to Node.js %s at %s",process.version,TxA().bugs.url);return}this._cache=new SxA,this._unhooked=!1,this._origRequire=W1.prototype.require;let Y=this,J=new Set,C=Q?Q.internals===!0:!1,X=Array.isArray(A);if(EY("registering require hook"),this._require=W1.prototype.require=function(W){if(Y._unhooked===!0)return EY("ignoring require call - module is soft-unhooked"),Y._origRequire.apply(this,arguments);return G.call(this,arguments,!1)},typeof process.getBuiltinModule==="function")this._origGetBuiltinModule=process.getBuiltinModule,this._getBuiltinModule=process.getBuiltinModule=function(W){if(Y._unhooked===!0)return EY("ignoring process.getBuiltinModule call - module is soft-unhooked"),Y._origGetBuiltinModule.apply(this,arguments);return G.call(this,arguments,!0)};function G(W,F){let Z=W[0],U=ZK(Z),$;if(U){if($=Z,Z.startsWith("node:")){let D=Z.slice(5);if(ZK(D))$=D}}else if(F)return EY("call to process.getBuiltinModule with unknown built-in id"),Y._origGetBuiltinModule.apply(this,W);else try{$=W1._resolveFilename(Z,this)}catch(D){return EY('Module._resolveFilename("%s") threw %j, calling original Module.require',Z,D.message),Y._origRequire.apply(this,W)}let E,K;if(EY("processing %s module require('%s'): %s",U===!0?"core":"non-core",Z,$),Y._cache.has($,U)===!0)return EY("returning already patched cached module: %s",$),Y._cache.get($,U);let I=J.has($);if(I===!1)J.add($);let V=F?Y._origGetBuiltinModule.apply(this,W):Y._origRequire.apply(this,W);if(I===!0)return EY("module is in the process of being patched already - ignoring: %s",$),V;if(J.delete($),U===!0){if(X===!0&&A.includes($)===!1)return EY("ignoring core module not on whitelist: %s",$),V;E=$}else if(X===!0&&A.includes($)){let D=$K.parse($);E=D.name,K=D.dir}else{let D=tvB($);if(D===void 0)return EY("could not parse filename: %s",$),V;E=D.name,K=D.basedir;let L=QyB(D);EY("resolved filename to module: %s (id: %s, resolved: %s, basedir: %s)",E,Z,L,K);let z=!1;if(X){if(!Z.startsWith(".")&&A.includes(Z))E=Z,z=!0;if(!A.includes(E)&&!A.includes(L))return V;if(A.includes(L)&&L!==E)E=L,z=!0}if(!z){let M;try{M=evB(E,K)}catch(N){return EY("could not resolve module: %s",E),Y._cache.set($,V,U),V}if(M!==$)if(C===!0)E=E+$K.sep+$K.relative(K,$),EY("preparing to process require of internal file: %s",E);else return EY("ignoring require of non-main module file: %s",M),Y._cache.set($,V,U),V}}Y._cache.set($,V,U),EY("calling require hook: %s",E);let H=B(V,E,K);return Y._cache.set($,H,U),EY("returning module: %s",E),H}}LL.prototype.unhook=function(){if(this._unhooked=!0,this._require===W1.prototype.require)W1.prototype.require=this._origRequire,EY("require unhook successful");else EY("require unhook unsuccessful");if(process.getBuiltinModule!==void 0)if(this._getBuiltinModule===process.getBuiltinModule)process.getBuiltinModule=this._origGetBuiltinModule,EY("process.getBuiltinModule unhook successful");else EY("process.getBuiltinModule unhook unsuccessful")};function QyB(A){let Q=$K.sep!=="/"?A.path.split($K.sep).join("/"):A.path;return $K.posix.join(A.name,Q).replace(AyB,"")}});var yxA=R((_xA)=>{Object.defineProperty(_xA,"__esModule",{value:!0});_xA.ModuleNameTrie=_xA.ModuleNameSeparator=void 0;_xA.ModuleNameSeparator="/";class gp{constructor(){this.hooks=[],this.children=new Map}}class kxA{constructor(){this._trie=new gp,this._counter=0}insert(A){let Q=this._trie;for(let B of A.moduleName.split(_xA.ModuleNameSeparator)){let Y=Q.children.get(B);if(!Y)Y=new gp,Q.children.set(B,Y);Q=Y}Q.hooks.push({hook:A,insertedId:this._counter++})}search(A,{maintainInsertionOrder:Q,fullOnly:B}={}){let Y=this._trie,J=[],C=!0;for(let X of A.split(_xA.ModuleNameSeparator)){let G=Y.children.get(X);if(!G){C=!1;break}if(!B)J.push(...G.hooks);Y=G}if(B&&C)J.push(...Y.hooks);if(J.length===0)return[];if(J.length===1)return[J[0].hook];if(Q)J.sort((X,G)=>X.insertedId-G.insertedId);return J.map(({hook:X})=>X)}}_xA.ModuleNameTrie=kxA});var fxA=R((hxA)=>{Object.defineProperty(hxA,"__esModule",{value:!0});hxA.RequireInTheMiddleSingleton=void 0;var ByB=yp(),gxA=u("path"),xp=yxA(),YyB=["afterEach","after","beforeEach","before","describe","it"].every((A)=>{return typeof global[A]==="function"});class oO{constructor(){this._moduleNameTrie=new xp.ModuleNameTrie,this._initialize()}_initialize(){new ByB.Hook(null,{internals:!0},(A,Q,B)=>{let Y=JyB(Q),J=this._moduleNameTrie.search(Y,{maintainInsertionOrder:!0,fullOnly:B===void 0});for(let{onRequire:C}of J)A=C(A,Q,B);return A})}register(A,Q){let B={moduleName:A,onRequire:Q};return this._moduleNameTrie.insert(B),B}static getInstance(){var A;if(YyB)return new oO;return this._instance=(A=this._instance)!==null&&A!==void 0?A:new oO}}hxA.RequireInTheMiddleSingleton=oO;function JyB(A){return gxA.sep!==xp.ModuleNameSeparator?A.split(gxA.sep).join(xp.ModuleNameSeparator):A}});var cxA=R((GyB)=>{var bxA=[],fp=new WeakMap,mxA=new WeakMap,uxA=new Map,dxA=[],CyB={set(A,Q,B){return fp.get(A)[Q](B)},get(A,Q){if(Q===Symbol.toStringTag)return"Module";let B=mxA.get(A)[Q];if(typeof B==="function")return B()},defineProperty(A,Q,B){if(!("value"in B))throw Error("Getters/setters are not supported for exports property descriptors.");return fp.get(A)[Q](B.value)}};function XyB(A,Q,B,Y,J){uxA.set(A,J),fp.set(Q,B),mxA.set(Q,Y);let C=new Proxy(Q,CyB);bxA.forEach((X)=>X(A,C)),dxA.push([A,C])}GyB.register=XyB;GyB.importHooks=bxA;GyB.specifiers=uxA;GyB.toHook=dxA});var up=R((zhY,UK)=>{var lxA=u("path"),UyB=Rp(),{fileURLToPath:pxA}=u("url"),{MessageChannel:EyB}=u("worker_threads"),{importHooks:bp,specifiers:KyB,toHook:VyB}=cxA();function nxA(A){bp.push(A),VyB.forEach(([Q,B])=>A(Q,B))}function sxA(A){let Q=bp.indexOf(A);if(Q>-1)bp.splice(Q,1)}function ixA(A,Q,B,Y){let J=A(Q,B,Y);if(J&&J!==Q)Q.default=J}var mp;function IyB(){let{port1:A,port2:Q}=new EyB,B=0,Y;mp=(G)=>{B++,A.postMessage(G)},A.on("message",()=>{if(B--,Y&&B<=0)Y()}).unref();function J(){let G=setInterval(()=>{},1000),W=new Promise((F)=>{Y=F}).then(()=>{clearInterval(G)});if(B===0)Y();return W}let C=Q;return{registerOptions:{data:{addHookMessagePort:C,include:[]},transferList:[C]},addHookMessagePort:C,waitForAllMessagesAcknowledged:J}}function qL(A,Q,B){if(this instanceof qL===!1)return new qL(A,Q,B);if(typeof A==="function")B=A,A=null,Q=null;else if(typeof Q==="function")B=Q,Q=null;let Y=Q?Q.internals===!0:!1;if(mp&&Array.isArray(A))mp(A);this._iitmHook=(J,C)=>{let X=J,G=J.startsWith("node:"),W;if(G)J=J.replace(/^node:/,"");else{if(J.startsWith("file://"))try{J=pxA(J)}catch(Z){}let F=UyB(J);if(F)J=F.name,W=F.basedir}if(A){for(let F of A)if(F===J){if(W){if(Y)J=J+lxA.sep+lxA.relative(W,pxA(X));else if(!W.endsWith(KyB.get(X)))continue}ixA(B,C,J,W)}}else ixA(B,C,J,W)},nxA(this._iitmHook)}qL.prototype.unhook=function(){sxA(this._iitmHook)};UK.exports=qL;UK.exports.Hook=qL;UK.exports.addHook=nxA;UK.exports.removeHook=sxA;UK.exports.createAddHookMessageChannel=IyB});var dp=R((rxA)=>{Object.defineProperty(rxA,"__esModule",{value:!0});rxA.isWrapped=rxA.safeExecuteInTheMiddleAsync=rxA.safeExecuteInTheMiddle=void 0;function HyB(A,Q,B){let Y,J;try{J=A()}catch(C){Y=C}finally{if(Q(Y,J),Y&&!B)throw Y;return J}}rxA.safeExecuteInTheMiddle=HyB;async function DyB(A,Q,B){let Y,J;try{J=await A()}catch(C){Y=C}finally{if(Q(Y,J),Y&&!B)throw Y;return J}}rxA.safeExecuteInTheMiddleAsync=DyB;function NyB(A){return typeof A==="function"&&typeof A.__original==="function"&&typeof A.__unwrap==="function"&&A.__wrapped===!0}rxA.isWrapped=NyB});var BfA=R((AfA)=>{Object.defineProperty(AfA,"__esModule",{value:!0});AfA.InstrumentationBase=void 0;var ML=u("path"),oxA=u("util"),MyB=OhA(),cp=Dp(),zyB=yhA(),RyB=fxA(),wyB=up(),zL=yA(),jyB=yp(),OyB=u("fs"),PyB=dp();class exA extends zyB.InstrumentationAbstract{constructor(A,Q,B){super(A,Q,B);this._hooks=[],this._requireInTheMiddleSingleton=RyB.RequireInTheMiddleSingleton.getInstance(),this._enabled=!1,this._wrap=(J,C,X)=>{if((0,PyB.isWrapped)(J[C]))this._unwrap(J,C);if(!oxA.types.isProxy(J))return(0,cp.wrap)(J,C,X);else{let G=(0,cp.wrap)(Object.assign({},J),C,X);return Object.defineProperty(J,C,{value:G}),G}},this._unwrap=(J,C)=>{if(!oxA.types.isProxy(J))return(0,cp.unwrap)(J,C);else return Object.defineProperty(J,C,{value:J[C]})},this._massWrap=(J,C,X)=>{if(!J){zL.diag.error("must provide one or more modules to patch");return}else if(!Array.isArray(J))J=[J];if(!(C&&Array.isArray(C))){zL.diag.error("must provide one or more functions to wrap on modules");return}J.forEach((G)=>{C.forEach((W)=>{this._wrap(G,W,X)})})},this._massUnwrap=(J,C)=>{if(!J){zL.diag.error("must provide one or more modules to patch");return}else if(!Array.isArray(J))J=[J];if(!(C&&Array.isArray(C))){zL.diag.error("must provide one or more functions to wrap on modules");return}J.forEach((X)=>{C.forEach((G)=>{this._unwrap(X,G)})})};let Y=this.init();if(Y&&!Array.isArray(Y))Y=[Y];if(this._modules=Y||[],this._config.enabled)this.enable()}_warnOnPreloadedModules(){this._modules.forEach((A)=>{let{name:Q}=A;try{let B=u.resolve(Q);if(u.cache[B])this._diag.warn(`Module ${Q} has been loaded before ${this.instrumentationName} so it might not work, please initialize it before requiring ${Q}`)}catch(B){}})}_extractPackageVersion(A){try{let Q=(0,OyB.readFileSync)(ML.join(A,"package.json"),{encoding:"utf8"}),B=JSON.parse(Q).version;return typeof B==="string"?B:void 0}catch(Q){zL.diag.warn("Failed extracting version",A)}return}_onRequire(A,Q,B,Y){var J;if(!Y){if(typeof A.patch==="function"){if(A.moduleExports=Q,this._enabled)return this._diag.debug("Applying instrumentation patch for nodejs core module on require hook",{module:A.name}),A.patch(Q)}return Q}let C=this._extractPackageVersion(Y);if(A.moduleVersion=C,A.name===B){if(txA(A.supportedVersions,C,A.includePrerelease)){if(typeof A.patch==="function"){if(A.moduleExports=Q,this._enabled)return this._diag.debug("Applying instrumentation patch for module on require hook",{module:A.name,version:A.moduleVersion,baseDir:Y}),A.patch(Q,A.moduleVersion)}}return Q}let X=(J=A.files)!==null&&J!==void 0?J:[],G=ML.normalize(B);return X.filter((F)=>F.name===G).filter((F)=>txA(F.supportedVersions,C,A.includePrerelease)).reduce((F,Z)=>{if(Z.moduleExports=F,this._enabled)return this._diag.debug("Applying instrumentation patch for nodejs module file on require hook",{module:A.name,version:A.moduleVersion,fileName:Z.name,baseDir:Y}),Z.patch(F,A.moduleVersion);return F},Q)}enable(){if(this._enabled)return;if(this._enabled=!0,this._hooks.length>0){for(let A of this._modules){if(typeof A.patch==="function"&&A.moduleExports)this._diag.debug("Applying instrumentation patch for nodejs module on instrumentation enabled",{module:A.name,version:A.moduleVersion}),A.patch(A.moduleExports,A.moduleVersion);for(let Q of A.files)if(Q.moduleExports)this._diag.debug("Applying instrumentation patch for nodejs module file on instrumentation enabled",{module:A.name,version:A.moduleVersion,fileName:Q.name}),Q.patch(Q.moduleExports,A.moduleVersion)}return}this._warnOnPreloadedModules();for(let A of this._modules){let Q=(C,X,G)=>{if(!G&&ML.isAbsolute(X)){let W=ML.parse(X);X=W.name,G=W.dir}return this._onRequire(A,C,X,G)},B=(C,X,G)=>{return this._onRequire(A,C,X,G)},Y=ML.isAbsolute(A.name)?new jyB.Hook([A.name],{internals:!0},B):this._requireInTheMiddleSingleton.register(A.name,B);this._hooks.push(Y);let J=new wyB.Hook([A.name],{internals:!1},Q);this._hooks.push(J)}}disable(){if(!this._enabled)return;this._enabled=!1;for(let A of this._modules){if(typeof A.unpatch==="function"&&A.moduleExports)this._diag.debug("Removing instrumentation patch for nodejs module on instrumentation disabled",{module:A.name,version:A.moduleVersion}),A.unpatch(A.moduleExports,A.moduleVersion);for(let Q of A.files)if(Q.moduleExports)this._diag.debug("Removing instrumentation patch for nodejs module file on instrumentation disabled",{module:A.name,version:A.moduleVersion,fileName:Q.name}),Q.unpatch(Q.moduleExports,A.moduleVersion)}}isEnabled(){return this._enabled}}AfA.InstrumentationBase=exA;function txA(A,Q,B){if(typeof Q>"u")return A.includes("*");return A.some((Y)=>{return(0,MyB.satisfies)(Q,Y,{includePrerelease:B})})}});var YfA=R((lp)=>{Object.defineProperty(lp,"__esModule",{value:!0});lp.normalize=void 0;var TyB=u("path");Object.defineProperty(lp,"normalize",{enumerable:!0,get:function(){return TyB.normalize}})});var JfA=R((tO)=>{Object.defineProperty(tO,"__esModule",{value:!0});tO.normalize=tO.InstrumentationBase=void 0;var kyB=BfA();Object.defineProperty(tO,"InstrumentationBase",{enumerable:!0,get:function(){return kyB.InstrumentationBase}});var _yB=YfA();Object.defineProperty(tO,"normalize",{enumerable:!0,get:function(){return _yB.normalize}})});var pp=R((eO)=>{Object.defineProperty(eO,"__esModule",{value:!0});eO.normalize=eO.InstrumentationBase=void 0;var CfA=JfA();Object.defineProperty(eO,"InstrumentationBase",{enumerable:!0,get:function(){return CfA.InstrumentationBase}});Object.defineProperty(eO,"normalize",{enumerable:!0,get:function(){return CfA.normalize}})});var FfA=R((GfA)=>{Object.defineProperty(GfA,"__esModule",{value:!0});GfA.InstrumentationNodeModuleDefinition=void 0;class XfA{constructor(A,Q,B,Y,J){this.name=A,this.supportedVersions=Q,this.patch=B,this.unpatch=Y,this.files=J||[]}}GfA.InstrumentationNodeModuleDefinition=XfA});var EfA=R(($fA)=>{Object.defineProperty($fA,"__esModule",{value:!0});$fA.InstrumentationNodeModuleFile=void 0;var gyB=pp();class ZfA{constructor(A,Q,B,Y){this.supportedVersions=Q,this.patch=B,this.unpatch=Y,this.name=(0,gyB.normalize)(A)}}$fA.InstrumentationNodeModuleFile=ZfA});var NB=R((FG)=>{Object.defineProperty(FG,"__esModule",{value:!0});FG.safeExecuteInTheMiddleAsync=FG.safeExecuteInTheMiddle=FG.isWrapped=FG.InstrumentationNodeModuleFile=FG.InstrumentationNodeModuleDefinition=FG.InstrumentationBase=FG.registerInstrumentations=void 0;var hyB=gyA();Object.defineProperty(FG,"registerInstrumentations",{enumerable:!0,get:function(){return hyB.registerInstrumentations}});var xyB=pp();Object.defineProperty(FG,"InstrumentationBase",{enumerable:!0,get:function(){return xyB.InstrumentationBase}});var fyB=FfA();Object.defineProperty(FG,"InstrumentationNodeModuleDefinition",{enumerable:!0,get:function(){return fyB.InstrumentationNodeModuleDefinition}});var byB=EfA();Object.defineProperty(FG,"InstrumentationNodeModuleFile",{enumerable:!0,get:function(){return byB.InstrumentationNodeModuleFile}});var ip=dp();Object.defineProperty(FG,"isWrapped",{enumerable:!0,get:function(){return ip.isWrapped}});Object.defineProperty(FG,"safeExecuteInTheMiddle",{enumerable:!0,get:function(){return ip.safeExecuteInTheMiddle}});Object.defineProperty(FG,"safeExecuteInTheMiddleAsync",{enumerable:!0,get:function(){return ip.safeExecuteInTheMiddleAsync}})});var np=R((KfA)=>{Object.defineProperty(KfA,"__esModule",{value:!0});KfA.createConstMap=void 0;function uyB(A){let Q={},B=A.length;for(let Y=0;Y{Object.defineProperty(CcA,"__esModule",{value:!0});CcA.SEMATTRS_NET_HOST_CARRIER_ICC=CcA.SEMATTRS_NET_HOST_CARRIER_MNC=CcA.SEMATTRS_NET_HOST_CARRIER_MCC=CcA.SEMATTRS_NET_HOST_CARRIER_NAME=CcA.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=CcA.SEMATTRS_NET_HOST_CONNECTION_TYPE=CcA.SEMATTRS_NET_HOST_NAME=CcA.SEMATTRS_NET_HOST_PORT=CcA.SEMATTRS_NET_HOST_IP=CcA.SEMATTRS_NET_PEER_NAME=CcA.SEMATTRS_NET_PEER_PORT=CcA.SEMATTRS_NET_PEER_IP=CcA.SEMATTRS_NET_TRANSPORT=CcA.SEMATTRS_FAAS_INVOKED_REGION=CcA.SEMATTRS_FAAS_INVOKED_PROVIDER=CcA.SEMATTRS_FAAS_INVOKED_NAME=CcA.SEMATTRS_FAAS_COLDSTART=CcA.SEMATTRS_FAAS_CRON=CcA.SEMATTRS_FAAS_TIME=CcA.SEMATTRS_FAAS_DOCUMENT_NAME=CcA.SEMATTRS_FAAS_DOCUMENT_TIME=CcA.SEMATTRS_FAAS_DOCUMENT_OPERATION=CcA.SEMATTRS_FAAS_DOCUMENT_COLLECTION=CcA.SEMATTRS_FAAS_EXECUTION=CcA.SEMATTRS_FAAS_TRIGGER=CcA.SEMATTRS_EXCEPTION_ESCAPED=CcA.SEMATTRS_EXCEPTION_STACKTRACE=CcA.SEMATTRS_EXCEPTION_MESSAGE=CcA.SEMATTRS_EXCEPTION_TYPE=CcA.SEMATTRS_DB_SQL_TABLE=CcA.SEMATTRS_DB_MONGODB_COLLECTION=CcA.SEMATTRS_DB_REDIS_DATABASE_INDEX=CcA.SEMATTRS_DB_HBASE_NAMESPACE=CcA.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=CcA.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=CcA.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=CcA.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=CcA.SEMATTRS_DB_CASSANDRA_TABLE=CcA.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=CcA.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=CcA.SEMATTRS_DB_CASSANDRA_KEYSPACE=CcA.SEMATTRS_DB_MSSQL_INSTANCE_NAME=CcA.SEMATTRS_DB_OPERATION=CcA.SEMATTRS_DB_STATEMENT=CcA.SEMATTRS_DB_NAME=CcA.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=CcA.SEMATTRS_DB_USER=CcA.SEMATTRS_DB_CONNECTION_STRING=CcA.SEMATTRS_DB_SYSTEM=CcA.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=void 0;CcA.SEMATTRS_MESSAGING_DESTINATION_KIND=CcA.SEMATTRS_MESSAGING_DESTINATION=CcA.SEMATTRS_MESSAGING_SYSTEM=CcA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=CcA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=CcA.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=CcA.SEMATTRS_AWS_DYNAMODB_COUNT=CcA.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=CcA.SEMATTRS_AWS_DYNAMODB_SEGMENT=CcA.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=CcA.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=CcA.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=CcA.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=CcA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=CcA.SEMATTRS_AWS_DYNAMODB_SELECT=CcA.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=CcA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=CcA.SEMATTRS_AWS_DYNAMODB_LIMIT=CcA.SEMATTRS_AWS_DYNAMODB_PROJECTION=CcA.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=CcA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=CcA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=CcA.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=CcA.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=CcA.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=CcA.SEMATTRS_HTTP_CLIENT_IP=CcA.SEMATTRS_HTTP_ROUTE=CcA.SEMATTRS_HTTP_SERVER_NAME=CcA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=CcA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=CcA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=CcA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=CcA.SEMATTRS_HTTP_USER_AGENT=CcA.SEMATTRS_HTTP_FLAVOR=CcA.SEMATTRS_HTTP_STATUS_CODE=CcA.SEMATTRS_HTTP_SCHEME=CcA.SEMATTRS_HTTP_HOST=CcA.SEMATTRS_HTTP_TARGET=CcA.SEMATTRS_HTTP_URL=CcA.SEMATTRS_HTTP_METHOD=CcA.SEMATTRS_CODE_LINENO=CcA.SEMATTRS_CODE_FILEPATH=CcA.SEMATTRS_CODE_NAMESPACE=CcA.SEMATTRS_CODE_FUNCTION=CcA.SEMATTRS_THREAD_NAME=CcA.SEMATTRS_THREAD_ID=CcA.SEMATTRS_ENDUSER_SCOPE=CcA.SEMATTRS_ENDUSER_ROLE=CcA.SEMATTRS_ENDUSER_ID=CcA.SEMATTRS_PEER_SERVICE=void 0;CcA.DBSYSTEMVALUES_FILEMAKER=CcA.DBSYSTEMVALUES_DERBY=CcA.DBSYSTEMVALUES_FIREBIRD=CcA.DBSYSTEMVALUES_ADABAS=CcA.DBSYSTEMVALUES_CACHE=CcA.DBSYSTEMVALUES_EDB=CcA.DBSYSTEMVALUES_FIRSTSQL=CcA.DBSYSTEMVALUES_INGRES=CcA.DBSYSTEMVALUES_HANADB=CcA.DBSYSTEMVALUES_MAXDB=CcA.DBSYSTEMVALUES_PROGRESS=CcA.DBSYSTEMVALUES_HSQLDB=CcA.DBSYSTEMVALUES_CLOUDSCAPE=CcA.DBSYSTEMVALUES_HIVE=CcA.DBSYSTEMVALUES_REDSHIFT=CcA.DBSYSTEMVALUES_POSTGRESQL=CcA.DBSYSTEMVALUES_DB2=CcA.DBSYSTEMVALUES_ORACLE=CcA.DBSYSTEMVALUES_MYSQL=CcA.DBSYSTEMVALUES_MSSQL=CcA.DBSYSTEMVALUES_OTHER_SQL=CcA.SemanticAttributes=CcA.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=CcA.SEMATTRS_MESSAGE_COMPRESSED_SIZE=CcA.SEMATTRS_MESSAGE_ID=CcA.SEMATTRS_MESSAGE_TYPE=CcA.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=CcA.SEMATTRS_RPC_JSONRPC_ERROR_CODE=CcA.SEMATTRS_RPC_JSONRPC_REQUEST_ID=CcA.SEMATTRS_RPC_JSONRPC_VERSION=CcA.SEMATTRS_RPC_GRPC_STATUS_CODE=CcA.SEMATTRS_RPC_METHOD=CcA.SEMATTRS_RPC_SERVICE=CcA.SEMATTRS_RPC_SYSTEM=CcA.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=CcA.SEMATTRS_MESSAGING_KAFKA_PARTITION=CcA.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=CcA.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=CcA.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=CcA.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=CcA.SEMATTRS_MESSAGING_CONSUMER_ID=CcA.SEMATTRS_MESSAGING_OPERATION=CcA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=CcA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=CcA.SEMATTRS_MESSAGING_CONVERSATION_ID=CcA.SEMATTRS_MESSAGING_MESSAGE_ID=CcA.SEMATTRS_MESSAGING_URL=CcA.SEMATTRS_MESSAGING_PROTOCOL_VERSION=CcA.SEMATTRS_MESSAGING_PROTOCOL=CcA.SEMATTRS_MESSAGING_TEMP_DESTINATION=void 0;CcA.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=CcA.FaasDocumentOperationValues=CcA.FAASDOCUMENTOPERATIONVALUES_DELETE=CcA.FAASDOCUMENTOPERATIONVALUES_EDIT=CcA.FAASDOCUMENTOPERATIONVALUES_INSERT=CcA.FaasTriggerValues=CcA.FAASTRIGGERVALUES_OTHER=CcA.FAASTRIGGERVALUES_TIMER=CcA.FAASTRIGGERVALUES_PUBSUB=CcA.FAASTRIGGERVALUES_HTTP=CcA.FAASTRIGGERVALUES_DATASOURCE=CcA.DbCassandraConsistencyLevelValues=CcA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=CcA.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=CcA.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=CcA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=CcA.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=CcA.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=CcA.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=CcA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=CcA.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=CcA.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=CcA.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=CcA.DbSystemValues=CcA.DBSYSTEMVALUES_COCKROACHDB=CcA.DBSYSTEMVALUES_MEMCACHED=CcA.DBSYSTEMVALUES_ELASTICSEARCH=CcA.DBSYSTEMVALUES_GEODE=CcA.DBSYSTEMVALUES_NEO4J=CcA.DBSYSTEMVALUES_DYNAMODB=CcA.DBSYSTEMVALUES_COSMOSDB=CcA.DBSYSTEMVALUES_COUCHDB=CcA.DBSYSTEMVALUES_COUCHBASE=CcA.DBSYSTEMVALUES_REDIS=CcA.DBSYSTEMVALUES_MONGODB=CcA.DBSYSTEMVALUES_HBASE=CcA.DBSYSTEMVALUES_CASSANDRA=CcA.DBSYSTEMVALUES_COLDFUSION=CcA.DBSYSTEMVALUES_H2=CcA.DBSYSTEMVALUES_VERTICA=CcA.DBSYSTEMVALUES_TERADATA=CcA.DBSYSTEMVALUES_SYBASE=CcA.DBSYSTEMVALUES_SQLITE=CcA.DBSYSTEMVALUES_POINTBASE=CcA.DBSYSTEMVALUES_PERVASIVE=CcA.DBSYSTEMVALUES_NETEZZA=CcA.DBSYSTEMVALUES_MARIADB=CcA.DBSYSTEMVALUES_INTERBASE=CcA.DBSYSTEMVALUES_INSTANTDB=CcA.DBSYSTEMVALUES_INFORMIX=void 0;CcA.MESSAGINGOPERATIONVALUES_RECEIVE=CcA.MessagingDestinationKindValues=CcA.MESSAGINGDESTINATIONKINDVALUES_TOPIC=CcA.MESSAGINGDESTINATIONKINDVALUES_QUEUE=CcA.HttpFlavorValues=CcA.HTTPFLAVORVALUES_QUIC=CcA.HTTPFLAVORVALUES_SPDY=CcA.HTTPFLAVORVALUES_HTTP_2_0=CcA.HTTPFLAVORVALUES_HTTP_1_1=CcA.HTTPFLAVORVALUES_HTTP_1_0=CcA.NetHostConnectionSubtypeValues=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_NR=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=CcA.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=CcA.NetHostConnectionTypeValues=CcA.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=CcA.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=CcA.NETHOSTCONNECTIONTYPEVALUES_CELL=CcA.NETHOSTCONNECTIONTYPEVALUES_WIRED=CcA.NETHOSTCONNECTIONTYPEVALUES_WIFI=CcA.NetTransportValues=CcA.NETTRANSPORTVALUES_OTHER=CcA.NETTRANSPORTVALUES_INPROC=CcA.NETTRANSPORTVALUES_PIPE=CcA.NETTRANSPORTVALUES_UNIX=CcA.NETTRANSPORTVALUES_IP=CcA.NETTRANSPORTVALUES_IP_UDP=CcA.NETTRANSPORTVALUES_IP_TCP=CcA.FaasInvokedProviderValues=CcA.FAASINVOKEDPROVIDERVALUES_GCP=CcA.FAASINVOKEDPROVIDERVALUES_AZURE=CcA.FAASINVOKEDPROVIDERVALUES_AWS=void 0;CcA.MessageTypeValues=CcA.MESSAGETYPEVALUES_RECEIVED=CcA.MESSAGETYPEVALUES_SENT=CcA.RpcGrpcStatusCodeValues=CcA.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=CcA.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=CcA.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=CcA.RPCGRPCSTATUSCODEVALUES_INTERNAL=CcA.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=CcA.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=CcA.RPCGRPCSTATUSCODEVALUES_ABORTED=CcA.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=CcA.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=CcA.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=CcA.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=CcA.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=CcA.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=CcA.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=CcA.RPCGRPCSTATUSCODEVALUES_UNKNOWN=CcA.RPCGRPCSTATUSCODEVALUES_CANCELLED=CcA.RPCGRPCSTATUSCODEVALUES_OK=CcA.MessagingOperationValues=CcA.MESSAGINGOPERATIONVALUES_PROCESS=void 0;var c5=np(),IfA="aws.lambda.invoked_arn",HfA="db.system",DfA="db.connection_string",NfA="db.user",LfA="db.jdbc.driver_classname",qfA="db.name",MfA="db.statement",zfA="db.operation",RfA="db.mssql.instance_name",wfA="db.cassandra.keyspace",jfA="db.cassandra.page_size",OfA="db.cassandra.consistency_level",PfA="db.cassandra.table",TfA="db.cassandra.idempotence",SfA="db.cassandra.speculative_execution_count",kfA="db.cassandra.coordinator.id",_fA="db.cassandra.coordinator.dc",vfA="db.hbase.namespace",yfA="db.redis.database_index",gfA="db.mongodb.collection",hfA="db.sql.table",xfA="exception.type",ffA="exception.message",bfA="exception.stacktrace",mfA="exception.escaped",ufA="faas.trigger",dfA="faas.execution",cfA="faas.document.collection",lfA="faas.document.operation",pfA="faas.document.time",ifA="faas.document.name",nfA="faas.time",sfA="faas.cron",rfA="faas.coldstart",afA="faas.invoked_name",ofA="faas.invoked_provider",tfA="faas.invoked_region",efA="net.transport",AbA="net.peer.ip",QbA="net.peer.port",BbA="net.peer.name",YbA="net.host.ip",JbA="net.host.port",CbA="net.host.name",XbA="net.host.connection.type",GbA="net.host.connection.subtype",WbA="net.host.carrier.name",FbA="net.host.carrier.mcc",ZbA="net.host.carrier.mnc",$bA="net.host.carrier.icc",UbA="peer.service",EbA="enduser.id",KbA="enduser.role",VbA="enduser.scope",IbA="thread.id",HbA="thread.name",DbA="code.function",NbA="code.namespace",LbA="code.filepath",qbA="code.lineno",MbA="http.method",zbA="http.url",RbA="http.target",wbA="http.host",jbA="http.scheme",ObA="http.status_code",PbA="http.flavor",TbA="http.user_agent",SbA="http.request_content_length",kbA="http.request_content_length_uncompressed",_bA="http.response_content_length",vbA="http.response_content_length_uncompressed",ybA="http.server_name",gbA="http.route",hbA="http.client_ip",xbA="aws.dynamodb.table_names",fbA="aws.dynamodb.consumed_capacity",bbA="aws.dynamodb.item_collection_metrics",mbA="aws.dynamodb.provisioned_read_capacity",ubA="aws.dynamodb.provisioned_write_capacity",dbA="aws.dynamodb.consistent_read",cbA="aws.dynamodb.projection",lbA="aws.dynamodb.limit",pbA="aws.dynamodb.attributes_to_get",ibA="aws.dynamodb.index_name",nbA="aws.dynamodb.select",sbA="aws.dynamodb.global_secondary_indexes",rbA="aws.dynamodb.local_secondary_indexes",abA="aws.dynamodb.exclusive_start_table",obA="aws.dynamodb.table_count",tbA="aws.dynamodb.scan_forward",ebA="aws.dynamodb.segment",AmA="aws.dynamodb.total_segments",QmA="aws.dynamodb.count",BmA="aws.dynamodb.scanned_count",YmA="aws.dynamodb.attribute_definitions",JmA="aws.dynamodb.global_secondary_index_updates",CmA="messaging.system",XmA="messaging.destination",GmA="messaging.destination_kind",WmA="messaging.temp_destination",FmA="messaging.protocol",ZmA="messaging.protocol_version",$mA="messaging.url",UmA="messaging.message_id",EmA="messaging.conversation_id",KmA="messaging.message_payload_size_bytes",VmA="messaging.message_payload_compressed_size_bytes",ImA="messaging.operation",HmA="messaging.consumer_id",DmA="messaging.rabbitmq.routing_key",NmA="messaging.kafka.message_key",LmA="messaging.kafka.consumer_group",qmA="messaging.kafka.client_id",MmA="messaging.kafka.partition",zmA="messaging.kafka.tombstone",RmA="rpc.system",wmA="rpc.service",jmA="rpc.method",OmA="rpc.grpc.status_code",PmA="rpc.jsonrpc.version",TmA="rpc.jsonrpc.request_id",SmA="rpc.jsonrpc.error_code",kmA="rpc.jsonrpc.error_message",_mA="message.type",vmA="message.id",ymA="message.compressed_size",gmA="message.uncompressed_size";CcA.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=IfA;CcA.SEMATTRS_DB_SYSTEM=HfA;CcA.SEMATTRS_DB_CONNECTION_STRING=DfA;CcA.SEMATTRS_DB_USER=NfA;CcA.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=LfA;CcA.SEMATTRS_DB_NAME=qfA;CcA.SEMATTRS_DB_STATEMENT=MfA;CcA.SEMATTRS_DB_OPERATION=zfA;CcA.SEMATTRS_DB_MSSQL_INSTANCE_NAME=RfA;CcA.SEMATTRS_DB_CASSANDRA_KEYSPACE=wfA;CcA.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=jfA;CcA.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=OfA;CcA.SEMATTRS_DB_CASSANDRA_TABLE=PfA;CcA.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=TfA;CcA.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=SfA;CcA.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=kfA;CcA.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=_fA;CcA.SEMATTRS_DB_HBASE_NAMESPACE=vfA;CcA.SEMATTRS_DB_REDIS_DATABASE_INDEX=yfA;CcA.SEMATTRS_DB_MONGODB_COLLECTION=gfA;CcA.SEMATTRS_DB_SQL_TABLE=hfA;CcA.SEMATTRS_EXCEPTION_TYPE=xfA;CcA.SEMATTRS_EXCEPTION_MESSAGE=ffA;CcA.SEMATTRS_EXCEPTION_STACKTRACE=bfA;CcA.SEMATTRS_EXCEPTION_ESCAPED=mfA;CcA.SEMATTRS_FAAS_TRIGGER=ufA;CcA.SEMATTRS_FAAS_EXECUTION=dfA;CcA.SEMATTRS_FAAS_DOCUMENT_COLLECTION=cfA;CcA.SEMATTRS_FAAS_DOCUMENT_OPERATION=lfA;CcA.SEMATTRS_FAAS_DOCUMENT_TIME=pfA;CcA.SEMATTRS_FAAS_DOCUMENT_NAME=ifA;CcA.SEMATTRS_FAAS_TIME=nfA;CcA.SEMATTRS_FAAS_CRON=sfA;CcA.SEMATTRS_FAAS_COLDSTART=rfA;CcA.SEMATTRS_FAAS_INVOKED_NAME=afA;CcA.SEMATTRS_FAAS_INVOKED_PROVIDER=ofA;CcA.SEMATTRS_FAAS_INVOKED_REGION=tfA;CcA.SEMATTRS_NET_TRANSPORT=efA;CcA.SEMATTRS_NET_PEER_IP=AbA;CcA.SEMATTRS_NET_PEER_PORT=QbA;CcA.SEMATTRS_NET_PEER_NAME=BbA;CcA.SEMATTRS_NET_HOST_IP=YbA;CcA.SEMATTRS_NET_HOST_PORT=JbA;CcA.SEMATTRS_NET_HOST_NAME=CbA;CcA.SEMATTRS_NET_HOST_CONNECTION_TYPE=XbA;CcA.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=GbA;CcA.SEMATTRS_NET_HOST_CARRIER_NAME=WbA;CcA.SEMATTRS_NET_HOST_CARRIER_MCC=FbA;CcA.SEMATTRS_NET_HOST_CARRIER_MNC=ZbA;CcA.SEMATTRS_NET_HOST_CARRIER_ICC=$bA;CcA.SEMATTRS_PEER_SERVICE=UbA;CcA.SEMATTRS_ENDUSER_ID=EbA;CcA.SEMATTRS_ENDUSER_ROLE=KbA;CcA.SEMATTRS_ENDUSER_SCOPE=VbA;CcA.SEMATTRS_THREAD_ID=IbA;CcA.SEMATTRS_THREAD_NAME=HbA;CcA.SEMATTRS_CODE_FUNCTION=DbA;CcA.SEMATTRS_CODE_NAMESPACE=NbA;CcA.SEMATTRS_CODE_FILEPATH=LbA;CcA.SEMATTRS_CODE_LINENO=qbA;CcA.SEMATTRS_HTTP_METHOD=MbA;CcA.SEMATTRS_HTTP_URL=zbA;CcA.SEMATTRS_HTTP_TARGET=RbA;CcA.SEMATTRS_HTTP_HOST=wbA;CcA.SEMATTRS_HTTP_SCHEME=jbA;CcA.SEMATTRS_HTTP_STATUS_CODE=ObA;CcA.SEMATTRS_HTTP_FLAVOR=PbA;CcA.SEMATTRS_HTTP_USER_AGENT=TbA;CcA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=SbA;CcA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=kbA;CcA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=_bA;CcA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=vbA;CcA.SEMATTRS_HTTP_SERVER_NAME=ybA;CcA.SEMATTRS_HTTP_ROUTE=gbA;CcA.SEMATTRS_HTTP_CLIENT_IP=hbA;CcA.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=xbA;CcA.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=fbA;CcA.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=bbA;CcA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=mbA;CcA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=ubA;CcA.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=dbA;CcA.SEMATTRS_AWS_DYNAMODB_PROJECTION=cbA;CcA.SEMATTRS_AWS_DYNAMODB_LIMIT=lbA;CcA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=pbA;CcA.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=ibA;CcA.SEMATTRS_AWS_DYNAMODB_SELECT=nbA;CcA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=sbA;CcA.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=rbA;CcA.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=abA;CcA.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=obA;CcA.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=tbA;CcA.SEMATTRS_AWS_DYNAMODB_SEGMENT=ebA;CcA.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=AmA;CcA.SEMATTRS_AWS_DYNAMODB_COUNT=QmA;CcA.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=BmA;CcA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=YmA;CcA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=JmA;CcA.SEMATTRS_MESSAGING_SYSTEM=CmA;CcA.SEMATTRS_MESSAGING_DESTINATION=XmA;CcA.SEMATTRS_MESSAGING_DESTINATION_KIND=GmA;CcA.SEMATTRS_MESSAGING_TEMP_DESTINATION=WmA;CcA.SEMATTRS_MESSAGING_PROTOCOL=FmA;CcA.SEMATTRS_MESSAGING_PROTOCOL_VERSION=ZmA;CcA.SEMATTRS_MESSAGING_URL=$mA;CcA.SEMATTRS_MESSAGING_MESSAGE_ID=UmA;CcA.SEMATTRS_MESSAGING_CONVERSATION_ID=EmA;CcA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=KmA;CcA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=VmA;CcA.SEMATTRS_MESSAGING_OPERATION=ImA;CcA.SEMATTRS_MESSAGING_CONSUMER_ID=HmA;CcA.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=DmA;CcA.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=NmA;CcA.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=LmA;CcA.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=qmA;CcA.SEMATTRS_MESSAGING_KAFKA_PARTITION=MmA;CcA.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=zmA;CcA.SEMATTRS_RPC_SYSTEM=RmA;CcA.SEMATTRS_RPC_SERVICE=wmA;CcA.SEMATTRS_RPC_METHOD=jmA;CcA.SEMATTRS_RPC_GRPC_STATUS_CODE=OmA;CcA.SEMATTRS_RPC_JSONRPC_VERSION=PmA;CcA.SEMATTRS_RPC_JSONRPC_REQUEST_ID=TmA;CcA.SEMATTRS_RPC_JSONRPC_ERROR_CODE=SmA;CcA.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=kmA;CcA.SEMATTRS_MESSAGE_TYPE=_mA;CcA.SEMATTRS_MESSAGE_ID=vmA;CcA.SEMATTRS_MESSAGE_COMPRESSED_SIZE=ymA;CcA.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=gmA;CcA.SemanticAttributes=(0,c5.createConstMap)([IfA,HfA,DfA,NfA,LfA,qfA,MfA,zfA,RfA,wfA,jfA,OfA,PfA,TfA,SfA,kfA,_fA,vfA,yfA,gfA,hfA,xfA,ffA,bfA,mfA,ufA,dfA,cfA,lfA,pfA,ifA,nfA,sfA,rfA,afA,ofA,tfA,efA,AbA,QbA,BbA,YbA,JbA,CbA,XbA,GbA,WbA,FbA,ZbA,$bA,UbA,EbA,KbA,VbA,IbA,HbA,DbA,NbA,LbA,qbA,MbA,zbA,RbA,wbA,jbA,ObA,PbA,TbA,SbA,kbA,_bA,vbA,ybA,gbA,hbA,xbA,fbA,bbA,mbA,ubA,dbA,cbA,lbA,pbA,ibA,nbA,sbA,rbA,abA,obA,tbA,ebA,AmA,QmA,BmA,YmA,JmA,CmA,XmA,GmA,WmA,FmA,ZmA,$mA,UmA,EmA,KmA,VmA,ImA,HmA,DmA,NmA,LmA,qmA,MmA,zmA,RmA,wmA,jmA,OmA,PmA,TmA,SmA,kmA,_mA,vmA,ymA,gmA]);var hmA="other_sql",xmA="mssql",fmA="mysql",bmA="oracle",mmA="db2",umA="postgresql",dmA="redshift",cmA="hive",lmA="cloudscape",pmA="hsqldb",imA="progress",nmA="maxdb",smA="hanadb",rmA="ingres",amA="firstsql",omA="edb",tmA="cache",emA="adabas",AuA="firebird",QuA="derby",BuA="filemaker",YuA="informix",JuA="instantdb",CuA="interbase",XuA="mariadb",GuA="netezza",WuA="pervasive",FuA="pointbase",ZuA="sqlite",$uA="sybase",UuA="teradata",EuA="vertica",KuA="h2",VuA="coldfusion",IuA="cassandra",HuA="hbase",DuA="mongodb",NuA="redis",LuA="couchbase",quA="couchdb",MuA="cosmosdb",zuA="dynamodb",RuA="neo4j",wuA="geode",juA="elasticsearch",OuA="memcached",PuA="cockroachdb";CcA.DBSYSTEMVALUES_OTHER_SQL=hmA;CcA.DBSYSTEMVALUES_MSSQL=xmA;CcA.DBSYSTEMVALUES_MYSQL=fmA;CcA.DBSYSTEMVALUES_ORACLE=bmA;CcA.DBSYSTEMVALUES_DB2=mmA;CcA.DBSYSTEMVALUES_POSTGRESQL=umA;CcA.DBSYSTEMVALUES_REDSHIFT=dmA;CcA.DBSYSTEMVALUES_HIVE=cmA;CcA.DBSYSTEMVALUES_CLOUDSCAPE=lmA;CcA.DBSYSTEMVALUES_HSQLDB=pmA;CcA.DBSYSTEMVALUES_PROGRESS=imA;CcA.DBSYSTEMVALUES_MAXDB=nmA;CcA.DBSYSTEMVALUES_HANADB=smA;CcA.DBSYSTEMVALUES_INGRES=rmA;CcA.DBSYSTEMVALUES_FIRSTSQL=amA;CcA.DBSYSTEMVALUES_EDB=omA;CcA.DBSYSTEMVALUES_CACHE=tmA;CcA.DBSYSTEMVALUES_ADABAS=emA;CcA.DBSYSTEMVALUES_FIREBIRD=AuA;CcA.DBSYSTEMVALUES_DERBY=QuA;CcA.DBSYSTEMVALUES_FILEMAKER=BuA;CcA.DBSYSTEMVALUES_INFORMIX=YuA;CcA.DBSYSTEMVALUES_INSTANTDB=JuA;CcA.DBSYSTEMVALUES_INTERBASE=CuA;CcA.DBSYSTEMVALUES_MARIADB=XuA;CcA.DBSYSTEMVALUES_NETEZZA=GuA;CcA.DBSYSTEMVALUES_PERVASIVE=WuA;CcA.DBSYSTEMVALUES_POINTBASE=FuA;CcA.DBSYSTEMVALUES_SQLITE=ZuA;CcA.DBSYSTEMVALUES_SYBASE=$uA;CcA.DBSYSTEMVALUES_TERADATA=UuA;CcA.DBSYSTEMVALUES_VERTICA=EuA;CcA.DBSYSTEMVALUES_H2=KuA;CcA.DBSYSTEMVALUES_COLDFUSION=VuA;CcA.DBSYSTEMVALUES_CASSANDRA=IuA;CcA.DBSYSTEMVALUES_HBASE=HuA;CcA.DBSYSTEMVALUES_MONGODB=DuA;CcA.DBSYSTEMVALUES_REDIS=NuA;CcA.DBSYSTEMVALUES_COUCHBASE=LuA;CcA.DBSYSTEMVALUES_COUCHDB=quA;CcA.DBSYSTEMVALUES_COSMOSDB=MuA;CcA.DBSYSTEMVALUES_DYNAMODB=zuA;CcA.DBSYSTEMVALUES_NEO4J=RuA;CcA.DBSYSTEMVALUES_GEODE=wuA;CcA.DBSYSTEMVALUES_ELASTICSEARCH=juA;CcA.DBSYSTEMVALUES_MEMCACHED=OuA;CcA.DBSYSTEMVALUES_COCKROACHDB=PuA;CcA.DbSystemValues=(0,c5.createConstMap)([hmA,xmA,fmA,bmA,mmA,umA,dmA,cmA,lmA,pmA,imA,nmA,smA,rmA,amA,omA,tmA,emA,AuA,QuA,BuA,YuA,JuA,CuA,XuA,GuA,WuA,FuA,ZuA,$uA,UuA,EuA,KuA,VuA,IuA,HuA,DuA,NuA,LuA,quA,MuA,zuA,RuA,wuA,juA,OuA,PuA]);var TuA="all",SuA="each_quorum",kuA="quorum",_uA="local_quorum",vuA="one",yuA="two",guA="three",huA="local_one",xuA="any",fuA="serial",buA="local_serial";CcA.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=TuA;CcA.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=SuA;CcA.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=kuA;CcA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=_uA;CcA.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=vuA;CcA.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=yuA;CcA.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=guA;CcA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=huA;CcA.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=xuA;CcA.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=fuA;CcA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=buA;CcA.DbCassandraConsistencyLevelValues=(0,c5.createConstMap)([TuA,SuA,kuA,_uA,vuA,yuA,guA,huA,xuA,fuA,buA]);var muA="datasource",uuA="http",duA="pubsub",cuA="timer",luA="other";CcA.FAASTRIGGERVALUES_DATASOURCE=muA;CcA.FAASTRIGGERVALUES_HTTP=uuA;CcA.FAASTRIGGERVALUES_PUBSUB=duA;CcA.FAASTRIGGERVALUES_TIMER=cuA;CcA.FAASTRIGGERVALUES_OTHER=luA;CcA.FaasTriggerValues=(0,c5.createConstMap)([muA,uuA,duA,cuA,luA]);var puA="insert",iuA="edit",nuA="delete";CcA.FAASDOCUMENTOPERATIONVALUES_INSERT=puA;CcA.FAASDOCUMENTOPERATIONVALUES_EDIT=iuA;CcA.FAASDOCUMENTOPERATIONVALUES_DELETE=nuA;CcA.FaasDocumentOperationValues=(0,c5.createConstMap)([puA,iuA,nuA]);var suA="alibaba_cloud",ruA="aws",auA="azure",ouA="gcp";CcA.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=suA;CcA.FAASINVOKEDPROVIDERVALUES_AWS=ruA;CcA.FAASINVOKEDPROVIDERVALUES_AZURE=auA;CcA.FAASINVOKEDPROVIDERVALUES_GCP=ouA;CcA.FaasInvokedProviderValues=(0,c5.createConstMap)([suA,ruA,auA,ouA]);var tuA="ip_tcp",euA="ip_udp",AdA="ip",QdA="unix",BdA="pipe",YdA="inproc",JdA="other";CcA.NETTRANSPORTVALUES_IP_TCP=tuA;CcA.NETTRANSPORTVALUES_IP_UDP=euA;CcA.NETTRANSPORTVALUES_IP=AdA;CcA.NETTRANSPORTVALUES_UNIX=QdA;CcA.NETTRANSPORTVALUES_PIPE=BdA;CcA.NETTRANSPORTVALUES_INPROC=YdA;CcA.NETTRANSPORTVALUES_OTHER=JdA;CcA.NetTransportValues=(0,c5.createConstMap)([tuA,euA,AdA,QdA,BdA,YdA,JdA]);var CdA="wifi",XdA="wired",GdA="cell",WdA="unavailable",FdA="unknown";CcA.NETHOSTCONNECTIONTYPEVALUES_WIFI=CdA;CcA.NETHOSTCONNECTIONTYPEVALUES_WIRED=XdA;CcA.NETHOSTCONNECTIONTYPEVALUES_CELL=GdA;CcA.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=WdA;CcA.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=FdA;CcA.NetHostConnectionTypeValues=(0,c5.createConstMap)([CdA,XdA,GdA,WdA,FdA]);var ZdA="gprs",$dA="edge",UdA="umts",EdA="cdma",KdA="evdo_0",VdA="evdo_a",IdA="cdma2000_1xrtt",HdA="hsdpa",DdA="hsupa",NdA="hspa",LdA="iden",qdA="evdo_b",MdA="lte",zdA="ehrpd",RdA="hspap",wdA="gsm",jdA="td_scdma",OdA="iwlan",PdA="nr",TdA="nrnsa",SdA="lte_ca";CcA.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=ZdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=$dA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=UdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=EdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=KdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=VdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=IdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=HdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=DdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=NdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=LdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=qdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=MdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=zdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=RdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=wdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=jdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=OdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_NR=PdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=TdA;CcA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=SdA;CcA.NetHostConnectionSubtypeValues=(0,c5.createConstMap)([ZdA,$dA,UdA,EdA,KdA,VdA,IdA,HdA,DdA,NdA,LdA,qdA,MdA,zdA,RdA,wdA,jdA,OdA,PdA,TdA,SdA]);var kdA="1.0",_dA="1.1",vdA="2.0",ydA="SPDY",gdA="QUIC";CcA.HTTPFLAVORVALUES_HTTP_1_0=kdA;CcA.HTTPFLAVORVALUES_HTTP_1_1=_dA;CcA.HTTPFLAVORVALUES_HTTP_2_0=vdA;CcA.HTTPFLAVORVALUES_SPDY=ydA;CcA.HTTPFLAVORVALUES_QUIC=gdA;CcA.HttpFlavorValues={HTTP_1_0:kdA,HTTP_1_1:_dA,HTTP_2_0:vdA,SPDY:ydA,QUIC:gdA};var hdA="queue",xdA="topic";CcA.MESSAGINGDESTINATIONKINDVALUES_QUEUE=hdA;CcA.MESSAGINGDESTINATIONKINDVALUES_TOPIC=xdA;CcA.MessagingDestinationKindValues=(0,c5.createConstMap)([hdA,xdA]);var fdA="receive",bdA="process";CcA.MESSAGINGOPERATIONVALUES_RECEIVE=fdA;CcA.MESSAGINGOPERATIONVALUES_PROCESS=bdA;CcA.MessagingOperationValues=(0,c5.createConstMap)([fdA,bdA]);var mdA=0,udA=1,ddA=2,cdA=3,ldA=4,pdA=5,idA=6,ndA=7,sdA=8,rdA=9,adA=10,odA=11,tdA=12,edA=13,AcA=14,QcA=15,BcA=16;CcA.RPCGRPCSTATUSCODEVALUES_OK=mdA;CcA.RPCGRPCSTATUSCODEVALUES_CANCELLED=udA;CcA.RPCGRPCSTATUSCODEVALUES_UNKNOWN=ddA;CcA.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=cdA;CcA.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=ldA;CcA.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=pdA;CcA.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=idA;CcA.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=ndA;CcA.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=sdA;CcA.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=rdA;CcA.RPCGRPCSTATUSCODEVALUES_ABORTED=adA;CcA.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=odA;CcA.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=tdA;CcA.RPCGRPCSTATUSCODEVALUES_INTERNAL=edA;CcA.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=AcA;CcA.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=QcA;CcA.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=BcA;CcA.RpcGrpcStatusCodeValues={OK:mdA,CANCELLED:udA,UNKNOWN:ddA,INVALID_ARGUMENT:cdA,DEADLINE_EXCEEDED:ldA,NOT_FOUND:pdA,ALREADY_EXISTS:idA,PERMISSION_DENIED:ndA,RESOURCE_EXHAUSTED:sdA,FAILED_PRECONDITION:rdA,ABORTED:adA,OUT_OF_RANGE:odA,UNIMPLEMENTED:tdA,INTERNAL:edA,UNAVAILABLE:AcA,DATA_LOSS:QcA,UNAUTHENTICATED:BcA};var YcA="SENT",JcA="RECEIVED";CcA.MESSAGETYPEVALUES_SENT=YcA;CcA.MESSAGETYPEVALUES_RECEIVED=JcA;CcA.MessageTypeValues=(0,c5.createConstMap)([YcA,JcA])});var EcA=R((F$)=>{var bbB=F$&&F$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),mbB=F$&&F$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))bbB(Q,A,B)};Object.defineProperty(F$,"__esModule",{value:!0});mbB(UcA(),F$)});var dpA=R((fpA)=>{Object.defineProperty(fpA,"__esModule",{value:!0});fpA.SEMRESATTRS_K8S_STATEFULSET_NAME=fpA.SEMRESATTRS_K8S_STATEFULSET_UID=fpA.SEMRESATTRS_K8S_DEPLOYMENT_NAME=fpA.SEMRESATTRS_K8S_DEPLOYMENT_UID=fpA.SEMRESATTRS_K8S_REPLICASET_NAME=fpA.SEMRESATTRS_K8S_REPLICASET_UID=fpA.SEMRESATTRS_K8S_CONTAINER_NAME=fpA.SEMRESATTRS_K8S_POD_NAME=fpA.SEMRESATTRS_K8S_POD_UID=fpA.SEMRESATTRS_K8S_NAMESPACE_NAME=fpA.SEMRESATTRS_K8S_NODE_UID=fpA.SEMRESATTRS_K8S_NODE_NAME=fpA.SEMRESATTRS_K8S_CLUSTER_NAME=fpA.SEMRESATTRS_HOST_IMAGE_VERSION=fpA.SEMRESATTRS_HOST_IMAGE_ID=fpA.SEMRESATTRS_HOST_IMAGE_NAME=fpA.SEMRESATTRS_HOST_ARCH=fpA.SEMRESATTRS_HOST_TYPE=fpA.SEMRESATTRS_HOST_NAME=fpA.SEMRESATTRS_HOST_ID=fpA.SEMRESATTRS_FAAS_MAX_MEMORY=fpA.SEMRESATTRS_FAAS_INSTANCE=fpA.SEMRESATTRS_FAAS_VERSION=fpA.SEMRESATTRS_FAAS_ID=fpA.SEMRESATTRS_FAAS_NAME=fpA.SEMRESATTRS_DEVICE_MODEL_NAME=fpA.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=fpA.SEMRESATTRS_DEVICE_ID=fpA.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=fpA.SEMRESATTRS_CONTAINER_IMAGE_TAG=fpA.SEMRESATTRS_CONTAINER_IMAGE_NAME=fpA.SEMRESATTRS_CONTAINER_RUNTIME=fpA.SEMRESATTRS_CONTAINER_ID=fpA.SEMRESATTRS_CONTAINER_NAME=fpA.SEMRESATTRS_AWS_LOG_STREAM_ARNS=fpA.SEMRESATTRS_AWS_LOG_STREAM_NAMES=fpA.SEMRESATTRS_AWS_LOG_GROUP_ARNS=fpA.SEMRESATTRS_AWS_LOG_GROUP_NAMES=fpA.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=fpA.SEMRESATTRS_AWS_ECS_TASK_REVISION=fpA.SEMRESATTRS_AWS_ECS_TASK_FAMILY=fpA.SEMRESATTRS_AWS_ECS_TASK_ARN=fpA.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=fpA.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=fpA.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=fpA.SEMRESATTRS_CLOUD_PLATFORM=fpA.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=fpA.SEMRESATTRS_CLOUD_REGION=fpA.SEMRESATTRS_CLOUD_ACCOUNT_ID=fpA.SEMRESATTRS_CLOUD_PROVIDER=void 0;fpA.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=fpA.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=fpA.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=fpA.CLOUDPLATFORMVALUES_AZURE_AKS=fpA.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=fpA.CLOUDPLATFORMVALUES_AZURE_VM=fpA.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=fpA.CLOUDPLATFORMVALUES_AWS_LAMBDA=fpA.CLOUDPLATFORMVALUES_AWS_EKS=fpA.CLOUDPLATFORMVALUES_AWS_ECS=fpA.CLOUDPLATFORMVALUES_AWS_EC2=fpA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=fpA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=fpA.CloudProviderValues=fpA.CLOUDPROVIDERVALUES_GCP=fpA.CLOUDPROVIDERVALUES_AZURE=fpA.CLOUDPROVIDERVALUES_AWS=fpA.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=fpA.SemanticResourceAttributes=fpA.SEMRESATTRS_WEBENGINE_DESCRIPTION=fpA.SEMRESATTRS_WEBENGINE_VERSION=fpA.SEMRESATTRS_WEBENGINE_NAME=fpA.SEMRESATTRS_TELEMETRY_AUTO_VERSION=fpA.SEMRESATTRS_TELEMETRY_SDK_VERSION=fpA.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=fpA.SEMRESATTRS_TELEMETRY_SDK_NAME=fpA.SEMRESATTRS_SERVICE_VERSION=fpA.SEMRESATTRS_SERVICE_INSTANCE_ID=fpA.SEMRESATTRS_SERVICE_NAMESPACE=fpA.SEMRESATTRS_SERVICE_NAME=fpA.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=fpA.SEMRESATTRS_PROCESS_RUNTIME_VERSION=fpA.SEMRESATTRS_PROCESS_RUNTIME_NAME=fpA.SEMRESATTRS_PROCESS_OWNER=fpA.SEMRESATTRS_PROCESS_COMMAND_ARGS=fpA.SEMRESATTRS_PROCESS_COMMAND_LINE=fpA.SEMRESATTRS_PROCESS_COMMAND=fpA.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=fpA.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=fpA.SEMRESATTRS_PROCESS_PID=fpA.SEMRESATTRS_OS_VERSION=fpA.SEMRESATTRS_OS_NAME=fpA.SEMRESATTRS_OS_DESCRIPTION=fpA.SEMRESATTRS_OS_TYPE=fpA.SEMRESATTRS_K8S_CRONJOB_NAME=fpA.SEMRESATTRS_K8S_CRONJOB_UID=fpA.SEMRESATTRS_K8S_JOB_NAME=fpA.SEMRESATTRS_K8S_JOB_UID=fpA.SEMRESATTRS_K8S_DAEMONSET_NAME=fpA.SEMRESATTRS_K8S_DAEMONSET_UID=void 0;fpA.TelemetrySdkLanguageValues=fpA.TELEMETRYSDKLANGUAGEVALUES_WEBJS=fpA.TELEMETRYSDKLANGUAGEVALUES_RUBY=fpA.TELEMETRYSDKLANGUAGEVALUES_PYTHON=fpA.TELEMETRYSDKLANGUAGEVALUES_PHP=fpA.TELEMETRYSDKLANGUAGEVALUES_NODEJS=fpA.TELEMETRYSDKLANGUAGEVALUES_JAVA=fpA.TELEMETRYSDKLANGUAGEVALUES_GO=fpA.TELEMETRYSDKLANGUAGEVALUES_ERLANG=fpA.TELEMETRYSDKLANGUAGEVALUES_DOTNET=fpA.TELEMETRYSDKLANGUAGEVALUES_CPP=fpA.OsTypeValues=fpA.OSTYPEVALUES_Z_OS=fpA.OSTYPEVALUES_SOLARIS=fpA.OSTYPEVALUES_AIX=fpA.OSTYPEVALUES_HPUX=fpA.OSTYPEVALUES_DRAGONFLYBSD=fpA.OSTYPEVALUES_OPENBSD=fpA.OSTYPEVALUES_NETBSD=fpA.OSTYPEVALUES_FREEBSD=fpA.OSTYPEVALUES_DARWIN=fpA.OSTYPEVALUES_LINUX=fpA.OSTYPEVALUES_WINDOWS=fpA.HostArchValues=fpA.HOSTARCHVALUES_X86=fpA.HOSTARCHVALUES_PPC64=fpA.HOSTARCHVALUES_PPC32=fpA.HOSTARCHVALUES_IA64=fpA.HOSTARCHVALUES_ARM64=fpA.HOSTARCHVALUES_ARM32=fpA.HOSTARCHVALUES_AMD64=fpA.AwsEcsLaunchtypeValues=fpA.AWSECSLAUNCHTYPEVALUES_FARGATE=fpA.AWSECSLAUNCHTYPEVALUES_EC2=fpA.CloudPlatformValues=fpA.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=fpA.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=fpA.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=fpA.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=void 0;var Z$=np(),KcA="cloud.provider",VcA="cloud.account.id",IcA="cloud.region",HcA="cloud.availability_zone",DcA="cloud.platform",NcA="aws.ecs.container.arn",LcA="aws.ecs.cluster.arn",qcA="aws.ecs.launchtype",McA="aws.ecs.task.arn",zcA="aws.ecs.task.family",RcA="aws.ecs.task.revision",wcA="aws.eks.cluster.arn",jcA="aws.log.group.names",OcA="aws.log.group.arns",PcA="aws.log.stream.names",TcA="aws.log.stream.arns",ScA="container.name",kcA="container.id",_cA="container.runtime",vcA="container.image.name",ycA="container.image.tag",gcA="deployment.environment",hcA="device.id",xcA="device.model.identifier",fcA="device.model.name",bcA="faas.name",mcA="faas.id",ucA="faas.version",dcA="faas.instance",ccA="faas.max_memory",lcA="host.id",pcA="host.name",icA="host.type",ncA="host.arch",scA="host.image.name",rcA="host.image.id",acA="host.image.version",ocA="k8s.cluster.name",tcA="k8s.node.name",ecA="k8s.node.uid",AlA="k8s.namespace.name",QlA="k8s.pod.uid",BlA="k8s.pod.name",YlA="k8s.container.name",JlA="k8s.replicaset.uid",ClA="k8s.replicaset.name",XlA="k8s.deployment.uid",GlA="k8s.deployment.name",WlA="k8s.statefulset.uid",FlA="k8s.statefulset.name",ZlA="k8s.daemonset.uid",$lA="k8s.daemonset.name",UlA="k8s.job.uid",ElA="k8s.job.name",KlA="k8s.cronjob.uid",VlA="k8s.cronjob.name",IlA="os.type",HlA="os.description",DlA="os.name",NlA="os.version",LlA="process.pid",qlA="process.executable.name",MlA="process.executable.path",zlA="process.command",RlA="process.command_line",wlA="process.command_args",jlA="process.owner",OlA="process.runtime.name",PlA="process.runtime.version",TlA="process.runtime.description",SlA="service.name",klA="service.namespace",_lA="service.instance.id",vlA="service.version",ylA="telemetry.sdk.name",glA="telemetry.sdk.language",hlA="telemetry.sdk.version",xlA="telemetry.auto.version",flA="webengine.name",blA="webengine.version",mlA="webengine.description";fpA.SEMRESATTRS_CLOUD_PROVIDER=KcA;fpA.SEMRESATTRS_CLOUD_ACCOUNT_ID=VcA;fpA.SEMRESATTRS_CLOUD_REGION=IcA;fpA.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=HcA;fpA.SEMRESATTRS_CLOUD_PLATFORM=DcA;fpA.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=NcA;fpA.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=LcA;fpA.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=qcA;fpA.SEMRESATTRS_AWS_ECS_TASK_ARN=McA;fpA.SEMRESATTRS_AWS_ECS_TASK_FAMILY=zcA;fpA.SEMRESATTRS_AWS_ECS_TASK_REVISION=RcA;fpA.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=wcA;fpA.SEMRESATTRS_AWS_LOG_GROUP_NAMES=jcA;fpA.SEMRESATTRS_AWS_LOG_GROUP_ARNS=OcA;fpA.SEMRESATTRS_AWS_LOG_STREAM_NAMES=PcA;fpA.SEMRESATTRS_AWS_LOG_STREAM_ARNS=TcA;fpA.SEMRESATTRS_CONTAINER_NAME=ScA;fpA.SEMRESATTRS_CONTAINER_ID=kcA;fpA.SEMRESATTRS_CONTAINER_RUNTIME=_cA;fpA.SEMRESATTRS_CONTAINER_IMAGE_NAME=vcA;fpA.SEMRESATTRS_CONTAINER_IMAGE_TAG=ycA;fpA.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=gcA;fpA.SEMRESATTRS_DEVICE_ID=hcA;fpA.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=xcA;fpA.SEMRESATTRS_DEVICE_MODEL_NAME=fcA;fpA.SEMRESATTRS_FAAS_NAME=bcA;fpA.SEMRESATTRS_FAAS_ID=mcA;fpA.SEMRESATTRS_FAAS_VERSION=ucA;fpA.SEMRESATTRS_FAAS_INSTANCE=dcA;fpA.SEMRESATTRS_FAAS_MAX_MEMORY=ccA;fpA.SEMRESATTRS_HOST_ID=lcA;fpA.SEMRESATTRS_HOST_NAME=pcA;fpA.SEMRESATTRS_HOST_TYPE=icA;fpA.SEMRESATTRS_HOST_ARCH=ncA;fpA.SEMRESATTRS_HOST_IMAGE_NAME=scA;fpA.SEMRESATTRS_HOST_IMAGE_ID=rcA;fpA.SEMRESATTRS_HOST_IMAGE_VERSION=acA;fpA.SEMRESATTRS_K8S_CLUSTER_NAME=ocA;fpA.SEMRESATTRS_K8S_NODE_NAME=tcA;fpA.SEMRESATTRS_K8S_NODE_UID=ecA;fpA.SEMRESATTRS_K8S_NAMESPACE_NAME=AlA;fpA.SEMRESATTRS_K8S_POD_UID=QlA;fpA.SEMRESATTRS_K8S_POD_NAME=BlA;fpA.SEMRESATTRS_K8S_CONTAINER_NAME=YlA;fpA.SEMRESATTRS_K8S_REPLICASET_UID=JlA;fpA.SEMRESATTRS_K8S_REPLICASET_NAME=ClA;fpA.SEMRESATTRS_K8S_DEPLOYMENT_UID=XlA;fpA.SEMRESATTRS_K8S_DEPLOYMENT_NAME=GlA;fpA.SEMRESATTRS_K8S_STATEFULSET_UID=WlA;fpA.SEMRESATTRS_K8S_STATEFULSET_NAME=FlA;fpA.SEMRESATTRS_K8S_DAEMONSET_UID=ZlA;fpA.SEMRESATTRS_K8S_DAEMONSET_NAME=$lA;fpA.SEMRESATTRS_K8S_JOB_UID=UlA;fpA.SEMRESATTRS_K8S_JOB_NAME=ElA;fpA.SEMRESATTRS_K8S_CRONJOB_UID=KlA;fpA.SEMRESATTRS_K8S_CRONJOB_NAME=VlA;fpA.SEMRESATTRS_OS_TYPE=IlA;fpA.SEMRESATTRS_OS_DESCRIPTION=HlA;fpA.SEMRESATTRS_OS_NAME=DlA;fpA.SEMRESATTRS_OS_VERSION=NlA;fpA.SEMRESATTRS_PROCESS_PID=LlA;fpA.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=qlA;fpA.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=MlA;fpA.SEMRESATTRS_PROCESS_COMMAND=zlA;fpA.SEMRESATTRS_PROCESS_COMMAND_LINE=RlA;fpA.SEMRESATTRS_PROCESS_COMMAND_ARGS=wlA;fpA.SEMRESATTRS_PROCESS_OWNER=jlA;fpA.SEMRESATTRS_PROCESS_RUNTIME_NAME=OlA;fpA.SEMRESATTRS_PROCESS_RUNTIME_VERSION=PlA;fpA.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=TlA;fpA.SEMRESATTRS_SERVICE_NAME=SlA;fpA.SEMRESATTRS_SERVICE_NAMESPACE=klA;fpA.SEMRESATTRS_SERVICE_INSTANCE_ID=_lA;fpA.SEMRESATTRS_SERVICE_VERSION=vlA;fpA.SEMRESATTRS_TELEMETRY_SDK_NAME=ylA;fpA.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=glA;fpA.SEMRESATTRS_TELEMETRY_SDK_VERSION=hlA;fpA.SEMRESATTRS_TELEMETRY_AUTO_VERSION=xlA;fpA.SEMRESATTRS_WEBENGINE_NAME=flA;fpA.SEMRESATTRS_WEBENGINE_VERSION=blA;fpA.SEMRESATTRS_WEBENGINE_DESCRIPTION=mlA;fpA.SemanticResourceAttributes=(0,Z$.createConstMap)([KcA,VcA,IcA,HcA,DcA,NcA,LcA,qcA,McA,zcA,RcA,wcA,jcA,OcA,PcA,TcA,ScA,kcA,_cA,vcA,ycA,gcA,hcA,xcA,fcA,bcA,mcA,ucA,dcA,ccA,lcA,pcA,icA,ncA,scA,rcA,acA,ocA,tcA,ecA,AlA,QlA,BlA,YlA,JlA,ClA,XlA,GlA,WlA,FlA,ZlA,$lA,UlA,ElA,KlA,VlA,IlA,HlA,DlA,NlA,LlA,qlA,MlA,zlA,RlA,wlA,jlA,OlA,PlA,TlA,SlA,klA,_lA,vlA,ylA,glA,hlA,xlA,flA,blA,mlA]);var ulA="alibaba_cloud",dlA="aws",clA="azure",llA="gcp";fpA.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=ulA;fpA.CLOUDPROVIDERVALUES_AWS=dlA;fpA.CLOUDPROVIDERVALUES_AZURE=clA;fpA.CLOUDPROVIDERVALUES_GCP=llA;fpA.CloudProviderValues=(0,Z$.createConstMap)([ulA,dlA,clA,llA]);var plA="alibaba_cloud_ecs",ilA="alibaba_cloud_fc",nlA="aws_ec2",slA="aws_ecs",rlA="aws_eks",alA="aws_lambda",olA="aws_elastic_beanstalk",tlA="azure_vm",elA="azure_container_instances",ApA="azure_aks",QpA="azure_functions",BpA="azure_app_service",YpA="gcp_compute_engine",JpA="gcp_cloud_run",CpA="gcp_kubernetes_engine",XpA="gcp_cloud_functions",GpA="gcp_app_engine";fpA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=plA;fpA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=ilA;fpA.CLOUDPLATFORMVALUES_AWS_EC2=nlA;fpA.CLOUDPLATFORMVALUES_AWS_ECS=slA;fpA.CLOUDPLATFORMVALUES_AWS_EKS=rlA;fpA.CLOUDPLATFORMVALUES_AWS_LAMBDA=alA;fpA.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=olA;fpA.CLOUDPLATFORMVALUES_AZURE_VM=tlA;fpA.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=elA;fpA.CLOUDPLATFORMVALUES_AZURE_AKS=ApA;fpA.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=QpA;fpA.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=BpA;fpA.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=YpA;fpA.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=JpA;fpA.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=CpA;fpA.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=XpA;fpA.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=GpA;fpA.CloudPlatformValues=(0,Z$.createConstMap)([plA,ilA,nlA,slA,rlA,alA,olA,tlA,elA,ApA,QpA,BpA,YpA,JpA,CpA,XpA,GpA]);var WpA="ec2",FpA="fargate";fpA.AWSECSLAUNCHTYPEVALUES_EC2=WpA;fpA.AWSECSLAUNCHTYPEVALUES_FARGATE=FpA;fpA.AwsEcsLaunchtypeValues=(0,Z$.createConstMap)([WpA,FpA]);var ZpA="amd64",$pA="arm32",UpA="arm64",EpA="ia64",KpA="ppc32",VpA="ppc64",IpA="x86";fpA.HOSTARCHVALUES_AMD64=ZpA;fpA.HOSTARCHVALUES_ARM32=$pA;fpA.HOSTARCHVALUES_ARM64=UpA;fpA.HOSTARCHVALUES_IA64=EpA;fpA.HOSTARCHVALUES_PPC32=KpA;fpA.HOSTARCHVALUES_PPC64=VpA;fpA.HOSTARCHVALUES_X86=IpA;fpA.HostArchValues=(0,Z$.createConstMap)([ZpA,$pA,UpA,EpA,KpA,VpA,IpA]);var HpA="windows",DpA="linux",NpA="darwin",LpA="freebsd",qpA="netbsd",MpA="openbsd",zpA="dragonflybsd",RpA="hpux",wpA="aix",jpA="solaris",OpA="z_os";fpA.OSTYPEVALUES_WINDOWS=HpA;fpA.OSTYPEVALUES_LINUX=DpA;fpA.OSTYPEVALUES_DARWIN=NpA;fpA.OSTYPEVALUES_FREEBSD=LpA;fpA.OSTYPEVALUES_NETBSD=qpA;fpA.OSTYPEVALUES_OPENBSD=MpA;fpA.OSTYPEVALUES_DRAGONFLYBSD=zpA;fpA.OSTYPEVALUES_HPUX=RpA;fpA.OSTYPEVALUES_AIX=wpA;fpA.OSTYPEVALUES_SOLARIS=jpA;fpA.OSTYPEVALUES_Z_OS=OpA;fpA.OsTypeValues=(0,Z$.createConstMap)([HpA,DpA,NpA,LpA,qpA,MpA,zpA,RpA,wpA,jpA,OpA]);var PpA="cpp",TpA="dotnet",SpA="erlang",kpA="go",_pA="java",vpA="nodejs",ypA="php",gpA="python",hpA="ruby",xpA="webjs";fpA.TELEMETRYSDKLANGUAGEVALUES_CPP=PpA;fpA.TELEMETRYSDKLANGUAGEVALUES_DOTNET=TpA;fpA.TELEMETRYSDKLANGUAGEVALUES_ERLANG=SpA;fpA.TELEMETRYSDKLANGUAGEVALUES_GO=kpA;fpA.TELEMETRYSDKLANGUAGEVALUES_JAVA=_pA;fpA.TELEMETRYSDKLANGUAGEVALUES_NODEJS=vpA;fpA.TELEMETRYSDKLANGUAGEVALUES_PHP=ypA;fpA.TELEMETRYSDKLANGUAGEVALUES_PYTHON=gpA;fpA.TELEMETRYSDKLANGUAGEVALUES_RUBY=hpA;fpA.TELEMETRYSDKLANGUAGEVALUES_WEBJS=xpA;fpA.TelemetrySdkLanguageValues=(0,Z$.createConstMap)([PpA,TpA,SpA,kpA,_pA,vpA,ypA,gpA,hpA,xpA])});var cpA=R(($$)=>{var VdB=$$&&$$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),IdB=$$&&$$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))VdB(Q,A,B)};Object.defineProperty($$,"__esModule",{value:!0});IdB(dpA(),$$)});var spA=R((lpA)=>{Object.defineProperty(lpA,"__esModule",{value:!0});lpA.HTTP_REQUEST_METHOD_VALUE_POST=lpA.HTTP_REQUEST_METHOD_VALUE_PATCH=lpA.HTTP_REQUEST_METHOD_VALUE_OPTIONS=lpA.HTTP_REQUEST_METHOD_VALUE_HEAD=lpA.HTTP_REQUEST_METHOD_VALUE_GET=lpA.HTTP_REQUEST_METHOD_VALUE_DELETE=lpA.HTTP_REQUEST_METHOD_VALUE_CONNECT=lpA.HTTP_REQUEST_METHOD_VALUE_OTHER=lpA.ATTR_HTTP_REQUEST_METHOD=lpA.ATTR_HTTP_REQUEST_HEADER=lpA.ATTR_EXCEPTION_TYPE=lpA.ATTR_EXCEPTION_STACKTRACE=lpA.ATTR_EXCEPTION_MESSAGE=lpA.ATTR_EXCEPTION_ESCAPED=lpA.ERROR_TYPE_VALUE_OTHER=lpA.ATTR_ERROR_TYPE=lpA.ATTR_CLIENT_PORT=lpA.ATTR_CLIENT_ADDRESS=lpA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS=lpA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE=lpA.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS=lpA.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK=lpA.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED=lpA.ATTR_ASPNETCORE_RATE_LIMITING_POLICY=lpA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED=lpA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED=lpA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED=lpA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED=lpA.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT=lpA.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE=lpA.ATTR_TELEMETRY_SDK_VERSION=lpA.ATTR_TELEMETRY_SDK_NAME=lpA.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS=lpA.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT=lpA.TELEMETRY_SDK_LANGUAGE_VALUE_RUST=lpA.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY=lpA.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON=lpA.TELEMETRY_SDK_LANGUAGE_VALUE_PHP=lpA.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS=lpA.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA=lpA.TELEMETRY_SDK_LANGUAGE_VALUE_GO=lpA.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG=lpA.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET=lpA.TELEMETRY_SDK_LANGUAGE_VALUE_CPP=lpA.ATTR_TELEMETRY_SDK_LANGUAGE=lpA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED=lpA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER=lpA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER=lpA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED=lpA.ATTR_ASPNETCORE_RATE_LIMITING_RESULT=void 0;lpA.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT=lpA.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE=lpA.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN=lpA.ATTR_SIGNALR_CONNECTION_STATUS=lpA.ATTR_SERVICE_VERSION=lpA.ATTR_SERVICE_NAME=lpA.ATTR_SERVER_PORT=lpA.ATTR_SERVER_ADDRESS=lpA.ATTR_OTEL_STATUS_DESCRIPTION=lpA.OTEL_STATUS_CODE_VALUE_OK=lpA.OTEL_STATUS_CODE_VALUE_ERROR=lpA.ATTR_OTEL_STATUS_CODE=lpA.ATTR_OTEL_SCOPE_VERSION=lpA.ATTR_OTEL_SCOPE_NAME=lpA.NETWORK_TYPE_VALUE_IPV6=lpA.NETWORK_TYPE_VALUE_IPV4=lpA.ATTR_NETWORK_TYPE=lpA.NETWORK_TRANSPORT_VALUE_UNIX=lpA.NETWORK_TRANSPORT_VALUE_UDP=lpA.NETWORK_TRANSPORT_VALUE_TCP=lpA.NETWORK_TRANSPORT_VALUE_QUIC=lpA.NETWORK_TRANSPORT_VALUE_PIPE=lpA.ATTR_NETWORK_TRANSPORT=lpA.ATTR_NETWORK_PROTOCOL_VERSION=lpA.ATTR_NETWORK_PROTOCOL_NAME=lpA.ATTR_NETWORK_PEER_PORT=lpA.ATTR_NETWORK_PEER_ADDRESS=lpA.ATTR_NETWORK_LOCAL_PORT=lpA.ATTR_NETWORK_LOCAL_ADDRESS=lpA.JVM_THREAD_STATE_VALUE_WAITING=lpA.JVM_THREAD_STATE_VALUE_TIMED_WAITING=lpA.JVM_THREAD_STATE_VALUE_TERMINATED=lpA.JVM_THREAD_STATE_VALUE_RUNNABLE=lpA.JVM_THREAD_STATE_VALUE_NEW=lpA.JVM_THREAD_STATE_VALUE_BLOCKED=lpA.ATTR_JVM_THREAD_STATE=lpA.ATTR_JVM_THREAD_DAEMON=lpA.JVM_MEMORY_TYPE_VALUE_NON_HEAP=lpA.JVM_MEMORY_TYPE_VALUE_HEAP=lpA.ATTR_JVM_MEMORY_TYPE=lpA.ATTR_JVM_MEMORY_POOL_NAME=lpA.ATTR_JVM_GC_NAME=lpA.ATTR_JVM_GC_ACTION=lpA.ATTR_HTTP_ROUTE=lpA.ATTR_HTTP_RESPONSE_STATUS_CODE=lpA.ATTR_HTTP_RESPONSE_HEADER=lpA.ATTR_HTTP_REQUEST_RESEND_COUNT=lpA.ATTR_HTTP_REQUEST_METHOD_ORIGINAL=lpA.HTTP_REQUEST_METHOD_VALUE_TRACE=lpA.HTTP_REQUEST_METHOD_VALUE_PUT=void 0;lpA.ATTR_USER_AGENT_ORIGINAL=lpA.ATTR_URL_SCHEME=lpA.ATTR_URL_QUERY=lpA.ATTR_URL_PATH=lpA.ATTR_URL_FULL=lpA.ATTR_URL_FRAGMENT=lpA.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS=lpA.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS=lpA.SIGNALR_TRANSPORT_VALUE_LONG_POLLING=lpA.ATTR_SIGNALR_TRANSPORT=void 0;lpA.ATTR_ASPNETCORE_RATE_LIMITING_RESULT="aspnetcore.rate_limiting.result";lpA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED="acquired";lpA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER="endpoint_limiter";lpA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER="global_limiter";lpA.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED="request_canceled";lpA.ATTR_TELEMETRY_SDK_LANGUAGE="telemetry.sdk.language";lpA.TELEMETRY_SDK_LANGUAGE_VALUE_CPP="cpp";lpA.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET="dotnet";lpA.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG="erlang";lpA.TELEMETRY_SDK_LANGUAGE_VALUE_GO="go";lpA.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA="java";lpA.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS="nodejs";lpA.TELEMETRY_SDK_LANGUAGE_VALUE_PHP="php";lpA.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON="python";lpA.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY="ruby";lpA.TELEMETRY_SDK_LANGUAGE_VALUE_RUST="rust";lpA.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT="swift";lpA.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS="webjs";lpA.ATTR_TELEMETRY_SDK_NAME="telemetry.sdk.name";lpA.ATTR_TELEMETRY_SDK_VERSION="telemetry.sdk.version";lpA.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE="aspnetcore.diagnostics.handler.type";lpA.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT="aspnetcore.diagnostics.exception.result";lpA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED="aborted";lpA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED="handled";lpA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED="skipped";lpA.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED="unhandled";lpA.ATTR_ASPNETCORE_RATE_LIMITING_POLICY="aspnetcore.rate_limiting.policy";lpA.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED="aspnetcore.request.is_unhandled";lpA.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK="aspnetcore.routing.is_fallback";lpA.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS="aspnetcore.routing.match_status";lpA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE="failure";lpA.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS="success";lpA.ATTR_CLIENT_ADDRESS="client.address";lpA.ATTR_CLIENT_PORT="client.port";lpA.ATTR_ERROR_TYPE="error.type";lpA.ERROR_TYPE_VALUE_OTHER="_OTHER";lpA.ATTR_EXCEPTION_ESCAPED="exception.escaped";lpA.ATTR_EXCEPTION_MESSAGE="exception.message";lpA.ATTR_EXCEPTION_STACKTRACE="exception.stacktrace";lpA.ATTR_EXCEPTION_TYPE="exception.type";var HdB=(A)=>`http.request.header.${A}`;lpA.ATTR_HTTP_REQUEST_HEADER=HdB;lpA.ATTR_HTTP_REQUEST_METHOD="http.request.method";lpA.HTTP_REQUEST_METHOD_VALUE_OTHER="_OTHER";lpA.HTTP_REQUEST_METHOD_VALUE_CONNECT="CONNECT";lpA.HTTP_REQUEST_METHOD_VALUE_DELETE="DELETE";lpA.HTTP_REQUEST_METHOD_VALUE_GET="GET";lpA.HTTP_REQUEST_METHOD_VALUE_HEAD="HEAD";lpA.HTTP_REQUEST_METHOD_VALUE_OPTIONS="OPTIONS";lpA.HTTP_REQUEST_METHOD_VALUE_PATCH="PATCH";lpA.HTTP_REQUEST_METHOD_VALUE_POST="POST";lpA.HTTP_REQUEST_METHOD_VALUE_PUT="PUT";lpA.HTTP_REQUEST_METHOD_VALUE_TRACE="TRACE";lpA.ATTR_HTTP_REQUEST_METHOD_ORIGINAL="http.request.method_original";lpA.ATTR_HTTP_REQUEST_RESEND_COUNT="http.request.resend_count";var DdB=(A)=>`http.response.header.${A}`;lpA.ATTR_HTTP_RESPONSE_HEADER=DdB;lpA.ATTR_HTTP_RESPONSE_STATUS_CODE="http.response.status_code";lpA.ATTR_HTTP_ROUTE="http.route";lpA.ATTR_JVM_GC_ACTION="jvm.gc.action";lpA.ATTR_JVM_GC_NAME="jvm.gc.name";lpA.ATTR_JVM_MEMORY_POOL_NAME="jvm.memory.pool.name";lpA.ATTR_JVM_MEMORY_TYPE="jvm.memory.type";lpA.JVM_MEMORY_TYPE_VALUE_HEAP="heap";lpA.JVM_MEMORY_TYPE_VALUE_NON_HEAP="non_heap";lpA.ATTR_JVM_THREAD_DAEMON="jvm.thread.daemon";lpA.ATTR_JVM_THREAD_STATE="jvm.thread.state";lpA.JVM_THREAD_STATE_VALUE_BLOCKED="blocked";lpA.JVM_THREAD_STATE_VALUE_NEW="new";lpA.JVM_THREAD_STATE_VALUE_RUNNABLE="runnable";lpA.JVM_THREAD_STATE_VALUE_TERMINATED="terminated";lpA.JVM_THREAD_STATE_VALUE_TIMED_WAITING="timed_waiting";lpA.JVM_THREAD_STATE_VALUE_WAITING="waiting";lpA.ATTR_NETWORK_LOCAL_ADDRESS="network.local.address";lpA.ATTR_NETWORK_LOCAL_PORT="network.local.port";lpA.ATTR_NETWORK_PEER_ADDRESS="network.peer.address";lpA.ATTR_NETWORK_PEER_PORT="network.peer.port";lpA.ATTR_NETWORK_PROTOCOL_NAME="network.protocol.name";lpA.ATTR_NETWORK_PROTOCOL_VERSION="network.protocol.version";lpA.ATTR_NETWORK_TRANSPORT="network.transport";lpA.NETWORK_TRANSPORT_VALUE_PIPE="pipe";lpA.NETWORK_TRANSPORT_VALUE_QUIC="quic";lpA.NETWORK_TRANSPORT_VALUE_TCP="tcp";lpA.NETWORK_TRANSPORT_VALUE_UDP="udp";lpA.NETWORK_TRANSPORT_VALUE_UNIX="unix";lpA.ATTR_NETWORK_TYPE="network.type";lpA.NETWORK_TYPE_VALUE_IPV4="ipv4";lpA.NETWORK_TYPE_VALUE_IPV6="ipv6";lpA.ATTR_OTEL_SCOPE_NAME="otel.scope.name";lpA.ATTR_OTEL_SCOPE_VERSION="otel.scope.version";lpA.ATTR_OTEL_STATUS_CODE="otel.status_code";lpA.OTEL_STATUS_CODE_VALUE_ERROR="ERROR";lpA.OTEL_STATUS_CODE_VALUE_OK="OK";lpA.ATTR_OTEL_STATUS_DESCRIPTION="otel.status_description";lpA.ATTR_SERVER_ADDRESS="server.address";lpA.ATTR_SERVER_PORT="server.port";lpA.ATTR_SERVICE_NAME="service.name";lpA.ATTR_SERVICE_VERSION="service.version";lpA.ATTR_SIGNALR_CONNECTION_STATUS="signalr.connection.status";lpA.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN="app_shutdown";lpA.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE="normal_closure";lpA.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT="timeout";lpA.ATTR_SIGNALR_TRANSPORT="signalr.transport";lpA.SIGNALR_TRANSPORT_VALUE_LONG_POLLING="long_polling";lpA.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS="server_sent_events";lpA.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS="web_sockets";lpA.ATTR_URL_FRAGMENT="url.fragment";lpA.ATTR_URL_FULL="url.full";lpA.ATTR_URL_PATH="url.path";lpA.ATTR_URL_QUERY="url.query";lpA.ATTR_URL_SCHEME="url.scheme";lpA.ATTR_USER_AGENT_ORIGINAL="user_agent.original"});var opA=R((rpA)=>{Object.defineProperty(rpA,"__esModule",{value:!0});rpA.METRIC_SIGNALR_SERVER_CONNECTION_DURATION=rpA.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS=rpA.METRIC_KESTREL_UPGRADED_CONNECTIONS=rpA.METRIC_KESTREL_TLS_HANDSHAKE_DURATION=rpA.METRIC_KESTREL_REJECTED_CONNECTIONS=rpA.METRIC_KESTREL_QUEUED_REQUESTS=rpA.METRIC_KESTREL_QUEUED_CONNECTIONS=rpA.METRIC_KESTREL_CONNECTION_DURATION=rpA.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES=rpA.METRIC_KESTREL_ACTIVE_CONNECTIONS=rpA.METRIC_JVM_THREAD_COUNT=rpA.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC=rpA.METRIC_JVM_MEMORY_USED=rpA.METRIC_JVM_MEMORY_LIMIT=rpA.METRIC_JVM_MEMORY_COMMITTED=rpA.METRIC_JVM_GC_DURATION=rpA.METRIC_JVM_CPU_TIME=rpA.METRIC_JVM_CPU_RECENT_UTILIZATION=rpA.METRIC_JVM_CPU_COUNT=rpA.METRIC_JVM_CLASS_UNLOADED=rpA.METRIC_JVM_CLASS_LOADED=rpA.METRIC_JVM_CLASS_COUNT=rpA.METRIC_HTTP_SERVER_REQUEST_DURATION=rpA.METRIC_HTTP_CLIENT_REQUEST_DURATION=rpA.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS=rpA.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS=rpA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION=rpA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE=rpA.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS=rpA.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES=rpA.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS=void 0;rpA.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS="aspnetcore.diagnostics.exceptions";rpA.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES="aspnetcore.rate_limiting.active_request_leases";rpA.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS="aspnetcore.rate_limiting.queued_requests";rpA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE="aspnetcore.rate_limiting.request.time_in_queue";rpA.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION="aspnetcore.rate_limiting.request_lease.duration";rpA.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS="aspnetcore.rate_limiting.requests";rpA.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS="aspnetcore.routing.match_attempts";rpA.METRIC_HTTP_CLIENT_REQUEST_DURATION="http.client.request.duration";rpA.METRIC_HTTP_SERVER_REQUEST_DURATION="http.server.request.duration";rpA.METRIC_JVM_CLASS_COUNT="jvm.class.count";rpA.METRIC_JVM_CLASS_LOADED="jvm.class.loaded";rpA.METRIC_JVM_CLASS_UNLOADED="jvm.class.unloaded";rpA.METRIC_JVM_CPU_COUNT="jvm.cpu.count";rpA.METRIC_JVM_CPU_RECENT_UTILIZATION="jvm.cpu.recent_utilization";rpA.METRIC_JVM_CPU_TIME="jvm.cpu.time";rpA.METRIC_JVM_GC_DURATION="jvm.gc.duration";rpA.METRIC_JVM_MEMORY_COMMITTED="jvm.memory.committed";rpA.METRIC_JVM_MEMORY_LIMIT="jvm.memory.limit";rpA.METRIC_JVM_MEMORY_USED="jvm.memory.used";rpA.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC="jvm.memory.used_after_last_gc";rpA.METRIC_JVM_THREAD_COUNT="jvm.thread.count";rpA.METRIC_KESTREL_ACTIVE_CONNECTIONS="kestrel.active_connections";rpA.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES="kestrel.active_tls_handshakes";rpA.METRIC_KESTREL_CONNECTION_DURATION="kestrel.connection.duration";rpA.METRIC_KESTREL_QUEUED_CONNECTIONS="kestrel.queued_connections";rpA.METRIC_KESTREL_QUEUED_REQUESTS="kestrel.queued_requests";rpA.METRIC_KESTREL_REJECTED_CONNECTIONS="kestrel.rejected_connections";rpA.METRIC_KESTREL_TLS_HANDSHAKE_DURATION="kestrel.tls_handshake.duration";rpA.METRIC_KESTREL_UPGRADED_CONNECTIONS="kestrel.upgraded_connections";rpA.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS="signalr.server.active_connections";rpA.METRIC_SIGNALR_SERVER_CONNECTION_DURATION="signalr.server.connection.duration"});var sp=R((EX)=>{var slB=EX&&EX.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),AP=EX&&EX.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))slB(Q,A,B)};Object.defineProperty(EX,"__esModule",{value:!0});AP(EcA(),EX);AP(cpA(),EX);AP(spA(),EX);AP(opA(),EX)});var epA=R((tpA)=>{Object.defineProperty(tpA,"__esModule",{value:!0});tpA.AttributeNames=void 0;var rlB;(function(A){A.HTTP_ERROR_NAME="http.error_name",A.HTTP_ERROR_MESSAGE="http.error_message",A.HTTP_STATUS_TEXT="http.status_text"})(rlB=tpA.AttributeNames||(tpA.AttributeNames={}))});var QiA=R((ahY,AiA)=>{var alB=u("util");function ap(A,Q){Error.captureStackTrace(this,ap),this.name=this.constructor.name,this.message=A,this.input=Q}alB.inherits(ap,Error);AiA.exports=ap});var YiA=R((ohY,BiA)=>{function olB(A){return A===34||A===40||A===41||A===44||A===47||A>=58&&A<=64||A>=91&&A<=93||A===123||A===125}function tlB(A){return A===33||A>=35&&A<=39||A===42||A===43||A===45||A===46||A>=48&&A<=57||A>=65&&A<=90||A>=94&&A<=122||A===124||A===126}function elB(A){return A>=32&&A<=126}function ApB(A){return A>=128&&A<=255}BiA.exports={isDelimiter:olB,isTokenChar:tlB,isExtended:ApB,isPrint:elB}});var WiA=R((thY,GiA)=>{var QpB=u("util"),EK=QiA(),QP=YiA(),BpB=QP.isDelimiter,JiA=QP.isTokenChar,CiA=QP.isExtended,YpB=QP.isPrint;function XiA(A){return A.replace(/\\(.)/g,"$1")}function RL(A,Q){return QpB.format("Unexpected character '%s' at index %d",A.charAt(Q),Q)}function JpB(A){var Q=!1,B=!1,Y=!1,J={},C=[],X=-1,G=-1,W,F;for(var Z=0;Z{Object.defineProperty(KiA,"__esModule",{value:!0});KiA.headerCapture=KiA.getIncomingStableRequestMetricAttributesOnResponse=KiA.getIncomingRequestMetricAttributesOnResponse=KiA.getIncomingRequestAttributesOnResponse=KiA.getIncomingRequestMetricAttributes=KiA.getIncomingRequestAttributes=KiA.getRemoteClientAddress=KiA.getOutgoingRequestMetricAttributesOnResponse=KiA.getOutgoingRequestAttributesOnResponse=KiA.setAttributesFromHttpKind=KiA.getOutgoingRequestMetricAttributes=KiA.getOutgoingRequestAttributes=KiA.extractHostnameAndPort=KiA.isValidOptionsType=KiA.getRequestInfo=KiA.isCompressed=KiA.setResponseContentLengthAttribute=KiA.setRequestContentLengthAttribute=KiA.setSpanWithError=KiA.satisfiesPattern=KiA.parseResponseStatus=KiA.getAbsoluteUrl=void 0;var wL=yA(),SA=sp(),FiA=MB(),CpB=u("url"),BP=epA(),XpB=WiA(),GpB=(A,Q,B="http:")=>{let Y=A||{},J=Y.protocol||B,C=(Y.port||"").toString(),X=Y.path||"/",G=Y.host||Y.hostname||Q.host||"localhost";if(G.indexOf(":")===-1&&C&&C!=="80"&&C!=="443")G+=`:${C}`;return`${J}//${G}${X}`};KiA.getAbsoluteUrl=GpB;var WpB=(A,Q)=>{let B=A===wL.SpanKind.CLIENT?400:500;if(Q&&Q>=100&&Q{if(typeof Q==="string")return Q===A;else if(Q instanceof RegExp)return Q.test(A);else if(typeof Q==="function")return Q(A);else throw TypeError("Pattern is in unsupported datatype")};KiA.satisfiesPattern=FpB;var ZpB=(A,Q,B)=>{let Y=Q.message;if((B&2)===2)A.setAttribute(BP.AttributeNames.HTTP_ERROR_NAME,Q.name),A.setAttribute(BP.AttributeNames.HTTP_ERROR_MESSAGE,Y);if((B&1)===1)A.setAttribute(SA.ATTR_ERROR_TYPE,Q.name);A.setStatus({code:wL.SpanStatusCode.ERROR,message:Y}),A.recordException(Q)};KiA.setSpanWithError=ZpB;var $pB=(A,Q)=>{let B=ZiA(A.headers);if(B===null)return;if(KiA.isCompressed(A.headers))Q[SA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH]=B;else Q[SA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED]=B};KiA.setRequestContentLengthAttribute=$pB;var UpB=(A,Q)=>{let B=ZiA(A.headers);if(B===null)return;if(KiA.isCompressed(A.headers))Q[SA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH]=B;else Q[SA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED]=B};KiA.setResponseContentLengthAttribute=UpB;function ZiA(A){let Q=A["content-length"];if(Q===void 0)return null;let B=parseInt(Q,10);if(isNaN(B))return null;return B}var EpB=(A)=>{let Q=A["content-encoding"];return!!Q&&Q!=="identity"};KiA.isCompressed=EpB;function KpB(A){let{hostname:Q,pathname:B,port:Y,username:J,password:C,search:X,protocol:G,hash:W,href:F,origin:Z,host:U}=new URL(A),$={protocol:G,hostname:Q&&Q[0]==="["?Q.slice(1,-1):Q,hash:W,search:X,pathname:B,path:`${B||""}${X||""}`,href:F,origin:Z,host:U};if(Y!=="")$.port=Number(Y);if(J||C)$.auth=`${decodeURIComponent(J)}:${decodeURIComponent(C)}`;return $}var VpB=(A,Q,B)=>{let Y,J,C,X=!1;if(typeof Q==="string"){try{let W=KpB(Q);C=W,Y=W.pathname||"/"}catch(W){X=!0,A.verbose("Unable to parse URL provided to HTTP request, using fallback to determine path. Original error:",W),C={path:Q},Y=C.path||"/"}if(J=`${C.protocol||"http:"}//${C.host}`,B!==void 0)Object.assign(C,B)}else if(Q instanceof CpB.URL){if(C={protocol:Q.protocol,hostname:typeof Q.hostname==="string"&&Q.hostname.startsWith("[")?Q.hostname.slice(1,-1):Q.hostname,path:`${Q.pathname||""}${Q.search||""}`},Q.port!=="")C.port=Number(Q.port);if(Q.username||Q.password)C.auth=`${Q.username}:${Q.password}`;if(Y=Q.pathname,J=Q.origin,B!==void 0)Object.assign(C,B)}else{C=Object.assign({protocol:Q.host?"http:":void 0},Q);let W=C.host||(C.port!=null?`${C.hostname}${C.port}`:C.hostname);if(J=`${C.protocol||"http:"}//${W}`,Y=Q.pathname,!Y&&C.path)try{Y=new URL(C.path,J).pathname||"/"}catch(F){Y="/"}}let G=C.method?C.method.toUpperCase():"GET";return{origin:J,pathname:Y,method:G,optionsParsed:C,invalidUrl:X}};KiA.getRequestInfo=VpB;var IpB=(A)=>{if(!A)return!1;let Q=typeof A;return Q==="string"||Q==="object"&&!Array.isArray(A)};KiA.isValidOptionsType=IpB;var HpB=(A)=>{var Q;if(A.hostname&&A.port)return{hostname:A.hostname,port:A.port};let B=((Q=A.host)===null||Q===void 0?void 0:Q.match(/^([^:/ ]+)(:\d{1,5})?/))||null,Y=A.hostname||(B===null?"localhost":B[1]),J=A.port;if(!J)if(B&&B[2])J=B[2].substring(1);else J=A.protocol==="https:"?"443":"80";return{hostname:Y,port:J}};KiA.extractHostnameAndPort=HpB;var DpB=(A,Q,B)=>{var Y,J;let{hostname:C,port:X}=Q,G=(Y=A.method)!==null&&Y!==void 0?Y:"GET",W=UiA(G),F=A.headers||{},Z=F["user-agent"],U=KiA.getAbsoluteUrl(A,F,`${Q.component}:`),$={[SA.SEMATTRS_HTTP_URL]:U,[SA.SEMATTRS_HTTP_METHOD]:G,[SA.SEMATTRS_HTTP_TARGET]:A.path||"/",[SA.SEMATTRS_NET_PEER_NAME]:C,[SA.SEMATTRS_HTTP_HOST]:(J=F.host)!==null&&J!==void 0?J:`${C}:${X}`},E={[SA.ATTR_HTTP_REQUEST_METHOD]:W,[SA.ATTR_SERVER_ADDRESS]:C,[SA.ATTR_SERVER_PORT]:Number(X),[SA.ATTR_URL_FULL]:U};if(G!==W)E[SA.ATTR_HTTP_REQUEST_METHOD_ORIGINAL]=G;if(Z!==void 0)$[SA.SEMATTRS_HTTP_USER_AGENT]=Z;switch(B){case 1:return Object.assign(E,Q.hookAttributes);case 2:return Object.assign($,Q.hookAttributes)}return Object.assign($,E,Q.hookAttributes)};KiA.getOutgoingRequestAttributes=DpB;var NpB=(A)=>{let Q={};return Q[SA.SEMATTRS_HTTP_METHOD]=A[SA.SEMATTRS_HTTP_METHOD],Q[SA.SEMATTRS_NET_PEER_NAME]=A[SA.SEMATTRS_NET_PEER_NAME],Q};KiA.getOutgoingRequestMetricAttributes=NpB;var LpB=(A,Q)=>{if(A)if(Q[SA.SEMATTRS_HTTP_FLAVOR]=A,A.toUpperCase()!=="QUIC")Q[SA.SEMATTRS_NET_TRANSPORT]=SA.NETTRANSPORTVALUES_IP_TCP;else Q[SA.SEMATTRS_NET_TRANSPORT]=SA.NETTRANSPORTVALUES_IP_UDP};KiA.setAttributesFromHttpKind=LpB;var qpB=(A,Q)=>{let{statusCode:B,statusMessage:Y,httpVersion:J,socket:C}=A,X={},G={};if(B!=null)G[SA.ATTR_HTTP_RESPONSE_STATUS_CODE]=B;if(C){let{remoteAddress:W,remotePort:F}=C;X[SA.SEMATTRS_NET_PEER_IP]=W,X[SA.SEMATTRS_NET_PEER_PORT]=F,G[SA.ATTR_NETWORK_PEER_ADDRESS]=W,G[SA.ATTR_NETWORK_PEER_PORT]=F,G[SA.ATTR_NETWORK_PROTOCOL_VERSION]=A.httpVersion}if(KiA.setResponseContentLengthAttribute(A,X),B)X[SA.SEMATTRS_HTTP_STATUS_CODE]=B,X[BP.AttributeNames.HTTP_STATUS_TEXT]=(Y||"").toUpperCase();switch(KiA.setAttributesFromHttpKind(J,X),Q){case 1:return G;case 2:return X}return Object.assign(X,G)};KiA.getOutgoingRequestAttributesOnResponse=qpB;var MpB=(A)=>{let Q={};return Q[SA.SEMATTRS_NET_PEER_PORT]=A[SA.SEMATTRS_NET_PEER_PORT],Q[SA.SEMATTRS_HTTP_STATUS_CODE]=A[SA.SEMATTRS_HTTP_STATUS_CODE],Q[SA.SEMATTRS_HTTP_FLAVOR]=A[SA.SEMATTRS_HTTP_FLAVOR],Q};KiA.getOutgoingRequestMetricAttributesOnResponse=MpB;function KW(A,Q){let B=A.split(":");if(B.length===1){if(Q==="http")return{host:B[0],port:"80"};if(Q==="https")return{host:B[0],port:"443"};return{host:B[0]}}if(B.length===2)return{host:B[0],port:B[1]};if(B[0].startsWith("[")){if(B[B.length-1].endsWith("]")){if(Q==="http")return{host:A,port:"80"};if(Q==="https")return{host:A,port:"443"}}else if(B[B.length-2].endsWith("]"))return{host:B.slice(0,-1).join(":"),port:B[B.length-1]}}return{host:A}}function zpB(A,Q){let B=A.headers.forwarded;if(B){for(let C of EiA(B))if(C.host)return KW(C.host,C.proto)}let Y=A.headers["x-forwarded-host"];if(typeof Y==="string"){if(typeof A.headers["x-forwarded-proto"]==="string")return KW(Y,A.headers["x-forwarded-proto"]);if(Array.isArray(A.headers["x-forwarded-proto"]))return KW(Y,A.headers["x-forwarded-proto"][0]);return KW(Y)}else if(Array.isArray(Y)&&typeof Y[0]==="string"&&Y[0].length>0){if(typeof A.headers["x-forwarded-proto"]==="string")return KW(Y[0],A.headers["x-forwarded-proto"]);if(Array.isArray(A.headers["x-forwarded-proto"]))return KW(Y[0],A.headers["x-forwarded-proto"][0]);return KW(Y[0])}let J=A.headers.host;if(typeof J==="string"&&J.length>0)return KW(J,Q);return null}function $iA(A){let Q=A.headers.forwarded;if(Q){for(let J of EiA(Q))if(J.for)return J.for}let B=A.headers["x-forwarded-for"];if(typeof B==="string")return B;else if(Array.isArray(B))return B[0];let Y=A.socket.remoteAddress;if(Y)return Y;return null}KiA.getRemoteClientAddress=$iA;function RpB(A,Q,B){var Y,J;try{if(Q.headers.host)return new URL((Y=Q.url)!==null&&Y!==void 0?Y:"/",`${A}://${Q.headers.host}`);else{let C=new URL((J=Q.url)!==null&&J!==void 0?J:"/",`${A}://localhost`);return{pathname:C.pathname,search:C.search,toString:function(){return C.pathname+C.search}}}}catch(C){return B.verbose("Unable to get URL from request",C),{}}}var wpB=(A,Q,B)=>{let Y=A.headers,J=Y["user-agent"],C=Y["x-forwarded-for"],X=A.httpVersion,G=Y.host,W=(G===null||G===void 0?void 0:G.replace(/^(.*)(:[0-9]{1,5})/,"$1"))||"localhost",F=A.method,Z=UiA(F),U=zpB(A,Q.component),$=Q.serverName,E=$iA(A),K={[SA.ATTR_HTTP_REQUEST_METHOD]:Z,[SA.ATTR_URL_SCHEME]:Q.component,[SA.ATTR_SERVER_ADDRESS]:U===null||U===void 0?void 0:U.host,[SA.ATTR_NETWORK_PEER_ADDRESS]:A.socket.remoteAddress,[SA.ATTR_NETWORK_PEER_PORT]:A.socket.remotePort,[SA.ATTR_NETWORK_PROTOCOL_VERSION]:A.httpVersion,[SA.ATTR_USER_AGENT_ORIGINAL]:J},I=RpB(Q.component,A,B);if((I===null||I===void 0?void 0:I.pathname)!=null)K[SA.ATTR_URL_PATH]=I.pathname;if(E!=null)K[SA.ATTR_CLIENT_ADDRESS]=E;if((U===null||U===void 0?void 0:U.port)!=null)K[SA.ATTR_SERVER_PORT]=Number(U.port);if(F!==Z)K[SA.ATTR_HTTP_REQUEST_METHOD_ORIGINAL]=F;let V={[SA.SEMATTRS_HTTP_URL]:I.toString(),[SA.SEMATTRS_HTTP_HOST]:G,[SA.SEMATTRS_NET_HOST_NAME]:W,[SA.SEMATTRS_HTTP_METHOD]:F,[SA.SEMATTRS_HTTP_SCHEME]:Q.component};if(typeof C==="string")V[SA.SEMATTRS_HTTP_CLIENT_IP]=C.split(",")[0];if(typeof $==="string")V[SA.SEMATTRS_HTTP_SERVER_NAME]=$;if(I===null||I===void 0?void 0:I.pathname)V[SA.SEMATTRS_HTTP_TARGET]=(I===null||I===void 0?void 0:I.pathname)+(I===null||I===void 0?void 0:I.search)||"/";if(J!==void 0)V[SA.SEMATTRS_HTTP_USER_AGENT]=J;switch(KiA.setRequestContentLengthAttribute(A,V),KiA.setAttributesFromHttpKind(X,V),Q.semconvStability){case 1:return Object.assign(K,Q.hookAttributes);case 2:return Object.assign(V,Q.hookAttributes)}return Object.assign(V,K,Q.hookAttributes)};KiA.getIncomingRequestAttributes=wpB;var jpB=(A)=>{let Q={};return Q[SA.SEMATTRS_HTTP_SCHEME]=A[SA.SEMATTRS_HTTP_SCHEME],Q[SA.SEMATTRS_HTTP_METHOD]=A[SA.SEMATTRS_HTTP_METHOD],Q[SA.SEMATTRS_NET_HOST_NAME]=A[SA.SEMATTRS_NET_HOST_NAME],Q[SA.SEMATTRS_HTTP_FLAVOR]=A[SA.SEMATTRS_HTTP_FLAVOR],Q};KiA.getIncomingRequestMetricAttributes=jpB;var OpB=(A,Q,B)=>{let{socket:Y}=A,{statusCode:J,statusMessage:C}=Q,X={[SA.ATTR_HTTP_RESPONSE_STATUS_CODE]:J},G=(0,FiA.getRPCMetadata)(wL.context.active()),W={};if(Y){let{localAddress:F,localPort:Z,remoteAddress:U,remotePort:$}=Y;W[SA.SEMATTRS_NET_HOST_IP]=F,W[SA.SEMATTRS_NET_HOST_PORT]=Z,W[SA.SEMATTRS_NET_PEER_IP]=U,W[SA.SEMATTRS_NET_PEER_PORT]=$}if(W[SA.SEMATTRS_HTTP_STATUS_CODE]=J,W[BP.AttributeNames.HTTP_STATUS_TEXT]=(C||"").toUpperCase(),(G===null||G===void 0?void 0:G.type)===FiA.RPCType.HTTP&&G.route!==void 0)W[SA.SEMATTRS_HTTP_ROUTE]=G.route,X[SA.ATTR_HTTP_ROUTE]=G.route;switch(B){case 1:return X;case 2:return W}return Object.assign(W,X)};KiA.getIncomingRequestAttributesOnResponse=OpB;var PpB=(A)=>{let Q={};if(Q[SA.SEMATTRS_HTTP_STATUS_CODE]=A[SA.SEMATTRS_HTTP_STATUS_CODE],Q[SA.SEMATTRS_NET_HOST_PORT]=A[SA.SEMATTRS_NET_HOST_PORT],A[SA.SEMATTRS_HTTP_ROUTE]!==void 0)Q[SA.SEMATTRS_HTTP_ROUTE]=A[SA.SEMATTRS_HTTP_ROUTE];return Q};KiA.getIncomingRequestMetricAttributesOnResponse=PpB;var TpB=(A)=>{let Q={};if(A[SA.ATTR_HTTP_ROUTE]!==void 0)Q[SA.ATTR_HTTP_ROUTE]=A[SA.SEMATTRS_HTTP_ROUTE];if(A[SA.ATTR_HTTP_RESPONSE_STATUS_CODE])Q[SA.ATTR_HTTP_RESPONSE_STATUS_CODE]=A[SA.ATTR_HTTP_RESPONSE_STATUS_CODE];return Q};KiA.getIncomingStableRequestMetricAttributesOnResponse=TpB;function SpB(A,Q){let B=new Map;for(let Y=0,J=Q.length;Y{for(let C of B.keys()){let X=J(C);if(X===void 0)continue;let G=B.get(C),W=`http.${A}.header.${G}`;if(typeof X==="string")Y.setAttribute(W,[X]);else if(Array.isArray(X))Y.setAttribute(W,X);else Y.setAttribute(W,[X])}}}KiA.headerCapture=SpB;var kpB=new Set(["GET","HEAD","POST","PUT","DELETE","CONNECT","OPTIONS","TRACE","PATCH"]);function UiA(A){if(A==null)return"GET";let Q=A.toUpperCase();if(kpB.has(Q))return Q;return"_OTHER"}function EiA(A){try{return XpB(A)}catch(Q){return[]}}});var RiA=R((MiA)=>{Object.defineProperty(MiA,"__esModule",{value:!0});MiA.HttpInstrumentation=void 0;var _Q=yA(),KK=MB(),LiA=ovA(),spB=u("url"),rpB=AyA(),l5=NB(),ep=MB(),Ai=u("events"),n0=sp(),b0=NiA();class qiA extends l5.InstrumentationBase{constructor(A={}){super("@opentelemetry/instrumentation-http",rpB.VERSION,A);this._spanNotEnded=new WeakSet,this._semconvStability=2,this._headerCapture=this._createHeaderCapture();for(let Q of(0,ep.getEnv)().OTEL_SEMCONV_STABILITY_OPT_IN)if(Q.toLowerCase()==="http/dup"){this._semconvStability=3;break}else if(Q.toLowerCase()==="http")this._semconvStability=1}_updateMetricInstruments(){this._oldHttpServerDurationHistogram=this.meter.createHistogram("http.server.duration",{description:"Measures the duration of inbound HTTP requests.",unit:"ms",valueType:_Q.ValueType.DOUBLE}),this._oldHttpClientDurationHistogram=this.meter.createHistogram("http.client.duration",{description:"Measures the duration of outbound HTTP requests.",unit:"ms",valueType:_Q.ValueType.DOUBLE}),this._stableHttpServerDurationHistogram=this.meter.createHistogram(n0.METRIC_HTTP_SERVER_REQUEST_DURATION,{description:"Duration of HTTP server requests.",unit:"s",valueType:_Q.ValueType.DOUBLE,advice:{explicitBucketBoundaries:[0.005,0.01,0.025,0.05,0.075,0.1,0.25,0.5,0.75,1,2.5,5,7.5,10]}}),this._stableHttpClientDurationHistogram=this.meter.createHistogram(n0.METRIC_HTTP_CLIENT_REQUEST_DURATION,{description:"Duration of HTTP client requests.",unit:"s",valueType:_Q.ValueType.DOUBLE,advice:{explicitBucketBoundaries:[0.005,0.01,0.025,0.05,0.075,0.1,0.25,0.5,0.75,1,2.5,5,7.5,10]}})}_recordServerDuration(A,Q,B){if((this._semconvStability&2)===2)this._oldHttpServerDurationHistogram.record(A,Q);if((this._semconvStability&1)===1)this._stableHttpServerDurationHistogram.record(A/1000,B)}_recordClientDuration(A,Q,B){if((this._semconvStability&2)===2)this._oldHttpClientDurationHistogram.record(A,Q);if((this._semconvStability&1)===1)this._stableHttpClientDurationHistogram.record(A/1000,B)}setConfig(A={}){super.setConfig(A),this._headerCapture=this._createHeaderCapture()}init(){return[this._getHttpsInstrumentation(),this._getHttpInstrumentation()]}_getHttpInstrumentation(){return new l5.InstrumentationNodeModuleDefinition("http",["*"],(A)=>{let Q=A[Symbol.toStringTag]==="Module";if(!this.getConfig().disableOutgoingRequestInstrumentation){let B=this._wrap(A,"request",this._getPatchOutgoingRequestFunction("http")),Y=this._wrap(A,"get",this._getPatchOutgoingGetFunction(B));if(Q)A.default.request=B,A.default.get=Y}if(!this.getConfig().disableIncomingRequestInstrumentation)this._wrap(A.Server.prototype,"emit",this._getPatchIncomingRequestFunction("http"));return A},(A)=>{if(A===void 0)return;if(!this.getConfig().disableOutgoingRequestInstrumentation)this._unwrap(A,"request"),this._unwrap(A,"get");if(!this.getConfig().disableIncomingRequestInstrumentation)this._unwrap(A.Server.prototype,"emit")})}_getHttpsInstrumentation(){return new l5.InstrumentationNodeModuleDefinition("https",["*"],(A)=>{let Q=A[Symbol.toStringTag]==="Module";if(!this.getConfig().disableOutgoingRequestInstrumentation){let B=this._wrap(A,"request",this._getPatchHttpsOutgoingRequestFunction("https")),Y=this._wrap(A,"get",this._getPatchHttpsOutgoingGetFunction(B));if(Q)A.default.request=B,A.default.get=Y}if(!this.getConfig().disableIncomingRequestInstrumentation)this._wrap(A.Server.prototype,"emit",this._getPatchIncomingRequestFunction("https"));return A},(A)=>{if(A===void 0)return;if(!this.getConfig().disableOutgoingRequestInstrumentation)this._unwrap(A,"request"),this._unwrap(A,"get");if(!this.getConfig().disableIncomingRequestInstrumentation)this._unwrap(A.Server.prototype,"emit")})}_getPatchIncomingRequestFunction(A){return(Q)=>{return this._incomingRequestFunction(A,Q)}}_getPatchOutgoingRequestFunction(A){return(Q)=>{return this._outgoingRequestFunction(A,Q)}}_getPatchOutgoingGetFunction(A){return(Q)=>{return function(Y,...J){let C=A(Y,...J);return C.end(),C}}}_getPatchHttpsOutgoingRequestFunction(A){return(Q)=>{let B=this;return function(J,...C){var X;if(A==="https"&&typeof J==="object"&&((X=J===null||J===void 0?void 0:J.constructor)===null||X===void 0?void 0:X.name)!=="URL")J=Object.assign({},J),B._setDefaultOptions(J);return B._getPatchOutgoingRequestFunction(A)(Q)(J,...C)}}}_setDefaultOptions(A){A.protocol=A.protocol||"https:",A.port=A.port||443}_getPatchHttpsOutgoingGetFunction(A){return(Q)=>{let B=this;return function(J,...C){return B._getPatchOutgoingGetFunction(A)(Q)(J,...C)}}}_traceClientRequest(A,Q,B,Y,J){if(this.getConfig().requestHook)this._callRequestHook(Q,A);let C=!1;return A.prependListener("response",(X)=>{if(this._diag.debug("outgoingRequest on response()"),A.listenerCount("response")<=1)X.resume();let G=(0,b0.getOutgoingRequestAttributesOnResponse)(X,this._semconvStability);if(Q.setAttributes(G),Y=Object.assign(Y,(0,b0.getOutgoingRequestMetricAttributesOnResponse)(G)),this.getConfig().responseHook)this._callResponseHook(Q,X);this._headerCapture.client.captureRequestHeaders(Q,(F)=>A.getHeader(F)),this._headerCapture.client.captureResponseHeaders(Q,(F)=>X.headers[F]),_Q.context.bind(_Q.context.active(),X);let W=()=>{if(this._diag.debug("outgoingRequest on end()"),C)return;C=!0;let F;if(X.aborted&&!X.complete)F={code:_Q.SpanStatusCode.ERROR};else F={code:(0,b0.parseResponseStatus)(_Q.SpanKind.CLIENT,X.statusCode)};if(Q.setStatus(F),this.getConfig().applyCustomAttributesOnSpan)(0,l5.safeExecuteInTheMiddle)(()=>this.getConfig().applyCustomAttributesOnSpan(Q,A,X),()=>{},!0);this._closeHttpSpan(Q,_Q.SpanKind.CLIENT,B,Y,J)};if(X.on("end",W),LiA.lt(process.version,"16.0.0"))X.on("close",W);X.on(Ai.errorMonitor,(F)=>{if(this._diag.debug("outgoingRequest on error()",F),C)return;C=!0,(0,b0.setSpanWithError)(Q,F,this._semconvStability),Q.setStatus({code:_Q.SpanStatusCode.ERROR,message:F.message}),this._closeHttpSpan(Q,_Q.SpanKind.CLIENT,B,Y,J)})}),A.on("close",()=>{if(this._diag.debug("outgoingRequest on request close()"),A.aborted||C)return;C=!0,this._closeHttpSpan(Q,_Q.SpanKind.CLIENT,B,Y,J)}),A.on(Ai.errorMonitor,(X)=>{if(this._diag.debug("outgoingRequest on request error()",X),C)return;C=!0,(0,b0.setSpanWithError)(Q,X,this._semconvStability),this._closeHttpSpan(Q,_Q.SpanKind.CLIENT,B,Y,J)}),this._diag.debug("http.ClientRequest return request"),A}_incomingRequestFunction(A,Q){let B=this;return function(J,...C){if(J!=="request")return Q.apply(this,[J,...C]);let X=C[0],G=C[1],W=X.method||"GET";if(B._diag.debug(`${A} instrumentation incomingRequest`),(0,l5.safeExecuteInTheMiddle)(()=>{var D,L;return(L=(D=B.getConfig()).ignoreIncomingRequestHook)===null||L===void 0?void 0:L.call(D,X)},(D)=>{if(D!=null)B._diag.error("caught ignoreIncomingRequestHook error: ",D)},!0))return _Q.context.with((0,KK.suppressTracing)(_Q.context.active()),()=>{return _Q.context.bind(_Q.context.active(),X),_Q.context.bind(_Q.context.active(),G),Q.apply(this,[J,...C])});let F=X.headers,Z=(0,b0.getIncomingRequestAttributes)(X,{component:A,serverName:B.getConfig().serverName,hookAttributes:B._callStartSpanHook(X,B.getConfig().startIncomingSpanHook),semconvStability:B._semconvStability},B._diag),U={kind:_Q.SpanKind.SERVER,attributes:Z},$=(0,KK.hrTime)(),E=(0,b0.getIncomingRequestMetricAttributes)(Z),K={[n0.ATTR_HTTP_REQUEST_METHOD]:Z[n0.ATTR_HTTP_REQUEST_METHOD],[n0.ATTR_URL_SCHEME]:Z[n0.ATTR_URL_SCHEME]};if(Z[n0.ATTR_NETWORK_PROTOCOL_VERSION])K[n0.ATTR_NETWORK_PROTOCOL_VERSION]=Z[n0.ATTR_NETWORK_PROTOCOL_VERSION];let I=_Q.propagation.extract(_Q.ROOT_CONTEXT,F),V=B._startHttpSpan(W,U,I),H={type:ep.RPCType.HTTP,span:V};return _Q.context.with((0,ep.setRPCMetadata)(_Q.trace.setSpan(I,V),H),()=>{if(_Q.context.bind(_Q.context.active(),X),_Q.context.bind(_Q.context.active(),G),B.getConfig().requestHook)B._callRequestHook(V,X);if(B.getConfig().responseHook)B._callResponseHook(V,G);B._headerCapture.server.captureRequestHeaders(V,(L)=>X.headers[L]);let D=!1;return G.on("close",()=>{if(D)return;B._onServerResponseFinish(X,G,V,E,K,$)}),G.on(Ai.errorMonitor,(L)=>{D=!0,B._onServerResponseError(V,E,K,$,L)}),(0,l5.safeExecuteInTheMiddle)(()=>Q.apply(this,[J,...C]),(L)=>{if(L)throw(0,b0.setSpanWithError)(V,L,B._semconvStability),B._closeHttpSpan(V,_Q.SpanKind.SERVER,$,E,K),L})})}}_outgoingRequestFunction(A,Q){let B=this;return function(J,...C){if(!(0,b0.isValidOptionsType)(J))return Q.apply(this,[J,...C]);let X=typeof C[0]==="object"&&(typeof J==="string"||J instanceof spB.URL)?C.shift():void 0,{method:G,invalidUrl:W,optionsParsed:F}=(0,b0.getRequestInfo)(B._diag,J,X);if(A==="http"&&LiA.lt(process.version,"9.0.0")&&F.protocol==="https:")return Q.apply(this,[F,...C]);if((0,l5.safeExecuteInTheMiddle)(()=>{var z,M;return(M=(z=B.getConfig()).ignoreOutgoingRequestHook)===null||M===void 0?void 0:M.call(z,F)},(z)=>{if(z!=null)B._diag.error("caught ignoreOutgoingRequestHook error: ",z)},!0))return Q.apply(this,[F,...C]);let{hostname:Z,port:U}=(0,b0.extractHostnameAndPort)(F),$=(0,b0.getOutgoingRequestAttributes)(F,{component:A,port:U,hostname:Z,hookAttributes:B._callStartSpanHook(F,B.getConfig().startOutgoingSpanHook)},B._semconvStability),E=(0,KK.hrTime)(),K=(0,b0.getOutgoingRequestMetricAttributes)($),I={[n0.ATTR_HTTP_REQUEST_METHOD]:$[n0.ATTR_HTTP_REQUEST_METHOD],[n0.ATTR_SERVER_ADDRESS]:$[n0.ATTR_SERVER_ADDRESS],[n0.ATTR_SERVER_PORT]:$[n0.ATTR_SERVER_PORT]};if($[n0.ATTR_HTTP_RESPONSE_STATUS_CODE])I[n0.ATTR_HTTP_RESPONSE_STATUS_CODE]=$[n0.ATTR_HTTP_RESPONSE_STATUS_CODE];if($[n0.ATTR_NETWORK_PROTOCOL_VERSION])I[n0.ATTR_NETWORK_PROTOCOL_VERSION]=$[n0.ATTR_NETWORK_PROTOCOL_VERSION];let V={kind:_Q.SpanKind.CLIENT,attributes:$},H=B._startHttpSpan(G,V),D=_Q.context.active(),L=_Q.trace.setSpan(D,H);if(!F.headers)F.headers={};else F.headers=Object.assign({},F.headers);return _Q.propagation.inject(L,F.headers),_Q.context.with(L,()=>{let z=C[C.length-1];if(typeof z==="function")C[C.length-1]=_Q.context.bind(D,z);let M=(0,l5.safeExecuteInTheMiddle)(()=>{if(W)return Q.apply(this,[J,...C]);else return Q.apply(this,[F,...C])},(N)=>{if(N)throw(0,b0.setSpanWithError)(H,N,B._semconvStability),B._closeHttpSpan(H,_Q.SpanKind.CLIENT,E,K,I),N});return B._diag.debug(`${A} instrumentation outgoingRequest`),_Q.context.bind(D,M),B._traceClientRequest(M,H,E,K,I)})}}_onServerResponseFinish(A,Q,B,Y,J,C){let X=(0,b0.getIncomingRequestAttributesOnResponse)(A,Q,this._semconvStability);Y=Object.assign(Y,(0,b0.getIncomingRequestMetricAttributesOnResponse)(X)),J=Object.assign(J,(0,b0.getIncomingStableRequestMetricAttributesOnResponse)(X)),this._headerCapture.server.captureResponseHeaders(B,(W)=>Q.getHeader(W)),B.setAttributes(X).setStatus({code:(0,b0.parseResponseStatus)(_Q.SpanKind.SERVER,Q.statusCode)});let G=X[n0.SEMATTRS_HTTP_ROUTE];if(G)B.updateName(`${A.method||"GET"} ${G}`);if(this.getConfig().applyCustomAttributesOnSpan)(0,l5.safeExecuteInTheMiddle)(()=>this.getConfig().applyCustomAttributesOnSpan(B,A,Q),()=>{},!0);this._closeHttpSpan(B,_Q.SpanKind.SERVER,C,Y,J)}_onServerResponseError(A,Q,B,Y,J){(0,b0.setSpanWithError)(A,J,this._semconvStability),this._closeHttpSpan(A,_Q.SpanKind.SERVER,Y,Q,B)}_startHttpSpan(A,Q,B=_Q.context.active()){let Y=Q.kind===_Q.SpanKind.CLIENT?this.getConfig().requireParentforOutgoingSpans:this.getConfig().requireParentforIncomingSpans,J,C=_Q.trace.getSpan(B);if(Y===!0&&C===void 0)J=_Q.trace.wrapSpanContext(_Q.INVALID_SPAN_CONTEXT);else if(Y===!0&&(C===null||C===void 0?void 0:C.spanContext().isRemote))J=C;else J=this.tracer.startSpan(A,Q,B);return this._spanNotEnded.add(J),J}_closeHttpSpan(A,Q,B,Y,J){if(!this._spanNotEnded.has(A))return;A.end(),this._spanNotEnded.delete(A);let C=(0,KK.hrTimeToMilliseconds)((0,KK.hrTimeDuration)(B,(0,KK.hrTime)()));if(Q===_Q.SpanKind.SERVER)this._recordServerDuration(C,Y,J);else if(Q===_Q.SpanKind.CLIENT)this._recordClientDuration(C,Y,J)}_callResponseHook(A,Q){(0,l5.safeExecuteInTheMiddle)(()=>this.getConfig().responseHook(A,Q),()=>{},!0)}_callRequestHook(A,Q){(0,l5.safeExecuteInTheMiddle)(()=>this.getConfig().requestHook(A,Q),()=>{},!0)}_callStartSpanHook(A,Q){if(typeof Q==="function")return(0,l5.safeExecuteInTheMiddle)(()=>Q(A),()=>{},!0)}_createHeaderCapture(){var A,Q,B,Y,J,C,X,G,W,F,Z,U;let $=this.getConfig();return{client:{captureRequestHeaders:(0,b0.headerCapture)("request",(B=(Q=(A=$.headersToSpanAttributes)===null||A===void 0?void 0:A.client)===null||Q===void 0?void 0:Q.requestHeaders)!==null&&B!==void 0?B:[]),captureResponseHeaders:(0,b0.headerCapture)("response",(C=(J=(Y=$.headersToSpanAttributes)===null||Y===void 0?void 0:Y.client)===null||J===void 0?void 0:J.responseHeaders)!==null&&C!==void 0?C:[])},server:{captureRequestHeaders:(0,b0.headerCapture)("request",(W=(G=(X=$.headersToSpanAttributes)===null||X===void 0?void 0:X.server)===null||G===void 0?void 0:G.requestHeaders)!==null&&W!==void 0?W:[]),captureResponseHeaders:(0,b0.headerCapture)("response",(U=(Z=(F=$.headersToSpanAttributes)===null||F===void 0?void 0:F.server)===null||Z===void 0?void 0:Z.responseHeaders)!==null&&U!==void 0?U:[])}}}}MiA.HttpInstrumentation=qiA});var wiA=R((Qi)=>{Object.defineProperty(Qi,"__esModule",{value:!0});Qi.HttpInstrumentation=void 0;var apB=RiA();Object.defineProperty(Qi,"HttpInstrumentation",{enumerable:!0,get:function(){return apB.HttpInstrumentation}})});var Yi=R((jiA)=>{Object.defineProperty(jiA,"__esModule",{value:!0});jiA.createConstMap=void 0;function QiB(A){let Q={},B=A.length;for(let Y=0;Y{Object.defineProperty(HoA,"__esModule",{value:!0});HoA.SEMATTRS_NET_HOST_CARRIER_ICC=HoA.SEMATTRS_NET_HOST_CARRIER_MNC=HoA.SEMATTRS_NET_HOST_CARRIER_MCC=HoA.SEMATTRS_NET_HOST_CARRIER_NAME=HoA.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=HoA.SEMATTRS_NET_HOST_CONNECTION_TYPE=HoA.SEMATTRS_NET_HOST_NAME=HoA.SEMATTRS_NET_HOST_PORT=HoA.SEMATTRS_NET_HOST_IP=HoA.SEMATTRS_NET_PEER_NAME=HoA.SEMATTRS_NET_PEER_PORT=HoA.SEMATTRS_NET_PEER_IP=HoA.SEMATTRS_NET_TRANSPORT=HoA.SEMATTRS_FAAS_INVOKED_REGION=HoA.SEMATTRS_FAAS_INVOKED_PROVIDER=HoA.SEMATTRS_FAAS_INVOKED_NAME=HoA.SEMATTRS_FAAS_COLDSTART=HoA.SEMATTRS_FAAS_CRON=HoA.SEMATTRS_FAAS_TIME=HoA.SEMATTRS_FAAS_DOCUMENT_NAME=HoA.SEMATTRS_FAAS_DOCUMENT_TIME=HoA.SEMATTRS_FAAS_DOCUMENT_OPERATION=HoA.SEMATTRS_FAAS_DOCUMENT_COLLECTION=HoA.SEMATTRS_FAAS_EXECUTION=HoA.SEMATTRS_FAAS_TRIGGER=HoA.SEMATTRS_EXCEPTION_ESCAPED=HoA.SEMATTRS_EXCEPTION_STACKTRACE=HoA.SEMATTRS_EXCEPTION_MESSAGE=HoA.SEMATTRS_EXCEPTION_TYPE=HoA.SEMATTRS_DB_SQL_TABLE=HoA.SEMATTRS_DB_MONGODB_COLLECTION=HoA.SEMATTRS_DB_REDIS_DATABASE_INDEX=HoA.SEMATTRS_DB_HBASE_NAMESPACE=HoA.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=HoA.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=HoA.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=HoA.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=HoA.SEMATTRS_DB_CASSANDRA_TABLE=HoA.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=HoA.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=HoA.SEMATTRS_DB_CASSANDRA_KEYSPACE=HoA.SEMATTRS_DB_MSSQL_INSTANCE_NAME=HoA.SEMATTRS_DB_OPERATION=HoA.SEMATTRS_DB_STATEMENT=HoA.SEMATTRS_DB_NAME=HoA.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=HoA.SEMATTRS_DB_USER=HoA.SEMATTRS_DB_CONNECTION_STRING=HoA.SEMATTRS_DB_SYSTEM=HoA.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=void 0;HoA.SEMATTRS_MESSAGING_DESTINATION_KIND=HoA.SEMATTRS_MESSAGING_DESTINATION=HoA.SEMATTRS_MESSAGING_SYSTEM=HoA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=HoA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=HoA.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=HoA.SEMATTRS_AWS_DYNAMODB_COUNT=HoA.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=HoA.SEMATTRS_AWS_DYNAMODB_SEGMENT=HoA.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=HoA.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=HoA.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=HoA.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=HoA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=HoA.SEMATTRS_AWS_DYNAMODB_SELECT=HoA.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=HoA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=HoA.SEMATTRS_AWS_DYNAMODB_LIMIT=HoA.SEMATTRS_AWS_DYNAMODB_PROJECTION=HoA.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=HoA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=HoA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=HoA.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=HoA.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=HoA.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=HoA.SEMATTRS_HTTP_CLIENT_IP=HoA.SEMATTRS_HTTP_ROUTE=HoA.SEMATTRS_HTTP_SERVER_NAME=HoA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=HoA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=HoA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=HoA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=HoA.SEMATTRS_HTTP_USER_AGENT=HoA.SEMATTRS_HTTP_FLAVOR=HoA.SEMATTRS_HTTP_STATUS_CODE=HoA.SEMATTRS_HTTP_SCHEME=HoA.SEMATTRS_HTTP_HOST=HoA.SEMATTRS_HTTP_TARGET=HoA.SEMATTRS_HTTP_URL=HoA.SEMATTRS_HTTP_METHOD=HoA.SEMATTRS_CODE_LINENO=HoA.SEMATTRS_CODE_FILEPATH=HoA.SEMATTRS_CODE_NAMESPACE=HoA.SEMATTRS_CODE_FUNCTION=HoA.SEMATTRS_THREAD_NAME=HoA.SEMATTRS_THREAD_ID=HoA.SEMATTRS_ENDUSER_SCOPE=HoA.SEMATTRS_ENDUSER_ROLE=HoA.SEMATTRS_ENDUSER_ID=HoA.SEMATTRS_PEER_SERVICE=void 0;HoA.DBSYSTEMVALUES_FILEMAKER=HoA.DBSYSTEMVALUES_DERBY=HoA.DBSYSTEMVALUES_FIREBIRD=HoA.DBSYSTEMVALUES_ADABAS=HoA.DBSYSTEMVALUES_CACHE=HoA.DBSYSTEMVALUES_EDB=HoA.DBSYSTEMVALUES_FIRSTSQL=HoA.DBSYSTEMVALUES_INGRES=HoA.DBSYSTEMVALUES_HANADB=HoA.DBSYSTEMVALUES_MAXDB=HoA.DBSYSTEMVALUES_PROGRESS=HoA.DBSYSTEMVALUES_HSQLDB=HoA.DBSYSTEMVALUES_CLOUDSCAPE=HoA.DBSYSTEMVALUES_HIVE=HoA.DBSYSTEMVALUES_REDSHIFT=HoA.DBSYSTEMVALUES_POSTGRESQL=HoA.DBSYSTEMVALUES_DB2=HoA.DBSYSTEMVALUES_ORACLE=HoA.DBSYSTEMVALUES_MYSQL=HoA.DBSYSTEMVALUES_MSSQL=HoA.DBSYSTEMVALUES_OTHER_SQL=HoA.SemanticAttributes=HoA.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=HoA.SEMATTRS_MESSAGE_COMPRESSED_SIZE=HoA.SEMATTRS_MESSAGE_ID=HoA.SEMATTRS_MESSAGE_TYPE=HoA.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=HoA.SEMATTRS_RPC_JSONRPC_ERROR_CODE=HoA.SEMATTRS_RPC_JSONRPC_REQUEST_ID=HoA.SEMATTRS_RPC_JSONRPC_VERSION=HoA.SEMATTRS_RPC_GRPC_STATUS_CODE=HoA.SEMATTRS_RPC_METHOD=HoA.SEMATTRS_RPC_SERVICE=HoA.SEMATTRS_RPC_SYSTEM=HoA.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=HoA.SEMATTRS_MESSAGING_KAFKA_PARTITION=HoA.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=HoA.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=HoA.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=HoA.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=HoA.SEMATTRS_MESSAGING_CONSUMER_ID=HoA.SEMATTRS_MESSAGING_OPERATION=HoA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=HoA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=HoA.SEMATTRS_MESSAGING_CONVERSATION_ID=HoA.SEMATTRS_MESSAGING_MESSAGE_ID=HoA.SEMATTRS_MESSAGING_URL=HoA.SEMATTRS_MESSAGING_PROTOCOL_VERSION=HoA.SEMATTRS_MESSAGING_PROTOCOL=HoA.SEMATTRS_MESSAGING_TEMP_DESTINATION=void 0;HoA.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=HoA.FaasDocumentOperationValues=HoA.FAASDOCUMENTOPERATIONVALUES_DELETE=HoA.FAASDOCUMENTOPERATIONVALUES_EDIT=HoA.FAASDOCUMENTOPERATIONVALUES_INSERT=HoA.FaasTriggerValues=HoA.FAASTRIGGERVALUES_OTHER=HoA.FAASTRIGGERVALUES_TIMER=HoA.FAASTRIGGERVALUES_PUBSUB=HoA.FAASTRIGGERVALUES_HTTP=HoA.FAASTRIGGERVALUES_DATASOURCE=HoA.DbCassandraConsistencyLevelValues=HoA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=HoA.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=HoA.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=HoA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=HoA.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=HoA.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=HoA.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=HoA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=HoA.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=HoA.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=HoA.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=HoA.DbSystemValues=HoA.DBSYSTEMVALUES_COCKROACHDB=HoA.DBSYSTEMVALUES_MEMCACHED=HoA.DBSYSTEMVALUES_ELASTICSEARCH=HoA.DBSYSTEMVALUES_GEODE=HoA.DBSYSTEMVALUES_NEO4J=HoA.DBSYSTEMVALUES_DYNAMODB=HoA.DBSYSTEMVALUES_COSMOSDB=HoA.DBSYSTEMVALUES_COUCHDB=HoA.DBSYSTEMVALUES_COUCHBASE=HoA.DBSYSTEMVALUES_REDIS=HoA.DBSYSTEMVALUES_MONGODB=HoA.DBSYSTEMVALUES_HBASE=HoA.DBSYSTEMVALUES_CASSANDRA=HoA.DBSYSTEMVALUES_COLDFUSION=HoA.DBSYSTEMVALUES_H2=HoA.DBSYSTEMVALUES_VERTICA=HoA.DBSYSTEMVALUES_TERADATA=HoA.DBSYSTEMVALUES_SYBASE=HoA.DBSYSTEMVALUES_SQLITE=HoA.DBSYSTEMVALUES_POINTBASE=HoA.DBSYSTEMVALUES_PERVASIVE=HoA.DBSYSTEMVALUES_NETEZZA=HoA.DBSYSTEMVALUES_MARIADB=HoA.DBSYSTEMVALUES_INTERBASE=HoA.DBSYSTEMVALUES_INSTANTDB=HoA.DBSYSTEMVALUES_INFORMIX=void 0;HoA.MESSAGINGOPERATIONVALUES_RECEIVE=HoA.MessagingDestinationKindValues=HoA.MESSAGINGDESTINATIONKINDVALUES_TOPIC=HoA.MESSAGINGDESTINATIONKINDVALUES_QUEUE=HoA.HttpFlavorValues=HoA.HTTPFLAVORVALUES_QUIC=HoA.HTTPFLAVORVALUES_SPDY=HoA.HTTPFLAVORVALUES_HTTP_2_0=HoA.HTTPFLAVORVALUES_HTTP_1_1=HoA.HTTPFLAVORVALUES_HTTP_1_0=HoA.NetHostConnectionSubtypeValues=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_NR=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=HoA.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=HoA.NetHostConnectionTypeValues=HoA.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=HoA.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=HoA.NETHOSTCONNECTIONTYPEVALUES_CELL=HoA.NETHOSTCONNECTIONTYPEVALUES_WIRED=HoA.NETHOSTCONNECTIONTYPEVALUES_WIFI=HoA.NetTransportValues=HoA.NETTRANSPORTVALUES_OTHER=HoA.NETTRANSPORTVALUES_INPROC=HoA.NETTRANSPORTVALUES_PIPE=HoA.NETTRANSPORTVALUES_UNIX=HoA.NETTRANSPORTVALUES_IP=HoA.NETTRANSPORTVALUES_IP_UDP=HoA.NETTRANSPORTVALUES_IP_TCP=HoA.FaasInvokedProviderValues=HoA.FAASINVOKEDPROVIDERVALUES_GCP=HoA.FAASINVOKEDPROVIDERVALUES_AZURE=HoA.FAASINVOKEDPROVIDERVALUES_AWS=void 0;HoA.MessageTypeValues=HoA.MESSAGETYPEVALUES_RECEIVED=HoA.MESSAGETYPEVALUES_SENT=HoA.RpcGrpcStatusCodeValues=HoA.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=HoA.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=HoA.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=HoA.RPCGRPCSTATUSCODEVALUES_INTERNAL=HoA.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=HoA.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=HoA.RPCGRPCSTATUSCODEVALUES_ABORTED=HoA.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=HoA.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=HoA.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=HoA.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=HoA.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=HoA.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=HoA.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=HoA.RPCGRPCSTATUSCODEVALUES_UNKNOWN=HoA.RPCGRPCSTATUSCODEVALUES_CANCELLED=HoA.RPCGRPCSTATUSCODEVALUES_OK=HoA.MessagingOperationValues=HoA.MESSAGINGOPERATIONVALUES_PROCESS=void 0;var p5=Yi(),PiA="aws.lambda.invoked_arn",TiA="db.system",SiA="db.connection_string",kiA="db.user",_iA="db.jdbc.driver_classname",viA="db.name",yiA="db.statement",giA="db.operation",hiA="db.mssql.instance_name",xiA="db.cassandra.keyspace",fiA="db.cassandra.page_size",biA="db.cassandra.consistency_level",miA="db.cassandra.table",uiA="db.cassandra.idempotence",diA="db.cassandra.speculative_execution_count",ciA="db.cassandra.coordinator.id",liA="db.cassandra.coordinator.dc",piA="db.hbase.namespace",iiA="db.redis.database_index",niA="db.mongodb.collection",siA="db.sql.table",riA="exception.type",aiA="exception.message",oiA="exception.stacktrace",tiA="exception.escaped",eiA="faas.trigger",AnA="faas.execution",QnA="faas.document.collection",BnA="faas.document.operation",YnA="faas.document.time",JnA="faas.document.name",CnA="faas.time",XnA="faas.cron",GnA="faas.coldstart",WnA="faas.invoked_name",FnA="faas.invoked_provider",ZnA="faas.invoked_region",$nA="net.transport",UnA="net.peer.ip",EnA="net.peer.port",KnA="net.peer.name",VnA="net.host.ip",InA="net.host.port",HnA="net.host.name",DnA="net.host.connection.type",NnA="net.host.connection.subtype",LnA="net.host.carrier.name",qnA="net.host.carrier.mcc",MnA="net.host.carrier.mnc",znA="net.host.carrier.icc",RnA="peer.service",wnA="enduser.id",jnA="enduser.role",OnA="enduser.scope",PnA="thread.id",TnA="thread.name",SnA="code.function",knA="code.namespace",_nA="code.filepath",vnA="code.lineno",ynA="http.method",gnA="http.url",hnA="http.target",xnA="http.host",fnA="http.scheme",bnA="http.status_code",mnA="http.flavor",unA="http.user_agent",dnA="http.request_content_length",cnA="http.request_content_length_uncompressed",lnA="http.response_content_length",pnA="http.response_content_length_uncompressed",inA="http.server_name",nnA="http.route",snA="http.client_ip",rnA="aws.dynamodb.table_names",anA="aws.dynamodb.consumed_capacity",onA="aws.dynamodb.item_collection_metrics",tnA="aws.dynamodb.provisioned_read_capacity",enA="aws.dynamodb.provisioned_write_capacity",AsA="aws.dynamodb.consistent_read",QsA="aws.dynamodb.projection",BsA="aws.dynamodb.limit",YsA="aws.dynamodb.attributes_to_get",JsA="aws.dynamodb.index_name",CsA="aws.dynamodb.select",XsA="aws.dynamodb.global_secondary_indexes",GsA="aws.dynamodb.local_secondary_indexes",WsA="aws.dynamodb.exclusive_start_table",FsA="aws.dynamodb.table_count",ZsA="aws.dynamodb.scan_forward",$sA="aws.dynamodb.segment",UsA="aws.dynamodb.total_segments",EsA="aws.dynamodb.count",KsA="aws.dynamodb.scanned_count",VsA="aws.dynamodb.attribute_definitions",IsA="aws.dynamodb.global_secondary_index_updates",HsA="messaging.system",DsA="messaging.destination",NsA="messaging.destination_kind",LsA="messaging.temp_destination",qsA="messaging.protocol",MsA="messaging.protocol_version",zsA="messaging.url",RsA="messaging.message_id",wsA="messaging.conversation_id",jsA="messaging.message_payload_size_bytes",OsA="messaging.message_payload_compressed_size_bytes",PsA="messaging.operation",TsA="messaging.consumer_id",SsA="messaging.rabbitmq.routing_key",ksA="messaging.kafka.message_key",_sA="messaging.kafka.consumer_group",vsA="messaging.kafka.client_id",ysA="messaging.kafka.partition",gsA="messaging.kafka.tombstone",hsA="rpc.system",xsA="rpc.service",fsA="rpc.method",bsA="rpc.grpc.status_code",msA="rpc.jsonrpc.version",usA="rpc.jsonrpc.request_id",dsA="rpc.jsonrpc.error_code",csA="rpc.jsonrpc.error_message",lsA="message.type",psA="message.id",isA="message.compressed_size",nsA="message.uncompressed_size";HoA.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=PiA;HoA.SEMATTRS_DB_SYSTEM=TiA;HoA.SEMATTRS_DB_CONNECTION_STRING=SiA;HoA.SEMATTRS_DB_USER=kiA;HoA.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=_iA;HoA.SEMATTRS_DB_NAME=viA;HoA.SEMATTRS_DB_STATEMENT=yiA;HoA.SEMATTRS_DB_OPERATION=giA;HoA.SEMATTRS_DB_MSSQL_INSTANCE_NAME=hiA;HoA.SEMATTRS_DB_CASSANDRA_KEYSPACE=xiA;HoA.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=fiA;HoA.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=biA;HoA.SEMATTRS_DB_CASSANDRA_TABLE=miA;HoA.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=uiA;HoA.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=diA;HoA.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=ciA;HoA.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=liA;HoA.SEMATTRS_DB_HBASE_NAMESPACE=piA;HoA.SEMATTRS_DB_REDIS_DATABASE_INDEX=iiA;HoA.SEMATTRS_DB_MONGODB_COLLECTION=niA;HoA.SEMATTRS_DB_SQL_TABLE=siA;HoA.SEMATTRS_EXCEPTION_TYPE=riA;HoA.SEMATTRS_EXCEPTION_MESSAGE=aiA;HoA.SEMATTRS_EXCEPTION_STACKTRACE=oiA;HoA.SEMATTRS_EXCEPTION_ESCAPED=tiA;HoA.SEMATTRS_FAAS_TRIGGER=eiA;HoA.SEMATTRS_FAAS_EXECUTION=AnA;HoA.SEMATTRS_FAAS_DOCUMENT_COLLECTION=QnA;HoA.SEMATTRS_FAAS_DOCUMENT_OPERATION=BnA;HoA.SEMATTRS_FAAS_DOCUMENT_TIME=YnA;HoA.SEMATTRS_FAAS_DOCUMENT_NAME=JnA;HoA.SEMATTRS_FAAS_TIME=CnA;HoA.SEMATTRS_FAAS_CRON=XnA;HoA.SEMATTRS_FAAS_COLDSTART=GnA;HoA.SEMATTRS_FAAS_INVOKED_NAME=WnA;HoA.SEMATTRS_FAAS_INVOKED_PROVIDER=FnA;HoA.SEMATTRS_FAAS_INVOKED_REGION=ZnA;HoA.SEMATTRS_NET_TRANSPORT=$nA;HoA.SEMATTRS_NET_PEER_IP=UnA;HoA.SEMATTRS_NET_PEER_PORT=EnA;HoA.SEMATTRS_NET_PEER_NAME=KnA;HoA.SEMATTRS_NET_HOST_IP=VnA;HoA.SEMATTRS_NET_HOST_PORT=InA;HoA.SEMATTRS_NET_HOST_NAME=HnA;HoA.SEMATTRS_NET_HOST_CONNECTION_TYPE=DnA;HoA.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=NnA;HoA.SEMATTRS_NET_HOST_CARRIER_NAME=LnA;HoA.SEMATTRS_NET_HOST_CARRIER_MCC=qnA;HoA.SEMATTRS_NET_HOST_CARRIER_MNC=MnA;HoA.SEMATTRS_NET_HOST_CARRIER_ICC=znA;HoA.SEMATTRS_PEER_SERVICE=RnA;HoA.SEMATTRS_ENDUSER_ID=wnA;HoA.SEMATTRS_ENDUSER_ROLE=jnA;HoA.SEMATTRS_ENDUSER_SCOPE=OnA;HoA.SEMATTRS_THREAD_ID=PnA;HoA.SEMATTRS_THREAD_NAME=TnA;HoA.SEMATTRS_CODE_FUNCTION=SnA;HoA.SEMATTRS_CODE_NAMESPACE=knA;HoA.SEMATTRS_CODE_FILEPATH=_nA;HoA.SEMATTRS_CODE_LINENO=vnA;HoA.SEMATTRS_HTTP_METHOD=ynA;HoA.SEMATTRS_HTTP_URL=gnA;HoA.SEMATTRS_HTTP_TARGET=hnA;HoA.SEMATTRS_HTTP_HOST=xnA;HoA.SEMATTRS_HTTP_SCHEME=fnA;HoA.SEMATTRS_HTTP_STATUS_CODE=bnA;HoA.SEMATTRS_HTTP_FLAVOR=mnA;HoA.SEMATTRS_HTTP_USER_AGENT=unA;HoA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=dnA;HoA.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=cnA;HoA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=lnA;HoA.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=pnA;HoA.SEMATTRS_HTTP_SERVER_NAME=inA;HoA.SEMATTRS_HTTP_ROUTE=nnA;HoA.SEMATTRS_HTTP_CLIENT_IP=snA;HoA.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=rnA;HoA.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=anA;HoA.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=onA;HoA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=tnA;HoA.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=enA;HoA.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=AsA;HoA.SEMATTRS_AWS_DYNAMODB_PROJECTION=QsA;HoA.SEMATTRS_AWS_DYNAMODB_LIMIT=BsA;HoA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=YsA;HoA.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=JsA;HoA.SEMATTRS_AWS_DYNAMODB_SELECT=CsA;HoA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=XsA;HoA.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=GsA;HoA.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=WsA;HoA.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=FsA;HoA.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=ZsA;HoA.SEMATTRS_AWS_DYNAMODB_SEGMENT=$sA;HoA.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=UsA;HoA.SEMATTRS_AWS_DYNAMODB_COUNT=EsA;HoA.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=KsA;HoA.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=VsA;HoA.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=IsA;HoA.SEMATTRS_MESSAGING_SYSTEM=HsA;HoA.SEMATTRS_MESSAGING_DESTINATION=DsA;HoA.SEMATTRS_MESSAGING_DESTINATION_KIND=NsA;HoA.SEMATTRS_MESSAGING_TEMP_DESTINATION=LsA;HoA.SEMATTRS_MESSAGING_PROTOCOL=qsA;HoA.SEMATTRS_MESSAGING_PROTOCOL_VERSION=MsA;HoA.SEMATTRS_MESSAGING_URL=zsA;HoA.SEMATTRS_MESSAGING_MESSAGE_ID=RsA;HoA.SEMATTRS_MESSAGING_CONVERSATION_ID=wsA;HoA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=jsA;HoA.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=OsA;HoA.SEMATTRS_MESSAGING_OPERATION=PsA;HoA.SEMATTRS_MESSAGING_CONSUMER_ID=TsA;HoA.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=SsA;HoA.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=ksA;HoA.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=_sA;HoA.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=vsA;HoA.SEMATTRS_MESSAGING_KAFKA_PARTITION=ysA;HoA.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=gsA;HoA.SEMATTRS_RPC_SYSTEM=hsA;HoA.SEMATTRS_RPC_SERVICE=xsA;HoA.SEMATTRS_RPC_METHOD=fsA;HoA.SEMATTRS_RPC_GRPC_STATUS_CODE=bsA;HoA.SEMATTRS_RPC_JSONRPC_VERSION=msA;HoA.SEMATTRS_RPC_JSONRPC_REQUEST_ID=usA;HoA.SEMATTRS_RPC_JSONRPC_ERROR_CODE=dsA;HoA.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=csA;HoA.SEMATTRS_MESSAGE_TYPE=lsA;HoA.SEMATTRS_MESSAGE_ID=psA;HoA.SEMATTRS_MESSAGE_COMPRESSED_SIZE=isA;HoA.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=nsA;HoA.SemanticAttributes=(0,p5.createConstMap)([PiA,TiA,SiA,kiA,_iA,viA,yiA,giA,hiA,xiA,fiA,biA,miA,uiA,diA,ciA,liA,piA,iiA,niA,siA,riA,aiA,oiA,tiA,eiA,AnA,QnA,BnA,YnA,JnA,CnA,XnA,GnA,WnA,FnA,ZnA,$nA,UnA,EnA,KnA,VnA,InA,HnA,DnA,NnA,LnA,qnA,MnA,znA,RnA,wnA,jnA,OnA,PnA,TnA,SnA,knA,_nA,vnA,ynA,gnA,hnA,xnA,fnA,bnA,mnA,unA,dnA,cnA,lnA,pnA,inA,nnA,snA,rnA,anA,onA,tnA,enA,AsA,QsA,BsA,YsA,JsA,CsA,XsA,GsA,WsA,FsA,ZsA,$sA,UsA,EsA,KsA,VsA,IsA,HsA,DsA,NsA,LsA,qsA,MsA,zsA,RsA,wsA,jsA,OsA,PsA,TsA,SsA,ksA,_sA,vsA,ysA,gsA,hsA,xsA,fsA,bsA,msA,usA,dsA,csA,lsA,psA,isA,nsA]);var ssA="other_sql",rsA="mssql",asA="mysql",osA="oracle",tsA="db2",esA="postgresql",ArA="redshift",QrA="hive",BrA="cloudscape",YrA="hsqldb",JrA="progress",CrA="maxdb",XrA="hanadb",GrA="ingres",WrA="firstsql",FrA="edb",ZrA="cache",$rA="adabas",UrA="firebird",ErA="derby",KrA="filemaker",VrA="informix",IrA="instantdb",HrA="interbase",DrA="mariadb",NrA="netezza",LrA="pervasive",qrA="pointbase",MrA="sqlite",zrA="sybase",RrA="teradata",wrA="vertica",jrA="h2",OrA="coldfusion",PrA="cassandra",TrA="hbase",SrA="mongodb",krA="redis",_rA="couchbase",vrA="couchdb",yrA="cosmosdb",grA="dynamodb",hrA="neo4j",xrA="geode",frA="elasticsearch",brA="memcached",mrA="cockroachdb";HoA.DBSYSTEMVALUES_OTHER_SQL=ssA;HoA.DBSYSTEMVALUES_MSSQL=rsA;HoA.DBSYSTEMVALUES_MYSQL=asA;HoA.DBSYSTEMVALUES_ORACLE=osA;HoA.DBSYSTEMVALUES_DB2=tsA;HoA.DBSYSTEMVALUES_POSTGRESQL=esA;HoA.DBSYSTEMVALUES_REDSHIFT=ArA;HoA.DBSYSTEMVALUES_HIVE=QrA;HoA.DBSYSTEMVALUES_CLOUDSCAPE=BrA;HoA.DBSYSTEMVALUES_HSQLDB=YrA;HoA.DBSYSTEMVALUES_PROGRESS=JrA;HoA.DBSYSTEMVALUES_MAXDB=CrA;HoA.DBSYSTEMVALUES_HANADB=XrA;HoA.DBSYSTEMVALUES_INGRES=GrA;HoA.DBSYSTEMVALUES_FIRSTSQL=WrA;HoA.DBSYSTEMVALUES_EDB=FrA;HoA.DBSYSTEMVALUES_CACHE=ZrA;HoA.DBSYSTEMVALUES_ADABAS=$rA;HoA.DBSYSTEMVALUES_FIREBIRD=UrA;HoA.DBSYSTEMVALUES_DERBY=ErA;HoA.DBSYSTEMVALUES_FILEMAKER=KrA;HoA.DBSYSTEMVALUES_INFORMIX=VrA;HoA.DBSYSTEMVALUES_INSTANTDB=IrA;HoA.DBSYSTEMVALUES_INTERBASE=HrA;HoA.DBSYSTEMVALUES_MARIADB=DrA;HoA.DBSYSTEMVALUES_NETEZZA=NrA;HoA.DBSYSTEMVALUES_PERVASIVE=LrA;HoA.DBSYSTEMVALUES_POINTBASE=qrA;HoA.DBSYSTEMVALUES_SQLITE=MrA;HoA.DBSYSTEMVALUES_SYBASE=zrA;HoA.DBSYSTEMVALUES_TERADATA=RrA;HoA.DBSYSTEMVALUES_VERTICA=wrA;HoA.DBSYSTEMVALUES_H2=jrA;HoA.DBSYSTEMVALUES_COLDFUSION=OrA;HoA.DBSYSTEMVALUES_CASSANDRA=PrA;HoA.DBSYSTEMVALUES_HBASE=TrA;HoA.DBSYSTEMVALUES_MONGODB=SrA;HoA.DBSYSTEMVALUES_REDIS=krA;HoA.DBSYSTEMVALUES_COUCHBASE=_rA;HoA.DBSYSTEMVALUES_COUCHDB=vrA;HoA.DBSYSTEMVALUES_COSMOSDB=yrA;HoA.DBSYSTEMVALUES_DYNAMODB=grA;HoA.DBSYSTEMVALUES_NEO4J=hrA;HoA.DBSYSTEMVALUES_GEODE=xrA;HoA.DBSYSTEMVALUES_ELASTICSEARCH=frA;HoA.DBSYSTEMVALUES_MEMCACHED=brA;HoA.DBSYSTEMVALUES_COCKROACHDB=mrA;HoA.DbSystemValues=(0,p5.createConstMap)([ssA,rsA,asA,osA,tsA,esA,ArA,QrA,BrA,YrA,JrA,CrA,XrA,GrA,WrA,FrA,ZrA,$rA,UrA,ErA,KrA,VrA,IrA,HrA,DrA,NrA,LrA,qrA,MrA,zrA,RrA,wrA,jrA,OrA,PrA,TrA,SrA,krA,_rA,vrA,yrA,grA,hrA,xrA,frA,brA,mrA]);var urA="all",drA="each_quorum",crA="quorum",lrA="local_quorum",prA="one",irA="two",nrA="three",srA="local_one",rrA="any",arA="serial",orA="local_serial";HoA.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=urA;HoA.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=drA;HoA.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=crA;HoA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=lrA;HoA.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=prA;HoA.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=irA;HoA.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=nrA;HoA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=srA;HoA.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=rrA;HoA.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=arA;HoA.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=orA;HoA.DbCassandraConsistencyLevelValues=(0,p5.createConstMap)([urA,drA,crA,lrA,prA,irA,nrA,srA,rrA,arA,orA]);var trA="datasource",erA="http",AaA="pubsub",QaA="timer",BaA="other";HoA.FAASTRIGGERVALUES_DATASOURCE=trA;HoA.FAASTRIGGERVALUES_HTTP=erA;HoA.FAASTRIGGERVALUES_PUBSUB=AaA;HoA.FAASTRIGGERVALUES_TIMER=QaA;HoA.FAASTRIGGERVALUES_OTHER=BaA;HoA.FaasTriggerValues=(0,p5.createConstMap)([trA,erA,AaA,QaA,BaA]);var YaA="insert",JaA="edit",CaA="delete";HoA.FAASDOCUMENTOPERATIONVALUES_INSERT=YaA;HoA.FAASDOCUMENTOPERATIONVALUES_EDIT=JaA;HoA.FAASDOCUMENTOPERATIONVALUES_DELETE=CaA;HoA.FaasDocumentOperationValues=(0,p5.createConstMap)([YaA,JaA,CaA]);var XaA="alibaba_cloud",GaA="aws",WaA="azure",FaA="gcp";HoA.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=XaA;HoA.FAASINVOKEDPROVIDERVALUES_AWS=GaA;HoA.FAASINVOKEDPROVIDERVALUES_AZURE=WaA;HoA.FAASINVOKEDPROVIDERVALUES_GCP=FaA;HoA.FaasInvokedProviderValues=(0,p5.createConstMap)([XaA,GaA,WaA,FaA]);var ZaA="ip_tcp",$aA="ip_udp",UaA="ip",EaA="unix",KaA="pipe",VaA="inproc",IaA="other";HoA.NETTRANSPORTVALUES_IP_TCP=ZaA;HoA.NETTRANSPORTVALUES_IP_UDP=$aA;HoA.NETTRANSPORTVALUES_IP=UaA;HoA.NETTRANSPORTVALUES_UNIX=EaA;HoA.NETTRANSPORTVALUES_PIPE=KaA;HoA.NETTRANSPORTVALUES_INPROC=VaA;HoA.NETTRANSPORTVALUES_OTHER=IaA;HoA.NetTransportValues=(0,p5.createConstMap)([ZaA,$aA,UaA,EaA,KaA,VaA,IaA]);var HaA="wifi",DaA="wired",NaA="cell",LaA="unavailable",qaA="unknown";HoA.NETHOSTCONNECTIONTYPEVALUES_WIFI=HaA;HoA.NETHOSTCONNECTIONTYPEVALUES_WIRED=DaA;HoA.NETHOSTCONNECTIONTYPEVALUES_CELL=NaA;HoA.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=LaA;HoA.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=qaA;HoA.NetHostConnectionTypeValues=(0,p5.createConstMap)([HaA,DaA,NaA,LaA,qaA]);var MaA="gprs",zaA="edge",RaA="umts",waA="cdma",jaA="evdo_0",OaA="evdo_a",PaA="cdma2000_1xrtt",TaA="hsdpa",SaA="hsupa",kaA="hspa",_aA="iden",vaA="evdo_b",yaA="lte",gaA="ehrpd",haA="hspap",xaA="gsm",faA="td_scdma",baA="iwlan",maA="nr",uaA="nrnsa",daA="lte_ca";HoA.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=MaA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=zaA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=RaA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=waA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=jaA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=OaA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=PaA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=TaA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=SaA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=kaA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=_aA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=vaA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=yaA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=gaA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=haA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=xaA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=faA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=baA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_NR=maA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=uaA;HoA.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=daA;HoA.NetHostConnectionSubtypeValues=(0,p5.createConstMap)([MaA,zaA,RaA,waA,jaA,OaA,PaA,TaA,SaA,kaA,_aA,vaA,yaA,gaA,haA,xaA,faA,baA,maA,uaA,daA]);var caA="1.0",laA="1.1",paA="2.0",iaA="SPDY",naA="QUIC";HoA.HTTPFLAVORVALUES_HTTP_1_0=caA;HoA.HTTPFLAVORVALUES_HTTP_1_1=laA;HoA.HTTPFLAVORVALUES_HTTP_2_0=paA;HoA.HTTPFLAVORVALUES_SPDY=iaA;HoA.HTTPFLAVORVALUES_QUIC=naA;HoA.HttpFlavorValues={HTTP_1_0:caA,HTTP_1_1:laA,HTTP_2_0:paA,SPDY:iaA,QUIC:naA};var saA="queue",raA="topic";HoA.MESSAGINGDESTINATIONKINDVALUES_QUEUE=saA;HoA.MESSAGINGDESTINATIONKINDVALUES_TOPIC=raA;HoA.MessagingDestinationKindValues=(0,p5.createConstMap)([saA,raA]);var aaA="receive",oaA="process";HoA.MESSAGINGOPERATIONVALUES_RECEIVE=aaA;HoA.MESSAGINGOPERATIONVALUES_PROCESS=oaA;HoA.MessagingOperationValues=(0,p5.createConstMap)([aaA,oaA]);var taA=0,eaA=1,AoA=2,QoA=3,BoA=4,YoA=5,JoA=6,CoA=7,XoA=8,GoA=9,WoA=10,FoA=11,ZoA=12,$oA=13,UoA=14,EoA=15,KoA=16;HoA.RPCGRPCSTATUSCODEVALUES_OK=taA;HoA.RPCGRPCSTATUSCODEVALUES_CANCELLED=eaA;HoA.RPCGRPCSTATUSCODEVALUES_UNKNOWN=AoA;HoA.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=QoA;HoA.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=BoA;HoA.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=YoA;HoA.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=JoA;HoA.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=CoA;HoA.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=XoA;HoA.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=GoA;HoA.RPCGRPCSTATUSCODEVALUES_ABORTED=WoA;HoA.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=FoA;HoA.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=ZoA;HoA.RPCGRPCSTATUSCODEVALUES_INTERNAL=$oA;HoA.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=UoA;HoA.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=EoA;HoA.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=KoA;HoA.RpcGrpcStatusCodeValues={OK:taA,CANCELLED:eaA,UNKNOWN:AoA,INVALID_ARGUMENT:QoA,DEADLINE_EXCEEDED:BoA,NOT_FOUND:YoA,ALREADY_EXISTS:JoA,PERMISSION_DENIED:CoA,RESOURCE_EXHAUSTED:XoA,FAILED_PRECONDITION:GoA,ABORTED:WoA,OUT_OF_RANGE:FoA,UNIMPLEMENTED:ZoA,INTERNAL:$oA,UNAVAILABLE:UoA,DATA_LOSS:EoA,UNAUTHENTICATED:KoA};var VoA="SENT",IoA="RECEIVED";HoA.MESSAGETYPEVALUES_SENT=VoA;HoA.MESSAGETYPEVALUES_RECEIVED=IoA;HoA.MessageTypeValues=(0,p5.createConstMap)([VoA,IoA])});var woA=R((U$)=>{var eaB=U$&&U$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;var J=Object.getOwnPropertyDescriptor(Q,B);if(!J||("get"in J?!Q.__esModule:J.writable||J.configurable))J={enumerable:!0,get:function(){return Q[B]}};Object.defineProperty(A,Y,J)}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),AoB=U$&&U$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))eaB(Q,A,B)};Object.defineProperty(U$,"__esModule",{value:!0});AoB(RoA(),U$)});var AAQ=R((aeA)=>{Object.defineProperty(aeA,"__esModule",{value:!0});aeA.SEMRESATTRS_K8S_STATEFULSET_NAME=aeA.SEMRESATTRS_K8S_STATEFULSET_UID=aeA.SEMRESATTRS_K8S_DEPLOYMENT_NAME=aeA.SEMRESATTRS_K8S_DEPLOYMENT_UID=aeA.SEMRESATTRS_K8S_REPLICASET_NAME=aeA.SEMRESATTRS_K8S_REPLICASET_UID=aeA.SEMRESATTRS_K8S_CONTAINER_NAME=aeA.SEMRESATTRS_K8S_POD_NAME=aeA.SEMRESATTRS_K8S_POD_UID=aeA.SEMRESATTRS_K8S_NAMESPACE_NAME=aeA.SEMRESATTRS_K8S_NODE_UID=aeA.SEMRESATTRS_K8S_NODE_NAME=aeA.SEMRESATTRS_K8S_CLUSTER_NAME=aeA.SEMRESATTRS_HOST_IMAGE_VERSION=aeA.SEMRESATTRS_HOST_IMAGE_ID=aeA.SEMRESATTRS_HOST_IMAGE_NAME=aeA.SEMRESATTRS_HOST_ARCH=aeA.SEMRESATTRS_HOST_TYPE=aeA.SEMRESATTRS_HOST_NAME=aeA.SEMRESATTRS_HOST_ID=aeA.SEMRESATTRS_FAAS_MAX_MEMORY=aeA.SEMRESATTRS_FAAS_INSTANCE=aeA.SEMRESATTRS_FAAS_VERSION=aeA.SEMRESATTRS_FAAS_ID=aeA.SEMRESATTRS_FAAS_NAME=aeA.SEMRESATTRS_DEVICE_MODEL_NAME=aeA.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=aeA.SEMRESATTRS_DEVICE_ID=aeA.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=aeA.SEMRESATTRS_CONTAINER_IMAGE_TAG=aeA.SEMRESATTRS_CONTAINER_IMAGE_NAME=aeA.SEMRESATTRS_CONTAINER_RUNTIME=aeA.SEMRESATTRS_CONTAINER_ID=aeA.SEMRESATTRS_CONTAINER_NAME=aeA.SEMRESATTRS_AWS_LOG_STREAM_ARNS=aeA.SEMRESATTRS_AWS_LOG_STREAM_NAMES=aeA.SEMRESATTRS_AWS_LOG_GROUP_ARNS=aeA.SEMRESATTRS_AWS_LOG_GROUP_NAMES=aeA.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=aeA.SEMRESATTRS_AWS_ECS_TASK_REVISION=aeA.SEMRESATTRS_AWS_ECS_TASK_FAMILY=aeA.SEMRESATTRS_AWS_ECS_TASK_ARN=aeA.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=aeA.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=aeA.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=aeA.SEMRESATTRS_CLOUD_PLATFORM=aeA.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=aeA.SEMRESATTRS_CLOUD_REGION=aeA.SEMRESATTRS_CLOUD_ACCOUNT_ID=aeA.SEMRESATTRS_CLOUD_PROVIDER=void 0;aeA.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=aeA.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=aeA.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=aeA.CLOUDPLATFORMVALUES_AZURE_AKS=aeA.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=aeA.CLOUDPLATFORMVALUES_AZURE_VM=aeA.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=aeA.CLOUDPLATFORMVALUES_AWS_LAMBDA=aeA.CLOUDPLATFORMVALUES_AWS_EKS=aeA.CLOUDPLATFORMVALUES_AWS_ECS=aeA.CLOUDPLATFORMVALUES_AWS_EC2=aeA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=aeA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=aeA.CloudProviderValues=aeA.CLOUDPROVIDERVALUES_GCP=aeA.CLOUDPROVIDERVALUES_AZURE=aeA.CLOUDPROVIDERVALUES_AWS=aeA.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=aeA.SemanticResourceAttributes=aeA.SEMRESATTRS_WEBENGINE_DESCRIPTION=aeA.SEMRESATTRS_WEBENGINE_VERSION=aeA.SEMRESATTRS_WEBENGINE_NAME=aeA.SEMRESATTRS_TELEMETRY_AUTO_VERSION=aeA.SEMRESATTRS_TELEMETRY_SDK_VERSION=aeA.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=aeA.SEMRESATTRS_TELEMETRY_SDK_NAME=aeA.SEMRESATTRS_SERVICE_VERSION=aeA.SEMRESATTRS_SERVICE_INSTANCE_ID=aeA.SEMRESATTRS_SERVICE_NAMESPACE=aeA.SEMRESATTRS_SERVICE_NAME=aeA.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=aeA.SEMRESATTRS_PROCESS_RUNTIME_VERSION=aeA.SEMRESATTRS_PROCESS_RUNTIME_NAME=aeA.SEMRESATTRS_PROCESS_OWNER=aeA.SEMRESATTRS_PROCESS_COMMAND_ARGS=aeA.SEMRESATTRS_PROCESS_COMMAND_LINE=aeA.SEMRESATTRS_PROCESS_COMMAND=aeA.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=aeA.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=aeA.SEMRESATTRS_PROCESS_PID=aeA.SEMRESATTRS_OS_VERSION=aeA.SEMRESATTRS_OS_NAME=aeA.SEMRESATTRS_OS_DESCRIPTION=aeA.SEMRESATTRS_OS_TYPE=aeA.SEMRESATTRS_K8S_CRONJOB_NAME=aeA.SEMRESATTRS_K8S_CRONJOB_UID=aeA.SEMRESATTRS_K8S_JOB_NAME=aeA.SEMRESATTRS_K8S_JOB_UID=aeA.SEMRESATTRS_K8S_DAEMONSET_NAME=aeA.SEMRESATTRS_K8S_DAEMONSET_UID=void 0;aeA.TelemetrySdkLanguageValues=aeA.TELEMETRYSDKLANGUAGEVALUES_WEBJS=aeA.TELEMETRYSDKLANGUAGEVALUES_RUBY=aeA.TELEMETRYSDKLANGUAGEVALUES_PYTHON=aeA.TELEMETRYSDKLANGUAGEVALUES_PHP=aeA.TELEMETRYSDKLANGUAGEVALUES_NODEJS=aeA.TELEMETRYSDKLANGUAGEVALUES_JAVA=aeA.TELEMETRYSDKLANGUAGEVALUES_GO=aeA.TELEMETRYSDKLANGUAGEVALUES_ERLANG=aeA.TELEMETRYSDKLANGUAGEVALUES_DOTNET=aeA.TELEMETRYSDKLANGUAGEVALUES_CPP=aeA.OsTypeValues=aeA.OSTYPEVALUES_Z_OS=aeA.OSTYPEVALUES_SOLARIS=aeA.OSTYPEVALUES_AIX=aeA.OSTYPEVALUES_HPUX=aeA.OSTYPEVALUES_DRAGONFLYBSD=aeA.OSTYPEVALUES_OPENBSD=aeA.OSTYPEVALUES_NETBSD=aeA.OSTYPEVALUES_FREEBSD=aeA.OSTYPEVALUES_DARWIN=aeA.OSTYPEVALUES_LINUX=aeA.OSTYPEVALUES_WINDOWS=aeA.HostArchValues=aeA.HOSTARCHVALUES_X86=aeA.HOSTARCHVALUES_PPC64=aeA.HOSTARCHVALUES_PPC32=aeA.HOSTARCHVALUES_IA64=aeA.HOSTARCHVALUES_ARM64=aeA.HOSTARCHVALUES_ARM32=aeA.HOSTARCHVALUES_AMD64=aeA.AwsEcsLaunchtypeValues=aeA.AWSECSLAUNCHTYPEVALUES_FARGATE=aeA.AWSECSLAUNCHTYPEVALUES_EC2=aeA.CloudPlatformValues=aeA.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=aeA.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=aeA.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=aeA.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=void 0;var E$=Yi(),joA="cloud.provider",OoA="cloud.account.id",PoA="cloud.region",ToA="cloud.availability_zone",SoA="cloud.platform",koA="aws.ecs.container.arn",_oA="aws.ecs.cluster.arn",voA="aws.ecs.launchtype",yoA="aws.ecs.task.arn",goA="aws.ecs.task.family",hoA="aws.ecs.task.revision",xoA="aws.eks.cluster.arn",foA="aws.log.group.names",boA="aws.log.group.arns",moA="aws.log.stream.names",uoA="aws.log.stream.arns",doA="container.name",coA="container.id",loA="container.runtime",poA="container.image.name",ioA="container.image.tag",noA="deployment.environment",soA="device.id",roA="device.model.identifier",aoA="device.model.name",ooA="faas.name",toA="faas.id",eoA="faas.version",AtA="faas.instance",QtA="faas.max_memory",BtA="host.id",YtA="host.name",JtA="host.type",CtA="host.arch",XtA="host.image.name",GtA="host.image.id",WtA="host.image.version",FtA="k8s.cluster.name",ZtA="k8s.node.name",$tA="k8s.node.uid",UtA="k8s.namespace.name",EtA="k8s.pod.uid",KtA="k8s.pod.name",VtA="k8s.container.name",ItA="k8s.replicaset.uid",HtA="k8s.replicaset.name",DtA="k8s.deployment.uid",NtA="k8s.deployment.name",LtA="k8s.statefulset.uid",qtA="k8s.statefulset.name",MtA="k8s.daemonset.uid",ztA="k8s.daemonset.name",RtA="k8s.job.uid",wtA="k8s.job.name",jtA="k8s.cronjob.uid",OtA="k8s.cronjob.name",PtA="os.type",TtA="os.description",StA="os.name",ktA="os.version",_tA="process.pid",vtA="process.executable.name",ytA="process.executable.path",gtA="process.command",htA="process.command_line",xtA="process.command_args",ftA="process.owner",btA="process.runtime.name",mtA="process.runtime.version",utA="process.runtime.description",dtA="service.name",ctA="service.namespace",ltA="service.instance.id",ptA="service.version",itA="telemetry.sdk.name",ntA="telemetry.sdk.language",stA="telemetry.sdk.version",rtA="telemetry.auto.version",atA="webengine.name",otA="webengine.version",ttA="webengine.description";aeA.SEMRESATTRS_CLOUD_PROVIDER=joA;aeA.SEMRESATTRS_CLOUD_ACCOUNT_ID=OoA;aeA.SEMRESATTRS_CLOUD_REGION=PoA;aeA.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=ToA;aeA.SEMRESATTRS_CLOUD_PLATFORM=SoA;aeA.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=koA;aeA.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=_oA;aeA.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=voA;aeA.SEMRESATTRS_AWS_ECS_TASK_ARN=yoA;aeA.SEMRESATTRS_AWS_ECS_TASK_FAMILY=goA;aeA.SEMRESATTRS_AWS_ECS_TASK_REVISION=hoA;aeA.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=xoA;aeA.SEMRESATTRS_AWS_LOG_GROUP_NAMES=foA;aeA.SEMRESATTRS_AWS_LOG_GROUP_ARNS=boA;aeA.SEMRESATTRS_AWS_LOG_STREAM_NAMES=moA;aeA.SEMRESATTRS_AWS_LOG_STREAM_ARNS=uoA;aeA.SEMRESATTRS_CONTAINER_NAME=doA;aeA.SEMRESATTRS_CONTAINER_ID=coA;aeA.SEMRESATTRS_CONTAINER_RUNTIME=loA;aeA.SEMRESATTRS_CONTAINER_IMAGE_NAME=poA;aeA.SEMRESATTRS_CONTAINER_IMAGE_TAG=ioA;aeA.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=noA;aeA.SEMRESATTRS_DEVICE_ID=soA;aeA.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=roA;aeA.SEMRESATTRS_DEVICE_MODEL_NAME=aoA;aeA.SEMRESATTRS_FAAS_NAME=ooA;aeA.SEMRESATTRS_FAAS_ID=toA;aeA.SEMRESATTRS_FAAS_VERSION=eoA;aeA.SEMRESATTRS_FAAS_INSTANCE=AtA;aeA.SEMRESATTRS_FAAS_MAX_MEMORY=QtA;aeA.SEMRESATTRS_HOST_ID=BtA;aeA.SEMRESATTRS_HOST_NAME=YtA;aeA.SEMRESATTRS_HOST_TYPE=JtA;aeA.SEMRESATTRS_HOST_ARCH=CtA;aeA.SEMRESATTRS_HOST_IMAGE_NAME=XtA;aeA.SEMRESATTRS_HOST_IMAGE_ID=GtA;aeA.SEMRESATTRS_HOST_IMAGE_VERSION=WtA;aeA.SEMRESATTRS_K8S_CLUSTER_NAME=FtA;aeA.SEMRESATTRS_K8S_NODE_NAME=ZtA;aeA.SEMRESATTRS_K8S_NODE_UID=$tA;aeA.SEMRESATTRS_K8S_NAMESPACE_NAME=UtA;aeA.SEMRESATTRS_K8S_POD_UID=EtA;aeA.SEMRESATTRS_K8S_POD_NAME=KtA;aeA.SEMRESATTRS_K8S_CONTAINER_NAME=VtA;aeA.SEMRESATTRS_K8S_REPLICASET_UID=ItA;aeA.SEMRESATTRS_K8S_REPLICASET_NAME=HtA;aeA.SEMRESATTRS_K8S_DEPLOYMENT_UID=DtA;aeA.SEMRESATTRS_K8S_DEPLOYMENT_NAME=NtA;aeA.SEMRESATTRS_K8S_STATEFULSET_UID=LtA;aeA.SEMRESATTRS_K8S_STATEFULSET_NAME=qtA;aeA.SEMRESATTRS_K8S_DAEMONSET_UID=MtA;aeA.SEMRESATTRS_K8S_DAEMONSET_NAME=ztA;aeA.SEMRESATTRS_K8S_JOB_UID=RtA;aeA.SEMRESATTRS_K8S_JOB_NAME=wtA;aeA.SEMRESATTRS_K8S_CRONJOB_UID=jtA;aeA.SEMRESATTRS_K8S_CRONJOB_NAME=OtA;aeA.SEMRESATTRS_OS_TYPE=PtA;aeA.SEMRESATTRS_OS_DESCRIPTION=TtA;aeA.SEMRESATTRS_OS_NAME=StA;aeA.SEMRESATTRS_OS_VERSION=ktA;aeA.SEMRESATTRS_PROCESS_PID=_tA;aeA.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=vtA;aeA.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=ytA;aeA.SEMRESATTRS_PROCESS_COMMAND=gtA;aeA.SEMRESATTRS_PROCESS_COMMAND_LINE=htA;aeA.SEMRESATTRS_PROCESS_COMMAND_ARGS=xtA;aeA.SEMRESATTRS_PROCESS_OWNER=ftA;aeA.SEMRESATTRS_PROCESS_RUNTIME_NAME=btA;aeA.SEMRESATTRS_PROCESS_RUNTIME_VERSION=mtA;aeA.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=utA;aeA.SEMRESATTRS_SERVICE_NAME=dtA;aeA.SEMRESATTRS_SERVICE_NAMESPACE=ctA;aeA.SEMRESATTRS_SERVICE_INSTANCE_ID=ltA;aeA.SEMRESATTRS_SERVICE_VERSION=ptA;aeA.SEMRESATTRS_TELEMETRY_SDK_NAME=itA;aeA.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=ntA;aeA.SEMRESATTRS_TELEMETRY_SDK_VERSION=stA;aeA.SEMRESATTRS_TELEMETRY_AUTO_VERSION=rtA;aeA.SEMRESATTRS_WEBENGINE_NAME=atA;aeA.SEMRESATTRS_WEBENGINE_VERSION=otA;aeA.SEMRESATTRS_WEBENGINE_DESCRIPTION=ttA;aeA.SemanticResourceAttributes=(0,E$.createConstMap)([joA,OoA,PoA,ToA,SoA,koA,_oA,voA,yoA,goA,hoA,xoA,foA,boA,moA,uoA,doA,coA,loA,poA,ioA,noA,soA,roA,aoA,ooA,toA,eoA,AtA,QtA,BtA,YtA,JtA,CtA,XtA,GtA,WtA,FtA,ZtA,$tA,UtA,EtA,KtA,VtA,ItA,HtA,DtA,NtA,LtA,qtA,MtA,ztA,RtA,wtA,jtA,OtA,PtA,TtA,StA,ktA,_tA,vtA,ytA,gtA,htA,xtA,ftA,btA,mtA,utA,dtA,ctA,ltA,ptA,itA,ntA,stA,rtA,atA,otA,ttA]);var etA="alibaba_cloud",AeA="aws",QeA="azure",BeA="gcp";aeA.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=etA;aeA.CLOUDPROVIDERVALUES_AWS=AeA;aeA.CLOUDPROVIDERVALUES_AZURE=QeA;aeA.CLOUDPROVIDERVALUES_GCP=BeA;aeA.CloudProviderValues=(0,E$.createConstMap)([etA,AeA,QeA,BeA]);var YeA="alibaba_cloud_ecs",JeA="alibaba_cloud_fc",CeA="aws_ec2",XeA="aws_ecs",GeA="aws_eks",WeA="aws_lambda",FeA="aws_elastic_beanstalk",ZeA="azure_vm",$eA="azure_container_instances",UeA="azure_aks",EeA="azure_functions",KeA="azure_app_service",VeA="gcp_compute_engine",IeA="gcp_cloud_run",HeA="gcp_kubernetes_engine",DeA="gcp_cloud_functions",NeA="gcp_app_engine";aeA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=YeA;aeA.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=JeA;aeA.CLOUDPLATFORMVALUES_AWS_EC2=CeA;aeA.CLOUDPLATFORMVALUES_AWS_ECS=XeA;aeA.CLOUDPLATFORMVALUES_AWS_EKS=GeA;aeA.CLOUDPLATFORMVALUES_AWS_LAMBDA=WeA;aeA.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=FeA;aeA.CLOUDPLATFORMVALUES_AZURE_VM=ZeA;aeA.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=$eA;aeA.CLOUDPLATFORMVALUES_AZURE_AKS=UeA;aeA.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=EeA;aeA.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=KeA;aeA.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=VeA;aeA.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=IeA;aeA.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=HeA;aeA.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=DeA;aeA.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=NeA;aeA.CloudPlatformValues=(0,E$.createConstMap)([YeA,JeA,CeA,XeA,GeA,WeA,FeA,ZeA,$eA,UeA,EeA,KeA,VeA,IeA,HeA,DeA,NeA]);var LeA="ec2",qeA="fargate";aeA.AWSECSLAUNCHTYPEVALUES_EC2=LeA;aeA.AWSECSLAUNCHTYPEVALUES_FARGATE=qeA;aeA.AwsEcsLaunchtypeValues=(0,E$.createConstMap)([LeA,qeA]);var MeA="amd64",zeA="arm32",ReA="arm64",weA="ia64",jeA="ppc32",OeA="ppc64",PeA="x86";aeA.HOSTARCHVALUES_AMD64=MeA;aeA.HOSTARCHVALUES_ARM32=zeA;aeA.HOSTARCHVALUES_ARM64=ReA;aeA.HOSTARCHVALUES_IA64=weA;aeA.HOSTARCHVALUES_PPC32=jeA;aeA.HOSTARCHVALUES_PPC64=OeA;aeA.HOSTARCHVALUES_X86=PeA;aeA.HostArchValues=(0,E$.createConstMap)([MeA,zeA,ReA,weA,jeA,OeA,PeA]);var TeA="windows",SeA="linux",keA="darwin",_eA="freebsd",veA="netbsd",yeA="openbsd",geA="dragonflybsd",heA="hpux",xeA="aix",feA="solaris",beA="z_os";aeA.OSTYPEVALUES_WINDOWS=TeA;aeA.OSTYPEVALUES_LINUX=SeA;aeA.OSTYPEVALUES_DARWIN=keA;aeA.OSTYPEVALUES_FREEBSD=_eA;aeA.OSTYPEVALUES_NETBSD=veA;aeA.OSTYPEVALUES_OPENBSD=yeA;aeA.OSTYPEVALUES_DRAGONFLYBSD=geA;aeA.OSTYPEVALUES_HPUX=heA;aeA.OSTYPEVALUES_AIX=xeA;aeA.OSTYPEVALUES_SOLARIS=feA;aeA.OSTYPEVALUES_Z_OS=beA;aeA.OsTypeValues=(0,E$.createConstMap)([TeA,SeA,keA,_eA,veA,yeA,geA,heA,xeA,feA,beA]);var meA="cpp",ueA="dotnet",deA="erlang",ceA="go",leA="java",peA="nodejs",ieA="php",neA="python",seA="ruby",reA="webjs";aeA.TELEMETRYSDKLANGUAGEVALUES_CPP=meA;aeA.TELEMETRYSDKLANGUAGEVALUES_DOTNET=ueA;aeA.TELEMETRYSDKLANGUAGEVALUES_ERLANG=deA;aeA.TELEMETRYSDKLANGUAGEVALUES_GO=ceA;aeA.TELEMETRYSDKLANGUAGEVALUES_JAVA=leA;aeA.TELEMETRYSDKLANGUAGEVALUES_NODEJS=peA;aeA.TELEMETRYSDKLANGUAGEVALUES_PHP=ieA;aeA.TELEMETRYSDKLANGUAGEVALUES_PYTHON=neA;aeA.TELEMETRYSDKLANGUAGEVALUES_RUBY=seA;aeA.TELEMETRYSDKLANGUAGEVALUES_WEBJS=reA;aeA.TelemetrySdkLanguageValues=(0,E$.createConstMap)([meA,ueA,deA,ceA,leA,peA,ieA,neA,seA,reA])});var QAQ=R((K$)=>{var TeB=K$&&K$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;var J=Object.getOwnPropertyDescriptor(Q,B);if(!J||("get"in J?!Q.__esModule:J.writable||J.configurable))J={enumerable:!0,get:function(){return Q[B]}};Object.defineProperty(A,Y,J)}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),SeB=K$&&K$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))TeB(Q,A,B)};Object.defineProperty(K$,"__esModule",{value:!0});SeB(AAQ(),K$)});var XAQ=R((BAQ)=>{Object.defineProperty(BAQ,"__esModule",{value:!0});BAQ.ATTR_HTTP_REQUEST_HEADER=BAQ.ATTR_EXCEPTION_TYPE=BAQ.ATTR_EXCEPTION_STACKTRACE=BAQ.ATTR_EXCEPTION_MESSAGE=BAQ.ATTR_EXCEPTION_ESCAPED=BAQ.ERROR_TYPE_VALUE_OTHER=BAQ.ATTR_ERROR_TYPE=BAQ.DOTNET_GC_HEAP_GENERATION_VALUE_POH=BAQ.DOTNET_GC_HEAP_GENERATION_VALUE_LOH=BAQ.DOTNET_GC_HEAP_GENERATION_VALUE_GEN2=BAQ.DOTNET_GC_HEAP_GENERATION_VALUE_GEN1=BAQ.DOTNET_GC_HEAP_GENERATION_VALUE_GEN0=BAQ.ATTR_DOTNET_GC_HEAP_GENERATION=BAQ.DB_SYSTEM_NAME_VALUE_POSTGRESQL=BAQ.DB_SYSTEM_NAME_VALUE_MYSQL=BAQ.DB_SYSTEM_NAME_VALUE_MICROSOFT_SQL_SERVER=BAQ.DB_SYSTEM_NAME_VALUE_MARIADB=BAQ.ATTR_DB_SYSTEM_NAME=BAQ.ATTR_DB_STORED_PROCEDURE_NAME=BAQ.ATTR_DB_RESPONSE_STATUS_CODE=BAQ.ATTR_DB_QUERY_TEXT=BAQ.ATTR_DB_QUERY_SUMMARY=BAQ.ATTR_DB_OPERATION_NAME=BAQ.ATTR_DB_OPERATION_BATCH_SIZE=BAQ.ATTR_DB_NAMESPACE=BAQ.ATTR_DB_COLLECTION_NAME=BAQ.ATTR_CODE_STACKTRACE=BAQ.ATTR_CODE_LINE_NUMBER=BAQ.ATTR_CODE_FUNCTION_NAME=BAQ.ATTR_CODE_FILE_PATH=BAQ.ATTR_CODE_COLUMN_NUMBER=BAQ.ATTR_CLIENT_PORT=BAQ.ATTR_CLIENT_ADDRESS=BAQ.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS=BAQ.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE=BAQ.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS=BAQ.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK=BAQ.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED=BAQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED=BAQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER=BAQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER=BAQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED=BAQ.ATTR_ASPNETCORE_RATE_LIMITING_RESULT=BAQ.ATTR_ASPNETCORE_RATE_LIMITING_POLICY=BAQ.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE=BAQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED=BAQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED=BAQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED=BAQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED=BAQ.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT=void 0;BAQ.OTEL_STATUS_CODE_VALUE_OK=BAQ.OTEL_STATUS_CODE_VALUE_ERROR=BAQ.ATTR_OTEL_STATUS_CODE=BAQ.ATTR_OTEL_SCOPE_VERSION=BAQ.ATTR_OTEL_SCOPE_NAME=BAQ.NETWORK_TYPE_VALUE_IPV6=BAQ.NETWORK_TYPE_VALUE_IPV4=BAQ.ATTR_NETWORK_TYPE=BAQ.NETWORK_TRANSPORT_VALUE_UNIX=BAQ.NETWORK_TRANSPORT_VALUE_UDP=BAQ.NETWORK_TRANSPORT_VALUE_TCP=BAQ.NETWORK_TRANSPORT_VALUE_QUIC=BAQ.NETWORK_TRANSPORT_VALUE_PIPE=BAQ.ATTR_NETWORK_TRANSPORT=BAQ.ATTR_NETWORK_PROTOCOL_VERSION=BAQ.ATTR_NETWORK_PROTOCOL_NAME=BAQ.ATTR_NETWORK_PEER_PORT=BAQ.ATTR_NETWORK_PEER_ADDRESS=BAQ.ATTR_NETWORK_LOCAL_PORT=BAQ.ATTR_NETWORK_LOCAL_ADDRESS=BAQ.JVM_THREAD_STATE_VALUE_WAITING=BAQ.JVM_THREAD_STATE_VALUE_TIMED_WAITING=BAQ.JVM_THREAD_STATE_VALUE_TERMINATED=BAQ.JVM_THREAD_STATE_VALUE_RUNNABLE=BAQ.JVM_THREAD_STATE_VALUE_NEW=BAQ.JVM_THREAD_STATE_VALUE_BLOCKED=BAQ.ATTR_JVM_THREAD_STATE=BAQ.ATTR_JVM_THREAD_DAEMON=BAQ.JVM_MEMORY_TYPE_VALUE_NON_HEAP=BAQ.JVM_MEMORY_TYPE_VALUE_HEAP=BAQ.ATTR_JVM_MEMORY_TYPE=BAQ.ATTR_JVM_MEMORY_POOL_NAME=BAQ.ATTR_JVM_GC_NAME=BAQ.ATTR_JVM_GC_ACTION=BAQ.ATTR_HTTP_ROUTE=BAQ.ATTR_HTTP_RESPONSE_STATUS_CODE=BAQ.ATTR_HTTP_RESPONSE_HEADER=BAQ.ATTR_HTTP_REQUEST_RESEND_COUNT=BAQ.ATTR_HTTP_REQUEST_METHOD_ORIGINAL=BAQ.HTTP_REQUEST_METHOD_VALUE_TRACE=BAQ.HTTP_REQUEST_METHOD_VALUE_PUT=BAQ.HTTP_REQUEST_METHOD_VALUE_POST=BAQ.HTTP_REQUEST_METHOD_VALUE_PATCH=BAQ.HTTP_REQUEST_METHOD_VALUE_OPTIONS=BAQ.HTTP_REQUEST_METHOD_VALUE_HEAD=BAQ.HTTP_REQUEST_METHOD_VALUE_GET=BAQ.HTTP_REQUEST_METHOD_VALUE_DELETE=BAQ.HTTP_REQUEST_METHOD_VALUE_CONNECT=BAQ.HTTP_REQUEST_METHOD_VALUE_OTHER=BAQ.ATTR_HTTP_REQUEST_METHOD=void 0;BAQ.ATTR_USER_AGENT_ORIGINAL=BAQ.ATTR_URL_SCHEME=BAQ.ATTR_URL_QUERY=BAQ.ATTR_URL_PATH=BAQ.ATTR_URL_FULL=BAQ.ATTR_URL_FRAGMENT=BAQ.ATTR_TELEMETRY_SDK_VERSION=BAQ.ATTR_TELEMETRY_SDK_NAME=BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS=BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT=BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_RUST=BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY=BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON=BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_PHP=BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS=BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA=BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_GO=BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG=BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET=BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_CPP=BAQ.ATTR_TELEMETRY_SDK_LANGUAGE=BAQ.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS=BAQ.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS=BAQ.SIGNALR_TRANSPORT_VALUE_LONG_POLLING=BAQ.ATTR_SIGNALR_TRANSPORT=BAQ.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT=BAQ.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE=BAQ.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN=BAQ.ATTR_SIGNALR_CONNECTION_STATUS=BAQ.ATTR_SERVICE_VERSION=BAQ.ATTR_SERVICE_NAME=BAQ.ATTR_SERVER_PORT=BAQ.ATTR_SERVER_ADDRESS=BAQ.ATTR_OTEL_STATUS_DESCRIPTION=void 0;BAQ.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT="aspnetcore.diagnostics.exception.result";BAQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED="aborted";BAQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED="handled";BAQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED="skipped";BAQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED="unhandled";BAQ.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE="aspnetcore.diagnostics.handler.type";BAQ.ATTR_ASPNETCORE_RATE_LIMITING_POLICY="aspnetcore.rate_limiting.policy";BAQ.ATTR_ASPNETCORE_RATE_LIMITING_RESULT="aspnetcore.rate_limiting.result";BAQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED="acquired";BAQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER="endpoint_limiter";BAQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER="global_limiter";BAQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED="request_canceled";BAQ.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED="aspnetcore.request.is_unhandled";BAQ.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK="aspnetcore.routing.is_fallback";BAQ.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS="aspnetcore.routing.match_status";BAQ.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE="failure";BAQ.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS="success";BAQ.ATTR_CLIENT_ADDRESS="client.address";BAQ.ATTR_CLIENT_PORT="client.port";BAQ.ATTR_CODE_COLUMN_NUMBER="code.column.number";BAQ.ATTR_CODE_FILE_PATH="code.file.path";BAQ.ATTR_CODE_FUNCTION_NAME="code.function.name";BAQ.ATTR_CODE_LINE_NUMBER="code.line.number";BAQ.ATTR_CODE_STACKTRACE="code.stacktrace";BAQ.ATTR_DB_COLLECTION_NAME="db.collection.name";BAQ.ATTR_DB_NAMESPACE="db.namespace";BAQ.ATTR_DB_OPERATION_BATCH_SIZE="db.operation.batch.size";BAQ.ATTR_DB_OPERATION_NAME="db.operation.name";BAQ.ATTR_DB_QUERY_SUMMARY="db.query.summary";BAQ.ATTR_DB_QUERY_TEXT="db.query.text";BAQ.ATTR_DB_RESPONSE_STATUS_CODE="db.response.status_code";BAQ.ATTR_DB_STORED_PROCEDURE_NAME="db.stored_procedure.name";BAQ.ATTR_DB_SYSTEM_NAME="db.system.name";BAQ.DB_SYSTEM_NAME_VALUE_MARIADB="mariadb";BAQ.DB_SYSTEM_NAME_VALUE_MICROSOFT_SQL_SERVER="microsoft.sql_server";BAQ.DB_SYSTEM_NAME_VALUE_MYSQL="mysql";BAQ.DB_SYSTEM_NAME_VALUE_POSTGRESQL="postgresql";BAQ.ATTR_DOTNET_GC_HEAP_GENERATION="dotnet.gc.heap.generation";BAQ.DOTNET_GC_HEAP_GENERATION_VALUE_GEN0="gen0";BAQ.DOTNET_GC_HEAP_GENERATION_VALUE_GEN1="gen1";BAQ.DOTNET_GC_HEAP_GENERATION_VALUE_GEN2="gen2";BAQ.DOTNET_GC_HEAP_GENERATION_VALUE_LOH="loh";BAQ.DOTNET_GC_HEAP_GENERATION_VALUE_POH="poh";BAQ.ATTR_ERROR_TYPE="error.type";BAQ.ERROR_TYPE_VALUE_OTHER="_OTHER";BAQ.ATTR_EXCEPTION_ESCAPED="exception.escaped";BAQ.ATTR_EXCEPTION_MESSAGE="exception.message";BAQ.ATTR_EXCEPTION_STACKTRACE="exception.stacktrace";BAQ.ATTR_EXCEPTION_TYPE="exception.type";var keB=(A)=>`http.request.header.${A}`;BAQ.ATTR_HTTP_REQUEST_HEADER=keB;BAQ.ATTR_HTTP_REQUEST_METHOD="http.request.method";BAQ.HTTP_REQUEST_METHOD_VALUE_OTHER="_OTHER";BAQ.HTTP_REQUEST_METHOD_VALUE_CONNECT="CONNECT";BAQ.HTTP_REQUEST_METHOD_VALUE_DELETE="DELETE";BAQ.HTTP_REQUEST_METHOD_VALUE_GET="GET";BAQ.HTTP_REQUEST_METHOD_VALUE_HEAD="HEAD";BAQ.HTTP_REQUEST_METHOD_VALUE_OPTIONS="OPTIONS";BAQ.HTTP_REQUEST_METHOD_VALUE_PATCH="PATCH";BAQ.HTTP_REQUEST_METHOD_VALUE_POST="POST";BAQ.HTTP_REQUEST_METHOD_VALUE_PUT="PUT";BAQ.HTTP_REQUEST_METHOD_VALUE_TRACE="TRACE";BAQ.ATTR_HTTP_REQUEST_METHOD_ORIGINAL="http.request.method_original";BAQ.ATTR_HTTP_REQUEST_RESEND_COUNT="http.request.resend_count";var _eB=(A)=>`http.response.header.${A}`;BAQ.ATTR_HTTP_RESPONSE_HEADER=_eB;BAQ.ATTR_HTTP_RESPONSE_STATUS_CODE="http.response.status_code";BAQ.ATTR_HTTP_ROUTE="http.route";BAQ.ATTR_JVM_GC_ACTION="jvm.gc.action";BAQ.ATTR_JVM_GC_NAME="jvm.gc.name";BAQ.ATTR_JVM_MEMORY_POOL_NAME="jvm.memory.pool.name";BAQ.ATTR_JVM_MEMORY_TYPE="jvm.memory.type";BAQ.JVM_MEMORY_TYPE_VALUE_HEAP="heap";BAQ.JVM_MEMORY_TYPE_VALUE_NON_HEAP="non_heap";BAQ.ATTR_JVM_THREAD_DAEMON="jvm.thread.daemon";BAQ.ATTR_JVM_THREAD_STATE="jvm.thread.state";BAQ.JVM_THREAD_STATE_VALUE_BLOCKED="blocked";BAQ.JVM_THREAD_STATE_VALUE_NEW="new";BAQ.JVM_THREAD_STATE_VALUE_RUNNABLE="runnable";BAQ.JVM_THREAD_STATE_VALUE_TERMINATED="terminated";BAQ.JVM_THREAD_STATE_VALUE_TIMED_WAITING="timed_waiting";BAQ.JVM_THREAD_STATE_VALUE_WAITING="waiting";BAQ.ATTR_NETWORK_LOCAL_ADDRESS="network.local.address";BAQ.ATTR_NETWORK_LOCAL_PORT="network.local.port";BAQ.ATTR_NETWORK_PEER_ADDRESS="network.peer.address";BAQ.ATTR_NETWORK_PEER_PORT="network.peer.port";BAQ.ATTR_NETWORK_PROTOCOL_NAME="network.protocol.name";BAQ.ATTR_NETWORK_PROTOCOL_VERSION="network.protocol.version";BAQ.ATTR_NETWORK_TRANSPORT="network.transport";BAQ.NETWORK_TRANSPORT_VALUE_PIPE="pipe";BAQ.NETWORK_TRANSPORT_VALUE_QUIC="quic";BAQ.NETWORK_TRANSPORT_VALUE_TCP="tcp";BAQ.NETWORK_TRANSPORT_VALUE_UDP="udp";BAQ.NETWORK_TRANSPORT_VALUE_UNIX="unix";BAQ.ATTR_NETWORK_TYPE="network.type";BAQ.NETWORK_TYPE_VALUE_IPV4="ipv4";BAQ.NETWORK_TYPE_VALUE_IPV6="ipv6";BAQ.ATTR_OTEL_SCOPE_NAME="otel.scope.name";BAQ.ATTR_OTEL_SCOPE_VERSION="otel.scope.version";BAQ.ATTR_OTEL_STATUS_CODE="otel.status_code";BAQ.OTEL_STATUS_CODE_VALUE_ERROR="ERROR";BAQ.OTEL_STATUS_CODE_VALUE_OK="OK";BAQ.ATTR_OTEL_STATUS_DESCRIPTION="otel.status_description";BAQ.ATTR_SERVER_ADDRESS="server.address";BAQ.ATTR_SERVER_PORT="server.port";BAQ.ATTR_SERVICE_NAME="service.name";BAQ.ATTR_SERVICE_VERSION="service.version";BAQ.ATTR_SIGNALR_CONNECTION_STATUS="signalr.connection.status";BAQ.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN="app_shutdown";BAQ.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE="normal_closure";BAQ.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT="timeout";BAQ.ATTR_SIGNALR_TRANSPORT="signalr.transport";BAQ.SIGNALR_TRANSPORT_VALUE_LONG_POLLING="long_polling";BAQ.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS="server_sent_events";BAQ.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS="web_sockets";BAQ.ATTR_TELEMETRY_SDK_LANGUAGE="telemetry.sdk.language";BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_CPP="cpp";BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET="dotnet";BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG="erlang";BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_GO="go";BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA="java";BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS="nodejs";BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_PHP="php";BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON="python";BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY="ruby";BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_RUST="rust";BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT="swift";BAQ.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS="webjs";BAQ.ATTR_TELEMETRY_SDK_NAME="telemetry.sdk.name";BAQ.ATTR_TELEMETRY_SDK_VERSION="telemetry.sdk.version";BAQ.ATTR_URL_FRAGMENT="url.fragment";BAQ.ATTR_URL_FULL="url.full";BAQ.ATTR_URL_PATH="url.path";BAQ.ATTR_URL_QUERY="url.query";BAQ.ATTR_URL_SCHEME="url.scheme";BAQ.ATTR_USER_AGENT_ORIGINAL="user_agent.original"});var ZAQ=R((GAQ)=>{Object.defineProperty(GAQ,"__esModule",{value:!0});GAQ.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS=GAQ.METRIC_KESTREL_UPGRADED_CONNECTIONS=GAQ.METRIC_KESTREL_TLS_HANDSHAKE_DURATION=GAQ.METRIC_KESTREL_REJECTED_CONNECTIONS=GAQ.METRIC_KESTREL_QUEUED_REQUESTS=GAQ.METRIC_KESTREL_QUEUED_CONNECTIONS=GAQ.METRIC_KESTREL_CONNECTION_DURATION=GAQ.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES=GAQ.METRIC_KESTREL_ACTIVE_CONNECTIONS=GAQ.METRIC_JVM_THREAD_COUNT=GAQ.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC=GAQ.METRIC_JVM_MEMORY_USED=GAQ.METRIC_JVM_MEMORY_LIMIT=GAQ.METRIC_JVM_MEMORY_COMMITTED=GAQ.METRIC_JVM_GC_DURATION=GAQ.METRIC_JVM_CPU_TIME=GAQ.METRIC_JVM_CPU_RECENT_UTILIZATION=GAQ.METRIC_JVM_CPU_COUNT=GAQ.METRIC_JVM_CLASS_UNLOADED=GAQ.METRIC_JVM_CLASS_LOADED=GAQ.METRIC_JVM_CLASS_COUNT=GAQ.METRIC_HTTP_SERVER_REQUEST_DURATION=GAQ.METRIC_HTTP_CLIENT_REQUEST_DURATION=GAQ.METRIC_DOTNET_TIMER_COUNT=GAQ.METRIC_DOTNET_THREAD_POOL_WORK_ITEM_COUNT=GAQ.METRIC_DOTNET_THREAD_POOL_THREAD_COUNT=GAQ.METRIC_DOTNET_THREAD_POOL_QUEUE_LENGTH=GAQ.METRIC_DOTNET_PROCESS_MEMORY_WORKING_SET=GAQ.METRIC_DOTNET_PROCESS_CPU_TIME=GAQ.METRIC_DOTNET_PROCESS_CPU_COUNT=GAQ.METRIC_DOTNET_MONITOR_LOCK_CONTENTIONS=GAQ.METRIC_DOTNET_JIT_COMPILED_METHODS=GAQ.METRIC_DOTNET_JIT_COMPILED_IL_SIZE=GAQ.METRIC_DOTNET_JIT_COMPILATION_TIME=GAQ.METRIC_DOTNET_GC_PAUSE_TIME=GAQ.METRIC_DOTNET_GC_LAST_COLLECTION_MEMORY_COMMITTED_SIZE=GAQ.METRIC_DOTNET_GC_LAST_COLLECTION_HEAP_SIZE=GAQ.METRIC_DOTNET_GC_LAST_COLLECTION_HEAP_FRAGMENTATION_SIZE=GAQ.METRIC_DOTNET_GC_HEAP_TOTAL_ALLOCATED=GAQ.METRIC_DOTNET_GC_COLLECTIONS=GAQ.METRIC_DOTNET_EXCEPTIONS=GAQ.METRIC_DOTNET_ASSEMBLY_COUNT=GAQ.METRIC_DB_CLIENT_OPERATION_DURATION=GAQ.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS=GAQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS=GAQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION=GAQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE=GAQ.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS=GAQ.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES=GAQ.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS=void 0;GAQ.METRIC_SIGNALR_SERVER_CONNECTION_DURATION=void 0;GAQ.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS="aspnetcore.diagnostics.exceptions";GAQ.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES="aspnetcore.rate_limiting.active_request_leases";GAQ.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS="aspnetcore.rate_limiting.queued_requests";GAQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE="aspnetcore.rate_limiting.request.time_in_queue";GAQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION="aspnetcore.rate_limiting.request_lease.duration";GAQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS="aspnetcore.rate_limiting.requests";GAQ.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS="aspnetcore.routing.match_attempts";GAQ.METRIC_DB_CLIENT_OPERATION_DURATION="db.client.operation.duration";GAQ.METRIC_DOTNET_ASSEMBLY_COUNT="dotnet.assembly.count";GAQ.METRIC_DOTNET_EXCEPTIONS="dotnet.exceptions";GAQ.METRIC_DOTNET_GC_COLLECTIONS="dotnet.gc.collections";GAQ.METRIC_DOTNET_GC_HEAP_TOTAL_ALLOCATED="dotnet.gc.heap.total_allocated";GAQ.METRIC_DOTNET_GC_LAST_COLLECTION_HEAP_FRAGMENTATION_SIZE="dotnet.gc.last_collection.heap.fragmentation.size";GAQ.METRIC_DOTNET_GC_LAST_COLLECTION_HEAP_SIZE="dotnet.gc.last_collection.heap.size";GAQ.METRIC_DOTNET_GC_LAST_COLLECTION_MEMORY_COMMITTED_SIZE="dotnet.gc.last_collection.memory.committed_size";GAQ.METRIC_DOTNET_GC_PAUSE_TIME="dotnet.gc.pause.time";GAQ.METRIC_DOTNET_JIT_COMPILATION_TIME="dotnet.jit.compilation.time";GAQ.METRIC_DOTNET_JIT_COMPILED_IL_SIZE="dotnet.jit.compiled_il.size";GAQ.METRIC_DOTNET_JIT_COMPILED_METHODS="dotnet.jit.compiled_methods";GAQ.METRIC_DOTNET_MONITOR_LOCK_CONTENTIONS="dotnet.monitor.lock_contentions";GAQ.METRIC_DOTNET_PROCESS_CPU_COUNT="dotnet.process.cpu.count";GAQ.METRIC_DOTNET_PROCESS_CPU_TIME="dotnet.process.cpu.time";GAQ.METRIC_DOTNET_PROCESS_MEMORY_WORKING_SET="dotnet.process.memory.working_set";GAQ.METRIC_DOTNET_THREAD_POOL_QUEUE_LENGTH="dotnet.thread_pool.queue.length";GAQ.METRIC_DOTNET_THREAD_POOL_THREAD_COUNT="dotnet.thread_pool.thread.count";GAQ.METRIC_DOTNET_THREAD_POOL_WORK_ITEM_COUNT="dotnet.thread_pool.work_item.count";GAQ.METRIC_DOTNET_TIMER_COUNT="dotnet.timer.count";GAQ.METRIC_HTTP_CLIENT_REQUEST_DURATION="http.client.request.duration";GAQ.METRIC_HTTP_SERVER_REQUEST_DURATION="http.server.request.duration";GAQ.METRIC_JVM_CLASS_COUNT="jvm.class.count";GAQ.METRIC_JVM_CLASS_LOADED="jvm.class.loaded";GAQ.METRIC_JVM_CLASS_UNLOADED="jvm.class.unloaded";GAQ.METRIC_JVM_CPU_COUNT="jvm.cpu.count";GAQ.METRIC_JVM_CPU_RECENT_UTILIZATION="jvm.cpu.recent_utilization";GAQ.METRIC_JVM_CPU_TIME="jvm.cpu.time";GAQ.METRIC_JVM_GC_DURATION="jvm.gc.duration";GAQ.METRIC_JVM_MEMORY_COMMITTED="jvm.memory.committed";GAQ.METRIC_JVM_MEMORY_LIMIT="jvm.memory.limit";GAQ.METRIC_JVM_MEMORY_USED="jvm.memory.used";GAQ.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC="jvm.memory.used_after_last_gc";GAQ.METRIC_JVM_THREAD_COUNT="jvm.thread.count";GAQ.METRIC_KESTREL_ACTIVE_CONNECTIONS="kestrel.active_connections";GAQ.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES="kestrel.active_tls_handshakes";GAQ.METRIC_KESTREL_CONNECTION_DURATION="kestrel.connection.duration";GAQ.METRIC_KESTREL_QUEUED_CONNECTIONS="kestrel.queued_connections";GAQ.METRIC_KESTREL_QUEUED_REQUESTS="kestrel.queued_requests";GAQ.METRIC_KESTREL_REJECTED_CONNECTIONS="kestrel.rejected_connections";GAQ.METRIC_KESTREL_TLS_HANDSHAKE_DURATION="kestrel.tls_handshake.duration";GAQ.METRIC_KESTREL_UPGRADED_CONNECTIONS="kestrel.upgraded_connections";GAQ.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS="signalr.server.active_connections";GAQ.METRIC_SIGNALR_SERVER_CONNECTION_DURATION="signalr.server.connection.duration"});var dB=R((KX)=>{var oB0=KX&&KX.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;var J=Object.getOwnPropertyDescriptor(Q,B);if(!J||("get"in J?!Q.__esModule:J.writable||J.configurable))J={enumerable:!0,get:function(){return Q[B]}};Object.defineProperty(A,Y,J)}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),JP=KX&&KX.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))oB0(Q,A,B)};Object.defineProperty(KX,"__esModule",{value:!0});JP(woA(),KX);JP(QAQ(),KX);JP(XAQ(),KX);JP(ZAQ(),KX)});var Ji=R(($AQ)=>{Object.defineProperty($AQ,"__esModule",{value:!0});$AQ.createConstMap=void 0;function tB0(A){let Q={},B=A.length;for(let Y=0;Y{Object.defineProperty(BJQ,"__esModule",{value:!0});BJQ.SEMATTRS_NET_HOST_CARRIER_ICC=BJQ.SEMATTRS_NET_HOST_CARRIER_MNC=BJQ.SEMATTRS_NET_HOST_CARRIER_MCC=BJQ.SEMATTRS_NET_HOST_CARRIER_NAME=BJQ.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=BJQ.SEMATTRS_NET_HOST_CONNECTION_TYPE=BJQ.SEMATTRS_NET_HOST_NAME=BJQ.SEMATTRS_NET_HOST_PORT=BJQ.SEMATTRS_NET_HOST_IP=BJQ.SEMATTRS_NET_PEER_NAME=BJQ.SEMATTRS_NET_PEER_PORT=BJQ.SEMATTRS_NET_PEER_IP=BJQ.SEMATTRS_NET_TRANSPORT=BJQ.SEMATTRS_FAAS_INVOKED_REGION=BJQ.SEMATTRS_FAAS_INVOKED_PROVIDER=BJQ.SEMATTRS_FAAS_INVOKED_NAME=BJQ.SEMATTRS_FAAS_COLDSTART=BJQ.SEMATTRS_FAAS_CRON=BJQ.SEMATTRS_FAAS_TIME=BJQ.SEMATTRS_FAAS_DOCUMENT_NAME=BJQ.SEMATTRS_FAAS_DOCUMENT_TIME=BJQ.SEMATTRS_FAAS_DOCUMENT_OPERATION=BJQ.SEMATTRS_FAAS_DOCUMENT_COLLECTION=BJQ.SEMATTRS_FAAS_EXECUTION=BJQ.SEMATTRS_FAAS_TRIGGER=BJQ.SEMATTRS_EXCEPTION_ESCAPED=BJQ.SEMATTRS_EXCEPTION_STACKTRACE=BJQ.SEMATTRS_EXCEPTION_MESSAGE=BJQ.SEMATTRS_EXCEPTION_TYPE=BJQ.SEMATTRS_DB_SQL_TABLE=BJQ.SEMATTRS_DB_MONGODB_COLLECTION=BJQ.SEMATTRS_DB_REDIS_DATABASE_INDEX=BJQ.SEMATTRS_DB_HBASE_NAMESPACE=BJQ.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=BJQ.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=BJQ.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=BJQ.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=BJQ.SEMATTRS_DB_CASSANDRA_TABLE=BJQ.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=BJQ.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=BJQ.SEMATTRS_DB_CASSANDRA_KEYSPACE=BJQ.SEMATTRS_DB_MSSQL_INSTANCE_NAME=BJQ.SEMATTRS_DB_OPERATION=BJQ.SEMATTRS_DB_STATEMENT=BJQ.SEMATTRS_DB_NAME=BJQ.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=BJQ.SEMATTRS_DB_USER=BJQ.SEMATTRS_DB_CONNECTION_STRING=BJQ.SEMATTRS_DB_SYSTEM=BJQ.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=void 0;BJQ.SEMATTRS_MESSAGING_DESTINATION_KIND=BJQ.SEMATTRS_MESSAGING_DESTINATION=BJQ.SEMATTRS_MESSAGING_SYSTEM=BJQ.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=BJQ.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=BJQ.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=BJQ.SEMATTRS_AWS_DYNAMODB_COUNT=BJQ.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=BJQ.SEMATTRS_AWS_DYNAMODB_SEGMENT=BJQ.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=BJQ.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=BJQ.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=BJQ.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=BJQ.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=BJQ.SEMATTRS_AWS_DYNAMODB_SELECT=BJQ.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=BJQ.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=BJQ.SEMATTRS_AWS_DYNAMODB_LIMIT=BJQ.SEMATTRS_AWS_DYNAMODB_PROJECTION=BJQ.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=BJQ.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=BJQ.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=BJQ.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=BJQ.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=BJQ.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=BJQ.SEMATTRS_HTTP_CLIENT_IP=BJQ.SEMATTRS_HTTP_ROUTE=BJQ.SEMATTRS_HTTP_SERVER_NAME=BJQ.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=BJQ.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=BJQ.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=BJQ.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=BJQ.SEMATTRS_HTTP_USER_AGENT=BJQ.SEMATTRS_HTTP_FLAVOR=BJQ.SEMATTRS_HTTP_STATUS_CODE=BJQ.SEMATTRS_HTTP_SCHEME=BJQ.SEMATTRS_HTTP_HOST=BJQ.SEMATTRS_HTTP_TARGET=BJQ.SEMATTRS_HTTP_URL=BJQ.SEMATTRS_HTTP_METHOD=BJQ.SEMATTRS_CODE_LINENO=BJQ.SEMATTRS_CODE_FILEPATH=BJQ.SEMATTRS_CODE_NAMESPACE=BJQ.SEMATTRS_CODE_FUNCTION=BJQ.SEMATTRS_THREAD_NAME=BJQ.SEMATTRS_THREAD_ID=BJQ.SEMATTRS_ENDUSER_SCOPE=BJQ.SEMATTRS_ENDUSER_ROLE=BJQ.SEMATTRS_ENDUSER_ID=BJQ.SEMATTRS_PEER_SERVICE=void 0;BJQ.DBSYSTEMVALUES_FILEMAKER=BJQ.DBSYSTEMVALUES_DERBY=BJQ.DBSYSTEMVALUES_FIREBIRD=BJQ.DBSYSTEMVALUES_ADABAS=BJQ.DBSYSTEMVALUES_CACHE=BJQ.DBSYSTEMVALUES_EDB=BJQ.DBSYSTEMVALUES_FIRSTSQL=BJQ.DBSYSTEMVALUES_INGRES=BJQ.DBSYSTEMVALUES_HANADB=BJQ.DBSYSTEMVALUES_MAXDB=BJQ.DBSYSTEMVALUES_PROGRESS=BJQ.DBSYSTEMVALUES_HSQLDB=BJQ.DBSYSTEMVALUES_CLOUDSCAPE=BJQ.DBSYSTEMVALUES_HIVE=BJQ.DBSYSTEMVALUES_REDSHIFT=BJQ.DBSYSTEMVALUES_POSTGRESQL=BJQ.DBSYSTEMVALUES_DB2=BJQ.DBSYSTEMVALUES_ORACLE=BJQ.DBSYSTEMVALUES_MYSQL=BJQ.DBSYSTEMVALUES_MSSQL=BJQ.DBSYSTEMVALUES_OTHER_SQL=BJQ.SemanticAttributes=BJQ.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=BJQ.SEMATTRS_MESSAGE_COMPRESSED_SIZE=BJQ.SEMATTRS_MESSAGE_ID=BJQ.SEMATTRS_MESSAGE_TYPE=BJQ.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=BJQ.SEMATTRS_RPC_JSONRPC_ERROR_CODE=BJQ.SEMATTRS_RPC_JSONRPC_REQUEST_ID=BJQ.SEMATTRS_RPC_JSONRPC_VERSION=BJQ.SEMATTRS_RPC_GRPC_STATUS_CODE=BJQ.SEMATTRS_RPC_METHOD=BJQ.SEMATTRS_RPC_SERVICE=BJQ.SEMATTRS_RPC_SYSTEM=BJQ.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=BJQ.SEMATTRS_MESSAGING_KAFKA_PARTITION=BJQ.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=BJQ.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=BJQ.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=BJQ.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=BJQ.SEMATTRS_MESSAGING_CONSUMER_ID=BJQ.SEMATTRS_MESSAGING_OPERATION=BJQ.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=BJQ.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=BJQ.SEMATTRS_MESSAGING_CONVERSATION_ID=BJQ.SEMATTRS_MESSAGING_MESSAGE_ID=BJQ.SEMATTRS_MESSAGING_URL=BJQ.SEMATTRS_MESSAGING_PROTOCOL_VERSION=BJQ.SEMATTRS_MESSAGING_PROTOCOL=BJQ.SEMATTRS_MESSAGING_TEMP_DESTINATION=void 0;BJQ.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=BJQ.FaasDocumentOperationValues=BJQ.FAASDOCUMENTOPERATIONVALUES_DELETE=BJQ.FAASDOCUMENTOPERATIONVALUES_EDIT=BJQ.FAASDOCUMENTOPERATIONVALUES_INSERT=BJQ.FaasTriggerValues=BJQ.FAASTRIGGERVALUES_OTHER=BJQ.FAASTRIGGERVALUES_TIMER=BJQ.FAASTRIGGERVALUES_PUBSUB=BJQ.FAASTRIGGERVALUES_HTTP=BJQ.FAASTRIGGERVALUES_DATASOURCE=BJQ.DbCassandraConsistencyLevelValues=BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=BJQ.DbSystemValues=BJQ.DBSYSTEMVALUES_COCKROACHDB=BJQ.DBSYSTEMVALUES_MEMCACHED=BJQ.DBSYSTEMVALUES_ELASTICSEARCH=BJQ.DBSYSTEMVALUES_GEODE=BJQ.DBSYSTEMVALUES_NEO4J=BJQ.DBSYSTEMVALUES_DYNAMODB=BJQ.DBSYSTEMVALUES_COSMOSDB=BJQ.DBSYSTEMVALUES_COUCHDB=BJQ.DBSYSTEMVALUES_COUCHBASE=BJQ.DBSYSTEMVALUES_REDIS=BJQ.DBSYSTEMVALUES_MONGODB=BJQ.DBSYSTEMVALUES_HBASE=BJQ.DBSYSTEMVALUES_CASSANDRA=BJQ.DBSYSTEMVALUES_COLDFUSION=BJQ.DBSYSTEMVALUES_H2=BJQ.DBSYSTEMVALUES_VERTICA=BJQ.DBSYSTEMVALUES_TERADATA=BJQ.DBSYSTEMVALUES_SYBASE=BJQ.DBSYSTEMVALUES_SQLITE=BJQ.DBSYSTEMVALUES_POINTBASE=BJQ.DBSYSTEMVALUES_PERVASIVE=BJQ.DBSYSTEMVALUES_NETEZZA=BJQ.DBSYSTEMVALUES_MARIADB=BJQ.DBSYSTEMVALUES_INTERBASE=BJQ.DBSYSTEMVALUES_INSTANTDB=BJQ.DBSYSTEMVALUES_INFORMIX=void 0;BJQ.MESSAGINGOPERATIONVALUES_RECEIVE=BJQ.MessagingDestinationKindValues=BJQ.MESSAGINGDESTINATIONKINDVALUES_TOPIC=BJQ.MESSAGINGDESTINATIONKINDVALUES_QUEUE=BJQ.HttpFlavorValues=BJQ.HTTPFLAVORVALUES_QUIC=BJQ.HTTPFLAVORVALUES_SPDY=BJQ.HTTPFLAVORVALUES_HTTP_2_0=BJQ.HTTPFLAVORVALUES_HTTP_1_1=BJQ.HTTPFLAVORVALUES_HTTP_1_0=BJQ.NetHostConnectionSubtypeValues=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_NR=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=BJQ.NetHostConnectionTypeValues=BJQ.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=BJQ.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=BJQ.NETHOSTCONNECTIONTYPEVALUES_CELL=BJQ.NETHOSTCONNECTIONTYPEVALUES_WIRED=BJQ.NETHOSTCONNECTIONTYPEVALUES_WIFI=BJQ.NetTransportValues=BJQ.NETTRANSPORTVALUES_OTHER=BJQ.NETTRANSPORTVALUES_INPROC=BJQ.NETTRANSPORTVALUES_PIPE=BJQ.NETTRANSPORTVALUES_UNIX=BJQ.NETTRANSPORTVALUES_IP=BJQ.NETTRANSPORTVALUES_IP_UDP=BJQ.NETTRANSPORTVALUES_IP_TCP=BJQ.FaasInvokedProviderValues=BJQ.FAASINVOKEDPROVIDERVALUES_GCP=BJQ.FAASINVOKEDPROVIDERVALUES_AZURE=BJQ.FAASINVOKEDPROVIDERVALUES_AWS=void 0;BJQ.MessageTypeValues=BJQ.MESSAGETYPEVALUES_RECEIVED=BJQ.MESSAGETYPEVALUES_SENT=BJQ.RpcGrpcStatusCodeValues=BJQ.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=BJQ.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=BJQ.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=BJQ.RPCGRPCSTATUSCODEVALUES_INTERNAL=BJQ.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=BJQ.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=BJQ.RPCGRPCSTATUSCODEVALUES_ABORTED=BJQ.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=BJQ.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=BJQ.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=BJQ.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=BJQ.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=BJQ.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=BJQ.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=BJQ.RPCGRPCSTATUSCODEVALUES_UNKNOWN=BJQ.RPCGRPCSTATUSCODEVALUES_CANCELLED=BJQ.RPCGRPCSTATUSCODEVALUES_OK=BJQ.MessagingOperationValues=BJQ.MESSAGINGOPERATIONVALUES_PROCESS=void 0;var i5=Ji(),EAQ="aws.lambda.invoked_arn",KAQ="db.system",VAQ="db.connection_string",IAQ="db.user",HAQ="db.jdbc.driver_classname",DAQ="db.name",NAQ="db.statement",LAQ="db.operation",qAQ="db.mssql.instance_name",MAQ="db.cassandra.keyspace",zAQ="db.cassandra.page_size",RAQ="db.cassandra.consistency_level",wAQ="db.cassandra.table",jAQ="db.cassandra.idempotence",OAQ="db.cassandra.speculative_execution_count",PAQ="db.cassandra.coordinator.id",TAQ="db.cassandra.coordinator.dc",SAQ="db.hbase.namespace",kAQ="db.redis.database_index",_AQ="db.mongodb.collection",vAQ="db.sql.table",yAQ="exception.type",gAQ="exception.message",hAQ="exception.stacktrace",xAQ="exception.escaped",fAQ="faas.trigger",bAQ="faas.execution",mAQ="faas.document.collection",uAQ="faas.document.operation",dAQ="faas.document.time",cAQ="faas.document.name",lAQ="faas.time",pAQ="faas.cron",iAQ="faas.coldstart",nAQ="faas.invoked_name",sAQ="faas.invoked_provider",rAQ="faas.invoked_region",aAQ="net.transport",oAQ="net.peer.ip",tAQ="net.peer.port",eAQ="net.peer.name",AQQ="net.host.ip",QQQ="net.host.port",BQQ="net.host.name",YQQ="net.host.connection.type",JQQ="net.host.connection.subtype",CQQ="net.host.carrier.name",XQQ="net.host.carrier.mcc",GQQ="net.host.carrier.mnc",WQQ="net.host.carrier.icc",FQQ="peer.service",ZQQ="enduser.id",$QQ="enduser.role",UQQ="enduser.scope",EQQ="thread.id",KQQ="thread.name",VQQ="code.function",IQQ="code.namespace",HQQ="code.filepath",DQQ="code.lineno",NQQ="http.method",LQQ="http.url",qQQ="http.target",MQQ="http.host",zQQ="http.scheme",RQQ="http.status_code",wQQ="http.flavor",jQQ="http.user_agent",OQQ="http.request_content_length",PQQ="http.request_content_length_uncompressed",TQQ="http.response_content_length",SQQ="http.response_content_length_uncompressed",kQQ="http.server_name",_QQ="http.route",vQQ="http.client_ip",yQQ="aws.dynamodb.table_names",gQQ="aws.dynamodb.consumed_capacity",hQQ="aws.dynamodb.item_collection_metrics",xQQ="aws.dynamodb.provisioned_read_capacity",fQQ="aws.dynamodb.provisioned_write_capacity",bQQ="aws.dynamodb.consistent_read",mQQ="aws.dynamodb.projection",uQQ="aws.dynamodb.limit",dQQ="aws.dynamodb.attributes_to_get",cQQ="aws.dynamodb.index_name",lQQ="aws.dynamodb.select",pQQ="aws.dynamodb.global_secondary_indexes",iQQ="aws.dynamodb.local_secondary_indexes",nQQ="aws.dynamodb.exclusive_start_table",sQQ="aws.dynamodb.table_count",rQQ="aws.dynamodb.scan_forward",aQQ="aws.dynamodb.segment",oQQ="aws.dynamodb.total_segments",tQQ="aws.dynamodb.count",eQQ="aws.dynamodb.scanned_count",ABQ="aws.dynamodb.attribute_definitions",QBQ="aws.dynamodb.global_secondary_index_updates",BBQ="messaging.system",YBQ="messaging.destination",JBQ="messaging.destination_kind",CBQ="messaging.temp_destination",XBQ="messaging.protocol",GBQ="messaging.protocol_version",WBQ="messaging.url",FBQ="messaging.message_id",ZBQ="messaging.conversation_id",$BQ="messaging.message_payload_size_bytes",UBQ="messaging.message_payload_compressed_size_bytes",EBQ="messaging.operation",KBQ="messaging.consumer_id",VBQ="messaging.rabbitmq.routing_key",IBQ="messaging.kafka.message_key",HBQ="messaging.kafka.consumer_group",DBQ="messaging.kafka.client_id",NBQ="messaging.kafka.partition",LBQ="messaging.kafka.tombstone",qBQ="rpc.system",MBQ="rpc.service",zBQ="rpc.method",RBQ="rpc.grpc.status_code",wBQ="rpc.jsonrpc.version",jBQ="rpc.jsonrpc.request_id",OBQ="rpc.jsonrpc.error_code",PBQ="rpc.jsonrpc.error_message",TBQ="message.type",SBQ="message.id",kBQ="message.compressed_size",_BQ="message.uncompressed_size";BJQ.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=EAQ;BJQ.SEMATTRS_DB_SYSTEM=KAQ;BJQ.SEMATTRS_DB_CONNECTION_STRING=VAQ;BJQ.SEMATTRS_DB_USER=IAQ;BJQ.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=HAQ;BJQ.SEMATTRS_DB_NAME=DAQ;BJQ.SEMATTRS_DB_STATEMENT=NAQ;BJQ.SEMATTRS_DB_OPERATION=LAQ;BJQ.SEMATTRS_DB_MSSQL_INSTANCE_NAME=qAQ;BJQ.SEMATTRS_DB_CASSANDRA_KEYSPACE=MAQ;BJQ.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=zAQ;BJQ.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=RAQ;BJQ.SEMATTRS_DB_CASSANDRA_TABLE=wAQ;BJQ.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=jAQ;BJQ.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=OAQ;BJQ.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=PAQ;BJQ.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=TAQ;BJQ.SEMATTRS_DB_HBASE_NAMESPACE=SAQ;BJQ.SEMATTRS_DB_REDIS_DATABASE_INDEX=kAQ;BJQ.SEMATTRS_DB_MONGODB_COLLECTION=_AQ;BJQ.SEMATTRS_DB_SQL_TABLE=vAQ;BJQ.SEMATTRS_EXCEPTION_TYPE=yAQ;BJQ.SEMATTRS_EXCEPTION_MESSAGE=gAQ;BJQ.SEMATTRS_EXCEPTION_STACKTRACE=hAQ;BJQ.SEMATTRS_EXCEPTION_ESCAPED=xAQ;BJQ.SEMATTRS_FAAS_TRIGGER=fAQ;BJQ.SEMATTRS_FAAS_EXECUTION=bAQ;BJQ.SEMATTRS_FAAS_DOCUMENT_COLLECTION=mAQ;BJQ.SEMATTRS_FAAS_DOCUMENT_OPERATION=uAQ;BJQ.SEMATTRS_FAAS_DOCUMENT_TIME=dAQ;BJQ.SEMATTRS_FAAS_DOCUMENT_NAME=cAQ;BJQ.SEMATTRS_FAAS_TIME=lAQ;BJQ.SEMATTRS_FAAS_CRON=pAQ;BJQ.SEMATTRS_FAAS_COLDSTART=iAQ;BJQ.SEMATTRS_FAAS_INVOKED_NAME=nAQ;BJQ.SEMATTRS_FAAS_INVOKED_PROVIDER=sAQ;BJQ.SEMATTRS_FAAS_INVOKED_REGION=rAQ;BJQ.SEMATTRS_NET_TRANSPORT=aAQ;BJQ.SEMATTRS_NET_PEER_IP=oAQ;BJQ.SEMATTRS_NET_PEER_PORT=tAQ;BJQ.SEMATTRS_NET_PEER_NAME=eAQ;BJQ.SEMATTRS_NET_HOST_IP=AQQ;BJQ.SEMATTRS_NET_HOST_PORT=QQQ;BJQ.SEMATTRS_NET_HOST_NAME=BQQ;BJQ.SEMATTRS_NET_HOST_CONNECTION_TYPE=YQQ;BJQ.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=JQQ;BJQ.SEMATTRS_NET_HOST_CARRIER_NAME=CQQ;BJQ.SEMATTRS_NET_HOST_CARRIER_MCC=XQQ;BJQ.SEMATTRS_NET_HOST_CARRIER_MNC=GQQ;BJQ.SEMATTRS_NET_HOST_CARRIER_ICC=WQQ;BJQ.SEMATTRS_PEER_SERVICE=FQQ;BJQ.SEMATTRS_ENDUSER_ID=ZQQ;BJQ.SEMATTRS_ENDUSER_ROLE=$QQ;BJQ.SEMATTRS_ENDUSER_SCOPE=UQQ;BJQ.SEMATTRS_THREAD_ID=EQQ;BJQ.SEMATTRS_THREAD_NAME=KQQ;BJQ.SEMATTRS_CODE_FUNCTION=VQQ;BJQ.SEMATTRS_CODE_NAMESPACE=IQQ;BJQ.SEMATTRS_CODE_FILEPATH=HQQ;BJQ.SEMATTRS_CODE_LINENO=DQQ;BJQ.SEMATTRS_HTTP_METHOD=NQQ;BJQ.SEMATTRS_HTTP_URL=LQQ;BJQ.SEMATTRS_HTTP_TARGET=qQQ;BJQ.SEMATTRS_HTTP_HOST=MQQ;BJQ.SEMATTRS_HTTP_SCHEME=zQQ;BJQ.SEMATTRS_HTTP_STATUS_CODE=RQQ;BJQ.SEMATTRS_HTTP_FLAVOR=wQQ;BJQ.SEMATTRS_HTTP_USER_AGENT=jQQ;BJQ.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=OQQ;BJQ.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=PQQ;BJQ.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=TQQ;BJQ.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=SQQ;BJQ.SEMATTRS_HTTP_SERVER_NAME=kQQ;BJQ.SEMATTRS_HTTP_ROUTE=_QQ;BJQ.SEMATTRS_HTTP_CLIENT_IP=vQQ;BJQ.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=yQQ;BJQ.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=gQQ;BJQ.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=hQQ;BJQ.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=xQQ;BJQ.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=fQQ;BJQ.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=bQQ;BJQ.SEMATTRS_AWS_DYNAMODB_PROJECTION=mQQ;BJQ.SEMATTRS_AWS_DYNAMODB_LIMIT=uQQ;BJQ.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=dQQ;BJQ.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=cQQ;BJQ.SEMATTRS_AWS_DYNAMODB_SELECT=lQQ;BJQ.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=pQQ;BJQ.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=iQQ;BJQ.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=nQQ;BJQ.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=sQQ;BJQ.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=rQQ;BJQ.SEMATTRS_AWS_DYNAMODB_SEGMENT=aQQ;BJQ.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=oQQ;BJQ.SEMATTRS_AWS_DYNAMODB_COUNT=tQQ;BJQ.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=eQQ;BJQ.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=ABQ;BJQ.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=QBQ;BJQ.SEMATTRS_MESSAGING_SYSTEM=BBQ;BJQ.SEMATTRS_MESSAGING_DESTINATION=YBQ;BJQ.SEMATTRS_MESSAGING_DESTINATION_KIND=JBQ;BJQ.SEMATTRS_MESSAGING_TEMP_DESTINATION=CBQ;BJQ.SEMATTRS_MESSAGING_PROTOCOL=XBQ;BJQ.SEMATTRS_MESSAGING_PROTOCOL_VERSION=GBQ;BJQ.SEMATTRS_MESSAGING_URL=WBQ;BJQ.SEMATTRS_MESSAGING_MESSAGE_ID=FBQ;BJQ.SEMATTRS_MESSAGING_CONVERSATION_ID=ZBQ;BJQ.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=$BQ;BJQ.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=UBQ;BJQ.SEMATTRS_MESSAGING_OPERATION=EBQ;BJQ.SEMATTRS_MESSAGING_CONSUMER_ID=KBQ;BJQ.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=VBQ;BJQ.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=IBQ;BJQ.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=HBQ;BJQ.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=DBQ;BJQ.SEMATTRS_MESSAGING_KAFKA_PARTITION=NBQ;BJQ.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=LBQ;BJQ.SEMATTRS_RPC_SYSTEM=qBQ;BJQ.SEMATTRS_RPC_SERVICE=MBQ;BJQ.SEMATTRS_RPC_METHOD=zBQ;BJQ.SEMATTRS_RPC_GRPC_STATUS_CODE=RBQ;BJQ.SEMATTRS_RPC_JSONRPC_VERSION=wBQ;BJQ.SEMATTRS_RPC_JSONRPC_REQUEST_ID=jBQ;BJQ.SEMATTRS_RPC_JSONRPC_ERROR_CODE=OBQ;BJQ.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=PBQ;BJQ.SEMATTRS_MESSAGE_TYPE=TBQ;BJQ.SEMATTRS_MESSAGE_ID=SBQ;BJQ.SEMATTRS_MESSAGE_COMPRESSED_SIZE=kBQ;BJQ.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=_BQ;BJQ.SemanticAttributes=(0,i5.createConstMap)([EAQ,KAQ,VAQ,IAQ,HAQ,DAQ,NAQ,LAQ,qAQ,MAQ,zAQ,RAQ,wAQ,jAQ,OAQ,PAQ,TAQ,SAQ,kAQ,_AQ,vAQ,yAQ,gAQ,hAQ,xAQ,fAQ,bAQ,mAQ,uAQ,dAQ,cAQ,lAQ,pAQ,iAQ,nAQ,sAQ,rAQ,aAQ,oAQ,tAQ,eAQ,AQQ,QQQ,BQQ,YQQ,JQQ,CQQ,XQQ,GQQ,WQQ,FQQ,ZQQ,$QQ,UQQ,EQQ,KQQ,VQQ,IQQ,HQQ,DQQ,NQQ,LQQ,qQQ,MQQ,zQQ,RQQ,wQQ,jQQ,OQQ,PQQ,TQQ,SQQ,kQQ,_QQ,vQQ,yQQ,gQQ,hQQ,xQQ,fQQ,bQQ,mQQ,uQQ,dQQ,cQQ,lQQ,pQQ,iQQ,nQQ,sQQ,rQQ,aQQ,oQQ,tQQ,eQQ,ABQ,QBQ,BBQ,YBQ,JBQ,CBQ,XBQ,GBQ,WBQ,FBQ,ZBQ,$BQ,UBQ,EBQ,KBQ,VBQ,IBQ,HBQ,DBQ,NBQ,LBQ,qBQ,MBQ,zBQ,RBQ,wBQ,jBQ,OBQ,PBQ,TBQ,SBQ,kBQ,_BQ]);var vBQ="other_sql",yBQ="mssql",gBQ="mysql",hBQ="oracle",xBQ="db2",fBQ="postgresql",bBQ="redshift",mBQ="hive",uBQ="cloudscape",dBQ="hsqldb",cBQ="progress",lBQ="maxdb",pBQ="hanadb",iBQ="ingres",nBQ="firstsql",sBQ="edb",rBQ="cache",aBQ="adabas",oBQ="firebird",tBQ="derby",eBQ="filemaker",A0Q="informix",Q0Q="instantdb",B0Q="interbase",Y0Q="mariadb",J0Q="netezza",C0Q="pervasive",X0Q="pointbase",G0Q="sqlite",W0Q="sybase",F0Q="teradata",Z0Q="vertica",$0Q="h2",U0Q="coldfusion",E0Q="cassandra",K0Q="hbase",V0Q="mongodb",I0Q="redis",H0Q="couchbase",D0Q="couchdb",N0Q="cosmosdb",L0Q="dynamodb",q0Q="neo4j",M0Q="geode",z0Q="elasticsearch",R0Q="memcached",w0Q="cockroachdb";BJQ.DBSYSTEMVALUES_OTHER_SQL=vBQ;BJQ.DBSYSTEMVALUES_MSSQL=yBQ;BJQ.DBSYSTEMVALUES_MYSQL=gBQ;BJQ.DBSYSTEMVALUES_ORACLE=hBQ;BJQ.DBSYSTEMVALUES_DB2=xBQ;BJQ.DBSYSTEMVALUES_POSTGRESQL=fBQ;BJQ.DBSYSTEMVALUES_REDSHIFT=bBQ;BJQ.DBSYSTEMVALUES_HIVE=mBQ;BJQ.DBSYSTEMVALUES_CLOUDSCAPE=uBQ;BJQ.DBSYSTEMVALUES_HSQLDB=dBQ;BJQ.DBSYSTEMVALUES_PROGRESS=cBQ;BJQ.DBSYSTEMVALUES_MAXDB=lBQ;BJQ.DBSYSTEMVALUES_HANADB=pBQ;BJQ.DBSYSTEMVALUES_INGRES=iBQ;BJQ.DBSYSTEMVALUES_FIRSTSQL=nBQ;BJQ.DBSYSTEMVALUES_EDB=sBQ;BJQ.DBSYSTEMVALUES_CACHE=rBQ;BJQ.DBSYSTEMVALUES_ADABAS=aBQ;BJQ.DBSYSTEMVALUES_FIREBIRD=oBQ;BJQ.DBSYSTEMVALUES_DERBY=tBQ;BJQ.DBSYSTEMVALUES_FILEMAKER=eBQ;BJQ.DBSYSTEMVALUES_INFORMIX=A0Q;BJQ.DBSYSTEMVALUES_INSTANTDB=Q0Q;BJQ.DBSYSTEMVALUES_INTERBASE=B0Q;BJQ.DBSYSTEMVALUES_MARIADB=Y0Q;BJQ.DBSYSTEMVALUES_NETEZZA=J0Q;BJQ.DBSYSTEMVALUES_PERVASIVE=C0Q;BJQ.DBSYSTEMVALUES_POINTBASE=X0Q;BJQ.DBSYSTEMVALUES_SQLITE=G0Q;BJQ.DBSYSTEMVALUES_SYBASE=W0Q;BJQ.DBSYSTEMVALUES_TERADATA=F0Q;BJQ.DBSYSTEMVALUES_VERTICA=Z0Q;BJQ.DBSYSTEMVALUES_H2=$0Q;BJQ.DBSYSTEMVALUES_COLDFUSION=U0Q;BJQ.DBSYSTEMVALUES_CASSANDRA=E0Q;BJQ.DBSYSTEMVALUES_HBASE=K0Q;BJQ.DBSYSTEMVALUES_MONGODB=V0Q;BJQ.DBSYSTEMVALUES_REDIS=I0Q;BJQ.DBSYSTEMVALUES_COUCHBASE=H0Q;BJQ.DBSYSTEMVALUES_COUCHDB=D0Q;BJQ.DBSYSTEMVALUES_COSMOSDB=N0Q;BJQ.DBSYSTEMVALUES_DYNAMODB=L0Q;BJQ.DBSYSTEMVALUES_NEO4J=q0Q;BJQ.DBSYSTEMVALUES_GEODE=M0Q;BJQ.DBSYSTEMVALUES_ELASTICSEARCH=z0Q;BJQ.DBSYSTEMVALUES_MEMCACHED=R0Q;BJQ.DBSYSTEMVALUES_COCKROACHDB=w0Q;BJQ.DbSystemValues=(0,i5.createConstMap)([vBQ,yBQ,gBQ,hBQ,xBQ,fBQ,bBQ,mBQ,uBQ,dBQ,cBQ,lBQ,pBQ,iBQ,nBQ,sBQ,rBQ,aBQ,oBQ,tBQ,eBQ,A0Q,Q0Q,B0Q,Y0Q,J0Q,C0Q,X0Q,G0Q,W0Q,F0Q,Z0Q,$0Q,U0Q,E0Q,K0Q,V0Q,I0Q,H0Q,D0Q,N0Q,L0Q,q0Q,M0Q,z0Q,R0Q,w0Q]);var j0Q="all",O0Q="each_quorum",P0Q="quorum",T0Q="local_quorum",S0Q="one",k0Q="two",_0Q="three",v0Q="local_one",y0Q="any",g0Q="serial",h0Q="local_serial";BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=j0Q;BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=O0Q;BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=P0Q;BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=T0Q;BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=S0Q;BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=k0Q;BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=_0Q;BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=v0Q;BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=y0Q;BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=g0Q;BJQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=h0Q;BJQ.DbCassandraConsistencyLevelValues=(0,i5.createConstMap)([j0Q,O0Q,P0Q,T0Q,S0Q,k0Q,_0Q,v0Q,y0Q,g0Q,h0Q]);var x0Q="datasource",f0Q="http",b0Q="pubsub",m0Q="timer",u0Q="other";BJQ.FAASTRIGGERVALUES_DATASOURCE=x0Q;BJQ.FAASTRIGGERVALUES_HTTP=f0Q;BJQ.FAASTRIGGERVALUES_PUBSUB=b0Q;BJQ.FAASTRIGGERVALUES_TIMER=m0Q;BJQ.FAASTRIGGERVALUES_OTHER=u0Q;BJQ.FaasTriggerValues=(0,i5.createConstMap)([x0Q,f0Q,b0Q,m0Q,u0Q]);var d0Q="insert",c0Q="edit",l0Q="delete";BJQ.FAASDOCUMENTOPERATIONVALUES_INSERT=d0Q;BJQ.FAASDOCUMENTOPERATIONVALUES_EDIT=c0Q;BJQ.FAASDOCUMENTOPERATIONVALUES_DELETE=l0Q;BJQ.FaasDocumentOperationValues=(0,i5.createConstMap)([d0Q,c0Q,l0Q]);var p0Q="alibaba_cloud",i0Q="aws",n0Q="azure",s0Q="gcp";BJQ.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=p0Q;BJQ.FAASINVOKEDPROVIDERVALUES_AWS=i0Q;BJQ.FAASINVOKEDPROVIDERVALUES_AZURE=n0Q;BJQ.FAASINVOKEDPROVIDERVALUES_GCP=s0Q;BJQ.FaasInvokedProviderValues=(0,i5.createConstMap)([p0Q,i0Q,n0Q,s0Q]);var r0Q="ip_tcp",a0Q="ip_udp",o0Q="ip",t0Q="unix",e0Q="pipe",AYQ="inproc",QYQ="other";BJQ.NETTRANSPORTVALUES_IP_TCP=r0Q;BJQ.NETTRANSPORTVALUES_IP_UDP=a0Q;BJQ.NETTRANSPORTVALUES_IP=o0Q;BJQ.NETTRANSPORTVALUES_UNIX=t0Q;BJQ.NETTRANSPORTVALUES_PIPE=e0Q;BJQ.NETTRANSPORTVALUES_INPROC=AYQ;BJQ.NETTRANSPORTVALUES_OTHER=QYQ;BJQ.NetTransportValues=(0,i5.createConstMap)([r0Q,a0Q,o0Q,t0Q,e0Q,AYQ,QYQ]);var BYQ="wifi",YYQ="wired",JYQ="cell",CYQ="unavailable",XYQ="unknown";BJQ.NETHOSTCONNECTIONTYPEVALUES_WIFI=BYQ;BJQ.NETHOSTCONNECTIONTYPEVALUES_WIRED=YYQ;BJQ.NETHOSTCONNECTIONTYPEVALUES_CELL=JYQ;BJQ.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=CYQ;BJQ.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=XYQ;BJQ.NetHostConnectionTypeValues=(0,i5.createConstMap)([BYQ,YYQ,JYQ,CYQ,XYQ]);var GYQ="gprs",WYQ="edge",FYQ="umts",ZYQ="cdma",$YQ="evdo_0",UYQ="evdo_a",EYQ="cdma2000_1xrtt",KYQ="hsdpa",VYQ="hsupa",IYQ="hspa",HYQ="iden",DYQ="evdo_b",NYQ="lte",LYQ="ehrpd",qYQ="hspap",MYQ="gsm",zYQ="td_scdma",RYQ="iwlan",wYQ="nr",jYQ="nrnsa",OYQ="lte_ca";BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=GYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=WYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=FYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=ZYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=$YQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=UYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=EYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=KYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=VYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=IYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=HYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=DYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=NYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=LYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=qYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=MYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=zYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=RYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_NR=wYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=jYQ;BJQ.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=OYQ;BJQ.NetHostConnectionSubtypeValues=(0,i5.createConstMap)([GYQ,WYQ,FYQ,ZYQ,$YQ,UYQ,EYQ,KYQ,VYQ,IYQ,HYQ,DYQ,NYQ,LYQ,qYQ,MYQ,zYQ,RYQ,wYQ,jYQ,OYQ]);var PYQ="1.0",TYQ="1.1",SYQ="2.0",kYQ="SPDY",_YQ="QUIC";BJQ.HTTPFLAVORVALUES_HTTP_1_0=PYQ;BJQ.HTTPFLAVORVALUES_HTTP_1_1=TYQ;BJQ.HTTPFLAVORVALUES_HTTP_2_0=SYQ;BJQ.HTTPFLAVORVALUES_SPDY=kYQ;BJQ.HTTPFLAVORVALUES_QUIC=_YQ;BJQ.HttpFlavorValues={HTTP_1_0:PYQ,HTTP_1_1:TYQ,HTTP_2_0:SYQ,SPDY:kYQ,QUIC:_YQ};var vYQ="queue",yYQ="topic";BJQ.MESSAGINGDESTINATIONKINDVALUES_QUEUE=vYQ;BJQ.MESSAGINGDESTINATIONKINDVALUES_TOPIC=yYQ;BJQ.MessagingDestinationKindValues=(0,i5.createConstMap)([vYQ,yYQ]);var gYQ="receive",hYQ="process";BJQ.MESSAGINGOPERATIONVALUES_RECEIVE=gYQ;BJQ.MESSAGINGOPERATIONVALUES_PROCESS=hYQ;BJQ.MessagingOperationValues=(0,i5.createConstMap)([gYQ,hYQ]);var xYQ=0,fYQ=1,bYQ=2,mYQ=3,uYQ=4,dYQ=5,cYQ=6,lYQ=7,pYQ=8,iYQ=9,nYQ=10,sYQ=11,rYQ=12,aYQ=13,oYQ=14,tYQ=15,eYQ=16;BJQ.RPCGRPCSTATUSCODEVALUES_OK=xYQ;BJQ.RPCGRPCSTATUSCODEVALUES_CANCELLED=fYQ;BJQ.RPCGRPCSTATUSCODEVALUES_UNKNOWN=bYQ;BJQ.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=mYQ;BJQ.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=uYQ;BJQ.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=dYQ;BJQ.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=cYQ;BJQ.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=lYQ;BJQ.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=pYQ;BJQ.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=iYQ;BJQ.RPCGRPCSTATUSCODEVALUES_ABORTED=nYQ;BJQ.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=sYQ;BJQ.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=rYQ;BJQ.RPCGRPCSTATUSCODEVALUES_INTERNAL=aYQ;BJQ.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=oYQ;BJQ.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=tYQ;BJQ.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=eYQ;BJQ.RpcGrpcStatusCodeValues={OK:xYQ,CANCELLED:fYQ,UNKNOWN:bYQ,INVALID_ARGUMENT:mYQ,DEADLINE_EXCEEDED:uYQ,NOT_FOUND:dYQ,ALREADY_EXISTS:cYQ,PERMISSION_DENIED:lYQ,RESOURCE_EXHAUSTED:pYQ,FAILED_PRECONDITION:iYQ,ABORTED:nYQ,OUT_OF_RANGE:sYQ,UNIMPLEMENTED:rYQ,INTERNAL:aYQ,UNAVAILABLE:oYQ,DATA_LOSS:tYQ,UNAUTHENTICATED:eYQ};var AJQ="SENT",QJQ="RECEIVED";BJQ.MESSAGETYPEVALUES_SENT=AJQ;BJQ.MESSAGETYPEVALUES_RECEIVED=QJQ;BJQ.MessageTypeValues=(0,i5.createConstMap)([AJQ,QJQ])});var ZJQ=R((V$)=>{var a80=V$&&V$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),o80=V$&&V$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))a80(Q,A,B)};Object.defineProperty(V$,"__esModule",{value:!0});o80(FJQ(),V$)});var b8Q=R((g8Q)=>{Object.defineProperty(g8Q,"__esModule",{value:!0});g8Q.SEMRESATTRS_K8S_STATEFULSET_NAME=g8Q.SEMRESATTRS_K8S_STATEFULSET_UID=g8Q.SEMRESATTRS_K8S_DEPLOYMENT_NAME=g8Q.SEMRESATTRS_K8S_DEPLOYMENT_UID=g8Q.SEMRESATTRS_K8S_REPLICASET_NAME=g8Q.SEMRESATTRS_K8S_REPLICASET_UID=g8Q.SEMRESATTRS_K8S_CONTAINER_NAME=g8Q.SEMRESATTRS_K8S_POD_NAME=g8Q.SEMRESATTRS_K8S_POD_UID=g8Q.SEMRESATTRS_K8S_NAMESPACE_NAME=g8Q.SEMRESATTRS_K8S_NODE_UID=g8Q.SEMRESATTRS_K8S_NODE_NAME=g8Q.SEMRESATTRS_K8S_CLUSTER_NAME=g8Q.SEMRESATTRS_HOST_IMAGE_VERSION=g8Q.SEMRESATTRS_HOST_IMAGE_ID=g8Q.SEMRESATTRS_HOST_IMAGE_NAME=g8Q.SEMRESATTRS_HOST_ARCH=g8Q.SEMRESATTRS_HOST_TYPE=g8Q.SEMRESATTRS_HOST_NAME=g8Q.SEMRESATTRS_HOST_ID=g8Q.SEMRESATTRS_FAAS_MAX_MEMORY=g8Q.SEMRESATTRS_FAAS_INSTANCE=g8Q.SEMRESATTRS_FAAS_VERSION=g8Q.SEMRESATTRS_FAAS_ID=g8Q.SEMRESATTRS_FAAS_NAME=g8Q.SEMRESATTRS_DEVICE_MODEL_NAME=g8Q.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=g8Q.SEMRESATTRS_DEVICE_ID=g8Q.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=g8Q.SEMRESATTRS_CONTAINER_IMAGE_TAG=g8Q.SEMRESATTRS_CONTAINER_IMAGE_NAME=g8Q.SEMRESATTRS_CONTAINER_RUNTIME=g8Q.SEMRESATTRS_CONTAINER_ID=g8Q.SEMRESATTRS_CONTAINER_NAME=g8Q.SEMRESATTRS_AWS_LOG_STREAM_ARNS=g8Q.SEMRESATTRS_AWS_LOG_STREAM_NAMES=g8Q.SEMRESATTRS_AWS_LOG_GROUP_ARNS=g8Q.SEMRESATTRS_AWS_LOG_GROUP_NAMES=g8Q.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=g8Q.SEMRESATTRS_AWS_ECS_TASK_REVISION=g8Q.SEMRESATTRS_AWS_ECS_TASK_FAMILY=g8Q.SEMRESATTRS_AWS_ECS_TASK_ARN=g8Q.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=g8Q.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=g8Q.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=g8Q.SEMRESATTRS_CLOUD_PLATFORM=g8Q.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=g8Q.SEMRESATTRS_CLOUD_REGION=g8Q.SEMRESATTRS_CLOUD_ACCOUNT_ID=g8Q.SEMRESATTRS_CLOUD_PROVIDER=void 0;g8Q.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=g8Q.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=g8Q.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=g8Q.CLOUDPLATFORMVALUES_AZURE_AKS=g8Q.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=g8Q.CLOUDPLATFORMVALUES_AZURE_VM=g8Q.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=g8Q.CLOUDPLATFORMVALUES_AWS_LAMBDA=g8Q.CLOUDPLATFORMVALUES_AWS_EKS=g8Q.CLOUDPLATFORMVALUES_AWS_ECS=g8Q.CLOUDPLATFORMVALUES_AWS_EC2=g8Q.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=g8Q.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=g8Q.CloudProviderValues=g8Q.CLOUDPROVIDERVALUES_GCP=g8Q.CLOUDPROVIDERVALUES_AZURE=g8Q.CLOUDPROVIDERVALUES_AWS=g8Q.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=g8Q.SemanticResourceAttributes=g8Q.SEMRESATTRS_WEBENGINE_DESCRIPTION=g8Q.SEMRESATTRS_WEBENGINE_VERSION=g8Q.SEMRESATTRS_WEBENGINE_NAME=g8Q.SEMRESATTRS_TELEMETRY_AUTO_VERSION=g8Q.SEMRESATTRS_TELEMETRY_SDK_VERSION=g8Q.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=g8Q.SEMRESATTRS_TELEMETRY_SDK_NAME=g8Q.SEMRESATTRS_SERVICE_VERSION=g8Q.SEMRESATTRS_SERVICE_INSTANCE_ID=g8Q.SEMRESATTRS_SERVICE_NAMESPACE=g8Q.SEMRESATTRS_SERVICE_NAME=g8Q.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=g8Q.SEMRESATTRS_PROCESS_RUNTIME_VERSION=g8Q.SEMRESATTRS_PROCESS_RUNTIME_NAME=g8Q.SEMRESATTRS_PROCESS_OWNER=g8Q.SEMRESATTRS_PROCESS_COMMAND_ARGS=g8Q.SEMRESATTRS_PROCESS_COMMAND_LINE=g8Q.SEMRESATTRS_PROCESS_COMMAND=g8Q.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=g8Q.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=g8Q.SEMRESATTRS_PROCESS_PID=g8Q.SEMRESATTRS_OS_VERSION=g8Q.SEMRESATTRS_OS_NAME=g8Q.SEMRESATTRS_OS_DESCRIPTION=g8Q.SEMRESATTRS_OS_TYPE=g8Q.SEMRESATTRS_K8S_CRONJOB_NAME=g8Q.SEMRESATTRS_K8S_CRONJOB_UID=g8Q.SEMRESATTRS_K8S_JOB_NAME=g8Q.SEMRESATTRS_K8S_JOB_UID=g8Q.SEMRESATTRS_K8S_DAEMONSET_NAME=g8Q.SEMRESATTRS_K8S_DAEMONSET_UID=void 0;g8Q.TelemetrySdkLanguageValues=g8Q.TELEMETRYSDKLANGUAGEVALUES_WEBJS=g8Q.TELEMETRYSDKLANGUAGEVALUES_RUBY=g8Q.TELEMETRYSDKLANGUAGEVALUES_PYTHON=g8Q.TELEMETRYSDKLANGUAGEVALUES_PHP=g8Q.TELEMETRYSDKLANGUAGEVALUES_NODEJS=g8Q.TELEMETRYSDKLANGUAGEVALUES_JAVA=g8Q.TELEMETRYSDKLANGUAGEVALUES_GO=g8Q.TELEMETRYSDKLANGUAGEVALUES_ERLANG=g8Q.TELEMETRYSDKLANGUAGEVALUES_DOTNET=g8Q.TELEMETRYSDKLANGUAGEVALUES_CPP=g8Q.OsTypeValues=g8Q.OSTYPEVALUES_Z_OS=g8Q.OSTYPEVALUES_SOLARIS=g8Q.OSTYPEVALUES_AIX=g8Q.OSTYPEVALUES_HPUX=g8Q.OSTYPEVALUES_DRAGONFLYBSD=g8Q.OSTYPEVALUES_OPENBSD=g8Q.OSTYPEVALUES_NETBSD=g8Q.OSTYPEVALUES_FREEBSD=g8Q.OSTYPEVALUES_DARWIN=g8Q.OSTYPEVALUES_LINUX=g8Q.OSTYPEVALUES_WINDOWS=g8Q.HostArchValues=g8Q.HOSTARCHVALUES_X86=g8Q.HOSTARCHVALUES_PPC64=g8Q.HOSTARCHVALUES_PPC32=g8Q.HOSTARCHVALUES_IA64=g8Q.HOSTARCHVALUES_ARM64=g8Q.HOSTARCHVALUES_ARM32=g8Q.HOSTARCHVALUES_AMD64=g8Q.AwsEcsLaunchtypeValues=g8Q.AWSECSLAUNCHTYPEVALUES_FARGATE=g8Q.AWSECSLAUNCHTYPEVALUES_EC2=g8Q.CloudPlatformValues=g8Q.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=g8Q.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=g8Q.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=g8Q.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=void 0;var I$=Ji(),$JQ="cloud.provider",UJQ="cloud.account.id",EJQ="cloud.region",KJQ="cloud.availability_zone",VJQ="cloud.platform",IJQ="aws.ecs.container.arn",HJQ="aws.ecs.cluster.arn",DJQ="aws.ecs.launchtype",NJQ="aws.ecs.task.arn",LJQ="aws.ecs.task.family",qJQ="aws.ecs.task.revision",MJQ="aws.eks.cluster.arn",zJQ="aws.log.group.names",RJQ="aws.log.group.arns",wJQ="aws.log.stream.names",jJQ="aws.log.stream.arns",OJQ="container.name",PJQ="container.id",TJQ="container.runtime",SJQ="container.image.name",kJQ="container.image.tag",_JQ="deployment.environment",vJQ="device.id",yJQ="device.model.identifier",gJQ="device.model.name",hJQ="faas.name",xJQ="faas.id",fJQ="faas.version",bJQ="faas.instance",mJQ="faas.max_memory",uJQ="host.id",dJQ="host.name",cJQ="host.type",lJQ="host.arch",pJQ="host.image.name",iJQ="host.image.id",nJQ="host.image.version",sJQ="k8s.cluster.name",rJQ="k8s.node.name",aJQ="k8s.node.uid",oJQ="k8s.namespace.name",tJQ="k8s.pod.uid",eJQ="k8s.pod.name",A9Q="k8s.container.name",Q9Q="k8s.replicaset.uid",B9Q="k8s.replicaset.name",Y9Q="k8s.deployment.uid",J9Q="k8s.deployment.name",C9Q="k8s.statefulset.uid",X9Q="k8s.statefulset.name",G9Q="k8s.daemonset.uid",W9Q="k8s.daemonset.name",F9Q="k8s.job.uid",Z9Q="k8s.job.name",$9Q="k8s.cronjob.uid",U9Q="k8s.cronjob.name",E9Q="os.type",K9Q="os.description",V9Q="os.name",I9Q="os.version",H9Q="process.pid",D9Q="process.executable.name",N9Q="process.executable.path",L9Q="process.command",q9Q="process.command_line",M9Q="process.command_args",z9Q="process.owner",R9Q="process.runtime.name",w9Q="process.runtime.version",j9Q="process.runtime.description",O9Q="service.name",P9Q="service.namespace",T9Q="service.instance.id",S9Q="service.version",k9Q="telemetry.sdk.name",_9Q="telemetry.sdk.language",v9Q="telemetry.sdk.version",y9Q="telemetry.auto.version",g9Q="webengine.name",h9Q="webengine.version",x9Q="webengine.description";g8Q.SEMRESATTRS_CLOUD_PROVIDER=$JQ;g8Q.SEMRESATTRS_CLOUD_ACCOUNT_ID=UJQ;g8Q.SEMRESATTRS_CLOUD_REGION=EJQ;g8Q.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=KJQ;g8Q.SEMRESATTRS_CLOUD_PLATFORM=VJQ;g8Q.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=IJQ;g8Q.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=HJQ;g8Q.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=DJQ;g8Q.SEMRESATTRS_AWS_ECS_TASK_ARN=NJQ;g8Q.SEMRESATTRS_AWS_ECS_TASK_FAMILY=LJQ;g8Q.SEMRESATTRS_AWS_ECS_TASK_REVISION=qJQ;g8Q.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=MJQ;g8Q.SEMRESATTRS_AWS_LOG_GROUP_NAMES=zJQ;g8Q.SEMRESATTRS_AWS_LOG_GROUP_ARNS=RJQ;g8Q.SEMRESATTRS_AWS_LOG_STREAM_NAMES=wJQ;g8Q.SEMRESATTRS_AWS_LOG_STREAM_ARNS=jJQ;g8Q.SEMRESATTRS_CONTAINER_NAME=OJQ;g8Q.SEMRESATTRS_CONTAINER_ID=PJQ;g8Q.SEMRESATTRS_CONTAINER_RUNTIME=TJQ;g8Q.SEMRESATTRS_CONTAINER_IMAGE_NAME=SJQ;g8Q.SEMRESATTRS_CONTAINER_IMAGE_TAG=kJQ;g8Q.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=_JQ;g8Q.SEMRESATTRS_DEVICE_ID=vJQ;g8Q.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=yJQ;g8Q.SEMRESATTRS_DEVICE_MODEL_NAME=gJQ;g8Q.SEMRESATTRS_FAAS_NAME=hJQ;g8Q.SEMRESATTRS_FAAS_ID=xJQ;g8Q.SEMRESATTRS_FAAS_VERSION=fJQ;g8Q.SEMRESATTRS_FAAS_INSTANCE=bJQ;g8Q.SEMRESATTRS_FAAS_MAX_MEMORY=mJQ;g8Q.SEMRESATTRS_HOST_ID=uJQ;g8Q.SEMRESATTRS_HOST_NAME=dJQ;g8Q.SEMRESATTRS_HOST_TYPE=cJQ;g8Q.SEMRESATTRS_HOST_ARCH=lJQ;g8Q.SEMRESATTRS_HOST_IMAGE_NAME=pJQ;g8Q.SEMRESATTRS_HOST_IMAGE_ID=iJQ;g8Q.SEMRESATTRS_HOST_IMAGE_VERSION=nJQ;g8Q.SEMRESATTRS_K8S_CLUSTER_NAME=sJQ;g8Q.SEMRESATTRS_K8S_NODE_NAME=rJQ;g8Q.SEMRESATTRS_K8S_NODE_UID=aJQ;g8Q.SEMRESATTRS_K8S_NAMESPACE_NAME=oJQ;g8Q.SEMRESATTRS_K8S_POD_UID=tJQ;g8Q.SEMRESATTRS_K8S_POD_NAME=eJQ;g8Q.SEMRESATTRS_K8S_CONTAINER_NAME=A9Q;g8Q.SEMRESATTRS_K8S_REPLICASET_UID=Q9Q;g8Q.SEMRESATTRS_K8S_REPLICASET_NAME=B9Q;g8Q.SEMRESATTRS_K8S_DEPLOYMENT_UID=Y9Q;g8Q.SEMRESATTRS_K8S_DEPLOYMENT_NAME=J9Q;g8Q.SEMRESATTRS_K8S_STATEFULSET_UID=C9Q;g8Q.SEMRESATTRS_K8S_STATEFULSET_NAME=X9Q;g8Q.SEMRESATTRS_K8S_DAEMONSET_UID=G9Q;g8Q.SEMRESATTRS_K8S_DAEMONSET_NAME=W9Q;g8Q.SEMRESATTRS_K8S_JOB_UID=F9Q;g8Q.SEMRESATTRS_K8S_JOB_NAME=Z9Q;g8Q.SEMRESATTRS_K8S_CRONJOB_UID=$9Q;g8Q.SEMRESATTRS_K8S_CRONJOB_NAME=U9Q;g8Q.SEMRESATTRS_OS_TYPE=E9Q;g8Q.SEMRESATTRS_OS_DESCRIPTION=K9Q;g8Q.SEMRESATTRS_OS_NAME=V9Q;g8Q.SEMRESATTRS_OS_VERSION=I9Q;g8Q.SEMRESATTRS_PROCESS_PID=H9Q;g8Q.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=D9Q;g8Q.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=N9Q;g8Q.SEMRESATTRS_PROCESS_COMMAND=L9Q;g8Q.SEMRESATTRS_PROCESS_COMMAND_LINE=q9Q;g8Q.SEMRESATTRS_PROCESS_COMMAND_ARGS=M9Q;g8Q.SEMRESATTRS_PROCESS_OWNER=z9Q;g8Q.SEMRESATTRS_PROCESS_RUNTIME_NAME=R9Q;g8Q.SEMRESATTRS_PROCESS_RUNTIME_VERSION=w9Q;g8Q.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=j9Q;g8Q.SEMRESATTRS_SERVICE_NAME=O9Q;g8Q.SEMRESATTRS_SERVICE_NAMESPACE=P9Q;g8Q.SEMRESATTRS_SERVICE_INSTANCE_ID=T9Q;g8Q.SEMRESATTRS_SERVICE_VERSION=S9Q;g8Q.SEMRESATTRS_TELEMETRY_SDK_NAME=k9Q;g8Q.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=_9Q;g8Q.SEMRESATTRS_TELEMETRY_SDK_VERSION=v9Q;g8Q.SEMRESATTRS_TELEMETRY_AUTO_VERSION=y9Q;g8Q.SEMRESATTRS_WEBENGINE_NAME=g9Q;g8Q.SEMRESATTRS_WEBENGINE_VERSION=h9Q;g8Q.SEMRESATTRS_WEBENGINE_DESCRIPTION=x9Q;g8Q.SemanticResourceAttributes=(0,I$.createConstMap)([$JQ,UJQ,EJQ,KJQ,VJQ,IJQ,HJQ,DJQ,NJQ,LJQ,qJQ,MJQ,zJQ,RJQ,wJQ,jJQ,OJQ,PJQ,TJQ,SJQ,kJQ,_JQ,vJQ,yJQ,gJQ,hJQ,xJQ,fJQ,bJQ,mJQ,uJQ,dJQ,cJQ,lJQ,pJQ,iJQ,nJQ,sJQ,rJQ,aJQ,oJQ,tJQ,eJQ,A9Q,Q9Q,B9Q,Y9Q,J9Q,C9Q,X9Q,G9Q,W9Q,F9Q,Z9Q,$9Q,U9Q,E9Q,K9Q,V9Q,I9Q,H9Q,D9Q,N9Q,L9Q,q9Q,M9Q,z9Q,R9Q,w9Q,j9Q,O9Q,P9Q,T9Q,S9Q,k9Q,_9Q,v9Q,y9Q,g9Q,h9Q,x9Q]);var f9Q="alibaba_cloud",b9Q="aws",m9Q="azure",u9Q="gcp";g8Q.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=f9Q;g8Q.CLOUDPROVIDERVALUES_AWS=b9Q;g8Q.CLOUDPROVIDERVALUES_AZURE=m9Q;g8Q.CLOUDPROVIDERVALUES_GCP=u9Q;g8Q.CloudProviderValues=(0,I$.createConstMap)([f9Q,b9Q,m9Q,u9Q]);var d9Q="alibaba_cloud_ecs",c9Q="alibaba_cloud_fc",l9Q="aws_ec2",p9Q="aws_ecs",i9Q="aws_eks",n9Q="aws_lambda",s9Q="aws_elastic_beanstalk",r9Q="azure_vm",a9Q="azure_container_instances",o9Q="azure_aks",t9Q="azure_functions",e9Q="azure_app_service",A8Q="gcp_compute_engine",Q8Q="gcp_cloud_run",B8Q="gcp_kubernetes_engine",Y8Q="gcp_cloud_functions",J8Q="gcp_app_engine";g8Q.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=d9Q;g8Q.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=c9Q;g8Q.CLOUDPLATFORMVALUES_AWS_EC2=l9Q;g8Q.CLOUDPLATFORMVALUES_AWS_ECS=p9Q;g8Q.CLOUDPLATFORMVALUES_AWS_EKS=i9Q;g8Q.CLOUDPLATFORMVALUES_AWS_LAMBDA=n9Q;g8Q.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=s9Q;g8Q.CLOUDPLATFORMVALUES_AZURE_VM=r9Q;g8Q.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=a9Q;g8Q.CLOUDPLATFORMVALUES_AZURE_AKS=o9Q;g8Q.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=t9Q;g8Q.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=e9Q;g8Q.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=A8Q;g8Q.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=Q8Q;g8Q.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=B8Q;g8Q.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=Y8Q;g8Q.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=J8Q;g8Q.CloudPlatformValues=(0,I$.createConstMap)([d9Q,c9Q,l9Q,p9Q,i9Q,n9Q,s9Q,r9Q,a9Q,o9Q,t9Q,e9Q,A8Q,Q8Q,B8Q,Y8Q,J8Q]);var C8Q="ec2",X8Q="fargate";g8Q.AWSECSLAUNCHTYPEVALUES_EC2=C8Q;g8Q.AWSECSLAUNCHTYPEVALUES_FARGATE=X8Q;g8Q.AwsEcsLaunchtypeValues=(0,I$.createConstMap)([C8Q,X8Q]);var G8Q="amd64",W8Q="arm32",F8Q="arm64",Z8Q="ia64",$8Q="ppc32",U8Q="ppc64",E8Q="x86";g8Q.HOSTARCHVALUES_AMD64=G8Q;g8Q.HOSTARCHVALUES_ARM32=W8Q;g8Q.HOSTARCHVALUES_ARM64=F8Q;g8Q.HOSTARCHVALUES_IA64=Z8Q;g8Q.HOSTARCHVALUES_PPC32=$8Q;g8Q.HOSTARCHVALUES_PPC64=U8Q;g8Q.HOSTARCHVALUES_X86=E8Q;g8Q.HostArchValues=(0,I$.createConstMap)([G8Q,W8Q,F8Q,Z8Q,$8Q,U8Q,E8Q]);var K8Q="windows",V8Q="linux",I8Q="darwin",H8Q="freebsd",D8Q="netbsd",N8Q="openbsd",L8Q="dragonflybsd",q8Q="hpux",M8Q="aix",z8Q="solaris",R8Q="z_os";g8Q.OSTYPEVALUES_WINDOWS=K8Q;g8Q.OSTYPEVALUES_LINUX=V8Q;g8Q.OSTYPEVALUES_DARWIN=I8Q;g8Q.OSTYPEVALUES_FREEBSD=H8Q;g8Q.OSTYPEVALUES_NETBSD=D8Q;g8Q.OSTYPEVALUES_OPENBSD=N8Q;g8Q.OSTYPEVALUES_DRAGONFLYBSD=L8Q;g8Q.OSTYPEVALUES_HPUX=q8Q;g8Q.OSTYPEVALUES_AIX=M8Q;g8Q.OSTYPEVALUES_SOLARIS=z8Q;g8Q.OSTYPEVALUES_Z_OS=R8Q;g8Q.OsTypeValues=(0,I$.createConstMap)([K8Q,V8Q,I8Q,H8Q,D8Q,N8Q,L8Q,q8Q,M8Q,z8Q,R8Q]);var w8Q="cpp",j8Q="dotnet",O8Q="erlang",P8Q="go",T8Q="java",S8Q="nodejs",k8Q="php",_8Q="python",v8Q="ruby",y8Q="webjs";g8Q.TELEMETRYSDKLANGUAGEVALUES_CPP=w8Q;g8Q.TELEMETRYSDKLANGUAGEVALUES_DOTNET=j8Q;g8Q.TELEMETRYSDKLANGUAGEVALUES_ERLANG=O8Q;g8Q.TELEMETRYSDKLANGUAGEVALUES_GO=P8Q;g8Q.TELEMETRYSDKLANGUAGEVALUES_JAVA=T8Q;g8Q.TELEMETRYSDKLANGUAGEVALUES_NODEJS=S8Q;g8Q.TELEMETRYSDKLANGUAGEVALUES_PHP=k8Q;g8Q.TELEMETRYSDKLANGUAGEVALUES_PYTHON=_8Q;g8Q.TELEMETRYSDKLANGUAGEVALUES_RUBY=v8Q;g8Q.TELEMETRYSDKLANGUAGEVALUES_WEBJS=y8Q;g8Q.TelemetrySdkLanguageValues=(0,I$.createConstMap)([w8Q,j8Q,O8Q,P8Q,T8Q,S8Q,k8Q,_8Q,v8Q,y8Q])});var m8Q=R((H$)=>{var j10=H$&&H$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),O10=H$&&H$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))j10(Q,A,B)};Object.defineProperty(H$,"__esModule",{value:!0});O10(b8Q(),H$)});var p8Q=R((u8Q)=>{Object.defineProperty(u8Q,"__esModule",{value:!0});u8Q.HTTP_REQUEST_METHOD_VALUE_POST=u8Q.HTTP_REQUEST_METHOD_VALUE_PATCH=u8Q.HTTP_REQUEST_METHOD_VALUE_OPTIONS=u8Q.HTTP_REQUEST_METHOD_VALUE_HEAD=u8Q.HTTP_REQUEST_METHOD_VALUE_GET=u8Q.HTTP_REQUEST_METHOD_VALUE_DELETE=u8Q.HTTP_REQUEST_METHOD_VALUE_CONNECT=u8Q.HTTP_REQUEST_METHOD_VALUE_OTHER=u8Q.ATTR_HTTP_REQUEST_METHOD=u8Q.ATTR_HTTP_REQUEST_HEADER=u8Q.ATTR_EXCEPTION_TYPE=u8Q.ATTR_EXCEPTION_STACKTRACE=u8Q.ATTR_EXCEPTION_MESSAGE=u8Q.ATTR_EXCEPTION_ESCAPED=u8Q.ERROR_TYPE_VALUE_OTHER=u8Q.ATTR_ERROR_TYPE=u8Q.ATTR_CLIENT_PORT=u8Q.ATTR_CLIENT_ADDRESS=u8Q.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS=u8Q.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE=u8Q.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS=u8Q.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK=u8Q.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED=u8Q.ATTR_ASPNETCORE_RATE_LIMITING_POLICY=u8Q.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED=u8Q.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED=u8Q.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED=u8Q.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED=u8Q.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT=u8Q.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE=u8Q.ATTR_TELEMETRY_SDK_VERSION=u8Q.ATTR_TELEMETRY_SDK_NAME=u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS=u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT=u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_RUST=u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY=u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON=u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_PHP=u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS=u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA=u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_GO=u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG=u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET=u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_CPP=u8Q.ATTR_TELEMETRY_SDK_LANGUAGE=u8Q.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED=u8Q.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER=u8Q.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER=u8Q.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED=u8Q.ATTR_ASPNETCORE_RATE_LIMITING_RESULT=void 0;u8Q.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT=u8Q.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE=u8Q.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN=u8Q.ATTR_SIGNALR_CONNECTION_STATUS=u8Q.ATTR_SERVICE_VERSION=u8Q.ATTR_SERVICE_NAME=u8Q.ATTR_SERVER_PORT=u8Q.ATTR_SERVER_ADDRESS=u8Q.ATTR_OTEL_STATUS_DESCRIPTION=u8Q.OTEL_STATUS_CODE_VALUE_OK=u8Q.OTEL_STATUS_CODE_VALUE_ERROR=u8Q.ATTR_OTEL_STATUS_CODE=u8Q.ATTR_OTEL_SCOPE_VERSION=u8Q.ATTR_OTEL_SCOPE_NAME=u8Q.NETWORK_TYPE_VALUE_IPV6=u8Q.NETWORK_TYPE_VALUE_IPV4=u8Q.ATTR_NETWORK_TYPE=u8Q.NETWORK_TRANSPORT_VALUE_UNIX=u8Q.NETWORK_TRANSPORT_VALUE_UDP=u8Q.NETWORK_TRANSPORT_VALUE_TCP=u8Q.NETWORK_TRANSPORT_VALUE_QUIC=u8Q.NETWORK_TRANSPORT_VALUE_PIPE=u8Q.ATTR_NETWORK_TRANSPORT=u8Q.ATTR_NETWORK_PROTOCOL_VERSION=u8Q.ATTR_NETWORK_PROTOCOL_NAME=u8Q.ATTR_NETWORK_PEER_PORT=u8Q.ATTR_NETWORK_PEER_ADDRESS=u8Q.ATTR_NETWORK_LOCAL_PORT=u8Q.ATTR_NETWORK_LOCAL_ADDRESS=u8Q.JVM_THREAD_STATE_VALUE_WAITING=u8Q.JVM_THREAD_STATE_VALUE_TIMED_WAITING=u8Q.JVM_THREAD_STATE_VALUE_TERMINATED=u8Q.JVM_THREAD_STATE_VALUE_RUNNABLE=u8Q.JVM_THREAD_STATE_VALUE_NEW=u8Q.JVM_THREAD_STATE_VALUE_BLOCKED=u8Q.ATTR_JVM_THREAD_STATE=u8Q.ATTR_JVM_THREAD_DAEMON=u8Q.JVM_MEMORY_TYPE_VALUE_NON_HEAP=u8Q.JVM_MEMORY_TYPE_VALUE_HEAP=u8Q.ATTR_JVM_MEMORY_TYPE=u8Q.ATTR_JVM_MEMORY_POOL_NAME=u8Q.ATTR_JVM_GC_NAME=u8Q.ATTR_JVM_GC_ACTION=u8Q.ATTR_HTTP_ROUTE=u8Q.ATTR_HTTP_RESPONSE_STATUS_CODE=u8Q.ATTR_HTTP_RESPONSE_HEADER=u8Q.ATTR_HTTP_REQUEST_RESEND_COUNT=u8Q.ATTR_HTTP_REQUEST_METHOD_ORIGINAL=u8Q.HTTP_REQUEST_METHOD_VALUE_TRACE=u8Q.HTTP_REQUEST_METHOD_VALUE_PUT=void 0;u8Q.ATTR_USER_AGENT_ORIGINAL=u8Q.ATTR_URL_SCHEME=u8Q.ATTR_URL_QUERY=u8Q.ATTR_URL_PATH=u8Q.ATTR_URL_FULL=u8Q.ATTR_URL_FRAGMENT=u8Q.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS=u8Q.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS=u8Q.SIGNALR_TRANSPORT_VALUE_LONG_POLLING=u8Q.ATTR_SIGNALR_TRANSPORT=void 0;u8Q.ATTR_ASPNETCORE_RATE_LIMITING_RESULT="aspnetcore.rate_limiting.result";u8Q.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED="acquired";u8Q.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER="endpoint_limiter";u8Q.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER="global_limiter";u8Q.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED="request_canceled";u8Q.ATTR_TELEMETRY_SDK_LANGUAGE="telemetry.sdk.language";u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_CPP="cpp";u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET="dotnet";u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG="erlang";u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_GO="go";u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA="java";u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS="nodejs";u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_PHP="php";u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON="python";u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY="ruby";u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_RUST="rust";u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT="swift";u8Q.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS="webjs";u8Q.ATTR_TELEMETRY_SDK_NAME="telemetry.sdk.name";u8Q.ATTR_TELEMETRY_SDK_VERSION="telemetry.sdk.version";u8Q.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE="aspnetcore.diagnostics.handler.type";u8Q.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT="aspnetcore.diagnostics.exception.result";u8Q.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED="aborted";u8Q.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED="handled";u8Q.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED="skipped";u8Q.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED="unhandled";u8Q.ATTR_ASPNETCORE_RATE_LIMITING_POLICY="aspnetcore.rate_limiting.policy";u8Q.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED="aspnetcore.request.is_unhandled";u8Q.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK="aspnetcore.routing.is_fallback";u8Q.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS="aspnetcore.routing.match_status";u8Q.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE="failure";u8Q.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS="success";u8Q.ATTR_CLIENT_ADDRESS="client.address";u8Q.ATTR_CLIENT_PORT="client.port";u8Q.ATTR_ERROR_TYPE="error.type";u8Q.ERROR_TYPE_VALUE_OTHER="_OTHER";u8Q.ATTR_EXCEPTION_ESCAPED="exception.escaped";u8Q.ATTR_EXCEPTION_MESSAGE="exception.message";u8Q.ATTR_EXCEPTION_STACKTRACE="exception.stacktrace";u8Q.ATTR_EXCEPTION_TYPE="exception.type";var P10=(A)=>`http.request.header.${A}`;u8Q.ATTR_HTTP_REQUEST_HEADER=P10;u8Q.ATTR_HTTP_REQUEST_METHOD="http.request.method";u8Q.HTTP_REQUEST_METHOD_VALUE_OTHER="_OTHER";u8Q.HTTP_REQUEST_METHOD_VALUE_CONNECT="CONNECT";u8Q.HTTP_REQUEST_METHOD_VALUE_DELETE="DELETE";u8Q.HTTP_REQUEST_METHOD_VALUE_GET="GET";u8Q.HTTP_REQUEST_METHOD_VALUE_HEAD="HEAD";u8Q.HTTP_REQUEST_METHOD_VALUE_OPTIONS="OPTIONS";u8Q.HTTP_REQUEST_METHOD_VALUE_PATCH="PATCH";u8Q.HTTP_REQUEST_METHOD_VALUE_POST="POST";u8Q.HTTP_REQUEST_METHOD_VALUE_PUT="PUT";u8Q.HTTP_REQUEST_METHOD_VALUE_TRACE="TRACE";u8Q.ATTR_HTTP_REQUEST_METHOD_ORIGINAL="http.request.method_original";u8Q.ATTR_HTTP_REQUEST_RESEND_COUNT="http.request.resend_count";var T10=(A)=>`http.response.header.${A}`;u8Q.ATTR_HTTP_RESPONSE_HEADER=T10;u8Q.ATTR_HTTP_RESPONSE_STATUS_CODE="http.response.status_code";u8Q.ATTR_HTTP_ROUTE="http.route";u8Q.ATTR_JVM_GC_ACTION="jvm.gc.action";u8Q.ATTR_JVM_GC_NAME="jvm.gc.name";u8Q.ATTR_JVM_MEMORY_POOL_NAME="jvm.memory.pool.name";u8Q.ATTR_JVM_MEMORY_TYPE="jvm.memory.type";u8Q.JVM_MEMORY_TYPE_VALUE_HEAP="heap";u8Q.JVM_MEMORY_TYPE_VALUE_NON_HEAP="non_heap";u8Q.ATTR_JVM_THREAD_DAEMON="jvm.thread.daemon";u8Q.ATTR_JVM_THREAD_STATE="jvm.thread.state";u8Q.JVM_THREAD_STATE_VALUE_BLOCKED="blocked";u8Q.JVM_THREAD_STATE_VALUE_NEW="new";u8Q.JVM_THREAD_STATE_VALUE_RUNNABLE="runnable";u8Q.JVM_THREAD_STATE_VALUE_TERMINATED="terminated";u8Q.JVM_THREAD_STATE_VALUE_TIMED_WAITING="timed_waiting";u8Q.JVM_THREAD_STATE_VALUE_WAITING="waiting";u8Q.ATTR_NETWORK_LOCAL_ADDRESS="network.local.address";u8Q.ATTR_NETWORK_LOCAL_PORT="network.local.port";u8Q.ATTR_NETWORK_PEER_ADDRESS="network.peer.address";u8Q.ATTR_NETWORK_PEER_PORT="network.peer.port";u8Q.ATTR_NETWORK_PROTOCOL_NAME="network.protocol.name";u8Q.ATTR_NETWORK_PROTOCOL_VERSION="network.protocol.version";u8Q.ATTR_NETWORK_TRANSPORT="network.transport";u8Q.NETWORK_TRANSPORT_VALUE_PIPE="pipe";u8Q.NETWORK_TRANSPORT_VALUE_QUIC="quic";u8Q.NETWORK_TRANSPORT_VALUE_TCP="tcp";u8Q.NETWORK_TRANSPORT_VALUE_UDP="udp";u8Q.NETWORK_TRANSPORT_VALUE_UNIX="unix";u8Q.ATTR_NETWORK_TYPE="network.type";u8Q.NETWORK_TYPE_VALUE_IPV4="ipv4";u8Q.NETWORK_TYPE_VALUE_IPV6="ipv6";u8Q.ATTR_OTEL_SCOPE_NAME="otel.scope.name";u8Q.ATTR_OTEL_SCOPE_VERSION="otel.scope.version";u8Q.ATTR_OTEL_STATUS_CODE="otel.status_code";u8Q.OTEL_STATUS_CODE_VALUE_ERROR="ERROR";u8Q.OTEL_STATUS_CODE_VALUE_OK="OK";u8Q.ATTR_OTEL_STATUS_DESCRIPTION="otel.status_description";u8Q.ATTR_SERVER_ADDRESS="server.address";u8Q.ATTR_SERVER_PORT="server.port";u8Q.ATTR_SERVICE_NAME="service.name";u8Q.ATTR_SERVICE_VERSION="service.version";u8Q.ATTR_SIGNALR_CONNECTION_STATUS="signalr.connection.status";u8Q.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN="app_shutdown";u8Q.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE="normal_closure";u8Q.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT="timeout";u8Q.ATTR_SIGNALR_TRANSPORT="signalr.transport";u8Q.SIGNALR_TRANSPORT_VALUE_LONG_POLLING="long_polling";u8Q.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS="server_sent_events";u8Q.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS="web_sockets";u8Q.ATTR_URL_FRAGMENT="url.fragment";u8Q.ATTR_URL_FULL="url.full";u8Q.ATTR_URL_PATH="url.path";u8Q.ATTR_URL_QUERY="url.query";u8Q.ATTR_URL_SCHEME="url.scheme";u8Q.ATTR_USER_AGENT_ORIGINAL="user_agent.original"});var s8Q=R((i8Q)=>{Object.defineProperty(i8Q,"__esModule",{value:!0});i8Q.METRIC_SIGNALR_SERVER_CONNECTION_DURATION=i8Q.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS=i8Q.METRIC_KESTREL_UPGRADED_CONNECTIONS=i8Q.METRIC_KESTREL_TLS_HANDSHAKE_DURATION=i8Q.METRIC_KESTREL_REJECTED_CONNECTIONS=i8Q.METRIC_KESTREL_QUEUED_REQUESTS=i8Q.METRIC_KESTREL_QUEUED_CONNECTIONS=i8Q.METRIC_KESTREL_CONNECTION_DURATION=i8Q.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES=i8Q.METRIC_KESTREL_ACTIVE_CONNECTIONS=i8Q.METRIC_JVM_THREAD_COUNT=i8Q.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC=i8Q.METRIC_JVM_MEMORY_USED=i8Q.METRIC_JVM_MEMORY_LIMIT=i8Q.METRIC_JVM_MEMORY_COMMITTED=i8Q.METRIC_JVM_GC_DURATION=i8Q.METRIC_JVM_CPU_TIME=i8Q.METRIC_JVM_CPU_RECENT_UTILIZATION=i8Q.METRIC_JVM_CPU_COUNT=i8Q.METRIC_JVM_CLASS_UNLOADED=i8Q.METRIC_JVM_CLASS_LOADED=i8Q.METRIC_JVM_CLASS_COUNT=i8Q.METRIC_HTTP_SERVER_REQUEST_DURATION=i8Q.METRIC_HTTP_CLIENT_REQUEST_DURATION=i8Q.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS=i8Q.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS=i8Q.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION=i8Q.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE=i8Q.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS=i8Q.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES=i8Q.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS=void 0;i8Q.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS="aspnetcore.diagnostics.exceptions";i8Q.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES="aspnetcore.rate_limiting.active_request_leases";i8Q.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS="aspnetcore.rate_limiting.queued_requests";i8Q.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE="aspnetcore.rate_limiting.request.time_in_queue";i8Q.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION="aspnetcore.rate_limiting.request_lease.duration";i8Q.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS="aspnetcore.rate_limiting.requests";i8Q.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS="aspnetcore.routing.match_attempts";i8Q.METRIC_HTTP_CLIENT_REQUEST_DURATION="http.client.request.duration";i8Q.METRIC_HTTP_SERVER_REQUEST_DURATION="http.server.request.duration";i8Q.METRIC_JVM_CLASS_COUNT="jvm.class.count";i8Q.METRIC_JVM_CLASS_LOADED="jvm.class.loaded";i8Q.METRIC_JVM_CLASS_UNLOADED="jvm.class.unloaded";i8Q.METRIC_JVM_CPU_COUNT="jvm.cpu.count";i8Q.METRIC_JVM_CPU_RECENT_UTILIZATION="jvm.cpu.recent_utilization";i8Q.METRIC_JVM_CPU_TIME="jvm.cpu.time";i8Q.METRIC_JVM_GC_DURATION="jvm.gc.duration";i8Q.METRIC_JVM_MEMORY_COMMITTED="jvm.memory.committed";i8Q.METRIC_JVM_MEMORY_LIMIT="jvm.memory.limit";i8Q.METRIC_JVM_MEMORY_USED="jvm.memory.used";i8Q.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC="jvm.memory.used_after_last_gc";i8Q.METRIC_JVM_THREAD_COUNT="jvm.thread.count";i8Q.METRIC_KESTREL_ACTIVE_CONNECTIONS="kestrel.active_connections";i8Q.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES="kestrel.active_tls_handshakes";i8Q.METRIC_KESTREL_CONNECTION_DURATION="kestrel.connection.duration";i8Q.METRIC_KESTREL_QUEUED_CONNECTIONS="kestrel.queued_connections";i8Q.METRIC_KESTREL_QUEUED_REQUESTS="kestrel.queued_requests";i8Q.METRIC_KESTREL_REJECTED_CONNECTIONS="kestrel.rejected_connections";i8Q.METRIC_KESTREL_TLS_HANDSHAKE_DURATION="kestrel.tls_handshake.duration";i8Q.METRIC_KESTREL_UPGRADED_CONNECTIONS="kestrel.upgraded_connections";i8Q.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS="signalr.server.active_connections";i8Q.METRIC_SIGNALR_SERVER_CONNECTION_DURATION="signalr.server.connection.duration"});var r8Q=R((VX)=>{var CG0=VX&&VX.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),CP=VX&&VX.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))CG0(Q,A,B)};Object.defineProperty(VX,"__esModule",{value:!0});CP(ZJQ(),VX);CP(m8Q(),VX);CP(p8Q(),VX);CP(s8Q(),VX)});var t8Q=R((a8Q)=>{Object.defineProperty(a8Q,"__esModule",{value:!0});a8Q.ExceptionEventName=void 0;a8Q.ExceptionEventName="exception"});var Ci=R((A5Q)=>{Object.defineProperty(A5Q,"__esModule",{value:!0});A5Q.Span=void 0;var n5=yA(),gJ=MB(),D$=r8Q(),XG0=t8Q();class e8Q{constructor(A,Q,B,Y,J,C,X=[],G,W,F){this.attributes={},this.links=[],this.events=[],this._droppedAttributesCount=0,this._droppedEventsCount=0,this._droppedLinksCount=0,this.status={code:n5.SpanStatusCode.UNSET},this.endTime=[0,0],this._ended=!1,this._duration=[-1,-1],this.name=B,this._spanContext=Y,this.parentSpanId=C,this.kind=J,this.links=X;let Z=Date.now();if(this._performanceStartTime=gJ.otperformance.now(),this._performanceOffset=Z-(this._performanceStartTime+(0,gJ.getTimeOrigin)()),this._startTimeProvided=G!=null,this.startTime=this._getTime(G!==null&&G!==void 0?G:Z),this.resource=A.resource,this.instrumentationLibrary=A.instrumentationLibrary,this._spanLimits=A.getSpanLimits(),this._attributeValueLengthLimit=this._spanLimits.attributeValueLengthLimit||0,F!=null)this.setAttributes(F);this._spanProcessor=A.getActiveSpanProcessor(),this._spanProcessor.onStart(this,Q)}spanContext(){return this._spanContext}setAttribute(A,Q){if(Q==null||this._isSpanEnded())return this;if(A.length===0)return n5.diag.warn(`Invalid attribute key: ${A}`),this;if(!(0,gJ.isAttributeValue)(Q))return n5.diag.warn(`Invalid attribute value set for key: ${A}`),this;if(Object.keys(this.attributes).length>=this._spanLimits.attributeCountLimit&&!Object.prototype.hasOwnProperty.call(this.attributes,A))return this._droppedAttributesCount++,this;return this.attributes[A]=this._truncateToSize(Q),this}setAttributes(A){for(let[Q,B]of Object.entries(A))this.setAttribute(Q,B);return this}addEvent(A,Q,B){if(this._isSpanEnded())return this;if(this._spanLimits.eventCountLimit===0)return n5.diag.warn("No events allowed."),this._droppedEventsCount++,this;if(this.events.length>=this._spanLimits.eventCountLimit){if(this._droppedEventsCount===0)n5.diag.debug("Dropping extra events.");this.events.shift(),this._droppedEventsCount++}if((0,gJ.isTimeInput)(Q)){if(!(0,gJ.isTimeInput)(B))B=Q;Q=void 0}let Y=(0,gJ.sanitizeAttributes)(Q);return this.events.push({name:A,attributes:Y,time:this._getTime(B),droppedAttributesCount:0}),this}addLink(A){return this.links.push(A),this}addLinks(A){return this.links.push(...A),this}setStatus(A){if(this._isSpanEnded())return this;if(this.status=Object.assign({},A),this.status.message!=null&&typeof A.message!=="string")n5.diag.warn(`Dropping invalid status.message of type '${typeof A.message}', expected 'string'`),delete this.status.message;return this}updateName(A){if(this._isSpanEnded())return this;return this.name=A,this}end(A){if(this._isSpanEnded()){n5.diag.error(`${this.name} ${this._spanContext.traceId}-${this._spanContext.spanId} - You can only call end() on a span once.`);return}if(this._ended=!0,this.endTime=this._getTime(A),this._duration=(0,gJ.hrTimeDuration)(this.startTime,this.endTime),this._duration[0]<0)n5.diag.warn("Inconsistent start and end time, startTime > endTime. Setting span duration to 0ms.",this.startTime,this.endTime),this.endTime=this.startTime.slice(),this._duration=[0,0];if(this._droppedEventsCount>0)n5.diag.warn(`Dropped ${this._droppedEventsCount} events because eventCountLimit reached`);this._spanProcessor.onEnd(this)}_getTime(A){if(typeof A==="number"&&A<=gJ.otperformance.now())return(0,gJ.hrTime)(A+this._performanceOffset);if(typeof A==="number")return(0,gJ.millisToHrTime)(A);if(A instanceof Date)return(0,gJ.millisToHrTime)(A.getTime());if((0,gJ.isTimeInputHrTime)(A))return A;if(this._startTimeProvided)return(0,gJ.millisToHrTime)(Date.now());let Q=gJ.otperformance.now()-this._performanceStartTime;return(0,gJ.addHrTimes)(this.startTime,(0,gJ.millisToHrTime)(Q))}isRecording(){return this._ended===!1}recordException(A,Q){let B={};if(typeof A==="string")B[D$.SEMATTRS_EXCEPTION_MESSAGE]=A;else if(A){if(A.code)B[D$.SEMATTRS_EXCEPTION_TYPE]=A.code.toString();else if(A.name)B[D$.SEMATTRS_EXCEPTION_TYPE]=A.name;if(A.message)B[D$.SEMATTRS_EXCEPTION_MESSAGE]=A.message;if(A.stack)B[D$.SEMATTRS_EXCEPTION_STACKTRACE]=A.stack}if(B[D$.SEMATTRS_EXCEPTION_TYPE]||B[D$.SEMATTRS_EXCEPTION_MESSAGE])this.addEvent(XG0.ExceptionEventName,B,Q);else n5.diag.warn(`Failed to record an exception ${A}`)}get duration(){return this._duration}get ended(){return this._ended}get droppedAttributesCount(){return this._droppedAttributesCount}get droppedEventsCount(){return this._droppedEventsCount}get droppedLinksCount(){return this._droppedLinksCount}_isSpanEnded(){if(this._ended)n5.diag.warn(`Can not execute the operation on ended Span {traceId: ${this._spanContext.traceId}, spanId: ${this._spanContext.spanId}}`);return this._ended}_truncateToLimitUtil(A,Q){if(A.length<=Q)return A;return A.substring(0,Q)}_truncateToSize(A){let Q=this._attributeValueLengthLimit;if(Q<=0)return n5.diag.warn(`Attribute value limit must be positive, got ${Q}`),A;if(typeof A==="string")return this._truncateToLimitUtil(A,Q);if(Array.isArray(A))return A.map((B)=>typeof B==="string"?this._truncateToLimitUtil(B,Q):B);return A}}A5Q.Span=e8Q});var OL=R((B5Q)=>{Object.defineProperty(B5Q,"__esModule",{value:!0});B5Q.SamplingDecision=void 0;var GG0;(function(A){A[A.NOT_RECORD=0]="NOT_RECORD",A[A.RECORD=1]="RECORD",A[A.RECORD_AND_SAMPLED=2]="RECORD_AND_SAMPLED"})(GG0=B5Q.SamplingDecision||(B5Q.SamplingDecision={}))});var XP=R((J5Q)=>{Object.defineProperty(J5Q,"__esModule",{value:!0});J5Q.AlwaysOffSampler=void 0;var WG0=OL();class Y5Q{shouldSample(){return{decision:WG0.SamplingDecision.NOT_RECORD}}toString(){return"AlwaysOffSampler"}}J5Q.AlwaysOffSampler=Y5Q});var GP=R((G5Q)=>{Object.defineProperty(G5Q,"__esModule",{value:!0});G5Q.AlwaysOnSampler=void 0;var FG0=OL();class X5Q{shouldSample(){return{decision:FG0.SamplingDecision.RECORD_AND_SAMPLED}}toString(){return"AlwaysOnSampler"}}G5Q.AlwaysOnSampler=X5Q});var Wi=R(($5Q)=>{Object.defineProperty($5Q,"__esModule",{value:!0});$5Q.ParentBasedSampler=void 0;var WP=yA(),ZG0=MB(),F5Q=XP(),Gi=GP();class Z5Q{constructor(A){var Q,B,Y,J;if(this._root=A.root,!this._root)(0,ZG0.globalErrorHandler)(Error("ParentBasedSampler must have a root sampler configured")),this._root=new Gi.AlwaysOnSampler;this._remoteParentSampled=(Q=A.remoteParentSampled)!==null&&Q!==void 0?Q:new Gi.AlwaysOnSampler,this._remoteParentNotSampled=(B=A.remoteParentNotSampled)!==null&&B!==void 0?B:new F5Q.AlwaysOffSampler,this._localParentSampled=(Y=A.localParentSampled)!==null&&Y!==void 0?Y:new Gi.AlwaysOnSampler,this._localParentNotSampled=(J=A.localParentNotSampled)!==null&&J!==void 0?J:new F5Q.AlwaysOffSampler}shouldSample(A,Q,B,Y,J,C){let X=WP.trace.getSpanContext(A);if(!X||!(0,WP.isSpanContextValid)(X))return this._root.shouldSample(A,Q,B,Y,J,C);if(X.isRemote){if(X.traceFlags&WP.TraceFlags.SAMPLED)return this._remoteParentSampled.shouldSample(A,Q,B,Y,J,C);return this._remoteParentNotSampled.shouldSample(A,Q,B,Y,J,C)}if(X.traceFlags&WP.TraceFlags.SAMPLED)return this._localParentSampled.shouldSample(A,Q,B,Y,J,C);return this._localParentNotSampled.shouldSample(A,Q,B,Y,J,C)}toString(){return`ParentBased{root=${this._root.toString()}, remoteParentSampled=${this._remoteParentSampled.toString()}, remoteParentNotSampled=${this._remoteParentNotSampled.toString()}, localParentSampled=${this._localParentSampled.toString()}, localParentNotSampled=${this._localParentNotSampled.toString()}}`}}$5Q.ParentBasedSampler=Z5Q});var Fi=R((V5Q)=>{Object.defineProperty(V5Q,"__esModule",{value:!0});V5Q.TraceIdRatioBasedSampler=void 0;var $G0=yA(),E5Q=OL();class K5Q{constructor(A=0){this._ratio=A,this._ratio=this._normalize(A),this._upperBound=Math.floor(this._ratio*4294967295)}shouldSample(A,Q){return{decision:(0,$G0.isValidTraceId)(Q)&&this._accumulate(Q)=1?1:A<=0?0:A}_accumulate(A){let Q=0;for(let B=0;B>>0}return Q}}V5Q.TraceIdRatioBasedSampler=K5Q});var Ui=R((q5Q)=>{Object.defineProperty(q5Q,"__esModule",{value:!0});q5Q.buildSamplerFromEnv=q5Q.loadDefaultConfig=void 0;var FP=yA(),ZG=MB(),H5Q=XP(),Zi=GP(),$i=Wi(),D5Q=Fi(),UG0=ZG.TracesSamplerValues.AlwaysOn,VK=1;function EG0(){let A=(0,ZG.getEnv)();return{sampler:L5Q(A),forceFlushTimeoutMillis:30000,generalLimits:{attributeValueLengthLimit:A.OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT,attributeCountLimit:A.OTEL_ATTRIBUTE_COUNT_LIMIT},spanLimits:{attributeValueLengthLimit:A.OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT,attributeCountLimit:A.OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT,linkCountLimit:A.OTEL_SPAN_LINK_COUNT_LIMIT,eventCountLimit:A.OTEL_SPAN_EVENT_COUNT_LIMIT,attributePerEventCountLimit:A.OTEL_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT,attributePerLinkCountLimit:A.OTEL_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT},mergeResourceWithDefaults:!0}}q5Q.loadDefaultConfig=EG0;function L5Q(A=(0,ZG.getEnv)()){switch(A.OTEL_TRACES_SAMPLER){case ZG.TracesSamplerValues.AlwaysOn:return new Zi.AlwaysOnSampler;case ZG.TracesSamplerValues.AlwaysOff:return new H5Q.AlwaysOffSampler;case ZG.TracesSamplerValues.ParentBasedAlwaysOn:return new $i.ParentBasedSampler({root:new Zi.AlwaysOnSampler});case ZG.TracesSamplerValues.ParentBasedAlwaysOff:return new $i.ParentBasedSampler({root:new H5Q.AlwaysOffSampler});case ZG.TracesSamplerValues.TraceIdRatio:return new D5Q.TraceIdRatioBasedSampler(N5Q(A));case ZG.TracesSamplerValues.ParentBasedTraceIdRatio:return new $i.ParentBasedSampler({root:new D5Q.TraceIdRatioBasedSampler(N5Q(A))});default:return FP.diag.error(`OTEL_TRACES_SAMPLER value "${A.OTEL_TRACES_SAMPLER} invalid, defaulting to ${UG0}".`),new Zi.AlwaysOnSampler}}q5Q.buildSamplerFromEnv=L5Q;function N5Q(A){if(A.OTEL_TRACES_SAMPLER_ARG===void 0||A.OTEL_TRACES_SAMPLER_ARG==="")return FP.diag.error(`OTEL_TRACES_SAMPLER_ARG is blank, defaulting to ${VK}.`),VK;let Q=Number(A.OTEL_TRACES_SAMPLER_ARG);if(isNaN(Q))return FP.diag.error(`OTEL_TRACES_SAMPLER_ARG=${A.OTEL_TRACES_SAMPLER_ARG} was given, but it is invalid, defaulting to ${VK}.`),VK;if(Q<0||Q>1)return FP.diag.error(`OTEL_TRACES_SAMPLER_ARG=${A.OTEL_TRACES_SAMPLER_ARG} was given, but it is out of range ([0..1]), defaulting to ${VK}.`),VK;return Q}});var Ki=R((R5Q)=>{Object.defineProperty(R5Q,"__esModule",{value:!0});R5Q.reconfigureLimits=R5Q.mergeConfig=void 0;var z5Q=Ui(),Ei=MB();function VG0(A){let Q={sampler:(0,z5Q.buildSamplerFromEnv)()},B=(0,z5Q.loadDefaultConfig)(),Y=Object.assign({},B,Q,A);return Y.generalLimits=Object.assign({},B.generalLimits,A.generalLimits||{}),Y.spanLimits=Object.assign({},B.spanLimits,A.spanLimits||{}),Y}R5Q.mergeConfig=VG0;function IG0(A){var Q,B,Y,J,C,X,G,W,F,Z,U,$;let E=Object.assign({},A.spanLimits),K=(0,Ei.getEnvWithoutDefaults)();return E.attributeCountLimit=(X=(C=(J=(B=(Q=A.spanLimits)===null||Q===void 0?void 0:Q.attributeCountLimit)!==null&&B!==void 0?B:(Y=A.generalLimits)===null||Y===void 0?void 0:Y.attributeCountLimit)!==null&&J!==void 0?J:K.OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT)!==null&&C!==void 0?C:K.OTEL_ATTRIBUTE_COUNT_LIMIT)!==null&&X!==void 0?X:Ei.DEFAULT_ATTRIBUTE_COUNT_LIMIT,E.attributeValueLengthLimit=($=(U=(Z=(W=(G=A.spanLimits)===null||G===void 0?void 0:G.attributeValueLengthLimit)!==null&&W!==void 0?W:(F=A.generalLimits)===null||F===void 0?void 0:F.attributeValueLengthLimit)!==null&&Z!==void 0?Z:K.OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT)!==null&&U!==void 0?U:K.OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT)!==null&&$!==void 0?$:Ei.DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT,Object.assign({},A,{spanLimits:E})}R5Q.reconfigureLimits=IG0});var T5Q=R((O5Q)=>{Object.defineProperty(O5Q,"__esModule",{value:!0});O5Q.BatchSpanProcessorBase=void 0;var IK=yA(),N$=MB();class j5Q{constructor(A,Q){this._exporter=A,this._isExporting=!1,this._finishedSpans=[],this._droppedSpansCount=0;let B=(0,N$.getEnv)();if(this._maxExportBatchSize=typeof(Q===null||Q===void 0?void 0:Q.maxExportBatchSize)==="number"?Q.maxExportBatchSize:B.OTEL_BSP_MAX_EXPORT_BATCH_SIZE,this._maxQueueSize=typeof(Q===null||Q===void 0?void 0:Q.maxQueueSize)==="number"?Q.maxQueueSize:B.OTEL_BSP_MAX_QUEUE_SIZE,this._scheduledDelayMillis=typeof(Q===null||Q===void 0?void 0:Q.scheduledDelayMillis)==="number"?Q.scheduledDelayMillis:B.OTEL_BSP_SCHEDULE_DELAY,this._exportTimeoutMillis=typeof(Q===null||Q===void 0?void 0:Q.exportTimeoutMillis)==="number"?Q.exportTimeoutMillis:B.OTEL_BSP_EXPORT_TIMEOUT,this._shutdownOnce=new N$.BindOnceFuture(this._shutdown,this),this._maxExportBatchSize>this._maxQueueSize)IK.diag.warn("BatchSpanProcessor: maxExportBatchSize must be smaller or equal to maxQueueSize, setting maxExportBatchSize to match maxQueueSize"),this._maxExportBatchSize=this._maxQueueSize}forceFlush(){if(this._shutdownOnce.isCalled)return this._shutdownOnce.promise;return this._flushAll()}onStart(A,Q){}onEnd(A){if(this._shutdownOnce.isCalled)return;if((A.spanContext().traceFlags&IK.TraceFlags.SAMPLED)===0)return;this._addToBuffer(A)}shutdown(){return this._shutdownOnce.call()}_shutdown(){return Promise.resolve().then(()=>{return this.onShutdown()}).then(()=>{return this._flushAll()}).then(()=>{return this._exporter.shutdown()})}_addToBuffer(A){if(this._finishedSpans.length>=this._maxQueueSize){if(this._droppedSpansCount===0)IK.diag.debug("maxQueueSize reached, dropping spans");this._droppedSpansCount++;return}if(this._droppedSpansCount>0)IK.diag.warn(`Dropped ${this._droppedSpansCount} spans because maxQueueSize reached`),this._droppedSpansCount=0;this._finishedSpans.push(A),this._maybeStartTimer()}_flushAll(){return new Promise((A,Q)=>{let B=[],Y=Math.ceil(this._finishedSpans.length/this._maxExportBatchSize);for(let J=0,C=Y;J{A()}).catch(Q)})}_flushOneBatch(){if(this._clearTimer(),this._finishedSpans.length===0)return Promise.resolve();return new Promise((A,Q)=>{let B=setTimeout(()=>{Q(Error("Timeout"))},this._exportTimeoutMillis);IK.context.with((0,N$.suppressTracing)(IK.context.active()),()=>{let Y;if(this._finishedSpans.length<=this._maxExportBatchSize)Y=this._finishedSpans,this._finishedSpans=[];else Y=this._finishedSpans.splice(0,this._maxExportBatchSize);let J=()=>this._exporter.export(Y,(X)=>{var G;if(clearTimeout(B),X.code===N$.ExportResultCode.SUCCESS)A();else Q((G=X.error)!==null&&G!==void 0?G:Error("BatchSpanProcessor: span export failed"))}),C=null;for(let X=0,G=Y.length;X{(0,N$.globalErrorHandler)(X),Q(X)})})})}_maybeStartTimer(){if(this._isExporting)return;let A=()=>{this._isExporting=!0,this._flushOneBatch().finally(()=>{if(this._isExporting=!1,this._finishedSpans.length>0)this._clearTimer(),this._maybeStartTimer()}).catch((Q)=>{this._isExporting=!1,(0,N$.globalErrorHandler)(Q)})};if(this._finishedSpans.length>=this._maxExportBatchSize)return A();if(this._timer!==void 0)return;this._timer=setTimeout(()=>A(),this._scheduledDelayMillis),(0,N$.unrefTimer)(this._timer)}_clearTimer(){if(this._timer!==void 0)clearTimeout(this._timer),this._timer=void 0}}O5Q.BatchSpanProcessorBase=j5Q});var v5Q=R((k5Q)=>{Object.defineProperty(k5Q,"__esModule",{value:!0});k5Q.BatchSpanProcessor=void 0;var DG0=T5Q();class S5Q extends DG0.BatchSpanProcessorBase{onShutdown(){}}k5Q.BatchSpanProcessor=S5Q});var b5Q=R((x5Q)=>{Object.defineProperty(x5Q,"__esModule",{value:!0});x5Q.RandomIdGenerator=void 0;var NG0=8,g5Q=16;class h5Q{constructor(){this.generateTraceId=y5Q(g5Q),this.generateSpanId=y5Q(NG0)}}x5Q.RandomIdGenerator=h5Q;var ZP=Buffer.allocUnsafe(g5Q);function y5Q(A){return function(){for(let B=0;B>>0,B*4);for(let B=0;B0)break;else if(B===A-1)ZP[A-1]=1;return ZP.toString("hex",0,A)}}});var m5Q=R(($P)=>{Object.defineProperty($P,"__esModule",{value:!0});$P.RandomIdGenerator=$P.BatchSpanProcessor=void 0;var LG0=v5Q();Object.defineProperty($P,"BatchSpanProcessor",{enumerable:!0,get:function(){return LG0.BatchSpanProcessor}});var qG0=b5Q();Object.defineProperty($P,"RandomIdGenerator",{enumerable:!0,get:function(){return qG0.RandomIdGenerator}})});var EP=R((UP)=>{Object.defineProperty(UP,"__esModule",{value:!0});UP.RandomIdGenerator=UP.BatchSpanProcessor=void 0;var u5Q=m5Q();Object.defineProperty(UP,"BatchSpanProcessor",{enumerable:!0,get:function(){return u5Q.BatchSpanProcessor}});Object.defineProperty(UP,"RandomIdGenerator",{enumerable:!0,get:function(){return u5Q.RandomIdGenerator}})});var Vi=R((c5Q)=>{Object.defineProperty(c5Q,"__esModule",{value:!0});c5Q.Tracer=void 0;var EJ=yA(),KP=MB(),RG0=Ci(),wG0=Ki(),jG0=EP();class d5Q{constructor(A,Q,B){this._tracerProvider=B;let Y=(0,wG0.mergeConfig)(Q);this._sampler=Y.sampler,this._generalLimits=Y.generalLimits,this._spanLimits=Y.spanLimits,this._idGenerator=Q.idGenerator||new jG0.RandomIdGenerator,this.resource=B.resource,this.instrumentationLibrary=A}startSpan(A,Q={},B=EJ.context.active()){var Y,J,C;if(Q.root)B=EJ.trace.deleteSpan(B);let X=EJ.trace.getSpan(B);if((0,KP.isTracingSuppressed)(B))return EJ.diag.debug("Instrumentation suppressed, returning Noop Span"),EJ.trace.wrapSpanContext(EJ.INVALID_SPAN_CONTEXT);let G=X===null||X===void 0?void 0:X.spanContext(),W=this._idGenerator.generateSpanId(),F,Z,U;if(!G||!EJ.trace.isSpanContextValid(G))F=this._idGenerator.generateTraceId();else F=G.traceId,Z=G.traceState,U=G.spanId;let $=(Y=Q.kind)!==null&&Y!==void 0?Y:EJ.SpanKind.INTERNAL,E=((J=Q.links)!==null&&J!==void 0?J:[]).map((z)=>{return{context:z.context,attributes:(0,KP.sanitizeAttributes)(z.attributes)}}),K=(0,KP.sanitizeAttributes)(Q.attributes),I=this._sampler.shouldSample(B,F,A,$,K,E);Z=(C=I.traceState)!==null&&C!==void 0?C:Z;let V=I.decision===EJ.SamplingDecision.RECORD_AND_SAMPLED?EJ.TraceFlags.SAMPLED:EJ.TraceFlags.NONE,H={traceId:F,spanId:W,traceFlags:V,traceState:Z};if(I.decision===EJ.SamplingDecision.NOT_RECORD)return EJ.diag.debug("Recording is off, propagating context in a non-recording span"),EJ.trace.wrapSpanContext(H);let D=(0,KP.sanitizeAttributes)(Object.assign(K,I.attributes));return new RG0.Span(this,B,A,H,$,U,E,Q.startTime,void 0,D)}startActiveSpan(A,Q,B,Y){let J,C,X;if(arguments.length<2)return;else if(arguments.length===2)X=Q;else if(arguments.length===3)J=Q,X=B;else J=Q,C=B,X=Y;let G=C!==null&&C!==void 0?C:EJ.context.active(),W=this.startSpan(A,J,G),F=EJ.trace.setSpan(G,W);return EJ.context.with(F,X,void 0,W)}getGeneralLimits(){return this._generalLimits}getSpanLimits(){return this._spanLimits}getActiveSpanProcessor(){return this._tracerProvider.getActiveSpanProcessor()}}c5Q.Tracer=d5Q});var Ii=R((p5Q)=>{Object.defineProperty(p5Q,"__esModule",{value:!0});p5Q.createConstMap=void 0;function OG0(A){let Q={},B=A.length;for(let Y=0;Y{Object.defineProperty(hGQ,"__esModule",{value:!0});hGQ.SEMATTRS_NET_HOST_CARRIER_ICC=hGQ.SEMATTRS_NET_HOST_CARRIER_MNC=hGQ.SEMATTRS_NET_HOST_CARRIER_MCC=hGQ.SEMATTRS_NET_HOST_CARRIER_NAME=hGQ.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=hGQ.SEMATTRS_NET_HOST_CONNECTION_TYPE=hGQ.SEMATTRS_NET_HOST_NAME=hGQ.SEMATTRS_NET_HOST_PORT=hGQ.SEMATTRS_NET_HOST_IP=hGQ.SEMATTRS_NET_PEER_NAME=hGQ.SEMATTRS_NET_PEER_PORT=hGQ.SEMATTRS_NET_PEER_IP=hGQ.SEMATTRS_NET_TRANSPORT=hGQ.SEMATTRS_FAAS_INVOKED_REGION=hGQ.SEMATTRS_FAAS_INVOKED_PROVIDER=hGQ.SEMATTRS_FAAS_INVOKED_NAME=hGQ.SEMATTRS_FAAS_COLDSTART=hGQ.SEMATTRS_FAAS_CRON=hGQ.SEMATTRS_FAAS_TIME=hGQ.SEMATTRS_FAAS_DOCUMENT_NAME=hGQ.SEMATTRS_FAAS_DOCUMENT_TIME=hGQ.SEMATTRS_FAAS_DOCUMENT_OPERATION=hGQ.SEMATTRS_FAAS_DOCUMENT_COLLECTION=hGQ.SEMATTRS_FAAS_EXECUTION=hGQ.SEMATTRS_FAAS_TRIGGER=hGQ.SEMATTRS_EXCEPTION_ESCAPED=hGQ.SEMATTRS_EXCEPTION_STACKTRACE=hGQ.SEMATTRS_EXCEPTION_MESSAGE=hGQ.SEMATTRS_EXCEPTION_TYPE=hGQ.SEMATTRS_DB_SQL_TABLE=hGQ.SEMATTRS_DB_MONGODB_COLLECTION=hGQ.SEMATTRS_DB_REDIS_DATABASE_INDEX=hGQ.SEMATTRS_DB_HBASE_NAMESPACE=hGQ.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=hGQ.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=hGQ.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=hGQ.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=hGQ.SEMATTRS_DB_CASSANDRA_TABLE=hGQ.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=hGQ.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=hGQ.SEMATTRS_DB_CASSANDRA_KEYSPACE=hGQ.SEMATTRS_DB_MSSQL_INSTANCE_NAME=hGQ.SEMATTRS_DB_OPERATION=hGQ.SEMATTRS_DB_STATEMENT=hGQ.SEMATTRS_DB_NAME=hGQ.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=hGQ.SEMATTRS_DB_USER=hGQ.SEMATTRS_DB_CONNECTION_STRING=hGQ.SEMATTRS_DB_SYSTEM=hGQ.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=void 0;hGQ.SEMATTRS_MESSAGING_DESTINATION_KIND=hGQ.SEMATTRS_MESSAGING_DESTINATION=hGQ.SEMATTRS_MESSAGING_SYSTEM=hGQ.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=hGQ.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=hGQ.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=hGQ.SEMATTRS_AWS_DYNAMODB_COUNT=hGQ.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=hGQ.SEMATTRS_AWS_DYNAMODB_SEGMENT=hGQ.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=hGQ.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=hGQ.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=hGQ.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=hGQ.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=hGQ.SEMATTRS_AWS_DYNAMODB_SELECT=hGQ.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=hGQ.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=hGQ.SEMATTRS_AWS_DYNAMODB_LIMIT=hGQ.SEMATTRS_AWS_DYNAMODB_PROJECTION=hGQ.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=hGQ.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=hGQ.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=hGQ.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=hGQ.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=hGQ.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=hGQ.SEMATTRS_HTTP_CLIENT_IP=hGQ.SEMATTRS_HTTP_ROUTE=hGQ.SEMATTRS_HTTP_SERVER_NAME=hGQ.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=hGQ.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=hGQ.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=hGQ.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=hGQ.SEMATTRS_HTTP_USER_AGENT=hGQ.SEMATTRS_HTTP_FLAVOR=hGQ.SEMATTRS_HTTP_STATUS_CODE=hGQ.SEMATTRS_HTTP_SCHEME=hGQ.SEMATTRS_HTTP_HOST=hGQ.SEMATTRS_HTTP_TARGET=hGQ.SEMATTRS_HTTP_URL=hGQ.SEMATTRS_HTTP_METHOD=hGQ.SEMATTRS_CODE_LINENO=hGQ.SEMATTRS_CODE_FILEPATH=hGQ.SEMATTRS_CODE_NAMESPACE=hGQ.SEMATTRS_CODE_FUNCTION=hGQ.SEMATTRS_THREAD_NAME=hGQ.SEMATTRS_THREAD_ID=hGQ.SEMATTRS_ENDUSER_SCOPE=hGQ.SEMATTRS_ENDUSER_ROLE=hGQ.SEMATTRS_ENDUSER_ID=hGQ.SEMATTRS_PEER_SERVICE=void 0;hGQ.DBSYSTEMVALUES_FILEMAKER=hGQ.DBSYSTEMVALUES_DERBY=hGQ.DBSYSTEMVALUES_FIREBIRD=hGQ.DBSYSTEMVALUES_ADABAS=hGQ.DBSYSTEMVALUES_CACHE=hGQ.DBSYSTEMVALUES_EDB=hGQ.DBSYSTEMVALUES_FIRSTSQL=hGQ.DBSYSTEMVALUES_INGRES=hGQ.DBSYSTEMVALUES_HANADB=hGQ.DBSYSTEMVALUES_MAXDB=hGQ.DBSYSTEMVALUES_PROGRESS=hGQ.DBSYSTEMVALUES_HSQLDB=hGQ.DBSYSTEMVALUES_CLOUDSCAPE=hGQ.DBSYSTEMVALUES_HIVE=hGQ.DBSYSTEMVALUES_REDSHIFT=hGQ.DBSYSTEMVALUES_POSTGRESQL=hGQ.DBSYSTEMVALUES_DB2=hGQ.DBSYSTEMVALUES_ORACLE=hGQ.DBSYSTEMVALUES_MYSQL=hGQ.DBSYSTEMVALUES_MSSQL=hGQ.DBSYSTEMVALUES_OTHER_SQL=hGQ.SemanticAttributes=hGQ.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=hGQ.SEMATTRS_MESSAGE_COMPRESSED_SIZE=hGQ.SEMATTRS_MESSAGE_ID=hGQ.SEMATTRS_MESSAGE_TYPE=hGQ.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=hGQ.SEMATTRS_RPC_JSONRPC_ERROR_CODE=hGQ.SEMATTRS_RPC_JSONRPC_REQUEST_ID=hGQ.SEMATTRS_RPC_JSONRPC_VERSION=hGQ.SEMATTRS_RPC_GRPC_STATUS_CODE=hGQ.SEMATTRS_RPC_METHOD=hGQ.SEMATTRS_RPC_SERVICE=hGQ.SEMATTRS_RPC_SYSTEM=hGQ.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=hGQ.SEMATTRS_MESSAGING_KAFKA_PARTITION=hGQ.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=hGQ.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=hGQ.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=hGQ.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=hGQ.SEMATTRS_MESSAGING_CONSUMER_ID=hGQ.SEMATTRS_MESSAGING_OPERATION=hGQ.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=hGQ.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=hGQ.SEMATTRS_MESSAGING_CONVERSATION_ID=hGQ.SEMATTRS_MESSAGING_MESSAGE_ID=hGQ.SEMATTRS_MESSAGING_URL=hGQ.SEMATTRS_MESSAGING_PROTOCOL_VERSION=hGQ.SEMATTRS_MESSAGING_PROTOCOL=hGQ.SEMATTRS_MESSAGING_TEMP_DESTINATION=void 0;hGQ.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=hGQ.FaasDocumentOperationValues=hGQ.FAASDOCUMENTOPERATIONVALUES_DELETE=hGQ.FAASDOCUMENTOPERATIONVALUES_EDIT=hGQ.FAASDOCUMENTOPERATIONVALUES_INSERT=hGQ.FaasTriggerValues=hGQ.FAASTRIGGERVALUES_OTHER=hGQ.FAASTRIGGERVALUES_TIMER=hGQ.FAASTRIGGERVALUES_PUBSUB=hGQ.FAASTRIGGERVALUES_HTTP=hGQ.FAASTRIGGERVALUES_DATASOURCE=hGQ.DbCassandraConsistencyLevelValues=hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=hGQ.DbSystemValues=hGQ.DBSYSTEMVALUES_COCKROACHDB=hGQ.DBSYSTEMVALUES_MEMCACHED=hGQ.DBSYSTEMVALUES_ELASTICSEARCH=hGQ.DBSYSTEMVALUES_GEODE=hGQ.DBSYSTEMVALUES_NEO4J=hGQ.DBSYSTEMVALUES_DYNAMODB=hGQ.DBSYSTEMVALUES_COSMOSDB=hGQ.DBSYSTEMVALUES_COUCHDB=hGQ.DBSYSTEMVALUES_COUCHBASE=hGQ.DBSYSTEMVALUES_REDIS=hGQ.DBSYSTEMVALUES_MONGODB=hGQ.DBSYSTEMVALUES_HBASE=hGQ.DBSYSTEMVALUES_CASSANDRA=hGQ.DBSYSTEMVALUES_COLDFUSION=hGQ.DBSYSTEMVALUES_H2=hGQ.DBSYSTEMVALUES_VERTICA=hGQ.DBSYSTEMVALUES_TERADATA=hGQ.DBSYSTEMVALUES_SYBASE=hGQ.DBSYSTEMVALUES_SQLITE=hGQ.DBSYSTEMVALUES_POINTBASE=hGQ.DBSYSTEMVALUES_PERVASIVE=hGQ.DBSYSTEMVALUES_NETEZZA=hGQ.DBSYSTEMVALUES_MARIADB=hGQ.DBSYSTEMVALUES_INTERBASE=hGQ.DBSYSTEMVALUES_INSTANTDB=hGQ.DBSYSTEMVALUES_INFORMIX=void 0;hGQ.MESSAGINGOPERATIONVALUES_RECEIVE=hGQ.MessagingDestinationKindValues=hGQ.MESSAGINGDESTINATIONKINDVALUES_TOPIC=hGQ.MESSAGINGDESTINATIONKINDVALUES_QUEUE=hGQ.HttpFlavorValues=hGQ.HTTPFLAVORVALUES_QUIC=hGQ.HTTPFLAVORVALUES_SPDY=hGQ.HTTPFLAVORVALUES_HTTP_2_0=hGQ.HTTPFLAVORVALUES_HTTP_1_1=hGQ.HTTPFLAVORVALUES_HTTP_1_0=hGQ.NetHostConnectionSubtypeValues=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_NR=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=hGQ.NetHostConnectionTypeValues=hGQ.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=hGQ.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=hGQ.NETHOSTCONNECTIONTYPEVALUES_CELL=hGQ.NETHOSTCONNECTIONTYPEVALUES_WIRED=hGQ.NETHOSTCONNECTIONTYPEVALUES_WIFI=hGQ.NetTransportValues=hGQ.NETTRANSPORTVALUES_OTHER=hGQ.NETTRANSPORTVALUES_INPROC=hGQ.NETTRANSPORTVALUES_PIPE=hGQ.NETTRANSPORTVALUES_UNIX=hGQ.NETTRANSPORTVALUES_IP=hGQ.NETTRANSPORTVALUES_IP_UDP=hGQ.NETTRANSPORTVALUES_IP_TCP=hGQ.FaasInvokedProviderValues=hGQ.FAASINVOKEDPROVIDERVALUES_GCP=hGQ.FAASINVOKEDPROVIDERVALUES_AZURE=hGQ.FAASINVOKEDPROVIDERVALUES_AWS=void 0;hGQ.MessageTypeValues=hGQ.MESSAGETYPEVALUES_RECEIVED=hGQ.MESSAGETYPEVALUES_SENT=hGQ.RpcGrpcStatusCodeValues=hGQ.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=hGQ.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=hGQ.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=hGQ.RPCGRPCSTATUSCODEVALUES_INTERNAL=hGQ.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=hGQ.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=hGQ.RPCGRPCSTATUSCODEVALUES_ABORTED=hGQ.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=hGQ.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=hGQ.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=hGQ.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=hGQ.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=hGQ.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=hGQ.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=hGQ.RPCGRPCSTATUSCODEVALUES_UNKNOWN=hGQ.RPCGRPCSTATUSCODEVALUES_CANCELLED=hGQ.RPCGRPCSTATUSCODEVALUES_OK=hGQ.MessagingOperationValues=hGQ.MESSAGINGOPERATIONVALUES_PROCESS=void 0;var s5=Ii(),n5Q="aws.lambda.invoked_arn",s5Q="db.system",r5Q="db.connection_string",a5Q="db.user",o5Q="db.jdbc.driver_classname",t5Q="db.name",e5Q="db.statement",ACQ="db.operation",QCQ="db.mssql.instance_name",BCQ="db.cassandra.keyspace",YCQ="db.cassandra.page_size",JCQ="db.cassandra.consistency_level",CCQ="db.cassandra.table",XCQ="db.cassandra.idempotence",GCQ="db.cassandra.speculative_execution_count",WCQ="db.cassandra.coordinator.id",FCQ="db.cassandra.coordinator.dc",ZCQ="db.hbase.namespace",$CQ="db.redis.database_index",UCQ="db.mongodb.collection",ECQ="db.sql.table",KCQ="exception.type",VCQ="exception.message",ICQ="exception.stacktrace",HCQ="exception.escaped",DCQ="faas.trigger",NCQ="faas.execution",LCQ="faas.document.collection",qCQ="faas.document.operation",MCQ="faas.document.time",zCQ="faas.document.name",RCQ="faas.time",wCQ="faas.cron",jCQ="faas.coldstart",OCQ="faas.invoked_name",PCQ="faas.invoked_provider",TCQ="faas.invoked_region",SCQ="net.transport",kCQ="net.peer.ip",_CQ="net.peer.port",vCQ="net.peer.name",yCQ="net.host.ip",gCQ="net.host.port",hCQ="net.host.name",xCQ="net.host.connection.type",fCQ="net.host.connection.subtype",bCQ="net.host.carrier.name",mCQ="net.host.carrier.mcc",uCQ="net.host.carrier.mnc",dCQ="net.host.carrier.icc",cCQ="peer.service",lCQ="enduser.id",pCQ="enduser.role",iCQ="enduser.scope",nCQ="thread.id",sCQ="thread.name",rCQ="code.function",aCQ="code.namespace",oCQ="code.filepath",tCQ="code.lineno",eCQ="http.method",A1Q="http.url",Q1Q="http.target",B1Q="http.host",Y1Q="http.scheme",J1Q="http.status_code",C1Q="http.flavor",X1Q="http.user_agent",G1Q="http.request_content_length",W1Q="http.request_content_length_uncompressed",F1Q="http.response_content_length",Z1Q="http.response_content_length_uncompressed",$1Q="http.server_name",U1Q="http.route",E1Q="http.client_ip",K1Q="aws.dynamodb.table_names",V1Q="aws.dynamodb.consumed_capacity",I1Q="aws.dynamodb.item_collection_metrics",H1Q="aws.dynamodb.provisioned_read_capacity",D1Q="aws.dynamodb.provisioned_write_capacity",N1Q="aws.dynamodb.consistent_read",L1Q="aws.dynamodb.projection",q1Q="aws.dynamodb.limit",M1Q="aws.dynamodb.attributes_to_get",z1Q="aws.dynamodb.index_name",R1Q="aws.dynamodb.select",w1Q="aws.dynamodb.global_secondary_indexes",j1Q="aws.dynamodb.local_secondary_indexes",O1Q="aws.dynamodb.exclusive_start_table",P1Q="aws.dynamodb.table_count",T1Q="aws.dynamodb.scan_forward",S1Q="aws.dynamodb.segment",k1Q="aws.dynamodb.total_segments",_1Q="aws.dynamodb.count",v1Q="aws.dynamodb.scanned_count",y1Q="aws.dynamodb.attribute_definitions",g1Q="aws.dynamodb.global_secondary_index_updates",h1Q="messaging.system",x1Q="messaging.destination",f1Q="messaging.destination_kind",b1Q="messaging.temp_destination",m1Q="messaging.protocol",u1Q="messaging.protocol_version",d1Q="messaging.url",c1Q="messaging.message_id",l1Q="messaging.conversation_id",p1Q="messaging.message_payload_size_bytes",i1Q="messaging.message_payload_compressed_size_bytes",n1Q="messaging.operation",s1Q="messaging.consumer_id",r1Q="messaging.rabbitmq.routing_key",a1Q="messaging.kafka.message_key",o1Q="messaging.kafka.consumer_group",t1Q="messaging.kafka.client_id",e1Q="messaging.kafka.partition",AXQ="messaging.kafka.tombstone",QXQ="rpc.system",BXQ="rpc.service",YXQ="rpc.method",JXQ="rpc.grpc.status_code",CXQ="rpc.jsonrpc.version",XXQ="rpc.jsonrpc.request_id",GXQ="rpc.jsonrpc.error_code",WXQ="rpc.jsonrpc.error_message",FXQ="message.type",ZXQ="message.id",$XQ="message.compressed_size",UXQ="message.uncompressed_size";hGQ.SEMATTRS_AWS_LAMBDA_INVOKED_ARN=n5Q;hGQ.SEMATTRS_DB_SYSTEM=s5Q;hGQ.SEMATTRS_DB_CONNECTION_STRING=r5Q;hGQ.SEMATTRS_DB_USER=a5Q;hGQ.SEMATTRS_DB_JDBC_DRIVER_CLASSNAME=o5Q;hGQ.SEMATTRS_DB_NAME=t5Q;hGQ.SEMATTRS_DB_STATEMENT=e5Q;hGQ.SEMATTRS_DB_OPERATION=ACQ;hGQ.SEMATTRS_DB_MSSQL_INSTANCE_NAME=QCQ;hGQ.SEMATTRS_DB_CASSANDRA_KEYSPACE=BCQ;hGQ.SEMATTRS_DB_CASSANDRA_PAGE_SIZE=YCQ;hGQ.SEMATTRS_DB_CASSANDRA_CONSISTENCY_LEVEL=JCQ;hGQ.SEMATTRS_DB_CASSANDRA_TABLE=CCQ;hGQ.SEMATTRS_DB_CASSANDRA_IDEMPOTENCE=XCQ;hGQ.SEMATTRS_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT=GCQ;hGQ.SEMATTRS_DB_CASSANDRA_COORDINATOR_ID=WCQ;hGQ.SEMATTRS_DB_CASSANDRA_COORDINATOR_DC=FCQ;hGQ.SEMATTRS_DB_HBASE_NAMESPACE=ZCQ;hGQ.SEMATTRS_DB_REDIS_DATABASE_INDEX=$CQ;hGQ.SEMATTRS_DB_MONGODB_COLLECTION=UCQ;hGQ.SEMATTRS_DB_SQL_TABLE=ECQ;hGQ.SEMATTRS_EXCEPTION_TYPE=KCQ;hGQ.SEMATTRS_EXCEPTION_MESSAGE=VCQ;hGQ.SEMATTRS_EXCEPTION_STACKTRACE=ICQ;hGQ.SEMATTRS_EXCEPTION_ESCAPED=HCQ;hGQ.SEMATTRS_FAAS_TRIGGER=DCQ;hGQ.SEMATTRS_FAAS_EXECUTION=NCQ;hGQ.SEMATTRS_FAAS_DOCUMENT_COLLECTION=LCQ;hGQ.SEMATTRS_FAAS_DOCUMENT_OPERATION=qCQ;hGQ.SEMATTRS_FAAS_DOCUMENT_TIME=MCQ;hGQ.SEMATTRS_FAAS_DOCUMENT_NAME=zCQ;hGQ.SEMATTRS_FAAS_TIME=RCQ;hGQ.SEMATTRS_FAAS_CRON=wCQ;hGQ.SEMATTRS_FAAS_COLDSTART=jCQ;hGQ.SEMATTRS_FAAS_INVOKED_NAME=OCQ;hGQ.SEMATTRS_FAAS_INVOKED_PROVIDER=PCQ;hGQ.SEMATTRS_FAAS_INVOKED_REGION=TCQ;hGQ.SEMATTRS_NET_TRANSPORT=SCQ;hGQ.SEMATTRS_NET_PEER_IP=kCQ;hGQ.SEMATTRS_NET_PEER_PORT=_CQ;hGQ.SEMATTRS_NET_PEER_NAME=vCQ;hGQ.SEMATTRS_NET_HOST_IP=yCQ;hGQ.SEMATTRS_NET_HOST_PORT=gCQ;hGQ.SEMATTRS_NET_HOST_NAME=hCQ;hGQ.SEMATTRS_NET_HOST_CONNECTION_TYPE=xCQ;hGQ.SEMATTRS_NET_HOST_CONNECTION_SUBTYPE=fCQ;hGQ.SEMATTRS_NET_HOST_CARRIER_NAME=bCQ;hGQ.SEMATTRS_NET_HOST_CARRIER_MCC=mCQ;hGQ.SEMATTRS_NET_HOST_CARRIER_MNC=uCQ;hGQ.SEMATTRS_NET_HOST_CARRIER_ICC=dCQ;hGQ.SEMATTRS_PEER_SERVICE=cCQ;hGQ.SEMATTRS_ENDUSER_ID=lCQ;hGQ.SEMATTRS_ENDUSER_ROLE=pCQ;hGQ.SEMATTRS_ENDUSER_SCOPE=iCQ;hGQ.SEMATTRS_THREAD_ID=nCQ;hGQ.SEMATTRS_THREAD_NAME=sCQ;hGQ.SEMATTRS_CODE_FUNCTION=rCQ;hGQ.SEMATTRS_CODE_NAMESPACE=aCQ;hGQ.SEMATTRS_CODE_FILEPATH=oCQ;hGQ.SEMATTRS_CODE_LINENO=tCQ;hGQ.SEMATTRS_HTTP_METHOD=eCQ;hGQ.SEMATTRS_HTTP_URL=A1Q;hGQ.SEMATTRS_HTTP_TARGET=Q1Q;hGQ.SEMATTRS_HTTP_HOST=B1Q;hGQ.SEMATTRS_HTTP_SCHEME=Y1Q;hGQ.SEMATTRS_HTTP_STATUS_CODE=J1Q;hGQ.SEMATTRS_HTTP_FLAVOR=C1Q;hGQ.SEMATTRS_HTTP_USER_AGENT=X1Q;hGQ.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH=G1Q;hGQ.SEMATTRS_HTTP_REQUEST_CONTENT_LENGTH_UNCOMPRESSED=W1Q;hGQ.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH=F1Q;hGQ.SEMATTRS_HTTP_RESPONSE_CONTENT_LENGTH_UNCOMPRESSED=Z1Q;hGQ.SEMATTRS_HTTP_SERVER_NAME=$1Q;hGQ.SEMATTRS_HTTP_ROUTE=U1Q;hGQ.SEMATTRS_HTTP_CLIENT_IP=E1Q;hGQ.SEMATTRS_AWS_DYNAMODB_TABLE_NAMES=K1Q;hGQ.SEMATTRS_AWS_DYNAMODB_CONSUMED_CAPACITY=V1Q;hGQ.SEMATTRS_AWS_DYNAMODB_ITEM_COLLECTION_METRICS=I1Q;hGQ.SEMATTRS_AWS_DYNAMODB_PROVISIONED_READ_CAPACITY=H1Q;hGQ.SEMATTRS_AWS_DYNAMODB_PROVISIONED_WRITE_CAPACITY=D1Q;hGQ.SEMATTRS_AWS_DYNAMODB_CONSISTENT_READ=N1Q;hGQ.SEMATTRS_AWS_DYNAMODB_PROJECTION=L1Q;hGQ.SEMATTRS_AWS_DYNAMODB_LIMIT=q1Q;hGQ.SEMATTRS_AWS_DYNAMODB_ATTRIBUTES_TO_GET=M1Q;hGQ.SEMATTRS_AWS_DYNAMODB_INDEX_NAME=z1Q;hGQ.SEMATTRS_AWS_DYNAMODB_SELECT=R1Q;hGQ.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEXES=w1Q;hGQ.SEMATTRS_AWS_DYNAMODB_LOCAL_SECONDARY_INDEXES=j1Q;hGQ.SEMATTRS_AWS_DYNAMODB_EXCLUSIVE_START_TABLE=O1Q;hGQ.SEMATTRS_AWS_DYNAMODB_TABLE_COUNT=P1Q;hGQ.SEMATTRS_AWS_DYNAMODB_SCAN_FORWARD=T1Q;hGQ.SEMATTRS_AWS_DYNAMODB_SEGMENT=S1Q;hGQ.SEMATTRS_AWS_DYNAMODB_TOTAL_SEGMENTS=k1Q;hGQ.SEMATTRS_AWS_DYNAMODB_COUNT=_1Q;hGQ.SEMATTRS_AWS_DYNAMODB_SCANNED_COUNT=v1Q;hGQ.SEMATTRS_AWS_DYNAMODB_ATTRIBUTE_DEFINITIONS=y1Q;hGQ.SEMATTRS_AWS_DYNAMODB_GLOBAL_SECONDARY_INDEX_UPDATES=g1Q;hGQ.SEMATTRS_MESSAGING_SYSTEM=h1Q;hGQ.SEMATTRS_MESSAGING_DESTINATION=x1Q;hGQ.SEMATTRS_MESSAGING_DESTINATION_KIND=f1Q;hGQ.SEMATTRS_MESSAGING_TEMP_DESTINATION=b1Q;hGQ.SEMATTRS_MESSAGING_PROTOCOL=m1Q;hGQ.SEMATTRS_MESSAGING_PROTOCOL_VERSION=u1Q;hGQ.SEMATTRS_MESSAGING_URL=d1Q;hGQ.SEMATTRS_MESSAGING_MESSAGE_ID=c1Q;hGQ.SEMATTRS_MESSAGING_CONVERSATION_ID=l1Q;hGQ.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_SIZE_BYTES=p1Q;hGQ.SEMATTRS_MESSAGING_MESSAGE_PAYLOAD_COMPRESSED_SIZE_BYTES=i1Q;hGQ.SEMATTRS_MESSAGING_OPERATION=n1Q;hGQ.SEMATTRS_MESSAGING_CONSUMER_ID=s1Q;hGQ.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY=r1Q;hGQ.SEMATTRS_MESSAGING_KAFKA_MESSAGE_KEY=a1Q;hGQ.SEMATTRS_MESSAGING_KAFKA_CONSUMER_GROUP=o1Q;hGQ.SEMATTRS_MESSAGING_KAFKA_CLIENT_ID=t1Q;hGQ.SEMATTRS_MESSAGING_KAFKA_PARTITION=e1Q;hGQ.SEMATTRS_MESSAGING_KAFKA_TOMBSTONE=AXQ;hGQ.SEMATTRS_RPC_SYSTEM=QXQ;hGQ.SEMATTRS_RPC_SERVICE=BXQ;hGQ.SEMATTRS_RPC_METHOD=YXQ;hGQ.SEMATTRS_RPC_GRPC_STATUS_CODE=JXQ;hGQ.SEMATTRS_RPC_JSONRPC_VERSION=CXQ;hGQ.SEMATTRS_RPC_JSONRPC_REQUEST_ID=XXQ;hGQ.SEMATTRS_RPC_JSONRPC_ERROR_CODE=GXQ;hGQ.SEMATTRS_RPC_JSONRPC_ERROR_MESSAGE=WXQ;hGQ.SEMATTRS_MESSAGE_TYPE=FXQ;hGQ.SEMATTRS_MESSAGE_ID=ZXQ;hGQ.SEMATTRS_MESSAGE_COMPRESSED_SIZE=$XQ;hGQ.SEMATTRS_MESSAGE_UNCOMPRESSED_SIZE=UXQ;hGQ.SemanticAttributes=(0,s5.createConstMap)([n5Q,s5Q,r5Q,a5Q,o5Q,t5Q,e5Q,ACQ,QCQ,BCQ,YCQ,JCQ,CCQ,XCQ,GCQ,WCQ,FCQ,ZCQ,$CQ,UCQ,ECQ,KCQ,VCQ,ICQ,HCQ,DCQ,NCQ,LCQ,qCQ,MCQ,zCQ,RCQ,wCQ,jCQ,OCQ,PCQ,TCQ,SCQ,kCQ,_CQ,vCQ,yCQ,gCQ,hCQ,xCQ,fCQ,bCQ,mCQ,uCQ,dCQ,cCQ,lCQ,pCQ,iCQ,nCQ,sCQ,rCQ,aCQ,oCQ,tCQ,eCQ,A1Q,Q1Q,B1Q,Y1Q,J1Q,C1Q,X1Q,G1Q,W1Q,F1Q,Z1Q,$1Q,U1Q,E1Q,K1Q,V1Q,I1Q,H1Q,D1Q,N1Q,L1Q,q1Q,M1Q,z1Q,R1Q,w1Q,j1Q,O1Q,P1Q,T1Q,S1Q,k1Q,_1Q,v1Q,y1Q,g1Q,h1Q,x1Q,f1Q,b1Q,m1Q,u1Q,d1Q,c1Q,l1Q,p1Q,i1Q,n1Q,s1Q,r1Q,a1Q,o1Q,t1Q,e1Q,AXQ,QXQ,BXQ,YXQ,JXQ,CXQ,XXQ,GXQ,WXQ,FXQ,ZXQ,$XQ,UXQ]);var EXQ="other_sql",KXQ="mssql",VXQ="mysql",IXQ="oracle",HXQ="db2",DXQ="postgresql",NXQ="redshift",LXQ="hive",qXQ="cloudscape",MXQ="hsqldb",zXQ="progress",RXQ="maxdb",wXQ="hanadb",jXQ="ingres",OXQ="firstsql",PXQ="edb",TXQ="cache",SXQ="adabas",kXQ="firebird",_XQ="derby",vXQ="filemaker",yXQ="informix",gXQ="instantdb",hXQ="interbase",xXQ="mariadb",fXQ="netezza",bXQ="pervasive",mXQ="pointbase",uXQ="sqlite",dXQ="sybase",cXQ="teradata",lXQ="vertica",pXQ="h2",iXQ="coldfusion",nXQ="cassandra",sXQ="hbase",rXQ="mongodb",aXQ="redis",oXQ="couchbase",tXQ="couchdb",eXQ="cosmosdb",A6Q="dynamodb",Q6Q="neo4j",B6Q="geode",Y6Q="elasticsearch",J6Q="memcached",C6Q="cockroachdb";hGQ.DBSYSTEMVALUES_OTHER_SQL=EXQ;hGQ.DBSYSTEMVALUES_MSSQL=KXQ;hGQ.DBSYSTEMVALUES_MYSQL=VXQ;hGQ.DBSYSTEMVALUES_ORACLE=IXQ;hGQ.DBSYSTEMVALUES_DB2=HXQ;hGQ.DBSYSTEMVALUES_POSTGRESQL=DXQ;hGQ.DBSYSTEMVALUES_REDSHIFT=NXQ;hGQ.DBSYSTEMVALUES_HIVE=LXQ;hGQ.DBSYSTEMVALUES_CLOUDSCAPE=qXQ;hGQ.DBSYSTEMVALUES_HSQLDB=MXQ;hGQ.DBSYSTEMVALUES_PROGRESS=zXQ;hGQ.DBSYSTEMVALUES_MAXDB=RXQ;hGQ.DBSYSTEMVALUES_HANADB=wXQ;hGQ.DBSYSTEMVALUES_INGRES=jXQ;hGQ.DBSYSTEMVALUES_FIRSTSQL=OXQ;hGQ.DBSYSTEMVALUES_EDB=PXQ;hGQ.DBSYSTEMVALUES_CACHE=TXQ;hGQ.DBSYSTEMVALUES_ADABAS=SXQ;hGQ.DBSYSTEMVALUES_FIREBIRD=kXQ;hGQ.DBSYSTEMVALUES_DERBY=_XQ;hGQ.DBSYSTEMVALUES_FILEMAKER=vXQ;hGQ.DBSYSTEMVALUES_INFORMIX=yXQ;hGQ.DBSYSTEMVALUES_INSTANTDB=gXQ;hGQ.DBSYSTEMVALUES_INTERBASE=hXQ;hGQ.DBSYSTEMVALUES_MARIADB=xXQ;hGQ.DBSYSTEMVALUES_NETEZZA=fXQ;hGQ.DBSYSTEMVALUES_PERVASIVE=bXQ;hGQ.DBSYSTEMVALUES_POINTBASE=mXQ;hGQ.DBSYSTEMVALUES_SQLITE=uXQ;hGQ.DBSYSTEMVALUES_SYBASE=dXQ;hGQ.DBSYSTEMVALUES_TERADATA=cXQ;hGQ.DBSYSTEMVALUES_VERTICA=lXQ;hGQ.DBSYSTEMVALUES_H2=pXQ;hGQ.DBSYSTEMVALUES_COLDFUSION=iXQ;hGQ.DBSYSTEMVALUES_CASSANDRA=nXQ;hGQ.DBSYSTEMVALUES_HBASE=sXQ;hGQ.DBSYSTEMVALUES_MONGODB=rXQ;hGQ.DBSYSTEMVALUES_REDIS=aXQ;hGQ.DBSYSTEMVALUES_COUCHBASE=oXQ;hGQ.DBSYSTEMVALUES_COUCHDB=tXQ;hGQ.DBSYSTEMVALUES_COSMOSDB=eXQ;hGQ.DBSYSTEMVALUES_DYNAMODB=A6Q;hGQ.DBSYSTEMVALUES_NEO4J=Q6Q;hGQ.DBSYSTEMVALUES_GEODE=B6Q;hGQ.DBSYSTEMVALUES_ELASTICSEARCH=Y6Q;hGQ.DBSYSTEMVALUES_MEMCACHED=J6Q;hGQ.DBSYSTEMVALUES_COCKROACHDB=C6Q;hGQ.DbSystemValues=(0,s5.createConstMap)([EXQ,KXQ,VXQ,IXQ,HXQ,DXQ,NXQ,LXQ,qXQ,MXQ,zXQ,RXQ,wXQ,jXQ,OXQ,PXQ,TXQ,SXQ,kXQ,_XQ,vXQ,yXQ,gXQ,hXQ,xXQ,fXQ,bXQ,mXQ,uXQ,dXQ,cXQ,lXQ,pXQ,iXQ,nXQ,sXQ,rXQ,aXQ,oXQ,tXQ,eXQ,A6Q,Q6Q,B6Q,Y6Q,J6Q,C6Q]);var X6Q="all",G6Q="each_quorum",W6Q="quorum",F6Q="local_quorum",Z6Q="one",$6Q="two",U6Q="three",E6Q="local_one",K6Q="any",V6Q="serial",I6Q="local_serial";hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_ALL=X6Q;hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_EACH_QUORUM=G6Q;hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_QUORUM=W6Q;hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_QUORUM=F6Q;hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_ONE=Z6Q;hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_TWO=$6Q;hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_THREE=U6Q;hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_ONE=E6Q;hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_ANY=K6Q;hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_SERIAL=V6Q;hGQ.DBCASSANDRACONSISTENCYLEVELVALUES_LOCAL_SERIAL=I6Q;hGQ.DbCassandraConsistencyLevelValues=(0,s5.createConstMap)([X6Q,G6Q,W6Q,F6Q,Z6Q,$6Q,U6Q,E6Q,K6Q,V6Q,I6Q]);var H6Q="datasource",D6Q="http",N6Q="pubsub",L6Q="timer",q6Q="other";hGQ.FAASTRIGGERVALUES_DATASOURCE=H6Q;hGQ.FAASTRIGGERVALUES_HTTP=D6Q;hGQ.FAASTRIGGERVALUES_PUBSUB=N6Q;hGQ.FAASTRIGGERVALUES_TIMER=L6Q;hGQ.FAASTRIGGERVALUES_OTHER=q6Q;hGQ.FaasTriggerValues=(0,s5.createConstMap)([H6Q,D6Q,N6Q,L6Q,q6Q]);var M6Q="insert",z6Q="edit",R6Q="delete";hGQ.FAASDOCUMENTOPERATIONVALUES_INSERT=M6Q;hGQ.FAASDOCUMENTOPERATIONVALUES_EDIT=z6Q;hGQ.FAASDOCUMENTOPERATIONVALUES_DELETE=R6Q;hGQ.FaasDocumentOperationValues=(0,s5.createConstMap)([M6Q,z6Q,R6Q]);var w6Q="alibaba_cloud",j6Q="aws",O6Q="azure",P6Q="gcp";hGQ.FAASINVOKEDPROVIDERVALUES_ALIBABA_CLOUD=w6Q;hGQ.FAASINVOKEDPROVIDERVALUES_AWS=j6Q;hGQ.FAASINVOKEDPROVIDERVALUES_AZURE=O6Q;hGQ.FAASINVOKEDPROVIDERVALUES_GCP=P6Q;hGQ.FaasInvokedProviderValues=(0,s5.createConstMap)([w6Q,j6Q,O6Q,P6Q]);var T6Q="ip_tcp",S6Q="ip_udp",k6Q="ip",_6Q="unix",v6Q="pipe",y6Q="inproc",g6Q="other";hGQ.NETTRANSPORTVALUES_IP_TCP=T6Q;hGQ.NETTRANSPORTVALUES_IP_UDP=S6Q;hGQ.NETTRANSPORTVALUES_IP=k6Q;hGQ.NETTRANSPORTVALUES_UNIX=_6Q;hGQ.NETTRANSPORTVALUES_PIPE=v6Q;hGQ.NETTRANSPORTVALUES_INPROC=y6Q;hGQ.NETTRANSPORTVALUES_OTHER=g6Q;hGQ.NetTransportValues=(0,s5.createConstMap)([T6Q,S6Q,k6Q,_6Q,v6Q,y6Q,g6Q]);var h6Q="wifi",x6Q="wired",f6Q="cell",b6Q="unavailable",m6Q="unknown";hGQ.NETHOSTCONNECTIONTYPEVALUES_WIFI=h6Q;hGQ.NETHOSTCONNECTIONTYPEVALUES_WIRED=x6Q;hGQ.NETHOSTCONNECTIONTYPEVALUES_CELL=f6Q;hGQ.NETHOSTCONNECTIONTYPEVALUES_UNAVAILABLE=b6Q;hGQ.NETHOSTCONNECTIONTYPEVALUES_UNKNOWN=m6Q;hGQ.NetHostConnectionTypeValues=(0,s5.createConstMap)([h6Q,x6Q,f6Q,b6Q,m6Q]);var u6Q="gprs",d6Q="edge",c6Q="umts",l6Q="cdma",p6Q="evdo_0",i6Q="evdo_a",n6Q="cdma2000_1xrtt",s6Q="hsdpa",r6Q="hsupa",a6Q="hspa",o6Q="iden",t6Q="evdo_b",e6Q="lte",AGQ="ehrpd",QGQ="hspap",BGQ="gsm",YGQ="td_scdma",JGQ="iwlan",CGQ="nr",XGQ="nrnsa",GGQ="lte_ca";hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_GPRS=u6Q;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_EDGE=d6Q;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_UMTS=c6Q;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA=l6Q;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_0=p6Q;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_A=i6Q;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_CDMA2000_1XRTT=n6Q;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSDPA=s6Q;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSUPA=r6Q;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSPA=a6Q;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_IDEN=o6Q;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_EVDO_B=t6Q;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_LTE=e6Q;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_EHRPD=AGQ;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_HSPAP=QGQ;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_GSM=BGQ;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_TD_SCDMA=YGQ;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_IWLAN=JGQ;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_NR=CGQ;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_NRNSA=XGQ;hGQ.NETHOSTCONNECTIONSUBTYPEVALUES_LTE_CA=GGQ;hGQ.NetHostConnectionSubtypeValues=(0,s5.createConstMap)([u6Q,d6Q,c6Q,l6Q,p6Q,i6Q,n6Q,s6Q,r6Q,a6Q,o6Q,t6Q,e6Q,AGQ,QGQ,BGQ,YGQ,JGQ,CGQ,XGQ,GGQ]);var WGQ="1.0",FGQ="1.1",ZGQ="2.0",$GQ="SPDY",UGQ="QUIC";hGQ.HTTPFLAVORVALUES_HTTP_1_0=WGQ;hGQ.HTTPFLAVORVALUES_HTTP_1_1=FGQ;hGQ.HTTPFLAVORVALUES_HTTP_2_0=ZGQ;hGQ.HTTPFLAVORVALUES_SPDY=$GQ;hGQ.HTTPFLAVORVALUES_QUIC=UGQ;hGQ.HttpFlavorValues={HTTP_1_0:WGQ,HTTP_1_1:FGQ,HTTP_2_0:ZGQ,SPDY:$GQ,QUIC:UGQ};var EGQ="queue",KGQ="topic";hGQ.MESSAGINGDESTINATIONKINDVALUES_QUEUE=EGQ;hGQ.MESSAGINGDESTINATIONKINDVALUES_TOPIC=KGQ;hGQ.MessagingDestinationKindValues=(0,s5.createConstMap)([EGQ,KGQ]);var VGQ="receive",IGQ="process";hGQ.MESSAGINGOPERATIONVALUES_RECEIVE=VGQ;hGQ.MESSAGINGOPERATIONVALUES_PROCESS=IGQ;hGQ.MessagingOperationValues=(0,s5.createConstMap)([VGQ,IGQ]);var HGQ=0,DGQ=1,NGQ=2,LGQ=3,qGQ=4,MGQ=5,zGQ=6,RGQ=7,wGQ=8,jGQ=9,OGQ=10,PGQ=11,TGQ=12,SGQ=13,kGQ=14,_GQ=15,vGQ=16;hGQ.RPCGRPCSTATUSCODEVALUES_OK=HGQ;hGQ.RPCGRPCSTATUSCODEVALUES_CANCELLED=DGQ;hGQ.RPCGRPCSTATUSCODEVALUES_UNKNOWN=NGQ;hGQ.RPCGRPCSTATUSCODEVALUES_INVALID_ARGUMENT=LGQ;hGQ.RPCGRPCSTATUSCODEVALUES_DEADLINE_EXCEEDED=qGQ;hGQ.RPCGRPCSTATUSCODEVALUES_NOT_FOUND=MGQ;hGQ.RPCGRPCSTATUSCODEVALUES_ALREADY_EXISTS=zGQ;hGQ.RPCGRPCSTATUSCODEVALUES_PERMISSION_DENIED=RGQ;hGQ.RPCGRPCSTATUSCODEVALUES_RESOURCE_EXHAUSTED=wGQ;hGQ.RPCGRPCSTATUSCODEVALUES_FAILED_PRECONDITION=jGQ;hGQ.RPCGRPCSTATUSCODEVALUES_ABORTED=OGQ;hGQ.RPCGRPCSTATUSCODEVALUES_OUT_OF_RANGE=PGQ;hGQ.RPCGRPCSTATUSCODEVALUES_UNIMPLEMENTED=TGQ;hGQ.RPCGRPCSTATUSCODEVALUES_INTERNAL=SGQ;hGQ.RPCGRPCSTATUSCODEVALUES_UNAVAILABLE=kGQ;hGQ.RPCGRPCSTATUSCODEVALUES_DATA_LOSS=_GQ;hGQ.RPCGRPCSTATUSCODEVALUES_UNAUTHENTICATED=vGQ;hGQ.RpcGrpcStatusCodeValues={OK:HGQ,CANCELLED:DGQ,UNKNOWN:NGQ,INVALID_ARGUMENT:LGQ,DEADLINE_EXCEEDED:qGQ,NOT_FOUND:MGQ,ALREADY_EXISTS:zGQ,PERMISSION_DENIED:RGQ,RESOURCE_EXHAUSTED:wGQ,FAILED_PRECONDITION:jGQ,ABORTED:OGQ,OUT_OF_RANGE:PGQ,UNIMPLEMENTED:TGQ,INTERNAL:SGQ,UNAVAILABLE:kGQ,DATA_LOSS:_GQ,UNAUTHENTICATED:vGQ};var yGQ="SENT",gGQ="RECEIVED";hGQ.MESSAGETYPEVALUES_SENT=yGQ;hGQ.MESSAGETYPEVALUES_RECEIVED=gGQ;hGQ.MessageTypeValues=(0,s5.createConstMap)([yGQ,gGQ])});var lGQ=R((L$)=>{var w$0=L$&&L$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),j$0=L$&&L$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))w$0(Q,A,B)};Object.defineProperty(L$,"__esModule",{value:!0});j$0(cGQ(),L$)});var NFQ=R((VFQ)=>{Object.defineProperty(VFQ,"__esModule",{value:!0});VFQ.SEMRESATTRS_K8S_STATEFULSET_NAME=VFQ.SEMRESATTRS_K8S_STATEFULSET_UID=VFQ.SEMRESATTRS_K8S_DEPLOYMENT_NAME=VFQ.SEMRESATTRS_K8S_DEPLOYMENT_UID=VFQ.SEMRESATTRS_K8S_REPLICASET_NAME=VFQ.SEMRESATTRS_K8S_REPLICASET_UID=VFQ.SEMRESATTRS_K8S_CONTAINER_NAME=VFQ.SEMRESATTRS_K8S_POD_NAME=VFQ.SEMRESATTRS_K8S_POD_UID=VFQ.SEMRESATTRS_K8S_NAMESPACE_NAME=VFQ.SEMRESATTRS_K8S_NODE_UID=VFQ.SEMRESATTRS_K8S_NODE_NAME=VFQ.SEMRESATTRS_K8S_CLUSTER_NAME=VFQ.SEMRESATTRS_HOST_IMAGE_VERSION=VFQ.SEMRESATTRS_HOST_IMAGE_ID=VFQ.SEMRESATTRS_HOST_IMAGE_NAME=VFQ.SEMRESATTRS_HOST_ARCH=VFQ.SEMRESATTRS_HOST_TYPE=VFQ.SEMRESATTRS_HOST_NAME=VFQ.SEMRESATTRS_HOST_ID=VFQ.SEMRESATTRS_FAAS_MAX_MEMORY=VFQ.SEMRESATTRS_FAAS_INSTANCE=VFQ.SEMRESATTRS_FAAS_VERSION=VFQ.SEMRESATTRS_FAAS_ID=VFQ.SEMRESATTRS_FAAS_NAME=VFQ.SEMRESATTRS_DEVICE_MODEL_NAME=VFQ.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=VFQ.SEMRESATTRS_DEVICE_ID=VFQ.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=VFQ.SEMRESATTRS_CONTAINER_IMAGE_TAG=VFQ.SEMRESATTRS_CONTAINER_IMAGE_NAME=VFQ.SEMRESATTRS_CONTAINER_RUNTIME=VFQ.SEMRESATTRS_CONTAINER_ID=VFQ.SEMRESATTRS_CONTAINER_NAME=VFQ.SEMRESATTRS_AWS_LOG_STREAM_ARNS=VFQ.SEMRESATTRS_AWS_LOG_STREAM_NAMES=VFQ.SEMRESATTRS_AWS_LOG_GROUP_ARNS=VFQ.SEMRESATTRS_AWS_LOG_GROUP_NAMES=VFQ.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=VFQ.SEMRESATTRS_AWS_ECS_TASK_REVISION=VFQ.SEMRESATTRS_AWS_ECS_TASK_FAMILY=VFQ.SEMRESATTRS_AWS_ECS_TASK_ARN=VFQ.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=VFQ.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=VFQ.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=VFQ.SEMRESATTRS_CLOUD_PLATFORM=VFQ.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=VFQ.SEMRESATTRS_CLOUD_REGION=VFQ.SEMRESATTRS_CLOUD_ACCOUNT_ID=VFQ.SEMRESATTRS_CLOUD_PROVIDER=void 0;VFQ.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=VFQ.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=VFQ.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=VFQ.CLOUDPLATFORMVALUES_AZURE_AKS=VFQ.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=VFQ.CLOUDPLATFORMVALUES_AZURE_VM=VFQ.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=VFQ.CLOUDPLATFORMVALUES_AWS_LAMBDA=VFQ.CLOUDPLATFORMVALUES_AWS_EKS=VFQ.CLOUDPLATFORMVALUES_AWS_ECS=VFQ.CLOUDPLATFORMVALUES_AWS_EC2=VFQ.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=VFQ.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=VFQ.CloudProviderValues=VFQ.CLOUDPROVIDERVALUES_GCP=VFQ.CLOUDPROVIDERVALUES_AZURE=VFQ.CLOUDPROVIDERVALUES_AWS=VFQ.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=VFQ.SemanticResourceAttributes=VFQ.SEMRESATTRS_WEBENGINE_DESCRIPTION=VFQ.SEMRESATTRS_WEBENGINE_VERSION=VFQ.SEMRESATTRS_WEBENGINE_NAME=VFQ.SEMRESATTRS_TELEMETRY_AUTO_VERSION=VFQ.SEMRESATTRS_TELEMETRY_SDK_VERSION=VFQ.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=VFQ.SEMRESATTRS_TELEMETRY_SDK_NAME=VFQ.SEMRESATTRS_SERVICE_VERSION=VFQ.SEMRESATTRS_SERVICE_INSTANCE_ID=VFQ.SEMRESATTRS_SERVICE_NAMESPACE=VFQ.SEMRESATTRS_SERVICE_NAME=VFQ.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=VFQ.SEMRESATTRS_PROCESS_RUNTIME_VERSION=VFQ.SEMRESATTRS_PROCESS_RUNTIME_NAME=VFQ.SEMRESATTRS_PROCESS_OWNER=VFQ.SEMRESATTRS_PROCESS_COMMAND_ARGS=VFQ.SEMRESATTRS_PROCESS_COMMAND_LINE=VFQ.SEMRESATTRS_PROCESS_COMMAND=VFQ.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=VFQ.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=VFQ.SEMRESATTRS_PROCESS_PID=VFQ.SEMRESATTRS_OS_VERSION=VFQ.SEMRESATTRS_OS_NAME=VFQ.SEMRESATTRS_OS_DESCRIPTION=VFQ.SEMRESATTRS_OS_TYPE=VFQ.SEMRESATTRS_K8S_CRONJOB_NAME=VFQ.SEMRESATTRS_K8S_CRONJOB_UID=VFQ.SEMRESATTRS_K8S_JOB_NAME=VFQ.SEMRESATTRS_K8S_JOB_UID=VFQ.SEMRESATTRS_K8S_DAEMONSET_NAME=VFQ.SEMRESATTRS_K8S_DAEMONSET_UID=void 0;VFQ.TelemetrySdkLanguageValues=VFQ.TELEMETRYSDKLANGUAGEVALUES_WEBJS=VFQ.TELEMETRYSDKLANGUAGEVALUES_RUBY=VFQ.TELEMETRYSDKLANGUAGEVALUES_PYTHON=VFQ.TELEMETRYSDKLANGUAGEVALUES_PHP=VFQ.TELEMETRYSDKLANGUAGEVALUES_NODEJS=VFQ.TELEMETRYSDKLANGUAGEVALUES_JAVA=VFQ.TELEMETRYSDKLANGUAGEVALUES_GO=VFQ.TELEMETRYSDKLANGUAGEVALUES_ERLANG=VFQ.TELEMETRYSDKLANGUAGEVALUES_DOTNET=VFQ.TELEMETRYSDKLANGUAGEVALUES_CPP=VFQ.OsTypeValues=VFQ.OSTYPEVALUES_Z_OS=VFQ.OSTYPEVALUES_SOLARIS=VFQ.OSTYPEVALUES_AIX=VFQ.OSTYPEVALUES_HPUX=VFQ.OSTYPEVALUES_DRAGONFLYBSD=VFQ.OSTYPEVALUES_OPENBSD=VFQ.OSTYPEVALUES_NETBSD=VFQ.OSTYPEVALUES_FREEBSD=VFQ.OSTYPEVALUES_DARWIN=VFQ.OSTYPEVALUES_LINUX=VFQ.OSTYPEVALUES_WINDOWS=VFQ.HostArchValues=VFQ.HOSTARCHVALUES_X86=VFQ.HOSTARCHVALUES_PPC64=VFQ.HOSTARCHVALUES_PPC32=VFQ.HOSTARCHVALUES_IA64=VFQ.HOSTARCHVALUES_ARM64=VFQ.HOSTARCHVALUES_ARM32=VFQ.HOSTARCHVALUES_AMD64=VFQ.AwsEcsLaunchtypeValues=VFQ.AWSECSLAUNCHTYPEVALUES_FARGATE=VFQ.AWSECSLAUNCHTYPEVALUES_EC2=VFQ.CloudPlatformValues=VFQ.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=VFQ.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=VFQ.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=VFQ.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=void 0;var q$=Ii(),pGQ="cloud.provider",iGQ="cloud.account.id",nGQ="cloud.region",sGQ="cloud.availability_zone",rGQ="cloud.platform",aGQ="aws.ecs.container.arn",oGQ="aws.ecs.cluster.arn",tGQ="aws.ecs.launchtype",eGQ="aws.ecs.task.arn",A7Q="aws.ecs.task.family",Q7Q="aws.ecs.task.revision",B7Q="aws.eks.cluster.arn",Y7Q="aws.log.group.names",J7Q="aws.log.group.arns",C7Q="aws.log.stream.names",X7Q="aws.log.stream.arns",G7Q="container.name",W7Q="container.id",F7Q="container.runtime",Z7Q="container.image.name",$7Q="container.image.tag",U7Q="deployment.environment",E7Q="device.id",K7Q="device.model.identifier",V7Q="device.model.name",I7Q="faas.name",H7Q="faas.id",D7Q="faas.version",N7Q="faas.instance",L7Q="faas.max_memory",q7Q="host.id",M7Q="host.name",z7Q="host.type",R7Q="host.arch",w7Q="host.image.name",j7Q="host.image.id",O7Q="host.image.version",P7Q="k8s.cluster.name",T7Q="k8s.node.name",S7Q="k8s.node.uid",k7Q="k8s.namespace.name",_7Q="k8s.pod.uid",v7Q="k8s.pod.name",y7Q="k8s.container.name",g7Q="k8s.replicaset.uid",h7Q="k8s.replicaset.name",x7Q="k8s.deployment.uid",f7Q="k8s.deployment.name",b7Q="k8s.statefulset.uid",m7Q="k8s.statefulset.name",u7Q="k8s.daemonset.uid",d7Q="k8s.daemonset.name",c7Q="k8s.job.uid",l7Q="k8s.job.name",p7Q="k8s.cronjob.uid",i7Q="k8s.cronjob.name",n7Q="os.type",s7Q="os.description",r7Q="os.name",a7Q="os.version",o7Q="process.pid",t7Q="process.executable.name",e7Q="process.executable.path",AWQ="process.command",QWQ="process.command_line",BWQ="process.command_args",YWQ="process.owner",JWQ="process.runtime.name",CWQ="process.runtime.version",XWQ="process.runtime.description",GWQ="service.name",WWQ="service.namespace",FWQ="service.instance.id",ZWQ="service.version",$WQ="telemetry.sdk.name",UWQ="telemetry.sdk.language",EWQ="telemetry.sdk.version",KWQ="telemetry.auto.version",VWQ="webengine.name",IWQ="webengine.version",HWQ="webengine.description";VFQ.SEMRESATTRS_CLOUD_PROVIDER=pGQ;VFQ.SEMRESATTRS_CLOUD_ACCOUNT_ID=iGQ;VFQ.SEMRESATTRS_CLOUD_REGION=nGQ;VFQ.SEMRESATTRS_CLOUD_AVAILABILITY_ZONE=sGQ;VFQ.SEMRESATTRS_CLOUD_PLATFORM=rGQ;VFQ.SEMRESATTRS_AWS_ECS_CONTAINER_ARN=aGQ;VFQ.SEMRESATTRS_AWS_ECS_CLUSTER_ARN=oGQ;VFQ.SEMRESATTRS_AWS_ECS_LAUNCHTYPE=tGQ;VFQ.SEMRESATTRS_AWS_ECS_TASK_ARN=eGQ;VFQ.SEMRESATTRS_AWS_ECS_TASK_FAMILY=A7Q;VFQ.SEMRESATTRS_AWS_ECS_TASK_REVISION=Q7Q;VFQ.SEMRESATTRS_AWS_EKS_CLUSTER_ARN=B7Q;VFQ.SEMRESATTRS_AWS_LOG_GROUP_NAMES=Y7Q;VFQ.SEMRESATTRS_AWS_LOG_GROUP_ARNS=J7Q;VFQ.SEMRESATTRS_AWS_LOG_STREAM_NAMES=C7Q;VFQ.SEMRESATTRS_AWS_LOG_STREAM_ARNS=X7Q;VFQ.SEMRESATTRS_CONTAINER_NAME=G7Q;VFQ.SEMRESATTRS_CONTAINER_ID=W7Q;VFQ.SEMRESATTRS_CONTAINER_RUNTIME=F7Q;VFQ.SEMRESATTRS_CONTAINER_IMAGE_NAME=Z7Q;VFQ.SEMRESATTRS_CONTAINER_IMAGE_TAG=$7Q;VFQ.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT=U7Q;VFQ.SEMRESATTRS_DEVICE_ID=E7Q;VFQ.SEMRESATTRS_DEVICE_MODEL_IDENTIFIER=K7Q;VFQ.SEMRESATTRS_DEVICE_MODEL_NAME=V7Q;VFQ.SEMRESATTRS_FAAS_NAME=I7Q;VFQ.SEMRESATTRS_FAAS_ID=H7Q;VFQ.SEMRESATTRS_FAAS_VERSION=D7Q;VFQ.SEMRESATTRS_FAAS_INSTANCE=N7Q;VFQ.SEMRESATTRS_FAAS_MAX_MEMORY=L7Q;VFQ.SEMRESATTRS_HOST_ID=q7Q;VFQ.SEMRESATTRS_HOST_NAME=M7Q;VFQ.SEMRESATTRS_HOST_TYPE=z7Q;VFQ.SEMRESATTRS_HOST_ARCH=R7Q;VFQ.SEMRESATTRS_HOST_IMAGE_NAME=w7Q;VFQ.SEMRESATTRS_HOST_IMAGE_ID=j7Q;VFQ.SEMRESATTRS_HOST_IMAGE_VERSION=O7Q;VFQ.SEMRESATTRS_K8S_CLUSTER_NAME=P7Q;VFQ.SEMRESATTRS_K8S_NODE_NAME=T7Q;VFQ.SEMRESATTRS_K8S_NODE_UID=S7Q;VFQ.SEMRESATTRS_K8S_NAMESPACE_NAME=k7Q;VFQ.SEMRESATTRS_K8S_POD_UID=_7Q;VFQ.SEMRESATTRS_K8S_POD_NAME=v7Q;VFQ.SEMRESATTRS_K8S_CONTAINER_NAME=y7Q;VFQ.SEMRESATTRS_K8S_REPLICASET_UID=g7Q;VFQ.SEMRESATTRS_K8S_REPLICASET_NAME=h7Q;VFQ.SEMRESATTRS_K8S_DEPLOYMENT_UID=x7Q;VFQ.SEMRESATTRS_K8S_DEPLOYMENT_NAME=f7Q;VFQ.SEMRESATTRS_K8S_STATEFULSET_UID=b7Q;VFQ.SEMRESATTRS_K8S_STATEFULSET_NAME=m7Q;VFQ.SEMRESATTRS_K8S_DAEMONSET_UID=u7Q;VFQ.SEMRESATTRS_K8S_DAEMONSET_NAME=d7Q;VFQ.SEMRESATTRS_K8S_JOB_UID=c7Q;VFQ.SEMRESATTRS_K8S_JOB_NAME=l7Q;VFQ.SEMRESATTRS_K8S_CRONJOB_UID=p7Q;VFQ.SEMRESATTRS_K8S_CRONJOB_NAME=i7Q;VFQ.SEMRESATTRS_OS_TYPE=n7Q;VFQ.SEMRESATTRS_OS_DESCRIPTION=s7Q;VFQ.SEMRESATTRS_OS_NAME=r7Q;VFQ.SEMRESATTRS_OS_VERSION=a7Q;VFQ.SEMRESATTRS_PROCESS_PID=o7Q;VFQ.SEMRESATTRS_PROCESS_EXECUTABLE_NAME=t7Q;VFQ.SEMRESATTRS_PROCESS_EXECUTABLE_PATH=e7Q;VFQ.SEMRESATTRS_PROCESS_COMMAND=AWQ;VFQ.SEMRESATTRS_PROCESS_COMMAND_LINE=QWQ;VFQ.SEMRESATTRS_PROCESS_COMMAND_ARGS=BWQ;VFQ.SEMRESATTRS_PROCESS_OWNER=YWQ;VFQ.SEMRESATTRS_PROCESS_RUNTIME_NAME=JWQ;VFQ.SEMRESATTRS_PROCESS_RUNTIME_VERSION=CWQ;VFQ.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION=XWQ;VFQ.SEMRESATTRS_SERVICE_NAME=GWQ;VFQ.SEMRESATTRS_SERVICE_NAMESPACE=WWQ;VFQ.SEMRESATTRS_SERVICE_INSTANCE_ID=FWQ;VFQ.SEMRESATTRS_SERVICE_VERSION=ZWQ;VFQ.SEMRESATTRS_TELEMETRY_SDK_NAME=$WQ;VFQ.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE=UWQ;VFQ.SEMRESATTRS_TELEMETRY_SDK_VERSION=EWQ;VFQ.SEMRESATTRS_TELEMETRY_AUTO_VERSION=KWQ;VFQ.SEMRESATTRS_WEBENGINE_NAME=VWQ;VFQ.SEMRESATTRS_WEBENGINE_VERSION=IWQ;VFQ.SEMRESATTRS_WEBENGINE_DESCRIPTION=HWQ;VFQ.SemanticResourceAttributes=(0,q$.createConstMap)([pGQ,iGQ,nGQ,sGQ,rGQ,aGQ,oGQ,tGQ,eGQ,A7Q,Q7Q,B7Q,Y7Q,J7Q,C7Q,X7Q,G7Q,W7Q,F7Q,Z7Q,$7Q,U7Q,E7Q,K7Q,V7Q,I7Q,H7Q,D7Q,N7Q,L7Q,q7Q,M7Q,z7Q,R7Q,w7Q,j7Q,O7Q,P7Q,T7Q,S7Q,k7Q,_7Q,v7Q,y7Q,g7Q,h7Q,x7Q,f7Q,b7Q,m7Q,u7Q,d7Q,c7Q,l7Q,p7Q,i7Q,n7Q,s7Q,r7Q,a7Q,o7Q,t7Q,e7Q,AWQ,QWQ,BWQ,YWQ,JWQ,CWQ,XWQ,GWQ,WWQ,FWQ,ZWQ,$WQ,UWQ,EWQ,KWQ,VWQ,IWQ,HWQ]);var DWQ="alibaba_cloud",NWQ="aws",LWQ="azure",qWQ="gcp";VFQ.CLOUDPROVIDERVALUES_ALIBABA_CLOUD=DWQ;VFQ.CLOUDPROVIDERVALUES_AWS=NWQ;VFQ.CLOUDPROVIDERVALUES_AZURE=LWQ;VFQ.CLOUDPROVIDERVALUES_GCP=qWQ;VFQ.CloudProviderValues=(0,q$.createConstMap)([DWQ,NWQ,LWQ,qWQ]);var MWQ="alibaba_cloud_ecs",zWQ="alibaba_cloud_fc",RWQ="aws_ec2",wWQ="aws_ecs",jWQ="aws_eks",OWQ="aws_lambda",PWQ="aws_elastic_beanstalk",TWQ="azure_vm",SWQ="azure_container_instances",kWQ="azure_aks",_WQ="azure_functions",vWQ="azure_app_service",yWQ="gcp_compute_engine",gWQ="gcp_cloud_run",hWQ="gcp_kubernetes_engine",xWQ="gcp_cloud_functions",fWQ="gcp_app_engine";VFQ.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS=MWQ;VFQ.CLOUDPLATFORMVALUES_ALIBABA_CLOUD_FC=zWQ;VFQ.CLOUDPLATFORMVALUES_AWS_EC2=RWQ;VFQ.CLOUDPLATFORMVALUES_AWS_ECS=wWQ;VFQ.CLOUDPLATFORMVALUES_AWS_EKS=jWQ;VFQ.CLOUDPLATFORMVALUES_AWS_LAMBDA=OWQ;VFQ.CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK=PWQ;VFQ.CLOUDPLATFORMVALUES_AZURE_VM=TWQ;VFQ.CLOUDPLATFORMVALUES_AZURE_CONTAINER_INSTANCES=SWQ;VFQ.CLOUDPLATFORMVALUES_AZURE_AKS=kWQ;VFQ.CLOUDPLATFORMVALUES_AZURE_FUNCTIONS=_WQ;VFQ.CLOUDPLATFORMVALUES_AZURE_APP_SERVICE=vWQ;VFQ.CLOUDPLATFORMVALUES_GCP_COMPUTE_ENGINE=yWQ;VFQ.CLOUDPLATFORMVALUES_GCP_CLOUD_RUN=gWQ;VFQ.CLOUDPLATFORMVALUES_GCP_KUBERNETES_ENGINE=hWQ;VFQ.CLOUDPLATFORMVALUES_GCP_CLOUD_FUNCTIONS=xWQ;VFQ.CLOUDPLATFORMVALUES_GCP_APP_ENGINE=fWQ;VFQ.CloudPlatformValues=(0,q$.createConstMap)([MWQ,zWQ,RWQ,wWQ,jWQ,OWQ,PWQ,TWQ,SWQ,kWQ,_WQ,vWQ,yWQ,gWQ,hWQ,xWQ,fWQ]);var bWQ="ec2",mWQ="fargate";VFQ.AWSECSLAUNCHTYPEVALUES_EC2=bWQ;VFQ.AWSECSLAUNCHTYPEVALUES_FARGATE=mWQ;VFQ.AwsEcsLaunchtypeValues=(0,q$.createConstMap)([bWQ,mWQ]);var uWQ="amd64",dWQ="arm32",cWQ="arm64",lWQ="ia64",pWQ="ppc32",iWQ="ppc64",nWQ="x86";VFQ.HOSTARCHVALUES_AMD64=uWQ;VFQ.HOSTARCHVALUES_ARM32=dWQ;VFQ.HOSTARCHVALUES_ARM64=cWQ;VFQ.HOSTARCHVALUES_IA64=lWQ;VFQ.HOSTARCHVALUES_PPC32=pWQ;VFQ.HOSTARCHVALUES_PPC64=iWQ;VFQ.HOSTARCHVALUES_X86=nWQ;VFQ.HostArchValues=(0,q$.createConstMap)([uWQ,dWQ,cWQ,lWQ,pWQ,iWQ,nWQ]);var sWQ="windows",rWQ="linux",aWQ="darwin",oWQ="freebsd",tWQ="netbsd",eWQ="openbsd",AFQ="dragonflybsd",QFQ="hpux",BFQ="aix",YFQ="solaris",JFQ="z_os";VFQ.OSTYPEVALUES_WINDOWS=sWQ;VFQ.OSTYPEVALUES_LINUX=rWQ;VFQ.OSTYPEVALUES_DARWIN=aWQ;VFQ.OSTYPEVALUES_FREEBSD=oWQ;VFQ.OSTYPEVALUES_NETBSD=tWQ;VFQ.OSTYPEVALUES_OPENBSD=eWQ;VFQ.OSTYPEVALUES_DRAGONFLYBSD=AFQ;VFQ.OSTYPEVALUES_HPUX=QFQ;VFQ.OSTYPEVALUES_AIX=BFQ;VFQ.OSTYPEVALUES_SOLARIS=YFQ;VFQ.OSTYPEVALUES_Z_OS=JFQ;VFQ.OsTypeValues=(0,q$.createConstMap)([sWQ,rWQ,aWQ,oWQ,tWQ,eWQ,AFQ,QFQ,BFQ,YFQ,JFQ]);var CFQ="cpp",XFQ="dotnet",GFQ="erlang",WFQ="go",FFQ="java",ZFQ="nodejs",$FQ="php",UFQ="python",EFQ="ruby",KFQ="webjs";VFQ.TELEMETRYSDKLANGUAGEVALUES_CPP=CFQ;VFQ.TELEMETRYSDKLANGUAGEVALUES_DOTNET=XFQ;VFQ.TELEMETRYSDKLANGUAGEVALUES_ERLANG=GFQ;VFQ.TELEMETRYSDKLANGUAGEVALUES_GO=WFQ;VFQ.TELEMETRYSDKLANGUAGEVALUES_JAVA=FFQ;VFQ.TELEMETRYSDKLANGUAGEVALUES_NODEJS=ZFQ;VFQ.TELEMETRYSDKLANGUAGEVALUES_PHP=$FQ;VFQ.TELEMETRYSDKLANGUAGEVALUES_PYTHON=UFQ;VFQ.TELEMETRYSDKLANGUAGEVALUES_RUBY=EFQ;VFQ.TELEMETRYSDKLANGUAGEVALUES_WEBJS=KFQ;VFQ.TelemetrySdkLanguageValues=(0,q$.createConstMap)([CFQ,XFQ,GFQ,WFQ,FFQ,ZFQ,$FQ,UFQ,EFQ,KFQ])});var LFQ=R((M$)=>{var QE0=M$&&M$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),BE0=M$&&M$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))QE0(Q,A,B)};Object.defineProperty(M$,"__esModule",{value:!0});BE0(NFQ(),M$)});var wFQ=R((qFQ)=>{Object.defineProperty(qFQ,"__esModule",{value:!0});qFQ.HTTP_REQUEST_METHOD_VALUE_POST=qFQ.HTTP_REQUEST_METHOD_VALUE_PATCH=qFQ.HTTP_REQUEST_METHOD_VALUE_OPTIONS=qFQ.HTTP_REQUEST_METHOD_VALUE_HEAD=qFQ.HTTP_REQUEST_METHOD_VALUE_GET=qFQ.HTTP_REQUEST_METHOD_VALUE_DELETE=qFQ.HTTP_REQUEST_METHOD_VALUE_CONNECT=qFQ.HTTP_REQUEST_METHOD_VALUE_OTHER=qFQ.ATTR_HTTP_REQUEST_METHOD=qFQ.ATTR_HTTP_REQUEST_HEADER=qFQ.ATTR_EXCEPTION_TYPE=qFQ.ATTR_EXCEPTION_STACKTRACE=qFQ.ATTR_EXCEPTION_MESSAGE=qFQ.ATTR_EXCEPTION_ESCAPED=qFQ.ERROR_TYPE_VALUE_OTHER=qFQ.ATTR_ERROR_TYPE=qFQ.ATTR_CLIENT_PORT=qFQ.ATTR_CLIENT_ADDRESS=qFQ.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS=qFQ.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE=qFQ.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS=qFQ.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK=qFQ.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED=qFQ.ATTR_ASPNETCORE_RATE_LIMITING_POLICY=qFQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED=qFQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED=qFQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED=qFQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED=qFQ.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT=qFQ.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE=qFQ.ATTR_TELEMETRY_SDK_VERSION=qFQ.ATTR_TELEMETRY_SDK_NAME=qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS=qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT=qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_RUST=qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY=qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON=qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_PHP=qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS=qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA=qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_GO=qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG=qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET=qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_CPP=qFQ.ATTR_TELEMETRY_SDK_LANGUAGE=qFQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED=qFQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER=qFQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER=qFQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED=qFQ.ATTR_ASPNETCORE_RATE_LIMITING_RESULT=void 0;qFQ.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT=qFQ.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE=qFQ.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN=qFQ.ATTR_SIGNALR_CONNECTION_STATUS=qFQ.ATTR_SERVICE_VERSION=qFQ.ATTR_SERVICE_NAME=qFQ.ATTR_SERVER_PORT=qFQ.ATTR_SERVER_ADDRESS=qFQ.ATTR_OTEL_STATUS_DESCRIPTION=qFQ.OTEL_STATUS_CODE_VALUE_OK=qFQ.OTEL_STATUS_CODE_VALUE_ERROR=qFQ.ATTR_OTEL_STATUS_CODE=qFQ.ATTR_OTEL_SCOPE_VERSION=qFQ.ATTR_OTEL_SCOPE_NAME=qFQ.NETWORK_TYPE_VALUE_IPV6=qFQ.NETWORK_TYPE_VALUE_IPV4=qFQ.ATTR_NETWORK_TYPE=qFQ.NETWORK_TRANSPORT_VALUE_UNIX=qFQ.NETWORK_TRANSPORT_VALUE_UDP=qFQ.NETWORK_TRANSPORT_VALUE_TCP=qFQ.NETWORK_TRANSPORT_VALUE_QUIC=qFQ.NETWORK_TRANSPORT_VALUE_PIPE=qFQ.ATTR_NETWORK_TRANSPORT=qFQ.ATTR_NETWORK_PROTOCOL_VERSION=qFQ.ATTR_NETWORK_PROTOCOL_NAME=qFQ.ATTR_NETWORK_PEER_PORT=qFQ.ATTR_NETWORK_PEER_ADDRESS=qFQ.ATTR_NETWORK_LOCAL_PORT=qFQ.ATTR_NETWORK_LOCAL_ADDRESS=qFQ.JVM_THREAD_STATE_VALUE_WAITING=qFQ.JVM_THREAD_STATE_VALUE_TIMED_WAITING=qFQ.JVM_THREAD_STATE_VALUE_TERMINATED=qFQ.JVM_THREAD_STATE_VALUE_RUNNABLE=qFQ.JVM_THREAD_STATE_VALUE_NEW=qFQ.JVM_THREAD_STATE_VALUE_BLOCKED=qFQ.ATTR_JVM_THREAD_STATE=qFQ.ATTR_JVM_THREAD_DAEMON=qFQ.JVM_MEMORY_TYPE_VALUE_NON_HEAP=qFQ.JVM_MEMORY_TYPE_VALUE_HEAP=qFQ.ATTR_JVM_MEMORY_TYPE=qFQ.ATTR_JVM_MEMORY_POOL_NAME=qFQ.ATTR_JVM_GC_NAME=qFQ.ATTR_JVM_GC_ACTION=qFQ.ATTR_HTTP_ROUTE=qFQ.ATTR_HTTP_RESPONSE_STATUS_CODE=qFQ.ATTR_HTTP_RESPONSE_HEADER=qFQ.ATTR_HTTP_REQUEST_RESEND_COUNT=qFQ.ATTR_HTTP_REQUEST_METHOD_ORIGINAL=qFQ.HTTP_REQUEST_METHOD_VALUE_TRACE=qFQ.HTTP_REQUEST_METHOD_VALUE_PUT=void 0;qFQ.ATTR_USER_AGENT_ORIGINAL=qFQ.ATTR_URL_SCHEME=qFQ.ATTR_URL_QUERY=qFQ.ATTR_URL_PATH=qFQ.ATTR_URL_FULL=qFQ.ATTR_URL_FRAGMENT=qFQ.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS=qFQ.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS=qFQ.SIGNALR_TRANSPORT_VALUE_LONG_POLLING=qFQ.ATTR_SIGNALR_TRANSPORT=void 0;qFQ.ATTR_ASPNETCORE_RATE_LIMITING_RESULT="aspnetcore.rate_limiting.result";qFQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ACQUIRED="acquired";qFQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_ENDPOINT_LIMITER="endpoint_limiter";qFQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_GLOBAL_LIMITER="global_limiter";qFQ.ASPNETCORE_RATE_LIMITING_RESULT_VALUE_REQUEST_CANCELED="request_canceled";qFQ.ATTR_TELEMETRY_SDK_LANGUAGE="telemetry.sdk.language";qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_CPP="cpp";qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_DOTNET="dotnet";qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_ERLANG="erlang";qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_GO="go";qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_JAVA="java";qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_NODEJS="nodejs";qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_PHP="php";qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_PYTHON="python";qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_RUBY="ruby";qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_RUST="rust";qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_SWIFT="swift";qFQ.TELEMETRY_SDK_LANGUAGE_VALUE_WEBJS="webjs";qFQ.ATTR_TELEMETRY_SDK_NAME="telemetry.sdk.name";qFQ.ATTR_TELEMETRY_SDK_VERSION="telemetry.sdk.version";qFQ.ATTR_ASPNETCORE_DIAGNOSTICS_HANDLER_TYPE="aspnetcore.diagnostics.handler.type";qFQ.ATTR_ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT="aspnetcore.diagnostics.exception.result";qFQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_ABORTED="aborted";qFQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_HANDLED="handled";qFQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_SKIPPED="skipped";qFQ.ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_VALUE_UNHANDLED="unhandled";qFQ.ATTR_ASPNETCORE_RATE_LIMITING_POLICY="aspnetcore.rate_limiting.policy";qFQ.ATTR_ASPNETCORE_REQUEST_IS_UNHANDLED="aspnetcore.request.is_unhandled";qFQ.ATTR_ASPNETCORE_ROUTING_IS_FALLBACK="aspnetcore.routing.is_fallback";qFQ.ATTR_ASPNETCORE_ROUTING_MATCH_STATUS="aspnetcore.routing.match_status";qFQ.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_FAILURE="failure";qFQ.ASPNETCORE_ROUTING_MATCH_STATUS_VALUE_SUCCESS="success";qFQ.ATTR_CLIENT_ADDRESS="client.address";qFQ.ATTR_CLIENT_PORT="client.port";qFQ.ATTR_ERROR_TYPE="error.type";qFQ.ERROR_TYPE_VALUE_OTHER="_OTHER";qFQ.ATTR_EXCEPTION_ESCAPED="exception.escaped";qFQ.ATTR_EXCEPTION_MESSAGE="exception.message";qFQ.ATTR_EXCEPTION_STACKTRACE="exception.stacktrace";qFQ.ATTR_EXCEPTION_TYPE="exception.type";var YE0=(A)=>`http.request.header.${A}`;qFQ.ATTR_HTTP_REQUEST_HEADER=YE0;qFQ.ATTR_HTTP_REQUEST_METHOD="http.request.method";qFQ.HTTP_REQUEST_METHOD_VALUE_OTHER="_OTHER";qFQ.HTTP_REQUEST_METHOD_VALUE_CONNECT="CONNECT";qFQ.HTTP_REQUEST_METHOD_VALUE_DELETE="DELETE";qFQ.HTTP_REQUEST_METHOD_VALUE_GET="GET";qFQ.HTTP_REQUEST_METHOD_VALUE_HEAD="HEAD";qFQ.HTTP_REQUEST_METHOD_VALUE_OPTIONS="OPTIONS";qFQ.HTTP_REQUEST_METHOD_VALUE_PATCH="PATCH";qFQ.HTTP_REQUEST_METHOD_VALUE_POST="POST";qFQ.HTTP_REQUEST_METHOD_VALUE_PUT="PUT";qFQ.HTTP_REQUEST_METHOD_VALUE_TRACE="TRACE";qFQ.ATTR_HTTP_REQUEST_METHOD_ORIGINAL="http.request.method_original";qFQ.ATTR_HTTP_REQUEST_RESEND_COUNT="http.request.resend_count";var JE0=(A)=>`http.response.header.${A}`;qFQ.ATTR_HTTP_RESPONSE_HEADER=JE0;qFQ.ATTR_HTTP_RESPONSE_STATUS_CODE="http.response.status_code";qFQ.ATTR_HTTP_ROUTE="http.route";qFQ.ATTR_JVM_GC_ACTION="jvm.gc.action";qFQ.ATTR_JVM_GC_NAME="jvm.gc.name";qFQ.ATTR_JVM_MEMORY_POOL_NAME="jvm.memory.pool.name";qFQ.ATTR_JVM_MEMORY_TYPE="jvm.memory.type";qFQ.JVM_MEMORY_TYPE_VALUE_HEAP="heap";qFQ.JVM_MEMORY_TYPE_VALUE_NON_HEAP="non_heap";qFQ.ATTR_JVM_THREAD_DAEMON="jvm.thread.daemon";qFQ.ATTR_JVM_THREAD_STATE="jvm.thread.state";qFQ.JVM_THREAD_STATE_VALUE_BLOCKED="blocked";qFQ.JVM_THREAD_STATE_VALUE_NEW="new";qFQ.JVM_THREAD_STATE_VALUE_RUNNABLE="runnable";qFQ.JVM_THREAD_STATE_VALUE_TERMINATED="terminated";qFQ.JVM_THREAD_STATE_VALUE_TIMED_WAITING="timed_waiting";qFQ.JVM_THREAD_STATE_VALUE_WAITING="waiting";qFQ.ATTR_NETWORK_LOCAL_ADDRESS="network.local.address";qFQ.ATTR_NETWORK_LOCAL_PORT="network.local.port";qFQ.ATTR_NETWORK_PEER_ADDRESS="network.peer.address";qFQ.ATTR_NETWORK_PEER_PORT="network.peer.port";qFQ.ATTR_NETWORK_PROTOCOL_NAME="network.protocol.name";qFQ.ATTR_NETWORK_PROTOCOL_VERSION="network.protocol.version";qFQ.ATTR_NETWORK_TRANSPORT="network.transport";qFQ.NETWORK_TRANSPORT_VALUE_PIPE="pipe";qFQ.NETWORK_TRANSPORT_VALUE_QUIC="quic";qFQ.NETWORK_TRANSPORT_VALUE_TCP="tcp";qFQ.NETWORK_TRANSPORT_VALUE_UDP="udp";qFQ.NETWORK_TRANSPORT_VALUE_UNIX="unix";qFQ.ATTR_NETWORK_TYPE="network.type";qFQ.NETWORK_TYPE_VALUE_IPV4="ipv4";qFQ.NETWORK_TYPE_VALUE_IPV6="ipv6";qFQ.ATTR_OTEL_SCOPE_NAME="otel.scope.name";qFQ.ATTR_OTEL_SCOPE_VERSION="otel.scope.version";qFQ.ATTR_OTEL_STATUS_CODE="otel.status_code";qFQ.OTEL_STATUS_CODE_VALUE_ERROR="ERROR";qFQ.OTEL_STATUS_CODE_VALUE_OK="OK";qFQ.ATTR_OTEL_STATUS_DESCRIPTION="otel.status_description";qFQ.ATTR_SERVER_ADDRESS="server.address";qFQ.ATTR_SERVER_PORT="server.port";qFQ.ATTR_SERVICE_NAME="service.name";qFQ.ATTR_SERVICE_VERSION="service.version";qFQ.ATTR_SIGNALR_CONNECTION_STATUS="signalr.connection.status";qFQ.SIGNALR_CONNECTION_STATUS_VALUE_APP_SHUTDOWN="app_shutdown";qFQ.SIGNALR_CONNECTION_STATUS_VALUE_NORMAL_CLOSURE="normal_closure";qFQ.SIGNALR_CONNECTION_STATUS_VALUE_TIMEOUT="timeout";qFQ.ATTR_SIGNALR_TRANSPORT="signalr.transport";qFQ.SIGNALR_TRANSPORT_VALUE_LONG_POLLING="long_polling";qFQ.SIGNALR_TRANSPORT_VALUE_SERVER_SENT_EVENTS="server_sent_events";qFQ.SIGNALR_TRANSPORT_VALUE_WEB_SOCKETS="web_sockets";qFQ.ATTR_URL_FRAGMENT="url.fragment";qFQ.ATTR_URL_FULL="url.full";qFQ.ATTR_URL_PATH="url.path";qFQ.ATTR_URL_QUERY="url.query";qFQ.ATTR_URL_SCHEME="url.scheme";qFQ.ATTR_USER_AGENT_ORIGINAL="user_agent.original"});var PFQ=R((jFQ)=>{Object.defineProperty(jFQ,"__esModule",{value:!0});jFQ.METRIC_SIGNALR_SERVER_CONNECTION_DURATION=jFQ.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS=jFQ.METRIC_KESTREL_UPGRADED_CONNECTIONS=jFQ.METRIC_KESTREL_TLS_HANDSHAKE_DURATION=jFQ.METRIC_KESTREL_REJECTED_CONNECTIONS=jFQ.METRIC_KESTREL_QUEUED_REQUESTS=jFQ.METRIC_KESTREL_QUEUED_CONNECTIONS=jFQ.METRIC_KESTREL_CONNECTION_DURATION=jFQ.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES=jFQ.METRIC_KESTREL_ACTIVE_CONNECTIONS=jFQ.METRIC_JVM_THREAD_COUNT=jFQ.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC=jFQ.METRIC_JVM_MEMORY_USED=jFQ.METRIC_JVM_MEMORY_LIMIT=jFQ.METRIC_JVM_MEMORY_COMMITTED=jFQ.METRIC_JVM_GC_DURATION=jFQ.METRIC_JVM_CPU_TIME=jFQ.METRIC_JVM_CPU_RECENT_UTILIZATION=jFQ.METRIC_JVM_CPU_COUNT=jFQ.METRIC_JVM_CLASS_UNLOADED=jFQ.METRIC_JVM_CLASS_LOADED=jFQ.METRIC_JVM_CLASS_COUNT=jFQ.METRIC_HTTP_SERVER_REQUEST_DURATION=jFQ.METRIC_HTTP_CLIENT_REQUEST_DURATION=jFQ.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS=jFQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS=jFQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION=jFQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE=jFQ.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS=jFQ.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES=jFQ.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS=void 0;jFQ.METRIC_ASPNETCORE_DIAGNOSTICS_EXCEPTIONS="aspnetcore.diagnostics.exceptions";jFQ.METRIC_ASPNETCORE_RATE_LIMITING_ACTIVE_REQUEST_LEASES="aspnetcore.rate_limiting.active_request_leases";jFQ.METRIC_ASPNETCORE_RATE_LIMITING_QUEUED_REQUESTS="aspnetcore.rate_limiting.queued_requests";jFQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_TIME_IN_QUEUE="aspnetcore.rate_limiting.request.time_in_queue";jFQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUEST_LEASE_DURATION="aspnetcore.rate_limiting.request_lease.duration";jFQ.METRIC_ASPNETCORE_RATE_LIMITING_REQUESTS="aspnetcore.rate_limiting.requests";jFQ.METRIC_ASPNETCORE_ROUTING_MATCH_ATTEMPTS="aspnetcore.routing.match_attempts";jFQ.METRIC_HTTP_CLIENT_REQUEST_DURATION="http.client.request.duration";jFQ.METRIC_HTTP_SERVER_REQUEST_DURATION="http.server.request.duration";jFQ.METRIC_JVM_CLASS_COUNT="jvm.class.count";jFQ.METRIC_JVM_CLASS_LOADED="jvm.class.loaded";jFQ.METRIC_JVM_CLASS_UNLOADED="jvm.class.unloaded";jFQ.METRIC_JVM_CPU_COUNT="jvm.cpu.count";jFQ.METRIC_JVM_CPU_RECENT_UTILIZATION="jvm.cpu.recent_utilization";jFQ.METRIC_JVM_CPU_TIME="jvm.cpu.time";jFQ.METRIC_JVM_GC_DURATION="jvm.gc.duration";jFQ.METRIC_JVM_MEMORY_COMMITTED="jvm.memory.committed";jFQ.METRIC_JVM_MEMORY_LIMIT="jvm.memory.limit";jFQ.METRIC_JVM_MEMORY_USED="jvm.memory.used";jFQ.METRIC_JVM_MEMORY_USED_AFTER_LAST_GC="jvm.memory.used_after_last_gc";jFQ.METRIC_JVM_THREAD_COUNT="jvm.thread.count";jFQ.METRIC_KESTREL_ACTIVE_CONNECTIONS="kestrel.active_connections";jFQ.METRIC_KESTREL_ACTIVE_TLS_HANDSHAKES="kestrel.active_tls_handshakes";jFQ.METRIC_KESTREL_CONNECTION_DURATION="kestrel.connection.duration";jFQ.METRIC_KESTREL_QUEUED_CONNECTIONS="kestrel.queued_connections";jFQ.METRIC_KESTREL_QUEUED_REQUESTS="kestrel.queued_requests";jFQ.METRIC_KESTREL_REJECTED_CONNECTIONS="kestrel.rejected_connections";jFQ.METRIC_KESTREL_TLS_HANDSHAKE_DURATION="kestrel.tls_handshake.duration";jFQ.METRIC_KESTREL_UPGRADED_CONNECTIONS="kestrel.upgraded_connections";jFQ.METRIC_SIGNALR_SERVER_ACTIVE_CONNECTIONS="signalr.server.active_connections";jFQ.METRIC_SIGNALR_SERVER_CONNECTION_DURATION="signalr.server.connection.duration"});var IW=R((IX)=>{var yV0=IX&&IX.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),VP=IX&&IX.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))yV0(Q,A,B)};Object.defineProperty(IX,"__esModule",{value:!0});VP(lGQ(),IX);VP(LFQ(),IX);VP(wFQ(),IX);VP(PFQ(),IX)});var kFQ=R((TFQ)=>{Object.defineProperty(TFQ,"__esModule",{value:!0});TFQ.defaultServiceName=void 0;function gV0(){return`unknown_service:${process.argv0}`}TFQ.defaultServiceName=gV0});var _FQ=R((Hi)=>{Object.defineProperty(Hi,"__esModule",{value:!0});Hi.defaultServiceName=void 0;var hV0=kFQ();Object.defineProperty(Hi,"defaultServiceName",{enumerable:!0,get:function(){return hV0.defaultServiceName}})});var Ni=R((Di)=>{Object.defineProperty(Di,"__esModule",{value:!0});Di.defaultServiceName=void 0;var fV0=_FQ();Object.defineProperty(Di,"defaultServiceName",{enumerable:!0,get:function(){return fV0.defaultServiceName}})});var $G=R((yFQ)=>{Object.defineProperty(yFQ,"__esModule",{value:!0});yFQ.Resource=void 0;var vFQ=yA(),z$=IW(),Li=MB(),mV0=Ni();class HW{constructor(A,Q){var B;this._attributes=A,this.asyncAttributesPending=Q!=null,this._syncAttributes=(B=this._attributes)!==null&&B!==void 0?B:{},this._asyncAttributesPromise=Q===null||Q===void 0?void 0:Q.then((Y)=>{return this._attributes=Object.assign({},this._attributes,Y),this.asyncAttributesPending=!1,Y},(Y)=>{return vFQ.diag.debug("a resource's async attributes promise rejected: %s",Y),this.asyncAttributesPending=!1,{}})}static empty(){return HW.EMPTY}static default(){return new HW({[z$.SEMRESATTRS_SERVICE_NAME]:(0,mV0.defaultServiceName)(),[z$.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE]:Li.SDK_INFO[z$.SEMRESATTRS_TELEMETRY_SDK_LANGUAGE],[z$.SEMRESATTRS_TELEMETRY_SDK_NAME]:Li.SDK_INFO[z$.SEMRESATTRS_TELEMETRY_SDK_NAME],[z$.SEMRESATTRS_TELEMETRY_SDK_VERSION]:Li.SDK_INFO[z$.SEMRESATTRS_TELEMETRY_SDK_VERSION]})}get attributes(){var A;if(this.asyncAttributesPending)vFQ.diag.error("Accessing resource attributes before async attributes settled");return(A=this._attributes)!==null&&A!==void 0?A:{}}async waitForAsyncAttributes(){if(this.asyncAttributesPending)await this._asyncAttributesPromise}merge(A){var Q;if(!A)return this;let B=Object.assign(Object.assign({},this._syncAttributes),(Q=A._syncAttributes)!==null&&Q!==void 0?Q:A.attributes);if(!this._asyncAttributesPromise&&!A._asyncAttributesPromise)return new HW(B);let Y=Promise.all([this._asyncAttributesPromise,A._asyncAttributesPromise]).then(([J,C])=>{var X;return Object.assign(Object.assign(Object.assign(Object.assign({},this._syncAttributes),J),(X=A._syncAttributes)!==null&&X!==void 0?X:A.attributes),C)});return new HW(B,Y)}}yFQ.Resource=HW;HW.EMPTY=new HW({})});var qi=R((hFQ)=>{Object.defineProperty(hFQ,"__esModule",{value:!0});hFQ.normalizeType=hFQ.normalizeArch=void 0;var uV0=(A)=>{switch(A){case"arm":return"arm32";case"ppc":return"ppc32";case"x64":return"amd64";default:return A}};hFQ.normalizeArch=uV0;var dV0=(A)=>{switch(A){case"sunos":return"solaris";case"win32":return"windows";default:return A}};hFQ.normalizeType=dV0});var IP=R((fFQ)=>{Object.defineProperty(fFQ,"__esModule",{value:!0});fFQ.execAsync=void 0;var lV0=u("child_process"),pV0=u("util");fFQ.execAsync=pV0.promisify(lV0.exec)});var dFQ=R((mFQ)=>{Object.defineProperty(mFQ,"__esModule",{value:!0});mFQ.getMachineId=void 0;var iV0=IP(),nV0=yA();async function sV0(){try{let Q=(await(0,iV0.execAsync)('ioreg -rd1 -c "IOPlatformExpertDevice"')).stdout.split(` +`).find((Y)=>Y.includes("IOPlatformUUID"));if(!Q)return"";let B=Q.split('" = "');if(B.length===2)return B[1].slice(0,-1)}catch(A){nV0.diag.debug(`error reading machine id: ${A}`)}return""}mFQ.getMachineId=sV0});var pFQ=R((cFQ)=>{Object.defineProperty(cFQ,"__esModule",{value:!0});cFQ.getMachineId=void 0;var rV0=u("fs"),aV0=yA();async function oV0(){let A=["/etc/machine-id","/var/lib/dbus/machine-id"];for(let Q of A)try{return(await rV0.promises.readFile(Q,{encoding:"utf8"})).trim()}catch(B){aV0.diag.debug(`error reading machine id: ${B}`)}return""}cFQ.getMachineId=oV0});var rFQ=R((nFQ)=>{Object.defineProperty(nFQ,"__esModule",{value:!0});nFQ.getMachineId=void 0;var tV0=u("fs"),eV0=IP(),iFQ=yA();async function AI0(){try{return(await tV0.promises.readFile("/etc/hostid",{encoding:"utf8"})).trim()}catch(A){iFQ.diag.debug(`error reading machine id: ${A}`)}try{return(await(0,eV0.execAsync)("kenv -q smbios.system.uuid")).stdout.trim()}catch(A){iFQ.diag.debug(`error reading machine id: ${A}`)}return""}nFQ.getMachineId=AI0});var eFQ=R((oFQ)=>{Object.defineProperty(oFQ,"__esModule",{value:!0});oFQ.getMachineId=void 0;var aFQ=u("process"),QI0=IP(),BI0=yA();async function YI0(){let Q="%windir%\\System32\\REG.exe";if(aFQ.arch==="ia32"&&"PROCESSOR_ARCHITEW6432"in aFQ.env)Q="%windir%\\sysnative\\cmd.exe /c "+Q;try{let Y=(await(0,QI0.execAsync)(`${Q} QUERY HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Cryptography /v MachineGuid`)).stdout.split("REG_SZ");if(Y.length===2)return Y[1].trim()}catch(B){BI0.diag.debug(`error reading machine id: ${B}`)}return""}oFQ.getMachineId=YI0});var BZQ=R((AZQ)=>{Object.defineProperty(AZQ,"__esModule",{value:!0});AZQ.getMachineId=void 0;var JI0=yA();async function CI0(){return JI0.diag.debug("could not read machine-id: unsupported platform"),""}AZQ.getMachineId=CI0});var JZQ=R((YZQ)=>{Object.defineProperty(YZQ,"__esModule",{value:!0});YZQ.getMachineId=void 0;var XI0=u("process"),HK;YZQ.getMachineId=HK;switch(XI0.platform){case"darwin":YZQ.getMachineId=HK=dFQ().getMachineId;break;case"linux":YZQ.getMachineId=HK=pFQ().getMachineId;break;case"freebsd":YZQ.getMachineId=HK=rFQ().getMachineId;break;case"win32":YZQ.getMachineId=HK=eFQ().getMachineId;break;default:YZQ.getMachineId=HK=BZQ().getMachineId}});var zi=R((GZQ)=>{Object.defineProperty(GZQ,"__esModule",{value:!0});GZQ.hostDetectorSync=void 0;var Mi=IW(),GI0=$G(),CZQ=u("os"),WI0=qi(),FI0=JZQ();class XZQ{detect(A){let Q={[Mi.SEMRESATTRS_HOST_NAME]:(0,CZQ.hostname)(),[Mi.SEMRESATTRS_HOST_ARCH]:(0,WI0.normalizeArch)((0,CZQ.arch)())};return new GI0.Resource(Q,this._getAsyncAttributes())}_getAsyncAttributes(){return(0,FI0.getMachineId)().then((A)=>{let Q={};if(A)Q[Mi.SEMRESATTRS_HOST_ID]=A;return Q})}}GZQ.hostDetectorSync=new XZQ});var UZQ=R((ZZQ)=>{Object.defineProperty(ZZQ,"__esModule",{value:!0});ZZQ.hostDetector=void 0;var ZI0=zi();class FZQ{detect(A){return Promise.resolve(ZI0.hostDetectorSync.detect(A))}}ZZQ.hostDetector=new FZQ});var Ri=R((IZQ)=>{Object.defineProperty(IZQ,"__esModule",{value:!0});IZQ.osDetectorSync=void 0;var EZQ=IW(),$I0=$G(),KZQ=u("os"),UI0=qi();class VZQ{detect(A){let Q={[EZQ.SEMRESATTRS_OS_TYPE]:(0,UI0.normalizeType)((0,KZQ.platform)()),[EZQ.SEMRESATTRS_OS_VERSION]:(0,KZQ.release)()};return new $I0.Resource(Q)}}IZQ.osDetectorSync=new VZQ});var qZQ=R((NZQ)=>{Object.defineProperty(NZQ,"__esModule",{value:!0});NZQ.osDetector=void 0;var EI0=Ri();class DZQ{detect(A){return Promise.resolve(EI0.osDetectorSync.detect(A))}}NZQ.osDetector=new DZQ});var wi=R((zZQ)=>{Object.defineProperty(zZQ,"__esModule",{value:!0});zZQ.processDetectorSync=void 0;var KI0=yA(),UG=IW(),VI0=$G(),II0=u("os");class MZQ{detect(A){let Q={[UG.SEMRESATTRS_PROCESS_PID]:process.pid,[UG.SEMRESATTRS_PROCESS_EXECUTABLE_NAME]:process.title,[UG.SEMRESATTRS_PROCESS_EXECUTABLE_PATH]:process.execPath,[UG.SEMRESATTRS_PROCESS_COMMAND_ARGS]:[process.argv[0],...process.execArgv,...process.argv.slice(1)],[UG.SEMRESATTRS_PROCESS_RUNTIME_VERSION]:process.versions.node,[UG.SEMRESATTRS_PROCESS_RUNTIME_NAME]:"nodejs",[UG.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION]:"Node.js"};if(process.argv.length>1)Q[UG.SEMRESATTRS_PROCESS_COMMAND]=process.argv[1];try{let B=II0.userInfo();Q[UG.SEMRESATTRS_PROCESS_OWNER]=B.username}catch(B){KI0.diag.debug(`error obtaining process owner: ${B}`)}return new VI0.Resource(Q)}}zZQ.processDetectorSync=new MZQ});var PZQ=R((jZQ)=>{Object.defineProperty(jZQ,"__esModule",{value:!0});jZQ.processDetector=void 0;var HI0=wi();class wZQ{detect(A){return Promise.resolve(HI0.processDetectorSync.detect(A))}}jZQ.processDetector=new wZQ});var _ZQ=R((SZQ)=>{Object.defineProperty(SZQ,"__esModule",{value:!0});SZQ.serviceInstanceIdDetectorSync=void 0;var DI0=IW(),NI0=$G(),LI0=u("crypto");class TZQ{detect(A){let Q={[DI0.SEMRESATTRS_SERVICE_INSTANCE_ID]:(0,LI0.randomUUID)()};return new NI0.Resource(Q)}}SZQ.serviceInstanceIdDetectorSync=new TZQ});var vZQ=R((EG)=>{Object.defineProperty(EG,"__esModule",{value:!0});EG.serviceInstanceIdDetectorSync=EG.processDetectorSync=EG.processDetector=EG.osDetectorSync=EG.osDetector=EG.hostDetectorSync=EG.hostDetector=void 0;var qI0=UZQ();Object.defineProperty(EG,"hostDetector",{enumerable:!0,get:function(){return qI0.hostDetector}});var MI0=zi();Object.defineProperty(EG,"hostDetectorSync",{enumerable:!0,get:function(){return MI0.hostDetectorSync}});var zI0=qZQ();Object.defineProperty(EG,"osDetector",{enumerable:!0,get:function(){return zI0.osDetector}});var RI0=Ri();Object.defineProperty(EG,"osDetectorSync",{enumerable:!0,get:function(){return RI0.osDetectorSync}});var wI0=PZQ();Object.defineProperty(EG,"processDetector",{enumerable:!0,get:function(){return wI0.processDetector}});var jI0=wi();Object.defineProperty(EG,"processDetectorSync",{enumerable:!0,get:function(){return jI0.processDetectorSync}});var OI0=_ZQ();Object.defineProperty(EG,"serviceInstanceIdDetectorSync",{enumerable:!0,get:function(){return OI0.serviceInstanceIdDetectorSync}})});var yZQ=R((KG)=>{Object.defineProperty(KG,"__esModule",{value:!0});KG.serviceInstanceIdDetectorSync=KG.processDetectorSync=KG.processDetector=KG.osDetectorSync=KG.osDetector=KG.hostDetectorSync=KG.hostDetector=void 0;var w$=vZQ();Object.defineProperty(KG,"hostDetector",{enumerable:!0,get:function(){return w$.hostDetector}});Object.defineProperty(KG,"hostDetectorSync",{enumerable:!0,get:function(){return w$.hostDetectorSync}});Object.defineProperty(KG,"osDetector",{enumerable:!0,get:function(){return w$.osDetector}});Object.defineProperty(KG,"osDetectorSync",{enumerable:!0,get:function(){return w$.osDetectorSync}});Object.defineProperty(KG,"processDetector",{enumerable:!0,get:function(){return w$.processDetector}});Object.defineProperty(KG,"processDetectorSync",{enumerable:!0,get:function(){return w$.processDetectorSync}});Object.defineProperty(KG,"serviceInstanceIdDetectorSync",{enumerable:!0,get:function(){return w$.serviceInstanceIdDetectorSync}})});var Oi=R((hZQ)=>{Object.defineProperty(hZQ,"__esModule",{value:!0});hZQ.browserDetectorSync=void 0;var HP=IW(),SI0=yA(),ji=$G();class gZQ{detect(A){var Q,B,Y;if(!(typeof navigator<"u"&&((B=(Q=global.process)===null||Q===void 0?void 0:Q.versions)===null||B===void 0?void 0:B.node)===void 0&&((Y=global.Bun)===null||Y===void 0?void 0:Y.version)===void 0))return ji.Resource.empty();let C={[HP.SEMRESATTRS_PROCESS_RUNTIME_NAME]:"browser",[HP.SEMRESATTRS_PROCESS_RUNTIME_DESCRIPTION]:"Web Browser",[HP.SEMRESATTRS_PROCESS_RUNTIME_VERSION]:navigator.userAgent};return this._getResourceAttributes(C,A)}_getResourceAttributes(A,Q){if(A[HP.SEMRESATTRS_PROCESS_RUNTIME_VERSION]==="")return SI0.diag.debug("BrowserDetector failed: Unable to find required browser resources. "),ji.Resource.empty();else return new ji.Resource(Object.assign({},A))}}hZQ.browserDetectorSync=new gZQ});var uZQ=R((bZQ)=>{Object.defineProperty(bZQ,"__esModule",{value:!0});bZQ.browserDetector=void 0;var kI0=Oi();class fZQ{detect(A){return Promise.resolve(kI0.browserDetectorSync.detect(A))}}bZQ.browserDetector=new fZQ});var Pi=R((cZQ)=>{Object.defineProperty(cZQ,"__esModule",{value:!0});cZQ.envDetectorSync=void 0;var _I0=yA(),vI0=MB(),yI0=IW(),gI0=$G();class dZQ{constructor(){this._MAX_LENGTH=255,this._COMMA_SEPARATOR=",",this._LABEL_KEY_VALUE_SPLITTER="=",this._ERROR_MESSAGE_INVALID_CHARS="should be a ASCII string with a length greater than 0 and not exceed "+this._MAX_LENGTH+" characters.",this._ERROR_MESSAGE_INVALID_VALUE="should be a ASCII string with a length not exceed "+this._MAX_LENGTH+" characters."}detect(A){let Q={},B=(0,vI0.getEnv)(),Y=B.OTEL_RESOURCE_ATTRIBUTES,J=B.OTEL_SERVICE_NAME;if(Y)try{let C=this._parseResourceAttributes(Y);Object.assign(Q,C)}catch(C){_I0.diag.debug(`EnvDetector failed: ${C.message}`)}if(J)Q[yI0.SEMRESATTRS_SERVICE_NAME]=J;return new gI0.Resource(Q)}_parseResourceAttributes(A){if(!A)return{};let Q={},B=A.split(this._COMMA_SEPARATOR,-1);for(let Y of B){let J=Y.split(this._LABEL_KEY_VALUE_SPLITTER,-1);if(J.length!==2)continue;let[C,X]=J;if(C=C.trim(),X=X.trim().split(/^"|"$/).join(""),!this._isValidAndNotEmpty(C))throw Error(`Attribute key ${this._ERROR_MESSAGE_INVALID_CHARS}`);if(!this._isValid(X))throw Error(`Attribute value ${this._ERROR_MESSAGE_INVALID_VALUE}`);Q[C]=decodeURIComponent(X)}return Q}_isValid(A){return A.length<=this._MAX_LENGTH&&this._isBaggageOctetString(A)}_isBaggageOctetString(A){for(let Q=0;Q126)return!1}return!0}_isValidAndNotEmpty(A){return A.length>0&&this._isValid(A)}}cZQ.envDetectorSync=new dZQ});var sZQ=R((iZQ)=>{Object.defineProperty(iZQ,"__esModule",{value:!0});iZQ.envDetector=void 0;var hI0=Pi();class pZQ{detect(A){return Promise.resolve(hI0.envDetectorSync.detect(A))}}iZQ.envDetector=new pZQ});var rZQ=R((u8)=>{Object.defineProperty(u8,"__esModule",{value:!0});u8.envDetectorSync=u8.browserDetectorSync=u8.envDetector=u8.browserDetector=u8.serviceInstanceIdDetectorSync=u8.processDetectorSync=u8.processDetector=u8.osDetectorSync=u8.osDetector=u8.hostDetectorSync=u8.hostDetector=void 0;var j$=yZQ();Object.defineProperty(u8,"hostDetector",{enumerable:!0,get:function(){return j$.hostDetector}});Object.defineProperty(u8,"hostDetectorSync",{enumerable:!0,get:function(){return j$.hostDetectorSync}});Object.defineProperty(u8,"osDetector",{enumerable:!0,get:function(){return j$.osDetector}});Object.defineProperty(u8,"osDetectorSync",{enumerable:!0,get:function(){return j$.osDetectorSync}});Object.defineProperty(u8,"processDetector",{enumerable:!0,get:function(){return j$.processDetector}});Object.defineProperty(u8,"processDetectorSync",{enumerable:!0,get:function(){return j$.processDetectorSync}});Object.defineProperty(u8,"serviceInstanceIdDetectorSync",{enumerable:!0,get:function(){return j$.serviceInstanceIdDetectorSync}});var xI0=uZQ();Object.defineProperty(u8,"browserDetector",{enumerable:!0,get:function(){return xI0.browserDetector}});var fI0=sZQ();Object.defineProperty(u8,"envDetector",{enumerable:!0,get:function(){return fI0.envDetector}});var bI0=Oi();Object.defineProperty(u8,"browserDetectorSync",{enumerable:!0,get:function(){return bI0.browserDetectorSync}});var mI0=Pi();Object.defineProperty(u8,"envDetectorSync",{enumerable:!0,get:function(){return mI0.envDetectorSync}})});var tZQ=R((aZQ)=>{Object.defineProperty(aZQ,"__esModule",{value:!0});aZQ.isPromiseLike=void 0;var dI0=(A)=>{return A!==null&&typeof A==="object"&&typeof A.then==="function"};aZQ.isPromiseLike=dI0});var B$Q=R((A$Q)=>{Object.defineProperty(A$Q,"__esModule",{value:!0});A$Q.detectResourcesSync=A$Q.detectResources=void 0;var PL=$G(),DK=yA(),cI0=tZQ(),lI0=async(A={})=>{let Q=await Promise.all((A.detectors||[]).map(async(B)=>{try{let Y=await B.detect(A);return DK.diag.debug(`${B.constructor.name} found resource.`,Y),Y}catch(Y){return DK.diag.debug(`${B.constructor.name} failed: ${Y.message}`),PL.Resource.empty()}}));return eZQ(Q),Q.reduce((B,Y)=>B.merge(Y),PL.Resource.empty())};A$Q.detectResources=lI0;var pI0=(A={})=>{var Q;let B=((Q=A.detectors)!==null&&Q!==void 0?Q:[]).map((J)=>{try{let C=J.detect(A),X;if((0,cI0.isPromiseLike)(C)){let G=async()=>{var W;let F=await C;return await((W=F.waitForAsyncAttributes)===null||W===void 0?void 0:W.call(F)),F.attributes};X=new PL.Resource({},G())}else X=C;if(X.waitForAsyncAttributes)X.waitForAsyncAttributes().then(()=>DK.diag.debug(`${J.constructor.name} found resource.`,X));else DK.diag.debug(`${J.constructor.name} found resource.`,X);return X}catch(C){return DK.diag.error(`${J.constructor.name} failed: ${C.message}`),PL.Resource.empty()}}),Y=B.reduce((J,C)=>J.merge(C),PL.Resource.empty());if(Y.waitForAsyncAttributes)Y.waitForAsyncAttributes().then(()=>{eZQ(B)});return Y};A$Q.detectResourcesSync=pI0;var eZQ=(A)=>{A.forEach((Q)=>{if(Object.keys(Q.attributes).length>0){let B=JSON.stringify(Q.attributes,null,4);DK.diag.verbose(B)}})}});var Ti=R((KJ)=>{Object.defineProperty(KJ,"__esModule",{value:!0});KJ.detectResources=KJ.detectResourcesSync=KJ.serviceInstanceIdDetectorSync=KJ.processDetectorSync=KJ.processDetector=KJ.osDetectorSync=KJ.osDetector=KJ.hostDetectorSync=KJ.hostDetector=KJ.envDetectorSync=KJ.envDetector=KJ.browserDetectorSync=KJ.browserDetector=KJ.defaultServiceName=KJ.Resource=void 0;var nI0=$G();Object.defineProperty(KJ,"Resource",{enumerable:!0,get:function(){return nI0.Resource}});var sI0=Ni();Object.defineProperty(KJ,"defaultServiceName",{enumerable:!0,get:function(){return sI0.defaultServiceName}});var F1=rZQ();Object.defineProperty(KJ,"browserDetector",{enumerable:!0,get:function(){return F1.browserDetector}});Object.defineProperty(KJ,"browserDetectorSync",{enumerable:!0,get:function(){return F1.browserDetectorSync}});Object.defineProperty(KJ,"envDetector",{enumerable:!0,get:function(){return F1.envDetector}});Object.defineProperty(KJ,"envDetectorSync",{enumerable:!0,get:function(){return F1.envDetectorSync}});Object.defineProperty(KJ,"hostDetector",{enumerable:!0,get:function(){return F1.hostDetector}});Object.defineProperty(KJ,"hostDetectorSync",{enumerable:!0,get:function(){return F1.hostDetectorSync}});Object.defineProperty(KJ,"osDetector",{enumerable:!0,get:function(){return F1.osDetector}});Object.defineProperty(KJ,"osDetectorSync",{enumerable:!0,get:function(){return F1.osDetectorSync}});Object.defineProperty(KJ,"processDetector",{enumerable:!0,get:function(){return F1.processDetector}});Object.defineProperty(KJ,"processDetectorSync",{enumerable:!0,get:function(){return F1.processDetectorSync}});Object.defineProperty(KJ,"serviceInstanceIdDetectorSync",{enumerable:!0,get:function(){return F1.serviceInstanceIdDetectorSync}});var Y$Q=B$Q();Object.defineProperty(KJ,"detectResourcesSync",{enumerable:!0,get:function(){return Y$Q.detectResourcesSync}});Object.defineProperty(KJ,"detectResources",{enumerable:!0,get:function(){return Y$Q.detectResources}})});var G$Q=R((C$Q)=>{Object.defineProperty(C$Q,"__esModule",{value:!0});C$Q.MultiSpanProcessor=void 0;var aI0=MB();class J$Q{constructor(A){this._spanProcessors=A}forceFlush(){let A=[];for(let Q of this._spanProcessors)A.push(Q.forceFlush());return new Promise((Q)=>{Promise.all(A).then(()=>{Q()}).catch((B)=>{(0,aI0.globalErrorHandler)(B||Error("MultiSpanProcessor: forceFlush failed")),Q()})})}onStart(A,Q){for(let B of this._spanProcessors)B.onStart(A,Q)}onEnd(A){for(let Q of this._spanProcessors)Q.onEnd(A)}shutdown(){let A=[];for(let Q of this._spanProcessors)A.push(Q.shutdown());return new Promise((Q,B)=>{Promise.all(A).then(()=>{Q()},B)})}}C$Q.MultiSpanProcessor=J$Q});var Si=R((F$Q)=>{Object.defineProperty(F$Q,"__esModule",{value:!0});F$Q.NoopSpanProcessor=void 0;class W$Q{onStart(A,Q){}onEnd(A){}shutdown(){return Promise.resolve()}forceFlush(){return Promise.resolve()}}F$Q.NoopSpanProcessor=W$Q});var I$Q=R((K$Q)=>{Object.defineProperty(K$Q,"__esModule",{value:!0});K$Q.BasicTracerProvider=K$Q.ForceFlushState=void 0;var NK=yA(),qK=MB(),$$Q=Ti(),oI0=Vi(),tI0=Ui(),U$Q=G$Q(),eI0=Si(),AH0=EP(),QH0=Ki(),LK;(function(A){A[A.resolved=0]="resolved",A[A.timeout=1]="timeout",A[A.error=2]="error",A[A.unresolved=3]="unresolved"})(LK=K$Q.ForceFlushState||(K$Q.ForceFlushState={}));class DP{constructor(A={}){var Q,B;this._registeredSpanProcessors=[],this._tracers=new Map;let Y=(0,qK.merge)({},(0,tI0.loadDefaultConfig)(),(0,QH0.reconfigureLimits)(A));if(this.resource=(Q=Y.resource)!==null&&Q!==void 0?Q:$$Q.Resource.empty(),Y.mergeResourceWithDefaults)this.resource=$$Q.Resource.default().merge(this.resource);if(this._config=Object.assign({},Y,{resource:this.resource}),(B=A.spanProcessors)===null||B===void 0?void 0:B.length)this._registeredSpanProcessors=[...A.spanProcessors],this.activeSpanProcessor=new U$Q.MultiSpanProcessor(this._registeredSpanProcessors);else{let J=this._buildExporterFromEnv();if(J!==void 0){let C=new AH0.BatchSpanProcessor(J);this.activeSpanProcessor=C}else this.activeSpanProcessor=new eI0.NoopSpanProcessor}}getTracer(A,Q,B){let Y=`${A}@${Q||""}:${(B===null||B===void 0?void 0:B.schemaUrl)||""}`;if(!this._tracers.has(Y))this._tracers.set(Y,new oI0.Tracer({name:A,version:Q,schemaUrl:B===null||B===void 0?void 0:B.schemaUrl},this._config,this));return this._tracers.get(Y)}addSpanProcessor(A){if(this._registeredSpanProcessors.length===0)this.activeSpanProcessor.shutdown().catch((Q)=>NK.diag.error("Error while trying to shutdown current span processor",Q));this._registeredSpanProcessors.push(A),this.activeSpanProcessor=new U$Q.MultiSpanProcessor(this._registeredSpanProcessors)}getActiveSpanProcessor(){return this.activeSpanProcessor}register(A={}){if(NK.trace.setGlobalTracerProvider(this),A.propagator===void 0)A.propagator=this._buildPropagatorFromEnv();if(A.contextManager)NK.context.setGlobalContextManager(A.contextManager);if(A.propagator)NK.propagation.setGlobalPropagator(A.propagator)}forceFlush(){let A=this._config.forceFlushTimeoutMillis,Q=this._registeredSpanProcessors.map((B)=>{return new Promise((Y)=>{let J,C=setTimeout(()=>{Y(Error(`Span processor did not completed within timeout period of ${A} ms`)),J=LK.timeout},A);B.forceFlush().then(()=>{if(clearTimeout(C),J!==LK.timeout)J=LK.resolved,Y(J)}).catch((X)=>{clearTimeout(C),J=LK.error,Y(X)})})});return new Promise((B,Y)=>{Promise.all(Q).then((J)=>{let C=J.filter((X)=>X!==LK.resolved);if(C.length>0)Y(C);else B()}).catch((J)=>Y([J]))})}shutdown(){return this.activeSpanProcessor.shutdown()}_getPropagator(A){var Q;return(Q=this.constructor._registeredPropagators.get(A))===null||Q===void 0?void 0:Q()}_getSpanExporter(A){var Q;return(Q=this.constructor._registeredExporters.get(A))===null||Q===void 0?void 0:Q()}_buildPropagatorFromEnv(){let A=Array.from(new Set((0,qK.getEnv)().OTEL_PROPAGATORS)),B=A.map((Y)=>{let J=this._getPropagator(Y);if(!J)NK.diag.warn(`Propagator "${Y}" requested through environment variable is unavailable.`);return J}).reduce((Y,J)=>{if(J)Y.push(J);return Y},[]);if(B.length===0)return;else if(A.length===1)return B[0];else return new qK.CompositePropagator({propagators:B})}_buildExporterFromEnv(){let A=(0,qK.getEnv)().OTEL_TRACES_EXPORTER;if(A==="none"||A==="")return;let Q=this._getSpanExporter(A);if(!Q)NK.diag.error(`Exporter "${A}" requested through environment variable is unavailable.`);return Q}}K$Q.BasicTracerProvider=DP;DP._registeredPropagators=new Map([["tracecontext",()=>new qK.W3CTraceContextPropagator],["baggage",()=>new qK.W3CBaggagePropagator]]);DP._registeredExporters=new Map});var L$Q=R((D$Q)=>{Object.defineProperty(D$Q,"__esModule",{value:!0});D$Q.ConsoleSpanExporter=void 0;var ki=MB();class H$Q{export(A,Q){return this._sendSpans(A,Q)}shutdown(){return this._sendSpans([]),this.forceFlush()}forceFlush(){return Promise.resolve()}_exportInfo(A){var Q;return{resource:{attributes:A.resource.attributes},instrumentationScope:A.instrumentationLibrary,traceId:A.spanContext().traceId,parentId:A.parentSpanId,traceState:(Q=A.spanContext().traceState)===null||Q===void 0?void 0:Q.serialize(),name:A.name,id:A.spanContext().spanId,kind:A.kind,timestamp:(0,ki.hrTimeToMicroseconds)(A.startTime),duration:(0,ki.hrTimeToMicroseconds)(A.duration),attributes:A.attributes,status:A.status,events:A.events,links:A.links}}_sendSpans(A,Q){for(let B of A)console.dir(this._exportInfo(B),{depth:3});if(Q)return Q({code:ki.ExportResultCode.SUCCESS})}}D$Q.ConsoleSpanExporter=H$Q});var w$Q=R((z$Q)=>{Object.defineProperty(z$Q,"__esModule",{value:!0});z$Q.InMemorySpanExporter=void 0;var q$Q=MB();class M$Q{constructor(){this._finishedSpans=[],this._stopped=!1}export(A,Q){if(this._stopped)return Q({code:q$Q.ExportResultCode.FAILED,error:Error("Exporter has been stopped")});this._finishedSpans.push(...A),setTimeout(()=>Q({code:q$Q.ExportResultCode.SUCCESS}),0)}shutdown(){return this._stopped=!0,this._finishedSpans=[],this.forceFlush()}forceFlush(){return Promise.resolve()}reset(){this._finishedSpans=[]}getFinishedSpans(){return this._finishedSpans}}z$Q.InMemorySpanExporter=M$Q});var T$Q=R((O$Q)=>{Object.defineProperty(O$Q,"__esModule",{value:!0});O$Q.SimpleSpanProcessor=void 0;var BH0=yA(),MK=MB();class j$Q{constructor(A){this._exporter=A,this._shutdownOnce=new MK.BindOnceFuture(this._shutdown,this),this._unresolvedExports=new Set}async forceFlush(){if(await Promise.all(Array.from(this._unresolvedExports)),this._exporter.forceFlush)await this._exporter.forceFlush()}onStart(A,Q){}onEnd(A){var Q,B;if(this._shutdownOnce.isCalled)return;if((A.spanContext().traceFlags&BH0.TraceFlags.SAMPLED)===0)return;let Y=()=>MK.internal._export(this._exporter,[A]).then((J)=>{var C;if(J.code!==MK.ExportResultCode.SUCCESS)(0,MK.globalErrorHandler)((C=J.error)!==null&&C!==void 0?C:Error(`SimpleSpanProcessor: span export failed (status ${J})`))}).catch((J)=>{(0,MK.globalErrorHandler)(J)});if(A.resource.asyncAttributesPending){let J=(B=(Q=A.resource).waitForAsyncAttributes)===null||B===void 0?void 0:B.call(Q).then(()=>{if(J!=null)this._unresolvedExports.delete(J);return Y()},(C)=>(0,MK.globalErrorHandler)(C));if(J!=null)this._unresolvedExports.add(J)}else Y()}shutdown(){return this._shutdownOnce.call()}_shutdown(){return this._exporter.shutdown()}}O$Q.SimpleSpanProcessor=j$Q});var _i=R((VJ)=>{Object.defineProperty(VJ,"__esModule",{value:!0});VJ.Span=VJ.SamplingDecision=VJ.TraceIdRatioBasedSampler=VJ.ParentBasedSampler=VJ.AlwaysOnSampler=VJ.AlwaysOffSampler=VJ.NoopSpanProcessor=VJ.SimpleSpanProcessor=VJ.InMemorySpanExporter=VJ.ConsoleSpanExporter=VJ.RandomIdGenerator=VJ.BatchSpanProcessor=VJ.ForceFlushState=VJ.BasicTracerProvider=VJ.Tracer=void 0;var YH0=Vi();Object.defineProperty(VJ,"Tracer",{enumerable:!0,get:function(){return YH0.Tracer}});var S$Q=I$Q();Object.defineProperty(VJ,"BasicTracerProvider",{enumerable:!0,get:function(){return S$Q.BasicTracerProvider}});Object.defineProperty(VJ,"ForceFlushState",{enumerable:!0,get:function(){return S$Q.ForceFlushState}});var k$Q=EP();Object.defineProperty(VJ,"BatchSpanProcessor",{enumerable:!0,get:function(){return k$Q.BatchSpanProcessor}});Object.defineProperty(VJ,"RandomIdGenerator",{enumerable:!0,get:function(){return k$Q.RandomIdGenerator}});var JH0=L$Q();Object.defineProperty(VJ,"ConsoleSpanExporter",{enumerable:!0,get:function(){return JH0.ConsoleSpanExporter}});var CH0=w$Q();Object.defineProperty(VJ,"InMemorySpanExporter",{enumerable:!0,get:function(){return CH0.InMemorySpanExporter}});var XH0=T$Q();Object.defineProperty(VJ,"SimpleSpanProcessor",{enumerable:!0,get:function(){return XH0.SimpleSpanProcessor}});var GH0=Si();Object.defineProperty(VJ,"NoopSpanProcessor",{enumerable:!0,get:function(){return GH0.NoopSpanProcessor}});var WH0=XP();Object.defineProperty(VJ,"AlwaysOffSampler",{enumerable:!0,get:function(){return WH0.AlwaysOffSampler}});var FH0=GP();Object.defineProperty(VJ,"AlwaysOnSampler",{enumerable:!0,get:function(){return FH0.AlwaysOnSampler}});var ZH0=Wi();Object.defineProperty(VJ,"ParentBasedSampler",{enumerable:!0,get:function(){return ZH0.ParentBasedSampler}});var $H0=Fi();Object.defineProperty(VJ,"TraceIdRatioBasedSampler",{enumerable:!0,get:function(){return $H0.TraceIdRatioBasedSampler}});var UH0=OL();Object.defineProperty(VJ,"SamplingDecision",{enumerable:!0,get:function(){return UH0.SamplingDecision}});var EH0=Ci();Object.defineProperty(VJ,"Span",{enumerable:!0,get:function(){return EH0.Span}})});var $4Q=R((F4Q)=>{Object.defineProperty(F4Q,"__esModule",{value:!0});F4Q.PACKAGE_NAME=F4Q.PACKAGE_VERSION=void 0;F4Q.PACKAGE_VERSION="0.10.1";F4Q.PACKAGE_NAME="@opentelemetry/instrumentation-undici"});var K4Q=R((U4Q)=>{Object.defineProperty(U4Q,"__esModule",{value:!0});U4Q.SemanticAttributes=void 0;U4Q.SemanticAttributes={HTTP_CONNECTION_STATE:"http.connection.state",ERROR_TYPE:"error.type",HTTP_REQUEST_BODY_SIZE:"http.request.body.size",HTTP_REQUEST_METHOD:"http.request.method",HTTP_REQUEST_METHOD_ORIGINAL:"http.request.method_original",HTTP_REQUEST_RESEND_COUNT:"http.request.resend_count",HTTP_RESPONSE_BODY_SIZE:"http.response.body.size",HTTP_RESPONSE_STATUS_CODE:"http.response.status_code",HTTP_ROUTE:"http.route",NETWORK_PEER_ADDRESS:"network.peer.address",NETWORK_PEER_PORT:"network.peer.port",NETWORK_PROTOCOL_NAME:"network.protocol.name",NETWORK_PROTOCOL_VERSION:"network.protocol.version",SERVER_ADDRESS:"server.address",SERVER_PORT:"server.port",URL_FULL:"url.full",URL_PATH:"url.path",URL_QUERY:"url.query",URL_SCHEME:"url.scheme",USER_AGENT_ORIGINAL:"user_agent.original"}});var N4Q=R((H4Q)=>{Object.defineProperty(H4Q,"__esModule",{value:!0});H4Q.UndiciInstrumentation=void 0;var vL=u("diagnostics_channel"),UD0=u("url"),yL=NB(),d8=yA(),V4Q=$4Q(),xY=K4Q(),wP=MB();class I4Q extends yL.InstrumentationBase{constructor(A={}){super(V4Q.PACKAGE_NAME,V4Q.PACKAGE_VERSION,A);this._recordFromReq=new WeakMap}init(){return}disable(){super.disable(),this._channelSubs.forEach((A)=>A.unsubscribe()),this._channelSubs.length=0}enable(){if(super.enable(),this._channelSubs=this._channelSubs||[],this._channelSubs.length>0)return;this.subscribeToChannel("undici:request:create",this.onRequestCreated.bind(this)),this.subscribeToChannel("undici:client:sendHeaders",this.onRequestHeaders.bind(this)),this.subscribeToChannel("undici:request:headers",this.onResponseHeaders.bind(this)),this.subscribeToChannel("undici:request:trailers",this.onDone.bind(this)),this.subscribeToChannel("undici:request:error",this.onError.bind(this))}_updateMetricInstruments(){this._httpClientDurationHistogram=this.meter.createHistogram("http.client.request.duration",{description:"Measures the duration of outbound HTTP requests.",unit:"s",valueType:d8.ValueType.DOUBLE,advice:{explicitBucketBoundaries:[0.005,0.01,0.025,0.05,0.075,0.1,0.25,0.5,0.75,1,2.5,5,7.5,10]}})}subscribeToChannel(A,Q){var B;let[Y,J]=process.version.replace("v","").split(".").map((G)=>Number(G)),C=Y>18||Y===18&&J>=19,X;if(C)(B=vL.subscribe)===null||B===void 0||B.call(vL,A,Q),X=()=>{var G;return(G=vL.unsubscribe)===null||G===void 0?void 0:G.call(vL,A,Q)};else{let G=vL.channel(A);G.subscribe(Q),X=()=>G.unsubscribe(Q)}this._channelSubs.push({name:A,unsubscribe:X})}onRequestCreated({request:A}){let Q=this.getConfig(),B=Q.enabled!==!1;if((0,yL.safeExecuteInTheMiddle)(()=>{var z;return!B||A.method==="CONNECT"||((z=Q.ignoreRequestHook)===null||z===void 0?void 0:z.call(Q,A))},(z)=>z&&this._diag.error("caught ignoreRequestHook error: ",z),!0))return;let J=(0,wP.hrTime)(),C;try{C=new UD0.URL(A.path,A.origin)}catch(z){this._diag.warn("could not determine url.full:",z);return}let X=C.protocol.replace(":",""),G=this.getRequestMethod(A.method),W={[xY.SemanticAttributes.HTTP_REQUEST_METHOD]:G,[xY.SemanticAttributes.HTTP_REQUEST_METHOD_ORIGINAL]:A.method,[xY.SemanticAttributes.URL_FULL]:C.toString(),[xY.SemanticAttributes.URL_PATH]:C.pathname,[xY.SemanticAttributes.URL_QUERY]:C.search,[xY.SemanticAttributes.URL_SCHEME]:X},F={https:"443",http:"80"},Z=C.hostname,U=C.port||F[X];if(W[xY.SemanticAttributes.SERVER_ADDRESS]=Z,U&&!isNaN(Number(U)))W[xY.SemanticAttributes.SERVER_PORT]=Number(U);let $;if(Array.isArray(A.headers)){let z=A.headers.findIndex((M)=>M.toLowerCase()==="user-agent");if(z>=0)$=A.headers[z+1]}else if(typeof A.headers==="string"){let M=A.headers.split(`\r `).find((N)=>N.toLowerCase().startsWith("user-agent"));$=M&&M.substring(M.indexOf(":")+1).trim()}if($)W[xY.SemanticAttributes.USER_AGENT_ORIGINAL]=$;let E=(0,yL.safeExecuteInTheMiddle)(()=>{var z;return(z=Q.startSpanHook)===null||z===void 0?void 0:z.call(Q,A)},(z)=>z&&this._diag.error("caught startSpanHook error: ",z),!0);if(E)Object.entries(E).forEach(([z,M])=>{W[z]=M});let K=d8.context.active(),I=d8.trace.getSpan(K),V;if(Q.requireParentforSpans&&(!I||!d8.trace.isSpanContextValid(I.spanContext())))V=d8.trace.wrapSpanContext(d8.INVALID_SPAN_CONTEXT);else V=this.tracer.startSpan(G==="_OTHER"?"HTTP":G,{kind:d8.SpanKind.CLIENT,attributes:W},K);(0,yL.safeExecuteInTheMiddle)(()=>{var z;return(z=Q.requestHook)===null||z===void 0?void 0:z.call(Q,V,A)},(z)=>z&&this._diag.error("caught requestHook error: ",z),!0);let H=d8.trace.setSpan(d8.context.active(),V),D={};d8.propagation.inject(H,D);let L=Object.entries(D);for(let z=0;zU.toLowerCase())),Z=Array.isArray(A.headers)?A.headers:A.headers.split(`\r -`);Z.forEach((U,$)=>{let E=U.indexOf(":"),K=E!==-1,I=(K?U.substring(0,E):U).toLowerCase(),V=K?U.substring(E+1):Z[$+1];if(F.has(I))W[`http.request.header.${I}`]=V.trim()})}C.setAttributes(W)}onResponseHeaders({request:A,response:Q}){var B,Y;let J=this._recordFromReq.get(A);if(!J)return;let{span:C,attributes:X}=J,G={[xY.SemanticAttributes.HTTP_RESPONSE_STATUS_CODE]:Q.statusCode},W=this.getConfig();(0,yL.safeExecuteInTheMiddle)(()=>{var Z;return(Z=W.responseHook)===null||Z===void 0?void 0:Z.call(W,C,{request:A,response:Q})},(Z)=>Z&&this._diag.error("caught responseHook error: ",Z),!0);let F=new Set;if((B=W.headersToSpanAttributes)===null||B===void 0?void 0:B.responseHeaders)(Y=W.headersToSpanAttributes)===null||Y===void 0||Y.responseHeaders.forEach((Z)=>F.add(Z.toLowerCase()));for(let Z=0;Z=400?d8.SpanStatusCode.ERROR:d8.SpanStatusCode.UNSET}),J.attributes=Object.assign(X,G)}onDone({request:A}){let Q=this._recordFromReq.get(A);if(!Q)return;let{span:B,attributes:Y,startTime:J}=Q;B.end(),this._recordFromReq.delete(A),this.recordRequestDuration(Y,J)}onError({request:A,error:Q}){let B=this._recordFromReq.get(A);if(!B)return;let{span:Y,attributes:J,startTime:C}=B;Y.recordException(Q),Y.setStatus({code:d8.SpanStatusCode.ERROR,message:Q.message}),Y.end(),this._recordFromReq.delete(A),J[xY.SemanticAttributes.ERROR_TYPE]=Q.message,this.recordRequestDuration(J,C)}recordRequestDuration(A,Q){let B={};[xY.SemanticAttributes.HTTP_RESPONSE_STATUS_CODE,xY.SemanticAttributes.HTTP_REQUEST_METHOD,xY.SemanticAttributes.SERVER_ADDRESS,xY.SemanticAttributes.SERVER_PORT,xY.SemanticAttributes.URL_SCHEME,xY.SemanticAttributes.ERROR_TYPE].forEach((C)=>{if(C in A)B[C]=A[C]});let J=(0,wP.hrTimeToMilliseconds)((0,wP.hrTimeDuration)(Q,(0,wP.hrTime)()))/1000;this._httpClientDurationHistogram.record(J,B)}getRequestMethod(A){let Q={CONNECT:!0,OPTIONS:!0,HEAD:!0,GET:!0,POST:!0,PUT:!0,PATCH:!0,DELETE:!0,TRACE:!0};if(A.toUpperCase()in Q)return A.toUpperCase();return"_OTHER"}}H4Q.UndiciInstrumentation=I4Q});var q4Q=R((L4Q)=>{Object.defineProperty(L4Q,"__esModule",{value:!0})});var z4Q=R((NW)=>{var ED0=NW&&NW.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),M4Q=NW&&NW.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))ED0(Q,A,B)};Object.defineProperty(NW,"__esModule",{value:!0});M4Q(N4Q(),NW);M4Q(q4Q(),NW)});var _4Q=R((S4Q)=>{Object.defineProperty(S4Q,"__esModule",{value:!0});S4Q.PACKAGE_NAME=S4Q.PACKAGE_VERSION=void 0;S4Q.PACKAGE_VERSION="0.19.1";S4Q.PACKAGE_NAME="@opentelemetry/instrumentation-fs"});var g4Q=R((v4Q)=>{Object.defineProperty(v4Q,"__esModule",{value:!0});v4Q.SYNC_FUNCTIONS=v4Q.CALLBACK_FUNCTIONS=v4Q.PROMISE_FUNCTIONS=void 0;v4Q.PROMISE_FUNCTIONS=["access","appendFile","chmod","chown","copyFile","cp","lchown","link","lstat","lutimes","mkdir","mkdtemp","open","opendir","readdir","readFile","readlink","realpath","rename","rm","rmdir","stat","symlink","truncate","unlink","utimes","writeFile"];v4Q.CALLBACK_FUNCTIONS=["access","appendFile","chmod","chown","copyFile","cp","exists","lchown","link","lstat","lutimes","mkdir","mkdtemp","open","opendir","readdir","readFile","readlink","realpath","realpath.native","rename","rm","rmdir","stat","symlink","truncate","unlink","utimes","writeFile"];v4Q.SYNC_FUNCTIONS=["accessSync","appendFileSync","chmodSync","chownSync","copyFileSync","cpSync","existsSync","lchownSync","linkSync","lstatSync","lutimesSync","mkdirSync","mkdtempSync","opendirSync","openSync","readdirSync","readFileSync","readlinkSync","realpathSync","realpathSync.native","renameSync","rmdirSync","rmSync","statSync","symlinkSync","truncateSync","unlinkSync","utimesSync","writeFileSync"]});var b4Q=R((x4Q)=>{Object.defineProperty(x4Q,"__esModule",{value:!0});x4Q.indexFs=x4Q.splitTwoLevels=void 0;function h4Q(A){let Q=A.split(".");if(Q.length>1){if(Q.length!==2)throw Error(`Invalid member function name ${A}`);return Q}else return[A]}x4Q.splitTwoLevels=h4Q;function wD0(A,Q){if(!Q)throw Error(JSON.stringify({member:Q}));let B=h4Q(Q),[Y,J]=B;if(J)return{objectToPatch:A[Y],functionNameToPatch:J};else return{objectToPatch:A,functionNameToPatch:Y}}x4Q.indexFs=wD0});var l4Q=R((d4Q)=>{Object.defineProperty(d4Q,"__esModule",{value:!0});d4Q.FsInstrumentation=void 0;var P0=yA(),VG=MB(),$1=NB(),m4Q=_4Q(),qW=g4Q(),OD0=u("util"),TP=b4Q();function SP(A,Q){return Object.assign(A,Q)}class u4Q extends $1.InstrumentationBase{constructor(A={}){super(m4Q.PACKAGE_NAME,m4Q.PACKAGE_VERSION,A)}init(){return[new $1.InstrumentationNodeModuleDefinition("fs",["*"],(A)=>{for(let Q of qW.SYNC_FUNCTIONS){let{objectToPatch:B,functionNameToPatch:Y}=(0,TP.indexFs)(A,Q);if((0,$1.isWrapped)(B[Y]))this._unwrap(B,Y);this._wrap(B,Y,this._patchSyncFunction.bind(this,Q))}for(let Q of qW.CALLBACK_FUNCTIONS){let{objectToPatch:B,functionNameToPatch:Y}=(0,TP.indexFs)(A,Q);if((0,$1.isWrapped)(B[Y]))this._unwrap(B,Y);if(Q==="exists"){this._wrap(B,Y,this._patchExistsCallbackFunction.bind(this,Q));continue}this._wrap(B,Y,this._patchCallbackFunction.bind(this,Q))}for(let Q of qW.PROMISE_FUNCTIONS){if((0,$1.isWrapped)(A.promises[Q]))this._unwrap(A.promises,Q);this._wrap(A.promises,Q,this._patchPromiseFunction.bind(this,Q))}return A},(A)=>{if(A===void 0)return;for(let Q of qW.SYNC_FUNCTIONS){let{objectToPatch:B,functionNameToPatch:Y}=(0,TP.indexFs)(A,Q);if((0,$1.isWrapped)(B[Y]))this._unwrap(B,Y)}for(let Q of qW.CALLBACK_FUNCTIONS){let{objectToPatch:B,functionNameToPatch:Y}=(0,TP.indexFs)(A,Q);if((0,$1.isWrapped)(B[Y]))this._unwrap(B,Y)}for(let Q of qW.PROMISE_FUNCTIONS)if((0,$1.isWrapped)(A.promises[Q]))this._unwrap(A.promises,Q)}),new $1.InstrumentationNodeModuleDefinition("fs/promises",["*"],(A)=>{for(let Q of qW.PROMISE_FUNCTIONS){if((0,$1.isWrapped)(A[Q]))this._unwrap(A,Q);this._wrap(A,Q,this._patchPromiseFunction.bind(this,Q))}return A},(A)=>{if(A===void 0)return;for(let Q of qW.PROMISE_FUNCTIONS)if((0,$1.isWrapped)(A[Q]))this._unwrap(A,Q)})]}_patchSyncFunction(A,Q){let B=this;return SP(function(...J){let C=P0.context.active();if(!B._shouldTrace(C))return Q.apply(this,J);if(B._runCreateHook(A,{args:J})===!1)return P0.context.with((0,VG.suppressTracing)(C),Q,this,...J);let X=B.tracer.startSpan(`fs ${A}`);try{let G=P0.context.with((0,VG.suppressTracing)(P0.trace.setSpan(C,X)),Q,this,...J);return B._runEndHook(A,{args:J,span:X}),G}catch(G){throw X.recordException(G),X.setStatus({message:G.message,code:P0.SpanStatusCode.ERROR}),B._runEndHook(A,{args:J,span:X,error:G}),G}finally{X.end()}},Q)}_patchCallbackFunction(A,Q){let B=this;return SP(function(...J){let C=P0.context.active();if(!B._shouldTrace(C))return Q.apply(this,J);if(B._runCreateHook(A,{args:J})===!1)return P0.context.with((0,VG.suppressTracing)(C),Q,this,...J);let X=J.length-1,G=J[X];if(typeof G==="function"){let W=B.tracer.startSpan(`fs ${A}`);J[X]=P0.context.bind(C,function(F){if(F)W.recordException(F),W.setStatus({message:F.message,code:P0.SpanStatusCode.ERROR});return B._runEndHook(A,{args:J,span:W,error:F}),W.end(),G.apply(this,arguments)});try{return P0.context.with((0,VG.suppressTracing)(P0.trace.setSpan(C,W)),Q,this,...J)}catch(F){throw W.recordException(F),W.setStatus({message:F.message,code:P0.SpanStatusCode.ERROR}),B._runEndHook(A,{args:J,span:W,error:F}),W.end(),F}}else return Q.apply(this,J)},Q)}_patchExistsCallbackFunction(A,Q){let B=this,J=SP(function(...X){let G=P0.context.active();if(!B._shouldTrace(G))return Q.apply(this,X);if(B._runCreateHook(A,{args:X})===!1)return P0.context.with((0,VG.suppressTracing)(G),Q,this,...X);let W=X.length-1,F=X[W];if(typeof F==="function"){let Z=B.tracer.startSpan(`fs ${A}`);X[W]=P0.context.bind(G,function(){return B._runEndHook(A,{args:X,span:Z}),Z.end(),F.apply(this,arguments)});try{return P0.context.with((0,VG.suppressTracing)(P0.trace.setSpan(G,Z)),Q,this,...X)}catch(U){throw Z.recordException(U),Z.setStatus({message:U.message,code:P0.SpanStatusCode.ERROR}),B._runEndHook(A,{args:X,span:Z,error:U}),Z.end(),U}}else return Q.apply(this,X)},Q),C=function(X){return new Promise((G)=>J(X,G))};return Object.defineProperty(C,"name",{value:A}),Object.defineProperty(J,OD0.promisify.custom,{value:C}),J}_patchPromiseFunction(A,Q){let B=this;return SP(async function(...J){let C=P0.context.active();if(!B._shouldTrace(C))return Q.apply(this,J);if(B._runCreateHook(A,{args:J})===!1)return P0.context.with((0,VG.suppressTracing)(C),Q,this,...J);let X=B.tracer.startSpan(`fs ${A}`);try{let G=await P0.context.with((0,VG.suppressTracing)(P0.trace.setSpan(C,X)),Q,this,...J);return B._runEndHook(A,{args:J,span:X}),G}catch(G){throw X.recordException(G),X.setStatus({message:G.message,code:P0.SpanStatusCode.ERROR}),B._runEndHook(A,{args:J,span:X,error:G}),G}finally{X.end()}},Q)}_runCreateHook(...A){let{createHook:Q}=this.getConfig();if(typeof Q==="function")try{return Q(...A)}catch(B){this._diag.error("caught createHook error",B)}return!0}_runEndHook(...A){let{endHook:Q}=this.getConfig();if(typeof Q==="function")try{Q(...A)}catch(B){this._diag.error("caught endHook error",B)}}_shouldTrace(A){if((0,VG.isTracingSuppressed)(A))return!1;let{requireParentSpan:Q}=this.getConfig();if(Q){if(P0.trace.getSpan(A)==null)return!1}return!0}}d4Q.FsInstrumentation=u4Q});var i4Q=R((p4Q)=>{Object.defineProperty(p4Q,"__esModule",{value:!0})});var s4Q=R((MW)=>{var PD0=MW&&MW.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),n4Q=MW&&MW.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))PD0(Q,A,B)};Object.defineProperty(MW,"__esModule",{value:!0});n4Q(l4Q(),MW);n4Q(i4Q(),MW)});var bP=R((HUQ)=>{Object.defineProperty(HUQ,"__esModule",{value:!0});HUQ.ExpressLayerType=void 0;var nN0;(function(A){A.ROUTER="router",A.MIDDLEWARE="middleware",A.REQUEST_HANDLER="request_handler"})(nN0=HUQ.ExpressLayerType||(HUQ.ExpressLayerType={}))});var mP=R((DUQ)=>{Object.defineProperty(DUQ,"__esModule",{value:!0});DUQ.AttributeNames=void 0;var sN0;(function(A){A.EXPRESS_TYPE="express.type",A.EXPRESS_NAME="express.name"})(sN0=DUQ.AttributeNames||(DUQ.AttributeNames={}))});var Un=R((NUQ)=>{Object.defineProperty(NUQ,"__esModule",{value:!0});NUQ._LAYERS_STORE_PROPERTY=NUQ.kLayerPatched=void 0;NUQ.kLayerPatched=Symbol("express-layer-patched");NUQ._LAYERS_STORE_PROPERTY="__ot_middlewares"});var RUQ=R((MUQ)=>{Object.defineProperty(MUQ,"__esModule",{value:!0});MUQ.getLayerPath=MUQ.asErrorAndMessage=MUQ.isLayerIgnored=MUQ.getLayerMetadata=MUQ.getRouterPath=MUQ.storeLayerPath=void 0;var En=bP(),SK=mP(),Kn=Un(),aN0=(A,Q)=>{if(Array.isArray(A[Kn._LAYERS_STORE_PROPERTY])===!1)Object.defineProperty(A,Kn._LAYERS_STORE_PROPERTY,{enumerable:!1,value:[]});if(Q===void 0)return;A[Kn._LAYERS_STORE_PROPERTY].push(Q)};MUQ.storeLayerPath=aN0;var oN0=(A,Q)=>{var B,Y,J,C;let X=(Y=(B=Q.handle)===null||B===void 0?void 0:B.stack)===null||Y===void 0?void 0:Y[0];if((J=X===null||X===void 0?void 0:X.route)===null||J===void 0?void 0:J.path)return`${A}${X.route.path}`;if((C=X===null||X===void 0?void 0:X.handle)===null||C===void 0?void 0:C.stack)return MUQ.getRouterPath(A,X);return A};MUQ.getRouterPath=oN0;var tN0=(A,Q,B)=>{var Y;if(Q.name==="router"){let J=MUQ.getRouterPath("",Q),C=J?J:B||A||"/";return{attributes:{[SK.AttributeNames.EXPRESS_NAME]:C,[SK.AttributeNames.EXPRESS_TYPE]:En.ExpressLayerType.ROUTER},name:`router - ${C}`}}else if(Q.name==="bound dispatch")return{attributes:{[SK.AttributeNames.EXPRESS_NAME]:(Y=A||B)!==null&&Y!==void 0?Y:"request handler",[SK.AttributeNames.EXPRESS_TYPE]:En.ExpressLayerType.REQUEST_HANDLER},name:`request handler${Q.path?` - ${A||B}`:""}`};else return{attributes:{[SK.AttributeNames.EXPRESS_NAME]:Q.name,[SK.AttributeNames.EXPRESS_TYPE]:En.ExpressLayerType.MIDDLEWARE},name:`middleware - ${Q.name}`}};MUQ.getLayerMetadata=tN0;var eN0=(A,Q)=>{if(typeof Q==="string")return Q===A;else if(Q instanceof RegExp)return Q.test(A);else if(typeof Q==="function")return Q(A);else throw TypeError("Pattern is in unsupported datatype")},AL0=(A,Q,B)=>{var Y;if(Array.isArray(B===null||B===void 0?void 0:B.ignoreLayersType)&&((Y=B===null||B===void 0?void 0:B.ignoreLayersType)===null||Y===void 0?void 0:Y.includes(Q)))return!0;if(Array.isArray(B===null||B===void 0?void 0:B.ignoreLayers)===!1)return!1;try{for(let J of B.ignoreLayers)if(eN0(A,J))return!0}catch(J){}return!1};MUQ.isLayerIgnored=AL0;var QL0=(A)=>A instanceof Error?[A,A.message]:[String(A),String(A)];MUQ.asErrorAndMessage=QL0;var BL0=(A)=>{let Q=A[0];if(Array.isArray(Q))return Q.map((B)=>qUQ(B)||"").join(",");return qUQ(Q)};MUQ.getLayerPath=BL0;var qUQ=(A)=>{if(typeof A==="string")return A;if(A instanceof RegExp||typeof A==="number")return A.toString();return}});var OUQ=R((wUQ)=>{Object.defineProperty(wUQ,"__esModule",{value:!0});wUQ.PACKAGE_NAME=wUQ.PACKAGE_VERSION=void 0;wUQ.PACKAGE_VERSION="0.47.1";wUQ.PACKAGE_NAME="@opentelemetry/instrumentation-express"});var gUQ=R((vUQ)=>{Object.defineProperty(vUQ,"__esModule",{value:!0});vUQ.ExpressInstrumentation=void 0;var PUQ=MB(),j$=yA(),TUQ=bP(),SUQ=mP(),zW=RUQ(),kUQ=OUQ(),kK=NB(),WL0=dB(),fL=Un();class _UQ extends kK.InstrumentationBase{constructor(A={}){super(kUQ.PACKAGE_NAME,kUQ.PACKAGE_VERSION,A)}init(){return[new kK.InstrumentationNodeModuleDefinition("express",[">=4.0.0 <5"],(A)=>{let Q=A.Router;if((0,kK.isWrapped)(Q.route))this._unwrap(Q,"route");if(this._wrap(Q,"route",this._getRoutePatch()),(0,kK.isWrapped)(Q.use))this._unwrap(Q,"use");if(this._wrap(Q,"use",this._getRouterUsePatch()),(0,kK.isWrapped)(A.application.use))this._unwrap(A.application,"use");return this._wrap(A.application,"use",this._getAppUsePatch()),A},(A)=>{if(A===void 0)return;let Q=A.Router;this._unwrap(Q,"route"),this._unwrap(Q,"use"),this._unwrap(A.application,"use")})]}_getRoutePatch(){let A=this;return function(Q){return function(...Y){let J=Q.apply(this,Y),C=this.stack[this.stack.length-1];return A._applyPatch(C,(0,zW.getLayerPath)(Y)),J}}}_getRouterUsePatch(){let A=this;return function(Q){return function(...Y){let J=Q.apply(this,Y),C=this.stack[this.stack.length-1];return A._applyPatch(C,(0,zW.getLayerPath)(Y)),J}}}_getAppUsePatch(){let A=this;return function(Q){return function(...Y){let J=Q.apply(this,Y),C=this._router.stack[this._router.stack.length-1];return A._applyPatch(C,(0,zW.getLayerPath)(Y)),J}}}_applyPatch(A,Q){let B=this;if(A[fL.kLayerPatched]===!0)return;A[fL.kLayerPatched]=!0,this._wrap(A,"handle",(Y)=>{if(Y.length===4)return Y;let J=function(C,X){(0,zW.storeLayerPath)(C,Q);let G=C[fL._LAYERS_STORE_PROPERTY].filter((L)=>L!=="/"&&L!=="/*").join("").replace(/\/{2,}/g,"/"),W={[WL0.SEMATTRS_HTTP_ROUTE]:G.length>0?G:"/"},F=(0,zW.getLayerMetadata)(G,A,Q),Z=F.attributes[SUQ.AttributeNames.EXPRESS_TYPE],U=(0,PUQ.getRPCMetadata)(j$.context.active());if((U===null||U===void 0?void 0:U.type)===PUQ.RPCType.HTTP)U.route=G||"/";if((0,zW.isLayerIgnored)(F.name,Z,B.getConfig())){if(Z===TUQ.ExpressLayerType.MIDDLEWARE)C[fL._LAYERS_STORE_PROPERTY].pop();return Y.apply(this,arguments)}if(j$.trace.getSpan(j$.context.active())===void 0)return Y.apply(this,arguments);let $=B._getSpanName({request:C,layerType:Z,route:G},F.name),E=B.tracer.startSpan($,{attributes:Object.assign(W,F.attributes)}),{requestHook:K}=B.getConfig();if(K)(0,kK.safeExecuteInTheMiddle)(()=>K(E,{request:C,layerType:Z,route:G}),(L)=>{if(L)j$.diag.error("express instrumentation: request hook failed",L)},!0);let I=!1;if(F.attributes[SUQ.AttributeNames.EXPRESS_TYPE]!==TUQ.ExpressLayerType.MIDDLEWARE)E.end(),I=!0;let V=()=>{if(I===!1)I=!0,E.end()},H=Array.from(arguments),D=H.findIndex((L)=>typeof L==="function");if(D>=0)arguments[D]=function(){var L;let z=arguments[0],M=![void 0,null,"route","router"].includes(z);if(!I&&M){let[q,w]=(0,zW.asErrorAndMessage)(z);E.recordException(q),E.setStatus({code:j$.SpanStatusCode.ERROR,message:w})}if(I===!1)I=!0,(L=C.res)===null||L===void 0||L.removeListener("finish",V),E.end();if(!(C.route&&M))C[fL._LAYERS_STORE_PROPERTY].pop();return H[D].apply(this,arguments)};try{return Y.apply(this,arguments)}catch(L){let[z,M]=(0,zW.asErrorAndMessage)(L);throw E.recordException(z),E.setStatus({code:j$.SpanStatusCode.ERROR,message:M}),L}finally{if(!I)X.once("finish",V)}};for(let C in Y)Object.defineProperty(J,C,{get(){return Y[C]},set(X){Y[C]=X}});return J})}_getSpanName(A,Q){var B;let{spanNameHook:Y}=this.getConfig();if(!(Y instanceof Function))return Q;try{return(B=Y(A,Q))!==null&&B!==void 0?B:Q}catch(J){return j$.diag.error("express instrumentation: error calling span name rewrite hook",J),Q}}}vUQ.ExpressInstrumentation=_UQ});var xUQ=R((hUQ)=>{Object.defineProperty(hUQ,"__esModule",{value:!0})});var fUQ=R((NX)=>{var FL0=NX&&NX.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),uP=NX&&NX.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))FL0(Q,A,B)};Object.defineProperty(NX,"__esModule",{value:!0});uP(gUQ(),NX);uP(bP(),NX);uP(mP(),NX);uP(xUQ(),NX)});var CEQ=R((puY,JEQ)=>{var tUQ=py();JEQ.exports=LL0;var eUQ="\x00SLASH"+Math.random()+"\x00",AEQ="\x00OPEN"+Math.random()+"\x00",zn="\x00CLOSE"+Math.random()+"\x00",QEQ="\x00COMMA"+Math.random()+"\x00",BEQ="\x00PERIOD"+Math.random()+"\x00";function Mn(A){return parseInt(A,10)==A?parseInt(A,10):A.charCodeAt(0)}function DL0(A){return A.split("\\\\").join(eUQ).split("\\{").join(AEQ).split("\\}").join(zn).split("\\,").join(QEQ).split("\\.").join(BEQ)}function NL0(A){return A.split(eUQ).join("\\").split(AEQ).join("{").split(zn).join("}").split(QEQ).join(",").split(BEQ).join(".")}function YEQ(A){if(!A)return[""];var Q=[],B=tUQ("{","}",A);if(!B)return A.split(",");var{pre:Y,body:J,post:C}=B,X=Y.split(",");X[X.length-1]+="{"+J+"}";var G=YEQ(C);if(C.length)X[X.length-1]+=G.shift(),X.push.apply(X,G);return Q.push.apply(Q,X),Q}function LL0(A){if(!A)return[];if(A.substr(0,2)==="{}")A="\\{\\}"+A.substr(2);return bL(DL0(A),!0).map(NL0)}function qL0(A){return"{"+A+"}"}function ML0(A){return/^-?0\d/.test(A)}function zL0(A,Q){return A<=Q}function RL0(A,Q){return A>=Q}function bL(A,Q){var B=[],Y=tUQ("{","}",A);if(!Y)return[A];var J=Y.pre,C=Y.post.length?bL(Y.post,!1):[""];if(/\$$/.test(Y.pre))for(var X=0;X=0;if(!Z&&!U){if(Y.post.match(/,.*\}/))return A=Y.pre+"{"+Y.body+zn+Y.post,bL(A);return[A]}var $;if(Z)$=Y.body.split(/\.\./);else if($=YEQ(Y.body),$.length===1){if($=bL($[0],!1).map(qL0),$.length===1)return C.map(function(_){return Y.pre+$[0]+_})}var E;if(Z){var K=Mn($[0]),I=Mn($[1]),V=Math.max($[0].length,$[1].length),H=$.length==3?Math.abs(Mn($[2])):1,D=zL0,L=I0){var w=Array(q+1).join("0");if(M<0)N="-"+w+N.slice(1);else N=w+N}}E.push(N)}}else{E=[];for(var P=0;P<$.length;P++)E.push.apply(E,bL($[P],!1))}for(var P=0;P{Object.defineProperty(XEQ,"__esModule",{value:!0});XEQ.assertValidPattern=void 0;var wL0=65536,jL0=(A)=>{if(typeof A!=="string")throw TypeError("invalid pattern");if(A.length>wL0)throw TypeError("pattern is too long")};XEQ.assertValidPattern=jL0});var UEQ=R((ZEQ)=>{Object.defineProperty(ZEQ,"__esModule",{value:!0});ZEQ.parseClass=void 0;var OL0={"[:alnum:]":["\\p{L}\\p{Nl}\\p{Nd}",!0],"[:alpha:]":["\\p{L}\\p{Nl}",!0],"[:ascii:]":["\\x00-\\x7f",!1],"[:blank:]":["\\p{Zs}\\t",!0],"[:cntrl:]":["\\p{Cc}",!0],"[:digit:]":["\\p{Nd}",!0],"[:graph:]":["\\p{Z}\\p{C}",!0,!0],"[:lower:]":["\\p{Ll}",!0],"[:print:]":["\\p{C}",!0],"[:punct:]":["\\p{P}",!0],"[:space:]":["\\p{Z}\\t\\r\\n\\v\\f",!0],"[:upper:]":["\\p{Lu}",!0],"[:word:]":["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}",!0],"[:xdigit:]":["A-Fa-f0-9",!1]},mL=(A)=>A.replace(/[[\]\\-]/g,"\\$&"),PL0=(A)=>A.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),FEQ=(A)=>A.join(""),TL0=(A,Q)=>{let B=Q;if(A.charAt(B)!=="[")throw Error("not in a brace expression");let Y=[],J=[],C=B+1,X=!1,G=!1,W=!1,F=!1,Z=B,U="";A:while(CU)Y.push(mL(U)+"-"+mL(I));else if(I===U)Y.push(mL(I));U="",C++;continue}if(A.startsWith("-]",C+1)){Y.push(mL(I+"-")),C+=2;continue}if(A.startsWith("-",C+1)){U=I,C+=2;continue}Y.push(mL(I)),C++}if(Z{Object.defineProperty(EEQ,"__esModule",{value:!0});EEQ.unescape=void 0;var SL0=(A,{windowsPathsNoEscape:Q=!1}={})=>{return Q?A.replace(/\[([^\/\\])\]/g,"$1"):A.replace(/((?!\\).|^)\[([^\/\\])\]/g,"$1$2").replace(/\\([^\/])/g,"$1")};EEQ.unescape=SL0});var wn=R((DEQ)=>{Object.defineProperty(DEQ,"__esModule",{value:!0});DEQ.AST=void 0;var kL0=UEQ(),iP=pP(),_L0=new Set(["!","?","+","*","@"]),VEQ=(A)=>_L0.has(A),vL0="(?!(?:^|/)\\.\\.?(?:$|/))",nP="(?!\\.)",yL0=new Set(["[","."]),gL0=new Set(["..","."]),hL0=new Set("().*{}+?[]^$\\!"),xL0=(A)=>A.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),Rn="[^/]",IEQ=Rn+"*?",HEQ=Rn+"+?";class e9{type;#A;#Q;#B=!1;#Y=[];#J;#C;#W;#X=!1;#G;#Z;#U=!1;constructor(A,Q,B={}){if(this.type=A,A)this.#Q=!0;if(this.#J=Q,this.#A=this.#J?this.#J.#A:this,this.#G=this.#A===this?B:this.#A.#G,this.#W=this.#A===this?[]:this.#A.#W,A==="!"&&!this.#A.#X)this.#W.push(this);this.#C=this.#J?this.#J.#Y.length:0}get hasMagic(){if(this.#Q!==void 0)return this.#Q;for(let A of this.#Y){if(typeof A==="string")continue;if(A.type||A.hasMagic)return this.#Q=!0}return this.#Q}toString(){if(this.#Z!==void 0)return this.#Z;if(!this.type)return this.#Z=this.#Y.map((A)=>String(A)).join("");else return this.#Z=this.type+"("+this.#Y.map((A)=>String(A)).join("|")+")"}#F(){if(this!==this.#A)throw Error("should only call on root");if(this.#X)return this;this.toString(),this.#X=!0;let A;while(A=this.#W.pop()){if(A.type!=="!")continue;let Q=A,B=Q.#J;while(B){for(let Y=Q.#C+1;!B.type&&Ytypeof Q==="string"?Q:Q.toJSON()):[this.type,...this.#Y.map((Q)=>Q.toJSON())];if(this.isStart()&&!this.type)A.unshift([]);if(this.isEnd()&&(this===this.#A||this.#A.#X&&this.#J?.type==="!"))A.push({});return A}isStart(){if(this.#A===this)return!0;if(!this.#J?.isStart())return!1;if(this.#C===0)return!0;let A=this.#J;for(let Q=0;Q{let[E,K,I,V]=typeof $==="string"?e9.#I($,this.#Q,G):$.toRegExpSource(A);return this.#Q=this.#Q||I,this.#B=this.#B||V,E}).join(""),F="";if(this.isStart()){if(typeof this.#Y[0]==="string"){if(!(this.#Y.length===1&&gL0.has(this.#Y[0]))){let E=yL0,K=Q&&E.has(W.charAt(0))||W.startsWith("\\.")&&E.has(W.charAt(2))||W.startsWith("\\.\\.")&&E.has(W.charAt(4)),I=!Q&&!A&&E.has(W.charAt(0));F=K?vL0:I?nP:""}}}let Z="";if(this.isEnd()&&this.#A.#X&&this.#J?.type==="!")Z="(?:$|\\/)";return[F+W+Z,(0,iP.unescape)(W),this.#Q=!!this.#Q,this.#B]}let B=this.type==="*"||this.type==="+",Y=this.type==="!"?"(?:(?!(?:":"(?:",J=this.#V(Q);if(this.isStart()&&this.isEnd()&&!J&&this.type!=="!"){let G=this.toString();return this.#Y=[G],this.type=null,this.#Q=void 0,[G,(0,iP.unescape)(this.toString()),!1,!1]}let C=!B||A||Q||!nP?"":this.#V(!0);if(C===J)C="";if(C)J=`(?:${J})(?:${C})*?`;let X="";if(this.type==="!"&&this.#U)X=(this.isStart()&&!Q?nP:"")+HEQ;else{let G=this.type==="!"?"))"+(this.isStart()&&!Q&&!A?nP:"")+IEQ+")":this.type==="@"?")":this.type==="?"?")?":this.type==="+"&&C?")":this.type==="*"&&C?")?":`)${this.type}`;X=Y+J+G}return[X,(0,iP.unescape)(J),this.#Q=!!this.#Q,this.#B]}#V(A){return this.#Y.map((Q)=>{if(typeof Q==="string")throw Error("string type in extglob ast??");let[B,Y,J,C]=Q.toRegExpSource(A);return this.#B=this.#B||C,B}).filter((Q)=>!(this.isStart()&&this.isEnd())||!!Q).join("|")}static#I(A,Q,B=!1){let Y=!1,J="",C=!1;for(let X=0;X{Object.defineProperty(LEQ,"__esModule",{value:!0});LEQ.escape=void 0;var fL0=(A,{windowsPathsNoEscape:Q=!1}={})=>{return Q?A.replace(/[?*()[\]]/g,"[$&]"):A.replace(/[?*()[\]\\]/g,"\\$&")};LEQ.escape=fL0});var PEQ=R((rA)=>{var bL0=rA&&rA.__importDefault||function(A){return A&&A.__esModule?A:{default:A}};Object.defineProperty(rA,"__esModule",{value:!0});rA.unescape=rA.escape=rA.AST=rA.Minimatch=rA.match=rA.makeRe=rA.braceExpand=rA.defaults=rA.filter=rA.GLOBSTAR=rA.sep=rA.minimatch=void 0;var mL0=bL0(CEQ()),sP=WEQ(),REQ=wn(),uL0=jn(),dL0=pP(),cL0=(A,Q,B={})=>{if((0,sP.assertValidPattern)(Q),!B.nocomment&&Q.charAt(0)==="#")return!1;return new _K(Q,B).match(A)};rA.minimatch=cL0;var lL0=/^\*+([^+@!?\*\[\(]*)$/,pL0=(A)=>(Q)=>!Q.startsWith(".")&&Q.endsWith(A),iL0=(A)=>(Q)=>Q.endsWith(A),nL0=(A)=>{return A=A.toLowerCase(),(Q)=>!Q.startsWith(".")&&Q.toLowerCase().endsWith(A)},sL0=(A)=>{return A=A.toLowerCase(),(Q)=>Q.toLowerCase().endsWith(A)},rL0=/^\*+\.\*+$/,aL0=(A)=>!A.startsWith(".")&&A.includes("."),oL0=(A)=>A!=="."&&A!==".."&&A.includes("."),tL0=/^\.\*+$/,eL0=(A)=>A!=="."&&A!==".."&&A.startsWith("."),Aq0=/^\*+$/,Qq0=(A)=>A.length!==0&&!A.startsWith("."),Bq0=(A)=>A.length!==0&&A!=="."&&A!=="..",Yq0=/^\?+([^+@!?\*\[\(]*)?$/,Jq0=([A,Q=""])=>{let B=wEQ([A]);if(!Q)return B;return Q=Q.toLowerCase(),(Y)=>B(Y)&&Y.toLowerCase().endsWith(Q)},Cq0=([A,Q=""])=>{let B=jEQ([A]);if(!Q)return B;return Q=Q.toLowerCase(),(Y)=>B(Y)&&Y.toLowerCase().endsWith(Q)},Xq0=([A,Q=""])=>{let B=jEQ([A]);return!Q?B:(Y)=>B(Y)&&Y.endsWith(Q)},Gq0=([A,Q=""])=>{let B=wEQ([A]);return!Q?B:(Y)=>B(Y)&&Y.endsWith(Q)},wEQ=([A])=>{let Q=A.length;return(B)=>B.length===Q&&!B.startsWith(".")},jEQ=([A])=>{let Q=A.length;return(B)=>B.length===Q&&B!=="."&&B!==".."},OEQ=typeof process==="object"&&process?typeof process.env==="object"&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:"posix",MEQ={win32:{sep:"\\"},posix:{sep:"/"}};rA.sep=OEQ==="win32"?MEQ.win32.sep:MEQ.posix.sep;rA.minimatch.sep=rA.sep;rA.GLOBSTAR=Symbol("globstar **");rA.minimatch.GLOBSTAR=rA.GLOBSTAR;var Wq0="[^/]",Fq0=Wq0+"*?",Zq0="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",$q0="(?:(?!(?:\\/|^)\\.).)*?",Uq0=(A,Q={})=>(B)=>(0,rA.minimatch)(B,A,Q);rA.filter=Uq0;rA.minimatch.filter=rA.filter;var t5=(A,Q={})=>Object.assign({},A,Q),Eq0=(A)=>{if(!A||typeof A!=="object"||!Object.keys(A).length)return rA.minimatch;let Q=rA.minimatch;return Object.assign((Y,J,C={})=>Q(Y,J,t5(A,C)),{Minimatch:class extends Q.Minimatch{constructor(J,C={}){super(J,t5(A,C))}static defaults(J){return Q.defaults(t5(A,J)).Minimatch}},AST:class extends Q.AST{constructor(J,C,X={}){super(J,C,t5(A,X))}static fromGlob(J,C={}){return Q.AST.fromGlob(J,t5(A,C))}},unescape:(Y,J={})=>Q.unescape(Y,t5(A,J)),escape:(Y,J={})=>Q.escape(Y,t5(A,J)),filter:(Y,J={})=>Q.filter(Y,t5(A,J)),defaults:(Y)=>Q.defaults(t5(A,Y)),makeRe:(Y,J={})=>Q.makeRe(Y,t5(A,J)),braceExpand:(Y,J={})=>Q.braceExpand(Y,t5(A,J)),match:(Y,J,C={})=>Q.match(Y,J,t5(A,C)),sep:Q.sep,GLOBSTAR:rA.GLOBSTAR})};rA.defaults=Eq0;rA.minimatch.defaults=rA.defaults;var Kq0=(A,Q={})=>{if((0,sP.assertValidPattern)(A),Q.nobrace||!/\{(?:(?!\{).)*\}/.test(A))return[A];return(0,mL0.default)(A)};rA.braceExpand=Kq0;rA.minimatch.braceExpand=rA.braceExpand;var Vq0=(A,Q={})=>new _K(A,Q).makeRe();rA.makeRe=Vq0;rA.minimatch.makeRe=rA.makeRe;var Iq0=(A,Q,B={})=>{let Y=new _K(Q,B);if(A=A.filter((J)=>Y.match(J)),Y.options.nonull&&!A.length)A.push(Q);return A};rA.match=Iq0;rA.minimatch.match=rA.match;var zEQ=/[?*]|[+@!]\(.*?\)|\[|\]/,Hq0=(A)=>A.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&");class _K{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;regexp;constructor(A,Q={}){if((0,sP.assertValidPattern)(A),Q=Q||{},this.options=Q,this.pattern=A,this.platform=Q.platform||OEQ,this.isWindows=this.platform==="win32",this.windowsPathsNoEscape=!!Q.windowsPathsNoEscape||Q.allowWindowsEscape===!1,this.windowsPathsNoEscape)this.pattern=this.pattern.replace(/\\/g,"/");this.preserveMultipleSlashes=!!Q.preserveMultipleSlashes,this.regexp=null,this.negate=!1,this.nonegate=!!Q.nonegate,this.comment=!1,this.empty=!1,this.partial=!!Q.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=Q.windowsNoMagicRoot!==void 0?Q.windowsNoMagicRoot:!!(this.isWindows&&this.nocase),this.globSet=[],this.globParts=[],this.set=[],this.make()}hasMagic(){if(this.options.magicalBraces&&this.set.length>1)return!0;for(let A of this.set)for(let Q of A)if(typeof Q!=="string")return!0;return!1}debug(...A){}make(){let A=this.pattern,Q=this.options;if(!Q.nocomment&&A.charAt(0)==="#"){this.comment=!0;return}if(!A){this.empty=!0;return}if(this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],Q.debug)this.debug=(...J)=>console.error(...J);this.debug(this.pattern,this.globSet);let B=this.globSet.map((J)=>this.slashSplit(J));this.globParts=this.preprocess(B),this.debug(this.pattern,this.globParts);let Y=this.globParts.map((J,C,X)=>{if(this.isWindows&&this.windowsNoMagicRoot){let G=J[0]===""&&J[1]===""&&(J[2]==="?"||!zEQ.test(J[2]))&&!zEQ.test(J[3]),W=/^[a-z]:/i.test(J[0]);if(G)return[...J.slice(0,4),...J.slice(4).map((F)=>this.parse(F))];else if(W)return[J[0],...J.slice(1).map((F)=>this.parse(F))]}return J.map((G)=>this.parse(G))});if(this.debug(this.pattern,Y),this.set=Y.filter((J)=>J.indexOf(!1)===-1),this.isWindows)for(let J=0;J=2)A=this.firstPhasePreProcess(A),A=this.secondPhasePreProcess(A);else if(Q>=1)A=this.levelOneOptimize(A);else A=this.adjascentGlobstarOptimize(A);return A}adjascentGlobstarOptimize(A){return A.map((Q)=>{let B=-1;while((B=Q.indexOf("**",B+1))!==-1){let Y=B;while(Q[Y+1]==="**")Y++;if(Y!==B)Q.splice(B,Y-B)}return Q})}levelOneOptimize(A){return A.map((Q)=>{return Q=Q.reduce((B,Y)=>{let J=B[B.length-1];if(Y==="**"&&J==="**")return B;if(Y===".."){if(J&&J!==".."&&J!=="."&&J!=="**")return B.pop(),B}return B.push(Y),B},[]),Q.length===0?[""]:Q})}levelTwoFileOptimize(A){if(!Array.isArray(A))A=this.slashSplit(A);let Q=!1;do{if(Q=!1,!this.preserveMultipleSlashes){for(let Y=1;YY)B.splice(Y+1,C-Y);let X=B[Y+1],G=B[Y+2],W=B[Y+3];if(X!=="..")continue;if(!G||G==="."||G===".."||!W||W==="."||W==="..")continue;Q=!0,B.splice(Y,1);let F=B.slice(0);F[Y]="**",A.push(F),Y--}if(!this.preserveMultipleSlashes){for(let C=1;CQ.length)}partsMatch(A,Q,B=!1){let Y=0,J=0,C=[],X="";while(YD)Q=Q.slice(L);else if(D>L)A=A.slice(D)}}}let{optimizationLevel:J=1}=this.options;if(J>=2)A=this.levelTwoFileOptimize(A);this.debug("matchOne",this,{file:A,pattern:Q}),this.debug("matchOne",A.length,Q.length);for(var C=0,X=0,G=A.length,W=Q.length;C{let E=U.indexOf(":"),K=E!==-1,I=(K?U.substring(0,E):U).toLowerCase(),V=K?U.substring(E+1):Z[$+1];if(F.has(I))W[`http.request.header.${I}`]=V.trim()})}C.setAttributes(W)}onResponseHeaders({request:A,response:Q}){var B,Y;let J=this._recordFromReq.get(A);if(!J)return;let{span:C,attributes:X}=J,G={[xY.SemanticAttributes.HTTP_RESPONSE_STATUS_CODE]:Q.statusCode},W=this.getConfig();(0,yL.safeExecuteInTheMiddle)(()=>{var Z;return(Z=W.responseHook)===null||Z===void 0?void 0:Z.call(W,C,{request:A,response:Q})},(Z)=>Z&&this._diag.error("caught responseHook error: ",Z),!0);let F=new Set;if((B=W.headersToSpanAttributes)===null||B===void 0?void 0:B.responseHeaders)(Y=W.headersToSpanAttributes)===null||Y===void 0||Y.responseHeaders.forEach((Z)=>F.add(Z.toLowerCase()));for(let Z=0;Z=400?d8.SpanStatusCode.ERROR:d8.SpanStatusCode.UNSET}),J.attributes=Object.assign(X,G)}onDone({request:A}){let Q=this._recordFromReq.get(A);if(!Q)return;let{span:B,attributes:Y,startTime:J}=Q;B.end(),this._recordFromReq.delete(A),this.recordRequestDuration(Y,J)}onError({request:A,error:Q}){let B=this._recordFromReq.get(A);if(!B)return;let{span:Y,attributes:J,startTime:C}=B;Y.recordException(Q),Y.setStatus({code:d8.SpanStatusCode.ERROR,message:Q.message}),Y.end(),this._recordFromReq.delete(A),J[xY.SemanticAttributes.ERROR_TYPE]=Q.message,this.recordRequestDuration(J,C)}recordRequestDuration(A,Q){let B={};[xY.SemanticAttributes.HTTP_RESPONSE_STATUS_CODE,xY.SemanticAttributes.HTTP_REQUEST_METHOD,xY.SemanticAttributes.SERVER_ADDRESS,xY.SemanticAttributes.SERVER_PORT,xY.SemanticAttributes.URL_SCHEME,xY.SemanticAttributes.ERROR_TYPE].forEach((C)=>{if(C in A)B[C]=A[C]});let J=(0,wP.hrTimeToMilliseconds)((0,wP.hrTimeDuration)(Q,(0,wP.hrTime)()))/1000;this._httpClientDurationHistogram.record(J,B)}getRequestMethod(A){let Q={CONNECT:!0,OPTIONS:!0,HEAD:!0,GET:!0,POST:!0,PUT:!0,PATCH:!0,DELETE:!0,TRACE:!0};if(A.toUpperCase()in Q)return A.toUpperCase();return"_OTHER"}}H4Q.UndiciInstrumentation=I4Q});var q4Q=R((L4Q)=>{Object.defineProperty(L4Q,"__esModule",{value:!0})});var z4Q=R((NW)=>{var ED0=NW&&NW.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),M4Q=NW&&NW.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))ED0(Q,A,B)};Object.defineProperty(NW,"__esModule",{value:!0});M4Q(N4Q(),NW);M4Q(q4Q(),NW)});var _4Q=R((S4Q)=>{Object.defineProperty(S4Q,"__esModule",{value:!0});S4Q.PACKAGE_NAME=S4Q.PACKAGE_VERSION=void 0;S4Q.PACKAGE_VERSION="0.19.1";S4Q.PACKAGE_NAME="@opentelemetry/instrumentation-fs"});var g4Q=R((v4Q)=>{Object.defineProperty(v4Q,"__esModule",{value:!0});v4Q.SYNC_FUNCTIONS=v4Q.CALLBACK_FUNCTIONS=v4Q.PROMISE_FUNCTIONS=void 0;v4Q.PROMISE_FUNCTIONS=["access","appendFile","chmod","chown","copyFile","cp","lchown","link","lstat","lutimes","mkdir","mkdtemp","open","opendir","readdir","readFile","readlink","realpath","rename","rm","rmdir","stat","symlink","truncate","unlink","utimes","writeFile"];v4Q.CALLBACK_FUNCTIONS=["access","appendFile","chmod","chown","copyFile","cp","exists","lchown","link","lstat","lutimes","mkdir","mkdtemp","open","opendir","readdir","readFile","readlink","realpath","realpath.native","rename","rm","rmdir","stat","symlink","truncate","unlink","utimes","writeFile"];v4Q.SYNC_FUNCTIONS=["accessSync","appendFileSync","chmodSync","chownSync","copyFileSync","cpSync","existsSync","lchownSync","linkSync","lstatSync","lutimesSync","mkdirSync","mkdtempSync","opendirSync","openSync","readdirSync","readFileSync","readlinkSync","realpathSync","realpathSync.native","renameSync","rmdirSync","rmSync","statSync","symlinkSync","truncateSync","unlinkSync","utimesSync","writeFileSync"]});var b4Q=R((x4Q)=>{Object.defineProperty(x4Q,"__esModule",{value:!0});x4Q.indexFs=x4Q.splitTwoLevels=void 0;function h4Q(A){let Q=A.split(".");if(Q.length>1){if(Q.length!==2)throw Error(`Invalid member function name ${A}`);return Q}else return[A]}x4Q.splitTwoLevels=h4Q;function wD0(A,Q){if(!Q)throw Error(JSON.stringify({member:Q}));let B=h4Q(Q),[Y,J]=B;if(J)return{objectToPatch:A[Y],functionNameToPatch:J};else return{objectToPatch:A,functionNameToPatch:Y}}x4Q.indexFs=wD0});var l4Q=R((d4Q)=>{Object.defineProperty(d4Q,"__esModule",{value:!0});d4Q.FsInstrumentation=void 0;var P0=yA(),VG=MB(),$1=NB(),m4Q=_4Q(),qW=g4Q(),OD0=u("util"),TP=b4Q();function SP(A,Q){return Object.assign(A,Q)}class u4Q extends $1.InstrumentationBase{constructor(A={}){super(m4Q.PACKAGE_NAME,m4Q.PACKAGE_VERSION,A)}init(){return[new $1.InstrumentationNodeModuleDefinition("fs",["*"],(A)=>{for(let Q of qW.SYNC_FUNCTIONS){let{objectToPatch:B,functionNameToPatch:Y}=(0,TP.indexFs)(A,Q);if((0,$1.isWrapped)(B[Y]))this._unwrap(B,Y);this._wrap(B,Y,this._patchSyncFunction.bind(this,Q))}for(let Q of qW.CALLBACK_FUNCTIONS){let{objectToPatch:B,functionNameToPatch:Y}=(0,TP.indexFs)(A,Q);if((0,$1.isWrapped)(B[Y]))this._unwrap(B,Y);if(Q==="exists"){this._wrap(B,Y,this._patchExistsCallbackFunction.bind(this,Q));continue}this._wrap(B,Y,this._patchCallbackFunction.bind(this,Q))}for(let Q of qW.PROMISE_FUNCTIONS){if((0,$1.isWrapped)(A.promises[Q]))this._unwrap(A.promises,Q);this._wrap(A.promises,Q,this._patchPromiseFunction.bind(this,Q))}return A},(A)=>{if(A===void 0)return;for(let Q of qW.SYNC_FUNCTIONS){let{objectToPatch:B,functionNameToPatch:Y}=(0,TP.indexFs)(A,Q);if((0,$1.isWrapped)(B[Y]))this._unwrap(B,Y)}for(let Q of qW.CALLBACK_FUNCTIONS){let{objectToPatch:B,functionNameToPatch:Y}=(0,TP.indexFs)(A,Q);if((0,$1.isWrapped)(B[Y]))this._unwrap(B,Y)}for(let Q of qW.PROMISE_FUNCTIONS)if((0,$1.isWrapped)(A.promises[Q]))this._unwrap(A.promises,Q)}),new $1.InstrumentationNodeModuleDefinition("fs/promises",["*"],(A)=>{for(let Q of qW.PROMISE_FUNCTIONS){if((0,$1.isWrapped)(A[Q]))this._unwrap(A,Q);this._wrap(A,Q,this._patchPromiseFunction.bind(this,Q))}return A},(A)=>{if(A===void 0)return;for(let Q of qW.PROMISE_FUNCTIONS)if((0,$1.isWrapped)(A[Q]))this._unwrap(A,Q)})]}_patchSyncFunction(A,Q){let B=this;return SP(function(...J){let C=P0.context.active();if(!B._shouldTrace(C))return Q.apply(this,J);if(B._runCreateHook(A,{args:J})===!1)return P0.context.with((0,VG.suppressTracing)(C),Q,this,...J);let X=B.tracer.startSpan(`fs ${A}`);try{let G=P0.context.with((0,VG.suppressTracing)(P0.trace.setSpan(C,X)),Q,this,...J);return B._runEndHook(A,{args:J,span:X}),G}catch(G){throw X.recordException(G),X.setStatus({message:G.message,code:P0.SpanStatusCode.ERROR}),B._runEndHook(A,{args:J,span:X,error:G}),G}finally{X.end()}},Q)}_patchCallbackFunction(A,Q){let B=this;return SP(function(...J){let C=P0.context.active();if(!B._shouldTrace(C))return Q.apply(this,J);if(B._runCreateHook(A,{args:J})===!1)return P0.context.with((0,VG.suppressTracing)(C),Q,this,...J);let X=J.length-1,G=J[X];if(typeof G==="function"){let W=B.tracer.startSpan(`fs ${A}`);J[X]=P0.context.bind(C,function(F){if(F)W.recordException(F),W.setStatus({message:F.message,code:P0.SpanStatusCode.ERROR});return B._runEndHook(A,{args:J,span:W,error:F}),W.end(),G.apply(this,arguments)});try{return P0.context.with((0,VG.suppressTracing)(P0.trace.setSpan(C,W)),Q,this,...J)}catch(F){throw W.recordException(F),W.setStatus({message:F.message,code:P0.SpanStatusCode.ERROR}),B._runEndHook(A,{args:J,span:W,error:F}),W.end(),F}}else return Q.apply(this,J)},Q)}_patchExistsCallbackFunction(A,Q){let B=this,J=SP(function(...X){let G=P0.context.active();if(!B._shouldTrace(G))return Q.apply(this,X);if(B._runCreateHook(A,{args:X})===!1)return P0.context.with((0,VG.suppressTracing)(G),Q,this,...X);let W=X.length-1,F=X[W];if(typeof F==="function"){let Z=B.tracer.startSpan(`fs ${A}`);X[W]=P0.context.bind(G,function(){return B._runEndHook(A,{args:X,span:Z}),Z.end(),F.apply(this,arguments)});try{return P0.context.with((0,VG.suppressTracing)(P0.trace.setSpan(G,Z)),Q,this,...X)}catch(U){throw Z.recordException(U),Z.setStatus({message:U.message,code:P0.SpanStatusCode.ERROR}),B._runEndHook(A,{args:X,span:Z,error:U}),Z.end(),U}}else return Q.apply(this,X)},Q),C=function(X){return new Promise((G)=>J(X,G))};return Object.defineProperty(C,"name",{value:A}),Object.defineProperty(J,OD0.promisify.custom,{value:C}),J}_patchPromiseFunction(A,Q){let B=this;return SP(async function(...J){let C=P0.context.active();if(!B._shouldTrace(C))return Q.apply(this,J);if(B._runCreateHook(A,{args:J})===!1)return P0.context.with((0,VG.suppressTracing)(C),Q,this,...J);let X=B.tracer.startSpan(`fs ${A}`);try{let G=await P0.context.with((0,VG.suppressTracing)(P0.trace.setSpan(C,X)),Q,this,...J);return B._runEndHook(A,{args:J,span:X}),G}catch(G){throw X.recordException(G),X.setStatus({message:G.message,code:P0.SpanStatusCode.ERROR}),B._runEndHook(A,{args:J,span:X,error:G}),G}finally{X.end()}},Q)}_runCreateHook(...A){let{createHook:Q}=this.getConfig();if(typeof Q==="function")try{return Q(...A)}catch(B){this._diag.error("caught createHook error",B)}return!0}_runEndHook(...A){let{endHook:Q}=this.getConfig();if(typeof Q==="function")try{Q(...A)}catch(B){this._diag.error("caught endHook error",B)}}_shouldTrace(A){if((0,VG.isTracingSuppressed)(A))return!1;let{requireParentSpan:Q}=this.getConfig();if(Q){if(P0.trace.getSpan(A)==null)return!1}return!0}}d4Q.FsInstrumentation=u4Q});var i4Q=R((p4Q)=>{Object.defineProperty(p4Q,"__esModule",{value:!0})});var s4Q=R((MW)=>{var PD0=MW&&MW.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),n4Q=MW&&MW.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))PD0(Q,A,B)};Object.defineProperty(MW,"__esModule",{value:!0});n4Q(l4Q(),MW);n4Q(i4Q(),MW)});var bP=R((HUQ)=>{Object.defineProperty(HUQ,"__esModule",{value:!0});HUQ.ExpressLayerType=void 0;var nN0;(function(A){A.ROUTER="router",A.MIDDLEWARE="middleware",A.REQUEST_HANDLER="request_handler"})(nN0=HUQ.ExpressLayerType||(HUQ.ExpressLayerType={}))});var mP=R((DUQ)=>{Object.defineProperty(DUQ,"__esModule",{value:!0});DUQ.AttributeNames=void 0;var sN0;(function(A){A.EXPRESS_TYPE="express.type",A.EXPRESS_NAME="express.name"})(sN0=DUQ.AttributeNames||(DUQ.AttributeNames={}))});var Un=R((NUQ)=>{Object.defineProperty(NUQ,"__esModule",{value:!0});NUQ._LAYERS_STORE_PROPERTY=NUQ.kLayerPatched=void 0;NUQ.kLayerPatched=Symbol("express-layer-patched");NUQ._LAYERS_STORE_PROPERTY="__ot_middlewares"});var RUQ=R((MUQ)=>{Object.defineProperty(MUQ,"__esModule",{value:!0});MUQ.getLayerPath=MUQ.asErrorAndMessage=MUQ.isLayerIgnored=MUQ.getLayerMetadata=MUQ.getRouterPath=MUQ.storeLayerPath=void 0;var En=bP(),SK=mP(),Kn=Un(),aN0=(A,Q)=>{if(Array.isArray(A[Kn._LAYERS_STORE_PROPERTY])===!1)Object.defineProperty(A,Kn._LAYERS_STORE_PROPERTY,{enumerable:!1,value:[]});if(Q===void 0)return;A[Kn._LAYERS_STORE_PROPERTY].push(Q)};MUQ.storeLayerPath=aN0;var oN0=(A,Q)=>{var B,Y,J,C;let X=(Y=(B=Q.handle)===null||B===void 0?void 0:B.stack)===null||Y===void 0?void 0:Y[0];if((J=X===null||X===void 0?void 0:X.route)===null||J===void 0?void 0:J.path)return`${A}${X.route.path}`;if((C=X===null||X===void 0?void 0:X.handle)===null||C===void 0?void 0:C.stack)return MUQ.getRouterPath(A,X);return A};MUQ.getRouterPath=oN0;var tN0=(A,Q,B)=>{var Y;if(Q.name==="router"){let J=MUQ.getRouterPath("",Q),C=J?J:B||A||"/";return{attributes:{[SK.AttributeNames.EXPRESS_NAME]:C,[SK.AttributeNames.EXPRESS_TYPE]:En.ExpressLayerType.ROUTER},name:`router - ${C}`}}else if(Q.name==="bound dispatch")return{attributes:{[SK.AttributeNames.EXPRESS_NAME]:(Y=A||B)!==null&&Y!==void 0?Y:"request handler",[SK.AttributeNames.EXPRESS_TYPE]:En.ExpressLayerType.REQUEST_HANDLER},name:`request handler${Q.path?` - ${A||B}`:""}`};else return{attributes:{[SK.AttributeNames.EXPRESS_NAME]:Q.name,[SK.AttributeNames.EXPRESS_TYPE]:En.ExpressLayerType.MIDDLEWARE},name:`middleware - ${Q.name}`}};MUQ.getLayerMetadata=tN0;var eN0=(A,Q)=>{if(typeof Q==="string")return Q===A;else if(Q instanceof RegExp)return Q.test(A);else if(typeof Q==="function")return Q(A);else throw TypeError("Pattern is in unsupported datatype")},AL0=(A,Q,B)=>{var Y;if(Array.isArray(B===null||B===void 0?void 0:B.ignoreLayersType)&&((Y=B===null||B===void 0?void 0:B.ignoreLayersType)===null||Y===void 0?void 0:Y.includes(Q)))return!0;if(Array.isArray(B===null||B===void 0?void 0:B.ignoreLayers)===!1)return!1;try{for(let J of B.ignoreLayers)if(eN0(A,J))return!0}catch(J){}return!1};MUQ.isLayerIgnored=AL0;var QL0=(A)=>A instanceof Error?[A,A.message]:[String(A),String(A)];MUQ.asErrorAndMessage=QL0;var BL0=(A)=>{let Q=A[0];if(Array.isArray(Q))return Q.map((B)=>qUQ(B)||"").join(",");return qUQ(Q)};MUQ.getLayerPath=BL0;var qUQ=(A)=>{if(typeof A==="string")return A;if(A instanceof RegExp||typeof A==="number")return A.toString();return}});var OUQ=R((wUQ)=>{Object.defineProperty(wUQ,"__esModule",{value:!0});wUQ.PACKAGE_NAME=wUQ.PACKAGE_VERSION=void 0;wUQ.PACKAGE_VERSION="0.47.1";wUQ.PACKAGE_NAME="@opentelemetry/instrumentation-express"});var gUQ=R((vUQ)=>{Object.defineProperty(vUQ,"__esModule",{value:!0});vUQ.ExpressInstrumentation=void 0;var PUQ=MB(),O$=yA(),TUQ=bP(),SUQ=mP(),zW=RUQ(),kUQ=OUQ(),kK=NB(),WL0=dB(),fL=Un();class _UQ extends kK.InstrumentationBase{constructor(A={}){super(kUQ.PACKAGE_NAME,kUQ.PACKAGE_VERSION,A)}init(){return[new kK.InstrumentationNodeModuleDefinition("express",[">=4.0.0 <5"],(A)=>{let Q=A.Router;if((0,kK.isWrapped)(Q.route))this._unwrap(Q,"route");if(this._wrap(Q,"route",this._getRoutePatch()),(0,kK.isWrapped)(Q.use))this._unwrap(Q,"use");if(this._wrap(Q,"use",this._getRouterUsePatch()),(0,kK.isWrapped)(A.application.use))this._unwrap(A.application,"use");return this._wrap(A.application,"use",this._getAppUsePatch()),A},(A)=>{if(A===void 0)return;let Q=A.Router;this._unwrap(Q,"route"),this._unwrap(Q,"use"),this._unwrap(A.application,"use")})]}_getRoutePatch(){let A=this;return function(Q){return function(...Y){let J=Q.apply(this,Y),C=this.stack[this.stack.length-1];return A._applyPatch(C,(0,zW.getLayerPath)(Y)),J}}}_getRouterUsePatch(){let A=this;return function(Q){return function(...Y){let J=Q.apply(this,Y),C=this.stack[this.stack.length-1];return A._applyPatch(C,(0,zW.getLayerPath)(Y)),J}}}_getAppUsePatch(){let A=this;return function(Q){return function(...Y){let J=Q.apply(this,Y),C=this._router.stack[this._router.stack.length-1];return A._applyPatch(C,(0,zW.getLayerPath)(Y)),J}}}_applyPatch(A,Q){let B=this;if(A[fL.kLayerPatched]===!0)return;A[fL.kLayerPatched]=!0,this._wrap(A,"handle",(Y)=>{if(Y.length===4)return Y;let J=function(C,X){(0,zW.storeLayerPath)(C,Q);let G=C[fL._LAYERS_STORE_PROPERTY].filter((L)=>L!=="/"&&L!=="/*").join("").replace(/\/{2,}/g,"/"),W={[WL0.SEMATTRS_HTTP_ROUTE]:G.length>0?G:"/"},F=(0,zW.getLayerMetadata)(G,A,Q),Z=F.attributes[SUQ.AttributeNames.EXPRESS_TYPE],U=(0,PUQ.getRPCMetadata)(O$.context.active());if((U===null||U===void 0?void 0:U.type)===PUQ.RPCType.HTTP)U.route=G||"/";if((0,zW.isLayerIgnored)(F.name,Z,B.getConfig())){if(Z===TUQ.ExpressLayerType.MIDDLEWARE)C[fL._LAYERS_STORE_PROPERTY].pop();return Y.apply(this,arguments)}if(O$.trace.getSpan(O$.context.active())===void 0)return Y.apply(this,arguments);let $=B._getSpanName({request:C,layerType:Z,route:G},F.name),E=B.tracer.startSpan($,{attributes:Object.assign(W,F.attributes)}),{requestHook:K}=B.getConfig();if(K)(0,kK.safeExecuteInTheMiddle)(()=>K(E,{request:C,layerType:Z,route:G}),(L)=>{if(L)O$.diag.error("express instrumentation: request hook failed",L)},!0);let I=!1;if(F.attributes[SUQ.AttributeNames.EXPRESS_TYPE]!==TUQ.ExpressLayerType.MIDDLEWARE)E.end(),I=!0;let V=()=>{if(I===!1)I=!0,E.end()},H=Array.from(arguments),D=H.findIndex((L)=>typeof L==="function");if(D>=0)arguments[D]=function(){var L;let z=arguments[0],M=![void 0,null,"route","router"].includes(z);if(!I&&M){let[q,w]=(0,zW.asErrorAndMessage)(z);E.recordException(q),E.setStatus({code:O$.SpanStatusCode.ERROR,message:w})}if(I===!1)I=!0,(L=C.res)===null||L===void 0||L.removeListener("finish",V),E.end();if(!(C.route&&M))C[fL._LAYERS_STORE_PROPERTY].pop();return H[D].apply(this,arguments)};try{return Y.apply(this,arguments)}catch(L){let[z,M]=(0,zW.asErrorAndMessage)(L);throw E.recordException(z),E.setStatus({code:O$.SpanStatusCode.ERROR,message:M}),L}finally{if(!I)X.once("finish",V)}};for(let C in Y)Object.defineProperty(J,C,{get(){return Y[C]},set(X){Y[C]=X}});return J})}_getSpanName(A,Q){var B;let{spanNameHook:Y}=this.getConfig();if(!(Y instanceof Function))return Q;try{return(B=Y(A,Q))!==null&&B!==void 0?B:Q}catch(J){return O$.diag.error("express instrumentation: error calling span name rewrite hook",J),Q}}}vUQ.ExpressInstrumentation=_UQ});var xUQ=R((hUQ)=>{Object.defineProperty(hUQ,"__esModule",{value:!0})});var fUQ=R((NX)=>{var FL0=NX&&NX.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),uP=NX&&NX.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))FL0(Q,A,B)};Object.defineProperty(NX,"__esModule",{value:!0});uP(gUQ(),NX);uP(bP(),NX);uP(mP(),NX);uP(xUQ(),NX)});var CEQ=R((puY,JEQ)=>{var tUQ=py();JEQ.exports=LL0;var eUQ="\x00SLASH"+Math.random()+"\x00",AEQ="\x00OPEN"+Math.random()+"\x00",zn="\x00CLOSE"+Math.random()+"\x00",QEQ="\x00COMMA"+Math.random()+"\x00",BEQ="\x00PERIOD"+Math.random()+"\x00";function Mn(A){return parseInt(A,10)==A?parseInt(A,10):A.charCodeAt(0)}function DL0(A){return A.split("\\\\").join(eUQ).split("\\{").join(AEQ).split("\\}").join(zn).split("\\,").join(QEQ).split("\\.").join(BEQ)}function NL0(A){return A.split(eUQ).join("\\").split(AEQ).join("{").split(zn).join("}").split(QEQ).join(",").split(BEQ).join(".")}function YEQ(A){if(!A)return[""];var Q=[],B=tUQ("{","}",A);if(!B)return A.split(",");var{pre:Y,body:J,post:C}=B,X=Y.split(",");X[X.length-1]+="{"+J+"}";var G=YEQ(C);if(C.length)X[X.length-1]+=G.shift(),X.push.apply(X,G);return Q.push.apply(Q,X),Q}function LL0(A){if(!A)return[];if(A.substr(0,2)==="{}")A="\\{\\}"+A.substr(2);return bL(DL0(A),!0).map(NL0)}function qL0(A){return"{"+A+"}"}function ML0(A){return/^-?0\d/.test(A)}function zL0(A,Q){return A<=Q}function RL0(A,Q){return A>=Q}function bL(A,Q){var B=[],Y=tUQ("{","}",A);if(!Y)return[A];var J=Y.pre,C=Y.post.length?bL(Y.post,!1):[""];if(/\$$/.test(Y.pre))for(var X=0;X=0;if(!Z&&!U){if(Y.post.match(/,.*\}/))return A=Y.pre+"{"+Y.body+zn+Y.post,bL(A);return[A]}var $;if(Z)$=Y.body.split(/\.\./);else if($=YEQ(Y.body),$.length===1){if($=bL($[0],!1).map(qL0),$.length===1)return C.map(function(_){return Y.pre+$[0]+_})}var E;if(Z){var K=Mn($[0]),I=Mn($[1]),V=Math.max($[0].length,$[1].length),H=$.length==3?Math.abs(Mn($[2])):1,D=zL0,L=I0){var w=Array(q+1).join("0");if(M<0)N="-"+w+N.slice(1);else N=w+N}}E.push(N)}}else{E=[];for(var P=0;P<$.length;P++)E.push.apply(E,bL($[P],!1))}for(var P=0;P{Object.defineProperty(XEQ,"__esModule",{value:!0});XEQ.assertValidPattern=void 0;var wL0=65536,jL0=(A)=>{if(typeof A!=="string")throw TypeError("invalid pattern");if(A.length>wL0)throw TypeError("pattern is too long")};XEQ.assertValidPattern=jL0});var UEQ=R((ZEQ)=>{Object.defineProperty(ZEQ,"__esModule",{value:!0});ZEQ.parseClass=void 0;var OL0={"[:alnum:]":["\\p{L}\\p{Nl}\\p{Nd}",!0],"[:alpha:]":["\\p{L}\\p{Nl}",!0],"[:ascii:]":["\\x00-\\x7f",!1],"[:blank:]":["\\p{Zs}\\t",!0],"[:cntrl:]":["\\p{Cc}",!0],"[:digit:]":["\\p{Nd}",!0],"[:graph:]":["\\p{Z}\\p{C}",!0,!0],"[:lower:]":["\\p{Ll}",!0],"[:print:]":["\\p{C}",!0],"[:punct:]":["\\p{P}",!0],"[:space:]":["\\p{Z}\\t\\r\\n\\v\\f",!0],"[:upper:]":["\\p{Lu}",!0],"[:word:]":["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}",!0],"[:xdigit:]":["A-Fa-f0-9",!1]},mL=(A)=>A.replace(/[[\]\\-]/g,"\\$&"),PL0=(A)=>A.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),FEQ=(A)=>A.join(""),TL0=(A,Q)=>{let B=Q;if(A.charAt(B)!=="[")throw Error("not in a brace expression");let Y=[],J=[],C=B+1,X=!1,G=!1,W=!1,F=!1,Z=B,U="";A:while(CU)Y.push(mL(U)+"-"+mL(I));else if(I===U)Y.push(mL(I));U="",C++;continue}if(A.startsWith("-]",C+1)){Y.push(mL(I+"-")),C+=2;continue}if(A.startsWith("-",C+1)){U=I,C+=2;continue}Y.push(mL(I)),C++}if(Z{Object.defineProperty(EEQ,"__esModule",{value:!0});EEQ.unescape=void 0;var SL0=(A,{windowsPathsNoEscape:Q=!1}={})=>{return Q?A.replace(/\[([^\/\\])\]/g,"$1"):A.replace(/((?!\\).|^)\[([^\/\\])\]/g,"$1$2").replace(/\\([^\/])/g,"$1")};EEQ.unescape=SL0});var wn=R((DEQ)=>{Object.defineProperty(DEQ,"__esModule",{value:!0});DEQ.AST=void 0;var kL0=UEQ(),iP=pP(),_L0=new Set(["!","?","+","*","@"]),VEQ=(A)=>_L0.has(A),vL0="(?!(?:^|/)\\.\\.?(?:$|/))",nP="(?!\\.)",yL0=new Set(["[","."]),gL0=new Set(["..","."]),hL0=new Set("().*{}+?[]^$\\!"),xL0=(A)=>A.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),Rn="[^/]",IEQ=Rn+"*?",HEQ=Rn+"+?";class e9{type;#A;#Q;#B=!1;#Y=[];#J;#C;#W;#X=!1;#G;#Z;#U=!1;constructor(A,Q,B={}){if(this.type=A,A)this.#Q=!0;if(this.#J=Q,this.#A=this.#J?this.#J.#A:this,this.#G=this.#A===this?B:this.#A.#G,this.#W=this.#A===this?[]:this.#A.#W,A==="!"&&!this.#A.#X)this.#W.push(this);this.#C=this.#J?this.#J.#Y.length:0}get hasMagic(){if(this.#Q!==void 0)return this.#Q;for(let A of this.#Y){if(typeof A==="string")continue;if(A.type||A.hasMagic)return this.#Q=!0}return this.#Q}toString(){if(this.#Z!==void 0)return this.#Z;if(!this.type)return this.#Z=this.#Y.map((A)=>String(A)).join("");else return this.#Z=this.type+"("+this.#Y.map((A)=>String(A)).join("|")+")"}#F(){if(this!==this.#A)throw Error("should only call on root");if(this.#X)return this;this.toString(),this.#X=!0;let A;while(A=this.#W.pop()){if(A.type!=="!")continue;let Q=A,B=Q.#J;while(B){for(let Y=Q.#C+1;!B.type&&Ytypeof Q==="string"?Q:Q.toJSON()):[this.type,...this.#Y.map((Q)=>Q.toJSON())];if(this.isStart()&&!this.type)A.unshift([]);if(this.isEnd()&&(this===this.#A||this.#A.#X&&this.#J?.type==="!"))A.push({});return A}isStart(){if(this.#A===this)return!0;if(!this.#J?.isStart())return!1;if(this.#C===0)return!0;let A=this.#J;for(let Q=0;Q{let[E,K,I,V]=typeof $==="string"?e9.#I($,this.#Q,G):$.toRegExpSource(A);return this.#Q=this.#Q||I,this.#B=this.#B||V,E}).join(""),F="";if(this.isStart()){if(typeof this.#Y[0]==="string"){if(!(this.#Y.length===1&&gL0.has(this.#Y[0]))){let E=yL0,K=Q&&E.has(W.charAt(0))||W.startsWith("\\.")&&E.has(W.charAt(2))||W.startsWith("\\.\\.")&&E.has(W.charAt(4)),I=!Q&&!A&&E.has(W.charAt(0));F=K?vL0:I?nP:""}}}let Z="";if(this.isEnd()&&this.#A.#X&&this.#J?.type==="!")Z="(?:$|\\/)";return[F+W+Z,(0,iP.unescape)(W),this.#Q=!!this.#Q,this.#B]}let B=this.type==="*"||this.type==="+",Y=this.type==="!"?"(?:(?!(?:":"(?:",J=this.#V(Q);if(this.isStart()&&this.isEnd()&&!J&&this.type!=="!"){let G=this.toString();return this.#Y=[G],this.type=null,this.#Q=void 0,[G,(0,iP.unescape)(this.toString()),!1,!1]}let C=!B||A||Q||!nP?"":this.#V(!0);if(C===J)C="";if(C)J=`(?:${J})(?:${C})*?`;let X="";if(this.type==="!"&&this.#U)X=(this.isStart()&&!Q?nP:"")+HEQ;else{let G=this.type==="!"?"))"+(this.isStart()&&!Q&&!A?nP:"")+IEQ+")":this.type==="@"?")":this.type==="?"?")?":this.type==="+"&&C?")":this.type==="*"&&C?")?":`)${this.type}`;X=Y+J+G}return[X,(0,iP.unescape)(J),this.#Q=!!this.#Q,this.#B]}#V(A){return this.#Y.map((Q)=>{if(typeof Q==="string")throw Error("string type in extglob ast??");let[B,Y,J,C]=Q.toRegExpSource(A);return this.#B=this.#B||C,B}).filter((Q)=>!(this.isStart()&&this.isEnd())||!!Q).join("|")}static#I(A,Q,B=!1){let Y=!1,J="",C=!1;for(let X=0;X{Object.defineProperty(LEQ,"__esModule",{value:!0});LEQ.escape=void 0;var fL0=(A,{windowsPathsNoEscape:Q=!1}={})=>{return Q?A.replace(/[?*()[\]]/g,"[$&]"):A.replace(/[?*()[\]\\]/g,"\\$&")};LEQ.escape=fL0});var PEQ=R((rA)=>{var bL0=rA&&rA.__importDefault||function(A){return A&&A.__esModule?A:{default:A}};Object.defineProperty(rA,"__esModule",{value:!0});rA.unescape=rA.escape=rA.AST=rA.Minimatch=rA.match=rA.makeRe=rA.braceExpand=rA.defaults=rA.filter=rA.GLOBSTAR=rA.sep=rA.minimatch=void 0;var mL0=bL0(CEQ()),sP=WEQ(),REQ=wn(),uL0=jn(),dL0=pP(),cL0=(A,Q,B={})=>{if((0,sP.assertValidPattern)(Q),!B.nocomment&&Q.charAt(0)==="#")return!1;return new _K(Q,B).match(A)};rA.minimatch=cL0;var lL0=/^\*+([^+@!?\*\[\(]*)$/,pL0=(A)=>(Q)=>!Q.startsWith(".")&&Q.endsWith(A),iL0=(A)=>(Q)=>Q.endsWith(A),nL0=(A)=>{return A=A.toLowerCase(),(Q)=>!Q.startsWith(".")&&Q.toLowerCase().endsWith(A)},sL0=(A)=>{return A=A.toLowerCase(),(Q)=>Q.toLowerCase().endsWith(A)},rL0=/^\*+\.\*+$/,aL0=(A)=>!A.startsWith(".")&&A.includes("."),oL0=(A)=>A!=="."&&A!==".."&&A.includes("."),tL0=/^\.\*+$/,eL0=(A)=>A!=="."&&A!==".."&&A.startsWith("."),Aq0=/^\*+$/,Qq0=(A)=>A.length!==0&&!A.startsWith("."),Bq0=(A)=>A.length!==0&&A!=="."&&A!=="..",Yq0=/^\?+([^+@!?\*\[\(]*)?$/,Jq0=([A,Q=""])=>{let B=wEQ([A]);if(!Q)return B;return Q=Q.toLowerCase(),(Y)=>B(Y)&&Y.toLowerCase().endsWith(Q)},Cq0=([A,Q=""])=>{let B=jEQ([A]);if(!Q)return B;return Q=Q.toLowerCase(),(Y)=>B(Y)&&Y.toLowerCase().endsWith(Q)},Xq0=([A,Q=""])=>{let B=jEQ([A]);return!Q?B:(Y)=>B(Y)&&Y.endsWith(Q)},Gq0=([A,Q=""])=>{let B=wEQ([A]);return!Q?B:(Y)=>B(Y)&&Y.endsWith(Q)},wEQ=([A])=>{let Q=A.length;return(B)=>B.length===Q&&!B.startsWith(".")},jEQ=([A])=>{let Q=A.length;return(B)=>B.length===Q&&B!=="."&&B!==".."},OEQ=typeof process==="object"&&process?typeof process.env==="object"&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:"posix",MEQ={win32:{sep:"\\"},posix:{sep:"/"}};rA.sep=OEQ==="win32"?MEQ.win32.sep:MEQ.posix.sep;rA.minimatch.sep=rA.sep;rA.GLOBSTAR=Symbol("globstar **");rA.minimatch.GLOBSTAR=rA.GLOBSTAR;var Wq0="[^/]",Fq0=Wq0+"*?",Zq0="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",$q0="(?:(?!(?:\\/|^)\\.).)*?",Uq0=(A,Q={})=>(B)=>(0,rA.minimatch)(B,A,Q);rA.filter=Uq0;rA.minimatch.filter=rA.filter;var t5=(A,Q={})=>Object.assign({},A,Q),Eq0=(A)=>{if(!A||typeof A!=="object"||!Object.keys(A).length)return rA.minimatch;let Q=rA.minimatch;return Object.assign((Y,J,C={})=>Q(Y,J,t5(A,C)),{Minimatch:class extends Q.Minimatch{constructor(J,C={}){super(J,t5(A,C))}static defaults(J){return Q.defaults(t5(A,J)).Minimatch}},AST:class extends Q.AST{constructor(J,C,X={}){super(J,C,t5(A,X))}static fromGlob(J,C={}){return Q.AST.fromGlob(J,t5(A,C))}},unescape:(Y,J={})=>Q.unescape(Y,t5(A,J)),escape:(Y,J={})=>Q.escape(Y,t5(A,J)),filter:(Y,J={})=>Q.filter(Y,t5(A,J)),defaults:(Y)=>Q.defaults(t5(A,Y)),makeRe:(Y,J={})=>Q.makeRe(Y,t5(A,J)),braceExpand:(Y,J={})=>Q.braceExpand(Y,t5(A,J)),match:(Y,J,C={})=>Q.match(Y,J,t5(A,C)),sep:Q.sep,GLOBSTAR:rA.GLOBSTAR})};rA.defaults=Eq0;rA.minimatch.defaults=rA.defaults;var Kq0=(A,Q={})=>{if((0,sP.assertValidPattern)(A),Q.nobrace||!/\{(?:(?!\{).)*\}/.test(A))return[A];return(0,mL0.default)(A)};rA.braceExpand=Kq0;rA.minimatch.braceExpand=rA.braceExpand;var Vq0=(A,Q={})=>new _K(A,Q).makeRe();rA.makeRe=Vq0;rA.minimatch.makeRe=rA.makeRe;var Iq0=(A,Q,B={})=>{let Y=new _K(Q,B);if(A=A.filter((J)=>Y.match(J)),Y.options.nonull&&!A.length)A.push(Q);return A};rA.match=Iq0;rA.minimatch.match=rA.match;var zEQ=/[?*]|[+@!]\(.*?\)|\[|\]/,Hq0=(A)=>A.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&");class _K{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;regexp;constructor(A,Q={}){if((0,sP.assertValidPattern)(A),Q=Q||{},this.options=Q,this.pattern=A,this.platform=Q.platform||OEQ,this.isWindows=this.platform==="win32",this.windowsPathsNoEscape=!!Q.windowsPathsNoEscape||Q.allowWindowsEscape===!1,this.windowsPathsNoEscape)this.pattern=this.pattern.replace(/\\/g,"/");this.preserveMultipleSlashes=!!Q.preserveMultipleSlashes,this.regexp=null,this.negate=!1,this.nonegate=!!Q.nonegate,this.comment=!1,this.empty=!1,this.partial=!!Q.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=Q.windowsNoMagicRoot!==void 0?Q.windowsNoMagicRoot:!!(this.isWindows&&this.nocase),this.globSet=[],this.globParts=[],this.set=[],this.make()}hasMagic(){if(this.options.magicalBraces&&this.set.length>1)return!0;for(let A of this.set)for(let Q of A)if(typeof Q!=="string")return!0;return!1}debug(...A){}make(){let A=this.pattern,Q=this.options;if(!Q.nocomment&&A.charAt(0)==="#"){this.comment=!0;return}if(!A){this.empty=!0;return}if(this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],Q.debug)this.debug=(...J)=>console.error(...J);this.debug(this.pattern,this.globSet);let B=this.globSet.map((J)=>this.slashSplit(J));this.globParts=this.preprocess(B),this.debug(this.pattern,this.globParts);let Y=this.globParts.map((J,C,X)=>{if(this.isWindows&&this.windowsNoMagicRoot){let G=J[0]===""&&J[1]===""&&(J[2]==="?"||!zEQ.test(J[2]))&&!zEQ.test(J[3]),W=/^[a-z]:/i.test(J[0]);if(G)return[...J.slice(0,4),...J.slice(4).map((F)=>this.parse(F))];else if(W)return[J[0],...J.slice(1).map((F)=>this.parse(F))]}return J.map((G)=>this.parse(G))});if(this.debug(this.pattern,Y),this.set=Y.filter((J)=>J.indexOf(!1)===-1),this.isWindows)for(let J=0;J=2)A=this.firstPhasePreProcess(A),A=this.secondPhasePreProcess(A);else if(Q>=1)A=this.levelOneOptimize(A);else A=this.adjascentGlobstarOptimize(A);return A}adjascentGlobstarOptimize(A){return A.map((Q)=>{let B=-1;while((B=Q.indexOf("**",B+1))!==-1){let Y=B;while(Q[Y+1]==="**")Y++;if(Y!==B)Q.splice(B,Y-B)}return Q})}levelOneOptimize(A){return A.map((Q)=>{return Q=Q.reduce((B,Y)=>{let J=B[B.length-1];if(Y==="**"&&J==="**")return B;if(Y===".."){if(J&&J!==".."&&J!=="."&&J!=="**")return B.pop(),B}return B.push(Y),B},[]),Q.length===0?[""]:Q})}levelTwoFileOptimize(A){if(!Array.isArray(A))A=this.slashSplit(A);let Q=!1;do{if(Q=!1,!this.preserveMultipleSlashes){for(let Y=1;YY)B.splice(Y+1,C-Y);let X=B[Y+1],G=B[Y+2],W=B[Y+3];if(X!=="..")continue;if(!G||G==="."||G===".."||!W||W==="."||W==="..")continue;Q=!0,B.splice(Y,1);let F=B.slice(0);F[Y]="**",A.push(F),Y--}if(!this.preserveMultipleSlashes){for(let C=1;CQ.length)}partsMatch(A,Q,B=!1){let Y=0,J=0,C=[],X="";while(YD)Q=Q.slice(L);else if(D>L)A=A.slice(D)}}}let{optimizationLevel:J=1}=this.options;if(J>=2)A=this.levelTwoFileOptimize(A);this.debug("matchOne",this,{file:A,pattern:Q}),this.debug("matchOne",A.length,Q.length);for(var C=0,X=0,G=A.length,W=Q.length;C>> no match, partial?`,A,U,Q,$),U===G)return!0}return!1}let K;if(typeof F==="string")K=Z===F,this.debug("string match",F,Z,K);else K=F.test(Z),this.debug("pattern match",F,Z,K);if(!K)return!1}if(C===G&&X===W)return!0;else if(C===G)return B;else if(X===W)return C===G-1&&A[C]==="";else throw Error("wtf?")}braceExpand(){return(0,rA.braceExpand)(this.pattern,this.options)}parse(A){(0,sP.assertValidPattern)(A);let Q=this.options;if(A==="**")return rA.GLOBSTAR;if(A==="")return"";let B,Y=null;if(B=A.match(Aq0))Y=Q.dot?Bq0:Qq0;else if(B=A.match(lL0))Y=(Q.nocase?Q.dot?sL0:nL0:Q.dot?iL0:pL0)(B[1]);else if(B=A.match(Yq0))Y=(Q.nocase?Q.dot?Cq0:Jq0:Q.dot?Xq0:Gq0)(B);else if(B=A.match(rL0))Y=Q.dot?oL0:aL0;else if(B=A.match(tL0))Y=eL0;let J=REQ.AST.fromGlob(A,this.options).toMMPattern();if(Y&&typeof J==="object")Reflect.defineProperty(J,"test",{value:Y});return J}makeRe(){if(this.regexp||this.regexp===!1)return this.regexp;let A=this.set;if(!A.length)return this.regexp=!1,this.regexp;let Q=this.options,B=Q.noglobstar?Fq0:Q.dot?Zq0:$q0,Y=new Set(Q.nocase?["i"]:[]),J=A.map((G)=>{let W=G.map((F)=>{if(F instanceof RegExp)for(let Z of F.flags.split(""))Y.add(Z);return typeof F==="string"?Hq0(F):F===rA.GLOBSTAR?rA.GLOBSTAR:F._src});return W.forEach((F,Z)=>{let U=W[Z+1],$=W[Z-1];if(F!==rA.GLOBSTAR||$===rA.GLOBSTAR)return;if($===void 0)if(U!==void 0&&U!==rA.GLOBSTAR)W[Z+1]="(?:\\/|"+B+"\\/)?"+U;else W[Z]=B;else if(U===void 0)W[Z-1]=$+"(?:\\/|"+B+")?";else if(U!==rA.GLOBSTAR)W[Z-1]=$+"(?:\\/|\\/"+B+"\\/)"+U,W[Z+1]=rA.GLOBSTAR}),W.filter((F)=>F!==rA.GLOBSTAR).join("/")}).join("|"),[C,X]=A.length>1?["(?:",")"]:["",""];if(J="^"+C+J+X+"$",this.negate)J="^(?!"+J+").+$";try{this.regexp=new RegExp(J,[...Y].join(""))}catch(G){this.regexp=!1}return this.regexp}slashSplit(A){if(this.preserveMultipleSlashes)return A.split("/");else if(this.isWindows&&/^\/\/[^\/]+/.test(A))return["",...A.split(/\/+/)];else return A.split(/\/+/)}match(A,Q=this.partial){if(this.debug("match",A,this.pattern),this.comment)return!1;if(this.empty)return A==="";if(A==="/"&&Q)return!0;let B=this.options;if(this.isWindows)A=A.split("\\").join("/");let Y=this.slashSplit(A);this.debug(this.pattern,"split",Y);let J=this.set;this.debug(this.pattern,"set",J);let C=Y[Y.length-1];if(!C)for(let X=Y.length-2;!C&&X>=0;X--)C=Y[X];for(let X=0;X{Object.defineProperty(nEQ,"__esModule",{value:!0});nEQ.SpanNames=nEQ.TokenKind=nEQ.AllowedOperationTypes=void 0;var _q0;(function(A){A.QUERY="query",A.MUTATION="mutation",A.SUBSCRIPTION="subscription"})(_q0=nEQ.AllowedOperationTypes||(nEQ.AllowedOperationTypes={}));var vq0;(function(A){A.SOF="",A.EOF="",A.BANG="!",A.DOLLAR="$",A.AMP="&",A.PAREN_L="(",A.PAREN_R=")",A.SPREAD="...",A.COLON=":",A.EQUALS="=",A.AT="@",A.BRACKET_L="[",A.BRACKET_R="]",A.BRACE_L="{",A.PIPE="|",A.BRACE_R="}",A.NAME="Name",A.INT="Int",A.FLOAT="Float",A.STRING="String",A.BLOCK_STRING="BlockString",A.COMMENT="Comment"})(vq0=nEQ.TokenKind||(nEQ.TokenKind={}));var yq0;(function(A){A.EXECUTE="graphql.execute",A.PARSE="graphql.parse",A.RESOLVE="graphql.resolve",A.VALIDATE="graphql.validate",A.SCHEMA_VALIDATE="graphql.validateSchema",A.SCHEMA_PARSE="graphql.parseSchema"})(yq0=nEQ.SpanNames||(nEQ.SpanNames={}))});var gn=R((sEQ)=>{Object.defineProperty(sEQ,"__esModule",{value:!0});sEQ.AttributeNames=void 0;var gq0;(function(A){A.SOURCE="graphql.source",A.FIELD_NAME="graphql.field.name",A.FIELD_PATH="graphql.field.path",A.FIELD_TYPE="graphql.field.type",A.OPERATION_TYPE="graphql.operation.type",A.OPERATION_NAME="graphql.operation.name",A.VARIABLES="graphql.variables.",A.ERROR_VALIDATION_NAME="graphql.validation.error"})(gq0=sEQ.AttributeNames||(sEQ.AttributeNames={}))});var AT=R((rEQ)=>{Object.defineProperty(rEQ,"__esModule",{value:!0});rEQ.OTEL_GRAPHQL_DATA_SYMBOL=rEQ.OTEL_PATCHED_SYMBOL=void 0;rEQ.OTEL_PATCHED_SYMBOL=Symbol.for("opentelemetry.patched");rEQ.OTEL_GRAPHQL_DATA_SYMBOL=Symbol.for("opentelemetry.graphql_data")});var eEQ=R((oEQ)=>{Object.defineProperty(oEQ,"__esModule",{value:!0});oEQ.OPERATION_NOT_SUPPORTED=void 0;var HdY=AT();oEQ.OPERATION_NOT_SUPPORTED="Operation$operationName$not supported"});var KKQ=R(($KQ)=>{Object.defineProperty($KQ,"__esModule",{value:!0});$KQ.wrapFieldResolver=$KQ.wrapFields=$KQ.getSourceFromLocation=$KQ.getOperation=$KQ.endSpan=$KQ.addSpanSource=$KQ.addInputVariableAttributes=$KQ.isPromise=void 0;var yK=yA(),PW=vn(),vK=gn(),NG=AT(),AKQ=Object.values(PW.AllowedOperationTypes),xq0=(A)=>{return typeof(A===null||A===void 0?void 0:A.then)==="function"};$KQ.isPromise=xq0;var fq0=(A)=>{return typeof A=="object"&&A!==null};function hn(A,Q,B){if(Array.isArray(B))B.forEach((Y,J)=>{hn(A,`${Q}.${J}`,Y)});else if(B instanceof Object)Object.entries(B).forEach(([Y,J])=>{hn(A,`${Q}.${Y}`,J)});else A.setAttribute(`${vK.AttributeNames.VARIABLES}${String(Q)}`,B)}function bq0(A,Q){Object.entries(Q).forEach(([B,Y])=>{hn(A,B,Y)})}$KQ.addInputVariableAttributes=bq0;function JKQ(A,Q,B,Y,J){let C=WKQ(Q,B,Y,J);A.setAttribute(vK.AttributeNames.SOURCE,C)}$KQ.addSpanSource=JKQ;function mq0(A,Q,B,Y,J){let C=CKQ(B,J),X=!1;if(!C){X=!0;let G=XKQ(B,J);C={parent:G,span:uq0(A,Q,B,Y,J,G.span),error:null},lq0(B,J,C)}return{spanAdded:X,field:C}}function uq0(A,Q,B,Y,J,C){var X,G;let W={[vK.AttributeNames.FIELD_NAME]:Y.fieldName,[vK.AttributeNames.FIELD_PATH]:J.join("."),[vK.AttributeNames.FIELD_TYPE]:Y.returnType.toString()},F=A.startSpan(`${PW.SpanNames.RESOLVE} ${W[vK.AttributeNames.FIELD_PATH]}`,{attributes:W},C?yK.trace.setSpan(yK.context.active(),C):void 0),Z=B[NG.OTEL_GRAPHQL_DATA_SYMBOL].source,U=Y.fieldNodes.find(($)=>$.kind==="Field");if(U)JKQ(F,Z.loc,Q().allowValues,(X=U.loc)===null||X===void 0?void 0:X.start,(G=U.loc)===null||G===void 0?void 0:G.end);return F}function dq0(A,Q){if(Q)A.recordException(Q);A.end()}$KQ.endSpan=dq0;function cq0(A,Q){if(!A||!Array.isArray(A.definitions))return;if(Q)return A.definitions.filter((B)=>{var Y;return AKQ.indexOf((Y=B)===null||Y===void 0?void 0:Y.operation)!==-1}).find((B)=>{var Y,J;return Q===((J=(Y=B)===null||Y===void 0?void 0:Y.name)===null||J===void 0?void 0:J.value)});else return A.definitions.find((B)=>{var Y;return AKQ.indexOf((Y=B)===null||Y===void 0?void 0:Y.operation)!==-1})}$KQ.getOperation=cq0;function lq0(A,Q,B){return A[NG.OTEL_GRAPHQL_DATA_SYMBOL].fields[Q.join(".")]=B}function CKQ(A,Q){return A[NG.OTEL_GRAPHQL_DATA_SYMBOL].fields[Q.join(".")]}function XKQ(A,Q){for(let B=Q.length-1;B>0;B--){let Y=CKQ(A,Q.slice(0,B));if(Y)return Y}return{span:A[NG.OTEL_GRAPHQL_DATA_SYMBOL].span}}function pq0(A,Q){let B=[],Y=Q;while(Y){let J=Y.key;if(A&&typeof J==="number")J="*";B.push(String(J)),Y=Y.prev}return B.reverse()}function iq0(A){return GKQ(` -`,A)}function QKQ(A){return GKQ(" ",A)}function GKQ(A,Q){let B="";for(let Y=0;YW){F=F.next,Z=F===null||F===void 0?void 0:F.line;continue}let U=F.value||F.kind,$="";if(!Q&&nq0.indexOf(F.kind)>=0)U="*";if(F.kind===PW.TokenKind.STRING)U=`"${U}"`;if(F.kind===PW.TokenKind.EOF)U="";if(F.line>Z)X+=iq0(F.line-Z),Z=F.line,$=QKQ(F.column-1);else if(F.line===((J=F.prev)===null||J===void 0?void 0:J.line))$=QKQ(F.start-(((C=F.prev)===null||C===void 0?void 0:C.end)||0));if(X+=$+U,F)F=F.next}}return X}$KQ.getSourceFromLocation=WKQ;function FKQ(A,Q,B){if(!A||typeof A.getFields!=="function"||A[NG.OTEL_PATCHED_SYMBOL])return;let Y=A.getFields();A[NG.OTEL_PATCHED_SYMBOL]=!0,Object.keys(Y).forEach((J)=>{let C=Y[J];if(!C)return;if(C.resolve)C.resolve=ZKQ(Q,B,C.resolve);if(C.type){let X=C.type;while(X.ofType)X=X.ofType;FKQ(X,Q,B)}})}$KQ.wrapFields=FKQ;var BKQ=(A,Q,B)=>{if(!B)return;A.recordException(Q),A.setStatus({code:yK.SpanStatusCode.ERROR,message:Q.message}),A.end()},YKQ=(A,Q)=>{if(!Q)return;A.end()};function ZKQ(A,Q,B,Y=!1){if(J[NG.OTEL_PATCHED_SYMBOL]||typeof B!=="function")return B;function J(C,X,G,W){if(!B)return;let F=Q();if(F.ignoreTrivialResolveSpans&&Y&&(fq0(C)||typeof C==="function")){if(typeof C[W.fieldName]!=="function")return B.call(this,C,X,G,W)}if(!G[NG.OTEL_GRAPHQL_DATA_SYMBOL])return B.call(this,C,X,G,W);let Z=pq0(F.mergeItems,W&&W.path),U=Z.filter((K)=>typeof K==="string").length,$,E=!1;if(F.depth>=0&&F.depth{try{let K=B.call(this,C,X,G,W);if($KQ.isPromise(K))return K.then((I)=>{return YKQ($.span,E),I},(I)=>{throw BKQ($.span,I,E),I});else return YKQ($.span,E),K}catch(K){throw BKQ($.span,K,E),K}})}return J[NG.OTEL_PATCHED_SYMBOL]=!0,J}$KQ.wrapFieldResolver=ZKQ});var HKQ=R((VKQ)=>{Object.defineProperty(VKQ,"__esModule",{value:!0});VKQ.PACKAGE_NAME=VKQ.PACKAGE_VERSION=void 0;VKQ.PACKAGE_VERSION="0.47.1";VKQ.PACKAGE_NAME="@opentelemetry/instrumentation-graphql"});var zKQ=R((qKQ)=>{Object.defineProperty(qKQ,"__esModule",{value:!0});qKQ.GraphQLInstrumentation=void 0;var LG=yA(),e5=NB(),pL=vn(),QT=gn(),xn=AT(),QM0=eEQ(),hJ=KKQ(),DKQ=HKQ(),NKQ={mergeItems:!1,depth:-1,allowValues:!1,ignoreResolveSpans:!1},BT=[">=14.0.0 <17"];class LKQ extends e5.InstrumentationBase{constructor(A={}){super(DKQ.PACKAGE_NAME,DKQ.PACKAGE_VERSION,Object.assign(Object.assign({},NKQ),A))}setConfig(A={}){super.setConfig(Object.assign(Object.assign({},NKQ),A))}init(){let A=new e5.InstrumentationNodeModuleDefinition("graphql",BT);return A.files.push(this._addPatchingExecute()),A.files.push(this._addPatchingParser()),A.files.push(this._addPatchingValidate()),A}_addPatchingExecute(){return new e5.InstrumentationNodeModuleFile("graphql/execution/execute.js",BT,(A)=>{if((0,e5.isWrapped)(A.execute))this._unwrap(A,"execute");return this._wrap(A,"execute",this._patchExecute(A.defaultFieldResolver)),A},(A)=>{if(A)this._unwrap(A,"execute")})}_addPatchingParser(){return new e5.InstrumentationNodeModuleFile("graphql/language/parser.js",BT,(A)=>{if((0,e5.isWrapped)(A.parse))this._unwrap(A,"parse");return this._wrap(A,"parse",this._patchParse()),A},(A)=>{if(A)this._unwrap(A,"parse")})}_addPatchingValidate(){return new e5.InstrumentationNodeModuleFile("graphql/validation/validate.js",BT,(A)=>{if((0,e5.isWrapped)(A.validate))this._unwrap(A,"validate");return this._wrap(A,"validate",this._patchValidate()),A},(A)=>{if(A)this._unwrap(A,"validate")})}_patchExecute(A){let Q=this;return function(Y){return function(){let C;if(arguments.length>=2){let W=arguments;C=Q._wrapExecuteArgs(W[0],W[1],W[2],W[3],W[4],W[5],W[6],W[7],A)}else{let W=arguments[0];C=Q._wrapExecuteArgs(W.schema,W.document,W.rootValue,W.contextValue,W.variableValues,W.operationName,W.fieldResolver,W.typeResolver,A)}let X=(0,hJ.getOperation)(C.document,C.operationName),G=Q._createExecuteSpan(X,C);return C.contextValue[xn.OTEL_GRAPHQL_DATA_SYMBOL]={source:C.document?C.document||C.document[xn.OTEL_GRAPHQL_DATA_SYMBOL]:void 0,span:G,fields:{}},LG.context.with(LG.trace.setSpan(LG.context.active(),G),()=>{return(0,e5.safeExecuteInTheMiddle)(()=>{return Y.apply(this,[C])},(W,F)=>{Q._handleExecutionResult(G,W,F)})})}}}_handleExecutionResult(A,Q,B){let Y=this.getConfig();if(B===void 0||Q){(0,hJ.endSpan)(A,Q);return}if((0,hJ.isPromise)(B))B.then((J)=>{if(typeof Y.responseHook!=="function"){(0,hJ.endSpan)(A);return}this._executeResponseHook(A,J)},(J)=>{(0,hJ.endSpan)(A,J)});else{if(typeof Y.responseHook!=="function"){(0,hJ.endSpan)(A);return}this._executeResponseHook(A,B)}}_executeResponseHook(A,Q){let{responseHook:B}=this.getConfig();if(!B)return;(0,e5.safeExecuteInTheMiddle)(()=>{B(A,Q)},(Y)=>{if(Y)this._diag.error("Error running response hook",Y);(0,hJ.endSpan)(A,void 0)},!0)}_patchParse(){let A=this;return function(B){return function(J,C){return A._parse(this,B,J,C)}}}_patchValidate(){let A=this;return function(B){return function(J,C,X,G,W){return A._validate(this,B,J,C,X,W,G)}}}_parse(A,Q,B,Y){let J=this.getConfig(),C=this.tracer.startSpan(pL.SpanNames.PARSE);return LG.context.with(LG.trace.setSpan(LG.context.active(),C),()=>{return(0,e5.safeExecuteInTheMiddle)(()=>{return Q.call(A,B,Y)},(X,G)=>{if(G){if(!(0,hJ.getOperation)(G))C.updateName(pL.SpanNames.SCHEMA_PARSE);else if(G.loc)(0,hJ.addSpanSource)(C,G.loc,J.allowValues)}(0,hJ.endSpan)(C,X)})})}_validate(A,Q,B,Y,J,C,X){let G=this.tracer.startSpan(pL.SpanNames.VALIDATE,{});return LG.context.with(LG.trace.setSpan(LG.context.active(),G),()=>{return(0,e5.safeExecuteInTheMiddle)(()=>{return Q.call(A,B,Y,J,X,C)},(W,F)=>{if(!Y.loc)G.updateName(pL.SpanNames.SCHEMA_VALIDATE);if(F&&F.length)G.recordException({name:QT.AttributeNames.ERROR_VALIDATION_NAME,message:JSON.stringify(F)});(0,hJ.endSpan)(G,W)})})}_createExecuteSpan(A,Q){var B;let Y=this.getConfig(),J=this.tracer.startSpan(pL.SpanNames.EXECUTE,{});if(A){let{operation:C,name:X}=A;J.setAttribute(QT.AttributeNames.OPERATION_TYPE,C);let G=X===null||X===void 0?void 0:X.value;if(G)J.setAttribute(QT.AttributeNames.OPERATION_NAME,G),J.updateName(`${C} ${G}`);else J.updateName(C)}else{let C=" ";if(Q.operationName)C=` "${Q.operationName}" `;C=QM0.OPERATION_NOT_SUPPORTED.replace("$operationName$",C),J.setAttribute(QT.AttributeNames.OPERATION_NAME,C)}if((B=Q.document)===null||B===void 0?void 0:B.loc)(0,hJ.addSpanSource)(J,Q.document.loc,Y.allowValues);if(Q.variableValues&&Y.allowValues)(0,hJ.addInputVariableAttributes)(J,Q.variableValues);return J}_wrapExecuteArgs(A,Q,B,Y,J,C,X,G,W){if(!Y)Y={};if(Y[xn.OTEL_GRAPHQL_DATA_SYMBOL]||this.getConfig().ignoreResolveSpans)return{schema:A,document:Q,rootValue:B,contextValue:Y,variableValues:J,operationName:C,fieldResolver:X,typeResolver:G};let F=X==null,Z=X!==null&&X!==void 0?X:W;if(X=(0,hJ.wrapFieldResolver)(this.tracer,()=>this.getConfig(),Z,F),A)(0,hJ.wrapFields)(A.getQueryType(),this.tracer,()=>this.getConfig()),(0,hJ.wrapFields)(A.getMutationType(),this.tracer,()=>this.getConfig());return{schema:A,document:Q,rootValue:B,contextValue:Y,variableValues:J,operationName:C,fieldResolver:X,typeResolver:G}}}qKQ.GraphQLInstrumentation=LKQ});var wKQ=R((RKQ)=>{Object.defineProperty(RKQ,"__esModule",{value:!0})});var OKQ=R((TW)=>{var BM0=TW&&TW.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),jKQ=TW&&TW.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))BM0(Q,A,B)};Object.defineProperty(TW,"__esModule",{value:!0});jKQ(zKQ(),TW);jKQ(wKQ(),TW)});var vKQ=R((kKQ)=>{Object.defineProperty(kKQ,"__esModule",{value:!0});kKQ.PACKAGE_NAME=kKQ.PACKAGE_VERSION=void 0;kKQ.PACKAGE_VERSION="0.7.1";kKQ.PACKAGE_NAME="@opentelemetry/instrumentation-kafkajs"});var hKQ=R((yKQ)=>{Object.defineProperty(yKQ,"__esModule",{value:!0});yKQ.bufferTextMapGetter=void 0;yKQ.bufferTextMapGetter={get(A,Q){var B;if(!A)return;let Y=Object.keys(A);for(let J of Y)if(J===Q||J.toLowerCase()===Q)return(B=A[J])===null||B===void 0?void 0:B.toString();return},keys(A){return A?Object.keys(A):[]}}});var dKQ=R((mKQ)=>{Object.defineProperty(mKQ,"__esModule",{value:!0});mKQ.KafkaJsInstrumentation=void 0;var IJ=yA(),SW=dB(),xKQ=vKQ(),fKQ=hKQ(),K1=NB();class bKQ extends K1.InstrumentationBase{constructor(A={}){super(xKQ.PACKAGE_NAME,xKQ.PACKAGE_VERSION,A)}init(){let A=(B)=>{var Y,J;if((0,K1.isWrapped)((Y=B===null||B===void 0?void 0:B.Kafka)===null||Y===void 0?void 0:Y.prototype.producer))this._unwrap(B.Kafka.prototype,"producer");if((0,K1.isWrapped)((J=B===null||B===void 0?void 0:B.Kafka)===null||J===void 0?void 0:J.prototype.consumer))this._unwrap(B.Kafka.prototype,"consumer")};return new K1.InstrumentationNodeModuleDefinition("kafkajs",[">=0.1.0 <3"],(B)=>{var Y,J;return A(B),this._wrap((Y=B===null||B===void 0?void 0:B.Kafka)===null||Y===void 0?void 0:Y.prototype,"producer",this._getProducerPatch()),this._wrap((J=B===null||B===void 0?void 0:B.Kafka)===null||J===void 0?void 0:J.prototype,"consumer",this._getConsumerPatch()),B},A)}_getConsumerPatch(){let A=this;return(Q)=>{return function(...Y){let J=Q.apply(this,Y);if((0,K1.isWrapped)(J.run))A._unwrap(J,"run");return A._wrap(J,"run",A._getConsumerRunPatch()),J}}}_getProducerPatch(){let A=this;return(Q)=>{return function(...Y){let J=Q.apply(this,Y);if((0,K1.isWrapped)(J.sendBatch))A._unwrap(J,"sendBatch");if(A._wrap(J,"sendBatch",A._getProducerSendBatchPatch()),(0,K1.isWrapped)(J.send))A._unwrap(J,"send");return A._wrap(J,"send",A._getProducerSendPatch()),J}}}_getConsumerRunPatch(){let A=this;return(Q)=>{return function(...Y){let J=Y[0];if(J===null||J===void 0?void 0:J.eachMessage){if((0,K1.isWrapped)(J.eachMessage))A._unwrap(J,"eachMessage");A._wrap(J,"eachMessage",A._getConsumerEachMessagePatch())}if(J===null||J===void 0?void 0:J.eachBatch){if((0,K1.isWrapped)(J.eachBatch))A._unwrap(J,"eachBatch");A._wrap(J,"eachBatch",A._getConsumerEachBatchPatch())}return Q.call(this,J)}}}_getConsumerEachMessagePatch(){let A=this;return(Q)=>{return function(...Y){let J=Y[0],C=IJ.propagation.extract(IJ.ROOT_CONTEXT,J.message.headers,fKQ.bufferTextMapGetter),X=A._startConsumerSpan(J.topic,J.message,SW.MESSAGINGOPERATIONVALUES_PROCESS,C),G=IJ.context.with(IJ.trace.setSpan(C,X),()=>{return Q.apply(this,Y)});return A._endSpansOnPromise([X],G)}}}_getConsumerEachBatchPatch(){return(A)=>{let Q=this;return function(...Y){let J=Y[0],C=Q._startConsumerSpan(J.batch.topic,void 0,SW.MESSAGINGOPERATIONVALUES_RECEIVE,IJ.ROOT_CONTEXT);return IJ.context.with(IJ.trace.setSpan(IJ.context.active(),C),()=>{let X=J.batch.messages.map((W)=>{var F;let Z=IJ.propagation.extract(IJ.ROOT_CONTEXT,W.headers,fKQ.bufferTextMapGetter),U=(F=IJ.trace.getSpan(Z))===null||F===void 0?void 0:F.spanContext(),$;if(U)$={context:U};return Q._startConsumerSpan(J.batch.topic,W,SW.MESSAGINGOPERATIONVALUES_PROCESS,void 0,$)}),G=A.apply(this,Y);return X.unshift(C),Q._endSpansOnPromise(X,G)})}}}_getProducerSendBatchPatch(){let A=this;return(Q)=>{return function(...Y){let X=(Y[0].topicMessages||[]).map((W)=>W.messages.map((F)=>A._startProducerSpan(W.topic,F))).reduce((W,F)=>W.concat(F),[]),G=Q.apply(this,Y);return A._endSpansOnPromise(X,G)}}}_getProducerSendPatch(){let A=this;return(Q)=>{return function(...Y){let J=Y[0],C=J.messages.map((G)=>{return A._startProducerSpan(J.topic,G)}),X=Q.apply(this,Y);return A._endSpansOnPromise(C,X)}}}_endSpansOnPromise(A,Q){return Promise.resolve(Q).catch((B)=>{let Y;if(typeof B==="string")Y=B;else if(typeof B==="object"&&Object.prototype.hasOwnProperty.call(B,"message"))Y=B.message;throw A.forEach((J)=>J.setStatus({code:IJ.SpanStatusCode.ERROR,message:Y})),B}).finally(()=>{A.forEach((B)=>B.end())})}_startConsumerSpan(A,Q,B,Y,J){let C=this.tracer.startSpan(A,{kind:IJ.SpanKind.CONSUMER,attributes:{[SW.SEMATTRS_MESSAGING_SYSTEM]:"kafka",[SW.SEMATTRS_MESSAGING_DESTINATION]:A,[SW.SEMATTRS_MESSAGING_OPERATION]:B},links:J?[J]:[]},Y),{consumerHook:X}=this.getConfig();if(X&&Q)(0,K1.safeExecuteInTheMiddle)(()=>X(C,{topic:A,message:Q}),(G)=>{if(G)this._diag.error("consumerHook error",G)},!0);return C}_startProducerSpan(A,Q){var B;let Y=this.tracer.startSpan(A,{kind:IJ.SpanKind.PRODUCER,attributes:{[SW.SEMATTRS_MESSAGING_SYSTEM]:"kafka",[SW.SEMATTRS_MESSAGING_DESTINATION]:A}});Q.headers=(B=Q.headers)!==null&&B!==void 0?B:{},IJ.propagation.inject(IJ.trace.setSpan(IJ.context.active(),Y),Q.headers);let{producerHook:J}=this.getConfig();if(J)(0,K1.safeExecuteInTheMiddle)(()=>J(Y,{topic:A,message:Q}),(C)=>{if(C)this._diag.error("producerHook error",C)},!0);return Y}}mKQ.KafkaJsInstrumentation=bKQ});var lKQ=R((cKQ)=>{Object.defineProperty(cKQ,"__esModule",{value:!0})});var iKQ=R((kW)=>{var XM0=kW&&kW.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),pKQ=kW&&kW.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))XM0(Q,A,B)};Object.defineProperty(kW,"__esModule",{value:!0});pKQ(dKQ(),kW);pKQ(lKQ(),kW)});var oKQ=R((rKQ)=>{Object.defineProperty(rKQ,"__esModule",{value:!0});rKQ.PACKAGE_NAME=rKQ.PACKAGE_VERSION=void 0;rKQ.PACKAGE_VERSION="0.44.1";rKQ.PACKAGE_NAME="@opentelemetry/instrumentation-lru-memoizer"});var JVQ=R((BVQ)=>{Object.defineProperty(BVQ,"__esModule",{value:!0});BVQ.LruMemoizerInstrumentation=void 0;var tKQ=yA(),eKQ=NB(),AVQ=oKQ();class QVQ extends eKQ.InstrumentationBase{constructor(A={}){super(AVQ.PACKAGE_NAME,AVQ.PACKAGE_VERSION,A)}init(){return[new eKQ.InstrumentationNodeModuleDefinition("lru-memoizer",[">=1.3 <3"],(A)=>{let Q=function(){let B=A.apply(this,arguments);return function(){let Y=[...arguments],J=Y.pop(),C=typeof J==="function"?tKQ.context.bind(tKQ.context.active(),J):J;return Y.push(C),B.apply(this,Y)}};return Q.sync=A.sync,Q},void 0)]}}BVQ.LruMemoizerInstrumentation=QVQ});var CVQ=R((P$)=>{var FM0=P$&&P$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),ZM0=P$&&P$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))FM0(Q,A,B)};Object.defineProperty(P$,"__esModule",{value:!0});ZM0(JVQ(),P$)});var FVQ=R((WVQ)=>{Object.defineProperty(WVQ,"__esModule",{value:!0});WVQ.MongodbCommandType=void 0;var UM0;(function(A){A.CREATE_INDEXES="createIndexes",A.FIND_AND_MODIFY="findAndModify",A.IS_MASTER="isMaster",A.COUNT="count",A.AGGREGATE="aggregate",A.UNKNOWN="unknown"})(UM0=WVQ.MongodbCommandType||(WVQ.MongodbCommandType={}))});var UVQ=R((ZVQ)=>{Object.defineProperty(ZVQ,"__esModule",{value:!0});ZVQ.PACKAGE_NAME=ZVQ.PACKAGE_VERSION=void 0;ZVQ.PACKAGE_VERSION="0.52.0";ZVQ.PACKAGE_NAME="@opentelemetry/instrumentation-mongodb"});var HVQ=R((VVQ)=>{Object.defineProperty(VVQ,"__esModule",{value:!0});VVQ.MongoDBInstrumentation=void 0;var m0=yA(),D0=NB(),qG=dB(),_W=FVQ(),EVQ=UVQ(),KVQ={requireParentSpan:!0};class dn extends D0.InstrumentationBase{constructor(A={}){super(EVQ.PACKAGE_NAME,EVQ.PACKAGE_VERSION,Object.assign(Object.assign({},KVQ),A))}setConfig(A={}){super.setConfig(Object.assign(Object.assign({},KVQ),A))}_updateMetricInstruments(){this._connectionsUsage=this.meter.createUpDownCounter("db.client.connections.usage",{description:"The number of connections that are currently in state described by the state attribute.",unit:"{connection}"})}init(){let{v3PatchConnection:A,v3UnpatchConnection:Q}=this._getV3ConnectionPatches(),{v4PatchConnect:B,v4UnpatchConnect:Y}=this._getV4ConnectPatches(),{v4PatchConnectionCallback:J,v4PatchConnectionPromise:C,v4UnpatchConnection:X}=this._getV4ConnectionPatches(),{v4PatchConnectionPool:G,v4UnpatchConnectionPool:W}=this._getV4ConnectionPoolPatches(),{v4PatchSessions:F,v4UnpatchSessions:Z}=this._getV4SessionsPatches();return[new D0.InstrumentationNodeModuleDefinition("mongodb",[">=3.3.0 <4"],void 0,void 0,[new D0.InstrumentationNodeModuleFile("mongodb/lib/core/wireprotocol/index.js",[">=3.3.0 <4"],A,Q)]),new D0.InstrumentationNodeModuleDefinition("mongodb",[">=4.0.0 <7"],void 0,void 0,[new D0.InstrumentationNodeModuleFile("mongodb/lib/cmap/connection.js",[">=4.0.0 <6.4"],J,X),new D0.InstrumentationNodeModuleFile("mongodb/lib/cmap/connection.js",[">=6.4.0 <7"],C,X),new D0.InstrumentationNodeModuleFile("mongodb/lib/cmap/connection_pool.js",[">=4.0.0 <6.4"],G,W),new D0.InstrumentationNodeModuleFile("mongodb/lib/cmap/connect.js",[">=4.0.0 <7"],B,Y),new D0.InstrumentationNodeModuleFile("mongodb/lib/sessions.js",[">=4.0.0 <7"],F,Z)])]}_getV3ConnectionPatches(){return{v3PatchConnection:(A)=>{if((0,D0.isWrapped)(A.insert))this._unwrap(A,"insert");if(this._wrap(A,"insert",this._getV3PatchOperation("insert")),(0,D0.isWrapped)(A.remove))this._unwrap(A,"remove");if(this._wrap(A,"remove",this._getV3PatchOperation("remove")),(0,D0.isWrapped)(A.update))this._unwrap(A,"update");if(this._wrap(A,"update",this._getV3PatchOperation("update")),(0,D0.isWrapped)(A.command))this._unwrap(A,"command");if(this._wrap(A,"command",this._getV3PatchCommand()),(0,D0.isWrapped)(A.query))this._unwrap(A,"query");if(this._wrap(A,"query",this._getV3PatchFind()),(0,D0.isWrapped)(A.getMore))this._unwrap(A,"getMore");return this._wrap(A,"getMore",this._getV3PatchCursor()),A},v3UnpatchConnection:(A)=>{if(A===void 0)return;this._unwrap(A,"insert"),this._unwrap(A,"remove"),this._unwrap(A,"update"),this._unwrap(A,"command"),this._unwrap(A,"query"),this._unwrap(A,"getMore")}}}_getV4SessionsPatches(){return{v4PatchSessions:(A)=>{if((0,D0.isWrapped)(A.acquire))this._unwrap(A,"acquire");if(this._wrap(A.ServerSessionPool.prototype,"acquire",this._getV4AcquireCommand()),(0,D0.isWrapped)(A.release))this._unwrap(A,"release");return this._wrap(A.ServerSessionPool.prototype,"release",this._getV4ReleaseCommand()),A},v4UnpatchSessions:(A)=>{if(A===void 0)return;if((0,D0.isWrapped)(A.acquire))this._unwrap(A,"acquire");if((0,D0.isWrapped)(A.release))this._unwrap(A,"release")}}}_getV4AcquireCommand(){let A=this;return(Q)=>{return function(){let Y=this.sessions.length,J=Q.call(this),C=this.sessions.length;if(Y===C)A._connectionsUsage.add(1,{state:"used","pool.name":A._poolName});else if(Y-1===C)A._connectionsUsage.add(-1,{state:"idle","pool.name":A._poolName}),A._connectionsUsage.add(1,{state:"used","pool.name":A._poolName});return J}}}_getV4ReleaseCommand(){let A=this;return(Q)=>{return function(Y){let J=Q.call(this,Y);return A._connectionsUsage.add(-1,{state:"used","pool.name":A._poolName}),A._connectionsUsage.add(1,{state:"idle","pool.name":A._poolName}),J}}}_getV4ConnectionPoolPatches(){return{v4PatchConnectionPool:(A)=>{let Q=A.ConnectionPool.prototype;if((0,D0.isWrapped)(Q.checkOut))this._unwrap(Q,"checkOut");return this._wrap(Q,"checkOut",this._getV4ConnectionPoolCheckOut()),A},v4UnpatchConnectionPool:(A)=>{if(A===void 0)return;this._unwrap(A.ConnectionPool.prototype,"checkOut")}}}_getV4ConnectPatches(){return{v4PatchConnect:(A)=>{if((0,D0.isWrapped)(A.connect))this._unwrap(A,"connect");return this._wrap(A,"connect",this._getV4ConnectCommand()),A},v4UnpatchConnect:(A)=>{if(A===void 0)return;this._unwrap(A,"connect")}}}_getV4ConnectionPoolCheckOut(){return(A)=>{return function(B){let Y=m0.context.bind(m0.context.active(),B);return A.call(this,Y)}}}_getV4ConnectCommand(){let A=this;return(Q)=>{return function(Y,J){if(Q.length===1){let X=Q.call(this,Y);if(X&&typeof X.then==="function")X.then(()=>A.setPoolName(Y),()=>{return});return X}let C=function(X,G){if(X||!G){J(X,G);return}A.setPoolName(Y),J(X,G)};return Q.call(this,Y,C)}}}_getV4ConnectionPatches(){return{v4PatchConnectionCallback:(A)=>{if((0,D0.isWrapped)(A.Connection.prototype.command))this._unwrap(A.Connection.prototype,"command");return this._wrap(A.Connection.prototype,"command",this._getV4PatchCommandCallback()),A},v4PatchConnectionPromise:(A)=>{if((0,D0.isWrapped)(A.Connection.prototype.command))this._unwrap(A.Connection.prototype,"command");return this._wrap(A.Connection.prototype,"command",this._getV4PatchCommandPromise()),A},v4UnpatchConnection:(A)=>{if(A===void 0)return;this._unwrap(A.Connection.prototype,"command")}}}_getV3PatchOperation(A){let Q=this;return(B)=>{return function(J,C,X,G,W){let F=m0.trace.getSpan(m0.context.active()),Z=Q._checkSkipInstrumentation(F),U=typeof G==="function"?G:W;if(Z||typeof U!=="function"||typeof X!=="object")if(typeof G==="function")return B.call(this,J,C,X,G);else return B.call(this,J,C,X,G,W);let $=Q.tracer.startSpan(`mongodb.${A}`,{kind:m0.SpanKind.CLIENT});Q._populateV3Attributes($,C,J,X[0],A);let E=Q._patchEnd($,U);if(typeof G==="function")return B.call(this,J,C,X,E);else return B.call(this,J,C,X,G,E)}}}_getV3PatchCommand(){let A=this;return(Q)=>{return function(Y,J,C,X,G){let W=m0.trace.getSpan(m0.context.active()),F=A._checkSkipInstrumentation(W),Z=typeof X==="function"?X:G;if(F||typeof Z!=="function"||typeof C!=="object")if(typeof X==="function")return Q.call(this,Y,J,C,X);else return Q.call(this,Y,J,C,X,G);let U=dn._getCommandType(C),$=U===_W.MongodbCommandType.UNKNOWN?"command":U,E=A.tracer.startSpan(`mongodb.${$}`,{kind:m0.SpanKind.CLIENT}),K=U===_W.MongodbCommandType.UNKNOWN?void 0:U;A._populateV3Attributes(E,J,Y,C,K);let I=A._patchEnd(E,Z);if(typeof X==="function")return Q.call(this,Y,J,C,I);else return Q.call(this,Y,J,C,X,I)}}}_getV4PatchCommandCallback(){let A=this;return(Q)=>{return function(Y,J,C,X){let G=m0.trace.getSpan(m0.context.active()),W=A._checkSkipInstrumentation(G),F=X,Z=Object.keys(J)[0];if(typeof J!=="object"||J.ismaster||J.hello)return Q.call(this,Y,J,C,X);let U=void 0;if(!W)U=A.tracer.startSpan(`mongodb.${Z}`,{kind:m0.SpanKind.CLIENT}),A._populateV4Attributes(U,this,Y,J,Z);let $=A._patchEnd(U,F,this.id,Z);return Q.call(this,Y,J,C,$)}}}_getV4PatchCommandPromise(){let A=this;return(Q)=>{return function(...Y){let[J,C]=Y,X=m0.trace.getSpan(m0.context.active()),G=A._checkSkipInstrumentation(X),W=Object.keys(C)[0],F=()=>{return};if(typeof C!=="object"||C.ismaster||C.hello)return Q.apply(this,Y);let Z=void 0;if(!G)Z=A.tracer.startSpan(`mongodb.${W}`,{kind:m0.SpanKind.CLIENT}),A._populateV4Attributes(Z,this,J,C,W);let U=A._patchEnd(Z,F,this.id,W),$=Q.apply(this,Y);return $.then((E)=>U(null,E),(E)=>U(E)),$}}}_getV3PatchFind(){let A=this;return(Q)=>{return function(Y,J,C,X,G,W){let F=m0.trace.getSpan(m0.context.active()),Z=A._checkSkipInstrumentation(F),U=typeof G==="function"?G:W;if(Z||typeof U!=="function"||typeof C!=="object")if(typeof G==="function")return Q.call(this,Y,J,C,X,G);else return Q.call(this,Y,J,C,X,G,W);let $=A.tracer.startSpan("mongodb.find",{kind:m0.SpanKind.CLIENT});A._populateV3Attributes($,J,Y,C,"find");let E=A._patchEnd($,U);if(typeof G==="function")return Q.call(this,Y,J,C,X,E);else return Q.call(this,Y,J,C,X,G,E)}}}_getV3PatchCursor(){let A=this;return(Q)=>{return function(Y,J,C,X,G,W){let F=m0.trace.getSpan(m0.context.active()),Z=A._checkSkipInstrumentation(F),U=typeof G==="function"?G:W;if(Z||typeof U!=="function")if(typeof G==="function")return Q.call(this,Y,J,C,X,G);else return Q.call(this,Y,J,C,X,G,W);let $=A.tracer.startSpan("mongodb.getMore",{kind:m0.SpanKind.CLIENT});A._populateV3Attributes($,J,Y,C.cmd,"getMore");let E=A._patchEnd($,U);if(typeof G==="function")return Q.call(this,Y,J,C,X,E);else return Q.call(this,Y,J,C,X,G,E)}}}static _getCommandType(A){if(A.createIndexes!==void 0)return _W.MongodbCommandType.CREATE_INDEXES;else if(A.findandmodify!==void 0)return _W.MongodbCommandType.FIND_AND_MODIFY;else if(A.ismaster!==void 0)return _W.MongodbCommandType.IS_MASTER;else if(A.count!==void 0)return _W.MongodbCommandType.COUNT;else if(A.aggregate!==void 0)return _W.MongodbCommandType.AGGREGATE;else return _W.MongodbCommandType.UNKNOWN}_populateV4Attributes(A,Q,B,Y,J){let C,X;if(Q){let W=typeof Q.address==="string"?Q.address.split(":"):"";if(W.length===2)C=W[0],X=W[1]}let G;if((Y===null||Y===void 0?void 0:Y.documents)&&Y.documents[0])G=Y.documents[0];else if(Y===null||Y===void 0?void 0:Y.cursors)G=Y.cursors;else G=Y;this._addAllSpanAttributes(A,B.db,B.collection,C,X,G,J)}_populateV3Attributes(A,Q,B,Y,J){var C,X,G,W,F,Z,U,$;let E,K;if(B&&B.s){if(E=(X=(C=B.s.options)===null||C===void 0?void 0:C.host)!==null&&X!==void 0?X:B.s.host,K=(F=(W=(G=B.s.options)===null||G===void 0?void 0:G.port)!==null&&W!==void 0?W:B.s.port)===null||F===void 0?void 0:F.toString(),E==null||K==null){let D=(Z=B.description)===null||Z===void 0?void 0:Z.address;if(D){let L=D.split(":");E=L[0],K=L[1]}}}let[I,V]=Q.toString().split("."),H=($=(U=Y===null||Y===void 0?void 0:Y.query)!==null&&U!==void 0?U:Y===null||Y===void 0?void 0:Y.q)!==null&&$!==void 0?$:Y;this._addAllSpanAttributes(A,I,V,E,K,H,J)}_addAllSpanAttributes(A,Q,B,Y,J,C,X){if(A.setAttributes({[qG.SEMATTRS_DB_SYSTEM]:qG.DBSYSTEMVALUES_MONGODB,[qG.SEMATTRS_DB_NAME]:Q,[qG.SEMATTRS_DB_MONGODB_COLLECTION]:B,[qG.SEMATTRS_DB_OPERATION]:X,[qG.SEMATTRS_DB_CONNECTION_STRING]:`mongodb://${Y}:${J}/${Q}`}),Y&&J){A.setAttribute(qG.SEMATTRS_NET_PEER_NAME,Y);let F=parseInt(J,10);if(!isNaN(F))A.setAttribute(qG.SEMATTRS_NET_PEER_PORT,F)}if(!C)return;let{dbStatementSerializer:G}=this.getConfig(),W=typeof G==="function"?G:this._defaultDbStatementSerializer.bind(this);(0,D0.safeExecuteInTheMiddle)(()=>{let F=W(C);A.setAttribute(qG.SEMATTRS_DB_STATEMENT,F)},(F)=>{if(F)this._diag.error("Error running dbStatementSerializer hook",F)},!0)}_defaultDbStatementSerializer(A){let{enhancedDatabaseReporting:Q}=this.getConfig(),B=Q?A:this._scrubStatement(A);return JSON.stringify(B)}_scrubStatement(A){if(Array.isArray(A))return A.map((Q)=>this._scrubStatement(Q));if(typeof A==="object"&&A!==null)return Object.fromEntries(Object.entries(A).map(([Q,B])=>[Q,this._scrubStatement(B)]));return"?"}_handleExecutionResult(A,Q){let{responseHook:B}=this.getConfig();if(typeof B==="function")(0,D0.safeExecuteInTheMiddle)(()=>{B(A,{data:Q})},(Y)=>{if(Y)this._diag.error("Error running response hook",Y)},!0)}_patchEnd(A,Q,B,Y){let J=m0.context.active(),C=this;return function(...G){let W=G[0];if(A){if(W instanceof Error)A===null||A===void 0||A.setStatus({code:m0.SpanStatusCode.ERROR,message:W.message});else{let F=G[1];C._handleExecutionResult(A,F)}A.end()}return m0.context.with(J,()=>{if(Y==="endSessions")C._connectionsUsage.add(-1,{state:"idle","pool.name":C._poolName});return Q.apply(this,G)})}}setPoolName(A){var Q,B;let Y=(Q=A.hostAddress)===null||Q===void 0?void 0:Q.host,J=(B=A.hostAddress)===null||B===void 0?void 0:B.port,C=A.dbName,X=`mongodb://${Y}:${J}/${C}`;this._poolName=X}_checkSkipInstrumentation(A){return this.getConfig().requireParentSpan===!0&&A===void 0}}VVQ.MongoDBInstrumentation=dn});var NVQ=R((DVQ)=>{Object.defineProperty(DVQ,"__esModule",{value:!0});DVQ.MongodbCommandType=void 0;var KM0;(function(A){A.CREATE_INDEXES="createIndexes",A.FIND_AND_MODIFY="findAndModify",A.IS_MASTER="isMaster",A.COUNT="count",A.UNKNOWN="unknown"})(KM0=DVQ.MongodbCommandType||(DVQ.MongodbCommandType={}))});var qVQ=R((vW)=>{var VM0=vW&&vW.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),LVQ=vW&&vW.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))VM0(Q,A,B)};Object.defineProperty(vW,"__esModule",{value:!0});LVQ(HVQ(),vW);LVQ(NVQ(),vW)});var PVQ=R((jVQ)=>{Object.defineProperty(jVQ,"__esModule",{value:!0});jVQ.handleCallbackResponse=jVQ.handlePromiseResponse=jVQ.getAttributesFromCollection=void 0;var RVQ=yA(),qM0=NB(),iL=dB();function MM0(A){return{[iL.SEMATTRS_DB_MONGODB_COLLECTION]:A.name,[iL.SEMATTRS_DB_NAME]:A.conn.name,[iL.SEMATTRS_DB_USER]:A.conn.user,[iL.SEMATTRS_NET_PEER_NAME]:A.conn.host,[iL.SEMATTRS_NET_PEER_PORT]:A.conn.port}}jVQ.getAttributesFromCollection=MM0;function wVQ(A,Q={}){A.recordException(Q),A.setStatus({code:RVQ.SpanStatusCode.ERROR,message:`${Q.message} ${Q.code?` -Mongoose Error Code: ${Q.code}`:""}`})}function nn(A,Q,B,Y=void 0){if(!B)return;(0,qM0.safeExecuteInTheMiddle)(()=>B(A,{moduleVersion:Y,response:Q}),(J)=>{if(J)RVQ.diag.error("mongoose instrumentation: responseHook error",J)},!0)}function zM0(A,Q,B,Y=void 0){if(!(A instanceof Promise))return nn(Q,A,B,Y),Q.end(),A;return A.then((J)=>{return nn(Q,J,B,Y),J}).catch((J)=>{throw wVQ(Q,J),J}).finally(()=>Q.end())}jVQ.handlePromiseResponse=zM0;function RM0(A,Q,B,Y,J,C,X=void 0){let G=0;if(J.length===2)G=1;return J[G]=(W,F)=>{return W?wVQ(Y,W):nn(Y,F,C,X),Y.end(),A(W,F)},Q.apply(B,J)}jVQ.handleCallbackResponse=RM0});var kVQ=R((TVQ)=>{Object.defineProperty(TVQ,"__esModule",{value:!0});TVQ.PACKAGE_NAME=TVQ.PACKAGE_VERSION=void 0;TVQ.PACKAGE_VERSION="0.46.1";TVQ.PACKAGE_NAME="@opentelemetry/instrumentation-mongoose"});var bVQ=R((xVQ)=>{Object.defineProperty(xVQ,"__esModule",{value:!0});xVQ.MongooseInstrumentation=xVQ._STORED_PARENT_SPAN=void 0;var L9=yA(),PM0=MB(),sn=PVQ(),_VQ=NB(),vVQ=kVQ(),nL=dB(),GT=["deleteOne","deleteMany","find","findOne","estimatedDocumentCount","countDocuments","distinct","where","$where","findOneAndUpdate","findOneAndDelete","findOneAndReplace"],TM0=["remove","count","findOneAndRemove",...GT],SM0=["count","findOneAndRemove",...GT],kM0=[...GT];function yVQ(A){if(!A)return GT;else if(A.startsWith("6.")||A.startsWith("5."))return TM0;else if(A.startsWith("7."))return SM0;else return kM0}function gVQ(A){return A&&(A.startsWith("5.")||A.startsWith("6."))||!1}xVQ._STORED_PARENT_SPAN=Symbol("stored-parent-span");class hVQ extends _VQ.InstrumentationBase{constructor(A={}){super(vVQ.PACKAGE_NAME,vVQ.PACKAGE_VERSION,A)}init(){return new _VQ.InstrumentationNodeModuleDefinition("mongoose",[">=5.9.7 <9"],this.patch.bind(this),this.unpatch.bind(this))}patch(A,Q){if(this._wrap(A.Model.prototype,"save",this.patchOnModelMethods("save",Q)),A.Model.prototype.$save=A.Model.prototype.save,gVQ(Q))this._wrap(A.Model.prototype,"remove",this.patchOnModelMethods("remove",Q));return this._wrap(A.Query.prototype,"exec",this.patchQueryExec(Q)),this._wrap(A.Aggregate.prototype,"exec",this.patchAggregateExec(Q)),yVQ(Q).forEach((Y)=>{this._wrap(A.Query.prototype,Y,this.patchAndCaptureSpanContext(Y))}),this._wrap(A.Model,"aggregate",this.patchModelAggregate()),A}unpatch(A,Q){let B=yVQ(Q);if(this._unwrap(A.Model.prototype,"save"),A.Model.prototype.$save=A.Model.prototype.save,gVQ(Q))this._unwrap(A.Model.prototype,"remove");this._unwrap(A.Query.prototype,"exec"),this._unwrap(A.Aggregate.prototype,"exec"),B.forEach((Y)=>{this._unwrap(A.Query.prototype,Y)}),this._unwrap(A.Model,"aggregate")}patchAggregateExec(A){let Q=this;return(B)=>{return function(J){var C;if(Q.getConfig().requireParentSpan&&L9.trace.getSpan(L9.context.active())===void 0)return B.apply(this,arguments);let X=this[xVQ._STORED_PARENT_SPAN],G={},{dbStatementSerializer:W}=Q.getConfig();if(W)G[nL.SEMATTRS_DB_STATEMENT]=W("aggregate",{options:this.options,aggregatePipeline:this._pipeline});let F=Q._startSpan(this._model.collection,(C=this._model)===null||C===void 0?void 0:C.modelName,"aggregate",G,X);return Q._handleResponse(F,B,this,arguments,J,A)}}}patchQueryExec(A){let Q=this;return(B)=>{return function(J){if(Q.getConfig().requireParentSpan&&L9.trace.getSpan(L9.context.active())===void 0)return B.apply(this,arguments);let C=this[xVQ._STORED_PARENT_SPAN],X={},{dbStatementSerializer:G}=Q.getConfig();if(G)X[nL.SEMATTRS_DB_STATEMENT]=G(this.op,{condition:this._conditions,updates:this._update,options:this.options,fields:this._fields});let W=Q._startSpan(this.mongooseCollection,this.model.modelName,this.op,X,C);return Q._handleResponse(W,B,this,arguments,J,A)}}}patchOnModelMethods(A,Q){let B=this;return(Y)=>{return function(C,X){if(B.getConfig().requireParentSpan&&L9.trace.getSpan(L9.context.active())===void 0)return Y.apply(this,arguments);let G={document:this};if(C&&!(C instanceof Function))G.options=C;let W={},{dbStatementSerializer:F}=B.getConfig();if(F)W[nL.SEMATTRS_DB_STATEMENT]=F(A,G);let Z=B._startSpan(this.constructor.collection,this.constructor.modelName,A,W);if(C instanceof Function)X=C,C=void 0;return B._handleResponse(Z,Y,this,arguments,X,Q)}}}patchModelAggregate(){let A=this;return(Q)=>{return function(){let Y=L9.trace.getSpan(L9.context.active()),J=A._callOriginalFunction(()=>Q.apply(this,arguments));if(J)J[xVQ._STORED_PARENT_SPAN]=Y;return J}}}patchAndCaptureSpanContext(A){let Q=this;return(B)=>{return function(){return this[xVQ._STORED_PARENT_SPAN]=L9.trace.getSpan(L9.context.active()),Q._callOriginalFunction(()=>B.apply(this,arguments))}}}_startSpan(A,Q,B,Y,J){return this.tracer.startSpan(`mongoose.${Q}.${B}`,{kind:L9.SpanKind.CLIENT,attributes:Object.assign(Object.assign(Object.assign({},Y),(0,sn.getAttributesFromCollection)(A)),{[nL.SEMATTRS_DB_OPERATION]:B,[nL.SEMATTRS_DB_SYSTEM]:"mongoose"})},J?L9.trace.setSpan(L9.context.active(),J):void 0)}_handleResponse(A,Q,B,Y,J,C=void 0){let X=this;if(J instanceof Function)return X._callOriginalFunction(()=>(0,sn.handleCallbackResponse)(J,Q,B,A,Y,X.getConfig().responseHook,C));else{let G=X._callOriginalFunction(()=>Q.apply(B,Y));return(0,sn.handlePromiseResponse)(G,A,X.getConfig().responseHook,C)}}_callOriginalFunction(A){if(this.getConfig().suppressInternalInstrumentation)return L9.context.with((0,PM0.suppressTracing)(L9.context.active()),A);else return A()}}xVQ.MongooseInstrumentation=hVQ});var uVQ=R((mVQ)=>{Object.defineProperty(mVQ,"__esModule",{value:!0})});var cVQ=R((yW)=>{var _M0=yW&&yW.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),dVQ=yW&&yW.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))_M0(Q,A,B)};Object.defineProperty(yW,"__esModule",{value:!0});dVQ(bVQ(),yW);dVQ(uVQ(),yW)});var nVQ=R((iVQ)=>{Object.defineProperty(iVQ,"__esModule",{value:!0});iVQ.AttributeNames=void 0;var yM0;(function(A){A.MYSQL_VALUES="db.mysql.values"})(yM0=iVQ.AttributeNames||(iVQ.AttributeNames={}))});var oVQ=R((rVQ)=>{Object.defineProperty(rVQ,"__esModule",{value:!0});rVQ.getPoolName=rVQ.arrayStringifyHelper=rVQ.getSpanName=rVQ.getDbValues=rVQ.getDbStatement=rVQ.getConnectionAttributes=void 0;var MG=dB();function gM0(A){let{host:Q,port:B,database:Y,user:J}=hM0(A),C=parseInt(B,10);if(!isNaN(C))return{[MG.SEMATTRS_NET_PEER_NAME]:Q,[MG.SEMATTRS_NET_PEER_PORT]:C,[MG.SEMATTRS_DB_CONNECTION_STRING]:sVQ(Q,B,Y),[MG.SEMATTRS_DB_NAME]:Y,[MG.SEMATTRS_DB_USER]:J};return{[MG.SEMATTRS_NET_PEER_NAME]:Q,[MG.SEMATTRS_DB_CONNECTION_STRING]:sVQ(Q,B,Y),[MG.SEMATTRS_DB_NAME]:Y,[MG.SEMATTRS_DB_USER]:J}}rVQ.getConnectionAttributes=gM0;function hM0(A){let{host:Q,port:B,database:Y,user:J}=A&&A.connectionConfig||A||{};return{host:Q,port:B,database:Y,user:J}}function sVQ(A,Q,B){let Y=`jdbc:mysql://${A||"localhost"}`;if(typeof Q==="number")Y+=`:${Q}`;if(typeof B==="string")Y+=`/${B}`;return Y}function xM0(A){if(typeof A==="string")return A;else return A.sql}rVQ.getDbStatement=xM0;function fM0(A,Q){if(typeof A==="string")return on(Q);else return on(Q||A.values)}rVQ.getDbValues=fM0;function bM0(A){let Q=typeof A==="object"?A.sql:A,B=Q===null||Q===void 0?void 0:Q.indexOf(" ");if(typeof B==="number"&&B!==-1)return Q===null||Q===void 0?void 0:Q.substring(0,B);return Q}rVQ.getSpanName=bM0;function on(A){if(A)return`[${A.toString()}]`;return""}rVQ.arrayStringifyHelper=on;function mM0(A){let Q=A.config.connectionConfig,B="";if(B+=Q.host?`host: '${Q.host}', `:"",B+=Q.port?`port: ${Q.port}, `:"",B+=Q.database?`database: '${Q.database}', `:"",B+=Q.user?`user: '${Q.user}'`:"",!Q.user)B=B.substring(0,B.length-2);return B.trim()}rVQ.getPoolName=mM0});var AIQ=R((tVQ)=>{Object.defineProperty(tVQ,"__esModule",{value:!0});tVQ.PACKAGE_NAME=tVQ.PACKAGE_VERSION=void 0;tVQ.PACKAGE_VERSION="0.45.1";tVQ.PACKAGE_NAME="@opentelemetry/instrumentation-mysql"});var JIQ=R((BIQ)=>{Object.defineProperty(BIQ,"__esModule",{value:!0});BIQ.MySQLInstrumentation=void 0;var A8=yA(),gK=NB(),tn=dB(),nM0=nVQ(),hK=oVQ(),QIQ=AIQ();class FT extends gK.InstrumentationBase{constructor(A={}){super(QIQ.PACKAGE_NAME,QIQ.PACKAGE_VERSION,A);this._setMetricInstruments()}setMeterProvider(A){super.setMeterProvider(A),this._setMetricInstruments()}_setMetricInstruments(){this._connectionsUsage=this.meter.createUpDownCounter("db.client.connections.usage",{description:"The number of connections that are currently in state described by the state attribute.",unit:"{connection}"})}init(){return[new gK.InstrumentationNodeModuleDefinition("mysql",[">=2.0.0 <3"],(A)=>{if((0,gK.isWrapped)(A.createConnection))this._unwrap(A,"createConnection");if(this._wrap(A,"createConnection",this._patchCreateConnection()),(0,gK.isWrapped)(A.createPool))this._unwrap(A,"createPool");if(this._wrap(A,"createPool",this._patchCreatePool()),(0,gK.isWrapped)(A.createPoolCluster))this._unwrap(A,"createPoolCluster");return this._wrap(A,"createPoolCluster",this._patchCreatePoolCluster()),A},(A)=>{if(A===void 0)return;this._unwrap(A,"createConnection"),this._unwrap(A,"createPool"),this._unwrap(A,"createPoolCluster")})]}_patchCreateConnection(){return(A)=>{let Q=this;return function(Y){let J=A(...arguments);return Q._wrap(J,"query",Q._patchQuery(J)),J}}}_patchCreatePool(){return(A)=>{let Q=this;return function(Y){let J=A(...arguments);return Q._wrap(J,"query",Q._patchQuery(J)),Q._wrap(J,"getConnection",Q._patchGetConnection(J)),Q._wrap(J,"end",Q._patchPoolEnd(J)),Q._setPoolcallbacks(J,Q,""),J}}}_patchPoolEnd(A){return(Q)=>{let B=this;return function(J){let C=A._allConnections.length,X=A._freeConnections.length,G=C-X,W=(0,hK.getPoolName)(A);B._connectionsUsage.add(-G,{state:"used",name:W}),B._connectionsUsage.add(-X,{state:"idle",name:W}),Q.apply(A,arguments)}}}_patchCreatePoolCluster(){return(A)=>{let Q=this;return function(Y){let J=A(...arguments);return Q._wrap(J,"getConnection",Q._patchGetConnection(J)),Q._wrap(J,"add",Q._patchAdd(J)),J}}}_patchAdd(A){return(Q)=>{let B=this;return function(J,C){if(!B._enabled)return B._unwrap(A,"add"),Q.apply(A,arguments);Q.apply(A,arguments);let X=A._nodes;if(X){let G=typeof J==="object"?"CLUSTER::"+A._lastId:String(J),W=X[G].pool;B._setPoolcallbacks(W,B,J)}}}}_patchGetConnection(A){return(Q)=>{let B=this;return function(J,C,X){if(!B._enabled)return B._unwrap(A,"getConnection"),Q.apply(A,arguments);if(arguments.length===1&&typeof J==="function"){let G=B._getConnectionCallbackPatchFn(J);return Q.call(A,G)}if(arguments.length===2&&typeof C==="function"){let G=B._getConnectionCallbackPatchFn(C);return Q.call(A,J,G)}if(arguments.length===3&&typeof X==="function"){let G=B._getConnectionCallbackPatchFn(X);return Q.call(A,J,C,G)}return Q.apply(A,arguments)}}}_getConnectionCallbackPatchFn(A){let Q=this,B=A8.context.active();return function(Y,J){if(J){if(!(0,gK.isWrapped)(J.query))Q._wrap(J,"query",Q._patchQuery(J))}if(typeof A==="function")A8.context.with(B,A,this,Y,J)}}_patchQuery(A){return(Q)=>{let B=this;return function(Y,J,C){if(!B._enabled)return B._unwrap(A,"query"),Q.apply(A,arguments);let X=B.tracer.startSpan((0,hK.getSpanName)(Y),{kind:A8.SpanKind.CLIENT,attributes:Object.assign(Object.assign({},FT.COMMON_ATTRIBUTES),(0,hK.getConnectionAttributes)(A.config))});if(X.setAttribute(tn.SEMATTRS_DB_STATEMENT,(0,hK.getDbStatement)(Y)),B.getConfig().enhancedDatabaseReporting){let F;if(Array.isArray(J))F=J;else if(arguments[2])F=[J];X.setAttribute(nM0.AttributeNames.MYSQL_VALUES,(0,hK.getDbValues)(Y,F))}let G=Array.from(arguments).findIndex((F)=>typeof F==="function"),W=A8.context.active();if(G===-1){let F=A8.context.with(A8.trace.setSpan(A8.context.active(),X),()=>{return Q.apply(A,arguments)});return A8.context.bind(W,F),F.on("error",(Z)=>X.setStatus({code:A8.SpanStatusCode.ERROR,message:Z.message})).on("end",()=>{X.end()})}else return B._wrap(arguments,G,B._patchCallbackQuery(X,W)),A8.context.with(A8.trace.setSpan(A8.context.active(),X),()=>{return Q.apply(A,arguments)})}}}_patchCallbackQuery(A,Q){return(B)=>{return function(Y,J,C){if(Y)A.setStatus({code:A8.SpanStatusCode.ERROR,message:Y.message});return A.end(),A8.context.with(Q,()=>B(...arguments))}}}_setPoolcallbacks(A,Q,B){let Y=B||(0,hK.getPoolName)(A);A.on("connection",(J)=>{Q._connectionsUsage.add(1,{state:"idle",name:Y})}),A.on("acquire",(J)=>{Q._connectionsUsage.add(-1,{state:"idle",name:Y}),Q._connectionsUsage.add(1,{state:"used",name:Y})}),A.on("release",(J)=>{Q._connectionsUsage.add(-1,{state:"used",name:Y}),Q._connectionsUsage.add(1,{state:"idle",name:Y})})}}BIQ.MySQLInstrumentation=FT;FT.COMMON_ATTRIBUTES={[tn.SEMATTRS_DB_SYSTEM]:tn.DBSYSTEMVALUES_MYSQL}});var XIQ=R((CIQ)=>{Object.defineProperty(CIQ,"__esModule",{value:!0})});var WIQ=R((gW)=>{var sM0=gW&&gW.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),GIQ=gW&&gW.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))sM0(Q,A,B)};Object.defineProperty(gW,"__esModule",{value:!0});GIQ(JIQ(),gW);GIQ(XIQ(),gW)});var Qs=R(($IQ)=>{Object.defineProperty($IQ,"__esModule",{value:!0});$IQ.addSqlCommenterComment=void 0;var As=yA(),aM0=MB();function oM0(A){let Q=A.indexOf("--");if(Q>=0)return!0;if(A.indexOf("/*")<0)return!1;let Y=A.indexOf("*/");return Q`%${Q.charCodeAt(0).toString(16).toUpperCase()}`)}function eM0(A,Q){if(typeof Q!=="string"||Q.length===0)return Q;if(oM0(Q))return Q;let B=new aM0.W3CTraceContextPropagator,Y={};B.inject(As.trace.setSpan(As.ROOT_CONTEXT,A),Y,As.defaultTextMapSetter);let J=Object.keys(Y).sort();if(J.length===0)return Q;let C=J.map((X)=>{let G=tM0(Y[X]);return`${X}='${G}'`}).join(",");return`${Q} /*${C}*/`}$IQ.addSqlCommenterComment=eM0});var IIQ=R((KIQ)=>{Object.defineProperty(KIQ,"__esModule",{value:!0});KIQ.getConnectionPrototypeToInstrument=KIQ.once=KIQ.getSpanName=KIQ.getDbStatement=KIQ.getConnectionAttributes=void 0;var zG=dB();function Az0(A){let{host:Q,port:B,database:Y,user:J}=Qz0(A),C=parseInt(B,10);if(!isNaN(C))return{[zG.SEMATTRS_NET_PEER_NAME]:Q,[zG.SEMATTRS_NET_PEER_PORT]:C,[zG.SEMATTRS_DB_CONNECTION_STRING]:EIQ(Q,B,Y),[zG.SEMATTRS_DB_NAME]:Y,[zG.SEMATTRS_DB_USER]:J};return{[zG.SEMATTRS_NET_PEER_NAME]:Q,[zG.SEMATTRS_DB_CONNECTION_STRING]:EIQ(Q,B,Y),[zG.SEMATTRS_DB_NAME]:Y,[zG.SEMATTRS_DB_USER]:J}}KIQ.getConnectionAttributes=Az0;function Qz0(A){let{host:Q,port:B,database:Y,user:J}=A&&A.connectionConfig||A||{};return{host:Q,port:B,database:Y,user:J}}function EIQ(A,Q,B){let Y=`jdbc:mysql://${A||"localhost"}`;if(typeof Q==="number")Y+=`:${Q}`;if(typeof B==="string")Y+=`/${B}`;return Y}function Bz0(A,Q,B){if(!Q)return typeof A==="string"?A:A.sql;if(typeof A==="string")return B?Q(A,B):A;else return B||A.values?Q(A.sql,B||A.values):A.sql}KIQ.getDbStatement=Bz0;function Yz0(A){let Q=typeof A==="object"?A.sql:A,B=Q===null||Q===void 0?void 0:Q.indexOf(" ");if(typeof B==="number"&&B!==-1)return Q===null||Q===void 0?void 0:Q.substring(0,B);return Q}KIQ.getSpanName=Yz0;var Jz0=(A)=>{let Q=!1;return(...B)=>{if(Q)return;return Q=!0,A(...B)}};KIQ.once=Jz0;function Cz0(A){let Q=A.prototype,B=Object.getPrototypeOf(Q);if(typeof(B===null||B===void 0?void 0:B.query)==="function"&&typeof(B===null||B===void 0?void 0:B.execute)==="function")return B;return Q}KIQ.getConnectionPrototypeToInstrument=Cz0});var NIQ=R((HIQ)=>{Object.defineProperty(HIQ,"__esModule",{value:!0});HIQ.PACKAGE_NAME=HIQ.PACKAGE_VERSION=void 0;HIQ.PACKAGE_VERSION="0.45.2";HIQ.PACKAGE_NAME="@opentelemetry/instrumentation-mysql2"});var wIQ=R((zIQ)=>{Object.defineProperty(zIQ,"__esModule",{value:!0});zIQ.MySQL2Instrumentation=void 0;var LIQ=yA(),T$=NB(),Ys=dB(),qIQ=Qs(),xK=IIQ(),MIQ=NIQ(),Bs=[">=1.4.2 <4"];class $T extends T$.InstrumentationBase{constructor(A={}){super(MIQ.PACKAGE_NAME,MIQ.PACKAGE_VERSION,A)}init(){let A;function Q(J){if(!A&&J.format)A=J.format}let B=(J)=>{if((0,T$.isWrapped)(J.query))this._unwrap(J,"query");if(this._wrap(J,"query",this._patchQuery(A,!1)),(0,T$.isWrapped)(J.execute))this._unwrap(J,"execute");this._wrap(J,"execute",this._patchQuery(A,!0))},Y=(J)=>{this._unwrap(J,"query"),this._unwrap(J,"execute")};return[new T$.InstrumentationNodeModuleDefinition("mysql2",Bs,(J)=>{return Q(J),J},()=>{},[new T$.InstrumentationNodeModuleFile("mysql2/promise.js",Bs,(J)=>{return Q(J),J},()=>{}),new T$.InstrumentationNodeModuleFile("mysql2/lib/connection.js",Bs,(J)=>{let C=(0,xK.getConnectionPrototypeToInstrument)(J);return B(C),J},(J)=>{if(J===void 0)return;let C=(0,xK.getConnectionPrototypeToInstrument)(J);Y(C)})])]}_patchQuery(A,Q){return(B)=>{let Y=this;return function(J,C,X){let G;if(Array.isArray(C))G=C;else if(arguments[2])G=[C];let W=Y.tracer.startSpan((0,xK.getSpanName)(J),{kind:LIQ.SpanKind.CLIENT,attributes:Object.assign(Object.assign(Object.assign({},$T.COMMON_ATTRIBUTES),(0,xK.getConnectionAttributes)(this.config)),{[Ys.SEMATTRS_DB_STATEMENT]:(0,xK.getDbStatement)(J,A,G)})});if(!Q&&Y.getConfig().addSqlCommenterCommentToQueries)arguments[0]=J=typeof J==="string"?(0,qIQ.addSqlCommenterComment)(W,J):Object.assign(J,{sql:(0,qIQ.addSqlCommenterComment)(W,J.sql)});let F=(0,xK.once)((Z,U)=>{if(Z)W.setStatus({code:LIQ.SpanStatusCode.ERROR,message:Z.message});else{let{responseHook:$}=Y.getConfig();if(typeof $==="function")(0,T$.safeExecuteInTheMiddle)(()=>{$(W,{queryResults:U})},(E)=>{if(E)Y._diag.warn("Failed executing responseHook",E)},!0)}W.end()});if(arguments.length===1){if(typeof J.onResult==="function")Y._wrap(J,"onResult",Y._patchCallbackQuery(F));let Z=B.apply(this,arguments);return Z.once("error",(U)=>{F(U)}).once("result",(U)=>{F(void 0,U)}),Z}if(typeof arguments[1]==="function")Y._wrap(arguments,1,Y._patchCallbackQuery(F));else if(typeof arguments[2]==="function")Y._wrap(arguments,2,Y._patchCallbackQuery(F));return B.apply(this,arguments)}}}_patchCallbackQuery(A){return(Q)=>{return function(B,Y,J){return A(B,Y),Q(...arguments)}}}}zIQ.MySQL2Instrumentation=$T;$T.COMMON_ATTRIBUTES={[Ys.SEMATTRS_DB_SYSTEM]:Ys.DBSYSTEMVALUES_MYSQL}});var OIQ=R((jIQ)=>{Object.defineProperty(jIQ,"__esModule",{value:!0})});var TIQ=R((hW)=>{var $z0=hW&&hW.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),PIQ=hW&&hW.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))$z0(Q,A,B)};Object.defineProperty(hW,"__esModule",{value:!0});PIQ(wIQ(),hW);PIQ(OIQ(),hW)});var yIQ=R((_IQ)=>{Object.defineProperty(_IQ,"__esModule",{value:!0});_IQ.endSpan=void 0;var Ez0=yA(),Kz0=(A,Q)=>{if(Q)A.recordException(Q),A.setStatus({code:Ez0.SpanStatusCode.ERROR,message:Q.message});A.end()};_IQ.endSpan=Kz0});var Cs=R((gIQ)=>{Object.defineProperty(gIQ,"__esModule",{value:!0});gIQ.defaultDbStatementSerializer=void 0;var Vz0=[{regex:/^ECHO/i,args:0},{regex:/^(LPUSH|MSET|PFA|PUBLISH|RPUSH|SADD|SET|SPUBLISH|XADD|ZADD)/i,args:1},{regex:/^(HSET|HMSET|LSET|LINSERT)/i,args:2},{regex:/^(ACL|BIT|B[LRZ]|CLIENT|CLUSTER|CONFIG|COMMAND|DECR|DEL|EVAL|EX|FUNCTION|GEO|GET|HINCR|HMGET|HSCAN|INCR|L[TRLM]|MEMORY|P[EFISTU]|RPOP|S[CDIMORSU]|XACK|X[CDGILPRT]|Z[CDILMPRS])/i,args:-1}],Iz0=(A,Q)=>{var B,Y;if(Array.isArray(Q)&&Q.length){let J=(Y=(B=Vz0.find(({regex:X})=>{return X.test(A)}))===null||B===void 0?void 0:B.args)!==null&&Y!==void 0?Y:0,C=J>=0?Q.slice(0,J):Q;if(Q.length>C.length)C.push(`[${Q.length-J} other arguments]`);return`${A} ${C.join(" ")}`}return A};gIQ.defaultDbStatementSerializer=Iz0});var bIQ=R((xIQ)=>{Object.defineProperty(xIQ,"__esModule",{value:!0});xIQ.PACKAGE_NAME=xIQ.PACKAGE_VERSION=void 0;xIQ.PACKAGE_VERSION="0.47.1";xIQ.PACKAGE_NAME="@opentelemetry/instrumentation-ioredis"});var iIQ=R((lIQ)=>{Object.defineProperty(lIQ,"__esModule",{value:!0});lIQ.IORedisInstrumentation=void 0;var xW=yA(),ET=NB(),AC=dB(),mIQ=NB(),rL=yIQ(),Dz0=Cs(),uIQ=bIQ(),dIQ={requireParentSpan:!0};class cIQ extends ET.InstrumentationBase{constructor(A={}){super(uIQ.PACKAGE_NAME,uIQ.PACKAGE_VERSION,Object.assign(Object.assign({},dIQ),A))}setConfig(A={}){super.setConfig(Object.assign(Object.assign({},dIQ),A))}init(){return[new ET.InstrumentationNodeModuleDefinition("ioredis",[">=2.0.0 <6"],(A,Q)=>{let B=A[Symbol.toStringTag]==="Module"?A.default:A;if((0,ET.isWrapped)(B.prototype.sendCommand))this._unwrap(B.prototype,"sendCommand");if(this._wrap(B.prototype,"sendCommand",this._patchSendCommand(Q)),(0,ET.isWrapped)(B.prototype.connect))this._unwrap(B.prototype,"connect");return this._wrap(B.prototype,"connect",this._patchConnection()),A},(A)=>{if(A===void 0)return;let Q=A[Symbol.toStringTag]==="Module"?A.default:A;this._unwrap(Q.prototype,"sendCommand"),this._unwrap(Q.prototype,"connect")})]}_patchSendCommand(A){return(Q)=>{return this._traceSendCommand(Q,A)}}_patchConnection(){return(A)=>{return this._traceConnection(A)}}_traceSendCommand(A,Q){let B=this;return function(Y){if(arguments.length<1||typeof Y!=="object")return A.apply(this,arguments);let J=B.getConfig(),C=J.dbStatementSerializer||Dz0.defaultDbStatementSerializer,X=xW.trace.getSpan(xW.context.active())===void 0;if(J.requireParentSpan===!0&&X)return A.apply(this,arguments);let G=B.tracer.startSpan(Y.name,{kind:xW.SpanKind.CLIENT,attributes:{[AC.SEMATTRS_DB_SYSTEM]:AC.DBSYSTEMVALUES_REDIS,[AC.SEMATTRS_DB_STATEMENT]:C(Y.name,Y.args)}}),{requestHook:W}=J;if(W)(0,mIQ.safeExecuteInTheMiddle)(()=>W(G,{moduleVersion:Q,cmdName:Y.name,cmdArgs:Y.args}),(U)=>{if(U)xW.diag.error("ioredis instrumentation: request hook failed",U)},!0);let{host:F,port:Z}=this.options;G.setAttributes({[AC.SEMATTRS_NET_PEER_NAME]:F,[AC.SEMATTRS_NET_PEER_PORT]:Z,[AC.SEMATTRS_DB_CONNECTION_STRING]:`redis://${F}:${Z}`});try{let U=A.apply(this,arguments),$=Y.resolve;Y.resolve=function(K){(0,mIQ.safeExecuteInTheMiddle)(()=>{var I;return(I=J.responseHook)===null||I===void 0?void 0:I.call(J,G,Y.name,Y.args,K)},(I)=>{if(I)xW.diag.error("ioredis instrumentation: response hook failed",I)},!0),(0,rL.endSpan)(G,null),$(K)};let E=Y.reject;return Y.reject=function(K){(0,rL.endSpan)(G,K),E(K)},U}catch(U){throw(0,rL.endSpan)(G,U),U}}}_traceConnection(A){let Q=this;return function(){let B=xW.trace.getSpan(xW.context.active())===void 0;if(Q.getConfig().requireParentSpan===!0&&B)return A.apply(this,arguments);let Y=Q.tracer.startSpan("connect",{kind:xW.SpanKind.CLIENT,attributes:{[AC.SEMATTRS_DB_SYSTEM]:AC.DBSYSTEMVALUES_REDIS,[AC.SEMATTRS_DB_STATEMENT]:"connect"}}),{host:J,port:C}=this.options;Y.setAttributes({[AC.SEMATTRS_NET_PEER_NAME]:J,[AC.SEMATTRS_NET_PEER_PORT]:C,[AC.SEMATTRS_DB_CONNECTION_STRING]:`redis://${J}:${C}`});try{let X=A.apply(this,arguments);return(0,rL.endSpan)(Y,null),X}catch(X){throw(0,rL.endSpan)(Y,X),X}}}}lIQ.IORedisInstrumentation=cIQ});var sIQ=R((nIQ)=>{Object.defineProperty(nIQ,"__esModule",{value:!0})});var aIQ=R((fW)=>{var Nz0=fW&&fW.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),rIQ=fW&&fW.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))Nz0(Q,A,B)};Object.defineProperty(fW,"__esModule",{value:!0});rIQ(iIQ(),fW);rIQ(sIQ(),fW)});var eIQ=R((oIQ)=>{Object.defineProperty(oIQ,"__esModule",{value:!0});oIQ.getClientAttributes=void 0;var aL=dB();function Lz0(A,Q){var B,Y;return{[aL.SEMATTRS_DB_SYSTEM]:aL.DBSYSTEMVALUES_REDIS,[aL.SEMATTRS_NET_PEER_NAME]:(B=Q===null||Q===void 0?void 0:Q.socket)===null||B===void 0?void 0:B.host,[aL.SEMATTRS_NET_PEER_PORT]:(Y=Q===null||Q===void 0?void 0:Q.socket)===null||Y===void 0?void 0:Y.port,[aL.SEMATTRS_DB_CONNECTION_STRING]:qz0(A,Q===null||Q===void 0?void 0:Q.url)}}oIQ.getClientAttributes=Lz0;function qz0(A,Q){if(typeof Q!=="string"||!Q)return;try{let B=new URL(Q);return B.searchParams.delete("user_pwd"),B.username="",B.password="",B.href}catch(B){A.error("failed to sanitize redis connection url",B)}return}});var BHQ=R((AHQ)=>{Object.defineProperty(AHQ,"__esModule",{value:!0});AHQ.PACKAGE_NAME=AHQ.PACKAGE_VERSION=void 0;AHQ.PACKAGE_VERSION="0.46.1";AHQ.PACKAGE_NAME="@opentelemetry/instrumentation-redis-4"});var FHQ=R((GHQ)=>{Object.defineProperty(GHQ,"__esModule",{value:!0});GHQ.RedisInstrumentation=void 0;var QC=yA(),aY=NB(),YHQ=eIQ(),zz0=Cs(),JHQ=BHQ(),Rz0=dB(),oL=Symbol("opentelemetry.instrumentation.redis.open_spans"),CHQ=Symbol("opentelemetry.instrumentation.redis.multi_command_options"),XHQ={requireParentSpan:!1};class tL extends aY.InstrumentationBase{constructor(A={}){super(JHQ.PACKAGE_NAME,JHQ.PACKAGE_VERSION,Object.assign(Object.assign({},XHQ),A))}setConfig(A={}){super.setConfig(Object.assign(Object.assign({},XHQ),A))}init(){return[this._getInstrumentationNodeModuleDefinition("@redis/client"),this._getInstrumentationNodeModuleDefinition("@node-redis/client")]}_getInstrumentationNodeModuleDefinition(A){let Q=new aY.InstrumentationNodeModuleFile(`${A}/dist/lib/commander.js`,["^1.0.0"],(J,C)=>{let X=J.transformCommandArguments;if(!X)return this._diag.error("internal instrumentation error, missing transformCommandArguments function"),J;let G=(C===null||C===void 0?void 0:C.startsWith("1.0."))?"extendWithCommands":"attachCommands";if((0,aY.isWrapped)(J===null||J===void 0?void 0:J[G]))this._unwrap(J,G);return this._wrap(J,G,this._getPatchExtendWithCommands(X)),J},(J)=>{if((0,aY.isWrapped)(J===null||J===void 0?void 0:J.extendWithCommands))this._unwrap(J,"extendWithCommands");if((0,aY.isWrapped)(J===null||J===void 0?void 0:J.attachCommands))this._unwrap(J,"attachCommands")}),B=new aY.InstrumentationNodeModuleFile(`${A}/dist/lib/client/multi-command.js`,["^1.0.0"],(J)=>{var C;let X=(C=J===null||J===void 0?void 0:J.default)===null||C===void 0?void 0:C.prototype;if((0,aY.isWrapped)(X===null||X===void 0?void 0:X.exec))this._unwrap(X,"exec");if(this._wrap(X,"exec",this._getPatchMultiCommandsExec()),(0,aY.isWrapped)(X===null||X===void 0?void 0:X.addCommand))this._unwrap(X,"addCommand");return this._wrap(X,"addCommand",this._getPatchMultiCommandsAddCommand()),J},(J)=>{var C;let X=(C=J===null||J===void 0?void 0:J.default)===null||C===void 0?void 0:C.prototype;if((0,aY.isWrapped)(X===null||X===void 0?void 0:X.exec))this._unwrap(X,"exec");if((0,aY.isWrapped)(X===null||X===void 0?void 0:X.addCommand))this._unwrap(X,"addCommand")}),Y=new aY.InstrumentationNodeModuleFile(`${A}/dist/lib/client/index.js`,["^1.0.0"],(J)=>{var C;let X=(C=J===null||J===void 0?void 0:J.default)===null||C===void 0?void 0:C.prototype;if(X===null||X===void 0?void 0:X.multi){if((0,aY.isWrapped)(X===null||X===void 0?void 0:X.multi))this._unwrap(X,"multi");this._wrap(X,"multi",this._getPatchRedisClientMulti())}if(X===null||X===void 0?void 0:X.MULTI){if((0,aY.isWrapped)(X===null||X===void 0?void 0:X.MULTI))this._unwrap(X,"MULTI");this._wrap(X,"MULTI",this._getPatchRedisClientMulti())}if((0,aY.isWrapped)(X===null||X===void 0?void 0:X.sendCommand))this._unwrap(X,"sendCommand");return this._wrap(X,"sendCommand",this._getPatchRedisClientSendCommand()),this._wrap(X,"connect",this._getPatchedClientConnect()),J},(J)=>{var C;let X=(C=J===null||J===void 0?void 0:J.default)===null||C===void 0?void 0:C.prototype;if((0,aY.isWrapped)(X===null||X===void 0?void 0:X.multi))this._unwrap(X,"multi");if((0,aY.isWrapped)(X===null||X===void 0?void 0:X.MULTI))this._unwrap(X,"MULTI");if((0,aY.isWrapped)(X===null||X===void 0?void 0:X.sendCommand))this._unwrap(X,"sendCommand")});return new aY.InstrumentationNodeModuleDefinition(A,["^1.0.0"],(J)=>{return J},()=>{},[Q,B,Y])}_getPatchExtendWithCommands(A){let Q=this;return function(Y){return function(C){var X;if(((X=C===null||C===void 0?void 0:C.BaseClass)===null||X===void 0?void 0:X.name)!=="RedisClient")return Y.apply(this,arguments);let G=C.executor;return C.executor=function(W,F){let Z=A(W,F).args;return Q._traceClientCommand(G,this,arguments,Z)},Y.apply(this,arguments)}}}_getPatchMultiCommandsExec(){let A=this;return function(B){return function(){let J=B.apply(this,arguments);if(typeof(J===null||J===void 0?void 0:J.then)!=="function")return A._diag.error("got non promise result when patching RedisClientMultiCommand.exec"),J;return J.then((C)=>{let X=this[oL];return A._endSpansWithRedisReplies(X,C),C}).catch((C)=>{let X=this[oL];if(!X)A._diag.error("cannot find open spans to end for redis multi command");else{let G=C.constructor.name==="MultiErrorReply"?C.replies:Array(X.length).fill(C);A._endSpansWithRedisReplies(X,G)}return Promise.reject(C)})}}}_getPatchMultiCommandsAddCommand(){let A=this;return function(B){return function(J){return A._traceClientCommand(B,this,arguments,J)}}}_getPatchRedisClientMulti(){return function(Q){return function(){let Y=Q.apply(this,arguments);return Y[CHQ]=this.options,Y}}}_getPatchRedisClientSendCommand(){let A=this;return function(B){return function(J){return A._traceClientCommand(B,this,arguments,J)}}}_getPatchedClientConnect(){let A=this;return function(B){return function(){let J=this.options,C=(0,YHQ.getClientAttributes)(A._diag,J),X=A.tracer.startSpan(`${tL.COMPONENT}-connect`,{kind:QC.SpanKind.CLIENT,attributes:C});return QC.context.with(QC.trace.setSpan(QC.context.active(),X),()=>{return B.apply(this)}).then((W)=>{return X.end(),W}).catch((W)=>{return X.recordException(W),X.setStatus({code:QC.SpanStatusCode.ERROR,message:W.message}),X.end(),Promise.reject(W)})}}}_traceClientCommand(A,Q,B,Y){if(QC.trace.getSpan(QC.context.active())===void 0&&this.getConfig().requireParentSpan)return A.apply(Q,B);let C=Q.options||Q[CHQ],X=Y[0],G=Y.slice(1),W=this.getConfig().dbStatementSerializer||zz0.defaultDbStatementSerializer,F=(0,YHQ.getClientAttributes)(this._diag,C);try{let $=W(X,G);if($!=null)F[Rz0.SEMATTRS_DB_STATEMENT]=$}catch($){this._diag.error("dbStatementSerializer throw an exception",$,{commandName:X})}let Z=this.tracer.startSpan(`${tL.COMPONENT}-${X}`,{kind:QC.SpanKind.CLIENT,attributes:F}),U=QC.context.with(QC.trace.setSpan(QC.context.active(),Z),()=>{return A.apply(Q,B)});if(typeof(U===null||U===void 0?void 0:U.then)==="function")U.then(($)=>{this._endSpanWithResponse(Z,X,G,$,void 0)},($)=>{this._endSpanWithResponse(Z,X,G,null,$)});else{let $=U;$[oL]=$[oL]||[],$[oL].push({span:Z,commandName:X,commandArgs:G})}return U}_endSpansWithRedisReplies(A,Q){if(!A)return this._diag.error("cannot find open spans to end for redis multi command");if(Q.length!==A.length)return this._diag.error("number of multi command spans does not match response from redis");for(let B=0;B{Object.defineProperty(ZHQ,"__esModule",{value:!0})});var EHQ=R((bW)=>{var wz0=bW&&bW.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),UHQ=bW&&bW.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))wz0(Q,A,B)};Object.defineProperty(bW,"__esModule",{value:!0});UHQ(FHQ(),bW);UHQ($HQ(),bW)});var RHQ=R((MHQ)=>{Object.defineProperty(MHQ,"__esModule",{value:!0});MHQ.EVENT_LISTENERS_SET=void 0;MHQ.EVENT_LISTENERS_SET=Symbol("opentelemetry.instrumentation.pg.eventListenersSet")});var $s=R((wHQ)=>{Object.defineProperty(wHQ,"__esModule",{value:!0});wHQ.AttributeNames=void 0;var _z0;(function(A){A.PG_VALUES="db.postgresql.values",A.PG_PLAN="db.postgresql.plan",A.IDLE_TIMEOUT_MILLIS="db.postgresql.idle.timeout.millis",A.MAX_CLIENT="db.postgresql.max.client"})(_z0=wHQ.AttributeNames||(wHQ.AttributeNames={}))});var Us=R((jHQ)=>{Object.defineProperty(jHQ,"__esModule",{value:!0});jHQ.METRIC_DB_CLIENT_OPERATION_DURATION=jHQ.METRIC_DB_CLIENT_CONNECTION_PENDING_REQUESTS=jHQ.METRIC_DB_CLIENT_CONNECTION_COUNT=jHQ.DB_CLIENT_CONNECTION_STATE_VALUE_IDLE=jHQ.DB_CLIENT_CONNECTION_STATE_VALUE_USED=jHQ.ATTR_DB_OPERATION_NAME=jHQ.ATTR_DB_NAMESPACE=jHQ.ATTR_DB_CLIENT_CONNECTION_STATE=jHQ.ATTR_DB_CLIENT_CONNECTION_POOL_NAME=void 0;jHQ.ATTR_DB_CLIENT_CONNECTION_POOL_NAME="db.client.connection.pool.name";jHQ.ATTR_DB_CLIENT_CONNECTION_STATE="db.client.connection.state";jHQ.ATTR_DB_NAMESPACE="db.namespace";jHQ.ATTR_DB_OPERATION_NAME="db.operation.name";jHQ.DB_CLIENT_CONNECTION_STATE_VALUE_USED="used";jHQ.DB_CLIENT_CONNECTION_STATE_VALUE_IDLE="idle";jHQ.METRIC_DB_CLIENT_CONNECTION_COUNT="db.client.connection.count";jHQ.METRIC_DB_CLIENT_CONNECTION_PENDING_REQUESTS="db.client.connection.pending_requests";jHQ.METRIC_DB_CLIENT_OPERATION_DURATION="db.client.operation.duration"});var Ks=R((PHQ)=>{Object.defineProperty(PHQ,"__esModule",{value:!0});PHQ.SpanNames=void 0;var uz0;(function(A){A.QUERY_PREFIX="pg.query",A.CONNECT="pg.connect",A.POOL_CONNECT="pg-pool.connect"})(uz0=PHQ.SpanNames||(PHQ.SpanNames={}))});var xHQ=R((gHQ)=>{Object.defineProperty(gHQ,"__esModule",{value:!0});gHQ.isObjectWithTextString=gHQ.getErrorMessage=gHQ.patchClientConnectCallback=gHQ.patchCallbackPGPool=gHQ.updateCounter=gHQ.getPoolName=gHQ.patchCallback=gHQ.handleExecutionResult=gHQ.handleConfigQuery=gHQ.shouldSkipInstrumentation=gHQ.getSemanticAttributesFromPool=gHQ.getSemanticAttributesFromConnection=gHQ.getConnectionString=gHQ.parseNormalizedOperationName=gHQ.getQuerySpanName=void 0;var mW=yA(),VT=$s(),xJ=dB(),S$=Us(),dz0=NB(),THQ=Ks();function SHQ(A,Q){if(!Q)return THQ.SpanNames.QUERY_PREFIX;let B=typeof Q.name==="string"&&Q.name?Q.name:kHQ(Q.text);return`${THQ.SpanNames.QUERY_PREFIX}:${B}${A?` ${A}`:""}`}gHQ.getQuerySpanName=SHQ;function kHQ(A){let Q=A.indexOf(" "),B=Q===-1?A:A.slice(0,Q);return B=B.toUpperCase(),B.endsWith(";")?B.slice(0,-1):B}gHQ.parseNormalizedOperationName=kHQ;function Vs(A){let Q=A.host||"localhost",B=A.port||5432,Y=A.database||"";return`postgresql://${Q}:${B}/${Y}`}gHQ.getConnectionString=Vs;function _HQ(A){if(Number.isInteger(A))return A;return}function vHQ(A){return{[xJ.SEMATTRS_DB_SYSTEM]:xJ.DBSYSTEMVALUES_POSTGRESQL,[xJ.SEMATTRS_DB_NAME]:A.database,[xJ.SEMATTRS_DB_CONNECTION_STRING]:Vs(A),[xJ.SEMATTRS_NET_PEER_NAME]:A.host,[xJ.SEMATTRS_NET_PEER_PORT]:_HQ(A.port),[xJ.SEMATTRS_DB_USER]:A.user}}gHQ.getSemanticAttributesFromConnection=vHQ;function cz0(A){return{[xJ.SEMATTRS_DB_SYSTEM]:xJ.DBSYSTEMVALUES_POSTGRESQL,[xJ.SEMATTRS_DB_NAME]:A.database,[xJ.SEMATTRS_DB_CONNECTION_STRING]:Vs(A),[xJ.SEMATTRS_NET_PEER_NAME]:A.host,[xJ.SEMATTRS_NET_PEER_PORT]:_HQ(A.port),[xJ.SEMATTRS_DB_USER]:A.user,[VT.AttributeNames.IDLE_TIMEOUT_MILLIS]:A.idleTimeoutMillis,[VT.AttributeNames.MAX_CLIENT]:A.maxClient}}gHQ.getSemanticAttributesFromPool=cz0;function lz0(A){return A.requireParentSpan===!0&&mW.trace.getSpan(mW.context.active())===void 0}gHQ.shouldSkipInstrumentation=lz0;function pz0(A,Q,B){let{connectionParameters:Y}=this,J=Y.database,C=SHQ(J,B),X=A.startSpan(C,{kind:mW.SpanKind.CLIENT,attributes:vHQ(Y)});if(!B)return X;if(B.text)X.setAttribute(xJ.SEMATTRS_DB_STATEMENT,B.text);if(Q.enhancedDatabaseReporting&&Array.isArray(B.values))try{let G=B.values.map((W)=>{if(W==null)return"null";else if(W instanceof Buffer)return W.toString();else if(typeof W==="object"){if(typeof W.toPostgres==="function")return W.toPostgres();return JSON.stringify(W)}else return W.toString()});X.setAttribute(VT.AttributeNames.PG_VALUES,G)}catch(G){mW.diag.error("failed to stringify ",B.values,G)}if(typeof B.name==="string")X.setAttribute(VT.AttributeNames.PG_PLAN,B.name);return X}gHQ.handleConfigQuery=pz0;function yHQ(A,Q,B){if(typeof A.responseHook==="function")(0,dz0.safeExecuteInTheMiddle)(()=>{A.responseHook(Q,{data:B})},(Y)=>{if(Y)mW.diag.error("Error running response hook",Y)},!0)}gHQ.handleExecutionResult=yHQ;function iz0(A,Q,B,Y,J){return function(X,G){if(X){if(Object.prototype.hasOwnProperty.call(X,"code"))Y[xJ.ATTR_ERROR_TYPE]=X.code;Q.setStatus({code:mW.SpanStatusCode.ERROR,message:X.message})}else yHQ(A,Q,G);J(),Q.end(),B.call(this,X,G)}}gHQ.patchCallback=iz0;function nz0(A){let Q="";return Q+=((A===null||A===void 0?void 0:A.host)?`${A.host}`:"unknown_host")+":",Q+=((A===null||A===void 0?void 0:A.port)?`${A.port}`:"unknown_port")+"/",Q+=(A===null||A===void 0?void 0:A.database)?`${A.database}`:"unknown_database",Q.trim()}gHQ.getPoolName=nz0;function sz0(A,Q,B,Y,J){let{totalCount:C,waitingCount:X,idleCount:G}=Q,W=C-G;return B.add(W-J.used,{[S$.ATTR_DB_CLIENT_CONNECTION_STATE]:S$.DB_CLIENT_CONNECTION_STATE_VALUE_USED,[S$.ATTR_DB_CLIENT_CONNECTION_POOL_NAME]:A}),B.add(G-J.idle,{[S$.ATTR_DB_CLIENT_CONNECTION_STATE]:S$.DB_CLIENT_CONNECTION_STATE_VALUE_IDLE,[S$.ATTR_DB_CLIENT_CONNECTION_POOL_NAME]:A}),Y.add(X-J.pending,{[S$.ATTR_DB_CLIENT_CONNECTION_POOL_NAME]:A}),{used:W,idle:G,pending:X}}gHQ.updateCounter=sz0;function rz0(A,Q){return function(Y,J,C){if(Y)A.setStatus({code:mW.SpanStatusCode.ERROR,message:Y.message});A.end(),Q.call(this,Y,J,C)}}gHQ.patchCallbackPGPool=rz0;function az0(A,Q){return function(Y){if(Y)A.setStatus({code:mW.SpanStatusCode.ERROR,message:Y.message});A.end(),Q.apply(this,arguments)}}gHQ.patchClientConnectCallback=az0;function oz0(A){return typeof A==="object"&&A!==null&&"message"in A?String(A.message):void 0}gHQ.getErrorMessage=oz0;function tz0(A){var Q;return typeof A==="object"&&typeof((Q=A)===null||Q===void 0?void 0:Q.text)==="string"}gHQ.isObjectWithTextString=tz0});var mHQ=R((fHQ)=>{Object.defineProperty(fHQ,"__esModule",{value:!0});fHQ.PACKAGE_NAME=fHQ.PACKAGE_VERSION=void 0;fHQ.PACKAGE_VERSION="0.51.1";fHQ.PACKAGE_NAME="@opentelemetry/instrumentation-pg"});var rHQ=R((nHQ)=>{Object.defineProperty(nHQ,"__esModule",{value:!0});nHQ.PgInstrumentation=void 0;var BC=NB(),rB=yA(),uHQ=RHQ(),wY=xHQ(),dHQ=Qs(),cHQ=mHQ(),lHQ=Ks(),IT=MB(),uW=dB(),k$=Us();function HT(A){return A[Symbol.toStringTag]==="Module"?A.default:A}class iHQ extends BC.InstrumentationBase{constructor(A={}){super(cHQ.PACKAGE_NAME,cHQ.PACKAGE_VERSION,A);this._connectionsCounter={used:0,idle:0,pending:0}}_updateMetricInstruments(){this._operationDuration=this.meter.createHistogram(k$.METRIC_DB_CLIENT_OPERATION_DURATION,{description:"Duration of database client operations.",unit:"s",valueType:rB.ValueType.DOUBLE,advice:{explicitBucketBoundaries:[0.001,0.005,0.01,0.05,0.1,0.5,1,5,10]}}),this._connectionsCounter={idle:0,pending:0,used:0},this._connectionsCount=this.meter.createUpDownCounter(k$.METRIC_DB_CLIENT_CONNECTION_COUNT,{description:"The number of connections that are currently in state described by the state attribute.",unit:"{connection}"}),this._connectionPendingRequests=this.meter.createUpDownCounter(k$.METRIC_DB_CLIENT_CONNECTION_PENDING_REQUESTS,{description:"The number of current pending requests for an open connection.",unit:"{connection}"})}init(){let A=[">=8.0.3 <9"],Q=new BC.InstrumentationNodeModuleFile("pg/lib/native/client.js",A,this._patchPgClient.bind(this),this._unpatchPgClient.bind(this)),B=new BC.InstrumentationNodeModuleFile("pg/lib/client.js",A,this._patchPgClient.bind(this),this._unpatchPgClient.bind(this)),Y=new BC.InstrumentationNodeModuleDefinition("pg",A,(C)=>{let X=HT(C);return this._patchPgClient(X.Client),C},(C)=>{let X=HT(C);return this._unpatchPgClient(X.Client),C},[B,Q]),J=new BC.InstrumentationNodeModuleDefinition("pg-pool",[">=2.0.0 <4"],(C)=>{if((0,BC.isWrapped)(C.prototype.connect))this._unwrap(C.prototype,"connect");return this._wrap(C.prototype,"connect",this._getPoolConnectPatch()),C},(C)=>{if((0,BC.isWrapped)(C.prototype.connect))this._unwrap(C.prototype,"connect")});return[Y,J]}_patchPgClient(A){if(!A)return;let Q=HT(A);if((0,BC.isWrapped)(Q.prototype.query))this._unwrap(Q.prototype,"query");if((0,BC.isWrapped)(Q.prototype.connect))this._unwrap(Q.prototype,"connect");return this._wrap(Q.prototype,"query",this._getClientQueryPatch()),this._wrap(Q.prototype,"connect",this._getClientConnectPatch()),A}_unpatchPgClient(A){let Q=HT(A);if((0,BC.isWrapped)(Q.prototype.query))this._unwrap(Q.prototype,"query");if((0,BC.isWrapped)(Q.prototype.connect))this._unwrap(Q.prototype,"connect");return A}_getClientConnectPatch(){let A=this;return(Q)=>{return function(Y){if(wY.shouldSkipInstrumentation(A.getConfig()))return Q.call(this,Y);let J=A.tracer.startSpan(lHQ.SpanNames.CONNECT,{kind:rB.SpanKind.CLIENT,attributes:wY.getSemanticAttributesFromConnection(this)});if(Y){let X=rB.trace.getSpan(rB.context.active());if(Y=wY.patchClientConnectCallback(J,Y),X)Y=rB.context.bind(rB.context.active(),Y)}let C=rB.context.with(rB.trace.setSpan(rB.context.active(),J),()=>{return Q.call(this,Y)});return pHQ(J,C)}}}recordOperationDuration(A,Q){let B={};[uW.SEMATTRS_DB_SYSTEM,k$.ATTR_DB_NAMESPACE,uW.ATTR_ERROR_TYPE,uW.ATTR_SERVER_PORT,uW.ATTR_SERVER_ADDRESS,k$.ATTR_DB_OPERATION_NAME].forEach((C)=>{if(C in A)B[C]=A[C]});let J=(0,IT.hrTimeToMilliseconds)((0,IT.hrTimeDuration)(Q,(0,IT.hrTime)()))/1000;this._operationDuration.record(J,B)}_getClientQueryPatch(){let A=this;return(Q)=>{return this._diag.debug("Patching pg.Client.prototype.query"),function(...Y){if(wY.shouldSkipInstrumentation(A.getConfig()))return Q.apply(this,Y);let J=(0,IT.hrTime)(),C=Y[0],X=typeof C==="string",G=wY.isObjectWithTextString(C),W=X?{text:C,values:Array.isArray(Y[1])?Y[1]:void 0}:G?C:void 0,F={[uW.SEMATTRS_DB_SYSTEM]:uW.DBSYSTEMVALUES_POSTGRESQL,[k$.ATTR_DB_NAMESPACE]:this.database,[uW.ATTR_SERVER_PORT]:this.connectionParameters.port,[uW.ATTR_SERVER_ADDRESS]:this.connectionParameters.host};if(W===null||W===void 0?void 0:W.text)F[k$.ATTR_DB_OPERATION_NAME]=wY.parseNormalizedOperationName(W===null||W===void 0?void 0:W.text);let Z=()=>{A.recordOperationDuration(F,J)},U=A.getConfig(),$=wY.handleConfigQuery.call(this,A.tracer,U,W);if(U.addSqlCommenterCommentToQueries){if(X)Y[0]=(0,dHQ.addSqlCommenterComment)($,C);else if(G&&!("name"in C))Y[0]=Object.assign(Object.assign({},C),{text:(0,dHQ.addSqlCommenterComment)($,C.text)})}if(Y.length>0){let I=rB.trace.getSpan(rB.context.active());if(typeof Y[Y.length-1]==="function"){if(Y[Y.length-1]=wY.patchCallback(U,$,Y[Y.length-1],F,Z),I)Y[Y.length-1]=rB.context.bind(rB.context.active(),Y[Y.length-1])}else if(typeof(W===null||W===void 0?void 0:W.callback)==="function"){let V=wY.patchCallback(A.getConfig(),$,W.callback,F,Z);if(I)V=rB.context.bind(rB.context.active(),V);Y[0].callback=V}}let{requestHook:E}=U;if(typeof E==="function"&&W)(0,BC.safeExecuteInTheMiddle)(()=>{let{database:I,host:V,port:H,user:D}=this.connectionParameters;E($,{connection:{database:I,host:V,port:H,user:D},query:{text:W.text,values:W.values,name:W.name}})},(I)=>{if(I)A._diag.error("Error running query hook",I)},!0);let K;try{K=Q.apply(this,Y)}catch(I){throw $.setStatus({code:rB.SpanStatusCode.ERROR,message:wY.getErrorMessage(I)}),$.end(),I}if(K instanceof Promise)return K.then((I)=>{return new Promise((V)=>{wY.handleExecutionResult(A.getConfig(),$,I),Z(),$.end(),V(I)})}).catch((I)=>{return new Promise((V,H)=>{$.setStatus({code:rB.SpanStatusCode.ERROR,message:I.message}),Z(),$.end(),H(I)})});return K}}}_setPoolConnectEventListeners(A){if(A[uHQ.EVENT_LISTENERS_SET])return;let Q=wY.getPoolName(A.options);A.on("connect",()=>{this._connectionsCounter=wY.updateCounter(Q,A,this._connectionsCount,this._connectionPendingRequests,this._connectionsCounter)}),A.on("acquire",()=>{this._connectionsCounter=wY.updateCounter(Q,A,this._connectionsCount,this._connectionPendingRequests,this._connectionsCounter)}),A.on("remove",()=>{this._connectionsCounter=wY.updateCounter(Q,A,this._connectionsCount,this._connectionPendingRequests,this._connectionsCounter)}),A.on("release",()=>{this._connectionsCounter=wY.updateCounter(Q,A,this._connectionsCount,this._connectionPendingRequests,this._connectionsCounter)}),A[uHQ.EVENT_LISTENERS_SET]=!0}_getPoolConnectPatch(){let A=this;return(Q)=>{return function(Y){if(wY.shouldSkipInstrumentation(A.getConfig()))return Q.call(this,Y);let J=A.tracer.startSpan(lHQ.SpanNames.POOL_CONNECT,{kind:rB.SpanKind.CLIENT,attributes:wY.getSemanticAttributesFromPool(this.options)});if(A._setPoolConnectEventListeners(this),Y){let X=rB.trace.getSpan(rB.context.active());if(Y=wY.patchCallbackPGPool(J,Y),X)Y=rB.context.bind(rB.context.active(),Y)}let C=rB.context.with(rB.trace.setSpan(rB.context.active(),J),()=>{return Q.call(this,Y)});return pHQ(J,C)}}}}nHQ.PgInstrumentation=iHQ;function pHQ(A,Q){if(!(Q instanceof Promise))return Q;let B=Q;return rB.context.bind(rB.context.active(),B.then((Y)=>{return A.end(),Y}).catch((Y)=>{return A.setStatus({code:rB.SpanStatusCode.ERROR,message:wY.getErrorMessage(Y)}),A.end(),Promise.reject(Y)}))}});var oHQ=R((aHQ)=>{Object.defineProperty(aHQ,"__esModule",{value:!0})});var tHQ=R((RG)=>{var K20=RG&&RG.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),Is=RG&&RG.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))K20(Q,A,B)};Object.defineProperty(RG,"__esModule",{value:!0});Is(rHQ(),RG);Is(oHQ(),RG);Is($s(),RG)});var EDQ=R(($DQ)=>{Object.defineProperty($DQ,"__esModule",{value:!0});$DQ.PACKAGE_NAME=$DQ.PACKAGE_VERSION=void 0;$DQ.PACKAGE_VERSION="0.45.2";$DQ.PACKAGE_NAME="@opentelemetry/instrumentation-hapi"});var Ls=R((KDQ)=>{Object.defineProperty(KDQ,"__esModule",{value:!0});KDQ.HapiLifecycleMethodNames=KDQ.HapiLayerType=KDQ.handlerPatched=KDQ.HapiComponentName=void 0;KDQ.HapiComponentName="@hapi/hapi";KDQ.handlerPatched=Symbol("hapi-handler-patched");KDQ.HapiLayerType={ROUTER:"router",PLUGIN:"plugin",EXT:"server.ext"};KDQ.HapiLifecycleMethodNames=new Set(["onPreAuth","onCredentials","onPostAuth","onPreHandler","onPostHandler","onPreResponse","onRequest"])});var Ms=R((IDQ)=>{Object.defineProperty(IDQ,"__esModule",{value:!0});IDQ.AttributeNames=void 0;var S20;(function(A){A.HAPI_TYPE="hapi.type",A.PLUGIN_NAME="hapi.plugin.name",A.EXT_TYPE="server.ext.type"})(S20=IDQ.AttributeNames||(IDQ.AttributeNames={}))});var NDQ=R((HDQ)=>{Object.defineProperty(HDQ,"__esModule",{value:!0});HDQ.getPluginFromInput=HDQ.getExtMetadata=HDQ.getRouteMetadata=HDQ.isPatchableExtMethod=HDQ.isDirectExtInput=HDQ.isLifecycleExtEventObj=HDQ.isLifecycleExtType=HDQ.getPluginName=void 0;var qT=dB(),Aq=Ls(),cW=Ms();function k20(A){if(A.name)return A.name;else return A.pkg.name}HDQ.getPluginName=k20;var _20=(A)=>{return typeof A==="string"&&Aq.HapiLifecycleMethodNames.has(A)};HDQ.isLifecycleExtType=_20;var v20=(A)=>{var Q;let B=(Q=A)===null||Q===void 0?void 0:Q.type;return B!==void 0&&HDQ.isLifecycleExtType(B)};HDQ.isLifecycleExtEventObj=v20;var y20=(A)=>{return Array.isArray(A)&&A.length<=3&&HDQ.isLifecycleExtType(A[0])&&typeof A[1]==="function"};HDQ.isDirectExtInput=y20;var g20=(A)=>{return!Array.isArray(A)};HDQ.isPatchableExtMethod=g20;var h20=(A,Q)=>{if(Q)return{attributes:{[qT.SEMATTRS_HTTP_ROUTE]:A.path,[qT.SEMATTRS_HTTP_METHOD]:A.method,[cW.AttributeNames.HAPI_TYPE]:Aq.HapiLayerType.PLUGIN,[cW.AttributeNames.PLUGIN_NAME]:Q},name:`${Q}: route - ${A.path}`};return{attributes:{[qT.SEMATTRS_HTTP_ROUTE]:A.path,[qT.SEMATTRS_HTTP_METHOD]:A.method,[cW.AttributeNames.HAPI_TYPE]:Aq.HapiLayerType.ROUTER},name:`route - ${A.path}`}};HDQ.getRouteMetadata=h20;var x20=(A,Q)=>{if(Q)return{attributes:{[cW.AttributeNames.EXT_TYPE]:A,[cW.AttributeNames.HAPI_TYPE]:Aq.HapiLayerType.EXT,[cW.AttributeNames.PLUGIN_NAME]:Q},name:`${Q}: ext - ${A}`};return{attributes:{[cW.AttributeNames.EXT_TYPE]:A,[cW.AttributeNames.HAPI_TYPE]:Aq.HapiLayerType.EXT},name:`ext - ${A}`}};HDQ.getExtMetadata=x20;var f20=(A)=>{if("plugin"in A){if("plugin"in A.plugin)return A.plugin.plugin;return A.plugin}return A};HDQ.getPluginFromInput=f20});var wDQ=R((zDQ)=>{Object.defineProperty(zDQ,"__esModule",{value:!0});zDQ.HapiInstrumentation=void 0;var c8=yA(),LDQ=MB(),MT=NB(),qDQ=EDQ(),Qq=Ls(),wG=NDQ();class MDQ extends MT.InstrumentationBase{constructor(A={}){super(qDQ.PACKAGE_NAME,qDQ.PACKAGE_VERSION,A)}init(){return new MT.InstrumentationNodeModuleDefinition(Qq.HapiComponentName,[">=17.0.0 <22"],(A)=>{let Q=A[Symbol.toStringTag]==="Module"?A.default:A;if(!(0,MT.isWrapped)(Q.server))this._wrap(Q,"server",this._getServerPatch.bind(this));if(!(0,MT.isWrapped)(Q.Server))this._wrap(Q,"Server",this._getServerPatch.bind(this));return Q},(A)=>{let Q=A[Symbol.toStringTag]==="Module"?A.default:A;this._massUnwrap([Q],["server","Server"])})}_getServerPatch(A){let Q=this,B=this;return function(J){let C=A.apply(this,[J]);return B._wrap(C,"route",(X)=>{return Q._getServerRoutePatch.bind(Q)(X)}),B._wrap(C,"ext",(X)=>{return Q._getServerExtPatch.bind(Q)(X)}),B._wrap(C,"register",Q._getServerRegisterPatch.bind(Q)),C}}_getServerRegisterPatch(A){let Q=this;return function(Y,J){if(Array.isArray(Y))for(let C of Y){let X=(0,wG.getPluginFromInput)(C);Q._wrapRegisterHandler(X)}else{let C=(0,wG.getPluginFromInput)(Y);Q._wrapRegisterHandler(C)}return A.apply(this,[Y,J])}}_getServerExtPatch(A,Q){let B=this;return function(...J){if(Array.isArray(J[0])){let C=J[0];for(let X=0;X{return Q._getServerRoutePatch.bind(Q)(W,B)}),J._wrap(X,"ext",(W)=>{return Q._getServerExtPatch.bind(Q)(W,B)}),Y.call(this,X,G)};A.register=C}_wrapExtMethods(A,Q,B){let Y=this;if(A instanceof Array){for(let J=0;J{return async function(...X){if(c8.trace.getSpan(c8.context.active())===void 0)return await C.call(this,...X);let G=(0,LDQ.getRPCMetadata)(c8.context.active());if((G===null||G===void 0?void 0:G.type)===LDQ.RPCType.HTTP)G.route=A.path;let W=(0,wG.getRouteMetadata)(A,Q),F=Y.tracer.startSpan(W.name,{attributes:W.attributes});try{return await c8.context.with(c8.trace.setSpan(c8.context.active(),F),()=>C.call(this,...X))}catch(Z){throw F.recordException(Z),F.setStatus({code:c8.SpanStatusCode.ERROR,message:Z.message}),Z}finally{F.end()}}};if(typeof A.handler==="function")A.handler=J(A.handler);else if(typeof A.options==="function"){let C=A.options;A.options=function(X){let G=C(X);if(typeof G.handler==="function")G.handler=J(G.handler);return G}}else if(typeof((B=A.options)===null||B===void 0?void 0:B.handler)==="function")A.options.handler=J(A.options.handler);return A}}zDQ.HapiInstrumentation=MDQ});var ODQ=R((lW)=>{var p20=lW&&lW.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),jDQ=lW&&lW.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))p20(Q,A,B)};Object.defineProperty(lW,"__esModule",{value:!0});jDQ(wDQ(),lW);jDQ(Ms(),lW)});var wT=R((kDQ)=>{Object.defineProperty(kDQ,"__esModule",{value:!0});kDQ.KoaLayerType=void 0;var o20;(function(A){A.ROUTER="router",A.MIDDLEWARE="middleware"})(o20=kDQ.KoaLayerType||(kDQ.KoaLayerType={}))});var yDQ=R((_DQ)=>{Object.defineProperty(_DQ,"__esModule",{value:!0});_DQ.PACKAGE_NAME=_DQ.PACKAGE_VERSION=void 0;_DQ.PACKAGE_VERSION="0.47.1";_DQ.PACKAGE_NAME="@opentelemetry/instrumentation-koa"});var js=R((gDQ)=>{Object.defineProperty(gDQ,"__esModule",{value:!0});gDQ.AttributeNames=void 0;var e20;(function(A){A.KOA_TYPE="koa.type",A.KOA_NAME="koa.name"})(e20=gDQ.AttributeNames||(gDQ.AttributeNames={}))});var bDQ=R((xDQ)=>{Object.defineProperty(xDQ,"__esModule",{value:!0});xDQ.isLayerIgnored=xDQ.getMiddlewareMetadata=void 0;var hDQ=wT(),jT=js(),A30=dB(),Q30=(A,Q,B,Y)=>{var J;if(B)return{attributes:{[jT.AttributeNames.KOA_NAME]:Y===null||Y===void 0?void 0:Y.toString(),[jT.AttributeNames.KOA_TYPE]:hDQ.KoaLayerType.ROUTER,[A30.SEMATTRS_HTTP_ROUTE]:Y===null||Y===void 0?void 0:Y.toString()},name:A._matchedRouteName||`router - ${Y}`};else return{attributes:{[jT.AttributeNames.KOA_NAME]:(J=Q.name)!==null&&J!==void 0?J:"middleware",[jT.AttributeNames.KOA_TYPE]:hDQ.KoaLayerType.MIDDLEWARE},name:`middleware - ${Q.name}`}};xDQ.getMiddlewareMetadata=Q30;var B30=(A,Q)=>{var B;return!!(Array.isArray(Q===null||Q===void 0?void 0:Q.ignoreLayersType)&&((B=Q===null||Q===void 0?void 0:Q.ignoreLayersType)===null||B===void 0?void 0:B.includes(A)))};xDQ.isLayerIgnored=B30});var dDQ=R((mDQ)=>{Object.defineProperty(mDQ,"__esModule",{value:!0});mDQ.kLayerPatched=void 0;mDQ.kLayerPatched=Symbol("koa-layer-patched")});var oDQ=R((rDQ)=>{Object.defineProperty(rDQ,"__esModule",{value:!0});rDQ.KoaInstrumentation=void 0;var qX=yA(),Bq=NB(),cDQ=wT(),lDQ=yDQ(),pDQ=bDQ(),iDQ=MB(),nDQ=dDQ();class sDQ extends Bq.InstrumentationBase{constructor(A={}){super(lDQ.PACKAGE_NAME,lDQ.PACKAGE_VERSION,A)}init(){return new Bq.InstrumentationNodeModuleDefinition("koa",[">=2.0.0 <3"],(A)=>{let Q=A[Symbol.toStringTag]==="Module"?A.default:A;if(Q==null)return Q;if((0,Bq.isWrapped)(Q.prototype.use))this._unwrap(Q.prototype,"use");return this._wrap(Q.prototype,"use",this._getKoaUsePatch.bind(this)),A},(A)=>{let Q=A[Symbol.toStringTag]==="Module"?A.default:A;if((0,Bq.isWrapped)(Q.prototype.use))this._unwrap(Q.prototype,"use")})}_getKoaUsePatch(A){let Q=this;return function(Y){let J;if(Y.router)J=Q._patchRouterDispatch(Y);else J=Q._patchLayer(Y,!1);return A.apply(this,[J])}}_patchRouterDispatch(A){var Q;qX.diag.debug("Patching @koa/router dispatch");let B=A.router,Y=(Q=B===null||B===void 0?void 0:B.stack)!==null&&Q!==void 0?Q:[];for(let J of Y){let{path:C,stack:X}=J;for(let G=0;G{if(qX.trace.getSpan(qX.context.active())===void 0)return A(J,C);let G=(0,pDQ.getMiddlewareMetadata)(J,A,Q,B),W=this.tracer.startSpan(G.name,{attributes:G.attributes}),F=(0,iDQ.getRPCMetadata)(qX.context.active());if((F===null||F===void 0?void 0:F.type)===iDQ.RPCType.HTTP&&J._matchedRoute)F.route=J._matchedRoute.toString();let{requestHook:Z}=this.getConfig();if(Z)(0,Bq.safeExecuteInTheMiddle)(()=>Z(W,{context:J,middlewareLayer:A,layerType:Y}),($)=>{if($)qX.diag.error("koa instrumentation: request hook failed",$)},!0);let U=qX.trace.setSpan(qX.context.active(),W);return qX.context.with(U,async()=>{try{return await A(J,C)}catch($){throw W.recordException($),$}finally{W.end()}})}}}rDQ.KoaInstrumentation=sDQ});var tDQ=R((jG)=>{var J30=jG&&jG.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),Os=jG&&jG.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))J30(Q,A,B)};Object.defineProperty(jG,"__esModule",{value:!0});Os(oDQ(),jG);Os(wT(),jG);Os(js(),jG)});var Ss=R((CNQ)=>{Object.defineProperty(CNQ,"__esModule",{value:!0});CNQ.ConnectNames=CNQ.ConnectTypes=CNQ.AttributeNames=void 0;var G30;(function(A){A.CONNECT_TYPE="connect.type",A.CONNECT_NAME="connect.name"})(G30=CNQ.AttributeNames||(CNQ.AttributeNames={}));var W30;(function(A){A.MIDDLEWARE="middleware",A.REQUEST_HANDLER="request_handler"})(W30=CNQ.ConnectTypes||(CNQ.ConnectTypes={}));var F30;(function(A){A.MIDDLEWARE="middleware",A.REQUEST_HANDLER="request handler"})(F30=CNQ.ConnectNames||(CNQ.ConnectNames={}))});var WNQ=R((XNQ)=>{Object.defineProperty(XNQ,"__esModule",{value:!0});XNQ.PACKAGE_NAME=XNQ.PACKAGE_VERSION=void 0;XNQ.PACKAGE_VERSION="0.43.1";XNQ.PACKAGE_NAME="@opentelemetry/instrumentation-connect"});var $NQ=R((FNQ)=>{Object.defineProperty(FNQ,"__esModule",{value:!0});FNQ._LAYERS_STORE_PROPERTY=void 0;FNQ._LAYERS_STORE_PROPERTY=Symbol("opentelemetry.instrumentation-connect.request-route-stack")});var KNQ=R((UNQ)=>{Object.defineProperty(UNQ,"__esModule",{value:!0});UNQ.generateRoute=UNQ.replaceCurrentStackRoute=UNQ.addNewStackLayer=void 0;var $30=yA(),pW=$NQ(),U30=(A)=>{if(Array.isArray(A[pW._LAYERS_STORE_PROPERTY])===!1)Object.defineProperty(A,pW._LAYERS_STORE_PROPERTY,{enumerable:!1,value:[]});A[pW._LAYERS_STORE_PROPERTY].push("/");let Q=A[pW._LAYERS_STORE_PROPERTY].length;return()=>{if(Q===A[pW._LAYERS_STORE_PROPERTY].length)A[pW._LAYERS_STORE_PROPERTY].pop();else $30.diag.warn("Connect: Trying to pop the stack multiple time")}};UNQ.addNewStackLayer=U30;var E30=(A,Q)=>{if(Q)A[pW._LAYERS_STORE_PROPERTY].splice(-1,1,Q)};UNQ.replaceCurrentStackRoute=E30;var K30=(A)=>{return A[pW._LAYERS_STORE_PROPERTY].reduce((Q,B)=>Q.replace(/\/+$/,"")+B)};UNQ.generateRoute=K30});var LNQ=R((DNQ)=>{Object.defineProperty(DNQ,"__esModule",{value:!0});DNQ.ConnectInstrumentation=DNQ.ANONYMOUS_NAME=void 0;var H30=yA(),VNQ=MB(),fK=Ss(),INQ=WNQ(),PT=NB(),D30=dB(),ks=KNQ();DNQ.ANONYMOUS_NAME="anonymous";class HNQ extends PT.InstrumentationBase{constructor(A={}){super(INQ.PACKAGE_NAME,INQ.PACKAGE_VERSION,A)}init(){return[new PT.InstrumentationNodeModuleDefinition("connect",[">=3.0.0 <4"],(A)=>{return this._patchConstructor(A)})]}_patchApp(A){if(!(0,PT.isWrapped)(A.use))this._wrap(A,"use",this._patchUse.bind(this));if(!(0,PT.isWrapped)(A.handle))this._wrap(A,"handle",this._patchHandle.bind(this))}_patchConstructor(A){let Q=this;return function(...B){let Y=A.apply(this,B);return Q._patchApp(Y),Y}}_patchNext(A,Q){return function(Y){let J=A.apply(this,[Y]);return Q(),J}}_startSpan(A,Q){let B,Y,J;if(A)B=fK.ConnectTypes.REQUEST_HANDLER,J=fK.ConnectNames.REQUEST_HANDLER,Y=A;else B=fK.ConnectTypes.MIDDLEWARE,J=fK.ConnectNames.MIDDLEWARE,Y=Q.name||DNQ.ANONYMOUS_NAME;let C=`${J} - ${Y}`,X={attributes:{[D30.SEMATTRS_HTTP_ROUTE]:A.length>0?A:"/",[fK.AttributeNames.CONNECT_TYPE]:B,[fK.AttributeNames.CONNECT_NAME]:Y}};return this.tracer.startSpan(C,X)}_patchMiddleware(A,Q){let B=this,Y=Q.length===4;function J(){if(!B.isEnabled())return Q.apply(this,arguments);let[C,X,G]=Y?[1,2,3]:[0,1,2],W=arguments[C],F=arguments[X],Z=arguments[G];(0,ks.replaceCurrentStackRoute)(W,A);let U=(0,VNQ.getRPCMetadata)(H30.context.active());if(A&&(U===null||U===void 0?void 0:U.type)===VNQ.RPCType.HTTP)U.route=(0,ks.generateRoute)(W);let $="";if(A)$=`request handler - ${A}`;else $=`middleware - ${Q.name||DNQ.ANONYMOUS_NAME}`;let E=B._startSpan(A,Q);B._diag.debug("start span",$);let K=!1;function I(){if(!K)K=!0,B._diag.debug(`finishing span ${E.name}`),E.end();else B._diag.debug(`span ${E.name} - already finished`);F.removeListener("close",I)}return F.addListener("close",I),arguments[G]=B._patchNext(Z,I),Q.apply(this,arguments)}return Object.defineProperty(J,"length",{value:Q.length,writable:!1,configurable:!0}),J}_patchUse(A){let Q=this;return function(...B){let Y=B[B.length-1],J=B[B.length-2]||"";return B[B.length-1]=Q._patchMiddleware(J,Y),A.apply(this,B)}}_patchHandle(A){let Q=this;return function(){let[B,Y]=[0,2],J=arguments[B],C=arguments[Y],X=(0,ks.addNewStackLayer)(J);if(typeof C==="function")arguments[Y]=Q._patchOut(C,X);return A.apply(this,arguments)}}_patchOut(A,Q){return function(...Y){return Q(),Reflect.apply(A,this,Y)}}}DNQ.ConnectInstrumentation=HNQ});var MNQ=R((iW)=>{var N30=iW&&iW.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),qNQ=iW&&iW.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))N30(Q,A,B)};Object.defineProperty(iW,"__esModule",{value:!0});qNQ(Ss(),iW);qNQ(LNQ(),iW)});var PNQ=R((jNQ)=>{Object.defineProperty(jNQ,"__esModule",{value:!0});jNQ.PACKAGE_NAME=jNQ.PACKAGE_VERSION=void 0;jNQ.PACKAGE_VERSION="0.44.1";jNQ.PACKAGE_NAME="@opentelemetry/instrumentation-knex"});var kNQ=R((TNQ)=>{Object.defineProperty(TNQ,"__esModule",{value:!0});TNQ.SUPPORTED_VERSIONS=TNQ.MODULE_NAME=void 0;TNQ.MODULE_NAME="knex";TNQ.SUPPORTED_VERSIONS=[">=0.22.0 <4",">=0.10.0 <0.18.0",">=0.19.0 <0.22.0",">=0.18.0 <0.19.0"]});var yNQ=R((vNQ)=>{Object.defineProperty(vNQ,"__esModule",{value:!0});vNQ.extractTableName=vNQ.limitLength=vNQ.getName=vNQ.mapSystem=vNQ.otelExceptionFromKnexError=vNQ.getFormatter=void 0;var _NQ=dB(),k30=(A)=>{if(A){if(A.client){if(A.client._formatQuery)return A.client._formatQuery.bind(A.client);else if(A.client.SqlString)return A.client.SqlString.format.bind(A.client.SqlString)}if(A.builder)return A.builder.toString.bind(A.builder)}return()=>""};vNQ.getFormatter=k30;function _30(A,Q){if(!(A&&A instanceof Error))return A;return{message:Q,code:A.code,stack:A.stack,name:A.name}}vNQ.otelExceptionFromKnexError=_30;var v30=new Map([["sqlite3",_NQ.DBSYSTEMVALUES_SQLITE],["pg",_NQ.DBSYSTEMVALUES_POSTGRESQL]]),y30=(A)=>{return v30.get(A)||A};vNQ.mapSystem=y30;var g30=(A,Q,B)=>{if(Q){if(B)return`${Q} ${A}.${B}`;return`${Q} ${A}`}return A};vNQ.getName=g30;var h30=(A,Q)=>{if(typeof A==="string"&&typeof Q==="number"&&0{var Q;let B=(Q=A===null||A===void 0?void 0:A._single)===null||Q===void 0?void 0:Q.table;if(typeof B==="object")return vNQ.extractTableName(B);return B};vNQ.extractTableName=x30});var uNQ=R((bNQ)=>{Object.defineProperty(bNQ,"__esModule",{value:!0});bNQ.KnexInstrumentation=void 0;var OG=yA(),gNQ=PNQ(),kT=kNQ(),Yq=NB(),PG=dB(),bK=yNQ(),hNQ=Symbol("opentelemetry.instrumentation-knex.context"),xNQ={maxQueryLength:1022,requireParentSpan:!1};class fNQ extends Yq.InstrumentationBase{constructor(A={}){super(gNQ.PACKAGE_NAME,gNQ.PACKAGE_VERSION,Object.assign(Object.assign({},xNQ),A))}setConfig(A={}){super.setConfig(Object.assign(Object.assign({},xNQ),A))}init(){let A=new Yq.InstrumentationNodeModuleDefinition(kT.MODULE_NAME,kT.SUPPORTED_VERSIONS);return A.files.push(this.getClientNodeModuleFileInstrumentation("src"),this.getClientNodeModuleFileInstrumentation("lib"),this.getRunnerNodeModuleFileInstrumentation("src"),this.getRunnerNodeModuleFileInstrumentation("lib"),this.getRunnerNodeModuleFileInstrumentation("lib/execution")),A}getRunnerNodeModuleFileInstrumentation(A){return new Yq.InstrumentationNodeModuleFile(`knex/${A}/runner.js`,kT.SUPPORTED_VERSIONS,(Q,B)=>{return this.ensureWrapped(Q.prototype,"query",this.createQueryWrapper(B)),Q},(Q,B)=>{return this._unwrap(Q.prototype,"query"),Q})}getClientNodeModuleFileInstrumentation(A){return new Yq.InstrumentationNodeModuleFile(`knex/${A}/client.js`,kT.SUPPORTED_VERSIONS,(Q)=>{return this.ensureWrapped(Q.prototype,"queryBuilder",this.storeContext.bind(this)),this.ensureWrapped(Q.prototype,"schemaBuilder",this.storeContext.bind(this)),this.ensureWrapped(Q.prototype,"raw",this.storeContext.bind(this)),Q},(Q)=>{return this._unwrap(Q.prototype,"queryBuilder"),this._unwrap(Q.prototype,"schemaBuilder"),this._unwrap(Q.prototype,"raw"),Q})}createQueryWrapper(A){let Q=this;return function(Y){return function(C){var X,G,W,F,Z,U;let $=this.client.config,E=bK.extractTableName(this.builder),K=C===null||C===void 0?void 0:C.method,I=((X=$===null||$===void 0?void 0:$.connection)===null||X===void 0?void 0:X.filename)||((G=$===null||$===void 0?void 0:$.connection)===null||G===void 0?void 0:G.database),{maxQueryLength:V}=Q.getConfig(),H={"knex.version":A,[PG.SEMATTRS_DB_SYSTEM]:bK.mapSystem($.client),[PG.SEMATTRS_DB_SQL_TABLE]:E,[PG.SEMATTRS_DB_OPERATION]:K,[PG.SEMATTRS_DB_USER]:(W=$===null||$===void 0?void 0:$.connection)===null||W===void 0?void 0:W.user,[PG.SEMATTRS_DB_NAME]:I,[PG.SEMATTRS_NET_PEER_NAME]:(F=$===null||$===void 0?void 0:$.connection)===null||F===void 0?void 0:F.host,[PG.SEMATTRS_NET_PEER_PORT]:(Z=$===null||$===void 0?void 0:$.connection)===null||Z===void 0?void 0:Z.port,[PG.SEMATTRS_NET_TRANSPORT]:((U=$===null||$===void 0?void 0:$.connection)===null||U===void 0?void 0:U.filename)===":memory:"?"inproc":void 0};if(V)H[PG.SEMATTRS_DB_STATEMENT]=bK.limitLength(C===null||C===void 0?void 0:C.sql,V);let D=this.builder[hNQ]||OG.context.active(),L=OG.trace.getSpan(D),z=L&&OG.trace.isSpanContextValid(L.spanContext());if(Q._config.requireParentSpan&&!z)return Y.bind(this)(...arguments);let M=Q.tracer.startSpan(bK.getName(I,K,E),{kind:OG.SpanKind.CLIENT,attributes:H},D),N=OG.trace.setSpan(OG.context.active(),M);return OG.context.with(N,Y,this,...arguments).then((q)=>{return M.end(),q}).catch((q)=>{let P=bK.getFormatter(this)(C.sql,C.bindings||[]),_=q.message.replace(P+" - ",""),j=bK.otelExceptionFromKnexError(q,_);throw M.recordException(j),M.setStatus({code:OG.SpanStatusCode.ERROR,message:_}),M.end(),q})}}}storeContext(A){return function(){let B=A.apply(this,arguments);return Object.defineProperty(B,hNQ,{value:OG.context.active()}),B}}ensureWrapped(A,Q,B){if((0,Yq.isWrapped)(A[Q]))this._unwrap(A,Q);this._wrap(A,Q,B)}}bNQ.KnexInstrumentation=fNQ});var cNQ=R((dNQ)=>{Object.defineProperty(dNQ,"__esModule",{value:!0})});var pNQ=R((nW)=>{var c30=nW&&nW.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),lNQ=nW&&nW.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))c30(Q,A,B)};Object.defineProperty(nW,"__esModule",{value:!0});lNQ(uNQ(),nW);lNQ(cNQ(),nW)});var oNQ=R((rNQ)=>{Object.defineProperty(rNQ,"__esModule",{value:!0});rNQ.once=rNQ.getSpanName=void 0;function i30(A,Q,B,Y){if(A==="execBulkLoad"&&Y&&Q)return`${A} ${Y} ${Q}`;if(A==="callProcedure"){if(Q)return`${A} ${B} ${Q}`;return`${A} ${B}`}if(Q)return`${A} ${Q}`;return`${A}`}rNQ.getSpanName=i30;var n30=(A)=>{let Q=!1;return(...B)=>{if(Q)return;return Q=!0,A(...B)}};rNQ.once=n30});var ALQ=R((tNQ)=>{Object.defineProperty(tNQ,"__esModule",{value:!0});tNQ.PACKAGE_NAME=tNQ.PACKAGE_VERSION=void 0;tNQ.PACKAGE_VERSION="0.18.1";tNQ.PACKAGE_NAME="@opentelemetry/instrumentation-tedious"});var GLQ=R((CLQ)=>{Object.defineProperty(CLQ,"__esModule",{value:!0});CLQ.TediousInstrumentation=void 0;var Jq=yA(),a30=u("events"),_T=NB(),sW=dB(),QLQ=oNQ(),BLQ=ALQ(),JLQ=Symbol("opentelemetry.instrumentation-tedious.current-database"),YLQ=["callProcedure","execSql","execSqlBatch","execBulkLoad","prepare","execute"];function vT(A){Object.defineProperty(this,JLQ,{value:A,writable:!0})}class yT extends _T.InstrumentationBase{constructor(A={}){super(BLQ.PACKAGE_NAME,BLQ.PACKAGE_VERSION,A)}init(){return[new _T.InstrumentationNodeModuleDefinition(yT.COMPONENT,[">=1.11.0 <20"],(A)=>{let Q=A.Connection.prototype;for(let B of YLQ){if((0,_T.isWrapped)(Q[B]))this._unwrap(Q,B);this._wrap(Q,B,this._patchQuery(B))}if((0,_T.isWrapped)(Q.connect))this._unwrap(Q,"connect");return this._wrap(Q,"connect",this._patchConnect),A},(A)=>{if(A===void 0)return;let Q=A.Connection.prototype;for(let B of YLQ)this._unwrap(Q,B);this._unwrap(Q,"connect")})]}_patchConnect(A){return function(){var B,Y;return vT.call(this,(Y=(B=this.config)===null||B===void 0?void 0:B.options)===null||Y===void 0?void 0:Y.database),this.removeListener("databaseChange",vT),this.on("databaseChange",vT),this.once("end",()=>{this.removeListener("databaseChange",vT)}),A.apply(this,arguments)}}_patchQuery(A){return(Q)=>{let B=this;function Y(J){var C,X,G,W,F,Z,U,$;if(!(J instanceof a30.EventEmitter))return B._diag.warn(`Unexpected invocation of patched ${A} method. Span not recorded`),Q.apply(this,arguments);let E=0,K=0,I=()=>K++,V=()=>E++,H=this[JLQ],D=((M)=>{var N,q;if(M.sqlTextOrProcedure==="sp_prepare"&&((q=(N=M.parametersByName)===null||N===void 0?void 0:N.stmt)===null||q===void 0?void 0:q.value))return M.parametersByName.stmt.value;return M.sqlTextOrProcedure})(J),L=B.tracer.startSpan((0,QLQ.getSpanName)(A,H,D,J.table),{kind:Jq.SpanKind.CLIENT,attributes:{[sW.SEMATTRS_DB_SYSTEM]:sW.DBSYSTEMVALUES_MSSQL,[sW.SEMATTRS_DB_NAME]:H,[sW.SEMATTRS_NET_PEER_PORT]:(X=(C=this.config)===null||C===void 0?void 0:C.options)===null||X===void 0?void 0:X.port,[sW.SEMATTRS_NET_PEER_NAME]:(G=this.config)===null||G===void 0?void 0:G.server,[sW.SEMATTRS_DB_USER]:(F=(W=this.config)===null||W===void 0?void 0:W.userName)!==null&&F!==void 0?F:($=(U=(Z=this.config)===null||Z===void 0?void 0:Z.authentication)===null||U===void 0?void 0:U.options)===null||$===void 0?void 0:$.userName,[sW.SEMATTRS_DB_STATEMENT]:D,[sW.SEMATTRS_DB_SQL_TABLE]:J.table}}),z=(0,QLQ.once)((M)=>{if(J.removeListener("done",I),J.removeListener("doneInProc",I),J.removeListener("doneProc",V),J.removeListener("error",z),this.removeListener("end",z),L.setAttribute("tedious.procedure_count",E),L.setAttribute("tedious.statement_count",K),M)L.setStatus({code:Jq.SpanStatusCode.ERROR,message:M.message});L.end()});if(J.on("done",I),J.on("doneInProc",I),J.on("doneProc",V),J.once("error",z),this.on("end",z),typeof J.callback==="function")B._wrap(J,"callback",B._patchCallbackQuery(z));else B._diag.error("Expected request.callback to be a function");return Jq.context.with(Jq.trace.setSpan(Jq.context.active(),L),Q,this,...arguments)}return Object.defineProperty(Y,"length",{value:Q.length,writable:!1}),Y}}_patchCallbackQuery(A){return(Q)=>{return function(B,Y,J){return A(B),Q.apply(this,arguments)}}}}CLQ.TediousInstrumentation=yT;yT.COMPONENT="tedious"});var FLQ=R((WLQ)=>{Object.defineProperty(WLQ,"__esModule",{value:!0})});var $LQ=R((rW)=>{var o30=rW&&rW.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),ZLQ=rW&&rW.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))o30(Q,A,B)};Object.defineProperty(rW,"__esModule",{value:!0});ZLQ(GLQ(),rW);ZLQ(FLQ(),rW)});var ILQ=R((KLQ)=>{Object.defineProperty(KLQ,"__esModule",{value:!0});KLQ.PACKAGE_NAME=KLQ.PACKAGE_VERSION=void 0;KLQ.PACKAGE_VERSION="0.43.1";KLQ.PACKAGE_NAME="@opentelemetry/instrumentation-generic-pool"});var qLQ=R((NLQ)=>{Object.defineProperty(NLQ,"__esModule",{value:!0});NLQ.GenericPoolInstrumentation=void 0;var mK=yA(),_$=NB(),HLQ=ILQ(),xs="generic-pool";class DLQ extends _$.InstrumentationBase{constructor(A={}){super(HLQ.PACKAGE_NAME,HLQ.PACKAGE_VERSION,A);this._isDisabled=!1}init(){return[new _$.InstrumentationNodeModuleDefinition(xs,[">=3.0.0 <4"],(A)=>{let Q=A.Pool;if((0,_$.isWrapped)(Q.prototype.acquire))this._unwrap(Q.prototype,"acquire");return this._wrap(Q.prototype,"acquire",this._acquirePatcher.bind(this)),A},(A)=>{let Q=A.Pool;return this._unwrap(Q.prototype,"acquire"),A}),new _$.InstrumentationNodeModuleDefinition(xs,[">=2.4.0 <3"],(A)=>{let Q=A.Pool;if((0,_$.isWrapped)(Q.prototype.acquire))this._unwrap(Q.prototype,"acquire");return this._wrap(Q.prototype,"acquire",this._acquireWithCallbacksPatcher.bind(this)),A},(A)=>{let Q=A.Pool;return this._unwrap(Q.prototype,"acquire"),A}),new _$.InstrumentationNodeModuleDefinition(xs,[">=2.0.0 <2.4"],(A)=>{if(this._isDisabled=!1,(0,_$.isWrapped)(A.Pool))this._unwrap(A,"Pool");return this._wrap(A,"Pool",this._poolWrapper.bind(this)),A},(A)=>{return this._isDisabled=!0,A})]}_acquirePatcher(A){let Q=this;return function(...Y){let J=mK.context.active(),C=Q.tracer.startSpan("generic-pool.acquire",{},J);return mK.context.with(mK.trace.setSpan(J,C),()=>{return A.call(this,...Y).then((X)=>{return C.end(),X},(X)=>{throw C.recordException(X),C.end(),X})})}}_poolWrapper(A){let Q=this;return function(){let Y=A.apply(this,arguments);return Q._wrap(Y,"acquire",Q._acquireWithCallbacksPatcher.bind(Q)),Y}}_acquireWithCallbacksPatcher(A){let Q=this;return function(Y,J){if(Q._isDisabled)return A.call(this,Y,J);let C=mK.context.active(),X=Q.tracer.startSpan("generic-pool.acquire",{},C);return mK.context.with(mK.trace.setSpan(C,X),()=>{A.call(this,(G,W)=>{if(X.end(),Y)return Y(G,W)},J)})}}}NLQ.GenericPoolInstrumentation=DLQ});var MLQ=R((v$)=>{var QR0=v$&&v$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),BR0=v$&&v$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))QR0(Q,A,B)};Object.defineProperty(v$,"__esModule",{value:!0});BR0(qLQ(),v$)});var jLQ=R((wLQ)=>{Object.defineProperty(wLQ,"__esModule",{value:!0})});var TLQ=R((OLQ)=>{Object.defineProperty(OLQ,"__esModule",{value:!0});OLQ.PACKAGE_NAME=OLQ.PACKAGE_VERSION=void 0;OLQ.PACKAGE_VERSION="0.16.1";OLQ.PACKAGE_NAME="@opentelemetry/instrumentation-dataloader"});var yLQ=R((_LQ)=>{Object.defineProperty(_LQ,"__esModule",{value:!0});_LQ.DataloaderInstrumentation=void 0;var y$=NB(),q9=yA(),SLQ=TLQ(),bs="dataloader";class kLQ extends y$.InstrumentationBase{constructor(A={}){super(SLQ.PACKAGE_NAME,SLQ.PACKAGE_VERSION,A)}init(){return[new y$.InstrumentationNodeModuleDefinition(bs,[">=2.0.0 <3"],(A)=>{return this._patchLoad(A.prototype),this._patchLoadMany(A.prototype),this._getPatchedConstructor(A)},(A)=>{if((0,y$.isWrapped)(A.prototype.load))this._unwrap(A.prototype,"load");if((0,y$.isWrapped)(A.prototype.loadMany))this._unwrap(A.prototype,"loadMany")})]}shouldCreateSpans(){let A=this.getConfig();return q9.trace.getSpan(q9.context.active())!==void 0||!A.requireParentSpan}getSpanName(A,Q){let B=A.name;if(B===void 0||B===null)return`${bs}.${Q}`;return`${bs}.${Q} ${B}`}_getPatchedConstructor(A){let Q=A.prototype,B=this;function Y(...J){let C=new A(...J);if(!B.isEnabled())return C;if((0,y$.isWrapped)(C._batchLoadFn))B._unwrap(C,"_batchLoadFn");return B._wrap(C,"_batchLoadFn",(X)=>{return function(...W){var F;if(!B.isEnabled()||!B.shouldCreateSpans())return X.call(this,...W);let Z=q9.context.active(),U=B.tracer.startSpan(B.getSpanName(C,"batch"),{links:(F=this._batch)===null||F===void 0?void 0:F.spanLinks},Z);return q9.context.with(q9.trace.setSpan(Z,U),()=>{return X.apply(this,W).then(($)=>{return U.end(),$}).catch(($)=>{throw U.recordException($),U.setStatus({code:q9.SpanStatusCode.ERROR,message:$.message}),U.end(),$})})}}),C}return Y.prototype=Q,Y}_patchLoad(A){if((0,y$.isWrapped)(A.load))this._unwrap(A,"load");this._wrap(A,"load",this._getPatchedLoad.bind(this))}_getPatchedLoad(A){let Q=this;return function(...Y){if(!Q.shouldCreateSpans())return A.call(this,...Y);let J=q9.context.active(),C=Q.tracer.startSpan(Q.getSpanName(this,"load"),{kind:q9.SpanKind.CLIENT},J);return q9.context.with(q9.trace.setSpan(J,C),()=>{let X=A.call(this,...Y).then((W)=>{return C.end(),W}).catch((W)=>{throw C.recordException(W),C.setStatus({code:q9.SpanStatusCode.ERROR,message:W.message}),C.end(),W}),G=this;if(G._batch){if(!G._batch.spanLinks)G._batch.spanLinks=[];G._batch.spanLinks.push({context:C.spanContext()})}return X})}}_patchLoadMany(A){if((0,y$.isWrapped)(A.loadMany))this._unwrap(A,"loadMany");this._wrap(A,"loadMany",this._getPatchedLoadMany.bind(this))}_getPatchedLoadMany(A){let Q=this;return function(...Y){if(!Q.shouldCreateSpans())return A.call(this,...Y);let J=q9.context.active(),C=Q.tracer.startSpan(Q.getSpanName(this,"loadMany"),{kind:q9.SpanKind.CLIENT},J);return q9.context.with(q9.trace.setSpan(J,C),()=>{return A.call(this,...Y).then((X)=>{return C.end(),X})})}}}_LQ.DataloaderInstrumentation=kLQ});var hLQ=R((aW)=>{var CR0=aW&&aW.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),gLQ=aW&&aW.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))CR0(Q,A,B)};Object.defineProperty(aW,"__esModule",{value:!0});gLQ(jLQ(),aW);gLQ(yLQ(),aW)});var ms=R((uLQ)=>{Object.defineProperty(uLQ,"__esModule",{value:!0});uLQ.DEFAULT_CONFIG=uLQ.EndOperation=void 0;var WR0;(function(A){A.AutoAck="auto ack",A.Ack="ack",A.AckAll="ackAll",A.Reject="reject",A.Nack="nack",A.NackAll="nackAll",A.ChannelClosed="channel closed",A.ChannelError="channel error",A.InstrumentationTimeout="instrumentation timeout"})(WR0=uLQ.EndOperation||(uLQ.EndOperation={}));uLQ.DEFAULT_CONFIG={consumeTimeoutMs:60000,useLinksForConsume:!1}});var sLQ=R((iLQ)=>{Object.defineProperty(iLQ,"__esModule",{value:!0});iLQ.isConfirmChannelTracing=iLQ.unmarkConfirmChannelTracing=iLQ.markConfirmChannelTracing=iLQ.getConnectionAttributesFromUrl=iLQ.getConnectionAttributesFromServer=iLQ.normalizeExchange=iLQ.CONNECTION_ATTRIBUTES=iLQ.CHANNEL_CONSUME_TIMEOUT_TIMER=iLQ.CHANNEL_SPANS_NOT_ENDED=iLQ.MESSAGE_STORED_SPAN=void 0;var us=yA(),TG=dB();iLQ.MESSAGE_STORED_SPAN=Symbol("opentelemetry.amqplib.message.stored-span");iLQ.CHANNEL_SPANS_NOT_ENDED=Symbol("opentelemetry.amqplib.channel.spans-not-ended");iLQ.CHANNEL_CONSUME_TIMEOUT_TIMER=Symbol("opentelemetry.amqplib.channel.consumer-timeout-timer");iLQ.CONNECTION_ATTRIBUTES=Symbol("opentelemetry.amqplib.connection.attributes");var ds=(0,us.createContextKey)("opentelemetry.amqplib.channel.is-confirm-channel"),FR0=(A)=>A!==""?A:"";iLQ.normalizeExchange=FR0;var ZR0=(A)=>{return A.replace(/:[^:@/]*@/,":***@")},cLQ=(A,Q)=>{return A||(Q==="AMQP"?5672:5671)},lLQ=(A)=>{let Q=A||"amqp";return(Q.endsWith(":")?Q.substring(0,Q.length-1):Q).toUpperCase()},pLQ=(A)=>{return A||"localhost"},uK=(A,Q,B,Y)=>{if(B)return{[Q]:B};else return us.diag.error(`amqplib instrumentation: could not extract connection attribute ${Y} from user supplied url`,{url:A}),{}},$R0=(A)=>{var Q,B;let Y=(B=(Q=A.serverProperties.product)===null||Q===void 0?void 0:Q.toLowerCase)===null||B===void 0?void 0:B.call(Q);if(Y)return{[TG.SEMATTRS_MESSAGING_SYSTEM]:Y};else return{}};iLQ.getConnectionAttributesFromServer=$R0;var UR0=(A)=>{let Q={[TG.SEMATTRS_MESSAGING_PROTOCOL_VERSION]:"0.9.1"};if(A=A||"amqp://localhost",typeof A==="object"){let B=A,Y=lLQ(B===null||B===void 0?void 0:B.protocol);Object.assign(Q,Object.assign({},uK(A,TG.SEMATTRS_MESSAGING_PROTOCOL,Y,"protocol")));let J=pLQ(B===null||B===void 0?void 0:B.hostname);Object.assign(Q,Object.assign({},uK(A,TG.SEMATTRS_NET_PEER_NAME,J,"hostname")));let C=cLQ(B.port,Y);Object.assign(Q,Object.assign({},uK(A,TG.SEMATTRS_NET_PEER_PORT,C,"port")))}else{let B=ZR0(A);Q[TG.SEMATTRS_MESSAGING_URL]=B;try{let Y=new URL(B),J=lLQ(Y.protocol);Object.assign(Q,Object.assign({},uK(B,TG.SEMATTRS_MESSAGING_PROTOCOL,J,"protocol")));let C=pLQ(Y.hostname);Object.assign(Q,Object.assign({},uK(B,TG.SEMATTRS_NET_PEER_NAME,C,"hostname")));let X=cLQ(Y.port?parseInt(Y.port):void 0,J);Object.assign(Q,Object.assign({},uK(B,TG.SEMATTRS_NET_PEER_PORT,X,"port")))}catch(Y){us.diag.error("amqplib instrumentation: error while extracting connection details from connection url",{censoredUrl:B,err:Y})}}return Q};iLQ.getConnectionAttributesFromUrl=UR0;var ER0=(A)=>{return A.setValue(ds,!0)};iLQ.markConfirmChannelTracing=ER0;var KR0=(A)=>{return A.deleteValue(ds)};iLQ.unmarkConfirmChannelTracing=KR0;var VR0=(A)=>{return A.getValue(ds)===!0};iLQ.isConfirmChannelTracing=VR0});var oLQ=R((rLQ)=>{Object.defineProperty(rLQ,"__esModule",{value:!0});rLQ.PACKAGE_NAME=rLQ.PACKAGE_VERSION=void 0;rLQ.PACKAGE_VERSION="0.46.1";rLQ.PACKAGE_NAME="@opentelemetry/instrumentation-amqplib"});var BqQ=R((AqQ)=>{Object.defineProperty(AqQ,"__esModule",{value:!0});AqQ.AmqplibInstrumentation=void 0;var u0=yA(),xT=MB(),fB=NB(),Q8=dB(),M9=ms(),r0=sLQ(),tLQ=oLQ(),fT=[">=0.5.5 <1"];class eLQ extends fB.InstrumentationBase{constructor(A={}){super(tLQ.PACKAGE_NAME,tLQ.PACKAGE_VERSION,Object.assign(Object.assign({},M9.DEFAULT_CONFIG),A))}setConfig(A={}){super.setConfig(Object.assign(Object.assign({},M9.DEFAULT_CONFIG),A))}init(){let A=new fB.InstrumentationNodeModuleFile("amqplib/lib/channel_model.js",fT,this.patchChannelModel.bind(this),this.unpatchChannelModel.bind(this)),Q=new fB.InstrumentationNodeModuleFile("amqplib/lib/callback_model.js",fT,this.patchChannelModel.bind(this),this.unpatchChannelModel.bind(this)),B=new fB.InstrumentationNodeModuleFile("amqplib/lib/connect.js",fT,this.patchConnect.bind(this),this.unpatchConnect.bind(this));return new fB.InstrumentationNodeModuleDefinition("amqplib",fT,void 0,void 0,[A,B,Q])}patchConnect(A){if(A=this.unpatchConnect(A),!(0,fB.isWrapped)(A.connect))this._wrap(A,"connect",this.getConnectPatch.bind(this));return A}unpatchConnect(A){if((0,fB.isWrapped)(A.connect))this._unwrap(A,"connect");return A}patchChannelModel(A,Q){if(!(0,fB.isWrapped)(A.Channel.prototype.publish))this._wrap(A.Channel.prototype,"publish",this.getPublishPatch.bind(this,Q));if(!(0,fB.isWrapped)(A.Channel.prototype.consume))this._wrap(A.Channel.prototype,"consume",this.getConsumePatch.bind(this,Q));if(!(0,fB.isWrapped)(A.Channel.prototype.ack))this._wrap(A.Channel.prototype,"ack",this.getAckPatch.bind(this,!1,M9.EndOperation.Ack));if(!(0,fB.isWrapped)(A.Channel.prototype.nack))this._wrap(A.Channel.prototype,"nack",this.getAckPatch.bind(this,!0,M9.EndOperation.Nack));if(!(0,fB.isWrapped)(A.Channel.prototype.reject))this._wrap(A.Channel.prototype,"reject",this.getAckPatch.bind(this,!0,M9.EndOperation.Reject));if(!(0,fB.isWrapped)(A.Channel.prototype.ackAll))this._wrap(A.Channel.prototype,"ackAll",this.getAckAllPatch.bind(this,!1,M9.EndOperation.AckAll));if(!(0,fB.isWrapped)(A.Channel.prototype.nackAll))this._wrap(A.Channel.prototype,"nackAll",this.getAckAllPatch.bind(this,!0,M9.EndOperation.NackAll));if(!(0,fB.isWrapped)(A.Channel.prototype.emit))this._wrap(A.Channel.prototype,"emit",this.getChannelEmitPatch.bind(this));if(!(0,fB.isWrapped)(A.ConfirmChannel.prototype.publish))this._wrap(A.ConfirmChannel.prototype,"publish",this.getConfirmedPublishPatch.bind(this,Q));return A}unpatchChannelModel(A){if((0,fB.isWrapped)(A.Channel.prototype.publish))this._unwrap(A.Channel.prototype,"publish");if((0,fB.isWrapped)(A.Channel.prototype.consume))this._unwrap(A.Channel.prototype,"consume");if((0,fB.isWrapped)(A.Channel.prototype.ack))this._unwrap(A.Channel.prototype,"ack");if((0,fB.isWrapped)(A.Channel.prototype.nack))this._unwrap(A.Channel.prototype,"nack");if((0,fB.isWrapped)(A.Channel.prototype.reject))this._unwrap(A.Channel.prototype,"reject");if((0,fB.isWrapped)(A.Channel.prototype.ackAll))this._unwrap(A.Channel.prototype,"ackAll");if((0,fB.isWrapped)(A.Channel.prototype.nackAll))this._unwrap(A.Channel.prototype,"nackAll");if((0,fB.isWrapped)(A.Channel.prototype.emit))this._unwrap(A.Channel.prototype,"emit");if((0,fB.isWrapped)(A.ConfirmChannel.prototype.publish))this._unwrap(A.ConfirmChannel.prototype,"publish");return A}getConnectPatch(A){return function(B,Y,J){return A.call(this,B,Y,function(C,X){if(C==null){let G=(0,r0.getConnectionAttributesFromUrl)(B),W=(0,r0.getConnectionAttributesFromServer)(X);X[r0.CONNECTION_ATTRIBUTES]=Object.assign(Object.assign({},G),W)}J.apply(this,arguments)})}}getChannelEmitPatch(A){let Q=this;return function(Y){if(Y==="close"){Q.endAllSpansOnChannel(this,!0,M9.EndOperation.ChannelClosed,void 0);let J=this[r0.CHANNEL_CONSUME_TIMEOUT_TIMER];if(J)clearInterval(J);this[r0.CHANNEL_CONSUME_TIMEOUT_TIMER]=void 0}else if(Y==="error")Q.endAllSpansOnChannel(this,!0,M9.EndOperation.ChannelError,void 0);return A.apply(this,arguments)}}getAckAllPatch(A,Q,B){let Y=this;return function(C){return Y.endAllSpansOnChannel(this,A,Q,C),B.apply(this,arguments)}}getAckPatch(A,Q,B){let Y=this;return function(C,X,G){var W;let F=this,Z=Q===M9.EndOperation.Reject?X:G,U=(W=F[r0.CHANNEL_SPANS_NOT_ENDED])!==null&&W!==void 0?W:[],$=U.findIndex((E)=>E.msg===C);if($<0)Y.endConsumerSpan(C,A,Q,Z);else if(Q!==M9.EndOperation.Reject&&X){for(let E=0;E<=$;E++)Y.endConsumerSpan(U[E].msg,A,Q,Z);U.splice(0,$+1)}else Y.endConsumerSpan(C,A,Q,Z),U.splice($,1);return B.apply(this,arguments)}}getConsumePatch(A,Q){let B=this;return function(J,C,X){let G=this;if(!Object.prototype.hasOwnProperty.call(G,r0.CHANNEL_SPANS_NOT_ENDED)){let{consumeTimeoutMs:F}=B.getConfig();if(F){let Z=setInterval(()=>{B.checkConsumeTimeoutOnChannel(G)},F);Z.unref(),G[r0.CHANNEL_CONSUME_TIMEOUT_TIMER]=Z}G[r0.CHANNEL_SPANS_NOT_ENDED]=[]}let W=function(F){var Z,U,$,E,K;if(!F)return C.call(this,F);let I=(Z=F.properties.headers)!==null&&Z!==void 0?Z:{},V=u0.propagation.extract(u0.ROOT_CONTEXT,I),H=(U=F.fields)===null||U===void 0?void 0:U.exchange,D;if(B._config.useLinksForConsume){let N=V?($=u0.trace.getSpan(V))===null||$===void 0?void 0:$.spanContext():void 0;if(V=void 0,N)D=[{context:N}]}let L=B.tracer.startSpan(`${J} process`,{kind:u0.SpanKind.CONSUMER,attributes:Object.assign(Object.assign({},(E=G===null||G===void 0?void 0:G.connection)===null||E===void 0?void 0:E[r0.CONNECTION_ATTRIBUTES]),{[Q8.SEMATTRS_MESSAGING_DESTINATION]:H,[Q8.SEMATTRS_MESSAGING_DESTINATION_KIND]:Q8.MESSAGINGDESTINATIONKINDVALUES_TOPIC,[Q8.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY]:(K=F.fields)===null||K===void 0?void 0:K.routingKey,[Q8.SEMATTRS_MESSAGING_OPERATION]:Q8.MESSAGINGOPERATIONVALUES_PROCESS,[Q8.SEMATTRS_MESSAGING_MESSAGE_ID]:F===null||F===void 0?void 0:F.properties.messageId,[Q8.SEMATTRS_MESSAGING_CONVERSATION_ID]:F===null||F===void 0?void 0:F.properties.correlationId}),links:D},V),{consumeHook:z}=B.getConfig();if(z)(0,fB.safeExecuteInTheMiddle)(()=>z(L,{moduleVersion:A,msg:F}),(N)=>{if(N)u0.diag.error("amqplib instrumentation: consumerHook error",N)},!0);if(!(X===null||X===void 0?void 0:X.noAck))G[r0.CHANNEL_SPANS_NOT_ENDED].push({msg:F,timeOfConsume:(0,xT.hrTime)()}),F[r0.MESSAGE_STORED_SPAN]=L;let M=V?V:u0.ROOT_CONTEXT;if(u0.context.with(u0.trace.setSpan(M,L),()=>{C.call(this,F)}),X===null||X===void 0?void 0:X.noAck)B.callConsumeEndHook(L,F,!1,M9.EndOperation.AutoAck),L.end()};return arguments[1]=W,Q.apply(this,arguments)}}getConfirmedPublishPatch(A,Q){let B=this;return function(J,C,X,G,W){let F=this,{span:Z,modifiedOptions:U}=B.createPublishSpan(B,J,C,F,G),{publishHook:$}=B.getConfig();if($)(0,fB.safeExecuteInTheMiddle)(()=>$(Z,{moduleVersion:A,exchange:J,routingKey:C,content:X,options:U,isConfirmChannel:!0}),(V)=>{if(V)u0.diag.error("amqplib instrumentation: publishHook error",V)},!0);let E=function(V,H){try{W===null||W===void 0||W.call(this,V,H)}finally{let{publishConfirmHook:D}=B.getConfig();if(D)(0,fB.safeExecuteInTheMiddle)(()=>D(Z,{moduleVersion:A,exchange:J,routingKey:C,content:X,options:G,isConfirmChannel:!0,confirmError:V}),(L)=>{if(L)u0.diag.error("amqplib instrumentation: publishConfirmHook error",L)},!0);if(V)Z.setStatus({code:u0.SpanStatusCode.ERROR,message:"message confirmation has been nack'ed"});Z.end()}},K=(0,r0.markConfirmChannelTracing)(u0.context.active()),I=[...arguments];return I[3]=U,I[4]=u0.context.bind((0,r0.unmarkConfirmChannelTracing)(u0.trace.setSpan(K,Z)),E),u0.context.with(K,Q.bind(this,...I))}}getPublishPatch(A,Q){let B=this;return function(J,C,X,G){if((0,r0.isConfirmChannelTracing)(u0.context.active()))return Q.apply(this,arguments);else{let W=this,{span:F,modifiedOptions:Z}=B.createPublishSpan(B,J,C,W,G),{publishHook:U}=B.getConfig();if(U)(0,fB.safeExecuteInTheMiddle)(()=>U(F,{moduleVersion:A,exchange:J,routingKey:C,content:X,options:Z,isConfirmChannel:!1}),(K)=>{if(K)u0.diag.error("amqplib instrumentation: publishHook error",K)},!0);let $=[...arguments];$[3]=Z;let E=Q.apply(this,$);return F.end(),E}}}createPublishSpan(A,Q,B,Y,J){var C;let X=(0,r0.normalizeExchange)(Q),G=A.tracer.startSpan(`publish ${X}`,{kind:u0.SpanKind.PRODUCER,attributes:Object.assign(Object.assign({},Y.connection[r0.CONNECTION_ATTRIBUTES]),{[Q8.SEMATTRS_MESSAGING_DESTINATION]:Q,[Q8.SEMATTRS_MESSAGING_DESTINATION_KIND]:Q8.MESSAGINGDESTINATIONKINDVALUES_TOPIC,[Q8.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY]:B,[Q8.SEMATTRS_MESSAGING_MESSAGE_ID]:J===null||J===void 0?void 0:J.messageId,[Q8.SEMATTRS_MESSAGING_CONVERSATION_ID]:J===null||J===void 0?void 0:J.correlationId})}),W=J!==null&&J!==void 0?J:{};return W.headers=(C=W.headers)!==null&&C!==void 0?C:{},u0.propagation.inject(u0.trace.setSpan(u0.context.active(),G),W.headers),{span:G,modifiedOptions:W}}endConsumerSpan(A,Q,B,Y){let J=A[r0.MESSAGE_STORED_SPAN];if(!J)return;if(Q!==!1)J.setStatus({code:u0.SpanStatusCode.ERROR,message:B!==M9.EndOperation.ChannelClosed&&B!==M9.EndOperation.ChannelError?`${B} called on message${Y===!0?" with requeue":Y===!1?" without requeue":""}`:B});this.callConsumeEndHook(J,A,Q,B),J.end(),A[r0.MESSAGE_STORED_SPAN]=void 0}endAllSpansOnChannel(A,Q,B,Y){var J;((J=A[r0.CHANNEL_SPANS_NOT_ENDED])!==null&&J!==void 0?J:[]).forEach((X)=>{this.endConsumerSpan(X.msg,Q,B,Y)}),A[r0.CHANNEL_SPANS_NOT_ENDED]=[]}callConsumeEndHook(A,Q,B,Y){let{consumeEndHook:J}=this.getConfig();if(!J)return;(0,fB.safeExecuteInTheMiddle)(()=>J(A,{msg:Q,rejected:B,endOperation:Y}),(C)=>{if(C)u0.diag.error("amqplib instrumentation: consumerEndHook error",C)},!0)}checkConsumeTimeoutOnChannel(A){var Q;let B=(0,xT.hrTime)(),Y=(Q=A[r0.CHANNEL_SPANS_NOT_ENDED])!==null&&Q!==void 0?Q:[],J,{consumeTimeoutMs:C}=this.getConfig();for(J=0;J{var jR0=oW&&oW.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),YqQ=oW&&oW.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))jR0(Q,A,B)};Object.defineProperty(oW,"__esModule",{value:!0});YqQ(BqQ(),oW);YqQ(ms(),oW)});var is=R((UqQ)=>{Object.defineProperty(UqQ,"__esModule",{value:!0});UqQ.AbstractAsyncHooksContextManager=void 0;var fR0=u("events"),bR0=["addListener","on","once","prependListener","prependOnceListener"];class $qQ{constructor(){this._kOtListeners=Symbol("OtListeners"),this._wrapped=!1}bind(A,Q){if(Q instanceof fR0.EventEmitter)return this._bindEventEmitter(A,Q);if(typeof Q==="function")return this._bindFunction(A,Q);return Q}_bindFunction(A,Q){let B=this,Y=function(...J){return B.with(A,()=>Q.apply(this,J))};return Object.defineProperty(Y,"length",{enumerable:!1,configurable:!0,writable:!1,value:Q.length}),Y}_bindEventEmitter(A,Q){if(this._getPatchMap(Q)!==void 0)return Q;if(this._createPatchMap(Q),bR0.forEach((Y)=>{if(Q[Y]===void 0)return;Q[Y]=this._patchAddListener(Q,Q[Y],A)}),typeof Q.removeListener==="function")Q.removeListener=this._patchRemoveListener(Q,Q.removeListener);if(typeof Q.off==="function")Q.off=this._patchRemoveListener(Q,Q.off);if(typeof Q.removeAllListeners==="function")Q.removeAllListeners=this._patchRemoveAllListeners(Q,Q.removeAllListeners);return Q}_patchRemoveListener(A,Q){let B=this;return function(Y,J){var C;let X=(C=B._getPatchMap(A))===null||C===void 0?void 0:C[Y];if(X===void 0)return Q.call(this,Y,J);let G=X.get(J);return Q.call(this,Y,G||J)}}_patchRemoveAllListeners(A,Q){let B=this;return function(Y){let J=B._getPatchMap(A);if(J!==void 0){if(arguments.length===0)B._createPatchMap(A);else if(J[Y]!==void 0)delete J[Y]}return Q.apply(this,arguments)}}_patchAddListener(A,Q,B){let Y=this;return function(J,C){if(Y._wrapped)return Q.call(this,J,C);let X=Y._getPatchMap(A);if(X===void 0)X=Y._createPatchMap(A);let G=X[J];if(G===void 0)G=new WeakMap,X[J]=G;let W=Y.bind(B,C);G.set(C,W),Y._wrapped=!0;try{return Q.call(this,J,W)}finally{Y._wrapped=!1}}}_createPatchMap(A){let Q=Object.create(null);return A[this._kOtListeners]=Q,Q}_getPatchMap(A){return A[this._kOtListeners]}}UqQ.AbstractAsyncHooksContextManager=$qQ});var HqQ=R((VqQ)=>{Object.defineProperty(VqQ,"__esModule",{value:!0});VqQ.AsyncHooksContextManager=void 0;var mR0=yA(),uR0=u("async_hooks"),dR0=is();class KqQ extends dR0.AbstractAsyncHooksContextManager{constructor(){super();this._contexts=new Map,this._stack=[],this._asyncHook=uR0.createHook({init:this._init.bind(this),before:this._before.bind(this),after:this._after.bind(this),destroy:this._destroy.bind(this),promiseResolve:this._destroy.bind(this)})}active(){var A;return(A=this._stack[this._stack.length-1])!==null&&A!==void 0?A:mR0.ROOT_CONTEXT}with(A,Q,B,...Y){this._enterContext(A);try{return Q.call(B,...Y)}finally{this._exitContext()}}enable(){return this._asyncHook.enable(),this}disable(){return this._asyncHook.disable(),this._contexts.clear(),this._stack=[],this}_init(A,Q){if(Q==="TIMERWRAP")return;let B=this._stack[this._stack.length-1];if(B!==void 0)this._contexts.set(A,B)}_destroy(A){this._contexts.delete(A)}_before(A){let Q=this._contexts.get(A);if(Q!==void 0)this._enterContext(Q)}_after(){this._exitContext()}_enterContext(A){this._stack.push(A)}_exitContext(){this._stack.pop()}}VqQ.AsyncHooksContextManager=KqQ});var qqQ=R((NqQ)=>{Object.defineProperty(NqQ,"__esModule",{value:!0});NqQ.AsyncLocalStorageContextManager=void 0;var cR0=yA(),lR0=u("async_hooks"),pR0=is();class DqQ extends pR0.AbstractAsyncHooksContextManager{constructor(){super();this._asyncLocalStorage=new lR0.AsyncLocalStorage}active(){var A;return(A=this._asyncLocalStorage.getStore())!==null&&A!==void 0?A:cR0.ROOT_CONTEXT}with(A,Q,B,...Y){let J=B==null?Q:Q.bind(B);return this._asyncLocalStorage.run(A,J,...Y)}enable(){return this}disable(){return this._asyncLocalStorage.disable(),this}}NqQ.AsyncLocalStorageContextManager=DqQ});var MqQ=R((cT)=>{Object.defineProperty(cT,"__esModule",{value:!0});cT.AsyncLocalStorageContextManager=cT.AsyncHooksContextManager=void 0;var iR0=HqQ();Object.defineProperty(cT,"AsyncHooksContextManager",{enumerable:!0,get:function(){return iR0.AsyncHooksContextManager}});var nR0=qqQ();Object.defineProperty(cT,"AsyncLocalStorageContextManager",{enumerable:!0,get:function(){return nR0.AsyncLocalStorageContextManager}})});var B0=R((MsY,lqQ)=>{lqQ.exports={kClose:Symbol("close"),kDestroy:Symbol("destroy"),kDispatch:Symbol("dispatch"),kUrl:Symbol("url"),kWriting:Symbol("writing"),kResuming:Symbol("resuming"),kQueue:Symbol("queue"),kConnect:Symbol("connect"),kConnecting:Symbol("connecting"),kKeepAliveDefaultTimeout:Symbol("default keep alive timeout"),kKeepAliveMaxTimeout:Symbol("max keep alive timeout"),kKeepAliveTimeoutThreshold:Symbol("keep alive timeout threshold"),kKeepAliveTimeoutValue:Symbol("keep alive timeout"),kKeepAlive:Symbol("keep alive"),kHeadersTimeout:Symbol("headers timeout"),kBodyTimeout:Symbol("body timeout"),kServerName:Symbol("server name"),kLocalAddress:Symbol("local address"),kHost:Symbol("host"),kNoRef:Symbol("no ref"),kBodyUsed:Symbol("used"),kBody:Symbol("abstracted request body"),kRunning:Symbol("running"),kBlocking:Symbol("blocking"),kPending:Symbol("pending"),kSize:Symbol("size"),kBusy:Symbol("busy"),kQueued:Symbol("queued"),kFree:Symbol("free"),kConnected:Symbol("connected"),kClosed:Symbol("closed"),kNeedDrain:Symbol("need drain"),kReset:Symbol("reset"),kDestroyed:Symbol.for("nodejs.stream.destroyed"),kResume:Symbol("resume"),kOnError:Symbol("on error"),kMaxHeadersSize:Symbol("max headers size"),kRunningIdx:Symbol("running index"),kPendingIdx:Symbol("pending index"),kError:Symbol("error"),kClients:Symbol("clients"),kClient:Symbol("client"),kParser:Symbol("parser"),kOnDestroyed:Symbol("destroy callbacks"),kPipelining:Symbol("pipelining"),kSocket:Symbol("socket"),kHostHeader:Symbol("host header"),kConnector:Symbol("connector"),kStrictContentLength:Symbol("strict content length"),kMaxRedirections:Symbol("maxRedirections"),kMaxRequests:Symbol("maxRequestsPerClient"),kProxy:Symbol("proxy agent options"),kCounter:Symbol("socket request counter"),kMaxResponseSize:Symbol("max response size"),kHTTP2Session:Symbol("http2Session"),kHTTP2SessionState:Symbol("http2Session state"),kRetryHandlerDefaultRetry:Symbol("retry agent default retry"),kConstruct:Symbol("constructable"),kListeners:Symbol("listeners"),kHTTPContext:Symbol("http context"),kMaxConcurrentStreams:Symbol("max concurrent streams"),kNoProxyAgent:Symbol("no proxy agent"),kHttpProxyAgent:Symbol("http proxy agent"),kHttpsProxyAgent:Symbol("https proxy agent")}});var Fr=R((zsY,sqQ)=>{var cK=0,Br=1000,Yr=(Br>>1)-1,tW,Jr=Symbol("kFastTimer"),kG=[],Cr=-2,Xr=-1,iqQ=0,pqQ=1;function Gr(){cK+=Yr;let A=0,Q=kG.length;while(A=B._idleStart+B._idleTimeout)B._state=Xr,B._idleStart=-1,B._onTimeout(B._timerArg);if(B._state===Xr){if(B._state=Cr,--Q!==0)kG[A]=kG[Q]}else++A}if(kG.length=Q,kG.length!==0)nqQ()}function nqQ(){if(tW?.refresh)tW.refresh();else clearTimeout(tW),tW=setTimeout(Gr,Yr),tW?.unref()}class Wr{[Jr]=!0;_state=Cr;_idleTimeout=-1;_idleStart=-1;_onTimeout;_timerArg;constructor(A,Q,B){this._onTimeout=A,this._idleTimeout=Q,this._timerArg=B,this.refresh()}refresh(){if(this._state===Cr)kG.push(this);if(!tW||kG.length===1)nqQ();this._state=iqQ}clear(){this._state=Xr,this._idleStart=-1}}sqQ.exports={setTimeout(A,Q,B){return Q<=Br?setTimeout(A,Q,B):new Wr(A,Q,B)},clearTimeout(A){if(A[Jr])A.clear();else clearTimeout(A)},setFastTimeout(A,Q,B){return new Wr(A,Q,B)},clearFastTimeout(A){A.clear()},now(){return cK},tick(A=0){cK+=A-Br+1,Gr(),Gr()},reset(){cK=0,kG.length=0,clearTimeout(tW),tW=null},kFastTimer:Jr}});var QB=R((RsY,bMQ)=>{var rqQ=Symbol.for("undici.error.UND_ERR");class a0 extends Error{constructor(A,Q){super(A,Q);this.name="UndiciError",this.code="UND_ERR"}static[Symbol.hasInstance](A){return A&&A[rqQ]===!0}get[rqQ](){return!0}}var aqQ=Symbol.for("undici.error.UND_ERR_CONNECT_TIMEOUT");class DMQ extends a0{constructor(A){super(A);this.name="ConnectTimeoutError",this.message=A||"Connect Timeout Error",this.code="UND_ERR_CONNECT_TIMEOUT"}static[Symbol.hasInstance](A){return A&&A[aqQ]===!0}get[aqQ](){return!0}}var oqQ=Symbol.for("undici.error.UND_ERR_HEADERS_TIMEOUT");class NMQ extends a0{constructor(A){super(A);this.name="HeadersTimeoutError",this.message=A||"Headers Timeout Error",this.code="UND_ERR_HEADERS_TIMEOUT"}static[Symbol.hasInstance](A){return A&&A[oqQ]===!0}get[oqQ](){return!0}}var tqQ=Symbol.for("undici.error.UND_ERR_HEADERS_OVERFLOW");class LMQ extends a0{constructor(A){super(A);this.name="HeadersOverflowError",this.message=A||"Headers Overflow Error",this.code="UND_ERR_HEADERS_OVERFLOW"}static[Symbol.hasInstance](A){return A&&A[tqQ]===!0}get[tqQ](){return!0}}var eqQ=Symbol.for("undici.error.UND_ERR_BODY_TIMEOUT");class qMQ extends a0{constructor(A){super(A);this.name="BodyTimeoutError",this.message=A||"Body Timeout Error",this.code="UND_ERR_BODY_TIMEOUT"}static[Symbol.hasInstance](A){return A&&A[eqQ]===!0}get[eqQ](){return!0}}var AMQ=Symbol.for("undici.error.UND_ERR_INVALID_ARG");class MMQ extends a0{constructor(A){super(A);this.name="InvalidArgumentError",this.message=A||"Invalid Argument Error",this.code="UND_ERR_INVALID_ARG"}static[Symbol.hasInstance](A){return A&&A[AMQ]===!0}get[AMQ](){return!0}}var QMQ=Symbol.for("undici.error.UND_ERR_INVALID_RETURN_VALUE");class zMQ extends a0{constructor(A){super(A);this.name="InvalidReturnValueError",this.message=A||"Invalid Return Value Error",this.code="UND_ERR_INVALID_RETURN_VALUE"}static[Symbol.hasInstance](A){return A&&A[QMQ]===!0}get[QMQ](){return!0}}var BMQ=Symbol.for("undici.error.UND_ERR_ABORT");class Zr extends a0{constructor(A){super(A);this.name="AbortError",this.message=A||"The operation was aborted",this.code="UND_ERR_ABORT"}static[Symbol.hasInstance](A){return A&&A[BMQ]===!0}get[BMQ](){return!0}}var YMQ=Symbol.for("undici.error.UND_ERR_ABORTED");class RMQ extends Zr{constructor(A){super(A);this.name="AbortError",this.message=A||"Request aborted",this.code="UND_ERR_ABORTED"}static[Symbol.hasInstance](A){return A&&A[YMQ]===!0}get[YMQ](){return!0}}var JMQ=Symbol.for("undici.error.UND_ERR_INFO");class wMQ extends a0{constructor(A){super(A);this.name="InformationalError",this.message=A||"Request information",this.code="UND_ERR_INFO"}static[Symbol.hasInstance](A){return A&&A[JMQ]===!0}get[JMQ](){return!0}}var CMQ=Symbol.for("undici.error.UND_ERR_REQ_CONTENT_LENGTH_MISMATCH");class jMQ extends a0{constructor(A){super(A);this.name="RequestContentLengthMismatchError",this.message=A||"Request body length does not match content-length header",this.code="UND_ERR_REQ_CONTENT_LENGTH_MISMATCH"}static[Symbol.hasInstance](A){return A&&A[CMQ]===!0}get[CMQ](){return!0}}var XMQ=Symbol.for("undici.error.UND_ERR_RES_CONTENT_LENGTH_MISMATCH");class OMQ extends a0{constructor(A){super(A);this.name="ResponseContentLengthMismatchError",this.message=A||"Response body length does not match content-length header",this.code="UND_ERR_RES_CONTENT_LENGTH_MISMATCH"}static[Symbol.hasInstance](A){return A&&A[XMQ]===!0}get[XMQ](){return!0}}var GMQ=Symbol.for("undici.error.UND_ERR_DESTROYED");class PMQ extends a0{constructor(A){super(A);this.name="ClientDestroyedError",this.message=A||"The client is destroyed",this.code="UND_ERR_DESTROYED"}static[Symbol.hasInstance](A){return A&&A[GMQ]===!0}get[GMQ](){return!0}}var WMQ=Symbol.for("undici.error.UND_ERR_CLOSED");class TMQ extends a0{constructor(A){super(A);this.name="ClientClosedError",this.message=A||"The client is closed",this.code="UND_ERR_CLOSED"}static[Symbol.hasInstance](A){return A&&A[WMQ]===!0}get[WMQ](){return!0}}var FMQ=Symbol.for("undici.error.UND_ERR_SOCKET");class SMQ extends a0{constructor(A,Q){super(A);this.name="SocketError",this.message=A||"Socket error",this.code="UND_ERR_SOCKET",this.socket=Q}static[Symbol.hasInstance](A){return A&&A[FMQ]===!0}get[FMQ](){return!0}}var ZMQ=Symbol.for("undici.error.UND_ERR_NOT_SUPPORTED");class kMQ extends a0{constructor(A){super(A);this.name="NotSupportedError",this.message=A||"Not supported error",this.code="UND_ERR_NOT_SUPPORTED"}static[Symbol.hasInstance](A){return A&&A[ZMQ]===!0}get[ZMQ](){return!0}}var $MQ=Symbol.for("undici.error.UND_ERR_BPL_MISSING_UPSTREAM");class _MQ extends a0{constructor(A){super(A);this.name="MissingUpstreamError",this.message=A||"No upstream has been added to the BalancedPool",this.code="UND_ERR_BPL_MISSING_UPSTREAM"}static[Symbol.hasInstance](A){return A&&A[$MQ]===!0}get[$MQ](){return!0}}var UMQ=Symbol.for("undici.error.UND_ERR_HTTP_PARSER");class vMQ extends Error{constructor(A,Q,B){super(A);this.name="HTTPParserError",this.code=Q?`HPE_${Q}`:void 0,this.data=B?B.toString():void 0}static[Symbol.hasInstance](A){return A&&A[UMQ]===!0}get[UMQ](){return!0}}var EMQ=Symbol.for("undici.error.UND_ERR_RES_EXCEEDED_MAX_SIZE");class yMQ extends a0{constructor(A){super(A);this.name="ResponseExceededMaxSizeError",this.message=A||"Response content exceeded max size",this.code="UND_ERR_RES_EXCEEDED_MAX_SIZE"}static[Symbol.hasInstance](A){return A&&A[EMQ]===!0}get[EMQ](){return!0}}var KMQ=Symbol.for("undici.error.UND_ERR_REQ_RETRY");class gMQ extends a0{constructor(A,Q,{headers:B,data:Y}){super(A);this.name="RequestRetryError",this.message=A||"Request retry error",this.code="UND_ERR_REQ_RETRY",this.statusCode=Q,this.data=Y,this.headers=B}static[Symbol.hasInstance](A){return A&&A[KMQ]===!0}get[KMQ](){return!0}}var VMQ=Symbol.for("undici.error.UND_ERR_RESPONSE");class hMQ extends a0{constructor(A,Q,{headers:B,body:Y}){super(A);this.name="ResponseError",this.message=A||"Response error",this.code="UND_ERR_RESPONSE",this.statusCode=Q,this.body=Y,this.headers=B}static[Symbol.hasInstance](A){return A&&A[VMQ]===!0}get[VMQ](){return!0}}var IMQ=Symbol.for("undici.error.UND_ERR_PRX_TLS");class xMQ extends a0{constructor(A,Q,B={}){super(Q,{cause:A,...B});this.name="SecureProxyConnectionError",this.message=Q||"Secure Proxy Connection failed",this.code="UND_ERR_PRX_TLS",this.cause=A}static[Symbol.hasInstance](A){return A&&A[IMQ]===!0}get[IMQ](){return!0}}var HMQ=Symbol.for("undici.error.UND_ERR_MAX_ORIGINS_REACHED");class fMQ extends a0{constructor(A){super(A);this.name="MaxOriginsReachedError",this.message=A||"Maximum allowed origins reached",this.code="UND_ERR_MAX_ORIGINS_REACHED"}static[Symbol.hasInstance](A){return A&&A[HMQ]===!0}get[HMQ](){return!0}}bMQ.exports={AbortError:Zr,HTTPParserError:vMQ,UndiciError:a0,HeadersTimeoutError:NMQ,HeadersOverflowError:LMQ,BodyTimeoutError:qMQ,RequestContentLengthMismatchError:jMQ,ConnectTimeoutError:DMQ,InvalidArgumentError:MMQ,InvalidReturnValueError:zMQ,RequestAbortedError:RMQ,ClientDestroyedError:PMQ,ClientClosedError:TMQ,InformationalError:wMQ,SocketError:SMQ,NotSupportedError:kMQ,ResponseContentLengthMismatchError:OMQ,BalancedPoolMissingUpstreamError:_MQ,ResponseExceededMaxSizeError:yMQ,RequestRetryError:gMQ,ResponseError:hMQ,SecureProxyConnectionError:xMQ,MaxOriginsReachedError:fMQ}});var BS=R((wsY,uMQ)=>{var $r=["Accept","Accept-Encoding","Accept-Language","Accept-Ranges","Access-Control-Allow-Credentials","Access-Control-Allow-Headers","Access-Control-Allow-Methods","Access-Control-Allow-Origin","Access-Control-Expose-Headers","Access-Control-Max-Age","Access-Control-Request-Headers","Access-Control-Request-Method","Age","Allow","Alt-Svc","Alt-Used","Authorization","Cache-Control","Clear-Site-Data","Connection","Content-Disposition","Content-Encoding","Content-Language","Content-Length","Content-Location","Content-Range","Content-Security-Policy","Content-Security-Policy-Report-Only","Content-Type","Cookie","Cross-Origin-Embedder-Policy","Cross-Origin-Opener-Policy","Cross-Origin-Resource-Policy","Date","Device-Memory","Downlink","ECT","ETag","Expect","Expect-CT","Expires","Forwarded","From","Host","If-Match","If-Modified-Since","If-None-Match","If-Range","If-Unmodified-Since","Keep-Alive","Last-Modified","Link","Location","Max-Forwards","Origin","Permissions-Policy","Pragma","Proxy-Authenticate","Proxy-Authorization","RTT","Range","Referer","Referrer-Policy","Refresh","Retry-After","Sec-WebSocket-Accept","Sec-WebSocket-Extensions","Sec-WebSocket-Key","Sec-WebSocket-Protocol","Sec-WebSocket-Version","Server","Server-Timing","Service-Worker-Allowed","Service-Worker-Navigation-Preload","Set-Cookie","SourceMap","Strict-Transport-Security","Supports-Loading-Mode","TE","Timing-Allow-Origin","Trailer","Transfer-Encoding","Upgrade","Upgrade-Insecure-Requests","User-Agent","Vary","Via","WWW-Authenticate","X-Content-Type-Options","X-DNS-Prefetch-Control","X-Frame-Options","X-Permitted-Cross-Domain-Policies","X-Powered-By","X-Requested-With","X-XSS-Protection"],QS={};Object.setPrototypeOf(QS,null);var mMQ={};Object.setPrototypeOf(mMQ,null);function Mw0(A){let Q=mMQ[A];if(Q===void 0)Q=Buffer.from(A);return Q}for(let A=0;A<$r.length;++A){let Q=$r[A],B=Q.toLowerCase();QS[Q]=QS[B]=B}uMQ.exports={wellknownHeaderNames:$r,headerNameLowerCasedRecord:QS,getHeaderNameAsBuffer:Mw0}});var pMQ=R((jsY,lMQ)=>{var{wellknownHeaderNames:dMQ,headerNameLowerCasedRecord:zw0}=BS();class lK{value=null;left=null;middle=null;right=null;code;constructor(A,Q,B){if(B===void 0||B>=A.length)throw TypeError("Unreachable");if((this.code=A.charCodeAt(B))>127)throw TypeError("key must be ascii string");if(A.length!==++B)this.middle=new lK(A,Q,B);else this.value=Q}add(A,Q){let B=A.length;if(B===0)throw TypeError("Unreachable");let Y=0,J=this;while(!0){let C=A.charCodeAt(Y);if(C>127)throw TypeError("key must be ascii string");if(J.code===C)if(B===++Y){J.value=Q;break}else if(J.middle!==null)J=J.middle;else{J.middle=new lK(A,Q,Y);break}else if(J.code=65)J|=32;while(Y!==null){if(J===Y.code){if(Q===++B)return Y;Y=Y.middle;break}Y=Y.code{var Wq=u("node:assert"),{kDestroyed:rMQ,kBodyUsed:pK,kListeners:JS,kBody:iMQ}=B0(),{IncomingMessage:Rw0}=u("node:http"),aMQ=u("node:stream"),ww0=u("node:net"),{stringify:jw0}=u("node:querystring"),{EventEmitter:Ow0}=u("node:events"),YS=Fr(),{InvalidArgumentError:oY,ConnectTimeoutError:Pw0}=QB(),{headerNameLowerCasedRecord:Tw0}=BS(),{tree:oMQ}=pMQ(),[Sw0,kw0]=process.versions.node.split(".",2).map((A)=>Number(A));class Er{constructor(A){this[iMQ]=A,this[pK]=!1}async*[Symbol.asyncIterator](){Wq(!this[pK],"disturbed"),this[pK]=!0,yield*this[iMQ]}}function nMQ(){}function _w0(A){if(XS(A)){if(YzQ(A)===0)A.on("data",function(){Wq(!1)});if(typeof A.readableDidRead!=="boolean")A[pK]=!1,Ow0.prototype.on.call(A,"data",function(){this[pK]=!0});return A}else if(A&&typeof A.pipeTo==="function")return new Er(A);else if(A&&typeof A!=="string"&&!ArrayBuffer.isView(A)&&BzQ(A))return new Er(A);else return A}function XS(A){return A&&typeof A==="object"&&typeof A.pipe==="function"&&typeof A.on==="function"}function tMQ(A){if(A===null)return!1;else if(A instanceof Blob)return!0;else if(typeof A!=="object")return!1;else{let Q=A[Symbol.toStringTag];return(Q==="Blob"||Q==="File")&&(("stream"in A)&&typeof A.stream==="function"||("arrayBuffer"in A)&&typeof A.arrayBuffer==="function")}}function eMQ(A){return A.includes("?")||A.includes("#")}function vw0(A,Q){if(eMQ(A))throw Error('Query params cannot be passed when url already contains "?" or "#".');let B=jw0(Q);if(B)A+="?"+B;return A}function AzQ(A){let Q=parseInt(A,10);return Q===Number(A)&&Q>=0&&Q<=65535}function CS(A){return A!=null&&A[0]==="h"&&A[1]==="t"&&A[2]==="t"&&A[3]==="p"&&(A[4]===":"||A[4]==="s"&&A[5]===":")}function QzQ(A){if(typeof A==="string"){if(A=new URL(A),!CS(A.origin||A.protocol))throw new oY("Invalid URL protocol: the URL must start with `http:` or `https:`.");return A}if(!A||typeof A!=="object")throw new oY("Invalid URL: The URL argument must be a non-null object.");if(!(A instanceof URL)){if(A.port!=null&&A.port!==""&&AzQ(A.port)===!1)throw new oY("Invalid URL: port must be a valid integer or a string representation of an integer.");if(A.path!=null&&typeof A.path!=="string")throw new oY("Invalid URL path: the path must be a string or null/undefined.");if(A.pathname!=null&&typeof A.pathname!=="string")throw new oY("Invalid URL pathname: the pathname must be a string or null/undefined.");if(A.hostname!=null&&typeof A.hostname!=="string")throw new oY("Invalid URL hostname: the hostname must be a string or null/undefined.");if(A.origin!=null&&typeof A.origin!=="string")throw new oY("Invalid URL origin: the origin must be a string or null/undefined.");if(!CS(A.origin||A.protocol))throw new oY("Invalid URL protocol: the URL must start with `http:` or `https:`.");let Q=A.port!=null?A.port:A.protocol==="https:"?443:80,B=A.origin!=null?A.origin:`${A.protocol||""}//${A.hostname||""}:${Q}`,Y=A.path!=null?A.path:`${A.pathname||""}${A.search||""}`;if(B[B.length-1]==="/")B=B.slice(0,B.length-1);if(Y&&Y[0]!=="/")Y=`/${Y}`;return new URL(`${B}${Y}`)}if(!CS(A.origin||A.protocol))throw new oY("Invalid URL protocol: the URL must start with `http:` or `https:`.");return A}function yw0(A){if(A=QzQ(A),A.pathname!=="/"||A.search||A.hash)throw new oY("invalid url");return A}function gw0(A){if(A[0]==="["){let B=A.indexOf("]");return Wq(B!==-1),A.substring(1,B)}let Q=A.indexOf(":");if(Q===-1)return A;return A.substring(0,Q)}function hw0(A){if(!A)return null;Wq(typeof A==="string");let Q=gw0(A);if(ww0.isIP(Q))return"";return Q}function xw0(A){return JSON.parse(JSON.stringify(A))}function fw0(A){return A!=null&&typeof A[Symbol.asyncIterator]==="function"}function BzQ(A){return A!=null&&(typeof A[Symbol.iterator]==="function"||typeof A[Symbol.asyncIterator]==="function")}function YzQ(A){if(A==null)return 0;else if(XS(A)){let Q=A._readableState;return Q&&Q.objectMode===!1&&Q.ended===!0&&Number.isFinite(Q.length)?Q.length:null}else if(tMQ(A))return A.size!=null?A.size:null;else if(GzQ(A))return A.byteLength;return null}function JzQ(A){return A&&!!(A.destroyed||A[rMQ]||aMQ.isDestroyed?.(A))}function CzQ(A,Q){if(A==null||!XS(A)||JzQ(A))return;if(typeof A.destroy==="function"){if(Object.getPrototypeOf(A).constructor===Rw0)A.socket=null;A.destroy(Q)}else if(Q)queueMicrotask(()=>{A.emit("error",Q)});if(A.destroyed!==!0)A[rMQ]=!0}var bw0=/timeout=(\d+)/;function mw0(A){let Q=A.match(bw0);return Q?parseInt(Q[1],10)*1000:null}function XzQ(A){return typeof A==="string"?Tw0[A]??A.toLowerCase():oMQ.lookup(A)??A.toString("latin1").toLowerCase()}function uw0(A){return oMQ.lookup(A)??A.toString("latin1").toLowerCase()}function dw0(A,Q){if(Q===void 0)Q={};for(let B=0;BX.toString("utf8")):C.toString("utf8")}}if("content-length"in Q&&"content-disposition"in Q)Q["content-disposition"]=Buffer.from(Q["content-disposition"]).toString("latin1");return Q}function cw0(A){let Q=A.length,B=Array(Q),Y=!1,J=-1,C,X,G=0;for(let W=0;WBuffer.from(Q))}function GzQ(A){return A instanceof Uint8Array||Buffer.isBuffer(A)}function pw0(A,Q,B){if(!A||typeof A!=="object")throw new oY("handler must be an object");if(typeof A.onRequestStart==="function")return;if(typeof A.onConnect!=="function")throw new oY("invalid onConnect method");if(typeof A.onError!=="function")throw new oY("invalid onError method");if(typeof A.onBodySent!=="function"&&A.onBodySent!==void 0)throw new oY("invalid onBodySent method");if(B||Q==="CONNECT"){if(typeof A.onUpgrade!=="function")throw new oY("invalid onUpgrade method")}else{if(typeof A.onHeaders!=="function")throw new oY("invalid onHeaders method");if(typeof A.onData!=="function")throw new oY("invalid onData method");if(typeof A.onComplete!=="function")throw new oY("invalid onComplete method")}}function iw0(A){return!!(A&&(aMQ.isDisturbed(A)||A[pK]))}function nw0(A){return{localAddress:A.localAddress,localPort:A.localPort,remoteAddress:A.remoteAddress,remotePort:A.remotePort,remoteFamily:A.remoteFamily,timeout:A.timeout,bytesWritten:A.bytesWritten,bytesRead:A.bytesRead}}function sw0(A){let Q;return new ReadableStream({start(){Q=A[Symbol.asyncIterator]()},pull(B){return Q.next().then(({done:Y,value:J})=>{if(Y)queueMicrotask(()=>{B.close(),B.byobRequest?.respond(0)});else{let C=Buffer.isBuffer(J)?J:Buffer.from(J);if(C.byteLength)B.enqueue(new Uint8Array(C));else return this.pull(B)}})},cancel(){return Q.return()},type:"bytes"})}function rw0(A){return A&&typeof A==="object"&&typeof A.append==="function"&&typeof A.delete==="function"&&typeof A.get==="function"&&typeof A.getAll==="function"&&typeof A.has==="function"&&typeof A.set==="function"&&A[Symbol.toStringTag]==="FormData"}function aw0(A,Q){if("addEventListener"in A)return A.addEventListener("abort",Q,{once:!0}),()=>A.removeEventListener("abort",Q);return A.once("abort",Q),()=>A.removeListener("abort",Q)}function WzQ(A){switch(A){case 34:case 40:case 41:case 44:case 47:case 58:case 59:case 60:case 61:case 62:case 63:case 64:case 91:case 92:case 93:case 123:case 125:return!1;default:return A>=33&&A<=126}}function ow0(A){if(A.length===0)return!1;for(let Q=0;Q{if(!Q.timeout)return nMQ;let B=null,Y=null,J=YS.setFastTimeout(()=>{B=setImmediate(()=>{Y=setImmediate(()=>sMQ(A.deref(),Q))})},Q.timeout);return()=>{YS.clearFastTimeout(J),clearImmediate(B),clearImmediate(Y)}}:(A,Q)=>{if(!Q.timeout)return nMQ;let B=null,Y=YS.setFastTimeout(()=>{B=setImmediate(()=>{sMQ(A.deref(),Q)})},Q.timeout);return()=>{YS.clearFastTimeout(Y),clearImmediate(B)}};function sMQ(A,Q){if(A==null)return;let B="Connect Timeout Error";if(Array.isArray(A.autoSelectFamilyAttemptedAddresses))B+=` (attempted addresses: ${A.autoSelectFamilyAttemptedAddresses.join(", ")},`;else B+=` (attempted address: ${Q.hostname}:${Q.port},`;B+=` timeout: ${Q.timeout}ms)`,CzQ(A,new Pw0(B))}function Xj0(A){if(A[0]==="h"&&A[1]==="t"&&A[2]==="t"&&A[3]==="p")switch(A[4]){case":":return"http:";case"s":if(A[5]===":")return"https:"}return A.slice(0,A.indexOf(":")+1)}var FzQ=Object.create(null);FzQ.enumerable=!0;var Kr={delete:"DELETE",DELETE:"DELETE",get:"GET",GET:"GET",head:"HEAD",HEAD:"HEAD",options:"OPTIONS",OPTIONS:"OPTIONS",post:"POST",POST:"POST",put:"PUT",PUT:"PUT"},ZzQ={...Kr,patch:"patch",PATCH:"PATCH"};Object.setPrototypeOf(Kr,null);Object.setPrototypeOf(ZzQ,null);$zQ.exports={kEnumerableProperty:FzQ,isDisturbed:iw0,isBlobLike:tMQ,parseOrigin:yw0,parseURL:QzQ,getServerName:hw0,isStream:XS,isIterable:BzQ,isAsyncIterable:fw0,isDestroyed:JzQ,headerNameToString:XzQ,bufferToLowerCasedHeaderName:uw0,addListener:Bj0,removeAllListeners:Yj0,errorRequest:Jj0,parseRawHeaders:cw0,encodeRawHeaders:lw0,parseHeaders:dw0,parseKeepAliveTimeout:mw0,destroy:CzQ,bodyLength:YzQ,deepClone:xw0,ReadableStreamFrom:sw0,isBuffer:GzQ,assertRequestHandler:pw0,getSocketInfo:nw0,isFormDataLike:rw0,pathHasQueryOrFragment:eMQ,serializePathWithQuery:vw0,addAbortListener:aw0,isValidHTTPToken:ow0,isValidHeaderValue:ew0,isTokenCharCode:WzQ,parseRangeHeader:Qj0,normalizedMethodRecordsBase:Kr,normalizedMethodRecords:ZzQ,isValidPort:AzQ,isHttpOrHttpsPrefixed:CS,nodeMajor:Sw0,nodeMinor:kw0,safeHTTPMethods:Object.freeze(["GET","HEAD","OPTIONS","TRACE"]),wrapRequestBody:_w0,setupConnectTimeout:Cj0,getProtocolFromUrlString:Xj0}});var Vr=R((PsY,DzQ)=>{var{kConnected:UzQ,kPending:EzQ,kRunning:KzQ,kSize:VzQ,kFree:Gj0,kQueued:Wj0}=B0();class IzQ{constructor(A){this.connected=A[UzQ],this.pending=A[EzQ],this.running=A[KzQ],this.size=A[VzQ]}}class HzQ{constructor(A){this.connected=A[UzQ],this.free=A[Gj0],this.pending=A[EzQ],this.queued=A[Wj0],this.running=A[KzQ],this.size=A[VzQ]}}DzQ.exports={ClientStats:IzQ,PoolStats:HzQ}});var x$=R((TsY,zzQ)=>{var aB=u("node:diagnostics_channel"),Ir=u("node:util"),h$=Ir.debuglog("undici"),Fq=Ir.debuglog("fetch"),GS=Ir.debuglog("websocket"),Fj0={beforeConnect:aB.channel("undici:client:beforeConnect"),connected:aB.channel("undici:client:connected"),connectError:aB.channel("undici:client:connectError"),sendHeaders:aB.channel("undici:client:sendHeaders"),create:aB.channel("undici:request:create"),bodySent:aB.channel("undici:request:bodySent"),bodyChunkSent:aB.channel("undici:request:bodyChunkSent"),bodyChunkReceived:aB.channel("undici:request:bodyChunkReceived"),headers:aB.channel("undici:request:headers"),trailers:aB.channel("undici:request:trailers"),error:aB.channel("undici:request:error"),open:aB.channel("undici:websocket:open"),close:aB.channel("undici:websocket:close"),socketError:aB.channel("undici:websocket:socket_error"),ping:aB.channel("undici:websocket:ping"),pong:aB.channel("undici:websocket:pong")},NzQ=!1;function MzQ(A=h$){if(NzQ)return;NzQ=!0,aB.subscribe("undici:client:beforeConnect",(Q)=>{let{connectParams:{version:B,protocol:Y,port:J,host:C}}=Q;A("connecting to %s%s using %s%s",C,J?`:${J}`:"",Y,B)}),aB.subscribe("undici:client:connected",(Q)=>{let{connectParams:{version:B,protocol:Y,port:J,host:C}}=Q;A("connected to %s%s using %s%s",C,J?`:${J}`:"",Y,B)}),aB.subscribe("undici:client:connectError",(Q)=>{let{connectParams:{version:B,protocol:Y,port:J,host:C},error:X}=Q;A("connection to %s%s using %s%s errored - %s",C,J?`:${J}`:"",Y,B,X.message)}),aB.subscribe("undici:client:sendHeaders",(Q)=>{let{request:{method:B,path:Y,origin:J}}=Q;A("sending request to %s %s%s",B,J,Y)})}var LzQ=!1;function Zj0(A=h$){if(LzQ)return;LzQ=!0,aB.subscribe("undici:request:headers",(Q)=>{let{request:{method:B,path:Y,origin:J},response:{statusCode:C}}=Q;A("received response to %s %s%s - HTTP %d",B,J,Y,C)}),aB.subscribe("undici:request:trailers",(Q)=>{let{request:{method:B,path:Y,origin:J}}=Q;A("trailers received from %s %s%s",B,J,Y)}),aB.subscribe("undici:request:error",(Q)=>{let{request:{method:B,path:Y,origin:J},error:C}=Q;A("request to %s %s%s errored - %s",B,J,Y,C.message)})}var qzQ=!1;function $j0(A=GS){if(qzQ)return;qzQ=!0,aB.subscribe("undici:websocket:open",(Q)=>{let{address:{address:B,port:Y}}=Q;A("connection opened %s%s",B,Y?`:${Y}`:"")}),aB.subscribe("undici:websocket:close",(Q)=>{let{websocket:B,code:Y,reason:J}=Q;A("closed connection to %s - %s %s",B.url,Y,J)}),aB.subscribe("undici:websocket:socket_error",(Q)=>{A("connection errored - %s",Q.message)}),aB.subscribe("undici:websocket:ping",(Q)=>{A("ping received")}),aB.subscribe("undici:websocket:pong",(Q)=>{A("pong received")})}if(h$.enabled||Fq.enabled)MzQ(Fq.enabled?Fq:h$),Zj0(Fq.enabled?Fq:h$);if(GS.enabled)MzQ(h$.enabled?h$:GS),$j0(GS);zzQ.exports={channels:Fj0}});var TzQ=R((SsY,PzQ)=>{var{InvalidArgumentError:N0,NotSupportedError:Uj0}=QB(),zX=u("node:assert"),{isValidHTTPToken:jzQ,isValidHeaderValue:RzQ,isStream:Ej0,destroy:Kj0,isBuffer:Vj0,isFormDataLike:Ij0,isIterable:Hj0,isBlobLike:Dj0,serializePathWithQuery:Nj0,assertRequestHandler:Lj0,getServerName:qj0,normalizedMethodRecords:Mj0,getProtocolFromUrlString:zj0}=lQ(),{channels:B8}=x$(),{headerNameLowerCasedRecord:wzQ}=BS(),Rj0=/[^\u0021-\u00ff]/,YC=Symbol("handler");class OzQ{constructor(A,{path:Q,method:B,body:Y,headers:J,query:C,idempotent:X,blocking:G,upgrade:W,headersTimeout:F,bodyTimeout:Z,reset:U,expectContinue:$,servername:E,throwOnError:K,maxRedirections:I},V){if(typeof Q!=="string")throw new N0("path must be a string");else if(Q[0]!=="/"&&!(Q.startsWith("http://")||Q.startsWith("https://"))&&B!=="CONNECT")throw new N0("path must be an absolute URL or start with a slash");else if(Rj0.test(Q))throw new N0("invalid request path");if(typeof B!=="string")throw new N0("method must be a string");else if(Mj0[B]===void 0&&!jzQ(B))throw new N0("invalid request method");if(W&&typeof W!=="string")throw new N0("upgrade must be a string");if(F!=null&&(!Number.isFinite(F)||F<0))throw new N0("invalid headersTimeout");if(Z!=null&&(!Number.isFinite(Z)||Z<0))throw new N0("invalid bodyTimeout");if(U!=null&&typeof U!=="boolean")throw new N0("invalid reset");if($!=null&&typeof $!=="boolean")throw new N0("invalid expectContinue");if(K!=null)throw new N0("invalid throwOnError");if(I!=null&&I!==0)throw new N0("maxRedirections is not supported, use the redirect interceptor");if(this.headersTimeout=F,this.bodyTimeout=Z,this.method=B,this.abort=null,Y==null)this.body=null;else if(Ej0(Y)){this.body=Y;let H=this.body._readableState;if(!H||!H.autoDestroy)this.endHandler=function(){Kj0(this)},this.body.on("end",this.endHandler);this.errorHandler=(D)=>{if(this.abort)this.abort(D);else this.error=D},this.body.on("error",this.errorHandler)}else if(Vj0(Y))this.body=Y.byteLength?Y:null;else if(ArrayBuffer.isView(Y))this.body=Y.buffer.byteLength?Buffer.from(Y.buffer,Y.byteOffset,Y.byteLength):null;else if(Y instanceof ArrayBuffer)this.body=Y.byteLength?Buffer.from(Y):null;else if(typeof Y==="string")this.body=Y.length?Buffer.from(Y):null;else if(Ij0(Y)||Hj0(Y)||Dj0(Y))this.body=Y;else throw new N0("body must be a string, a Buffer, a Readable stream, an iterable, or an async iterable");if(this.completed=!1,this.aborted=!1,this.upgrade=W||null,this.path=C?Nj0(Q,C):Q,this.origin=A,this.protocol=zj0(A),this.idempotent=X==null?B==="HEAD"||B==="GET":X,this.blocking=G??this.method!=="HEAD",this.reset=U==null?null:U,this.host=null,this.contentLength=null,this.contentType=null,this.headers=[],this.expectContinue=$!=null?$:!1,Array.isArray(J)){if(J.length%2!==0)throw new N0("headers array must be even");for(let H=0;H{var{InvalidArgumentError:wj0}=QB();SzQ.exports=class A{#A;constructor(Q){this.#A=Q}static wrap(Q){return Q.onRequestStart?Q:new A(Q)}onConnect(Q,B){return this.#A.onConnect?.(Q,B)}onHeaders(Q,B,Y,J){return this.#A.onHeaders?.(Q,B,Y,J)}onUpgrade(Q,B,Y){return this.#A.onUpgrade?.(Q,B,Y)}onData(Q){return this.#A.onData?.(Q)}onComplete(Q){return this.#A.onComplete?.(Q)}onError(Q){if(!this.#A.onError)throw Q;return this.#A.onError?.(Q)}onRequestStart(Q,B){this.#A.onConnect?.((Y)=>Q.abort(Y),B)}onRequestUpgrade(Q,B,Y,J){let C=[];for(let[X,G]of Object.entries(Y))C.push(Buffer.from(X),Array.isArray(G)?G.map((W)=>Buffer.from(W)):Buffer.from(G));this.#A.onUpgrade?.(B,C,J)}onResponseStart(Q,B,Y,J){let C=[];for(let[X,G]of Object.entries(Y))C.push(Buffer.from(X),Array.isArray(G)?G.map((W)=>Buffer.from(W)):Buffer.from(G));if(this.#A.onHeaders?.(B,C,()=>Q.resume(),J)===!1)Q.pause()}onResponseData(Q,B){if(this.#A.onData?.(B)===!1)Q.pause()}onResponseEnd(Q,B){let Y=[];for(let[J,C]of Object.entries(B))Y.push(Buffer.from(J),Array.isArray(C)?C.map((X)=>Buffer.from(X)):Buffer.from(C));this.#A.onComplete?.(Y)}onResponseError(Q,B){if(!this.#A.onError)throw new wj0("invalid onError method");this.#A.onError?.(B)}}});var $q=R((_sY,_zQ)=>{var jj0=u("node:events"),Oj0=Zq(),Pj0=(A)=>(Q,B)=>A(Q,Oj0.wrap(B));class kzQ extends jj0{dispatch(){throw Error("not implemented")}close(){throw Error("not implemented")}destroy(){throw Error("not implemented")}compose(...A){let Q=Array.isArray(A[0])?A[0]:A,B=this.dispatch.bind(this);for(let Y of Q){if(Y==null)continue;if(typeof Y!=="function")throw TypeError(`invalid interceptor, expected function received ${typeof Y}`);if(B=Y(B),B=Pj0(B),B==null||typeof B!=="function"||B.length!==2)throw TypeError("invalid interceptor")}return new Proxy(this,{get:(Y,J)=>J==="dispatch"?B:Y[J]})}}_zQ.exports=kzQ});var gzQ=R((vsY,yzQ)=>{var{parseHeaders:Hr}=lQ(),{InvalidArgumentError:Tj0}=QB(),Dr=Symbol("resume");class vzQ{#A=!1;#Q=null;#B=!1;#Y;[Dr]=null;constructor(A){this.#Y=A}pause(){this.#A=!0}resume(){if(this.#A)this.#A=!1,this[Dr]?.()}abort(A){if(!this.#B)this.#B=!0,this.#Q=A,this.#Y(A)}get aborted(){return this.#B}get reason(){return this.#Q}get paused(){return this.#A}}yzQ.exports=class A{#A;#Q;constructor(Q){this.#A=Q}static unwrap(Q){return!Q.onRequestStart?Q:new A(Q)}onConnect(Q,B){this.#Q=new vzQ(Q),this.#A.onRequestStart?.(this.#Q,B)}onUpgrade(Q,B,Y){this.#A.onRequestUpgrade?.(this.#Q,Q,Hr(B),Y)}onHeaders(Q,B,Y,J){return this.#Q[Dr]=Y,this.#A.onResponseStart?.(this.#Q,Q,Hr(B),J),!this.#Q.paused}onData(Q){return this.#A.onResponseData?.(this.#Q,Q),!this.#Q.paused}onComplete(Q){this.#A.onResponseEnd?.(this.#Q,Hr(Q))}onError(Q){if(!this.#A.onResponseError)throw new Tj0("invalid onError method");this.#A.onResponseError?.(this.#Q,Q)}}});var f$=R((ysY,xzQ)=>{var Sj0=$q(),kj0=gzQ(),{ClientDestroyedError:Nr,ClientClosedError:_j0,InvalidArgumentError:FS}=QB(),{kDestroy:vj0,kClose:yj0,kClosed:Uq,kDestroyed:iK,kDispatch:gj0}=B0(),_G=Symbol("onDestroyed"),nK=Symbol("onClosed");class hzQ extends Sj0{[iK]=!1;[_G]=null;[Uq]=!1;[nK]=[];get destroyed(){return this[iK]}get closed(){return this[Uq]}close(A){if(A===void 0)return new Promise((B,Y)=>{this.close((J,C)=>{return J?Y(J):B(C)})});if(typeof A!=="function")throw new FS("invalid callback");if(this[iK]){queueMicrotask(()=>A(new Nr,null));return}if(this[Uq]){if(this[nK])this[nK].push(A);else queueMicrotask(()=>A(null,null));return}this[Uq]=!0,this[nK].push(A);let Q=()=>{let B=this[nK];this[nK]=null;for(let Y=0;Ythis.destroy()).then(()=>{queueMicrotask(Q)})}destroy(A,Q){if(typeof A==="function")Q=A,A=null;if(Q===void 0)return new Promise((Y,J)=>{this.destroy(A,(C,X)=>{return C?J(C):Y(X)})});if(typeof Q!=="function")throw new FS("invalid callback");if(this[iK]){if(this[_G])this[_G].push(Q);else queueMicrotask(()=>Q(null,null));return}if(!A)A=new Nr;this[iK]=!0,this[_G]=this[_G]||[],this[_G].push(Q);let B=()=>{let Y=this[_G];this[_G]=null;for(let J=0;J{queueMicrotask(B)})}dispatch(A,Q){if(!Q||typeof Q!=="object")throw new FS("handler must be an object");Q=kj0.unwrap(Q);try{if(!A||typeof A!=="object")throw new FS("opts must be an object.");if(this[iK]||this[_G])throw new Nr;if(this[Uq])throw new _j0;return this[gj0](A,Q)}catch(B){if(typeof Q.onError!=="function")throw B;return Q.onError(B),!1}}}xzQ.exports=hzQ});var Eq=R((gsY,mzQ)=>{var hj0=u("node:net"),fzQ=u("node:assert"),bzQ=lQ(),{InvalidArgumentError:xj0}=QB(),Lr,fj0=class{constructor(Q){this._maxCachedSessions=Q,this._sessionCache=new Map,this._sessionRegistry=new FinalizationRegistry((B)=>{if(this._sessionCache.size{Object.defineProperty(uzQ,"__esModule",{value:!0});uzQ.enumToMap=mj0;function mj0(A,Q=[],B=[]){let Y=(Q?.length??0)===0,J=(B?.length??0)===0;return Object.fromEntries(Object.entries(A).filter(([,C])=>{return typeof C==="number"&&(Y||Q.includes(C))&&(J||!B.includes(C))}))}});var W2Q=R((czQ)=>{Object.defineProperty(czQ,"__esModule",{value:!0});czQ.SPECIAL_HEADERS=czQ.MINOR=czQ.MAJOR=czQ.HTAB_SP_VCHAR_OBS_TEXT=czQ.QUOTED_STRING=czQ.CONNECTION_TOKEN_CHARS=czQ.HEADER_CHARS=czQ.TOKEN=czQ.HEX=czQ.URL_CHAR=czQ.USERINFO_CHARS=czQ.MARK=czQ.ALPHANUM=czQ.NUM=czQ.HEX_MAP=czQ.NUM_MAP=czQ.ALPHA=czQ.STATUSES_HTTP=czQ.H_METHOD_MAP=czQ.METHOD_MAP=czQ.METHODS_RTSP=czQ.METHODS_ICE=czQ.METHODS_HTTP=czQ.HEADER_STATE=czQ.FINISH=czQ.STATUSES=czQ.METHODS=czQ.LENIENT_FLAGS=czQ.FLAGS=czQ.TYPE=czQ.ERROR=void 0;var dj0=dzQ();czQ.ERROR={OK:0,INTERNAL:1,STRICT:2,CR_EXPECTED:25,LF_EXPECTED:3,UNEXPECTED_CONTENT_LENGTH:4,UNEXPECTED_SPACE:30,CLOSED_CONNECTION:5,INVALID_METHOD:6,INVALID_URL:7,INVALID_CONSTANT:8,INVALID_VERSION:9,INVALID_HEADER_TOKEN:10,INVALID_CONTENT_LENGTH:11,INVALID_CHUNK_SIZE:12,INVALID_STATUS:13,INVALID_EOF_STATE:14,INVALID_TRANSFER_ENCODING:15,CB_MESSAGE_BEGIN:16,CB_HEADERS_COMPLETE:17,CB_MESSAGE_COMPLETE:18,CB_CHUNK_HEADER:19,CB_CHUNK_COMPLETE:20,PAUSED:21,PAUSED_UPGRADE:22,PAUSED_H2_UPGRADE:23,USER:24,CB_URL_COMPLETE:26,CB_STATUS_COMPLETE:27,CB_METHOD_COMPLETE:32,CB_VERSION_COMPLETE:33,CB_HEADER_FIELD_COMPLETE:28,CB_HEADER_VALUE_COMPLETE:29,CB_CHUNK_EXTENSION_NAME_COMPLETE:34,CB_CHUNK_EXTENSION_VALUE_COMPLETE:35,CB_RESET:31,CB_PROTOCOL_COMPLETE:38};czQ.TYPE={BOTH:0,REQUEST:1,RESPONSE:2};czQ.FLAGS={CONNECTION_KEEP_ALIVE:1,CONNECTION_CLOSE:2,CONNECTION_UPGRADE:4,CHUNKED:8,UPGRADE:16,CONTENT_LENGTH:32,SKIPBODY:64,TRAILING:128,TRANSFER_ENCODING:512};czQ.LENIENT_FLAGS={HEADERS:1,CHUNKED_LENGTH:2,KEEP_ALIVE:4,TRANSFER_ENCODING:8,VERSION:16,DATA_AFTER_CLOSE:32,OPTIONAL_LF_AFTER_CR:64,OPTIONAL_CRLF_AFTER_CHUNK:128,OPTIONAL_CR_BEFORE_LF:256,SPACES_AFTER_CHUNK_SIZE:512};czQ.METHODS={DELETE:0,GET:1,HEAD:2,POST:3,PUT:4,CONNECT:5,OPTIONS:6,TRACE:7,COPY:8,LOCK:9,MKCOL:10,MOVE:11,PROPFIND:12,PROPPATCH:13,SEARCH:14,UNLOCK:15,BIND:16,REBIND:17,UNBIND:18,ACL:19,REPORT:20,MKACTIVITY:21,CHECKOUT:22,MERGE:23,"M-SEARCH":24,NOTIFY:25,SUBSCRIBE:26,UNSUBSCRIBE:27,PATCH:28,PURGE:29,MKCALENDAR:30,LINK:31,UNLINK:32,SOURCE:33,PRI:34,DESCRIBE:35,ANNOUNCE:36,SETUP:37,PLAY:38,PAUSE:39,TEARDOWN:40,GET_PARAMETER:41,SET_PARAMETER:42,REDIRECT:43,RECORD:44,FLUSH:45,QUERY:46};czQ.STATUSES={CONTINUE:100,SWITCHING_PROTOCOLS:101,PROCESSING:102,EARLY_HINTS:103,RESPONSE_IS_STALE:110,REVALIDATION_FAILED:111,DISCONNECTED_OPERATION:112,HEURISTIC_EXPIRATION:113,MISCELLANEOUS_WARNING:199,OK:200,CREATED:201,ACCEPTED:202,NON_AUTHORITATIVE_INFORMATION:203,NO_CONTENT:204,RESET_CONTENT:205,PARTIAL_CONTENT:206,MULTI_STATUS:207,ALREADY_REPORTED:208,TRANSFORMATION_APPLIED:214,IM_USED:226,MISCELLANEOUS_PERSISTENT_WARNING:299,MULTIPLE_CHOICES:300,MOVED_PERMANENTLY:301,FOUND:302,SEE_OTHER:303,NOT_MODIFIED:304,USE_PROXY:305,SWITCH_PROXY:306,TEMPORARY_REDIRECT:307,PERMANENT_REDIRECT:308,BAD_REQUEST:400,UNAUTHORIZED:401,PAYMENT_REQUIRED:402,FORBIDDEN:403,NOT_FOUND:404,METHOD_NOT_ALLOWED:405,NOT_ACCEPTABLE:406,PROXY_AUTHENTICATION_REQUIRED:407,REQUEST_TIMEOUT:408,CONFLICT:409,GONE:410,LENGTH_REQUIRED:411,PRECONDITION_FAILED:412,PAYLOAD_TOO_LARGE:413,URI_TOO_LONG:414,UNSUPPORTED_MEDIA_TYPE:415,RANGE_NOT_SATISFIABLE:416,EXPECTATION_FAILED:417,IM_A_TEAPOT:418,PAGE_EXPIRED:419,ENHANCE_YOUR_CALM:420,MISDIRECTED_REQUEST:421,UNPROCESSABLE_ENTITY:422,LOCKED:423,FAILED_DEPENDENCY:424,TOO_EARLY:425,UPGRADE_REQUIRED:426,PRECONDITION_REQUIRED:428,TOO_MANY_REQUESTS:429,REQUEST_HEADER_FIELDS_TOO_LARGE_UNOFFICIAL:430,REQUEST_HEADER_FIELDS_TOO_LARGE:431,LOGIN_TIMEOUT:440,NO_RESPONSE:444,RETRY_WITH:449,BLOCKED_BY_PARENTAL_CONTROL:450,UNAVAILABLE_FOR_LEGAL_REASONS:451,CLIENT_CLOSED_LOAD_BALANCED_REQUEST:460,INVALID_X_FORWARDED_FOR:463,REQUEST_HEADER_TOO_LARGE:494,SSL_CERTIFICATE_ERROR:495,SSL_CERTIFICATE_REQUIRED:496,HTTP_REQUEST_SENT_TO_HTTPS_PORT:497,INVALID_TOKEN:498,CLIENT_CLOSED_REQUEST:499,INTERNAL_SERVER_ERROR:500,NOT_IMPLEMENTED:501,BAD_GATEWAY:502,SERVICE_UNAVAILABLE:503,GATEWAY_TIMEOUT:504,HTTP_VERSION_NOT_SUPPORTED:505,VARIANT_ALSO_NEGOTIATES:506,INSUFFICIENT_STORAGE:507,LOOP_DETECTED:508,BANDWIDTH_LIMIT_EXCEEDED:509,NOT_EXTENDED:510,NETWORK_AUTHENTICATION_REQUIRED:511,WEB_SERVER_UNKNOWN_ERROR:520,WEB_SERVER_IS_DOWN:521,CONNECTION_TIMEOUT:522,ORIGIN_IS_UNREACHABLE:523,TIMEOUT_OCCURED:524,SSL_HANDSHAKE_FAILED:525,INVALID_SSL_CERTIFICATE:526,RAILGUN_ERROR:527,SITE_IS_OVERLOADED:529,SITE_IS_FROZEN:530,IDENTITY_PROVIDER_AUTHENTICATION_ERROR:561,NETWORK_READ_TIMEOUT:598,NETWORK_CONNECT_TIMEOUT:599};czQ.FINISH={SAFE:0,SAFE_WITH_CB:1,UNSAFE:2};czQ.HEADER_STATE={GENERAL:0,CONNECTION:1,CONTENT_LENGTH:2,TRANSFER_ENCODING:3,UPGRADE:4,CONNECTION_KEEP_ALIVE:5,CONNECTION_CLOSE:6,CONNECTION_UPGRADE:7,TRANSFER_ENCODING_CHUNKED:8};czQ.METHODS_HTTP=[czQ.METHODS.DELETE,czQ.METHODS.GET,czQ.METHODS.HEAD,czQ.METHODS.POST,czQ.METHODS.PUT,czQ.METHODS.CONNECT,czQ.METHODS.OPTIONS,czQ.METHODS.TRACE,czQ.METHODS.COPY,czQ.METHODS.LOCK,czQ.METHODS.MKCOL,czQ.METHODS.MOVE,czQ.METHODS.PROPFIND,czQ.METHODS.PROPPATCH,czQ.METHODS.SEARCH,czQ.METHODS.UNLOCK,czQ.METHODS.BIND,czQ.METHODS.REBIND,czQ.METHODS.UNBIND,czQ.METHODS.ACL,czQ.METHODS.REPORT,czQ.METHODS.MKACTIVITY,czQ.METHODS.CHECKOUT,czQ.METHODS.MERGE,czQ.METHODS["M-SEARCH"],czQ.METHODS.NOTIFY,czQ.METHODS.SUBSCRIBE,czQ.METHODS.UNSUBSCRIBE,czQ.METHODS.PATCH,czQ.METHODS.PURGE,czQ.METHODS.MKCALENDAR,czQ.METHODS.LINK,czQ.METHODS.UNLINK,czQ.METHODS.PRI,czQ.METHODS.SOURCE,czQ.METHODS.QUERY];czQ.METHODS_ICE=[czQ.METHODS.SOURCE];czQ.METHODS_RTSP=[czQ.METHODS.OPTIONS,czQ.METHODS.DESCRIBE,czQ.METHODS.ANNOUNCE,czQ.METHODS.SETUP,czQ.METHODS.PLAY,czQ.METHODS.PAUSE,czQ.METHODS.TEARDOWN,czQ.METHODS.GET_PARAMETER,czQ.METHODS.SET_PARAMETER,czQ.METHODS.REDIRECT,czQ.METHODS.RECORD,czQ.METHODS.FLUSH,czQ.METHODS.GET,czQ.METHODS.POST];czQ.METHOD_MAP=(0,dj0.enumToMap)(czQ.METHODS);czQ.H_METHOD_MAP=Object.fromEntries(Object.entries(czQ.METHODS).filter(([A])=>A.startsWith("H")));czQ.STATUSES_HTTP=[czQ.STATUSES.CONTINUE,czQ.STATUSES.SWITCHING_PROTOCOLS,czQ.STATUSES.PROCESSING,czQ.STATUSES.EARLY_HINTS,czQ.STATUSES.RESPONSE_IS_STALE,czQ.STATUSES.REVALIDATION_FAILED,czQ.STATUSES.DISCONNECTED_OPERATION,czQ.STATUSES.HEURISTIC_EXPIRATION,czQ.STATUSES.MISCELLANEOUS_WARNING,czQ.STATUSES.OK,czQ.STATUSES.CREATED,czQ.STATUSES.ACCEPTED,czQ.STATUSES.NON_AUTHORITATIVE_INFORMATION,czQ.STATUSES.NO_CONTENT,czQ.STATUSES.RESET_CONTENT,czQ.STATUSES.PARTIAL_CONTENT,czQ.STATUSES.MULTI_STATUS,czQ.STATUSES.ALREADY_REPORTED,czQ.STATUSES.TRANSFORMATION_APPLIED,czQ.STATUSES.IM_USED,czQ.STATUSES.MISCELLANEOUS_PERSISTENT_WARNING,czQ.STATUSES.MULTIPLE_CHOICES,czQ.STATUSES.MOVED_PERMANENTLY,czQ.STATUSES.FOUND,czQ.STATUSES.SEE_OTHER,czQ.STATUSES.NOT_MODIFIED,czQ.STATUSES.USE_PROXY,czQ.STATUSES.SWITCH_PROXY,czQ.STATUSES.TEMPORARY_REDIRECT,czQ.STATUSES.PERMANENT_REDIRECT,czQ.STATUSES.BAD_REQUEST,czQ.STATUSES.UNAUTHORIZED,czQ.STATUSES.PAYMENT_REQUIRED,czQ.STATUSES.FORBIDDEN,czQ.STATUSES.NOT_FOUND,czQ.STATUSES.METHOD_NOT_ALLOWED,czQ.STATUSES.NOT_ACCEPTABLE,czQ.STATUSES.PROXY_AUTHENTICATION_REQUIRED,czQ.STATUSES.REQUEST_TIMEOUT,czQ.STATUSES.CONFLICT,czQ.STATUSES.GONE,czQ.STATUSES.LENGTH_REQUIRED,czQ.STATUSES.PRECONDITION_FAILED,czQ.STATUSES.PAYLOAD_TOO_LARGE,czQ.STATUSES.URI_TOO_LONG,czQ.STATUSES.UNSUPPORTED_MEDIA_TYPE,czQ.STATUSES.RANGE_NOT_SATISFIABLE,czQ.STATUSES.EXPECTATION_FAILED,czQ.STATUSES.IM_A_TEAPOT,czQ.STATUSES.PAGE_EXPIRED,czQ.STATUSES.ENHANCE_YOUR_CALM,czQ.STATUSES.MISDIRECTED_REQUEST,czQ.STATUSES.UNPROCESSABLE_ENTITY,czQ.STATUSES.LOCKED,czQ.STATUSES.FAILED_DEPENDENCY,czQ.STATUSES.TOO_EARLY,czQ.STATUSES.UPGRADE_REQUIRED,czQ.STATUSES.PRECONDITION_REQUIRED,czQ.STATUSES.TOO_MANY_REQUESTS,czQ.STATUSES.REQUEST_HEADER_FIELDS_TOO_LARGE_UNOFFICIAL,czQ.STATUSES.REQUEST_HEADER_FIELDS_TOO_LARGE,czQ.STATUSES.LOGIN_TIMEOUT,czQ.STATUSES.NO_RESPONSE,czQ.STATUSES.RETRY_WITH,czQ.STATUSES.BLOCKED_BY_PARENTAL_CONTROL,czQ.STATUSES.UNAVAILABLE_FOR_LEGAL_REASONS,czQ.STATUSES.CLIENT_CLOSED_LOAD_BALANCED_REQUEST,czQ.STATUSES.INVALID_X_FORWARDED_FOR,czQ.STATUSES.REQUEST_HEADER_TOO_LARGE,czQ.STATUSES.SSL_CERTIFICATE_ERROR,czQ.STATUSES.SSL_CERTIFICATE_REQUIRED,czQ.STATUSES.HTTP_REQUEST_SENT_TO_HTTPS_PORT,czQ.STATUSES.INVALID_TOKEN,czQ.STATUSES.CLIENT_CLOSED_REQUEST,czQ.STATUSES.INTERNAL_SERVER_ERROR,czQ.STATUSES.NOT_IMPLEMENTED,czQ.STATUSES.BAD_GATEWAY,czQ.STATUSES.SERVICE_UNAVAILABLE,czQ.STATUSES.GATEWAY_TIMEOUT,czQ.STATUSES.HTTP_VERSION_NOT_SUPPORTED,czQ.STATUSES.VARIANT_ALSO_NEGOTIATES,czQ.STATUSES.INSUFFICIENT_STORAGE,czQ.STATUSES.LOOP_DETECTED,czQ.STATUSES.BANDWIDTH_LIMIT_EXCEEDED,czQ.STATUSES.NOT_EXTENDED,czQ.STATUSES.NETWORK_AUTHENTICATION_REQUIRED,czQ.STATUSES.WEB_SERVER_UNKNOWN_ERROR,czQ.STATUSES.WEB_SERVER_IS_DOWN,czQ.STATUSES.CONNECTION_TIMEOUT,czQ.STATUSES.ORIGIN_IS_UNREACHABLE,czQ.STATUSES.TIMEOUT_OCCURED,czQ.STATUSES.SSL_HANDSHAKE_FAILED,czQ.STATUSES.INVALID_SSL_CERTIFICATE,czQ.STATUSES.RAILGUN_ERROR,czQ.STATUSES.SITE_IS_OVERLOADED,czQ.STATUSES.SITE_IS_FROZEN,czQ.STATUSES.IDENTITY_PROVIDER_AUTHENTICATION_ERROR,czQ.STATUSES.NETWORK_READ_TIMEOUT,czQ.STATUSES.NETWORK_CONNECT_TIMEOUT];czQ.ALPHA=[];for(let A=65;A<=90;A++)czQ.ALPHA.push(String.fromCharCode(A)),czQ.ALPHA.push(String.fromCharCode(A+32));czQ.NUM_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9};czQ.HEX_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15};czQ.NUM=["0","1","2","3","4","5","6","7","8","9"];czQ.ALPHANUM=czQ.ALPHA.concat(czQ.NUM);czQ.MARK=["-","_",".","!","~","*","'","(",")"];czQ.USERINFO_CHARS=czQ.ALPHANUM.concat(czQ.MARK).concat(["%",";",":","&","=","+","$",","]);czQ.URL_CHAR=["!",'"',"$","%","&","'","(",")","*","+",",","-",".","/",":",";","<","=",">","@","[","\\","]","^","_","`","{","|","}","~"].concat(czQ.ALPHANUM);czQ.HEX=czQ.NUM.concat(["a","b","c","d","e","f","A","B","C","D","E","F"]);czQ.TOKEN=["!","#","$","%","&","'","*","+","-",".","^","_","`","|","~"].concat(czQ.ALPHANUM);czQ.HEADER_CHARS=["\t"];for(let A=32;A<=255;A++)if(A!==127)czQ.HEADER_CHARS.push(A);czQ.CONNECTION_TOKEN_CHARS=czQ.HEADER_CHARS.filter((A)=>A!==44);czQ.QUOTED_STRING=["\t"," "];for(let A=33;A<=255;A++)if(A!==34&&A!==92)czQ.QUOTED_STRING.push(A);czQ.HTAB_SP_VCHAR_OBS_TEXT=["\t"," "];for(let A=33;A<=126;A++)czQ.HTAB_SP_VCHAR_OBS_TEXT.push(A);for(let A=128;A<=255;A++)czQ.HTAB_SP_VCHAR_OBS_TEXT.push(A);czQ.MAJOR=czQ.NUM_MAP;czQ.MINOR=czQ.MAJOR;czQ.SPECIAL_HEADERS={connection:czQ.HEADER_STATE.CONNECTION,"content-length":czQ.HEADER_STATE.CONTENT_LENGTH,"proxy-connection":czQ.HEADER_STATE.CONNECTION,"transfer-encoding":czQ.HEADER_STATE.TRANSFER_ENCODING,upgrade:czQ.HEADER_STATE.UPGRADE};czQ.default={ERROR:czQ.ERROR,TYPE:czQ.TYPE,FLAGS:czQ.FLAGS,LENIENT_FLAGS:czQ.LENIENT_FLAGS,METHODS:czQ.METHODS,STATUSES:czQ.STATUSES,FINISH:czQ.FINISH,HEADER_STATE:czQ.HEADER_STATE,ALPHA:czQ.ALPHA,NUM_MAP:czQ.NUM_MAP,HEX_MAP:czQ.HEX_MAP,NUM:czQ.NUM,ALPHANUM:czQ.ALPHANUM,MARK:czQ.MARK,USERINFO_CHARS:czQ.USERINFO_CHARS,URL_CHAR:czQ.URL_CHAR,HEX:czQ.HEX,TOKEN:czQ.TOKEN,HEADER_CHARS:czQ.HEADER_CHARS,CONNECTION_TOKEN_CHARS:czQ.CONNECTION_TOKEN_CHARS,QUOTED_STRING:czQ.QUOTED_STRING,HTAB_SP_VCHAR_OBS_TEXT:czQ.HTAB_SP_VCHAR_OBS_TEXT,MAJOR:czQ.MAJOR,MINOR:czQ.MINOR,SPECIAL_HEADERS:czQ.SPECIAL_HEADERS,METHODS_HTTP:czQ.METHODS_HTTP,METHODS_ICE:czQ.METHODS_ICE,METHODS_RTSP:czQ.METHODS_RTSP,METHOD_MAP:czQ.METHOD_MAP,H_METHOD_MAP:czQ.H_METHOD_MAP,STATUSES_HTTP:czQ.STATUSES_HTTP}});var Or=R((fsY,F2Q)=>{var{Buffer:lj0}=u("node:buffer"),jr;Object.defineProperty(F2Q,"exports",{get:()=>{return jr?jr:jr=lj0.from("AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAn9/AGABfwBgBH9/f38Bf2AAAGADf39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQAEA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAAzU0BQYAAAMAAAAAAAADAQMAAwMDAAACAAAAAAICAgICAgICAgIBAQEBAQEBAQEBAwAAAwAAAAQFAXABExMFAwEAAgYIAX8BQcDZBAsHxQcoBm1lbW9yeQIAC19pbml0aWFsaXplAAgZX19pbmRpcmVjdF9mdW5jdGlvbl90YWJsZQEAC2xsaHR0cF9pbml0AAkYbGxodHRwX3Nob3VsZF9rZWVwX2FsaXZlADcMbGxodHRwX2FsbG9jAAsGbWFsbG9jADkLbGxodHRwX2ZyZWUADARmcmVlAAwPbGxodHRwX2dldF90eXBlAA0VbGxodHRwX2dldF9odHRwX21ham9yAA4VbGxodHRwX2dldF9odHRwX21pbm9yAA8RbGxodHRwX2dldF9tZXRob2QAEBZsbGh0dHBfZ2V0X3N0YXR1c19jb2RlABESbGxodHRwX2dldF91cGdyYWRlABIMbGxodHRwX3Jlc2V0ABMObGxodHRwX2V4ZWN1dGUAFBRsbGh0dHBfc2V0dGluZ3NfaW5pdAAVDWxsaHR0cF9maW5pc2gAFgxsbGh0dHBfcGF1c2UAFw1sbGh0dHBfcmVzdW1lABgbbGxodHRwX3Jlc3VtZV9hZnRlcl91cGdyYWRlABkQbGxodHRwX2dldF9lcnJubwAaF2xsaHR0cF9nZXRfZXJyb3JfcmVhc29uABsXbGxodHRwX3NldF9lcnJvcl9yZWFzb24AHBRsbGh0dHBfZ2V0X2Vycm9yX3BvcwAdEWxsaHR0cF9lcnJub19uYW1lAB4SbGxodHRwX21ldGhvZF9uYW1lAB8SbGxodHRwX3N0YXR1c19uYW1lACAabGxodHRwX3NldF9sZW5pZW50X2hlYWRlcnMAISFsbGh0dHBfc2V0X2xlbmllbnRfY2h1bmtlZF9sZW5ndGgAIh1sbGh0dHBfc2V0X2xlbmllbnRfa2VlcF9hbGl2ZQAjJGxsaHR0cF9zZXRfbGVuaWVudF90cmFuc2Zlcl9lbmNvZGluZwAkGmxsaHR0cF9zZXRfbGVuaWVudF92ZXJzaW9uACUjbGxodHRwX3NldF9sZW5pZW50X2RhdGFfYWZ0ZXJfY2xvc2UAJidsbGh0dHBfc2V0X2xlbmllbnRfb3B0aW9uYWxfbGZfYWZ0ZXJfY3IAJyxsbGh0dHBfc2V0X2xlbmllbnRfb3B0aW9uYWxfY3JsZl9hZnRlcl9jaHVuawAoKGxsaHR0cF9zZXRfbGVuaWVudF9vcHRpb25hbF9jcl9iZWZvcmVfbGYAKSpsbGh0dHBfc2V0X2xlbmllbnRfc3BhY2VzX2FmdGVyX2NodW5rX3NpemUAKhhsbGh0dHBfbWVzc2FnZV9uZWVkc19lb2YANgkYAQBBAQsSAQIDBAUKBgcyNDMuKy8tLDAxCq/ZAjQWAEHA1QAoAgAEQAALQcDVAEEBNgIACxQAIAAQOCAAIAI2AjggACABOgAoCxQAIAAgAC8BNCAALQAwIAAQNxAACx4BAX9BwAAQOiIBEDggAUGACDYCOCABIAA6ACggAQuPDAEHfwJAIABFDQAgAEEIayIBIABBBGsoAgAiAEF4cSIEaiEFAkAgAEEBcQ0AIABBA3FFDQEgASABKAIAIgBrIgFB1NUAKAIASQ0BIAAgBGohBAJAAkBB2NUAKAIAIAFHBEAgAEH/AU0EQCAAQQN2IQMgASgCCCIAIAEoAgwiAkYEQEHE1QBBxNUAKAIAQX4gA3dxNgIADAULIAIgADYCCCAAIAI2AgwMBAsgASgCGCEGIAEgASgCDCIARwRAIAAgASgCCCICNgIIIAIgADYCDAwDCyABQRRqIgMoAgAiAkUEQCABKAIQIgJFDQIgAUEQaiEDCwNAIAMhByACIgBBFGoiAygCACICDQAgAEEQaiEDIAAoAhAiAg0ACyAHQQA2AgAMAgsgBSgCBCIAQQNxQQNHDQIgBSAAQX5xNgIEQczVACAENgIAIAUgBDYCACABIARBAXI2AgQMAwtBACEACyAGRQ0AAkAgASgCHCICQQJ0QfTXAGoiAygCACABRgRAIAMgADYCACAADQFByNUAQcjVACgCAEF+IAJ3cTYCAAwCCyAGQRBBFCAGKAIQIAFGG2ogADYCACAARQ0BCyAAIAY2AhggASgCECICBEAgACACNgIQIAIgADYCGAsgAUEUaigCACICRQ0AIABBFGogAjYCACACIAA2AhgLIAEgBU8NACAFKAIEIgBBAXFFDQACQAJAAkACQCAAQQJxRQRAQdzVACgCACAFRgRAQdzVACABNgIAQdDVAEHQ1QAoAgAgBGoiADYCACABIABBAXI2AgQgAUHY1QAoAgBHDQZBzNUAQQA2AgBB2NUAQQA2AgAMBgtB2NUAKAIAIAVGBEBB2NUAIAE2AgBBzNUAQczVACgCACAEaiIANgIAIAEgAEEBcjYCBCAAIAFqIAA2AgAMBgsgAEF4cSAEaiEEIABB/wFNBEAgAEEDdiEDIAUoAggiACAFKAIMIgJGBEBBxNUAQcTVACgCAEF+IAN3cTYCAAwFCyACIAA2AgggACACNgIMDAQLIAUoAhghBiAFIAUoAgwiAEcEQEHU1QAoAgAaIAAgBSgCCCICNgIIIAIgADYCDAwDCyAFQRRqIgMoAgAiAkUEQCAFKAIQIgJFDQIgBUEQaiEDCwNAIAMhByACIgBBFGoiAygCACICDQAgAEEQaiEDIAAoAhAiAg0ACyAHQQA2AgAMAgsgBSAAQX5xNgIEIAEgBGogBDYCACABIARBAXI2AgQMAwtBACEACyAGRQ0AAkAgBSgCHCICQQJ0QfTXAGoiAygCACAFRgRAIAMgADYCACAADQFByNUAQcjVACgCAEF+IAJ3cTYCAAwCCyAGQRBBFCAGKAIQIAVGG2ogADYCACAARQ0BCyAAIAY2AhggBSgCECICBEAgACACNgIQIAIgADYCGAsgBUEUaigCACICRQ0AIABBFGogAjYCACACIAA2AhgLIAEgBGogBDYCACABIARBAXI2AgQgAUHY1QAoAgBHDQBBzNUAIAQ2AgAMAQsgBEH/AU0EQCAEQXhxQezVAGohAAJ/QcTVACgCACICQQEgBEEDdnQiA3FFBEBBxNUAIAIgA3I2AgAgAAwBCyAAKAIICyICIAE2AgwgACABNgIIIAEgADYCDCABIAI2AggMAQtBHyECIARB////B00EQCAEQSYgBEEIdmciAGt2QQFxIABBAXRrQT5qIQILIAEgAjYCHCABQgA3AhAgAkECdEH01wBqIQACQEHI1QAoAgAiA0EBIAJ0IgdxRQRAIAAgATYCAEHI1QAgAyAHcjYCACABIAA2AhggASABNgIIIAEgATYCDAwBCyAEQRkgAkEBdmtBACACQR9HG3QhAiAAKAIAIQACQANAIAAiAygCBEF4cSAERg0BIAJBHXYhACACQQF0IQIgAyAAQQRxakEQaiIHKAIAIgANAAsgByABNgIAIAEgAzYCGCABIAE2AgwgASABNgIIDAELIAMoAggiACABNgIMIAMgATYCCCABQQA2AhggASADNgIMIAEgADYCCAtB5NUAQeTVACgCAEEBayIAQX8gABs2AgALCwcAIAAtACgLBwAgAC0AKgsHACAALQArCwcAIAAtACkLBwAgAC8BNAsHACAALQAwC0ABBH8gACgCGCEBIAAvAS4hAiAALQAoIQMgACgCOCEEIAAQOCAAIAQ2AjggACADOgAoIAAgAjsBLiAAIAE2AhgL5YUCAgd/A34gASACaiEEAkAgACIDKAIMIgANACADKAIEBEAgAyABNgIECyMAQRBrIgkkAAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAygCHCICQQJrDvwBAfkBAgMEBQYHCAkKCwwNDg8QERL4ARP3ARQV9gEWF/UBGBkaGxwdHh8g/QH7ASH0ASIjJCUmJygpKivzASwtLi8wMTLyAfEBMzTwAe8BNTY3ODk6Ozw9Pj9AQUJDREVGR0hJSktMTU5P+gFQUVJT7gHtAVTsAVXrAVZXWFla6gFbXF1eX2BhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ent8fX5/gAGBAYIBgwGEAYUBhgGHAYgBiQGKAYsBjAGNAY4BjwGQAZEBkgGTAZQBlQGWAZcBmAGZAZoBmwGcAZ0BngGfAaABoQGiAaMBpAGlAaYBpwGoAakBqgGrAawBrQGuAa8BsAGxAbIBswG0AbUBtgG3AbgBuQG6AbsBvAG9Ab4BvwHAAcEBwgHDAcQBxQHGAccByAHJAcoBywHMAc0BzgHpAegBzwHnAdAB5gHRAdIB0wHUAeUB1QHWAdcB2AHZAdoB2wHcAd0B3gHfAeAB4QHiAeMBAPwBC0EADOMBC0EODOIBC0ENDOEBC0EPDOABC0EQDN8BC0ETDN4BC0EUDN0BC0EVDNwBC0EWDNsBC0EXDNoBC0EYDNkBC0EZDNgBC0EaDNcBC0EbDNYBC0EcDNUBC0EdDNQBC0EeDNMBC0EfDNIBC0EgDNEBC0EhDNABC0EIDM8BC0EiDM4BC0EkDM0BC0EjDMwBC0EHDMsBC0ElDMoBC0EmDMkBC0EnDMgBC0EoDMcBC0ESDMYBC0ERDMUBC0EpDMQBC0EqDMMBC0ErDMIBC0EsDMEBC0HeAQzAAQtBLgy/AQtBLwy+AQtBMAy9AQtBMQy8AQtBMgy7AQtBMwy6AQtBNAy5AQtB3wEMuAELQTUMtwELQTkMtgELQQwMtQELQTYMtAELQTcMswELQTgMsgELQT4MsQELQToMsAELQeABDK8BC0ELDK4BC0E/DK0BC0E7DKwBC0EKDKsBC0E8DKoBC0E9DKkBC0HhAQyoAQtBwQAMpwELQcAADKYBC0HCAAylAQtBCQykAQtBLQyjAQtBwwAMogELQcQADKEBC0HFAAygAQtBxgAMnwELQccADJ4BC0HIAAydAQtByQAMnAELQcoADJsBC0HLAAyaAQtBzAAMmQELQc0ADJgBC0HOAAyXAQtBzwAMlgELQdAADJUBC0HRAAyUAQtB0gAMkwELQdMADJIBC0HVAAyRAQtB1AAMkAELQdYADI8BC0HXAAyOAQtB2AAMjQELQdkADIwBC0HaAAyLAQtB2wAMigELQdwADIkBC0HdAAyIAQtB3gAMhwELQd8ADIYBC0HgAAyFAQtB4QAMhAELQeIADIMBC0HjAAyCAQtB5AAMgQELQeUADIABC0HiAQx/C0HmAAx+C0HnAAx9C0EGDHwLQegADHsLQQUMegtB6QAMeQtBBAx4C0HqAAx3C0HrAAx2C0HsAAx1C0HtAAx0C0EDDHMLQe4ADHILQe8ADHELQfAADHALQfIADG8LQfEADG4LQfMADG0LQfQADGwLQfUADGsLQfYADGoLQQIMaQtB9wAMaAtB+AAMZwtB+QAMZgtB+gAMZQtB+wAMZAtB/AAMYwtB/QAMYgtB/gAMYQtB/wAMYAtBgAEMXwtBgQEMXgtBggEMXQtBgwEMXAtBhAEMWwtBhQEMWgtBhgEMWQtBhwEMWAtBiAEMVwtBiQEMVgtBigEMVQtBiwEMVAtBjAEMUwtBjQEMUgtBjgEMUQtBjwEMUAtBkAEMTwtBkQEMTgtBkgEMTQtBkwEMTAtBlAEMSwtBlQEMSgtBlgEMSQtBlwEMSAtBmAEMRwtBmQEMRgtBmgEMRQtBmwEMRAtBnAEMQwtBnQEMQgtBngEMQQtBnwEMQAtBoAEMPwtBoQEMPgtBogEMPQtBowEMPAtBpAEMOwtBpQEMOgtBpgEMOQtBpwEMOAtBqAEMNwtBqQEMNgtBqgEMNQtBqwEMNAtBrAEMMwtBrQEMMgtBrgEMMQtBrwEMMAtBsAEMLwtBsQEMLgtBsgEMLQtBswEMLAtBtAEMKwtBtQEMKgtBtgEMKQtBtwEMKAtBuAEMJwtBuQEMJgtBugEMJQtBuwEMJAtBvAEMIwtBvQEMIgtBvgEMIQtBvwEMIAtBwAEMHwtBwQEMHgtBwgEMHQtBAQwcC0HDAQwbC0HEAQwaC0HFAQwZC0HGAQwYC0HHAQwXC0HIAQwWC0HJAQwVC0HKAQwUC0HLAQwTC0HMAQwSC0HNAQwRC0HOAQwQC0HPAQwPC0HQAQwOC0HRAQwNC0HSAQwMC0HTAQwLC0HUAQwKC0HVAQwJC0HWAQwIC0HjAQwHC0HXAQwGC0HYAQwFC0HZAQwEC0HaAQwDC0HbAQwCC0HdAQwBC0HcAQshAgNAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCADAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQAJ/AkACQAJAAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAMCfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAg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ogKiAqICogKiAqICogKiAqICogKiAqICogIAogILIAQgAUEBaiIBRw0AC0HJACECDOwCCyABQQFqIQEgA0Evai0AAEEBcQ2lAiADQQA2AhwgAyABNgIUIANBlxA2AhAgA0EKNgIMQQAhAgzrAgsgASAERwRAA0AgAS0AAEEgRw0VIAQgAUEBaiIBRw0AC0H4ACECDOsCC0H4ACECDOoCCyADQQI6ACgMOAtBACECIANBADYCHCADQb8LNgIQIANBAjYCDCADIAFBAWo2AhQM6AILQQAhAgzOAgtBDSECDM0CC0ETIQIMzAILQRUhAgzLAgtBFiECDMoCC0EYIQIMyQILQRkhAgzIAgtBGiECDMcCC0EbIQIMxgILQRwhAgzFAgtBHSECDMQCC0EeIQIMwwILQR8hAgzCAgtBICECDMECC0EiIQIMwAILQSMhAgy/AgtBJSECDL4CC0HlACECDL0CCyADQT02AhwgAyABNgIUIAMgADYCDEEAIQIM1QILIANBGzYCHCADIAE2AhQgA0GkHDYCECADQRU2AgxBACECDNQCCyADQSA2AhwgAyABNgIUIANBmBo2AhAgA0EVNgIMQQAhAgzTAgsgA0ETNgIcIAMgATYCFCADQZgaNgIQIANBFTYCDEEAIQIM0gILIANBCzYCHCADIAE2AhQgA0GYGjYCECADQRU2AgxBACECDNECCyADQRA2AhwgAyABNgIUIANBmBo2AhAgA0EVNgIMQQAhAgzQAgsgA0EgNgIcIAMgATYCFCADQaQcNgIQIANBFTYCDEEAIQIMzwILIANBCzYCHCADIAE2AhQgA0GkHDYCECADQRU2AgxBACECDM4CCyADQQw2AhwgAyABNgIUIANBpBw2AhAgA0EVNgIMQQAhAgzNAgtBACECIANBADYCHCADIAE2AhQgA0HdDjYCECADQRI2AgwMzAILAkADQAJAIAEtAABBCmsOBAACAgACCyAEIAFBAWoiAUcNAAtB/QEhAgzMAgsCQAJAIAMtADZBAUcNAEEAIQACQCADKAI4IgJFDQAgAigCYCICRQ0AIAMgAhEAACEACyAARQ0AIABBFUcNASADQfwBNgIcIAMgATYCFCADQdwZNgIQIANBFTYCDEEAIQIMzQILQdwBIQIMswILIANBADYCHCADIAE2AhQgA0H5CzYCECADQR82AgxBACECDMsCCwJAAkAgAy0AKEEBaw4CBAEAC0HbASECDLICC0HUASECDLECCyADQQI6ADFBACEAAkAgAygCOCICRQ0AIAIoAgAiAkUNACADIAIRAAAhAAsgAEUEQEHdASECDLECCyAAQRVHBEAgA0EANgIcIAMgATYCFCADQbQMNgIQIANBEDYCDEEAIQIMygILIANB+wE2AhwgAyABNgIUIANBgRo2AhAgA0EVNgIMQQAhAgzJAgsgASAERgRAQfoBIQIMyQILIAEtAABByABGDQEgA0EBOgAoC0HAASECDK4CC0HaASECDK0CCyABIARHBEAgA0EMNgIIIAMgATYCBEHZASECDK0CC0H5ASECDMUCCyABIARGBEBB+AEhAgzFAgsgAS0AAEHIAEcNBCABQQFqIQFB2AEhAgyrAgsgASAERgRAQfcBIQIMxAILAkACQCABLQAAQcUAaw4QAAUFBQUFBQUFBQUFBQUFAQULIAFBAWohAUHWASECDKsCCyABQQFqIQFB1wEhAgyqAgtB9gEhAiABIARGDcICIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQbrVAGotAABHDQMgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADMMCCyADKAIEIQAgA0IANwMAIAMgACAGQQFqIgEQLiIARQRAQeMBIQIMqgILIANB9QE2AhwgAyABNgIUIAMgADYCDEEAIQIMwgILQfQBIQIgASAERg3BAiADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEG41QBqLQAARw0CIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzCAgsgA0GBBDsBKCADKAIEIQAgA0IANwMAIAMgACAGQQFqIgEQLiIADQMMAgsgA0EANgIAC0EAIQIgA0EANgIcIAMgATYCFCADQeUfNgIQIANBCDYCDAy/AgtB1QEhAgylAgsgA0HzATYCHCADIAE2AhQgAyAANgIMQQAhAgy9AgtBACEAAkAgAygCOCICRQ0AIAIoAkAiAkUNACADIAIRAAAhAAsgAEUNbiAAQRVHBEAgA0EANgIcIAMgATYCFCADQYIPNgIQIANBIDYCDEEAIQIMvQILIANBjwE2AhwgAyABNgIUIANB7Bs2AhAgA0EVNgIMQQAhAgy8AgsgASAERwRAIANBDTYCCCADIAE2AgRB0wEhAgyjAgtB8gEhAgy7AgsgASAERgRAQfEBIQIMuwILAkACQAJAIAEtAABByABrDgsAAQgICAgICAgIAggLIAFBAWohAUHQASECDKMCCyABQQFqIQFB0QEhAgyiAgsgAUEBaiEBQdIBIQIMoQILQfABIQIgASAERg25AiADKAIAIgAgBCABa2ohBiABIABrQQJqIQUDQCABLQAAIABBtdUAai0AAEcNBCAAQQJGDQMgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAY2AgAMuQILQe8BIQIgASAERg24AiADKAIAIgAgBCABa2ohBiABIABrQQFqIQUDQCABLQAAIABBs9UAai0AAEcNAyAAQQFGDQIgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAY2AgAMuAILQe4BIQIgASAERg23AiADKAIAIgAgBCABa2ohBiABIABrQQJqIQUDQCABLQAAIABBsNUAai0AAEcNAiAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAY2AgAMtwILIAMoAgQhACADQgA3AwAgAyAAIAVBAWoiARArIgBFDQIgA0HsATYCHCADIAE2AhQgAyAANgIMQQAhAgy2AgsgA0EANgIACyADKAIEIQAgA0EANgIEIAMgACABECsiAEUNnAIgA0HtATYCHCADIAE2AhQgAyAANgIMQQAhAgy0AgtBzwEhAgyaAgtBACEAAkAgAygCOCICRQ0AIAIoAjQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0HqDTYCECADQSY2AgxBACECDLQCC0HOASECDJoCCyADQesBNgIcIAMgATYCFCADQYAbNgIQIANBFTYCDEEAIQIMsgILIAEgBEYEQEHrASECDLICCyABLQAAQS9GBEAgAUEBaiEBDAELIANBADYCHCADIAE2AhQgA0GyODYCECADQQg2AgxBACECDLECC0HNASECDJcCCyABIARHBEAgA0EONgIIIAMgATYCBEHMASECDJcCC0HqASECDK8CCyABIARGBEBB6QEhAgyvAgsgAS0AAEEwayIAQf8BcUEKSQRAIAMgADoAKiABQQFqIQFBywEhAgyWAgsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDZcCIANB6AE2AhwgAyABNgIUIAMgADYCDEEAIQIMrgILIAEgBEYEQEHnASECDK4CCwJAIAEtAABBLkYEQCABQQFqIQEMAQsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDZgCIANB5gE2AhwgAyABNgIUIAMgADYCDEEAIQIMrgILQcoBIQIMlAILIAEgBEYEQEHlASECDK0CC0EAIQBBASEFQQEhB0EAIQICQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQCABLQAAQTBrDgoKCQABAgMEBQYICwtBAgwGC0EDDAULQQQMBAtBBQwDC0EGDAILQQcMAQtBCAshAkEAIQVBACEHDAILQQkhAkEBIQBBACEFQQAhBwwBC0EAIQVBASECCyADIAI6ACsgAUEBaiEBAkACQCADLQAuQRBxDQACQAJAAkAgAy0AKg4DAQACBAsgB0UNAwwCCyAADQEMAgsgBUUNAQsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDQIgA0HiATYCHCADIAE2AhQgAyAANgIMQQAhAgyvAgsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDZoCIANB4wE2AhwgAyABNgIUIAMgADYCDEEAIQIMrgILIAMoAgQhACADQQA2AgQgAyAAIAEQLyIARQ2YAiADQeQBNgIcIAMgATYCFCADIAA2AgwMrQILQckBIQIMkwILQQAhAAJAIAMoAjgiAkUNACACKAJEIgJFDQAgAyACEQAAIQALAkAgAARAIABBFUYNASADQQA2AhwgAyABNgIUIANBpA02AhAgA0EhNgIMQQAhAgytAgtByAEhAgyTAgsgA0HhATYCHCADIAE2AhQgA0HQGjYCECADQRU2AgxBACECDKsCCyABIARGBEBB4QEhAgyrAgsCQCABLQAAQSBGBEAgA0EAOwE0IAFBAWohAQwBCyADQQA2AhwgAyABNgIUIANBmRE2AhAgA0EJNgIMQQAhAgyrAgtBxwEhAgyRAgsgASAERgRAQeABIQIMqgILAkAgAS0AAEEwa0H/AXEiAkEKSQRAIAFBAWohAQJAIAMvATQiAEGZM0sNACADIABBCmwiADsBNCAAQf7/A3EgAkH//wNzSw0AIAMgACACajsBNAwCC0EAIQIgA0EANgIcIAMgATYCFCADQZUeNgIQIANBDTYCDAyrAgsgA0EANgIcIAMgATYCFCADQZUeNgIQIANBDTYCDEEAIQIMqgILQcYBIQIMkAILIAEgBEYEQEHfASECDKkCCwJAIAEtAABBMGtB/wFxIgJBCkkEQCABQQFqIQECQCADLwE0IgBBmTNLDQAgAyAAQQpsIgA7ATQgAEH+/wNxIAJB//8Dc0sNACADIAAgAmo7ATQMAgtBACECIANBADYCHCADIAE2AhQgA0GVHjYCECADQQ02AgwMqgILIANBADYCHCADIAE2AhQgA0GVHjYCECADQQ02AgxBACECDKkCC0HFASECDI8CCyABIARGBEBB3gEhAgyoAgsCQCABLQAAQTBrQf8BcSICQQpJBEAgAUEBaiEBAkAgAy8BNCIAQZkzSw0AIAMgAEEKbCIAOwE0IABB/v8DcSACQf//A3NLDQAgAyAAIAJqOwE0DAILQQAhAiADQQA2AhwgAyABNgIUIANBlR42AhAgA0ENNgIMDKkCCyADQQA2AhwgAyABNgIUIANBlR42AhAgA0ENNgIMQQAhAgyoAgtBxAEhAgyOAgsgASAERgRAQd0BIQIMpwILAkACQAJAAkAgAS0AAEEKaw4XAgMDAAMDAwMDAwMDAwMDAwMDAwMDAwEDCyABQQFqDAULIAFBAWohAUHDASECDI8CCyABQQFqIQEgA0Evai0AAEEBcQ0IIANBADYCHCADIAE2AhQgA0GNCzYCECADQQ02AgxBACECDKcCCyADQQA2AhwgAyABNgIUIANBjQs2AhAgA0ENNgIMQQAhAgymAgsgASAERwRAIANBDzYCCCADIAE2AgRBASECDI0CC0HcASECDKUCCwJAAkADQAJAIAEtAABBCmsOBAIAAAMACyAEIAFBAWoiAUcNAAtB2wEhAgymAgsgAygCBCEAIANBADYCBCADIAAgARAtIgBFBEAgAUEBaiEBDAQLIANB2gE2AhwgAyAANgIMIAMgAUEBajYCFEEAIQIMpQILIAMoAgQhACADQQA2AgQgAyAAIAEQLSIADQEgAUEBagshAUHBASECDIoCCyADQdkBNgIcIAMgADYCDCADIAFBAWo2AhRBACECDKICC0HCASECDIgCCyADQS9qLQAAQQFxDQEgA0EANgIcIAMgATYCFCADQeQcNgIQIANBGTYCDEEAIQIMoAILIAEgBEYEQEHZASEC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IAFBAWohAUGeASECDOQBCyABQQFqIQFBnwEhAgzjAQtBtwEhAiABIARGDfsBIAMoAgAiACAEIAFraiEFIAEgAGtBA2ohBgJAA0AgAS0AACAAQezUAGotAABHDSggAEEDRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADPwBCyADQQA2AgAgBkEBaiEBQQ0MKAtBtgEhAiABIARGDfoBIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQaHVAGotAABHDScgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADPsBCyADQQA2AgAgBkEBaiEBQQwMJwtBtQEhAiABIARGDfkBIAMoAgAiACAEIAFraiEFIAEgAGtBAWohBgJAA0AgAS0AACAAQerUAGotAABHDSYgAEEBRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADPoBCyADQQA2AgAgBkEBaiEBQQMMJgtBtAEhAiABIARGDfgBIAMoAgAiACAEIAFraiEFIAEgAGtBAWohBgJAA0AgAS0AACAAQejUAGotAABHDSUgAEEBRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADPkBCyADQQA2AgAgBkEBaiEBQSYMJQsgASAERgRAQbMBIQIM+AELAkACQCABLQAAQdQAaw4CAAEnCyABQQFqIQFBmQEhAgzfAQsgAUEBaiEBQZoBIQIM3gELQbIBIQIgASAERg32ASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHm1ABqLQAARw0jIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAz3AQsgA0EANgIAIAZBAWohAUEnDCMLQbEBIQIgASAERg31ASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHk1ABqLQAARw0iIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAz2AQsgA0EANgIAIAZBAWohAUEcDCILQbABIQIgASAERg30ASADKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEHe1ABqLQAARw0hIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAz1AQsgA0EANgIAIAZBAWohAUEGDCELQa8BIQIgASAERg3zASADKAIAIgAgBCABa2ohBSABIABrQQRqIQYCQANAIAEtAAAgAEHZ1ABqLQAARw0gIABBBEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAz0AQsgA0EANgIAIAZBAWohAUEZDCALIAEgBEYEQEGuASECDPMBCwJAAkACQAJAIAEtAABBLWsOIwAkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJAEkJCQkJAIkJCQDJAsgAUEBaiEBQY4BIQIM3AELIAFBAWohAUGPASECDNsBCyABQQFqIQFBlAEhAgzaAQsgAUEBaiEBQZUBIQIM2QELQa0BIQIgASAERg3xASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHX1ABqLQAARw0eIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzyAQsgA0EANgIAIAZBAWohAUELDB4LIAEgBEYEQEGsASECDPEBCwJAAkAgAS0AAEHBAGsOAwAgASALIAFBAWohAUGQASECDNgBCyABQQFqIQFBkwEhAgzXAQsgASAERgRAQasBIQIM8AELAkACQCABLQAAQcEAaw4PAB8fHx8fHx8fHx8fHx8BHwsgAUEBaiEBQZEBIQIM1wELIAFBAWohAUGSASECDNYBCyABIARGBEBBqgEhAgzvAQsgAS0AAEHMAEcNHCABQQFqIQFBCgwbC0GpASECIAEgBEYN7QEgAygCACIAIAQgAWtqIQUgASAAa0EFaiEGAkADQCABLQAAIABB0dQAai0AAEcNGiAAQQVGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM7gELIANBADYCACAGQQFqIQFBHgwaC0GoASECIAEgBEYN7AEgAygCACIAIAQgAWtqIQUgASAAa0EGaiEGAkADQCABLQAAIABBytQAai0AAEcNGSAAQQZGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM7QELIANBADYCACAGQQFqIQFBFQwZC0GnASECIAEgBEYN6wEgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBx9QAai0AAEcNGCAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM7AELIANBADYCACAGQQFqIQFBFwwYC0GmASECIAEgBEYN6gEgAygCACIAIAQgAWtqIQUgASAAa0EFaiEGAkADQCABLQAAIABBwdQAai0AAEcNFyAAQQVGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM6wELIANBADYCACAGQQFqIQFBGAwXCyABIARGBEBBpQEhAgzqAQsCQAJAIAEtAABByQBrDgcAGRkZGRkBGQsgAUEBaiEBQYsBIQIM0QELIAFBAWohAUGMASECDNABC0GkASECIAEgBEYN6AEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGAkADQCABLQAAIABBptUAai0AAEcNFSAAQQFGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM6QELIANBADYCACAGQQFqIQFBCQwVC0GjASECIAEgBEYN5wEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGAkADQCABLQAAIABBpNUAai0AAEcNFCAAQQFGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM6AELIANBADYCACAGQQFqIQFBHwwUC0GiASECIAEgBEYN5gEgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBvtQAai0AAEcNEyAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM5wELIANBADYCACAGQQFqIQFBAgwTC0GhASECIAEgBEYN5QEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGA0AgAS0AACAAQbzUAGotAABHDREgAEEBRg0CIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADOUBCyABIARGBEBBoAEhAgzlAQtBASABLQAAQd8ARw0RGiABQQFqIQFBhwEhAgzLAQsgA0EANgIAIAZBAWohAUGIASECDMoBC0GfASECIAEgBEYN4gEgAygCACIAIAQgAWtqIQUgASAAa0EIaiEGAkADQCABLQAAIABBhNUAai0AAEcNDyAAQQhGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM4wELIANBADYCACAGQQFqIQFBKQwPC0GeASECIAEgBEYN4QEgAygCACIAIAQgAWtqIQUgASAAa0EDaiEGAkADQCABLQAAIABBuNQAai0AAEcNDiAAQQNGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM4gELIANBADYCACAGQQFqIQFBLQwOCyABIARGBEBBnQEhAgzhAQsgAS0AAEHFAEcNDiABQQFqIQFBhAEhAgzHAQsgASAERgRAQZwBIQIM4AELAkACQCABLQAAQcwAaw4IAA8PDw8PDwEPCyABQQFqIQFBggEhAgzHAQsgAUEBaiEBQYMBIQIMxgELQZsBIQIgASAERg3eASADKAIAIgAgBCABa2ohBSABIABrQQRqIQYCQANAIAEtAAAgAEGz1ABqLQAARw0LIABBBEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzfAQsgA0EANgIAIAZBAWohAUEjDAsLQZoBIQIgASAERg3dASADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGw1ABqLQAARw0KIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzeAQsgA0EANgIAIAZBAWohAUEADAoLIAEgBEYEQEGZASECDN0BCwJAAkAgAS0AAEHIAGsOCAAMDAwMDAwBDAsgAUEBaiEBQf0AIQIMxAELIAFBAWohAUGAASECDMMBCyABIARGBEBBmAEhAgzcAQsCQAJAIAEtAABBzgBrDgMACwELCyABQQFqIQFB/gAhAgzDAQsgAUEBaiEBQf8AIQIMwgELIAEgBEYEQEGXASECDNsBCyABLQAAQdkARw0IIAFBAWohAUEIDAcLQZYBIQIgASAERg3ZASADKAIAIgAgBCABa2ohBSABIABrQQNqIQYCQANAIAEtAAAgAEGs1ABqLQAARw0GIABBA0YNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzaAQsgA0EANgIAIAZBAWohAUEFDAYLQZUBIQIgASAERg3YASADKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEGm1ABqLQAARw0FIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzZAQsgA0EANgIAIAZBAWohAUEWDAULQZQBIQIgASAERg3XASADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGh1QBqLQAARw0EIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzYAQsgA0EANgIAIAZBAWohAUEQDAQLIAEgBEYEQEGTASECDNcBCwJAAkAgAS0AAEHDAGsODAAGBgYGBgYGBgYGAQYLIAFBAWohAUH5ACECDL4BCyABQQFqIQFB+gAhAgy9AQtBkgEhAiABIARGDdUBIAMoAgAiACAEIAFraiEFIAEgAGtBBWohBgJAA0AgAS0AACAAQaDUAGotAABHDQIgAEEFRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADNYBCyADQQA2AgAgBkEBaiEBQSQMAgsgA0EANgIADAILIAEgBEYEQEGRASECDNQBCyABLQAAQcwARw0BIAFBAWohAUETCzoAKSADKAIEIQAgA0EANgIEIAMgACABEC4iAA0CDAELQQAhAiADQQA2AhwgAyABNgIUIANB/h82AhAgA0EGNgIMDNEBC0H4ACECDLcBCyADQZABNgIcIAMgATYCFCADIAA2AgxBACECDM8BC0EAIQACQCADKAI4IgJFDQAgAigCQCICRQ0AIAMgAhEAACEACyAARQ0AIABBFUYNASADQQA2AhwgAyABNgIUIANBgg82AhAgA0EgNgIMQQAhAgzOAQtB9wAhAgy0AQsgA0GPATYCHCADIAE2AhQgA0HsGzYCECADQRU2AgxBACECDMwBCyABIARGBEBBjwEhAgzMAQsCQCABLQAAQSBGBEAgAUEBaiEBDAELIANBADYCHCADIAE2AhQgA0GbHzYCECADQQY2AgxBACECDMwBC0ECIQIMsgELA0AgAS0AAEEgRw0CIAQgAUEBaiIBRw0AC0GOASECDMoBCyABIARGBEBBjQEhAgzKAQsCQCABLQAAQQlrDgRKAABKAAtB9QAhAgywAQsgAy0AKUEFRgRAQfYAIQIMsAELQfQAIQIMrwELIAEgBEYEQEGMASECDMgBCyADQRA2AgggAyABNgIEDAoLIAEgBEYEQEGLASECDMcBCwJAIAEtAABBCWsOBEcAAEcAC0HzACECDK0BCyABIARHBEAgA0EQNgIIIAMgATYCBEHxACECDK0BC0GKASECDMUBCwJAIAEgBEcEQANAIAEtAABBoNAAai0AACIAQQNHBEACQCAAQQFrDgJJAAQLQfAAIQIMrwELIAQgAUEBaiIBRw0AC0GIASEC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BCABQQFqIgFHDQALQfsAIQIMpwELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0DIANB2wA2AhwgAyABNgIUIAMgADYCDEEAIQIMpgELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0DIANB3QA2AhwgAyABNgIUIAMgADYCDEEAIQIMpQELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0DIANB+gA2AhwgAyABNgIUIAMgADYCDEEAIQIMpAELIANBADYCHCADIAE2AhQgA0G8CjYCECADQQc2AgxBACECDKMBC0HPACECDIkBC0HRACECDIgBC0HnACECDIcBCyABIARGBEBB+gAhAgygAQsCQCABLQAAQQlrDgQgAAAgAAsgAUEBaiEBQeYAIQIMhgELIAEgBEYEQEH5ACECDJ8BCwJAIAEtAABBCWsOBB8AAB8AC0EAIQACQCADKAI4IgJFDQAgAigCOCICRQ0AIAMgAhEAACEACyAARQRAQeIBIQIMhgELIABBFUcEQCADQQA2AhwgAyABNgIUIANByQ02AhAgA0EaNgIMQQAhAgyfAQsgA0H4ADYCHCADIAE2AhQgA0HqGjYCECADQRU2AgxBACECDJ4BCyABIARHBEAgA0ENNgIIIAMgATYCBEHkACECDIUBC0H3ACECDJ0BCyABIARGBEBB9gAhAgydAQsCQAJAAkAgAS0AAEHIAGsOCwABCwsLCwsLCwsCCwsgAUEBaiEBQd0AIQIMhQELIAFBAWohAUHgACECDIQBCyABQQFqIQFB4wAhAgyDAQtB9QAhAiABIARGDZsBIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQbXVAGotAABHDQggAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADJwBCyADKAIEIQAgA0IANwMAIAMgACAGQQFqIgEQKyIABEAgA0H0ADYCHCADIAE2AhQgAyAANgIMQQAhAgycAQtB4gAhAgyCAQtBACEAAkAgAygCOCICRQ0AIAIoAjQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0HqDTYCECADQSY2AgxBACECDJwBC0HhACECDIIBCyADQfMANgIcIAMgATYCFCADQYAbNgIQIANBFTYCDEEAIQIMmgELIAMtACkiAEEja0ELSQ0JAkAgAEEGSw0AQQEgAHRBygBxRQ0ADAoLQQAhAiADQQA2AhwgAyABNgIUIANB7Qk2AhAgA0EINgIMDJkBC0HyACECIAEgBEYNmAEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGAkADQCABLQAAIABBs9UAai0AAEcNBSAAQQFGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMmQELIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARArIgAEQCADQfEANgIcIAMgATYCFCADIAA2AgxBACECDJkBC0HfACECDH8LQQAhAAJAIAMoAjgiAkUNACACKAI0IgJFDQAgAyACEQAAIQALAkAgAARAIABBFUYNASADQQA2AhwgAyABNgIUIANB6g02AhAgA0EmNgIMQQAhAgyZAQtB3gAhAgx/CyADQfAANgIcIAMgATYCFCADQYAbNgIQIANBFTYCDEEAIQIMlwELIAMtAClBIUYNBiADQQA2AhwgAyABNgIUIANBkQo2AhAgA0EINgIMQQAhAgyWAQtB7wAhAiABIARGDZUBIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQbDVAGotAABHDQIgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADJYBCyADKAIEIQAgA0IANwMAIAMgACAGQQFqIgEQKyIARQ0CIANB7QA2AhwgAyABNgIUIAMgADYCDEEAIQIMlQELIANBADYCAAsgAygCBCEAIANBADYCBCADIAAgARArIgBFDYABIANB7gA2AhwgAyABNgIUIAMgADYCDEEAIQIMkwELQdwAIQIMeQtBACEAAkAgAygCOCICRQ0AIAIoAjQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0HqDTYCECADQSY2AgxBACECDJMBC0HbACECDHkLIANB7AA2AhwgAyABNgIUIANBgBs2AhAgA0EVNgIMQQAhAgyRAQsgAy0AKSIAQSNJDQAgAEEuRg0AIANBADYCHCADIAE2AhQgA0HJCTYCECADQQg2AgxBACECDJABC0HaACECDHYLIAEgBEYEQEHrACECDI8BCwJAIAEtAABBL0YEQCABQQFqIQEMAQsgA0EANgIcIAMgATYCFCADQbI4NgIQIANBCDYCDEEAIQIMjwELQdkAIQIMdQsgASAERwRAIANBDjYCCCADIAE2AgRB2AAhAgx1C0HqACECDI0BCyABIARGBEBB6QAhAgyNAQsgAS0AAEEwayIAQf8BcUEKSQRAIAMgADoAKiABQQFqIQFB1wAhAgx0CyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNeiADQegANgIcIAMgATYCFCADIAA2AgxBACECDIwBCyABIARGBEBB5wAhAgyMAQsCQCABLQAAQS5GBEAgAUEBaiEBDAELIAMoAgQhACADQQA2AgQgAyAAIAEQLyIARQ17IANB5gA2AhwgAyABNgIUIAMgADYCDEEAIQIMjAELQdYAIQIMcgsgASAERgRAQeUAIQIMiwELQQAhAEEBIQVBASEHQQAhAgJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAIAEtAABBMGsOCgoJAAECAwQFBggLC0ECDAYLQQMMBQtBBAwEC0EFDAMLQQYMAgtBBwwBC0EICyECQQAhBUEAIQcMAgtBCSECQQEhAEEAIQVBACEHDAELQQAhBUEBIQILIAMgAjoAKyABQQFqIQECQAJAIAMtAC5BEHENAAJAAkACQCADLQAqDgMBAAIECyAHRQ0DDAILIAANAQwCCyAFRQ0BCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNAiADQeIANgIcIAMgATYCFCADIAA2AgxBACECDI0BCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNfSADQeMANgIcIAMgATYCFCADIAA2AgxBACECDIwBCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNeyADQeQANgIcIAMgATYCFCADIAA2AgwMiwELQdQAIQIMcQsgAy0AKUEiRg2GAUHTACECDHALQQAhAAJAIAMoAjgiAkUNACACKAJEIgJFDQAgAyACEQAAIQALIABFBEBB1QAhAgxwCyAAQRVHBEAgA0EANgIcIAMgATYCFCADQaQNNgIQIANBITYCDEEAIQIMiQELIANB4QA2AhwgAyABNgIUIANB0Bo2AhAgA0EVNgIMQQAhAgyIAQsgASAERgRAQeAAIQIMiAELAkACQAJAAkACQCABLQAAQQprDgQBBAQABAsgAUEBaiEBDAELIAFBAWohASADQS9qLQAAQQFxRQ0BC0HSACECDHALIANBADYCHCADIAE2AhQgA0G2ETYCECADQQk2AgxBACECDIgBCyADQQA2AhwgAyABNgIUIANBthE2AhAgA0EJNgIMQQAhAgyHAQsgASAERgRAQd8AIQIMhwELIAEtAABBCkYEQCABQQFqIQEMCQsgAy0ALkHAAHENCCADQQA2AhwgAyABNgIUIANBthE2AhAgA0ECNgIMQQAhAgyGAQsgASAERgRAQd0AIQIMhgELIAEtAAAiAkENRgRAIAFBAWohAUHQACECDG0LIAEhACACQQlrDgQFAQEFAQsgBCABIgBGBEBB3AAhAgyFAQsgAC0AAEEKRw0AIABBAWoMAgtBACECIANBADYCHCADIAA2AhQgA0HKLTYCECADQQc2AgwMgwELIAEgBEYEQEHbACECDIMBCwJAIAEtAABBCWsOBAMAAAMACyABQQFqCyEBQc4AIQIMaAsgASAERgRAQdoAIQIMgQELIAEtAABBCWsOBAABAQABC0EAIQIgA0EANgIcIANBmhI2AhAgA0EHNgIMIAMgAUEBajYCFAx/CyADQYASOwEqQQAhAAJAIAMoAjgiAkUNACACKAI4IgJFDQAgAyACEQAAIQALIABFDQAgAEEVRw0BIANB2QA2AhwgAyABNgIUIANB6ho2AhAgA0EVNgIMQQAhAgx+C0HNACECDGQLIANBADYCHCADIAE2AhQgA0HJDTYCECADQRo2AgxBACECDHwLIAEgBEYEQEHZACECDHwLIAEtAABBIEcNPSABQQFqIQEgAy0ALkEBcQ09IANBADYCHCADIAE2AhQgA0HCHDYCECADQR42AgxBACECDHsLIAEgBEYEQEHYACECDHsLAkACQAJAAkACQCABLQAAIgBBCmsOBAIDAwABCyABQQFqIQFBLCECDGULIABBOkcNASADQQA2AhwgAyABNgIUIANB5xE2AhAgA0EKNgIMQQAhAgx9CyABQQFqIQEgA0Evai0AAEEBcUUNcyADLQAyQYABcUUEQCADQTJqIQIgAxA1QQAhAAJAIAMoAjgiBkUNACAGKAIoIgZFDQAgAyAGEQAAIQALAkACQCAADhZNTEsBAQEBAQEBAQEBAQEBAQEBAQEAAQsgA0EpNgIcIAMgATYCFCADQawZNgIQIANBFTYCDEEAIQIMfgsg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c3BvbnNlIHN0YXR1cwBFeHBlY3RlZCBMRiBhZnRlciBoZWFkZXJzAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMAVXNlciBjYWxsYmFjayBlcnJvcgBgb25fcmVzZXRgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19oZWFkZXJgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2JlZ2luYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlYCBjYWxsYmFjayBlcnJvcgBgb25fc3RhdHVzX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdmVyc2lvbl9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3VybF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3Byb3RvY29sX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fcHJvdG9jb2wARW1wdHkgQ29udGVudC1MZW5ndGgASW52YWxpZCBjaGFyYWN0ZXIgaW4gQ29udGVudC1MZW5ndGgAVHJhbnNmZXItRW5jb2RpbmcgY2FuJ3QgYmUgcHJlc2VudCB3aXRoIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgc2l6ZQBFeHBlY3RlZCBMRiBhZnRlciBjaHVuayBzaXplAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBVbmV4cGVjdGVkIHdoaXRlc3BhY2UgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgTEYgYWZ0ZXIgaGVhZGVyIHZhbHVlAEludmFsaWQgYFRyYW5zZmVyLUVuY29kaW5nYCBoZWFkZXIgdmFsdWUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciBjaHVuayBleHRlbnNpb24gdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZSB2YWx1ZQBJbnZhbGlkIHF1b3RlZC1wYWlyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAFBhdXNlZCBieSBvbl9oZWFkZXJzX2NvbXBsZXRlAEludmFsaWQgRU9GIHN0YXRlAG9uX3Jlc2V0IHBhdXNlAG9uX2NodW5rX2hlYWRlciBwYXVzZQBvbl9tZXNzYWdlX2JlZ2luIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZSBwYXVzZQBvbl9zdGF0dXNfY29tcGxldGUgcGF1c2UAb25fdmVyc2lvbl9jb21wbGV0ZSBwYXVzZQBvbl91cmxfY29tcGxldGUgcGF1c2UAb25fcHJvdG9jb2xfY29tcGxldGUgcGF1c2UAb25fY2h1bmtfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX3ZhbHVlX2NvbXBsZXRlIHBhdXNlAG9uX21lc3NhZ2VfY29tcGxldGUgcGF1c2UAb25fbWV0aG9kX2NvbXBsZXRlIHBhdXNlAG9uX2hlYWRlcl9maWVsZF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19leHRlbnNpb25fbmFtZSBwYXVzZQBVbmV4cGVjdGVkIHNwYWNlIGFmdGVyIHN0YXJ0IGxpbmUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciByZXNwb25zZSBsaW5lAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fY2h1bmtfZXh0ZW5zaW9uX25hbWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBuYW1lAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgZXh0ZW5zaW9uIG5hbWUASW52YWxpZCBzdGF0dXMgY29kZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABNaXNzaW5nIGV4cGVjdGVkIENSIGFmdGVyIGNodW5rIGRhdGEARXhwZWN0ZWQgTEYgYWZ0ZXIgY2h1bmsgZGF0YQBVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AARGF0YSBhZnRlciBgQ29ubmVjdGlvbjogY2xvc2VgAFNXSVRDSF9QUk9YWQBVU0VfUFJPWFkATUtBQ1RJVklUWQBVTlBST0NFU1NBQkxFX0VOVElUWQBRVUVSWQBDT1BZAE1PVkVEX1BFUk1BTkVOVExZAFRPT19FQVJMWQBOT1RJRlkARkFJTEVEX0RFUEVOREVOQ1kAQkFEX0dBVEVXQVkAUExBWQBQVVQAQ0hFQ0tPVVQAR0FURVdBWV9USU1FT1VUAFJFUVVFU1RfVElNRU9VVABORVRXT1JLX0NPTk5FQ1RfVElNRU9VVABDT05ORUNUSU9OX1RJTUVPVVQATE9HSU5fVElNRU9VVABORVRXT1JLX1JFQURfVElNRU9VVABQT1NUAE1JU0RJUkVDVEVEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9SRVFVRVNUAENMSUVOVF9DTE9TRURfTE9BRF9CQUxBTkNFRF9SRVFVRVNUAEJBRF9SRVFVRVNUAEhUVFBfUkVRVUVTVF9TRU5UX1RPX0hUVFBTX1BPUlQAUkVQT1JUAElNX0FfVEVBUE9UAFJFU0VUX0NPTlRFTlQATk9fQ09OVEVOVABQQVJUSUFMX0NPTlRFTlQASFBFX0lOVkFMSURfQ09OU1RBTlQASFBFX0NCX1JFU0VUAEdFVABIUEVfU1RSSUNUAENPTkZMSUNUAFRFTVBPUkFSWV9SRURJUkVDVABQRVJNQU5FTlRfUkVESVJFQ1QAQ09OTkVDVABNVUxUSV9TVEFUVVMASFBFX0lOVkFMSURfU1RBVFVTAFRPT19NQU5ZX1JFUVVFU1RTAEVBUkxZX0hJTlRTAFVOQVZBSUxBQkxFX0ZPUl9MRUdBTF9SRUFTT05TAE9QVElPTlMAU1dJVENISU5HX1BST1RPQ09MUwBWQVJJQU5UX0FMU09fTkVHT1RJQVRFUwBNVUxUSVBMRV9DSE9JQ0VTAElOVEVSTkFMX1NFUlZFUl9FUlJPUgBXRUJfU0VSVkVSX1VOS05PV05fRVJST1IAUkFJTEdVTl9FUlJPUgBJREVOVElUWV9QUk9WSURFUl9BVVRIRU5USUNBVElPTl9FUlJPUgBTU0xfQ0VSVElGSUNBVEVfRVJST1IASU5WQUxJRF9YX0ZPUldBUkRFRF9GT1IAU0VUX1BBUkFNRVRFUgBHRVRfUEFSQU1FVEVSAEhQRV9VU0VSAFNFRV9PVEhFUgBIUEVfQ0JfQ0hVTktfSEVBREVSAEV4cGVjdGVkIExGIGFmdGVyIENSAE1LQ0FMRU5EQVIAU0VUVVAAV0VCX1NFUlZFUl9JU19ET1dOAFRFQVJET1dOAEhQRV9DTE9TRURfQ09OTkVDVElPTgBIRVVSSVNUSUNfRVhQSVJBVElPTgBESVNDT05ORUNURURfT1BFUkFUSU9OAE5PTl9BVVRIT1JJVEFUSVZFX0lORk9STUFUSU9OAEhQRV9JTlZBTElEX1ZFUlNJT04ASFBFX0NCX01FU1NBR0VfQkVHSU4AU0lURV9JU19GUk9aRU4ASFBFX0lOVkFMSURfSEVBREVSX1RPS0VOAElOVkFMSURfVE9LRU4ARk9SQklEREVOAEVOSEFOQ0VfWU9VUl9DQUxNAEhQRV9JTlZBTElEX1VSTABCTE9DS0VEX0JZX1BBUkVOVEFMX0NPTlRST0wATUtDT0wAQUNMAEhQRV9JTlRFUk5BTABSRVFVRVNUX0hFQURFUl9GSUVMRFNfVE9PX0xBUkdFX1VOT0ZGSUNJQUwASFBFX09LAFVOTElOSwBVTkxPQ0sAUFJJAFJFVFJZX1dJVEgASFBFX0lOVkFMSURfQ09OVEVOVF9MRU5HVEgASFBFX1VORVhQRUNURURfQ09OVEVOVF9MRU5HVEgARkxVU0gAUFJPUFBBVENIAE0tU0VBUkNIAFVSSV9UT09fTE9ORwBQUk9DRVNTSU5HAE1JU0NFTExBTkVPVVNfUEVSU0lTVEVOVF9XQVJOSU5HAE1JU0NFTExBTkVPVVNfV0FSTklORwBIUEVfSU5WQUxJRF9UUkFOU0ZFUl9FTkNPRElORwBFeHBlY3RlZCBDUkxGAEhQRV9JTlZBTElEX0NIVU5LX1NJWkUATU9WRQBDT05USU5VRQBIUEVfQ0JfU1RBVFVTX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJTX0NPTVBMRVRFAEhQRV9DQl9WRVJTSU9OX0NPTVBMRVRFAEhQRV9DQl9VUkxfQ09NUExFVEUASFBFX0NCX1BST1RPQ09MX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19DT01QTEVURQBIUEVfQ0JfSEVBREVSX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fVkFMVUVfQ09NUExFVEUASFBFX0NCX0NIVU5LX0VYVEVOU0lPTl9OQU1FX0NPTVBMRVRFAEhQRV9DQl9NRVNTQUdFX0NPTVBMRVRFAEhQRV9DQl9NRVRIT0RfQ09NUExFVEUASFBFX0NCX0hFQURFUl9GSUVMRF9DT01QTEVURQBERUxFVEUASFBFX0lOVkFMSURfRU9GX1NUQVRFAElOVkFMSURfU1NMX0NFUlRJRklDQVRFAFBBVVNFAE5PX1JFU1BPTlNFAFVOU1VQUE9SVEVEX01FRElBX1RZUEUAR09ORQBOT1RfQUNDRVBUQUJMRQBTRVJWSUNFX1VOQVZBSUxBQkxFAFJBTkdFX05PVF9TQVRJU0ZJQUJMRQBPUklHSU5fSVNfVU5SRUFDSEFCTEUAUkVTUE9OU0VfSVNfU1RBTEUAUFVSR0UATUVSR0UAUkVRVUVTVF9IRUFERVJfRklFTERTX1RPT19MQVJHRQBSRVFVRVNUX0hFQURFUl9UT09fTEFSR0UAUEFZTE9BRF9UT09fTEFSR0UASU5TVUZGSUNJRU5UX1NUT1JBR0UASFBFX1BBVVNFRF9VUEdSQURFAEhQRV9QQVVTRURfSDJfVVBHUkFERQBTT1VSQ0UAQU5OT1VOQ0UAVFJBQ0UASFBFX1VORVhQRUNURURfU1BBQ0UAREVTQ1JJQkUAVU5TVUJTQ1JJQkUAUkVDT1JEAEhQRV9JTlZBTElEX01FVEhPRABOT1RfRk9VTkQAUFJPUEZJTkQAVU5CSU5EAFJFQklORABVTkFVVEhPUklaRUQATUVUSE9EX05PVF9BTExPV0VEAEhUVFBfVkVSU0lPTl9OT1RfU1VQUE9SVEVEAEFMUkVBRFlfUkVQT1JURUQAQUNDRVBURUQATk9UX0lNUExFTUVOVEVEAExPT1BfREVURUNURUQASFBFX0NSX0VYUEVDVEVEAEhQRV9MRl9FWFBFQ1RFRABDUkVBVEVEAElNX1VTRUQASFBFX1BBVVNFRABUSU1FT1VUX09DQ1VSRUQAUEFZTUVOVF9SRVFVSVJFRABQUkVDT05ESVRJT05fUkVRVUlSRUQAUFJPWFlfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATkVUV09SS19BVVRIRU5USUNBVElPTl9SRVFVSVJFRABMRU5HVEhfUkVRVUlSRUQAU1NMX0NFUlRJRklDQVRFX1JFUVVJUkVEAFVQR1JBREVfUkVRVUlSRUQAUEFHRV9FWFBJUkVEAFBSRUNPTkRJVElPTl9GQUlMRUQARVhQRUNUQVRJT05fRkFJTEVEAFJFVkFMSURBVElPTl9GQUlMRUQAU1NMX0hBTkRTSEFLRV9GQUlMRUQATE9DS0VEAFRSQU5TRk9STUFUSU9OX0FQUExJRUQATk9UX01PRElGSUVEAE5PVF9FWFRFTkRFRABCQU5EV0lEVEhfTElNSVRfRVhDRUVERUQAU0lURV9JU19PVkVSTE9BREVEAEhFQUQARXhwZWN0ZWQgSFRUUC8sIFJUU1AvIG9yIElDRS8A5xUAAK8VAACkEgAAkhoAACYWAACeFAAA2xkAAHkVAAB+EgAA/hQAADYVAAALFgAA2BYAAPMSAABCGAAArBYAABIVAAAUFwAA7xcAAEgUAABxFwAAshoAAGsZAAB+GQAANRQAAIIaAABEFwAA/RYAAB4YAACHFwAAqhkAAJMSAAAHGAAALBcAAMoXAACkFwAA5xUAAOcVAABYFwAAOxgAAKASAAAtHAAAwxEAAEgRAADeEgAAQhMAAKQZAAD9EAAA9xUAAKUVAADvFgAA+BkAAEoWAABWFgAA9RUAAAoaAAAIGgAAARoAAKsVAABCEgAA1xAAAEwRAAAFGQAAVBYAAB4RAADKGQAAyBkAAE4WAAD/GAAAcRQAAPAVAADuFQAAlBkAAPwVAAC/GQAAmxkAAHwUAABDEQAAcBgAAJUUAAAnFAAAGRQAANUSAADUGQAARBYAAPcQAEG5OwsBAQBB0DsL4AEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEDAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBuj0LBAEAAAIAQdE9C14DBAMDAwMDAAADAwADAwADAwMDAwMDAwMDAAUAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAwADAEG6PwsEAQAAAgBB0T8LXgMAAwMDAwMAAAMDAAMDAAMDAwMDAwMDAwMABAAFAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwADAAMAQbDBAAsNbG9zZWVlcC1hbGl2ZQBBycEACwEBAEHgwQAL4AEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBycMACwEBAEHgwwAL5wEBAQEBAQEBAQEBAQECAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAWNodW5rZWQAQfHFAAteAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQBB0McACyFlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AQYDIAAsgcmFuc2Zlci1lbmNvZGluZ3BncmFkZQ0KDQpTTQ0KDQoAQanIAAsFAQIAAQMAQcDIAAtfBAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanKAAsFAQIAAQMAQcDKAAtfBAUFBgUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanMAAsEAQAAAQBBwcwAC14CAgACAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAEGpzgALBQECAAEDAEHAzgALXwQFAAAFBQUFBQUFBQUFBQYFBQUFBQUFBQUFBQUABQAHCAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQAFAAUABQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAAAAFAEGp0AALBQEBAAEBAEHA0AALAQEAQdrQAAtBAgAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAQanSAAsFAQEAAQEAQcDSAAsBAQBBytIACwYCAAAAAAIAQeHSAAs6AwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBBoNQAC50BTk9VTkNFRUNLT1VUTkVDVEVURUNSSUJFTFVTSEVURUFEU0VBUkNIUkdFQ1RJVklUWUxFTkRBUlZFT1RJRllQVElPTlNDSFNFQVlTVEFUQ0hHRVVFUllPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFVFRQQ0VUU1BBRFRQLw==","base64")}})});var $2Q=R((bsY,Z2Q)=>{var{Buffer:pj0}=u("node:buffer"),Pr;Object.defineProperty(Z2Q,"exports",{get:()=>{return Pr?Pr:Pr=pj0.from("AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAn9/AGABfwBgBH9/f38Bf2AAAGADf39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQAEA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAAzU0BQYAAAMAAAAAAAADAQMAAwMDAAACAAAAAAICAgICAgICAgIBAQEBAQEBAQEBAwAAAwAAAAQFAXABExMFAwEAAgYIAX8BQcDZBAsHxQcoBm1lbW9yeQIAC19pbml0aWFsaXplAAgZX19pbmRpcmVjdF9mdW5jdGlvbl90YWJsZQEAC2xsaHR0cF9pbml0AAkYbGxodHRwX3Nob3VsZF9rZWVwX2FsaXZlADcMbGxodHRwX2FsbG9jAAsGbWFsbG9jADkLbGxodHRwX2ZyZWUADARmcmVlAAwPbGxodHRwX2dldF90eXBlAA0VbGxodHRwX2dldF9odHRwX21ham9yAA4VbGxodHRwX2dldF9odHRwX21pbm9yAA8RbGxodHRwX2dldF9tZXRob2QAEBZsbGh0dHBfZ2V0X3N0YXR1c19jb2RlABESbGxodHRwX2dldF91cGdyYWRlABIMbGxodHRwX3Jlc2V0ABMObGxodHRwX2V4ZWN1dGUAFBRsbGh0dHBfc2V0dGluZ3NfaW5pdAAVDWxsaHR0cF9maW5pc2gAFgxsbGh0dHBfcGF1c2UAFw1sbGh0dHBfcmVzdW1lABgbbGxodHRwX3Jlc3VtZV9hZnRlcl91cGdyYWRlABkQbGxodHRwX2dldF9lcnJubwAaF2xsaHR0cF9nZXRfZXJyb3JfcmVhc29uABsXbGxodHRwX3NldF9lcnJvcl9yZWFzb24AHBRsbGh0dHBfZ2V0X2Vycm9yX3BvcwAdEWxsaHR0cF9lcnJub19uYW1lAB4SbGxodHRwX21ldGhvZF9uYW1lAB8SbGxodHRwX3N0YXR1c19uYW1lACAabGxodHRw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AXRrQT5qIQILIAEgAjYCHCABQgA3AhAgAkECdEH01wBqIQACQEHI1QAoAgAiA0EBIAJ0IgdxRQRAIAAgATYCAEHI1QAgAyAHcjYCACABIAA2AhggASABNgIIIAEgATYCDAwBCyAEQRkgAkEBdmtBACACQR9HG3QhAiAAKAIAIQACQANAIAAiAygCBEF4cSAERg0BIAJBHXYhACACQQF0IQIgAyAAQQRxakEQaiIHKAIAIgANAAsgByABNgIAIAEgAzYCGCABIAE2AgwgASABNgIIDAELIAMoAggiACABNgIMIAMgATYCCCABQQA2AhggASADNgIMIAEgADYCCAtB5NUAQeTVACgCAEEBayIAQX8gABs2AgALCwcAIAAtACgLBwAgAC0AKgsHACAALQArCwcAIAAtACkLBwAgAC8BNAsHACAALQAwC0ABBH8gACgCGCEBIAAvAS4hAiAALQAoIQMgACgCOCEEIAAQOCAAIAQ2AjggACADOgAoIAAgAjsBLiAAIAE2AhgLhocCAwd/A34BeyABIAJqIQQCQCAAIgMoAgwiAA0AIAMoAgQEQCADIAE2AgQLIwBBEGsiCSQAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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DAgLQeMBDAcLQdcBDAYLQdgBDAULQdkBDAQLQdoBDAMLQdsBDAILQd0BDAELQdwBCyECA0ACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAMCfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAn8CQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAwJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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A0EXNgIcIAMgADYCDCADIAFBAWo2AhQM+AILIABBFUYNI0EAIQIgA0EANgIcIAMgATYCFCADQdYMNgIQIANBIzYCDAz3AgsgAygCBCEAQQAhAiADQQA2AgQgAyAAIAEQNCIARQRAIAFBAWohAQwdCyADQRk2AhwgAyAANgIMIAMgAUEBajYCFAz2AgsgAygCBCEAQQAhAiADQQA2AgQgAyAAIAEQNCIARQRAIAFBAWohAQzvAgsgA0EaNgIcIAMgADYCDCADIAFBAWo2AhQM9QILIABBFUYNH0EAIQIgA0EANgIcIAMgATYCFCADQdAPNgIQIANBIjYCDAz0AgsgAygCBCEAIANBADYCBCADIAAgARAzIgBFBEAgAUEBaiEBDBsLIANBHDYCHCADIAA2AgwgAyABQQFqNgIUQQAhAgzzAgsgAygCBCEAIANBADYCBCADIAAgARAzIgBFBEAgAUEBaiEBDOsCCyADQR02AhwgAyAANgIMIAMgAUEBajYCFEEAIQIM8gILIABBO0cNASABQQFqIQELQSYhAgzXAgtBACECIANBADYCHCADIAE2AhQgA0GfFTYCECADQQw2AgwM7wILIAEgBEcEQANAIAEtAABBIEcNhAIgBCABQQFqIgFHDQALQSwhAgzvAgtBLCECDO4CCyABIARGBEBBNCECDO4CCwJAAkADQAJAIAEtAABBCmsOBAIAAAMACyAEIAFBAWoiAUcNAAtBNCECDO8CCyADKAIEIQAgA0EANgIEIAMgACABEDEiAEUNnwIgA0EyNgIcIAMgATYCFCADIAA2AgxBACECDO4CCyADKAIEIQAgA0EANgIEIAMgACABEDEiAEUEQCABQQFqIQEMnwILIANBMjYCHCADIAA2AgwgAyABQQFqNgIUQQAhAgztAgsgASAERwRAAkADQCABLQAAQTBrIgBB/wFxQQpPBEBBOiECDNcCCyADKQMgIgtCmbPmzJmz5swZVg0BIAMgC0IKfiIKNwMgIAogAK1C/wGDIgtCf4VWDQEgAyAKIAt8NwMgIAQgAUEBaiIBRw0AC0HAACECDO4CCyADKAIEIQAgA0EANgIEIAMgACABQQFqIgEQMSIADRcM4gILQcAAIQIM7AILIAEgBEYEQEHJACECDOwCCwJAA0ACQCABLQAAQQlrDhgAAqICogKpAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAgCiAgsgBCABQQFqIgFHDQALQckAIQIM7AILIAFBAWohASADQS9qLQAAQQFxDaUCIANBADYCHCADIAE2AhQgA0GXEDYCECADQQo2AgxBACECDOsCCyABIARHBEADQCABLQAAQSBHDRUgBCABQQFqIgFHDQALQfgAIQIM6wILQfgAIQIM6gILIANBAjoAKAw4C0EAIQIgA0EANgIcIANBvws2AhAgA0ECNgIMIAMgAUEBajYCFAzoAgtBACECDM4CC0ENIQIMzQILQRMhAgzMAgtBFSECDMsCC0EWIQIMygILQRghAgzJAgtBGSECDMgCC0EaIQIMxwILQRshAgzGAgtBHCECDMUCC0EdIQIMxAILQR4hAgzDAgtBHyECDMICC0EgIQIMwQILQSIhAgzAAgtBIyECDL8CC0ElIQIMvgILQeUAIQIMvQILIANBPTYCHCADIAE2AhQgAyAANgIMQQAhAgzVAgsgA0EbNgIcIAMgATYCFCADQaQcNgIQIANBFTYCDEEAIQIM1AILIANBIDYCHCADIAE2AhQgA0GYGjYCECADQRU2AgxBACECDNMCCyADQRM2AhwgAyABNgIUIANBmBo2AhAgA0EVNgIMQQAhAgzSAgsgA0ELNgIcIAMgATYCFCADQZgaNgIQIANBFTYCDEEAIQIM0QILIANBEDYCHCADIAE2AhQgA0GYGjYCECADQRU2AgxBACECDNACCyADQSA2AhwgAyABNgIUIANBpBw2AhAgA0EVNgIMQQAhAgzPAgsgA0ELNgIcIAMgATYCFCADQaQcNgIQIANBFTYCDEEAIQIMzgILIANBDDYCHCADIAE2AhQgA0GkHDYCECADQRU2AgxBACECDM0CC0EAIQIgA0EANgIcIAMgATYCFCADQd0ONgIQIANBEjYCDAzMAgsCQANAAkAgAS0AAEEKaw4EAAICAAILIAQgAUEBaiIBRw0AC0H9ASECDMwCCwJAAkAgAy0ANkEBRw0AQQAhAAJAIAMoAjgiAkUNACACKAJgIgJFDQAgAyACEQAAIQALIABFDQAgAEEVRw0BIANB/AE2AhwgAyABNgIUIANB3Bk2AhAgA0EVNgIMQQAhAgzNAgtB3AEhAgyzAgsgA0EANgIcIAMgATYCFCADQfkLNgIQIANBHzYCDEEAIQIMywILAkACQCADLQAoQQFrDgIEAQALQdsBIQIMsgILQdQBIQIMsQILIANBAjoAMUEAIQACQCADKAI4IgJFDQAgAigCACICRQ0AIAMgAhEAACEACyAARQRAQd0BIQIMsQILIABBFUcEQCADQQA2AhwgAyABNgIUIANBtAw2AhAgA0EQNgIMQQAhAgzKAgsgA0H7ATYCHCADIAE2AhQgA0GBGjYCECADQRU2AgxBACECDMkCCyABIARGBEBB+gEhAgzJAgsgAS0AAEHIAEYNASADQQE6ACgLQcABIQIMrgILQdoBIQIMrQILIAEgBEcEQCADQQw2AgggAyABNgIEQdkBIQIMrQILQfkBIQIMxQILIAEgBEYEQEH4ASECDMUCCyABLQAAQcgARw0EIAFBAWohAUHYASECDKsCCyABIARGBEBB9wEhAgzEAgsCQAJAIAEtAABBxQBrDhAABQUFBQUFBQUFBQUFBQUBBQsgAUEBaiEBQdYBIQIMqwILIAFBAWohAUHXASECDKoCC0H2ASECIAEgBEYNwgIgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABButUAai0AAEcNAyAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMwwILIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARAuIgBFBEBB4wEhAgyqAgsgA0H1ATYCHCADIAE2AhQgAyAANgIMQQAhAgzCAgtB9AEhAiABIARGDcECIAMoAgAiACAEIAFraiEFIAEgAGtBAWohBgJAA0AgAS0AACAAQbjVAGotAABHDQIgAEEBRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADMICCyADQYEEOwEoIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARAuIgANAwwCCyADQQA2AgALQQAhAiADQQA2AhwgAyABNgIUIANB5R82AhAgA0EINgIMDL8CC0HVASECDKUCCyADQfMBNgIcIAMgATYCFCADIAA2AgxBACECDL0CC0EAIQACQCADKAI4IgJFDQAgAigCQCICRQ0AIAMgAhEAACEACyAARQ1uIABBFUcEQCADQQA2AhwgAyABNgIUIANBgg82AhAgA0EgNgIMQQAhAgy9AgsgA0GPATYCHCADIAE2AhQgA0HsGzYCECADQRU2AgxBACECDLwCCyABIARHBEAgA0ENNgIIIAMgATYCBEHTASECDKMCC0HyASECDLsCCyABIARGBEBB8QEhAgy7AgsCQAJAAkAgAS0AAEHIAGsOCwABCAgICAgICAgCCAsgAUEBaiEBQdABIQIMowILIAFBAWohAUHRASECDKICCyABQQFqIQFB0gEhAgyhAgtB8AEhAiABIARGDbkCIAMoAgAiACAEIAFraiEGIAEgAGtBAmohBQNAIAEtAAAgAEG11QBqLQAARw0EIABBAkYNAyAAQQFqIQAgBCABQQFqIgFHDQALIAMgBjYCAAy5AgtB7wEhAiABIARGDbgCIAMoAgAiACAEIAFraiEGIAEgAGtBAWohBQNAIAEtAAAgAEGz1QBqLQAARw0DIABBAUYNAiAAQQFqIQAgBCABQQFqIgFHDQALIAMgBjYCAAy4AgtB7gEhAiABIARGDbcCIAMoAgAiACAEIAFraiEGIAEgAGtBAmohBQNAIAEtAAAgAEGw1QBqLQAARw0CIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBjYCAAy3AgsgAygCBCEAIANCADcDACADIAAgBUEBaiIBECsiAEUNAiADQewBNgIcIAMgATYCFCADIAA2AgxBACECDLYCCyADQQA2AgALIAMoAgQhACADQQA2AgQgAyAAIAEQKyIARQ2cAiADQe0BNgIcIAMgATYCFCADIAA2AgxBACECDLQCC0HPASECDJoCC0EAIQACQCADKAI4IgJFDQAgAigCNCICRQ0AIAMgAhEAACEACwJAIAAEQCAAQRVGDQEgA0EANgIcIAMgATYCFCADQeoNNgIQIANBJjYCDEEAIQIMtAILQc4BIQIMmgILIANB6wE2AhwgAyABNgIUIANBgBs2AhAgA0EVNgIMQQAhAgyyAgsgASAERgRAQesBIQIMsgILIAEtAABBL0YEQCABQQFqIQEMAQsgA0EANgIcIAMgATYCFCADQbI4NgIQIANBCDYCDEEAIQIMsQILQc0BIQIMlwILIAEgBEcEQCADQQ42AgggAyABNgIEQcwBIQIMlwILQeoBIQIMrwILIAEgBEYEQEHpASECDK8CCyABLQAAQTBrIgBB/wFxQQpJBEAgAyAAOgAqIAFBAWohAUHLASECDJYCCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNlwIgA0HoATYCHCADIAE2AhQgAyAANgIMQQAhAgyuAgsgASAERgRAQecBIQIMrgILAkAgAS0AAEEuRgRAIAFBAWohAQwBCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNmAIgA0HmATYCHCADIAE2AhQgAyAANgIMQQAhAgyuAgtBygEhAgyUAgsgASAERgRAQeUBIQIMrQILQQAhAEEBIQVBASEHQQAhAgJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAIAEtAABBMGsOCgoJAAECAwQFBggLC0ECDAYLQQMMBQtBBAwEC0EFDAMLQQYMAgtBBwwBC0EICyECQQAhBUEAIQcMAgtBCSECQQEhAEEAIQVBACEHDAELQQAhBUEBIQILIAMgAjoAKyABQQFqIQECQAJAIAMtAC5BEHENAAJAAkACQCADLQAqDgMBAAIECyAHRQ0DDAILIAANAQwCCyAFRQ0BCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNAiADQeIBNgIcIAMgATYCFCADIAA2AgxBACECDK8CCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNmgIgA0HjATYCHCADIAE2AhQgAyAANgIMQQAhAgyuAgsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDZgCIANB5AE2AhwgAyABNgIUIAMgADYCDAytAgtByQEhAgyTAgtBACEAAkAgAygCOCICRQ0AIAIoAkQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0GkDTYCECADQSE2AgxBACECDK0CC0HIASECDJMCCyADQeEBNgIcIAMgATYCFCADQdAaNgIQIANBFTYCDEEAIQIMqwILIAEgBEYEQEHhASECDKsCCwJAIAEtAABBIEYEQCADQQA7ATQgAUEBaiEBDAELIANBADYCHCADIAE2AhQgA0GZETYCECADQQk2AgxBACECDKsCC0HHASECDJECCyABIARGBEBB4AEhAgyqAgsCQCABLQAAQTBrQf8BcSICQQpJBEAgAUEBaiEBAkAgAy8BNCIAQZkzSw0AIAMgAEEKbCIAOwE0IABB/v8DcSACQf//A3NLDQAgAyAAIAJqOwE0DAILQQAhAiADQQA2AhwgAyABNgIUIANBlR42AhAgA0ENNgIMDKsCCyADQQA2AhwgAyABNgIUIANBlR42AhAgA0ENNgIMQQAhAgyqAgtBxgEhAgyQAgsgASAERgRAQd8BIQIMqQILAkAgAS0AAEEwa0H/AXEiAkEKSQRAIAFBAWohAQJAIAMvATQiAEGZM0sNACADIABBCmwiADsBNCAAQf7/A3EgAkH//wNzSw0AIAMgACACajsBNAwCC0EAIQIgA0EANgIcIAMgATYCFCADQZUeNgIQIANBDTYCDAyqAgsgA0EANgIcIAMgATYCFCADQZUeNgIQIANBDTYCDEEAIQIMqQILQcUBIQIMjwILIAEgBEYEQEHeASECDKgCCwJAIAEtAABBMGtB/wFxIgJBCkkEQCABQQFqIQECQCADLwE0IgBBmTNLDQAgAyAAQQpsIgA7ATQgAEH+/wNxIAJB//8Dc0sNACADIAAgAmo7ATQMAgtBACECIANBADYCHCADIAE2AhQgA0GVHjYCECADQQ02AgwMqQILIANBADYCHCADIAE2AhQgA0GVHjYCECADQQ02AgxBACECDKgCC0HEASECDI4CCyABIARGBEBB3QEhAgynAgsCQAJAAkACQCABLQAAQQprDhcCAwMAAwMDAwMDAwMDAwMDAwMDAwMDAQMLIAFBAWoMBQsgAUEBaiEBQcMBIQIMjwILIAFBAWohASADQS9qLQAAQQFxDQggA0EANgIcIAMgATYCFCADQY0LNgIQIANBDTYCDEEAIQIMpwILIANBADYCHCADIAE2AhQgA0GNCzYCECADQQ02AgxBACECDKYCCyABIARHBEAgA0EPNgIIIAMgATYCBEEBIQIMjQILQdwBIQIMpQILAkACQANAAkAgAS0AAEEKaw4EAgAAAwALIAQgAUEBaiIBRw0AC0HbASECDKYCCyADKAIEIQAgA0EANgIEIAMgACABEC0iAEUEQCABQQFqIQEMBAsgA0HaATYCHCADIAA2AgwgAyABQQFqNgIUQQAhAgylAgsgAygCBCEAIANBADYCBCADIAAgARAtIgANASABQQFqCyEBQcEBIQIMigILIANB2QE2AhwgAyAANgIMIAMgAUEBajYCFEEAIQIMogILQcIBIQIMiAILIANBL2otAABBAXENASADQQA2AhwgAyABNgIUIANB5Bw2AhAgA0EZNgIMQQAhAgygAgsgASAERgRAQdkB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CyADIAU2AgAMkAILIANBADYCACAGQQFqIQFBGgw8C0HKASECIAEgBEYNjgIgAygCACIAIAQgAWtqIQUgASAAa0EDaiEGAkADQCABLQAAIABBjdUAai0AAEcNOyAAQQNGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMjwILIANBADYCACAGQQFqIQFBIQw7CyABIARGBEBByQEhAgyOAgsCQAJAIAEtAABBwQBrDhQAPT09PT09PT09PT09PT09PT09AT0LIAFBAWohAUGtASECDPUBCyABQQFqIQFBsAEhAgz0AQsgASAERgRAQcgBIQIMjQILAkACQCABLQAAQdUAaw4LADw8PDw8PDw8PAE8CyABQQFqIQFBrgEhAgz0AQsgAUEBaiEBQa8BIQIM8wELQccBIQIgASAERg2LAiADKAIAIgAgBCABa2ohBSABIABrQQhqIQYCQANAIAEtAAAgAEGE1QBqLQAARw04IABBCEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyMAgsgA0EANgIAIAZBAWohAUEqDDgLIAEgBEYEQEHGASECDIsCCyABLQAAQdAARw04IAFBAWohAUElDDcLQcUBIQIgASAERg2JAiADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGB1QBqLQAARw02IABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyKAgsgA0EANgIAIAZBAWohAUEODDYLIAEgBEYEQEHEASECDIkCCyABLQAAQcUARw02IAFBAWohAUGrASECDO8BCyABIARGBEBBwwEhAgyIAgsCQAJAAkACQCABLQAAQcIAaw4PAAECOTk5OTk5OTk5OTkDOQsgAUEBaiEBQacBIQIM8QELIAFBAWohAUGoASECDPABCyABQQFqIQFBqQEhAgzvAQsgAUEBaiEBQaoBIQIM7gELQcIBIQIgASAERg2GAiADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEH+1ABqLQAARw0zIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyHAgsgA0EANgIAIAZBAWohAUEUDDMLQcEBIQIgASAERg2FAiADKAIAIgAgBCABa2ohBSABIABrQQRqIQYCQANA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BTYCAAzsAQsgA0EANgIAIAZBAWohAUEXDBgLQaYBIQIgASAERg3qASADKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEHB1ABqLQAARw0XIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzrAQsgA0EANgIAIAZBAWohAUEYDBcLIAEgBEYEQEGlASECDOoBCwJAAkAgAS0AAEHJAGsOBwAZGRkZGQEZCyABQQFqIQFBiwEhAgzRAQsgAUEBaiEBQYwBIQIM0AELQaQBIQIgASAERg3oASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEGm1QBqLQAARw0VIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzpAQsgA0EANgIAIAZBAWohAUEJDBULQaMBIQIgASAERg3nASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEGk1QBqLQAARw0UIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzoAQsgA0EANgIAIAZBAWohAUEfDBQLQaIBIQIgASAERg3mASADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEG+1ABqLQAARw0TIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAznAQsgA0EANgIAIAZBAWohAUECDBMLQaEBIQIgASAERg3lASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYDQCABLQAAIABBvNQAai0AAEcNESAAQQFGDQIgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM5QELIAEgBEYEQEGgASECDOUBC0EBIAEtAABB3wBHDREaIAFBAWohAUGHASECDMsBCyADQQA2AgAgBkEBaiEBQYgBIQIMygELQZ8BIQIgASAERg3iASADKAIAIgAgBCABa2ohBSABIABrQQhqIQYCQANAIAEtAAAgAEGE1QBqLQAARw0PIABBCEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzjAQsgA0EANgIAIAZBAWohAUEpDA8LQZ4BIQIgASAERg3hASADKAIAIgAgBCABa2ohBSABIABrQQNqIQYCQANAIAEtAAAgAEG41ABqLQAARw0OIABBA0YNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAziAQsgA0EANgIAIAZBAWohAUEtDA4LIAEgBEYEQEGdASECDOEBCyABLQAAQcUARw0OIAFBAWohAUGEASECDMcBCyABIARGBEBBnAEhAgzgAQsCQAJAIAEtAABBzABrDggADw8PDw8PAQ8LIAFBAWohAUGCASECDMcBCyABQQFqIQFBgwEhAgzGAQtBmwEhAiABIARGDd4BIAMoAgAiACAEIAFraiEFIAEgAGtBBGohBgJAA0AgAS0AACAAQbPUAGotAABHDQsgAEEERg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADN8BCyADQQA2AgAgBkEBaiEBQSMMCwtBmgEhAiABIARGDd0BIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQbDUAGotAABHDQogAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADN4BCyADQQA2AgAgBkEBaiEBQQAMCgsgASAERgRAQZkBIQIM3QELAkACQCABLQAAQcgAaw4IAAwMDAwMDAEMCyABQQFqIQFB/QAhAgzEAQsgAUEBaiEBQYABIQIMwwELIAEgBEYEQEGYASECDNwBCwJAAkAgAS0AAEHOAGsOAwALAQsLIAFBAWohAUH+ACECDMMBCyABQQFqIQFB/wAhAgzCAQsgASAERgRAQZcBIQIM2wELIAEtAABB2QBHDQggAUEBaiEBQQgMBwtBlgEhAiABIARGDdkBIAMoAgAiACAEIAFraiEFIAEgAGtBA2ohBgJAA0AgAS0AACAAQazUAGotAABHDQYgAEEDRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADNoBCyADQQA2AgAgBkEBaiEBQQUMBgtBlQEhAiABIARGDdgBIAMoAgAiACAEIAFraiEFIAEgAGtBBWohBgJAA0AgAS0AACAAQabUAGotAABHDQUgAEEFRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADNkBCyADQQA2AgAgBkEBaiEBQRYMBQtBlAEhAiABIARGDdcBIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQaHVAGotAABHDQQgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADNgBCyADQQA2AgAgBkEBaiEBQRAMBAsgASAERgRAQZMBIQIM1wELAkACQCABLQAAQcMAaw4MAAYGBgYGBgYGBgYBBgsgAUEBaiEBQfkAIQIMvgELIAFBAWohAUH6ACECDL0BC0GSASECIAEgBEYN1QEgAygCACIAIAQgAWtqIQUgASAAa0EFaiEGAkADQCABLQAAIABBoNQAai0AAEcNAiAAQQVGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM1gELIANBADYCACAGQQFqIQFBJAwCCyADQQA2AgAMAgsgASAERgRAQZEBIQIM1AELIAEtAABBzABHDQEgAUEBaiEBQRMLOgApIAMoAgQhACADQQA2AgQgAyAAIAEQLiIADQIMAQtBACECIANBADYCHCADIAE2AhQgA0H+HzYCECADQQY2AgwM0QELQfgAIQIMtwELIANBkAE2AhwgAyABNgIUIAMgADYCDEEAIQIMzwELQQAhAAJAIAMoAjgiAkUNACACKAJAIgJFDQAgAyACEQAAIQALIABFDQAgAEEVRg0BIANBADYCHCADIAE2AhQgA0GCDzYCECADQSA2AgxBACECDM4BC0H3ACECDLQBCyADQY8BNgIcIAMgATYCFCADQewbNgIQIANBFTYCDEEAIQIMzAELIAEgBEYEQEGPASECDMwBCwJAIAEtAABBIEYEQCABQQFqIQEMAQsgA0EANgIcIAMgATYCFCADQZsfNgIQIANBBjYCDEEAIQIMzAELQQIhAgyyAQsDQCABLQAAQSBHDQIgBCABQQFqIgFHDQALQY4BIQIMygELIAEgBEYEQEGNASECDMoBCwJAIAEtAABBCWsOBEoAAEoAC0H1ACECDLABCyADLQApQQVGBEBB9gAhAgywAQtB9AAhAgyvAQsgASAERgRAQYwBIQIMyAELIANBEDYCCCADIAE2AgQMCgsgASAERgRAQYsBIQIMxwELAkAgAS0AAEEJaw4ERwAARwALQfMAIQIMrQELIAEgBEcEQCADQRA2AgggAyABNgIEQfEAIQIMrQELQYoBIQIMxQELAkAgASAERwRAA0AgAS0AAEGg0ABqLQAAIgBBA0cEQAJAIABBAWsOAkkABAtB8AAhAgyvAQsgBCABQQFqIgFHDQALQYgBIQIMxgELQYgBIQIMxQELIANBADYCHCADIAE2AhQgA0HbIDYCECADQQc2AgxBACECDMQBCyABIARGBEBBiQEhAgzEAQsCQAJAAkAgAS0AAEGg0gBqLQAAQQFrDgNGAgABC0HyACECDKwBCyADQQA2AhwgAyABNgIUIANBtBI2AhAgA0EHNgIMQQAhAgzEAQtB6gAhAgyqAQsgASAERwRAIAFBAWohAUHvACECDKoBC0GHASECDMIBCyAEIAEiAEYEQEGGASECDMIBCyAALQAAIgFBL0YEQCAAQQFqIQFB7gAhAgypAQsgAUEJayICQRdLDQEgACEBQQEgAnRBm4CABHENQQwBCyAEIAEiAEYEQEGFASECDMEBCyAALQAAQS9HDQAgAEEBaiEBDAMLQQAhAiADQQA2AhwgAyAANgIUIANB2yA2AhAgA0EHNgIMDL8BCwJAAkACQAJAAkADQCABLQAAQaDOAGotAAAiAEEFRwRAAkACQCAAQQFrDghHBQYHCAAEAQgLQesAIQIMrQELIAFBAWohAUHtACECDKwBCyAEIAFBAWoiAUcNAAtBhAEhAgzDAQsgAUEBagwUCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNHiADQdsANgIcIAMgATYCFCADIAA2AgxBACECDMEBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNHiADQd0ANgIcIAMgATYCFCADIAA2AgxBACECDMABCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNHiADQfoANgIcIAMgATYCFCADIAA2AgxBACECDL8BCyADQQA2AhwgAyABNgIUIANB+Q82AhAgA0EHNgIMQQAhAgy+AQsgASAERgRAQYMBIQIMvgELAkAgAS0AAEGgzgBqLQAAQQFrDgg+BAUGAAgCAwcLIAFBAWohAQtBAyECDKMBCyABQQFqDA0LQQAhAiADQQA2AhwgA0HREjYCECADQQc2AgwgAyABQQFqNgIUDLoBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNFiADQdsANgIcIAMgATYCFCADIAA2AgxBACECDLkBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNFiADQd0ANgIcIAMgATYCFCADIAA2AgxBACECDLgBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNFiADQfoANgIcIAMgATYCFCADIAA2AgxBACECDLcBCyADQQA2AhwgAyABNgIUIANB+Q82AhAgA0EHNgIMQQAhAgy2AQtB7AAhAgycAQsgASAERgRAQYIBIQIMtQELIAFBAWoMAgsgASAERgRAQYEBIQIMtAELIAFBAWoMAQsgASAERg0BIAFBAWoLIQFBBCECDJgBC0GAASECDLABCwNAIAEtAABBoMwAai0AACIAQQJHBEAgAEEBRwRAQekAIQIMmQELDDELIAQgAUEBaiIBRw0AC0H/ACECDK8BCyABIARGBEBB/gAhAgyvAQsCQCABLQAAQQlrDjcvAwYvBAYGBgYGBgYGBgYGBgYGBgYGBgUGBgIGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYABgsgAUEBagshAUEFIQIMlAELIAFBAWoMBgsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQggA0HbADYCHCADIAE2AhQgAyAANgIMQQAhAgyrAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQggA0HdADYCHCADIAE2AhQgAyAANgIMQQAhAgyqAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQggA0H6ADYCHCADIAE2AhQgAyAANgIMQQAhAgypAQsgA0EANgIcIAMgATYCFCADQY0UNgIQIANBBzYCDEEAIQIMqAELAkACQAJAAkADQCABLQAAQaDKAGotAAAiAEEFRwRAAkAgAEEBaw4GLgMEBQYABgtB6AAhAgyUAQsgBCABQQFqIgFHDQALQf0AIQIMqwELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0HIANB2wA2AhwgAyABNgIUIAMgADYCDEEAIQIMqgELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0HIANB3QA2AhwgAyABNgIUIAMgADYCDEEAIQIMqQELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0HIANB+gA2AhwgAyABNgIUIAMgADYCDEEAIQIMqAELIANBADYCHCADIAE2AhQgA0HkCDYCECADQQc2AgxBACECDKcBCyABIARGDQEgAUEBagshAUEGIQIMjAELQfwAIQIMpAELAkACQAJAAkADQCABLQAAQaDIAGotAAAiAEEFRwRAIABBAWsOBCkCAwQFCyAEIAFBAWoiAUcNAAtB+wAhAgynAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQMgA0HbADYCHCADIAE2AhQgAyAANgIMQQAhAgymAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQMgA0HdADYCHCADIAE2AhQgAyAANgIMQQAhAgylAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQMgA0H6ADYCHCADIAE2AhQgAyAANgIMQQAhAgykAQsgA0EANgIcIAMgATYCFCADQbwKNgIQIANBBzYCDEEAIQIMowELQc8AIQIMiQELQdEAIQIMiAELQecAIQIMhwELIAEgBEYEQEH6ACECDKABCwJAIAEtAABBCWsOBCAAACAACyABQQFqIQFB5gAhAgyGAQsgASAERgRAQfkAIQIMnwELAkAgAS0AAEEJaw4EHwAAHwALQQAhAAJAIAMoAjgiAkUNACACKAI4IgJFDQAgAyACEQAAIQALIABFBEBB4gEhAgyGAQsgAEEVRwRAIANBADYCHCADIAE2AhQgA0HJDTYCECADQRo2AgxBACECDJ8BCyADQfgANgIcIAMgATYCFCADQeoaNgIQIANBFTYCDEEAIQIMngELIAEgBEcEQCADQQ02AgggAyABNgIEQeQAIQIMhQELQfcAIQIMnQELIAEgBEYEQEH2ACECDJ0BCwJAAkACQCABLQAAQcgAaw4LAAELCwsLCwsLCwILCyABQQFqIQFB3QAhAgyFAQsgAUEBaiEBQeAAIQIMhAELIAFBAWohAUHjACECDIMBC0H1ACECIAEgBEYNmwEgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBtdUAai0AAEcNCCAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMnAELIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARArIgAEQCADQfQANgIcIAMgATYCFCADIAA2AgxBACECDJwBC0HiACECDIIBC0EAIQACQCADKAI4IgJFDQAgAigCNCICRQ0AIAMgAhEAACEACwJAIAAEQCAAQRVGDQEgA0EANgIcIAMgATYCFCADQeoNNgIQIANBJjYCDEEAIQIMnAELQeEAIQIMggELIANB8wA2AhwgAyABNgIUIANBgBs2AhAgA0EVNgIMQQAhAgyaAQsgAy0AKSIAQSNrQQtJDQkCQCAAQQZLDQBBASAAdEHKAHFFDQAMCgtBACECIANBADYCHCADIAE2AhQgA0HtCTYCECADQQg2AgwMmQELQfIAIQIgASAERg2YASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEGz1QBqLQAARw0FIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyZAQsgAygCBCEAIANCADcDACADIAAgBkEBaiIBECsiAARAIANB8QA2AhwgAyABNgIUIAMgADYCDEEAIQIMmQELQd8AIQIMfwtBACEAAkAgAygCOCICRQ0AIAIoAjQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0HqDTYCECADQSY2AgxBACECDJkBC0HeACECDH8LIANB8AA2AhwgAyABNgIUIANBgBs2AhAgA0EVNgIMQQAhAgyXAQsgAy0AKUEhRg0GIANBADYCHCADIAE2AhQgA0GRCjYCECADQQg2AgxBACECDJYBC0HvACECIAEgBEYNlQEgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBsNUAai0AAEcNAiAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMlgELIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARArIgBFDQIgA0HtADYCHCADIAE2AhQgAyAANgIMQQAhAgyVAQsgA0EANgIACyADKAIEIQAgA0EANgIEIAMgACABECsiAEUNgAEgA0HuADYCHCADIAE2AhQgAyAANgIMQQAhAgyTAQtB3AAhAgx5C0EAIQACQCADKAI4IgJFDQAgAigCNCICRQ0AIAMgAhEAACEACwJAIAAEQCAAQRVGDQEgA0EANgIcIAMgATYCFCADQeoNNgIQIANBJjYCDEEAIQIMkwELQdsAIQIMeQsgA0HsADYCHCADIAE2AhQgA0GAGzYCECADQRU2AgxBACECDJEBCyADLQApIgBBI0kNACAAQS5GDQAgA0EANgIcIAMgATYCFCADQckJNgIQIANBCDYCDEEAIQIMkAELQdoAIQIMdgsgASAERgRAQesAIQIMjwELAkAgAS0AAEEvRgRAIAFBAWohAQwBCyAD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ciBIVFRQL3gueCByZXF1ZXN0AEludmFsaWQgbWV0aG9kIGZvciBSVFNQL3gueCByZXF1ZXN0AEV4cGVjdGVkIFNPVVJDRSBtZXRob2QgZm9yIElDRS94LnggcmVxdWVzdABJbnZhbGlkIGNoYXIgaW4gdXJsIGZyYWdtZW50IHN0YXJ0AEV4cGVjdGVkIGRvdABTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3N0YXR1cwBJbnZhbGlkIHJlc3BvbnNlIHN0YXR1cwBFeHBlY3RlZCBMRiBhZnRlciBoZWFkZXJzAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMAVXNlciBjYWxsYmFjayBlcnJvcgBgb25fcmVzZXRgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19oZWFkZXJgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2JlZ2luYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlYCBjYWxsYmFjayBlcnJvcgBgb25fc3RhdHVzX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdmVyc2lvbl9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3VybF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3Byb3RvY29sX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fcHJvdG9jb2wARW1wdHkgQ29udGVudC1MZW5ndGgASW52YWxpZCBjaGFyYWN0ZXIgaW4gQ29udGVudC1MZW5ndGgAVHJhbnNmZXItRW5jb2RpbmcgY2FuJ3QgYmUgcHJlc2VudCB3aXRoIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgc2l6ZQBFeHBlY3RlZCBMRiBhZnRlciBjaHVuayBzaXplAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBVbmV4cGVjdGVkIHdoaXRlc3BhY2UgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgTEYgYWZ0ZXIgaGVhZGVyIHZhbHVlAEludmFsaWQgYFRyYW5zZmVyLUVuY29kaW5nYCBoZWFkZXIgdmFsdWUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciBjaHVuayBleHRlbnNpb24gdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZSB2YWx1ZQBJbnZhbGlkIHF1b3RlZC1wYWlyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAFBhdXNlZCBieSBvbl9oZWFkZXJzX2NvbXBsZXRlAEludmFsaWQgRU9GIHN0YXRlAG9uX3Jlc2V0IHBhdXNlAG9uX2NodW5rX2hlYWRlciBwYXVzZQBvbl9tZXNzYWdlX2JlZ2luIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZSBwYXVzZQBvbl9zdGF0dXNfY29tcGxldGUgcGF1c2UAb25fdmVyc2lvbl9jb21wbGV0ZSBwYXVzZQBvbl91cmxfY29tcGxldGUgcGF1c2UAb25fcHJvdG9jb2xfY29tcGxldGUgcGF1c2UAb25fY2h1bmtfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX3ZhbHVlX2NvbXBsZXRlIHBhdXNlAG9uX21lc3NhZ2VfY29tcGxldGUgcGF1c2UAb25fbWV0aG9kX2NvbXBsZXRlIHBhdXNlAG9uX2hlYWRlcl9maWVsZF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19leHRlbnNpb25fbmFtZSBwYXVzZQBVbmV4cGVjdGVkIHNwYWNlIGFmdGVyIHN0YXJ0IGxpbmUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciByZXNwb25zZSBsaW5lAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fY2h1bmtfZXh0ZW5zaW9uX25hbWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBuYW1lAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgZXh0ZW5zaW9uIG5hbWUASW52YWxpZCBzdGF0dXMgY29kZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABNaXNzaW5nIGV4cGVjdGVkIENSIGFmdGVyIGNodW5rIGRhdGEARXhwZWN0ZWQgTEYgYWZ0ZXIgY2h1bmsgZGF0YQBVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AARGF0YSBhZnRlciBgQ29ubmVjdGlvbjogY2xvc2VgAFNXSVRDSF9QUk9YWQBVU0VfUFJPWFkATUtBQ1RJVklUWQBVTlBST0NFU1NBQkxFX0VOVElUWQBRVUVSWQBDT1BZAE1PVkVEX1BFUk1BTkVOVExZAFRPT19FQVJMWQBOT1RJRlkARkFJTEVEX0RFUEVOREVOQ1kAQkFEX0dBVEVXQVkAUExBWQBQVVQAQ0hFQ0tPVVQAR0FURVdBWV9USU1FT1VUAFJFUVVFU1RfVElNRU9VVABORVRXT1JLX0NPTk5FQ1RfVElNRU9VVABDT05ORUNUSU9OX1RJTUVPVVQATE9HSU5fVElNRU9VVABORVRXT1JLX1JFQURfVElNRU9VVABQT1NUAE1JU0RJUkVDVEVEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9SRVFVRVNUAENMSUVOVF9DTE9TRURfTE9BRF9CQUxBTkNFRF9SRVFVRVNUAEJBRF9SRVFVRVNUAEhUVFBfUkVRVUVTVF9TRU5UX1RPX0hUVFBTX1BPUlQAUkVQT1JUAElNX0FfVEVBUE9UAFJFU0VUX0NPTlRFTlQATk9fQ09OVEVOVABQQVJUSUFMX0NPTlRFTlQASFBFX0lOVkFMSURfQ09OU1RBTlQASFBFX0NCX1JFU0VUAEdFVABIUEVfU1RSSUNUAENPTkZMSUNUAFRFTVBPUkFSWV9SRURJUkVDVABQRVJNQU5FTlRfUkVESVJFQ1QAQ09OTkVDVABNVUxUSV9TVEFUVVMASFBFX0lOVkFMSURfU1RBVFVTAFRPT19NQU5ZX1JFUVVFU1RTAEVBUkxZX0hJTlRTAFVOQVZBSUxBQkxFX0ZPUl9MRUdBTF9SRUFTT05TAE9QVElPTlMAU1dJVENISU5HX1BST1RPQ09MUwBWQVJJQU5UX0FMU09fTkVHT1RJQVRFUwBNVUxUSVBMRV9DSE9JQ0VTAElOVEVSTkFMX1NFUlZFUl9FUlJPUgBXRUJfU0VSVkVSX1VOS05PV05fRVJST1IAUkFJTEdVTl9FUlJPUgBJREVOVElUWV9QUk9WSURFUl9BVVRIRU5USUNBVElPTl9FUlJPUgBTU0xfQ0VSVElGSUNBVEVfRVJST1IASU5WQUxJRF9YX0ZPUldBUkRFRF9GT1IAU0VUX1BBUkFNRVRFUgBHRVRfUEFSQU1FVEVSAEhQRV9VU0VSAFNFRV9PVEhFUgBIUEVfQ0JfQ0hVTktfSEVBREVSAEV4cGVjdGVkIExGIGFmdGVyIENSAE1LQ0FMRU5EQVIAU0VUVVAAV0VCX1NFUlZFUl9JU19ET1dOAFRFQVJET1dOAEhQRV9DTE9TRURfQ09OTkVDVElPTgBIRVVSSVNUSUNfRVhQSVJBVElPTgBESVNDT05ORUNURURfT1BFUkFUSU9OAE5PTl9BVVRIT1JJVEFUSVZFX0lORk9STUFUSU9OAEhQRV9JTlZBTElEX1ZFUlNJT04ASFBFX0NCX01FU1NBR0VfQkVHSU4AU0lURV9JU19GUk9aRU4ASFBFX0lOVkFMSURfSEVBREVSX1RPS0VOAElOVkFMSURfVE9LRU4ARk9SQklEREVOAEVOSEFOQ0VfWU9VUl9DQUxNAEhQRV9JTlZBTElEX1VSTABCTE9DS0VEX0JZX1BBUkVOVEFMX0NPTlRST0wATUtDT0wAQUNMAEhQRV9JTlRFUk5BTABSRVFVRVNUX0hFQURFUl9GSUVMRFNfVE9PX0xBUkdFX1VOT0ZGSUNJQUwASFBFX09LAFVOTElOSwBVTkxPQ0sAUFJJAFJFVFJZX1dJVEgASFBFX0lOVkFMSURfQ09OVEVOVF9MRU5HVEgASFBFX1VORVhQRUNURURfQ09OVEVOVF9MRU5HVEgARkxVU0gAUFJPUFBBVENIAE0tU0VBUkNIAFVSSV9UT09fTE9ORwBQUk9DRVNTSU5HAE1JU0NFTExBTkVPVVNfUEVSU0lTVEVOVF9XQVJOSU5HAE1JU0NFTExBTkVPVVNfV0FSTklORwBIUEVfSU5WQUxJRF9UUkFOU0ZFUl9FTkNPRElORwBFeHBlY3RlZCBDUkxGAEhQRV9JTlZBTElEX0NIVU5LX1NJWkUATU9WRQBDT05USU5VRQBIUEVfQ0JfU1RBVFVTX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJTX0NPTVBMRVRFAEhQRV9DQl9WRVJTSU9OX0NPTVBMRVRFAEhQRV9DQl9VUkxfQ09NUExFVEUASFBFX0NCX1BST1RPQ09MX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19DT01QTEVURQBIUEVfQ0JfSEVBREVSX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fVkFMVUVfQ09NUExFVEUASFBFX0NCX0NIVU5LX0VYVEVOU0lPTl9OQU1FX0NPTVBMRVRFAEhQRV9DQl9NRVNTQUdFX0NPTVBMRVRFAEhQRV9DQl9NRVRIT0RfQ09NUExFVEUASFBFX0NCX0hFQURFUl9GSUVMRF9DT01QTEVURQBERUxFVEUASFBFX0lOVkFMSURfRU9GX1NUQVRFAElOVkFMSURfU1NMX0NFUlRJRklDQVRFAFBBVVNFAE5PX1JFU1BPTlNFAFVOU1VQUE9SVEVEX01FRElBX1RZUEUAR09ORQBOT1RfQUNDRVBUQUJMRQBTRVJWSUNFX1VOQVZBSUxBQkxFAFJBTkdFX05PVF9TQVRJU0ZJQUJMRQBPUklHSU5fSVNfVU5SRUFDSEFCTEUAUkVTUE9OU0VfSVNfU1RBTEUAUFVSR0UATUVSR0UAUkVRVUVTVF9IRUFERVJfRklFTERTX1RPT19MQVJHRQBSRVFVRVNUX0hFQURFUl9UT09fTEFSR0UAUEFZTE9BRF9UT09fTEFSR0UASU5TVUZGSUNJRU5UX1NUT1JBR0UASFBFX1BBVVNFRF9VUEdSQURFAEhQRV9QQVVTRURfSDJfVVBHUkFERQBTT1VSQ0UAQU5OT1VOQ0UAVFJBQ0UASFBFX1VORVhQRUNURURfU1BBQ0UAREVTQ1JJQkUAVU5TVUJTQ1JJQkUAUkVDT1JEAEhQRV9JTlZBTElEX01FVEhPRABOT1RfRk9VTkQAUFJPUEZJTkQAVU5CSU5EAFJFQklORABVTkFVVEhPUklaRUQATUVUSE9EX05PVF9BTExPV0VEAEhUVFBfVkVSU0lPTl9OT1RfU1VQUE9SVEVEAEFMUkVBRFlfUkVQT1JURUQAQUNDRVBURUQATk9UX0lNUExFTUVOVEVEAExPT1BfREVURUNURUQASFBFX0NSX0VYUEVDVEVEAEhQRV9MRl9FWFBFQ1RFRABDUkVBVEVEAElNX1VTRUQASFBFX1BBVVNFRABUSU1FT1VUX09DQ1VSRUQAUEFZTUVOVF9SRVFVSVJFRABQUkVDT05ESVRJT05fUkVRVUlSRUQAUFJPWFlfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATkVUV09SS19BVVRIRU5USUNBVElPTl9SRVFVSVJFRABMRU5HVEhfUkVRVUlSRUQAU1NMX0NFUlRJRklDQVRFX1JFUVVJUkVEAFVQR1JBREVfUkVRVUlSRUQAUEFHRV9FWFBJUkVEAFBSRUNPTkRJVElPTl9GQUlMRUQARVhQRUNUQVRJT05fRkFJTEVEAFJFVkFMSURBVElPTl9GQUlMRUQAU1NMX0hBTkRTSEFLRV9GQUlMRUQATE9DS0VEAFRSQU5TRk9STUFUSU9OX0FQUExJRUQATk9UX01PRElGSUVEAE5PVF9FWFRFTkRFRABCQU5EV0lEVEhfTElNSVRfRVhDRUVERUQAU0lURV9JU19PVkVSTE9BREVEAEhFQUQARXhwZWN0ZWQgSFRUUC8sIFJUU1AvIG9yIElDRS8A5xUAAK8VAACkEgAAkhoAACYWAACeFAAA2xkAAHkVAAB+EgAA/hQAADYVAAALFgAA2BYAAPMSAABCGAAArBYAABIVAAAUFwAA7xcAAEgUAABxFwAAshoAAGsZAAB+GQAANRQAAIIaAABEFwAA/RYAAB4YAACHFwAAqhkAAJMSAAAHGAAALBcAAMoXAACkFwAA5xUAAOcVAABYFwAAOxgAAKASAAAtHAAAwxEAAEgRAADeEgAAQhMAAKQZAAD9EAAA9xUAAKUVAADvFgAA+BkAAEoWAABWFgAA9RUAAAoaAAAIGgAAARoAAKsVAABCEgAA1xAAAEwRAAAFGQAAVBYAAB4RAADKGQAAyBkAAE4WAAD/GAAAcRQAAPAVAADuFQAAlBkAAPwVAAC/GQAAmxkAAHwUAABDEQAAcBgAAJUUAAAnFAAAGRQAANUSAADUGQAARBYAAPcQAEG5OwsBAQBB0DsL4AEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEDAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBuj0LBAEAAAIAQdE9C14DBAMDAwMDAAADAwADAwADAwMDAwMDAwMDAAUAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAwADAEG6PwsEAQAAAgBB0T8LXgMAAwMDAwMAAAMDAAMDAAMDAwMDAwMDAwMABAAFAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwADAAMAQbDBAAsNbG9zZWVlcC1hbGl2ZQBBycEACwEBAEHgwQAL4AEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBycMACwEBAEHgwwAL5wEBAQEBAQEBAQEBAQECAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAWNodW5rZWQAQfHFAAteAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQBB0McACyFlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AQYDIAAsgcmFuc2Zlci1lbmNvZGluZ3BncmFkZQ0KDQpTTQ0KDQoAQanIAAsFAQIAAQMAQcDIAAtfBAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanKAAsFAQIAAQMAQcDKAAtfBAUFBgUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanMAAsEAQAAAQBBwcwAC14CAgACAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAEGpzgALBQECAAEDAEHAzgALXwQFAAAFBQUFBQUFBQUFBQYFBQUFBQUFBQUFBQUABQAHCAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQAFAAUABQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAAAAFAEGp0AALBQEBAAEBAEHA0AALAQEAQdrQAAtBAgAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAQanSAAsFAQEAAQEAQcDSAAsBAQBBytIACwYCAAAAAAIAQeHSAAs6AwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBBoNQAC50BTk9VTkNFRUNLT1VUTkVDVEVURUNSSUJFTFVTSEVURUFEU0VBUkNIUkdFQ1RJVklUWUxFTkRBUlZFT1RJRllQVElPTlNDSFNFQVlTVEFUQ0hHRVVFUllPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFVFRQQ0VUU1BBRFRQLw==","base64")}})});var Iq=R((msY,N2Q)=>{var U2Q=["GET","HEAD","POST"],ij0=new Set(U2Q),nj0=[101,204,205,304],E2Q=[301,302,303,307,308],sj0=new Set(E2Q),K2Q=["1","7","9","11","13","15","17","19","20","21","22","23","25","37","42","43","53","69","77","79","87","95","101","102","103","104","109","110","111","113","115","117","119","123","135","137","139","143","161","179","389","427","465","512","513","514","515","526","530","531","532","540","548","554","556","563","587","601","636","989","990","993","995","1719","1720","1723","2049","3659","4045","4190","5060","5061","6000","6566","6665","6666","6667","6668","6669","6679","6697","10080"],rj0=new Set(K2Q),V2Q=["no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"],aj0=["",...V2Q],oj0=new Set(V2Q),tj0=["follow","manual","error"],I2Q=["GET","HEAD","OPTIONS","TRACE"],ej0=new Set(I2Q),AO0=["navigate","same-origin","no-cors","cors"],QO0=["omit","same-origin","include"],BO0=["default","no-store","reload","no-cache","force-cache","only-if-cached"],YO0=["content-encoding","content-language","content-location","content-type","content-length"],JO0=["half"],H2Q=["CONNECT","TRACE","TRACK"],CO0=new Set(H2Q),D2Q=["audio","audioworklet","font","image","manifest","paintworklet","script","style","track","video","xslt",""],XO0=new Set(D2Q);N2Q.exports={subresource:D2Q,forbiddenMethods:H2Q,requestBodyHeader:YO0,referrerPolicy:aj0,requestRedirect:tj0,requestMode:AO0,requestCredentials:QO0,requestCache:BO0,redirectStatus:E2Q,corsSafeListedMethods:U2Q,nullBodyStatus:nj0,safeMethods:I2Q,badPorts:K2Q,requestDuplex:JO0,subresourceSet:XO0,badPortsSet:rj0,redirectStatusSet:sj0,corsSafeListedMethodsSet:ij0,safeMethodsSet:ej0,forbiddenMethodsSet:CO0,referrerPolicyTokens:oj0}});var Sr=R((usY,L2Q)=>{var Tr=Symbol.for("undici.globalOrigin.1");function GO0(){return globalThis[Tr]}function WO0(A){if(A===void 0){Object.defineProperty(globalThis,Tr,{value:void 0,writable:!0,enumerable:!1,configurable:!1});return}let Q=new URL(A);if(Q.protocol!=="http:"&&Q.protocol!=="https:")throw TypeError(`Only http & https urls are allowed, received ${Q.protocol}`);Object.defineProperty(globalThis,Tr,{value:Q,writable:!0,enumerable:!1,configurable:!1})}L2Q.exports={getGlobalOrigin:GO0,setGlobalOrigin:WO0}});var l8=R((dsY,O2Q)=>{var KS=u("node:assert"),FO0=new TextEncoder,Hq=/^[!#$%&'*+\-.^_|~A-Za-z0-9]+$/,ZO0=/[\u000A\u000D\u0009\u0020]/,$O0=/[\u0009\u000A\u000C\u000D\u0020]/g,UO0=/^[\u0009\u0020-\u007E\u0080-\u00FF]+$/;function EO0(A){KS(A.protocol==="data:");let Q=z2Q(A,!0);Q=Q.slice(5);let B={position:0},Y=sK(",",Q,B),J=Y.length;if(Y=NO0(Y,!0,!0),B.position>=Q.length)return"failure";B.position++;let C=Q.slice(J+1),X=R2Q(C);if(/;(\u0020){0,}base64$/i.test(Y)){let W=j2Q(X);if(X=VO0(W),X==="failure")return"failure";Y=Y.slice(0,-6),Y=Y.replace(/(\u0020)+$/,""),Y=Y.slice(0,-1)}if(Y.startsWith(";"))Y="text/plain"+Y;let G=kr(Y);if(G==="failure")G=kr("text/plain;charset=US-ASCII");return{mimeType:G,body:X}}function z2Q(A,Q=!1){if(!Q)return A.href;let B=A.href,Y=A.hash.length,J=Y===0?B:B.substring(0,B.length-Y);if(!Y&&B.endsWith("#"))return J.slice(0,-1);return J}function VS(A,Q,B){let Y="";while(B.position=48&&A<=57||A>=65&&A<=70||A>=97&&A<=102}function M2Q(A){return A>=48&&A<=57?A-48:(A&223)-55}function KO0(A){let Q=A.length,B=new Uint8Array(Q),Y=0;for(let J=0;J=A.length)return"failure";Q.position++;let Y=sK(";",A,Q);if(Y=ES(Y,!1,!0),Y.length===0||!Hq.test(Y))return"failure";let J=B.toLowerCase(),C=Y.toLowerCase(),X={type:J,subtype:C,parameters:new Map,essence:`${J}/${C}`};while(Q.positionZO0.test(F),A,Q);let G=VS((F)=>F!==";"&&F!=="=",A,Q);if(G=G.toLowerCase(),Q.position=A.length)break;let W=null;if(A[Q.position]==='"')W=w2Q(A,Q,!0),sK(";",A,Q);else if(W=sK(";",A,Q),W=ES(W,!1,!0),W.length===0)continue;if(G.length!==0&&Hq.test(G)&&(W.length===0||UO0.test(W))&&!X.parameters.has(G))X.parameters.set(G,W)}return X}function VO0(A){A=A.replace($O0,"");let Q=A.length;if(Q%4===0){if(A.charCodeAt(Q-1)===61){if(--Q,A.charCodeAt(Q-1)===61)--Q}}if(Q%4===1)return"failure";if(/[^+/0-9A-Za-z]/.test(A.length===Q?A:A.substring(0,Q)))return"failure";let B=Buffer.from(A,"base64");return new Uint8Array(B.buffer,B.byteOffset,B.byteLength)}function w2Q(A,Q,B=!1){let Y=Q.position,J="";KS(A[Q.position]==='"'),Q.position++;while(!0){if(J+=VS((X)=>X!=='"'&&X!=="\\",A,Q),Q.position>=A.length)break;let C=A[Q.position];if(Q.position++,C==="\\"){if(Q.position>=A.length){J+="\\";break}J+=A[Q.position],Q.position++}else{KS(C==='"');break}}if(B)return J;return A.slice(Y,Q.position)}function IO0(A){KS(A!=="failure");let{parameters:Q,essence:B}=A,Y=B;for(let[J,C]of Q.entries()){if(Y+=";",Y+=J,Y+="=",!Hq.test(C))C=C.replace(/(\\|")/g,"\\$1"),C='"'+C,C+='"';Y+=C}return Y}function HO0(A){return A===13||A===10||A===9||A===32}function ES(A,Q=!0,B=!0){return _r(A,Q,B,HO0)}function DO0(A){return A===13||A===10||A===9||A===12||A===32}function NO0(A,Q=!0,B=!0){return _r(A,Q,B,DO0)}function _r(A,Q,B,Y){let J=0,C=A.length-1;if(Q)while(J0&&Y(A.charCodeAt(C)))C--;return J===0&&C===A.length-1?A:A.slice(J,C+1)}function j2Q(A){let Q=A.length;if(65535>Q)return String.fromCharCode.apply(null,A);let B="",Y=0,J=65535;while(YQ)J=Q-Y;B+=String.fromCharCode.apply(null,A.subarray(Y,Y+=J))}return B}function LO0(A){switch(A.essence){case"application/ecmascript":case"application/javascript":case"application/x-ecmascript":case"application/x-javascript":case"text/ecmascript":case"text/javascript":case"text/javascript1.0":case"text/javascript1.1":case"text/javascript1.2":case"text/javascript1.3":case"text/javascript1.4":case"text/javascript1.5":case"text/jscript":case"text/livescript":case"text/x-ecmascript":case"text/x-javascript":return"text/javascript";case"application/json":case"text/json":return"application/json";case"image/svg+xml":return"image/svg+xml";case"text/xml":case"application/xml":return"application/xml"}if(A.subtype.endsWith("+json"))return"application/json";if(A.subtype.endsWith("+xml"))return"application/xml";return""}O2Q.exports={dataURLProcessor:EO0,URLSerializer:z2Q,collectASequenceOfCodePoints:VS,collectASequenceOfCodePointsFast:sK,stringPercentDecode:R2Q,parseMIMEType:kr,collectAnHTTPQuotedString:w2Q,serializeAMimeType:IO0,removeChars:_r,removeHTTPWhitespace:ES,minimizeSupportedMimeType:LO0,HTTP_TOKEN_CODEPOINTS:Hq,isomorphicDecode:j2Q}});var HJ=R((csY,T2Q)=>{var{types:fY,inspect:qO0}=u("node:util"),{markAsUncloneable:MO0}=u("node:worker_threads"),P2Q=Function.call.bind(Function.prototype[Symbol.hasInstance]),JA={converters:{},util:{},errors:{},is:{}};JA.errors.exception=function(A){return TypeError(`${A.header}: ${A.message}`)};JA.errors.conversionFailed=function(A){let Q=A.types.length===1?"":" one of",B=`${A.argument} could not be converted to${Q}: ${A.types.join(", ")}.`;return JA.errors.exception({header:A.prefix,message:B})};JA.errors.invalidArgument=function(A){return JA.errors.exception({header:A.prefix,message:`"${A.value}" is an invalid ${A.type}.`})};JA.brandCheck=function(A,Q){if(!P2Q(Q,A)){let B=TypeError("Illegal invocation");throw B.code="ERR_INVALID_THIS",B}};JA.brandCheckMultiple=function(A){let Q=A.map((B)=>JA.util.MakeTypeAssertion(B));return(B)=>{if(Q.every((Y)=>!Y(B))){let Y=TypeError("Illegal invocation");throw Y.code="ERR_INVALID_THIS",Y}}};JA.argumentLengthCheck=function({length:A},Q,B){if(AP2Q(A,Q)};JA.util.Type=function(A){switch(typeof A){case"undefined":return 1;case"boolean":return 2;case"string":return 3;case"symbol":return 4;case"number":return 5;case"bigint":return 6;case"function":case"object":{if(A===null)return 7;return 8}}};JA.util.Types={UNDEFINED:1,BOOLEAN:2,STRING:3,SYMBOL:4,NUMBER:5,BIGINT:6,NULL:7,OBJECT:8};JA.util.TypeValueToString=function(A){switch(JA.util.Type(A)){case 1:return"Undefined";case 2:return"Boolean";case 3:return"String";case 4:return"Symbol";case 5:return"Number";case 6:return"BigInt";case 7:return"Null";case 8:return"Object"}};JA.util.markAsUncloneable=MO0||(()=>{});JA.util.ConvertToInt=function(A,Q,B,Y){let J,C;if(Q===64)if(J=Math.pow(2,53)-1,B==="unsigned")C=0;else C=Math.pow(-2,53)+1;else if(B==="unsigned")C=0,J=Math.pow(2,Q)-1;else C=Math.pow(-2,Q)-1,J=Math.pow(2,Q-1)-1;let X=Number(A);if(X===0)X=0;if(JA.util.HasFlag(Y,JA.attributes.EnforceRange)){if(Number.isNaN(X)||X===Number.POSITIVE_INFINITY||X===Number.NEGATIVE_INFINITY)throw JA.errors.exception({header:"Integer conversion",message:`Could not convert ${JA.util.Stringify(A)} to an integer.`});if(X=JA.util.IntegerPart(X),XJ)throw JA.errors.exception({header:"Integer conversion",message:`Value must be between ${C}-${J}, got ${X}.`});return X}if(!Number.isNaN(X)&&JA.util.HasFlag(Y,JA.attributes.Clamp)){if(X=Math.min(Math.max(X,C),J),Math.floor(X)%2===0)X=Math.floor(X);else X=Math.ceil(X);return X}if(Number.isNaN(X)||X===0&&Object.is(0,X)||X===Number.POSITIVE_INFINITY||X===Number.NEGATIVE_INFINITY)return 0;if(X=JA.util.IntegerPart(X),X=X%Math.pow(2,Q),B==="signed"&&X>=Math.pow(2,Q)-1)return X-Math.pow(2,Q);return X};JA.util.IntegerPart=function(A){let Q=Math.floor(Math.abs(A));if(A<0)return-1*Q;return Q};JA.util.Stringify=function(A){switch(JA.util.Type(A)){case 4:return`Symbol(${A.description})`;case 8:return qO0(A);case 3:return`"${A}"`;case 6:return`${A}n`;default:return`${A}`}};JA.util.IsResizableArrayBuffer=function(A){if(fY.isArrayBuffer(A))return A.resizable;if(fY.isSharedArrayBuffer(A))return A.growable;throw JA.errors.exception({header:"IsResizableArrayBuffer",message:`"${JA.util.Stringify(A)}" is not an array buffer.`})};JA.util.HasFlag=function(A,Q){return typeof A==="number"&&(A&Q)===Q};JA.sequenceConverter=function(A){return(Q,B,Y,J)=>{if(JA.util.Type(Q)!==8)throw JA.errors.exception({header:B,message:`${Y} (${JA.util.Stringify(Q)}) is not iterable.`});let C=typeof J==="function"?J():Q?.[Symbol.iterator]?.(),X=[],G=0;if(C===void 0||typeof C.next!=="function")throw JA.errors.exception({header:B,message:`${Y} is not iterable.`});while(!0){let{done:W,value:F}=C.next();if(W)break;X.push(A(F,B,`${Y}[${G++}]`))}return X}};JA.recordConverter=function(A,Q){return(B,Y,J)=>{if(JA.util.Type(B)!==8)throw JA.errors.exception({header:Y,message:`${J} ("${JA.util.TypeValueToString(B)}") is not an Object.`});let C={};if(!fY.isProxy(B)){let G=[...Object.getOwnPropertyNames(B),...Object.getOwnPropertySymbols(B)];for(let W of G){let F=JA.util.Stringify(W),Z=A(W,Y,`Key ${F} in ${J}`),U=Q(B[W],Y,`${J}[${F}]`);C[Z]=U}return C}let X=Reflect.ownKeys(B);for(let G of X)if(Reflect.getOwnPropertyDescriptor(B,G)?.enumerable){let F=A(G,Y,J),Z=Q(B[G],Y,J);C[F]=Z}return C}};JA.interfaceConverter=function(A,Q){return(B,Y,J)=>{if(!A(B))throw JA.errors.exception({header:Y,message:`Expected ${J} ("${JA.util.Stringify(B)}") to be an instance of ${Q}.`});return B}};JA.dictionaryConverter=function(A){return(Q,B,Y)=>{let J={};if(Q!=null&&JA.util.Type(Q)!==8)throw JA.errors.exception({header:B,message:`Expected ${Q} to be one of: Null, Undefined, Object.`});for(let C of A){let{key:X,defaultValue:G,required:W,converter:F}=C;if(W===!0){if(Q==null||!Object.hasOwn(Q,X))throw JA.errors.exception({header:B,message:`Missing required key "${X}".`})}let Z=Q?.[X],U=G!==void 0;if(U&&Z===void 0)Z=G();if(W||U||Z!==void 0){if(Z=F(Z,B,`${Y}.${X}`),C.allowedValues&&!C.allowedValues.includes(Z))throw JA.errors.exception({header:B,message:`${Z} is not an accepted type. Expected one of ${C.allowedValues.join(", ")}.`});J[X]=Z}}return J}};JA.nullableConverter=function(A){return(Q,B,Y)=>{if(Q===null)return Q;return A(Q,B,Y)}};JA.is.USVString=function(A){return typeof A==="string"&&A.isWellFormed()};JA.is.ReadableStream=JA.util.MakeTypeAssertion(ReadableStream);JA.is.Blob=JA.util.MakeTypeAssertion(Blob);JA.is.URLSearchParams=JA.util.MakeTypeAssertion(URLSearchParams);JA.is.File=JA.util.MakeTypeAssertion(File);JA.is.URL=JA.util.MakeTypeAssertion(URL);JA.is.AbortSignal=JA.util.MakeTypeAssertion(AbortSignal);JA.is.MessagePort=JA.util.MakeTypeAssertion(MessagePort);JA.is.BufferSource=function(A){return fY.isArrayBuffer(A)||ArrayBuffer.isView(A)&&fY.isArrayBuffer(A.buffer)};JA.converters.DOMString=function(A,Q,B,Y){if(A===null&&JA.util.HasFlag(Y,JA.attributes.LegacyNullToEmptyString))return"";if(typeof A==="symbol")throw JA.errors.exception({header:Q,message:`${B} is a symbol, which cannot be converted to a DOMString.`});return String(A)};JA.converters.ByteString=function(A,Q,B){if(typeof A==="symbol")throw JA.errors.exception({header:Q,message:`${B} is a symbol, which cannot be converted to a ByteString.`});let Y=String(A);for(let J=0;J255)throw TypeError(`Cannot convert argument to a ByteString because the character at index ${J} has a value of ${Y.charCodeAt(J)} which is greater than 255.`);return Y};JA.converters.USVString=function(A){if(typeof A==="string")return A.toWellFormed();return`${A}`.toWellFormed()};JA.converters.boolean=function(A){return Boolean(A)};JA.converters.any=function(A){return A};JA.converters["long long"]=function(A,Q,B){return JA.util.ConvertToInt(A,64,"signed",0,Q,B)};JA.converters["unsigned long long"]=function(A,Q,B){return JA.util.ConvertToInt(A,64,"unsigned",0,Q,B)};JA.converters["unsigned long"]=function(A,Q,B){return JA.util.ConvertToInt(A,32,"unsigned",0,Q,B)};JA.converters["unsigned short"]=function(A,Q,B,Y){return JA.util.ConvertToInt(A,16,"unsigned",Y,Q,B)};JA.converters.ArrayBuffer=function(A,Q,B,Y){if(JA.util.Type(A)!==8||!fY.isArrayBuffer(A))throw JA.errors.conversionFailed({prefix:Q,argument:`${B} ("${JA.util.Stringify(A)}")`,types:["ArrayBuffer"]});if(!JA.util.HasFlag(Y,JA.attributes.AllowResizable)&&JA.util.IsResizableArrayBuffer(A))throw JA.errors.exception({header:Q,message:`${B} cannot be a resizable ArrayBuffer.`});return A};JA.converters.SharedArrayBuffer=function(A,Q,B,Y){if(JA.util.Type(A)!==8||!fY.isSharedArrayBuffer(A))throw JA.errors.conversionFailed({prefix:Q,argument:`${B} ("${JA.util.Stringify(A)}")`,types:["SharedArrayBuffer"]});if(!JA.util.HasFlag(Y,JA.attributes.AllowResizable)&&JA.util.IsResizableArrayBuffer(A))throw JA.errors.exception({header:Q,message:`${B} cannot be a resizable SharedArrayBuffer.`});return A};JA.converters.TypedArray=function(A,Q,B,Y,J){if(JA.util.Type(A)!==8||!fY.isTypedArray(A)||A.constructor.name!==Q.name)throw JA.errors.conversionFailed({prefix:B,argument:`${Y} ("${JA.util.Stringify(A)}")`,types:[Q.name]});if(!JA.util.HasFlag(J,JA.attributes.AllowShared)&&fY.isSharedArrayBuffer(A.buffer))throw JA.errors.exception({header:B,message:`${Y} cannot be a view on a shared array buffer.`});if(!JA.util.HasFlag(J,JA.attributes.AllowResizable)&&JA.util.IsResizableArrayBuffer(A.buffer))throw JA.errors.exception({header:B,message:`${Y} cannot be a view on a resizable array buffer.`});return A};JA.converters.DataView=function(A,Q,B,Y){if(JA.util.Type(A)!==8||!fY.isDataView(A))throw JA.errors.conversionFailed({prefix:Q,argument:`${B} ("${JA.util.Stringify(A)}")`,types:["DataView"]});if(!JA.util.HasFlag(Y,JA.attributes.AllowShared)&&fY.isSharedArrayBuffer(A.buffer))throw JA.errors.exception({header:Q,message:`${B} cannot be a view on a shared array buffer.`});if(!JA.util.HasFlag(Y,JA.attributes.AllowResizable)&&JA.util.IsResizableArrayBuffer(A.buffer))throw JA.errors.exception({header:Q,message:`${B} cannot be a view on a resizable array buffer.`});return A};JA.converters.ArrayBufferView=function(A,Q,B,Y){if(JA.util.Type(A)!==8||!fY.isArrayBufferView(A))throw JA.errors.conversionFailed({prefix:Q,argument:`${B} ("${JA.util.Stringify(A)}")`,types:["ArrayBufferView"]});if(!JA.util.HasFlag(Y,JA.attributes.AllowShared)&&fY.isSharedArrayBuffer(A.buffer))throw JA.errors.exception({header:Q,message:`${B} cannot be a view on a shared array buffer.`});if(!JA.util.HasFlag(Y,JA.attributes.AllowResizable)&&JA.util.IsResizableArrayBuffer(A.buffer))throw JA.errors.exception({header:Q,message:`${B} cannot be a view on a resizable array buffer.`});return A};JA.converters.BufferSource=function(A,Q,B,Y){if(fY.isArrayBuffer(A))return JA.converters.ArrayBuffer(A,Q,B,Y);if(fY.isArrayBufferView(A))return Y&=~JA.attributes.AllowShared,JA.converters.ArrayBufferView(A,Q,B,Y);if(fY.isSharedArrayBuffer(A))throw JA.errors.exception({header:Q,message:`${B} cannot be a SharedArrayBuffer.`});throw JA.errors.conversionFailed({prefix:Q,argument:`${B} ("${JA.util.Stringify(A)}")`,types:["ArrayBuffer","ArrayBufferView"]})};JA.converters.AllowSharedBufferSource=function(A,Q,B,Y){if(fY.isArrayBuffer(A))return JA.converters.ArrayBuffer(A,Q,B,Y);if(fY.isSharedArrayBuffer(A))return JA.converters.SharedArrayBuffer(A,Q,B,Y);if(fY.isArrayBufferView(A))return Y|=JA.attributes.AllowShared,JA.converters.ArrayBufferView(A,Q,B,Y);throw JA.errors.conversionFailed({prefix:Q,argument:`${B} ("${JA.util.Stringify(A)}")`,types:["ArrayBuffer","SharedArrayBuffer","ArrayBufferView"]})};JA.converters["sequence"]=JA.sequenceConverter(JA.converters.ByteString);JA.converters["sequence>"]=JA.sequenceConverter(JA.converters["sequence"]);JA.converters["record"]=JA.recordConverter(JA.converters.ByteString,JA.converters.ByteString);JA.converters.Blob=JA.interfaceConverter(JA.is.Blob,"Blob");JA.converters.AbortSignal=JA.interfaceConverter(JA.is.AbortSignal,"AbortSignal");JA.converters.EventHandlerNonNull=function(A){if(JA.util.Type(A)!==8)return null;if(typeof A==="function")return A;return()=>{}};JA.attributes={Clamp:1,EnforceRange:2,AllowShared:4,AllowResizable:8,LegacyNullToEmptyString:16};T2Q.exports={webidl:JA}});var z9=R((lsY,i2Q)=>{var{Transform:zO0}=u("node:stream"),S2Q=u("node:zlib"),{redirectStatusSet:RO0,referrerPolicyTokens:wO0,badPortsSet:jO0}=Iq(),{getGlobalOrigin:k2Q}=Sr(),{collectASequenceOfCodePoints:m$,collectAnHTTPQuotedString:OO0,removeChars:PO0,parseMIMEType:TO0}=l8(),{performance:SO0}=u("node:perf_hooks"),{ReadableStreamFrom:kO0,isValidHTTPToken:_2Q,normalizedMethodRecordsBase:_O0}=lQ(),c$=u("node:assert"),{isUint8Array:vO0}=u("node:util/types"),{webidl:eW}=HJ();function v2Q(A){let Q=A.urlList,B=Q.length;return B===0?null:Q[B-1].toString()}function yO0(A,Q){if(!RO0.has(A.status))return null;let B=A.headersList.get("location",!0);if(B!==null&&g2Q(B)){if(!y2Q(B))B=gO0(B);B=new URL(B,v2Q(A))}if(B&&!B.hash)B.hash=Q;return B}function y2Q(A){for(let Q=0;Q126||B<32)return!1}return!0}function gO0(A){return Buffer.from(A,"binary").toString("utf8")}function d$(A){return A.urlList[A.urlList.length-1]}function hO0(A){let Q=d$(A);if(u2Q(Q)&&jO0.has(Q.port))return"blocked";return"allowed"}function xO0(A){return A instanceof Error||(A?.constructor?.name==="Error"||A?.constructor?.name==="DOMException")}function fO0(A){for(let Q=0;Q=32&&B<=126||B>=128&&B<=255))return!1}return!0}var bO0=_2Q;function g2Q(A){return(A[0]==="\t"||A[0]===" "||A[A.length-1]==="\t"||A[A.length-1]===" "||A.includes(` -`)||A.includes("\r")||A.includes("\x00"))===!1}function mO0(A){let Q=(A.headersList.get("referrer-policy",!0)??"").split(","),B="";if(Q.length)for(let Y=Q.length;Y!==0;Y--){let J=Q[Y-1].trim();if(wO0.has(J)){B=J;break}}return B}function uO0(A,Q){let B=mO0(Q);if(B!=="")A.referrerPolicy=B}function dO0(){return"allowed"}function cO0(){return"success"}function lO0(){return"success"}function pO0(A){let Q=null;Q=A.mode,A.headersList.set("sec-fetch-mode",Q,!0)}function iO0(A){let Q=A.origin;if(Q==="client"||Q===void 0)return;if(A.responseTainting==="cors"||A.mode==="websocket")A.headersList.append("origin",Q,!0);else if(A.method!=="GET"&&A.method!=="HEAD"){switch(A.referrerPolicy){case"no-referrer":Q=null;break;case"no-referrer-when-downgrade":case"strict-origin":case"strict-origin-when-cross-origin":if(A.origin&&yr(A.origin)&&!yr(d$(A)))Q=null;break;case"same-origin":if(!Dq(A,d$(A)))Q=null;break;default:}A.headersList.append("origin",Q,!0)}}function rK(A,Q){return A}function nO0(A,Q,B){if(!A?.startTime||A.startTime4096)Y=J;switch(Q){case"no-referrer":return"no-referrer";case"origin":if(J!=null)return J;return vr(B,!0);case"unsafe-url":return Y;case"strict-origin":{let C=d$(A);if(u$(Y)&&!u$(C))return"no-referrer";return J}case"strict-origin-when-cross-origin":{let C=d$(A);if(Dq(Y,C))return Y;if(u$(Y)&&!u$(C))return"no-referrer";return J}case"same-origin":if(Dq(A,Y))return Y;return"no-referrer";case"origin-when-cross-origin":if(Dq(A,Y))return Y;return J;case"no-referrer-when-downgrade":{let C=d$(A);if(u$(Y)&&!u$(C))return"no-referrer";return Y}}}function vr(A,Q=!1){if(c$(eW.is.URL(A)),A=new URL(A),m2Q(A))return"no-referrer";if(A.username="",A.password="",A.hash="",Q===!0)A.pathname="",A.search="";return A}var tO0=RegExp.prototype.test.bind(/^127\.(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)\.){2}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)$/),eO0=RegExp.prototype.test.bind(/^(?:(?:0{1,4}:){7}|(?:0{1,4}:){1,6}:|::)0{0,3}1$/);function x2Q(A){if(A.includes(":")){if(A[0]==="["&&A[A.length-1]==="]")A=A.slice(1,-1);return eO0(A)}return tO0(A)}function AP0(A){if(A==null||A==="null")return!1;if(A=new URL(A),A.protocol==="https:"||A.protocol==="wss:")return!0;if(x2Q(A.hostname))return!0;if(A.hostname==="localhost"||A.hostname==="localhost.")return!0;if(A.hostname.endsWith(".localhost")||A.hostname.endsWith(".localhost."))return!0;if(A.protocol==="file:")return!0;return!1}function u$(A){if(!eW.is.URL(A))return!1;if(A.href==="about:blank"||A.href==="about:srcdoc")return!0;if(A.protocol==="data:")return!0;if(A.protocol==="blob:")return!0;return AP0(A.origin)}function QP0(A){}function Dq(A,Q){if(A.origin===Q.origin&&A.origin==="null")return!0;if(A.protocol===Q.protocol&&A.hostname===Q.hostname&&A.port===Q.port)return!0;return!1}function BP0(A){return A.controller.state==="aborted"}function YP0(A){return A.controller.state==="aborted"||A.controller.state==="terminated"}function JP0(A){return _O0[A.toLowerCase()]??A}function CP0(A){let Q=JSON.stringify(A);if(Q===void 0)throw TypeError("Value is not JSON serializable");return c$(typeof Q==="string"),Q}var XP0=Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]()));function f2Q(A,Q,B=0,Y=1){class J{#A;#Q;#B;constructor(C,X){this.#A=C,this.#Q=X,this.#B=0}next(){if(typeof this!=="object"||this===null||!(#A in this))throw TypeError(`'next' called on an object that does not implement interface ${A} Iterator.`);let C=this.#B,X=Q(this.#A),G=X.length;if(C>=G)return{value:void 0,done:!0};let{[B]:W,[Y]:F}=X[C];this.#B=C+1;let Z;switch(this.#Q){case"key":Z=W;break;case"value":Z=F;break;case"key+value":Z=[W,F];break}return{value:Z,done:!1}}}return delete J.prototype.constructor,Object.setPrototypeOf(J.prototype,XP0),Object.defineProperties(J.prototype,{[Symbol.toStringTag]:{writable:!1,enumerable:!1,configurable:!0,value:`${A} Iterator`},next:{writable:!0,enumerable:!0,configurable:!0}}),function(C,X){return new J(C,X)}}function GP0(A,Q,B,Y=0,J=1){let C=f2Q(A,B,Y,J),X={keys:{writable:!0,enumerable:!0,configurable:!0,value:function(){return eW.brandCheck(this,Q),C(this,"key")}},values:{writable:!0,enumerable:!0,configurable:!0,value:function(){return eW.brandCheck(this,Q),C(this,"value")}},entries:{writable:!0,enumerable:!0,configurable:!0,value:function(){return eW.brandCheck(this,Q),C(this,"key+value")}},forEach:{writable:!0,enumerable:!0,configurable:!0,value:function(W,F=globalThis){if(eW.brandCheck(this,Q),eW.argumentLengthCheck(arguments,1,`${A}.forEach`),typeof W!=="function")throw TypeError(`Failed to execute 'forEach' on '${A}': parameter 1 is not of type 'Function'.`);for(let{0:Z,1:U}of C(this,"key+value"))W.call(F,U,Z,this)}}};return Object.defineProperties(Q.prototype,{...X,[Symbol.iterator]:{writable:!0,enumerable:!1,configurable:!0,value:X.entries.value}})}function WP0(A,Q,B){let Y=Q,J=B;try{let C=A.stream.getReader();b2Q(C,Y,J)}catch(C){J(C)}}function FP0(A){try{A.close(),A.byobRequest?.respond(0)}catch(Q){if(!Q.message.includes("Controller is already closed")&&!Q.message.includes("ReadableStream is already closed"))throw Q}}var ZP0=/[^\x00-\xFF]/;function IS(A){return c$(!ZP0.test(A)),A}async function b2Q(A,Q,B){try{let Y=[],J=0;do{let{done:C,value:X}=await A.read();if(C){Q(Buffer.concat(Y,J));return}if(!vO0(X)){B(TypeError("Received non-Uint8Array chunk"));return}Y.push(X),J+=X.length}while(!0)}catch(Y){B(Y)}}function m2Q(A){c$("protocol"in A);let Q=A.protocol;return Q==="about:"||Q==="blob:"||Q==="data:"}function yr(A){return typeof A==="string"&&A[5]===":"&&A[0]==="h"&&A[1]==="t"&&A[2]==="t"&&A[3]==="p"&&A[4]==="s"||A.protocol==="https:"}function u2Q(A){c$("protocol"in A);let Q=A.protocol;return Q==="http:"||Q==="https:"}function $P0(A,Q){let B=A;if(!B.startsWith("bytes"))return"failure";let Y={position:5};if(Q)m$((W)=>W==="\t"||W===" ",B,Y);if(B.charCodeAt(Y.position)!==61)return"failure";if(Y.position++,Q)m$((W)=>W==="\t"||W===" ",B,Y);let J=m$((W)=>{let F=W.charCodeAt(0);return F>=48&&F<=57},B,Y),C=J.length?Number(J):null;if(Q)m$((W)=>W==="\t"||W===" ",B,Y);if(B.charCodeAt(Y.position)!==45)return"failure";if(Y.position++,Q)m$((W)=>W==="\t"||W===" ",B,Y);let X=m$((W)=>{let F=W.charCodeAt(0);return F>=48&&F<=57},B,Y),G=X.length?Number(X):null;if(Y.positionG)return"failure";return{rangeStartValue:C,rangeEndValue:G}}function UP0(A,Q,B){let Y="bytes ";return Y+=IS(`${A}`),Y+="-",Y+=IS(`${Q}`),Y+="/",Y+=IS(`${B}`),Y}class d2Q extends zO0{#A;constructor(A){super();this.#A=A}_transform(A,Q,B){if(!this._inflateStream){if(A.length===0){B();return}this._inflateStream=(A[0]&15)===8?S2Q.createInflate(this.#A):S2Q.createInflateRaw(this.#A),this._inflateStream.on("data",this.push.bind(this)),this._inflateStream.on("end",()=>this.push(null)),this._inflateStream.on("error",(Y)=>this.destroy(Y))}this._inflateStream.write(A,Q,B)}_final(A){if(this._inflateStream)this._inflateStream.end(),this._inflateStream=null;A()}}function EP0(A){return new d2Q(A)}function KP0(A){let Q=null,B=null,Y=null,J=c2Q("content-type",A);if(J===null)return"failure";for(let C of J){let X=TO0(C);if(X==="failure"||X.essence==="*/*")continue;if(Y=X,Y.essence!==B){if(Q=null,Y.parameters.has("charset"))Q=Y.parameters.get("charset");B=Y.essence}else if(!Y.parameters.has("charset")&&Q!==null)Y.parameters.set("charset",Q)}if(Y==null)return"failure";return Y}function VP0(A){let Q=A,B={position:0},Y=[],J="";while(B.positionC!=='"'&&C!==",",Q,B),B.positionC===9||C===32),Y.push(J),J=""}return Y}function c2Q(A,Q){let B=Q.get(A,!0);if(B===null)return null;return VP0(B)}var IP0=new TextDecoder;function HP0(A){if(A.length===0)return"";if(A[0]===239&&A[1]===187&&A[2]===191)A=A.subarray(3);return IP0.decode(A)}class l2Q{get baseUrl(){return k2Q()}get origin(){return this.baseUrl?.origin}policyContainer=h2Q()}class p2Q{settingsObject=new l2Q}var DP0=new p2Q;i2Q.exports={isAborted:BP0,isCancelled:YP0,isValidEncodedURL:y2Q,ReadableStreamFrom:kO0,tryUpgradeRequestToAPotentiallyTrustworthyURL:QP0,clampAndCoarsenConnectionTimingInfo:nO0,coarsenedSharedCurrentTime:sO0,determineRequestsReferrer:oO0,makePolicyContainer:h2Q,clonePolicyContainer:aO0,appendFetchMetadata:pO0,appendRequestOriginHeader:iO0,TAOCheck:lO0,corsCheck:cO0,crossOriginResourcePolicyCheck:dO0,createOpaqueTimingInfo:rO0,setRequestReferrerPolicyOnRedirect:uO0,isValidHTTPToken:_2Q,requestBadPort:hO0,requestCurrentURL:d$,responseURL:v2Q,responseLocationURL:yO0,isURLPotentiallyTrustworthy:u$,isValidReasonPhrase:fO0,sameOrigin:Dq,normalizeMethod:JP0,serializeJavascriptValueToJSONString:CP0,iteratorMixin:GP0,createIterator:f2Q,isValidHeaderName:bO0,isValidHeaderValue:g2Q,isErrorLike:xO0,fullyReadBody:WP0,readableStreamClose:FP0,isomorphicEncode:IS,urlIsLocal:m2Q,urlHasHttpsScheme:yr,urlIsHttpHttpsScheme:u2Q,readAllBytes:b2Q,simpleRangeHeaderValue:$P0,buildContentRange:UP0,createInflate:EP0,extractMimeType:KP0,getDecodeSplit:c2Q,utf8DecodeBytes:HP0,environmentSettingsObject:DP0,isOriginIPPotentiallyTrustworthy:x2Q}});var HS=R((psY,s2Q)=>{var{iteratorMixin:NP0}=z9(),{kEnumerableProperty:aK}=lQ(),{webidl:hB}=HJ(),n2Q=u("node:util");class Y8{#A=[];constructor(A=void 0){if(hB.util.markAsUncloneable(this),A!==void 0)throw hB.errors.conversionFailed({prefix:"FormData constructor",argument:"Argument 1",types:["undefined"]})}append(A,Q,B=void 0){hB.brandCheck(this,Y8);let Y="FormData.append";if(hB.argumentLengthCheck(arguments,2,Y),A=hB.converters.USVString(A),arguments.length===3||hB.is.Blob(Q)){if(Q=hB.converters.Blob(Q,Y,"value"),B!==void 0)B=hB.converters.USVString(B)}else Q=hB.converters.USVString(Q);let J=gr(A,Q,B);this.#A.push(J)}delete(A){hB.brandCheck(this,Y8);let Q="FormData.delete";hB.argumentLengthCheck(arguments,1,Q),A=hB.converters.USVString(A),this.#A=this.#A.filter((B)=>B.name!==A)}get(A){hB.brandCheck(this,Y8);let Q="FormData.get";hB.argumentLengthCheck(arguments,1,Q),A=hB.converters.USVString(A);let B=this.#A.findIndex((Y)=>Y.name===A);if(B===-1)return null;return this.#A[B].value}getAll(A){hB.brandCheck(this,Y8);let Q="FormData.getAll";return hB.argumentLengthCheck(arguments,1,Q),A=hB.converters.USVString(A),this.#A.filter((B)=>B.name===A).map((B)=>B.value)}has(A){hB.brandCheck(this,Y8);let Q="FormData.has";return hB.argumentLengthCheck(arguments,1,Q),A=hB.converters.USVString(A),this.#A.findIndex((B)=>B.name===A)!==-1}set(A,Q,B=void 0){hB.brandCheck(this,Y8);let Y="FormData.set";if(hB.argumentLengthCheck(arguments,2,Y),A=hB.converters.USVString(A),arguments.length===3||hB.is.Blob(Q)){if(Q=hB.converters.Blob(Q,Y,"value"),B!==void 0)B=hB.converters.USVString(B)}else Q=hB.converters.USVString(Q);let J=gr(A,Q,B),C=this.#A.findIndex((X)=>X.name===A);if(C!==-1)this.#A=[...this.#A.slice(0,C),J,...this.#A.slice(C+1).filter((X)=>X.name!==A)];else this.#A.push(J)}[n2Q.inspect.custom](A,Q){let B=this.#A.reduce((J,C)=>{if(J[C.name])if(Array.isArray(J[C.name]))J[C.name].push(C.value);else J[C.name]=[J[C.name],C.value];else J[C.name]=C.value;return J},{__proto__:null});Q.depth??=A,Q.colors??=!0;let Y=n2Q.formatWithOptions(Q,B);return`FormData ${Y.slice(Y.indexOf("]")+2)}`}static getFormDataState(A){return A.#A}static setFormDataState(A,Q){A.#A=Q}}var{getFormDataState:LP0,setFormDataState:qP0}=Y8;Reflect.deleteProperty(Y8,"getFormDataState");Reflect.deleteProperty(Y8,"setFormDataState");NP0("FormData",Y8,LP0,"name","value");Object.defineProperties(Y8.prototype,{append:aK,delete:aK,get:aK,getAll:aK,has:aK,set:aK,[Symbol.toStringTag]:{value:"FormData",configurable:!0}});function gr(A,Q,B){if(typeof Q==="string");else{if(!hB.is.File(Q))Q=new File([Q],"blob",{type:Q.type});if(B!==void 0){let Y={type:Q.type,lastModified:Q.lastModified};Q=new File([Q],B,Y)}}return{name:A,value:Q}}hB.is.FormData=hB.util.MakeTypeAssertion(Y8);s2Q.exports={FormData:Y8,makeEntry:gr,setFormDataState:qP0}});var t2Q=R((isY,o2Q)=>{var{bufferToLowerCasedHeaderName:MP0}=lQ(),{utf8DecodeBytes:zP0}=z9(),{HTTP_TOKEN_CODEPOINTS:RP0,isomorphicDecode:r2Q}=l8(),{makeEntry:wP0}=HS(),{webidl:hr}=HJ(),DS=u("node:assert"),jP0=Buffer.from('form-data; name="'),OP0=Buffer.from("filename"),PP0=Buffer.from("--"),TP0=Buffer.from(`--\r +`,A)}function QKQ(A){return GKQ(" ",A)}function GKQ(A,Q){let B="";for(let Y=0;YW){F=F.next,Z=F===null||F===void 0?void 0:F.line;continue}let U=F.value||F.kind,$="";if(!Q&&nq0.indexOf(F.kind)>=0)U="*";if(F.kind===PW.TokenKind.STRING)U=`"${U}"`;if(F.kind===PW.TokenKind.EOF)U="";if(F.line>Z)X+=iq0(F.line-Z),Z=F.line,$=QKQ(F.column-1);else if(F.line===((J=F.prev)===null||J===void 0?void 0:J.line))$=QKQ(F.start-(((C=F.prev)===null||C===void 0?void 0:C.end)||0));if(X+=$+U,F)F=F.next}}return X}$KQ.getSourceFromLocation=WKQ;function FKQ(A,Q,B){if(!A||typeof A.getFields!=="function"||A[NG.OTEL_PATCHED_SYMBOL])return;let Y=A.getFields();A[NG.OTEL_PATCHED_SYMBOL]=!0,Object.keys(Y).forEach((J)=>{let C=Y[J];if(!C)return;if(C.resolve)C.resolve=ZKQ(Q,B,C.resolve);if(C.type){let X=C.type;while(X.ofType)X=X.ofType;FKQ(X,Q,B)}})}$KQ.wrapFields=FKQ;var BKQ=(A,Q,B)=>{if(!B)return;A.recordException(Q),A.setStatus({code:yK.SpanStatusCode.ERROR,message:Q.message}),A.end()},YKQ=(A,Q)=>{if(!Q)return;A.end()};function ZKQ(A,Q,B,Y=!1){if(J[NG.OTEL_PATCHED_SYMBOL]||typeof B!=="function")return B;function J(C,X,G,W){if(!B)return;let F=Q();if(F.ignoreTrivialResolveSpans&&Y&&(fq0(C)||typeof C==="function")){if(typeof C[W.fieldName]!=="function")return B.call(this,C,X,G,W)}if(!G[NG.OTEL_GRAPHQL_DATA_SYMBOL])return B.call(this,C,X,G,W);let Z=pq0(F.mergeItems,W&&W.path),U=Z.filter((K)=>typeof K==="string").length,$,E=!1;if(F.depth>=0&&F.depth{try{let K=B.call(this,C,X,G,W);if($KQ.isPromise(K))return K.then((I)=>{return YKQ($.span,E),I},(I)=>{throw BKQ($.span,I,E),I});else return YKQ($.span,E),K}catch(K){throw BKQ($.span,K,E),K}})}return J[NG.OTEL_PATCHED_SYMBOL]=!0,J}$KQ.wrapFieldResolver=ZKQ});var HKQ=R((VKQ)=>{Object.defineProperty(VKQ,"__esModule",{value:!0});VKQ.PACKAGE_NAME=VKQ.PACKAGE_VERSION=void 0;VKQ.PACKAGE_VERSION="0.47.1";VKQ.PACKAGE_NAME="@opentelemetry/instrumentation-graphql"});var zKQ=R((qKQ)=>{Object.defineProperty(qKQ,"__esModule",{value:!0});qKQ.GraphQLInstrumentation=void 0;var LG=yA(),e5=NB(),pL=vn(),QT=gn(),xn=AT(),QM0=eEQ(),hJ=KKQ(),DKQ=HKQ(),NKQ={mergeItems:!1,depth:-1,allowValues:!1,ignoreResolveSpans:!1},BT=[">=14.0.0 <17"];class LKQ extends e5.InstrumentationBase{constructor(A={}){super(DKQ.PACKAGE_NAME,DKQ.PACKAGE_VERSION,Object.assign(Object.assign({},NKQ),A))}setConfig(A={}){super.setConfig(Object.assign(Object.assign({},NKQ),A))}init(){let A=new e5.InstrumentationNodeModuleDefinition("graphql",BT);return A.files.push(this._addPatchingExecute()),A.files.push(this._addPatchingParser()),A.files.push(this._addPatchingValidate()),A}_addPatchingExecute(){return new e5.InstrumentationNodeModuleFile("graphql/execution/execute.js",BT,(A)=>{if((0,e5.isWrapped)(A.execute))this._unwrap(A,"execute");return this._wrap(A,"execute",this._patchExecute(A.defaultFieldResolver)),A},(A)=>{if(A)this._unwrap(A,"execute")})}_addPatchingParser(){return new e5.InstrumentationNodeModuleFile("graphql/language/parser.js",BT,(A)=>{if((0,e5.isWrapped)(A.parse))this._unwrap(A,"parse");return this._wrap(A,"parse",this._patchParse()),A},(A)=>{if(A)this._unwrap(A,"parse")})}_addPatchingValidate(){return new e5.InstrumentationNodeModuleFile("graphql/validation/validate.js",BT,(A)=>{if((0,e5.isWrapped)(A.validate))this._unwrap(A,"validate");return this._wrap(A,"validate",this._patchValidate()),A},(A)=>{if(A)this._unwrap(A,"validate")})}_patchExecute(A){let Q=this;return function(Y){return function(){let C;if(arguments.length>=2){let W=arguments;C=Q._wrapExecuteArgs(W[0],W[1],W[2],W[3],W[4],W[5],W[6],W[7],A)}else{let W=arguments[0];C=Q._wrapExecuteArgs(W.schema,W.document,W.rootValue,W.contextValue,W.variableValues,W.operationName,W.fieldResolver,W.typeResolver,A)}let X=(0,hJ.getOperation)(C.document,C.operationName),G=Q._createExecuteSpan(X,C);return C.contextValue[xn.OTEL_GRAPHQL_DATA_SYMBOL]={source:C.document?C.document||C.document[xn.OTEL_GRAPHQL_DATA_SYMBOL]:void 0,span:G,fields:{}},LG.context.with(LG.trace.setSpan(LG.context.active(),G),()=>{return(0,e5.safeExecuteInTheMiddle)(()=>{return Y.apply(this,[C])},(W,F)=>{Q._handleExecutionResult(G,W,F)})})}}}_handleExecutionResult(A,Q,B){let Y=this.getConfig();if(B===void 0||Q){(0,hJ.endSpan)(A,Q);return}if((0,hJ.isPromise)(B))B.then((J)=>{if(typeof Y.responseHook!=="function"){(0,hJ.endSpan)(A);return}this._executeResponseHook(A,J)},(J)=>{(0,hJ.endSpan)(A,J)});else{if(typeof Y.responseHook!=="function"){(0,hJ.endSpan)(A);return}this._executeResponseHook(A,B)}}_executeResponseHook(A,Q){let{responseHook:B}=this.getConfig();if(!B)return;(0,e5.safeExecuteInTheMiddle)(()=>{B(A,Q)},(Y)=>{if(Y)this._diag.error("Error running response hook",Y);(0,hJ.endSpan)(A,void 0)},!0)}_patchParse(){let A=this;return function(B){return function(J,C){return A._parse(this,B,J,C)}}}_patchValidate(){let A=this;return function(B){return function(J,C,X,G,W){return A._validate(this,B,J,C,X,W,G)}}}_parse(A,Q,B,Y){let J=this.getConfig(),C=this.tracer.startSpan(pL.SpanNames.PARSE);return LG.context.with(LG.trace.setSpan(LG.context.active(),C),()=>{return(0,e5.safeExecuteInTheMiddle)(()=>{return Q.call(A,B,Y)},(X,G)=>{if(G){if(!(0,hJ.getOperation)(G))C.updateName(pL.SpanNames.SCHEMA_PARSE);else if(G.loc)(0,hJ.addSpanSource)(C,G.loc,J.allowValues)}(0,hJ.endSpan)(C,X)})})}_validate(A,Q,B,Y,J,C,X){let G=this.tracer.startSpan(pL.SpanNames.VALIDATE,{});return LG.context.with(LG.trace.setSpan(LG.context.active(),G),()=>{return(0,e5.safeExecuteInTheMiddle)(()=>{return Q.call(A,B,Y,J,X,C)},(W,F)=>{if(!Y.loc)G.updateName(pL.SpanNames.SCHEMA_VALIDATE);if(F&&F.length)G.recordException({name:QT.AttributeNames.ERROR_VALIDATION_NAME,message:JSON.stringify(F)});(0,hJ.endSpan)(G,W)})})}_createExecuteSpan(A,Q){var B;let Y=this.getConfig(),J=this.tracer.startSpan(pL.SpanNames.EXECUTE,{});if(A){let{operation:C,name:X}=A;J.setAttribute(QT.AttributeNames.OPERATION_TYPE,C);let G=X===null||X===void 0?void 0:X.value;if(G)J.setAttribute(QT.AttributeNames.OPERATION_NAME,G),J.updateName(`${C} ${G}`);else J.updateName(C)}else{let C=" ";if(Q.operationName)C=` "${Q.operationName}" `;C=QM0.OPERATION_NOT_SUPPORTED.replace("$operationName$",C),J.setAttribute(QT.AttributeNames.OPERATION_NAME,C)}if((B=Q.document)===null||B===void 0?void 0:B.loc)(0,hJ.addSpanSource)(J,Q.document.loc,Y.allowValues);if(Q.variableValues&&Y.allowValues)(0,hJ.addInputVariableAttributes)(J,Q.variableValues);return J}_wrapExecuteArgs(A,Q,B,Y,J,C,X,G,W){if(!Y)Y={};if(Y[xn.OTEL_GRAPHQL_DATA_SYMBOL]||this.getConfig().ignoreResolveSpans)return{schema:A,document:Q,rootValue:B,contextValue:Y,variableValues:J,operationName:C,fieldResolver:X,typeResolver:G};let F=X==null,Z=X!==null&&X!==void 0?X:W;if(X=(0,hJ.wrapFieldResolver)(this.tracer,()=>this.getConfig(),Z,F),A)(0,hJ.wrapFields)(A.getQueryType(),this.tracer,()=>this.getConfig()),(0,hJ.wrapFields)(A.getMutationType(),this.tracer,()=>this.getConfig());return{schema:A,document:Q,rootValue:B,contextValue:Y,variableValues:J,operationName:C,fieldResolver:X,typeResolver:G}}}qKQ.GraphQLInstrumentation=LKQ});var wKQ=R((RKQ)=>{Object.defineProperty(RKQ,"__esModule",{value:!0})});var OKQ=R((TW)=>{var BM0=TW&&TW.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),jKQ=TW&&TW.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))BM0(Q,A,B)};Object.defineProperty(TW,"__esModule",{value:!0});jKQ(zKQ(),TW);jKQ(wKQ(),TW)});var vKQ=R((kKQ)=>{Object.defineProperty(kKQ,"__esModule",{value:!0});kKQ.PACKAGE_NAME=kKQ.PACKAGE_VERSION=void 0;kKQ.PACKAGE_VERSION="0.7.1";kKQ.PACKAGE_NAME="@opentelemetry/instrumentation-kafkajs"});var hKQ=R((yKQ)=>{Object.defineProperty(yKQ,"__esModule",{value:!0});yKQ.bufferTextMapGetter=void 0;yKQ.bufferTextMapGetter={get(A,Q){var B;if(!A)return;let Y=Object.keys(A);for(let J of Y)if(J===Q||J.toLowerCase()===Q)return(B=A[J])===null||B===void 0?void 0:B.toString();return},keys(A){return A?Object.keys(A):[]}}});var dKQ=R((mKQ)=>{Object.defineProperty(mKQ,"__esModule",{value:!0});mKQ.KafkaJsInstrumentation=void 0;var IJ=yA(),SW=dB(),xKQ=vKQ(),fKQ=hKQ(),K1=NB();class bKQ extends K1.InstrumentationBase{constructor(A={}){super(xKQ.PACKAGE_NAME,xKQ.PACKAGE_VERSION,A)}init(){let A=(B)=>{var Y,J;if((0,K1.isWrapped)((Y=B===null||B===void 0?void 0:B.Kafka)===null||Y===void 0?void 0:Y.prototype.producer))this._unwrap(B.Kafka.prototype,"producer");if((0,K1.isWrapped)((J=B===null||B===void 0?void 0:B.Kafka)===null||J===void 0?void 0:J.prototype.consumer))this._unwrap(B.Kafka.prototype,"consumer")};return new K1.InstrumentationNodeModuleDefinition("kafkajs",[">=0.1.0 <3"],(B)=>{var Y,J;return A(B),this._wrap((Y=B===null||B===void 0?void 0:B.Kafka)===null||Y===void 0?void 0:Y.prototype,"producer",this._getProducerPatch()),this._wrap((J=B===null||B===void 0?void 0:B.Kafka)===null||J===void 0?void 0:J.prototype,"consumer",this._getConsumerPatch()),B},A)}_getConsumerPatch(){let A=this;return(Q)=>{return function(...Y){let J=Q.apply(this,Y);if((0,K1.isWrapped)(J.run))A._unwrap(J,"run");return A._wrap(J,"run",A._getConsumerRunPatch()),J}}}_getProducerPatch(){let A=this;return(Q)=>{return function(...Y){let J=Q.apply(this,Y);if((0,K1.isWrapped)(J.sendBatch))A._unwrap(J,"sendBatch");if(A._wrap(J,"sendBatch",A._getProducerSendBatchPatch()),(0,K1.isWrapped)(J.send))A._unwrap(J,"send");return A._wrap(J,"send",A._getProducerSendPatch()),J}}}_getConsumerRunPatch(){let A=this;return(Q)=>{return function(...Y){let J=Y[0];if(J===null||J===void 0?void 0:J.eachMessage){if((0,K1.isWrapped)(J.eachMessage))A._unwrap(J,"eachMessage");A._wrap(J,"eachMessage",A._getConsumerEachMessagePatch())}if(J===null||J===void 0?void 0:J.eachBatch){if((0,K1.isWrapped)(J.eachBatch))A._unwrap(J,"eachBatch");A._wrap(J,"eachBatch",A._getConsumerEachBatchPatch())}return Q.call(this,J)}}}_getConsumerEachMessagePatch(){let A=this;return(Q)=>{return function(...Y){let J=Y[0],C=IJ.propagation.extract(IJ.ROOT_CONTEXT,J.message.headers,fKQ.bufferTextMapGetter),X=A._startConsumerSpan(J.topic,J.message,SW.MESSAGINGOPERATIONVALUES_PROCESS,C),G=IJ.context.with(IJ.trace.setSpan(C,X),()=>{return Q.apply(this,Y)});return A._endSpansOnPromise([X],G)}}}_getConsumerEachBatchPatch(){return(A)=>{let Q=this;return function(...Y){let J=Y[0],C=Q._startConsumerSpan(J.batch.topic,void 0,SW.MESSAGINGOPERATIONVALUES_RECEIVE,IJ.ROOT_CONTEXT);return IJ.context.with(IJ.trace.setSpan(IJ.context.active(),C),()=>{let X=J.batch.messages.map((W)=>{var F;let Z=IJ.propagation.extract(IJ.ROOT_CONTEXT,W.headers,fKQ.bufferTextMapGetter),U=(F=IJ.trace.getSpan(Z))===null||F===void 0?void 0:F.spanContext(),$;if(U)$={context:U};return Q._startConsumerSpan(J.batch.topic,W,SW.MESSAGINGOPERATIONVALUES_PROCESS,void 0,$)}),G=A.apply(this,Y);return X.unshift(C),Q._endSpansOnPromise(X,G)})}}}_getProducerSendBatchPatch(){let A=this;return(Q)=>{return function(...Y){let X=(Y[0].topicMessages||[]).map((W)=>W.messages.map((F)=>A._startProducerSpan(W.topic,F))).reduce((W,F)=>W.concat(F),[]),G=Q.apply(this,Y);return A._endSpansOnPromise(X,G)}}}_getProducerSendPatch(){let A=this;return(Q)=>{return function(...Y){let J=Y[0],C=J.messages.map((G)=>{return A._startProducerSpan(J.topic,G)}),X=Q.apply(this,Y);return A._endSpansOnPromise(C,X)}}}_endSpansOnPromise(A,Q){return Promise.resolve(Q).catch((B)=>{let Y;if(typeof B==="string")Y=B;else if(typeof B==="object"&&Object.prototype.hasOwnProperty.call(B,"message"))Y=B.message;throw A.forEach((J)=>J.setStatus({code:IJ.SpanStatusCode.ERROR,message:Y})),B}).finally(()=>{A.forEach((B)=>B.end())})}_startConsumerSpan(A,Q,B,Y,J){let C=this.tracer.startSpan(A,{kind:IJ.SpanKind.CONSUMER,attributes:{[SW.SEMATTRS_MESSAGING_SYSTEM]:"kafka",[SW.SEMATTRS_MESSAGING_DESTINATION]:A,[SW.SEMATTRS_MESSAGING_OPERATION]:B},links:J?[J]:[]},Y),{consumerHook:X}=this.getConfig();if(X&&Q)(0,K1.safeExecuteInTheMiddle)(()=>X(C,{topic:A,message:Q}),(G)=>{if(G)this._diag.error("consumerHook error",G)},!0);return C}_startProducerSpan(A,Q){var B;let Y=this.tracer.startSpan(A,{kind:IJ.SpanKind.PRODUCER,attributes:{[SW.SEMATTRS_MESSAGING_SYSTEM]:"kafka",[SW.SEMATTRS_MESSAGING_DESTINATION]:A}});Q.headers=(B=Q.headers)!==null&&B!==void 0?B:{},IJ.propagation.inject(IJ.trace.setSpan(IJ.context.active(),Y),Q.headers);let{producerHook:J}=this.getConfig();if(J)(0,K1.safeExecuteInTheMiddle)(()=>J(Y,{topic:A,message:Q}),(C)=>{if(C)this._diag.error("producerHook error",C)},!0);return Y}}mKQ.KafkaJsInstrumentation=bKQ});var lKQ=R((cKQ)=>{Object.defineProperty(cKQ,"__esModule",{value:!0})});var iKQ=R((kW)=>{var XM0=kW&&kW.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),pKQ=kW&&kW.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))XM0(Q,A,B)};Object.defineProperty(kW,"__esModule",{value:!0});pKQ(dKQ(),kW);pKQ(lKQ(),kW)});var oKQ=R((rKQ)=>{Object.defineProperty(rKQ,"__esModule",{value:!0});rKQ.PACKAGE_NAME=rKQ.PACKAGE_VERSION=void 0;rKQ.PACKAGE_VERSION="0.44.1";rKQ.PACKAGE_NAME="@opentelemetry/instrumentation-lru-memoizer"});var JVQ=R((BVQ)=>{Object.defineProperty(BVQ,"__esModule",{value:!0});BVQ.LruMemoizerInstrumentation=void 0;var tKQ=yA(),eKQ=NB(),AVQ=oKQ();class QVQ extends eKQ.InstrumentationBase{constructor(A={}){super(AVQ.PACKAGE_NAME,AVQ.PACKAGE_VERSION,A)}init(){return[new eKQ.InstrumentationNodeModuleDefinition("lru-memoizer",[">=1.3 <3"],(A)=>{let Q=function(){let B=A.apply(this,arguments);return function(){let Y=[...arguments],J=Y.pop(),C=typeof J==="function"?tKQ.context.bind(tKQ.context.active(),J):J;return Y.push(C),B.apply(this,Y)}};return Q.sync=A.sync,Q},void 0)]}}BVQ.LruMemoizerInstrumentation=QVQ});var CVQ=R((T$)=>{var FM0=T$&&T$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),ZM0=T$&&T$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))FM0(Q,A,B)};Object.defineProperty(T$,"__esModule",{value:!0});ZM0(JVQ(),T$)});var FVQ=R((WVQ)=>{Object.defineProperty(WVQ,"__esModule",{value:!0});WVQ.MongodbCommandType=void 0;var UM0;(function(A){A.CREATE_INDEXES="createIndexes",A.FIND_AND_MODIFY="findAndModify",A.IS_MASTER="isMaster",A.COUNT="count",A.AGGREGATE="aggregate",A.UNKNOWN="unknown"})(UM0=WVQ.MongodbCommandType||(WVQ.MongodbCommandType={}))});var UVQ=R((ZVQ)=>{Object.defineProperty(ZVQ,"__esModule",{value:!0});ZVQ.PACKAGE_NAME=ZVQ.PACKAGE_VERSION=void 0;ZVQ.PACKAGE_VERSION="0.52.0";ZVQ.PACKAGE_NAME="@opentelemetry/instrumentation-mongodb"});var HVQ=R((VVQ)=>{Object.defineProperty(VVQ,"__esModule",{value:!0});VVQ.MongoDBInstrumentation=void 0;var m0=yA(),D0=NB(),qG=dB(),_W=FVQ(),EVQ=UVQ(),KVQ={requireParentSpan:!0};class dn extends D0.InstrumentationBase{constructor(A={}){super(EVQ.PACKAGE_NAME,EVQ.PACKAGE_VERSION,Object.assign(Object.assign({},KVQ),A))}setConfig(A={}){super.setConfig(Object.assign(Object.assign({},KVQ),A))}_updateMetricInstruments(){this._connectionsUsage=this.meter.createUpDownCounter("db.client.connections.usage",{description:"The number of connections that are currently in state described by the state attribute.",unit:"{connection}"})}init(){let{v3PatchConnection:A,v3UnpatchConnection:Q}=this._getV3ConnectionPatches(),{v4PatchConnect:B,v4UnpatchConnect:Y}=this._getV4ConnectPatches(),{v4PatchConnectionCallback:J,v4PatchConnectionPromise:C,v4UnpatchConnection:X}=this._getV4ConnectionPatches(),{v4PatchConnectionPool:G,v4UnpatchConnectionPool:W}=this._getV4ConnectionPoolPatches(),{v4PatchSessions:F,v4UnpatchSessions:Z}=this._getV4SessionsPatches();return[new D0.InstrumentationNodeModuleDefinition("mongodb",[">=3.3.0 <4"],void 0,void 0,[new D0.InstrumentationNodeModuleFile("mongodb/lib/core/wireprotocol/index.js",[">=3.3.0 <4"],A,Q)]),new D0.InstrumentationNodeModuleDefinition("mongodb",[">=4.0.0 <7"],void 0,void 0,[new D0.InstrumentationNodeModuleFile("mongodb/lib/cmap/connection.js",[">=4.0.0 <6.4"],J,X),new D0.InstrumentationNodeModuleFile("mongodb/lib/cmap/connection.js",[">=6.4.0 <7"],C,X),new D0.InstrumentationNodeModuleFile("mongodb/lib/cmap/connection_pool.js",[">=4.0.0 <6.4"],G,W),new D0.InstrumentationNodeModuleFile("mongodb/lib/cmap/connect.js",[">=4.0.0 <7"],B,Y),new D0.InstrumentationNodeModuleFile("mongodb/lib/sessions.js",[">=4.0.0 <7"],F,Z)])]}_getV3ConnectionPatches(){return{v3PatchConnection:(A)=>{if((0,D0.isWrapped)(A.insert))this._unwrap(A,"insert");if(this._wrap(A,"insert",this._getV3PatchOperation("insert")),(0,D0.isWrapped)(A.remove))this._unwrap(A,"remove");if(this._wrap(A,"remove",this._getV3PatchOperation("remove")),(0,D0.isWrapped)(A.update))this._unwrap(A,"update");if(this._wrap(A,"update",this._getV3PatchOperation("update")),(0,D0.isWrapped)(A.command))this._unwrap(A,"command");if(this._wrap(A,"command",this._getV3PatchCommand()),(0,D0.isWrapped)(A.query))this._unwrap(A,"query");if(this._wrap(A,"query",this._getV3PatchFind()),(0,D0.isWrapped)(A.getMore))this._unwrap(A,"getMore");return this._wrap(A,"getMore",this._getV3PatchCursor()),A},v3UnpatchConnection:(A)=>{if(A===void 0)return;this._unwrap(A,"insert"),this._unwrap(A,"remove"),this._unwrap(A,"update"),this._unwrap(A,"command"),this._unwrap(A,"query"),this._unwrap(A,"getMore")}}}_getV4SessionsPatches(){return{v4PatchSessions:(A)=>{if((0,D0.isWrapped)(A.acquire))this._unwrap(A,"acquire");if(this._wrap(A.ServerSessionPool.prototype,"acquire",this._getV4AcquireCommand()),(0,D0.isWrapped)(A.release))this._unwrap(A,"release");return this._wrap(A.ServerSessionPool.prototype,"release",this._getV4ReleaseCommand()),A},v4UnpatchSessions:(A)=>{if(A===void 0)return;if((0,D0.isWrapped)(A.acquire))this._unwrap(A,"acquire");if((0,D0.isWrapped)(A.release))this._unwrap(A,"release")}}}_getV4AcquireCommand(){let A=this;return(Q)=>{return function(){let Y=this.sessions.length,J=Q.call(this),C=this.sessions.length;if(Y===C)A._connectionsUsage.add(1,{state:"used","pool.name":A._poolName});else if(Y-1===C)A._connectionsUsage.add(-1,{state:"idle","pool.name":A._poolName}),A._connectionsUsage.add(1,{state:"used","pool.name":A._poolName});return J}}}_getV4ReleaseCommand(){let A=this;return(Q)=>{return function(Y){let J=Q.call(this,Y);return A._connectionsUsage.add(-1,{state:"used","pool.name":A._poolName}),A._connectionsUsage.add(1,{state:"idle","pool.name":A._poolName}),J}}}_getV4ConnectionPoolPatches(){return{v4PatchConnectionPool:(A)=>{let Q=A.ConnectionPool.prototype;if((0,D0.isWrapped)(Q.checkOut))this._unwrap(Q,"checkOut");return this._wrap(Q,"checkOut",this._getV4ConnectionPoolCheckOut()),A},v4UnpatchConnectionPool:(A)=>{if(A===void 0)return;this._unwrap(A.ConnectionPool.prototype,"checkOut")}}}_getV4ConnectPatches(){return{v4PatchConnect:(A)=>{if((0,D0.isWrapped)(A.connect))this._unwrap(A,"connect");return this._wrap(A,"connect",this._getV4ConnectCommand()),A},v4UnpatchConnect:(A)=>{if(A===void 0)return;this._unwrap(A,"connect")}}}_getV4ConnectionPoolCheckOut(){return(A)=>{return function(B){let Y=m0.context.bind(m0.context.active(),B);return A.call(this,Y)}}}_getV4ConnectCommand(){let A=this;return(Q)=>{return function(Y,J){if(Q.length===1){let X=Q.call(this,Y);if(X&&typeof X.then==="function")X.then(()=>A.setPoolName(Y),()=>{return});return X}let C=function(X,G){if(X||!G){J(X,G);return}A.setPoolName(Y),J(X,G)};return Q.call(this,Y,C)}}}_getV4ConnectionPatches(){return{v4PatchConnectionCallback:(A)=>{if((0,D0.isWrapped)(A.Connection.prototype.command))this._unwrap(A.Connection.prototype,"command");return this._wrap(A.Connection.prototype,"command",this._getV4PatchCommandCallback()),A},v4PatchConnectionPromise:(A)=>{if((0,D0.isWrapped)(A.Connection.prototype.command))this._unwrap(A.Connection.prototype,"command");return this._wrap(A.Connection.prototype,"command",this._getV4PatchCommandPromise()),A},v4UnpatchConnection:(A)=>{if(A===void 0)return;this._unwrap(A.Connection.prototype,"command")}}}_getV3PatchOperation(A){let Q=this;return(B)=>{return function(J,C,X,G,W){let F=m0.trace.getSpan(m0.context.active()),Z=Q._checkSkipInstrumentation(F),U=typeof G==="function"?G:W;if(Z||typeof U!=="function"||typeof X!=="object")if(typeof G==="function")return B.call(this,J,C,X,G);else return B.call(this,J,C,X,G,W);let $=Q.tracer.startSpan(`mongodb.${A}`,{kind:m0.SpanKind.CLIENT});Q._populateV3Attributes($,C,J,X[0],A);let E=Q._patchEnd($,U);if(typeof G==="function")return B.call(this,J,C,X,E);else return B.call(this,J,C,X,G,E)}}}_getV3PatchCommand(){let A=this;return(Q)=>{return function(Y,J,C,X,G){let W=m0.trace.getSpan(m0.context.active()),F=A._checkSkipInstrumentation(W),Z=typeof X==="function"?X:G;if(F||typeof Z!=="function"||typeof C!=="object")if(typeof X==="function")return Q.call(this,Y,J,C,X);else return Q.call(this,Y,J,C,X,G);let U=dn._getCommandType(C),$=U===_W.MongodbCommandType.UNKNOWN?"command":U,E=A.tracer.startSpan(`mongodb.${$}`,{kind:m0.SpanKind.CLIENT}),K=U===_W.MongodbCommandType.UNKNOWN?void 0:U;A._populateV3Attributes(E,J,Y,C,K);let I=A._patchEnd(E,Z);if(typeof X==="function")return Q.call(this,Y,J,C,I);else return Q.call(this,Y,J,C,X,I)}}}_getV4PatchCommandCallback(){let A=this;return(Q)=>{return function(Y,J,C,X){let G=m0.trace.getSpan(m0.context.active()),W=A._checkSkipInstrumentation(G),F=X,Z=Object.keys(J)[0];if(typeof J!=="object"||J.ismaster||J.hello)return Q.call(this,Y,J,C,X);let U=void 0;if(!W)U=A.tracer.startSpan(`mongodb.${Z}`,{kind:m0.SpanKind.CLIENT}),A._populateV4Attributes(U,this,Y,J,Z);let $=A._patchEnd(U,F,this.id,Z);return Q.call(this,Y,J,C,$)}}}_getV4PatchCommandPromise(){let A=this;return(Q)=>{return function(...Y){let[J,C]=Y,X=m0.trace.getSpan(m0.context.active()),G=A._checkSkipInstrumentation(X),W=Object.keys(C)[0],F=()=>{return};if(typeof C!=="object"||C.ismaster||C.hello)return Q.apply(this,Y);let Z=void 0;if(!G)Z=A.tracer.startSpan(`mongodb.${W}`,{kind:m0.SpanKind.CLIENT}),A._populateV4Attributes(Z,this,J,C,W);let U=A._patchEnd(Z,F,this.id,W),$=Q.apply(this,Y);return $.then((E)=>U(null,E),(E)=>U(E)),$}}}_getV3PatchFind(){let A=this;return(Q)=>{return function(Y,J,C,X,G,W){let F=m0.trace.getSpan(m0.context.active()),Z=A._checkSkipInstrumentation(F),U=typeof G==="function"?G:W;if(Z||typeof U!=="function"||typeof C!=="object")if(typeof G==="function")return Q.call(this,Y,J,C,X,G);else return Q.call(this,Y,J,C,X,G,W);let $=A.tracer.startSpan("mongodb.find",{kind:m0.SpanKind.CLIENT});A._populateV3Attributes($,J,Y,C,"find");let E=A._patchEnd($,U);if(typeof G==="function")return Q.call(this,Y,J,C,X,E);else return Q.call(this,Y,J,C,X,G,E)}}}_getV3PatchCursor(){let A=this;return(Q)=>{return function(Y,J,C,X,G,W){let F=m0.trace.getSpan(m0.context.active()),Z=A._checkSkipInstrumentation(F),U=typeof G==="function"?G:W;if(Z||typeof U!=="function")if(typeof G==="function")return Q.call(this,Y,J,C,X,G);else return Q.call(this,Y,J,C,X,G,W);let $=A.tracer.startSpan("mongodb.getMore",{kind:m0.SpanKind.CLIENT});A._populateV3Attributes($,J,Y,C.cmd,"getMore");let E=A._patchEnd($,U);if(typeof G==="function")return Q.call(this,Y,J,C,X,E);else return Q.call(this,Y,J,C,X,G,E)}}}static _getCommandType(A){if(A.createIndexes!==void 0)return _W.MongodbCommandType.CREATE_INDEXES;else if(A.findandmodify!==void 0)return _W.MongodbCommandType.FIND_AND_MODIFY;else if(A.ismaster!==void 0)return _W.MongodbCommandType.IS_MASTER;else if(A.count!==void 0)return _W.MongodbCommandType.COUNT;else if(A.aggregate!==void 0)return _W.MongodbCommandType.AGGREGATE;else return _W.MongodbCommandType.UNKNOWN}_populateV4Attributes(A,Q,B,Y,J){let C,X;if(Q){let W=typeof Q.address==="string"?Q.address.split(":"):"";if(W.length===2)C=W[0],X=W[1]}let G;if((Y===null||Y===void 0?void 0:Y.documents)&&Y.documents[0])G=Y.documents[0];else if(Y===null||Y===void 0?void 0:Y.cursors)G=Y.cursors;else G=Y;this._addAllSpanAttributes(A,B.db,B.collection,C,X,G,J)}_populateV3Attributes(A,Q,B,Y,J){var C,X,G,W,F,Z,U,$;let E,K;if(B&&B.s){if(E=(X=(C=B.s.options)===null||C===void 0?void 0:C.host)!==null&&X!==void 0?X:B.s.host,K=(F=(W=(G=B.s.options)===null||G===void 0?void 0:G.port)!==null&&W!==void 0?W:B.s.port)===null||F===void 0?void 0:F.toString(),E==null||K==null){let D=(Z=B.description)===null||Z===void 0?void 0:Z.address;if(D){let L=D.split(":");E=L[0],K=L[1]}}}let[I,V]=Q.toString().split("."),H=($=(U=Y===null||Y===void 0?void 0:Y.query)!==null&&U!==void 0?U:Y===null||Y===void 0?void 0:Y.q)!==null&&$!==void 0?$:Y;this._addAllSpanAttributes(A,I,V,E,K,H,J)}_addAllSpanAttributes(A,Q,B,Y,J,C,X){if(A.setAttributes({[qG.SEMATTRS_DB_SYSTEM]:qG.DBSYSTEMVALUES_MONGODB,[qG.SEMATTRS_DB_NAME]:Q,[qG.SEMATTRS_DB_MONGODB_COLLECTION]:B,[qG.SEMATTRS_DB_OPERATION]:X,[qG.SEMATTRS_DB_CONNECTION_STRING]:`mongodb://${Y}:${J}/${Q}`}),Y&&J){A.setAttribute(qG.SEMATTRS_NET_PEER_NAME,Y);let F=parseInt(J,10);if(!isNaN(F))A.setAttribute(qG.SEMATTRS_NET_PEER_PORT,F)}if(!C)return;let{dbStatementSerializer:G}=this.getConfig(),W=typeof G==="function"?G:this._defaultDbStatementSerializer.bind(this);(0,D0.safeExecuteInTheMiddle)(()=>{let F=W(C);A.setAttribute(qG.SEMATTRS_DB_STATEMENT,F)},(F)=>{if(F)this._diag.error("Error running dbStatementSerializer hook",F)},!0)}_defaultDbStatementSerializer(A){let{enhancedDatabaseReporting:Q}=this.getConfig(),B=Q?A:this._scrubStatement(A);return JSON.stringify(B)}_scrubStatement(A){if(Array.isArray(A))return A.map((Q)=>this._scrubStatement(Q));if(typeof A==="object"&&A!==null)return Object.fromEntries(Object.entries(A).map(([Q,B])=>[Q,this._scrubStatement(B)]));return"?"}_handleExecutionResult(A,Q){let{responseHook:B}=this.getConfig();if(typeof B==="function")(0,D0.safeExecuteInTheMiddle)(()=>{B(A,{data:Q})},(Y)=>{if(Y)this._diag.error("Error running response hook",Y)},!0)}_patchEnd(A,Q,B,Y){let J=m0.context.active(),C=this;return function(...G){let W=G[0];if(A){if(W instanceof Error)A===null||A===void 0||A.setStatus({code:m0.SpanStatusCode.ERROR,message:W.message});else{let F=G[1];C._handleExecutionResult(A,F)}A.end()}return m0.context.with(J,()=>{if(Y==="endSessions")C._connectionsUsage.add(-1,{state:"idle","pool.name":C._poolName});return Q.apply(this,G)})}}setPoolName(A){var Q,B;let Y=(Q=A.hostAddress)===null||Q===void 0?void 0:Q.host,J=(B=A.hostAddress)===null||B===void 0?void 0:B.port,C=A.dbName,X=`mongodb://${Y}:${J}/${C}`;this._poolName=X}_checkSkipInstrumentation(A){return this.getConfig().requireParentSpan===!0&&A===void 0}}VVQ.MongoDBInstrumentation=dn});var NVQ=R((DVQ)=>{Object.defineProperty(DVQ,"__esModule",{value:!0});DVQ.MongodbCommandType=void 0;var KM0;(function(A){A.CREATE_INDEXES="createIndexes",A.FIND_AND_MODIFY="findAndModify",A.IS_MASTER="isMaster",A.COUNT="count",A.UNKNOWN="unknown"})(KM0=DVQ.MongodbCommandType||(DVQ.MongodbCommandType={}))});var qVQ=R((vW)=>{var VM0=vW&&vW.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),LVQ=vW&&vW.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))VM0(Q,A,B)};Object.defineProperty(vW,"__esModule",{value:!0});LVQ(HVQ(),vW);LVQ(NVQ(),vW)});var PVQ=R((jVQ)=>{Object.defineProperty(jVQ,"__esModule",{value:!0});jVQ.handleCallbackResponse=jVQ.handlePromiseResponse=jVQ.getAttributesFromCollection=void 0;var RVQ=yA(),qM0=NB(),iL=dB();function MM0(A){return{[iL.SEMATTRS_DB_MONGODB_COLLECTION]:A.name,[iL.SEMATTRS_DB_NAME]:A.conn.name,[iL.SEMATTRS_DB_USER]:A.conn.user,[iL.SEMATTRS_NET_PEER_NAME]:A.conn.host,[iL.SEMATTRS_NET_PEER_PORT]:A.conn.port}}jVQ.getAttributesFromCollection=MM0;function wVQ(A,Q={}){A.recordException(Q),A.setStatus({code:RVQ.SpanStatusCode.ERROR,message:`${Q.message} ${Q.code?` +Mongoose Error Code: ${Q.code}`:""}`})}function nn(A,Q,B,Y=void 0){if(!B)return;(0,qM0.safeExecuteInTheMiddle)(()=>B(A,{moduleVersion:Y,response:Q}),(J)=>{if(J)RVQ.diag.error("mongoose instrumentation: responseHook error",J)},!0)}function zM0(A,Q,B,Y=void 0){if(!(A instanceof Promise))return nn(Q,A,B,Y),Q.end(),A;return A.then((J)=>{return nn(Q,J,B,Y),J}).catch((J)=>{throw wVQ(Q,J),J}).finally(()=>Q.end())}jVQ.handlePromiseResponse=zM0;function RM0(A,Q,B,Y,J,C,X=void 0){let G=0;if(J.length===2)G=1;return J[G]=(W,F)=>{return W?wVQ(Y,W):nn(Y,F,C,X),Y.end(),A(W,F)},Q.apply(B,J)}jVQ.handleCallbackResponse=RM0});var kVQ=R((TVQ)=>{Object.defineProperty(TVQ,"__esModule",{value:!0});TVQ.PACKAGE_NAME=TVQ.PACKAGE_VERSION=void 0;TVQ.PACKAGE_VERSION="0.46.1";TVQ.PACKAGE_NAME="@opentelemetry/instrumentation-mongoose"});var bVQ=R((xVQ)=>{Object.defineProperty(xVQ,"__esModule",{value:!0});xVQ.MongooseInstrumentation=xVQ._STORED_PARENT_SPAN=void 0;var L9=yA(),PM0=MB(),sn=PVQ(),_VQ=NB(),vVQ=kVQ(),nL=dB(),GT=["deleteOne","deleteMany","find","findOne","estimatedDocumentCount","countDocuments","distinct","where","$where","findOneAndUpdate","findOneAndDelete","findOneAndReplace"],TM0=["remove","count","findOneAndRemove",...GT],SM0=["count","findOneAndRemove",...GT],kM0=[...GT];function yVQ(A){if(!A)return GT;else if(A.startsWith("6.")||A.startsWith("5."))return TM0;else if(A.startsWith("7."))return SM0;else return kM0}function gVQ(A){return A&&(A.startsWith("5.")||A.startsWith("6."))||!1}xVQ._STORED_PARENT_SPAN=Symbol("stored-parent-span");class hVQ extends _VQ.InstrumentationBase{constructor(A={}){super(vVQ.PACKAGE_NAME,vVQ.PACKAGE_VERSION,A)}init(){return new _VQ.InstrumentationNodeModuleDefinition("mongoose",[">=5.9.7 <9"],this.patch.bind(this),this.unpatch.bind(this))}patch(A,Q){if(this._wrap(A.Model.prototype,"save",this.patchOnModelMethods("save",Q)),A.Model.prototype.$save=A.Model.prototype.save,gVQ(Q))this._wrap(A.Model.prototype,"remove",this.patchOnModelMethods("remove",Q));return this._wrap(A.Query.prototype,"exec",this.patchQueryExec(Q)),this._wrap(A.Aggregate.prototype,"exec",this.patchAggregateExec(Q)),yVQ(Q).forEach((Y)=>{this._wrap(A.Query.prototype,Y,this.patchAndCaptureSpanContext(Y))}),this._wrap(A.Model,"aggregate",this.patchModelAggregate()),A}unpatch(A,Q){let B=yVQ(Q);if(this._unwrap(A.Model.prototype,"save"),A.Model.prototype.$save=A.Model.prototype.save,gVQ(Q))this._unwrap(A.Model.prototype,"remove");this._unwrap(A.Query.prototype,"exec"),this._unwrap(A.Aggregate.prototype,"exec"),B.forEach((Y)=>{this._unwrap(A.Query.prototype,Y)}),this._unwrap(A.Model,"aggregate")}patchAggregateExec(A){let Q=this;return(B)=>{return function(J){var C;if(Q.getConfig().requireParentSpan&&L9.trace.getSpan(L9.context.active())===void 0)return B.apply(this,arguments);let X=this[xVQ._STORED_PARENT_SPAN],G={},{dbStatementSerializer:W}=Q.getConfig();if(W)G[nL.SEMATTRS_DB_STATEMENT]=W("aggregate",{options:this.options,aggregatePipeline:this._pipeline});let F=Q._startSpan(this._model.collection,(C=this._model)===null||C===void 0?void 0:C.modelName,"aggregate",G,X);return Q._handleResponse(F,B,this,arguments,J,A)}}}patchQueryExec(A){let Q=this;return(B)=>{return function(J){if(Q.getConfig().requireParentSpan&&L9.trace.getSpan(L9.context.active())===void 0)return B.apply(this,arguments);let C=this[xVQ._STORED_PARENT_SPAN],X={},{dbStatementSerializer:G}=Q.getConfig();if(G)X[nL.SEMATTRS_DB_STATEMENT]=G(this.op,{condition:this._conditions,updates:this._update,options:this.options,fields:this._fields});let W=Q._startSpan(this.mongooseCollection,this.model.modelName,this.op,X,C);return Q._handleResponse(W,B,this,arguments,J,A)}}}patchOnModelMethods(A,Q){let B=this;return(Y)=>{return function(C,X){if(B.getConfig().requireParentSpan&&L9.trace.getSpan(L9.context.active())===void 0)return Y.apply(this,arguments);let G={document:this};if(C&&!(C instanceof Function))G.options=C;let W={},{dbStatementSerializer:F}=B.getConfig();if(F)W[nL.SEMATTRS_DB_STATEMENT]=F(A,G);let Z=B._startSpan(this.constructor.collection,this.constructor.modelName,A,W);if(C instanceof Function)X=C,C=void 0;return B._handleResponse(Z,Y,this,arguments,X,Q)}}}patchModelAggregate(){let A=this;return(Q)=>{return function(){let Y=L9.trace.getSpan(L9.context.active()),J=A._callOriginalFunction(()=>Q.apply(this,arguments));if(J)J[xVQ._STORED_PARENT_SPAN]=Y;return J}}}patchAndCaptureSpanContext(A){let Q=this;return(B)=>{return function(){return this[xVQ._STORED_PARENT_SPAN]=L9.trace.getSpan(L9.context.active()),Q._callOriginalFunction(()=>B.apply(this,arguments))}}}_startSpan(A,Q,B,Y,J){return this.tracer.startSpan(`mongoose.${Q}.${B}`,{kind:L9.SpanKind.CLIENT,attributes:Object.assign(Object.assign(Object.assign({},Y),(0,sn.getAttributesFromCollection)(A)),{[nL.SEMATTRS_DB_OPERATION]:B,[nL.SEMATTRS_DB_SYSTEM]:"mongoose"})},J?L9.trace.setSpan(L9.context.active(),J):void 0)}_handleResponse(A,Q,B,Y,J,C=void 0){let X=this;if(J instanceof Function)return X._callOriginalFunction(()=>(0,sn.handleCallbackResponse)(J,Q,B,A,Y,X.getConfig().responseHook,C));else{let G=X._callOriginalFunction(()=>Q.apply(B,Y));return(0,sn.handlePromiseResponse)(G,A,X.getConfig().responseHook,C)}}_callOriginalFunction(A){if(this.getConfig().suppressInternalInstrumentation)return L9.context.with((0,PM0.suppressTracing)(L9.context.active()),A);else return A()}}xVQ.MongooseInstrumentation=hVQ});var uVQ=R((mVQ)=>{Object.defineProperty(mVQ,"__esModule",{value:!0})});var cVQ=R((yW)=>{var _M0=yW&&yW.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),dVQ=yW&&yW.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))_M0(Q,A,B)};Object.defineProperty(yW,"__esModule",{value:!0});dVQ(bVQ(),yW);dVQ(uVQ(),yW)});var nVQ=R((iVQ)=>{Object.defineProperty(iVQ,"__esModule",{value:!0});iVQ.AttributeNames=void 0;var yM0;(function(A){A.MYSQL_VALUES="db.mysql.values"})(yM0=iVQ.AttributeNames||(iVQ.AttributeNames={}))});var oVQ=R((rVQ)=>{Object.defineProperty(rVQ,"__esModule",{value:!0});rVQ.getPoolName=rVQ.arrayStringifyHelper=rVQ.getSpanName=rVQ.getDbValues=rVQ.getDbStatement=rVQ.getConnectionAttributes=void 0;var MG=dB();function gM0(A){let{host:Q,port:B,database:Y,user:J}=hM0(A),C=parseInt(B,10);if(!isNaN(C))return{[MG.SEMATTRS_NET_PEER_NAME]:Q,[MG.SEMATTRS_NET_PEER_PORT]:C,[MG.SEMATTRS_DB_CONNECTION_STRING]:sVQ(Q,B,Y),[MG.SEMATTRS_DB_NAME]:Y,[MG.SEMATTRS_DB_USER]:J};return{[MG.SEMATTRS_NET_PEER_NAME]:Q,[MG.SEMATTRS_DB_CONNECTION_STRING]:sVQ(Q,B,Y),[MG.SEMATTRS_DB_NAME]:Y,[MG.SEMATTRS_DB_USER]:J}}rVQ.getConnectionAttributes=gM0;function hM0(A){let{host:Q,port:B,database:Y,user:J}=A&&A.connectionConfig||A||{};return{host:Q,port:B,database:Y,user:J}}function sVQ(A,Q,B){let Y=`jdbc:mysql://${A||"localhost"}`;if(typeof Q==="number")Y+=`:${Q}`;if(typeof B==="string")Y+=`/${B}`;return Y}function xM0(A){if(typeof A==="string")return A;else return A.sql}rVQ.getDbStatement=xM0;function fM0(A,Q){if(typeof A==="string")return on(Q);else return on(Q||A.values)}rVQ.getDbValues=fM0;function bM0(A){let Q=typeof A==="object"?A.sql:A,B=Q===null||Q===void 0?void 0:Q.indexOf(" ");if(typeof B==="number"&&B!==-1)return Q===null||Q===void 0?void 0:Q.substring(0,B);return Q}rVQ.getSpanName=bM0;function on(A){if(A)return`[${A.toString()}]`;return""}rVQ.arrayStringifyHelper=on;function mM0(A){let Q=A.config.connectionConfig,B="";if(B+=Q.host?`host: '${Q.host}', `:"",B+=Q.port?`port: ${Q.port}, `:"",B+=Q.database?`database: '${Q.database}', `:"",B+=Q.user?`user: '${Q.user}'`:"",!Q.user)B=B.substring(0,B.length-2);return B.trim()}rVQ.getPoolName=mM0});var AIQ=R((tVQ)=>{Object.defineProperty(tVQ,"__esModule",{value:!0});tVQ.PACKAGE_NAME=tVQ.PACKAGE_VERSION=void 0;tVQ.PACKAGE_VERSION="0.45.1";tVQ.PACKAGE_NAME="@opentelemetry/instrumentation-mysql"});var JIQ=R((BIQ)=>{Object.defineProperty(BIQ,"__esModule",{value:!0});BIQ.MySQLInstrumentation=void 0;var A8=yA(),gK=NB(),tn=dB(),nM0=nVQ(),hK=oVQ(),QIQ=AIQ();class FT extends gK.InstrumentationBase{constructor(A={}){super(QIQ.PACKAGE_NAME,QIQ.PACKAGE_VERSION,A);this._setMetricInstruments()}setMeterProvider(A){super.setMeterProvider(A),this._setMetricInstruments()}_setMetricInstruments(){this._connectionsUsage=this.meter.createUpDownCounter("db.client.connections.usage",{description:"The number of connections that are currently in state described by the state attribute.",unit:"{connection}"})}init(){return[new gK.InstrumentationNodeModuleDefinition("mysql",[">=2.0.0 <3"],(A)=>{if((0,gK.isWrapped)(A.createConnection))this._unwrap(A,"createConnection");if(this._wrap(A,"createConnection",this._patchCreateConnection()),(0,gK.isWrapped)(A.createPool))this._unwrap(A,"createPool");if(this._wrap(A,"createPool",this._patchCreatePool()),(0,gK.isWrapped)(A.createPoolCluster))this._unwrap(A,"createPoolCluster");return this._wrap(A,"createPoolCluster",this._patchCreatePoolCluster()),A},(A)=>{if(A===void 0)return;this._unwrap(A,"createConnection"),this._unwrap(A,"createPool"),this._unwrap(A,"createPoolCluster")})]}_patchCreateConnection(){return(A)=>{let Q=this;return function(Y){let J=A(...arguments);return Q._wrap(J,"query",Q._patchQuery(J)),J}}}_patchCreatePool(){return(A)=>{let Q=this;return function(Y){let J=A(...arguments);return Q._wrap(J,"query",Q._patchQuery(J)),Q._wrap(J,"getConnection",Q._patchGetConnection(J)),Q._wrap(J,"end",Q._patchPoolEnd(J)),Q._setPoolcallbacks(J,Q,""),J}}}_patchPoolEnd(A){return(Q)=>{let B=this;return function(J){let C=A._allConnections.length,X=A._freeConnections.length,G=C-X,W=(0,hK.getPoolName)(A);B._connectionsUsage.add(-G,{state:"used",name:W}),B._connectionsUsage.add(-X,{state:"idle",name:W}),Q.apply(A,arguments)}}}_patchCreatePoolCluster(){return(A)=>{let Q=this;return function(Y){let J=A(...arguments);return Q._wrap(J,"getConnection",Q._patchGetConnection(J)),Q._wrap(J,"add",Q._patchAdd(J)),J}}}_patchAdd(A){return(Q)=>{let B=this;return function(J,C){if(!B._enabled)return B._unwrap(A,"add"),Q.apply(A,arguments);Q.apply(A,arguments);let X=A._nodes;if(X){let G=typeof J==="object"?"CLUSTER::"+A._lastId:String(J),W=X[G].pool;B._setPoolcallbacks(W,B,J)}}}}_patchGetConnection(A){return(Q)=>{let B=this;return function(J,C,X){if(!B._enabled)return B._unwrap(A,"getConnection"),Q.apply(A,arguments);if(arguments.length===1&&typeof J==="function"){let G=B._getConnectionCallbackPatchFn(J);return Q.call(A,G)}if(arguments.length===2&&typeof C==="function"){let G=B._getConnectionCallbackPatchFn(C);return Q.call(A,J,G)}if(arguments.length===3&&typeof X==="function"){let G=B._getConnectionCallbackPatchFn(X);return Q.call(A,J,C,G)}return Q.apply(A,arguments)}}}_getConnectionCallbackPatchFn(A){let Q=this,B=A8.context.active();return function(Y,J){if(J){if(!(0,gK.isWrapped)(J.query))Q._wrap(J,"query",Q._patchQuery(J))}if(typeof A==="function")A8.context.with(B,A,this,Y,J)}}_patchQuery(A){return(Q)=>{let B=this;return function(Y,J,C){if(!B._enabled)return B._unwrap(A,"query"),Q.apply(A,arguments);let X=B.tracer.startSpan((0,hK.getSpanName)(Y),{kind:A8.SpanKind.CLIENT,attributes:Object.assign(Object.assign({},FT.COMMON_ATTRIBUTES),(0,hK.getConnectionAttributes)(A.config))});if(X.setAttribute(tn.SEMATTRS_DB_STATEMENT,(0,hK.getDbStatement)(Y)),B.getConfig().enhancedDatabaseReporting){let F;if(Array.isArray(J))F=J;else if(arguments[2])F=[J];X.setAttribute(nM0.AttributeNames.MYSQL_VALUES,(0,hK.getDbValues)(Y,F))}let G=Array.from(arguments).findIndex((F)=>typeof F==="function"),W=A8.context.active();if(G===-1){let F=A8.context.with(A8.trace.setSpan(A8.context.active(),X),()=>{return Q.apply(A,arguments)});return A8.context.bind(W,F),F.on("error",(Z)=>X.setStatus({code:A8.SpanStatusCode.ERROR,message:Z.message})).on("end",()=>{X.end()})}else return B._wrap(arguments,G,B._patchCallbackQuery(X,W)),A8.context.with(A8.trace.setSpan(A8.context.active(),X),()=>{return Q.apply(A,arguments)})}}}_patchCallbackQuery(A,Q){return(B)=>{return function(Y,J,C){if(Y)A.setStatus({code:A8.SpanStatusCode.ERROR,message:Y.message});return A.end(),A8.context.with(Q,()=>B(...arguments))}}}_setPoolcallbacks(A,Q,B){let Y=B||(0,hK.getPoolName)(A);A.on("connection",(J)=>{Q._connectionsUsage.add(1,{state:"idle",name:Y})}),A.on("acquire",(J)=>{Q._connectionsUsage.add(-1,{state:"idle",name:Y}),Q._connectionsUsage.add(1,{state:"used",name:Y})}),A.on("release",(J)=>{Q._connectionsUsage.add(-1,{state:"used",name:Y}),Q._connectionsUsage.add(1,{state:"idle",name:Y})})}}BIQ.MySQLInstrumentation=FT;FT.COMMON_ATTRIBUTES={[tn.SEMATTRS_DB_SYSTEM]:tn.DBSYSTEMVALUES_MYSQL}});var XIQ=R((CIQ)=>{Object.defineProperty(CIQ,"__esModule",{value:!0})});var WIQ=R((gW)=>{var sM0=gW&&gW.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),GIQ=gW&&gW.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))sM0(Q,A,B)};Object.defineProperty(gW,"__esModule",{value:!0});GIQ(JIQ(),gW);GIQ(XIQ(),gW)});var Qs=R(($IQ)=>{Object.defineProperty($IQ,"__esModule",{value:!0});$IQ.addSqlCommenterComment=void 0;var As=yA(),aM0=MB();function oM0(A){let Q=A.indexOf("--");if(Q>=0)return!0;if(A.indexOf("/*")<0)return!1;let Y=A.indexOf("*/");return Q`%${Q.charCodeAt(0).toString(16).toUpperCase()}`)}function eM0(A,Q){if(typeof Q!=="string"||Q.length===0)return Q;if(oM0(Q))return Q;let B=new aM0.W3CTraceContextPropagator,Y={};B.inject(As.trace.setSpan(As.ROOT_CONTEXT,A),Y,As.defaultTextMapSetter);let J=Object.keys(Y).sort();if(J.length===0)return Q;let C=J.map((X)=>{let G=tM0(Y[X]);return`${X}='${G}'`}).join(",");return`${Q} /*${C}*/`}$IQ.addSqlCommenterComment=eM0});var IIQ=R((KIQ)=>{Object.defineProperty(KIQ,"__esModule",{value:!0});KIQ.getConnectionPrototypeToInstrument=KIQ.once=KIQ.getSpanName=KIQ.getDbStatement=KIQ.getConnectionAttributes=void 0;var zG=dB();function Az0(A){let{host:Q,port:B,database:Y,user:J}=Qz0(A),C=parseInt(B,10);if(!isNaN(C))return{[zG.SEMATTRS_NET_PEER_NAME]:Q,[zG.SEMATTRS_NET_PEER_PORT]:C,[zG.SEMATTRS_DB_CONNECTION_STRING]:EIQ(Q,B,Y),[zG.SEMATTRS_DB_NAME]:Y,[zG.SEMATTRS_DB_USER]:J};return{[zG.SEMATTRS_NET_PEER_NAME]:Q,[zG.SEMATTRS_DB_CONNECTION_STRING]:EIQ(Q,B,Y),[zG.SEMATTRS_DB_NAME]:Y,[zG.SEMATTRS_DB_USER]:J}}KIQ.getConnectionAttributes=Az0;function Qz0(A){let{host:Q,port:B,database:Y,user:J}=A&&A.connectionConfig||A||{};return{host:Q,port:B,database:Y,user:J}}function EIQ(A,Q,B){let Y=`jdbc:mysql://${A||"localhost"}`;if(typeof Q==="number")Y+=`:${Q}`;if(typeof B==="string")Y+=`/${B}`;return Y}function Bz0(A,Q,B){if(!Q)return typeof A==="string"?A:A.sql;if(typeof A==="string")return B?Q(A,B):A;else return B||A.values?Q(A.sql,B||A.values):A.sql}KIQ.getDbStatement=Bz0;function Yz0(A){let Q=typeof A==="object"?A.sql:A,B=Q===null||Q===void 0?void 0:Q.indexOf(" ");if(typeof B==="number"&&B!==-1)return Q===null||Q===void 0?void 0:Q.substring(0,B);return Q}KIQ.getSpanName=Yz0;var Jz0=(A)=>{let Q=!1;return(...B)=>{if(Q)return;return Q=!0,A(...B)}};KIQ.once=Jz0;function Cz0(A){let Q=A.prototype,B=Object.getPrototypeOf(Q);if(typeof(B===null||B===void 0?void 0:B.query)==="function"&&typeof(B===null||B===void 0?void 0:B.execute)==="function")return B;return Q}KIQ.getConnectionPrototypeToInstrument=Cz0});var NIQ=R((HIQ)=>{Object.defineProperty(HIQ,"__esModule",{value:!0});HIQ.PACKAGE_NAME=HIQ.PACKAGE_VERSION=void 0;HIQ.PACKAGE_VERSION="0.45.2";HIQ.PACKAGE_NAME="@opentelemetry/instrumentation-mysql2"});var wIQ=R((zIQ)=>{Object.defineProperty(zIQ,"__esModule",{value:!0});zIQ.MySQL2Instrumentation=void 0;var LIQ=yA(),S$=NB(),Ys=dB(),qIQ=Qs(),xK=IIQ(),MIQ=NIQ(),Bs=[">=1.4.2 <4"];class $T extends S$.InstrumentationBase{constructor(A={}){super(MIQ.PACKAGE_NAME,MIQ.PACKAGE_VERSION,A)}init(){let A;function Q(J){if(!A&&J.format)A=J.format}let B=(J)=>{if((0,S$.isWrapped)(J.query))this._unwrap(J,"query");if(this._wrap(J,"query",this._patchQuery(A,!1)),(0,S$.isWrapped)(J.execute))this._unwrap(J,"execute");this._wrap(J,"execute",this._patchQuery(A,!0))},Y=(J)=>{this._unwrap(J,"query"),this._unwrap(J,"execute")};return[new S$.InstrumentationNodeModuleDefinition("mysql2",Bs,(J)=>{return Q(J),J},()=>{},[new S$.InstrumentationNodeModuleFile("mysql2/promise.js",Bs,(J)=>{return Q(J),J},()=>{}),new S$.InstrumentationNodeModuleFile("mysql2/lib/connection.js",Bs,(J)=>{let C=(0,xK.getConnectionPrototypeToInstrument)(J);return B(C),J},(J)=>{if(J===void 0)return;let C=(0,xK.getConnectionPrototypeToInstrument)(J);Y(C)})])]}_patchQuery(A,Q){return(B)=>{let Y=this;return function(J,C,X){let G;if(Array.isArray(C))G=C;else if(arguments[2])G=[C];let W=Y.tracer.startSpan((0,xK.getSpanName)(J),{kind:LIQ.SpanKind.CLIENT,attributes:Object.assign(Object.assign(Object.assign({},$T.COMMON_ATTRIBUTES),(0,xK.getConnectionAttributes)(this.config)),{[Ys.SEMATTRS_DB_STATEMENT]:(0,xK.getDbStatement)(J,A,G)})});if(!Q&&Y.getConfig().addSqlCommenterCommentToQueries)arguments[0]=J=typeof J==="string"?(0,qIQ.addSqlCommenterComment)(W,J):Object.assign(J,{sql:(0,qIQ.addSqlCommenterComment)(W,J.sql)});let F=(0,xK.once)((Z,U)=>{if(Z)W.setStatus({code:LIQ.SpanStatusCode.ERROR,message:Z.message});else{let{responseHook:$}=Y.getConfig();if(typeof $==="function")(0,S$.safeExecuteInTheMiddle)(()=>{$(W,{queryResults:U})},(E)=>{if(E)Y._diag.warn("Failed executing responseHook",E)},!0)}W.end()});if(arguments.length===1){if(typeof J.onResult==="function")Y._wrap(J,"onResult",Y._patchCallbackQuery(F));let Z=B.apply(this,arguments);return Z.once("error",(U)=>{F(U)}).once("result",(U)=>{F(void 0,U)}),Z}if(typeof arguments[1]==="function")Y._wrap(arguments,1,Y._patchCallbackQuery(F));else if(typeof arguments[2]==="function")Y._wrap(arguments,2,Y._patchCallbackQuery(F));return B.apply(this,arguments)}}}_patchCallbackQuery(A){return(Q)=>{return function(B,Y,J){return A(B,Y),Q(...arguments)}}}}zIQ.MySQL2Instrumentation=$T;$T.COMMON_ATTRIBUTES={[Ys.SEMATTRS_DB_SYSTEM]:Ys.DBSYSTEMVALUES_MYSQL}});var OIQ=R((jIQ)=>{Object.defineProperty(jIQ,"__esModule",{value:!0})});var TIQ=R((hW)=>{var $z0=hW&&hW.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),PIQ=hW&&hW.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))$z0(Q,A,B)};Object.defineProperty(hW,"__esModule",{value:!0});PIQ(wIQ(),hW);PIQ(OIQ(),hW)});var yIQ=R((_IQ)=>{Object.defineProperty(_IQ,"__esModule",{value:!0});_IQ.endSpan=void 0;var Ez0=yA(),Kz0=(A,Q)=>{if(Q)A.recordException(Q),A.setStatus({code:Ez0.SpanStatusCode.ERROR,message:Q.message});A.end()};_IQ.endSpan=Kz0});var Cs=R((gIQ)=>{Object.defineProperty(gIQ,"__esModule",{value:!0});gIQ.defaultDbStatementSerializer=void 0;var Vz0=[{regex:/^ECHO/i,args:0},{regex:/^(LPUSH|MSET|PFA|PUBLISH|RPUSH|SADD|SET|SPUBLISH|XADD|ZADD)/i,args:1},{regex:/^(HSET|HMSET|LSET|LINSERT)/i,args:2},{regex:/^(ACL|BIT|B[LRZ]|CLIENT|CLUSTER|CONFIG|COMMAND|DECR|DEL|EVAL|EX|FUNCTION|GEO|GET|HINCR|HMGET|HSCAN|INCR|L[TRLM]|MEMORY|P[EFISTU]|RPOP|S[CDIMORSU]|XACK|X[CDGILPRT]|Z[CDILMPRS])/i,args:-1}],Iz0=(A,Q)=>{var B,Y;if(Array.isArray(Q)&&Q.length){let J=(Y=(B=Vz0.find(({regex:X})=>{return X.test(A)}))===null||B===void 0?void 0:B.args)!==null&&Y!==void 0?Y:0,C=J>=0?Q.slice(0,J):Q;if(Q.length>C.length)C.push(`[${Q.length-J} other arguments]`);return`${A} ${C.join(" ")}`}return A};gIQ.defaultDbStatementSerializer=Iz0});var bIQ=R((xIQ)=>{Object.defineProperty(xIQ,"__esModule",{value:!0});xIQ.PACKAGE_NAME=xIQ.PACKAGE_VERSION=void 0;xIQ.PACKAGE_VERSION="0.47.1";xIQ.PACKAGE_NAME="@opentelemetry/instrumentation-ioredis"});var iIQ=R((lIQ)=>{Object.defineProperty(lIQ,"__esModule",{value:!0});lIQ.IORedisInstrumentation=void 0;var xW=yA(),ET=NB(),AC=dB(),mIQ=NB(),rL=yIQ(),Dz0=Cs(),uIQ=bIQ(),dIQ={requireParentSpan:!0};class cIQ extends ET.InstrumentationBase{constructor(A={}){super(uIQ.PACKAGE_NAME,uIQ.PACKAGE_VERSION,Object.assign(Object.assign({},dIQ),A))}setConfig(A={}){super.setConfig(Object.assign(Object.assign({},dIQ),A))}init(){return[new ET.InstrumentationNodeModuleDefinition("ioredis",[">=2.0.0 <6"],(A,Q)=>{let B=A[Symbol.toStringTag]==="Module"?A.default:A;if((0,ET.isWrapped)(B.prototype.sendCommand))this._unwrap(B.prototype,"sendCommand");if(this._wrap(B.prototype,"sendCommand",this._patchSendCommand(Q)),(0,ET.isWrapped)(B.prototype.connect))this._unwrap(B.prototype,"connect");return this._wrap(B.prototype,"connect",this._patchConnection()),A},(A)=>{if(A===void 0)return;let Q=A[Symbol.toStringTag]==="Module"?A.default:A;this._unwrap(Q.prototype,"sendCommand"),this._unwrap(Q.prototype,"connect")})]}_patchSendCommand(A){return(Q)=>{return this._traceSendCommand(Q,A)}}_patchConnection(){return(A)=>{return this._traceConnection(A)}}_traceSendCommand(A,Q){let B=this;return function(Y){if(arguments.length<1||typeof Y!=="object")return A.apply(this,arguments);let J=B.getConfig(),C=J.dbStatementSerializer||Dz0.defaultDbStatementSerializer,X=xW.trace.getSpan(xW.context.active())===void 0;if(J.requireParentSpan===!0&&X)return A.apply(this,arguments);let G=B.tracer.startSpan(Y.name,{kind:xW.SpanKind.CLIENT,attributes:{[AC.SEMATTRS_DB_SYSTEM]:AC.DBSYSTEMVALUES_REDIS,[AC.SEMATTRS_DB_STATEMENT]:C(Y.name,Y.args)}}),{requestHook:W}=J;if(W)(0,mIQ.safeExecuteInTheMiddle)(()=>W(G,{moduleVersion:Q,cmdName:Y.name,cmdArgs:Y.args}),(U)=>{if(U)xW.diag.error("ioredis instrumentation: request hook failed",U)},!0);let{host:F,port:Z}=this.options;G.setAttributes({[AC.SEMATTRS_NET_PEER_NAME]:F,[AC.SEMATTRS_NET_PEER_PORT]:Z,[AC.SEMATTRS_DB_CONNECTION_STRING]:`redis://${F}:${Z}`});try{let U=A.apply(this,arguments),$=Y.resolve;Y.resolve=function(K){(0,mIQ.safeExecuteInTheMiddle)(()=>{var I;return(I=J.responseHook)===null||I===void 0?void 0:I.call(J,G,Y.name,Y.args,K)},(I)=>{if(I)xW.diag.error("ioredis instrumentation: response hook failed",I)},!0),(0,rL.endSpan)(G,null),$(K)};let E=Y.reject;return Y.reject=function(K){(0,rL.endSpan)(G,K),E(K)},U}catch(U){throw(0,rL.endSpan)(G,U),U}}}_traceConnection(A){let Q=this;return function(){let B=xW.trace.getSpan(xW.context.active())===void 0;if(Q.getConfig().requireParentSpan===!0&&B)return A.apply(this,arguments);let Y=Q.tracer.startSpan("connect",{kind:xW.SpanKind.CLIENT,attributes:{[AC.SEMATTRS_DB_SYSTEM]:AC.DBSYSTEMVALUES_REDIS,[AC.SEMATTRS_DB_STATEMENT]:"connect"}}),{host:J,port:C}=this.options;Y.setAttributes({[AC.SEMATTRS_NET_PEER_NAME]:J,[AC.SEMATTRS_NET_PEER_PORT]:C,[AC.SEMATTRS_DB_CONNECTION_STRING]:`redis://${J}:${C}`});try{let X=A.apply(this,arguments);return(0,rL.endSpan)(Y,null),X}catch(X){throw(0,rL.endSpan)(Y,X),X}}}}lIQ.IORedisInstrumentation=cIQ});var sIQ=R((nIQ)=>{Object.defineProperty(nIQ,"__esModule",{value:!0})});var aIQ=R((fW)=>{var Nz0=fW&&fW.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),rIQ=fW&&fW.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))Nz0(Q,A,B)};Object.defineProperty(fW,"__esModule",{value:!0});rIQ(iIQ(),fW);rIQ(sIQ(),fW)});var eIQ=R((oIQ)=>{Object.defineProperty(oIQ,"__esModule",{value:!0});oIQ.getClientAttributes=void 0;var aL=dB();function Lz0(A,Q){var B,Y;return{[aL.SEMATTRS_DB_SYSTEM]:aL.DBSYSTEMVALUES_REDIS,[aL.SEMATTRS_NET_PEER_NAME]:(B=Q===null||Q===void 0?void 0:Q.socket)===null||B===void 0?void 0:B.host,[aL.SEMATTRS_NET_PEER_PORT]:(Y=Q===null||Q===void 0?void 0:Q.socket)===null||Y===void 0?void 0:Y.port,[aL.SEMATTRS_DB_CONNECTION_STRING]:qz0(A,Q===null||Q===void 0?void 0:Q.url)}}oIQ.getClientAttributes=Lz0;function qz0(A,Q){if(typeof Q!=="string"||!Q)return;try{let B=new URL(Q);return B.searchParams.delete("user_pwd"),B.username="",B.password="",B.href}catch(B){A.error("failed to sanitize redis connection url",B)}return}});var BHQ=R((AHQ)=>{Object.defineProperty(AHQ,"__esModule",{value:!0});AHQ.PACKAGE_NAME=AHQ.PACKAGE_VERSION=void 0;AHQ.PACKAGE_VERSION="0.46.1";AHQ.PACKAGE_NAME="@opentelemetry/instrumentation-redis-4"});var FHQ=R((GHQ)=>{Object.defineProperty(GHQ,"__esModule",{value:!0});GHQ.RedisInstrumentation=void 0;var QC=yA(),aY=NB(),YHQ=eIQ(),zz0=Cs(),JHQ=BHQ(),Rz0=dB(),oL=Symbol("opentelemetry.instrumentation.redis.open_spans"),CHQ=Symbol("opentelemetry.instrumentation.redis.multi_command_options"),XHQ={requireParentSpan:!1};class tL extends aY.InstrumentationBase{constructor(A={}){super(JHQ.PACKAGE_NAME,JHQ.PACKAGE_VERSION,Object.assign(Object.assign({},XHQ),A))}setConfig(A={}){super.setConfig(Object.assign(Object.assign({},XHQ),A))}init(){return[this._getInstrumentationNodeModuleDefinition("@redis/client"),this._getInstrumentationNodeModuleDefinition("@node-redis/client")]}_getInstrumentationNodeModuleDefinition(A){let Q=new aY.InstrumentationNodeModuleFile(`${A}/dist/lib/commander.js`,["^1.0.0"],(J,C)=>{let X=J.transformCommandArguments;if(!X)return this._diag.error("internal instrumentation error, missing transformCommandArguments function"),J;let G=(C===null||C===void 0?void 0:C.startsWith("1.0."))?"extendWithCommands":"attachCommands";if((0,aY.isWrapped)(J===null||J===void 0?void 0:J[G]))this._unwrap(J,G);return this._wrap(J,G,this._getPatchExtendWithCommands(X)),J},(J)=>{if((0,aY.isWrapped)(J===null||J===void 0?void 0:J.extendWithCommands))this._unwrap(J,"extendWithCommands");if((0,aY.isWrapped)(J===null||J===void 0?void 0:J.attachCommands))this._unwrap(J,"attachCommands")}),B=new aY.InstrumentationNodeModuleFile(`${A}/dist/lib/client/multi-command.js`,["^1.0.0"],(J)=>{var C;let X=(C=J===null||J===void 0?void 0:J.default)===null||C===void 0?void 0:C.prototype;if((0,aY.isWrapped)(X===null||X===void 0?void 0:X.exec))this._unwrap(X,"exec");if(this._wrap(X,"exec",this._getPatchMultiCommandsExec()),(0,aY.isWrapped)(X===null||X===void 0?void 0:X.addCommand))this._unwrap(X,"addCommand");return this._wrap(X,"addCommand",this._getPatchMultiCommandsAddCommand()),J},(J)=>{var C;let X=(C=J===null||J===void 0?void 0:J.default)===null||C===void 0?void 0:C.prototype;if((0,aY.isWrapped)(X===null||X===void 0?void 0:X.exec))this._unwrap(X,"exec");if((0,aY.isWrapped)(X===null||X===void 0?void 0:X.addCommand))this._unwrap(X,"addCommand")}),Y=new aY.InstrumentationNodeModuleFile(`${A}/dist/lib/client/index.js`,["^1.0.0"],(J)=>{var C;let X=(C=J===null||J===void 0?void 0:J.default)===null||C===void 0?void 0:C.prototype;if(X===null||X===void 0?void 0:X.multi){if((0,aY.isWrapped)(X===null||X===void 0?void 0:X.multi))this._unwrap(X,"multi");this._wrap(X,"multi",this._getPatchRedisClientMulti())}if(X===null||X===void 0?void 0:X.MULTI){if((0,aY.isWrapped)(X===null||X===void 0?void 0:X.MULTI))this._unwrap(X,"MULTI");this._wrap(X,"MULTI",this._getPatchRedisClientMulti())}if((0,aY.isWrapped)(X===null||X===void 0?void 0:X.sendCommand))this._unwrap(X,"sendCommand");return this._wrap(X,"sendCommand",this._getPatchRedisClientSendCommand()),this._wrap(X,"connect",this._getPatchedClientConnect()),J},(J)=>{var C;let X=(C=J===null||J===void 0?void 0:J.default)===null||C===void 0?void 0:C.prototype;if((0,aY.isWrapped)(X===null||X===void 0?void 0:X.multi))this._unwrap(X,"multi");if((0,aY.isWrapped)(X===null||X===void 0?void 0:X.MULTI))this._unwrap(X,"MULTI");if((0,aY.isWrapped)(X===null||X===void 0?void 0:X.sendCommand))this._unwrap(X,"sendCommand")});return new aY.InstrumentationNodeModuleDefinition(A,["^1.0.0"],(J)=>{return J},()=>{},[Q,B,Y])}_getPatchExtendWithCommands(A){let Q=this;return function(Y){return function(C){var X;if(((X=C===null||C===void 0?void 0:C.BaseClass)===null||X===void 0?void 0:X.name)!=="RedisClient")return Y.apply(this,arguments);let G=C.executor;return C.executor=function(W,F){let Z=A(W,F).args;return Q._traceClientCommand(G,this,arguments,Z)},Y.apply(this,arguments)}}}_getPatchMultiCommandsExec(){let A=this;return function(B){return function(){let J=B.apply(this,arguments);if(typeof(J===null||J===void 0?void 0:J.then)!=="function")return A._diag.error("got non promise result when patching RedisClientMultiCommand.exec"),J;return J.then((C)=>{let X=this[oL];return A._endSpansWithRedisReplies(X,C),C}).catch((C)=>{let X=this[oL];if(!X)A._diag.error("cannot find open spans to end for redis multi command");else{let G=C.constructor.name==="MultiErrorReply"?C.replies:Array(X.length).fill(C);A._endSpansWithRedisReplies(X,G)}return Promise.reject(C)})}}}_getPatchMultiCommandsAddCommand(){let A=this;return function(B){return function(J){return A._traceClientCommand(B,this,arguments,J)}}}_getPatchRedisClientMulti(){return function(Q){return function(){let Y=Q.apply(this,arguments);return Y[CHQ]=this.options,Y}}}_getPatchRedisClientSendCommand(){let A=this;return function(B){return function(J){return A._traceClientCommand(B,this,arguments,J)}}}_getPatchedClientConnect(){let A=this;return function(B){return function(){let J=this.options,C=(0,YHQ.getClientAttributes)(A._diag,J),X=A.tracer.startSpan(`${tL.COMPONENT}-connect`,{kind:QC.SpanKind.CLIENT,attributes:C});return QC.context.with(QC.trace.setSpan(QC.context.active(),X),()=>{return B.apply(this)}).then((W)=>{return X.end(),W}).catch((W)=>{return X.recordException(W),X.setStatus({code:QC.SpanStatusCode.ERROR,message:W.message}),X.end(),Promise.reject(W)})}}}_traceClientCommand(A,Q,B,Y){if(QC.trace.getSpan(QC.context.active())===void 0&&this.getConfig().requireParentSpan)return A.apply(Q,B);let C=Q.options||Q[CHQ],X=Y[0],G=Y.slice(1),W=this.getConfig().dbStatementSerializer||zz0.defaultDbStatementSerializer,F=(0,YHQ.getClientAttributes)(this._diag,C);try{let $=W(X,G);if($!=null)F[Rz0.SEMATTRS_DB_STATEMENT]=$}catch($){this._diag.error("dbStatementSerializer throw an exception",$,{commandName:X})}let Z=this.tracer.startSpan(`${tL.COMPONENT}-${X}`,{kind:QC.SpanKind.CLIENT,attributes:F}),U=QC.context.with(QC.trace.setSpan(QC.context.active(),Z),()=>{return A.apply(Q,B)});if(typeof(U===null||U===void 0?void 0:U.then)==="function")U.then(($)=>{this._endSpanWithResponse(Z,X,G,$,void 0)},($)=>{this._endSpanWithResponse(Z,X,G,null,$)});else{let $=U;$[oL]=$[oL]||[],$[oL].push({span:Z,commandName:X,commandArgs:G})}return U}_endSpansWithRedisReplies(A,Q){if(!A)return this._diag.error("cannot find open spans to end for redis multi command");if(Q.length!==A.length)return this._diag.error("number of multi command spans does not match response from redis");for(let B=0;B{Object.defineProperty(ZHQ,"__esModule",{value:!0})});var EHQ=R((bW)=>{var wz0=bW&&bW.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),UHQ=bW&&bW.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))wz0(Q,A,B)};Object.defineProperty(bW,"__esModule",{value:!0});UHQ(FHQ(),bW);UHQ($HQ(),bW)});var RHQ=R((MHQ)=>{Object.defineProperty(MHQ,"__esModule",{value:!0});MHQ.EVENT_LISTENERS_SET=void 0;MHQ.EVENT_LISTENERS_SET=Symbol("opentelemetry.instrumentation.pg.eventListenersSet")});var $s=R((wHQ)=>{Object.defineProperty(wHQ,"__esModule",{value:!0});wHQ.AttributeNames=void 0;var _z0;(function(A){A.PG_VALUES="db.postgresql.values",A.PG_PLAN="db.postgresql.plan",A.IDLE_TIMEOUT_MILLIS="db.postgresql.idle.timeout.millis",A.MAX_CLIENT="db.postgresql.max.client"})(_z0=wHQ.AttributeNames||(wHQ.AttributeNames={}))});var Us=R((jHQ)=>{Object.defineProperty(jHQ,"__esModule",{value:!0});jHQ.METRIC_DB_CLIENT_OPERATION_DURATION=jHQ.METRIC_DB_CLIENT_CONNECTION_PENDING_REQUESTS=jHQ.METRIC_DB_CLIENT_CONNECTION_COUNT=jHQ.DB_CLIENT_CONNECTION_STATE_VALUE_IDLE=jHQ.DB_CLIENT_CONNECTION_STATE_VALUE_USED=jHQ.ATTR_DB_OPERATION_NAME=jHQ.ATTR_DB_NAMESPACE=jHQ.ATTR_DB_CLIENT_CONNECTION_STATE=jHQ.ATTR_DB_CLIENT_CONNECTION_POOL_NAME=void 0;jHQ.ATTR_DB_CLIENT_CONNECTION_POOL_NAME="db.client.connection.pool.name";jHQ.ATTR_DB_CLIENT_CONNECTION_STATE="db.client.connection.state";jHQ.ATTR_DB_NAMESPACE="db.namespace";jHQ.ATTR_DB_OPERATION_NAME="db.operation.name";jHQ.DB_CLIENT_CONNECTION_STATE_VALUE_USED="used";jHQ.DB_CLIENT_CONNECTION_STATE_VALUE_IDLE="idle";jHQ.METRIC_DB_CLIENT_CONNECTION_COUNT="db.client.connection.count";jHQ.METRIC_DB_CLIENT_CONNECTION_PENDING_REQUESTS="db.client.connection.pending_requests";jHQ.METRIC_DB_CLIENT_OPERATION_DURATION="db.client.operation.duration"});var Ks=R((PHQ)=>{Object.defineProperty(PHQ,"__esModule",{value:!0});PHQ.SpanNames=void 0;var uz0;(function(A){A.QUERY_PREFIX="pg.query",A.CONNECT="pg.connect",A.POOL_CONNECT="pg-pool.connect"})(uz0=PHQ.SpanNames||(PHQ.SpanNames={}))});var xHQ=R((gHQ)=>{Object.defineProperty(gHQ,"__esModule",{value:!0});gHQ.isObjectWithTextString=gHQ.getErrorMessage=gHQ.patchClientConnectCallback=gHQ.patchCallbackPGPool=gHQ.updateCounter=gHQ.getPoolName=gHQ.patchCallback=gHQ.handleExecutionResult=gHQ.handleConfigQuery=gHQ.shouldSkipInstrumentation=gHQ.getSemanticAttributesFromPool=gHQ.getSemanticAttributesFromConnection=gHQ.getConnectionString=gHQ.parseNormalizedOperationName=gHQ.getQuerySpanName=void 0;var mW=yA(),VT=$s(),xJ=dB(),k$=Us(),dz0=NB(),THQ=Ks();function SHQ(A,Q){if(!Q)return THQ.SpanNames.QUERY_PREFIX;let B=typeof Q.name==="string"&&Q.name?Q.name:kHQ(Q.text);return`${THQ.SpanNames.QUERY_PREFIX}:${B}${A?` ${A}`:""}`}gHQ.getQuerySpanName=SHQ;function kHQ(A){let Q=A.indexOf(" "),B=Q===-1?A:A.slice(0,Q);return B=B.toUpperCase(),B.endsWith(";")?B.slice(0,-1):B}gHQ.parseNormalizedOperationName=kHQ;function Vs(A){let Q=A.host||"localhost",B=A.port||5432,Y=A.database||"";return`postgresql://${Q}:${B}/${Y}`}gHQ.getConnectionString=Vs;function _HQ(A){if(Number.isInteger(A))return A;return}function vHQ(A){return{[xJ.SEMATTRS_DB_SYSTEM]:xJ.DBSYSTEMVALUES_POSTGRESQL,[xJ.SEMATTRS_DB_NAME]:A.database,[xJ.SEMATTRS_DB_CONNECTION_STRING]:Vs(A),[xJ.SEMATTRS_NET_PEER_NAME]:A.host,[xJ.SEMATTRS_NET_PEER_PORT]:_HQ(A.port),[xJ.SEMATTRS_DB_USER]:A.user}}gHQ.getSemanticAttributesFromConnection=vHQ;function cz0(A){return{[xJ.SEMATTRS_DB_SYSTEM]:xJ.DBSYSTEMVALUES_POSTGRESQL,[xJ.SEMATTRS_DB_NAME]:A.database,[xJ.SEMATTRS_DB_CONNECTION_STRING]:Vs(A),[xJ.SEMATTRS_NET_PEER_NAME]:A.host,[xJ.SEMATTRS_NET_PEER_PORT]:_HQ(A.port),[xJ.SEMATTRS_DB_USER]:A.user,[VT.AttributeNames.IDLE_TIMEOUT_MILLIS]:A.idleTimeoutMillis,[VT.AttributeNames.MAX_CLIENT]:A.maxClient}}gHQ.getSemanticAttributesFromPool=cz0;function lz0(A){return A.requireParentSpan===!0&&mW.trace.getSpan(mW.context.active())===void 0}gHQ.shouldSkipInstrumentation=lz0;function pz0(A,Q,B){let{connectionParameters:Y}=this,J=Y.database,C=SHQ(J,B),X=A.startSpan(C,{kind:mW.SpanKind.CLIENT,attributes:vHQ(Y)});if(!B)return X;if(B.text)X.setAttribute(xJ.SEMATTRS_DB_STATEMENT,B.text);if(Q.enhancedDatabaseReporting&&Array.isArray(B.values))try{let G=B.values.map((W)=>{if(W==null)return"null";else if(W instanceof Buffer)return W.toString();else if(typeof W==="object"){if(typeof W.toPostgres==="function")return W.toPostgres();return JSON.stringify(W)}else return W.toString()});X.setAttribute(VT.AttributeNames.PG_VALUES,G)}catch(G){mW.diag.error("failed to stringify ",B.values,G)}if(typeof B.name==="string")X.setAttribute(VT.AttributeNames.PG_PLAN,B.name);return X}gHQ.handleConfigQuery=pz0;function yHQ(A,Q,B){if(typeof A.responseHook==="function")(0,dz0.safeExecuteInTheMiddle)(()=>{A.responseHook(Q,{data:B})},(Y)=>{if(Y)mW.diag.error("Error running response hook",Y)},!0)}gHQ.handleExecutionResult=yHQ;function iz0(A,Q,B,Y,J){return function(X,G){if(X){if(Object.prototype.hasOwnProperty.call(X,"code"))Y[xJ.ATTR_ERROR_TYPE]=X.code;Q.setStatus({code:mW.SpanStatusCode.ERROR,message:X.message})}else yHQ(A,Q,G);J(),Q.end(),B.call(this,X,G)}}gHQ.patchCallback=iz0;function nz0(A){let Q="";return Q+=((A===null||A===void 0?void 0:A.host)?`${A.host}`:"unknown_host")+":",Q+=((A===null||A===void 0?void 0:A.port)?`${A.port}`:"unknown_port")+"/",Q+=(A===null||A===void 0?void 0:A.database)?`${A.database}`:"unknown_database",Q.trim()}gHQ.getPoolName=nz0;function sz0(A,Q,B,Y,J){let{totalCount:C,waitingCount:X,idleCount:G}=Q,W=C-G;return B.add(W-J.used,{[k$.ATTR_DB_CLIENT_CONNECTION_STATE]:k$.DB_CLIENT_CONNECTION_STATE_VALUE_USED,[k$.ATTR_DB_CLIENT_CONNECTION_POOL_NAME]:A}),B.add(G-J.idle,{[k$.ATTR_DB_CLIENT_CONNECTION_STATE]:k$.DB_CLIENT_CONNECTION_STATE_VALUE_IDLE,[k$.ATTR_DB_CLIENT_CONNECTION_POOL_NAME]:A}),Y.add(X-J.pending,{[k$.ATTR_DB_CLIENT_CONNECTION_POOL_NAME]:A}),{used:W,idle:G,pending:X}}gHQ.updateCounter=sz0;function rz0(A,Q){return function(Y,J,C){if(Y)A.setStatus({code:mW.SpanStatusCode.ERROR,message:Y.message});A.end(),Q.call(this,Y,J,C)}}gHQ.patchCallbackPGPool=rz0;function az0(A,Q){return function(Y){if(Y)A.setStatus({code:mW.SpanStatusCode.ERROR,message:Y.message});A.end(),Q.apply(this,arguments)}}gHQ.patchClientConnectCallback=az0;function oz0(A){return typeof A==="object"&&A!==null&&"message"in A?String(A.message):void 0}gHQ.getErrorMessage=oz0;function tz0(A){var Q;return typeof A==="object"&&typeof((Q=A)===null||Q===void 0?void 0:Q.text)==="string"}gHQ.isObjectWithTextString=tz0});var mHQ=R((fHQ)=>{Object.defineProperty(fHQ,"__esModule",{value:!0});fHQ.PACKAGE_NAME=fHQ.PACKAGE_VERSION=void 0;fHQ.PACKAGE_VERSION="0.51.1";fHQ.PACKAGE_NAME="@opentelemetry/instrumentation-pg"});var rHQ=R((nHQ)=>{Object.defineProperty(nHQ,"__esModule",{value:!0});nHQ.PgInstrumentation=void 0;var BC=NB(),rB=yA(),uHQ=RHQ(),wY=xHQ(),dHQ=Qs(),cHQ=mHQ(),lHQ=Ks(),IT=MB(),uW=dB(),_$=Us();function HT(A){return A[Symbol.toStringTag]==="Module"?A.default:A}class iHQ extends BC.InstrumentationBase{constructor(A={}){super(cHQ.PACKAGE_NAME,cHQ.PACKAGE_VERSION,A);this._connectionsCounter={used:0,idle:0,pending:0}}_updateMetricInstruments(){this._operationDuration=this.meter.createHistogram(_$.METRIC_DB_CLIENT_OPERATION_DURATION,{description:"Duration of database client operations.",unit:"s",valueType:rB.ValueType.DOUBLE,advice:{explicitBucketBoundaries:[0.001,0.005,0.01,0.05,0.1,0.5,1,5,10]}}),this._connectionsCounter={idle:0,pending:0,used:0},this._connectionsCount=this.meter.createUpDownCounter(_$.METRIC_DB_CLIENT_CONNECTION_COUNT,{description:"The number of connections that are currently in state described by the state attribute.",unit:"{connection}"}),this._connectionPendingRequests=this.meter.createUpDownCounter(_$.METRIC_DB_CLIENT_CONNECTION_PENDING_REQUESTS,{description:"The number of current pending requests for an open connection.",unit:"{connection}"})}init(){let A=[">=8.0.3 <9"],Q=new BC.InstrumentationNodeModuleFile("pg/lib/native/client.js",A,this._patchPgClient.bind(this),this._unpatchPgClient.bind(this)),B=new BC.InstrumentationNodeModuleFile("pg/lib/client.js",A,this._patchPgClient.bind(this),this._unpatchPgClient.bind(this)),Y=new BC.InstrumentationNodeModuleDefinition("pg",A,(C)=>{let X=HT(C);return this._patchPgClient(X.Client),C},(C)=>{let X=HT(C);return this._unpatchPgClient(X.Client),C},[B,Q]),J=new BC.InstrumentationNodeModuleDefinition("pg-pool",[">=2.0.0 <4"],(C)=>{if((0,BC.isWrapped)(C.prototype.connect))this._unwrap(C.prototype,"connect");return this._wrap(C.prototype,"connect",this._getPoolConnectPatch()),C},(C)=>{if((0,BC.isWrapped)(C.prototype.connect))this._unwrap(C.prototype,"connect")});return[Y,J]}_patchPgClient(A){if(!A)return;let Q=HT(A);if((0,BC.isWrapped)(Q.prototype.query))this._unwrap(Q.prototype,"query");if((0,BC.isWrapped)(Q.prototype.connect))this._unwrap(Q.prototype,"connect");return this._wrap(Q.prototype,"query",this._getClientQueryPatch()),this._wrap(Q.prototype,"connect",this._getClientConnectPatch()),A}_unpatchPgClient(A){let Q=HT(A);if((0,BC.isWrapped)(Q.prototype.query))this._unwrap(Q.prototype,"query");if((0,BC.isWrapped)(Q.prototype.connect))this._unwrap(Q.prototype,"connect");return A}_getClientConnectPatch(){let A=this;return(Q)=>{return function(Y){if(wY.shouldSkipInstrumentation(A.getConfig()))return Q.call(this,Y);let J=A.tracer.startSpan(lHQ.SpanNames.CONNECT,{kind:rB.SpanKind.CLIENT,attributes:wY.getSemanticAttributesFromConnection(this)});if(Y){let X=rB.trace.getSpan(rB.context.active());if(Y=wY.patchClientConnectCallback(J,Y),X)Y=rB.context.bind(rB.context.active(),Y)}let C=rB.context.with(rB.trace.setSpan(rB.context.active(),J),()=>{return Q.call(this,Y)});return pHQ(J,C)}}}recordOperationDuration(A,Q){let B={};[uW.SEMATTRS_DB_SYSTEM,_$.ATTR_DB_NAMESPACE,uW.ATTR_ERROR_TYPE,uW.ATTR_SERVER_PORT,uW.ATTR_SERVER_ADDRESS,_$.ATTR_DB_OPERATION_NAME].forEach((C)=>{if(C in A)B[C]=A[C]});let J=(0,IT.hrTimeToMilliseconds)((0,IT.hrTimeDuration)(Q,(0,IT.hrTime)()))/1000;this._operationDuration.record(J,B)}_getClientQueryPatch(){let A=this;return(Q)=>{return this._diag.debug("Patching pg.Client.prototype.query"),function(...Y){if(wY.shouldSkipInstrumentation(A.getConfig()))return Q.apply(this,Y);let J=(0,IT.hrTime)(),C=Y[0],X=typeof C==="string",G=wY.isObjectWithTextString(C),W=X?{text:C,values:Array.isArray(Y[1])?Y[1]:void 0}:G?C:void 0,F={[uW.SEMATTRS_DB_SYSTEM]:uW.DBSYSTEMVALUES_POSTGRESQL,[_$.ATTR_DB_NAMESPACE]:this.database,[uW.ATTR_SERVER_PORT]:this.connectionParameters.port,[uW.ATTR_SERVER_ADDRESS]:this.connectionParameters.host};if(W===null||W===void 0?void 0:W.text)F[_$.ATTR_DB_OPERATION_NAME]=wY.parseNormalizedOperationName(W===null||W===void 0?void 0:W.text);let Z=()=>{A.recordOperationDuration(F,J)},U=A.getConfig(),$=wY.handleConfigQuery.call(this,A.tracer,U,W);if(U.addSqlCommenterCommentToQueries){if(X)Y[0]=(0,dHQ.addSqlCommenterComment)($,C);else if(G&&!("name"in C))Y[0]=Object.assign(Object.assign({},C),{text:(0,dHQ.addSqlCommenterComment)($,C.text)})}if(Y.length>0){let I=rB.trace.getSpan(rB.context.active());if(typeof Y[Y.length-1]==="function"){if(Y[Y.length-1]=wY.patchCallback(U,$,Y[Y.length-1],F,Z),I)Y[Y.length-1]=rB.context.bind(rB.context.active(),Y[Y.length-1])}else if(typeof(W===null||W===void 0?void 0:W.callback)==="function"){let V=wY.patchCallback(A.getConfig(),$,W.callback,F,Z);if(I)V=rB.context.bind(rB.context.active(),V);Y[0].callback=V}}let{requestHook:E}=U;if(typeof E==="function"&&W)(0,BC.safeExecuteInTheMiddle)(()=>{let{database:I,host:V,port:H,user:D}=this.connectionParameters;E($,{connection:{database:I,host:V,port:H,user:D},query:{text:W.text,values:W.values,name:W.name}})},(I)=>{if(I)A._diag.error("Error running query hook",I)},!0);let K;try{K=Q.apply(this,Y)}catch(I){throw $.setStatus({code:rB.SpanStatusCode.ERROR,message:wY.getErrorMessage(I)}),$.end(),I}if(K instanceof Promise)return K.then((I)=>{return new Promise((V)=>{wY.handleExecutionResult(A.getConfig(),$,I),Z(),$.end(),V(I)})}).catch((I)=>{return new Promise((V,H)=>{$.setStatus({code:rB.SpanStatusCode.ERROR,message:I.message}),Z(),$.end(),H(I)})});return K}}}_setPoolConnectEventListeners(A){if(A[uHQ.EVENT_LISTENERS_SET])return;let Q=wY.getPoolName(A.options);A.on("connect",()=>{this._connectionsCounter=wY.updateCounter(Q,A,this._connectionsCount,this._connectionPendingRequests,this._connectionsCounter)}),A.on("acquire",()=>{this._connectionsCounter=wY.updateCounter(Q,A,this._connectionsCount,this._connectionPendingRequests,this._connectionsCounter)}),A.on("remove",()=>{this._connectionsCounter=wY.updateCounter(Q,A,this._connectionsCount,this._connectionPendingRequests,this._connectionsCounter)}),A.on("release",()=>{this._connectionsCounter=wY.updateCounter(Q,A,this._connectionsCount,this._connectionPendingRequests,this._connectionsCounter)}),A[uHQ.EVENT_LISTENERS_SET]=!0}_getPoolConnectPatch(){let A=this;return(Q)=>{return function(Y){if(wY.shouldSkipInstrumentation(A.getConfig()))return Q.call(this,Y);let J=A.tracer.startSpan(lHQ.SpanNames.POOL_CONNECT,{kind:rB.SpanKind.CLIENT,attributes:wY.getSemanticAttributesFromPool(this.options)});if(A._setPoolConnectEventListeners(this),Y){let X=rB.trace.getSpan(rB.context.active());if(Y=wY.patchCallbackPGPool(J,Y),X)Y=rB.context.bind(rB.context.active(),Y)}let C=rB.context.with(rB.trace.setSpan(rB.context.active(),J),()=>{return Q.call(this,Y)});return pHQ(J,C)}}}}nHQ.PgInstrumentation=iHQ;function pHQ(A,Q){if(!(Q instanceof Promise))return Q;let B=Q;return rB.context.bind(rB.context.active(),B.then((Y)=>{return A.end(),Y}).catch((Y)=>{return A.setStatus({code:rB.SpanStatusCode.ERROR,message:wY.getErrorMessage(Y)}),A.end(),Promise.reject(Y)}))}});var oHQ=R((aHQ)=>{Object.defineProperty(aHQ,"__esModule",{value:!0})});var tHQ=R((RG)=>{var K20=RG&&RG.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),Is=RG&&RG.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))K20(Q,A,B)};Object.defineProperty(RG,"__esModule",{value:!0});Is(rHQ(),RG);Is(oHQ(),RG);Is($s(),RG)});var EDQ=R(($DQ)=>{Object.defineProperty($DQ,"__esModule",{value:!0});$DQ.PACKAGE_NAME=$DQ.PACKAGE_VERSION=void 0;$DQ.PACKAGE_VERSION="0.45.2";$DQ.PACKAGE_NAME="@opentelemetry/instrumentation-hapi"});var Ls=R((KDQ)=>{Object.defineProperty(KDQ,"__esModule",{value:!0});KDQ.HapiLifecycleMethodNames=KDQ.HapiLayerType=KDQ.handlerPatched=KDQ.HapiComponentName=void 0;KDQ.HapiComponentName="@hapi/hapi";KDQ.handlerPatched=Symbol("hapi-handler-patched");KDQ.HapiLayerType={ROUTER:"router",PLUGIN:"plugin",EXT:"server.ext"};KDQ.HapiLifecycleMethodNames=new Set(["onPreAuth","onCredentials","onPostAuth","onPreHandler","onPostHandler","onPreResponse","onRequest"])});var Ms=R((IDQ)=>{Object.defineProperty(IDQ,"__esModule",{value:!0});IDQ.AttributeNames=void 0;var S20;(function(A){A.HAPI_TYPE="hapi.type",A.PLUGIN_NAME="hapi.plugin.name",A.EXT_TYPE="server.ext.type"})(S20=IDQ.AttributeNames||(IDQ.AttributeNames={}))});var NDQ=R((HDQ)=>{Object.defineProperty(HDQ,"__esModule",{value:!0});HDQ.getPluginFromInput=HDQ.getExtMetadata=HDQ.getRouteMetadata=HDQ.isPatchableExtMethod=HDQ.isDirectExtInput=HDQ.isLifecycleExtEventObj=HDQ.isLifecycleExtType=HDQ.getPluginName=void 0;var qT=dB(),Aq=Ls(),cW=Ms();function k20(A){if(A.name)return A.name;else return A.pkg.name}HDQ.getPluginName=k20;var _20=(A)=>{return typeof A==="string"&&Aq.HapiLifecycleMethodNames.has(A)};HDQ.isLifecycleExtType=_20;var v20=(A)=>{var Q;let B=(Q=A)===null||Q===void 0?void 0:Q.type;return B!==void 0&&HDQ.isLifecycleExtType(B)};HDQ.isLifecycleExtEventObj=v20;var y20=(A)=>{return Array.isArray(A)&&A.length<=3&&HDQ.isLifecycleExtType(A[0])&&typeof A[1]==="function"};HDQ.isDirectExtInput=y20;var g20=(A)=>{return!Array.isArray(A)};HDQ.isPatchableExtMethod=g20;var h20=(A,Q)=>{if(Q)return{attributes:{[qT.SEMATTRS_HTTP_ROUTE]:A.path,[qT.SEMATTRS_HTTP_METHOD]:A.method,[cW.AttributeNames.HAPI_TYPE]:Aq.HapiLayerType.PLUGIN,[cW.AttributeNames.PLUGIN_NAME]:Q},name:`${Q}: route - ${A.path}`};return{attributes:{[qT.SEMATTRS_HTTP_ROUTE]:A.path,[qT.SEMATTRS_HTTP_METHOD]:A.method,[cW.AttributeNames.HAPI_TYPE]:Aq.HapiLayerType.ROUTER},name:`route - ${A.path}`}};HDQ.getRouteMetadata=h20;var x20=(A,Q)=>{if(Q)return{attributes:{[cW.AttributeNames.EXT_TYPE]:A,[cW.AttributeNames.HAPI_TYPE]:Aq.HapiLayerType.EXT,[cW.AttributeNames.PLUGIN_NAME]:Q},name:`${Q}: ext - ${A}`};return{attributes:{[cW.AttributeNames.EXT_TYPE]:A,[cW.AttributeNames.HAPI_TYPE]:Aq.HapiLayerType.EXT},name:`ext - ${A}`}};HDQ.getExtMetadata=x20;var f20=(A)=>{if("plugin"in A){if("plugin"in A.plugin)return A.plugin.plugin;return A.plugin}return A};HDQ.getPluginFromInput=f20});var wDQ=R((zDQ)=>{Object.defineProperty(zDQ,"__esModule",{value:!0});zDQ.HapiInstrumentation=void 0;var c8=yA(),LDQ=MB(),MT=NB(),qDQ=EDQ(),Qq=Ls(),wG=NDQ();class MDQ extends MT.InstrumentationBase{constructor(A={}){super(qDQ.PACKAGE_NAME,qDQ.PACKAGE_VERSION,A)}init(){return new MT.InstrumentationNodeModuleDefinition(Qq.HapiComponentName,[">=17.0.0 <22"],(A)=>{let Q=A[Symbol.toStringTag]==="Module"?A.default:A;if(!(0,MT.isWrapped)(Q.server))this._wrap(Q,"server",this._getServerPatch.bind(this));if(!(0,MT.isWrapped)(Q.Server))this._wrap(Q,"Server",this._getServerPatch.bind(this));return Q},(A)=>{let Q=A[Symbol.toStringTag]==="Module"?A.default:A;this._massUnwrap([Q],["server","Server"])})}_getServerPatch(A){let Q=this,B=this;return function(J){let C=A.apply(this,[J]);return B._wrap(C,"route",(X)=>{return Q._getServerRoutePatch.bind(Q)(X)}),B._wrap(C,"ext",(X)=>{return Q._getServerExtPatch.bind(Q)(X)}),B._wrap(C,"register",Q._getServerRegisterPatch.bind(Q)),C}}_getServerRegisterPatch(A){let Q=this;return function(Y,J){if(Array.isArray(Y))for(let C of Y){let X=(0,wG.getPluginFromInput)(C);Q._wrapRegisterHandler(X)}else{let C=(0,wG.getPluginFromInput)(Y);Q._wrapRegisterHandler(C)}return A.apply(this,[Y,J])}}_getServerExtPatch(A,Q){let B=this;return function(...J){if(Array.isArray(J[0])){let C=J[0];for(let X=0;X{return Q._getServerRoutePatch.bind(Q)(W,B)}),J._wrap(X,"ext",(W)=>{return Q._getServerExtPatch.bind(Q)(W,B)}),Y.call(this,X,G)};A.register=C}_wrapExtMethods(A,Q,B){let Y=this;if(A instanceof Array){for(let J=0;J{return async function(...X){if(c8.trace.getSpan(c8.context.active())===void 0)return await C.call(this,...X);let G=(0,LDQ.getRPCMetadata)(c8.context.active());if((G===null||G===void 0?void 0:G.type)===LDQ.RPCType.HTTP)G.route=A.path;let W=(0,wG.getRouteMetadata)(A,Q),F=Y.tracer.startSpan(W.name,{attributes:W.attributes});try{return await c8.context.with(c8.trace.setSpan(c8.context.active(),F),()=>C.call(this,...X))}catch(Z){throw F.recordException(Z),F.setStatus({code:c8.SpanStatusCode.ERROR,message:Z.message}),Z}finally{F.end()}}};if(typeof A.handler==="function")A.handler=J(A.handler);else if(typeof A.options==="function"){let C=A.options;A.options=function(X){let G=C(X);if(typeof G.handler==="function")G.handler=J(G.handler);return G}}else if(typeof((B=A.options)===null||B===void 0?void 0:B.handler)==="function")A.options.handler=J(A.options.handler);return A}}zDQ.HapiInstrumentation=MDQ});var ODQ=R((lW)=>{var p20=lW&&lW.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),jDQ=lW&&lW.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))p20(Q,A,B)};Object.defineProperty(lW,"__esModule",{value:!0});jDQ(wDQ(),lW);jDQ(Ms(),lW)});var wT=R((kDQ)=>{Object.defineProperty(kDQ,"__esModule",{value:!0});kDQ.KoaLayerType=void 0;var o20;(function(A){A.ROUTER="router",A.MIDDLEWARE="middleware"})(o20=kDQ.KoaLayerType||(kDQ.KoaLayerType={}))});var yDQ=R((_DQ)=>{Object.defineProperty(_DQ,"__esModule",{value:!0});_DQ.PACKAGE_NAME=_DQ.PACKAGE_VERSION=void 0;_DQ.PACKAGE_VERSION="0.47.1";_DQ.PACKAGE_NAME="@opentelemetry/instrumentation-koa"});var js=R((gDQ)=>{Object.defineProperty(gDQ,"__esModule",{value:!0});gDQ.AttributeNames=void 0;var e20;(function(A){A.KOA_TYPE="koa.type",A.KOA_NAME="koa.name"})(e20=gDQ.AttributeNames||(gDQ.AttributeNames={}))});var bDQ=R((xDQ)=>{Object.defineProperty(xDQ,"__esModule",{value:!0});xDQ.isLayerIgnored=xDQ.getMiddlewareMetadata=void 0;var hDQ=wT(),jT=js(),A30=dB(),Q30=(A,Q,B,Y)=>{var J;if(B)return{attributes:{[jT.AttributeNames.KOA_NAME]:Y===null||Y===void 0?void 0:Y.toString(),[jT.AttributeNames.KOA_TYPE]:hDQ.KoaLayerType.ROUTER,[A30.SEMATTRS_HTTP_ROUTE]:Y===null||Y===void 0?void 0:Y.toString()},name:A._matchedRouteName||`router - ${Y}`};else return{attributes:{[jT.AttributeNames.KOA_NAME]:(J=Q.name)!==null&&J!==void 0?J:"middleware",[jT.AttributeNames.KOA_TYPE]:hDQ.KoaLayerType.MIDDLEWARE},name:`middleware - ${Q.name}`}};xDQ.getMiddlewareMetadata=Q30;var B30=(A,Q)=>{var B;return!!(Array.isArray(Q===null||Q===void 0?void 0:Q.ignoreLayersType)&&((B=Q===null||Q===void 0?void 0:Q.ignoreLayersType)===null||B===void 0?void 0:B.includes(A)))};xDQ.isLayerIgnored=B30});var dDQ=R((mDQ)=>{Object.defineProperty(mDQ,"__esModule",{value:!0});mDQ.kLayerPatched=void 0;mDQ.kLayerPatched=Symbol("koa-layer-patched")});var oDQ=R((rDQ)=>{Object.defineProperty(rDQ,"__esModule",{value:!0});rDQ.KoaInstrumentation=void 0;var qX=yA(),Bq=NB(),cDQ=wT(),lDQ=yDQ(),pDQ=bDQ(),iDQ=MB(),nDQ=dDQ();class sDQ extends Bq.InstrumentationBase{constructor(A={}){super(lDQ.PACKAGE_NAME,lDQ.PACKAGE_VERSION,A)}init(){return new Bq.InstrumentationNodeModuleDefinition("koa",[">=2.0.0 <3"],(A)=>{let Q=A[Symbol.toStringTag]==="Module"?A.default:A;if(Q==null)return Q;if((0,Bq.isWrapped)(Q.prototype.use))this._unwrap(Q.prototype,"use");return this._wrap(Q.prototype,"use",this._getKoaUsePatch.bind(this)),A},(A)=>{let Q=A[Symbol.toStringTag]==="Module"?A.default:A;if((0,Bq.isWrapped)(Q.prototype.use))this._unwrap(Q.prototype,"use")})}_getKoaUsePatch(A){let Q=this;return function(Y){let J;if(Y.router)J=Q._patchRouterDispatch(Y);else J=Q._patchLayer(Y,!1);return A.apply(this,[J])}}_patchRouterDispatch(A){var Q;qX.diag.debug("Patching @koa/router dispatch");let B=A.router,Y=(Q=B===null||B===void 0?void 0:B.stack)!==null&&Q!==void 0?Q:[];for(let J of Y){let{path:C,stack:X}=J;for(let G=0;G{if(qX.trace.getSpan(qX.context.active())===void 0)return A(J,C);let G=(0,pDQ.getMiddlewareMetadata)(J,A,Q,B),W=this.tracer.startSpan(G.name,{attributes:G.attributes}),F=(0,iDQ.getRPCMetadata)(qX.context.active());if((F===null||F===void 0?void 0:F.type)===iDQ.RPCType.HTTP&&J._matchedRoute)F.route=J._matchedRoute.toString();let{requestHook:Z}=this.getConfig();if(Z)(0,Bq.safeExecuteInTheMiddle)(()=>Z(W,{context:J,middlewareLayer:A,layerType:Y}),($)=>{if($)qX.diag.error("koa instrumentation: request hook failed",$)},!0);let U=qX.trace.setSpan(qX.context.active(),W);return qX.context.with(U,async()=>{try{return await A(J,C)}catch($){throw W.recordException($),$}finally{W.end()}})}}}rDQ.KoaInstrumentation=sDQ});var tDQ=R((jG)=>{var J30=jG&&jG.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),Os=jG&&jG.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))J30(Q,A,B)};Object.defineProperty(jG,"__esModule",{value:!0});Os(oDQ(),jG);Os(wT(),jG);Os(js(),jG)});var Ss=R((CNQ)=>{Object.defineProperty(CNQ,"__esModule",{value:!0});CNQ.ConnectNames=CNQ.ConnectTypes=CNQ.AttributeNames=void 0;var G30;(function(A){A.CONNECT_TYPE="connect.type",A.CONNECT_NAME="connect.name"})(G30=CNQ.AttributeNames||(CNQ.AttributeNames={}));var W30;(function(A){A.MIDDLEWARE="middleware",A.REQUEST_HANDLER="request_handler"})(W30=CNQ.ConnectTypes||(CNQ.ConnectTypes={}));var F30;(function(A){A.MIDDLEWARE="middleware",A.REQUEST_HANDLER="request handler"})(F30=CNQ.ConnectNames||(CNQ.ConnectNames={}))});var WNQ=R((XNQ)=>{Object.defineProperty(XNQ,"__esModule",{value:!0});XNQ.PACKAGE_NAME=XNQ.PACKAGE_VERSION=void 0;XNQ.PACKAGE_VERSION="0.43.1";XNQ.PACKAGE_NAME="@opentelemetry/instrumentation-connect"});var $NQ=R((FNQ)=>{Object.defineProperty(FNQ,"__esModule",{value:!0});FNQ._LAYERS_STORE_PROPERTY=void 0;FNQ._LAYERS_STORE_PROPERTY=Symbol("opentelemetry.instrumentation-connect.request-route-stack")});var KNQ=R((UNQ)=>{Object.defineProperty(UNQ,"__esModule",{value:!0});UNQ.generateRoute=UNQ.replaceCurrentStackRoute=UNQ.addNewStackLayer=void 0;var $30=yA(),pW=$NQ(),U30=(A)=>{if(Array.isArray(A[pW._LAYERS_STORE_PROPERTY])===!1)Object.defineProperty(A,pW._LAYERS_STORE_PROPERTY,{enumerable:!1,value:[]});A[pW._LAYERS_STORE_PROPERTY].push("/");let Q=A[pW._LAYERS_STORE_PROPERTY].length;return()=>{if(Q===A[pW._LAYERS_STORE_PROPERTY].length)A[pW._LAYERS_STORE_PROPERTY].pop();else $30.diag.warn("Connect: Trying to pop the stack multiple time")}};UNQ.addNewStackLayer=U30;var E30=(A,Q)=>{if(Q)A[pW._LAYERS_STORE_PROPERTY].splice(-1,1,Q)};UNQ.replaceCurrentStackRoute=E30;var K30=(A)=>{return A[pW._LAYERS_STORE_PROPERTY].reduce((Q,B)=>Q.replace(/\/+$/,"")+B)};UNQ.generateRoute=K30});var LNQ=R((DNQ)=>{Object.defineProperty(DNQ,"__esModule",{value:!0});DNQ.ConnectInstrumentation=DNQ.ANONYMOUS_NAME=void 0;var H30=yA(),VNQ=MB(),fK=Ss(),INQ=WNQ(),PT=NB(),D30=dB(),ks=KNQ();DNQ.ANONYMOUS_NAME="anonymous";class HNQ extends PT.InstrumentationBase{constructor(A={}){super(INQ.PACKAGE_NAME,INQ.PACKAGE_VERSION,A)}init(){return[new PT.InstrumentationNodeModuleDefinition("connect",[">=3.0.0 <4"],(A)=>{return this._patchConstructor(A)})]}_patchApp(A){if(!(0,PT.isWrapped)(A.use))this._wrap(A,"use",this._patchUse.bind(this));if(!(0,PT.isWrapped)(A.handle))this._wrap(A,"handle",this._patchHandle.bind(this))}_patchConstructor(A){let Q=this;return function(...B){let Y=A.apply(this,B);return Q._patchApp(Y),Y}}_patchNext(A,Q){return function(Y){let J=A.apply(this,[Y]);return Q(),J}}_startSpan(A,Q){let B,Y,J;if(A)B=fK.ConnectTypes.REQUEST_HANDLER,J=fK.ConnectNames.REQUEST_HANDLER,Y=A;else B=fK.ConnectTypes.MIDDLEWARE,J=fK.ConnectNames.MIDDLEWARE,Y=Q.name||DNQ.ANONYMOUS_NAME;let C=`${J} - ${Y}`,X={attributes:{[D30.SEMATTRS_HTTP_ROUTE]:A.length>0?A:"/",[fK.AttributeNames.CONNECT_TYPE]:B,[fK.AttributeNames.CONNECT_NAME]:Y}};return this.tracer.startSpan(C,X)}_patchMiddleware(A,Q){let B=this,Y=Q.length===4;function J(){if(!B.isEnabled())return Q.apply(this,arguments);let[C,X,G]=Y?[1,2,3]:[0,1,2],W=arguments[C],F=arguments[X],Z=arguments[G];(0,ks.replaceCurrentStackRoute)(W,A);let U=(0,VNQ.getRPCMetadata)(H30.context.active());if(A&&(U===null||U===void 0?void 0:U.type)===VNQ.RPCType.HTTP)U.route=(0,ks.generateRoute)(W);let $="";if(A)$=`request handler - ${A}`;else $=`middleware - ${Q.name||DNQ.ANONYMOUS_NAME}`;let E=B._startSpan(A,Q);B._diag.debug("start span",$);let K=!1;function I(){if(!K)K=!0,B._diag.debug(`finishing span ${E.name}`),E.end();else B._diag.debug(`span ${E.name} - already finished`);F.removeListener("close",I)}return F.addListener("close",I),arguments[G]=B._patchNext(Z,I),Q.apply(this,arguments)}return Object.defineProperty(J,"length",{value:Q.length,writable:!1,configurable:!0}),J}_patchUse(A){let Q=this;return function(...B){let Y=B[B.length-1],J=B[B.length-2]||"";return B[B.length-1]=Q._patchMiddleware(J,Y),A.apply(this,B)}}_patchHandle(A){let Q=this;return function(){let[B,Y]=[0,2],J=arguments[B],C=arguments[Y],X=(0,ks.addNewStackLayer)(J);if(typeof C==="function")arguments[Y]=Q._patchOut(C,X);return A.apply(this,arguments)}}_patchOut(A,Q){return function(...Y){return Q(),Reflect.apply(A,this,Y)}}}DNQ.ConnectInstrumentation=HNQ});var MNQ=R((iW)=>{var N30=iW&&iW.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),qNQ=iW&&iW.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))N30(Q,A,B)};Object.defineProperty(iW,"__esModule",{value:!0});qNQ(Ss(),iW);qNQ(LNQ(),iW)});var PNQ=R((jNQ)=>{Object.defineProperty(jNQ,"__esModule",{value:!0});jNQ.PACKAGE_NAME=jNQ.PACKAGE_VERSION=void 0;jNQ.PACKAGE_VERSION="0.44.1";jNQ.PACKAGE_NAME="@opentelemetry/instrumentation-knex"});var kNQ=R((TNQ)=>{Object.defineProperty(TNQ,"__esModule",{value:!0});TNQ.SUPPORTED_VERSIONS=TNQ.MODULE_NAME=void 0;TNQ.MODULE_NAME="knex";TNQ.SUPPORTED_VERSIONS=[">=0.22.0 <4",">=0.10.0 <0.18.0",">=0.19.0 <0.22.0",">=0.18.0 <0.19.0"]});var yNQ=R((vNQ)=>{Object.defineProperty(vNQ,"__esModule",{value:!0});vNQ.extractTableName=vNQ.limitLength=vNQ.getName=vNQ.mapSystem=vNQ.otelExceptionFromKnexError=vNQ.getFormatter=void 0;var _NQ=dB(),k30=(A)=>{if(A){if(A.client){if(A.client._formatQuery)return A.client._formatQuery.bind(A.client);else if(A.client.SqlString)return A.client.SqlString.format.bind(A.client.SqlString)}if(A.builder)return A.builder.toString.bind(A.builder)}return()=>""};vNQ.getFormatter=k30;function _30(A,Q){if(!(A&&A instanceof Error))return A;return{message:Q,code:A.code,stack:A.stack,name:A.name}}vNQ.otelExceptionFromKnexError=_30;var v30=new Map([["sqlite3",_NQ.DBSYSTEMVALUES_SQLITE],["pg",_NQ.DBSYSTEMVALUES_POSTGRESQL]]),y30=(A)=>{return v30.get(A)||A};vNQ.mapSystem=y30;var g30=(A,Q,B)=>{if(Q){if(B)return`${Q} ${A}.${B}`;return`${Q} ${A}`}return A};vNQ.getName=g30;var h30=(A,Q)=>{if(typeof A==="string"&&typeof Q==="number"&&0{var Q;let B=(Q=A===null||A===void 0?void 0:A._single)===null||Q===void 0?void 0:Q.table;if(typeof B==="object")return vNQ.extractTableName(B);return B};vNQ.extractTableName=x30});var uNQ=R((bNQ)=>{Object.defineProperty(bNQ,"__esModule",{value:!0});bNQ.KnexInstrumentation=void 0;var OG=yA(),gNQ=PNQ(),kT=kNQ(),Yq=NB(),PG=dB(),bK=yNQ(),hNQ=Symbol("opentelemetry.instrumentation-knex.context"),xNQ={maxQueryLength:1022,requireParentSpan:!1};class fNQ extends Yq.InstrumentationBase{constructor(A={}){super(gNQ.PACKAGE_NAME,gNQ.PACKAGE_VERSION,Object.assign(Object.assign({},xNQ),A))}setConfig(A={}){super.setConfig(Object.assign(Object.assign({},xNQ),A))}init(){let A=new Yq.InstrumentationNodeModuleDefinition(kT.MODULE_NAME,kT.SUPPORTED_VERSIONS);return A.files.push(this.getClientNodeModuleFileInstrumentation("src"),this.getClientNodeModuleFileInstrumentation("lib"),this.getRunnerNodeModuleFileInstrumentation("src"),this.getRunnerNodeModuleFileInstrumentation("lib"),this.getRunnerNodeModuleFileInstrumentation("lib/execution")),A}getRunnerNodeModuleFileInstrumentation(A){return new Yq.InstrumentationNodeModuleFile(`knex/${A}/runner.js`,kT.SUPPORTED_VERSIONS,(Q,B)=>{return this.ensureWrapped(Q.prototype,"query",this.createQueryWrapper(B)),Q},(Q,B)=>{return this._unwrap(Q.prototype,"query"),Q})}getClientNodeModuleFileInstrumentation(A){return new Yq.InstrumentationNodeModuleFile(`knex/${A}/client.js`,kT.SUPPORTED_VERSIONS,(Q)=>{return this.ensureWrapped(Q.prototype,"queryBuilder",this.storeContext.bind(this)),this.ensureWrapped(Q.prototype,"schemaBuilder",this.storeContext.bind(this)),this.ensureWrapped(Q.prototype,"raw",this.storeContext.bind(this)),Q},(Q)=>{return this._unwrap(Q.prototype,"queryBuilder"),this._unwrap(Q.prototype,"schemaBuilder"),this._unwrap(Q.prototype,"raw"),Q})}createQueryWrapper(A){let Q=this;return function(Y){return function(C){var X,G,W,F,Z,U;let $=this.client.config,E=bK.extractTableName(this.builder),K=C===null||C===void 0?void 0:C.method,I=((X=$===null||$===void 0?void 0:$.connection)===null||X===void 0?void 0:X.filename)||((G=$===null||$===void 0?void 0:$.connection)===null||G===void 0?void 0:G.database),{maxQueryLength:V}=Q.getConfig(),H={"knex.version":A,[PG.SEMATTRS_DB_SYSTEM]:bK.mapSystem($.client),[PG.SEMATTRS_DB_SQL_TABLE]:E,[PG.SEMATTRS_DB_OPERATION]:K,[PG.SEMATTRS_DB_USER]:(W=$===null||$===void 0?void 0:$.connection)===null||W===void 0?void 0:W.user,[PG.SEMATTRS_DB_NAME]:I,[PG.SEMATTRS_NET_PEER_NAME]:(F=$===null||$===void 0?void 0:$.connection)===null||F===void 0?void 0:F.host,[PG.SEMATTRS_NET_PEER_PORT]:(Z=$===null||$===void 0?void 0:$.connection)===null||Z===void 0?void 0:Z.port,[PG.SEMATTRS_NET_TRANSPORT]:((U=$===null||$===void 0?void 0:$.connection)===null||U===void 0?void 0:U.filename)===":memory:"?"inproc":void 0};if(V)H[PG.SEMATTRS_DB_STATEMENT]=bK.limitLength(C===null||C===void 0?void 0:C.sql,V);let D=this.builder[hNQ]||OG.context.active(),L=OG.trace.getSpan(D),z=L&&OG.trace.isSpanContextValid(L.spanContext());if(Q._config.requireParentSpan&&!z)return Y.bind(this)(...arguments);let M=Q.tracer.startSpan(bK.getName(I,K,E),{kind:OG.SpanKind.CLIENT,attributes:H},D),N=OG.trace.setSpan(OG.context.active(),M);return OG.context.with(N,Y,this,...arguments).then((q)=>{return M.end(),q}).catch((q)=>{let P=bK.getFormatter(this)(C.sql,C.bindings||[]),_=q.message.replace(P+" - ",""),j=bK.otelExceptionFromKnexError(q,_);throw M.recordException(j),M.setStatus({code:OG.SpanStatusCode.ERROR,message:_}),M.end(),q})}}}storeContext(A){return function(){let B=A.apply(this,arguments);return Object.defineProperty(B,hNQ,{value:OG.context.active()}),B}}ensureWrapped(A,Q,B){if((0,Yq.isWrapped)(A[Q]))this._unwrap(A,Q);this._wrap(A,Q,B)}}bNQ.KnexInstrumentation=fNQ});var cNQ=R((dNQ)=>{Object.defineProperty(dNQ,"__esModule",{value:!0})});var pNQ=R((nW)=>{var c30=nW&&nW.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),lNQ=nW&&nW.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))c30(Q,A,B)};Object.defineProperty(nW,"__esModule",{value:!0});lNQ(uNQ(),nW);lNQ(cNQ(),nW)});var oNQ=R((rNQ)=>{Object.defineProperty(rNQ,"__esModule",{value:!0});rNQ.once=rNQ.getSpanName=void 0;function i30(A,Q,B,Y){if(A==="execBulkLoad"&&Y&&Q)return`${A} ${Y} ${Q}`;if(A==="callProcedure"){if(Q)return`${A} ${B} ${Q}`;return`${A} ${B}`}if(Q)return`${A} ${Q}`;return`${A}`}rNQ.getSpanName=i30;var n30=(A)=>{let Q=!1;return(...B)=>{if(Q)return;return Q=!0,A(...B)}};rNQ.once=n30});var ALQ=R((tNQ)=>{Object.defineProperty(tNQ,"__esModule",{value:!0});tNQ.PACKAGE_NAME=tNQ.PACKAGE_VERSION=void 0;tNQ.PACKAGE_VERSION="0.18.1";tNQ.PACKAGE_NAME="@opentelemetry/instrumentation-tedious"});var GLQ=R((CLQ)=>{Object.defineProperty(CLQ,"__esModule",{value:!0});CLQ.TediousInstrumentation=void 0;var Jq=yA(),a30=u("events"),_T=NB(),sW=dB(),QLQ=oNQ(),BLQ=ALQ(),JLQ=Symbol("opentelemetry.instrumentation-tedious.current-database"),YLQ=["callProcedure","execSql","execSqlBatch","execBulkLoad","prepare","execute"];function vT(A){Object.defineProperty(this,JLQ,{value:A,writable:!0})}class yT extends _T.InstrumentationBase{constructor(A={}){super(BLQ.PACKAGE_NAME,BLQ.PACKAGE_VERSION,A)}init(){return[new _T.InstrumentationNodeModuleDefinition(yT.COMPONENT,[">=1.11.0 <20"],(A)=>{let Q=A.Connection.prototype;for(let B of YLQ){if((0,_T.isWrapped)(Q[B]))this._unwrap(Q,B);this._wrap(Q,B,this._patchQuery(B))}if((0,_T.isWrapped)(Q.connect))this._unwrap(Q,"connect");return this._wrap(Q,"connect",this._patchConnect),A},(A)=>{if(A===void 0)return;let Q=A.Connection.prototype;for(let B of YLQ)this._unwrap(Q,B);this._unwrap(Q,"connect")})]}_patchConnect(A){return function(){var B,Y;return vT.call(this,(Y=(B=this.config)===null||B===void 0?void 0:B.options)===null||Y===void 0?void 0:Y.database),this.removeListener("databaseChange",vT),this.on("databaseChange",vT),this.once("end",()=>{this.removeListener("databaseChange",vT)}),A.apply(this,arguments)}}_patchQuery(A){return(Q)=>{let B=this;function Y(J){var C,X,G,W,F,Z,U,$;if(!(J instanceof a30.EventEmitter))return B._diag.warn(`Unexpected invocation of patched ${A} method. Span not recorded`),Q.apply(this,arguments);let E=0,K=0,I=()=>K++,V=()=>E++,H=this[JLQ],D=((M)=>{var N,q;if(M.sqlTextOrProcedure==="sp_prepare"&&((q=(N=M.parametersByName)===null||N===void 0?void 0:N.stmt)===null||q===void 0?void 0:q.value))return M.parametersByName.stmt.value;return M.sqlTextOrProcedure})(J),L=B.tracer.startSpan((0,QLQ.getSpanName)(A,H,D,J.table),{kind:Jq.SpanKind.CLIENT,attributes:{[sW.SEMATTRS_DB_SYSTEM]:sW.DBSYSTEMVALUES_MSSQL,[sW.SEMATTRS_DB_NAME]:H,[sW.SEMATTRS_NET_PEER_PORT]:(X=(C=this.config)===null||C===void 0?void 0:C.options)===null||X===void 0?void 0:X.port,[sW.SEMATTRS_NET_PEER_NAME]:(G=this.config)===null||G===void 0?void 0:G.server,[sW.SEMATTRS_DB_USER]:(F=(W=this.config)===null||W===void 0?void 0:W.userName)!==null&&F!==void 0?F:($=(U=(Z=this.config)===null||Z===void 0?void 0:Z.authentication)===null||U===void 0?void 0:U.options)===null||$===void 0?void 0:$.userName,[sW.SEMATTRS_DB_STATEMENT]:D,[sW.SEMATTRS_DB_SQL_TABLE]:J.table}}),z=(0,QLQ.once)((M)=>{if(J.removeListener("done",I),J.removeListener("doneInProc",I),J.removeListener("doneProc",V),J.removeListener("error",z),this.removeListener("end",z),L.setAttribute("tedious.procedure_count",E),L.setAttribute("tedious.statement_count",K),M)L.setStatus({code:Jq.SpanStatusCode.ERROR,message:M.message});L.end()});if(J.on("done",I),J.on("doneInProc",I),J.on("doneProc",V),J.once("error",z),this.on("end",z),typeof J.callback==="function")B._wrap(J,"callback",B._patchCallbackQuery(z));else B._diag.error("Expected request.callback to be a function");return Jq.context.with(Jq.trace.setSpan(Jq.context.active(),L),Q,this,...arguments)}return Object.defineProperty(Y,"length",{value:Q.length,writable:!1}),Y}}_patchCallbackQuery(A){return(Q)=>{return function(B,Y,J){return A(B),Q.apply(this,arguments)}}}}CLQ.TediousInstrumentation=yT;yT.COMPONENT="tedious"});var FLQ=R((WLQ)=>{Object.defineProperty(WLQ,"__esModule",{value:!0})});var $LQ=R((rW)=>{var o30=rW&&rW.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),ZLQ=rW&&rW.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))o30(Q,A,B)};Object.defineProperty(rW,"__esModule",{value:!0});ZLQ(GLQ(),rW);ZLQ(FLQ(),rW)});var ILQ=R((KLQ)=>{Object.defineProperty(KLQ,"__esModule",{value:!0});KLQ.PACKAGE_NAME=KLQ.PACKAGE_VERSION=void 0;KLQ.PACKAGE_VERSION="0.43.1";KLQ.PACKAGE_NAME="@opentelemetry/instrumentation-generic-pool"});var qLQ=R((NLQ)=>{Object.defineProperty(NLQ,"__esModule",{value:!0});NLQ.GenericPoolInstrumentation=void 0;var mK=yA(),v$=NB(),HLQ=ILQ(),xs="generic-pool";class DLQ extends v$.InstrumentationBase{constructor(A={}){super(HLQ.PACKAGE_NAME,HLQ.PACKAGE_VERSION,A);this._isDisabled=!1}init(){return[new v$.InstrumentationNodeModuleDefinition(xs,[">=3.0.0 <4"],(A)=>{let Q=A.Pool;if((0,v$.isWrapped)(Q.prototype.acquire))this._unwrap(Q.prototype,"acquire");return this._wrap(Q.prototype,"acquire",this._acquirePatcher.bind(this)),A},(A)=>{let Q=A.Pool;return this._unwrap(Q.prototype,"acquire"),A}),new v$.InstrumentationNodeModuleDefinition(xs,[">=2.4.0 <3"],(A)=>{let Q=A.Pool;if((0,v$.isWrapped)(Q.prototype.acquire))this._unwrap(Q.prototype,"acquire");return this._wrap(Q.prototype,"acquire",this._acquireWithCallbacksPatcher.bind(this)),A},(A)=>{let Q=A.Pool;return this._unwrap(Q.prototype,"acquire"),A}),new v$.InstrumentationNodeModuleDefinition(xs,[">=2.0.0 <2.4"],(A)=>{if(this._isDisabled=!1,(0,v$.isWrapped)(A.Pool))this._unwrap(A,"Pool");return this._wrap(A,"Pool",this._poolWrapper.bind(this)),A},(A)=>{return this._isDisabled=!0,A})]}_acquirePatcher(A){let Q=this;return function(...Y){let J=mK.context.active(),C=Q.tracer.startSpan("generic-pool.acquire",{},J);return mK.context.with(mK.trace.setSpan(J,C),()=>{return A.call(this,...Y).then((X)=>{return C.end(),X},(X)=>{throw C.recordException(X),C.end(),X})})}}_poolWrapper(A){let Q=this;return function(){let Y=A.apply(this,arguments);return Q._wrap(Y,"acquire",Q._acquireWithCallbacksPatcher.bind(Q)),Y}}_acquireWithCallbacksPatcher(A){let Q=this;return function(Y,J){if(Q._isDisabled)return A.call(this,Y,J);let C=mK.context.active(),X=Q.tracer.startSpan("generic-pool.acquire",{},C);return mK.context.with(mK.trace.setSpan(C,X),()=>{A.call(this,(G,W)=>{if(X.end(),Y)return Y(G,W)},J)})}}}NLQ.GenericPoolInstrumentation=DLQ});var MLQ=R((y$)=>{var QR0=y$&&y$.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),BR0=y$&&y$.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))QR0(Q,A,B)};Object.defineProperty(y$,"__esModule",{value:!0});BR0(qLQ(),y$)});var jLQ=R((wLQ)=>{Object.defineProperty(wLQ,"__esModule",{value:!0})});var TLQ=R((OLQ)=>{Object.defineProperty(OLQ,"__esModule",{value:!0});OLQ.PACKAGE_NAME=OLQ.PACKAGE_VERSION=void 0;OLQ.PACKAGE_VERSION="0.16.1";OLQ.PACKAGE_NAME="@opentelemetry/instrumentation-dataloader"});var yLQ=R((_LQ)=>{Object.defineProperty(_LQ,"__esModule",{value:!0});_LQ.DataloaderInstrumentation=void 0;var g$=NB(),q9=yA(),SLQ=TLQ(),bs="dataloader";class kLQ extends g$.InstrumentationBase{constructor(A={}){super(SLQ.PACKAGE_NAME,SLQ.PACKAGE_VERSION,A)}init(){return[new g$.InstrumentationNodeModuleDefinition(bs,[">=2.0.0 <3"],(A)=>{return this._patchLoad(A.prototype),this._patchLoadMany(A.prototype),this._getPatchedConstructor(A)},(A)=>{if((0,g$.isWrapped)(A.prototype.load))this._unwrap(A.prototype,"load");if((0,g$.isWrapped)(A.prototype.loadMany))this._unwrap(A.prototype,"loadMany")})]}shouldCreateSpans(){let A=this.getConfig();return q9.trace.getSpan(q9.context.active())!==void 0||!A.requireParentSpan}getSpanName(A,Q){let B=A.name;if(B===void 0||B===null)return`${bs}.${Q}`;return`${bs}.${Q} ${B}`}_getPatchedConstructor(A){let Q=A.prototype,B=this;function Y(...J){let C=new A(...J);if(!B.isEnabled())return C;if((0,g$.isWrapped)(C._batchLoadFn))B._unwrap(C,"_batchLoadFn");return B._wrap(C,"_batchLoadFn",(X)=>{return function(...W){var F;if(!B.isEnabled()||!B.shouldCreateSpans())return X.call(this,...W);let Z=q9.context.active(),U=B.tracer.startSpan(B.getSpanName(C,"batch"),{links:(F=this._batch)===null||F===void 0?void 0:F.spanLinks},Z);return q9.context.with(q9.trace.setSpan(Z,U),()=>{return X.apply(this,W).then(($)=>{return U.end(),$}).catch(($)=>{throw U.recordException($),U.setStatus({code:q9.SpanStatusCode.ERROR,message:$.message}),U.end(),$})})}}),C}return Y.prototype=Q,Y}_patchLoad(A){if((0,g$.isWrapped)(A.load))this._unwrap(A,"load");this._wrap(A,"load",this._getPatchedLoad.bind(this))}_getPatchedLoad(A){let Q=this;return function(...Y){if(!Q.shouldCreateSpans())return A.call(this,...Y);let J=q9.context.active(),C=Q.tracer.startSpan(Q.getSpanName(this,"load"),{kind:q9.SpanKind.CLIENT},J);return q9.context.with(q9.trace.setSpan(J,C),()=>{let X=A.call(this,...Y).then((W)=>{return C.end(),W}).catch((W)=>{throw C.recordException(W),C.setStatus({code:q9.SpanStatusCode.ERROR,message:W.message}),C.end(),W}),G=this;if(G._batch){if(!G._batch.spanLinks)G._batch.spanLinks=[];G._batch.spanLinks.push({context:C.spanContext()})}return X})}}_patchLoadMany(A){if((0,g$.isWrapped)(A.loadMany))this._unwrap(A,"loadMany");this._wrap(A,"loadMany",this._getPatchedLoadMany.bind(this))}_getPatchedLoadMany(A){let Q=this;return function(...Y){if(!Q.shouldCreateSpans())return A.call(this,...Y);let J=q9.context.active(),C=Q.tracer.startSpan(Q.getSpanName(this,"loadMany"),{kind:q9.SpanKind.CLIENT},J);return q9.context.with(q9.trace.setSpan(J,C),()=>{return A.call(this,...Y).then((X)=>{return C.end(),X})})}}}_LQ.DataloaderInstrumentation=kLQ});var hLQ=R((aW)=>{var CR0=aW&&aW.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),gLQ=aW&&aW.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))CR0(Q,A,B)};Object.defineProperty(aW,"__esModule",{value:!0});gLQ(jLQ(),aW);gLQ(yLQ(),aW)});var ms=R((uLQ)=>{Object.defineProperty(uLQ,"__esModule",{value:!0});uLQ.DEFAULT_CONFIG=uLQ.EndOperation=void 0;var WR0;(function(A){A.AutoAck="auto ack",A.Ack="ack",A.AckAll="ackAll",A.Reject="reject",A.Nack="nack",A.NackAll="nackAll",A.ChannelClosed="channel closed",A.ChannelError="channel error",A.InstrumentationTimeout="instrumentation timeout"})(WR0=uLQ.EndOperation||(uLQ.EndOperation={}));uLQ.DEFAULT_CONFIG={consumeTimeoutMs:60000,useLinksForConsume:!1}});var sLQ=R((iLQ)=>{Object.defineProperty(iLQ,"__esModule",{value:!0});iLQ.isConfirmChannelTracing=iLQ.unmarkConfirmChannelTracing=iLQ.markConfirmChannelTracing=iLQ.getConnectionAttributesFromUrl=iLQ.getConnectionAttributesFromServer=iLQ.normalizeExchange=iLQ.CONNECTION_ATTRIBUTES=iLQ.CHANNEL_CONSUME_TIMEOUT_TIMER=iLQ.CHANNEL_SPANS_NOT_ENDED=iLQ.MESSAGE_STORED_SPAN=void 0;var us=yA(),TG=dB();iLQ.MESSAGE_STORED_SPAN=Symbol("opentelemetry.amqplib.message.stored-span");iLQ.CHANNEL_SPANS_NOT_ENDED=Symbol("opentelemetry.amqplib.channel.spans-not-ended");iLQ.CHANNEL_CONSUME_TIMEOUT_TIMER=Symbol("opentelemetry.amqplib.channel.consumer-timeout-timer");iLQ.CONNECTION_ATTRIBUTES=Symbol("opentelemetry.amqplib.connection.attributes");var ds=(0,us.createContextKey)("opentelemetry.amqplib.channel.is-confirm-channel"),FR0=(A)=>A!==""?A:"";iLQ.normalizeExchange=FR0;var ZR0=(A)=>{return A.replace(/:[^:@/]*@/,":***@")},cLQ=(A,Q)=>{return A||(Q==="AMQP"?5672:5671)},lLQ=(A)=>{let Q=A||"amqp";return(Q.endsWith(":")?Q.substring(0,Q.length-1):Q).toUpperCase()},pLQ=(A)=>{return A||"localhost"},uK=(A,Q,B,Y)=>{if(B)return{[Q]:B};else return us.diag.error(`amqplib instrumentation: could not extract connection attribute ${Y} from user supplied url`,{url:A}),{}},$R0=(A)=>{var Q,B;let Y=(B=(Q=A.serverProperties.product)===null||Q===void 0?void 0:Q.toLowerCase)===null||B===void 0?void 0:B.call(Q);if(Y)return{[TG.SEMATTRS_MESSAGING_SYSTEM]:Y};else return{}};iLQ.getConnectionAttributesFromServer=$R0;var UR0=(A)=>{let Q={[TG.SEMATTRS_MESSAGING_PROTOCOL_VERSION]:"0.9.1"};if(A=A||"amqp://localhost",typeof A==="object"){let B=A,Y=lLQ(B===null||B===void 0?void 0:B.protocol);Object.assign(Q,Object.assign({},uK(A,TG.SEMATTRS_MESSAGING_PROTOCOL,Y,"protocol")));let J=pLQ(B===null||B===void 0?void 0:B.hostname);Object.assign(Q,Object.assign({},uK(A,TG.SEMATTRS_NET_PEER_NAME,J,"hostname")));let C=cLQ(B.port,Y);Object.assign(Q,Object.assign({},uK(A,TG.SEMATTRS_NET_PEER_PORT,C,"port")))}else{let B=ZR0(A);Q[TG.SEMATTRS_MESSAGING_URL]=B;try{let Y=new URL(B),J=lLQ(Y.protocol);Object.assign(Q,Object.assign({},uK(B,TG.SEMATTRS_MESSAGING_PROTOCOL,J,"protocol")));let C=pLQ(Y.hostname);Object.assign(Q,Object.assign({},uK(B,TG.SEMATTRS_NET_PEER_NAME,C,"hostname")));let X=cLQ(Y.port?parseInt(Y.port):void 0,J);Object.assign(Q,Object.assign({},uK(B,TG.SEMATTRS_NET_PEER_PORT,X,"port")))}catch(Y){us.diag.error("amqplib instrumentation: error while extracting connection details from connection url",{censoredUrl:B,err:Y})}}return Q};iLQ.getConnectionAttributesFromUrl=UR0;var ER0=(A)=>{return A.setValue(ds,!0)};iLQ.markConfirmChannelTracing=ER0;var KR0=(A)=>{return A.deleteValue(ds)};iLQ.unmarkConfirmChannelTracing=KR0;var VR0=(A)=>{return A.getValue(ds)===!0};iLQ.isConfirmChannelTracing=VR0});var oLQ=R((rLQ)=>{Object.defineProperty(rLQ,"__esModule",{value:!0});rLQ.PACKAGE_NAME=rLQ.PACKAGE_VERSION=void 0;rLQ.PACKAGE_VERSION="0.46.1";rLQ.PACKAGE_NAME="@opentelemetry/instrumentation-amqplib"});var BqQ=R((AqQ)=>{Object.defineProperty(AqQ,"__esModule",{value:!0});AqQ.AmqplibInstrumentation=void 0;var u0=yA(),xT=MB(),fB=NB(),Q8=dB(),M9=ms(),r0=sLQ(),tLQ=oLQ(),fT=[">=0.5.5 <1"];class eLQ extends fB.InstrumentationBase{constructor(A={}){super(tLQ.PACKAGE_NAME,tLQ.PACKAGE_VERSION,Object.assign(Object.assign({},M9.DEFAULT_CONFIG),A))}setConfig(A={}){super.setConfig(Object.assign(Object.assign({},M9.DEFAULT_CONFIG),A))}init(){let A=new fB.InstrumentationNodeModuleFile("amqplib/lib/channel_model.js",fT,this.patchChannelModel.bind(this),this.unpatchChannelModel.bind(this)),Q=new fB.InstrumentationNodeModuleFile("amqplib/lib/callback_model.js",fT,this.patchChannelModel.bind(this),this.unpatchChannelModel.bind(this)),B=new fB.InstrumentationNodeModuleFile("amqplib/lib/connect.js",fT,this.patchConnect.bind(this),this.unpatchConnect.bind(this));return new fB.InstrumentationNodeModuleDefinition("amqplib",fT,void 0,void 0,[A,B,Q])}patchConnect(A){if(A=this.unpatchConnect(A),!(0,fB.isWrapped)(A.connect))this._wrap(A,"connect",this.getConnectPatch.bind(this));return A}unpatchConnect(A){if((0,fB.isWrapped)(A.connect))this._unwrap(A,"connect");return A}patchChannelModel(A,Q){if(!(0,fB.isWrapped)(A.Channel.prototype.publish))this._wrap(A.Channel.prototype,"publish",this.getPublishPatch.bind(this,Q));if(!(0,fB.isWrapped)(A.Channel.prototype.consume))this._wrap(A.Channel.prototype,"consume",this.getConsumePatch.bind(this,Q));if(!(0,fB.isWrapped)(A.Channel.prototype.ack))this._wrap(A.Channel.prototype,"ack",this.getAckPatch.bind(this,!1,M9.EndOperation.Ack));if(!(0,fB.isWrapped)(A.Channel.prototype.nack))this._wrap(A.Channel.prototype,"nack",this.getAckPatch.bind(this,!0,M9.EndOperation.Nack));if(!(0,fB.isWrapped)(A.Channel.prototype.reject))this._wrap(A.Channel.prototype,"reject",this.getAckPatch.bind(this,!0,M9.EndOperation.Reject));if(!(0,fB.isWrapped)(A.Channel.prototype.ackAll))this._wrap(A.Channel.prototype,"ackAll",this.getAckAllPatch.bind(this,!1,M9.EndOperation.AckAll));if(!(0,fB.isWrapped)(A.Channel.prototype.nackAll))this._wrap(A.Channel.prototype,"nackAll",this.getAckAllPatch.bind(this,!0,M9.EndOperation.NackAll));if(!(0,fB.isWrapped)(A.Channel.prototype.emit))this._wrap(A.Channel.prototype,"emit",this.getChannelEmitPatch.bind(this));if(!(0,fB.isWrapped)(A.ConfirmChannel.prototype.publish))this._wrap(A.ConfirmChannel.prototype,"publish",this.getConfirmedPublishPatch.bind(this,Q));return A}unpatchChannelModel(A){if((0,fB.isWrapped)(A.Channel.prototype.publish))this._unwrap(A.Channel.prototype,"publish");if((0,fB.isWrapped)(A.Channel.prototype.consume))this._unwrap(A.Channel.prototype,"consume");if((0,fB.isWrapped)(A.Channel.prototype.ack))this._unwrap(A.Channel.prototype,"ack");if((0,fB.isWrapped)(A.Channel.prototype.nack))this._unwrap(A.Channel.prototype,"nack");if((0,fB.isWrapped)(A.Channel.prototype.reject))this._unwrap(A.Channel.prototype,"reject");if((0,fB.isWrapped)(A.Channel.prototype.ackAll))this._unwrap(A.Channel.prototype,"ackAll");if((0,fB.isWrapped)(A.Channel.prototype.nackAll))this._unwrap(A.Channel.prototype,"nackAll");if((0,fB.isWrapped)(A.Channel.prototype.emit))this._unwrap(A.Channel.prototype,"emit");if((0,fB.isWrapped)(A.ConfirmChannel.prototype.publish))this._unwrap(A.ConfirmChannel.prototype,"publish");return A}getConnectPatch(A){return function(B,Y,J){return A.call(this,B,Y,function(C,X){if(C==null){let G=(0,r0.getConnectionAttributesFromUrl)(B),W=(0,r0.getConnectionAttributesFromServer)(X);X[r0.CONNECTION_ATTRIBUTES]=Object.assign(Object.assign({},G),W)}J.apply(this,arguments)})}}getChannelEmitPatch(A){let Q=this;return function(Y){if(Y==="close"){Q.endAllSpansOnChannel(this,!0,M9.EndOperation.ChannelClosed,void 0);let J=this[r0.CHANNEL_CONSUME_TIMEOUT_TIMER];if(J)clearInterval(J);this[r0.CHANNEL_CONSUME_TIMEOUT_TIMER]=void 0}else if(Y==="error")Q.endAllSpansOnChannel(this,!0,M9.EndOperation.ChannelError,void 0);return A.apply(this,arguments)}}getAckAllPatch(A,Q,B){let Y=this;return function(C){return Y.endAllSpansOnChannel(this,A,Q,C),B.apply(this,arguments)}}getAckPatch(A,Q,B){let Y=this;return function(C,X,G){var W;let F=this,Z=Q===M9.EndOperation.Reject?X:G,U=(W=F[r0.CHANNEL_SPANS_NOT_ENDED])!==null&&W!==void 0?W:[],$=U.findIndex((E)=>E.msg===C);if($<0)Y.endConsumerSpan(C,A,Q,Z);else if(Q!==M9.EndOperation.Reject&&X){for(let E=0;E<=$;E++)Y.endConsumerSpan(U[E].msg,A,Q,Z);U.splice(0,$+1)}else Y.endConsumerSpan(C,A,Q,Z),U.splice($,1);return B.apply(this,arguments)}}getConsumePatch(A,Q){let B=this;return function(J,C,X){let G=this;if(!Object.prototype.hasOwnProperty.call(G,r0.CHANNEL_SPANS_NOT_ENDED)){let{consumeTimeoutMs:F}=B.getConfig();if(F){let Z=setInterval(()=>{B.checkConsumeTimeoutOnChannel(G)},F);Z.unref(),G[r0.CHANNEL_CONSUME_TIMEOUT_TIMER]=Z}G[r0.CHANNEL_SPANS_NOT_ENDED]=[]}let W=function(F){var Z,U,$,E,K;if(!F)return C.call(this,F);let I=(Z=F.properties.headers)!==null&&Z!==void 0?Z:{},V=u0.propagation.extract(u0.ROOT_CONTEXT,I),H=(U=F.fields)===null||U===void 0?void 0:U.exchange,D;if(B._config.useLinksForConsume){let N=V?($=u0.trace.getSpan(V))===null||$===void 0?void 0:$.spanContext():void 0;if(V=void 0,N)D=[{context:N}]}let L=B.tracer.startSpan(`${J} process`,{kind:u0.SpanKind.CONSUMER,attributes:Object.assign(Object.assign({},(E=G===null||G===void 0?void 0:G.connection)===null||E===void 0?void 0:E[r0.CONNECTION_ATTRIBUTES]),{[Q8.SEMATTRS_MESSAGING_DESTINATION]:H,[Q8.SEMATTRS_MESSAGING_DESTINATION_KIND]:Q8.MESSAGINGDESTINATIONKINDVALUES_TOPIC,[Q8.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY]:(K=F.fields)===null||K===void 0?void 0:K.routingKey,[Q8.SEMATTRS_MESSAGING_OPERATION]:Q8.MESSAGINGOPERATIONVALUES_PROCESS,[Q8.SEMATTRS_MESSAGING_MESSAGE_ID]:F===null||F===void 0?void 0:F.properties.messageId,[Q8.SEMATTRS_MESSAGING_CONVERSATION_ID]:F===null||F===void 0?void 0:F.properties.correlationId}),links:D},V),{consumeHook:z}=B.getConfig();if(z)(0,fB.safeExecuteInTheMiddle)(()=>z(L,{moduleVersion:A,msg:F}),(N)=>{if(N)u0.diag.error("amqplib instrumentation: consumerHook error",N)},!0);if(!(X===null||X===void 0?void 0:X.noAck))G[r0.CHANNEL_SPANS_NOT_ENDED].push({msg:F,timeOfConsume:(0,xT.hrTime)()}),F[r0.MESSAGE_STORED_SPAN]=L;let M=V?V:u0.ROOT_CONTEXT;if(u0.context.with(u0.trace.setSpan(M,L),()=>{C.call(this,F)}),X===null||X===void 0?void 0:X.noAck)B.callConsumeEndHook(L,F,!1,M9.EndOperation.AutoAck),L.end()};return arguments[1]=W,Q.apply(this,arguments)}}getConfirmedPublishPatch(A,Q){let B=this;return function(J,C,X,G,W){let F=this,{span:Z,modifiedOptions:U}=B.createPublishSpan(B,J,C,F,G),{publishHook:$}=B.getConfig();if($)(0,fB.safeExecuteInTheMiddle)(()=>$(Z,{moduleVersion:A,exchange:J,routingKey:C,content:X,options:U,isConfirmChannel:!0}),(V)=>{if(V)u0.diag.error("amqplib instrumentation: publishHook error",V)},!0);let E=function(V,H){try{W===null||W===void 0||W.call(this,V,H)}finally{let{publishConfirmHook:D}=B.getConfig();if(D)(0,fB.safeExecuteInTheMiddle)(()=>D(Z,{moduleVersion:A,exchange:J,routingKey:C,content:X,options:G,isConfirmChannel:!0,confirmError:V}),(L)=>{if(L)u0.diag.error("amqplib instrumentation: publishConfirmHook error",L)},!0);if(V)Z.setStatus({code:u0.SpanStatusCode.ERROR,message:"message confirmation has been nack'ed"});Z.end()}},K=(0,r0.markConfirmChannelTracing)(u0.context.active()),I=[...arguments];return I[3]=U,I[4]=u0.context.bind((0,r0.unmarkConfirmChannelTracing)(u0.trace.setSpan(K,Z)),E),u0.context.with(K,Q.bind(this,...I))}}getPublishPatch(A,Q){let B=this;return function(J,C,X,G){if((0,r0.isConfirmChannelTracing)(u0.context.active()))return Q.apply(this,arguments);else{let W=this,{span:F,modifiedOptions:Z}=B.createPublishSpan(B,J,C,W,G),{publishHook:U}=B.getConfig();if(U)(0,fB.safeExecuteInTheMiddle)(()=>U(F,{moduleVersion:A,exchange:J,routingKey:C,content:X,options:Z,isConfirmChannel:!1}),(K)=>{if(K)u0.diag.error("amqplib instrumentation: publishHook error",K)},!0);let $=[...arguments];$[3]=Z;let E=Q.apply(this,$);return F.end(),E}}}createPublishSpan(A,Q,B,Y,J){var C;let X=(0,r0.normalizeExchange)(Q),G=A.tracer.startSpan(`publish ${X}`,{kind:u0.SpanKind.PRODUCER,attributes:Object.assign(Object.assign({},Y.connection[r0.CONNECTION_ATTRIBUTES]),{[Q8.SEMATTRS_MESSAGING_DESTINATION]:Q,[Q8.SEMATTRS_MESSAGING_DESTINATION_KIND]:Q8.MESSAGINGDESTINATIONKINDVALUES_TOPIC,[Q8.SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY]:B,[Q8.SEMATTRS_MESSAGING_MESSAGE_ID]:J===null||J===void 0?void 0:J.messageId,[Q8.SEMATTRS_MESSAGING_CONVERSATION_ID]:J===null||J===void 0?void 0:J.correlationId})}),W=J!==null&&J!==void 0?J:{};return W.headers=(C=W.headers)!==null&&C!==void 0?C:{},u0.propagation.inject(u0.trace.setSpan(u0.context.active(),G),W.headers),{span:G,modifiedOptions:W}}endConsumerSpan(A,Q,B,Y){let J=A[r0.MESSAGE_STORED_SPAN];if(!J)return;if(Q!==!1)J.setStatus({code:u0.SpanStatusCode.ERROR,message:B!==M9.EndOperation.ChannelClosed&&B!==M9.EndOperation.ChannelError?`${B} called on message${Y===!0?" with requeue":Y===!1?" without requeue":""}`:B});this.callConsumeEndHook(J,A,Q,B),J.end(),A[r0.MESSAGE_STORED_SPAN]=void 0}endAllSpansOnChannel(A,Q,B,Y){var J;((J=A[r0.CHANNEL_SPANS_NOT_ENDED])!==null&&J!==void 0?J:[]).forEach((X)=>{this.endConsumerSpan(X.msg,Q,B,Y)}),A[r0.CHANNEL_SPANS_NOT_ENDED]=[]}callConsumeEndHook(A,Q,B,Y){let{consumeEndHook:J}=this.getConfig();if(!J)return;(0,fB.safeExecuteInTheMiddle)(()=>J(A,{msg:Q,rejected:B,endOperation:Y}),(C)=>{if(C)u0.diag.error("amqplib instrumentation: consumerEndHook error",C)},!0)}checkConsumeTimeoutOnChannel(A){var Q;let B=(0,xT.hrTime)(),Y=(Q=A[r0.CHANNEL_SPANS_NOT_ENDED])!==null&&Q!==void 0?Q:[],J,{consumeTimeoutMs:C}=this.getConfig();for(J=0;J{var jR0=oW&&oW.__createBinding||(Object.create?function(A,Q,B,Y){if(Y===void 0)Y=B;Object.defineProperty(A,Y,{enumerable:!0,get:function(){return Q[B]}})}:function(A,Q,B,Y){if(Y===void 0)Y=B;A[Y]=Q[B]}),YqQ=oW&&oW.__exportStar||function(A,Q){for(var B in A)if(B!=="default"&&!Object.prototype.hasOwnProperty.call(Q,B))jR0(Q,A,B)};Object.defineProperty(oW,"__esModule",{value:!0});YqQ(BqQ(),oW);YqQ(ms(),oW)});var is=R((UqQ)=>{Object.defineProperty(UqQ,"__esModule",{value:!0});UqQ.AbstractAsyncHooksContextManager=void 0;var fR0=u("events"),bR0=["addListener","on","once","prependListener","prependOnceListener"];class $qQ{constructor(){this._kOtListeners=Symbol("OtListeners"),this._wrapped=!1}bind(A,Q){if(Q instanceof fR0.EventEmitter)return this._bindEventEmitter(A,Q);if(typeof Q==="function")return this._bindFunction(A,Q);return Q}_bindFunction(A,Q){let B=this,Y=function(...J){return B.with(A,()=>Q.apply(this,J))};return Object.defineProperty(Y,"length",{enumerable:!1,configurable:!0,writable:!1,value:Q.length}),Y}_bindEventEmitter(A,Q){if(this._getPatchMap(Q)!==void 0)return Q;if(this._createPatchMap(Q),bR0.forEach((Y)=>{if(Q[Y]===void 0)return;Q[Y]=this._patchAddListener(Q,Q[Y],A)}),typeof Q.removeListener==="function")Q.removeListener=this._patchRemoveListener(Q,Q.removeListener);if(typeof Q.off==="function")Q.off=this._patchRemoveListener(Q,Q.off);if(typeof Q.removeAllListeners==="function")Q.removeAllListeners=this._patchRemoveAllListeners(Q,Q.removeAllListeners);return Q}_patchRemoveListener(A,Q){let B=this;return function(Y,J){var C;let X=(C=B._getPatchMap(A))===null||C===void 0?void 0:C[Y];if(X===void 0)return Q.call(this,Y,J);let G=X.get(J);return Q.call(this,Y,G||J)}}_patchRemoveAllListeners(A,Q){let B=this;return function(Y){let J=B._getPatchMap(A);if(J!==void 0){if(arguments.length===0)B._createPatchMap(A);else if(J[Y]!==void 0)delete J[Y]}return Q.apply(this,arguments)}}_patchAddListener(A,Q,B){let Y=this;return function(J,C){if(Y._wrapped)return Q.call(this,J,C);let X=Y._getPatchMap(A);if(X===void 0)X=Y._createPatchMap(A);let G=X[J];if(G===void 0)G=new WeakMap,X[J]=G;let W=Y.bind(B,C);G.set(C,W),Y._wrapped=!0;try{return Q.call(this,J,W)}finally{Y._wrapped=!1}}}_createPatchMap(A){let Q=Object.create(null);return A[this._kOtListeners]=Q,Q}_getPatchMap(A){return A[this._kOtListeners]}}UqQ.AbstractAsyncHooksContextManager=$qQ});var HqQ=R((VqQ)=>{Object.defineProperty(VqQ,"__esModule",{value:!0});VqQ.AsyncHooksContextManager=void 0;var mR0=yA(),uR0=u("async_hooks"),dR0=is();class KqQ extends dR0.AbstractAsyncHooksContextManager{constructor(){super();this._contexts=new Map,this._stack=[],this._asyncHook=uR0.createHook({init:this._init.bind(this),before:this._before.bind(this),after:this._after.bind(this),destroy:this._destroy.bind(this),promiseResolve:this._destroy.bind(this)})}active(){var A;return(A=this._stack[this._stack.length-1])!==null&&A!==void 0?A:mR0.ROOT_CONTEXT}with(A,Q,B,...Y){this._enterContext(A);try{return Q.call(B,...Y)}finally{this._exitContext()}}enable(){return this._asyncHook.enable(),this}disable(){return this._asyncHook.disable(),this._contexts.clear(),this._stack=[],this}_init(A,Q){if(Q==="TIMERWRAP")return;let B=this._stack[this._stack.length-1];if(B!==void 0)this._contexts.set(A,B)}_destroy(A){this._contexts.delete(A)}_before(A){let Q=this._contexts.get(A);if(Q!==void 0)this._enterContext(Q)}_after(){this._exitContext()}_enterContext(A){this._stack.push(A)}_exitContext(){this._stack.pop()}}VqQ.AsyncHooksContextManager=KqQ});var qqQ=R((NqQ)=>{Object.defineProperty(NqQ,"__esModule",{value:!0});NqQ.AsyncLocalStorageContextManager=void 0;var cR0=yA(),lR0=u("async_hooks"),pR0=is();class DqQ extends pR0.AbstractAsyncHooksContextManager{constructor(){super();this._asyncLocalStorage=new lR0.AsyncLocalStorage}active(){var A;return(A=this._asyncLocalStorage.getStore())!==null&&A!==void 0?A:cR0.ROOT_CONTEXT}with(A,Q,B,...Y){let J=B==null?Q:Q.bind(B);return this._asyncLocalStorage.run(A,J,...Y)}enable(){return this}disable(){return this._asyncLocalStorage.disable(),this}}NqQ.AsyncLocalStorageContextManager=DqQ});var MqQ=R((cT)=>{Object.defineProperty(cT,"__esModule",{value:!0});cT.AsyncLocalStorageContextManager=cT.AsyncHooksContextManager=void 0;var iR0=HqQ();Object.defineProperty(cT,"AsyncHooksContextManager",{enumerable:!0,get:function(){return iR0.AsyncHooksContextManager}});var nR0=qqQ();Object.defineProperty(cT,"AsyncLocalStorageContextManager",{enumerable:!0,get:function(){return nR0.AsyncLocalStorageContextManager}})});var B0=R((MsY,lqQ)=>{lqQ.exports={kClose:Symbol("close"),kDestroy:Symbol("destroy"),kDispatch:Symbol("dispatch"),kUrl:Symbol("url"),kWriting:Symbol("writing"),kResuming:Symbol("resuming"),kQueue:Symbol("queue"),kConnect:Symbol("connect"),kConnecting:Symbol("connecting"),kKeepAliveDefaultTimeout:Symbol("default keep alive timeout"),kKeepAliveMaxTimeout:Symbol("max keep alive timeout"),kKeepAliveTimeoutThreshold:Symbol("keep alive timeout threshold"),kKeepAliveTimeoutValue:Symbol("keep alive timeout"),kKeepAlive:Symbol("keep alive"),kHeadersTimeout:Symbol("headers timeout"),kBodyTimeout:Symbol("body timeout"),kServerName:Symbol("server name"),kLocalAddress:Symbol("local address"),kHost:Symbol("host"),kNoRef:Symbol("no ref"),kBodyUsed:Symbol("used"),kBody:Symbol("abstracted request body"),kRunning:Symbol("running"),kBlocking:Symbol("blocking"),kPending:Symbol("pending"),kSize:Symbol("size"),kBusy:Symbol("busy"),kQueued:Symbol("queued"),kFree:Symbol("free"),kConnected:Symbol("connected"),kClosed:Symbol("closed"),kNeedDrain:Symbol("need drain"),kReset:Symbol("reset"),kDestroyed:Symbol.for("nodejs.stream.destroyed"),kResume:Symbol("resume"),kOnError:Symbol("on error"),kMaxHeadersSize:Symbol("max headers size"),kRunningIdx:Symbol("running index"),kPendingIdx:Symbol("pending index"),kError:Symbol("error"),kClients:Symbol("clients"),kClient:Symbol("client"),kParser:Symbol("parser"),kOnDestroyed:Symbol("destroy callbacks"),kPipelining:Symbol("pipelining"),kSocket:Symbol("socket"),kHostHeader:Symbol("host header"),kConnector:Symbol("connector"),kStrictContentLength:Symbol("strict content length"),kMaxRedirections:Symbol("maxRedirections"),kMaxRequests:Symbol("maxRequestsPerClient"),kProxy:Symbol("proxy agent options"),kCounter:Symbol("socket request counter"),kMaxResponseSize:Symbol("max response size"),kHTTP2Session:Symbol("http2Session"),kHTTP2SessionState:Symbol("http2Session state"),kRetryHandlerDefaultRetry:Symbol("retry agent default retry"),kConstruct:Symbol("constructable"),kListeners:Symbol("listeners"),kHTTPContext:Symbol("http context"),kMaxConcurrentStreams:Symbol("max concurrent streams"),kNoProxyAgent:Symbol("no proxy agent"),kHttpProxyAgent:Symbol("http proxy agent"),kHttpsProxyAgent:Symbol("https proxy agent")}});var Fr=R((zsY,sqQ)=>{var cK=0,Br=1000,Yr=(Br>>1)-1,tW,Jr=Symbol("kFastTimer"),kG=[],Cr=-2,Xr=-1,iqQ=0,pqQ=1;function Gr(){cK+=Yr;let A=0,Q=kG.length;while(A=B._idleStart+B._idleTimeout)B._state=Xr,B._idleStart=-1,B._onTimeout(B._timerArg);if(B._state===Xr){if(B._state=Cr,--Q!==0)kG[A]=kG[Q]}else++A}if(kG.length=Q,kG.length!==0)nqQ()}function nqQ(){if(tW?.refresh)tW.refresh();else clearTimeout(tW),tW=setTimeout(Gr,Yr),tW?.unref()}class Wr{[Jr]=!0;_state=Cr;_idleTimeout=-1;_idleStart=-1;_onTimeout;_timerArg;constructor(A,Q,B){this._onTimeout=A,this._idleTimeout=Q,this._timerArg=B,this.refresh()}refresh(){if(this._state===Cr)kG.push(this);if(!tW||kG.length===1)nqQ();this._state=iqQ}clear(){this._state=Xr,this._idleStart=-1}}sqQ.exports={setTimeout(A,Q,B){return Q<=Br?setTimeout(A,Q,B):new Wr(A,Q,B)},clearTimeout(A){if(A[Jr])A.clear();else clearTimeout(A)},setFastTimeout(A,Q,B){return new Wr(A,Q,B)},clearFastTimeout(A){A.clear()},now(){return cK},tick(A=0){cK+=A-Br+1,Gr(),Gr()},reset(){cK=0,kG.length=0,clearTimeout(tW),tW=null},kFastTimer:Jr}});var QB=R((RsY,bMQ)=>{var rqQ=Symbol.for("undici.error.UND_ERR");class a0 extends Error{constructor(A,Q){super(A,Q);this.name="UndiciError",this.code="UND_ERR"}static[Symbol.hasInstance](A){return A&&A[rqQ]===!0}get[rqQ](){return!0}}var aqQ=Symbol.for("undici.error.UND_ERR_CONNECT_TIMEOUT");class DMQ extends a0{constructor(A){super(A);this.name="ConnectTimeoutError",this.message=A||"Connect Timeout Error",this.code="UND_ERR_CONNECT_TIMEOUT"}static[Symbol.hasInstance](A){return A&&A[aqQ]===!0}get[aqQ](){return!0}}var oqQ=Symbol.for("undici.error.UND_ERR_HEADERS_TIMEOUT");class NMQ extends a0{constructor(A){super(A);this.name="HeadersTimeoutError",this.message=A||"Headers Timeout Error",this.code="UND_ERR_HEADERS_TIMEOUT"}static[Symbol.hasInstance](A){return A&&A[oqQ]===!0}get[oqQ](){return!0}}var tqQ=Symbol.for("undici.error.UND_ERR_HEADERS_OVERFLOW");class LMQ extends a0{constructor(A){super(A);this.name="HeadersOverflowError",this.message=A||"Headers Overflow Error",this.code="UND_ERR_HEADERS_OVERFLOW"}static[Symbol.hasInstance](A){return A&&A[tqQ]===!0}get[tqQ](){return!0}}var eqQ=Symbol.for("undici.error.UND_ERR_BODY_TIMEOUT");class qMQ extends a0{constructor(A){super(A);this.name="BodyTimeoutError",this.message=A||"Body Timeout Error",this.code="UND_ERR_BODY_TIMEOUT"}static[Symbol.hasInstance](A){return A&&A[eqQ]===!0}get[eqQ](){return!0}}var AMQ=Symbol.for("undici.error.UND_ERR_INVALID_ARG");class MMQ extends a0{constructor(A){super(A);this.name="InvalidArgumentError",this.message=A||"Invalid Argument Error",this.code="UND_ERR_INVALID_ARG"}static[Symbol.hasInstance](A){return A&&A[AMQ]===!0}get[AMQ](){return!0}}var QMQ=Symbol.for("undici.error.UND_ERR_INVALID_RETURN_VALUE");class zMQ extends a0{constructor(A){super(A);this.name="InvalidReturnValueError",this.message=A||"Invalid Return Value Error",this.code="UND_ERR_INVALID_RETURN_VALUE"}static[Symbol.hasInstance](A){return A&&A[QMQ]===!0}get[QMQ](){return!0}}var BMQ=Symbol.for("undici.error.UND_ERR_ABORT");class Zr extends a0{constructor(A){super(A);this.name="AbortError",this.message=A||"The operation was aborted",this.code="UND_ERR_ABORT"}static[Symbol.hasInstance](A){return A&&A[BMQ]===!0}get[BMQ](){return!0}}var YMQ=Symbol.for("undici.error.UND_ERR_ABORTED");class RMQ extends Zr{constructor(A){super(A);this.name="AbortError",this.message=A||"Request aborted",this.code="UND_ERR_ABORTED"}static[Symbol.hasInstance](A){return A&&A[YMQ]===!0}get[YMQ](){return!0}}var JMQ=Symbol.for("undici.error.UND_ERR_INFO");class wMQ extends a0{constructor(A){super(A);this.name="InformationalError",this.message=A||"Request information",this.code="UND_ERR_INFO"}static[Symbol.hasInstance](A){return A&&A[JMQ]===!0}get[JMQ](){return!0}}var CMQ=Symbol.for("undici.error.UND_ERR_REQ_CONTENT_LENGTH_MISMATCH");class jMQ extends a0{constructor(A){super(A);this.name="RequestContentLengthMismatchError",this.message=A||"Request body length does not match content-length header",this.code="UND_ERR_REQ_CONTENT_LENGTH_MISMATCH"}static[Symbol.hasInstance](A){return A&&A[CMQ]===!0}get[CMQ](){return!0}}var XMQ=Symbol.for("undici.error.UND_ERR_RES_CONTENT_LENGTH_MISMATCH");class OMQ extends a0{constructor(A){super(A);this.name="ResponseContentLengthMismatchError",this.message=A||"Response body length does not match content-length header",this.code="UND_ERR_RES_CONTENT_LENGTH_MISMATCH"}static[Symbol.hasInstance](A){return A&&A[XMQ]===!0}get[XMQ](){return!0}}var GMQ=Symbol.for("undici.error.UND_ERR_DESTROYED");class PMQ extends a0{constructor(A){super(A);this.name="ClientDestroyedError",this.message=A||"The client is destroyed",this.code="UND_ERR_DESTROYED"}static[Symbol.hasInstance](A){return A&&A[GMQ]===!0}get[GMQ](){return!0}}var WMQ=Symbol.for("undici.error.UND_ERR_CLOSED");class TMQ extends a0{constructor(A){super(A);this.name="ClientClosedError",this.message=A||"The client is closed",this.code="UND_ERR_CLOSED"}static[Symbol.hasInstance](A){return A&&A[WMQ]===!0}get[WMQ](){return!0}}var FMQ=Symbol.for("undici.error.UND_ERR_SOCKET");class SMQ extends a0{constructor(A,Q){super(A);this.name="SocketError",this.message=A||"Socket error",this.code="UND_ERR_SOCKET",this.socket=Q}static[Symbol.hasInstance](A){return A&&A[FMQ]===!0}get[FMQ](){return!0}}var ZMQ=Symbol.for("undici.error.UND_ERR_NOT_SUPPORTED");class kMQ extends a0{constructor(A){super(A);this.name="NotSupportedError",this.message=A||"Not supported error",this.code="UND_ERR_NOT_SUPPORTED"}static[Symbol.hasInstance](A){return A&&A[ZMQ]===!0}get[ZMQ](){return!0}}var $MQ=Symbol.for("undici.error.UND_ERR_BPL_MISSING_UPSTREAM");class _MQ extends a0{constructor(A){super(A);this.name="MissingUpstreamError",this.message=A||"No upstream has been added to the BalancedPool",this.code="UND_ERR_BPL_MISSING_UPSTREAM"}static[Symbol.hasInstance](A){return A&&A[$MQ]===!0}get[$MQ](){return!0}}var UMQ=Symbol.for("undici.error.UND_ERR_HTTP_PARSER");class vMQ extends Error{constructor(A,Q,B){super(A);this.name="HTTPParserError",this.code=Q?`HPE_${Q}`:void 0,this.data=B?B.toString():void 0}static[Symbol.hasInstance](A){return A&&A[UMQ]===!0}get[UMQ](){return!0}}var EMQ=Symbol.for("undici.error.UND_ERR_RES_EXCEEDED_MAX_SIZE");class yMQ extends a0{constructor(A){super(A);this.name="ResponseExceededMaxSizeError",this.message=A||"Response content exceeded max size",this.code="UND_ERR_RES_EXCEEDED_MAX_SIZE"}static[Symbol.hasInstance](A){return A&&A[EMQ]===!0}get[EMQ](){return!0}}var KMQ=Symbol.for("undici.error.UND_ERR_REQ_RETRY");class gMQ extends a0{constructor(A,Q,{headers:B,data:Y}){super(A);this.name="RequestRetryError",this.message=A||"Request retry error",this.code="UND_ERR_REQ_RETRY",this.statusCode=Q,this.data=Y,this.headers=B}static[Symbol.hasInstance](A){return A&&A[KMQ]===!0}get[KMQ](){return!0}}var VMQ=Symbol.for("undici.error.UND_ERR_RESPONSE");class hMQ extends a0{constructor(A,Q,{headers:B,body:Y}){super(A);this.name="ResponseError",this.message=A||"Response error",this.code="UND_ERR_RESPONSE",this.statusCode=Q,this.body=Y,this.headers=B}static[Symbol.hasInstance](A){return A&&A[VMQ]===!0}get[VMQ](){return!0}}var IMQ=Symbol.for("undici.error.UND_ERR_PRX_TLS");class xMQ extends a0{constructor(A,Q,B={}){super(Q,{cause:A,...B});this.name="SecureProxyConnectionError",this.message=Q||"Secure Proxy Connection failed",this.code="UND_ERR_PRX_TLS",this.cause=A}static[Symbol.hasInstance](A){return A&&A[IMQ]===!0}get[IMQ](){return!0}}var HMQ=Symbol.for("undici.error.UND_ERR_MAX_ORIGINS_REACHED");class fMQ extends a0{constructor(A){super(A);this.name="MaxOriginsReachedError",this.message=A||"Maximum allowed origins reached",this.code="UND_ERR_MAX_ORIGINS_REACHED"}static[Symbol.hasInstance](A){return A&&A[HMQ]===!0}get[HMQ](){return!0}}bMQ.exports={AbortError:Zr,HTTPParserError:vMQ,UndiciError:a0,HeadersTimeoutError:NMQ,HeadersOverflowError:LMQ,BodyTimeoutError:qMQ,RequestContentLengthMismatchError:jMQ,ConnectTimeoutError:DMQ,InvalidArgumentError:MMQ,InvalidReturnValueError:zMQ,RequestAbortedError:RMQ,ClientDestroyedError:PMQ,ClientClosedError:TMQ,InformationalError:wMQ,SocketError:SMQ,NotSupportedError:kMQ,ResponseContentLengthMismatchError:OMQ,BalancedPoolMissingUpstreamError:_MQ,ResponseExceededMaxSizeError:yMQ,RequestRetryError:gMQ,ResponseError:hMQ,SecureProxyConnectionError:xMQ,MaxOriginsReachedError:fMQ}});var BS=R((wsY,uMQ)=>{var $r=["Accept","Accept-Encoding","Accept-Language","Accept-Ranges","Access-Control-Allow-Credentials","Access-Control-Allow-Headers","Access-Control-Allow-Methods","Access-Control-Allow-Origin","Access-Control-Expose-Headers","Access-Control-Max-Age","Access-Control-Request-Headers","Access-Control-Request-Method","Age","Allow","Alt-Svc","Alt-Used","Authorization","Cache-Control","Clear-Site-Data","Connection","Content-Disposition","Content-Encoding","Content-Language","Content-Length","Content-Location","Content-Range","Content-Security-Policy","Content-Security-Policy-Report-Only","Content-Type","Cookie","Cross-Origin-Embedder-Policy","Cross-Origin-Opener-Policy","Cross-Origin-Resource-Policy","Date","Device-Memory","Downlink","ECT","ETag","Expect","Expect-CT","Expires","Forwarded","From","Host","If-Match","If-Modified-Since","If-None-Match","If-Range","If-Unmodified-Since","Keep-Alive","Last-Modified","Link","Location","Max-Forwards","Origin","Permissions-Policy","Pragma","Proxy-Authenticate","Proxy-Authorization","RTT","Range","Referer","Referrer-Policy","Refresh","Retry-After","Sec-WebSocket-Accept","Sec-WebSocket-Extensions","Sec-WebSocket-Key","Sec-WebSocket-Protocol","Sec-WebSocket-Version","Server","Server-Timing","Service-Worker-Allowed","Service-Worker-Navigation-Preload","Set-Cookie","SourceMap","Strict-Transport-Security","Supports-Loading-Mode","TE","Timing-Allow-Origin","Trailer","Transfer-Encoding","Upgrade","Upgrade-Insecure-Requests","User-Agent","Vary","Via","WWW-Authenticate","X-Content-Type-Options","X-DNS-Prefetch-Control","X-Frame-Options","X-Permitted-Cross-Domain-Policies","X-Powered-By","X-Requested-With","X-XSS-Protection"],QS={};Object.setPrototypeOf(QS,null);var mMQ={};Object.setPrototypeOf(mMQ,null);function Mw0(A){let Q=mMQ[A];if(Q===void 0)Q=Buffer.from(A);return Q}for(let A=0;A<$r.length;++A){let Q=$r[A],B=Q.toLowerCase();QS[Q]=QS[B]=B}uMQ.exports={wellknownHeaderNames:$r,headerNameLowerCasedRecord:QS,getHeaderNameAsBuffer:Mw0}});var pMQ=R((jsY,lMQ)=>{var{wellknownHeaderNames:dMQ,headerNameLowerCasedRecord:zw0}=BS();class lK{value=null;left=null;middle=null;right=null;code;constructor(A,Q,B){if(B===void 0||B>=A.length)throw TypeError("Unreachable");if((this.code=A.charCodeAt(B))>127)throw TypeError("key must be ascii string");if(A.length!==++B)this.middle=new lK(A,Q,B);else this.value=Q}add(A,Q){let B=A.length;if(B===0)throw TypeError("Unreachable");let Y=0,J=this;while(!0){let C=A.charCodeAt(Y);if(C>127)throw TypeError("key must be ascii string");if(J.code===C)if(B===++Y){J.value=Q;break}else if(J.middle!==null)J=J.middle;else{J.middle=new lK(A,Q,Y);break}else if(J.code=65)J|=32;while(Y!==null){if(J===Y.code){if(Q===++B)return Y;Y=Y.middle;break}Y=Y.code{var Wq=u("node:assert"),{kDestroyed:rMQ,kBodyUsed:pK,kListeners:JS,kBody:iMQ}=B0(),{IncomingMessage:Rw0}=u("node:http"),aMQ=u("node:stream"),ww0=u("node:net"),{stringify:jw0}=u("node:querystring"),{EventEmitter:Ow0}=u("node:events"),YS=Fr(),{InvalidArgumentError:oY,ConnectTimeoutError:Pw0}=QB(),{headerNameLowerCasedRecord:Tw0}=BS(),{tree:oMQ}=pMQ(),[Sw0,kw0]=process.versions.node.split(".",2).map((A)=>Number(A));class Er{constructor(A){this[iMQ]=A,this[pK]=!1}async*[Symbol.asyncIterator](){Wq(!this[pK],"disturbed"),this[pK]=!0,yield*this[iMQ]}}function nMQ(){}function _w0(A){if(XS(A)){if(YzQ(A)===0)A.on("data",function(){Wq(!1)});if(typeof A.readableDidRead!=="boolean")A[pK]=!1,Ow0.prototype.on.call(A,"data",function(){this[pK]=!0});return A}else if(A&&typeof A.pipeTo==="function")return new Er(A);else if(A&&typeof A!=="string"&&!ArrayBuffer.isView(A)&&BzQ(A))return new Er(A);else return A}function XS(A){return A&&typeof A==="object"&&typeof A.pipe==="function"&&typeof A.on==="function"}function tMQ(A){if(A===null)return!1;else if(A instanceof Blob)return!0;else if(typeof A!=="object")return!1;else{let Q=A[Symbol.toStringTag];return(Q==="Blob"||Q==="File")&&(("stream"in A)&&typeof A.stream==="function"||("arrayBuffer"in A)&&typeof A.arrayBuffer==="function")}}function eMQ(A){return A.includes("?")||A.includes("#")}function vw0(A,Q){if(eMQ(A))throw Error('Query params cannot be passed when url already contains "?" or "#".');let B=jw0(Q);if(B)A+="?"+B;return A}function AzQ(A){let Q=parseInt(A,10);return Q===Number(A)&&Q>=0&&Q<=65535}function CS(A){return A!=null&&A[0]==="h"&&A[1]==="t"&&A[2]==="t"&&A[3]==="p"&&(A[4]===":"||A[4]==="s"&&A[5]===":")}function QzQ(A){if(typeof A==="string"){if(A=new URL(A),!CS(A.origin||A.protocol))throw new oY("Invalid URL protocol: the URL must start with `http:` or `https:`.");return A}if(!A||typeof A!=="object")throw new oY("Invalid URL: The URL argument must be a non-null object.");if(!(A instanceof URL)){if(A.port!=null&&A.port!==""&&AzQ(A.port)===!1)throw new oY("Invalid URL: port must be a valid integer or a string representation of an integer.");if(A.path!=null&&typeof A.path!=="string")throw new oY("Invalid URL path: the path must be a string or null/undefined.");if(A.pathname!=null&&typeof A.pathname!=="string")throw new oY("Invalid URL pathname: the pathname must be a string or null/undefined.");if(A.hostname!=null&&typeof A.hostname!=="string")throw new oY("Invalid URL hostname: the hostname must be a string or null/undefined.");if(A.origin!=null&&typeof A.origin!=="string")throw new oY("Invalid URL origin: the origin must be a string or null/undefined.");if(!CS(A.origin||A.protocol))throw new oY("Invalid URL protocol: the URL must start with `http:` or `https:`.");let Q=A.port!=null?A.port:A.protocol==="https:"?443:80,B=A.origin!=null?A.origin:`${A.protocol||""}//${A.hostname||""}:${Q}`,Y=A.path!=null?A.path:`${A.pathname||""}${A.search||""}`;if(B[B.length-1]==="/")B=B.slice(0,B.length-1);if(Y&&Y[0]!=="/")Y=`/${Y}`;return new URL(`${B}${Y}`)}if(!CS(A.origin||A.protocol))throw new oY("Invalid URL protocol: the URL must start with `http:` or `https:`.");return A}function yw0(A){if(A=QzQ(A),A.pathname!=="/"||A.search||A.hash)throw new oY("invalid url");return A}function gw0(A){if(A[0]==="["){let B=A.indexOf("]");return Wq(B!==-1),A.substring(1,B)}let Q=A.indexOf(":");if(Q===-1)return A;return A.substring(0,Q)}function hw0(A){if(!A)return null;Wq(typeof A==="string");let Q=gw0(A);if(ww0.isIP(Q))return"";return Q}function xw0(A){return JSON.parse(JSON.stringify(A))}function fw0(A){return A!=null&&typeof A[Symbol.asyncIterator]==="function"}function BzQ(A){return A!=null&&(typeof A[Symbol.iterator]==="function"||typeof A[Symbol.asyncIterator]==="function")}function YzQ(A){if(A==null)return 0;else if(XS(A)){let Q=A._readableState;return Q&&Q.objectMode===!1&&Q.ended===!0&&Number.isFinite(Q.length)?Q.length:null}else if(tMQ(A))return A.size!=null?A.size:null;else if(GzQ(A))return A.byteLength;return null}function JzQ(A){return A&&!!(A.destroyed||A[rMQ]||aMQ.isDestroyed?.(A))}function CzQ(A,Q){if(A==null||!XS(A)||JzQ(A))return;if(typeof A.destroy==="function"){if(Object.getPrototypeOf(A).constructor===Rw0)A.socket=null;A.destroy(Q)}else if(Q)queueMicrotask(()=>{A.emit("error",Q)});if(A.destroyed!==!0)A[rMQ]=!0}var bw0=/timeout=(\d+)/;function mw0(A){let Q=A.match(bw0);return Q?parseInt(Q[1],10)*1000:null}function XzQ(A){return typeof A==="string"?Tw0[A]??A.toLowerCase():oMQ.lookup(A)??A.toString("latin1").toLowerCase()}function uw0(A){return oMQ.lookup(A)??A.toString("latin1").toLowerCase()}function dw0(A,Q){if(Q===void 0)Q={};for(let B=0;BX.toString("utf8")):C.toString("utf8")}}if("content-length"in Q&&"content-disposition"in Q)Q["content-disposition"]=Buffer.from(Q["content-disposition"]).toString("latin1");return Q}function cw0(A){let Q=A.length,B=Array(Q),Y=!1,J=-1,C,X,G=0;for(let W=0;WBuffer.from(Q))}function GzQ(A){return A instanceof Uint8Array||Buffer.isBuffer(A)}function pw0(A,Q,B){if(!A||typeof A!=="object")throw new oY("handler must be an object");if(typeof A.onRequestStart==="function")return;if(typeof A.onConnect!=="function")throw new oY("invalid onConnect method");if(typeof A.onError!=="function")throw new oY("invalid onError method");if(typeof A.onBodySent!=="function"&&A.onBodySent!==void 0)throw new oY("invalid onBodySent method");if(B||Q==="CONNECT"){if(typeof A.onUpgrade!=="function")throw new oY("invalid onUpgrade method")}else{if(typeof A.onHeaders!=="function")throw new oY("invalid onHeaders method");if(typeof A.onData!=="function")throw new oY("invalid onData method");if(typeof A.onComplete!=="function")throw new oY("invalid onComplete method")}}function iw0(A){return!!(A&&(aMQ.isDisturbed(A)||A[pK]))}function nw0(A){return{localAddress:A.localAddress,localPort:A.localPort,remoteAddress:A.remoteAddress,remotePort:A.remotePort,remoteFamily:A.remoteFamily,timeout:A.timeout,bytesWritten:A.bytesWritten,bytesRead:A.bytesRead}}function sw0(A){let Q;return new ReadableStream({start(){Q=A[Symbol.asyncIterator]()},pull(B){return Q.next().then(({done:Y,value:J})=>{if(Y)queueMicrotask(()=>{B.close(),B.byobRequest?.respond(0)});else{let C=Buffer.isBuffer(J)?J:Buffer.from(J);if(C.byteLength)B.enqueue(new Uint8Array(C));else return this.pull(B)}})},cancel(){return Q.return()},type:"bytes"})}function rw0(A){return A&&typeof A==="object"&&typeof A.append==="function"&&typeof A.delete==="function"&&typeof A.get==="function"&&typeof A.getAll==="function"&&typeof A.has==="function"&&typeof A.set==="function"&&A[Symbol.toStringTag]==="FormData"}function aw0(A,Q){if("addEventListener"in A)return A.addEventListener("abort",Q,{once:!0}),()=>A.removeEventListener("abort",Q);return A.once("abort",Q),()=>A.removeListener("abort",Q)}function WzQ(A){switch(A){case 34:case 40:case 41:case 44:case 47:case 58:case 59:case 60:case 61:case 62:case 63:case 64:case 91:case 92:case 93:case 123:case 125:return!1;default:return A>=33&&A<=126}}function ow0(A){if(A.length===0)return!1;for(let Q=0;Q{if(!Q.timeout)return nMQ;let B=null,Y=null,J=YS.setFastTimeout(()=>{B=setImmediate(()=>{Y=setImmediate(()=>sMQ(A.deref(),Q))})},Q.timeout);return()=>{YS.clearFastTimeout(J),clearImmediate(B),clearImmediate(Y)}}:(A,Q)=>{if(!Q.timeout)return nMQ;let B=null,Y=YS.setFastTimeout(()=>{B=setImmediate(()=>{sMQ(A.deref(),Q)})},Q.timeout);return()=>{YS.clearFastTimeout(Y),clearImmediate(B)}};function sMQ(A,Q){if(A==null)return;let B="Connect Timeout Error";if(Array.isArray(A.autoSelectFamilyAttemptedAddresses))B+=` (attempted addresses: ${A.autoSelectFamilyAttemptedAddresses.join(", ")},`;else B+=` (attempted address: ${Q.hostname}:${Q.port},`;B+=` timeout: ${Q.timeout}ms)`,CzQ(A,new Pw0(B))}function Xj0(A){if(A[0]==="h"&&A[1]==="t"&&A[2]==="t"&&A[3]==="p")switch(A[4]){case":":return"http:";case"s":if(A[5]===":")return"https:"}return A.slice(0,A.indexOf(":")+1)}var FzQ=Object.create(null);FzQ.enumerable=!0;var Kr={delete:"DELETE",DELETE:"DELETE",get:"GET",GET:"GET",head:"HEAD",HEAD:"HEAD",options:"OPTIONS",OPTIONS:"OPTIONS",post:"POST",POST:"POST",put:"PUT",PUT:"PUT"},ZzQ={...Kr,patch:"patch",PATCH:"PATCH"};Object.setPrototypeOf(Kr,null);Object.setPrototypeOf(ZzQ,null);$zQ.exports={kEnumerableProperty:FzQ,isDisturbed:iw0,isBlobLike:tMQ,parseOrigin:yw0,parseURL:QzQ,getServerName:hw0,isStream:XS,isIterable:BzQ,isAsyncIterable:fw0,isDestroyed:JzQ,headerNameToString:XzQ,bufferToLowerCasedHeaderName:uw0,addListener:Bj0,removeAllListeners:Yj0,errorRequest:Jj0,parseRawHeaders:cw0,encodeRawHeaders:lw0,parseHeaders:dw0,parseKeepAliveTimeout:mw0,destroy:CzQ,bodyLength:YzQ,deepClone:xw0,ReadableStreamFrom:sw0,isBuffer:GzQ,assertRequestHandler:pw0,getSocketInfo:nw0,isFormDataLike:rw0,pathHasQueryOrFragment:eMQ,serializePathWithQuery:vw0,addAbortListener:aw0,isValidHTTPToken:ow0,isValidHeaderValue:ew0,isTokenCharCode:WzQ,parseRangeHeader:Qj0,normalizedMethodRecordsBase:Kr,normalizedMethodRecords:ZzQ,isValidPort:AzQ,isHttpOrHttpsPrefixed:CS,nodeMajor:Sw0,nodeMinor:kw0,safeHTTPMethods:Object.freeze(["GET","HEAD","OPTIONS","TRACE"]),wrapRequestBody:_w0,setupConnectTimeout:Cj0,getProtocolFromUrlString:Xj0}});var Vr=R((PsY,DzQ)=>{var{kConnected:UzQ,kPending:EzQ,kRunning:KzQ,kSize:VzQ,kFree:Gj0,kQueued:Wj0}=B0();class IzQ{constructor(A){this.connected=A[UzQ],this.pending=A[EzQ],this.running=A[KzQ],this.size=A[VzQ]}}class HzQ{constructor(A){this.connected=A[UzQ],this.free=A[Gj0],this.pending=A[EzQ],this.queued=A[Wj0],this.running=A[KzQ],this.size=A[VzQ]}}DzQ.exports={ClientStats:IzQ,PoolStats:HzQ}});var f$=R((TsY,zzQ)=>{var aB=u("node:diagnostics_channel"),Ir=u("node:util"),x$=Ir.debuglog("undici"),Fq=Ir.debuglog("fetch"),GS=Ir.debuglog("websocket"),Fj0={beforeConnect:aB.channel("undici:client:beforeConnect"),connected:aB.channel("undici:client:connected"),connectError:aB.channel("undici:client:connectError"),sendHeaders:aB.channel("undici:client:sendHeaders"),create:aB.channel("undici:request:create"),bodySent:aB.channel("undici:request:bodySent"),bodyChunkSent:aB.channel("undici:request:bodyChunkSent"),bodyChunkReceived:aB.channel("undici:request:bodyChunkReceived"),headers:aB.channel("undici:request:headers"),trailers:aB.channel("undici:request:trailers"),error:aB.channel("undici:request:error"),open:aB.channel("undici:websocket:open"),close:aB.channel("undici:websocket:close"),socketError:aB.channel("undici:websocket:socket_error"),ping:aB.channel("undici:websocket:ping"),pong:aB.channel("undici:websocket:pong")},NzQ=!1;function MzQ(A=x$){if(NzQ)return;NzQ=!0,aB.subscribe("undici:client:beforeConnect",(Q)=>{let{connectParams:{version:B,protocol:Y,port:J,host:C}}=Q;A("connecting to %s%s using %s%s",C,J?`:${J}`:"",Y,B)}),aB.subscribe("undici:client:connected",(Q)=>{let{connectParams:{version:B,protocol:Y,port:J,host:C}}=Q;A("connected to %s%s using %s%s",C,J?`:${J}`:"",Y,B)}),aB.subscribe("undici:client:connectError",(Q)=>{let{connectParams:{version:B,protocol:Y,port:J,host:C},error:X}=Q;A("connection to %s%s using %s%s errored - %s",C,J?`:${J}`:"",Y,B,X.message)}),aB.subscribe("undici:client:sendHeaders",(Q)=>{let{request:{method:B,path:Y,origin:J}}=Q;A("sending request to %s %s%s",B,J,Y)})}var LzQ=!1;function Zj0(A=x$){if(LzQ)return;LzQ=!0,aB.subscribe("undici:request:headers",(Q)=>{let{request:{method:B,path:Y,origin:J},response:{statusCode:C}}=Q;A("received response to %s %s%s - HTTP %d",B,J,Y,C)}),aB.subscribe("undici:request:trailers",(Q)=>{let{request:{method:B,path:Y,origin:J}}=Q;A("trailers received from %s %s%s",B,J,Y)}),aB.subscribe("undici:request:error",(Q)=>{let{request:{method:B,path:Y,origin:J},error:C}=Q;A("request to %s %s%s errored - %s",B,J,Y,C.message)})}var qzQ=!1;function $j0(A=GS){if(qzQ)return;qzQ=!0,aB.subscribe("undici:websocket:open",(Q)=>{let{address:{address:B,port:Y}}=Q;A("connection opened %s%s",B,Y?`:${Y}`:"")}),aB.subscribe("undici:websocket:close",(Q)=>{let{websocket:B,code:Y,reason:J}=Q;A("closed connection to %s - %s %s",B.url,Y,J)}),aB.subscribe("undici:websocket:socket_error",(Q)=>{A("connection errored - %s",Q.message)}),aB.subscribe("undici:websocket:ping",(Q)=>{A("ping received")}),aB.subscribe("undici:websocket:pong",(Q)=>{A("pong received")})}if(x$.enabled||Fq.enabled)MzQ(Fq.enabled?Fq:x$),Zj0(Fq.enabled?Fq:x$);if(GS.enabled)MzQ(x$.enabled?x$:GS),$j0(GS);zzQ.exports={channels:Fj0}});var TzQ=R((SsY,PzQ)=>{var{InvalidArgumentError:N0,NotSupportedError:Uj0}=QB(),zX=u("node:assert"),{isValidHTTPToken:jzQ,isValidHeaderValue:RzQ,isStream:Ej0,destroy:Kj0,isBuffer:Vj0,isFormDataLike:Ij0,isIterable:Hj0,isBlobLike:Dj0,serializePathWithQuery:Nj0,assertRequestHandler:Lj0,getServerName:qj0,normalizedMethodRecords:Mj0,getProtocolFromUrlString:zj0}=lQ(),{channels:B8}=f$(),{headerNameLowerCasedRecord:wzQ}=BS(),Rj0=/[^\u0021-\u00ff]/,YC=Symbol("handler");class OzQ{constructor(A,{path:Q,method:B,body:Y,headers:J,query:C,idempotent:X,blocking:G,upgrade:W,headersTimeout:F,bodyTimeout:Z,reset:U,expectContinue:$,servername:E,throwOnError:K,maxRedirections:I},V){if(typeof Q!=="string")throw new N0("path must be a string");else if(Q[0]!=="/"&&!(Q.startsWith("http://")||Q.startsWith("https://"))&&B!=="CONNECT")throw new N0("path must be an absolute URL or start with a slash");else if(Rj0.test(Q))throw new N0("invalid request path");if(typeof B!=="string")throw new N0("method must be a string");else if(Mj0[B]===void 0&&!jzQ(B))throw new N0("invalid request method");if(W&&typeof W!=="string")throw new N0("upgrade must be a string");if(F!=null&&(!Number.isFinite(F)||F<0))throw new N0("invalid headersTimeout");if(Z!=null&&(!Number.isFinite(Z)||Z<0))throw new N0("invalid bodyTimeout");if(U!=null&&typeof U!=="boolean")throw new N0("invalid reset");if($!=null&&typeof $!=="boolean")throw new N0("invalid expectContinue");if(K!=null)throw new N0("invalid throwOnError");if(I!=null&&I!==0)throw new N0("maxRedirections is not supported, use the redirect interceptor");if(this.headersTimeout=F,this.bodyTimeout=Z,this.method=B,this.abort=null,Y==null)this.body=null;else if(Ej0(Y)){this.body=Y;let H=this.body._readableState;if(!H||!H.autoDestroy)this.endHandler=function(){Kj0(this)},this.body.on("end",this.endHandler);this.errorHandler=(D)=>{if(this.abort)this.abort(D);else this.error=D},this.body.on("error",this.errorHandler)}else if(Vj0(Y))this.body=Y.byteLength?Y:null;else if(ArrayBuffer.isView(Y))this.body=Y.buffer.byteLength?Buffer.from(Y.buffer,Y.byteOffset,Y.byteLength):null;else if(Y instanceof ArrayBuffer)this.body=Y.byteLength?Buffer.from(Y):null;else if(typeof Y==="string")this.body=Y.length?Buffer.from(Y):null;else if(Ij0(Y)||Hj0(Y)||Dj0(Y))this.body=Y;else throw new N0("body must be a string, a Buffer, a Readable stream, an iterable, or an async iterable");if(this.completed=!1,this.aborted=!1,this.upgrade=W||null,this.path=C?Nj0(Q,C):Q,this.origin=A,this.protocol=zj0(A),this.idempotent=X==null?B==="HEAD"||B==="GET":X,this.blocking=G??this.method!=="HEAD",this.reset=U==null?null:U,this.host=null,this.contentLength=null,this.contentType=null,this.headers=[],this.expectContinue=$!=null?$:!1,Array.isArray(J)){if(J.length%2!==0)throw new N0("headers array must be even");for(let H=0;H{var{InvalidArgumentError:wj0}=QB();SzQ.exports=class A{#A;constructor(Q){this.#A=Q}static wrap(Q){return Q.onRequestStart?Q:new A(Q)}onConnect(Q,B){return this.#A.onConnect?.(Q,B)}onHeaders(Q,B,Y,J){return this.#A.onHeaders?.(Q,B,Y,J)}onUpgrade(Q,B,Y){return this.#A.onUpgrade?.(Q,B,Y)}onData(Q){return this.#A.onData?.(Q)}onComplete(Q){return this.#A.onComplete?.(Q)}onError(Q){if(!this.#A.onError)throw Q;return this.#A.onError?.(Q)}onRequestStart(Q,B){this.#A.onConnect?.((Y)=>Q.abort(Y),B)}onRequestUpgrade(Q,B,Y,J){let C=[];for(let[X,G]of Object.entries(Y))C.push(Buffer.from(X),Array.isArray(G)?G.map((W)=>Buffer.from(W)):Buffer.from(G));this.#A.onUpgrade?.(B,C,J)}onResponseStart(Q,B,Y,J){let C=[];for(let[X,G]of Object.entries(Y))C.push(Buffer.from(X),Array.isArray(G)?G.map((W)=>Buffer.from(W)):Buffer.from(G));if(this.#A.onHeaders?.(B,C,()=>Q.resume(),J)===!1)Q.pause()}onResponseData(Q,B){if(this.#A.onData?.(B)===!1)Q.pause()}onResponseEnd(Q,B){let Y=[];for(let[J,C]of Object.entries(B))Y.push(Buffer.from(J),Array.isArray(C)?C.map((X)=>Buffer.from(X)):Buffer.from(C));this.#A.onComplete?.(Y)}onResponseError(Q,B){if(!this.#A.onError)throw new wj0("invalid onError method");this.#A.onError?.(B)}}});var $q=R((_sY,_zQ)=>{var jj0=u("node:events"),Oj0=Zq(),Pj0=(A)=>(Q,B)=>A(Q,Oj0.wrap(B));class kzQ extends jj0{dispatch(){throw Error("not implemented")}close(){throw Error("not implemented")}destroy(){throw Error("not implemented")}compose(...A){let Q=Array.isArray(A[0])?A[0]:A,B=this.dispatch.bind(this);for(let Y of Q){if(Y==null)continue;if(typeof Y!=="function")throw TypeError(`invalid interceptor, expected function received ${typeof Y}`);if(B=Y(B),B=Pj0(B),B==null||typeof B!=="function"||B.length!==2)throw TypeError("invalid interceptor")}return new Proxy(this,{get:(Y,J)=>J==="dispatch"?B:Y[J]})}}_zQ.exports=kzQ});var gzQ=R((vsY,yzQ)=>{var{parseHeaders:Hr}=lQ(),{InvalidArgumentError:Tj0}=QB(),Dr=Symbol("resume");class vzQ{#A=!1;#Q=null;#B=!1;#Y;[Dr]=null;constructor(A){this.#Y=A}pause(){this.#A=!0}resume(){if(this.#A)this.#A=!1,this[Dr]?.()}abort(A){if(!this.#B)this.#B=!0,this.#Q=A,this.#Y(A)}get aborted(){return this.#B}get reason(){return this.#Q}get paused(){return this.#A}}yzQ.exports=class A{#A;#Q;constructor(Q){this.#A=Q}static unwrap(Q){return!Q.onRequestStart?Q:new A(Q)}onConnect(Q,B){this.#Q=new vzQ(Q),this.#A.onRequestStart?.(this.#Q,B)}onUpgrade(Q,B,Y){this.#A.onRequestUpgrade?.(this.#Q,Q,Hr(B),Y)}onHeaders(Q,B,Y,J){return this.#Q[Dr]=Y,this.#A.onResponseStart?.(this.#Q,Q,Hr(B),J),!this.#Q.paused}onData(Q){return this.#A.onResponseData?.(this.#Q,Q),!this.#Q.paused}onComplete(Q){this.#A.onResponseEnd?.(this.#Q,Hr(Q))}onError(Q){if(!this.#A.onResponseError)throw new Tj0("invalid onError method");this.#A.onResponseError?.(this.#Q,Q)}}});var b$=R((ysY,xzQ)=>{var Sj0=$q(),kj0=gzQ(),{ClientDestroyedError:Nr,ClientClosedError:_j0,InvalidArgumentError:FS}=QB(),{kDestroy:vj0,kClose:yj0,kClosed:Uq,kDestroyed:iK,kDispatch:gj0}=B0(),_G=Symbol("onDestroyed"),nK=Symbol("onClosed");class hzQ extends Sj0{[iK]=!1;[_G]=null;[Uq]=!1;[nK]=[];get destroyed(){return this[iK]}get closed(){return this[Uq]}close(A){if(A===void 0)return new Promise((B,Y)=>{this.close((J,C)=>{return J?Y(J):B(C)})});if(typeof A!=="function")throw new FS("invalid callback");if(this[iK]){queueMicrotask(()=>A(new Nr,null));return}if(this[Uq]){if(this[nK])this[nK].push(A);else queueMicrotask(()=>A(null,null));return}this[Uq]=!0,this[nK].push(A);let Q=()=>{let B=this[nK];this[nK]=null;for(let Y=0;Ythis.destroy()).then(()=>{queueMicrotask(Q)})}destroy(A,Q){if(typeof A==="function")Q=A,A=null;if(Q===void 0)return new Promise((Y,J)=>{this.destroy(A,(C,X)=>{return C?J(C):Y(X)})});if(typeof Q!=="function")throw new FS("invalid callback");if(this[iK]){if(this[_G])this[_G].push(Q);else queueMicrotask(()=>Q(null,null));return}if(!A)A=new Nr;this[iK]=!0,this[_G]=this[_G]||[],this[_G].push(Q);let B=()=>{let Y=this[_G];this[_G]=null;for(let J=0;J{queueMicrotask(B)})}dispatch(A,Q){if(!Q||typeof Q!=="object")throw new FS("handler must be an object");Q=kj0.unwrap(Q);try{if(!A||typeof A!=="object")throw new FS("opts must be an object.");if(this[iK]||this[_G])throw new Nr;if(this[Uq])throw new _j0;return this[gj0](A,Q)}catch(B){if(typeof Q.onError!=="function")throw B;return Q.onError(B),!1}}}xzQ.exports=hzQ});var Eq=R((gsY,mzQ)=>{var hj0=u("node:net"),fzQ=u("node:assert"),bzQ=lQ(),{InvalidArgumentError:xj0}=QB(),Lr,fj0=class{constructor(Q){this._maxCachedSessions=Q,this._sessionCache=new Map,this._sessionRegistry=new FinalizationRegistry((B)=>{if(this._sessionCache.size{Object.defineProperty(uzQ,"__esModule",{value:!0});uzQ.enumToMap=mj0;function mj0(A,Q=[],B=[]){let Y=(Q?.length??0)===0,J=(B?.length??0)===0;return Object.fromEntries(Object.entries(A).filter(([,C])=>{return typeof C==="number"&&(Y||Q.includes(C))&&(J||!B.includes(C))}))}});var W2Q=R((czQ)=>{Object.defineProperty(czQ,"__esModule",{value:!0});czQ.SPECIAL_HEADERS=czQ.MINOR=czQ.MAJOR=czQ.HTAB_SP_VCHAR_OBS_TEXT=czQ.QUOTED_STRING=czQ.CONNECTION_TOKEN_CHARS=czQ.HEADER_CHARS=czQ.TOKEN=czQ.HEX=czQ.URL_CHAR=czQ.USERINFO_CHARS=czQ.MARK=czQ.ALPHANUM=czQ.NUM=czQ.HEX_MAP=czQ.NUM_MAP=czQ.ALPHA=czQ.STATUSES_HTTP=czQ.H_METHOD_MAP=czQ.METHOD_MAP=czQ.METHODS_RTSP=czQ.METHODS_ICE=czQ.METHODS_HTTP=czQ.HEADER_STATE=czQ.FINISH=czQ.STATUSES=czQ.METHODS=czQ.LENIENT_FLAGS=czQ.FLAGS=czQ.TYPE=czQ.ERROR=void 0;var dj0=dzQ();czQ.ERROR={OK:0,INTERNAL:1,STRICT:2,CR_EXPECTED:25,LF_EXPECTED:3,UNEXPECTED_CONTENT_LENGTH:4,UNEXPECTED_SPACE:30,CLOSED_CONNECTION:5,INVALID_METHOD:6,INVALID_URL:7,INVALID_CONSTANT:8,INVALID_VERSION:9,INVALID_HEADER_TOKEN:10,INVALID_CONTENT_LENGTH:11,INVALID_CHUNK_SIZE:12,INVALID_STATUS:13,INVALID_EOF_STATE:14,INVALID_TRANSFER_ENCODING:15,CB_MESSAGE_BEGIN:16,CB_HEADERS_COMPLETE:17,CB_MESSAGE_COMPLETE:18,CB_CHUNK_HEADER:19,CB_CHUNK_COMPLETE:20,PAUSED:21,PAUSED_UPGRADE:22,PAUSED_H2_UPGRADE:23,USER:24,CB_URL_COMPLETE:26,CB_STATUS_COMPLETE:27,CB_METHOD_COMPLETE:32,CB_VERSION_COMPLETE:33,CB_HEADER_FIELD_COMPLETE:28,CB_HEADER_VALUE_COMPLETE:29,CB_CHUNK_EXTENSION_NAME_COMPLETE:34,CB_CHUNK_EXTENSION_VALUE_COMPLETE:35,CB_RESET:31,CB_PROTOCOL_COMPLETE:38};czQ.TYPE={BOTH:0,REQUEST:1,RESPONSE:2};czQ.FLAGS={CONNECTION_KEEP_ALIVE:1,CONNECTION_CLOSE:2,CONNECTION_UPGRADE:4,CHUNKED:8,UPGRADE:16,CONTENT_LENGTH:32,SKIPBODY:64,TRAILING:128,TRANSFER_ENCODING:512};czQ.LENIENT_FLAGS={HEADERS:1,CHUNKED_LENGTH:2,KEEP_ALIVE:4,TRANSFER_ENCODING:8,VERSION:16,DATA_AFTER_CLOSE:32,OPTIONAL_LF_AFTER_CR:64,OPTIONAL_CRLF_AFTER_CHUNK:128,OPTIONAL_CR_BEFORE_LF:256,SPACES_AFTER_CHUNK_SIZE:512};czQ.METHODS={DELETE:0,GET:1,HEAD:2,POST:3,PUT:4,CONNECT:5,OPTIONS:6,TRACE:7,COPY:8,LOCK:9,MKCOL:10,MOVE:11,PROPFIND:12,PROPPATCH:13,SEARCH:14,UNLOCK:15,BIND:16,REBIND:17,UNBIND:18,ACL:19,REPORT:20,MKACTIVITY:21,CHECKOUT:22,MERGE:23,"M-SEARCH":24,NOTIFY:25,SUBSCRIBE:26,UNSUBSCRIBE:27,PATCH:28,PURGE:29,MKCALENDAR:30,LINK:31,UNLINK:32,SOURCE:33,PRI:34,DESCRIBE:35,ANNOUNCE:36,SETUP:37,PLAY:38,PAUSE:39,TEARDOWN:40,GET_PARAMETER:41,SET_PARAMETER:42,REDIRECT:43,RECORD:44,FLUSH:45,QUERY:46};czQ.STATUSES={CONTINUE:100,SWITCHING_PROTOCOLS:101,PROCESSING:102,EARLY_HINTS:103,RESPONSE_IS_STALE:110,REVALIDATION_FAILED:111,DISCONNECTED_OPERATION:112,HEURISTIC_EXPIRATION:113,MISCELLANEOUS_WARNING:199,OK:200,CREATED:201,ACCEPTED:202,NON_AUTHORITATIVE_INFORMATION:203,NO_CONTENT:204,RESET_CONTENT:205,PARTIAL_CONTENT:206,MULTI_STATUS:207,ALREADY_REPORTED:208,TRANSFORMATION_APPLIED:214,IM_USED:226,MISCELLANEOUS_PERSISTENT_WARNING:299,MULTIPLE_CHOICES:300,MOVED_PERMANENTLY:301,FOUND:302,SEE_OTHER:303,NOT_MODIFIED:304,USE_PROXY:305,SWITCH_PROXY:306,TEMPORARY_REDIRECT:307,PERMANENT_REDIRECT:308,BAD_REQUEST:400,UNAUTHORIZED:401,PAYMENT_REQUIRED:402,FORBIDDEN:403,NOT_FOUND:404,METHOD_NOT_ALLOWED:405,NOT_ACCEPTABLE:406,PROXY_AUTHENTICATION_REQUIRED:407,REQUEST_TIMEOUT:408,CONFLICT:409,GONE:410,LENGTH_REQUIRED:411,PRECONDITION_FAILED:412,PAYLOAD_TOO_LARGE:413,URI_TOO_LONG:414,UNSUPPORTED_MEDIA_TYPE:415,RANGE_NOT_SATISFIABLE:416,EXPECTATION_FAILED:417,IM_A_TEAPOT:418,PAGE_EXPIRED:419,ENHANCE_YOUR_CALM:420,MISDIRECTED_REQUEST:421,UNPROCESSABLE_ENTITY:422,LOCKED:423,FAILED_DEPENDENCY:424,TOO_EARLY:425,UPGRADE_REQUIRED:426,PRECONDITION_REQUIRED:428,TOO_MANY_REQUESTS:429,REQUEST_HEADER_FIELDS_TOO_LARGE_UNOFFICIAL:430,REQUEST_HEADER_FIELDS_TOO_LARGE:431,LOGIN_TIMEOUT:440,NO_RESPONSE:444,RETRY_WITH:449,BLOCKED_BY_PARENTAL_CONTROL:450,UNAVAILABLE_FOR_LEGAL_REASONS:451,CLIENT_CLOSED_LOAD_BALANCED_REQUEST:460,INVALID_X_FORWARDED_FOR:463,REQUEST_HEADER_TOO_LARGE:494,SSL_CERTIFICATE_ERROR:495,SSL_CERTIFICATE_REQUIRED:496,HTTP_REQUEST_SENT_TO_HTTPS_PORT:497,INVALID_TOKEN:498,CLIENT_CLOSED_REQUEST:499,INTERNAL_SERVER_ERROR:500,NOT_IMPLEMENTED:501,BAD_GATEWAY:502,SERVICE_UNAVAILABLE:503,GATEWAY_TIMEOUT:504,HTTP_VERSION_NOT_SUPPORTED:505,VARIANT_ALSO_NEGOTIATES:506,INSUFFICIENT_STORAGE:507,LOOP_DETECTED:508,BANDWIDTH_LIMIT_EXCEEDED:509,NOT_EXTENDED:510,NETWORK_AUTHENTICATION_REQUIRED:511,WEB_SERVER_UNKNOWN_ERROR:520,WEB_SERVER_IS_DOWN:521,CONNECTION_TIMEOUT:522,ORIGIN_IS_UNREACHABLE:523,TIMEOUT_OCCURED:524,SSL_HANDSHAKE_FAILED:525,INVALID_SSL_CERTIFICATE:526,RAILGUN_ERROR:527,SITE_IS_OVERLOADED:529,SITE_IS_FROZEN:530,IDENTITY_PROVIDER_AUTHENTICATION_ERROR:561,NETWORK_READ_TIMEOUT:598,NETWORK_CONNECT_TIMEOUT:599};czQ.FINISH={SAFE:0,SAFE_WITH_CB:1,UNSAFE:2};czQ.HEADER_STATE={GENERAL:0,CONNECTION:1,CONTENT_LENGTH:2,TRANSFER_ENCODING:3,UPGRADE:4,CONNECTION_KEEP_ALIVE:5,CONNECTION_CLOSE:6,CONNECTION_UPGRADE:7,TRANSFER_ENCODING_CHUNKED:8};czQ.METHODS_HTTP=[czQ.METHODS.DELETE,czQ.METHODS.GET,czQ.METHODS.HEAD,czQ.METHODS.POST,czQ.METHODS.PUT,czQ.METHODS.CONNECT,czQ.METHODS.OPTIONS,czQ.METHODS.TRACE,czQ.METHODS.COPY,czQ.METHODS.LOCK,czQ.METHODS.MKCOL,czQ.METHODS.MOVE,czQ.METHODS.PROPFIND,czQ.METHODS.PROPPATCH,czQ.METHODS.SEARCH,czQ.METHODS.UNLOCK,czQ.METHODS.BIND,czQ.METHODS.REBIND,czQ.METHODS.UNBIND,czQ.METHODS.ACL,czQ.METHODS.REPORT,czQ.METHODS.MKACTIVITY,czQ.METHODS.CHECKOUT,czQ.METHODS.MERGE,czQ.METHODS["M-SEARCH"],czQ.METHODS.NOTIFY,czQ.METHODS.SUBSCRIBE,czQ.METHODS.UNSUBSCRIBE,czQ.METHODS.PATCH,czQ.METHODS.PURGE,czQ.METHODS.MKCALENDAR,czQ.METHODS.LINK,czQ.METHODS.UNLINK,czQ.METHODS.PRI,czQ.METHODS.SOURCE,czQ.METHODS.QUERY];czQ.METHODS_ICE=[czQ.METHODS.SOURCE];czQ.METHODS_RTSP=[czQ.METHODS.OPTIONS,czQ.METHODS.DESCRIBE,czQ.METHODS.ANNOUNCE,czQ.METHODS.SETUP,czQ.METHODS.PLAY,czQ.METHODS.PAUSE,czQ.METHODS.TEARDOWN,czQ.METHODS.GET_PARAMETER,czQ.METHODS.SET_PARAMETER,czQ.METHODS.REDIRECT,czQ.METHODS.RECORD,czQ.METHODS.FLUSH,czQ.METHODS.GET,czQ.METHODS.POST];czQ.METHOD_MAP=(0,dj0.enumToMap)(czQ.METHODS);czQ.H_METHOD_MAP=Object.fromEntries(Object.entries(czQ.METHODS).filter(([A])=>A.startsWith("H")));czQ.STATUSES_HTTP=[czQ.STATUSES.CONTINUE,czQ.STATUSES.SWITCHING_PROTOCOLS,czQ.STATUSES.PROCESSING,czQ.STATUSES.EARLY_HINTS,czQ.STATUSES.RESPONSE_IS_STALE,czQ.STATUSES.REVALIDATION_FAILED,czQ.STATUSES.DISCONNECTED_OPERATION,czQ.STATUSES.HEURISTIC_EXPIRATION,czQ.STATUSES.MISCELLANEOUS_WARNING,czQ.STATUSES.OK,czQ.STATUSES.CREATED,czQ.STATUSES.ACCEPTED,czQ.STATUSES.NON_AUTHORITATIVE_INFORMATION,czQ.STATUSES.NO_CONTENT,czQ.STATUSES.RESET_CONTENT,czQ.STATUSES.PARTIAL_CONTENT,czQ.STATUSES.MULTI_STATUS,czQ.STATUSES.ALREADY_REPORTED,czQ.STATUSES.TRANSFORMATION_APPLIED,czQ.STATUSES.IM_USED,czQ.STATUSES.MISCELLANEOUS_PERSISTENT_WARNING,czQ.STATUSES.MULTIPLE_CHOICES,czQ.STATUSES.MOVED_PERMANENTLY,czQ.STATUSES.FOUND,czQ.STATUSES.SEE_OTHER,czQ.STATUSES.NOT_MODIFIED,czQ.STATUSES.USE_PROXY,czQ.STATUSES.SWITCH_PROXY,czQ.STATUSES.TEMPORARY_REDIRECT,czQ.STATUSES.PERMANENT_REDIRECT,czQ.STATUSES.BAD_REQUEST,czQ.STATUSES.UNAUTHORIZED,czQ.STATUSES.PAYMENT_REQUIRED,czQ.STATUSES.FORBIDDEN,czQ.STATUSES.NOT_FOUND,czQ.STATUSES.METHOD_NOT_ALLOWED,czQ.STATUSES.NOT_ACCEPTABLE,czQ.STATUSES.PROXY_AUTHENTICATION_REQUIRED,czQ.STATUSES.REQUEST_TIMEOUT,czQ.STATUSES.CONFLICT,czQ.STATUSES.GONE,czQ.STATUSES.LENGTH_REQUIRED,czQ.STATUSES.PRECONDITION_FAILED,czQ.STATUSES.PAYLOAD_TOO_LARGE,czQ.STATUSES.URI_TOO_LONG,czQ.STATUSES.UNSUPPORTED_MEDIA_TYPE,czQ.STATUSES.RANGE_NOT_SATISFIABLE,czQ.STATUSES.EXPECTATION_FAILED,czQ.STATUSES.IM_A_TEAPOT,czQ.STATUSES.PAGE_EXPIRED,czQ.STATUSES.ENHANCE_YOUR_CALM,czQ.STATUSES.MISDIRECTED_REQUEST,czQ.STATUSES.UNPROCESSABLE_ENTITY,czQ.STATUSES.LOCKED,czQ.STATUSES.FAILED_DEPENDENCY,czQ.STATUSES.TOO_EARLY,czQ.STATUSES.UPGRADE_REQUIRED,czQ.STATUSES.PRECONDITION_REQUIRED,czQ.STATUSES.TOO_MANY_REQUESTS,czQ.STATUSES.REQUEST_HEADER_FIELDS_TOO_LARGE_UNOFFICIAL,czQ.STATUSES.REQUEST_HEADER_FIELDS_TOO_LARGE,czQ.STATUSES.LOGIN_TIMEOUT,czQ.STATUSES.NO_RESPONSE,czQ.STATUSES.RETRY_WITH,czQ.STATUSES.BLOCKED_BY_PARENTAL_CONTROL,czQ.STATUSES.UNAVAILABLE_FOR_LEGAL_REASONS,czQ.STATUSES.CLIENT_CLOSED_LOAD_BALANCED_REQUEST,czQ.STATUSES.INVALID_X_FORWARDED_FOR,czQ.STATUSES.REQUEST_HEADER_TOO_LARGE,czQ.STATUSES.SSL_CERTIFICATE_ERROR,czQ.STATUSES.SSL_CERTIFICATE_REQUIRED,czQ.STATUSES.HTTP_REQUEST_SENT_TO_HTTPS_PORT,czQ.STATUSES.INVALID_TOKEN,czQ.STATUSES.CLIENT_CLOSED_REQUEST,czQ.STATUSES.INTERNAL_SERVER_ERROR,czQ.STATUSES.NOT_IMPLEMENTED,czQ.STATUSES.BAD_GATEWAY,czQ.STATUSES.SERVICE_UNAVAILABLE,czQ.STATUSES.GATEWAY_TIMEOUT,czQ.STATUSES.HTTP_VERSION_NOT_SUPPORTED,czQ.STATUSES.VARIANT_ALSO_NEGOTIATES,czQ.STATUSES.INSUFFICIENT_STORAGE,czQ.STATUSES.LOOP_DETECTED,czQ.STATUSES.BANDWIDTH_LIMIT_EXCEEDED,czQ.STATUSES.NOT_EXTENDED,czQ.STATUSES.NETWORK_AUTHENTICATION_REQUIRED,czQ.STATUSES.WEB_SERVER_UNKNOWN_ERROR,czQ.STATUSES.WEB_SERVER_IS_DOWN,czQ.STATUSES.CONNECTION_TIMEOUT,czQ.STATUSES.ORIGIN_IS_UNREACHABLE,czQ.STATUSES.TIMEOUT_OCCURED,czQ.STATUSES.SSL_HANDSHAKE_FAILED,czQ.STATUSES.INVALID_SSL_CERTIFICATE,czQ.STATUSES.RAILGUN_ERROR,czQ.STATUSES.SITE_IS_OVERLOADED,czQ.STATUSES.SITE_IS_FROZEN,czQ.STATUSES.IDENTITY_PROVIDER_AUTHENTICATION_ERROR,czQ.STATUSES.NETWORK_READ_TIMEOUT,czQ.STATUSES.NETWORK_CONNECT_TIMEOUT];czQ.ALPHA=[];for(let A=65;A<=90;A++)czQ.ALPHA.push(String.fromCharCode(A)),czQ.ALPHA.push(String.fromCharCode(A+32));czQ.NUM_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9};czQ.HEX_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15};czQ.NUM=["0","1","2","3","4","5","6","7","8","9"];czQ.ALPHANUM=czQ.ALPHA.concat(czQ.NUM);czQ.MARK=["-","_",".","!","~","*","'","(",")"];czQ.USERINFO_CHARS=czQ.ALPHANUM.concat(czQ.MARK).concat(["%",";",":","&","=","+","$",","]);czQ.URL_CHAR=["!",'"',"$","%","&","'","(",")","*","+",",","-",".","/",":",";","<","=",">","@","[","\\","]","^","_","`","{","|","}","~"].concat(czQ.ALPHANUM);czQ.HEX=czQ.NUM.concat(["a","b","c","d","e","f","A","B","C","D","E","F"]);czQ.TOKEN=["!","#","$","%","&","'","*","+","-",".","^","_","`","|","~"].concat(czQ.ALPHANUM);czQ.HEADER_CHARS=["\t"];for(let A=32;A<=255;A++)if(A!==127)czQ.HEADER_CHARS.push(A);czQ.CONNECTION_TOKEN_CHARS=czQ.HEADER_CHARS.filter((A)=>A!==44);czQ.QUOTED_STRING=["\t"," "];for(let A=33;A<=255;A++)if(A!==34&&A!==92)czQ.QUOTED_STRING.push(A);czQ.HTAB_SP_VCHAR_OBS_TEXT=["\t"," "];for(let A=33;A<=126;A++)czQ.HTAB_SP_VCHAR_OBS_TEXT.push(A);for(let A=128;A<=255;A++)czQ.HTAB_SP_VCHAR_OBS_TEXT.push(A);czQ.MAJOR=czQ.NUM_MAP;czQ.MINOR=czQ.MAJOR;czQ.SPECIAL_HEADERS={connection:czQ.HEADER_STATE.CONNECTION,"content-length":czQ.HEADER_STATE.CONTENT_LENGTH,"proxy-connection":czQ.HEADER_STATE.CONNECTION,"transfer-encoding":czQ.HEADER_STATE.TRANSFER_ENCODING,upgrade:czQ.HEADER_STATE.UPGRADE};czQ.default={ERROR:czQ.ERROR,TYPE:czQ.TYPE,FLAGS:czQ.FLAGS,LENIENT_FLAGS:czQ.LENIENT_FLAGS,METHODS:czQ.METHODS,STATUSES:czQ.STATUSES,FINISH:czQ.FINISH,HEADER_STATE:czQ.HEADER_STATE,ALPHA:czQ.ALPHA,NUM_MAP:czQ.NUM_MAP,HEX_MAP:czQ.HEX_MAP,NUM:czQ.NUM,ALPHANUM:czQ.ALPHANUM,MARK:czQ.MARK,USERINFO_CHARS:czQ.USERINFO_CHARS,URL_CHAR:czQ.URL_CHAR,HEX:czQ.HEX,TOKEN:czQ.TOKEN,HEADER_CHARS:czQ.HEADER_CHARS,CONNECTION_TOKEN_CHARS:czQ.CONNECTION_TOKEN_CHARS,QUOTED_STRING:czQ.QUOTED_STRING,HTAB_SP_VCHAR_OBS_TEXT:czQ.HTAB_SP_VCHAR_OBS_TEXT,MAJOR:czQ.MAJOR,MINOR:czQ.MINOR,SPECIAL_HEADERS:czQ.SPECIAL_HEADERS,METHODS_HTTP:czQ.METHODS_HTTP,METHODS_ICE:czQ.METHODS_ICE,METHODS_RTSP:czQ.METHODS_RTSP,METHOD_MAP:czQ.METHOD_MAP,H_METHOD_MAP:czQ.H_METHOD_MAP,STATUSES_HTTP:czQ.STATUSES_HTTP}});var Or=R((fsY,F2Q)=>{var{Buffer:lj0}=u("node:buffer"),jr;Object.defineProperty(F2Q,"exports",{get:()=>{return jr?jr:jr=lj0.from("AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAn9/AGABfwBgBH9/f38Bf2AAAGADf39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQAEA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAAzU0BQYAAAMAAAAAAAADAQMAAwMDAAACAAAAAAICAgICAgICAgIBAQEBAQEBAQEBAwAAAwAAAAQFAXABExMFAwEAAgYIAX8BQcDZBAsHxQcoBm1lbW9yeQIAC19pbml0aWFsaXplAAgZX19pbmRpcmVjdF9mdW5jdGlvbl90YWJsZQEAC2xsaHR0cF9pbml0AAkYbGxodHRwX3Nob3VsZF9rZWVwX2FsaXZlADcMbGxodHRwX2FsbG9jAAsGbWFsbG9jADkLbGxodHRwX2ZyZWUADARmcmVlAAwPbGxodHRwX2dldF90eXBlAA0VbGxodHRwX2dldF9odHRwX21ham9yAA4VbGxodHRwX2dldF9odHRwX21pbm9yAA8RbGxodHRwX2dldF9tZXRob2QAEBZsbGh0dHBfZ2V0X3N0YXR1c19jb2RlABESbGxodHRwX2dldF91cGdyYWRlABIMbGxodHRwX3Jlc2V0ABMObGxodHRwX2V4ZWN1dGUAFBRsbGh0dHBfc2V0dGluZ3NfaW5pdAAVDWxsaHR0cF9maW5pc2gAFgxsbGh0dHBfcGF1c2UAFw1sbGh0dHBfcmVzdW1lABgbbGxodHRwX3Jlc3VtZV9hZnRlcl91cGdyYWRlABkQbGxodHRwX2dldF9lcnJubwAaF2xsaHR0cF9nZXRfZXJyb3JfcmVhc29uABsXbGxodHRwX3NldF9lcnJvcl9yZWFzb24AHBRsbGh0dHBfZ2V0X2Vycm9yX3BvcwAdEWxsaHR0cF9lcnJub19uYW1lAB4SbGxodHRwX21ldGhvZF9uYW1lAB8SbGxodHRwX3N0YXR1c19uYW1lACAabGxodHRw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AXRrQT5qIQILIAEgAjYCHCABQgA3AhAgAkECdEH01wBqIQACQEHI1QAoAgAiA0EBIAJ0IgdxRQRAIAAgATYCAEHI1QAgAyAHcjYCACABIAA2AhggASABNgIIIAEgATYCDAwBCyAEQRkgAkEBdmtBACACQR9HG3QhAiAAKAIAIQACQANAIAAiAygCBEF4cSAERg0BIAJBHXYhACACQQF0IQIgAyAAQQRxakEQaiIHKAIAIgANAAsgByABNgIAIAEgAzYCGCABIAE2AgwgASABNgIIDAELIAMoAggiACABNgIMIAMgATYCCCABQQA2AhggASADNgIMIAEgADYCCAtB5NUAQeTVACgCAEEBayIAQX8gABs2AgALCwcAIAAtACgLBwAgAC0AKgsHACAALQArCwcAIAAtACkLBwAgAC8BNAsHACAALQAwC0ABBH8gACgCGCEBIAAvAS4hAiAALQAoIQMgACgCOCEEIAAQOCAAIAQ2AjggACADOgAoIAAgAjsBLiAAIAE2AhgL5YUCAgd/A34gASACaiEEAkAgACIDKAIMIgANACADKAIEBEAgAyABNgIECyMAQRBrIgkkAAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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C0HjAQwHC0HXAQwGC0HYAQwFC0HZAQwEC0HaAQwDC0HbAQwCC0HdAQwBC0HcAQshAgNAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCADAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQAJ/AkACQAJAAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAMCfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAg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ogKiAqICogKiAqICogKiAqICogKiAqICogIAogILIAQgAUEBaiIBRw0AC0HJACECDOwCCyABQQFqIQEgA0Evai0AAEEBcQ2lAiADQQA2AhwgAyABNgIUIANBlxA2AhAgA0EKNgIMQQAhAgzrAgsgASAERwRAA0AgAS0AAEEgRw0VIAQgAUEBaiIBRw0AC0H4ACECDOsCC0H4ACECDOoCCyADQQI6ACgMOAtBACECIANBADYCHCADQb8LNgIQIANBAjYCDCADIAFBAWo2AhQM6AILQQAhAgzOAgtBDSECDM0CC0ETIQIMzAILQRUhAgzLAgtBFiECDMoCC0EYIQIMyQILQRkhAgzIAgtBGiECDMcCC0EbIQIMxgILQRwhAgzFAgtBHSECDMQCC0EeIQIMwwILQR8hAgzCAgtBICECDMECC0EiIQIMwAILQSMhAgy/AgtBJSECDL4CC0HlACECDL0CCyADQT02AhwgAyABNgIUIAMgADYCDEEAIQIM1QILIANBGzYCHCADIAE2AhQgA0GkHDYCECADQRU2AgxBACECDNQCCyADQSA2AhwgAyABNgIUIANBmBo2AhAgA0EVNgIMQQAhAgzTAgsgA0ETNgIcIAMgATYCFCADQZgaNgIQIANBFTYCDEEAIQIM0gILIANBCzYCHCADIAE2AhQgA0GYGjYCECADQRU2AgxBACECDNECCyADQRA2AhwgAyABNgIUIANBmBo2AhAgA0EVNgIMQQAhAgzQAgsgA0EgNgIcIAMgATYCFCADQaQcNgIQIANBFTYCDEEAIQIMzwILIANBCzYCHCADIAE2AhQgA0GkHDYCECADQRU2AgxBACECDM4CCyADQQw2AhwgAyABNgIUIANBpBw2AhAgA0EVNgIMQQAhAgzNAgtBACECIANBADYCHCADIAE2AhQgA0HdDjYCECADQRI2AgwMzAILAkADQAJAIAEtAABBCmsOBAACAgACCyAEIAFBAWoiAUcNAAtB/QEhAgzMAgsCQAJAIAMtADZBAUcNAEEAIQACQCADKAI4IgJFDQAgAigCYCICRQ0AIAMgAhEAACEACyAARQ0AIABBFUcNASADQfwBNgIcIAMgATYCFCADQdwZNgIQIANBFTYCDEEAIQIMzQILQdwBIQIMswILIANBADYCHCADIAE2AhQgA0H5CzYCECADQR82AgxBACECDMsCCwJAAkAgAy0AKEEBaw4CBAEAC0HbASECDLICC0HUASECDLECCyADQQI6ADFBACEAAkAgAygCOCICRQ0AIAIoAgAiAkUNACADIAIRAAAhAAsgAEUEQEHdASECDLECCyAAQRVHBEAgA0EANgIcIAMgATYCFCADQbQMNgIQIANBEDYCDEEAIQIMygILIANB+wE2AhwgAyABNgIUIANBgRo2AhAgA0EVNgIMQQAhAgzJAgsgASAERgRAQfoBIQIMyQILIAEtAABByABGDQEgA0EBOgAoC0HAASECDK4CC0HaASECDK0CCyABIARHBEAgA0EMNgIIIAMgATYCBEHZASECDK0CC0H5ASECDMUCCyABIARGBEBB+AEhAgzFAgsgAS0AAEHIAEcNBCABQQFqIQFB2AEhAgyrAgsgASAERgRAQfcBIQIMxAILAkACQCABLQAAQcUAaw4QAAUFBQUFBQUFBQUFBQUFAQULIAFBAWohAUHWASECDKsCCyABQQFqIQFB1wEhAgyqAgtB9gEhAiABIARGDcICIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQbrVAGotAABHDQMgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADMMCCyADKAIEIQAgA0IANwMAIAMgACAGQQFqIgEQLiIARQRAQeMBIQIMqgILIANB9QE2AhwgAyABNgIUIAMgADYCDEEAIQIMwgILQfQBIQIgASAERg3BAiADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEG41QBqLQAARw0CIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzCAgsgA0GBBDsBKCADKAIEIQAgA0IANwMAIAMgACAGQQFqIgEQLiIADQMMAgsgA0EANgIAC0EAIQIgA0EANgIcIAMgATYCFCADQeUfNgIQIANBCDYCDAy/AgtB1QEhAgylAgsgA0HzATYCHCADIAE2AhQgAyAANgIMQQAhAgy9AgtBACEAAkAgAygCOCICRQ0AIAIoAkAiAkUNACADIAIRAAAhAAsgAEUNbiAAQRVHBEAgA0EANgIcIAMgATYCFCADQYIPNgIQIANBIDYCDEEAIQIMvQILIANBjwE2AhwgAyABNgIUIANB7Bs2AhAgA0EVNgIMQQAhAgy8AgsgASAERwRAIANBDTYCCCADIAE2AgRB0wEhAgyjAgtB8gEhAgy7AgsgASAERgRAQfEBIQIMuwILAkACQAJAIAEtAABByABrDgsAAQgICAgICAgIAggLIAFBAWohAUHQASECDKMCCyABQQFqIQFB0QEhAgyiAgsgAUEBaiEBQdIBIQIMoQILQfABIQIgASAERg25AiADKAIAIgAgBCABa2ohBiABIABrQQJqIQUDQCABLQAAIABBtdUAai0AAEcNBCAAQQJGDQMgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAY2AgAMuQILQe8BIQIgASAERg24AiADKAIAIgAgBCABa2ohBiABIABrQQFqIQUDQCABLQAAIABBs9UAai0AAEcNAyAAQQFGDQIgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAY2AgAMuAILQe4BIQIgASAERg23AiADKAIAIgAgBCABa2ohBiABIABrQQJqIQUDQCABLQAAIABBsNUAai0AAEcNAiAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAY2AgAMtwILIAMoAgQhACADQgA3AwAgAyAAIAVBAWoiARArIgBFDQIgA0HsATYCHCADIAE2AhQgAyAANgIMQQAhAgy2AgsgA0EANgIACyADKAIEIQAgA0EANgIEIAMgACABECsiAEUNnAIgA0HtATYCHCADIAE2AhQgAyAANgIMQQAhAgy0AgtBzwEhAgyaAgtBACEAAkAgAygCOCICRQ0AIAIoAjQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0HqDTYCECADQSY2AgxBACECDLQCC0HOASECDJoCCyADQesBNgIcIAMgATYCFCADQYAbNgIQIANBFTYCDEEAIQIMsgILIAEgBEYEQEHrASECDLICCyABLQAAQS9GBEAgAUEBaiEBDAELIANBADYCHCADIAE2AhQgA0GyODYCECADQQg2AgxBACECDLECC0HNASECDJcCCyABIARHBEAgA0EONgIIIAMgATYCBEHMASECDJcCC0HqASECDK8CCyABIARGBEBB6QEhAgyvAgsgAS0AAEEwayIAQf8BcUEKSQRAIAMgADoAKiABQQFqIQFBywEhAgyWAgsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDZcCIANB6AE2AhwgAyABNgIUIAMgADYCDEEAIQIMrgILIAEgBEYEQEHnASECDK4CCwJAIAEtAABBLkYEQCABQQFqIQEMAQsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDZgCIANB5gE2AhwgAyABNgIUIAMgADYCDEEAIQIMrgILQcoBIQIMlAILIAEgBEYEQEHlASECDK0CC0EAIQBBASEFQQEhB0EAIQICQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQCABLQAAQTBrDgoKCQABAgMEBQYICwtBAgwGC0EDDAULQQQMBAtBBQwDC0EGDAILQQcMAQtBCAshAkEAIQVBACEHDAILQQkhAkEBIQBBACEFQQAhBwwBC0EAIQVBASECCyADIAI6ACsgAUEBaiEBAkACQCADLQAuQRBxDQACQAJAAkAgAy0AKg4DAQACBAsgB0UNAwwCCyAADQEMAgsgBUUNAQsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDQIgA0HiATYCHCADIAE2AhQgAyAANgIMQQAhAgyvAgsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDZoCIANB4wE2AhwgAyABNgIUIAMgADYCDEEAIQIMrgILIAMoAgQhACADQQA2AgQgAyAAIAEQLyIARQ2YAiADQeQBNgIcIAMgATYCFCADIAA2AgwMrQILQckBIQIMkwILQQAhAAJAIAMoAjgiAkUNACACKAJEIgJFDQAgAyACEQAAIQALAkAgAARAIABBFUYNASADQQA2AhwgAyABNgIUIANBpA02AhAgA0EhNgIMQQAhAgytAgtByAEhAgyTAgsgA0HhATYCHCADIAE2AhQgA0HQGjYCECADQRU2AgxBACECDKsCCyABIARGBEBB4QEhAgyrAgsCQCABLQAAQSBGBEAgA0EAOwE0IAFBAWohAQwBCyADQQA2AhwgAyABNgIUIANBmRE2AhAgA0EJNgIMQQAhAgyrAgtBxwEhAgyRAgsgASAERgRAQeABIQIMqgILAkAgAS0AAEEwa0H/AXEiAkEKSQRAIAFBAWohAQJAIAMvATQiAEGZM0sNACADIABBCmwiADsBNCAAQf7/A3EgAkH//wNzSw0AIAMgACACajsBNAwCC0EAIQIgA0EANgIcIAMgATYCFCADQZUeNgIQIANBDTYCDAyrAgsgA0EANgIcIAMgATYCFCADQZUeNgIQIANBDTYCDEEAIQIMqgILQcYBIQIMkAILIAEgBEYEQEHfASECDKkCCwJAIAEtAABBMGtB/wFxIgJBCkkEQCABQQFqIQECQCADLwE0IgBBmTNLDQAgAyAAQQpsIgA7ATQgAEH+/wNxIAJB//8Dc0sNACADIAAgAmo7ATQMAgtBACECIANBADYCHCADIAE2AhQgA0GVHjYCECADQQ02AgwMqgILIANBADYCHCADIAE2AhQgA0GVHjYCECADQQ02AgxBACECDKkCC0HFASECDI8CCyABIARGBEBB3gEhAgyoAgsCQCABLQAAQTBrQf8BcSICQQpJBEAgAUEBaiEBAkAgAy8BNCIAQZkzSw0AIAMgAEEKbCIAOwE0IABB/v8DcSACQf//A3NLDQAgAyAAIAJqOwE0DAILQQAhAiADQQA2AhwgAyABNgIUIANBlR42AhAgA0ENNgIMDKkCCyADQQA2AhwgAyABNgIUIANBlR42AhAgA0ENNgIMQQAhAgyoAgtBxAEhAgyOAgsgASAERgRAQd0BIQIMpwILAkACQAJAAkAgAS0AAEEKaw4XAgMDAAMDAwMDAwMDAwMDAwMDAwMDAwEDCyABQQFqDAULIAFBAWohAUHDASECDI8CCyABQQFqIQEgA0Evai0AAEEBcQ0IIANBADYCHCADIAE2AhQgA0GNCzYCECADQQ02AgxBACECDKcCCyADQQA2AhwgAyABNgIUIANBjQs2AhAgA0ENNgIMQQAhAgymAgsgASAERwRAIANBDzYCCCADIAE2AgRBASECDI0CC0HcASECDKUCCwJAAkADQAJAIAEtAABBCmsOBAIAAAMACyAEIAFBAWoiAUcNAAtB2wEhAgymAgsgAygCBCEAIANBADYCBCADIAAgARAtIgBFBEAgAUEBaiEBDAQLIANB2gE2AhwgAyAANgIMIAMgAUEBajYCFEEAIQIMpQILIAMoAgQhACADQQA2AgQgAyAAIAEQLSIADQEgAUEBagshAUHBASECDIoCCyADQdkBNgIcIAMgADYCDCADIAFBAWo2AhRBACECDKICC0HCASECDIgCCyADQS9qLQAAQQFxDQEgA0EANgIcIAMgATYCFCADQeQcNgIQIANBGTYCDEEAIQIMoAILIAEgBEYEQEHZASEC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IAFBAWohAUGeASECDOQBCyABQQFqIQFBnwEhAgzjAQtBtwEhAiABIARGDfsBIAMoAgAiACAEIAFraiEFIAEgAGtBA2ohBgJAA0AgAS0AACAAQezUAGotAABHDSggAEEDRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADPwBCyADQQA2AgAgBkEBaiEBQQ0MKAtBtgEhAiABIARGDfoBIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQaHVAGotAABHDScgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADPsBCyADQQA2AgAgBkEBaiEBQQwMJwtBtQEhAiABIARGDfkBIAMoAgAiACAEIAFraiEFIAEgAGtBAWohBgJAA0AgAS0AACAAQerUAGotAABHDSYgAEEBRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADPoBCyADQQA2AgAgBkEBaiEBQQMMJgtBtAEhAiABIARGDfgBIAMoAgAiACAEIAFraiEFIAEgAGtBAWohBgJAA0AgAS0AACAAQejUAGotAABHDSUgAEEBRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADPkBCyADQQA2AgAgBkEBaiEBQSYMJQsgASAERgRAQbMBIQIM+AELAkACQCABLQAAQdQAaw4CAAEnCyABQQFqIQFBmQEhAgzfAQsgAUEBaiEBQZoBIQIM3gELQbIBIQIgASAERg32ASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHm1ABqLQAARw0jIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAz3AQsgA0EANgIAIAZBAWohAUEnDCMLQbEBIQIgASAERg31ASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHk1ABqLQAARw0iIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAz2AQsgA0EANgIAIAZBAWohAUEcDCILQbABIQIgASAERg30ASADKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEHe1ABqLQAARw0hIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAz1AQsgA0EANgIAIAZBAWohAUEGDCELQa8BIQIgASAERg3zASADKAIAIgAgBCABa2ohBSABIABrQQRqIQYCQANAIAEtAAAgAEHZ1ABqLQAARw0gIABBBEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAz0AQsgA0EANgIAIAZBAWohAUEZDCALIAEgBEYEQEGuASECDPMBCwJAAkACQAJAIAEtAABBLWsOIwAkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJAEkJCQkJAIkJCQDJAsgAUEBaiEBQY4BIQIM3AELIAFBAWohAUGPASECDNsBCyABQQFqIQFBlAEhAgzaAQsgAUEBaiEBQZUBIQIM2QELQa0BIQIgASAERg3xASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHX1ABqLQAARw0eIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzyAQsgA0EANgIAIAZBAWohAUELDB4LIAEgBEYEQEGsASECDPEBCwJAAkAgAS0AAEHBAGsOAwAgASALIAFBAWohAUGQASECDNgBCyABQQFqIQFBkwEhAgzXAQsgASAERgRAQasBIQIM8AELAkACQCABLQAAQcEAaw4PAB8fHx8fHx8fHx8fHx8BHwsgAUEBaiEBQZEBIQIM1wELIAFBAWohAUGSASECDNYBCyABIARGBEBBqgEhAgzvAQsgAS0AAEHMAEcNHCABQQFqIQFBCgwbC0GpASECIAEgBEYN7QEgAygCACIAIAQgAWtqIQUgASAAa0EFaiEGAkADQCABLQAAIABB0dQAai0AAEcNGiAAQQVGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM7gELIANBADYCACAGQQFqIQFBHgwaC0GoASECIAEgBEYN7AEgAygCACIAIAQgAWtqIQUgASAAa0EGaiEGAkADQCABLQAAIABBytQAai0AAEcNGSAAQQZGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM7QELIANBADYCACAGQQFqIQFBFQwZC0GnASECIAEgBEYN6wEgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBx9QAai0AAEcNGCAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM7AELIANBADYCACAGQQFqIQFBFwwYC0GmASECIAEgBEYN6gEgAygCACIAIAQgAWtqIQUgASAAa0EFaiEGAkADQCABLQAAIABBwdQAai0AAEcNFyAAQQVGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM6wELIANBADYCACAGQQFqIQFBGAwXCyABIARGBEBBpQEhAgzqAQsCQAJAIAEtAABByQBrDgcAGRkZGRkBGQsgAUEBaiEBQYsBIQIM0QELIAFBAWohAUGMASECDNABC0GkASECIAEgBEYN6AEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGAkADQCABLQAAIABBptUAai0AAEcNFSAAQQFGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM6QELIANBADYCACAGQQFqIQFBCQwVC0GjASECIAEgBEYN5wEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGAkADQCABLQAAIABBpNUAai0AAEcNFCAAQQFGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM6AELIANBADYCACAGQQFqIQFBHwwUC0GiASECIAEgBEYN5gEgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBvtQAai0AAEcNEyAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM5wELIANBADYCACAGQQFqIQFBAgwTC0GhASECIAEgBEYN5QEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGA0AgAS0AACAAQbzUAGotAABHDREgAEEBRg0CIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADOUBCyABIARGBEBBoAEhAgzlAQtBASABLQAAQd8ARw0RGiABQQFqIQFBhwEhAgzLAQsgA0EANgIAIAZBAWohAUGIASECDMoBC0GfASECIAEgBEYN4gEgAygCACIAIAQgAWtqIQUgASAAa0EIaiEGAkADQCABLQAAIABBhNUAai0AAEcNDyAAQQhGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM4wELIANBADYCACAGQQFqIQFBKQwPC0GeASECIAEgBEYN4QEgAygCACIAIAQgAWtqIQUgASAAa0EDaiEGAkADQCABLQAAIABBuNQAai0AAEcNDiAAQQNGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM4gELIANBADYCACAGQQFqIQFBLQwOCyABIARGBEBBnQEhAgzhAQsgAS0AAEHFAEcNDiABQQFqIQFBhAEhAgzHAQsgASAERgRAQZwBIQIM4AELAkACQCABLQAAQcwAaw4IAA8PDw8PDwEPCyABQQFqIQFBggEhAgzHAQsgAUEBaiEBQYMBIQIMxgELQZsBIQIgASAERg3eASADKAIAIgAgBCABa2ohBSABIABrQQRqIQYCQANAIAEtAAAgAEGz1ABqLQAARw0LIABBBEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzfAQsgA0EANgIAIAZBAWohAUEjDAsLQZoBIQIgASAERg3dASADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGw1ABqLQAARw0KIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzeAQsgA0EANgIAIAZBAWohAUEADAoLIAEgBEYEQEGZASECDN0BCwJAAkAgAS0AAEHIAGsOCAAMDAwMDAwBDAsgAUEBaiEBQf0AIQIMxAELIAFBAWohAUGAASECDMMBCyABIARGBEBBmAEhAgzcAQsCQAJAIAEtAABBzgBrDgMACwELCyABQQFqIQFB/gAhAgzDAQsgAUEBaiEBQf8AIQIMwgELIAEgBEYEQEGXASECDNsBCyABLQAAQdkARw0IIAFBAWohAUEIDAcLQZYBIQIgASAERg3ZASADKAIAIgAgBCABa2ohBSABIABrQQNqIQYCQANAIAEtAAAgAEGs1ABqLQAARw0GIABBA0YNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzaAQsgA0EANgIAIAZBAWohAUEFDAYLQZUBIQIgASAERg3YASADKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEGm1ABqLQAARw0FIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzZAQsgA0EANgIAIAZBAWohAUEWDAULQZQBIQIgASAERg3XASADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGh1QBqLQAARw0EIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzYAQsgA0EANgIAIAZBAWohAUEQDAQLIAEgBEYEQEGTASECDNcBCwJAAkAgAS0AAEHDAGsODAAGBgYGBgYGBgYGAQYLIAFBAWohAUH5ACECDL4BCyABQQFqIQFB+gAhAgy9AQtBkgEhAiABIARGDdUBIAMoAgAiACAEIAFraiEFIAEgAGtBBWohBgJAA0AgAS0AACAAQaDUAGotAABHDQIgAEEFRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADNYBCyADQQA2AgAgBkEBaiEBQSQMAgsgA0EANgIADAILIAEgBEYEQEGRASECDNQBCyABLQAAQcwARw0BIAFBAWohAUETCzoAKSADKAIEIQAgA0EANgIEIAMgACABEC4iAA0CDAELQQAhAiADQQA2AhwgAyABNgIUIANB/h82AhAgA0EGNgIMDNEBC0H4ACECDLcBCyADQZABNgIcIAMgATYCFCADIAA2AgxBACECDM8BC0EAIQACQCADKAI4IgJFDQAgAigCQCICRQ0AIAMgAhEAACEACyAARQ0AIABBFUYNASADQQA2AhwgAyABNgIUIANBgg82AhAgA0EgNgIMQQAhAgzOAQtB9wAhAgy0AQsgA0GPATYCHCADIAE2AhQgA0HsGzYCECADQRU2AgxBACECDMwBCyABIARGBEBBjwEhAgzMAQsCQCABLQAAQSBGBEAgAUEBaiEBDAELIANBADYCHCADIAE2AhQgA0GbHzYCECADQQY2AgxBACECDMwBC0ECIQIMsgELA0AgAS0AAEEgRw0CIAQgAUEBaiIBRw0AC0GOASECDMoBCyABIARGBEBBjQEhAgzKAQsCQCABLQAAQQlrDgRKAABKAAtB9QAhAgywAQsgAy0AKUEFRgRAQfYAIQIMsAELQfQAIQIMrwELIAEgBEYEQEGMASECDMgBCyADQRA2AgggAyABNgIEDAoLIAEgBEYEQEGLASECDMcBCwJAIAEtAABBCWsOBEcAAEcAC0HzACECDK0BCyABIARHBEAgA0EQNgIIIAMgATYCBEHxACECDK0BC0GKASECDMUBCwJAIAEgBEcEQANAIAEtAABBoNAAai0AACIAQQNHBEACQCAAQQFrDgJJAAQLQfAAIQIMrwELIAQgAUEBaiIBRw0AC0GIASEC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BCABQQFqIgFHDQALQfsAIQIMpwELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0DIANB2wA2AhwgAyABNgIUIAMgADYCDEEAIQIMpgELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0DIANB3QA2AhwgAyABNgIUIAMgADYCDEEAIQIMpQELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0DIANB+gA2AhwgAyABNgIUIAMgADYCDEEAIQIMpAELIANBADYCHCADIAE2AhQgA0G8CjYCECADQQc2AgxBACECDKMBC0HPACECDIkBC0HRACECDIgBC0HnACECDIcBCyABIARGBEBB+gAhAgygAQsCQCABLQAAQQlrDgQgAAAgAAsgAUEBaiEBQeYAIQIMhgELIAEgBEYEQEH5ACECDJ8BCwJAIAEtAABBCWsOBB8AAB8AC0EAIQACQCADKAI4IgJFDQAgAigCOCICRQ0AIAMgAhEAACEACyAARQRAQeIBIQIMhgELIABBFUcEQCADQQA2AhwgAyABNgIUIANByQ02AhAgA0EaNgIMQQAhAgyfAQsgA0H4ADYCHCADIAE2AhQgA0HqGjYCECADQRU2AgxBACECDJ4BCyABIARHBEAgA0ENNgIIIAMgATYCBEHkACECDIUBC0H3ACECDJ0BCyABIARGBEBB9gAhAgydAQsCQAJAAkAgAS0AAEHIAGsOCwABCwsLCwsLCwsCCwsgAUEBaiEBQd0AIQIMhQELIAFBAWohAUHgACECDIQBCyABQQFqIQFB4wAhAgyDAQtB9QAhAiABIARGDZsBIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQbXVAGotAABHDQggAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADJwBCyADKAIEIQAgA0IANwMAIAMgACAGQQFqIgEQKyIABEAgA0H0ADYCHCADIAE2AhQgAyAANgIMQQAhAgycAQtB4gAhAgyCAQtBACEAAkAgAygCOCICRQ0AIAIoAjQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0HqDTYCECADQSY2AgxBACECDJwBC0HhACECDIIBCyADQfMANgIcIAMgATYCFCADQYAbNgIQIANBFTYCDEEAIQIMmgELIAMtACkiAEEja0ELSQ0JAkAgAEEGSw0AQQEgAHRBygBxRQ0ADAoLQQAhAiADQQA2AhwgAyABNgIUIANB7Qk2AhAgA0EINgIMDJkBC0HyACECIAEgBEYNmAEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGAkADQCABLQAAIABBs9UAai0AAEcNBSAAQQFGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMmQELIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARArIgAEQCADQfEANgIcIAMgATYCFCADIAA2AgxBACECDJkBC0HfACECDH8LQQAhAAJAIAMoAjgiAkUNACACKAI0IgJFDQAgAyACEQAAIQALAkAgAARAIABBFUYNASADQQA2AhwgAyABNgIUIANB6g02AhAgA0EmNgIMQQAhAgyZAQtB3gAhAgx/CyADQfAANgIcIAMgATYCFCADQYAbNgIQIANBFTYCDEEAIQIMlwELIAMtAClBIUYNBiADQQA2AhwgAyABNgIUIANBkQo2AhAgA0EINgIMQQAhAgyWAQtB7wAhAiABIARGDZUBIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQbDVAGotAABHDQIgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADJYBCyADKAIEIQAgA0IANwMAIAMgACAGQQFqIgEQKyIARQ0CIANB7QA2AhwgAyABNgIUIAMgADYCDEEAIQIMlQELIANBADYCAAsgAygCBCEAIANBADYCBCADIAAgARArIgBFDYABIANB7gA2AhwgAyABNgIUIAMgADYCDEEAIQIMkwELQdwAIQIMeQtBACEAAkAgAygCOCICRQ0AIAIoAjQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0HqDTYCECADQSY2AgxBACECDJMBC0HbACECDHkLIANB7AA2AhwgAyABNgIUIANBgBs2AhAgA0EVNgIMQQAhAgyRAQsgAy0AKSIAQSNJDQAgAEEuRg0AIANBADYCHCADIAE2AhQgA0HJCTYCECADQQg2AgxBACECDJABC0HaACECDHYLIAEgBEYEQEHrACECDI8BCwJAIAEtAABBL0YEQCABQQFqIQEMAQsgA0EANgIcIAMgATYCFCADQbI4NgIQIANBCDYCDEEAIQIMjwELQdkAIQIMdQsgASAERwRAIANBDjYCCCADIAE2AgRB2AAhAgx1C0HqACECDI0BCyABIARGBEBB6QAhAgyNAQsgAS0AAEEwayIAQf8BcUEKSQRAIAMgADoAKiABQQFqIQFB1wAhAgx0CyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNeiADQegANgIcIAMgATYCFCADIAA2AgxBACECDIwBCyABIARGBEBB5wAhAgyMAQsCQCABLQAAQS5GBEAgAUEBaiEBDAELIAMoAgQhACADQQA2AgQgAyAAIAEQLyIARQ17IANB5gA2AhwgAyABNgIUIAMgADYCDEEAIQIMjAELQdYAIQIMcgsgASAERgRAQeUAIQIMiwELQQAhAEEBIQVBASEHQQAhAgJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAIAEtAABBMGsOCgoJAAECAwQFBggLC0ECDAYLQQMMBQtBBAwEC0EFDAMLQQYMAgtBBwwBC0EICyECQQAhBUEAIQcMAgtBCSECQQEhAEEAIQVBACEHDAELQQAhBUEBIQILIAMgAjoAKyABQQFqIQECQAJAIAMtAC5BEHENAAJAAkACQCADLQAqDgMBAAIECyAHRQ0DDAILIAANAQwCCyAFRQ0BCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNAiADQeIANgIcIAMgATYCFCADIAA2AgxBACECDI0BCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNfSADQeMANgIcIAMgATYCFCADIAA2AgxBACECDIwBCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNeyADQeQANgIcIAMgATYCFCADIAA2AgwMiwELQdQAIQIMcQsgAy0AKUEiRg2GAUHTACECDHALQQAhAAJAIAMoAjgiAkUNACACKAJEIgJFDQAgAyACEQAAIQALIABFBEBB1QAhAgxwCyAAQRVHBEAgA0EANgIcIAMgATYCFCADQaQNNgIQIANBITYCDEEAIQIMiQELIANB4QA2AhwgAyABNgIUIANB0Bo2AhAgA0EVNgIMQQAhAgyIAQsgASAERgRAQeAAIQIMiAELAkACQAJAAkACQCABLQAAQQprDgQBBAQABAsgAUEBaiEBDAELIAFBAWohASADQS9qLQAAQQFxRQ0BC0HSACECDHALIANBADYCHCADIAE2AhQgA0G2ETYCECADQQk2AgxBACECDIgBCyADQQA2AhwgAyABNgIUIANBthE2AhAgA0EJNgIMQQAhAgyHAQsgASAERgRAQd8AIQIMhwELIAEtAABBCkYEQCABQQFqIQEMCQsgAy0ALkHAAHENCCADQQA2AhwgAyABNgIUIANBthE2AhAgA0ECNgIMQQAhAgyGAQsgASAERgRAQd0AIQIMhgELIAEtAAAiAkENRgRAIAFBAWohAUHQACECDG0LIAEhACACQQlrDgQFAQEFAQsgBCABIgBGBEBB3AAhAgyFAQsgAC0AAEEKRw0AIABBAWoMAgtBACECIANBADYCHCADIAA2AhQgA0HKLTYCECADQQc2AgwMgwELIAEgBEYEQEHbACECDIMBCwJAIAEtAABBCWsOBAMAAAMACyABQQFqCyEBQc4AIQIMaAsgASAERgRAQdoAIQIMgQELIAEtAABBCWsOBAABAQABC0EAIQIgA0EANgIcIANBmhI2AhAgA0EHNgIMIAMgAUEBajYCFAx/CyADQYASOwEqQQAhAAJAIAMoAjgiAkUNACACKAI4IgJFDQAgAyACEQAAIQALIABFDQAgAEEVRw0BIANB2QA2AhwgAyABNgIUIANB6ho2AhAgA0EVNgIMQQAhAgx+C0HNACECDGQLIANBADYCHCADIAE2AhQgA0HJDTYCECADQRo2AgxBACECDHwLIAEgBEYEQEHZACECDHwLIAEtAABBIEcNPSABQQFqIQEgAy0ALkEBcQ09IANBADYCHCADIAE2AhQgA0HCHDYCECADQR42AgxBACECDHsLIAEgBEYEQEHYACECDHsLAkACQAJAAkACQCABLQAAIgBBCmsOBAIDAwABCyABQQFqIQFBLCECDGULIABBOkcNASADQQA2AhwgAyABNgIUIANB5xE2AhAgA0EKNgIMQQAhAgx9CyABQQFqIQEgA0Evai0AAEEBcUUNcyADLQAyQYABcUUEQCADQTJqIQIgAxA1QQAhAAJAIAMoAjgiBkUNACAGKAIoIgZFDQAgAyAGEQAAIQALAkACQCAADhZNTEsBAQEBAQEBAQEBAQEBAQEBAQEAAQsgA0EpNgIcIAMgATYCFCADQawZNgIQIANBFTYCDEEAIQIMfgsg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c3BvbnNlIHN0YXR1cwBFeHBlY3RlZCBMRiBhZnRlciBoZWFkZXJzAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMAVXNlciBjYWxsYmFjayBlcnJvcgBgb25fcmVzZXRgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19oZWFkZXJgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2JlZ2luYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlYCBjYWxsYmFjayBlcnJvcgBgb25fc3RhdHVzX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdmVyc2lvbl9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3VybF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3Byb3RvY29sX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fcHJvdG9jb2wARW1wdHkgQ29udGVudC1MZW5ndGgASW52YWxpZCBjaGFyYWN0ZXIgaW4gQ29udGVudC1MZW5ndGgAVHJhbnNmZXItRW5jb2RpbmcgY2FuJ3QgYmUgcHJlc2VudCB3aXRoIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgc2l6ZQBFeHBlY3RlZCBMRiBhZnRlciBjaHVuayBzaXplAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBVbmV4cGVjdGVkIHdoaXRlc3BhY2UgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgTEYgYWZ0ZXIgaGVhZGVyIHZhbHVlAEludmFsaWQgYFRyYW5zZmVyLUVuY29kaW5nYCBoZWFkZXIgdmFsdWUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciBjaHVuayBleHRlbnNpb24gdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZSB2YWx1ZQBJbnZhbGlkIHF1b3RlZC1wYWlyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAFBhdXNlZCBieSBvbl9oZWFkZXJzX2NvbXBsZXRlAEludmFsaWQgRU9GIHN0YXRlAG9uX3Jlc2V0IHBhdXNlAG9uX2NodW5rX2hlYWRlciBwYXVzZQBvbl9tZXNzYWdlX2JlZ2luIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZSBwYXVzZQBvbl9zdGF0dXNfY29tcGxldGUgcGF1c2UAb25fdmVyc2lvbl9jb21wbGV0ZSBwYXVzZQBvbl91cmxfY29tcGxldGUgcGF1c2UAb25fcHJvdG9jb2xfY29tcGxldGUgcGF1c2UAb25fY2h1bmtfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX3ZhbHVlX2NvbXBsZXRlIHBhdXNlAG9uX21lc3NhZ2VfY29tcGxldGUgcGF1c2UAb25fbWV0aG9kX2NvbXBsZXRlIHBhdXNlAG9uX2hlYWRlcl9maWVsZF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19leHRlbnNpb25fbmFtZSBwYXVzZQBVbmV4cGVjdGVkIHNwYWNlIGFmdGVyIHN0YXJ0IGxpbmUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciByZXNwb25zZSBsaW5lAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fY2h1bmtfZXh0ZW5zaW9uX25hbWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBuYW1lAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgZXh0ZW5zaW9uIG5hbWUASW52YWxpZCBzdGF0dXMgY29kZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABNaXNzaW5nIGV4cGVjdGVkIENSIGFmdGVyIGNodW5rIGRhdGEARXhwZWN0ZWQgTEYgYWZ0ZXIgY2h1bmsgZGF0YQBVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AARGF0YSBhZnRlciBgQ29ubmVjdGlvbjogY2xvc2VgAFNXSVRDSF9QUk9YWQBVU0VfUFJPWFkATUtBQ1RJVklUWQBVTlBST0NFU1NBQkxFX0VOVElUWQBRVUVSWQBDT1BZAE1PVkVEX1BFUk1BTkVOVExZAFRPT19FQVJMWQBOT1RJRlkARkFJTEVEX0RFUEVOREVOQ1kAQkFEX0dBVEVXQVkAUExBWQBQVVQAQ0hFQ0tPVVQAR0FURVdBWV9USU1FT1VUAFJFUVVFU1RfVElNRU9VVABORVRXT1JLX0NPTk5FQ1RfVElNRU9VVABDT05ORUNUSU9OX1RJTUVPVVQATE9HSU5fVElNRU9VVABORVRXT1JLX1JFQURfVElNRU9VVABQT1NUAE1JU0RJUkVDVEVEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9SRVFVRVNUAENMSUVOVF9DTE9TRURfTE9BRF9CQUxBTkNFRF9SRVFVRVNUAEJBRF9SRVFVRVNUAEhUVFBfUkVRVUVTVF9TRU5UX1RPX0hUVFBTX1BPUlQAUkVQT1JUAElNX0FfVEVBUE9UAFJFU0VUX0NPTlRFTlQATk9fQ09OVEVOVABQQVJUSUFMX0NPTlRFTlQASFBFX0lOVkFMSURfQ09OU1RBTlQASFBFX0NCX1JFU0VUAEdFVABIUEVfU1RSSUNUAENPTkZMSUNUAFRFTVBPUkFSWV9SRURJUkVDVABQRVJNQU5FTlRfUkVESVJFQ1QAQ09OTkVDVABNVUxUSV9TVEFUVVMASFBFX0lOVkFMSURfU1RBVFVTAFRPT19NQU5ZX1JFUVVFU1RTAEVBUkxZX0hJTlRTAFVOQVZBSUxBQkxFX0ZPUl9MRUdBTF9SRUFTT05TAE9QVElPTlMAU1dJVENISU5HX1BST1RPQ09MUwBWQVJJQU5UX0FMU09fTkVHT1RJQVRFUwBNVUxUSVBMRV9DSE9JQ0VTAElOVEVSTkFMX1NFUlZFUl9FUlJPUgBXRUJfU0VSVkVSX1VOS05PV05fRVJST1IAUkFJTEdVTl9FUlJPUgBJREVOVElUWV9QUk9WSURFUl9BVVRIRU5USUNBVElPTl9FUlJPUgBTU0xfQ0VSVElGSUNBVEVfRVJST1IASU5WQUxJRF9YX0ZPUldBUkRFRF9GT1IAU0VUX1BBUkFNRVRFUgBHRVRfUEFSQU1FVEVSAEhQRV9VU0VSAFNFRV9PVEhFUgBIUEVfQ0JfQ0hVTktfSEVBREVSAEV4cGVjdGVkIExGIGFmdGVyIENSAE1LQ0FMRU5EQVIAU0VUVVAAV0VCX1NFUlZFUl9JU19ET1dOAFRFQVJET1dOAEhQRV9DTE9TRURfQ09OTkVDVElPTgBIRVVSSVNUSUNfRVhQSVJBVElPTgBESVNDT05ORUNURURfT1BFUkFUSU9OAE5PTl9BVVRIT1JJVEFUSVZFX0lORk9STUFUSU9OAEhQRV9JTlZBTElEX1ZFUlNJT04ASFBFX0NCX01FU1NBR0VfQkVHSU4AU0lURV9JU19GUk9aRU4ASFBFX0lOVkFMSURfSEVBREVSX1RPS0VOAElOVkFMSURfVE9LRU4ARk9SQklEREVOAEVOSEFOQ0VfWU9VUl9DQUxNAEhQRV9JTlZBTElEX1VSTABCTE9DS0VEX0JZX1BBUkVOVEFMX0NPTlRST0wATUtDT0wAQUNMAEhQRV9JTlRFUk5BTABSRVFVRVNUX0hFQURFUl9GSUVMRFNfVE9PX0xBUkdFX1VOT0ZGSUNJQUwASFBFX09LAFVOTElOSwBVTkxPQ0sAUFJJAFJFVFJZX1dJVEgASFBFX0lOVkFMSURfQ09OVEVOVF9MRU5HVEgASFBFX1VORVhQRUNURURfQ09OVEVOVF9MRU5HVEgARkxVU0gAUFJPUFBBVENIAE0tU0VBUkNIAFVSSV9UT09fTE9ORwBQUk9DRVNTSU5HAE1JU0NFTExBTkVPVVNfUEVSU0lTVEVOVF9XQVJOSU5HAE1JU0NFTExBTkVPVVNfV0FSTklORwBIUEVfSU5WQUxJRF9UUkFOU0ZFUl9FTkNPRElORwBFeHBlY3RlZCBDUkxGAEhQRV9JTlZBTElEX0NIVU5LX1NJWkUATU9WRQBDT05USU5VRQBIUEVfQ0JfU1RBVFVTX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJTX0NPTVBMRVRFAEhQRV9DQl9WRVJTSU9OX0NPTVBMRVRFAEhQRV9DQl9VUkxfQ09NUExFVEUASFBFX0NCX1BST1RPQ09MX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19DT01QTEVURQBIUEVfQ0JfSEVBREVSX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fVkFMVUVfQ09NUExFVEUASFBFX0NCX0NIVU5LX0VYVEVOU0lPTl9OQU1FX0NPTVBMRVRFAEhQRV9DQl9NRVNTQUdFX0NPTVBMRVRFAEhQRV9DQl9NRVRIT0RfQ09NUExFVEUASFBFX0NCX0hFQURFUl9GSUVMRF9DT01QTEVURQBERUxFVEUASFBFX0lOVkFMSURfRU9GX1NUQVRFAElOVkFMSURfU1NMX0NFUlRJRklDQVRFAFBBVVNFAE5PX1JFU1BPTlNFAFVOU1VQUE9SVEVEX01FRElBX1RZUEUAR09ORQBOT1RfQUNDRVBUQUJMRQBTRVJWSUNFX1VOQVZBSUxBQkxFAFJBTkdFX05PVF9TQVRJU0ZJQUJMRQBPUklHSU5fSVNfVU5SRUFDSEFCTEUAUkVTUE9OU0VfSVNfU1RBTEUAUFVSR0UATUVSR0UAUkVRVUVTVF9IRUFERVJfRklFTERTX1RPT19MQVJHRQBSRVFVRVNUX0hFQURFUl9UT09fTEFSR0UAUEFZTE9BRF9UT09fTEFSR0UASU5TVUZGSUNJRU5UX1NUT1JBR0UASFBFX1BBVVNFRF9VUEdSQURFAEhQRV9QQVVTRURfSDJfVVBHUkFERQBTT1VSQ0UAQU5OT1VOQ0UAVFJBQ0UASFBFX1VORVhQRUNURURfU1BBQ0UAREVTQ1JJQkUAVU5TVUJTQ1JJQkUAUkVDT1JEAEhQRV9JTlZBTElEX01FVEhPRABOT1RfRk9VTkQAUFJPUEZJTkQAVU5CSU5EAFJFQklORABVTkFVVEhPUklaRUQATUVUSE9EX05PVF9BTExPV0VEAEhUVFBfVkVSU0lPTl9OT1RfU1VQUE9SVEVEAEFMUkVBRFlfUkVQT1JURUQAQUNDRVBURUQATk9UX0lNUExFTUVOVEVEAExPT1BfREVURUNURUQASFBFX0NSX0VYUEVDVEVEAEhQRV9MRl9FWFBFQ1RFRABDUkVBVEVEAElNX1VTRUQASFBFX1BBVVNFRABUSU1FT1VUX09DQ1VSRUQAUEFZTUVOVF9SRVFVSVJFRABQUkVDT05ESVRJT05fUkVRVUlSRUQAUFJPWFlfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATkVUV09SS19BVVRIRU5USUNBVElPTl9SRVFVSVJFRABMRU5HVEhfUkVRVUlSRUQAU1NMX0NFUlRJRklDQVRFX1JFUVVJUkVEAFVQR1JBREVfUkVRVUlSRUQAUEFHRV9FWFBJUkVEAFBSRUNPTkRJVElPTl9GQUlMRUQARVhQRUNUQVRJT05fRkFJTEVEAFJFVkFMSURBVElPTl9GQUlMRUQAU1NMX0hBTkRTSEFLRV9GQUlMRUQATE9DS0VEAFRSQU5TRk9STUFUSU9OX0FQUExJRUQATk9UX01PRElGSUVEAE5PVF9FWFRFTkRFRABCQU5EV0lEVEhfTElNSVRfRVhDRUVERUQAU0lURV9JU19PVkVSTE9BREVEAEhFQUQARXhwZWN0ZWQgSFRUUC8sIFJUU1AvIG9yIElDRS8A5xUAAK8VAACkEgAAkhoAACYWAACeFAAA2xkAAHkVAAB+EgAA/hQAADYVAAALFgAA2BYAAPMSAABCGAAArBYAABIVAAAUFwAA7xcAAEgUAABxFwAAshoAAGsZAAB+GQAANRQAAIIaAABEFwAA/RYAAB4YAACHFwAAqhkAAJMSAAAHGAAALBcAAMoXAACkFwAA5xUAAOcVAABYFwAAOxgAAKASAAAtHAAAwxEAAEgRAADeEgAAQhMAAKQZAAD9EAAA9xUAAKUVAADvFgAA+BkAAEoWAABWFgAA9RUAAAoaAAAIGgAAARoAAKsVAABCEgAA1xAAAEwRAAAFGQAAVBYAAB4RAADKGQAAyBkAAE4WAAD/GAAAcRQAAPAVAADuFQAAlBkAAPwVAAC/GQAAmxkAAHwUAABDEQAAcBgAAJUUAAAnFAAAGRQAANUSAADUGQAARBYAAPcQAEG5OwsBAQBB0DsL4AEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEDAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBuj0LBAEAAAIAQdE9C14DBAMDAwMDAAADAwADAwADAwMDAwMDAwMDAAUAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAwADAEG6PwsEAQAAAgBB0T8LXgMAAwMDAwMAAAMDAAMDAAMDAwMDAwMDAwMABAAFAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwADAAMAQbDBAAsNbG9zZWVlcC1hbGl2ZQBBycEACwEBAEHgwQAL4AEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBycMACwEBAEHgwwAL5wEBAQEBAQEBAQEBAQECAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAWNodW5rZWQAQfHFAAteAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQBB0McACyFlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AQYDIAAsgcmFuc2Zlci1lbmNvZGluZ3BncmFkZQ0KDQpTTQ0KDQoAQanIAAsFAQIAAQMAQcDIAAtfBAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanKAAsFAQIAAQMAQcDKAAtfBAUFBgUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanMAAsEAQAAAQBBwcwAC14CAgACAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAEGpzgALBQECAAEDAEHAzgALXwQFAAAFBQUFBQUFBQUFBQYFBQUFBQUFBQUFBQUABQAHCAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQAFAAUABQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAAAAFAEGp0AALBQEBAAEBAEHA0AALAQEAQdrQAAtBAgAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAQanSAAsFAQEAAQEAQcDSAAsBAQBBytIACwYCAAAAAAIAQeHSAAs6AwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBBoNQAC50BTk9VTkNFRUNLT1VUTkVDVEVURUNSSUJFTFVTSEVURUFEU0VBUkNIUkdFQ1RJVklUWUxFTkRBUlZFT1RJRllQVElPTlNDSFNFQVlTVEFUQ0hHRVVFUllPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFVFRQQ0VUU1BBRFRQLw==","base64")}})});var $2Q=R((bsY,Z2Q)=>{var{Buffer:pj0}=u("node:buffer"),Pr;Object.defineProperty(Z2Q,"exports",{get:()=>{return Pr?Pr:Pr=pj0.from("AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAn9/AGABfwBgBH9/f38Bf2AAAGADf39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQAEA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAAzU0BQYAAAMAAAAAAAADAQMAAwMDAAACAAAAAAICAgICAgICAgIBAQEBAQEBAQEBAwAAAwAAAAQFAXABExMFAwEAAgYIAX8BQcDZBAsHxQcoBm1lbW9yeQIAC19pbml0aWFsaXplAAgZX19pbmRpcmVjdF9mdW5jdGlvbl90YWJsZQEAC2xsaHR0cF9pbml0AAkYbGxodHRwX3Nob3VsZF9rZWVwX2FsaXZlADcMbGxodHRwX2FsbG9jAAsGbWFsbG9jADkLbGxodHRwX2ZyZWUADARmcmVlAAwPbGxodHRwX2dldF90eXBlAA0VbGxodHRwX2dldF9odHRwX21ham9yAA4VbGxodHRwX2dldF9odHRwX21pbm9yAA8RbGxodHRwX2dldF9tZXRob2QAEBZsbGh0dHBfZ2V0X3N0YXR1c19jb2RlABESbGxodHRwX2dldF91cGdyYWRlABIMbGxodHRwX3Jlc2V0ABMObGxodHRwX2V4ZWN1dGUAFBRsbGh0dHBfc2V0dGluZ3NfaW5pdAAVDWxsaHR0cF9maW5pc2gAFgxsbGh0dHBfcGF1c2UAFw1sbGh0dHBfcmVzdW1lABgbbGxodHRwX3Jlc3VtZV9hZnRlcl91cGdyYWRlABkQbGxodHRwX2dldF9lcnJubwAaF2xsaHR0cF9nZXRfZXJyb3JfcmVhc29uABsXbGxodHRwX3NldF9lcnJvcl9yZWFzb24AHBRsbGh0dHBfZ2V0X2Vycm9yX3BvcwAdEWxsaHR0cF9lcnJub19uYW1lAB4SbGxodHRwX21ldGhvZF9uYW1lAB8SbGxodHRwX3N0YXR1c19uYW1lACAabGxodHRw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AXRrQT5qIQILIAEgAjYCHCABQgA3AhAgAkECdEH01wBqIQACQEHI1QAoAgAiA0EBIAJ0IgdxRQRAIAAgATYCAEHI1QAgAyAHcjYCACABIAA2AhggASABNgIIIAEgATYCDAwBCyAEQRkgAkEBdmtBACACQR9HG3QhAiAAKAIAIQACQANAIAAiAygCBEF4cSAERg0BIAJBHXYhACACQQF0IQIgAyAAQQRxakEQaiIHKAIAIgANAAsgByABNgIAIAEgAzYCGCABIAE2AgwgASABNgIIDAELIAMoAggiACABNgIMIAMgATYCCCABQQA2AhggASADNgIMIAEgADYCCAtB5NUAQeTVACgCAEEBayIAQX8gABs2AgALCwcAIAAtACgLBwAgAC0AKgsHACAALQArCwcAIAAtACkLBwAgAC8BNAsHACAALQAwC0ABBH8gACgCGCEBIAAvAS4hAiAALQAoIQMgACgCOCEEIAAQOCAAIAQ2AjggACADOgAoIAAgAjsBLiAAIAE2AhgLhocCAwd/A34BeyABIAJqIQQCQCAAIgMoAgwiAA0AIAMoAgQEQCADIAE2AgQLIwBBEGsiCSQAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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DAgLQeMBDAcLQdcBDAYLQdgBDAULQdkBDAQLQdoBDAMLQdsBDAILQd0BDAELQdwBCyECA0ACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAMCfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAn8CQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAwJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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A0EXNgIcIAMgADYCDCADIAFBAWo2AhQM+AILIABBFUYNI0EAIQIgA0EANgIcIAMgATYCFCADQdYMNgIQIANBIzYCDAz3AgsgAygCBCEAQQAhAiADQQA2AgQgAyAAIAEQNCIARQRAIAFBAWohAQwdCyADQRk2AhwgAyAANgIMIAMgAUEBajYCFAz2AgsgAygCBCEAQQAhAiADQQA2AgQgAyAAIAEQNCIARQRAIAFBAWohAQzvAgsgA0EaNgIcIAMgADYCDCADIAFBAWo2AhQM9QILIABBFUYNH0EAIQIgA0EANgIcIAMgATYCFCADQdAPNgIQIANBIjYCDAz0AgsgAygCBCEAIANBADYCBCADIAAgARAzIgBFBEAgAUEBaiEBDBsLIANBHDYCHCADIAA2AgwgAyABQQFqNgIUQQAhAgzzAgsgAygCBCEAIANBADYCBCADIAAgARAzIgBFBEAgAUEBaiEBDOsCCyADQR02AhwgAyAANgIMIAMgAUEBajYCFEEAIQIM8gILIABBO0cNASABQQFqIQELQSYhAgzXAgtBACECIANBADYCHCADIAE2AhQgA0GfFTYCECADQQw2AgwM7wILIAEgBEcEQANAIAEtAABBIEcNhAIgBCABQQFqIgFHDQALQSwhAgzvAgtBLCECDO4CCyABIARGBEBBNCECDO4CCwJAAkADQAJAIAEtAABBCmsOBAIAAAMACyAEIAFBAWoiAUcNAAtBNCECDO8CCyADKAIEIQAgA0EANgIEIAMgACABEDEiAEUNnwIgA0EyNgIcIAMgATYCFCADIAA2AgxBACECDO4CCyADKAIEIQAgA0EANgIEIAMgACABEDEiAEUEQCABQQFqIQEMnwILIANBMjYCHCADIAA2AgwgAyABQQFqNgIUQQAhAgztAgsgASAERwRAAkADQCABLQAAQTBrIgBB/wFxQQpPBEBBOiECDNcCCyADKQMgIgtCmbPmzJmz5swZVg0BIAMgC0IKfiIKNwMgIAogAK1C/wGDIgtCf4VWDQEgAyAKIAt8NwMgIAQgAUEBaiIBRw0AC0HAACECDO4CCyADKAIEIQAgA0EANgIEIAMgACABQQFqIgEQMSIADRcM4gILQcAAIQIM7AILIAEgBEYEQEHJACECDOwCCwJAA0ACQCABLQAAQQlrDhgAAqICogKpAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAgCiAgsgBCABQQFqIgFHDQALQckAIQIM7AILIAFBAWohASADQS9qLQAAQQFxDaUCIANBADYCHCADIAE2AhQgA0GXEDYCECADQQo2AgxBACECDOsCCyABIARHBEADQCABLQAAQSBHDRUgBCABQQFqIgFHDQALQfgAIQIM6wILQfgAIQIM6gILIANBAjoAKAw4C0EAIQIgA0EANgIcIANBvws2AhAgA0ECNgIMIAMgAUEBajYCFAzoAgtBACECDM4CC0ENIQIMzQILQRMhAgzMAgtBFSECDMsCC0EWIQIMygILQRghAgzJAgtBGSECDMgCC0EaIQIMxwILQRshAgzGAgtBHCECDMUCC0EdIQIMxAILQR4hAgzDAgtBHyECDMICC0EgIQIMwQILQSIhAgzAAgtBIyECDL8CC0ElIQIMvgILQeUAIQIMvQILIANBPTYCHCADIAE2AhQgAyAANgIMQQAhAgzVAgsgA0EbNgIcIAMgATYCFCADQaQcNgIQIANBFTYCDEEAIQIM1AILIANBIDYCHCADIAE2AhQgA0GYGjYCECADQRU2AgxBACECDNMCCyADQRM2AhwgAyABNgIUIANBmBo2AhAgA0EVNgIMQQAhAgzSAgsgA0ELNgIcIAMgATYCFCADQZgaNgIQIANBFTYCDEEAIQIM0QILIANBEDYCHCADIAE2AhQgA0GYGjYCECADQRU2AgxBACECDNACCyADQSA2AhwgAyABNgIUIANBpBw2AhAgA0EVNgIMQQAhAgzPAgsgA0ELNgIcIAMgATYCFCADQaQcNgIQIANBFTYCDEEAIQIMzgILIANBDDYCHCADIAE2AhQgA0GkHDYCECADQRU2AgxBACECDM0CC0EAIQIgA0EANgIcIAMgATYCFCADQd0ONgIQIANBEjYCDAzMAgsCQANAAkAgAS0AAEEKaw4EAAICAAILIAQgAUEBaiIBRw0AC0H9ASECDMwCCwJAAkAgAy0ANkEBRw0AQQAhAAJAIAMoAjgiAkUNACACKAJgIgJFDQAgAyACEQAAIQALIABFDQAgAEEVRw0BIANB/AE2AhwgAyABNgIUIANB3Bk2AhAgA0EVNgIMQQAhAgzNAgtB3AEhAgyzAgsgA0EANgIcIAMgATYCFCADQfkLNgIQIANBHzYCDEEAIQIMywILAkACQCADLQAoQQFrDgIEAQALQdsBIQIMsgILQdQBIQIMsQILIANBAjoAMUEAIQACQCADKAI4IgJFDQAgAigCACICRQ0AIAMgAhEAACEACyAARQRAQd0BIQIMsQILIABBFUcEQCADQQA2AhwgAyABNgIUIANBtAw2AhAgA0EQNgIMQQAhAgzKAgsgA0H7ATYCHCADIAE2AhQgA0GBGjYCECADQRU2AgxBACECDMkCCyABIARGBEBB+gEhAgzJAgsgAS0AAEHIAEYNASADQQE6ACgLQcABIQIMrgILQdoBIQIMrQILIAEgBEcEQCADQQw2AgggAyABNgIEQdkBIQIMrQILQfkBIQIMxQILIAEgBEYEQEH4ASECDMUCCyABLQAAQcgARw0EIAFBAWohAUHYASECDKsCCyABIARGBEBB9wEhAgzEAgsCQAJAIAEtAABBxQBrDhAABQUFBQUFBQUFBQUFBQUBBQsgAUEBaiEBQdYBIQIMqwILIAFBAWohAUHXASECDKoCC0H2ASECIAEgBEYNwgIgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABButUAai0AAEcNAyAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMwwILIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARAuIgBFBEBB4wEhAgyqAgsgA0H1ATYCHCADIAE2AhQgAyAANgIMQQAhAgzCAgtB9AEhAiABIARGDcECIAMoAgAiACAEIAFraiEFIAEgAGtBAWohBgJAA0AgAS0AACAAQbjVAGotAABHDQIgAEEBRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADMICCyADQYEEOwEoIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARAuIgANAwwCCyADQQA2AgALQQAhAiADQQA2AhwgAyABNgIUIANB5R82AhAgA0EINgIMDL8CC0HVASECDKUCCyADQfMBNgIcIAMgATYCFCADIAA2AgxBACECDL0CC0EAIQACQCADKAI4IgJFDQAgAigCQCICRQ0AIAMgAhEAACEACyAARQ1uIABBFUcEQCADQQA2AhwgAyABNgIUIANBgg82AhAgA0EgNgIMQQAhAgy9AgsgA0GPATYCHCADIAE2AhQgA0HsGzYCECADQRU2AgxBACECDLwCCyABIARHBEAgA0ENNgIIIAMgATYCBEHTASECDKMCC0HyASECDLsCCyABIARGBEBB8QEhAgy7AgsCQAJAAkAgAS0AAEHIAGsOCwABCAgICAgICAgCCAsgAUEBaiEBQdABIQIMowILIAFBAWohAUHRASECDKICCyABQQFqIQFB0gEhAgyhAgtB8AEhAiABIARGDbkCIAMoAgAiACAEIAFraiEGIAEgAGtBAmohBQNAIAEtAAAgAEG11QBqLQAARw0EIABBAkYNAyAAQQFqIQAgBCABQQFqIgFHDQALIAMgBjYCAAy5AgtB7wEhAiABIARGDbgCIAMoAgAiACAEIAFraiEGIAEgAGtBAWohBQNAIAEtAAAgAEGz1QBqLQAARw0DIABBAUYNAiAAQQFqIQAgBCABQQFqIgFHDQALIAMgBjYCAAy4AgtB7gEhAiABIARGDbcCIAMoAgAiACAEIAFraiEGIAEgAGtBAmohBQNAIAEtAAAgAEGw1QBqLQAARw0CIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBjYCAAy3AgsgAygCBCEAIANCADcDACADIAAgBUEBaiIBECsiAEUNAiADQewBNgIcIAMgATYCFCADIAA2AgxBACECDLYCCyADQQA2AgALIAMoAgQhACADQQA2AgQgAyAAIAEQKyIARQ2cAiADQe0BNgIcIAMgATYCFCADIAA2AgxBACECDLQCC0HPASECDJoCC0EAIQACQCADKAI4IgJFDQAgAigCNCICRQ0AIAMgAhEAACEACwJAIAAEQCAAQRVGDQEgA0EANgIcIAMgATYCFCADQeoNNgIQIANBJjYCDEEAIQIMtAILQc4BIQIMmgILIANB6wE2AhwgAyABNgIUIANBgBs2AhAgA0EVNgIMQQAhAgyyAgsgASAERgRAQesBIQIMsgILIAEtAABBL0YEQCABQQFqIQEMAQsgA0EANgIcIAMgATYCFCADQbI4NgIQIANBCDYCDEEAIQIMsQILQc0BIQIMlwILIAEgBEcEQCADQQ42AgggAyABNgIEQcwBIQIMlwILQeoBIQIMrwILIAEgBEYEQEHpASECDK8CCyABLQAAQTBrIgBB/wFxQQpJBEAgAyAAOgAqIAFBAWohAUHLASECDJYCCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNlwIgA0HoATYCHCADIAE2AhQgAyAANgIMQQAhAgyuAgsgASAERgRAQecBIQIMrgILAkAgAS0AAEEuRgRAIAFBAWohAQwBCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNmAIgA0HmATYCHCADIAE2AhQgAyAANgIMQQAhAgyuAgtBygEhAgyUAgsgASAERgRAQeUBIQIMrQILQQAhAEEBIQVBASEHQQAhAgJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAIAEtAABBMGsOCgoJAAECAwQFBggLC0ECDAYLQQMMBQtBBAwEC0EFDAMLQQYMAgtBBwwBC0EICyECQQAhBUEAIQcMAgtBCSECQQEhAEEAIQVBACEHDAELQQAhBUEBIQILIAMgAjoAKyABQQFqIQECQAJAIAMtAC5BEHENAAJAAkACQCADLQAqDgMBAAIECyAHRQ0DDAILIAANAQwCCyAFRQ0BCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNAiADQeIBNgIcIAMgATYCFCADIAA2AgxBACECDK8CCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNmgIgA0HjATYCHCADIAE2AhQgAyAANgIMQQAhAgyuAgsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDZgCIANB5AE2AhwgAyABNgIUIAMgADYCDAytAgtByQEhAgyTAgtBACEAAkAgAygCOCICRQ0AIAIoAkQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0GkDTYCECADQSE2AgxBACECDK0CC0HIASECDJMCCyADQeEBNgIcIAMgATYCFCADQdAaNgIQIANBFTYCDEEAIQIMqwILIAEgBEYEQEHhASECDKsCCwJAIAEtAABBIEYEQCADQQA7ATQgAUEBaiEBDAELIANBADYCHCADIAE2AhQgA0GZETYCECADQQk2AgxBACECDKsCC0HHASECDJECCyABIARGBEBB4AEhAgyqAgsCQCABLQAAQTBrQf8BcSICQQpJBEAgAUEBaiEBAkAgAy8BNCIAQZkzSw0AIAMgAEEKbCIAOwE0IABB/v8DcSACQf//A3NLDQAgAyAAIAJqOwE0DAILQQAhAiADQQA2AhwgAyABNgIUIANBlR42AhAgA0ENNgIMDKsCCyADQQA2AhwgAyABNgIUIANBlR42AhAgA0ENNgIMQQAhAgyqAgtBxgEhAgyQAgsgASAERgRAQd8BIQIMqQILAkAgAS0AAEEwa0H/AXEiAkEKSQRAIAFBAWohAQJAIAMvATQiAEGZM0sNACADIABBCmwiADsBNCAAQf7/A3EgAkH//wNzSw0AIAMgACACajsBNAwCC0EAIQIgA0EANgIcIAMgATYCFCADQZUeNgIQIANBDTYCDAyqAgsgA0EANgIcIAMgATYCFCADQZUeNgIQIANBDTYCDEEAIQIMqQILQcUBIQIMjwILIAEgBEYEQEHeASECDKgCCwJAIAEtAABBMGtB/wFxIgJBCkkEQCABQQFqIQECQCADLwE0IgBBmTNLDQAgAyAAQQpsIgA7ATQgAEH+/wNxIAJB//8Dc0sNACADIAAgAmo7ATQMAgtBACECIANBADYCHCADIAE2AhQgA0GVHjYCECADQQ02AgwMqQILIANBADYCHCADIAE2AhQgA0GVHjYCECADQQ02AgxBACECDKgCC0HEASECDI4CCyABIARGBEBB3QEhAgynAgsCQAJAAkACQCABLQAAQQprDhcCAwMAAwMDAwMDAwMDAwMDAwMDAwMDAQMLIAFBAWoMBQsgAUEBaiEBQcMBIQIMjwILIAFBAWohASADQS9qLQAAQQFxDQggA0EANgIcIAMgATYCFCADQY0LNgIQIANBDTYCDEEAIQIMpwILIANBADYCHCADIAE2AhQgA0GNCzYCECADQQ02AgxBACECDKYCCyABIARHBEAgA0EPNgIIIAMgATYCBEEBIQIMjQILQdwBIQIMpQILAkACQANAAkAgAS0AAEEKaw4EAgAAAwALIAQgAUEBaiIBRw0AC0HbASECDKYCCyADKAIEIQAgA0EANgIEIAMgACABEC0iAEUEQCABQQFqIQEMBAsgA0HaATYCHCADIAA2AgwgAyABQQFqNgIUQQAhAgylAgsgAygCBCEAIANBADYCBCADIAAgARAtIgANASABQQFqCyEBQcEBIQIMigILIANB2QE2AhwgAyAANgIMIAMgAUEBajYCFEEAIQIMogILQcIBIQIMiAILIANBL2otAABBAXENASADQQA2AhwgAyABNgIUIANB5Bw2AhAgA0EZNgIMQQAhAgygAgsgASAERgRAQdkB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CyADIAU2AgAMkAILIANBADYCACAGQQFqIQFBGgw8C0HKASECIAEgBEYNjgIgAygCACIAIAQgAWtqIQUgASAAa0EDaiEGAkADQCABLQAAIABBjdUAai0AAEcNOyAAQQNGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMjwILIANBADYCACAGQQFqIQFBIQw7CyABIARGBEBByQEhAgyOAgsCQAJAIAEtAABBwQBrDhQAPT09PT09PT09PT09PT09PT09AT0LIAFBAWohAUGtASECDPUBCyABQQFqIQFBsAEhAgz0AQsgASAERgRAQcgBIQIMjQILAkACQCABLQAAQdUAaw4LADw8PDw8PDw8PAE8CyABQQFqIQFBrgEhAgz0AQsgAUEBaiEBQa8BIQIM8wELQccBIQIgASAERg2LAiADKAIAIgAgBCABa2ohBSABIABrQQhqIQYCQANAIAEtAAAgAEGE1QBqLQAARw04IABBCEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyMAgsgA0EANgIAIAZBAWohAUEqDDgLIAEgBEYEQEHGASECDIsCCyABLQAAQdAARw04IAFBAWohAUElDDcLQcUBIQIgASAERg2JAiADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGB1QBqLQAARw02IABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyKAgsgA0EANgIAIAZBAWohAUEODDYLIAEgBEYEQEHEASECDIkCCyABLQAAQcUARw02IAFBAWohAUGrASECDO8BCyABIARGBEBBwwEhAgyIAgsCQAJAAkACQCABLQAAQcIAaw4PAAECOTk5OTk5OTk5OTkDOQsgAUEBaiEBQacBIQIM8QELIAFBAWohAUGoASECDPABCyABQQFqIQFBqQEhAgzvAQsgAUEBaiEBQaoBIQIM7gELQcIBIQIgASAERg2GAiADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEH+1ABqLQAARw0zIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyHAgsgA0EANgIAIAZBAWohAUEUDDMLQcEBIQIgASAERg2FAiADKAIAIgAgBCABa2ohBSABIABrQQRqIQYCQANA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BTYCAAzsAQsgA0EANgIAIAZBAWohAUEXDBgLQaYBIQIgASAERg3qASADKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEHB1ABqLQAARw0XIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzrAQsgA0EANgIAIAZBAWohAUEYDBcLIAEgBEYEQEGlASECDOoBCwJAAkAgAS0AAEHJAGsOBwAZGRkZGQEZCyABQQFqIQFBiwEhAgzRAQsgAUEBaiEBQYwBIQIM0AELQaQBIQIgASAERg3oASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEGm1QBqLQAARw0VIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzpAQsgA0EANgIAIAZBAWohAUEJDBULQaMBIQIgASAERg3nASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEGk1QBqLQAARw0UIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzoAQsgA0EANgIAIAZBAWohAUEfDBQLQaIBIQIgASAERg3mASADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEG+1ABqLQAARw0TIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAznAQsgA0EANgIAIAZBAWohAUECDBMLQaEBIQIgASAERg3lASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYDQCABLQAAIABBvNQAai0AAEcNESAAQQFGDQIgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM5QELIAEgBEYEQEGgASECDOUBC0EBIAEtAABB3wBHDREaIAFBAWohAUGHASECDMsBCyADQQA2AgAgBkEBaiEBQYgBIQIMygELQZ8BIQIgASAERg3iASADKAIAIgAgBCABa2ohBSABIABrQQhqIQYCQANAIAEtAAAgAEGE1QBqLQAARw0PIABBCEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzjAQsgA0EANgIAIAZBAWohAUEpDA8LQZ4BIQIgASAERg3hASADKAIAIgAgBCABa2ohBSABIABrQQNqIQYCQANAIAEtAAAgAEG41ABqLQAARw0OIABBA0YNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAziAQsgA0EANgIAIAZBAWohAUEtDA4LIAEgBEYEQEGdASECDOEBCyABLQAAQcUARw0OIAFBAWohAUGEASECDMcBCyABIARGBEBBnAEhAgzgAQsCQAJAIAEtAABBzABrDggADw8PDw8PAQ8LIAFBAWohAUGCASECDMcBCyABQQFqIQFBgwEhAgzGAQtBmwEhAiABIARGDd4BIAMoAgAiACAEIAFraiEFIAEgAGtBBGohBgJAA0AgAS0AACAAQbPUAGotAABHDQsgAEEERg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADN8BCyADQQA2AgAgBkEBaiEBQSMMCwtBmgEhAiABIARGDd0BIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQbDUAGotAABHDQogAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADN4BCyADQQA2AgAgBkEBaiEBQQAMCgsgASAERgRAQZkBIQIM3QELAkACQCABLQAAQcgAaw4IAAwMDAwMDAEMCyABQQFqIQFB/QAhAgzEAQsgAUEBaiEBQYABIQIMwwELIAEgBEYEQEGYASECDNwBCwJAAkAgAS0AAEHOAGsOAwALAQsLIAFBAWohAUH+ACECDMMBCyABQQFqIQFB/wAhAgzCAQsgASAERgRAQZcBIQIM2wELIAEtAABB2QBHDQggAUEBaiEBQQgMBwtBlgEhAiABIARGDdkBIAMoAgAiACAEIAFraiEFIAEgAGtBA2ohBgJAA0AgAS0AACAAQazUAGotAABHDQYgAEEDRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADNoBCyADQQA2AgAgBkEBaiEBQQUMBgtBlQEhAiABIARGDdgBIAMoAgAiACAEIAFraiEFIAEgAGtBBWohBgJAA0AgAS0AACAAQabUAGotAABHDQUgAEEFRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADNkBCyADQQA2AgAgBkEBaiEBQRYMBQtBlAEhAiABIARGDdcBIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQaHVAGotAABHDQQgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADNgBCyADQQA2AgAgBkEBaiEBQRAMBAsgASAERgRAQZMBIQIM1wELAkACQCABLQAAQcMAaw4MAAYGBgYGBgYGBgYBBgsgAUEBaiEBQfkAIQIMvgELIAFBAWohAUH6ACECDL0BC0GSASECIAEgBEYN1QEgAygCACIAIAQgAWtqIQUgASAAa0EFaiEGAkADQCABLQAAIABBoNQAai0AAEcNAiAAQQVGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM1gELIANBADYCACAGQQFqIQFBJAwCCyADQQA2AgAMAgsgASAERgRAQZEBIQIM1AELIAEtAABBzABHDQEgAUEBaiEBQRMLOgApIAMoAgQhACADQQA2AgQgAyAAIAEQLiIADQIMAQtBACECIANBADYCHCADIAE2AhQgA0H+HzYCECADQQY2AgwM0QELQfgAIQIMtwELIANBkAE2AhwgAyABNgIUIAMgADYCDEEAIQIMzwELQQAhAAJAIAMoAjgiAkUNACACKAJAIgJFDQAgAyACEQAAIQALIABFDQAgAEEVRg0BIANBADYCHCADIAE2AhQgA0GCDzYCECADQSA2AgxBACECDM4BC0H3ACECDLQBCyADQY8BNgIcIAMgATYCFCADQewbNgIQIANBFTYCDEEAIQIMzAELIAEgBEYEQEGPASECDMwBCwJAIAEtAABBIEYEQCABQQFqIQEMAQsgA0EANgIcIAMgATYCFCADQZsfNgIQIANBBjYCDEEAIQIMzAELQQIhAgyyAQsDQCABLQAAQSBHDQIgBCABQQFqIgFHDQALQY4BIQIMygELIAEgBEYEQEGNASECDMoBCwJAIAEtAABBCWsOBEoAAEoAC0H1ACECDLABCyADLQApQQVGBEBB9gAhAgywAQtB9AAhAgyvAQsgASAERgRAQYwBIQIMyAELIANBEDYCCCADIAE2AgQMCgsgASAERgRAQYsBIQIMxwELAkAgAS0AAEEJaw4ERwAARwALQfMAIQIMrQELIAEgBEcEQCADQRA2AgggAyABNgIEQfEAIQIMrQELQYoBIQIMxQELAkAgASAERwRAA0AgAS0AAEGg0ABqLQAAIgBBA0cEQAJAIABBAWsOAkkABAtB8AAhAgyvAQsgBCABQQFqIgFHDQALQYgBIQIMxgELQYgBIQIMxQELIANBADYCHCADIAE2AhQgA0HbIDYCECADQQc2AgxBACECDMQBCyABIARGBEBBiQEhAgzEAQsCQAJAAkAgAS0AAEGg0gBqLQAAQQFrDgNGAgABC0HyACECDKwBCyADQQA2AhwgAyABNgIUIANBtBI2AhAgA0EHNgIMQQAhAgzEAQtB6gAhAgyqAQsgASAERwRAIAFBAWohAUHvACECDKoBC0GHASECDMIBCyAEIAEiAEYEQEGGASECDMIBCyAALQAAIgFBL0YEQCAAQQFqIQFB7gAhAgypAQsgAUEJayICQRdLDQEgACEBQQEgAnRBm4CABHENQQwBCyAEIAEiAEYEQEGFASECDMEBCyAALQAAQS9HDQAgAEEBaiEBDAMLQQAhAiADQQA2AhwgAyAANgIUIANB2yA2AhAgA0EHNgIMDL8BCwJAAkACQAJAAkADQCABLQAAQaDOAGotAAAiAEEFRwRAAkACQCAAQQFrDghHBQYHCAAEAQgLQesAIQIMrQELIAFBAWohAUHtACECDKwBCyAEIAFBAWoiAUcNAAtBhAEhAgzDAQsgAUEBagwUCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNHiADQdsANgIcIAMgATYCFCADIAA2AgxBACECDMEBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNHiADQd0ANgIcIAMgATYCFCADIAA2AgxBACECDMABCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNHiADQfoANgIcIAMgATYCFCADIAA2AgxBACECDL8BCyADQQA2AhwgAyABNgIUIANB+Q82AhAgA0EHNgIMQQAhAgy+AQsgASAERgRAQYMBIQIMvgELAkAgAS0AAEGgzgBqLQAAQQFrDgg+BAUGAAgCAwcLIAFBAWohAQtBAyECDKMBCyABQQFqDA0LQQAhAiADQQA2AhwgA0HREjYCECADQQc2AgwgAyABQQFqNgIUDLoBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNFiADQdsANgIcIAMgATYCFCADIAA2AgxBACECDLkBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNFiADQd0ANgIcIAMgATYCFCADIAA2AgxBACECDLgBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNFiADQfoANgIcIAMgATYCFCADIAA2AgxBACECDLcBCyADQQA2AhwgAyABNgIUIANB+Q82AhAgA0EHNgIMQQAhAgy2AQtB7AAhAgycAQsgASAERgRAQYIBIQIMtQELIAFBAWoMAgsgASAERgRAQYEBIQIMtAELIAFBAWoMAQsgASAERg0BIAFBAWoLIQFBBCECDJgBC0GAASECDLABCwNAIAEtAABBoMwAai0AACIAQQJHBEAgAEEBRwRAQekAIQIMmQELDDELIAQgAUEBaiIBRw0AC0H/ACECDK8BCyABIARGBEBB/gAhAgyvAQsCQCABLQAAQQlrDjcvAwYvBAYGBgYGBgYGBgYGBgYGBgYGBgUGBgIGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYABgsgAUEBagshAUEFIQIMlAELIAFBAWoMBgsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQggA0HbADYCHCADIAE2AhQgAyAANgIMQQAhAgyrAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQggA0HdADYCHCADIAE2AhQgAyAANgIMQQAhAgyqAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQggA0H6ADYCHCADIAE2AhQgAyAANgIMQQAhAgypAQsgA0EANgIcIAMgATYCFCADQY0UNgIQIANBBzYCDEEAIQIMqAELAkACQAJAAkADQCABLQAAQaDKAGotAAAiAEEFRwRAAkAgAEEBaw4GLgMEBQYABgtB6AAhAgyUAQsgBCABQQFqIgFHDQALQf0AIQIMqwELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0HIANB2wA2AhwgAyABNgIUIAMgADYCDEEAIQIMqgELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0HIANB3QA2AhwgAyABNgIUIAMgADYCDEEAIQIMqQELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0HIANB+gA2AhwgAyABNgIUIAMgADYCDEEAIQIMqAELIANBADYCHCADIAE2AhQgA0HkCDYCECADQQc2AgxBACECDKcBCyABIARGDQEgAUEBagshAUEGIQIMjAELQfwAIQIMpAELAkACQAJAAkADQCABLQAAQaDIAGotAAAiAEEFRwRAIABBAWsOBCkCAwQFCyAEIAFBAWoiAUcNAAtB+wAhAgynAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQMgA0HbADYCHCADIAE2AhQgAyAANgIMQQAhAgymAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQMgA0HdADYCHCADIAE2AhQgAyAANgIMQQAhAgylAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQMgA0H6ADYCHCADIAE2AhQgAyAANgIMQQAhAgykAQsgA0EANgIcIAMgATYCFCADQbwKNgIQIANBBzYCDEEAIQIMowELQc8AIQIMiQELQdEAIQIMiAELQecAIQIMhwELIAEgBEYEQEH6ACECDKABCwJAIAEtAABBCWsOBCAAACAACyABQQFqIQFB5gAhAgyGAQsgASAERgRAQfkAIQIMnwELAkAgAS0AAEEJaw4EHwAAHwALQQAhAAJAIAMoAjgiAkUNACACKAI4IgJFDQAgAyACEQAAIQALIABFBEBB4gEhAgyGAQsgAEEVRwRAIANBADYCHCADIAE2AhQgA0HJDTYCECADQRo2AgxBACECDJ8BCyADQfgANgIcIAMgATYCFCADQeoaNgIQIANBFTYCDEEAIQIMngELIAEgBEcEQCADQQ02AgggAyABNgIEQeQAIQIMhQELQfcAIQIMnQELIAEgBEYEQEH2ACECDJ0BCwJAAkACQCABLQAAQcgAaw4LAAELCwsLCwsLCwILCyABQQFqIQFB3QAhAgyFAQsgAUEBaiEBQeAAIQIMhAELIAFBAWohAUHjACECDIMBC0H1ACECIAEgBEYNmwEgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBtdUAai0AAEcNCCAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMnAELIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARArIgAEQCADQfQANgIcIAMgATYCFCADIAA2AgxBACECDJwBC0HiACECDIIBC0EAIQACQCADKAI4IgJFDQAgAigCNCICRQ0AIAMgAhEAACEACwJAIAAEQCAAQRVGDQEgA0EANgIcIAMgATYCFCADQeoNNgIQIANBJjYCDEEAIQIMnAELQeEAIQIMggELIANB8wA2AhwgAyABNgIUIANBgBs2AhAgA0EVNgIMQQAhAgyaAQsgAy0AKSIAQSNrQQtJDQkCQCAAQQZLDQBBASAAdEHKAHFFDQAMCgtBACECIANBADYCHCADIAE2AhQgA0HtCTYCECADQQg2AgwMmQELQfIAIQIgASAERg2YASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEGz1QBqLQAARw0FIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyZAQsgAygCBCEAIANCADcDACADIAAgBkEBaiIBECsiAARAIANB8QA2AhwgAyABNgIUIAMgADYCDEEAIQIMmQELQd8AIQIMfwtBACEAAkAgAygCOCICRQ0AIAIoAjQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0HqDTYCECADQSY2AgxBACECDJkBC0HeACECDH8LIANB8AA2AhwgAyABNgIUIANBgBs2AhAgA0EVNgIMQQAhAgyXAQsgAy0AKUEhRg0GIANBADYCHCADIAE2AhQgA0GRCjYCECADQQg2AgxBACECDJYBC0HvACECIAEgBEYNlQEgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBsNUAai0AAEcNAiAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMlgELIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARArIgBFDQIgA0HtADYCHCADIAE2AhQgAyAANgIMQQAhAgyVAQsgA0EANgIACyADKAIEIQAgA0EANgIEIAMgACABECsiAEUNgAEgA0HuADYCHCADIAE2AhQgAyAANgIMQQAhAgyTAQtB3AAhAgx5C0EAIQACQCADKAI4IgJFDQAgAigCNCICRQ0AIAMgAhEAACEACwJAIAAEQCAAQRVGDQEgA0EANgIcIAMgATYCFCADQeoNNgIQIANBJjYCDEEAIQIMkwELQdsAIQIMeQsgA0HsADYCHCADIAE2AhQgA0GAGzYCECADQRU2AgxBACECDJEBCyADLQApIgBBI0kNACAAQS5GDQAgA0EANgIcIAMgATYCFCADQckJNgIQIANBCDYCDEEAIQIMkAELQdoAIQIMdgsgASAERgRAQesAIQIMjwELAkAgAS0AAEEvRgRAIAFBAWohAQwBCyADQQA2AhwgAyABNgIUIANBsjg2AhAgA0EINgIMQQAhAgyPAQtB2QAhAgx1CyABIARHBEAgA0EONgIIIAMgATYCBEHYACECDHULQeoAIQIMjQELIAEgBEYEQEHpACECDI0BCyABLQAAQTBrIgBB/wFxQQpJBEAgAyAAOgAqIAFBAWohAUHXACECDHQLIAMoAgQhACADQQA2AgQgAyAAIAEQLyIARQ16IANB6AA2AhwgAyABNgIUIAMgADYCDEEAIQIMjAELIAEgBEYEQEHnACECDIwBCwJAIAEtAABBLkYEQCABQQFqIQEMAQsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDXsgA0HmADYCHCADIAE2AhQgAyAANgIMQQAhAgyMAQtB1gAhAgxyCyABIARGBEBB5QAhAgyLAQtBACEAQQEhBUEBIQdBACECAkACQAJAAkACQAJ/AkACQAJAAkACQAJAAkAgAS0AAEEwaw4KCgkAAQIDBAUGCAsLQQIMBgtBAwwFC0EEDAQLQQUMAwtBBgwCC0EHDAELQQgLIQJBACEFQQAhBwwCC0EJIQJBASEAQQAhBUEAIQcMAQtBACEFQQEhAgsgAyACOgArIAFBAWohAQJAAkAgAy0ALkEQcQ0AAkACQAJAIAMtACoOAwEAAgQLIAdFDQMMAgsgAA0BDAILIAVFDQELIAMoAgQhACADQQA2AgQgAyAAIAEQLyIARQ0CIANB4gA2AhwgAyABNgIUIAMgADYCDEEAIQIMjQELIAMoAgQhACADQQA2AgQgAyAAIAEQLyIARQ19IANB4wA2AhwgAyABNgIUIAMgADYCDEEAIQIMjAELIAMoAgQhACADQQA2AgQgAyAAIAEQLyIARQ17IANB5AA2AhwgAyABNgIUIAMgADYCDAyLAQtB1AAhAgxxCyADLQApQSJGDYYBQdMAIQIMcAtBACEAAkAgAygCOCICRQ0AIAIoAkQiAkUNACADIAIRAAAhAAsgAEUEQEHVACECDHALIABBFUcEQCADQQA2AhwgAyABNgIUIANBpA02AhAgA0EhNgIMQQAhAgyJAQsgA0HhADYCHCADIAE2AhQgA0HQGjYCECADQRU2AgxBACECDIgBCyABIARGBEBB4AAhAgyIAQsCQAJAAkACQAJAIAEtAABBCmsOBAEEBAAECyABQQFqIQEMAQsgAUEBaiEBIANBL2otAABBAXFFDQELQdIAIQIMcAsgA0EANgIcIAMgATYCFCADQbYRNgIQIANBCTYCDEEAIQIMiAELIANBADYCHCADIAE2AhQgA0G2ETYCECADQQk2AgxBACECDIcBCyABIARGBEBB3wAhAgyHAQsgAS0AAEEKRgRAIAFBAWohAQwJCyADLQAuQcAAcQ0IIANBADYCHCADIAE2AhQgA0G2ETYCECADQQI2AgxBACECDIYBCyABIARGBEBB3QAhAgyGAQsgAS0AACICQQ1GBEAgAUEBaiEBQdAAIQIMbQsgASEAIAJBCWsOBAUBAQUBCyAEIAEiAEYEQEHcACECDIUBCyAALQAAQQpHDQAgAEEBagwCC0EAIQIgA0EANgIcIAMgADYCFCADQcotNgIQIANBBzYCDAyDAQsgASAERgRAQdsAIQIMgwELAkAgAS0AAEEJaw4EAwAAAwALIAFBAWoLIQFBzgAhAgxoCyABIARGBEBB2gAhAgyBAQsgAS0AAEEJaw4EAAEBAAELQQAhAiADQQA2AhwgA0GaEjYCECADQQc2AgwgAyABQQFqNgIUDH8LIANBgBI7ASpBACEAAkAgAygCOCICRQ0AIAIoAjgiAkUNACADIAIRAAAhAAsgAEUNACAAQRVHDQEgA0HZADYCHCADIAE2AhQgA0HqGjYCECADQRU2AgxBACECDH4LQc0AIQIMZAsgA0EANgIcIAMgATYCFCADQckNNgIQIANBGjYCDEEAIQIMfAsgASAERgRAQdkAIQIMfAsgAS0AAEEgRw09IAFBAWohASADLQAuQQFxDT0gA0EANgIcIAMgATYCFCADQcIcNgIQIANBHjYCDEEAIQIMewsgASAERgRAQdgAIQIMewsCQAJAAkACQAJAIAEtAAAiAEEKaw4EAgMDAAELIAFBAWohAUEsIQIMZQsgAEE6Rw0BIANBADYCHCADIAE2AhQgA0HnETYCECADQQo2AgxBACECDH0LIAFBAWohASADQS9qLQAAQQFxRQ1zIAMtADJBgAFxRQRAIANBMmohAiADEDVBACEAAkAgAygCOCIGRQ0AIAYoAigiBkUNACADIAYRAAAhAAsCQAJAIAAOFk1MSwEBAQEBAQEBAQEBAQEBAQEBAQABCyADQSk2AhwgAyABNgIUIANBrBk2AhAgA0EVNgIMQQAhAgx+CyADQQA2AhwgAyABNgIUIANB5Qs2AhAgA0ERNgIMQQAhAgx9C0EAIQACQCADKAI4IgJFDQAgAigCXCICRQ0AIAMgAhEAACEACyAARQ1ZIABBFUcNASADQQU2AhwgAyABNgIUIANBmxs2AhAgA0EVNgIMQQAhAgx8C0HLACECDGILQQAhAiADQQA2AhwgAyABNgIUIANBkA42AhAgA0EUNgIMDHoLIAMgAy8BMkGAAXI7ATIMOwsgASAERwRAIANBETYCCCADIAE2AgRBygAhAgxgC0HXACECDHgLIAEgBEYEQEHWACECDHgLAkACQAJAAkAgAS0AACIAQSByIAAgAEHBAGtB/wFxQRpJG0H/AXFB4wBrDhMAQEBAQEBAQEBAQEBAAUBAQAIDQAsgAUEBaiEBQcYAIQIMYQsgAUEBaiEBQccAIQIMYAsgAUEBaiEBQcgAIQIMXwsgAUEBaiEBQckAIQIMXgtB1QAhAiAEIAEiAEYNdiAEIAFrIAMoAgAiAWohBiAAIAFrQQVqIQcDQCABQZDIAGotAAAgAC0AACIFQSByIAUgBUHBAGtB/wFxQRpJG0H/AXFHDQhBBCABQQVGDQoaIAFBAWohASAEIABBAWoiAEcNAAsgAyAGNgIADHYLQdQAIQIgBCABIgBGDXUgBCABayADKAIAIgFqIQYgACABa0EPaiEHA0AgAUGAyABqLQAAIAAtAAAiBUEgciAFIAVBwQBrQf8BcUEaSRtB/wFxRw0HQQMgAUEPRg0JGiABQQFqIQEgBCAAQQFqIgBHDQALIAMgBjYCAAx1C0HTACECIAQgASIARg10IAQgAWsgAygCACIBaiEGIAAgAWtBDmohBwNAIAFB4scAai0AACAALQAAIgVBIHIgBSAFQcEAa0H/AXFBGkkbQf8BcUcNBiABQQ5GDQcgAUEBaiEBIAQgAEEBaiIARw0ACyADIAY2AgAMdAtB0gAhAiAEIAEiAEYNcyAEIAFrIAMoAgAiAWohBSAAIAFrQQFqIQYDQCABQeDHAGotAAAgAC0AACIHQSByIAcgB0HBAGtB/wFxQRpJG0H/AXFHDQUgAUEBRg0CIAFBAWohASAEIABBAWoiAEcNAAsgAyAFNgIADHMLIAEgBEYEQEHRACECDHMLAkACQCABLQAAIgBBIHIgACAAQcEAa0H/AXFBGkkbQf8BcUHuAGsOBwA5OTk5OQE5CyABQQFqIQFBwwAhAgxaCyABQQFqIQFBxAAhAgxZCyADQQA2AgAgBkEBaiEBQcUAIQIMWAtB0AAhAiAEIAEiAEYNcCAEIAFrIAMoAgAiAWohBiAAIAFrQQlqIQcDQCABQdbHAGotAAAgAC0AACIFQSByIAUgBUHBAGtB/wFxQRpJG0H/AXFHDQJBAiABQQlGDQQaIAFBAWohASAEIABBAWoiAEcNAAsgAyAGNgIADHALQc8AIQIgBCABIgBGDW8gBCABayADKAIAIgFqIQYgACABa0EFaiEHA0AgAUHQxwBqLQAAIAAtAAAiBUEgciAFIAVBwQBrQf8BcUEaSRtB/wFxRw0BIAFBBUYNAiABQQFqIQEgBCAAQQFqIgBHDQALIAMgBjYCAAxvCyAAIQEgA0EANgIADDMLQQELOgAsIANBADYCACAHQQFqIQELQS0hAgxSCwJAA0AgAS0AAEHQxQBqLQAAQQFHDQEgBCABQQFqIgFHDQALQc0AIQIMawtBwgAhAgxRCyABIARGBEBBzAAhAgxqCyABLQAAQTpGBEAgAygCBCEAIANBADYCBCADIAAgARAwIgBFDTMgA0HLADYCHCADIAA2AgwgAyABQQFqNgIUQQAhAgxqCyADQQA2AhwgAyABNgIUIANB5xE2AhAgA0EKNgIMQQAhAgxpCwJAAkAgAy0ALEECaw4CAAEnCyADQTNqLQAAQQJxRQ0mIAMtAC5BAnENJiADQQA2AhwgAyABNgIUIANBphQ2AhAgA0ELNgIMQQAhAgxpCyADLQAyQSBxRQ0lIAMtAC5BAnENJSADQQA2AhwgAyABNgIUIANBvRM2AhAgA0EPNgIMQQAhAgxoC0EAIQACQCADKAI4IgJFDQAgAigCSCICRQ0AIAMgAhEAACEACyAARQRAQcEAIQIMTwsgAEEVRwRAIANBADYCHCADIAE2AhQgA0GmDzYCECADQRw2AgxBACECDGgLIANBygA2AhwgAyABNgIUIANBhRw2AhAgA0EVNgIMQQAhAgxnCyABIARHBEAgASECA0AgBCACIgFrQRBOBEAgAUEQaiEC/Qz/////////////////////IAH9AAAAIg1BB/1sIA39DODg4ODg4ODg4ODg4ODg4OD9bv0MX19fX19fX19fX19fX19fX/0mIA39DAkJCQkJCQkJCQkJCQkJCQn9I/1Q/VL9ZEF/c2giAEEQRg0BIAAgAWohAQwYCyABIARGBEBBxAAhAgxpCyABLQAAQcDBAGotAABBAUcNFyAEIAFBAWoiAkcNAAtBxAAhAgxnC0HEACECDGYLIAEgBEcEQANAAkAgAS0AACIAQSByIAAgAEHBAGtB/wFxQRpJG0H/AXEiAEEJRg0AIABBIEYNAAJAAkACQAJAIABB4wBrDhMAAwMDAwMDAwEDAwMDAwMDAwMCAwsgAUEBaiEBQTYhAgxSCyABQQFqIQFBNyECDFELIAFBAWohAUE4IQIMUAsMFQsgBCABQQFqIgFHDQALQTwhAgxmC0E8IQIMZQsgASAERgRAQcgAIQIMZQsgA0ESNgIIIAMgATYCBAJAAkACQAJAAkAgAy0ALEEBaw4EFAABAgkLIAMtADJBIHENA0HgASECDE8LAkAgAy8BMiIAQQhxRQ0AIAMtAChBAUcNACADLQAuQQhxRQ0CCyADIABB9/sDcUGABHI7ATIMCwsgAyADLwEyQRByOwEyDAQLIANBADYCBCADIAEgARAxIgAEQCADQcEANgIcIAMgADYCDCADIAFBAWo2AhRBACECDGYLIAFBAWohAQxYCyADQQA2AhwgAyABNgIUIANB9BM2AhAgA0EENgIMQQAhAgxkC0HHACECIAEgBEYNYyADKAIAIgAgBCABa2ohBSABIABrQQZqIQYCQANAIABBwMUAai0AACABLQAAQSByRw0BIABBBkYNSiAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAxkCyADQQA2AgAMBQsCQCABIARHBEADQCABLQAAQcDDAGotAAAiAEEBRwRAIABBAkcNAyABQQFqIQEMBQsgBCABQQFqIgFHDQALQcUAIQIMZAtBxQAhAgxjCwsgA0EAOgAsDAELQQshAgxHC0E/IQIMRgsCQAJAA0AgAS0AACIAQSBHBEACQCAAQQprDgQDBQUDAAsgAEEsRg0DDAQLIAQgAUEBaiIBRw0AC0HGACECDGALIANBCDoALAwOCyADLQAoQQFHDQIgAy0ALkEIcQ0CIAMoAgQhACADQQA2AgQgAyAAIAEQMSIABEAgA0HCADYCHCADIAA2AgwgAyABQQFqNgIUQQAhAgxfCyABQQFqIQEMUAtBOyECDEQLAkADQCABLQAAIgBBIEcgAEEJR3ENASAEIAFBAWoiAUcNAAtBwwAhAgxdCwtBPCECDEILAkACQCABIARHBEADQCABLQAAIgBBIEcEQCAAQQprDgQDBAQDBAsgBCABQQFqIgFHDQALQT8hAgxdC0E/IQIMXAsgAyADLwEyQSByOwEyDAoLIAMoAgQhACADQQA2AgQgAyAAIAEQMSIARQ1OIANBPjYCHCADIAE2AhQgAyAANgIMQQAhAgxaCwJAIAEgBEcEQANAIAEtAABBwMMAai0AACIAQQFHBEAgAEECRg0DDAwLIAQgAUEBaiIBRw0AC0E3IQIMWwtBNyECDFoLIAFBAWohAQwEC0E7IQIgBCABIgBGDVggBCABayADKAIAIgFqIQYgACABa0EFaiEHAkADQCABQZDIAGotAAAgAC0AACIFQSByIAUgBUHBAGtB/wFxQRpJG0H/AXFHDQEgAUEFRgRAQQchAQw/CyABQQFqIQEgBCAAQQFqIgBHDQALIAMgBjYCAAxZCyADQQA2AgAgACEBDAULQTohAiAEIAEiAEYNVyAEIAFrIAMoAgAiAWohBiAAIAFrQQhqIQcCQANAIAFBtMEAai0AACAALQAAIgVBIHIgBSAFQcEAa0H/AXFBGkkbQf8BcUcNASABQQhGBEBBBSEBDD4LIAFBAWohASAEIABBAWoiAEcNAAsgAyAGNgIADFgLIANBADYCACAAIQEMBAtBOSECIAQgASIARg1WIAQgAWsgAygCACIBaiEGIAAgAWtBA2ohBwJAA0AgAUGwwQBqLQAAIAAtAAAiBUEgciAFIAVBwQBrQf8BcUEaSRtB/wFxRw0BIAFBA0YEQEEGIQEMPQsgAUEBaiEBIAQgAEEBaiIARw0ACyADIAY2AgAMVwsgA0EANgIAIAAhAQwDCwJAA0AgAS0AACIAQSBHBEAgAEEKaw4EBwQEBwILIAQgAUEBaiIBRw0AC0E4IQIMVgsgAEEsRw0BIAFBAWohAEEBIQECQAJAAkACQAJAIAMtACxBBWsOBAMBAgQACyAAIQEMBAtBAiEBDAELQQQhAQsgA0EBOgAsIAMgAy8BMiABcjsBMiAAIQEMAQsgAyADLwEyQQhyOwEyIAAhAQtBPiECDDsLIANBADoALAtBOSECDDkLIAEgBEYEQEE2IQIMUgsCQAJAAkACQAJAIAEtAABBCmsOBAACAgECCyADKAIEIQAgA0EANgIEIAMgACABEDEiAEUNAiADQTM2AhwgAyABNgIUIAMgADYCDEEAIQIMVQsgAygCBCEAIANBADYCBCADIAAgARAxIgBFBEAgAUEBaiEBDAYLIANBMjYCHCADIAA2AgwgAyABQQFqNgIUQQAhAgxUCyADLQAuQQFxBEBB3wEhAgw7CyADKAIEIQAgA0EANgIEIAMgACABEDEiAA0BDEkLQTQhAgw5CyADQTU2AhwgAyABNgIUIAMgADYCDEEAIQIMUQtBNSECDDcLIANBL2otAABBAXENACADQQA2AhwgAyABNgIUIANB6xY2AhAgA0EZNgIMQQAhAgxPC0EzIQIMNQsgASAERgRAQTIhAgxOCwJAIAEtAABBCkYEQCABQQFqIQEMAQsgA0EANgIcIAMgATYCFCADQZIXNgIQIANBAzYCDEEAIQIMTgtBMiECDDQLIAEgBEYEQEExIQIMTQsCQCABLQAAIgBBCUYNACAAQSBGDQBBASECAkAgAy0ALEEFaw4EBgQFAA0LIAMgAy8BMkEIcjsBMgwMCyADLQAuQQFxRQ0BIAMtACxBCEcNACADQQA6ACwLQT0hAgwyCyADQQA2AhwgAyABNgIUIANBwhY2AhAgA0EKNgIMQQAhAgxKC0ECIQIMAQtBBCECCyADQQE6ACwgAyADLwEyIAJyOwEyDAYLIAEgBEYEQEEwIQIMRwsgAS0AAEEKRgRAIAFBAWohAQwBCyADLQAuQQFxDQAgA0EANgIcIAMgATYCFCADQdwoNgIQIANBAjYCDEEAIQIMRgtBMCECDCwLIAFBAWohAUExIQIMKwsgASAERgRAQS8hAgxECyABLQAAIgBBCUcgAEEgR3FFBEAgAUEBaiEBIAMtAC5BAXENASADQQA2AhwgAyABNgIUIANBlxA2AhAgA0EKNgIMQQAhAgxEC0EBIQICQAJAAkACQAJAAkAgAy0ALEECaw4HBQQEAwECAAQLIAMgAy8BMkEIcjsBMgwDC0ECIQIMAQtBBCECCyADQQE6ACwgAyADLwEyIAJyOwEyC0EvIQIMKwsgA0EANgIcIAMgATYCFCADQYQTNgIQIANBCzYCDEEAIQIMQwtB4QEhAgwpCyABIARGBEBBLiECDEILIANBADYCBCADQRI2AgggAyABIAEQMSIADQELQS4hAgwnCyADQS02AhwgAyABNgIUIAMgADYCDEEAIQIMPwtBACEAAkAgAygCOCICRQ0AIAIoAkwiAkUNACADIAIRAAAhAAsgAEUNACAAQRVHDQEgA0HYADYCHCADIAE2AhQgA0GzGzYCECADQRU2AgxBACECDD4LQcwAIQIMJAsgA0EANgIcIAMgATYCFCADQbMONgIQIANBHTYCDEEAIQIMPAsgASAERgRAQc4AIQIMPAsgAS0AACIAQSBGDQIgAEE6Rg0BCyADQQA6ACxBCSECDCELIAMoAgQhACADQQA2AgQgAyAAIAEQMCIADQEMAgsgAy0ALkEBcQRAQd4BIQIMIAsgAygCBCEAIANBADYCBCADIAAgARAwIgBFDQIgA0EqNgIcIAMgADYCDCADIAFBAWo2AhRBACECDDgLIANBywA2AhwgAyAANgIMIAMgAUEBajYCFEEAIQIMNwsgAUEBaiEBQcAAIQIMHQsgAUEBaiEBDCwLIAEgBEYEQEErIQIMNQsCQCABLQAAQQpGBEAgAUEBaiEBDAELIAMtAC5BwABxRQ0GCyADLQAyQYABcQRAQQAhAAJAIAMoAjgiAkUNACACKAJcIgJFDQAgAyACEQAAIQALIABFDRIgAEEVRgRAIANBBTYCHCADIAE2AhQgA0GbGzYCECADQRU2AgxBACECDDYLIANBADYCHCADIAE2AhQgA0GQDjYCECADQRQ2AgxBACECDDULIANBMmohAiADEDVBACEAAkAgAygCOCIGRQ0AIAYoAigiBkUNACADIAYRAAAhAAsgAA4WAgEABAQEBAQEBAQEBAQEBAQEBAQEAwQLIANBAToAMAsgAiACLwEAQcAAcjsBAAtBKyECDBgLIANBKTYCHCADIAE2AhQgA0GsGTYCECADQRU2AgxBACECDDALIANBADYCHCADIAE2AhQgA0HlCzYCECADQRE2AgxBACECDC8LIANBADYCHCADIAE2AhQgA0GlCzYCECADQQI2AgxBACECDC4LQQEhByADLwEyIgVBCHFFBEAgAykDIEIAUiEHCwJAIAMtADAEQEEBIQAgAy0AKUEFRg0BIAVBwABxRSAHcUUNAQsCQCADLQAoIgJBAkYEQEEBIQAgAy8BNCIGQeUARg0CQQAhACAFQcAAcQ0CIAZB5ABGDQIgBkHmAGtBAkkNAiAGQcwBRg0CIAZBsAJGDQIMAQtBACEAIAVBwABxDQELQQIhACAFQQhxDQAgBUGABHEEQAJAIAJBAUcNACADLQAuQQpxDQBBBSEADAILQQQhAAwBCyAFQSBxRQRAIAMQNkEAR0ECdCEADAELQQBBAyADKQMgUBshAAsgAEEBaw4FAgAHAQMEC0ERIQIMEwsgA0EBOgAxDCkLQQAhAgJAIAMoAjgiAEUNACAAKAIwIgBFDQAgAyAAEQAAIQILIAJFDSYgAkEVRgRAIANBAzYCHCADIAE2AhQgA0HSGzYCECADQRU2AgxBACECDCsLQQAhAiADQQA2AhwgAyABNgIUIANB3Q42AhAgA0ESNgIMDCoLIANBADYCHCADIAE2AhQgA0H5IDYCECADQQ82AgxBACECDCkLQQAhAAJAIAMoAjgiAkUNACACKAIwIgJFDQAgAyACEQAAIQALIAANAQtBDiECDA4LIABBFUYEQCADQQI2AhwgAyABNgIUIANB0hs2AhAgA0EVNgIMQQAhAgwnCyADQQA2AhwgAyABNgIUIANB3Q42AhAgA0ESNgIMQQAhAgwmC0EqIQIMDAsgASAERwRAIANBCTYCCCADIAE2AgRBKSECDAwLQSYhAgwkCyADIAMpAyAiDCAEIAFrrSIKfSILQgAgCyAMWBs3AyAgCiAMVARAQSUhAgwkCyADKAIEIQAgA0EANgIEIAMgACABIAynaiIBEDIiAEUNACADQQU2AhwgAyABNgIUIAMgADYCDEEAIQIMIwtBDyECDAkLQgAhCgJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCABLQAAQTBrDjcXFgABAgMEBQYHFBQUFBQUFAgJCgsMDRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUDg8QERITFAtCAiEKDBYLQgMhCgwVC0IEIQoMFAtCBSEKDBMLQgYhCgwSC0IHIQoMEQtCCCEKDBALQgkhCgwPC0IKIQoMDgtCCyEKDA0LQgwhCgwMC0INIQoMCwtCDiEKDAoLQg8hCgwJC0IKIQoMCAtCCyEKDAcLQgwhCgwGC0INIQoMBQtCDiEKDAQLQg8hCgwDCyADQQA2AhwgAyABNgIUIANBnxU2AhAgA0EMNgIMQQAhAgwhCyABIARGBEBBIiECDCELQgAhCgJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAS0AAEEwaw43FRQAAQIDBAUGBxYWFhYWFhYICQoLDA0WFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFg4PEBESExYLQgIhCgwUC0IDIQoMEwtCBCEKDBILQgUhCgwRC0IGIQoMEAtCByEKDA8LQgghCgwOC0IJIQoMDQtCCiEKDAwLQgshCgwLC0IMIQoMCgtCDSEKDAkLQg4hCgwIC0IPIQoMBwtCCiEKDAYLQgshCgwFC0IMIQoMBAtCDSEKDAMLQg4hCgwCC0IPIQoMAQtCASEKCyABQQFqIQEgAykDICILQv//////////D1gEQCADIAtCBIYgCoQ3AyAMAgsgA0EANgIcIAMgATYCFCADQbUJNgIQIANBDDYCDEEAIQIMHgtBJyECDAQLQSghAgwDCyADIAE6ACwgA0EANgIAIAdBAWohAUEMIQIMAgsgA0EANgIAIAZBAWohAUEKIQIMAQsgAUEBaiEBQQghAgwACwALQQAhAiADQQA2AhwgAyABNgIUIANBsjg2AhAgA0EINgIMDBcLQQAhAiADQQA2AhwgAyABNgIUIANBgxE2AhAgA0EJNgIMDBYLQQAhAiADQQA2AhwgAyABNgIUIANB3wo2AhAgA0EJNgIMDBULQQAhAiADQQA2AhwgAyABNgIUIANB7RA2AhAgA0EJNgIMDBQLQQAhAiADQQA2AhwgAyABNgIUIANB0hE2AhAgA0EJNgIMDBMLQQAhAiADQQA2AhwgAyABNgIUIANBsjg2AhAgA0EINgIMDBILQQAhAiADQQA2AhwgAyABNgIUIANBgxE2AhAgA0EJNgIMDBELQQAhAiADQQA2AhwgAyABNgIUIANB3wo2AhAgA0EJNgIMDBALQQAhAiADQQA2AhwgAyABNgIUIANB7RA2AhAgA0EJNgIMDA8LQQAhAiADQQA2AhwgAyABNgIUIANB0hE2AhAgA0EJNgIMDA4LQQAhAiADQQA2AhwgAyABNgIUIANBuRc2AhAgA0EPNgIMDA0LQQAhAiADQQA2AhwgAyABNgIUIANBuRc2AhAgA0EPNgIMDAwLQQAhAiADQQA2AhwgAyABNgIUIANBmRM2AhAgA0ELNgIMDAsLQQAhAiADQQA2AhwgAyABNgIUIANBnQk2AhAgA0ELNgIMDAoLQQAhAiADQQA2AhwgAyABNgIUIANBlxA2AhAgA0EKNgIMDAkLQQAhAiADQQA2AhwgAyABNgIUIANBsRA2AhAgA0EKNgIMDAgLQQAhAiADQQA2AhwgAyABNgIUIANBux02AhAgA0ECNgIMDAcLQQAhAiADQQA2AhwgAyABNgIUIANBlhY2AhAgA0ECNgIMDAYLQQAhAiADQQA2AhwgAyABNgIUIANB+Rg2AhAgA0ECNgIMDAULQQAhAiADQQA2AhwgAyABNgIUIANBxBg2AhAgA0ECNgIMDAQLIANBAjYCHCADIAE2AhQgA0GpHjYCECADQRY2AgxBACECDAMLQd4AIQIgASAERg0CIAlBCGohByADKAIAIQUCQAJAIAEgBEcEQCAFQZbIAGohCCAEIAVqIAFrIQYgBUF/c0EKaiIFIAFqIQADQCABLQAAIAgtAABHBEBBAiEIDAMLIAVFBEBBACEIIAAhAQwDCyAFQQFrIQUgCEEBaiEIIAQgAUEBaiIBRw0ACyAGIQUgBCEBCyAHQQE2AgAgAyAFNgIADAELIANBADYCACAHIAg2AgALIAcgATYCBCAJKAIMIQACQAJAIAkoAghBAWsOAgQBAAsgA0EANgIcIANBwh42AhAgA0EXNgIMIAMgAEEBajYCFEEAIQIMAwsgA0EANgIcIAMgADYCFCADQdceNgIQIANBCTYCDEEAIQIMAgsgASAERgRAQSghAgwCCyADQQk2AgggAyABNgIEQSchAgwBCyABIARGBEBBASECDAELA0ACQAJAAkAgAS0AAEEKaw4EAAEBAAELIAFBAWohAQwBCyABQQFqIQEgAy0ALkEgcQ0AQQAhAiADQQA2AhwgAyABNgIUIANBoSE2AhAgA0EFNgIMDAILQQEhAiABIARHDQALCyAJQRBqJAAgAkUEQCADKAIMIQAMAQsgAyACNgIcQQAhACADKAIEIgFFDQAgAyABIAQgAygCCBEBACIBRQ0AIAMgBDYCFCADIAE2AgwgASEACyAAC74CAQJ/IABBADoAACAAQeQAaiIBQQFrQQA6AAAgAEEAOgACIABBADoAASABQQNrQQA6AAAgAUECa0EAOgAAIABBADoAAyABQQRrQQA6AABBACAAa0EDcSIBIABqIgBBADYCAEHkACABa0F8cSICIABqIgFBBGtBADYCAAJAIAJBCUkNACAAQQA2AgggAEEANgIEIAFBCGtBADYCACABQQxrQQA2AgAgAkEZSQ0AIABBADYCGCAAQQA2AhQgAEEANgIQIABBADYCDCABQRBrQQA2AgAgAUEUa0EANgIAIAFBGGtBADYCACABQRxrQQA2AgAgAiAAQQRxQRhyIgJrIgFBIEkNACAAIAJqIQADQCAAQgA3AxggAEIANwMQIABCADcDCCAAQgA3AwAgAEEgaiEAIAFBIGsiAUEfSw0ACwsLVgEBfwJAIAAoAgwNAAJAAkACQAJAIAAtADEOAwEAAwILIAAoAjgiAUUNACABKAIwIgFFDQAgACABEQAAIgENAwtBAA8LAAsgAEHKGTYCEEEOIQELIAELGgAgACgCDEUEQCAAQd4fNgIQIABBFTYCDAsLFAAgACgCDEEVRgRAIABBADYCDAsLFAAgACgCDEEWRgRAIABBADYCDAsLBwAgACgCDAsHACAAKAIQCwkAIAAgATYCEAsHACAAKAIUCysAAkAgAEEnTw0AQv//////CSAArYhCAYNQDQAgAEECdEHQOGooAgAPCwALFwAgAEEvTwRAAAsgAEECdEHsOWooAgALvwkBAX9B9C0hAQJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIABB5ABrDvQDY2IAAWFhYWFhYQIDBAVhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhBgcICQoLDA0OD2FhYWFhEGFhYWFhYWFhYWFhEWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYRITFBUWFxgZGhthYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2YTc4OTphYWFhYWFhYTthYWE8YWFhYT0+P2FhYWFhYWFhQGFhQWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYUJDREVGR0hJSktMTU5PUFFSU2FhYWFhYWFhVFVWV1hZWlthXF1hYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFeYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhX2BhC0HqLA8LQZgmDwtB7TEPC0GgNw8LQckpDwtBtCkPC0GWLQ8LQesrDwtBojUPC0HbNA8LQeApDwtB4yQPC0HVJA8LQe4kDwtB5iUPC0HKNA8LQdA3DwtBqjUPC0H1LA8LQfYmDwtBgiIPC0HyMw8LQb4oDwtB5zcPC0HNIQ8LQcAhDwtBuCUPC0HLJQ8LQZYkDwtBjzQPC0HNNQ8LQd0qDwtB7jMPC0GcNA8LQZ4xDwtB9DUPC0HlIg8LQa8lDwtBmTEPC0GyNg8LQfk2DwtBxDIPC0HdLA8LQYIxDwtBwTEPC0GNNw8LQckkDwtB7DYPC0HnKg8LQcgjDwtB4iEPC0HJNw8LQaUiDwtBlCIPC0HbNg8LQd41DwtBhiYPC0G8Kw8LQYsyDwtBoCMPC0H2MA8LQYAsDwtBiSsPC0GkJg8LQfIjDwtBgSgPC0GrMg8LQesnDwtBwjYPC0GiJA8LQc8qDwtB3CMPC0GHJw8LQeQ0DwtBtyIPC0GtMQ8LQdUiDwtBrzQPC0HeJg8LQdYyDwtB9DQPC0GBOA8LQfQ3DwtBkjYPC0GdJw8LQYIpDwtBjSMPC0HXMQ8LQb01DwtBtDcPC0HYMA8LQbYnDwtBmjgPC0GnKg8LQcQnDwtBriMPC0H1Ig8LAAtByiYhAQsgAQsXACAAIAAvAS5B/v8DcSABQQBHcjsBLgsaACAAIAAvAS5B/f8DcSABQQBHQQF0cjsBLgsaACAAIAAvAS5B+/8DcSABQQBHQQJ0cjsBLgsaACAAIAAvAS5B9/8DcSABQQBHQQN0cjsBLgsaACAAIAAvAS5B7/8DcSABQQBHQQR0cjsBLgsaACAAIAAvAS5B3/8DcSABQQBHQQV0cjsBLgsaACAAIAAvAS5Bv/8DcSABQQBHQQZ0cjsBLgsaACAAIAAvAS5B//4DcSABQQBHQQd0cjsBLgsaACAAIAAvAS5B//0DcSABQQBHQQh0cjsBLgsaACAAIAAvAS5B//sDcSABQQBHQQl0cjsBLgs+AQJ/AkAgACgCOCIDRQ0AIAMoAgQiA0UNACAAIAEgAiABayADEQEAIgRBf0cNACAAQeESNgIQQRghBAsgBAs+AQJ/AkAgACgCOCIDRQ0AIAMoAggiA0UNACAAIAEgAiABayADEQEAIgRBf0cNACAAQfwRNgIQQRghBAsgBAs+AQJ/AkAgACgCOCIDRQ0AIAMoAgwiA0UNACAAIAEgAiABayADEQEAIgRBf0cNACAAQewKNgIQQRghBAsgBAs+AQJ/AkAgACgCOCIDRQ0AIAMoAhAiA0UNACAAIAEgAiABayADEQEAIgRBf0cNACAAQfoeNgIQQRghBAsgBAs+AQJ/AkAgACgCOCIDRQ0AIAMoAhQiA0UNACAAIAEgAiABayADEQEAIgRBf0cNACAAQcsQNgIQQRghBAsgBAs+AQJ/AkAgACgCOCIDRQ0AIAMoAhgiA0UNACAAIAEgAiABayADEQEAIgRBf0cNACAAQbcfNgIQQRghBAsgBAs+AQJ/AkAgACgCOCIDRQ0AIAMoAhwiA0UNACAAIAEgAiABayADEQEAIgRBf0cNACAAQb8VNgIQQRghBAsgBAs+AQJ/AkAgACgCOCIDRQ0AIAMoAiwiA0UNACAAIAEgAiABayADEQEAIgRBf0cNACAAQf4INgIQQRghBAsgBAs+AQJ/AkAgACgCOCIDRQ0AIAMoAiAiA0UNACAAIAEgAiABayADEQEAIgRBf0cNACAAQYwdNgIQQRghBAsgBAs+AQJ/AkAgACgCOCIDRQ0AIAMoAiQiA0UNACAAIAEgAiABayADEQEAIgRBf0cNACAAQeYVNgIQQRghBAsgBAs4ACAAAn8gAC8BMkEUcUEURgRAQQEgAC0AKEEBRg0BGiAALwE0QeUARgwBCyAALQApQQVGCzoAMAtZAQJ/AkAgAC0AKEEBRg0AIAAvATQiAUHkAGtB5ABJDQAgAUHMAUYNACABQbACRg0AIAAvATIiAEHAAHENAEEBIQIgAEGIBHFBgARGDQAgAEEocUUhAgsgAguMAQECfwJAAkACQCAALQAqRQ0AIAAtACtFDQAgAC8BMiIBQQJxRQ0BDAILIAAvATIiAUEBcUUNAQtBASECIAAtAChBAUYNACAALwE0IgBB5ABrQeQASQ0AIABBzAFGDQAgAEGwAkYNACABQcAAcQ0AQQAhAiABQYgEcUGABEYNACABQShxQQBHIQILIAILcwAgAEEQav0MAAAAAAAAAAAAAAAAAAAAAP0LAwAgAP0MAAAAAAAAAAAAAAAAAAAAAP0LAwAgAEEwav0MAAAAAAAAAAAAAAAAAAAAAP0LAwAgAEEgav0MAAAAAAAAAAAAAAAAAAAAAP0LAwAgAEH9ATYCHAsGACAAEDoLmi0BC38jAEEQayIKJABB3NUAKAIAIglFBEBBnNkAKAIAIgVFBEBBqNkAQn83AgBBoNkAQoCAhICAgMAANwIAQZzZACAKQQhqQXBxQdiq1aoFcyIFNgIAQbDZAEEANgIAQYDZAEEANgIAC0GE2QBBwNkENgIAQdTVAEHA2QQ2AgBB6NUAIAU2AgBB5NUAQX82AgBBiNkAQcCmAzYCAANAIAFBgNYAaiABQfTVAGoiAjYCACACIAFB7NUAaiIDNgIAIAFB+NUAaiADNgIAIAFBiNYAaiABQfzVAGoiAzYCACADIAI2AgAgAUGQ1gBqIAFBhNYAaiICNgIAIAIgAzYCACABQYzWAGogAjYCACABQSBqIgFBgAJHDQALQczZBEGBpgM2AgBB4NUAQazZACgCADYCAEHQ1QBBgKYDNgIAQdzVAEHI2QQ2AgBBzP8HQTg2AgBByNkEIQkLAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAEHsAU0EQEHE1QAoAgAiBkEQIABBE2pBcHEgAEELSRsiBEEDdiIAdiIBQQNxBEACQCABQQFxIAByQQFzIgJBA3QiAEHs1QBqIgEgAEH01QBqKAIAIgAoAggiA0YEQEHE1QAgBkF+IAJ3cTYCAAwBCyABIAM2AgggAyABNgIMCyAAQQhqIQEgACACQQN0IgJBA3I2AgQgACACaiIAIAAoAgRBAXI2AgQMEQtBzNUAKAIAIgggBE8NASABBEACQEECIAB0IgJBACACa3IgASAAdHFoIgBBA3QiAkHs1QBqIgEgAkH01QBqKAIAIgIoAggiA0YEQEHE1QAgBkF+IAB3cSIGNgIADAELIAEgAzYCCCADIAE2AgwLIAIgBEEDcjYCBCAAQQN0IgAgBGshBSAAIAJqIAU2AgAgAiAEaiIEIAVBAXI2AgQgCARAIAhBeHFB7NUAaiEAQdjVACgCACEDAn9BASAIQQN2dCIBIAZxRQRAQcTVACABIAZyNgIAIAAMAQsgACgCCAsiASADNgIMIAAgAzYCCCADIAA2AgwgAyABNgIICyACQQhqIQFB2NUAIAQ2AgBBzNUAIAU2AgAMEQtByNUAKAIAIgtFDQEgC2hBAnRB9NcAaigCACIAKAIEQXhxIARrIQUgACECA0ACQCACKAIQIgFFBEAgAkEUaigCACIBRQ0BCyABKAIEQXhxIARrIgMgBUkhAiADIAUgAhshBSABIAAgAhshACABIQIMAQsLIAAoAhghCSAAKAIMIgMgAEcEQEHU1QAoAgAaIAMgACgCCCIBNgIIIAEgAzYCDAwQCyAAQRRqIgIoAgAiAUUEQCAAKAIQIgFFDQMgAEEQaiECCwNAIAIhByABIgNBFGoiAigCACIBDQAgA0EQaiECIAMoAhAiAQ0ACyAHQQA2AgAMDwtBfyEEIABBv39LDQAgAEETaiIBQXBxIQRByNUAKAIAIghFDQBBACAEayEFAkACQAJAAn9BACAEQYACSQ0AGkEfIARB////B0sNABogBEEmIAFBCHZnIgBrdkEBcSAAQQF0a0E+agsiBkECdEH01wBqKAIAIgJFBEBBACEBQQAhAwwBC0EAIQEgBEEZIAZBAXZrQQAgBkEfRxt0IQBBACEDA0ACQCACKAIEQXhxIARrIgcgBU8NACACIQMgByIFDQBBACEFIAIhAQwDCyABIAJBFGooAgAiByAHIAIgAEEddkEEcWpBEGooAgAiAkYbIAEgBxshASAAQQF0IQAgAg0ACwsgASADckUEQEEAIQNBAiAGdCIAQQAgAGtyIAhxIgBFDQMgAGhBAnRB9NcAaigCACEBCyABRQ0BCwNAIAEoAgRBeHEgBGsiAiAFSSEAIAIgBSAAGyEFIAEgAyAAGyEDIAEoAhAiAAR/IAAFIAFBFGooAgALIgENAAsLIANFDQAgBUHM1QAoAgAgBGtPDQAgAygCGCEHIAMgAygCDCIARwRAQdTVACgCABogACADKAIIIgE2AgggASAANgIMDA4LIANBFGoiAigCACIBRQRAIAMoAhAiAUUNAyADQRBqIQILA0AgAiEGIAEiAEEUaiICKAIAIgENACAAQRBqIQIgACgCECIBDQALIAZBADYCAAwNC0HM1QAoAgAiAyAETwRAQdjVACgCACEBAkAgAyAEayICQRBPBEAgASAEaiIAIAJBAXI2AgQgASADaiACNgIAIAEgBEEDcjYCBAwBCyABIANBA3I2AgQgASADaiIAIAAoAgRBAXI2AgRBACEAQQAhAgtBzNUAIAI2AgBB2NUAIAA2AgAgAUEIaiEBDA8LQdDVACgCACIDIARLBEAgBCAJaiIAIAMgBGsiAUEBcjYCBEHc1QAgADYCAEHQ1QAgATYCACAJIARBA3I2AgQgCUEIaiEBDA8LQQAhASAEAn9BnNkAKAIABEBBpNkAKAIADAELQajZAEJ/NwIAQaDZAEKAgISAgIDAADcCAEGc2QAgCkEMakFwcUHYqtWqBXM2AgBBsNkAQQA2AgBBgNkAQQA2AgBBgIAECyIAIARBxwBqIgVqIgZBACAAayIHcSICTwRAQbTZAEEwNgIADA8LAkBB/NgAKAIAIgFFDQBB9NgAKAIAIgggAmohACAAIAFNIAAgCEtxDQBBACEBQbTZAEEwNgIADA8LQYDZAC0AAEEEcQ0EAkACQCAJBEBBhNkAIQEDQCABKAIAIgAgCU0EQCAAIAEoAgRqIAlLDQMLIAEoAggiAQ0ACwtBABA7IgBBf0YNBSACIQZBoNkAKAIAIgFBAWsiAyAAcQRAIAIgAGsgACADakEAIAFrcWohBgsgBCAGTw0FIAZB/v///wdLDQVB/NgAKAIAIgMEQEH02AAoAgAiByAGaiEBIAEgB00NBiABIANLDQYLIAYQOyIBIABHDQEMBwsgBiADayAHcSIGQf7///8HSw0EIAYQOyEAIAAgASgCACABKAIEakYNAyAAIQELAkAgBiAEQcgAak8NACABQX9GDQBBpNkAKAIAIgAgBSAGa2pBACAAa3EiAEH+////B0sEQCABIQAMBwsgABA7QX9HBEAgACAGaiEGIAEhAAwHC0EAIAZrEDsaDAQLIAEiAEF/Rw0FDAMLQQAhAwwMC0EAIQAMCgsgAEF/Rw0CC0GA2QBBgNkAKAIAQQRyNgIACyACQf7///8HSw0BIAIQOyEAQQAQOyEBIABBf0YNASABQX9GDQEgACABTw0BIAEgAGsiBiAEQThqTQ0BC0H02ABB9NgAKAIAIAZqIgE2AgBB+NgAKAIAIAFJBEBB+NgAIAE2AgALAkACQAJAQdzVACgCACICBEBBhNkAIQEDQCAAIAEoAgAiAyABKAIEIgVqRg0CIAEoAggiAQ0ACwwCC0HU1QAoAgAiAUEARyAAIAFPcUUEQEHU1QAgADYCAAtBACEBQYjZACAGNgIAQYTZACAANgIAQeTVAEF/NgIAQejVAEGc2QAoAgA2AgBBkNkAQQA2AgADQCABQYDWAGogAUH01QBqIgI2AgAgAiABQezVAGoiAzYCACABQfjVAGogAzYCACABQYjWAGogAUH81QBqIgM2AgAgAyACNgIAIAFBkNYAaiABQYTWAGoiAjYCACACIAM2AgAgAUGM1gBqIAI2AgAgAUEgaiIBQYACRw0AC0F4IABrQQ9xIgEgAGoiAiAGQThrIgMgAWsiAUEBcjYCBEHg1QBBrNkAKAIANgIAQdDVACABNgIAQdzVACACNgIAIAAgA2pBODYCBAwCCyAAIAJNDQAgAiADSQ0AIAEoAgxBCHENAEF4IAJrQQ9xIgAgAmoiA0HQ1QAoAgAgBmoiByAAayIAQQFyNgIEIAEgBSAGajYCBEHg1QBBrNkAKAIANgIAQdDVACAANgIAQdzVACADNgIAIAIgB2pBODYCBAwBCyAAQdTVACgCAEkEQEHU1QAgADYCAAsgACAGaiEDQYTZACEBAkACQAJAA0AgAyABKAIARwRAIAEoAggiAQ0BDAILCyABLQAMQQhxRQ0BC0GE2QAhAQNAIAEoAgAiAyACTQRAIAMgASgCBGoiBSACSw0DCyABKAIIIQEMAAsACyABIAA2AgAgASABKAIEIAZqNgIEIABBeCAAa0EPcWoiCSAEQQNyNgIEIANBeCADa0EPcWoiBiAEIAlqIgRrIQEgAiAGRgRAQdzVACAENgIAQdDVAEHQ1QAoAgAgAWoiADYCACAEIABBAXI2AgQMCAtB2NUAKAIAIAZGBEBB2NUAIAQ2AgBBzNUAQczVACgCACABaiIANgIAIAQgAEEBcjYCBCAAIARqIAA2AgAMCAsgBigCBCIFQQNxQQFHDQYgBUF4cSEIIAVB/wFNBEAgBUEDdiEDIAYoAggiACAGKAIMIgJGBEBBxNUAQcTVACgCAEF+IAN3cTYCAAwHCyACIAA2AgggACACNgIMDAYLIAYoAhghByAGIAYoAgwiAEcEQCAAIAYoAggiAjYCCCACIAA2AgwMBQsgBkEUaiICKAIAIgVFBEAgBigCECIFRQ0EIAZBEGohAgsDQCACIQMgBSIAQRRqIgIoAgAiBQ0AIABBEGohAiAAKAIQIgUNAAsgA0EANgIADAQLQXggAGtBD3EiASAAaiIHIAZBOGsiAyABayIBQQFyNgIEIAAgA2pBODYCBCACIAVBNyAFa0EPcWpBP2siAyADIAJBEGpJGyIDQSM2AgRB4NUAQazZACgCADYCAEHQ1QAgATYCAEHc1QAgBzYCACADQRBqQYzZACkCADcCACADQYTZACkCADcCCEGM2QAgA0EIajYCAEGI2QAgBjYCAEGE2QAgADYCAEGQ2QBBADYCACADQSRqIQEDQCABQQc2AgAgBSABQQRqIgFLDQALIAIgA0YNACADIAMoAgRBfnE2AgQgAyADIAJrIgU2AgAgAiAFQQFyNgIEIAVB/wFNBEAgBUF4cUHs1QBqIQACf0HE1QAoAgAiAUEBIAVBA3Z0IgNxRQRAQcTVACABIANyNgIAIAAMAQsgACgCCAsiASACNgIMIAAgAjYCCCACIAA2AgwgAiABNgIIDAELQR8hASAFQf///wdNBEAgBUEmIAVBCHZnIgBrdkEBcSAAQQF0a0E+aiEBCyACIAE2AhwgAkIANwIQIAFBAnRB9NcAaiEAQcjVACgCACIDQQEgAXQiBnFFBEAgACACNgIAQcjVACADIAZyNgIAIAIgADYCGCACIAI2AgggAiACNgIMDAELIAVBGSABQQF2a0EAIAFBH0cbdCEBIAAoAgAhAwJAA0AgAyIAKAIEQXhxIAVGDQEgAUEddiEDIAFBAXQhASAAIANBBHFqQRBqIgYoAgAiAw0ACyAGIAI2AgAgAiAANgIYIAIgAjYCDCACIAI2AggMAQsgACgCCCIBIAI2AgwgACACNgIIIAJBADYCGCACIAA2AgwgAiABNgIIC0HQ1QAoAgAiASAETQ0AQdzVACgCACIAIARqIgIgASAEayIBQQFyNgIEQdDVACABNgIAQdzVACACNgIAIAAgBEEDcjYCBCAAQQhqIQEMCAtBACEBQbTZAEEwNgIADAcLQQAhAAsgB0UNAAJAIAYoAhwiAkECdEH01wBqIgMoAgAgBkYEQCADIAA2AgAgAA0BQcjVAEHI1QAoAgBBfiACd3E2AgAMAgsgB0EQQRQgBygCECAGRhtqIAA2AgAgAEUNAQsgACAHNgIYIAYoAhAiAgRAIAAgAjYCECACIAA2AhgLIAZBFGooAgAiAkUNACAAQRRqIAI2AgAgAiAANgIYCyABIAhqIQEgBiAIaiIGKAIEIQULIAYgBUF+cTYCBCABIARqIAE2AgAgBCABQQFyNgIEIAFB/wFNBEAgAUF4cUHs1QBqIQACf0HE1QAoAgAiAkEBIAFBA3Z0IgFxRQRAQcTVACABIAJyNgIAIAAMAQsgACgCCAsiASAENgIMIAAgBDYCCCAEIAA2AgwgBCABNgIIDAELQR8hBSABQf///wdNBEAgAUEmIAFBCHZnIgBrdkEBcSAAQQF0a0E+aiEFCyAEIAU2AhwgBEIANwIQIAVBAnRB9NcAaiEAQcjVACgCACICQQEgBXQiA3FFBEAgACAENgIAQcjVACACIANyNgIAIAQgADYCGCAEIAQ2AgggBCAENgIMDAELIAFBGSAFQQF2a0EAIAVBH0cbdCEFIAAoAgAhAAJAA0AgACICKAIEQXhxIAFGDQEgBUEddiEAIAVBAXQhBSACIABBBHFqQRBqIgMoAgAiAA0ACyADIAQ2AgAgBCACNgIYIAQgBDYCDCAEIAQ2AggMAQsgAigCCCIAIAQ2AgwgAiAENgIIIARBADYCGCAEIAI2AgwgBCAANgIICyAJQQhqIQEMAgsCQCAHRQ0AAkAgAygCHCIBQQJ0QfTXAGoiAigCACADRgRAIAIgADYCACAADQFByNUAIAhBfiABd3EiCDYCAAwCCyAHQRBBFCAHKAIQIANGG2ogADYCACAARQ0BCyAAIAc2AhggAygCECIBBEAgACABNgIQIAEgADYCGAsgA0EUaigCACIBRQ0AIABBFGogATYCACABIAA2AhgLAkAgBUEPTQRAIAMgBCAFaiIAQQNyNgIEIAAgA2oiACAAKAIEQQFyNgIEDAELIAMgBGoiAiAFQQFyNgIEIAMgBEEDcjYCBCACIAVqIAU2AgAgBUH/AU0EQCAFQXhxQezVAGohAAJ/QcTVACgCACIBQQEgBUEDdnQiBXFFBEBBxNUAIAEgBXI2AgAgAAwBCyAAKAIICyIBIAI2AgwgACACNgIIIAIgADYCDCACIAE2AggMAQtBHyEBIAVB////B00EQCAFQSYgBUEIdmciAGt2QQFxIABBAXRrQT5qIQELIAIgATYCHCACQgA3AhAgAUECdEH01wBqIQBBASABdCIEIAhxRQRAIAAgAjYCAEHI1QAgBCAIcjYCACACIAA2AhggAiACNgIIIAIgAjYCDAwBCyAFQRkgAUEBdmtBACABQR9HG3QhASAAKAIAIQQCQANAIAQiACgCBEF4cSAFRg0BIAFBHXYhBCABQQF0IQEgACAEQQRxakEQaiIGKAIAIgQNAAsgBiACNgIAIAIgADYCGCACIAI2AgwgAiACNgIIDAELIAAoAggiASACNgIMIAAgAjYCCCACQQA2AhggAiAANgIMIAIgATYCCAsgA0EIaiEBDAELAkAgCUUNAAJAIAAoAhwiAUECdEH01wBqIgIoAgAgAEYEQCACIAM2AgAgAw0BQcjVACALQX4gAXdxNgIADAILIAlBEEEUIAkoAhAgAEYbaiADNgIAIANFDQELIAMgCTYCGCAAKAIQIgEEQCADIAE2AhAgASADNgIYCyAAQRRqKAIAIgFFDQAgA0EUaiABNgIAIAEgAzYCGAsCQCAFQQ9NBEAgACAEIAVqIgFBA3I2AgQgACABaiIBIAEoAgRBAXI2AgQMAQsgACAEaiIHIAVBAXI2AgQgACAEQQNyNgIEIAUgB2ogBTYCACAIBEAgCEF4cUHs1QBqIQFB2NUAKAIAIQMCf0EBIAhBA3Z0IgIgBnFFBEBBxNUAIAIgBnI2AgAgAQwBCyABKAIICyICIAM2AgwgASADNgIIIAMgATYCDCADIAI2AggLQdjVACAHNgIAQczVACAFNgIACyAAQQhqIQELIApBEGokACABC0MAIABFBEA/AEEQdA8LAkAgAEH//wNxDQAgAEEASA0AIABBEHZAACIAQX9GBEBBtNkAQTA2AgBBfw8LIABBEHQPCwALC5lCIgBBgAgLDQEAAAAAAAAAAgAAAAMAQZgICwUEAAAABQBBqAgLCQYAAAAHAAAACABB5AgLwjJJbnZhbGlkIGNoYXIgaW4gdXJsIHF1ZXJ5AFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fYm9keQBDb250ZW50LUxlbmd0aCBvdmVyZmxvdwBDaHVuayBzaXplIG92ZXJmbG93AEludmFsaWQgbWV0aG9kIGZvciBIVFRQL3gueCByZXF1ZXN0AEludmFsaWQgbWV0aG9kIGZvciBSVFNQL3gueCByZXF1ZXN0AEV4cGVjdGVkIFNPVVJDRSBtZXRob2QgZm9yIElDRS94LnggcmVxdWVzdABJbnZhbGlkIGNoYXIgaW4gdXJsIGZyYWdtZW50IHN0YXJ0AEV4cGVjdGVkIGRvdABTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3N0YXR1cwBJbnZhbGlkIHJlc3BvbnNlIHN0YXR1cwBFeHBlY3RlZCBMRiBhZnRlciBoZWFkZXJzAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMAVXNlciBjYWxsYmFjayBlcnJvcgBgb25fcmVzZXRgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19oZWFkZXJgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2JlZ2luYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlYCBjYWxsYmFjayBlcnJvcgBgb25fc3RhdHVzX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdmVyc2lvbl9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3VybF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3Byb3RvY29sX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fcHJvdG9jb2wARW1wdHkgQ29udGVudC1MZW5ndGgASW52YWxpZCBjaGFyYWN0ZXIgaW4gQ29udGVudC1MZW5ndGgAVHJhbnNmZXItRW5jb2RpbmcgY2FuJ3QgYmUgcHJlc2VudCB3aXRoIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgc2l6ZQBFeHBlY3RlZCBMRiBhZnRlciBjaHVuayBzaXplAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBVbmV4cGVjdGVkIHdoaXRlc3BhY2UgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgTEYgYWZ0ZXIgaGVhZGVyIHZhbHVlAEludmFsaWQgYFRyYW5zZmVyLUVuY29kaW5nYCBoZWFkZXIgdmFsdWUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciBjaHVuayBleHRlbnNpb24gdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZSB2YWx1ZQBJbnZhbGlkIHF1b3RlZC1wYWlyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAFBhdXNlZCBieSBvbl9oZWFkZXJzX2NvbXBsZXRlAEludmFsaWQgRU9GIHN0YXRlAG9uX3Jlc2V0IHBhdXNlAG9uX2NodW5rX2hlYWRlciBwYXVzZQBvbl9tZXNzYWdlX2JlZ2luIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZSBwYXVzZQBvbl9zdGF0dXNfY29tcGxldGUgcGF1c2UAb25fdmVyc2lvbl9jb21wbGV0ZSBwYXVzZQBvbl91cmxfY29tcGxldGUgcGF1c2UAb25fcHJvdG9jb2xfY29tcGxldGUgcGF1c2UAb25fY2h1bmtfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX3ZhbHVlX2NvbXBsZXRlIHBhdXNlAG9uX21lc3NhZ2VfY29tcGxldGUgcGF1c2UAb25fbWV0aG9kX2NvbXBsZXRlIHBhdXNlAG9uX2hlYWRlcl9maWVsZF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19leHRlbnNpb25fbmFtZSBwYXVzZQBVbmV4cGVjdGVkIHNwYWNlIGFmdGVyIHN0YXJ0IGxpbmUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciByZXNwb25zZSBsaW5lAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fY2h1bmtfZXh0ZW5zaW9uX25hbWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBuYW1lAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgZXh0ZW5zaW9uIG5hbWUASW52YWxpZCBzdGF0dXMgY29kZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABNaXNzaW5nIGV4cGVjdGVkIENSIGFmdGVyIGNodW5rIGRhdGEARXhwZWN0ZWQgTEYgYWZ0ZXIgY2h1bmsgZGF0YQBVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AARGF0YSBhZnRlciBgQ29ubmVjdGlvbjogY2xvc2VgAFNXSVRDSF9QUk9YWQBVU0VfUFJPWFkATUtBQ1RJVklUWQBVTlBST0NFU1NBQkxFX0VOVElUWQBRVUVSWQBDT1BZAE1PVkVEX1BFUk1BTkVOVExZAFRPT19FQVJMWQBOT1RJRlkARkFJTEVEX0RFUEVOREVOQ1kAQkFEX0dBVEVXQVkAUExBWQBQVVQAQ0hFQ0tPVVQAR0FURVdBWV9USU1FT1VUAFJFUVVFU1RfVElNRU9VVABORVRXT1JLX0NPTk5FQ1RfVElNRU9VVABDT05ORUNUSU9OX1RJTUVPVVQATE9HSU5fVElNRU9VVABORVRXT1JLX1JFQURfVElNRU9VVABQT1NUAE1JU0RJUkVDVEVEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9SRVFVRVNUAENMSUVOVF9DTE9TRURfTE9BRF9CQUxBTkNFRF9SRVFVRVNUAEJBRF9SRVFVRVNUAEhUVFBfUkVRVUVTVF9TRU5UX1RPX0hUVFBTX1BPUlQAUkVQT1JUAElNX0FfVEVBUE9UAFJFU0VUX0NPTlRFTlQATk9fQ09OVEVOVABQQVJUSUFMX0NPTlRFTlQASFBFX0lOVkFMSURfQ09OU1RBTlQASFBFX0NCX1JFU0VUAEdFVABIUEVfU1RSSUNUAENPTkZMSUNUAFRFTVBPUkFSWV9SRURJUkVDVABQRVJNQU5FTlRfUkVESVJFQ1QAQ09OTkVDVABNVUxUSV9TVEFUVVMASFBFX0lOVkFMSURfU1RBVFVTAFRPT19NQU5ZX1JFUVVFU1RTAEVBUkxZX0hJTlRTAFVOQVZBSUxBQkxFX0ZPUl9MRUdBTF9SRUFTT05TAE9QVElPTlMAU1dJVENISU5HX1BST1RPQ09MUwBWQVJJQU5UX0FMU09fTkVHT1RJQVRFUwBNVUxUSVBMRV9DSE9JQ0VTAElOVEVSTkFMX1NFUlZFUl9FUlJPUgBXRUJfU0VSVkVSX1VOS05PV05fRVJST1IAUkFJTEdVTl9FUlJPUgBJREVOVElUWV9QUk9WSURFUl9BVVRIRU5USUNBVElPTl9FUlJPUgBTU0xfQ0VSVElGSUNBVEVfRVJST1IASU5WQUxJRF9YX0ZPUldBUkRFRF9GT1IAU0VUX1BBUkFNRVRFUgBHRVRfUEFSQU1FVEVSAEhQRV9VU0VSAFNFRV9PVEhFUgBIUEVfQ0JfQ0hVTktfSEVBREVSAEV4cGVjdGVkIExGIGFmdGVyIENSAE1LQ0FMRU5EQVIAU0VUVVAAV0VCX1NFUlZFUl9JU19ET1dOAFRFQVJET1dOAEhQRV9DTE9TRURfQ09OTkVDVElPTgBIRVVSSVNUSUNfRVhQSVJBVElPTgBESVNDT05ORUNURURfT1BFUkFUSU9OAE5PTl9BVVRIT1JJVEFUSVZFX0lORk9STUFUSU9OAEhQRV9JTlZBTElEX1ZFUlNJT04ASFBFX0NCX01FU1NBR0VfQkVHSU4AU0lURV9JU19GUk9aRU4ASFBFX0lOVkFMSURfSEVBREVSX1RPS0VOAElOVkFMSURfVE9LRU4ARk9SQklEREVOAEVOSEFOQ0VfWU9VUl9DQUxNAEhQRV9JTlZBTElEX1VSTABCTE9DS0VEX0JZX1BBUkVOVEFMX0NPTlRST0wATUtDT0wAQUNMAEhQRV9JTlRFUk5BTABSRVFVRVNUX0hFQURFUl9GSUVMRFNfVE9PX0xBUkdFX1VOT0ZGSUNJQUwASFBFX09LAFVOTElOSwBVTkxPQ0sAUFJJAFJFVFJZX1dJVEgASFBFX0lOVkFMSURfQ09OVEVOVF9MRU5HVEgASFBFX1VORVhQRUNURURfQ09OVEVOVF9MRU5HVEgARkxVU0gAUFJPUFBBVENIAE0tU0VBUkNIAFVSSV9UT09fTE9ORwBQUk9DRVNTSU5HAE1JU0NFTExBTkVPVVNfUEVSU0lTVEVOVF9XQVJOSU5HAE1JU0NFTExBTkVPVVNfV0FSTklORwBIUEVfSU5WQUxJRF9UUkFOU0ZFUl9FTkNPRElORwBFeHBlY3RlZCBDUkxGAEhQRV9JTlZBTElEX0NIVU5LX1NJWkUATU9WRQBDT05USU5VRQBIUEVfQ0JfU1RBVFVTX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJTX0NPTVBMRVRFAEhQRV9DQl9WRVJTSU9OX0NPTVBMRVRFAEhQRV9DQl9VUkxfQ09NUExFVEUASFBFX0NCX1BST1RPQ09MX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19DT01QTEVURQBIUEVfQ0JfSEVBREVSX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fVkFMVUVfQ09NUExFVEUASFBFX0NCX0NIVU5LX0VYVEVOU0lPTl9OQU1FX0NPTVBMRVRFAEhQRV9DQl9NRVNTQUdFX0NPTVBMRVRFAEhQRV9DQl9NRVRIT0RfQ09NUExFVEUASFBFX0NCX0hFQURFUl9GSUVMRF9DT01QTEVURQBERUxFVEUASFBFX0lOVkFMSURfRU9GX1NUQVRFAElOVkFMSURfU1NMX0NFUlRJRklDQVRFAFBBVVNFAE5PX1JFU1BPTlNFAFVOU1VQUE9SVEVEX01FRElBX1RZUEUAR09ORQBOT1RfQUNDRVBUQUJMRQBTRVJWSUNFX1VOQVZBSUxBQkxFAFJBTkdFX05PVF9TQVRJU0ZJQUJMRQBPUklHSU5fSVNfVU5SRUFDSEFCTEUAUkVTUE9OU0VfSVNfU1RBTEUAUFVSR0UATUVSR0UAUkVRVUVTVF9IRUFERVJfRklFTERTX1RPT19MQVJHRQBSRVFVRVNUX0hFQURFUl9UT09fTEFSR0UAUEFZTE9BRF9UT09fTEFSR0UASU5TVUZGSUNJRU5UX1NUT1JBR0UASFBFX1BBVVNFRF9VUEdSQURFAEhQRV9QQVVTRURfSDJfVVBHUkFERQBTT1VSQ0UAQU5OT1VOQ0UAVFJBQ0UASFBFX1VORVhQRUNURURfU1BBQ0UAREVTQ1JJQkUAVU5TVUJTQ1JJQkUAUkVDT1JEAEhQRV9JTlZBTElEX01FVEhPRABOT1RfRk9VTkQAUFJPUEZJTkQAVU5CSU5EAFJFQklORABVTkFVVEhPUklaRUQATUVUSE9EX05PVF9BTExPV0VEAEhUVFBfVkVSU0lPTl9OT1RfU1VQUE9SVEVEAEFMUkVBRFlfUkVQT1JURUQAQUNDRVBURUQATk9UX0lNUExFTUVOVEVEAExPT1BfREVURUNURUQASFBFX0NSX0VYUEVDVEVEAEhQRV9MRl9FWFBFQ1RFRABDUkVBVEVEAElNX1VTRUQASFBFX1BBVVNFRABUSU1FT1VUX09DQ1VSRUQAUEFZTUVOVF9SRVFVSVJFRABQUkVDT05ESVRJT05fUkVRVUlSRUQAUFJPWFlfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATkVUV09SS19BVVRIRU5USUNBVElPTl9SRVFVSVJFRABMRU5HVEhfUkVRVUlSRUQAU1NMX0NFUlRJRklDQVRFX1JFUVVJUkVEAFVQR1JBREVfUkVRVUlSRUQAUEFHRV9FWFBJUkVEAFBSRUNPTkRJVElPTl9GQUlMRUQARVhQRUNUQVRJT05fRkFJTEVEAFJFVkFMSURBVElPTl9GQUlMRUQAU1NMX0hBTkRTSEFLRV9GQUlMRUQATE9DS0VEAFRSQU5TRk9STUFUSU9OX0FQUExJRUQATk9UX01PRElGSUVEAE5PVF9FWFRFTkRFRABCQU5EV0lEVEhfTElNSVRfRVhDRUVERUQAU0lURV9JU19PVkVSTE9BREVEAEhFQUQARXhwZWN0ZWQgSFRUUC8sIFJUU1AvIG9yIElDRS8A5xUAAK8VAACkEgAAkhoAACYWAACeFAAA2xkAAHkVAAB+EgAA/hQAADYVAAALFgAA2BYAAPMSAABCGAAArBYAABIVAAAUFwAA7xcAAEgUAABxFwAAshoAAGsZAAB+GQAANRQAAIIaAABEFwAA/RYAAB4YAACHFwAAqhkAAJMSAAAHGAAALBcAAMoXAACkFwAA5xUAAOcVAABYFwAAOxgAAKASAAAtHAAAwxEAAEgRAADeEgAAQhMAAKQZAAD9EAAA9xUAAKUVAADvFgAA+BkAAEoWAABWFgAA9RUAAAoaAAAIGgAAARoAAKsVAABCEgAA1xAAAEwRAAAFGQAAVBYAAB4RAADKGQAAyBkAAE4WAAD/GAAAcRQAAPAVAADuFQAAlBkAAPwVAAC/GQAAmxkAAHwUAABDEQAAcBgAAJUUAAAnFAAAGRQAANUSAADUGQAARBYAAPcQAEG5OwsBAQBB0DsL4AEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEDAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBuj0LBAEAAAIAQdE9C14DBAMDAwMDAAADAwADAwADAwMDAwMDAwMDAAUAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAwADAEG6PwsEAQAAAgBB0T8LXgMAAwMDAwMAAAMDAAMDAAMDAwMDAwMDAwMABAAFAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwADAAMAQbDBAAsNbG9zZWVlcC1hbGl2ZQBBycEACwEBAEHgwQAL4AEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBycMACwEBAEHgwwAL5wEBAQEBAQEBAQEBAQECAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAWNodW5rZWQAQfHFAAteAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQBB0McACyFlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AQYDIAAsgcmFuc2Zlci1lbmNvZGluZ3BncmFkZQ0KDQpTTQ0KDQoAQanIAAsFAQIAAQMAQcDIAAtfBAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanKAAsFAQIAAQMAQcDKAAtfBAUFBgUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanMAAsEAQAAAQBBwcwAC14CAgACAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAEGpzgALBQECAAEDAEHAzgALXwQFAAAFBQUFBQUFBQUFBQYFBQUFBQUFBQUFBQUABQAHCAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQAFAAUABQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAAAAFAEGp0AALBQEBAAEBAEHA0AALAQEAQdrQAAtBAgAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAQanSAAsFAQEAAQEAQcDSAAsBAQBBytIACwYCAAAAAAIAQeHSAAs6AwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBBoNQAC50BTk9VTkNFRUNLT1VUTkVDVEVURUNSSUJFTFVTSEVURUFEU0VBUkNIUkdFQ1RJVklUWUxFTkRBUlZFT1RJRllQVElPTlNDSFNFQVlTVEFUQ0hHRVVFUllPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFVFRQQ0VUU1BBRFRQLw==","base64")}})});var Iq=R((msY,N2Q)=>{var U2Q=["GET","HEAD","POST"],ij0=new Set(U2Q),nj0=[101,204,205,304],E2Q=[301,302,303,307,308],sj0=new Set(E2Q),K2Q=["1","7","9","11","13","15","17","19","20","21","22","23","25","37","42","43","53","69","77","79","87","95","101","102","103","104","109","110","111","113","115","117","119","123","135","137","139","143","161","179","389","427","465","512","513","514","515","526","530","531","532","540","548","554","556","563","587","601","636","989","990","993","995","1719","1720","1723","2049","3659","4045","4190","5060","5061","6000","6566","6665","6666","6667","6668","6669","6679","6697","10080"],rj0=new Set(K2Q),V2Q=["no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"],aj0=["",...V2Q],oj0=new Set(V2Q),tj0=["follow","manual","error"],I2Q=["GET","HEAD","OPTIONS","TRACE"],ej0=new Set(I2Q),AO0=["navigate","same-origin","no-cors","cors"],QO0=["omit","same-origin","include"],BO0=["default","no-store","reload","no-cache","force-cache","only-if-cached"],YO0=["content-encoding","content-language","content-location","content-type","content-length"],JO0=["half"],H2Q=["CONNECT","TRACE","TRACK"],CO0=new Set(H2Q),D2Q=["audio","audioworklet","font","image","manifest","paintworklet","script","style","track","video","xslt",""],XO0=new Set(D2Q);N2Q.exports={subresource:D2Q,forbiddenMethods:H2Q,requestBodyHeader:YO0,referrerPolicy:aj0,requestRedirect:tj0,requestMode:AO0,requestCredentials:QO0,requestCache:BO0,redirectStatus:E2Q,corsSafeListedMethods:U2Q,nullBodyStatus:nj0,safeMethods:I2Q,badPorts:K2Q,requestDuplex:JO0,subresourceSet:XO0,badPortsSet:rj0,redirectStatusSet:sj0,corsSafeListedMethodsSet:ij0,safeMethodsSet:ej0,forbiddenMethodsSet:CO0,referrerPolicyTokens:oj0}});var Sr=R((usY,L2Q)=>{var Tr=Symbol.for("undici.globalOrigin.1");function GO0(){return globalThis[Tr]}function WO0(A){if(A===void 0){Object.defineProperty(globalThis,Tr,{value:void 0,writable:!0,enumerable:!1,configurable:!1});return}let Q=new URL(A);if(Q.protocol!=="http:"&&Q.protocol!=="https:")throw TypeError(`Only http & https urls are allowed, received ${Q.protocol}`);Object.defineProperty(globalThis,Tr,{value:Q,writable:!0,enumerable:!1,configurable:!1})}L2Q.exports={getGlobalOrigin:GO0,setGlobalOrigin:WO0}});var l8=R((dsY,O2Q)=>{var KS=u("node:assert"),FO0=new TextEncoder,Hq=/^[!#$%&'*+\-.^_|~A-Za-z0-9]+$/,ZO0=/[\u000A\u000D\u0009\u0020]/,$O0=/[\u0009\u000A\u000C\u000D\u0020]/g,UO0=/^[\u0009\u0020-\u007E\u0080-\u00FF]+$/;function EO0(A){KS(A.protocol==="data:");let Q=z2Q(A,!0);Q=Q.slice(5);let B={position:0},Y=sK(",",Q,B),J=Y.length;if(Y=NO0(Y,!0,!0),B.position>=Q.length)return"failure";B.position++;let C=Q.slice(J+1),X=R2Q(C);if(/;(\u0020){0,}base64$/i.test(Y)){let W=j2Q(X);if(X=VO0(W),X==="failure")return"failure";Y=Y.slice(0,-6),Y=Y.replace(/(\u0020)+$/,""),Y=Y.slice(0,-1)}if(Y.startsWith(";"))Y="text/plain"+Y;let G=kr(Y);if(G==="failure")G=kr("text/plain;charset=US-ASCII");return{mimeType:G,body:X}}function z2Q(A,Q=!1){if(!Q)return A.href;let B=A.href,Y=A.hash.length,J=Y===0?B:B.substring(0,B.length-Y);if(!Y&&B.endsWith("#"))return J.slice(0,-1);return J}function VS(A,Q,B){let Y="";while(B.position=48&&A<=57||A>=65&&A<=70||A>=97&&A<=102}function M2Q(A){return A>=48&&A<=57?A-48:(A&223)-55}function KO0(A){let Q=A.length,B=new Uint8Array(Q),Y=0;for(let J=0;J=A.length)return"failure";Q.position++;let Y=sK(";",A,Q);if(Y=ES(Y,!1,!0),Y.length===0||!Hq.test(Y))return"failure";let J=B.toLowerCase(),C=Y.toLowerCase(),X={type:J,subtype:C,parameters:new Map,essence:`${J}/${C}`};while(Q.positionZO0.test(F),A,Q);let G=VS((F)=>F!==";"&&F!=="=",A,Q);if(G=G.toLowerCase(),Q.position=A.length)break;let W=null;if(A[Q.position]==='"')W=w2Q(A,Q,!0),sK(";",A,Q);else if(W=sK(";",A,Q),W=ES(W,!1,!0),W.length===0)continue;if(G.length!==0&&Hq.test(G)&&(W.length===0||UO0.test(W))&&!X.parameters.has(G))X.parameters.set(G,W)}return X}function VO0(A){A=A.replace($O0,"");let Q=A.length;if(Q%4===0){if(A.charCodeAt(Q-1)===61){if(--Q,A.charCodeAt(Q-1)===61)--Q}}if(Q%4===1)return"failure";if(/[^+/0-9A-Za-z]/.test(A.length===Q?A:A.substring(0,Q)))return"failure";let B=Buffer.from(A,"base64");return new Uint8Array(B.buffer,B.byteOffset,B.byteLength)}function w2Q(A,Q,B=!1){let Y=Q.position,J="";KS(A[Q.position]==='"'),Q.position++;while(!0){if(J+=VS((X)=>X!=='"'&&X!=="\\",A,Q),Q.position>=A.length)break;let C=A[Q.position];if(Q.position++,C==="\\"){if(Q.position>=A.length){J+="\\";break}J+=A[Q.position],Q.position++}else{KS(C==='"');break}}if(B)return J;return A.slice(Y,Q.position)}function IO0(A){KS(A!=="failure");let{parameters:Q,essence:B}=A,Y=B;for(let[J,C]of Q.entries()){if(Y+=";",Y+=J,Y+="=",!Hq.test(C))C=C.replace(/(\\|")/g,"\\$1"),C='"'+C,C+='"';Y+=C}return Y}function HO0(A){return A===13||A===10||A===9||A===32}function ES(A,Q=!0,B=!0){return _r(A,Q,B,HO0)}function DO0(A){return A===13||A===10||A===9||A===12||A===32}function NO0(A,Q=!0,B=!0){return _r(A,Q,B,DO0)}function _r(A,Q,B,Y){let J=0,C=A.length-1;if(Q)while(J0&&Y(A.charCodeAt(C)))C--;return J===0&&C===A.length-1?A:A.slice(J,C+1)}function j2Q(A){let Q=A.length;if(65535>Q)return String.fromCharCode.apply(null,A);let B="",Y=0,J=65535;while(YQ)J=Q-Y;B+=String.fromCharCode.apply(null,A.subarray(Y,Y+=J))}return B}function LO0(A){switch(A.essence){case"application/ecmascript":case"application/javascript":case"application/x-ecmascript":case"application/x-javascript":case"text/ecmascript":case"text/javascript":case"text/javascript1.0":case"text/javascript1.1":case"text/javascript1.2":case"text/javascript1.3":case"text/javascript1.4":case"text/javascript1.5":case"text/jscript":case"text/livescript":case"text/x-ecmascript":case"text/x-javascript":return"text/javascript";case"application/json":case"text/json":return"application/json";case"image/svg+xml":return"image/svg+xml";case"text/xml":case"application/xml":return"application/xml"}if(A.subtype.endsWith("+json"))return"application/json";if(A.subtype.endsWith("+xml"))return"application/xml";return""}O2Q.exports={dataURLProcessor:EO0,URLSerializer:z2Q,collectASequenceOfCodePoints:VS,collectASequenceOfCodePointsFast:sK,stringPercentDecode:R2Q,parseMIMEType:kr,collectAnHTTPQuotedString:w2Q,serializeAMimeType:IO0,removeChars:_r,removeHTTPWhitespace:ES,minimizeSupportedMimeType:LO0,HTTP_TOKEN_CODEPOINTS:Hq,isomorphicDecode:j2Q}});var HJ=R((csY,T2Q)=>{var{types:fY,inspect:qO0}=u("node:util"),{markAsUncloneable:MO0}=u("node:worker_threads"),P2Q=Function.call.bind(Function.prototype[Symbol.hasInstance]),JA={converters:{},util:{},errors:{},is:{}};JA.errors.exception=function(A){return TypeError(`${A.header}: ${A.message}`)};JA.errors.conversionFailed=function(A){let Q=A.types.length===1?"":" one of",B=`${A.argument} could not be converted to${Q}: ${A.types.join(", ")}.`;return JA.errors.exception({header:A.prefix,message:B})};JA.errors.invalidArgument=function(A){return JA.errors.exception({header:A.prefix,message:`"${A.value}" is an invalid ${A.type}.`})};JA.brandCheck=function(A,Q){if(!P2Q(Q,A)){let B=TypeError("Illegal invocation");throw B.code="ERR_INVALID_THIS",B}};JA.brandCheckMultiple=function(A){let Q=A.map((B)=>JA.util.MakeTypeAssertion(B));return(B)=>{if(Q.every((Y)=>!Y(B))){let Y=TypeError("Illegal invocation");throw Y.code="ERR_INVALID_THIS",Y}}};JA.argumentLengthCheck=function({length:A},Q,B){if(AP2Q(A,Q)};JA.util.Type=function(A){switch(typeof A){case"undefined":return 1;case"boolean":return 2;case"string":return 3;case"symbol":return 4;case"number":return 5;case"bigint":return 6;case"function":case"object":{if(A===null)return 7;return 8}}};JA.util.Types={UNDEFINED:1,BOOLEAN:2,STRING:3,SYMBOL:4,NUMBER:5,BIGINT:6,NULL:7,OBJECT:8};JA.util.TypeValueToString=function(A){switch(JA.util.Type(A)){case 1:return"Undefined";case 2:return"Boolean";case 3:return"String";case 4:return"Symbol";case 5:return"Number";case 6:return"BigInt";case 7:return"Null";case 8:return"Object"}};JA.util.markAsUncloneable=MO0||(()=>{});JA.util.ConvertToInt=function(A,Q,B,Y){let J,C;if(Q===64)if(J=Math.pow(2,53)-1,B==="unsigned")C=0;else C=Math.pow(-2,53)+1;else if(B==="unsigned")C=0,J=Math.pow(2,Q)-1;else C=Math.pow(-2,Q)-1,J=Math.pow(2,Q-1)-1;let X=Number(A);if(X===0)X=0;if(JA.util.HasFlag(Y,JA.attributes.EnforceRange)){if(Number.isNaN(X)||X===Number.POSITIVE_INFINITY||X===Number.NEGATIVE_INFINITY)throw JA.errors.exception({header:"Integer conversion",message:`Could not convert ${JA.util.Stringify(A)} to an integer.`});if(X=JA.util.IntegerPart(X),XJ)throw JA.errors.exception({header:"Integer conversion",message:`Value must be between ${C}-${J}, got ${X}.`});return X}if(!Number.isNaN(X)&&JA.util.HasFlag(Y,JA.attributes.Clamp)){if(X=Math.min(Math.max(X,C),J),Math.floor(X)%2===0)X=Math.floor(X);else X=Math.ceil(X);return X}if(Number.isNaN(X)||X===0&&Object.is(0,X)||X===Number.POSITIVE_INFINITY||X===Number.NEGATIVE_INFINITY)return 0;if(X=JA.util.IntegerPart(X),X=X%Math.pow(2,Q),B==="signed"&&X>=Math.pow(2,Q)-1)return X-Math.pow(2,Q);return X};JA.util.IntegerPart=function(A){let Q=Math.floor(Math.abs(A));if(A<0)return-1*Q;return Q};JA.util.Stringify=function(A){switch(JA.util.Type(A)){case 4:return`Symbol(${A.description})`;case 8:return qO0(A);case 3:return`"${A}"`;case 6:return`${A}n`;default:return`${A}`}};JA.util.IsResizableArrayBuffer=function(A){if(fY.isArrayBuffer(A))return A.resizable;if(fY.isSharedArrayBuffer(A))return A.growable;throw JA.errors.exception({header:"IsResizableArrayBuffer",message:`"${JA.util.Stringify(A)}" is not an array buffer.`})};JA.util.HasFlag=function(A,Q){return typeof A==="number"&&(A&Q)===Q};JA.sequenceConverter=function(A){return(Q,B,Y,J)=>{if(JA.util.Type(Q)!==8)throw JA.errors.exception({header:B,message:`${Y} (${JA.util.Stringify(Q)}) is not iterable.`});let C=typeof J==="function"?J():Q?.[Symbol.iterator]?.(),X=[],G=0;if(C===void 0||typeof C.next!=="function")throw JA.errors.exception({header:B,message:`${Y} is not iterable.`});while(!0){let{done:W,value:F}=C.next();if(W)break;X.push(A(F,B,`${Y}[${G++}]`))}return X}};JA.recordConverter=function(A,Q){return(B,Y,J)=>{if(JA.util.Type(B)!==8)throw JA.errors.exception({header:Y,message:`${J} ("${JA.util.TypeValueToString(B)}") is not an Object.`});let C={};if(!fY.isProxy(B)){let G=[...Object.getOwnPropertyNames(B),...Object.getOwnPropertySymbols(B)];for(let W of G){let F=JA.util.Stringify(W),Z=A(W,Y,`Key ${F} in ${J}`),U=Q(B[W],Y,`${J}[${F}]`);C[Z]=U}return C}let X=Reflect.ownKeys(B);for(let G of X)if(Reflect.getOwnPropertyDescriptor(B,G)?.enumerable){let F=A(G,Y,J),Z=Q(B[G],Y,J);C[F]=Z}return C}};JA.interfaceConverter=function(A,Q){return(B,Y,J)=>{if(!A(B))throw JA.errors.exception({header:Y,message:`Expected ${J} ("${JA.util.Stringify(B)}") to be an instance of ${Q}.`});return B}};JA.dictionaryConverter=function(A){return(Q,B,Y)=>{let J={};if(Q!=null&&JA.util.Type(Q)!==8)throw JA.errors.exception({header:B,message:`Expected ${Q} to be one of: Null, Undefined, Object.`});for(let C of A){let{key:X,defaultValue:G,required:W,converter:F}=C;if(W===!0){if(Q==null||!Object.hasOwn(Q,X))throw JA.errors.exception({header:B,message:`Missing required key "${X}".`})}let Z=Q?.[X],U=G!==void 0;if(U&&Z===void 0)Z=G();if(W||U||Z!==void 0){if(Z=F(Z,B,`${Y}.${X}`),C.allowedValues&&!C.allowedValues.includes(Z))throw JA.errors.exception({header:B,message:`${Z} is not an accepted type. Expected one of ${C.allowedValues.join(", ")}.`});J[X]=Z}}return J}};JA.nullableConverter=function(A){return(Q,B,Y)=>{if(Q===null)return Q;return A(Q,B,Y)}};JA.is.USVString=function(A){return typeof A==="string"&&A.isWellFormed()};JA.is.ReadableStream=JA.util.MakeTypeAssertion(ReadableStream);JA.is.Blob=JA.util.MakeTypeAssertion(Blob);JA.is.URLSearchParams=JA.util.MakeTypeAssertion(URLSearchParams);JA.is.File=JA.util.MakeTypeAssertion(File);JA.is.URL=JA.util.MakeTypeAssertion(URL);JA.is.AbortSignal=JA.util.MakeTypeAssertion(AbortSignal);JA.is.MessagePort=JA.util.MakeTypeAssertion(MessagePort);JA.is.BufferSource=function(A){return fY.isArrayBuffer(A)||ArrayBuffer.isView(A)&&fY.isArrayBuffer(A.buffer)};JA.converters.DOMString=function(A,Q,B,Y){if(A===null&&JA.util.HasFlag(Y,JA.attributes.LegacyNullToEmptyString))return"";if(typeof A==="symbol")throw JA.errors.exception({header:Q,message:`${B} is a symbol, which cannot be converted to a DOMString.`});return String(A)};JA.converters.ByteString=function(A,Q,B){if(typeof A==="symbol")throw JA.errors.exception({header:Q,message:`${B} is a symbol, which cannot be converted to a ByteString.`});let Y=String(A);for(let J=0;J255)throw TypeError(`Cannot convert argument to a ByteString because the character at index ${J} has a value of ${Y.charCodeAt(J)} which is greater than 255.`);return Y};JA.converters.USVString=function(A){if(typeof A==="string")return A.toWellFormed();return`${A}`.toWellFormed()};JA.converters.boolean=function(A){return Boolean(A)};JA.converters.any=function(A){return A};JA.converters["long long"]=function(A,Q,B){return JA.util.ConvertToInt(A,64,"signed",0,Q,B)};JA.converters["unsigned long long"]=function(A,Q,B){return JA.util.ConvertToInt(A,64,"unsigned",0,Q,B)};JA.converters["unsigned long"]=function(A,Q,B){return JA.util.ConvertToInt(A,32,"unsigned",0,Q,B)};JA.converters["unsigned short"]=function(A,Q,B,Y){return JA.util.ConvertToInt(A,16,"unsigned",Y,Q,B)};JA.converters.ArrayBuffer=function(A,Q,B,Y){if(JA.util.Type(A)!==8||!fY.isArrayBuffer(A))throw JA.errors.conversionFailed({prefix:Q,argument:`${B} ("${JA.util.Stringify(A)}")`,types:["ArrayBuffer"]});if(!JA.util.HasFlag(Y,JA.attributes.AllowResizable)&&JA.util.IsResizableArrayBuffer(A))throw JA.errors.exception({header:Q,message:`${B} cannot be a resizable ArrayBuffer.`});return A};JA.converters.SharedArrayBuffer=function(A,Q,B,Y){if(JA.util.Type(A)!==8||!fY.isSharedArrayBuffer(A))throw JA.errors.conversionFailed({prefix:Q,argument:`${B} ("${JA.util.Stringify(A)}")`,types:["SharedArrayBuffer"]});if(!JA.util.HasFlag(Y,JA.attributes.AllowResizable)&&JA.util.IsResizableArrayBuffer(A))throw JA.errors.exception({header:Q,message:`${B} cannot be a resizable SharedArrayBuffer.`});return A};JA.converters.TypedArray=function(A,Q,B,Y,J){if(JA.util.Type(A)!==8||!fY.isTypedArray(A)||A.constructor.name!==Q.name)throw JA.errors.conversionFailed({prefix:B,argument:`${Y} ("${JA.util.Stringify(A)}")`,types:[Q.name]});if(!JA.util.HasFlag(J,JA.attributes.AllowShared)&&fY.isSharedArrayBuffer(A.buffer))throw JA.errors.exception({header:B,message:`${Y} cannot be a view on a shared array buffer.`});if(!JA.util.HasFlag(J,JA.attributes.AllowResizable)&&JA.util.IsResizableArrayBuffer(A.buffer))throw JA.errors.exception({header:B,message:`${Y} cannot be a view on a resizable array buffer.`});return A};JA.converters.DataView=function(A,Q,B,Y){if(JA.util.Type(A)!==8||!fY.isDataView(A))throw JA.errors.conversionFailed({prefix:Q,argument:`${B} ("${JA.util.Stringify(A)}")`,types:["DataView"]});if(!JA.util.HasFlag(Y,JA.attributes.AllowShared)&&fY.isSharedArrayBuffer(A.buffer))throw JA.errors.exception({header:Q,message:`${B} cannot be a view on a shared array buffer.`});if(!JA.util.HasFlag(Y,JA.attributes.AllowResizable)&&JA.util.IsResizableArrayBuffer(A.buffer))throw JA.errors.exception({header:Q,message:`${B} cannot be a view on a resizable array buffer.`});return A};JA.converters.ArrayBufferView=function(A,Q,B,Y){if(JA.util.Type(A)!==8||!fY.isArrayBufferView(A))throw JA.errors.conversionFailed({prefix:Q,argument:`${B} ("${JA.util.Stringify(A)}")`,types:["ArrayBufferView"]});if(!JA.util.HasFlag(Y,JA.attributes.AllowShared)&&fY.isSharedArrayBuffer(A.buffer))throw JA.errors.exception({header:Q,message:`${B} cannot be a view on a shared array buffer.`});if(!JA.util.HasFlag(Y,JA.attributes.AllowResizable)&&JA.util.IsResizableArrayBuffer(A.buffer))throw JA.errors.exception({header:Q,message:`${B} cannot be a view on a resizable array buffer.`});return A};JA.converters.BufferSource=function(A,Q,B,Y){if(fY.isArrayBuffer(A))return JA.converters.ArrayBuffer(A,Q,B,Y);if(fY.isArrayBufferView(A))return Y&=~JA.attributes.AllowShared,JA.converters.ArrayBufferView(A,Q,B,Y);if(fY.isSharedArrayBuffer(A))throw JA.errors.exception({header:Q,message:`${B} cannot be a SharedArrayBuffer.`});throw JA.errors.conversionFailed({prefix:Q,argument:`${B} ("${JA.util.Stringify(A)}")`,types:["ArrayBuffer","ArrayBufferView"]})};JA.converters.AllowSharedBufferSource=function(A,Q,B,Y){if(fY.isArrayBuffer(A))return JA.converters.ArrayBuffer(A,Q,B,Y);if(fY.isSharedArrayBuffer(A))return JA.converters.SharedArrayBuffer(A,Q,B,Y);if(fY.isArrayBufferView(A))return Y|=JA.attributes.AllowShared,JA.converters.ArrayBufferView(A,Q,B,Y);throw JA.errors.conversionFailed({prefix:Q,argument:`${B} ("${JA.util.Stringify(A)}")`,types:["ArrayBuffer","SharedArrayBuffer","ArrayBufferView"]})};JA.converters["sequence"]=JA.sequenceConverter(JA.converters.ByteString);JA.converters["sequence>"]=JA.sequenceConverter(JA.converters["sequence"]);JA.converters["record"]=JA.recordConverter(JA.converters.ByteString,JA.converters.ByteString);JA.converters.Blob=JA.interfaceConverter(JA.is.Blob,"Blob");JA.converters.AbortSignal=JA.interfaceConverter(JA.is.AbortSignal,"AbortSignal");JA.converters.EventHandlerNonNull=function(A){if(JA.util.Type(A)!==8)return null;if(typeof A==="function")return A;return()=>{}};JA.attributes={Clamp:1,EnforceRange:2,AllowShared:4,AllowResizable:8,LegacyNullToEmptyString:16};T2Q.exports={webidl:JA}});var z9=R((lsY,i2Q)=>{var{Transform:zO0}=u("node:stream"),S2Q=u("node:zlib"),{redirectStatusSet:RO0,referrerPolicyTokens:wO0,badPortsSet:jO0}=Iq(),{getGlobalOrigin:k2Q}=Sr(),{collectASequenceOfCodePoints:u$,collectAnHTTPQuotedString:OO0,removeChars:PO0,parseMIMEType:TO0}=l8(),{performance:SO0}=u("node:perf_hooks"),{ReadableStreamFrom:kO0,isValidHTTPToken:_2Q,normalizedMethodRecordsBase:_O0}=lQ(),l$=u("node:assert"),{isUint8Array:vO0}=u("node:util/types"),{webidl:eW}=HJ();function v2Q(A){let Q=A.urlList,B=Q.length;return B===0?null:Q[B-1].toString()}function yO0(A,Q){if(!RO0.has(A.status))return null;let B=A.headersList.get("location",!0);if(B!==null&&g2Q(B)){if(!y2Q(B))B=gO0(B);B=new URL(B,v2Q(A))}if(B&&!B.hash)B.hash=Q;return B}function y2Q(A){for(let Q=0;Q126||B<32)return!1}return!0}function gO0(A){return Buffer.from(A,"binary").toString("utf8")}function c$(A){return A.urlList[A.urlList.length-1]}function hO0(A){let Q=c$(A);if(u2Q(Q)&&jO0.has(Q.port))return"blocked";return"allowed"}function xO0(A){return A instanceof Error||(A?.constructor?.name==="Error"||A?.constructor?.name==="DOMException")}function fO0(A){for(let Q=0;Q=32&&B<=126||B>=128&&B<=255))return!1}return!0}var bO0=_2Q;function g2Q(A){return(A[0]==="\t"||A[0]===" "||A[A.length-1]==="\t"||A[A.length-1]===" "||A.includes(` +`)||A.includes("\r")||A.includes("\x00"))===!1}function mO0(A){let Q=(A.headersList.get("referrer-policy",!0)??"").split(","),B="";if(Q.length)for(let Y=Q.length;Y!==0;Y--){let J=Q[Y-1].trim();if(wO0.has(J)){B=J;break}}return B}function uO0(A,Q){let B=mO0(Q);if(B!=="")A.referrerPolicy=B}function dO0(){return"allowed"}function cO0(){return"success"}function lO0(){return"success"}function pO0(A){let Q=null;Q=A.mode,A.headersList.set("sec-fetch-mode",Q,!0)}function iO0(A){let Q=A.origin;if(Q==="client"||Q===void 0)return;if(A.responseTainting==="cors"||A.mode==="websocket")A.headersList.append("origin",Q,!0);else if(A.method!=="GET"&&A.method!=="HEAD"){switch(A.referrerPolicy){case"no-referrer":Q=null;break;case"no-referrer-when-downgrade":case"strict-origin":case"strict-origin-when-cross-origin":if(A.origin&&yr(A.origin)&&!yr(c$(A)))Q=null;break;case"same-origin":if(!Dq(A,c$(A)))Q=null;break;default:}A.headersList.append("origin",Q,!0)}}function rK(A,Q){return A}function nO0(A,Q,B){if(!A?.startTime||A.startTime4096)Y=J;switch(Q){case"no-referrer":return"no-referrer";case"origin":if(J!=null)return J;return vr(B,!0);case"unsafe-url":return Y;case"strict-origin":{let C=c$(A);if(d$(Y)&&!d$(C))return"no-referrer";return J}case"strict-origin-when-cross-origin":{let C=c$(A);if(Dq(Y,C))return Y;if(d$(Y)&&!d$(C))return"no-referrer";return J}case"same-origin":if(Dq(A,Y))return Y;return"no-referrer";case"origin-when-cross-origin":if(Dq(A,Y))return Y;return J;case"no-referrer-when-downgrade":{let C=c$(A);if(d$(Y)&&!d$(C))return"no-referrer";return Y}}}function vr(A,Q=!1){if(l$(eW.is.URL(A)),A=new URL(A),m2Q(A))return"no-referrer";if(A.username="",A.password="",A.hash="",Q===!0)A.pathname="",A.search="";return A}var tO0=RegExp.prototype.test.bind(/^127\.(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)\.){2}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)$/),eO0=RegExp.prototype.test.bind(/^(?:(?:0{1,4}:){7}|(?:0{1,4}:){1,6}:|::)0{0,3}1$/);function x2Q(A){if(A.includes(":")){if(A[0]==="["&&A[A.length-1]==="]")A=A.slice(1,-1);return eO0(A)}return tO0(A)}function AP0(A){if(A==null||A==="null")return!1;if(A=new URL(A),A.protocol==="https:"||A.protocol==="wss:")return!0;if(x2Q(A.hostname))return!0;if(A.hostname==="localhost"||A.hostname==="localhost.")return!0;if(A.hostname.endsWith(".localhost")||A.hostname.endsWith(".localhost."))return!0;if(A.protocol==="file:")return!0;return!1}function d$(A){if(!eW.is.URL(A))return!1;if(A.href==="about:blank"||A.href==="about:srcdoc")return!0;if(A.protocol==="data:")return!0;if(A.protocol==="blob:")return!0;return AP0(A.origin)}function QP0(A){}function Dq(A,Q){if(A.origin===Q.origin&&A.origin==="null")return!0;if(A.protocol===Q.protocol&&A.hostname===Q.hostname&&A.port===Q.port)return!0;return!1}function BP0(A){return A.controller.state==="aborted"}function YP0(A){return A.controller.state==="aborted"||A.controller.state==="terminated"}function JP0(A){return _O0[A.toLowerCase()]??A}function CP0(A){let Q=JSON.stringify(A);if(Q===void 0)throw TypeError("Value is not JSON serializable");return l$(typeof Q==="string"),Q}var XP0=Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]()));function f2Q(A,Q,B=0,Y=1){class J{#A;#Q;#B;constructor(C,X){this.#A=C,this.#Q=X,this.#B=0}next(){if(typeof this!=="object"||this===null||!(#A in this))throw TypeError(`'next' called on an object that does not implement interface ${A} Iterator.`);let C=this.#B,X=Q(this.#A),G=X.length;if(C>=G)return{value:void 0,done:!0};let{[B]:W,[Y]:F}=X[C];this.#B=C+1;let Z;switch(this.#Q){case"key":Z=W;break;case"value":Z=F;break;case"key+value":Z=[W,F];break}return{value:Z,done:!1}}}return delete J.prototype.constructor,Object.setPrototypeOf(J.prototype,XP0),Object.defineProperties(J.prototype,{[Symbol.toStringTag]:{writable:!1,enumerable:!1,configurable:!0,value:`${A} Iterator`},next:{writable:!0,enumerable:!0,configurable:!0}}),function(C,X){return new J(C,X)}}function GP0(A,Q,B,Y=0,J=1){let C=f2Q(A,B,Y,J),X={keys:{writable:!0,enumerable:!0,configurable:!0,value:function(){return eW.brandCheck(this,Q),C(this,"key")}},values:{writable:!0,enumerable:!0,configurable:!0,value:function(){return eW.brandCheck(this,Q),C(this,"value")}},entries:{writable:!0,enumerable:!0,configurable:!0,value:function(){return eW.brandCheck(this,Q),C(this,"key+value")}},forEach:{writable:!0,enumerable:!0,configurable:!0,value:function(W,F=globalThis){if(eW.brandCheck(this,Q),eW.argumentLengthCheck(arguments,1,`${A}.forEach`),typeof W!=="function")throw TypeError(`Failed to execute 'forEach' on '${A}': parameter 1 is not of type 'Function'.`);for(let{0:Z,1:U}of C(this,"key+value"))W.call(F,U,Z,this)}}};return Object.defineProperties(Q.prototype,{...X,[Symbol.iterator]:{writable:!0,enumerable:!1,configurable:!0,value:X.entries.value}})}function WP0(A,Q,B){let Y=Q,J=B;try{let C=A.stream.getReader();b2Q(C,Y,J)}catch(C){J(C)}}function FP0(A){try{A.close(),A.byobRequest?.respond(0)}catch(Q){if(!Q.message.includes("Controller is already closed")&&!Q.message.includes("ReadableStream is already closed"))throw Q}}var ZP0=/[^\x00-\xFF]/;function IS(A){return l$(!ZP0.test(A)),A}async function b2Q(A,Q,B){try{let Y=[],J=0;do{let{done:C,value:X}=await A.read();if(C){Q(Buffer.concat(Y,J));return}if(!vO0(X)){B(TypeError("Received non-Uint8Array chunk"));return}Y.push(X),J+=X.length}while(!0)}catch(Y){B(Y)}}function m2Q(A){l$("protocol"in A);let Q=A.protocol;return Q==="about:"||Q==="blob:"||Q==="data:"}function yr(A){return typeof A==="string"&&A[5]===":"&&A[0]==="h"&&A[1]==="t"&&A[2]==="t"&&A[3]==="p"&&A[4]==="s"||A.protocol==="https:"}function u2Q(A){l$("protocol"in A);let Q=A.protocol;return Q==="http:"||Q==="https:"}function $P0(A,Q){let B=A;if(!B.startsWith("bytes"))return"failure";let Y={position:5};if(Q)u$((W)=>W==="\t"||W===" ",B,Y);if(B.charCodeAt(Y.position)!==61)return"failure";if(Y.position++,Q)u$((W)=>W==="\t"||W===" ",B,Y);let J=u$((W)=>{let F=W.charCodeAt(0);return F>=48&&F<=57},B,Y),C=J.length?Number(J):null;if(Q)u$((W)=>W==="\t"||W===" ",B,Y);if(B.charCodeAt(Y.position)!==45)return"failure";if(Y.position++,Q)u$((W)=>W==="\t"||W===" ",B,Y);let X=u$((W)=>{let F=W.charCodeAt(0);return F>=48&&F<=57},B,Y),G=X.length?Number(X):null;if(Y.positionG)return"failure";return{rangeStartValue:C,rangeEndValue:G}}function UP0(A,Q,B){let Y="bytes ";return Y+=IS(`${A}`),Y+="-",Y+=IS(`${Q}`),Y+="/",Y+=IS(`${B}`),Y}class d2Q extends zO0{#A;constructor(A){super();this.#A=A}_transform(A,Q,B){if(!this._inflateStream){if(A.length===0){B();return}this._inflateStream=(A[0]&15)===8?S2Q.createInflate(this.#A):S2Q.createInflateRaw(this.#A),this._inflateStream.on("data",this.push.bind(this)),this._inflateStream.on("end",()=>this.push(null)),this._inflateStream.on("error",(Y)=>this.destroy(Y))}this._inflateStream.write(A,Q,B)}_final(A){if(this._inflateStream)this._inflateStream.end(),this._inflateStream=null;A()}}function EP0(A){return new d2Q(A)}function KP0(A){let Q=null,B=null,Y=null,J=c2Q("content-type",A);if(J===null)return"failure";for(let C of J){let X=TO0(C);if(X==="failure"||X.essence==="*/*")continue;if(Y=X,Y.essence!==B){if(Q=null,Y.parameters.has("charset"))Q=Y.parameters.get("charset");B=Y.essence}else if(!Y.parameters.has("charset")&&Q!==null)Y.parameters.set("charset",Q)}if(Y==null)return"failure";return Y}function VP0(A){let Q=A,B={position:0},Y=[],J="";while(B.positionC!=='"'&&C!==",",Q,B),B.positionC===9||C===32),Y.push(J),J=""}return Y}function c2Q(A,Q){let B=Q.get(A,!0);if(B===null)return null;return VP0(B)}var IP0=new TextDecoder;function HP0(A){if(A.length===0)return"";if(A[0]===239&&A[1]===187&&A[2]===191)A=A.subarray(3);return IP0.decode(A)}class l2Q{get baseUrl(){return k2Q()}get origin(){return this.baseUrl?.origin}policyContainer=h2Q()}class p2Q{settingsObject=new l2Q}var DP0=new p2Q;i2Q.exports={isAborted:BP0,isCancelled:YP0,isValidEncodedURL:y2Q,ReadableStreamFrom:kO0,tryUpgradeRequestToAPotentiallyTrustworthyURL:QP0,clampAndCoarsenConnectionTimingInfo:nO0,coarsenedSharedCurrentTime:sO0,determineRequestsReferrer:oO0,makePolicyContainer:h2Q,clonePolicyContainer:aO0,appendFetchMetadata:pO0,appendRequestOriginHeader:iO0,TAOCheck:lO0,corsCheck:cO0,crossOriginResourcePolicyCheck:dO0,createOpaqueTimingInfo:rO0,setRequestReferrerPolicyOnRedirect:uO0,isValidHTTPToken:_2Q,requestBadPort:hO0,requestCurrentURL:c$,responseURL:v2Q,responseLocationURL:yO0,isURLPotentiallyTrustworthy:d$,isValidReasonPhrase:fO0,sameOrigin:Dq,normalizeMethod:JP0,serializeJavascriptValueToJSONString:CP0,iteratorMixin:GP0,createIterator:f2Q,isValidHeaderName:bO0,isValidHeaderValue:g2Q,isErrorLike:xO0,fullyReadBody:WP0,readableStreamClose:FP0,isomorphicEncode:IS,urlIsLocal:m2Q,urlHasHttpsScheme:yr,urlIsHttpHttpsScheme:u2Q,readAllBytes:b2Q,simpleRangeHeaderValue:$P0,buildContentRange:UP0,createInflate:EP0,extractMimeType:KP0,getDecodeSplit:c2Q,utf8DecodeBytes:HP0,environmentSettingsObject:DP0,isOriginIPPotentiallyTrustworthy:x2Q}});var HS=R((psY,s2Q)=>{var{iteratorMixin:NP0}=z9(),{kEnumerableProperty:aK}=lQ(),{webidl:hB}=HJ(),n2Q=u("node:util");class Y8{#A=[];constructor(A=void 0){if(hB.util.markAsUncloneable(this),A!==void 0)throw hB.errors.conversionFailed({prefix:"FormData constructor",argument:"Argument 1",types:["undefined"]})}append(A,Q,B=void 0){hB.brandCheck(this,Y8);let Y="FormData.append";if(hB.argumentLengthCheck(arguments,2,Y),A=hB.converters.USVString(A),arguments.length===3||hB.is.Blob(Q)){if(Q=hB.converters.Blob(Q,Y,"value"),B!==void 0)B=hB.converters.USVString(B)}else Q=hB.converters.USVString(Q);let J=gr(A,Q,B);this.#A.push(J)}delete(A){hB.brandCheck(this,Y8);let Q="FormData.delete";hB.argumentLengthCheck(arguments,1,Q),A=hB.converters.USVString(A),this.#A=this.#A.filter((B)=>B.name!==A)}get(A){hB.brandCheck(this,Y8);let Q="FormData.get";hB.argumentLengthCheck(arguments,1,Q),A=hB.converters.USVString(A);let B=this.#A.findIndex((Y)=>Y.name===A);if(B===-1)return null;return this.#A[B].value}getAll(A){hB.brandCheck(this,Y8);let Q="FormData.getAll";return hB.argumentLengthCheck(arguments,1,Q),A=hB.converters.USVString(A),this.#A.filter((B)=>B.name===A).map((B)=>B.value)}has(A){hB.brandCheck(this,Y8);let Q="FormData.has";return hB.argumentLengthCheck(arguments,1,Q),A=hB.converters.USVString(A),this.#A.findIndex((B)=>B.name===A)!==-1}set(A,Q,B=void 0){hB.brandCheck(this,Y8);let Y="FormData.set";if(hB.argumentLengthCheck(arguments,2,Y),A=hB.converters.USVString(A),arguments.length===3||hB.is.Blob(Q)){if(Q=hB.converters.Blob(Q,Y,"value"),B!==void 0)B=hB.converters.USVString(B)}else Q=hB.converters.USVString(Q);let J=gr(A,Q,B),C=this.#A.findIndex((X)=>X.name===A);if(C!==-1)this.#A=[...this.#A.slice(0,C),J,...this.#A.slice(C+1).filter((X)=>X.name!==A)];else this.#A.push(J)}[n2Q.inspect.custom](A,Q){let B=this.#A.reduce((J,C)=>{if(J[C.name])if(Array.isArray(J[C.name]))J[C.name].push(C.value);else J[C.name]=[J[C.name],C.value];else J[C.name]=C.value;return J},{__proto__:null});Q.depth??=A,Q.colors??=!0;let Y=n2Q.formatWithOptions(Q,B);return`FormData ${Y.slice(Y.indexOf("]")+2)}`}static getFormDataState(A){return A.#A}static setFormDataState(A,Q){A.#A=Q}}var{getFormDataState:LP0,setFormDataState:qP0}=Y8;Reflect.deleteProperty(Y8,"getFormDataState");Reflect.deleteProperty(Y8,"setFormDataState");NP0("FormData",Y8,LP0,"name","value");Object.defineProperties(Y8.prototype,{append:aK,delete:aK,get:aK,getAll:aK,has:aK,set:aK,[Symbol.toStringTag]:{value:"FormData",configurable:!0}});function gr(A,Q,B){if(typeof Q==="string");else{if(!hB.is.File(Q))Q=new File([Q],"blob",{type:Q.type});if(B!==void 0){let Y={type:Q.type,lastModified:Q.lastModified};Q=new File([Q],B,Y)}}return{name:A,value:Q}}hB.is.FormData=hB.util.MakeTypeAssertion(Y8);s2Q.exports={FormData:Y8,makeEntry:gr,setFormDataState:qP0}});var t2Q=R((isY,o2Q)=>{var{bufferToLowerCasedHeaderName:MP0}=lQ(),{utf8DecodeBytes:zP0}=z9(),{HTTP_TOKEN_CODEPOINTS:RP0,isomorphicDecode:r2Q}=l8(),{makeEntry:wP0}=HS(),{webidl:hr}=HJ(),DS=u("node:assert"),jP0=Buffer.from('form-data; name="'),OP0=Buffer.from("filename"),PP0=Buffer.from("--"),TP0=Buffer.from(`--\r `);function SP0(A){for(let Q=0;Q70)return!1;for(let B=0;B=48&&Y<=57||Y>=65&&Y<=90||Y>=97&&Y<=122||Y===39||Y===45||Y===95))return!1}return!0}function _P0(A,Q){DS(Q!=="failure"&&Q.essence==="multipart/form-data");let B=Q.parameters.get("boundary");if(B===void 0)throw JC("missing boundary in content-type header");let Y=Buffer.from(`--${B}`,"utf8"),J=[],C={position:0};while(A[C.position]===13&&A[C.position+1]===10)C.position+=2;let X=A.length;while(A[X-1]===10&&A[X-2]===13)X-=2;if(X!==A.length)A=A.subarray(0,X);while(!0){if(A.subarray(C.position,C.position+Y.length).equals(Y))C.position+=Y.length;else throw JC("expected a value starting with -- and the boundary");if(C.position===A.length-2&&NS(A,PP0,C)||C.position===A.length-4&&NS(A,TP0,C))return J;if(A[C.position]!==13||A[C.position+1]!==10)throw JC("expected CRLF");C.position+=2;let G=vP0(A,C),{name:W,filename:F,contentType:Z,encoding:U}=G;C.position+=2;let $;{let K=A.indexOf(Y.subarray(2),C.position);if(K===-1)throw JC("expected boundary after body");if($=A.subarray(C.position,K-4),C.position+=$.length,U==="base64")$=Buffer.from($.toString(),"base64")}if(A[C.position]!==13||A[C.position+1]!==10)throw JC("expected CRLF");else C.position+=2;let E;if(F!==null){if(Z??="text/plain",!SP0(Z))Z="";E=new File([$],F,{type:Z})}else E=zP0(Buffer.from($));DS(hr.is.USVString(W)),DS(typeof E==="string"&&hr.is.USVString(E)||hr.is.File(E)),J.push(wP0(W,E,F))}}function vP0(A,Q){let B=null,Y=null,J=null,C=null;while(!0){if(A[Q.position]===13&&A[Q.position+1]===10){if(B===null)throw JC("header name is null");return{name:B,filename:Y,contentType:J,encoding:C}}let X=vG((G)=>G!==10&&G!==13&&G!==58,A,Q);if(X=xr(X,!0,!0,(G)=>G===9||G===32),!RP0.test(X.toString()))throw JC("header name does not match the field-name token production");if(A[Q.position]!==58)throw JC("expected :");switch(Q.position++,vG((G)=>G===32||G===9,A,Q),MP0(X)){case"content-disposition":{if(B=Y=null,!NS(A,jP0,Q))throw JC('expected form-data; name=" for content-disposition header');if(Q.position+=17,B=a2Q(A,Q),A[Q.position]===59&&A[Q.position+1]===32){let G={position:Q.position+2};if(NS(A,OP0,G))if(A[G.position+8]===42){G.position+=10,vG((F)=>F===32||F===9,A,G);let W=vG((F)=>F!==32&&F!==13&&F!==10,A,G);if(W[0]!==117&&W[0]!==85||W[1]!==116&&W[1]!==84||W[2]!==102&&W[2]!==70||W[3]!==45||W[4]!==56)throw JC("unknown encoding, expected utf-8''");Y=decodeURIComponent(new TextDecoder().decode(W.subarray(7))),Q.position=G.position}else Q.position+=11,vG((W)=>W===32||W===9,A,Q),Q.position++,Y=a2Q(A,Q)}break}case"content-type":{let G=vG((W)=>W!==10&&W!==13,A,Q);G=xr(G,!1,!0,(W)=>W===9||W===32),J=r2Q(G);break}case"content-transfer-encoding":{let G=vG((W)=>W!==10&&W!==13,A,Q);G=xr(G,!1,!0,(W)=>W===9||W===32),C=r2Q(G);break}default:vG((G)=>G!==10&&G!==13,A,Q)}if(A[Q.position]!==13&&A[Q.position+1]!==10)throw JC("expected CRLF");else Q.position+=2}}function a2Q(A,Q){DS(A[Q.position-1]===34);let B=vG((Y)=>Y!==10&&Y!==13&&Y!==34,A,Q);if(A[Q.position]!==34)throw JC('expected "');else Q.position++;return B=new TextDecoder().decode(B).replace(/%0A/ig,` `).replace(/%0D/ig,"\r").replace(/%22/g,'"'),B}function vG(A,Q,B){let Y=B.position;while(Y0&&Y(A[C]))C--;return J===0&&C===A.length-1?A:A.subarray(J,C+1)}function NS(A,Q,B){if(A.length{function yP0(){let A,Q;return{promise:new Promise((Y,J)=>{A=Y,Q=J}),resolve:A,reject:Q}}e2Q.exports={createDeferredPromise:yP0}});var tK=R((ssY,X3Q)=>{var qS=lQ(),{ReadableStreamFrom:gP0,readableStreamClose:hP0,fullyReadBody:xP0,extractMimeType:fP0,utf8DecodeBytes:B3Q}=z9(),{FormData:A3Q,setFormDataState:bP0}=HS(),{webidl:RX}=HJ(),fr=u("node:assert"),{isErrored:Y3Q,isDisturbed:mP0}=u("node:stream"),{isArrayBuffer:uP0}=u("node:util/types"),{serializeAMimeType:dP0}=l8(),{multipartFormDataParser:cP0}=t2Q(),{createDeferredPromise:lP0}=Nq(),br;try{let A=u("node:crypto");br=(Q)=>A.randomInt(0,Q)}catch{br=(A)=>Math.floor(Math.random()*A)}var LS=new TextEncoder;function pP0(){}var iP0=new FinalizationRegistry((A)=>{let Q=A.deref();if(Q&&!Q.locked&&!mP0(Q)&&!Y3Q(Q))Q.cancel("Response object has been garbage collected").catch(pP0)});function J3Q(A,Q=!1){let B=null;if(RX.is.ReadableStream(A))B=A;else if(RX.is.Blob(A))B=A.stream();else B=new ReadableStream({pull(W){let F=typeof J==="string"?LS.encode(J):J;if(F.byteLength)W.enqueue(F);queueMicrotask(()=>hP0(W))},start(){},type:"bytes"});fr(RX.is.ReadableStream(B));let Y=null,J=null,C=null,X=null;if(typeof A==="string")J=A,X="text/plain;charset=UTF-8";else if(RX.is.URLSearchParams(A))J=A.toString(),X="application/x-www-form-urlencoded;charset=UTF-8";else if(RX.is.BufferSource(A))J=uP0(A)?new Uint8Array(A.slice()):new Uint8Array(A.buffer.slice(A.byteOffset,A.byteOffset+A.byteLength));else if(RX.is.FormData(A)){let W=`----formdata-undici-0${`${br(100000000000)}`.padStart(11,"0")}`,F=`--${W}\r Content-Disposition: form-data`;/*! formdata-polyfill. MIT License. Jimmy Wärting */let Z=(V)=>V.replace(/\n/g,"%0A").replace(/\r/g,"%0D").replace(/"/g,"%22"),U=(V)=>V.replace(/\r?\n|\r/g,`\r @@ -59,7 +59,7 @@ ${U(H)}\r Content-Type: ${H.type||"application/octet-stream"}\r \r `);if($.push(D,H,E),typeof H.size==="number")C+=D.byteLength+H.size+E.byteLength;else K=!0}let I=LS.encode(`--${W}--\r -`);if($.push(I),C+=I.byteLength,K)C=null;J=A,Y=async function*(){for(let V of $)if(V.stream)yield*V.stream();else yield V},X=`multipart/form-data; boundary=${W}`}else if(RX.is.Blob(A)){if(J=A,C=A.size,A.type)X=A.type}else if(typeof A[Symbol.asyncIterator]==="function"){if(Q)throw TypeError("keepalive");if(qS.isDisturbed(A)||A.locked)throw TypeError("Response body object should not be disturbed or locked");B=RX.is.ReadableStream(A)?A:gP0(A)}if(typeof J==="string"||qS.isBuffer(J))C=Buffer.byteLength(J);if(Y!=null){let W;B=new ReadableStream({async start(){W=Y(A)[Symbol.asyncIterator]()},async pull(F){let{value:Z,done:U}=await W.next();if(U)queueMicrotask(()=>{F.close(),F.byobRequest?.respond(0)});else if(!Y3Q(B)){let $=new Uint8Array(Z);if($.byteLength)F.enqueue($)}return F.desiredSize>0},async cancel(F){await W.return()},type:"bytes"})}return[{stream:B,source:J,length:C},X]}function nP0(A,Q=!1){if(RX.is.ReadableStream(A))fr(!qS.isDisturbed(A),"The body has already been consumed."),fr(!A.locked,"The stream is locked.");return J3Q(A,Q)}function sP0(A){let{0:Q,1:B}=A.stream.tee();return A.stream=Q,{stream:B,length:A.length,source:A.source}}function rP0(A,Q){return{blob(){return oK(this,(Y)=>{let J=Q3Q(Q(this));if(J===null)J="";else if(J)J=dP0(J);return new Blob([Y],{type:J})},A,Q)},arrayBuffer(){return oK(this,(Y)=>{return new Uint8Array(Y).buffer},A,Q)},text(){return oK(this,B3Q,A,Q)},json(){return oK(this,oP0,A,Q)},formData(){return oK(this,(Y)=>{let J=Q3Q(Q(this));if(J!==null)switch(J.essence){case"multipart/form-data":{let C=cP0(Y,J),X=new A3Q;return bP0(X,C),X}case"application/x-www-form-urlencoded":{let C=new URLSearchParams(Y.toString()),X=new A3Q;for(let[G,W]of C)X.append(G,W);return X}}throw TypeError('Content-Type was not one of "multipart/form-data" or "application/x-www-form-urlencoded".')},A,Q)},bytes(){return oK(this,(Y)=>{return new Uint8Array(Y)},A,Q)}}}function aP0(A,Q){Object.assign(A.prototype,rP0(A,Q))}function oK(A,Q,B,Y){try{RX.brandCheck(A,B)}catch(W){return Promise.reject(W)}let J=Y(A);if(C3Q(J))return Promise.reject(TypeError("Body is unusable: Body has already been read"));if(J.aborted)return Promise.reject(new DOMException("The operation was aborted.","AbortError"));let C=lP0(),X=C.reject,G=(W)=>{try{C.resolve(Q(W))}catch(F){X(F)}};if(J.body==null)return G(Buffer.allocUnsafe(0)),C.promise;return xP0(J.body,G,X),C.promise}function C3Q(A){let Q=A.body;return Q!=null&&(Q.stream.locked||qS.isDisturbed(Q.stream))}function oP0(A){return JSON.parse(B3Q(A))}function Q3Q(A){let Q=A.headersList,B=fP0(Q);if(B==="failure")return null;return B}X3Q.exports={extractBody:J3Q,safelyExtractBody:nP0,cloneBody:sP0,mixinBody:aP0,streamRegistry:iP0,bodyUnusable:C3Q}});var D3Q=R((rsY,H3Q)=>{var wQ=u("node:assert"),TQ=lQ(),{channels:G3Q}=x$(),mr=Fr(),{RequestContentLengthMismatchError:l$,ResponseContentLengthMismatchError:tP0,RequestAbortedError:E3Q,HeadersTimeoutError:eP0,HeadersOverflowError:AT0,SocketError:Mq,InformationalError:eK,BodyTimeoutError:QT0,HTTPParserError:BT0,ResponseExceededMaxSizeError:YT0}=QB(),{kUrl:K3Q,kReset:J8,kClient:ir,kParser:o0,kBlocking:zq,kRunning:fJ,kPending:JT0,kSize:W3Q,kWriting:QF,kQueue:I1,kNoRef:Lq,kKeepAliveDefaultTimeout:CT0,kHostHeader:XT0,kPendingIdx:GT0,kRunningIdx:CC,kError:XC,kPipelining:RS,kSocket:AV,kKeepAliveTimeoutValue:jS,kMaxHeadersSize:WT0,kKeepAliveMaxTimeout:FT0,kKeepAliveTimeoutThreshold:ZT0,kHeadersTimeout:$T0,kBodyTimeout:UT0,kStrictContentLength:cr,kMaxRequests:F3Q,kCounter:ET0,kMaxResponseSize:KT0,kOnError:VT0,kResume:AF,kHTTPContext:V3Q,kClosed:lr}=B0(),wX=W2Q(),IT0=Buffer.alloc(0),MS=Buffer[Symbol.species],HT0=TQ.removeAllListeners,ur;function DT0(){let A=process.env.JEST_WORKER_ID?Or():void 0,Q,B=process.arch!=="ppc64";if(process.env.UNDICI_NO_WASM_SIMD==="1")B=!0;else if(process.env.UNDICI_NO_WASM_SIMD==="0")B=!1;if(B)try{Q=new WebAssembly.Module($2Q())}catch{}if(!Q)Q=new WebAssembly.Module(A||Or());return new WebAssembly.Instance(Q,{env:{wasm_on_url:(Y,J,C)=>{return 0},wasm_on_status:(Y,J,C)=>{wQ(bY.ptr===Y);let X=J-OX+jX.byteOffset;return bY.onStatus(new MS(jX.buffer,X,C))},wasm_on_message_begin:(Y)=>{return wQ(bY.ptr===Y),bY.onMessageBegin()},wasm_on_header_field:(Y,J,C)=>{wQ(bY.ptr===Y);let X=J-OX+jX.byteOffset;return bY.onHeaderField(new MS(jX.buffer,X,C))},wasm_on_header_value:(Y,J,C)=>{wQ(bY.ptr===Y);let X=J-OX+jX.byteOffset;return bY.onHeaderValue(new MS(jX.buffer,X,C))},wasm_on_headers_complete:(Y,J,C,X)=>{return wQ(bY.ptr===Y),bY.onHeadersComplete(J,C===1,X===1)},wasm_on_body:(Y,J,C)=>{wQ(bY.ptr===Y);let X=J-OX+jX.byteOffset;return bY.onBody(new MS(jX.buffer,X,C))},wasm_on_message_complete:(Y)=>{return wQ(bY.ptr===Y),bY.onMessageComplete()}}})}var dr=null,bY=null,jX=null,zS=0,OX=null,NT0=0,qq=1,QV=2|qq,wS=4|qq,pr=8|NT0;class I3Q{constructor(A,Q,{exports:B}){this.llhttp=B,this.ptr=this.llhttp.llhttp_alloc(wX.TYPE.RESPONSE),this.client=A,this.socket=Q,this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.statusCode=0,this.statusText="",this.upgrade=!1,this.headers=[],this.headersSize=0,this.headersMaxSize=A[WT0],this.shouldKeepAlive=!1,this.paused=!1,this.resume=this.resume.bind(this),this.bytesRead=0,this.keepAlive="",this.contentLength="",this.connection="",this.maxResponseSize=A[KT0]}setTimeout(A,Q){if(A!==this.timeoutValue||Q&qq^this.timeoutType&qq){if(this.timeout)mr.clearTimeout(this.timeout),this.timeout=null;if(A)if(Q&qq)this.timeout=mr.setFastTimeout(Z3Q,A,new WeakRef(this));else this.timeout=setTimeout(Z3Q,A,new WeakRef(this)),this.timeout?.unref();this.timeoutValue=A}else if(this.timeout){if(this.timeout.refresh)this.timeout.refresh()}this.timeoutType=Q}resume(){if(this.socket.destroyed||!this.paused)return;if(wQ(this.ptr!=null),wQ(bY===null),this.llhttp.llhttp_resume(this.ptr),wQ(this.timeoutType===wS),this.timeout){if(this.timeout.refresh)this.timeout.refresh()}this.paused=!1,this.execute(this.socket.read()||IT0),this.readMore()}readMore(){while(!this.paused&&this.ptr){let A=this.socket.read();if(A===null)break;this.execute(A)}}execute(A){wQ(bY===null),wQ(this.ptr!=null),wQ(!this.paused);let{socket:Q,llhttp:B}=this;if(A.length>zS){if(OX)B.free(OX);zS=Math.ceil(A.length/4096)*4096,OX=B.malloc(zS)}new Uint8Array(B.memory.buffer,OX,zS).set(A);try{let Y;try{jX=A,bY=this,Y=B.llhttp_execute(this.ptr,OX,A.length)}finally{bY=null,jX=null}if(Y!==wX.ERROR.OK){let J=A.subarray(B.llhttp_get_error_pos(this.ptr)-OX);if(Y===wX.ERROR.PAUSED_UPGRADE)this.onUpgrade(J);else if(Y===wX.ERROR.PAUSED)this.paused=!0,Q.unshift(J);else{let C=B.llhttp_get_error_reason(this.ptr),X="";if(C){let G=new Uint8Array(B.memory.buffer,C).indexOf(0);X="Response does not match the HTTP/1.1 protocol ("+Buffer.from(B.memory.buffer,C,G).toString()+")"}throw new BT0(X,wX.ERROR[Y],J)}}}catch(Y){TQ.destroy(Q,Y)}}destroy(){wQ(bY===null),wQ(this.ptr!=null),this.llhttp.llhttp_free(this.ptr),this.ptr=null,this.timeout&&mr.clearTimeout(this.timeout),this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.paused=!1}onStatus(A){return this.statusText=A.toString(),0}onMessageBegin(){let{socket:A,client:Q}=this;if(A.destroyed)return-1;let B=Q[I1][Q[CC]];if(!B)return-1;return B.onResponseStarted(),0}onHeaderField(A){let Q=this.headers.length;if((Q&1)===0)this.headers.push(A);else this.headers[Q-1]=Buffer.concat([this.headers[Q-1],A]);return this.trackHeader(A.length),0}onHeaderValue(A){let Q=this.headers.length;if((Q&1)===1)this.headers.push(A),Q+=1;else this.headers[Q-1]=Buffer.concat([this.headers[Q-1],A]);let B=this.headers[Q-2];if(B.length===10){let Y=TQ.bufferToLowerCasedHeaderName(B);if(Y==="keep-alive")this.keepAlive+=A.toString();else if(Y==="connection")this.connection+=A.toString()}else if(B.length===14&&TQ.bufferToLowerCasedHeaderName(B)==="content-length")this.contentLength+=A.toString();return this.trackHeader(A.length),0}trackHeader(A){if(this.headersSize+=A,this.headersSize>=this.headersMaxSize)TQ.destroy(this.socket,new AT0)}onUpgrade(A){let{upgrade:Q,client:B,socket:Y,headers:J,statusCode:C}=this;wQ(Q),wQ(B[AV]===Y),wQ(!Y.destroyed),wQ(!this.paused),wQ((J.length&1)===0);let X=B[I1][B[CC]];wQ(X),wQ(X.upgrade||X.method==="CONNECT"),this.statusCode=0,this.statusText="",this.shouldKeepAlive=!1,this.headers=[],this.headersSize=0,Y.unshift(A),Y[o0].destroy(),Y[o0]=null,Y[ir]=null,Y[XC]=null,HT0(Y),B[AV]=null,B[V3Q]=null,B[I1][B[CC]++]=null,B.emit("disconnect",B[K3Q],[B],new eK("upgrade"));try{X.onUpgrade(C,J,Y)}catch(G){TQ.destroy(Y,G)}B[AF]()}onHeadersComplete(A,Q,B){let{client:Y,socket:J,headers:C,statusText:X}=this;if(J.destroyed)return-1;let G=Y[I1][Y[CC]];if(!G)return-1;if(wQ(!this.upgrade),wQ(this.statusCode<200),A===100)return TQ.destroy(J,new Mq("bad response",TQ.getSocketInfo(J))),-1;if(Q&&!G.upgrade)return TQ.destroy(J,new Mq("bad upgrade",TQ.getSocketInfo(J))),-1;if(wQ(this.timeoutType===QV),this.statusCode=A,this.shouldKeepAlive=B||G.method==="HEAD"&&!J[J8]&&this.connection.toLowerCase()==="keep-alive",this.statusCode>=200){let F=G.bodyTimeout!=null?G.bodyTimeout:Y[UT0];this.setTimeout(F,wS)}else if(this.timeout){if(this.timeout.refresh)this.timeout.refresh()}if(G.method==="CONNECT")return wQ(Y[fJ]===1),this.upgrade=!0,2;if(Q)return wQ(Y[fJ]===1),this.upgrade=!0,2;if(wQ((this.headers.length&1)===0),this.headers=[],this.headersSize=0,this.shouldKeepAlive&&Y[RS]){let F=this.keepAlive?TQ.parseKeepAliveTimeout(this.keepAlive):null;if(F!=null){let Z=Math.min(F-Y[ZT0],Y[FT0]);if(Z<=0)J[J8]=!0;else Y[jS]=Z}else Y[jS]=Y[CT0]}else J[J8]=!0;let W=G.onHeaders(A,C,this.resume,X)===!1;if(G.aborted)return-1;if(G.method==="HEAD")return 1;if(A<200)return 1;if(J[zq])J[zq]=!1,Y[AF]();return W?wX.ERROR.PAUSED:0}onBody(A){let{client:Q,socket:B,statusCode:Y,maxResponseSize:J}=this;if(B.destroyed)return-1;let C=Q[I1][Q[CC]];if(wQ(C),wQ(this.timeoutType===wS),this.timeout){if(this.timeout.refresh)this.timeout.refresh()}if(wQ(Y>=200),J>-1&&this.bytesRead+A.length>J)return TQ.destroy(B,new YT0),-1;if(this.bytesRead+=A.length,C.onData(A)===!1)return wX.ERROR.PAUSED;return 0}onMessageComplete(){let{client:A,socket:Q,statusCode:B,upgrade:Y,headers:J,contentLength:C,bytesRead:X,shouldKeepAlive:G}=this;if(Q.destroyed&&(!B||G))return-1;if(Y)return 0;wQ(B>=100),wQ((this.headers.length&1)===0);let W=A[I1][A[CC]];if(wQ(W),this.statusCode=0,this.statusText="",this.bytesRead=0,this.contentLength="",this.keepAlive="",this.connection="",this.headers=[],this.headersSize=0,B<200)return 0;if(W.method!=="HEAD"&&C&&X!==parseInt(C,10))return TQ.destroy(Q,new tP0),-1;if(W.onComplete(J),A[I1][A[CC]++]=null,Q[QF])return wQ(A[fJ]===0),TQ.destroy(Q,new eK("reset")),wX.ERROR.PAUSED;else if(!G)return TQ.destroy(Q,new eK("reset")),wX.ERROR.PAUSED;else if(Q[J8]&&A[fJ]===0)return TQ.destroy(Q,new eK("reset")),wX.ERROR.PAUSED;else if(A[RS]==null||A[RS]===1)setImmediate(A[AF]);else A[AF]();return 0}}function Z3Q(A){let{socket:Q,timeoutType:B,client:Y,paused:J}=A.deref();if(B===QV){if(!Q[QF]||Q.writableNeedDrain||Y[fJ]>1)wQ(!J,"cannot be paused while waiting for headers"),TQ.destroy(Q,new eP0)}else if(B===wS){if(!J)TQ.destroy(Q,new QT0)}else if(B===pr)wQ(Y[fJ]===0&&Y[jS]),TQ.destroy(Q,new eK("socket idle timeout"))}function LT0(A,Q){if(A[AV]=Q,!dr)dr=DT0();if(Q.errored)throw Q.errored;if(Q.destroyed)throw new Mq("destroyed");return Q[Lq]=!1,Q[QF]=!1,Q[J8]=!1,Q[zq]=!1,Q[o0]=new I3Q(A,Q,dr),TQ.addListener(Q,"error",qT0),TQ.addListener(Q,"readable",MT0),TQ.addListener(Q,"end",zT0),TQ.addListener(Q,"close",RT0),Q[lr]=!1,Q.on("close",wT0),{version:"h1",defaultPipelining:1,write(B){return PT0(A,B)},resume(){jT0(A)},destroy(B,Y){if(Q[lr])queueMicrotask(Y);else Q.on("close",Y),Q.destroy(B)},get destroyed(){return Q.destroyed},busy(B){if(Q[QF]||Q[J8]||Q[zq])return!0;if(B){if(A[fJ]>0&&!B.idempotent)return!0;if(A[fJ]>0&&(B.upgrade||B.method==="CONNECT"))return!0;if(A[fJ]>0&&TQ.bodyLength(B.body)!==0&&(TQ.isStream(B.body)||TQ.isAsyncIterable(B.body)||TQ.isFormDataLike(B.body)))return!0}return!1}}}function qT0(A){wQ(A.code!=="ERR_TLS_CERT_ALTNAME_INVALID");let Q=this[o0];if(A.code==="ECONNRESET"&&Q.statusCode&&!Q.shouldKeepAlive){Q.onMessageComplete();return}this[XC]=A,this[ir][VT0](A)}function MT0(){this[o0]?.readMore()}function zT0(){let A=this[o0];if(A.statusCode&&!A.shouldKeepAlive){A.onMessageComplete();return}TQ.destroy(this,new Mq("other side closed",TQ.getSocketInfo(this)))}function RT0(){let A=this[o0];if(A){if(!this[XC]&&A.statusCode&&!A.shouldKeepAlive)A.onMessageComplete();this[o0].destroy(),this[o0]=null}let Q=this[XC]||new Mq("closed",TQ.getSocketInfo(this)),B=this[ir];if(B[AV]=null,B[V3Q]=null,B.destroyed){wQ(B[JT0]===0);let Y=B[I1].splice(B[CC]);for(let J=0;J0&&Q.code!=="UND_ERR_INFO"){let Y=B[I1][B[CC]];B[I1][B[CC]++]=null,TQ.errorRequest(B,Y,Q)}B[GT0]=B[CC],wQ(B[fJ]===0),B.emit("disconnect",B[K3Q],[B],Q),B[AF]()}function wT0(){this[lr]=!0}function jT0(A){let Q=A[AV];if(Q&&!Q.destroyed){if(A[W3Q]===0){if(!Q[Lq]&&Q.unref)Q.unref(),Q[Lq]=!0}else if(Q[Lq]&&Q.ref)Q.ref(),Q[Lq]=!1;if(A[W3Q]===0){if(Q[o0].timeoutType!==pr)Q[o0].setTimeout(A[jS],pr)}else if(A[fJ]>0&&Q[o0].statusCode<200){if(Q[o0].timeoutType!==QV){let B=A[I1][A[CC]],Y=B.headersTimeout!=null?B.headersTimeout:A[$T0];Q[o0].setTimeout(Y,QV)}}}}function OT0(A){return A!=="GET"&&A!=="HEAD"&&A!=="OPTIONS"&&A!=="TRACE"&&A!=="CONNECT"}function PT0(A,Q){let{method:B,path:Y,host:J,upgrade:C,blocking:X,reset:G}=Q,{body:W,headers:F,contentLength:Z}=Q,U=B==="PUT"||B==="POST"||B==="PATCH"||B==="QUERY"||B==="PROPFIND"||B==="PROPPATCH";if(TQ.isFormDataLike(W)){if(!ur)ur=tK().extractBody;let[V,H]=ur(W);if(Q.contentType==null)F.push("content-type",H);W=V.stream,Z=V.length}else if(TQ.isBlobLike(W)&&Q.contentType==null&&W.type)F.push("content-type",W.type);if(W&&typeof W.read==="function")W.read(0);let $=TQ.bodyLength(W);if(Z=$??Z,Z===null)Z=Q.contentLength;if(Z===0&&!U)Z=null;if(OT0(B)&&Z>0&&Q.contentLength!==null&&Q.contentLength!==Z){if(A[cr])return TQ.errorRequest(A,Q,new l$),!1;process.emitWarning(new l$)}let E=A[AV],K=(V)=>{if(Q.aborted||Q.completed)return;TQ.errorRequest(A,Q,V||new E3Q),TQ.destroy(W),TQ.destroy(E,new eK("aborted"))};try{Q.onConnect(K)}catch(V){TQ.errorRequest(A,Q,V)}if(Q.aborted)return!1;if(B==="HEAD")E[J8]=!0;if(C||B==="CONNECT")E[J8]=!0;if(G!=null)E[J8]=G;if(A[F3Q]&&E[ET0]++>=A[F3Q])E[J8]=!0;if(X)E[zq]=!0;let I=`${B} ${Y} HTTP/1.1\r +`);if($.push(I),C+=I.byteLength,K)C=null;J=A,Y=async function*(){for(let V of $)if(V.stream)yield*V.stream();else yield V},X=`multipart/form-data; boundary=${W}`}else if(RX.is.Blob(A)){if(J=A,C=A.size,A.type)X=A.type}else if(typeof A[Symbol.asyncIterator]==="function"){if(Q)throw TypeError("keepalive");if(qS.isDisturbed(A)||A.locked)throw TypeError("Response body object should not be disturbed or locked");B=RX.is.ReadableStream(A)?A:gP0(A)}if(typeof J==="string"||qS.isBuffer(J))C=Buffer.byteLength(J);if(Y!=null){let W;B=new ReadableStream({async start(){W=Y(A)[Symbol.asyncIterator]()},async pull(F){let{value:Z,done:U}=await W.next();if(U)queueMicrotask(()=>{F.close(),F.byobRequest?.respond(0)});else if(!Y3Q(B)){let $=new Uint8Array(Z);if($.byteLength)F.enqueue($)}return F.desiredSize>0},async cancel(F){await W.return()},type:"bytes"})}return[{stream:B,source:J,length:C},X]}function nP0(A,Q=!1){if(RX.is.ReadableStream(A))fr(!qS.isDisturbed(A),"The body has already been consumed."),fr(!A.locked,"The stream is locked.");return J3Q(A,Q)}function sP0(A){let{0:Q,1:B}=A.stream.tee();return A.stream=Q,{stream:B,length:A.length,source:A.source}}function rP0(A,Q){return{blob(){return oK(this,(Y)=>{let J=Q3Q(Q(this));if(J===null)J="";else if(J)J=dP0(J);return new Blob([Y],{type:J})},A,Q)},arrayBuffer(){return oK(this,(Y)=>{return new Uint8Array(Y).buffer},A,Q)},text(){return oK(this,B3Q,A,Q)},json(){return oK(this,oP0,A,Q)},formData(){return oK(this,(Y)=>{let J=Q3Q(Q(this));if(J!==null)switch(J.essence){case"multipart/form-data":{let C=cP0(Y,J),X=new A3Q;return bP0(X,C),X}case"application/x-www-form-urlencoded":{let C=new URLSearchParams(Y.toString()),X=new A3Q;for(let[G,W]of C)X.append(G,W);return X}}throw TypeError('Content-Type was not one of "multipart/form-data" or "application/x-www-form-urlencoded".')},A,Q)},bytes(){return oK(this,(Y)=>{return new Uint8Array(Y)},A,Q)}}}function aP0(A,Q){Object.assign(A.prototype,rP0(A,Q))}function oK(A,Q,B,Y){try{RX.brandCheck(A,B)}catch(W){return Promise.reject(W)}let J=Y(A);if(C3Q(J))return Promise.reject(TypeError("Body is unusable: Body has already been read"));if(J.aborted)return Promise.reject(new DOMException("The operation was aborted.","AbortError"));let C=lP0(),X=C.reject,G=(W)=>{try{C.resolve(Q(W))}catch(F){X(F)}};if(J.body==null)return G(Buffer.allocUnsafe(0)),C.promise;return xP0(J.body,G,X),C.promise}function C3Q(A){let Q=A.body;return Q!=null&&(Q.stream.locked||qS.isDisturbed(Q.stream))}function oP0(A){return JSON.parse(B3Q(A))}function Q3Q(A){let Q=A.headersList,B=fP0(Q);if(B==="failure")return null;return B}X3Q.exports={extractBody:J3Q,safelyExtractBody:nP0,cloneBody:sP0,mixinBody:aP0,streamRegistry:iP0,bodyUnusable:C3Q}});var D3Q=R((rsY,H3Q)=>{var wQ=u("node:assert"),TQ=lQ(),{channels:G3Q}=f$(),mr=Fr(),{RequestContentLengthMismatchError:p$,ResponseContentLengthMismatchError:tP0,RequestAbortedError:E3Q,HeadersTimeoutError:eP0,HeadersOverflowError:AT0,SocketError:Mq,InformationalError:eK,BodyTimeoutError:QT0,HTTPParserError:BT0,ResponseExceededMaxSizeError:YT0}=QB(),{kUrl:K3Q,kReset:J8,kClient:ir,kParser:o0,kBlocking:zq,kRunning:fJ,kPending:JT0,kSize:W3Q,kWriting:QF,kQueue:I1,kNoRef:Lq,kKeepAliveDefaultTimeout:CT0,kHostHeader:XT0,kPendingIdx:GT0,kRunningIdx:CC,kError:XC,kPipelining:RS,kSocket:AV,kKeepAliveTimeoutValue:jS,kMaxHeadersSize:WT0,kKeepAliveMaxTimeout:FT0,kKeepAliveTimeoutThreshold:ZT0,kHeadersTimeout:$T0,kBodyTimeout:UT0,kStrictContentLength:cr,kMaxRequests:F3Q,kCounter:ET0,kMaxResponseSize:KT0,kOnError:VT0,kResume:AF,kHTTPContext:V3Q,kClosed:lr}=B0(),wX=W2Q(),IT0=Buffer.alloc(0),MS=Buffer[Symbol.species],HT0=TQ.removeAllListeners,ur;function DT0(){let A=process.env.JEST_WORKER_ID?Or():void 0,Q,B=process.arch!=="ppc64";if(process.env.UNDICI_NO_WASM_SIMD==="1")B=!0;else if(process.env.UNDICI_NO_WASM_SIMD==="0")B=!1;if(B)try{Q=new WebAssembly.Module($2Q())}catch{}if(!Q)Q=new WebAssembly.Module(A||Or());return new WebAssembly.Instance(Q,{env:{wasm_on_url:(Y,J,C)=>{return 0},wasm_on_status:(Y,J,C)=>{wQ(bY.ptr===Y);let X=J-OX+jX.byteOffset;return bY.onStatus(new MS(jX.buffer,X,C))},wasm_on_message_begin:(Y)=>{return wQ(bY.ptr===Y),bY.onMessageBegin()},wasm_on_header_field:(Y,J,C)=>{wQ(bY.ptr===Y);let X=J-OX+jX.byteOffset;return bY.onHeaderField(new MS(jX.buffer,X,C))},wasm_on_header_value:(Y,J,C)=>{wQ(bY.ptr===Y);let X=J-OX+jX.byteOffset;return bY.onHeaderValue(new MS(jX.buffer,X,C))},wasm_on_headers_complete:(Y,J,C,X)=>{return wQ(bY.ptr===Y),bY.onHeadersComplete(J,C===1,X===1)},wasm_on_body:(Y,J,C)=>{wQ(bY.ptr===Y);let X=J-OX+jX.byteOffset;return bY.onBody(new MS(jX.buffer,X,C))},wasm_on_message_complete:(Y)=>{return wQ(bY.ptr===Y),bY.onMessageComplete()}}})}var dr=null,bY=null,jX=null,zS=0,OX=null,NT0=0,qq=1,QV=2|qq,wS=4|qq,pr=8|NT0;class I3Q{constructor(A,Q,{exports:B}){this.llhttp=B,this.ptr=this.llhttp.llhttp_alloc(wX.TYPE.RESPONSE),this.client=A,this.socket=Q,this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.statusCode=0,this.statusText="",this.upgrade=!1,this.headers=[],this.headersSize=0,this.headersMaxSize=A[WT0],this.shouldKeepAlive=!1,this.paused=!1,this.resume=this.resume.bind(this),this.bytesRead=0,this.keepAlive="",this.contentLength="",this.connection="",this.maxResponseSize=A[KT0]}setTimeout(A,Q){if(A!==this.timeoutValue||Q&qq^this.timeoutType&qq){if(this.timeout)mr.clearTimeout(this.timeout),this.timeout=null;if(A)if(Q&qq)this.timeout=mr.setFastTimeout(Z3Q,A,new WeakRef(this));else this.timeout=setTimeout(Z3Q,A,new WeakRef(this)),this.timeout?.unref();this.timeoutValue=A}else if(this.timeout){if(this.timeout.refresh)this.timeout.refresh()}this.timeoutType=Q}resume(){if(this.socket.destroyed||!this.paused)return;if(wQ(this.ptr!=null),wQ(bY===null),this.llhttp.llhttp_resume(this.ptr),wQ(this.timeoutType===wS),this.timeout){if(this.timeout.refresh)this.timeout.refresh()}this.paused=!1,this.execute(this.socket.read()||IT0),this.readMore()}readMore(){while(!this.paused&&this.ptr){let A=this.socket.read();if(A===null)break;this.execute(A)}}execute(A){wQ(bY===null),wQ(this.ptr!=null),wQ(!this.paused);let{socket:Q,llhttp:B}=this;if(A.length>zS){if(OX)B.free(OX);zS=Math.ceil(A.length/4096)*4096,OX=B.malloc(zS)}new Uint8Array(B.memory.buffer,OX,zS).set(A);try{let Y;try{jX=A,bY=this,Y=B.llhttp_execute(this.ptr,OX,A.length)}finally{bY=null,jX=null}if(Y!==wX.ERROR.OK){let J=A.subarray(B.llhttp_get_error_pos(this.ptr)-OX);if(Y===wX.ERROR.PAUSED_UPGRADE)this.onUpgrade(J);else if(Y===wX.ERROR.PAUSED)this.paused=!0,Q.unshift(J);else{let C=B.llhttp_get_error_reason(this.ptr),X="";if(C){let G=new Uint8Array(B.memory.buffer,C).indexOf(0);X="Response does not match the HTTP/1.1 protocol ("+Buffer.from(B.memory.buffer,C,G).toString()+")"}throw new BT0(X,wX.ERROR[Y],J)}}}catch(Y){TQ.destroy(Q,Y)}}destroy(){wQ(bY===null),wQ(this.ptr!=null),this.llhttp.llhttp_free(this.ptr),this.ptr=null,this.timeout&&mr.clearTimeout(this.timeout),this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.paused=!1}onStatus(A){return this.statusText=A.toString(),0}onMessageBegin(){let{socket:A,client:Q}=this;if(A.destroyed)return-1;let B=Q[I1][Q[CC]];if(!B)return-1;return B.onResponseStarted(),0}onHeaderField(A){let Q=this.headers.length;if((Q&1)===0)this.headers.push(A);else this.headers[Q-1]=Buffer.concat([this.headers[Q-1],A]);return this.trackHeader(A.length),0}onHeaderValue(A){let Q=this.headers.length;if((Q&1)===1)this.headers.push(A),Q+=1;else this.headers[Q-1]=Buffer.concat([this.headers[Q-1],A]);let B=this.headers[Q-2];if(B.length===10){let Y=TQ.bufferToLowerCasedHeaderName(B);if(Y==="keep-alive")this.keepAlive+=A.toString();else if(Y==="connection")this.connection+=A.toString()}else if(B.length===14&&TQ.bufferToLowerCasedHeaderName(B)==="content-length")this.contentLength+=A.toString();return this.trackHeader(A.length),0}trackHeader(A){if(this.headersSize+=A,this.headersSize>=this.headersMaxSize)TQ.destroy(this.socket,new AT0)}onUpgrade(A){let{upgrade:Q,client:B,socket:Y,headers:J,statusCode:C}=this;wQ(Q),wQ(B[AV]===Y),wQ(!Y.destroyed),wQ(!this.paused),wQ((J.length&1)===0);let X=B[I1][B[CC]];wQ(X),wQ(X.upgrade||X.method==="CONNECT"),this.statusCode=0,this.statusText="",this.shouldKeepAlive=!1,this.headers=[],this.headersSize=0,Y.unshift(A),Y[o0].destroy(),Y[o0]=null,Y[ir]=null,Y[XC]=null,HT0(Y),B[AV]=null,B[V3Q]=null,B[I1][B[CC]++]=null,B.emit("disconnect",B[K3Q],[B],new eK("upgrade"));try{X.onUpgrade(C,J,Y)}catch(G){TQ.destroy(Y,G)}B[AF]()}onHeadersComplete(A,Q,B){let{client:Y,socket:J,headers:C,statusText:X}=this;if(J.destroyed)return-1;let G=Y[I1][Y[CC]];if(!G)return-1;if(wQ(!this.upgrade),wQ(this.statusCode<200),A===100)return TQ.destroy(J,new Mq("bad response",TQ.getSocketInfo(J))),-1;if(Q&&!G.upgrade)return TQ.destroy(J,new Mq("bad upgrade",TQ.getSocketInfo(J))),-1;if(wQ(this.timeoutType===QV),this.statusCode=A,this.shouldKeepAlive=B||G.method==="HEAD"&&!J[J8]&&this.connection.toLowerCase()==="keep-alive",this.statusCode>=200){let F=G.bodyTimeout!=null?G.bodyTimeout:Y[UT0];this.setTimeout(F,wS)}else if(this.timeout){if(this.timeout.refresh)this.timeout.refresh()}if(G.method==="CONNECT")return wQ(Y[fJ]===1),this.upgrade=!0,2;if(Q)return wQ(Y[fJ]===1),this.upgrade=!0,2;if(wQ((this.headers.length&1)===0),this.headers=[],this.headersSize=0,this.shouldKeepAlive&&Y[RS]){let F=this.keepAlive?TQ.parseKeepAliveTimeout(this.keepAlive):null;if(F!=null){let Z=Math.min(F-Y[ZT0],Y[FT0]);if(Z<=0)J[J8]=!0;else Y[jS]=Z}else Y[jS]=Y[CT0]}else J[J8]=!0;let W=G.onHeaders(A,C,this.resume,X)===!1;if(G.aborted)return-1;if(G.method==="HEAD")return 1;if(A<200)return 1;if(J[zq])J[zq]=!1,Y[AF]();return W?wX.ERROR.PAUSED:0}onBody(A){let{client:Q,socket:B,statusCode:Y,maxResponseSize:J}=this;if(B.destroyed)return-1;let C=Q[I1][Q[CC]];if(wQ(C),wQ(this.timeoutType===wS),this.timeout){if(this.timeout.refresh)this.timeout.refresh()}if(wQ(Y>=200),J>-1&&this.bytesRead+A.length>J)return TQ.destroy(B,new YT0),-1;if(this.bytesRead+=A.length,C.onData(A)===!1)return wX.ERROR.PAUSED;return 0}onMessageComplete(){let{client:A,socket:Q,statusCode:B,upgrade:Y,headers:J,contentLength:C,bytesRead:X,shouldKeepAlive:G}=this;if(Q.destroyed&&(!B||G))return-1;if(Y)return 0;wQ(B>=100),wQ((this.headers.length&1)===0);let W=A[I1][A[CC]];if(wQ(W),this.statusCode=0,this.statusText="",this.bytesRead=0,this.contentLength="",this.keepAlive="",this.connection="",this.headers=[],this.headersSize=0,B<200)return 0;if(W.method!=="HEAD"&&C&&X!==parseInt(C,10))return TQ.destroy(Q,new tP0),-1;if(W.onComplete(J),A[I1][A[CC]++]=null,Q[QF])return wQ(A[fJ]===0),TQ.destroy(Q,new eK("reset")),wX.ERROR.PAUSED;else if(!G)return TQ.destroy(Q,new eK("reset")),wX.ERROR.PAUSED;else if(Q[J8]&&A[fJ]===0)return TQ.destroy(Q,new eK("reset")),wX.ERROR.PAUSED;else if(A[RS]==null||A[RS]===1)setImmediate(A[AF]);else A[AF]();return 0}}function Z3Q(A){let{socket:Q,timeoutType:B,client:Y,paused:J}=A.deref();if(B===QV){if(!Q[QF]||Q.writableNeedDrain||Y[fJ]>1)wQ(!J,"cannot be paused while waiting for headers"),TQ.destroy(Q,new eP0)}else if(B===wS){if(!J)TQ.destroy(Q,new QT0)}else if(B===pr)wQ(Y[fJ]===0&&Y[jS]),TQ.destroy(Q,new eK("socket idle timeout"))}function LT0(A,Q){if(A[AV]=Q,!dr)dr=DT0();if(Q.errored)throw Q.errored;if(Q.destroyed)throw new Mq("destroyed");return Q[Lq]=!1,Q[QF]=!1,Q[J8]=!1,Q[zq]=!1,Q[o0]=new I3Q(A,Q,dr),TQ.addListener(Q,"error",qT0),TQ.addListener(Q,"readable",MT0),TQ.addListener(Q,"end",zT0),TQ.addListener(Q,"close",RT0),Q[lr]=!1,Q.on("close",wT0),{version:"h1",defaultPipelining:1,write(B){return PT0(A,B)},resume(){jT0(A)},destroy(B,Y){if(Q[lr])queueMicrotask(Y);else Q.on("close",Y),Q.destroy(B)},get destroyed(){return Q.destroyed},busy(B){if(Q[QF]||Q[J8]||Q[zq])return!0;if(B){if(A[fJ]>0&&!B.idempotent)return!0;if(A[fJ]>0&&(B.upgrade||B.method==="CONNECT"))return!0;if(A[fJ]>0&&TQ.bodyLength(B.body)!==0&&(TQ.isStream(B.body)||TQ.isAsyncIterable(B.body)||TQ.isFormDataLike(B.body)))return!0}return!1}}}function qT0(A){wQ(A.code!=="ERR_TLS_CERT_ALTNAME_INVALID");let Q=this[o0];if(A.code==="ECONNRESET"&&Q.statusCode&&!Q.shouldKeepAlive){Q.onMessageComplete();return}this[XC]=A,this[ir][VT0](A)}function MT0(){this[o0]?.readMore()}function zT0(){let A=this[o0];if(A.statusCode&&!A.shouldKeepAlive){A.onMessageComplete();return}TQ.destroy(this,new Mq("other side closed",TQ.getSocketInfo(this)))}function RT0(){let A=this[o0];if(A){if(!this[XC]&&A.statusCode&&!A.shouldKeepAlive)A.onMessageComplete();this[o0].destroy(),this[o0]=null}let Q=this[XC]||new Mq("closed",TQ.getSocketInfo(this)),B=this[ir];if(B[AV]=null,B[V3Q]=null,B.destroyed){wQ(B[JT0]===0);let Y=B[I1].splice(B[CC]);for(let J=0;J0&&Q.code!=="UND_ERR_INFO"){let Y=B[I1][B[CC]];B[I1][B[CC]++]=null,TQ.errorRequest(B,Y,Q)}B[GT0]=B[CC],wQ(B[fJ]===0),B.emit("disconnect",B[K3Q],[B],Q),B[AF]()}function wT0(){this[lr]=!0}function jT0(A){let Q=A[AV];if(Q&&!Q.destroyed){if(A[W3Q]===0){if(!Q[Lq]&&Q.unref)Q.unref(),Q[Lq]=!0}else if(Q[Lq]&&Q.ref)Q.ref(),Q[Lq]=!1;if(A[W3Q]===0){if(Q[o0].timeoutType!==pr)Q[o0].setTimeout(A[jS],pr)}else if(A[fJ]>0&&Q[o0].statusCode<200){if(Q[o0].timeoutType!==QV){let B=A[I1][A[CC]],Y=B.headersTimeout!=null?B.headersTimeout:A[$T0];Q[o0].setTimeout(Y,QV)}}}}function OT0(A){return A!=="GET"&&A!=="HEAD"&&A!=="OPTIONS"&&A!=="TRACE"&&A!=="CONNECT"}function PT0(A,Q){let{method:B,path:Y,host:J,upgrade:C,blocking:X,reset:G}=Q,{body:W,headers:F,contentLength:Z}=Q,U=B==="PUT"||B==="POST"||B==="PATCH"||B==="QUERY"||B==="PROPFIND"||B==="PROPPATCH";if(TQ.isFormDataLike(W)){if(!ur)ur=tK().extractBody;let[V,H]=ur(W);if(Q.contentType==null)F.push("content-type",H);W=V.stream,Z=V.length}else if(TQ.isBlobLike(W)&&Q.contentType==null&&W.type)F.push("content-type",W.type);if(W&&typeof W.read==="function")W.read(0);let $=TQ.bodyLength(W);if(Z=$??Z,Z===null)Z=Q.contentLength;if(Z===0&&!U)Z=null;if(OT0(B)&&Z>0&&Q.contentLength!==null&&Q.contentLength!==Z){if(A[cr])return TQ.errorRequest(A,Q,new p$),!1;process.emitWarning(new p$)}let E=A[AV],K=(V)=>{if(Q.aborted||Q.completed)return;TQ.errorRequest(A,Q,V||new E3Q),TQ.destroy(W),TQ.destroy(E,new eK("aborted"))};try{Q.onConnect(K)}catch(V){TQ.errorRequest(A,Q,V)}if(Q.aborted)return!1;if(B==="HEAD")E[J8]=!0;if(C||B==="CONNECT")E[J8]=!0;if(G!=null)E[J8]=G;if(A[F3Q]&&E[ET0]++>=A[F3Q])E[J8]=!0;if(X)E[zq]=!0;let I=`${B} ${Y} HTTP/1.1\r `;if(typeof J==="string")I+=`host: ${J}\r `;else I+=A[XT0];if(C)I+=`connection: upgrade\r upgrade: ${C}\r @@ -72,9 +72,9 @@ upgrade: ${C}\r `,"latin1");else wQ(C===null,"no body must not have content length"),J.write(`${X}\r `,"latin1");else if(TQ.isBuffer(Q)){if(wQ(C===Q.byteLength,"buffer body must have content length"),J.cork(),J.write(`${X}content-length: ${C}\r \r -`,"latin1"),J.write(Q),J.uncork(),Y.onBodySent(Q),!G&&Y.reset!==!1)J[J8]=!0}Y.onRequestSent(),B[AF]()}catch(W){A(W)}}async function ST0(A,Q,B,Y,J,C,X,G){wQ(C===Q.size,"blob body must have content length");try{if(C!=null&&C!==Q.size)throw new l$;let W=Buffer.from(await Q.arrayBuffer());if(J.cork(),J.write(`${X}content-length: ${C}\r +`,"latin1"),J.write(Q),J.uncork(),Y.onBodySent(Q),!G&&Y.reset!==!1)J[J8]=!0}Y.onRequestSent(),B[AF]()}catch(W){A(W)}}async function ST0(A,Q,B,Y,J,C,X,G){wQ(C===Q.size,"blob body must have content length");try{if(C!=null&&C!==Q.size)throw new p$;let W=Buffer.from(await Q.arrayBuffer());if(J.cork(),J.write(`${X}content-length: ${C}\r \r -`,"latin1"),J.write(W),J.uncork(),Y.onBodySent(W),Y.onRequestSent(),!G&&Y.reset!==!1)J[J8]=!0;B[AF]()}catch(W){A(W)}}async function U3Q(A,Q,B,Y,J,C,X,G){wQ(C!==0||B[fJ]===0,"iterator body cannot be pipelined");let W=null;function F(){if(W){let $=W;W=null,$()}}let Z=()=>new Promise(($,E)=>{if(wQ(W===null),J[XC])E(J[XC]);else W=$});J.on("close",F).on("drain",F);let U=new nr({abort:A,socket:J,request:Y,contentLength:C,client:B,expectsPayload:G,header:X});try{for await(let $ of Q){if(J[XC])throw J[XC];if(!U.write($))await Z()}U.end()}catch($){U.destroy($)}finally{J.off("close",F).off("drain",F)}}class nr{constructor({abort:A,socket:Q,request:B,contentLength:Y,client:J,expectsPayload:C,header:X}){this.socket=Q,this.request=B,this.contentLength=Y,this.client=J,this.bytesWritten=0,this.expectsPayload=C,this.header=X,this.abort=A,Q[QF]=!0}write(A){let{socket:Q,request:B,contentLength:Y,client:J,bytesWritten:C,expectsPayload:X,header:G}=this;if(Q[XC])throw Q[XC];if(Q.destroyed)return!1;let W=Buffer.byteLength(A);if(!W)return!0;if(Y!==null&&C+W>Y){if(J[cr])throw new l$;process.emitWarning(new l$)}if(Q.cork(),C===0){if(!X&&B.reset!==!1)Q[J8]=!0;if(Y===null)Q.write(`${G}transfer-encoding: chunked\r +`,"latin1"),J.write(W),J.uncork(),Y.onBodySent(W),Y.onRequestSent(),!G&&Y.reset!==!1)J[J8]=!0;B[AF]()}catch(W){A(W)}}async function U3Q(A,Q,B,Y,J,C,X,G){wQ(C!==0||B[fJ]===0,"iterator body cannot be pipelined");let W=null;function F(){if(W){let $=W;W=null,$()}}let Z=()=>new Promise(($,E)=>{if(wQ(W===null),J[XC])E(J[XC]);else W=$});J.on("close",F).on("drain",F);let U=new nr({abort:A,socket:J,request:Y,contentLength:C,client:B,expectsPayload:G,header:X});try{for await(let $ of Q){if(J[XC])throw J[XC];if(!U.write($))await Z()}U.end()}catch($){U.destroy($)}finally{J.off("close",F).off("drain",F)}}class nr{constructor({abort:A,socket:Q,request:B,contentLength:Y,client:J,expectsPayload:C,header:X}){this.socket=Q,this.request=B,this.contentLength=Y,this.client=J,this.bytesWritten=0,this.expectsPayload=C,this.header=X,this.abort=A,Q[QF]=!0}write(A){let{socket:Q,request:B,contentLength:Y,client:J,bytesWritten:C,expectsPayload:X,header:G}=this;if(Q[XC])throw Q[XC];if(Q.destroyed)return!1;let W=Buffer.byteLength(A);if(!W)return!0;if(Y!==null&&C+W>Y){if(J[cr])throw new p$;process.emitWarning(new p$)}if(Q.cork(),C===0){if(!X&&B.reset!==!1)Q[J8]=!0;if(Y===null)Q.write(`${G}transfer-encoding: chunked\r `,"latin1");else Q.write(`${G}content-length: ${Y}\r \r `,"latin1")}if(Y===null)Q.write(`\r @@ -85,13 +85,13 @@ ${W.toString(16)}\r `,"latin1");else if(Q===null)A.write(`\r 0\r \r -`,"latin1");if(Q!==null&&Y!==Q)if(B[cr])throw new l$;else process.emitWarning(new l$);if(A[o0].timeout&&A[o0].timeoutType===QV){if(A[o0].timeout.refresh)A[o0].timeout.refresh()}B[AF]()}destroy(A){let{socket:Q,client:B,abort:Y}=this;if(Q[QF]=!1,A)wQ(B[fJ]<=1,"pipeline should only contain this request"),Y(A)}}H3Q.exports=LT0});var w3Q=R((asY,R3Q)=>{var WC=u("node:assert"),{pipeline:kT0}=u("node:stream"),OB=lQ(),{RequestContentLengthMismatchError:sr,RequestAbortedError:_T0,SocketError:wq,InformationalError:OS}=QB(),{kUrl:Rq,kReset:TS,kClient:p$,kRunning:SS,kPending:vT0,kQueue:BF,kPendingIdx:ar,kRunningIdx:H1,kError:D1,kSocket:VY,kStrictContentLength:yT0,kOnError:kS,kMaxConcurrentStreams:z3Q,kHTTP2Session:PX,kResume:yG,kSize:gT0,kHTTPContext:or,kClosed:rr,kBodyTimeout:hT0}=B0(),{channels:N3Q}=x$(),GC=Symbol("open streams"),L3Q,PS;try{PS=u("node:http2")}catch{PS={constants:{}}}var{constants:{HTTP2_HEADER_AUTHORITY:xT0,HTTP2_HEADER_METHOD:fT0,HTTP2_HEADER_PATH:bT0,HTTP2_HEADER_SCHEME:mT0,HTTP2_HEADER_CONTENT_LENGTH:uT0,HTTP2_HEADER_EXPECT:dT0,HTTP2_HEADER_STATUS:cT0}}=PS;function lT0(A){let Q=[];for(let[B,Y]of Object.entries(A))if(Array.isArray(Y))for(let J of Y)Q.push(Buffer.from(B),Buffer.from(J));else Q.push(Buffer.from(B),Buffer.from(Y));return Q}function pT0(A,Q){A[VY]=Q;let B=PS.connect(A[Rq],{createConnection:()=>Q,peerMaxConcurrentStreams:A[z3Q],settings:{enablePush:!1}});return B[GC]=0,B[p$]=A,B[VY]=Q,B[PX]=null,OB.addListener(B,"error",nT0),OB.addListener(B,"frameError",sT0),OB.addListener(B,"end",rT0),OB.addListener(B,"goaway",aT0),OB.addListener(B,"close",oT0),B.unref(),A[PX]=B,Q[PX]=B,OB.addListener(Q,"error",eT0),OB.addListener(Q,"end",AS0),OB.addListener(Q,"close",tT0),Q[rr]=!1,Q.on("close",QS0),{version:"h2",defaultPipelining:1/0,write(Y){return YS0(A,Y)},resume(){iT0(A)},destroy(Y,J){if(Q[rr])queueMicrotask(J);else Q.destroy(Y).on("close",J)},get destroyed(){return Q.destroyed},busy(){return!1}}}function iT0(A){let Q=A[VY];if(Q?.destroyed===!1)if(A[gT0]===0||A[z3Q]===0)Q.unref(),A[PX].unref();else Q.ref(),A[PX].ref()}function nT0(A){WC(A.code!=="ERR_TLS_CERT_ALTNAME_INVALID"),this[VY][D1]=A,this[p$][kS](A)}function sT0(A,Q,B){if(B===0){let Y=new OS(`HTTP/2: "frameError" received - type ${A}, code ${Q}`);this[VY][D1]=Y,this[p$][kS](Y)}}function rT0(){let A=new wq("other side closed",OB.getSocketInfo(this[VY]));this.destroy(A),OB.destroy(this[VY],A)}function aT0(A){let Q=this[D1]||new wq(`HTTP/2: "GOAWAY" frame received with code ${A}`,OB.getSocketInfo(this[VY])),B=this[p$];if(B[VY]=null,B[or]=null,this.close(),this[PX]=null,OB.destroy(this[VY],Q),B[H1]{if(Q.aborted||Q.completed)return;if(N=N||new _T0,OB.errorRequest(A,Q,N),K!=null)K.removeAllListeners("data"),K.close(),A[kS](N),A[yG]();OB.destroy($,N)};try{Q.onConnect(H)}catch(N){OB.errorRequest(A,Q,N)}if(Q.aborted)return!1;if(J==="CONNECT"){if(Y.ref(),K=Y.request(E,{endStream:!1,signal:F}),!K.pending)Q.onUpgrade(null,null,K),++Y[GC],A[BF][A[H1]++]=null;else K.once("ready",()=>{Q.onUpgrade(null,null,K),++Y[GC],A[BF][A[H1]++]=null});return K.once("close",()=>{if(Y[GC]-=1,Y[GC]===0)Y.unref()}),K.setTimeout(B),!0}E[bT0]=C,E[mT0]=Z==="http:"?"http":"https";let D=J==="PUT"||J==="POST"||J==="PATCH";if($&&typeof $.read==="function")$.read(0);let L=OB.bodyLength($);if(OB.isFormDataLike($)){L3Q??=tK().extractBody;let[N,q]=L3Q($);E["content-type"]=q,$=N.stream,L=N.length}if(L==null)L=Q.contentLength;if(L===0||!D)L=null;if(BS0(J)&&L>0&&Q.contentLength!=null&&Q.contentLength!==L){if(A[yT0])return OB.errorRequest(A,Q,new sr),!1;process.emitWarning(new sr)}if(L!=null)WC($,"no body must not have content length"),E[uT0]=`${L}`;if(Y.ref(),N3Q.sendHeaders.hasSubscribers){let N="";for(let q in E)N+=`${q}: ${E[q]}\r -`;N3Q.sendHeaders.publish({request:Q,headers:N,socket:Y[VY]})}let z=J==="GET"||J==="HEAD"||$===null;if(W)E[dT0]="100-continue",K=Y.request(E,{endStream:z,signal:F}),K.once("continue",M);else K=Y.request(E,{endStream:z,signal:F}),M();return++Y[GC],K.setTimeout(B),K.once("response",(N)=>{let{[cT0]:q,...w}=N;if(Q.onResponseStarted(),Q.aborted){K.removeAllListeners("data");return}if(Q.onHeaders(Number(q),lT0(w),K.resume.bind(K),"")===!1)K.pause()}),K.on("data",(N)=>{if(Q.onData(N)===!1)K.pause()}),K.once("end",(N)=>{if(K.removeAllListeners("data"),K.state?.state==null||K.state.state<6){if(!Q.aborted&&!Q.completed)Q.onComplete({});A[BF][A[H1]++]=null,A[yG]()}else{if(--Y[GC],Y[GC]===0)Y.unref();H(N??new OS("HTTP/2: stream half-closed (remote)")),A[BF][A[H1]++]=null,A[ar]=A[H1],A[yG]()}}),K.once("close",()=>{if(K.removeAllListeners("data"),Y[GC]-=1,Y[GC]===0)Y.unref()}),K.once("error",function(N){K.removeAllListeners("data"),H(N)}),K.once("frameError",(N,q)=>{K.removeAllListeners("data"),H(new OS(`HTTP/2: "frameError" received - type ${N}, code ${q}`))}),K.on("aborted",()=>{K.removeAllListeners("data")}),K.on("timeout",()=>{let N=new OS(`HTTP/2: "stream timeout after ${B}"`);if(K.removeAllListeners("data"),Y[GC]-=1,Y[GC]===0)Y.unref();H(N)}),K.once("trailers",(N)=>{if(Q.aborted||Q.completed)return;Q.onComplete(N)}),!0;function M(){if(!$||L===0)q3Q(H,K,null,A,Q,A[VY],L,D);else if(OB.isBuffer($))q3Q(H,K,$,A,Q,A[VY],L,D);else if(OB.isBlobLike($))if(typeof $.stream==="function")M3Q(H,K,$.stream(),A,Q,A[VY],L,D);else CS0(H,K,$,A,Q,A[VY],L,D);else if(OB.isStream($))JS0(H,A[VY],D,K,$,A,Q,L);else if(OB.isIterable($))M3Q(H,K,$,A,Q,A[VY],L,D);else WC(!1)}}function q3Q(A,Q,B,Y,J,C,X,G){try{if(B!=null&&OB.isBuffer(B))WC(X===B.byteLength,"buffer body must have content length"),Q.cork(),Q.write(B),Q.uncork(),Q.end(),J.onBodySent(B);if(!G)C[TS]=!0;J.onRequestSent(),Y[yG]()}catch(W){A(W)}}function JS0(A,Q,B,Y,J,C,X,G){WC(G!==0||C[SS]===0,"stream body cannot be pipelined");let W=kT0(J,Y,(Z)=>{if(Z)OB.destroy(W,Z),A(Z);else{if(OB.removeAllListeners(W),X.onRequestSent(),!B)Q[TS]=!0;C[yG]()}});OB.addListener(W,"data",F);function F(Z){X.onBodySent(Z)}}async function CS0(A,Q,B,Y,J,C,X,G){WC(X===B.size,"blob body must have content length");try{if(X!=null&&X!==B.size)throw new sr;let W=Buffer.from(await B.arrayBuffer());if(Q.cork(),Q.write(W),Q.uncork(),Q.end(),J.onBodySent(W),J.onRequestSent(),!G)C[TS]=!0;Y[yG]()}catch(W){A(W)}}async function M3Q(A,Q,B,Y,J,C,X,G){WC(X!==0||Y[SS]===0,"iterator body cannot be pipelined");let W=null;function F(){if(W){let U=W;W=null,U()}}let Z=()=>new Promise((U,$)=>{if(WC(W===null),C[D1])$(C[D1]);else W=U});Q.on("close",F).on("drain",F);try{for await(let U of B){if(C[D1])throw C[D1];let $=Q.write(U);if(J.onBodySent(U),!$)await Z()}if(Q.end(),J.onRequestSent(),!G)C[TS]=!0;Y[yG]()}catch(U){A(U)}finally{Q.off("close",F).off("drain",F)}}R3Q.exports=pT0});var s$=R((osY,g3Q)=>{var gG=u("node:assert"),S3Q=u("node:net"),jq=u("node:http"),i$=lQ(),{ClientStats:XS0}=Vr(),{channels:BV}=x$(),GS0=TzQ(),WS0=f$(),{InvalidArgumentError:IY,InformationalError:FS0,ClientDestroyedError:ZS0}=QB(),$S0=Eq(),{kUrl:TX,kServerName:XF,kClient:US0,kBusy:tr,kConnect:ES0,kResuming:n$,kRunning:Sq,kPending:kq,kSize:Oq,kQueue:N1,kConnected:KS0,kConnecting:YV,kNeedDrain:JF,kKeepAliveDefaultTimeout:j3Q,kHostHeader:VS0,kPendingIdx:L1,kRunningIdx:hG,kError:IS0,kPipelining:_S,kKeepAliveTimeoutValue:HS0,kMaxHeadersSize:DS0,kKeepAliveMaxTimeout:NS0,kKeepAliveTimeoutThreshold:LS0,kHeadersTimeout:qS0,kBodyTimeout:MS0,kStrictContentLength:zS0,kConnector:Pq,kMaxRequests:er,kCounter:RS0,kClose:wS0,kDestroy:jS0,kDispatch:OS0,kLocalAddress:Tq,kMaxResponseSize:PS0,kOnError:TS0,kHTTPContext:HY,kMaxConcurrentStreams:SS0,kResume:CF}=B0(),kS0=D3Q(),_S0=w3Q(),YF=Symbol("kClosedResolve"),vS0=jq&&jq.maxHeaderSize&&Number.isInteger(jq.maxHeaderSize)&&jq.maxHeaderSize>0?()=>jq.maxHeaderSize:()=>{throw new IY("http module not available or http.maxHeaderSize invalid")},O3Q=()=>{};function k3Q(A){return A[_S]??A[HY]?.defaultPipelining??1}class _3Q extends WS0{constructor(A,{maxHeaderSize:Q,headersTimeout:B,socketTimeout:Y,requestTimeout:J,connectTimeout:C,bodyTimeout:X,idleTimeout:G,keepAlive:W,keepAliveTimeout:F,maxKeepAliveTimeout:Z,keepAliveMaxTimeout:U,keepAliveTimeoutThreshold:$,socketPath:E,pipelining:K,tls:I,strictContentLength:V,maxCachedSessions:H,connect:D,maxRequestsPerClient:L,localAddress:z,maxResponseSize:M,autoSelectFamily:N,autoSelectFamilyAttemptTimeout:q,maxConcurrentStreams:w,allowH2:P}={}){if(W!==void 0)throw new IY("unsupported keepAlive, use pipelining=0 instead");if(Y!==void 0)throw new IY("unsupported socketTimeout, use headersTimeout & bodyTimeout instead");if(J!==void 0)throw new IY("unsupported requestTimeout, use headersTimeout & bodyTimeout instead");if(G!==void 0)throw new IY("unsupported idleTimeout, use keepAliveTimeout instead");if(Z!==void 0)throw new IY("unsupported maxKeepAliveTimeout, use keepAliveMaxTimeout instead");if(Q!=null){if(!Number.isInteger(Q)||Q<1)throw new IY("invalid maxHeaderSize")}else Q=vS0();if(E!=null&&typeof E!=="string")throw new IY("invalid socketPath");if(C!=null&&(!Number.isFinite(C)||C<0))throw new IY("invalid connectTimeout");if(F!=null&&(!Number.isFinite(F)||F<=0))throw new IY("invalid keepAliveTimeout");if(U!=null&&(!Number.isFinite(U)||U<=0))throw new IY("invalid keepAliveMaxTimeout");if($!=null&&!Number.isFinite($))throw new IY("invalid keepAliveTimeoutThreshold");if(B!=null&&(!Number.isInteger(B)||B<0))throw new IY("headersTimeout must be a positive integer or zero");if(X!=null&&(!Number.isInteger(X)||X<0))throw new IY("bodyTimeout must be a positive integer or zero");if(D!=null&&typeof D!=="function"&&typeof D!=="object")throw new IY("connect must be a function or an object");if(L!=null&&(!Number.isInteger(L)||L<0))throw new IY("maxRequestsPerClient must be a positive number");if(z!=null&&(typeof z!=="string"||S3Q.isIP(z)===0))throw new IY("localAddress must be valid string IP address");if(M!=null&&(!Number.isInteger(M)||M<-1))throw new IY("maxResponseSize must be a positive number");if(q!=null&&(!Number.isInteger(q)||q<-1))throw new IY("autoSelectFamilyAttemptTimeout must be a positive number");if(P!=null&&typeof P!=="boolean")throw new IY("allowH2 must be a valid boolean value");if(w!=null&&(typeof w!=="number"||w<1))throw new IY("maxConcurrentStreams must be a positive integer, greater than 0");super();if(typeof D!=="function")D=$S0({...I,maxCachedSessions:H,allowH2:P,socketPath:E,timeout:C,...typeof N==="boolean"?{autoSelectFamily:N,autoSelectFamilyAttemptTimeout:q}:void 0,...D});this[TX]=i$.parseOrigin(A),this[Pq]=D,this[_S]=K!=null?K:1,this[DS0]=Q,this[j3Q]=F==null?4000:F,this[NS0]=U==null?600000:U,this[LS0]=$==null?2000:$,this[HS0]=this[j3Q],this[XF]=null,this[Tq]=z!=null?z:null,this[n$]=0,this[JF]=0,this[VS0]=`host: ${this[TX].hostname}${this[TX].port?`:${this[TX].port}`:""}\r -`,this[MS0]=X!=null?X:300000,this[qS0]=B!=null?B:300000,this[zS0]=V==null?!0:V,this[er]=L,this[YF]=null,this[PS0]=M>-1?M:-1,this[SS0]=w!=null?w:100,this[HY]=null,this[N1]=[],this[hG]=0,this[L1]=0,this[CF]=(_)=>Aa(this,_),this[TS0]=(_)=>v3Q(this,_)}get pipelining(){return this[_S]}set pipelining(A){this[_S]=A,this[CF](!0)}get stats(){return new XS0(this)}get[kq](){return this[N1].length-this[L1]}get[Sq](){return this[L1]-this[hG]}get[Oq](){return this[N1].length-this[hG]}get[KS0](){return!!this[HY]&&!this[YV]&&!this[HY].destroyed}get[tr](){return Boolean(this[HY]?.busy(null)||this[Oq]>=(k3Q(this)||1)||this[kq]>0)}[ES0](A){y3Q(this),this.once("connect",A)}[OS0](A,Q){let B=new GS0(this[TX].origin,A,Q);if(this[N1].push(B),this[n$]);else if(i$.bodyLength(B.body)==null&&i$.isIterable(B.body))this[n$]=1,queueMicrotask(()=>Aa(this));else this[CF](!0);if(this[n$]&&this[JF]!==2&&this[tr])this[JF]=2;return this[JF]<2}[wS0](){return new Promise((A)=>{if(this[Oq])this[YF]=A;else A(null)})}[jS0](A){return new Promise((Q)=>{let B=this[N1].splice(this[L1]);for(let J=0;J{if(this[YF])this[YF](),this[YF]=null;Q(null)};if(this[HY])this[HY].destroy(A,Y),this[HY]=null;else queueMicrotask(Y);this[CF]()})}}function v3Q(A,Q){if(A[Sq]===0&&Q.code!=="UND_ERR_INFO"&&Q.code!=="UND_ERR_SOCKET"){gG(A[L1]===A[hG]);let B=A[N1].splice(A[hG]);for(let Y=0;Y{if(C){P3Q(A,C,{host:Q,hostname:B,protocol:Y,port:J}),A[CF]();return}if(A.destroyed){i$.destroy(X.on("error",O3Q),new ZS0),A[CF]();return}gG(X);try{A[HY]=X.alpnProtocol==="h2"?_S0(A,X):kS0(A,X)}catch(G){X.destroy().on("error",O3Q),P3Q(A,G,{host:Q,hostname:B,protocol:Y,port:J}),A[CF]();return}if(A[YV]=!1,X[RS0]=0,X[er]=A[er],X[US0]=A,X[IS0]=null,BV.connected.hasSubscribers)BV.connected.publish({connectParams:{host:Q,hostname:B,protocol:Y,port:J,version:A[HY]?.version,servername:A[XF],localAddress:A[Tq]},connector:A[Pq],socket:X});A.emit("connect",A[TX],[A]),A[CF]()})}function P3Q(A,Q,{host:B,hostname:Y,protocol:J,port:C}){if(A.destroyed)return;if(A[YV]=!1,BV.connectError.hasSubscribers)BV.connectError.publish({connectParams:{host:B,hostname:Y,protocol:J,port:C,version:A[HY]?.version,servername:A[XF],localAddress:A[Tq]},connector:A[Pq],error:Q});if(Q.code==="ERR_TLS_CERT_ALTNAME_INVALID"){gG(A[Sq]===0);while(A[kq]>0&&A[N1][A[L1]].servername===A[XF]){let X=A[N1][A[L1]++];i$.errorRequest(A,X,Q)}}else v3Q(A,Q);A.emit("connectionError",A[TX],[A],Q)}function T3Q(A){A[JF]=0,A.emit("drain",A[TX],[A])}function Aa(A,Q){if(A[n$]===2)return;if(A[n$]=2,yS0(A,Q),A[n$]=0,A[hG]>256)A[N1].splice(0,A[hG]),A[L1]-=A[hG],A[hG]=0}function yS0(A,Q){while(!0){if(A.destroyed){gG(A[kq]===0);return}if(A[YF]&&!A[Oq]){A[YF](),A[YF]=null;return}if(A[HY])A[HY].resume();if(A[tr])A[JF]=2;else if(A[JF]===2){if(Q)A[JF]=1,queueMicrotask(()=>T3Q(A));else T3Q(A);continue}if(A[kq]===0)return;if(A[Sq]>=(k3Q(A)||1))return;let B=A[N1][A[L1]];if(A[TX].protocol==="https:"&&A[XF]!==B.servername){if(A[Sq]>0)return;A[XF]=B.servername,A[HY]?.destroy(new FS0("servername changed"),()=>{A[HY]=null,Aa(A)})}if(A[YV])return;if(!A[HY]){y3Q(A);return}if(A[HY].destroyed)return;if(A[HY].busy(B))return;if(!B.aborted&&A[HY].write(B))A[L1]++;else A[N1].splice(A[L1],1)}}g3Q.exports=_3Q});var Ba=R((tsY,h3Q)=>{class Qa{bottom=0;top=0;list=Array(2048).fill(void 0);next=null;isEmpty(){return this.top===this.bottom}isFull(){return(this.top+1&2047)===this.bottom}push(A){this.list[this.top]=A,this.top=this.top+1&2047}shift(){let A=this.list[this.bottom];if(A===void 0)return null;return this.list[this.bottom]=void 0,this.bottom=this.bottom+1&2047,A}}h3Q.exports=class{constructor(){this.head=this.tail=new Qa}isEmpty(){return this.head.isEmpty()}push(Q){if(this.head.isFull())this.head=this.head.next=new Qa;this.head.push(Q)}shift(){let Q=this.tail,B=Q.shift();if(Q.isEmpty()&&Q.next!==null)this.tail=Q.next,Q.next=null;return B}}});var Ga=R((esY,i3Q)=>{var{PoolStats:gS0}=Vr(),hS0=f$(),xS0=Ba(),{kConnected:Ya,kSize:x3Q,kRunning:f3Q,kPending:b3Q,kQueued:_q,kBusy:fS0,kFree:bS0,kUrl:mS0,kClose:uS0,kDestroy:dS0,kDispatch:cS0}=B0(),jY=Symbol("clients"),R9=Symbol("needDrain"),vq=Symbol("queue"),Ja=Symbol("closed resolve"),Ca=Symbol("onDrain"),m3Q=Symbol("onConnect"),u3Q=Symbol("onDisconnect"),d3Q=Symbol("onConnectionError"),Xa=Symbol("get dispatcher"),c3Q=Symbol("add client"),l3Q=Symbol("remove client");class p3Q extends hS0{[vq]=new xS0;[_q]=0;[jY]=[];[R9]=!1;[Ca](A,Q,B){let Y=this[vq],J=!1;while(!J){let C=Y.shift();if(!C)break;this[_q]--,J=!A.dispatch(C.opts,C.handler)}if(A[R9]=J,!J&&this[R9])this[R9]=!1,this.emit("drain",Q,[this,...B]);if(this[Ja]&&Y.isEmpty()){let C=Array(this[jY].length);for(let X=0;X{this.emit("connect",A,[this,...Q])};[u3Q]=(A,Q,B)=>{this.emit("disconnect",A,[this,...Q],B)};[d3Q]=(A,Q,B)=>{this.emit("connectionError",A,[this,...Q],B)};get[fS0](){return this[R9]}get[Ya](){let A=0;for(let{[Ya]:Q}of this[jY])A+=Q;return A}get[bS0](){let A=0;for(let{[Ya]:Q,[R9]:B}of this[jY])A+=Q&&!B;return A}get[b3Q](){let A=this[_q];for(let{[b3Q]:Q}of this[jY])A+=Q;return A}get[f3Q](){let A=0;for(let{[f3Q]:Q}of this[jY])A+=Q;return A}get[x3Q](){let A=this[_q];for(let{[x3Q]:Q}of this[jY])A+=Q;return A}get stats(){return new gS0(this)}[uS0](){if(this[vq].isEmpty()){let A=Array(this[jY].length);for(let Q=0;Q{this[Ja]=A})}[dS0](A){while(!0){let B=this[vq].shift();if(!B)break;B.handler.onError(A)}let Q=Array(this[jY].length);for(let B=0;B{if(this[R9])this[Ca](A,A[mS0],[A,this])});return this}[l3Q](A){A.close(()=>{let Q=this[jY].indexOf(A);if(Q!==-1)this[jY].splice(Q,1)}),this[R9]=this[jY].some((Q)=>!Q[R9]&&Q.closed!==!0&&Q.destroyed!==!0)}}i3Q.exports={PoolBase:p3Q,kClients:jY,kNeedDrain:R9,kAddClient:c3Q,kRemoveClient:l3Q,kGetDispatcher:Xa}});var JV=R((ArY,o3Q)=>{var{PoolBase:lS0,kClients:vS,kNeedDrain:pS0,kAddClient:iS0,kGetDispatcher:nS0,kRemoveClient:sS0}=Ga(),rS0=s$(),{InvalidArgumentError:Wa}=QB(),n3Q=lQ(),{kUrl:s3Q}=B0(),aS0=Eq(),yS=Symbol("options"),Fa=Symbol("connections"),r3Q=Symbol("factory");function oS0(A,Q){return new rS0(A,Q)}class a3Q extends lS0{constructor(A,{connections:Q,factory:B=oS0,connect:Y,connectTimeout:J,tls:C,maxCachedSessions:X,socketPath:G,autoSelectFamily:W,autoSelectFamilyAttemptTimeout:F,allowH2:Z,clientTtl:U,...$}={}){if(Q!=null&&(!Number.isFinite(Q)||Q<0))throw new Wa("invalid connections");if(typeof B!=="function")throw new Wa("factory must be a function.");if(Y!=null&&typeof Y!=="function"&&typeof Y!=="object")throw new Wa("connect must be a function or an object");if(typeof Y!=="function")Y=aS0({...C,maxCachedSessions:X,allowH2:Z,socketPath:G,timeout:J,...typeof W==="boolean"?{autoSelectFamily:W,autoSelectFamilyAttemptTimeout:F}:void 0,...Y});super();this[Fa]=Q||null,this[s3Q]=n3Q.parseOrigin(A),this[yS]={...n3Q.deepClone($),connect:Y,allowH2:Z,clientTtl:U},this[yS].interceptors=$.interceptors?{...$.interceptors}:void 0,this[r3Q]=B,this.on("connect",(E,K)=>{if(U!=null&&U>0)for(let I of K)Object.assign(I,{ttl:Date.now()})}),this.on("connectionError",(E,K,I)=>{for(let V of K){let H=this[vS].indexOf(V);if(H!==-1)this[vS].splice(H,1)}})}[nS0](){let A=this[yS].clientTtl;for(let Q of this[vS])if(A!=null&&A>0&&Q.ttl&&Date.now()-Q.ttl>A)this[sS0](Q);else if(!Q[pS0])return Q;if(!this[Fa]||this[vS].length{var{BalancedPoolMissingUpstreamError:tS0,InvalidArgumentError:eS0}=QB(),{PoolBase:Ak0,kClients:bJ,kNeedDrain:yq,kAddClient:Qk0,kRemoveClient:Bk0,kGetDispatcher:Yk0}=Ga(),Jk0=JV(),{kUrl:Za}=B0(),{parseOrigin:t3Q}=lQ(),e3Q=Symbol("factory"),gS=Symbol("options"),ARQ=Symbol("kGreatestCommonDivisor"),r$=Symbol("kCurrentWeight"),a$=Symbol("kIndex"),FC=Symbol("kWeight"),hS=Symbol("kMaxWeightPerServer"),xS=Symbol("kErrorPenalty");function Ck0(A,Q){if(A===0)return Q;while(Q!==0){let B=Q;Q=A%Q,A=B}return A}function Xk0(A,Q){return new Jk0(A,Q)}class QRQ extends Ak0{constructor(A=[],{factory:Q=Xk0,...B}={}){if(typeof Q!=="function")throw new eS0("factory must be a function.");super();if(this[gS]=B,this[a$]=-1,this[r$]=0,this[hS]=this[gS].maxWeightPerServer||100,this[xS]=this[gS].errorPenalty||15,!Array.isArray(A))A=[A];this[e3Q]=Q;for(let Y of A)this.addUpstream(Y);this._updateBalancedPoolStats()}addUpstream(A){let Q=t3Q(A).origin;if(this[bJ].find((Y)=>Y[Za].origin===Q&&Y.closed!==!0&&Y.destroyed!==!0))return this;let B=this[e3Q](Q,Object.assign({},this[gS]));this[Qk0](B),B.on("connect",()=>{B[FC]=Math.min(this[hS],B[FC]+this[xS])}),B.on("connectionError",()=>{B[FC]=Math.max(1,B[FC]-this[xS]),this._updateBalancedPoolStats()}),B.on("disconnect",(...Y)=>{let J=Y[2];if(J&&J.code==="UND_ERR_SOCKET")B[FC]=Math.max(1,B[FC]-this[xS]),this._updateBalancedPoolStats()});for(let Y of this[bJ])Y[FC]=this[hS];return this._updateBalancedPoolStats(),this}_updateBalancedPoolStats(){let A=0;for(let Q=0;QY[Za].origin===Q&&Y.closed!==!0&&Y.destroyed!==!0);if(B)this[Bk0](B);return this}get upstreams(){return this[bJ].filter((A)=>A.closed!==!0&&A.destroyed!==!0).map((A)=>A[Za].origin)}[Yk0](){if(this[bJ].length===0)throw new tS0;if(!this[bJ].find((J)=>!J[yq]&&J.closed!==!0&&J.destroyed!==!0))return;if(this[bJ].map((J)=>J[yq]).reduce((J,C)=>J&&C,!0))return;let B=0,Y=this[bJ].findIndex((J)=>!J[yq]);while(B++this[bJ][Y][FC]&&!J[yq])Y=this[a$];if(this[a$]===0){if(this[r$]=this[r$]-this[ARQ],this[r$]<=0)this[r$]=this[hS]}if(J[FC]>=this[r$]&&!J[yq])return J}return this[r$]=this[bJ][Y][FC],this[a$]=Y,this[bJ][Y]}}BRQ.exports=QRQ});var o$=R((BrY,$RQ)=>{var{InvalidArgumentError:fS,MaxOriginsReachedError:Gk0}=QB(),{kClients:ZC,kRunning:JRQ,kClose:Wk0,kDestroy:Fk0,kDispatch:Zk0,kUrl:$k0}=B0(),Uk0=f$(),Ek0=JV(),Kk0=s$(),Vk0=lQ(),CRQ=Symbol("onConnect"),XRQ=Symbol("onDisconnect"),GRQ=Symbol("onConnectionError"),WRQ=Symbol("onDrain"),FRQ=Symbol("factory"),$a=Symbol("options"),gq=Symbol("origins");function Ik0(A,Q){return Q&&Q.connections===1?new Kk0(A,Q):new Ek0(A,Q)}class ZRQ extends Uk0{constructor({factory:A=Ik0,maxOrigins:Q=1/0,connect:B,...Y}={}){if(typeof A!=="function")throw new fS("factory must be a function.");if(B!=null&&typeof B!=="function"&&typeof B!=="object")throw new fS("connect must be a function or an object");if(typeof Q!=="number"||Number.isNaN(Q)||Q<=0)throw new fS("maxOrigins must be a number greater than 0");super();if(B&&typeof B!=="function")B={...B};this[$a]={...Vk0.deepClone(Y),maxOrigins:Q,connect:B},this[FRQ]=A,this[ZC]=new Map,this[gq]=new Set,this[WRQ]=(J,C)=>{this.emit("drain",J,[this,...C])},this[CRQ]=(J,C)=>{this.emit("connect",J,[this,...C])},this[XRQ]=(J,C,X)=>{this.emit("disconnect",J,[this,...C],X)},this[GRQ]=(J,C,X)=>{this.emit("connectionError",J,[this,...C],X)}}get[JRQ](){let A=0;for(let{dispatcher:Q}of this[ZC].values())A+=Q[JRQ];return A}[Zk0](A,Q){let B;if(A.origin&&(typeof A.origin==="string"||A.origin instanceof URL))B=String(A.origin);else throw new fS("opts.origin must be a non-empty string or URL.");if(this[gq].size>=this[$a].maxOrigins&&!this[gq].has(B))throw new Gk0;let Y=this[ZC].get(B),J=Y&&Y.dispatcher;if(!J){let C=(X)=>{let G=this[ZC].get(B);if(G){if(X)G.count-=1;if(G.count<=0)this[ZC].delete(B),G.dispatcher.close();this[gq].delete(B)}};J=this[FRQ](A.origin,this[$a]).on("drain",this[WRQ]).on("connect",(X,G)=>{let W=this[ZC].get(B);if(W)W.count+=1;this[CRQ](X,G)}).on("disconnect",(X,G,W)=>{C(!0),this[XRQ](X,G,W)}).on("connectionError",(X,G,W)=>{C(!1),this[GRQ](X,G,W)}),this[ZC].set(B,{count:0,dispatcher:J}),this[gq].add(B)}return J.dispatch(A,Q)}[Wk0](){let A=[];for(let{dispatcher:Q}of this[ZC].values())A.push(Q.close());return this[ZC].clear(),Promise.all(A)}[Fk0](A){let Q=[];for(let{dispatcher:B}of this[ZC].values())Q.push(B.destroy(A));return this[ZC].clear(),Promise.all(Q)}get stats(){let A={};for(let{dispatcher:Q}of this[ZC].values())if(Q.stats)A[Q[$k0].origin]=Q.stats;return A}}$RQ.exports=ZRQ});var Ka=R((YrY,RRQ)=>{var{kProxy:Ua,kClose:HRQ,kDestroy:DRQ,kDispatch:URQ}=B0(),Hk0=o$(),NRQ=JV(),LRQ=f$(),{InvalidArgumentError:CV,RequestAbortedError:Dk0,SecureProxyConnectionError:Nk0}=QB(),ERQ=Eq(),qRQ=s$(),bS=Symbol("proxy agent"),mS=Symbol("proxy client"),GF=Symbol("proxy headers"),Ea=Symbol("request tls settings"),KRQ=Symbol("proxy tls settings"),VRQ=Symbol("connect endpoint function"),IRQ=Symbol("tunnel proxy");function Lk0(A){return A==="https:"?443:80}function qk0(A,Q){return new NRQ(A,Q)}var Mk0=()=>{};function zk0(A,Q){if(Q.connections===1)return new qRQ(A,Q);return new NRQ(A,Q)}class MRQ extends LRQ{#A;constructor(A,{headers:Q={},connect:B,factory:Y}){if(!A)throw new CV("Proxy URL is mandatory");super();if(this[GF]=Q,Y)this.#A=Y(A,{connect:B});else this.#A=new qRQ(A,{connect:B})}[URQ](A,Q){let B=Q.onHeaders;Q.onHeaders=function(X,G,W){if(X===407){if(typeof Q.onError==="function")Q.onError(new CV("Proxy Authentication Required (407)"));return}if(B)B.call(this,X,G,W)};let{origin:Y,path:J="/",headers:C={}}=A;if(A.path=Y+J,!("host"in C)&&!("Host"in C)){let{host:X}=new URL(Y);C.host=X}return A.headers={...this[GF],...C},this.#A[URQ](A,Q)}[HRQ](){return this.#A.close()}[DRQ](A){return this.#A.destroy(A)}}class zRQ extends LRQ{constructor(A){if(!A||typeof A==="object"&&!(A instanceof URL)&&!A.uri)throw new CV("Proxy uri is mandatory");let{clientFactory:Q=qk0}=A;if(typeof Q!=="function")throw new CV("Proxy opts.clientFactory must be a function.");let{proxyTunnel:B=!0}=A;super();let Y=this.#A(A),{href:J,origin:C,port:X,protocol:G,username:W,password:F,hostname:Z}=Y;if(this[Ua]={uri:J,protocol:G},this[Ea]=A.requestTls,this[KRQ]=A.proxyTls,this[GF]=A.headers||{},this[IRQ]=B,A.auth&&A.token)throw new CV("opts.auth cannot be used in combination with opts.token");else if(A.auth)this[GF]["proxy-authorization"]=`Basic ${A.auth}`;else if(A.token)this[GF]["proxy-authorization"]=A.token;else if(W&&F)this[GF]["proxy-authorization"]=`Basic ${Buffer.from(`${decodeURIComponent(W)}:${decodeURIComponent(F)}`).toString("base64")}`;let U=ERQ({...A.proxyTls});this[VRQ]=ERQ({...A.requestTls});let $=A.factory||zk0,E=(K,I)=>{let{protocol:V}=new URL(K);if(!this[IRQ]&&V==="http:"&&this[Ua].protocol==="http:")return new MRQ(this[Ua].uri,{headers:this[GF],connect:U,factory:$});return $(K,I)};this[mS]=Q(Y,{connect:U}),this[bS]=new Hk0({...A,factory:E,connect:async(K,I)=>{let V=K.host;if(!K.port)V+=`:${Lk0(K.protocol)}`;try{let{socket:H,statusCode:D}=await this[mS].connect({origin:C,port:X,path:V,signal:K.signal,headers:{...this[GF],host:K.host,...K.connections==null||K.connections>0?{"proxy-connection":"keep-alive"}:{}},servername:this[KRQ]?.servername||Z});if(D!==200)H.on("error",Mk0).destroy(),I(new Dk0(`Proxy response (${D}) !== 200 when HTTP Tunneling`));if(K.protocol!=="https:"){I(null,H);return}let L;if(this[Ea])L=this[Ea].servername;else L=K.servername;this[VRQ]({...K,servername:L,httpSocket:H},I)}catch(H){if(H.code==="ERR_TLS_CERT_ALTNAME_INVALID")I(new Nk0(H));else I(H)}}})}dispatch(A,Q){let B=Rk0(A.headers);if(wk0(B),B&&!("host"in B)&&!("Host"in B)){let{host:Y}=new URL(A.origin);B.host=Y}return this[bS].dispatch({...A,headers:B},Q)}#A(A){if(typeof A==="string")return new URL(A);else if(A instanceof URL)return A;else return new URL(A.uri)}[HRQ](){return Promise.all([this[bS].close(),this[mS].close()])}[DRQ](){return Promise.all([this[bS].destroy(),this[mS].destroy()])}}function Rk0(A){if(Array.isArray(A)){let Q={};for(let B=0;BB.toLowerCase()==="proxy-authorization"))throw new CV("Proxy-Authorization should be sent in ProxyAgent constructor")}RRQ.exports=zRQ});var SRQ=R((JrY,TRQ)=>{var jk0=f$(),{kClose:Ok0,kDestroy:Pk0,kClosed:wRQ,kDestroyed:jRQ,kDispatch:Tk0,kNoProxyAgent:hq,kHttpProxyAgent:WF,kHttpsProxyAgent:t$}=B0(),ORQ=Ka(),Sk0=o$(),kk0={"http:":80,"https:":443};class PRQ extends jk0{#A=null;#Q=null;#B=null;constructor(A={}){super();this.#B=A;let{httpProxy:Q,httpsProxy:B,noProxy:Y,...J}=A;this[hq]=new Sk0(J);let C=Q??process.env.http_proxy??process.env.HTTP_PROXY;if(C)this[WF]=new ORQ({...J,uri:C});else this[WF]=this[hq];let X=B??process.env.https_proxy??process.env.HTTPS_PROXY;if(X)this[t$]=new ORQ({...J,uri:X});else this[t$]=this[WF];this.#C()}[Tk0](A,Q){let B=new URL(A.origin);return this.#Y(B).dispatch(A,Q)}[Ok0](){return Promise.all([this[hq].close(),!this[WF][wRQ]&&this[WF].close(),!this[t$][wRQ]&&this[t$].close()])}[Pk0](A){return Promise.all([this[hq].destroy(A),!this[WF][jRQ]&&this[WF].destroy(A),!this[t$][jRQ]&&this[t$].destroy(A)])}#Y(A){let{protocol:Q,host:B,port:Y}=A;if(B=B.replace(/:\d*$/,"").toLowerCase(),Y=Number.parseInt(Y,10)||kk0[Q]||0,!this.#J(B,Y))return this[hq];if(Q==="https:")return this[t$];return this[WF]}#J(A,Q){if(this.#W)this.#C();if(this.#Q.length===0)return!0;if(this.#A==="*")return!1;for(let B=0;B{var XV=u("node:assert"),{kRetryHandlerDefaultRetry:kRQ}=B0(),{RequestRetryError:xq}=QB(),_k0=Zq(),{isDisturbed:_RQ,parseRangeHeader:vRQ,wrapRequestBody:vk0}=lQ();function yk0(A){let Q=new Date(A).getTime();return isNaN(Q)?0:Q-Date.now()}class Va{constructor(A,{dispatch:Q,handler:B}){let{retryOptions:Y,...J}=A,{retry:C,maxRetries:X,maxTimeout:G,minTimeout:W,timeoutFactor:F,methods:Z,errorCodes:U,retryAfter:$,statusCodes:E,throwOnError:K}=Y??{};this.error=null,this.dispatch=Q,this.handler=_k0.wrap(B),this.opts={...J,body:vk0(A.body)},this.retryOpts={throwOnError:K??!0,retry:C??Va[kRQ],retryAfter:$??!0,maxTimeout:G??30000,minTimeout:W??500,timeoutFactor:F??2,maxRetries:X??5,methods:Z??["GET","HEAD","OPTIONS","PUT","DELETE","TRACE"],statusCodes:E??[500,502,503,504,429],errorCodes:U??["ECONNRESET","ECONNREFUSED","ENOTFOUND","ENETDOWN","ENETUNREACH","EHOSTDOWN","EHOSTUNREACH","EPIPE","UND_ERR_SOCKET"]},this.retryCount=0,this.retryCountCheckpoint=0,this.headersSent=!1,this.start=0,this.end=null,this.etag=null}onResponseStartWithRetry(A,Q,B,Y,J){if(this.retryOpts.throwOnError){if(this.retryOpts.statusCodes.includes(Q)===!1)this.headersSent=!0,this.handler.onResponseStart?.(A,Q,B,Y);else this.error=J;return}if(_RQ(this.opts.body)){this.headersSent=!0,this.handler.onResponseStart?.(A,Q,B,Y);return}function C(X){if(X){this.headersSent=!0,this.headersSent=!0,this.handler.onResponseStart?.(A,Q,B,Y),A.resume();return}this.error=J,A.resume()}A.pause(),this.retryOpts.retry(J,{state:{counter:this.retryCount},opts:{retryOptions:this.retryOpts,...this.opts}},C.bind(this))}onRequestStart(A,Q){if(!this.headersSent)this.handler.onRequestStart?.(A,Q)}onRequestUpgrade(A,Q,B,Y){this.handler.onRequestUpgrade?.(A,Q,B,Y)}static[kRQ](A,{state:Q,opts:B},Y){let{statusCode:J,code:C,headers:X}=A,{method:G,retryOptions:W}=B,{maxRetries:F,minTimeout:Z,maxTimeout:U,timeoutFactor:$,statusCodes:E,errorCodes:K,methods:I}=W,{counter:V}=Q;if(C&&C!=="UND_ERR_REQ_RETRY"&&!K.includes(C)){Y(A);return}if(Array.isArray(I)&&!I.includes(G)){Y(A);return}if(J!=null&&Array.isArray(E)&&!E.includes(J)){Y(A);return}if(V>F){Y(A);return}let H=X?.["retry-after"];if(H)H=Number(H),H=Number.isNaN(H)?yk0(X["retry-after"]):H*1000;let D=H>0?Math.min(H,U):Math.min(Z*$**(V-1),U);setTimeout(()=>Y(null),D)}onResponseStart(A,Q,B,Y){if(this.error=null,this.retryCount+=1,Q>=300){let J=new xq("Request failed",Q,{headers:B,data:{count:this.retryCount}});this.onResponseStartWithRetry(A,Q,B,Y,J);return}if(this.headersSent){if(Q!==206&&(this.start>0||Q!==200))throw new xq("server does not support the range header and the payload was partially consumed",Q,{headers:B,data:{count:this.retryCount}});let J=vRQ(B["content-range"]);if(!J)throw new xq("Content-Range mismatch",Q,{headers:B,data:{count:this.retryCount}});if(this.etag!=null&&this.etag!==B.etag)throw new xq("ETag mismatch",Q,{headers:B,data:{count:this.retryCount}});let{start:C,size:X,end:G=X?X-1:null}=J;XV(this.start===C,"content-range mismatch"),XV(this.end==null||this.end===G,"content-range mismatch");return}if(this.end==null){if(Q===206){let J=vRQ(B["content-range"]);if(J==null){this.headersSent=!0,this.handler.onResponseStart?.(A,Q,B,Y);return}let{start:C,size:X,end:G=X?X-1:null}=J;XV(C!=null&&Number.isFinite(C),"content-range mismatch"),XV(G!=null&&Number.isFinite(G),"invalid content-length"),this.start=C,this.end=G}if(this.end==null){let J=B["content-length"];this.end=J!=null?Number(J)-1:null}if(XV(Number.isFinite(this.start)),XV(this.end==null||Number.isFinite(this.end),"invalid content-length"),this.resume=!0,this.etag=B.etag!=null?B.etag:null,this.etag!=null&&this.etag[0]==="W"&&this.etag[1]==="/")this.etag=null;this.headersSent=!0,this.handler.onResponseStart?.(A,Q,B,Y)}else throw new xq("Request failed",Q,{headers:B,data:{count:this.retryCount}})}onResponseData(A,Q){if(this.error)return;this.start+=Q.length,this.handler.onResponseData?.(A,Q)}onResponseEnd(A,Q){if(this.error&&this.retryOpts.throwOnError)throw this.error;if(!this.error)return this.retryCount=0,this.handler.onResponseEnd?.(A,Q);this.retry(A)}retry(A){if(this.start!==0){let Q={range:`bytes=${this.start}-${this.end??""}`};if(this.etag!=null)Q["if-match"]=this.etag;this.opts={...this.opts,headers:{...this.opts.headers,...Q}}}try{this.retryCountCheckpoint=this.retryCount,this.dispatch(this.opts,this)}catch(Q){this.handler.onResponseError?.(A,Q)}}onResponseError(A,Q){if(A?.aborted||_RQ(this.opts.body)){this.handler.onResponseError?.(A,Q);return}function B(Y){if(!Y){this.retry(A);return}this.handler?.onResponseError?.(A,Y)}if(this.retryCount-this.retryCountCheckpoint>0)this.retryCount=this.retryCountCheckpoint+(this.retryCount-this.retryCountCheckpoint);else this.retryCount+=1;this.retryOpts.retry(Q,{state:{counter:this.retryCount},opts:{retryOptions:this.retryOpts,...this.opts}},B.bind(this))}}yRQ.exports=Va});var xRQ=R((XrY,hRQ)=>{var gk0=$q(),hk0=uS();class gRQ extends gk0{#A=null;#Q=null;constructor(A,Q={}){super(Q);this.#A=A,this.#Q=Q}dispatch(A,Q){let B=new hk0({...A,retryOptions:this.#Q},{dispatch:this.#A.dispatch.bind(this.#A),handler:Q});return this.#A.dispatch(A,B)}close(){return this.#A.close()}destroy(){return this.#A.destroy()}}hRQ.exports=gRQ});var uRQ=R((GrY,mRQ)=>{var{connect:xk0}=u("node:net"),{kClose:fk0,kDestroy:bk0}=B0(),{InvalidArgumentError:fRQ}=QB(),mk0=lQ(),uk0=s$(),dk0=f$();class bRQ extends dk0{#A=null;constructor(A,Q){if(typeof A==="string")A=new URL(A);if(A.protocol!=="http:")throw new fRQ("h2c-client: Only h2c protocol is supported");let{connect:B,maxConcurrentStreams:Y,pipelining:J,...C}=Q??{},X=100,G=100;if(Y!=null&&Number.isInteger(Y)&&Y>0)X=Y;if(J!=null&&Number.isInteger(J)&&J>0)G=J;if(G>X)throw new fRQ("h2c-client: pipelining cannot be greater than maxConcurrentStreams");super();this.#A=new uk0(A,{...C,connect:this.#Q(B),maxConcurrentStreams:X,pipelining:G,allowH2:!0})}#Q(A){return(Q,B)=>{let Y=A?.connectOpts??1e4,{hostname:J,port:C,pathname:X}=Q,G=xk0({...Q,host:J,port:C,pathname:X});if(Q.keepAlive==null||Q.keepAlive){let F=Q.keepAliveInitialDelay==null?60000:Q.keepAliveInitialDelay;G.setKeepAlive(!0,F)}G.alpnProtocol="h2";let W=mk0.setupConnectTimeout(new WeakRef(G),{timeout:Y,hostname:J,port:C});return G.setNoDelay(!0).once("connect",function(){if(queueMicrotask(W),B){let F=B;B=null,F(null,this)}}).on("error",function(F){if(queueMicrotask(W),B){let Z=B;B=null,Z(F)}}),G}}dispatch(A,Q){return this.#A.dispatch(A,Q)}[fk0](){return this.#A.close()}[bk0](){return this.#A.destroy()}}mRQ.exports=bRQ});var oRQ=R((WrY,aRQ)=>{var pRQ=u("node:assert"),{Readable:ck0}=u("node:stream"),{RequestAbortedError:iRQ,NotSupportedError:lk0,InvalidArgumentError:pk0,AbortError:dS}=QB(),nRQ=lQ(),{ReadableStreamFrom:ik0}=lQ(),p8=Symbol("kConsume"),cS=Symbol("kReading"),e$=Symbol("kBody"),dRQ=Symbol("kAbort"),sRQ=Symbol("kContentType"),Ia=Symbol("kContentLength"),Ha=Symbol("kUsed"),lS=Symbol("kBytesRead"),nk0=()=>{};class rRQ extends ck0{constructor({resume:A,abort:Q,contentType:B="",contentLength:Y,highWaterMark:J=65536}){super({autoDestroy:!0,read:A,highWaterMark:J});this._readableState.dataEmitted=!1,this[dRQ]=Q,this[p8]=null,this[lS]=0,this[e$]=null,this[Ha]=!1,this[sRQ]=B,this[Ia]=Number.isFinite(Y)?Y:null,this[cS]=!1}_destroy(A,Q){if(!A&&!this._readableState.endEmitted)A=new iRQ;if(A)this[dRQ]();if(!this[Ha])setImmediate(Q,A);else Q(A)}on(A,Q){if(A==="data"||A==="readable")this[cS]=!0,this[Ha]=!0;return super.on(A,Q)}addListener(A,Q){return this.on(A,Q)}off(A,Q){let B=super.off(A,Q);if(A==="data"||A==="readable")this[cS]=this.listenerCount("data")>0||this.listenerCount("readable")>0;return B}removeListener(A,Q){return this.off(A,Q)}push(A){if(A){if(this[lS]+=A.length,this[p8])return Na(this[p8],A),this[cS]?super.push(A):!0}return super.push(A)}text(){return fq(this,"text")}json(){return fq(this,"json")}blob(){return fq(this,"blob")}bytes(){return fq(this,"bytes")}arrayBuffer(){return fq(this,"arrayBuffer")}async formData(){throw new lk0}get bodyUsed(){return nRQ.isDisturbed(this)}get body(){if(!this[e$]){if(this[e$]=ik0(this),this[p8])this[e$].getReader(),pRQ(this[e$].locked)}return this[e$]}dump(A){let Q=A?.signal;if(Q!=null&&(typeof Q!=="object"||!("aborted"in Q)))return Promise.reject(new pk0("signal must be an AbortSignal"));let B=A?.limit&&Number.isFinite(A.limit)?A.limit:131072;if(Q?.aborted)return Promise.reject(Q.reason??new dS);if(this._readableState.closeEmitted)return Promise.resolve(null);return new Promise((Y,J)=>{if(this[Ia]&&this[Ia]>B||this[lS]>B)this.destroy(new dS);if(Q){let C=()=>{this.destroy(Q.reason??new dS)};Q.addEventListener("abort",C),this.on("close",function(){if(Q.removeEventListener("abort",C),Q.aborted)J(Q.reason??new dS);else Y(null)})}else this.on("close",Y);this.on("error",nk0).on("data",()=>{if(this[lS]>B)this.destroy()}).resume()})}setEncoding(A){if(Buffer.isEncoding(A))this._readableState.encoding=A;return this}}function sk0(A){return A[e$]?.locked===!0||A[p8]!==null}function rk0(A){return nRQ.isDisturbed(A)||sk0(A)}function fq(A,Q){return pRQ(!A[p8]),new Promise((B,Y)=>{if(rk0(A)){let J=A._readableState;if(J.destroyed&&J.closeEmitted===!1)A.on("error",Y).on("close",()=>{Y(TypeError("unusable"))});else Y(J.errored??TypeError("unusable"))}else queueMicrotask(()=>{A[p8]={type:Q,stream:A,resolve:B,reject:Y,length:0,body:[]},A.on("error",function(J){La(this[p8],J)}).on("close",function(){if(this[p8].body!==null)La(this[p8],new iRQ)}),ak0(A[p8])})})}function ak0(A){if(A.body===null)return;let{_readableState:Q}=A.stream;if(Q.bufferIndex){let B=Q.bufferIndex,Y=Q.buffer.length;for(let J=B;J2&&Y[0]===239&&Y[1]===187&&Y[2]===191?3:0;if(!B||B==="utf8"||B==="utf-8")return Y.utf8Slice(C,J);else return Y.subarray(C,J).toString(B)}function cRQ(A,Q){if(A.length===0||Q===0)return new Uint8Array(0);if(A.length===1)return new Uint8Array(A[0]);let B=new Uint8Array(Buffer.allocUnsafeSlow(Q).buffer),Y=0;for(let J=0;J{var ok0=u("node:assert"),{AsyncResource:tk0}=u("node:async_hooks"),{Readable:ek0}=oRQ(),{InvalidArgumentError:GV,RequestAbortedError:tRQ}=QB(),$C=lQ();function bq(){}class qa extends tk0{constructor(A,Q){if(!A||typeof A!=="object")throw new GV("invalid opts");let{signal:B,method:Y,opaque:J,body:C,onInfo:X,responseHeaders:G,highWaterMark:W}=A;try{if(typeof Q!=="function")throw new GV("invalid callback");if(W&&(typeof W!=="number"||W<0))throw new GV("invalid highWaterMark");if(B&&typeof B.on!=="function"&&typeof B.addEventListener!=="function")throw new GV("signal must be an EventEmitter or EventTarget");if(Y==="CONNECT")throw new GV("invalid method");if(X&&typeof X!=="function")throw new GV("invalid onInfo callback");super("UNDICI_REQUEST")}catch(F){if($C.isStream(C))$C.destroy(C.on("error",bq),F);throw F}if(this.method=Y,this.responseHeaders=G||null,this.opaque=J||null,this.callback=Q,this.res=null,this.abort=null,this.body=C,this.trailers={},this.context=null,this.onInfo=X||null,this.highWaterMark=W,this.reason=null,this.removeAbortListener=null,B?.aborted)this.reason=B.reason??new tRQ;else if(B)this.removeAbortListener=$C.addAbortListener(B,()=>{if(this.reason=B.reason??new tRQ,this.res)$C.destroy(this.res.on("error",bq),this.reason);else if(this.abort)this.abort(this.reason)})}onConnect(A,Q){if(this.reason){A(this.reason);return}ok0(this.callback),this.abort=A,this.context=Q}onHeaders(A,Q,B,Y){let{callback:J,opaque:C,abort:X,context:G,responseHeaders:W,highWaterMark:F}=this,Z=W==="raw"?$C.parseRawHeaders(Q):$C.parseHeaders(Q);if(A<200){if(this.onInfo)this.onInfo({statusCode:A,headers:Z});return}let U=W==="raw"?$C.parseHeaders(Q):Z,$=U["content-type"],E=U["content-length"],K=new ek0({resume:B,abort:X,contentType:$,contentLength:this.method!=="HEAD"&&E?Number(E):null,highWaterMark:F});if(this.removeAbortListener)K.on("close",this.removeAbortListener),this.removeAbortListener=null;if(this.callback=null,this.res=K,J!==null)try{this.runInAsyncScope(J,null,null,{statusCode:A,headers:Z,trailers:this.trailers,opaque:C,body:K,context:G})}catch(I){this.res=null,$C.destroy(K.on("error",bq),I),queueMicrotask(()=>{throw I})}}onData(A){return this.res.push(A)}onComplete(A){$C.parseHeaders(A,this.trailers),this.res.push(null)}onError(A){let{res:Q,callback:B,body:Y,opaque:J}=this;if(B)this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(B,null,A,{opaque:J})});if(Q)this.res=null,queueMicrotask(()=>{$C.destroy(Q.on("error",bq),A)});if(Y){if(this.body=null,$C.isStream(Y))Y.on("error",bq),$C.destroy(Y,A)}if(this.removeAbortListener)this.removeAbortListener(),this.removeAbortListener=null}}function eRQ(A,Q){if(Q===void 0)return new Promise((B,Y)=>{eRQ.call(this,A,(J,C)=>{return J?Y(J):B(C)})});try{let B=new qa(A,Q);this.dispatch(A,B)}catch(B){if(typeof Q!=="function")throw B;let Y=A?.opaque;queueMicrotask(()=>Q(B,{opaque:Y}))}}Ma.exports=eRQ;Ma.exports.RequestHandler=qa});var mq=R((ZrY,YwQ)=>{var{addAbortListener:A_0}=lQ(),{RequestAbortedError:Q_0}=QB(),WV=Symbol("kListener"),SX=Symbol("kSignal");function QwQ(A){if(A.abort)A.abort(A[SX]?.reason);else A.reason=A[SX]?.reason??new Q_0;BwQ(A)}function B_0(A,Q){if(A.reason=null,A[SX]=null,A[WV]=null,!Q)return;if(Q.aborted){QwQ(A);return}A[SX]=Q,A[WV]=()=>{QwQ(A)},A_0(A[SX],A[WV])}function BwQ(A){if(!A[SX])return;if("removeEventListener"in A[SX])A[SX].removeEventListener("abort",A[WV]);else A[SX].removeListener("abort",A[WV]);A[SX]=null,A[WV]=null}YwQ.exports={addSignal:B_0,removeSignal:BwQ}});var WwQ=R(($rY,GwQ)=>{var Y_0=u("node:assert"),{finished:J_0}=u("node:stream"),{AsyncResource:C_0}=u("node:async_hooks"),{InvalidArgumentError:FV,InvalidReturnValueError:X_0}=QB(),xG=lQ(),{addSignal:G_0,removeSignal:JwQ}=mq();function W_0(){}class CwQ extends C_0{constructor(A,Q,B){if(!A||typeof A!=="object")throw new FV("invalid opts");let{signal:Y,method:J,opaque:C,body:X,onInfo:G,responseHeaders:W}=A;try{if(typeof B!=="function")throw new FV("invalid callback");if(typeof Q!=="function")throw new FV("invalid factory");if(Y&&typeof Y.on!=="function"&&typeof Y.addEventListener!=="function")throw new FV("signal must be an EventEmitter or EventTarget");if(J==="CONNECT")throw new FV("invalid method");if(G&&typeof G!=="function")throw new FV("invalid onInfo callback");super("UNDICI_STREAM")}catch(F){if(xG.isStream(X))xG.destroy(X.on("error",W_0),F);throw F}if(this.responseHeaders=W||null,this.opaque=C||null,this.factory=Q,this.callback=B,this.res=null,this.abort=null,this.context=null,this.trailers=null,this.body=X,this.onInfo=G||null,xG.isStream(X))X.on("error",(F)=>{this.onError(F)});G_0(this,Y)}onConnect(A,Q){if(this.reason){A(this.reason);return}Y_0(this.callback),this.abort=A,this.context=Q}onHeaders(A,Q,B,Y){let{factory:J,opaque:C,context:X,responseHeaders:G}=this,W=G==="raw"?xG.parseRawHeaders(Q):xG.parseHeaders(Q);if(A<200){if(this.onInfo)this.onInfo({statusCode:A,headers:W});return}if(this.factory=null,J===null)return;let F=this.runInAsyncScope(J,null,{statusCode:A,headers:W,opaque:C,context:X});if(!F||typeof F.write!=="function"||typeof F.end!=="function"||typeof F.on!=="function")throw new X_0("expected Writable");return J_0(F,{readable:!1},(U)=>{let{callback:$,res:E,opaque:K,trailers:I,abort:V}=this;if(this.res=null,U||!E?.readable)xG.destroy(E,U);if(this.callback=null,this.runInAsyncScope($,null,U||null,{opaque:K,trailers:I}),U)V()}),F.on("drain",B),this.res=F,(F.writableNeedDrain!==void 0?F.writableNeedDrain:F._writableState?.needDrain)!==!0}onData(A){let{res:Q}=this;return Q?Q.write(A):!0}onComplete(A){let{res:Q}=this;if(JwQ(this),!Q)return;this.trailers=xG.parseHeaders(A),Q.end()}onError(A){let{res:Q,callback:B,opaque:Y,body:J}=this;if(JwQ(this),this.factory=null,Q)this.res=null,xG.destroy(Q,A);else if(B)this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(B,null,A,{opaque:Y})});if(J)this.body=null,xG.destroy(J,A)}}function XwQ(A,Q,B){if(B===void 0)return new Promise((Y,J)=>{XwQ.call(this,A,Q,(C,X)=>{return C?J(C):Y(X)})});try{let Y=new CwQ(A,Q,B);this.dispatch(A,Y)}catch(Y){if(typeof B!=="function")throw Y;let J=A?.opaque;queueMicrotask(()=>B(Y,{opaque:J}))}}GwQ.exports=XwQ});var VwQ=R((UrY,KwQ)=>{var{Readable:ZwQ,Duplex:F_0,PassThrough:Z_0}=u("node:stream"),$_0=u("node:assert"),{AsyncResource:U_0}=u("node:async_hooks"),{InvalidArgumentError:uq,InvalidReturnValueError:E_0,RequestAbortedError:za}=QB(),kX=lQ(),{addSignal:K_0,removeSignal:V_0}=mq();function FwQ(){}var ZV=Symbol("resume");class $wQ extends ZwQ{constructor(){super({autoDestroy:!0});this[ZV]=null}_read(){let{[ZV]:A}=this;if(A)this[ZV]=null,A()}_destroy(A,Q){this._read(),Q(A)}}class UwQ extends ZwQ{constructor(A){super({autoDestroy:!0});this[ZV]=A}_read(){this[ZV]()}_destroy(A,Q){if(!A&&!this._readableState.endEmitted)A=new za;Q(A)}}class EwQ extends U_0{constructor(A,Q){if(!A||typeof A!=="object")throw new uq("invalid opts");if(typeof Q!=="function")throw new uq("invalid handler");let{signal:B,method:Y,opaque:J,onInfo:C,responseHeaders:X}=A;if(B&&typeof B.on!=="function"&&typeof B.addEventListener!=="function")throw new uq("signal must be an EventEmitter or EventTarget");if(Y==="CONNECT")throw new uq("invalid method");if(C&&typeof C!=="function")throw new uq("invalid onInfo callback");super("UNDICI_PIPELINE");this.opaque=J||null,this.responseHeaders=X||null,this.handler=Q,this.abort=null,this.context=null,this.onInfo=C||null,this.req=new $wQ().on("error",FwQ),this.ret=new F_0({readableObjectMode:A.objectMode,autoDestroy:!0,read:()=>{let{body:G}=this;if(G?.resume)G.resume()},write:(G,W,F)=>{let{req:Z}=this;if(Z.push(G,W)||Z._readableState.destroyed)F();else Z[ZV]=F},destroy:(G,W)=>{let{body:F,req:Z,res:U,ret:$,abort:E}=this;if(!G&&!$._readableState.endEmitted)G=new za;if(E&&G)E();kX.destroy(F,G),kX.destroy(Z,G),kX.destroy(U,G),V_0(this),W(G)}}).on("prefinish",()=>{let{req:G}=this;G.push(null)}),this.res=null,K_0(this,B)}onConnect(A,Q){let{res:B}=this;if(this.reason){A(this.reason);return}$_0(!B,"pipeline cannot be retried"),this.abort=A,this.context=Q}onHeaders(A,Q,B){let{opaque:Y,handler:J,context:C}=this;if(A<200){if(this.onInfo){let G=this.responseHeaders==="raw"?kX.parseRawHeaders(Q):kX.parseHeaders(Q);this.onInfo({statusCode:A,headers:G})}return}this.res=new UwQ(B);let X;try{this.handler=null;let G=this.responseHeaders==="raw"?kX.parseRawHeaders(Q):kX.parseHeaders(Q);X=this.runInAsyncScope(J,null,{statusCode:A,headers:G,opaque:Y,body:this.res,context:C})}catch(G){throw this.res.on("error",FwQ),G}if(!X||typeof X.on!=="function")throw new E_0("expected Readable");X.on("data",(G)=>{let{ret:W,body:F}=this;if(!W.push(G)&&F.pause)F.pause()}).on("error",(G)=>{let{ret:W}=this;kX.destroy(W,G)}).on("end",()=>{let{ret:G}=this;G.push(null)}).on("close",()=>{let{ret:G}=this;if(!G._readableState.ended)kX.destroy(G,new za)}),this.body=X}onData(A){let{res:Q}=this;return Q.push(A)}onComplete(A){let{res:Q}=this;Q.push(null)}onError(A){let{ret:Q}=this;this.handler=null,kX.destroy(Q,A)}}function I_0(A,Q){try{let B=new EwQ(A,Q);return this.dispatch({...A,body:B.req},B),B.ret}catch(B){return new Z_0().destroy(B)}}KwQ.exports=I_0});var MwQ=R((ErY,qwQ)=>{var{InvalidArgumentError:Ra,SocketError:H_0}=QB(),{AsyncResource:D_0}=u("node:async_hooks"),IwQ=u("node:assert"),HwQ=lQ(),{addSignal:N_0,removeSignal:DwQ}=mq();class NwQ extends D_0{constructor(A,Q){if(!A||typeof A!=="object")throw new Ra("invalid opts");if(typeof Q!=="function")throw new Ra("invalid callback");let{signal:B,opaque:Y,responseHeaders:J}=A;if(B&&typeof B.on!=="function"&&typeof B.addEventListener!=="function")throw new Ra("signal must be an EventEmitter or EventTarget");super("UNDICI_UPGRADE");this.responseHeaders=J||null,this.opaque=Y||null,this.callback=Q,this.abort=null,this.context=null,N_0(this,B)}onConnect(A,Q){if(this.reason){A(this.reason);return}IwQ(this.callback),this.abort=A,this.context=null}onHeaders(){throw new H_0("bad upgrade",null)}onUpgrade(A,Q,B){IwQ(A===101);let{callback:Y,opaque:J,context:C}=this;DwQ(this),this.callback=null;let X=this.responseHeaders==="raw"?HwQ.parseRawHeaders(Q):HwQ.parseHeaders(Q);this.runInAsyncScope(Y,null,null,{headers:X,socket:B,opaque:J,context:C})}onError(A){let{callback:Q,opaque:B}=this;if(DwQ(this),Q)this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(Q,null,A,{opaque:B})})}}function LwQ(A,Q){if(Q===void 0)return new Promise((B,Y)=>{LwQ.call(this,A,(J,C)=>{return J?Y(J):B(C)})});try{let B=new NwQ(A,Q),Y={...A,method:A.method||"GET",upgrade:A.protocol||"Websocket"};this.dispatch(Y,B)}catch(B){if(typeof Q!=="function")throw B;let Y=A?.opaque;queueMicrotask(()=>Q(B,{opaque:Y}))}}qwQ.exports=LwQ});var PwQ=R((KrY,OwQ)=>{var L_0=u("node:assert"),{AsyncResource:q_0}=u("node:async_hooks"),{InvalidArgumentError:wa,SocketError:M_0}=QB(),zwQ=lQ(),{addSignal:z_0,removeSignal:RwQ}=mq();class wwQ extends q_0{constructor(A,Q){if(!A||typeof A!=="object")throw new wa("invalid opts");if(typeof Q!=="function")throw new wa("invalid callback");let{signal:B,opaque:Y,responseHeaders:J}=A;if(B&&typeof B.on!=="function"&&typeof B.addEventListener!=="function")throw new wa("signal must be an EventEmitter or EventTarget");super("UNDICI_CONNECT");this.opaque=Y||null,this.responseHeaders=J||null,this.callback=Q,this.abort=null,z_0(this,B)}onConnect(A,Q){if(this.reason){A(this.reason);return}L_0(this.callback),this.abort=A,this.context=Q}onHeaders(){throw new M_0("bad connect",null)}onUpgrade(A,Q,B){let{callback:Y,opaque:J,context:C}=this;RwQ(this),this.callback=null;let X=Q;if(X!=null)X=this.responseHeaders==="raw"?zwQ.parseRawHeaders(Q):zwQ.parseHeaders(Q);this.runInAsyncScope(Y,null,null,{statusCode:A,headers:X,socket:B,opaque:J,context:C})}onError(A){let{callback:Q,opaque:B}=this;if(RwQ(this),Q)this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(Q,null,A,{opaque:B})})}}function jwQ(A,Q){if(Q===void 0)return new Promise((B,Y)=>{jwQ.call(this,A,(J,C)=>{return J?Y(J):B(C)})});try{let B=new wwQ(A,Q),Y={...A,method:"CONNECT"};this.dispatch(Y,B)}catch(B){if(typeof Q!=="function")throw B;let Y=A?.opaque;queueMicrotask(()=>Q(B,{opaque:Y}))}}OwQ.exports=jwQ});var TwQ=R((R_0,$V)=>{R_0.request=AwQ();R_0.stream=WwQ();R_0.pipeline=VwQ();R_0.upgrade=MwQ();R_0.connect=PwQ()});var ja=R((VrY,_wQ)=>{var{UndiciError:S_0}=QB(),SwQ=Symbol.for("undici.error.UND_MOCK_ERR_MOCK_NOT_MATCHED");class kwQ extends S_0{constructor(A){super(A);this.name="MockNotMatchedError",this.message=A||"The request does not match any registered mock dispatches",this.code="UND_MOCK_ERR_MOCK_NOT_MATCHED"}static[Symbol.hasInstance](A){return A&&A[SwQ]===!0}get[SwQ](){return!0}}_wQ.exports={MockNotMatchedError:kwQ}});var A4=R((IrY,vwQ)=>{vwQ.exports={kAgent:Symbol("agent"),kOptions:Symbol("options"),kFactory:Symbol("factory"),kDispatches:Symbol("dispatches"),kDispatchKey:Symbol("dispatch key"),kDefaultHeaders:Symbol("default headers"),kDefaultTrailers:Symbol("default trailers"),kContentLength:Symbol("content length"),kMockAgent:Symbol("mock agent"),kMockAgentSet:Symbol("mock agent set"),kMockAgentGet:Symbol("mock agent get"),kMockDispatch:Symbol("mock dispatch"),kClose:Symbol("close"),kOriginalClose:Symbol("original agent close"),kOriginalDispatch:Symbol("original dispatch"),kOrigin:Symbol("origin"),kIsMockActive:Symbol("is mock active"),kNetConnect:Symbol("net connect"),kGetNetConnect:Symbol("get net connect"),kConnected:Symbol("connected"),kIgnoreTrailingSlash:Symbol("ignore trailing slash"),kMockAgentMockCallHistoryInstance:Symbol("mock agent mock call history name"),kMockAgentRegisterCallHistory:Symbol("mock agent register mock call history"),kMockAgentAddCallHistoryLog:Symbol("mock agent add call history log"),kMockAgentIsCallHistoryEnabled:Symbol("mock agent is call history enabled"),kMockAgentAcceptsNonStandardSearchParameters:Symbol("mock agent accepts non standard search parameters"),kMockCallHistoryAddLog:Symbol("mock call history add log")}});var dq=R((HrY,lwQ)=>{var{MockNotMatchedError:UV}=ja(),{kDispatches:pS,kMockAgent:k_0,kOriginalDispatch:__0,kOrigin:v_0,kGetNetConnect:y_0}=A4(),{serializePathWithQuery:g_0}=lQ(),{STATUS_CODES:h_0}=u("node:http"),{types:{isPromise:x_0}}=u("node:util"),{InvalidArgumentError:Oa}=QB();function _X(A,Q){if(typeof A==="string")return A===Q;if(A instanceof RegExp)return A.test(Q);if(typeof A==="function")return A(Q)===!0;return!1}function gwQ(A){return Object.fromEntries(Object.entries(A).map(([Q,B])=>{return[Q.toLocaleLowerCase(),B]}))}function hwQ(A,Q){if(Array.isArray(A)){for(let B=0;B"u")return!0;if(typeof Q!=="object"||typeof A.headers!=="object")return!1;for(let[B,Y]of Object.entries(A.headers)){let J=hwQ(Q,B);if(!_X(Y,J))return!1}return!0}function f_0(A){if(typeof A!=="string")return A;let Q=new URLSearchParams(A),B=new URLSearchParams;for(let[Y,J]of Q.entries()){if(Y=Y.replace("[]",""),/^(['"]).*\1$/.test(J)){B.append(Y,J);continue}if(J.includes(",")){let X=J.split(",");for(let G of X)B.append(Y,G);continue}B.append(Y,J)}return B}function Pa(A){if(typeof A!=="string")return A;let Q=A.split("?",3);if(Q.length!==2)return A;let B=new URLSearchParams(Q.pop());return B.sort(),[...Q,B.toString()].join("?")}function b_0(A,{path:Q,method:B,body:Y,headers:J}){let C=_X(A.path,Q),X=_X(A.method,B),G=typeof A.body<"u"?_X(A.body,Y):!0,W=xwQ(A,J);return C&&X&&G&&W}function fwQ(A){if(Buffer.isBuffer(A))return A;else if(A instanceof Uint8Array)return A;else if(A instanceof ArrayBuffer)return A;else if(typeof A==="object")return JSON.stringify(A);else if(A)return A.toString();else return""}function bwQ(A,Q){let B=Q.query?g_0(Q.path,Q.query):Q.path,Y=typeof B==="string"?Pa(B):B,J=ywQ(Y),C=A.filter(({consumed:X})=>!X).filter(({path:X,ignoreTrailingSlash:G})=>{return G?_X(ywQ(Pa(X)),J):_X(Pa(X),Y)});if(C.length===0)throw new UV(`Mock dispatch not matched for path '${Y}'`);if(C=C.filter(({method:X})=>_X(X,Q.method)),C.length===0)throw new UV(`Mock dispatch not matched for method '${Q.method}' on path '${Y}'`);if(C=C.filter(({body:X})=>typeof X<"u"?_X(X,Q.body):!0),C.length===0)throw new UV(`Mock dispatch not matched for body '${Q.body}' on path '${Y}'`);if(C=C.filter((X)=>xwQ(X,Q.headers)),C.length===0){let X=typeof Q.headers==="object"?JSON.stringify(Q.headers):Q.headers;throw new UV(`Mock dispatch not matched for headers '${X}' on path '${Y}'`)}return C[0]}function m_0(A,Q,B,Y){let J={timesInvoked:0,times:1,persist:!1,consumed:!1,...Y},C=typeof B==="function"?{callback:B}:{...B},X={...J,...Q,pending:!0,data:{error:null,...C}};return A.push(X),X}function Ta(A,Q){let B=A.findIndex((Y)=>{if(!Y.consumed)return!1;return b_0(Y,Q)});if(B!==-1)A.splice(B,1)}function ywQ(A){while(A.endsWith("/"))A=A.slice(0,-1);if(A.length===0)A="/";return A}function mwQ(A){let{path:Q,method:B,body:Y,headers:J,query:C}=A;return{path:Q,method:B,body:Y,headers:J,query:C}}function Sa(A){let Q=Object.keys(A),B=[];for(let Y=0;Y=$,Y.pending=U<$,W!==null)return Ta(this[pS],B),Q.onError(W),!0;if(typeof F==="number"&&F>0)setTimeout(()=>{E(this[pS])},F);else E(this[pS]);function E(I,V=C){let H=Array.isArray(A.headers)?ka(A.headers):A.headers,D=typeof V==="function"?V({...A,headers:H}):V;if(x_0(D)){D.then((N)=>E(I,N));return}let L=fwQ(D),z=Sa(X),M=Sa(G);Q.onConnect?.((N)=>Q.onError(N),null),Q.onHeaders?.(J,z,K,uwQ(J)),Q.onData?.(Buffer.from(L)),Q.onComplete?.(M),Ta(I,B)}function K(){}return!0}function d_0(){let A=this[k_0],Q=this[v_0],B=this[__0];return function(J,C){if(A.isMockActive)try{dwQ.call(this,J,C)}catch(X){if(X.code==="UND_MOCK_ERR_MOCK_NOT_MATCHED"){let G=A[y_0]();if(G===!1)throw new UV(`${X.message}: subsequent request to origin ${Q} was not allowed (net.connect disabled)`);if(cwQ(G,Q))B.call(this,J,C);else throw new UV(`${X.message}: subsequent request to origin ${Q} was not allowed (net.connect is not enabled for this origin)`)}else throw X}else B.call(this,J,C)}}function cwQ(A,Q){let B=new URL(Q);if(A===!0)return!0;else if(Array.isArray(A)&&A.some((Y)=>_X(Y,B.host)))return!0;return!1}function c_0(A){let{agent:Q,...B}=A;if("enableCallHistory"in B&&typeof B.enableCallHistory!=="boolean")throw new Oa("options.enableCallHistory must to be a boolean");if("acceptNonStandardSearchParameters"in B&&typeof B.acceptNonStandardSearchParameters!=="boolean")throw new Oa("options.acceptNonStandardSearchParameters must to be a boolean");if("ignoreTrailingSlash"in B&&typeof B.ignoreTrailingSlash!=="boolean")throw new Oa("options.ignoreTrailingSlash must to be a boolean");return B}lwQ.exports={getResponseData:fwQ,getMockDispatch:bwQ,addMockDispatch:m_0,deleteMockDispatch:Ta,buildKey:mwQ,generateKeyValues:Sa,matchValue:_X,getResponse:u_0,getStatusText:uwQ,mockDispatch:dwQ,buildMockDispatch:d_0,checkNetConnect:cwQ,buildAndValidateMockOptions:c_0,getHeaderByName:hwQ,buildHeadersFromArray:ka,normalizeSearchParams:f_0}});var xa=R((n_0,ha)=>{var{getResponseData:l_0,buildKey:p_0,addMockDispatch:_a}=dq(),{kDispatches:iS,kDispatchKey:nS,kDefaultHeaders:va,kDefaultTrailers:ya,kContentLength:ga,kMockDispatch:sS,kIgnoreTrailingSlash:rS}=A4(),{InvalidArgumentError:vX}=QB(),{serializePathWithQuery:i_0}=lQ();class cq{constructor(A){this[sS]=A}delay(A){if(typeof A!=="number"||!Number.isInteger(A)||A<=0)throw new vX("waitInMs must be a valid integer > 0");return this[sS].delay=A,this}persist(){return this[sS].persist=!0,this}times(A){if(typeof A!=="number"||!Number.isInteger(A)||A<=0)throw new vX("repeatTimes must be a valid integer > 0");return this[sS].times=A,this}}class pwQ{constructor(A,Q){if(typeof A!=="object")throw new vX("opts must be an object");if(typeof A.path>"u")throw new vX("opts.path must be defined");if(typeof A.method>"u")A.method="GET";if(typeof A.path==="string")if(A.query)A.path=i_0(A.path,A.query);else{let B=new URL(A.path,"data://");A.path=B.pathname+B.search}if(typeof A.method==="string")A.method=A.method.toUpperCase();this[nS]=p_0(A),this[iS]=Q,this[rS]=A.ignoreTrailingSlash??!1,this[va]={},this[ya]={},this[ga]=!1}createMockScopeDispatchData({statusCode:A,data:Q,responseOptions:B}){let Y=l_0(Q),J=this[ga]?{"content-length":Y.length}:{},C={...this[va],...J,...B.headers},X={...this[ya],...B.trailers};return{statusCode:A,data:Q,headers:C,trailers:X}}validateReplyParameters(A){if(typeof A.statusCode>"u")throw new vX("statusCode must be defined");if(typeof A.responseOptions!=="object"||A.responseOptions===null)throw new vX("responseOptions must be an object")}reply(A){if(typeof A==="function"){let J=(X)=>{let G=A(X);if(typeof G!=="object"||G===null)throw new vX("reply options callback must return an object");let W={data:"",responseOptions:{},...G};return this.validateReplyParameters(W),{...this.createMockScopeDispatchData(W)}},C=_a(this[iS],this[nS],J,{ignoreTrailingSlash:this[rS]});return new cq(C)}let Q={statusCode:A,data:arguments[1]===void 0?"":arguments[1],responseOptions:arguments[2]===void 0?{}:arguments[2]};this.validateReplyParameters(Q);let B=this.createMockScopeDispatchData(Q),Y=_a(this[iS],this[nS],B,{ignoreTrailingSlash:this[rS]});return new cq(Y)}replyWithError(A){if(typeof A>"u")throw new vX("error must be defined");let Q=_a(this[iS],this[nS],{error:A},{ignoreTrailingSlash:this[rS]});return new cq(Q)}defaultReplyHeaders(A){if(typeof A>"u")throw new vX("headers must be defined");return this[va]=A,this}defaultReplyTrailers(A){if(typeof A>"u")throw new vX("trailers must be defined");return this[ya]=A,this}replyContentLength(){return this[ga]=!0,this}}n_0.MockInterceptor=pwQ;n_0.MockScope=cq});var ma=R((DrY,ewQ)=>{var{promisify:a_0}=u("node:util"),o_0=s$(),{buildMockDispatch:t_0}=dq(),{kDispatches:fa,kMockAgent:iwQ,kClose:nwQ,kOriginalClose:swQ,kOrigin:rwQ,kOriginalDispatch:e_0,kConnected:ba,kIgnoreTrailingSlash:awQ}=A4(),{MockInterceptor:Av0}=xa(),owQ=B0(),{InvalidArgumentError:Qv0}=QB();class twQ extends o_0{constructor(A,Q){if(!Q||!Q.agent||typeof Q.agent.dispatch!=="function")throw new Qv0("Argument opts.agent must implement Agent");super(A,Q);this[iwQ]=Q.agent,this[rwQ]=A,this[awQ]=Q.ignoreTrailingSlash??!1,this[fa]=[],this[ba]=1,this[e_0]=this.dispatch,this[swQ]=this.close.bind(this),this.dispatch=t_0.call(this),this.close=this[nwQ]}get[owQ.kConnected](){return this[ba]}intercept(A){return new Av0(A&&{ignoreTrailingSlash:this[awQ],...A},this[fa])}cleanMocks(){this[fa]=[]}async[nwQ](){await a_0(this[swQ])(),this[ba]=0,this[iwQ][owQ.kClients].delete(this[rwQ])}}ewQ.exports=twQ});var ca=R((Cv0,da)=>{var{kMockCallHistoryAddLog:Bv0}=A4(),{InvalidArgumentError:$F}=QB();function FF(A,Q,B,Y){switch(Q.operator){case"OR":return Y.push(...B(A)),Y;case"AND":return B.call({logs:Y},A);default:throw new $F("options.operator must to be a case insensitive string equal to 'OR' or 'AND'")}}function Yv0(A={}){let Q={};if("operator"in A){if(typeof A.operator!=="string"||A.operator.toUpperCase()!=="OR"&&A.operator.toUpperCase()!=="AND")throw new $F("options.operator must to be a case insensitive string equal to 'OR' or 'AND'");return{...Q,operator:A.operator.toUpperCase()}}return Q}function ZF(A){return(Q)=>{if(typeof Q==="string"||Q==null)return this.logs.filter((B)=>{return B[A]===Q});if(Q instanceof RegExp)return this.logs.filter((B)=>{return Q.test(B[A])});throw new $F(`${A} parameter should be one of string, regexp, undefined or null`)}}function Jv0(A){try{let Q=new URL(A.path,A.origin);if(Q.search.length!==0)return Q;return Q.search=new URLSearchParams(A.query).toString(),Q}catch(Q){throw new $F("An error occurred when computing MockCallHistoryLog.url",{cause:Q})}}class ua{constructor(A={}){this.body=A.body,this.headers=A.headers,this.method=A.method;let Q=Jv0(A);this.fullUrl=Q.toString(),this.origin=Q.origin,this.path=Q.pathname,this.searchParams=Object.fromEntries(Q.searchParams),this.protocol=Q.protocol,this.host=Q.host,this.port=Q.port,this.hash=Q.hash}toMap(){return new Map([["protocol",this.protocol],["host",this.host],["port",this.port],["origin",this.origin],["path",this.path],["hash",this.hash],["searchParams",this.searchParams],["fullUrl",this.fullUrl],["method",this.method],["body",this.body],["headers",this.headers]])}toString(){let A={betweenKeyValueSeparator:"->",betweenPairSeparator:"|"},Q="";return this.toMap().forEach((B,Y)=>{if(typeof B==="string"||B===void 0||B===null)Q=`${Q}${Y}${A.betweenKeyValueSeparator}${B}${A.betweenPairSeparator}`;if(typeof B==="object"&&B!==null||Array.isArray(B))Q=`${Q}${Y}${A.betweenKeyValueSeparator}${JSON.stringify(B)}${A.betweenPairSeparator}`}),Q.slice(0,-1)}}class AjQ{logs=[];calls(){return this.logs}firstCall(){return this.logs.at(0)}lastCall(){return this.logs.at(-1)}nthCall(A){if(typeof A!=="number")throw new $F("nthCall must be called with a number");if(!Number.isInteger(A))throw new $F("nthCall must be called with an integer");if(Math.sign(A)!==1)throw new $F("nthCall must be called with a positive value. use firstCall or lastCall instead");return this.logs.at(A-1)}filterCalls(A,Q){if(this.logs.length===0)return this.logs;if(typeof A==="function")return this.logs.filter(A);if(A instanceof RegExp)return this.logs.filter((B)=>{return A.test(B.toString())});if(typeof A==="object"&&A!==null){if(Object.keys(A).length===0)return this.logs;let B={operator:"OR",...Yv0(Q)},Y=[];if("protocol"in A)Y=FF(A.protocol,B,this.filterCallsByProtocol,Y);if("host"in A)Y=FF(A.host,B,this.filterCallsByHost,Y);if("port"in A)Y=FF(A.port,B,this.filterCallsByPort,Y);if("origin"in A)Y=FF(A.origin,B,this.filterCallsByOrigin,Y);if("path"in A)Y=FF(A.path,B,this.filterCallsByPath,Y);if("hash"in A)Y=FF(A.hash,B,this.filterCallsByHash,Y);if("fullUrl"in A)Y=FF(A.fullUrl,B,this.filterCallsByFullUrl,Y);if("method"in A)Y=FF(A.method,B,this.filterCallsByMethod,Y);return[...new Set(Y)]}throw new $F("criteria parameter should be one of function, regexp, or object")}filterCallsByProtocol=ZF.call(this,"protocol");filterCallsByHost=ZF.call(this,"host");filterCallsByPort=ZF.call(this,"port");filterCallsByOrigin=ZF.call(this,"origin");filterCallsByPath=ZF.call(this,"path");filterCallsByHash=ZF.call(this,"hash");filterCallsByFullUrl=ZF.call(this,"fullUrl");filterCallsByMethod=ZF.call(this,"method");clear(){this.logs=[]}[Bv0](A){let Q=new ua(A);return this.logs.push(Q),Q}*[Symbol.iterator](){for(let A of this.calls())yield A}}Cv0.MockCallHistory=AjQ;Cv0.MockCallHistoryLog=ua});var ia=R((NrY,WjQ)=>{var{promisify:Wv0}=u("node:util"),Fv0=JV(),{buildMockDispatch:Zv0}=dq(),{kDispatches:la,kMockAgent:QjQ,kClose:BjQ,kOriginalClose:YjQ,kOrigin:JjQ,kOriginalDispatch:$v0,kConnected:pa,kIgnoreTrailingSlash:CjQ}=A4(),{MockInterceptor:Uv0}=xa(),XjQ=B0(),{InvalidArgumentError:Ev0}=QB();class GjQ extends Fv0{constructor(A,Q){if(!Q||!Q.agent||typeof Q.agent.dispatch!=="function")throw new Ev0("Argument opts.agent must implement Agent");super(A,Q);this[QjQ]=Q.agent,this[JjQ]=A,this[CjQ]=Q.ignoreTrailingSlash??!1,this[la]=[],this[pa]=1,this[$v0]=this.dispatch,this[YjQ]=this.close.bind(this),this.dispatch=Zv0.call(this),this.close=this[BjQ]}get[XjQ.kConnected](){return this[pa]}intercept(A){return new Uv0(A&&{ignoreTrailingSlash:this[CjQ],...A},this[la])}cleanMocks(){this[la]=[]}async[BjQ](){await Wv0(this[YjQ])(),this[pa]=0,this[QjQ][XjQ.kClients].delete(this[JjQ])}}WjQ.exports=GjQ});var ZjQ=R((LrY,FjQ)=>{var{Transform:Kv0}=u("node:stream"),{Console:Vv0}=u("node:console"),Iv0=process.versions.icu?"✅":"Y ",Hv0=process.versions.icu?"❌":"N ";FjQ.exports=class{constructor({disableColors:Q}={}){this.transform=new Kv0({transform(B,Y,J){J(null,B)}}),this.logger=new Vv0({stdout:this.transform,inspectOptions:{colors:!Q&&!process.env.CI}})}format(Q){let B=Q.map(({method:Y,path:J,data:{statusCode:C},persist:X,times:G,timesInvoked:W,origin:F})=>({Method:Y,Origin:F,Path:J,"Status code":C,Persistent:X?Iv0:Hv0,Invocations:W,Remaining:X?1/0:G-W}));return this.logger.table(B),this.transform.read().toString()}}});var aa=R((qrY,HjQ)=>{var{kClients:Q4}=B0(),Dv0=o$(),{kAgent:na,kMockAgentSet:aS,kMockAgentGet:$jQ,kDispatches:sa,kIsMockActive:oS,kNetConnect:B4,kGetNetConnect:Nv0,kOptions:tS,kFactory:eS,kMockAgentRegisterCallHistory:ra,kMockAgentIsCallHistoryEnabled:lq,kMockAgentAddCallHistoryLog:UjQ,kMockAgentMockCallHistoryInstance:EV,kMockAgentAcceptsNonStandardSearchParameters:EjQ,kMockCallHistoryAddLog:Lv0,kIgnoreTrailingSlash:KjQ}=A4(),qv0=ma(),Mv0=ia(),{matchValue:zv0,normalizeSearchParams:Rv0,buildAndValidateMockOptions:wv0}=dq(),{InvalidArgumentError:VjQ,UndiciError:jv0}=QB(),Ov0=$q(),Pv0=ZjQ(),{MockCallHistory:Tv0}=ca();class IjQ extends Ov0{constructor(A={}){super(A);let Q=wv0(A);if(this[B4]=!0,this[oS]=!0,this[lq]=Q.enableCallHistory??!1,this[EjQ]=Q.acceptNonStandardSearchParameters??!1,this[KjQ]=Q.ignoreTrailingSlash??!1,A?.agent&&typeof A.agent.dispatch!=="function")throw new VjQ("Argument opts.agent must implement Agent");let B=A?.agent?A.agent:new Dv0(A);if(this[na]=B,this[Q4]=B[Q4],this[tS]=Q,this[lq])this[ra]()}get(A){let Q=this[KjQ]?A.replace(/\/$/,""):A,B=this[$jQ](Q);if(!B)B=this[eS](Q),this[aS](Q,B);return B}dispatch(A,Q){this.get(A.origin),this[UjQ](A);let B=this[EjQ],Y={...A};if(B&&Y.path){let[J,C]=Y.path.split("?"),X=Rv0(C,B);Y.path=`${J}?${X}`}return this[na].dispatch(Y,Q)}async close(){this.clearCallHistory(),await this[na].close(),this[Q4].clear()}deactivate(){this[oS]=!1}activate(){this[oS]=!0}enableNetConnect(A){if(typeof A==="string"||typeof A==="function"||A instanceof RegExp)if(Array.isArray(this[B4]))this[B4].push(A);else this[B4]=[A];else if(typeof A>"u")this[B4]=!0;else throw new VjQ("Unsupported matcher. Must be one of String|Function|RegExp.")}disableNetConnect(){this[B4]=!1}enableCallHistory(){return this[lq]=!0,this}disableCallHistory(){return this[lq]=!1,this}getCallHistory(){return this[EV]}clearCallHistory(){if(this[EV]!==void 0)this[EV].clear()}get isMockActive(){return this[oS]}[ra](){if(this[EV]===void 0)this[EV]=new Tv0}[UjQ](A){if(this[lq])this[ra](),this[EV][Lv0](A)}[aS](A,Q){this[Q4].set(A,{count:0,dispatcher:Q})}[eS](A){let Q=Object.assign({agent:this},this[tS]);return this[tS]&&this[tS].connections===1?new qv0(A,Q):new Mv0(A,Q)}[$jQ](A){let Q=this[Q4].get(A);if(Q?.dispatcher)return Q.dispatcher;if(typeof A!=="string"){let B=this[eS]("http://localhost:9999");return this[aS](A,B),B}for(let[B,Y]of Array.from(this[Q4]))if(Y&&typeof B!=="string"&&zv0(B,A)){let J=this[eS](A);return this[aS](A,J),J[sa]=Y.dispatcher[sa],J}}[Nv0](){return this[B4]}pendingInterceptors(){let A=this[Q4];return Array.from(A.entries()).flatMap(([Q,B])=>B.dispatcher[sa].map((Y)=>({...Y,origin:Q}))).filter(({pending:Q})=>Q)}assertNoPendingInterceptors({pendingInterceptorsFormatter:A=new Pv0}={}){let Q=this.pendingInterceptors();if(Q.length===0)return;throw new jv0(Q.length===1?`1 interceptor is pending: +`,"latin1");if(Q!==null&&Y!==Q)if(B[cr])throw new p$;else process.emitWarning(new p$);if(A[o0].timeout&&A[o0].timeoutType===QV){if(A[o0].timeout.refresh)A[o0].timeout.refresh()}B[AF]()}destroy(A){let{socket:Q,client:B,abort:Y}=this;if(Q[QF]=!1,A)wQ(B[fJ]<=1,"pipeline should only contain this request"),Y(A)}}H3Q.exports=LT0});var w3Q=R((asY,R3Q)=>{var WC=u("node:assert"),{pipeline:kT0}=u("node:stream"),OB=lQ(),{RequestContentLengthMismatchError:sr,RequestAbortedError:_T0,SocketError:wq,InformationalError:OS}=QB(),{kUrl:Rq,kReset:TS,kClient:i$,kRunning:SS,kPending:vT0,kQueue:BF,kPendingIdx:ar,kRunningIdx:H1,kError:D1,kSocket:VY,kStrictContentLength:yT0,kOnError:kS,kMaxConcurrentStreams:z3Q,kHTTP2Session:PX,kResume:yG,kSize:gT0,kHTTPContext:or,kClosed:rr,kBodyTimeout:hT0}=B0(),{channels:N3Q}=f$(),GC=Symbol("open streams"),L3Q,PS;try{PS=u("node:http2")}catch{PS={constants:{}}}var{constants:{HTTP2_HEADER_AUTHORITY:xT0,HTTP2_HEADER_METHOD:fT0,HTTP2_HEADER_PATH:bT0,HTTP2_HEADER_SCHEME:mT0,HTTP2_HEADER_CONTENT_LENGTH:uT0,HTTP2_HEADER_EXPECT:dT0,HTTP2_HEADER_STATUS:cT0}}=PS;function lT0(A){let Q=[];for(let[B,Y]of Object.entries(A))if(Array.isArray(Y))for(let J of Y)Q.push(Buffer.from(B),Buffer.from(J));else Q.push(Buffer.from(B),Buffer.from(Y));return Q}function pT0(A,Q){A[VY]=Q;let B=PS.connect(A[Rq],{createConnection:()=>Q,peerMaxConcurrentStreams:A[z3Q],settings:{enablePush:!1}});return B[GC]=0,B[i$]=A,B[VY]=Q,B[PX]=null,OB.addListener(B,"error",nT0),OB.addListener(B,"frameError",sT0),OB.addListener(B,"end",rT0),OB.addListener(B,"goaway",aT0),OB.addListener(B,"close",oT0),B.unref(),A[PX]=B,Q[PX]=B,OB.addListener(Q,"error",eT0),OB.addListener(Q,"end",AS0),OB.addListener(Q,"close",tT0),Q[rr]=!1,Q.on("close",QS0),{version:"h2",defaultPipelining:1/0,write(Y){return YS0(A,Y)},resume(){iT0(A)},destroy(Y,J){if(Q[rr])queueMicrotask(J);else Q.destroy(Y).on("close",J)},get destroyed(){return Q.destroyed},busy(){return!1}}}function iT0(A){let Q=A[VY];if(Q?.destroyed===!1)if(A[gT0]===0||A[z3Q]===0)Q.unref(),A[PX].unref();else Q.ref(),A[PX].ref()}function nT0(A){WC(A.code!=="ERR_TLS_CERT_ALTNAME_INVALID"),this[VY][D1]=A,this[i$][kS](A)}function sT0(A,Q,B){if(B===0){let Y=new OS(`HTTP/2: "frameError" received - type ${A}, code ${Q}`);this[VY][D1]=Y,this[i$][kS](Y)}}function rT0(){let A=new wq("other side closed",OB.getSocketInfo(this[VY]));this.destroy(A),OB.destroy(this[VY],A)}function aT0(A){let Q=this[D1]||new wq(`HTTP/2: "GOAWAY" frame received with code ${A}`,OB.getSocketInfo(this[VY])),B=this[i$];if(B[VY]=null,B[or]=null,this.close(),this[PX]=null,OB.destroy(this[VY],Q),B[H1]{if(Q.aborted||Q.completed)return;if(N=N||new _T0,OB.errorRequest(A,Q,N),K!=null)K.removeAllListeners("data"),K.close(),A[kS](N),A[yG]();OB.destroy($,N)};try{Q.onConnect(H)}catch(N){OB.errorRequest(A,Q,N)}if(Q.aborted)return!1;if(J==="CONNECT"){if(Y.ref(),K=Y.request(E,{endStream:!1,signal:F}),!K.pending)Q.onUpgrade(null,null,K),++Y[GC],A[BF][A[H1]++]=null;else K.once("ready",()=>{Q.onUpgrade(null,null,K),++Y[GC],A[BF][A[H1]++]=null});return K.once("close",()=>{if(Y[GC]-=1,Y[GC]===0)Y.unref()}),K.setTimeout(B),!0}E[bT0]=C,E[mT0]=Z==="http:"?"http":"https";let D=J==="PUT"||J==="POST"||J==="PATCH";if($&&typeof $.read==="function")$.read(0);let L=OB.bodyLength($);if(OB.isFormDataLike($)){L3Q??=tK().extractBody;let[N,q]=L3Q($);E["content-type"]=q,$=N.stream,L=N.length}if(L==null)L=Q.contentLength;if(L===0||!D)L=null;if(BS0(J)&&L>0&&Q.contentLength!=null&&Q.contentLength!==L){if(A[yT0])return OB.errorRequest(A,Q,new sr),!1;process.emitWarning(new sr)}if(L!=null)WC($,"no body must not have content length"),E[uT0]=`${L}`;if(Y.ref(),N3Q.sendHeaders.hasSubscribers){let N="";for(let q in E)N+=`${q}: ${E[q]}\r +`;N3Q.sendHeaders.publish({request:Q,headers:N,socket:Y[VY]})}let z=J==="GET"||J==="HEAD"||$===null;if(W)E[dT0]="100-continue",K=Y.request(E,{endStream:z,signal:F}),K.once("continue",M);else K=Y.request(E,{endStream:z,signal:F}),M();return++Y[GC],K.setTimeout(B),K.once("response",(N)=>{let{[cT0]:q,...w}=N;if(Q.onResponseStarted(),Q.aborted){K.removeAllListeners("data");return}if(Q.onHeaders(Number(q),lT0(w),K.resume.bind(K),"")===!1)K.pause()}),K.on("data",(N)=>{if(Q.onData(N)===!1)K.pause()}),K.once("end",(N)=>{if(K.removeAllListeners("data"),K.state?.state==null||K.state.state<6){if(!Q.aborted&&!Q.completed)Q.onComplete({});A[BF][A[H1]++]=null,A[yG]()}else{if(--Y[GC],Y[GC]===0)Y.unref();H(N??new OS("HTTP/2: stream half-closed (remote)")),A[BF][A[H1]++]=null,A[ar]=A[H1],A[yG]()}}),K.once("close",()=>{if(K.removeAllListeners("data"),Y[GC]-=1,Y[GC]===0)Y.unref()}),K.once("error",function(N){K.removeAllListeners("data"),H(N)}),K.once("frameError",(N,q)=>{K.removeAllListeners("data"),H(new OS(`HTTP/2: "frameError" received - type ${N}, code ${q}`))}),K.on("aborted",()=>{K.removeAllListeners("data")}),K.on("timeout",()=>{let N=new OS(`HTTP/2: "stream timeout after ${B}"`);if(K.removeAllListeners("data"),Y[GC]-=1,Y[GC]===0)Y.unref();H(N)}),K.once("trailers",(N)=>{if(Q.aborted||Q.completed)return;Q.onComplete(N)}),!0;function M(){if(!$||L===0)q3Q(H,K,null,A,Q,A[VY],L,D);else if(OB.isBuffer($))q3Q(H,K,$,A,Q,A[VY],L,D);else if(OB.isBlobLike($))if(typeof $.stream==="function")M3Q(H,K,$.stream(),A,Q,A[VY],L,D);else CS0(H,K,$,A,Q,A[VY],L,D);else if(OB.isStream($))JS0(H,A[VY],D,K,$,A,Q,L);else if(OB.isIterable($))M3Q(H,K,$,A,Q,A[VY],L,D);else WC(!1)}}function q3Q(A,Q,B,Y,J,C,X,G){try{if(B!=null&&OB.isBuffer(B))WC(X===B.byteLength,"buffer body must have content length"),Q.cork(),Q.write(B),Q.uncork(),Q.end(),J.onBodySent(B);if(!G)C[TS]=!0;J.onRequestSent(),Y[yG]()}catch(W){A(W)}}function JS0(A,Q,B,Y,J,C,X,G){WC(G!==0||C[SS]===0,"stream body cannot be pipelined");let W=kT0(J,Y,(Z)=>{if(Z)OB.destroy(W,Z),A(Z);else{if(OB.removeAllListeners(W),X.onRequestSent(),!B)Q[TS]=!0;C[yG]()}});OB.addListener(W,"data",F);function F(Z){X.onBodySent(Z)}}async function CS0(A,Q,B,Y,J,C,X,G){WC(X===B.size,"blob body must have content length");try{if(X!=null&&X!==B.size)throw new sr;let W=Buffer.from(await B.arrayBuffer());if(Q.cork(),Q.write(W),Q.uncork(),Q.end(),J.onBodySent(W),J.onRequestSent(),!G)C[TS]=!0;Y[yG]()}catch(W){A(W)}}async function M3Q(A,Q,B,Y,J,C,X,G){WC(X!==0||Y[SS]===0,"iterator body cannot be pipelined");let W=null;function F(){if(W){let U=W;W=null,U()}}let Z=()=>new Promise((U,$)=>{if(WC(W===null),C[D1])$(C[D1]);else W=U});Q.on("close",F).on("drain",F);try{for await(let U of B){if(C[D1])throw C[D1];let $=Q.write(U);if(J.onBodySent(U),!$)await Z()}if(Q.end(),J.onRequestSent(),!G)C[TS]=!0;Y[yG]()}catch(U){A(U)}finally{Q.off("close",F).off("drain",F)}}R3Q.exports=pT0});var r$=R((osY,g3Q)=>{var gG=u("node:assert"),S3Q=u("node:net"),jq=u("node:http"),n$=lQ(),{ClientStats:XS0}=Vr(),{channels:BV}=f$(),GS0=TzQ(),WS0=b$(),{InvalidArgumentError:IY,InformationalError:FS0,ClientDestroyedError:ZS0}=QB(),$S0=Eq(),{kUrl:TX,kServerName:XF,kClient:US0,kBusy:tr,kConnect:ES0,kResuming:s$,kRunning:Sq,kPending:kq,kSize:Oq,kQueue:N1,kConnected:KS0,kConnecting:YV,kNeedDrain:JF,kKeepAliveDefaultTimeout:j3Q,kHostHeader:VS0,kPendingIdx:L1,kRunningIdx:hG,kError:IS0,kPipelining:_S,kKeepAliveTimeoutValue:HS0,kMaxHeadersSize:DS0,kKeepAliveMaxTimeout:NS0,kKeepAliveTimeoutThreshold:LS0,kHeadersTimeout:qS0,kBodyTimeout:MS0,kStrictContentLength:zS0,kConnector:Pq,kMaxRequests:er,kCounter:RS0,kClose:wS0,kDestroy:jS0,kDispatch:OS0,kLocalAddress:Tq,kMaxResponseSize:PS0,kOnError:TS0,kHTTPContext:HY,kMaxConcurrentStreams:SS0,kResume:CF}=B0(),kS0=D3Q(),_S0=w3Q(),YF=Symbol("kClosedResolve"),vS0=jq&&jq.maxHeaderSize&&Number.isInteger(jq.maxHeaderSize)&&jq.maxHeaderSize>0?()=>jq.maxHeaderSize:()=>{throw new IY("http module not available or http.maxHeaderSize invalid")},O3Q=()=>{};function k3Q(A){return A[_S]??A[HY]?.defaultPipelining??1}class _3Q extends WS0{constructor(A,{maxHeaderSize:Q,headersTimeout:B,socketTimeout:Y,requestTimeout:J,connectTimeout:C,bodyTimeout:X,idleTimeout:G,keepAlive:W,keepAliveTimeout:F,maxKeepAliveTimeout:Z,keepAliveMaxTimeout:U,keepAliveTimeoutThreshold:$,socketPath:E,pipelining:K,tls:I,strictContentLength:V,maxCachedSessions:H,connect:D,maxRequestsPerClient:L,localAddress:z,maxResponseSize:M,autoSelectFamily:N,autoSelectFamilyAttemptTimeout:q,maxConcurrentStreams:w,allowH2:P}={}){if(W!==void 0)throw new IY("unsupported keepAlive, use pipelining=0 instead");if(Y!==void 0)throw new IY("unsupported socketTimeout, use headersTimeout & bodyTimeout instead");if(J!==void 0)throw new IY("unsupported requestTimeout, use headersTimeout & bodyTimeout instead");if(G!==void 0)throw new IY("unsupported idleTimeout, use keepAliveTimeout instead");if(Z!==void 0)throw new IY("unsupported maxKeepAliveTimeout, use keepAliveMaxTimeout instead");if(Q!=null){if(!Number.isInteger(Q)||Q<1)throw new IY("invalid maxHeaderSize")}else Q=vS0();if(E!=null&&typeof E!=="string")throw new IY("invalid socketPath");if(C!=null&&(!Number.isFinite(C)||C<0))throw new IY("invalid connectTimeout");if(F!=null&&(!Number.isFinite(F)||F<=0))throw new IY("invalid keepAliveTimeout");if(U!=null&&(!Number.isFinite(U)||U<=0))throw new IY("invalid keepAliveMaxTimeout");if($!=null&&!Number.isFinite($))throw new IY("invalid keepAliveTimeoutThreshold");if(B!=null&&(!Number.isInteger(B)||B<0))throw new IY("headersTimeout must be a positive integer or zero");if(X!=null&&(!Number.isInteger(X)||X<0))throw new IY("bodyTimeout must be a positive integer or zero");if(D!=null&&typeof D!=="function"&&typeof D!=="object")throw new IY("connect must be a function or an object");if(L!=null&&(!Number.isInteger(L)||L<0))throw new IY("maxRequestsPerClient must be a positive number");if(z!=null&&(typeof z!=="string"||S3Q.isIP(z)===0))throw new IY("localAddress must be valid string IP address");if(M!=null&&(!Number.isInteger(M)||M<-1))throw new IY("maxResponseSize must be a positive number");if(q!=null&&(!Number.isInteger(q)||q<-1))throw new IY("autoSelectFamilyAttemptTimeout must be a positive number");if(P!=null&&typeof P!=="boolean")throw new IY("allowH2 must be a valid boolean value");if(w!=null&&(typeof w!=="number"||w<1))throw new IY("maxConcurrentStreams must be a positive integer, greater than 0");super();if(typeof D!=="function")D=$S0({...I,maxCachedSessions:H,allowH2:P,socketPath:E,timeout:C,...typeof N==="boolean"?{autoSelectFamily:N,autoSelectFamilyAttemptTimeout:q}:void 0,...D});this[TX]=n$.parseOrigin(A),this[Pq]=D,this[_S]=K!=null?K:1,this[DS0]=Q,this[j3Q]=F==null?4000:F,this[NS0]=U==null?600000:U,this[LS0]=$==null?2000:$,this[HS0]=this[j3Q],this[XF]=null,this[Tq]=z!=null?z:null,this[s$]=0,this[JF]=0,this[VS0]=`host: ${this[TX].hostname}${this[TX].port?`:${this[TX].port}`:""}\r +`,this[MS0]=X!=null?X:300000,this[qS0]=B!=null?B:300000,this[zS0]=V==null?!0:V,this[er]=L,this[YF]=null,this[PS0]=M>-1?M:-1,this[SS0]=w!=null?w:100,this[HY]=null,this[N1]=[],this[hG]=0,this[L1]=0,this[CF]=(_)=>Aa(this,_),this[TS0]=(_)=>v3Q(this,_)}get pipelining(){return this[_S]}set pipelining(A){this[_S]=A,this[CF](!0)}get stats(){return new XS0(this)}get[kq](){return this[N1].length-this[L1]}get[Sq](){return this[L1]-this[hG]}get[Oq](){return this[N1].length-this[hG]}get[KS0](){return!!this[HY]&&!this[YV]&&!this[HY].destroyed}get[tr](){return Boolean(this[HY]?.busy(null)||this[Oq]>=(k3Q(this)||1)||this[kq]>0)}[ES0](A){y3Q(this),this.once("connect",A)}[OS0](A,Q){let B=new GS0(this[TX].origin,A,Q);if(this[N1].push(B),this[s$]);else if(n$.bodyLength(B.body)==null&&n$.isIterable(B.body))this[s$]=1,queueMicrotask(()=>Aa(this));else this[CF](!0);if(this[s$]&&this[JF]!==2&&this[tr])this[JF]=2;return this[JF]<2}[wS0](){return new Promise((A)=>{if(this[Oq])this[YF]=A;else A(null)})}[jS0](A){return new Promise((Q)=>{let B=this[N1].splice(this[L1]);for(let J=0;J{if(this[YF])this[YF](),this[YF]=null;Q(null)};if(this[HY])this[HY].destroy(A,Y),this[HY]=null;else queueMicrotask(Y);this[CF]()})}}function v3Q(A,Q){if(A[Sq]===0&&Q.code!=="UND_ERR_INFO"&&Q.code!=="UND_ERR_SOCKET"){gG(A[L1]===A[hG]);let B=A[N1].splice(A[hG]);for(let Y=0;Y{if(C){P3Q(A,C,{host:Q,hostname:B,protocol:Y,port:J}),A[CF]();return}if(A.destroyed){n$.destroy(X.on("error",O3Q),new ZS0),A[CF]();return}gG(X);try{A[HY]=X.alpnProtocol==="h2"?_S0(A,X):kS0(A,X)}catch(G){X.destroy().on("error",O3Q),P3Q(A,G,{host:Q,hostname:B,protocol:Y,port:J}),A[CF]();return}if(A[YV]=!1,X[RS0]=0,X[er]=A[er],X[US0]=A,X[IS0]=null,BV.connected.hasSubscribers)BV.connected.publish({connectParams:{host:Q,hostname:B,protocol:Y,port:J,version:A[HY]?.version,servername:A[XF],localAddress:A[Tq]},connector:A[Pq],socket:X});A.emit("connect",A[TX],[A]),A[CF]()})}function P3Q(A,Q,{host:B,hostname:Y,protocol:J,port:C}){if(A.destroyed)return;if(A[YV]=!1,BV.connectError.hasSubscribers)BV.connectError.publish({connectParams:{host:B,hostname:Y,protocol:J,port:C,version:A[HY]?.version,servername:A[XF],localAddress:A[Tq]},connector:A[Pq],error:Q});if(Q.code==="ERR_TLS_CERT_ALTNAME_INVALID"){gG(A[Sq]===0);while(A[kq]>0&&A[N1][A[L1]].servername===A[XF]){let X=A[N1][A[L1]++];n$.errorRequest(A,X,Q)}}else v3Q(A,Q);A.emit("connectionError",A[TX],[A],Q)}function T3Q(A){A[JF]=0,A.emit("drain",A[TX],[A])}function Aa(A,Q){if(A[s$]===2)return;if(A[s$]=2,yS0(A,Q),A[s$]=0,A[hG]>256)A[N1].splice(0,A[hG]),A[L1]-=A[hG],A[hG]=0}function yS0(A,Q){while(!0){if(A.destroyed){gG(A[kq]===0);return}if(A[YF]&&!A[Oq]){A[YF](),A[YF]=null;return}if(A[HY])A[HY].resume();if(A[tr])A[JF]=2;else if(A[JF]===2){if(Q)A[JF]=1,queueMicrotask(()=>T3Q(A));else T3Q(A);continue}if(A[kq]===0)return;if(A[Sq]>=(k3Q(A)||1))return;let B=A[N1][A[L1]];if(A[TX].protocol==="https:"&&A[XF]!==B.servername){if(A[Sq]>0)return;A[XF]=B.servername,A[HY]?.destroy(new FS0("servername changed"),()=>{A[HY]=null,Aa(A)})}if(A[YV])return;if(!A[HY]){y3Q(A);return}if(A[HY].destroyed)return;if(A[HY].busy(B))return;if(!B.aborted&&A[HY].write(B))A[L1]++;else A[N1].splice(A[L1],1)}}g3Q.exports=_3Q});var Ba=R((tsY,h3Q)=>{class Qa{bottom=0;top=0;list=Array(2048).fill(void 0);next=null;isEmpty(){return this.top===this.bottom}isFull(){return(this.top+1&2047)===this.bottom}push(A){this.list[this.top]=A,this.top=this.top+1&2047}shift(){let A=this.list[this.bottom];if(A===void 0)return null;return this.list[this.bottom]=void 0,this.bottom=this.bottom+1&2047,A}}h3Q.exports=class{constructor(){this.head=this.tail=new Qa}isEmpty(){return this.head.isEmpty()}push(Q){if(this.head.isFull())this.head=this.head.next=new Qa;this.head.push(Q)}shift(){let Q=this.tail,B=Q.shift();if(Q.isEmpty()&&Q.next!==null)this.tail=Q.next,Q.next=null;return B}}});var Ga=R((esY,i3Q)=>{var{PoolStats:gS0}=Vr(),hS0=b$(),xS0=Ba(),{kConnected:Ya,kSize:x3Q,kRunning:f3Q,kPending:b3Q,kQueued:_q,kBusy:fS0,kFree:bS0,kUrl:mS0,kClose:uS0,kDestroy:dS0,kDispatch:cS0}=B0(),jY=Symbol("clients"),R9=Symbol("needDrain"),vq=Symbol("queue"),Ja=Symbol("closed resolve"),Ca=Symbol("onDrain"),m3Q=Symbol("onConnect"),u3Q=Symbol("onDisconnect"),d3Q=Symbol("onConnectionError"),Xa=Symbol("get dispatcher"),c3Q=Symbol("add client"),l3Q=Symbol("remove client");class p3Q extends hS0{[vq]=new xS0;[_q]=0;[jY]=[];[R9]=!1;[Ca](A,Q,B){let Y=this[vq],J=!1;while(!J){let C=Y.shift();if(!C)break;this[_q]--,J=!A.dispatch(C.opts,C.handler)}if(A[R9]=J,!J&&this[R9])this[R9]=!1,this.emit("drain",Q,[this,...B]);if(this[Ja]&&Y.isEmpty()){let C=Array(this[jY].length);for(let X=0;X{this.emit("connect",A,[this,...Q])};[u3Q]=(A,Q,B)=>{this.emit("disconnect",A,[this,...Q],B)};[d3Q]=(A,Q,B)=>{this.emit("connectionError",A,[this,...Q],B)};get[fS0](){return this[R9]}get[Ya](){let A=0;for(let{[Ya]:Q}of this[jY])A+=Q;return A}get[bS0](){let A=0;for(let{[Ya]:Q,[R9]:B}of this[jY])A+=Q&&!B;return A}get[b3Q](){let A=this[_q];for(let{[b3Q]:Q}of this[jY])A+=Q;return A}get[f3Q](){let A=0;for(let{[f3Q]:Q}of this[jY])A+=Q;return A}get[x3Q](){let A=this[_q];for(let{[x3Q]:Q}of this[jY])A+=Q;return A}get stats(){return new gS0(this)}[uS0](){if(this[vq].isEmpty()){let A=Array(this[jY].length);for(let Q=0;Q{this[Ja]=A})}[dS0](A){while(!0){let B=this[vq].shift();if(!B)break;B.handler.onError(A)}let Q=Array(this[jY].length);for(let B=0;B{if(this[R9])this[Ca](A,A[mS0],[A,this])});return this}[l3Q](A){A.close(()=>{let Q=this[jY].indexOf(A);if(Q!==-1)this[jY].splice(Q,1)}),this[R9]=this[jY].some((Q)=>!Q[R9]&&Q.closed!==!0&&Q.destroyed!==!0)}}i3Q.exports={PoolBase:p3Q,kClients:jY,kNeedDrain:R9,kAddClient:c3Q,kRemoveClient:l3Q,kGetDispatcher:Xa}});var JV=R((ArY,o3Q)=>{var{PoolBase:lS0,kClients:vS,kNeedDrain:pS0,kAddClient:iS0,kGetDispatcher:nS0,kRemoveClient:sS0}=Ga(),rS0=r$(),{InvalidArgumentError:Wa}=QB(),n3Q=lQ(),{kUrl:s3Q}=B0(),aS0=Eq(),yS=Symbol("options"),Fa=Symbol("connections"),r3Q=Symbol("factory");function oS0(A,Q){return new rS0(A,Q)}class a3Q extends lS0{constructor(A,{connections:Q,factory:B=oS0,connect:Y,connectTimeout:J,tls:C,maxCachedSessions:X,socketPath:G,autoSelectFamily:W,autoSelectFamilyAttemptTimeout:F,allowH2:Z,clientTtl:U,...$}={}){if(Q!=null&&(!Number.isFinite(Q)||Q<0))throw new Wa("invalid connections");if(typeof B!=="function")throw new Wa("factory must be a function.");if(Y!=null&&typeof Y!=="function"&&typeof Y!=="object")throw new Wa("connect must be a function or an object");if(typeof Y!=="function")Y=aS0({...C,maxCachedSessions:X,allowH2:Z,socketPath:G,timeout:J,...typeof W==="boolean"?{autoSelectFamily:W,autoSelectFamilyAttemptTimeout:F}:void 0,...Y});super();this[Fa]=Q||null,this[s3Q]=n3Q.parseOrigin(A),this[yS]={...n3Q.deepClone($),connect:Y,allowH2:Z,clientTtl:U},this[yS].interceptors=$.interceptors?{...$.interceptors}:void 0,this[r3Q]=B,this.on("connect",(E,K)=>{if(U!=null&&U>0)for(let I of K)Object.assign(I,{ttl:Date.now()})}),this.on("connectionError",(E,K,I)=>{for(let V of K){let H=this[vS].indexOf(V);if(H!==-1)this[vS].splice(H,1)}})}[nS0](){let A=this[yS].clientTtl;for(let Q of this[vS])if(A!=null&&A>0&&Q.ttl&&Date.now()-Q.ttl>A)this[sS0](Q);else if(!Q[pS0])return Q;if(!this[Fa]||this[vS].length{var{BalancedPoolMissingUpstreamError:tS0,InvalidArgumentError:eS0}=QB(),{PoolBase:Ak0,kClients:bJ,kNeedDrain:yq,kAddClient:Qk0,kRemoveClient:Bk0,kGetDispatcher:Yk0}=Ga(),Jk0=JV(),{kUrl:Za}=B0(),{parseOrigin:t3Q}=lQ(),e3Q=Symbol("factory"),gS=Symbol("options"),ARQ=Symbol("kGreatestCommonDivisor"),a$=Symbol("kCurrentWeight"),o$=Symbol("kIndex"),FC=Symbol("kWeight"),hS=Symbol("kMaxWeightPerServer"),xS=Symbol("kErrorPenalty");function Ck0(A,Q){if(A===0)return Q;while(Q!==0){let B=Q;Q=A%Q,A=B}return A}function Xk0(A,Q){return new Jk0(A,Q)}class QRQ extends Ak0{constructor(A=[],{factory:Q=Xk0,...B}={}){if(typeof Q!=="function")throw new eS0("factory must be a function.");super();if(this[gS]=B,this[o$]=-1,this[a$]=0,this[hS]=this[gS].maxWeightPerServer||100,this[xS]=this[gS].errorPenalty||15,!Array.isArray(A))A=[A];this[e3Q]=Q;for(let Y of A)this.addUpstream(Y);this._updateBalancedPoolStats()}addUpstream(A){let Q=t3Q(A).origin;if(this[bJ].find((Y)=>Y[Za].origin===Q&&Y.closed!==!0&&Y.destroyed!==!0))return this;let B=this[e3Q](Q,Object.assign({},this[gS]));this[Qk0](B),B.on("connect",()=>{B[FC]=Math.min(this[hS],B[FC]+this[xS])}),B.on("connectionError",()=>{B[FC]=Math.max(1,B[FC]-this[xS]),this._updateBalancedPoolStats()}),B.on("disconnect",(...Y)=>{let J=Y[2];if(J&&J.code==="UND_ERR_SOCKET")B[FC]=Math.max(1,B[FC]-this[xS]),this._updateBalancedPoolStats()});for(let Y of this[bJ])Y[FC]=this[hS];return this._updateBalancedPoolStats(),this}_updateBalancedPoolStats(){let A=0;for(let Q=0;QY[Za].origin===Q&&Y.closed!==!0&&Y.destroyed!==!0);if(B)this[Bk0](B);return this}get upstreams(){return this[bJ].filter((A)=>A.closed!==!0&&A.destroyed!==!0).map((A)=>A[Za].origin)}[Yk0](){if(this[bJ].length===0)throw new tS0;if(!this[bJ].find((J)=>!J[yq]&&J.closed!==!0&&J.destroyed!==!0))return;if(this[bJ].map((J)=>J[yq]).reduce((J,C)=>J&&C,!0))return;let B=0,Y=this[bJ].findIndex((J)=>!J[yq]);while(B++this[bJ][Y][FC]&&!J[yq])Y=this[o$];if(this[o$]===0){if(this[a$]=this[a$]-this[ARQ],this[a$]<=0)this[a$]=this[hS]}if(J[FC]>=this[a$]&&!J[yq])return J}return this[a$]=this[bJ][Y][FC],this[o$]=Y,this[bJ][Y]}}BRQ.exports=QRQ});var t$=R((BrY,$RQ)=>{var{InvalidArgumentError:fS,MaxOriginsReachedError:Gk0}=QB(),{kClients:ZC,kRunning:JRQ,kClose:Wk0,kDestroy:Fk0,kDispatch:Zk0,kUrl:$k0}=B0(),Uk0=b$(),Ek0=JV(),Kk0=r$(),Vk0=lQ(),CRQ=Symbol("onConnect"),XRQ=Symbol("onDisconnect"),GRQ=Symbol("onConnectionError"),WRQ=Symbol("onDrain"),FRQ=Symbol("factory"),$a=Symbol("options"),gq=Symbol("origins");function Ik0(A,Q){return Q&&Q.connections===1?new Kk0(A,Q):new Ek0(A,Q)}class ZRQ extends Uk0{constructor({factory:A=Ik0,maxOrigins:Q=1/0,connect:B,...Y}={}){if(typeof A!=="function")throw new fS("factory must be a function.");if(B!=null&&typeof B!=="function"&&typeof B!=="object")throw new fS("connect must be a function or an object");if(typeof Q!=="number"||Number.isNaN(Q)||Q<=0)throw new fS("maxOrigins must be a number greater than 0");super();if(B&&typeof B!=="function")B={...B};this[$a]={...Vk0.deepClone(Y),maxOrigins:Q,connect:B},this[FRQ]=A,this[ZC]=new Map,this[gq]=new Set,this[WRQ]=(J,C)=>{this.emit("drain",J,[this,...C])},this[CRQ]=(J,C)=>{this.emit("connect",J,[this,...C])},this[XRQ]=(J,C,X)=>{this.emit("disconnect",J,[this,...C],X)},this[GRQ]=(J,C,X)=>{this.emit("connectionError",J,[this,...C],X)}}get[JRQ](){let A=0;for(let{dispatcher:Q}of this[ZC].values())A+=Q[JRQ];return A}[Zk0](A,Q){let B;if(A.origin&&(typeof A.origin==="string"||A.origin instanceof URL))B=String(A.origin);else throw new fS("opts.origin must be a non-empty string or URL.");if(this[gq].size>=this[$a].maxOrigins&&!this[gq].has(B))throw new Gk0;let Y=this[ZC].get(B),J=Y&&Y.dispatcher;if(!J){let C=(X)=>{let G=this[ZC].get(B);if(G){if(X)G.count-=1;if(G.count<=0)this[ZC].delete(B),G.dispatcher.close();this[gq].delete(B)}};J=this[FRQ](A.origin,this[$a]).on("drain",this[WRQ]).on("connect",(X,G)=>{let W=this[ZC].get(B);if(W)W.count+=1;this[CRQ](X,G)}).on("disconnect",(X,G,W)=>{C(!0),this[XRQ](X,G,W)}).on("connectionError",(X,G,W)=>{C(!1),this[GRQ](X,G,W)}),this[ZC].set(B,{count:0,dispatcher:J}),this[gq].add(B)}return J.dispatch(A,Q)}[Wk0](){let A=[];for(let{dispatcher:Q}of this[ZC].values())A.push(Q.close());return this[ZC].clear(),Promise.all(A)}[Fk0](A){let Q=[];for(let{dispatcher:B}of this[ZC].values())Q.push(B.destroy(A));return this[ZC].clear(),Promise.all(Q)}get stats(){let A={};for(let{dispatcher:Q}of this[ZC].values())if(Q.stats)A[Q[$k0].origin]=Q.stats;return A}}$RQ.exports=ZRQ});var Ka=R((YrY,RRQ)=>{var{kProxy:Ua,kClose:HRQ,kDestroy:DRQ,kDispatch:URQ}=B0(),Hk0=t$(),NRQ=JV(),LRQ=b$(),{InvalidArgumentError:CV,RequestAbortedError:Dk0,SecureProxyConnectionError:Nk0}=QB(),ERQ=Eq(),qRQ=r$(),bS=Symbol("proxy agent"),mS=Symbol("proxy client"),GF=Symbol("proxy headers"),Ea=Symbol("request tls settings"),KRQ=Symbol("proxy tls settings"),VRQ=Symbol("connect endpoint function"),IRQ=Symbol("tunnel proxy");function Lk0(A){return A==="https:"?443:80}function qk0(A,Q){return new NRQ(A,Q)}var Mk0=()=>{};function zk0(A,Q){if(Q.connections===1)return new qRQ(A,Q);return new NRQ(A,Q)}class MRQ extends LRQ{#A;constructor(A,{headers:Q={},connect:B,factory:Y}){if(!A)throw new CV("Proxy URL is mandatory");super();if(this[GF]=Q,Y)this.#A=Y(A,{connect:B});else this.#A=new qRQ(A,{connect:B})}[URQ](A,Q){let B=Q.onHeaders;Q.onHeaders=function(X,G,W){if(X===407){if(typeof Q.onError==="function")Q.onError(new CV("Proxy Authentication Required (407)"));return}if(B)B.call(this,X,G,W)};let{origin:Y,path:J="/",headers:C={}}=A;if(A.path=Y+J,!("host"in C)&&!("Host"in C)){let{host:X}=new URL(Y);C.host=X}return A.headers={...this[GF],...C},this.#A[URQ](A,Q)}[HRQ](){return this.#A.close()}[DRQ](A){return this.#A.destroy(A)}}class zRQ extends LRQ{constructor(A){if(!A||typeof A==="object"&&!(A instanceof URL)&&!A.uri)throw new CV("Proxy uri is mandatory");let{clientFactory:Q=qk0}=A;if(typeof Q!=="function")throw new CV("Proxy opts.clientFactory must be a function.");let{proxyTunnel:B=!0}=A;super();let Y=this.#A(A),{href:J,origin:C,port:X,protocol:G,username:W,password:F,hostname:Z}=Y;if(this[Ua]={uri:J,protocol:G},this[Ea]=A.requestTls,this[KRQ]=A.proxyTls,this[GF]=A.headers||{},this[IRQ]=B,A.auth&&A.token)throw new CV("opts.auth cannot be used in combination with opts.token");else if(A.auth)this[GF]["proxy-authorization"]=`Basic ${A.auth}`;else if(A.token)this[GF]["proxy-authorization"]=A.token;else if(W&&F)this[GF]["proxy-authorization"]=`Basic ${Buffer.from(`${decodeURIComponent(W)}:${decodeURIComponent(F)}`).toString("base64")}`;let U=ERQ({...A.proxyTls});this[VRQ]=ERQ({...A.requestTls});let $=A.factory||zk0,E=(K,I)=>{let{protocol:V}=new URL(K);if(!this[IRQ]&&V==="http:"&&this[Ua].protocol==="http:")return new MRQ(this[Ua].uri,{headers:this[GF],connect:U,factory:$});return $(K,I)};this[mS]=Q(Y,{connect:U}),this[bS]=new Hk0({...A,factory:E,connect:async(K,I)=>{let V=K.host;if(!K.port)V+=`:${Lk0(K.protocol)}`;try{let{socket:H,statusCode:D}=await this[mS].connect({origin:C,port:X,path:V,signal:K.signal,headers:{...this[GF],host:K.host,...K.connections==null||K.connections>0?{"proxy-connection":"keep-alive"}:{}},servername:this[KRQ]?.servername||Z});if(D!==200)H.on("error",Mk0).destroy(),I(new Dk0(`Proxy response (${D}) !== 200 when HTTP Tunneling`));if(K.protocol!=="https:"){I(null,H);return}let L;if(this[Ea])L=this[Ea].servername;else L=K.servername;this[VRQ]({...K,servername:L,httpSocket:H},I)}catch(H){if(H.code==="ERR_TLS_CERT_ALTNAME_INVALID")I(new Nk0(H));else I(H)}}})}dispatch(A,Q){let B=Rk0(A.headers);if(wk0(B),B&&!("host"in B)&&!("Host"in B)){let{host:Y}=new URL(A.origin);B.host=Y}return this[bS].dispatch({...A,headers:B},Q)}#A(A){if(typeof A==="string")return new URL(A);else if(A instanceof URL)return A;else return new URL(A.uri)}[HRQ](){return Promise.all([this[bS].close(),this[mS].close()])}[DRQ](){return Promise.all([this[bS].destroy(),this[mS].destroy()])}}function Rk0(A){if(Array.isArray(A)){let Q={};for(let B=0;BB.toLowerCase()==="proxy-authorization"))throw new CV("Proxy-Authorization should be sent in ProxyAgent constructor")}RRQ.exports=zRQ});var SRQ=R((JrY,TRQ)=>{var jk0=b$(),{kClose:Ok0,kDestroy:Pk0,kClosed:wRQ,kDestroyed:jRQ,kDispatch:Tk0,kNoProxyAgent:hq,kHttpProxyAgent:WF,kHttpsProxyAgent:e$}=B0(),ORQ=Ka(),Sk0=t$(),kk0={"http:":80,"https:":443};class PRQ extends jk0{#A=null;#Q=null;#B=null;constructor(A={}){super();this.#B=A;let{httpProxy:Q,httpsProxy:B,noProxy:Y,...J}=A;this[hq]=new Sk0(J);let C=Q??process.env.http_proxy??process.env.HTTP_PROXY;if(C)this[WF]=new ORQ({...J,uri:C});else this[WF]=this[hq];let X=B??process.env.https_proxy??process.env.HTTPS_PROXY;if(X)this[e$]=new ORQ({...J,uri:X});else this[e$]=this[WF];this.#C()}[Tk0](A,Q){let B=new URL(A.origin);return this.#Y(B).dispatch(A,Q)}[Ok0](){return Promise.all([this[hq].close(),!this[WF][wRQ]&&this[WF].close(),!this[e$][wRQ]&&this[e$].close()])}[Pk0](A){return Promise.all([this[hq].destroy(A),!this[WF][jRQ]&&this[WF].destroy(A),!this[e$][jRQ]&&this[e$].destroy(A)])}#Y(A){let{protocol:Q,host:B,port:Y}=A;if(B=B.replace(/:\d*$/,"").toLowerCase(),Y=Number.parseInt(Y,10)||kk0[Q]||0,!this.#J(B,Y))return this[hq];if(Q==="https:")return this[e$];return this[WF]}#J(A,Q){if(this.#W)this.#C();if(this.#Q.length===0)return!0;if(this.#A==="*")return!1;for(let B=0;B{var XV=u("node:assert"),{kRetryHandlerDefaultRetry:kRQ}=B0(),{RequestRetryError:xq}=QB(),_k0=Zq(),{isDisturbed:_RQ,parseRangeHeader:vRQ,wrapRequestBody:vk0}=lQ();function yk0(A){let Q=new Date(A).getTime();return isNaN(Q)?0:Q-Date.now()}class Va{constructor(A,{dispatch:Q,handler:B}){let{retryOptions:Y,...J}=A,{retry:C,maxRetries:X,maxTimeout:G,minTimeout:W,timeoutFactor:F,methods:Z,errorCodes:U,retryAfter:$,statusCodes:E,throwOnError:K}=Y??{};this.error=null,this.dispatch=Q,this.handler=_k0.wrap(B),this.opts={...J,body:vk0(A.body)},this.retryOpts={throwOnError:K??!0,retry:C??Va[kRQ],retryAfter:$??!0,maxTimeout:G??30000,minTimeout:W??500,timeoutFactor:F??2,maxRetries:X??5,methods:Z??["GET","HEAD","OPTIONS","PUT","DELETE","TRACE"],statusCodes:E??[500,502,503,504,429],errorCodes:U??["ECONNRESET","ECONNREFUSED","ENOTFOUND","ENETDOWN","ENETUNREACH","EHOSTDOWN","EHOSTUNREACH","EPIPE","UND_ERR_SOCKET"]},this.retryCount=0,this.retryCountCheckpoint=0,this.headersSent=!1,this.start=0,this.end=null,this.etag=null}onResponseStartWithRetry(A,Q,B,Y,J){if(this.retryOpts.throwOnError){if(this.retryOpts.statusCodes.includes(Q)===!1)this.headersSent=!0,this.handler.onResponseStart?.(A,Q,B,Y);else this.error=J;return}if(_RQ(this.opts.body)){this.headersSent=!0,this.handler.onResponseStart?.(A,Q,B,Y);return}function C(X){if(X){this.headersSent=!0,this.headersSent=!0,this.handler.onResponseStart?.(A,Q,B,Y),A.resume();return}this.error=J,A.resume()}A.pause(),this.retryOpts.retry(J,{state:{counter:this.retryCount},opts:{retryOptions:this.retryOpts,...this.opts}},C.bind(this))}onRequestStart(A,Q){if(!this.headersSent)this.handler.onRequestStart?.(A,Q)}onRequestUpgrade(A,Q,B,Y){this.handler.onRequestUpgrade?.(A,Q,B,Y)}static[kRQ](A,{state:Q,opts:B},Y){let{statusCode:J,code:C,headers:X}=A,{method:G,retryOptions:W}=B,{maxRetries:F,minTimeout:Z,maxTimeout:U,timeoutFactor:$,statusCodes:E,errorCodes:K,methods:I}=W,{counter:V}=Q;if(C&&C!=="UND_ERR_REQ_RETRY"&&!K.includes(C)){Y(A);return}if(Array.isArray(I)&&!I.includes(G)){Y(A);return}if(J!=null&&Array.isArray(E)&&!E.includes(J)){Y(A);return}if(V>F){Y(A);return}let H=X?.["retry-after"];if(H)H=Number(H),H=Number.isNaN(H)?yk0(X["retry-after"]):H*1000;let D=H>0?Math.min(H,U):Math.min(Z*$**(V-1),U);setTimeout(()=>Y(null),D)}onResponseStart(A,Q,B,Y){if(this.error=null,this.retryCount+=1,Q>=300){let J=new xq("Request failed",Q,{headers:B,data:{count:this.retryCount}});this.onResponseStartWithRetry(A,Q,B,Y,J);return}if(this.headersSent){if(Q!==206&&(this.start>0||Q!==200))throw new xq("server does not support the range header and the payload was partially consumed",Q,{headers:B,data:{count:this.retryCount}});let J=vRQ(B["content-range"]);if(!J)throw new xq("Content-Range mismatch",Q,{headers:B,data:{count:this.retryCount}});if(this.etag!=null&&this.etag!==B.etag)throw new xq("ETag mismatch",Q,{headers:B,data:{count:this.retryCount}});let{start:C,size:X,end:G=X?X-1:null}=J;XV(this.start===C,"content-range mismatch"),XV(this.end==null||this.end===G,"content-range mismatch");return}if(this.end==null){if(Q===206){let J=vRQ(B["content-range"]);if(J==null){this.headersSent=!0,this.handler.onResponseStart?.(A,Q,B,Y);return}let{start:C,size:X,end:G=X?X-1:null}=J;XV(C!=null&&Number.isFinite(C),"content-range mismatch"),XV(G!=null&&Number.isFinite(G),"invalid content-length"),this.start=C,this.end=G}if(this.end==null){let J=B["content-length"];this.end=J!=null?Number(J)-1:null}if(XV(Number.isFinite(this.start)),XV(this.end==null||Number.isFinite(this.end),"invalid content-length"),this.resume=!0,this.etag=B.etag!=null?B.etag:null,this.etag!=null&&this.etag[0]==="W"&&this.etag[1]==="/")this.etag=null;this.headersSent=!0,this.handler.onResponseStart?.(A,Q,B,Y)}else throw new xq("Request failed",Q,{headers:B,data:{count:this.retryCount}})}onResponseData(A,Q){if(this.error)return;this.start+=Q.length,this.handler.onResponseData?.(A,Q)}onResponseEnd(A,Q){if(this.error&&this.retryOpts.throwOnError)throw this.error;if(!this.error)return this.retryCount=0,this.handler.onResponseEnd?.(A,Q);this.retry(A)}retry(A){if(this.start!==0){let Q={range:`bytes=${this.start}-${this.end??""}`};if(this.etag!=null)Q["if-match"]=this.etag;this.opts={...this.opts,headers:{...this.opts.headers,...Q}}}try{this.retryCountCheckpoint=this.retryCount,this.dispatch(this.opts,this)}catch(Q){this.handler.onResponseError?.(A,Q)}}onResponseError(A,Q){if(A?.aborted||_RQ(this.opts.body)){this.handler.onResponseError?.(A,Q);return}function B(Y){if(!Y){this.retry(A);return}this.handler?.onResponseError?.(A,Y)}if(this.retryCount-this.retryCountCheckpoint>0)this.retryCount=this.retryCountCheckpoint+(this.retryCount-this.retryCountCheckpoint);else this.retryCount+=1;this.retryOpts.retry(Q,{state:{counter:this.retryCount},opts:{retryOptions:this.retryOpts,...this.opts}},B.bind(this))}}yRQ.exports=Va});var xRQ=R((XrY,hRQ)=>{var gk0=$q(),hk0=uS();class gRQ extends gk0{#A=null;#Q=null;constructor(A,Q={}){super(Q);this.#A=A,this.#Q=Q}dispatch(A,Q){let B=new hk0({...A,retryOptions:this.#Q},{dispatch:this.#A.dispatch.bind(this.#A),handler:Q});return this.#A.dispatch(A,B)}close(){return this.#A.close()}destroy(){return this.#A.destroy()}}hRQ.exports=gRQ});var uRQ=R((GrY,mRQ)=>{var{connect:xk0}=u("node:net"),{kClose:fk0,kDestroy:bk0}=B0(),{InvalidArgumentError:fRQ}=QB(),mk0=lQ(),uk0=r$(),dk0=b$();class bRQ extends dk0{#A=null;constructor(A,Q){if(typeof A==="string")A=new URL(A);if(A.protocol!=="http:")throw new fRQ("h2c-client: Only h2c protocol is supported");let{connect:B,maxConcurrentStreams:Y,pipelining:J,...C}=Q??{},X=100,G=100;if(Y!=null&&Number.isInteger(Y)&&Y>0)X=Y;if(J!=null&&Number.isInteger(J)&&J>0)G=J;if(G>X)throw new fRQ("h2c-client: pipelining cannot be greater than maxConcurrentStreams");super();this.#A=new uk0(A,{...C,connect:this.#Q(B),maxConcurrentStreams:X,pipelining:G,allowH2:!0})}#Q(A){return(Q,B)=>{let Y=A?.connectOpts??1e4,{hostname:J,port:C,pathname:X}=Q,G=xk0({...Q,host:J,port:C,pathname:X});if(Q.keepAlive==null||Q.keepAlive){let F=Q.keepAliveInitialDelay==null?60000:Q.keepAliveInitialDelay;G.setKeepAlive(!0,F)}G.alpnProtocol="h2";let W=mk0.setupConnectTimeout(new WeakRef(G),{timeout:Y,hostname:J,port:C});return G.setNoDelay(!0).once("connect",function(){if(queueMicrotask(W),B){let F=B;B=null,F(null,this)}}).on("error",function(F){if(queueMicrotask(W),B){let Z=B;B=null,Z(F)}}),G}}dispatch(A,Q){return this.#A.dispatch(A,Q)}[fk0](){return this.#A.close()}[bk0](){return this.#A.destroy()}}mRQ.exports=bRQ});var oRQ=R((WrY,aRQ)=>{var pRQ=u("node:assert"),{Readable:ck0}=u("node:stream"),{RequestAbortedError:iRQ,NotSupportedError:lk0,InvalidArgumentError:pk0,AbortError:dS}=QB(),nRQ=lQ(),{ReadableStreamFrom:ik0}=lQ(),p8=Symbol("kConsume"),cS=Symbol("kReading"),A4=Symbol("kBody"),dRQ=Symbol("kAbort"),sRQ=Symbol("kContentType"),Ia=Symbol("kContentLength"),Ha=Symbol("kUsed"),lS=Symbol("kBytesRead"),nk0=()=>{};class rRQ extends ck0{constructor({resume:A,abort:Q,contentType:B="",contentLength:Y,highWaterMark:J=65536}){super({autoDestroy:!0,read:A,highWaterMark:J});this._readableState.dataEmitted=!1,this[dRQ]=Q,this[p8]=null,this[lS]=0,this[A4]=null,this[Ha]=!1,this[sRQ]=B,this[Ia]=Number.isFinite(Y)?Y:null,this[cS]=!1}_destroy(A,Q){if(!A&&!this._readableState.endEmitted)A=new iRQ;if(A)this[dRQ]();if(!this[Ha])setImmediate(Q,A);else Q(A)}on(A,Q){if(A==="data"||A==="readable")this[cS]=!0,this[Ha]=!0;return super.on(A,Q)}addListener(A,Q){return this.on(A,Q)}off(A,Q){let B=super.off(A,Q);if(A==="data"||A==="readable")this[cS]=this.listenerCount("data")>0||this.listenerCount("readable")>0;return B}removeListener(A,Q){return this.off(A,Q)}push(A){if(A){if(this[lS]+=A.length,this[p8])return Na(this[p8],A),this[cS]?super.push(A):!0}return super.push(A)}text(){return fq(this,"text")}json(){return fq(this,"json")}blob(){return fq(this,"blob")}bytes(){return fq(this,"bytes")}arrayBuffer(){return fq(this,"arrayBuffer")}async formData(){throw new lk0}get bodyUsed(){return nRQ.isDisturbed(this)}get body(){if(!this[A4]){if(this[A4]=ik0(this),this[p8])this[A4].getReader(),pRQ(this[A4].locked)}return this[A4]}dump(A){let Q=A?.signal;if(Q!=null&&(typeof Q!=="object"||!("aborted"in Q)))return Promise.reject(new pk0("signal must be an AbortSignal"));let B=A?.limit&&Number.isFinite(A.limit)?A.limit:131072;if(Q?.aborted)return Promise.reject(Q.reason??new dS);if(this._readableState.closeEmitted)return Promise.resolve(null);return new Promise((Y,J)=>{if(this[Ia]&&this[Ia]>B||this[lS]>B)this.destroy(new dS);if(Q){let C=()=>{this.destroy(Q.reason??new dS)};Q.addEventListener("abort",C),this.on("close",function(){if(Q.removeEventListener("abort",C),Q.aborted)J(Q.reason??new dS);else Y(null)})}else this.on("close",Y);this.on("error",nk0).on("data",()=>{if(this[lS]>B)this.destroy()}).resume()})}setEncoding(A){if(Buffer.isEncoding(A))this._readableState.encoding=A;return this}}function sk0(A){return A[A4]?.locked===!0||A[p8]!==null}function rk0(A){return nRQ.isDisturbed(A)||sk0(A)}function fq(A,Q){return pRQ(!A[p8]),new Promise((B,Y)=>{if(rk0(A)){let J=A._readableState;if(J.destroyed&&J.closeEmitted===!1)A.on("error",Y).on("close",()=>{Y(TypeError("unusable"))});else Y(J.errored??TypeError("unusable"))}else queueMicrotask(()=>{A[p8]={type:Q,stream:A,resolve:B,reject:Y,length:0,body:[]},A.on("error",function(J){La(this[p8],J)}).on("close",function(){if(this[p8].body!==null)La(this[p8],new iRQ)}),ak0(A[p8])})})}function ak0(A){if(A.body===null)return;let{_readableState:Q}=A.stream;if(Q.bufferIndex){let B=Q.bufferIndex,Y=Q.buffer.length;for(let J=B;J2&&Y[0]===239&&Y[1]===187&&Y[2]===191?3:0;if(!B||B==="utf8"||B==="utf-8")return Y.utf8Slice(C,J);else return Y.subarray(C,J).toString(B)}function cRQ(A,Q){if(A.length===0||Q===0)return new Uint8Array(0);if(A.length===1)return new Uint8Array(A[0]);let B=new Uint8Array(Buffer.allocUnsafeSlow(Q).buffer),Y=0;for(let J=0;J{var ok0=u("node:assert"),{AsyncResource:tk0}=u("node:async_hooks"),{Readable:ek0}=oRQ(),{InvalidArgumentError:GV,RequestAbortedError:tRQ}=QB(),$C=lQ();function bq(){}class qa extends tk0{constructor(A,Q){if(!A||typeof A!=="object")throw new GV("invalid opts");let{signal:B,method:Y,opaque:J,body:C,onInfo:X,responseHeaders:G,highWaterMark:W}=A;try{if(typeof Q!=="function")throw new GV("invalid callback");if(W&&(typeof W!=="number"||W<0))throw new GV("invalid highWaterMark");if(B&&typeof B.on!=="function"&&typeof B.addEventListener!=="function")throw new GV("signal must be an EventEmitter or EventTarget");if(Y==="CONNECT")throw new GV("invalid method");if(X&&typeof X!=="function")throw new GV("invalid onInfo callback");super("UNDICI_REQUEST")}catch(F){if($C.isStream(C))$C.destroy(C.on("error",bq),F);throw F}if(this.method=Y,this.responseHeaders=G||null,this.opaque=J||null,this.callback=Q,this.res=null,this.abort=null,this.body=C,this.trailers={},this.context=null,this.onInfo=X||null,this.highWaterMark=W,this.reason=null,this.removeAbortListener=null,B?.aborted)this.reason=B.reason??new tRQ;else if(B)this.removeAbortListener=$C.addAbortListener(B,()=>{if(this.reason=B.reason??new tRQ,this.res)$C.destroy(this.res.on("error",bq),this.reason);else if(this.abort)this.abort(this.reason)})}onConnect(A,Q){if(this.reason){A(this.reason);return}ok0(this.callback),this.abort=A,this.context=Q}onHeaders(A,Q,B,Y){let{callback:J,opaque:C,abort:X,context:G,responseHeaders:W,highWaterMark:F}=this,Z=W==="raw"?$C.parseRawHeaders(Q):$C.parseHeaders(Q);if(A<200){if(this.onInfo)this.onInfo({statusCode:A,headers:Z});return}let U=W==="raw"?$C.parseHeaders(Q):Z,$=U["content-type"],E=U["content-length"],K=new ek0({resume:B,abort:X,contentType:$,contentLength:this.method!=="HEAD"&&E?Number(E):null,highWaterMark:F});if(this.removeAbortListener)K.on("close",this.removeAbortListener),this.removeAbortListener=null;if(this.callback=null,this.res=K,J!==null)try{this.runInAsyncScope(J,null,null,{statusCode:A,headers:Z,trailers:this.trailers,opaque:C,body:K,context:G})}catch(I){this.res=null,$C.destroy(K.on("error",bq),I),queueMicrotask(()=>{throw I})}}onData(A){return this.res.push(A)}onComplete(A){$C.parseHeaders(A,this.trailers),this.res.push(null)}onError(A){let{res:Q,callback:B,body:Y,opaque:J}=this;if(B)this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(B,null,A,{opaque:J})});if(Q)this.res=null,queueMicrotask(()=>{$C.destroy(Q.on("error",bq),A)});if(Y){if(this.body=null,$C.isStream(Y))Y.on("error",bq),$C.destroy(Y,A)}if(this.removeAbortListener)this.removeAbortListener(),this.removeAbortListener=null}}function eRQ(A,Q){if(Q===void 0)return new Promise((B,Y)=>{eRQ.call(this,A,(J,C)=>{return J?Y(J):B(C)})});try{let B=new qa(A,Q);this.dispatch(A,B)}catch(B){if(typeof Q!=="function")throw B;let Y=A?.opaque;queueMicrotask(()=>Q(B,{opaque:Y}))}}Ma.exports=eRQ;Ma.exports.RequestHandler=qa});var mq=R((ZrY,YwQ)=>{var{addAbortListener:A_0}=lQ(),{RequestAbortedError:Q_0}=QB(),WV=Symbol("kListener"),SX=Symbol("kSignal");function QwQ(A){if(A.abort)A.abort(A[SX]?.reason);else A.reason=A[SX]?.reason??new Q_0;BwQ(A)}function B_0(A,Q){if(A.reason=null,A[SX]=null,A[WV]=null,!Q)return;if(Q.aborted){QwQ(A);return}A[SX]=Q,A[WV]=()=>{QwQ(A)},A_0(A[SX],A[WV])}function BwQ(A){if(!A[SX])return;if("removeEventListener"in A[SX])A[SX].removeEventListener("abort",A[WV]);else A[SX].removeListener("abort",A[WV]);A[SX]=null,A[WV]=null}YwQ.exports={addSignal:B_0,removeSignal:BwQ}});var WwQ=R(($rY,GwQ)=>{var Y_0=u("node:assert"),{finished:J_0}=u("node:stream"),{AsyncResource:C_0}=u("node:async_hooks"),{InvalidArgumentError:FV,InvalidReturnValueError:X_0}=QB(),xG=lQ(),{addSignal:G_0,removeSignal:JwQ}=mq();function W_0(){}class CwQ extends C_0{constructor(A,Q,B){if(!A||typeof A!=="object")throw new FV("invalid opts");let{signal:Y,method:J,opaque:C,body:X,onInfo:G,responseHeaders:W}=A;try{if(typeof B!=="function")throw new FV("invalid callback");if(typeof Q!=="function")throw new FV("invalid factory");if(Y&&typeof Y.on!=="function"&&typeof Y.addEventListener!=="function")throw new FV("signal must be an EventEmitter or EventTarget");if(J==="CONNECT")throw new FV("invalid method");if(G&&typeof G!=="function")throw new FV("invalid onInfo callback");super("UNDICI_STREAM")}catch(F){if(xG.isStream(X))xG.destroy(X.on("error",W_0),F);throw F}if(this.responseHeaders=W||null,this.opaque=C||null,this.factory=Q,this.callback=B,this.res=null,this.abort=null,this.context=null,this.trailers=null,this.body=X,this.onInfo=G||null,xG.isStream(X))X.on("error",(F)=>{this.onError(F)});G_0(this,Y)}onConnect(A,Q){if(this.reason){A(this.reason);return}Y_0(this.callback),this.abort=A,this.context=Q}onHeaders(A,Q,B,Y){let{factory:J,opaque:C,context:X,responseHeaders:G}=this,W=G==="raw"?xG.parseRawHeaders(Q):xG.parseHeaders(Q);if(A<200){if(this.onInfo)this.onInfo({statusCode:A,headers:W});return}if(this.factory=null,J===null)return;let F=this.runInAsyncScope(J,null,{statusCode:A,headers:W,opaque:C,context:X});if(!F||typeof F.write!=="function"||typeof F.end!=="function"||typeof F.on!=="function")throw new X_0("expected Writable");return J_0(F,{readable:!1},(U)=>{let{callback:$,res:E,opaque:K,trailers:I,abort:V}=this;if(this.res=null,U||!E?.readable)xG.destroy(E,U);if(this.callback=null,this.runInAsyncScope($,null,U||null,{opaque:K,trailers:I}),U)V()}),F.on("drain",B),this.res=F,(F.writableNeedDrain!==void 0?F.writableNeedDrain:F._writableState?.needDrain)!==!0}onData(A){let{res:Q}=this;return Q?Q.write(A):!0}onComplete(A){let{res:Q}=this;if(JwQ(this),!Q)return;this.trailers=xG.parseHeaders(A),Q.end()}onError(A){let{res:Q,callback:B,opaque:Y,body:J}=this;if(JwQ(this),this.factory=null,Q)this.res=null,xG.destroy(Q,A);else if(B)this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(B,null,A,{opaque:Y})});if(J)this.body=null,xG.destroy(J,A)}}function XwQ(A,Q,B){if(B===void 0)return new Promise((Y,J)=>{XwQ.call(this,A,Q,(C,X)=>{return C?J(C):Y(X)})});try{let Y=new CwQ(A,Q,B);this.dispatch(A,Y)}catch(Y){if(typeof B!=="function")throw Y;let J=A?.opaque;queueMicrotask(()=>B(Y,{opaque:J}))}}GwQ.exports=XwQ});var VwQ=R((UrY,KwQ)=>{var{Readable:ZwQ,Duplex:F_0,PassThrough:Z_0}=u("node:stream"),$_0=u("node:assert"),{AsyncResource:U_0}=u("node:async_hooks"),{InvalidArgumentError:uq,InvalidReturnValueError:E_0,RequestAbortedError:za}=QB(),kX=lQ(),{addSignal:K_0,removeSignal:V_0}=mq();function FwQ(){}var ZV=Symbol("resume");class $wQ extends ZwQ{constructor(){super({autoDestroy:!0});this[ZV]=null}_read(){let{[ZV]:A}=this;if(A)this[ZV]=null,A()}_destroy(A,Q){this._read(),Q(A)}}class UwQ extends ZwQ{constructor(A){super({autoDestroy:!0});this[ZV]=A}_read(){this[ZV]()}_destroy(A,Q){if(!A&&!this._readableState.endEmitted)A=new za;Q(A)}}class EwQ extends U_0{constructor(A,Q){if(!A||typeof A!=="object")throw new uq("invalid opts");if(typeof Q!=="function")throw new uq("invalid handler");let{signal:B,method:Y,opaque:J,onInfo:C,responseHeaders:X}=A;if(B&&typeof B.on!=="function"&&typeof B.addEventListener!=="function")throw new uq("signal must be an EventEmitter or EventTarget");if(Y==="CONNECT")throw new uq("invalid method");if(C&&typeof C!=="function")throw new uq("invalid onInfo callback");super("UNDICI_PIPELINE");this.opaque=J||null,this.responseHeaders=X||null,this.handler=Q,this.abort=null,this.context=null,this.onInfo=C||null,this.req=new $wQ().on("error",FwQ),this.ret=new F_0({readableObjectMode:A.objectMode,autoDestroy:!0,read:()=>{let{body:G}=this;if(G?.resume)G.resume()},write:(G,W,F)=>{let{req:Z}=this;if(Z.push(G,W)||Z._readableState.destroyed)F();else Z[ZV]=F},destroy:(G,W)=>{let{body:F,req:Z,res:U,ret:$,abort:E}=this;if(!G&&!$._readableState.endEmitted)G=new za;if(E&&G)E();kX.destroy(F,G),kX.destroy(Z,G),kX.destroy(U,G),V_0(this),W(G)}}).on("prefinish",()=>{let{req:G}=this;G.push(null)}),this.res=null,K_0(this,B)}onConnect(A,Q){let{res:B}=this;if(this.reason){A(this.reason);return}$_0(!B,"pipeline cannot be retried"),this.abort=A,this.context=Q}onHeaders(A,Q,B){let{opaque:Y,handler:J,context:C}=this;if(A<200){if(this.onInfo){let G=this.responseHeaders==="raw"?kX.parseRawHeaders(Q):kX.parseHeaders(Q);this.onInfo({statusCode:A,headers:G})}return}this.res=new UwQ(B);let X;try{this.handler=null;let G=this.responseHeaders==="raw"?kX.parseRawHeaders(Q):kX.parseHeaders(Q);X=this.runInAsyncScope(J,null,{statusCode:A,headers:G,opaque:Y,body:this.res,context:C})}catch(G){throw this.res.on("error",FwQ),G}if(!X||typeof X.on!=="function")throw new E_0("expected Readable");X.on("data",(G)=>{let{ret:W,body:F}=this;if(!W.push(G)&&F.pause)F.pause()}).on("error",(G)=>{let{ret:W}=this;kX.destroy(W,G)}).on("end",()=>{let{ret:G}=this;G.push(null)}).on("close",()=>{let{ret:G}=this;if(!G._readableState.ended)kX.destroy(G,new za)}),this.body=X}onData(A){let{res:Q}=this;return Q.push(A)}onComplete(A){let{res:Q}=this;Q.push(null)}onError(A){let{ret:Q}=this;this.handler=null,kX.destroy(Q,A)}}function I_0(A,Q){try{let B=new EwQ(A,Q);return this.dispatch({...A,body:B.req},B),B.ret}catch(B){return new Z_0().destroy(B)}}KwQ.exports=I_0});var MwQ=R((ErY,qwQ)=>{var{InvalidArgumentError:Ra,SocketError:H_0}=QB(),{AsyncResource:D_0}=u("node:async_hooks"),IwQ=u("node:assert"),HwQ=lQ(),{addSignal:N_0,removeSignal:DwQ}=mq();class NwQ extends D_0{constructor(A,Q){if(!A||typeof A!=="object")throw new Ra("invalid opts");if(typeof Q!=="function")throw new Ra("invalid callback");let{signal:B,opaque:Y,responseHeaders:J}=A;if(B&&typeof B.on!=="function"&&typeof B.addEventListener!=="function")throw new Ra("signal must be an EventEmitter or EventTarget");super("UNDICI_UPGRADE");this.responseHeaders=J||null,this.opaque=Y||null,this.callback=Q,this.abort=null,this.context=null,N_0(this,B)}onConnect(A,Q){if(this.reason){A(this.reason);return}IwQ(this.callback),this.abort=A,this.context=null}onHeaders(){throw new H_0("bad upgrade",null)}onUpgrade(A,Q,B){IwQ(A===101);let{callback:Y,opaque:J,context:C}=this;DwQ(this),this.callback=null;let X=this.responseHeaders==="raw"?HwQ.parseRawHeaders(Q):HwQ.parseHeaders(Q);this.runInAsyncScope(Y,null,null,{headers:X,socket:B,opaque:J,context:C})}onError(A){let{callback:Q,opaque:B}=this;if(DwQ(this),Q)this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(Q,null,A,{opaque:B})})}}function LwQ(A,Q){if(Q===void 0)return new Promise((B,Y)=>{LwQ.call(this,A,(J,C)=>{return J?Y(J):B(C)})});try{let B=new NwQ(A,Q),Y={...A,method:A.method||"GET",upgrade:A.protocol||"Websocket"};this.dispatch(Y,B)}catch(B){if(typeof Q!=="function")throw B;let Y=A?.opaque;queueMicrotask(()=>Q(B,{opaque:Y}))}}qwQ.exports=LwQ});var PwQ=R((KrY,OwQ)=>{var L_0=u("node:assert"),{AsyncResource:q_0}=u("node:async_hooks"),{InvalidArgumentError:wa,SocketError:M_0}=QB(),zwQ=lQ(),{addSignal:z_0,removeSignal:RwQ}=mq();class wwQ extends q_0{constructor(A,Q){if(!A||typeof A!=="object")throw new wa("invalid opts");if(typeof Q!=="function")throw new wa("invalid callback");let{signal:B,opaque:Y,responseHeaders:J}=A;if(B&&typeof B.on!=="function"&&typeof B.addEventListener!=="function")throw new wa("signal must be an EventEmitter or EventTarget");super("UNDICI_CONNECT");this.opaque=Y||null,this.responseHeaders=J||null,this.callback=Q,this.abort=null,z_0(this,B)}onConnect(A,Q){if(this.reason){A(this.reason);return}L_0(this.callback),this.abort=A,this.context=Q}onHeaders(){throw new M_0("bad connect",null)}onUpgrade(A,Q,B){let{callback:Y,opaque:J,context:C}=this;RwQ(this),this.callback=null;let X=Q;if(X!=null)X=this.responseHeaders==="raw"?zwQ.parseRawHeaders(Q):zwQ.parseHeaders(Q);this.runInAsyncScope(Y,null,null,{statusCode:A,headers:X,socket:B,opaque:J,context:C})}onError(A){let{callback:Q,opaque:B}=this;if(RwQ(this),Q)this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(Q,null,A,{opaque:B})})}}function jwQ(A,Q){if(Q===void 0)return new Promise((B,Y)=>{jwQ.call(this,A,(J,C)=>{return J?Y(J):B(C)})});try{let B=new wwQ(A,Q),Y={...A,method:"CONNECT"};this.dispatch(Y,B)}catch(B){if(typeof Q!=="function")throw B;let Y=A?.opaque;queueMicrotask(()=>Q(B,{opaque:Y}))}}OwQ.exports=jwQ});var TwQ=R((R_0,$V)=>{R_0.request=AwQ();R_0.stream=WwQ();R_0.pipeline=VwQ();R_0.upgrade=MwQ();R_0.connect=PwQ()});var ja=R((VrY,_wQ)=>{var{UndiciError:S_0}=QB(),SwQ=Symbol.for("undici.error.UND_MOCK_ERR_MOCK_NOT_MATCHED");class kwQ extends S_0{constructor(A){super(A);this.name="MockNotMatchedError",this.message=A||"The request does not match any registered mock dispatches",this.code="UND_MOCK_ERR_MOCK_NOT_MATCHED"}static[Symbol.hasInstance](A){return A&&A[SwQ]===!0}get[SwQ](){return!0}}_wQ.exports={MockNotMatchedError:kwQ}});var Q4=R((IrY,vwQ)=>{vwQ.exports={kAgent:Symbol("agent"),kOptions:Symbol("options"),kFactory:Symbol("factory"),kDispatches:Symbol("dispatches"),kDispatchKey:Symbol("dispatch key"),kDefaultHeaders:Symbol("default headers"),kDefaultTrailers:Symbol("default trailers"),kContentLength:Symbol("content length"),kMockAgent:Symbol("mock agent"),kMockAgentSet:Symbol("mock agent set"),kMockAgentGet:Symbol("mock agent get"),kMockDispatch:Symbol("mock dispatch"),kClose:Symbol("close"),kOriginalClose:Symbol("original agent close"),kOriginalDispatch:Symbol("original dispatch"),kOrigin:Symbol("origin"),kIsMockActive:Symbol("is mock active"),kNetConnect:Symbol("net connect"),kGetNetConnect:Symbol("get net connect"),kConnected:Symbol("connected"),kIgnoreTrailingSlash:Symbol("ignore trailing slash"),kMockAgentMockCallHistoryInstance:Symbol("mock agent mock call history name"),kMockAgentRegisterCallHistory:Symbol("mock agent register mock call history"),kMockAgentAddCallHistoryLog:Symbol("mock agent add call history log"),kMockAgentIsCallHistoryEnabled:Symbol("mock agent is call history enabled"),kMockAgentAcceptsNonStandardSearchParameters:Symbol("mock agent accepts non standard search parameters"),kMockCallHistoryAddLog:Symbol("mock call history add log")}});var dq=R((HrY,lwQ)=>{var{MockNotMatchedError:UV}=ja(),{kDispatches:pS,kMockAgent:k_0,kOriginalDispatch:__0,kOrigin:v_0,kGetNetConnect:y_0}=Q4(),{serializePathWithQuery:g_0}=lQ(),{STATUS_CODES:h_0}=u("node:http"),{types:{isPromise:x_0}}=u("node:util"),{InvalidArgumentError:Oa}=QB();function _X(A,Q){if(typeof A==="string")return A===Q;if(A instanceof RegExp)return A.test(Q);if(typeof A==="function")return A(Q)===!0;return!1}function gwQ(A){return Object.fromEntries(Object.entries(A).map(([Q,B])=>{return[Q.toLocaleLowerCase(),B]}))}function hwQ(A,Q){if(Array.isArray(A)){for(let B=0;B"u")return!0;if(typeof Q!=="object"||typeof A.headers!=="object")return!1;for(let[B,Y]of Object.entries(A.headers)){let J=hwQ(Q,B);if(!_X(Y,J))return!1}return!0}function f_0(A){if(typeof A!=="string")return A;let Q=new URLSearchParams(A),B=new URLSearchParams;for(let[Y,J]of Q.entries()){if(Y=Y.replace("[]",""),/^(['"]).*\1$/.test(J)){B.append(Y,J);continue}if(J.includes(",")){let X=J.split(",");for(let G of X)B.append(Y,G);continue}B.append(Y,J)}return B}function Pa(A){if(typeof A!=="string")return A;let Q=A.split("?",3);if(Q.length!==2)return A;let B=new URLSearchParams(Q.pop());return B.sort(),[...Q,B.toString()].join("?")}function b_0(A,{path:Q,method:B,body:Y,headers:J}){let C=_X(A.path,Q),X=_X(A.method,B),G=typeof A.body<"u"?_X(A.body,Y):!0,W=xwQ(A,J);return C&&X&&G&&W}function fwQ(A){if(Buffer.isBuffer(A))return A;else if(A instanceof Uint8Array)return A;else if(A instanceof ArrayBuffer)return A;else if(typeof A==="object")return JSON.stringify(A);else if(A)return A.toString();else return""}function bwQ(A,Q){let B=Q.query?g_0(Q.path,Q.query):Q.path,Y=typeof B==="string"?Pa(B):B,J=ywQ(Y),C=A.filter(({consumed:X})=>!X).filter(({path:X,ignoreTrailingSlash:G})=>{return G?_X(ywQ(Pa(X)),J):_X(Pa(X),Y)});if(C.length===0)throw new UV(`Mock dispatch not matched for path '${Y}'`);if(C=C.filter(({method:X})=>_X(X,Q.method)),C.length===0)throw new UV(`Mock dispatch not matched for method '${Q.method}' on path '${Y}'`);if(C=C.filter(({body:X})=>typeof X<"u"?_X(X,Q.body):!0),C.length===0)throw new UV(`Mock dispatch not matched for body '${Q.body}' on path '${Y}'`);if(C=C.filter((X)=>xwQ(X,Q.headers)),C.length===0){let X=typeof Q.headers==="object"?JSON.stringify(Q.headers):Q.headers;throw new UV(`Mock dispatch not matched for headers '${X}' on path '${Y}'`)}return C[0]}function m_0(A,Q,B,Y){let J={timesInvoked:0,times:1,persist:!1,consumed:!1,...Y},C=typeof B==="function"?{callback:B}:{...B},X={...J,...Q,pending:!0,data:{error:null,...C}};return A.push(X),X}function Ta(A,Q){let B=A.findIndex((Y)=>{if(!Y.consumed)return!1;return b_0(Y,Q)});if(B!==-1)A.splice(B,1)}function ywQ(A){while(A.endsWith("/"))A=A.slice(0,-1);if(A.length===0)A="/";return A}function mwQ(A){let{path:Q,method:B,body:Y,headers:J,query:C}=A;return{path:Q,method:B,body:Y,headers:J,query:C}}function Sa(A){let Q=Object.keys(A),B=[];for(let Y=0;Y=$,Y.pending=U<$,W!==null)return Ta(this[pS],B),Q.onError(W),!0;if(typeof F==="number"&&F>0)setTimeout(()=>{E(this[pS])},F);else E(this[pS]);function E(I,V=C){let H=Array.isArray(A.headers)?ka(A.headers):A.headers,D=typeof V==="function"?V({...A,headers:H}):V;if(x_0(D)){D.then((N)=>E(I,N));return}let L=fwQ(D),z=Sa(X),M=Sa(G);Q.onConnect?.((N)=>Q.onError(N),null),Q.onHeaders?.(J,z,K,uwQ(J)),Q.onData?.(Buffer.from(L)),Q.onComplete?.(M),Ta(I,B)}function K(){}return!0}function d_0(){let A=this[k_0],Q=this[v_0],B=this[__0];return function(J,C){if(A.isMockActive)try{dwQ.call(this,J,C)}catch(X){if(X.code==="UND_MOCK_ERR_MOCK_NOT_MATCHED"){let G=A[y_0]();if(G===!1)throw new UV(`${X.message}: subsequent request to origin ${Q} was not allowed (net.connect disabled)`);if(cwQ(G,Q))B.call(this,J,C);else throw new UV(`${X.message}: subsequent request to origin ${Q} was not allowed (net.connect is not enabled for this origin)`)}else throw X}else B.call(this,J,C)}}function cwQ(A,Q){let B=new URL(Q);if(A===!0)return!0;else if(Array.isArray(A)&&A.some((Y)=>_X(Y,B.host)))return!0;return!1}function c_0(A){let{agent:Q,...B}=A;if("enableCallHistory"in B&&typeof B.enableCallHistory!=="boolean")throw new Oa("options.enableCallHistory must to be a boolean");if("acceptNonStandardSearchParameters"in B&&typeof B.acceptNonStandardSearchParameters!=="boolean")throw new Oa("options.acceptNonStandardSearchParameters must to be a boolean");if("ignoreTrailingSlash"in B&&typeof B.ignoreTrailingSlash!=="boolean")throw new Oa("options.ignoreTrailingSlash must to be a boolean");return B}lwQ.exports={getResponseData:fwQ,getMockDispatch:bwQ,addMockDispatch:m_0,deleteMockDispatch:Ta,buildKey:mwQ,generateKeyValues:Sa,matchValue:_X,getResponse:u_0,getStatusText:uwQ,mockDispatch:dwQ,buildMockDispatch:d_0,checkNetConnect:cwQ,buildAndValidateMockOptions:c_0,getHeaderByName:hwQ,buildHeadersFromArray:ka,normalizeSearchParams:f_0}});var xa=R((n_0,ha)=>{var{getResponseData:l_0,buildKey:p_0,addMockDispatch:_a}=dq(),{kDispatches:iS,kDispatchKey:nS,kDefaultHeaders:va,kDefaultTrailers:ya,kContentLength:ga,kMockDispatch:sS,kIgnoreTrailingSlash:rS}=Q4(),{InvalidArgumentError:vX}=QB(),{serializePathWithQuery:i_0}=lQ();class cq{constructor(A){this[sS]=A}delay(A){if(typeof A!=="number"||!Number.isInteger(A)||A<=0)throw new vX("waitInMs must be a valid integer > 0");return this[sS].delay=A,this}persist(){return this[sS].persist=!0,this}times(A){if(typeof A!=="number"||!Number.isInteger(A)||A<=0)throw new vX("repeatTimes must be a valid integer > 0");return this[sS].times=A,this}}class pwQ{constructor(A,Q){if(typeof A!=="object")throw new vX("opts must be an object");if(typeof A.path>"u")throw new vX("opts.path must be defined");if(typeof A.method>"u")A.method="GET";if(typeof A.path==="string")if(A.query)A.path=i_0(A.path,A.query);else{let B=new URL(A.path,"data://");A.path=B.pathname+B.search}if(typeof A.method==="string")A.method=A.method.toUpperCase();this[nS]=p_0(A),this[iS]=Q,this[rS]=A.ignoreTrailingSlash??!1,this[va]={},this[ya]={},this[ga]=!1}createMockScopeDispatchData({statusCode:A,data:Q,responseOptions:B}){let Y=l_0(Q),J=this[ga]?{"content-length":Y.length}:{},C={...this[va],...J,...B.headers},X={...this[ya],...B.trailers};return{statusCode:A,data:Q,headers:C,trailers:X}}validateReplyParameters(A){if(typeof A.statusCode>"u")throw new vX("statusCode must be defined");if(typeof A.responseOptions!=="object"||A.responseOptions===null)throw new vX("responseOptions must be an object")}reply(A){if(typeof A==="function"){let J=(X)=>{let G=A(X);if(typeof G!=="object"||G===null)throw new vX("reply options callback must return an object");let W={data:"",responseOptions:{},...G};return this.validateReplyParameters(W),{...this.createMockScopeDispatchData(W)}},C=_a(this[iS],this[nS],J,{ignoreTrailingSlash:this[rS]});return new cq(C)}let Q={statusCode:A,data:arguments[1]===void 0?"":arguments[1],responseOptions:arguments[2]===void 0?{}:arguments[2]};this.validateReplyParameters(Q);let B=this.createMockScopeDispatchData(Q),Y=_a(this[iS],this[nS],B,{ignoreTrailingSlash:this[rS]});return new cq(Y)}replyWithError(A){if(typeof A>"u")throw new vX("error must be defined");let Q=_a(this[iS],this[nS],{error:A},{ignoreTrailingSlash:this[rS]});return new cq(Q)}defaultReplyHeaders(A){if(typeof A>"u")throw new vX("headers must be defined");return this[va]=A,this}defaultReplyTrailers(A){if(typeof A>"u")throw new vX("trailers must be defined");return this[ya]=A,this}replyContentLength(){return this[ga]=!0,this}}n_0.MockInterceptor=pwQ;n_0.MockScope=cq});var ma=R((DrY,ewQ)=>{var{promisify:a_0}=u("node:util"),o_0=r$(),{buildMockDispatch:t_0}=dq(),{kDispatches:fa,kMockAgent:iwQ,kClose:nwQ,kOriginalClose:swQ,kOrigin:rwQ,kOriginalDispatch:e_0,kConnected:ba,kIgnoreTrailingSlash:awQ}=Q4(),{MockInterceptor:Av0}=xa(),owQ=B0(),{InvalidArgumentError:Qv0}=QB();class twQ extends o_0{constructor(A,Q){if(!Q||!Q.agent||typeof Q.agent.dispatch!=="function")throw new Qv0("Argument opts.agent must implement Agent");super(A,Q);this[iwQ]=Q.agent,this[rwQ]=A,this[awQ]=Q.ignoreTrailingSlash??!1,this[fa]=[],this[ba]=1,this[e_0]=this.dispatch,this[swQ]=this.close.bind(this),this.dispatch=t_0.call(this),this.close=this[nwQ]}get[owQ.kConnected](){return this[ba]}intercept(A){return new Av0(A&&{ignoreTrailingSlash:this[awQ],...A},this[fa])}cleanMocks(){this[fa]=[]}async[nwQ](){await a_0(this[swQ])(),this[ba]=0,this[iwQ][owQ.kClients].delete(this[rwQ])}}ewQ.exports=twQ});var ca=R((Cv0,da)=>{var{kMockCallHistoryAddLog:Bv0}=Q4(),{InvalidArgumentError:$F}=QB();function FF(A,Q,B,Y){switch(Q.operator){case"OR":return Y.push(...B(A)),Y;case"AND":return B.call({logs:Y},A);default:throw new $F("options.operator must to be a case insensitive string equal to 'OR' or 'AND'")}}function Yv0(A={}){let Q={};if("operator"in A){if(typeof A.operator!=="string"||A.operator.toUpperCase()!=="OR"&&A.operator.toUpperCase()!=="AND")throw new $F("options.operator must to be a case insensitive string equal to 'OR' or 'AND'");return{...Q,operator:A.operator.toUpperCase()}}return Q}function ZF(A){return(Q)=>{if(typeof Q==="string"||Q==null)return this.logs.filter((B)=>{return B[A]===Q});if(Q instanceof RegExp)return this.logs.filter((B)=>{return Q.test(B[A])});throw new $F(`${A} parameter should be one of string, regexp, undefined or null`)}}function Jv0(A){try{let Q=new URL(A.path,A.origin);if(Q.search.length!==0)return Q;return Q.search=new URLSearchParams(A.query).toString(),Q}catch(Q){throw new $F("An error occurred when computing MockCallHistoryLog.url",{cause:Q})}}class ua{constructor(A={}){this.body=A.body,this.headers=A.headers,this.method=A.method;let Q=Jv0(A);this.fullUrl=Q.toString(),this.origin=Q.origin,this.path=Q.pathname,this.searchParams=Object.fromEntries(Q.searchParams),this.protocol=Q.protocol,this.host=Q.host,this.port=Q.port,this.hash=Q.hash}toMap(){return new Map([["protocol",this.protocol],["host",this.host],["port",this.port],["origin",this.origin],["path",this.path],["hash",this.hash],["searchParams",this.searchParams],["fullUrl",this.fullUrl],["method",this.method],["body",this.body],["headers",this.headers]])}toString(){let A={betweenKeyValueSeparator:"->",betweenPairSeparator:"|"},Q="";return this.toMap().forEach((B,Y)=>{if(typeof B==="string"||B===void 0||B===null)Q=`${Q}${Y}${A.betweenKeyValueSeparator}${B}${A.betweenPairSeparator}`;if(typeof B==="object"&&B!==null||Array.isArray(B))Q=`${Q}${Y}${A.betweenKeyValueSeparator}${JSON.stringify(B)}${A.betweenPairSeparator}`}),Q.slice(0,-1)}}class AjQ{logs=[];calls(){return this.logs}firstCall(){return this.logs.at(0)}lastCall(){return this.logs.at(-1)}nthCall(A){if(typeof A!=="number")throw new $F("nthCall must be called with a number");if(!Number.isInteger(A))throw new $F("nthCall must be called with an integer");if(Math.sign(A)!==1)throw new $F("nthCall must be called with a positive value. use firstCall or lastCall instead");return this.logs.at(A-1)}filterCalls(A,Q){if(this.logs.length===0)return this.logs;if(typeof A==="function")return this.logs.filter(A);if(A instanceof RegExp)return this.logs.filter((B)=>{return A.test(B.toString())});if(typeof A==="object"&&A!==null){if(Object.keys(A).length===0)return this.logs;let B={operator:"OR",...Yv0(Q)},Y=[];if("protocol"in A)Y=FF(A.protocol,B,this.filterCallsByProtocol,Y);if("host"in A)Y=FF(A.host,B,this.filterCallsByHost,Y);if("port"in A)Y=FF(A.port,B,this.filterCallsByPort,Y);if("origin"in A)Y=FF(A.origin,B,this.filterCallsByOrigin,Y);if("path"in A)Y=FF(A.path,B,this.filterCallsByPath,Y);if("hash"in A)Y=FF(A.hash,B,this.filterCallsByHash,Y);if("fullUrl"in A)Y=FF(A.fullUrl,B,this.filterCallsByFullUrl,Y);if("method"in A)Y=FF(A.method,B,this.filterCallsByMethod,Y);return[...new Set(Y)]}throw new $F("criteria parameter should be one of function, regexp, or object")}filterCallsByProtocol=ZF.call(this,"protocol");filterCallsByHost=ZF.call(this,"host");filterCallsByPort=ZF.call(this,"port");filterCallsByOrigin=ZF.call(this,"origin");filterCallsByPath=ZF.call(this,"path");filterCallsByHash=ZF.call(this,"hash");filterCallsByFullUrl=ZF.call(this,"fullUrl");filterCallsByMethod=ZF.call(this,"method");clear(){this.logs=[]}[Bv0](A){let Q=new ua(A);return this.logs.push(Q),Q}*[Symbol.iterator](){for(let A of this.calls())yield A}}Cv0.MockCallHistory=AjQ;Cv0.MockCallHistoryLog=ua});var ia=R((NrY,WjQ)=>{var{promisify:Wv0}=u("node:util"),Fv0=JV(),{buildMockDispatch:Zv0}=dq(),{kDispatches:la,kMockAgent:QjQ,kClose:BjQ,kOriginalClose:YjQ,kOrigin:JjQ,kOriginalDispatch:$v0,kConnected:pa,kIgnoreTrailingSlash:CjQ}=Q4(),{MockInterceptor:Uv0}=xa(),XjQ=B0(),{InvalidArgumentError:Ev0}=QB();class GjQ extends Fv0{constructor(A,Q){if(!Q||!Q.agent||typeof Q.agent.dispatch!=="function")throw new Ev0("Argument opts.agent must implement Agent");super(A,Q);this[QjQ]=Q.agent,this[JjQ]=A,this[CjQ]=Q.ignoreTrailingSlash??!1,this[la]=[],this[pa]=1,this[$v0]=this.dispatch,this[YjQ]=this.close.bind(this),this.dispatch=Zv0.call(this),this.close=this[BjQ]}get[XjQ.kConnected](){return this[pa]}intercept(A){return new Uv0(A&&{ignoreTrailingSlash:this[CjQ],...A},this[la])}cleanMocks(){this[la]=[]}async[BjQ](){await Wv0(this[YjQ])(),this[pa]=0,this[QjQ][XjQ.kClients].delete(this[JjQ])}}WjQ.exports=GjQ});var ZjQ=R((LrY,FjQ)=>{var{Transform:Kv0}=u("node:stream"),{Console:Vv0}=u("node:console"),Iv0=process.versions.icu?"✅":"Y ",Hv0=process.versions.icu?"❌":"N ";FjQ.exports=class{constructor({disableColors:Q}={}){this.transform=new Kv0({transform(B,Y,J){J(null,B)}}),this.logger=new Vv0({stdout:this.transform,inspectOptions:{colors:!Q&&!process.env.CI}})}format(Q){let B=Q.map(({method:Y,path:J,data:{statusCode:C},persist:X,times:G,timesInvoked:W,origin:F})=>({Method:Y,Origin:F,Path:J,"Status code":C,Persistent:X?Iv0:Hv0,Invocations:W,Remaining:X?1/0:G-W}));return this.logger.table(B),this.transform.read().toString()}}});var aa=R((qrY,HjQ)=>{var{kClients:B4}=B0(),Dv0=t$(),{kAgent:na,kMockAgentSet:aS,kMockAgentGet:$jQ,kDispatches:sa,kIsMockActive:oS,kNetConnect:Y4,kGetNetConnect:Nv0,kOptions:tS,kFactory:eS,kMockAgentRegisterCallHistory:ra,kMockAgentIsCallHistoryEnabled:lq,kMockAgentAddCallHistoryLog:UjQ,kMockAgentMockCallHistoryInstance:EV,kMockAgentAcceptsNonStandardSearchParameters:EjQ,kMockCallHistoryAddLog:Lv0,kIgnoreTrailingSlash:KjQ}=Q4(),qv0=ma(),Mv0=ia(),{matchValue:zv0,normalizeSearchParams:Rv0,buildAndValidateMockOptions:wv0}=dq(),{InvalidArgumentError:VjQ,UndiciError:jv0}=QB(),Ov0=$q(),Pv0=ZjQ(),{MockCallHistory:Tv0}=ca();class IjQ extends Ov0{constructor(A={}){super(A);let Q=wv0(A);if(this[Y4]=!0,this[oS]=!0,this[lq]=Q.enableCallHistory??!1,this[EjQ]=Q.acceptNonStandardSearchParameters??!1,this[KjQ]=Q.ignoreTrailingSlash??!1,A?.agent&&typeof A.agent.dispatch!=="function")throw new VjQ("Argument opts.agent must implement Agent");let B=A?.agent?A.agent:new Dv0(A);if(this[na]=B,this[B4]=B[B4],this[tS]=Q,this[lq])this[ra]()}get(A){let Q=this[KjQ]?A.replace(/\/$/,""):A,B=this[$jQ](Q);if(!B)B=this[eS](Q),this[aS](Q,B);return B}dispatch(A,Q){this.get(A.origin),this[UjQ](A);let B=this[EjQ],Y={...A};if(B&&Y.path){let[J,C]=Y.path.split("?"),X=Rv0(C,B);Y.path=`${J}?${X}`}return this[na].dispatch(Y,Q)}async close(){this.clearCallHistory(),await this[na].close(),this[B4].clear()}deactivate(){this[oS]=!1}activate(){this[oS]=!0}enableNetConnect(A){if(typeof A==="string"||typeof A==="function"||A instanceof RegExp)if(Array.isArray(this[Y4]))this[Y4].push(A);else this[Y4]=[A];else if(typeof A>"u")this[Y4]=!0;else throw new VjQ("Unsupported matcher. Must be one of String|Function|RegExp.")}disableNetConnect(){this[Y4]=!1}enableCallHistory(){return this[lq]=!0,this}disableCallHistory(){return this[lq]=!1,this}getCallHistory(){return this[EV]}clearCallHistory(){if(this[EV]!==void 0)this[EV].clear()}get isMockActive(){return this[oS]}[ra](){if(this[EV]===void 0)this[EV]=new Tv0}[UjQ](A){if(this[lq])this[ra](),this[EV][Lv0](A)}[aS](A,Q){this[B4].set(A,{count:0,dispatcher:Q})}[eS](A){let Q=Object.assign({agent:this},this[tS]);return this[tS]&&this[tS].connections===1?new qv0(A,Q):new Mv0(A,Q)}[$jQ](A){let Q=this[B4].get(A);if(Q?.dispatcher)return Q.dispatcher;if(typeof A!=="string"){let B=this[eS]("http://localhost:9999");return this[aS](A,B),B}for(let[B,Y]of Array.from(this[B4]))if(Y&&typeof B!=="string"&&zv0(B,A)){let J=this[eS](A);return this[aS](A,J),J[sa]=Y.dispatcher[sa],J}}[Nv0](){return this[Y4]}pendingInterceptors(){let A=this[B4];return Array.from(A.entries()).flatMap(([Q,B])=>B.dispatcher[sa].map((Y)=>({...Y,origin:Q}))).filter(({pending:Q})=>Q)}assertNoPendingInterceptors({pendingInterceptorsFormatter:A=new Pv0}={}){let Q=this.pendingInterceptors();if(Q.length===0)return;throw new jv0(Q.length===1?`1 interceptor is pending: ${A.format(Q)}`.trim():`${Q.length} interceptors are pending: -${A.format(Q)}`.trim())}}HjQ.exports=IjQ});var ta=R((MrY,LjQ)=>{var{InvalidArgumentError:Sv0}=QB();function kv0(A={}){let{ignoreHeaders:Q=[],excludeHeaders:B=[],matchHeaders:Y=[],caseSensitive:J=!1}=A;return{ignore:new Set(Q.map((C)=>J?C:C.toLowerCase())),exclude:new Set(B.map((C)=>J?C:C.toLowerCase())),match:new Set(Y.map((C)=>J?C:C.toLowerCase()))}}var oa;try{oa=u("node:crypto")}catch{}var _v0=oa?.hash?(A)=>oa.hash("sha256",A,"base64url"):(A)=>Buffer.from(A).toString("base64url");function NjQ(A){return Array.isArray(A)&&(A.length&1)===0}function vv0(A=[]){if(A.length===0)return()=>!1;return function(B){let Y;for(let J of A)if(typeof J==="string"){if(!Y)Y=B.toLowerCase();if(Y.includes(J.toLowerCase()))return!0}else if(J instanceof RegExp){if(J.test(B))return!0}return!1}}function yv0(A){let Q={};if(!A)return Q;if(NjQ(A)){for(let B=0;B{var{writeFile:hv0,readFile:xv0,mkdir:fv0}=u("node:fs/promises"),{dirname:bv0,resolve:qjQ}=u("node:path"),{setTimeout:mv0,clearTimeout:MjQ}=u("node:timers"),{InvalidArgumentError:zjQ,UndiciError:uv0}=QB(),{hashId:dv0,isUrlExcludedFactory:cv0,normalizeHeaders:RjQ,createHeaderFilters:wjQ}=ta();function pq(A,Q,B={}){let Y=new URL(A.path,A.origin),J=A._normalizedHeaders||RjQ(A.headers);if(!A._normalizedHeaders)A._normalizedHeaders=J;return{method:A.method||"GET",url:B.matchQuery!==!1?Y.toString():`${Y.origin}${Y.pathname}`,headers:jjQ(J,Q,B),body:B.matchBody!==!1&&A.body?String(A.body):""}}function jjQ(A,Q,B={}){if(!A||typeof A!=="object")return{};let{caseSensitive:Y=!1}=B,J={},{ignore:C,exclude:X,match:G}=Q;for(let[W,F]of Object.entries(A)){let Z=Y?W:W.toLowerCase();if(X.has(Z))continue;if(C.has(Z))continue;if(G.size!==0){if(!G.has(Z))continue}J[Z]=F}return J}function OjQ(A,Q,B={}){if(!A||typeof A!=="object")return{};let{caseSensitive:Y=!1}=B,J={},{exclude:C}=Q;for(let[X,G]of Object.entries(A)){let W=Y?X:X.toLowerCase();if(C.has(W))continue;J[W]=G}return J}function iq(A){let Q=[A.method,A.url];if(A.headers&&typeof A.headers==="object"){let Y=Object.keys(A.headers).sort();for(let J of Y){let C=Array.isArray(A.headers[J])?A.headers[J]:[A.headers[J]];Q.push(J);for(let X of C.sort())Q.push(String(X))}}Q.push(A.body);let B=Q.join("|");return dv0(B)}class PjQ{#A;#Q;#B=new Map;#Y;#J=1/0;#C=!1;#W;constructor(A={}){if(this.#Y=A.snapshotPath,this.#J=A.maxSnapshots||1/0,this.#C=A.autoFlush||!1,this.flushInterval=A.flushInterval||30000,this._flushTimer=null,this.matchOptions={matchHeaders:A.matchHeaders||[],ignoreHeaders:A.ignoreHeaders||[],excludeHeaders:A.excludeHeaders||[],matchBody:A.matchBody!==!1,matchQuery:A.matchQuery!==!1,caseSensitive:A.caseSensitive||!1},this.#W=wjQ(this.matchOptions),this.shouldRecord=A.shouldRecord||(()=>!0),this.shouldPlayback=A.shouldPlayback||(()=>!0),this.#Q=cv0(A.excludeUrls),this.#C&&this.#Y)this.#X()}async record(A,Q){if(!this.shouldRecord(A))return;let B=new URL(A.path,A.origin).toString();if(this.#Q(B))return;let Y=pq(A,this.#W,this.matchOptions),J=iq(Y),C=RjQ(Q.headers),X={statusCode:Q.statusCode,headers:OjQ(C,this.#W,this.matchOptions),body:Buffer.isBuffer(Q.body)?Q.body.toString("base64"):Buffer.from(String(Q.body||"")).toString("base64"),trailers:Q.trailers};if(this.#B.size>=this.#J&&!this.#B.has(J)){let W=this.#B.keys().next().value;this.#B.delete(W)}let G=this.#B.get(J);if(G&&G.responses)G.responses.push(X),G.timestamp=new Date().toISOString();else this.#B.set(J,{request:Y,responses:[X],callCount:0,timestamp:new Date().toISOString()});if(this.#C&&this.#Y)this.#Z()}findSnapshot(A){if(!this.shouldPlayback(A))return;let Q=new URL(A.path,A.origin).toString();if(this.#Q(Q))return;let B=pq(A,this.#W,this.matchOptions),Y=iq(B),J=this.#B.get(Y);if(!J)return;let C=J.callCount||0,X=Math.min(C,J.responses.length-1);return J.callCount=C+1,{...J,response:J.responses[X]}}async loadSnapshots(A){let Q=A||this.#Y;if(!Q)throw new zjQ("Snapshot path is required");try{let B=await xv0(qjQ(Q),"utf8"),Y=JSON.parse(B);if(Array.isArray(Y)){this.#B.clear();for(let{hash:J,snapshot:C}of Y)this.#B.set(J,C)}else this.#B=new Map(Object.entries(Y))}catch(B){if(B.code==="ENOENT")this.#B.clear();else throw new uv0(`Failed to load snapshots from ${Q}`,{cause:B})}}async saveSnapshots(A){let Q=A||this.#Y;if(!Q)throw new zjQ("Snapshot path is required");let B=qjQ(Q);await fv0(bv0(B),{recursive:!0});let Y=Array.from(this.#B.entries()).map(([J,C])=>({hash:J,snapshot:C}));await hv0(B,JSON.stringify(Y,null,2),{flush:!0})}clear(){this.#B.clear()}getSnapshots(){return Array.from(this.#B.values())}size(){return this.#B.size}resetCallCounts(){for(let A of this.#B.values())A.callCount=0}deleteSnapshot(A){let Q=pq(A,this.#W,this.matchOptions),B=iq(Q);return this.#B.delete(B)}getSnapshotInfo(A){let Q=pq(A,this.#W,this.matchOptions),B=iq(Q),Y=this.#B.get(B);if(!Y)return null;return{hash:B,request:Y.request,responseCount:Y.responses?Y.responses.length:Y.response?1:0,callCount:Y.callCount||0,timestamp:Y.timestamp}}replaceSnapshots(A){if(this.#B.clear(),Array.isArray(A))for(let{hash:Q,snapshot:B}of A)this.#B.set(Q,B);else if(A&&typeof A==="object")this.#B=new Map(Object.entries(A))}#X(){return this.#Z()}#G(){if(this.#A)MjQ(this.#A),this.saveSnapshots().catch(()=>{}),this.#A=null}#Z(){this.#A=mv0(()=>{if(this.saveSnapshots().catch(()=>{}),this.#C)this.#A?.refresh();else this.#A=null},1000)}destroy(){if(this.#G(),this.#A)MjQ(this.#A),this.#A=null}async close(){if(this.#Y&&this.#B.size!==0)await this.saveSnapshots();this.destroy()}}TjQ.exports={SnapshotRecorder:PjQ,formatRequestKey:pq,createRequestHash:iq,filterHeadersForMatching:jjQ,filterHeadersForStorage:OjQ,createHeaderFilters:wjQ}});var yjQ=R((RrY,vjQ)=>{var lv0=o$(),pv0=aa(),{SnapshotRecorder:iv0}=SjQ(),nv0=Zq(),{InvalidArgumentError:sv0,UndiciError:rv0}=QB(),{validateSnapshotMode:av0}=ta(),i8=Symbol("kSnapshotRecorder"),fG=Symbol("kSnapshotMode"),nq=Symbol("kSnapshotPath"),ea=Symbol("kSnapshotLoaded"),Ao=Symbol("kRealAgent"),kjQ=!1;class _jQ extends pv0{constructor(A={}){if(!kjQ)process.emitWarning("SnapshotAgent is experimental and subject to change","ExperimentalWarning"),kjQ=!0;let{mode:Q="record",snapshotPath:B=null,...Y}=A;super(Y);if(av0(Q),(Q==="playback"||Q==="update")&&!B)throw new sv0(`snapshotPath is required when mode is '${Q}'`);if(this[fG]=Q,this[nq]=B,this[i8]=new iv0({snapshotPath:this[nq],mode:this[fG],maxSnapshots:A.maxSnapshots,autoFlush:A.autoFlush,flushInterval:A.flushInterval,matchHeaders:A.matchHeaders,ignoreHeaders:A.ignoreHeaders,excludeHeaders:A.excludeHeaders,matchBody:A.matchBody,matchQuery:A.matchQuery,caseSensitive:A.caseSensitive,shouldRecord:A.shouldRecord,shouldPlayback:A.shouldPlayback,excludeUrls:A.excludeUrls}),this[ea]=!1,this[fG]==="record"||this[fG]==="update")this[Ao]=new lv0(A);if((this[fG]==="playback"||this[fG]==="update")&&this[nq])this.loadSnapshots().catch(()=>{})}dispatch(A,Q){Q=nv0.wrap(Q);let B=this[fG];if(B==="playback"||B==="update"){if(!this[ea])return this.#A(A,Q);let Y=this[i8].findSnapshot(A);if(Y)return this.#B(Y,Q);else if(B==="update")return this.#Q(A,Q);else{let J=new rv0(`No snapshot found for ${A.method||"GET"} ${A.path}`);if(Q.onError){Q.onError(J);return}throw J}}else if(B==="record")return this.#Q(A,Q)}async#A(A,Q){return await this.loadSnapshots(),this.dispatch(A,Q)}#Q(A,Q){let B={statusCode:null,headers:{},trailers:{},body:[]},Y=this,J={onRequestStart(X,G){return Q.onRequestStart(X,{...G,history:this.history})},onRequestUpgrade(X,G,W,F){return Q.onRequestUpgrade(X,G,W,F)},onResponseStart(X,G,W,F){return B.statusCode=G,B.headers=W,Q.onResponseStart(X,G,W,F)},onResponseData(X,G){return B.body.push(G),Q.onResponseData(X,G)},onResponseEnd(X,G){B.trailers=G;let W=Buffer.concat(B.body);Y[i8].record(A,{statusCode:B.statusCode,headers:B.headers,body:W,trailers:B.trailers}).then(()=>{Q.onResponseEnd(X,G)}).catch((F)=>{Q.onResponseError(X,F)})}};return this[Ao].dispatch(A,J)}#B(A,Q){try{let{response:B}=A,Y={pause(){},resume(){},abort(C){this.aborted=!0,this.reason=C},aborted:!1,paused:!1};Q.onRequestStart(Y),Q.onResponseStart(Y,B.statusCode,B.headers);let J=Buffer.from(B.body,"base64");Q.onResponseData(Y,J),Q.onResponseEnd(Y,B.trailers)}catch(B){Q.onError?.(B)}}async loadSnapshots(A){if(await this[i8].loadSnapshots(A||this[nq]),this[ea]=!0,this[fG]==="playback")this.#Y()}async saveSnapshots(A){return this[i8].saveSnapshots(A||this[nq])}#Y(){for(let A of this[i8].getSnapshots()){let{request:Q,responses:B,response:Y}=A,J=new URL(Q.url),C=this.get(J.origin),X=B?B[0]:Y;if(!X)continue;C.intercept({path:J.pathname+J.search,method:Q.method,headers:Q.headers,body:Q.body}).reply(X.statusCode,X.body,{headers:X.headers,trailers:X.trailers}).persist()}}getRecorder(){return this[i8]}getMode(){return this[fG]}clearSnapshots(){this[i8].clear()}resetCallCounts(){this[i8].resetCallCounts()}deleteSnapshot(A){return this[i8].deleteSnapshot(A)}getSnapshotInfo(A){return this[i8].getSnapshotInfo(A)}replaceSnapshots(A){this[i8].replaceSnapshots(A)}async close(){await this[i8].close(),await this[Ao]?.close(),await super.close()}}vjQ.exports=_jQ});var Ak=R((wrY,fjQ)=>{var gjQ=Symbol.for("undici.globalDispatcher.1"),{InvalidArgumentError:ov0}=QB(),tv0=o$();if(xjQ()===void 0)hjQ(new tv0);function hjQ(A){if(!A||typeof A.dispatch!=="function")throw new ov0("Argument agent must implement Agent");Object.defineProperty(globalThis,gjQ,{value:A,writable:!0,enumerable:!1,configurable:!1})}function xjQ(){return globalThis[gjQ]}var ev0=["fetch","Headers","Response","Request","FormData","WebSocket","CloseEvent","ErrorEvent","MessageEvent","EventSource"];fjQ.exports={setGlobalDispatcher:hjQ,getGlobalDispatcher:xjQ,installedExports:ev0}});var KV=R((jrY,bjQ)=>{var bG=u("node:assert"),Ay0=Zq();bjQ.exports=class{#A;#Q=!1;#B=!1;#Y=!1;constructor(Q){if(typeof Q!=="object"||Q===null)throw TypeError("handler must be an object");this.#A=Ay0.wrap(Q)}onRequestStart(...Q){this.#A.onRequestStart?.(...Q)}onRequestUpgrade(...Q){return bG(!this.#Q),bG(!this.#B),this.#A.onRequestUpgrade?.(...Q)}onResponseStart(...Q){return bG(!this.#Q),bG(!this.#B),bG(!this.#Y),this.#Y=!0,this.#A.onResponseStart?.(...Q)}onResponseData(...Q){return bG(!this.#Q),bG(!this.#B),this.#A.onResponseData?.(...Q)}onResponseEnd(...Q){return bG(!this.#Q),bG(!this.#B),this.#Q=!0,this.#A.onResponseEnd?.(...Q)}onResponseError(...Q){return this.#B=!0,this.#A.onResponseError?.(...Q)}onBodySent(){}}});var Co=R((OrY,cjQ)=>{var n8=lQ(),{kBodyUsed:sq}=B0(),Yo=u("node:assert"),{InvalidArgumentError:Qo}=QB(),Qy0=u("node:events"),By0=[300,301,302,303,307,308],mjQ=Symbol("body"),ujQ=()=>{};class Bo{constructor(A){this[mjQ]=A,this[sq]=!1}async*[Symbol.asyncIterator](){Yo(!this[sq],"disturbed"),this[sq]=!0,yield*this[mjQ]}}class Jo{static buildDispatch(A,Q){if(Q!=null&&(!Number.isInteger(Q)||Q<0))throw new Qo("maxRedirections must be a positive number");let B=A.dispatch.bind(A);return(Y,J)=>B(Y,new Jo(B,Q,Y,J))}constructor(A,Q,B,Y){if(Q!=null&&(!Number.isInteger(Q)||Q<0))throw new Qo("maxRedirections must be a positive number");this.dispatch=A,this.location=null;let{maxRedirections:J,...C}=B;if(this.opts=C,this.maxRedirections=Q,this.handler=Y,this.history=[],n8.isStream(this.opts.body)){if(n8.bodyLength(this.opts.body)===0)this.opts.body.on("data",function(){Yo(!1)});if(typeof this.opts.body.readableDidRead!=="boolean")this.opts.body[sq]=!1,Qy0.prototype.on.call(this.opts.body,"data",function(){this[sq]=!0})}else if(this.opts.body&&typeof this.opts.body.pipeTo==="function")this.opts.body=new Bo(this.opts.body);else if(this.opts.body&&typeof this.opts.body!=="string"&&!ArrayBuffer.isView(this.opts.body)&&n8.isIterable(this.opts.body)&&!n8.isFormDataLike(this.opts.body))this.opts.body=new Bo(this.opts.body)}onRequestStart(A,Q){this.handler.onRequestStart?.(A,{...Q,history:this.history})}onRequestUpgrade(A,Q,B,Y){this.handler.onRequestUpgrade?.(A,Q,B,Y)}onResponseStart(A,Q,B,Y){if(this.opts.throwOnMaxRedirect&&this.history.length>=this.maxRedirections)throw Error("max redirects");if((Q===301||Q===302)&&this.opts.method==="POST"){if(this.opts.method="GET",n8.isStream(this.opts.body))n8.destroy(this.opts.body.on("error",ujQ));this.opts.body=null}if(Q===303&&this.opts.method!=="HEAD"){if(this.opts.method="GET",n8.isStream(this.opts.body))n8.destroy(this.opts.body.on("error",ujQ));this.opts.body=null}if(this.location=this.history.length>=this.maxRedirections||n8.isDisturbed(this.opts.body)||By0.indexOf(Q)===-1?null:B.location,this.opts.origin)this.history.push(new URL(this.opts.path,this.opts.origin));if(!this.location){this.handler.onResponseStart?.(A,Q,B,Y);return}let{origin:J,pathname:C,search:X}=n8.parseURL(new URL(this.location,this.opts.origin&&new URL(this.opts.path,this.opts.origin))),G=X?`${C}${X}`:C,W=`${J}${G}`;for(let F of this.history)if(F.toString()===W)throw new Qo(`Redirect loop detected. Cannot redirect to ${J}. This typically happens when using a Client or Pool with cross-origin redirects. Use an Agent for cross-origin redirects.`);this.opts.headers=Yy0(this.opts.headers,Q===303,this.opts.origin!==J),this.opts.path=G,this.opts.origin=J,this.opts.query=null}onResponseData(A,Q){if(this.location);else this.handler.onResponseData?.(A,Q)}onResponseEnd(A,Q){if(this.location)this.dispatch(this.opts,this);else this.handler.onResponseEnd(A,Q)}onResponseError(A,Q){this.handler.onResponseError?.(A,Q)}}function djQ(A,Q,B){if(A.length===4)return n8.headerNameToString(A)==="host";if(Q&&n8.headerNameToString(A).startsWith("content-"))return!0;if(B&&(A.length===13||A.length===6||A.length===19)){let Y=n8.headerNameToString(A);return Y==="authorization"||Y==="cookie"||Y==="proxy-authorization"}return!1}function Yy0(A,Q,B){let Y=[];if(Array.isArray(A)){for(let J=0;J{var Jy0=Co();function Cy0({maxRedirections:A}={}){return(Q)=>{return function(Y,J){let{maxRedirections:C=A,...X}=Y;if(C==null||C===0)return Q(Y,J);let G={...X},W=new Jy0(Q,C,G,J);return Q(G,W)}}}ljQ.exports=Cy0});var sjQ=R((TrY,njQ)=>{var Xy0=KV(),{ResponseError:Gy0}=QB();class ijQ extends Xy0{#A;#Q;#B;#Y;#J;constructor(A,{handler:Q}){super(Q)}#C(A){return(this.#Q??"").indexOf(A)===0}onRequestStart(A,Q){return this.#A=0,this.#Q=null,this.#B=null,this.#Y=null,this.#J="",super.onRequestStart(A,Q)}onResponseStart(A,Q,B,Y){if(this.#A=Q,this.#Y=B,this.#Q=B["content-type"],this.#A<400)return super.onResponseStart(A,Q,B,Y);if(this.#C("application/json")||this.#C("text/plain"))this.#B=new TextDecoder("utf-8")}onResponseData(A,Q){if(this.#A<400)return super.onResponseData(A,Q);this.#J+=this.#B?.decode(Q,{stream:!0})??""}onResponseEnd(A,Q){if(this.#A>=400){if(this.#J+=this.#B?.decode(void 0,{stream:!1})??"",this.#C("application/json"))try{this.#J=JSON.parse(this.#J)}catch{}let B,Y=Error.stackTraceLimit;Error.stackTraceLimit=0;try{B=new Gy0("Response Error",this.#A,{body:this.#J,headers:this.#Y})}finally{Error.stackTraceLimit=Y}super.onResponseError(A,B)}else super.onResponseEnd(A,Q)}onResponseError(A,Q){super.onResponseError(A,Q)}}njQ.exports=()=>{return(A)=>{return function(B,Y){return A(B,new ijQ(B,{handler:Y}))}}}});var ajQ=R((SrY,rjQ)=>{var Wy0=uS();rjQ.exports=(A)=>{return(Q)=>{return function(Y,J){return Q(Y,new Wy0({...Y,retryOptions:{...A,...Y.retryOptions}},{handler:J,dispatch:Q}))}}}});var ejQ=R((krY,tjQ)=>{var{InvalidArgumentError:Fy0,RequestAbortedError:Zy0}=QB(),$y0=KV();class ojQ extends $y0{#A=1048576;#Q=!1;#B=0;#Y=null;aborted=!1;reason=!1;constructor({maxSize:A,signal:Q},B){if(A!=null&&(!Number.isFinite(A)||A<1))throw new Fy0("maxSize must be a number greater than 0");super(B);this.#A=A??this.#A}#J(A){this.aborted=!0,this.reason=A}onRequestStart(A,Q){return A.abort=this.#J.bind(this),this.#Y=A,super.onRequestStart(A,Q)}onResponseStart(A,Q,B,Y){let J=B["content-length"];if(J!=null&&J>this.#A)throw new Zy0(`Response size (${J}) larger than maxSize (${this.#A})`);if(this.aborted===!0)return!0;return super.onResponseStart(A,Q,B,Y)}onResponseError(A,Q){if(this.#Q)return;Q=this.#Y?.reason??Q,super.onResponseError(A,Q)}onResponseData(A,Q){if(this.#B=this.#B+Q.length,this.#B>=this.#A)if(this.#Q=!0,this.aborted===!0)super.onResponseError(A,this.reason);else super.onResponseEnd(A,{});return!0}onResponseEnd(A,Q){if(this.#Q)return;if(this.#Y.aborted===!0){super.onResponseError(A,this.reason);return}super.onResponseEnd(A,Q)}}function Uy0({maxSize:A}={maxSize:1048576}){return(Q)=>{return function(Y,J){let{dumpMaxSize:C=A}=Y,X=new ojQ({maxSize:C,signal:Y.signal},J);return Q(Y,X)}}}tjQ.exports=Uy0});var YOQ=R((_rY,BOQ)=>{var{isIP:Ey0}=u("node:net"),{lookup:Ky0}=u("node:dns"),Vy0=KV(),{InvalidArgumentError:VV,InformationalError:Iy0}=QB(),Xo=Math.pow(2,31)-1;class AOQ{#A=0;#Q=0;#B=new Map;dualStack=!0;affinity=null;lookup=null;pick=null;constructor(A){this.#A=A.maxTTL,this.#Q=A.maxItems,this.dualStack=A.dualStack,this.affinity=A.affinity,this.lookup=A.lookup??this.#Y,this.pick=A.pick??this.#J}get full(){return this.#B.size===this.#Q}runLookup(A,Q,B){let Y=this.#B.get(A.hostname);if(Y==null&&this.full){B(null,A);return}let J={affinity:this.affinity,dualStack:this.dualStack,lookup:this.lookup,pick:this.pick,...Q.dns,maxTTL:this.#A,maxItems:this.#Q};if(Y==null)this.lookup(A,J,(C,X)=>{if(C||X==null||X.length===0){B(C??new Iy0("No DNS entries found"));return}this.setRecords(A,X);let G=this.#B.get(A.hostname),W=this.pick(A,G,J.affinity),F;if(typeof W.port==="number")F=`:${W.port}`;else if(A.port!=="")F=`:${A.port}`;else F="";B(null,new URL(`${A.protocol}//${W.family===6?`[${W.address}]`:W.address}${F}`))});else{let C=this.pick(A,Y,J.affinity);if(C==null){this.#B.delete(A.hostname),this.runLookup(A,Q,B);return}let X;if(typeof C.port==="number")X=`:${C.port}`;else if(A.port!=="")X=`:${A.port}`;else X="";B(null,new URL(`${A.protocol}//${C.family===6?`[${C.address}]`:C.address}${X}`))}}#Y(A,Q,B){Ky0(A.hostname,{all:!0,family:this.dualStack===!1?this.affinity:0,order:"ipv4first"},(Y,J)=>{if(Y)return B(Y);let C=new Map;for(let X of J)C.set(`${X.address}:${X.family}`,X);B(null,C.values())})}#J(A,Q,B){let Y=null,{records:J,offset:C}=Q,X;if(this.dualStack){if(B==null)if(C==null||C===Xo)Q.offset=0,B=4;else Q.offset++,B=(Q.offset&1)===1?6:4;if(J[B]!=null&&J[B].ips.length>0)X=J[B];else X=J[B===4?6:4]}else X=J[B];if(X==null||X.ips.length===0)return Y;if(X.offset==null||X.offset===Xo)X.offset=0;else X.offset++;let G=X.offset%X.ips.length;if(Y=X.ips[G]??null,Y==null)return Y;if(Date.now()-Y.timestamp>Y.ttl)return X.ips.splice(G,1),this.pick(A,Q,B);return Y}pickFamily(A,Q){let B=this.#B.get(A.hostname)?.records;if(!B)return null;let Y=B[Q];if(!Y)return null;if(Y.offset==null||Y.offset===Xo)Y.offset=0;else Y.offset++;let J=Y.offset%Y.ips.length,C=Y.ips[J]??null;if(C==null)return C;if(Date.now()-C.timestamp>C.ttl)Y.ips.splice(J,1);return C}setRecords(A,Q){let B=Date.now(),Y={records:{4:null,6:null}};for(let J of Q){if(J.timestamp=B,typeof J.ttl==="number")J.ttl=Math.min(J.ttl,this.#A);else J.ttl=this.#A;let C=Y.records[J.family]??{ips:[]};C.ips.push(J),Y.records[J.family]=C}this.#B.set(A.hostname,Y)}deleteRecords(A){this.#B.delete(A.hostname)}getHandler(A,Q){return new QOQ(this,A,Q)}}class QOQ extends Vy0{#A=null;#Q=null;#B=null;#Y=null;#J=null;#C=null;#W=!0;constructor(A,{origin:Q,handler:B,dispatch:Y,newOrigin:J},C){super(B);this.#Y=Q,this.#C=J,this.#Q={...C},this.#A=A,this.#B=Y}onResponseError(A,Q){switch(Q.code){case"ETIMEDOUT":case"ECONNREFUSED":{if(this.#A.dualStack){if(!this.#W){super.onResponseError(A,Q);return}this.#W=!1;let B=this.#C.hostname[0]==="["?4:6,Y=this.#A.pickFamily(this.#Y,B);if(Y==null){super.onResponseError(A,Q);return}let J;if(typeof Y.port==="number")J=`:${Y.port}`;else if(this.#Y.port!=="")J=`:${this.#Y.port}`;else J="";let C={...this.#Q,origin:`${this.#Y.protocol}//${Y.family===6?`[${Y.address}]`:Y.address}${J}`};this.#B(C,this);return}super.onResponseError(A,Q);break}case"ENOTFOUND":this.#A.deleteRecords(this.#Y),super.onResponseError(A,Q);break;default:super.onResponseError(A,Q);break}}}BOQ.exports=(A)=>{if(A?.maxTTL!=null&&(typeof A?.maxTTL!=="number"||A?.maxTTL<0))throw new VV("Invalid maxTTL. Must be a positive number");if(A?.maxItems!=null&&(typeof A?.maxItems!=="number"||A?.maxItems<1))throw new VV("Invalid maxItems. Must be a positive number and greater than zero");if(A?.affinity!=null&&A?.affinity!==4&&A?.affinity!==6)throw new VV("Invalid affinity. Must be either 4 or 6");if(A?.dualStack!=null&&typeof A?.dualStack!=="boolean")throw new VV("Invalid dualStack. Must be a boolean");if(A?.lookup!=null&&typeof A?.lookup!=="function")throw new VV("Invalid lookup. Must be a function");if(A?.pick!=null&&typeof A?.pick!=="function")throw new VV("Invalid pick. Must be a function");let Q=A?.dualStack??!0,B;if(Q)B=A?.affinity??null;else B=A?.affinity??4;let Y={maxTTL:A?.maxTTL??1e4,lookup:A?.lookup??null,pick:A?.pick??null,dualStack:Q,affinity:B,maxItems:A?.maxItems??1/0},J=new AOQ(Y);return(C)=>{return function(G,W){let F=G.origin.constructor===URL?G.origin:new URL(G.origin);if(Ey0(F.hostname)!==0)return C(G,W);return J.runLookup(F,G,(Z,U)=>{if(Z)return W.onResponseError(null,Z);let $={...G,servername:F.hostname,origin:U.origin,headers:{host:F.host,...G.headers}};C($,J.getHandler({origin:F,dispatch:C,handler:W,newOrigin:U},G))}),!0}}}});var rq=R((vrY,COQ)=>{var{safeHTTPMethods:JOQ,pathHasQueryOrFragment:Hy0}=lQ(),{serializePathWithQuery:Dy0}=lQ();function Ny0(A){if(!A.origin)throw Error("opts.origin is undefined");let Q=A.path||"/";if(A.query&&!Hy0(A.path))Q=Dy0(Q,A.query);return{origin:A.origin.toString(),method:A.method,path:Q,headers:A.headers}}function Ly0(A){let Q;if(A.headers==null)Q={};else if(typeof A.headers[Symbol.iterator]==="function"){Q={};for(let B of A.headers){if(!Array.isArray(B))throw Error("opts.headers is not a valid header map");let[Y,J]=B;if(typeof Y!=="string"||typeof J!=="string")throw Error("opts.headers is not a valid header map");Q[Y.toLowerCase()]=J}}else if(typeof A.headers==="object"){Q={};for(let B of Object.keys(A.headers))Q[B.toLowerCase()]=A.headers[B]}else throw Error("opts.headers is not an object");return Q}function qy0(A){if(typeof A!=="object")throw TypeError(`expected key to be object, got ${typeof A}`);for(let Q of["origin","method","path"])if(typeof A[Q]!=="string")throw TypeError(`expected key.${Q} to be string, got ${typeof A[Q]}`);if(A.headers!==void 0&&typeof A.headers!=="object")throw TypeError(`expected headers to be object, got ${typeof A}`)}function My0(A){if(typeof A!=="object")throw TypeError(`expected value to be object, got ${typeof A}`);for(let Q of["statusCode","cachedAt","staleAt","deleteAt"])if(typeof A[Q]!=="number")throw TypeError(`expected value.${Q} to be number, got ${typeof A[Q]}`);if(typeof A.statusMessage!=="string")throw TypeError(`expected value.statusMessage to be string, got ${typeof A.statusMessage}`);if(A.headers!=null&&typeof A.headers!=="object")throw TypeError(`expected value.rawHeaders to be object, got ${typeof A.headers}`);if(A.vary!==void 0&&typeof A.vary!=="object")throw TypeError(`expected value.vary to be object, got ${typeof A.vary}`);if(A.etag!==void 0&&typeof A.etag!=="string")throw TypeError(`expected value.etag to be string, got ${typeof A.etag}`)}function zy0(A){let Q={},B;if(Array.isArray(A)){B=[];for(let Y of A)B.push(...Y.split(","))}else B=A.split(",");for(let Y=0;Y=2&&G[0]==='"'&&G[G.length-1]==='"')G=G.substring(1,G.length-1);let W=parseInt(G,10);if(W!==W)continue;if(X==="max-age"&&X in Q&&Q[X]>=W)continue;Q[X]=W;break}case"private":case"no-cache":if(G){if(G[0]==='"'){let W=[G.substring(1)],F=G[G.length-1]==='"';if(!F)for(let Z=Y+1;Z{function Py0(A){switch(A[3]){case",":return Ty0(A);case" ":return Sy0(A);default:return ky0(A)}}function Ty0(A){if(A.length!==29||A[4]!==" "||A[7]!==" "||A[11]!==" "||A[16]!==" "||A[19]!==":"||A[22]!==":"||A[25]!==" "||A[26]!=="G"||A[27]!=="M"||A[28]!=="T")return;let Q=-1;if(A[0]==="S"&&A[1]==="u"&&A[2]==="n")Q=0;else if(A[0]==="M"&&A[1]==="o"&&A[2]==="n")Q=1;else if(A[0]==="T"&&A[1]==="u"&&A[2]==="e")Q=2;else if(A[0]==="W"&&A[1]==="e"&&A[2]==="d")Q=3;else if(A[0]==="T"&&A[1]==="h"&&A[2]==="u")Q=4;else if(A[0]==="F"&&A[1]==="r"&&A[2]==="i")Q=5;else if(A[0]==="S"&&A[1]==="a"&&A[2]==="t")Q=6;else return;let B=0;if(A[5]==="0"){let E=A.charCodeAt(6);if(E<49||E>57)return;B=E-48}else{let E=A.charCodeAt(5);if(E<49||E>51)return;let K=A.charCodeAt(6);if(K<48||K>57)return;B=(E-48)*10+(K-48)}let Y=-1;if(A[8]==="J"&&A[9]==="a"&&A[10]==="n")Y=0;else if(A[8]==="F"&&A[9]==="e"&&A[10]==="b")Y=1;else if(A[8]==="M"&&A[9]==="a")if(A[10]==="r")Y=2;else if(A[10]==="y")Y=4;else return;else if(A[8]==="J")if(A[9]==="a"&&A[10]==="n")Y=0;else if(A[9]==="u")if(A[10]==="n")Y=5;else if(A[10]==="l")Y=6;else return;else return;else if(A[8]==="A")if(A[9]==="p"&&A[10]==="r")Y=3;else if(A[9]==="u"&&A[10]==="g")Y=7;else return;else if(A[8]==="S"&&A[9]==="e"&&A[10]==="p")Y=8;else if(A[8]==="O"&&A[9]==="c"&&A[10]==="t")Y=9;else if(A[8]==="N"&&A[9]==="o"&&A[10]==="v")Y=10;else if(A[8]==="D"&&A[9]==="e"&&A[10]==="c")Y=11;else return;let J=A.charCodeAt(12);if(J<48||J>57)return;let C=A.charCodeAt(13);if(C<48||C>57)return;let X=A.charCodeAt(14);if(X<48||X>57)return;let G=A.charCodeAt(15);if(G<48||G>57)return;let W=(J-48)*1000+(C-48)*100+(X-48)*10+(G-48),F=0;if(A[17]==="0"){let E=A.charCodeAt(18);if(E<48||E>57)return;F=E-48}else{let E=A.charCodeAt(17);if(E<48||E>50)return;let K=A.charCodeAt(18);if(K<48||K>57)return;if(E===50&&K>51)return;F=(E-48)*10+(K-48)}let Z=0;if(A[20]==="0"){let E=A.charCodeAt(21);if(E<48||E>57)return;Z=E-48}else{let E=A.charCodeAt(20);if(E<48||E>53)return;let K=A.charCodeAt(21);if(K<48||K>57)return;Z=(E-48)*10+(K-48)}let U=0;if(A[23]==="0"){let E=A.charCodeAt(24);if(E<48||E>57)return;U=E-48}else{let E=A.charCodeAt(23);if(E<48||E>53)return;let K=A.charCodeAt(24);if(K<48||K>57)return;U=(E-48)*10+(K-48)}let $=new Date(Date.UTC(W,Y,B,F,Z,U));return $.getUTCDay()===Q?$:void 0}function Sy0(A){if(A.length!==24||A[7]!==" "||A[10]!==" "||A[19]!==" ")return;let Q=-1;if(A[0]==="S"&&A[1]==="u"&&A[2]==="n")Q=0;else if(A[0]==="M"&&A[1]==="o"&&A[2]==="n")Q=1;else if(A[0]==="T"&&A[1]==="u"&&A[2]==="e")Q=2;else if(A[0]==="W"&&A[1]==="e"&&A[2]==="d")Q=3;else if(A[0]==="T"&&A[1]==="h"&&A[2]==="u")Q=4;else if(A[0]==="F"&&A[1]==="r"&&A[2]==="i")Q=5;else if(A[0]==="S"&&A[1]==="a"&&A[2]==="t")Q=6;else return;let B=-1;if(A[4]==="J"&&A[5]==="a"&&A[6]==="n")B=0;else if(A[4]==="F"&&A[5]==="e"&&A[6]==="b")B=1;else if(A[4]==="M"&&A[5]==="a")if(A[6]==="r")B=2;else if(A[6]==="y")B=4;else return;else if(A[4]==="J")if(A[5]==="a"&&A[6]==="n")B=0;else if(A[5]==="u")if(A[6]==="n")B=5;else if(A[6]==="l")B=6;else return;else return;else if(A[4]==="A")if(A[5]==="p"&&A[6]==="r")B=3;else if(A[5]==="u"&&A[6]==="g")B=7;else return;else if(A[4]==="S"&&A[5]==="e"&&A[6]==="p")B=8;else if(A[4]==="O"&&A[5]==="c"&&A[6]==="t")B=9;else if(A[4]==="N"&&A[5]==="o"&&A[6]==="v")B=10;else if(A[4]==="D"&&A[5]==="e"&&A[6]==="c")B=11;else return;let Y=0;if(A[8]===" "){let E=A.charCodeAt(9);if(E<49||E>57)return;Y=E-48}else{let E=A.charCodeAt(8);if(E<49||E>51)return;let K=A.charCodeAt(9);if(K<48||K>57)return;Y=(E-48)*10+(K-48)}let J=0;if(A[11]==="0"){let E=A.charCodeAt(12);if(E<48||E>57)return;J=E-48}else{let E=A.charCodeAt(11);if(E<48||E>50)return;let K=A.charCodeAt(12);if(K<48||K>57)return;if(E===50&&K>51)return;J=(E-48)*10+(K-48)}let C=0;if(A[14]==="0"){let E=A.charCodeAt(15);if(E<48||E>57)return;C=E-48}else{let E=A.charCodeAt(14);if(E<48||E>53)return;let K=A.charCodeAt(15);if(K<48||K>57)return;C=(E-48)*10+(K-48)}let X=0;if(A[17]==="0"){let E=A.charCodeAt(18);if(E<48||E>57)return;X=E-48}else{let E=A.charCodeAt(17);if(E<48||E>53)return;let K=A.charCodeAt(18);if(K<48||K>57)return;X=(E-48)*10+(K-48)}let G=A.charCodeAt(20);if(G<48||G>57)return;let W=A.charCodeAt(21);if(W<48||W>57)return;let F=A.charCodeAt(22);if(F<48||F>57)return;let Z=A.charCodeAt(23);if(Z<48||Z>57)return;let U=(G-48)*1000+(W-48)*100+(F-48)*10+(Z-48),$=new Date(Date.UTC(U,B,Y,J,C,X));return $.getUTCDay()===Q?$:void 0}function ky0(A){let Q=-1,B=-1;if(A[0]==="S"){if(A[1]==="u"&&A[2]==="n"&&A[3]==="d"&&A[4]==="a"&&A[5]==="y")B=0,Q=6;else if(A[1]==="a"&&A[2]==="t"&&A[3]==="u"&&A[4]==="r"&&A[5]==="d"&&A[6]==="a"&&A[7]==="y")B=6,Q=8}else if(A[0]==="M"&&A[1]==="o"&&A[2]==="n"&&A[3]==="d"&&A[4]==="a"&&A[5]==="y")B=1,Q=6;else if(A[0]==="T"){if(A[1]==="u"&&A[2]==="e"&&A[3]==="s"&&A[4]==="d"&&A[5]==="a"&&A[6]==="y")B=2,Q=7;else if(A[1]==="h"&&A[2]==="u"&&A[3]==="r"&&A[4]==="s"&&A[5]==="d"&&A[6]==="a"&&A[7]==="y")B=4,Q=8}else if(A[0]==="W"&&A[1]==="e"&&A[2]==="d"&&A[3]==="n"&&A[4]==="e"&&A[5]==="s"&&A[6]==="d"&&A[7]==="a"&&A[8]==="y")B=3,Q=9;else if(A[0]==="F"&&A[1]==="r"&&A[2]==="i"&&A[3]==="d"&&A[4]==="a"&&A[5]==="y")B=5,Q=6;else return;if(A[Q]!==","||A.length-Q-1!==23||A[Q+1]!==" "||A[Q+4]!=="-"||A[Q+8]!=="-"||A[Q+11]!==" "||A[Q+14]!==":"||A[Q+17]!==":"||A[Q+20]!==" "||A[Q+21]!=="G"||A[Q+22]!=="M"||A[Q+23]!=="T")return;let Y=0;if(A[Q+2]==="0"){let $=A.charCodeAt(Q+3);if($<49||$>57)return;Y=$-48}else{let $=A.charCodeAt(Q+2);if($<49||$>51)return;let E=A.charCodeAt(Q+3);if(E<48||E>57)return;Y=($-48)*10+(E-48)}let J=-1;if(A[Q+5]==="J"&&A[Q+6]==="a"&&A[Q+7]==="n")J=0;else if(A[Q+5]==="F"&&A[Q+6]==="e"&&A[Q+7]==="b")J=1;else if(A[Q+5]==="M"&&A[Q+6]==="a"&&A[Q+7]==="r")J=2;else if(A[Q+5]==="A"&&A[Q+6]==="p"&&A[Q+7]==="r")J=3;else if(A[Q+5]==="M"&&A[Q+6]==="a"&&A[Q+7]==="y")J=4;else if(A[Q+5]==="J"&&A[Q+6]==="u"&&A[Q+7]==="n")J=5;else if(A[Q+5]==="J"&&A[Q+6]==="u"&&A[Q+7]==="l")J=6;else if(A[Q+5]==="A"&&A[Q+6]==="u"&&A[Q+7]==="g")J=7;else if(A[Q+5]==="S"&&A[Q+6]==="e"&&A[Q+7]==="p")J=8;else if(A[Q+5]==="O"&&A[Q+6]==="c"&&A[Q+7]==="t")J=9;else if(A[Q+5]==="N"&&A[Q+6]==="o"&&A[Q+7]==="v")J=10;else if(A[Q+5]==="D"&&A[Q+6]==="e"&&A[Q+7]==="c")J=11;else return;let C=A.charCodeAt(Q+9);if(C<48||C>57)return;let X=A.charCodeAt(Q+10);if(X<48||X>57)return;let G=(C-48)*10+(X-48);G+=G<70?2000:1900;let W=0;if(A[Q+12]==="0"){let $=A.charCodeAt(Q+13);if($<48||$>57)return;W=$-48}else{let $=A.charCodeAt(Q+12);if($<48||$>50)return;let E=A.charCodeAt(Q+13);if(E<48||E>57)return;if($===50&&E>51)return;W=($-48)*10+(E-48)}let F=0;if(A[Q+15]==="0"){let $=A.charCodeAt(Q+16);if($<48||$>57)return;F=$-48}else{let $=A.charCodeAt(Q+15);if($<48||$>53)return;let E=A.charCodeAt(Q+16);if(E<48||E>57)return;F=($-48)*10+(E-48)}let Z=0;if(A[Q+18]==="0"){let $=A.charCodeAt(Q+19);if($<48||$>57)return;Z=$-48}else{let $=A.charCodeAt(Q+18);if($<48||$>53)return;let E=A.charCodeAt(Q+19);if(E<48||E>57)return;Z=($-48)*10+(E-48)}let U=new Date(Date.UTC(G,J,Y,W,F,Z));return U.getUTCDay()===B?U:void 0}XOQ.exports={parseHttpDate:Py0}});var UOQ=R((grY,$OQ)=>{var _y0=lQ(),{parseCacheControlHeader:vy0,parseVaryHeader:yy0,isEtagUsable:gy0}=rq(),{parseHttpDate:WOQ}=GOQ();function hy0(){}var FOQ=[200,203,204,206,300,301,308,404,405,410,414,501],xy0=[206,304],fy0=2147483647000;class ZOQ{#A;#Q;#B;#Y;#J;#C;constructor({store:A,type:Q,cacheByDefault:B},Y,J){this.#Y=A,this.#Q=Q,this.#B=B,this.#A=Y,this.#J=J}onRequestStart(A,Q){this.#C?.destroy(),this.#C=void 0,this.#J.onRequestStart?.(A,Q)}onRequestUpgrade(A,Q,B,Y){this.#J.onRequestUpgrade?.(A,Q,B,Y)}onResponseStart(A,Q,B,Y){let J=()=>this.#J.onResponseStart?.(A,Q,B,Y);if(!_y0.safeHTTPMethods.includes(this.#A.method)&&Q>=200&&Q<=399){try{this.#Y.delete(this.#A)?.catch?.(hy0)}catch{}return J()}let C=B["cache-control"],X=B["last-modified"]&&FOQ.includes(Q);if(!C&&!B.expires&&!X&&!this.#B)return J();let G=C?vy0(C):{};if(!by0(this.#Q,Q,B,G))return J();let W=Date.now(),F=B.age?my0(B.age):void 0;if(F&&F>=fy0)return J();let Z=typeof B.date==="string"?WOQ(B.date):void 0,U=uy0(this.#Q,W,F,B,Z,G)??this.#B;if(U===void 0||F&&F>U)return J();let $=Z?Z.getTime():W,E=U+$;if(W>=E)return J();let K;if(this.#A.headers&&B.vary){if(K=yy0(B.vary,this.#A.headers),!K)return J()}let I=dy0($,G,E),V=cy0(B,G),H={statusCode:Q,statusMessage:Y,headers:V,vary:K,cacheControlDirectives:G,cachedAt:F?W-F:W,staleAt:E,deleteAt:I};if(typeof B.etag==="string"&&gy0(B.etag))H.etag=B.etag;if(this.#C=this.#Y.createWriteStream(this.#A,H),!this.#C)return J();let D=this;return this.#C.on("drain",()=>A.resume()).on("error",function(){D.#C=void 0,D.#Y.delete(D.#A)}).on("close",function(){if(D.#C===this)D.#C=void 0;A.resume()}),J()}onResponseData(A,Q){if(this.#C?.write(Q)===!1)A.pause();this.#J.onResponseData?.(A,Q)}onResponseEnd(A,Q){this.#C?.end(),this.#J.onResponseEnd?.(A,Q)}onResponseError(A,Q){this.#C?.destroy(Q),this.#C=void 0,this.#J.onResponseError?.(A,Q)}}function by0(A,Q,B,Y){if(Q<200||xy0.includes(Q))return!1;if(!FOQ.includes(Q)&&!B.expires&&!Y.public&&Y["max-age"]===void 0&&!(Y.private&&A==="private")&&!(Y["s-maxage"]!==void 0&&A==="shared"))return!1;if(Y["no-store"])return!1;if(A==="shared"&&Y.private===!0)return!1;if(B.vary?.includes("*"))return!1;if(B.authorization){if(!Y.public||typeof B.authorization!=="string")return!1;if(Array.isArray(Y["no-cache"])&&Y["no-cache"].includes("authorization"))return!1;if(Array.isArray(Y.private)&&Y.private.includes("authorization"))return!1}return!0}function my0(A){let Q=parseInt(Array.isArray(A)?A[0]:A);return isNaN(Q)?void 0:Q*1000}function uy0(A,Q,B,Y,J,C){if(A==="shared"){let G=C["s-maxage"];if(G!==void 0)return G>0?G*1000:void 0}let X=C["max-age"];if(X!==void 0)return X>0?X*1000:void 0;if(typeof Y.expires==="string"){let G=WOQ(Y.expires);if(G){if(Q>=G.getTime())return;if(J){if(J>=G)return;if(B!==void 0&&B>G-J)return}return G.getTime()-Q}}if(typeof Y["last-modified"]==="string"){let G=new Date(Y["last-modified"]);if(ly0(G)){if(G.getTime()>=Q)return;return(Q-G.getTime())*0.1}}if(C.immutable)return 31536000;return}function dy0(A,Q,B){let Y=-1/0,J=-1/0,C=-1/0;if(Q["stale-while-revalidate"])Y=B+Q["stale-while-revalidate"]*1000;if(Q["stale-if-error"])J=B+Q["stale-if-error"]*1000;if(Y===-1/0&&J===-1/0)C=A+31536000000;return Math.max(B,Y,J,C)}function cy0(A,Q){let B=["connection","proxy-authenticate","proxy-authentication-info","proxy-authorization","proxy-connection","te","transfer-encoding","upgrade","age"];if(A.connection)if(Array.isArray(A.connection))B.push(...A.connection.map((J)=>J.trim()));else B.push(...A.connection.split(",").map((J)=>J.trim()));if(Array.isArray(Q["no-cache"]))B.push(...Q["no-cache"]);if(Array.isArray(Q.private))B.push(...Q.private);let Y;for(let J of B)if(A[J])Y??={...A},delete Y[J];return Y??A}function ly0(A){return A instanceof Date&&Number.isFinite(A.valueOf())}$OQ.exports=ZOQ});var Go=R((hrY,IOQ)=>{var{Writable:py0}=u("node:stream"),{EventEmitter:iy0}=u("node:events"),{assertCacheKey:EOQ,assertCacheValue:ny0}=rq();class VOQ extends iy0{#A=1024;#Q=104857600;#B=5242880;#Y=0;#J=0;#C=new Map;#W=!1;constructor(A){super();if(A){if(typeof A!=="object")throw TypeError("MemoryCacheStore options must be an object");if(A.maxCount!==void 0){if(typeof A.maxCount!=="number"||!Number.isInteger(A.maxCount)||A.maxCount<0)throw TypeError("MemoryCacheStore options.maxCount must be a non-negative integer");this.#A=A.maxCount}if(A.maxSize!==void 0){if(typeof A.maxSize!=="number"||!Number.isInteger(A.maxSize)||A.maxSize<0)throw TypeError("MemoryCacheStore options.maxSize must be a non-negative integer");this.#Q=A.maxSize}if(A.maxEntrySize!==void 0){if(typeof A.maxEntrySize!=="number"||!Number.isInteger(A.maxEntrySize)||A.maxEntrySize<0)throw TypeError("MemoryCacheStore options.maxEntrySize must be a non-negative integer");this.#B=A.maxEntrySize}}}get size(){return this.#Y}isFull(){return this.#Y>=this.#Q||this.#J>=this.#A}get(A){EOQ(A);let Q=`${A.origin}:${A.path}`,B=Date.now(),Y=this.#C.get(Q),J=Y?KOQ(A,Y,B):null;return J==null?void 0:{statusMessage:J.statusMessage,statusCode:J.statusCode,headers:J.headers,body:J.body,vary:J.vary?J.vary:void 0,etag:J.etag,cacheControlDirectives:J.cacheControlDirectives,cachedAt:J.cachedAt,staleAt:J.staleAt,deleteAt:J.deleteAt}}createWriteStream(A,Q){EOQ(A),ny0(Q);let B=`${A.origin}:${A.path}`,Y=this,J={...A,...Q,body:[],size:0};return new py0({write(C,X,G){if(typeof C==="string")C=Buffer.from(C,X);if(J.size+=C.byteLength,J.size>=Y.#B)this.destroy();else J.body.push(C);G(null)},final(C){let X=Y.#C.get(B);if(!X)X=[],Y.#C.set(B,X);let G=KOQ(A,X,Date.now());if(G){let W=X.indexOf(G);X.splice(W,1,J),Y.#Y-=G.size}else X.push(J),Y.#J+=1;if(Y.#Y+=J.size,Y.#Y>Y.#Q||Y.#J>Y.#A){if(!Y.#W)Y.emit("maxSizeExceeded",{size:Y.#Y,maxSize:Y.#Q,count:Y.#J,maxCount:Y.#A}),Y.#W=!0;for(let[W,F]of Y.#C){for(let Z of F.splice(0,F.length/2))Y.#Y-=Z.size,Y.#J-=1;if(F.length===0)Y.#C.delete(W)}if(Y.#YY.deleteAt>B&&Y.method===A.method&&(Y.vary==null||Object.keys(Y.vary).every((J)=>{if(Y.vary[J]===null)return A.headers[J]===void 0;return Y.vary[J]===A.headers[J]})))}IOQ.exports=VOQ});var NOQ=R((xrY,DOQ)=>{var sy0=u("node:assert");class HOQ{#A=!1;#Q;#B;#Y;#J;constructor(A,Q,B){if(typeof A!=="function")throw TypeError("callback must be a function");this.#Q=A,this.#B=Q,this.#J=B}onRequestStart(A,Q){this.#A=!1,this.#Y=Q}onRequestUpgrade(A,Q,B,Y){this.#B.onRequestUpgrade?.(A,Q,B,Y)}onResponseStart(A,Q,B,Y){if(sy0(this.#Q!=null),this.#A=Q===304||this.#J&&Q>=500&&Q<=504,this.#Q(this.#A,this.#Y),this.#Q=null,this.#A)return!0;this.#B.onRequestStart?.(A,this.#Y),this.#B.onResponseStart?.(A,Q,B,Y)}onResponseData(A,Q){if(this.#A)return;return this.#B.onResponseData?.(A,Q)}onResponseEnd(A,Q){if(this.#A)return;this.#B.onResponseEnd?.(A,Q)}onResponseError(A,Q){if(this.#A)return;if(this.#Q)this.#Q(!1),this.#Q=null;if(typeof this.#B.onResponseError==="function")this.#B.onResponseError(A,Q);else throw Q}}DOQ.exports=HOQ});var zOQ=R((frY,MOQ)=>{var LOQ=u("node:assert"),{Readable:ry0}=u("node:stream"),IV=lQ(),aq=UOQ(),ay0=Go(),oy0=NOQ(),{assertCacheStore:ty0,assertCacheMethods:ey0,makeCacheKey:Ag0,normalizeHeaders:Qg0,parseCacheControlHeader:Bg0}=rq(),{AbortError:Yg0}=QB();function Jg0(A,Q){if(Q?.["no-cache"])return!0;if(A.cacheControlDirectives?.["no-cache"]&&!Array.isArray(A.cacheControlDirectives["no-cache"]))return!0;let B=Date.now();if(B>A.staleAt){if(Q?.["max-stale"]){let Y=A.staleAt+Q["max-stale"]*1000;return B>Y}return!0}if(Q?.["min-fresh"]){let Y=A.staleAt-B,J=Q["min-fresh"]*1000;return Y<=J}return!1}function Cg0(A){let Q=A.cacheControlDirectives?.["stale-while-revalidate"];if(!Q)return!1;let B=Date.now(),Y=A.staleAt+Q*1000;return B<=Y}function Xg0(A,Q,B,Y,J,C){if(C?.["only-if-cached"]){let X=!1;try{if(typeof Y.onConnect==="function"){if(Y.onConnect(()=>{X=!0}),X)return}if(typeof Y.onHeaders==="function"){if(Y.onHeaders(504,[],()=>{},"Gateway Timeout"),X)return}if(typeof Y.onComplete==="function")Y.onComplete([])}catch(G){if(typeof Y.onError==="function")Y.onError(G)}return!0}return A(J,new aq(Q,B,Y))}function Wo(A,Q,B,Y,J,C){let X=IV.isStream(B.body)?B.body:ry0.from(B.body??[]);LOQ(!X.destroyed,"stream should not be destroyed"),LOQ(!X.readableDidRead,"stream should not be readableDidRead");let G={resume(){X.resume()},pause(){X.pause()},get paused(){return X.isPaused()},get aborted(){return X.destroyed},get reason(){return X.errored},abort(F){X.destroy(F??new Yg0)}};if(X.on("error",function(F){if(!this.readableEnded)if(typeof A.onResponseError==="function")A.onResponseError(G,F);else throw F}).on("close",function(){if(!this.errored)A.onResponseEnd?.(G,{})}),A.onRequestStart?.(G,J),X.destroyed)return;let W={...B.headers,age:String(Y)};if(C)W.warning='110 - "response is stale"';if(A.onResponseStart?.(G,B.statusCode,W,B.statusMessage),Q.method==="HEAD")X.destroy();else X.on("data",function(F){A.onResponseData?.(G,F)})}function qOQ(A,Q,B,Y,J,C,X){if(!X)return Xg0(A,Q,B,Y,J,C);let G=Date.now();if(G>X.deleteAt)return A(J,new aq(Q,B,Y));let W=Math.round((G-X.cachedAt)/1000);if(C?.["max-age"]&&W>=C["max-age"])return A(J,Y);if(Jg0(X,C)){if(IV.isStream(J.body)&&IV.bodyLength(J.body)!==0)return A(J,new aq(Q,B,Y));if(Cg0(X))return Wo(Y,J,X,W,null,!0),queueMicrotask(()=>{let $={...J.headers,"if-modified-since":new Date(X.cachedAt).toUTCString()};if(X.etag)$["if-none-match"]=X.etag;if(X.vary)$={...$,...X.vary};A({...J,headers:$},new aq(Q,B,{onRequestStart(){},onRequestUpgrade(){},onResponseStart(){},onResponseData(){},onResponseEnd(){},onResponseError(){}}))}),!0;let F=!1,Z=X.cacheControlDirectives["stale-if-error"]??C?.["stale-if-error"];if(Z)F=G{if($)Wo(Y,J,X,W,E,!0);else if(IV.isStream(X.body))X.body.on("error",()=>{}).destroy()},new aq(Q,B,Y),F))}if(IV.isStream(J.body))J.body.on("error",()=>{}).destroy();Wo(Y,J,X,W,null,!1)}MOQ.exports=(A={})=>{let{store:Q=new ay0,methods:B=["GET"],cacheByDefault:Y=void 0,type:J="shared"}=A;if(typeof A!=="object"||A===null)throw TypeError(`expected type of opts to be an Object, got ${A===null?"null":typeof A}`);if(ty0(Q,"opts.store"),ey0(B,"opts.methods"),typeof Y<"u"&&typeof Y!=="number")throw TypeError(`expected opts.cacheByDefault to be number or undefined, got ${typeof Y}`);if(typeof J<"u"&&J!=="shared"&&J!=="private")throw TypeError(`expected opts.type to be shared, private, or undefined, got ${typeof J}`);let C={store:Q,methods:B,cacheByDefault:Y,type:J},X=IV.safeHTTPMethods.filter((G)=>B.includes(G)===!1);return(G)=>{return(W,F)=>{if(!W.origin||X.includes(W.method))return G(W,F);W={...W,headers:Qg0(W)};let Z=W.headers?.["cache-control"]?Bg0(W.headers["cache-control"]):void 0;if(Z?.["no-store"])return G(W,F);let U=Ag0(W),$=Q.get(U);if($&&typeof $.then==="function")$.then((E)=>{qOQ(G,C,U,F,W,Z,E)});else qOQ(G,C,U,F,W,Z,$);return!0}}}});var SOQ=R((brY,TOQ)=>{var{createInflate:Fo,createGunzip:ROQ,createBrotliDecompress:Gg0,createZstdDecompress:wOQ}=u("node:zlib"),{pipeline:Wg0}=u("node:stream"),Fg0=KV(),jOQ={gzip:ROQ,"x-gzip":ROQ,br:Gg0,deflate:Fo,compress:Fo,"x-compress":Fo,...wOQ?{zstd:wOQ}:{}},Zg0=[204,304],OOQ=!1;class POQ extends Fg0{#A=[];#Q;#B;#Y;constructor(A,{skipStatusCodes:Q=Zg0,skipErrorResponses:B=!0}={}){super(A);this.#B=Q,this.#Y=B}#J(A,Q){if(!A||Q<200)return!0;if(this.#B.includes(Q))return!0;if(this.#Y&&Q>=400)return!0;return!1}#C(A){let Q=A.split(","),B=[];for(let Y=Q.length-1;Y>=0;Y--){let J=Q[Y].trim();if(!J)continue;if(!jOQ[J])return B.length=0,B;B.push(jOQ[J]())}return B}#W(A,Q){A.on("readable",()=>{let B;while((B=A.read())!==null)if(super.onResponseData(Q,B)===!1)break}),A.on("error",(B)=>{super.onResponseError(Q,B)})}#X(A){let Q=this.#A[0];this.#W(Q,A),Q.on("end",()=>{super.onResponseEnd(A,{})})}#G(A){let Q=this.#A[this.#A.length-1];this.#W(Q,A),this.#Q=Wg0(this.#A,(B)=>{if(B){super.onResponseError(A,B);return}super.onResponseEnd(A,{})})}#Z(){this.#A.length=0,this.#Q=null}onResponseStart(A,Q,B,Y){let J=B["content-encoding"];if(this.#J(J,Q))return super.onResponseStart(A,Q,B,Y);let C=this.#C(J.toLowerCase());if(C.length===0)return this.#Z(),super.onResponseStart(A,Q,B,Y);this.#A=C;let{"content-encoding":X,"content-length":G,...W}=B;if(this.#A.length===1)this.#X(A);else this.#G(A);super.onResponseStart(A,Q,W,Y)}onResponseData(A,Q){if(this.#A.length>0){this.#A[0].write(Q);return}super.onResponseData(A,Q)}onResponseEnd(A,Q){if(this.#A.length>0){this.#A[0].end(),this.#Z();return}super.onResponseEnd(A,Q)}onResponseError(A,Q){if(this.#A.length>0){for(let B of this.#A)B.destroy(Q);this.#Z()}super.onResponseError(A,Q)}}function $g0(A={}){if(!OOQ)process.emitWarning("DecompressInterceptor is experimental and subject to change","ExperimentalWarning"),OOQ=!0;return(Q)=>{return(B,Y)=>{let J=new POQ(Y,A);return Q(B,J)}}}TOQ.exports=$g0});var _OQ=R((mrY,kOQ)=>{var{Writable:Ug0}=u("node:stream"),{assertCacheKey:Zo,assertCacheValue:Eg0}=rq(),$o;kOQ.exports=class{#A=2000000000;#Q=1/0;#B;#Y;#J;#C;#W;#X;#G;#Z;constructor(Q){if(Q){if(typeof Q!=="object")throw TypeError("SqliteCacheStore options must be an object");if(Q.maxEntrySize!==void 0){if(typeof Q.maxEntrySize!=="number"||!Number.isInteger(Q.maxEntrySize)||Q.maxEntrySize<0)throw TypeError("SqliteCacheStore options.maxEntrySize must be a non-negative integer");if(Q.maxEntrySize>2000000000)throw TypeError("SqliteCacheStore options.maxEntrySize must be less than 2gb");this.#A=Q.maxEntrySize}if(Q.maxCount!==void 0){if(typeof Q.maxCount!=="number"||!Number.isInteger(Q.maxCount)||Q.maxCount<0)throw TypeError("SqliteCacheStore options.maxCount must be a non-negative integer");this.#Q=Q.maxCount}}if(!$o)$o=u("node:sqlite").DatabaseSync;this.#B=new $o(Q?.location??":memory:"),this.#B.exec(` +${A.format(Q)}`.trim())}}HjQ.exports=IjQ});var ta=R((MrY,LjQ)=>{var{InvalidArgumentError:Sv0}=QB();function kv0(A={}){let{ignoreHeaders:Q=[],excludeHeaders:B=[],matchHeaders:Y=[],caseSensitive:J=!1}=A;return{ignore:new Set(Q.map((C)=>J?C:C.toLowerCase())),exclude:new Set(B.map((C)=>J?C:C.toLowerCase())),match:new Set(Y.map((C)=>J?C:C.toLowerCase()))}}var oa;try{oa=u("node:crypto")}catch{}var _v0=oa?.hash?(A)=>oa.hash("sha256",A,"base64url"):(A)=>Buffer.from(A).toString("base64url");function NjQ(A){return Array.isArray(A)&&(A.length&1)===0}function vv0(A=[]){if(A.length===0)return()=>!1;return function(B){let Y;for(let J of A)if(typeof J==="string"){if(!Y)Y=B.toLowerCase();if(Y.includes(J.toLowerCase()))return!0}else if(J instanceof RegExp){if(J.test(B))return!0}return!1}}function yv0(A){let Q={};if(!A)return Q;if(NjQ(A)){for(let B=0;B{var{writeFile:hv0,readFile:xv0,mkdir:fv0}=u("node:fs/promises"),{dirname:bv0,resolve:qjQ}=u("node:path"),{setTimeout:mv0,clearTimeout:MjQ}=u("node:timers"),{InvalidArgumentError:zjQ,UndiciError:uv0}=QB(),{hashId:dv0,isUrlExcludedFactory:cv0,normalizeHeaders:RjQ,createHeaderFilters:wjQ}=ta();function pq(A,Q,B={}){let Y=new URL(A.path,A.origin),J=A._normalizedHeaders||RjQ(A.headers);if(!A._normalizedHeaders)A._normalizedHeaders=J;return{method:A.method||"GET",url:B.matchQuery!==!1?Y.toString():`${Y.origin}${Y.pathname}`,headers:jjQ(J,Q,B),body:B.matchBody!==!1&&A.body?String(A.body):""}}function jjQ(A,Q,B={}){if(!A||typeof A!=="object")return{};let{caseSensitive:Y=!1}=B,J={},{ignore:C,exclude:X,match:G}=Q;for(let[W,F]of Object.entries(A)){let Z=Y?W:W.toLowerCase();if(X.has(Z))continue;if(C.has(Z))continue;if(G.size!==0){if(!G.has(Z))continue}J[Z]=F}return J}function OjQ(A,Q,B={}){if(!A||typeof A!=="object")return{};let{caseSensitive:Y=!1}=B,J={},{exclude:C}=Q;for(let[X,G]of Object.entries(A)){let W=Y?X:X.toLowerCase();if(C.has(W))continue;J[W]=G}return J}function iq(A){let Q=[A.method,A.url];if(A.headers&&typeof A.headers==="object"){let Y=Object.keys(A.headers).sort();for(let J of Y){let C=Array.isArray(A.headers[J])?A.headers[J]:[A.headers[J]];Q.push(J);for(let X of C.sort())Q.push(String(X))}}Q.push(A.body);let B=Q.join("|");return dv0(B)}class PjQ{#A;#Q;#B=new Map;#Y;#J=1/0;#C=!1;#W;constructor(A={}){if(this.#Y=A.snapshotPath,this.#J=A.maxSnapshots||1/0,this.#C=A.autoFlush||!1,this.flushInterval=A.flushInterval||30000,this._flushTimer=null,this.matchOptions={matchHeaders:A.matchHeaders||[],ignoreHeaders:A.ignoreHeaders||[],excludeHeaders:A.excludeHeaders||[],matchBody:A.matchBody!==!1,matchQuery:A.matchQuery!==!1,caseSensitive:A.caseSensitive||!1},this.#W=wjQ(this.matchOptions),this.shouldRecord=A.shouldRecord||(()=>!0),this.shouldPlayback=A.shouldPlayback||(()=>!0),this.#Q=cv0(A.excludeUrls),this.#C&&this.#Y)this.#X()}async record(A,Q){if(!this.shouldRecord(A))return;let B=new URL(A.path,A.origin).toString();if(this.#Q(B))return;let Y=pq(A,this.#W,this.matchOptions),J=iq(Y),C=RjQ(Q.headers),X={statusCode:Q.statusCode,headers:OjQ(C,this.#W,this.matchOptions),body:Buffer.isBuffer(Q.body)?Q.body.toString("base64"):Buffer.from(String(Q.body||"")).toString("base64"),trailers:Q.trailers};if(this.#B.size>=this.#J&&!this.#B.has(J)){let W=this.#B.keys().next().value;this.#B.delete(W)}let G=this.#B.get(J);if(G&&G.responses)G.responses.push(X),G.timestamp=new Date().toISOString();else this.#B.set(J,{request:Y,responses:[X],callCount:0,timestamp:new Date().toISOString()});if(this.#C&&this.#Y)this.#Z()}findSnapshot(A){if(!this.shouldPlayback(A))return;let Q=new URL(A.path,A.origin).toString();if(this.#Q(Q))return;let B=pq(A,this.#W,this.matchOptions),Y=iq(B),J=this.#B.get(Y);if(!J)return;let C=J.callCount||0,X=Math.min(C,J.responses.length-1);return J.callCount=C+1,{...J,response:J.responses[X]}}async loadSnapshots(A){let Q=A||this.#Y;if(!Q)throw new zjQ("Snapshot path is required");try{let B=await xv0(qjQ(Q),"utf8"),Y=JSON.parse(B);if(Array.isArray(Y)){this.#B.clear();for(let{hash:J,snapshot:C}of Y)this.#B.set(J,C)}else this.#B=new Map(Object.entries(Y))}catch(B){if(B.code==="ENOENT")this.#B.clear();else throw new uv0(`Failed to load snapshots from ${Q}`,{cause:B})}}async saveSnapshots(A){let Q=A||this.#Y;if(!Q)throw new zjQ("Snapshot path is required");let B=qjQ(Q);await fv0(bv0(B),{recursive:!0});let Y=Array.from(this.#B.entries()).map(([J,C])=>({hash:J,snapshot:C}));await hv0(B,JSON.stringify(Y,null,2),{flush:!0})}clear(){this.#B.clear()}getSnapshots(){return Array.from(this.#B.values())}size(){return this.#B.size}resetCallCounts(){for(let A of this.#B.values())A.callCount=0}deleteSnapshot(A){let Q=pq(A,this.#W,this.matchOptions),B=iq(Q);return this.#B.delete(B)}getSnapshotInfo(A){let Q=pq(A,this.#W,this.matchOptions),B=iq(Q),Y=this.#B.get(B);if(!Y)return null;return{hash:B,request:Y.request,responseCount:Y.responses?Y.responses.length:Y.response?1:0,callCount:Y.callCount||0,timestamp:Y.timestamp}}replaceSnapshots(A){if(this.#B.clear(),Array.isArray(A))for(let{hash:Q,snapshot:B}of A)this.#B.set(Q,B);else if(A&&typeof A==="object")this.#B=new Map(Object.entries(A))}#X(){return this.#Z()}#G(){if(this.#A)MjQ(this.#A),this.saveSnapshots().catch(()=>{}),this.#A=null}#Z(){this.#A=mv0(()=>{if(this.saveSnapshots().catch(()=>{}),this.#C)this.#A?.refresh();else this.#A=null},1000)}destroy(){if(this.#G(),this.#A)MjQ(this.#A),this.#A=null}async close(){if(this.#Y&&this.#B.size!==0)await this.saveSnapshots();this.destroy()}}TjQ.exports={SnapshotRecorder:PjQ,formatRequestKey:pq,createRequestHash:iq,filterHeadersForMatching:jjQ,filterHeadersForStorage:OjQ,createHeaderFilters:wjQ}});var yjQ=R((RrY,vjQ)=>{var lv0=t$(),pv0=aa(),{SnapshotRecorder:iv0}=SjQ(),nv0=Zq(),{InvalidArgumentError:sv0,UndiciError:rv0}=QB(),{validateSnapshotMode:av0}=ta(),i8=Symbol("kSnapshotRecorder"),fG=Symbol("kSnapshotMode"),nq=Symbol("kSnapshotPath"),ea=Symbol("kSnapshotLoaded"),Ao=Symbol("kRealAgent"),kjQ=!1;class _jQ extends pv0{constructor(A={}){if(!kjQ)process.emitWarning("SnapshotAgent is experimental and subject to change","ExperimentalWarning"),kjQ=!0;let{mode:Q="record",snapshotPath:B=null,...Y}=A;super(Y);if(av0(Q),(Q==="playback"||Q==="update")&&!B)throw new sv0(`snapshotPath is required when mode is '${Q}'`);if(this[fG]=Q,this[nq]=B,this[i8]=new iv0({snapshotPath:this[nq],mode:this[fG],maxSnapshots:A.maxSnapshots,autoFlush:A.autoFlush,flushInterval:A.flushInterval,matchHeaders:A.matchHeaders,ignoreHeaders:A.ignoreHeaders,excludeHeaders:A.excludeHeaders,matchBody:A.matchBody,matchQuery:A.matchQuery,caseSensitive:A.caseSensitive,shouldRecord:A.shouldRecord,shouldPlayback:A.shouldPlayback,excludeUrls:A.excludeUrls}),this[ea]=!1,this[fG]==="record"||this[fG]==="update")this[Ao]=new lv0(A);if((this[fG]==="playback"||this[fG]==="update")&&this[nq])this.loadSnapshots().catch(()=>{})}dispatch(A,Q){Q=nv0.wrap(Q);let B=this[fG];if(B==="playback"||B==="update"){if(!this[ea])return this.#A(A,Q);let Y=this[i8].findSnapshot(A);if(Y)return this.#B(Y,Q);else if(B==="update")return this.#Q(A,Q);else{let J=new rv0(`No snapshot found for ${A.method||"GET"} ${A.path}`);if(Q.onError){Q.onError(J);return}throw J}}else if(B==="record")return this.#Q(A,Q)}async#A(A,Q){return await this.loadSnapshots(),this.dispatch(A,Q)}#Q(A,Q){let B={statusCode:null,headers:{},trailers:{},body:[]},Y=this,J={onRequestStart(X,G){return Q.onRequestStart(X,{...G,history:this.history})},onRequestUpgrade(X,G,W,F){return Q.onRequestUpgrade(X,G,W,F)},onResponseStart(X,G,W,F){return B.statusCode=G,B.headers=W,Q.onResponseStart(X,G,W,F)},onResponseData(X,G){return B.body.push(G),Q.onResponseData(X,G)},onResponseEnd(X,G){B.trailers=G;let W=Buffer.concat(B.body);Y[i8].record(A,{statusCode:B.statusCode,headers:B.headers,body:W,trailers:B.trailers}).then(()=>{Q.onResponseEnd(X,G)}).catch((F)=>{Q.onResponseError(X,F)})}};return this[Ao].dispatch(A,J)}#B(A,Q){try{let{response:B}=A,Y={pause(){},resume(){},abort(C){this.aborted=!0,this.reason=C},aborted:!1,paused:!1};Q.onRequestStart(Y),Q.onResponseStart(Y,B.statusCode,B.headers);let J=Buffer.from(B.body,"base64");Q.onResponseData(Y,J),Q.onResponseEnd(Y,B.trailers)}catch(B){Q.onError?.(B)}}async loadSnapshots(A){if(await this[i8].loadSnapshots(A||this[nq]),this[ea]=!0,this[fG]==="playback")this.#Y()}async saveSnapshots(A){return this[i8].saveSnapshots(A||this[nq])}#Y(){for(let A of this[i8].getSnapshots()){let{request:Q,responses:B,response:Y}=A,J=new URL(Q.url),C=this.get(J.origin),X=B?B[0]:Y;if(!X)continue;C.intercept({path:J.pathname+J.search,method:Q.method,headers:Q.headers,body:Q.body}).reply(X.statusCode,X.body,{headers:X.headers,trailers:X.trailers}).persist()}}getRecorder(){return this[i8]}getMode(){return this[fG]}clearSnapshots(){this[i8].clear()}resetCallCounts(){this[i8].resetCallCounts()}deleteSnapshot(A){return this[i8].deleteSnapshot(A)}getSnapshotInfo(A){return this[i8].getSnapshotInfo(A)}replaceSnapshots(A){this[i8].replaceSnapshots(A)}async close(){await this[i8].close(),await this[Ao]?.close(),await super.close()}}vjQ.exports=_jQ});var Ak=R((wrY,fjQ)=>{var gjQ=Symbol.for("undici.globalDispatcher.1"),{InvalidArgumentError:ov0}=QB(),tv0=t$();if(xjQ()===void 0)hjQ(new tv0);function hjQ(A){if(!A||typeof A.dispatch!=="function")throw new ov0("Argument agent must implement Agent");Object.defineProperty(globalThis,gjQ,{value:A,writable:!0,enumerable:!1,configurable:!1})}function xjQ(){return globalThis[gjQ]}var ev0=["fetch","Headers","Response","Request","FormData","WebSocket","CloseEvent","ErrorEvent","MessageEvent","EventSource"];fjQ.exports={setGlobalDispatcher:hjQ,getGlobalDispatcher:xjQ,installedExports:ev0}});var KV=R((jrY,bjQ)=>{var bG=u("node:assert"),Ay0=Zq();bjQ.exports=class{#A;#Q=!1;#B=!1;#Y=!1;constructor(Q){if(typeof Q!=="object"||Q===null)throw TypeError("handler must be an object");this.#A=Ay0.wrap(Q)}onRequestStart(...Q){this.#A.onRequestStart?.(...Q)}onRequestUpgrade(...Q){return bG(!this.#Q),bG(!this.#B),this.#A.onRequestUpgrade?.(...Q)}onResponseStart(...Q){return bG(!this.#Q),bG(!this.#B),bG(!this.#Y),this.#Y=!0,this.#A.onResponseStart?.(...Q)}onResponseData(...Q){return bG(!this.#Q),bG(!this.#B),this.#A.onResponseData?.(...Q)}onResponseEnd(...Q){return bG(!this.#Q),bG(!this.#B),this.#Q=!0,this.#A.onResponseEnd?.(...Q)}onResponseError(...Q){return this.#B=!0,this.#A.onResponseError?.(...Q)}onBodySent(){}}});var Co=R((OrY,cjQ)=>{var n8=lQ(),{kBodyUsed:sq}=B0(),Yo=u("node:assert"),{InvalidArgumentError:Qo}=QB(),Qy0=u("node:events"),By0=[300,301,302,303,307,308],mjQ=Symbol("body"),ujQ=()=>{};class Bo{constructor(A){this[mjQ]=A,this[sq]=!1}async*[Symbol.asyncIterator](){Yo(!this[sq],"disturbed"),this[sq]=!0,yield*this[mjQ]}}class Jo{static buildDispatch(A,Q){if(Q!=null&&(!Number.isInteger(Q)||Q<0))throw new Qo("maxRedirections must be a positive number");let B=A.dispatch.bind(A);return(Y,J)=>B(Y,new Jo(B,Q,Y,J))}constructor(A,Q,B,Y){if(Q!=null&&(!Number.isInteger(Q)||Q<0))throw new Qo("maxRedirections must be a positive number");this.dispatch=A,this.location=null;let{maxRedirections:J,...C}=B;if(this.opts=C,this.maxRedirections=Q,this.handler=Y,this.history=[],n8.isStream(this.opts.body)){if(n8.bodyLength(this.opts.body)===0)this.opts.body.on("data",function(){Yo(!1)});if(typeof this.opts.body.readableDidRead!=="boolean")this.opts.body[sq]=!1,Qy0.prototype.on.call(this.opts.body,"data",function(){this[sq]=!0})}else if(this.opts.body&&typeof this.opts.body.pipeTo==="function")this.opts.body=new Bo(this.opts.body);else if(this.opts.body&&typeof this.opts.body!=="string"&&!ArrayBuffer.isView(this.opts.body)&&n8.isIterable(this.opts.body)&&!n8.isFormDataLike(this.opts.body))this.opts.body=new Bo(this.opts.body)}onRequestStart(A,Q){this.handler.onRequestStart?.(A,{...Q,history:this.history})}onRequestUpgrade(A,Q,B,Y){this.handler.onRequestUpgrade?.(A,Q,B,Y)}onResponseStart(A,Q,B,Y){if(this.opts.throwOnMaxRedirect&&this.history.length>=this.maxRedirections)throw Error("max redirects");if((Q===301||Q===302)&&this.opts.method==="POST"){if(this.opts.method="GET",n8.isStream(this.opts.body))n8.destroy(this.opts.body.on("error",ujQ));this.opts.body=null}if(Q===303&&this.opts.method!=="HEAD"){if(this.opts.method="GET",n8.isStream(this.opts.body))n8.destroy(this.opts.body.on("error",ujQ));this.opts.body=null}if(this.location=this.history.length>=this.maxRedirections||n8.isDisturbed(this.opts.body)||By0.indexOf(Q)===-1?null:B.location,this.opts.origin)this.history.push(new URL(this.opts.path,this.opts.origin));if(!this.location){this.handler.onResponseStart?.(A,Q,B,Y);return}let{origin:J,pathname:C,search:X}=n8.parseURL(new URL(this.location,this.opts.origin&&new URL(this.opts.path,this.opts.origin))),G=X?`${C}${X}`:C,W=`${J}${G}`;for(let F of this.history)if(F.toString()===W)throw new Qo(`Redirect loop detected. Cannot redirect to ${J}. This typically happens when using a Client or Pool with cross-origin redirects. Use an Agent for cross-origin redirects.`);this.opts.headers=Yy0(this.opts.headers,Q===303,this.opts.origin!==J),this.opts.path=G,this.opts.origin=J,this.opts.query=null}onResponseData(A,Q){if(this.location);else this.handler.onResponseData?.(A,Q)}onResponseEnd(A,Q){if(this.location)this.dispatch(this.opts,this);else this.handler.onResponseEnd(A,Q)}onResponseError(A,Q){this.handler.onResponseError?.(A,Q)}}function djQ(A,Q,B){if(A.length===4)return n8.headerNameToString(A)==="host";if(Q&&n8.headerNameToString(A).startsWith("content-"))return!0;if(B&&(A.length===13||A.length===6||A.length===19)){let Y=n8.headerNameToString(A);return Y==="authorization"||Y==="cookie"||Y==="proxy-authorization"}return!1}function Yy0(A,Q,B){let Y=[];if(Array.isArray(A)){for(let J=0;J{var Jy0=Co();function Cy0({maxRedirections:A}={}){return(Q)=>{return function(Y,J){let{maxRedirections:C=A,...X}=Y;if(C==null||C===0)return Q(Y,J);let G={...X},W=new Jy0(Q,C,G,J);return Q(G,W)}}}ljQ.exports=Cy0});var sjQ=R((TrY,njQ)=>{var Xy0=KV(),{ResponseError:Gy0}=QB();class ijQ extends Xy0{#A;#Q;#B;#Y;#J;constructor(A,{handler:Q}){super(Q)}#C(A){return(this.#Q??"").indexOf(A)===0}onRequestStart(A,Q){return this.#A=0,this.#Q=null,this.#B=null,this.#Y=null,this.#J="",super.onRequestStart(A,Q)}onResponseStart(A,Q,B,Y){if(this.#A=Q,this.#Y=B,this.#Q=B["content-type"],this.#A<400)return super.onResponseStart(A,Q,B,Y);if(this.#C("application/json")||this.#C("text/plain"))this.#B=new TextDecoder("utf-8")}onResponseData(A,Q){if(this.#A<400)return super.onResponseData(A,Q);this.#J+=this.#B?.decode(Q,{stream:!0})??""}onResponseEnd(A,Q){if(this.#A>=400){if(this.#J+=this.#B?.decode(void 0,{stream:!1})??"",this.#C("application/json"))try{this.#J=JSON.parse(this.#J)}catch{}let B,Y=Error.stackTraceLimit;Error.stackTraceLimit=0;try{B=new Gy0("Response Error",this.#A,{body:this.#J,headers:this.#Y})}finally{Error.stackTraceLimit=Y}super.onResponseError(A,B)}else super.onResponseEnd(A,Q)}onResponseError(A,Q){super.onResponseError(A,Q)}}njQ.exports=()=>{return(A)=>{return function(B,Y){return A(B,new ijQ(B,{handler:Y}))}}}});var ajQ=R((SrY,rjQ)=>{var Wy0=uS();rjQ.exports=(A)=>{return(Q)=>{return function(Y,J){return Q(Y,new Wy0({...Y,retryOptions:{...A,...Y.retryOptions}},{handler:J,dispatch:Q}))}}}});var ejQ=R((krY,tjQ)=>{var{InvalidArgumentError:Fy0,RequestAbortedError:Zy0}=QB(),$y0=KV();class ojQ extends $y0{#A=1048576;#Q=!1;#B=0;#Y=null;aborted=!1;reason=!1;constructor({maxSize:A,signal:Q},B){if(A!=null&&(!Number.isFinite(A)||A<1))throw new Fy0("maxSize must be a number greater than 0");super(B);this.#A=A??this.#A}#J(A){this.aborted=!0,this.reason=A}onRequestStart(A,Q){return A.abort=this.#J.bind(this),this.#Y=A,super.onRequestStart(A,Q)}onResponseStart(A,Q,B,Y){let J=B["content-length"];if(J!=null&&J>this.#A)throw new Zy0(`Response size (${J}) larger than maxSize (${this.#A})`);if(this.aborted===!0)return!0;return super.onResponseStart(A,Q,B,Y)}onResponseError(A,Q){if(this.#Q)return;Q=this.#Y?.reason??Q,super.onResponseError(A,Q)}onResponseData(A,Q){if(this.#B=this.#B+Q.length,this.#B>=this.#A)if(this.#Q=!0,this.aborted===!0)super.onResponseError(A,this.reason);else super.onResponseEnd(A,{});return!0}onResponseEnd(A,Q){if(this.#Q)return;if(this.#Y.aborted===!0){super.onResponseError(A,this.reason);return}super.onResponseEnd(A,Q)}}function Uy0({maxSize:A}={maxSize:1048576}){return(Q)=>{return function(Y,J){let{dumpMaxSize:C=A}=Y,X=new ojQ({maxSize:C,signal:Y.signal},J);return Q(Y,X)}}}tjQ.exports=Uy0});var YOQ=R((_rY,BOQ)=>{var{isIP:Ey0}=u("node:net"),{lookup:Ky0}=u("node:dns"),Vy0=KV(),{InvalidArgumentError:VV,InformationalError:Iy0}=QB(),Xo=Math.pow(2,31)-1;class AOQ{#A=0;#Q=0;#B=new Map;dualStack=!0;affinity=null;lookup=null;pick=null;constructor(A){this.#A=A.maxTTL,this.#Q=A.maxItems,this.dualStack=A.dualStack,this.affinity=A.affinity,this.lookup=A.lookup??this.#Y,this.pick=A.pick??this.#J}get full(){return this.#B.size===this.#Q}runLookup(A,Q,B){let Y=this.#B.get(A.hostname);if(Y==null&&this.full){B(null,A);return}let J={affinity:this.affinity,dualStack:this.dualStack,lookup:this.lookup,pick:this.pick,...Q.dns,maxTTL:this.#A,maxItems:this.#Q};if(Y==null)this.lookup(A,J,(C,X)=>{if(C||X==null||X.length===0){B(C??new Iy0("No DNS entries found"));return}this.setRecords(A,X);let G=this.#B.get(A.hostname),W=this.pick(A,G,J.affinity),F;if(typeof W.port==="number")F=`:${W.port}`;else if(A.port!=="")F=`:${A.port}`;else F="";B(null,new URL(`${A.protocol}//${W.family===6?`[${W.address}]`:W.address}${F}`))});else{let C=this.pick(A,Y,J.affinity);if(C==null){this.#B.delete(A.hostname),this.runLookup(A,Q,B);return}let X;if(typeof C.port==="number")X=`:${C.port}`;else if(A.port!=="")X=`:${A.port}`;else X="";B(null,new URL(`${A.protocol}//${C.family===6?`[${C.address}]`:C.address}${X}`))}}#Y(A,Q,B){Ky0(A.hostname,{all:!0,family:this.dualStack===!1?this.affinity:0,order:"ipv4first"},(Y,J)=>{if(Y)return B(Y);let C=new Map;for(let X of J)C.set(`${X.address}:${X.family}`,X);B(null,C.values())})}#J(A,Q,B){let Y=null,{records:J,offset:C}=Q,X;if(this.dualStack){if(B==null)if(C==null||C===Xo)Q.offset=0,B=4;else Q.offset++,B=(Q.offset&1)===1?6:4;if(J[B]!=null&&J[B].ips.length>0)X=J[B];else X=J[B===4?6:4]}else X=J[B];if(X==null||X.ips.length===0)return Y;if(X.offset==null||X.offset===Xo)X.offset=0;else X.offset++;let G=X.offset%X.ips.length;if(Y=X.ips[G]??null,Y==null)return Y;if(Date.now()-Y.timestamp>Y.ttl)return X.ips.splice(G,1),this.pick(A,Q,B);return Y}pickFamily(A,Q){let B=this.#B.get(A.hostname)?.records;if(!B)return null;let Y=B[Q];if(!Y)return null;if(Y.offset==null||Y.offset===Xo)Y.offset=0;else Y.offset++;let J=Y.offset%Y.ips.length,C=Y.ips[J]??null;if(C==null)return C;if(Date.now()-C.timestamp>C.ttl)Y.ips.splice(J,1);return C}setRecords(A,Q){let B=Date.now(),Y={records:{4:null,6:null}};for(let J of Q){if(J.timestamp=B,typeof J.ttl==="number")J.ttl=Math.min(J.ttl,this.#A);else J.ttl=this.#A;let C=Y.records[J.family]??{ips:[]};C.ips.push(J),Y.records[J.family]=C}this.#B.set(A.hostname,Y)}deleteRecords(A){this.#B.delete(A.hostname)}getHandler(A,Q){return new QOQ(this,A,Q)}}class QOQ extends Vy0{#A=null;#Q=null;#B=null;#Y=null;#J=null;#C=null;#W=!0;constructor(A,{origin:Q,handler:B,dispatch:Y,newOrigin:J},C){super(B);this.#Y=Q,this.#C=J,this.#Q={...C},this.#A=A,this.#B=Y}onResponseError(A,Q){switch(Q.code){case"ETIMEDOUT":case"ECONNREFUSED":{if(this.#A.dualStack){if(!this.#W){super.onResponseError(A,Q);return}this.#W=!1;let B=this.#C.hostname[0]==="["?4:6,Y=this.#A.pickFamily(this.#Y,B);if(Y==null){super.onResponseError(A,Q);return}let J;if(typeof Y.port==="number")J=`:${Y.port}`;else if(this.#Y.port!=="")J=`:${this.#Y.port}`;else J="";let C={...this.#Q,origin:`${this.#Y.protocol}//${Y.family===6?`[${Y.address}]`:Y.address}${J}`};this.#B(C,this);return}super.onResponseError(A,Q);break}case"ENOTFOUND":this.#A.deleteRecords(this.#Y),super.onResponseError(A,Q);break;default:super.onResponseError(A,Q);break}}}BOQ.exports=(A)=>{if(A?.maxTTL!=null&&(typeof A?.maxTTL!=="number"||A?.maxTTL<0))throw new VV("Invalid maxTTL. Must be a positive number");if(A?.maxItems!=null&&(typeof A?.maxItems!=="number"||A?.maxItems<1))throw new VV("Invalid maxItems. Must be a positive number and greater than zero");if(A?.affinity!=null&&A?.affinity!==4&&A?.affinity!==6)throw new VV("Invalid affinity. Must be either 4 or 6");if(A?.dualStack!=null&&typeof A?.dualStack!=="boolean")throw new VV("Invalid dualStack. Must be a boolean");if(A?.lookup!=null&&typeof A?.lookup!=="function")throw new VV("Invalid lookup. Must be a function");if(A?.pick!=null&&typeof A?.pick!=="function")throw new VV("Invalid pick. Must be a function");let Q=A?.dualStack??!0,B;if(Q)B=A?.affinity??null;else B=A?.affinity??4;let Y={maxTTL:A?.maxTTL??1e4,lookup:A?.lookup??null,pick:A?.pick??null,dualStack:Q,affinity:B,maxItems:A?.maxItems??1/0},J=new AOQ(Y);return(C)=>{return function(G,W){let F=G.origin.constructor===URL?G.origin:new URL(G.origin);if(Ey0(F.hostname)!==0)return C(G,W);return J.runLookup(F,G,(Z,U)=>{if(Z)return W.onResponseError(null,Z);let $={...G,servername:F.hostname,origin:U.origin,headers:{host:F.host,...G.headers}};C($,J.getHandler({origin:F,dispatch:C,handler:W,newOrigin:U},G))}),!0}}}});var rq=R((vrY,COQ)=>{var{safeHTTPMethods:JOQ,pathHasQueryOrFragment:Hy0}=lQ(),{serializePathWithQuery:Dy0}=lQ();function Ny0(A){if(!A.origin)throw Error("opts.origin is undefined");let Q=A.path||"/";if(A.query&&!Hy0(A.path))Q=Dy0(Q,A.query);return{origin:A.origin.toString(),method:A.method,path:Q,headers:A.headers}}function Ly0(A){let Q;if(A.headers==null)Q={};else if(typeof A.headers[Symbol.iterator]==="function"){Q={};for(let B of A.headers){if(!Array.isArray(B))throw Error("opts.headers is not a valid header map");let[Y,J]=B;if(typeof Y!=="string"||typeof J!=="string")throw Error("opts.headers is not a valid header map");Q[Y.toLowerCase()]=J}}else if(typeof A.headers==="object"){Q={};for(let B of Object.keys(A.headers))Q[B.toLowerCase()]=A.headers[B]}else throw Error("opts.headers is not an object");return Q}function qy0(A){if(typeof A!=="object")throw TypeError(`expected key to be object, got ${typeof A}`);for(let Q of["origin","method","path"])if(typeof A[Q]!=="string")throw TypeError(`expected key.${Q} to be string, got ${typeof A[Q]}`);if(A.headers!==void 0&&typeof A.headers!=="object")throw TypeError(`expected headers to be object, got ${typeof A}`)}function My0(A){if(typeof A!=="object")throw TypeError(`expected value to be object, got ${typeof A}`);for(let Q of["statusCode","cachedAt","staleAt","deleteAt"])if(typeof A[Q]!=="number")throw TypeError(`expected value.${Q} to be number, got ${typeof A[Q]}`);if(typeof A.statusMessage!=="string")throw TypeError(`expected value.statusMessage to be string, got ${typeof A.statusMessage}`);if(A.headers!=null&&typeof A.headers!=="object")throw TypeError(`expected value.rawHeaders to be object, got ${typeof A.headers}`);if(A.vary!==void 0&&typeof A.vary!=="object")throw TypeError(`expected value.vary to be object, got ${typeof A.vary}`);if(A.etag!==void 0&&typeof A.etag!=="string")throw TypeError(`expected value.etag to be string, got ${typeof A.etag}`)}function zy0(A){let Q={},B;if(Array.isArray(A)){B=[];for(let Y of A)B.push(...Y.split(","))}else B=A.split(",");for(let Y=0;Y=2&&G[0]==='"'&&G[G.length-1]==='"')G=G.substring(1,G.length-1);let W=parseInt(G,10);if(W!==W)continue;if(X==="max-age"&&X in Q&&Q[X]>=W)continue;Q[X]=W;break}case"private":case"no-cache":if(G){if(G[0]==='"'){let W=[G.substring(1)],F=G[G.length-1]==='"';if(!F)for(let Z=Y+1;Z{function Py0(A){switch(A[3]){case",":return Ty0(A);case" ":return Sy0(A);default:return ky0(A)}}function Ty0(A){if(A.length!==29||A[4]!==" "||A[7]!==" "||A[11]!==" "||A[16]!==" "||A[19]!==":"||A[22]!==":"||A[25]!==" "||A[26]!=="G"||A[27]!=="M"||A[28]!=="T")return;let Q=-1;if(A[0]==="S"&&A[1]==="u"&&A[2]==="n")Q=0;else if(A[0]==="M"&&A[1]==="o"&&A[2]==="n")Q=1;else if(A[0]==="T"&&A[1]==="u"&&A[2]==="e")Q=2;else if(A[0]==="W"&&A[1]==="e"&&A[2]==="d")Q=3;else if(A[0]==="T"&&A[1]==="h"&&A[2]==="u")Q=4;else if(A[0]==="F"&&A[1]==="r"&&A[2]==="i")Q=5;else if(A[0]==="S"&&A[1]==="a"&&A[2]==="t")Q=6;else return;let B=0;if(A[5]==="0"){let E=A.charCodeAt(6);if(E<49||E>57)return;B=E-48}else{let E=A.charCodeAt(5);if(E<49||E>51)return;let K=A.charCodeAt(6);if(K<48||K>57)return;B=(E-48)*10+(K-48)}let Y=-1;if(A[8]==="J"&&A[9]==="a"&&A[10]==="n")Y=0;else if(A[8]==="F"&&A[9]==="e"&&A[10]==="b")Y=1;else if(A[8]==="M"&&A[9]==="a")if(A[10]==="r")Y=2;else if(A[10]==="y")Y=4;else return;else if(A[8]==="J")if(A[9]==="a"&&A[10]==="n")Y=0;else if(A[9]==="u")if(A[10]==="n")Y=5;else if(A[10]==="l")Y=6;else return;else return;else if(A[8]==="A")if(A[9]==="p"&&A[10]==="r")Y=3;else if(A[9]==="u"&&A[10]==="g")Y=7;else return;else if(A[8]==="S"&&A[9]==="e"&&A[10]==="p")Y=8;else if(A[8]==="O"&&A[9]==="c"&&A[10]==="t")Y=9;else if(A[8]==="N"&&A[9]==="o"&&A[10]==="v")Y=10;else if(A[8]==="D"&&A[9]==="e"&&A[10]==="c")Y=11;else return;let J=A.charCodeAt(12);if(J<48||J>57)return;let C=A.charCodeAt(13);if(C<48||C>57)return;let X=A.charCodeAt(14);if(X<48||X>57)return;let G=A.charCodeAt(15);if(G<48||G>57)return;let W=(J-48)*1000+(C-48)*100+(X-48)*10+(G-48),F=0;if(A[17]==="0"){let E=A.charCodeAt(18);if(E<48||E>57)return;F=E-48}else{let E=A.charCodeAt(17);if(E<48||E>50)return;let K=A.charCodeAt(18);if(K<48||K>57)return;if(E===50&&K>51)return;F=(E-48)*10+(K-48)}let Z=0;if(A[20]==="0"){let E=A.charCodeAt(21);if(E<48||E>57)return;Z=E-48}else{let E=A.charCodeAt(20);if(E<48||E>53)return;let K=A.charCodeAt(21);if(K<48||K>57)return;Z=(E-48)*10+(K-48)}let U=0;if(A[23]==="0"){let E=A.charCodeAt(24);if(E<48||E>57)return;U=E-48}else{let E=A.charCodeAt(23);if(E<48||E>53)return;let K=A.charCodeAt(24);if(K<48||K>57)return;U=(E-48)*10+(K-48)}let $=new Date(Date.UTC(W,Y,B,F,Z,U));return $.getUTCDay()===Q?$:void 0}function Sy0(A){if(A.length!==24||A[7]!==" "||A[10]!==" "||A[19]!==" ")return;let Q=-1;if(A[0]==="S"&&A[1]==="u"&&A[2]==="n")Q=0;else if(A[0]==="M"&&A[1]==="o"&&A[2]==="n")Q=1;else if(A[0]==="T"&&A[1]==="u"&&A[2]==="e")Q=2;else if(A[0]==="W"&&A[1]==="e"&&A[2]==="d")Q=3;else if(A[0]==="T"&&A[1]==="h"&&A[2]==="u")Q=4;else if(A[0]==="F"&&A[1]==="r"&&A[2]==="i")Q=5;else if(A[0]==="S"&&A[1]==="a"&&A[2]==="t")Q=6;else return;let B=-1;if(A[4]==="J"&&A[5]==="a"&&A[6]==="n")B=0;else if(A[4]==="F"&&A[5]==="e"&&A[6]==="b")B=1;else if(A[4]==="M"&&A[5]==="a")if(A[6]==="r")B=2;else if(A[6]==="y")B=4;else return;else if(A[4]==="J")if(A[5]==="a"&&A[6]==="n")B=0;else if(A[5]==="u")if(A[6]==="n")B=5;else if(A[6]==="l")B=6;else return;else return;else if(A[4]==="A")if(A[5]==="p"&&A[6]==="r")B=3;else if(A[5]==="u"&&A[6]==="g")B=7;else return;else if(A[4]==="S"&&A[5]==="e"&&A[6]==="p")B=8;else if(A[4]==="O"&&A[5]==="c"&&A[6]==="t")B=9;else if(A[4]==="N"&&A[5]==="o"&&A[6]==="v")B=10;else if(A[4]==="D"&&A[5]==="e"&&A[6]==="c")B=11;else return;let Y=0;if(A[8]===" "){let E=A.charCodeAt(9);if(E<49||E>57)return;Y=E-48}else{let E=A.charCodeAt(8);if(E<49||E>51)return;let K=A.charCodeAt(9);if(K<48||K>57)return;Y=(E-48)*10+(K-48)}let J=0;if(A[11]==="0"){let E=A.charCodeAt(12);if(E<48||E>57)return;J=E-48}else{let E=A.charCodeAt(11);if(E<48||E>50)return;let K=A.charCodeAt(12);if(K<48||K>57)return;if(E===50&&K>51)return;J=(E-48)*10+(K-48)}let C=0;if(A[14]==="0"){let E=A.charCodeAt(15);if(E<48||E>57)return;C=E-48}else{let E=A.charCodeAt(14);if(E<48||E>53)return;let K=A.charCodeAt(15);if(K<48||K>57)return;C=(E-48)*10+(K-48)}let X=0;if(A[17]==="0"){let E=A.charCodeAt(18);if(E<48||E>57)return;X=E-48}else{let E=A.charCodeAt(17);if(E<48||E>53)return;let K=A.charCodeAt(18);if(K<48||K>57)return;X=(E-48)*10+(K-48)}let G=A.charCodeAt(20);if(G<48||G>57)return;let W=A.charCodeAt(21);if(W<48||W>57)return;let F=A.charCodeAt(22);if(F<48||F>57)return;let Z=A.charCodeAt(23);if(Z<48||Z>57)return;let U=(G-48)*1000+(W-48)*100+(F-48)*10+(Z-48),$=new Date(Date.UTC(U,B,Y,J,C,X));return $.getUTCDay()===Q?$:void 0}function ky0(A){let Q=-1,B=-1;if(A[0]==="S"){if(A[1]==="u"&&A[2]==="n"&&A[3]==="d"&&A[4]==="a"&&A[5]==="y")B=0,Q=6;else if(A[1]==="a"&&A[2]==="t"&&A[3]==="u"&&A[4]==="r"&&A[5]==="d"&&A[6]==="a"&&A[7]==="y")B=6,Q=8}else if(A[0]==="M"&&A[1]==="o"&&A[2]==="n"&&A[3]==="d"&&A[4]==="a"&&A[5]==="y")B=1,Q=6;else if(A[0]==="T"){if(A[1]==="u"&&A[2]==="e"&&A[3]==="s"&&A[4]==="d"&&A[5]==="a"&&A[6]==="y")B=2,Q=7;else if(A[1]==="h"&&A[2]==="u"&&A[3]==="r"&&A[4]==="s"&&A[5]==="d"&&A[6]==="a"&&A[7]==="y")B=4,Q=8}else if(A[0]==="W"&&A[1]==="e"&&A[2]==="d"&&A[3]==="n"&&A[4]==="e"&&A[5]==="s"&&A[6]==="d"&&A[7]==="a"&&A[8]==="y")B=3,Q=9;else if(A[0]==="F"&&A[1]==="r"&&A[2]==="i"&&A[3]==="d"&&A[4]==="a"&&A[5]==="y")B=5,Q=6;else return;if(A[Q]!==","||A.length-Q-1!==23||A[Q+1]!==" "||A[Q+4]!=="-"||A[Q+8]!=="-"||A[Q+11]!==" "||A[Q+14]!==":"||A[Q+17]!==":"||A[Q+20]!==" "||A[Q+21]!=="G"||A[Q+22]!=="M"||A[Q+23]!=="T")return;let Y=0;if(A[Q+2]==="0"){let $=A.charCodeAt(Q+3);if($<49||$>57)return;Y=$-48}else{let $=A.charCodeAt(Q+2);if($<49||$>51)return;let E=A.charCodeAt(Q+3);if(E<48||E>57)return;Y=($-48)*10+(E-48)}let J=-1;if(A[Q+5]==="J"&&A[Q+6]==="a"&&A[Q+7]==="n")J=0;else if(A[Q+5]==="F"&&A[Q+6]==="e"&&A[Q+7]==="b")J=1;else if(A[Q+5]==="M"&&A[Q+6]==="a"&&A[Q+7]==="r")J=2;else if(A[Q+5]==="A"&&A[Q+6]==="p"&&A[Q+7]==="r")J=3;else if(A[Q+5]==="M"&&A[Q+6]==="a"&&A[Q+7]==="y")J=4;else if(A[Q+5]==="J"&&A[Q+6]==="u"&&A[Q+7]==="n")J=5;else if(A[Q+5]==="J"&&A[Q+6]==="u"&&A[Q+7]==="l")J=6;else if(A[Q+5]==="A"&&A[Q+6]==="u"&&A[Q+7]==="g")J=7;else if(A[Q+5]==="S"&&A[Q+6]==="e"&&A[Q+7]==="p")J=8;else if(A[Q+5]==="O"&&A[Q+6]==="c"&&A[Q+7]==="t")J=9;else if(A[Q+5]==="N"&&A[Q+6]==="o"&&A[Q+7]==="v")J=10;else if(A[Q+5]==="D"&&A[Q+6]==="e"&&A[Q+7]==="c")J=11;else return;let C=A.charCodeAt(Q+9);if(C<48||C>57)return;let X=A.charCodeAt(Q+10);if(X<48||X>57)return;let G=(C-48)*10+(X-48);G+=G<70?2000:1900;let W=0;if(A[Q+12]==="0"){let $=A.charCodeAt(Q+13);if($<48||$>57)return;W=$-48}else{let $=A.charCodeAt(Q+12);if($<48||$>50)return;let E=A.charCodeAt(Q+13);if(E<48||E>57)return;if($===50&&E>51)return;W=($-48)*10+(E-48)}let F=0;if(A[Q+15]==="0"){let $=A.charCodeAt(Q+16);if($<48||$>57)return;F=$-48}else{let $=A.charCodeAt(Q+15);if($<48||$>53)return;let E=A.charCodeAt(Q+16);if(E<48||E>57)return;F=($-48)*10+(E-48)}let Z=0;if(A[Q+18]==="0"){let $=A.charCodeAt(Q+19);if($<48||$>57)return;Z=$-48}else{let $=A.charCodeAt(Q+18);if($<48||$>53)return;let E=A.charCodeAt(Q+19);if(E<48||E>57)return;Z=($-48)*10+(E-48)}let U=new Date(Date.UTC(G,J,Y,W,F,Z));return U.getUTCDay()===B?U:void 0}XOQ.exports={parseHttpDate:Py0}});var UOQ=R((grY,$OQ)=>{var _y0=lQ(),{parseCacheControlHeader:vy0,parseVaryHeader:yy0,isEtagUsable:gy0}=rq(),{parseHttpDate:WOQ}=GOQ();function hy0(){}var FOQ=[200,203,204,206,300,301,308,404,405,410,414,501],xy0=[206,304],fy0=2147483647000;class ZOQ{#A;#Q;#B;#Y;#J;#C;constructor({store:A,type:Q,cacheByDefault:B},Y,J){this.#Y=A,this.#Q=Q,this.#B=B,this.#A=Y,this.#J=J}onRequestStart(A,Q){this.#C?.destroy(),this.#C=void 0,this.#J.onRequestStart?.(A,Q)}onRequestUpgrade(A,Q,B,Y){this.#J.onRequestUpgrade?.(A,Q,B,Y)}onResponseStart(A,Q,B,Y){let J=()=>this.#J.onResponseStart?.(A,Q,B,Y);if(!_y0.safeHTTPMethods.includes(this.#A.method)&&Q>=200&&Q<=399){try{this.#Y.delete(this.#A)?.catch?.(hy0)}catch{}return J()}let C=B["cache-control"],X=B["last-modified"]&&FOQ.includes(Q);if(!C&&!B.expires&&!X&&!this.#B)return J();let G=C?vy0(C):{};if(!by0(this.#Q,Q,B,G))return J();let W=Date.now(),F=B.age?my0(B.age):void 0;if(F&&F>=fy0)return J();let Z=typeof B.date==="string"?WOQ(B.date):void 0,U=uy0(this.#Q,W,F,B,Z,G)??this.#B;if(U===void 0||F&&F>U)return J();let $=Z?Z.getTime():W,E=U+$;if(W>=E)return J();let K;if(this.#A.headers&&B.vary){if(K=yy0(B.vary,this.#A.headers),!K)return J()}let I=dy0($,G,E),V=cy0(B,G),H={statusCode:Q,statusMessage:Y,headers:V,vary:K,cacheControlDirectives:G,cachedAt:F?W-F:W,staleAt:E,deleteAt:I};if(typeof B.etag==="string"&&gy0(B.etag))H.etag=B.etag;if(this.#C=this.#Y.createWriteStream(this.#A,H),!this.#C)return J();let D=this;return this.#C.on("drain",()=>A.resume()).on("error",function(){D.#C=void 0,D.#Y.delete(D.#A)}).on("close",function(){if(D.#C===this)D.#C=void 0;A.resume()}),J()}onResponseData(A,Q){if(this.#C?.write(Q)===!1)A.pause();this.#J.onResponseData?.(A,Q)}onResponseEnd(A,Q){this.#C?.end(),this.#J.onResponseEnd?.(A,Q)}onResponseError(A,Q){this.#C?.destroy(Q),this.#C=void 0,this.#J.onResponseError?.(A,Q)}}function by0(A,Q,B,Y){if(Q<200||xy0.includes(Q))return!1;if(!FOQ.includes(Q)&&!B.expires&&!Y.public&&Y["max-age"]===void 0&&!(Y.private&&A==="private")&&!(Y["s-maxage"]!==void 0&&A==="shared"))return!1;if(Y["no-store"])return!1;if(A==="shared"&&Y.private===!0)return!1;if(B.vary?.includes("*"))return!1;if(B.authorization){if(!Y.public||typeof B.authorization!=="string")return!1;if(Array.isArray(Y["no-cache"])&&Y["no-cache"].includes("authorization"))return!1;if(Array.isArray(Y.private)&&Y.private.includes("authorization"))return!1}return!0}function my0(A){let Q=parseInt(Array.isArray(A)?A[0]:A);return isNaN(Q)?void 0:Q*1000}function uy0(A,Q,B,Y,J,C){if(A==="shared"){let G=C["s-maxage"];if(G!==void 0)return G>0?G*1000:void 0}let X=C["max-age"];if(X!==void 0)return X>0?X*1000:void 0;if(typeof Y.expires==="string"){let G=WOQ(Y.expires);if(G){if(Q>=G.getTime())return;if(J){if(J>=G)return;if(B!==void 0&&B>G-J)return}return G.getTime()-Q}}if(typeof Y["last-modified"]==="string"){let G=new Date(Y["last-modified"]);if(ly0(G)){if(G.getTime()>=Q)return;return(Q-G.getTime())*0.1}}if(C.immutable)return 31536000;return}function dy0(A,Q,B){let Y=-1/0,J=-1/0,C=-1/0;if(Q["stale-while-revalidate"])Y=B+Q["stale-while-revalidate"]*1000;if(Q["stale-if-error"])J=B+Q["stale-if-error"]*1000;if(Y===-1/0&&J===-1/0)C=A+31536000000;return Math.max(B,Y,J,C)}function cy0(A,Q){let B=["connection","proxy-authenticate","proxy-authentication-info","proxy-authorization","proxy-connection","te","transfer-encoding","upgrade","age"];if(A.connection)if(Array.isArray(A.connection))B.push(...A.connection.map((J)=>J.trim()));else B.push(...A.connection.split(",").map((J)=>J.trim()));if(Array.isArray(Q["no-cache"]))B.push(...Q["no-cache"]);if(Array.isArray(Q.private))B.push(...Q.private);let Y;for(let J of B)if(A[J])Y??={...A},delete Y[J];return Y??A}function ly0(A){return A instanceof Date&&Number.isFinite(A.valueOf())}$OQ.exports=ZOQ});var Go=R((hrY,IOQ)=>{var{Writable:py0}=u("node:stream"),{EventEmitter:iy0}=u("node:events"),{assertCacheKey:EOQ,assertCacheValue:ny0}=rq();class VOQ extends iy0{#A=1024;#Q=104857600;#B=5242880;#Y=0;#J=0;#C=new Map;#W=!1;constructor(A){super();if(A){if(typeof A!=="object")throw TypeError("MemoryCacheStore options must be an object");if(A.maxCount!==void 0){if(typeof A.maxCount!=="number"||!Number.isInteger(A.maxCount)||A.maxCount<0)throw TypeError("MemoryCacheStore options.maxCount must be a non-negative integer");this.#A=A.maxCount}if(A.maxSize!==void 0){if(typeof A.maxSize!=="number"||!Number.isInteger(A.maxSize)||A.maxSize<0)throw TypeError("MemoryCacheStore options.maxSize must be a non-negative integer");this.#Q=A.maxSize}if(A.maxEntrySize!==void 0){if(typeof A.maxEntrySize!=="number"||!Number.isInteger(A.maxEntrySize)||A.maxEntrySize<0)throw TypeError("MemoryCacheStore options.maxEntrySize must be a non-negative integer");this.#B=A.maxEntrySize}}}get size(){return this.#Y}isFull(){return this.#Y>=this.#Q||this.#J>=this.#A}get(A){EOQ(A);let Q=`${A.origin}:${A.path}`,B=Date.now(),Y=this.#C.get(Q),J=Y?KOQ(A,Y,B):null;return J==null?void 0:{statusMessage:J.statusMessage,statusCode:J.statusCode,headers:J.headers,body:J.body,vary:J.vary?J.vary:void 0,etag:J.etag,cacheControlDirectives:J.cacheControlDirectives,cachedAt:J.cachedAt,staleAt:J.staleAt,deleteAt:J.deleteAt}}createWriteStream(A,Q){EOQ(A),ny0(Q);let B=`${A.origin}:${A.path}`,Y=this,J={...A,...Q,body:[],size:0};return new py0({write(C,X,G){if(typeof C==="string")C=Buffer.from(C,X);if(J.size+=C.byteLength,J.size>=Y.#B)this.destroy();else J.body.push(C);G(null)},final(C){let X=Y.#C.get(B);if(!X)X=[],Y.#C.set(B,X);let G=KOQ(A,X,Date.now());if(G){let W=X.indexOf(G);X.splice(W,1,J),Y.#Y-=G.size}else X.push(J),Y.#J+=1;if(Y.#Y+=J.size,Y.#Y>Y.#Q||Y.#J>Y.#A){if(!Y.#W)Y.emit("maxSizeExceeded",{size:Y.#Y,maxSize:Y.#Q,count:Y.#J,maxCount:Y.#A}),Y.#W=!0;for(let[W,F]of Y.#C){for(let Z of F.splice(0,F.length/2))Y.#Y-=Z.size,Y.#J-=1;if(F.length===0)Y.#C.delete(W)}if(Y.#YY.deleteAt>B&&Y.method===A.method&&(Y.vary==null||Object.keys(Y.vary).every((J)=>{if(Y.vary[J]===null)return A.headers[J]===void 0;return Y.vary[J]===A.headers[J]})))}IOQ.exports=VOQ});var NOQ=R((xrY,DOQ)=>{var sy0=u("node:assert");class HOQ{#A=!1;#Q;#B;#Y;#J;constructor(A,Q,B){if(typeof A!=="function")throw TypeError("callback must be a function");this.#Q=A,this.#B=Q,this.#J=B}onRequestStart(A,Q){this.#A=!1,this.#Y=Q}onRequestUpgrade(A,Q,B,Y){this.#B.onRequestUpgrade?.(A,Q,B,Y)}onResponseStart(A,Q,B,Y){if(sy0(this.#Q!=null),this.#A=Q===304||this.#J&&Q>=500&&Q<=504,this.#Q(this.#A,this.#Y),this.#Q=null,this.#A)return!0;this.#B.onRequestStart?.(A,this.#Y),this.#B.onResponseStart?.(A,Q,B,Y)}onResponseData(A,Q){if(this.#A)return;return this.#B.onResponseData?.(A,Q)}onResponseEnd(A,Q){if(this.#A)return;this.#B.onResponseEnd?.(A,Q)}onResponseError(A,Q){if(this.#A)return;if(this.#Q)this.#Q(!1),this.#Q=null;if(typeof this.#B.onResponseError==="function")this.#B.onResponseError(A,Q);else throw Q}}DOQ.exports=HOQ});var zOQ=R((frY,MOQ)=>{var LOQ=u("node:assert"),{Readable:ry0}=u("node:stream"),IV=lQ(),aq=UOQ(),ay0=Go(),oy0=NOQ(),{assertCacheStore:ty0,assertCacheMethods:ey0,makeCacheKey:Ag0,normalizeHeaders:Qg0,parseCacheControlHeader:Bg0}=rq(),{AbortError:Yg0}=QB();function Jg0(A,Q){if(Q?.["no-cache"])return!0;if(A.cacheControlDirectives?.["no-cache"]&&!Array.isArray(A.cacheControlDirectives["no-cache"]))return!0;let B=Date.now();if(B>A.staleAt){if(Q?.["max-stale"]){let Y=A.staleAt+Q["max-stale"]*1000;return B>Y}return!0}if(Q?.["min-fresh"]){let Y=A.staleAt-B,J=Q["min-fresh"]*1000;return Y<=J}return!1}function Cg0(A){let Q=A.cacheControlDirectives?.["stale-while-revalidate"];if(!Q)return!1;let B=Date.now(),Y=A.staleAt+Q*1000;return B<=Y}function Xg0(A,Q,B,Y,J,C){if(C?.["only-if-cached"]){let X=!1;try{if(typeof Y.onConnect==="function"){if(Y.onConnect(()=>{X=!0}),X)return}if(typeof Y.onHeaders==="function"){if(Y.onHeaders(504,[],()=>{},"Gateway Timeout"),X)return}if(typeof Y.onComplete==="function")Y.onComplete([])}catch(G){if(typeof Y.onError==="function")Y.onError(G)}return!0}return A(J,new aq(Q,B,Y))}function Wo(A,Q,B,Y,J,C){let X=IV.isStream(B.body)?B.body:ry0.from(B.body??[]);LOQ(!X.destroyed,"stream should not be destroyed"),LOQ(!X.readableDidRead,"stream should not be readableDidRead");let G={resume(){X.resume()},pause(){X.pause()},get paused(){return X.isPaused()},get aborted(){return X.destroyed},get reason(){return X.errored},abort(F){X.destroy(F??new Yg0)}};if(X.on("error",function(F){if(!this.readableEnded)if(typeof A.onResponseError==="function")A.onResponseError(G,F);else throw F}).on("close",function(){if(!this.errored)A.onResponseEnd?.(G,{})}),A.onRequestStart?.(G,J),X.destroyed)return;let W={...B.headers,age:String(Y)};if(C)W.warning='110 - "response is stale"';if(A.onResponseStart?.(G,B.statusCode,W,B.statusMessage),Q.method==="HEAD")X.destroy();else X.on("data",function(F){A.onResponseData?.(G,F)})}function qOQ(A,Q,B,Y,J,C,X){if(!X)return Xg0(A,Q,B,Y,J,C);let G=Date.now();if(G>X.deleteAt)return A(J,new aq(Q,B,Y));let W=Math.round((G-X.cachedAt)/1000);if(C?.["max-age"]&&W>=C["max-age"])return A(J,Y);if(Jg0(X,C)){if(IV.isStream(J.body)&&IV.bodyLength(J.body)!==0)return A(J,new aq(Q,B,Y));if(Cg0(X))return Wo(Y,J,X,W,null,!0),queueMicrotask(()=>{let $={...J.headers,"if-modified-since":new Date(X.cachedAt).toUTCString()};if(X.etag)$["if-none-match"]=X.etag;if(X.vary)$={...$,...X.vary};A({...J,headers:$},new aq(Q,B,{onRequestStart(){},onRequestUpgrade(){},onResponseStart(){},onResponseData(){},onResponseEnd(){},onResponseError(){}}))}),!0;let F=!1,Z=X.cacheControlDirectives["stale-if-error"]??C?.["stale-if-error"];if(Z)F=G{if($)Wo(Y,J,X,W,E,!0);else if(IV.isStream(X.body))X.body.on("error",()=>{}).destroy()},new aq(Q,B,Y),F))}if(IV.isStream(J.body))J.body.on("error",()=>{}).destroy();Wo(Y,J,X,W,null,!1)}MOQ.exports=(A={})=>{let{store:Q=new ay0,methods:B=["GET"],cacheByDefault:Y=void 0,type:J="shared"}=A;if(typeof A!=="object"||A===null)throw TypeError(`expected type of opts to be an Object, got ${A===null?"null":typeof A}`);if(ty0(Q,"opts.store"),ey0(B,"opts.methods"),typeof Y<"u"&&typeof Y!=="number")throw TypeError(`expected opts.cacheByDefault to be number or undefined, got ${typeof Y}`);if(typeof J<"u"&&J!=="shared"&&J!=="private")throw TypeError(`expected opts.type to be shared, private, or undefined, got ${typeof J}`);let C={store:Q,methods:B,cacheByDefault:Y,type:J},X=IV.safeHTTPMethods.filter((G)=>B.includes(G)===!1);return(G)=>{return(W,F)=>{if(!W.origin||X.includes(W.method))return G(W,F);W={...W,headers:Qg0(W)};let Z=W.headers?.["cache-control"]?Bg0(W.headers["cache-control"]):void 0;if(Z?.["no-store"])return G(W,F);let U=Ag0(W),$=Q.get(U);if($&&typeof $.then==="function")$.then((E)=>{qOQ(G,C,U,F,W,Z,E)});else qOQ(G,C,U,F,W,Z,$);return!0}}}});var SOQ=R((brY,TOQ)=>{var{createInflate:Fo,createGunzip:ROQ,createBrotliDecompress:Gg0,createZstdDecompress:wOQ}=u("node:zlib"),{pipeline:Wg0}=u("node:stream"),Fg0=KV(),jOQ={gzip:ROQ,"x-gzip":ROQ,br:Gg0,deflate:Fo,compress:Fo,"x-compress":Fo,...wOQ?{zstd:wOQ}:{}},Zg0=[204,304],OOQ=!1;class POQ extends Fg0{#A=[];#Q;#B;#Y;constructor(A,{skipStatusCodes:Q=Zg0,skipErrorResponses:B=!0}={}){super(A);this.#B=Q,this.#Y=B}#J(A,Q){if(!A||Q<200)return!0;if(this.#B.includes(Q))return!0;if(this.#Y&&Q>=400)return!0;return!1}#C(A){let Q=A.split(","),B=[];for(let Y=Q.length-1;Y>=0;Y--){let J=Q[Y].trim();if(!J)continue;if(!jOQ[J])return B.length=0,B;B.push(jOQ[J]())}return B}#W(A,Q){A.on("readable",()=>{let B;while((B=A.read())!==null)if(super.onResponseData(Q,B)===!1)break}),A.on("error",(B)=>{super.onResponseError(Q,B)})}#X(A){let Q=this.#A[0];this.#W(Q,A),Q.on("end",()=>{super.onResponseEnd(A,{})})}#G(A){let Q=this.#A[this.#A.length-1];this.#W(Q,A),this.#Q=Wg0(this.#A,(B)=>{if(B){super.onResponseError(A,B);return}super.onResponseEnd(A,{})})}#Z(){this.#A.length=0,this.#Q=null}onResponseStart(A,Q,B,Y){let J=B["content-encoding"];if(this.#J(J,Q))return super.onResponseStart(A,Q,B,Y);let C=this.#C(J.toLowerCase());if(C.length===0)return this.#Z(),super.onResponseStart(A,Q,B,Y);this.#A=C;let{"content-encoding":X,"content-length":G,...W}=B;if(this.#A.length===1)this.#X(A);else this.#G(A);super.onResponseStart(A,Q,W,Y)}onResponseData(A,Q){if(this.#A.length>0){this.#A[0].write(Q);return}super.onResponseData(A,Q)}onResponseEnd(A,Q){if(this.#A.length>0){this.#A[0].end(),this.#Z();return}super.onResponseEnd(A,Q)}onResponseError(A,Q){if(this.#A.length>0){for(let B of this.#A)B.destroy(Q);this.#Z()}super.onResponseError(A,Q)}}function $g0(A={}){if(!OOQ)process.emitWarning("DecompressInterceptor is experimental and subject to change","ExperimentalWarning"),OOQ=!0;return(Q)=>{return(B,Y)=>{let J=new POQ(Y,A);return Q(B,J)}}}TOQ.exports=$g0});var _OQ=R((mrY,kOQ)=>{var{Writable:Ug0}=u("node:stream"),{assertCacheKey:Zo,assertCacheValue:Eg0}=rq(),$o;kOQ.exports=class{#A=2000000000;#Q=1/0;#B;#Y;#J;#C;#W;#X;#G;#Z;constructor(Q){if(Q){if(typeof Q!=="object")throw TypeError("SqliteCacheStore options must be an object");if(Q.maxEntrySize!==void 0){if(typeof Q.maxEntrySize!=="number"||!Number.isInteger(Q.maxEntrySize)||Q.maxEntrySize<0)throw TypeError("SqliteCacheStore options.maxEntrySize must be a non-negative integer");if(Q.maxEntrySize>2000000000)throw TypeError("SqliteCacheStore options.maxEntrySize must be less than 2gb");this.#A=Q.maxEntrySize}if(Q.maxCount!==void 0){if(typeof Q.maxCount!=="number"||!Number.isInteger(Q.maxCount)||Q.maxCount<0)throw TypeError("SqliteCacheStore options.maxCount must be a non-negative integer");this.#Q=Q.maxCount}}if(!$o)$o=u("node:sqlite").DatabaseSync;this.#B=new $o(Q?.location??":memory:"),this.#B.exec(` PRAGMA journal_mode = WAL; PRAGMA synchronous = NORMAL; PRAGMA temp_store = memory; @@ -174,8 +174,8 @@ ${A.format(Q)}`.trim())}}HjQ.exports=IjQ});var ta=R((MrY,LjQ)=>{var{InvalidArgum ORDER BY cachedAt DESC LIMIT ? ) - `)}close(){this.#B.close()}get(Q){Zo(Q);let B=this.#E(Q);return B?{body:B.body?Buffer.from(B.body.buffer,B.body.byteOffset,B.body.byteLength):void 0,statusCode:B.statusCode,statusMessage:B.statusMessage,headers:B.headers?JSON.parse(B.headers):void 0,etag:B.etag?B.etag:void 0,vary:B.vary?JSON.parse(B.vary):void 0,cacheControlDirectives:B.cacheControlDirectives?JSON.parse(B.cacheControlDirectives):void 0,cachedAt:B.cachedAt,staleAt:B.staleAt,deleteAt:B.deleteAt}:void 0}set(Q,B){Zo(Q);let Y=this.#F(Q),J=Array.isArray(B.body)?Buffer.concat(B.body):B.body,C=J?.byteLength;if(C&&C>this.#A)return;let X=this.#E(Q,!0);if(X)this.#J.run(J,B.deleteAt,B.statusCode,B.statusMessage,B.headers?JSON.stringify(B.headers):null,B.etag?B.etag:null,B.cacheControlDirectives?JSON.stringify(B.cacheControlDirectives):null,B.cachedAt,B.staleAt,X.id);else this.#U(),this.#C.run(Y,Q.method,J,B.deleteAt,B.statusCode,B.statusMessage,B.headers?JSON.stringify(B.headers):null,B.etag?B.etag:null,B.cacheControlDirectives?JSON.stringify(B.cacheControlDirectives):null,B.vary?JSON.stringify(B.vary):null,B.cachedAt,B.staleAt)}createWriteStream(Q,B){Zo(Q),Eg0(B);let Y=0,J=[],C=this;return new Ug0({decodeStrings:!0,write(X,G,W){if(Y+=X.byteLength,Y=W.deleteAt&&!B)return;let F=!0;if(W.vary){let Z=JSON.parse(W.vary);for(let U in Z)if(!Kg0(J[U],Z[U])){F=!1;break}}if(F)return W}return}};function Kg0(A,Q){if(A==null&&Q==null)return!0;if(A==null&&Q!=null||A!=null&&Q==null)return!1;if(Array.isArray(A)&&Array.isArray(Q)){if(A.length!==Q.length)return!1;return A.every((B,Y)=>B===Q[Y])}return A===Q}});var Y4=R((urY,bOQ)=>{var{kConstruct:Vg0}=B0(),{kEnumerableProperty:HV}=lQ(),{iteratorMixin:Ig0,isValidHeaderName:oq,isValidHeaderValue:yOQ}=z9(),{webidl:LB}=HJ(),Uo=u("node:assert"),Qk=u("node:util");function vOQ(A){return A===10||A===13||A===9||A===32}function gOQ(A){let Q=0,B=A.length;while(B>Q&&vOQ(A.charCodeAt(B-1)))--B;while(B>Q&&vOQ(A.charCodeAt(Q)))++Q;return Q===0&&B===A.length?A:A.substring(Q,B)}function hOQ(A,Q){if(Array.isArray(Q))for(let B=0;B>","record"]})}function Eo(A,Q,B){if(B=gOQ(B),!oq(Q))throw LB.errors.invalidArgument({prefix:"Headers.append",value:Q,type:"header name"});else if(!yOQ(B))throw LB.errors.invalidArgument({prefix:"Headers.append",value:B,type:"header value"});if(fOQ(A)==="immutable")throw TypeError("immutable");return Yk(A).append(Q,B,!1)}function Hg0(A){let Q=Yk(A);if(!Q)return[];if(Q.sortedMap)return Q.sortedMap;let B=[],Y=Q.toSortedArray(),J=Q.cookies;if(J===null||J.length===1)return Q.sortedMap=Y;for(let C=0;C>1),Q[W][0]<=F[0])G=W+1;else X=W;if(J!==W){C=J;while(C>G)Q[C]=Q[--C];Q[G]=F}}if(!B.next().done)throw TypeError("Unreachable");return Q}else{let B=0;for(let{0:Y,1:{value:J}}of this.headersMap)Q[B++]=[Y,J],Uo(J!==null);return Q.sort(xOQ)}}}class mJ{#A;#Q;constructor(A=void 0){if(LB.util.markAsUncloneable(this),A===Vg0)return;if(this.#Q=new Bk,this.#A="none",A!==void 0)A=LB.converters.HeadersInit(A,"Headers constructor","init"),hOQ(this,A)}append(A,Q){LB.brandCheck(this,mJ),LB.argumentLengthCheck(arguments,2,"Headers.append");let B="Headers.append";return A=LB.converters.ByteString(A,B,"name"),Q=LB.converters.ByteString(Q,B,"value"),Eo(this,A,Q)}delete(A){LB.brandCheck(this,mJ),LB.argumentLengthCheck(arguments,1,"Headers.delete");let Q="Headers.delete";if(A=LB.converters.ByteString(A,Q,"name"),!oq(A))throw LB.errors.invalidArgument({prefix:"Headers.delete",value:A,type:"header name"});if(this.#A==="immutable")throw TypeError("immutable");if(!this.#Q.contains(A,!1))return;this.#Q.delete(A,!1)}get(A){LB.brandCheck(this,mJ),LB.argumentLengthCheck(arguments,1,"Headers.get");let Q="Headers.get";if(A=LB.converters.ByteString(A,Q,"name"),!oq(A))throw LB.errors.invalidArgument({prefix:Q,value:A,type:"header name"});return this.#Q.get(A,!1)}has(A){LB.brandCheck(this,mJ),LB.argumentLengthCheck(arguments,1,"Headers.has");let Q="Headers.has";if(A=LB.converters.ByteString(A,Q,"name"),!oq(A))throw LB.errors.invalidArgument({prefix:Q,value:A,type:"header name"});return this.#Q.contains(A,!1)}set(A,Q){LB.brandCheck(this,mJ),LB.argumentLengthCheck(arguments,2,"Headers.set");let B="Headers.set";if(A=LB.converters.ByteString(A,B,"name"),Q=LB.converters.ByteString(Q,B,"value"),Q=gOQ(Q),!oq(A))throw LB.errors.invalidArgument({prefix:B,value:A,type:"header name"});else if(!yOQ(Q))throw LB.errors.invalidArgument({prefix:B,value:Q,type:"header value"});if(this.#A==="immutable")throw TypeError("immutable");this.#Q.set(A,Q,!1)}getSetCookie(){LB.brandCheck(this,mJ);let A=this.#Q.cookies;if(A)return[...A];return[]}[Qk.inspect.custom](A,Q){return Q.depth??=A,`Headers ${Qk.formatWithOptions(Q,this.#Q.entries)}`}static getHeadersGuard(A){return A.#A}static setHeadersGuard(A,Q){A.#A=Q}static getHeadersList(A){return A.#Q}static setHeadersList(A,Q){A.#Q=Q}}var{getHeadersGuard:fOQ,setHeadersGuard:Dg0,getHeadersList:Yk,setHeadersList:Ng0}=mJ;Reflect.deleteProperty(mJ,"getHeadersGuard");Reflect.deleteProperty(mJ,"setHeadersGuard");Reflect.deleteProperty(mJ,"getHeadersList");Reflect.deleteProperty(mJ,"setHeadersList");Ig0("Headers",mJ,Hg0,0,1);Object.defineProperties(mJ.prototype,{append:HV,delete:HV,get:HV,has:HV,set:HV,getSetCookie:HV,[Symbol.toStringTag]:{value:"Headers",configurable:!0},[Qk.inspect.custom]:{enumerable:!1}});LB.converters.HeadersInit=function(A,Q,B){if(LB.util.Type(A)===LB.util.Types.OBJECT){let Y=Reflect.get(A,Symbol.iterator);if(!Qk.types.isProxy(A)&&Y===mJ.prototype.entries)try{return Yk(A).entriesList}catch{}if(typeof Y==="function")return LB.converters["sequence>"](A,Q,B,Y.bind(A));return LB.converters["record"](A,Q,B)}throw LB.errors.conversionFailed({prefix:"Headers constructor",argument:"Argument 1",types:["sequence>","record"]})};bOQ.exports={fill:hOQ,compareHeaderName:xOQ,Headers:mJ,HeadersList:Bk,getHeadersGuard:fOQ,setHeadersGuard:Dg0,setHeadersList:Ng0,getHeadersList:Yk}});var eq=R((drY,oOQ)=>{var{Headers:pOQ,HeadersList:mOQ,fill:Lg0,getHeadersGuard:qg0,setHeadersGuard:iOQ,setHeadersList:nOQ}=Y4(),{extractBody:uOQ,cloneBody:Mg0,mixinBody:zg0,streamRegistry:sOQ,bodyUnusable:Rg0}=tK(),rOQ=lQ(),dOQ=u("node:util"),{kEnumerableProperty:s8}=rOQ,{isValidReasonPhrase:wg0,isCancelled:jg0,isAborted:Og0,serializeJavascriptValueToJSONString:Pg0,isErrorLike:Tg0,isomorphicEncode:Sg0,environmentSettingsObject:kg0}=z9(),{redirectStatusSet:_g0,nullBodyStatus:vg0}=Iq(),{webidl:ZB}=HJ(),{URLSerializer:cOQ}=l8(),{kConstruct:Ck}=B0(),Ko=u("node:assert"),yg0=new TextEncoder("utf-8");class t0{#A;#Q;static error(){return tq(Xk(),"immutable")}static json(A,Q=void 0){if(ZB.argumentLengthCheck(arguments,1,"Response.json"),Q!==null)Q=ZB.converters.ResponseInit(Q);let B=yg0.encode(Pg0(A)),Y=uOQ(B),J=tq(DV({}),"response");return lOQ(J,Q,{body:Y[0],type:"application/json"}),J}static redirect(A,Q=302){ZB.argumentLengthCheck(arguments,1,"Response.redirect"),A=ZB.converters.USVString(A),Q=ZB.converters["unsigned short"](Q);let B;try{B=new URL(A,kg0.settingsObject.baseUrl)}catch(C){throw TypeError(`Failed to parse URL from ${A}`,{cause:C})}if(!_g0.has(Q))throw RangeError(`Invalid status code ${Q}`);let Y=tq(DV({}),"immutable");Y.#Q.status=Q;let J=Sg0(cOQ(B));return Y.#Q.headersList.append("location",J,!0),Y}constructor(A=null,Q=void 0){if(ZB.util.markAsUncloneable(this),A===Ck)return;if(A!==null)A=ZB.converters.BodyInit(A,"Response","body");Q=ZB.converters.ResponseInit(Q),this.#Q=DV({}),this.#A=new pOQ(Ck),iOQ(this.#A,"response"),nOQ(this.#A,this.#Q.headersList);let B=null;if(A!=null){let[Y,J]=uOQ(A);B={body:Y,type:J}}lOQ(this,Q,B)}get type(){return ZB.brandCheck(this,t0),this.#Q.type}get url(){ZB.brandCheck(this,t0);let A=this.#Q.urlList,Q=A[A.length-1]??null;if(Q===null)return"";return cOQ(Q,!0)}get redirected(){return ZB.brandCheck(this,t0),this.#Q.urlList.length>1}get status(){return ZB.brandCheck(this,t0),this.#Q.status}get ok(){return ZB.brandCheck(this,t0),this.#Q.status>=200&&this.#Q.status<=299}get statusText(){return ZB.brandCheck(this,t0),this.#Q.statusText}get headers(){return ZB.brandCheck(this,t0),this.#A}get body(){return ZB.brandCheck(this,t0),this.#Q.body?this.#Q.body.stream:null}get bodyUsed(){return ZB.brandCheck(this,t0),!!this.#Q.body&&rOQ.isDisturbed(this.#Q.body.stream)}clone(){if(ZB.brandCheck(this,t0),Rg0(this.#Q))throw ZB.errors.exception({header:"Response.clone",message:"Body has already been consumed."});let A=Vo(this.#Q);if(this.#Q.body?.stream)sOQ.register(this,new WeakRef(this.#Q.body.stream));return tq(A,qg0(this.#A))}[dOQ.inspect.custom](A,Q){if(Q.depth===null)Q.depth=2;Q.colors??=!0;let B={status:this.status,statusText:this.statusText,headers:this.headers,body:this.body,bodyUsed:this.bodyUsed,ok:this.ok,redirected:this.redirected,type:this.type,url:this.url};return`Response ${dOQ.formatWithOptions(Q,B)}`}static getResponseHeaders(A){return A.#A}static setResponseHeaders(A,Q){A.#A=Q}static getResponseState(A){return A.#Q}static setResponseState(A,Q){A.#Q=Q}}var{getResponseHeaders:gg0,setResponseHeaders:hg0,getResponseState:J4,setResponseState:xg0}=t0;Reflect.deleteProperty(t0,"getResponseHeaders");Reflect.deleteProperty(t0,"setResponseHeaders");Reflect.deleteProperty(t0,"getResponseState");Reflect.deleteProperty(t0,"setResponseState");zg0(t0,J4);Object.defineProperties(t0.prototype,{type:s8,url:s8,status:s8,ok:s8,redirected:s8,statusText:s8,headers:s8,clone:s8,body:s8,bodyUsed:s8,[Symbol.toStringTag]:{value:"Response",configurable:!0}});Object.defineProperties(t0,{json:s8,redirect:s8,error:s8});function Vo(A){if(A.internalResponse)return aOQ(Vo(A.internalResponse),A.type);let Q=DV({...A,body:null});if(A.body!=null)Q.body=Mg0(A.body);return Q}function DV(A){return{aborted:!1,rangeRequested:!1,timingAllowPassed:!1,requestIncludesCredentials:!1,type:"default",status:200,timingInfo:null,cacheState:"",statusText:"",...A,headersList:A?.headersList?new mOQ(A?.headersList):new mOQ,urlList:A?.urlList?[...A.urlList]:[]}}function Xk(A){let Q=Tg0(A);return DV({type:"error",status:0,error:Q?A:Error(A?String(A):A),aborted:A&&A.name==="AbortError"})}function fg0(A){return A.type==="error"&&A.status===0}function Jk(A,Q){return Q={internalResponse:A,...Q},new Proxy(A,{get(B,Y){return Y in Q?Q[Y]:B[Y]},set(B,Y,J){return Ko(!(Y in Q)),B[Y]=J,!0}})}function aOQ(A,Q){if(Q==="basic")return Jk(A,{type:"basic",headersList:A.headersList});else if(Q==="cors")return Jk(A,{type:"cors",headersList:A.headersList});else if(Q==="opaque")return Jk(A,{type:"opaque",urlList:Object.freeze([]),status:0,statusText:"",body:null});else if(Q==="opaqueredirect")return Jk(A,{type:"opaqueredirect",status:0,statusText:"",headersList:[],body:null});else Ko(!1)}function bg0(A,Q=null){return Ko(jg0(A)),Og0(A)?Xk(Object.assign(new DOMException("The operation was aborted.","AbortError"),{cause:Q})):Xk(Object.assign(new DOMException("Request was cancelled."),{cause:Q}))}function lOQ(A,Q,B){if(Q.status!==null&&(Q.status<200||Q.status>599))throw RangeError('init["status"] must be in the range of 200 to 599, inclusive.');if("statusText"in Q&&Q.statusText!=null){if(!wg0(String(Q.statusText)))throw TypeError("Invalid statusText")}if("status"in Q&&Q.status!=null)J4(A).status=Q.status;if("statusText"in Q&&Q.statusText!=null)J4(A).statusText=Q.statusText;if("headers"in Q&&Q.headers!=null)Lg0(gg0(A),Q.headers);if(B){if(vg0.includes(A.status))throw ZB.errors.exception({header:"Response constructor",message:`Invalid response status code ${A.status}`});if(J4(A).body=B.body,B.type!=null&&!J4(A).headersList.contains("content-type",!0))J4(A).headersList.append("content-type",B.type,!0)}}function tq(A,Q){let B=new t0(Ck);xg0(B,A);let Y=new pOQ(Ck);if(hg0(B,Y),nOQ(Y,A.headersList),iOQ(Y,Q),A.body?.stream)sOQ.register(B,new WeakRef(A.body.stream));return B}ZB.converters.XMLHttpRequestBodyInit=function(A,Q,B){if(typeof A==="string")return ZB.converters.USVString(A,Q,B);if(ZB.is.Blob(A))return A;if(ZB.is.BufferSource(A))return A;if(ZB.is.FormData(A))return A;if(ZB.is.URLSearchParams(A))return A;return ZB.converters.DOMString(A,Q,B)};ZB.converters.BodyInit=function(A,Q,B){if(ZB.is.ReadableStream(A))return A;if(A?.[Symbol.asyncIterator])return A;return ZB.converters.XMLHttpRequestBodyInit(A,Q,B)};ZB.converters.ResponseInit=ZB.dictionaryConverter([{key:"status",converter:ZB.converters["unsigned short"],defaultValue:()=>200},{key:"statusText",converter:ZB.converters.ByteString,defaultValue:()=>""},{key:"headers",converter:ZB.converters.HeadersInit}]);ZB.is.Response=ZB.util.MakeTypeAssertion(t0);oOQ.exports={isNetworkError:fg0,makeNetworkError:Xk,makeResponse:DV,makeAppropriateNetworkError:bg0,filterResponse:aOQ,Response:t0,cloneResponse:Vo,fromInnerResponse:tq,getResponseState:J4}});var NV=R((crY,$PQ)=>{var{extractBody:mg0,mixinBody:ug0,cloneBody:dg0,bodyUnusable:tOQ}=tK(),{Headers:JPQ,fill:cg0,HeadersList:Fk,setHeadersGuard:Io,getHeadersGuard:lg0,setHeadersList:CPQ,getHeadersList:eOQ}=Y4(),Wk=lQ(),APQ=u("node:util"),{isValidHTTPToken:pg0,sameOrigin:QPQ,environmentSettingsObject:Gk}=z9(),{forbiddenMethodsSet:ig0,corsSafeListedMethodsSet:ng0,referrerPolicy:sg0,requestRedirect:rg0,requestMode:ag0,requestCredentials:og0,requestCache:tg0,requestDuplex:eg0}=Iq(),{kEnumerableProperty:OY,normalizedMethodRecordsBase:Ah0,normalizedMethodRecords:Qh0}=Wk,{webidl:qQ}=HJ(),{URLSerializer:Bh0}=l8(),{kConstruct:Zk}=B0(),Yh0=u("node:assert"),{getMaxListeners:XPQ,setMaxListeners:Jh0,defaultMaxListeners:Ch0}=u("node:events"),Xh0=Symbol("abortController"),GPQ=new FinalizationRegistry(({signal:A,abort:Q})=>{A.removeEventListener("abort",Q)}),$k=new WeakMap,Ho;try{Ho=XPQ(new AbortController().signal)>0}catch{Ho=!1}function BPQ(A){return Q;function Q(){let B=A.deref();if(B!==void 0){GPQ.unregister(Q),this.removeEventListener("abort",Q),B.abort(this.reason);let Y=$k.get(B.signal);if(Y!==void 0){if(Y.size!==0){for(let J of Y){let C=J.deref();if(C!==void 0)C.abort(this.reason)}Y.clear()}$k.delete(B.signal)}}}}var YPQ=!1;class kB{#A;#Q;#B;#Y;constructor(A,Q=void 0){if(qQ.util.markAsUncloneable(this),A===Zk)return;let B="Request constructor";qQ.argumentLengthCheck(arguments,1,B),A=qQ.converters.RequestInfo(A),Q=qQ.converters.RequestInit(Q);let Y=null,J=null,C=Gk.settingsObject.baseUrl,X=null;if(typeof A==="string"){this.#Q=Q.dispatcher;let V;try{V=new URL(A,C)}catch(H){throw TypeError("Failed to parse URL from "+A,{cause:H})}if(V.username||V.password)throw TypeError("Request cannot be constructed from a URL that includes credentials: "+A);Y=Uk({urlList:[V]}),J="cors"}else Yh0(qQ.is.Request(A)),Y=A.#Y,X=A.#A,this.#Q=Q.dispatcher||A.#Q;let G=Gk.settingsObject.origin,W="client";if(Y.window?.constructor?.name==="EnvironmentSettingsObject"&&QPQ(Y.window,G))W=Y.window;if(Q.window!=null)throw TypeError(`'window' option '${W}' must be null`);if("window"in Q)W="no-window";Y=Uk({method:Y.method,headersList:Y.headersList,unsafeRequest:Y.unsafeRequest,client:Gk.settingsObject,window:W,priority:Y.priority,origin:Y.origin,referrer:Y.referrer,referrerPolicy:Y.referrerPolicy,mode:Y.mode,credentials:Y.credentials,cache:Y.cache,redirect:Y.redirect,integrity:Y.integrity,keepalive:Y.keepalive,reloadNavigation:Y.reloadNavigation,historyNavigation:Y.historyNavigation,urlList:[...Y.urlList]});let F=Object.keys(Q).length!==0;if(F){if(Y.mode==="navigate")Y.mode="same-origin";Y.reloadNavigation=!1,Y.historyNavigation=!1,Y.origin="client",Y.referrer="client",Y.referrerPolicy="",Y.url=Y.urlList[Y.urlList.length-1],Y.urlList=[Y.url]}if(Q.referrer!==void 0){let V=Q.referrer;if(V==="")Y.referrer="no-referrer";else{let H;try{H=new URL(V,C)}catch(D){throw TypeError(`Referrer "${V}" is not a valid URL.`,{cause:D})}if(H.protocol==="about:"&&H.hostname==="client"||G&&!QPQ(H,Gk.settingsObject.baseUrl))Y.referrer="client";else Y.referrer=H}}if(Q.referrerPolicy!==void 0)Y.referrerPolicy=Q.referrerPolicy;let Z;if(Q.mode!==void 0)Z=Q.mode;else Z=J;if(Z==="navigate")throw qQ.errors.exception({header:"Request constructor",message:"invalid request mode navigate."});if(Z!=null)Y.mode=Z;if(Q.credentials!==void 0)Y.credentials=Q.credentials;if(Q.cache!==void 0)Y.cache=Q.cache;if(Y.cache==="only-if-cached"&&Y.mode!=="same-origin")throw TypeError("'only-if-cached' can be set only with 'same-origin' mode");if(Q.redirect!==void 0)Y.redirect=Q.redirect;if(Q.integrity!=null)Y.integrity=String(Q.integrity);if(Q.keepalive!==void 0)Y.keepalive=Boolean(Q.keepalive);if(Q.method!==void 0){let V=Q.method,H=Qh0[V];if(H!==void 0)Y.method=H;else{if(!pg0(V))throw TypeError(`'${V}' is not a valid HTTP method.`);let D=V.toUpperCase();if(ig0.has(D))throw TypeError(`'${V}' HTTP method is unsupported.`);V=Ah0[D]??V,Y.method=V}if(!YPQ&&Y.method==="patch")process.emitWarning("Using `patch` is highly likely to result in a `405 Method Not Allowed`. `PATCH` is much more likely to succeed.",{code:"UNDICI-FETCH-patch"}),YPQ=!0}if(Q.signal!==void 0)X=Q.signal;this.#Y=Y;let U=new AbortController;if(this.#A=U.signal,X!=null)if(X.aborted)U.abort(X.reason);else{this[Xh0]=U;let V=new WeakRef(U),H=BPQ(V);if(Ho&&XPQ(X)===Ch0)Jh0(1500,X);Wk.addAbortListener(X,H),GPQ.register(U,{signal:X,abort:H},H)}if(this.#B=new JPQ(Zk),CPQ(this.#B,Y.headersList),Io(this.#B,"request"),Z==="no-cors"){if(!ng0.has(Y.method))throw TypeError(`'${Y.method} is unsupported in no-cors mode.`);Io(this.#B,"request-no-cors")}if(F){let V=eOQ(this.#B),H=Q.headers!==void 0?Q.headers:new Fk(V);if(V.clear(),H instanceof Fk){for(let{name:D,value:L}of H.rawValues())V.append(D,L,!1);V.cookies=H.cookies}else cg0(this.#B,H)}let $=qQ.is.Request(A)?A.#Y.body:null;if((Q.body!=null||$!=null)&&(Y.method==="GET"||Y.method==="HEAD"))throw TypeError("Request with GET/HEAD method cannot have body.");let E=null;if(Q.body!=null){let[V,H]=mg0(Q.body,Y.keepalive);if(E=V,H&&!eOQ(this.#B).contains("content-type",!0))this.#B.append("content-type",H,!0)}let K=E??$;if(K!=null&&K.source==null){if(E!=null&&Q.duplex==null)throw TypeError("RequestInit: duplex option is required when sending a body.");if(Y.mode!=="same-origin"&&Y.mode!=="cors")throw TypeError('If request is made from ReadableStream, mode should be "same-origin" or "cors"');Y.useCORSPreflightFlag=!0}let I=K;if(E==null&&$!=null){if(tOQ(A.#Y))throw TypeError("Cannot construct a Request with a Request object that has already been used.");let V=new TransformStream;$.stream.pipeThrough(V),I={source:$.source,length:$.length,stream:V.readable}}this.#Y.body=I}get method(){return qQ.brandCheck(this,kB),this.#Y.method}get url(){return qQ.brandCheck(this,kB),Bh0(this.#Y.url)}get headers(){return qQ.brandCheck(this,kB),this.#B}get destination(){return qQ.brandCheck(this,kB),this.#Y.destination}get referrer(){if(qQ.brandCheck(this,kB),this.#Y.referrer==="no-referrer")return"";if(this.#Y.referrer==="client")return"about:client";return this.#Y.referrer.toString()}get referrerPolicy(){return qQ.brandCheck(this,kB),this.#Y.referrerPolicy}get mode(){return qQ.brandCheck(this,kB),this.#Y.mode}get credentials(){return qQ.brandCheck(this,kB),this.#Y.credentials}get cache(){return qQ.brandCheck(this,kB),this.#Y.cache}get redirect(){return qQ.brandCheck(this,kB),this.#Y.redirect}get integrity(){return qQ.brandCheck(this,kB),this.#Y.integrity}get keepalive(){return qQ.brandCheck(this,kB),this.#Y.keepalive}get isReloadNavigation(){return qQ.brandCheck(this,kB),this.#Y.reloadNavigation}get isHistoryNavigation(){return qQ.brandCheck(this,kB),this.#Y.historyNavigation}get signal(){return qQ.brandCheck(this,kB),this.#A}get body(){return qQ.brandCheck(this,kB),this.#Y.body?this.#Y.body.stream:null}get bodyUsed(){return qQ.brandCheck(this,kB),!!this.#Y.body&&Wk.isDisturbed(this.#Y.body.stream)}get duplex(){return qQ.brandCheck(this,kB),"half"}clone(){if(qQ.brandCheck(this,kB),tOQ(this.#Y))throw TypeError("unusable");let A=FPQ(this.#Y),Q=new AbortController;if(this.signal.aborted)Q.abort(this.signal.reason);else{let B=$k.get(this.signal);if(B===void 0)B=new Set,$k.set(this.signal,B);let Y=new WeakRef(Q);B.add(Y),Wk.addAbortListener(Q.signal,BPQ(Y))}return ZPQ(A,this.#Q,Q.signal,lg0(this.#B))}[APQ.inspect.custom](A,Q){if(Q.depth===null)Q.depth=2;Q.colors??=!0;let B={method:this.method,url:this.url,headers:this.headers,destination:this.destination,referrer:this.referrer,referrerPolicy:this.referrerPolicy,mode:this.mode,credentials:this.credentials,cache:this.cache,redirect:this.redirect,integrity:this.integrity,keepalive:this.keepalive,isReloadNavigation:this.isReloadNavigation,isHistoryNavigation:this.isHistoryNavigation,signal:this.signal};return`Request ${APQ.formatWithOptions(Q,B)}`}static setRequestSignal(A,Q){return A.#A=Q,A}static getRequestDispatcher(A){return A.#Q}static setRequestDispatcher(A,Q){A.#Q=Q}static setRequestHeaders(A,Q){A.#B=Q}static getRequestState(A){return A.#Y}static setRequestState(A,Q){A.#Y=Q}}var{setRequestSignal:Gh0,getRequestDispatcher:Wh0,setRequestDispatcher:Fh0,setRequestHeaders:Zh0,getRequestState:WPQ,setRequestState:$h0}=kB;Reflect.deleteProperty(kB,"setRequestSignal");Reflect.deleteProperty(kB,"getRequestDispatcher");Reflect.deleteProperty(kB,"setRequestDispatcher");Reflect.deleteProperty(kB,"setRequestHeaders");Reflect.deleteProperty(kB,"getRequestState");Reflect.deleteProperty(kB,"setRequestState");ug0(kB,WPQ);function Uk(A){return{method:A.method??"GET",localURLsOnly:A.localURLsOnly??!1,unsafeRequest:A.unsafeRequest??!1,body:A.body??null,client:A.client??null,reservedClient:A.reservedClient??null,replacesClientId:A.replacesClientId??"",window:A.window??"client",keepalive:A.keepalive??!1,serviceWorkers:A.serviceWorkers??"all",initiator:A.initiator??"",destination:A.destination??"",priority:A.priority??null,origin:A.origin??"client",policyContainer:A.policyContainer??"client",referrer:A.referrer??"client",referrerPolicy:A.referrerPolicy??"",mode:A.mode??"no-cors",useCORSPreflightFlag:A.useCORSPreflightFlag??!1,credentials:A.credentials??"same-origin",useCredentials:A.useCredentials??!1,cache:A.cache??"default",redirect:A.redirect??"follow",integrity:A.integrity??"",cryptoGraphicsNonceMetadata:A.cryptoGraphicsNonceMetadata??"",parserMetadata:A.parserMetadata??"",reloadNavigation:A.reloadNavigation??!1,historyNavigation:A.historyNavigation??!1,userActivation:A.userActivation??!1,taintedOrigin:A.taintedOrigin??!1,redirectCount:A.redirectCount??0,responseTainting:A.responseTainting??"basic",preventNoCacheCacheControlHeaderModification:A.preventNoCacheCacheControlHeaderModification??!1,done:A.done??!1,timingAllowFailed:A.timingAllowFailed??!1,urlList:A.urlList,url:A.urlList[0],headersList:A.headersList?new Fk(A.headersList):new Fk}}function FPQ(A){let Q=Uk({...A,body:null});if(A.body!=null)Q.body=dg0(A.body);return Q}function ZPQ(A,Q,B,Y){let J=new kB(Zk);$h0(J,A),Fh0(J,Q),Gh0(J,B);let C=new JPQ(Zk);return Zh0(J,C),CPQ(C,A.headersList),Io(C,Y),J}Object.defineProperties(kB.prototype,{method:OY,url:OY,headers:OY,redirect:OY,clone:OY,signal:OY,duplex:OY,destination:OY,body:OY,bodyUsed:OY,isHistoryNavigation:OY,isReloadNavigation:OY,keepalive:OY,integrity:OY,cache:OY,credentials:OY,attribute:OY,referrerPolicy:OY,referrer:OY,mode:OY,[Symbol.toStringTag]:{value:"Request",configurable:!0}});qQ.is.Request=qQ.util.MakeTypeAssertion(kB);qQ.converters.RequestInfo=function(A){if(typeof A==="string")return qQ.converters.USVString(A);if(qQ.is.Request(A))return A;return qQ.converters.USVString(A)};qQ.converters.RequestInit=qQ.dictionaryConverter([{key:"method",converter:qQ.converters.ByteString},{key:"headers",converter:qQ.converters.HeadersInit},{key:"body",converter:qQ.nullableConverter(qQ.converters.BodyInit)},{key:"referrer",converter:qQ.converters.USVString},{key:"referrerPolicy",converter:qQ.converters.DOMString,allowedValues:sg0},{key:"mode",converter:qQ.converters.DOMString,allowedValues:ag0},{key:"credentials",converter:qQ.converters.DOMString,allowedValues:og0},{key:"cache",converter:qQ.converters.DOMString,allowedValues:tg0},{key:"redirect",converter:qQ.converters.DOMString,allowedValues:rg0},{key:"integrity",converter:qQ.converters.DOMString},{key:"keepalive",converter:qQ.converters.boolean},{key:"signal",converter:qQ.nullableConverter((A)=>qQ.converters.AbortSignal(A,"RequestInit","signal"))},{key:"window",converter:qQ.converters.any},{key:"duplex",converter:qQ.converters.DOMString,allowedValues:eg0},{key:"dispatcher",converter:qQ.converters.any}]);$PQ.exports={Request:kB,makeRequest:Uk,fromInnerRequest:ZPQ,cloneRequest:FPQ,getRequestDispatcher:Wh0,getRequestState:WPQ}});var DPQ=R((lrY,HPQ)=>{var Uh0=u("node:assert"),C4=new Map([["sha256",0],["sha384",1],["sha512",2]]),Ek;try{Ek=u("node:crypto");let A=Ek.getHashes();if(A.length===0)C4.clear();for(let Q of C4.keys())if(A.includes(Q)===!1)C4.delete(Q)}catch{C4.clear()}var UPQ=Map.prototype.get.bind(C4),Do=Map.prototype.has.bind(C4),Eh0=Ek===void 0||C4.size===0?()=>!0:(A,Q)=>{let B=KPQ(Q);if(B.length===0)return!0;let Y=EPQ(B);for(let J of Y){let{alg:C,val:X}=J,G=VPQ(C,A);if(IPQ(G,X))return!0}return!1};function EPQ(A){let Q=[],B=null;for(let Y of A){if(Uh0(Do(Y.alg),"Invalid SRI hash algorithm token"),Q.length===0){Q.push(Y),B=Y;continue}let J=B.alg,C=UPQ(J),X=Y.alg,G=UPQ(X);if(GC)B=Y,Q[0]=Y,Q.length=1;else Q.push(Y)}return Q}function KPQ(A){let Q=[];for(let B of A.split(" ")){let J=B.split("?",1)[0],C="",X=[J.slice(0,6),J.slice(7)],G=X[0];if(!Do(G))continue;if(X[1])C=X[1];let W={alg:G,val:C};Q.push(W)}return Q}var VPQ=(A,Q)=>{return Ek.hash(A,Q,"base64")};function IPQ(A,Q){let B=A.length;if(B!==0&&A[B-1]==="=")B-=1;if(B!==0&&A[B-1]==="=")B-=1;let Y=Q.length;if(Y!==0&&Q[Y-1]==="=")Y-=1;if(Y!==0&&Q[Y-1]==="=")Y-=1;if(B!==Y)return!1;for(let J=0;J{var{makeNetworkError:cB,makeAppropriateNetworkError:Kk,filterResponse:No,makeResponse:Vk,fromInnerResponse:Kh0,getResponseState:Vh0}=eq(),{HeadersList:NPQ}=Y4(),{Request:Ih0,cloneRequest:Hh0,getRequestDispatcher:Dh0,getRequestState:Nh0}=NV(),UC=u("node:zlib"),{makePolicyContainer:Lh0,clonePolicyContainer:qh0,requestBadPort:Mh0,TAOCheck:zh0,appendRequestOriginHeader:Rh0,responseLocationURL:wh0,requestCurrentURL:yX,setRequestReferrerPolicyOnRedirect:jh0,tryUpgradeRequestToAPotentiallyTrustworthyURL:Oh0,createOpaqueTimingInfo:Ro,appendFetchMetadata:Ph0,corsCheck:Th0,crossOriginResourcePolicyCheck:Sh0,determineRequestsReferrer:kh0,coarsenedSharedCurrentTime:AM,sameOrigin:zo,isCancelled:X4,isAborted:LPQ,isErrorLike:_h0,fullyReadBody:vh0,readableStreamClose:yh0,isomorphicEncode:Ik,urlIsLocal:gh0,urlIsHttpHttpsScheme:Dk,urlHasHttpsScheme:hh0,clampAndCoarsenConnectionTimingInfo:xh0,simpleRangeHeaderValue:fh0,buildContentRange:bh0,createInflate:mh0,extractMimeType:uh0}=z9(),G4=u("node:assert"),{safelyExtractBody:wo,extractBody:qPQ}=tK(),{redirectStatusSet:RPQ,nullBodyStatus:wPQ,safeMethodsSet:dh0,requestBodyHeader:ch0,subresourceSet:lh0}=Iq(),ph0=u("node:events"),{Readable:ih0,pipeline:nh0,finished:sh0,isErrored:rh0,isReadable:Hk}=u("node:stream"),{addAbortListener:ah0,bufferToLowerCasedHeaderName:MPQ}=lQ(),{dataURLProcessor:oh0,serializeAMimeType:th0,minimizeSupportedMimeType:eh0}=l8(),{getGlobalDispatcher:Ax0}=Ak(),{webidl:jo}=HJ(),{STATUS_CODES:Qx0}=u("node:http"),{bytesMatch:Bx0}=DPQ(),{createDeferredPromise:Yx0}=Nq(),Jx0=typeof UC.createZstdDecompress==="function",Cx0=["GET","HEAD"],Xx0=typeof __UNDICI_IS_NODE__<"u"||typeof esbuildDetection<"u"?"node":"undici",Lo;class Oo extends ph0{constructor(A){super();this.dispatcher=A,this.connection=null,this.dump=!1,this.state="ongoing"}terminate(A){if(this.state!=="ongoing")return;this.state="terminated",this.connection?.destroy(A),this.emit("terminated",A)}abort(A){if(this.state!=="ongoing")return;if(this.state="aborted",!A)A=new DOMException("The operation was aborted.","AbortError");this.serializedAbortReason=A,this.connection?.destroy(A),this.emit("terminated",A)}}function Gx0(A){jPQ(A,"fetch")}function Wx0(A,Q=void 0){jo.argumentLengthCheck(arguments,1,"globalThis.fetch");let B=Yx0(),Y;try{Y=new Ih0(A,Q)}catch(Z){return B.reject(Z),B.promise}let J=Nh0(Y);if(Y.signal.aborted)return qo(B,J,null,Y.signal.reason),B.promise;if(J.client.globalObject?.constructor?.name==="ServiceWorkerGlobalScope")J.serviceWorkers="none";let X=null,G=!1,W=null;return ah0(Y.signal,()=>{G=!0,G4(W!=null),W.abort(Y.signal.reason);let Z=X?.deref();qo(B,J,Z,Y.signal.reason)}),W=PPQ({request:J,processResponseEndOfBody:Gx0,processResponse:(Z)=>{if(G)return;if(Z.aborted){qo(B,J,X,W.serializedAbortReason);return}if(Z.type==="error"){B.reject(TypeError("fetch failed",{cause:Z.error}));return}X=new WeakRef(Kh0(Z,"immutable")),B.resolve(X.deref()),B=null},dispatcher:Dh0(Y)}),B.promise}function jPQ(A,Q="other"){if(A.type==="error"&&A.aborted)return;if(!A.urlList?.length)return;let B=A.urlList[0],Y=A.timingInfo,J=A.cacheState;if(!Dk(B))return;if(Y===null)return;if(!A.timingAllowPassed)Y=Ro({startTime:Y.startTime}),J="";Y.endTime=AM(),A.timingInfo=Y,OPQ(Y,B.href,Q,globalThis,J,"",A.status)}var OPQ=performance.markResourceTiming;function qo(A,Q,B,Y){if(A)A.reject(Y);if(Q.body?.stream!=null&&Hk(Q.body.stream))Q.body.stream.cancel(Y).catch((C)=>{if(C.code==="ERR_INVALID_STATE")return;throw C});if(B==null)return;let J=Vh0(B);if(J.body?.stream!=null&&Hk(J.body.stream))J.body.stream.cancel(Y).catch((C)=>{if(C.code==="ERR_INVALID_STATE")return;throw C})}function PPQ({request:A,processRequestBodyChunkLength:Q,processRequestEndOfBody:B,processResponse:Y,processResponseEndOfBody:J,processResponseConsumeBody:C,useParallelQueue:X=!1,dispatcher:G=Ax0()}){G4(G);let W=null,F=!1;if(A.client!=null)W=A.client.globalObject,F=A.client.crossOriginIsolatedCapability;let Z=AM(F),U=Ro({startTime:Z}),$={controller:new Oo(G),request:A,timingInfo:U,processRequestBodyChunkLength:Q,processRequestEndOfBody:B,processResponse:Y,processResponseConsumeBody:C,processResponseEndOfBody:J,taskDestination:W,crossOriginIsolatedCapability:F};if(G4(!A.body||A.body.stream),A.window==="client")A.window=A.client?.globalObject?.constructor?.name==="Window"?A.client:"no-window";if(A.origin==="client")A.origin=A.client.origin;if(A.policyContainer==="client")if(A.client!=null)A.policyContainer=qh0(A.client.policyContainer);else A.policyContainer=Lh0();if(!A.headersList.contains("accept",!0))A.headersList.append("accept","*/*",!0);if(!A.headersList.contains("accept-language",!0))A.headersList.append("accept-language","*",!0);if(A.priority===null);if(lh0.has(A.destination));return TPQ($,!1),$.controller}async function TPQ(A,Q){try{let B=A.request,Y=null;if(B.localURLsOnly&&!gh0(yX(B)))Y=cB("local URLs only");if(Oh0(B),Mh0(B)==="blocked")Y=cB("bad port");if(B.referrerPolicy==="")B.referrerPolicy=B.policyContainer.referrerPolicy;if(B.referrer!=="no-referrer")B.referrer=kh0(B);if(Y===null){let C=yX(B);if(zo(C,B.url)&&B.responseTainting==="basic"||C.protocol==="data:"||(B.mode==="navigate"||B.mode==="websocket"))B.responseTainting="basic",Y=await zPQ(A);else if(B.mode==="same-origin")Y=cB('request mode cannot be "same-origin"');else if(B.mode==="no-cors")if(B.redirect!=="follow")Y=cB('redirect mode cannot be "follow" for "no-cors" request');else B.responseTainting="opaque",Y=await zPQ(A);else if(!Dk(yX(B)))Y=cB("URL scheme must be a HTTP(S) scheme");else B.responseTainting="cors",Y=await SPQ(A)}if(Q)return Y;if(Y.status!==0&&!Y.internalResponse){if(B.responseTainting==="cors");if(B.responseTainting==="basic")Y=No(Y,"basic");else if(B.responseTainting==="cors")Y=No(Y,"cors");else if(B.responseTainting==="opaque")Y=No(Y,"opaque");else G4(!1)}let J=Y.status===0?Y:Y.internalResponse;if(J.urlList.length===0)J.urlList.push(...B.urlList);if(!B.timingAllowFailed)Y.timingAllowPassed=!0;if(Y.type==="opaque"&&J.status===206&&J.rangeRequested&&!B.headers.contains("range",!0))Y=J=cB();if(Y.status!==0&&(B.method==="HEAD"||B.method==="CONNECT"||wPQ.includes(J.status)))J.body=null,A.controller.dump=!0;if(B.integrity){let C=(G)=>Mo(A,cB(G));if(B.responseTainting==="opaque"||Y.body==null){C(Y.error);return}let X=(G)=>{if(!Bx0(G,B.integrity)){C("integrity mismatch");return}Y.body=wo(G)[0],Mo(A,Y)};vh0(Y.body,X,C)}else Mo(A,Y)}catch(B){A.controller.terminate(B)}}function zPQ(A){if(X4(A)&&A.request.redirectCount===0)return Promise.resolve(Kk(A));let{request:Q}=A,{protocol:B}=yX(Q);switch(B){case"about:":return Promise.resolve(cB("about scheme is not supported"));case"blob:":{if(!Lo)Lo=u("node:buffer").resolveObjectURL;let Y=yX(Q);if(Y.search.length!==0)return Promise.resolve(cB("NetworkError when attempting to fetch resource."));let J=Lo(Y.toString());if(Q.method!=="GET"||!jo.is.Blob(J))return Promise.resolve(cB("invalid method"));let C=Vk(),X=J.size,G=Ik(`${X}`),W=J.type;if(!Q.headersList.contains("range",!0)){let F=qPQ(J);C.statusText="OK",C.body=F[0],C.headersList.set("content-length",G,!0),C.headersList.set("content-type",W,!0)}else{C.rangeRequested=!0;let F=Q.headersList.get("range",!0),Z=fh0(F,!0);if(Z==="failure")return Promise.resolve(cB("failed to fetch the data URL"));let{rangeStartValue:U,rangeEndValue:$}=Z;if(U===null)U=X-$,$=U+$-1;else{if(U>=X)return Promise.resolve(cB("Range start is greater than the blob's size."));if($===null||$>=X)$=X-1}let E=J.slice(U,$,W),K=qPQ(E);C.body=K[0];let I=Ik(`${E.size}`),V=bh0(U,$,X);C.status=206,C.statusText="Partial Content",C.headersList.set("content-length",I,!0),C.headersList.set("content-type",W,!0),C.headersList.set("content-range",V,!0)}return Promise.resolve(C)}case"data:":{let Y=yX(Q),J=oh0(Y);if(J==="failure")return Promise.resolve(cB("failed to fetch the data URL"));let C=th0(J.mimeType);return Promise.resolve(Vk({statusText:"OK",headersList:[["content-type",{name:"Content-Type",value:C}]],body:wo(J.body)[0]}))}case"file:":return Promise.resolve(cB("not implemented... yet..."));case"http:":case"https:":return SPQ(A).catch((Y)=>cB(Y));default:return Promise.resolve(cB("unknown scheme"))}}function Fx0(A,Q){if(A.request.done=!0,A.processResponseDone!=null)queueMicrotask(()=>A.processResponseDone(Q))}function Mo(A,Q){let B=A.timingInfo,Y=()=>{let C=Date.now();if(A.request.destination==="document")A.controller.fullTimingInfo=B;A.controller.reportTimingSteps=()=>{if(!Dk(A.request.url))return;B.endTime=C;let{cacheState:G,bodyInfo:W}=Q;if(!Q.timingAllowPassed)B=Ro(B),G="";let F=0;if(A.request.mode!=="navigator"||!Q.hasCrossOriginRedirects){F=Q.status;let Z=uh0(Q.headersList);if(Z!=="failure")W.contentType=eh0(Z)}if(A.request.initiatorType!=null)OPQ(B,A.request.url.href,A.request.initiatorType,globalThis,G,W,F)};let X=()=>{if(A.request.done=!0,A.processResponseEndOfBody!=null)queueMicrotask(()=>A.processResponseEndOfBody(Q));if(A.request.initiatorType!=null)A.controller.reportTimingSteps()};queueMicrotask(()=>X())};if(A.processResponse!=null)queueMicrotask(()=>{A.processResponse(Q),A.processResponse=null});let J=Q.type==="error"?Q:Q.internalResponse??Q;if(J.body==null)Y();else sh0(J.body.stream,()=>{Y()})}async function SPQ(A){let Q=A.request,B=null,Y=null,J=A.timingInfo;if(Q.serviceWorkers==="all");if(B===null){if(Q.redirect==="follow")Q.serviceWorkers="none";if(Y=B=await kPQ(A),Q.responseTainting==="cors"&&Th0(Q,B)==="failure")return cB("cors failure");if(zh0(Q,B)==="failure")Q.timingAllowFailed=!0}if((Q.responseTainting==="opaque"||B.type==="opaque")&&Sh0(Q.origin,Q.client,Q.destination,Y)==="blocked")return cB("blocked");if(RPQ.has(Y.status)){if(Q.redirect!=="manual")A.controller.connection.destroy(void 0,!1);if(Q.redirect==="error")B=cB("unexpected redirect");else if(Q.redirect==="manual")B=Y;else if(Q.redirect==="follow")B=await Zx0(A,B);else G4(!1)}return B.timingInfo=J,B}function Zx0(A,Q){let B=A.request,Y=Q.internalResponse?Q.internalResponse:Q,J;try{if(J=wh0(Y,yX(B).hash),J==null)return Q}catch(X){return Promise.resolve(cB(X))}if(!Dk(J))return Promise.resolve(cB("URL scheme must be a HTTP(S) scheme"));if(B.redirectCount===20)return Promise.resolve(cB("redirect count exceeded"));if(B.redirectCount+=1,B.mode==="cors"&&(J.username||J.password)&&!zo(B,J))return Promise.resolve(cB('cross origin not allowed for request mode "cors"'));if(B.responseTainting==="cors"&&(J.username||J.password))return Promise.resolve(cB('URL cannot contain credentials for request mode "cors"'));if(Y.status!==303&&B.body!=null&&B.body.source==null)return Promise.resolve(cB());if([301,302].includes(Y.status)&&B.method==="POST"||Y.status===303&&!Cx0.includes(B.method)){B.method="GET",B.body=null;for(let X of ch0)B.headersList.delete(X)}if(!zo(yX(B),J))B.headersList.delete("authorization",!0),B.headersList.delete("proxy-authorization",!0),B.headersList.delete("cookie",!0),B.headersList.delete("host",!0);if(B.body!=null)G4(B.body.source!=null),B.body=wo(B.body.source)[0];let C=A.timingInfo;if(C.redirectEndTime=C.postRedirectStartTime=AM(A.crossOriginIsolatedCapability),C.redirectStartTime===0)C.redirectStartTime=C.startTime;return B.urlList.push(J),jh0(B,Y),TPQ(A,!0)}async function kPQ(A,Q=!1,B=!1){let Y=A.request,J=null,C=null,X=null,G=null,W=!1;if(Y.window==="no-window"&&Y.redirect==="error")J=A,C=Y;else C=Hh0(Y),J={...A},J.request=C;let F=Y.credentials==="include"||Y.credentials==="same-origin"&&Y.responseTainting==="basic",Z=C.body?C.body.length:null,U=null;if(C.body==null&&["POST","PUT"].includes(C.method))U="0";if(Z!=null)U=Ik(`${Z}`);if(U!=null)C.headersList.append("content-length",U,!0);if(Z!=null&&C.keepalive);if(jo.is.URL(C.referrer))C.headersList.append("referer",Ik(C.referrer.href),!0);if(Rh0(C),Ph0(C),!C.headersList.contains("user-agent",!0))C.headersList.append("user-agent",Xx0,!0);if(C.cache==="default"&&(C.headersList.contains("if-modified-since",!0)||C.headersList.contains("if-none-match",!0)||C.headersList.contains("if-unmodified-since",!0)||C.headersList.contains("if-match",!0)||C.headersList.contains("if-range",!0)))C.cache="no-store";if(C.cache==="no-cache"&&!C.preventNoCacheCacheControlHeaderModification&&!C.headersList.contains("cache-control",!0))C.headersList.append("cache-control","max-age=0",!0);if(C.cache==="no-store"||C.cache==="reload"){if(!C.headersList.contains("pragma",!0))C.headersList.append("pragma","no-cache",!0);if(!C.headersList.contains("cache-control",!0))C.headersList.append("cache-control","no-cache",!0)}if(C.headersList.contains("range",!0))C.headersList.append("accept-encoding","identity",!0);if(!C.headersList.contains("accept-encoding",!0))if(hh0(yX(C)))C.headersList.append("accept-encoding","br, gzip, deflate",!0);else C.headersList.append("accept-encoding","gzip, deflate",!0);if(C.headersList.delete("host",!0),G==null)C.cache="no-store";if(C.cache!=="no-store"&&C.cache!=="reload");if(X==null){if(C.cache==="only-if-cached")return cB("only if cached");let $=await $x0(J,F,B);if(!dh0.has(C.method)&&$.status>=200&&$.status<=399);if(W&&$.status===304);if(X==null)X=$}if(X.urlList=[...C.urlList],C.headersList.contains("range",!0))X.rangeRequested=!0;if(X.requestIncludesCredentials=F,X.status===407){if(Y.window==="no-window")return cB();if(X4(A))return Kk(A);return cB("proxy authentication required")}if(X.status===421&&!B&&(Y.body==null||Y.body.source!=null)){if(X4(A))return Kk(A);A.controller.connection.destroy(),X=await kPQ(A,Q,!0)}return X}async function $x0(A,Q=!1,B=!1){G4(!A.controller.connection||A.controller.connection.destroyed),A.controller.connection={abort:null,destroyed:!1,destroy(K,I=!0){if(!this.destroyed){if(this.destroyed=!0,I)this.abort?.(K??new DOMException("The operation was aborted.","AbortError"))}}};let Y=A.request,J=null,C=A.timingInfo;if(!0)Y.cache="no-store";let G=B?"yes":"no";if(Y.mode==="websocket");let W=null;if(Y.body==null&&A.processRequestEndOfBody)queueMicrotask(()=>A.processRequestEndOfBody());else if(Y.body!=null){let K=async function*(H){if(X4(A))return;yield H,A.processRequestBodyChunkLength?.(H.byteLength)},I=()=>{if(X4(A))return;if(A.processRequestEndOfBody)A.processRequestEndOfBody()},V=(H)=>{if(X4(A))return;if(H.name==="AbortError")A.controller.abort();else A.controller.terminate(H)};W=async function*(){try{for await(let H of Y.body.stream)yield*K(H);I()}catch(H){V(H)}}()}try{let{body:K,status:I,statusText:V,headersList:H,socket:D}=await E({body:W});if(D)J=Vk({status:I,statusText:V,headersList:H,socket:D});else{let L=K[Symbol.asyncIterator]();A.controller.next=()=>L.next(),J=Vk({status:I,statusText:V,headersList:H})}}catch(K){if(K.name==="AbortError")return A.controller.connection.destroy(),Kk(A,K);return cB(K)}let U=new ReadableStream({start(K){A.controller.controller=K},pull:()=>{return A.controller.resume()},cancel:(K)=>{if(!X4(A))A.controller.abort(K)},type:"bytes"});if(J.body={stream:U,source:null,length:null},!A.controller.resume)A.controller.on("terminated",$);A.controller.resume=async()=>{while(!0){let K,I;try{let{done:H,value:D}=await A.controller.next();if(LPQ(A))break;K=H?void 0:D}catch(H){if(A.controller.ended&&!C.encodedBodySize)K=void 0;else K=H,I=!0}if(K===void 0){yh0(A.controller.controller),Fx0(A,J);return}if(C.decodedBodySize+=K?.byteLength??0,I){A.controller.terminate(K);return}let V=new Uint8Array(K);if(V.byteLength)A.controller.controller.enqueue(V);if(rh0(U)){A.controller.terminate();return}if(A.controller.controller.desiredSize<=0)return}};function $(K){if(LPQ(A)){if(J.aborted=!0,Hk(U))A.controller.controller.error(A.controller.serializedAbortReason)}else if(Hk(U))A.controller.controller.error(TypeError("terminated",{cause:_h0(K)?K:void 0}));A.controller.connection.destroy()}return J;function E({body:K}){let I=yX(Y),V=A.controller.dispatcher;return new Promise((H,D)=>V.dispatch({path:I.pathname+I.search,origin:I.origin,method:Y.method,body:V.isMockActive?Y.body&&(Y.body.source||Y.body.stream):K,headers:Y.headersList.entries,maxRedirections:0,upgrade:Y.mode==="websocket"?"websocket":void 0},{body:null,abort:null,onConnect(L){let{connection:z}=A.controller;if(C.finalConnectionTimingInfo=xh0(void 0,C.postRedirectStartTime,A.crossOriginIsolatedCapability),z.destroyed)L(new DOMException("The operation was aborted.","AbortError"));else A.controller.on("terminated",L),this.abort=z.abort=L;C.finalNetworkRequestStartTime=AM(A.crossOriginIsolatedCapability)},onResponseStarted(){C.finalNetworkResponseStartTime=AM(A.crossOriginIsolatedCapability)},onHeaders(L,z,M,N){if(L<200)return!1;let q=new NPQ;for(let k=0;k=0;--S){let v=T[S].trim();if(v==="x-gzip"||v==="gzip")_.push(UC.createGunzip({flush:UC.constants.Z_SYNC_FLUSH,finishFlush:UC.constants.Z_SYNC_FLUSH}));else if(v==="deflate")_.push(mh0({flush:UC.constants.Z_SYNC_FLUSH,finishFlush:UC.constants.Z_SYNC_FLUSH}));else if(v==="br")_.push(UC.createBrotliDecompress({flush:UC.constants.BROTLI_OPERATION_FLUSH,finishFlush:UC.constants.BROTLI_OPERATION_FLUSH}));else if(v==="zstd"&&Jx0)_.push(UC.createZstdDecompress({flush:UC.constants.ZSTD_e_continue,finishFlush:UC.constants.ZSTD_e_end}));else{_.length=0;break}}}let j=this.onError.bind(this);return H({status:L,statusText:N,headersList:q,body:_.length?nh0(this.body,..._,(k)=>{if(k)this.onError(k)}).on("error",j):this.body.on("error",j)}),!0},onData(L){if(A.controller.dump)return;let z=L;return C.encodedBodySize+=z.byteLength,this.body.push(z)},onComplete(){if(this.abort)A.controller.off("terminated",this.abort);A.controller.ended=!0,this.body.push(null)},onError(L){if(this.abort)A.controller.off("terminated",this.abort);this.body?.destroy(L),A.controller.terminate(L),D(L)},onUpgrade(L,z,M){if(L!==101)return;let N=new NPQ;for(let q=0;q{var Ux0=u("node:assert"),{URLSerializer:vPQ}=l8(),{isValidHeaderName:Ex0}=z9();function Kx0(A,Q,B=!1){let Y=vPQ(A,B),J=vPQ(Q,B);return Y===J}function Vx0(A){Ux0(A!==null);let Q=[];for(let B of A.split(","))if(B=B.trim(),Ex0(B))Q.push(B);return Q}yPQ.exports={urlEquals:Kx0,getFieldValues:Vx0}});var fPQ=R((nrY,xPQ)=>{var Po=u("node:assert"),{kConstruct:Ix0}=B0(),{urlEquals:Hx0,getFieldValues:To}=gPQ(),{kEnumerableProperty:W4,isDisturbed:Dx0}=lQ(),{webidl:JQ}=HJ(),{cloneResponse:Nx0,fromInnerResponse:Lx0,getResponseState:qx0}=eq(),{Request:BM,fromInnerRequest:Mx0,getRequestState:gX}=NV(),{fetching:zx0}=QM(),{urlIsHttpHttpsScheme:Nk,readAllBytes:Rx0}=z9(),{createDeferredPromise:LV}=Nq();class hX{#A;constructor(){if(arguments[0]!==Ix0)JQ.illegalConstructor();JQ.util.markAsUncloneable(this),this.#A=arguments[1]}async match(A,Q={}){JQ.brandCheck(this,hX);let B="Cache.match";JQ.argumentLengthCheck(arguments,1,B),A=JQ.converters.RequestInfo(A),Q=JQ.converters.CacheQueryOptions(Q,B,"options");let Y=this.#J(A,Q,1);if(Y.length===0)return;return Y[0]}async matchAll(A=void 0,Q={}){JQ.brandCheck(this,hX);let B="Cache.matchAll";if(A!==void 0)A=JQ.converters.RequestInfo(A);return Q=JQ.converters.CacheQueryOptions(Q,B,"options"),this.#J(A,Q)}async add(A){JQ.brandCheck(this,hX);let Q="Cache.add";JQ.argumentLengthCheck(arguments,1,Q),A=JQ.converters.RequestInfo(A);let B=[A];return await this.addAll(B)}async addAll(A){JQ.brandCheck(this,hX);let Q="Cache.addAll";JQ.argumentLengthCheck(arguments,1,Q);let B=[],Y=[];for(let U of A){if(U===void 0)throw JQ.errors.conversionFailed({prefix:Q,argument:"Argument 1",types:["undefined is not allowed"]});if(U=JQ.converters.RequestInfo(U),typeof U==="string")continue;let $=gX(U);if(!Nk($.url)||$.method!=="GET")throw JQ.errors.exception({header:Q,message:"Expected http/s scheme when method is not GET."})}let J=[];for(let U of A){let $=gX(new BM(U));if(!Nk($.url))throw JQ.errors.exception({header:Q,message:"Expected http/s scheme."});$.initiator="fetch",$.destination="subresource",Y.push($);let E=LV();J.push(zx0({request:$,processResponse(K){if(K.type==="error"||K.status===206||K.status<200||K.status>299)E.reject(JQ.errors.exception({header:"Cache.addAll",message:"Received an invalid status code or the request failed."}));else if(K.headersList.contains("vary")){let I=To(K.headersList.get("vary"));for(let V of I)if(V==="*"){E.reject(JQ.errors.exception({header:"Cache.addAll",message:"invalid vary field value"}));for(let H of J)H.abort();return}}},processResponseEndOfBody(K){if(K.aborted){E.reject(new DOMException("aborted","AbortError"));return}E.resolve(K)}})),B.push(E.promise)}let X=await Promise.all(B),G=[],W=0;for(let U of X){let $={type:"put",request:Y[W],response:U};G.push($),W++}let F=LV(),Z=null;try{this.#Q(G)}catch(U){Z=U}return queueMicrotask(()=>{if(Z===null)F.resolve(void 0);else F.reject(Z)}),F.promise}async put(A,Q){JQ.brandCheck(this,hX);let B="Cache.put";JQ.argumentLengthCheck(arguments,2,B),A=JQ.converters.RequestInfo(A),Q=JQ.converters.Response(Q,B,"response");let Y=null;if(JQ.is.Request(A))Y=gX(A);else Y=gX(new BM(A));if(!Nk(Y.url)||Y.method!=="GET")throw JQ.errors.exception({header:B,message:"Expected an http/s scheme when method is not GET"});let J=qx0(Q);if(J.status===206)throw JQ.errors.exception({header:B,message:"Got 206 status"});if(J.headersList.contains("vary")){let $=To(J.headersList.get("vary"));for(let E of $)if(E==="*")throw JQ.errors.exception({header:B,message:"Got * vary field value"})}if(J.body&&(Dx0(J.body.stream)||J.body.stream.locked))throw JQ.errors.exception({header:B,message:"Response body is locked or disturbed"});let C=Nx0(J),X=LV();if(J.body!=null){let E=J.body.stream.getReader();Rx0(E,X.resolve,X.reject)}else X.resolve(void 0);let G=[],W={type:"put",request:Y,response:C};G.push(W);let F=await X.promise;if(C.body!=null)C.body.source=F;let Z=LV(),U=null;try{this.#Q(G)}catch($){U=$}return queueMicrotask(()=>{if(U===null)Z.resolve();else Z.reject(U)}),Z.promise}async delete(A,Q={}){JQ.brandCheck(this,hX);let B="Cache.delete";JQ.argumentLengthCheck(arguments,1,B),A=JQ.converters.RequestInfo(A),Q=JQ.converters.CacheQueryOptions(Q,B,"options");let Y=null;if(JQ.is.Request(A)){if(Y=gX(A),Y.method!=="GET"&&!Q.ignoreMethod)return!1}else Po(typeof A==="string"),Y=gX(new BM(A));let J=[],C={type:"delete",request:Y,options:Q};J.push(C);let X=LV(),G=null,W;try{W=this.#Q(J)}catch(F){G=F}return queueMicrotask(()=>{if(G===null)X.resolve(!!W?.length);else X.reject(G)}),X.promise}async keys(A=void 0,Q={}){JQ.brandCheck(this,hX);let B="Cache.keys";if(A!==void 0)A=JQ.converters.RequestInfo(A);Q=JQ.converters.CacheQueryOptions(Q,B,"options");let Y=null;if(A!==void 0){if(JQ.is.Request(A)){if(Y=gX(A),Y.method!=="GET"&&!Q.ignoreMethod)return[]}else if(typeof A==="string")Y=gX(new BM(A))}let J=LV(),C=[];if(A===void 0)for(let X of this.#A)C.push(X[0]);else{let X=this.#B(Y,Q);for(let G of X)C.push(G[0])}return queueMicrotask(()=>{let X=[];for(let G of C){let W=Mx0(G,void 0,new AbortController().signal,"immutable");X.push(W)}J.resolve(Object.freeze(X))}),J.promise}#Q(A){let Q=this.#A,B=[...Q],Y=[],J=[];try{for(let C of A){if(C.type!=="delete"&&C.type!=="put")throw JQ.errors.exception({header:"Cache.#batchCacheOperations",message:'operation type does not match "delete" or "put"'});if(C.type==="delete"&&C.response!=null)throw JQ.errors.exception({header:"Cache.#batchCacheOperations",message:"delete operation should not have an associated response"});if(this.#B(C.request,C.options,Y).length)throw new DOMException("???","InvalidStateError");let X;if(C.type==="delete"){if(X=this.#B(C.request,C.options),X.length===0)return[];for(let G of X){let W=Q.indexOf(G);Po(W!==-1),Q.splice(W,1)}}else if(C.type==="put"){if(C.response==null)throw JQ.errors.exception({header:"Cache.#batchCacheOperations",message:"put operation should have an associated response"});let G=C.request;if(!Nk(G.url))throw JQ.errors.exception({header:"Cache.#batchCacheOperations",message:"expected http or https scheme"});if(G.method!=="GET")throw JQ.errors.exception({header:"Cache.#batchCacheOperations",message:"not get method"});if(C.options!=null)throw JQ.errors.exception({header:"Cache.#batchCacheOperations",message:"options must not be defined"});X=this.#B(C.request);for(let W of X){let F=Q.indexOf(W);Po(F!==-1),Q.splice(F,1)}Q.push([C.request,C.response]),Y.push([C.request,C.response])}J.push([C.request,C.response])}return J}catch(C){throw this.#A.length=0,this.#A=B,C}}#B(A,Q,B){let Y=[],J=B??this.#A;for(let C of J){let[X,G]=C;if(this.#Y(A,X,G,Q))Y.push(C)}return Y}#Y(A,Q,B=null,Y){let J=new URL(A.url),C=new URL(Q.url);if(Y?.ignoreSearch)C.search="",J.search="";if(!Hx0(J,C,!0))return!1;if(B==null||Y?.ignoreVary||!B.headersList.contains("vary"))return!0;let X=To(B.headersList.get("vary"));for(let G of X){if(G==="*")return!1;let W=Q.headersList.get(G),F=A.headersList.get(G);if(W!==F)return!1}return!0}#J(A,Q,B=1/0){let Y=null;if(A!==void 0){if(JQ.is.Request(A)){if(Y=gX(A),Y.method!=="GET"&&!Q.ignoreMethod)return[]}else if(typeof A==="string")Y=gX(new BM(A))}let J=[];if(A===void 0)for(let X of this.#A)J.push(X[1]);else{let X=this.#B(Y,Q);for(let G of X)J.push(G[1])}let C=[];for(let X of J){let G=Lx0(X,"immutable");if(C.push(G.clone()),C.length>=B)break}return Object.freeze(C)}}Object.defineProperties(hX.prototype,{[Symbol.toStringTag]:{value:"Cache",configurable:!0},match:W4,matchAll:W4,add:W4,addAll:W4,put:W4,delete:W4,keys:W4});var hPQ=[{key:"ignoreSearch",converter:JQ.converters.boolean,defaultValue:()=>!1},{key:"ignoreMethod",converter:JQ.converters.boolean,defaultValue:()=>!1},{key:"ignoreVary",converter:JQ.converters.boolean,defaultValue:()=>!1}];JQ.converters.CacheQueryOptions=JQ.dictionaryConverter(hPQ);JQ.converters.MultiCacheQueryOptions=JQ.dictionaryConverter([...hPQ,{key:"cacheName",converter:JQ.converters.DOMString}]);JQ.converters.Response=JQ.interfaceConverter(JQ.is.Response,"Response");JQ.converters["sequence"]=JQ.sequenceConverter(JQ.converters.RequestInfo);xPQ.exports={Cache:hX}});var mPQ=R((srY,bPQ)=>{var{Cache:Lk}=fPQ(),{webidl:uJ}=HJ(),{kEnumerableProperty:YM}=lQ(),{kConstruct:JM}=B0();class UF{#A=new Map;constructor(){if(arguments[0]!==JM)uJ.illegalConstructor();uJ.util.markAsUncloneable(this)}async match(A,Q={}){if(uJ.brandCheck(this,UF),uJ.argumentLengthCheck(arguments,1,"CacheStorage.match"),A=uJ.converters.RequestInfo(A),Q=uJ.converters.MultiCacheQueryOptions(Q),Q.cacheName!=null){if(this.#A.has(Q.cacheName)){let B=this.#A.get(Q.cacheName);return await new Lk(JM,B).match(A,Q)}}else for(let B of this.#A.values()){let J=await new Lk(JM,B).match(A,Q);if(J!==void 0)return J}}async has(A){uJ.brandCheck(this,UF);let Q="CacheStorage.has";return uJ.argumentLengthCheck(arguments,1,Q),A=uJ.converters.DOMString(A,Q,"cacheName"),this.#A.has(A)}async open(A){uJ.brandCheck(this,UF);let Q="CacheStorage.open";if(uJ.argumentLengthCheck(arguments,1,Q),A=uJ.converters.DOMString(A,Q,"cacheName"),this.#A.has(A)){let Y=this.#A.get(A);return new Lk(JM,Y)}let B=[];return this.#A.set(A,B),new Lk(JM,B)}async delete(A){uJ.brandCheck(this,UF);let Q="CacheStorage.delete";return uJ.argumentLengthCheck(arguments,1,Q),A=uJ.converters.DOMString(A,Q,"cacheName"),this.#A.delete(A)}async keys(){return uJ.brandCheck(this,UF),[...this.#A.keys()]}}Object.defineProperties(UF.prototype,{[Symbol.toStringTag]:{value:"CacheStorage",configurable:!0},match:YM,has:YM,open:YM,delete:YM,keys:YM});bPQ.exports={CacheStorage:UF}});var dPQ=R((rrY,uPQ)=>{uPQ.exports={maxAttributeValueSize:1024,maxNameValuePairSize:4096}});var So=R((arY,nPQ)=>{function wx0(A){for(let Q=0;Q=0&&B<=8||B>=10&&B<=31||B===127)return!0}return!1}function cPQ(A){for(let Q=0;Q126||B===34||B===40||B===41||B===60||B===62||B===64||B===44||B===59||B===58||B===92||B===47||B===91||B===93||B===63||B===61||B===123||B===125)throw Error("Invalid cookie name")}}function lPQ(A){let Q=A.length,B=0;if(A[0]==='"'){if(Q===1||A[Q-1]!=='"')throw Error("Invalid cookie value");--Q,++B}while(B126||Y===34||Y===44||Y===59||Y===92)throw Error("Invalid cookie value")}}function pPQ(A){for(let Q=0;QQ.toString().padStart(2,"0"));function iPQ(A){if(typeof A==="number")A=new Date(A);return`${Ox0[A.getUTCDay()]}, ${qk[A.getUTCDate()]} ${Px0[A.getUTCMonth()]} ${A.getUTCFullYear()} ${qk[A.getUTCHours()]}:${qk[A.getUTCMinutes()]}:${qk[A.getUTCSeconds()]} GMT`}function Tx0(A){if(A<0)throw Error("Invalid cookie max-age")}function Sx0(A){if(A.name.length===0)return null;cPQ(A.name),lPQ(A.value);let Q=[`${A.name}=${A.value}`];if(A.name.startsWith("__Secure-"))A.secure=!0;if(A.name.startsWith("__Host-"))A.secure=!0,A.domain=null,A.path="/";if(A.secure)Q.push("Secure");if(A.httpOnly)Q.push("HttpOnly");if(typeof A.maxAge==="number")Tx0(A.maxAge),Q.push(`Max-Age=${A.maxAge}`);if(A.domain)jx0(A.domain),Q.push(`Domain=${A.domain}`);if(A.path)pPQ(A.path),Q.push(`Path=${A.path}`);if(A.expires&&A.expires.toString()!=="Invalid Date")Q.push(`Expires=${iPQ(A.expires)}`);if(A.sameSite)Q.push(`SameSite=${A.sameSite}`);for(let B of A.unparsed){if(!B.includes("="))throw Error("Invalid unparsed");let[Y,...J]=B.split("=");Q.push(`${Y.trim()}=${J.join("=")}`)}return Q.join("; ")}nPQ.exports={isCTLExcludingHtab:wx0,validateCookieName:cPQ,validateCookiePath:pPQ,validateCookieValue:lPQ,toIMFDate:iPQ,stringify:Sx0}});var rPQ=R((orY,sPQ)=>{var{maxNameValuePairSize:kx0,maxAttributeValueSize:_x0}=dPQ(),{isCTLExcludingHtab:vx0}=So(),{collectASequenceOfCodePointsFast:Mk}=l8(),yx0=u("node:assert"),{unescape:gx0}=u("node:querystring");function hx0(A){if(vx0(A))return null;let Q="",B="",Y="",J="";if(A.includes(";")){let C={position:0};Q=Mk(";",A,C),B=A.slice(C.position)}else Q=A;if(!Q.includes("="))J=Q;else{let C={position:0};Y=Mk("=",Q,C),J=Q.slice(C.position+1)}if(Y=Y.trim(),J=J.trim(),Y.length+J.length>kx0)return null;return{name:Y,value:gx0(J),...qV(B)}}function qV(A,Q={}){if(A.length===0)return Q;yx0(A[0]===";"),A=A.slice(1);let B="";if(A.includes(";"))B=Mk(";",A,{position:0}),A=A.slice(B.length);else B=A,A="";let Y="",J="";if(B.includes("=")){let X={position:0};Y=Mk("=",B,X),J=B.slice(X.position+1)}else Y=B;if(Y=Y.trim(),J=J.trim(),J.length>_x0)return qV(A,Q);let C=Y.toLowerCase();if(C==="expires"){let X=new Date(J);Q.expires=X}else if(C==="max-age"){let X=J.charCodeAt(0);if((X<48||X>57)&&J[0]!=="-")return qV(A,Q);if(!/^\d+$/.test(J))return qV(A,Q);let G=Number(J);Q.maxAge=G}else if(C==="domain"){let X=J;if(X[0]===".")X=X.slice(1);X=X.toLowerCase(),Q.domain=X}else if(C==="path"){let X="";if(J.length===0||J[0]!=="/")X="/";else X=J;Q.path=X}else if(C==="secure")Q.secure=!0;else if(C==="httponly")Q.httpOnly=!0;else if(C==="samesite"){let X="Default",G=J.toLowerCase();if(G.includes("none"))X="None";if(G.includes("strict"))X="Strict";if(G.includes("lax"))X="Lax";Q.sameSite=X}else Q.unparsed??=[],Q.unparsed.push(`${Y}=${J}`);return qV(A,Q)}sPQ.exports={parseSetCookie:hx0,parseUnparsedAttributes:qV}});var ePQ=R((trY,tPQ)=>{var{parseSetCookie:aPQ}=rPQ(),{stringify:xx0}=So(),{webidl:zB}=HJ(),{Headers:fx0}=Y4(),zk=zB.brandCheckMultiple([fx0,globalThis.Headers].filter(Boolean));function bx0(A){zB.argumentLengthCheck(arguments,1,"getCookies"),zk(A);let Q=A.get("cookie"),B={};if(!Q)return B;for(let Y of Q.split(";")){let[J,...C]=Y.split("=");B[J.trim()]=C.join("=")}return B}function mx0(A,Q,B){zk(A);let Y="deleteCookie";zB.argumentLengthCheck(arguments,2,Y),Q=zB.converters.DOMString(Q,Y,"name"),B=zB.converters.DeleteCookieAttributes(B),oPQ(A,{name:Q,value:"",expires:new Date(0),...B})}function ux0(A){zB.argumentLengthCheck(arguments,1,"getSetCookies"),zk(A);let Q=A.getSetCookie();if(!Q)return[];return Q.map((B)=>aPQ(B))}function dx0(A){return A=zB.converters.DOMString(A),aPQ(A)}function oPQ(A,Q){zB.argumentLengthCheck(arguments,2,"setCookie"),zk(A),Q=zB.converters.Cookie(Q);let B=xx0(Q);if(B)A.append("set-cookie",B,!0)}zB.converters.DeleteCookieAttributes=zB.dictionaryConverter([{converter:zB.nullableConverter(zB.converters.DOMString),key:"path",defaultValue:()=>null},{converter:zB.nullableConverter(zB.converters.DOMString),key:"domain",defaultValue:()=>null}]);zB.converters.Cookie=zB.dictionaryConverter([{converter:zB.converters.DOMString,key:"name"},{converter:zB.converters.DOMString,key:"value"},{converter:zB.nullableConverter((A)=>{if(typeof A==="number")return zB.converters["unsigned long long"](A);return new Date(A)}),key:"expires",defaultValue:()=>null},{converter:zB.nullableConverter(zB.converters["long long"]),key:"maxAge",defaultValue:()=>null},{converter:zB.nullableConverter(zB.converters.DOMString),key:"domain",defaultValue:()=>null},{converter:zB.nullableConverter(zB.converters.DOMString),key:"path",defaultValue:()=>null},{converter:zB.nullableConverter(zB.converters.boolean),key:"secure",defaultValue:()=>null},{converter:zB.nullableConverter(zB.converters.boolean),key:"httpOnly",defaultValue:()=>null},{converter:zB.converters.USVString,key:"sameSite",allowedValues:["Strict","Lax","None"]},{converter:zB.sequenceConverter(zB.converters.DOMString),key:"unparsed",defaultValue:()=>[]}]);tPQ.exports={getCookies:bx0,deleteCookie:mx0,getSetCookies:ux0,setCookie:oPQ,parseCookie:dx0}});var Rk=R((erY,QTQ)=>{var{webidl:FQ}=HJ(),{kEnumerableProperty:C8}=lQ(),{kConstruct:ATQ}=B0();class r8 extends Event{#A;constructor(A,Q={}){if(A===ATQ){super(arguments[1],arguments[2]);FQ.util.markAsUncloneable(this);return}let B="MessageEvent constructor";FQ.argumentLengthCheck(arguments,1,B),A=FQ.converters.DOMString(A,B,"type"),Q=FQ.converters.MessageEventInit(Q,B,"eventInitDict");super(A,Q);this.#A=Q,FQ.util.markAsUncloneable(this)}get data(){return FQ.brandCheck(this,r8),this.#A.data}get origin(){return FQ.brandCheck(this,r8),this.#A.origin}get lastEventId(){return FQ.brandCheck(this,r8),this.#A.lastEventId}get source(){return FQ.brandCheck(this,r8),this.#A.source}get ports(){if(FQ.brandCheck(this,r8),!Object.isFrozen(this.#A.ports))Object.freeze(this.#A.ports);return this.#A.ports}initMessageEvent(A,Q=!1,B=!1,Y=null,J="",C="",X=null,G=[]){return FQ.brandCheck(this,r8),FQ.argumentLengthCheck(arguments,1,"MessageEvent.initMessageEvent"),new r8(A,{bubbles:Q,cancelable:B,data:Y,origin:J,lastEventId:C,source:X,ports:G})}static createFastMessageEvent(A,Q){let B=new r8(ATQ,A,Q);return B.#A=Q,B.#A.data??=null,B.#A.origin??="",B.#A.lastEventId??="",B.#A.source??=null,B.#A.ports??=[],B}}var{createFastMessageEvent:cx0}=r8;delete r8.createFastMessageEvent;class MV extends Event{#A;constructor(A,Q={}){FQ.argumentLengthCheck(arguments,1,"CloseEvent constructor"),A=FQ.converters.DOMString(A,"CloseEvent constructor","type"),Q=FQ.converters.CloseEventInit(Q);super(A,Q);this.#A=Q,FQ.util.markAsUncloneable(this)}get wasClean(){return FQ.brandCheck(this,MV),this.#A.wasClean}get code(){return FQ.brandCheck(this,MV),this.#A.code}get reason(){return FQ.brandCheck(this,MV),this.#A.reason}}class EF extends Event{#A;constructor(A,Q){FQ.argumentLengthCheck(arguments,1,"ErrorEvent constructor");super(A,Q);FQ.util.markAsUncloneable(this),A=FQ.converters.DOMString(A,"ErrorEvent constructor","type"),Q=FQ.converters.ErrorEventInit(Q??{}),this.#A=Q}get message(){return FQ.brandCheck(this,EF),this.#A.message}get filename(){return FQ.brandCheck(this,EF),this.#A.filename}get lineno(){return FQ.brandCheck(this,EF),this.#A.lineno}get colno(){return FQ.brandCheck(this,EF),this.#A.colno}get error(){return FQ.brandCheck(this,EF),this.#A.error}}Object.defineProperties(r8.prototype,{[Symbol.toStringTag]:{value:"MessageEvent",configurable:!0},data:C8,origin:C8,lastEventId:C8,source:C8,ports:C8,initMessageEvent:C8});Object.defineProperties(MV.prototype,{[Symbol.toStringTag]:{value:"CloseEvent",configurable:!0},reason:C8,code:C8,wasClean:C8});Object.defineProperties(EF.prototype,{[Symbol.toStringTag]:{value:"ErrorEvent",configurable:!0},message:C8,filename:C8,lineno:C8,colno:C8,error:C8});FQ.converters.MessagePort=FQ.interfaceConverter(FQ.is.MessagePort,"MessagePort");FQ.converters["sequence"]=FQ.sequenceConverter(FQ.converters.MessagePort);var ko=[{key:"bubbles",converter:FQ.converters.boolean,defaultValue:()=>!1},{key:"cancelable",converter:FQ.converters.boolean,defaultValue:()=>!1},{key:"composed",converter:FQ.converters.boolean,defaultValue:()=>!1}];FQ.converters.MessageEventInit=FQ.dictionaryConverter([...ko,{key:"data",converter:FQ.converters.any,defaultValue:()=>null},{key:"origin",converter:FQ.converters.USVString,defaultValue:()=>""},{key:"lastEventId",converter:FQ.converters.DOMString,defaultValue:()=>""},{key:"source",converter:FQ.nullableConverter(FQ.converters.MessagePort),defaultValue:()=>null},{key:"ports",converter:FQ.converters["sequence"],defaultValue:()=>[]}]);FQ.converters.CloseEventInit=FQ.dictionaryConverter([...ko,{key:"wasClean",converter:FQ.converters.boolean,defaultValue:()=>!1},{key:"code",converter:FQ.converters["unsigned short"],defaultValue:()=>0},{key:"reason",converter:FQ.converters.USVString,defaultValue:()=>""}]);FQ.converters.ErrorEventInit=FQ.dictionaryConverter([...ko,{key:"message",converter:FQ.converters.DOMString,defaultValue:()=>""},{key:"filename",converter:FQ.converters.USVString,defaultValue:()=>""},{key:"lineno",converter:FQ.converters["unsigned long"],defaultValue:()=>0},{key:"colno",converter:FQ.converters["unsigned long"],defaultValue:()=>0},{key:"error",converter:FQ.converters.any}]);QTQ.exports={MessageEvent:r8,CloseEvent:MV,ErrorEvent:EF,createFastMessageEvent:cx0}});var KF=R((AaY,BTQ)=>{var lx0={enumerable:!0,writable:!1,configurable:!1},px0={CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3},ix0={SENT:1,RECEIVED:2},nx0={CONTINUATION:0,TEXT:1,BINARY:2,CLOSE:8,PING:9,PONG:10},sx0={INFO:0,PAYLOADLENGTH_16:2,PAYLOADLENGTH_64:3,READ_DATA:4},rx0=Buffer.allocUnsafe(0),ax0={text:1,typedArray:2,arrayBuffer:3,blob:4};BTQ.exports={uid:"258EAFA5-E914-47DA-95CA-C5AB0DC85B11",sentCloseFrameState:ix0,staticPropertyDescriptors:lx0,states:px0,opcodes:nx0,maxUnsigned16Bit:65535,parserStates:sx0,emptyBuffer:rx0,sendHints:ax0}});var F4=R((QaY,GTQ)=>{var{states:wk,opcodes:zV}=KF(),{isUtf8:ox0}=u("node:buffer"),{collectASequenceOfCodePointsFast:tx0,removeHTTPWhitespace:YTQ}=l8();function ex0(A){return A===wk.CONNECTING}function Af0(A){return A===wk.OPEN}function Qf0(A){return A===wk.CLOSING}function Bf0(A){return A===wk.CLOSED}function Yf0(A,Q,B=(J,C)=>new Event(J,C),Y={}){let J=B(A,Y);Q.dispatchEvent(J)}function Jf0(A,Q,B){A.onMessage(Q,B)}function Cf0(A){if(A.byteLength===A.buffer.byteLength)return A.buffer;return new Uint8Array(A).buffer}function Xf0(A){if(A.length===0)return!1;for(let Q=0;Q126||B===34||B===40||B===41||B===44||B===47||B===58||B===59||B===60||B===61||B===62||B===63||B===64||B===91||B===92||B===93||B===123||B===125)return!1}return!0}function Gf0(A){if(A>=1000&&A<1015)return A!==1004&&A!==1005&&A!==1006;return A>=3000&&A<=4999}function JTQ(A){return A===zV.CLOSE||A===zV.PING||A===zV.PONG}function CTQ(A){return A===zV.CONTINUATION}function XTQ(A){return A===zV.TEXT||A===zV.BINARY}function Wf0(A){return XTQ(A)||CTQ(A)||JTQ(A)}function Ff0(A){let Q={position:0},B=new Map;while(Q.position57)return!1}return!0}function $f0(A,Q){let B;try{B=new URL(A,Q)}catch(Y){throw new DOMException(Y,"SyntaxError")}if(B.protocol==="http:")B.protocol="ws:";else if(B.protocol==="https:")B.protocol="wss:";if(B.protocol!=="ws:"&&B.protocol!=="wss:")throw new DOMException("expected a ws: or wss: url","SyntaxError");if(B.hash.length||B.href.endsWith("#"))throw new DOMException("hash","SyntaxError");return B}function Uf0(A,Q){if(A!==null){if(A!==1000&&(A<3000||A>4999))throw new DOMException("invalid code","InvalidAccessError")}if(Q!==null){let B=Buffer.byteLength(Q);if(B>123)throw new DOMException(`Reason must be less than 123 bytes; received ${B}`,"SyntaxError")}}var Ef0=(()=>{if(typeof process.versions.icu==="string"){let A=new TextDecoder("utf-8",{fatal:!0});return A.decode.bind(A)}return function(A){if(ox0(A))return A.toString("utf-8");throw TypeError("Invalid utf-8 received.")}})();GTQ.exports={isConnecting:ex0,isEstablished:Af0,isClosing:Qf0,isClosed:Bf0,fireEvent:Yf0,isValidSubprotocol:Xf0,isValidStatusCode:Gf0,websocketMessageReceived:Jf0,utf8Decode:Ef0,isControlFrame:JTQ,isContinuationFrame:CTQ,isTextBinaryFrame:XTQ,isValidOpcode:Wf0,parseExtensions:Ff0,isValidClientWindowBits:Zf0,toArrayBuffer:Cf0,getURLRecord:$f0,validateCloseCodeAndReason:Uf0}});var wV=R((BaY,ZTQ)=>{var{maxUnsigned16Bit:WTQ,opcodes:Kf0}=KF(),_o,CM=null,RV=8192;try{_o=u("node:crypto")}catch{_o={randomFillSync:function(Q,B,Y){for(let J=0;JWTQ)C+=8,J=127;else if(Y>125)C+=2,J=126;let X=Buffer.allocUnsafe(Y+C);X[0]=X[1]=0,X[0]|=128,X[0]=(X[0]&240)+A;/*! ws. MIT License. Einar Otto Stangvik */if(X[C-4]=B[0],X[C-3]=B[1],X[C-2]=B[2],X[C-1]=B[3],X[1]=J,J===126)X.writeUInt16BE(Y,2);else if(J===127)X[2]=X[3]=0,X.writeUIntBE(Y,4,6);X[1]|=128;for(let G=0;GWTQ)J+=8,Y=127;else if(B>125)J+=2,Y=126;let C=Buffer.allocUnsafeSlow(J);if(C[0]=128|Kf0.TEXT,C[1]=Y|128,C[J-4]=Q[0],C[J-3]=Q[1],C[J-2]=Q[2],C[J-1]=Q[3],Y===126)C.writeUInt16BE(B,2);else if(Y===127)C[2]=C[3]=0,C.writeUIntBE(B,4,6);return[C,A]}}ZTQ.exports={WebsocketFrameSend:FTQ,generateMask:vo}});var Ok=R((YaY,KTQ)=>{var{uid:Vf0,states:jk,sentCloseFrameState:yo,emptyBuffer:$TQ,opcodes:If0}=KF(),{parseExtensions:Hf0,isClosed:Df0,isClosing:Nf0,isEstablished:UTQ,validateCloseCodeAndReason:Lf0}=F4(),{makeRequest:qf0}=NV(),{fetching:Mf0}=QM(),{Headers:zf0,getHeadersList:Rf0}=Y4(),{getDecodeSplit:wf0}=z9(),{WebsocketFrameSend:jf0}=wV(),Of0=u("node:assert"),go;try{go=u("node:crypto")}catch{}function Pf0(A,Q,B,Y,J){let C=A;C.protocol=A.protocol==="ws:"?"http:":"https:";let X=qf0({urlList:[C],client:B,serviceWorkers:"none",referrer:"no-referrer",mode:"websocket",credentials:"include",cache:"no-store",redirect:"error"});if(J.headers){let Z=Rf0(new zf0(J.headers));X.headersList=Z}let G=go.randomBytes(16).toString("base64");X.headersList.append("sec-websocket-key",G,!0),X.headersList.append("sec-websocket-version","13",!0);for(let Z of Q)X.headersList.append("sec-websocket-protocol",Z,!0);let W="permessage-deflate; client_max_window_bits";return X.headersList.append("sec-websocket-extensions",W,!0),Mf0({request:X,useParallelQueue:!0,dispatcher:J.dispatcher,processResponse(Z){if(Z.type==="error")Y.readyState=jk.CLOSED;if(Z.type==="error"||Z.status!==101){mG(Y,1002,"Received network error or non-101 status code.",Z.error);return}if(Q.length!==0&&!Z.headersList.get("Sec-WebSocket-Protocol")){mG(Y,1002,"Server did not respond with sent protocols.");return}if(Z.headersList.get("Upgrade")?.toLowerCase()!=="websocket"){mG(Y,1002,'Server did not set Upgrade header to "websocket".');return}if(Z.headersList.get("Connection")?.toLowerCase()!=="upgrade"){mG(Y,1002,'Server did not set Connection header to "upgrade".');return}let U=Z.headersList.get("Sec-WebSocket-Accept"),$=go.createHash("sha1").update(G+Vf0).digest("base64");if(U!==$){mG(Y,1002,"Incorrect hash received in Sec-WebSocket-Accept header.");return}let E=Z.headersList.get("Sec-WebSocket-Extensions"),K;if(E!==null){if(K=Hf0(E),!K.has("permessage-deflate")){mG(Y,1002,"Sec-WebSocket-Extensions header does not match.");return}}let I=Z.headersList.get("Sec-WebSocket-Protocol");if(I!==null){if(!wf0("sec-websocket-protocol",X.headersList).includes(I)){mG(Y,1002,"Protocol was not set in the opening handshake.");return}}Z.socket.on("data",Y.onSocketData),Z.socket.on("close",Y.onSocketClose),Z.socket.on("error",Y.onSocketError),Y.wasEverConnected=!0,Y.onConnectionEstablished(Z,K)}})}function ETQ(A,Q,B,Y=!1){if(Q??=null,B??="",Y)Lf0(Q,B);if(Df0(A.readyState)||Nf0(A.readyState));else if(!UTQ(A.readyState))mG(A),A.readyState=jk.CLOSING;else if(!A.closeState.has(yo.SENT)&&!A.closeState.has(yo.RECEIVED)){let J=new jf0;if(B.length!==0&&Q===null)Q=1000;if(Of0(Q===null||Number.isInteger(Q)),Q===null&&B.length===0)J.frameData=$TQ;else if(Q!==null&&B===null)J.frameData=Buffer.allocUnsafe(2),J.frameData.writeUInt16BE(Q,0);else if(Q!==null&&B!==null)J.frameData=Buffer.allocUnsafe(2+Buffer.byteLength(B)),J.frameData.writeUInt16BE(Q,0),J.frameData.write(B,2,"utf-8");else J.frameData=$TQ;A.socket.write(J.createFrame(If0.CLOSE)),A.closeState.add(yo.SENT),A.readyState=jk.CLOSING}else A.readyState=jk.CLOSING}function mG(A,Q,B,Y){if(UTQ(A.readyState))ETQ(A,Q,B,!1);if(A.controller.abort(),!A.socket)A.onSocketClose();else if(A.socket.destroyed===!1)A.socket.destroy()}KTQ.exports={establishWebSocketConnection:Pf0,failWebsocketConnection:mG,closeWebSocketConnection:ETQ}});var HTQ=R((JaY,ITQ)=>{var{createInflateRaw:Tf0,Z_DEFAULT_WINDOWBITS:Sf0}=u("node:zlib"),{isValidClientWindowBits:kf0}=F4(),_f0=Buffer.from([0,0,255,255]),Pk=Symbol("kBuffer"),Tk=Symbol("kLength");class VTQ{#A;#Q={};constructor(A){this.#Q.serverNoContextTakeover=A.has("server_no_context_takeover"),this.#Q.serverMaxWindowBits=A.get("server_max_window_bits")}decompress(A,Q,B){if(!this.#A){let Y=Sf0;if(this.#Q.serverMaxWindowBits){if(!kf0(this.#Q.serverMaxWindowBits)){B(Error("Invalid server_max_window_bits"));return}Y=Number.parseInt(this.#Q.serverMaxWindowBits)}this.#A=Tf0({windowBits:Y}),this.#A[Pk]=[],this.#A[Tk]=0,this.#A.on("data",(J)=>{this.#A[Pk].push(J),this.#A[Tk]+=J.length}),this.#A.on("error",(J)=>{this.#A=null,B(J)})}if(this.#A.write(A),Q)this.#A.write(_f0);this.#A.flush(()=>{let Y=Buffer.concat(this.#A[Pk],this.#A[Tk]);this.#A[Pk].length=0,this.#A[Tk]=0,B(null,Y)})}}ITQ.exports={PerMessageDeflate:VTQ}});var xo=R((CaY,zTQ)=>{var{Writable:vf0}=u("node:stream"),yf0=u("node:assert"),{parserStates:X8,opcodes:jV,states:gf0,emptyBuffer:DTQ,sentCloseFrameState:XM}=KF(),{isValidStatusCode:hf0,isValidOpcode:xf0,websocketMessageReceived:NTQ,utf8Decode:ff0,isControlFrame:LTQ,isTextBinaryFrame:ho,isContinuationFrame:bf0}=F4(),{failWebsocketConnection:a8}=Ok(),{WebsocketFrameSend:qTQ}=wV(),{PerMessageDeflate:mf0}=HTQ();class MTQ extends vf0{#A=[];#Q=0;#B=0;#Y=!1;#J=X8.INFO;#C={};#W=[];#X;#G;constructor(A,Q){super();if(this.#G=A,this.#X=Q==null?new Map:Q,this.#X.has("permessage-deflate"))this.#X.set("permessage-deflate",new mf0(Q))}_write(A,Q,B){this.#A.push(A),this.#B+=A.length,this.#Y=!0,this.run(B)}run(A){while(this.#Y)if(this.#J===X8.INFO){if(this.#B<2)return A();let Q=this.consume(2),B=(Q[0]&128)!==0,Y=Q[0]&15,J=(Q[1]&128)===128,C=!B&&Y!==jV.CONTINUATION,X=Q[1]&127,G=Q[0]&64,W=Q[0]&32,F=Q[0]&16;if(!xf0(Y))return a8(this.#G,1002,"Invalid opcode received"),A();if(J)return a8(this.#G,1002,"Frame cannot be masked"),A();if(G!==0&&!this.#X.has("permessage-deflate")){a8(this.#G,1002,"Expected RSV1 to be clear.");return}if(W!==0||F!==0){a8(this.#G,1002,"RSV1, RSV2, RSV3 must be clear");return}if(C&&!ho(Y)){a8(this.#G,1002,"Invalid frame type was fragmented.");return}if(ho(Y)&&this.#W.length>0){a8(this.#G,1002,"Expected continuation frame");return}if(this.#C.fragmented&&C){a8(this.#G,1002,"Fragmented frame exceeded 125 bytes.");return}if((X>125||C)&<Q(Y)){a8(this.#G,1002,"Control frame either too large or fragmented");return}if(bf0(Y)&&this.#W.length===0&&!this.#C.compressed){a8(this.#G,1002,"Unexpected continuation frame");return}if(X<=125)this.#C.payloadLength=X,this.#J=X8.READ_DATA;else if(X===126)this.#J=X8.PAYLOADLENGTH_16;else if(X===127)this.#J=X8.PAYLOADLENGTH_64;if(ho(Y))this.#C.binaryType=Y,this.#C.compressed=G!==0;this.#C.opcode=Y,this.#C.masked=J,this.#C.fin=B,this.#C.fragmented=C}else if(this.#J===X8.PAYLOADLENGTH_16){if(this.#B<2)return A();let Q=this.consume(2);this.#C.payloadLength=Q.readUInt16BE(0),this.#J=X8.READ_DATA}else if(this.#J===X8.PAYLOADLENGTH_64){if(this.#B<8)return A();let Q=this.consume(8),B=Q.readUInt32BE(0);if(B>2147483647){a8(this.#G,1009,"Received payload length > 2^31 bytes.");return}let Y=Q.readUInt32BE(4);this.#C.payloadLength=(B<<8)+Y,this.#J=X8.READ_DATA}else if(this.#J===X8.READ_DATA){if(this.#B{if(B){a8(this.#G,1007,B.message);return}if(this.writeFragments(Y),!this.#C.fin){this.#J=X8.INFO,this.#Y=!0,this.run(A);return}NTQ(this.#G,this.#C.binaryType,this.consumeFragments()),this.#Y=!0,this.#J=X8.INFO,this.run(A)}),this.#Y=!1;break}}}consume(A){if(A>this.#B)throw Error("Called consume() before buffers satiated.");else if(A===0)return DTQ;this.#B-=A;let Q=this.#A[0];if(Q.length>A)return this.#A[0]=Q.subarray(A,Q.length),Q.subarray(0,A);else if(Q.length===A)return this.#A.shift();else{let B=0,Y=Buffer.allocUnsafeSlow(A);while(B!==A){let J=this.#A[0],C=J.length;if(C+B===A){Y.set(this.#A.shift(),B);break}else if(C+B>A){Y.set(J.subarray(0,A-B),B),this.#A[0]=J.subarray(A-B);break}else Y.set(this.#A.shift(),B),B+=C}return Y}}writeFragments(A){this.#Q+=A.length,this.#W.push(A)}consumeFragments(){let A=this.#W;if(A.length===1)return this.#Q=0,A.shift();let Q=0,B=Buffer.allocUnsafeSlow(this.#Q);for(let Y=0;Y=2)Q=A.readUInt16BE(0);if(Q!==void 0&&!hf0(Q))return{code:1002,reason:"Invalid status code",error:!0};let B=A.subarray(2);if(B[0]===239&&B[1]===187&&B[2]===191)B=B.subarray(3);try{B=ff0(B)}catch{return{code:1007,reason:"Invalid UTF-8",error:!0}}return{code:Q,reason:B,error:!1}}parseControlFrame(A){let{opcode:Q,payloadLength:B}=this.#C;if(Q===jV.CLOSE){if(B===1)return a8(this.#G,1002,"Received close frame with a 1-byte body."),!1;if(this.#C.closeInfo=this.parseCloseBody(A),this.#C.closeInfo.error){let{code:Y,reason:J}=this.#C.closeInfo;return a8(this.#G,Y,J),!1}if(!this.#G.closeState.has(XM.SENT)&&!this.#G.closeState.has(XM.RECEIVED)){let Y=DTQ;if(this.#C.closeInfo.code)Y=Buffer.allocUnsafe(2),Y.writeUInt16BE(this.#C.closeInfo.code,0);let J=new qTQ(Y);this.#G.socket.write(J.createFrame(jV.CLOSE)),this.#G.closeState.add(XM.SENT)}return this.#G.readyState=gf0.CLOSING,this.#G.closeState.add(XM.RECEIVED),!1}else if(Q===jV.PING){if(!this.#G.closeState.has(XM.RECEIVED)){let Y=new qTQ(A);this.#G.socket.write(Y.createFrame(jV.PONG)),this.#G.onPing(A)}}else if(Q===jV.PONG)this.#G.onPong(A);return!0}get closingInfo(){return this.#C.closeInfo}}zTQ.exports={ByteParser:MTQ}});var PTQ=R((XaY,OTQ)=>{var{WebsocketFrameSend:wTQ}=wV(),{opcodes:RTQ,sendHints:Z4}=KF(),uf0=Ba();class jTQ{#A=new uf0;#Q=!1;#B;constructor(A){this.#B=A}add(A,Q,B){if(B!==Z4.blob){if(!this.#Q)if(B===Z4.text){let{0:J,1:C}=wTQ.createFastTextFrame(A);this.#B.cork(),this.#B.write(J),this.#B.write(C,Q),this.#B.uncork()}else this.#B.write(fo(A,B),Q);else{let J={promise:null,callback:Q,frame:fo(A,B)};this.#A.push(J)}return}let Y={promise:A.arrayBuffer().then((J)=>{Y.promise=null,Y.frame=fo(J,B)}),callback:Q,frame:null};if(this.#A.push(Y),!this.#Q)this.#Y()}async#Y(){this.#Q=!0;let A=this.#A;while(!A.isEmpty()){let Q=A.shift();if(Q.promise!==null)await Q.promise;this.#B.write(Q.frame,Q.callback),Q.callback=Q.frame=null}this.#Q=!1}}function fo(A,Q){return new wTQ(df0(A,Q)).createFrame(Q===Z4.text?RTQ.TEXT:RTQ.BINARY)}function df0(A,Q){switch(Q){case Z4.text:case Z4.typedArray:return new Uint8Array(A.buffer,A.byteOffset,A.byteLength);case Z4.arrayBuffer:case Z4.blob:return new Uint8Array(A)}}OTQ.exports={SendQueue:jTQ}});var yTQ=R((GaY,vTQ)=>{var{isArrayBuffer:cf0}=u("node:util/types"),{webidl:$Q}=HJ(),{URLSerializer:lf0}=l8(),{environmentSettingsObject:TTQ}=z9(),{staticPropertyDescriptors:VF,states:uG,sentCloseFrameState:bo,sendHints:Sk,opcodes:mo}=KF(),{isConnecting:pf0,isEstablished:STQ,isClosing:kTQ,isClosed:if0,isValidSubprotocol:nf0,fireEvent:kk,utf8Decode:sf0,toArrayBuffer:rf0,getURLRecord:af0}=F4(),{establishWebSocketConnection:of0,closeWebSocketConnection:tf0,failWebsocketConnection:_TQ}=Ok(),{ByteParser:ef0}=xo(),{kEnumerableProperty:EC}=lQ(),{getGlobalDispatcher:Ab0}=Ak(),{ErrorEvent:Qb0,CloseEvent:Bb0,createFastMessageEvent:Yb0}=Rk(),{SendQueue:Jb0}=PTQ(),{WebsocketFrameSend:Cb0}=wV(),{channels:xX}=x$();class _B extends EventTarget{#A={open:null,error:null,close:null,message:null};#Q=0;#B="";#Y="";#J;#C={onConnectionEstablished:(A,Q)=>this.#Z(A,Q),onMessage:(A,Q)=>this.#U(A,Q),onParserError:(A)=>_TQ(this.#C,null,A.message),onParserDrain:()=>this.#F(),onSocketData:(A)=>{if(!this.#G.write(A))this.#C.socket.pause()},onSocketError:(A)=>{if(this.#C.readyState=uG.CLOSING,xX.socketError.hasSubscribers)xX.socketError.publish(A);this.#C.socket.destroy()},onSocketClose:()=>this.#E(),onPing:(A)=>{if(xX.ping.hasSubscribers)xX.ping.publish({payload:A,websocket:this})},onPong:(A)=>{if(xX.pong.hasSubscribers)xX.pong.publish({payload:A,websocket:this})},readyState:uG.CONNECTING,socket:null,closeState:new Set,controller:null,wasEverConnected:!1};#W;#X;#G;constructor(A,Q=[]){super();$Q.util.markAsUncloneable(this);let B="WebSocket constructor";$Q.argumentLengthCheck(arguments,1,B);let Y=$Q.converters["DOMString or sequence or WebSocketInit"](Q,B,"options");A=$Q.converters.USVString(A),Q=Y.protocols;let J=TTQ.settingsObject.baseUrl,C=af0(A,J);if(typeof Q==="string")Q=[Q];if(Q.length!==new Set(Q.map((G)=>G.toLowerCase())).size)throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");if(Q.length>0&&!Q.every((G)=>nf0(G)))throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");this.#W=new URL(C.href);let X=TTQ.settingsObject;this.#C.controller=of0(C,Q,X,this.#C,Y),this.#C.readyState=_B.CONNECTING,this.#X="blob"}close(A=void 0,Q=void 0){$Q.brandCheck(this,_B);let B="WebSocket.close";if(A!==void 0)A=$Q.converters["unsigned short"](A,B,"code",$Q.attributes.Clamp);if(Q!==void 0)Q=$Q.converters.USVString(Q);A??=null,Q??="",tf0(this.#C,A,Q,!0)}send(A){$Q.brandCheck(this,_B);let Q="WebSocket.send";if($Q.argumentLengthCheck(arguments,1,Q),A=$Q.converters.WebSocketSendData(A,Q,"data"),pf0(this.#C.readyState))throw new DOMException("Sent before connected.","InvalidStateError");if(!STQ(this.#C.readyState)||kTQ(this.#C.readyState))return;if(typeof A==="string"){let B=Buffer.from(A);this.#Q+=B.byteLength,this.#J.add(B,()=>{this.#Q-=B.byteLength},Sk.text)}else if(cf0(A))this.#Q+=A.byteLength,this.#J.add(A,()=>{this.#Q-=A.byteLength},Sk.arrayBuffer);else if(ArrayBuffer.isView(A))this.#Q+=A.byteLength,this.#J.add(A,()=>{this.#Q-=A.byteLength},Sk.typedArray);else if($Q.is.Blob(A))this.#Q+=A.size,this.#J.add(A,()=>{this.#Q-=A.size},Sk.blob)}get readyState(){return $Q.brandCheck(this,_B),this.#C.readyState}get bufferedAmount(){return $Q.brandCheck(this,_B),this.#Q}get url(){return $Q.brandCheck(this,_B),lf0(this.#W)}get extensions(){return $Q.brandCheck(this,_B),this.#Y}get protocol(){return $Q.brandCheck(this,_B),this.#B}get onopen(){return $Q.brandCheck(this,_B),this.#A.open}set onopen(A){if($Q.brandCheck(this,_B),this.#A.open)this.removeEventListener("open",this.#A.open);let Q=$Q.converters.EventHandlerNonNull(A);if(Q!==null)this.addEventListener("open",Q),this.#A.open=A;else this.#A.open=null}get onerror(){return $Q.brandCheck(this,_B),this.#A.error}set onerror(A){if($Q.brandCheck(this,_B),this.#A.error)this.removeEventListener("error",this.#A.error);let Q=$Q.converters.EventHandlerNonNull(A);if(Q!==null)this.addEventListener("error",Q),this.#A.error=A;else this.#A.error=null}get onclose(){return $Q.brandCheck(this,_B),this.#A.close}set onclose(A){if($Q.brandCheck(this,_B),this.#A.close)this.removeEventListener("close",this.#A.close);let Q=$Q.converters.EventHandlerNonNull(A);if(Q!==null)this.addEventListener("close",Q),this.#A.close=A;else this.#A.close=null}get onmessage(){return $Q.brandCheck(this,_B),this.#A.message}set onmessage(A){if($Q.brandCheck(this,_B),this.#A.message)this.removeEventListener("message",this.#A.message);let Q=$Q.converters.EventHandlerNonNull(A);if(Q!==null)this.addEventListener("message",Q),this.#A.message=A;else this.#A.message=null}get binaryType(){return $Q.brandCheck(this,_B),this.#X}set binaryType(A){if($Q.brandCheck(this,_B),A!=="blob"&&A!=="arraybuffer")this.#X="blob";else this.#X=A}#Z(A,Q){this.#C.socket=A.socket;let B=new ef0(this.#C,Q);B.on("drain",()=>this.#C.onParserDrain()),B.on("error",(C)=>this.#C.onParserError(C)),this.#G=B,this.#J=new Jb0(A.socket),this.#C.readyState=uG.OPEN;let Y=A.headersList.get("sec-websocket-extensions");if(Y!==null)this.#Y=Y;let J=A.headersList.get("sec-websocket-protocol");if(J!==null)this.#B=J;if(kk("open",this),xX.open.hasSubscribers){let C=A.headersList.entries;xX.open.publish({address:A.socket.address(),protocol:this.#B,extensions:this.#Y,websocket:this,handshakeResponse:{status:A.status,statusText:A.statusText,headers:C}})}}#U(A,Q){if(this.#C.readyState!==uG.OPEN)return;let B;if(A===mo.TEXT)try{B=sf0(Q)}catch{_TQ(this.#C,1007,"Received invalid UTF-8 in text frame.");return}else if(A===mo.BINARY)if(this.#X==="blob")B=new Blob([Q]);else B=rf0(Q);kk("message",this,Yb0,{origin:this.#W.origin,data:B})}#F(){this.#C.socket.resume()}#E(){let A=this.#C.closeState.has(bo.SENT)&&this.#C.closeState.has(bo.RECEIVED),Q=1005,B="",Y=this.#G?.closingInfo;if(Y&&!Y.error)Q=Y.code??1005,B=Y.reason;if(this.#C.readyState=uG.CLOSED,!this.#C.closeState.has(bo.RECEIVED))Q=1006,kk("error",this,(J,C)=>new Qb0(J,C),{error:TypeError(B)});if(kk("close",this,(J,C)=>new Bb0(J,C),{wasClean:A,code:Q,reason:B}),xX.close.hasSubscribers)xX.close.publish({websocket:this,code:Q,reason:B})}static ping(A,Q){if(Buffer.isBuffer(Q)){if(Q.length>125)throw TypeError("A PING frame cannot have a body larger than 125 bytes.")}else if(Q!==void 0)throw TypeError("Expected buffer payload");let B=A.#C.readyState;if(STQ(B)&&!kTQ(B)&&!if0(B)){let Y=new Cb0(Q);A.#C.socket.write(Y.createFrame(mo.PING))}}}var{ping:Xb0}=_B;Reflect.deleteProperty(_B,"ping");_B.CONNECTING=_B.prototype.CONNECTING=uG.CONNECTING;_B.OPEN=_B.prototype.OPEN=uG.OPEN;_B.CLOSING=_B.prototype.CLOSING=uG.CLOSING;_B.CLOSED=_B.prototype.CLOSED=uG.CLOSED;Object.defineProperties(_B.prototype,{CONNECTING:VF,OPEN:VF,CLOSING:VF,CLOSED:VF,url:EC,readyState:EC,bufferedAmount:EC,onopen:EC,onerror:EC,onclose:EC,close:EC,onmessage:EC,binaryType:EC,send:EC,extensions:EC,protocol:EC,[Symbol.toStringTag]:{value:"WebSocket",writable:!1,enumerable:!1,configurable:!0}});Object.defineProperties(_B,{CONNECTING:VF,OPEN:VF,CLOSING:VF,CLOSED:VF});$Q.converters["sequence"]=$Q.sequenceConverter($Q.converters.DOMString);$Q.converters["DOMString or sequence"]=function(A,Q,B){if($Q.util.Type(A)===$Q.util.Types.OBJECT&&Symbol.iterator in A)return $Q.converters["sequence"](A);return $Q.converters.DOMString(A,Q,B)};$Q.converters.WebSocketInit=$Q.dictionaryConverter([{key:"protocols",converter:$Q.converters["DOMString or sequence"],defaultValue:()=>[]},{key:"dispatcher",converter:$Q.converters.any,defaultValue:()=>Ab0()},{key:"headers",converter:$Q.nullableConverter($Q.converters.HeadersInit)}]);$Q.converters["DOMString or sequence or WebSocketInit"]=function(A){if($Q.util.Type(A)===$Q.util.Types.OBJECT&&!(Symbol.iterator in A))return $Q.converters.WebSocketInit(A);return{protocols:$Q.converters["DOMString or sequence"](A)}};$Q.converters.WebSocketSendData=function(A){if($Q.util.Type(A)===$Q.util.Types.OBJECT){if($Q.is.Blob(A))return A;if($Q.is.BufferSource(A))return A}return $Q.converters.USVString(A)};vTQ.exports={WebSocket:_B,ping:Xb0}});var uo=R((WaY,xTQ)=>{var{webidl:_k}=HJ(),{validateCloseCodeAndReason:Gb0}=F4(),{kConstruct:gTQ}=B0(),{kEnumerableProperty:hTQ}=lQ();function Wb0(){class A extends DOMException{get reason(){return""}}if(new A().reason!==void 0)return DOMException;return new Proxy(DOMException,{construct(Q,B,Y){let J=Reflect.construct(Q,B,Q);return Object.setPrototypeOf(J,Y.prototype),J}})}class $4 extends Wb0(){#A;#Q;constructor(A="",Q=void 0){A=_k.converters.DOMString(A,"WebSocketError","message");super(A,"WebSocketError");if(Q===gTQ)return;else if(Q!==null)Q=_k.converters.WebSocketCloseInfo(Q);let B=Q.closeCode??null,Y=Q.reason??"";if(Gb0(B,Y),Y.length!==0&&B===null)B=1000;this.#A=B,this.#Q=Y}get closeCode(){return this.#A}get reason(){return this.#Q}static createUnvalidatedWebSocketError(A,Q,B){let Y=new $4(A,gTQ);return Y.#A=Q,Y.#Q=B,Y}}var{createUnvalidatedWebSocketError:Fb0}=$4;delete $4.createUnvalidatedWebSocketError;Object.defineProperties($4.prototype,{closeCode:hTQ,reason:hTQ,[Symbol.toStringTag]:{value:"WebSocketError",writable:!1,enumerable:!1,configurable:!0}});_k.is.WebSocketError=_k.util.MakeTypeAssertion($4);xTQ.exports={WebSocketError:$4,createUnvalidatedWebSocketError:Fb0}});var dTQ=R((FaY,uTQ)=>{var{createDeferredPromise:co}=Nq(),{environmentSettingsObject:fTQ}=z9(),{states:OV,opcodes:vk,sentCloseFrameState:PV}=KF(),{webidl:e0}=HJ(),{getURLRecord:Zb0,isValidSubprotocol:$b0,isEstablished:Ub0,utf8Decode:Eb0}=F4(),{establishWebSocketConnection:Kb0,failWebsocketConnection:lo,closeWebSocketConnection:po}=Ok(),{channels:bTQ}=x$(),{WebsocketFrameSend:Vb0}=wV(),{ByteParser:Ib0}=xo(),{WebSocketError:Hb0,createUnvalidatedWebSocketError:Db0}=uo(),{utf8DecodeBytes:Nb0}=z9(),{kEnumerableProperty:yk}=lQ(),mTQ=!1;class io{#A;#Q;#B;#Y;#J;#C;#W=!1;#X={onConnectionEstablished:(A,Q)=>this.#U(A,Q),onMessage:(A,Q)=>this.#F(A,Q),onParserError:(A)=>lo(this.#X,null,A.message),onParserDrain:()=>this.#X.socket.resume(),onSocketData:(A)=>{if(!this.#G.write(A))this.#X.socket.pause()},onSocketError:(A)=>{if(this.#X.readyState=OV.CLOSING,bTQ.socketError.hasSubscribers)bTQ.socketError.publish(A);this.#X.socket.destroy()},onSocketClose:()=>this.#E(),onPing:()=>{},onPong:()=>{},readyState:OV.CONNECTING,socket:null,closeState:new Set,controller:null,wasEverConnected:!1};#G;constructor(A,Q=void 0){if(!mTQ)process.emitWarning("WebSocketStream is experimental! Expect it to change at any time.",{code:"UNDICI-WSS"}),mTQ=!0;if(e0.argumentLengthCheck(arguments,1,"WebSocket"),A=e0.converters.USVString(A),Q!==null)Q=e0.converters.WebSocketStreamOptions(Q);let B=fTQ.settingsObject.baseUrl,Y=Zb0(A,B),J=Q.protocols;if(J.length!==new Set(J.map((X)=>X.toLowerCase())).size)throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");if(J.length>0&&!J.every((X)=>$b0(X)))throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");if(this.#A=Y.toString(),this.#Q=co(),this.#B=co(),Q.signal!=null){let X=Q.signal;if(X.aborted){this.#Q.reject(X.reason),this.#B.reject(X.reason);return}X.addEventListener("abort",()=>{if(!Ub0(this.#X.readyState))lo(this.#X),this.#X.readyState=OV.CLOSING,this.#Q.reject(X.reason),this.#B.reject(X.reason),this.#W=!0},{once:!0})}let C=fTQ.settingsObject;this.#X.controller=Kb0(Y,J,C,this.#X,Q)}get url(){return this.#A.toString()}get opened(){return this.#Q.promise}get closed(){return this.#B.promise}close(A=void 0){if(A!==null)A=e0.converters.WebSocketCloseInfo(A);let Q=A.closeCode??null,B=A.reason;po(this.#X,Q,B,!0)}#Z(A){A=e0.converters.WebSocketStreamWrite(A);let Q=co(),B=null,Y=null;if(e0.is.BufferSource(A))B=new Uint8Array(ArrayBuffer.isView(A)?new Uint8Array(A.buffer,A.byteOffset,A.byteLength):A.slice()),Y=vk.BINARY;else{let J;try{J=e0.converters.DOMString(A)}catch(C){return Q.reject(C),Q.promise}B=new TextEncoder().encode(J),Y=vk.TEXT}if(!this.#X.closeState.has(PV.SENT)&&!this.#X.closeState.has(PV.RECEIVED)){let J=new Vb0(B);this.#X.socket.write(J.createFrame(Y),()=>{Q.resolve(void 0)})}return Q.promise}#U(A,Q){this.#X.socket=A.socket;let B=new Ib0(this.#X,Q);B.on("drain",()=>this.#X.onParserDrain()),B.on("error",(G)=>this.#X.onParserError(G)),this.#G=B,this.#X.readyState=OV.OPEN;let Y=Q??"",J=A.headersList.get("sec-websocket-protocol")??"",C=new ReadableStream({start:(G)=>{this.#J=G},pull(G){let W;while(G.desiredSize>0&&(W=A.socket.read())!==null)G.enqueue(W)},cancel:(G)=>this.#I(G)}),X=new WritableStream({write:(G)=>this.#Z(G),close:()=>po(this.#X,null,null),abort:(G)=>this.#V(G)});this.#Y=C,this.#C=X,this.#Q.resolve({extensions:Y,protocol:J,readable:C,writable:X})}#F(A,Q){if(this.#X.readyState!==OV.OPEN)return;let B;if(A===vk.TEXT)try{B=Eb0(Q)}catch{lo(this.#X,"Received invalid UTF-8 in text frame.");return}else if(A===vk.BINARY)B=new Uint8Array(Q.buffer,Q.byteOffset,Q.byteLength);this.#J.enqueue(B)}#E(){let A=this.#X.closeState.has(PV.SENT)&&this.#X.closeState.has(PV.RECEIVED);if(this.#X.readyState=OV.CLOSED,this.#W)return;if(!this.#X.wasEverConnected)this.#Q.reject(new Hb0("Socket never opened"));let Q=this.#G.closingInfo,B=Q?.code??1005;if(!this.#X.closeState.has(PV.SENT)&&!this.#X.closeState.has(PV.RECEIVED))B=1006;let Y=Q?.reason==null?"":Nb0(Buffer.from(Q.reason));if(A){if(this.#J.close(),!this.#C.locked)this.#C.abort(new DOMException("A closed WebSocketStream cannot be written to","InvalidStateError"));this.#B.resolve({closeCode:B,reason:Y})}else{let J=Db0("unclean close",B,Y);this.#J.error(J),this.#C.abort(J),this.#B.reject(J)}}#V(A){let Q=null,B="";if(e0.is.WebSocketError(A))Q=A.closeCode,B=A.reason;po(this.#X,Q,B)}#I(A){this.#V(A)}}Object.defineProperties(io.prototype,{url:yk,opened:yk,closed:yk,close:yk,[Symbol.toStringTag]:{value:"WebSocketStream",writable:!1,enumerable:!1,configurable:!0}});e0.converters.WebSocketStreamOptions=e0.dictionaryConverter([{key:"protocols",converter:e0.sequenceConverter(e0.converters.USVString),defaultValue:()=>[]},{key:"signal",converter:e0.nullableConverter(e0.converters.AbortSignal),defaultValue:()=>null}]);e0.converters.WebSocketCloseInfo=e0.dictionaryConverter([{key:"closeCode",converter:(A)=>e0.converters["unsigned short"](A,e0.attributes.EnforceRange)},{key:"reason",converter:e0.converters.USVString,defaultValue:()=>""}]);e0.converters.WebSocketStreamWrite=function(A){if(typeof A==="string")return e0.converters.USVString(A);return e0.converters.BufferSource(A)};uTQ.exports={WebSocketStream:io}});var lTQ=R((ZaY,cTQ)=>{function Lb0(A){return A.indexOf("\x00")===-1}function qb0(A){if(A.length===0)return!1;for(let Q=0;Q57)return!1;return!0}cTQ.exports={isValidLastEventId:Lb0,isASCIINumber:qb0}});var rTQ=R(($aY,sTQ)=>{var{Transform:Mb0}=u("node:stream"),{isASCIINumber:pTQ,isValidLastEventId:iTQ}=lTQ(),dG=[239,187,191];class nTQ extends Mb0{state;checkBOM=!0;crlfCheck=!1;eventEndCheck=!1;buffer=null;pos=0;event={data:void 0,event:void 0,id:void 0,retry:void 0};constructor(A={}){A.readableObjectMode=!0;super(A);if(this.state=A.eventSourceSettings||{},A.push)this.push=A.push}_transform(A,Q,B){if(A.length===0){B();return}if(this.buffer)this.buffer=Buffer.concat([this.buffer,A]);else this.buffer=A;if(this.checkBOM)switch(this.buffer.length){case 1:if(this.buffer[0]===dG[0]){B();return}this.checkBOM=!1,B();return;case 2:if(this.buffer[0]===dG[0]&&this.buffer[1]===dG[1]){B();return}this.checkBOM=!1;break;case 3:if(this.buffer[0]===dG[0]&&this.buffer[1]===dG[1]&&this.buffer[2]===dG[2]){this.buffer=Buffer.alloc(0),this.checkBOM=!1,B();return}this.checkBOM=!1;break;default:if(this.buffer[0]===dG[0]&&this.buffer[1]===dG[1]&&this.buffer[2]===dG[2])this.buffer=this.buffer.subarray(3);this.checkBOM=!1;break}while(this.pos0)Q[Y]=J;break}}processEvent(A){if(A.retry&&pTQ(A.retry))this.state.reconnectionTime=parseInt(A.retry,10);if(A.id!==void 0&&iTQ(A.id))this.state.lastEventId=A.id;if(A.data!==void 0)this.push({type:A.event||"message",options:{data:A.data,lastEventId:this.state.lastEventId,origin:this.state.origin}})}clearEvent(){this.event={data:void 0,event:void 0,id:void 0,retry:void 0}}}sTQ.exports={EventSourceStream:nTQ}});var YSQ=R((UaY,BSQ)=>{var{pipeline:zb0}=u("node:stream"),{fetching:Rb0}=QM(),{makeRequest:wb0}=NV(),{webidl:w9}=HJ(),{EventSourceStream:jb0}=rTQ(),{parseMIMEType:Ob0}=l8(),{createFastMessageEvent:Pb0}=Rk(),{isNetworkError:aTQ}=eq(),{kEnumerableProperty:U4}=lQ(),{environmentSettingsObject:oTQ}=z9(),tTQ=!1,eTQ=3000,GM=0,ASQ=1,WM=2,Tb0="anonymous",Sb0="use-credentials";class TV extends EventTarget{#A={open:null,error:null,message:null};#Q;#B=!1;#Y=GM;#J=null;#C=null;#W;#X;constructor(A,Q={}){super();w9.util.markAsUncloneable(this);let B="EventSource constructor";if(w9.argumentLengthCheck(arguments,1,B),!tTQ)tTQ=!0,process.emitWarning("EventSource is experimental, expect them to change at any time.",{code:"UNDICI-ES"});A=w9.converters.USVString(A),Q=w9.converters.EventSourceInitDict(Q,B,"eventSourceInitDict"),this.#W=Q.node.dispatcher||Q.dispatcher,this.#X={lastEventId:"",reconnectionTime:Q.node.reconnectionTime};let Y=oTQ,J;try{J=new URL(A,Y.settingsObject.baseUrl),this.#X.origin=J.origin}catch(G){throw new DOMException(G,"SyntaxError")}this.#Q=J.href;let C=Tb0;if(Q.withCredentials===!0)C=Sb0,this.#B=!0;let X={redirect:"follow",keepalive:!0,mode:"cors",credentials:C==="anonymous"?"same-origin":"omit",referrer:"no-referrer"};X.client=oTQ.settingsObject,X.headersList=[["accept",{name:"accept",value:"text/event-stream"}]],X.cache="no-store",X.initiator="other",X.urlList=[new URL(this.#Q)],this.#J=wb0(X),this.#G()}get readyState(){return this.#Y}get url(){return this.#Q}get withCredentials(){return this.#B}#G(){if(this.#Y===WM)return;this.#Y=GM;let A={request:this.#J,dispatcher:this.#W},Q=(B)=>{if(!aTQ(B))return this.#Z()};A.processResponseEndOfBody=Q,A.processResponse=(B)=>{if(aTQ(B))if(B.aborted){this.close(),this.dispatchEvent(new Event("error"));return}else{this.#Z();return}let Y=B.headersList.get("content-type",!0),J=Y!==null?Ob0(Y):"failure",C=J!=="failure"&&J.essence==="text/event-stream";if(B.status!==200||C===!1){this.close(),this.dispatchEvent(new Event("error"));return}this.#Y=ASQ,this.dispatchEvent(new Event("open")),this.#X.origin=B.urlList[B.urlList.length-1].origin;let X=new jb0({eventSourceSettings:this.#X,push:(G)=>{this.dispatchEvent(Pb0(G.type,G.options))}});zb0(B.body.stream,X,(G)=>{if(G?.aborted===!1)this.close(),this.dispatchEvent(new Event("error"))})},this.#C=Rb0(A)}#Z(){if(this.#Y===WM)return;this.#Y=GM,this.dispatchEvent(new Event("error")),setTimeout(()=>{if(this.#Y!==GM)return;if(this.#X.lastEventId.length)this.#J.headersList.set("last-event-id",this.#X.lastEventId,!0);this.#G()},this.#X.reconnectionTime)?.unref()}close(){if(w9.brandCheck(this,TV),this.#Y===WM)return;this.#Y=WM,this.#C.abort(),this.#J=null}get onopen(){return this.#A.open}set onopen(A){if(this.#A.open)this.removeEventListener("open",this.#A.open);let Q=w9.converters.EventHandlerNonNull(A);if(Q!==null)this.addEventListener("open",Q),this.#A.open=A;else this.#A.open=null}get onmessage(){return this.#A.message}set onmessage(A){if(this.#A.message)this.removeEventListener("message",this.#A.message);let Q=w9.converters.EventHandlerNonNull(A);if(Q!==null)this.addEventListener("message",Q),this.#A.message=A;else this.#A.message=null}get onerror(){return this.#A.error}set onerror(A){if(this.#A.error)this.removeEventListener("error",this.#A.error);let Q=w9.converters.EventHandlerNonNull(A);if(Q!==null)this.addEventListener("error",Q),this.#A.error=A;else this.#A.error=null}}var QSQ={CONNECTING:{__proto__:null,configurable:!1,enumerable:!0,value:GM,writable:!1},OPEN:{__proto__:null,configurable:!1,enumerable:!0,value:ASQ,writable:!1},CLOSED:{__proto__:null,configurable:!1,enumerable:!0,value:WM,writable:!1}};Object.defineProperties(TV,QSQ);Object.defineProperties(TV.prototype,QSQ);Object.defineProperties(TV.prototype,{close:U4,onerror:U4,onmessage:U4,onopen:U4,readyState:U4,url:U4,withCredentials:U4});w9.converters.EventSourceInitDict=w9.dictionaryConverter([{key:"withCredentials",converter:w9.converters.boolean,defaultValue:()=>!1},{key:"dispatcher",converter:w9.converters.any},{key:"node",converter:w9.dictionaryConverter([{key:"reconnectionTime",converter:w9.converters["unsigned long"],defaultValue:()=>eTQ},{key:"dispatcher",converter:w9.converters.any}]),defaultValue:()=>({})}]);BSQ.exports={EventSource:TV,defaultReconnectionTime:eTQ}});var M1=R((jSQ)=>{Object.defineProperty(jSQ,"__esModule",{value:!0});jSQ.setMatrixArrayType=Ju0;jSQ.toRadian=Xu0;jSQ.equals=Gu0;jSQ.RANDOM=jSQ.ARRAY_TYPE=jSQ.EPSILON=void 0;var RSQ=0.000001;jSQ.EPSILON=RSQ;var wSQ=typeof Float32Array<"u"?Float32Array:Array;jSQ.ARRAY_TYPE=wSQ;var Yu0=Math.random;jSQ.RANDOM=Yu0;function Ju0(A){jSQ.ARRAY_TYPE=wSQ=A}var Cu0=Math.PI/180;function Xu0(A){return A*Cu0}function Gu0(A,Q){return Math.abs(A-Q)<=RSQ*Math.max(1,Math.abs(A),Math.abs(Q))}if(!Math.hypot)Math.hypot=function(){var A=0,Q=arguments.length;while(Q--)A+=arguments[Q]*arguments[Q];return Math.sqrt(A)}});var ySQ=R((_SQ)=>{function sk(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")sk=function(B){return typeof B};else sk=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return sk(A)}Object.defineProperty(_SQ,"__esModule",{value:!0});_SQ.create=Eu0;_SQ.clone=Ku0;_SQ.copy=Vu0;_SQ.identity=Iu0;_SQ.fromValues=Hu0;_SQ.set=Du0;_SQ.transpose=Nu0;_SQ.invert=Lu0;_SQ.adjoint=qu0;_SQ.determinant=Mu0;_SQ.multiply=SSQ;_SQ.rotate=zu0;_SQ.scale=Ru0;_SQ.fromRotation=wu0;_SQ.fromScaling=ju0;_SQ.str=Ou0;_SQ.frob=Pu0;_SQ.LDU=Tu0;_SQ.add=Su0;_SQ.subtract=kSQ;_SQ.exactEquals=ku0;_SQ.equals=_u0;_SQ.multiplyScalar=vu0;_SQ.multiplyScalarAndAdd=yu0;_SQ.sub=_SQ.mul=void 0;var DF=Uu0(M1());function TSQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(TSQ=function(J){return J?B:Q})(A)}function Uu0(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||sk(A)!=="object"&&typeof A!=="function")return{default:A};var B=TSQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function Eu0(){var A=new DF.ARRAY_TYPE(4);if(DF.ARRAY_TYPE!=Float32Array)A[1]=0,A[2]=0;return A[0]=1,A[3]=1,A}function Ku0(A){var Q=new DF.ARRAY_TYPE(4);return Q[0]=A[0],Q[1]=A[1],Q[2]=A[2],Q[3]=A[3],Q}function Vu0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A[3]=Q[3],A}function Iu0(A){return A[0]=1,A[1]=0,A[2]=0,A[3]=1,A}function Hu0(A,Q,B,Y){var J=new DF.ARRAY_TYPE(4);return J[0]=A,J[1]=Q,J[2]=B,J[3]=Y,J}function Du0(A,Q,B,Y,J){return A[0]=Q,A[1]=B,A[2]=Y,A[3]=J,A}function Nu0(A,Q){if(A===Q){var B=Q[1];A[1]=Q[2],A[2]=B}else A[0]=Q[0],A[1]=Q[2],A[2]=Q[1],A[3]=Q[3];return A}function Lu0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=B*C-J*Y;if(!X)return null;return X=1/X,A[0]=C*X,A[1]=-Y*X,A[2]=-J*X,A[3]=B*X,A}function qu0(A,Q){var B=Q[0];return A[0]=Q[3],A[1]=-Q[1],A[2]=-Q[2],A[3]=B,A}function Mu0(A){return A[0]*A[3]-A[2]*A[1]}function SSQ(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=B[0],W=B[1],F=B[2],Z=B[3];return A[0]=Y*G+C*W,A[1]=J*G+X*W,A[2]=Y*F+C*Z,A[3]=J*F+X*Z,A}function zu0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Math.sin(B),W=Math.cos(B);return A[0]=Y*W+C*G,A[1]=J*W+X*G,A[2]=Y*-G+C*W,A[3]=J*-G+X*W,A}function Ru0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=B[0],W=B[1];return A[0]=Y*G,A[1]=J*G,A[2]=C*W,A[3]=X*W,A}function wu0(A,Q){var B=Math.sin(Q),Y=Math.cos(Q);return A[0]=Y,A[1]=B,A[2]=-B,A[3]=Y,A}function ju0(A,Q){return A[0]=Q[0],A[1]=0,A[2]=0,A[3]=Q[1],A}function Ou0(A){return"mat2("+A[0]+", "+A[1]+", "+A[2]+", "+A[3]+")"}function Pu0(A){return Math.hypot(A[0],A[1],A[2],A[3])}function Tu0(A,Q,B,Y){return A[2]=Y[2]/Y[0],B[0]=Y[0],B[1]=Y[1],B[3]=Y[3]-A[2]*B[1],[A,Q,B]}function Su0(A,Q,B){return A[0]=Q[0]+B[0],A[1]=Q[1]+B[1],A[2]=Q[2]+B[2],A[3]=Q[3]+B[3],A}function kSQ(A,Q,B){return A[0]=Q[0]-B[0],A[1]=Q[1]-B[1],A[2]=Q[2]-B[2],A[3]=Q[3]-B[3],A}function ku0(A,Q){return A[0]===Q[0]&&A[1]===Q[1]&&A[2]===Q[2]&&A[3]===Q[3]}function _u0(A,Q){var B=A[0],Y=A[1],J=A[2],C=A[3],X=Q[0],G=Q[1],W=Q[2],F=Q[3];return Math.abs(B-X)<=DF.EPSILON*Math.max(1,Math.abs(B),Math.abs(X))&&Math.abs(Y-G)<=DF.EPSILON*Math.max(1,Math.abs(Y),Math.abs(G))&&Math.abs(J-W)<=DF.EPSILON*Math.max(1,Math.abs(J),Math.abs(W))&&Math.abs(C-F)<=DF.EPSILON*Math.max(1,Math.abs(C),Math.abs(F))}function vu0(A,Q,B){return A[0]=Q[0]*B,A[1]=Q[1]*B,A[2]=Q[2]*B,A[3]=Q[3]*B,A}function yu0(A,Q,B,Y){return A[0]=Q[0]+B[0]*Y,A[1]=Q[1]+B[1]*Y,A[2]=Q[2]+B[2]*Y,A[3]=Q[3]+B[3]*Y,A}var gu0=SSQ;_SQ.mul=gu0;var hu0=kSQ;_SQ.sub=hu0});var mSQ=R((fSQ)=>{function rk(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")rk=function(B){return typeof B};else rk=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return rk(A)}Object.defineProperty(fSQ,"__esModule",{value:!0});fSQ.create=Fd0;fSQ.clone=Zd0;fSQ.copy=$d0;fSQ.identity=Ud0;fSQ.fromValues=Ed0;fSQ.set=Kd0;fSQ.invert=Vd0;fSQ.determinant=Id0;fSQ.multiply=hSQ;fSQ.rotate=Hd0;fSQ.scale=Dd0;fSQ.translate=Nd0;fSQ.fromRotation=Ld0;fSQ.fromScaling=qd0;fSQ.fromTranslation=Md0;fSQ.str=zd0;fSQ.frob=Rd0;fSQ.add=wd0;fSQ.subtract=xSQ;fSQ.multiplyScalar=jd0;fSQ.multiplyScalarAndAdd=Od0;fSQ.exactEquals=Pd0;fSQ.equals=Td0;fSQ.sub=fSQ.mul=void 0;var fX=Wd0(M1());function gSQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(gSQ=function(J){return J?B:Q})(A)}function Wd0(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||rk(A)!=="object"&&typeof A!=="function")return{default:A};var B=gSQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function Fd0(){var A=new fX.ARRAY_TYPE(6);if(fX.ARRAY_TYPE!=Float32Array)A[1]=0,A[2]=0,A[4]=0,A[5]=0;return A[0]=1,A[3]=1,A}function Zd0(A){var Q=new fX.ARRAY_TYPE(6);return Q[0]=A[0],Q[1]=A[1],Q[2]=A[2],Q[3]=A[3],Q[4]=A[4],Q[5]=A[5],Q}function $d0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A[3]=Q[3],A[4]=Q[4],A[5]=Q[5],A}function Ud0(A){return A[0]=1,A[1]=0,A[2]=0,A[3]=1,A[4]=0,A[5]=0,A}function Ed0(A,Q,B,Y,J,C){var X=new fX.ARRAY_TYPE(6);return X[0]=A,X[1]=Q,X[2]=B,X[3]=Y,X[4]=J,X[5]=C,X}function Kd0(A,Q,B,Y,J,C,X){return A[0]=Q,A[1]=B,A[2]=Y,A[3]=J,A[4]=C,A[5]=X,A}function Vd0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Q[4],G=Q[5],W=B*C-Y*J;if(!W)return null;return W=1/W,A[0]=C*W,A[1]=-Y*W,A[2]=-J*W,A[3]=B*W,A[4]=(J*G-C*X)*W,A[5]=(Y*X-B*G)*W,A}function Id0(A){return A[0]*A[3]-A[1]*A[2]}function hSQ(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],W=Q[5],F=B[0],Z=B[1],U=B[2],$=B[3],E=B[4],K=B[5];return A[0]=Y*F+C*Z,A[1]=J*F+X*Z,A[2]=Y*U+C*$,A[3]=J*U+X*$,A[4]=Y*E+C*K+G,A[5]=J*E+X*K+W,A}function Hd0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],W=Q[5],F=Math.sin(B),Z=Math.cos(B);return A[0]=Y*Z+C*F,A[1]=J*Z+X*F,A[2]=Y*-F+C*Z,A[3]=J*-F+X*Z,A[4]=G,A[5]=W,A}function Dd0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],W=Q[5],F=B[0],Z=B[1];return A[0]=Y*F,A[1]=J*F,A[2]=C*Z,A[3]=X*Z,A[4]=G,A[5]=W,A}function Nd0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],W=Q[5],F=B[0],Z=B[1];return A[0]=Y,A[1]=J,A[2]=C,A[3]=X,A[4]=Y*F+C*Z+G,A[5]=J*F+X*Z+W,A}function Ld0(A,Q){var B=Math.sin(Q),Y=Math.cos(Q);return A[0]=Y,A[1]=B,A[2]=-B,A[3]=Y,A[4]=0,A[5]=0,A}function qd0(A,Q){return A[0]=Q[0],A[1]=0,A[2]=0,A[3]=Q[1],A[4]=0,A[5]=0,A}function Md0(A,Q){return A[0]=1,A[1]=0,A[2]=0,A[3]=1,A[4]=Q[0],A[5]=Q[1],A}function zd0(A){return"mat2d("+A[0]+", "+A[1]+", "+A[2]+", "+A[3]+", "+A[4]+", "+A[5]+")"}function Rd0(A){return Math.hypot(A[0],A[1],A[2],A[3],A[4],A[5],1)}function wd0(A,Q,B){return A[0]=Q[0]+B[0],A[1]=Q[1]+B[1],A[2]=Q[2]+B[2],A[3]=Q[3]+B[3],A[4]=Q[4]+B[4],A[5]=Q[5]+B[5],A}function xSQ(A,Q,B){return A[0]=Q[0]-B[0],A[1]=Q[1]-B[1],A[2]=Q[2]-B[2],A[3]=Q[3]-B[3],A[4]=Q[4]-B[4],A[5]=Q[5]-B[5],A}function jd0(A,Q,B){return A[0]=Q[0]*B,A[1]=Q[1]*B,A[2]=Q[2]*B,A[3]=Q[3]*B,A[4]=Q[4]*B,A[5]=Q[5]*B,A}function Od0(A,Q,B,Y){return A[0]=Q[0]+B[0]*Y,A[1]=Q[1]+B[1]*Y,A[2]=Q[2]+B[2]*Y,A[3]=Q[3]+B[3]*Y,A[4]=Q[4]+B[4]*Y,A[5]=Q[5]+B[5]*Y,A}function Pd0(A,Q){return A[0]===Q[0]&&A[1]===Q[1]&&A[2]===Q[2]&&A[3]===Q[3]&&A[4]===Q[4]&&A[5]===Q[5]}function Td0(A,Q){var B=A[0],Y=A[1],J=A[2],C=A[3],X=A[4],G=A[5],W=Q[0],F=Q[1],Z=Q[2],U=Q[3],$=Q[4],E=Q[5];return Math.abs(B-W)<=fX.EPSILON*Math.max(1,Math.abs(B),Math.abs(W))&&Math.abs(Y-F)<=fX.EPSILON*Math.max(1,Math.abs(Y),Math.abs(F))&&Math.abs(J-Z)<=fX.EPSILON*Math.max(1,Math.abs(J),Math.abs(Z))&&Math.abs(C-U)<=fX.EPSILON*Math.max(1,Math.abs(C),Math.abs(U))&&Math.abs(X-$)<=fX.EPSILON*Math.max(1,Math.abs(X),Math.abs($))&&Math.abs(G-E)<=fX.EPSILON*Math.max(1,Math.abs(G),Math.abs(E))}var Sd0=hSQ;fSQ.mul=Sd0;var kd0=xSQ;fSQ.sub=kd0});var Nt=R((lSQ)=>{function ak(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")ak=function(B){return typeof B};else ak=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return ak(A)}Object.defineProperty(lSQ,"__esModule",{value:!0});lSQ.create=Yc0;lSQ.fromMat4=Jc0;lSQ.clone=Cc0;lSQ.copy=Xc0;lSQ.fromValues=Gc0;lSQ.set=Wc0;lSQ.identity=Fc0;lSQ.transpose=Zc0;lSQ.invert=$c0;lSQ.adjoint=Uc0;lSQ.determinant=Ec0;lSQ.multiply=dSQ;lSQ.translate=Kc0;lSQ.rotate=Vc0;lSQ.scale=Ic0;lSQ.fromTranslation=Hc0;lSQ.fromRotation=Dc0;lSQ.fromScaling=Nc0;lSQ.fromMat2d=Lc0;lSQ.fromQuat=qc0;lSQ.normalFromMat4=Mc0;lSQ.projection=zc0;lSQ.str=Rc0;lSQ.frob=wc0;lSQ.add=jc0;lSQ.subtract=cSQ;lSQ.multiplyScalar=Oc0;lSQ.multiplyScalarAndAdd=Pc0;lSQ.exactEquals=Tc0;lSQ.equals=Sc0;lSQ.sub=lSQ.mul=void 0;var t8=Bc0(M1());function uSQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(uSQ=function(J){return J?B:Q})(A)}function Bc0(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||ak(A)!=="object"&&typeof A!=="function")return{default:A};var B=uSQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function Yc0(){var A=new t8.ARRAY_TYPE(9);if(t8.ARRAY_TYPE!=Float32Array)A[1]=0,A[2]=0,A[3]=0,A[5]=0,A[6]=0,A[7]=0;return A[0]=1,A[4]=1,A[8]=1,A}function Jc0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A[3]=Q[4],A[4]=Q[5],A[5]=Q[6],A[6]=Q[8],A[7]=Q[9],A[8]=Q[10],A}function Cc0(A){var Q=new t8.ARRAY_TYPE(9);return Q[0]=A[0],Q[1]=A[1],Q[2]=A[2],Q[3]=A[3],Q[4]=A[4],Q[5]=A[5],Q[6]=A[6],Q[7]=A[7],Q[8]=A[8],Q}function Xc0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A[3]=Q[3],A[4]=Q[4],A[5]=Q[5],A[6]=Q[6],A[7]=Q[7],A[8]=Q[8],A}function Gc0(A,Q,B,Y,J,C,X,G,W){var F=new t8.ARRAY_TYPE(9);return F[0]=A,F[1]=Q,F[2]=B,F[3]=Y,F[4]=J,F[5]=C,F[6]=X,F[7]=G,F[8]=W,F}function Wc0(A,Q,B,Y,J,C,X,G,W,F){return A[0]=Q,A[1]=B,A[2]=Y,A[3]=J,A[4]=C,A[5]=X,A[6]=G,A[7]=W,A[8]=F,A}function Fc0(A){return A[0]=1,A[1]=0,A[2]=0,A[3]=0,A[4]=1,A[5]=0,A[6]=0,A[7]=0,A[8]=1,A}function Zc0(A,Q){if(A===Q){var B=Q[1],Y=Q[2],J=Q[5];A[1]=Q[3],A[2]=Q[6],A[3]=B,A[5]=Q[7],A[6]=Y,A[7]=J}else A[0]=Q[0],A[1]=Q[3],A[2]=Q[6],A[3]=Q[1],A[4]=Q[4],A[5]=Q[7],A[6]=Q[2],A[7]=Q[5],A[8]=Q[8];return A}function $c0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Q[4],G=Q[5],W=Q[6],F=Q[7],Z=Q[8],U=Z*X-G*F,$=-Z*C+G*W,E=F*C-X*W,K=B*U+Y*$+J*E;if(!K)return null;return K=1/K,A[0]=U*K,A[1]=(-Z*Y+J*F)*K,A[2]=(G*Y-J*X)*K,A[3]=$*K,A[4]=(Z*B-J*W)*K,A[5]=(-G*B+J*C)*K,A[6]=E*K,A[7]=(-F*B+Y*W)*K,A[8]=(X*B-Y*C)*K,A}function Uc0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Q[4],G=Q[5],W=Q[6],F=Q[7],Z=Q[8];return A[0]=X*Z-G*F,A[1]=J*F-Y*Z,A[2]=Y*G-J*X,A[3]=G*W-C*Z,A[4]=B*Z-J*W,A[5]=J*C-B*G,A[6]=C*F-X*W,A[7]=Y*W-B*F,A[8]=B*X-Y*C,A}function Ec0(A){var Q=A[0],B=A[1],Y=A[2],J=A[3],C=A[4],X=A[5],G=A[6],W=A[7],F=A[8];return Q*(F*C-X*W)+B*(-F*J+X*G)+Y*(W*J-C*G)}function dSQ(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],W=Q[5],F=Q[6],Z=Q[7],U=Q[8],$=B[0],E=B[1],K=B[2],I=B[3],V=B[4],H=B[5],D=B[6],L=B[7],z=B[8];return A[0]=$*Y+E*X+K*F,A[1]=$*J+E*G+K*Z,A[2]=$*C+E*W+K*U,A[3]=I*Y+V*X+H*F,A[4]=I*J+V*G+H*Z,A[5]=I*C+V*W+H*U,A[6]=D*Y+L*X+z*F,A[7]=D*J+L*G+z*Z,A[8]=D*C+L*W+z*U,A}function Kc0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],W=Q[5],F=Q[6],Z=Q[7],U=Q[8],$=B[0],E=B[1];return A[0]=Y,A[1]=J,A[2]=C,A[3]=X,A[4]=G,A[5]=W,A[6]=$*Y+E*X+F,A[7]=$*J+E*G+Z,A[8]=$*C+E*W+U,A}function Vc0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],W=Q[5],F=Q[6],Z=Q[7],U=Q[8],$=Math.sin(B),E=Math.cos(B);return A[0]=E*Y+$*X,A[1]=E*J+$*G,A[2]=E*C+$*W,A[3]=E*X-$*Y,A[4]=E*G-$*J,A[5]=E*W-$*C,A[6]=F,A[7]=Z,A[8]=U,A}function Ic0(A,Q,B){var Y=B[0],J=B[1];return A[0]=Y*Q[0],A[1]=Y*Q[1],A[2]=Y*Q[2],A[3]=J*Q[3],A[4]=J*Q[4],A[5]=J*Q[5],A[6]=Q[6],A[7]=Q[7],A[8]=Q[8],A}function Hc0(A,Q){return A[0]=1,A[1]=0,A[2]=0,A[3]=0,A[4]=1,A[5]=0,A[6]=Q[0],A[7]=Q[1],A[8]=1,A}function Dc0(A,Q){var B=Math.sin(Q),Y=Math.cos(Q);return A[0]=Y,A[1]=B,A[2]=0,A[3]=-B,A[4]=Y,A[5]=0,A[6]=0,A[7]=0,A[8]=1,A}function Nc0(A,Q){return A[0]=Q[0],A[1]=0,A[2]=0,A[3]=0,A[4]=Q[1],A[5]=0,A[6]=0,A[7]=0,A[8]=1,A}function Lc0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=0,A[3]=Q[2],A[4]=Q[3],A[5]=0,A[6]=Q[4],A[7]=Q[5],A[8]=1,A}function qc0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=B+B,G=Y+Y,W=J+J,F=B*X,Z=Y*X,U=Y*G,$=J*X,E=J*G,K=J*W,I=C*X,V=C*G,H=C*W;return A[0]=1-U-K,A[3]=Z-H,A[6]=$+V,A[1]=Z+H,A[4]=1-F-K,A[7]=E-I,A[2]=$-V,A[5]=E+I,A[8]=1-F-U,A}function Mc0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Q[4],G=Q[5],W=Q[6],F=Q[7],Z=Q[8],U=Q[9],$=Q[10],E=Q[11],K=Q[12],I=Q[13],V=Q[14],H=Q[15],D=B*G-Y*X,L=B*W-J*X,z=B*F-C*X,M=Y*W-J*G,N=Y*F-C*G,q=J*F-C*W,w=Z*I-U*K,P=Z*V-$*K,_=Z*H-E*K,j=U*V-$*I,k=U*H-E*I,T=$*H-E*V,S=D*T-L*k+z*j+M*_-N*P+q*w;if(!S)return null;return S=1/S,A[0]=(G*T-W*k+F*j)*S,A[1]=(W*_-X*T-F*P)*S,A[2]=(X*k-G*_+F*w)*S,A[3]=(J*k-Y*T-C*j)*S,A[4]=(B*T-J*_+C*P)*S,A[5]=(Y*_-B*k-C*w)*S,A[6]=(I*q-V*N+H*M)*S,A[7]=(V*z-K*q-H*L)*S,A[8]=(K*N-I*z+H*D)*S,A}function zc0(A,Q,B){return A[0]=2/Q,A[1]=0,A[2]=0,A[3]=0,A[4]=-2/B,A[5]=0,A[6]=-1,A[7]=1,A[8]=1,A}function Rc0(A){return"mat3("+A[0]+", "+A[1]+", "+A[2]+", "+A[3]+", "+A[4]+", "+A[5]+", "+A[6]+", "+A[7]+", "+A[8]+")"}function wc0(A){return Math.hypot(A[0],A[1],A[2],A[3],A[4],A[5],A[6],A[7],A[8])}function jc0(A,Q,B){return A[0]=Q[0]+B[0],A[1]=Q[1]+B[1],A[2]=Q[2]+B[2],A[3]=Q[3]+B[3],A[4]=Q[4]+B[4],A[5]=Q[5]+B[5],A[6]=Q[6]+B[6],A[7]=Q[7]+B[7],A[8]=Q[8]+B[8],A}function cSQ(A,Q,B){return A[0]=Q[0]-B[0],A[1]=Q[1]-B[1],A[2]=Q[2]-B[2],A[3]=Q[3]-B[3],A[4]=Q[4]-B[4],A[5]=Q[5]-B[5],A[6]=Q[6]-B[6],A[7]=Q[7]-B[7],A[8]=Q[8]-B[8],A}function Oc0(A,Q,B){return A[0]=Q[0]*B,A[1]=Q[1]*B,A[2]=Q[2]*B,A[3]=Q[3]*B,A[4]=Q[4]*B,A[5]=Q[5]*B,A[6]=Q[6]*B,A[7]=Q[7]*B,A[8]=Q[8]*B,A}function Pc0(A,Q,B,Y){return A[0]=Q[0]+B[0]*Y,A[1]=Q[1]+B[1]*Y,A[2]=Q[2]+B[2]*Y,A[3]=Q[3]+B[3]*Y,A[4]=Q[4]+B[4]*Y,A[5]=Q[5]+B[5]*Y,A[6]=Q[6]+B[6]*Y,A[7]=Q[7]+B[7]*Y,A[8]=Q[8]+B[8]*Y,A}function Tc0(A,Q){return A[0]===Q[0]&&A[1]===Q[1]&&A[2]===Q[2]&&A[3]===Q[3]&&A[4]===Q[4]&&A[5]===Q[5]&&A[6]===Q[6]&&A[7]===Q[7]&&A[8]===Q[8]}function Sc0(A,Q){var B=A[0],Y=A[1],J=A[2],C=A[3],X=A[4],G=A[5],W=A[6],F=A[7],Z=A[8],U=Q[0],$=Q[1],E=Q[2],K=Q[3],I=Q[4],V=Q[5],H=Q[6],D=Q[7],L=Q[8];return Math.abs(B-U)<=t8.EPSILON*Math.max(1,Math.abs(B),Math.abs(U))&&Math.abs(Y-$)<=t8.EPSILON*Math.max(1,Math.abs(Y),Math.abs($))&&Math.abs(J-E)<=t8.EPSILON*Math.max(1,Math.abs(J),Math.abs(E))&&Math.abs(C-K)<=t8.EPSILON*Math.max(1,Math.abs(C),Math.abs(K))&&Math.abs(X-I)<=t8.EPSILON*Math.max(1,Math.abs(X),Math.abs(I))&&Math.abs(G-V)<=t8.EPSILON*Math.max(1,Math.abs(G),Math.abs(V))&&Math.abs(W-H)<=t8.EPSILON*Math.max(1,Math.abs(W),Math.abs(H))&&Math.abs(F-D)<=t8.EPSILON*Math.max(1,Math.abs(F),Math.abs(D))&&Math.abs(Z-L)<=t8.EPSILON*Math.max(1,Math.abs(Z),Math.abs(L))}var kc0=dSQ;lSQ.mul=kc0;var _c0=cSQ;lSQ.sub=_c0});var Lt=R((AkQ)=>{function ok(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")ok=function(B){return typeof B};else ok=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return ok(A)}Object.defineProperty(AkQ,"__esModule",{value:!0});AkQ.create=$l0;AkQ.clone=Ul0;AkQ.copy=El0;AkQ.fromValues=Kl0;AkQ.set=Vl0;AkQ.identity=nSQ;AkQ.transpose=Il0;AkQ.invert=Hl0;AkQ.adjoint=Dl0;AkQ.determinant=Nl0;AkQ.multiply=sSQ;AkQ.translate=Ll0;AkQ.scale=ql0;AkQ.rotate=Ml0;AkQ.rotateX=zl0;AkQ.rotateY=Rl0;AkQ.rotateZ=wl0;AkQ.fromTranslation=jl0;AkQ.fromScaling=Ol0;AkQ.fromRotation=Pl0;AkQ.fromXRotation=Tl0;AkQ.fromYRotation=Sl0;AkQ.fromZRotation=kl0;AkQ.fromRotationTranslation=rSQ;AkQ.fromQuat2=_l0;AkQ.getTranslation=vl0;AkQ.getScaling=aSQ;AkQ.getRotation=yl0;AkQ.fromRotationTranslationScale=gl0;AkQ.fromRotationTranslationScaleOrigin=hl0;AkQ.fromQuat=xl0;AkQ.frustum=fl0;AkQ.perspectiveNO=oSQ;AkQ.perspectiveZO=ml0;AkQ.perspectiveFromFieldOfView=ul0;AkQ.orthoNO=tSQ;AkQ.orthoZO=cl0;AkQ.lookAt=ll0;AkQ.targetTo=pl0;AkQ.str=il0;AkQ.frob=nl0;AkQ.add=sl0;AkQ.subtract=eSQ;AkQ.multiplyScalar=rl0;AkQ.multiplyScalarAndAdd=al0;AkQ.exactEquals=ol0;AkQ.equals=tl0;AkQ.sub=AkQ.mul=AkQ.ortho=AkQ.perspective=void 0;var Y0=Zl0(M1());function iSQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(iSQ=function(J){return J?B:Q})(A)}function Zl0(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||ok(A)!=="object"&&typeof A!=="function")return{default:A};var B=iSQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function $l0(){var A=new Y0.ARRAY_TYPE(16);if(Y0.ARRAY_TYPE!=Float32Array)A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[6]=0,A[7]=0,A[8]=0,A[9]=0,A[11]=0,A[12]=0,A[13]=0,A[14]=0;return A[0]=1,A[5]=1,A[10]=1,A[15]=1,A}function Ul0(A){var Q=new Y0.ARRAY_TYPE(16);return Q[0]=A[0],Q[1]=A[1],Q[2]=A[2],Q[3]=A[3],Q[4]=A[4],Q[5]=A[5],Q[6]=A[6],Q[7]=A[7],Q[8]=A[8],Q[9]=A[9],Q[10]=A[10],Q[11]=A[11],Q[12]=A[12],Q[13]=A[13],Q[14]=A[14],Q[15]=A[15],Q}function El0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A[3]=Q[3],A[4]=Q[4],A[5]=Q[5],A[6]=Q[6],A[7]=Q[7],A[8]=Q[8],A[9]=Q[9],A[10]=Q[10],A[11]=Q[11],A[12]=Q[12],A[13]=Q[13],A[14]=Q[14],A[15]=Q[15],A}function Kl0(A,Q,B,Y,J,C,X,G,W,F,Z,U,$,E,K,I){var V=new Y0.ARRAY_TYPE(16);return V[0]=A,V[1]=Q,V[2]=B,V[3]=Y,V[4]=J,V[5]=C,V[6]=X,V[7]=G,V[8]=W,V[9]=F,V[10]=Z,V[11]=U,V[12]=$,V[13]=E,V[14]=K,V[15]=I,V}function Vl0(A,Q,B,Y,J,C,X,G,W,F,Z,U,$,E,K,I,V){return A[0]=Q,A[1]=B,A[2]=Y,A[3]=J,A[4]=C,A[5]=X,A[6]=G,A[7]=W,A[8]=F,A[9]=Z,A[10]=U,A[11]=$,A[12]=E,A[13]=K,A[14]=I,A[15]=V,A}function nSQ(A){return A[0]=1,A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[5]=1,A[6]=0,A[7]=0,A[8]=0,A[9]=0,A[10]=1,A[11]=0,A[12]=0,A[13]=0,A[14]=0,A[15]=1,A}function Il0(A,Q){if(A===Q){var B=Q[1],Y=Q[2],J=Q[3],C=Q[6],X=Q[7],G=Q[11];A[1]=Q[4],A[2]=Q[8],A[3]=Q[12],A[4]=B,A[6]=Q[9],A[7]=Q[13],A[8]=Y,A[9]=C,A[11]=Q[14],A[12]=J,A[13]=X,A[14]=G}else A[0]=Q[0],A[1]=Q[4],A[2]=Q[8],A[3]=Q[12],A[4]=Q[1],A[5]=Q[5],A[6]=Q[9],A[7]=Q[13],A[8]=Q[2],A[9]=Q[6],A[10]=Q[10],A[11]=Q[14],A[12]=Q[3],A[13]=Q[7],A[14]=Q[11],A[15]=Q[15];return A}function Hl0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Q[4],G=Q[5],W=Q[6],F=Q[7],Z=Q[8],U=Q[9],$=Q[10],E=Q[11],K=Q[12],I=Q[13],V=Q[14],H=Q[15],D=B*G-Y*X,L=B*W-J*X,z=B*F-C*X,M=Y*W-J*G,N=Y*F-C*G,q=J*F-C*W,w=Z*I-U*K,P=Z*V-$*K,_=Z*H-E*K,j=U*V-$*I,k=U*H-E*I,T=$*H-E*V,S=D*T-L*k+z*j+M*_-N*P+q*w;if(!S)return null;return S=1/S,A[0]=(G*T-W*k+F*j)*S,A[1]=(J*k-Y*T-C*j)*S,A[2]=(I*q-V*N+H*M)*S,A[3]=($*N-U*q-E*M)*S,A[4]=(W*_-X*T-F*P)*S,A[5]=(B*T-J*_+C*P)*S,A[6]=(V*z-K*q-H*L)*S,A[7]=(Z*q-$*z+E*L)*S,A[8]=(X*k-G*_+F*w)*S,A[9]=(Y*_-B*k-C*w)*S,A[10]=(K*N-I*z+H*D)*S,A[11]=(U*z-Z*N-E*D)*S,A[12]=(G*P-X*j-W*w)*S,A[13]=(B*j-Y*P+J*w)*S,A[14]=(I*L-K*M-V*D)*S,A[15]=(Z*M-U*L+$*D)*S,A}function Dl0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Q[4],G=Q[5],W=Q[6],F=Q[7],Z=Q[8],U=Q[9],$=Q[10],E=Q[11],K=Q[12],I=Q[13],V=Q[14],H=Q[15];return A[0]=G*($*H-E*V)-U*(W*H-F*V)+I*(W*E-F*$),A[1]=-(Y*($*H-E*V)-U*(J*H-C*V)+I*(J*E-C*$)),A[2]=Y*(W*H-F*V)-G*(J*H-C*V)+I*(J*F-C*W),A[3]=-(Y*(W*E-F*$)-G*(J*E-C*$)+U*(J*F-C*W)),A[4]=-(X*($*H-E*V)-Z*(W*H-F*V)+K*(W*E-F*$)),A[5]=B*($*H-E*V)-Z*(J*H-C*V)+K*(J*E-C*$),A[6]=-(B*(W*H-F*V)-X*(J*H-C*V)+K*(J*F-C*W)),A[7]=B*(W*E-F*$)-X*(J*E-C*$)+Z*(J*F-C*W),A[8]=X*(U*H-E*I)-Z*(G*H-F*I)+K*(G*E-F*U),A[9]=-(B*(U*H-E*I)-Z*(Y*H-C*I)+K*(Y*E-C*U)),A[10]=B*(G*H-F*I)-X*(Y*H-C*I)+K*(Y*F-C*G),A[11]=-(B*(G*E-F*U)-X*(Y*E-C*U)+Z*(Y*F-C*G)),A[12]=-(X*(U*V-$*I)-Z*(G*V-W*I)+K*(G*$-W*U)),A[13]=B*(U*V-$*I)-Z*(Y*V-J*I)+K*(Y*$-J*U),A[14]=-(B*(G*V-W*I)-X*(Y*V-J*I)+K*(Y*W-J*G)),A[15]=B*(G*$-W*U)-X*(Y*$-J*U)+Z*(Y*W-J*G),A}function Nl0(A){var Q=A[0],B=A[1],Y=A[2],J=A[3],C=A[4],X=A[5],G=A[6],W=A[7],F=A[8],Z=A[9],U=A[10],$=A[11],E=A[12],K=A[13],I=A[14],V=A[15],H=Q*X-B*C,D=Q*G-Y*C,L=Q*W-J*C,z=B*G-Y*X,M=B*W-J*X,N=Y*W-J*G,q=F*K-Z*E,w=F*I-U*E,P=F*V-$*E,_=Z*I-U*K,j=Z*V-$*K,k=U*V-$*I;return H*k-D*j+L*_+z*P-M*w+N*q}function sSQ(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],W=Q[5],F=Q[6],Z=Q[7],U=Q[8],$=Q[9],E=Q[10],K=Q[11],I=Q[12],V=Q[13],H=Q[14],D=Q[15],L=B[0],z=B[1],M=B[2],N=B[3];return A[0]=L*Y+z*G+M*U+N*I,A[1]=L*J+z*W+M*$+N*V,A[2]=L*C+z*F+M*E+N*H,A[3]=L*X+z*Z+M*K+N*D,L=B[4],z=B[5],M=B[6],N=B[7],A[4]=L*Y+z*G+M*U+N*I,A[5]=L*J+z*W+M*$+N*V,A[6]=L*C+z*F+M*E+N*H,A[7]=L*X+z*Z+M*K+N*D,L=B[8],z=B[9],M=B[10],N=B[11],A[8]=L*Y+z*G+M*U+N*I,A[9]=L*J+z*W+M*$+N*V,A[10]=L*C+z*F+M*E+N*H,A[11]=L*X+z*Z+M*K+N*D,L=B[12],z=B[13],M=B[14],N=B[15],A[12]=L*Y+z*G+M*U+N*I,A[13]=L*J+z*W+M*$+N*V,A[14]=L*C+z*F+M*E+N*H,A[15]=L*X+z*Z+M*K+N*D,A}function Ll0(A,Q,B){var Y=B[0],J=B[1],C=B[2],X,G,W,F,Z,U,$,E,K,I,V,H;if(Q===A)A[12]=Q[0]*Y+Q[4]*J+Q[8]*C+Q[12],A[13]=Q[1]*Y+Q[5]*J+Q[9]*C+Q[13],A[14]=Q[2]*Y+Q[6]*J+Q[10]*C+Q[14],A[15]=Q[3]*Y+Q[7]*J+Q[11]*C+Q[15];else X=Q[0],G=Q[1],W=Q[2],F=Q[3],Z=Q[4],U=Q[5],$=Q[6],E=Q[7],K=Q[8],I=Q[9],V=Q[10],H=Q[11],A[0]=X,A[1]=G,A[2]=W,A[3]=F,A[4]=Z,A[5]=U,A[6]=$,A[7]=E,A[8]=K,A[9]=I,A[10]=V,A[11]=H,A[12]=X*Y+Z*J+K*C+Q[12],A[13]=G*Y+U*J+I*C+Q[13],A[14]=W*Y+$*J+V*C+Q[14],A[15]=F*Y+E*J+H*C+Q[15];return A}function ql0(A,Q,B){var Y=B[0],J=B[1],C=B[2];return A[0]=Q[0]*Y,A[1]=Q[1]*Y,A[2]=Q[2]*Y,A[3]=Q[3]*Y,A[4]=Q[4]*J,A[5]=Q[5]*J,A[6]=Q[6]*J,A[7]=Q[7]*J,A[8]=Q[8]*C,A[9]=Q[9]*C,A[10]=Q[10]*C,A[11]=Q[11]*C,A[12]=Q[12],A[13]=Q[13],A[14]=Q[14],A[15]=Q[15],A}function Ml0(A,Q,B,Y){var J=Y[0],C=Y[1],X=Y[2],G=Math.hypot(J,C,X),W,F,Z,U,$,E,K,I,V,H,D,L,z,M,N,q,w,P,_,j,k,T,S,v;if(G0)B[0]=(G*X+Z*Y+W*C-F*J)*2/U,B[1]=(W*X+Z*J+F*Y-G*C)*2/U,B[2]=(F*X+Z*C+G*J-W*Y)*2/U;else B[0]=(G*X+Z*Y+W*C-F*J)*2,B[1]=(W*X+Z*J+F*Y-G*C)*2,B[2]=(F*X+Z*C+G*J-W*Y)*2;return rSQ(A,Q,B),A}function vl0(A,Q){return A[0]=Q[12],A[1]=Q[13],A[2]=Q[14],A}function aSQ(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[4],X=Q[5],G=Q[6],W=Q[8],F=Q[9],Z=Q[10];return A[0]=Math.hypot(B,Y,J),A[1]=Math.hypot(C,X,G),A[2]=Math.hypot(W,F,Z),A}function yl0(A,Q){var B=new Y0.ARRAY_TYPE(3);aSQ(B,Q);var Y=1/B[0],J=1/B[1],C=1/B[2],X=Q[0]*Y,G=Q[1]*J,W=Q[2]*C,F=Q[4]*Y,Z=Q[5]*J,U=Q[6]*C,$=Q[8]*Y,E=Q[9]*J,K=Q[10]*C,I=X+Z+K,V=0;if(I>0)V=Math.sqrt(I+1)*2,A[3]=0.25*V,A[0]=(U-E)/V,A[1]=($-W)/V,A[2]=(G-F)/V;else if(X>Z&&X>K)V=Math.sqrt(1+X-Z-K)*2,A[3]=(U-E)/V,A[0]=0.25*V,A[1]=(G+F)/V,A[2]=($+W)/V;else if(Z>K)V=Math.sqrt(1+Z-X-K)*2,A[3]=($-W)/V,A[0]=(G+F)/V,A[1]=0.25*V,A[2]=(U+E)/V;else V=Math.sqrt(1+K-X-Z)*2,A[3]=(G-F)/V,A[0]=($+W)/V,A[1]=(U+E)/V,A[2]=0.25*V;return A}function gl0(A,Q,B,Y){var J=Q[0],C=Q[1],X=Q[2],G=Q[3],W=J+J,F=C+C,Z=X+X,U=J*W,$=J*F,E=J*Z,K=C*F,I=C*Z,V=X*Z,H=G*W,D=G*F,L=G*Z,z=Y[0],M=Y[1],N=Y[2];return A[0]=(1-(K+V))*z,A[1]=($+L)*z,A[2]=(E-D)*z,A[3]=0,A[4]=($-L)*M,A[5]=(1-(U+V))*M,A[6]=(I+H)*M,A[7]=0,A[8]=(E+D)*N,A[9]=(I-H)*N,A[10]=(1-(U+K))*N,A[11]=0,A[12]=B[0],A[13]=B[1],A[14]=B[2],A[15]=1,A}function hl0(A,Q,B,Y,J){var C=Q[0],X=Q[1],G=Q[2],W=Q[3],F=C+C,Z=X+X,U=G+G,$=C*F,E=C*Z,K=C*U,I=X*Z,V=X*U,H=G*U,D=W*F,L=W*Z,z=W*U,M=Y[0],N=Y[1],q=Y[2],w=J[0],P=J[1],_=J[2],j=(1-(I+H))*M,k=(E+z)*M,T=(K-L)*M,S=(E-z)*N,v=(1-($+H))*N,y=(V+D)*N,h=(K+L)*q,g=(V-D)*q,m=(1-($+I))*q;return A[0]=j,A[1]=k,A[2]=T,A[3]=0,A[4]=S,A[5]=v,A[6]=y,A[7]=0,A[8]=h,A[9]=g,A[10]=m,A[11]=0,A[12]=B[0]+w-(j*w+S*P+h*_),A[13]=B[1]+P-(k*w+v*P+g*_),A[14]=B[2]+_-(T*w+y*P+m*_),A[15]=1,A}function xl0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=B+B,G=Y+Y,W=J+J,F=B*X,Z=Y*X,U=Y*G,$=J*X,E=J*G,K=J*W,I=C*X,V=C*G,H=C*W;return A[0]=1-U-K,A[1]=Z+H,A[2]=$-V,A[3]=0,A[4]=Z-H,A[5]=1-F-K,A[6]=E+I,A[7]=0,A[8]=$+V,A[9]=E-I,A[10]=1-F-U,A[11]=0,A[12]=0,A[13]=0,A[14]=0,A[15]=1,A}function fl0(A,Q,B,Y,J,C,X){var G=1/(B-Q),W=1/(J-Y),F=1/(C-X);return A[0]=C*2*G,A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[5]=C*2*W,A[6]=0,A[7]=0,A[8]=(B+Q)*G,A[9]=(J+Y)*W,A[10]=(X+C)*F,A[11]=-1,A[12]=0,A[13]=0,A[14]=X*C*2*F,A[15]=0,A}function oSQ(A,Q,B,Y,J){var C=1/Math.tan(Q/2),X;if(A[0]=C/B,A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[5]=C,A[6]=0,A[7]=0,A[8]=0,A[9]=0,A[11]=-1,A[12]=0,A[13]=0,A[15]=0,J!=null&&J!==1/0)X=1/(Y-J),A[10]=(J+Y)*X,A[14]=2*J*Y*X;else A[10]=-1,A[14]=-2*Y;return A}var bl0=oSQ;AkQ.perspective=bl0;function ml0(A,Q,B,Y,J){var C=1/Math.tan(Q/2),X;if(A[0]=C/B,A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[5]=C,A[6]=0,A[7]=0,A[8]=0,A[9]=0,A[11]=-1,A[12]=0,A[13]=0,A[15]=0,J!=null&&J!==1/0)X=1/(Y-J),A[10]=J*X,A[14]=J*Y*X;else A[10]=-1,A[14]=-Y;return A}function ul0(A,Q,B,Y){var J=Math.tan(Q.upDegrees*Math.PI/180),C=Math.tan(Q.downDegrees*Math.PI/180),X=Math.tan(Q.leftDegrees*Math.PI/180),G=Math.tan(Q.rightDegrees*Math.PI/180),W=2/(X+G),F=2/(J+C);return A[0]=W,A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[5]=F,A[6]=0,A[7]=0,A[8]=-((X-G)*W*0.5),A[9]=(J-C)*F*0.5,A[10]=Y/(B-Y),A[11]=-1,A[12]=0,A[13]=0,A[14]=Y*B/(B-Y),A[15]=0,A}function tSQ(A,Q,B,Y,J,C,X){var G=1/(Q-B),W=1/(Y-J),F=1/(C-X);return A[0]=-2*G,A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[5]=-2*W,A[6]=0,A[7]=0,A[8]=0,A[9]=0,A[10]=2*F,A[11]=0,A[12]=(Q+B)*G,A[13]=(J+Y)*W,A[14]=(X+C)*F,A[15]=1,A}var dl0=tSQ;AkQ.ortho=dl0;function cl0(A,Q,B,Y,J,C,X){var G=1/(Q-B),W=1/(Y-J),F=1/(C-X);return A[0]=-2*G,A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[5]=-2*W,A[6]=0,A[7]=0,A[8]=0,A[9]=0,A[10]=F,A[11]=0,A[12]=(Q+B)*G,A[13]=(J+Y)*W,A[14]=C*F,A[15]=1,A}function ll0(A,Q,B,Y){var J,C,X,G,W,F,Z,U,$,E,K=Q[0],I=Q[1],V=Q[2],H=Y[0],D=Y[1],L=Y[2],z=B[0],M=B[1],N=B[2];if(Math.abs(K-z)0)E=1/Math.sqrt(E),Z*=E,U*=E,$*=E;var K=W*$-F*U,I=F*Z-G*$,V=G*U-W*Z;if(E=K*K+I*I+V*V,E>0)E=1/Math.sqrt(E),K*=E,I*=E,V*=E;return A[0]=K,A[1]=I,A[2]=V,A[3]=0,A[4]=U*V-$*I,A[5]=$*K-Z*V,A[6]=Z*I-U*K,A[7]=0,A[8]=Z,A[9]=U,A[10]=$,A[11]=0,A[12]=J,A[13]=C,A[14]=X,A[15]=1,A}function il0(A){return"mat4("+A[0]+", "+A[1]+", "+A[2]+", "+A[3]+", "+A[4]+", "+A[5]+", "+A[6]+", "+A[7]+", "+A[8]+", "+A[9]+", "+A[10]+", "+A[11]+", "+A[12]+", "+A[13]+", "+A[14]+", "+A[15]+")"}function nl0(A){return Math.hypot(A[0],A[1],A[2],A[3],A[4],A[5],A[6],A[7],A[8],A[9],A[10],A[11],A[12],A[13],A[14],A[15])}function sl0(A,Q,B){return A[0]=Q[0]+B[0],A[1]=Q[1]+B[1],A[2]=Q[2]+B[2],A[3]=Q[3]+B[3],A[4]=Q[4]+B[4],A[5]=Q[5]+B[5],A[6]=Q[6]+B[6],A[7]=Q[7]+B[7],A[8]=Q[8]+B[8],A[9]=Q[9]+B[9],A[10]=Q[10]+B[10],A[11]=Q[11]+B[11],A[12]=Q[12]+B[12],A[13]=Q[13]+B[13],A[14]=Q[14]+B[14],A[15]=Q[15]+B[15],A}function eSQ(A,Q,B){return A[0]=Q[0]-B[0],A[1]=Q[1]-B[1],A[2]=Q[2]-B[2],A[3]=Q[3]-B[3],A[4]=Q[4]-B[4],A[5]=Q[5]-B[5],A[6]=Q[6]-B[6],A[7]=Q[7]-B[7],A[8]=Q[8]-B[8],A[9]=Q[9]-B[9],A[10]=Q[10]-B[10],A[11]=Q[11]-B[11],A[12]=Q[12]-B[12],A[13]=Q[13]-B[13],A[14]=Q[14]-B[14],A[15]=Q[15]-B[15],A}function rl0(A,Q,B){return A[0]=Q[0]*B,A[1]=Q[1]*B,A[2]=Q[2]*B,A[3]=Q[3]*B,A[4]=Q[4]*B,A[5]=Q[5]*B,A[6]=Q[6]*B,A[7]=Q[7]*B,A[8]=Q[8]*B,A[9]=Q[9]*B,A[10]=Q[10]*B,A[11]=Q[11]*B,A[12]=Q[12]*B,A[13]=Q[13]*B,A[14]=Q[14]*B,A[15]=Q[15]*B,A}function al0(A,Q,B,Y){return A[0]=Q[0]+B[0]*Y,A[1]=Q[1]+B[1]*Y,A[2]=Q[2]+B[2]*Y,A[3]=Q[3]+B[3]*Y,A[4]=Q[4]+B[4]*Y,A[5]=Q[5]+B[5]*Y,A[6]=Q[6]+B[6]*Y,A[7]=Q[7]+B[7]*Y,A[8]=Q[8]+B[8]*Y,A[9]=Q[9]+B[9]*Y,A[10]=Q[10]+B[10]*Y,A[11]=Q[11]+B[11]*Y,A[12]=Q[12]+B[12]*Y,A[13]=Q[13]+B[13]*Y,A[14]=Q[14]+B[14]*Y,A[15]=Q[15]+B[15]*Y,A}function ol0(A,Q){return A[0]===Q[0]&&A[1]===Q[1]&&A[2]===Q[2]&&A[3]===Q[3]&&A[4]===Q[4]&&A[5]===Q[5]&&A[6]===Q[6]&&A[7]===Q[7]&&A[8]===Q[8]&&A[9]===Q[9]&&A[10]===Q[10]&&A[11]===Q[11]&&A[12]===Q[12]&&A[13]===Q[13]&&A[14]===Q[14]&&A[15]===Q[15]}function tl0(A,Q){var B=A[0],Y=A[1],J=A[2],C=A[3],X=A[4],G=A[5],W=A[6],F=A[7],Z=A[8],U=A[9],$=A[10],E=A[11],K=A[12],I=A[13],V=A[14],H=A[15],D=Q[0],L=Q[1],z=Q[2],M=Q[3],N=Q[4],q=Q[5],w=Q[6],P=Q[7],_=Q[8],j=Q[9],k=Q[10],T=Q[11],S=Q[12],v=Q[13],y=Q[14],h=Q[15];return Math.abs(B-D)<=Y0.EPSILON*Math.max(1,Math.abs(B),Math.abs(D))&&Math.abs(Y-L)<=Y0.EPSILON*Math.max(1,Math.abs(Y),Math.abs(L))&&Math.abs(J-z)<=Y0.EPSILON*Math.max(1,Math.abs(J),Math.abs(z))&&Math.abs(C-M)<=Y0.EPSILON*Math.max(1,Math.abs(C),Math.abs(M))&&Math.abs(X-N)<=Y0.EPSILON*Math.max(1,Math.abs(X),Math.abs(N))&&Math.abs(G-q)<=Y0.EPSILON*Math.max(1,Math.abs(G),Math.abs(q))&&Math.abs(W-w)<=Y0.EPSILON*Math.max(1,Math.abs(W),Math.abs(w))&&Math.abs(F-P)<=Y0.EPSILON*Math.max(1,Math.abs(F),Math.abs(P))&&Math.abs(Z-_)<=Y0.EPSILON*Math.max(1,Math.abs(Z),Math.abs(_))&&Math.abs(U-j)<=Y0.EPSILON*Math.max(1,Math.abs(U),Math.abs(j))&&Math.abs($-k)<=Y0.EPSILON*Math.max(1,Math.abs($),Math.abs(k))&&Math.abs(E-T)<=Y0.EPSILON*Math.max(1,Math.abs(E),Math.abs(T))&&Math.abs(K-S)<=Y0.EPSILON*Math.max(1,Math.abs(K),Math.abs(S))&&Math.abs(I-v)<=Y0.EPSILON*Math.max(1,Math.abs(I),Math.abs(v))&&Math.abs(V-y)<=Y0.EPSILON*Math.max(1,Math.abs(V),Math.abs(y))&&Math.abs(H-h)<=Y0.EPSILON*Math.max(1,Math.abs(H),Math.abs(h))}var el0=sSQ;AkQ.mul=el0;var Ap0=eSQ;AkQ.sub=Ap0});var qt=R((UkQ)=>{function tk(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")tk=function(B){return typeof B};else tk=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return tk(A)}Object.defineProperty(UkQ,"__esModule",{value:!0});UkQ.create=YkQ;UkQ.clone=tp0;UkQ.length=JkQ;UkQ.fromValues=ep0;UkQ.copy=Ai0;UkQ.set=Qi0;UkQ.add=Bi0;UkQ.subtract=CkQ;UkQ.multiply=XkQ;UkQ.divide=GkQ;UkQ.ceil=Yi0;UkQ.floor=Ji0;UkQ.min=Ci0;UkQ.max=Xi0;UkQ.round=Gi0;UkQ.scale=Wi0;UkQ.scaleAndAdd=Fi0;UkQ.distance=WkQ;UkQ.squaredDistance=FkQ;UkQ.squaredLength=ZkQ;UkQ.negate=Zi0;UkQ.inverse=$i0;UkQ.normalize=Ui0;UkQ.dot=$kQ;UkQ.cross=Ei0;UkQ.lerp=Ki0;UkQ.hermite=Vi0;UkQ.bezier=Ii0;UkQ.random=Hi0;UkQ.transformMat4=Di0;UkQ.transformMat3=Ni0;UkQ.transformQuat=Li0;UkQ.rotateX=qi0;UkQ.rotateY=Mi0;UkQ.rotateZ=zi0;UkQ.angle=Ri0;UkQ.zero=wi0;UkQ.str=ji0;UkQ.exactEquals=Oi0;UkQ.equals=Pi0;UkQ.forEach=UkQ.sqrLen=UkQ.len=UkQ.sqrDist=UkQ.dist=UkQ.div=UkQ.mul=UkQ.sub=void 0;var cG=op0(M1());function BkQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(BkQ=function(J){return J?B:Q})(A)}function op0(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||tk(A)!=="object"&&typeof A!=="function")return{default:A};var B=BkQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function YkQ(){var A=new cG.ARRAY_TYPE(3);if(cG.ARRAY_TYPE!=Float32Array)A[0]=0,A[1]=0,A[2]=0;return A}function tp0(A){var Q=new cG.ARRAY_TYPE(3);return Q[0]=A[0],Q[1]=A[1],Q[2]=A[2],Q}function JkQ(A){var Q=A[0],B=A[1],Y=A[2];return Math.hypot(Q,B,Y)}function ep0(A,Q,B){var Y=new cG.ARRAY_TYPE(3);return Y[0]=A,Y[1]=Q,Y[2]=B,Y}function Ai0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A}function Qi0(A,Q,B,Y){return A[0]=Q,A[1]=B,A[2]=Y,A}function Bi0(A,Q,B){return A[0]=Q[0]+B[0],A[1]=Q[1]+B[1],A[2]=Q[2]+B[2],A}function CkQ(A,Q,B){return A[0]=Q[0]-B[0],A[1]=Q[1]-B[1],A[2]=Q[2]-B[2],A}function XkQ(A,Q,B){return A[0]=Q[0]*B[0],A[1]=Q[1]*B[1],A[2]=Q[2]*B[2],A}function GkQ(A,Q,B){return A[0]=Q[0]/B[0],A[1]=Q[1]/B[1],A[2]=Q[2]/B[2],A}function Yi0(A,Q){return A[0]=Math.ceil(Q[0]),A[1]=Math.ceil(Q[1]),A[2]=Math.ceil(Q[2]),A}function Ji0(A,Q){return A[0]=Math.floor(Q[0]),A[1]=Math.floor(Q[1]),A[2]=Math.floor(Q[2]),A}function Ci0(A,Q,B){return A[0]=Math.min(Q[0],B[0]),A[1]=Math.min(Q[1],B[1]),A[2]=Math.min(Q[2],B[2]),A}function Xi0(A,Q,B){return A[0]=Math.max(Q[0],B[0]),A[1]=Math.max(Q[1],B[1]),A[2]=Math.max(Q[2],B[2]),A}function Gi0(A,Q){return A[0]=Math.round(Q[0]),A[1]=Math.round(Q[1]),A[2]=Math.round(Q[2]),A}function Wi0(A,Q,B){return A[0]=Q[0]*B,A[1]=Q[1]*B,A[2]=Q[2]*B,A}function Fi0(A,Q,B,Y){return A[0]=Q[0]+B[0]*Y,A[1]=Q[1]+B[1]*Y,A[2]=Q[2]+B[2]*Y,A}function WkQ(A,Q){var B=Q[0]-A[0],Y=Q[1]-A[1],J=Q[2]-A[2];return Math.hypot(B,Y,J)}function FkQ(A,Q){var B=Q[0]-A[0],Y=Q[1]-A[1],J=Q[2]-A[2];return B*B+Y*Y+J*J}function ZkQ(A){var Q=A[0],B=A[1],Y=A[2];return Q*Q+B*B+Y*Y}function Zi0(A,Q){return A[0]=-Q[0],A[1]=-Q[1],A[2]=-Q[2],A}function $i0(A,Q){return A[0]=1/Q[0],A[1]=1/Q[1],A[2]=1/Q[2],A}function Ui0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=B*B+Y*Y+J*J;if(C>0)C=1/Math.sqrt(C);return A[0]=Q[0]*C,A[1]=Q[1]*C,A[2]=Q[2]*C,A}function $kQ(A,Q){return A[0]*Q[0]+A[1]*Q[1]+A[2]*Q[2]}function Ei0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=B[0],G=B[1],W=B[2];return A[0]=J*W-C*G,A[1]=C*X-Y*W,A[2]=Y*G-J*X,A}function Ki0(A,Q,B,Y){var J=Q[0],C=Q[1],X=Q[2];return A[0]=J+Y*(B[0]-J),A[1]=C+Y*(B[1]-C),A[2]=X+Y*(B[2]-X),A}function Vi0(A,Q,B,Y,J,C){var X=C*C,G=X*(2*C-3)+1,W=X*(C-2)+C,F=X*(C-1),Z=X*(3-2*C);return A[0]=Q[0]*G+B[0]*W+Y[0]*F+J[0]*Z,A[1]=Q[1]*G+B[1]*W+Y[1]*F+J[1]*Z,A[2]=Q[2]*G+B[2]*W+Y[2]*F+J[2]*Z,A}function Ii0(A,Q,B,Y,J,C){var X=1-C,G=X*X,W=C*C,F=G*X,Z=3*C*G,U=3*W*X,$=W*C;return A[0]=Q[0]*F+B[0]*Z+Y[0]*U+J[0]*$,A[1]=Q[1]*F+B[1]*Z+Y[1]*U+J[1]*$,A[2]=Q[2]*F+B[2]*Z+Y[2]*U+J[2]*$,A}function Hi0(A,Q){Q=Q||1;var B=cG.RANDOM()*2*Math.PI,Y=cG.RANDOM()*2-1,J=Math.sqrt(1-Y*Y)*Q;return A[0]=Math.cos(B)*J,A[1]=Math.sin(B)*J,A[2]=Y*Q,A}function Di0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=B[3]*Y+B[7]*J+B[11]*C+B[15];return X=X||1,A[0]=(B[0]*Y+B[4]*J+B[8]*C+B[12])/X,A[1]=(B[1]*Y+B[5]*J+B[9]*C+B[13])/X,A[2]=(B[2]*Y+B[6]*J+B[10]*C+B[14])/X,A}function Ni0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2];return A[0]=Y*B[0]+J*B[3]+C*B[6],A[1]=Y*B[1]+J*B[4]+C*B[7],A[2]=Y*B[2]+J*B[5]+C*B[8],A}function Li0(A,Q,B){var Y=B[0],J=B[1],C=B[2],X=B[3],G=Q[0],W=Q[1],F=Q[2],Z=J*F-C*W,U=C*G-Y*F,$=Y*W-J*G,E=J*$-C*U,K=C*Z-Y*$,I=Y*U-J*Z,V=X*2;return Z*=V,U*=V,$*=V,E*=2,K*=2,I*=2,A[0]=G+Z+E,A[1]=W+U+K,A[2]=F+$+I,A}function qi0(A,Q,B,Y){var J=[],C=[];return J[0]=Q[0]-B[0],J[1]=Q[1]-B[1],J[2]=Q[2]-B[2],C[0]=J[0],C[1]=J[1]*Math.cos(Y)-J[2]*Math.sin(Y),C[2]=J[1]*Math.sin(Y)+J[2]*Math.cos(Y),A[0]=C[0]+B[0],A[1]=C[1]+B[1],A[2]=C[2]+B[2],A}function Mi0(A,Q,B,Y){var J=[],C=[];return J[0]=Q[0]-B[0],J[1]=Q[1]-B[1],J[2]=Q[2]-B[2],C[0]=J[2]*Math.sin(Y)+J[0]*Math.cos(Y),C[1]=J[1],C[2]=J[2]*Math.cos(Y)-J[0]*Math.sin(Y),A[0]=C[0]+B[0],A[1]=C[1]+B[1],A[2]=C[2]+B[2],A}function zi0(A,Q,B,Y){var J=[],C=[];return J[0]=Q[0]-B[0],J[1]=Q[1]-B[1],J[2]=Q[2]-B[2],C[0]=J[0]*Math.cos(Y)-J[1]*Math.sin(Y),C[1]=J[0]*Math.sin(Y)+J[1]*Math.cos(Y),C[2]=J[2],A[0]=C[0]+B[0],A[1]=C[1]+B[1],A[2]=C[2]+B[2],A}function Ri0(A,Q){var B=A[0],Y=A[1],J=A[2],C=Q[0],X=Q[1],G=Q[2],W=Math.sqrt(B*B+Y*Y+J*J),F=Math.sqrt(C*C+X*X+G*G),Z=W*F,U=Z&&$kQ(A,Q)/Z;return Math.acos(Math.min(Math.max(U,-1),1))}function wi0(A){return A[0]=0,A[1]=0,A[2]=0,A}function ji0(A){return"vec3("+A[0]+", "+A[1]+", "+A[2]+")"}function Oi0(A,Q){return A[0]===Q[0]&&A[1]===Q[1]&&A[2]===Q[2]}function Pi0(A,Q){var B=A[0],Y=A[1],J=A[2],C=Q[0],X=Q[1],G=Q[2];return Math.abs(B-C)<=cG.EPSILON*Math.max(1,Math.abs(B),Math.abs(C))&&Math.abs(Y-X)<=cG.EPSILON*Math.max(1,Math.abs(Y),Math.abs(X))&&Math.abs(J-G)<=cG.EPSILON*Math.max(1,Math.abs(J),Math.abs(G))}var Ti0=CkQ;UkQ.sub=Ti0;var Si0=XkQ;UkQ.mul=Si0;var ki0=GkQ;UkQ.div=ki0;var _i0=WkQ;UkQ.dist=_i0;var vi0=FkQ;UkQ.sqrDist=vi0;var yi0=JkQ;UkQ.len=yi0;var gi0=ZkQ;UkQ.sqrLen=gi0;var hi0=function(){var A=YkQ();return function(Q,B,Y,J,C,X){var G,W;if(!B)B=3;if(!Y)Y=0;if(J)W=Math.min(J*B+Y,Q.length);else W=Q.length;for(G=Y;G{function ek(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")ek=function(B){return typeof B};else ek=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return ek(A)}Object.defineProperty(zkQ,"__esModule",{value:!0});zkQ.create=VkQ;zkQ.clone=kn0;zkQ.fromValues=_n0;zkQ.copy=vn0;zkQ.set=yn0;zkQ.add=gn0;zkQ.subtract=IkQ;zkQ.multiply=HkQ;zkQ.divide=DkQ;zkQ.ceil=hn0;zkQ.floor=xn0;zkQ.min=fn0;zkQ.max=bn0;zkQ.round=mn0;zkQ.scale=un0;zkQ.scaleAndAdd=dn0;zkQ.distance=NkQ;zkQ.squaredDistance=LkQ;zkQ.length=qkQ;zkQ.squaredLength=MkQ;zkQ.negate=cn0;zkQ.inverse=ln0;zkQ.normalize=pn0;zkQ.dot=in0;zkQ.cross=nn0;zkQ.lerp=sn0;zkQ.random=rn0;zkQ.transformMat4=an0;zkQ.transformQuat=on0;zkQ.zero=tn0;zkQ.str=en0;zkQ.exactEquals=As0;zkQ.equals=Qs0;zkQ.forEach=zkQ.sqrLen=zkQ.len=zkQ.sqrDist=zkQ.dist=zkQ.div=zkQ.mul=zkQ.sub=void 0;var KC=Sn0(M1());function KkQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(KkQ=function(J){return J?B:Q})(A)}function Sn0(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||ek(A)!=="object"&&typeof A!=="function")return{default:A};var B=KkQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function VkQ(){var A=new KC.ARRAY_TYPE(4);if(KC.ARRAY_TYPE!=Float32Array)A[0]=0,A[1]=0,A[2]=0,A[3]=0;return A}function kn0(A){var Q=new KC.ARRAY_TYPE(4);return Q[0]=A[0],Q[1]=A[1],Q[2]=A[2],Q[3]=A[3],Q}function _n0(A,Q,B,Y){var J=new KC.ARRAY_TYPE(4);return J[0]=A,J[1]=Q,J[2]=B,J[3]=Y,J}function vn0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A[3]=Q[3],A}function yn0(A,Q,B,Y,J){return A[0]=Q,A[1]=B,A[2]=Y,A[3]=J,A}function gn0(A,Q,B){return A[0]=Q[0]+B[0],A[1]=Q[1]+B[1],A[2]=Q[2]+B[2],A[3]=Q[3]+B[3],A}function IkQ(A,Q,B){return A[0]=Q[0]-B[0],A[1]=Q[1]-B[1],A[2]=Q[2]-B[2],A[3]=Q[3]-B[3],A}function HkQ(A,Q,B){return A[0]=Q[0]*B[0],A[1]=Q[1]*B[1],A[2]=Q[2]*B[2],A[3]=Q[3]*B[3],A}function DkQ(A,Q,B){return A[0]=Q[0]/B[0],A[1]=Q[1]/B[1],A[2]=Q[2]/B[2],A[3]=Q[3]/B[3],A}function hn0(A,Q){return A[0]=Math.ceil(Q[0]),A[1]=Math.ceil(Q[1]),A[2]=Math.ceil(Q[2]),A[3]=Math.ceil(Q[3]),A}function xn0(A,Q){return A[0]=Math.floor(Q[0]),A[1]=Math.floor(Q[1]),A[2]=Math.floor(Q[2]),A[3]=Math.floor(Q[3]),A}function fn0(A,Q,B){return A[0]=Math.min(Q[0],B[0]),A[1]=Math.min(Q[1],B[1]),A[2]=Math.min(Q[2],B[2]),A[3]=Math.min(Q[3],B[3]),A}function bn0(A,Q,B){return A[0]=Math.max(Q[0],B[0]),A[1]=Math.max(Q[1],B[1]),A[2]=Math.max(Q[2],B[2]),A[3]=Math.max(Q[3],B[3]),A}function mn0(A,Q){return A[0]=Math.round(Q[0]),A[1]=Math.round(Q[1]),A[2]=Math.round(Q[2]),A[3]=Math.round(Q[3]),A}function un0(A,Q,B){return A[0]=Q[0]*B,A[1]=Q[1]*B,A[2]=Q[2]*B,A[3]=Q[3]*B,A}function dn0(A,Q,B,Y){return A[0]=Q[0]+B[0]*Y,A[1]=Q[1]+B[1]*Y,A[2]=Q[2]+B[2]*Y,A[3]=Q[3]+B[3]*Y,A}function NkQ(A,Q){var B=Q[0]-A[0],Y=Q[1]-A[1],J=Q[2]-A[2],C=Q[3]-A[3];return Math.hypot(B,Y,J,C)}function LkQ(A,Q){var B=Q[0]-A[0],Y=Q[1]-A[1],J=Q[2]-A[2],C=Q[3]-A[3];return B*B+Y*Y+J*J+C*C}function qkQ(A){var Q=A[0],B=A[1],Y=A[2],J=A[3];return Math.hypot(Q,B,Y,J)}function MkQ(A){var Q=A[0],B=A[1],Y=A[2],J=A[3];return Q*Q+B*B+Y*Y+J*J}function cn0(A,Q){return A[0]=-Q[0],A[1]=-Q[1],A[2]=-Q[2],A[3]=-Q[3],A}function ln0(A,Q){return A[0]=1/Q[0],A[1]=1/Q[1],A[2]=1/Q[2],A[3]=1/Q[3],A}function pn0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=B*B+Y*Y+J*J+C*C;if(X>0)X=1/Math.sqrt(X);return A[0]=B*X,A[1]=Y*X,A[2]=J*X,A[3]=C*X,A}function in0(A,Q){return A[0]*Q[0]+A[1]*Q[1]+A[2]*Q[2]+A[3]*Q[3]}function nn0(A,Q,B,Y){var J=B[0]*Y[1]-B[1]*Y[0],C=B[0]*Y[2]-B[2]*Y[0],X=B[0]*Y[3]-B[3]*Y[0],G=B[1]*Y[2]-B[2]*Y[1],W=B[1]*Y[3]-B[3]*Y[1],F=B[2]*Y[3]-B[3]*Y[2],Z=Q[0],U=Q[1],$=Q[2],E=Q[3];return A[0]=U*F-$*W+E*G,A[1]=-(Z*F)+$*X-E*C,A[2]=Z*W-U*X+E*J,A[3]=-(Z*G)+U*C-$*J,A}function sn0(A,Q,B,Y){var J=Q[0],C=Q[1],X=Q[2],G=Q[3];return A[0]=J+Y*(B[0]-J),A[1]=C+Y*(B[1]-C),A[2]=X+Y*(B[2]-X),A[3]=G+Y*(B[3]-G),A}function rn0(A,Q){Q=Q||1;var B,Y,J,C,X,G;do B=KC.RANDOM()*2-1,Y=KC.RANDOM()*2-1,X=B*B+Y*Y;while(X>=1);do J=KC.RANDOM()*2-1,C=KC.RANDOM()*2-1,G=J*J+C*C;while(G>=1);var W=Math.sqrt((1-X)/G);return A[0]=Q*B,A[1]=Q*Y,A[2]=Q*J*W,A[3]=Q*C*W,A}function an0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3];return A[0]=B[0]*Y+B[4]*J+B[8]*C+B[12]*X,A[1]=B[1]*Y+B[5]*J+B[9]*C+B[13]*X,A[2]=B[2]*Y+B[6]*J+B[10]*C+B[14]*X,A[3]=B[3]*Y+B[7]*J+B[11]*C+B[15]*X,A}function on0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=B[0],G=B[1],W=B[2],F=B[3],Z=F*Y+G*C-W*J,U=F*J+W*Y-X*C,$=F*C+X*J-G*Y,E=-X*Y-G*J-W*C;return A[0]=Z*F+E*-X+U*-W-$*-G,A[1]=U*F+E*-G+$*-X-Z*-W,A[2]=$*F+E*-W+Z*-G-U*-X,A[3]=Q[3],A}function tn0(A){return A[0]=0,A[1]=0,A[2]=0,A[3]=0,A}function en0(A){return"vec4("+A[0]+", "+A[1]+", "+A[2]+", "+A[3]+")"}function As0(A,Q){return A[0]===Q[0]&&A[1]===Q[1]&&A[2]===Q[2]&&A[3]===Q[3]}function Qs0(A,Q){var B=A[0],Y=A[1],J=A[2],C=A[3],X=Q[0],G=Q[1],W=Q[2],F=Q[3];return Math.abs(B-X)<=KC.EPSILON*Math.max(1,Math.abs(B),Math.abs(X))&&Math.abs(Y-G)<=KC.EPSILON*Math.max(1,Math.abs(Y),Math.abs(G))&&Math.abs(J-W)<=KC.EPSILON*Math.max(1,Math.abs(J),Math.abs(W))&&Math.abs(C-F)<=KC.EPSILON*Math.max(1,Math.abs(C),Math.abs(F))}var Bs0=IkQ;zkQ.sub=Bs0;var Ys0=HkQ;zkQ.mul=Ys0;var Js0=DkQ;zkQ.div=Js0;var Cs0=NkQ;zkQ.dist=Cs0;var Xs0=LkQ;zkQ.sqrDist=Xs0;var Gs0=qkQ;zkQ.len=Gs0;var Ws0=MkQ;zkQ.sqrLen=Ws0;var Fs0=function(){var A=VkQ();return function(Q,B,Y,J,C,X){var G,W;if(!B)B=4;if(!Y)Y=0;if(J)W=Math.min(J*B+Y,Q.length);else W=Q.length;for(G=Y;G{function A_(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")A_=function(B){return typeof B};else A_=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return A_(A)}Object.defineProperty(gkQ,"__esModule",{value:!0});gkQ.create=zt;gkQ.identity=os0;gkQ.setAxisAngle=jkQ;gkQ.getAxisAngle=ts0;gkQ.getAngle=es0;gkQ.multiply=OkQ;gkQ.rotateX=Ar0;gkQ.rotateY=Qr0;gkQ.rotateZ=Br0;gkQ.calculateW=Yr0;gkQ.exp=PkQ;gkQ.ln=TkQ;gkQ.pow=Jr0;gkQ.slerp=Q_;gkQ.random=Cr0;gkQ.invert=Xr0;gkQ.conjugate=Gr0;gkQ.fromMat3=SkQ;gkQ.fromEuler=Wr0;gkQ.str=Fr0;gkQ.setAxes=gkQ.sqlerp=gkQ.rotationTo=gkQ.equals=gkQ.exactEquals=gkQ.normalize=gkQ.sqrLen=gkQ.squaredLength=gkQ.len=gkQ.length=gkQ.lerp=gkQ.dot=gkQ.scale=gkQ.mul=gkQ.add=gkQ.set=gkQ.copy=gkQ.fromValues=gkQ.clone=void 0;var K4=B_(M1()),as0=B_(Nt()),lG=B_(qt()),e8=B_(Mt());function wkQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(wkQ=function(J){return J?B:Q})(A)}function B_(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||A_(A)!=="object"&&typeof A!=="function")return{default:A};var B=wkQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function zt(){var A=new K4.ARRAY_TYPE(4);if(K4.ARRAY_TYPE!=Float32Array)A[0]=0,A[1]=0,A[2]=0;return A[3]=1,A}function os0(A){return A[0]=0,A[1]=0,A[2]=0,A[3]=1,A}function jkQ(A,Q,B){B=B*0.5;var Y=Math.sin(B);return A[0]=Y*Q[0],A[1]=Y*Q[1],A[2]=Y*Q[2],A[3]=Math.cos(B),A}function ts0(A,Q){var B=Math.acos(Q[3])*2,Y=Math.sin(B/2);if(Y>K4.EPSILON)A[0]=Q[0]/Y,A[1]=Q[1]/Y,A[2]=Q[2]/Y;else A[0]=1,A[1]=0,A[2]=0;return B}function es0(A,Q){var B=_kQ(A,Q);return Math.acos(2*B*B-1)}function OkQ(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=B[0],W=B[1],F=B[2],Z=B[3];return A[0]=Y*Z+X*G+J*F-C*W,A[1]=J*Z+X*W+C*G-Y*F,A[2]=C*Z+X*F+Y*W-J*G,A[3]=X*Z-Y*G-J*W-C*F,A}function Ar0(A,Q,B){B*=0.5;var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Math.sin(B),W=Math.cos(B);return A[0]=Y*W+X*G,A[1]=J*W+C*G,A[2]=C*W-J*G,A[3]=X*W-Y*G,A}function Qr0(A,Q,B){B*=0.5;var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Math.sin(B),W=Math.cos(B);return A[0]=Y*W-C*G,A[1]=J*W+X*G,A[2]=C*W+Y*G,A[3]=X*W-J*G,A}function Br0(A,Q,B){B*=0.5;var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Math.sin(B),W=Math.cos(B);return A[0]=Y*W+J*G,A[1]=J*W-Y*G,A[2]=C*W+X*G,A[3]=X*W-C*G,A}function Yr0(A,Q){var B=Q[0],Y=Q[1],J=Q[2];return A[0]=B,A[1]=Y,A[2]=J,A[3]=Math.sqrt(Math.abs(1-B*B-Y*Y-J*J)),A}function PkQ(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Math.sqrt(B*B+Y*Y+J*J),G=Math.exp(C),W=X>0?G*Math.sin(X)/X:0;return A[0]=B*W,A[1]=Y*W,A[2]=J*W,A[3]=G*Math.cos(X),A}function TkQ(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Math.sqrt(B*B+Y*Y+J*J),G=X>0?Math.atan2(X,C)/X:0;return A[0]=B*G,A[1]=Y*G,A[2]=J*G,A[3]=0.5*Math.log(B*B+Y*Y+J*J+C*C),A}function Jr0(A,Q,B){return TkQ(A,Q),kkQ(A,A,B),PkQ(A,A),A}function Q_(A,Q,B,Y){var J=Q[0],C=Q[1],X=Q[2],G=Q[3],W=B[0],F=B[1],Z=B[2],U=B[3],$,E,K,I,V;if(E=J*W+C*F+X*Z+G*U,E<0)E=-E,W=-W,F=-F,Z=-Z,U=-U;if(1-E>K4.EPSILON)$=Math.acos(E),K=Math.sin($),I=Math.sin((1-Y)*$)/K,V=Math.sin(Y*$)/K;else I=1-Y,V=Y;return A[0]=I*J+V*W,A[1]=I*C+V*F,A[2]=I*X+V*Z,A[3]=I*G+V*U,A}function Cr0(A){var Q=K4.RANDOM(),B=K4.RANDOM(),Y=K4.RANDOM(),J=Math.sqrt(1-Q),C=Math.sqrt(Q);return A[0]=J*Math.sin(2*Math.PI*B),A[1]=J*Math.cos(2*Math.PI*B),A[2]=C*Math.sin(2*Math.PI*Y),A[3]=C*Math.cos(2*Math.PI*Y),A}function Xr0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=B*B+Y*Y+J*J+C*C,G=X?1/X:0;return A[0]=-B*G,A[1]=-Y*G,A[2]=-J*G,A[3]=C*G,A}function Gr0(A,Q){return A[0]=-Q[0],A[1]=-Q[1],A[2]=-Q[2],A[3]=Q[3],A}function SkQ(A,Q){var B=Q[0]+Q[4]+Q[8],Y;if(B>0)Y=Math.sqrt(B+1),A[3]=0.5*Y,Y=0.5/Y,A[0]=(Q[5]-Q[7])*Y,A[1]=(Q[6]-Q[2])*Y,A[2]=(Q[1]-Q[3])*Y;else{var J=0;if(Q[4]>Q[0])J=1;if(Q[8]>Q[J*3+J])J=2;var C=(J+1)%3,X=(J+2)%3;Y=Math.sqrt(Q[J*3+J]-Q[C*3+C]-Q[X*3+X]+1),A[J]=0.5*Y,Y=0.5/Y,A[3]=(Q[C*3+X]-Q[X*3+C])*Y,A[C]=(Q[C*3+J]+Q[J*3+C])*Y,A[X]=(Q[X*3+J]+Q[J*3+X])*Y}return A}function Wr0(A,Q,B,Y){var J=0.5*Math.PI/180;Q*=J,B*=J,Y*=J;var C=Math.sin(Q),X=Math.cos(Q),G=Math.sin(B),W=Math.cos(B),F=Math.sin(Y),Z=Math.cos(Y);return A[0]=C*W*Z-X*G*F,A[1]=X*G*Z+C*W*F,A[2]=X*W*F-C*G*Z,A[3]=X*W*Z+C*G*F,A}function Fr0(A){return"quat("+A[0]+", "+A[1]+", "+A[2]+", "+A[3]+")"}var Zr0=e8.clone;gkQ.clone=Zr0;var $r0=e8.fromValues;gkQ.fromValues=$r0;var Ur0=e8.copy;gkQ.copy=Ur0;var Er0=e8.set;gkQ.set=Er0;var Kr0=e8.add;gkQ.add=Kr0;var Vr0=OkQ;gkQ.mul=Vr0;var kkQ=e8.scale;gkQ.scale=kkQ;var _kQ=e8.dot;gkQ.dot=_kQ;var Ir0=e8.lerp;gkQ.lerp=Ir0;var vkQ=e8.length;gkQ.length=vkQ;var Hr0=vkQ;gkQ.len=Hr0;var ykQ=e8.squaredLength;gkQ.squaredLength=ykQ;var Dr0=ykQ;gkQ.sqrLen=Dr0;var Rt=e8.normalize;gkQ.normalize=Rt;var Nr0=e8.exactEquals;gkQ.exactEquals=Nr0;var Lr0=e8.equals;gkQ.equals=Lr0;var qr0=function(){var A=lG.create(),Q=lG.fromValues(1,0,0),B=lG.fromValues(0,1,0);return function(Y,J,C){var X=lG.dot(J,C);if(X<-0.999999){if(lG.cross(A,Q,J),lG.len(A)<0.000001)lG.cross(A,B,J);return lG.normalize(A,A),jkQ(Y,A,Math.PI),Y}else if(X>0.999999)return Y[0]=0,Y[1]=0,Y[2]=0,Y[3]=1,Y;else return lG.cross(A,J,C),Y[0]=A[0],Y[1]=A[1],Y[2]=A[2],Y[3]=1+X,Rt(Y,Y)}}();gkQ.rotationTo=qr0;var Mr0=function(){var A=zt(),Q=zt();return function(B,Y,J,C,X,G){return Q_(A,Y,X,G),Q_(Q,J,C,G),Q_(B,A,Q,2*G*(1-G)),B}}();gkQ.sqlerp=Mr0;var zr0=function(){var A=as0.create();return function(Q,B,Y,J){return A[0]=Y[0],A[3]=Y[1],A[6]=Y[2],A[1]=J[0],A[4]=J[1],A[7]=J[2],A[2]=-B[0],A[5]=-B[1],A[8]=-B[2],Rt(Q,SkQ(Q,A))}}();gkQ.setAxes=zr0});var ikQ=R((lkQ)=>{function Y_(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")Y_=function(B){return typeof B};else Y_=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return Y_(A)}Object.defineProperty(lkQ,"__esModule",{value:!0});lkQ.create=Wa0;lkQ.clone=Fa0;lkQ.fromValues=Za0;lkQ.fromRotationTranslationValues=$a0;lkQ.fromRotationTranslation=bkQ;lkQ.fromTranslation=Ua0;lkQ.fromRotation=Ea0;lkQ.fromMat4=Ka0;lkQ.copy=mkQ;lkQ.identity=Va0;lkQ.set=Ia0;lkQ.getDual=Da0;lkQ.setDual=La0;lkQ.getTranslation=qa0;lkQ.translate=Ma0;lkQ.rotateX=za0;lkQ.rotateY=Ra0;lkQ.rotateZ=wa0;lkQ.rotateByQuatAppend=ja0;lkQ.rotateByQuatPrepend=Oa0;lkQ.rotateAroundAxis=Pa0;lkQ.add=Ta0;lkQ.multiply=ukQ;lkQ.scale=ka0;lkQ.lerp=_a0;lkQ.invert=va0;lkQ.conjugate=ya0;lkQ.normalize=xa0;lkQ.str=fa0;lkQ.exactEquals=ba0;lkQ.equals=ma0;lkQ.sqrLen=lkQ.squaredLength=lkQ.len=lkQ.length=lkQ.dot=lkQ.mul=lkQ.setReal=lkQ.getReal=void 0;var j9=jt(M1()),pG=jt(wt()),xkQ=jt(Lt());function fkQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(fkQ=function(J){return J?B:Q})(A)}function jt(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||Y_(A)!=="object"&&typeof A!=="function")return{default:A};var B=fkQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function Wa0(){var A=new j9.ARRAY_TYPE(8);if(j9.ARRAY_TYPE!=Float32Array)A[0]=0,A[1]=0,A[2]=0,A[4]=0,A[5]=0,A[6]=0,A[7]=0;return A[3]=1,A}function Fa0(A){var Q=new j9.ARRAY_TYPE(8);return Q[0]=A[0],Q[1]=A[1],Q[2]=A[2],Q[3]=A[3],Q[4]=A[4],Q[5]=A[5],Q[6]=A[6],Q[7]=A[7],Q}function Za0(A,Q,B,Y,J,C,X,G){var W=new j9.ARRAY_TYPE(8);return W[0]=A,W[1]=Q,W[2]=B,W[3]=Y,W[4]=J,W[5]=C,W[6]=X,W[7]=G,W}function $a0(A,Q,B,Y,J,C,X){var G=new j9.ARRAY_TYPE(8);G[0]=A,G[1]=Q,G[2]=B,G[3]=Y;var W=J*0.5,F=C*0.5,Z=X*0.5;return G[4]=W*Y+F*B-Z*Q,G[5]=F*Y+Z*A-W*B,G[6]=Z*Y+W*Q-F*A,G[7]=-W*A-F*Q-Z*B,G}function bkQ(A,Q,B){var Y=B[0]*0.5,J=B[1]*0.5,C=B[2]*0.5,X=Q[0],G=Q[1],W=Q[2],F=Q[3];return A[0]=X,A[1]=G,A[2]=W,A[3]=F,A[4]=Y*F+J*W-C*G,A[5]=J*F+C*X-Y*W,A[6]=C*F+Y*G-J*X,A[7]=-Y*X-J*G-C*W,A}function Ua0(A,Q){return A[0]=0,A[1]=0,A[2]=0,A[3]=1,A[4]=Q[0]*0.5,A[5]=Q[1]*0.5,A[6]=Q[2]*0.5,A[7]=0,A}function Ea0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A[3]=Q[3],A[4]=0,A[5]=0,A[6]=0,A[7]=0,A}function Ka0(A,Q){var B=pG.create();xkQ.getRotation(B,Q);var Y=new j9.ARRAY_TYPE(3);return xkQ.getTranslation(Y,Q),bkQ(A,B,Y),A}function mkQ(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A[3]=Q[3],A[4]=Q[4],A[5]=Q[5],A[6]=Q[6],A[7]=Q[7],A}function Va0(A){return A[0]=0,A[1]=0,A[2]=0,A[3]=1,A[4]=0,A[5]=0,A[6]=0,A[7]=0,A}function Ia0(A,Q,B,Y,J,C,X,G,W){return A[0]=Q,A[1]=B,A[2]=Y,A[3]=J,A[4]=C,A[5]=X,A[6]=G,A[7]=W,A}var Ha0=pG.copy;lkQ.getReal=Ha0;function Da0(A,Q){return A[0]=Q[4],A[1]=Q[5],A[2]=Q[6],A[3]=Q[7],A}var Na0=pG.copy;lkQ.setReal=Na0;function La0(A,Q){return A[4]=Q[0],A[5]=Q[1],A[6]=Q[2],A[7]=Q[3],A}function qa0(A,Q){var B=Q[4],Y=Q[5],J=Q[6],C=Q[7],X=-Q[0],G=-Q[1],W=-Q[2],F=Q[3];return A[0]=(B*F+C*X+Y*W-J*G)*2,A[1]=(Y*F+C*G+J*X-B*W)*2,A[2]=(J*F+C*W+B*G-Y*X)*2,A}function Ma0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=B[0]*0.5,W=B[1]*0.5,F=B[2]*0.5,Z=Q[4],U=Q[5],$=Q[6],E=Q[7];return A[0]=Y,A[1]=J,A[2]=C,A[3]=X,A[4]=X*G+J*F-C*W+Z,A[5]=X*W+C*G-Y*F+U,A[6]=X*F+Y*W-J*G+$,A[7]=-Y*G-J*W-C*F+E,A}function za0(A,Q,B){var Y=-Q[0],J=-Q[1],C=-Q[2],X=Q[3],G=Q[4],W=Q[5],F=Q[6],Z=Q[7],U=G*X+Z*Y+W*C-F*J,$=W*X+Z*J+F*Y-G*C,E=F*X+Z*C+G*J-W*Y,K=Z*X-G*Y-W*J-F*C;return pG.rotateX(A,Q,B),Y=A[0],J=A[1],C=A[2],X=A[3],A[4]=U*X+K*Y+$*C-E*J,A[5]=$*X+K*J+E*Y-U*C,A[6]=E*X+K*C+U*J-$*Y,A[7]=K*X-U*Y-$*J-E*C,A}function Ra0(A,Q,B){var Y=-Q[0],J=-Q[1],C=-Q[2],X=Q[3],G=Q[4],W=Q[5],F=Q[6],Z=Q[7],U=G*X+Z*Y+W*C-F*J,$=W*X+Z*J+F*Y-G*C,E=F*X+Z*C+G*J-W*Y,K=Z*X-G*Y-W*J-F*C;return pG.rotateY(A,Q,B),Y=A[0],J=A[1],C=A[2],X=A[3],A[4]=U*X+K*Y+$*C-E*J,A[5]=$*X+K*J+E*Y-U*C,A[6]=E*X+K*C+U*J-$*Y,A[7]=K*X-U*Y-$*J-E*C,A}function wa0(A,Q,B){var Y=-Q[0],J=-Q[1],C=-Q[2],X=Q[3],G=Q[4],W=Q[5],F=Q[6],Z=Q[7],U=G*X+Z*Y+W*C-F*J,$=W*X+Z*J+F*Y-G*C,E=F*X+Z*C+G*J-W*Y,K=Z*X-G*Y-W*J-F*C;return pG.rotateZ(A,Q,B),Y=A[0],J=A[1],C=A[2],X=A[3],A[4]=U*X+K*Y+$*C-E*J,A[5]=$*X+K*J+E*Y-U*C,A[6]=E*X+K*C+U*J-$*Y,A[7]=K*X-U*Y-$*J-E*C,A}function ja0(A,Q,B){var Y=B[0],J=B[1],C=B[2],X=B[3],G=Q[0],W=Q[1],F=Q[2],Z=Q[3];return A[0]=G*X+Z*Y+W*C-F*J,A[1]=W*X+Z*J+F*Y-G*C,A[2]=F*X+Z*C+G*J-W*Y,A[3]=Z*X-G*Y-W*J-F*C,G=Q[4],W=Q[5],F=Q[6],Z=Q[7],A[4]=G*X+Z*Y+W*C-F*J,A[5]=W*X+Z*J+F*Y-G*C,A[6]=F*X+Z*C+G*J-W*Y,A[7]=Z*X-G*Y-W*J-F*C,A}function Oa0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=B[0],W=B[1],F=B[2],Z=B[3];return A[0]=Y*Z+X*G+J*F-C*W,A[1]=J*Z+X*W+C*G-Y*F,A[2]=C*Z+X*F+Y*W-J*G,A[3]=X*Z-Y*G-J*W-C*F,G=B[4],W=B[5],F=B[6],Z=B[7],A[4]=Y*Z+X*G+J*F-C*W,A[5]=J*Z+X*W+C*G-Y*F,A[6]=C*Z+X*F+Y*W-J*G,A[7]=X*Z-Y*G-J*W-C*F,A}function Pa0(A,Q,B,Y){if(Math.abs(Y)0){B=Math.sqrt(B);var Y=Q[0]/B,J=Q[1]/B,C=Q[2]/B,X=Q[3]/B,G=Q[4],W=Q[5],F=Q[6],Z=Q[7],U=Y*G+J*W+C*F+X*Z;A[0]=Y,A[1]=J,A[2]=C,A[3]=X,A[4]=(G-Y*U)/B,A[5]=(W-J*U)/B,A[6]=(F-C*U)/B,A[7]=(Z-X*U)/B}return A}function fa0(A){return"quat2("+A[0]+", "+A[1]+", "+A[2]+", "+A[3]+", "+A[4]+", "+A[5]+", "+A[6]+", "+A[7]+")"}function ba0(A,Q){return A[0]===Q[0]&&A[1]===Q[1]&&A[2]===Q[2]&&A[3]===Q[3]&&A[4]===Q[4]&&A[5]===Q[5]&&A[6]===Q[6]&&A[7]===Q[7]}function ma0(A,Q){var B=A[0],Y=A[1],J=A[2],C=A[3],X=A[4],G=A[5],W=A[6],F=A[7],Z=Q[0],U=Q[1],$=Q[2],E=Q[3],K=Q[4],I=Q[5],V=Q[6],H=Q[7];return Math.abs(B-Z)<=j9.EPSILON*Math.max(1,Math.abs(B),Math.abs(Z))&&Math.abs(Y-U)<=j9.EPSILON*Math.max(1,Math.abs(Y),Math.abs(U))&&Math.abs(J-$)<=j9.EPSILON*Math.max(1,Math.abs(J),Math.abs($))&&Math.abs(C-E)<=j9.EPSILON*Math.max(1,Math.abs(C),Math.abs(E))&&Math.abs(X-K)<=j9.EPSILON*Math.max(1,Math.abs(X),Math.abs(K))&&Math.abs(G-I)<=j9.EPSILON*Math.max(1,Math.abs(G),Math.abs(I))&&Math.abs(W-V)<=j9.EPSILON*Math.max(1,Math.abs(W),Math.abs(V))&&Math.abs(F-H)<=j9.EPSILON*Math.max(1,Math.abs(F),Math.abs(H))}});var J_Q=R((B_Q)=>{function C_(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")C_=function(B){return typeof B};else C_=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return C_(A)}Object.defineProperty(B_Q,"__esModule",{value:!0});B_Q.create=skQ;B_Q.clone=jo0;B_Q.fromValues=Oo0;B_Q.copy=Po0;B_Q.set=To0;B_Q.add=So0;B_Q.subtract=rkQ;B_Q.multiply=akQ;B_Q.divide=okQ;B_Q.ceil=ko0;B_Q.floor=_o0;B_Q.min=vo0;B_Q.max=yo0;B_Q.round=go0;B_Q.scale=ho0;B_Q.scaleAndAdd=xo0;B_Q.distance=tkQ;B_Q.squaredDistance=ekQ;B_Q.length=A_Q;B_Q.squaredLength=Q_Q;B_Q.negate=fo0;B_Q.inverse=bo0;B_Q.normalize=mo0;B_Q.dot=uo0;B_Q.cross=do0;B_Q.lerp=co0;B_Q.random=lo0;B_Q.transformMat2=po0;B_Q.transformMat2d=io0;B_Q.transformMat3=no0;B_Q.transformMat4=so0;B_Q.rotate=ro0;B_Q.angle=ao0;B_Q.zero=oo0;B_Q.str=to0;B_Q.exactEquals=eo0;B_Q.equals=At0;B_Q.forEach=B_Q.sqrLen=B_Q.sqrDist=B_Q.dist=B_Q.div=B_Q.mul=B_Q.sub=B_Q.len=void 0;var V4=wo0(M1());function nkQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(nkQ=function(J){return J?B:Q})(A)}function wo0(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||C_(A)!=="object"&&typeof A!=="function")return{default:A};var B=nkQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function skQ(){var A=new V4.ARRAY_TYPE(2);if(V4.ARRAY_TYPE!=Float32Array)A[0]=0,A[1]=0;return A}function jo0(A){var Q=new V4.ARRAY_TYPE(2);return Q[0]=A[0],Q[1]=A[1],Q}function Oo0(A,Q){var B=new V4.ARRAY_TYPE(2);return B[0]=A,B[1]=Q,B}function Po0(A,Q){return A[0]=Q[0],A[1]=Q[1],A}function To0(A,Q,B){return A[0]=Q,A[1]=B,A}function So0(A,Q,B){return A[0]=Q[0]+B[0],A[1]=Q[1]+B[1],A}function rkQ(A,Q,B){return A[0]=Q[0]-B[0],A[1]=Q[1]-B[1],A}function akQ(A,Q,B){return A[0]=Q[0]*B[0],A[1]=Q[1]*B[1],A}function okQ(A,Q,B){return A[0]=Q[0]/B[0],A[1]=Q[1]/B[1],A}function ko0(A,Q){return A[0]=Math.ceil(Q[0]),A[1]=Math.ceil(Q[1]),A}function _o0(A,Q){return A[0]=Math.floor(Q[0]),A[1]=Math.floor(Q[1]),A}function vo0(A,Q,B){return A[0]=Math.min(Q[0],B[0]),A[1]=Math.min(Q[1],B[1]),A}function yo0(A,Q,B){return A[0]=Math.max(Q[0],B[0]),A[1]=Math.max(Q[1],B[1]),A}function go0(A,Q){return A[0]=Math.round(Q[0]),A[1]=Math.round(Q[1]),A}function ho0(A,Q,B){return A[0]=Q[0]*B,A[1]=Q[1]*B,A}function xo0(A,Q,B,Y){return A[0]=Q[0]+B[0]*Y,A[1]=Q[1]+B[1]*Y,A}function tkQ(A,Q){var B=Q[0]-A[0],Y=Q[1]-A[1];return Math.hypot(B,Y)}function ekQ(A,Q){var B=Q[0]-A[0],Y=Q[1]-A[1];return B*B+Y*Y}function A_Q(A){var Q=A[0],B=A[1];return Math.hypot(Q,B)}function Q_Q(A){var Q=A[0],B=A[1];return Q*Q+B*B}function fo0(A,Q){return A[0]=-Q[0],A[1]=-Q[1],A}function bo0(A,Q){return A[0]=1/Q[0],A[1]=1/Q[1],A}function mo0(A,Q){var B=Q[0],Y=Q[1],J=B*B+Y*Y;if(J>0)J=1/Math.sqrt(J);return A[0]=Q[0]*J,A[1]=Q[1]*J,A}function uo0(A,Q){return A[0]*Q[0]+A[1]*Q[1]}function do0(A,Q,B){var Y=Q[0]*B[1]-Q[1]*B[0];return A[0]=A[1]=0,A[2]=Y,A}function co0(A,Q,B,Y){var J=Q[0],C=Q[1];return A[0]=J+Y*(B[0]-J),A[1]=C+Y*(B[1]-C),A}function lo0(A,Q){Q=Q||1;var B=V4.RANDOM()*2*Math.PI;return A[0]=Math.cos(B)*Q,A[1]=Math.sin(B)*Q,A}function po0(A,Q,B){var Y=Q[0],J=Q[1];return A[0]=B[0]*Y+B[2]*J,A[1]=B[1]*Y+B[3]*J,A}function io0(A,Q,B){var Y=Q[0],J=Q[1];return A[0]=B[0]*Y+B[2]*J+B[4],A[1]=B[1]*Y+B[3]*J+B[5],A}function no0(A,Q,B){var Y=Q[0],J=Q[1];return A[0]=B[0]*Y+B[3]*J+B[6],A[1]=B[1]*Y+B[4]*J+B[7],A}function so0(A,Q,B){var Y=Q[0],J=Q[1];return A[0]=B[0]*Y+B[4]*J+B[12],A[1]=B[1]*Y+B[5]*J+B[13],A}function ro0(A,Q,B,Y){var J=Q[0]-B[0],C=Q[1]-B[1],X=Math.sin(Y),G=Math.cos(Y);return A[0]=J*G-C*X+B[0],A[1]=J*X+C*G+B[1],A}function ao0(A,Q){var B=A[0],Y=A[1],J=Q[0],C=Q[1],X=Math.sqrt(B*B+Y*Y)*Math.sqrt(J*J+C*C),G=X&&(B*J+Y*C)/X;return Math.acos(Math.min(Math.max(G,-1),1))}function oo0(A){return A[0]=0,A[1]=0,A}function to0(A){return"vec2("+A[0]+", "+A[1]+")"}function eo0(A,Q){return A[0]===Q[0]&&A[1]===Q[1]}function At0(A,Q){var B=A[0],Y=A[1],J=Q[0],C=Q[1];return Math.abs(B-J)<=V4.EPSILON*Math.max(1,Math.abs(B),Math.abs(J))&&Math.abs(Y-C)<=V4.EPSILON*Math.max(1,Math.abs(Y),Math.abs(C))}var Qt0=A_Q;B_Q.len=Qt0;var Bt0=rkQ;B_Q.sub=Bt0;var Yt0=akQ;B_Q.mul=Yt0;var Jt0=okQ;B_Q.div=Jt0;var Ct0=tkQ;B_Q.dist=Ct0;var Xt0=ekQ;B_Q.sqrDist=Xt0;var Gt0=Q_Q;B_Q.sqrLen=Gt0;var Wt0=function(){var A=skQ();return function(Q,B,Y,J,C,X){var G,W;if(!B)B=2;if(!Y)Y=0;if(J)W=Math.min(J*B+Y,Q.length);else W=Q.length;for(G=Y;G{function X_(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")X_=function(B){return typeof B};else X_=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return X_(A)}Object.defineProperty(X_Q,"__esModule",{value:!0});X_Q.vec4=X_Q.vec3=X_Q.vec2=X_Q.quat2=X_Q.quat=X_Q.mat4=X_Q.mat3=X_Q.mat2d=X_Q.mat2=X_Q.glMatrix=void 0;var et0=bX(M1());X_Q.glMatrix=et0;var Ae0=bX(ySQ());X_Q.mat2=Ae0;var Qe0=bX(mSQ());X_Q.mat2d=Qe0;var Be0=bX(Nt());X_Q.mat3=Be0;var Ye0=bX(Lt());X_Q.mat4=Ye0;var Je0=bX(wt());X_Q.quat=Je0;var Ce0=bX(ikQ());X_Q.quat2=Ce0;var Xe0=bX(J_Q());X_Q.vec2=Xe0;var Ge0=bX(qt());X_Q.vec3=Ge0;var We0=bX(Mt());X_Q.vec4=We0;function C_Q(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(C_Q=function(J){return J?B:Q})(A)}function bX(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||X_(A)!=="object"&&typeof A!=="function")return{default:A};var B=C_Q(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}});var Z_Q=R((G_,F_Q)=>{(function(A,Q){typeof G_==="object"&&typeof F_Q<"u"?Q(G_):typeof define==="function"&&define.amd?define(["exports"],Q):(A=typeof globalThis<"u"?globalThis:A||self,Q(A.heap={}))})(G_,function(A){var Q=function($,E,K,I){function V(H){return H instanceof K?H:new K(function(D){D(H)})}return new(K||(K=Promise))(function(H,D){function L(N){try{M(I.next(N))}catch(q){D(q)}}function z(N){try{M(I.throw(N))}catch(q){D(q)}}function M(N){N.done?H(N.value):V(N.value).then(L,z)}M((I=I.apply($,E||[])).next())})},B=function($,E){var K={label:0,sent:function(){if(H[0]&1)throw H[1];return H[1]},trys:[],ops:[]},I,V,H,D=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return D.next=L(0),D.throw=L(1),D.return=L(2),typeof Symbol==="function"&&(D[Symbol.iterator]=function(){return this}),D;function L(M){return function(N){return z([M,N])}}function z(M){if(I)throw TypeError("Generator is already executing.");while(D&&(D=0,M[0]&&(K=0)),K)try{if(I=1,V&&(H=M[0]&2?V.return:M[0]?V.throw||((H=V.return)&&H.call(V),0):V.next)&&!(H=H.call(V,M[1])).done)return H;if(V=0,H)M=[M[0]&2,H.value];switch(M[0]){case 0:case 1:H=M;break;case 4:return K.label++,{value:M[1],done:!1};case 5:K.label++,V=M[1],M=[0];continue;case 7:M=K.ops.pop(),K.trys.pop();continue;default:if((H=K.trys,!(H=H.length>0&&H[H.length-1]))&&(M[0]===6||M[0]===2)){K=0;continue}if(M[0]===3&&(!H||M[1]>H[0]&&M[1]0)&&!(V=I.next()).done)H.push(V.value)}catch(L){D={error:L}}finally{try{if(V&&!V.done&&(K=I.return))K.call(I)}finally{if(D)throw D.error}}return H},J=function($,E,K){if(K||arguments.length===2){for(var I=0,V=E.length,H;I=$.length)$=void 0;return{value:$&&$[I++],done:!$}}};throw TypeError(E?"Object is not iterable.":"Symbol.iterator is not defined.")},X=function(){function $(E){if(E===void 0)E=$.minComparator;var K=this;this.compare=E,this.heapArray=[],this._limit=0,this.offer=this.add,this.element=this.peek,this.poll=this.pop,this._invertedCompare=function(I,V){return K.compare(I,V).then(function(H){return-1*H})}}return $.getChildrenIndexOf=function(E){return[E*2+1,E*2+2]},$.getParentIndexOf=function(E){if(E<=0)return-1;var K=E%2?1:2;return Math.floor((E-K)/2)},$.getSiblingIndexOf=function(E){if(E<=0)return-1;var K=E%2?1:-1;return E+K},$.minComparator=function(E,K){return Q(this,void 0,void 0,function(){return B(this,function(I){if(E>K)return[2,1];else if(EE)return[2,1];else if(K0;--q)w+=N;return w}var V=0,H=[],D=K(E.length-1)+2,L=0;while(VL)L=M.length;H[z]=H[z]||[],H[z].push(M),V+=1}return H.map(function(N,q){var w=Math.pow(2,D-q)-1;return I(" ",Math.floor(w/2)*L)+N.map(function(P){var _=(L-P.length)/2;return I(" ",Math.ceil(_))+P+I(" ",Math.floor(_))}).join(I(" ",w*L))}).join(` + `)}close(){this.#B.close()}get(Q){Zo(Q);let B=this.#E(Q);return B?{body:B.body?Buffer.from(B.body.buffer,B.body.byteOffset,B.body.byteLength):void 0,statusCode:B.statusCode,statusMessage:B.statusMessage,headers:B.headers?JSON.parse(B.headers):void 0,etag:B.etag?B.etag:void 0,vary:B.vary?JSON.parse(B.vary):void 0,cacheControlDirectives:B.cacheControlDirectives?JSON.parse(B.cacheControlDirectives):void 0,cachedAt:B.cachedAt,staleAt:B.staleAt,deleteAt:B.deleteAt}:void 0}set(Q,B){Zo(Q);let Y=this.#F(Q),J=Array.isArray(B.body)?Buffer.concat(B.body):B.body,C=J?.byteLength;if(C&&C>this.#A)return;let X=this.#E(Q,!0);if(X)this.#J.run(J,B.deleteAt,B.statusCode,B.statusMessage,B.headers?JSON.stringify(B.headers):null,B.etag?B.etag:null,B.cacheControlDirectives?JSON.stringify(B.cacheControlDirectives):null,B.cachedAt,B.staleAt,X.id);else this.#U(),this.#C.run(Y,Q.method,J,B.deleteAt,B.statusCode,B.statusMessage,B.headers?JSON.stringify(B.headers):null,B.etag?B.etag:null,B.cacheControlDirectives?JSON.stringify(B.cacheControlDirectives):null,B.vary?JSON.stringify(B.vary):null,B.cachedAt,B.staleAt)}createWriteStream(Q,B){Zo(Q),Eg0(B);let Y=0,J=[],C=this;return new Ug0({decodeStrings:!0,write(X,G,W){if(Y+=X.byteLength,Y=W.deleteAt&&!B)return;let F=!0;if(W.vary){let Z=JSON.parse(W.vary);for(let U in Z)if(!Kg0(J[U],Z[U])){F=!1;break}}if(F)return W}return}};function Kg0(A,Q){if(A==null&&Q==null)return!0;if(A==null&&Q!=null||A!=null&&Q==null)return!1;if(Array.isArray(A)&&Array.isArray(Q)){if(A.length!==Q.length)return!1;return A.every((B,Y)=>B===Q[Y])}return A===Q}});var J4=R((urY,bOQ)=>{var{kConstruct:Vg0}=B0(),{kEnumerableProperty:HV}=lQ(),{iteratorMixin:Ig0,isValidHeaderName:oq,isValidHeaderValue:yOQ}=z9(),{webidl:LB}=HJ(),Uo=u("node:assert"),Qk=u("node:util");function vOQ(A){return A===10||A===13||A===9||A===32}function gOQ(A){let Q=0,B=A.length;while(B>Q&&vOQ(A.charCodeAt(B-1)))--B;while(B>Q&&vOQ(A.charCodeAt(Q)))++Q;return Q===0&&B===A.length?A:A.substring(Q,B)}function hOQ(A,Q){if(Array.isArray(Q))for(let B=0;B>","record"]})}function Eo(A,Q,B){if(B=gOQ(B),!oq(Q))throw LB.errors.invalidArgument({prefix:"Headers.append",value:Q,type:"header name"});else if(!yOQ(B))throw LB.errors.invalidArgument({prefix:"Headers.append",value:B,type:"header value"});if(fOQ(A)==="immutable")throw TypeError("immutable");return Yk(A).append(Q,B,!1)}function Hg0(A){let Q=Yk(A);if(!Q)return[];if(Q.sortedMap)return Q.sortedMap;let B=[],Y=Q.toSortedArray(),J=Q.cookies;if(J===null||J.length===1)return Q.sortedMap=Y;for(let C=0;C>1),Q[W][0]<=F[0])G=W+1;else X=W;if(J!==W){C=J;while(C>G)Q[C]=Q[--C];Q[G]=F}}if(!B.next().done)throw TypeError("Unreachable");return Q}else{let B=0;for(let{0:Y,1:{value:J}}of this.headersMap)Q[B++]=[Y,J],Uo(J!==null);return Q.sort(xOQ)}}}class mJ{#A;#Q;constructor(A=void 0){if(LB.util.markAsUncloneable(this),A===Vg0)return;if(this.#Q=new Bk,this.#A="none",A!==void 0)A=LB.converters.HeadersInit(A,"Headers constructor","init"),hOQ(this,A)}append(A,Q){LB.brandCheck(this,mJ),LB.argumentLengthCheck(arguments,2,"Headers.append");let B="Headers.append";return A=LB.converters.ByteString(A,B,"name"),Q=LB.converters.ByteString(Q,B,"value"),Eo(this,A,Q)}delete(A){LB.brandCheck(this,mJ),LB.argumentLengthCheck(arguments,1,"Headers.delete");let Q="Headers.delete";if(A=LB.converters.ByteString(A,Q,"name"),!oq(A))throw LB.errors.invalidArgument({prefix:"Headers.delete",value:A,type:"header name"});if(this.#A==="immutable")throw TypeError("immutable");if(!this.#Q.contains(A,!1))return;this.#Q.delete(A,!1)}get(A){LB.brandCheck(this,mJ),LB.argumentLengthCheck(arguments,1,"Headers.get");let Q="Headers.get";if(A=LB.converters.ByteString(A,Q,"name"),!oq(A))throw LB.errors.invalidArgument({prefix:Q,value:A,type:"header name"});return this.#Q.get(A,!1)}has(A){LB.brandCheck(this,mJ),LB.argumentLengthCheck(arguments,1,"Headers.has");let Q="Headers.has";if(A=LB.converters.ByteString(A,Q,"name"),!oq(A))throw LB.errors.invalidArgument({prefix:Q,value:A,type:"header name"});return this.#Q.contains(A,!1)}set(A,Q){LB.brandCheck(this,mJ),LB.argumentLengthCheck(arguments,2,"Headers.set");let B="Headers.set";if(A=LB.converters.ByteString(A,B,"name"),Q=LB.converters.ByteString(Q,B,"value"),Q=gOQ(Q),!oq(A))throw LB.errors.invalidArgument({prefix:B,value:A,type:"header name"});else if(!yOQ(Q))throw LB.errors.invalidArgument({prefix:B,value:Q,type:"header value"});if(this.#A==="immutable")throw TypeError("immutable");this.#Q.set(A,Q,!1)}getSetCookie(){LB.brandCheck(this,mJ);let A=this.#Q.cookies;if(A)return[...A];return[]}[Qk.inspect.custom](A,Q){return Q.depth??=A,`Headers ${Qk.formatWithOptions(Q,this.#Q.entries)}`}static getHeadersGuard(A){return A.#A}static setHeadersGuard(A,Q){A.#A=Q}static getHeadersList(A){return A.#Q}static setHeadersList(A,Q){A.#Q=Q}}var{getHeadersGuard:fOQ,setHeadersGuard:Dg0,getHeadersList:Yk,setHeadersList:Ng0}=mJ;Reflect.deleteProperty(mJ,"getHeadersGuard");Reflect.deleteProperty(mJ,"setHeadersGuard");Reflect.deleteProperty(mJ,"getHeadersList");Reflect.deleteProperty(mJ,"setHeadersList");Ig0("Headers",mJ,Hg0,0,1);Object.defineProperties(mJ.prototype,{append:HV,delete:HV,get:HV,has:HV,set:HV,getSetCookie:HV,[Symbol.toStringTag]:{value:"Headers",configurable:!0},[Qk.inspect.custom]:{enumerable:!1}});LB.converters.HeadersInit=function(A,Q,B){if(LB.util.Type(A)===LB.util.Types.OBJECT){let Y=Reflect.get(A,Symbol.iterator);if(!Qk.types.isProxy(A)&&Y===mJ.prototype.entries)try{return Yk(A).entriesList}catch{}if(typeof Y==="function")return LB.converters["sequence>"](A,Q,B,Y.bind(A));return LB.converters["record"](A,Q,B)}throw LB.errors.conversionFailed({prefix:"Headers constructor",argument:"Argument 1",types:["sequence>","record"]})};bOQ.exports={fill:hOQ,compareHeaderName:xOQ,Headers:mJ,HeadersList:Bk,getHeadersGuard:fOQ,setHeadersGuard:Dg0,setHeadersList:Ng0,getHeadersList:Yk}});var eq=R((drY,oOQ)=>{var{Headers:pOQ,HeadersList:mOQ,fill:Lg0,getHeadersGuard:qg0,setHeadersGuard:iOQ,setHeadersList:nOQ}=J4(),{extractBody:uOQ,cloneBody:Mg0,mixinBody:zg0,streamRegistry:sOQ,bodyUnusable:Rg0}=tK(),rOQ=lQ(),dOQ=u("node:util"),{kEnumerableProperty:s8}=rOQ,{isValidReasonPhrase:wg0,isCancelled:jg0,isAborted:Og0,serializeJavascriptValueToJSONString:Pg0,isErrorLike:Tg0,isomorphicEncode:Sg0,environmentSettingsObject:kg0}=z9(),{redirectStatusSet:_g0,nullBodyStatus:vg0}=Iq(),{webidl:ZB}=HJ(),{URLSerializer:cOQ}=l8(),{kConstruct:Ck}=B0(),Ko=u("node:assert"),yg0=new TextEncoder("utf-8");class t0{#A;#Q;static error(){return tq(Xk(),"immutable")}static json(A,Q=void 0){if(ZB.argumentLengthCheck(arguments,1,"Response.json"),Q!==null)Q=ZB.converters.ResponseInit(Q);let B=yg0.encode(Pg0(A)),Y=uOQ(B),J=tq(DV({}),"response");return lOQ(J,Q,{body:Y[0],type:"application/json"}),J}static redirect(A,Q=302){ZB.argumentLengthCheck(arguments,1,"Response.redirect"),A=ZB.converters.USVString(A),Q=ZB.converters["unsigned short"](Q);let B;try{B=new URL(A,kg0.settingsObject.baseUrl)}catch(C){throw TypeError(`Failed to parse URL from ${A}`,{cause:C})}if(!_g0.has(Q))throw RangeError(`Invalid status code ${Q}`);let Y=tq(DV({}),"immutable");Y.#Q.status=Q;let J=Sg0(cOQ(B));return Y.#Q.headersList.append("location",J,!0),Y}constructor(A=null,Q=void 0){if(ZB.util.markAsUncloneable(this),A===Ck)return;if(A!==null)A=ZB.converters.BodyInit(A,"Response","body");Q=ZB.converters.ResponseInit(Q),this.#Q=DV({}),this.#A=new pOQ(Ck),iOQ(this.#A,"response"),nOQ(this.#A,this.#Q.headersList);let B=null;if(A!=null){let[Y,J]=uOQ(A);B={body:Y,type:J}}lOQ(this,Q,B)}get type(){return ZB.brandCheck(this,t0),this.#Q.type}get url(){ZB.brandCheck(this,t0);let A=this.#Q.urlList,Q=A[A.length-1]??null;if(Q===null)return"";return cOQ(Q,!0)}get redirected(){return ZB.brandCheck(this,t0),this.#Q.urlList.length>1}get status(){return ZB.brandCheck(this,t0),this.#Q.status}get ok(){return ZB.brandCheck(this,t0),this.#Q.status>=200&&this.#Q.status<=299}get statusText(){return ZB.brandCheck(this,t0),this.#Q.statusText}get headers(){return ZB.brandCheck(this,t0),this.#A}get body(){return ZB.brandCheck(this,t0),this.#Q.body?this.#Q.body.stream:null}get bodyUsed(){return ZB.brandCheck(this,t0),!!this.#Q.body&&rOQ.isDisturbed(this.#Q.body.stream)}clone(){if(ZB.brandCheck(this,t0),Rg0(this.#Q))throw ZB.errors.exception({header:"Response.clone",message:"Body has already been consumed."});let A=Vo(this.#Q);if(this.#Q.body?.stream)sOQ.register(this,new WeakRef(this.#Q.body.stream));return tq(A,qg0(this.#A))}[dOQ.inspect.custom](A,Q){if(Q.depth===null)Q.depth=2;Q.colors??=!0;let B={status:this.status,statusText:this.statusText,headers:this.headers,body:this.body,bodyUsed:this.bodyUsed,ok:this.ok,redirected:this.redirected,type:this.type,url:this.url};return`Response ${dOQ.formatWithOptions(Q,B)}`}static getResponseHeaders(A){return A.#A}static setResponseHeaders(A,Q){A.#A=Q}static getResponseState(A){return A.#Q}static setResponseState(A,Q){A.#Q=Q}}var{getResponseHeaders:gg0,setResponseHeaders:hg0,getResponseState:C4,setResponseState:xg0}=t0;Reflect.deleteProperty(t0,"getResponseHeaders");Reflect.deleteProperty(t0,"setResponseHeaders");Reflect.deleteProperty(t0,"getResponseState");Reflect.deleteProperty(t0,"setResponseState");zg0(t0,C4);Object.defineProperties(t0.prototype,{type:s8,url:s8,status:s8,ok:s8,redirected:s8,statusText:s8,headers:s8,clone:s8,body:s8,bodyUsed:s8,[Symbol.toStringTag]:{value:"Response",configurable:!0}});Object.defineProperties(t0,{json:s8,redirect:s8,error:s8});function Vo(A){if(A.internalResponse)return aOQ(Vo(A.internalResponse),A.type);let Q=DV({...A,body:null});if(A.body!=null)Q.body=Mg0(A.body);return Q}function DV(A){return{aborted:!1,rangeRequested:!1,timingAllowPassed:!1,requestIncludesCredentials:!1,type:"default",status:200,timingInfo:null,cacheState:"",statusText:"",...A,headersList:A?.headersList?new mOQ(A?.headersList):new mOQ,urlList:A?.urlList?[...A.urlList]:[]}}function Xk(A){let Q=Tg0(A);return DV({type:"error",status:0,error:Q?A:Error(A?String(A):A),aborted:A&&A.name==="AbortError"})}function fg0(A){return A.type==="error"&&A.status===0}function Jk(A,Q){return Q={internalResponse:A,...Q},new Proxy(A,{get(B,Y){return Y in Q?Q[Y]:B[Y]},set(B,Y,J){return Ko(!(Y in Q)),B[Y]=J,!0}})}function aOQ(A,Q){if(Q==="basic")return Jk(A,{type:"basic",headersList:A.headersList});else if(Q==="cors")return Jk(A,{type:"cors",headersList:A.headersList});else if(Q==="opaque")return Jk(A,{type:"opaque",urlList:Object.freeze([]),status:0,statusText:"",body:null});else if(Q==="opaqueredirect")return Jk(A,{type:"opaqueredirect",status:0,statusText:"",headersList:[],body:null});else Ko(!1)}function bg0(A,Q=null){return Ko(jg0(A)),Og0(A)?Xk(Object.assign(new DOMException("The operation was aborted.","AbortError"),{cause:Q})):Xk(Object.assign(new DOMException("Request was cancelled."),{cause:Q}))}function lOQ(A,Q,B){if(Q.status!==null&&(Q.status<200||Q.status>599))throw RangeError('init["status"] must be in the range of 200 to 599, inclusive.');if("statusText"in Q&&Q.statusText!=null){if(!wg0(String(Q.statusText)))throw TypeError("Invalid statusText")}if("status"in Q&&Q.status!=null)C4(A).status=Q.status;if("statusText"in Q&&Q.statusText!=null)C4(A).statusText=Q.statusText;if("headers"in Q&&Q.headers!=null)Lg0(gg0(A),Q.headers);if(B){if(vg0.includes(A.status))throw ZB.errors.exception({header:"Response constructor",message:`Invalid response status code ${A.status}`});if(C4(A).body=B.body,B.type!=null&&!C4(A).headersList.contains("content-type",!0))C4(A).headersList.append("content-type",B.type,!0)}}function tq(A,Q){let B=new t0(Ck);xg0(B,A);let Y=new pOQ(Ck);if(hg0(B,Y),nOQ(Y,A.headersList),iOQ(Y,Q),A.body?.stream)sOQ.register(B,new WeakRef(A.body.stream));return B}ZB.converters.XMLHttpRequestBodyInit=function(A,Q,B){if(typeof A==="string")return ZB.converters.USVString(A,Q,B);if(ZB.is.Blob(A))return A;if(ZB.is.BufferSource(A))return A;if(ZB.is.FormData(A))return A;if(ZB.is.URLSearchParams(A))return A;return ZB.converters.DOMString(A,Q,B)};ZB.converters.BodyInit=function(A,Q,B){if(ZB.is.ReadableStream(A))return A;if(A?.[Symbol.asyncIterator])return A;return ZB.converters.XMLHttpRequestBodyInit(A,Q,B)};ZB.converters.ResponseInit=ZB.dictionaryConverter([{key:"status",converter:ZB.converters["unsigned short"],defaultValue:()=>200},{key:"statusText",converter:ZB.converters.ByteString,defaultValue:()=>""},{key:"headers",converter:ZB.converters.HeadersInit}]);ZB.is.Response=ZB.util.MakeTypeAssertion(t0);oOQ.exports={isNetworkError:fg0,makeNetworkError:Xk,makeResponse:DV,makeAppropriateNetworkError:bg0,filterResponse:aOQ,Response:t0,cloneResponse:Vo,fromInnerResponse:tq,getResponseState:C4}});var NV=R((crY,$PQ)=>{var{extractBody:mg0,mixinBody:ug0,cloneBody:dg0,bodyUnusable:tOQ}=tK(),{Headers:JPQ,fill:cg0,HeadersList:Fk,setHeadersGuard:Io,getHeadersGuard:lg0,setHeadersList:CPQ,getHeadersList:eOQ}=J4(),Wk=lQ(),APQ=u("node:util"),{isValidHTTPToken:pg0,sameOrigin:QPQ,environmentSettingsObject:Gk}=z9(),{forbiddenMethodsSet:ig0,corsSafeListedMethodsSet:ng0,referrerPolicy:sg0,requestRedirect:rg0,requestMode:ag0,requestCredentials:og0,requestCache:tg0,requestDuplex:eg0}=Iq(),{kEnumerableProperty:OY,normalizedMethodRecordsBase:Ah0,normalizedMethodRecords:Qh0}=Wk,{webidl:qQ}=HJ(),{URLSerializer:Bh0}=l8(),{kConstruct:Zk}=B0(),Yh0=u("node:assert"),{getMaxListeners:XPQ,setMaxListeners:Jh0,defaultMaxListeners:Ch0}=u("node:events"),Xh0=Symbol("abortController"),GPQ=new FinalizationRegistry(({signal:A,abort:Q})=>{A.removeEventListener("abort",Q)}),$k=new WeakMap,Ho;try{Ho=XPQ(new AbortController().signal)>0}catch{Ho=!1}function BPQ(A){return Q;function Q(){let B=A.deref();if(B!==void 0){GPQ.unregister(Q),this.removeEventListener("abort",Q),B.abort(this.reason);let Y=$k.get(B.signal);if(Y!==void 0){if(Y.size!==0){for(let J of Y){let C=J.deref();if(C!==void 0)C.abort(this.reason)}Y.clear()}$k.delete(B.signal)}}}}var YPQ=!1;class kB{#A;#Q;#B;#Y;constructor(A,Q=void 0){if(qQ.util.markAsUncloneable(this),A===Zk)return;let B="Request constructor";qQ.argumentLengthCheck(arguments,1,B),A=qQ.converters.RequestInfo(A),Q=qQ.converters.RequestInit(Q);let Y=null,J=null,C=Gk.settingsObject.baseUrl,X=null;if(typeof A==="string"){this.#Q=Q.dispatcher;let V;try{V=new URL(A,C)}catch(H){throw TypeError("Failed to parse URL from "+A,{cause:H})}if(V.username||V.password)throw TypeError("Request cannot be constructed from a URL that includes credentials: "+A);Y=Uk({urlList:[V]}),J="cors"}else Yh0(qQ.is.Request(A)),Y=A.#Y,X=A.#A,this.#Q=Q.dispatcher||A.#Q;let G=Gk.settingsObject.origin,W="client";if(Y.window?.constructor?.name==="EnvironmentSettingsObject"&&QPQ(Y.window,G))W=Y.window;if(Q.window!=null)throw TypeError(`'window' option '${W}' must be null`);if("window"in Q)W="no-window";Y=Uk({method:Y.method,headersList:Y.headersList,unsafeRequest:Y.unsafeRequest,client:Gk.settingsObject,window:W,priority:Y.priority,origin:Y.origin,referrer:Y.referrer,referrerPolicy:Y.referrerPolicy,mode:Y.mode,credentials:Y.credentials,cache:Y.cache,redirect:Y.redirect,integrity:Y.integrity,keepalive:Y.keepalive,reloadNavigation:Y.reloadNavigation,historyNavigation:Y.historyNavigation,urlList:[...Y.urlList]});let F=Object.keys(Q).length!==0;if(F){if(Y.mode==="navigate")Y.mode="same-origin";Y.reloadNavigation=!1,Y.historyNavigation=!1,Y.origin="client",Y.referrer="client",Y.referrerPolicy="",Y.url=Y.urlList[Y.urlList.length-1],Y.urlList=[Y.url]}if(Q.referrer!==void 0){let V=Q.referrer;if(V==="")Y.referrer="no-referrer";else{let H;try{H=new URL(V,C)}catch(D){throw TypeError(`Referrer "${V}" is not a valid URL.`,{cause:D})}if(H.protocol==="about:"&&H.hostname==="client"||G&&!QPQ(H,Gk.settingsObject.baseUrl))Y.referrer="client";else Y.referrer=H}}if(Q.referrerPolicy!==void 0)Y.referrerPolicy=Q.referrerPolicy;let Z;if(Q.mode!==void 0)Z=Q.mode;else Z=J;if(Z==="navigate")throw qQ.errors.exception({header:"Request constructor",message:"invalid request mode navigate."});if(Z!=null)Y.mode=Z;if(Q.credentials!==void 0)Y.credentials=Q.credentials;if(Q.cache!==void 0)Y.cache=Q.cache;if(Y.cache==="only-if-cached"&&Y.mode!=="same-origin")throw TypeError("'only-if-cached' can be set only with 'same-origin' mode");if(Q.redirect!==void 0)Y.redirect=Q.redirect;if(Q.integrity!=null)Y.integrity=String(Q.integrity);if(Q.keepalive!==void 0)Y.keepalive=Boolean(Q.keepalive);if(Q.method!==void 0){let V=Q.method,H=Qh0[V];if(H!==void 0)Y.method=H;else{if(!pg0(V))throw TypeError(`'${V}' is not a valid HTTP method.`);let D=V.toUpperCase();if(ig0.has(D))throw TypeError(`'${V}' HTTP method is unsupported.`);V=Ah0[D]??V,Y.method=V}if(!YPQ&&Y.method==="patch")process.emitWarning("Using `patch` is highly likely to result in a `405 Method Not Allowed`. `PATCH` is much more likely to succeed.",{code:"UNDICI-FETCH-patch"}),YPQ=!0}if(Q.signal!==void 0)X=Q.signal;this.#Y=Y;let U=new AbortController;if(this.#A=U.signal,X!=null)if(X.aborted)U.abort(X.reason);else{this[Xh0]=U;let V=new WeakRef(U),H=BPQ(V);if(Ho&&XPQ(X)===Ch0)Jh0(1500,X);Wk.addAbortListener(X,H),GPQ.register(U,{signal:X,abort:H},H)}if(this.#B=new JPQ(Zk),CPQ(this.#B,Y.headersList),Io(this.#B,"request"),Z==="no-cors"){if(!ng0.has(Y.method))throw TypeError(`'${Y.method} is unsupported in no-cors mode.`);Io(this.#B,"request-no-cors")}if(F){let V=eOQ(this.#B),H=Q.headers!==void 0?Q.headers:new Fk(V);if(V.clear(),H instanceof Fk){for(let{name:D,value:L}of H.rawValues())V.append(D,L,!1);V.cookies=H.cookies}else cg0(this.#B,H)}let $=qQ.is.Request(A)?A.#Y.body:null;if((Q.body!=null||$!=null)&&(Y.method==="GET"||Y.method==="HEAD"))throw TypeError("Request with GET/HEAD method cannot have body.");let E=null;if(Q.body!=null){let[V,H]=mg0(Q.body,Y.keepalive);if(E=V,H&&!eOQ(this.#B).contains("content-type",!0))this.#B.append("content-type",H,!0)}let K=E??$;if(K!=null&&K.source==null){if(E!=null&&Q.duplex==null)throw TypeError("RequestInit: duplex option is required when sending a body.");if(Y.mode!=="same-origin"&&Y.mode!=="cors")throw TypeError('If request is made from ReadableStream, mode should be "same-origin" or "cors"');Y.useCORSPreflightFlag=!0}let I=K;if(E==null&&$!=null){if(tOQ(A.#Y))throw TypeError("Cannot construct a Request with a Request object that has already been used.");let V=new TransformStream;$.stream.pipeThrough(V),I={source:$.source,length:$.length,stream:V.readable}}this.#Y.body=I}get method(){return qQ.brandCheck(this,kB),this.#Y.method}get url(){return qQ.brandCheck(this,kB),Bh0(this.#Y.url)}get headers(){return qQ.brandCheck(this,kB),this.#B}get destination(){return qQ.brandCheck(this,kB),this.#Y.destination}get referrer(){if(qQ.brandCheck(this,kB),this.#Y.referrer==="no-referrer")return"";if(this.#Y.referrer==="client")return"about:client";return this.#Y.referrer.toString()}get referrerPolicy(){return qQ.brandCheck(this,kB),this.#Y.referrerPolicy}get mode(){return qQ.brandCheck(this,kB),this.#Y.mode}get credentials(){return qQ.brandCheck(this,kB),this.#Y.credentials}get cache(){return qQ.brandCheck(this,kB),this.#Y.cache}get redirect(){return qQ.brandCheck(this,kB),this.#Y.redirect}get integrity(){return qQ.brandCheck(this,kB),this.#Y.integrity}get keepalive(){return qQ.brandCheck(this,kB),this.#Y.keepalive}get isReloadNavigation(){return qQ.brandCheck(this,kB),this.#Y.reloadNavigation}get isHistoryNavigation(){return qQ.brandCheck(this,kB),this.#Y.historyNavigation}get signal(){return qQ.brandCheck(this,kB),this.#A}get body(){return qQ.brandCheck(this,kB),this.#Y.body?this.#Y.body.stream:null}get bodyUsed(){return qQ.brandCheck(this,kB),!!this.#Y.body&&Wk.isDisturbed(this.#Y.body.stream)}get duplex(){return qQ.brandCheck(this,kB),"half"}clone(){if(qQ.brandCheck(this,kB),tOQ(this.#Y))throw TypeError("unusable");let A=FPQ(this.#Y),Q=new AbortController;if(this.signal.aborted)Q.abort(this.signal.reason);else{let B=$k.get(this.signal);if(B===void 0)B=new Set,$k.set(this.signal,B);let Y=new WeakRef(Q);B.add(Y),Wk.addAbortListener(Q.signal,BPQ(Y))}return ZPQ(A,this.#Q,Q.signal,lg0(this.#B))}[APQ.inspect.custom](A,Q){if(Q.depth===null)Q.depth=2;Q.colors??=!0;let B={method:this.method,url:this.url,headers:this.headers,destination:this.destination,referrer:this.referrer,referrerPolicy:this.referrerPolicy,mode:this.mode,credentials:this.credentials,cache:this.cache,redirect:this.redirect,integrity:this.integrity,keepalive:this.keepalive,isReloadNavigation:this.isReloadNavigation,isHistoryNavigation:this.isHistoryNavigation,signal:this.signal};return`Request ${APQ.formatWithOptions(Q,B)}`}static setRequestSignal(A,Q){return A.#A=Q,A}static getRequestDispatcher(A){return A.#Q}static setRequestDispatcher(A,Q){A.#Q=Q}static setRequestHeaders(A,Q){A.#B=Q}static getRequestState(A){return A.#Y}static setRequestState(A,Q){A.#Y=Q}}var{setRequestSignal:Gh0,getRequestDispatcher:Wh0,setRequestDispatcher:Fh0,setRequestHeaders:Zh0,getRequestState:WPQ,setRequestState:$h0}=kB;Reflect.deleteProperty(kB,"setRequestSignal");Reflect.deleteProperty(kB,"getRequestDispatcher");Reflect.deleteProperty(kB,"setRequestDispatcher");Reflect.deleteProperty(kB,"setRequestHeaders");Reflect.deleteProperty(kB,"getRequestState");Reflect.deleteProperty(kB,"setRequestState");ug0(kB,WPQ);function Uk(A){return{method:A.method??"GET",localURLsOnly:A.localURLsOnly??!1,unsafeRequest:A.unsafeRequest??!1,body:A.body??null,client:A.client??null,reservedClient:A.reservedClient??null,replacesClientId:A.replacesClientId??"",window:A.window??"client",keepalive:A.keepalive??!1,serviceWorkers:A.serviceWorkers??"all",initiator:A.initiator??"",destination:A.destination??"",priority:A.priority??null,origin:A.origin??"client",policyContainer:A.policyContainer??"client",referrer:A.referrer??"client",referrerPolicy:A.referrerPolicy??"",mode:A.mode??"no-cors",useCORSPreflightFlag:A.useCORSPreflightFlag??!1,credentials:A.credentials??"same-origin",useCredentials:A.useCredentials??!1,cache:A.cache??"default",redirect:A.redirect??"follow",integrity:A.integrity??"",cryptoGraphicsNonceMetadata:A.cryptoGraphicsNonceMetadata??"",parserMetadata:A.parserMetadata??"",reloadNavigation:A.reloadNavigation??!1,historyNavigation:A.historyNavigation??!1,userActivation:A.userActivation??!1,taintedOrigin:A.taintedOrigin??!1,redirectCount:A.redirectCount??0,responseTainting:A.responseTainting??"basic",preventNoCacheCacheControlHeaderModification:A.preventNoCacheCacheControlHeaderModification??!1,done:A.done??!1,timingAllowFailed:A.timingAllowFailed??!1,urlList:A.urlList,url:A.urlList[0],headersList:A.headersList?new Fk(A.headersList):new Fk}}function FPQ(A){let Q=Uk({...A,body:null});if(A.body!=null)Q.body=dg0(A.body);return Q}function ZPQ(A,Q,B,Y){let J=new kB(Zk);$h0(J,A),Fh0(J,Q),Gh0(J,B);let C=new JPQ(Zk);return Zh0(J,C),CPQ(C,A.headersList),Io(C,Y),J}Object.defineProperties(kB.prototype,{method:OY,url:OY,headers:OY,redirect:OY,clone:OY,signal:OY,duplex:OY,destination:OY,body:OY,bodyUsed:OY,isHistoryNavigation:OY,isReloadNavigation:OY,keepalive:OY,integrity:OY,cache:OY,credentials:OY,attribute:OY,referrerPolicy:OY,referrer:OY,mode:OY,[Symbol.toStringTag]:{value:"Request",configurable:!0}});qQ.is.Request=qQ.util.MakeTypeAssertion(kB);qQ.converters.RequestInfo=function(A){if(typeof A==="string")return qQ.converters.USVString(A);if(qQ.is.Request(A))return A;return qQ.converters.USVString(A)};qQ.converters.RequestInit=qQ.dictionaryConverter([{key:"method",converter:qQ.converters.ByteString},{key:"headers",converter:qQ.converters.HeadersInit},{key:"body",converter:qQ.nullableConverter(qQ.converters.BodyInit)},{key:"referrer",converter:qQ.converters.USVString},{key:"referrerPolicy",converter:qQ.converters.DOMString,allowedValues:sg0},{key:"mode",converter:qQ.converters.DOMString,allowedValues:ag0},{key:"credentials",converter:qQ.converters.DOMString,allowedValues:og0},{key:"cache",converter:qQ.converters.DOMString,allowedValues:tg0},{key:"redirect",converter:qQ.converters.DOMString,allowedValues:rg0},{key:"integrity",converter:qQ.converters.DOMString},{key:"keepalive",converter:qQ.converters.boolean},{key:"signal",converter:qQ.nullableConverter((A)=>qQ.converters.AbortSignal(A,"RequestInit","signal"))},{key:"window",converter:qQ.converters.any},{key:"duplex",converter:qQ.converters.DOMString,allowedValues:eg0},{key:"dispatcher",converter:qQ.converters.any}]);$PQ.exports={Request:kB,makeRequest:Uk,fromInnerRequest:ZPQ,cloneRequest:FPQ,getRequestDispatcher:Wh0,getRequestState:WPQ}});var DPQ=R((lrY,HPQ)=>{var Uh0=u("node:assert"),X4=new Map([["sha256",0],["sha384",1],["sha512",2]]),Ek;try{Ek=u("node:crypto");let A=Ek.getHashes();if(A.length===0)X4.clear();for(let Q of X4.keys())if(A.includes(Q)===!1)X4.delete(Q)}catch{X4.clear()}var UPQ=Map.prototype.get.bind(X4),Do=Map.prototype.has.bind(X4),Eh0=Ek===void 0||X4.size===0?()=>!0:(A,Q)=>{let B=KPQ(Q);if(B.length===0)return!0;let Y=EPQ(B);for(let J of Y){let{alg:C,val:X}=J,G=VPQ(C,A);if(IPQ(G,X))return!0}return!1};function EPQ(A){let Q=[],B=null;for(let Y of A){if(Uh0(Do(Y.alg),"Invalid SRI hash algorithm token"),Q.length===0){Q.push(Y),B=Y;continue}let J=B.alg,C=UPQ(J),X=Y.alg,G=UPQ(X);if(GC)B=Y,Q[0]=Y,Q.length=1;else Q.push(Y)}return Q}function KPQ(A){let Q=[];for(let B of A.split(" ")){let J=B.split("?",1)[0],C="",X=[J.slice(0,6),J.slice(7)],G=X[0];if(!Do(G))continue;if(X[1])C=X[1];let W={alg:G,val:C};Q.push(W)}return Q}var VPQ=(A,Q)=>{return Ek.hash(A,Q,"base64")};function IPQ(A,Q){let B=A.length;if(B!==0&&A[B-1]==="=")B-=1;if(B!==0&&A[B-1]==="=")B-=1;let Y=Q.length;if(Y!==0&&Q[Y-1]==="=")Y-=1;if(Y!==0&&Q[Y-1]==="=")Y-=1;if(B!==Y)return!1;for(let J=0;J{var{makeNetworkError:cB,makeAppropriateNetworkError:Kk,filterResponse:No,makeResponse:Vk,fromInnerResponse:Kh0,getResponseState:Vh0}=eq(),{HeadersList:NPQ}=J4(),{Request:Ih0,cloneRequest:Hh0,getRequestDispatcher:Dh0,getRequestState:Nh0}=NV(),UC=u("node:zlib"),{makePolicyContainer:Lh0,clonePolicyContainer:qh0,requestBadPort:Mh0,TAOCheck:zh0,appendRequestOriginHeader:Rh0,responseLocationURL:wh0,requestCurrentURL:yX,setRequestReferrerPolicyOnRedirect:jh0,tryUpgradeRequestToAPotentiallyTrustworthyURL:Oh0,createOpaqueTimingInfo:Ro,appendFetchMetadata:Ph0,corsCheck:Th0,crossOriginResourcePolicyCheck:Sh0,determineRequestsReferrer:kh0,coarsenedSharedCurrentTime:AM,sameOrigin:zo,isCancelled:G4,isAborted:LPQ,isErrorLike:_h0,fullyReadBody:vh0,readableStreamClose:yh0,isomorphicEncode:Ik,urlIsLocal:gh0,urlIsHttpHttpsScheme:Dk,urlHasHttpsScheme:hh0,clampAndCoarsenConnectionTimingInfo:xh0,simpleRangeHeaderValue:fh0,buildContentRange:bh0,createInflate:mh0,extractMimeType:uh0}=z9(),W4=u("node:assert"),{safelyExtractBody:wo,extractBody:qPQ}=tK(),{redirectStatusSet:RPQ,nullBodyStatus:wPQ,safeMethodsSet:dh0,requestBodyHeader:ch0,subresourceSet:lh0}=Iq(),ph0=u("node:events"),{Readable:ih0,pipeline:nh0,finished:sh0,isErrored:rh0,isReadable:Hk}=u("node:stream"),{addAbortListener:ah0,bufferToLowerCasedHeaderName:MPQ}=lQ(),{dataURLProcessor:oh0,serializeAMimeType:th0,minimizeSupportedMimeType:eh0}=l8(),{getGlobalDispatcher:Ax0}=Ak(),{webidl:jo}=HJ(),{STATUS_CODES:Qx0}=u("node:http"),{bytesMatch:Bx0}=DPQ(),{createDeferredPromise:Yx0}=Nq(),Jx0=typeof UC.createZstdDecompress==="function",Cx0=["GET","HEAD"],Xx0=typeof __UNDICI_IS_NODE__<"u"||typeof esbuildDetection<"u"?"node":"undici",Lo;class Oo extends ph0{constructor(A){super();this.dispatcher=A,this.connection=null,this.dump=!1,this.state="ongoing"}terminate(A){if(this.state!=="ongoing")return;this.state="terminated",this.connection?.destroy(A),this.emit("terminated",A)}abort(A){if(this.state!=="ongoing")return;if(this.state="aborted",!A)A=new DOMException("The operation was aborted.","AbortError");this.serializedAbortReason=A,this.connection?.destroy(A),this.emit("terminated",A)}}function Gx0(A){jPQ(A,"fetch")}function Wx0(A,Q=void 0){jo.argumentLengthCheck(arguments,1,"globalThis.fetch");let B=Yx0(),Y;try{Y=new Ih0(A,Q)}catch(Z){return B.reject(Z),B.promise}let J=Nh0(Y);if(Y.signal.aborted)return qo(B,J,null,Y.signal.reason),B.promise;if(J.client.globalObject?.constructor?.name==="ServiceWorkerGlobalScope")J.serviceWorkers="none";let X=null,G=!1,W=null;return ah0(Y.signal,()=>{G=!0,W4(W!=null),W.abort(Y.signal.reason);let Z=X?.deref();qo(B,J,Z,Y.signal.reason)}),W=PPQ({request:J,processResponseEndOfBody:Gx0,processResponse:(Z)=>{if(G)return;if(Z.aborted){qo(B,J,X,W.serializedAbortReason);return}if(Z.type==="error"){B.reject(TypeError("fetch failed",{cause:Z.error}));return}X=new WeakRef(Kh0(Z,"immutable")),B.resolve(X.deref()),B=null},dispatcher:Dh0(Y)}),B.promise}function jPQ(A,Q="other"){if(A.type==="error"&&A.aborted)return;if(!A.urlList?.length)return;let B=A.urlList[0],Y=A.timingInfo,J=A.cacheState;if(!Dk(B))return;if(Y===null)return;if(!A.timingAllowPassed)Y=Ro({startTime:Y.startTime}),J="";Y.endTime=AM(),A.timingInfo=Y,OPQ(Y,B.href,Q,globalThis,J,"",A.status)}var OPQ=performance.markResourceTiming;function qo(A,Q,B,Y){if(A)A.reject(Y);if(Q.body?.stream!=null&&Hk(Q.body.stream))Q.body.stream.cancel(Y).catch((C)=>{if(C.code==="ERR_INVALID_STATE")return;throw C});if(B==null)return;let J=Vh0(B);if(J.body?.stream!=null&&Hk(J.body.stream))J.body.stream.cancel(Y).catch((C)=>{if(C.code==="ERR_INVALID_STATE")return;throw C})}function PPQ({request:A,processRequestBodyChunkLength:Q,processRequestEndOfBody:B,processResponse:Y,processResponseEndOfBody:J,processResponseConsumeBody:C,useParallelQueue:X=!1,dispatcher:G=Ax0()}){W4(G);let W=null,F=!1;if(A.client!=null)W=A.client.globalObject,F=A.client.crossOriginIsolatedCapability;let Z=AM(F),U=Ro({startTime:Z}),$={controller:new Oo(G),request:A,timingInfo:U,processRequestBodyChunkLength:Q,processRequestEndOfBody:B,processResponse:Y,processResponseConsumeBody:C,processResponseEndOfBody:J,taskDestination:W,crossOriginIsolatedCapability:F};if(W4(!A.body||A.body.stream),A.window==="client")A.window=A.client?.globalObject?.constructor?.name==="Window"?A.client:"no-window";if(A.origin==="client")A.origin=A.client.origin;if(A.policyContainer==="client")if(A.client!=null)A.policyContainer=qh0(A.client.policyContainer);else A.policyContainer=Lh0();if(!A.headersList.contains("accept",!0))A.headersList.append("accept","*/*",!0);if(!A.headersList.contains("accept-language",!0))A.headersList.append("accept-language","*",!0);if(A.priority===null);if(lh0.has(A.destination));return TPQ($,!1),$.controller}async function TPQ(A,Q){try{let B=A.request,Y=null;if(B.localURLsOnly&&!gh0(yX(B)))Y=cB("local URLs only");if(Oh0(B),Mh0(B)==="blocked")Y=cB("bad port");if(B.referrerPolicy==="")B.referrerPolicy=B.policyContainer.referrerPolicy;if(B.referrer!=="no-referrer")B.referrer=kh0(B);if(Y===null){let C=yX(B);if(zo(C,B.url)&&B.responseTainting==="basic"||C.protocol==="data:"||(B.mode==="navigate"||B.mode==="websocket"))B.responseTainting="basic",Y=await zPQ(A);else if(B.mode==="same-origin")Y=cB('request mode cannot be "same-origin"');else if(B.mode==="no-cors")if(B.redirect!=="follow")Y=cB('redirect mode cannot be "follow" for "no-cors" request');else B.responseTainting="opaque",Y=await zPQ(A);else if(!Dk(yX(B)))Y=cB("URL scheme must be a HTTP(S) scheme");else B.responseTainting="cors",Y=await SPQ(A)}if(Q)return Y;if(Y.status!==0&&!Y.internalResponse){if(B.responseTainting==="cors");if(B.responseTainting==="basic")Y=No(Y,"basic");else if(B.responseTainting==="cors")Y=No(Y,"cors");else if(B.responseTainting==="opaque")Y=No(Y,"opaque");else W4(!1)}let J=Y.status===0?Y:Y.internalResponse;if(J.urlList.length===0)J.urlList.push(...B.urlList);if(!B.timingAllowFailed)Y.timingAllowPassed=!0;if(Y.type==="opaque"&&J.status===206&&J.rangeRequested&&!B.headers.contains("range",!0))Y=J=cB();if(Y.status!==0&&(B.method==="HEAD"||B.method==="CONNECT"||wPQ.includes(J.status)))J.body=null,A.controller.dump=!0;if(B.integrity){let C=(G)=>Mo(A,cB(G));if(B.responseTainting==="opaque"||Y.body==null){C(Y.error);return}let X=(G)=>{if(!Bx0(G,B.integrity)){C("integrity mismatch");return}Y.body=wo(G)[0],Mo(A,Y)};vh0(Y.body,X,C)}else Mo(A,Y)}catch(B){A.controller.terminate(B)}}function zPQ(A){if(G4(A)&&A.request.redirectCount===0)return Promise.resolve(Kk(A));let{request:Q}=A,{protocol:B}=yX(Q);switch(B){case"about:":return Promise.resolve(cB("about scheme is not supported"));case"blob:":{if(!Lo)Lo=u("node:buffer").resolveObjectURL;let Y=yX(Q);if(Y.search.length!==0)return Promise.resolve(cB("NetworkError when attempting to fetch resource."));let J=Lo(Y.toString());if(Q.method!=="GET"||!jo.is.Blob(J))return Promise.resolve(cB("invalid method"));let C=Vk(),X=J.size,G=Ik(`${X}`),W=J.type;if(!Q.headersList.contains("range",!0)){let F=qPQ(J);C.statusText="OK",C.body=F[0],C.headersList.set("content-length",G,!0),C.headersList.set("content-type",W,!0)}else{C.rangeRequested=!0;let F=Q.headersList.get("range",!0),Z=fh0(F,!0);if(Z==="failure")return Promise.resolve(cB("failed to fetch the data URL"));let{rangeStartValue:U,rangeEndValue:$}=Z;if(U===null)U=X-$,$=U+$-1;else{if(U>=X)return Promise.resolve(cB("Range start is greater than the blob's size."));if($===null||$>=X)$=X-1}let E=J.slice(U,$,W),K=qPQ(E);C.body=K[0];let I=Ik(`${E.size}`),V=bh0(U,$,X);C.status=206,C.statusText="Partial Content",C.headersList.set("content-length",I,!0),C.headersList.set("content-type",W,!0),C.headersList.set("content-range",V,!0)}return Promise.resolve(C)}case"data:":{let Y=yX(Q),J=oh0(Y);if(J==="failure")return Promise.resolve(cB("failed to fetch the data URL"));let C=th0(J.mimeType);return Promise.resolve(Vk({statusText:"OK",headersList:[["content-type",{name:"Content-Type",value:C}]],body:wo(J.body)[0]}))}case"file:":return Promise.resolve(cB("not implemented... yet..."));case"http:":case"https:":return SPQ(A).catch((Y)=>cB(Y));default:return Promise.resolve(cB("unknown scheme"))}}function Fx0(A,Q){if(A.request.done=!0,A.processResponseDone!=null)queueMicrotask(()=>A.processResponseDone(Q))}function Mo(A,Q){let B=A.timingInfo,Y=()=>{let C=Date.now();if(A.request.destination==="document")A.controller.fullTimingInfo=B;A.controller.reportTimingSteps=()=>{if(!Dk(A.request.url))return;B.endTime=C;let{cacheState:G,bodyInfo:W}=Q;if(!Q.timingAllowPassed)B=Ro(B),G="";let F=0;if(A.request.mode!=="navigator"||!Q.hasCrossOriginRedirects){F=Q.status;let Z=uh0(Q.headersList);if(Z!=="failure")W.contentType=eh0(Z)}if(A.request.initiatorType!=null)OPQ(B,A.request.url.href,A.request.initiatorType,globalThis,G,W,F)};let X=()=>{if(A.request.done=!0,A.processResponseEndOfBody!=null)queueMicrotask(()=>A.processResponseEndOfBody(Q));if(A.request.initiatorType!=null)A.controller.reportTimingSteps()};queueMicrotask(()=>X())};if(A.processResponse!=null)queueMicrotask(()=>{A.processResponse(Q),A.processResponse=null});let J=Q.type==="error"?Q:Q.internalResponse??Q;if(J.body==null)Y();else sh0(J.body.stream,()=>{Y()})}async function SPQ(A){let Q=A.request,B=null,Y=null,J=A.timingInfo;if(Q.serviceWorkers==="all");if(B===null){if(Q.redirect==="follow")Q.serviceWorkers="none";if(Y=B=await kPQ(A),Q.responseTainting==="cors"&&Th0(Q,B)==="failure")return cB("cors failure");if(zh0(Q,B)==="failure")Q.timingAllowFailed=!0}if((Q.responseTainting==="opaque"||B.type==="opaque")&&Sh0(Q.origin,Q.client,Q.destination,Y)==="blocked")return cB("blocked");if(RPQ.has(Y.status)){if(Q.redirect!=="manual")A.controller.connection.destroy(void 0,!1);if(Q.redirect==="error")B=cB("unexpected redirect");else if(Q.redirect==="manual")B=Y;else if(Q.redirect==="follow")B=await Zx0(A,B);else W4(!1)}return B.timingInfo=J,B}function Zx0(A,Q){let B=A.request,Y=Q.internalResponse?Q.internalResponse:Q,J;try{if(J=wh0(Y,yX(B).hash),J==null)return Q}catch(X){return Promise.resolve(cB(X))}if(!Dk(J))return Promise.resolve(cB("URL scheme must be a HTTP(S) scheme"));if(B.redirectCount===20)return Promise.resolve(cB("redirect count exceeded"));if(B.redirectCount+=1,B.mode==="cors"&&(J.username||J.password)&&!zo(B,J))return Promise.resolve(cB('cross origin not allowed for request mode "cors"'));if(B.responseTainting==="cors"&&(J.username||J.password))return Promise.resolve(cB('URL cannot contain credentials for request mode "cors"'));if(Y.status!==303&&B.body!=null&&B.body.source==null)return Promise.resolve(cB());if([301,302].includes(Y.status)&&B.method==="POST"||Y.status===303&&!Cx0.includes(B.method)){B.method="GET",B.body=null;for(let X of ch0)B.headersList.delete(X)}if(!zo(yX(B),J))B.headersList.delete("authorization",!0),B.headersList.delete("proxy-authorization",!0),B.headersList.delete("cookie",!0),B.headersList.delete("host",!0);if(B.body!=null)W4(B.body.source!=null),B.body=wo(B.body.source)[0];let C=A.timingInfo;if(C.redirectEndTime=C.postRedirectStartTime=AM(A.crossOriginIsolatedCapability),C.redirectStartTime===0)C.redirectStartTime=C.startTime;return B.urlList.push(J),jh0(B,Y),TPQ(A,!0)}async function kPQ(A,Q=!1,B=!1){let Y=A.request,J=null,C=null,X=null,G=null,W=!1;if(Y.window==="no-window"&&Y.redirect==="error")J=A,C=Y;else C=Hh0(Y),J={...A},J.request=C;let F=Y.credentials==="include"||Y.credentials==="same-origin"&&Y.responseTainting==="basic",Z=C.body?C.body.length:null,U=null;if(C.body==null&&["POST","PUT"].includes(C.method))U="0";if(Z!=null)U=Ik(`${Z}`);if(U!=null)C.headersList.append("content-length",U,!0);if(Z!=null&&C.keepalive);if(jo.is.URL(C.referrer))C.headersList.append("referer",Ik(C.referrer.href),!0);if(Rh0(C),Ph0(C),!C.headersList.contains("user-agent",!0))C.headersList.append("user-agent",Xx0,!0);if(C.cache==="default"&&(C.headersList.contains("if-modified-since",!0)||C.headersList.contains("if-none-match",!0)||C.headersList.contains("if-unmodified-since",!0)||C.headersList.contains("if-match",!0)||C.headersList.contains("if-range",!0)))C.cache="no-store";if(C.cache==="no-cache"&&!C.preventNoCacheCacheControlHeaderModification&&!C.headersList.contains("cache-control",!0))C.headersList.append("cache-control","max-age=0",!0);if(C.cache==="no-store"||C.cache==="reload"){if(!C.headersList.contains("pragma",!0))C.headersList.append("pragma","no-cache",!0);if(!C.headersList.contains("cache-control",!0))C.headersList.append("cache-control","no-cache",!0)}if(C.headersList.contains("range",!0))C.headersList.append("accept-encoding","identity",!0);if(!C.headersList.contains("accept-encoding",!0))if(hh0(yX(C)))C.headersList.append("accept-encoding","br, gzip, deflate",!0);else C.headersList.append("accept-encoding","gzip, deflate",!0);if(C.headersList.delete("host",!0),G==null)C.cache="no-store";if(C.cache!=="no-store"&&C.cache!=="reload");if(X==null){if(C.cache==="only-if-cached")return cB("only if cached");let $=await $x0(J,F,B);if(!dh0.has(C.method)&&$.status>=200&&$.status<=399);if(W&&$.status===304);if(X==null)X=$}if(X.urlList=[...C.urlList],C.headersList.contains("range",!0))X.rangeRequested=!0;if(X.requestIncludesCredentials=F,X.status===407){if(Y.window==="no-window")return cB();if(G4(A))return Kk(A);return cB("proxy authentication required")}if(X.status===421&&!B&&(Y.body==null||Y.body.source!=null)){if(G4(A))return Kk(A);A.controller.connection.destroy(),X=await kPQ(A,Q,!0)}return X}async function $x0(A,Q=!1,B=!1){W4(!A.controller.connection||A.controller.connection.destroyed),A.controller.connection={abort:null,destroyed:!1,destroy(K,I=!0){if(!this.destroyed){if(this.destroyed=!0,I)this.abort?.(K??new DOMException("The operation was aborted.","AbortError"))}}};let Y=A.request,J=null,C=A.timingInfo;if(!0)Y.cache="no-store";let G=B?"yes":"no";if(Y.mode==="websocket");let W=null;if(Y.body==null&&A.processRequestEndOfBody)queueMicrotask(()=>A.processRequestEndOfBody());else if(Y.body!=null){let K=async function*(H){if(G4(A))return;yield H,A.processRequestBodyChunkLength?.(H.byteLength)},I=()=>{if(G4(A))return;if(A.processRequestEndOfBody)A.processRequestEndOfBody()},V=(H)=>{if(G4(A))return;if(H.name==="AbortError")A.controller.abort();else A.controller.terminate(H)};W=async function*(){try{for await(let H of Y.body.stream)yield*K(H);I()}catch(H){V(H)}}()}try{let{body:K,status:I,statusText:V,headersList:H,socket:D}=await E({body:W});if(D)J=Vk({status:I,statusText:V,headersList:H,socket:D});else{let L=K[Symbol.asyncIterator]();A.controller.next=()=>L.next(),J=Vk({status:I,statusText:V,headersList:H})}}catch(K){if(K.name==="AbortError")return A.controller.connection.destroy(),Kk(A,K);return cB(K)}let U=new ReadableStream({start(K){A.controller.controller=K},pull:()=>{return A.controller.resume()},cancel:(K)=>{if(!G4(A))A.controller.abort(K)},type:"bytes"});if(J.body={stream:U,source:null,length:null},!A.controller.resume)A.controller.on("terminated",$);A.controller.resume=async()=>{while(!0){let K,I;try{let{done:H,value:D}=await A.controller.next();if(LPQ(A))break;K=H?void 0:D}catch(H){if(A.controller.ended&&!C.encodedBodySize)K=void 0;else K=H,I=!0}if(K===void 0){yh0(A.controller.controller),Fx0(A,J);return}if(C.decodedBodySize+=K?.byteLength??0,I){A.controller.terminate(K);return}let V=new Uint8Array(K);if(V.byteLength)A.controller.controller.enqueue(V);if(rh0(U)){A.controller.terminate();return}if(A.controller.controller.desiredSize<=0)return}};function $(K){if(LPQ(A)){if(J.aborted=!0,Hk(U))A.controller.controller.error(A.controller.serializedAbortReason)}else if(Hk(U))A.controller.controller.error(TypeError("terminated",{cause:_h0(K)?K:void 0}));A.controller.connection.destroy()}return J;function E({body:K}){let I=yX(Y),V=A.controller.dispatcher;return new Promise((H,D)=>V.dispatch({path:I.pathname+I.search,origin:I.origin,method:Y.method,body:V.isMockActive?Y.body&&(Y.body.source||Y.body.stream):K,headers:Y.headersList.entries,maxRedirections:0,upgrade:Y.mode==="websocket"?"websocket":void 0},{body:null,abort:null,onConnect(L){let{connection:z}=A.controller;if(C.finalConnectionTimingInfo=xh0(void 0,C.postRedirectStartTime,A.crossOriginIsolatedCapability),z.destroyed)L(new DOMException("The operation was aborted.","AbortError"));else A.controller.on("terminated",L),this.abort=z.abort=L;C.finalNetworkRequestStartTime=AM(A.crossOriginIsolatedCapability)},onResponseStarted(){C.finalNetworkResponseStartTime=AM(A.crossOriginIsolatedCapability)},onHeaders(L,z,M,N){if(L<200)return!1;let q=new NPQ;for(let k=0;k=0;--S){let v=T[S].trim();if(v==="x-gzip"||v==="gzip")_.push(UC.createGunzip({flush:UC.constants.Z_SYNC_FLUSH,finishFlush:UC.constants.Z_SYNC_FLUSH}));else if(v==="deflate")_.push(mh0({flush:UC.constants.Z_SYNC_FLUSH,finishFlush:UC.constants.Z_SYNC_FLUSH}));else if(v==="br")_.push(UC.createBrotliDecompress({flush:UC.constants.BROTLI_OPERATION_FLUSH,finishFlush:UC.constants.BROTLI_OPERATION_FLUSH}));else if(v==="zstd"&&Jx0)_.push(UC.createZstdDecompress({flush:UC.constants.ZSTD_e_continue,finishFlush:UC.constants.ZSTD_e_end}));else{_.length=0;break}}}let j=this.onError.bind(this);return H({status:L,statusText:N,headersList:q,body:_.length?nh0(this.body,..._,(k)=>{if(k)this.onError(k)}).on("error",j):this.body.on("error",j)}),!0},onData(L){if(A.controller.dump)return;let z=L;return C.encodedBodySize+=z.byteLength,this.body.push(z)},onComplete(){if(this.abort)A.controller.off("terminated",this.abort);A.controller.ended=!0,this.body.push(null)},onError(L){if(this.abort)A.controller.off("terminated",this.abort);this.body?.destroy(L),A.controller.terminate(L),D(L)},onUpgrade(L,z,M){if(L!==101)return;let N=new NPQ;for(let q=0;q{var Ux0=u("node:assert"),{URLSerializer:vPQ}=l8(),{isValidHeaderName:Ex0}=z9();function Kx0(A,Q,B=!1){let Y=vPQ(A,B),J=vPQ(Q,B);return Y===J}function Vx0(A){Ux0(A!==null);let Q=[];for(let B of A.split(","))if(B=B.trim(),Ex0(B))Q.push(B);return Q}yPQ.exports={urlEquals:Kx0,getFieldValues:Vx0}});var fPQ=R((nrY,xPQ)=>{var Po=u("node:assert"),{kConstruct:Ix0}=B0(),{urlEquals:Hx0,getFieldValues:To}=gPQ(),{kEnumerableProperty:F4,isDisturbed:Dx0}=lQ(),{webidl:JQ}=HJ(),{cloneResponse:Nx0,fromInnerResponse:Lx0,getResponseState:qx0}=eq(),{Request:BM,fromInnerRequest:Mx0,getRequestState:gX}=NV(),{fetching:zx0}=QM(),{urlIsHttpHttpsScheme:Nk,readAllBytes:Rx0}=z9(),{createDeferredPromise:LV}=Nq();class hX{#A;constructor(){if(arguments[0]!==Ix0)JQ.illegalConstructor();JQ.util.markAsUncloneable(this),this.#A=arguments[1]}async match(A,Q={}){JQ.brandCheck(this,hX);let B="Cache.match";JQ.argumentLengthCheck(arguments,1,B),A=JQ.converters.RequestInfo(A),Q=JQ.converters.CacheQueryOptions(Q,B,"options");let Y=this.#J(A,Q,1);if(Y.length===0)return;return Y[0]}async matchAll(A=void 0,Q={}){JQ.brandCheck(this,hX);let B="Cache.matchAll";if(A!==void 0)A=JQ.converters.RequestInfo(A);return Q=JQ.converters.CacheQueryOptions(Q,B,"options"),this.#J(A,Q)}async add(A){JQ.brandCheck(this,hX);let Q="Cache.add";JQ.argumentLengthCheck(arguments,1,Q),A=JQ.converters.RequestInfo(A);let B=[A];return await this.addAll(B)}async addAll(A){JQ.brandCheck(this,hX);let Q="Cache.addAll";JQ.argumentLengthCheck(arguments,1,Q);let B=[],Y=[];for(let U of A){if(U===void 0)throw JQ.errors.conversionFailed({prefix:Q,argument:"Argument 1",types:["undefined is not allowed"]});if(U=JQ.converters.RequestInfo(U),typeof U==="string")continue;let $=gX(U);if(!Nk($.url)||$.method!=="GET")throw JQ.errors.exception({header:Q,message:"Expected http/s scheme when method is not GET."})}let J=[];for(let U of A){let $=gX(new BM(U));if(!Nk($.url))throw JQ.errors.exception({header:Q,message:"Expected http/s scheme."});$.initiator="fetch",$.destination="subresource",Y.push($);let E=LV();J.push(zx0({request:$,processResponse(K){if(K.type==="error"||K.status===206||K.status<200||K.status>299)E.reject(JQ.errors.exception({header:"Cache.addAll",message:"Received an invalid status code or the request failed."}));else if(K.headersList.contains("vary")){let I=To(K.headersList.get("vary"));for(let V of I)if(V==="*"){E.reject(JQ.errors.exception({header:"Cache.addAll",message:"invalid vary field value"}));for(let H of J)H.abort();return}}},processResponseEndOfBody(K){if(K.aborted){E.reject(new DOMException("aborted","AbortError"));return}E.resolve(K)}})),B.push(E.promise)}let X=await Promise.all(B),G=[],W=0;for(let U of X){let $={type:"put",request:Y[W],response:U};G.push($),W++}let F=LV(),Z=null;try{this.#Q(G)}catch(U){Z=U}return queueMicrotask(()=>{if(Z===null)F.resolve(void 0);else F.reject(Z)}),F.promise}async put(A,Q){JQ.brandCheck(this,hX);let B="Cache.put";JQ.argumentLengthCheck(arguments,2,B),A=JQ.converters.RequestInfo(A),Q=JQ.converters.Response(Q,B,"response");let Y=null;if(JQ.is.Request(A))Y=gX(A);else Y=gX(new BM(A));if(!Nk(Y.url)||Y.method!=="GET")throw JQ.errors.exception({header:B,message:"Expected an http/s scheme when method is not GET"});let J=qx0(Q);if(J.status===206)throw JQ.errors.exception({header:B,message:"Got 206 status"});if(J.headersList.contains("vary")){let $=To(J.headersList.get("vary"));for(let E of $)if(E==="*")throw JQ.errors.exception({header:B,message:"Got * vary field value"})}if(J.body&&(Dx0(J.body.stream)||J.body.stream.locked))throw JQ.errors.exception({header:B,message:"Response body is locked or disturbed"});let C=Nx0(J),X=LV();if(J.body!=null){let E=J.body.stream.getReader();Rx0(E,X.resolve,X.reject)}else X.resolve(void 0);let G=[],W={type:"put",request:Y,response:C};G.push(W);let F=await X.promise;if(C.body!=null)C.body.source=F;let Z=LV(),U=null;try{this.#Q(G)}catch($){U=$}return queueMicrotask(()=>{if(U===null)Z.resolve();else Z.reject(U)}),Z.promise}async delete(A,Q={}){JQ.brandCheck(this,hX);let B="Cache.delete";JQ.argumentLengthCheck(arguments,1,B),A=JQ.converters.RequestInfo(A),Q=JQ.converters.CacheQueryOptions(Q,B,"options");let Y=null;if(JQ.is.Request(A)){if(Y=gX(A),Y.method!=="GET"&&!Q.ignoreMethod)return!1}else Po(typeof A==="string"),Y=gX(new BM(A));let J=[],C={type:"delete",request:Y,options:Q};J.push(C);let X=LV(),G=null,W;try{W=this.#Q(J)}catch(F){G=F}return queueMicrotask(()=>{if(G===null)X.resolve(!!W?.length);else X.reject(G)}),X.promise}async keys(A=void 0,Q={}){JQ.brandCheck(this,hX);let B="Cache.keys";if(A!==void 0)A=JQ.converters.RequestInfo(A);Q=JQ.converters.CacheQueryOptions(Q,B,"options");let Y=null;if(A!==void 0){if(JQ.is.Request(A)){if(Y=gX(A),Y.method!=="GET"&&!Q.ignoreMethod)return[]}else if(typeof A==="string")Y=gX(new BM(A))}let J=LV(),C=[];if(A===void 0)for(let X of this.#A)C.push(X[0]);else{let X=this.#B(Y,Q);for(let G of X)C.push(G[0])}return queueMicrotask(()=>{let X=[];for(let G of C){let W=Mx0(G,void 0,new AbortController().signal,"immutable");X.push(W)}J.resolve(Object.freeze(X))}),J.promise}#Q(A){let Q=this.#A,B=[...Q],Y=[],J=[];try{for(let C of A){if(C.type!=="delete"&&C.type!=="put")throw JQ.errors.exception({header:"Cache.#batchCacheOperations",message:'operation type does not match "delete" or "put"'});if(C.type==="delete"&&C.response!=null)throw JQ.errors.exception({header:"Cache.#batchCacheOperations",message:"delete operation should not have an associated response"});if(this.#B(C.request,C.options,Y).length)throw new DOMException("???","InvalidStateError");let X;if(C.type==="delete"){if(X=this.#B(C.request,C.options),X.length===0)return[];for(let G of X){let W=Q.indexOf(G);Po(W!==-1),Q.splice(W,1)}}else if(C.type==="put"){if(C.response==null)throw JQ.errors.exception({header:"Cache.#batchCacheOperations",message:"put operation should have an associated response"});let G=C.request;if(!Nk(G.url))throw JQ.errors.exception({header:"Cache.#batchCacheOperations",message:"expected http or https scheme"});if(G.method!=="GET")throw JQ.errors.exception({header:"Cache.#batchCacheOperations",message:"not get method"});if(C.options!=null)throw JQ.errors.exception({header:"Cache.#batchCacheOperations",message:"options must not be defined"});X=this.#B(C.request);for(let W of X){let F=Q.indexOf(W);Po(F!==-1),Q.splice(F,1)}Q.push([C.request,C.response]),Y.push([C.request,C.response])}J.push([C.request,C.response])}return J}catch(C){throw this.#A.length=0,this.#A=B,C}}#B(A,Q,B){let Y=[],J=B??this.#A;for(let C of J){let[X,G]=C;if(this.#Y(A,X,G,Q))Y.push(C)}return Y}#Y(A,Q,B=null,Y){let J=new URL(A.url),C=new URL(Q.url);if(Y?.ignoreSearch)C.search="",J.search="";if(!Hx0(J,C,!0))return!1;if(B==null||Y?.ignoreVary||!B.headersList.contains("vary"))return!0;let X=To(B.headersList.get("vary"));for(let G of X){if(G==="*")return!1;let W=Q.headersList.get(G),F=A.headersList.get(G);if(W!==F)return!1}return!0}#J(A,Q,B=1/0){let Y=null;if(A!==void 0){if(JQ.is.Request(A)){if(Y=gX(A),Y.method!=="GET"&&!Q.ignoreMethod)return[]}else if(typeof A==="string")Y=gX(new BM(A))}let J=[];if(A===void 0)for(let X of this.#A)J.push(X[1]);else{let X=this.#B(Y,Q);for(let G of X)J.push(G[1])}let C=[];for(let X of J){let G=Lx0(X,"immutable");if(C.push(G.clone()),C.length>=B)break}return Object.freeze(C)}}Object.defineProperties(hX.prototype,{[Symbol.toStringTag]:{value:"Cache",configurable:!0},match:F4,matchAll:F4,add:F4,addAll:F4,put:F4,delete:F4,keys:F4});var hPQ=[{key:"ignoreSearch",converter:JQ.converters.boolean,defaultValue:()=>!1},{key:"ignoreMethod",converter:JQ.converters.boolean,defaultValue:()=>!1},{key:"ignoreVary",converter:JQ.converters.boolean,defaultValue:()=>!1}];JQ.converters.CacheQueryOptions=JQ.dictionaryConverter(hPQ);JQ.converters.MultiCacheQueryOptions=JQ.dictionaryConverter([...hPQ,{key:"cacheName",converter:JQ.converters.DOMString}]);JQ.converters.Response=JQ.interfaceConverter(JQ.is.Response,"Response");JQ.converters["sequence"]=JQ.sequenceConverter(JQ.converters.RequestInfo);xPQ.exports={Cache:hX}});var mPQ=R((srY,bPQ)=>{var{Cache:Lk}=fPQ(),{webidl:uJ}=HJ(),{kEnumerableProperty:YM}=lQ(),{kConstruct:JM}=B0();class UF{#A=new Map;constructor(){if(arguments[0]!==JM)uJ.illegalConstructor();uJ.util.markAsUncloneable(this)}async match(A,Q={}){if(uJ.brandCheck(this,UF),uJ.argumentLengthCheck(arguments,1,"CacheStorage.match"),A=uJ.converters.RequestInfo(A),Q=uJ.converters.MultiCacheQueryOptions(Q),Q.cacheName!=null){if(this.#A.has(Q.cacheName)){let B=this.#A.get(Q.cacheName);return await new Lk(JM,B).match(A,Q)}}else for(let B of this.#A.values()){let J=await new Lk(JM,B).match(A,Q);if(J!==void 0)return J}}async has(A){uJ.brandCheck(this,UF);let Q="CacheStorage.has";return uJ.argumentLengthCheck(arguments,1,Q),A=uJ.converters.DOMString(A,Q,"cacheName"),this.#A.has(A)}async open(A){uJ.brandCheck(this,UF);let Q="CacheStorage.open";if(uJ.argumentLengthCheck(arguments,1,Q),A=uJ.converters.DOMString(A,Q,"cacheName"),this.#A.has(A)){let Y=this.#A.get(A);return new Lk(JM,Y)}let B=[];return this.#A.set(A,B),new Lk(JM,B)}async delete(A){uJ.brandCheck(this,UF);let Q="CacheStorage.delete";return uJ.argumentLengthCheck(arguments,1,Q),A=uJ.converters.DOMString(A,Q,"cacheName"),this.#A.delete(A)}async keys(){return uJ.brandCheck(this,UF),[...this.#A.keys()]}}Object.defineProperties(UF.prototype,{[Symbol.toStringTag]:{value:"CacheStorage",configurable:!0},match:YM,has:YM,open:YM,delete:YM,keys:YM});bPQ.exports={CacheStorage:UF}});var dPQ=R((rrY,uPQ)=>{uPQ.exports={maxAttributeValueSize:1024,maxNameValuePairSize:4096}});var So=R((arY,nPQ)=>{function wx0(A){for(let Q=0;Q=0&&B<=8||B>=10&&B<=31||B===127)return!0}return!1}function cPQ(A){for(let Q=0;Q126||B===34||B===40||B===41||B===60||B===62||B===64||B===44||B===59||B===58||B===92||B===47||B===91||B===93||B===63||B===61||B===123||B===125)throw Error("Invalid cookie name")}}function lPQ(A){let Q=A.length,B=0;if(A[0]==='"'){if(Q===1||A[Q-1]!=='"')throw Error("Invalid cookie value");--Q,++B}while(B126||Y===34||Y===44||Y===59||Y===92)throw Error("Invalid cookie value")}}function pPQ(A){for(let Q=0;QQ.toString().padStart(2,"0"));function iPQ(A){if(typeof A==="number")A=new Date(A);return`${Ox0[A.getUTCDay()]}, ${qk[A.getUTCDate()]} ${Px0[A.getUTCMonth()]} ${A.getUTCFullYear()} ${qk[A.getUTCHours()]}:${qk[A.getUTCMinutes()]}:${qk[A.getUTCSeconds()]} GMT`}function Tx0(A){if(A<0)throw Error("Invalid cookie max-age")}function Sx0(A){if(A.name.length===0)return null;cPQ(A.name),lPQ(A.value);let Q=[`${A.name}=${A.value}`];if(A.name.startsWith("__Secure-"))A.secure=!0;if(A.name.startsWith("__Host-"))A.secure=!0,A.domain=null,A.path="/";if(A.secure)Q.push("Secure");if(A.httpOnly)Q.push("HttpOnly");if(typeof A.maxAge==="number")Tx0(A.maxAge),Q.push(`Max-Age=${A.maxAge}`);if(A.domain)jx0(A.domain),Q.push(`Domain=${A.domain}`);if(A.path)pPQ(A.path),Q.push(`Path=${A.path}`);if(A.expires&&A.expires.toString()!=="Invalid Date")Q.push(`Expires=${iPQ(A.expires)}`);if(A.sameSite)Q.push(`SameSite=${A.sameSite}`);for(let B of A.unparsed){if(!B.includes("="))throw Error("Invalid unparsed");let[Y,...J]=B.split("=");Q.push(`${Y.trim()}=${J.join("=")}`)}return Q.join("; ")}nPQ.exports={isCTLExcludingHtab:wx0,validateCookieName:cPQ,validateCookiePath:pPQ,validateCookieValue:lPQ,toIMFDate:iPQ,stringify:Sx0}});var rPQ=R((orY,sPQ)=>{var{maxNameValuePairSize:kx0,maxAttributeValueSize:_x0}=dPQ(),{isCTLExcludingHtab:vx0}=So(),{collectASequenceOfCodePointsFast:Mk}=l8(),yx0=u("node:assert"),{unescape:gx0}=u("node:querystring");function hx0(A){if(vx0(A))return null;let Q="",B="",Y="",J="";if(A.includes(";")){let C={position:0};Q=Mk(";",A,C),B=A.slice(C.position)}else Q=A;if(!Q.includes("="))J=Q;else{let C={position:0};Y=Mk("=",Q,C),J=Q.slice(C.position+1)}if(Y=Y.trim(),J=J.trim(),Y.length+J.length>kx0)return null;return{name:Y,value:gx0(J),...qV(B)}}function qV(A,Q={}){if(A.length===0)return Q;yx0(A[0]===";"),A=A.slice(1);let B="";if(A.includes(";"))B=Mk(";",A,{position:0}),A=A.slice(B.length);else B=A,A="";let Y="",J="";if(B.includes("=")){let X={position:0};Y=Mk("=",B,X),J=B.slice(X.position+1)}else Y=B;if(Y=Y.trim(),J=J.trim(),J.length>_x0)return qV(A,Q);let C=Y.toLowerCase();if(C==="expires"){let X=new Date(J);Q.expires=X}else if(C==="max-age"){let X=J.charCodeAt(0);if((X<48||X>57)&&J[0]!=="-")return qV(A,Q);if(!/^\d+$/.test(J))return qV(A,Q);let G=Number(J);Q.maxAge=G}else if(C==="domain"){let X=J;if(X[0]===".")X=X.slice(1);X=X.toLowerCase(),Q.domain=X}else if(C==="path"){let X="";if(J.length===0||J[0]!=="/")X="/";else X=J;Q.path=X}else if(C==="secure")Q.secure=!0;else if(C==="httponly")Q.httpOnly=!0;else if(C==="samesite"){let X="Default",G=J.toLowerCase();if(G.includes("none"))X="None";if(G.includes("strict"))X="Strict";if(G.includes("lax"))X="Lax";Q.sameSite=X}else Q.unparsed??=[],Q.unparsed.push(`${Y}=${J}`);return qV(A,Q)}sPQ.exports={parseSetCookie:hx0,parseUnparsedAttributes:qV}});var ePQ=R((trY,tPQ)=>{var{parseSetCookie:aPQ}=rPQ(),{stringify:xx0}=So(),{webidl:zB}=HJ(),{Headers:fx0}=J4(),zk=zB.brandCheckMultiple([fx0,globalThis.Headers].filter(Boolean));function bx0(A){zB.argumentLengthCheck(arguments,1,"getCookies"),zk(A);let Q=A.get("cookie"),B={};if(!Q)return B;for(let Y of Q.split(";")){let[J,...C]=Y.split("=");B[J.trim()]=C.join("=")}return B}function mx0(A,Q,B){zk(A);let Y="deleteCookie";zB.argumentLengthCheck(arguments,2,Y),Q=zB.converters.DOMString(Q,Y,"name"),B=zB.converters.DeleteCookieAttributes(B),oPQ(A,{name:Q,value:"",expires:new Date(0),...B})}function ux0(A){zB.argumentLengthCheck(arguments,1,"getSetCookies"),zk(A);let Q=A.getSetCookie();if(!Q)return[];return Q.map((B)=>aPQ(B))}function dx0(A){return A=zB.converters.DOMString(A),aPQ(A)}function oPQ(A,Q){zB.argumentLengthCheck(arguments,2,"setCookie"),zk(A),Q=zB.converters.Cookie(Q);let B=xx0(Q);if(B)A.append("set-cookie",B,!0)}zB.converters.DeleteCookieAttributes=zB.dictionaryConverter([{converter:zB.nullableConverter(zB.converters.DOMString),key:"path",defaultValue:()=>null},{converter:zB.nullableConverter(zB.converters.DOMString),key:"domain",defaultValue:()=>null}]);zB.converters.Cookie=zB.dictionaryConverter([{converter:zB.converters.DOMString,key:"name"},{converter:zB.converters.DOMString,key:"value"},{converter:zB.nullableConverter((A)=>{if(typeof A==="number")return zB.converters["unsigned long long"](A);return new Date(A)}),key:"expires",defaultValue:()=>null},{converter:zB.nullableConverter(zB.converters["long long"]),key:"maxAge",defaultValue:()=>null},{converter:zB.nullableConverter(zB.converters.DOMString),key:"domain",defaultValue:()=>null},{converter:zB.nullableConverter(zB.converters.DOMString),key:"path",defaultValue:()=>null},{converter:zB.nullableConverter(zB.converters.boolean),key:"secure",defaultValue:()=>null},{converter:zB.nullableConverter(zB.converters.boolean),key:"httpOnly",defaultValue:()=>null},{converter:zB.converters.USVString,key:"sameSite",allowedValues:["Strict","Lax","None"]},{converter:zB.sequenceConverter(zB.converters.DOMString),key:"unparsed",defaultValue:()=>[]}]);tPQ.exports={getCookies:bx0,deleteCookie:mx0,getSetCookies:ux0,setCookie:oPQ,parseCookie:dx0}});var Rk=R((erY,QTQ)=>{var{webidl:FQ}=HJ(),{kEnumerableProperty:C8}=lQ(),{kConstruct:ATQ}=B0();class r8 extends Event{#A;constructor(A,Q={}){if(A===ATQ){super(arguments[1],arguments[2]);FQ.util.markAsUncloneable(this);return}let B="MessageEvent constructor";FQ.argumentLengthCheck(arguments,1,B),A=FQ.converters.DOMString(A,B,"type"),Q=FQ.converters.MessageEventInit(Q,B,"eventInitDict");super(A,Q);this.#A=Q,FQ.util.markAsUncloneable(this)}get data(){return FQ.brandCheck(this,r8),this.#A.data}get origin(){return FQ.brandCheck(this,r8),this.#A.origin}get lastEventId(){return FQ.brandCheck(this,r8),this.#A.lastEventId}get source(){return FQ.brandCheck(this,r8),this.#A.source}get ports(){if(FQ.brandCheck(this,r8),!Object.isFrozen(this.#A.ports))Object.freeze(this.#A.ports);return this.#A.ports}initMessageEvent(A,Q=!1,B=!1,Y=null,J="",C="",X=null,G=[]){return FQ.brandCheck(this,r8),FQ.argumentLengthCheck(arguments,1,"MessageEvent.initMessageEvent"),new r8(A,{bubbles:Q,cancelable:B,data:Y,origin:J,lastEventId:C,source:X,ports:G})}static createFastMessageEvent(A,Q){let B=new r8(ATQ,A,Q);return B.#A=Q,B.#A.data??=null,B.#A.origin??="",B.#A.lastEventId??="",B.#A.source??=null,B.#A.ports??=[],B}}var{createFastMessageEvent:cx0}=r8;delete r8.createFastMessageEvent;class MV extends Event{#A;constructor(A,Q={}){FQ.argumentLengthCheck(arguments,1,"CloseEvent constructor"),A=FQ.converters.DOMString(A,"CloseEvent constructor","type"),Q=FQ.converters.CloseEventInit(Q);super(A,Q);this.#A=Q,FQ.util.markAsUncloneable(this)}get wasClean(){return FQ.brandCheck(this,MV),this.#A.wasClean}get code(){return FQ.brandCheck(this,MV),this.#A.code}get reason(){return FQ.brandCheck(this,MV),this.#A.reason}}class EF extends Event{#A;constructor(A,Q){FQ.argumentLengthCheck(arguments,1,"ErrorEvent constructor");super(A,Q);FQ.util.markAsUncloneable(this),A=FQ.converters.DOMString(A,"ErrorEvent constructor","type"),Q=FQ.converters.ErrorEventInit(Q??{}),this.#A=Q}get message(){return FQ.brandCheck(this,EF),this.#A.message}get filename(){return FQ.brandCheck(this,EF),this.#A.filename}get lineno(){return FQ.brandCheck(this,EF),this.#A.lineno}get colno(){return FQ.brandCheck(this,EF),this.#A.colno}get error(){return FQ.brandCheck(this,EF),this.#A.error}}Object.defineProperties(r8.prototype,{[Symbol.toStringTag]:{value:"MessageEvent",configurable:!0},data:C8,origin:C8,lastEventId:C8,source:C8,ports:C8,initMessageEvent:C8});Object.defineProperties(MV.prototype,{[Symbol.toStringTag]:{value:"CloseEvent",configurable:!0},reason:C8,code:C8,wasClean:C8});Object.defineProperties(EF.prototype,{[Symbol.toStringTag]:{value:"ErrorEvent",configurable:!0},message:C8,filename:C8,lineno:C8,colno:C8,error:C8});FQ.converters.MessagePort=FQ.interfaceConverter(FQ.is.MessagePort,"MessagePort");FQ.converters["sequence"]=FQ.sequenceConverter(FQ.converters.MessagePort);var ko=[{key:"bubbles",converter:FQ.converters.boolean,defaultValue:()=>!1},{key:"cancelable",converter:FQ.converters.boolean,defaultValue:()=>!1},{key:"composed",converter:FQ.converters.boolean,defaultValue:()=>!1}];FQ.converters.MessageEventInit=FQ.dictionaryConverter([...ko,{key:"data",converter:FQ.converters.any,defaultValue:()=>null},{key:"origin",converter:FQ.converters.USVString,defaultValue:()=>""},{key:"lastEventId",converter:FQ.converters.DOMString,defaultValue:()=>""},{key:"source",converter:FQ.nullableConverter(FQ.converters.MessagePort),defaultValue:()=>null},{key:"ports",converter:FQ.converters["sequence"],defaultValue:()=>[]}]);FQ.converters.CloseEventInit=FQ.dictionaryConverter([...ko,{key:"wasClean",converter:FQ.converters.boolean,defaultValue:()=>!1},{key:"code",converter:FQ.converters["unsigned short"],defaultValue:()=>0},{key:"reason",converter:FQ.converters.USVString,defaultValue:()=>""}]);FQ.converters.ErrorEventInit=FQ.dictionaryConverter([...ko,{key:"message",converter:FQ.converters.DOMString,defaultValue:()=>""},{key:"filename",converter:FQ.converters.USVString,defaultValue:()=>""},{key:"lineno",converter:FQ.converters["unsigned long"],defaultValue:()=>0},{key:"colno",converter:FQ.converters["unsigned long"],defaultValue:()=>0},{key:"error",converter:FQ.converters.any}]);QTQ.exports={MessageEvent:r8,CloseEvent:MV,ErrorEvent:EF,createFastMessageEvent:cx0}});var KF=R((AaY,BTQ)=>{var lx0={enumerable:!0,writable:!1,configurable:!1},px0={CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3},ix0={SENT:1,RECEIVED:2},nx0={CONTINUATION:0,TEXT:1,BINARY:2,CLOSE:8,PING:9,PONG:10},sx0={INFO:0,PAYLOADLENGTH_16:2,PAYLOADLENGTH_64:3,READ_DATA:4},rx0=Buffer.allocUnsafe(0),ax0={text:1,typedArray:2,arrayBuffer:3,blob:4};BTQ.exports={uid:"258EAFA5-E914-47DA-95CA-C5AB0DC85B11",sentCloseFrameState:ix0,staticPropertyDescriptors:lx0,states:px0,opcodes:nx0,maxUnsigned16Bit:65535,parserStates:sx0,emptyBuffer:rx0,sendHints:ax0}});var Z4=R((QaY,GTQ)=>{var{states:wk,opcodes:zV}=KF(),{isUtf8:ox0}=u("node:buffer"),{collectASequenceOfCodePointsFast:tx0,removeHTTPWhitespace:YTQ}=l8();function ex0(A){return A===wk.CONNECTING}function Af0(A){return A===wk.OPEN}function Qf0(A){return A===wk.CLOSING}function Bf0(A){return A===wk.CLOSED}function Yf0(A,Q,B=(J,C)=>new Event(J,C),Y={}){let J=B(A,Y);Q.dispatchEvent(J)}function Jf0(A,Q,B){A.onMessage(Q,B)}function Cf0(A){if(A.byteLength===A.buffer.byteLength)return A.buffer;return new Uint8Array(A).buffer}function Xf0(A){if(A.length===0)return!1;for(let Q=0;Q126||B===34||B===40||B===41||B===44||B===47||B===58||B===59||B===60||B===61||B===62||B===63||B===64||B===91||B===92||B===93||B===123||B===125)return!1}return!0}function Gf0(A){if(A>=1000&&A<1015)return A!==1004&&A!==1005&&A!==1006;return A>=3000&&A<=4999}function JTQ(A){return A===zV.CLOSE||A===zV.PING||A===zV.PONG}function CTQ(A){return A===zV.CONTINUATION}function XTQ(A){return A===zV.TEXT||A===zV.BINARY}function Wf0(A){return XTQ(A)||CTQ(A)||JTQ(A)}function Ff0(A){let Q={position:0},B=new Map;while(Q.position57)return!1}return!0}function $f0(A,Q){let B;try{B=new URL(A,Q)}catch(Y){throw new DOMException(Y,"SyntaxError")}if(B.protocol==="http:")B.protocol="ws:";else if(B.protocol==="https:")B.protocol="wss:";if(B.protocol!=="ws:"&&B.protocol!=="wss:")throw new DOMException("expected a ws: or wss: url","SyntaxError");if(B.hash.length||B.href.endsWith("#"))throw new DOMException("hash","SyntaxError");return B}function Uf0(A,Q){if(A!==null){if(A!==1000&&(A<3000||A>4999))throw new DOMException("invalid code","InvalidAccessError")}if(Q!==null){let B=Buffer.byteLength(Q);if(B>123)throw new DOMException(`Reason must be less than 123 bytes; received ${B}`,"SyntaxError")}}var Ef0=(()=>{if(typeof process.versions.icu==="string"){let A=new TextDecoder("utf-8",{fatal:!0});return A.decode.bind(A)}return function(A){if(ox0(A))return A.toString("utf-8");throw TypeError("Invalid utf-8 received.")}})();GTQ.exports={isConnecting:ex0,isEstablished:Af0,isClosing:Qf0,isClosed:Bf0,fireEvent:Yf0,isValidSubprotocol:Xf0,isValidStatusCode:Gf0,websocketMessageReceived:Jf0,utf8Decode:Ef0,isControlFrame:JTQ,isContinuationFrame:CTQ,isTextBinaryFrame:XTQ,isValidOpcode:Wf0,parseExtensions:Ff0,isValidClientWindowBits:Zf0,toArrayBuffer:Cf0,getURLRecord:$f0,validateCloseCodeAndReason:Uf0}});var wV=R((BaY,ZTQ)=>{var{maxUnsigned16Bit:WTQ,opcodes:Kf0}=KF(),_o,CM=null,RV=8192;try{_o=u("node:crypto")}catch{_o={randomFillSync:function(Q,B,Y){for(let J=0;JWTQ)C+=8,J=127;else if(Y>125)C+=2,J=126;let X=Buffer.allocUnsafe(Y+C);X[0]=X[1]=0,X[0]|=128,X[0]=(X[0]&240)+A;/*! ws. MIT License. Einar Otto Stangvik */if(X[C-4]=B[0],X[C-3]=B[1],X[C-2]=B[2],X[C-1]=B[3],X[1]=J,J===126)X.writeUInt16BE(Y,2);else if(J===127)X[2]=X[3]=0,X.writeUIntBE(Y,4,6);X[1]|=128;for(let G=0;GWTQ)J+=8,Y=127;else if(B>125)J+=2,Y=126;let C=Buffer.allocUnsafeSlow(J);if(C[0]=128|Kf0.TEXT,C[1]=Y|128,C[J-4]=Q[0],C[J-3]=Q[1],C[J-2]=Q[2],C[J-1]=Q[3],Y===126)C.writeUInt16BE(B,2);else if(Y===127)C[2]=C[3]=0,C.writeUIntBE(B,4,6);return[C,A]}}ZTQ.exports={WebsocketFrameSend:FTQ,generateMask:vo}});var Ok=R((YaY,KTQ)=>{var{uid:Vf0,states:jk,sentCloseFrameState:yo,emptyBuffer:$TQ,opcodes:If0}=KF(),{parseExtensions:Hf0,isClosed:Df0,isClosing:Nf0,isEstablished:UTQ,validateCloseCodeAndReason:Lf0}=Z4(),{makeRequest:qf0}=NV(),{fetching:Mf0}=QM(),{Headers:zf0,getHeadersList:Rf0}=J4(),{getDecodeSplit:wf0}=z9(),{WebsocketFrameSend:jf0}=wV(),Of0=u("node:assert"),go;try{go=u("node:crypto")}catch{}function Pf0(A,Q,B,Y,J){let C=A;C.protocol=A.protocol==="ws:"?"http:":"https:";let X=qf0({urlList:[C],client:B,serviceWorkers:"none",referrer:"no-referrer",mode:"websocket",credentials:"include",cache:"no-store",redirect:"error"});if(J.headers){let Z=Rf0(new zf0(J.headers));X.headersList=Z}let G=go.randomBytes(16).toString("base64");X.headersList.append("sec-websocket-key",G,!0),X.headersList.append("sec-websocket-version","13",!0);for(let Z of Q)X.headersList.append("sec-websocket-protocol",Z,!0);let W="permessage-deflate; client_max_window_bits";return X.headersList.append("sec-websocket-extensions",W,!0),Mf0({request:X,useParallelQueue:!0,dispatcher:J.dispatcher,processResponse(Z){if(Z.type==="error")Y.readyState=jk.CLOSED;if(Z.type==="error"||Z.status!==101){mG(Y,1002,"Received network error or non-101 status code.",Z.error);return}if(Q.length!==0&&!Z.headersList.get("Sec-WebSocket-Protocol")){mG(Y,1002,"Server did not respond with sent protocols.");return}if(Z.headersList.get("Upgrade")?.toLowerCase()!=="websocket"){mG(Y,1002,'Server did not set Upgrade header to "websocket".');return}if(Z.headersList.get("Connection")?.toLowerCase()!=="upgrade"){mG(Y,1002,'Server did not set Connection header to "upgrade".');return}let U=Z.headersList.get("Sec-WebSocket-Accept"),$=go.createHash("sha1").update(G+Vf0).digest("base64");if(U!==$){mG(Y,1002,"Incorrect hash received in Sec-WebSocket-Accept header.");return}let E=Z.headersList.get("Sec-WebSocket-Extensions"),K;if(E!==null){if(K=Hf0(E),!K.has("permessage-deflate")){mG(Y,1002,"Sec-WebSocket-Extensions header does not match.");return}}let I=Z.headersList.get("Sec-WebSocket-Protocol");if(I!==null){if(!wf0("sec-websocket-protocol",X.headersList).includes(I)){mG(Y,1002,"Protocol was not set in the opening handshake.");return}}Z.socket.on("data",Y.onSocketData),Z.socket.on("close",Y.onSocketClose),Z.socket.on("error",Y.onSocketError),Y.wasEverConnected=!0,Y.onConnectionEstablished(Z,K)}})}function ETQ(A,Q,B,Y=!1){if(Q??=null,B??="",Y)Lf0(Q,B);if(Df0(A.readyState)||Nf0(A.readyState));else if(!UTQ(A.readyState))mG(A),A.readyState=jk.CLOSING;else if(!A.closeState.has(yo.SENT)&&!A.closeState.has(yo.RECEIVED)){let J=new jf0;if(B.length!==0&&Q===null)Q=1000;if(Of0(Q===null||Number.isInteger(Q)),Q===null&&B.length===0)J.frameData=$TQ;else if(Q!==null&&B===null)J.frameData=Buffer.allocUnsafe(2),J.frameData.writeUInt16BE(Q,0);else if(Q!==null&&B!==null)J.frameData=Buffer.allocUnsafe(2+Buffer.byteLength(B)),J.frameData.writeUInt16BE(Q,0),J.frameData.write(B,2,"utf-8");else J.frameData=$TQ;A.socket.write(J.createFrame(If0.CLOSE)),A.closeState.add(yo.SENT),A.readyState=jk.CLOSING}else A.readyState=jk.CLOSING}function mG(A,Q,B,Y){if(UTQ(A.readyState))ETQ(A,Q,B,!1);if(A.controller.abort(),!A.socket)A.onSocketClose();else if(A.socket.destroyed===!1)A.socket.destroy()}KTQ.exports={establishWebSocketConnection:Pf0,failWebsocketConnection:mG,closeWebSocketConnection:ETQ}});var HTQ=R((JaY,ITQ)=>{var{createInflateRaw:Tf0,Z_DEFAULT_WINDOWBITS:Sf0}=u("node:zlib"),{isValidClientWindowBits:kf0}=Z4(),_f0=Buffer.from([0,0,255,255]),Pk=Symbol("kBuffer"),Tk=Symbol("kLength");class VTQ{#A;#Q={};constructor(A){this.#Q.serverNoContextTakeover=A.has("server_no_context_takeover"),this.#Q.serverMaxWindowBits=A.get("server_max_window_bits")}decompress(A,Q,B){if(!this.#A){let Y=Sf0;if(this.#Q.serverMaxWindowBits){if(!kf0(this.#Q.serverMaxWindowBits)){B(Error("Invalid server_max_window_bits"));return}Y=Number.parseInt(this.#Q.serverMaxWindowBits)}this.#A=Tf0({windowBits:Y}),this.#A[Pk]=[],this.#A[Tk]=0,this.#A.on("data",(J)=>{this.#A[Pk].push(J),this.#A[Tk]+=J.length}),this.#A.on("error",(J)=>{this.#A=null,B(J)})}if(this.#A.write(A),Q)this.#A.write(_f0);this.#A.flush(()=>{let Y=Buffer.concat(this.#A[Pk],this.#A[Tk]);this.#A[Pk].length=0,this.#A[Tk]=0,B(null,Y)})}}ITQ.exports={PerMessageDeflate:VTQ}});var xo=R((CaY,zTQ)=>{var{Writable:vf0}=u("node:stream"),yf0=u("node:assert"),{parserStates:X8,opcodes:jV,states:gf0,emptyBuffer:DTQ,sentCloseFrameState:XM}=KF(),{isValidStatusCode:hf0,isValidOpcode:xf0,websocketMessageReceived:NTQ,utf8Decode:ff0,isControlFrame:LTQ,isTextBinaryFrame:ho,isContinuationFrame:bf0}=Z4(),{failWebsocketConnection:a8}=Ok(),{WebsocketFrameSend:qTQ}=wV(),{PerMessageDeflate:mf0}=HTQ();class MTQ extends vf0{#A=[];#Q=0;#B=0;#Y=!1;#J=X8.INFO;#C={};#W=[];#X;#G;constructor(A,Q){super();if(this.#G=A,this.#X=Q==null?new Map:Q,this.#X.has("permessage-deflate"))this.#X.set("permessage-deflate",new mf0(Q))}_write(A,Q,B){this.#A.push(A),this.#B+=A.length,this.#Y=!0,this.run(B)}run(A){while(this.#Y)if(this.#J===X8.INFO){if(this.#B<2)return A();let Q=this.consume(2),B=(Q[0]&128)!==0,Y=Q[0]&15,J=(Q[1]&128)===128,C=!B&&Y!==jV.CONTINUATION,X=Q[1]&127,G=Q[0]&64,W=Q[0]&32,F=Q[0]&16;if(!xf0(Y))return a8(this.#G,1002,"Invalid opcode received"),A();if(J)return a8(this.#G,1002,"Frame cannot be masked"),A();if(G!==0&&!this.#X.has("permessage-deflate")){a8(this.#G,1002,"Expected RSV1 to be clear.");return}if(W!==0||F!==0){a8(this.#G,1002,"RSV1, RSV2, RSV3 must be clear");return}if(C&&!ho(Y)){a8(this.#G,1002,"Invalid frame type was fragmented.");return}if(ho(Y)&&this.#W.length>0){a8(this.#G,1002,"Expected continuation frame");return}if(this.#C.fragmented&&C){a8(this.#G,1002,"Fragmented frame exceeded 125 bytes.");return}if((X>125||C)&<Q(Y)){a8(this.#G,1002,"Control frame either too large or fragmented");return}if(bf0(Y)&&this.#W.length===0&&!this.#C.compressed){a8(this.#G,1002,"Unexpected continuation frame");return}if(X<=125)this.#C.payloadLength=X,this.#J=X8.READ_DATA;else if(X===126)this.#J=X8.PAYLOADLENGTH_16;else if(X===127)this.#J=X8.PAYLOADLENGTH_64;if(ho(Y))this.#C.binaryType=Y,this.#C.compressed=G!==0;this.#C.opcode=Y,this.#C.masked=J,this.#C.fin=B,this.#C.fragmented=C}else if(this.#J===X8.PAYLOADLENGTH_16){if(this.#B<2)return A();let Q=this.consume(2);this.#C.payloadLength=Q.readUInt16BE(0),this.#J=X8.READ_DATA}else if(this.#J===X8.PAYLOADLENGTH_64){if(this.#B<8)return A();let Q=this.consume(8),B=Q.readUInt32BE(0);if(B>2147483647){a8(this.#G,1009,"Received payload length > 2^31 bytes.");return}let Y=Q.readUInt32BE(4);this.#C.payloadLength=(B<<8)+Y,this.#J=X8.READ_DATA}else if(this.#J===X8.READ_DATA){if(this.#B{if(B){a8(this.#G,1007,B.message);return}if(this.writeFragments(Y),!this.#C.fin){this.#J=X8.INFO,this.#Y=!0,this.run(A);return}NTQ(this.#G,this.#C.binaryType,this.consumeFragments()),this.#Y=!0,this.#J=X8.INFO,this.run(A)}),this.#Y=!1;break}}}consume(A){if(A>this.#B)throw Error("Called consume() before buffers satiated.");else if(A===0)return DTQ;this.#B-=A;let Q=this.#A[0];if(Q.length>A)return this.#A[0]=Q.subarray(A,Q.length),Q.subarray(0,A);else if(Q.length===A)return this.#A.shift();else{let B=0,Y=Buffer.allocUnsafeSlow(A);while(B!==A){let J=this.#A[0],C=J.length;if(C+B===A){Y.set(this.#A.shift(),B);break}else if(C+B>A){Y.set(J.subarray(0,A-B),B),this.#A[0]=J.subarray(A-B);break}else Y.set(this.#A.shift(),B),B+=C}return Y}}writeFragments(A){this.#Q+=A.length,this.#W.push(A)}consumeFragments(){let A=this.#W;if(A.length===1)return this.#Q=0,A.shift();let Q=0,B=Buffer.allocUnsafeSlow(this.#Q);for(let Y=0;Y=2)Q=A.readUInt16BE(0);if(Q!==void 0&&!hf0(Q))return{code:1002,reason:"Invalid status code",error:!0};let B=A.subarray(2);if(B[0]===239&&B[1]===187&&B[2]===191)B=B.subarray(3);try{B=ff0(B)}catch{return{code:1007,reason:"Invalid UTF-8",error:!0}}return{code:Q,reason:B,error:!1}}parseControlFrame(A){let{opcode:Q,payloadLength:B}=this.#C;if(Q===jV.CLOSE){if(B===1)return a8(this.#G,1002,"Received close frame with a 1-byte body."),!1;if(this.#C.closeInfo=this.parseCloseBody(A),this.#C.closeInfo.error){let{code:Y,reason:J}=this.#C.closeInfo;return a8(this.#G,Y,J),!1}if(!this.#G.closeState.has(XM.SENT)&&!this.#G.closeState.has(XM.RECEIVED)){let Y=DTQ;if(this.#C.closeInfo.code)Y=Buffer.allocUnsafe(2),Y.writeUInt16BE(this.#C.closeInfo.code,0);let J=new qTQ(Y);this.#G.socket.write(J.createFrame(jV.CLOSE)),this.#G.closeState.add(XM.SENT)}return this.#G.readyState=gf0.CLOSING,this.#G.closeState.add(XM.RECEIVED),!1}else if(Q===jV.PING){if(!this.#G.closeState.has(XM.RECEIVED)){let Y=new qTQ(A);this.#G.socket.write(Y.createFrame(jV.PONG)),this.#G.onPing(A)}}else if(Q===jV.PONG)this.#G.onPong(A);return!0}get closingInfo(){return this.#C.closeInfo}}zTQ.exports={ByteParser:MTQ}});var PTQ=R((XaY,OTQ)=>{var{WebsocketFrameSend:wTQ}=wV(),{opcodes:RTQ,sendHints:$4}=KF(),uf0=Ba();class jTQ{#A=new uf0;#Q=!1;#B;constructor(A){this.#B=A}add(A,Q,B){if(B!==$4.blob){if(!this.#Q)if(B===$4.text){let{0:J,1:C}=wTQ.createFastTextFrame(A);this.#B.cork(),this.#B.write(J),this.#B.write(C,Q),this.#B.uncork()}else this.#B.write(fo(A,B),Q);else{let J={promise:null,callback:Q,frame:fo(A,B)};this.#A.push(J)}return}let Y={promise:A.arrayBuffer().then((J)=>{Y.promise=null,Y.frame=fo(J,B)}),callback:Q,frame:null};if(this.#A.push(Y),!this.#Q)this.#Y()}async#Y(){this.#Q=!0;let A=this.#A;while(!A.isEmpty()){let Q=A.shift();if(Q.promise!==null)await Q.promise;this.#B.write(Q.frame,Q.callback),Q.callback=Q.frame=null}this.#Q=!1}}function fo(A,Q){return new wTQ(df0(A,Q)).createFrame(Q===$4.text?RTQ.TEXT:RTQ.BINARY)}function df0(A,Q){switch(Q){case $4.text:case $4.typedArray:return new Uint8Array(A.buffer,A.byteOffset,A.byteLength);case $4.arrayBuffer:case $4.blob:return new Uint8Array(A)}}OTQ.exports={SendQueue:jTQ}});var yTQ=R((GaY,vTQ)=>{var{isArrayBuffer:cf0}=u("node:util/types"),{webidl:$Q}=HJ(),{URLSerializer:lf0}=l8(),{environmentSettingsObject:TTQ}=z9(),{staticPropertyDescriptors:VF,states:uG,sentCloseFrameState:bo,sendHints:Sk,opcodes:mo}=KF(),{isConnecting:pf0,isEstablished:STQ,isClosing:kTQ,isClosed:if0,isValidSubprotocol:nf0,fireEvent:kk,utf8Decode:sf0,toArrayBuffer:rf0,getURLRecord:af0}=Z4(),{establishWebSocketConnection:of0,closeWebSocketConnection:tf0,failWebsocketConnection:_TQ}=Ok(),{ByteParser:ef0}=xo(),{kEnumerableProperty:EC}=lQ(),{getGlobalDispatcher:Ab0}=Ak(),{ErrorEvent:Qb0,CloseEvent:Bb0,createFastMessageEvent:Yb0}=Rk(),{SendQueue:Jb0}=PTQ(),{WebsocketFrameSend:Cb0}=wV(),{channels:xX}=f$();class _B extends EventTarget{#A={open:null,error:null,close:null,message:null};#Q=0;#B="";#Y="";#J;#C={onConnectionEstablished:(A,Q)=>this.#Z(A,Q),onMessage:(A,Q)=>this.#U(A,Q),onParserError:(A)=>_TQ(this.#C,null,A.message),onParserDrain:()=>this.#F(),onSocketData:(A)=>{if(!this.#G.write(A))this.#C.socket.pause()},onSocketError:(A)=>{if(this.#C.readyState=uG.CLOSING,xX.socketError.hasSubscribers)xX.socketError.publish(A);this.#C.socket.destroy()},onSocketClose:()=>this.#E(),onPing:(A)=>{if(xX.ping.hasSubscribers)xX.ping.publish({payload:A,websocket:this})},onPong:(A)=>{if(xX.pong.hasSubscribers)xX.pong.publish({payload:A,websocket:this})},readyState:uG.CONNECTING,socket:null,closeState:new Set,controller:null,wasEverConnected:!1};#W;#X;#G;constructor(A,Q=[]){super();$Q.util.markAsUncloneable(this);let B="WebSocket constructor";$Q.argumentLengthCheck(arguments,1,B);let Y=$Q.converters["DOMString or sequence or WebSocketInit"](Q,B,"options");A=$Q.converters.USVString(A),Q=Y.protocols;let J=TTQ.settingsObject.baseUrl,C=af0(A,J);if(typeof Q==="string")Q=[Q];if(Q.length!==new Set(Q.map((G)=>G.toLowerCase())).size)throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");if(Q.length>0&&!Q.every((G)=>nf0(G)))throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");this.#W=new URL(C.href);let X=TTQ.settingsObject;this.#C.controller=of0(C,Q,X,this.#C,Y),this.#C.readyState=_B.CONNECTING,this.#X="blob"}close(A=void 0,Q=void 0){$Q.brandCheck(this,_B);let B="WebSocket.close";if(A!==void 0)A=$Q.converters["unsigned short"](A,B,"code",$Q.attributes.Clamp);if(Q!==void 0)Q=$Q.converters.USVString(Q);A??=null,Q??="",tf0(this.#C,A,Q,!0)}send(A){$Q.brandCheck(this,_B);let Q="WebSocket.send";if($Q.argumentLengthCheck(arguments,1,Q),A=$Q.converters.WebSocketSendData(A,Q,"data"),pf0(this.#C.readyState))throw new DOMException("Sent before connected.","InvalidStateError");if(!STQ(this.#C.readyState)||kTQ(this.#C.readyState))return;if(typeof A==="string"){let B=Buffer.from(A);this.#Q+=B.byteLength,this.#J.add(B,()=>{this.#Q-=B.byteLength},Sk.text)}else if(cf0(A))this.#Q+=A.byteLength,this.#J.add(A,()=>{this.#Q-=A.byteLength},Sk.arrayBuffer);else if(ArrayBuffer.isView(A))this.#Q+=A.byteLength,this.#J.add(A,()=>{this.#Q-=A.byteLength},Sk.typedArray);else if($Q.is.Blob(A))this.#Q+=A.size,this.#J.add(A,()=>{this.#Q-=A.size},Sk.blob)}get readyState(){return $Q.brandCheck(this,_B),this.#C.readyState}get bufferedAmount(){return $Q.brandCheck(this,_B),this.#Q}get url(){return $Q.brandCheck(this,_B),lf0(this.#W)}get extensions(){return $Q.brandCheck(this,_B),this.#Y}get protocol(){return $Q.brandCheck(this,_B),this.#B}get onopen(){return $Q.brandCheck(this,_B),this.#A.open}set onopen(A){if($Q.brandCheck(this,_B),this.#A.open)this.removeEventListener("open",this.#A.open);let Q=$Q.converters.EventHandlerNonNull(A);if(Q!==null)this.addEventListener("open",Q),this.#A.open=A;else this.#A.open=null}get onerror(){return $Q.brandCheck(this,_B),this.#A.error}set onerror(A){if($Q.brandCheck(this,_B),this.#A.error)this.removeEventListener("error",this.#A.error);let Q=$Q.converters.EventHandlerNonNull(A);if(Q!==null)this.addEventListener("error",Q),this.#A.error=A;else this.#A.error=null}get onclose(){return $Q.brandCheck(this,_B),this.#A.close}set onclose(A){if($Q.brandCheck(this,_B),this.#A.close)this.removeEventListener("close",this.#A.close);let Q=$Q.converters.EventHandlerNonNull(A);if(Q!==null)this.addEventListener("close",Q),this.#A.close=A;else this.#A.close=null}get onmessage(){return $Q.brandCheck(this,_B),this.#A.message}set onmessage(A){if($Q.brandCheck(this,_B),this.#A.message)this.removeEventListener("message",this.#A.message);let Q=$Q.converters.EventHandlerNonNull(A);if(Q!==null)this.addEventListener("message",Q),this.#A.message=A;else this.#A.message=null}get binaryType(){return $Q.brandCheck(this,_B),this.#X}set binaryType(A){if($Q.brandCheck(this,_B),A!=="blob"&&A!=="arraybuffer")this.#X="blob";else this.#X=A}#Z(A,Q){this.#C.socket=A.socket;let B=new ef0(this.#C,Q);B.on("drain",()=>this.#C.onParserDrain()),B.on("error",(C)=>this.#C.onParserError(C)),this.#G=B,this.#J=new Jb0(A.socket),this.#C.readyState=uG.OPEN;let Y=A.headersList.get("sec-websocket-extensions");if(Y!==null)this.#Y=Y;let J=A.headersList.get("sec-websocket-protocol");if(J!==null)this.#B=J;if(kk("open",this),xX.open.hasSubscribers){let C=A.headersList.entries;xX.open.publish({address:A.socket.address(),protocol:this.#B,extensions:this.#Y,websocket:this,handshakeResponse:{status:A.status,statusText:A.statusText,headers:C}})}}#U(A,Q){if(this.#C.readyState!==uG.OPEN)return;let B;if(A===mo.TEXT)try{B=sf0(Q)}catch{_TQ(this.#C,1007,"Received invalid UTF-8 in text frame.");return}else if(A===mo.BINARY)if(this.#X==="blob")B=new Blob([Q]);else B=rf0(Q);kk("message",this,Yb0,{origin:this.#W.origin,data:B})}#F(){this.#C.socket.resume()}#E(){let A=this.#C.closeState.has(bo.SENT)&&this.#C.closeState.has(bo.RECEIVED),Q=1005,B="",Y=this.#G?.closingInfo;if(Y&&!Y.error)Q=Y.code??1005,B=Y.reason;if(this.#C.readyState=uG.CLOSED,!this.#C.closeState.has(bo.RECEIVED))Q=1006,kk("error",this,(J,C)=>new Qb0(J,C),{error:TypeError(B)});if(kk("close",this,(J,C)=>new Bb0(J,C),{wasClean:A,code:Q,reason:B}),xX.close.hasSubscribers)xX.close.publish({websocket:this,code:Q,reason:B})}static ping(A,Q){if(Buffer.isBuffer(Q)){if(Q.length>125)throw TypeError("A PING frame cannot have a body larger than 125 bytes.")}else if(Q!==void 0)throw TypeError("Expected buffer payload");let B=A.#C.readyState;if(STQ(B)&&!kTQ(B)&&!if0(B)){let Y=new Cb0(Q);A.#C.socket.write(Y.createFrame(mo.PING))}}}var{ping:Xb0}=_B;Reflect.deleteProperty(_B,"ping");_B.CONNECTING=_B.prototype.CONNECTING=uG.CONNECTING;_B.OPEN=_B.prototype.OPEN=uG.OPEN;_B.CLOSING=_B.prototype.CLOSING=uG.CLOSING;_B.CLOSED=_B.prototype.CLOSED=uG.CLOSED;Object.defineProperties(_B.prototype,{CONNECTING:VF,OPEN:VF,CLOSING:VF,CLOSED:VF,url:EC,readyState:EC,bufferedAmount:EC,onopen:EC,onerror:EC,onclose:EC,close:EC,onmessage:EC,binaryType:EC,send:EC,extensions:EC,protocol:EC,[Symbol.toStringTag]:{value:"WebSocket",writable:!1,enumerable:!1,configurable:!0}});Object.defineProperties(_B,{CONNECTING:VF,OPEN:VF,CLOSING:VF,CLOSED:VF});$Q.converters["sequence"]=$Q.sequenceConverter($Q.converters.DOMString);$Q.converters["DOMString or sequence"]=function(A,Q,B){if($Q.util.Type(A)===$Q.util.Types.OBJECT&&Symbol.iterator in A)return $Q.converters["sequence"](A);return $Q.converters.DOMString(A,Q,B)};$Q.converters.WebSocketInit=$Q.dictionaryConverter([{key:"protocols",converter:$Q.converters["DOMString or sequence"],defaultValue:()=>[]},{key:"dispatcher",converter:$Q.converters.any,defaultValue:()=>Ab0()},{key:"headers",converter:$Q.nullableConverter($Q.converters.HeadersInit)}]);$Q.converters["DOMString or sequence or WebSocketInit"]=function(A){if($Q.util.Type(A)===$Q.util.Types.OBJECT&&!(Symbol.iterator in A))return $Q.converters.WebSocketInit(A);return{protocols:$Q.converters["DOMString or sequence"](A)}};$Q.converters.WebSocketSendData=function(A){if($Q.util.Type(A)===$Q.util.Types.OBJECT){if($Q.is.Blob(A))return A;if($Q.is.BufferSource(A))return A}return $Q.converters.USVString(A)};vTQ.exports={WebSocket:_B,ping:Xb0}});var uo=R((WaY,xTQ)=>{var{webidl:_k}=HJ(),{validateCloseCodeAndReason:Gb0}=Z4(),{kConstruct:gTQ}=B0(),{kEnumerableProperty:hTQ}=lQ();function Wb0(){class A extends DOMException{get reason(){return""}}if(new A().reason!==void 0)return DOMException;return new Proxy(DOMException,{construct(Q,B,Y){let J=Reflect.construct(Q,B,Q);return Object.setPrototypeOf(J,Y.prototype),J}})}class U4 extends Wb0(){#A;#Q;constructor(A="",Q=void 0){A=_k.converters.DOMString(A,"WebSocketError","message");super(A,"WebSocketError");if(Q===gTQ)return;else if(Q!==null)Q=_k.converters.WebSocketCloseInfo(Q);let B=Q.closeCode??null,Y=Q.reason??"";if(Gb0(B,Y),Y.length!==0&&B===null)B=1000;this.#A=B,this.#Q=Y}get closeCode(){return this.#A}get reason(){return this.#Q}static createUnvalidatedWebSocketError(A,Q,B){let Y=new U4(A,gTQ);return Y.#A=Q,Y.#Q=B,Y}}var{createUnvalidatedWebSocketError:Fb0}=U4;delete U4.createUnvalidatedWebSocketError;Object.defineProperties(U4.prototype,{closeCode:hTQ,reason:hTQ,[Symbol.toStringTag]:{value:"WebSocketError",writable:!1,enumerable:!1,configurable:!0}});_k.is.WebSocketError=_k.util.MakeTypeAssertion(U4);xTQ.exports={WebSocketError:U4,createUnvalidatedWebSocketError:Fb0}});var dTQ=R((FaY,uTQ)=>{var{createDeferredPromise:co}=Nq(),{environmentSettingsObject:fTQ}=z9(),{states:OV,opcodes:vk,sentCloseFrameState:PV}=KF(),{webidl:e0}=HJ(),{getURLRecord:Zb0,isValidSubprotocol:$b0,isEstablished:Ub0,utf8Decode:Eb0}=Z4(),{establishWebSocketConnection:Kb0,failWebsocketConnection:lo,closeWebSocketConnection:po}=Ok(),{channels:bTQ}=f$(),{WebsocketFrameSend:Vb0}=wV(),{ByteParser:Ib0}=xo(),{WebSocketError:Hb0,createUnvalidatedWebSocketError:Db0}=uo(),{utf8DecodeBytes:Nb0}=z9(),{kEnumerableProperty:yk}=lQ(),mTQ=!1;class io{#A;#Q;#B;#Y;#J;#C;#W=!1;#X={onConnectionEstablished:(A,Q)=>this.#U(A,Q),onMessage:(A,Q)=>this.#F(A,Q),onParserError:(A)=>lo(this.#X,null,A.message),onParserDrain:()=>this.#X.socket.resume(),onSocketData:(A)=>{if(!this.#G.write(A))this.#X.socket.pause()},onSocketError:(A)=>{if(this.#X.readyState=OV.CLOSING,bTQ.socketError.hasSubscribers)bTQ.socketError.publish(A);this.#X.socket.destroy()},onSocketClose:()=>this.#E(),onPing:()=>{},onPong:()=>{},readyState:OV.CONNECTING,socket:null,closeState:new Set,controller:null,wasEverConnected:!1};#G;constructor(A,Q=void 0){if(!mTQ)process.emitWarning("WebSocketStream is experimental! Expect it to change at any time.",{code:"UNDICI-WSS"}),mTQ=!0;if(e0.argumentLengthCheck(arguments,1,"WebSocket"),A=e0.converters.USVString(A),Q!==null)Q=e0.converters.WebSocketStreamOptions(Q);let B=fTQ.settingsObject.baseUrl,Y=Zb0(A,B),J=Q.protocols;if(J.length!==new Set(J.map((X)=>X.toLowerCase())).size)throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");if(J.length>0&&!J.every((X)=>$b0(X)))throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");if(this.#A=Y.toString(),this.#Q=co(),this.#B=co(),Q.signal!=null){let X=Q.signal;if(X.aborted){this.#Q.reject(X.reason),this.#B.reject(X.reason);return}X.addEventListener("abort",()=>{if(!Ub0(this.#X.readyState))lo(this.#X),this.#X.readyState=OV.CLOSING,this.#Q.reject(X.reason),this.#B.reject(X.reason),this.#W=!0},{once:!0})}let C=fTQ.settingsObject;this.#X.controller=Kb0(Y,J,C,this.#X,Q)}get url(){return this.#A.toString()}get opened(){return this.#Q.promise}get closed(){return this.#B.promise}close(A=void 0){if(A!==null)A=e0.converters.WebSocketCloseInfo(A);let Q=A.closeCode??null,B=A.reason;po(this.#X,Q,B,!0)}#Z(A){A=e0.converters.WebSocketStreamWrite(A);let Q=co(),B=null,Y=null;if(e0.is.BufferSource(A))B=new Uint8Array(ArrayBuffer.isView(A)?new Uint8Array(A.buffer,A.byteOffset,A.byteLength):A.slice()),Y=vk.BINARY;else{let J;try{J=e0.converters.DOMString(A)}catch(C){return Q.reject(C),Q.promise}B=new TextEncoder().encode(J),Y=vk.TEXT}if(!this.#X.closeState.has(PV.SENT)&&!this.#X.closeState.has(PV.RECEIVED)){let J=new Vb0(B);this.#X.socket.write(J.createFrame(Y),()=>{Q.resolve(void 0)})}return Q.promise}#U(A,Q){this.#X.socket=A.socket;let B=new Ib0(this.#X,Q);B.on("drain",()=>this.#X.onParserDrain()),B.on("error",(G)=>this.#X.onParserError(G)),this.#G=B,this.#X.readyState=OV.OPEN;let Y=Q??"",J=A.headersList.get("sec-websocket-protocol")??"",C=new ReadableStream({start:(G)=>{this.#J=G},pull(G){let W;while(G.desiredSize>0&&(W=A.socket.read())!==null)G.enqueue(W)},cancel:(G)=>this.#I(G)}),X=new WritableStream({write:(G)=>this.#Z(G),close:()=>po(this.#X,null,null),abort:(G)=>this.#V(G)});this.#Y=C,this.#C=X,this.#Q.resolve({extensions:Y,protocol:J,readable:C,writable:X})}#F(A,Q){if(this.#X.readyState!==OV.OPEN)return;let B;if(A===vk.TEXT)try{B=Eb0(Q)}catch{lo(this.#X,"Received invalid UTF-8 in text frame.");return}else if(A===vk.BINARY)B=new Uint8Array(Q.buffer,Q.byteOffset,Q.byteLength);this.#J.enqueue(B)}#E(){let A=this.#X.closeState.has(PV.SENT)&&this.#X.closeState.has(PV.RECEIVED);if(this.#X.readyState=OV.CLOSED,this.#W)return;if(!this.#X.wasEverConnected)this.#Q.reject(new Hb0("Socket never opened"));let Q=this.#G.closingInfo,B=Q?.code??1005;if(!this.#X.closeState.has(PV.SENT)&&!this.#X.closeState.has(PV.RECEIVED))B=1006;let Y=Q?.reason==null?"":Nb0(Buffer.from(Q.reason));if(A){if(this.#J.close(),!this.#C.locked)this.#C.abort(new DOMException("A closed WebSocketStream cannot be written to","InvalidStateError"));this.#B.resolve({closeCode:B,reason:Y})}else{let J=Db0("unclean close",B,Y);this.#J.error(J),this.#C.abort(J),this.#B.reject(J)}}#V(A){let Q=null,B="";if(e0.is.WebSocketError(A))Q=A.closeCode,B=A.reason;po(this.#X,Q,B)}#I(A){this.#V(A)}}Object.defineProperties(io.prototype,{url:yk,opened:yk,closed:yk,close:yk,[Symbol.toStringTag]:{value:"WebSocketStream",writable:!1,enumerable:!1,configurable:!0}});e0.converters.WebSocketStreamOptions=e0.dictionaryConverter([{key:"protocols",converter:e0.sequenceConverter(e0.converters.USVString),defaultValue:()=>[]},{key:"signal",converter:e0.nullableConverter(e0.converters.AbortSignal),defaultValue:()=>null}]);e0.converters.WebSocketCloseInfo=e0.dictionaryConverter([{key:"closeCode",converter:(A)=>e0.converters["unsigned short"](A,e0.attributes.EnforceRange)},{key:"reason",converter:e0.converters.USVString,defaultValue:()=>""}]);e0.converters.WebSocketStreamWrite=function(A){if(typeof A==="string")return e0.converters.USVString(A);return e0.converters.BufferSource(A)};uTQ.exports={WebSocketStream:io}});var lTQ=R((ZaY,cTQ)=>{function Lb0(A){return A.indexOf("\x00")===-1}function qb0(A){if(A.length===0)return!1;for(let Q=0;Q57)return!1;return!0}cTQ.exports={isValidLastEventId:Lb0,isASCIINumber:qb0}});var rTQ=R(($aY,sTQ)=>{var{Transform:Mb0}=u("node:stream"),{isASCIINumber:pTQ,isValidLastEventId:iTQ}=lTQ(),dG=[239,187,191];class nTQ extends Mb0{state;checkBOM=!0;crlfCheck=!1;eventEndCheck=!1;buffer=null;pos=0;event={data:void 0,event:void 0,id:void 0,retry:void 0};constructor(A={}){A.readableObjectMode=!0;super(A);if(this.state=A.eventSourceSettings||{},A.push)this.push=A.push}_transform(A,Q,B){if(A.length===0){B();return}if(this.buffer)this.buffer=Buffer.concat([this.buffer,A]);else this.buffer=A;if(this.checkBOM)switch(this.buffer.length){case 1:if(this.buffer[0]===dG[0]){B();return}this.checkBOM=!1,B();return;case 2:if(this.buffer[0]===dG[0]&&this.buffer[1]===dG[1]){B();return}this.checkBOM=!1;break;case 3:if(this.buffer[0]===dG[0]&&this.buffer[1]===dG[1]&&this.buffer[2]===dG[2]){this.buffer=Buffer.alloc(0),this.checkBOM=!1,B();return}this.checkBOM=!1;break;default:if(this.buffer[0]===dG[0]&&this.buffer[1]===dG[1]&&this.buffer[2]===dG[2])this.buffer=this.buffer.subarray(3);this.checkBOM=!1;break}while(this.pos0)Q[Y]=J;break}}processEvent(A){if(A.retry&&pTQ(A.retry))this.state.reconnectionTime=parseInt(A.retry,10);if(A.id!==void 0&&iTQ(A.id))this.state.lastEventId=A.id;if(A.data!==void 0)this.push({type:A.event||"message",options:{data:A.data,lastEventId:this.state.lastEventId,origin:this.state.origin}})}clearEvent(){this.event={data:void 0,event:void 0,id:void 0,retry:void 0}}}sTQ.exports={EventSourceStream:nTQ}});var YSQ=R((UaY,BSQ)=>{var{pipeline:zb0}=u("node:stream"),{fetching:Rb0}=QM(),{makeRequest:wb0}=NV(),{webidl:w9}=HJ(),{EventSourceStream:jb0}=rTQ(),{parseMIMEType:Ob0}=l8(),{createFastMessageEvent:Pb0}=Rk(),{isNetworkError:aTQ}=eq(),{kEnumerableProperty:E4}=lQ(),{environmentSettingsObject:oTQ}=z9(),tTQ=!1,eTQ=3000,GM=0,ASQ=1,WM=2,Tb0="anonymous",Sb0="use-credentials";class TV extends EventTarget{#A={open:null,error:null,message:null};#Q;#B=!1;#Y=GM;#J=null;#C=null;#W;#X;constructor(A,Q={}){super();w9.util.markAsUncloneable(this);let B="EventSource constructor";if(w9.argumentLengthCheck(arguments,1,B),!tTQ)tTQ=!0,process.emitWarning("EventSource is experimental, expect them to change at any time.",{code:"UNDICI-ES"});A=w9.converters.USVString(A),Q=w9.converters.EventSourceInitDict(Q,B,"eventSourceInitDict"),this.#W=Q.node.dispatcher||Q.dispatcher,this.#X={lastEventId:"",reconnectionTime:Q.node.reconnectionTime};let Y=oTQ,J;try{J=new URL(A,Y.settingsObject.baseUrl),this.#X.origin=J.origin}catch(G){throw new DOMException(G,"SyntaxError")}this.#Q=J.href;let C=Tb0;if(Q.withCredentials===!0)C=Sb0,this.#B=!0;let X={redirect:"follow",keepalive:!0,mode:"cors",credentials:C==="anonymous"?"same-origin":"omit",referrer:"no-referrer"};X.client=oTQ.settingsObject,X.headersList=[["accept",{name:"accept",value:"text/event-stream"}]],X.cache="no-store",X.initiator="other",X.urlList=[new URL(this.#Q)],this.#J=wb0(X),this.#G()}get readyState(){return this.#Y}get url(){return this.#Q}get withCredentials(){return this.#B}#G(){if(this.#Y===WM)return;this.#Y=GM;let A={request:this.#J,dispatcher:this.#W},Q=(B)=>{if(!aTQ(B))return this.#Z()};A.processResponseEndOfBody=Q,A.processResponse=(B)=>{if(aTQ(B))if(B.aborted){this.close(),this.dispatchEvent(new Event("error"));return}else{this.#Z();return}let Y=B.headersList.get("content-type",!0),J=Y!==null?Ob0(Y):"failure",C=J!=="failure"&&J.essence==="text/event-stream";if(B.status!==200||C===!1){this.close(),this.dispatchEvent(new Event("error"));return}this.#Y=ASQ,this.dispatchEvent(new Event("open")),this.#X.origin=B.urlList[B.urlList.length-1].origin;let X=new jb0({eventSourceSettings:this.#X,push:(G)=>{this.dispatchEvent(Pb0(G.type,G.options))}});zb0(B.body.stream,X,(G)=>{if(G?.aborted===!1)this.close(),this.dispatchEvent(new Event("error"))})},this.#C=Rb0(A)}#Z(){if(this.#Y===WM)return;this.#Y=GM,this.dispatchEvent(new Event("error")),setTimeout(()=>{if(this.#Y!==GM)return;if(this.#X.lastEventId.length)this.#J.headersList.set("last-event-id",this.#X.lastEventId,!0);this.#G()},this.#X.reconnectionTime)?.unref()}close(){if(w9.brandCheck(this,TV),this.#Y===WM)return;this.#Y=WM,this.#C.abort(),this.#J=null}get onopen(){return this.#A.open}set onopen(A){if(this.#A.open)this.removeEventListener("open",this.#A.open);let Q=w9.converters.EventHandlerNonNull(A);if(Q!==null)this.addEventListener("open",Q),this.#A.open=A;else this.#A.open=null}get onmessage(){return this.#A.message}set onmessage(A){if(this.#A.message)this.removeEventListener("message",this.#A.message);let Q=w9.converters.EventHandlerNonNull(A);if(Q!==null)this.addEventListener("message",Q),this.#A.message=A;else this.#A.message=null}get onerror(){return this.#A.error}set onerror(A){if(this.#A.error)this.removeEventListener("error",this.#A.error);let Q=w9.converters.EventHandlerNonNull(A);if(Q!==null)this.addEventListener("error",Q),this.#A.error=A;else this.#A.error=null}}var QSQ={CONNECTING:{__proto__:null,configurable:!1,enumerable:!0,value:GM,writable:!1},OPEN:{__proto__:null,configurable:!1,enumerable:!0,value:ASQ,writable:!1},CLOSED:{__proto__:null,configurable:!1,enumerable:!0,value:WM,writable:!1}};Object.defineProperties(TV,QSQ);Object.defineProperties(TV.prototype,QSQ);Object.defineProperties(TV.prototype,{close:E4,onerror:E4,onmessage:E4,onopen:E4,readyState:E4,url:E4,withCredentials:E4});w9.converters.EventSourceInitDict=w9.dictionaryConverter([{key:"withCredentials",converter:w9.converters.boolean,defaultValue:()=>!1},{key:"dispatcher",converter:w9.converters.any},{key:"node",converter:w9.dictionaryConverter([{key:"reconnectionTime",converter:w9.converters["unsigned long"],defaultValue:()=>eTQ},{key:"dispatcher",converter:w9.converters.any}]),defaultValue:()=>({})}]);BSQ.exports={EventSource:TV,defaultReconnectionTime:eTQ}});var M1=R((jSQ)=>{Object.defineProperty(jSQ,"__esModule",{value:!0});jSQ.setMatrixArrayType=Ju0;jSQ.toRadian=Xu0;jSQ.equals=Gu0;jSQ.RANDOM=jSQ.ARRAY_TYPE=jSQ.EPSILON=void 0;var RSQ=0.000001;jSQ.EPSILON=RSQ;var wSQ=typeof Float32Array<"u"?Float32Array:Array;jSQ.ARRAY_TYPE=wSQ;var Yu0=Math.random;jSQ.RANDOM=Yu0;function Ju0(A){jSQ.ARRAY_TYPE=wSQ=A}var Cu0=Math.PI/180;function Xu0(A){return A*Cu0}function Gu0(A,Q){return Math.abs(A-Q)<=RSQ*Math.max(1,Math.abs(A),Math.abs(Q))}if(!Math.hypot)Math.hypot=function(){var A=0,Q=arguments.length;while(Q--)A+=arguments[Q]*arguments[Q];return Math.sqrt(A)}});var ySQ=R((_SQ)=>{function sk(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")sk=function(B){return typeof B};else sk=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return sk(A)}Object.defineProperty(_SQ,"__esModule",{value:!0});_SQ.create=Eu0;_SQ.clone=Ku0;_SQ.copy=Vu0;_SQ.identity=Iu0;_SQ.fromValues=Hu0;_SQ.set=Du0;_SQ.transpose=Nu0;_SQ.invert=Lu0;_SQ.adjoint=qu0;_SQ.determinant=Mu0;_SQ.multiply=SSQ;_SQ.rotate=zu0;_SQ.scale=Ru0;_SQ.fromRotation=wu0;_SQ.fromScaling=ju0;_SQ.str=Ou0;_SQ.frob=Pu0;_SQ.LDU=Tu0;_SQ.add=Su0;_SQ.subtract=kSQ;_SQ.exactEquals=ku0;_SQ.equals=_u0;_SQ.multiplyScalar=vu0;_SQ.multiplyScalarAndAdd=yu0;_SQ.sub=_SQ.mul=void 0;var DF=Uu0(M1());function TSQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(TSQ=function(J){return J?B:Q})(A)}function Uu0(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||sk(A)!=="object"&&typeof A!=="function")return{default:A};var B=TSQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function Eu0(){var A=new DF.ARRAY_TYPE(4);if(DF.ARRAY_TYPE!=Float32Array)A[1]=0,A[2]=0;return A[0]=1,A[3]=1,A}function Ku0(A){var Q=new DF.ARRAY_TYPE(4);return Q[0]=A[0],Q[1]=A[1],Q[2]=A[2],Q[3]=A[3],Q}function Vu0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A[3]=Q[3],A}function Iu0(A){return A[0]=1,A[1]=0,A[2]=0,A[3]=1,A}function Hu0(A,Q,B,Y){var J=new DF.ARRAY_TYPE(4);return J[0]=A,J[1]=Q,J[2]=B,J[3]=Y,J}function Du0(A,Q,B,Y,J){return A[0]=Q,A[1]=B,A[2]=Y,A[3]=J,A}function Nu0(A,Q){if(A===Q){var B=Q[1];A[1]=Q[2],A[2]=B}else A[0]=Q[0],A[1]=Q[2],A[2]=Q[1],A[3]=Q[3];return A}function Lu0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=B*C-J*Y;if(!X)return null;return X=1/X,A[0]=C*X,A[1]=-Y*X,A[2]=-J*X,A[3]=B*X,A}function qu0(A,Q){var B=Q[0];return A[0]=Q[3],A[1]=-Q[1],A[2]=-Q[2],A[3]=B,A}function Mu0(A){return A[0]*A[3]-A[2]*A[1]}function SSQ(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=B[0],W=B[1],F=B[2],Z=B[3];return A[0]=Y*G+C*W,A[1]=J*G+X*W,A[2]=Y*F+C*Z,A[3]=J*F+X*Z,A}function zu0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Math.sin(B),W=Math.cos(B);return A[0]=Y*W+C*G,A[1]=J*W+X*G,A[2]=Y*-G+C*W,A[3]=J*-G+X*W,A}function Ru0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=B[0],W=B[1];return A[0]=Y*G,A[1]=J*G,A[2]=C*W,A[3]=X*W,A}function wu0(A,Q){var B=Math.sin(Q),Y=Math.cos(Q);return A[0]=Y,A[1]=B,A[2]=-B,A[3]=Y,A}function ju0(A,Q){return A[0]=Q[0],A[1]=0,A[2]=0,A[3]=Q[1],A}function Ou0(A){return"mat2("+A[0]+", "+A[1]+", "+A[2]+", "+A[3]+")"}function Pu0(A){return Math.hypot(A[0],A[1],A[2],A[3])}function Tu0(A,Q,B,Y){return A[2]=Y[2]/Y[0],B[0]=Y[0],B[1]=Y[1],B[3]=Y[3]-A[2]*B[1],[A,Q,B]}function Su0(A,Q,B){return A[0]=Q[0]+B[0],A[1]=Q[1]+B[1],A[2]=Q[2]+B[2],A[3]=Q[3]+B[3],A}function kSQ(A,Q,B){return A[0]=Q[0]-B[0],A[1]=Q[1]-B[1],A[2]=Q[2]-B[2],A[3]=Q[3]-B[3],A}function ku0(A,Q){return A[0]===Q[0]&&A[1]===Q[1]&&A[2]===Q[2]&&A[3]===Q[3]}function _u0(A,Q){var B=A[0],Y=A[1],J=A[2],C=A[3],X=Q[0],G=Q[1],W=Q[2],F=Q[3];return Math.abs(B-X)<=DF.EPSILON*Math.max(1,Math.abs(B),Math.abs(X))&&Math.abs(Y-G)<=DF.EPSILON*Math.max(1,Math.abs(Y),Math.abs(G))&&Math.abs(J-W)<=DF.EPSILON*Math.max(1,Math.abs(J),Math.abs(W))&&Math.abs(C-F)<=DF.EPSILON*Math.max(1,Math.abs(C),Math.abs(F))}function vu0(A,Q,B){return A[0]=Q[0]*B,A[1]=Q[1]*B,A[2]=Q[2]*B,A[3]=Q[3]*B,A}function yu0(A,Q,B,Y){return A[0]=Q[0]+B[0]*Y,A[1]=Q[1]+B[1]*Y,A[2]=Q[2]+B[2]*Y,A[3]=Q[3]+B[3]*Y,A}var gu0=SSQ;_SQ.mul=gu0;var hu0=kSQ;_SQ.sub=hu0});var mSQ=R((fSQ)=>{function rk(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")rk=function(B){return typeof B};else rk=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return rk(A)}Object.defineProperty(fSQ,"__esModule",{value:!0});fSQ.create=Fd0;fSQ.clone=Zd0;fSQ.copy=$d0;fSQ.identity=Ud0;fSQ.fromValues=Ed0;fSQ.set=Kd0;fSQ.invert=Vd0;fSQ.determinant=Id0;fSQ.multiply=hSQ;fSQ.rotate=Hd0;fSQ.scale=Dd0;fSQ.translate=Nd0;fSQ.fromRotation=Ld0;fSQ.fromScaling=qd0;fSQ.fromTranslation=Md0;fSQ.str=zd0;fSQ.frob=Rd0;fSQ.add=wd0;fSQ.subtract=xSQ;fSQ.multiplyScalar=jd0;fSQ.multiplyScalarAndAdd=Od0;fSQ.exactEquals=Pd0;fSQ.equals=Td0;fSQ.sub=fSQ.mul=void 0;var fX=Wd0(M1());function gSQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(gSQ=function(J){return J?B:Q})(A)}function Wd0(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||rk(A)!=="object"&&typeof A!=="function")return{default:A};var B=gSQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function Fd0(){var A=new fX.ARRAY_TYPE(6);if(fX.ARRAY_TYPE!=Float32Array)A[1]=0,A[2]=0,A[4]=0,A[5]=0;return A[0]=1,A[3]=1,A}function Zd0(A){var Q=new fX.ARRAY_TYPE(6);return Q[0]=A[0],Q[1]=A[1],Q[2]=A[2],Q[3]=A[3],Q[4]=A[4],Q[5]=A[5],Q}function $d0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A[3]=Q[3],A[4]=Q[4],A[5]=Q[5],A}function Ud0(A){return A[0]=1,A[1]=0,A[2]=0,A[3]=1,A[4]=0,A[5]=0,A}function Ed0(A,Q,B,Y,J,C){var X=new fX.ARRAY_TYPE(6);return X[0]=A,X[1]=Q,X[2]=B,X[3]=Y,X[4]=J,X[5]=C,X}function Kd0(A,Q,B,Y,J,C,X){return A[0]=Q,A[1]=B,A[2]=Y,A[3]=J,A[4]=C,A[5]=X,A}function Vd0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Q[4],G=Q[5],W=B*C-Y*J;if(!W)return null;return W=1/W,A[0]=C*W,A[1]=-Y*W,A[2]=-J*W,A[3]=B*W,A[4]=(J*G-C*X)*W,A[5]=(Y*X-B*G)*W,A}function Id0(A){return A[0]*A[3]-A[1]*A[2]}function hSQ(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],W=Q[5],F=B[0],Z=B[1],U=B[2],$=B[3],E=B[4],K=B[5];return A[0]=Y*F+C*Z,A[1]=J*F+X*Z,A[2]=Y*U+C*$,A[3]=J*U+X*$,A[4]=Y*E+C*K+G,A[5]=J*E+X*K+W,A}function Hd0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],W=Q[5],F=Math.sin(B),Z=Math.cos(B);return A[0]=Y*Z+C*F,A[1]=J*Z+X*F,A[2]=Y*-F+C*Z,A[3]=J*-F+X*Z,A[4]=G,A[5]=W,A}function Dd0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],W=Q[5],F=B[0],Z=B[1];return A[0]=Y*F,A[1]=J*F,A[2]=C*Z,A[3]=X*Z,A[4]=G,A[5]=W,A}function Nd0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],W=Q[5],F=B[0],Z=B[1];return A[0]=Y,A[1]=J,A[2]=C,A[3]=X,A[4]=Y*F+C*Z+G,A[5]=J*F+X*Z+W,A}function Ld0(A,Q){var B=Math.sin(Q),Y=Math.cos(Q);return A[0]=Y,A[1]=B,A[2]=-B,A[3]=Y,A[4]=0,A[5]=0,A}function qd0(A,Q){return A[0]=Q[0],A[1]=0,A[2]=0,A[3]=Q[1],A[4]=0,A[5]=0,A}function Md0(A,Q){return A[0]=1,A[1]=0,A[2]=0,A[3]=1,A[4]=Q[0],A[5]=Q[1],A}function zd0(A){return"mat2d("+A[0]+", "+A[1]+", "+A[2]+", "+A[3]+", "+A[4]+", "+A[5]+")"}function Rd0(A){return Math.hypot(A[0],A[1],A[2],A[3],A[4],A[5],1)}function wd0(A,Q,B){return A[0]=Q[0]+B[0],A[1]=Q[1]+B[1],A[2]=Q[2]+B[2],A[3]=Q[3]+B[3],A[4]=Q[4]+B[4],A[5]=Q[5]+B[5],A}function xSQ(A,Q,B){return A[0]=Q[0]-B[0],A[1]=Q[1]-B[1],A[2]=Q[2]-B[2],A[3]=Q[3]-B[3],A[4]=Q[4]-B[4],A[5]=Q[5]-B[5],A}function jd0(A,Q,B){return A[0]=Q[0]*B,A[1]=Q[1]*B,A[2]=Q[2]*B,A[3]=Q[3]*B,A[4]=Q[4]*B,A[5]=Q[5]*B,A}function Od0(A,Q,B,Y){return A[0]=Q[0]+B[0]*Y,A[1]=Q[1]+B[1]*Y,A[2]=Q[2]+B[2]*Y,A[3]=Q[3]+B[3]*Y,A[4]=Q[4]+B[4]*Y,A[5]=Q[5]+B[5]*Y,A}function Pd0(A,Q){return A[0]===Q[0]&&A[1]===Q[1]&&A[2]===Q[2]&&A[3]===Q[3]&&A[4]===Q[4]&&A[5]===Q[5]}function Td0(A,Q){var B=A[0],Y=A[1],J=A[2],C=A[3],X=A[4],G=A[5],W=Q[0],F=Q[1],Z=Q[2],U=Q[3],$=Q[4],E=Q[5];return Math.abs(B-W)<=fX.EPSILON*Math.max(1,Math.abs(B),Math.abs(W))&&Math.abs(Y-F)<=fX.EPSILON*Math.max(1,Math.abs(Y),Math.abs(F))&&Math.abs(J-Z)<=fX.EPSILON*Math.max(1,Math.abs(J),Math.abs(Z))&&Math.abs(C-U)<=fX.EPSILON*Math.max(1,Math.abs(C),Math.abs(U))&&Math.abs(X-$)<=fX.EPSILON*Math.max(1,Math.abs(X),Math.abs($))&&Math.abs(G-E)<=fX.EPSILON*Math.max(1,Math.abs(G),Math.abs(E))}var Sd0=hSQ;fSQ.mul=Sd0;var kd0=xSQ;fSQ.sub=kd0});var Nt=R((lSQ)=>{function ak(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")ak=function(B){return typeof B};else ak=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return ak(A)}Object.defineProperty(lSQ,"__esModule",{value:!0});lSQ.create=Yc0;lSQ.fromMat4=Jc0;lSQ.clone=Cc0;lSQ.copy=Xc0;lSQ.fromValues=Gc0;lSQ.set=Wc0;lSQ.identity=Fc0;lSQ.transpose=Zc0;lSQ.invert=$c0;lSQ.adjoint=Uc0;lSQ.determinant=Ec0;lSQ.multiply=dSQ;lSQ.translate=Kc0;lSQ.rotate=Vc0;lSQ.scale=Ic0;lSQ.fromTranslation=Hc0;lSQ.fromRotation=Dc0;lSQ.fromScaling=Nc0;lSQ.fromMat2d=Lc0;lSQ.fromQuat=qc0;lSQ.normalFromMat4=Mc0;lSQ.projection=zc0;lSQ.str=Rc0;lSQ.frob=wc0;lSQ.add=jc0;lSQ.subtract=cSQ;lSQ.multiplyScalar=Oc0;lSQ.multiplyScalarAndAdd=Pc0;lSQ.exactEquals=Tc0;lSQ.equals=Sc0;lSQ.sub=lSQ.mul=void 0;var t8=Bc0(M1());function uSQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(uSQ=function(J){return J?B:Q})(A)}function Bc0(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||ak(A)!=="object"&&typeof A!=="function")return{default:A};var B=uSQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function Yc0(){var A=new t8.ARRAY_TYPE(9);if(t8.ARRAY_TYPE!=Float32Array)A[1]=0,A[2]=0,A[3]=0,A[5]=0,A[6]=0,A[7]=0;return A[0]=1,A[4]=1,A[8]=1,A}function Jc0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A[3]=Q[4],A[4]=Q[5],A[5]=Q[6],A[6]=Q[8],A[7]=Q[9],A[8]=Q[10],A}function Cc0(A){var Q=new t8.ARRAY_TYPE(9);return Q[0]=A[0],Q[1]=A[1],Q[2]=A[2],Q[3]=A[3],Q[4]=A[4],Q[5]=A[5],Q[6]=A[6],Q[7]=A[7],Q[8]=A[8],Q}function Xc0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A[3]=Q[3],A[4]=Q[4],A[5]=Q[5],A[6]=Q[6],A[7]=Q[7],A[8]=Q[8],A}function Gc0(A,Q,B,Y,J,C,X,G,W){var F=new t8.ARRAY_TYPE(9);return F[0]=A,F[1]=Q,F[2]=B,F[3]=Y,F[4]=J,F[5]=C,F[6]=X,F[7]=G,F[8]=W,F}function Wc0(A,Q,B,Y,J,C,X,G,W,F){return A[0]=Q,A[1]=B,A[2]=Y,A[3]=J,A[4]=C,A[5]=X,A[6]=G,A[7]=W,A[8]=F,A}function Fc0(A){return A[0]=1,A[1]=0,A[2]=0,A[3]=0,A[4]=1,A[5]=0,A[6]=0,A[7]=0,A[8]=1,A}function Zc0(A,Q){if(A===Q){var B=Q[1],Y=Q[2],J=Q[5];A[1]=Q[3],A[2]=Q[6],A[3]=B,A[5]=Q[7],A[6]=Y,A[7]=J}else A[0]=Q[0],A[1]=Q[3],A[2]=Q[6],A[3]=Q[1],A[4]=Q[4],A[5]=Q[7],A[6]=Q[2],A[7]=Q[5],A[8]=Q[8];return A}function $c0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Q[4],G=Q[5],W=Q[6],F=Q[7],Z=Q[8],U=Z*X-G*F,$=-Z*C+G*W,E=F*C-X*W,K=B*U+Y*$+J*E;if(!K)return null;return K=1/K,A[0]=U*K,A[1]=(-Z*Y+J*F)*K,A[2]=(G*Y-J*X)*K,A[3]=$*K,A[4]=(Z*B-J*W)*K,A[5]=(-G*B+J*C)*K,A[6]=E*K,A[7]=(-F*B+Y*W)*K,A[8]=(X*B-Y*C)*K,A}function Uc0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Q[4],G=Q[5],W=Q[6],F=Q[7],Z=Q[8];return A[0]=X*Z-G*F,A[1]=J*F-Y*Z,A[2]=Y*G-J*X,A[3]=G*W-C*Z,A[4]=B*Z-J*W,A[5]=J*C-B*G,A[6]=C*F-X*W,A[7]=Y*W-B*F,A[8]=B*X-Y*C,A}function Ec0(A){var Q=A[0],B=A[1],Y=A[2],J=A[3],C=A[4],X=A[5],G=A[6],W=A[7],F=A[8];return Q*(F*C-X*W)+B*(-F*J+X*G)+Y*(W*J-C*G)}function dSQ(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],W=Q[5],F=Q[6],Z=Q[7],U=Q[8],$=B[0],E=B[1],K=B[2],I=B[3],V=B[4],H=B[5],D=B[6],L=B[7],z=B[8];return A[0]=$*Y+E*X+K*F,A[1]=$*J+E*G+K*Z,A[2]=$*C+E*W+K*U,A[3]=I*Y+V*X+H*F,A[4]=I*J+V*G+H*Z,A[5]=I*C+V*W+H*U,A[6]=D*Y+L*X+z*F,A[7]=D*J+L*G+z*Z,A[8]=D*C+L*W+z*U,A}function Kc0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],W=Q[5],F=Q[6],Z=Q[7],U=Q[8],$=B[0],E=B[1];return A[0]=Y,A[1]=J,A[2]=C,A[3]=X,A[4]=G,A[5]=W,A[6]=$*Y+E*X+F,A[7]=$*J+E*G+Z,A[8]=$*C+E*W+U,A}function Vc0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],W=Q[5],F=Q[6],Z=Q[7],U=Q[8],$=Math.sin(B),E=Math.cos(B);return A[0]=E*Y+$*X,A[1]=E*J+$*G,A[2]=E*C+$*W,A[3]=E*X-$*Y,A[4]=E*G-$*J,A[5]=E*W-$*C,A[6]=F,A[7]=Z,A[8]=U,A}function Ic0(A,Q,B){var Y=B[0],J=B[1];return A[0]=Y*Q[0],A[1]=Y*Q[1],A[2]=Y*Q[2],A[3]=J*Q[3],A[4]=J*Q[4],A[5]=J*Q[5],A[6]=Q[6],A[7]=Q[7],A[8]=Q[8],A}function Hc0(A,Q){return A[0]=1,A[1]=0,A[2]=0,A[3]=0,A[4]=1,A[5]=0,A[6]=Q[0],A[7]=Q[1],A[8]=1,A}function Dc0(A,Q){var B=Math.sin(Q),Y=Math.cos(Q);return A[0]=Y,A[1]=B,A[2]=0,A[3]=-B,A[4]=Y,A[5]=0,A[6]=0,A[7]=0,A[8]=1,A}function Nc0(A,Q){return A[0]=Q[0],A[1]=0,A[2]=0,A[3]=0,A[4]=Q[1],A[5]=0,A[6]=0,A[7]=0,A[8]=1,A}function Lc0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=0,A[3]=Q[2],A[4]=Q[3],A[5]=0,A[6]=Q[4],A[7]=Q[5],A[8]=1,A}function qc0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=B+B,G=Y+Y,W=J+J,F=B*X,Z=Y*X,U=Y*G,$=J*X,E=J*G,K=J*W,I=C*X,V=C*G,H=C*W;return A[0]=1-U-K,A[3]=Z-H,A[6]=$+V,A[1]=Z+H,A[4]=1-F-K,A[7]=E-I,A[2]=$-V,A[5]=E+I,A[8]=1-F-U,A}function Mc0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Q[4],G=Q[5],W=Q[6],F=Q[7],Z=Q[8],U=Q[9],$=Q[10],E=Q[11],K=Q[12],I=Q[13],V=Q[14],H=Q[15],D=B*G-Y*X,L=B*W-J*X,z=B*F-C*X,M=Y*W-J*G,N=Y*F-C*G,q=J*F-C*W,w=Z*I-U*K,P=Z*V-$*K,_=Z*H-E*K,j=U*V-$*I,k=U*H-E*I,T=$*H-E*V,S=D*T-L*k+z*j+M*_-N*P+q*w;if(!S)return null;return S=1/S,A[0]=(G*T-W*k+F*j)*S,A[1]=(W*_-X*T-F*P)*S,A[2]=(X*k-G*_+F*w)*S,A[3]=(J*k-Y*T-C*j)*S,A[4]=(B*T-J*_+C*P)*S,A[5]=(Y*_-B*k-C*w)*S,A[6]=(I*q-V*N+H*M)*S,A[7]=(V*z-K*q-H*L)*S,A[8]=(K*N-I*z+H*D)*S,A}function zc0(A,Q,B){return A[0]=2/Q,A[1]=0,A[2]=0,A[3]=0,A[4]=-2/B,A[5]=0,A[6]=-1,A[7]=1,A[8]=1,A}function Rc0(A){return"mat3("+A[0]+", "+A[1]+", "+A[2]+", "+A[3]+", "+A[4]+", "+A[5]+", "+A[6]+", "+A[7]+", "+A[8]+")"}function wc0(A){return Math.hypot(A[0],A[1],A[2],A[3],A[4],A[5],A[6],A[7],A[8])}function jc0(A,Q,B){return A[0]=Q[0]+B[0],A[1]=Q[1]+B[1],A[2]=Q[2]+B[2],A[3]=Q[3]+B[3],A[4]=Q[4]+B[4],A[5]=Q[5]+B[5],A[6]=Q[6]+B[6],A[7]=Q[7]+B[7],A[8]=Q[8]+B[8],A}function cSQ(A,Q,B){return A[0]=Q[0]-B[0],A[1]=Q[1]-B[1],A[2]=Q[2]-B[2],A[3]=Q[3]-B[3],A[4]=Q[4]-B[4],A[5]=Q[5]-B[5],A[6]=Q[6]-B[6],A[7]=Q[7]-B[7],A[8]=Q[8]-B[8],A}function Oc0(A,Q,B){return A[0]=Q[0]*B,A[1]=Q[1]*B,A[2]=Q[2]*B,A[3]=Q[3]*B,A[4]=Q[4]*B,A[5]=Q[5]*B,A[6]=Q[6]*B,A[7]=Q[7]*B,A[8]=Q[8]*B,A}function Pc0(A,Q,B,Y){return A[0]=Q[0]+B[0]*Y,A[1]=Q[1]+B[1]*Y,A[2]=Q[2]+B[2]*Y,A[3]=Q[3]+B[3]*Y,A[4]=Q[4]+B[4]*Y,A[5]=Q[5]+B[5]*Y,A[6]=Q[6]+B[6]*Y,A[7]=Q[7]+B[7]*Y,A[8]=Q[8]+B[8]*Y,A}function Tc0(A,Q){return A[0]===Q[0]&&A[1]===Q[1]&&A[2]===Q[2]&&A[3]===Q[3]&&A[4]===Q[4]&&A[5]===Q[5]&&A[6]===Q[6]&&A[7]===Q[7]&&A[8]===Q[8]}function Sc0(A,Q){var B=A[0],Y=A[1],J=A[2],C=A[3],X=A[4],G=A[5],W=A[6],F=A[7],Z=A[8],U=Q[0],$=Q[1],E=Q[2],K=Q[3],I=Q[4],V=Q[5],H=Q[6],D=Q[7],L=Q[8];return Math.abs(B-U)<=t8.EPSILON*Math.max(1,Math.abs(B),Math.abs(U))&&Math.abs(Y-$)<=t8.EPSILON*Math.max(1,Math.abs(Y),Math.abs($))&&Math.abs(J-E)<=t8.EPSILON*Math.max(1,Math.abs(J),Math.abs(E))&&Math.abs(C-K)<=t8.EPSILON*Math.max(1,Math.abs(C),Math.abs(K))&&Math.abs(X-I)<=t8.EPSILON*Math.max(1,Math.abs(X),Math.abs(I))&&Math.abs(G-V)<=t8.EPSILON*Math.max(1,Math.abs(G),Math.abs(V))&&Math.abs(W-H)<=t8.EPSILON*Math.max(1,Math.abs(W),Math.abs(H))&&Math.abs(F-D)<=t8.EPSILON*Math.max(1,Math.abs(F),Math.abs(D))&&Math.abs(Z-L)<=t8.EPSILON*Math.max(1,Math.abs(Z),Math.abs(L))}var kc0=dSQ;lSQ.mul=kc0;var _c0=cSQ;lSQ.sub=_c0});var Lt=R((AkQ)=>{function ok(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")ok=function(B){return typeof B};else ok=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return ok(A)}Object.defineProperty(AkQ,"__esModule",{value:!0});AkQ.create=$l0;AkQ.clone=Ul0;AkQ.copy=El0;AkQ.fromValues=Kl0;AkQ.set=Vl0;AkQ.identity=nSQ;AkQ.transpose=Il0;AkQ.invert=Hl0;AkQ.adjoint=Dl0;AkQ.determinant=Nl0;AkQ.multiply=sSQ;AkQ.translate=Ll0;AkQ.scale=ql0;AkQ.rotate=Ml0;AkQ.rotateX=zl0;AkQ.rotateY=Rl0;AkQ.rotateZ=wl0;AkQ.fromTranslation=jl0;AkQ.fromScaling=Ol0;AkQ.fromRotation=Pl0;AkQ.fromXRotation=Tl0;AkQ.fromYRotation=Sl0;AkQ.fromZRotation=kl0;AkQ.fromRotationTranslation=rSQ;AkQ.fromQuat2=_l0;AkQ.getTranslation=vl0;AkQ.getScaling=aSQ;AkQ.getRotation=yl0;AkQ.fromRotationTranslationScale=gl0;AkQ.fromRotationTranslationScaleOrigin=hl0;AkQ.fromQuat=xl0;AkQ.frustum=fl0;AkQ.perspectiveNO=oSQ;AkQ.perspectiveZO=ml0;AkQ.perspectiveFromFieldOfView=ul0;AkQ.orthoNO=tSQ;AkQ.orthoZO=cl0;AkQ.lookAt=ll0;AkQ.targetTo=pl0;AkQ.str=il0;AkQ.frob=nl0;AkQ.add=sl0;AkQ.subtract=eSQ;AkQ.multiplyScalar=rl0;AkQ.multiplyScalarAndAdd=al0;AkQ.exactEquals=ol0;AkQ.equals=tl0;AkQ.sub=AkQ.mul=AkQ.ortho=AkQ.perspective=void 0;var Y0=Zl0(M1());function iSQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(iSQ=function(J){return J?B:Q})(A)}function Zl0(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||ok(A)!=="object"&&typeof A!=="function")return{default:A};var B=iSQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function $l0(){var A=new Y0.ARRAY_TYPE(16);if(Y0.ARRAY_TYPE!=Float32Array)A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[6]=0,A[7]=0,A[8]=0,A[9]=0,A[11]=0,A[12]=0,A[13]=0,A[14]=0;return A[0]=1,A[5]=1,A[10]=1,A[15]=1,A}function Ul0(A){var Q=new Y0.ARRAY_TYPE(16);return Q[0]=A[0],Q[1]=A[1],Q[2]=A[2],Q[3]=A[3],Q[4]=A[4],Q[5]=A[5],Q[6]=A[6],Q[7]=A[7],Q[8]=A[8],Q[9]=A[9],Q[10]=A[10],Q[11]=A[11],Q[12]=A[12],Q[13]=A[13],Q[14]=A[14],Q[15]=A[15],Q}function El0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A[3]=Q[3],A[4]=Q[4],A[5]=Q[5],A[6]=Q[6],A[7]=Q[7],A[8]=Q[8],A[9]=Q[9],A[10]=Q[10],A[11]=Q[11],A[12]=Q[12],A[13]=Q[13],A[14]=Q[14],A[15]=Q[15],A}function Kl0(A,Q,B,Y,J,C,X,G,W,F,Z,U,$,E,K,I){var V=new Y0.ARRAY_TYPE(16);return V[0]=A,V[1]=Q,V[2]=B,V[3]=Y,V[4]=J,V[5]=C,V[6]=X,V[7]=G,V[8]=W,V[9]=F,V[10]=Z,V[11]=U,V[12]=$,V[13]=E,V[14]=K,V[15]=I,V}function Vl0(A,Q,B,Y,J,C,X,G,W,F,Z,U,$,E,K,I,V){return A[0]=Q,A[1]=B,A[2]=Y,A[3]=J,A[4]=C,A[5]=X,A[6]=G,A[7]=W,A[8]=F,A[9]=Z,A[10]=U,A[11]=$,A[12]=E,A[13]=K,A[14]=I,A[15]=V,A}function nSQ(A){return A[0]=1,A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[5]=1,A[6]=0,A[7]=0,A[8]=0,A[9]=0,A[10]=1,A[11]=0,A[12]=0,A[13]=0,A[14]=0,A[15]=1,A}function Il0(A,Q){if(A===Q){var B=Q[1],Y=Q[2],J=Q[3],C=Q[6],X=Q[7],G=Q[11];A[1]=Q[4],A[2]=Q[8],A[3]=Q[12],A[4]=B,A[6]=Q[9],A[7]=Q[13],A[8]=Y,A[9]=C,A[11]=Q[14],A[12]=J,A[13]=X,A[14]=G}else A[0]=Q[0],A[1]=Q[4],A[2]=Q[8],A[3]=Q[12],A[4]=Q[1],A[5]=Q[5],A[6]=Q[9],A[7]=Q[13],A[8]=Q[2],A[9]=Q[6],A[10]=Q[10],A[11]=Q[14],A[12]=Q[3],A[13]=Q[7],A[14]=Q[11],A[15]=Q[15];return A}function Hl0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Q[4],G=Q[5],W=Q[6],F=Q[7],Z=Q[8],U=Q[9],$=Q[10],E=Q[11],K=Q[12],I=Q[13],V=Q[14],H=Q[15],D=B*G-Y*X,L=B*W-J*X,z=B*F-C*X,M=Y*W-J*G,N=Y*F-C*G,q=J*F-C*W,w=Z*I-U*K,P=Z*V-$*K,_=Z*H-E*K,j=U*V-$*I,k=U*H-E*I,T=$*H-E*V,S=D*T-L*k+z*j+M*_-N*P+q*w;if(!S)return null;return S=1/S,A[0]=(G*T-W*k+F*j)*S,A[1]=(J*k-Y*T-C*j)*S,A[2]=(I*q-V*N+H*M)*S,A[3]=($*N-U*q-E*M)*S,A[4]=(W*_-X*T-F*P)*S,A[5]=(B*T-J*_+C*P)*S,A[6]=(V*z-K*q-H*L)*S,A[7]=(Z*q-$*z+E*L)*S,A[8]=(X*k-G*_+F*w)*S,A[9]=(Y*_-B*k-C*w)*S,A[10]=(K*N-I*z+H*D)*S,A[11]=(U*z-Z*N-E*D)*S,A[12]=(G*P-X*j-W*w)*S,A[13]=(B*j-Y*P+J*w)*S,A[14]=(I*L-K*M-V*D)*S,A[15]=(Z*M-U*L+$*D)*S,A}function Dl0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Q[4],G=Q[5],W=Q[6],F=Q[7],Z=Q[8],U=Q[9],$=Q[10],E=Q[11],K=Q[12],I=Q[13],V=Q[14],H=Q[15];return A[0]=G*($*H-E*V)-U*(W*H-F*V)+I*(W*E-F*$),A[1]=-(Y*($*H-E*V)-U*(J*H-C*V)+I*(J*E-C*$)),A[2]=Y*(W*H-F*V)-G*(J*H-C*V)+I*(J*F-C*W),A[3]=-(Y*(W*E-F*$)-G*(J*E-C*$)+U*(J*F-C*W)),A[4]=-(X*($*H-E*V)-Z*(W*H-F*V)+K*(W*E-F*$)),A[5]=B*($*H-E*V)-Z*(J*H-C*V)+K*(J*E-C*$),A[6]=-(B*(W*H-F*V)-X*(J*H-C*V)+K*(J*F-C*W)),A[7]=B*(W*E-F*$)-X*(J*E-C*$)+Z*(J*F-C*W),A[8]=X*(U*H-E*I)-Z*(G*H-F*I)+K*(G*E-F*U),A[9]=-(B*(U*H-E*I)-Z*(Y*H-C*I)+K*(Y*E-C*U)),A[10]=B*(G*H-F*I)-X*(Y*H-C*I)+K*(Y*F-C*G),A[11]=-(B*(G*E-F*U)-X*(Y*E-C*U)+Z*(Y*F-C*G)),A[12]=-(X*(U*V-$*I)-Z*(G*V-W*I)+K*(G*$-W*U)),A[13]=B*(U*V-$*I)-Z*(Y*V-J*I)+K*(Y*$-J*U),A[14]=-(B*(G*V-W*I)-X*(Y*V-J*I)+K*(Y*W-J*G)),A[15]=B*(G*$-W*U)-X*(Y*$-J*U)+Z*(Y*W-J*G),A}function Nl0(A){var Q=A[0],B=A[1],Y=A[2],J=A[3],C=A[4],X=A[5],G=A[6],W=A[7],F=A[8],Z=A[9],U=A[10],$=A[11],E=A[12],K=A[13],I=A[14],V=A[15],H=Q*X-B*C,D=Q*G-Y*C,L=Q*W-J*C,z=B*G-Y*X,M=B*W-J*X,N=Y*W-J*G,q=F*K-Z*E,w=F*I-U*E,P=F*V-$*E,_=Z*I-U*K,j=Z*V-$*K,k=U*V-$*I;return H*k-D*j+L*_+z*P-M*w+N*q}function sSQ(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],W=Q[5],F=Q[6],Z=Q[7],U=Q[8],$=Q[9],E=Q[10],K=Q[11],I=Q[12],V=Q[13],H=Q[14],D=Q[15],L=B[0],z=B[1],M=B[2],N=B[3];return A[0]=L*Y+z*G+M*U+N*I,A[1]=L*J+z*W+M*$+N*V,A[2]=L*C+z*F+M*E+N*H,A[3]=L*X+z*Z+M*K+N*D,L=B[4],z=B[5],M=B[6],N=B[7],A[4]=L*Y+z*G+M*U+N*I,A[5]=L*J+z*W+M*$+N*V,A[6]=L*C+z*F+M*E+N*H,A[7]=L*X+z*Z+M*K+N*D,L=B[8],z=B[9],M=B[10],N=B[11],A[8]=L*Y+z*G+M*U+N*I,A[9]=L*J+z*W+M*$+N*V,A[10]=L*C+z*F+M*E+N*H,A[11]=L*X+z*Z+M*K+N*D,L=B[12],z=B[13],M=B[14],N=B[15],A[12]=L*Y+z*G+M*U+N*I,A[13]=L*J+z*W+M*$+N*V,A[14]=L*C+z*F+M*E+N*H,A[15]=L*X+z*Z+M*K+N*D,A}function Ll0(A,Q,B){var Y=B[0],J=B[1],C=B[2],X,G,W,F,Z,U,$,E,K,I,V,H;if(Q===A)A[12]=Q[0]*Y+Q[4]*J+Q[8]*C+Q[12],A[13]=Q[1]*Y+Q[5]*J+Q[9]*C+Q[13],A[14]=Q[2]*Y+Q[6]*J+Q[10]*C+Q[14],A[15]=Q[3]*Y+Q[7]*J+Q[11]*C+Q[15];else X=Q[0],G=Q[1],W=Q[2],F=Q[3],Z=Q[4],U=Q[5],$=Q[6],E=Q[7],K=Q[8],I=Q[9],V=Q[10],H=Q[11],A[0]=X,A[1]=G,A[2]=W,A[3]=F,A[4]=Z,A[5]=U,A[6]=$,A[7]=E,A[8]=K,A[9]=I,A[10]=V,A[11]=H,A[12]=X*Y+Z*J+K*C+Q[12],A[13]=G*Y+U*J+I*C+Q[13],A[14]=W*Y+$*J+V*C+Q[14],A[15]=F*Y+E*J+H*C+Q[15];return A}function ql0(A,Q,B){var Y=B[0],J=B[1],C=B[2];return A[0]=Q[0]*Y,A[1]=Q[1]*Y,A[2]=Q[2]*Y,A[3]=Q[3]*Y,A[4]=Q[4]*J,A[5]=Q[5]*J,A[6]=Q[6]*J,A[7]=Q[7]*J,A[8]=Q[8]*C,A[9]=Q[9]*C,A[10]=Q[10]*C,A[11]=Q[11]*C,A[12]=Q[12],A[13]=Q[13],A[14]=Q[14],A[15]=Q[15],A}function Ml0(A,Q,B,Y){var J=Y[0],C=Y[1],X=Y[2],G=Math.hypot(J,C,X),W,F,Z,U,$,E,K,I,V,H,D,L,z,M,N,q,w,P,_,j,k,T,S,v;if(G0)B[0]=(G*X+Z*Y+W*C-F*J)*2/U,B[1]=(W*X+Z*J+F*Y-G*C)*2/U,B[2]=(F*X+Z*C+G*J-W*Y)*2/U;else B[0]=(G*X+Z*Y+W*C-F*J)*2,B[1]=(W*X+Z*J+F*Y-G*C)*2,B[2]=(F*X+Z*C+G*J-W*Y)*2;return rSQ(A,Q,B),A}function vl0(A,Q){return A[0]=Q[12],A[1]=Q[13],A[2]=Q[14],A}function aSQ(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[4],X=Q[5],G=Q[6],W=Q[8],F=Q[9],Z=Q[10];return A[0]=Math.hypot(B,Y,J),A[1]=Math.hypot(C,X,G),A[2]=Math.hypot(W,F,Z),A}function yl0(A,Q){var B=new Y0.ARRAY_TYPE(3);aSQ(B,Q);var Y=1/B[0],J=1/B[1],C=1/B[2],X=Q[0]*Y,G=Q[1]*J,W=Q[2]*C,F=Q[4]*Y,Z=Q[5]*J,U=Q[6]*C,$=Q[8]*Y,E=Q[9]*J,K=Q[10]*C,I=X+Z+K,V=0;if(I>0)V=Math.sqrt(I+1)*2,A[3]=0.25*V,A[0]=(U-E)/V,A[1]=($-W)/V,A[2]=(G-F)/V;else if(X>Z&&X>K)V=Math.sqrt(1+X-Z-K)*2,A[3]=(U-E)/V,A[0]=0.25*V,A[1]=(G+F)/V,A[2]=($+W)/V;else if(Z>K)V=Math.sqrt(1+Z-X-K)*2,A[3]=($-W)/V,A[0]=(G+F)/V,A[1]=0.25*V,A[2]=(U+E)/V;else V=Math.sqrt(1+K-X-Z)*2,A[3]=(G-F)/V,A[0]=($+W)/V,A[1]=(U+E)/V,A[2]=0.25*V;return A}function gl0(A,Q,B,Y){var J=Q[0],C=Q[1],X=Q[2],G=Q[3],W=J+J,F=C+C,Z=X+X,U=J*W,$=J*F,E=J*Z,K=C*F,I=C*Z,V=X*Z,H=G*W,D=G*F,L=G*Z,z=Y[0],M=Y[1],N=Y[2];return A[0]=(1-(K+V))*z,A[1]=($+L)*z,A[2]=(E-D)*z,A[3]=0,A[4]=($-L)*M,A[5]=(1-(U+V))*M,A[6]=(I+H)*M,A[7]=0,A[8]=(E+D)*N,A[9]=(I-H)*N,A[10]=(1-(U+K))*N,A[11]=0,A[12]=B[0],A[13]=B[1],A[14]=B[2],A[15]=1,A}function hl0(A,Q,B,Y,J){var C=Q[0],X=Q[1],G=Q[2],W=Q[3],F=C+C,Z=X+X,U=G+G,$=C*F,E=C*Z,K=C*U,I=X*Z,V=X*U,H=G*U,D=W*F,L=W*Z,z=W*U,M=Y[0],N=Y[1],q=Y[2],w=J[0],P=J[1],_=J[2],j=(1-(I+H))*M,k=(E+z)*M,T=(K-L)*M,S=(E-z)*N,v=(1-($+H))*N,y=(V+D)*N,h=(K+L)*q,g=(V-D)*q,m=(1-($+I))*q;return A[0]=j,A[1]=k,A[2]=T,A[3]=0,A[4]=S,A[5]=v,A[6]=y,A[7]=0,A[8]=h,A[9]=g,A[10]=m,A[11]=0,A[12]=B[0]+w-(j*w+S*P+h*_),A[13]=B[1]+P-(k*w+v*P+g*_),A[14]=B[2]+_-(T*w+y*P+m*_),A[15]=1,A}function xl0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=B+B,G=Y+Y,W=J+J,F=B*X,Z=Y*X,U=Y*G,$=J*X,E=J*G,K=J*W,I=C*X,V=C*G,H=C*W;return A[0]=1-U-K,A[1]=Z+H,A[2]=$-V,A[3]=0,A[4]=Z-H,A[5]=1-F-K,A[6]=E+I,A[7]=0,A[8]=$+V,A[9]=E-I,A[10]=1-F-U,A[11]=0,A[12]=0,A[13]=0,A[14]=0,A[15]=1,A}function fl0(A,Q,B,Y,J,C,X){var G=1/(B-Q),W=1/(J-Y),F=1/(C-X);return A[0]=C*2*G,A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[5]=C*2*W,A[6]=0,A[7]=0,A[8]=(B+Q)*G,A[9]=(J+Y)*W,A[10]=(X+C)*F,A[11]=-1,A[12]=0,A[13]=0,A[14]=X*C*2*F,A[15]=0,A}function oSQ(A,Q,B,Y,J){var C=1/Math.tan(Q/2),X;if(A[0]=C/B,A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[5]=C,A[6]=0,A[7]=0,A[8]=0,A[9]=0,A[11]=-1,A[12]=0,A[13]=0,A[15]=0,J!=null&&J!==1/0)X=1/(Y-J),A[10]=(J+Y)*X,A[14]=2*J*Y*X;else A[10]=-1,A[14]=-2*Y;return A}var bl0=oSQ;AkQ.perspective=bl0;function ml0(A,Q,B,Y,J){var C=1/Math.tan(Q/2),X;if(A[0]=C/B,A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[5]=C,A[6]=0,A[7]=0,A[8]=0,A[9]=0,A[11]=-1,A[12]=0,A[13]=0,A[15]=0,J!=null&&J!==1/0)X=1/(Y-J),A[10]=J*X,A[14]=J*Y*X;else A[10]=-1,A[14]=-Y;return A}function ul0(A,Q,B,Y){var J=Math.tan(Q.upDegrees*Math.PI/180),C=Math.tan(Q.downDegrees*Math.PI/180),X=Math.tan(Q.leftDegrees*Math.PI/180),G=Math.tan(Q.rightDegrees*Math.PI/180),W=2/(X+G),F=2/(J+C);return A[0]=W,A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[5]=F,A[6]=0,A[7]=0,A[8]=-((X-G)*W*0.5),A[9]=(J-C)*F*0.5,A[10]=Y/(B-Y),A[11]=-1,A[12]=0,A[13]=0,A[14]=Y*B/(B-Y),A[15]=0,A}function tSQ(A,Q,B,Y,J,C,X){var G=1/(Q-B),W=1/(Y-J),F=1/(C-X);return A[0]=-2*G,A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[5]=-2*W,A[6]=0,A[7]=0,A[8]=0,A[9]=0,A[10]=2*F,A[11]=0,A[12]=(Q+B)*G,A[13]=(J+Y)*W,A[14]=(X+C)*F,A[15]=1,A}var dl0=tSQ;AkQ.ortho=dl0;function cl0(A,Q,B,Y,J,C,X){var G=1/(Q-B),W=1/(Y-J),F=1/(C-X);return A[0]=-2*G,A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[5]=-2*W,A[6]=0,A[7]=0,A[8]=0,A[9]=0,A[10]=F,A[11]=0,A[12]=(Q+B)*G,A[13]=(J+Y)*W,A[14]=C*F,A[15]=1,A}function ll0(A,Q,B,Y){var J,C,X,G,W,F,Z,U,$,E,K=Q[0],I=Q[1],V=Q[2],H=Y[0],D=Y[1],L=Y[2],z=B[0],M=B[1],N=B[2];if(Math.abs(K-z)0)E=1/Math.sqrt(E),Z*=E,U*=E,$*=E;var K=W*$-F*U,I=F*Z-G*$,V=G*U-W*Z;if(E=K*K+I*I+V*V,E>0)E=1/Math.sqrt(E),K*=E,I*=E,V*=E;return A[0]=K,A[1]=I,A[2]=V,A[3]=0,A[4]=U*V-$*I,A[5]=$*K-Z*V,A[6]=Z*I-U*K,A[7]=0,A[8]=Z,A[9]=U,A[10]=$,A[11]=0,A[12]=J,A[13]=C,A[14]=X,A[15]=1,A}function il0(A){return"mat4("+A[0]+", "+A[1]+", "+A[2]+", "+A[3]+", "+A[4]+", "+A[5]+", "+A[6]+", "+A[7]+", "+A[8]+", "+A[9]+", "+A[10]+", "+A[11]+", "+A[12]+", "+A[13]+", "+A[14]+", "+A[15]+")"}function nl0(A){return Math.hypot(A[0],A[1],A[2],A[3],A[4],A[5],A[6],A[7],A[8],A[9],A[10],A[11],A[12],A[13],A[14],A[15])}function sl0(A,Q,B){return A[0]=Q[0]+B[0],A[1]=Q[1]+B[1],A[2]=Q[2]+B[2],A[3]=Q[3]+B[3],A[4]=Q[4]+B[4],A[5]=Q[5]+B[5],A[6]=Q[6]+B[6],A[7]=Q[7]+B[7],A[8]=Q[8]+B[8],A[9]=Q[9]+B[9],A[10]=Q[10]+B[10],A[11]=Q[11]+B[11],A[12]=Q[12]+B[12],A[13]=Q[13]+B[13],A[14]=Q[14]+B[14],A[15]=Q[15]+B[15],A}function eSQ(A,Q,B){return A[0]=Q[0]-B[0],A[1]=Q[1]-B[1],A[2]=Q[2]-B[2],A[3]=Q[3]-B[3],A[4]=Q[4]-B[4],A[5]=Q[5]-B[5],A[6]=Q[6]-B[6],A[7]=Q[7]-B[7],A[8]=Q[8]-B[8],A[9]=Q[9]-B[9],A[10]=Q[10]-B[10],A[11]=Q[11]-B[11],A[12]=Q[12]-B[12],A[13]=Q[13]-B[13],A[14]=Q[14]-B[14],A[15]=Q[15]-B[15],A}function rl0(A,Q,B){return A[0]=Q[0]*B,A[1]=Q[1]*B,A[2]=Q[2]*B,A[3]=Q[3]*B,A[4]=Q[4]*B,A[5]=Q[5]*B,A[6]=Q[6]*B,A[7]=Q[7]*B,A[8]=Q[8]*B,A[9]=Q[9]*B,A[10]=Q[10]*B,A[11]=Q[11]*B,A[12]=Q[12]*B,A[13]=Q[13]*B,A[14]=Q[14]*B,A[15]=Q[15]*B,A}function al0(A,Q,B,Y){return A[0]=Q[0]+B[0]*Y,A[1]=Q[1]+B[1]*Y,A[2]=Q[2]+B[2]*Y,A[3]=Q[3]+B[3]*Y,A[4]=Q[4]+B[4]*Y,A[5]=Q[5]+B[5]*Y,A[6]=Q[6]+B[6]*Y,A[7]=Q[7]+B[7]*Y,A[8]=Q[8]+B[8]*Y,A[9]=Q[9]+B[9]*Y,A[10]=Q[10]+B[10]*Y,A[11]=Q[11]+B[11]*Y,A[12]=Q[12]+B[12]*Y,A[13]=Q[13]+B[13]*Y,A[14]=Q[14]+B[14]*Y,A[15]=Q[15]+B[15]*Y,A}function ol0(A,Q){return A[0]===Q[0]&&A[1]===Q[1]&&A[2]===Q[2]&&A[3]===Q[3]&&A[4]===Q[4]&&A[5]===Q[5]&&A[6]===Q[6]&&A[7]===Q[7]&&A[8]===Q[8]&&A[9]===Q[9]&&A[10]===Q[10]&&A[11]===Q[11]&&A[12]===Q[12]&&A[13]===Q[13]&&A[14]===Q[14]&&A[15]===Q[15]}function tl0(A,Q){var B=A[0],Y=A[1],J=A[2],C=A[3],X=A[4],G=A[5],W=A[6],F=A[7],Z=A[8],U=A[9],$=A[10],E=A[11],K=A[12],I=A[13],V=A[14],H=A[15],D=Q[0],L=Q[1],z=Q[2],M=Q[3],N=Q[4],q=Q[5],w=Q[6],P=Q[7],_=Q[8],j=Q[9],k=Q[10],T=Q[11],S=Q[12],v=Q[13],y=Q[14],h=Q[15];return Math.abs(B-D)<=Y0.EPSILON*Math.max(1,Math.abs(B),Math.abs(D))&&Math.abs(Y-L)<=Y0.EPSILON*Math.max(1,Math.abs(Y),Math.abs(L))&&Math.abs(J-z)<=Y0.EPSILON*Math.max(1,Math.abs(J),Math.abs(z))&&Math.abs(C-M)<=Y0.EPSILON*Math.max(1,Math.abs(C),Math.abs(M))&&Math.abs(X-N)<=Y0.EPSILON*Math.max(1,Math.abs(X),Math.abs(N))&&Math.abs(G-q)<=Y0.EPSILON*Math.max(1,Math.abs(G),Math.abs(q))&&Math.abs(W-w)<=Y0.EPSILON*Math.max(1,Math.abs(W),Math.abs(w))&&Math.abs(F-P)<=Y0.EPSILON*Math.max(1,Math.abs(F),Math.abs(P))&&Math.abs(Z-_)<=Y0.EPSILON*Math.max(1,Math.abs(Z),Math.abs(_))&&Math.abs(U-j)<=Y0.EPSILON*Math.max(1,Math.abs(U),Math.abs(j))&&Math.abs($-k)<=Y0.EPSILON*Math.max(1,Math.abs($),Math.abs(k))&&Math.abs(E-T)<=Y0.EPSILON*Math.max(1,Math.abs(E),Math.abs(T))&&Math.abs(K-S)<=Y0.EPSILON*Math.max(1,Math.abs(K),Math.abs(S))&&Math.abs(I-v)<=Y0.EPSILON*Math.max(1,Math.abs(I),Math.abs(v))&&Math.abs(V-y)<=Y0.EPSILON*Math.max(1,Math.abs(V),Math.abs(y))&&Math.abs(H-h)<=Y0.EPSILON*Math.max(1,Math.abs(H),Math.abs(h))}var el0=sSQ;AkQ.mul=el0;var Ap0=eSQ;AkQ.sub=Ap0});var qt=R((UkQ)=>{function tk(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")tk=function(B){return typeof B};else tk=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return tk(A)}Object.defineProperty(UkQ,"__esModule",{value:!0});UkQ.create=YkQ;UkQ.clone=tp0;UkQ.length=JkQ;UkQ.fromValues=ep0;UkQ.copy=Ai0;UkQ.set=Qi0;UkQ.add=Bi0;UkQ.subtract=CkQ;UkQ.multiply=XkQ;UkQ.divide=GkQ;UkQ.ceil=Yi0;UkQ.floor=Ji0;UkQ.min=Ci0;UkQ.max=Xi0;UkQ.round=Gi0;UkQ.scale=Wi0;UkQ.scaleAndAdd=Fi0;UkQ.distance=WkQ;UkQ.squaredDistance=FkQ;UkQ.squaredLength=ZkQ;UkQ.negate=Zi0;UkQ.inverse=$i0;UkQ.normalize=Ui0;UkQ.dot=$kQ;UkQ.cross=Ei0;UkQ.lerp=Ki0;UkQ.hermite=Vi0;UkQ.bezier=Ii0;UkQ.random=Hi0;UkQ.transformMat4=Di0;UkQ.transformMat3=Ni0;UkQ.transformQuat=Li0;UkQ.rotateX=qi0;UkQ.rotateY=Mi0;UkQ.rotateZ=zi0;UkQ.angle=Ri0;UkQ.zero=wi0;UkQ.str=ji0;UkQ.exactEquals=Oi0;UkQ.equals=Pi0;UkQ.forEach=UkQ.sqrLen=UkQ.len=UkQ.sqrDist=UkQ.dist=UkQ.div=UkQ.mul=UkQ.sub=void 0;var cG=op0(M1());function BkQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(BkQ=function(J){return J?B:Q})(A)}function op0(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||tk(A)!=="object"&&typeof A!=="function")return{default:A};var B=BkQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function YkQ(){var A=new cG.ARRAY_TYPE(3);if(cG.ARRAY_TYPE!=Float32Array)A[0]=0,A[1]=0,A[2]=0;return A}function tp0(A){var Q=new cG.ARRAY_TYPE(3);return Q[0]=A[0],Q[1]=A[1],Q[2]=A[2],Q}function JkQ(A){var Q=A[0],B=A[1],Y=A[2];return Math.hypot(Q,B,Y)}function ep0(A,Q,B){var Y=new cG.ARRAY_TYPE(3);return Y[0]=A,Y[1]=Q,Y[2]=B,Y}function Ai0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A}function Qi0(A,Q,B,Y){return A[0]=Q,A[1]=B,A[2]=Y,A}function Bi0(A,Q,B){return A[0]=Q[0]+B[0],A[1]=Q[1]+B[1],A[2]=Q[2]+B[2],A}function CkQ(A,Q,B){return A[0]=Q[0]-B[0],A[1]=Q[1]-B[1],A[2]=Q[2]-B[2],A}function XkQ(A,Q,B){return A[0]=Q[0]*B[0],A[1]=Q[1]*B[1],A[2]=Q[2]*B[2],A}function GkQ(A,Q,B){return A[0]=Q[0]/B[0],A[1]=Q[1]/B[1],A[2]=Q[2]/B[2],A}function Yi0(A,Q){return A[0]=Math.ceil(Q[0]),A[1]=Math.ceil(Q[1]),A[2]=Math.ceil(Q[2]),A}function Ji0(A,Q){return A[0]=Math.floor(Q[0]),A[1]=Math.floor(Q[1]),A[2]=Math.floor(Q[2]),A}function Ci0(A,Q,B){return A[0]=Math.min(Q[0],B[0]),A[1]=Math.min(Q[1],B[1]),A[2]=Math.min(Q[2],B[2]),A}function Xi0(A,Q,B){return A[0]=Math.max(Q[0],B[0]),A[1]=Math.max(Q[1],B[1]),A[2]=Math.max(Q[2],B[2]),A}function Gi0(A,Q){return A[0]=Math.round(Q[0]),A[1]=Math.round(Q[1]),A[2]=Math.round(Q[2]),A}function Wi0(A,Q,B){return A[0]=Q[0]*B,A[1]=Q[1]*B,A[2]=Q[2]*B,A}function Fi0(A,Q,B,Y){return A[0]=Q[0]+B[0]*Y,A[1]=Q[1]+B[1]*Y,A[2]=Q[2]+B[2]*Y,A}function WkQ(A,Q){var B=Q[0]-A[0],Y=Q[1]-A[1],J=Q[2]-A[2];return Math.hypot(B,Y,J)}function FkQ(A,Q){var B=Q[0]-A[0],Y=Q[1]-A[1],J=Q[2]-A[2];return B*B+Y*Y+J*J}function ZkQ(A){var Q=A[0],B=A[1],Y=A[2];return Q*Q+B*B+Y*Y}function Zi0(A,Q){return A[0]=-Q[0],A[1]=-Q[1],A[2]=-Q[2],A}function $i0(A,Q){return A[0]=1/Q[0],A[1]=1/Q[1],A[2]=1/Q[2],A}function Ui0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=B*B+Y*Y+J*J;if(C>0)C=1/Math.sqrt(C);return A[0]=Q[0]*C,A[1]=Q[1]*C,A[2]=Q[2]*C,A}function $kQ(A,Q){return A[0]*Q[0]+A[1]*Q[1]+A[2]*Q[2]}function Ei0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=B[0],G=B[1],W=B[2];return A[0]=J*W-C*G,A[1]=C*X-Y*W,A[2]=Y*G-J*X,A}function Ki0(A,Q,B,Y){var J=Q[0],C=Q[1],X=Q[2];return A[0]=J+Y*(B[0]-J),A[1]=C+Y*(B[1]-C),A[2]=X+Y*(B[2]-X),A}function Vi0(A,Q,B,Y,J,C){var X=C*C,G=X*(2*C-3)+1,W=X*(C-2)+C,F=X*(C-1),Z=X*(3-2*C);return A[0]=Q[0]*G+B[0]*W+Y[0]*F+J[0]*Z,A[1]=Q[1]*G+B[1]*W+Y[1]*F+J[1]*Z,A[2]=Q[2]*G+B[2]*W+Y[2]*F+J[2]*Z,A}function Ii0(A,Q,B,Y,J,C){var X=1-C,G=X*X,W=C*C,F=G*X,Z=3*C*G,U=3*W*X,$=W*C;return A[0]=Q[0]*F+B[0]*Z+Y[0]*U+J[0]*$,A[1]=Q[1]*F+B[1]*Z+Y[1]*U+J[1]*$,A[2]=Q[2]*F+B[2]*Z+Y[2]*U+J[2]*$,A}function Hi0(A,Q){Q=Q||1;var B=cG.RANDOM()*2*Math.PI,Y=cG.RANDOM()*2-1,J=Math.sqrt(1-Y*Y)*Q;return A[0]=Math.cos(B)*J,A[1]=Math.sin(B)*J,A[2]=Y*Q,A}function Di0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=B[3]*Y+B[7]*J+B[11]*C+B[15];return X=X||1,A[0]=(B[0]*Y+B[4]*J+B[8]*C+B[12])/X,A[1]=(B[1]*Y+B[5]*J+B[9]*C+B[13])/X,A[2]=(B[2]*Y+B[6]*J+B[10]*C+B[14])/X,A}function Ni0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2];return A[0]=Y*B[0]+J*B[3]+C*B[6],A[1]=Y*B[1]+J*B[4]+C*B[7],A[2]=Y*B[2]+J*B[5]+C*B[8],A}function Li0(A,Q,B){var Y=B[0],J=B[1],C=B[2],X=B[3],G=Q[0],W=Q[1],F=Q[2],Z=J*F-C*W,U=C*G-Y*F,$=Y*W-J*G,E=J*$-C*U,K=C*Z-Y*$,I=Y*U-J*Z,V=X*2;return Z*=V,U*=V,$*=V,E*=2,K*=2,I*=2,A[0]=G+Z+E,A[1]=W+U+K,A[2]=F+$+I,A}function qi0(A,Q,B,Y){var J=[],C=[];return J[0]=Q[0]-B[0],J[1]=Q[1]-B[1],J[2]=Q[2]-B[2],C[0]=J[0],C[1]=J[1]*Math.cos(Y)-J[2]*Math.sin(Y),C[2]=J[1]*Math.sin(Y)+J[2]*Math.cos(Y),A[0]=C[0]+B[0],A[1]=C[1]+B[1],A[2]=C[2]+B[2],A}function Mi0(A,Q,B,Y){var J=[],C=[];return J[0]=Q[0]-B[0],J[1]=Q[1]-B[1],J[2]=Q[2]-B[2],C[0]=J[2]*Math.sin(Y)+J[0]*Math.cos(Y),C[1]=J[1],C[2]=J[2]*Math.cos(Y)-J[0]*Math.sin(Y),A[0]=C[0]+B[0],A[1]=C[1]+B[1],A[2]=C[2]+B[2],A}function zi0(A,Q,B,Y){var J=[],C=[];return J[0]=Q[0]-B[0],J[1]=Q[1]-B[1],J[2]=Q[2]-B[2],C[0]=J[0]*Math.cos(Y)-J[1]*Math.sin(Y),C[1]=J[0]*Math.sin(Y)+J[1]*Math.cos(Y),C[2]=J[2],A[0]=C[0]+B[0],A[1]=C[1]+B[1],A[2]=C[2]+B[2],A}function Ri0(A,Q){var B=A[0],Y=A[1],J=A[2],C=Q[0],X=Q[1],G=Q[2],W=Math.sqrt(B*B+Y*Y+J*J),F=Math.sqrt(C*C+X*X+G*G),Z=W*F,U=Z&&$kQ(A,Q)/Z;return Math.acos(Math.min(Math.max(U,-1),1))}function wi0(A){return A[0]=0,A[1]=0,A[2]=0,A}function ji0(A){return"vec3("+A[0]+", "+A[1]+", "+A[2]+")"}function Oi0(A,Q){return A[0]===Q[0]&&A[1]===Q[1]&&A[2]===Q[2]}function Pi0(A,Q){var B=A[0],Y=A[1],J=A[2],C=Q[0],X=Q[1],G=Q[2];return Math.abs(B-C)<=cG.EPSILON*Math.max(1,Math.abs(B),Math.abs(C))&&Math.abs(Y-X)<=cG.EPSILON*Math.max(1,Math.abs(Y),Math.abs(X))&&Math.abs(J-G)<=cG.EPSILON*Math.max(1,Math.abs(J),Math.abs(G))}var Ti0=CkQ;UkQ.sub=Ti0;var Si0=XkQ;UkQ.mul=Si0;var ki0=GkQ;UkQ.div=ki0;var _i0=WkQ;UkQ.dist=_i0;var vi0=FkQ;UkQ.sqrDist=vi0;var yi0=JkQ;UkQ.len=yi0;var gi0=ZkQ;UkQ.sqrLen=gi0;var hi0=function(){var A=YkQ();return function(Q,B,Y,J,C,X){var G,W;if(!B)B=3;if(!Y)Y=0;if(J)W=Math.min(J*B+Y,Q.length);else W=Q.length;for(G=Y;G{function ek(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")ek=function(B){return typeof B};else ek=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return ek(A)}Object.defineProperty(zkQ,"__esModule",{value:!0});zkQ.create=VkQ;zkQ.clone=kn0;zkQ.fromValues=_n0;zkQ.copy=vn0;zkQ.set=yn0;zkQ.add=gn0;zkQ.subtract=IkQ;zkQ.multiply=HkQ;zkQ.divide=DkQ;zkQ.ceil=hn0;zkQ.floor=xn0;zkQ.min=fn0;zkQ.max=bn0;zkQ.round=mn0;zkQ.scale=un0;zkQ.scaleAndAdd=dn0;zkQ.distance=NkQ;zkQ.squaredDistance=LkQ;zkQ.length=qkQ;zkQ.squaredLength=MkQ;zkQ.negate=cn0;zkQ.inverse=ln0;zkQ.normalize=pn0;zkQ.dot=in0;zkQ.cross=nn0;zkQ.lerp=sn0;zkQ.random=rn0;zkQ.transformMat4=an0;zkQ.transformQuat=on0;zkQ.zero=tn0;zkQ.str=en0;zkQ.exactEquals=As0;zkQ.equals=Qs0;zkQ.forEach=zkQ.sqrLen=zkQ.len=zkQ.sqrDist=zkQ.dist=zkQ.div=zkQ.mul=zkQ.sub=void 0;var KC=Sn0(M1());function KkQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(KkQ=function(J){return J?B:Q})(A)}function Sn0(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||ek(A)!=="object"&&typeof A!=="function")return{default:A};var B=KkQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function VkQ(){var A=new KC.ARRAY_TYPE(4);if(KC.ARRAY_TYPE!=Float32Array)A[0]=0,A[1]=0,A[2]=0,A[3]=0;return A}function kn0(A){var Q=new KC.ARRAY_TYPE(4);return Q[0]=A[0],Q[1]=A[1],Q[2]=A[2],Q[3]=A[3],Q}function _n0(A,Q,B,Y){var J=new KC.ARRAY_TYPE(4);return J[0]=A,J[1]=Q,J[2]=B,J[3]=Y,J}function vn0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A[3]=Q[3],A}function yn0(A,Q,B,Y,J){return A[0]=Q,A[1]=B,A[2]=Y,A[3]=J,A}function gn0(A,Q,B){return A[0]=Q[0]+B[0],A[1]=Q[1]+B[1],A[2]=Q[2]+B[2],A[3]=Q[3]+B[3],A}function IkQ(A,Q,B){return A[0]=Q[0]-B[0],A[1]=Q[1]-B[1],A[2]=Q[2]-B[2],A[3]=Q[3]-B[3],A}function HkQ(A,Q,B){return A[0]=Q[0]*B[0],A[1]=Q[1]*B[1],A[2]=Q[2]*B[2],A[3]=Q[3]*B[3],A}function DkQ(A,Q,B){return A[0]=Q[0]/B[0],A[1]=Q[1]/B[1],A[2]=Q[2]/B[2],A[3]=Q[3]/B[3],A}function hn0(A,Q){return A[0]=Math.ceil(Q[0]),A[1]=Math.ceil(Q[1]),A[2]=Math.ceil(Q[2]),A[3]=Math.ceil(Q[3]),A}function xn0(A,Q){return A[0]=Math.floor(Q[0]),A[1]=Math.floor(Q[1]),A[2]=Math.floor(Q[2]),A[3]=Math.floor(Q[3]),A}function fn0(A,Q,B){return A[0]=Math.min(Q[0],B[0]),A[1]=Math.min(Q[1],B[1]),A[2]=Math.min(Q[2],B[2]),A[3]=Math.min(Q[3],B[3]),A}function bn0(A,Q,B){return A[0]=Math.max(Q[0],B[0]),A[1]=Math.max(Q[1],B[1]),A[2]=Math.max(Q[2],B[2]),A[3]=Math.max(Q[3],B[3]),A}function mn0(A,Q){return A[0]=Math.round(Q[0]),A[1]=Math.round(Q[1]),A[2]=Math.round(Q[2]),A[3]=Math.round(Q[3]),A}function un0(A,Q,B){return A[0]=Q[0]*B,A[1]=Q[1]*B,A[2]=Q[2]*B,A[3]=Q[3]*B,A}function dn0(A,Q,B,Y){return A[0]=Q[0]+B[0]*Y,A[1]=Q[1]+B[1]*Y,A[2]=Q[2]+B[2]*Y,A[3]=Q[3]+B[3]*Y,A}function NkQ(A,Q){var B=Q[0]-A[0],Y=Q[1]-A[1],J=Q[2]-A[2],C=Q[3]-A[3];return Math.hypot(B,Y,J,C)}function LkQ(A,Q){var B=Q[0]-A[0],Y=Q[1]-A[1],J=Q[2]-A[2],C=Q[3]-A[3];return B*B+Y*Y+J*J+C*C}function qkQ(A){var Q=A[0],B=A[1],Y=A[2],J=A[3];return Math.hypot(Q,B,Y,J)}function MkQ(A){var Q=A[0],B=A[1],Y=A[2],J=A[3];return Q*Q+B*B+Y*Y+J*J}function cn0(A,Q){return A[0]=-Q[0],A[1]=-Q[1],A[2]=-Q[2],A[3]=-Q[3],A}function ln0(A,Q){return A[0]=1/Q[0],A[1]=1/Q[1],A[2]=1/Q[2],A[3]=1/Q[3],A}function pn0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=B*B+Y*Y+J*J+C*C;if(X>0)X=1/Math.sqrt(X);return A[0]=B*X,A[1]=Y*X,A[2]=J*X,A[3]=C*X,A}function in0(A,Q){return A[0]*Q[0]+A[1]*Q[1]+A[2]*Q[2]+A[3]*Q[3]}function nn0(A,Q,B,Y){var J=B[0]*Y[1]-B[1]*Y[0],C=B[0]*Y[2]-B[2]*Y[0],X=B[0]*Y[3]-B[3]*Y[0],G=B[1]*Y[2]-B[2]*Y[1],W=B[1]*Y[3]-B[3]*Y[1],F=B[2]*Y[3]-B[3]*Y[2],Z=Q[0],U=Q[1],$=Q[2],E=Q[3];return A[0]=U*F-$*W+E*G,A[1]=-(Z*F)+$*X-E*C,A[2]=Z*W-U*X+E*J,A[3]=-(Z*G)+U*C-$*J,A}function sn0(A,Q,B,Y){var J=Q[0],C=Q[1],X=Q[2],G=Q[3];return A[0]=J+Y*(B[0]-J),A[1]=C+Y*(B[1]-C),A[2]=X+Y*(B[2]-X),A[3]=G+Y*(B[3]-G),A}function rn0(A,Q){Q=Q||1;var B,Y,J,C,X,G;do B=KC.RANDOM()*2-1,Y=KC.RANDOM()*2-1,X=B*B+Y*Y;while(X>=1);do J=KC.RANDOM()*2-1,C=KC.RANDOM()*2-1,G=J*J+C*C;while(G>=1);var W=Math.sqrt((1-X)/G);return A[0]=Q*B,A[1]=Q*Y,A[2]=Q*J*W,A[3]=Q*C*W,A}function an0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3];return A[0]=B[0]*Y+B[4]*J+B[8]*C+B[12]*X,A[1]=B[1]*Y+B[5]*J+B[9]*C+B[13]*X,A[2]=B[2]*Y+B[6]*J+B[10]*C+B[14]*X,A[3]=B[3]*Y+B[7]*J+B[11]*C+B[15]*X,A}function on0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=B[0],G=B[1],W=B[2],F=B[3],Z=F*Y+G*C-W*J,U=F*J+W*Y-X*C,$=F*C+X*J-G*Y,E=-X*Y-G*J-W*C;return A[0]=Z*F+E*-X+U*-W-$*-G,A[1]=U*F+E*-G+$*-X-Z*-W,A[2]=$*F+E*-W+Z*-G-U*-X,A[3]=Q[3],A}function tn0(A){return A[0]=0,A[1]=0,A[2]=0,A[3]=0,A}function en0(A){return"vec4("+A[0]+", "+A[1]+", "+A[2]+", "+A[3]+")"}function As0(A,Q){return A[0]===Q[0]&&A[1]===Q[1]&&A[2]===Q[2]&&A[3]===Q[3]}function Qs0(A,Q){var B=A[0],Y=A[1],J=A[2],C=A[3],X=Q[0],G=Q[1],W=Q[2],F=Q[3];return Math.abs(B-X)<=KC.EPSILON*Math.max(1,Math.abs(B),Math.abs(X))&&Math.abs(Y-G)<=KC.EPSILON*Math.max(1,Math.abs(Y),Math.abs(G))&&Math.abs(J-W)<=KC.EPSILON*Math.max(1,Math.abs(J),Math.abs(W))&&Math.abs(C-F)<=KC.EPSILON*Math.max(1,Math.abs(C),Math.abs(F))}var Bs0=IkQ;zkQ.sub=Bs0;var Ys0=HkQ;zkQ.mul=Ys0;var Js0=DkQ;zkQ.div=Js0;var Cs0=NkQ;zkQ.dist=Cs0;var Xs0=LkQ;zkQ.sqrDist=Xs0;var Gs0=qkQ;zkQ.len=Gs0;var Ws0=MkQ;zkQ.sqrLen=Ws0;var Fs0=function(){var A=VkQ();return function(Q,B,Y,J,C,X){var G,W;if(!B)B=4;if(!Y)Y=0;if(J)W=Math.min(J*B+Y,Q.length);else W=Q.length;for(G=Y;G{function A_(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")A_=function(B){return typeof B};else A_=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return A_(A)}Object.defineProperty(gkQ,"__esModule",{value:!0});gkQ.create=zt;gkQ.identity=os0;gkQ.setAxisAngle=jkQ;gkQ.getAxisAngle=ts0;gkQ.getAngle=es0;gkQ.multiply=OkQ;gkQ.rotateX=Ar0;gkQ.rotateY=Qr0;gkQ.rotateZ=Br0;gkQ.calculateW=Yr0;gkQ.exp=PkQ;gkQ.ln=TkQ;gkQ.pow=Jr0;gkQ.slerp=Q_;gkQ.random=Cr0;gkQ.invert=Xr0;gkQ.conjugate=Gr0;gkQ.fromMat3=SkQ;gkQ.fromEuler=Wr0;gkQ.str=Fr0;gkQ.setAxes=gkQ.sqlerp=gkQ.rotationTo=gkQ.equals=gkQ.exactEquals=gkQ.normalize=gkQ.sqrLen=gkQ.squaredLength=gkQ.len=gkQ.length=gkQ.lerp=gkQ.dot=gkQ.scale=gkQ.mul=gkQ.add=gkQ.set=gkQ.copy=gkQ.fromValues=gkQ.clone=void 0;var V4=B_(M1()),as0=B_(Nt()),lG=B_(qt()),e8=B_(Mt());function wkQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(wkQ=function(J){return J?B:Q})(A)}function B_(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||A_(A)!=="object"&&typeof A!=="function")return{default:A};var B=wkQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function zt(){var A=new V4.ARRAY_TYPE(4);if(V4.ARRAY_TYPE!=Float32Array)A[0]=0,A[1]=0,A[2]=0;return A[3]=1,A}function os0(A){return A[0]=0,A[1]=0,A[2]=0,A[3]=1,A}function jkQ(A,Q,B){B=B*0.5;var Y=Math.sin(B);return A[0]=Y*Q[0],A[1]=Y*Q[1],A[2]=Y*Q[2],A[3]=Math.cos(B),A}function ts0(A,Q){var B=Math.acos(Q[3])*2,Y=Math.sin(B/2);if(Y>V4.EPSILON)A[0]=Q[0]/Y,A[1]=Q[1]/Y,A[2]=Q[2]/Y;else A[0]=1,A[1]=0,A[2]=0;return B}function es0(A,Q){var B=_kQ(A,Q);return Math.acos(2*B*B-1)}function OkQ(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=B[0],W=B[1],F=B[2],Z=B[3];return A[0]=Y*Z+X*G+J*F-C*W,A[1]=J*Z+X*W+C*G-Y*F,A[2]=C*Z+X*F+Y*W-J*G,A[3]=X*Z-Y*G-J*W-C*F,A}function Ar0(A,Q,B){B*=0.5;var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Math.sin(B),W=Math.cos(B);return A[0]=Y*W+X*G,A[1]=J*W+C*G,A[2]=C*W-J*G,A[3]=X*W-Y*G,A}function Qr0(A,Q,B){B*=0.5;var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Math.sin(B),W=Math.cos(B);return A[0]=Y*W-C*G,A[1]=J*W+X*G,A[2]=C*W+Y*G,A[3]=X*W-J*G,A}function Br0(A,Q,B){B*=0.5;var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Math.sin(B),W=Math.cos(B);return A[0]=Y*W+J*G,A[1]=J*W-Y*G,A[2]=C*W+X*G,A[3]=X*W-C*G,A}function Yr0(A,Q){var B=Q[0],Y=Q[1],J=Q[2];return A[0]=B,A[1]=Y,A[2]=J,A[3]=Math.sqrt(Math.abs(1-B*B-Y*Y-J*J)),A}function PkQ(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Math.sqrt(B*B+Y*Y+J*J),G=Math.exp(C),W=X>0?G*Math.sin(X)/X:0;return A[0]=B*W,A[1]=Y*W,A[2]=J*W,A[3]=G*Math.cos(X),A}function TkQ(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Math.sqrt(B*B+Y*Y+J*J),G=X>0?Math.atan2(X,C)/X:0;return A[0]=B*G,A[1]=Y*G,A[2]=J*G,A[3]=0.5*Math.log(B*B+Y*Y+J*J+C*C),A}function Jr0(A,Q,B){return TkQ(A,Q),kkQ(A,A,B),PkQ(A,A),A}function Q_(A,Q,B,Y){var J=Q[0],C=Q[1],X=Q[2],G=Q[3],W=B[0],F=B[1],Z=B[2],U=B[3],$,E,K,I,V;if(E=J*W+C*F+X*Z+G*U,E<0)E=-E,W=-W,F=-F,Z=-Z,U=-U;if(1-E>V4.EPSILON)$=Math.acos(E),K=Math.sin($),I=Math.sin((1-Y)*$)/K,V=Math.sin(Y*$)/K;else I=1-Y,V=Y;return A[0]=I*J+V*W,A[1]=I*C+V*F,A[2]=I*X+V*Z,A[3]=I*G+V*U,A}function Cr0(A){var Q=V4.RANDOM(),B=V4.RANDOM(),Y=V4.RANDOM(),J=Math.sqrt(1-Q),C=Math.sqrt(Q);return A[0]=J*Math.sin(2*Math.PI*B),A[1]=J*Math.cos(2*Math.PI*B),A[2]=C*Math.sin(2*Math.PI*Y),A[3]=C*Math.cos(2*Math.PI*Y),A}function Xr0(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=B*B+Y*Y+J*J+C*C,G=X?1/X:0;return A[0]=-B*G,A[1]=-Y*G,A[2]=-J*G,A[3]=C*G,A}function Gr0(A,Q){return A[0]=-Q[0],A[1]=-Q[1],A[2]=-Q[2],A[3]=Q[3],A}function SkQ(A,Q){var B=Q[0]+Q[4]+Q[8],Y;if(B>0)Y=Math.sqrt(B+1),A[3]=0.5*Y,Y=0.5/Y,A[0]=(Q[5]-Q[7])*Y,A[1]=(Q[6]-Q[2])*Y,A[2]=(Q[1]-Q[3])*Y;else{var J=0;if(Q[4]>Q[0])J=1;if(Q[8]>Q[J*3+J])J=2;var C=(J+1)%3,X=(J+2)%3;Y=Math.sqrt(Q[J*3+J]-Q[C*3+C]-Q[X*3+X]+1),A[J]=0.5*Y,Y=0.5/Y,A[3]=(Q[C*3+X]-Q[X*3+C])*Y,A[C]=(Q[C*3+J]+Q[J*3+C])*Y,A[X]=(Q[X*3+J]+Q[J*3+X])*Y}return A}function Wr0(A,Q,B,Y){var J=0.5*Math.PI/180;Q*=J,B*=J,Y*=J;var C=Math.sin(Q),X=Math.cos(Q),G=Math.sin(B),W=Math.cos(B),F=Math.sin(Y),Z=Math.cos(Y);return A[0]=C*W*Z-X*G*F,A[1]=X*G*Z+C*W*F,A[2]=X*W*F-C*G*Z,A[3]=X*W*Z+C*G*F,A}function Fr0(A){return"quat("+A[0]+", "+A[1]+", "+A[2]+", "+A[3]+")"}var Zr0=e8.clone;gkQ.clone=Zr0;var $r0=e8.fromValues;gkQ.fromValues=$r0;var Ur0=e8.copy;gkQ.copy=Ur0;var Er0=e8.set;gkQ.set=Er0;var Kr0=e8.add;gkQ.add=Kr0;var Vr0=OkQ;gkQ.mul=Vr0;var kkQ=e8.scale;gkQ.scale=kkQ;var _kQ=e8.dot;gkQ.dot=_kQ;var Ir0=e8.lerp;gkQ.lerp=Ir0;var vkQ=e8.length;gkQ.length=vkQ;var Hr0=vkQ;gkQ.len=Hr0;var ykQ=e8.squaredLength;gkQ.squaredLength=ykQ;var Dr0=ykQ;gkQ.sqrLen=Dr0;var Rt=e8.normalize;gkQ.normalize=Rt;var Nr0=e8.exactEquals;gkQ.exactEquals=Nr0;var Lr0=e8.equals;gkQ.equals=Lr0;var qr0=function(){var A=lG.create(),Q=lG.fromValues(1,0,0),B=lG.fromValues(0,1,0);return function(Y,J,C){var X=lG.dot(J,C);if(X<-0.999999){if(lG.cross(A,Q,J),lG.len(A)<0.000001)lG.cross(A,B,J);return lG.normalize(A,A),jkQ(Y,A,Math.PI),Y}else if(X>0.999999)return Y[0]=0,Y[1]=0,Y[2]=0,Y[3]=1,Y;else return lG.cross(A,J,C),Y[0]=A[0],Y[1]=A[1],Y[2]=A[2],Y[3]=1+X,Rt(Y,Y)}}();gkQ.rotationTo=qr0;var Mr0=function(){var A=zt(),Q=zt();return function(B,Y,J,C,X,G){return Q_(A,Y,X,G),Q_(Q,J,C,G),Q_(B,A,Q,2*G*(1-G)),B}}();gkQ.sqlerp=Mr0;var zr0=function(){var A=as0.create();return function(Q,B,Y,J){return A[0]=Y[0],A[3]=Y[1],A[6]=Y[2],A[1]=J[0],A[4]=J[1],A[7]=J[2],A[2]=-B[0],A[5]=-B[1],A[8]=-B[2],Rt(Q,SkQ(Q,A))}}();gkQ.setAxes=zr0});var ikQ=R((lkQ)=>{function Y_(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")Y_=function(B){return typeof B};else Y_=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return Y_(A)}Object.defineProperty(lkQ,"__esModule",{value:!0});lkQ.create=Wa0;lkQ.clone=Fa0;lkQ.fromValues=Za0;lkQ.fromRotationTranslationValues=$a0;lkQ.fromRotationTranslation=bkQ;lkQ.fromTranslation=Ua0;lkQ.fromRotation=Ea0;lkQ.fromMat4=Ka0;lkQ.copy=mkQ;lkQ.identity=Va0;lkQ.set=Ia0;lkQ.getDual=Da0;lkQ.setDual=La0;lkQ.getTranslation=qa0;lkQ.translate=Ma0;lkQ.rotateX=za0;lkQ.rotateY=Ra0;lkQ.rotateZ=wa0;lkQ.rotateByQuatAppend=ja0;lkQ.rotateByQuatPrepend=Oa0;lkQ.rotateAroundAxis=Pa0;lkQ.add=Ta0;lkQ.multiply=ukQ;lkQ.scale=ka0;lkQ.lerp=_a0;lkQ.invert=va0;lkQ.conjugate=ya0;lkQ.normalize=xa0;lkQ.str=fa0;lkQ.exactEquals=ba0;lkQ.equals=ma0;lkQ.sqrLen=lkQ.squaredLength=lkQ.len=lkQ.length=lkQ.dot=lkQ.mul=lkQ.setReal=lkQ.getReal=void 0;var j9=jt(M1()),pG=jt(wt()),xkQ=jt(Lt());function fkQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(fkQ=function(J){return J?B:Q})(A)}function jt(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||Y_(A)!=="object"&&typeof A!=="function")return{default:A};var B=fkQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function Wa0(){var A=new j9.ARRAY_TYPE(8);if(j9.ARRAY_TYPE!=Float32Array)A[0]=0,A[1]=0,A[2]=0,A[4]=0,A[5]=0,A[6]=0,A[7]=0;return A[3]=1,A}function Fa0(A){var Q=new j9.ARRAY_TYPE(8);return Q[0]=A[0],Q[1]=A[1],Q[2]=A[2],Q[3]=A[3],Q[4]=A[4],Q[5]=A[5],Q[6]=A[6],Q[7]=A[7],Q}function Za0(A,Q,B,Y,J,C,X,G){var W=new j9.ARRAY_TYPE(8);return W[0]=A,W[1]=Q,W[2]=B,W[3]=Y,W[4]=J,W[5]=C,W[6]=X,W[7]=G,W}function $a0(A,Q,B,Y,J,C,X){var G=new j9.ARRAY_TYPE(8);G[0]=A,G[1]=Q,G[2]=B,G[3]=Y;var W=J*0.5,F=C*0.5,Z=X*0.5;return G[4]=W*Y+F*B-Z*Q,G[5]=F*Y+Z*A-W*B,G[6]=Z*Y+W*Q-F*A,G[7]=-W*A-F*Q-Z*B,G}function bkQ(A,Q,B){var Y=B[0]*0.5,J=B[1]*0.5,C=B[2]*0.5,X=Q[0],G=Q[1],W=Q[2],F=Q[3];return A[0]=X,A[1]=G,A[2]=W,A[3]=F,A[4]=Y*F+J*W-C*G,A[5]=J*F+C*X-Y*W,A[6]=C*F+Y*G-J*X,A[7]=-Y*X-J*G-C*W,A}function Ua0(A,Q){return A[0]=0,A[1]=0,A[2]=0,A[3]=1,A[4]=Q[0]*0.5,A[5]=Q[1]*0.5,A[6]=Q[2]*0.5,A[7]=0,A}function Ea0(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A[3]=Q[3],A[4]=0,A[5]=0,A[6]=0,A[7]=0,A}function Ka0(A,Q){var B=pG.create();xkQ.getRotation(B,Q);var Y=new j9.ARRAY_TYPE(3);return xkQ.getTranslation(Y,Q),bkQ(A,B,Y),A}function mkQ(A,Q){return A[0]=Q[0],A[1]=Q[1],A[2]=Q[2],A[3]=Q[3],A[4]=Q[4],A[5]=Q[5],A[6]=Q[6],A[7]=Q[7],A}function Va0(A){return A[0]=0,A[1]=0,A[2]=0,A[3]=1,A[4]=0,A[5]=0,A[6]=0,A[7]=0,A}function Ia0(A,Q,B,Y,J,C,X,G,W){return A[0]=Q,A[1]=B,A[2]=Y,A[3]=J,A[4]=C,A[5]=X,A[6]=G,A[7]=W,A}var Ha0=pG.copy;lkQ.getReal=Ha0;function Da0(A,Q){return A[0]=Q[4],A[1]=Q[5],A[2]=Q[6],A[3]=Q[7],A}var Na0=pG.copy;lkQ.setReal=Na0;function La0(A,Q){return A[4]=Q[0],A[5]=Q[1],A[6]=Q[2],A[7]=Q[3],A}function qa0(A,Q){var B=Q[4],Y=Q[5],J=Q[6],C=Q[7],X=-Q[0],G=-Q[1],W=-Q[2],F=Q[3];return A[0]=(B*F+C*X+Y*W-J*G)*2,A[1]=(Y*F+C*G+J*X-B*W)*2,A[2]=(J*F+C*W+B*G-Y*X)*2,A}function Ma0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=B[0]*0.5,W=B[1]*0.5,F=B[2]*0.5,Z=Q[4],U=Q[5],$=Q[6],E=Q[7];return A[0]=Y,A[1]=J,A[2]=C,A[3]=X,A[4]=X*G+J*F-C*W+Z,A[5]=X*W+C*G-Y*F+U,A[6]=X*F+Y*W-J*G+$,A[7]=-Y*G-J*W-C*F+E,A}function za0(A,Q,B){var Y=-Q[0],J=-Q[1],C=-Q[2],X=Q[3],G=Q[4],W=Q[5],F=Q[6],Z=Q[7],U=G*X+Z*Y+W*C-F*J,$=W*X+Z*J+F*Y-G*C,E=F*X+Z*C+G*J-W*Y,K=Z*X-G*Y-W*J-F*C;return pG.rotateX(A,Q,B),Y=A[0],J=A[1],C=A[2],X=A[3],A[4]=U*X+K*Y+$*C-E*J,A[5]=$*X+K*J+E*Y-U*C,A[6]=E*X+K*C+U*J-$*Y,A[7]=K*X-U*Y-$*J-E*C,A}function Ra0(A,Q,B){var Y=-Q[0],J=-Q[1],C=-Q[2],X=Q[3],G=Q[4],W=Q[5],F=Q[6],Z=Q[7],U=G*X+Z*Y+W*C-F*J,$=W*X+Z*J+F*Y-G*C,E=F*X+Z*C+G*J-W*Y,K=Z*X-G*Y-W*J-F*C;return pG.rotateY(A,Q,B),Y=A[0],J=A[1],C=A[2],X=A[3],A[4]=U*X+K*Y+$*C-E*J,A[5]=$*X+K*J+E*Y-U*C,A[6]=E*X+K*C+U*J-$*Y,A[7]=K*X-U*Y-$*J-E*C,A}function wa0(A,Q,B){var Y=-Q[0],J=-Q[1],C=-Q[2],X=Q[3],G=Q[4],W=Q[5],F=Q[6],Z=Q[7],U=G*X+Z*Y+W*C-F*J,$=W*X+Z*J+F*Y-G*C,E=F*X+Z*C+G*J-W*Y,K=Z*X-G*Y-W*J-F*C;return pG.rotateZ(A,Q,B),Y=A[0],J=A[1],C=A[2],X=A[3],A[4]=U*X+K*Y+$*C-E*J,A[5]=$*X+K*J+E*Y-U*C,A[6]=E*X+K*C+U*J-$*Y,A[7]=K*X-U*Y-$*J-E*C,A}function ja0(A,Q,B){var Y=B[0],J=B[1],C=B[2],X=B[3],G=Q[0],W=Q[1],F=Q[2],Z=Q[3];return A[0]=G*X+Z*Y+W*C-F*J,A[1]=W*X+Z*J+F*Y-G*C,A[2]=F*X+Z*C+G*J-W*Y,A[3]=Z*X-G*Y-W*J-F*C,G=Q[4],W=Q[5],F=Q[6],Z=Q[7],A[4]=G*X+Z*Y+W*C-F*J,A[5]=W*X+Z*J+F*Y-G*C,A[6]=F*X+Z*C+G*J-W*Y,A[7]=Z*X-G*Y-W*J-F*C,A}function Oa0(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=B[0],W=B[1],F=B[2],Z=B[3];return A[0]=Y*Z+X*G+J*F-C*W,A[1]=J*Z+X*W+C*G-Y*F,A[2]=C*Z+X*F+Y*W-J*G,A[3]=X*Z-Y*G-J*W-C*F,G=B[4],W=B[5],F=B[6],Z=B[7],A[4]=Y*Z+X*G+J*F-C*W,A[5]=J*Z+X*W+C*G-Y*F,A[6]=C*Z+X*F+Y*W-J*G,A[7]=X*Z-Y*G-J*W-C*F,A}function Pa0(A,Q,B,Y){if(Math.abs(Y)0){B=Math.sqrt(B);var Y=Q[0]/B,J=Q[1]/B,C=Q[2]/B,X=Q[3]/B,G=Q[4],W=Q[5],F=Q[6],Z=Q[7],U=Y*G+J*W+C*F+X*Z;A[0]=Y,A[1]=J,A[2]=C,A[3]=X,A[4]=(G-Y*U)/B,A[5]=(W-J*U)/B,A[6]=(F-C*U)/B,A[7]=(Z-X*U)/B}return A}function fa0(A){return"quat2("+A[0]+", "+A[1]+", "+A[2]+", "+A[3]+", "+A[4]+", "+A[5]+", "+A[6]+", "+A[7]+")"}function ba0(A,Q){return A[0]===Q[0]&&A[1]===Q[1]&&A[2]===Q[2]&&A[3]===Q[3]&&A[4]===Q[4]&&A[5]===Q[5]&&A[6]===Q[6]&&A[7]===Q[7]}function ma0(A,Q){var B=A[0],Y=A[1],J=A[2],C=A[3],X=A[4],G=A[5],W=A[6],F=A[7],Z=Q[0],U=Q[1],$=Q[2],E=Q[3],K=Q[4],I=Q[5],V=Q[6],H=Q[7];return Math.abs(B-Z)<=j9.EPSILON*Math.max(1,Math.abs(B),Math.abs(Z))&&Math.abs(Y-U)<=j9.EPSILON*Math.max(1,Math.abs(Y),Math.abs(U))&&Math.abs(J-$)<=j9.EPSILON*Math.max(1,Math.abs(J),Math.abs($))&&Math.abs(C-E)<=j9.EPSILON*Math.max(1,Math.abs(C),Math.abs(E))&&Math.abs(X-K)<=j9.EPSILON*Math.max(1,Math.abs(X),Math.abs(K))&&Math.abs(G-I)<=j9.EPSILON*Math.max(1,Math.abs(G),Math.abs(I))&&Math.abs(W-V)<=j9.EPSILON*Math.max(1,Math.abs(W),Math.abs(V))&&Math.abs(F-H)<=j9.EPSILON*Math.max(1,Math.abs(F),Math.abs(H))}});var J_Q=R((B_Q)=>{function C_(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")C_=function(B){return typeof B};else C_=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return C_(A)}Object.defineProperty(B_Q,"__esModule",{value:!0});B_Q.create=skQ;B_Q.clone=jo0;B_Q.fromValues=Oo0;B_Q.copy=Po0;B_Q.set=To0;B_Q.add=So0;B_Q.subtract=rkQ;B_Q.multiply=akQ;B_Q.divide=okQ;B_Q.ceil=ko0;B_Q.floor=_o0;B_Q.min=vo0;B_Q.max=yo0;B_Q.round=go0;B_Q.scale=ho0;B_Q.scaleAndAdd=xo0;B_Q.distance=tkQ;B_Q.squaredDistance=ekQ;B_Q.length=A_Q;B_Q.squaredLength=Q_Q;B_Q.negate=fo0;B_Q.inverse=bo0;B_Q.normalize=mo0;B_Q.dot=uo0;B_Q.cross=do0;B_Q.lerp=co0;B_Q.random=lo0;B_Q.transformMat2=po0;B_Q.transformMat2d=io0;B_Q.transformMat3=no0;B_Q.transformMat4=so0;B_Q.rotate=ro0;B_Q.angle=ao0;B_Q.zero=oo0;B_Q.str=to0;B_Q.exactEquals=eo0;B_Q.equals=At0;B_Q.forEach=B_Q.sqrLen=B_Q.sqrDist=B_Q.dist=B_Q.div=B_Q.mul=B_Q.sub=B_Q.len=void 0;var I4=wo0(M1());function nkQ(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(nkQ=function(J){return J?B:Q})(A)}function wo0(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||C_(A)!=="object"&&typeof A!=="function")return{default:A};var B=nkQ(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}function skQ(){var A=new I4.ARRAY_TYPE(2);if(I4.ARRAY_TYPE!=Float32Array)A[0]=0,A[1]=0;return A}function jo0(A){var Q=new I4.ARRAY_TYPE(2);return Q[0]=A[0],Q[1]=A[1],Q}function Oo0(A,Q){var B=new I4.ARRAY_TYPE(2);return B[0]=A,B[1]=Q,B}function Po0(A,Q){return A[0]=Q[0],A[1]=Q[1],A}function To0(A,Q,B){return A[0]=Q,A[1]=B,A}function So0(A,Q,B){return A[0]=Q[0]+B[0],A[1]=Q[1]+B[1],A}function rkQ(A,Q,B){return A[0]=Q[0]-B[0],A[1]=Q[1]-B[1],A}function akQ(A,Q,B){return A[0]=Q[0]*B[0],A[1]=Q[1]*B[1],A}function okQ(A,Q,B){return A[0]=Q[0]/B[0],A[1]=Q[1]/B[1],A}function ko0(A,Q){return A[0]=Math.ceil(Q[0]),A[1]=Math.ceil(Q[1]),A}function _o0(A,Q){return A[0]=Math.floor(Q[0]),A[1]=Math.floor(Q[1]),A}function vo0(A,Q,B){return A[0]=Math.min(Q[0],B[0]),A[1]=Math.min(Q[1],B[1]),A}function yo0(A,Q,B){return A[0]=Math.max(Q[0],B[0]),A[1]=Math.max(Q[1],B[1]),A}function go0(A,Q){return A[0]=Math.round(Q[0]),A[1]=Math.round(Q[1]),A}function ho0(A,Q,B){return A[0]=Q[0]*B,A[1]=Q[1]*B,A}function xo0(A,Q,B,Y){return A[0]=Q[0]+B[0]*Y,A[1]=Q[1]+B[1]*Y,A}function tkQ(A,Q){var B=Q[0]-A[0],Y=Q[1]-A[1];return Math.hypot(B,Y)}function ekQ(A,Q){var B=Q[0]-A[0],Y=Q[1]-A[1];return B*B+Y*Y}function A_Q(A){var Q=A[0],B=A[1];return Math.hypot(Q,B)}function Q_Q(A){var Q=A[0],B=A[1];return Q*Q+B*B}function fo0(A,Q){return A[0]=-Q[0],A[1]=-Q[1],A}function bo0(A,Q){return A[0]=1/Q[0],A[1]=1/Q[1],A}function mo0(A,Q){var B=Q[0],Y=Q[1],J=B*B+Y*Y;if(J>0)J=1/Math.sqrt(J);return A[0]=Q[0]*J,A[1]=Q[1]*J,A}function uo0(A,Q){return A[0]*Q[0]+A[1]*Q[1]}function do0(A,Q,B){var Y=Q[0]*B[1]-Q[1]*B[0];return A[0]=A[1]=0,A[2]=Y,A}function co0(A,Q,B,Y){var J=Q[0],C=Q[1];return A[0]=J+Y*(B[0]-J),A[1]=C+Y*(B[1]-C),A}function lo0(A,Q){Q=Q||1;var B=I4.RANDOM()*2*Math.PI;return A[0]=Math.cos(B)*Q,A[1]=Math.sin(B)*Q,A}function po0(A,Q,B){var Y=Q[0],J=Q[1];return A[0]=B[0]*Y+B[2]*J,A[1]=B[1]*Y+B[3]*J,A}function io0(A,Q,B){var Y=Q[0],J=Q[1];return A[0]=B[0]*Y+B[2]*J+B[4],A[1]=B[1]*Y+B[3]*J+B[5],A}function no0(A,Q,B){var Y=Q[0],J=Q[1];return A[0]=B[0]*Y+B[3]*J+B[6],A[1]=B[1]*Y+B[4]*J+B[7],A}function so0(A,Q,B){var Y=Q[0],J=Q[1];return A[0]=B[0]*Y+B[4]*J+B[12],A[1]=B[1]*Y+B[5]*J+B[13],A}function ro0(A,Q,B,Y){var J=Q[0]-B[0],C=Q[1]-B[1],X=Math.sin(Y),G=Math.cos(Y);return A[0]=J*G-C*X+B[0],A[1]=J*X+C*G+B[1],A}function ao0(A,Q){var B=A[0],Y=A[1],J=Q[0],C=Q[1],X=Math.sqrt(B*B+Y*Y)*Math.sqrt(J*J+C*C),G=X&&(B*J+Y*C)/X;return Math.acos(Math.min(Math.max(G,-1),1))}function oo0(A){return A[0]=0,A[1]=0,A}function to0(A){return"vec2("+A[0]+", "+A[1]+")"}function eo0(A,Q){return A[0]===Q[0]&&A[1]===Q[1]}function At0(A,Q){var B=A[0],Y=A[1],J=Q[0],C=Q[1];return Math.abs(B-J)<=I4.EPSILON*Math.max(1,Math.abs(B),Math.abs(J))&&Math.abs(Y-C)<=I4.EPSILON*Math.max(1,Math.abs(Y),Math.abs(C))}var Qt0=A_Q;B_Q.len=Qt0;var Bt0=rkQ;B_Q.sub=Bt0;var Yt0=akQ;B_Q.mul=Yt0;var Jt0=okQ;B_Q.div=Jt0;var Ct0=tkQ;B_Q.dist=Ct0;var Xt0=ekQ;B_Q.sqrDist=Xt0;var Gt0=Q_Q;B_Q.sqrLen=Gt0;var Wt0=function(){var A=skQ();return function(Q,B,Y,J,C,X){var G,W;if(!B)B=2;if(!Y)Y=0;if(J)W=Math.min(J*B+Y,Q.length);else W=Q.length;for(G=Y;G{function X_(A){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")X_=function(B){return typeof B};else X_=function(B){return B&&typeof Symbol==="function"&&B.constructor===Symbol&&B!==Symbol.prototype?"symbol":typeof B};return X_(A)}Object.defineProperty(X_Q,"__esModule",{value:!0});X_Q.vec4=X_Q.vec3=X_Q.vec2=X_Q.quat2=X_Q.quat=X_Q.mat4=X_Q.mat3=X_Q.mat2d=X_Q.mat2=X_Q.glMatrix=void 0;var et0=bX(M1());X_Q.glMatrix=et0;var Ae0=bX(ySQ());X_Q.mat2=Ae0;var Qe0=bX(mSQ());X_Q.mat2d=Qe0;var Be0=bX(Nt());X_Q.mat3=Be0;var Ye0=bX(Lt());X_Q.mat4=Ye0;var Je0=bX(wt());X_Q.quat=Je0;var Ce0=bX(ikQ());X_Q.quat2=Ce0;var Xe0=bX(J_Q());X_Q.vec2=Xe0;var Ge0=bX(qt());X_Q.vec3=Ge0;var We0=bX(Mt());X_Q.vec4=We0;function C_Q(A){if(typeof WeakMap!=="function")return null;var Q=new WeakMap,B=new WeakMap;return(C_Q=function(J){return J?B:Q})(A)}function bX(A,Q){if(!Q&&A&&A.__esModule)return A;if(A===null||X_(A)!=="object"&&typeof A!=="function")return{default:A};var B=C_Q(Q);if(B&&B.has(A))return B.get(A);var Y={},J=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var C in A)if(C!=="default"&&Object.prototype.hasOwnProperty.call(A,C)){var X=J?Object.getOwnPropertyDescriptor(A,C):null;if(X&&(X.get||X.set))Object.defineProperty(Y,C,X);else Y[C]=A[C]}if(Y.default=A,B)B.set(A,Y);return Y}});var Z_Q=R((G_,F_Q)=>{(function(A,Q){typeof G_==="object"&&typeof F_Q<"u"?Q(G_):typeof define==="function"&&define.amd?define(["exports"],Q):(A=typeof globalThis<"u"?globalThis:A||self,Q(A.heap={}))})(G_,function(A){var Q=function($,E,K,I){function V(H){return H instanceof K?H:new K(function(D){D(H)})}return new(K||(K=Promise))(function(H,D){function L(N){try{M(I.next(N))}catch(q){D(q)}}function z(N){try{M(I.throw(N))}catch(q){D(q)}}function M(N){N.done?H(N.value):V(N.value).then(L,z)}M((I=I.apply($,E||[])).next())})},B=function($,E){var K={label:0,sent:function(){if(H[0]&1)throw H[1];return H[1]},trys:[],ops:[]},I,V,H,D=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return D.next=L(0),D.throw=L(1),D.return=L(2),typeof Symbol==="function"&&(D[Symbol.iterator]=function(){return this}),D;function L(M){return function(N){return z([M,N])}}function z(M){if(I)throw TypeError("Generator is already executing.");while(D&&(D=0,M[0]&&(K=0)),K)try{if(I=1,V&&(H=M[0]&2?V.return:M[0]?V.throw||((H=V.return)&&H.call(V),0):V.next)&&!(H=H.call(V,M[1])).done)return H;if(V=0,H)M=[M[0]&2,H.value];switch(M[0]){case 0:case 1:H=M;break;case 4:return K.label++,{value:M[1],done:!1};case 5:K.label++,V=M[1],M=[0];continue;case 7:M=K.ops.pop(),K.trys.pop();continue;default:if((H=K.trys,!(H=H.length>0&&H[H.length-1]))&&(M[0]===6||M[0]===2)){K=0;continue}if(M[0]===3&&(!H||M[1]>H[0]&&M[1]0)&&!(V=I.next()).done)H.push(V.value)}catch(L){D={error:L}}finally{try{if(V&&!V.done&&(K=I.return))K.call(I)}finally{if(D)throw D.error}}return H},J=function($,E,K){if(K||arguments.length===2){for(var I=0,V=E.length,H;I=$.length)$=void 0;return{value:$&&$[I++],done:!$}}};throw TypeError(E?"Object is not iterable.":"Symbol.iterator is not defined.")},X=function(){function $(E){if(E===void 0)E=$.minComparator;var K=this;this.compare=E,this.heapArray=[],this._limit=0,this.offer=this.add,this.element=this.peek,this.poll=this.pop,this._invertedCompare=function(I,V){return K.compare(I,V).then(function(H){return-1*H})}}return $.getChildrenIndexOf=function(E){return[E*2+1,E*2+2]},$.getParentIndexOf=function(E){if(E<=0)return-1;var K=E%2?1:2;return Math.floor((E-K)/2)},$.getSiblingIndexOf=function(E){if(E<=0)return-1;var K=E%2?1:-1;return E+K},$.minComparator=function(E,K){return Q(this,void 0,void 0,function(){return B(this,function(I){if(E>K)return[2,1];else if(EE)return[2,1];else if(K0;--q)w+=N;return w}var V=0,H=[],D=K(E.length-1)+2,L=0;while(VL)L=M.length;H[z]=H[z]||[],H[z].push(M),V+=1}return H.map(function(N,q){var w=Math.pow(2,D-q)-1;return I(" ",Math.floor(w/2)*L)+N.map(function(P){var _=(L-P.length)/2;return I(" ",Math.ceil(_))+P+I(" ",Math.floor(_))}).join(I(" ",w*L))}).join(` `)},$.heapify=function(E,K){return Q(this,void 0,void 0,function(){var I;return B(this,function(V){switch(V.label){case 0:return I=new $(K),I.heapArray=E,[4,I.init()];case 1:return V.sent(),[2,I]}})})},$.heappop=function(E,K){var I=new $(K);return I.heapArray=E,I.pop()},$.heappush=function(E,K,I){return Q(this,void 0,void 0,function(){var V;return B(this,function(H){switch(H.label){case 0:return V=new $(I),V.heapArray=E,[4,V.push(K)];case 1:return H.sent(),[2]}})})},$.heappushpop=function(E,K,I){var V=new $(I);return V.heapArray=E,V.pushpop(K)},$.heapreplace=function(E,K,I){var V=new $(I);return V.heapArray=E,V.replace(K)},$.heaptop=function(E,K,I){if(K===void 0)K=1;var V=new $(I);return V.heapArray=E,V.top(K)},$.heapbottom=function(E,K,I){if(K===void 0)K=1;var V=new $(I);return V.heapArray=E,V.bottom(K)},$.nlargest=function(E,K,I){return Q(this,void 0,void 0,function(){var V;return B(this,function(H){switch(H.label){case 0:return V=new $(I),V.heapArray=J([],Y(K),!1),[4,V.init()];case 1:return H.sent(),[2,V.top(E)]}})})},$.nsmallest=function(E,K,I){return Q(this,void 0,void 0,function(){var V;return B(this,function(H){switch(H.label){case 0:return V=new $(I),V.heapArray=J([],Y(K),!1),[4,V.init()];case 1:return H.sent(),[2,V.bottom(E)]}})})},$.prototype.add=function(E){return Q(this,void 0,void 0,function(){return B(this,function(K){switch(K.label){case 0:return[4,this._sortNodeUp(this.heapArray.push(E)-1)];case 1:return K.sent(),this._applyLimit(),[2,!0]}})})},$.prototype.addAll=function(E){return Q(this,void 0,void 0,function(){var K,I,V;return B(this,function(H){switch(H.label){case 0:K=this.length,(V=this.heapArray).push.apply(V,J([],Y(E),!1)),I=this.length,H.label=1;case 1:if(!(K=this.heapArray.length)return[2,J([],Y(this.heapArray),!1)];else return[2,this._bottomN_push(~~E)]})})},$.prototype.check=function(){return Q(this,void 0,void 0,function(){var E,K,I,V,H,D,L,z,M;return B(this,function(N){switch(N.label){case 0:E=0,N.label=1;case 1:if(!(E0)return[2,K];N.label=5;case 5:return H=V.next(),[3,3];case 6:return[3,9];case 7:return L=N.sent(),z={error:L},[3,9];case 8:try{if(H&&!H.done&&(M=V.return))M.call(V)}finally{if(z)throw z.error}return[7];case 9:return++E,[3,1];case 10:return[2]}})})},$.prototype.clear=function(){this.heapArray=[]},$.prototype.clone=function(){var E=new $(this.comparator());return E.heapArray=this.toArray(),E._limit=this._limit,E},$.prototype.comparator=function(){return this.compare},$.prototype.contains=function(E){return Q(this,arguments,void 0,function(K,I){var V,H,D,L,z,M;if(I===void 0)I=$.defaultIsEqual;return B(this,function(N){switch(N.label){case 0:N.trys.push([0,5,6,7]),V=C(this.heapArray),H=V.next(),N.label=1;case 1:if(H.done)return[3,4];return D=H.value,[4,I(D,K)];case 2:if(N.sent())return[2,!0];N.label=3;case 3:return H=V.next(),[3,1];case 4:return[3,7];case 5:return L=N.sent(),z={error:L},[3,7];case 6:try{if(H&&!H.done&&(M=V.return))M.call(V)}finally{if(z)throw z.error}return[7];case 7:return[2,!1]}})})},$.prototype.init=function(E){return Q(this,void 0,void 0,function(){var K;return B(this,function(I){switch(I.label){case 0:if(E)this.heapArray=J([],Y(E),!1);K=Math.floor(this.heapArray.length),I.label=1;case 1:if(!(K>=0))return[3,4];return[4,this._sortNodeDown(K)];case 2:I.sent(),I.label=3;case 3:return--K,[3,1];case 4:return this._applyLimit(),[2]}})})},$.prototype.isEmpty=function(){return this.length===0},$.prototype.leafs=function(){if(this.heapArray.length===0)return[];var E=$.getParentIndexOf(this.heapArray.length-1);return this.heapArray.slice(E+1)},Object.defineProperty($.prototype,"length",{get:function(){return this.heapArray.length},enumerable:!1,configurable:!0}),Object.defineProperty($.prototype,"limit",{get:function(){return this._limit},set:function(E){this._limit=~~E,this._applyLimit()},enumerable:!1,configurable:!0}),$.prototype.peek=function(){return this.heapArray[0]},$.prototype.pop=function(){return Q(this,void 0,void 0,function(){var E;return B(this,function(K){if(E=this.heapArray.pop(),this.length>0&&E!==void 0)return[2,this.replace(E)];return[2,E]})})},$.prototype.push=function(){var E=[];for(var K=0;K=this.heapArray.length)return[2,J([],Y(this.heapArray),!1)];else return[2,this._topN_push(~~E)]})})},$.prototype.toArray=function(){return J([],Y(this.heapArray),!1)},$.prototype.toString=function(){return this.heapArray.toString()},$.prototype.get=function(E){return this.heapArray[E]},$.prototype.getChildrenOf=function(E){var K=this;return $.getChildrenIndexOf(E).map(function(I){return K.heapArray[I]}).filter(function(I){return I!==void 0})},$.prototype.getParentOf=function(E){var K=$.getParentIndexOf(E);return this.heapArray[K]},$.prototype[Symbol.iterator]=function(){return B(this,function(E){switch(E.label){case 0:if(!this.length)return[3,2];return[4,this.pop()];case 1:return E.sent(),[3,0];case 2:return[2]}})},$.prototype.iterator=function(){return this},$.prototype._applyLimit=function(){if(this._limit&&this._limitV;--L)H.push(L);D=this.heapArray,z.label=2;case 2:if(!H.length)return[3,6];return L=H.shift(),[4,this.compare(D[L],K.peek())];case 3:if(!(z.sent()>0))return[3,5];return[4,K.replace(D[L])];case 4:if(z.sent(),L%2)H.push($.getParentIndexOf(L));z.label=5;case 5:return[3,2];case 6:return[2,K.toArray()]}})})},$.prototype._moveNode=function(E,K){var I;I=Y([this.heapArray[K],this.heapArray[E]],2),this.heapArray[E]=I[0],this.heapArray[K]=I[1]},$.prototype._sortNodeDown=function(E){return Q(this,void 0,void 0,function(){var K,I,V,H,D,L;return B(this,function(z){switch(z.label){case 0:K=this.heapArray.length,z.label=1;case 1:if(I=2*E+1,V=I+1,H=E,D=I0))return[3,2];return K=$.getParentIndexOf(E),[4,this.compare(this.heapArray[E],this.heapArray[K])];case 1:if(I.sent()<0)this._moveNode(E,K),E=K;else return[3,2];return[3,0];case 2:return[2]}})})},$.prototype._topN_push=function(E){return Q(this,void 0,void 0,function(){var K,I,V,H;return B(this,function(D){switch(D.label){case 0:K=new $(this._invertedCompare),K.limit=E,I=[0],V=this.heapArray,D.label=1;case 1:if(!I.length)return[3,7];if(H=I.shift(),!(H0&&H[H.length-1]))&&(M[0]===6||M[0]===2)){K=0;continue}if(M[0]===3&&(!H||M[1]>H[0]&&M[1]0)&&!(V=I.next()).done)H.push(V.value)}catch(L){D={error:L}}finally{try{if(V&&!V.done&&(K=I.return))K.call(I)}finally{if(D)throw D.error}}return H},F=function($,E,K){if(K||arguments.length===2){for(var I=0,V=E.length,H;IK)return 1;else if(EE)return 1;else if(K0;--q)w+=N;return w}var V=0,H=[],D=K(E.length-1)+2,L=0;while(VL)L=M.length;H[z]=H[z]||[],H[z].push(M),V+=1}return H.map(function(N,q){var w=Math.pow(2,D-q)-1;return I(" ",Math.floor(w/2)*L)+N.map(function(P){var _=(L-P.length)/2;return I(" ",Math.ceil(_))+P+I(" ",Math.floor(_))}).join(I(" ",w*L))}).join(` `)},$.heapify=function(E,K){var I=new $(K);return I.heapArray=E,I.init(),I},$.heappop=function(E,K){var I=new $(K);return I.heapArray=E,I.pop()},$.heappush=function(E,K,I){var V=new $(I);V.heapArray=E,V.push(K)},$.heappushpop=function(E,K,I){var V=new $(I);return V.heapArray=E,V.pushpop(K)},$.heapreplace=function(E,K,I){var V=new $(I);return V.heapArray=E,V.replace(K)},$.heaptop=function(E,K,I){if(K===void 0)K=1;var V=new $(I);return V.heapArray=E,V.top(K)},$.heapbottom=function(E,K,I){if(K===void 0)K=1;var V=new $(I);return V.heapArray=E,V.bottom(K)},$.nlargest=function(E,K,I){var V=new $(I);return V.heapArray=F([],W(K),!1),V.init(),V.top(E)},$.nsmallest=function(E,K,I){var V=new $(I);return V.heapArray=F([],W(K),!1),V.init(),V.bottom(E)},$.prototype.add=function(E){return this._sortNodeUp(this.heapArray.push(E)-1),this._applyLimit(),!0},$.prototype.addAll=function(E){var K,I=this.length;(K=this.heapArray).push.apply(K,F([],W(E),!1));for(var V=this.length;I=this.heapArray.length)return F([],W(this.heapArray),!1);else return this._bottomN_push(~~E)},$.prototype.check=function(){var E=this;return this.heapArray.find(function(K,I){return!!E.getChildrenOf(I).find(function(V){return E.compare(K,V)>0})})},$.prototype.clear=function(){this.heapArray=[]},$.prototype.clone=function(){var E=new $(this.comparator());return E.heapArray=this.toArray(),E._limit=this._limit,E},$.prototype.comparator=function(){return this.compare},$.prototype.contains=function(E,K){if(K===void 0)K=$.defaultIsEqual;return this.indexOf(E,K)!==-1},$.prototype.init=function(E){if(E)this.heapArray=F([],W(E),!1);for(var K=Math.floor(this.heapArray.length);K>=0;--K)this._sortNodeDown(K);this._applyLimit()},$.prototype.isEmpty=function(){return this.length===0},$.prototype.indexOf=function(E,K){if(K===void 0)K=$.defaultIsEqual;if(this.heapArray.length===0)return-1;var I=[],V=0;while(V0&&E!==void 0)return this.replace(E);return E},$.prototype.push=function(){var E=[];for(var K=0;K=this.heapArray.length)return F([],W(this.heapArray),!1);else return this._topN_push(~~E)},$.prototype.toArray=function(){return F([],W(this.heapArray),!1)},$.prototype.toString=function(){return this.heapArray.toString()},$.prototype.get=function(E){return this.heapArray[E]},$.prototype.getChildrenOf=function(E){var K=this;return $.getChildrenIndexOf(E).map(function(I){return K.heapArray[I]}).filter(function(I){return I!==void 0})},$.prototype.getParentOf=function(E){var K=$.getParentIndexOf(E);return this.heapArray[K]},$.prototype[Symbol.iterator]=function(){return G(this,function(E){switch(E.label){case 0:if(!this.length)return[3,2];return[4,this.pop()];case 1:return E.sent(),[3,0];case 2:return[2]}})},$.prototype.iterator=function(){return this.toArray()},$.prototype._applyLimit=function(){if(this._limit>0&&this._limitV;--D)H.push(D);var L=this.heapArray;while(H.length){var D=H.shift();if(this.compare(L[D],K.peek())>0){if(K.replace(L[D]),D%2)H.push($.getParentIndexOf(D))}}return K.toArray()},$.prototype._moveNode=function(E,K){var I;I=W([this.heapArray[K],this.heapArray[E]],2),this.heapArray[E]=I[0],this.heapArray[K]=I[1]},$.prototype._sortNodeDown=function(E){var K=this.heapArray.length;while(!0){var I=2*E+1,V=I+1,H=E;if(I0){var K=$.getParentIndexOf(E);if(this.compare(this.heapArray[E],this.heapArray[K])<0)this._moveNode(E,K),E=K;else break}},$.prototype._topN_push=function(E){var K=new $(this._invertedCompare);K.limit=E;var I=[0],V=this.heapArray;while(I.length){var H=I.shift();if(H{};class l{static errorCount=0;static warningCount=0;static warning(A,Q){let B=Error(A);this._logMessage({message:A,error:B,context:Q,type:"warning",isFatal:!1})}static error(A,Q){let B=Error(A);this._logMessage({message:A,error:B,context:Q,type:"error",isFatal:!1})}static fatalError(A,Q){let B=Error(A);throw this._logMessage({message:A,error:B,context:Q,type:"error",isFatal:!0}),B}static enableCrashProtection(){if(process.env.NODE_ENV!=="production")return;process.on("unhandledRejection",(A)=>{let Q=A instanceof Error?A.message:String(A);this.error(`[CRASH PREVENTED] - Unhandled Promise Rejection: ${Q}`)}),process.on("uncaughtException",(A)=>{this.error(`[FATAL] Uncaught Exception: ${A.message} ${A.stack}`),setTimeout(()=>process.exit(1),1000)}),console.info("Crash protection enabled! Unhandled Promise Rejections and Uncaught Exceptions will be logged instead of crashing the server.")}static _logMessage(A){let{message:Q,error:B,context:Y,type:J,isFatal:C}=A,X=new Date().toISOString(),G=J==="warning";if(G)this.warningCount++;else this.errorCount++;let W=G?DY.yellow:DY.red,F=G?this.warningCount:this.errorCount,Z=G?console.warn:console.error;if(Z(` @@ -183,54 +183,54 @@ ${W}${DY.bold}==========[ RUNTIME ${G?"WARNING":"ERROR"} #${F} | ${X} ]========= `);else Z("The server encountered a recoverable error and did not crash."),Z(`You should fix this to prevent undefined-like return values and unexpected behavior. `);let U=C?"FATAL ERROR":G?"WARNING":"ERROR";if(Z(`${W}${DY.bold}⚠️ ${U}:${DY.reset} ${DY.bold}${Q}${DY.reset}`),Y)Z(`${DY.cyan}ℹ️ CONTEXT:${DY.reset} ${Y}`);let $=B.stack?.split(` `)??[];if($.length>1)Z(`${DY.cyan}\uD83D\uDD0D STACK TRACE:${DY.reset}`),$.slice(1).forEach((E)=>{let I=E.trim().replace(/at\s+([^\s]+)/,`at ${DY.green}$1${DY.reset}`).replace(/\(([^:]+):(\d+):(\d+)\)/,`(${DY.cyan}$1${DY.reset}:${DY.yellow}$2:$3${DY.reset})`);Z(` ${I}`)});Z(`${W}${DY.bold}=================================================${DY.reset} -`)}}class PY{static instance=new PY;static assetsLibraryPath=(()=>{if(process.env.NODE_ENV==="production")return null;let A="@hytopia.com/assets";try{return cX.dirname(u.resolve(A))}catch{return null}})();syncAsset(A){if(!PY.assetsLibraryPath)return l.warning("AssetsLibrary.syncAsset(): Assets library is not available.");try{let Q=cX.relative(PY.assetsLibraryPath,A),B=cX.join("assets",Q);if(!dX.existsSync(A))return;if(dX.existsSync(B))return;let Y=Q.match(/^(.+?)\/\.optimized\/([^/]+)\//);if(Y){let[,J,C]=Y,X=cX.join(PY.assetsLibraryPath,J,".optimized",C),G=cX.join("assets",J,".optimized",C);dX.cpSync(X,G,{recursive:!0,force:!1}),[".gltf",".glb"].forEach((W)=>{let F=cX.join(PY.assetsLibraryPath,J,`${C}${W}`),Z=cX.join("assets",J,`${C}${W}`);if(dX.existsSync(F)&&!dX.existsSync(Z))dX.mkdirSync(cX.dirname(Z),{recursive:!0}),dX.copyFileSync(F,Z)}),console.log(`AssetsLibrary.syncAsset(): Copied model from asset library to local assets: ${J}/${C}`)}else dX.mkdirSync(cX.dirname(B),{recursive:!0}),dX.copyFileSync(A,B),console.log(`AssetsLibrary.syncAsset(): Copied asset from asset library to local assets: ${Q}`)}catch(Q){l.warning(`AssetsLibrary.syncAsset(): Failed to copy asset "${A}" to local assets: ${Q}`)}}}var O,VB=Array(128).fill(void 0);function $B(A){return VB[A]}VB.push(void 0,null,!0,!1);var sV=VB.length;function pB(A){sV===VB.length&&VB.push(VB.length+1);let Q=sV;return sV=VB[Q],VB[Q]=A,Q}function kM(A,Q){try{return A.apply(this,Q)}catch(B){O.__wbindgen_export_0(pB(B))}}var Xe=typeof TextDecoder<"u"?new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0}):{decode:()=>{throw Error("TextDecoder not available")}};typeof TextDecoder<"u"&&Xe.decode();var cV=null;function L_(A,Q){return A>>>=0,Xe.decode((cV!==null&&cV.byteLength!==0||(cV=new Uint8Array(O.memory.buffer)),cV).subarray(A,A+Q))}function VQ(A){return A==null}var zF=null;function NY(){return(zF===null||zF.buffer.detached===!0||zF.buffer.detached===void 0&&zF.buffer!==O.memory.buffer)&&(zF=new DataView(O.memory.buffer)),zF}function rV(A){let Q=$B(A);return function(B){B<132||(VB[B]=sV,sV=B)}(A),Q}function c(A,Q){if(!(A instanceof Q))throw Error(`expected instance of ${Q.name}`)}var iB=128;function Z0(A){if(iB==1)throw Error("out of js stack");return VB[--iB]=A,iB}var lV=null;function H_Q(A,Q){return A>>>=0,(lV!==null&&lV.byteLength!==0||(lV=new Int32Array(O.memory.buffer)),lV).subarray(A/4,A/4+Q)}var pV=null;function Ge(){return pV!==null&&pV.byteLength!==0||(pV=new Float32Array(O.memory.buffer)),pV}function yt(A,Q){return A>>>=0,Ge().subarray(A/4,A/4+Q)}var iV=null;function We(){return iV!==null&&iV.byteLength!==0||(iV=new Uint32Array(O.memory.buffer)),iV}var lJ=0;function dV(A,Q){let B=Q(4*A.length,4)>>>0;return We().set(A,B/4),lJ=A.length,B}function nG(A,Q){let B=Q(4*A.length,4)>>>0;return Ge().set(A,B/4),lJ=A.length,B}Object.freeze({Vertex:0,0:"Vertex",Edge:1,1:"Edge",Face:2,2:"Face",Unknown:3,3:"Unknown"});var cM=Object.freeze({LinX:0,0:"LinX",LinY:1,1:"LinY",LinZ:2,2:"LinZ",AngX:3,3:"AngX",AngY:4,4:"AngY",AngZ:5,5:"AngZ"}),DC=Object.freeze({Revolute:0,0:"Revolute",Fixed:1,1:"Fixed",Prismatic:2,2:"Prismatic",Rope:3,3:"Rope",Spring:4,4:"Spring",Spherical:5,5:"Spherical",Generic:6,6:"Generic"});Object.freeze({AccelerationBased:0,0:"AccelerationBased",ForceBased:1,1:"ForceBased"}),Object.freeze({Dynamic:0,0:"Dynamic",Fixed:1,1:"Fixed",KinematicPositionBased:2,2:"KinematicPositionBased",KinematicVelocityBased:3,3:"KinematicVelocityBased"});var mY=Object.freeze({Ball:0,0:"Ball",Cuboid:1,1:"Cuboid",Capsule:2,2:"Capsule",Segment:3,3:"Segment",Polyline:4,4:"Polyline",Triangle:5,5:"Triangle",TriMesh:6,6:"TriMesh",HeightField:7,7:"HeightField",Compound:8,8:"Compound",ConvexPolyhedron:9,9:"ConvexPolyhedron",Cylinder:10,10:"Cylinder",Cone:11,11:"Cone",RoundCuboid:12,12:"RoundCuboid",RoundTriangle:13,13:"RoundTriangle",RoundCylinder:14,14:"RoundCylinder",RoundCone:15,15:"RoundCone",RoundConvexPolyhedron:16,16:"RoundConvexPolyhedron",HalfSpace:17,17:"HalfSpace",Voxels:18,18:"Voxels"}),Z_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawbroadphase_free(A>>>0,1));class pX{static __wrap(A){A>>>=0;let Q=Object.create(pX.prototype);return Q.__wbg_ptr=A,Z_.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Z_.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawbroadphase_free(A,0)}constructor(){let A=O.rawbroadphase_new();return this.__wbg_ptr=A>>>0,Z_.register(this,this.__wbg_ptr,this),this}castRay(A,Q,B,Y,J,C,X,G,W,F,Z,U){try{c(A,LY),c(Q,C0),c(B,T0),c(Y,r),c(J,r);let $=O.rawbroadphase_castRay(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C,X,G,VQ(W)?4294967297:W>>>0,!VQ(F),VQ(F)?0:F,!VQ(Z),VQ(Z)?0:Z,Z0(U));return $===0?void 0:h_.__wrap($)}finally{VB[iB++]=void 0}}castRayAndGetNormal(A,Q,B,Y,J,C,X,G,W,F,Z,U){try{c(A,LY),c(Q,C0),c(B,T0),c(Y,r),c(J,r);let $=O.rawbroadphase_castRayAndGetNormal(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C,X,G,VQ(W)?4294967297:W>>>0,!VQ(F),VQ(F)?0:F,!VQ(Z),VQ(Z)?0:Z,Z0(U));return $===0?void 0:iM.__wrap($)}finally{VB[iB++]=void 0}}intersectionsWithRay(A,Q,B,Y,J,C,X,G,W,F,Z,U,$){try{c(A,LY),c(Q,C0),c(B,T0),c(Y,r),c(J,r),O.rawbroadphase_intersectionsWithRay(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C,X,Z0(G),W,VQ(F)?4294967297:F>>>0,!VQ(Z),VQ(Z)?0:Z,!VQ(U),VQ(U)?0:U,Z0($))}finally{VB[iB++]=void 0,VB[iB++]=void 0}}intersectionWithShape(A,Q,B,Y,J,C,X,G,W,F,Z){try{let E=O.__wbindgen_add_to_stack_pointer(-16);c(A,LY),c(Q,C0),c(B,T0),c(Y,r),c(J,AB),c(C,UQ),O.rawbroadphase_intersectionWithShape(E,this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C.__wbg_ptr,X,VQ(G)?4294967297:G>>>0,!VQ(W),VQ(W)?0:W,!VQ(F),VQ(F)?0:F,Z0(Z));var U=NY().getInt32(E+0,!0),$=NY().getFloat64(E+8,!0);return U===0?void 0:$}finally{O.__wbindgen_add_to_stack_pointer(16),VB[iB++]=void 0}}projectPoint(A,Q,B,Y,J,C,X,G,W,F){try{c(A,LY),c(Q,C0),c(B,T0),c(Y,r);let Z=O.rawbroadphase_projectPoint(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J,C,VQ(X)?4294967297:X>>>0,!VQ(G),VQ(G)?0:G,!VQ(W),VQ(W)?0:W,Z0(F));return Z===0?void 0:vM.__wrap(Z)}finally{VB[iB++]=void 0}}projectPointAndGetFeature(A,Q,B,Y,J,C,X,G,W){try{c(A,LY),c(Q,C0),c(B,T0),c(Y,r);let F=O.rawbroadphase_projectPointAndGetFeature(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J,VQ(C)?4294967297:C>>>0,!VQ(X),VQ(X)?0:X,!VQ(G),VQ(G)?0:G,Z0(W));return F===0?void 0:vM.__wrap(F)}finally{VB[iB++]=void 0}}intersectionsWithPoint(A,Q,B,Y,J,C,X,G,W,F){try{c(A,LY),c(Q,C0),c(B,T0),c(Y,r),O.rawbroadphase_intersectionsWithPoint(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,Z0(J),C,VQ(X)?4294967297:X>>>0,!VQ(G),VQ(G)?0:G,!VQ(W),VQ(W)?0:W,Z0(F))}finally{VB[iB++]=void 0,VB[iB++]=void 0}}castShape(A,Q,B,Y,J,C,X,G,W,F,Z,U,$,E,K){try{c(A,LY),c(Q,C0),c(B,T0),c(Y,r),c(J,AB),c(C,r),c(X,UQ);let I=O.rawbroadphase_castShape(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C.__wbg_ptr,X.__wbg_ptr,G,W,F,Z,VQ(U)?4294967297:U>>>0,!VQ($),VQ($)?0:$,!VQ(E),VQ(E)?0:E,Z0(K));return I===0?void 0:lM.__wrap(I)}finally{VB[iB++]=void 0}}intersectionsWithShape(A,Q,B,Y,J,C,X,G,W,F,Z,U){try{c(A,LY),c(Q,C0),c(B,T0),c(Y,r),c(J,AB),c(C,UQ),O.rawbroadphase_intersectionsWithShape(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C.__wbg_ptr,Z0(X),G,VQ(W)?4294967297:W>>>0,!VQ(F),VQ(F)?0:F,!VQ(Z),VQ(Z)?0:Z,Z0(U))}finally{VB[iB++]=void 0,VB[iB++]=void 0}}collidersWithAabbIntersectingAabb(A,Q,B,Y,J,C){try{c(A,LY),c(Q,C0),c(B,T0),c(Y,r),c(J,r),O.rawbroadphase_collidersWithAabbIntersectingAabb(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,Z0(C))}finally{VB[iB++]=void 0}}}var gt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawccdsolver_free(A>>>0,1));class _M{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,gt.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawccdsolver_free(A,0)}constructor(){let A=O.rawccdsolver_new();return this.__wbg_ptr=A>>>0,gt.register(this,this.__wbg_ptr,this),this}}var ht=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawcharactercollision_free(A>>>0,1));class S_{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,ht.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawcharactercollision_free(A,0)}constructor(){let A=O.rawcharactercollision_new();return this.__wbg_ptr=A>>>0,ht.register(this,this.__wbg_ptr,this),this}handle(){return O.rawcharactercollision_handle(this.__wbg_ptr)}translationDeltaApplied(){let A=O.rawcharactercollision_translationDeltaApplied(this.__wbg_ptr);return r.__wrap(A)}translationDeltaRemaining(){let A=O.rawcharactercollision_translationDeltaRemaining(this.__wbg_ptr);return r.__wrap(A)}toi(){return O.rawcharactercollision_toi(this.__wbg_ptr)}worldWitness1(){let A=O.rawcharactercollision_worldWitness1(this.__wbg_ptr);return r.__wrap(A)}worldWitness2(){let A=O.rawcharactercollision_worldWitness2(this.__wbg_ptr);return r.__wrap(A)}worldNormal1(){let A=O.rawcharactercollision_worldNormal1(this.__wbg_ptr);return r.__wrap(A)}worldNormal2(){let A=O.rawcharactercollision_worldNormal2(this.__wbg_ptr);return r.__wrap(A)}}var $_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawcolliderset_free(A>>>0,1));class T0{static __wrap(A){A>>>=0;let Q=Object.create(T0.prototype);return Q.__wbg_ptr=A,$_.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,$_.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawcolliderset_free(A,0)}coTranslation(A){let Q=O.rawcolliderset_coTranslation(this.__wbg_ptr,A);return r.__wrap(Q)}coRotation(A){let Q=O.rawcolliderset_coRotation(this.__wbg_ptr,A);return AB.__wrap(Q)}coTranslationWrtParent(A){let Q=O.rawcolliderset_coTranslationWrtParent(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}coRotationWrtParent(A){let Q=O.rawcolliderset_coRotationWrtParent(this.__wbg_ptr,A);return Q===0?void 0:AB.__wrap(Q)}coSetTranslation(A,Q,B,Y){O.rawcolliderset_coSetTranslation(this.__wbg_ptr,A,Q,B,Y)}coSetTranslationWrtParent(A,Q,B,Y){O.rawcolliderset_coSetTranslationWrtParent(this.__wbg_ptr,A,Q,B,Y)}coSetRotation(A,Q,B,Y,J){O.rawcolliderset_coSetRotation(this.__wbg_ptr,A,Q,B,Y,J)}coSetRotationWrtParent(A,Q,B,Y,J){O.rawcolliderset_coSetRotationWrtParent(this.__wbg_ptr,A,Q,B,Y,J)}coIsSensor(A){return O.rawcolliderset_coIsSensor(this.__wbg_ptr,A)!==0}coShapeType(A){return O.rawcolliderset_coShapeType(this.__wbg_ptr,A)}coHalfspaceNormal(A){let Q=O.rawcolliderset_coHalfspaceNormal(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}coHalfExtents(A){let Q=O.rawcolliderset_coHalfExtents(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}coSetHalfExtents(A,Q){c(Q,r),O.rawcolliderset_coSetHalfExtents(this.__wbg_ptr,A,Q.__wbg_ptr)}coRadius(A){let Q=O.rawcolliderset_coRadius(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}coSetRadius(A,Q){O.rawcolliderset_coSetRadius(this.__wbg_ptr,A,Q)}coHalfHeight(A){let Q=O.rawcolliderset_coHalfHeight(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}coSetHalfHeight(A,Q){O.rawcolliderset_coSetHalfHeight(this.__wbg_ptr,A,Q)}coRoundRadius(A){let Q=O.rawcolliderset_coRoundRadius(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}coSetRoundRadius(A,Q){O.rawcolliderset_coSetRoundRadius(this.__wbg_ptr,A,Q)}coVoxelData(A){try{let Y=O.__wbindgen_add_to_stack_pointer(-16);O.rawcolliderset_coVoxelData(Y,this.__wbg_ptr,A);var Q=NY().getInt32(Y+0,!0),B=NY().getInt32(Y+4,!0);let J;return Q!==0&&(J=H_Q(Q,B).slice(),O.__wbindgen_export_1(Q,4*B,4)),J}finally{O.__wbindgen_add_to_stack_pointer(16)}}coVoxelSize(A){let Q=O.rawcolliderset_coVoxelSize(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}coSetVoxel(A,Q,B,Y,J){O.rawcolliderset_coSetVoxel(this.__wbg_ptr,A,Q,B,Y,J)}coPropagateVoxelChange(A,Q,B,Y,J,C,X,G){O.rawcolliderset_coPropagateVoxelChange(this.__wbg_ptr,A,Q,B,Y,J,C,X,G)}coCombineVoxelStates(A,Q,B,Y,J){O.rawcolliderset_coCombineVoxelStates(this.__wbg_ptr,A,Q,B,Y,J)}coVertices(A){try{let Y=O.__wbindgen_add_to_stack_pointer(-16);O.rawcolliderset_coVertices(Y,this.__wbg_ptr,A);var Q=NY().getInt32(Y+0,!0),B=NY().getInt32(Y+4,!0);let J;return Q!==0&&(J=yt(Q,B).slice(),O.__wbindgen_export_1(Q,4*B,4)),J}finally{O.__wbindgen_add_to_stack_pointer(16)}}coIndices(A){try{let Y=O.__wbindgen_add_to_stack_pointer(-16);O.rawcolliderset_coIndices(Y,this.__wbg_ptr,A);var Q=NY().getInt32(Y+0,!0),B=NY().getInt32(Y+4,!0);let J;return Q!==0&&(J=function(C,X){return C>>>=0,We().subarray(C/4,C/4+X)}(Q,B).slice(),O.__wbindgen_export_1(Q,4*B,4)),J}finally{O.__wbindgen_add_to_stack_pointer(16)}}coTriMeshFlags(A){let Q=O.rawcolliderset_coTriMeshFlags(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}coHeightFieldFlags(A){let Q=O.rawcolliderset_coHeightFieldFlags(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}coHeightfieldHeights(A){try{let Y=O.__wbindgen_add_to_stack_pointer(-16);O.rawcolliderset_coHeightfieldHeights(Y,this.__wbg_ptr,A);var Q=NY().getInt32(Y+0,!0),B=NY().getInt32(Y+4,!0);let J;return Q!==0&&(J=yt(Q,B).slice(),O.__wbindgen_export_1(Q,4*B,4)),J}finally{O.__wbindgen_add_to_stack_pointer(16)}}coHeightfieldScale(A){let Q=O.rawcolliderset_coHeightfieldScale(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}coHeightfieldNRows(A){let Q=O.rawcolliderset_coHeightfieldNRows(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}coHeightfieldNCols(A){let Q=O.rawcolliderset_coHeightfieldNCols(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}coParent(A){try{let Y=O.__wbindgen_add_to_stack_pointer(-16);O.rawcolliderset_coParent(Y,this.__wbg_ptr,A);var Q=NY().getInt32(Y+0,!0),B=NY().getFloat64(Y+8,!0);return Q===0?void 0:B}finally{O.__wbindgen_add_to_stack_pointer(16)}}coSetEnabled(A,Q){O.rawcolliderset_coSetEnabled(this.__wbg_ptr,A,Q)}coIsEnabled(A){return O.rawcolliderset_coIsEnabled(this.__wbg_ptr,A)!==0}coSetContactSkin(A,Q){O.rawcolliderset_coSetContactSkin(this.__wbg_ptr,A,Q)}coContactSkin(A){return O.rawcolliderset_coContactSkin(this.__wbg_ptr,A)}coFriction(A){return O.rawcolliderset_coFriction(this.__wbg_ptr,A)}coRestitution(A){return O.rawcolliderset_coRestitution(this.__wbg_ptr,A)}coDensity(A){return O.rawcolliderset_coDensity(this.__wbg_ptr,A)}coMass(A){return O.rawcolliderset_coMass(this.__wbg_ptr,A)}coVolume(A){return O.rawcolliderset_coVolume(this.__wbg_ptr,A)}coCollisionGroups(A){return O.rawcolliderset_coCollisionGroups(this.__wbg_ptr,A)>>>0}coSolverGroups(A){return O.rawcolliderset_coSolverGroups(this.__wbg_ptr,A)>>>0}coActiveHooks(A){return O.rawcolliderset_coActiveHooks(this.__wbg_ptr,A)>>>0}coActiveCollisionTypes(A){return O.rawcolliderset_coActiveCollisionTypes(this.__wbg_ptr,A)}coActiveEvents(A){return O.rawcolliderset_coActiveEvents(this.__wbg_ptr,A)>>>0}coContactForceEventThreshold(A){return O.rawcolliderset_coContactForceEventThreshold(this.__wbg_ptr,A)}coContainsPoint(A,Q){return c(Q,r),O.rawcolliderset_coContainsPoint(this.__wbg_ptr,A,Q.__wbg_ptr)!==0}coCastShape(A,Q,B,Y,J,C,X,G,W){c(Q,r),c(B,UQ),c(Y,r),c(J,AB),c(C,r);let F=O.rawcolliderset_coCastShape(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C.__wbg_ptr,X,G,W);return F===0?void 0:sM.__wrap(F)}coCastCollider(A,Q,B,Y,J,C,X){c(Q,r),c(Y,r);let G=O.rawcolliderset_coCastCollider(this.__wbg_ptr,A,Q.__wbg_ptr,B,Y.__wbg_ptr,J,C,X);return G===0?void 0:lM.__wrap(G)}coIntersectsShape(A,Q,B,Y){return c(Q,UQ),c(B,r),c(Y,AB),O.rawcolliderset_coIntersectsShape(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr)!==0}coContactShape(A,Q,B,Y,J){c(Q,UQ),c(B,r),c(Y,AB);let C=O.rawcolliderset_coContactShape(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J);return C===0?void 0:aV.__wrap(C)}coContactCollider(A,Q,B){let Y=O.rawcolliderset_coContactCollider(this.__wbg_ptr,A,Q,B);return Y===0?void 0:aV.__wrap(Y)}coProjectPoint(A,Q,B){c(Q,r);let Y=O.rawcolliderset_coProjectPoint(this.__wbg_ptr,A,Q.__wbg_ptr,B);return pM.__wrap(Y)}coIntersectsRay(A,Q,B,Y){return c(Q,r),c(B,r),O.rawcolliderset_coIntersectsRay(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y)!==0}coCastRay(A,Q,B,Y,J){return c(Q,r),c(B,r),O.rawcolliderset_coCastRay(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y,J)}coCastRayAndGetNormal(A,Q,B,Y,J){c(Q,r),c(B,r);let C=O.rawcolliderset_coCastRayAndGetNormal(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y,J);return C===0?void 0:nM.__wrap(C)}coSetSensor(A,Q){O.rawcolliderset_coSetSensor(this.__wbg_ptr,A,Q)}coSetRestitution(A,Q){O.rawcolliderset_coSetRestitution(this.__wbg_ptr,A,Q)}coSetFriction(A,Q){O.rawcolliderset_coSetFriction(this.__wbg_ptr,A,Q)}coFrictionCombineRule(A){return O.rawcolliderset_coFrictionCombineRule(this.__wbg_ptr,A)>>>0}coSetFrictionCombineRule(A,Q){O.rawcolliderset_coSetFrictionCombineRule(this.__wbg_ptr,A,Q)}coRestitutionCombineRule(A){return O.rawcolliderset_coRestitutionCombineRule(this.__wbg_ptr,A)>>>0}coSetRestitutionCombineRule(A,Q){O.rawcolliderset_coSetRestitutionCombineRule(this.__wbg_ptr,A,Q)}coSetCollisionGroups(A,Q){O.rawcolliderset_coSetCollisionGroups(this.__wbg_ptr,A,Q)}coSetSolverGroups(A,Q){O.rawcolliderset_coSetSolverGroups(this.__wbg_ptr,A,Q)}coSetActiveHooks(A,Q){O.rawcolliderset_coSetActiveHooks(this.__wbg_ptr,A,Q)}coSetActiveEvents(A,Q){O.rawcolliderset_coSetActiveEvents(this.__wbg_ptr,A,Q)}coSetActiveCollisionTypes(A,Q){O.rawcolliderset_coSetActiveCollisionTypes(this.__wbg_ptr,A,Q)}coSetShape(A,Q){c(Q,UQ),O.rawcolliderset_coSetShape(this.__wbg_ptr,A,Q.__wbg_ptr)}coSetContactForceEventThreshold(A,Q){O.rawcolliderset_coSetContactForceEventThreshold(this.__wbg_ptr,A,Q)}coSetDensity(A,Q){O.rawcolliderset_coSetDensity(this.__wbg_ptr,A,Q)}coSetMass(A,Q){O.rawcolliderset_coSetMass(this.__wbg_ptr,A,Q)}coSetMassProperties(A,Q,B,Y,J){c(B,r),c(Y,r),c(J,AB),O.rawcolliderset_coSetMassProperties(this.__wbg_ptr,A,Q,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr)}constructor(){let A=O.rawcolliderset_new();return this.__wbg_ptr=A>>>0,$_.register(this,this.__wbg_ptr,this),this}len(){return O.rawcolliderset_len(this.__wbg_ptr)>>>0}contains(A){return O.rawcolliderset_contains(this.__wbg_ptr,A)!==0}createCollider(A,Q,B,Y,J,C,X,G,W,F,Z,U,$,E,K,I,V,H,D,L,z,M,N,q,w){try{let j=O.__wbindgen_add_to_stack_pointer(-16);c(Q,UQ),c(B,r),c(Y,AB),c(X,r),c(G,r),c(W,AB),c(w,C0),O.rawcolliderset_createCollider(j,this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J,C,X.__wbg_ptr,G.__wbg_ptr,W.__wbg_ptr,F,Z,U,$,E,K,I,V,H,D,L,z,M,N,q,w.__wbg_ptr);var P=NY().getInt32(j+0,!0),_=NY().getFloat64(j+8,!0);return P===0?void 0:_}finally{O.__wbindgen_add_to_stack_pointer(16)}}remove(A,Q,B,Y){c(Q,nX),c(B,C0),O.rawcolliderset_remove(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y)}isHandleValid(A){return O.rawcolliderset_contains(this.__wbg_ptr,A)!==0}forEachColliderHandle(A){try{O.rawcolliderset_forEachColliderHandle(this.__wbg_ptr,Z0(A))}finally{VB[iB++]=void 0}}}var xt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawcollidershapecasthit_free(A>>>0,1));class lM{static __wrap(A){A>>>=0;let Q=Object.create(lM.prototype);return Q.__wbg_ptr=A,xt.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,xt.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawcollidershapecasthit_free(A,0)}colliderHandle(){return O.rawcharactercollision_handle(this.__wbg_ptr)}time_of_impact(){return O.rawcollidershapecasthit_time_of_impact(this.__wbg_ptr)}witness1(){let A=O.rawcollidershapecasthit_witness1(this.__wbg_ptr);return r.__wrap(A)}witness2(){let A=O.rawcollidershapecasthit_witness2(this.__wbg_ptr);return r.__wrap(A)}normal1(){let A=O.rawcharactercollision_translationDeltaApplied(this.__wbg_ptr);return r.__wrap(A)}normal2(){let A=O.rawcharactercollision_translationDeltaRemaining(this.__wbg_ptr);return r.__wrap(A)}}var ft=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawcontactforceevent_free(A>>>0,1));class k_{static __wrap(A){A>>>=0;let Q=Object.create(k_.prototype);return Q.__wbg_ptr=A,ft.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,ft.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawcontactforceevent_free(A,0)}collider1(){return O.rawcharactercollision_handle(this.__wbg_ptr)}collider2(){return O.rawcontactforceevent_collider2(this.__wbg_ptr)}total_force(){let A=O.rawcontactforceevent_total_force(this.__wbg_ptr);return r.__wrap(A)}total_force_magnitude(){return O.rawcontactforceevent_total_force_magnitude(this.__wbg_ptr)}max_force_direction(){let A=O.rawcontactforceevent_max_force_direction(this.__wbg_ptr);return r.__wrap(A)}max_force_magnitude(){return O.rawcontactforceevent_max_force_magnitude(this.__wbg_ptr)}}var bt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawcontactmanifold_free(A>>>0,1));class __{static __wrap(A){A>>>=0;let Q=Object.create(__.prototype);return Q.__wbg_ptr=A,bt.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,bt.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawcontactmanifold_free(A,0)}normal(){let A=O.rawcontactmanifold_normal(this.__wbg_ptr);return r.__wrap(A)}local_n1(){let A=O.rawcontactmanifold_local_n1(this.__wbg_ptr);return r.__wrap(A)}local_n2(){let A=O.rawcontactmanifold_local_n2(this.__wbg_ptr);return r.__wrap(A)}subshape1(){return O.rawcontactmanifold_subshape1(this.__wbg_ptr)>>>0}subshape2(){return O.rawcontactmanifold_subshape2(this.__wbg_ptr)>>>0}num_contacts(){return O.rawcontactmanifold_num_contacts(this.__wbg_ptr)>>>0}contact_local_p1(A){let Q=O.rawcontactmanifold_contact_local_p1(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}contact_local_p2(A){let Q=O.rawcontactmanifold_contact_local_p2(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}contact_dist(A){return O.rawcontactmanifold_contact_dist(this.__wbg_ptr,A)}contact_fid1(A){return O.rawcontactmanifold_contact_fid1(this.__wbg_ptr,A)>>>0}contact_fid2(A){return O.rawcontactmanifold_contact_fid2(this.__wbg_ptr,A)>>>0}contact_impulse(A){return O.rawcontactmanifold_contact_impulse(this.__wbg_ptr,A)}contact_tangent_impulse_x(A){return O.rawcontactmanifold_contact_tangent_impulse_x(this.__wbg_ptr,A)}contact_tangent_impulse_y(A){return O.rawcontactmanifold_contact_tangent_impulse_y(this.__wbg_ptr,A)}num_solver_contacts(){return O.rawcontactmanifold_num_solver_contacts(this.__wbg_ptr)>>>0}solver_contact_point(A){let Q=O.rawcontactmanifold_solver_contact_point(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}solver_contact_dist(A){return O.rawcontactmanifold_solver_contact_dist(this.__wbg_ptr,A)}solver_contact_friction(A){return O.rawcontactmanifold_solver_contact_friction(this.__wbg_ptr,A)}solver_contact_restitution(A){return O.rawcontactmanifold_solver_contact_restitution(this.__wbg_ptr,A)}solver_contact_tangent_velocity(A){let Q=O.rawcontactmanifold_solver_contact_tangent_velocity(this.__wbg_ptr,A);return r.__wrap(Q)}}var mt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawcontactpair_free(A>>>0,1));class v_{static __wrap(A){A>>>=0;let Q=Object.create(v_.prototype);return Q.__wbg_ptr=A,mt.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,mt.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawcontactpair_free(A,0)}collider1(){return O.rawcontactpair_collider1(this.__wbg_ptr)}collider2(){return O.rawcontactpair_collider2(this.__wbg_ptr)}numContactManifolds(){return O.rawcontactpair_numContactManifolds(this.__wbg_ptr)>>>0}contactManifold(A){let Q=O.rawcontactpair_contactManifold(this.__wbg_ptr,A);return Q===0?void 0:__.__wrap(Q)}}var ut=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawdebugrenderpipeline_free(A>>>0,1));class Fe{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,ut.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawdebugrenderpipeline_free(A,0)}constructor(){let A=O.rawdebugrenderpipeline_new();return this.__wbg_ptr=A>>>0,ut.register(this,this.__wbg_ptr,this),this}vertices(){return rV(O.rawdebugrenderpipeline_vertices(this.__wbg_ptr))}colors(){return rV(O.rawdebugrenderpipeline_colors(this.__wbg_ptr))}render(A,Q,B,Y,J,C,X){try{c(A,C0),c(Q,T0),c(B,iX),c(Y,sX),c(J,LY),O.rawdebugrenderpipeline_render(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C,Z0(X))}finally{VB[iB++]=void 0}}}var dt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawdeserializedworld_free(A>>>0,1));class y_{static __wrap(A){A>>>=0;let Q=Object.create(y_.prototype);return Q.__wbg_ptr=A,dt.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,dt.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawdeserializedworld_free(A,0)}takeGravity(){let A=O.rawdeserializedworld_takeGravity(this.__wbg_ptr);return A===0?void 0:r.__wrap(A)}takeIntegrationParameters(){let A=O.rawdeserializedworld_takeIntegrationParameters(this.__wbg_ptr);return A===0?void 0:wF.__wrap(A)}takeIslandManager(){let A=O.rawdeserializedworld_takeIslandManager(this.__wbg_ptr);return A===0?void 0:nX.__wrap(A)}takeBroadPhase(){let A=O.rawdeserializedworld_takeBroadPhase(this.__wbg_ptr);return A===0?void 0:pX.__wrap(A)}takeNarrowPhase(){let A=O.rawdeserializedworld_takeNarrowPhase(this.__wbg_ptr);return A===0?void 0:LY.__wrap(A)}takeBodies(){let A=O.rawdeserializedworld_takeBodies(this.__wbg_ptr);return A===0?void 0:C0.__wrap(A)}takeColliders(){let A=O.rawdeserializedworld_takeColliders(this.__wbg_ptr);return A===0?void 0:T0.__wrap(A)}takeImpulseJoints(){let A=O.rawdeserializedworld_takeImpulseJoints(this.__wbg_ptr);return A===0?void 0:iX.__wrap(A)}takeMultibodyJoints(){let A=O.rawdeserializedworld_takeMultibodyJoints(this.__wbg_ptr);return A===0?void 0:sX.__wrap(A)}}var ct=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawdynamicraycastvehiclecontroller_free(A>>>0,1));class Ze{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,ct.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawdynamicraycastvehiclecontroller_free(A,0)}constructor(A){let Q=O.rawdynamicraycastvehiclecontroller_new(A);return this.__wbg_ptr=Q>>>0,ct.register(this,this.__wbg_ptr,this),this}current_vehicle_speed(){return O.rawdynamicraycastvehiclecontroller_current_vehicle_speed(this.__wbg_ptr)}chassis(){return O.rawdynamicraycastvehiclecontroller_chassis(this.__wbg_ptr)}index_up_axis(){return O.rawdynamicraycastvehiclecontroller_index_up_axis(this.__wbg_ptr)>>>0}set_index_up_axis(A){O.rawdynamicraycastvehiclecontroller_set_index_up_axis(this.__wbg_ptr,A)}index_forward_axis(){return O.rawdynamicraycastvehiclecontroller_index_forward_axis(this.__wbg_ptr)>>>0}set_index_forward_axis(A){O.rawdynamicraycastvehiclecontroller_set_index_forward_axis(this.__wbg_ptr,A)}add_wheel(A,Q,B,Y,J){c(A,r),c(Q,r),c(B,r),O.rawdynamicraycastvehiclecontroller_add_wheel(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y,J)}num_wheels(){return O.rawdynamicraycastvehiclecontroller_num_wheels(this.__wbg_ptr)>>>0}update_vehicle(A,Q,B,Y,J,C,X,G){try{c(Q,pX),c(B,LY),c(Y,C0),c(J,T0),O.rawdynamicraycastvehiclecontroller_update_vehicle(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C,VQ(X)?4294967297:X>>>0,Z0(G))}finally{VB[iB++]=void 0}}wheel_chassis_connection_point_cs(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_chassis_connection_point_cs(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}set_wheel_chassis_connection_point_cs(A,Q){c(Q,r),O.rawdynamicraycastvehiclecontroller_set_wheel_chassis_connection_point_cs(this.__wbg_ptr,A,Q.__wbg_ptr)}wheel_suspension_rest_length(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_suspension_rest_length(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_suspension_rest_length(A,Q){O.rawdynamicraycastvehiclecontroller_set_wheel_suspension_rest_length(this.__wbg_ptr,A,Q)}wheel_max_suspension_travel(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_max_suspension_travel(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_max_suspension_travel(A,Q){O.rawdynamicraycastvehiclecontroller_set_wheel_max_suspension_travel(this.__wbg_ptr,A,Q)}wheel_radius(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_radius(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_radius(A,Q){O.rawdynamicraycastvehiclecontroller_set_wheel_radius(this.__wbg_ptr,A,Q)}wheel_suspension_stiffness(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_suspension_stiffness(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_suspension_stiffness(A,Q){O.rawdynamicraycastvehiclecontroller_set_wheel_suspension_stiffness(this.__wbg_ptr,A,Q)}wheel_suspension_compression(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_suspension_compression(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_suspension_compression(A,Q){O.rawdynamicraycastvehiclecontroller_set_wheel_suspension_compression(this.__wbg_ptr,A,Q)}wheel_suspension_relaxation(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_suspension_relaxation(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_suspension_relaxation(A,Q){O.rawdynamicraycastvehiclecontroller_set_wheel_suspension_relaxation(this.__wbg_ptr,A,Q)}wheel_max_suspension_force(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_max_suspension_force(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_max_suspension_force(A,Q){O.rawdynamicraycastvehiclecontroller_set_wheel_max_suspension_force(this.__wbg_ptr,A,Q)}wheel_brake(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_brake(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_brake(A,Q){O.rawdynamicraycastvehiclecontroller_set_wheel_brake(this.__wbg_ptr,A,Q)}wheel_steering(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_steering(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_steering(A,Q){O.rawdynamicraycastvehiclecontroller_set_wheel_steering(this.__wbg_ptr,A,Q)}wheel_engine_force(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_engine_force(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_engine_force(A,Q){O.rawdynamicraycastvehiclecontroller_set_wheel_engine_force(this.__wbg_ptr,A,Q)}wheel_direction_cs(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_direction_cs(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}set_wheel_direction_cs(A,Q){c(Q,r),O.rawdynamicraycastvehiclecontroller_set_wheel_direction_cs(this.__wbg_ptr,A,Q.__wbg_ptr)}wheel_axle_cs(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_axle_cs(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}set_wheel_axle_cs(A,Q){c(Q,r),O.rawdynamicraycastvehiclecontroller_set_wheel_axle_cs(this.__wbg_ptr,A,Q.__wbg_ptr)}wheel_friction_slip(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_friction_slip(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_friction_slip(A,Q){O.rawdynamicraycastvehiclecontroller_set_wheel_friction_slip(this.__wbg_ptr,A,Q)}wheel_side_friction_stiffness(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_side_friction_stiffness(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_side_friction_stiffness(A,Q){O.rawdynamicraycastvehiclecontroller_set_wheel_side_friction_stiffness(this.__wbg_ptr,A,Q)}wheel_rotation(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_rotation(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}wheel_forward_impulse(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_forward_impulse(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}wheel_side_impulse(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_side_impulse(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}wheel_suspension_force(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_suspension_force(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}wheel_contact_normal_ws(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_contact_normal_ws(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}wheel_contact_point_ws(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_contact_point_ws(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}wheel_suspension_length(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_suspension_length(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}wheel_hard_point_ws(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_hard_point_ws(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}wheel_is_in_contact(A){return O.rawdynamicraycastvehiclecontroller_wheel_is_in_contact(this.__wbg_ptr,A)!==0}wheel_ground_object(A){try{let Y=O.__wbindgen_add_to_stack_pointer(-16);O.rawdynamicraycastvehiclecontroller_wheel_ground_object(Y,this.__wbg_ptr,A);var Q=NY().getInt32(Y+0,!0),B=NY().getFloat64(Y+8,!0);return Q===0?void 0:B}finally{O.__wbindgen_add_to_stack_pointer(16)}}}var lt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_raweventqueue_free(A>>>0,1));class g_{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,lt.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_raweventqueue_free(A,0)}constructor(A){let Q=O.raweventqueue_new(A);return this.__wbg_ptr=Q>>>0,lt.register(this,this.__wbg_ptr,this),this}drainCollisionEvents(A){try{O.raweventqueue_drainCollisionEvents(this.__wbg_ptr,Z0(A))}finally{VB[iB++]=void 0}}drainContactForceEvents(A){try{O.raweventqueue_drainContactForceEvents(this.__wbg_ptr,Z0(A))}finally{VB[iB++]=void 0}}clear(){O.raweventqueue_clear(this.__wbg_ptr)}}var pt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawgenericjoint_free(A>>>0,1));class uY{static __wrap(A){A>>>=0;let Q=Object.create(uY.prototype);return Q.__wbg_ptr=A,pt.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,pt.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawgenericjoint_free(A,0)}static generic(A,Q,B,Y){c(A,r),c(Q,r),c(B,r);let J=O.rawgenericjoint_generic(A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y);return J===0?void 0:uY.__wrap(J)}static spring(A,Q,B,Y,J){c(Y,r),c(J,r);let C=O.rawgenericjoint_spring(A,Q,B,Y.__wbg_ptr,J.__wbg_ptr);return uY.__wrap(C)}static rope(A,Q,B){c(Q,r),c(B,r);let Y=O.rawgenericjoint_rope(A,Q.__wbg_ptr,B.__wbg_ptr);return uY.__wrap(Y)}static spherical(A,Q){c(A,r),c(Q,r);let B=O.rawgenericjoint_spherical(A.__wbg_ptr,Q.__wbg_ptr);return uY.__wrap(B)}static prismatic(A,Q,B,Y,J,C){c(A,r),c(Q,r),c(B,r);let X=O.rawgenericjoint_prismatic(A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y,J,C);return X===0?void 0:uY.__wrap(X)}static fixed(A,Q,B,Y){c(A,r),c(Q,AB),c(B,r),c(Y,AB);let J=O.rawgenericjoint_fixed(A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr);return uY.__wrap(J)}static revolute(A,Q,B){c(A,r),c(Q,r),c(B,r);let Y=O.rawgenericjoint_revolute(A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr);return Y===0?void 0:uY.__wrap(Y)}}var U_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawimpulsejointset_free(A>>>0,1));class iX{static __wrap(A){A>>>=0;let Q=Object.create(iX.prototype);return Q.__wbg_ptr=A,U_.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,U_.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawimpulsejointset_free(A,0)}jointType(A){return O.rawimpulsejointset_jointType(this.__wbg_ptr,A)}jointBodyHandle1(A){return O.rawimpulsejointset_jointBodyHandle1(this.__wbg_ptr,A)}jointBodyHandle2(A){return O.rawimpulsejointset_jointBodyHandle2(this.__wbg_ptr,A)}jointFrameX1(A){let Q=O.rawimpulsejointset_jointFrameX1(this.__wbg_ptr,A);return AB.__wrap(Q)}jointFrameX2(A){let Q=O.rawimpulsejointset_jointFrameX2(this.__wbg_ptr,A);return AB.__wrap(Q)}jointAnchor1(A){let Q=O.rawimpulsejointset_jointAnchor1(this.__wbg_ptr,A);return r.__wrap(Q)}jointAnchor2(A){let Q=O.rawimpulsejointset_jointAnchor2(this.__wbg_ptr,A);return r.__wrap(Q)}jointSetAnchor1(A,Q){c(Q,r),O.rawimpulsejointset_jointSetAnchor1(this.__wbg_ptr,A,Q.__wbg_ptr)}jointSetAnchor2(A,Q){c(Q,r),O.rawimpulsejointset_jointSetAnchor2(this.__wbg_ptr,A,Q.__wbg_ptr)}jointContactsEnabled(A){return O.rawimpulsejointset_jointContactsEnabled(this.__wbg_ptr,A)!==0}jointSetContactsEnabled(A,Q){O.rawimpulsejointset_jointSetContactsEnabled(this.__wbg_ptr,A,Q)}jointLimitsEnabled(A,Q){return O.rawimpulsejointset_jointLimitsEnabled(this.__wbg_ptr,A,Q)!==0}jointLimitsMin(A,Q){return O.rawimpulsejointset_jointLimitsMin(this.__wbg_ptr,A,Q)}jointLimitsMax(A,Q){return O.rawimpulsejointset_jointLimitsMax(this.__wbg_ptr,A,Q)}jointSetLimits(A,Q,B,Y){O.rawimpulsejointset_jointSetLimits(this.__wbg_ptr,A,Q,B,Y)}jointConfigureMotorModel(A,Q,B){O.rawimpulsejointset_jointConfigureMotorModel(this.__wbg_ptr,A,Q,B)}jointConfigureMotorVelocity(A,Q,B,Y){O.rawimpulsejointset_jointConfigureMotorVelocity(this.__wbg_ptr,A,Q,B,Y)}jointConfigureMotorPosition(A,Q,B,Y,J){O.rawimpulsejointset_jointConfigureMotorPosition(this.__wbg_ptr,A,Q,B,Y,J)}jointConfigureMotor(A,Q,B,Y,J,C){O.rawimpulsejointset_jointConfigureMotor(this.__wbg_ptr,A,Q,B,Y,J,C)}constructor(){let A=O.rawimpulsejointset_new();return this.__wbg_ptr=A>>>0,U_.register(this,this.__wbg_ptr,this),this}createJoint(A,Q,B,Y){return c(A,uY),O.rawimpulsejointset_createJoint(this.__wbg_ptr,A.__wbg_ptr,Q,B,Y)}remove(A,Q){O.rawimpulsejointset_remove(this.__wbg_ptr,A,Q)}len(){return O.rawimpulsejointset_len(this.__wbg_ptr)>>>0}contains(A){return O.rawimpulsejointset_contains(this.__wbg_ptr,A)!==0}forEachJointHandle(A){try{O.rawimpulsejointset_forEachJointHandle(this.__wbg_ptr,Z0(A))}finally{VB[iB++]=void 0}}forEachJointAttachedToRigidBody(A,Q){try{O.rawimpulsejointset_forEachJointAttachedToRigidBody(this.__wbg_ptr,A,Z0(Q))}finally{VB[iB++]=void 0}}}var E_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawintegrationparameters_free(A>>>0,1));class wF{static __wrap(A){A>>>=0;let Q=Object.create(wF.prototype);return Q.__wbg_ptr=A,E_.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,E_.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawintegrationparameters_free(A,0)}constructor(){let A=O.rawintegrationparameters_new();return this.__wbg_ptr=A>>>0,E_.register(this,this.__wbg_ptr,this),this}get dt(){return O.rawintegrationparameters_dt(this.__wbg_ptr)}get contact_erp(){return O.rawintegrationparameters_contact_erp(this.__wbg_ptr)}get normalizedAllowedLinearError(){return O.rawintegrationparameters_normalizedAllowedLinearError(this.__wbg_ptr)}get normalizedPredictionDistance(){return O.rawintegrationparameters_normalizedPredictionDistance(this.__wbg_ptr)}get numSolverIterations(){return O.rawintegrationparameters_numSolverIterations(this.__wbg_ptr)>>>0}get numInternalPgsIterations(){return O.rawdynamicraycastvehiclecontroller_index_up_axis(this.__wbg_ptr)>>>0}get minIslandSize(){return O.rawintegrationparameters_minIslandSize(this.__wbg_ptr)>>>0}get maxCcdSubsteps(){return O.rawintegrationparameters_maxCcdSubsteps(this.__wbg_ptr)>>>0}get lengthUnit(){return O.rawcontactforceevent_total_force_magnitude(this.__wbg_ptr)}set dt(A){O.rawintegrationparameters_set_dt(this.__wbg_ptr,A)}set contact_natural_frequency(A){O.rawintegrationparameters_set_contact_natural_frequency(this.__wbg_ptr,A)}set normalizedAllowedLinearError(A){O.rawintegrationparameters_set_normalizedAllowedLinearError(this.__wbg_ptr,A)}set normalizedPredictionDistance(A){O.rawintegrationparameters_set_normalizedPredictionDistance(this.__wbg_ptr,A)}set numSolverIterations(A){O.rawintegrationparameters_set_numSolverIterations(this.__wbg_ptr,A)}set numInternalPgsIterations(A){O.rawdynamicraycastvehiclecontroller_set_index_up_axis(this.__wbg_ptr,A)}set minIslandSize(A){O.rawintegrationparameters_set_minIslandSize(this.__wbg_ptr,A)}set maxCcdSubsteps(A){O.rawintegrationparameters_set_maxCcdSubsteps(this.__wbg_ptr,A)}set lengthUnit(A){O.rawintegrationparameters_set_lengthUnit(this.__wbg_ptr,A)}}var K_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawislandmanager_free(A>>>0,1));class nX{static __wrap(A){A>>>=0;let Q=Object.create(nX.prototype);return Q.__wbg_ptr=A,K_.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,K_.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawislandmanager_free(A,0)}constructor(){let A=O.rawislandmanager_new();return this.__wbg_ptr=A>>>0,K_.register(this,this.__wbg_ptr,this),this}forEachActiveRigidBodyHandle(A){try{O.rawislandmanager_forEachActiveRigidBodyHandle(this.__wbg_ptr,Z0(A))}finally{VB[iB++]=void 0}}}var it=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawkinematiccharactercontroller_free(A>>>0,1));class $e{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,it.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawkinematiccharactercontroller_free(A,0)}constructor(A){let Q=O.rawkinematiccharactercontroller_new(A);return this.__wbg_ptr=Q>>>0,it.register(this,this.__wbg_ptr,this),this}up(){let A=O.rawcharactercollision_translationDeltaApplied(this.__wbg_ptr);return r.__wrap(A)}setUp(A){c(A,r),O.rawkinematiccharactercontroller_setUp(this.__wbg_ptr,A.__wbg_ptr)}normalNudgeFactor(){return O.rawkinematiccharactercontroller_normalNudgeFactor(this.__wbg_ptr)}setNormalNudgeFactor(A){O.rawkinematiccharactercontroller_setNormalNudgeFactor(this.__wbg_ptr,A)}offset(){return O.rawkinematiccharactercontroller_offset(this.__wbg_ptr)}setOffset(A){O.rawkinematiccharactercontroller_setOffset(this.__wbg_ptr,A)}slideEnabled(){return O.rawkinematiccharactercontroller_slideEnabled(this.__wbg_ptr)!==0}setSlideEnabled(A){O.rawkinematiccharactercontroller_setSlideEnabled(this.__wbg_ptr,A)}autostepMaxHeight(){let A=O.rawkinematiccharactercontroller_autostepMaxHeight(this.__wbg_ptr);return A===4294967297?void 0:A}autostepMinWidth(){let A=O.rawkinematiccharactercontroller_autostepMinWidth(this.__wbg_ptr);return A===4294967297?void 0:A}autostepIncludesDynamicBodies(){let A=O.rawkinematiccharactercontroller_autostepIncludesDynamicBodies(this.__wbg_ptr);return A===16777215?void 0:A!==0}autostepEnabled(){return O.rawkinematiccharactercontroller_autostepEnabled(this.__wbg_ptr)!==0}enableAutostep(A,Q,B){O.rawkinematiccharactercontroller_enableAutostep(this.__wbg_ptr,A,Q,B)}disableAutostep(){O.rawkinematiccharactercontroller_disableAutostep(this.__wbg_ptr)}maxSlopeClimbAngle(){return O.rawkinematiccharactercontroller_maxSlopeClimbAngle(this.__wbg_ptr)}setMaxSlopeClimbAngle(A){O.rawkinematiccharactercontroller_setMaxSlopeClimbAngle(this.__wbg_ptr,A)}minSlopeSlideAngle(){return O.rawkinematiccharactercontroller_minSlopeSlideAngle(this.__wbg_ptr)}setMinSlopeSlideAngle(A){O.rawkinematiccharactercontroller_setMinSlopeSlideAngle(this.__wbg_ptr,A)}snapToGroundDistance(){let A=O.rawkinematiccharactercontroller_snapToGroundDistance(this.__wbg_ptr);return A===4294967297?void 0:A}enableSnapToGround(A){O.rawkinematiccharactercontroller_enableSnapToGround(this.__wbg_ptr,A)}disableSnapToGround(){O.rawkinematiccharactercontroller_disableSnapToGround(this.__wbg_ptr)}snapToGroundEnabled(){return O.rawkinematiccharactercontroller_snapToGroundEnabled(this.__wbg_ptr)!==0}computeColliderMovement(A,Q,B,Y,J,C,X,G,W,F,Z,U){try{c(Q,pX),c(B,LY),c(Y,C0),c(J,T0),c(X,r),O.rawkinematiccharactercontroller_computeColliderMovement(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C,X.__wbg_ptr,G,VQ(W)?4294967297:Math.fround(W),F,VQ(Z)?4294967297:Z>>>0,Z0(U))}finally{VB[iB++]=void 0}}computedMovement(){let A=O.rawkinematiccharactercontroller_computedMovement(this.__wbg_ptr);return r.__wrap(A)}computedGrounded(){return O.rawkinematiccharactercontroller_computedGrounded(this.__wbg_ptr)!==0}numComputedCollisions(){return O.rawkinematiccharactercontroller_numComputedCollisions(this.__wbg_ptr)>>>0}computedCollision(A,Q){return c(Q,S_),O.rawkinematiccharactercontroller_computedCollision(this.__wbg_ptr,A,Q.__wbg_ptr)!==0}}var V_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawmultibodyjointset_free(A>>>0,1));class sX{static __wrap(A){A>>>=0;let Q=Object.create(sX.prototype);return Q.__wbg_ptr=A,V_.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,V_.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawmultibodyjointset_free(A,0)}jointType(A){return O.rawmultibodyjointset_jointType(this.__wbg_ptr,A)}jointFrameX1(A){let Q=O.rawmultibodyjointset_jointFrameX1(this.__wbg_ptr,A);return AB.__wrap(Q)}jointFrameX2(A){let Q=O.rawmultibodyjointset_jointFrameX2(this.__wbg_ptr,A);return AB.__wrap(Q)}jointAnchor1(A){let Q=O.rawmultibodyjointset_jointAnchor1(this.__wbg_ptr,A);return r.__wrap(Q)}jointAnchor2(A){let Q=O.rawmultibodyjointset_jointAnchor2(this.__wbg_ptr,A);return r.__wrap(Q)}jointContactsEnabled(A){return O.rawmultibodyjointset_jointContactsEnabled(this.__wbg_ptr,A)!==0}jointSetContactsEnabled(A,Q){O.rawmultibodyjointset_jointSetContactsEnabled(this.__wbg_ptr,A,Q)}jointLimitsEnabled(A,Q){return O.rawmultibodyjointset_jointLimitsEnabled(this.__wbg_ptr,A,Q)!==0}jointLimitsMin(A,Q){return O.rawmultibodyjointset_jointLimitsMin(this.__wbg_ptr,A,Q)}jointLimitsMax(A,Q){return O.rawmultibodyjointset_jointLimitsMax(this.__wbg_ptr,A,Q)}constructor(){let A=O.rawmultibodyjointset_new();return this.__wbg_ptr=A>>>0,V_.register(this,this.__wbg_ptr,this),this}createJoint(A,Q,B,Y){return c(A,uY),O.rawmultibodyjointset_createJoint(this.__wbg_ptr,A.__wbg_ptr,Q,B,Y)}remove(A,Q){O.rawmultibodyjointset_remove(this.__wbg_ptr,A,Q)}contains(A){return O.rawmultibodyjointset_contains(this.__wbg_ptr,A)!==0}forEachJointHandle(A){try{O.rawmultibodyjointset_forEachJointHandle(this.__wbg_ptr,Z0(A))}finally{VB[iB++]=void 0}}forEachJointAttachedToRigidBody(A,Q){try{O.rawmultibodyjointset_forEachJointAttachedToRigidBody(this.__wbg_ptr,A,Z0(Q))}finally{VB[iB++]=void 0}}}var I_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawnarrowphase_free(A>>>0,1));class LY{static __wrap(A){A>>>=0;let Q=Object.create(LY.prototype);return Q.__wbg_ptr=A,I_.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,I_.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawnarrowphase_free(A,0)}constructor(){let A=O.rawnarrowphase_new();return this.__wbg_ptr=A>>>0,I_.register(this,this.__wbg_ptr,this),this}contact_pairs_with(A,Q){O.rawnarrowphase_contact_pairs_with(this.__wbg_ptr,A,pB(Q))}contact_pair(A,Q){let B=O.rawnarrowphase_contact_pair(this.__wbg_ptr,A,Q);return B===0?void 0:v_.__wrap(B)}intersection_pairs_with(A,Q){O.rawnarrowphase_intersection_pairs_with(this.__wbg_ptr,A,pB(Q))}intersection_pair(A,Q){return O.rawnarrowphase_intersection_pair(this.__wbg_ptr,A,Q)!==0}}var nt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawphysicspipeline_free(A>>>0,1));class Ue{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,nt.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawphysicspipeline_free(A,0)}constructor(){let A=O.rawphysicspipeline_new();return this.__wbg_ptr=A>>>0,nt.register(this,this.__wbg_ptr,this),this}set_profiler_enabled(A){O.rawphysicspipeline_set_profiler_enabled(this.__wbg_ptr,A)}is_profiler_enabled(){return O.rawphysicspipeline_is_profiler_enabled(this.__wbg_ptr)!==0}timing_step(){return O.rawphysicspipeline_timing_step(this.__wbg_ptr)}timing_collision_detection(){return O.rawphysicspipeline_timing_collision_detection(this.__wbg_ptr)}timing_broad_phase(){return O.rawphysicspipeline_timing_broad_phase(this.__wbg_ptr)}timing_narrow_phase(){return O.rawphysicspipeline_timing_narrow_phase(this.__wbg_ptr)}timing_solver(){return O.rawphysicspipeline_timing_solver(this.__wbg_ptr)}timing_velocity_assembly(){return O.rawphysicspipeline_timing_velocity_assembly(this.__wbg_ptr)}timing_velocity_resolution(){return O.rawphysicspipeline_timing_velocity_resolution(this.__wbg_ptr)}timing_velocity_update(){return O.rawphysicspipeline_timing_velocity_update(this.__wbg_ptr)}timing_velocity_writeback(){return O.rawphysicspipeline_timing_velocity_writeback(this.__wbg_ptr)}timing_ccd(){return O.rawphysicspipeline_timing_ccd(this.__wbg_ptr)}timing_ccd_toi_computation(){return O.rawphysicspipeline_timing_ccd_toi_computation(this.__wbg_ptr)}timing_ccd_broad_phase(){return O.rawphysicspipeline_timing_ccd_broad_phase(this.__wbg_ptr)}timing_ccd_narrow_phase(){return O.rawphysicspipeline_timing_ccd_narrow_phase(this.__wbg_ptr)}timing_ccd_solver(){return O.rawphysicspipeline_timing_ccd_solver(this.__wbg_ptr)}timing_island_construction(){return O.rawphysicspipeline_timing_island_construction(this.__wbg_ptr)}timing_user_changes(){return O.rawphysicspipeline_timing_user_changes(this.__wbg_ptr)}step(A,Q,B,Y,J,C,X,G,W,F){c(A,r),c(Q,wF),c(B,nX),c(Y,pX),c(J,LY),c(C,C0),c(X,T0),c(G,iX),c(W,sX),c(F,_M),O.rawphysicspipeline_step(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C.__wbg_ptr,X.__wbg_ptr,G.__wbg_ptr,W.__wbg_ptr,F.__wbg_ptr)}stepWithEvents(A,Q,B,Y,J,C,X,G,W,F,Z,U,$,E){c(A,r),c(Q,wF),c(B,nX),c(Y,pX),c(J,LY),c(C,C0),c(X,T0),c(G,iX),c(W,sX),c(F,_M),c(Z,g_),O.rawphysicspipeline_stepWithEvents(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C.__wbg_ptr,X.__wbg_ptr,G.__wbg_ptr,W.__wbg_ptr,F.__wbg_ptr,Z.__wbg_ptr,pB(U),pB($),pB(E))}}var st=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawpidcontroller_free(A>>>0,1));class Ee{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,st.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawpidcontroller_free(A,0)}constructor(A,Q,B,Y){let J=O.rawpidcontroller_new(A,Q,B,Y);return this.__wbg_ptr=J>>>0,st.register(this,this.__wbg_ptr,this),this}set_kp(A,Q){O.rawpidcontroller_set_kp(this.__wbg_ptr,A,Q)}set_ki(A,Q){O.rawpidcontroller_set_ki(this.__wbg_ptr,A,Q)}set_kd(A,Q){O.rawpidcontroller_set_kd(this.__wbg_ptr,A,Q)}set_axes_mask(A){O.rawpidcontroller_set_axes_mask(this.__wbg_ptr,A)}reset_integrals(){O.rawpidcontroller_reset_integrals(this.__wbg_ptr)}apply_linear_correction(A,Q,B,Y,J){c(Q,C0),c(Y,r),c(J,r),O.rawpidcontroller_apply_linear_correction(this.__wbg_ptr,A,Q.__wbg_ptr,B,Y.__wbg_ptr,J.__wbg_ptr)}apply_angular_correction(A,Q,B,Y,J){c(Q,C0),c(Y,AB),c(J,r),O.rawpidcontroller_apply_angular_correction(this.__wbg_ptr,A,Q.__wbg_ptr,B,Y.__wbg_ptr,J.__wbg_ptr)}linear_correction(A,Q,B,Y,J){c(Q,C0),c(Y,r),c(J,r);let C=O.rawpidcontroller_linear_correction(this.__wbg_ptr,A,Q.__wbg_ptr,B,Y.__wbg_ptr,J.__wbg_ptr);return r.__wrap(C)}angular_correction(A,Q,B,Y,J){c(Q,C0),c(Y,AB),c(J,r);let C=O.rawpidcontroller_angular_correction(this.__wbg_ptr,A,Q.__wbg_ptr,B,Y.__wbg_ptr,J.__wbg_ptr);return r.__wrap(C)}}var rt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawpointcolliderprojection_free(A>>>0,1));class vM{static __wrap(A){A>>>=0;let Q=Object.create(vM.prototype);return Q.__wbg_ptr=A,rt.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,rt.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawpointcolliderprojection_free(A,0)}colliderHandle(){return O.rawpointcolliderprojection_colliderHandle(this.__wbg_ptr)}point(){let A=O.rawpointcolliderprojection_point(this.__wbg_ptr);return r.__wrap(A)}isInside(){return O.rawpointcolliderprojection_isInside(this.__wbg_ptr)!==0}featureType(){return O.rawpointcolliderprojection_featureType(this.__wbg_ptr)}featureId(){let A=O.rawpointcolliderprojection_featureId(this.__wbg_ptr);return A===4294967297?void 0:A}}var at=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawpointprojection_free(A>>>0,1));class pM{static __wrap(A){A>>>=0;let Q=Object.create(pM.prototype);return Q.__wbg_ptr=A,at.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,at.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawpointprojection_free(A,0)}point(){let A=O.rawpointprojection_point(this.__wbg_ptr);return r.__wrap(A)}isInside(){return O.rawpointprojection_isInside(this.__wbg_ptr)!==0}}var ot=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawraycolliderhit_free(A>>>0,1));class h_{static __wrap(A){A>>>=0;let Q=Object.create(h_.prototype);return Q.__wbg_ptr=A,ot.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,ot.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawraycolliderhit_free(A,0)}colliderHandle(){return O.rawcharactercollision_handle(this.__wbg_ptr)}timeOfImpact(){return O.rawcollidershapecasthit_time_of_impact(this.__wbg_ptr)}}var tt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawraycolliderintersection_free(A>>>0,1));class iM{static __wrap(A){A>>>=0;let Q=Object.create(iM.prototype);return Q.__wbg_ptr=A,tt.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,tt.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawraycolliderintersection_free(A,0)}colliderHandle(){return O.rawpointcolliderprojection_colliderHandle(this.__wbg_ptr)}normal(){let A=O.rawcollidershapecasthit_witness1(this.__wbg_ptr);return r.__wrap(A)}time_of_impact(){return O.rawcollidershapecasthit_time_of_impact(this.__wbg_ptr)}featureType(){return O.rawpointcolliderprojection_featureType(this.__wbg_ptr)}featureId(){let A=O.rawpointcolliderprojection_featureId(this.__wbg_ptr);return A===4294967297?void 0:A}}var et=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawrayintersection_free(A>>>0,1));class nM{static __wrap(A){A>>>=0;let Q=Object.create(nM.prototype);return Q.__wbg_ptr=A,et.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,et.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawrayintersection_free(A,0)}normal(){let A=O.rawcollidershapecasthit_witness1(this.__wbg_ptr);return r.__wrap(A)}time_of_impact(){return O.rawcollidershapecasthit_time_of_impact(this.__wbg_ptr)}featureType(){return O.rawpointcolliderprojection_featureType(this.__wbg_ptr)}featureId(){let A=O.rawpointcolliderprojection_featureId(this.__wbg_ptr);return A===4294967297?void 0:A}}var H_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawrigidbodyset_free(A>>>0,1));class C0{static __wrap(A){A>>>=0;let Q=Object.create(C0.prototype);return Q.__wbg_ptr=A,H_.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,H_.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawrigidbodyset_free(A,0)}rbTranslation(A){let Q=O.rawrigidbodyset_rbTranslation(this.__wbg_ptr,A);return r.__wrap(Q)}rbRotation(A){let Q=O.rawrigidbodyset_rbRotation(this.__wbg_ptr,A);return AB.__wrap(Q)}rbSleep(A){O.rawrigidbodyset_rbSleep(this.__wbg_ptr,A)}rbIsSleeping(A){return O.rawrigidbodyset_rbIsSleeping(this.__wbg_ptr,A)!==0}rbIsMoving(A){return O.rawrigidbodyset_rbIsMoving(this.__wbg_ptr,A)!==0}rbNextTranslation(A){let Q=O.rawrigidbodyset_rbNextTranslation(this.__wbg_ptr,A);return r.__wrap(Q)}rbNextRotation(A){let Q=O.rawrigidbodyset_rbNextRotation(this.__wbg_ptr,A);return AB.__wrap(Q)}rbSetTranslation(A,Q,B,Y,J){O.rawrigidbodyset_rbSetTranslation(this.__wbg_ptr,A,Q,B,Y,J)}rbSetRotation(A,Q,B,Y,J,C){O.rawrigidbodyset_rbSetRotation(this.__wbg_ptr,A,Q,B,Y,J,C)}rbSetLinvel(A,Q,B){c(Q,r),O.rawrigidbodyset_rbSetLinvel(this.__wbg_ptr,A,Q.__wbg_ptr,B)}rbSetAngvel(A,Q,B){c(Q,r),O.rawrigidbodyset_rbSetAngvel(this.__wbg_ptr,A,Q.__wbg_ptr,B)}rbSetNextKinematicTranslation(A,Q,B,Y){O.rawrigidbodyset_rbSetNextKinematicTranslation(this.__wbg_ptr,A,Q,B,Y)}rbSetNextKinematicRotation(A,Q,B,Y,J){O.rawrigidbodyset_rbSetNextKinematicRotation(this.__wbg_ptr,A,Q,B,Y,J)}rbRecomputeMassPropertiesFromColliders(A,Q){c(Q,T0),O.rawrigidbodyset_rbRecomputeMassPropertiesFromColliders(this.__wbg_ptr,A,Q.__wbg_ptr)}rbSetAdditionalMass(A,Q,B){O.rawrigidbodyset_rbSetAdditionalMass(this.__wbg_ptr,A,Q,B)}rbSetAdditionalMassProperties(A,Q,B,Y,J,C){c(B,r),c(Y,r),c(J,AB),O.rawrigidbodyset_rbSetAdditionalMassProperties(this.__wbg_ptr,A,Q,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C)}rbLinvel(A){let Q=O.rawrigidbodyset_rbLinvel(this.__wbg_ptr,A);return r.__wrap(Q)}rbAngvel(A){let Q=O.rawrigidbodyset_rbAngvel(this.__wbg_ptr,A);return r.__wrap(Q)}rbVelocityAtPoint(A,Q){c(Q,r);let B=O.rawrigidbodyset_rbVelocityAtPoint(this.__wbg_ptr,A,Q.__wbg_ptr);return r.__wrap(B)}rbLockTranslations(A,Q,B){O.rawrigidbodyset_rbLockTranslations(this.__wbg_ptr,A,Q,B)}rbSetEnabledTranslations(A,Q,B,Y,J){O.rawrigidbodyset_rbSetEnabledTranslations(this.__wbg_ptr,A,Q,B,Y,J)}rbLockRotations(A,Q,B){O.rawrigidbodyset_rbLockRotations(this.__wbg_ptr,A,Q,B)}rbSetEnabledRotations(A,Q,B,Y,J){O.rawrigidbodyset_rbSetEnabledRotations(this.__wbg_ptr,A,Q,B,Y,J)}rbDominanceGroup(A){return O.rawrigidbodyset_rbDominanceGroup(this.__wbg_ptr,A)}rbSetDominanceGroup(A,Q){O.rawrigidbodyset_rbSetDominanceGroup(this.__wbg_ptr,A,Q)}rbEnableCcd(A,Q){O.rawrigidbodyset_rbEnableCcd(this.__wbg_ptr,A,Q)}rbSetSoftCcdPrediction(A,Q){O.rawrigidbodyset_rbSetSoftCcdPrediction(this.__wbg_ptr,A,Q)}rbMass(A){return O.rawrigidbodyset_rbMass(this.__wbg_ptr,A)}rbInvMass(A){return O.rawrigidbodyset_rbInvMass(this.__wbg_ptr,A)}rbEffectiveInvMass(A){let Q=O.rawrigidbodyset_rbEffectiveInvMass(this.__wbg_ptr,A);return r.__wrap(Q)}rbLocalCom(A){let Q=O.rawrigidbodyset_rbLocalCom(this.__wbg_ptr,A);return r.__wrap(Q)}rbWorldCom(A){let Q=O.rawrigidbodyset_rbWorldCom(this.__wbg_ptr,A);return r.__wrap(Q)}rbInvPrincipalInertia(A){let Q=O.rawrigidbodyset_rbInvPrincipalInertia(this.__wbg_ptr,A);return r.__wrap(Q)}rbPrincipalInertiaLocalFrame(A){let Q=O.rawrigidbodyset_rbPrincipalInertiaLocalFrame(this.__wbg_ptr,A);return AB.__wrap(Q)}rbPrincipalInertia(A){let Q=O.rawrigidbodyset_rbPrincipalInertia(this.__wbg_ptr,A);return r.__wrap(Q)}rbEffectiveWorldInvInertia(A){let Q=O.rawrigidbodyset_rbEffectiveWorldInvInertia(this.__wbg_ptr,A);return yM.__wrap(Q)}rbEffectiveAngularInertia(A){let Q=O.rawrigidbodyset_rbEffectiveAngularInertia(this.__wbg_ptr,A);return yM.__wrap(Q)}rbWakeUp(A){O.rawrigidbodyset_rbWakeUp(this.__wbg_ptr,A)}rbIsCcdEnabled(A){return O.rawrigidbodyset_rbIsCcdEnabled(this.__wbg_ptr,A)!==0}rbSoftCcdPrediction(A){return O.rawrigidbodyset_rbSoftCcdPrediction(this.__wbg_ptr,A)}rbNumColliders(A){return O.rawrigidbodyset_rbNumColliders(this.__wbg_ptr,A)>>>0}rbCollider(A,Q){return O.rawrigidbodyset_rbCollider(this.__wbg_ptr,A,Q)}rbBodyType(A){return O.rawrigidbodyset_rbBodyType(this.__wbg_ptr,A)}rbSetBodyType(A,Q,B){O.rawrigidbodyset_rbSetBodyType(this.__wbg_ptr,A,Q,B)}rbIsFixed(A){return O.rawrigidbodyset_rbIsFixed(this.__wbg_ptr,A)!==0}rbIsKinematic(A){return O.rawrigidbodyset_rbIsKinematic(this.__wbg_ptr,A)!==0}rbIsDynamic(A){return O.rawrigidbodyset_rbIsDynamic(this.__wbg_ptr,A)!==0}rbLinearDamping(A){return O.rawrigidbodyset_rbLinearDamping(this.__wbg_ptr,A)}rbAngularDamping(A){return O.rawrigidbodyset_rbAngularDamping(this.__wbg_ptr,A)}rbSetLinearDamping(A,Q){O.rawrigidbodyset_rbSetLinearDamping(this.__wbg_ptr,A,Q)}rbSetAngularDamping(A,Q){O.rawrigidbodyset_rbSetAngularDamping(this.__wbg_ptr,A,Q)}rbSetEnabled(A,Q){O.rawrigidbodyset_rbSetEnabled(this.__wbg_ptr,A,Q)}rbIsEnabled(A){return O.rawrigidbodyset_rbIsEnabled(this.__wbg_ptr,A)!==0}rbGravityScale(A){return O.rawrigidbodyset_rbGravityScale(this.__wbg_ptr,A)}rbSetGravityScale(A,Q,B){O.rawrigidbodyset_rbSetGravityScale(this.__wbg_ptr,A,Q,B)}rbResetForces(A,Q){O.rawrigidbodyset_rbResetForces(this.__wbg_ptr,A,Q)}rbResetTorques(A,Q){O.rawrigidbodyset_rbResetTorques(this.__wbg_ptr,A,Q)}rbAddForce(A,Q,B){c(Q,r),O.rawrigidbodyset_rbAddForce(this.__wbg_ptr,A,Q.__wbg_ptr,B)}rbApplyImpulse(A,Q,B){c(Q,r),O.rawrigidbodyset_rbApplyImpulse(this.__wbg_ptr,A,Q.__wbg_ptr,B)}rbAddTorque(A,Q,B){c(Q,r),O.rawrigidbodyset_rbAddTorque(this.__wbg_ptr,A,Q.__wbg_ptr,B)}rbApplyTorqueImpulse(A,Q,B){c(Q,r),O.rawrigidbodyset_rbApplyTorqueImpulse(this.__wbg_ptr,A,Q.__wbg_ptr,B)}rbAddForceAtPoint(A,Q,B,Y){c(Q,r),c(B,r),O.rawrigidbodyset_rbAddForceAtPoint(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y)}rbApplyImpulseAtPoint(A,Q,B,Y){c(Q,r),c(B,r),O.rawrigidbodyset_rbApplyImpulseAtPoint(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y)}rbAdditionalSolverIterations(A){return O.rawrigidbodyset_rbAdditionalSolverIterations(this.__wbg_ptr,A)>>>0}rbSetAdditionalSolverIterations(A,Q){O.rawrigidbodyset_rbSetAdditionalSolverIterations(this.__wbg_ptr,A,Q)}rbUserData(A){return O.rawrigidbodyset_rbUserData(this.__wbg_ptr,A)>>>0}rbSetUserData(A,Q){O.rawrigidbodyset_rbSetUserData(this.__wbg_ptr,A,Q)}rbUserForce(A){let Q=O.rawrigidbodyset_rbUserForce(this.__wbg_ptr,A);return r.__wrap(Q)}rbUserTorque(A){let Q=O.rawrigidbodyset_rbUserTorque(this.__wbg_ptr,A);return r.__wrap(Q)}constructor(){let A=O.rawrigidbodyset_new();return this.__wbg_ptr=A>>>0,H_.register(this,this.__wbg_ptr,this),this}createRigidBody(A,Q,B,Y,J,C,X,G,W,F,Z,U,$,E,K,I,V,H,D,L,z,M,N,q,w,P){return c(Q,r),c(B,AB),c(X,r),c(G,r),c(W,r),c(F,r),c(Z,AB),O.rawrigidbodyset_createRigidBody(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y,J,C,X.__wbg_ptr,G.__wbg_ptr,W.__wbg_ptr,F.__wbg_ptr,Z.__wbg_ptr,U,$,E,K,I,V,H,D,L,z,M,N,q,w,P)}remove(A,Q,B,Y,J){c(Q,nX),c(B,T0),c(Y,iX),c(J,sX),O.rawrigidbodyset_remove(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr)}len(){return O.rawrigidbodyset_len(this.__wbg_ptr)>>>0}contains(A){return O.rawrigidbodyset_contains(this.__wbg_ptr,A)!==0}forEachRigidBodyHandle(A){try{O.rawrigidbodyset_forEachRigidBodyHandle(this.__wbg_ptr,Z0(A))}finally{VB[iB++]=void 0}}propagateModifiedBodyPositionsToColliders(A){c(A,T0),O.rawrigidbodyset_propagateModifiedBodyPositionsToColliders(this.__wbg_ptr,A.__wbg_ptr)}}var D_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawrotation_free(A>>>0,1));class AB{static __wrap(A){A>>>=0;let Q=Object.create(AB.prototype);return Q.__wbg_ptr=A,D_.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,D_.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawrotation_free(A,0)}constructor(A,Q,B,Y){let J=O.rawrotation_new(A,Q,B,Y);return this.__wbg_ptr=J>>>0,D_.register(this,this.__wbg_ptr,this),this}static identity(){let A=O.rawrotation_identity();return AB.__wrap(A)}get x(){return O.rawintegrationparameters_dt(this.__wbg_ptr)}get y(){return O.rawkinematiccharactercontroller_offset(this.__wbg_ptr)}get z(){return O.rawcollidershapecasthit_time_of_impact(this.__wbg_ptr)}get w(){return O.rawrotation_w(this.__wbg_ptr)}}var Ae=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawsdpmatrix3_free(A>>>0,1));class yM{static __wrap(A){A>>>=0;let Q=Object.create(yM.prototype);return Q.__wbg_ptr=A,Ae.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Ae.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawsdpmatrix3_free(A,0)}elements(){return rV(O.rawsdpmatrix3_elements(this.__wbg_ptr))}}var Qe=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawserializationpipeline_free(A>>>0,1));class Ke{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Qe.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawserializationpipeline_free(A,0)}constructor(){let A=O.rawccdsolver_new();return this.__wbg_ptr=A>>>0,Qe.register(this,this.__wbg_ptr,this),this}serializeAll(A,Q,B,Y,J,C,X,G,W){return c(A,r),c(Q,wF),c(B,nX),c(Y,pX),c(J,LY),c(C,C0),c(X,T0),c(G,iX),c(W,sX),rV(O.rawserializationpipeline_serializeAll(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C.__wbg_ptr,X.__wbg_ptr,G.__wbg_ptr,W.__wbg_ptr))}deserializeAll(A){let Q=O.rawserializationpipeline_deserializeAll(this.__wbg_ptr,pB(A));return Q===0?void 0:y_.__wrap(Q)}}var Be=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawshape_free(A>>>0,1));class UQ{static __wrap(A){A>>>=0;let Q=Object.create(UQ.prototype);return Q.__wbg_ptr=A,Be.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Be.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawshape_free(A,0)}static cuboid(A,Q,B){let Y=O.rawshape_cuboid(A,Q,B);return UQ.__wrap(Y)}static roundCuboid(A,Q,B,Y){let J=O.rawshape_roundCuboid(A,Q,B,Y);return UQ.__wrap(J)}static ball(A){let Q=O.rawshape_ball(A);return UQ.__wrap(Q)}static halfspace(A){c(A,r);let Q=O.rawshape_halfspace(A.__wbg_ptr);return UQ.__wrap(Q)}static capsule(A,Q){let B=O.rawshape_capsule(A,Q);return UQ.__wrap(B)}static cylinder(A,Q){let B=O.rawshape_cylinder(A,Q);return UQ.__wrap(B)}static roundCylinder(A,Q,B){let Y=O.rawshape_roundCylinder(A,Q,B);return UQ.__wrap(Y)}static cone(A,Q){let B=O.rawshape_cone(A,Q);return UQ.__wrap(B)}static roundCone(A,Q,B){let Y=O.rawshape_roundCone(A,Q,B);return UQ.__wrap(Y)}static voxels(A,Q){c(A,r);let B=dV(Q,O.__wbindgen_export_2),Y=lJ,J=O.rawshape_voxels(A.__wbg_ptr,B,Y);return UQ.__wrap(J)}static voxelsFromPoints(A,Q){c(A,r);let B=nG(Q,O.__wbindgen_export_2),Y=lJ,J=O.rawshape_voxelsFromPoints(A.__wbg_ptr,B,Y);return UQ.__wrap(J)}static polyline(A,Q){let B=nG(A,O.__wbindgen_export_2),Y=lJ,J=dV(Q,O.__wbindgen_export_2),C=lJ,X=O.rawshape_polyline(B,Y,J,C);return UQ.__wrap(X)}static trimesh(A,Q,B){let Y=nG(A,O.__wbindgen_export_2),J=lJ,C=dV(Q,O.__wbindgen_export_2),X=lJ,G=O.rawshape_trimesh(Y,J,C,X,B);return G===0?void 0:UQ.__wrap(G)}static heightfield(A,Q,B,Y,J){let C=nG(B,O.__wbindgen_export_2),X=lJ;c(Y,r);let G=O.rawshape_heightfield(A,Q,C,X,Y.__wbg_ptr,J);return UQ.__wrap(G)}static segment(A,Q){c(A,r),c(Q,r);let B=O.rawshape_segment(A.__wbg_ptr,Q.__wbg_ptr);return UQ.__wrap(B)}static triangle(A,Q,B){c(A,r),c(Q,r),c(B,r);let Y=O.rawshape_triangle(A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr);return UQ.__wrap(Y)}static roundTriangle(A,Q,B,Y){c(A,r),c(Q,r),c(B,r);let J=O.rawshape_roundTriangle(A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y);return UQ.__wrap(J)}static convexHull(A){let Q=nG(A,O.__wbindgen_export_2),B=lJ,Y=O.rawshape_convexHull(Q,B);return Y===0?void 0:UQ.__wrap(Y)}static roundConvexHull(A,Q){let B=nG(A,O.__wbindgen_export_2),Y=lJ,J=O.rawshape_roundConvexHull(B,Y,Q);return J===0?void 0:UQ.__wrap(J)}static convexMesh(A,Q){let B=nG(A,O.__wbindgen_export_2),Y=lJ,J=dV(Q,O.__wbindgen_export_2),C=lJ,X=O.rawshape_convexMesh(B,Y,J,C);return X===0?void 0:UQ.__wrap(X)}static roundConvexMesh(A,Q,B){let Y=nG(A,O.__wbindgen_export_2),J=lJ,C=dV(Q,O.__wbindgen_export_2),X=lJ,G=O.rawshape_roundConvexMesh(Y,J,C,X,B);return G===0?void 0:UQ.__wrap(G)}castShape(A,Q,B,Y,J,C,X,G,W,F){c(A,r),c(Q,AB),c(B,r),c(Y,UQ),c(J,r),c(C,AB),c(X,r);let Z=O.rawshape_castShape(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C.__wbg_ptr,X.__wbg_ptr,G,W,F);return Z===0?void 0:sM.__wrap(Z)}intersectsShape(A,Q,B,Y,J){return c(A,r),c(Q,AB),c(B,UQ),c(Y,r),c(J,AB),O.rawshape_intersectsShape(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr)!==0}contactShape(A,Q,B,Y,J,C){c(A,r),c(Q,AB),c(B,UQ),c(Y,r),c(J,AB);let X=O.rawshape_contactShape(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C);return X===0?void 0:aV.__wrap(X)}containsPoint(A,Q,B){return c(A,r),c(Q,AB),c(B,r),O.rawshape_containsPoint(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr)!==0}projectPoint(A,Q,B,Y){c(A,r),c(Q,AB),c(B,r);let J=O.rawshape_projectPoint(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y);return pM.__wrap(J)}intersectsRay(A,Q,B,Y,J){return c(A,r),c(Q,AB),c(B,r),c(Y,r),O.rawshape_intersectsRay(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J)!==0}castRay(A,Q,B,Y,J,C){return c(A,r),c(Q,AB),c(B,r),c(Y,r),O.rawshape_castRay(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J,C)}castRayAndGetNormal(A,Q,B,Y,J,C){c(A,r),c(Q,AB),c(B,r),c(Y,r);let X=O.rawshape_castRayAndGetNormal(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J,C);return X===0?void 0:nM.__wrap(X)}}var Ye=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawshapecasthit_free(A>>>0,1));class sM{static __wrap(A){A>>>=0;let Q=Object.create(sM.prototype);return Q.__wbg_ptr=A,Ye.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Ye.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawshapecasthit_free(A,0)}time_of_impact(){return O.rawintegrationparameters_dt(this.__wbg_ptr)}witness1(){let A=O.rawshapecasthit_witness1(this.__wbg_ptr);return r.__wrap(A)}witness2(){let A=O.rawcontactforceevent_total_force(this.__wbg_ptr);return r.__wrap(A)}normal1(){let A=O.rawshapecasthit_normal1(this.__wbg_ptr);return r.__wrap(A)}normal2(){let A=O.rawshapecasthit_normal2(this.__wbg_ptr);return r.__wrap(A)}}var Je=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawshapecontact_free(A>>>0,1));class aV{static __wrap(A){A>>>=0;let Q=Object.create(aV.prototype);return Q.__wbg_ptr=A,Je.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Je.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawshapecontact_free(A,0)}distance(){return O.rawkinematiccharactercontroller_maxSlopeClimbAngle(this.__wbg_ptr)}point1(){let A=O.rawpointprojection_point(this.__wbg_ptr);return r.__wrap(A)}point2(){let A=O.rawcollidershapecasthit_witness1(this.__wbg_ptr);return r.__wrap(A)}normal1(){let A=O.rawcollidershapecasthit_witness2(this.__wbg_ptr);return r.__wrap(A)}normal2(){let A=O.rawcharactercollision_translationDeltaApplied(this.__wbg_ptr);return r.__wrap(A)}}var N_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawvector_free(A>>>0,1));class r{static __wrap(A){A>>>=0;let Q=Object.create(r.prototype);return Q.__wbg_ptr=A,N_.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,N_.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawvector_free(A,0)}static zero(){let A=O.rawvector_zero();return r.__wrap(A)}constructor(A,Q,B){let Y=O.rawvector_new(A,Q,B);return this.__wbg_ptr=Y>>>0,N_.register(this,this.__wbg_ptr,this),this}get x(){return O.rawintegrationparameters_dt(this.__wbg_ptr)}set x(A){O.rawintegrationparameters_set_dt(this.__wbg_ptr,A)}get y(){return O.rawkinematiccharactercontroller_offset(this.__wbg_ptr)}set y(A){O.rawvector_set_y(this.__wbg_ptr,A)}get z(){return O.rawcollidershapecasthit_time_of_impact(this.__wbg_ptr)}set z(A){O.rawvector_set_z(this.__wbg_ptr,A)}xyz(){let A=O.rawvector_xyz(this.__wbg_ptr);return r.__wrap(A)}yxz(){let A=O.rawvector_yxz(this.__wbg_ptr);return r.__wrap(A)}zxy(){let A=O.rawvector_zxy(this.__wbg_ptr);return r.__wrap(A)}xzy(){let A=O.rawvector_xzy(this.__wbg_ptr);return r.__wrap(A)}yzx(){let A=O.rawvector_yzx(this.__wbg_ptr);return r.__wrap(A)}zyx(){let A=O.rawvector_zyx(this.__wbg_ptr);return r.__wrap(A)}}async function Ve(A){if(O!==void 0)return O;A!==void 0&&(Object.getPrototypeOf(A)===Object.prototype?{module_or_path:A}=A:console.warn("using deprecated parameters for the initialization function; pass a single object instead")),A===void 0&&(A=new URL("rapier_wasm3d_bg.wasm",""));let Q=function(){let J={wbg:{}};return J.wbg.__wbg_bind_c8359b1cba058168=function(C,X,G,W){return pB($B(C).bind($B(X),$B(G),$B(W)))},J.wbg.__wbg_buffer_609cc3eee51ed158=function(C){return pB($B(C).buffer)},J.wbg.__wbg_call_672a4d21634d4a24=function(){return kM(function(C,X){return pB($B(C).call($B(X)))},arguments)},J.wbg.__wbg_call_7cccdd69e0791ae2=function(){return kM(function(C,X,G){return pB($B(C).call($B(X),$B(G)))},arguments)},J.wbg.__wbg_call_833bed5770ea2041=function(){return kM(function(C,X,G,W){return pB($B(C).call($B(X),$B(G),$B(W)))},arguments)},J.wbg.__wbg_call_b8adc8b1d0a0d8eb=function(){return kM(function(C,X,G,W,F){return pB($B(C).call($B(X),$B(G),$B(W),$B(F)))},arguments)},J.wbg.__wbg_length_3b4f022188ae8db6=function(C){return $B(C).length},J.wbg.__wbg_length_a446193dc22c12f8=function(C){return $B(C).length},J.wbg.__wbg_new_a12002a7f91c75be=function(C){return pB(new Uint8Array($B(C)))},J.wbg.__wbg_newnoargs_105ed471475aaf50=function(C,X){return pB(Function(L_(C,X)))},J.wbg.__wbg_newwithbyteoffsetandlength_d97e637ebe145a9a=function(C,X,G){return pB(new Uint8Array($B(C),X>>>0,G>>>0))},J.wbg.__wbg_newwithbyteoffsetandlength_e6b7e69acd4c7354=function(C,X,G){return pB(new Float32Array($B(C),X>>>0,G>>>0))},J.wbg.__wbg_newwithlength_5a5efe313cfd59f1=function(C){return pB(new Float32Array(C>>>0))},J.wbg.__wbg_now_2c95c9de01293173=function(C){return $B(C).now()},J.wbg.__wbg_performance_7a3ffd0b17f663ad=function(C){return pB($B(C).performance)},J.wbg.__wbg_rawcontactforceevent_new=function(C){return pB(k_.__wrap(C))},J.wbg.__wbg_rawraycolliderintersection_new=function(C){return pB(iM.__wrap(C))},J.wbg.__wbg_set_10bad9bee0e9c58b=function(C,X,G){$B(C).set($B(X),G>>>0)},J.wbg.__wbg_set_65595bdd868b3009=function(C,X,G){$B(C).set($B(X),G>>>0)},J.wbg.__wbg_static_accessor_GLOBAL_88a902d13a557d07=function(){let C=typeof global>"u"?null:global;return VQ(C)?0:pB(C)},J.wbg.__wbg_static_accessor_GLOBAL_THIS_56578be7e9f832b0=function(){let C=typeof globalThis>"u"?null:globalThis;return VQ(C)?0:pB(C)},J.wbg.__wbg_static_accessor_SELF_37c5d418e4bf5819=function(){let C=typeof self>"u"?null:self;return VQ(C)?0:pB(C)},J.wbg.__wbg_static_accessor_WINDOW_5de37043a91a9c40=function(){let C=typeof window>"u"?null:window;return VQ(C)?0:pB(C)},J.wbg.__wbindgen_boolean_get=function(C){let X=$B(C);return typeof X=="boolean"?X?1:0:2},J.wbg.__wbindgen_is_function=function(C){return typeof $B(C)=="function"},J.wbg.__wbindgen_is_undefined=function(C){return $B(C)===void 0},J.wbg.__wbindgen_memory=function(){return pB(O.memory)},J.wbg.__wbindgen_number_get=function(C,X){let G=$B(X),W=typeof G=="number"?G:void 0;NY().setFloat64(C+8,VQ(W)?0:W,!0),NY().setInt32(C+0,!VQ(W),!0)},J.wbg.__wbindgen_number_new=function(C){return pB(C)},J.wbg.__wbindgen_object_clone_ref=function(C){return pB($B(C))},J.wbg.__wbindgen_object_drop_ref=function(C){rV(C)},J.wbg.__wbindgen_throw=function(C,X){throw Error(L_(C,X))},J}();(typeof A=="string"||typeof Request=="function"&&A instanceof Request||typeof URL=="function"&&A instanceof URL)&&(A=fetch(A));let{instance:B,module:Y}=await async function(J,C){if(typeof Response=="function"&&J instanceof Response){if(typeof WebAssembly.instantiateStreaming=="function")try{return await WebAssembly.instantiateStreaming(J,C)}catch(G){if(J.headers.get("Content-Type")=="application/wasm")throw G;console.warn("`WebAssembly.instantiateStreaming` failed because your server does not serve Wasm with `application/wasm` MIME type. Falling back to `WebAssembly.instantiate` which is slower. Original error:\n",G)}let X=await J.arrayBuffer();return await WebAssembly.instantiate(X,C)}{let X=await WebAssembly.instantiate(J,C);return X instanceof WebAssembly.Instance?{instance:X,module:J}:X}}(await A,Q);return function(J,C){return O=J.exports,Ve.__wbindgen_wasm_module=C,zF=null,pV=null,lV=null,iV=null,cV=null,O}(B,Y)}class x_{constructor(A,Q,B){this.x=A,this.y=Q,this.z=B}}class a{static new(A,Q,B){return new x_(A,Q,B)}static intoRaw(A){return new r(A.x,A.y,A.z)}static zeros(){return a.new(0,0,0)}static fromRaw(A){if(!A)return null;let Q=a.new(A.x,A.y,A.z);return A.free(),Q}static copy(A,Q){A.x=Q.x,A.y=Q.y,A.z=Q.z}}class gM{constructor(A,Q,B,Y){this.x=A,this.y=Q,this.z=B,this.w=Y}}class hQ{static identity(){return new gM(0,0,0,1)}static fromRaw(A){if(!A)return null;let Q=new gM(A.x,A.y,A.z,A.w);return A.free(),Q}static intoRaw(A){return new AB(A.x,A.y,A.z,A.w)}static copy(A,Q){A.x=Q.x,A.y=Q.y,A.z=Q.z,A.w=Q.w}}class f_{constructor(A){this.elements=A}get m11(){return this.elements[0]}get m12(){return this.elements[1]}get m21(){return this.m12}get m13(){return this.elements[2]}get m31(){return this.m13}get m22(){return this.elements[3]}get m23(){return this.elements[4]}get m32(){return this.m23}get m33(){return this.elements[5]}}class hM{static fromRaw(A){let Q=new f_(A.elements());return A.free(),Q}}var HC,BJ,q_,M_,oV,N4,YY,z_,R_,w_,xM,fM,j_,O_,bM,RF;(function(A){A[A.Dynamic=0]="Dynamic",A[A.Fixed=1]="Fixed",A[A.KinematicPositionBased=2]="KinematicPositionBased",A[A.KinematicVelocityBased=3]="KinematicVelocityBased"})(HC||(HC={}));class mM{constructor(A,Q,B){this.rawSet=A,this.colliderSet=Q,this.handle=B}finalizeDeserialization(A){this.colliderSet=A}isValid(){return this.rawSet.contains(this.handle)}lockTranslations(A,Q){return this.rawSet.rbLockTranslations(this.handle,A,Q)}lockRotations(A,Q){return this.rawSet.rbLockRotations(this.handle,A,Q)}setEnabledTranslations(A,Q,B,Y){return this.rawSet.rbSetEnabledTranslations(this.handle,A,Q,B,Y)}restrictTranslations(A,Q,B,Y){this.setEnabledTranslations(A,Q,B,Y)}setEnabledRotations(A,Q,B,Y){return this.rawSet.rbSetEnabledRotations(this.handle,A,Q,B,Y)}restrictRotations(A,Q,B,Y){this.setEnabledRotations(A,Q,B,Y)}dominanceGroup(){return this.rawSet.rbDominanceGroup(this.handle)}setDominanceGroup(A){this.rawSet.rbSetDominanceGroup(this.handle,A)}additionalSolverIterations(){return this.rawSet.rbAdditionalSolverIterations(this.handle)}setAdditionalSolverIterations(A){this.rawSet.rbSetAdditionalSolverIterations(this.handle,A)}enableCcd(A){this.rawSet.rbEnableCcd(this.handle,A)}setSoftCcdPrediction(A){this.rawSet.rbSetSoftCcdPrediction(this.handle,A)}softCcdPrediction(){return this.rawSet.rbSoftCcdPrediction(this.handle)}translation(){let A=this.rawSet.rbTranslation(this.handle);return a.fromRaw(A)}rotation(){let A=this.rawSet.rbRotation(this.handle);return hQ.fromRaw(A)}nextTranslation(){let A=this.rawSet.rbNextTranslation(this.handle);return a.fromRaw(A)}nextRotation(){let A=this.rawSet.rbNextRotation(this.handle);return hQ.fromRaw(A)}setTranslation(A,Q){this.rawSet.rbSetTranslation(this.handle,A.x,A.y,A.z,Q)}setLinvel(A,Q){let B=a.intoRaw(A);this.rawSet.rbSetLinvel(this.handle,B,Q),B.free()}gravityScale(){return this.rawSet.rbGravityScale(this.handle)}setGravityScale(A,Q){this.rawSet.rbSetGravityScale(this.handle,A,Q)}setRotation(A,Q){this.rawSet.rbSetRotation(this.handle,A.x,A.y,A.z,A.w,Q)}setAngvel(A,Q){let B=a.intoRaw(A);this.rawSet.rbSetAngvel(this.handle,B,Q),B.free()}setNextKinematicTranslation(A){this.rawSet.rbSetNextKinematicTranslation(this.handle,A.x,A.y,A.z)}setNextKinematicRotation(A){this.rawSet.rbSetNextKinematicRotation(this.handle,A.x,A.y,A.z,A.w)}linvel(){return a.fromRaw(this.rawSet.rbLinvel(this.handle))}velocityAtPoint(A){let Q=a.intoRaw(A),B=a.fromRaw(this.rawSet.rbVelocityAtPoint(this.handle,Q));return Q.free(),B}angvel(){return a.fromRaw(this.rawSet.rbAngvel(this.handle))}mass(){return this.rawSet.rbMass(this.handle)}effectiveInvMass(){return a.fromRaw(this.rawSet.rbEffectiveInvMass(this.handle))}invMass(){return this.rawSet.rbInvMass(this.handle)}localCom(){return a.fromRaw(this.rawSet.rbLocalCom(this.handle))}worldCom(){return a.fromRaw(this.rawSet.rbWorldCom(this.handle))}invPrincipalInertia(){return a.fromRaw(this.rawSet.rbInvPrincipalInertia(this.handle))}principalInertia(){return a.fromRaw(this.rawSet.rbPrincipalInertia(this.handle))}principalInertiaLocalFrame(){return hQ.fromRaw(this.rawSet.rbPrincipalInertiaLocalFrame(this.handle))}effectiveWorldInvInertia(){return hM.fromRaw(this.rawSet.rbEffectiveWorldInvInertia(this.handle))}effectiveAngularInertia(){return hM.fromRaw(this.rawSet.rbEffectiveAngularInertia(this.handle))}sleep(){this.rawSet.rbSleep(this.handle)}wakeUp(){this.rawSet.rbWakeUp(this.handle)}isCcdEnabled(){return this.rawSet.rbIsCcdEnabled(this.handle)}numColliders(){return this.rawSet.rbNumColliders(this.handle)}collider(A){return this.colliderSet.get(this.rawSet.rbCollider(this.handle,A))}setEnabled(A){this.rawSet.rbSetEnabled(this.handle,A)}isEnabled(){return this.rawSet.rbIsEnabled(this.handle)}bodyType(){return this.rawSet.rbBodyType(this.handle)}setBodyType(A,Q){return this.rawSet.rbSetBodyType(this.handle,A,Q)}isSleeping(){return this.rawSet.rbIsSleeping(this.handle)}isMoving(){return this.rawSet.rbIsMoving(this.handle)}isFixed(){return this.rawSet.rbIsFixed(this.handle)}isKinematic(){return this.rawSet.rbIsKinematic(this.handle)}isDynamic(){return this.rawSet.rbIsDynamic(this.handle)}linearDamping(){return this.rawSet.rbLinearDamping(this.handle)}angularDamping(){return this.rawSet.rbAngularDamping(this.handle)}setLinearDamping(A){this.rawSet.rbSetLinearDamping(this.handle,A)}recomputeMassPropertiesFromColliders(){this.rawSet.rbRecomputeMassPropertiesFromColliders(this.handle,this.colliderSet.raw)}setAdditionalMass(A,Q){this.rawSet.rbSetAdditionalMass(this.handle,A,Q)}setAdditionalMassProperties(A,Q,B,Y,J){let C=a.intoRaw(Q),X=a.intoRaw(B),G=hQ.intoRaw(Y);this.rawSet.rbSetAdditionalMassProperties(this.handle,A,C,X,G,J),C.free(),X.free(),G.free()}setAngularDamping(A){this.rawSet.rbSetAngularDamping(this.handle,A)}resetForces(A){this.rawSet.rbResetForces(this.handle,A)}resetTorques(A){this.rawSet.rbResetTorques(this.handle,A)}addForce(A,Q){let B=a.intoRaw(A);this.rawSet.rbAddForce(this.handle,B,Q),B.free()}applyImpulse(A,Q){let B=a.intoRaw(A);this.rawSet.rbApplyImpulse(this.handle,B,Q),B.free()}addTorque(A,Q){let B=a.intoRaw(A);this.rawSet.rbAddTorque(this.handle,B,Q),B.free()}applyTorqueImpulse(A,Q){let B=a.intoRaw(A);this.rawSet.rbApplyTorqueImpulse(this.handle,B,Q),B.free()}addForceAtPoint(A,Q,B){let Y=a.intoRaw(A),J=a.intoRaw(Q);this.rawSet.rbAddForceAtPoint(this.handle,Y,J,B),Y.free(),J.free()}applyImpulseAtPoint(A,Q,B){let Y=a.intoRaw(A),J=a.intoRaw(Q);this.rawSet.rbApplyImpulseAtPoint(this.handle,Y,J,B),Y.free(),J.free()}userForce(){return a.fromRaw(this.rawSet.rbUserForce(this.handle))}userTorque(){return a.fromRaw(this.rawSet.rbUserTorque(this.handle))}}class w1{constructor(A){this.enabled=!0,this.status=A,this.translation=a.zeros(),this.rotation=hQ.identity(),this.gravityScale=1,this.linvel=a.zeros(),this.mass=0,this.massOnly=!1,this.centerOfMass=a.zeros(),this.translationsEnabledX=!0,this.translationsEnabledY=!0,this.angvel=a.zeros(),this.principalAngularInertia=a.zeros(),this.angularInertiaLocalFrame=hQ.identity(),this.translationsEnabledZ=!0,this.rotationsEnabledX=!0,this.rotationsEnabledY=!0,this.rotationsEnabledZ=!0,this.linearDamping=0,this.angularDamping=0,this.canSleep=!0,this.sleeping=!1,this.ccdEnabled=!1,this.softCcdPrediction=0,this.dominanceGroup=0,this.additionalSolverIterations=0}static dynamic(){return new w1(HC.Dynamic)}static kinematicPositionBased(){return new w1(HC.KinematicPositionBased)}static kinematicVelocityBased(){return new w1(HC.KinematicVelocityBased)}static fixed(){return new w1(HC.Fixed)}static newDynamic(){return new w1(HC.Dynamic)}static newKinematicPositionBased(){return new w1(HC.KinematicPositionBased)}static newKinematicVelocityBased(){return new w1(HC.KinematicVelocityBased)}static newStatic(){return new w1(HC.Fixed)}setDominanceGroup(A){return this.dominanceGroup=A,this}setAdditionalSolverIterations(A){return this.additionalSolverIterations=A,this}setEnabled(A){return this.enabled=A,this}setTranslation(A,Q,B){if(typeof A!="number"||typeof Q!="number"||typeof B!="number")throw TypeError("The translation components must be numbers.");return this.translation={x:A,y:Q,z:B},this}setRotation(A){return hQ.copy(this.rotation,A),this}setGravityScale(A){return this.gravityScale=A,this}setAdditionalMass(A){return this.mass=A,this.massOnly=!0,this}setLinvel(A,Q,B){if(typeof A!="number"||typeof Q!="number"||typeof B!="number")throw TypeError("The linvel components must be numbers.");return this.linvel={x:A,y:Q,z:B},this}setAngvel(A){return a.copy(this.angvel,A),this}setAdditionalMassProperties(A,Q,B,Y){return this.mass=A,a.copy(this.centerOfMass,Q),a.copy(this.principalAngularInertia,B),hQ.copy(this.angularInertiaLocalFrame,Y),this.massOnly=!1,this}enabledTranslations(A,Q,B){return this.translationsEnabledX=A,this.translationsEnabledY=Q,this.translationsEnabledZ=B,this}restrictTranslations(A,Q,B){return this.enabledTranslations(A,Q,B)}lockTranslations(){return this.enabledTranslations(!1,!1,!1)}enabledRotations(A,Q,B){return this.rotationsEnabledX=A,this.rotationsEnabledY=Q,this.rotationsEnabledZ=B,this}restrictRotations(A,Q,B){return this.enabledRotations(A,Q,B)}lockRotations(){return this.restrictRotations(!1,!1,!1)}setLinearDamping(A){return this.linearDamping=A,this}setAngularDamping(A){return this.angularDamping=A,this}setCanSleep(A){return this.canSleep=A,this}setSleeping(A){return this.sleeping=A,this}setCcdEnabled(A){return this.ccdEnabled=A,this}setSoftCcdPrediction(A){return this.softCcdPrediction=A,this}setUserData(A){return this.userData=A,this}}class BI{constructor(){this.fconv=new Float64Array(1),this.uconv=new Uint32Array(this.fconv.buffer),this.data=[],this.size=0}set(A,Q){let B=this.index(A);for(;this.data.length<=B;)this.data.push(null);this.data[B]==null&&(this.size+=1),this.data[B]=Q}len(){return this.size}delete(A){let Q=this.index(A);QA!=null)}index(A){return this.fconv[0]=A,this.uconv[0]}}class b_{constructor(A){this.raw=A||new C0,this.map=new BI,A&&A.forEachRigidBodyHandle((Q)=>{this.map.set(Q,new mM(A,null,Q))})}free(){this.raw&&this.raw.free(),this.raw=void 0,this.map&&this.map.clear(),this.map=void 0}finalizeDeserialization(A){this.map.forEach((Q)=>Q.finalizeDeserialization(A))}createRigidBody(A,Q){let B=a.intoRaw(Q.translation),Y=hQ.intoRaw(Q.rotation),J=a.intoRaw(Q.linvel),C=a.intoRaw(Q.centerOfMass),X=a.intoRaw(Q.angvel),G=a.intoRaw(Q.principalAngularInertia),W=hQ.intoRaw(Q.angularInertiaLocalFrame),F=this.raw.createRigidBody(Q.enabled,B,Y,Q.gravityScale,Q.mass,Q.massOnly,C,J,X,G,W,Q.translationsEnabledX,Q.translationsEnabledY,Q.translationsEnabledZ,Q.rotationsEnabledX,Q.rotationsEnabledY,Q.rotationsEnabledZ,Q.linearDamping,Q.angularDamping,Q.status,Q.canSleep,Q.sleeping,Q.softCcdPrediction,Q.ccdEnabled,Q.dominanceGroup,Q.additionalSolverIterations);B.free(),Y.free(),J.free(),C.free(),X.free(),G.free(),W.free();let Z=new mM(this.raw,A,F);return Z.userData=Q.userData,this.map.set(F,Z),Z}remove(A,Q,B,Y,J){for(let C=0;CY.unmap(C)),J.forEachJointHandleAttachedToRigidBody(A,(C)=>J.unmap(C)),this.raw.remove(A,Q.raw,B.raw,Y.raw,J.raw),this.map.delete(A)}len(){return this.map.len()}contains(A){return this.get(A)!=null}get(A){return this.map.get(A)}forEach(A){this.map.forEach(A)}forEachActiveRigidBody(A,Q){A.forEachActiveRigidBodyHandle((B)=>{Q(this.get(B))})}getAll(){return this.map.getAll()}}class m_{constructor(A){this.raw=A||new wF}free(){this.raw&&this.raw.free(),this.raw=void 0}get dt(){return this.raw.dt}get contact_erp(){return this.raw.contact_erp}get lengthUnit(){return this.raw.lengthUnit}get normalizedAllowedLinearError(){return this.raw.normalizedAllowedLinearError}get normalizedPredictionDistance(){return this.raw.normalizedPredictionDistance}get numSolverIterations(){return this.raw.numSolverIterations}get numInternalPgsIterations(){return this.raw.numInternalPgsIterations}get minIslandSize(){return this.raw.minIslandSize}get maxCcdSubsteps(){return this.raw.maxCcdSubsteps}set dt(A){this.raw.dt=A}set contact_natural_frequency(A){this.raw.contact_natural_frequency=A}set lengthUnit(A){this.raw.lengthUnit=A}set normalizedAllowedLinearError(A){this.raw.normalizedAllowedLinearError=A}set normalizedPredictionDistance(A){this.raw.normalizedPredictionDistance=A}set numSolverIterations(A){this.raw.numSolverIterations=A}set numInternalPgsIterations(A){this.raw.numInternalPgsIterations=A}set minIslandSize(A){this.raw.minIslandSize=A}set maxCcdSubsteps(A){this.raw.maxCcdSubsteps=A}}(function(A){A[A.Revolute=0]="Revolute",A[A.Fixed=1]="Fixed",A[A.Prismatic=2]="Prismatic",A[A.Rope=3]="Rope",A[A.Spring=4]="Spring",A[A.Spherical=5]="Spherical",A[A.Generic=6]="Generic"})(BJ||(BJ={})),function(A){A[A.AccelerationBased=0]="AccelerationBased",A[A.ForceBased=1]="ForceBased"}(q_||(q_={})),function(A){A[A.LinX=1]="LinX",A[A.LinY=2]="LinY",A[A.LinZ=4]="LinZ",A[A.AngX=8]="AngX",A[A.AngY=16]="AngY",A[A.AngZ=32]="AngZ"}(M_||(M_={}));class NC{constructor(A,Q,B){this.rawSet=A,this.bodySet=Q,this.handle=B}static newTyped(A,Q,B){switch(A.jointType(B)){case DC.Revolute:return new p_(A,Q,B);case DC.Prismatic:return new l_(A,Q,B);case DC.Fixed:return new u_(A,Q,B);case DC.Spring:return new c_(A,Q,B);case DC.Rope:return new d_(A,Q,B);case DC.Spherical:return new n_(A,Q,B);case DC.Generic:return new i_(A,Q,B);default:return new NC(A,Q,B)}}finalizeDeserialization(A){this.bodySet=A}isValid(){return this.rawSet.contains(this.handle)}body1(){return this.bodySet.get(this.rawSet.jointBodyHandle1(this.handle))}body2(){return this.bodySet.get(this.rawSet.jointBodyHandle2(this.handle))}type(){return this.rawSet.jointType(this.handle)}frameX1(){return hQ.fromRaw(this.rawSet.jointFrameX1(this.handle))}frameX2(){return hQ.fromRaw(this.rawSet.jointFrameX2(this.handle))}anchor1(){return a.fromRaw(this.rawSet.jointAnchor1(this.handle))}anchor2(){return a.fromRaw(this.rawSet.jointAnchor2(this.handle))}setAnchor1(A){let Q=a.intoRaw(A);this.rawSet.jointSetAnchor1(this.handle,Q),Q.free()}setAnchor2(A){let Q=a.intoRaw(A);this.rawSet.jointSetAnchor2(this.handle,Q),Q.free()}setContactsEnabled(A){this.rawSet.jointSetContactsEnabled(this.handle,A)}contactsEnabled(){return this.rawSet.jointContactsEnabled(this.handle)}}class rM extends NC{limitsEnabled(){return this.rawSet.jointLimitsEnabled(this.handle,this.rawAxis())}limitsMin(){return this.rawSet.jointLimitsMin(this.handle,this.rawAxis())}limitsMax(){return this.rawSet.jointLimitsMax(this.handle,this.rawAxis())}setLimits(A,Q){this.rawSet.jointSetLimits(this.handle,this.rawAxis(),A,Q)}configureMotorModel(A){this.rawSet.jointConfigureMotorModel(this.handle,this.rawAxis(),A)}configureMotorVelocity(A,Q){this.rawSet.jointConfigureMotorVelocity(this.handle,this.rawAxis(),A,Q)}configureMotorPosition(A,Q,B){this.rawSet.jointConfigureMotorPosition(this.handle,this.rawAxis(),A,Q,B)}configureMotor(A,Q,B,Y){this.rawSet.jointConfigureMotor(this.handle,this.rawAxis(),A,Q,B,Y)}}class u_ extends NC{}class d_ extends NC{}class c_ extends NC{}class l_ extends rM{rawAxis(){return cM.LinX}}class p_ extends rM{rawAxis(){return cM.AngX}}class i_ extends NC{}class n_ extends NC{}class lX{constructor(){}static fixed(A,Q,B,Y){let J=new lX;return J.anchor1=A,J.anchor2=B,J.frame1=Q,J.frame2=Y,J.jointType=BJ.Fixed,J}static spring(A,Q,B,Y,J){let C=new lX;return C.anchor1=Y,C.anchor2=J,C.length=A,C.stiffness=Q,C.damping=B,C.jointType=BJ.Spring,C}static rope(A,Q,B){let Y=new lX;return Y.anchor1=Q,Y.anchor2=B,Y.length=A,Y.jointType=BJ.Rope,Y}static generic(A,Q,B,Y){let J=new lX;return J.anchor1=A,J.anchor2=Q,J.axis=B,J.axesMask=Y,J.jointType=BJ.Generic,J}static spherical(A,Q){let B=new lX;return B.anchor1=A,B.anchor2=Q,B.jointType=BJ.Spherical,B}static prismatic(A,Q,B){let Y=new lX;return Y.anchor1=A,Y.anchor2=Q,Y.axis=B,Y.jointType=BJ.Prismatic,Y}static revolute(A,Q,B){let Y=new lX;return Y.anchor1=A,Y.anchor2=Q,Y.axis=B,Y.jointType=BJ.Revolute,Y}intoRaw(){let A,Q,B=a.intoRaw(this.anchor1),Y=a.intoRaw(this.anchor2),J=!1,C=0,X=0;switch(this.jointType){case BJ.Fixed:let G=hQ.intoRaw(this.frame1),W=hQ.intoRaw(this.frame2);Q=uY.fixed(B,G,Y,W),G.free(),W.free();break;case BJ.Spring:Q=uY.spring(this.length,this.stiffness,this.damping,B,Y);break;case BJ.Rope:Q=uY.rope(this.length,B,Y);break;case BJ.Prismatic:A=a.intoRaw(this.axis),this.limitsEnabled&&(J=!0,C=this.limits[0],X=this.limits[1]),Q=uY.prismatic(B,Y,A,J,C,X),A.free();break;case BJ.Generic:A=a.intoRaw(this.axis);let F=this.axesMask;Q=uY.generic(B,Y,A,F);break;case BJ.Spherical:Q=uY.spherical(B,Y);break;case BJ.Revolute:A=a.intoRaw(this.axis),Q=uY.revolute(B,Y,A),A.free()}return B.free(),Y.free(),Q}}class s_{constructor(A){this.raw=A||new iX,this.map=new BI,A&&A.forEachJointHandle((Q)=>{this.map.set(Q,NC.newTyped(A,null,Q))})}free(){this.raw&&this.raw.free(),this.raw=void 0,this.map&&this.map.clear(),this.map=void 0}finalizeDeserialization(A){this.map.forEach((Q)=>Q.finalizeDeserialization(A))}createJoint(A,Q,B,Y,J){let C=Q.intoRaw(),X=this.raw.createJoint(C,B,Y,J);C.free();let G=NC.newTyped(this.raw,A,X);return this.map.set(X,G),G}remove(A,Q){this.raw.remove(A,Q),this.unmap(A)}forEachJointHandleAttachedToRigidBody(A,Q){this.raw.forEachJointAttachedToRigidBody(A,Q)}unmap(A){this.map.delete(A)}len(){return this.map.len()}contains(A){return this.get(A)!=null}get(A){return this.map.get(A)}forEach(A){this.map.forEach(A)}getAll(){return this.map.getAll()}}class rG{constructor(A,Q){this.rawSet=A,this.handle=Q}static newTyped(A,Q){switch(A.jointType(Q)){case DC.Revolute:return new o_(A,Q);case DC.Prismatic:return new a_(A,Q);case DC.Fixed:return new r_(A,Q);case DC.Spherical:return new t_(A,Q);default:return new rG(A,Q)}}isValid(){return this.rawSet.contains(this.handle)}setContactsEnabled(A){this.rawSet.jointSetContactsEnabled(this.handle,A)}contactsEnabled(){return this.rawSet.jointContactsEnabled(this.handle)}}class aM extends rG{}class r_ extends rG{}class a_ extends aM{rawAxis(){return cM.LinX}}class o_ extends aM{rawAxis(){return cM.AngX}}class t_ extends rG{}class e_{constructor(A){this.raw=A||new sX,this.map=new BI,A&&A.forEachJointHandle((Q)=>{this.map.set(Q,rG.newTyped(this.raw,Q))})}free(){this.raw&&this.raw.free(),this.raw=void 0,this.map&&this.map.clear(),this.map=void 0}createJoint(A,Q,B,Y){let J=A.intoRaw(),C=this.raw.createJoint(J,Q,B,Y);J.free();let X=rG.newTyped(this.raw,C);return this.map.set(C,X),X}remove(A,Q){this.raw.remove(A,Q),this.map.delete(A)}unmap(A){this.map.delete(A)}len(){return this.map.len()}contains(A){return this.get(A)!=null}get(A){return this.map.get(A)}forEach(A){this.map.forEach(A)}forEachJointHandleAttachedToRigidBody(A,Q){this.raw.forEachJointAttachedToRigidBody(A,Q)}getAll(){return this.map.getAll()}}(function(A){A[A.Average=0]="Average",A[A.Min=1]="Min",A[A.Multiply=2]="Multiply",A[A.Max=3]="Max"})(oV||(oV={}));class Av{constructor(A){this.raw=A||new _M}free(){this.raw&&this.raw.free(),this.raw=void 0}}class Qv{constructor(A){this.raw=A||new nX}free(){this.raw&&this.raw.free(),this.raw=void 0}forEachActiveRigidBodyHandle(A){this.raw.forEachActiveRigidBodyHandle(A)}}(function(A){A[A.Vertex=0]="Vertex",A[A.Edge=1]="Edge",A[A.Face=2]="Face",A[A.Unknown=3]="Unknown"})(N4||(N4={}));class Ie{constructor(A,Q){this.origin=A,this.dir=Q}pointAt(A){return{x:this.origin.x+this.dir.x*A,y:this.origin.y+this.dir.y*A,z:this.origin.z+this.dir.z*A}}}class YI{constructor(A,Q,B,Y){this.featureType=N4.Unknown,this.featureId=void 0,this.timeOfImpact=A,this.normal=Q,Y!==void 0&&(this.featureId=Y),B!==void 0&&(this.featureType=B)}static fromRaw(A){if(!A)return null;let Q=new YI(A.time_of_impact(),a.fromRaw(A.normal()),A.featureType(),A.featureId());return A.free(),Q}}class tV{constructor(A,Q,B,Y,J){this.featureType=N4.Unknown,this.featureId=void 0,this.collider=A,this.timeOfImpact=Q,this.normal=B,J!==void 0&&(this.featureId=J),Y!==void 0&&(this.featureType=Y)}static fromRaw(A,Q){if(!Q)return null;let B=new tV(A.get(Q.colliderHandle()),Q.time_of_impact(),a.fromRaw(Q.normal()),Q.featureType(),Q.featureId());return Q.free(),B}}class oM{constructor(A,Q){this.collider=A,this.timeOfImpact=Q}static fromRaw(A,Q){if(!Q)return null;let B=new oM(A.get(Q.colliderHandle()),Q.timeOfImpact());return Q.free(),B}}class JI{constructor(A,Q){this.point=A,this.isInside=Q}static fromRaw(A){if(!A)return null;let Q=new JI(a.fromRaw(A.point()),A.isInside());return A.free(),Q}}class eV{constructor(A,Q,B,Y,J){this.featureType=N4.Unknown,this.featureId=void 0,this.collider=A,this.point=Q,this.isInside=B,J!==void 0&&(this.featureId=J),Y!==void 0&&(this.featureType=Y)}static fromRaw(A,Q){if(!Q)return null;let B=new eV(A.get(Q.colliderHandle()),a.fromRaw(Q.point()),Q.isInside(),Q.featureType(),Q.featureId());return Q.free(),B}}class q4{constructor(A,Q,B,Y,J){this.time_of_impact=A,this.witness1=Q,this.witness2=B,this.normal1=Y,this.normal2=J}static fromRaw(A,Q){if(!Q)return null;let B=new q4(Q.time_of_impact(),a.fromRaw(Q.witness1()),a.fromRaw(Q.witness2()),a.fromRaw(Q.normal1()),a.fromRaw(Q.normal2()));return Q.free(),B}}class CI extends q4{constructor(A,Q,B,Y,J,C){super(Q,B,Y,J,C),this.collider=A}static fromRaw(A,Q){if(!Q)return null;let B=new CI(A.get(Q.colliderHandle()),Q.time_of_impact(),a.fromRaw(Q.witness1()),a.fromRaw(Q.witness2()),a.fromRaw(Q.normal1()),a.fromRaw(Q.normal2()));return Q.free(),B}}class Bv{constructor(A){this.raw=A||new pX}free(){this.raw&&this.raw.free(),this.raw=void 0}castRay(A,Q,B,Y,J,C,X,G,W,F,Z){let U=a.intoRaw(Y.origin),$=a.intoRaw(Y.dir),E=oM.fromRaw(B,this.raw.castRay(A.raw,Q.raw,B.raw,U,$,J,C,X,G,W,F,Z));return U.free(),$.free(),E}castRayAndGetNormal(A,Q,B,Y,J,C,X,G,W,F,Z){let U=a.intoRaw(Y.origin),$=a.intoRaw(Y.dir),E=tV.fromRaw(B,this.raw.castRayAndGetNormal(A.raw,Q.raw,B.raw,U,$,J,C,X,G,W,F,Z));return U.free(),$.free(),E}intersectionsWithRay(A,Q,B,Y,J,C,X,G,W,F,Z,U){let $=a.intoRaw(Y.origin),E=a.intoRaw(Y.dir);this.raw.intersectionsWithRay(A.raw,Q.raw,B.raw,$,E,J,C,(K)=>X(tV.fromRaw(B,K)),G,W,F,Z,U),$.free(),E.free()}intersectionWithShape(A,Q,B,Y,J,C,X,G,W,F,Z){let U=a.intoRaw(Y),$=hQ.intoRaw(J),E=C.intoRaw(),K=this.raw.intersectionWithShape(A.raw,Q.raw,B.raw,U,$,E,X,G,W,F,Z);return U.free(),$.free(),E.free(),K}projectPoint(A,Q,B,Y,J,C,X,G,W,F){let Z=a.intoRaw(Y),U=eV.fromRaw(B,this.raw.projectPoint(A.raw,Q.raw,B.raw,Z,J,C,X,G,W,F));return Z.free(),U}projectPointAndGetFeature(A,Q,B,Y,J,C,X,G,W){let F=a.intoRaw(Y),Z=eV.fromRaw(B,this.raw.projectPointAndGetFeature(A.raw,Q.raw,B.raw,F,J,C,X,G,W));return F.free(),Z}intersectionsWithPoint(A,Q,B,Y,J,C,X,G,W,F){let Z=a.intoRaw(Y);this.raw.intersectionsWithPoint(A.raw,Q.raw,B.raw,Z,J,C,X,G,W,F),Z.free()}castShape(A,Q,B,Y,J,C,X,G,W,F,Z,U,$,E,K){let I=a.intoRaw(Y),V=hQ.intoRaw(J),H=a.intoRaw(C),D=X.intoRaw(),L=CI.fromRaw(B,this.raw.castShape(A.raw,Q.raw,B.raw,I,V,H,D,G,W,F,Z,U,$,E,K));return I.free(),V.free(),H.free(),D.free(),L}intersectionsWithShape(A,Q,B,Y,J,C,X,G,W,F,Z,U){let $=a.intoRaw(Y),E=hQ.intoRaw(J),K=C.intoRaw();this.raw.intersectionsWithShape(A.raw,Q.raw,B.raw,$,E,K,X,G,W,F,Z,U),$.free(),E.free(),K.free()}collidersWithAabbIntersectingAabb(A,Q,B,Y,J,C){let X=a.intoRaw(Y),G=a.intoRaw(J);this.raw.collidersWithAabbIntersectingAabb(A.raw,Q.raw,B.raw,X,G,C),X.free(),G.free()}}class Yv{constructor(A){this.raw=A||new LY,this.tempManifold=new Jv(null)}free(){this.raw&&this.raw.free(),this.raw=void 0}contactPairsWith(A,Q){this.raw.contact_pairs_with(A,Q)}intersectionPairsWith(A,Q){this.raw.intersection_pairs_with(A,Q)}contactPair(A,Q,B){let Y=this.raw.contact_pair(A,Q);if(Y){let J=Y.collider1()!=A,C;for(C=0;CA.free()),this.pidControllers.forEach((A)=>A.free()),this.vehicleControllers.forEach((A)=>A.free()),this.integrationParameters=void 0,this.islands=void 0,this.broadPhase=void 0,this.narrowPhase=void 0,this.bodies=void 0,this.colliders=void 0,this.ccdSolver=void 0,this.impulseJoints=void 0,this.multibodyJoints=void 0,this.physicsPipeline=void 0,this.serializationPipeline=void 0,this.debugRenderPipeline=void 0,this.characterControllers=void 0,this.pidControllers=void 0,this.vehicleControllers=void 0}static fromRaw(A){return A?new Ez(a.fromRaw(A.takeGravity()),A.takeIntegrationParameters(),A.takeIslandManager(),A.takeBroadPhase(),A.takeNarrowPhase(),A.takeBodies(),A.takeColliders(),A.takeImpulseJoints(),A.takeMultibodyJoints()):null}takeSnapshot(){return this.serializationPipeline.serializeAll(this.gravity,this.integrationParameters,this.islands,this.broadPhase,this.narrowPhase,this.bodies,this.colliders,this.impulseJoints,this.multibodyJoints)}static restoreSnapshot(A){return new uM().deserializeAll(A)}debugRender(A,Q){return this.debugRenderPipeline.render(this.bodies,this.colliders,this.impulseJoints,this.multibodyJoints,this.narrowPhase,A,Q),new Gv(this.debugRenderPipeline.vertices,this.debugRenderPipeline.colors)}step(A,Q){this.physicsPipeline.step(this.gravity,this.integrationParameters,this.islands,this.broadPhase,this.narrowPhase,this.bodies,this.colliders,this.impulseJoints,this.multibodyJoints,this.ccdSolver,A,Q)}propagateModifiedBodyPositionsToColliders(){this.bodies.raw.propagateModifiedBodyPositionsToColliders(this.colliders.raw)}get timestep(){return this.integrationParameters.dt}set timestep(A){this.integrationParameters.dt=A}get lengthUnit(){return this.integrationParameters.lengthUnit}set lengthUnit(A){this.integrationParameters.lengthUnit=A}get numSolverIterations(){return this.integrationParameters.numSolverIterations}set numSolverIterations(A){this.integrationParameters.numSolverIterations=A}get numInternalPgsIterations(){return this.integrationParameters.numInternalPgsIterations}set numInternalPgsIterations(A){this.integrationParameters.numInternalPgsIterations=A}get maxCcdSubsteps(){return this.integrationParameters.maxCcdSubsteps}set maxCcdSubsteps(A){this.integrationParameters.maxCcdSubsteps=A}createRigidBody(A){return this.bodies.createRigidBody(this.colliders,A)}createCharacterController(A){let Q=new Zv(A,this.integrationParameters,this.broadPhase,this.narrowPhase,this.bodies,this.colliders);return this.characterControllers.add(Q),Q}removeCharacterController(A){this.characterControllers.delete(A),A.free()}createPidController(A,Q,B,Y){let J=new $v(this.integrationParameters,this.bodies,A,Q,B,Y);return this.pidControllers.add(J),J}removePidController(A){this.pidControllers.delete(A),A.free()}createVehicleController(A){let Q=new Uv(A,this.broadPhase,this.narrowPhase,this.bodies,this.colliders);return this.vehicleControllers.add(Q),Q}removeVehicleController(A){this.vehicleControllers.delete(A),A.free()}createCollider(A,Q){let B=Q?Q.handle:void 0;return this.colliders.createCollider(this.bodies,A,B)}createImpulseJoint(A,Q,B,Y){return this.impulseJoints.createJoint(this.bodies,A,Q.handle,B.handle,Y)}createMultibodyJoint(A,Q,B,Y){return this.multibodyJoints.createJoint(A,Q.handle,B.handle,Y)}getRigidBody(A){return this.bodies.get(A)}getCollider(A){return this.colliders.get(A)}getImpulseJoint(A){return this.impulseJoints.get(A)}getMultibodyJoint(A){return this.multibodyJoints.get(A)}removeRigidBody(A){this.bodies&&this.bodies.remove(A.handle,this.islands,this.colliders,this.impulseJoints,this.multibodyJoints)}removeCollider(A,Q){this.colliders&&this.colliders.remove(A.handle,this.islands,this.bodies,Q)}removeImpulseJoint(A,Q){this.impulseJoints&&this.impulseJoints.remove(A.handle,Q)}removeMultibodyJoint(A,Q){this.impulseJoints&&this.multibodyJoints.remove(A.handle,Q)}forEachCollider(A){this.colliders.forEach(A)}forEachRigidBody(A){this.bodies.forEach(A)}forEachActiveRigidBody(A){this.bodies.forEachActiveRigidBody(this.islands,A)}castRay(A,Q,B,Y,J,C,X,G){return this.broadPhase.castRay(this.narrowPhase,this.bodies,this.colliders,A,Q,B,Y,J,C?C.handle:null,X?X.handle:null,this.colliders.castClosure(G))}castRayAndGetNormal(A,Q,B,Y,J,C,X,G){return this.broadPhase.castRayAndGetNormal(this.narrowPhase,this.bodies,this.colliders,A,Q,B,Y,J,C?C.handle:null,X?X.handle:null,this.colliders.castClosure(G))}intersectionsWithRay(A,Q,B,Y,J,C,X,G,W){this.broadPhase.intersectionsWithRay(this.narrowPhase,this.bodies,this.colliders,A,Q,B,Y,J,C,X?X.handle:null,G?G.handle:null,this.colliders.castClosure(W))}intersectionWithShape(A,Q,B,Y,J,C,X,G){let W=this.broadPhase.intersectionWithShape(this.narrowPhase,this.bodies,this.colliders,A,Q,B,Y,J,C?C.handle:null,X?X.handle:null,this.colliders.castClosure(G));return W!=null?this.colliders.get(W):null}projectPoint(A,Q,B,Y,J,C,X){return this.broadPhase.projectPoint(this.narrowPhase,this.bodies,this.colliders,A,Q,B,Y,J?J.handle:null,C?C.handle:null,this.colliders.castClosure(X))}projectPointAndGetFeature(A,Q,B,Y,J,C){return this.broadPhase.projectPointAndGetFeature(this.narrowPhase,this.bodies,this.colliders,A,Q,B,Y?Y.handle:null,J?J.handle:null,this.colliders.castClosure(C))}intersectionsWithPoint(A,Q,B,Y,J,C,X){this.broadPhase.intersectionsWithPoint(this.narrowPhase,this.bodies,this.colliders,A,this.colliders.castClosure(Q),B,Y,J?J.handle:null,C?C.handle:null,this.colliders.castClosure(X))}castShape(A,Q,B,Y,J,C,X,G,W,F,Z,U){return this.broadPhase.castShape(this.narrowPhase,this.bodies,this.colliders,A,Q,B,Y,J,C,X,G,W,F?F.handle:null,Z?Z.handle:null,this.colliders.castClosure(U))}intersectionsWithShape(A,Q,B,Y,J,C,X,G,W){this.broadPhase.intersectionsWithShape(this.narrowPhase,this.bodies,this.colliders,A,Q,B,this.colliders.castClosure(Y),J,C,X?X.handle:null,G?G.handle:null,this.colliders.castClosure(W))}collidersWithAabbIntersectingAabb(A,Q,B){this.broadPhase.collidersWithAabbIntersectingAabb(this.narrowPhase,this.bodies,this.colliders,A,Q,this.colliders.castClosure(B))}contactPairsWith(A,Q){this.narrowPhase.contactPairsWith(A.handle,this.colliders.castClosure(Q))}intersectionPairsWith(A,Q){this.narrowPhase.intersectionPairsWith(A.handle,this.colliders.castClosure(Q))}contactPair(A,Q,B){this.narrowPhase.contactPair(A.handle,Q.handle,B)}intersectionPair(A,Q){return this.narrowPhase.intersectionPair(A.handle,Q.handle)}set profilerEnabled(A){this.physicsPipeline.raw.set_profiler_enabled(A)}get profilerEnabled(){return this.physicsPipeline.raw.is_profiler_enabled()}timingStep(){return this.physicsPipeline.raw.timing_step()}timingCollisionDetection(){return this.physicsPipeline.raw.timing_collision_detection()}timingBroadPhase(){return this.physicsPipeline.raw.timing_broad_phase()}timingNarrowPhase(){return this.physicsPipeline.raw.timing_narrow_phase()}timingSolver(){return this.physicsPipeline.raw.timing_solver()}timingVelocityAssembly(){return this.physicsPipeline.raw.timing_velocity_assembly()}timingVelocityResolution(){return this.physicsPipeline.raw.timing_velocity_resolution()}timingVelocityUpdate(){return this.physicsPipeline.raw.timing_velocity_update()}timingVelocityWriteback(){return this.physicsPipeline.raw.timing_velocity_writeback()}timingCcd(){return this.physicsPipeline.raw.timing_ccd()}timingCcdToiComputation(){return this.physicsPipeline.raw.timing_ccd_toi_computation()}timingCcdBroadPhase(){return this.physicsPipeline.raw.timing_ccd_broad_phase()}timingCcdNarrowPhase(){return this.physicsPipeline.raw.timing_ccd_narrow_phase()}timingCcdSolver(){return this.physicsPipeline.raw.timing_ccd_solver()}timingIslandConstruction(){return this.physicsPipeline.raw.timing_island_construction()}timingUserChanges(){return this.physicsPipeline.raw.timing_user_changes()}}(function(A){A[A.NONE=0]="NONE",A[A.COLLISION_EVENTS=1]="COLLISION_EVENTS",A[A.CONTACT_FORCE_EVENTS=2]="CONTACT_FORCE_EVENTS"})(xM||(xM={}));class Ev{free(){this.raw&&this.raw.free(),this.raw=void 0}collider1(){return this.raw.collider1()}collider2(){return this.raw.collider2()}totalForce(){return a.fromRaw(this.raw.total_force())}totalForceMagnitude(){return this.raw.total_force_magnitude()}maxForceDirection(){return a.fromRaw(this.raw.max_force_direction())}maxForceMagnitude(){return this.raw.max_force_magnitude()}}class He{constructor(A,Q){this.raw=Q||new g_(A)}free(){this.raw&&this.raw.free(),this.raw=void 0}drainCollisionEvents(A){this.raw.drainCollisionEvents(A)}drainContactForceEvents(A){let Q=new Ev;this.raw.drainContactForceEvents((B)=>{Q.raw=B,A(Q),Q.free()})}clear(){this.raw.clear()}}(function(A){A[A.NONE=0]="NONE",A[A.FILTER_CONTACT_PAIRS=1]="FILTER_CONTACT_PAIRS",A[A.FILTER_INTERSECTION_PAIRS=2]="FILTER_INTERSECTION_PAIRS"})(fM||(fM={})),function(A){A[A.EMPTY=0]="EMPTY",A[A.COMPUTE_IMPULSE=1]="COMPUTE_IMPULSE"}(j_||(j_={})),function(A){A[A.EXCLUDE_FIXED=1]="EXCLUDE_FIXED",A[A.EXCLUDE_KINEMATIC=2]="EXCLUDE_KINEMATIC",A[A.EXCLUDE_DYNAMIC=4]="EXCLUDE_DYNAMIC",A[A.EXCLUDE_SENSORS=8]="EXCLUDE_SENSORS",A[A.EXCLUDE_SOLIDS=16]="EXCLUDE_SOLIDS",A[A.ONLY_DYNAMIC=3]="ONLY_DYNAMIC",A[A.ONLY_KINEMATIC=5]="ONLY_KINEMATIC",A[A.ONLY_FIXED=6]="ONLY_FIXED"}(O_||(O_={})),function(A){A[A.DYNAMIC_DYNAMIC=1]="DYNAMIC_DYNAMIC",A[A.DYNAMIC_KINEMATIC=12]="DYNAMIC_KINEMATIC",A[A.DYNAMIC_FIXED=2]="DYNAMIC_FIXED",A[A.KINEMATIC_KINEMATIC=52224]="KINEMATIC_KINEMATIC",A[A.KINEMATIC_FIXED=8704]="KINEMATIC_FIXED",A[A.FIXED_FIXED=32]="FIXED_FIXED",A[A.DEFAULT=15]="DEFAULT",A[A.ALL=60943]="ALL"}(bM||(bM={}));class dM{constructor(A,Q,B,Y){this.colliderSet=A,this.handle=Q,this._parent=B,this._shape=Y}finalizeDeserialization(A){this.handle!=null&&(this._parent=A.get(this.colliderSet.raw.coParent(this.handle)))}ensureShapeIsCached(){this._shape||(this._shape=JY.fromRaw(this.colliderSet.raw,this.handle))}get shape(){return this.ensureShapeIsCached(),this._shape}clearShapeCache(){this._shape=null}isValid(){return this.colliderSet.raw.contains(this.handle)}translation(){return a.fromRaw(this.colliderSet.raw.coTranslation(this.handle))}translationWrtParent(){return a.fromRaw(this.colliderSet.raw.coTranslationWrtParent(this.handle))}rotation(){return hQ.fromRaw(this.colliderSet.raw.coRotation(this.handle))}rotationWrtParent(){return hQ.fromRaw(this.colliderSet.raw.coRotationWrtParent(this.handle))}isSensor(){return this.colliderSet.raw.coIsSensor(this.handle)}setSensor(A){this.colliderSet.raw.coSetSensor(this.handle,A)}setShape(A){let Q=A.intoRaw();this.colliderSet.raw.coSetShape(this.handle,Q),Q.free(),this._shape=A}setEnabled(A){this.colliderSet.raw.coSetEnabled(this.handle,A)}isEnabled(){return this.colliderSet.raw.coIsEnabled(this.handle)}setRestitution(A){this.colliderSet.raw.coSetRestitution(this.handle,A)}setFriction(A){this.colliderSet.raw.coSetFriction(this.handle,A)}frictionCombineRule(){return this.colliderSet.raw.coFrictionCombineRule(this.handle)}setFrictionCombineRule(A){this.colliderSet.raw.coSetFrictionCombineRule(this.handle,A)}restitutionCombineRule(){return this.colliderSet.raw.coRestitutionCombineRule(this.handle)}setRestitutionCombineRule(A){this.colliderSet.raw.coSetRestitutionCombineRule(this.handle,A)}setCollisionGroups(A){this.colliderSet.raw.coSetCollisionGroups(this.handle,A)}setSolverGroups(A){this.colliderSet.raw.coSetSolverGroups(this.handle,A)}contactSkin(){return this.colliderSet.raw.coContactSkin(this.handle)}setContactSkin(A){return this.colliderSet.raw.coSetContactSkin(this.handle,A)}activeHooks(){return this.colliderSet.raw.coActiveHooks(this.handle)}setActiveHooks(A){this.colliderSet.raw.coSetActiveHooks(this.handle,A)}activeEvents(){return this.colliderSet.raw.coActiveEvents(this.handle)}setActiveEvents(A){this.colliderSet.raw.coSetActiveEvents(this.handle,A)}activeCollisionTypes(){return this.colliderSet.raw.coActiveCollisionTypes(this.handle)}setContactForceEventThreshold(A){return this.colliderSet.raw.coSetContactForceEventThreshold(this.handle,A)}contactForceEventThreshold(){return this.colliderSet.raw.coContactForceEventThreshold(this.handle)}setActiveCollisionTypes(A){this.colliderSet.raw.coSetActiveCollisionTypes(this.handle,A)}setDensity(A){this.colliderSet.raw.coSetDensity(this.handle,A)}setMass(A){this.colliderSet.raw.coSetMass(this.handle,A)}setMassProperties(A,Q,B,Y){let J=a.intoRaw(Q),C=a.intoRaw(B),X=hQ.intoRaw(Y);this.colliderSet.raw.coSetMassProperties(this.handle,A,J,C,X),J.free(),C.free(),X.free()}setTranslation(A){this.colliderSet.raw.coSetTranslation(this.handle,A.x,A.y,A.z)}setTranslationWrtParent(A){this.colliderSet.raw.coSetTranslationWrtParent(this.handle,A.x,A.y,A.z)}setRotation(A){this.colliderSet.raw.coSetRotation(this.handle,A.x,A.y,A.z,A.w)}setRotationWrtParent(A){this.colliderSet.raw.coSetRotationWrtParent(this.handle,A.x,A.y,A.z,A.w)}shapeType(){return this.colliderSet.raw.coShapeType(this.handle)}halfExtents(){return a.fromRaw(this.colliderSet.raw.coHalfExtents(this.handle))}setHalfExtents(A){let Q=a.intoRaw(A);this.colliderSet.raw.coSetHalfExtents(this.handle,Q)}radius(){return this.colliderSet.raw.coRadius(this.handle)}setRadius(A){this.colliderSet.raw.coSetRadius(this.handle,A)}roundRadius(){return this.colliderSet.raw.coRoundRadius(this.handle)}setRoundRadius(A){this.colliderSet.raw.coSetRoundRadius(this.handle,A)}halfHeight(){return this.colliderSet.raw.coHalfHeight(this.handle)}setHalfHeight(A){this.colliderSet.raw.coSetHalfHeight(this.handle,A)}setVoxel(A,Q,B,Y){this.colliderSet.raw.coSetVoxel(this.handle,A,Q,B,Y),this._shape=null}propagateVoxelChange(A,Q,B,Y,J,C,X){this.colliderSet.raw.coPropagateVoxelChange(this.handle,A.handle,Q,B,Y,J,C,X),this._shape=null}combineVoxelStates(A,Q,B,Y){this.colliderSet.raw.coCombineVoxelStates(this.handle,A.handle,Q,B,Y),this._shape=null}vertices(){return this.colliderSet.raw.coVertices(this.handle)}indices(){return this.colliderSet.raw.coIndices(this.handle)}heightfieldHeights(){return this.colliderSet.raw.coHeightfieldHeights(this.handle)}heightfieldScale(){let A=this.colliderSet.raw.coHeightfieldScale(this.handle);return a.fromRaw(A)}heightfieldNRows(){return this.colliderSet.raw.coHeightfieldNRows(this.handle)}heightfieldNCols(){return this.colliderSet.raw.coHeightfieldNCols(this.handle)}parent(){return this._parent}friction(){return this.colliderSet.raw.coFriction(this.handle)}restitution(){return this.colliderSet.raw.coRestitution(this.handle)}density(){return this.colliderSet.raw.coDensity(this.handle)}mass(){return this.colliderSet.raw.coMass(this.handle)}volume(){return this.colliderSet.raw.coVolume(this.handle)}collisionGroups(){return this.colliderSet.raw.coCollisionGroups(this.handle)}solverGroups(){return this.colliderSet.raw.coSolverGroups(this.handle)}containsPoint(A){let Q=a.intoRaw(A),B=this.colliderSet.raw.coContainsPoint(this.handle,Q);return Q.free(),B}projectPoint(A,Q){let B=a.intoRaw(A),Y=JI.fromRaw(this.colliderSet.raw.coProjectPoint(this.handle,B,Q));return B.free(),Y}intersectsRay(A,Q){let B=a.intoRaw(A.origin),Y=a.intoRaw(A.dir),J=this.colliderSet.raw.coIntersectsRay(this.handle,B,Y,Q);return B.free(),Y.free(),J}castShape(A,Q,B,Y,J,C,X,G){let W=a.intoRaw(A),F=a.intoRaw(B),Z=hQ.intoRaw(Y),U=a.intoRaw(J),$=Q.intoRaw(),E=q4.fromRaw(this.colliderSet,this.colliderSet.raw.coCastShape(this.handle,W,$,F,Z,U,C,X,G));return W.free(),F.free(),Z.free(),U.free(),$.free(),E}castCollider(A,Q,B,Y,J,C){let X=a.intoRaw(A),G=a.intoRaw(B),W=CI.fromRaw(this.colliderSet,this.colliderSet.raw.coCastCollider(this.handle,X,Q.handle,G,Y,J,C));return X.free(),G.free(),W}intersectsShape(A,Q,B){let Y=a.intoRaw(Q),J=hQ.intoRaw(B),C=A.intoRaw(),X=this.colliderSet.raw.coIntersectsShape(this.handle,C,Y,J);return Y.free(),J.free(),C.free(),X}contactShape(A,Q,B,Y){let J=a.intoRaw(Q),C=hQ.intoRaw(B),X=A.intoRaw(),G=L4.fromRaw(this.colliderSet.raw.coContactShape(this.handle,X,J,C,Y));return J.free(),C.free(),X.free(),G}contactCollider(A,Q){return L4.fromRaw(this.colliderSet.raw.coContactCollider(this.handle,A.handle,Q))}castRay(A,Q,B){let Y=a.intoRaw(A.origin),J=a.intoRaw(A.dir),C=this.colliderSet.raw.coCastRay(this.handle,Y,J,Q,B);return Y.free(),J.free(),C}castRayAndGetNormal(A,Q,B){let Y=a.intoRaw(A.origin),J=a.intoRaw(A.dir),C=YI.fromRaw(this.colliderSet.raw.coCastRayAndGetNormal(this.handle,Y,J,Q,B));return Y.free(),J.free(),C}}(function(A){A[A.Density=0]="Density",A[A.Mass=1]="Mass",A[A.MassProps=2]="MassProps"})(RF||(RF={}));class BY{constructor(A){this.enabled=!0,this.shape=A,this.massPropsMode=RF.Density,this.density=1,this.friction=0.5,this.restitution=0,this.rotation=hQ.identity(),this.translation=a.zeros(),this.isSensor=!1,this.collisionGroups=4294967295,this.solverGroups=4294967295,this.frictionCombineRule=oV.Average,this.restitutionCombineRule=oV.Average,this.activeCollisionTypes=bM.DEFAULT,this.activeEvents=xM.NONE,this.activeHooks=fM.NONE,this.mass=0,this.centerOfMass=a.zeros(),this.contactForceEventThreshold=0,this.contactSkin=0,this.principalAngularInertia=a.zeros(),this.angularInertiaLocalFrame=hQ.identity()}static ball(A){let Q=new tM(A);return new BY(Q)}static capsule(A,Q){let B=new Qz(A,Q);return new BY(B)}static segment(A,Q){let B=new Bz(A,Q);return new BY(B)}static triangle(A,Q,B){let Y=new Yz(A,Q,B);return new BY(Y)}static roundTriangle(A,Q,B,Y){let J=new Jz(A,Q,B,Y);return new BY(J)}static polyline(A,Q){let B=new Cz(A,Q);return new BY(B)}static voxels(A,Q){let B=new Xz(A,Q);return new BY(B)}static trimesh(A,Q,B){let Y=new Gz(A,Q,B);return new BY(Y)}static cuboid(A,Q,B){let Y=new eM(A,Q,B);return new BY(Y)}static roundCuboid(A,Q,B,Y){let J=new Az(A,Q,B,Y);return new BY(J)}static heightfield(A,Q,B,Y,J){let C=new Wz(A,Q,B,Y,J);return new BY(C)}static cylinder(A,Q){let B=new Fz(A,Q);return new BY(B)}static roundCylinder(A,Q,B){let Y=new Zz(A,Q,B);return new BY(Y)}static cone(A,Q){let B=new $z(A,Q);return new BY(B)}static roundCone(A,Q,B){let Y=new Uz(A,Q,B);return new BY(Y)}static convexHull(A){let Q=new AI(A,null);return new BY(Q)}static convexMesh(A,Q){let B=new AI(A,Q);return new BY(B)}static roundConvexHull(A,Q){let B=new QI(A,null,Q);return new BY(B)}static roundConvexMesh(A,Q,B){let Y=new QI(A,Q,B);return new BY(Y)}setTranslation(A,Q,B){if(typeof A!="number"||typeof Q!="number"||typeof B!="number")throw TypeError("The translation components must be numbers.");return this.translation={x:A,y:Q,z:B},this}setRotation(A){return hQ.copy(this.rotation,A),this}setSensor(A){return this.isSensor=A,this}setEnabled(A){return this.enabled=A,this}setContactSkin(A){return this.contactSkin=A,this}setDensity(A){return this.massPropsMode=RF.Density,this.density=A,this}setMass(A){return this.massPropsMode=RF.Mass,this.mass=A,this}setMassProperties(A,Q,B,Y){return this.massPropsMode=RF.MassProps,this.mass=A,a.copy(this.centerOfMass,Q),a.copy(this.principalAngularInertia,B),hQ.copy(this.angularInertiaLocalFrame,Y),this}setRestitution(A){return this.restitution=A,this}setFriction(A){return this.friction=A,this}setFrictionCombineRule(A){return this.frictionCombineRule=A,this}setRestitutionCombineRule(A){return this.restitutionCombineRule=A,this}setCollisionGroups(A){return this.collisionGroups=A,this}setSolverGroups(A){return this.solverGroups=A,this}setActiveHooks(A){return this.activeHooks=A,this}setActiveEvents(A){return this.activeEvents=A,this}setActiveCollisionTypes(A){return this.activeCollisionTypes=A,this}setContactForceEventThreshold(A){return this.contactForceEventThreshold=A,this}}class Kv{constructor(A){this.raw=A||new T0,this.map=new BI,A&&A.forEachColliderHandle((Q)=>{this.map.set(Q,new dM(this,Q,null))})}free(){this.raw&&this.raw.free(),this.raw=void 0,this.map&&this.map.clear(),this.map=void 0}castClosure(A){return(Q)=>A?A(this.get(Q)):void 0}finalizeDeserialization(A){this.map.forEach((Q)=>Q.finalizeDeserialization(A))}createCollider(A,Q,B){let Y=B!=null&&B!=null;if(Y&&isNaN(B))throw Error("Cannot create a collider with a parent rigid-body handle that is not a number.");let J=Q.shape.intoRaw(),C=a.intoRaw(Q.translation),X=hQ.intoRaw(Q.rotation),G=a.intoRaw(Q.centerOfMass),W=a.intoRaw(Q.principalAngularInertia),F=hQ.intoRaw(Q.angularInertiaLocalFrame),Z=this.raw.createCollider(Q.enabled,J,C,X,Q.massPropsMode,Q.mass,G,W,F,Q.density,Q.friction,Q.restitution,Q.frictionCombineRule,Q.restitutionCombineRule,Q.isSensor,Q.collisionGroups,Q.solverGroups,Q.activeCollisionTypes,Q.activeHooks,Q.activeEvents,Q.contactForceEventThreshold,Q.contactSkin,Y,Y?B:0,A.raw);J.free(),C.free(),X.free(),G.free(),W.free(),F.free();let U=Y?A.get(B):null,$=new dM(this,Z,U,Q.shape);return this.map.set(Z,$),$}remove(A,Q,B,Y){this.raw.remove(A,Q.raw,B.raw,Y),this.unmap(A)}unmap(A){this.map.delete(A)}get(A){return this.map.get(A)}len(){return this.map.len()}contains(A){return this.get(A)!=null}forEach(A){this.map.forEach(A)}getAll(){return this.map.getAll()}}function D_Q(A,Q,B,Y){return new(B||(B=Promise))(function(J,C){function X(F){try{W(Y.next(F))}catch(Z){C(Z)}}function G(F){try{W(Y.throw(F))}catch(Z){C(Z)}}function W(F){var Z;F.done?J(F.value):(Z=F.value,Z instanceof B?Z:new B(function(U){U(Z)})).then(X,G)}W((Y=Y.apply(A,Q||[])).next())})}for(Vv={byteLength:function(A){var Q=Ce(A),B=Q[0],Y=Q[1];return 3*(B+Y)/4-Y},toByteArray:function(A){var Q,B,Y=Ce(A),J=Y[0],C=Y[1],X=new P_(function(F,Z,U){return 3*(Z+U)/4-U}(0,J,C)),G=0,W=C>0?J-4:J;for(B=0;B>16&255,X[G++]=Q>>8&255,X[G++]=255&Q;return C===2&&(Q=T9[A.charCodeAt(B)]<<2|T9[A.charCodeAt(B+1)]>>4,X[G++]=255&Q),C===1&&(Q=T9[A.charCodeAt(B)]<<10|T9[A.charCodeAt(B+1)]<<4|T9[A.charCodeAt(B+2)]>>2,X[G++]=Q>>8&255,X[G++]=255&Q),X},fromByteArray:function(A){for(var Q,B=A.length,Y=B%3,J=[],C=16383,X=0,G=B-Y;XG?G:X+C));return Y===1?(Q=A[B-1],J.push(A5[Q>>2]+A5[Q<<4&63]+"==")):Y===2&&(Q=(A[B-2]<<8)+A[B-1],J.push(A5[Q>>10]+A5[Q>>4&63]+A5[Q<<2&63]+"=")),J.join("")}},A5=[],T9=[],P_=typeof Uint8Array<"u"?Uint8Array:Array,nV="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",sG=0,T_=nV.length;sG0)throw Error("Invalid string. Length must be a multiple of 4");var B=A.indexOf("=");return B===-1&&(B=Q),[B,B===Q?0:4-B%4]}function N_Q(A,Q,B){for(var Y,J,C=[],X=Q;X>18&63]+A5[J>>12&63]+A5[J>>6&63]+A5[63&J]);return C.join("")}function L_Q(){return D_Q(this,void 0,void 0,function*(){yield Ve(Vv.toByteArray("AGFzbQEAAAAB6QykAWACf38AYAN/f38AYAR/f39/AGACf38Bf2ABfwF/YAN/f38Bf2ABfwBgBX9/f39/AGACf3wBf2AGf39/f31/AGAGf39/f39/AGABfwF9YAV/f399fwBgA39/fQBgBX9/f399AGADf3x/AGABfwF8YAR/f39/AX9gDH9/f39/f39/f399fwF/YAZ/f39/f30AYAR/f399AX9gAAF/YAR/f39/AX1gA39/fwF9YAN/f30Bf2ACf38BfGADf39/AX5gAn99AGAGf39/f39/AX9gAn98AX1gA398fQBgBH98f38AYAV/f39/fwF/YAd/f39/f39/AGACf38BfWACf3wBfGAIf39/f39/f38AYAF9AX1gAABgCX9/f39/f39/fwBgBH9+f38Bf2AIf39/f39/f30AYAR/f399AGADf398AGALf39/f39/f399fX8AYAh/f39/fX9/fwBgCX9/f39/fX9/fwBgBX9/fX9/AGAGf3x/f39/AGADf3x/AX9gA398fwF9YAN9fX0Bf2AGf31/f399AGAJf39/f39/fX9/AX9gBX98f39/AGAGf3x9fX19AGAFf3x9fX0AYAN/fX8AYAJ9fQF/YAF8AX9gBH99f38AYAt/f39/f39/f31/fwBgCn9/f39/f31/f38AYAZ/f319f38AYAt/f39/f39/fX9/fwBgCH9/f399fX9/AGAGf319f399AGAMf39/f31/f39/fX9/AGAPf39/f39/f39/fH98f3x/AGAPf39/f39/fX9/fH98f3x/AX9gBn9/f399fQBgBn99f3x/fwF/YAZ/fX98f38AYAV/fX1/fwBgAn5/AX9gBX9/fHx/AXxgBn9/fX9/fwBgA398fAF/YAR/fH1/AGAFf3x/fX0AYAJ/fABgAX0Bf2AEfX19fQF/YA5/f39/f39/f39/f39/fwBgB39/f39/f30AYA9/f39/f39/f39/f399fX8AYAt/f399f399f319fwBgCX99f39/f39/fwF/YAd/f39/f39/AX1gCn9/f39/f399fX8AYAt/f39/f39/f319fwF/YBJ/f39/f39/f39/f399f319fX0AYA9/f39/f39/f39/f39/f38AYAp/f39/f39/f39/AX9gC39/f39/f39/f39/AGAJf39/f39/fX9/AGASf39/f39/f399fX9/fH98f3x/AX9gB39/f39/f30Bf2Abf39/f319f39/f39/f39/f39/fX1/f399f39/AXxgEH9/f39/f31/f398f3x/fH8AYAh/fX9/f39/fwBgCH9/f39/e39/AGAbf39/f39/f31/f399fX1/f39/f39/f319f3x/AGAKf31/f39/f39/fwBgDH9/f399f39/f39/fwBgBn98f39/fQF/YAd/f39/f31/AX9gCn98f39/f399fX8Bf2AMf39/f39/f39/f39/AGANf39/f39/f3x/fH98fwBgC39/f399f39/f39/AGAHf39/f399fwF9YAh/fX99f31/fwBgBn9/f399fQF/YA1/f39/f39/fH98f3x/AX9gDH9/f39/f3x/fH98fwF/YAZ/f39/f30Bf2ANf31/f39/fH9/fH98fwBgBH9/fX8AYAl/f39/f39/f38BfWASf39/f39/f39/f39/f39/f39/AGAGf3x/f31/AX9gBX98f39/AX9gCX99f39/f398fwBgBn99f39/fwBgCn9/f39/f39/f38AYAd/fH1/f39/AGAGf3x/f31/AX1gAn9+AX9gBn98fX9/fwBgCH98f3x/fX1/AX9gBX98f399AX9gDX9/f39/f399fX19fX0AYAR/fH9/AX9gBX19fX9/AX9gA31/fwF/YAl/f39/f39+fn4AYAd/f39/f39/AX9gDX9/f39/f39/f39/f38AYAR/fHx9AX9gA398fwF8YAZ/fH99fX0AYAd/fH99fX19AGACf34AYAh/f39/f39/fwF/YAd/fH19fX1/AGAJf3x8f39/f39/AGAFf39/f30Bf2AGf3x9fX1/AGAGf3x8f39/AGAEf39+fwBgA39/fgF/YAV/fn9+fwBgA39+fgBgBH19fX8Bf2ADf399AX1gAn19AGAEf319fwBgBn9/fX19fQBgA319fwF/YAV/f3x/fwBgBX9/fn9/AGAEf35/fwBgAn19AX0CqwkgA3diZxVfX3diaW5kZ2VuX251bWJlcl9uZXcAOwN3YmcWX193YmluZGdlbl9ib29sZWFuX2dldAAEA3diZxpfX3diaW5kZ2VuX29iamVjdF9kcm9wX3JlZgAGA3diZxVfX3diaW5kZ2VuX251bWJlcl9nZXQAAAN3YmcWX193YmluZGdlbl9pc19mdW5jdGlvbgAEA3diZyRfX3diZ19yYXdyYXljb2xsaWRlcmludGVyc2VjdGlvbl9uZXcABAN3YmceX193YmdfcmF3Y29udGFjdGZvcmNlZXZlbnRfbmV3AAQDd2JnIl9fd2JnX3BlcmZvcm1hbmNlXzdhM2ZmZDBiMTdmNjYzYWQABAN3YmcXX193YmluZGdlbl9pc191bmRlZmluZWQABAN3YmcaX193Ymdfbm93XzJjOTVjOWRlMDEyOTMxNzMAEAN3YmcbX193YmluZGdlbl9vYmplY3RfY2xvbmVfcmVmAAQDd2JnIF9fd2JnX25ld25vYXJnc18xMDVlZDQ3MTQ3NWFhZjUwAAMDd2JnG19fd2JnX2NhbGxfNjcyYTRkMjE2MzRkNGEyNAADA3diZxtfX3diZ19jYWxsXzdjY2NkZDY5ZTA3OTFhZTIABQN3YmcbX193YmdfY2FsbF84MzNiZWQ1NzcwZWEyMDQxABEDd2JnG19fd2JnX2NhbGxfYjhhZGM4YjFkMGEwZDhlYgAgA3diZxtfX3diZ19iaW5kX2M4MzU5YjFjYmEwNTgxNjgAEQN3YmcdX193YmdfYnVmZmVyXzYwOWNjM2VlZTUxZWQxNTgABAN3YmcyX193Ymdfc3RhdGljX2FjY2Vzc29yX0dMT0JBTF9USElTXzU2NTc4YmU3ZTlmODMyYjAAFQN3YmcrX193Ymdfc3RhdGljX2FjY2Vzc29yX1NFTEZfMzdjNWQ0MThlNGJmNTgxOQAVA3diZy1fX3diZ19zdGF0aWNfYWNjZXNzb3JfV0lORE9XXzVkZTM3MDQzYTkxYTljNDAAFQN3YmctX193Ymdfc3RhdGljX2FjY2Vzc29yX0dMT0JBTF84OGE5MDJkMTNhNTU3ZDA3ABUDd2JnMV9fd2JnX25ld3dpdGhieXRlb2Zmc2V0YW5kbGVuZ3RoX2Q5N2U2MzdlYmUxNDVhOWEABQN3YmcaX193YmdfbmV3X2ExMjAwMmE3ZjkxYzc1YmUABAN3YmcaX193Ymdfc2V0XzY1NTk1YmRkODY4YjMwMDkAAQN3YmcdX193YmdfbGVuZ3RoX2E0NDYxOTNkYzIyYzEyZjgABAN3YmcxX193YmdfbmV3d2l0aGJ5dGVvZmZzZXRhbmRsZW5ndGhfZTZiN2U2OWFjZDRjNzM1NAAFA3diZxpfX3di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d2tpbmVtYXRpY2NoYXJhY3RlcmNvbnRyb2xsZXJfYXV0b3N0ZXBNaW5XaWR0aACnCz1yYXdraW5lbWF0aWNjaGFyYWN0ZXJjb250cm9sbGVyX2F1dG9zdGVwSW5jbHVkZXNEeW5hbWljQm9kaWVzAJgLL3Jhd2tpbmVtYXRpY2NoYXJhY3RlcmNvbnRyb2xsZXJfYXV0b3N0ZXBFbmFibGVkANgLLnJhd2tpbmVtYXRpY2NoYXJhY3RlcmNvbnRyb2xsZXJfZW5hYmxlQXV0b3N0ZXAAiAsvcmF3a2luZW1hdGljY2hhcmFjdGVyY29udHJvbGxlcl9kaXNhYmxlQXV0b3N0ZXAAlAwycmF3a2luZW1hdGljY2hhcmFjdGVyY29udHJvbGxlcl9tYXhTbG9wZUNsaW1iQW5nbGUA6Qs1cmF3a2luZW1hdGljY2hhcmFjdGVyY29udHJvbGxlcl9zZXRNYXhTbG9wZUNsaW1iQW5nbGUAlQwycmF3a2luZW1hdGljY2hhcmFjdGVyY29udHJvbGxlcl9taW5TbG9wZVNsaWRlQW5nbGUA6gs1cmF3a2luZW1hdGljY2hhcmFjdGVyY29udHJvbGxlcl9zZXRNaW5TbG9wZVNsaWRlQW5nbGUAlgw0cmF3a2luZW1hdGljY2hhcmFjdGVyY29udHJvbGxlcl9zbmFwVG9Hcm91bmREaXN0YW5jZQCoCzJyYXdraW5lbWF0aWNjaGFyYWN0ZXJjb250cm9sbGVyX2VuYWJsZVNuYXBUb0dyb3VuZADrCzNyYXdraW5lbWF0aWNjaGFyYWN0ZXJjb250cm9sbGVyX2Rpc2FibGVTbmFwVG9Hcm91bmQAlwwzcmF3a2luZW1hdGljY2hhcmFjdGVyY29udHJvbGxlcl9zbmFwVG9Hcm91bmRFbmFibGVkANkLN3Jhd2tpbmVtYXRpY2NoYXJhY3RlcmNvbnRyb2xsZXJfY29tcHV0ZUNvbGxpZGVyTW92ZW1lbnQAwgIwcmF3a2luZW1hdGljY2hhcmFjdGVyY29udHJvbGxlcl9jb21wdXRlZE1vdmVtZW50AM0IMHJhd2tpbmVtYXRpY2NoYXJhY3RlcmNvbnRyb2xsZXJfY29tcHV0ZWRHcm91bmRlZADsCzVyYXdraW5lbWF0aWNjaGFyYWN0ZXJjb250cm9sbGVyX251bUNvbXB1dGVkQ29sbGlzaW9ucwDtCzFyYXdraW5lbWF0aWNjaGFyYWN0ZXJjb250cm9sbGVyX2NvbXB1dGVkQ29sbGlzaW9uAMkGIF9fd2JnX3Jhd2NoYXJhY3RlcmNvbGxpc2lvbl9mcmVlAJ0JGXJhd2NoYXJhY3RlcmNvbGxpc2lvbl9uZXcAtQsccmF3Y2hhcmFjdGVyY29sbGlzaW9uX2hhbmRsZQDuCy1yYXdjaGFyYWN0ZXJjb2xsaXNpb25fdHJhbnNsYXRpb25EZWx0YUFwcGxpZWQAzggvcmF3Y2hhcmFjdGVyY29sbGlzaW9uX3RyYW5zbGF0aW9uRGVsdGFSZW1haW5pbmcAzwgZcmF3Y2hhcmFjdGVyY29sbGlzaW9uX3RvaQDvCyNyYXdjaGFyYWN0ZXJjb2xsaXNpb25fd29ybGRXaXRuZXNzMQDQCCNyYXdjaGFyYWN0ZXJjb2xsaXNpb25fd29ybGRXaXRuZXNzMgDLBSJyYXdjaGFyYWN0ZXJjb2xsaXNpb25fd29ybGROb3JtYWwxANEIInJhd2NoYXJhY3RlcmNvbGxpc2lvbl93b3JsZE5vcm1hbDIAhAYbX193YmdfcmF3cGlkY29udHJvbGxlcl9mcmVlAJ4JFHJhd3BpZGNvbnRyb2xsZXJfbmV3AMEKF3Jhd3BpZGNvbnRyb2xsZXJfc2V0X2twAKUIF3Jhd3BpZGNvbnRyb2xsZXJfc2V0X2tpAKYIF3Jhd3BpZGNvbnRyb2xsZXJfc2V0X2tkAKcIHnJhd3BpZGNvbnRyb2xsZXJfc2V0X2F4ZXNfbWFzawC2CyByYXdwaWRjb250cm9sbGVyX3Jlc2V0X2ludGVncmFscwDdCShyYXdwaWRjb250cm9sbGVyX2FwcGx5X2xpbmVhcl9jb3JyZWN0aW9uAKwDKXJhd3BpZGNvbnRyb2xsZXJfYXBwbHlfYW5ndWxhcl9jb3JyZWN0aW9uAK0DInJhd3BpZGNvbnRyb2xsZXJfbGluZWFyX2NvcnJlY3Rpb24AhAMjcmF3cGlkY29udHJvbGxlcl9hbmd1bGFyX2NvcnJlY3Rpb24AhQMtX193YmdfcmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9mcmVlAOMGJnJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfbmV3ALELOHJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfY3VycmVudF92ZWhpY2xlX3NwZWVkAPALKnJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfY2hhc3NpcwDxCzByYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX2luZGV4X3VwX2F4aXMA8gs0cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9zZXRfaW5kZXhfdXBfYXhpcwCYDDVyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX2luZGV4X2ZvcndhcmRfYXhpcwDzCzlyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3NldF9pbmRleF9mb3J3YXJkX2F4aXMAmQwscmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9hZGRfd2hlZWwA1AMtcmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9udW1fd2hlZWxzAPQLMXJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfdXBkYXRlX3ZlaGljbGUAiANEcmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9jaGFzc2lzX2Nvbm5lY3Rpb25fcG9pbnRfY3MA9AZIcmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9zZXRfd2hlZWxfY2hhc3Npc19jb25uZWN0aW9uX3BvaW50X2NzAM0FP3Jhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfd2hlZWxfc3VzcGVuc2lvbl9yZXN0X2xlbmd0aACpCkNyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3NldF93aGVlbF9zdXNwZW5zaW9uX3Jlc3RfbGVuZ3RoAPwIPnJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfd2hlZWxfbWF4X3N1c3BlbnNpb25fdHJhdmVsAKoKQnJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfc2V0X3doZWVsX21heF9zdXNwZW5zaW9uX3RyYXZlbAD9CC9yYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3doZWVsX3JhZGl1cwCrCjNyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3NldF93aGVlbF9yYWRpdXMA/gg9cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9zdXNwZW5zaW9uX3N0aWZmbmVzcwCsCkFyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3NldF93aGVlbF9zdXNwZW5zaW9uX3N0aWZmbmVzcwD/CD9yYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3doZWVsX3N1c3BlbnNpb25fY29tcHJlc3Npb24ArQpDcmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9zZXRfd2hlZWxfc3VzcGVuc2lvbl9jb21wcmVzc2lvbgCACT5yYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3doZWVsX3N1c3BlbnNpb25fcmVsYXhhdGlvbgCuCkJyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3NldF93aGVlbF9zdXNwZW5zaW9uX3JlbGF4YXRpb24AgQk9cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9tYXhfc3VzcGVuc2lvbl9mb3JjZQCvCkFyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3NldF93aGVlbF9tYXhfc3VzcGVuc2lvbl9mb3JjZQCCCS5yYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3doZWVsX2JyYWtlALAKMnJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfc2V0X3doZWVsX2JyYWtlAIMJMXJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfd2hlZWxfc3RlZXJpbmcAsQo1cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9zZXRfd2hlZWxfc3RlZXJpbmcAhAk1cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9lbmdpbmVfZm9yY2UAsgo5cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9zZXRfd2hlZWxfZW5naW5lX2ZvcmNlAIUJNXJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfd2hlZWxfZGlyZWN0aW9uX2NzAPUGOXJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfc2V0X3doZWVsX2RpcmVjdGlvbl9jcwDOBTByYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3doZWVsX2F4bGVfY3MA9gY0cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9zZXRfd2hlZWxfYXhsZV9jcwDPBTZyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3doZWVsX2ZyaWN0aW9uX3NsaXAAswo6cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9zZXRfd2hlZWxfZnJpY3Rpb25fc2xpcACGCUByYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3doZWVsX3NpZGVfZnJpY3Rpb25fc3RpZmZuZXNzALQKRHJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfc2V0X3doZWVsX3NpZGVfZnJpY3Rpb25fc3RpZmZuZXNzAIcJMXJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfd2hlZWxfcm90YXRpb24AtQo4cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9mb3J3YXJkX2ltcHVsc2UAtgo1cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9zaWRlX2ltcHVsc2UAtwo5cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9zdXNwZW5zaW9uX2ZvcmNlALgKOnJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfd2hlZWxfY29udGFjdF9ub3JtYWxfd3MA9wY5cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9jb250YWN0X3BvaW50X3dzAPgGOnJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfd2hlZWxfc3VzcGVuc2lvbl9sZW5ndGgAuQo2cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9oYXJkX3BvaW50X3dzAPkGNnJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfd2hlZWxfaXNfaW5fY29udGFjdADCCjZyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3doZWVsX2dyb3VuZF9vYmplY3QAmQkXX193YmdfcmF3Y2Nkc29sdmVyX2ZyZWUAnwkccmF3aW1wdWxzZWpvaW50c2V0X2pvaW50VHlwZQCEByNyYXdpbXB1bHNlam9pbnRzZXRfam9pbnRCb2R5SGFuZGxlMQDhByNyYXdpbXB1bHNlam9pbnRzZXRfam9pbnRCb2R5SGFuZGxlMgDiBx9yYXdpbXB1bHNlam9pbnRzZXRfam9pbnRGcmFtZVgxANsGH3Jhd2ltcHVsc2Vqb2ludHNldF9qb2ludEZyYW1lWDIA3AYfcmF3aW1wdWxzZWpvaW50c2V0X2pvaW50QW5jaG9yMQCFBh9yYXdpbXB1bHNlam9pbnRzZXRfam9pbnRBbmNob3IyAIYGInJhd2ltcHVsc2Vqb2ludHNldF9qb2ludFNldEFuY2hvcjEA0gUicmF3aW1wdWxzZWpvaW50c2V0X2pvaW50U2V0QW5jaG9yMgDTBSdyYXdpbXB1bHNlam9pbnRzZXRfam9pbnRDb250YWN0c0VuYWJsZWQA4wcqcmF3aW1wdWxzZWpvaW50c2V0X2pvaW50U2V0Q29udGFjdHNFbmFibGVkALgIJXJhd2ltcHVsc2Vqb2ludHNldF9qb2ludExpbWl0c0VuYWJsZWQA/AYhcmF3aW1wdWxzZWpvaW50c2V0X2pvaW50TGltaXRzTWluAKIHIXJhd2ltcHVsc2Vqb2ludHNldF9qb2ludExpbWl0c01heACjByFyYXdpbXB1bHNlam9pbnRzZXRfam9pbnRTZXRMaW1pdHMAtQcrcmF3aW1wdWxzZWpvaW50c2V0X2pvaW50Q29uZmlndXJlTW90b3JNb2RlbACBBy5yYXdpbXB1bHNlam9pbnRzZXRfam9pbnRDb25maWd1cmVNb3RvclZlbG9jaXR5AMMHLnJhd2ltcHVsc2Vqb2ludHNldF9qb2ludENvbmZpZ3VyZU1vdG9yUG9zaXRpb24AxAcmcmF3aW1wdWxzZWpvaW50c2V0X2pvaW50Q29uZmlndXJlTW90b3IAxQcdX193YmdfcmF3aW1wdWxzZWpvaW50c2V0X2ZyZWUAyAcWcmF3aW1wdWxzZWpvaW50c2V0X25ldwDDCh5yYXdpbXB1bHNlam9pbnRzZXRfY3JlYXRlSm9pbnQAtgYZcmF3aW1wdWxzZWpvaW50c2V0X3JlbW92ZQCLCRZyYXdpbXB1bHNlam9pbnRzZXRfbGVuAPILG3Jhd2ltcHVsc2Vqb2ludHNldF9jb250YWlucwDSCCVyYXdpbXB1bHNlam9pbnRzZXRfZm9yRWFjaEpvaW50SGFuZGxlAIcGMnJhd2ltcHVsc2Vqb2ludHNldF9mb3JFYWNoSm9pbnRBdHRhY2hlZFRvUmlnaWRCb2R5AIwJI19fd2JnX3Jhd2ludGVncmF0aW9ucGFyYW1ldGVyc19mcmVlAKAJHHJhd2ludGVncmF0aW9ucGFyYW1ldGVyc19uZXcA0gsbcmF3aW50ZWdyYXRpb25wYXJhbWV0ZXJzX2R0APULJHJhd2ludGVncmF0aW9ucGFyYW1ldGVyc19jb250YWN0X2VycADSCjVyYXdpbnRlZ3JhdGlvbnBhcmFtZXRlcnNfbm9ybWFsaXplZEFsbG93ZWRMaW5lYXJFcnJvcgD2CzVyYXdpbnRlZ3JhdGlvbnBhcmFtZXRlcnNfbm9ybWFsaXplZFByZWRpY3Rpb25EaXN0YW5jZQD3CyxyYXdpbnRlZ3JhdGlvbnBhcmFtZXRlcnNfbnVtU29sdmVySXRlcmF0aW9ucwD4CyZyYXdpbnRlZ3JhdGlvbnBhcmFtZXRlcnNfbWluSXNsYW5kU2l6ZQD5CydyYXdpbnRlZ3JhdGlvbnBhcmFtZXRlcnNfbWF4Q2NkU3Vic3RlcHMA+gsfcmF3aW50ZWdyYXRpb25wYXJhbWV0ZXJzX3NldF9kdACaDDZyYXdpbnRlZ3JhdGlvbnBhcmFtZXRlcnNfc2V0X2NvbnRhY3RfbmF0dXJhbF9mcmVxdWVuY3kAmww5cmF3aW50ZWdyYXRpb25wYXJhbWV0ZXJzX3NldF9ub3JtYWxpemVkQWxsb3dlZExpbmVhckVycm9yAJwMOXJhd2ludGVncmF0aW9ucGFyYW1ldGVyc19zZXRfbm9ybWFsaXplZFByZWRpY3Rpb25EaXN0YW5jZQCdDDByYXdpbnRlZ3JhdGlvbnBhcmFtZXRlcnNfc2V0X251bVNvbHZlckl0ZXJhdGlvbnMAngwqcmF3aW50ZWdyYXRpb25wYXJhbWV0ZXJzX3NldF9taW5Jc2xhbmRTaXplAJ8MK3Jhd2ludGVncmF0aW9ucGFyYW1ldGVyc19zZXRfbWF4Q2NkU3Vic3RlcHMAoAwncmF3aW50ZWdyYXRpb25wYXJhbWV0ZXJzX3NldF9sZW5ndGhVbml0AKEMG19fd2JnX3Jhd2lzbGFuZG1hbmFnZXJfZnJlZQCkBxRyYXdpc2xhbmRtYW5hZ2VyX25ldwDTCy1yYXdpc2xhbmRtYW5hZ2VyX2ZvckVhY2hBY3RpdmVSaWdpZEJvZHlIYW5kbGUAlwYaX193YmdfcmF3Z2VuZXJpY2pvaW50X2ZyZWUAoQkXcmF3Z2VuZXJpY2pvaW50X2dlbmVyaWMAyAIWcmF3Z2VuZXJpY2pvaW50X3NwcmluZwCtBBRyYXdnZW5lcmljam9pbnRfcm9wZQC4BBlyYXdnZW5lcmljam9pbnRfc3BoZXJpY2FsALwEGXJhd2dlbmVyaWNqb2ludF9wcmlzbWF0aWMAtgIVcmF3Z2VuZXJpY2pvaW50X2ZpeGVkALoCGHJhd2dlbmVyaWNqb2ludF9yZXZvbHV0ZQDYAh5yYXdtdWx0aWJvZHlqb2ludHNldF9qb2ludFR5cGUAswYhcmF3bXVsdGlib2R5am9pbnRzZXRfam9pbnRGcmFtZVgxAJMGIXJhd211bHRpYm9keWpvaW50c2V0X2pvaW50RnJhbWVYMgCUBiFyYXdtdWx0aWJvZHlqb2ludHNldF9qb2ludEFuY2hvcjEAwAUhcmF3bXVsdGlib2R5am9pbnRzZXRfam9pbnRBbmNob3IyAMEFKXJhd211bHRpYm9keWpvaW50c2V0X2pvaW50Q29udGFjdHNFbmFibGVkAO8GLHJhd211bHRpYm9keWpvaW50c2V0X2pvaW50U2V0Q29udGFjdHNFbmFibGVkAJwHJ3Jhd211bHRpYm9keWpvaW50c2V0X2pvaW50TGltaXRzRW5hYmxlZACnBiNyYXdtdWx0aWJvZHlqb2ludHNldF9qb2ludExpbWl0c01pbgDDBiNyYXdtdWx0aWJvZHlqb2ludHNldF9qb2ludExpbWl0c01heADEBh9fX3diZ19yYXdtdWx0aWJvZHlqb2ludHNldF9mcmVlAMkHGHJhd211bHRpYm9keWpvaW50c2V0X25ldwDECiByYXdtdWx0aWJvZHlqb2ludHNldF9jcmVhdGVKb2ludAC3BhtyYXdtdWx0aWJvZHlqb2ludHNldF9yZW1vdmUAlAkdcmF3bXVsdGlib2R5am9pbnRzZXRfY29udGFpbnMArAgncmF3bXVsdGlib2R5am9pbnRzZXRfZm9yRWFjaEpvaW50SGFuZGxlAJAJNHJhd211bHRpYm9keWpvaW50c2V0X2ZvckVhY2hKb2ludEF0dGFjaGVkVG9SaWdpZEJvZHkAjQkdcmF3cmlnaWRib2R5c2V0X3JiVHJhbnNsYXRpb24AiAYacmF3cmlnaWRib2R5c2V0X3JiUm90YXRpb24A5QYXcmF3cmlnaWRib2R5c2V0X3JiU2xlZXAA+AgccmF3cmlnaWRib2R5c2V0X3JiSXNTbGVlcGluZwD1BxpyYXdyaWdpZGJvZHlzZXRfcmJJc01vdmluZwCeCCFyYXdyaWdpZGJvZHlzZXRfcmJOZXh0VHJhbnNsYXRpb24AiQYecmF3cmlnaWRib2R5c2V0X3JiTmV4dFJvdGF0aW9uAOYGIHJhd3JpZ2lkYm9keXNldF9yYlNldFRyYW5zbGF0aW9uALMJHXJhd3JpZ2lkYm9keXNldF9yYlNldFJvdGF0aW9uAK0JG3Jhd3JpZ2lkYm9keXNldF9yYlNldExpbnZlbAD8BRtyYXdyaWdpZGJvZHlzZXRfcmJTZXRBbmd2ZWwA/QUtcmF3cmlnaWRib2R5c2V0X3JiU2V0TmV4dEtpbmVtYXRpY1RyYW5zbGF0aW9uAPYHKnJhd3JpZ2lkYm9keXNldF9yYlNldE5leHRLaW5lbWF0aWNSb3RhdGlvbgCjBjZyYXdyaWdpZGJvZHlzZXRfcmJSZWNvbXB1dGVNYXNzUHJvcGVydGllc0Zyb21Db2xsaWRlcnMAlQYjcmF3cmlnaWRib2R5c2V0X3JiU2V0QWRkaXRpb25hbE1hc3MA9wctcmF3cmlnaWRib2R5c2V0X3JiU2V0QWRkaXRpb25hbE1hc3NQcm9wZXJ0aWVzALEDGHJhd3JpZ2lkYm9keXNldF9yYkxpbnZlbACKBhhyYXdyaWdpZGJvZHlzZXRfcmJBbmd2ZWwAiwYhcmF3cmlnaWRib2R5c2V0X3JiVmVsb2NpdHlBdFBvaW50AMIEInJhd3JpZ2lkYm9keXNldF9yYkxvY2tUcmFuc2xhdGlvbnMAtAYocmF3cmlnaWRib2R5c2V0X3JiU2V0RW5hYmxlZFRyYW5zbGF0aW9ucwDCBR9yYXdyaWdpZGJvZHlzZXRfcmJMb2NrUm90YXRpb25zALUGJXJhd3JpZ2lkYm9keXNldF9yYlNldEVuYWJsZWRSb3RhdGlvbnMAwwUgcmF3cmlnaWRib2R5c2V0X3JiRG9taW5hbmNlR3JvdXAA+AcjcmF3cmlnaWRib2R5c2V0X3JiU2V0RG9taW5hbmNlR3JvdXAA1AcbcmF3cmlnaWRib2R5c2V0X3JiRW5hYmxlQ2NkANMIJnJhd3JpZ2lkYm9keXNldF9yYlNldFNvZnRDY2RQcmVkaWN0aW9uAOYIFnJhd3JpZ2lkYm9keXNldF9yYk1hc3MAwAcZcmF3cmlnaWRib2R5c2V0X3JiSW52TWFzcwD5ByJyYXdyaWdpZGJvZHlzZXRfcmJFZmZlY3RpdmVJbnZNYXNzAIwGGnJhd3JpZ2lkYm9keXNldF9yYkxvY2FsQ29tAI0GGnJhd3JpZ2lkYm9keXNldF9yYldvcmxkQ29tAI4GJXJhd3JpZ2lkYm9keXNldF9yYkludlByaW5jaXBhbEluZXJ0aWEAjwYscmF3cmlnaWRib2R5c2V0X3JiUHJpbmNpcGFsSW5lcnRpYUxvY2FsRnJhbWUA5wYicmF3cmlnaWRib2R5c2V0X3JiUHJpbmNpcGFsSW5lcnRpYQC8BipyYXdyaWdpZGJvZHlzZXRfcmJFZmZlY3RpdmVXb3JsZEludkluZXJ0aWEAmAYpcmF3cmlnaWRib2R5c2V0X3JiRWZmZWN0aXZlQW5ndWxhckluZXJ0aWEAvQYYcmF3cmlnaWRib2R5c2V0X3JiV2FrZVVwAM8HHnJhd3JpZ2lkYm9keXNldF9yYklzQ2NkRW5hYmxlZAD6ByNyYXdyaWdpZGJvZHlzZXRfcmJTb2Z0Q2NkUHJlZGljdGlvbgD7Bx5yYXdyaWdpZGJvZHlzZXRfcmJOdW1Db2xsaWRlcnMA/AcacmF3cmlnaWRib2R5c2V0X3JiQ29sbGlkZXIAhQcacmF3cmlnaWRib2R5c2V0X3JiQm9keVR5cGUA/QcdcmF3cmlnaWRib2R5c2V0X3JiU2V0Qm9keVR5cGUA7AcZcmF3cmlnaWRib2R5c2V0X3JiSXNGaXhlZADQBx1yYXdyaWdpZGJvZHlzZXRfcmJJc0tpbmVtYXRpYwDRBxtyYXdyaWdpZGJvZHlzZXRfcmJJc0R5bmFtaWMA1QcfcmF3cmlnaWRib2R5c2V0X3JiTGluZWFyRGFtcGluZwD+ByByYXdyaWdpZGJvZHlzZXRfcmJBbmd1bGFyRGFtcGluZwD/ByJyYXdyaWdpZGJvZHlzZXRfcmJTZXRMaW5lYXJEYW1waW5nAOcII3Jhd3JpZ2lkYm9keXNldF9yYlNldEFuZ3VsYXJEYW1waW5nAOgIHHJhd3JpZ2lkYm9keXNldF9yYlNldEVuYWJsZWQA1AgbcmF3cmlnaWRib2R5c2V0X3JiSXNFbmFibGVkAIAIHnJhd3JpZ2lkYm9keXNldF9yYkdyYXZpdHlTY2FsZQCBCCFyYXdyaWdpZGJvZHlzZXRfcmJTZXRHcmF2aXR5U2NhbGUApQcdcmF3cmlnaWRib2R5c2V0X3JiUmVzZXRGb3JjZXMA1QgecmF3cmlnaWRib2R5c2V0X3JiUmVzZXRUb3JxdWVzANYIGnJhd3JpZ2lkYm9keXNldF9yYkFkZEZvcmNlAP4FHnJhd3JpZ2lkYm9keXNldF9yYkFwcGx5SW1wdWxzZQD/BRtyYXdyaWdpZGJvZHlzZXRfcmJBZGRUb3JxdWUAgAYkcmF3cmlnaWRib2R5c2V0X3JiQXBwbHlUb3JxdWVJbXB1bHNlAIEGIXJhd3JpZ2lkYm9keXNldF9yYkFkZEZvcmNlQXRQb2ludADLBCVyYXdyaWdpZGJvZHlzZXRfcmJBcHBseUltcHVsc2VBdFBvaW50AJQELHJhd3JpZ2lkYm9keXNldF9yYkFkZGl0aW9uYWxTb2x2ZXJJdGVyYXRpb25zAIIIL3Jhd3JpZ2lkYm9keXNldF9yYlNldEFkZGl0aW9uYWxTb2x2ZXJJdGVyYXRpb25zAOkIGnJhd3JpZ2lkYm9keXNldF9yYlVzZXJEYXRhAO0HHXJhd3JpZ2lkYm9keXNldF9yYlNldFVzZXJEYXRhAMoIG3Jhd3JpZ2lkYm9keXNldF9yYlVzZXJGb3JjZQDFBhxyYXdyaWdpZGJvZHlzZXRfcmJVc2VyVG9ycXVlAMYGGl9fd2JnX3Jhd3JpZ2lkYm9keXNldF9mcmVlAO4HE3Jhd3JpZ2lkYm9keXNldF9uZXcA1gofcmF3cmlnaWRib2R5c2V0X2NyZWF0ZVJpZ2lkQm9keQDeARZyYXdyaWdpZGJvZHlzZXRfcmVtb3ZlAPUCE3Jhd3JpZ2lkYm9keXNldF9sZW4A+wsYcmF3cmlnaWRib2R5c2V0X2NvbnRhaW5zAOoIJnJhd3JpZ2lkYm9keXNldF9mb3JFYWNoUmlnaWRCb2R5SGFuZGxlAJEJOXJhd3JpZ2lkYm9keXNldF9wcm9wYWdhdGVNb2RpZmllZEJvZHlQb3NpdGlvbnNUb0NvbGxpZGVycwD9BhhfX3diZ19yYXdicm9hZHBoYXNlX2ZyZWUAygcRcmF3YnJvYWRwaGFzZV9uZXcAlQkVcmF3YnJvYWRwaGFzZV9jYXN0UmF5AJICIXJhd2Jyb2FkcGhhc2VfY2FzdFJheUFuZEdldE5vcm1hbACTAiJyYXdicm9hZHBoYXNlX2ludGVyc2VjdGlvbnNXaXRoUmF5AOABI3Jhd2Jyb2FkcGhhc2VfaW50ZXJzZWN0aW9uV2l0aFNoYXBlANUBGnJhd2Jyb2FkcGhhc2VfcHJvamVjdFBvaW50ALcCJ3Jhd2Jyb2FkcGhhc2VfcHJvamVjdFBvaW50QW5kR2V0RmVhdHVyZQC7AiRyYXdicm9hZHBoYXNlX2ludGVyc2VjdGlvbnNXaXRoUG9pbnQAmAIXcmF3YnJvYWRwaGFzZV9jYXN0U2hhcGUA0wEkcmF3YnJvYWRwaGFzZV9pbnRlcnNlY3Rpb25zV2l0aFNoYXBlANkBL3Jhd2Jyb2FkcGhhc2VfY29sbGlkZXJzV2l0aEFhYmJJbnRlcnNlY3RpbmdBYWJiALwCHHJhd2NvbGxpZGVyc2V0X2NvVHJhbnNsYXRpb24AkAYZcmF3Y29sbGlkZXJzZXRfY29Sb3RhdGlvbgDoBiVyYXdjb2xsaWRlcnNldF9jb1RyYW5zbGF0aW9uV3J0UGFyZW50AOwFInJhd2NvbGxpZGVyc2V0X2NvUm90YXRpb25XcnRQYXJlbnQAuAYfcmF3Y29sbGlkZXJzZXRfY29TZXRUcmFuc2xhdGlvbgDWByhyYXdjb2xsaWRlcnNldF9jb1NldFRyYW5zbGF0aW9uV3J0UGFyZW50AMEHHHJhd2NvbGxpZGVyc2V0X2NvU2V0Um90YXRpb24AoAYlcmF3Y29sbGlkZXJzZXRfY29TZXRSb3RhdGlvbldydFBhcmVudADACRlyYXdjb2xsaWRlcnNldF9jb0lzU2Vuc29yAIMIGnJhd2NvbGxpZGVyc2V0X2NvU2hhcGVUeXBlAI4JIHJhd2NvbGxpZGVyc2V0X2NvSGFsZnNwYWNlTm9ybWFsAK4FHHJhd2NvbGxpZGVyc2V0X2NvSGFsZkV4dGVudHMAnQUfcmF3Y29sbGlkZXJzZXRfY29TZXRIYWxmRXh0ZW50cwDUBhdyYXdjb2xsaWRlcnNldF9jb1JhZGl1cwC5CBpyYXdjb2xsaWRlcnNldF9jb1NldFJhZGl1cwDOCRtyYXdjb2xsaWRlcnNldF9jb0hhbGZIZWlnaHQAuggecmF3Y29sbGlkZXJzZXRfY29TZXRIYWxmSGVpZ2h0AM8JHHJhd2NvbGxpZGVyc2V0X2NvUm91bmRSYWRpdXMAuwgfcmF3Y29sbGlkZXJzZXRfY29TZXRSb3VuZFJhZGl1cwDQCRpyYXdjb2xsaWRlcnNldF9jb1ZveGVsRGF0YQCoBhpyYXdjb2xsaWRlcnNldF9jb1ZveGVsU2l6ZQCxBRlyYXdjb2xsaWRlcnNldF9jb1NldFZveGVsAJYHJXJhd2NvbGxpZGVyc2V0X2NvUHJvcGFnYXRlVm94ZWxDaGFuZ2UArgkjcmF3Y29sbGlkZXJzZXRfY29Db21iaW5lVm94ZWxTdGF0ZXMAwQkZcmF3Y29sbGlkZXJzZXRfY29WZXJ0aWNlcwCpBhhyYXdjb2xsaWRlcnNldF9jb0luZGljZXMAqgYdcmF3Y29sbGlkZXJzZXRfY29UcmlNZXNoRmxhZ3MA3QYhcmF3Y29sbGlkZXJzZXRfY29IZWlnaHRGaWVsZEZsYWdzAN4GI3Jhd2NvbGxpZGVyc2V0X2NvSGVpZ2h0ZmllbGRIZWlnaHRzAKsGIXJhd2NvbGxpZGVyc2V0X2NvSGVpZ2h0ZmllbGRTY2FsZQCcBSFyYXdjb2xsaWRlcnNldF9jb0hlaWdodGZpZWxkTlJvd3MAvgYhcmF3Y29sbGlkZXJzZXRfY29IZWlnaHRmaWVsZE5Db2xzAL8GF3Jhd2NvbGxpZGVyc2V0X2NvUGFyZW50AJgHG3Jhd2NvbGxpZGVyc2V0X2NvU2V0RW5hYmxlZACmBxpyYXdjb2xsaWRlcnNldF9jb0lzRW5hYmxlZADXBx9yYXdjb2xsaWRlcnNldF9jb1NldENvbnRhY3RTa2luAOsIHHJhd2NvbGxpZGVyc2V0X2NvQ29udGFjdFNraW4AhAgZcmF3Y29sbGlkZXJzZXRfY29GcmljdGlvbgCFCBxyYXdjb2xsaWRlcnNldF9jb1Jlc3RpdHV0aW9uAIYIGHJhd2NvbGxpZGVyc2V0X2NvRGVuc2l0eQCfCBVyYXdjb2xsaWRlcnNldF9jb01hc3MAoAgXcmF3Y29sbGlkZXJzZXRfY29Wb2x1bWUAoQggcmF3Y29sbGlkZXJzZXRfY29Db2xsaXNpb25Hcm91cHMAuQcdcmF3Y29sbGlkZXJzZXRfY29Tb2x2ZXJHcm91cHMAugcccmF3Y29sbGlkZXJzZXRfY29BY3RpdmVIb29rcwCHCCVyYXdjb2xsaWRlcnNldF9jb0FjdGl2ZUNvbGxpc2lvblR5cGVzAIgIHXJhd2NvbGxpZGVyc2V0X2NvQWN0aXZlRXZlbnRzAIkIK3Jhd2NvbGxpZGVyc2V0X2NvQ29udGFjdEZvcmNlRXZlbnRUaHJlc2hvbGQAiggecmF3Y29sbGlkZXJzZXRfY29Db250YWluc1BvaW50AJIFGnJhd2NvbGxpZGVyc2V0X2NvQ2FzdFNoYXBlAJYCHXJhd2NvbGxpZGVyc2V0X2NvQ2FzdENvbGxpZGVyAM8DIHJhd2NvbGxpZGVyc2V0X2NvSW50ZXJzZWN0c1NoYXBlAO4CHXJhd2NvbGxpZGVyc2V0X2NvQ29udGFjdFNoYXBlAIQCIHJhd2NvbGxpZGVyc2V0X2NvQ29udGFjdENvbGxpZGVyAKwGHXJhd2NvbGxpZGVyc2V0X2NvUHJvamVjdFBvaW50AKQEHnJhd2NvbGxpZGVyc2V0X2NvSW50ZXJzZWN0c1JheQDSAxhyYXdjb2xsaWRlcnNldF9jb0Nhc3RSYXkAswMkcmF3Y29sbGlkZXJzZXRfY29DYXN0UmF5QW5kR2V0Tm9ybWFsAOgCGnJhd2NvbGxpZGVyc2V0X2NvU2V0U2Vuc29yANIHH3Jhd2NvbGxpZGVyc2V0X2NvU2V0UmVzdGl0dXRpb24A7AgccmF3Y29sbGlkZXJzZXRfY29TZXRGcmljdGlvbgDtCCRyYXdjb2xsaWRlcnNldF9jb0ZyaWN0aW9uQ29tYmluZVJ1bGUAiwgncmF3Y29sbGlkZXJzZXRfY29TZXRGcmljdGlvbkNvbWJpbmVSdWxlALwIJ3Jhd2NvbGxpZGVyc2V0X2NvUmVzdGl0dXRpb25Db21iaW5lUnVsZQCMCCpyYXdjb2xsaWRlcnNldF9jb1NldFJlc3RpdHV0aW9uQ29tYmluZVJ1bGUAvQgjcmF3Y29sbGlkZXJzZXRfY29TZXRDb2xsaXNpb25Hcm91cHMAkQcgcmF3Y29sbGlkZXJzZXRfY29TZXRTb2x2ZXJHcm91cHMAkgcfcmF3Y29sbGlkZXJzZXRfY29TZXRBY3RpdmVIb29rcwCtCCByYXdjb2xsaWRlcnNldF9jb1NldEFjdGl2ZUV2ZW50cwC+CChyYXdjb2xsaWRlcnNldF9jb1NldEFjdGl2ZUNvbGxpc2lvblR5cGVzAL8IGXJhd2NvbGxpZGVyc2V0X2NvU2V0U2hhcGUA0AUucmF3Y29sbGlkZXJzZXRfY29TZXRDb250YWN0Rm9yY2VFdmVudFRocmVzaG9sZADuCBtyYXdjb2xsaWRlcnNldF9jb1NldERlbnNpdHkA7wgYcmF3Y29sbGlkZXJzZXRfY29TZXRNYXNzAPAIInJhd2NvbGxpZGVyc2V0X2NvU2V0TWFzc1Byb3BlcnRpZXMAugMZX193YmdfcmF3Y29sbGlkZXJzZXRfZnJlZQCnBxJyYXdjb2xsaWRlcnNldF9uZXcAmwoScmF3Y29sbGlkZXJzZXRfbGVuAPwLF3Jhd2NvbGxpZGVyc2V0X2NvbnRhaW5zAPEIHXJhd2NvbGxpZGVyc2V0X2NyZWF0ZUNvbGxpZGVyAOYBFXJhd2NvbGxpZGVyc2V0X3JlbW92ZQCPBCRyYXdjb2xsaWRlcnNldF9mb3JFYWNoQ29sbGlkZXJIYW5kbGUAkgkaX193YmdfcmF3c2hhcGVjb250YWN0X2ZyZWUAogkZX193YmdfcmF3bmFycm93cGhhc2VfZnJlZQCyCBJyYXduYXJyb3dwaGFzZV9uZXcAmQshcmF3bmFycm93cGhhc2VfY29udGFjdF9wYWlyc193aXRoAJoJG3Jhd25hcnJvd3BoYXNlX2NvbnRhY3RfcGFpcgDfBiZyYXduYXJyb3dwaGFzZV9pbnRlcnNlY3Rpb25fcGFpcnNfd2l0aACbCSByYXduYXJyb3dwaGFzZV9pbnRlcnNlY3Rpb25fcGFpcgDvBx1fX3diZ19yYXdjb250YWN0bWFuaWZvbGRfZnJlZQCjCRhyYXdjb250YWN0cGFpcl9jb2xsaWRlcjEAmgsYcmF3Y29udGFjdHBhaXJfY29sbGlkZXIyAJsLInJhd2NvbnRhY3RwYWlyX251bUNvbnRhY3RNYW5pZm9sZHMAnAsecmF3Y29udGFjdHBhaXJfY29udGFjdE1hbmlmb2xkAPkIGXJhd2NvbnRhY3RtYW5pZm9sZF9ub3JtYWwAjQgbcmF3Y29udGFjdG1hbmlmb2xkX2xvY2FsX24xAI4IG3Jhd2NvbnRhY3RtYW5pZm9sZF9sb2NhbF9uMgCPCBxyYXdjb250YWN0bWFuaWZvbGRfc3Vic2hhcGUxAJ0LHHJhd2NvbnRhY3RtYW5pZm9sZF9zdWJzaGFwZTIAngsfcmF3Y29udGFjdG1hbmlmb2xkX251bV9jb250YWN0cwCfCyNyYXdjb250YWN0bWFuaWZvbGRfY29udGFjdF9sb2NhbF9wMQDrBiNyYXdjb250YWN0bWFuaWZvbGRfY29udGFjdF9sb2NhbF9wMgDsBh9yYXdjb250YWN0bWFuaWZvbGRfY29udGFjdF9kaXN0AJwKH3Jhd2NvbnRhY3RtYW5pZm9sZF9jb250YWN0X2ZpZDEAnQofcmF3Y29udGFjdG1hbmlmb2xkX2NvbnRhY3RfZmlkMgCeCiJyYXdjb250YWN0bWFuaWZvbGRfY29udGFjdF9pbXB1bHNlAJ8KLHJhd2NvbnRhY3RtYW5pZm9sZF9jb250YWN0X3RhbmdlbnRfaW1wdWxzZV94AKAKLHJhd2NvbnRhY3RtYW5pZm9sZF9jb250YWN0X3RhbmdlbnRfaW1wdWxzZV95AKEKJnJhd2NvbnRhY3RtYW5pZm9sZF9udW1fc29sdmVyX2NvbnRhY3RzAKALJ3Jhd2NvbnRhY3RtYW5pZm9sZF9zb2x2ZXJfY29udGFjdF9wb2ludADtBiZyYXdjb250YWN0bWFuaWZvbGRfc29sdmVyX2NvbnRhY3RfZGlzdACiCipyYXdjb250YWN0bWFuaWZvbGRfc29sdmVyX2NvbnRhY3RfZnJpY3Rpb24AgwotcmF3Y29udGFjdG1hbmlmb2xkX3NvbHZlcl9jb250YWN0X3Jlc3RpdHV0aW9uAIQKMnJhd2NvbnRhY3RtYW5pZm9sZF9zb2x2ZXJfY29udGFjdF90YW5nZW50X3ZlbG9jaXR5AI0HHV9fd2JnX3Jhd3BvaW50cHJvamVjdGlvbl9mcmVlAKQJGHJhd3BvaW50cHJvamVjdGlvbl9wb2ludADXCBtyYXdwb2ludHByb2plY3Rpb25faXNJbnNpZGUA/QslX193YmdfcmF3cG9pbnRjb2xsaWRlcnByb2plY3Rpb25fZnJlZQClCSlyYXdwb2ludGNvbGxpZGVycHJvamVjdGlvbl9jb2xsaWRlckhhbmRsZQD+CyByYXdwb2ludGNvbGxpZGVycHJvamVjdGlvbl9wb2ludADYCCNyYXdwb2ludGNvbGxpZGVycHJvamVjdGlvbl9pc0luc2lkZQD/CyZyYXdwb2ludGNvbGxpZGVycHJvamVjdGlvbl9mZWF0dXJlVHlwZQCADCRyYXdwb2ludGNvbGxpZGVycHJvamVjdGlvbl9mZWF0dXJlSWQAqQsdX193YmdfcmF3cmF5aW50ZXJzZWN0aW9uX2ZyZWUApgkcX193YmdfcmF3cmF5Y29sbGlkZXJoaXRfZnJlZQCnCRNfX3diZ19yYXdzaGFwZV9mcmVlAMYHD3Jhd3NoYXBlX2N1Ym9pZACJCxRyYXdzaGFwZV9yb3VuZEN1Ym9pZAD/Cg1yYXdzaGFwZV9iYWxsAKoLEnJhd3NoYXBlX2hhbGZzcGFjZQCdBhByYXdzaGFwZV9jYXBzdWxlAMUJEXJhd3NoYXBlX2N5bGluZGVyAKELFnJhd3NoYXBlX3JvdW5kQ3lsaW5kZXIAigsNcmF3c2hhcGVfY29uZQCiCxJyYXdzaGFwZV9yb3VuZENvbmUAiwsPcmF3c2hhcGVfdm94ZWxzAPAGGXJhd3NoYXBlX3ZveGVsc0Zyb21Qb2ludHMA8QYRcmF3c2hhcGVfcG9seWxpbmUA7gkQcmF3c2hhcGVfdHJpbWVzaACvCRRyYXdzaGFwZV9oZWlnaHRmaWVsZACfBRByYXdzaGFwZV9zZWdtZW50ALsFEXJhd3NoYXBlX3RyaWFuZ2xlAIwEFnJhd3NoYXBlX3JvdW5kVHJpYW5nbGUAigQTcmF3c2hhcGVfY29udmV4SHVsbADvCRhyYXdzaGFwZV9yb3VuZENvbnZleEh1bGwA6AkTcmF3c2hhcGVfY29udmV4TWVzaAC0CRhyYXdzaGFwZV9yb3VuZENvbnZleE1lc2gAsAkScmF3c2hhcGVfY2FzdFNoYXBlAJkBGHJhd3NoYXBlX2ludGVyc2VjdHNTaGFwZQCVAhVyYXdzaGFwZV9jb250YWN0U2hhcGUA1AEWcmF3c2hhcGVfY29udGFpbnNQb2ludACMAxVyYXdzaGFwZV9wcm9qZWN0UG9pbnQA5wIWcmF3c2hhcGVfaW50ZXJzZWN0c1JheQC9AhByYXdzaGFwZV9jYXN0UmF5ALACHHJhd3NoYXBlX2Nhc3RSYXlBbmRHZXROb3JtYWwAlAIaX193YmdfcmF3c2hhcGVjYXN0aGl0X2ZyZWUAqAkYcmF3c2hhcGVjYXN0aGl0X3dpdG5lc3MxANkIF3Jhd3NoYXBlY2FzdGhpdF9ub3JtYWwxANoIF3Jhd3NoYXBlY2FzdGhpdF9ub3JtYWwyANsIIl9fd2JnX3Jhd2NvbGxpZGVyc2hhcGVjYXN0aGl0X2ZyZWUAqQkmcmF3Y29sbGlkZXJzaGFwZWNhc3RoaXRfdGltZV9vZl9pbXBhY3QAgQwgcmF3Y29sbGlkZXJzaGFwZWNhc3RoaXRfd2l0bmVzczEA3AggcmF3Y29sbGlkZXJzaGFwZWNhc3RoaXRfd2l0bmVzczIA3QgPcmF3cm90YXRpb25fbmV3ALAMFHJhd3JvdGF0aW9uX2lkZW50aXR5AP4MDXJhd3JvdGF0aW9uX3cAggwOcmF3dmVjdG9yX3plcm8Arw0NcmF3dmVjdG9yX25ldwC+DA9yYXd2ZWN0b3Jfc2V0X3kAogwPcmF3dmVjdG9yX3NldF96AKMMDXJhd3ZlY3Rvcl94eXoA0QkNcmF3dmVjdG9yX3l4egDSCQ1yYXd2ZWN0b3Jfenh5ANMJDXJhd3ZlY3Rvcl94enkA1AkNcmF3dmVjdG9yX3l6eADVCQ1yYXd2ZWN0b3Jfenl4ANYJFnJhd3NkcG1hdHJpeDNfZWxlbWVudHMAogghX193YmdfcmF3ZGVidWdyZW5kZXJwaXBlbGluZV9mcmVlAMsHGnJhd2RlYnVncmVuZGVycGlwZWxpbmVfbmV3AOkJH3Jhd2RlYnVncmVuZGVycGlwZWxpbmVfdmVydGljZXMA8ggdcmF3ZGVidWdyZW5kZXJwaXBlbGluZV9jb2xvcnMA8wgdcmF3ZGVidWdyZW5kZXJwaXBlbGluZV9yZW5kZXIAjgIYX193YmdfcmF3ZXZlbnRxdWV1ZV9mcmVlAMwHH19fd2JnX3Jhd2NvbnRhY3Rmb3JjZWV2ZW50X2ZyZWUAqgkecmF3Y29udGFjdGZvcmNlZXZlbnRfY29sbGlkZXIyAIMMIHJhd2NvbnRhY3Rmb3JjZWV2ZW50X3RvdGFsX2ZvcmNlAN4IKnJhd2NvbnRhY3Rmb3JjZWV2ZW50X3RvdGFsX2ZvcmNlX21hZ25pdHVkZQCEDChyYXdjb250YWN0Zm9yY2VldmVudF9tYXhfZm9yY2VfZGlyZWN0aW9uAN8IKHJhd2NvbnRhY3Rmb3JjZWV2ZW50X21heF9mb3JjZV9tYWduaXR1ZGUAhQwRcmF3ZXZlbnRxdWV1ZV9uZXcA0woicmF3ZXZlbnRxdWV1ZV9kcmFpbkNvbGxpc2lvbkV2ZW50cwC7CSVyYXdldmVudHF1ZXVlX2RyYWluQ29udGFjdEZvcmNlRXZlbnRzALwJE3Jhd2V2ZW50cXVldWVfY2xlYXIA5AcdX193YmdfcmF3cGh5c2ljc3BpcGVsaW5lX2ZyZWUAzQcWcmF3cGh5c2ljc3BpcGVsaW5lX25ldwCoBCdyYXdwaHlzaWNzcGlwZWxpbmVfc2V0X3Byb2ZpbGVyX2VuYWJsZWQAjgwmcmF3cGh5c2ljc3BpcGVsaW5lX2lzX3Byb2ZpbGVyX2VuYWJsZWQAhgwecmF3cGh5c2ljc3BpcGVsaW5lX3RpbWluZ19zdGVwAIwLLXJhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfY29sbGlzaW9uX2RldGVjdGlvbgDaCiVyYXdwaHlzaWNzcGlwZWxpbmVfdGltaW5nX2Jyb2FkX3BoYXNlANsKJnJhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfbmFycm93X3BoYXNlANwKIHJhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfc29sdmVyAN0KK3Jhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfdmVsb2NpdHlfYXNzZW1ibHkAjQstcmF3cGh5c2ljc3BpcGVsaW5lX3RpbWluZ192ZWxvY2l0eV9yZXNvbHV0aW9uAN4KKXJhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfdmVsb2NpdHlfdXBkYXRlAN8KLHJhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfdmVsb2NpdHlfd3JpdGViYWNrAI4LHXJhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfY2NkAOAKLXJhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfY2NkX3RvaV9jb21wdXRhdGlvbgCPCylyYXdwaHlzaWNzcGlwZWxpbmVfdGltaW5nX2NjZF9icm9hZF9waGFzZQCQCypyYXdwaHlzaWNzcGlwZWxpbmVfdGltaW5nX2NjZF9uYXJyb3dfcGhhc2UAkQskcmF3cGh5c2ljc3BpcGVsaW5lX3RpbWluZ19jY2Rfc29sdmVyAJILLXJhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfaXNsYW5kX2NvbnN0cnVjdGlvbgDhCiZyYXdwaHlzaWNzcGlwZWxpbmVfdGltaW5nX3VzZXJfY2hhbmdlcwCTCxdyYXdwaHlzaWNzcGlwZWxpbmVfc3RlcADGASFyYXdwaHlzaWNzcGlwZWxpbmVfc3RlcFdpdGhFdmVudHMAuAEfX193YmdfcmF3ZGVzZXJpYWxpemVkd29ybGRfZnJlZQDwByByYXdkZXNlcmlhbGl6ZWR3b3JsZF90YWtlR3Jhdml0eQCWCC5yYXdkZXNlcmlhbGl6ZWR3b3JsZF90YWtlSW50ZWdyYXRpb25QYXJhbWV0ZXJzAOkFJnJhd2Rlc2VyaWFsaXplZHdvcmxkX3Rha2VJc2xhbmRNYW5hZ2VyAJ4GI3Jhd2Rlc2VyaWFsaXplZHdvcmxkX3Rha2VCcm9hZFBoYXNlAOUHJHJhd2Rlc2VyaWFsaXplZHdvcmxkX3Rha2VOYXJyb3dQaGFzZQDgBh9yYXdkZXNlcmlhbGl6ZWR3b3JsZF90YWtlQm9kaWVzAOQGInJhd2Rlc2VyaWFsaXplZHdvcmxkX3Rha2VDb2xsaWRlcnMAsgcmcmF3ZGVzZXJpYWxpemVkd29ybGRfdGFrZUltcHVsc2VKb2ludHMAvAUocmF3ZGVzZXJpYWxpemVkd29ybGRfdGFrZU11bHRpYm9keUpvaW50cwC9BSVyYXdzZXJpYWxpemF0aW9ucGlwZWxpbmVfc2VyaWFsaXplQWxsAMABJ3Jhd3NlcmlhbGl6YXRpb25waXBlbGluZV9kZXNlcmlhbGl6ZUFsbADQBhxyYXdjb2xsaWRlcnNldF9pc0hhbmRsZVZhbGlkAPEIHHJhd3JheWludGVyc2VjdGlvbl9mZWF0dXJlSWQAqQskcmF3cmF5Y29sbGlkZXJpbnRlcnNlY3Rpb25fZmVhdHVyZUlkAKkLNXJhd2ludGVncmF0aW9ucGFyYW1ldGVyc19zZXRfbnVtSW50ZXJuYWxQZ3NJdGVyYXRpb25zAJgMD3Jhd3ZlY3Rvcl9zZXRfeACaDA5yZXNlcnZlX21lbW9yeQC4CyJyYXdraW5lbWF0aWNjaGFyYWN0ZXJjb250cm9sbGVyX3VwAM4IF3Jhd3NoYXBlY29udGFjdF9ub3JtYWwyAM4IFnJhd3NoYXBlY29udGFjdF9wb2ludDEA1wgWcmF3c2hhcGVjb250YWN0X3BvaW50MgDcCBlyYXdyYXlpbnRlcnNlY3Rpb25fbm9ybWFsANwIIXJhd3JheWNvbGxpZGVyaW50ZXJzZWN0aW9uX25vcm1hbADcCBdyYXdzaGFwZWNvbnRhY3Rfbm9ybWFsMQDdCB9yYXdjb2xsaWRlcnNoYXBlY2FzdGhpdF9ub3JtYWwxAM4IH3Jhd2NvbGxpZGVyc2hhcGVjYXN0aGl0X25vcm1hbDIAzwgYcmF3c2hhcGVjYXN0aGl0X3dpdG5lc3MyAN4IMXJhd2ludGVncmF0aW9ucGFyYW1ldGVyc19udW1JbnRlcm5hbFBnc0l0ZXJhdGlvbnMA8gsYcmF3c2hhcGVjb250YWN0X2Rpc3RhbmNlAOkLHnJhd3JheWludGVyc2VjdGlvbl9mZWF0dXJlVHlwZQCADClyYXdyYXljb2xsaWRlcmludGVyc2VjdGlvbl9jb2xsaWRlckhhbmRsZQD+CyFyYXdyYXlpbnRlcnNlY3Rpb25fdGltZV9vZl9pbXBhY3QAgQwmcmF3cmF5Y29sbGlkZXJpbnRlcnNlY3Rpb25fZmVhdHVyZVR5cGUAgAwgcmF3cmF5Y29sbGlkZXJoaXRfY29sbGlkZXJIYW5kbGUA7gspcmF3cmF5Y29sbGlkZXJpbnRlcnNlY3Rpb25fdGltZV9vZl9pbXBhY3QAgQwecmF3c2hhcGVjYXN0aGl0X3RpbWVfb2ZfaW1wYWN0APULJnJhd2NvbGxpZGVyc2hhcGVjYXN0aGl0X2NvbGxpZGVySGFuZGxlAO4LHnJhd3JheWNvbGxpZGVyaGl0X3RpbWVPZkltcGFjdACBDA1yYXdyb3RhdGlvbl94APULDXJhd3JvdGF0aW9uX3kA5gsNcmF3cm90YXRpb25fegCBDAtyYXd2ZWN0b3JfeAD1CwtyYXd2ZWN0b3JfeQDmCwtyYXd2ZWN0b3JfegCBDB5yYXdjb250YWN0Zm9yY2VldmVudF9jb2xsaWRlcjEA7gsjcmF3aW50ZWdyYXRpb25wYXJhbWV0ZXJzX2xlbmd0aFVuaXQAhAwZX193YmdfcmF3Y29udGFjdHBhaXJfZnJlZQCjCSVfX3diZ19yYXdyYXljb2xsaWRlcmludGVyc2VjdGlvbl9mcmVlAKUJFl9fd2JnX3Jhd3JvdGF0aW9uX2ZyZWUApAkUX193YmdfcmF3dmVjdG9yX2ZyZWUApwkYX193YmdfcmF3c2RwbWF0cml4M19mcmVlAKYJI19fd2JnX3Jhd3NlcmlhbGl6YXRpb25waXBlbGluZV9mcmVlAJ8JEHJhd2NjZHNvbHZlcl9uZXcArg0ccmF3c2VyaWFsaXphdGlvbnBpcGVsaW5lX25ldwCuDRNfX3diaW5kZ2VuX2V4cG9ydF8wAJwOH19fd2JpbmRnZW5fYWRkX3RvX3N0YWNrX3BvaW50ZXIA9A4TX193YmluZGdlbl9leHBvcnRfMQDzDRNfX3diaW5kZ2VuX2V4cG9ydF8yAKENCdwRAQBBAQv3CIkO4wK8DLAP5Q75DvcO9Q72Dv0M+g6vDLQLng2eDbAFsAXlDMEP+wj7COQD5QOUB/sO5wmr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IAEgCUEYayILNgIEIAEgAkEYajYCACALQQNNBEAgA0EAOgCTDCADQSU7AJEMIANBADYClAwgA0EBOgCQDCADQZAMahCfDQwBCyACKAAUIUQgASAJQRxrIgs2AgQgASACQRxqNgIAIAtBA00EQCADQQA6AJMMIANBJTsAkQwgA0EANgKUDCADQQE6AJAMIANBkAxqEJ8NDAELIAIoABghRSABIAlBIGsiCzYCBCABIAJBIGo2AgAgA0ELNgL0AiALQQNNBEAgA0EAOgCTDCADQSU7AJEMIANBADYClAwgA0EBOgCQDCADQZAMahCfDQwBCyACKAAcIUYgASAJQSRrNgIEIAEgAkEkajYCACACKAAgIUcgA0GQDGoiCSADQfACaiILELoJIAMoApQMIkggAygCkAwiCEECRg0AGiAIQQFxBEAgCSALELoJIAMoApQMIkkgAygCkAwiCEECRg0BGgJAIAhBAXEEQCAJIAsQugkgAygClAwhOSADKAKQDCICQQJHDQEgOQwDC0EHQaS1wQBBkK3BABCoCgwCCwJAIAJBAXEEQCADQZAMaiADQfACahC6CSADKAKUDCE6IAMoApAMIgJBAkcNASA6DAMLQQhBpLXBAEGQrcEAEKgKDAILAkAgAkEBcQRAIANBkAxqIANB8AJqELoJIAMoApQMITsgAygCkAwiAkECRw0BIDsMAwtBCUGktcEAQZCtwQAQqAoMAgsCQCACQQFxBEAgA0GQDGogA0HwAmoQ5AggAygClAwhPCADKAKQDCICQQJHDQEgPAwDC0EKQaS1wQBBkK3BABCoCgwCCwJAIAJBAXEEQCADQZAMaiADQfACahDkCCADKAKUDCE9IAMoApAMIgJBAkcNASA9DAMLQQtBpLXBAEGQrcEAEKgKDAILAkAgAkEBcQRAIANBkAxqIANB8AJqEOQIIAMoApQMIT4gAygCkAwiAkECRw0BID4MAwtBDEGktcEAQZCtwQAQqAoMAgsCQCACQQFxBEAgA0GQDGogA0HwAmoQ5AggAygClAwhPyADKAKQDCICQQJHDQEgPwwDC0ENQaS1wQBBkK3BABCoCgwCCwJAIAJBAXEEQCADQZAMaiADQfACahDkCCADKAKUDCFAIAMoApAMIgJBAkcNASBADAMLQQ5BpLXBAEGQrcEAEKgKDAILAkAgAkEBcQRAIANB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DQALIANCgcoANwOYCiADQZgKahCfDSECDA0LIANBADoAmwogA0ElOwCZCiADQQA2ApwKIANBAToAmAogA0GYCmoQnw0hAgwMCyADQQA6AJsKIANBJTsAmQogA0EANgKcCiADQQE6AJgKIANBmApqEJ8NIQIMCwsgA0EAOgCbCiADQSU7AJkKIANBADYCnAogA0EBOgCYCiADQZgKahCfDSECDAoLIANBADoAmwogA0ElOwCZCiADQQA2ApwKIANBAToAmAogA0GYCmoQnw0hAgwJCyADQQA6AJsKIANBJTsAmQogA0EANgKcCiADQQE6AJgKIANBmApqEJ8NIQIMCAsgA0EAOgCbCiADQSU7AJkKIANBADYCnAogA0EBOgCYCiADQZgKahCfDSECDAcLIANBADoAmwogA0ElOwCZCiADQQA2ApwKIANBAToAmAogA0GYCmoQnw0hAgwGCyADQQA6AJsKIANBJTsAmQogA0EANgKcCiADQQE6AJgKIANBmApqEJ8NIQIMBQsgGyECDAQLIANBADoAmwogA0ElOwCZCiADQQA2ApwKIANBAToAmAogA0GYCmoQnw0hFAwBC0EEQfTXwQBBkK3BABCoCiEBIABBAjYCxAcgACABNgIADA4LIBoEQCAaQTBBBBDoDgsgFCECDAELIANBADoAmwogA0ElOwCZCiADQQA2ApwKIANBAToAmAogA0GYCmoQnw0hAgsgAygC7BEhCSAQBEAgCSEBA0ACQCABKAIARQ0AIAFBxAJqKAIAIgsEQCALQTBBBBDoDgsgAUHoAmooAgAiC0UNACABQewCaigCACALQQN0QQQQ6A4LIAFBgANqIQEgEEEBayIQDQALCyADKALoESIBRQ0EIAkgAUGAA2xBEBDoDgwECwJAAkACQAJAIAwoAgQiAkEETwRAIAwgAkEEayIJNgIEIAwgDCgCACIBQQRqNgIAIAlFBEAgA0KBygA3A5gKIANBmApqEJ8NIQIMBAsgATUAACFmIAwgAkEFayITNgIEIAwgAUEFaiIaNgIAAkACQCABLQAEIg4OAgQAAQsgCUEESw0CIANCgcoANwOYCiADQZgKahCfDSECDAQLQQxBBBCRDiICRQ0bIAIgDjYCBCACQYSAgIB4NgIADAMLIANCgcoANwOYCiADQZgKahCfDSECDAILIAwgAkEJayIT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AgJAIANB////H0sNACAJQfz///8HSw0AIAsoAoABIQUCQCAJRQRAQQQhAEEAIQQMAQtBBCECIAMhBCAJQQQQkQ4iAEUNAQsgCQRAIAAgBSAJ/AoAAAsgC0EANgKEASAMQaQGaiIGKgIAISIgDCoC3AYhJiAMKgLQBiEoIAwqApwGISogDCoCoAYhISAMKgLYBiEjIAwqAtQGISUgDEEgaiAGKAIANgIAIAwgDCkCnAY3AxggDEHYAWoiAiAIIAxBGGoiBRChDyAMICYgKiAllCAhICiUkyIKIAqSIimUICggIiAolCAqICOUkyIKIAqSIiSUICUgISAjlCAiICWUkyIKIAqSIgqUk5IgIpMiIjgCkAQgDCAmICSUICMgCpQgKCAplJOSICGTIiE4AowEIAwgJiAKlCAlICmUICMgJJSTkiAqkyIKOAKIBCAFIAcgDEGIBGoQoQ8gASAMQZgGakEEciACIAUgC0EAECsgCyAiOAKcASALICE4ApgBIAsgCjgClAEgC0GQAWogBigCADYCACALIAwpApwGNwKIAQJAIAsoAoQBIgFFDQAgA0UNACALKAKAASICIAFBBnRqIQggACADQQZ0aiEHIABBJGohCyAAQUBrIQEgCUFAaiIGQcAAcSEDA0AgAkEkaiEOIAIoAhwhCSAAIQUCQCADDQAgASEFIAkgACgCHEcNACACKAIgIAAoAiBHDQAgDiAL/QACAP0LAgAgDkEYaiALQRhqKAIANgIAIA5BEGogC0EQaikCADcCAAsgBgRAA0ACQCAJIAVBHGooAgBHDQAgAigCICAFQSBqKAIARw0AIA5BGGogBUE8aigCADYCACAOQRBqIAVBNGopAgA3AgAgDiAFQSRq/QACAP0LAgALAkAgCSAFQdwAaigCAEcNACACKAIgIAVB4ABqKAIARw0AIA5BGGogBUH8AGooAgA2AgAgDkEQaiAFQfQAaikCADcCACAOIAVB5ABq/QACAP0LAgALIAcgBUGAAWoiBUcNAAsLIAggAkFAayICRw0ACwsgBEUNAyAAIARBBnRBBBDoDgwDCyACIAlBgPzBABDXDQALIAsgKTgCnAEgCyAkOAKYASALICE4ApQBIAsgIzgCkAEgCyAiOAKMASALIAo4AogBDAELIAtBADYChAELIAxBkAhqJAAgDQvThAEEH38RfQN+AXsj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JEHcAGogAiASQQRByAAQ1wYgJCgCZCEPCyApKAJgIA9ByABsaiEBIBJBAk8EQCAmIAJBf3NqIg5BAXEhECACICZBAmtHBEAgDkF+cSEOA0AgAUIANwIAIAFBCGpCfzcCACABQRBqQn83AgAgAUEYakJ/NwIAIAFBIGpBfzYCACABQdAAakJ/NwIAIAFByABqQgA3AgAgAUHEAGpBADsBACABQTRq/Qz//39///9/f///f3///39//QsCACABQSRq/QwAAAAA//9/////f3///39//QsCACABQdgAakJ/NwIAIAFB4ABqQn83AgAgAUHoAGpBfzYCACABQYwBakEAOwEAIAFB/ABq/Qz//39///9/f///f3///39//QsCACABQewAav0MAAAAAP//f////39///9/f/0LAgAgAUGQAWohASAOQQJrIg4NAAsLIA8gEmpBAWshDyAQBEAgAUJ/NwIIIAFCADcCACABQQA7AUQgAf0M//9/f///f3///39///9/f/0LAjQgAf0MAAAAAP//f////39///9/f/0LAiQgAUEQakJ/NwIAIAFBGGpCfzcCACABQSBqQX82AgAgAUHIAGohAQsLIAFCfzcCCCABQgA3AgAgAUEAOwFEIAH9DP//f3///39///9/f///f3/9CwI0IAH9DAAAAAD//3////9/f///f3/9CwIkIAFBEGpCfzcCACABQRhqQn83AgAgAUEgakF/NgIAIA9BAWohJgsgKSAmNgJkIBVBoApqJAAMAwsgGiBnQciOwgAQ8A4AC0HQi8IAQRNB2MfCABDRCwALQdCLwgBBE0Hox8IAENELAAsgF0HgAmoiARC6CiAXQbAEaiABIKkCIIMBEOQJIAApA3gingIgFykDsAR8Ip0CIJ4CVA0aIAAoAoABIBcoArgEaiIBQYCU69wDTwRAIJ0CQn9RDRsgnQJCAXwhnQIgAUGAlOvcA2shAQsgACABNgKAASAAIJ0CNwN4IABBgJTr3AM2AnAgF0GwBGoQugogFykDsAQhnQIgACAXKAK4BCICNgJQIAAgnQI3A0gghAENAQwYC0GwssIAEPIOAAsgLigC6AIiASAuKALQAiIQIAEgEEkbISYgLigC5AIhRCAuKALMAiFHIC4oAvgCIoYBIC4oAogDIgFHDRUgLkHsAmohYkMAAAAAQwAAgD9DAACA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IAH9HAEh0gFCACGdAkIAIaACIDtFBEAgGSkDOCGgAiAZKQMwIZ0CCyDiASDpAf0NAAECAwQFBgccHR4fAAECAyHiASDgASDpAf0NAAECAwQFBgcYGRobAAECAyHgASDoASDpAf0NAAECAwQFBgcUFRYXAAECAyHoASDhASDpAf0NAAECAwQFBgcQERITAAECAyHhASDeASDwAf0NAAECAwQFBgcQERITAAECAyHeASDcASDXAf0NAAECAwQFBgcQERITAAECAyHcASDdASDmAf0NAAECAwQFBgcQERITAAECAyHdASDaASDwAf0NAAECAwQFBgcYGRobAAECAyHaASDfASDwAf0NAAECAwQFBgcUFRYXAAECAyHfASDZASDXAf0NAAECAwQFBgcYGRobAAECAyHZASDbASDXAf0NAAECAwQFBgcUFRYXAAECAyHbASDYASDmAf0NAAECAwQFBgcUFRYXAAECAyHYASDWASDwAf0NAAECAwQFBgccHR4fAAECAyHWASDVASDXAf0NAAECAwQFBgccHR4fAAECAyHVASDTASDmAf0NAAECAwQFBgcYGRobAAECAyHTASDSASDmAf0NAAECAwQFBgccHR4fAAECAyHSAf0MAAAAAAAAAAAAAAAAAAAAACHXAf0MAAAAAAAAAAAAAAAAAAAAACGBAiAzRQRAICv9AAQwIYECCyDiASDjAf0NAAECAwQFBgcICQoLHB0eHyH2ASDgASDjAf0NAAECAwQFBgcICQoLGBkaGyGGAiDoASDjAf0NAAECAwQFBgcICQoLFBUWFyH+ASDhASDjAf0NAAECAwQFBgcICQoLEBESEyH/ASDeASDyAf0NAAECAwQFBgcICQoLEBESEyH9ASDcASCSAv0NAAECAwQFBgcICQoLEBESEyH7ASDdASD0Af0NAAECAwQFBgcICQoLEBESEyHkASDaASDyAf0NAAECAwQFBgcICQoLGBkaGyHxASDfASDyAf0NAAECAwQFBgcICQoLFBUWFyH3ASDZASCSAv0NAAECAwQFBgcICQoLGBkaGyGEAiDbASCSAv0NAAECAwQFBgcICQoLFBUWFyHrASDYASD0Af0NAAECAwQFBgcICQoLFBUWFyHqASDWASDyAf0NAAECAwQFBgcICQoLHB0eHyHlASDVASCSAv0NAAECAwQFBgcICQoL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ACHUASACQRBq/QAEACHVASACQeAAav0ABAAh4AEgAkHQAGr9AAQAIYQCIAJBQGv9AAQAIesBIAJBkAFq/QAEACHmASACQYABav0ABAAh4wEgAkHwAGr9AAQAIekBIBdBsARq/QwAAAAAAAAAAAAAAAAAAAAA/QsEACAX/QAEsAQh0wEgDyAeaiIgQeADaiIC/QAEACHXASACIJMCINcB/eYB/QsEACAgQfADaiICINcBIAL9AAQA/eQB/QsEACAgQdADaiDYASCUAv0MAAAAAAAAAAAAAAAAAAAAACDWASD3ASDzASDSAf3mASDgASCEAiD2Af3mASDrASD/Af3mAf3lASLSASDSAf3kASLlASDuAf3mASDrASD+Af3mASDgASD2Af3mAf3lASLSASDSAf3kASLiASD2Af3mASDgASD/Af3mASCEAiD+Af3mAf3lASLSASDSAf3kASLgASD/Af3mAf3lAf3kAf3kASDhAf3kAf3kASDmASDjASDvAf3mASDpASD6Af3mAf3lASLSASDSAf3kASLXASD7Af3mASDpASD4Af3mASDmASDvAf3mAf3lASLSASDSAf3kASLYASDvAf3mASDmASD6Af3mASDjASD4Af3mAf3lASLSASDSAf3kASLSASD6Af3mAf3lAf3kAf3kASDdAf3kAf3lASLWAf3mASD9ASDzASDUAf3mASDrASDgASDuAf3mASDlASD/Af3mASDiASD+Af3mAf3lAf3kAf3kASDoAf3kAf3kASDpASDSASD7Af3mASDXASD6Af3mASDYASD4Af3mAf3lAf3kAf3kASDcAf3kAf3lASLUAf3mASDxASDzASDVAf3mASCEAiDiASDuAf3mASDgASD+Af3mASDlASD2Af3mAf3lAf3kAf3kASDeAf3kAf3kASDjASDYASD7Af3mASDSASD4Af3mASDXASDvAf3mAf3lAf3kAf3kASDaAf3kAf3lASLVAf3mAf3kAf3kAf3kASLYAf0MAAAAAAAAAAAAAAAAAAAAAP3rASDYASDYAf1C/VL95gH95AEi0gH9CwQAICBBwANqINIBINMBIJkC/eUBItIB/QwAAAAAAAAAAAAAAAAAAAAAIJgCIJsCINgB/eQB/eYBItMB/QwAAAAAAAAAAAAAAAAAAAAA/eoBINMBINMB/UL9UiLTASDSAf3rASDT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IBD9AASQECHxASAQ/QAE0A0h9wEgEP0ABIAOIeoBIBD9AASgECHlASAQ/QAE4A0h3wEgEP0ABJAOIdkBIBD9AARgIeIBIBD9AARwIeABIBD9AASAASHoASAQ/QAE0A8h2AEgEP0ABOAPIdMBIBD9AATAECGHAiAQ/QAE8A8h0gEgJSCFAiDWASCRAiCAAv3mASD8ASDbASCQAv3mASCPAiCSAv3mAf3lASLWAf3mAf3kAf3mAf3kASKNAv0LBEAgJSDcASDVASCQAiCAAv3mASD8ASCGAiCPAv3mASDbASCRAv3mAf3lASLVAf3mAf3kAf3mAf3kASLbAf0LBDAgJf0AAjQh4QEgJf0AAzgh3gEgJf0AAjwh3AEgJSDUASCAAiCEAv3mASD8ASDdAf3mAf3kAf3kASDSASCHAv3mAf3kASKJAv1aAigCICUgiQL9WwMgACAlINcBIIACIO4B/eYBIPwBIPsB/eYB/eQB/eQBINMBIIcC/eYB/eQBItMB/QsEECCDAiDzASCPAiCAAv3mASD8ASCRAiCSAv3mASCGAiCQAv3mAf3lASLSAf3mAf3kAf3mAf3kASHuASCOAiCAAiD6Af3mASD8ASDvAf3mAf3kAf3kASDYASCHAv3mAf3kASH7ASDWASDaASD8Af3lASKEAv3mASHdASDjASDrASCAAv3lASLjAf3mASHYASDVASCEAv3mASHXASDjASDmAf3mASHWASD8ASDZAf3mASHaASCAAiDfAf3mASHUASD8ASDqAf3mASHfASCAAiD3Af3mASHVASABIChJDQEMAgsgAUEEQZinwgAQ8A4ACyAdIAFBBXRqIgEg0wEgiQL9DQABAgMQERITAAECAwABAgMg/gH9DQABAgMEBQYHEBESEwABAgMg/wH9DQABAgMEBQYHCAkKCxAREhP9CwQQIAEg2wEgjQL9DQABAgMQERITAAECAwABAgMg7gH9DQABAgMEBQYHEBESEwABAgMg+wH9DQABAgMEBQYHCAkKCxAREhP9CwQACyDSASCEAv3mASHZASDjASDpAf3mASHTASD8ASDkAf3mASHbASCAAiD9Af3mASHSASDYASDdAf3kASHYASDWASDXAf3kASHWASDUASDaAf3kASHUASDVASDfAf3kASHVASACIChJBEAgHSACQQV0aiIBICX9AAIUIIkC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H0EBaw4CAQACCyACIBJqQaQBaiDSAf0fADgCAAwCCyACICZqQRhqINIB/R8AOAIADAELIAIgIUECdGpB0AJqINIB/R8AOAIACyBAIBgoAiQiAk0NASA3IAJBgANsaiECAkACQAJAAkAgH0EBaw4CAQACCyACIBJqQaQBaiDSAf0fATgCAAwCCyACICZqQRhqINIB/R8BOAIADAELIAIgIUECdGpB0AJqINIB/R8BOAIACyBAIBgoAigiAk0NASA3IAJBgANsaiECAkACQAJAAkAgH0EBaw4CAQACCyACIBJqQaQBaiDSAf0fAjgCAAwCCyACICZqQRhqINIB/R8COAIADAELIAIgIUECdGpB0AJqINIB/R8COAIACyBAIBgoAiwiAk0NASA3IAJBgANsaiECAkACQAJAAkAgH0EBaw4CAQACCyACIBJqQaQBaiDSAf0fAzgCAAwCCyACICZqQRhqINIB/R8DOAIADAELIAIgIUECdGpB0AJqINIB/R8DOAIACyAeQSBqJAAMBQsgAiBATw0AIB9BAWsOAgIDAQsgAiBAQdCxwgAQhQsACyAeQQA2AhggHkEBNgIMIB5B7IDCADYCCCAeQgQ3AhAgHkEIakHgscIAELkNAAsgIUEGQfCxwgAQhQsACyAhQQZBgLLCABCFCwALIBhBkARqIRhBACECDAELCyMAQSBrIgIkAAJAAkACQAJAAkACQAJAIBooAhAiASBASQRAIDcgAUGAA2xqIQEgGigCBCESIBooAgBBAWsOAgIDAQsgASBAQeCwwgAQhQsACyASQQZPDQIgASASQQJ0akHQAmogGioCFDgCAAwFCyASQQZJDQMgEkEGQYCxwgAQhQsACyASQQZJDQEgEkEGQZCxwgAQhQsACyACQQA2AhggAkEBNgIMIAJB7IDCADYCCCACQgQ3AhAgAkEIakHwsMIAELkNAAsgASASQRxsakGkAWogGioCFDgCAAwBCyABIBJBDGxqQRhqIBoqAhQ4AgALIAJBIGokACAaQYgBaiEaDAELCyAuKAJ4IhggLigCfEGAEmxqITYgLigCbCIaIC4oAnBBsB1saiFBIC4oAmAiECAuKAJkQbgHbGohQgNAIBogQUchEkEBIQICQANAAkAgAkEBcQRAAkAgEEUNACAQIEJGDQAgECA8ICwQywMgEEG4B2ohAgNAIAIg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IAYoAogDIRQgBigCjAMhAkEAIREDQCAcKAIAIgEgAk8NECAUIAFBgANsaiIBKAIAQQFHDRAgASgCBCAcQQRqKAIARw0QIAEtAD0EQCABILEBIAEqApgBIqABIKABlCABKgKcASKgASCgAZSSIAEqAqABIqABIKABlJKRIAEqAjQgASoCpAEioAEgoAGUIAEqAqgBIqABIKABlJIgASoCrAEioAEgoAGUkpGUkpQgASoCMEMAACBBlV4iAToAPCABIBFyIRELIA8gHEEIaiIcRw0ACyARQQFxRQ0HICJBkAFqIi4QugogIigCmAEhPSAAICIpA5ABIqECNwPQAUEAIQJBACEUQQAhDiMAQdAEayIWJAAgIkEwaiIBKgIAIaABIBZCidm54o7TvpcINwMoIBZByOfBAP0AAwAi0gH9CwMYIBZBADYCPCAWQoCAgIDAADcCNCAWQonZueKO076XCDcDUCAWINIB/QsDQCAHKAIQIjpBsAFsIRAgASoCHEMK1yM8lCGaASAGKAKIAyEcIAYoAowDIRIgBygCDCEzQQAhAQNAAkACQAJAAkAgAiAQRwRAIAIgM2oiEygCAEUNAyATQfIAai0AAA0DIBNBIGooAgBFDQMCQCATQSRqKAIAIhEgEk8NACAcIBFBgANsaiIRKAIAQQFHDQAgESgCBCATQShqKAIARg0CC0HQi8IAQRNB+MDCABDRCwALIBYgBzYCtAEgFiAGNgKwASAWIAQ2AqwBIBZCADcCmAEgFkEANgKMASAWQQA2AoABIBZBADYCdCAWIAUoAkAiTzYCqAEgFiAFKAI8IE8oAghBAWtBeHFqQQhqIkc2AqQBIKABIZkBIAMoAggiAkUNASADKAIEIgEgAkEDdGohNiABQQhqIQIgFkGwAmohQCAFKAIUITIgBSgCECE+IAUoAgQhICAFKAIIIUUgBSgCOCFBIAUoAjQhLSAWQZgEaiEkIAYoAogDISwgBigCjAMhPCBPQSBqISEDQAJAIAEoAgAiESA8Tw0AICwgEUGAA2xqIhEoAgBBAUcNACARKAIEIAEoAgRHDQAgAiETAkAgES0APEUNACARKgKkASGkASARKgLoASGjASARKgKoASGlASARKgLsASGrASARKgL0ASGtASARKgKsASGhASARKgLEASGqASARKgL8ASGiASARKgK8ASGuASAR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BEAgACACQQRBAUEBENYGIAAoAgghAgsgACgCBCACakEMNgAAIAAgAkEEaiICNgIIIANBBGoqAgAhDiADKgIAIQ8gACgCACACa0EDTQRAIAAgAkEEQQFBARDWBiAAKAIIIQILIAAoAgQgAmogDzgAACAAIAJBBGoiAjYCCCAAKAIAIAJrQQNNBEAgACACQQRBAUEBENYGIAAoAgghAgsgACACQQRqNgIIIAAoAgQgAmogDjgAAEEAIQAMBgsgCCgCCCEDIAEoAgAiACgCCCECIAAoAgAgAmtBA00EQCAAIAJBBEEBQQEQ1gYgACgCCCECCyAAIAJBBGo2AgggACgCBCACakELNgAAIAMgARDWASEADAULIAEoAgAiACgCCCECIAAoAgAgAmtBA00EQCAAIAJBBEEBQQEQ1gYgACgCCCECCyAAIAJBBGo2AgggACgCBCACakEKNgAAIAgoAggiBEEEaigCACECIARBCGooAgAiBa0hCiABKAIAIgAoAgghAyAAKAIAIANrQQdNBEAgACADQQhBAUEBENYGIAAoAgghAwsgACADQQhqNgIIIAAoAgQgA2ogCjcAACAFQSRsIQMDQCADBEAgASACEM4GIgANBiACQRBqIAEQkAgiAA0GIANBJGshAyACQRxqIQAgAkEkaiECIAAgARAtIgBFDQEMBgsLIAEgBEEMahDxASIADQQgBEE4aigCACECIARBPGooAgAiBa0hCiABKAIAIgAoAgghAyAAKAIAIANrQQdNBEAgACADQQhBAUEBENYGIAAoAgghAwsgACADQQhqNgIIIAAoAgQgA2ogCjcAACAFQRhsIQMDQCADBEAgAiABEJAIIgANBiADQRhrIQMgAkEMaiEAIAJBGGohAiAAIAEQkAgiAEUNAQwGCwsgBEFAayABEJAIIgANBCAEQcwAaiABEJAIIQAMBAsgCCgCCCEGIAEoAgAiAigCCCEAIAIoAgAgAGtBA00EQCACIABBBEEBQQEQ1gYgAigCCCEACyACIABBBGo2AgggAigCBCAAakEJNgAAIAEgBhDkBSIADQMgBigCGCEDIAYoAhwiBa0hCiACKAIAIAIoAggiBGtBB00EQCACIARBCEEBQQEQ1gYgAigCCCEECyACIARBCGoiADYCCCACKAIEIARqIAo3AAAgBQRAA0AgAy0AACEHIANBAWoh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IgFBFGooAgAhFiABQRBqKAIAIQkgACgCECgCACIBQSxqKAIAIR0gAUEoaigCACEDIBIoAowDIQEgACgCFCgCACEXAkAgBioC+AEiJ0MAAAAAWwRAIAFBgANsIQADQCAARQ0CIABBgANrIQAMAAsACyAGKAKAAkECcUUEQCABQYADbCEAA0AgAEUNAiAAQYADayEADAALAAsgEigCiAMhCCABQYADbCEKIBj9AAMAITggGf0AAwAhOUEAIQEDQCABIApGDQECQCABIAhqIgAoAgBFDQAgAEEEaigCACEFIAIgAEEQajYCrAEgAiAFNgKoASACIAw2AqQBIAJBADYCoAEgAkEEaiACQaABahCLA0UNACAAQcQAaioCACIkIABByABqKgIAIiiUIiYgJpIiISAAQUBrKgIAIiYgAEHMAGoqAgAiKZQiIyAjkiIjkiEuICYgKJQiJSAlkiIlICQgKZQiIiAikiIikyEsICEgI5MhLyAmICSUIiEgIZIiISAoICmUIiMgI5IiI5IhMCAlICKSITEgISAjkyEtICggKJQiISApICmUIiUgJiAmlCIikyIrICQgJJQiI5OSISogIyArkiAhkyEyICIgJZIgI5MgIZMhMyA5ITcgAEH2AmotAABBAUYEQCA4/QwAAIA/AACAPwAAgD8AAIA/IABB5AJqLQAAGyE3CyAAQdAAaioCACE0IABB1ABqKgIAITUgJiAAQawCaioCACIilCAkIABBqAJqKgIAIiuUkyIhICGSISMgKCArlCAmIABBsAJqKgIAIiGUkyIlICWSISUgAiAnICyUIABB2ABqKgIAICEgKSAjlCAmICWUICQgJCAhlCAoICKUkyIhICGSIiyUk5KSkiIhkjgChAEgAiAnIDCUIDUgIiApICWUICggLJQgJiAjlJOSkpIiJpI4AoABIAIgJyAzlCA0ICsgKSAslCAkICOUICggJZSTkpKSIiSSOAJ8IAIgN/0fAyIoOAKsASACIDf9HwIiKUMAAIA+lDgCqAEgAiA3/R8BIiM4AqQBIAIgN/0fACIlQwAAAACUOAKgASACICE4AmAgAiAmOAJcIAIgJDgCWCACQQRqIgAgAkHYAGoiBSACQfwAaiIEIAJBoAFqIgcQxAMgAiAnIC6UICGSOAKEASACICcgMpQgJpI4AoABIAIgJyAtlCAkkjgCfCACICg4AqwBIAIgKUPNzMw9lDgCqAEgAiAjOAKkASACICVDAADwQpQ4AqABIAIgITgCYCACICY4AlwgAiAkOAJYIAAgBSAEIAcQxAMgAiAnICqUICGSOAKEASACICcgL5QgJpI4AoABIAIgJyAxlCAkkjgCfCACICg4AqwBIAIgKUPNzEw+lDgCqAEgAiAjOAKkASACICVDAABwQ5Q4AqABIAIgITgCYCACICY4AlwgAiAkOAJYIAAgBSAEIAcQxAMLIAxBAWohDCABQYADaiEBDAALAAsCQCAGKAKAAiIAQQFxRQ0AIAZBLGohCCAGQShqIQogBkEkaiEPIAZBIGohEyAGQTxqIRQgBkE4aiEVIAZBNGohECAGQTBqIQsgBkHMAGohESAGQcgAaiEaIAZBxABqIRsgBkFAayEeIA4oAhBBsAFsIR8gDigCDCEgQQAhAEEAIQwDQAJAAkAgACAfRwRAIAAgIGoiDSgCAA0BDAILIAYoAoACIQAMAwsgAiAMNgJIIAJBATYCRCACIA1BEGo2AlAgAiANQQRqKAIANgJMIAJBBGogAkHEAGoQiwNFDQACewJAIA1BIGooAgBBAXEEQCASIA1BJGooAgAgDUEoaigCABC5DCIcDQELIAb9AANQDAELAnsCQCAcLQDmAkUNACANQfIAai0AAA0A/QwAAIA/AACAPwAAgD8AAIA/IBwtANQCQQFHDQEaIBj9AAMADAELIBn9AAMACyE3IBMhASAPIQUgCiEEIAghBwJAAkACQCAcLQDlAkEBaw4DAAEBAgsgCyEBIBAhBSAVIQQgFCEHDAELIB4hASAbIQUgGiEEIBEhBwsgNyAHIAQgBSAB/VwCAP1WAgAB/VYCAAL9VgIAA/3mAQshNyANQdAAaigCACEBIA1B1ABqKAIAIgUoAgghBCACIDf9CwSgASAGIAJBxABqIAJBBGogASAEQQFrQXhxakEIaiAFIA1BhAFqIAJBoAFqEEILIAxBAWohDCAAQbABaiEADAALAAsCQCAAQcAAcUUNACAGQeABaiEHIA4oAhBBsAFsIQEgDigCDCEAQQAhDANAAkAgAQRAIAAoAgBFDQEgAEEEaigCACEIIABBEGoiBSgCRCEEIAJB2ABqIgogBSgCQCAEKAIIQQFrQXhxakEIaiAFQfQAaiAEKAKUAREBACACIAU2AogBIAIgCDYChAEgAiAMNgKAASACQQI2AnwgAiACKgJsIAIqAmCTQwAAAD+UOAJ4IAIgAioCaCACKgJck0MAAAA/lDgCdCACIAIqAmQgAioCWJNDAAAAP5Q4AnAgAiAKNgKMASACQQRqIgUgAkH8AGoiBBCLA0UNASAC/QwAAAAAAAAAAAAAAAAAAIA//QsEoAEgAiACKgJgIAIqAmySQwAAAD+UOAK4ASACIAIqAlwgAioCaJJDAAAAP5Q4ArQBIAIgAioCWCACKgJkkkMAAAA/lDgCsAEgAiAH/QACAP0LA5ABIAYgBCAFIAJB8ABqQZzKwQAgAkGgAWogAkGQAWoQQgwBCyAGKAKAAiEADAILIABBsAFqIQAgDEEBaiEMIAFBsAFrIQEMAAsACyACIBk2AmQgAiAYNgJgIAIgEjYCXCACIAJBBGo2AlgCQCAAQQhxRQ0AIB1FDQAgHUGAA2whACAGQfAAaiEEIAZB4ABqIQcgAkHUAWohCCACQcQBaiEBIAJBtAFqIQUDQCADQegCaikDACE6IAUgB/0AAgD9CwIAIAEgBP0AAgD9CwIAIAIgAzYC4AEgAiA6NwLYASACQQM2AtQBIAIgAzYCoAEgAiADQcACav0ABAAiN/0LAqQBIAJB2ABqIDf9GwAgN/0bASA3/RsCIDf9GwMgAyAFIAEgCBC/AiADQYADaiEDIABBgANrIgANAAsgBigCgAIhAAsCQCAAQQRxRQ0AIBcoAjgiAEUNACAXKAI0IQMgBkGQAWohCiAGQYABaiEPIABBFGxBFGshACAXKAJIIRMgFygCTCEUIAJB1AFqIRUgAkHEAWohByACQbQBaiEIQQAhAQNAAkACQCADKAIAIhBBf0cEQCADQRBqKAIAIgUNAQsgAEUNAwwBCwJAAkACQAJAIANBBGooAgAiBCAUTw0AIBMgBEGkAmxqIgQoAgBBgICAgHhGDQAgBCgCoAIgA0EIaigCAEcNACAEKAIIIgsgBU0NASAEKAIEIhEgBUHwA2xqIgUoApADRQ0CIAsgBSgCmAMiC00NAyAIIA/9AAIA/QsCACAHIAr9AAIA/QsCACACIAQ2AuABIAIgEDYC3AEgAiABNgLYASACQQQ2AtQBIAIgBTYC5AEgAiAFKAL0AiIENgKwASACIAUoAvACIhA2AqwBIAIgBUEQaiIFNgKgASACIBEgC0HwA2xqIgsoAvQCIhE2AqgBIAIgCygC8AIiCzYCpAEgAkHYAGogCyARIBAgBCAFIAggByAVEL8CIAANBAwGC0GRgMAAQRNB0MLBABDRCwALQeDCwQAQ8g4AC0HYyMEAEPIOAAtB6MjBABDyDgALIANBFGohAyAAQRRrIQAgAUEBaiEBDAALAAsCQAJAIAYoAoACIhNBIHFFDQAgFkUNASAJIBZBOGxqIRQgBkHQAWohFSAGQcABaiEQIAlBOGohACAGKgL8ASExIAkhAwNAIAAhBSAOIAMoAgwgAygCEBC6DCEEIA4gAygCFCADKAIYELoMIQcCQCAERQ0AIAdFDQAgAiAHNgKsASACIAQ2AqgBIAIgAzYCpAEgAkEFNgKgASACQQRqIAJBoAFqEIsDRQ0AIAMoAggiAEUNACADKAIEIgEgAEGoAWxqIQsgAUGoAWohAANAIAEhAyAAIQEgAygChAEiCARAIAMoAoABIQAgCEEGdCEIA0ACfSADKAIAQQFxBEAgAyoCGCIpIAQqAnQiJ5QgAyoCFCIlIAQqAngiJJSTIiggKJIhKCAlIAQqAnwiIZQgAyoCHCIiICeUkyImICaSISYgBCoCjAEgIiAEKgKAASIjICiUICcgJpQgJCAiICSUICkgIZSTIiIgIpIiIpSTkpKSIS4gBCoCiAEgKSAjICaUICEgIpQgJyAolJOSkpIhLyAEKgKEASAlICMgIpQgJCAolCAhICaUk5KSkiEwIAMqAhAiJSAhlCADKgIIIiIgJ5QgAyoCDCIrICOUkiADKgIEIiwgJJSTkiEoICwgIZQgJSAklCAiICOUICsgJ5STkpIhJiArICSUICUgJ5QgLCAjlJKSICIgIZSTISkgJSAjlCAsICeUkyAiICSUkyArICGUkwwBCyAEKgKMASEuIAQqAogBIS8gBCoChAEhMCAEKgJ8ISggBCoCeCEmIAQqAnQhKSAEKgKAAQshJyApIABBBGoiCioCACIjlCAmIAAqAgAiJZSTIiQgJJIhJCAoICWUICkgAEEIaiIPKgIAIiKUkyIhICGSISEgAiAuICIgJyAklCApICGUICYgJiAilCAoICOUkyIiICKSIiKUk5KSkjgCYCACIC8gIyAnICGUICggIpQgKSAklJOSkpI4AlwgAiAwICUgJyAilCAmICSUICggIZSTkpKSOAJYAn0gAygCIEEBcQRAIAMqAjgiLCAHKgJ0IiSUIAMqAjQiLSAHKgJ4IiGUkyIjICOSISIgLSAHKgJ8IiOUIAMqAjwiKiAklJMiJSAlkiErIAcqAowBICogByoCgAEiJSAilCAkICuUICEgKiAhlCAsICOUkyIqICqSIiqUk5KSkiE0IAcqAogBICwgJSArlCAjICqUICQgIpSTkpKSITUgByoChAEgLSAlICqUICEgIpQgIyArlJOSkpIhNiADKgIwIi0gI5QgAyoCKCIqICSUIAMqAiwiMiAllJIgAyoCJCIzICGUk5IhIiAzICOUIC0gIZQgKiAllCAyICSUk5KSISsgMiAhlCAtICSUIDMgJZSSkiAqICOUkyEsIC0gJZQgMyAklJMgKiAhlJMgMiAjlJMMAQsgByoCjAEhNCAHKgKIASE1IAcqAoQBITYgByoCfCEiIAcqAnghKyAHKgJ0ISwgByoCgAELISQgLCAAQRBqKgIAIiWUICsgAEEMaioCACItlJMiISAhkiEhICIgLZQgLCAAQRRqKgIAIiqUkyIjICOSISMgAiA0ICogJCAhlCAsICOUICsgKyAqlCAiICWUkyIqICqSIiqUk5KSkjgCqAEgAiA1ICUgJCAjlCAiICqUICwgIZSTkpKSOAKkASACIDYgLSAkICqUICsgIZQgIiAjlJOSkpI4AqABIAJBBGoiESACQdgAaiIaIAJBoAFqIhsgEBDEAyApIAoqAgAiJZQgJiAAKgIAIiSUkyIhICGSISEgKCAklCApIA8qAgAiIpSTIiMgI5IhIyACIC4gIiAnICGUICkgI5QgJiAmICKUICggJZSTIiIgIpIiIpSTkpKSOAJgIAIgLyAlICcgI5QgKCAilCApICGUk5KSkjgCXCACIDAgJCAnICKUICYgIZQgKCAjlJOSkpI4AlggKSAKKgIAIDEgAyoCjAGUkiIjlCAmICQgMSADKgKIAZSSIiWUkyIkICSSISQgKCAllCApIA8qAgAgMSADKgKQAZSSIiKUkyIhICGSISEgAiAuICIgJyAklCApICGUICYgJiAilCAoICOUkyIiICKSIiKUk5KSkjgCqAEgAiAvICMgJyAhlCAoICKUICkgJJSTkpKSOAKkASACIDAgJSAnICKUICYgJJQgKCAhlJOSkpI4AqABIBEgGiAbIBUQxAMgAEFAayEAIAhBQGoiCA0ACwsgAUEAQagBIAEgC0YiAxtqIQAgA0UNAAsLIAUgFEYiAA0BIAVBAEE4IAAbaiEAIAUiAw0ACwsgE0EQcUUNACAWRQ0AIAkgFkE4bGohByAGQdABaiEIIAlBOGohAyAGKgL8ASEnA0AgAyEFIA4gCSgCDCAJKAIQELoMIQAgDiAJKAIUIAkoAhgQugwhAQJAIABFDQAgAUUNACACIAE2AqwBIAIgADYCqAEgAiAJNgKkASACQQU2AqABIAJBBGogAkGgAWoQiwNFDQAgCSgCCCIBRQ0AIAkoAgQiACABQagBbGohCSAAQagBaiEDA0AgACEEIAMhACAEKAJgIgEEQCAEKAJcIQMgAUEGdCEBA0AgAkHYAGoiCkEIaiIPIANBCGooAgA2AgAgAiADKQIANwNYIAIgDyoCACAnIAQqAnCUkjgCqAEgAiACKgJcICcgBCoCbJSSOAKkASACIAIqAlggJyAEKgJolJI4AqABIAJBBGogCiACQaABaiAIEMQDIANBQGshAyABQUBqIgENAAsLIABBAEGoASAAIAlGIgEbaiEDIAFFDQALCyAFIAdGIgANASAFQQBBOCAAG2ohAyAFIgkNAAsLIAJB8AFqJAALuS8EJH8Hfhd9AnsjAEHgAGsiBCQAIAAoAjAiDq1CDH4iJqchAgJAAkACQAJAAkACQAJAAkAgJkIgiKcNACACQfz///8HSw0AAkAgAkUEQEEEIRAMAQtBBCEBIA4hGiACQQQQkQ4iEEUNAQsCQAJAIA5BAk8EQCACQQxrIgIEQCAQQQAgAvwLAAsgAiAQaiECDAELIBAhAiAORQ0BCyACQQA2AgggAkIANwIACyAEQonZueKO076XCDcDICAEQaDcwgD9AAMAIkP9CwMQIARCidm54o7TvpcINwM4IAQgQ/0LAyggACgCOCEXIAAoAjwiEkUNByAXIBJBDGxqIRsgF0EMaiEBIAAoAjAhEyAAKAIsIRggBEEgaiEcIBchAgNAIAIoAgAiAyATTw0HIAIoAgQiBSATTw0GIAIoAggiCCATTw0FIAEhCyAYIAVBDGxqIgEqAgAiMyAYIANBDGxqIgMqAgAiNZMiLCAYIAhBDGxqIgUqAgQiNyADKgIEIjiTIi6UIAEqAgQiNiA4kyItIAUqAgAiOSA1kyIvlJMiPyA/lCAtIAUqAggiOiADKgIIIjuTIjCUIAEqAggiPCA7kyIxIC6UkyJAIECUIDEgL5QgLCAwlJMiQSBBlJKSIkJDAACAKF4EQEMAAAAAITQCfUMAAAAAICwgLJQgLSAtlJIgMSAxlJIiPUMAAAAAWw0AGkMAAAAAIC8gL5QgLiAulJIgMCAwlJIiPkMAAAAAWw0AGkMAAIC/QwAAgD8gLCAvlCAtIC6UkiAxIDCUkiA9kSA+kZSVIjIgMkMAAIA/XhsgMkMAAIC/XRsQ5gULITICQCA1IDOTIiwgLJQgOCA2kyIuIC6UkiA7IDyTIi0gLZSSIj1DAAAAAFsNACA5IDOTIi8gL5QgNyA2kyIwIDCUkiA6IDyTIjEgMZSSIj5DAAAAAFsNAEMAAIC/QwAAgD8gLCAvlCAuIDCUkiAtIDGUkiA9kSA+kZSVIiwgLEMAAIA/XhsgLEMAAIC/XRsQ5gUhNAtDAAAAACEuAkAgMyA5kyIsICyUIDYgN5MiLSAtlJIgPCA6kyIvIC+UkiI2QwAAAABbDQAgNSA5kyIwIDCUIDggN5MiMSAxlJIgOyA6kyIzIDOUkiI1QwAAAABbDQBDAACAv0MAAIA/ICwgMJQgLSAxlJIgLyAzlJIgNpEgNZGUlSIsICxDAACAP14bICxDAACAv10bEOYFIS4LIAIoAgAiASAOTw0FIBAgAUEMbGoiASBAIEKRIi2VIiwgMpQgASoCAJI4AgAgASBBIC2VIi8gMpQgASoCBJI4AgQgASA/IC2VIjAgMpQgASoCCJI4AgggAigCBCIBIA5PDQQgECABQQxsaiIBICwgNJQgASoCAJI4AgAgASAvIDSUIAEqAgSSOAIEIAEgMCA0lCABKgIIkjgCCCACKAIIIgEgDk8NAyAQIAFBDGxqIgEgLCAulCABKgIAkjgCACABIC8gLpQgASoCBJI4AgQgASAwIC6UIAEqAgiSOAIIIAL9XQIAIUMgBCACKAIEIgEgAigCCCICIAEgAkkbrSABIAIgASACSxutQiCGhDcDUCAEIEMgQ/0NBAUGBwABAgMAAQIDAAECAyJEIEMgAv0cASJD/bkBIEP9DQABAgMAAQIDBAUGBwABAgNBIP3LASBEIEP9twH9yQH9UP0LBEAgBEFAayEGQQghAgNAIAIhCCAGKQIAIiYgBCkDIEI4iYUiKEIgiCEnICcgJkKXkpyq27a1wj+FIilCIIgiJX4gKUL/////D4MiKSAoQv////8PgyIofoUgJyApfiAlICh+hUIgiYUiJ0L/////D4NCAoUiKELdofHLDH4gJ0IgiCInQrfTsIUMfoUgKEK307CFDH4gJ0LdofHLDH6FQiCIhSInQhmIIihC/wCDQoGChIiQoMCAAX4hKyAEKAIQIgJBFGshCSAmQiCIpyENICanIRVBACEDICenIh0gBCgCFCIHcSIFIQECfQNAAkAgASACaikAACIqICuFIidCgYKEiJCgwIABfSAnQn+Fg0KAgYKEiJCgwIB/gyInUA0AA0AgJ3qnQQN2IAFqIAdxQWxsIgogCWopAgAgJlIEQCAnQgF9ICeDIidCAFINAQwCCwsgAiAKaiICQQRrKgIAIS4gAkEMayoCACEtIAJBCGsqAgAMAgsgKiAqQgGGg0KAgYKEiJCgwIB/g1AEQCADQQhqIgMgAWogB3EhAQwBCwsgAiAFaikAAEKAgYKEiJCgwIB/gyInUARAQQghAQNAIAEgBWohAyABQQhqIQEgAiADIAdxIgVqKQAAQoCBgoSIkKDAgH+DIidQDQALCyACICd6p0EDdiAFaiAHcSIBaiwAACIDQQBOBEAgAiACKQMAQoCBgoSIkKDAgH+DeqdBA3YiAWotAAAhAwsCQCADQQFxIgMgBCgCGCIFRXFFBEAgASACaiAop0H/AHEiBjoAACACIAFBCGsgB3FqQQhqIAY6AAAgAiABQWxsaiICQRRrIBU2AgAgAkEQayANNgIAIAJBDGtCADcCACACQQRrQQA2AgAgBCAFIANrNgIYIAQgBCgCHEEBajYCHAwBCyAEQQhqIRkjAEEwayIJJAAgCSAcNgIoIARBEGoiDygCDCEFIAkgCUEoajYCLAJAIAUgBUEBaiICTQRAIA8oAgQiFiAWQQFqQQN2QQdsIBZBCEkbIgFBAXYgAkkEQAJAAkACQAJ/IAFBAWoiASACIAEgAksbIgJBD08EQCACQf////8BSw0CQX8gAkEDdEEHbkEBa2d2QQFqDAELQQRBCEEQIAJBCEkbIAJBBEkbCyICrUIUfiImQiCIpw0BICanIgFBeEsNASABQQdqQXhxIgMgAkEIaiIHaiEBIAEgA0kNASABQfj///8HSw0BIAFBCBCRDiIKDQJBCCABQfjKxAAoAgAiAEHMCCAAGxEAAAALEKcMIAkoAiQhAiAJKAIgIQEMBAsQpwwgCSgCFCECIAkoAhAhAQwDCyADIApqIQogBwRAIApB/wEgB/wLAAsgAkEBayIUIAJBA3ZBB2wgFEEISRshHgJAIAVFBEAgDygCACEDDAELIApBCGohHyAPKAIAIgNBFGshICADKQMAQn+FQoCBgoSIkKDAgH+DISYgCSgCKCEhQQAhAiAFIQcgAyEBA0AgJlAEQANAIAJBCGohAiABQQhqIgEpAwBCgIGChIiQoMCAf4MiJkKAgYKEiJCgwIB/UQ0ACyAmQoCBgoSIkKDAgH+FISYLIAogICAmeqdBA3YgAmoiIkFsbGopAAAiJSAhKQMAQjiJhSInQiCIIikgJUKXkpyq27a1wj+FIiVCIIgiKn4gJ0L/////D4MiJyAlQv////8PgyIlfoUgJSApfiAnICp+hUIgiYUiJUL/////D4NCAoUiJ0LdofHLDH4gJUIgiCIlQrfTsIUMfoUgJ0K307CFDH4gJULdofHLDH6FQiCIhaciIyAUcSIMaikAAEKAgYKEiJCgwIB/gyIlUARAQQghEQNAIAwgEWohDCARQQhqIREgCiAMIBRxIgxqKQAAQoCBgoSIkKDAgH+DIiVQDQALCyAmQgF9ICaDISYgCiAleqdBA3YgDGogFHEiDGosAABBAE4EQCAKKQMAQoCBgoSIkKDAgH+DeqdBA3YhDAsgCiAMaiAjQRl2IhE6AAAgHyAMQQhrIBRxaiAROgAAIAogDEF/c0EUbGoiDEEQaiADICJBf3NBFGxqIhFBEGooAAA2AAAgDCAR/QAAAP0LAAAgB0EBayIHDQALCyAPIBQ2AgQgDyAKNgIAIA8gHiAFazYCCEGBgICAeCEBIBZFDQIgAyAWQRRsQRtqQXhxIgJrIAIgFmpBCWpBCBDoDgwCCyAPIAlBLGpBlAJBFBDGAkGBgICAeCEBDAELEKcMIAkoAgwhAiAJKAIIIQELIBkgAjYCBCAZIAE2AgAgCUEwaiQAIAQoAhQiAyAdcSIBIAQoAhAiAmopAABCgIGChIiQoMCAf4MiJlAEQEEIIQUDQCABIAVqIQEgBUEIaiEFIAIgASADcSIBaikAAEKAgYKEiJCgwIB/gyImUA0ACwsgAiAmeqdBA3YgAWogA3EiAWosAAAiBUEATgRAIAIgAikDAEKAgYKEiJCgwIB/g3qnQQN2IgFqLQAAIQULIAEgAmogKKdB/wBxIgc6AAAgAiADIAFBCGtxakEIaiAHOgAAIAIgAUFsbGoiAkEUayAVNgIAIAJBEGsgDTYCACACQQxrQgA3AgAgAkEEa0EANgIAIAQgBCgCHEEBajYCHCAEIAQoAhggBUEBcWs2AhggBikCACImQpeSnKrbtrXCP4UiJUL/////D4MhKSAlQiCIISUgJkIgiKchDSAmpyEVC0MAAAAAIS5DAAAAACEtQwAAAAALITIgAkEEayAwIC6SOAIAIAJBCGsgLyAykjgCACACQQxrICwgLZI4AgAgBCkDOEI4iSAmhSInQiCIIiggJX4gJ0L/////D4MiJyApfoUgKCApfiAlICd+hUIgiYUiJUL/////D4NCAoUiJ0LdofHLDH4gJUIgiCIlQrfTsIUMfoUgJ0K307CFDH4gJULdofHLDH6FQiCIhSIlQhmIIidC/wCDQoGChIiQoMCAAX4hKCAEKAIoIgNBDGshAkEAIQUgBCgCLCIHICWnIglxIgYhAQJ/AkADQCABIANqKQAAIikgKIUiJUKBgoSIkKDAgAF9ICVCf4WDQoCBgoSIkKDAgH+DIiVCAFIEQANAICYgJXqnQQN2IAFqIAdxQXRsIgogAmopAgBRDQMgJUIBfSAlgyIlQgBSDQALCyApIClCAYaDQoCBgoSIkKDAgH+DUARAIAVBCGoiBSABaiAHcSEBDAELCyADIAZqKQAAQoCBgoSIkKDAgH+DIiZQBEBBCCEBA0AgASAGaiECIAFBCGohASADIAIgB3EiBmopAABCgIGChIiQoMCAf4MiJlANAAsLIAMgJnqnQQN2IAZqIAdxIgFqLAAAIgJBAE4EfyADIAMpAwBCgIGChIiQoMCAf4N6p0EDdiIBai0AAAUgAgtBAXEiBiAEKAIwIgVFcUUEQCABIANqICenQf8AcSICOgAAIAMgAUEIayAHcWpBCGogAjoAACADIAFBdGxqIgJBDGsgFTYCACACQQhrIA02AgAgAkEEa0EANgIAIAQgBSAGazYCMCAEIAQoAjRBAWo2AjRBAQwCCyAEIARBKGoiAiACQRBqEOgBIAQoAiwiAyAJcSIBIAQoAigiAmopAABCgIGChIiQoMCAf4MiJlAEQEEIIQYDQCABIAZqIQEgBkEIaiEGIAIgASADcSIBaikAAEKAgYKEiJCgwIB/gyImUA0ACwsgAiAmeqdBA3YgAWogA3EiAWosAAAiBkEATgRAIAIgAikDAEKAgYKEiJCgwIB/g3qnQQN2IgFqLQAAIQYLIAEgAmogJ6dB/wBxIgU6AAAgAiADIAFBCGtxakEIaiAFOgAAIAIgAUF0bGoiAkEMayAVNgIAIAJBCGsgDTYCACACQQRrQQA2AgAgBCAEKAI0QQFqNgI0IAQgBCgCMCAGQQFxazYCMEEBDAELIAMgCmoiAkEEaygCAEEBagshASACQQRrIAE2AgAgCEEIaiECIARBQGsgCGohBiAIQRhHDQALCyALQQBBDCALIBtGIgMbaiEBIAshAiADRQ0ACwwHCyABIAJB7M/DABDXDQALIAEgDkHM0MMAEIULAAsgASAOQbzQwwAQhQsACyABIA5BrNDDABCFCwALIAggE0Gc0MMAEIULAAsgBSATQYzQwwAQhQsACyADIBNB/M/DABCFCwALIBKtQiR+IianIQECQCAmQiCIpw0AIAFB/P///wdLDQACQCABRQRAQQQhBUEAIQIMAQtBBCEkIBIhAiABQQQQkQ4iBUUNAQsgEgRAQQAhBgNAQwAAAAAhLgJ9AkAgBCgCHEUEQEMAAAAAITJDAAAAACEtQwAAAAAhL0MAAAAAISxDAAAAACEwQwAAAAAhMQwBCyAXIAZBDGxqIgsoAggiASALKAIAIgMgASADSxshCSABIAMgASADSRshCiALKAIEIgggASABIAhJGyEMIAggASABIAhLGyEPIAQoAhQiCyAEKQMgQjiJIiYgAyAIIAMgCEkbrSInIAMgCCADIAhLG60iJUIghoQiKYUiKEIgiCIqICVCtauT/AOFIiV+IChC/////w+DIiggJ0KXkpyqC4UiJ36FICcgKn4gJSAofoVCIImFIiVC/////w+DQgKFIidC3aHxywx+ICVCIIgiJUK307CFDH6FICdCt9OwhQx+ICVC3aHxywx+hUIgiIUiJadxIQEgJUIZiEL/AINCgYKEiJCgwIABfiEoIAQoAhAiCEEUayEHQQAhDQJ9A0ACQCABIAhqKQAAIicgKIUiJUKBgoSIkKDAgAF9ICVCf4WDQoCBgoSIkKDAgH+DIiVCAFIEQANAICkgJXqnQQN2IAFqIAtxQWxsIgMgB2opAgBRDQIgJUIBfSAlgyIlQgBSDQALC0MAAAAAIS1DAAAAACEvQwAAAAAgJyAnQgGGg0KAgYKEiJCgwIB/g0IAUg0CGiANQQhqIg0gAWogC3EhAQwBCwsgAyAIaiIBQQRrKgIAIS8gAUEIayoCACEtIAFBDGsqAgALITIgCyAPrSInIAytIiVCIIaEIikgJoUiKEIgiCIqICVCtauT/AOFIiV+IChC/////w+DIiggJ0KXkpyqC4UiJ36FICcgKn4gJSAofoVCIImFIiVC/////w+DQgKFIidC3aHxywx+ICVCIIgiJUK307CFDH6FICdCt9OwhQx+ICVC3aHxywx+hUIgiIUiJadxIQEgJUIZiEL/AINCgYKEiJCgwIABfiEoQQAhAwJ9A0ACQCABIAhqKQAAIicgKIUiJUKBgoSIkKDAgAF9ICVCf4WDQoCBgoSIkKDAgH+DIiVCAFIEQANAICkgJXqnQQN2IAFqIAtxQWxsIg0gB2opAgBRDQIgJUIBfSAlgyIlQgBSDQALC0MAAAAAITBDAAAAACExQwAAAAAgJyAnQgGGg0KAgYKEiJCgwIB/g0IAUg0CGiADQQhqIgMgAWogC3EhAQwBCwsgCCANaiIBQQRrKgIAITEgAUEIayoCACEwIAFBDGsqAgALISwgCyAmIAqtIiUgCa0iJkIghoQiJ4UiKUIgiCIoICZCtauT/AOFIiZ+IClC/////w+DIikgJUKXkpyqC4UiJX6FICUgKH4gJiApfoVCIImFIiZC/////w+DQgKFIiVC3aHxywx+ICZCIIgiJkK307CFDH6FICVCt9OwhQx+ICZC3aHxywx+hUIgiIUiJqdxIQEgJkIZiEL/AINCgYKEiJCgwIABfiEpQQAhDQNAAkAgASAIaikAACIlICmFIiZCgYKEiJCgwIABfSAmQn+Fg0KAgYKEiJCgwIB/gyImQgBSBEADQCAnICZ6p0EDdiABaiALcUFsbCIDIAdqKQIAUQ0CICZCAX0gJoMiJkIAUg0ACwsgJSAlQgGGg0KAgYKEiJCgwIB/g0IAUg0CIA1BCGoiDSABaiALcSEBDAELCyADIAhqIgFBBGsqAgAhNCABQQxrKgIAIS4gAUEIayoCAAwBC0MAAAAAITRDAAAAAAshMyAFIAZBJGxqIgEgNDgCICABIDM4AhwgASAuOAIYIAEgMTgCFCABIDA4AhAgASAsOAIMIAEgLzgCCCABIC04AgQgASAyOAIAIBIgBkEBaiIGRw0ACwsCQCAAKAJAIgFBgICAgHhGDQAgAQRAIAAoAkQgAUEMbEEEEOgOCyAAKAJMIgFFDQAgACgCUCABQSRsQQQQ6A4LIAAgEjYCVCAAIAU2AlAgACACNgJMIAAgDjYCSCAAIBA2AkQgACAaNgJAIAQoAiwiAARAIAQoAiggAEEMbEETakF4cSICayAAIAJqQQlqQQgQ6A4LIAQoAhQiAARAIAQoAhAgAEEUbEEbakF4cSICayAAIAJqQQlqQQgQ6A4LIARB4ABqJAAPCyAkIAFBlNDCABDXDQALyXQEOX0afwN+AnsjAEGQA2siQiQAIEJB4ABqIAIgAygCuAERAAAgQigCZCFGIEIoAmAhRyBCQdgAaiAEIAUoArgBEQAAIEIoAlwhRQJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgR0EAR0EAIEIoAlgiQxtFBEAgAiADKAKgAREEACJEQf8BcUEGRyAEIAUoAqABEQQAIklB/wFxQQZHcQ0CIEJBCGogAiADKAJgEQAAIEJBwAFqIEIoAggiACBCKAIMKAIMEQAAIABFDQEgQikDwAFC3oWKxraak/zQAIUgQikDyAFChcGXiNPx7PrkAIWEQgBSDQFBACFEIAEgACAEIAUgBiAHIAhBABBdDBILIEIgBjgCaCAIENoHIAgoAgAiAkUNAiBCQdAAaiACIAgoAgQoAhwRAAAgQkHAAWogQigCUCJEIEIoAlQoAgwRAAAgQikDwAFC5Oqu+MS4tKHqAIUgQikDyAFCjo7W/9fut+hThYRCAFINAyBEIEQtABhBf3NBAXEiAjoAGCBCIAI6AG8gRyBGKAIQEQQAIQIgQyBFKAIQEQQAIQQgASoCFCEWIAEqAhAhFyABKgIYIRggQiAB/QACACJg/VoCfAMgQiBg/RsCviIZjCIMOAJ4IEIgYP0bAb4iG4wiDjgCdCBCIGD9GwC+IhqMIhI4AnAgQiAaIBaUIBsgF5STIgYgBpIiBiBg/RsDviIdlCAbIBiUIBkgFpSTIgogCpIiCiAblCAZIBeUIBogGJSTIgkgCZIiCSAalJOSIBiTIg04AogBIEIgCSAdlCAGIBqUIAogGZSTkiAWkyIROAKEASBCIAogHZQgCSAZlCAGIBuUk5IgF5MiBjgCgAFB////+wchA0P//39/IQlD//9//yELQ///f/8hD0P//3//IRBD//9//yEVQ///f38hE0P//39/IRRB////+wchBQJAIAIoAghFDQACQAJAIAIoAgQiASgCPEH/////A3EgASgCHEH/////A3FqDgICAAELIAEqAhghDyABKgIUIRAgASoCECEVIAEqAgghEyABKgIEIRQgASgCACEFDAELIAEqAhgiCiABKgI4Ig8gCiAPYBshDyABKgIUIgogASoCNCIQIAogEGAbIRAgASoCECIKIAEqAjAiFSAKIBVgGyEVIAEqAggiCiABKgIoIhMgCiATXxshEyABKgIEIgogASoCJCIUIAogFF8bIRQgASoCACIKIAEqAiAiHCAKIBxfG7whBQsCQCAEKAIIRQRAQ///f/8hCkP//3//IRxD//9/fyEgDAELQ///f/8hCkP//3//IRxD//9/fyEgAkACQCAEKAIEIgEoAjxB/////wNxIAEoAhxB/////wNxag4CAgABCyABKgIYIQsgASoCFCEKIAEqAhAhHCABKgIIIQkgASoCBCEgIAEoAgAhAwwBCyABKgIYIgogASoCOCIJIAkgCl8bIQsgASoCFCIKIAEqAjQiCSAJIApfGyEKIAEqAhAiCSABKgIwIhwgCSAcYBshHCABKgIIIgkgASoCKCIgIAkgIF8bIQkgASoCBCIgIAEqAiQiHiAeICBgGyEgIAEqAgAiHiABKgIgIiIgHiAiXxu8IQMLIEIgD/0TIAv9IAEgE/0TIAn9IAH95QH9DAAAAD8AAAA/AAAAPwAAAD/95gEiXyBf/eYBIBD9EyAK/SABIBT9EyAg/SAB/eUB/QwAAAA/AAAAPwAAAD8AAAA//eYBIl8gX/3mASAV/RMgHP0gASAF/REgA/0cAf3lAf0MAAAAPwAAAD8AAAA/AAAAP/3mASJfIF/95gH95AH95AEiX/0fACBf/R8BXSIBOgCXASABDQQgCyEPIAohECAcIRUgCSETICAhFCADIQUgGCENIBYhESAXIQYgGSEMIBshDiAaIRIgRSEDIEMhBCBGIUUgRyFDDA8LIEIgBCAFKAJgEQAAIEJBwAFqIgQgQigCACIAIEIoAgQoAgwRAABBACFEIABFDRAgQikDwAFC3oWKxraak/zQAIUgQikDyAFChcGX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BEL////7////v383ApwBIAT9DP//f3///39///9/f///f//9CwKMASAEQQA2AogBIARC////+////79/NwOAASAE/Qz//39///9/f///f3///3///QsEcCAEQQA2AmwgBEL////7////v383AmQgBP0M//9/f///f3///39///9///0LAlQgBEEANgJQIARC////+////79/NwNIIAT9DP//f3///39///9/f///f//9CwM4IARBADYCNCAEQv////v///+/fzcCLCAE/Qz//39///9/f///f3///3///QsCHCAEQQA2AhggBEL////7////v383AxAgBP0M//9/f///f3///39///9///0LBAACQAJAAkACQCADQQFLBEAgA0EFdCIHQSBrIQggAioCCCACKgIYkkMAAAA/lCIXIRggAv0ABAAgAv0ABBD95AH9DAAAAD8AAAA/AAAAPwAAAD/95gEiciFzA0AgFyACIAVqIgZBKGoqAgAgBkE4aioCAJJDAAAAP5QiFiAWIBdfGyEXIBggFiAWIBhgGyEYIAZBIGr9XQIAIAZBMGr9XQIA/eQB/QwAAAA/AAAAPwAAAD8AAAA//eYBInQgcv3rASFyIHQgc/3qASFzIAggBUEgaiIFRw0ACyAEIHL9HwA4AuwBIAQgc/0fATgC5AEgBCBz/R8AOALgASAEIHL9HwE4AvABIAQgGDgC6AEgBCAXOAL0AUECIHIgc/3lASJy/R8BIhYgcv0fACIZXiIFIBcgGJMgFiAZIAUbXhsiEEECdCIFIARB4AFqaioCACEXQ1j//0AgBEHsAWogBWoqAgAgF5OVIRggBEH4AWogBWohCEEAIQUDQCACIAVqIgZBGGoqAgAhFiAEIAZBCGoqAgAgFpJDAAAAP5Q4AoACIAQgBkEEaiIJKgIAIAZBFGoqAgAiGZJDAAAAP5Q4AvwBIAQgBioCACIbIAZBEGoqAgAiGpJDAAAAP5Q4AvgBIBggCCoCACAXk5T8ASIGQQhPDQIgBCAGQRxsaiIGIAYoAhhBAWo2AhggBiAGKgIUIhwgFiAWIBxfGzgCFCAGIAYqAhAiFiAZIBYgGWAbOAIQIBv9EyAJ/V0CAP0NAAECAxAREhMUFRYXAAECAyAG/QACACJy/Q0AAQIDBAUGBwgJCgscHR4fIXMgBiByIHMgGv0gAyByIBr9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ACADQQRqKAIAIAVqIQUgA0EIaiEDIAZBAWsiBg0ACwsgBEHIAGogBRDRBiAEQdQAaiAFENEGIAghAyAKQQdxIgUEQANAIANBBGpBADYCACADQQhqIQMgBUEBayIFDQALCyACQQdJDQEgCCALQQN0aiECA0AgA0E8akEANgIAIANBNGpBADYCACADQSxqQQA2AgAgA0EkakEANgIAIANBHGpBADYCACADQRRqQQA2AgAgA0EMakEANgIAIANBBGpBADYCACACIANBQGsiA0cNAAsMAQsgBEHIAGpBABDRBiAEQdQAakEAENEGCyAMBEAgDkEUaiEDIAQoAmQhFCAEKAJYIRUgBCgCXCESIAQoAmghDyAEKAJMIRcgBCgCUCETIAQoAnAhGCAEKAJ0IQlBASEGQQAhDANAIA4hAiADIQ4gDCEDIAYhDAJAIAIoAgAiByAHIAIoAgQiDWpPDQAgB0ECdCICIBhqIQYgAiAUaiECIAcgCSAHIAlLGyIWIAdrIQUgByAPIAcgD0sbIhkgB2shBwJAAkACQAJAA0AgBUUNASAGKAIAIgogC08NAiAIIApBA3RqIgooAgQgCigCAGoiECATTw0DIBcgEEECdGogAzYCACAHRQ0EIAooAgQgCigCAGoiECASSQRAIBUgEEECdGogAigCADYCACAKIAooAgRBAWo2AgQgBkEEaiEGIAJBBGohAiAFQQFrIQUgB0EBayEHIA1BAWsiDUUNBgwBCwsgECASQcjCwwAQhQsACyAWIAlBiMLDABCFCwALIAogC0GYwsMAEIULAAsgECATQajCwwAQhQsACyAZIA9BuMLDABCFCwALIA4gEUciAiAMaiEGIA5BFEEAIAIbaiEDIAINAAsLIARBhAJqIARBCGooAgA2AgAgBEGQAmogBEEgaigCADYCACAEQZwCaiAEQRRqKAIANgIAIARBqAJqIARB0ABqKAIANgIAIARBtAJqIARB3ABqKAIANgIAIAQgBCkCADcC/AEgBCAEKQIYNwOIAiAEIAQpAgw3ApQCIAQgBCkCSDcDoAIgBCAEKQJUNwKsAiAEQcACaiAEQegAaigCADYCACAEQcwCaiAEQfQAaigCADYCACAEQfABaiICQQhqIAFBCGooAgA2AgAgBCAEKQJgNwO4AiAEIAQpAmw3AsQCIAQgASkCADcD8AEgACAC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QQxqIgAQjgEgA0EIaiAJKAIANgIAIAMgASkCADcCACADIAEpAgw3AgwgA0EUaiAAQQhqKAIANgIAIAFB4ABqJAAgBygCJCEAIAcoAhghASAHKAIsIQogBygCKCEEIAcoAiAhCyAHKAIcIQkgB0GAgID8AzYCICAHQoCAgPyDgIDAPzcCGCACIAkgCyAEIAogBSADIAYQqQMgAARAIAQgAEEDdEEEEOgOCyABRQ0KIAkgAUEMbEEEEOgODAoLIAdBGGohAyAHKAIQIQkgACgC8AEhDCAAKAL0ASEEIwBB4ABrIgEkACABQTBqIgBBCGoiCkEANgIAIAFBADYCCCABQoCAgIDAADcCACABQQA2AhQgAUKAgICAwAA3AgwgAUEANgIgIAFBADYCLCABQQA2AiQgASAJKgIAIh04AiggASAJKgIEIh+MIh44AhggASAeOAIwIAkqAgghHiABIB2MIiA4AhwgASAgIB6TOAI0IB8gH5QgHUMAAADAlCIjICOUkpEhICABIB4gIyAglZQiI0MAAAAAkjgCPCABIB0gHiAfICCVlCIhkjgCQCABIB5DAAAAACAglZRDAAAAAJIiIDgCRCABQdj5wwAQkQggASgCBCIJIAEpAjA3AgAgCUEIaiAKKAIANgIAIAFBATYCCCABICA4AlAgASAhIB2TIiE4AkwgASAjIB+TIh84AkggAUEYaiAAIAFByABqIAQgARDDAiABKAIAIgsgASgCCCIJRgRAIAFB6PnDABCRCCABKAIAIQsLIB4gHZIhHSABKAIEIgAgCUEMbGoiCiAgOAIIIAogITgCBCAKIB84AgAgASAJQQFqIgo2AgggCiALRgRAIAFB+PnDABCRCCABKAIEIQALIAAgCkEMbGoiACABKQI8NwIAIABBCGogAUE8aiIAQQhqKAIANgIAIAEgCUECajYCCCABQQA2AlAgASAdOAJMIAFBADYCSCABQSRqIAAgAUHIAGogBCABEMMCIAEoAggiACABKAIARgRAIAFBiPrDABCRCAsgAUEIaiIJIABBAWo2AgAgASgCBCAAQQxsaiIAQQA2AgggACAdOAIEIABBADYCACABQoCAgIAQNwJIIAEgBDYCUCABIARBAmo2AlQgASAEQQF0IgBBAmo2AlwgASAAQQFyNgJYQQEgAUHIAGpBAyAMIAEgAUEMaiIAEI4B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KAIEIAVqNgIEIAMgASABQQhqIgBBB2pBeHEgAGtqIgBqIgEhAiAAIANBA3I2AgQgBiAGQQhqIgVBB2pBeHEgBWtqIgQgAWshAwJAQczOxAAoAgAgBEcEQCAEQcjOxAAoAgBGDQEgBCgCBCIBQQNxQQFGBEAgBCABQXhxIgEQpwUgASADaiEDIAEgBGohBAsgBCAEKAIEQX5xNgIEIAIgA0EBcjYCBCACIANqIAM2AgAgA0GAAk8EQCACIAMQ8AUMBAsCf0G4zsQAKAIAIgFBASADQQN2dCIFcUUEQEG4zsQAIAEgBXI2AgAgA0H4AXFBsMzEAGoiAwwBCyADQfgBcSIBQbDMxABqIQMgAUG4zMQAaigCAAshASADIAI2AgggASACNgIMIAIgAzYCDCACIAE2AggMAwtBzM7EACACNgIAQcTOxABBxM7EACgCACADaiIBNgIAIAIgAUEBcjYCBAwCC0HIzsQAIAI2AgBBwM7EAEHAzsQAKAIAIANqIgE2AgAgAiABQQFyNgIEIAEgAmogATYCAAwBC0EAIQBBxM7EACgCACIBIANNDQFBxM7EACABIANrIgE2AgBBzM7EACADQczOxAAoAgAiAGoiAjYCACACIAFBAXI2AgQgACADQQNyNgIECyAAQQhqIQALIAlBEGokACAAC/kXAhx/AnwjAEGwBGsiAyQAIANCADcDmAEgA0IANwOQASADQgA3A4gBIANCADcDgAEgA0IANwN4IANCADcDcCADQgA3A2ggA0IANwNgIANCADcDWCADQgA3A1AgA0IANwNIIANCADcDQCADQgA3AzggA0IANwMwIANCADcDKCADQgA3AyAgA0IANwMYIANCADcDECADQgA3AwggA0IANwMAIANCADcDuAIgA0IANwOwAiADQgA3A6gCIANCADcDoAIgA0IANwOYAiADQgA3A5ACIANCADcDiAIgA0IANwOAAiADQgA3A/gBIANCADcD8AEgA0IANwPoASADQgA3A+ABIANCADcD2AEgA0IANwPQASADQgA3A8gBIANCADcDwAEgA0IANwO4ASADQgA3A7ABIANCADcDqAEgA0IANwOgASADQgA3A9gDIANCADcD0AMgA0IANwPIAyADQgA3A8ADIANCADcDuAMgA0IANwOwAyADQgA3A6gDIANCADcDoAMgA0IANwOYAyAD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AAsgA0GQAWokAAu2OgMefwZ+DH0jACIFISEgBUHAAmtBQHEiBCQAIARBQGtBqNzCACkDADcDACAEQfwAaiABQQhqKAIANgIAIARCADcDMCAEQoCAgIDAADcDKCAEQgQ3AyAgBEIANwMYIARCgICAgIAINwMQIARBADYCcCAEQoCAgIDAADcDaCAEQsAANwNgIARCADcDWCAEQoCAgIDAADcDUCAEQonZueKO076XCDcDSCAEQaDcwgApAwA3AzggBCABKQIANwJ0AkACQAJAAkACQAJAAkACfyADRQRAQZjcwgAhAkEADAELIAIgA0EMbGohDCAEQdwAaiEIIARB0ABqIQUgBEE4aiEDIARBsAFqIQoDQCACQQRqKAIAIRIgAkEIaigCACEWIAIoAgAiC0EfdiEBIAQgASALakEIbSABayIGNgKAAiAEIBZBH3YiASAWakEIbSABayIHNgKIAiAEIBJBH3YiASASakEIbSABayINNgKEAiAEQagBaiADIARBgAJqEOwEAn8gBCgCvAEiDgRAIAQpA6gBISIgBCgCZCIXIAQoAlxGBEAgCEGY5sMAEMQICyAEKAJgIBdBCXRqQcAAQYAE/AsAIAQgF0EBajYCZCAEKAJYIgkgBCgCUEYEQCAFQajmwwAQkQgLIAQoAlQgCUEMbGoiASAHNgIIIAEgDTYCBCABIAY2AgAgBCAJQQFqNgJYIARBgAJqIgFBCGogCkEIaigCADYCACAEQQA2ApACIAQgFzYCjAIgBCAKKQIANwOAAiAOICIgASAOQRBqEMcFDAELIAQoArABCyIJQQRrIgEgASgCAEEBajYCACAJQQhrKAIAIgkgBCgCZCIBTw0CIBIgBmtBA3QgC2ogB0EJdGsgFiANa0EGdGoiAUGABE8NAyAEKAJgIAlBCXRqIAFqQT86AAAgDCACQQxqIgJHDQALIAQoAjghAiAEKAJECyEBIAIpAwAhIiAEQgA3AqABIARCgICAgMAANwKYASAEQgQ3ApABIARCADcCiAEgBEKAgICAgAg3AoABIARBADYC+AEgBEIQNwK4ASAEQgA3ArABIARCgICAgIAINwKoASAEQgA3AvABIARCgICAgMAANwLoASAEQgA3AuABIARCgICAgMAANwLYASAEQgQ3AtABIARCADcCyAEgBEKAgICAwAA3AsABIAFFDQYg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NwIAIBBBCGogE0EIaigCADYCACADQfgCaiAMEIgCIAMoAvgCDQQgDiAEIgJHDQALCyABQQA2AvQBAkAgASgChANBAUcNACADQfgCaiAfEIgCIAMoAvgCQQFHDQAgA0HwAmogCEEIaigCADYCACADIAgpAgA3A+gCDAoLIAFBADYChAMgASgCMCECCyAYQQI2AgAgAkECRwRAIAFBMGohIwJAA0ACQCABKAK8ASICRQRAAkAgCygCACICQSFPBEAgASgCOCEFIAEoAjQiB0UNAyAGIQQgByECDAELIAshBCAGIQUgAkUNBAsgBCACQQFrIgQ2AgAgBSAEQQJ0aigCACECCyABQQA2ArwBIAIoAhxB/////wNxQQFHBEAgAigCDCIFIAEoArgBIgIoAggiBE8NCiABKgLUASEkIAEqAtABISVBASEEAkAgASoCzAEiJiACKAIEIAVBBnRqIgIqAgBgRQ0AIAIqAgQgJV9FDQAgAioCCCAkX0UNACACKgIQIAEqAsABYEUNACACKgIUIAEqAsQBYEUNACACKgIYIAEqAsgBYEUNACABIAI2ArwBQQAhBAsgAioCICAmX0UNAiACKgIkICVfRQ0CIAIqAiggJF9FDQIgAioCMCABKgLAAWBFDQIgAioCNCABKgLEAWBFDQIgAioCOCABKgLIAWBFDQIgAkEgaiEJIARFBEACfyALKAIAIgdBIUkEQCAHIQUgBiECQSAhByALDAELIAEoAjQhBSABKAI4IQIgBgshBCAFIAdGBEAgIxCgBCABKAI0IQUgASgCOCECIAYhBAsgAiAFQQJ0aiAJNgIAIAQgBCgCAEEBajYCAAwDCyABIAk2ArwBDAILIANB0AVqIgciBSABKALYASACKAIMEK0LIANB+AJqIgQgBSAiICEQsAcgGCAEQdgC/AoAAAJAIAEoAvQBQQFxRQ0AIAcgDBCIAiADKALQBUUNACADQfACaiAKQQhqKAIANgIAIAMgCikCADcD6AIMDQsCQCABKAKUBCINRQ0AIAEoAsQEIgIgASgCyAQiDk4NACABKAKYBCEPIAEoAsAEIQkgASgCrAQhByABKAKgBCEFA0AgASACQQFqIgQ2AsQEIAEgDzYCzAIgASANNgLIAiABQQA2AqACIAFCATcC9AEgASACNgLoAiABIAk2AvgCIAEgBTYC/AIgASAH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QdABayIDJABBGCEEAkAgAkEIaiIFKAIEIgdFBEBBAiEFDAELIAUgB0EBazYCBCAFKAIAIQUgA0EGNgIgIAMgBTYCHCADQSRqIANBHGoQggMgAQJ/IAMtADwiB0EDRgRAIAMoAiQMAQsCQAJAAkAgB0ECRwRAIANBQGsgA0EcahCCAyADLQBYIglBA0YEQCADKAJADAULIAlBAkYNASADQdwAaiADQRxqEIIDIAMtAHQiCkEDRgRAIAMoAlwMBQsgCkECRg0CIANB+ABqIANBHGoQggMgAy0AkAEiBkEDRgRAIAMoAngMBQsgBkECRg0DIANBlAFqIANBHGoQggMgAy0ArAEiDEEDRgRAIAMoApQBDAULAkACQAJAIAxBAkcEQCADQbABaiADQRxqEIIDIAMtAMgBIgVBAmsOAgIBAwtBBCADQc8BakHEzcEAEKgKDAcLIAMoArABDAYLQQUgA0HPAWpBxM3BABCoCgwFCyABIAP9AAKwAf0LAowBIAEgAy8AyQE7AKUBIAEgA/0AAij9CwIEIAFBnAFqIANBwAFqKQIANwIAIAFBpwFqIANBywFqLQAAOgAAIAFBFGogA0E4aigCADYCACADQQJqIANBPWoiBEECai0AADoAACADIAQvAAA7AQAgAygCJCEEIANBE2ogA0HQAGopAgA3AAAgASADQdkAaiIILwAAOwA1IAFBN2ogCEECai0AADoAACABIAP9AAJc/QsCOCABQcgAaiADQewAaikCADcCACABIANB9QBqIggvAAA7AFEgAUHTAGogCEECai0AADoAACABIAP9AAJ4/QsCVCABQeQAaiADQYgBaikCADcCACADIAP9AAJA/QsAAyABQe8AaiADQZEBaiIIQQJqLQAAOgAAIAEgCC8AADsAbSABQYABaiADQaQBaikCADcCACABIAP9AAKUAf0LAnAgAUGLAWogA0GtAWoiCEECai0AADoAACABIAgvAAA7AIkBIAEgBzoAGCABIAQ2AgAgASAMOgCIASABIAY6AGwgASAKOgBQIAEgCToANCABIAMpAQA3ABkgAUEhaiADQQhq/QABAP0LAAAgAUEwaiADQRdqKAAANgAAQaQBIQQMBQtBACADQc8BakHEzcEAEKgKDAMLQQEgA0HPAWpBxM3BABCoCgwCC0ECIANBzwFqQcTNwQAQqAoMAQtB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AAAAAAAAAAD95AEiGv0fAzgCACATIBr9HwI4AgAgFCAa/R8BOAIAIBUgGv0fADgCACALIBsgHCAe/QzzBDW/8wQ1v/MENb/zBDW//eYBIBn9DAAAAAAAAAAAAAAAAAAAAAD95gH95AH95AH95AH9DAAAAAAAAAAAAAAAAAAAAAD95AEiGf0fAzgCACAPIBn9HwI4AgAgECAZ/R8BOAIAIBEgGf0fADgCACABQTBqIQEgBEEEayIEDQALIAcgCkYNAQsgBSAOQQxsaiEBA0AgA0EEaiIEKgIAIiFD8wQ1v5QgAyoCACIiQwAAAACUkiIgICCSIiVD8wQ1P5QhJCAiQwAAAICUIANBCGoiBSoCACIjQ/MENT+UkiIgICCSISAgBSAjICQgIEPzBDW/lCAjQwAAAICUICFDAAAAAJSSIiMgI5IiI0MAAAAAlJKSkkMAAAAAkjgCACAEICEgIEPzBDU/lCAjQwAAAICUICSSkpJDAAAAAJI4AgAgAyAiICND8wQ1P5QgJUMAAACAlCAgQwAAAACUkpKSQwAAAACSOAIAIAEgA0EMaiIDRw0ACwsgCCAOQQF0aiILIAZJDQEgCyAMSw0CIAkgBkEMbGoiDCEDAkAgDUEkTwRAIAkgACAIakEMbGohASADIApB/P///wNxIgRBDGxqIQMgBCEFA0AgAUE4aiIJIAFBLGoiDSABQSBqIg8gAUEUaiIQ/VwCAP1WAgAB/VYCAAL9VgIAAyId/Qz///8+////Pv///z7///8+/eYBIhsgAUE0aiIRIAFBKGoiEiABQRxqIhMgAUEQaiIU/VwCAP1WAgAB/VYCAAL9VgIAAyIc/Qz///8+////Pv///z7///8+/eYB/eUBIhkgGf3kAf0M////Pv///z7///8+////Pv3mASEZIBz9DP///77///++////vv///7795gEgAUEwaiIHIAFBJGoiFSABQRhqIhYgAUEMaiIB/VwCAP1WAgAB/VYCAAL9VgIAAyIe/Qz///8+////Pv///z7///8+/eYBIh/95QEiGiAa/eQB/Qz///8+////Pv///z7///8+/eYBIRogByAeIBkgGiAfIBv95AEiGyAb/eQBIh79DP///z7///8+////Pv///z795gEiH/3lAf3kAf3kAf0MAAAAAAAAAAAAAAAAAAAAAP3kASIb/R8DOAIAIBUgG/0fAjgCACAWIBv9HwE4AgAgASAb/R8AOAIAIBEgHCAfIBkgGv3kAf3kAf3kAf0MAAAAAAAAAAAAAAAAAAAAAP3kASIb/R8DOAIAIBIgG/0fAjgCACATIBv9HwE4AgAgFCAb/R8AOAIAIAkgHSAaIB79DP///77///++////vv///7795gEgGf3lAf3kAf3kAf0MAAAAAAAAAAAAAAAAAAAAAP3kASIZ/R8DOAIAIA0gGf0fAjgCACAPIBn9HwE4AgAgECAZ/R8AOAIAIAchASAFQQRrIgUNAAsgBCAKRg0BCyAMIA5BDGxqIQEDQCADQQRqIgQqAgAiJEP///++lCIiIAMqAgAiI0P///8+lCIhkyIgICCSQ////z6UISAgISADQQhqIgUqAgAiJUP///8+lCImkiIhICGSISEgBSAlICAgIUP///++lCAmICKSIiIgIpJD////PpQiIpOSkkMAAAAAkjgCACAEICQgIUP///8+lCIhICIgIJKSkkMAAAAAkjgCACADICMgIiAgICGTkpJDAAAAAJI4AgAgASADQQxqIgNHDQALCyAAQQAgACAIaiIBIABPGyIEIAIoAgAgAigCCCIDa0sEQCACIAMgBEEEQQgQ2AYgAigCCCEDCyACKAIEIQQCQCAARQ0AIAGtIisgCK0iKX0iKkICWgRAIAQgA0EDdGohASAp/RL9DAAAAAAAAAAAAQAAAAAAAAD9zgEhGSAqQn6DIicgKXwhKSADICenaiEDICchKANAIAEgGUEg/csBIBn9zgH9DAAAAAABAAAAAAAAAAEAAAD9zgH9CwIAIAFBEGohASAZ/QwCAAAAAAAAAAIAAAAAAAAA/c4BIRkgKEICfSIoQgBSDQALICcgKlENAQsgKyApfSEnIAQgA0EDdGohASApQoGAgIAQfkKAgICAEHwhKCADIAhqIABqICmnayEDA0AgASAoNwIAIAFBCGohASAoQoGAgIAQfCEoICdCAX0iJ0IAUg0ACwsgAiADNgIIIAtBAWsiACAGayIBQQAgACABTxsiASACKAIAIANrSwRAIAIgAyABQQRBCBDYBiACKAIIIQMgAigCBCEECwJAIAAgBk0NACAArSIrIAatIil9IipCAloEQCAEIANBA3RqIQEgKf0S/QwAAAAAAAAAAAEAAAAAAAAA/c4BIRkgKkJ+gyInICl8ISkgAyAnp2ohAyAnISgDQCABIBlBIP3LASAZ/c4B/QwAAAAAAQAAAAAAAAABAAAA/c4B/QsCACABQRBqIQEgGf0MAgAAAAAAAAACAAAAAAAAAP3OASEZIChCAn0iKEIAUg0ACyAnICpRDQELICsgKX0hJyAEIANBA3RqIQEgKUKBgICAEH5CgICAgBB8ISgDQCABICg3AgAgAUEIaiEBIChCgYCAgBB8ISggA0EBaiEDICdCAX0iJ0IAUg0ACwsgAiADNgIIDwsgBiAMQZj5wwAQ8A4ACyAGIAtBqPnDABDxDgALIAsgDEGo+cMAEPAOAAu4EgQPfwV+Cn0CeyMAQfABayIGJAAgACgCACEHAkAgAQRAIAYgASoCCCIaIAcqAggiG5QgASoCBCIcIAcqAgQiHZQgASoCACIeIAcqAgAiIJQgASoCDCIhIAcqAgwiIpSSkpI4AhwgBiAcICCUICEgG5QgHiAdlJOSIBogIpSTOAIYIAYgISAdlCAeIBuUkiAcICKUkyAaICCUkzgCFCAGIBogHZQgISAglCAeICKUkyAcIBuUk5I4AhAgHCAHKgIQIAEqAhCTIiCUIB4gByoCFCABKgIUkyIilJMiGyAbkiEbIBogIpQgHCAHKgIYIAEqAhiTIh+UkyIdIB2SIR0gBiAfICEgG5QgHCAdlCAeIB4gH5QgGiAglJMiHyAfkiIflJOSkjgCKCAGICIgISAflCAeIBuUIBogHZSTkpI4AiQgBiAgICEgHZQgGiAflCAcIBuUk5KSOAIgDAELIAZBEGoiCEEYaiAHQRhqKAIANgIAIAhBEGogB0EQaikCADcDACAGIAf9AAIA/QsDEAsgACgCECIIKAIEIQogACgCDCINIAAoAggiDyAAKAIEIhItAAAiCxsoAgAhECAKIAgpAxAgDyANIAsbKAIAIhGtIBCtQiCGhIUiFUIgiCIWQrfTsIUMfiAVQv////8PgyIVQt2h8csMfoUgFkLdofHLDH4gFUK307CFDH6FQiCJhSIWpyITcSEHIBZCGYgiGEL/AINCgYKEiJCgwIABfiEZIAgoAgAhDgJAAkACQAJAAkADQAJAIAcgDmopAAAiFyAZhSIVQoGChIiQoMCAAX0gFUJ/hYNCgIGChIiQoMCAf4MiFUIAUgRAA0AgDiAVeqdBA3YgB2ogCnFBBHRrIgxBEGsoAgAgEUYEQCAQIAxBDGsoAgBGDQMLIBVCAX0gFYMiFUIAUg0ACwsgFyAXQgGGg0KAgYKEiJCgwIB/g0IAUg0CIAlBCGoiCSAHaiAKcSEHDAELCyAMQQhrIgkoAgAiASAAKAIUIgcoAggiCE8NASAHKAIEIAFB7ABsaiIBKQJAIRUgAUKAgICAwAA3AkAgBkEwaiIIQcgAaiABQcgAaiIHKAIANgIAIAdBADYCACAIQdQAaiABQdQAaigCADYCACAIQeAAaiABQeAAaigCADYCACAIQRBqIAFBEGr9AAIA/QsDACAGIBU3A3AgBiABKQJMNwJ8IAYgASkCWDcDiAEgBiAB/QACAP0LAzAgASgCaCEKIAEoAmQhCyAB/QACICEkIAFBMGr9AAIAISUgCSAAKAIYIgcoAgg2AgAgDEEEayAAKAIcLQAAOgAAIAhBMGogJf0LAwAgBiAk/QsDUCAHKAIIIgEgBygCAEYEQCAHQbj4wgAQnQgLIAcoAgQgAUHsAGxqIgggBkEwakHkAPwKAAAgCCAKNgJoIAggCzYCZCAHIAFBAWoiATYCCAwECyAAKAIcIRQgACgCGCIHKAIIIQwgC0UEQEEAIQ5BACELIAAoAiAoAgAiCQRAIAZBmAFqIgpBGGogCUEYaigCADYCACAKQRBqIAlBEGopAgA3AwAgBiAJ/QACAP0LA5gBQQEhCwsgDygCACEJIA0oAgAhCiABRQ0DDAILQQAhDkEAIQsgAQRAIAZBmAFqIglBGGogAUEYaigCADYCACAJQRBqIAFBEGopAgA3AwAgBiAB/QACAP0LA5gBQQEhCwsgDSgCACEJIA8oAgAhCiAAKAIgKAIAIgENAQwCCyABIAhBqPjCABCFCwALIAZBuAFqIg1BGGogAUEYaigCADYCACANQRBqIAFBEGopAgA3AwAgBiAB/QACAP0LA7gBQQEhDgsgFC0AACENIAcoAgAgDEYEQCAHQcj4wgAQnQgLIAcoAgQgDEHsAGxqIgEgCzYCACABIAYpA5gBNwIEIAEgDjYCICABIAYpA7gBNwIkIAFCgICAgMAANwJAIAH9DAAAAAAAAAAAAAAAAAAAAAD9CwJIIAFBDGogBkGYAWoiC0EIav0AAwD9CwIAIAFBHGogC0EYaigCADYCACABQSxqIAZBuAFqIgtBCGr9AAMA/QsCACABQTxqIAtBGGooAgA2AgAgAUHYAGpCADcCACABQeAAakEANgIAIAEgCTYCaCABIAo2AmQgByAMQQFqNgIIIAYgDToA4AEgBiAMNgLcASAGIBA2AtgBIAYgETYC1AEgCCgCBCIMIBNxIgEgCCgCACIJaikAAEKAgYKEiJCgwIB/gyIVUARAQQghCgNAIAEgCmohASAKQQhqIQogCSABIAxxIgFqKQAAQoCBgoSIkKDAgH+DIhVQDQALCyAIKAIIIQsCQCAJIBV6p0EDdiABaiAMcSIBaiwAACIKQQBOBH8gCSAJKQMAQoCBgoSIkKDAgH+DeqdBA3YiAWotAAAFIAoLQQFxIgogC0VxRQRAIAEgCWogGKdB/wBxIg06AAAgCCALIAprNgIIIAkgAUEIayAMcWpBCGogDToAACAIIAgoAgxBAWo2AgwgCSABQQR0ayIBQRBrIAb9AALUAf0LAgAMAQsgBkEIaiAIIAhBEGoQigIgCCAWIAgoAgAgCCgCBCAWEIUKIAZB1AFqEPAKIQELIAFBCGshCSAHKAIIIQELAkACQCABIAkoAgAiCEsEQCAHKAIEIAhB7ABsaiEBIAAoAighByAAKAIkIQggEi0AAA0BIAYgBioCHCIhOALgASAGIAYqAhgiGow4AtwBIAYgBioCFCIcjDgC2AEgBiAGKgIQIh6MOALUASAGICEgHiAGKgIkIhuUIBwgBioCICIdlJMiICAgkiIglCAcIBwgBioCKCIilCAaIBuUkyIfIB+SIh+UIB4gGiAdlCAeICKUkyIjICOSIiOUk5IgIpM4AuwBIAYgISAjlCAeICCUIBogH5STkiAbkzgC6AEgBiAhIB+UIBogI5QgHCAglJOSIB2TOALkASAIIAZB1AFqIAAoAiwgACgCMCACIAMgACgCNCICKAIAIAIoAgQgBCAFIAAoAjgqAgAgASAHKAIoERIAGgwCCyAIIAFB2PjCABCFCwALIAggBkEQaiACIAMgACgCLCAAKAIwIAQgBSAAKAI0IgIoAgAgAigCBCAAKAI4KgIAIAEgBygCKBESABoLIAZB8AFqJAALuBIDBn8MfQN7IwBBoARrIgokACAKIAg4AgggCiAHOAIEIAogCToADyAKQRBqIglBMGoiCyAEQTBq/QACAP0LAwAgCUEgaiAEQSBq/QACAP0LAwAgCUEQaiAEQRBq/QACAP0LAwAgCiAE/QACAP0LAxAgCkHQAGoiBEEgaiACQSBq/QACAP0LAwAgBEEwaiIMIAJBMGr9AAIA/QsDACAEQRBqIAJBEGr9AAIA/QsDACAJQShqIg8gDyoCACAEQShqIg0qAgCTOAIAIAogAv0AAgD9CwNQIAwqAgAhESAKIAoqAjwgCioCfJM4AjwgCyALKgIAIBGTOAIAIAQgAiAHENwCIApBiAFqQgA3AwAgDf0MAAAAAAAAAAAAAAAAAAAAAP0LAwAgCkGUAWogBCAHENwCIApBBDoA5AEgCiAIOALoASAKQbwCaiICIAkgBxDcAiAKKgKYASIHIAoqAswCIAoqAqQBkyIZlCAKKgKUASIRIAoqAtACIAoqAqgBkyIalJMiECAQkiETIAoqApwBIhAgGpQgByAKKgLUAiAKKgKsAZMiFJSTIhIgEpIhFSAKQewBaiIMQRhqIgsgFCAKKgKgASISIBOUIAcgFZQgESARIBSUIBAgGZSTIhQgFJIiG5STkpI4AgAgCiAQIAoqAsQCIhSUIAcgCioCwAIiFpQgESAKKgK8AiIXlCASIAoqAsgCIhiUkpKSOAL4ASAKIAcgF5QgEiAUlCARIBaUk5IgECAYlJM4AvQBIAogEiAWlCARIBSUkiAHIBiUkyAQIBeUkzgC8AEgCiAQIBaUIBIgF5QgESAYlJMgByAUlJOSOALsASAKIBogEiAblCARIBOUIBAgFZSTkpI4AoACIAogGSASIBWUIBAgG5QgByATlJOSkjgC/AEgAiAJIAgQ3AIgCkGIAmoiDUEYaiALKAIANgIAIAogECAKKgLEAiIIlCAHIAoqAsACIhOUIBEgCioCvAIiFZQgEiAKKgLIAiIUlJKSkjgClAIgCiAHIBWUIBIgCJQgESATlJOSIBAgFJSTOAKQAiAKIBIgE5QgESAIlJIgByAUlJMgECAVlJM4AowCIAogECATlCASIBWUIBEgFJSTIAcgCJSTkjgCiAIgCiAKKQL8ATcCmAIgCkGABGoiCyAFIAwgBigClAEiDBEBACACIAUgDSAMEQEAIAogCv1dAsACIAr9XQKEBP3qASIdIAr9XQLIAiAK/V0CjAT96wEiHv0NAAECAwQFBgcQERITFBUWF/0LAqgCIAogCioCgAQiByAKKgK8AiIIIAcgCF8bIgc4AqQCIAogCioClAQiCCAKKgLQAiIRIAggEWAbIgg4ArgCIAogBjYC0AIgCiAFNgLMAiAKIAE2AsQCIAogAzYCvAIgAyoCbCESIAogCkGwAWo2AuQCIAogCkHoAWo2AuACIAogCkEPajYC3AIgCiAKQQhqNgLYAiAKIApBBGo2AtQCIAogCTYCyAIgCiAENgLAAiAD/V0DaCEcIAMqAmQhESAKIAggEpWN/AAiBDYC/AIgCiAHIBGVjvwAIgU2AugCIAogHSAc/ecB/WggHiAR/RMiHiAc/Q0AAQIDEBESEwABAgMAAQID/ecB/Wf9DQABAgMEBQYHEBESExQVFhf9+AEiHf0LAuwCIAIgCkHoAmoiARCTAyALIAMQhgUgCkGIA2ogC0EIaiICKAIANgIAIAogCikCgAQ3A4ADIApBmANqIApBlARqKAIANgIAIAogCikCjAQ3A5ADIBwgHv0NAAECAwQFBgcQERITAAECAyEcIApB3ANqIQYgCkH0A2ohCyAKQawDaiEMIAFBDGohAyAKQbACaiENA0AgCiASIASylDgCtAMgCiAcIB39+gH95gH9CwKkAyAKIBEgBbKUOAKgAyAKIA02ApgEIAogDDYCkAQgCiAPNgKIBCAKKgI4IQggCiAKQaQCajYClAQgCiAKQaADajYCjARBCCEEQRAhBQJ9Q///f38gCEMAAAAAXiIOBH9BCAVD//9/fyAIQwAAAABdRQ0BGkEMIQVBBAsgAmooAgAqAgAgAiAFaigCACoCAJMgCJUiByAHQwAAAABdGwshBwJ9An8gCioCPCIQQwAAAABeIgQEQEEIIQlBEAwBC0P//39/IBBDAAAAAF1FDQEaQQQhCUEMCyEFQ///f38gAiAJaigCAEEEaioCACACIAVqKAIAQQRqKgIAkyAQlSIIIAhDAAAAAF0bCyEIAn1D//9/fwJ/IAoqAkAiE0MAAAAAXiIFBEBBECEJQQgMAQtD//9/fyATQwAAAABdRQ0BGkEMIQlBBAsgAmooAgBBCGoqAgAgAiAJaigCAEEIaioCAJMgE5UiECAQQwAAAABdGwshECAKIAU6AMwDIAogBDoAxAMgCiAOOgC8AwJAAkACQCAKKgIIIhMgEF1FDQAgByATXkUNACAIIBNeDQELQQIgByAIXiIBIBAgCCAHIAEbXRsiDkECdCIBIANqIQQgCkHoAmogAWoiCSgCACEFIApBuANqIA5BA3RqLQAERQRAIAkgBUEBayIJNgIAIAQgBCgCAEEBayIENgIAIAkgCkGAA2ogAWooAgAiCUgEQCAEIAlKDQMMAgsgAiADQQhqKAIANgIAIAogAykCADcDgAQgCkGABGogAWogBTYCACAKQegDaiIBQQhqIApB8AJqKAIANgIAIAsgCikDgAQ3AgAgC0EIaiACKAIANgIAIAogCikC6AI3A+gDIApBvAJqIAEQkwMMAgsgCSAFQQFqIgU2AgAgBCAEKAIAIgRBAWoiCTYCACAJIApBkANqIAFqKAIAIglMBEAgAiAKQfACaigCADYCACAKIAopAugCNwOABCAKQYAEaiABaiAENgIAIAYgAykCADcCACAGQQhqIANBCGooAgA2AgAgCkHQA2oiAUEIaiACKAIANgIAIAogCikDgAQ3A9ADIApBvAJqIAEQkwMMAgsgBSAJSA0BCyAAIAr9AAKwAf0LAgAgAEEwaiAKQbABaiIBQTBqKQIANwIAIABBIGogAUEgav0AAgD9CwIAIABBEGogAUEQav0AAgD9CwIAIApBoARqJAAPCyAKKAL8AiEEIAr9AALsAiEdIAooAugCIQUMAAsAC9QRAwt/L30IeyMAQSBrIgQkACADBEAgACgCECINBEACQCADIAAoAgxGBEAgAioCACIPIAEqAhQiGpQgAkEEaioCACIQIAEqAiwiG5SSIAJBCGoqAgAiESABKgJEIhyUkiACQQxqKgIAIhIgASoCXCIdlJIgAkEQaioCACITIAEqAnQiHpSSIAJBFGoqAgAiFCABKgKMASIflJIhFSAPIAEqAhAiIJQgECABKgIoIiGUkiARIAEqAkAiIpSSIBIgASoCWCIjlJIgEyABKgJwIiSUkiAUIAEqAogBIiWUkiEWIA8gASoCDCImlCAQIAEqAiQiJ5SSIBEgASoCPCIolJIgEiABKgJUIimUkiATIAEqAmwiKpSSIBQgASoChAEiK5SSIRcgDyABKgIIIiyUIBAgASoCICItlJIgESABKgI4Ii6UkiASIAEqAlAiL5SSIBMgASoCaCIwlJIgFCABKgKAASIxlJIhGCAPIAEqAgQiMpQgECABKgIcIjOUkiARIAEqAjQiNJSSIBIgASoCTCI1lJIgEyABKgJkIjaUkiAUIAEqAnwiN5SSIRkgDyAB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BgcUFRYXAAECAwABAgMgIf3lAf3rAf3rASIeIB795gH95AH9DAAAAAAAAAAAAAAAAAAAAAAgICAFQRhqIAX9XAI4/VYCAAH95QEgBUEIaiAF/VwCKP1WAgABICD95QH96wH96wEiHiAe/eYB/eQB/eMBIh79HwEgHv0fAF4iARshCAJAAkACQAJAAkAgHiAeIB79DQQFBgcAAQIDAAECAwABAgMgARsiHv0fACITIBRdRQRAIB79HwEiEyAUXUUNBCATQ///f39bDQQgCCgCHEH/////A3FBAUcNAQwCCwJAIBND//9/f1sEQAwBCyAGIAUgARsiBigCDCEBIAYoAhxB/////wNxQQFHBEAgHv0fASITIBRdRQRAIAEhBAwHCyATQ///f39bBEAgASEEDAcLQQEhBiAIKAIcQf////8DcUEBRgRAIAEhBAwFCwJ/IAMoApQBIg5BIUkEQCAOIQQgByEFQSAhDiARDAELIAMoAhQhBCADKAIYIQUgBwshBiAIKAIMIQggBCAORgR/IANBEGoQowQgAygCGCEFIAchBiADKAIUBSAEC0ECdCAFaiAINgIAIAYgBigCAEEBajYCACABIQQMBgsCQCABIAxJBEAgEiABQSRsaiIGKAIgIQEgA0GYAWogBigCHCABKAIIQQFrQXhxakEIaiAGIAIgAUHEAGooAgARAgAgAygCqAEiAUEERg0BIB0gAyoCmAEiF5MiEyATlCAcIAMqApwBIhiTIhMgE5SSIBsgAyoCoAEiFpMiEyATlJKRIhMgFF1FDQEgAygCrAEhCiADKAKkASEPIBchGSAYIRogFiEVIBMhFCABIQsMAQsgASAMQcicwwAQhQsACwsgHv0fASAUXUUNAyAe/R8BQ///f39bDQMgCCgCHEH/////A3FBAUYNAQsgCCgCDCEEDAMLQQAhBgsgDCAIKAIMIgFLBEAgEiABQSRsaiIFKAIgIQEgA0GYAWogBSgCHCABKAIIQQFrQXhxakEIaiAFIAIgAUHEAGooAgARAgACQCADKAKoASIBQQRGDQAgHSADKgKYASIXkyITIBOUIBwgAyoCnAEiGJMiEyATlJIgGyADKgKgASIWkyITIBOUkpEiEyAUXUUNACADKAKsASEKIAMoAqQBIQ8gFyEZIBghGiAWIRUgEyEUIAEhCwsgBkUNAQwCCyABIAxB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JAAPCyAEQQA2AhwgBEEBNgIQIARBpNnBADYCDCAEQgQ3AhQgBEEMakGs2cEAELkNAAvTDAIHfwN9IwBB4AFrIgskACALQTBqIAMgBCgCtAERAAAgCygCNCENIAsoAjAhDCALQShqIAYgBygCtAERAAACQAJAAkACQAJAIAwEQCALKAIoIhANAQsgC0EgaiADIAQoArgBEQAAIAsoAiAiDEUNASALQaABaiAMIAsoAiQgASACIAUgBiAHIAggCSAKEHcgCy0A2AEiAUEERwRAIAtB6ABqIAtB1AFqKAIANgIAIAtB2ABqIAtBxAFq/QACAP0LAwAgC0HIAGogC0G0AWr9AAIA/QsDACALQZIBaiALQdsBai0AADoAACALIAv9AAKkAf0LAzggCyALLwDZATsBkAELIAAgC/0AAzj9CwIAIAAgAToANCAAIAsvAZABOwA1IABBMGogC0E4aiIBQTBqKAIANgIAIABBIGogAUEgav0AAwD9CwIAIABBEGogAUEQav0AAwD9CwIAIABBN2ogC0GSAWotAAA6AAAMBAsgCygCLCEOIAoEf0EABSAHKAKsASEKIAQoAqwBIQ8gBygCqAEhESADIAQoAqgBEQsAIAYgERELAJIhFCADIA8RCwAhEiAGIAoRCwAiEyATIBIgEiATXRsgEiASXBshEkEBCyEKIAsgEjgCeCALIBQ4AnQgCyAKNgJwIA5BGGooAgAhCiAOQRBqKAIAIQ4gDUEYaigCACEPIA1BEGooAgAhDSALQYABaiADIAQoAoQBEQAAIAtBkAFqIAYgBygChAERAAAgCyoCjAEgCyoCnAFgDQEgC0GgAWoiCiABIAUgECAOIAYgByACIAwgDyADIAQgCCAJIAtB8ABqEEUgCy0A1AEiAkEERwRAIAtBOGoiAUEYaiAKQQxqKAIANgIAIAFBDGogCkEYaigCADYCACABQTBqIApBJGooAgA2AgAgAUEkaiAKQTBqKAIANgIAIAsgCykCpAE3AkggCyALKQKwATcCPCALIAspArwBNwJgIAsgCykCyAE3AlQgCyALKgKgATgCOAsgCyACOgBsDAILIAtBGGogBiAHKAK4AREAACALKAIYIgwEQCALQaABaiAMIAsoAhwgASAFIAIgAyAEIAggCSAKEHcgCy0A2AEiAUEERwRAIAtBmAFqIAtBsAFqKAIANgIAIAtBQGsgC0G8AWooAgA2AgAgC0H4AGogC0HIAWooAgA2AgAgC0GIAWogC0HUAWooAgA2AgAgCyALKQKoATcDkAEgCyALKQK0ATcDOCALIAspAsABNwNwIAsgCykCzAE3A4ABIAsqAqQBIQkLIAAgCTgCACAAIAspAzg3AgQgACALKQOQATcCECAAIAspA4ABNwIcIAAgCykDcDcCKCAAIAE6ADQgAEEMaiALQUBrKAIANgIAIABBGGogC0GYAWooAgA2AgAgAEEkaiALQYgBaigCADYCACAAQTBqIAtB+ABqKAIANgIAIABBN2ogC0GiAWotAAA6AAAgACALLwCgATsANQwDCyALQRBqIAMgBCgCYBEAACALQaABaiALKAIQIgwgCygCFCgCDBEAAAJAIAxFDQAgCykDoAFC5p216IDjz4cxhSALKQOoAULw4py6utTs2yaFhEIAUg0AIAAgASACIAwgBSAGIAcgCCAJIAoQcgwDCyALQQhqIAYgBygCYBEAACALQaABaiALKAIIIgwgCygCDCgCDBEAAAJAIAxFDQAgCykDoAFC5p216IDjz4cxhSALKQOoAULw4py6utTs2yaFhEIAUg0AIwBBQGoiBiQAIAZBCGoiByABIAUgDCACIAMgBCAIIAkgChByIAYtADwiAUEERwRAIAAgBikCDDcCECAAIAYpAhg3AgQgACAGKQIkNwIoIAAgBikCMDcCHCAAIAYqAgg4AgAgAEEYaiAHQQxqKAIANgIAIABBDGogB0EYaigCADYCACAAQTBqIAdBJGooAgA2AgAgAEEkaiAHQTBqKAIANgIACyAAIAE6ADQgBkFAayQADAMLIABBBToANAwCCyALQThqIAEgAiAMIA0gAyAEIAUgECAKIAYgByAIIAkgC0HwAGoQRQsgAEEwaiALQThqIgFBMGopAgA3AgAgAEEgaiABQSBq/QACAP0LAgAgAEEQaiABQRBq/QACAP0LAgAgACAL/QACOP0LAgALIAtB4AFqJAALowwBG38jAEGQAWsiDyQAAkACQAJAIABFDQAgAEEIayITKAIAQQFqIRAgEyAQNgIAIBBFDQEgACgCAA0CIABBfzYCACAPIBM2AgggDyAANgIEIA8gAEEIaiIfNgIAIAFFDQAgAUEIayIUKAIAQQFqIRAgFCAQNgIAIBBFDQEgASgC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AhAgCioCBCEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCCCEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCDCEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCECEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCFCEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCGCEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCHCEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCICEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCJCEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCKCEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCjUCLCErIBAoAgggC2tBB00EQCAQQQhqIAtBCEEBQQEQ1gYgECgCECELCyAQKAIMIAtqICs3AAAgECALQQhqIgs2AhAgCjUCMCErIBAoAgggC2tBB00EQCAQQQhqIAtBCEEBQQEQ1gYgECgCECELCyAQKAIMIAtqICs3AAAgECALQQhqIgs2AhAgCjUCNCErIBAoAgggC2tBB00EQCAQQQhqIAtBCEEBQQEQ1gYgECgCECELCyAQKAIMIAtqICs3AAAgECALQQhqIgs2AhAg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NwLoASADQgQ3AvABIANCgICAgMAANwL4ASADQgA3AoACIANCBDcCiAIgAyAD/QACuAX9CwKoASADQagDakIANwMAIANBhAVqQQA2AgAgA0EBOgCcAiAD/QwAAAAAAAAAAAAAAAAAAAAA/QsDmAMgA/0MAAAAAAAAAAAAAAAAAAAAAP0LBMADIANCADcC/AQgA/0MAAAAAAAAAAAAAAAAAACAP/0LBKACIAP9DP//f////39/AAAAAP//f//9CwTAAiAD/Qz//39/AAAAAP//f////39//QsE0AIgA/0MAAAAAP//f////39/AAAAAP0LBOACIAP9DP//f////39/AAAAAP//f//9CwTwAiAD/QwAAAAAAAAAAAAAAAAAAAAA/QsChAMgA0H////7BzYCgAMgA/0MAAAAAAAAAAAAAAAAAAAAAP0LBLACIAP9DAAAAAAAAAAAAAAAAAAAAAD9CwC7BSAD/QwAAAAAAAAAAAAAAAAAAAAA/QsAkwUgA/0MAAAAAAAAAAAAAAAAAAAAAP0LAOcFIAP9DAAAAAAAAAAAAAAAAAAAAAD9CwCQBiAD/QwAAAAAAAAAAAAAAAAAAAAA/QsA/QUgA0EAOgDYAyADQv////sHNwPQAyAD/QwAAIA/AAAAAAAAAAAAAAAA/QsEsAMgA0GAgID8AzYClAMgA0GgAmoiCEHIAWogBkEPaigAADYAACADIAP9AAC4Bf0LANkDIANBADoA9AMgA0L////7BzcC7AMgA0GEBGogBEEPaigAADYAACADIAP9AACQBf0LAPUDIANBADoAkAQgA0L////7BzcDiAQgCEGAAmogBUEPaigAADYAACADIAP9AADkBf0LAJEEIANBADoArAQgA0L////7BzcCpAQgA0G8BGogA0GcBmooAAA2AAAgAyAD/QAAjQb9CwCtBCADQQA6AMgEIANC////+wc3A8AEIANB2ARqIANBiQZqKAAANgAAIAMgA/0AAPoF/QsAyQQgA0EAOgCIBSADQQA2AvgEIANCADcD8AQgA0GAAjsB7AQgA0EANgLoBCADQQA6AOQEIANC////+wc3AtwEIAMoAgghBiADQQxqIAMoAhgiCEEGaiIFEMcCIANBHGogBRDHAiADQSxqIAUQxwIgAygCRCIEIAMoAjxGBEAgA0E8aiAEQQFBBEEQENcGIAMoAkQh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IAFBDEEAIAUbciEOIApBDGogCiADKgIAIhdDAAAAAF4iBhsqAgAhGSAIQfwBaiEKIAhBpAJqIQsgCUEMaiEBA0AgCCAaIBv9+gH95gH9CwTAAUP//39/IRAgBiAXQwAAAABdcgRAQ///f38gCCoCyAEgFCAHspQgBhsgGZMgF5UiECAQQwAAAABdGyEQC0P//39/IRJD//9/fyERIAUgFkMAAAAAXXIEQEP//39/IA4qAgAgDSoCAJMgFpUiESARQwAAAABdGyERCyAEIBVDAAAAAF1yBEBD//9/fyAYIAKylCAIKgLEASAEGyAMKgIAkyAVlSISIBJDAAAAAF0bIRILIAggBDoA7AEgCCAFOgDkASAIIAY6ANwBAkACQAJAIBAgE15FDQAgESATXkUNACASIBNeDQELQQIgECARXiICIBIgESAQIAIbXRsiD0ECdCICIAFqIQMgCEGIAWogAmoiCSgCACEHIAhB2AFqIA9BA3RqLQAERQRAIAkgB0EBayIJNgIAIAMgAygCAEEBayIDNgIAIAkgCEGgAWogAmooAgAiCUgEQCADIAlKDQMMAgsgCEGIAmoiA0EIaiIJIAFBCGooAgA2AgAgCCABKQIANwOIAiACIANqIAc2AgAgCEGYAmoiAkEIaiAIQZABaigCADYCACALIAgpA4gCNwIAIAtBCGogCSgCADYCACAIIAgpAogBNwOYAiAIQeQAaiACEI4DDAILIAkgB0EBaiIHNgIAIAMgAygCACIDQQFqIgk2AgAgCSAIQbABaiACaigCACIJTARAIAhBiAJqIgdBCGoiCSAIQZABaigCADYCACAIIAgpAogBNwOIAiACIAdqIAM2AgAgCiABKQIANwIAIApBCGogAUEIaigCADYCACAIQfABaiICQQhqIAkoAgA2AgAgCCAIKQOIAjcD8AEgCEHkAGogAhCOAwwCCyAHIAlIDQELIAAgCP0AAhD9CwIAIABBMGogCEEQaiIBQTBqKQIANwIAIABBIGogAUEgav0AAgD9CwIAIABBEGogAUEQav0AAgD9CwIAIAhBsAJqJAAPCyAIKAKcASECIAj9AAKMASEbIAgoAogBIQcMAAsAC70JAg5/An0jAEGgAmsiAiQAAkACQAJAIAAoAkBBgICAgHhHBEAgAkEMaiAAIAFBAUP//39/EHQgAigCIEEERg0B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aikCADcCACABQQhqIANBCGr9AAIA/QsCAAsgJUEwaiQADwtBAAshJyAoQQhqIiggFmogF3EhFgwACwAL+wgDCn8BewF+IwAiAiEJIAJBQGpBQHEiBSQAAkAgACgCCCIDRQRAIABBADYCFEEAIQMMAQsgACgCBCIGKAIcIQcCQAJAAkACQAJAIAYoAjxB/////wNxIAdB/////wNxakECTQRAIABBADYCFCABQQA2AgggBSAGQTBq/QAEAP0LBDAgBSAGQSBq/QAEAP0LBCAgBSAGQRBq/QAEAP0LBBAgBSAG/QAEAP0LBAAgASgCAEUEQCABQeDwwgAQwwgLIABBDGohBCABKAIEIgIgBf0ABAD9CwQAIAJBEGogBf0ABBD9CwQAIAJBIGogBf0ABCD9CwQAIAJBMGogBf0ABDD9CwQAIAIgAigCHCIIQf////8HQf////8DIAhB/////3tLG3E2AhwgAigCPCIFQf////8DcSIIDQEMBQsgAyABKAIIIgRLBEAgASgCACAEIgJrIAMgAmsiCEkEQCABIAIgCEHAAEHAABDYBiABKAIIIQILIAEoAgQiCiACQQZ0aiEHIAhBAkkEfyACBSADIARBf3NqQQZ0IgsEQCAHQQAgC/wLAAsgCiACIANqIARrQQZ0akFAaiEHIAIgCGpBAWsLIQggB/0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgB0Ewav0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgB0Egav0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgB0EQav0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgBigCHCEHIAhBAWohAwsgAEEYaiEEIAEgAzYCCCAFQQE2AgAgBigCLCEDAkAgB0H/////A3FBAUYEQCABKAIEIgJBEGogBkEQav0ABAD9CwQAIAIgBikDADcDACACQQhqIAZBCGopAwA3AwAgAkH/////B0H/////AyACKAIcIgJB/////3tLGyACcTYCHAwBCyAAIAEgBCAAKAIQIAAoAhQgBigCDCAFQQAQggIgACgCCEUNAgsCQCAAKAIEIgIoAjxB/////wNxQQFHBEAgACABIAQgACgCECAAKAIUIAMgBUEBEIICDAELIAEoAghFDQMgAkEwav0ABAAhDCABKAIEIgMgAikDIDcDICADQShqIAJBKGopAwA3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IRMgBiASOAJkIAZC////+wc3A1AgBv0M//9/////f38AAAAA//9///0LBEAgBv0MAAAAAP//f////39/AAAAAP0LBDAgBv0M//9/fwAAAAD//3////9/f/0LBCAgBv0M//9/////f38AAAAA//9///0LBBAgBv0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgBiAIKQMINwNoIAZB8ABqIAhBEGopAwA3AwAgBkH4AGogCEEYaikDADcDACAGQQA6AKgBIAZC////+wc3A6ABIAZBADYCjAEgBkIANwKEASAGIBM4AoABIAZC////+wc3ArwBIAZBADoAxAEgBkL////7BzcD2AEgBkEAOgDgASAGQv////sHNwL0ASAGQQA6APwBIAZBuAFqIAhB/ABqKAAANgAAIAYgCP0AAG39CwCpASAGQdQBaiAIQekAaigAADYAACAGIAj9AABa/QsAxQEgBkHwAWogCEHWAGooAAA2AAAgBiAI/QAAR/0LAOEBIAZBADoAmAIgBkL////7BzcDkAIgBkEAOgC0AiAGQT42ArgCIAZBgAI7AbwCIAZC////+wc3AqwCIAZBjAJqIAhBwwBqKAAANgAAIAYgCP0AADT9CwD9ASAGIAj9AAAh/QsAmQIgBkGoAmogCEEwaigAADYAACAIQZABaiQAIAdB8ANqIAtBCGooAgA2AgAgB0GMBGogDUEIaigCADYCACAHIAspAgA3A+gDIAcgDSkCADcChAQgAwRAIAdB0AVqIgMgBkHAAvwKAAAgByAFOALMBSAHIAQ4AsgFIAMgB0HIBWopAgA3AxAgAyADLQC5AkEBcjoAuQIgBiADQcAC/AoAAAsgB0EwaiAHQYADakG9AvwKAAAgCSgCACEGIAcvAb4FIQsgBy0AvQUhAyACIAIoAgBBAWs2AgAgCSAGQQFrIgI2AgAgAg0AIAdBLGoQqQ0LIAEgASgCAEEBazYCACAMIAwoAgBBAWsiATYCACABRQRAIAdBIGoQqQ0LIAAgACgCAEEBazYCACAKIAooAgBBAWsiADYCACAARQRAIAdBFGoQqQ0LQQAhAiADQQJHBEAgB0HcBWogB0EwakG9AvwKAABB4AJBEBCRDiIARQ0EIABBADYCECAAQoGAgIAQNwMAIABBFGogB0HQBWpByQL8CgAAIAAgCzsB3gIgACADOgDdAiAA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AAAAAAAA/QsAXSAE/QwAAAAAAAAAAAAAAAAAAAAA/QsASiAE/QwAAAAAAAAAAAAAAAAAAAAA/QsANyAE/QwAAAAAAAAAAAAAAAAAAAAA/QsAJCAEQYABaiILIAVB9AJqIgwQrgQgA0HgAGogC0EIaiINKAIANgIAIAMgBCkCgAE3AlggBCoCjAEhDyALIAwQrgQgBEEcaiANKAIANgIAIAQgBCkCgAE3AhQgBCoCjAEhECADIA84AmQgA0L////7BzcDUCAD/Qz//3////9/fwAAAAD//3///QsEQCAD/QwAAAAA//9/////f38AAAAA/QsEMCAD/Qz//39/AAAAAP//f////39//QsEICAD/Qz//3////9/fwAAAAD//3///QsEECAD/QwAAAAAAAAAAAAAAAAAAAAA/QsEACADIAQpAwg3A2ggA0HwAGogBEEQaikDADcDACADQfgAaiAEQRhqKQMANwMAIANBADoAqAEgA0L////7BzcDoAEgA0EANgKMASADQgA3AoQBIAMgEDgCgAEgA0L////7BzcCvAEgA0EAOgDEASADQv////sHNwPYASADQQA6AOABIANC////+wc3AvQBIANBADoA/AEgA0G4AWogBEH8AGooAAA2AAAgAyAE/QAAbf0LAKkBIANB1AFqIARB6QBqKAAANgAAIAMgBP0AAFr9CwDFASADQfABaiAEQdYAaigAADYAACADIAT9AABH/QsA4QEgA0EAOgCYAiADQv////sHNwOQAiADQQA6ALQCIANBNzYCuAIgA0GAAjsBvAIgA0L////7BzcCrAIgA0GMAmogBEHDAGooAAA2AAAgAyAE/QAANP0LAP0BIAMgBP0AACH9CwCZAiADQagCaiAEQTBqKAAANgAAIARBkAFqJAAgBUHwA2ogCEEIaigCADYCACAFQYwEaiAKQQhqKAIANgIAIAUgCCkCADcD6AMgBSAKKQIANwKEBCAFQTBqIANBvQL8CgAAIAYoAgAhBCAFLwG+BSEIIAUtAL0FIQMgAiACKAIAQQFrNgIAIAYgBEEBayICNgIAIAINACAFQSxqEKkNCyABIAEoAgBBAWs2AgAgCSAJKAIAQQFrIgE2AgAgAUUEQCAFQSBqEKkNCyAAIAAoAgBBAWs2AgAgByAHKAIAQQFrIgA2AgAgAEUEQCAFQRRqEKkNC0EA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kAlqIQIgDv0MBAAAAAQAAAAEAAAABAAAAP2uASEOIANBBGsiAw0ACyABIARGDQELIAkgBkGkAmxqIQIgCCAKayIJQQFrIQRBACEDA0AgAkGAgICAeDYCACACQQRqIAxBASADIARGIgEbNgIAIAJBCGogCyAKIANBAWoiA2ogARs2AgAgAkGkAmohAiADIAlHDQALIAMgBmohBgsgACAHNgIEIABBATYCACAAIAY2AhAgBUEgaiQAC6MFAQp/AkACQCAAKAIIIgQgAU8EQCAAIAE2AgggASAERwRAIAQgAWshBCAAKAIEIAFBBHRqIQMDQCADKAIAIgAEQCADQQRqKAIAIABBAnRBBBDoDgsgA0EQaiEDIARBAWsiBA0ACwsgAigCACIARQ0BIAIoAgQgAEECdEEEEOgODwsgAigCDCEGIAIoAgghCCACKAIEIQogAigCACELIAQhBSABIARrIgkgACgCACAEa0sEQCAAIAQgCUEEQRAQ1wYgACgCCCEFCyAAKAIEIAVBBHRqIQMCQCAJQQJJDQAgCEECdCEHIAhB/////wNLDQIgB0H8////B0sNAiAHBEAgBEF/cyABaiECIAUgCWpBAWshBUEEIQwDQCAHQQQQkQ4iAUUNBCAHBEAgASAKIAf8CgAACyADQQxqIAY2AgAgA0EIaiAINgIAIANBBGogATYCACADIAg2AgAgA0EQaiEDIAJBAWsiAg0ACwwBCyABIARBf3NqIgFBA3EhAiAJQQJrQQNPBEAgAUF8cSEBA0AgA0KAgICAwAA3AgAgA0E8aiAGNgIAIANBOGpBADYCACADQTBqQoCAgIDAADcCACADQSxqIAY2AgAgA0EoakEANgIAIANBIGpCgICAgMAANwIAIANBHGogBjYCACADQRhqQQA2AgAgA0EQakKAgICAwAA3AgAgA0EMaiAGNgIAIANBCGpBADYCACADQUBrIQMgAUEEayIBDQALCyACBEADQCADQoCAgIDAADcCACADQQxqIAY2AgAgA0EIakEANgIAIANBEGohAyACQQFrIgINAAsLIAUgCWpBAWshBQsgAyAGNgIMIAMgCDYCCCADIAo2AgQgAyALNgIAIAAgBUEBajYCCAsPCyAMIAdBgPzBABDXDQALvQUBC38jAEEgayICJAACQCABKAIEIgNFBEAgAEGAgICAeDYCAAwB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A0AgAyAGTw0CIAcgA0GAA2xqIgwoAvACIgMgAkcNAAsgDEHwAmogCTYCAAwBCyAMQQhqIAk2AgALIAggC08NACAOQiCIpyEJIAIgBCAIQQR0aiIIKAIMIgNHBEADQCADIAZPDQIgByADQYADbGoiCCgC9AIiAyACRw0ACyAIQfQCaiAJNgIADAELIAhBDGogCTYCAAsgCiAFQYAD/AoAACAFIAcgBkEBayIDQYADbGpBgAP8CgAAIAEgAzYCFAJAIAIgA08NACAHIAJBgANsaikD+AIiDaciASALTw0AIA1CIIinIQYCQCAEIAFBBHRqIgUoAggiASADRwRAA0AgASADTw0CIAMgByABQYADbGoiBSgC8AIiAUcNAAsgBUHwAmogAjYCAAwBCyAFQQhqIAI2AgALIAYgC08NACAEIAZBBHRqIgQoAgwiASADRwRAA0AgASADTw0CIAMgByABQYADbGoiBCgC9AIiAUcNAAsgBEH0AmogAjYCAAwBCyAEQQxqIAI2AgALIAAgCkHwAvwKAAALIApBgANqJAALvgQBCH8jAEEQayIDJAAgAyABNgIEIAMgADYCACADQqCAgIAONwIIAn8CQAJAAkAgAigCECIJBEAgAigCFCIADQEMAgsgAigCDCIARQ0BIAIoAggiASAAQQN0aiEEIABBAWtB/////wFxQQFqIQYgAigCACEAA0ACQCAAQQRqKAIAIgVFDQAgAygCACAAKAIAIAUgAygCBCgCDBEFAEUNAEEBDAULQQEgASgCACADIAFBBGooAgARAwANBBogAEEIaiEAIAFBCGoiASAERw0ACwwCCyAAQRhsIQogAEEBa0H/////AXFBAWohBiACKAIIIQQgAigCACEAA0ACQCAAQQRqKAIAIgFFDQAgAygCACAAKAIAIAEgAygCBCgCDBEFAEUNAEEBDAQLQQAhB0EAIQgCQAJAAkAgBSAJaiIBQQhqLwEAQQFrDgIBAgALIAFBCmovAQAhCAwBCyAEIAFBDGooAgBBA3RqLwEEIQgLAkACQAJAIAEvAQBBAWsOAgECAAsgAUECai8BACEHDAELIAQgAUEEaigCAEEDdGovAQQhBwsgAyAHOwEOIAMgCDsBDCADIAFBFGooAgA2AghBASAEIAFBEGooAgBBA3RqIgEoAgAgAyABKAIEEQMADQMaIABBCGoh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CANAIAEoAighAiABQQA2AiggAkEBcQRAIAAgAjYCACAAIAf9AAIA/QsCBCAAQRRqIAdBEGr9AAIA/QsCACAAQSRqIAdBIGooAgA2AgAMBAsgASADQQFqIgM2AlQgCCgCDEEBayADTQRAIAUgCCgCEEECa08NAyABQQA2AlQgASAFQQFqIgU2AlhBACEDCyAEQTBqIgIgCCADIAUQnQIgASACQdAA/AoAACAJIAZBEGr9AAIA/QsDACAKIAZBIGooAgA2AgAgASgCACECIAFBADYCACAEIAb9AAIA/QsDCCACQQFxRQ0ACwsgACACNgIAIAAgBP0AAwj9CwIEIABBFGogCf0AAwD9CwIAIABBJGogCigCADYCAAwBCyAAQQA2AgALIARBgAFqJAALwwMCAX8JfUP//39/IQdD//9//yEIAkAgASgCCEUEQEP//3//IQZD//9//yEFQ///f38hA0P//39/IQQMAQtD//9//yEGQ///f/8hBUP//39/IQND//9/fyEEAkACQCABKAIEIgIoAjxB/////wNxIAIoAhxB/////wNxag4CAgABCyACKgIYIQggAioCFCEGIAIqAhAhBSACKgIIIQcgAioCBCEDIAIqAgAhBAwBCyACKgIYIgYgAioCOCIFIAUgBl8bIQggAioCFCIGIAIqAjQiBSAFIAZfGyEGIAIqAhAiBSACKgIwIgMgAyAFXxshBSACKgIIIgMgAioCKCIEIAMgBF8bIQcgAioCBCIDIAIqAiQiBCADIARfGyEDIAIqAgAiBCACKgIgIgkgBCAJXxshBAsgACAHIAEqAmwiB0MAAAA/lCIJkiAHlY78ADYCCCAAIAMgASoCaCIDQwAAAD+UIgqSIAOVjvwANgIEIAAgBCABKgJkIgRDAAAAP5QiC5IgBJWO/AA2AgAgACAIIAmTIAeVjvwAQQFqNgIUIAAgBiAKkyADlY78AEEBajYCECAAIAUgC5MgBJWO/ABBAWo2AgwLiAMBB38jAEEQayIEJAACQAJAAkACQCABKAIEIgIEQCABKAIAIQYgAkEDcSEFAkAgAkEESQRAQQAhAgwBCyAGQRxqIQMgAkF8cSEIQQAhAgNAIAMoAgAgA0EIaygCACADQRBrKAIAIANBGGsoAgAgAmpqamohAiADQSBqIQMgCCAHQQRqIgdHDQALCyAFBEAgB0ED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IAMoAvgFIAMoAvwFTg0AQQAhBSADQdQHagwBCyADIAUgB2oiBSAHTzYC1AcgA0H8DmoLIAU2AgAgAygC/A4hCCADKALUByEFCyADKAKABkEBRgRAQQAhBEEAIQcgAygChAYEQCADKAKoBiIGIAMoAqQGIgdrQQAgBiAHShshBwsgAygCrAYEQCADKALQBiIEIAMoAswGIgZrQQAgBCAGShshBAsCfwJAIAMoAtQGRQ0AIAMoAogHIAMoAowHTg0AQQAhBCADQdQHagwBCyADIAQgB2oiBCAHTzYC1AcgA0H8DmoLIAQ2AgAgAygC/A4hBiADKALUByEECwJ/AkAgAygCkAcEQCADKALAByADKALEB04gBXEgBHENAUEAIQUgA0HUB2oMAgsgBCAFcUEBcQ0AQQAhBSADQdQHagwBCyAGIAhqIQUgA0H8DmoLIAU2AgALQQRBfyAJIAtqIgQgBCAJSRsgCyAQG0EBaiIEQX8gBBsiBCAEQQRNGyIGQQJ0IQUgBEH/////A0sNAyAFQfz///8HSw0DQQQhDCAFQQQQkQ4iBEUNAyAEIA82AgBBASEHIANBATYC0AcgAyAENgLMByADIAY2AsgHIANB1AdqIgUgA0EkakGkB/wKAAAgA0EQaiAFEGogAygCEEEBcUUNBCADKAIUIQxBBCELA0AgAygCyAcgB0YEQCADKAL0ByADKALwB2tBACADKALsBxshDyADKALcByADKALYB2shECADKALUByERAkAgAygChAhBA0YNACADKALICSIEQQJHBEBBASEFQQAhCEEAIQlBASEGIARBAXEEQEEAIQZBACEEIAMoAswJBEAgAygC8AkiBCADKALsCSIJa0EAIAQgCUobIQQLIAMoAvQJBEAgAygCmAoiBiADKAKUCiIJa0EAIAYgCUobIQYLAn8CQCADKAKcCkUNACADKALQCiADKALUCk4NAEEAIQYgA0H8DmoMAQsgAyAEIAZqIgYgBE82AvwOIANB+A5qCyAGNgIAIAMoAvgOIQkgAygC/A4hBgsgAygC2ApBAUYEQEEAIQVBACEEIAMoAtwKBEAgAygCgAsiBCADKAL8CiIIa0EAIAQgCEobIQQLIAMoAoQLBEAgAygCqAsiBSADKAKkCyIIa0EAIAUgCEobIQULAn8CQCADKAKsC0UNACADKALgCyADKALkC04NAEEAIQUgA0H8DmoMAQsgAyAEIAVqIgUgBE82AvwOIANB+A5qCyAFNgIAIAMoAvgOIQggAygC/A4hBQsCfwJAIAMoAugLBEAgAygCmAwgAygCnAxOIAZxIAVxDQEgA0H8DmohBUEADAILIAUgBnFBAXENACADQfwOaiEFQQAMAQsgA0H4DmohBSAIIAlqCyEEIAUgBDYCAAsgAygCoAwiBEECRg0AQQEhBUEAIQhBACEJQQEhBiAEQQFxBEBBACEGQQAhBCADKAKkDARAIAMoAsgMIgQgAygCxAwiCWtBACAEIAlKGyEECyADKALMDARAIAMoAvAMIgYgAygC7AwiCWtBACAGIAlKGyEGCwJ/AkAgAygC9AxFDQAgAygCqA0gAygCrA1ODQBBACEGIANB/A5qDAELIAMgBCAGaiIGIARPNgL8DiADQfgOagsgBjYCACADKAL4DiEJIAMoAvwOIQYLIAMoArANQQFGBEBBACEFQQAhBCADKAK0DQRAIAMoAtgNIgQgAygC1A0iCGtBACAEIAhKGyEECyADKALcDQRAIAMoAoAOIgUgAygC/A0iCGtBACAFIAhKGyEFCwJ/AkAgAygChA5FDQAgAygCuA4gAygCvA5ODQBBACEFIANB/A5qDAELIAMgBCAFaiIFIARPNgL8DiADQfgOagsgBTYCACADKAL4DiEIIAMoAvwOIQULAn8CQCADKALADgRAIAMoAvAOIAMoAvQOTiAGcSAFcQ0BIANB/A5qIQVBAAwCCyAFIAZxQQFxDQAgA0H8DmohBUEADAELIANB+A5qIQUgCCAJagshBCAFIAQ2AgALIANByAdqIAdBfyAPIBBqIgQgBCAQSRsgDyARG0EBaiIEQX8gBBtBBEEEENYGIAMoAswHIQQLIAQgC2ogDDYCACADIAdBAWoiBzYC0AcgC0EEaiELIANBCGogA0HUB2oQaiADKAIMIQwgAygCCEEBcQ0ACwwEC0EEIQsCQCADKAJUIgRBA0YNACAEQQJGDQAgAygC2AEiBEEhSQ0AIAMoAlwgBEECdEEEEOgOC0EADAQLQdzQwQBBzABBqNHBABDRCwALIA5BgICAgHg2AgAMAwsgDCAFQei6wQAQ1w0ACwJAIAMoAoQIIgRBA0YNACAEQQJGDQAgAygCiAkiBEEhSQ0AIAMoAowIIARBAnRBBBDoDgsgAygCzAchCyADKALIBwshBCAOIAc2AgggDiALNgIEIA4gBDYCAAsgA0GAD2okACABIAEoAgBBAWs2AgAgDSANKAIAQQFrIgE2AgAgAUUEQCAKQRBqEO4MC0EAIQFBACEDAkAgCigCFCIFQYCAgIB4Rg0AIAooAhghBCAFIAooAhwiAU0EQCAEIQMMAQsgBUECdCEFIAFFBEBBBCEDIAQgBUEEEOgODAELIAQgBUEEIAFBAnQiBBDyDSIDRQ0ECyAAIAE2AgQgACADNgIAIApBIGokAA8LEIMPCwALEIQPAAtBBCAEQYDUwQAQ1w0AC98JAgd/An4jAEEgayIHJAACQAJAAkAgAQRAIAFBCGsiCSgCAEEBaiEDIAkgAzYCACADRQ0BIAEoAgAiA0F/Rg0CIAEgA0EBajYCACAHIAk2AhAgByABNgIMIAcgAUEEaiIENgIIIAdBFGohBiMAQeAAayIDJAACQAJAIAQgAr0iCqcgCkIgiKcQugwiBARAAkACQAJAAkACQAJAIARBQGsoAgAgBEHEAGooAgAiBCgCCEEBa0F4cWpBCGoiCCAEKAKgAREEAEH/AXFBA2sOEAABBwIHBwcHAwcHBwQHBwUHCyMAQSBrIgUkACAFQQhqIAggBCgCYBEAACAFQRBqIAUoAggiBCAFKAIMKAIMEQAAIAUpAxghCiAFKQMQIQsgBUEgaiQAIARBACALQpHm3a7YmZjS8gCFIApCm9vS2qyiuuuKf4WEUBsiBARAIANBCGoiBUEIaiAEQQhqKAIANgIAIAQpAgAhCiAFQRRqIARBFGooAgA2AgAgAyAKNwMIIAMgBCkCDDcCFCADIANBIGo2AlwgA0EANgJEIANBADYCMCADIAU2AlggBiADQTBqEMgBDAgLIAZBgICAgHg2AgAMBwsgCCAEEMALIgQEQCADQQhqIgVBCGogBEEIaigCADYCACAEQRRqKAIAIQggBCkCDCEKIAQpAgAhCyAFQSBqIARBIGooAgA2AgAgBUEUaiAINgIAIAMgCzcDCCADIAQpAhg3AyAgAyAKNwIUIAMgA0EsajYCXCADQQA2AkQgA0EANgIwIAMgBTYCWCAGIANBMGoQyAEMBwsgBkGAgICAeDYCAAwGCyAIIAQQwwsiBARAIAQoAjAhBSADIAQoAiwiBDYCWCADQQA2AkQgA0EANgIwIAMgBCAFQQxsajYCXCAGIANBMGoQyAEMBgsgBkGAgICAeDYCAAwFCyAIIAQQyAsiBARAIAQoAgghBSADIAQoAgQiBDYCWCADQQA2AkQgA0EANgIwIAMgBCAFQQxsajYCXCAGIANBMGoQyAEMBQsgBkGAgICAeDYCAAwECyAIIAQQxwsiBARAIANBCGoiBUEIaiAEQQhqKAIANgIAIAVBFGogBEEUaigCADYCACAFQSBqIARBIGooAgA2AgAgAyAEKQIANwMIIAMgBCkCDDcCFCADIAQpAhg3AyAgAyADQSxqNgJcIANBADYCRCADQQA2AjAgAyAFNgJYIAYgA0EwahDIAQwECyAGQYCAgIB4NgIADAMLIAggBBDPCyIEBEAgBCgCCCEFIAMgBCgCBCIENgJYIANBADYCRCADQQA2AjAgAyAEIAVBDGxqNgJcIAYgA0EwahDIAQwDCyAGQYCAgIB4NgIADAILQdzQwQBBzABBqNHBABDRCwALIAZBgICAgHg2AgALIANB4ABqJAAgASABKAIAQQFrNgIAIAkgCSgCAEEBayIBNgIAIAFFBEAgB0EQahDuDAtBACEBQQAhAwJAIAcoAhQiBEGAgICAeEYNACAHKAIYIQYgBCAHKAIcIgFNBEAgBiEDDAELIARBAnQhBCABRQRAQQQhAyAGIARBBBDoDgwBCyAGIARBBCABQQJ0IgYQ8g0iA0UNBAsgACABNgIEIAAgAzYCACAHQSBqJAAPCxCDDwsACxCEDwALQQQgBkGA1MEAENcNAAvIDgILfwJ+IwBBIGsiCyQAAkACQAJAIAEEQCABQQhrIg0oAgBBAWohAyANIAM2AgAgA0UNASABKAIAIgNBf0YNAiABIANBAWo2AgAgCyANNgIQIAsgATYCDCALIAFBBGoiAzYCCCALQRRqIQojAEEwayIFJAACQAJAAkACQCADIAK9Ig6nIA5CIIinELoMIgMEQAJAAkACQAJAIANBQGsoAgAgA0HEAGooAgAiBCgCCEEBa0F4cWpBCGoiBiAEKAKgAREEAEH/AXFBBmsODQABBQUFAgUFBQUFBQMFCyAGIAQQwwsiAwRAAn8gAygCPCIERQRAQQQhB0EADAELIAMoAjgiAygCACEGQRBBBBCRDiIJRQ0IIAMgBEEMbGohDCAJIAY2AgAgBUEBNgIUIAUgCTYCECAFQQQ2AgwgA0EEaiEGQQQhB0EBIQggA0EMaiEEA0ACQAJAIAQgBkcEQCAGIQMMAQsgBCAMRg0BIAQiA0EMaiEECyADQQRqIQYgAygCACEDIAUoAgwgCEYEQCAFQQxqIAggBCAGa0ECdkEBakEEQQQQ1gYgBSgCECEJCyAHIAlqIAM2AgAgBSAIQQFqIgg2AhQgB0EEaiEHDAELCyAFKAIQIQcgBSgCDAshAyAKIAg2AgggCiAHNgIEIAogAzYCAAwGCyAKQYCAgIB4NgIADAULIwBBIGsiAyQAIANBCGogBiAEKAJgEQAAIANBEGogAygCCCIEIAMoAgwoAgwRAAAgAykDGCEOIAMpAxAhDyADQSBqJAAgBEEAIA9Ck/Cfod/1laothSAOQs2bxZHuwcTvlH+FhFAbIgMEQAJ/IAMoAjwiBEUEQEEEIQdBAAwBCyADKAI4IgMoAgAhBkEQQQQQkQ4iCUUNByADIARBA3RqIQwgCSAGNgIAIAVBATYCFCAFIAk2AhAgBUEENgIMIANBBGohBkEEIQdBASEIIANBCGohBANAAkACQCAEIAZHBEAgBiEDDAELIAQgDEYNASAEIgNBCGohBAsgA0EEaiEGIAMoAgAhAyAFKAIMIAhGBEAgBUEMaiAIIAQgBmtBAnZBAWpBBEEEENYGIAUoAhAhCQsgByAJaiADNgIAIAUgCEEBaiIINgIUIAdBBGohBwwBCwsgBSgCECEHIAUoAgwLIQMgCiAINgIIIAogBzYCBCAKIAM2AgAMBQsgCkGAgICAeDYCAAwECyAGIAQQyAsiAwRAIAVBDGogAxDwAwJ/IAUoAiAiBEUEQEEEIQdBAAwBCyAFKAIcIgMoAgAhBkEQQQQQkQ4iCUUNBiADIARBDGxqIQwgCSAGNgIAIAVBATYCLCAFIAk2AiggBUEENgIkIANBBGohBkEEIQdBASEIIANBDGohBANAAkACQCAEIAZHBEAgBiEDDAELIAQgDEYNASAEIgNBDGohBAsgA0EEaiEGIAMoAgAhAyAFKAIkIAhGBEAgBUEkaiAIIAQgBmtBAnZBAWpBBEEEENYGIAUoAighCQsgByAJaiADNgIAIAUgCEEBaiIINgIsIAdBBGohBwwBCwsgBSgCKCEHIAUoAiQLIQMgBSgCDCIEBEAgBSgCECAEQQxsQQQQ6A4LIAUoAhgiBARAIAUoAhwgBEEMbEEEEOgOCyAKIAg2AgggCiAHNgIEIAogAzYCAAwECyAKQYCAgIB4NgIADAMLIAYgBBDPCyIDBEAgBUEMaiADEPADAn8gBSgCICIERQRAQQQhB0EADAELIAUoAhwiAygCACEGQRBBBBCRDiIJRQ0FIAMgBEEMbGohDCAJIAY2AgAgBUEBNgIsIAUgCTYCKCAFQQQ2AiQgA0EEaiEGQQQhB0EBIQggA0EMaiEEA0ACQAJAIAQgBkcEQCAGIQMMAQsgBCAMRg0BIAQiA0EMaiEECyADQQRqIQYgAygCACEDIAUoAiQgCEYEQCAFQSRqIAggBCAGa0ECdkEBakEEQQQQ1gYgBSgCKCEJCyAHIAlqIAM2AgAgBSAIQQFqIgg2AiwgB0EEaiEHDAELCyAFKAIoIQcgBSgCJAshAyAFKAIMIgQEQCAFKAIQIARBDGxBBBDoDgsgBSgCGCIEBEAgBSgCHCAEQQxsQQQQ6A4LIAogCDYCCCAKIAc2AgQgCiADNgIADAMLIApBgICAgHg2AgAMAgtB3NDBAEHMAEGo0cEAENELAAsgCkGAgICAeDYCAAsgBUEwaiQADAELQQRBEEHousEAENcNAAsgASABKAIAQQFrNgIAIA0gDSgCAEEBayIBNgIAIAFFBEAgC0EQahDuDAtBACEBQQAhAwJAIAsoAhQiBkGAgICAeEYNACALKAIYIQQgBiALKAIcIgFNBEAgBCEDDAELIAZBAnQhBiABRQRAQQQhAyAEIAZBBBDoDgwBCyAEIAZBBCABQQJ0IgQQ8g0iA0UNBAsgACABNgIEIAAgAzYCACALQSBqJAAPCxCDDwsACxCEDwALQQQgBEGA1MEAENcNAAu3BAIJfwF+IwBBIGsiBiQAAkACQAJAIAEEQCABQQhrIggoAgBBAWohAyAIIAM2AgAgA0UNASABKAIAIgNBf0YNAiABIANBAWo2AgAgBiAINgIQIAYgATYCDCAGIAFBBGoiAzYCCCAGQRRqIQcCQAJAAkAgAyACvSIMpyAMQiCIpxC6DCIDBEAgA0FAaygCACADQcQAaigCACIDKAIIQQFrQXhxakEIaiIEIAMoAqABEQQAQf8BcUEJRw0BIAQgAxDECyIEBEAgBCgCCCIDQQJ0IQUgA0H/////A0sNAyAFQfz///8HSw0DIAQoAgQhCgJAIAVFBEBBBCEJQQAhBAwBC0EEIQsgAyEEIAVBBBCRDiIJRQ0ECyAFBEAgCSAKIAX8CgAACyAHIAM2AgggByAJNgIEIAcgBDYCAAwECyAHQYCAgIB4NgIADAMLQdzQwQBBzABBqNHBABDRCwALIAdBgICAgHg2AgAMAQsgCyAFQfy+wQAQ1w0ACyABIAEoAgBBAWs2AgAgCCAIKAIAQQFrIgE2AgAgAUUEQCAGQRBqEO4MC0EAIQFBACEDAkAgBigCFCIFQYCAgIB4Rg0AIAYoAhghBCAFIAYoAhwiAU0EQCAEIQMMAQsgBUECdCEFIAFFBEBBBCEDIAQgBUEEEOgODAELIAQgBUEEIAFBAnQiBBDyDSIDRQ0ECyAAIAE2AgQgACADNgIAIAZBIGokAA8LEIMPCwALEIQPAAtBBCAEQYDUwQAQ1w0AC5QFAgl/AX4jAEHQAGsiBSQAAkACQAJAIAAEQCAAQQhrIgkoAgBBAWohBiAJIAY2AgAgBkUNASAAKAIAIgZBf0YNAiAAIAZBAWo2AgAgBSAJNgIUIAUgADYCECAFIABBBGoiBDYCDCAFQRhqIQYjAEHwAGsiByQAAkAgBCACvSINpyANQiCIpxC6DCIIBEAgBgJ/AkAgBCABvSINpyANQiCIpxC6DCIEBEAgB0E4aiIKIARB9ABqIAQoAkAgBCgCRCIEKAIIQQFrQXhxakEIaiAEIAhB9ABqIAgoAkAgCCgCRCIEKAIIQQFrQXhxakEIaiAEIAMQ+QEgBygCOCILQQJGDQEgB0EwaiIMIApBNGooAgA2AgAgB0EgaiIIIApBJGr9AAIA/QsDACAHQRBqIgQgCkEUav0AAgD9CwMAIAcgB/0AAjz9CwMAQQAgC0EBcUUNAhogBiAH/QADAP0LAgQgBkE0aiAMKAIANgIAIAZBJGogCP0AAwD9CwIAIAZBFGogBP0AAwD9CwIAQQEMAgtB3NDBAEHMAEGo0cEAENELAAtBAAs2AgAgB0HwAGokAAwBC0Hc0MEAQcwAQcDVwQAQ0QsACyAAIAAoAgBBAWs2AgAgCSAJKAIAQQFrIgA2AgAgAEUEQCAFQRRqEO4MC0EAIQAgBSgCGEEBRgRAQcAAQQQQkQ4iAEUNBCAAQQA2AgggAEKBgICAEDcCACAAIAX9AAIc/QsCDCAAQRxqIAVBLGr9AAIA/QsCACAAQSxqIAVBPGr9AAIA/QsCACAAQTxqIAVBzABqKAIANgIAIABBCGohAAsgBUHQAGokACAADwsQgw8LAAsQhA8AC0EEQcAAQfjKxAAoAgAiAEHMCCAAGxEAAAALwQIBA38jAEGwAmsiAyQAIAEgASgCEBDrAgJAAkACQCABKAIAQQFGBEAgASgCBCIFIAEoAhAiBE8NASABKAIMIAVBpAJsaiIEKAIAQYCAgIB4Rw0CIAEgBCkCBDcCACABIAEoAhhBAWo2AhggASgCFCEBIAQgAkGgAvwKAAAgBCABNgKgAgwDCyACKAIIIQEgAigCBCEFIAIoAgAiBEGAgICAeEYNAiADQRhqIAJBDGpBlAL8CgAAIAMgATYCFCADIAU2AhAgAyAENgIMIANBDGoQ8gJBoIrCAEE+IANBrwJqQZCKwgBB4IrCABDNCgALIAUgBEHUicIAEIULAAsgA0EANgIcIANBATYCECADQfiJwgA2AgwgA0IENwIUIANBDGpBgIrCABC5DQALIAAgATYCBCAAIAU2AgAgA0GwAmokAAv6AgEEfwJAIAFBzf97QRAgACAAQRBNGyIAa08NAEEQIAFBC2pBeHEgAUELSRsiBCAAakEMahBDIgJFDQAgAkEIayEBAkAgAEEBayIDIAJxRQRAIAEhAAwBCyABKAIEIgVBeHEgAEEAIAIgA2pBACAAa3FBCGsiACABa0EQTRsgAGoiACABayICayEDIAVBA3EEQCAAIAMgACgCBEEBcXJBAnI2AgQgACADaiIDIAMoAgRBAXI2AgQgASACIAEoAgRBAXFyQQJyNgIEIAEgAmoiAyADKAIEQQFyNgIEIAEgAhCRBQwBCyABKAIAIQEgACADNgIEIAAgASACajYCAAsCQCAAKAIEIgFBA3FFDQAgAUF4cSICIARBEGpNDQAgACAEIAFBAXFyQQJyNgIEIAAgBGoiASABKAIEQQFyNgIEIAEgAiAEayIEIAEoAgRBAXFyQQJyNgIEIAEgBGoiAiACKAIEQQFyNgIEIAEgBBCRBQsgAEEIaiEDCyADC50CAQV/AkACQAJAAkAgAkEDakF8cSIEIAJGDQAgAyAEIAJrIgQgAyAESRsiBUUNAEEAIQQgAUH/AXEhBkEBIQcDQCACIARqLQAAIAZGDQQgBEEBaiIEIAVHDQALIANBCGsiCCAFSQ0CDAELIANBCGshCEEAIQULIAFB/wFxQYGChAhsIQQDQCACIAVqIgcoAgAgBHMiBkGAgoQIIAZrciAHQQRqKAIAIARzIgZBgIKECCAGa3JxQYCBgoR4cUGAgYKEeEcNASAIIAVBCGoiBU8NAAsLIAMgBUcEQCABQf8BcSEEQQEhBwNAIAQgAiAFai0AAEYEQCAFIQQMAwsgBUEBaiIFIANHDQALC0EAIQcLIAAgBDYCBCAAIAc2AgALrgICA38BfSMAQSBrIgMkACADQQhqIgQgAEEwaiIFIAIQqgggAEEgaiADQRBqKAIANgIAIAAgAykCCDcCGCAAIAAqAkwiBjgCLCAAIAY4AiggACAGOAIkIAQgBSACEJUDIABBEGogBEEQaikCADcCACAAIAP9AAII/QsCAAJAAkAgAUH/AXFFBEAgAC0AYCIBQQFxBEAgAEEANgIkCyABQQJxBEAgAEEANgIoCyABQQRxBEAgAEEANgIsCyABQQhxBEAgAEEANgIIIABCADcCAAsgAUEQcQRAIABBADYCBCAAQgA3AgwLIAFBIHFFDQIMAQsgAEEANgIsIABCADcCJCAA/QwAAAAAAAAAAAAAAAAAAAAA/QsCAAsgAEEANgIIIABCADcCEAsgA0EgaiQAC7ACAgF/CX0jAEHgAWsiAyQAIAIqAgAgASoCEJMiCiABKgIEIgeUIAIqAgQgASoCFJMiCyABKgIAIgiUkyIFIAWSIQUgCyABKgIIIgmUIAIqAgggASoCGJMiBCAHlJMiBiAGkiEGIAMgBCABKgIMIgwgBZQgByAGlCAIIAQgCJQgCiAJlJMiBCAEkiIElJOSkjgCDCADIAsgDCAElCAIIAWUIAkgBpSTkpI4AgggAyAKIAwgBpQgCSAElCAHIAWUk5KSOAIEIAP9DAAAAAAAAAAAAAAAAAAAAAD9CwTQASAD/QwAAAAAAQAAAAIAAAADAAAA/QsEICADQTBqQQBBoAH8CwAgA0EQaiAAKAIEIAAoAgggA0EgaiADQQRqQQEQMiADLQAcIQAgA0HgAWokACAAC6wKAwZ/AX0CfgJAIAAgAUHYAGoQzgYiAg0AIAFB6ABqIAAQkAgiAg0AIAAgAUH0AGoQzgYiAg0AIAFBhAFqIAAQkAgiAg0AIAEtALgCIQQgACgCACIDKAIIIQIgAiADKAIARgRAIAMgAkEBQQFBARDWBiADKAIIIQILIAMgAkEBajYCCCADKAIEIAJqIAQ6AAAgAS0AuQIhBCAAKAIAIgMoAgghAiACIAMoAgBGBEAgAyACQQFBAUEBENYGIAMoAgghAgsgAyACQQFqNgIIIAMoAgQgAmogBDoAACAAIAEtALoCELYMIgINACAAIAEtALsCELYMIgINACABQRBqIQcgACgCACICKAIIIQMDQCAFIAdqIgYqAgAhCCACKAIAIANrQQNNBEAgAiADQQRBAUEBENYGIAIoAgghAwsgAigCBCADaiAIOAAAIAIgA0EEaiIDNgIIIAZBBGoqAgAhCCACKAIAIANrQQNNBEAgAiADQQRBAUEBENYGIAIoAgghAwsgAigCBCADaiAIOAAAIAIgA0EEaiIENgIIIAZBCGoqAgAhCCACKAIAIARrQQNNBEAgAiAEQQRBAUEBENYGIAIoAgghBAsgAiAEQQRqIgM2AgggAigCBCAEaiAIOAAAIAVBDGoiBUHIAEcNAAsgAUGQAWohBkEAIQUgACgCACIDKAIIIQIDQCAFIAZqIgQqAgAhCCADKAIAIAJrQQNNBEAgAyACQQRBAUEBENYGIAMoAgghAgsgAygCBCACaiAIOAAAIAMgAkEEaiICNgIIIARBBGoqAgAhCCADKAIAIAJrQQNNBEAgAyACQQRBAUEBENYGIAMoAgghAgsgAygCBCACaiAIOAAAIAMgAkEEaiICNgIIIARBCGoqAgAhCCADKAIAIAJrQQNNBEAgAyACQQRBAUEBENYGIAMoAgghAgsgAygCBCACaiAIOAAAIAMgAkEEaiICNgIIIARBDGoqAgAhCCADKAIAIAJrQQNNBEAgAyACQQRBAUEBENYGIAMoAgghAgsgAygCBCACaiAIOAAAIAMgAkEEaiICNgIIIARBEGoqAgAhCCADKAIAIAJrQQNNBEAgAyACQQRBAUEBENYGIAMoAgghAgsgAygCBCACaiAIOAAAIAMgAkEEaiICNgIIIARBFGoqAgAhCCADKAIAIAJrQQNNBEAgAyACQQRBAUEBENYGIAMoAgghAgsgAygCBCACaiAIOAAAIAMgAkEEaiICNgIIIARBGGotAAAhBCADKAIAIAJrQQNNBEAgAyACQQRBAUEBENYGIAMoAgghAgsgAygCBCACaiAENgAAIAMgAkEEaiICNgIIIAVBHGoiBUGoAUcNAAsgAS0AvQIhBCAAKAIAIgIoAgghAyADIAIoAgBGBEAgAiADQQFBAUEBENYGIAIoAgghAwsgAiADQQFqNgIIIAIoAgQgA2ogBEEBcToAACAAKAIAIgIoAgghAyACKAIAIANrIQQCQAJAAkACQAJAIAEtALwCQQFrDgIBAgALQQAhBSAEQQRJDQIMAwtBASEFIARBBEkNAQwCC0ECIQUgBEEDSw0BCyACIANBBEEBQQEQ1gYgAigCCCEDCyACKAIEIANqIAU2AAAgAiADQQRqNgIIIAEpAwAhCSABKQMIIQogACgCACIAKAIIIQEgACgCACABa0EPTQRAIAAgAUEQQQFBARDWBiAAKAIIIQELIAAgAUEQajYCCCAAKAIEIAFqIgAgCjcACCAAIAk3AABBACECCyACC6YCAgV/AX4jAEEgayIDJAACQAJAAkACQCAABEAgAEEIayIEKAIAQQFqIQIgBCACNgIAIAJFDQEgACgCACICQX9GDQIgACACQQFqNgIAIAMgBDYCHCADIAA2AhggAyAAQQhqIgI2AhQgA0EIaiACIAG9IgenIAdCIIinEJUKIAMoAggiAkUNAyADKAIMIgYgAigCCE8NBEEGIQUgAigCBCAGQfADbGpByAJqLQAAQTdrQf8BcSICQQhNBEAgAkECdEH818EAaigCACEFCyAAIAAoAgBBAWs2AgAgBCAEKAIAQQFrIgA2AgAgAEUEQCADQRxqEOoMCyADQSBqJAAgBQ8LEIMPCwALEIQPAAtB4M7BAEHJAEGsz8EAENELAAtBvM/BABDyDgALqQICBH8BfiMAQRBrIgUkAAJAAkACQAJAAkAgAARAIABBEGsiBigCAEEBaiEEIAYgBDYCACAERQ0BIAAoAgANAiAAQX82AgAgBSAGNgIMIAUgADYCCCAFIABBEGoiBDYCBCAEIAG9IginIAhCIIinEN4JIgQEQCAELQC4AiIHQQdxQQdGIAJBAEdGDQYgA0UNBSAELQDlAkEBRg0FIAQtANQCRQ0EIAQgBCgCvAJBBHI2ArwCDAQLQezPwQBBzQBBzNDBABDRCwALEIMPCwALEIQPAAsgBEEANgLQAiAEQQA6ANQCCyAEIAdB+AFxQQdBACACG3I6ALgCIAQQ5A0LIABBADYCACAGIAYoAgBBAWsiADYCACAARQRAIAVBDGoQ6wwLIAVBEGokAAupAgIEfwF+IwBBEGsiBSQAAkACQAJAAkACQCAABEAgAEEQayIGKAIAQQFqIQQgBiAENgIAIARFDQEgACgCAA0CIABBfzYCACAFIAY2AgwgBSAANgIIIAUgAEEQaiIENgIEIAQgAb0iCKcgCEIgiKcQ3gkiBARAIAQtALgCIgdBOHFBOEYgAkEAR0YNBiADRQ0FIAQtAOUCQQFGDQUgBC0A1AJFDQQgBCAEKAK8AkEEcjYCvAIMBAtB7M/BAEHNAEHM0MEAENELAAsQgw8LAAsQhA8ACyAEQQA2AtACIARBADoA1AILIAQgB0HHAXFBOEEAIAIbcjoAuAIgBBDkDQsgAEEANgIAIAYgBigCAEEBayIANgIAIABFBEAgBUEMahDrDAsgBUEQaiQAC7kZAxR/BnsCfiMAQSBrIhEkAAJAAkACQCAARQ0AIABBCGsiFSgCAEEBaiEFIBUgBTYCACAFRQ0BIAAoAgANAiAAQX82AgAgESAVNgIQIBEgADYCDCARIABBCGoiBjYCCCABRQ0AIAFBEGsiFigCAEEBaiEFIBYgBTYCACAFRQ0BIAEoAgAiBUF/Rg0CIAEgBUEBajYCACARIBY2AhwgESABNgIYIBEgAUEQaiIFNgIUIAUhFyAEQQBHIRgjAEFAaiINJAACQAJAAkACQAJAAkACQAJAAkAgBigCPEEBRgRAIAYoAkAiDiAGKAJMIgRPDQMgBigCSCAOQQxsaiIEKAIARQ0BIA1BADYCOCANQQE2AiwgDUGEwcEANgIoIA1CBDcCMCANQShqQYzBwQAQuQ0ACyANQQhqIRAjAEEwayIHJAAgBkE8aiIJKAIQIgRBAXQhDiAJKAIEIRMgCSgCACEPIAQhCCAJKAIIIgUgBGsiCyAESQR/AkAgBEHVqtUqSwR/QQAFIARBGGwhCyAHIAUEfyAHIAVBDGw2AiAgByAJKAIMNgIYQQQFQQALNgIcIAdBDGpBBCALIAdBGGoQ4gkgBygCDEEBRw0BIAcoAhQhBSAHKAIQCyAFQZzBwQAQ1w0ACyAHKAIQIQUgCSAONgIIIAkgBTYCDCAEBSALCyEFIAUgDiAEayILQQAgCyAOTRsiC0kEQCAJQQhqIAQgC0EEQQwQ1gYgCSgCECEICyAJKAIMIRICQCAERQ0AAkAgBEEESQRAIAQhCwwBCyASIAhBDGxqIQogBP0R/QwAAAAAAQAAAAIAAAADAAAA/a4BIRogBEH8////AHEiDCAEaiELIAggDGohCCAT/REhGyAP/REhHCAOQQFr/REhHSAMIQUDQCAKQQA2AgAgCkEkakEANgIAIApBGGpBADYCACAKQQxqQQA2AgAgCkEoaiAc/QwBAAAAAQAAAAEAAAABAAAAIBogHf03Ih79UiIZ/VoCAAMgCkEcaiAZ/VoCAAIgCkEQaiAZ/VoCAAEgCkEEaiAZ/VoCAAAgCkEsaiAbIBr9DAEAAAABAAAAAQAAAAEAAAD9rgEgHv1SIhn9WgIAAyAKQSBqIBn9WgIAAiAKQRRqIBn9WgIAASAKQQhqIBn9WgIAACAKQTBqIQogGv0MBAAAAAQAAAAEAAAABAAAAP2uASEaIAVBBGsiBQ0ACyAEIAxGDQELIA4gC2siDEEBayEOIBIgCEEMbGohCkEAIQUDQCAKQQA2AgAgCkEEaiAPQQEgBSAORiIUGzYCACAKQQhqIBMgCyAFQQFqIgVqIBQbNgIAIApBDGohCiAFIAxHDQALIAUgCGohCAsgCSAINgIQAkACQCAEIAhJBEAgEiAEQQxsaiIFKAIADQEgBUEBNgIAIAkgBSkCBDcCACAFQQA2AgggBSAJKAIUIgU2AgQgCSAJKAIYQQFqNgIYIBAgBTYCBCAQIAQ2AgAgB0EwaiQADAILIAQgCEHgwMEAEIULAAsgB0EANgIoIAdBATYCHCAHQYTBwQA2AhggB0IENwIgIAdBGGpBjMHBABC5DQALIA0oAgwhEyANKAIIIQ4MAQsgBEEBNgIAIAYgBCkCBDcCPCAEQQA2AgggBCAGKAJQIhM2AgQgBiAGKAJUQQFqNgJUCyANQSBqQgA3AwAgDf0MAAAAAAAAAAAAAAAAAAAAAP0LBBACQCACvSIfpyIKIAYoAjgiBUkEQCAFIQQMAQsgBSAKQQFqIgRJBEAgBCAFIgtrIgcgBigCMCAFa0sEQCAGQTBqIAUgB0EEQQgQ1gYgBigCOCELCyAGKAI0IgggC0EDdGohBCAHQQJPBEAgCiAFayIFQQN0IgwEQCAEQf8BIAz8CwALIAggBSALakEDdGohBCAHIAtqQQFrIQsLIARCfzcCACALQQFqIQQLIAYgBDYCOAsgBCAKTQ0BIAO9IiCnIQwCfyAfQiCIpyISIAYoAjQiCSAKQQN0aiIFKAIARgRAIAUoAgQMAQsgBUF/NgIEIAUgEjYCAEF/CyELAkAgBCAMSwRAIAQhBQwBCyAMQQFqIgUgBEsEQCAEIQcgBSAEayIIIAYoAjAgBGtLBEAgBkEwaiAEIAhBBEEIENYGIAYoAjQhCSAGKAI4IQcLIAkgB0EDdGohBSAIQQJPBEAgDCAEayIEQQN0IhAEQCAFQf8BIBD8CwALIAkgBCAHakEDdGohBSAHIAhqQQFrIQcLIAVCfzcCACAHQQFqIQULIAYgBTYCOAsgBSAMTQ0CAn8gIEIgiKciECAJIAxBA3RqIgQoAgBGBEAgBCgCBAwBCyAEQX82AgQgBCAQNgIAQX8LIQUgC0F/RgRAIAYoAiAiCyAGKAIYRgRAIAZBGGpBgMLBABC1CAsgBiALQQFqNgIgIAYoAhwgC0EEdGoiBEJ/NwIIIAQgEjYCBCAEIAo2AgAgCiAGKAI4IghPBEAgBigCMCAIIgdrIAogB2siFEEBaiIPSQRAIAZBMGogByAPQQRBCBDWBiAGKAI4IQcLIAYoAjQgB0EDdGohBCAPQQJPBEAgFEEHcSEJIAggCmtBeE0EQCAUQXhxIQgDQCAEQv////8PNwIAIARBOGpC/////w83AgAgBEEwakL/////DzcCACAEQShqQv////8PNwIAIARBIGpC/////w83AgAgBEEYakL/////DzcCACAEQRBqQv////8PNwIAIARBCGpC/////w83AgAgBEFAayEEIAhBCGsiCA0ACwsgCQRAA0AgBEL/////DzcCACAEQQhqIQQgCUEBayIJDQALCyAHIA9qQQFrIQcLIARC/////w83AgAgBiAHQQFqIgg2AjgLIAggCk0NBCAGKAI0IApBA3RqIgQgCzYCBCAEIBI2AgALIAVBf0YEQCAGKAIgIgUgBigCGEYEQCAGQRhqQYDCwQAQtQgLIAYgBUEBajYCICAGKAIcIAVBBHRqIgRCfzcCCCAEIBA2AgQgBCAMNgIAAkAgBigCOCIIIAxLBEAgCCEEDAELIAggDEEBaiIESQRAIAQgCCIHayEPIA8gBigCMCAHa0sEQCAGQTBqIAcgD0EEQQgQ1gYgBigCOCEHCyAGKAI0IAdBA3RqIQQgD0ECTwRAIAwgCGsiFEEHcSEJIAggDGtBeE0EQCAUQXhxIQgDQCAEQv////8PNwIAIARBOGpC/////w83AgAgBEEwakL/////DzcCACAEQShqQv////8PNwIAIARBIGpC/////w83AgAgBEEYakL/////DzcCACAEQRBqQv////8PNwIAIARBCGpC/////w83AgAgBEFAayEEIAhBCGsiCA0ACwsgCQRAA0AgBEL/////DzcCACAEQQhqIQQgCUEBayIJDQALCyAHIA9qQQFrIQcLIARC/////w83AgAgB0EBaiEECyAGIAQ2AjgLIAQgDE0NBSAGKAI0IAxBA3RqIgQgBTYCBCAEIBA2AgALIAYoAiAhByAGKAIcIQQgBigCLCEJAkACQCAFIAtPBEAgBSAHTw0BIAUgC0YNAgwICyAHIAtLDQcLIA1BADYCOCANQQE2AiwgDUHowcEANgIoIA1CBDcCMCANQShqQfDBwQAQuQ0ACyAEIAtBBHRqIgQoAgwhByAEIAk2AgwgBCgCCCEIIAQgCTYCCAwGCyAOIARB4MDBABCFCwALIAogBEGQwsEAEIULAAsgDCAFQZDCwQAQhQsACyAKIAhBoMLBABCFCwALIAwgBEGgwsEAEIULAAsgBCALQQR0aiIHKAIIIQggByAJNgIIIAQgBUEEdGoiBCgCDCEHIAQgCTYCDAsgBkEkaiIEKAIAIAlGBEAgBEGswcEAEJMICyAGKAIoIAlBgANsaiIEIBdBwAL8CgAAIAQgEDYCzAIgBCAMNgLIAiAEIBI2AsQCIAQgCjYCwAIgBCALrSAFrUIghoQ3A/gCIAQgBzYC9AIgBCAINgLwAiAEIBM2AuwCIAQgDjYC6AIgBiAJQQFqNgIsIAQgDSkDEDcD0AIgBEHYAmogDf0AAxj9CwMAAkACQCAOIAYoAkxPDQAgBigCSCAOQQxsaiIEKAIAQQFHDQAgBCgCBCATRw0AIAQgCTYCCCAYBEAgBiAKIBIQ2wMgBiAMIBAQ2wMLIA1BQGskACAOrSATrUIghoS/IQIMAQtBkYDAAEETQcDCwQAQ0QsACyABIAEoAgBBAWs2AgAgFiAWKAIAQQFrIgE2AgAgAUUEQCARQRxqEKcNCyAAQQA2AgAgFSAVKAIAQQFrIgA2AgAgAEUEQCARQRBqEO8MCyARQSBqJAAgAg8LEIMPCwALEIQPAAvWJwIkfwF+IwBBIGsiGCQAAkACQAJAIABFDQAgAEEIayIhKAIAQQFqIQUgISAFNgIAIAVFDQEgACgCAA0CIABBfzYCACAYICE2AhAgGCAANgIMIBggAEEIaiIHNgIIIAFFDQAgAUEQayIiKAIAQQFqIQUgIiAFNgIAIAVFDQEgASgCACIFQX9GDQIgASAFQQFqNgIAIBggIjYCHCAYIAE2AhggGCABQRBqIgU2AhQgBSEUIARBAEchJyMAQaAFayIJJAAgAr0iKUIgiKchHQJAAkACQAJAAkACQAJAAkACQAJAAkACQAJ/AkAgBygCOCIEICmnIhVNDQAgBygCNCAVQRRsaiIFKAIAIB1HDQAgB0EYaiEOIAdBPGohBiAFKAIMIQwgBSgCCCERIAUoAgQhCCAFKAIQDAELIAlBgANqIgUgFSAdEMUBIAdBPGohBgJAIAcoAjxBAUYEQCAHKAJAIgggBygCTCIETw0DIAcoAkggCEGkAmxqIgQoAgBBgICAgHhHDQ0gByAEKQIENwI8IAcgBygCVEEBajYCVCAHKAJQIREgBBDvAiAEIAVBoAL8CgAAIAQgETYCoAIMAQsgCSgCiAMhESAJKAKEAyEIIAkoAoADIgRBgICAgHhGDQAgCSARNgIYIAkgCDYCFCAJIAQ2AhAgCUEcaiAJQYwDakGUAvwKAAAgCUEIaiAGIAlBEGoQrQYgCSgCDCERIAkoAgghCAsgB0EYaiEOIAcoAiAiDCAHKAIYRgRAIA5BgMLBABC1CAsgBygCHCAMQQR0aiIEQn83AgggBCAdNgIEIAQgFTYCACAHIAxBAWo2AiAgBygCOCEEQQALIRAgA70iKUIgiKchHgJAAkACQAJAICmnIhYgBEkEQCAHKAI0IBZBFGxqIgQoAgAgHkYNAQsgCUGAA2oiBSAWIB4QxQECQCAHKAI8QQFGBEAgBygCQCIKIAcoAkwiBE8NByAHKAJIIApBpAJsaiIEKAIAQYCAgIB4Rw0QIAcgBCkCBDcCPCAHIAcoAlRBAWo2AlQgBygCUCESIAQQ7wIgBCAFQaAC/AoAACAEIBI2AqACDAELIAkoAogDIRIgCSgChAMhCiAJKAKAAyIEQYCAgIB4Rg0AIAkgEjYCGCAJIAo2AhQgCSAENgIQIAlBHGogCUGMA2pBlAL8CgAAIAkgBiAJQRBqEK0GIAkoAgQhEiAJKAIAIQoLIAcoAiAiDyAHKAIYRgRAIA5BgMLBABC1CAsgByAPQQFqNgIgIAcoAhwgD0EEdGoiBEJ/NwIIIAQgHjYCBCAEIBY2AgBBACEOIAggCkYNAQwDCyAEKAIQIQ4gBCgCDCEPIAQoAgghEiAEKAIEIgogCEcNAQtE////////738hAiARIBJGDQYgCCEKIA5FDQEMBgtE////////738hAiAODQULIAcoAiAhBiAHKAIcIQUgBygCLCEEAkACQCAMIA9NBEAgBiAPTQ0BIAwgD0YNAgwFCyAGIAxLDQQLIAlBADYCICAJQQE2AhQgCUHowcEANgIQIAlCBDcCGCAJQRBqQfDBwQAQuQ0ACyAFIAxBBHRqIgUoAgwhCyAFIAQ2AgwgBSgCCCEGIAUgBDYCCAwDCyAIIARB4MDBABCFCwALIAogBEHgwMEAEIULAAsgBSAMQQR0aiILKAIIIQYgCyAENgIIIAUgD0EEdGoiBSgCDCELIAUgBDYCDAsgB0EkaiIFKAIAIARGBEAgBUGswcEAELUICyAHKAIoIARBBHRqIgUgCzYCBCAFIAY2AgAgBSAMrSAPrUIghoQ3AgggByAEQQFqNgIsAkAgBygCOCIFIBVLBEAgBSEEDAELIAUgFUEBaiIESQRAIAUhCyAEIAVrIhcgBygCMCAFa0sEQCAHQTBqIAUgF0EEQRQQ1gYgBygCOCELCyAHKAI0IAtBFGxqIQQgF0ECTwRAIBUgBWsiBkEHcSEOIAUgFWtBeE0EQCAGQXhxIQYDQCAEQn83AgAgBEEIakJ/NwIAIARBFGpCfzcCACAEQRBqQQA2AgAgBEEcakJ/NwIAIARBKGpCfzcCACAEQSRqQQA2AgAgBEEwakJ/NwIAIARBPGpCfzcCACAEQThqQQA2AgAgBEHEAGpCfzcCACAEQdAAakJ/NwIAIARBzABqQQA2AgAgBEHYAGpCfzcCACAEQeAAakEANgIAIARB7ABqQn83AgAgBEHkAGpCfzcCACAEQfgAakJ/NwIAIARB9ABqQQA2AgAgBEGAAWpCfzcCACAEQYwBakJ/NwIAIARBiAFqQQA2AgAgBEGUAWpCfzcCACAEQZwBakEANgIAIARBoAFqIQQgBkEIayIGDQALCyAOBEADQCAEQn83AgAgBEEIakJ/NwIAIARBEGpBADYCACAEQRRqIQQgDkEBayIODQALCyALIBdqQQFrIQsLIARCfzcCACAEQQA2AhAgBEEIakJ/NwIAIAtBAWohBAsgByAENgI4CyAEIBVNDQEgBygCNCAVQRRsaiIEIBA2AhAgBCAMNgIMIAQgETYCCCAEIAg2AgQgBCAdNgIAAkAgBygCOCIFIBZLBEAgBSEEDAELIAUgFkEBaiIESQRAIAQgBSIGayILIAcoAjAgBWtLBEAgB0EwaiAFIAtBBEEUENYGIAcoAjghBgsgBygCNCAGQRRsaiEEIAtBAk8EQCAWIAVrIg5BB3EhDCAFIBZrQXhNBEAgDkF4cSEOA0AgBEJ/NwIAIARBCGpCfzcCACAEQRRqQn83AgAgBEEQakEANgIAIARBHGpCfzcCACAEQShqQn83AgAgBEEkakEANgIAIARBMGpCfzcCACAEQTxqQn83AgAgBEE4akEANgIAIARBxABqQn83AgAgBEHQAGpCfzcCACAEQcwAakEANgIAIARB2ABqQn83AgAgBEHgAGpBADYCACAEQewAakJ/NwIAIARB5ABqQn83AgAgBEH4AGpCfzcCACAEQfQAakEANgIAIARBgAFqQn83AgAgBEGMAWpCfzcCACAEQYgBakEANgIAIARBlAFqQn83AgAgBEGcAWpBADYCACAEQaABaiEEIA5BCGsiDg0ACwsgDARAA0AgBEJ/NwIAIARBCGpCfzcCACAEQRBqQQA2AgAgBEEUaiEEIAxBAWsiDA0ACwsgBiALakEBayEGCyAEQn83AgAgBEEANgIQIARBCGpCfzcCACAGQQFqIQQLIAcgBDYCOAsgBCAWTQ0CIAcoAjQgFkEUbGoiBEEANgIQIAQgDzYCDCAEIBI2AgggBCAKNgIEIAQgHjYCACAKIAcoAkxPDQQgBygCSCAKQaQCbGoiBCgCACIFQYCAgIB4Rg0EIBIgBCgCoAJHDQQgBykCPCEpIAlBEGoiBiAEQQRqQaAC/AoAACAEICk3AgQgBEGAgICAeDYCACAHIAo2AkAgB0EBNgI8IAcgBygCUEEBajYCUCAHIAcoAlRBAWs2AlQgCUGEA2ogBkGcAvwKAAAgCSAFNgKAAyAIIAcoAkxPDQMgBygCSCAIQaQCbGoiCigCAEGAgICAeEYNAyAKKAKgAiARRw0DIAkoAogDIgQEQCAEQfADbCEPIAkoAoQDQfQCaiEMA0AgDEEEaygCACIEIAcoAjhPDQcgDCgCACAHKAI0IARBFGxqIgQoAgBHDQcgBCARNgIIIAQgCDYCBCAEIAQoAhAgCigCCGo2AhAgDEHwA2ohDCAPQfADayIPDQALCyAJQRBqIgX9DAAAAAAAAAAAAAAAAAAAAAD9CwTQAiAFQeACakIANwMAIAVBEGogFEHAAvwKAAAgBf0MAAAAAAAAAAAAAAAAAACAP/0LBAAgBUEAOgDoAiMAQSBrIgwkAAJAAkAgCUGAA2oiDigCCCIfBEBBBiAFLQDIAmkiEWsiJiAKKAIYIiVBBiAOKAIEIgstAMgCaSIUayIXa2ohIyAKKAIIIQYgCigClAIhDyAOKAKUAiESAkAgH0HwA2wiJEHwA0YNACAGQQFqIQggJEHgB2siE0HwA25BAXEEfyALQfADagUgCyALKAKEByAjajYChAcgCyAIIAsoAoAHajYCgAcgCyALKAKIByAGajYCiAcgC0HgB2oLIQQgE0HwA0kNACALICRqIRMDQCAEQZQDaiINIA0oAgAgI2o2AgAgBEGQA2oiDSAIIA0oAgBqNgIAIARBmANqIg0gDSgCACAGajYCACAEQYQHaiINIA0oAgAgI2o2AgAgBEGAB2oiDSAIIA0oAgBqNgIAIARBiAdqIg0gDSgCACAGajYCACATIARB4AdqIgRHDQALCyALIAVB8AL8CgAAIAsgEDYCmAMgCyAGNgKQAyALICU2ApQDIAogEiAXayIQIAstAMgCaWtBBmogHxDqBQJAIBIgF0YEQCAKKAIoIRsgCigCICETDAELIA8gJmoiICAQaiIZIAooAhhLDQIgEiAOKAIYSw0CIAooAhAhEyAOKAIQIQ1BACEFAkACQCAQQRBJDQAgDyAUakECdCATaiARQQJ0IA1qa0EQSQ0AIBMgIEECdGohBCANIBdBAnRqIQYgEEF8cSIFIQgDQCAEIAb9AAIA/QsCACAEQRBqIQQgBkEQaiEGIAhBBGsiCA0ACyAFIBBGDQELIBIgFGoiGyAFa0EHayEaIBtBA3EiHEECRwRAIAVBAnQiBiAUQQJ0ayANakEYaiEEIAYgD0ECdGogEUECdGsgE2pBGGohBkEAIQgDQCAGIAQqAgA4AgAgBEEEaiEEIAZBBGohBiAcIAhBAWoiCHNBAkcNAAsgBSAIaiEFCyAaQQNJDQAgEyAPQQJ0IBFBAnRraiEIIAVBAnQhGiANIBRBAnRrIQQgGyAFa0EGayEFA0AgCCAaaiIGQRhqIAQgGmoiE0EYaioCADgCACAGQRxqIBNBHGoqAgA4AgAgBkEgaiATQSBqKgIAOAIAIAZBJGogE0EkaioCADgCACAEQRBqIQQgCEEQaiEIIAVBBGsiBQ0ACwsgGSAKKAIoIhtLDQIgEiAOKAIoSw0CIAooAiAhEyAOKAIgIQ1BACEFAkACQCAQQRBJDQAgDyAUakECdCATaiARQQJ0IA1qa0EQSQ0AIBMgIEECdGohBCANIBdBAnRqIQYgEEF8cSIFIQgDQCAEIAb9AAIA/QsCACAEQRBqIQQgBkEQaiEGIAhBBGsiCA0ACyAFIBBGDQELIBIgFGoiGiAFa0EHayEcIBpBA3EiKEECRwRAIAVBAnQiBiAUQQJ0ayANakEYaiEEIAYgD0ECdGogEUECdGsgE2pBGGohBkEAIQgDQCAGIAQqAgA4AgAgBEEEaiEEIAZBBGohBiAoIAhBAWoiCHNBAkcNAAsgBSAIaiEFCyAcQQNJDQAgEyAPQQJ0IBFBAnRraiEIIAVBAnQhHCANIBRBAnRrIQQgGiAFa0EGayEFA0AgCCAcaiIGQRhqIAQgHGoiDUEYaioCADgCACAGQRxqIA1BHGoqAgA4AgAgBkEgaiANQSBqKgIAOAIAIAZBJGogDUEkaioCADgCACAEQRBqIQQgCEEQaiEIIAVBBGsiBQ0ACwsgGSAKKAI4Sw0CIBIgDigCOEsNAiAKKAIwIQ0gDigCMCEZQQAhBQJAIBBBEEkNACAPIBRqQQJ0IA1qIBFBAnQgGWprQRBJDQAgDSAgQQJ0aiEEIBkgF0ECdGohBiAQQXxxIgUhCANAIAQgBv0AAgD9CwIAIARBEGohBCAGQRBqIQYgCEEEayIIDQALIAUgEEYNAQsgEiAUaiIQIAVrQQdrIRIgEEEDcSIgQQJHBEAgBUECdCIGIBRBAnRrIBlqQRhqIQQgBiAPQQJ0aiARQQJ0ayANakEYaiEGQQAhCANAIAYgBCoCADgCACAEQQRqIQQgBkEEaiEGICAgCEEBaiIIc0ECRw0ACyAFIAhqIQULIBJBA0kNACANIA9BAnQgEUECdGtqIQggBUECdCEPIBkgFEECdGshBCAQIAVrQQZrIQUDQCAIIA9qIgZBGGogBCAPaiIQQRhqKgIAOAIAIAZBHGogEEEcaioCADgCACAGQSBqIBBBIGoqAgA4AgAgBkEkaiAQQSRqKgIAOAIAIARBEGohBCAIQRBqIQggBUEEayIFDQALCyAlICZqIBtLDQEgDCAbNgIQIAwgFzYCDCAMIBMgI0ECdGo2AgggCyAMQQhqEJIGIAooAgAgCigCCCIEayAfSQRAIAogBCAfQRBB8AMQ1wYgCigCCCEECyAkBEAgCigCBCAEQfADbGogCyAk/AoAAAsgDkEANgIIIAogBCAfaiIENgIIIAogCigCGCIFNgKUAiAKQdABaiAEIAUQ/QIgDhDyAiAMQSBqJAAMAgtBAEEAQfySwgAQhQsACyAMQQA2AhggDEEBNgIMIAxBsP3BADYCCCAMQgQ3AhAgDEEIakG4/cEAELkNAAsgJwRAIAcgFSAdENsDIAcgFiAeENsDCyADIQILIAlBoAVqJAAMBgsgFSAEQaDCwQAQhQsACyAWIARBoMLBABCFCwALQZGAwABBE0GAw8EAENELAAtB8MLBABDyDgALQZDDwQAQ8g4ACyAJQQA2AiAgCUEBNgIUIAlBhMHBADYCECAJQgQ3AhggCUEQakGMwcEAELkNAAsgASABKAIAQQFrNgIAICIgIigCAEEBayIBNgIAIAFFBEAgGEEcahCnDQsgAEEANgIAICEgISgCAEEBayIANgIAIABFBEAgGEEQahDqDAsgGEEgaiQAIAIPCxCDDwsACxCEDwALuQICBH8BfiMAQSBrIgMkAAJAAkACQAJAIAAEQCAAQQhrIgQoAgBBAWohAiAEIAI2AgAgAkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgAgAyAENgIMIAMgADYCCCADIABBBGoiAjYCBCACIAG9IganIAZCIIinELoMIgJFDQMgAigCECIFQQFGBEAgAyAC/QACHP0LAxALIAAgACgCAEEBazYCACAEIAQoAgBBAWsiADYCACAARQRAIANBDGoQ7gwLQQAhACAFBEBBHEEEEJEOIgBFDQUgAEEANgIIIABCgYCAgBA3AgAgACAD/QADEP0LAgwgAEEIaiEACyADQSBqJAAgAA8LEIMPCwALEIQPAAtB3NDBAEHMAEGo0cEAENELAAtBBEEcQfjKxAAoAgAiAEHMCCAAGxEAAAALjAIBCX0gAioCACIFIAWUIAIqAgQiCSAJlJIgAioCCCIKIAqUkiABKgIAIgYgBpSTIQdDAAAAACEGAkAgAioCDCILIAuUIAIqAhAiDCAMlJIgAioCFCINIA2UkiIIQwAAAABcBEAgBSALlCAJIAyUkiAKIA2UkiEFQQAhAiAHQwAAAABeIAVDAAAAAF5xDQEgBSAFlCAHIAiUkyIHQwAAAABdDQFDAAAAACAFjCAHkSIHkyAIlSIGIAZDAAAAAF8iARshBkEBIQIgBA0BIAFFDQEgByAFkyAIlSEGDAELQQEhAiAHQwAAAABeRQ0AQQAhAgsgACAGOAIEIAAgAkEAIAMgBmAbQQAgAhs2AgALogICCH0BfyMAQSBrIgskACABKgIIIgNDAAAAAGBFBEAgC0EANgIYIAtBATYCDCALQejgwgA2AgggC0IENwIQIAtBCGpBoITEABC5DQALIAAgAyABKgIAIgMgA5QgASoCBCIDIAOUkpGSOAIMIAAgAioCGCACKgIMIgMgAioCACIHQwAAAACUIgQgAioCBCIIQwAAAACUIgWTIgYgBpIiBpQgByACKgIIIglDAAAAAJQiCiAEkyIEIASSIgSUIAggBSAKkyIFIAWSIgWUk5JDAAAAAJKSOAIIIAAgAioCFCADIASUIAkgBZQgByAGlJOSQwAAAACSkjgCBCAAIAIqAhAgAyAFlCAIIAaUIAkgBJSTkkMAAAAAkpI4AgAgC0EgaiQAC5ACAQF/IwBBEGsiAiQAIAAoAgAhAAJ/IAEtAAtBGHFFBEAgASgCACAAIAEoAgQoAhARAwAMAQsgAkEANgIMIAEgAkEMagJ/AkAgAEGAAU8EQCAAQYAQSQ0BIABBgIAETwRAIAIgAEE/cUGAAXI6AA8gAiAAQRJ2QfABcjoADCACIABBBnZBP3FBgAFyOgAOIAIgAEEMdkE/cUGAAXI6AA1BBAwDCyACIABBP3FBgAFyOgAOIAIgAEEMdkHgAXI6AAwgAiAAQQZ2QT9xQYABcjoADUEDDAILIAIgADoADEEBDAELIAIgAEE/cUGAAXI6AA0gAiAAQQZ2QcABcjoADEECCxD7AgshACACQRBqJAAgAAuvAgIDfwF+IwBBIGsiAiQAAkACQAJAAkAgAARAIABBEGsiBCgCAEEBaiEDIAQgAzYCACADRQ0BIAAoAgAiA0F/Rg0CIAAgA0EBajYCACACIAQ2AhAgAiAANgIMIAIgAEEQaiIDNgIIIAMgAb0iBacgBUIgiKcQuQwiA0UNAyACQRRqIANBiAJqEJEMIAAgACgCAEEBazYCACAEIAQoAgBBAWsiADYCACAARQRAIAJBEGoQ6wwLQRhBBBCRDiIARQ0EIABBADYCCCAAQoGAgIAQNwIAIAAgAikCFDcCDCAAQRRqIAJBHGooAgA2AgAgAkEgaiQAIABBCGoPCxCDDwsACxCEDwALQezPwQBBzQBBvNDBABDRCwALQQRBGEH4ysQAKAIAIgBBzAggABsRAAAAC8UEAwd/D30BfiMAQTBrIgMkAAJAAkACQAJAIAAEQCAAQRBrIgUoAgBBAWohAiAFIAI2AgAgAkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgAgAyAFNgIUIAMgADYCECADIABBEGoiAjYCDCACIAG9IhinIBhCIIinELkMIgJFDQMgA0EYaiIEAn0gAkHYAWoiAioCBCIKIAIqAhAiDJQgAioCCCILQwAAgD8gAioCDCACLQBgIgZBEHEiBxsiDpSTIQ9DAAAAACALIA+UQwAAgD8gAioCACAGQQhxIggbIg0gDkMAAIA/IAIqAhQgBkEgcSICGyIQlCAMIAyUkyIRlCAKIAogEJQgCyAMlJMiEpSTkiIJQwAAAABbDQAaIA8gCZUhEyARIAmVIRQgEowgCZUhFSAOIA2UIAogCpSTIAmVIRYgECANlCALIAuUkyAJlSEXIAogC5QgDCANlJMgCZULOAIQIAQgEzgCCCAEIBU4AgQgBEMAAAAAIBYgAhs4AhQgBEMAAAAAIBcgBxs4AgwgBEMAAAAAIBQgCBs4AgAgACAAKAIAQQFrNgIAIAUgBSgCAEEBayIANgIAIABFBEAgA0EUahDrDAtBJEEEEJEOIgBFDQQgAEEANgIIIABCgYCAgBA3AgAgACADKQIYNwIMIABBFGogA0Egav0AAgD9CwIAIANBMGokACAAQQhqDwsQgw8LAAsQhA8AC0Hsz8EAQc0AQbzQwQAQ0QsAC0EEQSRB+MrEACgCACIAQcwIIAAbEQAAAAukAgIEfwF+IwBBEGsiAyQAAkACQAJAIAAEQCAAQQhrIgQoAgBBAWohAiAEIAI2AgAgAkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgAgAyAENgIMIAMgADYCCCADIABBBGoiAjYCBCACIAG9IganIAZCIIinELoMIgJFDQNEAAAQAAAA8EEhAQJAIAJBQGsoAgAgAkHEAGooAgAiAigCCEEBa0F4cWpBCGoiBSACKAKgAREEAEH/AXFBCUcNACAFIAIQxAsiAkUNACACKAIMQQFruCEBCyAAIAAoAgBBAWs2AgAgBCAEKAIAQQFrIgA2AgAgAEUEQCADQQxqEO4MCyADQRBqJAAgAQ8LEIMPCwALEIQPAAtB3NDBAEHMAEGo0cEAENELAAukAgIEfwF+IwBBEGsiAyQAAkACQAJAIAAEQCAAQQhrIgQoAgBBAWohAiAEIAI2AgAgAkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgAgAyAENgIMIAMgADYCCCADIABBBGoiAjYCBCACIAG9IganIAZCIIinELoMIgJFDQNEAAAQAAAA8EEhAQJAIAJBQGsoAgAgAkHEAGooAgAiAigCCEEBa0F4cWpBCGoiBSACKAKgAREEAEH/AXFBCUcNACAFIAIQxAsiAkUNACACKAIQQQFruCEBCyAAIAAoAgBBAWs2AgAgBCAEKAIAQQFrIgA2AgAgAEUEQCADQQxqEO4MCyADQRBqJAAgAQ8LEIMPCwALEIQPAAtB3NDBAEHMAEGo0cEAENELAAu6AgIBfwl9IwBB8ABrIgYkACAFKgIAIQogBSoCBCELIAUqAgghDCADKgJ8IQcgAyoCgAEhCCADKgKEASEJIAZB0ABqIANByABqKAIANgIAIAZByABqIANBQGspAgA3AwAgBkHsAGogBEEIaigCADYCACAG/QwAAAAAAAAAAAAAAAAAAIA//QsCVCAGIAP9AAIw/QsDOCAGIAQpAgA3AmQgBkEgaiIEIAZBOGoiBSADQZgCahD3ASADKgJwIQ0gAyoCdCEOIAMqAnghDyAGIAkgCZM4AkwgBiAIIAiTOAJIIAYgByAHkzgCRCAGIAwgD5M4AkAgBiALIA6TOAI8IAYgCiANkzgCOCAGQQhqIgMgASACIAQgBRD3BSAAQQhqIANBCGooAgA2AgAgACAGKQIINwIAIAZB8ABqJAALhwIDB38CfQF+IwBBIGsiBEEEaiIFQQhqIghBADYCACAEQgA3AgRBAiACKgIAiyIKIAIqAgSLIgteIgMgAioCCIsgCyAKIAMbXSIJGyIGQQJ0IgcgAWoqAgAhCiAFIAdqIAo4AgAgBUEAQQJBASADGyAJG0ECdCIDaiABIANqKgIAIAIgA2oqAgCYOAIAIAUgBkEBa0ECIAYbQQJ0IgNqIAEgA2oqAgAgAiADaioCAJg4AgAgBEEQaiIBQQhqIgIgCCgCACIFNgIAIAQgBCkCBCIMNwMQIAEgB2ogCow4AgAgAEEIaiAFNgIAIAAgDDcCACAAQRRqIAIoAgA2AgAgACAEKQMQNwIMC7YCAgN/BH0jAEHgAWsiAyQAIAP9DAAAAAAAAAAAAAAAAAAAAAD9CwTQASAD/QwAAAAAAQAAAAIAAAADAAAA/QsEICADQTBqQQBBoAH8CwAgA0EQaiABKAIEIAEoAgggA0EgaiIFIAJBABAyAkAgAioCCCADKgIYkyIGjCAGIAMtABwiBBsiBiAGlCACKgIAIAMqAhCTIgeMIAcgBBsiByAHlCACKgIEIAMqAhSTIgiMIAggBBsiCCAIlJKSIglDAACAKF4EQCADIAYgCZEiBpU4AiggAyAIIAaVOAIkIAMgByAGlTgCICADQQhqIAEgBRCjAiADKAIIIQIgAygCDCEBIAAgA/0AAhD9CwIAIAAgATYCFAwBCyAAIAP9AAIQ/QsCAEEDIQILIAAgAjYCECADQeABaiQAC5wCAwR/AX4BfSMAQSBrIgQkAAJAAkACQAJAIAAEQCAAQQhrIgUoAgBBAWohAyAFIAM2AgAgA0UNASAAKAIAIgNBf0YNAiAAIANBAWo2AgAgBCAFNgIcIAQgADYCGCAEIABBCGoiAzYCFCACQQVNBEAgBEEIaiADIAG9IgenIAdCIIinEJUKIAQoAggiA0UNBCAEKAIMIgYgAygCCE8NBSADKAIEIAZB8ANsaiACQQxsaioCICEIIAAgACgCAEEBazYCACAFIAUoAgBBAWsiADYCACAARQRAIARBHGoQ6gwLIARBIGokACAIDwtB4NTBAEEZEIIPAAsQgw8LAAsQhA8AC0HgzsEAQckAQazPwQAQ0QsAC0G8z8EAEPIOAAucAgMEfwF+AX0jAEEgayIEJAACQAJAAkACQCAABEAgAEEIayIFKAIAQQFqIQMgBSADNgIAIANFDQEgACgCACIDQX9GDQIgACADQQFqNgIAIAQgBTYCHCAEIAA2AhggBCAAQQhqIgM2AhQgAkEFTQRAIARBCGogAyABvSIHpyAHQiCIpxCVCiAEKAIIIgNFDQQgBCgCDCIGIAMoAghPDQUgAygCBCAGQfADbGogAkEMbGoqAiQhCCAAIAAoAgBBAWs2AgAgBSAFKAIAQQFrIgA2AgAgAEUEQCAEQRxqEOoMCyAEQSBqJAAgCA8LQeDUwQBBGRCCDwALEIMPCwALEIQPAAtB4M7BAEHJAEGsz8EAENELAAtBvM/BABDyDgAL4QICBH8BfiMAQSBrIgMkAAJAAkACQAJAIAAEQCAAQRBrIgQoAgBBAWohAiAEIAI2AgAgAkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgAgAyAENgIQIAMgADYCDCADIABBEGoiAjYCCCACIAG9IganIAZCIIinELkMIgVFDQMgA0EUaiECAkAgBS0A5QJFBEAgAiAFKQK8ATcCACACQQhqIAVBxAFqKAIANgIADAELIAJBADYCCCACQgA3AgALIAAgACgCAEEBazYCACAEIAQoAgBBAWsiADYCACAARQRAIANBEGoQ6wwLQRhBBBCRDiIARQ0EIABBADYCCCAAQoGAgIAQNwIAIAAgAykCFDcCDCAAQRRqIANBHGooAgA2AgAgA0EgaiQAIABBCGoPCxCDDwsACxCEDwALQezPwQBBzQBBvNDBABDRCwALQQRBGEH4ysQAKAIAIgBBzAggABsRAAAAC+ECAgR/AX4jAEEgayIDJAACQAJAAkACQCAABEAgAEEQayIEKAIAQQFqIQIgBCACNgIAIAJFDQEgACgCACICQX9GDQIgACACQQFqNgIAIAMgBDYCECADIAA2AgwgAyAAQRBqIgI2AgggAiABvSIGpyAGQiCIpxC5DCIFRQ0DIANBFGohAgJAIAUtAOUCRQRAIAIgBSkCyAE3AgAgAkEIaiAFQdABaigCADYCAAwBCyACQQA2AgggAkIANwIACyAAIAAoAgBBAWs2AgAgBCAEKAIAQQFrIgA2AgAgAEUEQCADQRBqEOsMC0EYQQQQkQ4iAEUNBCAAQQA2AgggAEKBgICAEDcCACAAIAMpAhQ3AgwgAEEUaiADQRxqKAIANgIAIANBIGokACAAQQhqDwsQgw8LAAsQhA8AC0Hsz8EAQc0AQbzQwQAQ0QsAC0EEQRhB+MrEACgCACIAQcwIIAAbEQAAAAvIAgIBfwJ9IwBBIGsiAyQAAkACQAJAAkAgASgCCEUNACABKAIEIgEoAjxB/////wNxIAEoAhxB/////wNxag4CAAECCyADQv////v///+/fzcDECAD/Qz//39///9/f///f3///3///QsEAAwCCyADQRRqIAFBGGooAgA2AgAgAyABKQMANwMAIAMgASkCEDcCDCADIAFBCGooAgA2AggMAQsgAyABKgIYIgQgASoCOCIFIAQgBWAbOAIUIAMgASoCFCIEIAEqAjQiBSAEIAVgGzgCECADIAEqAhAiBCABKgIwIgUgBCAFYBs4AgwgAyABKgIIIgQgASoCKCIFIAQgBV8bOAIIIAMgASoCBCIEIAEqAiQiBSAEIAVfGzgCBCADIAEqAgAiBCABKgIgIgUgBCAFXxs4AgALIAAgAyACELsDIANBIGokAAu2AgIFfwF+IwBBQGoiAiQAIAEoAgBBgICAgHhGBEAgASgCDCEEIAJBHGoiBUEIaiIGQQA2AgAgAkKAgICAEDcCHCACQShqIgNBCGogBCgCACIEQQhqKQIANwMAIANBEGogBEEQaikCADcDACACIAQpAgA3AyggBUHYicQAIAMQuAMaIAJBGGogBigCACIDNgIAIAIgAikCHCIHNwMQIAFBCGogAzYCACABIAc3AgALIAEpAgAhByABQoCAgIAQNwIAIAJBCGoiAyABQQhqIgEoAgA2AgAgAUEANgIAIAIgBzcDAEEMQQQQkQ4iAUUEQEEEQQxB+MrEACgCACIAQcwIIAAbEQAAAAsgASACKQMANwIAIAFBCGogAygCADYCACAAQcyNxAA2AgQgACABNgIAIAJBQGskAAuRAgEFfyMAQRBrIgUkAAJAAkACQCAARQ0AIABBCGsiBigCAEEBaiEDIAYgAzYCACADRQ0BIAAoAgAiA0F/Rg0CIAAgA0EBajYCACAFIAY2AgwgBSAANgIIIAUgAEEEajYCBCACRQ0AIAJBCGsiAygCACIHQQFqIQQgAyAENgIAIARFDQEgAigCAA0CIAJBfzYCACABIAAoAkwiBEkEQCACQQRqIAAoAkggAUH0AGxqQfQA/AoAACAAKAJMIQQLIAJBADYCACADIAc2AgAgBigCACECIAAgACgCAEEBazYCACAGIAJBAWsiADYCACAARQRAIAVBDGoQ5AsLIAVBEGokACABIARJDwsQgw8LAAsQhA8AC94CAgV9A3sgACABKgIEIgVDq6qqPpQgASoCECIDQ6uqqj6U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ayIANgIAIABFBEAgA0GMCGoQpg0LQQAhACADKAIAQQJHBEAgA0GQCGogA0GACPwKAABBoAhBEBCRDiIARQ0EIABBADYCECAAQoGAgIAQNwMAIABBFGogA0GECGpBjAj8CgAAIABBEGohAAsgA0GQEGokACAADwsQgw8LAAsQhA8AC0EQQaAIQfjKxAAoAgAiAEHMCCAAGxEAAAALiwIBCX8gACIHKAIIIgIgAUkEQCACIQMgASACayIFIAAoAgAgAmtLBEAgACACIAVBBEEEENgGIAAoAgghAwsgBygCBCADQQJ0aiEAAkAgBUECSQRAIAAhBAwBCwJAAkAgASACQX9zaiIIQQRJBEAgACEEQQEhCQwBCyAIQXxxIgZBAXIhCSAAIAZBAnRqIQQgBiEKA0AgAP0MAAAAAAAAAAAAAAAAAAAAAP0LAgAgAEEQaiEAIApBBGsiCg0ACyAGIAhGDQELIAIgCWogAWshAANAIARBADYCACAEQQRqIQQgAEEBaiIADQALCyADIAVqQQFrIQMLIARBADYCACADQQFqIQELIAcgATYCCAu2AgICfQZ/IAAoAggiA0UEQEP//39/DwsgACgCBCEFIANBAXEhBgJAIANBAUYEQEEAIQND//9/fyEBDAELIAVBxABqIQAgA0F+cSEHQQAhA0P//39/IQEDQCAAQShrKAIAIABBJGsoAgAiBCgCCEEBa0F4cWpBCGogBCgCqAERCwAhAiAAKAIAIQQgAEEEaygCACEIIABByABqIQAgASABIAIgASACXRsgAiACXBsiAiACIAggBCgCCEEBa0F4cWpBCGogBCgCqAERCwAiASABIAJeGyABIAFcGyEBIAcgA0ECaiIDRw0ACwsgBgRAIAUgA0EkbGoiA0EgaigCACEAIAEgASADQRxqKAIAIAAoAghBAWtBeHFqQQhqIAAoAqgBEQsAIgIgASACXRsgAiACXBshAQsgAQu2AgIDfQZ/IAAoAggiBEUEQEP//39/DwsgACgCBCEGIARBAXEhBwJAIARBAUYEQEEAIQRD//9/fyEBDAELIAZBxABqIQAgBEF+cSEIQQAhBEP//39/IQEDQCAAQShrKAIAIABBJGsoAgAiBSgCCEEBa0F4cWpBCGogBSgCrAERCwAhAiAAKAIAIQUgAEEEaygCACEJIABByABqIQAgCSAFKAII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AkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgACfyAAKAIMIAFNBEAgACACNgIAIAQgBTYCAEEADAELIAAoAgggAUHUAWxqIgEpAighBiABQTBqKAIAIQEgACACNgIAIANBCGoiAiABNgIAIAQgBTYCACADIAY3AwBBGEEEEJEOIgBFDQQgAEEANgIIIABCgYCAgBA3AgAgACADKQMANwIMIABBFGogAigCADYCACAAQQhqCyEAIANBEGokACAADwsQgw8LAAsQhA8AC0EEQRhB+MrEACgCACIAQcwIIAAbEQAAAAv4AQIDfwZ9AkAgASgCCEUEQAwBCyABKAIEIgNBACACKgIIIgYgAyoCGF8bQQAgAioCBCIHIAMqAhRfG0EAIAIqAgAiCCADKgIQXxtBACACKgIUIgkgAyoCCGAbQQAgAioCECIKIAMqAgRgG0EAIAIqAgwiCyADKgIAYBshBSADKAI8Qf////8DcUUNACADKgIgIAtfIAMqAiQgCl9xIAMqAiggCV9xIAMqAjAgCGBxIAMqAjQgB2BxIAMqAjggBmBxIQQgA0EgaiEDCyAAIAU2ApABIAAgATYCiAEgACACNgKMASAAIAQ2AoQBIAAgAzYCBCAAQQA2AgALqwIBAn0CQAJAAkAgASgCCEUNACABKAIEIgEoAjxB/////wNxIAEoAhxB/////wNxag4CAAECCyAAQv////v///+/fzcCECAA/Qz//39///9/f///f3///3///QsCAA8LIAAgASkCADcCACAAIAEpAhA3AgwgAEEIaiABQQhqKAIANgIAIABBFGogAUEYaigCADYCAA8LIAAgASoCGCICIAEqAjgiAyACIANgGzgCFCAAIAEqAhQiAiABKgI0IgMgAiADYBs4AhAgACABKgIQIgIgASoCMCIDIAIgA2AbOAIMIAAgASoCCCICIAEqAigiAyACIANfGzgCCCAAIAEqAgQiAiABKgIkIgMgAiADXxs4AgQgACABKgIAIgIgASoCICIDIAIgA18bOAIAC/wBAgN/AX4jAEEQayIEJAACQAJAAkAgAARAIABBCGsiBSgCAEEBaiEDIAUgAzYCACADRQ0BIAAoAgAiA0F/Rg0CIAAgA0EBajYCACAEIAU2AgwgBCAANgIIIAQgAEEIaiIDNgIEIAJBBU0EQCADIAG9IganIAZCIIin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AWohASADIAE2AgAgAUUNASAAKAIAIgFBf0YNAiAAIAFBAWo2AgAgACgCBCIFQZABaigCACEGIAUpAogBIQcgACABNgIAIAJBCGoiASAGNgIAIAMgBDYCACACIAc3AwBBGEEEEJEOIgBFDQMgAEEANgIIIABCgYCAgBA3AgAgACACKQMANwIMIABBFGogASgCADYCACACQRBqJAAgAEEIag8LEIMPCwALEIQPAAtBBEEYQfjKxAAoAgAiAEHMCCAAGxEAAAAL6wECBn8BfiMAQRBrIgIkAAJAAkACQCAABEAgAEEIayIDKAIAIgRBAWohASADIAE2AgAgAUUNASAAKAIAIgFBf0YNAiAAIAFBAWo2AgAgACgCBCIFQZwBaigCACEGIAUpApQBIQcgACABNgIAIAJBCGoiASAGNgIAIAMgBDYCACACIAc3AwBBGEEEEJEOIgBFDQMgAEEANgIIIABCgYCAgBA3AgAgACACKQMANwIMIABBFGogASgCADYCACACQRBqJAAgAEEIag8LEIMPCwALEIQPAAtBBEEYQfjKxAAoAgAiAEHMCCAAGxEAAAAL2AECAX8BfSAAKgIAIQMgASgCACICKAIIIQEgAigCACABa0EDTQRAIAIgAUEEQQFBARDWBiACKAIIIQELIAIoAgQgAWogAzgAACACIAFBBGoiATYCCCAAKgIEIQMgAigCACABa0EDTQRAIAIgAUEEQQFBARDWBiACKAIIIQELIAIoAgQgAWogAzgAACACIAFBBGoiATYCCCAAKgIIIQMgAigCACABa0EDTQRAIAIgAUEEQQFBARDWBiACKAIIIQELIAIgAUEEajYCCCACKAIEIAFqIAM4AABBAAvBAQIFfwF+IwBBIGsiAiQAQQQgACgCACIFQQF0IgQgBEEETRsiBK1CDH4iB0IgiEIAUgRAQQBBACABENcNAAsCQCAHpyIGQfz///8HTQR/IAIgBQR/IAIgBUEMbDYCHCACIAAoAgQ2AhRBBAVBAAs2AhggAkEIakEEIAYgAkEUahDiCSACKAIIQQFHDQEgAigCECEDIAIoAgwFQQALIAMgARDXDQALIAIoAgwhASAAIAQ2AgAgACABNgIEIAJBIGokAAvBAQIFfwF+IwBBIGsiAiQAQQQgACgCACIFQQF0IgQgBEEETRsiBK1CGH4iB0IgiEIAUgRAQQBBACABENcNAAsCQCAHpyIGQfz///8HTQR/IAIgBQR/IAIgBUEYbDYCHCACIAAoAgQ2AhRBBAVBAAs2AhggAkEIakEEIAYgAkEUahDiCSACKAIIQQFHDQEgAigCECEDIAIoAgwFQQALIAMgARDXDQALIAIoAgwhASAAIAQ2AgAgACABNgIEIAJBIGokAAvDAQIFfwF+IwBBIGsiAiQAQQQgACgCACIFQQF0IgQgBEEETRsiBK1CgAN+IgdCIIhCAFIEQEEAQQAgARDXDQALAkAgB6ciBkHw////B00EfyACIAUEfyACIAVBgANsNgIcIAIgACgCBDYCFEEQBUEACzYCGCACQQhqQRAgBiACQRRqEOIJIAIoAghBAUcNASACKAIQIQMgAigCDAVBAAsgAyABENcNAAsgAigCDCEBIAAgBDYCACAAIAE2AgQgAkEgaiQAC8EBAgV/AX4jAEEgayICJABBBCAAKAIAIgVBAXQiBCAEQQRNGyIErUIUfiIHQiCIQgBSBEBBAEEAIAEQ1w0ACwJAIAenIgZB/P///wdNBH8gAiAFBH8gAiAFQRRsNgIcIAIgACgCBDYCFEEEBUEACzYCGCACQQhqQQQgBiACQRRqEOIJIAIoAghBAUcNASACKAIQIQMgAigCDAVBAAsgAyABENcNAAsgAigCDCEBIAAgBDYCACAAIAE2AgQgAkEgaiQAC8EBAgV/AX4jAEEgayICJABBBCAAKAIAIgVBAXQiBCAEQQRNGyIErUIkfiIHQiCIQgBSBEBBAEEAIAEQ1w0ACwJAIAenIgZB/P///wdNBH8gAiAFBH8gAiAFQSRsNgIcIAIgACgCBDYCFEEEBUEACzYCGCACQQhqQQQgBiACQRRqEOIJIAIoAghBAUcNASACKAIQIQMgAigCDAVBAAsgAyABENcNAAsgAigCDCEBIAAgBDYCACAAIAE2AgQgAkEgaiQAC+IBAQV/IwBBEGsiAiQAAkACQAJAIAAEQCAAQRBrIgMoAgAiBEEBaiEBIAMgATYCACABRQ0BIAAoAgANAiAAKAIQIQVBACEBIABBADYCECADIAQ2AgAgBUEBcQRAIAJBCGoiAyAAQRxqKAIANgIAIAIgACkCFDcDAEEYQQQQkQ4iAEUNBCAAQQA2AgggAEKBgICAEDcCACAAIAIpAwA3AgwgAEEUaiADKAIANgIAIABBCGohAQsgAkEQaiQAIAEPCxCDDwsACxCEDwALQQRBGEH4ysQAKAIAIgBBzAggABsRAAAAC8MBAgV/AX4jAEEgayICJABBBCAAKAIAIgVBAXQiBCAEQQRNGyIErUKoAX4iB0IgiEIAUgRAQQBBACABENcNAAsCQCAHpyIGQfz///8HTQR/IAIgBQR/IAIgBUGoAWw2AhwgAiAAKAIENgIUQQQFQQALNgIYIAJBCGpBBCAGIAJBFGoQ4gkgAigCCEEBRw0BIAIoAhAhAyACKAIMBUEACyADIAEQ1w0ACyACKAIMIQEgACAENgIAIAAgATYCBCACQSBqJAALwQECBX8BfiMAQSBrIgIkAEEEIAAoAgAiBUEBdCIEIARBBE0bIgStQjB+IgdCIIhCAFIEQEEAQQAgARDXDQALAkAgB6ciBkH8////B00EfyACIAUEfyACIAVBMGw2AhwgAiAAKAIENgIUQQQFQQALNgIYIAJBCGpBBCAGIAJBFGoQ4gkgAigCCEEBRw0BIAIoAhAhAyACKAIMBUEACyADIAEQ1w0ACyACKAIMIQEgACAENgIAIAAgATYCBCACQSBqJAALwwECBX8BfiMAQSBrIgIkAEEEIAAoAgAiBUEBdCIEIARBBE0bIgStQvADfiIHQiCIQgBSBEBBAEEAIAEQ1w0ACwJAIAenIgZB8P///wdNBH8gAiAFBH8gAiAFQfADbDYCHCACIAAoAgQ2AhRBEAVBAAs2AhggAkEIakEQIAYgAkEUahDiCSACKAIIQQFHDQEgAigCECEDIAIoAgwFQQALIAMgARDXDQALIAIoAgwhASAAIAQ2AgAgACABNgIEIAJBIGokAAvBAQIFfwF+IwBBIGsiAiQAQQQgACgCACIFQQF0IgQgBEEETRsiBK1COH4iB0IgiEIAUgRAQQBBACABENcNAAsCQCAHpyIGQfz///8HTQR/IAIgBQR/IAIgBUE4bDYCHCACIAAoAgQ2AhRBBAVBAAs2AhggAkEIakEEIAYgAkEUahDiCSACKAIIQQFHDQEgAigCECEDIAIoAgwFQQALIAMgARDXDQALIAIoAgwhASAAIAQ2AgAgACABNgIEIAJBIGokAAvBAQIFfwF+IwBBIGsiAiQAQQQgACgCACIFQQF0IgQgBEEETRsiBK1CNH4iB0IgiEIAUgRAQQBBACABENcNAAsCQCAHpyIGQfz///8HTQR/IAIgBQR/IAIgBUE0bDYCHCACIAAoAgQ2AhRBBAVBAAs2AhggAkEIakEEIAYgAkEUahDiCSACKAIIQQFHDQEgAigCECEDIAIoAgwFQQALIAMgARDXDQALIAIoAgwhASAAIAQ2AgAgACABNgIEIAJBIGokAAvBAQIFfwF+IwBBIGsiAiQAQQQgACgCACIFQQF0IgQgBEEETRsiBK1CKH4iB0IgiEIAUgRAQQBBACABENcNAAsCQCAHpyIGQfz///8HTQR/IAIgBQR/IAIgBUEobDYCHCACIAAoAgQ2AhRBBAVBAAs2AhggAkEIakEEIAYgAkEUahDiCSACKAIIQQFHDQEgAigCECEDIAIoAgwFQQALIAMgARDXDQALIAIoAgwhASAAIAQ2AgAgACABNgIEIAJBIGokAAvDAQIFfwF+IwBBIGsiAiQAQQQgACgCACIFQQF0IgQgBEEETRsiBK1C7AB+IgdCIIhCAFIEQEEAQQAgARDXDQALAkAgB6ciBkH8////B00EfyACIAUEfyACIAVB7ABsNgIcIAIgACgCBDYCFEEEBUEACzYCGCACQQhqQQQgBiACQRRqEOIJIAIoAghBAUcNASACKAIQIQMgAigCDAVBAAsgAyABENcNAAsgAigCDCEBIAAgBDYCACAAIAE2AgQgAkEgaiQAC4YCAgN/AX4jAEEQayIDJAACQAJAAkAgAARAIABBEGsiBCgCAEEBaiECIAQgAjYCACACRQ0BIAAoAgAiAkF/Rg0CIAAgAkEBajYCACADIAQ2AgwgAyAANgIIIAMgAEEQaiICNgIEIAIgAb0iBacgBUIgiKcQuQwiAkUNAyAC/QAEcP0MAAAAAAAAAAAAAAAAAAAAAP1C/VMgAioCgAFDAAAAAFwgAioChAFDAAAAAFxyckEBcSECIAAgACgCAEEBazYCACAEIAQoAgBBAWsiADYCACAARQRAIANBDGoQ6wwLIANBEGokACACDwsQgw8LAAsQhA8AC0Hsz8EAQc0AQbzQwQAQ0QsAC4gDAwV/AX0BfiMAQRBrIgMkAAJAAkACQCAABEAgAEEIayIFKAIAQQFqIQIgBSACNgIAIAJFDQEgACgCACICQX9GDQIgACACQQFqNgIAIAMgBTYCDCADIAA2AgggAyAAQQRqIgI2AgQgAiABvSIIpyAIQiCIpxC6DCICRQ0DIwBBMGsiBCQAAn0CQAJAAkAgAigCOEEBaw4CAQIACyACKgI8DAILIARBBGogAigCQCACKAJEIgYoAghBAWtBeHFqQQhqQwAAgD8gBigCnAERDQAgBCoCICACKgI8lAwBCyAEQQRqIAIoAkAgAigCRCIGKAIIQQFrQXhxakEIakMAAIA/IAYoApwBEQ0AIAQqAiBDAAAAAEMAAIA/IAIoAjwqAhwiB5UgB0MAAAAAWxuUCyEHIARBMGokACAAIAAoAgBBAWs2AgAgBSAFKAIAQQFrIgA2AgAgAEUEQCADQQxqEO4MCyADQRBqJAAgBw8LEIMPCwALEIQPAAtB3NDBAEHMAEGo0cEAENELAAvoAgMFfwF9AX4jAEEQayIDJAACQAJAAkAgAARAIABBCGsiBCgCAEEBaiECIAQgAjYCACACRQ0BIAAoAgAiAkF/Rg0CIAAgAkEBajYCACADIAQ2AgwgAyAANgIIIAMgAEEEaiICNgIEIAIgAb0iCKcgCEIgiKcQugwiAkUNAyMAQTBrIgUkAAJ9AkACQAJAIAIoAjhBAWsOAgECAAsgBUEEaiACKAJAIAIoAkQiBigCCEEBa0F4cWpBCGogAioCPCAGKAKcARENAEMAAAAAQwAAgD8gBSoCICIHlSAHQwAAAABbGwwCCyACKgI8DAELQwAAAAAgAigCPCoCHCIHQwAAAABbDQAaQwAAgD8gB5ULIQcgBUEwaiQAIAAgACgCAEEBazYCACAEIAQoAgBBAWsiADYCACAARQRAIANBDGoQ7gwLIANBEGokACAHDwsQgw8LAAsQhA8AC0Hc0MEAQcwAQajRwQAQ0QsAC6gCAwR/AX0BfiMAQRBrIgMkAAJAAkACQCAABEAgAEEIayIEKAIAQQFqIQIgBCACNgIAIAJFDQEgACgCACICQX9GDQIgACACQQFqNgIAIAMgBDYCDCADIAA2AgggAyAAQQRqIgI2AgQgAiABvSIHpyAHQiCIpxC6DCIFRQ0DIwBBMGsiAiQAIAJBBGogBSgCQCAFKAJEIgUoAghBAWtBeHFqQQhqQwAAgD8gBSgCnAERDQAgAioCICEGIAJBMGokAEMAAAAAQwAAgD8gBpUgBkMAAAAAWxshBiAAIAAoAgBBAWs2AgAgBCAEKAIAQQFrIgA2AgAgAEUEQCADQQxqEO4MCyADQRBqJAAgBg8LEIMPCwALEIQPAAtB3NDBAEHMAEGo0cEAENELAAvTAQIDfwF+IwBBMGsiASQAAkACQCAABEAgAEEIayIDKAIAQQFqIQIgAyACNgIAIAJFDQEgACgCACICQX9GDQIgACACQQFqNgIAIAEgAzYCCCABIAA2AgQgASAAQQRqNgIAIAApAhQhBCABQQYQHSICNgIMIAEgBDcDICABIAD9AAIE/QsEECABQQxqIAFBEGpBBhDKCSAAIAAoAgBBAWs2AgAgAyADKAIAQQFrIgA2AgAgAEUEQCABQQhqEKoNCyABQTBqJAAgAg8LEIMPCwALEIQPAAvIAQEFfyAAKAIMIQIgACgCECIDBEAgAkHQAGohAQNAAkAgAUHQAGsoAgBFDQAgASgCACIFKAIAIQQgBSAEQQFrNgIAIARBAUYEQCABEIoKCyABQQhrKAIAQQJJDQAgAUEEaygCAEEsQQQQ6A4LIAFBsAFqIQEgA0EBayIDDQALCyAAKAIIIgEEQCACIAFBsAFsQRAQ6A4LIAAoAhwiAQRAIAAoAiAgAUEDdEEEEOgOCyAAKAIoIgEEQCAAKAIsIAFBA3RBBBDoDgsLxgEBBX8gACgCBCECIAAoAggiAwRAIAIhAQNAIAEoAgAiBSgCACEEIAUgBEEBazYCACAEQQFGBEAgARDXCwsgAUEMaiEBIANBAWsiAw0ACwsgACgCACIBBEAgAiABQQxsQQQQ6A4LIAAoAhAhAiAAKAIUIgMEQCACIQEDQCABKAIAIgUoAgAhBCAFIARBAWs2AgAgBEEBRgRAIAEQ1wsLIAFBDGohASADQQFrIgMNAAsLIAAoAgwiAARAIAIgAEEMbEEEEOgOCwu4AQEDfwJAAkAgAARAIABBCGsiBCgCACIFQQFqIQMgBCADNgIAIANFDQEgACgCAA0CQT8gAkH/AXEiAyADQT9PGyIDQQFxBEAgACABOAIECyADQQJxBEAgACABOAIICyADQQRxBEAgACABOAIMCyADQQhxBEAgACABOAIcCyADQRBxBEAgACABOAIgCyACQf8BcUEgTwRAIAAgATgCJAsgAEEANgIAIAQgBTYCAA8LEIMPCwALEIQPAAu4AQEDfwJAAkAgAARAIABBCGsiBCgCACIFQQFqIQMgBCADNgIAIANFDQEgACgCAA0CQT8gAkH/AXEiAyADQT9PGyIDQQFxBEAgACABOAJQCyADQQJxBEAgACABOAJUCyADQQRxBEAgACABOAJYCyADQQhxBEAgACABOAJcCyADQRBxBEAgACABOAJgCyACQf8BcUEgTwRAIAAgATgCZAsgAEEANgIAIAQgBTYCAA8LEIMPCwALEIQPAAu4AQEDfwJAAkAgAARAIABBCGsiBCgCACIFQQFqIQMgBCADNgIAIANFDQEgACgCAA0CQT8gAkH/AXEiAyADQT9PGyIDQQFxBEAgACABOAIQCyADQQJxBEAgACABOAIQCyADQQRxBEAgACABOAIQCyADQQhxBEAgACABOAIoCyADQRBxBEAgACABOAIsCyACQf8BcUEgTwRAIAAgATgCMAsgAEEANgIAIAQgBTYCAA8LEIMPCwALEIQPAAvSAQEDfyMAQUBqIgIkACACIAE3AwACQAJAIAFCgICAgBBaBEAgAkEDNgIcIAJB1NjBADYCGCACQgI3AiQgAkKg2MGAMDcDOCACIAKtQoCAgICwDoQ3AzAgAiACQTBqNgIgIAJBDGoiBCACQRhqEIcFQQxBBBCRDiIDRQ0BIAMgAikCDDcCACADQQhqIARBCGooAgA2AgBBASEEDAILIAGnIQMMAQtBBEEMQfjKxAAoAgAiAEHMCCAAGxEAAAALIAAgAzYCBCAAIAQ2AgAgAkFAayQAC9EBAQJ/AkAgAiABKAKMA08NACABKAKIAyACQYADbGoiASgCAEEBRw0AIAEoAgQgA0cNACABLQD1Ag0AIAEtAMwCQQRxDQAgAUEAOgDkAiABQQA2AuACIAEtAPYCRQ0AAkAgASgCFCIFIAAoAggiBE8NACAAKAIEIAVBA3RqIgUoAgAgAkcNACAFKAIEIANGDQELIAEgBDYCFCAAKAIAIARGBEAgAEGYjsIAELQICyAAIARBAWo2AgggACgCBCAEQQN0aiIAIAM2AgQgACACNgIACwu4AQEJfSABKgIUIgkgAioCACIGlCABKgIQIgogAioCBCIHlJMiBCAEkiEEIAogAioCCCIIlCABKgIYIgMgBpSTIgUgBZIhBSAAIAIqAhggAyACKgIMIgsgBJQgBiAFlCAHIAMgB5QgCSAIlJMiAyADkiIDlJOSkpI4AgggACACKgIUIAkgCyAFlCAIIAOUIAYgBJSTkpKSOAIEIAAgAioCECAKIAsgA5QgByAElCAIIAWUk5KSkjgCAAu9AQEJfSAAIAIqAhgiBSABKgIAIgSSIgYgBCADKgIYIgiSIgcgBiAHYBs4AhQgACAEIAIqAhQiBpIiByAEIAMqAhQiCpIiCSAHIAlgGzgCECAAIAQgAioCECIHkiIJIAQgAyoCECILkiIMIAkgDGAbOAIMIAAgBSAEkyIFIAggBJMiCCAFIAhfGzgCCCAAIAYgBJMiBSAKIASTIgYgBSAGXxs4AgQgACAHIASTIgUgCyAEkyIEIAQgBWAbOAIAC8EBAgN/AX4jAEEgayIDJAACQAJAIAAEQCAAQQhrIgQoAgBBAWohAiAEIAI2AgAgAkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgAgAyAENgIcIAMgADYCGCADIABBCGoiAjYCFCADQQhqIAIgAb0iBacgBUIgiKcQlQogAygCCCECIAAgACgCAEEBazYCACAEIAQoAgBBAWsiADYCACAARQRAIANBHGoQ6gwLIANBIGokACACQQBHDwsQgw8LAAsQhA8AC8oBAgN/AX4jAEEQayIEJAACQAJAAkAgAARAIABBCGsiBSgCAEEBaiEDIAUgAzYCACADRQ0BIAAoAgANAiAAQX82AgAgBCAFNgIMIAQgADYCCCAEIABBBGoiAzYCBCADIAG9IganIAZCIIinEN8JIgNFDQMgAyACQQAgAkEISRs2AlggAEEANgIAIAUgBSgCAEEBayIANgIAIABFBEAgBEEMahDuDAsgBEEQaiQADwsQgw8LAAsQhA8AC0Hc0MEAQcwAQbjRwQAQ0QsAC7ABAQp9IAAgAhCSAyIABEAgAyABKgIMIgkgAioCBCIKIAEqAgAiB5QgAioCACILIAEqAgQiCJSTIgQgBJIiDJQgCCAIIAIqAggiDZQgCiABKgIIIgSUkyIFIAWSIgWUIAcgCyAElCANIAeUkyIGIAaSIgaUk5IgDZM4AgggAyAJIAaUIAcgDJQgBCAFlJOSIAqTOAIEIAMgCSAFlCAEIAaUIAggDJSTkiALkzgCAAsgAAuwAQEKfSAAIAMQkgMiAARAIAIgASoCDCIJIAMqAgAiCiABKgIEIgeUIAMqAgQiCyABKgIAIgiUkyIEIASSIgyUIAggCCADKgIIIg2UIAogASoCCCIElJMiBSAFkiIFlCAHIAsgBJQgDSAHlJMiBiAGkiIGlJOSIA2TOAIIIAIgCSAFlCAEIAaUIAggDJSTkiALkzgCBCACIAkgBpQgByAMlCAEIAWUk5IgCpM4AgALIAAL9AECB30CeyAAIAEqAgQiBUMAAAA/lCABKgIQIgNDAAAAP5SSIgI4AgQgACAB/V0CCCIK/QwAAAA/AAAAPwAAAD8AAAA//eYBIAEqAhQiBP0TIAEqAgAiBv0gAf0MAAAAPwAAAD8AAAA/AAAAP/3mAf3kASIJ/R8AIgc4AgggACAJ/R8BIgg4AgAgACAJIAogBP0gAP3lASIJIAn95gEiCf0fASACIAOTIgMgA5SSIAn9HwCSIgMgCCAGkyIEIASUIAIgBZMiAiAClJIgByABKgIIkyICIAKUkiICQwAAAAAgAkMAAAAAXhsiAiACIANdG5E4AgwLvAEBA38jAEEgayIDJAACQAJ/QQAgASABIAJqIgJLDQAaQQBBCCACIAAoAgAiAUEBdCIEIAIgBEsbIgIgAkEITRsiBEEASA0AGkEAIQIgAyABBH8gAyABNgIcIAMgACgCBDYCFEEBBUEACzYCGCADQQhqQQEgBCADQRRqEOIJIAMoAghBAUcNASADKAIQIQUgAygCDAsgBUH8j8QAENcNAAsgAygCDCEBIAAgBDYCACAAIAE2AgQgA0EgaiQAC8gBAQJ/IwBB0ABrIgIkAAJAAkACQCABRQRAIABFDQEgAEEIayIBKAIAQQFHDQIgAkEMaiAAQQRqQcQA/AoAACABQQA2AgACQCABQX9GDQAgAEEEayIDKAIAQQFrIQAgAyAANgIAIAANACABQdAAQQQQ6A4LIAJBDGoQzgcMAwsgAEUNACAAQQhrIgAoAgBBAWshASAAIAE2AgAgAiAANgIIIAENAiACQQhqEOkMDAILEIMPAAtBkNTBAEE/EIIPAAsgAkHQAGokAAu5AQEDfyAAKAJIIQEgACgCTCIDBEAgASECA0AgAhDvAiACQaQCaiECIANBAWsiAw0ACwsgACgCRCICBEAgASACQaQCbEEEEOgOCyAAKAIwIgEEQCAAKAI0IAFBFGxBBBDoDgsgACgCGCIBBEAgACgCHCABQQR0QQQQ6A4LIAAoAiQiAQRAIAAoAiggAUEEdEEEEOgOCyAAKAIEIgEEQCAAKAIAIAFBA3RrQQhrIAFBCWxBEWpBCBDoDgsLvAEBBX8jAEEgayICJAAgACgCACIEQf////8ASwRAQQBBACABENcNAAsCQEEEIARBAXQiBSAFQQRNGyIFQQN0IgZB/P///wdNBH8gAiAEBH8gAiAEQQN0NgIcIAIgACgCBDYCFEEEBUEACzYCGCACQQhqQQQgBiACQRRqEOIJIAIoAghBAUcNASACKAIQIQMgAigCDAVBAAsgAyABENcNAAsgAigCDCEBIAAgBTYCACAAIAE2AgQgAkEgaiQAC7sBAQV/IwBBIGsiAiQAIAAoAgAiBEH///8/SwRAQQBBACABENcNAAsCQEEEIARBAXQiBSAFQQRNGyIFQQR0IgZB/P///wdNBH8gAiAEBH8gAiAEQQR0NgIcIAIgACgCBDYCFEEEBUEACzYCGCACQQhqQQQgBiACQRRqEOIJIAIoAghBAUcNASACKAIQIQMgAigCDAVBAAsgAyABENcNAAsgAigCDCEBIAAgBTYCACAAIAE2AgQgAkEgaiQAC7wBAQV/IwBBIGsiAiQAIAAoAgAiBEH/////AUsEQEEAQQAgARDXDQALAkBBBCAEQQF0IgUgBUEETRsiBUECdCIGQfz///8HTQR/IAIgBAR/IAIgBEECdDYCHCACIAAoAgQ2AhRBBAVBAAs2AhggAkEIakEEIAYgAkEUahDiCSACKAIIQQFHDQEgAigCECEDIAIoAgwFQQALIAMgARDXDQALIAIoAgwhASAAIAU2AgAgACABNgIEIAJBIGokAAvNAQEEfyMAQRBrIgIkAAJAAkACQCABRQRAIABFDQEgAEEIayIBKAIAQQFHDQIgACgCSCEEIAAoAkQhAyABQQA2AgACQCABQX9GDQAgAEEEayIFKAIAQQFrIQAgBSAANgIAIAANACABQegAQQQQ6A4LIANFDQMgBCADQfQAbEEEEOgODAMLIABFDQAgAEEIayIAKAIAQQFrIQEgACABNgIAIAIgADYCDCABDQIgAkEMahDkCwwCCxCDDwALQZDUwQBBPxCCDwALIAJBEGokAAvGAQIDfwF+IwBBEGsiBCQAAkACQAJAIAAEQCAAQQhrIgUoAgBBAWohAyAFIAM2AgAgA0UNASAAKAIADQIgAEF/NgIAIAQgBTYCDCAEIAA2AgggBCAAQQhqIgM2AgQgAyABvSIGpyAGQiCIpxCGCiIDRQ0DIAMgAkEARzoAvQIgAEEANgIAIAUgBSgCAEEBayIANgIAIABFBEAgBEEMahDvDAsgBEEQaiQADwsQgw8LAAsQhA8AC0HwzcEAQdAAQdDOwQAQ0QsAC8wDAwZ/AX0BfiMAQSBrIgMkAAJAAkAgAARAIABBCGsiBSgCAEEBaiECIAUgAjYCACACRQ0BIAAoAgAiAkF/Rg0CIAAgAkEBajYCACADIAU2AhwgAyAANgIYIAMgAEEEaiICNgIUIANBCGohBgJAAn0CQCACIAG9IgmnIAlCIIinELoMIgIEQAJAAkACQAJAAkACQAJAAkACQCACQUBrKAIAIAJBxABqKAIAIgIoAghBAWtBeHFqQQhqIgQgAigCoAERBABB/wFxDhEADAEMDAwMDAwMDAwCAwwMBAwLIAQgAhC7CyICDQkMCwsgBCACEL4LIgINAwwKCyAEIAIQyQsiAg0DDAkLIAQgAhDLCyICDQMMCAsgBCACEM0LIgINAwwHCyACKgIYDAULIAIqAgQMBAsgAioCBAwDCyACKgIEDAILQdzQwQBBzABBqNHBABDRCwALIAIqAgALIQhBASEHCyAGIAg4AgQgBiAHNgIAIAMqAgwhCCADKAIIIQIgACAAKAIAQQFrNgIAIAUgBSgCAEEBayIANgIAIABFBEAgA0EcahDuDAsgA0EgaiQAIAi7RAAAEAAAAPBBIAJBAXEbDwsQgw8LAAsQhA8AC/YDAwZ/AX0BfiMAQSBrIgMkAAJAAkAgAARAIABBCGsiBSgCAEEBaiECIAUgAjYCACACRQ0BIAAoAgAiAkF/Rg0CIAAgAkEBajYCACADIAU2AhwgAyAANgIYIAMgAEEEaiICNgIUIANBCGohBwJAAkAgAiABvSIJpyAJQiCIpxC6DCICBEACQAJAAkACQAJAAkACQCACQUBrKAIAIAJBxABqKAIAIgIoAghBAWtBeHFqQQhqIgYgAigCoAERBABB/wFxQQJrDg8ACQkJCQkJCQkJAQIJCQMJCyAGIAIQvgsiAg0HDAgLIAYgAhDJCyICDQIMBwsgBiACEMsLIgINAgwGCyAGIAIQzQsiAg0CDAULIAIqAgAhCEEBIQQMBAsgAioCACEIQQEhBAwDCyACKgIAIQhBASEEDAILQdzQwQBBzABBqNHBABDRCwALQQEhBCACKgIMIAIqAgCTIgggCJQgAioCECACKgIEkyIIIAiUkiACKgIUIAIqAgiTIgggCJSSkUMAAAA/lCEICyAHIAg4AgQgByAENgIAIAMqAgwhCCADKAIIIQIgACAAKAIAQQFrNgIAIAUgBSgCAEEBayIANgIAIABFBEAgA0EcahDuDAsgA0EgaiQAIAi7RAAAEAAAAPBBIAJBAXEbDwsQgw8LAAsQhA8AC6MEAwd/AX0CfiMAQSBrIgMkAAJAAkAgAARAIABBCGsiBigCAEEBaiECIAYgAjYCACACRQ0BIAAoAgAiAkF/Rg0CIAAgAkEBajYCACADIAY2AhwgAyAANgIYIAMgAEEEaiICNgIUIANBCGohBwJAAn0CQCACIAG9IgqnIApCIIinELoMIgIEQAJAAkACQAJAAkACQAJAAkACQCACQUBrKAIAIAJBxABqKAIAIgQoAghBAWtBeHFqQQhqIgUgBCgCoAERBABB/wFxQQ5rDgUAAQIDBAwLIAUgBBDFCyICDQkMCwsgBSAEEMcLIgINAwwKCyAFIAQQzQsiAg0DDAkLIwBBIGsiAiQAIAJBCGogBSAEKAJgEQAAIAJBEGogAigCCCIEIAIoAgwoAgwRAAAgAikDGCEKIAIpAxAhCyACQSBqJAAgBEEAIAtCs9vcjZaKhISAf4UgCkKcpMiCwICPkIt/hYRQGyICDQMMCAsgBSAEEM8LIgINAwwHCyACKgIkDAULIAIqAggMBAsgAioCCAwDCyACKgJgDAILQdzQwQBBzABBqNHBABDRCwALIAIqAgwLIQlBASEICyAHIAk4AgQgByAINgIAIAMqAgwhCSADKAIIIQIgACAAKAIAQQFrNgIAIAYgBigCAEEBayIANgIAIABFBEAgA0EcahDuDAsgA0EgaiQAIAm7RAAAEAAAAPBBIAJBAXEbDwsQgw8LAAsQhA8AC8oBAgN/AX4jAEEQayIEJAACQAJAAkAgAARAIABBCGsiBSgCAEEBaiEDIAUgAzYCACADRQ0BIAAoAgANAiAAQX82AgAgBCAFNgIMIAQgADYCCCAEIABBBGoiAzYCBCADIAG9IganIAZCIIinEN8JIgNFDQMgA0EDIAIgAkEDTxs6AGwgAEEANgIAIAUgBSgCAEEBayIANgIAIABFBEAgBEEMahDuDAsgBEEQaiQADwsQgw8LAAsQhA8AC0Hc0MEAQcwAQbjRwQAQ0QsAC8oBAgN/AX4jAEEQayIEJAACQAJAAkAgAARAIABBCGsiBSgCAEEBaiEDIAUgAzYCACADRQ0BIAAoAgANAiAAQX82AgAgBCAFNgIMIAQgADYCCCAEIABBBGoiAzYCBCADIAG9IganIAZCIIinEN8JIgNFDQMgA0EDIAIgAkEDTxs6AG0gAEEANgIAIAUgBSgCAEEBayIANgIAIABFBEAgBEEMahDuDAsgBEEQaiQADwsQgw8LAAsQhA8AC0Hc0MEAQcwAQbjRwQAQ0QsAC8oBAgN/AX4jAEEQayIEJAACQAJAAkAgAARAIABBCGsiBSgCAEEBaiEDIAUgAzYCACADRQ0BIAAoAgANAiAAQX82AgAgBCAFNgIMIAQgADYCCCAEIABBBGoiAzYCBCADIAG9IganIAZCIIinEN8JIgNFDQMgAyACQQAgAkEESRs2AlwgAEEANgIAIAUgBSgCAEEBayIANgIAIABFBEAgBEEMahDuDAsgBEEQaiQADwsQgw8LAAsQhA8AC0Hc0MEAQcwAQbjRwQAQ0QsAC8sBAgN/AX4jAEEQayIEJAACQAJAAkAgAARAIABBCGsiBSgCAEEBaiEDIAUgAzYCACADRQ0BIAAoAgANAiAAQX82AgAgBCAFNgIMIAQgADYCCCAEIABBBGoiAzYCBCADIAG9IganIAZCIIinEN8JIgNFDQMgA0EAIAIgAkHQI3EbOwFgIABBADYCACAFIAUoAgBBAWsiADYCACAARQRAIARBDGoQ7gwLIARBEGokAA8LEIMPCwALEIQPAAtB3NDBAEHMAEG40cEAENELAAu7AQEFfyMAQSBrIgIkACAAKAIAIgRB////D0sEQEEAQQAgARDXDQALAkBBBCAEQQF0IgUgBUEETRsiBUEGdCIGQfz///8HTQR/IAIgBAR/IAIgBEEGdDYCHCACIAAoAgQ2AhRBBAVBAAs2AhggAkEIakEEIAYgAkEUahDiCSACKAIIQQFHDQEgAigCECEDIAIoAgwFQQALIAMgARDXDQALIAIoAgwhASAAIAU2AgAgACABNgIEIAJBIGokAAu7AQEFfyMAQSBrIgIkACAAKAIAIgRB////D0sEQEEAQQAgARDXDQALAkBBBCAEQQF0IgUgBUEETRsiBUEGdCIGQfD///8HTQR/IAIgBAR/IAIgBEEGdDYCHCACIAAoAgQ2AhRBEAVBAAs2AhggAkEIakEQIAYgAkEUahDiCSACKAIIQQFHDQEgAigCECEDIAIoAgwFQQALIAMgARDXDQALIAIoAgwhASAAIAU2AgAgACABNgIEIAJBIGokAAu7AQEFfyMAQSBrIgIkACAAKAIAIgRB////H0sEQEEAQQAgARDXDQALAkBBBCAEQQF0IgUgBUEETRsiBUEFdCIGQfz///8HTQR/IAIgBAR/IAIgBEEFdDYCHCACIAAoAgQ2AhRBBAVBAAs2AhggAkEIakEEIAYgAkEUahDiCSACKAIIQQFHDQEgAigCECEDIAIoAgwFQQALIAMgARDXDQALIAIoAgwhASAAIAU2AgAgACABNgIEIAJBIGokAAu9AQEFfyMAQSBrIgIkACAAKAIAIgRB////D0sEQEEAQQAgARDXDQALAkBBBCAEQQF0IgUgBUEETRsiBUEGdCIGQcD///8HTQR/IAIgBAR/IAIgBEEGdDYCHCACIAAoAgQ2AhRBwAAFQQALNgIYIAJBCGpBwAAgBiACQRRqEOIJIAIoAghBAUcNASACKAIQIQMgAigCDAVBAAsgAyABENcNAAsgAigCDCEBIAAgBTYCACAAIAE2AgQgAkEgaiQAC70BAQV/IwBBIGsiAiQAIAAoAgAiBEH///8BSwRAQQBBACABENcNAAsCQEEEIARBAXQiBSAFQQRNGyIFQQl0IgZBwP///wdNBH8gAiAEBH8gAiAEQQl0NgIcIAIgACgCBDYCFEHAAAVBAAs2AhggAkEIakHAACAGIAJBFGoQ4gkgAigCCEEBRw0BIAIoAhAhAyACKAIMBUEACyADIAEQ1w0ACyACKAIMIQEgACAFNgIAIAAgATYCBCACQSBqJAALuwEBBX8jAEEgayICJAAgACgCACIEQf///x9LBEBBAEEAIAEQ1w0ACwJAQQQgBEEBdCIFIAVBBE0bIgVBBXQiBkHw////B00EfyACIAQEfyACIARBBXQ2AhwgAiAAKAIENgIUQRAFQQALNgIYIAJBCGpBECAGIAJBFGoQ4gkgAigCCEEBRw0BIAIoAhAhAyACKAIMBUEACyADIAEQ1w0ACyACKAIMIQEgACAFNgIAIAAgATYCBCACQSBqJAAL3wECAX8BfSMAQTBrIgUkACAFQQRqIAEgAiACQQxqELEBQQAhAgJAIAUoAgRBAUcNAAJAIAUqAggiBkMAAAAAXUUEQCADIAZgRQ0CIAAgBjgCBCAAIAVBDGr9AAIA/QsCCAwBCyAFKAIsIQEgBEUEQCADIAUqAhwiA2BFDQIgACADOAIEIAAgATYCFCAAIAVBIGoiASkCADcCCCAAQRBqIAFBCGooAgA2AgAMAQsgAP0MAAAAAAAAAAAAAAAAAAAAAP0LAgQgACABNgIUC0EBIQILIAAgAjYCACAFQTBqJAALvAEBBH8gACgCBCECIAAoAggiBARAIAJBgAFqIQEDQCABQQRrKAIAIgMEQCABKAIAIANBBnRBBBDoDgsgAUEoaygCACIDBEAgAUEkaygCACADQQZ0QRAQ6A4LIAFBqAFqIQEgBEEBayIEDQALCyAAKAIAIgEEQCACIAFBqAFsQQQQ6A4LAkAgACgCHCIBRQ0AIAAoAiAiACgCACICBEAgASACEQYACyAAKAIEIgJFDQAgASACIAAoAggQ6A4LC9sBAQJ/IwBBEGsiAyQAAkAgAAJ/AkAgASgCBCICRQRAIABBAjoAAQwBCyABIAJBAWs2AgQCQAJAIAEoAgAiASgCBCICRQRAIANCgcoANwMIIANBCGoQnw0hAQwBCyABIAJBAWs2AgQgASABKAIAIgFBAWo2AgAgAS0AACICQQJJDQFBDEEEEJEOIgFFDQQgASACOgAEIAFBgoCAgHg2AgALIAAgATYCBEEBDAILIAAgAjoAAQtBAAs6AAAgA0EQaiQADwtBBEEMQfjKxAAoAgAiAEHMCCAAGxEAAAALxgECAn8DfSMAQTBrIgUkACABQQhqIgYqAgAhByABKgIAIQggASoCBCEJIAVBFGogBigCADYCACAFIAeMOAIIIAUgCYw4AgQgBSAIjDgCACAFIAEpAgA3AgwgBUEYaiAFIAIgAyAEEMYIQQQhASAAIAUoAhhBAUYEfyAAIAUpAiA3AgwgACAFKgIcOAIIIABBFGogBUEoaigCADYCACAAQQIgBSgCLCICayACQQFrIAJBAEgbNgIEQQIFQQQLNgIAIAVBMGokAAvKAQIDfwF+IwBBEGsiBCQAAkACQAJAIAAEQCAAQRBrIgUoAgBBAWohAyAFIAM2AgAgA0UNASAAKAIADQIgAEF/NgIAIAQgBTYCDCAEIAA2AgggBCAAQRBqIgM2AgQgAyABvSIGpyAGQiCIpxDeCSIDRQ0DIANCADcDGCADIAKtNwMQIABBADYCACAFIAUoAgBBAWsiADYCACAARQRAIARBDGoQ6wwLIARBEGokAA8LEIMPCwALEIQPAAtB7M/BAEHNAEHM0MEAENELAAu5AQEIfQJAAkACQCACKgIAIgUgBZQgAioCCCIDIAOUkiIEQwAAAABcBEAgASoCACIGIAIqAgQiCJQiCSADIAMgBJEiBJUgASoCBCIKlCIHlCAFIAUgBJUgCpQiBJQgCZOSXg0BIAaMIQYMAwsgASoCACACKgIEIgiYIQYMAQtDAAAAACEHC0MAAAAAIQQLIAAgByADIAEqAggiA5SSOAIIIAAgBiAIIAOUkjgCBCAAIAQgBSADlJI4AgALvgEBCH0gACABKgIAOAIMIAAgAioCGCACKgIMIgYgAioCACIHQwAAAACUIgMgAioCBCIIQwAAAACUIgSTIgUgBZIiBZQgByACKgIIIglDAAAAAJQiCiADkyIDIAOSIgOUIAggBCAKkyIEIASSIgSUk5JDAAAAAJKSOAIIIAAgAioCFCAGIAOUIAkgBJQgByAFlJOSQwAAAACSkjgCBCAAIAIqAhAgBiAElCAIIAWUIAkgA5STkkMAAAAAkpI4AgAL1wECBH8BfiMAQRBrIgIkAAJAAkACQCAABEAgAEEIayIDKAIAIgRBAWohASADIAE2AgAgAUUNASAAKAIAIgFBf0YNAiAAIAE2AgAgAkEIaiIBIABB2ABqKAIANgIAIAApAlAhBSADIAQ2AgAgAiAFNwMAQRhBBBCRDiIARQ0DIABBADYCCCAAQoGAgIAQNwIAIAAgAikDADcCDCAAQRRqIAEoAgA2AgAgAkEQaiQAIABBCGoPCxCDDwsACxCEDwALQQRBGEH4ysQAKAIAIgBBzAggABsRAAAAC9YBAgR/AX4jAEEQayICJAACQAJAAkAgAARAIABBCGsiAygCACIEQQFqIQEgAyABNgIAIAFFDQEgACgCACIBQX9GDQIgACABNgIAIAJBCGoiASAAQTBqKAIANgIAIAApAighBSADIAQ2AgAgAiAFNwMAQRhBBBCRDiIARQ0DIABBADYCCCAAQoGAgIAQNwIAIAAgAikDADcCDCAAQRRqIAEoAgA2AgAgAkEQaiQAIABBCGoPCxCDDwsACxCEDwALQQRBGEH4ysQAKAIAIgBBzAggABsRAAAAC9YBAgR/AX4jAEEQayICJAACQAJAAkAgAARAIABBCGsiAygCACIEQQFqIQEgAyABNgIAIAFFDQEgACgCACIBQX9GDQIgACABNgIAIAJBCGoiASAAQTxqKAIANgIAIAApAjQhBSADIAQ2AgAgAiAFNwMAQRhBBBCRDiIARQ0DIABBADYCCCAAQoGAgIAQNwIAIAAgAikDADcCDCAAQRRqIAEoAgA2AgAgAkEQaiQAIABBCGoPCxCDDwsACxCEDwALQQRBGEH4ysQAKAIAIgBBzAggABsRAAAAC9cBAgR/AX4jAEEQayICJAACQAJAAkAgAARAIABBCGsiAygCACIEQQFqIQEgAyABNgIAIAFFDQEgACgCACIBQX9GDQIgACABNgIAIAJBCGoiASAAQcwAaigCADYCACAAKQJEIQUgAyAENgIAIAIgBTcDAEEYQQQQkQ4iAEUNAyAAQQA2AgggAEKBgICAEDcCACAAIAIpAwA3AgwgAEEUaiABKAIANgIAIAJBEGokACAAQQhqDwsQgw8LAAsQhA8AC0EEQRhB+MrEACgCACIAQcwIIAAbEQAAAAvXAQIEfwF+IwBBEGsiAiQAAkACQAJAIAAEQCAAQQhrIgMoAgAiBEEBaiEBIAMgATYCACABRQ0BIAAoAgAiAUF/Rg0CIAAgATYCACACQQhqIgEgAEHkAGooAgA2AgAgACkCXCEFIAMgBDYCACACIAU3AwBBGEEEEJEOIgBFDQMgAEEANgIIIABCgYCAgBA3AgAgACACKQMANwIMIABBFGogASgCADYCACACQRBqJAAgAEEIag8LEIMPCwALEIQPAAtBBEEYQfjKxAAoAgAiAEHMCCAAGxEAAAALtwECA38BfiMAQRBrIgMkAAJAAkAgAARAIABBCGsiBCgCAEEBaiECIAQgAjYCACACRQ0BIAAoAgAiAkF/Rg0CIAAgAkEBajYCACADIAQ2AgwgAyAANgIIIAMgAEEIaiICNgIEIAIgAb0iBacgBUIgiKcQ2wshAiAAIAAoAgBBAWs2AgAgBCAEKAIAQQFrIgA2AgAgAEUEQCADQQxqEO8MCyADQRBqJAAgAkEARw8LEIMPCwALEIQPAAvFAQIDfwF+IwBBEGsiBCQAAkACQAJAIAAEQCAAQRBrIgUoAgBBAWohAyAFIAM2AgAgA0UNASAAKAIADQIgAEF/NgIAIAQgBTYCDCAEIAA2AgggBCAAQRBqIgM2AgQgAyABvSIGpyAGQiCIpxDeCSIDRQ0DIAMgAkEARzoALSAAQQA2AgAgBSAFKAIAQQFrIgA2AgAgAEUEQCAEQQxqEOsMCyAEQRBqJAAPCxCDDwsACxCEDwALQezPwQBBzQBBzNDBABDRCwAL6gECA38BfiMAQRBrIgQkAAJAAkACQCAABEAgAEEQayIFKAIAQQFqIQMgBSADNgIAIANFDQEgACgCAA0CIABBfzYCACAEIAU2AgwgBCAANgIIIAQgAEEQaiIDNgIEIAMgAb0iBqcgBkIgiKcQ3gkiA0UNAyACQQBHIgIgAy0A5gJHBEAgAyACOgDmAiADQf8BIAMoArwCQYABciACGzYCvAILIABBADYCACAFIAUoAgBBAWsiADYCACAARQRAIARBDGoQ6wwLIARBEGokAA8LEIMPCwALEIQPAAtB7M/BAEHNAEHM0MEAENELAAuvAgIDfwF+IwBBEGsiBCQAAkACQAJAIAAEQCAAQRBrIgUoAgBBAWohAyAFIAM2AgAgA0UNASAAKAIADQIgAEF/NgIAIAQgBTYCDCAEIAA2AgggBCAAQRBqIgM2AgQgAyABvSIGpyAGQiCIpxDeCSIDRQ0DIAJBAEchAgJAAkAgAyoCvAFDAAAAAFwNACADKgLAAUMAAAAAXA0AIAMqAsQBQwAAAABbDQELIANBADYCxAEgA0IANwK8ASACRQ0AIAMtANQCBEAgAyADKAK8AkEEcjYCvAILIANBADYC0AIgA0EAOgDUAgsgAEEANgIAIAUgBSgCAEEBayIANgIAIABFBEAgBEEMahDrDAsgBEEQaiQADwsQgw8LAAsQhA8AC0Hsz8EAQc0AQczQwQAQ0QsAC68CAgN/AX4jAEEQayIEJAACQAJAAkAgAARAIABBEGsiBSgCAEEBaiEDIAUgAzYCACADRQ0BIAAoAgANAiAAQX82AgAgBCAFNgIMIAQgADYCCCAEIABBEGoiAzYCBCADIAG9IganIAZCIIinEN4JIgNFDQMgAkEARyECAkACQCADKgLIAUMAAAAAXA0AIAMqAswBQwAAAABcDQAgAyoC0AFDAAAAAFsNAQsgA0EANgLQASADQgA3A8gBIAJFDQAgAy0A1AIEQCADIAMoArwCQQRyNgK8AgsgA0EANgLQAiADQQA6ANQCCyAAQQA2AgAgBSAFKAIAQQFrIgA2AgAgAEUEQCAEQQxqEOsMCyAEQRBqJAAPCxCDDwsACxCEDwALQezPwQBBzQBBzNDBABDRCwAL1gECBH8BfiMAQRBrIgIkAAJAAkACQCAABEAgAEEIayIDKAIAIgRBAWohASADIAE2AgAgAUUNASAAKAIAIgFBf0YNAiAAIAE2AgAgAkEIaiIBIABBDGooAgA2AgAgACkCBCEFIAMgBDYCACACIAU3AwBBGEEEEJEOIgBFDQMgAEEANgIIIABCgYCAgBA3AgAgACACKQMANwIMIABBFGogASgCADYCACACQRBqJAAgAEEIag8LEIMPCwALEIQPAAtBBEEYQfjKxAAoAgAiAEHMCCAAGxEAAAAL1gECBH8BfiMAQRBrIgIkAAJAAkACQCAABEAgAEEIayIDKAIAIgRBAWohASADIAE2AgAgAUUNASAAKAIAIgFBf0YNAiAAIAE2AgAgAkEIaiIBIABBFGooAgA2AgAgACkCDCEFIAMgBDYCACACIAU3AwBBGEEEEJEOIgBFDQMgAEEANgIIIABCgYCAgBA3AgAgACACKQMANwIMIABBFGogASgCADYCACACQRBqJAAgAEEIag8LEIMPCwALEIQPAAtBBEEYQfjKxAAoAgAiAEHMCCAAGxEAAAAL1gECBH8BfiMAQRBrIgIkAAJAAkACQCAABEAgAEEIayIDKAIAIgRBAWohASADIAE2AgAgAUUNASAAKAIAIgFBf0YNAiAAIAE2AgAgAkEIaiIBIABBEGooAgA2AgAgACkCCCEFIAMgBDYCACACIAU3AwBBGEEEEJEOIgBFDQMgAEEANgIIIABCgYCAgBA3AgAgACACKQMANwIMIABBFGogASgCADYCACACQRBqJAAgAEEIag8LEIMPCwALEIQPAAtBBEEYQfjKxAAoAgAiAEHMCCAAGxEAAAAL1gECBH8BfiMAQRBrIgIkAAJAAkACQCAABEAgAEEIayIDKAIAIgRBAWohASADIAE2AgAgAUUNASAAKAIAIgFBf0YNAiAAIAE2AgAgAkEIaiIBIABBKGooAgA2AgAgACkCICEFIAMgBDYCACACIAU3AwBBGEEEEJEOIgBFDQMgAEEANgIIIABCgYCAgBA3AgAgACACKQMANwIMIABBFGogASgCADYCACACQRBqJAAgAEEIag8LEIMPCwALEIQPAAtBBEEYQfjKxAAoAgAiAEHMCCAAGxEAAAAL1gECBH8BfiMAQRBrIgIkAAJAAkACQCAABEAgAEEIayIDKAIAIgRBAWohASADIAE2AgAgAUUNASAAKAIAIgFBf0YNAiAAIAE2AgAgAkEIaiIBIABBNGooAgA2AgAgACkCLCEFIAMgBDYCACACIAU3AwBBGEEEEJEOIgBFDQMgAEEANgIIIABCgYCAgBA3AgAgACACKQMANwIMIABBFGogASgCADYCACACQRBqJAAgAEEIag8LEIMPCwALEIQPAAtBBEEYQfjKxAAoAgAiAEHMCCAAGxEAAAAL1gECBH8BfiMAQRBrIgIkAAJAAkACQCAABEAgAEEIayIDKAIAIgRBAWohASADIAE2AgAgAUUNASAAKAIAIgFBf0YNAiAAIAE2AgAgAkEIaiIBIABBGGooAgA2AgAgACkCECEFIAMgBDYCACACIAU3AwBBGEEEEJEOIgBFDQMgAEEANgIIIABCgYCAgBA3AgAgACACKQMANwIMIABBFGogASgCADYCACACQRBqJAAgAEEIag8LEIMPCwALEIQPAAtBBEEYQfjKxAAoAgAiAEHMCCAAGxEAAAAL1gECBH8BfiMAQRBrIgIkAAJAAkACQCAABEAgAEEIayIDKAIAIgRBAWohASADIAE2AgAgAUUNASAAKAIAIgFBf0YNAiAAIAE2AgAgAkEIaiIBIABBJGooAgA2AgAgACkCHCEFIAMgBDYCACACIAU3AwBBGEEEEJEOIgBFDQMgAEEANgIIIABCgYCAgBA3AgAgACACKQMANwIMIABBFGogASgCADYCACACQRBqJAAgAEEIag8LEIMPCwALEIQPAAtBBEEYQfjKxAAoAgAiAEHMCCAAGxEAAAAL1gECBH8BfiMAQRBrIgIkAAJAAkACQCAABEAgAEEIayIDKAIAIgRBAWohASADIAE2AgAgAUUNASAAKAIAIgFBf0YNAiAAIAE2AgAgAkEIaiIBIABBHGooAgA2AgAgACkCFCEFIAMgBDYCACACIAU3AwBBGEEEEJEOIgBFDQMgAEEANgIIIABCgYCAgBA3AgAgACACKQMANwIMIABBFGogASgCADYCACACQRBqJAAgAEEIag8LEIMPCwALEIQPAAtBBEEYQfjKxAAoAgAiAEHMCCAAGxEAAAAL1gECBH8BfiMAQRBrIgIkAAJAAkACQCAABEAgAEEIayIDKAIAIgRBAWohASADIAE2AgAgAUUNASAAKAIAIgFBf0YNAiAAIAE2AgAgAkEIaiIBIABBLGooAgA2AgAgACkCJCEFIAMgBDYCACACIAU3AwBBGEEEEJEOIgBFDQMgAEEANgIIIABCgYCAgBA3AgAgACACKQMANwIMIABBFGogASgCADYCACACQRBqJAAgAEEIag8LEIMPCwALEIQPAAtBBEEYQfjKxAAoAgAiAEHMCCAAGxEAAAALvwEBCH0gAEH////7BzYCDCAAIAIqAhggAioCDCIGIAIqAgAiB0MAAAAAlCIDIAIqAgQiCEMAAAAAlCIEkyIFIAWSIgWUIAcgAioCCCIJQwAAAACUIgogA5MiAyADkiIDlCAIIAQgCpMiBCAEkiIElJOSQwAAAACSkjgCCCAAIAIqAhQgBiADlCAJIASUIAcgBZSTkkMAAAAAkpI4AgQgACACKgIQIAYgBJQgCCAFlCAJIAOUk5JDAAAAAJKSOAIAC68BAQZ9QQAhAiAAIAEqAgwgASoCACIGkyIJIAEqAhwgASoCBCIFkyIHlCABKgIQIAWTIgUgASoCGCAGkyIKlJMiCCAIlCAFIAEqAiAgASoCCCIFkyIGlCABKgIUIAWTIgUgB5STIgcgB5QgBSAKlCAJIAaUkyIGIAaUkpIiBUMAAIAoXgR/IAAgCCAFkSIFlTgCDCAAIAYgBZU4AgggACAHIAWVOAIEQQEFQQALNgIAC8gBAQJ/IwBBEGsiAyQAIAACfwJAIAEoAgQiAkUEQCAAQQI6AAEMAQsgASACQQFrNgIEAkACQCAAAn8gASgCACIBKAIEIgJBA00EQCADQoHKADcDACADEJ8NDAELIAEgAkEEazYCBCABIAEoAgAiAkEEajYCAEEBIQECQCACKAAAIgIOAgIDAAsgA0EBOgAAIAMgAq03AwggA0HIr8EAQZCtwQAQ7woLNgIEQQEMAwtBACEBCyAAIAE6AAELQQALOgAAIANBEGokAAu2AQIDfwF+IAKtIQYgACgCACIDKAIIIQQgAygCACAEa0EHTQRAIAMgBEEIQQFBARDWBiADKAIIIQQLIAMgBEEIaiIANgIIIAMoAgQgBGogBjcAACACBEAgAkECdCEEA0AgASgCACEFIAFBBGohASADIAMoAgAgAGtBA0sEfyAABSADIABBBEEBQQEQ1gYgAygCCAsiAkEEaiIANgIIIAMoAgQgAmogBTYAACAEQQRrIgQNAAsLQQALywECAn8BfiMAQSBrIgIkAAJAIAEoAgQiA0UEQCAAQQA2AgAMAQsgASADQQFrNgIEAkACfyABKAIAIgEoAgQiA0EHTQRAIAJCgcoANwMIIAJBCGoQnw0MAQsgASADQQhrNgIEIAEgASgCACIBQQhqNgIAIAEpAAAiBEKAgICAEFQNASACQQE6AAggAiAENwMQIAJBCGogAkEfakGMrMEAEO8KCyEBIABBAjYCACAAIAE2AgQMAQsgACAEPgIEIABBATYCAAsgAkEgaiQAC9kCAgN/A30jAEHQAGsiAiQAIAJBEGoiAUEBOgA8IAFCgICAgKDh9ZE8NwIAIAFC25+k+rP7w6Q/NwIwIAFBAjYCCCABQZfuxsYDNgI4IAH9DM3MTD4AAAAAAACAPwAAAAD9CwIgIAFBADYCHCACQQxqIAJBPGooAgA2AgAgAiACKQI0NwIEIAItAEwhAyACKgJAIQQgAioCRCEFIAIqAkghBkHoAEEEEJEOIgFFBEBBBEHoAEH4ysQAKAIAIgFBzAggARsRAAAACyABQQI2AiggAUECNgIUIAEgADgCECAB/QwBAAAAAQAAAAAAAAABAAAA/QsCACABIAL9AAIA/QsCLCABQoCAgIDAADcCTCABIAM6AEggASAGOAJEIAEgBTgCQCABIAQ4AjwgAf0MAAAAAAAAAAAAAAAAAAAAAP0LAlQgAUHkAGpBADsBACACQdAAaiQAIAFBCGoLwgECA38BfiMAQRBrIgQkAAJAAkACQCAABEAgAEEQayIFKAIAQQFqIQMgBSADNgIAIANFDQEgACgCAA0CIABBfzYCACAEIAU2AgwgBCAANgIIIAQgAEEQaiIDNgIEIAMgAb0iBqcgBkIgiKcQ3gkiA0UNAyADIAI4AiggAEEANgIAIAUgBSgCAEEBayIANgIAIABFBEAgBEEMahDrDAsgBEEQaiQADwsQgw8LAAsQhA8AC0Hsz8EAQc0AQczQwQAQ0QsAC8IBAgN/AX4jAEEQayIEJAACQAJAAkAgAARAIABBEGsiBSgCAEEBaiEDIAUgAzYCACADRQ0BIAAoAgANAiAAQX82AgAgBCAFNgIMIAQgADYCCCAEIABBEGoiAzYCBCADIAG9IganIAZCIIinEN4JIgNFDQMgAyACOAJoIABBADYCACAFIAUoAgBBAWsiADYCACAARQRAIARBDGoQ6wwLIARBEGokAA8LEIMPCwALEIQPAAtB7M/BAEHNAEHM0MEAENELAAvCAQIDfwF+IwBBEGsiBCQAAkACQAJAIAAEQCAAQRBrIgUoAgBBAWohAyAFIAM2AgAgA0UNASAAKAIADQIgAEF/NgIAIAQgBTYCDCAEIAA2AgggBCAAQRBqIgM2AgQgAyABvSIGpyAGQiCIpxDeCSIDRQ0DIAMgAjgCbCAAQQA2AgAgBSAFKAIAQQFrIgA2AgAgAEUEQCAEQQxqEOsMCyAEQRBqJAAPCxCDDwsACxCEDwALQezPwQBBzQBBzNDBABDRCwALwwECA38BfiMAQRBrIgQkAAJAAkACQCAABEAgAEEQayIFKAIAQQFqIQMgBSADNgIAIANFDQEgACgCAA0CIABBfzYCACAEIAU2AgwgBCAANgIIIAQgAEEQaiIDNgIEIAMgAb0iBqcgBkIgiKcQ3gkiA0UNAyADIAI2AsACIABBADYCACAFIAUoAgBBAWsiADYCACAARQRAIARBDGoQ6wwLIARBEGokAA8LEIMPCwALEIQPAAtB7M/BAEHNAEHM0MEAENELAAu3AQIDfwF+IwBBEGsiAyQAAkACQCAABEAgAEEQayIEKAIAQQFqIQIgBCACNgIAIAJFDQEgACgCACICQX9GDQIgACACQQFqNgIAIAMgBDYCDCADIAA2AgggAyAAQRBqIgI2AgQgAiABvSIFpyAFQiCIpxC5DCECIAAgACgCAEEBazYCACAEIAQoAgBBAWsiADYCACAARQRAIANBDGoQ6wwLIANBEGokACACQQBHDwsQgw8LAAsQhA8AC8MBAgN/AX4jAEEQayIEJAACQAJAAkAgAARAIABBCGsiBSgCAEEBaiEDIAUgAzYCACADRQ0BIAAoAgANAiAAQX82AgAgBCAFNgIMIAQgADYCCCAEIABBBGoiAzYCBCADIAG9IganIAZCIIinEN8JIgNFDQMgAyACOAKQASAAQQA2AgAgBSAFKAIAQQFrIgA2AgAgAEUEQCAEQQxqEO4MCyAEQRBqJAAPCxCDDwsACxCEDwALQdzQwQBBzABBuNHBABDRCwALwgECA38BfiMAQRBrIgQkAAJAAkACQCAABEAgAEEIayIFKAIAQQFqIQMgBSADNgIAIANFDQEgACgCAA0CIABBfzYCACAEIAU2AgwgBCAANgIIIAQgAEEEaiIDNgIEIAMgAb0iBqcgBkIgiKcQ3wkiA0UNAyADIAI4AmggAEEANgIAIAUgBSgCAEEBayIANgIAIABFBEAgBEEMahDuDAsgBEEQaiQADwsQgw8LAAsQhA8AC0Hc0MEAQcwAQbjRwQAQ0QsAC8IBAgN/AX4jAEEQayIEJAACQAJAAkAgAARAIABBCGsiBSgCAEEBaiEDIAUgAzYCACADRQ0BIAAoAgANAiAAQX82AgAgBCAFNgIMIAQgADYCCCAEIABBBGoiAzYCBCADIAG9IganIAZCIIinEN8JIgNFDQMgAyACOAJkIABBADYCACAFIAUoAgBBAWsiADYCACAARQRAIARBDGoQ7gwLIARBEGokAA8LEIMPCwALEIQPAAtB3NDBAEHMAEG40cEAENELAAvDAQIDfwF+IwBBEGsiBCQAAkACQAJAIAAEQCAAQQhrIgUoAgBBAWohAyAFIAM2AgAgA0UNASAAKAIADQIgAEF/NgIAIAQgBTYCDCAEIAA2AgggBCAAQQRqIgM2AgQgAyABvSIGpyAGQiCIpxDfCSIDRQ0DIAMgAjgClAEgAEEANgIAIAUgBSgCAEEBayIANgIAIABFBEAgBEEMahDuDAsgBEEQaiQADwsQgw8LAAsQhA8AC0Hc0MEAQcwAQbjRwQAQ0QsAC+MBAgR/AX4jAEEQayIEJAACQAJAAkAgAARAIABBCGsiBSgCAEEBaiEDIAUgAzYCACADRQ0BIAAoAgANAiAAQX82AgAgBCAFNgIMIAQgADYCCCAEIABBBGoiAzYCBCADIAG9IgenIAdCIIinEN8JIgZFDQMjAEEQayIDJAAgA0EANgIIIAMgAjgCDCAGIANBCGoQ9QUgA0EQaiQAIABBADYCACAFIAUoAgBBAWsiADYCACAARQRAIARBDGoQ7gwLIARBEGokAA8LEIMPCwALEIQPAAtB3NDBAEHMAEG40cEAENELAAvjAQIEfwF+IwBBEGsiBCQAAkACQAJAIAAEQCAAQQhrIgUoAgBBAWohAyAFIAM2AgAgA0UNASAAKAIADQIgAEF/NgIAIAQgBTYCDCAEIAA2AgggBCAAQQRqIgM2AgQgAyABvSIHpyAHQiCIpxDfCSIGRQ0DIwBBEGsiAyQAIANBATYCCCADIAI4AgwgBiADQQhqEPUFIANBEGokACAAQQA2AgAgBSAFKAIAQQFrIgA2AgAgAEUEQCAEQQxqEO4MCyAEQRBqJAAPCxCDDwsACxCEDwALQdzQwQBBzABBuNHBABDRCwALtwECA38BfiMAQRBrIgMkAAJAAkAgAARAIABBCGsiBCgCAEEBaiECIAQgAjYCACACRQ0BIAAoAgAiAkF/Rg0CIAAgAkEBajYCACADIAQ2AgwgAyAANgIIIAMgAEEEaiICNgIEIAIgAb0iBacgBUIgiKcQugwhAiAAIAAoAgBBAWs2AgAgBCAEKAIAQQFrIgA2AgAgAEUEQCADQQxqEO4MCyADQRBqJAAgAkEARw8LEIMPCwALEIQPAAu+AQEEfyMAQRBrIgEkAAJAAkAgAARAIABBCGsiAygCAEEBaiECIAMgAjYCACACRQ0BIAAoAgAiAkF/Rg0CIAAgAkEBajYCACABIAM2AgggASAANgIEIAEgAEEIajYCACABIAAoApgCIgIQHSIENgIMIAFBDGogACgClAIgAhDKCSAAIAAoAgBBAWs2AgAgAyADKAIAQQFrIgA2AgAgAEUEQCABQQhqEPAMCyABQRBqJAAgBA8LEIMPCwALEIQPAAu+AQEEfyMAQRBrIgEkAAJAAkAgAARAIABBCGsiAygCAEEBaiECIAMgAjYCACACRQ0BIAAoAgAiAkF/Rg0CIAAgAkEBajYCACABIAM2AgggASAANgIEIAEgAEEIajYCACABIAAoAqQCIgIQHSIENgIMIAFBDGogACgCoAIgAhDKCSAAIAAoAgBBAWs2AgAgAyADKAIAQQFrIgA2AgAgAEUEQCABQQhqEPAMCyABQRBqJAAgBA8LEIMPCwALEIQPAAv+AQICewF/IwBB4ABrIgMkACADQQxqIgYgARDtBSADIAP9XQI0IAP9CQI8/Q0AAQIDBAUGBxgZGhsAAQIDIgUgAv1dAgAgAv0JAgj9DQABAgMEBQYHGBkaGwABAgP95gEiBP0fAjgCPCADIAT9HwE4AjggAyAE/R8AOAI0IAMgBCAF/ecBIgQgA/0AAkD95gH9CwJAIAMgBP0fASADKgJQlDgCUCADIAT9HwIgAyoCVJQ4AlRB1ABBBBCRDiIBBEAgASAGQdQA/AoAACAAQeiywwA2AgQgACABNgIAIANB4ABqJAAPC0EEQdQAQfjKxAAoAgAiAEHMCCAAGxEAAAAL7wEBAn0gAEEANgIYIABBADYCECAA/QwAAAAAAAAAAAAAAAAAAIA//QsCACAAIAEqAgAiA0MAAAC/lDgCFCAAQwAAAABDAACAPyACIAMgASoCBCICIAKUIgRD2w9JQJSUIgIgApJDAABAQJWUIgKVIAJDAAAAAFsbOAIcIABDAAAAAEMAAIA/IARDAABAQJQiBEMAAKBBlSADIAOUQwAAgECUQwAAQECUQwAAoEKVkiAClCIDlSADQwAAAABbGyIDOAIoIABDAAAAAEMAAIA/IARDAAAgQZUgApQiApUgAkMAAAAAWxs4AiQgACADOAIgC8YBAgV/AX4jAEEwayICJAAgASgCAEGAgICAeEYEQCABKAIMIQMgAkEMaiIFQQhqIgZBADYCACACQoCAgIAQNwIMIAJBGGoiBEEIaiADKAIAIgNBCGopAgA3AwAgBEEQaiADQRBqKQIANwMAIAIgAykCADcDGCAFQdiJxAAgBBC4AxogAkEIaiAGKAIAIgQ2AgAgAiACKQIMIgc3AwAgAUEIaiAENgIAIAEgBzcCAAsgAEHMjcQANgIEIAAgATYCACACQTBqJAALkwIBAn8jAEEgayIFJABBiMvEAEGIy8QAKAIAIgZBAWo2AgACQAJ/QQAgBkEASA0AGkEBQejOxAAtAAANABpB6M7EAEEBOgAAQeTOxABB5M7EACgCAEEBajYCAEECCyIGQQJHBEAgBkEBcUUNASAFQQhqIAAgASgCGBEAAAwBC0H8ysQAKAIAIgZBAEgNAEH8ysQAIAZBAWo2AgBB/MrEAEGAy8QAKAIABH8gBSAAIAEoAhQRAAAgBSAEOgAdIAUgAzoAHCAFIAI2AhggBSAFKQMANwIQQYDLxAAoAgAgBUEQakGEy8QAKAIAKAIUEQAAQfzKxAAoAgBBAWsFIAYLNgIAQejOxABBADoAACADRQ0AAAsAC/IBAgN/AX4jAEEQayIDJAACQAJAAkAgAARAIABBEGsiBCgCAEEBaiECIAQgAjYCACACRQ0BIAAoAgANAiAAQX82AgAgAyAENgIMIAMgADYCCCADIABBEGoiAjYCBCACIAG9IgWnIAVCIIinEN4JIgJFDQMgAkEBOgDUAiACQgA3A3AgAiACKgLMAjgC0AIgAkH4AGr9DAAAAAAAAAAAAAAAAAAAAAD9CwMAIABBADYCACAEIAQoAgBBAWsiADYCACAARQRAIANBDGoQ6wwLIANBEGokAA8LEIMPCwALEIQPAAtB7M/BAEHNAEHM0MEAENELAAvNAQEEfwJAAkACQCAABEAgAEEIayIDKAIAIgVBAWohAiADIAI2AgAgAkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgAgACgCBCIEKAIIIAFNBEAgACACNgIAIAMgBTYCAEEADwsgBCgCBCEEIAAgAjYCACADIAU2AgBBEEEEEJEOIgBFDQMgAEEANgIIIABCgYCAgBA3AgAgACAEIAFBqAFsajYCDCAAQQhqDwsQgw8LAAsQhA8AC0EEQRBB+MrEACgCACIAQcwIIAAbEQAAAAumAQEJfSACKgIEIgkgASoCACIGlCABKgIEIgcgAioCACIKlJMiBCAEkiEEIAEqAggiCCAKlCACKgIIIgMgBpSTIgUgBZIhBSAAIAMgASoCDCILIASUIAYgBZQgByAHIAOUIAggCZSTIgMgA5IiA5STkpI4AgggACAJIAsgBZQgCCADlCAGIASUk5KSOAIEIAAgCiALIAOUIAcgBJQgCCAFlJOSkjgCAAutAQEFfSACKgIAIgMgASoCGJQgAioCBCIEIAEqAhyUkiACKgIIIgUgASoCIJSSIQYgAUEYaiECAkAgASoCACADlCABKgIEIASUkiABKgIIIAWUkiIHIAMgASoCDJQgBCABKgIQlJIgBSABKgIUlJIiA15FBEAgAUEMaiACIAMgBl4bIQIMAQsgBiAHXUUNACABIQILIAAgAikCADcCACAAQQhqIAJBCGooAgA2AgALugEBBH8jAEEQayIDJAACQAJAIAAEQCAAQQhrIgQoAgAiBkEBaiEFIAQgBTYCACAFRQ0BIAAoAgANAiADIAQ2AgwgAyAANgIIIAMgAEEEajYCBAJAIAAoAgwgAU0EQCAAQQA2AgAgBCAGNgIADAELIAAoAgggAUHUAWxqIAI4AoABIAQoAgAhASAAQQA2AgAgBCABQQFrIgA2AgAgAA0AIANBDGoQvgoLIANBEGokAA8LEIMPCwALEIQPAAu6AQEEfyMAQRBrIgMkAAJAAkAgAARAIABBCGsiBCgCACIGQQFqIQUgBCAFNgIAIAVFDQEgACgCAA0CIAMgBDYCDCADIAA2AgggAyAAQQRqNgIEAkAgACgCDCABTQRAIABBADYCACAEIAY2AgAMAQsgACgCCCABQdQBbGogAjgChAEgBCgCACEBIABBADYCACAEIAFBAWsiADYCACAADQAgA0EMahC+CgsgA0EQaiQADwsQgw8LAAsQhA8AC7oBAQR/IwBBEGsiAyQAAkACQCAABEAgAEEIayIEKAIAIgZBAWohBSAEIAU2AgAgBUUNASAAKAIADQIgAyAENgIMIAMgADYCCCADIABBBGo2AgQCQCAAKAIMIAFNBEAgAEEANgIAIAQgBjYCAAwBCyAAKAIIIAFB1AFsaiACOAKIASAEKAIAIQEgAEEANgIAIAQgAUEBayIANgIAIAANACADQQxqEL4KCyADQRBqJAAPCxCDDwsACxCEDwALugEBBH8jAEEQayIDJAACQAJAIAAEQCAAQQhrIgQoAgAiBkEBaiEFIAQgBTYCACAFRQ0BIAAoAgANAiADIAQ2AgwgAyAANgIIIAMgAEEEajYCBAJAIAAoAgwgAU0EQCAAQQA2AgAgBCAGNgIADAELIAAoAgggAUHUAWxqIAI4AowBIAQoAgAhASAAQQA2AgAgBCABQQFrIgA2AgAgAA0AIANBDGoQvgoLIANBEGokAA8LEIMPCwALEIQPAAu6AQEEfyMAQRBrIgMkAAJAAkAgAARAIABBCGsiBCgCACIGQQFqIQUgBCAFNgIAIAVFDQEgACgCAA0CIAMgBDYCDCADIAA2AgggAyAAQQRqNgIEAkAgACgCDCABTQRAIABBADYCACAEIAY2AgAMAQsgACgCCCABQdQBbGogAjgCkAEgBCgCACEBIABBADYCACAEIAFBAWsiADYCACAADQAgA0EMahC+CgsgA0EQaiQADwsQgw8LAAsQhA8AC7oBAQR/IwBBEGsiAyQAAkACQCAABEAgAEEIayIEKAIAIgZBAWohBSAEIAU2AgAgBUUNASAAKAIADQIgAyAENgIMIAMgADYCCCADIABBBGo2AgQCQCAAKAIMIAFNBEAgAEEANgIAIAQgBjYCAAwBCyAAKAIIIAFB1AFsaiACOAKUASAEKAIAIQEgAEEANgIAIAQgAUEBayIANgIAIAANACADQQxqEL4KCyADQRBqJAAPCxCDDwsACxCEDwALugEBBH8jAEEQayIDJAACQAJAIAAEQCAAQQhrIgQoAgAiBkEBaiEFIAQgBTYCACAFRQ0BIAAoAgANAiADIAQ2AgwgAyAANgIIIAMgAEEEajYCBAJAIAAoAgwgAU0EQCAAQQA2AgAgBCAGNgIADAELIAAoAgggAUHUAWxqIAI4AqwBIAQoAgAhASAAQQA2AgAgBCABQQFrIgA2AgAgAA0AIANBDGoQvgoLIANBEGokAA8LEIMPCwALEIQPAAu6AQEEfyMAQRBrIgMkAAJAAkAgAARAIABBCGsiBCgCACIGQQFqIQUgBCAFNgIAIAVFDQEgACgCAA0CIAMgBDYCDCADIAA2AgggAyAAQQRqNgIEAkAgACgCDCABTQRAIABBADYCACAEIAY2AgAMAQsgACgCCCABQdQBbGogAjgCwAEgBCgCACEBIABBADYCACAEIAFBAWsiADYCACAADQAgA0EMahC+CgsgA0EQaiQADwsQgw8LAAsQhA8AC7oBAQR/IwBBEGsiAyQAAkACQCAABEAgAEEIayIEKAIAIgZBAWohBSAEIAU2AgAgBUUNASAAKAIADQIgAyAENgIMIAMgADYCCCADIABBBGo2AgQCQCAAKAIMIAFNBEAgAEEANgIAIAQgBjYCAAwBCyAAKAIIIAFB1AFsaiACOAK4ASAEKAIAIQEgAEEANgIAIAQgAUEBayIANgIAIAANACADQQxqEL4KCyADQRBqJAAPCxCDDwsACxCEDwALugEBBH8jAEEQayIDJAACQAJAIAAEQCAAQQhrIgQoAgAiBkEBaiEFIAQgBTYCACAFRQ0BIAAoAgANAiADIAQ2AgwgAyAANgIIIAMgAEEEajYCBAJAIAAoAgwgAU0EQCAAQQA2AgAgBCAGNgIADAELIAAoAgggAUHUAWxqIAI4ArwBIAQoAgAhASAAQQA2AgAgBCABQQFrIgA2AgAgAA0AIANBDGoQvgoLIANBEGokAA8LEIMPCwALEIQPAAu6AQEEfyMAQRBrIgMkAAJAAkAgAARAIABBCGsiBCgCACIGQQFqIQUgBCAFNgIAIAVFDQEgACgCAA0CIAMgBDYCDCADIAA2AgggAyAAQQRqNgIEAkAgACgCDCABTQRAIABBADYCACAEIAY2AgAMAQsgACgCCCABQdQBbGogAjgCmAEgBCgCACEBIABBADYCACAEIAFBAWsiADYCACAADQAgA0EMahC+CgsgA0EQaiQADwsQgw8LAAsQhA8AC7oBAQR/IwBBEGsiAyQAAkACQCAABEAgAEEIayIEKAIAIgZBAWohBSAEIAU2AgAgBUUNASAAKAIADQIgAyAENgIMIAMgADYCCCADIABBBGo2AgQCQCAAKAIMIAFNBEAgAEEANgIAIAQgBjYCAAwBCyAAKAIIIAFB1AFsaiACOAKcASAEKAIAIQEgAEEANgIAIAQgAUEBayIANgIAIAANACADQQxqEL4KCyADQRBqJAAPCxCDDwsACxCEDwALzwECAX8GfSMAQdABayIDJAAgA/0MAAAAAAAAAAAAAAAAAAAAAP0LBMABIAP9DAAAAAABAAAAAgAAAAMAAAD9CwQQIANBIGpBAEGgAfwLACADIAAoAgQgACgCCCADQRBqIAEgAhAyIAEqAgQhBCADKgIEIQYgASoCACEFIAMqAgAhByABKgIIIQggAyoCCCEJIAMtAAwhACADQdABaiQAIAcgBZMiBSAFlCAGIASTIgQgBJSSIAkgCJMiBCAElJKRIgQgBIwgBCAAQQFxGyACGwvJAQEBfyMAQRBrIggkACAAKAIAIAFBBiAAKAIEKAIMEQUAIQEgCEEAOgANIAggAToADCAIIAA2AgggCEEIaiACQQQgAyAEEKIGIAVBBSAGIAcQogYhASAILQANIgIgCC0ADCIDciEAAkAgAkEBRw0AIANBAXENACABKAIAIgAtAApBgAFxRQRAIAAoAgBBy7HEAEECIAAoAgQoAgwRBQAhAAwBCyAAKAIAQcqxxABBASAAKAIEKAIMEQUAIQALIAhBEGokACAAQQFxC7QBAQZ/IwBBEGsiBCQAIARBCGogAigCCCIFIAIoAgQiBhDuCiAEKAIIIQMgBCgCDCIIBH8gCCADEJEOBSADCyIHBEAgBUEBayEDIAdCgYCAgBA3AgAgBgRAIAcgA0F4cWpBCGogASAG/AoAAAsgAyAGakEAIAVrcSIDBEAgASADIAUQ6A4LIAAgAjYCBCAAIAc2AgAgBEEQaiQADwsgAyAIQfjKxAAoAgAiAEHMCCAAGxEAAAALygQCCX8BfiMAQYADayIGJAACQAJAIAAEQCAAQQhrIgkoAgBBAWohAyAJIAM2AgAgA0UNASAAKAIADQIgAEF/NgIAIAYgCTYCDCAGIAA2AgggBiAAQQhqIgM2AgQgBkEQaiEKIAG9IgynIQggDEIgiKchBCACQQBHIQIjAEHwAmsiCyQAAkACQAJAIAggAygCTE8NACADKAJIIAhBDGxqIgUoAgBBAUcNACAEIAUoAgRHDQAgBUEANgIAIAUoAgghByAFIAMpAjw3AgQgAyAINgJAIANBATYCPCADIAMoAlBBAWo2AlAgAyADKAJUQQFrNgJUAkAgAygCLCAHSwRAIANBGGohCCACDQEMAwsgCkECOgC9AgwDCyADKAIoIAdBgANsaiIEKAL8AiEFIAMoAiAiAiAEKAL4AiIESwRAIAMgAygCHCAEQQR0aiICKAIAIAIoAgQQ2wMgAygCICECCyACIAVNDQEgAyADKAIcIAVBBHRqIgIoAgAgAigCBBDbAwwBCyAKQQI6AL0CDAELIAsgCCAHELcDIAMoAiwgB0sEQAJAAkAgAygCKCAHQYADbGoiBCgC6AIiAiADKAJMTw0AIAMoAkggAkEMbGoiAigCAEEBRw0AIAIoAgQgBCgC7AJGDQELQdCLwgBBE0HAwcIAENELAAsgAiAHNgIICyAKIAtB8AL8CgAACyALQfACaiQAIABBADYCACAJIAkoAgBBAWsiADYCACAARQRAIAZBDGoQ7wwLIAZBgANqJAAPCxCDDwsACxCEDwALkQUCD38BfiMAQRBrIgUkAAJAAkAgAARAIABBCGsiBygCAEEBaiEDIAcgAzYCACADRQ0BIAAoAgAiA0F/Rg0CIAAgA0EBajYCACAFIAc2AgggBSAANgIEIAUgAEEIaiIDNgIAIAUgAjYCDCAFQQxqIQ8jAEEQayIEJAAgBEGBATYCCCABvSISpyICIAMoAjhJBEAgAygCNCACQQN0aiICQQRqQQAgAigCACASQiCIp0YbIQYLIANBGGohCSADKAIcIRAgAygCICERIAMoAiwhDSADKAIoIQpBAiEOAkACQANAIA5BAEchAwJ+AkADQAJAIANBAXENACANIBKnIgNLDQIgEkIgiKchAgNAIA0gAiIDTQ0BIAogA0GAA2xqIgsoAvQCIQIgCygC+AIgCEYNAAsgEkL/////D4MgAq1CIIaEDAMLIAYEQCAGKAIAIQhBACEOQn8hEkEAIQZBACEDIAggEU8NASAQIAhBBHRqKQIIIRIMAQsLIAQoAggiAkGDAUsEQCACEAILIARBEGokAAwECyAKIANBgANsajUC8AIgEkKAgICAcIOECyESIAkoAhQgA0sEQCADQYADbCILIAkoAhBqIgMoAvgCIgIgCSgCCCIMTw0CIANB+AJqKAIEIgIgDE8EQCACIAxBnMTBABCFCwALIAQgCiALaisD6AIQADYCDCAEIA8gBEEIaiAEQQxqEMAMIAQoAgQiAkGEAU8EQCACEAILIAQoAgwiAkGEAUkNASACEAIMAQsLQfzDwQAQ8g4ACyACIAxBjMTBABCFCwALIAAgACgCAEEBazYCACAHIAcoAgBBAWsiADYCACAARQRAIAVBCGoQ7wwLIAVBEGokAA8LEIMPCwALEIQPAAuOBQIOfwF+IwBBEGsiBSQAAkACQCAABEAgAEEIayIIKAIAQQFqIQMgCCADNgIAIANFDQEgACgCACIDQX9GDQIgACADQQFqNgIAIAUgCDYCCCAFIAA2AgQgBSAAQQhqIgM2AgAgBSACNgIMIAVBDGohDiMAQRBrIgQkACAEQYEBNgIIIAG9IhGnIgIgAygCOEkEQCADKAI0IAJBFGxqIgJBBGpBACACKAIAIBFCIIinRhshBgsgA0EYaiEJIAMoAhwhDyADKAIgIRAgAygCLCELIAMoAighDEECIQ0CQAJAA0AgDUEARyEDAn4CQANAAkAgA0EBcQ0AIAsgEaciA0sNAiARQiCIpyECA0AgCyACIgNNDQEgDCADQQR0aiIHKAIEIQIgBygCCCAKRg0ACyARQv////8PgyACrUIghoQMAwsgBgRAIAZBCGohAkEAIQ1CfyERQQAhBkEAIQMgECACKAIAIgpNDQEgDyAKQQR0aikCCCERDAELCyAEKAIIIgJBgwFLBEAgAhACCyAEQRBqJAAMBAsgDCADQQR0ajUCACARQoCAgIBwg4QLIREgCSgCFCADSwRAIAkoAhAgA0EEdGoiAygCCCICIAkoAggiB08NAiADKAIMIgIgB08EQCACIAdBnMTBABCFCwALIAQgCSgCBCACQQR0aisCABAANgIMIAQgDiAEQQhqIARBDGoQwAwgBCgCBCICQYQBTwRAIAIQAgsgBCgCDCICQYQBSQ0BIAIQAgwBCwtB/MPBABDyDgALIAIgB0GMxMEAEIULAAsgACAAKAIAQQFrNgIAIAggCCgCAEEBayIANgIAIABFBEAgBUEIahDqDAsgBUEQaiQADwsQgw8LAAsQhA8AC+oDAgN/AX4jAEEQayIEJAACQAJAIAAEQCAAQQhrIgMoAgBBAWohAiADIAI2AgAgAkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgAgBCADNgIMIAQgADYCCCAEIABBBGoiAjYCBAJAAkAgAiABvSIFpyAFQiCIpxC6DCICBEACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAJBQGsoAgAgAkHEAGooAgAiAigCCEEBa0F4cWpBCGogAigCoAERBAAiAkH/AXFBBGsOEA8AEAECAwQFBgcICQoLDA0QC0ESIQIMDwtBBCECDA4LQREhAgwNC0EHIQIMDAtBCCECDAsLQQkhAgwKC0EKIQIMCQtBCyECDAgLQQwhAgwHC0ENIQIMBgtBDiECDAULQQ8hAgwEC0EQIQIMAwsjAEEQayIAJAAgAEGg1cEANgIMIABBFDYCCCAAQYzVwQA2AgQjAEEQayICJAAgAiAAQQRqIgApAgA3AgggAkEIakGkjsQAIAAoAghBAUEAEPcIAAtB3NDBAEHMAEGo0cEAENELAAtBBSECCyAAIAAoAgBBAWs2AgAgAyADKAIAQQFrIgM2AgAgAkH/AXEhACADRQRAIARBDGoQ7gwLIARBEGokACAADwsQgw8LAAsQhA8AC6IBAQd9An0gAioCACIEIASUIAIqAgQiCSAJlJIgAioCCCIDIAOUkpEhBUMAAAAAIAQgBZUiBCAElCADIAWVIgMgA5SSIgZDAAAAAFsNABogAyAGkSIHlSABKgIEIgaUIQggBCAHlSAGlAshByAAIAggAyABKgIIIgOUkjgCCCAAIAEqAgAgCSAFlSIFmCAFIAOUkjgCBCAAIAcgBCADlJI4AgAL7wMBC38jAEEQayIEJAACQAJAIAAEQCAAQQhrIgYoAgBBAWohAiAGIAI2AgAgAkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgAgBCAGNgIIIAQgADYCBCAEIABBCGoiAjYCACAEIAE2AgwgBEEMaiEJIwBBEGsiAyQAIANBgQE2AggCQCACKAI4IgFFDQAgAigCNCEFIAFBFGxBFGshByACKAJIIQogAigCTCELA0ACQAJAIAUoAgAiDEF/RwRAIAVBEGooAgAiAg0BCyAHRQ0DDAELAkACQCAFQQRqKAIAIgEgC08NACAKIAFBpAJsaiIBKAIAQYCAgIB4Rg0AIAEoAqACIAVBCGooAgBHDQAgAiABKAIITw0BIAMgCK0gDK1CIIaEvxAANgIMIAMgCSADQQhqIANBDGoQwAwgAygCBCIBQYQBTwRAIAEQAgsgAygCDCIBQYQBTwRAIAEQAgsgBw0CDAQLQZGAwABBE0HQwsEAENELAAtB4MLBABDyDgALIAVBFGohBSAHQRRrIQcgCEEBaiEIDAALAAsgAygCCCIBQYQBTwRAIAEQAgsgA0EQaiQAIAAgACgCAEEBazYCACAGIAYoAgBBAWsiADYCACAARQRAIARBCGoQ6gwLIARBEGokAA8LEIMPCwALEIQPAAvoAgIGfwF+IwBBEGsiAyQAAkACQCAABEAgAEEQayIEKAIAQQFqIQIgBCACNgIAIAJFDQEgACgCACICQX9GDQIgACACQQFqNgIAIAMgBDYCCCADIAA2AgQgAyAAQRBqIgI2AgAgAyABNgIMIANBDGohByMAQRBrIgEkACABQYEBNgIIIAIoAowDQYADbCEFIAIoAogDIQIDQAJAAkAgBQRAIAIoAgBFDQEgASAIIAJBBGo1AgBCIIZ8vxAANgIMIAEgByABQQhqIAFBDGoQwAwgASgCBCIGQYQBTwRAIAYQAgsgASgCDCIGQYQBSQ0BIAYQAgwBCyABKAIIIgJBhAFPBEAgAhACCyABQRBqJAAMAQsgAkGAA2ohAiAFQYADayEFIAhCAXwhCAwBCwsgACAAKAIAQQFrNgIAIAQgBCgCAEEBayIANgIAIABFBEAgA0EIahDrDAsgA0EQaiQADwsQgw8LAAsQhA8AC+YCAgZ/AX4jAEEQayIDJAACQAJAIAAEQCAAQQhrIgQoAgBBAWohAiAEIAI2AgAgAkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgAgAyAENgIIIAMgADYCBCADIABBBGoiAjYCACADIAE2AgwgA0EMaiEHIwBBEGsiASQAIAFBgQE2AgggAigCEEGwAWwhBSACKAIMIQIDQAJAAkAgBQRAIAIoAgBFDQEgASAIIAJBBGo1AgBCIIZ8vxAANgIMIAEgByABQQhqIAFBDGoQwAwgASgCBCIGQYQBTwRAIAYQAgsgASgCDCIGQYQBSQ0BIAYQAgwBCyABKAIIIgJBhAFPBEAgAhACCyABQRBqJAAMAQsgAkGwAWohAiAFQbABayEFIAhCAXwhCAwBCwsgACAAKAIAQQFrNgIAIAQgBCgCAEEBayIANgIAIABFBEAgA0EIahDuDAsgA0EQaiQADwsQgw8LAAsQhA8AC6YBACMAQRBrIgMkACAAKAIAIQAgA0GBATYCCCADIAGtIAKtQiCGhL8QADYCDCADIAAgA0EIaiADQQxqEMAMQQEhAiADKAIEIQACQAJAIAMoAgBBAXFFBEAgABABQQBHIQIgAEGDAUsNAQwCCyAAQYQBSQ0BCyAAEAILIAMoAgwiAEGEAU8EQCAAEAILIAMoAggiAEGEAU8EQCAAEAILIANBEGokACACC6YBAgN/AX4jAEEQayIDJAACQAJAIAAEQCAAQQhrIgQoAgBBAWohBSAEIAU2AgAgBUUNASAAKAIADQIgAEF/NgIAIAMgBDYCDCADIAA2AgggAyAAQQhqIgU2AgQgBSABvSIGpyAGQiCIpyACQQBHEDEgAEEANgIAIAQgBCgCAEEBayIANgIAIABFBEAgA0EMahDqDAsgA0EQaiQADwsQgw8LAAsQhA8AC5UCAQF/QbABQQgQkQ4iAEUEQEEIQbABQfjKxAAoAgAiAEHMCCAAGxEAAAALIABCADcDMCAAQoCAgIDAADcDKCAAQgQ3AyAgAEIANwMYIABCgICAgIAINwMQIABBADYCCCAAQoGAgIAQNwMAIABCgICAgMAANwOQASAAQgA3A4gBIABCgICAgMAANwOAASAAQgQ3A3ggAEIANwNwIABCgICAgMAANwNoIABCEDcDYCAAQgA3A1ggAEKAgICAgAg3A1AgAEKJ2bnijtO+lwg3A0ggAEHgzcEAKQMANwM4IABBQGtB6M3BACkDADcDACAAQagBakEAOgAAIAD9DAAAAAAAAAAAAAAAAAAAAAD9CwOYASAAQQhqC6QBAQR/IAAoAgAhAiAAIAEQtggCQCAAKAIIIgQgAiAAKAIMIgFrTQ0AIAAoAgAhBSABIAIgBGsiAWshAwJAIAEgA0sEQCAFIAJrIANPDQELIAUgAWshAiABQQJ0IgEEQCAAKAIEIgMgAkECdGogAyAEQQJ0aiAB/AoAAAsgACACNgIIDwsgA0ECdCIBRQ0AIAAoAgQiACACQQJ0aiAAIAH8CgAACwu+AQEBfyMAQRBrIgUkACAAKAIAIAFBCCAAKAIEKAIMEQUAIQEgBUEAOgANIAUgAToADCAFIAA2AgggBUEIaiACQQYgAyAEEKIGIQEgBS0ADSICIAUtAAwiA3IhAAJAIAJBAUcNACADQQFxDQAgASgCACIALQAKQYABcUUEQCAAKAIAQcuxxABBAiAAKAIEKAIMEQUAIQAMAQsgACgCAEHKscQAQQEgACgCBCgCDBEFACEACyAFQRBqJAAgAEEBcQuuAQEBfyMAQRBrIgYkAAJAIAEEQCAGQQRqIAEgAyAEIAUgAigCEBEHAAJAIAYoAgQiAiAGKAIMIgFNBEAgBigCCCEFDAELIAJBAnQhAiAGKAIIIQMgAUUEQEEEIQUgAyACQQQQ6A4MAQsgAyACQQQgAUECdCICEPINIgVFDQILIAAgATYCBCAAIAU2AgAgBkEQaiQADwtB4MzCAEEyEIIPAAtBBCACQdDMwgAQ1w0AC6oBAwN/AX4BfAJAAkAgAQRAIAFBCGsiBCgCACIFQQFqIQMgBCADNgIAIANFDQEgASgCACIDQX9GDQIgASADQQFqNgIAAkAgASgCDCACTQ0AIAEoAgggAkHUAWxqIgIoAgBBAXFFDQAgAkEEaisCACEHQgEhBgsgASADNgIAIAAgBj4CACAEIAU2AgAgACAHRAAAAAAAAAAAIAanGzkDCA8LEIMPCwALEIQPAAunBgIQfwF+IwBBEGsiByQAAkACQCAABEAgAEEIayIJKAIAQQFqIQMgCSADNgIAIANFDQEgACgCACIDQX9GDQIgACADQQFqNgIAIAcgCTYCDCAHIAA2AgggByAAQQRqIgU2AgQjAEEgayIEJAAgBCACNgIUIARBgQE2AhggAb0iE0IgiKchDgJ/QQAgE6ciDyAFKAI4Tw0AGkEAIAUoAjQgD0EMbGoiAigCACAORw0AGiACKAIEIQhBAQshCiAIIAUoAghJIRAgBSgCBCAIQQR0akEIaiERIAUoAhQhCyAFKAIQIQxBAiENAkACQANAIA1BAEchAgJ+AkACQAJAIBAEQANAAkAgAkEBcQ0AIAsgE6ciAksNBCATQiCIpyEDA0AgCyADIgJNDQEgDCACQThsaiIGKAIsIQMgBigCMCAIRg0ACwwFCyAKRQ0CIBEpAgAhE0EAIQ1BACEKQQAhAgwACwALA0ACQCACQQFxDQAgCyATpyICSw0DIBNCIIinIQMDQCALIAMiAk0NASAMIAJBOGxqIgYoAiwhAyAGKAIwIAhGDQALDAQLIAohA0EAIQ1CfyETQQAhCkEAIQIgAw0ACwsgBCgCGCICQYMBSwRAIAIQAgsgBCgCFCICQYQBTwRAIAIQAgsgBEEgaiQADAULIAwgAkE4bGoiBjUCKCATQoCAgIBwg4QMAQsgE0L/////D4MgA61CIIaECyETIAUoAhQgAksEQCAFKAIQIAJBOGxqIgMoAjAiEiAFKAIIIgJPDQIgA0EwaigCBCIDIAJPBEAgAyACQZzEwQAQhQsACyAEAn4gBigCDCICIA9GIAYoAhAiAyAORnFFBEAgAq0gA61CIIaEDAELIAYpAhQLvxAANgIcIARBCGogBEEUaiAEQRhqIARBHGoQwAwgBCgCDCICQYQBTwRAIAIQAgsgBCgCHCICQYQBSQ0BIAIQAgwBCwtB/MPBABDyDgALIBIgAkGMxMEAEIULAAsgACAAKAIAQQFrNgIAIAkgCSgCAEEBayIANgIAIABFBEAgB0EMahDpDAsgB0EQaiQADwsQgw8LAAsQhA8AC8oGAhF/An4jAEEQayIHJAACQAJAIAAEQCAAQQhrIgkoAgBBAWohAyAJIAM2AgAgA0UNASAAKAIAIgNBf0YNAiAAIANBAWo2AgAgByAJNgIMIAcgADYCCCAHIABBBGoiAzYCBCMAQSBrIgUkACAFIAI2AhQgBUGBATYCGCABvSIUQiCIpyEPAn9BACAUpyIQIAMoAjhPDQAaQQAgAygCNCAQQQxsaiIEKAIAIA9HDQAaIAQoAgghCEEBCyECIANBGGohCiAIIAMoAiBJIRIgAygCHCAIQQR0akEIaiETIAMoAiwhCyADKAIoIQxBAiENAkACQANAIA1BAEchBAJ+AkACQAJAIBIEQANAAkAgBEEBcQ0AIAsgFKciBEsNBCAUQiCIpyEDA0AgCyADIgRNDQEgDCADQRRsaiIGKAIEIQMgBigCCCAIRg0ACwwFCyACRQ0CIBMpAgAhFEEAIQ1BACECQQAhBAwACwALA0ACQCAEQQFxDQAgCyAUpyIESw0DIBRCIIinIQMDQCALIAMiBE0NASAMIANBFGxqIgYoAgQhAyAGKAIIIAhGDQALDAQLIAIhA0EAIQ1CfyEUQQAhAkEAIQQgAw0ACwsgBSgCGCICQYMBSwRAIAIQAgsgBSgCFCICQYQBTwRAIAIQAgsgBUEgaiQADAULIAwgBEEUbGo1AgAgFEKAgICAcIOEDAELIBRC/////w+DIAOtQiCGhAshFCAKKAIUIARLBEAgBEEUbCIEIAooAhBqIgMoAggiBiAKKAIIIg5PDQIgAygCDCIRIA5PBEAgESAOQZzEwQAQhQsACyAEIAxqQRBqLQAARQ0BIAooAgQiBCAGQQR0aiIDKAIEIQYgBSAEIBFBBHRqKQIAIAMoAgAiA60gBq1CIIaEIhUgBiAPRhsgFSADIBBGG78QADYCHCAFQQhqIAVBFGogBUEYaiAFQRxqEMAMIAUoAgwiA0GEAU8EQCADEAILIAUoAhwiA0GEAUkNASADEAIMAQsLQfzDwQAQ8g4ACyAGIA5BjMTBABCFCwALIAAgACgCAEEBazYCACAJIAkoAgBBAWsiADYCACAARQRAIAdBDGoQ6QwLIAdBEGokAA8LEIMPCwALEIQPAAvRAQECfSAAQQA2AhggAEIANwIQIAD9DAAAAAAAAAAAAAAAAAAAgD/9CwIAIABDAAAAAEMAAIA/IAIgASoCBCICIAIgASoCACIDlJRD2w9JQJQiBCAEkpQiBJUgBEMAAAAAWxs4AhwgAEMAAAAAQwAAgD8gAyADlEMAAIBAlCACIAKUIgJDAABAQJSSQwAAQEGVIASUIgOVIANDAAAAAFsbIgM4AiggAEMAAAAAQwAAgD8gAkMAAAA/lCAElCIClSACQwAAAABbGzgCJCAAIAM4AiALzgEBAn8jAEEQayICJAACQAJAIAFFBEAgAEUNAiAAQQhrIgEoAgBBAUYEQCABQQA2AgAgAUF/Rg0CIABBBGsiAygCAEEBayEAIAMgADYCACAADQIgAUGAAUEEEOgODAILQZDUwQBBPxCCDwALIABFDQEgAEEIayIAKAIAQQFrIQEgACABNgIAIAIgADYCDCABDQACQCACQQxqKAIAIgBBf0YNACAAIAAoAgRBAWsiATYCBCABDQAgAEGAAUEEEOgOCwsgAkEQaiQADwsQgw8AC6cBAQJ/IwBBEGsiAiQAAkACQCABRQRAIABFDQIgAEEIayIBKAIAQQFGBEAgAUEANgIAIAFBf0YNAiAAQQRrIgMoAgBBAWshACADIAA2AgAgAA0CIAFB8ABBBBDoDgwCC0GQ1MEAQT8Qgg8ACyAARQ0BIABBCGsiACgCAEEBayEBIAAgATYCACACIAA2AgwgAQ0AIAJBDGoQqw0LIAJBEGokAA8LEIMPAAumAQECfyMAQRBrIgIkAAJAAkAgAUUEQCAARQ0CIABBCGsiASgCAEEBRgRAIAFBADYCACABQX9GDQIgAEEEayIDKAIAQQFrIQAgAyAANgIAIAANAiABQQxBBBDoDgwCC0GQ1MEAQT8Qgg8ACyAARQ0BIABBCGsiACgCAEEBayEBIAAgATYCACACIAA2AgwgAQ0AIAJBDGoQpg0LIAJBEGokAA8LEIMPAAunAQECfyMAQRBrIgIkAAJAAkAgAUUEQCAARQ0CIABBCGsiASgCAEEBRgRAIAFBADYCACABQX9GDQIgAEEEayIDKAIAQQFrIQAgAyAANgIAIAANAiABQdAAQQQQ6A4MAgtBkNTBAEE/EIIPAAsgAEUNASAAQQhrIgAoAgBBAWshASAAIAE2AgAgAiAANgIMIAENACACQQxqEKgNCyACQRBqJAAPCxCDDwALpwEBAn8jAEEQayICJAACQAJAIAFFBEAgAEUNAiAAQRBrIgEoAgBBAUYEQCABQQA2AgAgAUF/Rg0CIABBDGsiAygCAEEBayEAIAMgADYCACAADQIgAUHgAkEQEOgODAILQZDUwQBBPxCCDwALIABFDQEgAEEQayIAKAIAQQFrIQEgACABNgIAIAIgADYCDCABDQAgAkEMahCnDQsgAkEQaiQADwsQgw8AC84BAQJ/IwBBEGsiAiQAAkACQCABRQRAIABFDQIgAEEIayIBKAIAQQFGBEAgAUEANgIAIAFBf0YNAiAAQQRrIgMoAgBBAWshACADIAA2AgAgAA0CIAFBwABBBBDoDgwCC0GQ1MEAQT8Qgg8ACyAARQ0BIABBCGsiACgCAEEBayEBIAAgATYCACACIAA2AgwgAQ0AAkAgAkEMaigCACIAQX9GDQAgACAAKAIEQQFrIgE2AgQgAQ0AIABBwABBBBDoDgsLIAJBEGokAA8LEIMPAAvMAQECfyMAQRBrIgIkAAJAAkAgAUUEQCAARQ0CIABBCGsiASgCAEEBRgRAIAFBADYCACABQX9GDQIgAEEEayIDKAIAQQFrIQAgAyAANgIAIAANAiABQRBBBBDoDgwCC0GQ1MEAQT8Qgg8ACyAARQ0BIABBCGsiACgCAEEBayEBIAAgATYCACACIAA2AgwgAQ0AAkAgAkEMaigCACIAQX9GDQAgACAAKAIEQQFrIgE2AgQgAQ0AIABBEEEEEOgOCwsgAkEQaiQADwsQgw8AC6YBAQJ/IwBBEGsiAiQAAkACQCABRQRAIABFDQIgAEEIayIBKAIAQQFGBEAgAUEANgIAIAFBf0YNAiAAQQRrIgMoAgBBAWshACADIAA2AgAgAA0CIAFBHEEEEOgODAILQZDUwQBBPxCCDwALIABFDQEgAEEIayIAKAIAQQFrIQEgACABNgIAIAIgADYCDCABDQAgAkEMahClDQsgAkEQaiQADwsQgw8AC8wBAQJ/IwBBEGsiAiQAAkACQCABRQRAIABFDQIgAEEIayIBKAIAQQFGBEAgAUEANgIAIAFBf0YNAiAAQQRrIgMoAgBBAWshACADIAA2AgAgAA0CIAFBLEEEEOgODAILQZDUwQBBPxCCDwALIABFDQEgAEEIayIAKAIAQQFrIQEgACABNgIAIAIgADYCDCABDQACQCACQQxqKAIAIgBBf0YNACAAIAAoAgRBAWsiATYCBCABDQAgAEEsQQQQ6A4LCyACQRBqJAAPCxCDDwALpgEBAn8jAEEQayICJAACQAJAIAFFBEAgAEUNAiAAQQhrIgEoAgBBAUYEQCABQQA2AgAgAUF/Rg0CIABBBGsiAygCAEEBayEAIAMgADYCACAADQIgAUEkQQQQ6A4MAgtBkNTBAEE/EIIPAAsgAEUNASAAQQhrIgAoAgBBAWshASAAIAE2AgAgAiAANgIMIAENACACQQxqEKoNCyACQRBqJAAPCxCDDwALpgEBAn8jAEEQayICJAACQAJAIAFFBEAgAEUNAiAAQQhrIgEoAgBBAUYEQCABQQA2AgAgAUF/Rg0CIABBBGsiAygCAEEBayEAIAMgADYCACAADQIgAUEYQQQQ6A4MAgtBkNTBAEE/EIIPAAsgAEUNASAAQQhrIgAoAgBBAWshASAAIAE2AgAgAiAANgIMIAENACACQQxqEKkNCyACQRBqJAAPCxCDDwALzgEBAn8jAEEQayICJAACQAJAIAFFBEAgAEUNAiAAQQhrIgEoAgBBAUYEQCABQQA2AgAgAUF/Rg0CIABBBGsiAygCAEEBayEAIAMgADYCACAADQIgAUHEAEEEEOgODAILQZDUwQBBPxCCDwALIABFDQEgAEEIayIAKAIAQQFrIQEgACABNgIAIAIgADYCDCABDQACQCACQQxqKAIAIgBBf0YNACAAIAAoAgRBAWsiATYCBCABDQAgAEHEAEEEEOgOCwsgAkEQaiQADwsQgw8AC84BAQJ/IwBBEGsiAiQAAkACQCABRQRAIABFDQIgAEEIayIBKAIAQQFGBEAgAUEANgIAIAFBf0YNAiAAQQRrIgMoAgBBAWshACADIAA2AgAgAA0CIAFBzABBBBDoDgwCC0GQ1MEAQT8Qgg8ACyAARQ0BIABBCGsiACgCAEEBayEBIAAgATYCACACIAA2AgwgAQ0AAkAgAkEMaigCACIAQX9GDQAgACAAKAIEQQFrIgE2AgQgAQ0AIABBzABBBBDoDgsLIAJBEGokAA8LEIMPAAvMAQECfyMAQRBrIgIkAAJAAkAgAUUEQCAARQ0CIABBCGsiASgCAEEBRgRAIAFBADYCACABQX9GDQIgAEEEayIDKAIAQQFrIQAgAyAANgIAIAANAiABQTxBBBDoDgwCC0GQ1MEAQT8Qgg8ACyAARQ0BIABBCGsiACgCAEEBayEBIAAgATYCACACIAA2AgwgAQ0AAkAgAkEMaigCACIAQX9GDQAgACAAKAIEQQFrIgE2AgQgAQ0AIABBPEEEEOgOCwsgAkEQaiQADwsQgw8AC6EBAgF/BH0jAEEgayIDJAAgAioCACIFIAWUIAIqAgQiBiAGlJIgAioCCCIHIAeUkpEhBCADIAUgBJUiBTgCCCADIAYgBJUiBjgCDCADIAcgBJUiBDgCECADQRRqIAEgA0EIahCCBCAAIAQgASoCYCIElCADKgIckjgCCCAAIAYgBJQgAyoCGJI4AgQgACADKgIUIAUgBJSSOAIAIANBIGokAAubAQEBfyAAKAIAIgEEQCAAKAIEIAFBBnRBwAAQ6A4LIAAoAgwiAQRAIAAoAhAgAUEFdEEQEOgOCyAAKAIYIgEEQCAAKAIcIAFBAnRBBBDoDgsgACgCJCIBBEAgACgCKCABQQN0QQQQ6A4LIAAoAjAiAQRAIAAoAjQgAUECdEEEEOgOCyAAKAJAIgEEQCAAKAJEIAFBAnRBBBDoDgsLrQQEA38CewJ9AX4jAEEQayIIJAACQAJAIAAEQCAAQRBrIgkoAgBBAWohByAJIAc2AgAgB0UNASAAKAIADQIgAEF/NgIAIAggCTYCDCAIIAA2AgggCCAAQRBqIgc2AgQgBkEARyEGAkAgAiAClCAEIASUkiADIAOUIAUgBZSSkiIMQwAAAABeRQ0AAkAgByABvSIOpyAOQiCIpxDeCSIHBEACQAJAAkAgByoCMCINIAL9EyAD/SABIAT9IAIgBf0gAyAMkf0T/ecBIgr9HwAiAlwNACAHKgI0IAr9HwFcDQAgByoCOCAK/R8CXA0AIAcqAjwgCv0fA1sNAQsgDSACjFwNASAHKgI0IAr9HwGMXA0BIAcqAjggCv0fAoxcDQEgByoCPCAK/R8DjFwNAQsgB/0AAkwiCyAK/UL9U0UNAyALIAr94QH9Qv1TRQ0DCyAHIAI4AkwgByACOAIwIAcgCv0fAyIEOAJYIAcgCv0fAiIDOAJUIAcgCv0fASICOAJQIAcgBDgCPCAHIAM4AjggByACOAI0IAcgBygCvAJBAnI2ArwCIAcQ5A0gBkUNAiAHLQDlAkEBRg0CIActANQCRQ0BIAcgBygCvAJBBHI2ArwCDAELQezPwQBBzQBBzNDBABDRCwALIAdBADYC0AIgB0EAOgDUAgsgAEEANgIAIAkgCSgCAEEBayIANgIAIABFBEAgCEEMahDrDAsgCEEQaiQADwsQgw8LAAsQhA8AC44FAgV/AX4jAEEQayILJAACQAJAIAAEQCAAQQhrIgwoAgBBAWohCSAMIAk2AgAgCUUNASAAKAIADQIgAEF/NgIAIAsgDDYCDCALIAA2AgggCyAAQQRqIgo2AgQjAEEwayIJJAAgCUEQaiAKIAG9Ig6nIA5CIIinIAK9Ig6nIA5CIIinELQCAkAgCSgCECIKRQ0AIAkoAhQiDUUNACAJQQhqIAoQsgwgCSgCCCAJKAIMEMILIQogCSANELIMIAkoAgAgCSgCBBDCCyENIApFDQAgDUUNACAJIAU2AiAgCSAENgIcIAkgAzYCGCAJIAg2AiwgCSAHNgIoIAkgBjYCJCAJQSRqIQVBACEGIwBBEGsiAyQAIANBBGogCiAJQRhqIgQQ4wMCQAJAAkACQCADKAIEIghBAUcNACADKAIIIgYgCigCVCIHTw0BIAMoAgwiB0GABEkEQCAKKAJQIAZBCXRqIAdqLQAAQcAARiEGDAELIAdBgARB6ObDABCFCwALIAMgBCgCCCAFKAIIazYCDCADIAQoAgQgBSgCBGs2AgggAyAEKAIAIAUoAgBrNgIEIA0gA0EEaiIFIAYgCEF/c3JBAXEQjwIhBiAFIAogBBDjAwJAIAMoAgRBAUYEQCADKAIIIgQgCigCVCIFTw0DIAMoAgwiBUGABE8NASAKKAJQIARBCXRqIAVqIgQgBC0AACAGQf8BcXI6AAALIANBEGokAAwDCyAFQYAEQeTpwwAQhQsACyAGIAdB2ObDABCFCwALIAQgBUHU6cMAEIULAAsLIAlBMGokACAAQQA2AgAgDCAMKAIAQQFrIgA2AgAgAEUEQCALQQxqEO4MCyALQRBqJAAPCxCDDwsACxCEDwAL5ToCLH8GfiMAQSBrIhUkACAVIAE2AhAgFSAANgIMIBUgATYCCCAVIAM2AhwgFSACNgIYIBUgAzYCFCAVQRRqISJBACEAIwBBQGoiCiQAIBVBCGoiJCgCBCElICQoAggiAwRAIANBA24gA0EDcEEAR2ohCAsgCK1CDH4iMachAgJAAn8CQCAxQiCIpw0AIAJB/P///wdLDQACQCACRQRAQQQhAUEAIQgMAQtBBCACQQQQkQ4iAUUNAhoLIApBADYCJCAKIAE2AiAgCiAINgIcAkACQAJAAkAgAwRAIANBA24iAiADIAJBA2xHaiICIAhLBEAgCkEcakEAIAJBBEEMENYGIAooAiAhASAKKAIkIQALIAEgAEEMbGohAQNAIANBAk0NAiABIAZqIgIgBiAlaiIIKgIAOAIAIAJBBGogCEEEaikCADcCACAGQQxqIQYgAEEBaiEAIANBA2siAw0ACwsgCkEIaiAANgIAIAogCikCHDcDACAiKAIEISZBACEDICIoAggiBgRAIAZBA24gBkEDcEEAR2ohAwsgA61CDH4iMachACAxQiCIpw0BIABB/P///wdLDQFBACEIAkAgAEUEQEEEIQFBACEDDAELQQQhDiAAQQQQkQ4iAUUNAgsgCkEANgIwIAogATYCLCAKIAM2AiggBgRAIAZBA24iACAGIABBA2xHaiIAIANLBEAgCkEoakEAIABBBEEMENYGIAooAjAhCCAKKAIsIQELIAEgCEEMbGohAyAmIQADQCAGQQFGDQQgBkECTQ0FIAMgACgCADYCACADQQRqIAApAgQ3AgAgA0EMaiEDIAhBAWohCCAAQQMgBiAGQQNPGyIBQQJ0aiEAIAYgAWsiBg0ACwsgCkEYaiAINgIAIAogCikCKDcDECAKQShqIR8jAEHQAmsiFiQAIBZBIGohJyAEQQAgBEH//wNxQYACSRshGCMAQcABayIRJAACQCAKQRBqIgAoAghFBEAgJ0KAgICAKDcCACAAKAIAIgEEQCAAKAIEIAFBDGxBBBDoDgsgCigCACIARQ0BIAooAgQgAEEMbEEEEOgODAELIBFBOGogCkEIaigCADYCACARQcQAaiAAQQhqKAIANgIAIBFCADcCKCARQoCAgIDAADcCICARQgQ3AhggEUIANwIQIBFCgICAgIAINwIIIBFBgICAgHg2AkggEUGAgICAeDYCYCARQYCAgIB4NgKEASARQQA7AagBIBEgCikCADcCMCARIAApAgA3AjwgEUGsAWohKEEAIQEjAEGwAWsiBSQAIBFBCGoiBygCPCEpIBhBAXFFBEACQCAHKAJYIgBBgICAgHhGDQAgAARAIAcoAlwgAEECdEEEEOgOCyAHKAJkIgAEQCAHKAJoIABBAnRBBBDoDgsgBygCcCIARQ0AIAcoAnQgAEEEdEEEEOgOCyAHQYCAgIB4NgJYCyAYQZgBcUUEQAJAIAcoAkAiAEGAgICAeEYNACAABEAgBygCRCAAQQxsQQQQ6A4LIAcoAkwiAEUNACAHKAJQIABBJGxBBBDoDgsgB0GAgICAeDYCQAsgGEECcUUEQAJAIAcoAnwiAEGAgICAeEYNACAABEAgBygCgAEgAEECdEEEEOgOCyAHKAKIASIABEAgBygCjAEgAEECdEEEEOgOCyAHKAKUASIARQ0AIAcoApgBIABBAnRBBBDoDgsgB0GAgICAeDYCfAsCQCAHLwGgAUH/AXMgGHEiI0HwAHFFDQAgBUKJ2bnijtO+lwg3A0AgBUGg3MIA/QADAP0LAzBBBCEcQQQhCQJAAkACQAJAAkACQCAHKAIwIgsEQCALQQxsIgBBBBCRDiIJRQ0BCyAFQQA2AlggBSAJNgJUIAUgCzYCUAJAIAcoAjwiAARAIABBDGwiAkEEEJEOIhxFDQELIAUgHDYCDCAFIAA2AgggBUEANgIQIAVBoNzCAP0AAwD9CwNoIAVCidm54o7TvpcINwN4IAcoAjghDiAARQ0GIBhBIHEhISAHKAIsIR0gGEHAAHFFDQIgDiAAQQxsaiEqIA5BDGohAiAFQfgAaiErIA4hAwNAIAMhACACIQMgCyAAKAIAIgZNDQYgHSAGQQxsaiAFQTBqIgEgBUHQAGoiBBC5AiECIAsgACgCBCIGTQ0FIB0gBkEMbGogASAEELkCIQkgCyAAKAIIIgZNDQQgHSAGQQxsaiABIAQQuQIhBgJAAkACQCACIAlGDQAgAiAGRg0AICFFDQEgBiAJRw0BDAILICENAQsCfyACIAlNBEAgCSIAIAYiASACIgRJDQEaIAAgBiAAIAZJGyEEIAIhASAAIAYgACAGSxsMAQsgCSEBIAYiACAAIAIiBE8NABogASAAIAAgAUkbIQQgASAAIAAgAUsbIQEgAgsiF60gBK1CIIaEIjUgBSkDeIUiMUL/////D4MiMyABQd2h8ct8c60iMn4gMUIgiCIxQrfTsIUMfoUgMSAyfiAzQrfTsIUMfoVCIIiFITMgBSgCcEUEQCMAQTBrIg8kACAPICs2AiggBUHoAGoiGigCDCENIA8gD0EoajYCLAJAIA0gDUEBaiIATQRAIBooAgQiICAgQQFqQQN2QQdsICBBCEkbIghBAXYgAEkEQAJAAkACQAJ/IAhBAWoiCCAAIAAgCEkbIgBBD08EQCAAQf////8BSw0CQX8gAEEDdEEHbkEBa2d2QQFqDAELQQRBCEEQIABBCEkbIABBBEkbCyIArUIMfiIxQiCIpw0BIDGnIghBeEsNASAIQQdqQXhxIgwgAEEIaiISaiEIIAggDEkNASAIQfj///8HSw0BIAhBCBCRDiITDQJBCCAIQfjKxAAoAgAiAEHMCCAAGxEAAAALEKcMIA8oAiQhACAPKAIgIQgMBAsQpwwgDygCFCEAIA8oAhAhCAwDCyAMIBNqIRMgEgRAIBNB/wEgEvwLAAsgAEEBayIeIABBA3ZBB2wgHkEISRshLAJAIA1FBEAgGigCACEMDAELIBNBCGohLSAaKAIAIgwpAwBCf4VCgIGChIiQoMCAf4MhMSAPKAIoIS5BACEAIA0hEiAMIQgDQCAxUARAA0AgAEEIaiEAIAhBCGoiCCkDAEKAgYKEiJCgwIB/gyIxQoCBgoSIkKDAgH9RDQALIDFCgIGChIiQoMCAf4UhMQsgEyAuKQMAIAwgMXqnQQN2IABqIi9BdGxqIhBBDGspAgCFIjJC/////w+DIjQgEEEEazUCAELdofHLDIUiNn4gMkIgiCIyQrfTsIUMfoUgMiA2fiA0QrfTsIUMfoVCIIiFpyIwIB5xIhBqKQAAQoCBgoSIkKDAgH+DIjJQBEBBCCEbA0AgECAbaiEQIBtBCGohGyATIBAgHnEiEGopAABCgIGChIiQoMCAf4MiMlANAAsLIDFCAX0gMYMhMSATIDJ6p0EDdiAQaiAecSIQaiwAAEEATgRAIBMpAwBCgIGChIiQoMCAf4N6p0EDdiEQCyAQIBNqIDBBGXYiGzoAACAtIBBBCGsgHnFqIBs6AAAgEyAQQX9zQQxsaiIQQQhqIAwgL0F/c0EMbGoiG0EIaigAADYAACAQIBspAAA3AAAgEkEBayISDQALCyAaIB42AgQgGiATNgIAIBogLCANazYCCEGBgICAeCEIICBFDQIgDCAgQQxsQRNqQXhxIgBrIAAgIGpBCWpBCBDoDgwCCyAaIA9BLGpBkwJBDBDGAkGBgICAeCEIDAELEKcMIA8oAgwhACAPKAIIIQgLIAUgADYCBCAFIAg2AgAgD0EwaiQACyAFKAJsIg0gM6dxIQggM0IZiCIyQv8Ag0KBgoSIkKDAgAF+ITRBACESIAUoAmghDEEAIQADQCAIIAxqKQAAIjMgNIUiMUKBgoSIkKDAgAF9IDFCf4WDQoCBgoSIkKDAgH+DIjFCAFIEQANAAkAgDCAxeqdBA3YgCGogDXFBdGxqIg9BDGsoAgAgF0cNACAPQQhrKAIAIARHDQAgASAPQQRrKAIARg0ECyAxQgF9IDGDIjFCAFINAAsLIDNCgIGChIiQoMCAf4MhMQJ/AkAgAEUEQCAxUA0BIDF6p0EDdiAIaiANcSEUC0EBIDEgM0IBhoNQDQEaIAwgFGosAAAiCEEATgRAIAwgDCkDAEKAgYKEiJCgwIB/g3qnQQN2IhRqLQAAIQgLIAwgFGogMqdB/wBxIgA6AAAgDCAUQQhrIA1xakEIaiAAOgAAIAwgFEF0bGoiAEEMayA1NwIAIABBBGsgATYCACAFIAUoAnRBAWo2AnQgBSAFKAJwIAhBAXFrNgJwIAUoAgggGUYEQCAFQQhqQczPwwAQkQggBSgCDCEcCyAcIBlBDGxqIgAgBjYCCCAAIAk2AgQgACACNgIAIAUgGUEBaiIZNgIQDAMLQQALIQAgEkEIaiISIAhqIA1xIQgMAAsACyADQQBBDCADICpGIgAbaiECIABFDQALDAYLQQQgAkHszsMAENcNAAtBBCAAQdzOwwAQ1w0ACyAAQQxsIQwgDiECA0AgCyACKAIAIgZNDQMgHSAGQQxsaiAFQTBqIgQgBUHQAGoiCBC5AiEAIAsgAkEEaigCACIGTQ0CIB0gBkEMbGogBCAIELkCIQMgCyACQQhqKAIAIgZNDQECQAJAIAAgA0cgHSAGQQxsaiAEIAgQuQIiBCAAR3FFBEAgIUUNAQwCCyAhRQ0AIAMgBEYNAQsgBSgCCCABRgRAIAVBCGpBvM/DABCRCCAFKAIMIRwLIBwgAUEMbGoiBiAENgIIIAYgAzYCBCAGIAA2AgAgBSABQQFqIgE2AhALIAJBDGohAiAMQQxrIgwNAAsMAwsgBiALQazPwwAQhQsACyAGIAtBnM/DABCFCwALIAYgC0GMz8MAEIULAAsCQCAFKAJQIgEgBSgCWCIASwRAIAFBDGwhASAFKAJUIQICQCAARQRAQQQhBiACIAFBBBDoDgwBCyACIAFBBCAAQQxsIgEQ8g0iBkUNAgsgBSAANgJQIAUgBjYCVAsgB0E0aiEAIAdBKGoiASgCACICBEAgBygCLCACQQxsQQQQ6A4LIAEgBSkCUDcCACABQQhqIAVB2ABqKAIANgIAIAAoAgAiAQRAIA4gAUEMbEEEEOgOCyAAIAUpAgg3AgAgAEEIaiAFQRBqKAIANgIAIAcoAkBBgICAgHhHBEAgBxA7CyAHKAJYQYCAgIB4RwRAIAVBGGogB0EAEGkLIAUoAmwiAARAIAUoAmggAEEMbEETakF4cSIBayAAIAFqQQlqQQgQ6A4LIAUoAjQiAEUNASAFKAIwIABBBHRrQRBrIABBEWxBGWpBCBDoDgwBC0EEIAFB/M7DABDXDQALQQIhGSAjQQVxBEAgBUHoAGogByAYQQRxQQJ2EGkgBSAF/QACbP0LAwggBSgCaCEZCwJAICNBAnFFDQAgBUEANgJIIAVCBDcCQCAFQgA3AjggBUKAgICAwAA3AjAgBygCPCIOQQJ0IRdBBCEBAkACQAJAAkACQAJAAkAgDgRAIBdBBBCRDiIBRQ0BIA5BAUcEfyAXQQRrIgAEQCABQf8BIAD8CwALIAAgAWoFIAELQX82AgALQQRBBBCRDiIARQ0BIABBADYCACAFQQE2AlggBSAANgJUIAVBATYCUCAHKAIwIg1BAnQhEkEEIRRBBCEIIA0EQCASQQQQkQ4iCEUNAyANQQFHBH8gEkEEayIABEAgCEH/ASAA/AsACyAAIAhqBSAIC0F/NgIACyAOBEAgF0EEEJEOIhRFDQQgDkEBRwR/IBdBBGsiAARAIBRB/wEgAPwLAAsgACAUagUgFAtBfzYCAAsCQCANRQRAQQQhAwwBCyASQQQQkQ4iA0UNBSANQQFHBH8gEkEEayIABEAgA0H/ASAA/AsACyAAIANqBSADC0F/NgIACwJAAkACQCAOBEAgBUE8aiEPIA5BDGwhDCAFQdwAaq1CgICAgPAghCExIAVB4ABqrUKAgICA0CKEITMgBygCOCIEIQYDQCANIAYoAgAiAE0NCyAGQQhqKAIAIQIgBkEEaigCACEJIAMgAEECdGoiEygCACIAQX9GBEAgBSAFKAI4IgA2AlwgBSgCMCAARgRAIAVBMGpBpNDCABC0CAsgBSgCNCAAQQN0aiILQQA2AgQgCyAANgIAIAUgAEEBajYCOCAFKAJIBEAgBSgCRCILIAUoAjxGBEAgD0Gw3MIAELUICyAFKAJAIAtBBHRqIhAgADYCBCAQQQA2AgAgBSALQQFqNgJEC0H0ysQAKAIAQQRPBEAgBUEGNgJkIAVB/NLDADYCYCAFIDE3AyAgBSAzNwMYQezVwgAoAgAhAEHk1cIAKQIAITIgBUICNwKgASAFQQI2ApgBIAVB1NXCADYClAEgBUEKNgKQASAFQdTUwgA2AowBIAVBBDYCiAEgBSAyNwKAASAFQgo3AnggBUHU1MIANgJ0IAVBADYCcCAFIAA2AmwgBUEBNgJoIAUgBUEYajYCnAFB0MrEACgCAEGUhsQAQfDKxAAoAgBBAkYiABsgBUHoAGpB1MrEACgCAEH8hcQAIAAbKAIQEQAAIAUoAlwhAAsgEyAANgIACyAJIA1PBEAgCSEADAwLIAMgCUECdGoiEygCACIJQX9GBEAgBSAFKAI4Igk2AlwgBSgCMCAJRgRAIAVBMGpBpNDCABC0CAsgBSgCNCAJQQN0aiILQQA2AgQgCyAJNgIAIAUgCUEBajYCOCAFKAJIBEAgBSgCRCILIAUoAjxGBEAgD0Gw3MIAELUICyAFKAJAIAtBBHRqIhAgCTYCBCAQQQA2AgAgBSALQQFqNgJEC0H0ysQAKAIAQQRPBEAgBUEGNgJkIAVB/NLDADYCYCAFIDE3AyAgBSAzNwMYQezVwgAoAgAhCUHk1cIAKQIAITIgBUICNwKgASAFQQI2ApgBIAVB1NXCADYClAEgBUEKNgKQASAFQdTUwgA2AowBIAVBBDYCiAEgBSAyNwKAASAFQgo3AnggBUHU1MIANgJ0IAVBADYCcCAFIAk2AmwgBUEBNgJoIAUgBUEYajYCnAFB0MrEACgCAEGUhsQAQfDKxAAoAgBBAkYiCRsgBUHoAGpB1MrEACgCAEH8hcQAIAkbKAIQEQAAIAUoAlwhCQsgEyAJNgIACyACIA1PBEAgAiEADAwLIAMgAkECdGoiEygCACICQX9GBEAgBSAFKAI4IgI2AlwgBSgCMCACRgRAIAVBMGpBpNDCABC0CAsgBSgCNCACQQN0aiILQQA2AgQgCyACNgIAIAUgAkEBajYCOCAFKAJIBEAgBSgCRCILIAUoAjxGBEAgD0Gw3MIAELUICyAFKAJAIAtBBHRqIhAgAjYCBCAQQQA2AgAgBSALQQFqNgJEC0H0ysQAKAIAQQRPBEAgBUEGNgJkIAVB/NLDADYCYCAFIDE3AyAgBSAzNwMYQezVwgAoAgAhAkHk1cIAKQIAITIgBUICNwKgASAFQQI2ApgBIAVB1NXCADYClAEgBUEKNgKQASAFQdTUwgA2AowBIAVBBDYCiAEgBSAyNwKAASAFQgo3AnggBUHU1MIANgJ0IAVBADYCcCAFIAI2AmwgBUEBNgJoIAUgBUEYajYCnAFB0MrEACgCAEGUhsQAQfDKxAAoAgBBAkYiAhsgBUHoAGpB1MrEACgCAEH8hcQAIAIbKAIQEQAAIAUoAlwhAgsgEyACNgIACyAFQTBqIgsgACAJEIkFIAsgCSACEIkFIAsgAiAAEIkFIAZBDGohBiAMQQxrIgwNAAsgDiECIAEhCQNAIAQoAgAiACANTw0CIAVBMGogAyAAQQJ0aigCABCdBCIAIA1PDQMgCCAAQQJ0aiIGKAIAIgBBf0YEQCAFKAJYIgAgBSgCUEYEQCAFQdAAakHc0sMAELYICyAFKAJUIABBAnRqQQA2AgAgBSAAQQFqNgJYIAYgADYCAAsgBSgCWCIGIABNDQQgBSgCVCAAQQJ0aiIGIAYoAgBBAWo2AgAgCSAAQQFrNgIAIARBDGohBCAJQQRqIQkgAkEBayICDQALCwJAAkAgBSgCWCIEQQJPBEBBAiECQQEhAANAIABBAWsiCSAFKAJYIgZPDQIgACAGTw0DIAIhBiAAQQJ0IAUoAlQiAGoiAiACKAIAIAAgCUECdGooAgBqNgIAIAZBAWohAiAEIAYiAEcNAAsgBSgCWCEECyAEQQJ0IQJBACEJIARB/////wNLDQogAkH8////B0sNCiAFKAJUIQYCQCACRQRAQQQhDEEAIQAMAQtBBCEJIAQhACACQQQQkQ4iDEUNCwsgAgRAIAwgBiAC/AoAAAsCQAJAIA4EQCABIA5BAnRqIQ8gAUEEaiECIBdBBGtBAnZBAWohC0EAIQkgASEGA0AgBigCACIGIARPDQIgDCAGQQJ0aiIGKAIAIhcgDk8NAyAUIBdBAnRqIAk2AgAgBiAGKAIAQQFqNgIAIAIgDyACIgZHQQJ0aiECIAsgCUEBaiIJRw0ACwsgBUHwAGoiBCAFQdgAaigCADYCACAFIAUpAlA3A2gCQCAHKAJ8IgJBgICAgHhGDQAgAgRAIAcoAoABIAJBAnRBBBDoDgsgBygCiAEiAgRAIAcoAowBIAJBAnRBBBDoDgsgBygClAEiAkUNACAHKAKYASACQQJ0QQQQ6A4LIAcgDjYCkAEgByAUNgKMASAHIA42AogBIAcgDjYChAEgByABNgKAASAHIA42AnwgByAFKQNoNwKUASAHQZwBaiAEKAIANgIAIAAEQCAMIABBAnRBBBDoDgsgDQRAIAMgEkEEEOgOIAggEkEEEOgOCyAFKAIwIgAEQCAFKAI0IABBA3RBBBDoDgsgBSgCPCIARQ0OIAUoAkAgAEEEdEEEEOgODA4LIAYgBEH80cMAEIULAAsgFyAOQYzSwwAQhQsACyAJIAZBnNLDABCFCwALIAAgBkGs0sMAEIULAAsgACANQbzSwwAQhQsACyAAIA1BzNLDABCFCwALIAAgBkHs0sMAEIULAAtBBCAXQbzRwwAQ1w0AC0EEQQRB+MrEACgCACIAQcwIIAAbEQAAAAtBBCASQczRwwAQ1w0AC0EEIBdB3NHDABDXDQALQQQgEkHs0cMAENcNAAsgCSACQcDcwgAQ1w0ACyAAIA1BhNPDABCFCwALICNBmAFxBEAgBxA7CyAHKAI8IClHBEAgBxCHAQsgKCAZNgIAIAcgGDsBoAEgKCAF/QADCP0LAgQgBUGwAWokACARKAIQRQRAIAcQhwELICcgEUEIakGkAfwKAAALIBFBwAFqJAAgFkEYaiIAIBZBNGooAgA2AgAgFiAW/QACJP0LAwgCQAJAAkAgFigCICIBQYCAgIB4RgRAIB8gFv0AAwj9CwIAIB9BEGogACgCADYCAAwBCyAWQcQBaiICIBZBOGpBjAH8CgAAQawBQQQQkQ4iAEUNASAAIAE2AgggAEKBgICAEDcCACAAIBb9AAMI/QsCDCAAQRxqIBZBGGooAgA2AgAgAEEgaiACQYwB/AoAACAfQeivwwA2AgggHyAANgIEIB9BAzYCAAsgFkHQAmokAAwBC0EEQawBQfjKxAAoAgAiAEHMCCAAGxEAAAALIAooAjAhACAKKAIsIQEgCigCKCECICIoAgAiAwRAICYgA0ECdEEEEOgOCyAkKAIAIgMEQCAlIANBAnRBBBDoDgsgFSAANgIEIBUgAUEAIAJBA0YbNgIAIApBQGskAAwGCyAKQQA2AjggCkEBNgIsIApB2L/BADYCKCAKQgQ3AjAgCkEoakHgv8EAELkNAAsgDiAAQei6wQAQ1w0AC0EBQQFBkNbBABCFCwALQQJBAkGg1sEAEIULAAtBAAsgAkHousEAENcNAAsCQCAVKAIAIgEEfyAVKAIEIQJBFEEEEJEOIgBFDQEgACACNgIQIAAgATYCDCAAQQA2AgggAEKBgICAEDcCACAAQQhqBUEACyEAIBVBIGokACAADwtBBEEUQfjKxAAoAgAiAEHMCCAAGxEAAAAL7QgCCH8BfiMAQSBrIgckACAHIAE2AhAgByAANgIMIAcgATYCCCAHIAM2AhwgByACNgIYIAcgAzYCFCAHQRRqIQpBACEAIwBBQGoiAiQAIAdBCGoiCygCBCEMIAsoAggiAwRAIANBA24gA0EDcEEAR2ohCAsgCK1CDH4iDachAQJAAkACQAJAAkACQCANQiCIpw0AIAFB/P///wdLDQACQCABRQRAQQQhCUEAIQgMAQtBBCEGIAFBBBCRDiIJRQ0BCyACQQA2AiQgAiAJNgIgIAIgCDYCHCADBEAgAyADQQNuIgFBA2xHIAFqIgEgCEsEQCACQRxqQQAgAUEEQQwQ1gYgAigCICEJIAIoAiQhAAsgCSAAQQxsaiEBA0AgA0ECTQ0DIAEgBWoiCCAFIAxqIgYqAgA4AgAgCEEEaiAGQQRqKQIANwIAIAVBDGohBSAAQQFqIQAgA0EDayIDDQALCyACQRhqIAA2AgAgAiACKQIcNwMQIAooAgQhAUEAIQlBACEDIAooAggiBQRAIAVBA24gBUEDcEEAR2ohAwsgA61CDH4iDachACANQiCIpw0CIABB/P///wdLDQJBACEIAkAgAEUEQEEEIQZBACEDDAELQQQhCSAAQQQQkQ4iBkUNAwsgAkEANgIwIAIgBjYCLCACIAM2AiggBQRAIAUgBUEDbiIAQQNsRyAAaiIAIANLBEAgAkEoakEAIABBBEEMENYGIAIoAiwhBiACKAIwIQgLIAYgCEEMbGohAyABIQADQCAFQQFGDQUgBUECTQ0GIAMgACgCADYCACADQQRqIAApAgQ3AgAgA0EMaiEDIAhBAWohCCAAQQMgBSAFQQNPGyIGQQJ0aiEAIAUgBmsiBQ0ACyACKAIsIQYgAigCKCEDCyACQQhqIQkjAEHgAGsiBSQAIAUgAkEQaiAGIAgQPkEAIQACQAJAIAUoAgBBgICAgHhHBEBB7ABBBBCRDiIARQ0BIABCgYCAgBA3AgAgAEEIaiAFQeAA/AoAACAAIAQ4AmgLIAlByNXDADYCBCAJIAA2AgAgBUHgAGokAAwBC0EEQewAQfjKxAAoAgAiAEHMCCAAGxEAAAALIAIoAgwhACACKAIIIQUgAwRAIAYgA0EMbEEEEOgOCyAKKAIAIgMEQCABIANBAnRBBBDoDgsgCygCACIBBEAgDCABQQJ0QQQQ6A4LIAcgBTYCACAHIAA2AgQgAkFAayQADAULIAYgAUHousEAENcNAAsgAkEANgI4IAJBATYCLCACQdi/wQA2AiggAkIENwIwIAJBKGpB4L/BABC5DQALIAkgAEHousEAENcNAAtBAUEBQdDWwQAQhQsAC0ECQQJB4NbBABCFCwALAkAgBygCACIBBH8gBygCBCECQRRBBBCRDiIARQ0BIAAgAjYCECAAIAE2AgwgAEEANgIIIABCgYCAgBA3AgAgAEEIagVBAAshACAHQSBqJAAgAA8LQQRBFEH4ysQAKAIAIgBBzAggABsRAAAAC9ECAgp9AX8jAEEwayINJAAgDUEMaiABIAIQ8gUgACANKgIsIggiBSAFIA0qAiAiCSIDIAMgDSoCFCIGIgQgAyAEXhsgBCAEXBsiAyADIAVdGyADIANcGzgCFCAAIA0qAigiCiIFIAUgDSoCHCILIgMgAyANKgIQIgciBCADIAReGyAEIARcGyIDIAMgBV0bIAMgA1wbOAIQIAAgDSoCJCIEIAQgDSoCGCIFIAUgDSoCDCIDIAMgBV0bIAMgA1wbIgwgBCAMXhsgDCAMXBs4AgwgACAGIAYgCSAGIAldGyAJIAlcGyIGIAYgCCAGIAhdGyAIIAhcGzgCCCAAIAcgByALIAcgC10bIAsgC1wbIgcgByAKIAcgCl0bIAogClwbOAIEIAAgAyADIAUgAyAFXRsgBSAFXBsiAyADIAQgAyAEXRsgBCAEXBs4AgAgDUEwaiQAC6UBAgF/AX4jAEFAaiIEJAAgBEEIaiIFIAEgAUEMaiABQRhqIAIQywICQAJAIAQoAghBBEcEQCAEQThqIgEgBUEUaigCADYCACAEIAQpAhQ3AzAgAyAEKgIQIgNgDQEgAEEENgIADAILIABBBDYCAAwBCyAEKQMIIQYgACADOAIIIAAgBjcCACAAIAQpAzA3AgwgAEEUaiABKAIANgIACyAEQUBrJAAL/AICA38BfiMAQRBrIgckAAJAAkAgAARAIABBEGsiCCgCAEEBaiEGIAggBjYCACAGRQ0BIAAoAgANAiAAQX82AgAgByAINgIMIAcgADYCCCAHIABBEGoiBjYCBCAFQQBHIQUCQAJAIAYgAb0iCacgCUIgiKcQ3gkiBgRAAkAgBioCQCACXA0AIAYqAkQgA1wNACAGKgJIIARcDQAgBioCXCACXA0AIAYqAmAgA1wNACAGKgJkIARbDQMLIAYgBDgCZCAGIAM4AmAgBiACOAJcIAYgBDgCSCAGIAM4AkQgBiACOAJAIAYgBigCvAJBAnI2ArwCIAYQ5A0gBUUNAiAGLQDlAkEBRg0CIAYtANQCRQ0BIAYgBigCvAJBBHI2ArwCDAELQezPwQBBzQBBzNDBABDRCwALIAZBADYC0AIgBkEAOgDUAgsgAEEANgIAIAggCCgCAEEBayIANgIAIABFBEAgB0EMahDrDAsgB0EQaiQADwsQgw8LAAsQhA8AC+YIAgh/AX4jAEEgayIGJAAgBiABNgIQIAYgADYCDCAGIAE2AgggBiADNgIcIAYgAjYCGCAGIAM2AhQgBkEUaiEJQQAhACMAQUBqIgIkACAGQQhqIgooAgQhCyAKKAIIIgMEQCADQQNuIANBA3BBAEdqIQcLIAetQgx+IgynIQECQAJAAkACQAJAAkAgDEIgiKcNACABQfz///8HSw0AAkAgAUUEQEEEIQhBACEHDAELQQQhBSABQQQQkQ4iCEUNAQsgAkEANgIkIAIgCDYCICACIAc2AhwgAwRAIAMgA0EDbiIBQQNsRyABaiIBIAdLBEAgAkEcakEAIAFBBEEMENYGIAIoAiAhCCACKAIkIQALIAggAEEMbGohAQNAIANBAk0NAyABIARqIgcgBCALaiIFKgIAOAIAIAdBBGogBUEEaikCADcCACAEQQxqIQQgAEEBaiEAIANBA2siAw0ACwsgAkEYaiAANgIAIAIgAikCHDcDECAJKAIEIQFBACEIQQAhAyAJKAIIIgQEQCAEQQNuIARBA3BBAEdqIQMLIAOtQgx+IgynIQAgDEIgiKcNAiAAQfz///8HSw0CQQAhBwJAIABFBEBBBCEFQQAhAwwBC0EEIQggAEEEEJEOIgVFDQMLIAJBADYCMCACIAU2AiwgAiADNgIoIAQEQCAEIARBA24iAEEDbEcgAGoiACADSwRAIAJBKGpBACAAQQRBDBDWBiACKAIsIQUgAigCMCEHCyAFIAdBDGxqIQMgASEAA0AgBEEBRg0FIARBAk0NBiADIAAoAgA2AgAgA0EEaiAAKQIENwIAIANBDGohAyAHQQFqIQcgAEEDIAQgBEEDTxsiBUECdGohACAEIAVrIgQNAAsgAigCLCEFIAIoAighAwsgAkEIaiEIIwBB4ABrIgAkACAAIAJBEGogBSAHED5BACEEAkACQCAAKAIAQYCAgIB4RwRAQegAQQQQkQ4iBEUNASAEQoGAgIAQNwIAIARBCGogAEHgAPwKAAALIAhBmKLDADYCBCAIIAQ2AgAgAEHgAGokAAwBC0EEQegAQfjKxAAoAgAiAEHMCCAAGxEAAAALIAIoAgwhACACKAIIIQQgAwRAIAUgA0EMbEEEEOgOCyAJKAIAIgMEQCABIANBAnRBBBDoDgsgCigCACIBBEAgCyABQQJ0QQQQ6A4LIAYgBDYCACAGIAA2AgQgAkFAayQADAULIAUgAUHousEAENcNAAsgAkEANgI4IAJBATYCLCACQdi/wQA2AiggAkIENwIwIAJBKGpB4L/BABC5DQALIAggAEHousEAENcNAAtBAUEBQbDWwQAQhQsAC0ECQQJBwNbBABCFCwALAkAgBigCACIBBH8gBigCBCECQRRBBBCRDiIARQ0BIAAgAjYCECAAIAE2AgwgAEEANgIIIABCgYCAgBA3AgAgAEEIagVBAAshACAGQSBqJAAgAA8LQQRBFEH4ysQAKAIAIgBBzAggABsRAAAAC6wBAQR+IAAoAgAoAgApAwBChICAgBCFIgVC/////w+DIQMgASgCACACQWRsaiIAQRxrNQIAQt2h8csMhSEEIABBGGs1AgBCt9OwhQyFIgYgBUIgiCIFfiAAQRRrKQIAIAMgBH6FhSADIAZ+IAQgBX6FQiCJhSIDQiCIIgRCt9OwhQx+IANC/////w+DIgNC3aHxywx+hSAEQt2h8csMfiADQrfTsIUMfoVCIImFC6UBAQR+IAEoAgAgAkFsbGoiAUEQazUCAEK307CFDIUhAyABQQxrKAIAIAAoAgAoAgApAwBCg4CAgBCFIgRCIIgiBSADfiABQRRrNQIAQt2h8csMhSIGIARC/////w+DIgR+hSADIAR+IAUgBn6FQiCJhSIDp3OtIgRC3aHxywx+IANCIIgiA0K307CFDH6FIARCt9OwhQx+IANC3aHxywx+hUIgiYULpQEBBH4gASgCACACQWhsaiIBQRRrNQIAQrfTsIUMhSEDIAFBEGsoAgAgACgCACgCACkDAEKDgICAEIUiBEIgiCIFIAN+IAFBGGs1AgBC3aHxywyFIgYgBEL/////D4MiBH6FIAMgBH4gBSAGfoVCIImFIgOnc60iBELdofHLDH4gA0IgiCIDQrfTsIUMfoUgBEK307CFDH4gA0LdofHLDH6FQiCJhQueAQEGfQJAAkACQCACKgIAIgMgA5QgAioCCCIEIASUkiIHQwAAAABcBEAgASoCACIFIAIqAgSUIgggBCAEIAeRIgSVIAEqAgQiB5QiBpQgAyADIASVIAeUIgOUIAiTkl4NASAFjCEFDAMLIAEqAgAgAioCBJghBQwBC0MAAAAAIQYLQwAAAAAhAwsgACAGOAIIIAAgBTgCBCAAIAM4AgALngEBB30CQAJAAkAgAioCACIGIAaUIAIqAggiByAHlJIiBEMAAAAAXARAIAEqAgAiBSACKgIElCIDIAYgBJEiCJUgASoCBCIJlCIEIAaUIAOTIAcgCJUgCZQiAyAHlJJeDQEgBYwhBQwDCyABKgIAIAIqAgSYIQUMAQtDAAAAACEDC0MAAAAAIQQLIAAgAzgCCCAAIAU4AgQgACAEOAIAC6cBAQJ/IwBBEGsiAiQAAkAgASgCBCIDRQRAIABBADYCAAwBCyABIANBAWs2AgQgASgCACIBKAIEIgNBA00EQCACQQA6AAsgAkElOwAJIAJBADYCDCACQQE6AAggAkEIahCfDSEBIABBAjYCACAAIAE2AgQMAQsgAEEBNgIAIAEgA0EEazYCBCABIAEoAgAiAUEEajYCACAAIAEqAAA4AgQLIAJBEGokAAuhBAIGfwJ8IwBBEGsiAyQAAkACQCAABEAgAEEIayIEKAIAQQFqIQIgBCACNgIAIAJFDQEgACgCAA0CIABBfzYCACADIAQ2AgggAyAANgIEIAMgAEEEaiICNgIAIAMgATYCDCADQQxqIQUjAEFAaiIBJAAgAUGBATYCGCABQRxqIAIoAhAiBiACKAIUIgcQogECQCABKAIcIgJBAkYNAANAIAErAiwhCCABKwIkIQkCQCACQQFxBEAgASAJEAA2AjQgASAIEAA2AjggAUGDATYCPCABQQhqIAUgAUEYaiABQTRqIAFBOGogAUE8ahCqDCABKAIMIgJBhAFPBEAgAhACCyABKAI8IgJBhAFPBEAgAhACCyABKAI4IgJBhAFPBEAgAhACCyABKAI0IgJBhAFJDQEgAhACDAELIAEgCRAANgI0IAEgCBAANgI4IAFBggE2AjwgAUEQaiAFIAFBGGogAUE0aiABQThqIAFBPGoQqgwgASgCFCICQYQBTwRAIAIQAgsgASgCPCICQYQBTwRAIAIQAgsgASgCOCICQYQBTwRAIAIQAgsgASgCNCICQYQBSQ0AIAIQAgsgAUEcaiAGIAcQogEgASgCHCICQQJHDQALIAEoAhgiAkGEAUkNACACEAILIAFBQGskACAAQQA2AgAgBCAEKAIAQQFrIgA2AgAgAEUEQCADQQhqEO0MCyADQRBqJAAPCxCDDwsACxCEDwAL3Q4CDn8BfiMAQRBrIgkkAAJAAkAgAARAIABBCGsiCygCAEEBaiEEIAsgBDYCACAERQ0BIAAoAgANAiAAQX82AgAgCSALNgIIIAkgADYCBCAJIABBBGoiAjYCACAJIAE2AgwgCUEMaiEMIwBBkAFrIgEkACABQYEBNgIQIAIoAhwiBEGAAWohDSABQRZqIQggAigCGCEOAkADQAJAAkACQAJAAkACQAJAIA5BAWsOAgECAAsDQCAEKALMASAEKAIAIgMgBCgCyAEiBUEBa3EiB0E0bGoiBigCMCECIAIgA0EBakcEQCACIANHDQEgBCgCQCAFQX9zcSADRw0BDAQLIAQoAsABIAdBAWpNBEAgA0EAIAQoAsQBIgJrcSACaiECCyAEKAIAIgcgA0YhBSAEIAIgByAFGzYCACAFRQ0ACyABQeAAaiICQRBqIgUgBkEQav0AAgD9CwMAIAJBIGoiAiAGQSBq/QACAP0LAwAgBiAEKALEASADajYCMCABIAb9AAIA/QsDYCANELwDIAhBIGogAv0AAwD9CwEAIAhBEGogBf0AAwD9CwEAIAggAf0AA2D9CwEADAULA0AgBCgCACIDQQF2IgdBH3EiBUEfRg0AIAQoAgQhBiADQQJqIQIgA0EBcUUEQCAHIAQoAkAiCkEBdkYNAyACIAMgCnNBP0tyIQILIAZFDQAgBCACIAQoAgAiByADIAdGGzYCACADIAdHDQALIAVBHkYEQANAIAYoAgAiA0UNAAsgAygCACEHIAQgAzYCBCAEIAJBfnEgB0EAR3JBAmo2AgALIAYgBUE0bCICakEEaiEDA0AgAy0AMEEBcUUNAAsgAUHgAGoiB0EgaiIKIANBIGr9AAIA/QsDACAHQRBqIgcgA0EQav0AAgD9CwMAIAEgA/0AAgD9CwNgAkACQCAFQR5HBEAgAyADKAIwIgNBAnI2AjAgA0EEcUUNAiAFQRxLDQEgBkHoAGohBQNAIAIgBWoiAy0AAEECcUUEQCADIAMoAgAiA0EEcjYCACADQQJxRQ0ECyACQTRqIgJB5AtHDQALDAELQQAhAwNAIAMgBmoiBUE0aiICLQAAQQJxRQRAIAIgAigCACICQQRyNgIAIAJBAnFFDQMLIAVB6ABqIgItAABBAnFFBEAgAiACKAIAIgJBBHI2AgAgAkECcUUNAwsgA0HoAGoiA0GYDEcNAAsLIAZB0AxBBBDoDgsgCCAB/QADYP0LAQAgCEEgaiAK/QADAP0LAQAgCEEQaiAH/QADAP0LAQAMBAsgASAELQAAIgI6AEcgBEEBOgAAIAJBAUYNAQJAAkACQAJAIAQoAgwiAkUNACACQQxsIQogBCgCCCEPQQAhA0EAIQIDQAJAIAMgD2oiBSgCACIGKAIUQYCPxABGDQAgBiAGKAIMIgcgBUEEaigCACAHGzYCDCAHDQAgBUEIaigCACIFBEAgBiAFNgIQCyAEKAIMIgYgAk0NCCAEKAIIIANqIgUoAgAhAyAFQQRqKQIAIRAgBiACa0EMbEEMayICBEAgBSAFQQxqIAL8CgAACyAEIAZBAWs2AgwgA0UNAiABIAM2AkggASAQNwJMIARBADoAACAQQoCAgIAQVCIGDQUgEEIgiKciAi0ANUUEQANAIAItADRFDQALIAIoAgAhAyACQQA2AgAgA0EBcQRAIAFB4ABqIgNBIGogAkEkav0AAgD9CwMAIANBEGogAkEUav0AAgD9CwMAIAEgAv0AAgT9CwNgIAJBOEEEEOgOIAEoAkghAwwGC0HcucEAEPIOAAsgAigCACEFIAJBADYCACAFQQFxDQNB7LnBABDyDgALIAJBAWohAiAKIANBDGoiA0cNAAsLIARBADoAAAwDCyACQQE6ADQgAUHgAGoiBUEgaiACQSRq/QACAP0LAwAgBUEQaiACQRRq/QACAP0LAwAgASAC/QACBP0LA2ALIAggAf0AA2D9CwEAIAhBIGogAUHgAGoiAkEgav0AAwD9CwEAIAhBEGogAkEQav0AAwD9CwEACyADIAMoAgAiAkEBazYCACACQQFGBEAgAUHIAGoQ1wsLIAZFDQMLIAEoAhAiBEGEAU8EQCAEEAILIAFBkAFqJAAMBAsgAUIANwJUIAFCgYCAgMAANwJMIAFBrLrBADYCSCABQccAaiABQcgAakG0usEAEPsMAAsgAiAGQfy5wQAQhAsAC0E8QQQQkQ4iAgRAIAJBADYCCCACQoGAgIAQNwIAIAIgCP0AAQD9CwEMIAJBHGogCEEQav0AAQD9CwEAIAJBLGogCEEgav0AAQD9CwEAIAEgAkEIahAGNgJgIAFBCGogDCABQRBqIAFB4ABqEMAMIAEoAgwiAkGEAU8EQCACEAILIAEoAmAiAkGEAUkNASACEAIMAQsLQQRBPEH4ysQAKAIAIgBBzAggABsRAAAACyAAQQA2AgAgCyALKAIAQQFrIgA2AgAgAEUEQCAJQQhqEO0MCyAJQRBqJAAPCxCDDwsACxCEDwALpAEBBH4gASgCACACQXRsakEMaykAACIDIAAoAgAoAgApAwBCOImFIgRCIIgiBSADQpeSnKrbtrXCP4UiA0IgiCIGfiAEQv////8PgyIEIANC/////w+DIgN+hSADIAV+IAQgBn6FQiCJhSIDQv////8Pg0IChSIEQt2h8csMfiADQiCIIgNCt9OwhQx+hSAEQrfTsIUMfiADQt2h8csMfoVCIImFC6QBAQR+IAEoAgAgAkFsbGpBFGspAAAiAyAAKAIAKAIAKQMAQjiJhSIEQiCIIgUgA0KXkpyq27a1wj+FIgNCIIgiBn4gBEL/////D4MiBCADQv////8PgyIDfoUgAyAFfiAEIAZ+hUIgiYUiA0L/////D4NCAoUiBELdofHLDH4gA0IgiCIDQrfTsIUMfoUgBEK307CFDH4gA0LdofHLDH6FQiCJhQu9AQEBfyMAQdABayIFJAAgBf0MAAAAAAAAAAAAAAAAAAAAAP0LBMABIAX9DAAAAAABAAAAAgAAAAMAAAD9CwQQIAVBIGpBAEGgAfwLACAFIAEoAgQgASgCCCAFQRBqIAIgAxAyAkAgBCACKgIAIAUqAgCTIgQgBJQgAioCBCAFKgIEkyIEIASUkiACKgIIIAUqAgiTIgQgBJSSkV1FBEAgACAF/QACAP0LAgAMAQsgAEECOgAMCyAFQdABaiQAC9gEAwV/B30BfiMAQRBrIggkAAJAAkAgAARAIABBCGsiCigCAEEBaiEGIAogBjYCACAGRQ0BIAAoAgANAiAAQX82AgAgCCAKNgIMIAggADYCCCAIIABBBGoiBjYCBCMAQRBrIgkkAAJAAkAgAiAClCAEIASUkiADIAOUIAUgBZSSkiILQwAAAABeBEAgBiABvSISpyASQiCIpxDfCSIGRQ0BIAQgC5EiBJUiCyALjCAFIASVIhBDAAAAAGAiBxsiBSAFlCACIASVIgIgAowgBxsiDyAPlCADIASVIgMgA4wgBxsiBCAElJKSIhFDAAAAAF4EQCAFIBGRIgWVIAsgC5QgAiAClCADIAOUkpKRIBCLELYPIgIgApIiApQhDSAPIAWVIAKUIQ4gBCAFlSAClCEMCyAJIA04AgwgCSAMOAIIIAkgDjgCBCAJQQRqIQdDAAAAACECIAYoAhBBAUYEQCAGIAYoAnBBBHI2AnACfSAHKgIAQwAAAD+UIgMgA5QgByoCBEMAAAA/lCIEIASUkiAHKgIIQwAAAD+UIgUgBZSSIgtDAACAKF8EQEMAAIA/IQRDAAAAACEFQwAAAAAMAQsgBSALkSILELsPIAuVIgyUIQIgBCAMlCEFIAsQvA8hBCADIAyUCyEDIAYgBDgCKCAGIAI4AiQgBiAFOAIgIAYgAzgCHAsLIAlBEGokAAwBC0Hc0MEAQcwAQbjRwQAQ0QsACyAAQQA2AgAgCiAKKAIAQQFrIgA2AgAgAEUEQCAIQQxqEO4MCyAIQRBqJAAPCxCDDwsACxCEDwALnRMDC34qfw99IwBBEGsiHiQAAkACQCAABEAgAEEIayIfKAIAQQFqIRcgHyAXNgIAIBdFDQEgACgCAA0CIABBfzYCACAeIB82AgwgHiAANgIIIB4gAEEEaiIXNgIEIwBBMGsiFCQAIBRBGGogFyABvSIGpyAGQiCIpyACvSIGpyAGQiCIpxC0AgJAIBQoAhgiGUUNACAUKAIcIhdFDQAgFEEQaiAZELIMIBQoAhAgFCgCFBDCCyEWIBRBCGogFxCyDCAUKAIIIBQoAgwQwgshGCAWRQ0AIBhFDQAgFCAFNgIsIBQgBDYCKCAUIAM2AiQgFEEkaiEEIwBB0AFrIhEkAAJAAkACQCAWKAJIIgMEQCAWKAJEIhkgA0EMbGohLyAWKgJsIjtDAAAAP5QhPiAWKgJoIjxDAAAAP5QhPyAWKgJkIj1DAAAAP5QhQCAZQQxqIQMgFikDOEKDgICAEIUiBkL/////D4MhCSAGQiCIIQogOyAEKAIIIjCyjJQhQSA8IAQoAgQiMbKMlCFCID0gBCgCACIysoyUIUMgFigCUCEzIBYoAlQhJyAWKAIoISggFigCLCEgIBYoAjQhNANAIBkhBCADIRkgBCgCACEVIAQoAgQhAyARIEEgOyAEKAIIQQN0IheylCA+k5IiRDgCFCARIEIgPCADQQN0IgWylCA/k5IiRTgCECARIEMgPSAVQQN0IgOylCBAk5IiRjgCDCARIEEgPiA7IBdBCGqylJKSIkc4AiAgESBCID8gPCAFQQhqspSSkiJIOAIcIBEgQyBAID0gA0EIarKUkpIiSTgCGAJAIBgoAghFBEBBACESQQAhFQwBC0EAIRIgGCgCBCIDQQAgAyoCGCBEYBtBACADKgIUIEVgG0EAIAMqAhAgRmAbQQAgAyoCCCBHXxtBACADKgIEIEhfG0EAIAMqAgAgSV8bIRUgAygCPEH/////A3FFDQAgAyoCICBJXyADKgIkIEhfcSADKgIoIEdfcSADKgIwIEZgcSADKgI0IEVgcSADKgI4IERgcSESIANBIGohAwsgESAVNgK0ASARIBg2AqwBIBEgEjYCqAEgESADNgIoIBFBADYCJCARIBFBDGo2ArABIBEgEUEkahDZAwJAIBEoAgBBAXFFBEAgESgCqAEiA0EhSQ0BIBEoAiwgA0ECdEEEEOgODAELIBEoAqgBIgNBIU8EQCARKAIsIANBAnRBBBDoDgsgBCgCAEEDdCIDQQFrIhogA0EJaiI1Tg0AIAQoAgRBA3QiBUEBayIhIAVBCWoiKU4NACAEKAIIQQN0IgRBAWsiIiAEQQlqIipIICJqITYgISAhIClIaiE3A0AgAyEXIBpBH3YiBSAaakEIbSEEIBogMmsiI0EfdiEVIBUgI2pBCG0hAyAiICpIBEAgBCAFayIrQd2h8ct8c60iBiAKfiENIAYgCX4hDiADIBVrIixB3aHxy3xzrSELIDchAyAhIRUDQCADIQUgFUEfdiIDIBVqQQhtIANrIi1Bt9OwhXxzrSIGIAp+IA6FIAYgCX4gDYVCIImFIgdCIIgiBkK307CFDH4hDyAGQt2h8csMfiEQIAenITggFSAxayIkQR92IQMgAyAkakEIbSADayIuQbfTsIV8c60hDCAVICtrQQN0IBpqITkgJCAsa0EDdCAjaiE6IDYhEiAiIQQDQCAEIQMgEiEEIBEgFTYCvAEgESAaNgK4ASARICQ2AsgBIBEgIzYCxAEgESADNgLAASARIAMgMGsiGzYCzAEgA0EfdiITIANqQQhtIRICQCA0RQRAQQAhAwwBCyA5IAMgLWtBBnRqIBIgE2siE0EJdGshHCAgIBMgOHOtIgZC3aHxywx+IA+FIAZCt9OwhQx+IBCFQiCIhSIGp3EhAyAGQhmIQv8Ag0KBgoSIkKDAgAF+IQdBACESA0ACQAJAIAMgKGopAAAiCCAHhSIGQoGChIiQoMCAAX0gBkJ/hYNCgIGChIiQoMCAf4MiBkIAUgRAA0ACQCArICggBnqnQQN2IANqICBxQWxsaiIdQRRrKAIARw0AIC0gHUEQaygCAEcNACATIB1BDGsoAgBGDQMLIAZCAX0gBoMiBkIAUg0ACwsgCCAIQgGGg0KAgYKEiJCgwIB/g1ANAUEAIQMMAwsCQCAdQQhrKAIAIgMgJ0kEQCAcQf8DSw0BIDMgA0EJdGogHGoiA0EAIAMtAABBwABHGyEDDAQLIAMgJ0H06cMAEIULAAsgHEGABEGE6sMAEIULAAsgEkEIaiISIANqICBxIQMMAAsACyAbQR92IhMgG2pBCG0hEgJAAkACQCAYKAI0RQ0AIDogGyAua0EGdGogEiATayIbQQl0ayElIBgoAiwiHCAbIBgpAzhCg4CAgBCFIgZCIIgiByAMfiAGQv////8PgyIGIAt+hSAGIAx+IAcgC36FQiCJhSIGp3OtIgdC3aHxywx+IAZCIIgiBkK307CFDH6FIAdCt9OwhQx+IAZC3aHxywx+hUIgiIUiBqdxIRIgBkIZiEL/AINCgYKEiJCgwIABfiEHIBgoAighHUEAIRMDQAJAIBIgHWopAAAiCCAHhSIGQoGChIiQoMCAAX0gBkJ/hYNCgIGChIiQoMCAf4MiBkIAUgRAA0ACQCAsIB0gBnqnQQN2IBJqIBxxQWxsaiImQRRrKAIARw0AIC4gJkEQaygCAEcNACAbICZBDGsoAgBGDQMLIAZCAX0gBoMiBkIAUg0ACwsgCCAIQgGGg0KAgYKEiJCgwIB/g0IAUg0CIBNBCGoiEyASaiAccSESDAELCyAmQQhrKAIAIhMgGCgCVCISTw0KICVB/wNLDQsgGCgCUCATQQl0aiAlaiITLQAAIRIgAwRAIBJBwABGDQIgAyADLQAAIBJyIgM6AAAgEyATLQAAIANyOgAADAMLIBJBwABGDQIgFiARQbgBahDUAiEDIBMgEy0AACADQf8BcXI6AAAMAgsgA0UNAQsgGCARQcQBahDUAiESIAMgAy0AACASQf8BcXI6AAALIAQgKkgiAyAEaiESIAMNAAsgBSApSCIEIAVqIQMgBSEVIAQNAAsLIBcgNUgiBCAXaiEDIBchGiAEDQALCyAZQQBBDCAZIC9GIgQbaiEDIARFDQALCyARQdABaiQADAILIBMgEkGU6sMAEIULAAsgJUGABEGk6sMAEIULAAsLIBRBMGokACAAQQA2AgAgHyAfKAIAQQFrIgA2AgAgAEUEQCAeQQxqEO4MCyAeQRBqJAAPCxCDDwsACxCEDwALnQEBB30gASoCACIFIAIqAgAiBpQgASoCBCIHIAIqAgQiCJSSIAEqAggiCSACKgIIIgqUkiEEIANBAEcgBEMAAAAAX3FFBEAgACAKIAkgBJSTOAIIIAAgCCAHIASUkzgCBCAAIAYgBSAElJM4AgAgACAEQwAAAABfOgAMDwsgACACKQIANwIAIABBCGogAkEIaigCADYCACAAQQE6AAwLpgECAX8EfSMAQSBrIgIkACABKgIMIgNDAAAAAGBFBEAgAkEANgIYIAJBATYCDCACQejgwgA2AgggAkIENwIQIAJBCGpB8ODCABC5DQALIAEqAgQhBCABKgIAIQUgACABKgIIIgYgA5I4AhQgACAEIAOSOAIQIAAgBSADkjgCDCAAIAaMIAOTOAIIIAAgBIwgA5M4AgQgACAFjCADkzgCACACQSBqJAALpgECAX8BfSMAQcABayIDJAAgASoCYCEFIANB4ABqIgQgARDyASADIAQgAhClAQJAAkAgAygCAEGAgICAeEcEQCAEIANB4AD8CgAAQeQAQQQQkQ4iAUUNASABIARB4AD8CgAAIAEgBTgCYAwCC0EAIQEMAQtBBEHkAEH4ysQAKAIAIgBBzAggABsRAAAACyAAQcjVwwA2AgQgACABNgIAIANBwAFqJAAL1QICBX8BfSMAQSBrIgIkACACIAA4AgwgAiAAQwAAAACUIgc4AhAgAiAHOAIIIAIgAIw4AhggAiAHjCIAOAIcIAIgADgCFCMAQSBrIgMkACADQRBqIgUgAkEUaiIEQQhqKAIANgIAIANBHGogAkEIaiIGQQhqKAIANgIAIAMgBCkCADcDCCADIAYpAgA3AhRBJEEEEJEOIgRFBEBBBEEkQfjKxAAoAgAiAkHMCCACGxEAAAALIARCgYCAgBA3AgAgBCADKQMINwIIIAQgATgCICAEQRBqIAX9AAMA/QsCACACQeClwwA2AgQgAiAENgIAIANBIGokACACKAIEIQQgAigCACEFQRRBBBCRDiIDRQRAQQRBFEH4ysQAKAIAIgJBzAggAhsRAAAACyADIAU2AgwgA0EANgIIIANCgYCAgBA3AgAgAyAENgIQIAJBIGokACADQQhqC6QBAQR+IAEoAgAgAkEDdGtBCGspAAAiAyAAKAIAKAIAKQMAQjiJhSIEQiCIIgUgA0KXkpyq27a1wj+FIgNCIIgiBn4gBEL/////D4MiBCADQv////8PgyIDfoUgAyAFfiAEIAZ+hUIgiYUiA0L/////D4NCAoUiBELdofHLDH4gA0IgiCIDQrfTsIUMfoUgBEK307CFDH4gA0LdofHLDH6FQiCJhQuTAQEHfSAAIAEqAhgiAiABKgIIIgMgASoCFCIEIAMgBGAbkjgCFCAAIAIgASoCBCIFIAEqAhAiBiAFIAZgG5I4AhAgACACIAEqAgAiByABKgIMIgggByAIYBuSOAIMIAAgAyAEIAMgBF8bIAKTOAIIIAAgBSAGIAUgBl8bIAKTOAIEIAAgByAIIAcgCF8bIAKTOAIAC7UBAQl9IAEqAhQhByABKgIQIQggASoCDCEJIAEqAgghCiABKgIEIQsgASoCACEMIAIqAgghBCACKgIEIQUgAioCACEGQRhBBBCRDiIBRQRAQQRBGEH4ysQAKAIAIgBBzAggABsRAAAACyABIAQgB5Q4AhQgASAFIAiUOAIQIAEgBiAJlDgCDCABIAQgCpQ4AgggASAFIAuUOAIEIAEgBiAMlDgCACAAQYyfwwA2AgQgACABNgIAC44BAQF/IAAoAjAiAQRAIAAoAjQgAUEDdEEEEOgOCyAAKAJEIgEEQCAAKAJIIAFBDGxBBBDoDgsgACgCGCIBBEAgACgCHCABQQR0QQQQ6A4LIAAoAiQiAQRAIAAoAiggAUGAA2xBEBDoDgsgACgCBCIBBEAgACgCACABQQN0a0EIayABQQlsQRFqQQgQ6A4LC5EBAQN/IwBBIGsiAyQAIAAoAgAiABAcIQQgAyACNgIEIAMgBDYCACACIARGBEAQHyIFEBEiBCABIAIQGiEBIAVBhAFPBEAgBRACCyAEQYQBTwRAIAQQAgsgACABQQAQGyABQYQBTwRAIAEQAgsgA0EgaiQADwsgA0EANgIIIAMgA0EEaiADQQhqQYjOwgAQ/AwAC5EBAQZ9IAIqAgAiBiAGlCACKgIEIgcgB5SSIAIqAggiBCAElJIhBSABKgIAIgggCJQhCSADQQBHIAUgCV9xRQRAIAAgBCAIIAWRlSIElDgCCCAAIAcgBJQ4AgQgACAGIASUOAIAIAAgBSAJXzoADA8LIAAgAikCADcCACAAQQhqIAJBCGooAgA2AgAgAEEBOgAMC5EBAQl9IAIqAgAiBCABKgIAIgaUIAIqAgQiBSABKgIEIgeUkiABKgIIIgggAioCCCIDlJIgBCABKgIMIgmUIAUgASoCECIKlJIgAyABKgIUIguUkl4hAiAAIAggCyACGyADIAEqAhgiA5SSOAIIIAAgByAKIAIbIAUgA5SSOAIEIAAgBiAJIAIbIAQgA5SSOAIAC5YBAQR/AkBBCCAAKAIAIgFBgICAgHhzIAFBAE4bIgJBAWtBB0kNACACBEAgAUUNASAAKAIEIAFBARDoDgwBCyAALQAEQQNHDQAgACgCCCIBKAIAIQIgAUEEaigCACIEKAIAIgMEQCACIAMRBgALIAQoAgQiAwRAIAIgAyAEKAIIEOgOCyABQQxBBBDoDgsgAEEMQQQQ6A4LsQQCBn8CfiMAQRBrIgUkAAJAAkAgAARAIABBCGsiBygCAEEBaiEEIAcgBDYCACAERQ0BIAAoAgANAiAAQX82AgAgBSAHNgIMIAUgADYCCCAFIABBBGoiAzYCBCMAQTBrIgQkAAJAAkAgAyABvSIJpyAJQiCIpxDfCSIDBEACQAJAAkACQCADKAJAIAMoAkQiBigCCEEBa0F4cWpBCGogBigCoAERBABB/wFxDhEFBgAGBgYGBgYGBgYBAgYGAwYLIARBEGogAxCyDCAEKAIQIAQoAhQQvwsiA0UNBSADIAI4AhgMBQsgBEEYaiADELIMIAQoAhggBCgCHBDKCyIDRQ0EIAMgAjgCBAwECyAEQSBqIAMQsgwgBCgCICAEKAIkEMwLIgNFDQMgAyACOAIEDAMLIARBKGogAxCyDCAEKAIoIAQoAiwQzgsiA0UNAiADIAI4AgQMAgtB3NDBAEHMAEG40cEAENELAAsgBEEIaiADELIMIAQoAgghBiAEKAIMIQgjAEEgayIDJAAgA0EIaiAGIAgoAmQRAAAgA0EQaiADKAIIIgYgAygCDCgCDBEAACADKQMYIQkgAykDECEKIANBIGokACAGQQAgCkLtjJ6ph4fC+DaFIAlCpZyhjOOU7KVehYRQGyIDRQ0AIAMgAjgCAAsgBEEwaiQAIABBADYCACAHIAcoAgBBAWsiADYCACAARQRAIAVBDGoQ7gwLIAVBEGokAA8LEIMPCwALEIQPAAvSAwMFfwF9AX4jAEEQayIFJAACQAJAIAAEQCAAQQhrIgYoAgBBAWohBCAGIAQ2AgAgBEUNASAAKAIADQIgAEF/NgIAIAUgBjYCDCAFIAA2AgggBSAAQQRqIgM2AgQjAEEgayIEJAACQAJAIAMgAb0iCacgCUIgiKcQ3wkiAwRAAkACQAJAIAMoAkAgAygCRCIHKAIIQQFrQXhxakEIaiAHKAKgAREEAEH/AXFBAmsODwQFBQUFBQUFBQUAAQUFAgULIARBCGogAxCyDCAEKAIIIAQoAgwQygsiA0UNBCADIAI4AgAMBAsgBEEQaiADELIMIAQoAhAgBCgCFBDMCyIDRQ0DIAMgAjgCAAwDCyAEQRhqIAMQsgwgBCgCGCAEKAIcEM4LIgNFDQIgAyACOAIADAILQdzQwQBBzABBuNHBABDRCwALIAQgAxCyDCAEKAIAIAQoAgQQvwsiA0UNACADIAI4AhAgAyACQwAAAACUIgg4AhQgAyAIOAIMIAMgAow4AgQgAyAIjCICOAIIIAMgAjgCAAsgBEEgaiQAIABBADYCACAGIAYoAgBBAWsiADYCACAARQRAIAVBDGoQ7gwLIAVBEGokAA8LEIMPCwALEIQPAAv3BQIGfwJ+IwBBEGsiBiQAAkACQCAABEAgAEEIayIIKAIAQQFqIQQgCCAENgIAIARFDQEgACgCAA0CIABBfzYCACAGIAg2AgwgBiAANgIIIAYgAEEEaiIDNgIEIwBBMGsiBCQAAkACQCADIAG9IgmnIAlCIIinEN8JIgMEQAJAAkACQAJAIAMoAkAgAygCRCIFKAIIQQFrQXhxakEIaiAFKAKgAREEAEH/AXFBDmsOBQUAAQIDBgsgBEEQaiADELIMIAQoAhAhBSAEKAIUIQcjAEEgayIDJAAgA0EIaiAFIAcoAmQRAAAgA0EQaiADKAIIIgUgAygCDCgCDBEAACADKQMYIQkgAykDECEKIANBIGokACAFQQAgCkKUxajUzfyclkOFIAlC9viGzLSH5MkChYRQGyIDRQ0FIAMgAjgCJAwFCyAEQRhqIAMQsgwgBCgCGCAEKAIcEM4LIgNFDQQgAyACOAIIDAQLIARBIGogAxCyDCAEKAIgIQUgBCgCJCEHIwBBIGsiAyQAIANBCGogBSAHKAJkEQAAIANBEGogAygCCCIFIAMoAgwoAgwRAAAgAykDGCEJIAMpAxAhCiADQSBqJAAgBUEAIApCs9vcjZaKhISAf4UgCUKcpMiCwICPkIt/hYRQGyIDRQ0DIAMgAjgCCAwDCyAEQShqIAMQsgwgBCgCKCEFIAQoAiwhByMAQSBrIgMkACADQQhqIAUgBygCZBEAACADQRBqIAMoAggiBSADKAIMKAIMEQAAIAMpAxghCSADKQMQIQogA0EgaiQAIAVBACAKQoSMrdXS8YipZYUgCUK0+a795fqy/d4AhYRQGyIDRQ0CIAMgAjgCYAwCC0Hc0MEAQcwAQbjRwQAQ0QsACyAEQQhqIAMQsgwgBCgCCCAEKAIMEMYLIgNFDQAgAyACOAIMCyAEQTBqJAAgAEEANgIAIAggCCgCAEEBayIANgIAIABFBEAgBkEMahDuDAsgBkEQaiQADwsQgw8LAAsQhA8AC7ABAgN/A30CQAJAAkAgAARAIABBCGsiASgCACIDQQFqIQIgASACNgIAIAJFDQEgACgCAEF/Rg0CIAAqAgwhBCAAKgIIIQUgACoCBCEGIAEgAzYCAEEYQQQQkQ4iAEUNAyAAIAQ4AhQgACAFOAIQIAAgBjgCDCAAQQA2AgggAEKBgICAEDcCACAAQQhqDwsQgw8LAAsQhA8AC0EEQRhB+MrEACgCACIAQcwIIAAbEQAAAAuwAQIDfwN9AkACQAJAIAAEQCAAQQhrIgEoAgAiA0EBaiECIAEgAjYCACACRQ0BIAAoAgBBf0YNAiAAKgIMIQQgACoCBCEFIAAqAgghBiABIAM2AgBBGEEEEJEOIgBFDQMgACAEOAIUIAAgBTgCECAAIAY4AgwgAEEANgIIIABCgYCAgBA3AgAgAEEIag8LEIMPCwALEIQPAAtBBEEYQfjKxAAoAgAiAEHMCCAAGxEAAAALsAECA38DfQJAAkACQCAABEAgAEEIayIBKAIAIgNBAWohAiABIAI2AgAgAkUNASAAKAIAQX9GDQIgACoCCCEEIAAqAgQhBSAAKgIMIQYgASADNgIAQRhBBBCRDiIARQ0DIAAgBDgCFCAAIAU4AhAgACAGOAIMIABBADYCCCAAQoGAgIAQNwIAIABBCGoPCxCDDwsACxCEDwALQQRBGEH4ysQAKAIAIgBBzAggABsRAAAAC7ABAgN/A30CQAJAAkAgAARAIABBCGsiASgCACIDQQFqIQIgASACNgIAIAJFDQEgACgCAEF/Rg0CIAAqAgghBCAAKgIMIQUgACoCBCEGIAEgAzYCAEEYQQQQkQ4iAEUNAyAAIAQ4AhQgACAFOAIQIAAgBjgCDCAAQQA2AgggAEKBgICAEDcCACAAQQhqDwsQgw8LAAsQhA8AC0EEQRhB+MrEACgCACIAQcwIIAAbEQAAAAuwAQIDfwN9AkACQAJAIAAEQCAAQQhrIgEoAgAiA0EBaiECIAEgAjYCACACRQ0BIAAoAgBBf0YNAiAAKgIEIQQgACoCDCEFIAAqAgghBiABIAM2AgBBGEEEEJEOIgBFDQMgACAEOAIUIAAgBTgCECAAIAY4AgwgAEEANgIIIABCgYCAgBA3AgAgAEEIag8LEIMPCwALEIQPAAtBBEEYQfjKxAAoAgAiAEHMCCAAGxEAAAALsAECA38DfQJAAkACQCAABEAgAEEIayIBKAIAIgNBAWohAiABIAI2AgAgAkUNASAAKAIAQX9GDQIgACoCBCEEIAAqAgghBSAAKgIMIQYgASADNgIAQRhBBBCRDiIARQ0DIAAgBDgCFCAAIAU4AhAgACAGOAIMIABBADYCCCAAQoGAgIAQNwIAIABBCGoPCxCDDwsACxCEDwALQQRBGEH4ysQAKAIAIgBBzAggABsRAAAAC5ABAQN/IAAoAgAiBSACaiIELQAAIQYgBCABp0EZdiIEOgAAIAUgACgCBCACQQhrcWpBCGogBDoAACAAIAAoAgxBAWo2AgwgACAAKAIIIAZBAXFrNgIIIAUgAkFkbGoiAkEcayIAIAMpAgA3AgAgAEEIaiADQQhq/QACAP0LAgAgAEEYaiADQRhqKAIANgIAIAILjgEBA38jAEEQayICJAACQAJAIAEgACgCIE8NACAAKAIcIAFBA3RqIgEoAgBBAUcNACAAKAIIIgMgASgCBCIEQQF2IgFNDQEgAiAAKAIEIAFBBnRqIgA2AgggAiAAQSBqNgIMIAJBCGogBEEBcUECdGooAgAhAwsgAkEQaiQAIAMPCyABIANB4PPCABCFCwALlgECAX8DfSMAQSBrIgMkACADIAIqAgggASoCbCIElY78ADYCECADIAIqAgQgASoCaCIFlY78ADYCDCADIAIqAgAgASoCZCIGlY78ADYCCCADIAIqAhQgBJWN/AA2AhwgAyACKgIQIAWVjfwANgIYIAMgAioCDCAGlY38ADYCFCAAIAEgA0EIaiADQRRqEJ4EIANBIGokAAufAQIBfwR9IwBBIGsiAiQAIAEqAggiA0MAAAAAYEUEQCACQQA2AhggAkEBNgIMIAJB6ODCADYCCCACQgQ3AhAgAkEIakHw4MIAELkNAAsgASoCACEEIAAgASoCBCIFIAOSIgY4AhQgACAGOAIMIAAgBIsiBCADkjgCECAAIAWMIAOTIgU4AgggACAFOAIAIAAgBIwgA5M4AgQgAkEgaiQAC6ABACAAKAKwA0GAgICAeEcEQCAAQbADahCCCgsgACgC8ANBgICAgHhHBEAgAEHwA2oQ7QkLIAAoAvQGQYCAgIB4RwRAIABB9AZqEM4HCyAAKAKMA0ECRwRAIABBEGoQ6wcLIAAoAsAGQQJHBEAgAEHABmoQowgLIAAoAswFQQJHBEAgAEGQBWoQyQkLIAAoAqQGQQJHBEAgAEHoBWoQswgLC5YBAgJ/A30jAEFAaiIEJAAgAUEIaiIFKgIAIQYgASoCACEHIAEqAgQhCCAEQSBqIAUoAgA2AgAgBCAGjDgCFCAEIAiMOAIQIAQgB4w4AgwgBCABKQIANwIYIARBJGoiASAEQQxqIAIgAxCGAyAAIAQpAiQ3AgAgAEEIaiABQQhqKAIANgIAIAAgBC0AMDoADCAEQUBrJAALsgEBA38jAEEQayIBJAACQAJAIAAEQCAAQQhrIgMoAgBBAWohAiADIAI2AgAgAkUNASAAKAIADQIgAEF/NgIAIAEgAzYCDCABIAA2AgggASAAQQRqIgI2AgQgAv0MAAAAAAAAAAAAAAAAAAAAAP0LAjQgAkHEAGpCADcCACAAQQA2AgAgAyADKAIAQQFrIgA2AgAgAEUEQCABQQxqEKsNCyABQRBqJAAPCxCDDwsACxCEDwALmQEBA38CQCABIAAoAowDTw0AIAAoAogDIAFBgANsaiIDKAIAQQFHDQAgAygCBCACRw0AIANBEGohBCADKALMAiIFQQFxDQAgAyAFQQFyNgLMAiAAKAL4AiIDIAAoAvACRgRAIABB8AJqQYiOwgAQtAgLIAAgA0EBajYC+AIgACgC9AIgA0EDdGoiACACNgIEIAAgATYCAAsgBAuSAQEDfwJAIAEgACgCEE8NACAAKAIMIAFBsAFsaiIDKAIAQQFHDQAgAygCBCACRw0AIANBEGohBCADKAKAASIFQQFxDQAgAyAFQQFyNgKAASAAKAIkIgMgACgCHEYEQCAAQRxqQYiOwgAQtAgLIAAgA0EBajYCJCAAKAIgIANBA3RqIgAgAjYCBCAAIAE2AgALIAQL2QECA30BeyAAQQA2AhggAEIANwIQIAD9DAAAAAAAAAAAAAAAAAAAgD/9CwIAIAD9DAAAAAAAAAAAAAAAAAAAAAD9DAAAgD8AAIA/AACAPwAAgD8gAiABKgIAIgMgASoCBCIElCABKgIIIgWUQwAAAEGUlCIC/RMgAiAEIASUQwAAQECVIgQgBSAFlEMAAEBAlSIFkpT9IAEgAiADIAOUQwAAQECVIgMgBZKU/SACIAMgBJIgApT9IAMiBv3nASAG/QwAAAAAAAAAAAAAAAAAAAAA/UH9Uv0LAhwLnwEBBH1BACEDAkAgASoCACACKgIAlCIFIAWUIAEqAgQgAioCBJQiBiAGlJIgASoCCCACKgIIlCIEIASUkiIHQwAAAABeBEBBDEEEEJEOIgNFDQEgAyAEIAeRIgSVOAIIIAMgBiAElTgCBCADIAUgBJU4AgALIABBpL3DADYCBCAAIAM2AgAPC0EEQQxB+MrEACgCACIAQcwIIAAbEQAAAAuMAQEBfyACQQBOBEACfwJAIAMoAgQEQCADKAIIIgRFBEAgAg0CIAEMAwsgAygCACAEIAEgAhDyDQwCCyACDQAgAQwBCyACIAEQkQ4LIgNFBEAgACACNgIIIAAgATYCBCAAQQE2AgAPCyAAIAI2AgggACADNgIEIABBADYCAA8LIABBADYCBCAAQQE2AgALegEEfyMAQRBrIgEkABCVByEDQezOxAAoAgAhAkHszsQAQQE2AgBB8M7EACgCACEAQfDOxAAgAzYCACABIAA2AgwgASACNgIIAkAgAkUNACAARQ0AIAAgACgCACIAQQFrNgIAIABBAUcNACABQQxqENcLCyABQRBqJAALkQECAX8CfgJAAkAgASkDACIGIAJUDQAgBiACfSECIAEoAggiASADSQR/IAJQDQEgAkIBfSECIAFBgJTr3ANqBSABCyADayIEQYCU69wDSQRAIAIhBQwBCyACQn9RDQEgBEGAlOvcA2shBCACQgF8IQULIAAgBDYCCCAAIAU3AwAPC0Hsy8IAQRlBiMzCABDRCwALkgEBBH8jAEEQayICJAACf0EBIAEoAgAiA0EnIAEoAgQiBSgCECIBEQMADQAaIAIgACgCAEGBAhDaAgJAIAItAA0iAEGBAU8EQCADIAIoAgAgAREDAEUNAUEBDAILIAMgAi0ADCIEIAJqIAAgBGsgBSgCDBEFAEUNAEEBDAELIANBJyABEQMACyEEIAJBEGokACAEC4UBAgF/Bn0jAEEwayIDJAAgA0EMaiAAIAEgAhBQIAMtABghACADKgIUIQQgAyoCDCEFIAMqAhAhBiABKgIEIQcgASoCACEIIAEqAgghCSADQTBqJAAgBSAIkyIFIAWUIAYgB5MiBSAFlJIgBCAJkyIEIASUkpEiBCAEjCAEIABBAXEbIAIbC44BAgF/A30jAEEwayIFJAAgBUEMaiABIAIgAxBQAkAgBCACKgIAIAUqAgwiBJMiBiAGlCACKgIEIAUqAhAiBpMiByAHlJIgAioCCCAFKgIUIgeTIgggCJSSkV1FBEAgACAFKAIYNgIMIAAgBzgCCCAAIAY4AgQgACAEOAIADAELIABBAjoADAsgBUEwaiQAC7EGAgp/AX4jAEEgayIGJAAgBiABNgIcIAYgADYCGCAGIAE2AhQgBkEIaiEKIwBBMGsiACQAIAZBFGoiCygCBCEMIAsoAggiAQRAIAFBA24gAUEDcEEAR2ohBAsgBK1CDH4iDachCQJAAkACQCANQiCIpw0AIAlB/P///wdLDQACQCAJRQRAQQQhBUEAIQQMAQtBBCEDIAlBBBCRDiIFRQ0BCyAAQQA2AhQgACAFNgIQIAAgBDYCDCABBEAgASABQQNuIgNBA2xHIANqIgMgBEsEQCAAQQxqQQAgA0EEQQwQ1gYgACgCFCEHIAAoAhAhBQsgBSAHQQxsaiEDA0AgAUECTQ0DIAMgCGoiBCAIIAxqIgUqAgA4AgAgBEEEaiAFQQRqKQIANwIAIAhBDGohCCAHQQFqIQcgAUEDayIBDQALIAAoAhAhBSAAKAIMIQQLIwBBkAFrIgEkACABQewAaiAFIAcQIgJAAkAgASgCbCIDQYCAgIB4RwRAIAEgASkCcDcCiAEgASADNgKEASABKAJ4IQMgAUEMaiABQYQBaiABKAJ8IgcgASgCgAEQPiADBEAgByADQQxsQQQQ6A4LQQAhAyABKAIMQYCAgIB4Rg0CQewAQQQQkQ4iA0UNASADQoGAgIAQNwIAIANBCGogAUEMakHgAPwKAAAgAyACOAJoDAILQQAhAwwBC0EEQewAQfjKxAAoAgAiAEHMCCAAGxEAAAALIABByNXDADYCBCAAIAM2AgAgAUGQAWokACAAKAIEIQEgACgCACEDIAQEQCAFIARBDGxBBBDoDgsgCygCACIEBEAgDCAEQQJ0QQQQ6A4LIAogAzYCACAKIAE2AgQgAEEwaiQADAILIAMgCUHousEAENcNAAsgAEEANgIoIABBATYCHCAAQdi/wQA2AhggAEIENwIgIABBGGpB4L/BABC5DQALAkAgBigCCCIBBH8gBigCDCEDQRRBBBCRDiIARQ0BIAAgAzYCECAAIAE2AgwgAEEANgIIIABCgYCAgBA3AgAgAEEIagVBAAshACAGQSBqJAAgAA8LQQRBFEH4ysQAKAIAIgBBzAggABsRAAAAC4gyBB1/CXsJfQV+IwBB0ARrIg4kACMAQeABayIIJAAgCP0MAAAAAAAAAAAAAIA/AACAP/0LBJABIAj9DAAAgD8AAIA/zcxMPgAAgD/9CwSAASAI/QwAAAAAAACAP83MzD4AAIA//QsEcCAI/QwAAJZDAACAP83MzD4AAIA//QsEYCAI/QwAAAAAAAAAP83MzD4AAIA//QsEUCAI/QwAAHBDAAAAP83MzD4AAIA//QsEQCAI/QwAAPBBAACAP83MzD4AAIA//QsEMCAI/QwAAKBBAACAP5qZmT4AAIA//QsEICAI/QwAAPBBAACAP83MzD4AAIA//QsEECAI/QwAAKpDAACAP5qZmT4AAIA//QsEACAIQpSAgIDQADcD0AEgCEKAgID4o7PmzD43A9gBIAj9DAAAAAAAAIA/AACAPwAAgD/9CwSwASAI/QwAAPBCAACAP83MzD4AAIA//QsEoAEgCP0MAAD4QgAAgD/NzMw+AACAP/0LBMABIA5BCGohECMAQfAAayIFJAAgCCgC0AEhByAFAntB+M7EACgCAEEBRgRAQYDPxAD9AAMADAELIAVB0ABqIQEjAEEQayICJAAgAkEAOgAPQQFBARCRDiIARQRAQQFBAUH4ysQAKAIAIgBBzAggABsRAAAACyABIAJBD2qtNwMAIAEgAK03AwggAEEBQQEQ6A4gAkEQaiQAQfjOxABCATcDAEGIz8QAIAUpA1g3AwAgBf0ABFALIh39CwMYQYDPxAAgHf0dAEIBfDcDACAFQcjnwQD9AAMA/QsDCCAFQYCAgPgDNgI0IAVCgICA+IOAgIA/NwIsIAVB0ABqIQEgBUEsaiEAAkACQEHgAEEEEJEOIgMEQCAD/QwAAAA/AAAAvwAAAD8AAAA//QsCUCAD/QwAAAC/AAAAPwAAAD8AAAA//QsCQCAD/QwAAAC/AAAAvwAAAD8AAAA//QsCMCAD/QwAAAC/AAAAvwAAAD8AAAC//QsCICAD/QwAAAC/AAAAvwAAAD8AAAA//QsCECAD/QwAAAC/AAAAvwAAAL8AAAA//QsCAEHgAEEEEJEOIgJFDQEgAv0MAgAAAAYAAAADAAAABwAAAP0LAlAgAv0MAAAAAAQAAAABAAAABQAAAP0LAkAgAv0MBgAAAAcAAAAHAAAABAAAAP0LAjAgAv0MBAAAAAUAAAAFAAAABgAAAP0LAiAgAv0MAgAAAAMAAAADAAAAAAAAAP0LAhAgAv0MAAAAAAEAAAABAAAAAgAAAP0LAgAgAyAA/V0CACAA/QkCCP0NAAECAwQFBgcYGRobAAECAyIdIB395AEiHyAD/QACAP3mAf0LAgAgAyAfIB/9DQQFBgcICQoLAAECAwQFBgciHiAD/QACEP3mAf0LAhAgAyAfIB/9DQgJCgsAAQIDBAUGBwgJCgsiHSAD/QACIP3mAf0LAiAgAyAfIB/9DQABAgMEBQYHCAkKCwABAgMgA/0AAjD95gH9CwIwIAMgHiAD/QACQP3mAf0LAkAgAyAdIAP9AAJQ/eYB/QsCUCABQQw2AhQgASACNgIQIAFCiICAgMABNwIIIAEgAzYCBCABQQg2AgAMAgtBBEHgAEHA3MIAENcNAAtBBEHgAEH4ysQAKAIAIgBBzAggABsRAAAACyAFQThqIAVBCGpBzNzBACABEP4BAkAgBSgCOCIAQYCAgIB4Rg0AIAAEQCAFKAI8IABBDGxBBBDoDgsgBSgCRCIARQ0AIAUoAkggAEEDdEEEEOgOCyAFQYCAgPgDNgIsIAVB0ABqIQ8jAEEwayIEJAAgBUEsaioCACEtIARBADYCICAEQoCAgIDAADcCGCAEQQA2AiwgBEKAgICAwAA3AiQCfwJAIAdFBEBBfyEBDAELQ9sPyUAgB7OVISlBBCEGQQghAUEAIQADQCAoEOsBQwAAAD+UIScgKBDvAUMAAAA/lCEmIAQoAhggAEYEQCAEQRhqQfj+wwAQkQggBCgCHCEGCyABIAZqIgIgJzgCACACQQRrQQA2AgAgAkEIayAmOAIAIAQgAEEBaiIANgIgIAFBDGohASApICiSISggACAHRw0ACyAHQQxsIQBDAAAAACEoQQAhAQNAICgQ6wFDAAAAP5QhJyAoEO8BQwAAAD+UISYgASAHaiICIAQoAhhGBEAgBEEYakH4/sMAEJEICyAEKAIcIgYgAGoiAyAmOAIAIANBCGogJzgCACADQQRqQQA2AgAgBCACQQFqNgIgIABBDGohACApICiSISggByABQQFqIgFHDQALIAEgB2ohA0MAAAAAIShBACEBA0AgKBDrAUMAAAA/lCEnICgQ7wFDAAAAP5QhJiADIAEgBCgCGGtqRQRAIARBGGpB+P7DABCRCCAEKAIcIQYLIAAgBmoiAiAmOAIAIAJBCGogJzgCACACQQRqQQA2AgAgBCABIANqQQFqNgIgIABBDGohACApICiSISggByABQQFqIgFHDQALIAdBAXQhCgJAAkACQCAHQQBOBEAgASADaiISIApJDQEgB0EMbCINQQxrIhtBDG5BAWohESAEKAIcIhwgDWoiCyEBAkAgG0EkTwRAIAEgEUH8////A3EiA0EMbGohASALIQAgAyECA0AgAEEsaiITIABBIGoiFCAAQRRqIhUgAEEIaiIW/VwCAP1WAgAB/VYCAAL9VgIAAyIg/QwAAAAAAAAAAAAAAAAAAAAA/eYBIABBKGoiFyAAQRxqIhggAEEQaiIZIABBBGoiGv1cAgD9VgIAAf1WAgAC/VYCAAMiIv0MAAAAAAAAAAAAAAAAAAAAAP3mAf3lASIdIB395AEhIyAi/QzzBDU/8wQ1P/MENT/zBDU//eYBIABBJGoiCSAAQRhqIgwgAEEMaiIGIAD9XAIA/VYCAAH9VgIAAv1WAgADIh/9DAAAAAAAAAAAAAAAAAAAAAD95gEiHv3lASIdIB395AEhISAJIB8gI/0M8wQ1P/MENT/zBDU/8wQ1P/3mASAh/QwAAAAAAAAAAAAAAAAAAAAA/eYBIB4gIP0M8wQ1P/MENT/zBDU/8wQ1P/3mAf3lASIdIB395AEiHf0MAAAAAAAAAAAAAAAAAAAAAP3mAf3lAf3kAf3kAf0MAAAAAAAAAAAAAAAAAAAAAP3kASIe/R8DOAIAIAwgHv0fAjgCACAGIB79HwE4AgAgACAe/R8AOAIAIBcgIiAd/QzzBDU/8wQ1P/MENT/zBDU//eYBIh8gI/0MAAAAAAAAAAAAAAAAAAAAAP3mASIeICH9DPMENT/zBDU/8wQ1P/MENT/95gEiHf3lAf3kAf3kAf0MAAAAAAAAAAAAAAAAAAAAAP3kASIh/R8DOAIAIBggIf0fAjgCACAZICH9HwE4AgAgGiAh/R8AOAIAIBMgICAdIB8gHv3lAf3kAf3kAf0MAAAAAAAAAAAAAAAAAAAAAP3kASId/R8DOAIAIBQgHf0fAjgCACAVIB39HwE4AgAgFiAd/R8AOAIAIABBMGohACACQQRrIgINAAsgAyARRg0BCyALIA1qIQMDQCABQQRqIgIqAgAiLkPzBDU/lCABKgIAIixDAAAAAJQiJ5MiJiAmkiIoQ/MENT+UISogJyABQQhqIgAqAgAiJ0PzBDU/lJMiJiAmkiIpQ/MENT+UISsgACAnICogKyAnQwAAAACUIC5DAAAAAJSTIiYgJpIiJ0MAAAAAlCImk5KSQwAAAACSOAIAIAIgLiArICYgKpOSkkMAAAAAkjgCACABICwgJ0PzBDU/lCAoQwAAAACUIClDAAAAAJSTkpJDAAAAAJI4AgAgAyABQQxqIgFHDQALCyAHQQNsIg0gCkkNAiANIBJLDQMgHCAKQQxsaiILIQECQCAbQSRPBEAgASARQfz///8DcSIDQQxsaiEBIAshACADIQIDQCAAQSxqIhMgAEEgaiIUIABBFGoiFSAAQQhqIhb9XAIA/VYCAAH9VgIAAv1WAgADIiP9DAAAAAAAAAAAAAAAAAAAAAD95gEiHiAAQShqIhcgAEEcaiIYIABBEGoiGSAAQQRqIhr9XAIA/VYCAAH9VgIAAv1WAgADIiT9DPMENT/zBDU/8wQ1P/MENT/95gH95QEiHSAd/eQBIiH9DPMENT/zBDU/8wQ1P/MENT/95gEhJSAk/QwAAAAAAAAAAAAAAAAAAAAA/eYBIABBJGoiCSAAQRhqIgwgAEEMaiIGIAD9XAIA/VYCAAH9VgIAAv1WAgADIiD9DAAAAAAAAAAAAAAAAAAAAAD95gH95QEiHSAd/eQBIh/9DAAAAAAAAAAAAAAAAAAAAAD95gEhIiAJICAgJSAiICD9DPMENT/zBDU/8wQ1P/MENT/95gEgHv3lASIdIB395AEiHv0M8wQ1P/MENT/zBDU/8wQ1P/3mASId/eUB/eQB/eQB/QwAAAAAAAAAAAAAAAAAAAAA/eQBIiD9HwM4AgAgDCAg/R8COAIAIAYgIP0fATgCACAAICD9HwA4AgAgFyAkIB0gJSAi/eUB/eQB/eQB/QwAAAAAAAAAAAAAAAAAAAAA/eQBIh39HwM4AgAgGCAd/R8COAIAIBkgHf0fATgCACAaIB39HwA4AgAgEyAjIB/9DPMENT/zBDU/8wQ1P/MENT/95gEgHv0MAAAAAAAAAAAAAAAAAAAAAP3mASAh/QwAAAAAAAAAAAAAAAAAAAAA/eYB/eUB/eQB/eQB/QwAAAAAAAAAAAAAAAAAAAAA/eQBIh39HwM4AgAgFCAd/R8COAIAIBUgHf0fATgCACAWIB39HwA4AgAgAEEwaiEAIAJBBGsiAg0ACyADIBFGDQELIAsgB0EMbGohAwNAIAFBBGoiAioCACIqQwAAAACUIAEqAgAiK0MAAAAAlJMiJiAmkiEsICtD8wQ1P5QgAUEIaiIAKgIAIilDAAAAAJQiJ5MiJiAmkiEoIAAgKSAsQ/MENT+UIChDAAAAAJQgJyAqQ/MENT+UkyImICaSIiZDAAAAAJSTkpJDAAAAAJI4AgAgAiAqIChD8wQ1P5QiKSAmQ/MENT+UIicgLEMAAAAAlCImk5KSQwAAAACSOAIAIAEgKyAnICYgKZOSkkMAAAAAkjgCACADIAFBDGoiAUcNAAsLIAdBAWsiAQ0EQQAhASAEKAIoIQZBAiEKQQAhAEECDAULIAcgCkH4+MMAEPEOAAsgCiASQfj4wwAQ8A4ACyAKIA1BiPnDABDxDgALIA0gEkGI+cMAEPAOAAsgBEEkakEAIAFBBEEIENgGIAGtITAgBCgCKCEGIAQoAiwhAAJAIAFBAk8EQCAGIABBA3RqIQIgACAwQv7///8PgyIvp2ohAP0MAAAAAAAAAAABAAAAAAAAACEdIC8hMQNAIAIgHUEg/csBIB39zgH9DAAAAAABAAAAAAAAAAEAAAD9zgH9CwIAIAJBEGohAiAd/QwCAAAAAAAAAAIAAAAAAAAA/c4BIR0gMUICfSIxQgBSDQALIC8gMFENAQsgACAHaiAvp0F/c2ohAiAwIC99ITAgBiAAQQN0aiEAIC9CgYCAgBB+QoCAgIAQfCExA0AgACAxNwIAIABBCGohACAxQoGAgIAQfCExIDBCAX0iMEIAUg0ACyACIQALIA1BAWsLIQMgBCAANgIsIAQoAiQgAEYEfyAEQSRqQZiAxAAQtAggBCgCKAUgBgsgAEEDdGoiAkEANgIEIAIgATYCACAEIABBAWoiATYCLCAKQQFrIgsgB2siAEEAIAAgC00bIgAgBCgCJCABa0sEQCAEQSRqIAEgAEEEQQgQ2AYgBCgCLCEBCyAEKAIoIQYCQCAHIAtPDQAgC60iMyAHrSIvfSIyQgJaBEAgBiABQQN0aiEAIC/9Ev0MAAAAAAAAAAABAAAAAAAAAP3OASEdIDJCfoMiMCAvfCEvIAEgMKdqIQEgMCExA0AgACAdQSD9ywEgHf3OAf0MAAAAAAEAAAAAAAAAAQAAAP3OAf0LAgAgAEEQaiEAIB39DAIAAAAAAAAAAgAAAAAAAAD9zgEhHSAxQgJ9IjFCAFINAAsgMCAyUQ0BCyABIApqIC+nQX9zaiECIDMgL30hMCAGIAFBA3RqIQAgL0KBgICAEH5CgICAgBB8ITEDQCAAIDE3AgAgAEEIaiEAIDFCgYCAgBB8ITEgMEIBfSIwQgBSDQALIAIhAQsgBCABNgIsIAEgBCgCJCIARgRAIARBJGpBmIDEABC0CCAEKAIoIQYgBCgCJCEACyAGIAFBA3RqIgIgBzYCBCACIAs2AgAgBCABQQFqIgE2AiwgACABayADIAprIgBBACAAIANNGyIASQRAIARBJGogASAAQQRBCBDYBiAEKAIoIQYgBCgCLCEBCwJAIAMgCk0NACADrSIzIAqtIi99IjJCAloEQCAGIAFBA3RqIQAgL/0S/QwAAAAAAAAAAAEAAAAAAAAA/c4BIR0gMkJ+gyIwIC98IS8gASAwp2ohASAwITEDQCAAIB1BIP3LASAd/c4B/QwAAAAAAQAAAAAAAAABAAAA/c4B/QsCACAAQRBqIQAgHf0MAgAAAAAAAAACAAAAAAAAAP3OASEdIDFCAn0iMUIAUg0ACyAwIDJRDQELIDMgL30hMCABIANqIC+nayECIAYgAUEDdGohACAvQoGAgIAQfkKAgICAEHwhMQNAIAAgMTcCACAAQQhqIQAgMUKBgICAEHwhMSAwQgF9IjBCAFINAAsgAiEBCyAEIAE2AiwgBCgCJCABRgR/IARBJGpBmIDEABC0CCAEKAIoBSAGCyABQQN0aiIAIAo2AgQgACADNgIAIARBEGoiBiABQQFqNgIAIAQgBCkCJDcDCCAEKAIcIQEgBCgCGCELAkAgBCgCICIMRQ0AIC0gLZIhJiABIQAgDEEMbCIDQQxrIgJBDG5BAXFFBEAgACAmIAAqAgCUOAIAIAAgJiAAKgIElDgCBCAAICYgACoCCJQ4AgggAEEMaiEACyACQQxJDQAgASADaiEDA0AgACAmIAAqAgCUOAIAIABBBGoiAiAmIAIqAgCUOAIAIABBCGoiAiAmIAIqAgCUOAIAIABBDGoiAiAmIAIqAgCUOAIAIABBEGoiAiAmIAIqAgCUOAIAIABBFGoiAiAmIAIqAgCUOAIAIAMgAEEYaiIARw0ACwsgDyAMNgIIIA8gATYCBCAPIAs2AgAgDyAEKQMINwIMIA9BFGogBigCADYCACAEQTBqJAAgBUE4aiAFQQhqQbzcwQAgDxD+AQJAIAUoAjgiAEGAgICAeEYNACAABEAgBSgCPCAAQQxsQQQQ6A4LIAUoAkQiAEUNACAFKAJIIABBA3RBBBDoDgsgBUKAgID4g4CAgD83AiwgBUHQAGohDCMAQSBrIgkkACAFQSxqIgAqAgQhJyAAKgIAISYCQEEYQQQQkQ4iAARAIABCgICA+AM3AhAgAP0MAAAAvwAAAL8AAAAAAAAAAP0LAgAgCUECNgIQIAkgADYCDCAJQQI2AgggCUEANgIcIAlCgICAgMAANwIUQQFByPnDAEEBIAcgCUEIaiAJQRRqEI4BIAkoAgwhACAJKAIIIQsCQCAJKAIQIgZFDQAgJiAmkiEmICcgJ5IhJyAAIQEgBkEMbCIDQQxrIgJBDG5BAXFFBEAgACAnIAAqAgCUOAIAIAAgJiAAKgIElDgCBCAAICcgACoCCJQ4AgggAEEMaiEBCyACQQxJDQAgACADaiEDA0AgASAnIAEqAgCUOAIAIAFBBGoiAiAmIAIqAgCUOAIAIAFBCGoiAiAnIAIqAgCUOAIAIAFBDGoiAiAnIAIqAgCUOAIAIAFBEGoiAiAmIAIqAgCUOAIAIAFBFGoiAiAnIAIqAgCUOAIAIAMgAUEYaiIBRw0ACwsgDCAGNgIIIAwgADYCBCAMIAs2AgAgDCAJKQIUNwIMIAxBFGogCUEcaigCADYCACAJQSBqJAAMAQtBBEEYQfjKxAAoAgAiAEHMCCAAGxEAAAALIAVBOGogBUEIakHAt8IAIAwQ/gECQCAFKAI4IgBBgICAgHhGDQAgAARAIAUoAjwgAEEMbEEEEOgOCyAFKAJEIgBFDQAgBSgCSCAAQQN0QQQQ6A4LIAVDAAAAPzgCBCAFQwAAAD84AgAgBSAFKQMANwIsIAVB0ABqIgAgBUEsaiAHEPEEIAVBOGogBUEIakHQt8IAIAAQ/gECQCAFKAI4IgBBgICAgHhGDQAgAARAIAUoAjwgAEEMbEEEEOgOCyAFKAJEIgBFDQAgBSgCSCAAQQN0QQQQ6A4LIBAgBf0AAwj9CwMAIBBBEGogBUEYav0AAwD9CwMAIBBBIGogCEHgAfwKAAAgEEEPNgKAAiAFQfAAaiQAIAhB4AFqJAAgDkIENwOgAiAOQgA3A5gCIA5CgICAgMAANwOQAiAOQbACaiAQQaAC/AoAAEGwAkEIEJEOIgAEQCAAQQA2AgggAEKBgICAEDcDACAAQQxqIA5BrAJqQaQC/AoAACAOQdAEaiQAIABBCGoPC0EIQbACQfjKxAAoAgAiAEHMCCAAGxEAAAALjgECAX8DfSMAQTBrIgUkACAFQQxqIAEgAiADEFECQCAEIAIqAgAgBSoCDCIEkyIGIAaUIAIqAgQgBSoCECIGkyIHIAeUkiACKgIIIAUqAhQiB5MiCCAIlJKRXUUEQCAAIAUoAhg2AgwgACAHOAIIIAAgBjgCBCAAIAQ4AgAMAQsgAEECOgAMCyAFQTBqJAALhQECAX8GfSMAQTBrIgMkACADQQxqIAAgASACEFEgAy0AGCEAIAMqAhQhBCADKgIMIQUgAyoCECEGIAEqAgQhByABKgIAIQggASoCCCEJIANBMGokACAFIAiTIgUgBZQgBiAHkyIFIAWUkiAEIAmTIgQgBJSSkSIEIASMIAQgAEEBcRsgAhsLhgECAX8GfSMAQSBrIgMkACADQQxqIAAgASACEJ0BIAMtABwhACADKgIYIQQgAyoCECEFIAMqAhQhBiABKgIEIQcgASoCACEIIAEqAgghCSADQSBqJAAgBSAIkyIFIAWUIAYgB5MiBSAFlJIgBCAJkyIEIASUkpEiBCAEjCAEIABBAXEbIAIbC4IBAQF/IAAoAgAiAQRAIAAoAgQgAUEGdEHAABDoDgsgACgCDCIBBEAgACgCECABQQJ0QQQQ6A4LIAAoAhgiAQRAIAAoAhwgAUEDdEEEEOgOCyAAQUBrEKwJIAAoAiwiAQRAIAAoAiggAUEUbEEbakF4cSIAayAAIAFqQQlqQQgQ6A4LC4AHAgd/AX4jAEEgayIFJAAgBSABNgIQIAUgADYCDCAFIAE2AgggBSADNgIcIAUgAjYCGCAFIAM2AhQgBUEUaiEIQQAhAiMAQUBqIgAkACAFQQhqIgkoAgQhCiAJKAIIIgEEQCABQQNuIAFBA3BBAEdqIQQLIAStQgx+IgunIQMCQAJAAkACQAJAIAtCIIinDQAgA0H8////B0sNAAJAIANFBEBBBCEGQQAhBAwBC0EEIQcgA0EEEJEOIgZFDQELIABBADYCJCAAIAY2AiAgACAENgIcIAEEQEEAIQMgBCABQQNuIgQgASAEQQNsR2oiBEkEQCAAQRxqQQAgBEEEQQwQ1gYgACgCICEGIAAoAiQhAgsgBiACQQxsaiEGA0AgAUECTQ0DIAMgBmoiBCADIApqIgcqAgA4AgAgBEEEaiAHQQRqKQIANwIAIANBDGohAyACQQFqIQIgAUEDayIBDQALCyAAQRhqIAI2AgAgACAAKQIcNwMQIAgoAggiASABQQF2ayIGQQN0IQNBACECIAZB/////wFLDQIgA0H8////B0sNAiAIKAIEIQcCQCADRQRAQQQhBEEAIQYMAQtBBCECIANBBBCRDiIERQ0DCwJAAkAgAQRAQQAhA0EAIQIDQCABQQFGDQcgAyAEaiADIAdqKQIANwIAIANBCGohAyACQQFqIQIgAUECayIBDQALIAINAQsgAEGAgICAeDYCKCAAIABBEGogAEEoahCmCiAAKAIEIQMgACgCACEBIAZFDQEgBCAGQQN0QQQQ6A4MAQsgACACNgIwIAAgBDYCLCAAIAY2AiggAEEIaiAAQRBqIABBKGoQpgogACgCDCEDIAAoAgghAQsgCCgCACICBEAgByACQQJ0QQQQ6A4LIAkoAgAiAgRAIAogAkECdEEEEOgOCyAFIAE2AgAgBSADNgIEIABBQGskAAwECyAHIANB6LrBABDXDQALIABBADYCOCAAQQE2AiwgAEHYv8EANgIoIABCBDcCMCAAQShqQeC/wQAQuQ0ACyACIANB6LrBABDXDQALQQFBAUGA1sEAEIULAAsgBSgCBCEBIAUoAgAhAkEUQQQQkQ4iAEUEQEEEQRRB+MrEACgCACIAQcwIIAAbEQAAAAsgACACNgIMIABBADYCCCAAQoGAgIAQNwIAIAAgATYCECAFQSBqJAAgAEEIaguqBgIKfwF+IwBBIGsiBSQAIAUgATYCHCAFIAA2AhggBSABNgIUIAVBCGohCSMAQTBrIgAkACAFQRRqIgooAgQhCyAKKAIIIgEEQCABQQNuIAFBA3BBAEdqIQMLIAOtQgx+IgynIQgCQAJAAkAgDEIgiKcNACAIQfz///8HSw0AAkAgCEUEQEEEIQRBACEDDAELQQQhAiAIQQQQkQ4iBEUNAQsgAEEANgIUIAAgBDYCECAAIAM2AgwgAQRAIAEgAUEDbiICQQNsRyACaiICIANLBEAgAEEMakEAIAJBBEEMENYGIAAoAhQhBiAAKAIQIQQLIAQgBkEMbGohAgNAIAFBAk0NAyACIAdqIgMgByALaiIEKgIAOAIAIANBBGogBEEEaikCADcCACAHQQxqIQcgBkEBaiEGIAFBA2siAQ0ACyAAKAIQIQQgACgCDCEDCyMAQZABayIBJAAgAUHsAGogBCAGECICQAJAIAEoAmwiAkGAgICAeEcEQCABIAEpAnA3AogBIAEgAjYChAEgASgCeCECIAFBDGogAUGEAWogASgCfCIGIAEoAoABED4gAgRAIAYgAkEMbEEEEOgOC0EAIQIgASgCDEGAgICAeEYNAkHoAEEEEJEOIgJFDQEgAkKBgICAEDcCACACQQhqIAFBDGpB4AD8CgAADAILQQAhAgwBC0EEQegAQfjKxAAoAgAiAEHMCCAAGxEAAAALIABBmKLDADYCBCAAIAI2AgAgAUGQAWokACAAKAIEIQEgACgCACECIAMEQCAEIANBDGxBBBDoDgsgCigCACIDBEAgCyADQQJ0QQQQ6A4LIAkgAjYCACAJIAE2AgQgAEEwaiQADAILIAIgCEHousEAENcNAAsgAEEANgIoIABBATYCHCAAQdi/wQA2AhggAEIENwIgIABBGGpB4L/BABC5DQALAkAgBSgCCCIBBH8gBSgCDCECQRRBBBCRDiIARQ0BIAAgAjYCECAAIAE2AgwgAEEANgIIIABCgYCAgBA3AgAgAEEIagVBAAshACAFQSBqJAAgAA8LQQRBFEH4ysQAKAIAIgBBzAggABsRAAAAC7UBAwJ7A30BfwJAIAH9AAIAIgMgAv0AAgAiBCADIAT9DQABAgMEBQYHCAkKCxwdHh8gBCAD/Q0AAQIDBAUGBwgJCgscHR4f/Ub9UiID/R8AIAP9HwNeDQAgASoCECIGIAIqAhAiBSAFIAZgGyIGIAP9HwFdDQAgASoCFCIFIAIqAhQiByAFIAdfGyIFIAP9HwJdDQAgACAFOAIYIAAgBjgCFCAAIAP9CwIEQQEhCAsgACAINgIAC4sBAQN9IwBBIGsiAyQAIANBBGogASACENoDAkAgBCACKgIAIAMqAgQiBJMiBSAFlCACKgIEIAMqAggiBZMiBiAGlJIgAioCCCADKgIMIgaTIgcgB5SSkV1FBEAgACADKAIQNgIMIAAgBjgCCCAAIAU4AgQgACAEOAIADAELIABBAjoADAsgA0EgaiQAC4QBAgF/Bn0jAEEgayIDJAAgA0EEaiAAIAEQ2gMgAy0AECEAIAMqAgwhBCADKgIEIQUgAyoCCCEGIAEqAgQhByABKgIAIQggASoCCCEJIANBIGokACAFIAiTIgUgBZQgBiAHkyIFIAWUkiAEIAmTIgQgBJSSkSIEIASMIAQgAEEBcRsgAhsLjAEBBH0gASoCBCIGIAIqAgSMlCACKgIAIAEqAgAiB5STIAIqAgggASoCCCIIlJMhBQJ/AkAgBEUNACAFQwAAAABeRQ0AQwAAAAAhBUEBDAELIAUgByACKgIMlCAGIAIqAhCUkiAIIAIqAhSUkpUiBUMAAAAAYCADIAVgcQshAiAAIAU4AgQgACACNgIAC5kBAQN/IAAtAAghAQJAIAAoAgAiA0UEQCABIQIMAQtBASECAkAgAUEBcUUEQCADQQFHDQEgAC0ACUUNASAAKAIEIgEtAApBgAFxDQEgASgCAEHQscQAQQEgASgCBCgCDBEFAEUNAQsgAEEBOgAIDAELIAAgACgCBCIAKAIAQaOuxABBASAAKAIEKAIMEQUAIgI6AAgLIAJBAXELggECBn0BfyMAQRBrIgkkACAJIAAgASACEC4gASoCBCEDIAkqAgQhBSABKgIAIQQgCSoCACEGIAEqAgghByAJKgIIIQggCS0ADCEAIAlBEGokACAGIASTIgQgBJQgBSADkyIDIAOUkiAIIAeTIgMgA5SSkSIDIAOMIAMgAEEBcRsgAhsLgwECBn0BfyMAQRBrIgkkACAJIAAgAUEAEMECIAEqAgQhAyAJKgIEIQUgASoCACEEIAkqAgAhBiABKgIIIQcgCSoCCCEIIAktAAwhACAJQRBqJAAgBiAEkyIEIASUIAUgA5MiAyADlJIgCCAHkyIDIAOUkpEiAyADjCADIABBAXEbIAIbC4MBAgZ9AX8jAEEQayIJJAAgCSAAIAEgAhCJASABKgIEIQMgCSoCBCEFIAEqAgAhBCAJKgIAIQYgASoCCCEHIAkqAgghCCAJLQAMIQAgCUEQaiQAIAYgBJMiBCAElCAFIAOTIgMgA5SSIAggB5MiAyADlJKRIgMgA4wgAyAAQQFxGyACGwuDAQIGfQF/IwBBEGsiCSQAIAkgACABIAIQ/wIgASoCBCEDIAkqAgQhBSABKgIAIQQgCSoCACEGIAEqAgghByAJKgIIIQggCS0ADCEAIAlBEGokACAGIASTIgQgBJQgBSADkyIDIAOUkiAIIAeTIgMgA5SSkSIDIAOMIAMgAEEBcRsgAhsLgwECBn0BfyMAQRBrIgkkACAJIAAgASACEI8BIAEqAgQhAyAJKgIEIQUgASoCACEEIAkqAgAhBiABKgIIIQcgCSoCCCEIIAktAAwhACAJQRBqJAAgBiAEkyIEIASUIAUgA5MiAyADlJIgCCAHkyIDIAOUkpEiAyADjCADIABBAXEbIAIbC4MBAgZ9AX8jAEEQayIJJAAgCSAAIAEgAhCkASABKgIEIQMgCSoCBCEFIAEqAgAhBCAJKgIAIQYgASoCCCEHIAkqAgghCCAJLQAMIQAgCUEQaiQAIAYgBJMiBCAElCAFIAOTIgMgA5SSIAggB5MiAyADlJKRIgMgA4wgAyAAQQFxGyACGwuCAQIGfQF/IwBBEGsiCSQAIAkgACABIAIQKSABKgIEIQMgCSoCBCEFIAEqAgAhBCAJKgIAIQYgASoCCCEHIAkqAgghCCAJLQAMIQAgCUEQaiQAIAYgBJMiBCAElCAFIAOTIgMgA5SSIAggB5MiAyADlJKRIgMgA4wgAyAAQQFxGyACGwuDAQIGfQF/IwBBEGsiCSQAIAkgACABIAIQ/AMgASoCBCEDIAkqAgQhBSABKgIAIQQgCSoCACEGIAEqAgghByAJKgIIIQggCS0ADCEAIAlBEGokACAGIASTIgQgBJQgBSADkyIDIAOUkiAIIAeTIgMgA5SSkSIDIAOMIAMgAEEBcRsgAhsLggECBn0BfyMAQRBrIgkkACAJIAAgASACEC8gASoCBCEDIAkqAgQhBSABKgIAIQQgCSoCACEGIAEqAgghByAJKgIIIQggCS0ADCEAIAlBEGokACAGIASTIgQgBJQgBSADkyIDIAOUkiAIIAeTIgMgA5SSkSIDIAOMIAMgAEEBcRsgAhsLggECBn0BfyMAQRBrIgkkACAJIAAgASACECwgASoCBCEDIAkqAgQhBSABKgIAIQQgCSoCACEGIAEqAgghByAJKgIIIQggCS0ADCEAIAlBEGokACAGIASTIgQgBJQgBSADkyIDIAOUkiAIIAeTIgMgA5SSkSIDIAOMIAMgAEEBcRsgAhsLggECBn0BfyMAQRBrIgkkACAJIAAgASACECggASoCBCEDIAkqAgQhBSABKgIAIQQgCSoCACEGIAEqAgghByAJKgIIIQggCS0ADCEAIAlBEGokACAGIASTIgQgBJQgBSADkyIDIAOUkiAIIAeTIgMgA5SSkSIDIAOMIAMgAEEBcRsgAhsLmwEBAX8jAEGgAmsiAyQAIANB4ABqIgQgARDyASADIAQgAhClAQJAAkAgAygCAEGAgICAeEcEQCADQcABaiADQeAA/AoAAEHgAEEEEJEOIgENAUEEQeAAQfjKxAAoAgAiAEHMCCAAGxEAAAALQQAhAQwBCyABIANBwAFqQeAA/AoAAAsgAEGYosMANgIEIAAgATYCACADQaACaiQAC7EBAwF/AX0CeyMAQTBrIgMkACADIAIgASgCBCABKAIIENADIAEqAmAiBEMAAAAAYEUEQCADQQA2AiggA0EBNgIcIANB6ODCADYCGCADQgQ3AiAgA0EYakHw4MIAELkNAAsgACADKgIEIASTOAIEIAAgAyoCACAEkzgCACAAIAP9AAIIIgUgBP0TIgb95QEgBSAG/eQB/Q0AAQIDFBUWFxgZGhscHR4f/QsCCCADQTBqJAALgQEBAX8gACgCACIBBEAgACgCBCABQQN0QQQQ6A4LIAAoAgwiAQRAIAAoAhAgAUECdEEEEOgOCyAAKAIYIgEEQCAAKAIcIAFBAnRBBBDoDgsgACgCJCIBBEAgACgCKCABQQN0QQQQ6A4LIAAoAjAiAQRAIAAoAjQgAUEDdEEEEOgOCwuOAQIFfwF9AkACQAJAIAAEQCAAQQhrIgMoAgAiBEEBaiECIAMgAjYCACACRQ0BIAAoAgAiAkF/Rg0CIAAgAkEBajYCACAAKAIEIgUoAmAiBiABTQ0DIAUoAlwgAUEGdGoqAhAhByAAIAI2AgAgAyAENgIAIAcPCxCDDwsACxCEDwALIAEgBkHQ1cEAEIULAAuOAQIFfwF9AkACQAJAIAAEQCAAQQhrIgMoAgAiBEEBaiECIAMgAjYCACACRQ0BIAAoAgAiAkF/Rg0CIAAgAkEBajYCACAAKAIEIgUoAmAiBiABTQ0DIAUoAlwgAUEGdGoqAhQhByAAIAI2AgAgAyAENgIAIAcPCxCDDwsACxCEDwALIAEgBkHg1cEAEIULAAuLAQECfyABIAKncSIDIABqKQAAQoCBgoSIkKDAgH+DIgJQBEBBCCEEA0AgAyAEaiEDIARBCGohBCABIANxIgMgAGopAABCgIGChIiQoMCAf4MiAlANAAsLIAJ6p0EDdiADaiABcSIBIABqLAAAQQBOBH8gACkDAEKAgYKEiJCgwIB/g3qnQQN2BSABCwuAAQEBfwJAAkAgASAAKAJMTw0AIAAoAkggAUEMbGoiASgCAEEBRw0AIAEoAgQgAkcNACAAKAIoIAEoAggiAUGAA2xqIgJBACABIAAoAixJIgEbIQMgAQ0BCyADDwsgACADKALAAiADKALEAhDbAyAAIAMoAsgCIAMoAswCENsDIAILggEBAX8gACgCACIBBEAgACgCBCABQQZ0QcAAEOgOCyAAKAIMIgEEQCAAKAIQIAFBAnRBBBDoDgsgACgCGCIBBEAgACgCHCABQQN0QQQQ6A4LIAAoAigiAQRAIAAoAiwgAUEMbEEEEOgOCyAAKAI0IgEEQCAAKAI4IAFBA3RBBBDoDgsLswEDAX8CfQJ7IwBBQGoiBCQAIAQgAiABKAIEIgIgASgCCCIBENADIARBIGogAyACIAEQ0AMgACAEKgIUIgUgBCoCNCIGIAUgBmAbOAIUIAAgBCoCECIFIAQqAjAiBiAFIAZgGzgCECAAIAT9AAQAIgcgBP0ABCAiCCAHIAj9DQABAgMEBQYHCAkKCxwdHh8gCCAH/Q0AAQIDBAUGBwgJCgscHR4f/UX9Uv0LAgAgBEFAayQAC4cBAgF/AX4CQAJAIAEgA1QNACABIAN9IQMgAiAESQR/IANQDQEgA0IBfSEDIAJBgJTr3ANqBSACCyAEayIFQYCU69wDSQRAIAMhBgwBCyADQn9RDQEgBUGAlOvcA2shBSADQgF8IQYLIAAgBTYCCCAAIAY3AwAPC0HkiMQAQRlBgInEABDRCwALfQEDfyAAKAIAIQEgACgCBCICKAIIIQAgAigCACIDBEAgASAAQQFrQXhxakEIaiADEQYACwJAIAFBf0YNACABIAEoAgQiA0EBazYCBCADQQFHDQBBBCAAIABBBE0bIgAgAigCBGpBB2pBACAAa3EiAkUNACABIAIgABDoDgsLgAEBA38gACgCACIFIAJqIgQtAAAhBiAEIAGnQRl2IgQ6AAAgBSAAKAIEIAJBCGtxakEIaiAEOgAAIAAgACgCDEEBajYCDCAAIAAoAgggBkEBcWs2AgggBSACQWxsaiIAQRRrIgIgA/0AAgD9CwIAIAJBEGogA0EQaigCADYCACAAC34BA38gACgCACIFIAJqIgQtAAAhBiAEIAGnQRl2IgQ6AAAgBSAAKAIEIAJBCGtxakEIaiAEOgAAIAAgACgCDEEBajYCDCAAIAAoAgggBkEBcWs2AgggBSACQXRsaiIAQQxrIgIgAykCADcCACACQQhqIANBCGooAgA2AgAgAAuAAQEDfyAAKAIAIgUgAmoiBC0AACEGIAQgAadBGXYiBDoAACAFIAAoAgQgAkEIa3FqQQhqIAQ6AAAgACAAKAIMQQFqNgIMIAAgACgCCCAGQQFxazYCCCAFIAJBaGxqIgBBGGsiAiADKQIANwIAIAJBCGogA0EIav0AAgD9CwIAIAALkAEBAX8CQAJAIAAqAnAgASoCAFwNACAAKgJ0IAEqAgRcDQAgACoCeCABKgIIWw0BCyAALQDlAkEBa0H/AXFBAU0NACAAQfAAaiIDIAEpAgA3AgAgA0EIaiABQQhqKAIANgIAIAJFDQAgAC0A1AIEQCAAIAAoArwCQQRyNgK8AgsgAEEANgLQAiAAQQA6ANQCCwuSAQEBfwJAAkAgACoCfCABKgIAXA0AIAAqAoABIAEqAgRcDQAgACoChAEgASoCCFsNAQsgAC0A5QJBAWtB/wFxQQFNDQAgAEH8AGoiAyABKQIANwIAIANBCGogAUEIaigCADYCACACRQ0AIAAtANQCBEAgACAAKAK8AkEEcjYCvAILIABBADYC0AIgAEEAOgDUAgsLwwEDA38DfgF7IwBB0ABrIgIkACABKAIQIgMoAgghBCABKQIIIQUgAykCACEGIAEpAgAhByAA/QACACEIIAIgACkCEDcCRCACIAj9CwI0IAIgBzcCLCACQQQ2AiggAiAGNwIgIAJBADYCHCACIAU3AhQgAkEANgIQIAIgBDYCDCACQQE2AghB0MrEACgCAEGUhsQAQfDKxAAoAgBBAkYiABsgAkEIakHUysQAKAIAQfyFxAAgABsoAhARAAAgAkHQAGokAAt3AQV9IAIqAgAiBiAGlCACKgIIIgMgA5SSIgdDAAAAAFwEQCADIAeRIgSVIAEqAgQiB5QhBSAGIASVIAeUIQQLIAAgBSADIAEqAggiA5SSOAIIIAAgASoCACACKgIEIgWYIAUgA5SSOAIEIAAgBCAGIAOUkjgCAAuzAgEKfSAAIAEqAiAiByIEIAQgASoCFCIIIgIgAiABKgIIIgUiAyACIANeGyADIANcGyICIAIgBF0bIAIgAlwbOAIUIAAgASoCHCIJIgQgBCABKgIQIgoiAiACIAEqAgQiBiIDIAIgA14bIAMgA1wbIgIgAiAEXRsgAiACXBs4AhAgACABKgIYIgMgAyABKgIMIgQgBCABKgIAIgIgAiAEXRsgAiACXBsiCyADIAteGyALIAtcGzgCDCAAIAUgBSAIIAUgCF0bIAggCFwbIgUgBSAHIAUgB10bIAcgB1wbOAIIIAAgBiAGIAogBiAKXRsgCiAKXBsiBiAGIAkgBiAJXRsgCSAJXBs4AgQgACACIAIgBCACIARdGyAEIARcGyICIAIgAyACIANdGyADIANcGzgCAAt7AQN/IwBBgAFrIgQkACAAKAIAIQADQCACIARqQf8AaiAAQQ9xIgNBMHIgA0HXAGogA0EKSRs6AAAgAkEBayECIABBD0shAyAAQQR2IQAgAw0ACyABQQFB07HEAEECIAIgBGpBgAFqQQAgAmsQ2QIhACAEQYABaiQAIAALegEDfyMAQYABayIEJAAgACgCACEAA0AgAiAEakH/AGogAEEPcSIDQTByIANBN2ogA0EKSRs6AAAgAkEBayECIABBD0shAyAAQQR2IQAgAw0ACyABQQFB07HEAEECIAIgBGpBgAFqQQAgAmsQ2QIhACAEQYABaiQAIAALdgECfwJAIAEoAjggAk0NACABKAI0IAJBFGxqIgQoAgAgA0cNACAEKAIEIgIgASgCTE8NACABKAJIIAJBpAJsaiICKAIAQYCAgIB4Rg0AIAIoAqACIAQoAghHDQAgBCgCECEBIAIhBQsgACABNgIEIAAgBTYCAAuNAQEBfyMAQTBrIgMkAAJAIAACfyABKAJAQYCAgIB4RwRAIANBCGogASACQQBD//9/fxB0IAMoAhxBBEYNAiAAIAP9AAII/QsCACADKAIYDAELIANBCGogASACQQAQnQEgACAD/QACDP0LAgAgAygCCAs2AhQgAEECNgIQIANBMGokAA8LQZiZwwAQ8g4AC6oBAwF/An0CeyMAQUBqIgQkACAEIAFBQGsiASACELsDIARBIGogASADELsDIAAgBCoCFCIFIAQqAjQiBiAFIAZgGzgCFCAAIAQqAhAiBSAEKgIwIgYgBSAGYBs4AhAgACAE/QAEACIHIAT9AAQgIgggByAI/Q0AAQIDBAUGBwgJCgscHR4fIAggB/0NAAECAwQFBgcICQoLHB0eH/1F/VL9CwIAIARBQGskAAuqAQMBfwJ9AnsjAEFAaiIEJAAgBCABQTRqIgEgAhC7AyAEQSBqIAEgAxC7AyAAIAQqAhQiBSAEKgI0IgYgBSAGYBs4AhQgACAEKgIQIgUgBCoCMCIGIAUgBmAbOAIQIAAgBP0ABAAiByAE/QAEICIIIAcgCP0NAAECAwQFBgcICQoLHB0eHyAIIAf9DQABAgMEBQYHCAkKCxwdHh/9Rf1S/QsCACAEQUBrJAALiwECAX0BfyMAQSBrIgMkACABKgIMIgJDAAAAAGBFBEAgA0EANgIYIANBATYCDCADQejgwgA2AgggA0IENwIQIANBCGpBoITEABC5DQALIABBADYCCCAAQgA3AgAgACACIAEqAgAiAiAClCABKgIEIgIgApSSIAEqAggiAiAClJKRkjgCDCADQSBqJAALhwECAn8DfSMAQSBrIgUkACABQQhqIgYqAgAhByABKgIAIQggASoCBCEJIAVBHGogBigCADYCACAFIAeMOAIQIAUgCYw4AgwgBSAIjDgCCCAFIAEpAgA3AhQgBSAFQQhqIAIgAyAEEMMEIAUoAgAhASAAIAUqAgQ4AgQgACABNgIAIAVBIGokAAvUBAIGfwN7IwBBQGoiAyQAIANBDGohASMAQSBrIgIkACACQQA2AhggAkEIakEQQcAFIAJBFGoQ4gkgAigCCEEBRgRAIAIoAgwgAigCEEHAi8IAENcNAAv9DAAAAAABAAAAAgAAAAMAAAAhB0EEIQQgAigCDCIFIQADQCAAQQA2AgAgAEGQBGpBADYCACAAQeACakEANgIAIABBsAFqQQA2AgAgAEGUBGogB/0MAwAAAAMAAAADAAAAAwAAAP04Igj9DAEAAAABAAAAAQAAAAEAAAD9TiIG/VoCAAMgAEHkAmogBv1aAgACIABBtAFqIAb9WgIAASAAQQRqIAb9WgIAACAAQZgEaiAH/QwBAAAAAQAAAAEAAAABAAAA/a4B/QwAAAAAAAAAAAAAAAAAAAAAIAj9UiIG/VoCAAMgAEHoAmogBv1aAgACIABBuAFqIAb9WgIAASAAQQhqIAb9WgIAACAAQcAFaiEAIAf9DAQAAAAEAAAABAAAAAQAAAD9rgEhByAEQQRrIgQNAAsgAUIANwIUIAFBBDYCECABIAU2AgwgAUEENgIIIAFCATcCACACQSBqJAAgAUIENwIsIAFCADcCJCABQoCAgIDAADcCHEHAAEEEEJEOIgBFBEBBBEHAAEH4ysQAKAIAIgBBzAggABsRAAAACyAAQQA2AgggAEKBgICAEDcCACAAIAP9AAIM/QsCDCAAQRxqIANBHGr9AAIA/QsCACAAQSxqIANBLGr9AAIA/QsCACAAQTxqIANBPGooAgA2AgAgA0FAayQAIABBCGoLfwIEfwF9AkACQCAABEAgAEEIayIDKAIAIgRBAWohAiADIAI2AgAgAkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgAgACgCBCIFKAKEASABSwRAIAUoAoABIAFBBnRqKgIYIQYLIAAgAjYCACADIAQ2AgAgBg8LEIMPCwALEIQPAAt9AQV/AkACQCAABEAgAEEIayIEKAIAIgVBAWohAiAEIAI2AgAgAkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgAgACgCBCIGKAKEASABSwRAIAYoAoABIAFBBnRqKAIcIQMLIAAgAjYCACAEIAU2AgAgAw8LEIMPCwALEIQPAAt9AQV/AkACQCAABEAgAEEIayIEKAIAIgVBAWohAiAEIAI2AgAgAkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgAgACgCBCIGKAKEASABSwRAIAYoAoABIAFBBnRqKAIgIQMLIAAgAjYCACAEIAU2AgAgAw8LEIMPCwALEIQPAAt/AgR/AX0CQAJAIAAEQCAAQQhrIgMoAgAiBEEBaiECIAMgAjYCACACRQ0BIAAoAgAiAkF/Rg0CIAAgAkEBajYCACAAKAIEIgUoAoQBIAFLBEAgBSgCgAEgAUEGdGoqAjQhBgsgACACNgIAIAMgBDYCACAGDwsQgw8LAAsQhA8AC38CBH8BfQJAAkAgAARAIABBCGsiAygCACIEQQFqIQIgAyACNgIAIAJFDQEgACgCACICQX9GDQIgACACQQFqNgIAIAAoAgQiBSgChAEgAUsEQCAFKAKAASABQQZ0aioCJCEGCyAAIAI2AgAgAyAENgIAIAYPCxCDDwsACxCEDwALfwIEfwF9AkACQCAABEAgAEEIayIDKAIAIgRBAWohAiADIAI2AgAgAkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgAgACgCBCIFKAKEASABSwRAIAUoAoABIAFBBnRqKgIoIQYLIAAgAjYCACADIAQ2AgAgBg8LEIMPCwALEIQPAAt9AgR/AX0CQAJAIAAEQCAAQQhrIgMoAgAiBEEBaiECIAMgAjYCACACRQ0BIAAoAgAiAkF/Rg0CIAAgAkEBajYCACAAKAIEIgUoAmAgAUsEQCAFKAJcIAFBBnRqKgIMIQYLIAAgAjYCACADIAQ2AgAgBg8LEIMPCwALEIQPAAulAQEBfSAAQQA2AhggAEIANwIQIAD9DAAAAAAAAAAAAAAAAAAAgD/9CwIAIABDAAAAAEMAAIA/IAIgASoCACICIAIgAkPbD0lAlJSUQwAAgECUQwAAQECVlCIDlSADQwAAAABbGzgCHCAAQwAAAABDAACAPyACIAKUIgIgApJDAACgQJUgA5QiApUgAkMAAAAAWxsiAjgCKCAAIAI4AiQgACACOAIgC4QBAQZ9IAAgASoCFCICIAEqAggiBZJDAAAAP5Q4AgggACABKgIQIgMgASoCBCIGkkMAAAA/lDgCBCAAIAEqAgwiBCABKgIAIgeSQwAAAD+UOAIAIAAgASoCGCAEIAeTIgQgBJQgAyAGkyIDIAOUkiACIAWTIgIgApSSkUMAAAA/lJI4AgwLjQEBBH0gACABKgIAIgOLIgI4AhAgACACjDgCBCABKgIEIgJDAAAAAJRDAAAAAJQhBCAAQwAAAAAgAiADQwAAAACUIgMgAiADkyAEkl4iARs4AgwgAEMAAAAAIAKMIgUgARs4AgAgAEMAAAAAIAIgAiAEIAOTkiADXSIBGzgCFCAAQwAAAAAgBSABGzgCCAv9EwQZfw19A34BeyMAQUBqIgckACABIQsjACIBIRcgAUHAAWtBQHEiAyQAAkACQAJAAkACQAJAAkACQAJAIAIoAgAiCEGAgICAeEcEQCACKAIIIQYgAigCBCECDAELIAsoAghBAWsiBkEDdCEBQQAhCCAGQf////8BSw0BIAFB/P///wdLDQEgBkUEQEEEIQJBACEGDAELQQQhCCABQQQQkQ4iAkUNASAGrSEpQQAhCAJAIAZBAUcEQCApQv7///8BgyIrpyEI/QwAAAAAAAAAAAEAAAAAAAAAISwgAiEEICshKgNAIAQgLEEg/csBICz9zgH9DAAAAAABAAAAAAAAAAEAAAD9zgH9CwIAIARBEGohBCAs/QwCAAAAAAAAAAIAAAAAAAAA/c4BISwgKkICfSIqQgBSDQALICkgK1ENAQsgKSArfSEpIAIgCEEDdGohBCArQoGAgIAQfkKAgICAEHwhKgNAIAQgKjcCACAEQQhqIQQgKkKBgICAEHwhKiApQgF9IilCAFINAAsLIAYhCAsgA0IANwIkIANCgICAgMAANwIcIANCBDcCFCADQgA3AgwgA0KAgICAgAg3AgQgA0EANgJ8IANCEDcCPCADQgA3AjQgA0KAgICAgAg3AiwgA0IANwJ0IANCgICAgMAANwJsIANCADcCZCADQoCAgIDAADcCXCADQgQ3AlQgA0IANwJMIANCgICAgMAANwJEIAZFDQcgAiAGQQN0aiEYIANBBGoiAUEMaiEQIANBOGoiGUEAIAZBEEEgENgGIAFBGGoiGkEAIAZBBEEIENgGIAsoAgQhFCALKAIIIQ1BASERQQEhEiACIQ4DQCAOKAIAIgEgDU8NAiAOQQRqKAIAIgUgDU8NAyAUIAFBDGxqIgEqAggiHCAUIAVBDGxqIgUqAggiHSABKgIEIh5DAAAAAJQiJCABKgIAIiBDAAAAAJQiJZIiIiAckyAFKgIAIiFDAAAAAJQiJiAFKgIEIh9DAAAAAJQiJ5IiIyAdk14bISggHCAdIBwgIpIgHSAjkl4bISIgHiAfIBxDAAAAAJQiHCAlIB6TkiAmIB+TIB1DAAAAAJQiHZJeGyEjIB4gHyAcIB4gJZKSICYgH5IgHZJeGyEeICAgISAcICQgIJOSICcgIZMgHZJeGyEfICAgISAcICAgJJKSICEgJ5IgHZJeGyEcIAMoAkAiEyADKAI4RgRAIBlB0PPCABDFCAsgCUEBaiEVIAMoAjwiCiATQQV0aiIBQYGAgIB8NgIcIAEgIjgCGCABIB44AhQgASAcOAIQIAEgCTYCDCABICg4AgggASAjOAIEIAEgHzgCACADIBNBAWoiGzYCQAJAIAMoAiQiBSAJSwRAIAUhAQwBCyAJIAUiAWshBCAEIAMoAhwgAWtPBEAgGiABIARBAWpBBEEIENgGIAMoAiQhAQsgFSAFa0EDcSEPIAMoAiAhFiAEQQNPBEAgEiAFa0F8cSEMIBYgAUEDdGohBANAIARBADYCACAEQRhqQQA2AgAgBEEQakEANgIAIARBCGpBADYCACAEQSBqIQQgAUEEaiEBIAxBBGsiDA0ACwsgDwRAIAEgD2ohDyARIAVrQQNxIQwgFiABQQN0aiEEA0AgBEEANgIAIARBCGohBCAMQQFrIgwNAAsgDyEBCyADIAE2AiQLIAEgCU0NBCADKAIgIAlBA3RqIgEoAgAhBSABQgE3AgAgBUUEQCADIAMoAihBAWo2AigLIBFBAWohESASQQFqIRIgFSEJIBggDkEIaiIORw0ACyATQQFqDgMHBQQGCyAIIAFBlNDCABDXDQALIAEgDUGYncMAEIULAAsgBSANQaidwwAQhQsACyAJIAFBkITEABCFCwALIAMgCv0ABAD9CwSAASADIAr9AAQg/QsEoAEgAyAKQRBq/QAEAP0LBJABIAMgCkEwav0ABAD9CwSwASADKAIMIgUgAygCBEYEQCADQQRqQfDywgAQwwgLIAMoAgggBUEGdGoiASAD/QAEgAH9CwQAIAFBEGogA/0ABJAB/QsEACABQSBqIAP9AASgAf0LBAAgAUEwaiAD/QAEsAH9CwQAIAMgBUEBajYCDCADKAIYIgEgAygCEEYEQCAQQYDzwgAQtggLIAMoAhQgAUECdGpBADYCACADIAFBAWo2AhgCQCADKAIkIgVFDQAgAygCICIBKAIAQQFHDQAgAUEANgIEAkAgBUEBRg0AIAEoAghFDQAgAUEBNgIMDAQLQZDkwgBBD0Gg88IAENELAAtBkOTCAEEPQZDzwgAQ0QsACyADIAr9AAQA/QsEgAEgAyAKQRBq/QAEAP0LBJABIAMoAgwiBSADKAIERgRAIANBBGpBwPLCABDDCAsgAygCCCAFQQZ0aiIBIAP9AASAAf0LBAAgAf0MAAAAAAAAAAAAAAAAAAAAAP0LBCAgAUEQaiAD/QAEkAH9CwQAIAFBMGr9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIAMgBUEBajYCDCADKAIYIgEgAygCEEYEQCAQQdDywgAQtggLIAMoAhQgAUECdGpBADYCACADIAFBAWo2AhgCQCADKAIkRQ0AIAMoAiAiASgCAEEBRw0AIAFBADYCBAwCC0GQ5MIAQQ9B4PLCABDRCwALIAMoAgQgAygCDCIBayAGSQRAIANBBGogASAGQcAAQcAAENgGCyADKAIQIAMoAhgiAWsgBkkEQCADQRBqIAEgBkEEQQQQ2AYLQQAhBCADQQA2AhggAygCDCIFIAMoAgRGBEAgA0EEakGw88IAEMMIIAMoAhghBAsgAygCCCAFQQZ0aiIB/QwAAAAAAAAAAAAAAAAAAAAA/QsEACABQRBq/QwAAAAAAAAAAAAAAAAAAAAA/QsEACABQSBq/QwAAAAAAAAAAAAAAAAAAAAA/QsEACABQTBq/QwAAAAAAAAAAAAAAAAAAAAA/QsEACADIAVBAWo2AgwgAygCECAERgRAIBBBwPPCABC2CAsgAygCFCAEQQJ0akEANgIAIAMgBEEBajYCGCADQQRqIgFBACAKIBsQPSABIANBLGoQ/wELIAcgA/0AAgT9CwIAIAdBIGogA0EEaiIBQSBqKQIANwIAIAdBEGogAUEQav0AAgD9CwIAIANBLGoQrAkgByAGNgI8IAcgAjYCOCAHIAg2AjQgB0EwaiALQQhqKAIANgIAIAcgCykCADcCKCAXJABByABBBBCRDiIBRQRAQQRByABB+MrEACgCACIAQcwIIAAbEQAAAAsgAUKBgICAEDcCACABIAf9AAIA/QsCCCABQRhqIAdBEGr9AAIA/QsCACABQShqIAdBIGr9AAIA/QsCACABQThqIAdBMGr9AAIA/QsCACAAQeiswwA2AgQgACABNgIAIAdBQGskAAuMAQECfyMAQSBrIgIkAAJ/IAAoAgBBgICAgHhHBEAgASgCACAAKAIEIAAoAgggASgCBCgCDBEFAAwBCyACQQhqIgNBCGogACgCDCgCACIAQQhqKQIANwMAIANBEGogAEEQaikCADcDACACIAApAgA3AwggASgCACABKAIEIAMQuAMLIQAgAkEgaiQAIAALewEBfyMAQUBqIgMkACADIAI2AhQgAyABNgIQIAMgADYCDCADQQI2AhwgA0HEu8EANgIYIANCAjcCJCADIANBEGqtQoCAgIAQhDcDOCADIANBDGqtQoCAgIAwhDcDMCADIANBMGo2AiAgA0EYahCDByEAIANBQGskACAAC4YBAgN/AXwCQAJAIAAEQCAAQQhrIgMoAgAiBEEBaiECIAMgAjYCACACRQ0BIAAoAgAiAkF/Rg0CIAAgAkEBajYCAEQAABAAAADwQSEFIAAoAgwgAUsEQCAAKAIIIAFB1AFsaioCgAG7IQULIAAgAjYCACADIAQ2AgAgBQ8LEIMPCwALEIQPAAuGAQIDfwF8AkACQCAABEAgAEEIayIDKAIAIgRBAWohAiADIAI2AgAgAkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgBEAAAQAAAA8EEhBSAAKAIMIAFLBEAgACgCCCABQdQBbGoqAoQBuyEFCyAAIAI2AgAgAyAENgIAIAUPCxCDDwsACxCEDwALhgECA38BfAJAAkAgAARAIABBCGsiAygCACIEQQFqIQIgAyACNgIAIAJFDQEgACgCACICQX9GDQIgACACQQFqNgIARAAAEAAAAPBBIQUgACgCDCABSwRAIAAoAgggAUHUAWxqKgKIAbshBQsgACACNgIAIAMgBDYCACAFDwsQgw8LAAsQhA8AC4YBAgN/AXwCQAJAIAAEQCAAQQhrIgMoAgAiBEEBaiECIAMgAjYCACACRQ0BIAAoAgAiAkF/Rg0CIAAgAkEBajYCAEQAABAAAADwQSEFIAAoAgwgAUsEQCAAKAIIIAFB1AFsaioCjAG7IQULIAAgAjYCACADIAQ2AgAgBQ8LEIMPCwALEIQPAAuGAQIDfwF8AkACQCAABEAgAEEIayIDKAIAIgRBAWohAiADIAI2AgAgAkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgBEAAAQAAAA8EEhBSAAKAIMIAFLBEAgACgCCCABQdQBbGoqApABuyEFCyAAIAI2AgAgAyAENgIAIAUPCxCDDwsACxCEDwALhgECA38BfAJAAkAgAARAIABBCGsiAygCACIEQQFqIQIgAyACNgIAIAJFDQEgACgCACICQX9GDQIgACACQQFqNgIARAAAEAAAAPBBIQUgACgCDCABSwRAIAAoAgggAUHUAWxqKgKUAbshBQsgACACNgIAIAMgBDYCACAFDwsQgw8LAAsQhA8AC4YBAgN/AXwCQAJAIAAEQCAAQQhrIgMoAgAiBEEBaiECIAMgAjYCACACRQ0BIAAoAgAiAkF/Rg0CIAAgAkEBajYCAEQAABAAAADwQSEFIAAoAgwgAUsEQCAAKAIIIAFB1AFsaioCrAG7IQULIAAgAjYCACADIAQ2AgAgBQ8LEIMPCwALEIQPAAuGAQIDfwF8AkACQCAABEAgAEEIayIDKAIAIgRBAWohAiADIAI2AgAgAkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgBEAAAQAAAA8EEhBSAAKAIMIAFLBEAgACgCCCABQdQBbGoqAsABuyEFCyAAIAI2AgAgAyAENgIAIAUPCxCDDwsACxCEDwALhgECA38BfAJAAkAgAARAIABBCGsiAygCACIEQQFqIQIgAyACNgIAIAJFDQEgACgCACICQX9GDQIgACACQQFqNgIARAAAEAAAAPBBIQUgACgCDCABSwRAIAAoAgggAUHUAWxqKgK4AbshBQsgACACNgIAIAMgBDYCACAFDwsQgw8LAAsQhA8AC4YBAgN/AXwCQAJAIAAEQCAAQQhrIgMoAgAiBEEBaiECIAMgAjYCACACRQ0BIAAoAgAiAkF/Rg0CIAAgAkEBajYCAEQAABAAAADwQSEFIAAoAgwgAUsEQCAAKAIIIAFB1AFsaioCvAG7IQULIAAgAjYCACADIAQ2AgAgBQ8LEIMPCwALEIQPAAuGAQIDfwF8AkACQCAABEAgAEEIayIDKAIAIgRBAWohAiADIAI2AgAgAkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgBEAAAQAAAA8EEhBSAAKAIMIAFLBEAgACgCCCABQdQBbGoqApgBuyEFCyAAIAI2AgAgAyAENgIAIAUPCxCDDwsACxCEDwALhgECA38BfAJAAkAgAARAIABBCGsiAygCACIEQQFqIQIgAyACNgIAIAJFDQEgACgCACICQX9GDQIgACACQQFqNgIARAAAEAAAAPBBIQUgACgCDCABSwRAIAAoAgggAUHUAWxqKgKcAbshBQsgACACNgIAIAMgBDYCACAFDwsQgw8LAAsQhA8AC4YBAgN/AXwCQAJAIAAEQCAAQQhrIgMoAgAiBEEBaiECIAMgAjYCACACRQ0BIAAoAgAiAkF/Rg0CIAAgAkEBajYCAEQAABAAAADwQSEFIAAoAgwgAUsEQCAAKAIIIAFB1AFsaioCoAG7IQULIAAgAjYCACADIAQ2AgAgBQ8LEIMPCwALEIQPAAuGAQIDfwF8AkACQCAABEAgAEEIayIDKAIAIgRBAWohAiADIAI2AgAgAkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgBEAAAQAAAA8EEhBSAAKAIMIAFLBEAgACgCCCABQdQBbGoqArABuyEFCyAAIAI2AgAgAyAENgIAIAUPCxCDDwsACxCEDwALhgECA38BfAJAAkAgAARAIABBCGsiAygCACIEQQFqIQIgAyACNgIAIAJFDQEgACgCACICQX9GDQIgACACQQFqNgIARAAAEAAAAPBBIQUgACgCDCABSwRAIAAoAgggAUHUAWxqKgK0AbshBQsgACACNgIAIAMgBDYCACAFDwsQgw8LAAsQhA8AC4YBAgN/AXwCQAJAIAAEQCAAQQhrIgMoAgAiBEEBaiECIAMgAjYCACACRQ0BIAAoAgAiAkF/Rg0CIAAgAkEBajYCAEQAABAAAADwQSEFIAAoAgwgAUsEQCAAKAIIIAFB1AFsaioCzAG7IQULIAAgAjYCACADIAQ2AgAgBQ8LEIMPCwALEIQPAAuFAQIDfwF8AkACQCAABEAgAEEIayIDKAIAIgRBAWohAiADIAI2AgAgAkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgBEAAAQAAAA8EEhBSAAKAIMIAFLBEAgACgCCCABQdQBbGoqAiS7IQULIAAgAjYCACADIAQ2AgAgBQ8LEIMPCwALEIQPAAvoBAMEfwJ8BH5B2MrEAC0AAEUEQAJAIwBBIGsiAyQAIwBBIGsiAiQAAkACQAJAAkBB4MrEAC0AAARAQeTKxAAoAgAhAQwBC0GAysQAKAIAIQFBgMrEAEEANgIAIAFFDQEgAREVACEBQeDKxAAtAAANAkHkysQAIAE2AgBB4MrEAEEBOgAACyABEAohASACQSBqJAAMAgsgAkEANgIYIAJBATYCDCACQbzNwgA2AgggAkIENwIQIAJBCGpBxM3CABC5DQALIAFBgwFLBEAgARACCyACQQA2AhggAkEBNgIMIAJB5M3CADYCCCACQgQ3AhAgAkEIakHszcIAELkNAAsgARAHIgIQCEEBRwRAIAFBhAFPBEAgARACC0HYysQALQAAIQRB2MrEAEEBOgAAQdzKxAAoAgAhAUHcysQAIAI2AgACQCAERQ0AIAFBhAFJDQAgARACCyADQSBqJAAMAQsgA0EANgIYIANBATYCDCADQbjMwgA2AgggA0IENwIQIANBCGpBwMzCABC5DQALC0HcysQAKAIAEAkiBZ0iBvwHIgpC6AeAIQkgBSAGoUQAAAAAgIQuQaIiBUT////////fPyAFpqAiBb0iB0I0iKdB/w9xIgFBsghNBHxCf0KAgICAgICAgIB/QoCAgICAgIB4IAFB/wdrrYcgAUH/B0kbIgggCEJ/hSAHg1AbIAeDvwUgBQv8ByIIQoCU69wDgCEHIAggB0KAlOvcA359pyAKIAlC6Ad+fadBwIQ9bGoiAUH/k+vcA0shAiAAIAFBgJTr3ANrIAEgAhs2AgggACACrSAHIAl8fDcDAAuOAQAjAEHwAGsiAyQAIAMgARD1ASADIAIqAgAgAyoCZJQ4AmQgAyACKgIEIAMqAmiUOAJoIAMgAioCCCADKgJslDgCbEHwAEEIEJEOIgEEQCABIANB8AD8CgAAIABBkMDDADYCBCAAIAE2AgAgA0HwAGokAA8LQQhB8ABB+MrEACgCACIAQcwIIAAbEQAAAAvDAQIDewN9IAH9AAIQIQQgAf0AAgAhBiABKgIgIQggAv1dAgAhBSACKgIIIQcgASoCJCEJQShBBBCRDiIBRQRAQQRBKEH4ysQAKAIAIgBBzAggABsRAAAACyABIAk4AiQgASAHIAiUOAIgIAEgBSAH/SACIgUgBP0NBAUGBwgJCgsAAQIDBAUGByAE/eYB/QsCECABIAUgBP0NAAECAwQFBgcICQoLAAECAyAG/eYB/QsCACAAQaDbwwA2AgQgACABNgIAC2QBBH4gAkL/////D4MiAyABQv////8PgyIEfiEFIAAgBSADIAFCIIgiBn4gBCACQiCIIgJ+IgN8IgFCIIZ8IgQ3AwAgACAEIAVUrSACIAZ+IAEgA1StQiCGIAFCIIiEfHw3AwgLfAEBfyAAKAIAIgAoAgwiAQRAIAAoAhAgAUHUAWxBBBDoDgsgACgCGCIBBEAgACgCHCABQQxsQQQQ6A4LIAAoAiQiAQRAIAAoAiggAUEMbEEEEOgOCwJAIABBf0YNACAAIAAoAgRBAWsiATYCBCABDQAgAEHEAEEEEOgOCwulAQMBfwJ9AnsjAEFAaiIEJAAgBCABIAIQsQkgBEEgaiABIAMQsQkgACAEKgIUIgUgBCoCNCIGIAUgBmAbOAIUIAAgBCoCECIFIAQqAjAiBiAFIAZgGzgCECAAIAT9AAQAIgcgBP0ABCAiCCAHIAj9DQABAgMEBQYHCAkKCxwdHh8gCCAH/Q0AAQIDBAUGBwgJCgscHR4f/UX9Uv0LAgAgBEFAayQAC6UBAwF/An0CeyMAQUBqIgQkACAEIAEgAhDIBSAEQSBqIAEgAxDIBSAAIAQqAhQiBSAEKgI0IgYgBSAGYBs4AhQgACAEKgIQIgUgBCoCMCIGIAUgBmAbOAIQIAAgBP0ABAAiByAE/QAEICIIIAcgCP0NAAECAwQFBgcICQoLHB0eHyAIIAf9DQABAgMEBQYHCAkKCxwdHh/9Rf1S/QsCACAEQUBrJAAL/AECAn8BeyMAQfAAayIFJAAgBUEMaiIEQgA3AjQgBEE/IANB/wFxIgMgA0E/Txs6ADAgBCABOAJgIAQgATgCXCAEIAE4AlggBCABOAJUIAQgATgCUCAEIAE4AkwgBEE8av0MAAAAAAAAAAAAAAAAAAAAAP0LAgAgBCAC/RMiBiAA/SAA/QsCICAEIAD9EyAC/SAD/QsCACAEIAYgAP0gAiAA/SAD/QsCEEHwAEEEEJEOIgMEQCADQQA2AgggA0KBgICAEDcCACADQQxqIARB5AD8CgAAIAVB8ABqJAAgA0EIag8LQQRB8ABB+MrEACgCACIDQcwIIAMbEQAAAAt3AQR/AkACQCAABEAgAEEIayIEKAIAIgVBAWohAiAEIAI2AgAgAkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgAgACgCDCABSwRAIAAoAgggAUHUAWxqLQA0IQMLIAAgAjYCACAEIAU2AgAgAw8LEIMPCwALEIQPAAuIBAEGfyMAQcABayIEJAAgBEEIaiEAIwBBIGsiAyQAIANBBGohAiMAQSBrIgEkACABQQA2AhggAUEIakEEQTAgAUEUahDiCSABKAIIQQFGBEAgASgCDCABKAIQQcCLwgAQ1w0ACyABKAIMIgVBIGr9DAMAAAAAAAAAAAAAAAAAAAD9CwIAIAVBEGr9DAEAAAACAAAAAAAAAAEAAAD9CwIAIAX9DAAAAAABAAAAAQAAAAAAAAD9CwIAIAJBADYCGCACQgQ3AhAgAiAFNgIMIAJBBDYCCCACQgE3AgAgAUEgaiQAAkACQEGgAUEEEJEOIgEEQEGAHkEQEJEOIgJFDQEgAEIENwI0IABCADcCLCAAIAMpAgQ3AjwgACACNgIoIABCgICAgKABNwMgIAAgATYCHCAAQQo2AhggAEKJ2bnijtO+lwg3AxAgAEHI58EA/QADAP0LAwAgAEHEAGogA0EMav0AAgD9CwIAIABB1ABqIANBHGooAgA2AgAgA0EgaiQADAILQQRBoAFBgI3CABDXDQALQRBBgB5BkI3CABDXDQALIARB6ABqIABB2AD8CgAAQegAQQgQkQ4iAARAIABBADYCCCAAQoGAgIAQNwMAIABBDGogBEHkAGpB3AD8CgAAIARBwAFqJAAgAEEIag8LQQhB6ABB+MrEACgCACIAQcwIIAAbEQAAAAvwAgEFfyMAQcABayICJAAgAkEIaiEAIwBBIGsiASQAIAFCADcCFCABQoCAgIDAADcCDCABQQA2AhwgAUEANgIEIAFBBGpBBBDrAgJAAkBBoAFBBBCRDiIDBEBBoAFBBBCRDiIERQ0BIAAgAf0AAgT9CwI8IABCBDcCNCAAQgA3AiwgACAENgIoIABCgICAgKABNwMgIAAgAzYCHCAAQQo2AhggAEKJ2bnijtO+lwg3AxAgAEHI58EA/QADAP0LAwAgAEHUAGogAUEcaigCADYCACAAQcwAaiABQRRqKQIANwIAIAFBIGokAAwCC0EEQaABQYCNwgAQ1w0AC0EEQaABQZCNwgAQ1w0ACyACQegAaiAAQdgA/AoAAEHoAEEIEJEOIgAEQCAAQQA2AgggAEKBgICAEDcDACAAQQxqIAJB5ABqQdwA/AoAACACQcABaiQAIABBCGoPC0EIQegAQfjKxAAoAgAiAEHMCCAAGxEAAAALfAIBfwZ9IwBBIGsiBCQAIAQgASoCCCIFjDgCHCAEIAEqAgQiBow4AhggBCABKgIAIgeMOAIUIARBCGogAiAAIARBFGogAxECACAEKgIMIQggBCoCCCEJIAQqAhAhCiAEQSBqJAAgByAJlCAGIAiUkiAFIAqUkkMAAAAAXwt0AQR9IAIqAgAiBiAGlCACKgIEIgUgBZSSIAIqAggiAyADlJKRIQQgACABKgIIIAMgBJUiA5ggAyABKgIMIgOUkjgCCCAAIAEqAgQgBSAElSIFmCAFIAOUkjgCBCAAIAEqAgAgBiAElSIEmCAEIAOUkjgCAAulAQMBfwJ9AnsjAEFAaiIEJAAgBCABIAIQxwYgBEEgaiABIAMQxwYgACAEKgIUIgUgBCoCNCIGIAUgBmAbOAIUIAAgBCoCECIFIAQqAjAiBiAFIAZgGzgCECAAIAT9AAQAIgcgBP0ABCAiCCAHIAj9DQABAgMEBQYHCAkKCxwdHh8gCCAH/Q0AAQIDBAUGBwgJCgscHR4f/UX9Uv0LAgAgBEFAayQAC6UBAwF/An0CeyMAQUBqIgQkACAEIAEgAhC3BCAEQSBqIAEgAxC3BCAAIAQqAhQiBSAEKgI0IgYgBSAGYBs4AhQgACAEKgIQIgUgBCoCMCIGIAUgBmAbOAIQIAAgBP0ABAAiByAE/QAEICIIIAcgCP0NAAECAwQFBgcICQoLHB0eHyAIIAf9DQABAgMEBQYHCAkKCxwdHh/9Rf1S/QsCACAEQUBrJAALpQEDAX8CfQJ7IwBBQGoiBCQAIAQgASACEKsEIARBIGogASADEKsEIAAgBCoCFCIFIAQqAjQiBiAFIAZgGzgCFCAAIAQqAhAiBSAEKgIwIgYgBSAGYBs4AhAgACAE/QAEACIHIAT9AAQgIgggByAI/Q0AAQIDBAUGBwgJCgscHR4fIAggB/0NAAECAwQFBgcICQoLHB0eH/1F/VL9CwIAIARBQGskAAulAQMBfwJ9AnsjAEFAaiIEJAAgBCABIAIQ7gUgBEEgaiABIAMQ7gUgACAEKgIUIgUgBCoCNCIGIAUgBmAbOAIUIAAgBCoCECIFIAQqAjAiBiAFIAZgGzgCECAAIAT9AAQAIgcgBP0ABCAiCCAHIAj9DQABAgMEBQYHCAkKCxwdHh8gCCAH/Q0AAQIDBAUGBwgJCgscHR4f/UX9Uv0LAgAgBEFAayQAC6UBAwF/An0CeyMAQUBqIgQkACAEIAEgAhDvBSAEQSBqIAEgAxDvBSAAIAQqAhQiBSAEKgI0IgYgBSAGYBs4AhQgACAEKgIQIgUgBCoCMCIGIAUgBmAbOAIQIAAgBP0ABAAiByAE/QAEICIIIAcgCP0NAAECAwQFBgcICQoLHB0eHyAIIAf9DQABAgMEBQYHCAkKCxwdHh/9Rf1S/QsCACAEQUBrJAALpQEDAX8CfQJ7IwBBQGoiBCQAIAQgASACEKcEIARBIGogASADEKcEIAAgBCoCFCIFIAQqAjQiBiAFIAZgGzgCFCAAIAQqAhAiBSAEKgIwIgYgBSAGYBs4AhAgACAE/QAEACIHIAT9AAQgIgggByAI/Q0AAQIDBAUGBwgJCgscHR4fIAggB/0NAAECAwQFBgcICQoLHB0eH/1F/VL9CwIAIARBQGskAAt+AQF/IwBBQGoiBSQAIAUgATYCDCAFIAA2AgggBSADNgIUIAUgAjYCECAFQQI2AhwgBUGUscQANgIYIAVCAjcCJCAFIAVBEGqtQoCAgIDQjQGENwM4IAUgBUEIaq1CgICAgOCNAYQ3AzAgBSAFQTBqNgIgIAVBGGogBBC5DQALdwIBfQJ/IwBBIGsiAyQAIANBBGogACABENoDQQEhBAJAIAEqAgAgAyoCBJMiAiAClCABKgIEIAMqAgiTIgIgApSSIAEqAgggAyoCDJMiAiAClJIiAkMAAIAoXkUNACAAKgIYIAKRYA0AQQAhBAsgA0EgaiQAIAQLfgEGfSAAIAEqAkgiAiABKgJUIgWSQwAAAD+UOAIIIAAgASoCRCIDIAEqAlAiBpJDAAAAP5Q4AgQgACABKgJAIgQgASoCTCIHkkMAAAA/lDgCACAAIAcgBJMiBCAElCAGIAOTIgMgA5SSIAUgApMiAiAClJKRQwAAAD+UOAIMC34BBn0gACABKgI8IgIgASoCSCIFkkMAAAA/lDgCCCAAIAEqAjgiAyABKgJEIgaSQwAAAD+UOAIEIAAgASoCNCIEIAEqAkAiB5JDAAAAP5Q4AgAgACAHIASTIgQgBJQgBiADkyIDIAOUkiAFIAKTIgIgApSSkUMAAAA/lDgCDAt7AgJ/A30jAEEgayIDJAAgAEEIaiIEKgIAIQUgACoCACEGIAAqAgQhByADQRxqIAQoAgA2AgAgAyAFjDgCECADIAeMOAIMIAMgBow4AgggAyAAKQIANwIUIAMgA0EIaiABIAJBARDDBCADKAIAIQAgA0EgaiQAIABBAUYLdgIDfQN/AkACQCAABEAgAEEIayIEKAIAIgZBAWohBSAEIAU2AgAgBUUNASAAKAIAQX9GDQIgACoCDCECIAAqAgQhAyAAKgIQIQEgBCAGNgIAIAMgAUPbD8lAlCIBIAMgAZQgAiACkpKVlA8LEIMPCwALEIQPAAuqAwEEfyMAQTBrIgMkACADQQxqIQIgAEEARyEEAkACQEGAAkHAABCRDiIABEAgAEEAOgDIASAAQoGAgIAQNwPAASAAQQE6AJwBIABCBDcClAEgAEIANwKMASAAQoCAgIDAADcChAEgAEEAOgCAASAAQgA3A0AgAEIANwMAQYACQcAAEJEOIgFFDQIgAUEAOgDIASABQoGAgIAQNwPAASABQQE6AJwBIAFCBDcClAEgAUIANwKMASABQoCAgIDAADcChAEgAUEAOgCAASABQgA3A0AgAUIANwMAIAIgBDoAICACIAE2AhwgAkEBNgIYIAIgADYCFCACQQE2AhAgAiABNgIMIAJBATYCCCACIAA2AgQgAkEBNgIADAELDAELQTBBBBCRDiIARQRAQQRBMEH4ysQAKAIAIgBBzAggABsRAAAACyAAQQA2AgggAEKBgICAEDcCACAAIAP9AAIM/QsCDCAAQRxqIANBHGr9AAIA/QsCACAAQSxqIANBLGooAgA2AgAgA0EwaiQAIABBCGoPC0HAAEGAAkH4ysQAKAIAIgBBzAggABsRAAAAC5ABAQd9IAIqAgghBCACKgIEIQUgAioCACEGIAEqAgghByABKgIEIQggASoCACEJIAEqAgwhCkEQQQQQkQ4iAUUEQEEEQRBB+MrEACgCACIAQcwIIAAbEQAAAAsgASAKOAIMIAEgByAElDgCCCABIAggBZQ4AgQgASAJIAaUOAIAIABBtNjDADYCBCAAIAE2AgALgAECAX8BfSMAQSBrIgIkACABKgIIIgNDAAAAAGBFBEAgAkEANgIYIAJBATYCDCACQejgwgA2AgggAkIENwIQIAJBCGpBoITEABC5DQALIABBADYCCCAAQgA3AgAgACADIAEqAgAiAyADlCABKgIEIgMgA5SSkZI4AgwgAkEgaiQAC8oGAgd/A3sjAEHQBmsiAiQAIwBBkAFrIgAkACACQfwCaiEEIwBBIGsiAyQAIANBADYCGCADQQhqQRBBgAwgA0EUahDiCSADKAIIQQFGBEAgAygCDCADKAIQQcCLwgAQ1w0AC/0MAAAAAAEAAAACAAAAAwAAACEIQQQhBSADKAIMIgYhAQNAIAFBADYCACABQYAJakEANgIAIAFBgAZqQQA2AgAgAUGAA2pBADYCACABQYQJaiAI/QwDAAAAAwAAAAMAAAADAAAA/TgiCf0MAQAA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QQEhBEHWrcQAQdetxAAgCUEASCIAG0HWrcQAQQEgABsgChshCCAJQR92IApyIQcgBkEERwRAIAJBAzYCmAggAkHbrcQANgKUCCACQQI7AZAIIAJBkAhqDAMLQQIhBCACQQI7AZAIIAVFBEBBASEEIAJBATYCmAggAkHercQANgKUCCACQZAIagwDCyACIAU2AqAIIAJBADsBnAggAkECNgKYCCACQa2txAA2ApQIIAJBkAhqDAILQdatxABBASAJQQBIIgAbIQNB1q3EAEHXrcQAIAAbIQggCUEfdiEEIAJBkAhqIgcgAkHQCGogAkEQaiAGQQR2QRVqIgZBgIB+QQAgBWsgBcFBAEgbIgAQnwIgAMEhAAJAIAIoApAIBEAgAkHICGogB0EIaigCADYCACACIAIpApAINwPACAwBCyACQcAIaiACQdAIaiACQRBqIAYgABA5CyAIIAMgChshCCAEIApyIQcgACACLgHICCIASARAIAJBCGogAigCwAggAigCxAggACAFIAJBkAhqELUFIAIoAgwhBCACKAIIDAILQQIhBCACQQI7AZAIIAVFBEBBASEEIAJBATYCmAggAkHercQANgKUCCACQZAIagwCCyACIAU2AqAIIAJBADsBnAggAkECNgKYCCACQa2txAA2ApQIIAJBkAhqDAELIAJBAzYCmAggAkHYrcQANgKUCCACQQI7AZAIQQEhCEEAIQdBASEEIAJBkAhqCyEAIAIgBDYCzAggAiAANgLICCACIAc2AsQIIAIgCDYCwAggASACQcAIahCvAyEAIAJB8AhqJAAgAAtpAQR+IAEoAgAgAkFsbGoiAUEUaykCACAAKAIAKAIAKQMAhSIDQiCIIgQgAUEIazUCAEK307CFDIUiBX4gAUEMazUCAELdofHLDIUiBiADQv////8PgyIDfoUgAyAFfiAEIAZ+hUIgiYULbwEEfiABKAIAIAJBBHRrIgFBDGspAABCl5Kcqtu2tcI/hSIDQiCIIgUgAUEQaykAACAAKAIAKAIAKQMAQjSJhSIEQiCIIgZ+IANC/////w+DIgMgBEL/////D4MiBH6FIAMgBn4gBCAFfoVCIImFC24BB30gAEICNwIQIAAgASoCACIEIAIqAgAiBZQgASoCBCIGIAIqAgQiB5SSIAEqAggiCCACKgIIIgmUkiIDQwAAAABfOgAMIAAgCSAIIAOUkzgCCCAAIAcgBiADlJM4AgQgACAFIAQgA5STOAIAC2oBA30gACABIAFBDGogASoCACACKgIAIgOUIAEqAgQgAioCBCIElJIgASoCCCACKgIIIgWUkiADIAEqAgyUIAQgASoCEJSSIAUgASoCFJSSXhsiASkCADcCACAAQQhqIAFBCGooAgA2AgALhgEBAn8jAEEgayICJAAgACgCACEDIAJBDGoiACABKAIAQQFBACABKAIEKAIMEQUAOgAIIAAgATYCBCAAQQE6AAkgAEEANgIAIAIgAzYCGCACIANBBGo2AhwgACACQRhqQeTZwgAQsQcgACACQRxqQeTZwgAQsQcgABD0CSEAIAJBIGokACAAC+AMAg19Dn8jAEHQAmsiFiQAIBZBrAFqIgMgARCpASAWQQhqIRIjAEEwayIVJAACQCADKAIwIhNFDQAgAioCCCEEIAIqAgQhBSACKgIAIQYgAygCLCIRIQEgE0EMbCITQQxrIhRBDG5BAXFFBEAgASAGIAEqAgCUOAIAIAEgBSABKgIElDgCBCABIAQgASoCCJQ4AgggAUEMaiEBCyAUQQxJDQAgESATaiETA0AgASAGIAEqAgCUOAIAIAFBBGoiESAFIBEqAgCUOAIAIAFBCGoiESAEIBEqAgCUOAIAIAFBDGoiESAGIBEqAgCUOAIAIAFBEGoiESAFIBEqAgCUOAIAIAFBFGoiESAEIBEqAgCUOAIAIBMgAUEYaiIBRw0ACwsCQCADKAJAQYCAgIB4Rg0AIAMoAkgiEwRAIAMoAkQhASATQQxsIRMgAioCCCEHIAIqAgQhCCACKgIAIQkDQCABIAkgASoCAJQiBjgCACAIIAFBBGoiESoCAJQhBCARIAQ4AgAgByABQQhqIhQqAgCUIQUgFCAFOAIAIAYgBpQgBCAElJIgBSAFlJIiCkMAAAAAXARAIBQgBSAKkSIFlTgCACARIAQgBZU4AgAgASAGIAWVOAIACyABQQxqIQEgE0EMayITDQALCyADKAJUIgFFDQAgAygCUCEdIAFBJGwhHiACKgIIIQ0gAioCBCEOIAIqAgAhD0EAIRMDQCAPIBMgHWoiASoCAJQhBCABIAQ4AgAgDiABQQRqIhEqAgCUIQUgESAFOAIAIA0gAUEIaiIUKgIAlCEGIBQgBjgCACAPIAFBDGoiFyoCAJQhByAXIAc4AgAgDiABQRBqIhgqAgCUIQggGCAIOAIAIA0gAUEUaiIZKgIAlCEJIBkgCTgCACAPIAFBGGoiGioCAJQhCiAaIAo4AgAgDiABQRxqIhsqAgCUIQsgGyALOAIAIA0gAUEgaiIcKgIAlCEMIBwgDDgCACAEIASUIAUgBZSSIAYgBpSSIhBDAAAAAFwEQCARIAUgEJEiBZU4AgAgASAEIAWVOAIAIBQgBiAFlTgCAAsgByAHlCAIIAiUkiAJIAmUkiIEQwAAAABcBEAgGCAIIASRIgSVOAIAIBcgByAElTgCACAZIAkgBJU4AgALIAogCpQgCyALlJIgDCAMlJIiBEMAAAAAXARAIBsgCyAEkSIElTgCACAaIAogBJU4AgAgHCAMIASVOAIACyAeIBNBJGoiE0cNAAsLIANBQGshEyAVQQhqIAMQlgUgA0EoaiERIBUoAhAiAQRAIAFBBnQgFSgCDCIBaiEUIAIqAgghBCACKgIEIQUgAioCACEGA0AgASAGIAEqAgCUOAIAIAFBBGoiAiAFIAIqAgCUOAIAIAFBCGoiAiAEIAIqAgCUOAIAIAFBEGoiAiAGIAIqAgCUOAIAIAFBFGoiAiAFIAIqAgCUOAIAIAFBGGoiAiAEIAIqAgCUOAIAIAFBIGoiAiAGIAIqAgCUOAIAIAFBJGoiAiAFIAIqAgCUOAIAIAFBKGoiAiAEIAIqAgCUOAIAIAFBMGoiAiAGIAIqAgCUOAIAIAFBNGoiAiAFIAIqAgCUOAIAIAFBOGoiAiAEIAIqAgCUOAIAIBQgAUFAayIBRw0ACwsgEiARKQIANwIoIBIgAykCNDcCNCASIBMpAgA3AkAgEiAD/QACWP0LAlggEkEwaiARQQhqKAIANgIAIBJBPGogA0E8aigCADYCACASQcgAaiATQQhq/QACAP0LAgAgEkHoAGogA0HoAGr9AAIA/QsCACASQfgAaiADQfgAaigCADYCACASQZwBaiADQZwBaigCADYCACASQYwBaiADQYwBav0AAgD9CwIAIBIgA/0AAnz9CwJ8IBJBIGogFUEIaiIBQSBqKQIANwIAIBIgFf0AAgj9CwIAIBJBEGogAUEQav0AAgD9CwIAIBIgAy8BoAE7AaABIAMoAgAiAQRAIAMoAgQgAUEGdEHAABDoDgsgAygCDCIBBEAgAygCECABQQJ0QQQQ6A4LIAMoAhgiAQRAIAMoAhwgAUEDdEEEEOgOCyAVQTBqJABBpAFBBBCRDiIBBEAgASASQaQB/AoAACAAQeivwwA2AgQgACABNgIAIBZB0AJqJAAPC0EEQaQBQfjKxAAoAgAiAEHMCCAAGxEAAAALawEDfwJAIAEoAggiAkEASA0AIAEoAgQhAwJAIAJFBEBBASEBDAELQQEhBCACQQEQkQ4iAUUNAQsgAgRAIAEgAyAC/AoAAAsgACACNgIIIAAgATYCBCAAIAI2AgAPCyAEIAJB4JHEABDXDQALZQEFfSADKgIAIgUgBZQgAyoCBCIGIAaUkiADKgIIIgcgB5SSkSEEIAAgAioCGCABKgIAIgggByAElZSSOAIIIAAgAioCFCAIIAYgBJWUkjgCBCAAIAIqAhAgCCAFIASVlJI4AgALcAEBfyMAQRBrIgIkACACQgA3AwgCQAJAIAEoAgBBAUYEQCACIAEpAgQ3AwgMAQsgASgCBCIBQQFLDQEgAkEIaiABQQJ0akGAgID8AzYCAAsgACACKQMINwIAIAJBEGokAA8LIAFBAkHUoMMAEIULAAuCAQEGfSACKgIIIQQgAioCBCEFIAIqAgAhBiABKgIIIQcgASoCBCEIIAEqAgAhCUEMQQQQkQ4iAUUEQEEEQQxB+MrEACgCACIAQcwIIAAbEQAAAAsgASAHIASUOAIIIAEgCCAFlDgCBCABIAkgBpQ4AgAgAEGkhMMANgIEIAAgATYCAAtjAQF9IwBBMGsiBCQAIARBCGogASABQQxqIAFBGGogAhDLAgJ/AkAgBCgCCEEERwRAIAQqAhAiBSADXw0BC0EADAELIAQ1AghCBFILIQEgACAFOAIEIAAgATYCACAEQTBqJAAL0AEBBH8jAEEQayIFJAAgBUEIaiEGQRhBBBCRDiIERQRAQQRBGEH4ysQAKAIAIgRBzAggBBsRAAAACyAEIAM4AhQgBCACOAIQIAQgATgCDCAEIAA4AgggBEKBgICAEDcCACAGQbTYwwA2AgQgBiAENgIAIAUoAgwhBiAFKAIIIQdBFEEEEJEOIgRFBEBBBEEUQfjKxAAoAgAiBEHMCCAEGxEAAAALIAQgBzYCDCAEQQA2AgggBEKBgICAEDcCACAEIAY2AhAgBUEQaiQAIARBCGoLZwEEfiAAKAIAKAIAKQMAQoKAgIAQhSIDQiCIIgQgASgCACACQWxsaiIAQRBrNQIAQrfTsIUMhSIFfiAAQRRrNQIAQt2h8csMhSIGIANC/////w+DIgN+hSADIAV+IAQgBn6FQiCJhQuADAMEfwR7DH0jAEEwayIEJAAgBEEEaiEDIwBB4ABrIgIkACAAKgIcIQogACoCGCEMAkACQAJAIAD9XQIQIgf9DAAAAAAAAAAAAAAAAAAAAAD9QSIG/RsAQQFxRQ0AIAb9xwH9GwJBAXFFDQAgDEMAAAAAXA0AIApDAAAAAFwNACAAKgIgQwAAAABcDQAgACoCJEMAAAAAXA0AIAAqAihDAAAAAFwNACAA/QACACIG/QwAAAAAAAAAAAAAAAAAAIA//UL9U0UNASAG/QwAAAAAAAAAAAAAAAAAAIC//UL9pAFFDQELIAEqAhwhCyABKgIYIRACQAJAIAH9XQIQIgj9DAAAAAAAAAAAAAAAAAAAAAD9QSIG/RsAQQFxRQ0AIAb9xwH9GwJBAXFFDQAgEEMAAAAAXA0AIAtDAAAAAFwNACABKgIgQwAAAABcDQAgASoCJEMAAAAAXA0AIAEqAihDAAAAAFwNACAB/QACACIG/QwAAAAAAAAAAAAAAAAAAIA//UL9U0UNASAG/QwAAAAAAAAAAAAAAAAAAIC//UL9pAFFDQELIAJDAAAAAEMAAIA/QwAAAABDAACAPyAKlSIOIApDAAAAAFsiBRsiCkMAAAAAQwAAgD8gC5UiDyALQwAAAABbGyIRkiIUlSAUQwAAAABbGyITIAogDJQgESAQlJKUIhI4AhQgAiAHIAr9E/3mASAIIBH9E/3mAf3kASAT/RP95gEiBv0fATgCECACIAb9HwA4AgwgAkE8aiAAEM0CAn0gBQRAIAIqAlwhDCAC/QACSCEJIAIqAkQhESACKgJAIRMgAioCPCEOIAIqAlgMAQsgDv0T/QwAAAAAAAAAAAAAAAAAAAAAIAYgB/3lASIHIAf95gH9HwAiDSAH/QwAAAAAAAAAAAAAAAAAAAAA/Q0AAQIDBAUGBwQFBgcAAQIDIAf9DAAAAAAAAAAAAAAAAAAAAAD9DQQFBgcAAQIDAAECAwABAgMgEiAMkyIK/SAB/QwAAAAAAAAAAAAAAAAAAAAA/Q0AAQIDAAECAwQFBgcEBQYH/eYBIgf9HwGSIAogCpQiDJIiCv0gASAH/eUB/eYBIgcgAv0AAkj95AEhCSAH/R8DIAIqAkSSIREgB/0fACACKgJAkiETIA4gCiAMk5QgAioCXJIhDCAOIAogDZOUIAIqAjySIQ4gB/0fAiACKgJYkgshCiACQTxqIAEQzQICfSALQwAAAABbBEAgAioCXCELIAL9AAJIIQcgAioCQCESIAIqAjwhDyACKgJYIQ0gAioCRAwBCyAP/RP9DAAAAAAAAAAAAAAAAAAAAAAgBiAI/eUBIgYgBv3mAf0fACIVIAb9DAAAAAAAAAAAAAAAAAAAAAD9DQABAgMEBQYHBAUGBwABAgMgBv0MAAAAAAAAAAAAAAAAAAAAAP0NBAUGBwABAgMAAQIDAAECAyASIBCTIgv9IAH9DAAAAAAAAAAAAAAAAAAAAAD9DQABAgMAAQIDBAUGBwQFBgf95gEiBv0fAZIgCyALlCILkiIN/SABIAb95QH95gEiBiAC/QACSP3kASEHIAb9HwAgAioCQJIhEiAPIA0gC5OUIAIqAlySIQsgDyANIBWTlCACKgI8kiEPIAb9HwIgAioCWJIhDSAG/R8DIAIqAkSSCyEQIAIgDCALkjgCOCACIAogDZI4AjQgAiAJIAf95AH9CwIkIAIgESAQkjgCICACIBMgEpI4AhwgAiAOIA+SOAIYIAMgAkEMaiAUIAJBGGoQyQIMAgsgAyAA/QACAP0LAgAgA0EoaiAAQShqKAIANgIAIANBIGogAEEgaikCADcCACADQRBqIABBEGr9AAIA/QsCAAwBCyADIAH9AAIA/QsCACADQShqIAFBKGooAgA2AgAgA0EgaiABQSBqKQIANwIAIANBEGogAUEQav0AAgD9CwIACyACQeAAaiQAIABBKGogA0EoaigCADYCACAAQSBqIANBIGopAgA3AgAgAEEQaiADQRBq/QACAP0LAgAgACAE/QACBP0LAgAgBEEwaiQAC14BBX0gAioCACIGIAaUIAIqAggiBCAElJIiB0MAAAAAXARAIAQgB5EiA5UgASoCBCIElCEFIAYgA5UgBJQhAwsgACAFOAIIIAAgAzgCACAAIAEqAgAgAioCBJg4AgQLEgAjAEEwayIAJAAgAEEwaiQAC2kBAX8jAEEwayIDJAAgAyABNgIEIAMgADYCACADQQM2AgwgA0HcksQANgIIIANCAjcCFCADIANBBGqtQoCAgIAwhDcDKCADIAOtQoCAgIAwhDcDICADIANBIGo2AhAgA0EIaiACELkNAAtpAQF/IwBBMGsiAyQAIAMgATYCBCADIAA2AgAgA0ECNgIMIANB0K/EADYCCCADQgI3AhQgAyADrUKAgICAMIQ3AyggAyADQQRqrUKAgICAMIQ3AyAgAyADQSBqNgIQIANBCGogAhC5DQALcAEBfyMAQTBrIgIkACACIAE4AgQgAiAAOAIAIAJBAjYCDCACQdjCxAA2AgggAkICNwIUIAIgAkEEaq1CgICAgKCOAYQ3AyggAiACrUKAgICAoI4BhDcDICACIAJBIGo2AhAgAkEIakGUicIAELkNAAteAQR/IAAoAgQhAiAAKAIIIgMEQCACIQEDQCABKAIAIgQEQCABQQRqKAIAIARBAnRBBBDoDgsgAUEQaiEBIANBAWsiAw0ACwsgACgCACIABEAgAiAAQQR0QQQQ6A4LC2kBA38CQAJAIAAEQCAAQQhrIgQoAgAiBkEBaiEFIAQgBTYCACAFRQ0BIAAoAgANAiAAIAI4AhggAEEBNgIUIAAgATgCECAAQQE2AgwgACADQQBHOgAcIAQgBjYCAA8LEIMPCwALEIQPAAu5AQEEfyMAQRBrIgQkACAEQQhqIQUCQEEUQQQQkQ4iA0UEQAwBCyADIAI4AhAgAyABOAIMIAMgADgCCCADQoGAgIAQNwIAIAVBpITDADYCBCAFIAM2AgAgBCgCDCEFIAQoAgghBkEUQQQQkQ4iA0UEQAwBCyADIAY2AgwgA0EANgIIIANCgYCAgBA3AgAgAyAFNgIQIARBEGokACADQQhqDwtBBEEUQfjKxAAoAgAiA0HMCCADGxEAAAAL2QEBBH8jAEEQayIEJAAgBEEIaiEFAkACQCABvCAAvHJBAE4EQEEUQQQQkQ4iA0UNAiADIAI4AhAgAyABOAIMIAMgADgCCCADQoGAgIAQNwIAIAVB+ODDADYCBCAFIAM2AgAMAQtBiMjDAEHNAEHYyMMAENYMAAsgBCgCDCEFIAQoAgghBkEUQQQQkQ4iA0UEQAwBCyADIAY2AgwgA0EANgIIIANCgYCAgBA3AgAgAyAFNgIQIARBEGokACADQQhqDwtBBEEUQfjKxAAoAgAiA0HMCCADGxEAAAALuQEBBH8jAEEQayIEJAAgBEEIaiEFAkBBFEEEEJEOIgNFBEAMAQsgAyACOAIQIAMgATgCDCADIAA4AgggA0KBgICAEDcCACAFQYzewwA2AgQgBSADNgIAIAQoAgwhBSAEKAIIIQZBFEEEEJEOIgNFBEAMAQsgAyAGNgIMIANBADYCCCADQoGAgIAQNwIAIAMgBTYCECAEQRBqJAAgA0EIag8LQQRBFEH4ysQAKAIAIgNBzAggAxsRAAAAC3MCA38BfgJAAkAgAARAIABBCGsiASgCACIDQQFqIQIgASACNgIAIAJFDQEgACgCAEF/Rg0CIAApA/ACIQQgACgC+AIhACABIAM2AgAgALhEAAAAAGXNzUGjIAS6oEQAAAAAAECPQKIPCxCDDwsACxCEDwALcwIDfwF+AkACQCAABEAgAEEIayIBKAIAIgNBAWohAiABIAI2AgAgAkUNASAAKAIAQX9GDQIgACkDgAEhBCAAKAKIASEAIAEgAzYCACAAuEQAAAAAZc3NQaMgBLqgRAAAAAAAQI9Aog8LEIMPCwALEIQPAAtzAgN/AX4CQAJAIAAEQCAAQQhrIgEoAgAiA0EBaiECIAEgAjYCACACRQ0BIAAoAgBBf0YNAiAAKQPAASEEIAAoAsgBIQAgASADNgIAIAC4RAAAAABlzc1BoyAEuqBEAAAAAABAj0CiDwsQgw8LAAsQhA8AC3MCA38BfgJAAkAgAARAIABBCGsiASgCACIDQQFqIQIgASACNgIAIAJFDQEgACgCAEF/Rg0CIAApA+gBIQQgACgC8AEhACABIAM2AgAgALhEAAAAAGXNzUGjIAS6oEQAAAAAAECPQKIPCxCDDwsACxCEDwALcwIDfwF+AkACQCAABEAgAEEIayIBKAIAIgNBAWohAiABIAI2AgAgAkUNASAAKAIAQX9GDQIgACkDqAIhBCAAKAKwAiEAIAEgAzYCACAAuEQAAAAAZc3NQaMgBLqgRAAAAAAAQI9Aog8LEIMPCwALEIQPAAtzAgN/AX4CQAJAIAAEQCAAQQhrIgEoAgAiA0EBaiECIAEgAjYCACACRQ0BIAAoAgBBf0YNAiAAKQPIAiEEIAAoAtACIQAgASADNgIAIAC4RAAAAABlzc1BoyAEuqBEAAAAAABAj0CiDwsQgw8LAAsQhA8AC3MCA38BfgJAAkAgAARAIABBCGsiASgCACIDQQFqIQIgASACNgIAIAJFDQEgACgCAEF/Rg0CIAApA4gCIQQgACgCkAIhACABIAM2AgAgALhEAAAAAGXNzUGjIAS6oEQAAAAAAECPQKIPCxCDDwsACxCEDwALcwIDfwF+AkACQCAABEAgAEEIayIBKAIAIgNBAWohAiABIAI2AgAgAkUNASAAKAIAQX9GDQIgACkD0AQhBCAAKALYBCEAIAEgAzYCACAAuEQAAAAAZc3NQaMgBLqgRAAAAAAAQI9Aog8LEIMPCwALEIQPAAt/AQJ/IwBBIGsiAiQAIAJBDGoiAyABKAIAQQFBACABKAIEKAIMEQUAOgAIIAMgATYCBCADQQE6AAkgA0EANgIAIAIgADYCGCACIABBBGo2AhwgAyACQRhqQbTgwQAQsQcgAyACQRxqQbTgwQAQsQcgAxD0CSEAIAJBIGokACAAC38BAn8jAEEgayICJAAgAkEMaiIDIAEoAgBBAUEAIAEoAgQoAgwRBQA6AAggAyABNgIEIANBAToACSADQQA2AgAgAiAANgIYIAIgAEEEajYCHCADIAJBGGpB5NnCABCxByADIAJBHGpB5NnCABCxByADEPQJIQAgAkEgaiQAIAALYQEFfSAAQgI3AhAgACACKgIAIgQgBJQgAioCBCIFIAWUkiACKgIIIgYgBpSSIgcgASoCACIDIAOUXzoADCAAIAYgAyAHkZUiA5Q4AgggACAFIAOUOAIEIAAgBCADlDgCAAtZAgJ9AX8CQCABKgIAIgMgACoCACICjF0NACACIANdDQAgASoCBCIDIAAqAgQiAoxdDQAgAiADXQ0AIAEqAggiAiAAKgIIIgNeRSACIAOMXUF/c3EhBAsgBAtkAQN/AkACQCAABEAgAEEIayICKAIAIgNBAWohASACIAE2AgAgAUUNASAAKAIAQX9GDQJB////ByEBIAAoAgxBAkcEQCAALQAcQQFxIQELIAIgAzYCACABDwsQgw8LAAsQhA8AC/sCAQd/IwBB0ABrIgIkACACQQxqIQACQAJAAkACQAJAQQhBBBCRDiIBBEAgAUKBgICAEDcCAEGgAUEEEJEOIgNFDQFBsARBBBCRDiIERQ0CQaABQQQQkQ4iBUUNA0HIAUEEEJEOIgZFDQQgAEHA2sEANgJAIAAgATYCPCAAQgQ3AjQgAEIANwIsIAAgBjYCKCAAQoCAgICgATcCICAAIAU2AhwgAEKAgICAoAE3AhQgACAENgIQIABCgICAgKABNwIIIAAgAzYCBCAAQQo2AgAMBQtBBEEIQfjKxAAoAgAiAEHMCCAAGxEAAAALQQRBoAFBgI3CABDXDQALQQRBsARBkI3CABDXDQALQQRBoAFBgI3CABDXDQALQQRByAFBkI3CABDXDQALQdAAQQQQkQ4iAQRAIAFBADYCCCABQoGAgIAQNwIAIAFBDGogAEHEAPwKAAAgAkHQAGokACABQQhqDwtBBEHQAEH4ysQAKAIAIgBBzAggABsRAAAAC2cCA38BfAJAAkAgAARAIABBCGsiAigCACIDQQFqIQEgAiABNgIAIAFFDQEgACgCACIBQX9GDQIgACABQQFqNgIAIAAoAgQrAgwhBCAAIAE2AgAgAiADNgIAIAQPCxCDDwsACxCEDwALZwIDfwF8AkACQCAABEAgAEEIayICKAIAIgNBAWohASACIAE2AgAgAUUNASAAKAIAIgFBf0YNAiAAIAFBAWo2AgAgACgCBCsCFCEEIAAgATYCACACIAM2AgAgBA8LEIMPCwALEIQPAAtlAQR/AkACQCAABEAgAEEIayICKAIAIgNBAWohASACIAE2AgAgAUUNASAAKAIAIgFBf0YNAiAAIAFBAWo2AgAgACgCBCgCCCEEIAAgATYCACACIAM2AgAgBA8LEIMPCwALEIQPAAtmAQR/AkACQCAABEAgAEEIayICKAIAIgNBAWohASACIAE2AgAgAUUNASAAKAIAIgFBf0YNAiAAIAFBAWo2AgAgACgCBCgCoAEhBCAAIAE2AgAgAiADNgIAIAQPCxCDDwsACxCEDwALZgEEfwJAAkAgAARAIABBCGsiAigCACIDQQFqIQEgAiABNgIAIAFFDQEgACgCACIBQX9GDQIgACABQQFqNgIAIAAoAgQoAqQBIQQgACABNgIAIAIgAzYCACAEDwsQgw8LAAsQhA8AC2YBBH8CQAJAIAAEQCAAQQhrIgIoAgAiA0EBaiEBIAIgATYCACABRQ0BIAAoAgAiAUF/Rg0CIAAgAUEBajYCACAAKAIEKAKEASEEIAAgATYCACACIAM2AgAgBA8LEIMPCwALEIQPAAtlAQR/AkACQCAABEAgAEEIayICKAIAIgNBAWohASACIAE2AgAgAUUNASAAKAIAIgFBf0YNAiAAIAFBAWo2AgAgACgCBCgCYCEEIAAgATYCACACIAM2AgAgBA8LEIMPCwALEIQPAAvnAQEEfyMAQRBrIgMkACADQQhqIQQCQAJAIAG8IAC8ckEATgRAQRBBBBCRDiICRQ0BIAIgATgCDCACIAA4AgggAkKBgICAEDcCACAEQZS2wwA2AgQgBCACNgIADAILQYjIwwBBzQBB2MjDABDWDAALQQRBEEH4ysQAKAIAIgJBzAggAhsRAAAACyADKAIMIQQgAygCCCEFQRRBBBCRDiICRQRAQQRBFEH4ysQAKAIAIgJBzAggAhsRAAAACyACIAU2AgwgAkEANgIIIAJCgYCAgBA3AgAgAiAENgIQIANBEGokACACQQhqC8IBAQR/IwBBEGsiAyQAIANBCGohBEEQQQQQkQ4iAkUEQEEEQRBB+MrEACgCACICQcwIIAIbEQAAAAsgAiABOAIMIAIgADgCCCACQoGAgIAQNwIAIARBwLnDADYCBCAEIAI2AgAgAygCDCEEIAMoAgghBUEUQQQQkQ4iAkUEQEEEQRRB+MrEACgCACICQcwIIAIbEQAAAAsgAiAFNgIMIAJBADYCCCACQoGAgIAQNwIAIAIgBDYCECADQRBqJAAgAkEIagtqACAAIAEpAgA3AgwgACACKQIANwIYIAAgASoCBCACKgIEkzgCBCAAIAEqAgAgAioCAJM4AgAgAEEUaiABQQhqIgEoAgA2AgAgAEEgaiACQQhqIgIoAgA2AgAgACABKgIAIAIqAgCTOAIIC3ABAn8jAEEgayICJAAgAkEEaiIDIAAgARDcAiAAQRhqIANBGGooAgA2AgAgAEEQaiADQRBqKQIANwIAIAAgAv0AAgT9CwIAIABBOGpCADcCACAA/QwAAAAAAAAAAAAAAAAAAAAA/QsCKCACQSBqJAALXgEEfUEAIQEgACAEKgIAIgYgBpQgBCoCBCIHIAeUkiAEKgIIIgUgBZSSIghDAACAKF4EfyAAIAUgCJEiBZU4AgwgACAHIAWVOAIIIAAgBiAFlTgCBEEBBUEACzYCAAtoAgF8A38CQAJAIAAEQCAAQQhrIgIoAgAiBEEBaiEDIAIgAzYCACADRQ0BIAAoAgBBf0YNAkQAABAAAADwQSEBIAAoAgxBAkcEQCAAKgIQuyEBCyACIAQ2AgAgAQ8LEIMPCwALEIQPAAtoAgF8A38CQAJAIAAEQCAAQQhrIgIoAgAiBEEBaiEDIAIgAzYCACADRQ0BIAAoAgBBf0YNAkQAABAAAADwQSEBIAAoAgxBAkcEQCAAKgIYuyEBCyACIAQ2AgAgAQ8LEIMPCwALEIQPAAtoAgF8A38CQAJAIAAEQCAAQQhrIgIoAgAiBEEBaiEDIAIgAzYCACADRQ0BIAAoAgBBf0YNAkQAABAAAADwQSEBIAAoAiBBAkcEQCAAKgIkuyEBCyACIAQ2AgAgAQ8LEIMPCwALEIQPAAtoAgF8A38CQAJAIAAEQCAAQQhrIgIoAgAiBEEBaiEDIAIgAzYCACADRQ0BIAAoAgBBf0YNAkQAABAAAADwQSEBIAAoAgRBA0cEQCAAKAIIuCEBCyACIAQ2AgAgAQ8LEIMPCwALEIQPAAu7AQEEfyMAQRBrIgIkACACQQhqIQNBDEEEEJEOIgFFBEBBBEEMQfjKxAAoAgAiAUHMCCABGxEAAAALIAEgADgCCCABQoGAgIAQNwIAIANB/JXDADYCBCADIAE2AgAgAigCDCEDIAIoAgghBEEUQQQQkQ4iAUUEQEEEQRRB+MrEACgCACIBQcwIIAEbEQAAAAsgASAENgIMIAFBADYCCCABQoGAgIAQNwIAIAEgAzYCECACQRBqJAAgAUEIagtiAQN+IAAoAgAoAgApAwAgASgCACACQXRsaiIAQQxrKQIAhSIDQv////8PgyIEIABBBGs1AgBC3aHxywyFIgV+IANCIIgiA0K307CFDH6FIAMgBX4gBEK307CFDH6FQiCJhQtmAQF9IAAgACoCIEMAAAAAQwAAgD8gAZUgAUMAAAAAWxsiAUMAAAAAQwAAgD8gACoCHCIClSACQwAAAABbG5QiApQ4AiAgACACIAAqAiSUOAIkIAAgAiAAKgIolDgCKCAAIAE4AhwLaAEBfwJAIAIgASgCVCIDSQRAIAEoAkgiAyACSw0BIAIgA0HI5sMAEIULAAsgAiADQbjmwwAQhQsACyAAIAI2AgwgACABNgIAIAAgASgCRCACQQxsajYCCCAAIAEoAlAgAkEJdGo2AgQLUgECfkIBIQMCQCABQcAAcUUEQCABRQ0BQgFBACABa0E/ca2IIQJCASABQT9xrYYhAwwBC0IBIAFBP3GthiECQgAhAwsgACADNwMAIAAgAjcDCAtWAQF/IwBBMGsiAyQAIANBCGogACAAQQxqIABBGGogARDLAgJ/IAMoAghBBEcEQEEAIAMqAhAgAl9FDQEaIAM1AghCBFIMAQtBAAshACADQTBqJAAgAAtkAgF/AXsjAEFAaiIDJAAgA0EcaiABIAJBARBQIAMgA/0AAhwiBP0LAwggAygCMCECIAMoAiwhASAAIAT9CwIAIAAgAkEAIAFBA0kiAhs2AhQgACABQQIgAhs2AhAgA0FAayQAC40BAgF/AX5BxABBBBCRDiIBRQRAQQRBxABB+MrEACgCACIBQcwIIAEbEQAAAAsgAUIBNwI8IAFBADYCMCABQgQ3AiggAUIANwIgIAFCgICAgMAANwIYIAFCBDcCECAB/QwBAAAAAQAAAAAAAAAAAAAA/QsCACABIAC9IgI+AjQgASACQiCIPgI4IAFBCGoLZAIBfwF7IwBBQGoiAyQAIANBHGogASACQQEQUSADIAP9AAIcIgT9CwMIIAMoAjAhAiADKAIsIQEgACAE/QsCACAAIAJBACABQQNJIgIbNgIUIAAgAUECIAIbNgIQIANBQGskAAtwAgF/AX0jAEHgAGsiAiQAIAIgARDyASABKgJgIQNB5ABBBBCRDiIBBEAgASACQeAA/AoAACABIAM4AmAgAEHI1cMANgIEIAAgATYCACACQeAAaiQADwtBBEHkAEH4ysQAKAIAIgBBzAggABsRAAAAC1wBAX8jAEEgayIAJAAgASgCBCECIAEoAgAhASAAQQE2AgQgAEHcvMEANgIAIABCATcCDCAAQsS8wYAwNwMYIAAgAEEYajYCCCABIAIgABC4AyEBIABBIGokACABC5oBAQF/QYABQQQQkQ4iAARAIAD9DAAAAAAAAAAAAAAAAAAAgD/9CwIUIABBfzYCECAA/QwBAAAAAQAAAAAAAAD//////QsCACAAQSRqQQBBxAD8CwAgAEECOgB8IABBADYCeCAA/QwAAIA/AAAAAAAAAAAAAIA//QsCaCAAQQhqDwtBBEGAAUH4ysQAKAIAIgBBzAggABsRAAAAC10BA38CQAJAIAAEQCAAQQhrIgIoAgAiBEEBaiEDIAIgAzYCACADRQ0BIAAoAgANAiABQf8BcUE/TQRAIAAgAToANAsgAEEANgIAIAIgBDYCAA8LEIMPCwALEIQPAAtgAgF/AX0jAEEQayIDJAAgA0EEaiABIAIQggQgACACKgIIIAEqAmAiBJQgAyoCDJI4AgggACAEIAIqAgSUIAMqAgiSOAIEIAAgAyoCBCAEIAIqAgCUkjgCACADQRBqJAALVQEBfyMAQRBrIgEkACABQQA2AgggAUKAgICAEDcCACAABEAgAUEAIABBAUEBENYGCyABIAE2AgwgASgCACIABEAgASgCBCAAQQEQ6A4LIAFBEGokAAtlAQJ/IwBB4ABrIgIkACACQQxqIgMgARDtBUHUAEEEEJEOIgEEQCABIANB1AD8CgAAIABB6LLDADYCBCAAIAE2AgAgAkHgAGokAA8LQQRB1ABB+MrEACgCACIAQcwIIAAbEQAAAAtlAQJ/IwBBsAFrIgIkACACQQxqIgMgARCpAUGkAUEEEJEOIgEEQCABIANBpAH8CgAAIABB6K/DADYCBCAAIAE2AgAgAkGwAWokAA8LQQRBpAFB+MrEACgCACIAQcwIIAAbEQAAAAtrAgF/An4jAEEgayICJAAgAkEIaiAAIAEoAmARAAAgAkEQaiACKAIIIgAgAigCDCgCDBEAACACKQMYIQMgAikDECEEIAJBIGokACAAQQAgBELtjJ6ph4fC+DaFIANCpZyhjOOU7KVehYRQGwtsAgF/An4jAEEgayICJAAgAkEIaiAAIAEoAmARAAAgAkEQaiACKAIIIgAgAigCDCgCDBEAACACKQMYIQMgAikDECEEIAJBIGokACAAQQAgBELg/JToz82FtSOFIANCnO2iq7Se/czGAIWEUBsLbAIBfwJ+IwBBIGsiAiQAIAJBCGogACABKAJgEQAAIAJBEGogAigCCCIAIAIoAgwoAgwRAAAgAikDGCEDIAIpAxAhBCACQSBqJAAgAEEAIARCxbKKt4CAkaqqf4UgA0KJh9vHoar2vSaFhFAbC2wCAX8CfiMAQSBrIgIkACACQQhqIAAgASgCYBEAACACQRBqIAIoAggiACACKAIMKAIMEQAAIAIpAxghAyACKQMQIQQgAkEgaiQAIABBACAEQo7+9JmLj7zlxACFIANCwfyFzt224cU1hYRQGwtsAgF/An4jAEEgayICJAAgAkEIaiAAIAEoAmQRAAAgAkEQaiACKAIIIgAgAigCDCgCDBEAACACKQMYIQMgAikDECEEIAJBIGokACAAQQAgBEKO/vSZi4+85cQAhSADQsH8hc7dtuHFNYWEUBsLbAIBfwJ+IwBBIGsiAiQAIAJBCGogACABKAJgEQAAIAJBEGogAigCCCIAIAIoAgwoAgwRAAAgAikDGCEDIAIpAxAhBCACQSBqJAAgAEEAIARCj9iZz4j1zJ4HhSADQo34tqK32v+FyACFhFAbC2sCAX8CfiMAQSBrIgIkACACQQhqIAAgASgCYBEAACACQRBqIAIoAggiACACKAIMKAIMEQAAIAIpAxghAyACKQMQIQQgAkEgaiQAIABBACAEQuadteiA48+HMYUgA0Lw4py6utTs2yaFhFAbC2sCAX8CfiMAQSBrIgIkACACQQhqIAAgASgCZBEAACACQRBqIAIoAggiACACKAIMKAIMEQAAIAIpAxghAyACKQMQIQQgAkEgaiQAIABBACAEQuadteiA48+HMYUgA0Lw4py6utTs2yaFhFAbC20CAX8CfiMAQSBrIgIkACACQQhqIAAgASgCYBEAACACQRBqIAIoAggiACACKAIMKAIMEQAAIAIpAxghAyACKQMQIQQgAkEgaiQAIABBACAEQt6Fisa2mpP80ACFIANChcGXiNPx7PrkAIWEUBsLbQIBfwJ+IwBBIGsiAiQAIAJBCGogACABKAJgEQAAIAJBEGogAigCCCIAIAIoAgwoAgwRAAAgAikDGCEDIAIpAxAhBCACQSBqJAAgAEEAIARCr6ns6fSs26rgAIUgA0LLr+Dt64uH8Kt/hYRQGwtsAgF/An4jAEEgayICJAAgAkEIaiAAIAEoAmARAAAgAkEQaiACKAIIIgAgAigCDCgCDBEAACACKQMYIQMgAikDECEEIAJBIGokACAAQQAgBELO24DRiLeklRyFIANC5vTWnZL/juehf4WEUBsLbAIBfwJ+IwBBIGsiAiQAIAJBCGogACABKAJkEQAAIAJBEGogAigCCCIAIAIoAgwoAgwRAAAgAikDGCEDIAIpAxAhBCACQSBqJAAgAEEAIARCztuA0Yi3pJUchSADQub01p2S/47noX+FhFAbC2sCAX8CfiMAQSBrIgIkACACQQhqIAAgASgCYBEAACACQRBqIAIoAggiACACKAIMKAIMEQAAIAIpAxghAyACKQMQIQQgAkEgaiQAIABBACAEQpTFqNTN/JyWQ4UgA0L2+IbMtIfkyQKFhFAbC2wCAX8CfiMAQSBrIgIkACACQQhqIAAgASgCYBEAACACQRBqIAIoAggiACACKAIMKAIMEQAAIAIpAxghAyACKQMQIQQgAkEgaiQAIABBACAEQvD5m/utjoG5CIUgA0LtvdGXyYD42ax/hYRQGwtsAgF/An4jAEEgayICJAAgAkEIaiAAIAEoAmARAAAgAkEQaiACKAIIIgAgAigCDCgCDBEAACACKQMYIQMgAikDECEEIAJBIGokACAAQQAgBEKlotHa2tCLnot/hSADQvOasfLK6oO/aYWEUBsLbAIBfwJ+IwBBIGsiAiQAIAJBCGogACABKAJkEQAAIAJBEGogAigCCCIAIAIoAgwoAgwRAAAgAikDGCEDIAIpAxAhBCACQSBqJAAgAEEAIARCpaLR2trQi56Lf4UgA0LzmrHyyuqDv2mFhFAbC2wCAX8CfiMAQSBrIgIkACACQQhqIAAgASgCYBEAACACQRBqIAIoAggiACACKAIMKAIMEQAAIAIpAxghAyACKQMQIQQgAkEgaiQAIABBACAEQpn0sZjPtanYG4UgA0LVkvbQ162A4IZ/hYRQGwtsAgF/An4jAEEgayICJAAgAkEIaiAAIAEoAmQRAAAgAkEQaiACKAIIIgAgAigCDCgCDBEAACACKQMYIQMgAikDECEEIAJBIGokACAAQQAgBEKZ9LGYz7Wp2BuFIANC1ZL20NetgOCGf4WEUBsLawIBfwJ+IwBBIGsiAiQAIAJBCGogACABKAJgEQAAIAJBEGogAigCCCIAIAIoAgwoAgwRAAAgAikDGCEDIAIpAxAhBCACQSBqJAAgAEEAIARCgaKUz+n7kPAchSADQrzYpYDUvdj/C4WEUBsLawIBfwJ+IwBBIGsiAiQAIAJBCGogACABKAJkEQAAIAJBEGogAigCCCIAIAIoAgwoAgwRAAAgAikDGCEDIAIpAxAhBCACQSBqJAAgAEEAIARCgaKUz+n7kPAchSADQrzYpYDUvdj/C4WEUBsLbAIBfwJ+IwBBIGsiAiQAIAJBCGogACABKAJgEQAAIAJBEGogAigCCCIAIAIoAgwoAgwRAAAgAikDGCEDIAIpAxAhBCACQSBqJAAgAEEAIARChIyt1dLxiKllhSADQrT5rv3l+rL93gCFhFAbC2EBA30gACACKgIIIgMgASoCFJI4AhQgACACKgIEIgQgASoCEJI4AhAgACACKgIAIgUgASoCDJI4AgwgACABKgIIIAOTOAIIIAAgASoCBCAEkzgCBCAAIAEqAgAgBZM4AgALXAEBfyMAQTBrIgMkACADIAE2AgwgAyAANgIIIANBATYCFCADQdCuxAA2AhAgA0IBNwIcIAMgA0EIaq1CgICAgOCNAYQ3AyggAyADQShqNgIYIANBEGogAhC5DQALswEBAX9B0ABBBBCRDiIARQRAQQRB0ABB+MrEACgCACIAQcwIIAAbEQAAAAsgAEEAOgBMIABBATYCSCAA/QwEAAAAAQAAAAEAAACAAAAA/QsCOCAAQe+kjNgDNgI0IABC76SM1IOAgJDBADcCLCAA/QwAJHRJAACAPwAAgD8AAIA//QsCHCAA/QyJiIg8P8MuOQAAoEAAAPBB/QsCDCAAQQA2AgggAEKBgICAEDcCACAAQQhqC4oBAQF/QcwAQQQQkQ4iAEUEQEEEQcwAQfjKxAAoAgAiAEHMCCAAGxEAAAALIABBADYCSCAAQgQ3AkAgAEIANwI4IABCgICAgMAANwIwIABCBDcCKCAAQgA3AiAgAEKAgICAwAA3AhggAEIENwIQIAD9DAEAAAABAAAAAAAAAAAAAAD9CwIAIABBCGoLUwEFfSACKgIAIgQgBJQgAioCBCIFIAWUkiACKgIIIgYgBpSSkSEDIAAgASoCACIHIAYgA5WUOAIIIAAgByAFIAOVlDgCBCAAIAcgBCADlZQ4AgALUAIBfwJ+IwBBIGsiAiQAIAApAwAiA0I/hyEEIAEgA0IAWUEBQQAgAyAEhSAEfSACQQxqIgAQ8QUiASAAakEUIAFrENkCIQAgAkEgaiQAIAALdAEBfyMAQdABayICJAAgAv0MAAAAAAAAAAAAAAAAAAAAAP0LBMABIAL9DAAAAAABAAAAAgAAAAMAAAD9CwQQIAJBIGpBAEGgAfwLACACIAAoAgQgACgCCCACQRBqIAFBARAyIAItAAwhACACQdABaiQAIAALsAEBA38gACgCACIAKAIIIgIoAgAhASACIAFBAWs2AgAgAUEBRgRAAkAgAEEIaigCACIBQRBqKAIAIgJFDQAgAUEUaigCACEDIAJBADoAACADRQ0AIAIgA0EBEOgOCwJAIAFBf0YNACABIAEoAgQiAkEBazYCBCACQQFHDQAgAUEYQQgQ6A4LCwJAIABBf0YNACAAIAAoAgQiAUEBazYCBCABQQFHDQAgAEEYQQQQ6A4LC1IBA38CQAJAIAAEQCAAQQhrIgEoAgAiA0EBaiECIAEgAjYCACACRQ0BIAAoAgBBf0YNAiAAKAIMIQAgASADNgIAIABBAkcPCxCDDwsACxCEDwALUgEDfwJAAkAgAARAIABBCGsiASgCACIDQQFqIQIgASACNgIAIAJFDQEgACgCAEF/Rg0CIAAoAiAhACABIAM2AgAgAEECRw8LEIMPCwALEIQPAAtZAQJ+IAAoAgAoAgApAwAgASgCACACQXRsakEMaykCAIUiA0IgiCIEQrfTsIUMfiADQv////8PgyIDQt2h8csMfoUgBELdofHLDH4gA0K307CFDH6FQiCJhQtPAQF/AkAgASAAKAJMTw0AIAAoAkggAUEMbGoiASgCAEEBRw0AIAEoAgQgAkcNACABKAIIIgEgACgCLE8NACAAKAIoIAFBgANsaiEDCyADC1QBAn4gASgCACACQXRsakEMaygCACAAKAIAKAIAKQMAIgOnc60iBELdofHLDH4gA0IgiCIDQrfTsIUMfoUgBEK307CFDH4gA0LdofHLDH6FQiCJhQtgAQF/IwBB8ABrIgIkACACIAEQ9QFB8ABBCBCRDiIBBEAgASACQfAA/AoAACAAQZDAwwA2AgQgACABNgIAIAJB8ABqJAAPC0EIQfAAQfjKxAAoAgAiAEHMCCAAGxEAAAALYAEBfyMAQeAAayICJAAgAiABEPIBQeAAQQQQkQ4iAQRAIAEgAkHgAPwKAAAgAEGYosMANgIEIAAgATYCACACQeAAaiQADwtBBEHgAEH4ysQAKAIAIgBBzAggABsRAAAAC2YBAn8gASgCACECIAFBADYCAAJAIAIEQCABKAIEIQNBCEEEEJEOIgFFDQEgASADNgIEIAEgAjYCACAAQdyNxAA2AgQgACABNgIADwsAC0EEQQhB+MrEACgCACIAQcwIIAAbEQAAAAtVAQJ/IAAoAgAiACgCDCICKAIAIQEgAiABQQFrNgIAIAFBAUYEQCAAQQxqEIoKCwJAIABBf0YNACAAIAAoAgRBAWsiATYCBCABDQAgAEEUQQQQ6A4LC44CAQR/IwBBEGsiAyQAIAMgACgCACICQQRqNgIMIwBBEGsiACQAIAEoAgBBgNzCAEEIIAEoAgQoAgwRBQAhBCAAQQA6AA0gACAEOgAMIAAgATYCCCAAQQhqQYjcwgBBBiACQeDbwgAQogZBjtzCAEEFIAJBCGpB8NvCABCiBkGT3MIAQQQgA0EMakH02cIAEKIGIQIgAC0ADSIEIAAtAAwiBXIhAQJAIARBAUcNACAFQQFxDQAgAigCACIBLQAKQYABcUUEQCABKAIAQcuxxABBAiABKAIEKAIMEQUAIQEMAQsgASgCAEHKscQAQQEgASgCBCgCDBEFACEBCyAAQRBqJAAgA0EQaiQAIAFBAXELUQECfSAAIAEqAgggAioCCCIDmCADIAEqAgwiA5SSOAIIIAAgASoCBCACKgIEIgSYIAQgA5SSOAIEIAAgASoCACACKgIAIgSYIAQgA5SSOAIAC1QBBH0gACACKgIYIgQgASoCACIDkjgCFCAAIAMgAioCFCIFkjgCECAAIAMgAioCECIGkjgCDCAAIAQgA5M4AgggACAFIAOTOAIEIAAgBiADkzgCAAtSAQF/IAAoAgAiAEHMAGooAgAiAQRAIABB0ABqKAIAIAFB9ABsQQQQ6A4LAkAgAEF/Rg0AIAAgACgCBEEBayIBNgIEIAENACAAQegAQQQQ6A4LC1ECA38BfQJAAkAgAARAIABBCGsiASgCACIDQQFqIQIgASACNgIAIAJFDQEgACgCAEF/Rg0CIAAqAjwhBCABIAM2AgAgBA8LEIMPCwALEIQPAAtRAgN/AX0CQAJAIAAEQCAAQQhrIgEoAgAiA0EBaiECIAEgAjYCACACRQ0BIAAoAgBBf0YNAiAAKgIIIQQgASADNgIAIAQPCxCDDwsACxCEDwALUQEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATgCCCAAQQE2AgQgAiAENgIADwsQgw8LAAsQhA8AC08BA38CQAJAIAAEQCAAQQhrIgEoAgAiA0EBaiECIAEgAjYCACACRQ0BIAAoAgBBf0YNAiAALQBAIQAgASADNgIAIAAPCxCDDwsACxCEDwALUQIDfwF9AkACQCAABEAgAEEIayIBKAIAIgNBAWohAiABIAI2AgAgAkUNASAAKAIAQX9GDQIgACoCNCEEIAEgAzYCACAEDwsQgw8LAAsQhA8AC1ECA38BfQJAAkAgAARAIABBCGsiASgCACIDQQFqIQIgASACNgIAIAJFDQEgACgCAEF/Rg0CIAAqAjghBCABIAM2AgAgBA8LEIMPCwALEIQPAAtRAQN/AkACQCAABEAgAEEIayICKAIAIgRBAWohAyACIAM2AgAgA0UNASAAKAIADQIgACABOAIkIABBATYCICACIAQ2AgAPCxCDDwsACxCEDwALTwEDfwJAAkAgAARAIABBCGsiASgCACIDQQFqIQIgASACNgIAIAJFDQEgACgCAEF/Rg0CIAAtAFwhACABIAM2AgAgAA8LEIMPCwALEIQPAAtPAQN/AkACQCAABEAgAEEIayIBKAIAIgNBAWohAiABIAI2AgAgAkUNASAAKAIAQX9GDQIgACgCTCEAIAEgAzYCACAADwsQgw8LAAsQhA8AC1ECA38BfAJAAkAgAARAIABBCGsiASgCACIDQQFqIQIgASACNgIAIAJFDQEgACgCAEF/Rg0CIAArAgQhBCABIAM2AgAgBA8LEIMPCwALEIQPAAtRAgN/AX0CQAJAIAAEQCAAQQhrIgEoAgAiA0EBaiECIAEgAjYCACACRQ0BIAAoAgBBf0YNAiAAKgJAIQQgASADNgIAIAQPCxCDDwsACxCEDwALUQIDfwF9AkACQCAABEAgAEEIayIBKAIAIgNBAWohAiABIAI2AgAgAkUNASAAKAIAQX9GDQIgACoCKCEEIAEgAzYCACAEDwsQgw8LAAsQhA8AC1ECA38BfAJAAkAgAARAIABBCGsiASgCACIDQQFqIQIgASACNgIAIAJFDQEgACgCAEF/Rg0CIAArAiwhBCABIAM2AgAgBA8LEIMPCwALEIQPAAtPAQN/AkACQCAABEAgAEEIayIBKAIAIgNBAWohAiABIAI2AgAgAkUNASAAKAIAQX9GDQIgACgCNCEAIAEgAzYCACAADwsQgw8LAAsQhA8AC08BA38CQAJAIAAEQCAAQQhrIgEoAgAiA0EBaiECIAEgAjYCACACRQ0BIAAoAgBBf0YNAiAAKAI4IQAgASADNgIAIAAPCxCDDwsACxCEDwALTwEDfwJAAkAgAARAIABBCGsiASgCACIDQQFqIQIgASACNgIAIAJFDQEgACgCAEF/Rg0CIAAoAgwhACABIAM2AgAgAA8LEIMPCwALEIQPAAtRAgN/AX0CQAJAIAAEQCAAQQhrIgEoAgAiA0EBaiECIAEgAjYCACACRQ0BIAAoAgBBf0YNAiAAKgIEIQQgASADNgIAIAQPCxCDDwsACxCEDwALUQIDfwF9AkACQCAABEAgAEEIayIBKAIAIgNBAWohAiABIAI2AgAgAkUNASAAKAIAQX9GDQIgACoCJCEEIAEgAzYCACAEDwsQgw8LAAsQhA8AC1ECA38BfQJAAkAgAARAIABBCGsiASgCACIDQQFqIQIgASACNgIAIAJFDQEgACgCAEF/Rg0CIAAqAiwhBCABIAM2AgAgBA8LEIMPCwALEIQPAAtPAQN/AkACQCAABEAgAEEIayIBKAIAIgNBAWohAiABIAI2AgAgAkUNASAAKAIAQX9GDQIgACgCMCEAIAEgAzYCACAADwsQgw8LAAsQhA8AC08BA38CQAJAIAAEQCAAQQhrIgEoAgAiA0EBaiECIAEgAjYCACACRQ0BIAAoAgBBf0YNAiAAKAI8IQAgASADNgIAIAAPCxCDDwsACxCEDwALTwEDfwJAAkAgAARAIABBCGsiASgCACIDQQFqIQIgASACNgIAIAJFDQEgACgCAEF/Rg0CIAAoAkAhACABIAM2AgAgAA8LEIMPCwALEIQPAAtQAQN/AkACQCAABEAgAEEQayIBKAIAIgNBAWohAiABIAI2AgAgAkUNASAAKAIAQX9GDQIgACgCpAMhACABIAM2AgAgAA8LEIMPCwALEIQPAAtPAQN/AkACQCAABEAgAEEIayIBKAIAIgNBAWohAiABIAI2AgAgAkUNASAAKAIAQX9GDQIgACgCHCEAIAEgAzYCACAADwsQgw8LAAsQhA8AC08BA38CQAJAIAAEQCAAQQhrIgEoAgAiA0EBaiECIAEgAjYCACACRQ0BIAAoAgBBf0YNAiAALQAQIQAgASADNgIAIAAPCxCDDwsACxCEDwALUQIDfwF8AkACQCAABEAgAEEIayIBKAIAIgNBAWohAiABIAI2AgAgAkUNASAAKAIAQX9GDQIgACsCHCEEIAEgAzYCACAEDwsQgw8LAAsQhA8AC08BA38CQAJAIAAEQCAAQQhrIgEoAgAiA0EBaiECIAEgAjYCACACRQ0BIAAoAgBBf0YNAiAALQAYIQAgASADNgIAIAAPCxCDDwsACxCEDwALTwEDfwJAAkAgAARAIABBCGsiASgCACIDQQFqIQIgASACNgIAIAJFDQEgACgCAEF/Rg0CIAAoAgQhACABIAM2AgAgAA8LEIMPCwALEIQPAAtRAgN/AX0CQAJAIAAEQCAAQQhrIgEoAgAiA0EBaiECIAEgAjYCACACRQ0BIAAoAgBBf0YNAiAAKgIMIQQgASADNgIAIAQPCxCDDwsACxCEDwALUQIDfwF9AkACQCAABEAgAEEIayIBKAIAIgNBAWohAiABIAI2AgAgAkUNASAAKAIAQX9GDQIgACoCECEEIAEgAzYCACAEDwsQgw8LAAsQhA8AC1ECA38BfAJAAkAgAARAIABBCGsiASgCACIDQQFqIQIgASACNgIAIAJFDQEgACgCAEF/Rg0CIAArAgwhBCABIAM2AgAgBA8LEIMPCwALEIQPAAtRAgN/AX0CQAJAIAAEQCAAQQhrIgEoAgAiA0EBaiECIAEgAjYCACACRQ0BIAAoAgBBf0YNAiAAKgIgIQQgASADNgIAIAQPCxCDDwsACxCEDwALUQIDfwF9AkACQCAABEAgAEEIayIBKAIAIgNBAWohAiABIAI2AgAgAkUNASAAKAIAQX9GDQIgACoCMCEEIAEgAzYCACAEDwsQgw8LAAsQhA8AC1ABA38CQAJAIAAEQCAAQQhrIgEoAgAiA0EBaiECIAEgAjYCACACRQ0BIAAoAgBBf0YNAiAALQDgBCEAIAEgAzYCACAADwsQgw8LAAsQhA8AC1kBAn4gACgCACgCACkDACABKAIAIAJBA3RrQQhrKQIAhSIDQiCIIgRCt9OwhQx+IANC/////w+DIgNC3aHxywx+hSAEQt2h8csMfiADQrfTsIUMfoVCIImFC1kBAn4gACgCACgCACkDACABKAIAIAJBBHRrQRBrKQIAhSIDQiCIIgRCt9OwhQx+IANC/////w+DIgNC3aHxywx+hSAEQt2h8csMfiADQrfTsIUMfoVCIImFC2YBAX9BHEEEEJEOIgJFBEBBBEEcQfjKxAAoAgAiAEHMCCAAGxEAAAALIAIgAf0AAgD9CwIAIAJBGGogAUEYaigCADYCACACQRBqIAFBEGopAgA3AgAgAEHgpcMANgIEIAAgAjYCAAtoAQF/QSRBBBCRDiICRQRAQQRBJEH4ysQAKAIAIgBBzAggABsRAAAACyACIAH9AAIA/QsCACACQSBqIAFBIGooAgA2AgAgAkEQaiABQRBq/QACAP0LAgAgAEGY/cIANgIEIAAgAjYCAAtoAQF/QShBBBCRDiICRQRAQQRBKEH4ysQAKAIAIgBBzAggABsRAAAACyACIAH9AAIA/QsCACACQSBqIAFBIGopAgA3AgAgAkEQaiABQRBq/QACAP0LAgAgAEGg28MANgIEIAAgAjYCAAtcAQF/IwBBEGsiAiQAAn8gACgCAARAIAIgADYCDCABQaS8wQBBrLzBACACQQxqQZS8wQAQlwkMAQsgASgCAEGDvMEAQRAgASgCBCgCDBEFAAshACACQRBqJAAgAAtNAQN/AkACQCAABEAgAEEIayICKAIAIgRBAWohAyACIAM2AgAgA0UNASAAKAIADQIgACABQQBHOgBAIAIgBDYCAA8LEIMPCwALEIQPAAtOAQN/AkACQCAABEAgAEEIayICKAIAIgRBAWohAyACIAM2AgAgA0UNASAAKAIADQIgACABQQBHOgDgBCACIAQ2AgAPCxCDDwsACxCEDwALXAEBfyMAQRBrIgIkAAJ/IAAoAgAEQCACIAA2AgwgAUG04cEAQbzhwQAgAkEMakGk4cEAEJcJDAELIAEoAgBBk+HBAEEQIAEoAgQoAgwRBQALIQAgAkEQaiQAIAALXAEBfyMAQRBrIgIkAAJ/IAAoAgAEQCACIAA2AgwgAUHQ28IAQdjbwgAgAkEMakHA28IAEJcJDAELIAEoAgBBr9vCAEEQIAEoAgQoAgwRBQALIQAgAkEQaiQAIAALZAEBfSAAQwAAAABDAACAPyABKgIoIgKVIAJDAAAAAFsbOAIIIABDAAAAAEMAAIA/IAEqAiQiApUgAkMAAAAAWxs4AgQgAEMAAAAAQwAAgD8gASoCICIClSACQwAAAABbGzgCAAtIAQF/IAAoAgAgACgCCCIDayACSQRAIAAgAyACENkGIAAoAgghAwsgAgRAIAAoAgQgA2ogASAC/AoAAAsgACACIANqNgIIQQALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATgCPCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiASgCACIDQQFqIQIgASACNgIAIAJFDQEgACgCAA0CIABBAjYCDCABIAM2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATgCNCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATgCOCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiASgCACIDQQFqIQIgASACNgIAIAJFDQEgACgCAA0CIABBAjYCICABIAM2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATYCNCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATYCOCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATgCBCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATgCECACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATgCJCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATgCLCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATYCMCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATYCPCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATYCQCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAg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AgQoAhQREQANAEEADwsgACgCCCIERQRAQQEPCyAEIAEgAiADIAAoAgwoAhgREQALRgEBfyMAQTBrIgUkACAFQQhqIAEgAiADIAQQdAJAIAUoAhxBBEcEQCAAIAX9AAII/QsCAAwBCyAAQQI6AAwLIAVBMGokAAtGAQF/IAAoAgAiACgCCCICIAAoAgBGBEAgACACQQFBAUEBENYGIAAoAgghAgsgACACQQFqNgIIIAAoAgQgAmogAToAAEEAC1AAIAEoAgAgAigCACADKAIAIAQoAgAQDiEBQezKxAAoAgAhAkHoysQAKAIAIQNB6MrEAEIANwIAIAAgAiABIANBAUYiARs2AgQgACABNgIACzwBAX8jAEEgayICJAAgAUEBQQFBACAAKQMAIAJBDGoiABDxBSIBIABqQRQgAWsQ2QIhACACQSBqJAAgAAs9AQF/AkAgASAAKAKMA08NACAAKAKIAyABQYADbGoiACgCAEEBRw0AIABBEGpBACAAKAIEIAJGGyEDCyADCzsBAX8CQCABIAAoAhBPDQAgACgCDCABQbABbGoiACgCAEEBRw0AIABBEGpBACAAKAIEIAJGGyEDCyADC0ABAX1DAAAAACABKgIAIgMgA5QgASoCBCIDIAOUkiABKgIIIgMgA5SSkSAAKgIAkyIDIANDAAAAAF0bIAMgAhsLPwEBfyMAQSBrIgIkACACQQhqIAAoAgAgAkEWahDMBSABQQFBAUEAIAIoAgggAigCDBDZAiEAIAJBIGokACAAC5ENAwh/BX4BfCABKAIIIgdBgICAAXEhBSAAKwMAIQ8gB0GAgICAAXFFBEAgBUEARyEEIwBBgAFrIgMkACAPvSEKAn9BAyAPmUQAAAAAAADwf2ENABpBAiAKQoCAgICAgID4/wCDIgtCgICAgICAgPj/AFENABogCkL/////////B4MiDkKAgICAgICACIQgCkIBhkL+////////D4MgCkI0iKdB/w9xIgYbIgxCAYMhDSALUARAQQQgDlANARogBkGzCGshBkIBIQsgDVAMAQtCgICAgICAgCAgDEIBhiAMQoCAgICAgIAIUSIAGyEMQgJCASAAGyELQct3Qcx3IAAbIAZqIQYgDVALIQAgAyAGOwF4IAMgCzcDcCADQgE3A2ggAyAMNwNgIAMgADoAegJ/AkACQAJAAkACQCAAQQFNBEAgA0EgaiIGIANB4ABqIANBD2oQjQFB1q3EAEEBIApCAFMiABshBUHWrcQAQdetxAAgABshByAKQj+IpyEAIAMoAiBFDQEgA0HYAGogBkEIaigCADYCACADIAMpAiA3A1AMAgsgAEECRg0DQQEhBkHWrcQAQdetxAAgCkIAUyIHG0HWrcQAQQEgBxsgBBshBSAKQj+IpyAEciEHIABB/wFxQQRGDQIgA0EDNgIoIANB263EADYCJCADQQI7ASAgA0EgagwFCyADQdAAaiADQeAAaiADQQ9qEDMLIAcgBSAEGyEFIAAgBHIhByADIAMoAlAgAygCVCADLwFYQQAgA0EgahC1BSADKAIEIQYgAygCAAwDCyADQQI7ASAMAQsgA0EDNgIoIANB2K3EADYCJCADQQI7ASBBASEFQQAhB0EBIQYgA0EgagwBCyADQQE2AiggA0HercQANgIkIANBIGoLIQAgAyAGNgJcIAMgADYCWCADIAc2AlQgAyAFNgJQIAEgA0HQAGoQrwMhACADQYABaiQAIAAPCyAFQQBHIQggAS8BDiEHIwBB8AhrIgIkACAPvSEKAn9BAyAPmUQAAAAAAADwf2ENABpBAiAKQoCAgICAgID4/wCDIgtCgICAgICAgPj/AFENABogCkL/////////B4MiDkKAgICAgICACIQgCkIBhkL+////////D4MgCkI0iKdB/w9xIgQbIgxCAYMhDSALUARAQQQgDlANARogBEGzCGshBEIBIQsgDVAMAQtCgICAgICAgCAgDEIBhiAMQoCAgICAgIAIUSIAGyEMQgJCASAAGyELQct3Qcx3IAAbIARqIQQgDVALIQAgAiAEOwHoCCACIAs3A+AIIAJCATcD2AggAiAMNwPQCCACIAA6AOoIAn8CQAJAIABBAU0EQEF0QQUgBMEiAEEASBsgAGwiBUHA/QBJDQFB5a3EAEElQYyuxAAQ1gwACyAAQQJGDQFBASEEQdatxABB163EACAKQgBTIgUbQdatxABBASAFGyAIGyEGIApCP4inIAhyIQUgAEH/AXFBBEcEQCACQQM2ApgIIAJB263EADYClAggAkECOwGQCCACQZAIagwDC0ECIQQgAkECOwGQCCAHRQRAQQEhBCACQQE2ApgIIAJB3q3EADYClAggAkGQCGoMAwsgAiAHNgKgCCAC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IAFBAnRBBBDoDgsgACgCFCIBBEAgACgCGCABQQN0QQQQ6A4LCz8BAX8gACgCACEAIAEoAggiAkGAgIAQcUUEQCACQYCAgCBxRQRAIAAgARC8DA8LIAAgARCUCg8LIAAgARCTCgs2AQF/IAAoAgAiAQRAIAAoAgQgAUECdEEEEOgOCyAAKAIMIgEEQCAAKAIQIAFBAnRBBBDoDgsLPAEBfUMAAAAAIAAqAgAgASoCAJQgACoCBCABKgIElJIgACoCCCABKgIIlJIiAyADQwAAAABdGyADIAIbCzgBAX0gAEEANgIIIABCADcCACAAIAEqAgAiAiAClCABKgIEIgIgApSSIAEqAggiAiAClJKROAIMCz0BAn0gACABKgIEIgI4AhQgACACOAIMIAAgASoCAIsiAzgCECAAIAKMIgI4AgggACACOAIAIAAgA4w4AgQLxQMBA38gACgCACECIAEoAggiAEGAgIAQcUUEQCAAQYCAgCBxRQRAIwBBEGsiACQAQQMhAyACLQAAIgIhBCACQQpPBEAgACACIAJB5ABuIgRB5ABsa0H/AXFBAXQiA0HWscQAai0AADoADyAAIANB1bHEAGotAAA6AA5BASEDCyAERSACQQBHcUUEQCADQQFrIgMgAEENamogBEEBdEH+AXFB1rHEAGotAAA6AAALIAFBAUEBQQAgAEENaiADakEDIANrENkCIQEgAEEQaiQAIAEPCyMAQYABayIEJAAgAi0AACEAQQAhAgNAIAIgBGpB/wBqIABBD3EiA0EwciADQTdqIANBCkkbOgAAIAJBAWshAiAAIgNBBHYhACADQQ9LDQALIAFBAUHTscQAQQIgAiAEakGAAWpBACACaxDZAiEAIARBgAFqJAAgAA8LIwBBgAFrIgQkACACLQAAIQBBACECA0AgAiAEakH/AGogAEEPcSIDQTByIANB1wBqIANBCkkbOgAAIAJBAWshAiAAIgNBBHYhACADQQ9LDQALIAFBAUHTscQAQQIgAiAEakGAAWpBACACaxDZAiEAIARBgAFqJAAgAAvRAwEGfyMAQRBrIgMkACADIAA2AgwgAEEMaiEEIANBDGohBSMAQSBrIgAkAAJAIAEoAgAiBkHQicQAQQggASgCBCgCDCIHEQUABEBBASECDAELAkAgAS0ACkGAAXFFBEBBASECIAZBzbHEAEEB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RQRAQQRBHEH4ysQAKAIAIgBBzAggABsRAAAACyAAQoGAgIAQNwIAIAD9DAAAAAAAAAAAAAAAAAAAAAD9CwIIIABBgICA/AM2AhggAEEIagsvAQF9IAEqAgAiAiAClCABKgIEIgIgApSSIAEqAggiAiAClJIgACoCACICIAKUXwswAQF/IwBBIGsiAyQAIANBCGogACABIAJBABCaASADKAIIIQAgA0EgaiQAIABBBEcLMAEBfyMAQSBrIgMkACADQQhqIAAgASACQQEQ9AEgAygCCCEAIANBIGokACAAQQRHCzABAX8jAEEgayIDJAAgA0EIaiAAIAEgAkEBEKoCIAMoAgghACADQSBqJAAgAEEERwswAQF/IwBBEGsiAyQAIANBCGogACABIAJBARC1ASADKAIIIQAgA0EQaiQAIABBAUYLMAEBfyMAQSBrIgMkACADQQhqIAAgASACQQEQiwIgAygCCCEAIANBIGokACAAQQRHCzABAX8jAEEgayIDJAAgA0EIaiAAIAEgAkEBEKsCIAMoAgghACADQSBqJAAgAEEERwswAQF/IwBBIGsiAyQAIANBCGogACABIAJBARDbASADKAIIIQAgA0EgaiQAIABBBEcLMAEBfyMAQSBrIgMkACADQQhqIAAgASACQQEQvAEgAygCCCEAIANBIGokACAAQQRHCzABAX8jAEEgayIDJAAgA0EIaiAAIAEgAkEBEO4BIAMoAgghACADQSBqJAAgAEEERwswAQF/IwBBIGsiAyQAIANBCGogACABIAJBARCMAiADKAIIIQAgA0EgaiQAIABBBEcLMAEBfyMAQSBrIgMkACADQQhqIAAgASACQQEQpgIgAygCCCEAIANBIGokACAAQQRHCzABAX8jAEEgayIDJAAgA0EIaiAAIAEgAkEBEJsCIAMoAgghACADQSBqJAAgAEEERwswAQF/IwBBEGsiAyQAIANBCGogACABIAJBARCKASADKAIIIQAgA0EQaiQAIABBAUYLMAEBfyMAQSBrIgMkACADQQhqIAAgASACQQEQmAEgAygCCCEAIANBIGokACAAQQRHCzABAX8jAEEQayIDJAAgA0EIaiAAIAEgAkEBEJ4BIAMoAgghACADQRBqJAAgAEEBRgtIAQF/IAEoAgAhAkEEQQQQkQ4iAUUEQEEEQQRB+MrEACgCACIA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IQAgAkEQaiQAIAALJwEBfyMAQRBrIgIkACACIAAgAUEBECwgAi0ADCEAIAJBEGokACAACycBAX8jAEEQayICJAAgAiAAIAFBARApIAItAAwhACACQRBqJAAgAAsoAQF/IwBBEGsiAiQAIAIgACABQQEQ/wIgAi0ADCEAIAJBEGokACAACygBAX8jAEEQayICJAAgAiAAIAFBARCJASACLQAMIQAgAkEQaiQAIAALJwEBfyMAQRBrIgIkACACIAAgAUEBECggAi0ADCEAIAJBEGokACAACycBAn0gACoCACIBIAAqAgQiAiABIAJfGyIBIAAqAggiAiABIAJfGwsnAQJ9IAAqAmQiASAAKgJoIgIgASACXxsiASAAKgJsIgIgASACXxsLKwAgAEH/AXEiAEHAAE0EQCAAQZirwQBqLQAADwsgAEHBAEHQ4sMAEIULAAtGACAA/QwAAAAAAAAAAAAAAAAAAAAA/QsCECAA/QwAAAAAAAAAAAAAAAAAAIA//QsCACAAQShqQQA2AgAgAEEgakIANwIACzMAIAEoAgAgACgCAC0AAEECdCIAQdDLwgBqKAIAIABBwMvCAGooAgAgASgCBCgCDBEFAAslACAARQRAQeDMwgBBMhCCDwALIAAgAiADIAQgBSABKAIQESAACyMAIABFBEBB4MzCAEEyEIIPAAsgACACIAMgBCABKAIQEQIACyMAIABFBEBB4MzCAEEyEIIPAAsgACACIAMgBCABKAIQEREACyMAIABFBEBB4MzCAEEyEIIPAAsgACACIAMgBCABKAIQER8ACyQAIABFBEBB4MzCAEEyEIIPAAsgACACIAMgBCABKAIQEaIBAAsjACAARQRAQeDMwgBBMhCCDwALIAAgAiADIAQgASgCEBE8AAsoAQF/IAAoAgAiAUGAgICAeHJBgICAgHhHBEAgACgCBCABQQEQ6A4LCyEAIABFBEBB4MzCAEEyEIIPAAsgACACIAMgASgCEBEBAAsdACABKAIABEAgAEHcjcQANgIEIAAgATYCAA8LAAsnAQF/IAAoAgAiAgRAIAEoAgAgAiAAKAIEIAEoAgQoAgwRBQAPCwALJAAgAC0AAEUEQCABQfCzxABBBRD7Ag8LIAFB9bPEAEEEEPsCCx8AIABFBEBB4MzCAEEyEIIPAAsgACACIAEoAhARAwALHwAgACAB/QACQP0LAgAgAEEQaiABQdAAaikCADcCAAsfACAAIAH9AAI0/QsCACAAQRBqIAFBxABqKQIANwIACykAIAAgAC0ABCABQS5GcjoABCAAKAIAIgAoAgAgASAAKAIEKAIQEQMACx0AIAAgAiABKAIsIAEoAjAgASgCOCABKAI8EIkDCxoBAX8gACgCACIBBEAgACgCBCABQQEQ6A4LC1IAIAAEQCAAIAFB+MrEACgCACIAQcwIIAAbEQAAAAsjAEEgayIAJAAgAEEANgIYIABBATYCDCAAQfSPxAA2AgggAEIENwIQIABBCGogAhC5DQALHQAgAEHEp8MANgIEIAAgATYCACAAIAEqAhg4AggLHQAgAEGYpMMANgIEIAAgATYCACAAIAEqAgw4AggLHQAgAEGEqMMANgIEIAAgATYCACAAIAEqAiQ4AggLHQAgAEH4t8MANgIEIAAgATYCACAAIAEqAgg4AggLHQAgAEHcu8MANgIEIAAgATYCACAAIAEqAgg4AggLHQAgAEHMtMMANgIEIAAgATYCACAAIAEqAmA4AggLHwAgAEEIakG8iMQAKQIANwIAIABBtIjEACkCADcCAAsfACAAQQhqQcyIxAApAgA3AgAgAEHEiMQAKQIANwIACxoAIABBADYCCCAAQZC9wQA2AgQgACABNgIACxoAIABBADYCCCAAQdi+wQA2AgQgACABNgIACxoAIABBADYCCCAAQeDhwQA2AgQgACABNgIACxoAIABBADYCCCAAQdz7wQA2AgQgACABNgIACxYAIABB2AFqIAAtAOUCIABBMGoQsAYLGAAgACgCACABKAIAIAIoAgAgAygCABAQCxcBAX8gABASIgE2AgQgACABQQBHNgIACxcBAX8gABATIgE2AgQgACABQQBHNgIACxcBAX8gABAUIgE2AgQgACABQQBHNgIACxcBAX8gABAVIgE2AgQgACABQQBHNgIACxwAIABBADYCECAAQgA3AgggAEKAgICAwAA3AgALGgAgAEEANgIIIABBmKTDADYCBCAAIAE2AgALrQUCFH0CfyABKgIYIQYgAAJ9QwAAgD8gAUEMaiIXKgIIIg8gASoCCCIQkyIKjCAKIBcqAgQiESABKgIEIhKTIgdDAAAAAF0iGBsiCyALlCAXKgIAIhMgASoCACIUkyIMjCAMIBgbIgggCJQg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IABBDGqtQoCAgIAwhDcDUCAAIABBCGqtQoCAgIAwhDcDSAsgACAAQcgAajYCOCAAQTBqIAQQuQ0ACxMAIABBxLrBADYCBCAAIAE2AgALEwAgAEHUusEANgIEIAAgATYCAAsTACAAQfS8wQA2AgQgACABNgIACxAAIABBATYCACAAIAE2AgQLEwAgAEG8vsEANgIEIAAgATYCAAsQACAAQQQ2AgAgACABNgIECxoAAn8gAUEJTwRAIAEgABCuBgwBCyAAEEMLCxAAIAAgATYCBCAAQQU2AgALEwAgAEGs38EANgIEIAAgATYCAAsTACAAQbzfwQA2AgQgACABNgIACxMAIABBzN/BADYCBCAAIAE2AgALEwAgAEHc38EANgIEIAAgATYCAAsTACAAQezfwQA2AgQgACABNgIACxMAIABBxOHBADYCBCAAIAE2AgALEAAgACABNgIEIABBBzYCAAsQACAAIAE2AgQgAEEGNgIACxMAIABBwPvBADYCBCAAIAE2AgALFgBB7MrEACAANgIAQejKxABBATYCAAsTACAAQfTVwgA2AgQgACABNgIACxMAIABBhNbCADYCBCAAIAE2AgALEwAgAEGU1sIANgIEIAAgATYCAAsTACAAQaTWwgA2AgQgACABNgIACxMAIABBtNbCADYCBCAAIAE2AgALEwAgAEHE1sIANgIEIAAgATYCAAsTACAAQdTWwgA2AgQgACABNgIACxMAIABB5NbCADYCBCAAIAE2AgALEwAgAEH01sIANgIEIAAgATYCAAsTACAAQYTXwgA2AgQgACABNgIACxMAIABBlNfCADYCBCAAIAE2AgALEwAgAEGk18IANgIEIAAgATYCAAsTACAAQbTXwgA2AgQgACABNgIACxMAIABBxNfCADYCBCAAIAE2AgALEwAgAEHU18IANgIEIAAgATYCAAsTACAAQeTXwgA2AgQgACABNgIACxMAIABB9NfCADYCBCAAIAE2AgALEwAgAEGE2MIANgIEIAAgATYCAAsTACAAQZTYwgA2AgQgACABNgIACxMAIABBpNjCADYCBCAAIAE2AgALEwAgAEG02MIANgIEIAAgATYCAAsTACAAQcTYwgA2AgQgACABNgIACxMAIABB1NjCADYCBCAAIAE2AgALEwAgAEHk2MIANgIEIAAgATYCAAsTACAAQfTYwgA2AgQgACABNgIACxMAIABBhNnCADYCBCAAIAE2AgALEwAgAEGU2cIANgIEIAAgATYCAAsRACABIAAoAgAgACgCBBD7AgsQACAAIAE2AgQgAEEDNgIACxAAIAAgATYCBCAAQQQ2AgALEAAgACABNgIEIABBAjYCAAsQACAAIAE2AgQgAEEBNgIACxAAIAAgATYCBCAAQQA2AgALKgAgAEL////39/////4ANwIQIAD9DP////7////+/////v///379CwIACxAAIABBADYCACAAIAE2AgQLEwAgAEHgo8MANgIEIAAgATYCAAsTACAAQfyjwwA2AgQgACABNgIACxAAIABBAjYCACAAIAE2AgQLEwAgAEGop8MANgIEIAAgATYCAAsTACAAQeinwwA2AgQgACABNgIACxAAIABBAzYCACAAIAE2AgQLEwAgAEGoqMMANgIEIAAgATYCAAsOACAAIAFBQGsgAhC7AwsQACAAQQo2AgAgACABNgIECxMAIABBsKvDADYCBCAAIAE2AgALEAAgAEEHNgIAIAAgATYCBAsTACAAQbCuwwA2AgQgACABNgIACxAAIABBBjYCACAAIAE2AgQLEwAgAEGwscMANgIEIAAgATYCAAsOACAAIAFBNGogAhC7AwsQACAAQQk2AgAgACABNgIECxAAIABBCzYCACAAIAE2AgQLEwAgAEGwtMMANgIEIAAgATYCAAsQACAAQQw2AgAgACABNgIECxMAIABB3LfDADYCBCAAIAE2AgALEAAgAEENNgIAIAAgATYCBAsTACAAQcC7wwA2AgQgACABNgIACyoAIABC////9/f////+ADcCECAA/Qz////+/////v////7///9+/QsCAAsqACAAQv////f3/////gA3AhAgAP0M/////v////7////+////fv0LAgALEAAgAEEINgIAIAAgATYCBAsQACAAQQU2AgAgACABNgIECxAAIABBDjYCACAAIAE2AgQLEwAgAEGwhMQANgIEIAAgATYCAAsQACAAQQ82AgAgACABNgIECxMAIABBzITEADYCBCAAIAE2AgALEAAgAEEQNgIAIAAgATYCBAsTACAAQeiExAA2AgQgACABNgIACxAAIABBETYCACAAIAE2AgQLEwAgAEGEhcQANgIEIAAgATYCAAsQACAAQRI2AgAgACAB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bnQgYXQgaW5kZXgvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9jY2QvdG9pX2VudHJ5LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2R5bmFtaWNzL2pvaW50L211bHRpYm9keV9qb2ludC9tdWx0aWJvZHkucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvZHluYW1pY3Mvc29sdmVyL3NvbHZlcl9ib2R5LnJzAGJ1aWxkcy9yYXBpZXIzZC1zaW1kLy4uLy4uL3NyYy9keW5hbWljcy9yaWdpZF9ib2R5LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLnJ1c3R1cC90b29sY2hhaW5zL3N0YWJsZS1hYXJjaDY0LWFwcGxlLWRhcndpbi9saWIvcnVzdGxpYi9zcmMvcnVzdC9saWJyYXJ5L3N0ZC9zcmMvc3luYy9tcG1jL2FycmF5LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9uYWxnZWJyYS0wLjM0LjEvc3JjL2Jhc2UvbWF0cml4LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9uYWxnZWJyYS0wLjM0LjEvc3JjL2Jhc2UvbWluX21heC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUtYWFyY2g2NC1hcHBsZS1kYXJ3aW4vbGliL3J1c3RsaWIvc3JjL3J1c3QvbGlicmFyeS9hbGxvYy9zcmMvYm9ycm93LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9uYWxnZWJyYS0wLjM0LjEvc3JjL2Jhc2UvbWF0cml4X3ZpZXcucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL25hbGdlYnJhLTAuMzQuMS9zcmMvYmFzZS9jb25zdHJ1Y3Rpb25fdmlldy5ycwBsaWJyYXJ5L2NvcmUvc3JjL251bS9mbHQyZGVjL3N0cmF0ZWd5L2dyaXN1LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9uYWxnZWJyYS0wLjM0LjEvc3JjL2xpbmFsZy9sdS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUtYWFyY2g2NC1hcHBsZS1kYXJ3aW4vbGliL3J1c3RsaWIvc3JjL3J1c3QvbGlicmFyeS9zdGQvc3JjL3N5bmMvbXBtYy9jb250ZXh0LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcGFydGl0aW9uaW5nL2J2aC9idmhfdHJhdmVyc2VfYnZ0dC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUtYWFyY2g2NC1hcHBsZS1kYXJ3aW4vbGliL3J1c3RsaWIvc3JjL3J1c3QvbGlicmFyeS9zdGQvc3JjL3N5bmMvbXBtYy9saXN0LnJzAGxpYnJhcnkvY29yZS9zcmMvc2xpY2Uvc29ydC9zaGFyZWQvc21hbGxzb3J0LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcGFydGl0aW9uaW5nL2J2aC9idmhfaW5zZXJ0LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdXRpbHMvcG9pbnRfY2xvdWRfc3VwcG9ydF9wb2ludC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9qb2ludC9tdWx0aWJvZHlfam9pbnQvdW5pdF9tdWx0aWJvZHlfam9pbnQucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvZHluYW1pY3Mvam9pbnQvbXVsdGlib2R5X2pvaW50L211bHRpYm9keV9qb2ludC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9zb2x2ZXIvam9pbnRfY29uc3RyYWludC9qb2ludF92ZWxvY2l0eV9jb25zdHJhaW50LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2R5bmFtaWNzL3NvbHZlci9qb2ludF9jb25zdHJhaW50L2dlbmVyaWNfam9pbnRfY29uc3RyYWludC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9zb2x2ZXIvY29udGFjdF9jb25zdHJhaW50L2dlbmVyaWNfY29udGFjdF9jb25zdHJhaW50LnJzAGxpYnJhcnkvc3RkL3NyYy90aHJlYWQvY3VycmVudC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L3BvaW50L3BvaW50X3NlZ21lbnQucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9zaGFwZS9zZWdtZW50LnJzAGxpYnJhcnkvYWxsb2Mvc3JjL2ZtdC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3BhcnRpdGlvbmluZy9idmgvYnZoX3JlZml0LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2R5bmFtaWNzL3JpZ2lkX2JvZHlfc2V0LnJzAGJ1aWxkcy9yYXBpZXIzZC1zaW1kLy4uLy4uL3NyYy9keW5hbWljcy9yaWdpZF9ib2R5X3NldC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9qb2ludC9tdWx0aWJvZHlfam9pbnQvbXVsdGlib2R5X2pvaW50X3NldC5ycwBidWlsZHMvcmFwaWVyM2Qtc2ltZC8uLi8uLi9zcmMvZHluYW1pY3MvbXVsdGlib2R5X2pvaW50X3NldC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9qb2ludC9pbXB1bHNlX2pvaW50L2ltcHVsc2Vfam9pbnRfc2V0LnJzAGJ1aWxkcy9yYXBpZXIzZC1zaW1kLy4uLy4uL3NyYy9keW5hbWljcy9pbXB1bHNlX2pvaW50X3NldC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9zb2x2ZXIvam9pbnRfY29uc3RyYWludC9qb2ludF9jb25zdHJhaW50c19zZXQucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvZHluYW1pY3Mvc29sdmVyL2NvbnRhY3RfY29uc3RyYWludC9jb250YWN0X2NvbnN0cmFpbnRzX3NldC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9nZW9tZXRyeS9jb2xsaWRlcl9zZXQucnMAYnVpbGRzL3JhcGllcjNkLXNpbWQvLi4vLi4vc3JjL2dlb21ldHJ5L2NvbGxpZGVyX3NldC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3RyYW5zZm9ybWF0aW9uL2NvbnZleF9odWxsMy90cmlhbmdsZV9mYWNldC5ycwBsaWJyYXJ5L2NvcmUvc3JjL251bS9kaXlfZmxvYXQucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvZHluYW1pY3MvcmlnaWRfYm9keV9jb21wb25lbnRzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2RhdGEvbW9kaWZpZWRfb2JqZWN0cy5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9zb2x2ZXIvaW50ZXJhY3Rpb25fZ3JvdXBzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9uYWxnZWJyYS0wLjM0LjEvc3JjL2Jhc2Uvb3BzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9zZXJkZS0xLjAuMjE5L3NyYy9kZS9pbXBscy5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3RyYW5zZm9ybWF0aW9uL2NvbnZleF9odWxsX3V0aWxzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvYm91bmRpbmdfdm9sdW1lL2FhYmJfdXRpbHMucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy90cmFuc2Zvcm1hdGlvbi91dGlscy5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy91dGlscy5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2NvbnRhY3RfbWFuaWZvbGRzL2NvbnRhY3RfbWFuaWZvbGRzX3ZveGVsc192b3hlbHMucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9zaGFwZS92b3hlbHMvdm94ZWxzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi93ZWItdGltZS0xLjEuMC9zcmMvdGltZS9qcy5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL21hc3NfcHJvcGVydGllcy9tYXNzX3Byb3BlcnRpZXMucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvcGlwZWxpbmUvdXNlcl9jaGFuZ2VzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi93YXNtLWJpbmRnZW4tMC4yLjEwMC9zcmMvY29udmVydC9zbGljZXMucnMAL1VzZXJzL3NlYmNyb3pldC8ucnVzdHVwL3Rvb2xjaGFpbnMvc3RhYmxlLWFhcmNoNjQtYXBwbGUtZGFyd2luL2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvc3RkL3NyYy9zeXMvc3luYy9tdXRleC9ub190aHJlYWRzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9uYWxnZWJyYS0wLjM0LjEvc3JjL2Jhc2UvYmxhcy5ycwBsaWJyYXJ5L2FsbG9jL3NyYy9mZmkvY19zdHIucnMAL1VzZXJzL3NlYmNyb3pldC8ucnVzdHVwL3Rvb2xjaGFpbnMvc3RhYmxlLWFhcmNoNjQtYXBwbGUtZGFyd2luL2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvY29yZS9zcmMvaXRlci90cmFpdHMvaXRlcmF0b3IucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL25hbGdlYnJhLTAuMzQuMS9zcmMvYmFzZS9kZWZhdWx0X2FsbG9jYXRvci5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9zb2x2ZXIvdmVsb2NpdHlfc29sdmVyLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2R5bmFtaWNzL2NjZC9jY2Rfc29sdmVyLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdXRpbHMvY2VudGVyLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2NvbnRyb2wvY2hhcmFjdGVyX2NvbnRyb2xsZXIucnMAYnVpbGRzL3JhcGllcjNkLXNpbWQvLi4vLi4vc3JjL2NvbnRyb2wvY2hhcmFjdGVyX2NvbnRyb2xsZXIucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvY29udHJvbC9yYXlfY2FzdF92ZWhpY2xlX2NvbnRyb2xsZXIucnMAL1VzZXJzL3NlYmNyb3pldC8ucnVzdHVwL3Rvb2xjaGFpbnMvc3RhYmxlLWFhcmNoNjQtYXBwbGUtZGFyd2luL2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvc3RkL3NyYy9zeW5jL21wbWMvd2FrZXIucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9kZWZhdWx0X3F1ZXJ5X2Rpc3BhdGNoZXIucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvZHluYW1pY3MvaXNsYW5kX21hbmFnZXIucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9zaGFwZS9jeWxpbmRlci5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9zb2x2ZXIvam9pbnRfY29uc3RyYWludC9nZW5lcmljX2pvaW50X2NvbnN0cmFpbnRfYnVpbGRlci5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9zb2x2ZXIvam9pbnRfY29uc3RyYWludC9qb2ludF9jb25zdHJhaW50X2J1aWxkZXIucnMAYnVpbGRzL3JhcGllcjNkLXNpbWQvLi4vLi4vc3JjL2dlb21ldHJ5L2NvbGxpZGVyLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdXRpbHMvY2xlYW51cC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUtYWFyY2g2NC1hcHBsZS1kYXJ3aW4vbGliL3J1c3RsaWIvc3JjL3J1c3QvbGlicmFyeS9jb3JlL3NyYy9jbXAucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9pbnRlcnNlY3Rpb25fdGVzdC9pbnRlcnNlY3Rpb25fdGVzdF9zdXBwb3J0X21hcF9zdXBwb3J0X21hcC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L25vbmxpbmVhcl9zaGFwZV9jYXN0L25vbmxpbmVhcl9zaGFwZV9jYXN0X3N1cHBvcnRfbWFwX3N1cHBvcnRfbWFwLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvY29udGFjdC9jb250YWN0X3N1cHBvcnRfbWFwX3N1cHBvcnRfbWFwLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvY2xvc2VzdF9wb2ludHMvY2xvc2VzdF9wb2ludHNfc3VwcG9ydF9tYXBfc3VwcG9ydF9tYXAucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9kaXN0YW5jZS9kaXN0YW5jZV9zdXBwb3J0X21hcF9zdXBwb3J0X21hcC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2Nsb3Nlc3RfcG9pbnRzL2Nsb3Nlc3RfcG9pbnRzX2hhbGZzcGFjZV9zdXBwb3J0X21hcC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3V0aWxzL3ZlY19tYXAucnMAL1VzZXJzL3NlYmNyb3pldC8ucnVzdHVwL3Rvb2xjaGFpbnMvc3RhYmxlLWFhcmNoNjQtYXBwbGUtZGFyd2luL2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvc3RkL3NyYy9zeW5jL21wbWMvemVyby5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3NoYXBlL2NvbnZleF9wb2x5aGVkcm9uLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvcG9pbnQvcG9pbnRfdGV0cmFoZWRyb24ucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9zaGFwZS92b3hlbHMvdm94ZWxzX2VkaXRpb24ucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL25hbGdlYnJhLTAuMzQuMS9zcmMvYmFzZS9lZGl0aW9uLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9uYWxnZWJyYS0wLjM0LjEvc3JjL2Jhc2UvY29uc3RydWN0aW9uLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2R5bmFtaWNzL3NvbHZlci9jb250YWN0X2NvbnN0cmFpbnQvY29udGFjdF93aXRoX3R3aXN0X2ZyaWN0aW9uLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2R5bmFtaWNzL3NvbHZlci9jb250YWN0X2NvbnN0cmFpbnQvY29udGFjdF93aXRoX2NvdWxvbWJfZnJpY3Rpb24ucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvZHluYW1pY3Mvc29sdmVyL2NhdGVnb3JpemF0aW9uLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdHJhbnNmb3JtYXRpb24vY29udmV4X2h1bGwzL3ZhbGlkYXRpb24ucnMAbGlicmFyeS9jb3JlL3NyYy9udW0vZmx0MmRlYy9zdHJhdGVneS9kcmFnb24ucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL25hbGdlYnJhLTAuMzQuMS9zcmMvbGluYWxnL3N5bW1ldHJpY19laWdlbi5ycwBsaWJyYXJ5L2NvcmUvc3JjL251bS9iaWdudW0ucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9jb250YWN0X21hbmlmb2xkcy9jb250YWN0X21hbmlmb2xkc19wZm1fcGZtLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvY29udGFjdF9tYW5pZm9sZHMvY29udGFjdF9tYW5pZm9sZHNfaGFsZnNwYWNlX3BmbS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3RyYW5zZm9ybWF0aW9uL2NvbnZleF9odWxsMy9jb252ZXhfaHVsbC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2NvbnRhY3RfbWFuaWZvbGRzL2NvbnRhY3RfbWFuaWZvbGRzX2NvbnZleF9iYWxsLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvY29udGFjdF9tYW5pZm9sZHMvY29udGFjdF9tYW5pZm9sZHNfdm94ZWxzX2JhbGwucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9jbG9zZXN0X3BvaW50cy9jbG9zZXN0X3BvaW50c19iYWxsX2JhbGwucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9jb250YWN0X21hbmlmb2xkcy9jb250YWN0X21hbmlmb2xkc19iYWxsX2JhbGwucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL2JpbmNvZGUtMS4zLjMvc3JjL2ludGVybmFsLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvdm94ZWxzL3ZveGVsc19jaHVuay5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9qb2ludC9tdWx0aWJvZHlfam9pbnQvbXVsdGlib2R5X2xpbmsucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9namsvZ2prLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2dlb21ldHJ5L2Jyb2FkX3BoYXNlX2J2aC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3RyYW5zZm9ybWF0aW9uL3RvX3RyaW1lc2gvY3lsaW5kZXJfdG9fdHJpbWVzaC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3RyYW5zZm9ybWF0aW9uL3RvX3RyaW1lc2gvY29udmV4X3BvbHloZWRyb25fdG9fdHJpbWVzaC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3RyYW5zZm9ybWF0aW9uL3RvX3RyaW1lc2gvYmFsbF90b190cmltZXNoLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdHJhbnNmb3JtYXRpb24vdG9fdHJpbWVzaC9jb25lX3RvX3RyaW1lc2gucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9zaGFwZS90cmltZXNoLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdHJhbnNmb3JtYXRpb24vY29udmV4X2h1bGwzL2luaXRpYWxfbWVzaC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9nZW9tZXRyeS9pbnRlcmFjdGlvbl9ncmFwaC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9kYXRhL2dyYXBoLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9lbmEtMC4xNC4zL3NyYy91bmRvX2xvZy5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvbmFsZ2VicmEtMC4zNC4xL3NyYy9iYXNlL2luZGV4aW5nLnJzAGxpYnJhcnkvYWxsb2Mvc3JjL3N0cmluZy5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3BhcnRpdGlvbmluZy9idmgvYnZoX29wdGltaXplLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcGFydGl0aW9uaW5nL2J2aC9idmhfdHJhdmVyc2UucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL25hbGdlYnJhLTAuMzQuMS9zcmMvYmFzZS9jb21wb25lbnR3aXNlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2dlb21ldHJ5L25hcnJvd19waGFzZS5ycwBidWlsZHMvcmFwaWVyM2Qtc2ltZC8uLi8uLi9zcmMvZ2VvbWV0cnkvbmFycm93X3BoYXNlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvYm91bmRpbmdfdm9sdW1lL2JvdW5kaW5nX3NwaGVyZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2NvbnRhY3RfbWFuaWZvbGRzL2NvbnRhY3RfbWFuaWZvbGRzX3ZveGVsc19zaGFwZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2NvbnRhY3RfbWFuaWZvbGRzL2NvbnRhY3RfbWFuaWZvbGRzX3RyaW1lc2hfc2hhcGUucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9wb2ludC9wb2ludF9jb21wb3NpdGVfc2hhcGUucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9jb250YWN0X21hbmlmb2xkcy9jb250YWN0X21hbmlmb2xkc192b3hlbHNfY29tcG9zaXRlX3NoYXBlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvY29udGFjdF9tYW5pZm9sZHMvY29udGFjdF9tYW5pZm9sZHNfY29tcG9zaXRlX3NoYXBlX2NvbXBvc2l0ZV9zaGFwZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2NvbnRhY3RfbWFuaWZvbGRzL2NvbnRhY3RfbWFuaWZvbGRzX2hlaWdodGZpZWxkX2NvbXBvc2l0ZV9zaGFwZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2NvbnRhY3RfbWFuaWZvbGRzL2NvbnRhY3RfbWFuaWZvbGRzX2NvbXBvc2l0ZV9zaGFwZV9zaGFwZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2NvbnRhY3RfbWFuaWZvbGRzL2NvbnRhY3RfbWFuaWZvbGRzX2hlaWdodGZpZWxkX3NoYXBlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvc2hhcmVkX3NoYXBlLnJzAGJ1aWxkcy9yYXBpZXIzZC1zaW1kLy4uLy4uL3NyYy9nZW9tZXRyeS9zaGFwZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3NoYXBlL3NoYXBlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvcG9seWxpbmUucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy90cmFuc2Zvcm1hdGlvbi90b19vdXRsaW5lL3ZveGVsc190b19vdXRsaW5lLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdHJhbnNmb3JtYXRpb24vdG9fb3V0bGluZS9yb3VuZF9jeWxpbmRlcl90b19vdXRsaW5lLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdHJhbnNmb3JtYXRpb24vdG9fb3V0bGluZS9yb3VuZF9jb252ZXhfcG9seWhlZHJvbl90b19vdXRsaW5lLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdHJhbnNmb3JtYXRpb24vdG9fb3V0bGluZS9iYWxsX3RvX291dGxpbmUucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy90cmFuc2Zvcm1hdGlvbi90b19vdXRsaW5lL3JvdW5kX2NvbmVfdG9fb3V0bGluZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3RyYW5zZm9ybWF0aW9uL3RvX291dGxpbmUvY2Fwc3VsZV90b19vdXRsaW5lLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdHJhbnNmb3JtYXRpb24vdG9fb3V0bGluZS9yb3VuZF9jdWJvaWRfdG9fb3V0bGluZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9waXBlbGluZS9waHlzaWNzX3BpcGVsaW5lLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL3BpcGVsaW5lL2RlYnVnX3JlbmRlcl9waXBlbGluZS9kZWJ1Z19yZW5kZXJfcGlwZWxpbmUucnMAbGlicmFyeS9zdGQvc3JjL3N5cy9wYWwvd2FzbS8uLi91bnN1cHBvcnRlZC90aW1lLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLnJ1c3R1cC90b29sY2hhaW5zL3N0YWJsZS1hYXJjaDY0LWFwcGxlLWRhcndpbi9saWIvcnVzdGxpYi9zcmMvcnVzdC9saWJyYXJ5L2NvcmUvc3JjL3RpbWUucnMAL3J1c3RjLzExNTllNzhjNDc0N2IwMmVmOTk2ZTU1MDgyYjcwNGMwOWI5NzA1ODgvbGlicmFyeS9jb3JlL3NyYy90aW1lLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvY29udGFjdF9tYW5pZm9sZHMvY29udGFjdF9tYW5pZm9sZHNfY2Fwc3VsZV9jYXBzdWxlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvY2xvc2VzdF9wb2ludHMvY2xvc2VzdF9wb2ludHNfY3Vib2lkX3RyaWFuZ2xlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvdHJpYW5nbGUucnMAbGlicmFyeS9jb3JlL3NyYy91bmljb2RlL3ByaW50YWJsZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvbmFsZ2VicmEtMC4zNC4xL3NyYy9iYXNlL3ZlY19zdG9yYWdlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcGFydGl0aW9uaW5nL2J2aC9idmhfdHJlZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvbmFsZ2VicmEtMC4zNC4xL3NyYy9saW5hbGcvcGVybXV0YXRpb25fc2VxdWVuY2UucnMAL1VzZXJzL3NlYmNyb3pldC8ucnVzdHVwL3Rvb2xjaGFpbnMvc3RhYmxlLWFhcmNoNjQtYXBwbGUtZGFyd2luL2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvYWxsb2Mvc3JjL3NsaWNlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvdm94ZWxzL3ZveGVsc19uZWlnaGJvcmhvb2QucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL2VuYS0wLjE0LjMvc3JjL3VuaWZ5L21vZC5ycwAvcnVzdC9kZXBzL2hhc2hicm93bi0wLjE1LjQvc3JjL3Jhdy9tb2QucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL2hhc2hicm93bi0wLjE2LjAvc3JjL3Jhdy9tb2QucnMAbGlicmFyeS9jb3JlL3NyYy9mbXQvbW9kLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLnJ1c3R1cC90b29sY2hhaW5zL3N0YWJsZS1hYXJjaDY0LWFwcGxlLWRhcndpbi9saWIvcnVzdGxpYi9zcmMvcnVzdC9saWJyYXJ5L2FsbG9jL3NyYy9jb2xsZWN0aW9ucy9iaW5hcnlfaGVhcC9tb2QucnMAbGlicmFyeS9zdGQvc3JjL3RocmVhZC9tb2QucnMAL1VzZXJzL3NlYmNyb3pldC8ucnVzdHVwL3Rvb2xjaGFpbnMvc3RhYmxlLWFhcmNoNjQtYXBwbGUtZGFyd2luL2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvc3RkL3NyYy9zeW5jL21wbWMvbW9kLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLnJ1c3R1cC90b29sY2hhaW5zL3N0YWJsZS1hYXJjaDY0LWFwcGxlLWRhcndpbi9saWIvcnVzdGxpYi9zcmMvcnVzdC9saWJyYXJ5L2FsbG9jL3NyYy9yYXdfdmVjL21vZC5ycwAvcnVzdGMvMTE1OWU3OGM0NzQ3YjAyZWY5OTZlNTUwODJiNzA0YzA5Yjk3MDU4OC9saWJyYXJ5L2FsbG9jL3NyYy9yYXdfdmVjL21vZC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUtYWFyY2g2NC1hcHBsZS1kYXJ3aW4vbGliL3J1c3RsaWIvc3JjL3J1c3QvbGlicmFyeS9hbGxvYy9zcmMvdmVjL21vZC5ycwBsaWJyYXJ5L2NvcmUvc3JjL251bS9mbHQyZGVjL21vZC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3NoYXBlL2NvbXBvdW5kLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL3BpcGVsaW5lL2RlYnVnX3JlbmRlcl9waXBlbGluZS9kZWJ1Z19yZW5kZXJfYmFja2VuZC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3BhcnRpdGlvbmluZy9idmgvYnZoX2Jpbm5lZF9idWlsZC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3BhcnRpdGlvbmluZy9idmgvYnZoX3Bsb2NfYnVpbGQucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9jbG9zZXN0X3BvaW50cy9jbG9zZXN0X3BvaW50c19jdWJvaWRfY3Vib2lkLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvY3Vib2lkLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvZmVhdHVyZV9pZC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUtYWFyY2g2NC1hcHBsZS1kYXJ3aW4vbGliL3J1c3RsaWIvc3JjL3J1c3QvbGlicmFyeS9hbGxvYy9zcmMvdmVjL3NwZWNfZnJvbV9pdGVyX25lc3RlZC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL21hc3NfcHJvcGVydGllcy9tYXNzX3Byb3BlcnRpZXNfdHJpbWVzaDNkLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvcG9seWdvbmFsX2ZlYXR1cmUzZC5ycwAvcnVzdC9kZXBzL2RsbWFsbG9jLTAuMi4xMC9zcmMvZGxtYWxsb2MucnMAbGlicmFyeS9zdGQvc3JjL2FsbG9jLnJzAGxpYnJhcnkvYWxsb2Mvc3JjL3N5bmMucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL2VuYS0wLjE0LjMvc3JjL3NuYXBzaG90X3ZlYy5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvanMtc3lzLTAuMy43Ny9zcmMvbGliLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9vbmNlX2NlbGwtMS4yMS4zL3NyYy9saWIucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3ZlY19tYXAtMC44LjIvc3JjL2xpYi5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2Yvc21hbGx2ZWMtMS4xNS4xL3NyYy9saWIucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9ib3VuZGluZ192b2x1bWUvYWFiYi5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9kYXRhL2NvYXJlbmEucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvZGF0YS9hcmVuYS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2dqay92b3Jvbm9pX3NpbXBsZXgzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvaGVpZ2h0ZmllbGQzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvZXBhL2VwYTMucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy90cmFuc2Zvcm1hdGlvbi9jb252ZXhfaHVsbDIucnMAL1VzZXJzL3NlYmNyb3pldC8ucnVzdHVwL3Rvb2xjaGFpbnMvc3RhYmxlLWFhcmNoNjQtYXBwbGUtZGFyd2luL2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvY29yZS9zcmMvbnVtL2YzMi5ycwABAQECAQEBAgEBAQICAgIDAQEBAgEBAQIBAQECAgICAwEBAQIBAQECAQEBAgICAgMCAgIDAgICAwICAgMDAwMEAAAAAGY1EAB5AAAANQAAACwAAABDYW5ub3QgZGVzZXJpYWxpemUgY3VzdG9tIHNoYXBlLgAAAAAAAAAAAQAAAAQAAABBbGxvY2F0aW9uIGZyb20gaXRlcmF0b3IgZXJyb3I6IHRoZSBpdGVyYXRvciBkaWQgbm90IHlpZWxkIHRoZSBjb3JyZWN0IG51bWJlciBvZiBlbGVtZW50cy4AABxWEABaAAAAJBkQAHMAAACEAAAACQAAAAAAAAAIAAAABAAAAAUAAABhIHR1cGxlIG9mIHNpemUgMgBBvK3BAAthAQAAAAYAAACqEhAAYwAAAJUEAAAiAAAAqhIQAGMAAACYBAAAHAAAAHN0cnVjdCBUcmlNZXNoIHdpdGggNyBlbGVtZW50cwAA5FYQAB4AAABhIHR1cGxlIG9mIHNpemUgMwBBqK7BAAsFAQAAAAcAQbiuwQALBQEAAAAHAEHIrsEACwUBAAAABwBB2K7BAAuJDgEAAAAHAAAAc3RydWN0IENvbXBvdW5kIHdpdGggNCBlbGVtZW50cwBgVxAAHwAAAHN0cnVjdCBQb2x5bGluZSB3aXRoIDMgZWxlbWVudHMAiFcQAB8AAAB2YXJpYW50IGluZGV4IDAgPD0gaSA8IDKwVxAAGAAAAHN0cnVjdCBDb2xsaWRlciB3aXRoIDExIGVsZW1lbnRz0FcQACAAAABzdHJ1Y3QgVm94ZWxzIHdpdGggNiBlbGVtZW50cwAAAPhXEAAdAAAAc3RydWN0IEhlaWdodEZpZWxkIHdpdGggNiBlbGVtZW50cwAAIFgQACIAAAB2YXJpYW50IGluZGV4IDAgPD0gaSA8IDIwAAAATFgQABkAAABzdHJ1Y3QgVHJpTWVzaENvbm5lY3RlZENvbXBvbmVudHMgd2l0aCAzIGVsZW1lbnRzAAAAcFgQADEAAABzdHJ1Y3QgR3JhcGggd2l0aCAyIGVsZW1lbnRzrFgQABwAAABzdHJ1Y3QgTFUgd2l0aCAyIGVsZW1lbnRzAAAA0FgQABkAAABzdHJ1Y3QgSXNsYW5kTWFuYWdlciB3aXRoIDQgZWxlbWVudHP0WBAAJAAAAHN0cnVjdCBDb252ZXhQb2x5aGVkcm9uIHdpdGggOCBlbGVtZW50cwAgWRAAJwAAAHN0cnVjdCBCdmhOb2RlV2lkZSB3aXRoIDIgZWxlbWVudHMAAFBZEAAiAAAAc3RydWN0IEJyb2FkUGhhc2VCdmggd2l0aCA0IGVsZW1lbnRzfFkQACQAAABzdHJ1Y3QgQ29udGFjdE1hbmlmb2xkRGF0YSB3aXRoIDcgZWxlbWVudHMAAKhZEAAqAAAAc3RydWN0IEpvaW50TW90b3Igd2l0aCA3IGVsZW1lbnRzAAAA3FkQACEAAABzdHJ1Y3QgR2VuZXJpY0pvaW50IHdpdGggMTEgZWxlbWVudHMIWhAAJAAAAHZhcmlhbnQgaW5kZXggMCA8PSBpIDwgMzRaEAAYAAAAdmFyaWFudCBpbmRleCAwIDw9IGkgPCA0VFoQABgAAABzdHJ1Y3QgSW50ZWdyYXRpb25QYXJhbWV0ZXJzIHdpdGggMTcgZWxlbWVudHMAAAB0WhAALQAAAHN0cnVjdCBNdWx0aWJvZHkgd2l0aCAxOCBlbGVtZW50cwAAAKxaEAAhAAAAc3RydWN0IEludGVyYWN0aW9uR3JhcGggd2l0aCAxIGVsZW1lbnQAANhaEAAmAAAAc3RydWN0IEluZGV4U2VxdWVuY2Ugd2l0aCAyIGVsZW1lbnRzCFsQACQAAABzdHJ1Y3QgSW1wdWxzZUpvaW50IHdpdGggNSBlbGVtZW50cwA0WxAAIwAAAHR1cGxlIHN0cnVjdCBNb2RpZmllZE9iamVjdHMgd2l0aCAyIGVsZW1lbnRzYFsQ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EACcAAAASgAAABwAAAAcORAAnAAAAEoAAAA2AAAAHDkQAJwAAAAXAQAAKgAAABw5EACcAAAAdgAAADkAAAAcORAAnAAAAH0AAAAnAAAAHDkQAJwAAACQAAAAIwAAABw5EACcAAAAnQAAAC4AAAAAAAAAMAAAAAQAAADmAAAA5wAAABw5EACcAAAA8gAAACIAAABfOhAAoQAAAEsAAAAcAAAAXzoQAKEAAABLAAAANgAAAAAAAAA4AAAABAAAAOgAAADpAAAAXzoQAKEAAABiAAAANQAAAF86EAChAAAAZQAAACMAAABfOhAAoQAAAHoAAAAjAAAAXzoQAKEAAAB/AAAALgAAALk5EAClAAAASAAAABwAAAC5ORAApQAAAEgAAAA2AAAAAAAAADAAAAAEAAAA6gAAAOsAAAAAAAAAPAAAAAQAAADsAAAA7QAAALk5EAClAAAAdwAAAD0AAAC5ORAApQAAAHoAAAArAAAAuTkQAKUAAACRAAAAKwAAALk5EAClAAAAlgAAADYAAABEVBAAagAAAMgBAAAkAAAARFQQAGoAAADJAQAAJAAAAERUEABqAAAAygEAACQAAABEVBAAagAAAN8BAAAYAAAARFQQAGoAAADgAQAAGAAAAERUEABqAAAA4QEAABgAAABEVBAAagAAAOIBAAAYAAAARFQQAGoAAADlAQAAJwAAAERUEABqAAAA5QEAAEQAAABEVBAAagAAAOoBAAAnAAAARFQQAGoAAADqAQAARAAAAERUEABqAAAA7wEAACcAAABEVBAAagAAAO8BAABEAAAARFQQAGoAAAD0AQAAJwAAAERUEABqAAAA9AEAAEQAAABIaXQgdW5leHBlY3RlZCBzdGF0ZSBpbiBFUEE6IGZhaWxlZCB0byBwcm9qZWN0IHRoZSBvcmlnaW4gb24gdGhlIGluaXRpYWwgc2ltcGxleC4AAABAehAAUQAAAERUEABqAAAA/AEAABEAAABwYXJyeTNkOjpxdWVyeTo6ZXBhOjplcGEzAAAARFQQAGoAAAABAgAAKAAAAERUEABqAAAAFAIAABgAAABEVBAAagAAABUCAAAYAAAARFQQAGoAAAAlAgAAIgAAAERUEABqAAAALQIAABsAAABEVBAAagAAAEQCAAAXAAAARFQQAGoAAABGAgAALAAAAERUEABqAAAARwIAACwA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TAAAAA4AAABEVBAAagAAAGIAAAANAAAARFQQAGoAAABjAAAADQAAAERUEABqAAAAZAAAAA0AAABEVBAAagAAAHoAAAANAAAARFQQAGoAAAB7AAAAEwAAAERUEABqAAAAfAAAABMAAABIaXQgdW5leHBlY3RlZCBzdGF0ZSBpbiBFUEE6IGZvdW5kIGluZGV4ICwgZXhwZWN0ZWQ6IAAAAIzFEAApAAAAtcUQAAwAAAA4rxAAAQAAAERUEABqAAAAjgAAABEAAABwYXJyeTNkOjpxdWVyeTo6ZXBhOjplcGEzAAAARFQQAGoAAACaAAAAHAAAAERUEABqAAAAmgAAABMAAABEVBAAagAAAJsAAAATAAAARFQQAGoAAACcAAAAEwAAAERUEABqAAAAnQAAABMAAABEVBAAagAAAN8BAAAYAAAARFQQAGoAAADgAQAAGAAAAERUEABqAAAA4QEAABgAAABEVBAAagAAAOIBAAAYAAAARFQQAGoAAADlAQAAJwAAAERUEABqAAAA5QEAAEQAAABEVBAAagAAAOoBAAAnAAAARFQQAGoAAADqAQAARAAAAERUEABqAAAA7wEAACcAAABEVBAAagAAAO8BAABEAAAARFQQAGoAAAD0AQAAJwAAAERUEABqAAAA9AEAAEQAAABIaXQgdW5leHBlY3RlZCBzdGF0ZSBpbiBFUEE6IGZhaWxlZCB0byBwcm9qZWN0IHRoZSBvcmlnaW4gb24gdGhlIGluaXRpYWwgc2ltcGxleC4AAAAYxxAAUQAAAERUEABqAAAA/AEAABEAAABEVBAAagAAABQCAAAYAAAARFQQAGoAAAAVAgAAGAAAAERUEABqAAAAJQIAACIAAABEVBAAagAAAC0CAAAbAAAARFQQAGoAAABEAgAAFwAAAERUEABqAAAARgIAACwAAABEVBAAagAAAEcCAAAsAAAARFQQAGoAAABIAgAALAAAAERUEABqAAAAegIAABcAAABEVBAAagAAAHsCAAAjAAAARFQQAGoAAABWAgAAHwAAAERUEABqAAAAYwIAACAAAABEVBAAagAAAGYCAAA6AAAARFQQAGoAAABmAgAALwAAAERUEABqAAAAPQIAACwAAABEVBAAagAAAIgCAAAkAAAARFQQAGoAAADAAQAAGwAAAERUEABqAAAABwIAABoAAABEVBAA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").buffer)})}function q_Q(){return function(){let A,Q;try{let J=O.__wbindgen_add_to_stack_pointer(-16);O.version(J);var B=NY().getInt32(J+0,!0),Y=NY().getInt32(J+4,!0);return A=B,Q=Y,L_(B,Y)}finally{O.__wbindgen_add_to_stack_pointer(16),O.__wbindgen_export_1(A,Q,1)}}()}function M_Q(A){var Q;Q=A,O.reserve_memory(Q)}T9[45]=62,T9[95]=63;var WB=Object.freeze({__proto__:null,version:q_Q,reserveMemory:M_Q,Vector3:x_,VectorOps:a,Quaternion:gM,RotationOps:hQ,SdpMatrix3:f_,SdpMatrix3Ops:hM,get RigidBodyType(){return HC},RigidBody:mM,RigidBodyDesc:w1,RigidBodySet:b_,IntegrationParameters:m_,get JointType(){return BJ},get MotorModel(){return q_},get JointAxesMask(){return M_},ImpulseJoint:NC,UnitImpulseJoint:rM,FixedImpulseJoint:u_,RopeImpulseJoint:d_,SpringImpulseJoint:c_,PrismaticImpulseJoint:l_,RevoluteImpulseJoint:p_,GenericImpulseJoint:i_,SphericalImpulseJoint:n_,JointData:lX,ImpulseJointSet:s_,MultibodyJoint:rG,UnitMultibodyJoint:aM,FixedMultibodyJoint:r_,PrismaticMultibodyJoint:a_,RevoluteMultibodyJoint:o_,SphericalMultibodyJoint:t_,MultibodyJointSet:e_,get CoefficientCombineRule(){return oV},CCDSolver:Av,IslandManager:Qv,BroadPhase:Bv,NarrowPhase:Yv,TempContactManifold:Jv,Shape:JY,get ShapeType(){return YY},get HeightFieldFlags(){return z_},get TriMeshFlags(){return R_},Ball:tM,HalfSpace:Cv,Cuboid:eM,RoundCuboid:Az,Capsule:Qz,Segment:Bz,Triangle:Yz,RoundTriangle:Jz,Polyline:Cz,Voxels:Xz,TriMesh:Gz,ConvexPolyhedron:AI,RoundConvexPolyhedron:QI,Heightfield:Wz,Cylinder:Fz,RoundCylinder:Zz,Cone:$z,RoundCone:Uz,get ActiveCollisionTypes(){return bM},Collider:dM,get MassPropsMode(){return RF},ColliderDesc:BY,ColliderSet:Kv,get FeatureType(){return N4},Ray:Ie,RayIntersection:YI,RayColliderIntersection:tV,RayColliderHit:oM,PointProjection:JI,PointColliderProjection:eV,ShapeCastHit:q4,ColliderShapeCastHit:CI,ShapeContact:L4,World:Ez,PhysicsPipeline:Xv,SerializationPipeline:uM,get ActiveEvents(){return xM},TempContactForceEvent:Ev,EventQueue:He,get ActiveHooks(){return fM},get SolverFlags(){return j_},DebugRenderBuffers:Gv,DebugRenderPipeline:Wv,get QueryFilterFlags(){return O_},init:L_Q,CharacterCollision:Fv,KinematicCharacterController:Zv,get PidAxesMask(){return w_},PidController:$v,DynamicRayCastVehicleController:Uv});var jF;((H)=>{H[H.BLOCK=1]="BLOCK";H[H.ENTITY=2]="ENTITY";H[H.ENTITY_SENSOR=4]="ENTITY_SENSOR";H[H.ENVIRONMENT_ENTITY=8]="ENVIRONMENT_ENTITY";H[H.PLAYER=16]="PLAYER";H[H.GROUP_1=32]="GROUP_1";H[H.GROUP_2=64]="GROUP_2";H[H.GROUP_3=128]="GROUP_3";H[H.GROUP_4=256]="GROUP_4";H[H.GROUP_5=512]="GROUP_5";H[H.GROUP_6=1024]="GROUP_6";H[H.GROUP_7=2048]="GROUP_7";H[H.GROUP_8=4096]="GROUP_8";H[H.GROUP_9=8192]="GROUP_9";H[H.GROUP_10=16384]="GROUP_10";H[H.GROUP_11=32768]="GROUP_11";H[H.ALL=65535]="ALL"})(jF||={});class LC{static BELONGS_TO_SHIFT=16;static COLLIDES_WITH_MASK=65535;static buildRawCollisionGroups(A){return this.combineGroups(A.belongsTo)<>>this.BELONGS_TO_SHIFT),collidesWith:this.bitsToGroups(A&this.COLLIDES_WITH_MASK)}}static decodeCollisionGroups(A){return{belongsTo:A.belongsTo.map((Q)=>this.groupToName(Q)),collidesWith:A.collidesWith.map((Q)=>this.groupToName(Q))}}static isDefaultCollisionGroups(A){return A.belongsTo.includes(65535)&&A.collidesWith.includes(65535)}static combineGroups(A){return A.reduce((Q,B)=>Q|B,0)}static bitsToGroups(A){if(A===65535)return[65535];return Object.values(jF).filter((Q)=>typeof Q==="number"&&Q!==65535&&(A&Q)!==0)}static groupToName(A){let Q=Object.entries(jF).find(([B,Y])=>Y===A);if(!Q)l.fatalError(`CollisionGroupsBuilder.groupToName(): Unknown collision group: ${A}`);return Q[0]}}var Le=qA(Ne(),1);var qe=Le.default;class BQ{static globalInstance=new BQ;_emitter=new qe;_finalListeners={};emit(A,Q){if(this.listenerCount(A)===0)return!1;try{this._emitter.emit(A,Q),this._finalListeners[A]?.(Q)}catch(B){console.error(`EventRouter.emit(): Error emitting event "${A}":`,B)}return!0}emitWithGlobal(A,Q){this.emit(A,Q),BQ.globalInstance.emit(A,Q)}emitWithWorld(A,Q,B){this.emit(Q,B),A.emit(Q,B)}final(A,Q){if(this._finalListeners[A]&&Q!==this._finalListeners[A])return l.error(`EventRouter.final(): Listener for event type "${A}" already exists. It must be removed explicitly with .off() before a different final listener can be set.`);this._finalListeners[A]=Q}hasListeners(A){return this._emitter.listenerCount(A)>0||A in this._finalListeners}listeners(A){return[...this._emitter.listeners(A),...this._finalListeners[A]?[this._finalListeners[A]]:[]]}listenerCount(A){return this._emitter.listenerCount(A)+(this._finalListeners[A]?1:0)}off(A,Q){if(this._emitter.removeListener(A,Q),this._finalListeners[A]===Q)delete this._finalListeners[A]}offAll(A){if(this._emitter.removeAllListeners(A),A)delete this._finalListeners[A];else this._finalListeners={}}on(A,Q){this._emitter.addListener(A,Q)}once(A,Q){this._emitter.once(A,Q)}}import TJB from"crypto";import z8 from"fs";import SJB from"os";import jJ from"path";function CY(A){if(typeof A!=="object"||A===null)return!1;let Q=Object.getPrototypeOf(A);return(Q===null||Q===Object.prototype||Object.getPrototypeOf(Q)===null)&&!(Symbol.toStringTag in A)&&!(Symbol.iterator in A)}import{fileURLToPath as w_Q}from"node:url";var M4=(A,Q)=>{let B=Dv(j_Q(A));if(typeof B!=="string")throw TypeError(`${Q} must be a string or a file URL: ${B}.`);return B},j_Q=(A)=>Hv(A)?A.toString():A,Hv=(A)=>typeof A!=="string"&&A&&Object.getPrototypeOf(A)===String.prototype,Dv=(A)=>A instanceof URL?w_Q(A):A;var Vz=(A,Q=[],B={})=>{let Y=M4(A,"First argument"),[J,C]=CY(Q)?[[],Q]:[Q,B];if(!Array.isArray(J))throw TypeError(`Second argument must be either an array of arguments or an options object: ${J}`);if(J.some((W)=>typeof W==="object"&&W!==null))throw TypeError(`Second argument must be an array of strings: ${J}`);let X=J.map(String),G=X.find((W)=>W.includes("\x00"));if(G!==void 0)throw TypeError(`Arguments cannot contain null bytes ("\\0"): ${G}`);if(!CY(C))throw TypeError(`Last argument must be an options object: ${C}`);return[Y,X,C]};import{ChildProcess as v_Q}from"node:child_process";import{StringDecoder as O_Q}from"node:string_decoder";var{toString:Me}=Object.prototype,ze=(A)=>Me.call(A)==="[object ArrayBuffer]",TY=(A)=>Me.call(A)==="[object Uint8Array]",rX=(A)=>new Uint8Array(A.buffer,A.byteOffset,A.byteLength),P_Q=new TextEncoder,Re=(A)=>P_Q.encode(A),T_Q=new TextDecoder,Iz=(A)=>T_Q.decode(A),we=(A,Q)=>{return S_Q(A,Q).join("")},S_Q=(A,Q)=>{if(Q==="utf8"&&A.every((C)=>typeof C==="string"))return A;let B=new O_Q(Q),Y=A.map((C)=>typeof C==="string"?Re(C):C).map((C)=>B.write(C)),J=B.end();return J===""?Y:[...Y,J]},GI=(A)=>{if(A.length===1&&TY(A[0]))return A[0];return Nv(k_Q(A))},k_Q=(A)=>A.map((Q)=>typeof Q==="string"?Re(Q):Q),Nv=(A)=>{let Q=new Uint8Array(__Q(A)),B=0;for(let Y of A)Q.set(Y,B),B+=Y.length;return Q},__Q=(A)=>{let Q=0;for(let B of A)Q+=B.length;return Q};var Te=(A)=>Array.isArray(A)&&Array.isArray(A.raw),Se=(A,Q)=>{let B=[];for(let[C,X]of A.entries())B=y_Q({templates:A,expressions:Q,tokens:B,index:C,template:X});if(B.length===0)throw TypeError("Template script must not be empty");let[Y,...J]=B;return[Y,J,{}]},y_Q=({templates:A,expressions:Q,tokens:B,index:Y,template:J})=>{if(J===void 0)throw TypeError(`Invalid backslash sequence: ${A.raw[Y]}`);let{nextTokens:C,leadingWhitespaces:X,trailingWhitespaces:G}=g_Q(J,A.raw[Y]),W=Oe(B,C,X);if(Y===Q.length)return W;let F=Q[Y],Z=Array.isArray(F)?F.map((U)=>Pe(U)):[Pe(F)];return Oe(W,Z,G)},g_Q=(A,Q)=>{if(Q.length===0)return{nextTokens:[],leadingWhitespaces:!1,trailingWhitespaces:!1};let B=[],Y=0,J=je.has(Q[0]);for(let X=0,G=0;X{if(process.env.NODE_ENV==="production")return null;let A="@hytopia.com/assets";try{return cX.dirname(u.resolve(A))}catch{return null}})();syncAsset(A){if(!PY.assetsLibraryPath)return l.warning("AssetsLibrary.syncAsset(): Assets library is not available.");try{let Q=cX.relative(PY.assetsLibraryPath,A),B=cX.join("assets",Q);if(!dX.existsSync(A))return;if(dX.existsSync(B))return;let Y=Q.match(/^(.+?)\/\.optimized\/([^/]+)\//);if(Y){let[,J,C]=Y,X=cX.join(PY.assetsLibraryPath,J,".optimized",C),G=cX.join("assets",J,".optimized",C);dX.cpSync(X,G,{recursive:!0,force:!1}),[".gltf",".glb"].forEach((W)=>{let F=cX.join(PY.assetsLibraryPath,J,`${C}${W}`),Z=cX.join("assets",J,`${C}${W}`);if(dX.existsSync(F)&&!dX.existsSync(Z))dX.mkdirSync(cX.dirname(Z),{recursive:!0}),dX.copyFileSync(F,Z)}),console.log(`AssetsLibrary.syncAsset(): Copied model from asset library to local assets: ${J}/${C}`)}else dX.mkdirSync(cX.dirname(B),{recursive:!0}),dX.copyFileSync(A,B),console.log(`AssetsLibrary.syncAsset(): Copied asset from asset library to local assets: ${Q}`)}catch(Q){l.warning(`AssetsLibrary.syncAsset(): Failed to copy asset "${A}" to local assets: ${Q}`)}}}var O,VB=Array(128).fill(void 0);function $B(A){return VB[A]}VB.push(void 0,null,!0,!1);var sV=VB.length;function pB(A){sV===VB.length&&VB.push(VB.length+1);let Q=sV;return sV=VB[Q],VB[Q]=A,Q}function kM(A,Q){try{return A.apply(this,Q)}catch(B){O.__wbindgen_export_0(pB(B))}}var Xe=typeof TextDecoder<"u"?new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0}):{decode:()=>{throw Error("TextDecoder not available")}};typeof TextDecoder<"u"&&Xe.decode();var cV=null;function L_(A,Q){return A>>>=0,Xe.decode((cV!==null&&cV.byteLength!==0||(cV=new Uint8Array(O.memory.buffer)),cV).subarray(A,A+Q))}function VQ(A){return A==null}var zF=null;function NY(){return(zF===null||zF.buffer.detached===!0||zF.buffer.detached===void 0&&zF.buffer!==O.memory.buffer)&&(zF=new DataView(O.memory.buffer)),zF}function rV(A){let Q=$B(A);return function(B){B<132||(VB[B]=sV,sV=B)}(A),Q}function c(A,Q){if(!(A instanceof Q))throw Error(`expected instance of ${Q.name}`)}var iB=128;function Z0(A){if(iB==1)throw Error("out of js stack");return VB[--iB]=A,iB}var lV=null;function H_Q(A,Q){return A>>>=0,(lV!==null&&lV.byteLength!==0||(lV=new Int32Array(O.memory.buffer)),lV).subarray(A/4,A/4+Q)}var pV=null;function Ge(){return pV!==null&&pV.byteLength!==0||(pV=new Float32Array(O.memory.buffer)),pV}function yt(A,Q){return A>>>=0,Ge().subarray(A/4,A/4+Q)}var iV=null;function We(){return iV!==null&&iV.byteLength!==0||(iV=new Uint32Array(O.memory.buffer)),iV}var lJ=0;function dV(A,Q){let B=Q(4*A.length,4)>>>0;return We().set(A,B/4),lJ=A.length,B}function nG(A,Q){let B=Q(4*A.length,4)>>>0;return Ge().set(A,B/4),lJ=A.length,B}Object.freeze({Vertex:0,0:"Vertex",Edge:1,1:"Edge",Face:2,2:"Face",Unknown:3,3:"Unknown"});var cM=Object.freeze({LinX:0,0:"LinX",LinY:1,1:"LinY",LinZ:2,2:"LinZ",AngX:3,3:"AngX",AngY:4,4:"AngY",AngZ:5,5:"AngZ"}),DC=Object.freeze({Revolute:0,0:"Revolute",Fixed:1,1:"Fixed",Prismatic:2,2:"Prismatic",Rope:3,3:"Rope",Spring:4,4:"Spring",Spherical:5,5:"Spherical",Generic:6,6:"Generic"});Object.freeze({AccelerationBased:0,0:"AccelerationBased",ForceBased:1,1:"ForceBased"}),Object.freeze({Dynamic:0,0:"Dynamic",Fixed:1,1:"Fixed",KinematicPositionBased:2,2:"KinematicPositionBased",KinematicVelocityBased:3,3:"KinematicVelocityBased"});var mY=Object.freeze({Ball:0,0:"Ball",Cuboid:1,1:"Cuboid",Capsule:2,2:"Capsule",Segment:3,3:"Segment",Polyline:4,4:"Polyline",Triangle:5,5:"Triangle",TriMesh:6,6:"TriMesh",HeightField:7,7:"HeightField",Compound:8,8:"Compound",ConvexPolyhedron:9,9:"ConvexPolyhedron",Cylinder:10,10:"Cylinder",Cone:11,11:"Cone",RoundCuboid:12,12:"RoundCuboid",RoundTriangle:13,13:"RoundTriangle",RoundCylinder:14,14:"RoundCylinder",RoundCone:15,15:"RoundCone",RoundConvexPolyhedron:16,16:"RoundConvexPolyhedron",HalfSpace:17,17:"HalfSpace",Voxels:18,18:"Voxels"}),Z_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawbroadphase_free(A>>>0,1));class pX{static __wrap(A){A>>>=0;let Q=Object.create(pX.prototype);return Q.__wbg_ptr=A,Z_.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Z_.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawbroadphase_free(A,0)}constructor(){let A=O.rawbroadphase_new();return this.__wbg_ptr=A>>>0,Z_.register(this,this.__wbg_ptr,this),this}castRay(A,Q,B,Y,J,C,X,G,W,F,Z,U){try{c(A,LY),c(Q,C0),c(B,T0),c(Y,r),c(J,r);let $=O.rawbroadphase_castRay(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C,X,G,VQ(W)?4294967297:W>>>0,!VQ(F),VQ(F)?0:F,!VQ(Z),VQ(Z)?0:Z,Z0(U));return $===0?void 0:h_.__wrap($)}finally{VB[iB++]=void 0}}castRayAndGetNormal(A,Q,B,Y,J,C,X,G,W,F,Z,U){try{c(A,LY),c(Q,C0),c(B,T0),c(Y,r),c(J,r);let $=O.rawbroadphase_castRayAndGetNormal(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C,X,G,VQ(W)?4294967297:W>>>0,!VQ(F),VQ(F)?0:F,!VQ(Z),VQ(Z)?0:Z,Z0(U));return $===0?void 0:iM.__wrap($)}finally{VB[iB++]=void 0}}intersectionsWithRay(A,Q,B,Y,J,C,X,G,W,F,Z,U,$){try{c(A,LY),c(Q,C0),c(B,T0),c(Y,r),c(J,r),O.rawbroadphase_intersectionsWithRay(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C,X,Z0(G),W,VQ(F)?4294967297:F>>>0,!VQ(Z),VQ(Z)?0:Z,!VQ(U),VQ(U)?0:U,Z0($))}finally{VB[iB++]=void 0,VB[iB++]=void 0}}intersectionWithShape(A,Q,B,Y,J,C,X,G,W,F,Z){try{let E=O.__wbindgen_add_to_stack_pointer(-16);c(A,LY),c(Q,C0),c(B,T0),c(Y,r),c(J,AB),c(C,UQ),O.rawbroadphase_intersectionWithShape(E,this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C.__wbg_ptr,X,VQ(G)?4294967297:G>>>0,!VQ(W),VQ(W)?0:W,!VQ(F),VQ(F)?0:F,Z0(Z));var U=NY().getInt32(E+0,!0),$=NY().getFloat64(E+8,!0);return U===0?void 0:$}finally{O.__wbindgen_add_to_stack_pointer(16),VB[iB++]=void 0}}projectPoint(A,Q,B,Y,J,C,X,G,W,F){try{c(A,LY),c(Q,C0),c(B,T0),c(Y,r);let Z=O.rawbroadphase_projectPoint(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J,C,VQ(X)?4294967297:X>>>0,!VQ(G),VQ(G)?0:G,!VQ(W),VQ(W)?0:W,Z0(F));return Z===0?void 0:vM.__wrap(Z)}finally{VB[iB++]=void 0}}projectPointAndGetFeature(A,Q,B,Y,J,C,X,G,W){try{c(A,LY),c(Q,C0),c(B,T0),c(Y,r);let F=O.rawbroadphase_projectPointAndGetFeature(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J,VQ(C)?4294967297:C>>>0,!VQ(X),VQ(X)?0:X,!VQ(G),VQ(G)?0:G,Z0(W));return F===0?void 0:vM.__wrap(F)}finally{VB[iB++]=void 0}}intersectionsWithPoint(A,Q,B,Y,J,C,X,G,W,F){try{c(A,LY),c(Q,C0),c(B,T0),c(Y,r),O.rawbroadphase_intersectionsWithPoint(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,Z0(J),C,VQ(X)?4294967297:X>>>0,!VQ(G),VQ(G)?0:G,!VQ(W),VQ(W)?0:W,Z0(F))}finally{VB[iB++]=void 0,VB[iB++]=void 0}}castShape(A,Q,B,Y,J,C,X,G,W,F,Z,U,$,E,K){try{c(A,LY),c(Q,C0),c(B,T0),c(Y,r),c(J,AB),c(C,r),c(X,UQ);let I=O.rawbroadphase_castShape(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C.__wbg_ptr,X.__wbg_ptr,G,W,F,Z,VQ(U)?4294967297:U>>>0,!VQ($),VQ($)?0:$,!VQ(E),VQ(E)?0:E,Z0(K));return I===0?void 0:lM.__wrap(I)}finally{VB[iB++]=void 0}}intersectionsWithShape(A,Q,B,Y,J,C,X,G,W,F,Z,U){try{c(A,LY),c(Q,C0),c(B,T0),c(Y,r),c(J,AB),c(C,UQ),O.rawbroadphase_intersectionsWithShape(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C.__wbg_ptr,Z0(X),G,VQ(W)?4294967297:W>>>0,!VQ(F),VQ(F)?0:F,!VQ(Z),VQ(Z)?0:Z,Z0(U))}finally{VB[iB++]=void 0,VB[iB++]=void 0}}collidersWithAabbIntersectingAabb(A,Q,B,Y,J,C){try{c(A,LY),c(Q,C0),c(B,T0),c(Y,r),c(J,r),O.rawbroadphase_collidersWithAabbIntersectingAabb(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,Z0(C))}finally{VB[iB++]=void 0}}}var gt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawccdsolver_free(A>>>0,1));class _M{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,gt.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawccdsolver_free(A,0)}constructor(){let A=O.rawccdsolver_new();return this.__wbg_ptr=A>>>0,gt.register(this,this.__wbg_ptr,this),this}}var ht=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawcharactercollision_free(A>>>0,1));class S_{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,ht.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawcharactercollision_free(A,0)}constructor(){let A=O.rawcharactercollision_new();return this.__wbg_ptr=A>>>0,ht.register(this,this.__wbg_ptr,this),this}handle(){return O.rawcharactercollision_handle(this.__wbg_ptr)}translationDeltaApplied(){let A=O.rawcharactercollision_translationDeltaApplied(this.__wbg_ptr);return r.__wrap(A)}translationDeltaRemaining(){let A=O.rawcharactercollision_translationDeltaRemaining(this.__wbg_ptr);return r.__wrap(A)}toi(){return O.rawcharactercollision_toi(this.__wbg_ptr)}worldWitness1(){let A=O.rawcharactercollision_worldWitness1(this.__wbg_ptr);return r.__wrap(A)}worldWitness2(){let A=O.rawcharactercollision_worldWitness2(this.__wbg_ptr);return r.__wrap(A)}worldNormal1(){let A=O.rawcharactercollision_worldNormal1(this.__wbg_ptr);return r.__wrap(A)}worldNormal2(){let A=O.rawcharactercollision_worldNormal2(this.__wbg_ptr);return r.__wrap(A)}}var $_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawcolliderset_free(A>>>0,1));class T0{static __wrap(A){A>>>=0;let Q=Object.create(T0.prototype);return Q.__wbg_ptr=A,$_.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,$_.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawcolliderset_free(A,0)}coTranslation(A){let Q=O.rawcolliderset_coTranslation(this.__wbg_ptr,A);return r.__wrap(Q)}coRotation(A){let Q=O.rawcolliderset_coRotation(this.__wbg_ptr,A);return AB.__wrap(Q)}coTranslationWrtParent(A){let Q=O.rawcolliderset_coTranslationWrtParent(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}coRotationWrtParent(A){let Q=O.rawcolliderset_coRotationWrtParent(this.__wbg_ptr,A);return Q===0?void 0:AB.__wrap(Q)}coSetTranslation(A,Q,B,Y){O.rawcolliderset_coSetTranslation(this.__wbg_ptr,A,Q,B,Y)}coSetTranslationWrtParent(A,Q,B,Y){O.rawcolliderset_coSetTranslationWrtParent(this.__wbg_ptr,A,Q,B,Y)}coSetRotation(A,Q,B,Y,J){O.rawcolliderset_coSetRotation(this.__wbg_ptr,A,Q,B,Y,J)}coSetRotationWrtParent(A,Q,B,Y,J){O.rawcolliderset_coSetRotationWrtParent(this.__wbg_ptr,A,Q,B,Y,J)}coIsSensor(A){return O.rawcolliderset_coIsSensor(this.__wbg_ptr,A)!==0}coShapeType(A){return O.rawcolliderset_coShapeType(this.__wbg_ptr,A)}coHalfspaceNormal(A){let Q=O.rawcolliderset_coHalfspaceNormal(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}coHalfExtents(A){let Q=O.rawcolliderset_coHalfExtents(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}coSetHalfExtents(A,Q){c(Q,r),O.rawcolliderset_coSetHalfExtents(this.__wbg_ptr,A,Q.__wbg_ptr)}coRadius(A){let Q=O.rawcolliderset_coRadius(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}coSetRadius(A,Q){O.rawcolliderset_coSetRadius(this.__wbg_ptr,A,Q)}coHalfHeight(A){let Q=O.rawcolliderset_coHalfHeight(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}coSetHalfHeight(A,Q){O.rawcolliderset_coSetHalfHeight(this.__wbg_ptr,A,Q)}coRoundRadius(A){let Q=O.rawcolliderset_coRoundRadius(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}coSetRoundRadius(A,Q){O.rawcolliderset_coSetRoundRadius(this.__wbg_ptr,A,Q)}coVoxelData(A){try{let Y=O.__wbindgen_add_to_stack_pointer(-16);O.rawcolliderset_coVoxelData(Y,this.__wbg_ptr,A);var Q=NY().getInt32(Y+0,!0),B=NY().getInt32(Y+4,!0);let J;return Q!==0&&(J=H_Q(Q,B).slice(),O.__wbindgen_export_1(Q,4*B,4)),J}finally{O.__wbindgen_add_to_stack_pointer(16)}}coVoxelSize(A){let Q=O.rawcolliderset_coVoxelSize(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}coSetVoxel(A,Q,B,Y,J){O.rawcolliderset_coSetVoxel(this.__wbg_ptr,A,Q,B,Y,J)}coPropagateVoxelChange(A,Q,B,Y,J,C,X,G){O.rawcolliderset_coPropagateVoxelChange(this.__wbg_ptr,A,Q,B,Y,J,C,X,G)}coCombineVoxelStates(A,Q,B,Y,J){O.rawcolliderset_coCombineVoxelStates(this.__wbg_ptr,A,Q,B,Y,J)}coVertices(A){try{let Y=O.__wbindgen_add_to_stack_pointer(-16);O.rawcolliderset_coVertices(Y,this.__wbg_ptr,A);var Q=NY().getInt32(Y+0,!0),B=NY().getInt32(Y+4,!0);let J;return Q!==0&&(J=yt(Q,B).slice(),O.__wbindgen_export_1(Q,4*B,4)),J}finally{O.__wbindgen_add_to_stack_pointer(16)}}coIndices(A){try{let Y=O.__wbindgen_add_to_stack_pointer(-16);O.rawcolliderset_coIndices(Y,this.__wbg_ptr,A);var Q=NY().getInt32(Y+0,!0),B=NY().getInt32(Y+4,!0);let J;return Q!==0&&(J=function(C,X){return C>>>=0,We().subarray(C/4,C/4+X)}(Q,B).slice(),O.__wbindgen_export_1(Q,4*B,4)),J}finally{O.__wbindgen_add_to_stack_pointer(16)}}coTriMeshFlags(A){let Q=O.rawcolliderset_coTriMeshFlags(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}coHeightFieldFlags(A){let Q=O.rawcolliderset_coHeightFieldFlags(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}coHeightfieldHeights(A){try{let Y=O.__wbindgen_add_to_stack_pointer(-16);O.rawcolliderset_coHeightfieldHeights(Y,this.__wbg_ptr,A);var Q=NY().getInt32(Y+0,!0),B=NY().getInt32(Y+4,!0);let J;return Q!==0&&(J=yt(Q,B).slice(),O.__wbindgen_export_1(Q,4*B,4)),J}finally{O.__wbindgen_add_to_stack_pointer(16)}}coHeightfieldScale(A){let Q=O.rawcolliderset_coHeightfieldScale(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}coHeightfieldNRows(A){let Q=O.rawcolliderset_coHeightfieldNRows(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}coHeightfieldNCols(A){let Q=O.rawcolliderset_coHeightfieldNCols(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}coParent(A){try{let Y=O.__wbindgen_add_to_stack_pointer(-16);O.rawcolliderset_coParent(Y,this.__wbg_ptr,A);var Q=NY().getInt32(Y+0,!0),B=NY().getFloat64(Y+8,!0);return Q===0?void 0:B}finally{O.__wbindgen_add_to_stack_pointer(16)}}coSetEnabled(A,Q){O.rawcolliderset_coSetEnabled(this.__wbg_ptr,A,Q)}coIsEnabled(A){return O.rawcolliderset_coIsEnabled(this.__wbg_ptr,A)!==0}coSetContactSkin(A,Q){O.rawcolliderset_coSetContactSkin(this.__wbg_ptr,A,Q)}coContactSkin(A){return O.rawcolliderset_coContactSkin(this.__wbg_ptr,A)}coFriction(A){return O.rawcolliderset_coFriction(this.__wbg_ptr,A)}coRestitution(A){return O.rawcolliderset_coRestitution(this.__wbg_ptr,A)}coDensity(A){return O.rawcolliderset_coDensity(this.__wbg_ptr,A)}coMass(A){return O.rawcolliderset_coMass(this.__wbg_ptr,A)}coVolume(A){return O.rawcolliderset_coVolume(this.__wbg_ptr,A)}coCollisionGroups(A){return O.rawcolliderset_coCollisionGroups(this.__wbg_ptr,A)>>>0}coSolverGroups(A){return O.rawcolliderset_coSolverGroups(this.__wbg_ptr,A)>>>0}coActiveHooks(A){return O.rawcolliderset_coActiveHooks(this.__wbg_ptr,A)>>>0}coActiveCollisionTypes(A){return O.rawcolliderset_coActiveCollisionTypes(this.__wbg_ptr,A)}coActiveEvents(A){return O.rawcolliderset_coActiveEvents(this.__wbg_ptr,A)>>>0}coContactForceEventThreshold(A){return O.rawcolliderset_coContactForceEventThreshold(this.__wbg_ptr,A)}coContainsPoint(A,Q){return c(Q,r),O.rawcolliderset_coContainsPoint(this.__wbg_ptr,A,Q.__wbg_ptr)!==0}coCastShape(A,Q,B,Y,J,C,X,G,W){c(Q,r),c(B,UQ),c(Y,r),c(J,AB),c(C,r);let F=O.rawcolliderset_coCastShape(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C.__wbg_ptr,X,G,W);return F===0?void 0:sM.__wrap(F)}coCastCollider(A,Q,B,Y,J,C,X){c(Q,r),c(Y,r);let G=O.rawcolliderset_coCastCollider(this.__wbg_ptr,A,Q.__wbg_ptr,B,Y.__wbg_ptr,J,C,X);return G===0?void 0:lM.__wrap(G)}coIntersectsShape(A,Q,B,Y){return c(Q,UQ),c(B,r),c(Y,AB),O.rawcolliderset_coIntersectsShape(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr)!==0}coContactShape(A,Q,B,Y,J){c(Q,UQ),c(B,r),c(Y,AB);let C=O.rawcolliderset_coContactShape(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J);return C===0?void 0:aV.__wrap(C)}coContactCollider(A,Q,B){let Y=O.rawcolliderset_coContactCollider(this.__wbg_ptr,A,Q,B);return Y===0?void 0:aV.__wrap(Y)}coProjectPoint(A,Q,B){c(Q,r);let Y=O.rawcolliderset_coProjectPoint(this.__wbg_ptr,A,Q.__wbg_ptr,B);return pM.__wrap(Y)}coIntersectsRay(A,Q,B,Y){return c(Q,r),c(B,r),O.rawcolliderset_coIntersectsRay(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y)!==0}coCastRay(A,Q,B,Y,J){return c(Q,r),c(B,r),O.rawcolliderset_coCastRay(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y,J)}coCastRayAndGetNormal(A,Q,B,Y,J){c(Q,r),c(B,r);let C=O.rawcolliderset_coCastRayAndGetNormal(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y,J);return C===0?void 0:nM.__wrap(C)}coSetSensor(A,Q){O.rawcolliderset_coSetSensor(this.__wbg_ptr,A,Q)}coSetRestitution(A,Q){O.rawcolliderset_coSetRestitution(this.__wbg_ptr,A,Q)}coSetFriction(A,Q){O.rawcolliderset_coSetFriction(this.__wbg_ptr,A,Q)}coFrictionCombineRule(A){return O.rawcolliderset_coFrictionCombineRule(this.__wbg_ptr,A)>>>0}coSetFrictionCombineRule(A,Q){O.rawcolliderset_coSetFrictionCombineRule(this.__wbg_ptr,A,Q)}coRestitutionCombineRule(A){return O.rawcolliderset_coRestitutionCombineRule(this.__wbg_ptr,A)>>>0}coSetRestitutionCombineRule(A,Q){O.rawcolliderset_coSetRestitutionCombineRule(this.__wbg_ptr,A,Q)}coSetCollisionGroups(A,Q){O.rawcolliderset_coSetCollisionGroups(this.__wbg_ptr,A,Q)}coSetSolverGroups(A,Q){O.rawcolliderset_coSetSolverGroups(this.__wbg_ptr,A,Q)}coSetActiveHooks(A,Q){O.rawcolliderset_coSetActiveHooks(this.__wbg_ptr,A,Q)}coSetActiveEvents(A,Q){O.rawcolliderset_coSetActiveEvents(this.__wbg_ptr,A,Q)}coSetActiveCollisionTypes(A,Q){O.rawcolliderset_coSetActiveCollisionTypes(this.__wbg_ptr,A,Q)}coSetShape(A,Q){c(Q,UQ),O.rawcolliderset_coSetShape(this.__wbg_ptr,A,Q.__wbg_ptr)}coSetContactForceEventThreshold(A,Q){O.rawcolliderset_coSetContactForceEventThreshold(this.__wbg_ptr,A,Q)}coSetDensity(A,Q){O.rawcolliderset_coSetDensity(this.__wbg_ptr,A,Q)}coSetMass(A,Q){O.rawcolliderset_coSetMass(this.__wbg_ptr,A,Q)}coSetMassProperties(A,Q,B,Y,J){c(B,r),c(Y,r),c(J,AB),O.rawcolliderset_coSetMassProperties(this.__wbg_ptr,A,Q,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr)}constructor(){let A=O.rawcolliderset_new();return this.__wbg_ptr=A>>>0,$_.register(this,this.__wbg_ptr,this),this}len(){return O.rawcolliderset_len(this.__wbg_ptr)>>>0}contains(A){return O.rawcolliderset_contains(this.__wbg_ptr,A)!==0}createCollider(A,Q,B,Y,J,C,X,G,W,F,Z,U,$,E,K,I,V,H,D,L,z,M,N,q,w){try{let j=O.__wbindgen_add_to_stack_pointer(-16);c(Q,UQ),c(B,r),c(Y,AB),c(X,r),c(G,r),c(W,AB),c(w,C0),O.rawcolliderset_createCollider(j,this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J,C,X.__wbg_ptr,G.__wbg_ptr,W.__wbg_ptr,F,Z,U,$,E,K,I,V,H,D,L,z,M,N,q,w.__wbg_ptr);var P=NY().getInt32(j+0,!0),_=NY().getFloat64(j+8,!0);return P===0?void 0:_}finally{O.__wbindgen_add_to_stack_pointer(16)}}remove(A,Q,B,Y){c(Q,nX),c(B,C0),O.rawcolliderset_remove(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y)}isHandleValid(A){return O.rawcolliderset_contains(this.__wbg_ptr,A)!==0}forEachColliderHandle(A){try{O.rawcolliderset_forEachColliderHandle(this.__wbg_ptr,Z0(A))}finally{VB[iB++]=void 0}}}var xt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawcollidershapecasthit_free(A>>>0,1));class lM{static __wrap(A){A>>>=0;let Q=Object.create(lM.prototype);return Q.__wbg_ptr=A,xt.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,xt.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawcollidershapecasthit_free(A,0)}colliderHandle(){return O.rawcharactercollision_handle(this.__wbg_ptr)}time_of_impact(){return O.rawcollidershapecasthit_time_of_impact(this.__wbg_ptr)}witness1(){let A=O.rawcollidershapecasthit_witness1(this.__wbg_ptr);return r.__wrap(A)}witness2(){let A=O.rawcollidershapecasthit_witness2(this.__wbg_ptr);return r.__wrap(A)}normal1(){let A=O.rawcharactercollision_translationDeltaApplied(this.__wbg_ptr);return r.__wrap(A)}normal2(){let A=O.rawcharactercollision_translationDeltaRemaining(this.__wbg_ptr);return r.__wrap(A)}}var ft=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawcontactforceevent_free(A>>>0,1));class k_{static __wrap(A){A>>>=0;let Q=Object.create(k_.prototype);return Q.__wbg_ptr=A,ft.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,ft.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawcontactforceevent_free(A,0)}collider1(){return O.rawcharactercollision_handle(this.__wbg_ptr)}collider2(){return O.rawcontactforceevent_collider2(this.__wbg_ptr)}total_force(){let A=O.rawcontactforceevent_total_force(this.__wbg_ptr);return r.__wrap(A)}total_force_magnitude(){return O.rawcontactforceevent_total_force_magnitude(this.__wbg_ptr)}max_force_direction(){let A=O.rawcontactforceevent_max_force_direction(this.__wbg_ptr);return r.__wrap(A)}max_force_magnitude(){return O.rawcontactforceevent_max_force_magnitude(this.__wbg_ptr)}}var bt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawcontactmanifold_free(A>>>0,1));class __{static __wrap(A){A>>>=0;let Q=Object.create(__.prototype);return Q.__wbg_ptr=A,bt.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,bt.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawcontactmanifold_free(A,0)}normal(){let A=O.rawcontactmanifold_normal(this.__wbg_ptr);return r.__wrap(A)}local_n1(){let A=O.rawcontactmanifold_local_n1(this.__wbg_ptr);return r.__wrap(A)}local_n2(){let A=O.rawcontactmanifold_local_n2(this.__wbg_ptr);return r.__wrap(A)}subshape1(){return O.rawcontactmanifold_subshape1(this.__wbg_ptr)>>>0}subshape2(){return O.rawcontactmanifold_subshape2(this.__wbg_ptr)>>>0}num_contacts(){return O.rawcontactmanifold_num_contacts(this.__wbg_ptr)>>>0}contact_local_p1(A){let Q=O.rawcontactmanifold_contact_local_p1(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}contact_local_p2(A){let Q=O.rawcontactmanifold_contact_local_p2(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}contact_dist(A){return O.rawcontactmanifold_contact_dist(this.__wbg_ptr,A)}contact_fid1(A){return O.rawcontactmanifold_contact_fid1(this.__wbg_ptr,A)>>>0}contact_fid2(A){return O.rawcontactmanifold_contact_fid2(this.__wbg_ptr,A)>>>0}contact_impulse(A){return O.rawcontactmanifold_contact_impulse(this.__wbg_ptr,A)}contact_tangent_impulse_x(A){return O.rawcontactmanifold_contact_tangent_impulse_x(this.__wbg_ptr,A)}contact_tangent_impulse_y(A){return O.rawcontactmanifold_contact_tangent_impulse_y(this.__wbg_ptr,A)}num_solver_contacts(){return O.rawcontactmanifold_num_solver_contacts(this.__wbg_ptr)>>>0}solver_contact_point(A){let Q=O.rawcontactmanifold_solver_contact_point(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}solver_contact_dist(A){return O.rawcontactmanifold_solver_contact_dist(this.__wbg_ptr,A)}solver_contact_friction(A){return O.rawcontactmanifold_solver_contact_friction(this.__wbg_ptr,A)}solver_contact_restitution(A){return O.rawcontactmanifold_solver_contact_restitution(this.__wbg_ptr,A)}solver_contact_tangent_velocity(A){let Q=O.rawcontactmanifold_solver_contact_tangent_velocity(this.__wbg_ptr,A);return r.__wrap(Q)}}var mt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawcontactpair_free(A>>>0,1));class v_{static __wrap(A){A>>>=0;let Q=Object.create(v_.prototype);return Q.__wbg_ptr=A,mt.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,mt.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawcontactpair_free(A,0)}collider1(){return O.rawcontactpair_collider1(this.__wbg_ptr)}collider2(){return O.rawcontactpair_collider2(this.__wbg_ptr)}numContactManifolds(){return O.rawcontactpair_numContactManifolds(this.__wbg_ptr)>>>0}contactManifold(A){let Q=O.rawcontactpair_contactManifold(this.__wbg_ptr,A);return Q===0?void 0:__.__wrap(Q)}}var ut=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawdebugrenderpipeline_free(A>>>0,1));class Fe{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,ut.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawdebugrenderpipeline_free(A,0)}constructor(){let A=O.rawdebugrenderpipeline_new();return this.__wbg_ptr=A>>>0,ut.register(this,this.__wbg_ptr,this),this}vertices(){return rV(O.rawdebugrenderpipeline_vertices(this.__wbg_ptr))}colors(){return rV(O.rawdebugrenderpipeline_colors(this.__wbg_ptr))}render(A,Q,B,Y,J,C,X){try{c(A,C0),c(Q,T0),c(B,iX),c(Y,sX),c(J,LY),O.rawdebugrenderpipeline_render(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C,Z0(X))}finally{VB[iB++]=void 0}}}var dt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawdeserializedworld_free(A>>>0,1));class y_{static __wrap(A){A>>>=0;let Q=Object.create(y_.prototype);return Q.__wbg_ptr=A,dt.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,dt.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawdeserializedworld_free(A,0)}takeGravity(){let A=O.rawdeserializedworld_takeGravity(this.__wbg_ptr);return A===0?void 0:r.__wrap(A)}takeIntegrationParameters(){let A=O.rawdeserializedworld_takeIntegrationParameters(this.__wbg_ptr);return A===0?void 0:wF.__wrap(A)}takeIslandManager(){let A=O.rawdeserializedworld_takeIslandManager(this.__wbg_ptr);return A===0?void 0:nX.__wrap(A)}takeBroadPhase(){let A=O.rawdeserializedworld_takeBroadPhase(this.__wbg_ptr);return A===0?void 0:pX.__wrap(A)}takeNarrowPhase(){let A=O.rawdeserializedworld_takeNarrowPhase(this.__wbg_ptr);return A===0?void 0:LY.__wrap(A)}takeBodies(){let A=O.rawdeserializedworld_takeBodies(this.__wbg_ptr);return A===0?void 0:C0.__wrap(A)}takeColliders(){let A=O.rawdeserializedworld_takeColliders(this.__wbg_ptr);return A===0?void 0:T0.__wrap(A)}takeImpulseJoints(){let A=O.rawdeserializedworld_takeImpulseJoints(this.__wbg_ptr);return A===0?void 0:iX.__wrap(A)}takeMultibodyJoints(){let A=O.rawdeserializedworld_takeMultibodyJoints(this.__wbg_ptr);return A===0?void 0:sX.__wrap(A)}}var ct=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawdynamicraycastvehiclecontroller_free(A>>>0,1));class Ze{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,ct.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawdynamicraycastvehiclecontroller_free(A,0)}constructor(A){let Q=O.rawdynamicraycastvehiclecontroller_new(A);return this.__wbg_ptr=Q>>>0,ct.register(this,this.__wbg_ptr,this),this}current_vehicle_speed(){return O.rawdynamicraycastvehiclecontroller_current_vehicle_speed(this.__wbg_ptr)}chassis(){return O.rawdynamicraycastvehiclecontroller_chassis(this.__wbg_ptr)}index_up_axis(){return O.rawdynamicraycastvehiclecontroller_index_up_axis(this.__wbg_ptr)>>>0}set_index_up_axis(A){O.rawdynamicraycastvehiclecontroller_set_index_up_axis(this.__wbg_ptr,A)}index_forward_axis(){return O.rawdynamicraycastvehiclecontroller_index_forward_axis(this.__wbg_ptr)>>>0}set_index_forward_axis(A){O.rawdynamicraycastvehiclecontroller_set_index_forward_axis(this.__wbg_ptr,A)}add_wheel(A,Q,B,Y,J){c(A,r),c(Q,r),c(B,r),O.rawdynamicraycastvehiclecontroller_add_wheel(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y,J)}num_wheels(){return O.rawdynamicraycastvehiclecontroller_num_wheels(this.__wbg_ptr)>>>0}update_vehicle(A,Q,B,Y,J,C,X,G){try{c(Q,pX),c(B,LY),c(Y,C0),c(J,T0),O.rawdynamicraycastvehiclecontroller_update_vehicle(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C,VQ(X)?4294967297:X>>>0,Z0(G))}finally{VB[iB++]=void 0}}wheel_chassis_connection_point_cs(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_chassis_connection_point_cs(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}set_wheel_chassis_connection_point_cs(A,Q){c(Q,r),O.rawdynamicraycastvehiclecontroller_set_wheel_chassis_connection_point_cs(this.__wbg_ptr,A,Q.__wbg_ptr)}wheel_suspension_rest_length(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_suspension_rest_length(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_suspension_rest_length(A,Q){O.rawdynamicraycastvehiclecontroller_set_wheel_suspension_rest_length(this.__wbg_ptr,A,Q)}wheel_max_suspension_travel(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_max_suspension_travel(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_max_suspension_travel(A,Q){O.rawdynamicraycastvehiclecontroller_set_wheel_max_suspension_travel(this.__wbg_ptr,A,Q)}wheel_radius(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_radius(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_radius(A,Q){O.rawdynamicraycastvehiclecontroller_set_wheel_radius(this.__wbg_ptr,A,Q)}wheel_suspension_stiffness(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_suspension_stiffness(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_suspension_stiffness(A,Q){O.rawdynamicraycastvehiclecontroller_set_wheel_suspension_stiffness(this.__wbg_ptr,A,Q)}wheel_suspension_compression(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_suspension_compression(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_suspension_compression(A,Q){O.rawdynamicraycastvehiclecontroller_set_wheel_suspension_compression(this.__wbg_ptr,A,Q)}wheel_suspension_relaxation(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_suspension_relaxation(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_suspension_relaxation(A,Q){O.rawdynamicraycastvehiclecontroller_set_wheel_suspension_relaxation(this.__wbg_ptr,A,Q)}wheel_max_suspension_force(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_max_suspension_force(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_max_suspension_force(A,Q){O.rawdynamicraycastvehiclecontroller_set_wheel_max_suspension_force(this.__wbg_ptr,A,Q)}wheel_brake(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_brake(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_brake(A,Q){O.rawdynamicraycastvehiclecontroller_set_wheel_brake(this.__wbg_ptr,A,Q)}wheel_steering(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_steering(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_steering(A,Q){O.rawdynamicraycastvehiclecontroller_set_wheel_steering(this.__wbg_ptr,A,Q)}wheel_engine_force(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_engine_force(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_engine_force(A,Q){O.rawdynamicraycastvehiclecontroller_set_wheel_engine_force(this.__wbg_ptr,A,Q)}wheel_direction_cs(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_direction_cs(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}set_wheel_direction_cs(A,Q){c(Q,r),O.rawdynamicraycastvehiclecontroller_set_wheel_direction_cs(this.__wbg_ptr,A,Q.__wbg_ptr)}wheel_axle_cs(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_axle_cs(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}set_wheel_axle_cs(A,Q){c(Q,r),O.rawdynamicraycastvehiclecontroller_set_wheel_axle_cs(this.__wbg_ptr,A,Q.__wbg_ptr)}wheel_friction_slip(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_friction_slip(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_friction_slip(A,Q){O.rawdynamicraycastvehiclecontroller_set_wheel_friction_slip(this.__wbg_ptr,A,Q)}wheel_side_friction_stiffness(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_side_friction_stiffness(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}set_wheel_side_friction_stiffness(A,Q){O.rawdynamicraycastvehiclecontroller_set_wheel_side_friction_stiffness(this.__wbg_ptr,A,Q)}wheel_rotation(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_rotation(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}wheel_forward_impulse(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_forward_impulse(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}wheel_side_impulse(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_side_impulse(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}wheel_suspension_force(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_suspension_force(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}wheel_contact_normal_ws(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_contact_normal_ws(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}wheel_contact_point_ws(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_contact_point_ws(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}wheel_suspension_length(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_suspension_length(this.__wbg_ptr,A);return Q===4294967297?void 0:Q}wheel_hard_point_ws(A){let Q=O.rawdynamicraycastvehiclecontroller_wheel_hard_point_ws(this.__wbg_ptr,A);return Q===0?void 0:r.__wrap(Q)}wheel_is_in_contact(A){return O.rawdynamicraycastvehiclecontroller_wheel_is_in_contact(this.__wbg_ptr,A)!==0}wheel_ground_object(A){try{let Y=O.__wbindgen_add_to_stack_pointer(-16);O.rawdynamicraycastvehiclecontroller_wheel_ground_object(Y,this.__wbg_ptr,A);var Q=NY().getInt32(Y+0,!0),B=NY().getFloat64(Y+8,!0);return Q===0?void 0:B}finally{O.__wbindgen_add_to_stack_pointer(16)}}}var lt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_raweventqueue_free(A>>>0,1));class g_{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,lt.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_raweventqueue_free(A,0)}constructor(A){let Q=O.raweventqueue_new(A);return this.__wbg_ptr=Q>>>0,lt.register(this,this.__wbg_ptr,this),this}drainCollisionEvents(A){try{O.raweventqueue_drainCollisionEvents(this.__wbg_ptr,Z0(A))}finally{VB[iB++]=void 0}}drainContactForceEvents(A){try{O.raweventqueue_drainContactForceEvents(this.__wbg_ptr,Z0(A))}finally{VB[iB++]=void 0}}clear(){O.raweventqueue_clear(this.__wbg_ptr)}}var pt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawgenericjoint_free(A>>>0,1));class uY{static __wrap(A){A>>>=0;let Q=Object.create(uY.prototype);return Q.__wbg_ptr=A,pt.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,pt.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawgenericjoint_free(A,0)}static generic(A,Q,B,Y){c(A,r),c(Q,r),c(B,r);let J=O.rawgenericjoint_generic(A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y);return J===0?void 0:uY.__wrap(J)}static spring(A,Q,B,Y,J){c(Y,r),c(J,r);let C=O.rawgenericjoint_spring(A,Q,B,Y.__wbg_ptr,J.__wbg_ptr);return uY.__wrap(C)}static rope(A,Q,B){c(Q,r),c(B,r);let Y=O.rawgenericjoint_rope(A,Q.__wbg_ptr,B.__wbg_ptr);return uY.__wrap(Y)}static spherical(A,Q){c(A,r),c(Q,r);let B=O.rawgenericjoint_spherical(A.__wbg_ptr,Q.__wbg_ptr);return uY.__wrap(B)}static prismatic(A,Q,B,Y,J,C){c(A,r),c(Q,r),c(B,r);let X=O.rawgenericjoint_prismatic(A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y,J,C);return X===0?void 0:uY.__wrap(X)}static fixed(A,Q,B,Y){c(A,r),c(Q,AB),c(B,r),c(Y,AB);let J=O.rawgenericjoint_fixed(A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr);return uY.__wrap(J)}static revolute(A,Q,B){c(A,r),c(Q,r),c(B,r);let Y=O.rawgenericjoint_revolute(A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr);return Y===0?void 0:uY.__wrap(Y)}}var U_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawimpulsejointset_free(A>>>0,1));class iX{static __wrap(A){A>>>=0;let Q=Object.create(iX.prototype);return Q.__wbg_ptr=A,U_.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,U_.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawimpulsejointset_free(A,0)}jointType(A){return O.rawimpulsejointset_jointType(this.__wbg_ptr,A)}jointBodyHandle1(A){return O.rawimpulsejointset_jointBodyHandle1(this.__wbg_ptr,A)}jointBodyHandle2(A){return O.rawimpulsejointset_jointBodyHandle2(this.__wbg_ptr,A)}jointFrameX1(A){let Q=O.rawimpulsejointset_jointFrameX1(this.__wbg_ptr,A);return AB.__wrap(Q)}jointFrameX2(A){let Q=O.rawimpulsejointset_jointFrameX2(this.__wbg_ptr,A);return AB.__wrap(Q)}jointAnchor1(A){let Q=O.rawimpulsejointset_jointAnchor1(this.__wbg_ptr,A);return r.__wrap(Q)}jointAnchor2(A){let Q=O.rawimpulsejointset_jointAnchor2(this.__wbg_ptr,A);return r.__wrap(Q)}jointSetAnchor1(A,Q){c(Q,r),O.rawimpulsejointset_jointSetAnchor1(this.__wbg_ptr,A,Q.__wbg_ptr)}jointSetAnchor2(A,Q){c(Q,r),O.rawimpulsejointset_jointSetAnchor2(this.__wbg_ptr,A,Q.__wbg_ptr)}jointContactsEnabled(A){return O.rawimpulsejointset_jointContactsEnabled(this.__wbg_ptr,A)!==0}jointSetContactsEnabled(A,Q){O.rawimpulsejointset_jointSetContactsEnabled(this.__wbg_ptr,A,Q)}jointLimitsEnabled(A,Q){return O.rawimpulsejointset_jointLimitsEnabled(this.__wbg_ptr,A,Q)!==0}jointLimitsMin(A,Q){return O.rawimpulsejointset_jointLimitsMin(this.__wbg_ptr,A,Q)}jointLimitsMax(A,Q){return O.rawimpulsejointset_jointLimitsMax(this.__wbg_ptr,A,Q)}jointSetLimits(A,Q,B,Y){O.rawimpulsejointset_jointSetLimits(this.__wbg_ptr,A,Q,B,Y)}jointConfigureMotorModel(A,Q,B){O.rawimpulsejointset_jointConfigureMotorModel(this.__wbg_ptr,A,Q,B)}jointConfigureMotorVelocity(A,Q,B,Y){O.rawimpulsejointset_jointConfigureMotorVelocity(this.__wbg_ptr,A,Q,B,Y)}jointConfigureMotorPosition(A,Q,B,Y,J){O.rawimpulsejointset_jointConfigureMotorPosition(this.__wbg_ptr,A,Q,B,Y,J)}jointConfigureMotor(A,Q,B,Y,J,C){O.rawimpulsejointset_jointConfigureMotor(this.__wbg_ptr,A,Q,B,Y,J,C)}constructor(){let A=O.rawimpulsejointset_new();return this.__wbg_ptr=A>>>0,U_.register(this,this.__wbg_ptr,this),this}createJoint(A,Q,B,Y){return c(A,uY),O.rawimpulsejointset_createJoint(this.__wbg_ptr,A.__wbg_ptr,Q,B,Y)}remove(A,Q){O.rawimpulsejointset_remove(this.__wbg_ptr,A,Q)}len(){return O.rawimpulsejointset_len(this.__wbg_ptr)>>>0}contains(A){return O.rawimpulsejointset_contains(this.__wbg_ptr,A)!==0}forEachJointHandle(A){try{O.rawimpulsejointset_forEachJointHandle(this.__wbg_ptr,Z0(A))}finally{VB[iB++]=void 0}}forEachJointAttachedToRigidBody(A,Q){try{O.rawimpulsejointset_forEachJointAttachedToRigidBody(this.__wbg_ptr,A,Z0(Q))}finally{VB[iB++]=void 0}}}var E_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawintegrationparameters_free(A>>>0,1));class wF{static __wrap(A){A>>>=0;let Q=Object.create(wF.prototype);return Q.__wbg_ptr=A,E_.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,E_.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawintegrationparameters_free(A,0)}constructor(){let A=O.rawintegrationparameters_new();return this.__wbg_ptr=A>>>0,E_.register(this,this.__wbg_ptr,this),this}get dt(){return O.rawintegrationparameters_dt(this.__wbg_ptr)}get contact_erp(){return O.rawintegrationparameters_contact_erp(this.__wbg_ptr)}get normalizedAllowedLinearError(){return O.rawintegrationparameters_normalizedAllowedLinearError(this.__wbg_ptr)}get normalizedPredictionDistance(){return O.rawintegrationparameters_normalizedPredictionDistance(this.__wbg_ptr)}get numSolverIterations(){return O.rawintegrationparameters_numSolverIterations(this.__wbg_ptr)>>>0}get numInternalPgsIterations(){return O.rawdynamicraycastvehiclecontroller_index_up_axis(this.__wbg_ptr)>>>0}get minIslandSize(){return O.rawintegrationparameters_minIslandSize(this.__wbg_ptr)>>>0}get maxCcdSubsteps(){return O.rawintegrationparameters_maxCcdSubsteps(this.__wbg_ptr)>>>0}get lengthUnit(){return O.rawcontactforceevent_total_force_magnitude(this.__wbg_ptr)}set dt(A){O.rawintegrationparameters_set_dt(this.__wbg_ptr,A)}set contact_natural_frequency(A){O.rawintegrationparameters_set_contact_natural_frequency(this.__wbg_ptr,A)}set normalizedAllowedLinearError(A){O.rawintegrationparameters_set_normalizedAllowedLinearError(this.__wbg_ptr,A)}set normalizedPredictionDistance(A){O.rawintegrationparameters_set_normalizedPredictionDistance(this.__wbg_ptr,A)}set numSolverIterations(A){O.rawintegrationparameters_set_numSolverIterations(this.__wbg_ptr,A)}set numInternalPgsIterations(A){O.rawdynamicraycastvehiclecontroller_set_index_up_axis(this.__wbg_ptr,A)}set minIslandSize(A){O.rawintegrationparameters_set_minIslandSize(this.__wbg_ptr,A)}set maxCcdSubsteps(A){O.rawintegrationparameters_set_maxCcdSubsteps(this.__wbg_ptr,A)}set lengthUnit(A){O.rawintegrationparameters_set_lengthUnit(this.__wbg_ptr,A)}}var K_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawislandmanager_free(A>>>0,1));class nX{static __wrap(A){A>>>=0;let Q=Object.create(nX.prototype);return Q.__wbg_ptr=A,K_.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,K_.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawislandmanager_free(A,0)}constructor(){let A=O.rawislandmanager_new();return this.__wbg_ptr=A>>>0,K_.register(this,this.__wbg_ptr,this),this}forEachActiveRigidBodyHandle(A){try{O.rawislandmanager_forEachActiveRigidBodyHandle(this.__wbg_ptr,Z0(A))}finally{VB[iB++]=void 0}}}var it=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawkinematiccharactercontroller_free(A>>>0,1));class $e{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,it.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawkinematiccharactercontroller_free(A,0)}constructor(A){let Q=O.rawkinematiccharactercontroller_new(A);return this.__wbg_ptr=Q>>>0,it.register(this,this.__wbg_ptr,this),this}up(){let A=O.rawcharactercollision_translationDeltaApplied(this.__wbg_ptr);return r.__wrap(A)}setUp(A){c(A,r),O.rawkinematiccharactercontroller_setUp(this.__wbg_ptr,A.__wbg_ptr)}normalNudgeFactor(){return O.rawkinematiccharactercontroller_normalNudgeFactor(this.__wbg_ptr)}setNormalNudgeFactor(A){O.rawkinematiccharactercontroller_setNormalNudgeFactor(this.__wbg_ptr,A)}offset(){return O.rawkinematiccharactercontroller_offset(this.__wbg_ptr)}setOffset(A){O.rawkinematiccharactercontroller_setOffset(this.__wbg_ptr,A)}slideEnabled(){return O.rawkinematiccharactercontroller_slideEnabled(this.__wbg_ptr)!==0}setSlideEnabled(A){O.rawkinematiccharactercontroller_setSlideEnabled(this.__wbg_ptr,A)}autostepMaxHeight(){let A=O.rawkinematiccharactercontroller_autostepMaxHeight(this.__wbg_ptr);return A===4294967297?void 0:A}autostepMinWidth(){let A=O.rawkinematiccharactercontroller_autostepMinWidth(this.__wbg_ptr);return A===4294967297?void 0:A}autostepIncludesDynamicBodies(){let A=O.rawkinematiccharactercontroller_autostepIncludesDynamicBodies(this.__wbg_ptr);return A===16777215?void 0:A!==0}autostepEnabled(){return O.rawkinematiccharactercontroller_autostepEnabled(this.__wbg_ptr)!==0}enableAutostep(A,Q,B){O.rawkinematiccharactercontroller_enableAutostep(this.__wbg_ptr,A,Q,B)}disableAutostep(){O.rawkinematiccharactercontroller_disableAutostep(this.__wbg_ptr)}maxSlopeClimbAngle(){return O.rawkinematiccharactercontroller_maxSlopeClimbAngle(this.__wbg_ptr)}setMaxSlopeClimbAngle(A){O.rawkinematiccharactercontroller_setMaxSlopeClimbAngle(this.__wbg_ptr,A)}minSlopeSlideAngle(){return O.rawkinematiccharactercontroller_minSlopeSlideAngle(this.__wbg_ptr)}setMinSlopeSlideAngle(A){O.rawkinematiccharactercontroller_setMinSlopeSlideAngle(this.__wbg_ptr,A)}snapToGroundDistance(){let A=O.rawkinematiccharactercontroller_snapToGroundDistance(this.__wbg_ptr);return A===4294967297?void 0:A}enableSnapToGround(A){O.rawkinematiccharactercontroller_enableSnapToGround(this.__wbg_ptr,A)}disableSnapToGround(){O.rawkinematiccharactercontroller_disableSnapToGround(this.__wbg_ptr)}snapToGroundEnabled(){return O.rawkinematiccharactercontroller_snapToGroundEnabled(this.__wbg_ptr)!==0}computeColliderMovement(A,Q,B,Y,J,C,X,G,W,F,Z,U){try{c(Q,pX),c(B,LY),c(Y,C0),c(J,T0),c(X,r),O.rawkinematiccharactercontroller_computeColliderMovement(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C,X.__wbg_ptr,G,VQ(W)?4294967297:Math.fround(W),F,VQ(Z)?4294967297:Z>>>0,Z0(U))}finally{VB[iB++]=void 0}}computedMovement(){let A=O.rawkinematiccharactercontroller_computedMovement(this.__wbg_ptr);return r.__wrap(A)}computedGrounded(){return O.rawkinematiccharactercontroller_computedGrounded(this.__wbg_ptr)!==0}numComputedCollisions(){return O.rawkinematiccharactercontroller_numComputedCollisions(this.__wbg_ptr)>>>0}computedCollision(A,Q){return c(Q,S_),O.rawkinematiccharactercontroller_computedCollision(this.__wbg_ptr,A,Q.__wbg_ptr)!==0}}var V_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawmultibodyjointset_free(A>>>0,1));class sX{static __wrap(A){A>>>=0;let Q=Object.create(sX.prototype);return Q.__wbg_ptr=A,V_.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,V_.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawmultibodyjointset_free(A,0)}jointType(A){return O.rawmultibodyjointset_jointType(this.__wbg_ptr,A)}jointFrameX1(A){let Q=O.rawmultibodyjointset_jointFrameX1(this.__wbg_ptr,A);return AB.__wrap(Q)}jointFrameX2(A){let Q=O.rawmultibodyjointset_jointFrameX2(this.__wbg_ptr,A);return AB.__wrap(Q)}jointAnchor1(A){let Q=O.rawmultibodyjointset_jointAnchor1(this.__wbg_ptr,A);return r.__wrap(Q)}jointAnchor2(A){let Q=O.rawmultibodyjointset_jointAnchor2(this.__wbg_ptr,A);return r.__wrap(Q)}jointContactsEnabled(A){return O.rawmultibodyjointset_jointContactsEnabled(this.__wbg_ptr,A)!==0}jointSetContactsEnabled(A,Q){O.rawmultibodyjointset_jointSetContactsEnabled(this.__wbg_ptr,A,Q)}jointLimitsEnabled(A,Q){return O.rawmultibodyjointset_jointLimitsEnabled(this.__wbg_ptr,A,Q)!==0}jointLimitsMin(A,Q){return O.rawmultibodyjointset_jointLimitsMin(this.__wbg_ptr,A,Q)}jointLimitsMax(A,Q){return O.rawmultibodyjointset_jointLimitsMax(this.__wbg_ptr,A,Q)}constructor(){let A=O.rawmultibodyjointset_new();return this.__wbg_ptr=A>>>0,V_.register(this,this.__wbg_ptr,this),this}createJoint(A,Q,B,Y){return c(A,uY),O.rawmultibodyjointset_createJoint(this.__wbg_ptr,A.__wbg_ptr,Q,B,Y)}remove(A,Q){O.rawmultibodyjointset_remove(this.__wbg_ptr,A,Q)}contains(A){return O.rawmultibodyjointset_contains(this.__wbg_ptr,A)!==0}forEachJointHandle(A){try{O.rawmultibodyjointset_forEachJointHandle(this.__wbg_ptr,Z0(A))}finally{VB[iB++]=void 0}}forEachJointAttachedToRigidBody(A,Q){try{O.rawmultibodyjointset_forEachJointAttachedToRigidBody(this.__wbg_ptr,A,Z0(Q))}finally{VB[iB++]=void 0}}}var I_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawnarrowphase_free(A>>>0,1));class LY{static __wrap(A){A>>>=0;let Q=Object.create(LY.prototype);return Q.__wbg_ptr=A,I_.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,I_.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawnarrowphase_free(A,0)}constructor(){let A=O.rawnarrowphase_new();return this.__wbg_ptr=A>>>0,I_.register(this,this.__wbg_ptr,this),this}contact_pairs_with(A,Q){O.rawnarrowphase_contact_pairs_with(this.__wbg_ptr,A,pB(Q))}contact_pair(A,Q){let B=O.rawnarrowphase_contact_pair(this.__wbg_ptr,A,Q);return B===0?void 0:v_.__wrap(B)}intersection_pairs_with(A,Q){O.rawnarrowphase_intersection_pairs_with(this.__wbg_ptr,A,pB(Q))}intersection_pair(A,Q){return O.rawnarrowphase_intersection_pair(this.__wbg_ptr,A,Q)!==0}}var nt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawphysicspipeline_free(A>>>0,1));class Ue{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,nt.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawphysicspipeline_free(A,0)}constructor(){let A=O.rawphysicspipeline_new();return this.__wbg_ptr=A>>>0,nt.register(this,this.__wbg_ptr,this),this}set_profiler_enabled(A){O.rawphysicspipeline_set_profiler_enabled(this.__wbg_ptr,A)}is_profiler_enabled(){return O.rawphysicspipeline_is_profiler_enabled(this.__wbg_ptr)!==0}timing_step(){return O.rawphysicspipeline_timing_step(this.__wbg_ptr)}timing_collision_detection(){return O.rawphysicspipeline_timing_collision_detection(this.__wbg_ptr)}timing_broad_phase(){return O.rawphysicspipeline_timing_broad_phase(this.__wbg_ptr)}timing_narrow_phase(){return O.rawphysicspipeline_timing_narrow_phase(this.__wbg_ptr)}timing_solver(){return O.rawphysicspipeline_timing_solver(this.__wbg_ptr)}timing_velocity_assembly(){return O.rawphysicspipeline_timing_velocity_assembly(this.__wbg_ptr)}timing_velocity_resolution(){return O.rawphysicspipeline_timing_velocity_resolution(this.__wbg_ptr)}timing_velocity_update(){return O.rawphysicspipeline_timing_velocity_update(this.__wbg_ptr)}timing_velocity_writeback(){return O.rawphysicspipeline_timing_velocity_writeback(this.__wbg_ptr)}timing_ccd(){return O.rawphysicspipeline_timing_ccd(this.__wbg_ptr)}timing_ccd_toi_computation(){return O.rawphysicspipeline_timing_ccd_toi_computation(this.__wbg_ptr)}timing_ccd_broad_phase(){return O.rawphysicspipeline_timing_ccd_broad_phase(this.__wbg_ptr)}timing_ccd_narrow_phase(){return O.rawphysicspipeline_timing_ccd_narrow_phase(this.__wbg_ptr)}timing_ccd_solver(){return O.rawphysicspipeline_timing_ccd_solver(this.__wbg_ptr)}timing_island_construction(){return O.rawphysicspipeline_timing_island_construction(this.__wbg_ptr)}timing_user_changes(){return O.rawphysicspipeline_timing_user_changes(this.__wbg_ptr)}step(A,Q,B,Y,J,C,X,G,W,F){c(A,r),c(Q,wF),c(B,nX),c(Y,pX),c(J,LY),c(C,C0),c(X,T0),c(G,iX),c(W,sX),c(F,_M),O.rawphysicspipeline_step(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C.__wbg_ptr,X.__wbg_ptr,G.__wbg_ptr,W.__wbg_ptr,F.__wbg_ptr)}stepWithEvents(A,Q,B,Y,J,C,X,G,W,F,Z,U,$,E){c(A,r),c(Q,wF),c(B,nX),c(Y,pX),c(J,LY),c(C,C0),c(X,T0),c(G,iX),c(W,sX),c(F,_M),c(Z,g_),O.rawphysicspipeline_stepWithEvents(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C.__wbg_ptr,X.__wbg_ptr,G.__wbg_ptr,W.__wbg_ptr,F.__wbg_ptr,Z.__wbg_ptr,pB(U),pB($),pB(E))}}var st=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawpidcontroller_free(A>>>0,1));class Ee{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,st.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawpidcontroller_free(A,0)}constructor(A,Q,B,Y){let J=O.rawpidcontroller_new(A,Q,B,Y);return this.__wbg_ptr=J>>>0,st.register(this,this.__wbg_ptr,this),this}set_kp(A,Q){O.rawpidcontroller_set_kp(this.__wbg_ptr,A,Q)}set_ki(A,Q){O.rawpidcontroller_set_ki(this.__wbg_ptr,A,Q)}set_kd(A,Q){O.rawpidcontroller_set_kd(this.__wbg_ptr,A,Q)}set_axes_mask(A){O.rawpidcontroller_set_axes_mask(this.__wbg_ptr,A)}reset_integrals(){O.rawpidcontroller_reset_integrals(this.__wbg_ptr)}apply_linear_correction(A,Q,B,Y,J){c(Q,C0),c(Y,r),c(J,r),O.rawpidcontroller_apply_linear_correction(this.__wbg_ptr,A,Q.__wbg_ptr,B,Y.__wbg_ptr,J.__wbg_ptr)}apply_angular_correction(A,Q,B,Y,J){c(Q,C0),c(Y,AB),c(J,r),O.rawpidcontroller_apply_angular_correction(this.__wbg_ptr,A,Q.__wbg_ptr,B,Y.__wbg_ptr,J.__wbg_ptr)}linear_correction(A,Q,B,Y,J){c(Q,C0),c(Y,r),c(J,r);let C=O.rawpidcontroller_linear_correction(this.__wbg_ptr,A,Q.__wbg_ptr,B,Y.__wbg_ptr,J.__wbg_ptr);return r.__wrap(C)}angular_correction(A,Q,B,Y,J){c(Q,C0),c(Y,AB),c(J,r);let C=O.rawpidcontroller_angular_correction(this.__wbg_ptr,A,Q.__wbg_ptr,B,Y.__wbg_ptr,J.__wbg_ptr);return r.__wrap(C)}}var rt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawpointcolliderprojection_free(A>>>0,1));class vM{static __wrap(A){A>>>=0;let Q=Object.create(vM.prototype);return Q.__wbg_ptr=A,rt.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,rt.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawpointcolliderprojection_free(A,0)}colliderHandle(){return O.rawpointcolliderprojection_colliderHandle(this.__wbg_ptr)}point(){let A=O.rawpointcolliderprojection_point(this.__wbg_ptr);return r.__wrap(A)}isInside(){return O.rawpointcolliderprojection_isInside(this.__wbg_ptr)!==0}featureType(){return O.rawpointcolliderprojection_featureType(this.__wbg_ptr)}featureId(){let A=O.rawpointcolliderprojection_featureId(this.__wbg_ptr);return A===4294967297?void 0:A}}var at=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawpointprojection_free(A>>>0,1));class pM{static __wrap(A){A>>>=0;let Q=Object.create(pM.prototype);return Q.__wbg_ptr=A,at.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,at.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawpointprojection_free(A,0)}point(){let A=O.rawpointprojection_point(this.__wbg_ptr);return r.__wrap(A)}isInside(){return O.rawpointprojection_isInside(this.__wbg_ptr)!==0}}var ot=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawraycolliderhit_free(A>>>0,1));class h_{static __wrap(A){A>>>=0;let Q=Object.create(h_.prototype);return Q.__wbg_ptr=A,ot.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,ot.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawraycolliderhit_free(A,0)}colliderHandle(){return O.rawcharactercollision_handle(this.__wbg_ptr)}timeOfImpact(){return O.rawcollidershapecasthit_time_of_impact(this.__wbg_ptr)}}var tt=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawraycolliderintersection_free(A>>>0,1));class iM{static __wrap(A){A>>>=0;let Q=Object.create(iM.prototype);return Q.__wbg_ptr=A,tt.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,tt.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawraycolliderintersection_free(A,0)}colliderHandle(){return O.rawpointcolliderprojection_colliderHandle(this.__wbg_ptr)}normal(){let A=O.rawcollidershapecasthit_witness1(this.__wbg_ptr);return r.__wrap(A)}time_of_impact(){return O.rawcollidershapecasthit_time_of_impact(this.__wbg_ptr)}featureType(){return O.rawpointcolliderprojection_featureType(this.__wbg_ptr)}featureId(){let A=O.rawpointcolliderprojection_featureId(this.__wbg_ptr);return A===4294967297?void 0:A}}var et=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawrayintersection_free(A>>>0,1));class nM{static __wrap(A){A>>>=0;let Q=Object.create(nM.prototype);return Q.__wbg_ptr=A,et.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,et.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawrayintersection_free(A,0)}normal(){let A=O.rawcollidershapecasthit_witness1(this.__wbg_ptr);return r.__wrap(A)}time_of_impact(){return O.rawcollidershapecasthit_time_of_impact(this.__wbg_ptr)}featureType(){return O.rawpointcolliderprojection_featureType(this.__wbg_ptr)}featureId(){let A=O.rawpointcolliderprojection_featureId(this.__wbg_ptr);return A===4294967297?void 0:A}}var H_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawrigidbodyset_free(A>>>0,1));class C0{static __wrap(A){A>>>=0;let Q=Object.create(C0.prototype);return Q.__wbg_ptr=A,H_.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,H_.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawrigidbodyset_free(A,0)}rbTranslation(A){let Q=O.rawrigidbodyset_rbTranslation(this.__wbg_ptr,A);return r.__wrap(Q)}rbRotation(A){let Q=O.rawrigidbodyset_rbRotation(this.__wbg_ptr,A);return AB.__wrap(Q)}rbSleep(A){O.rawrigidbodyset_rbSleep(this.__wbg_ptr,A)}rbIsSleeping(A){return O.rawrigidbodyset_rbIsSleeping(this.__wbg_ptr,A)!==0}rbIsMoving(A){return O.rawrigidbodyset_rbIsMoving(this.__wbg_ptr,A)!==0}rbNextTranslation(A){let Q=O.rawrigidbodyset_rbNextTranslation(this.__wbg_ptr,A);return r.__wrap(Q)}rbNextRotation(A){let Q=O.rawrigidbodyset_rbNextRotation(this.__wbg_ptr,A);return AB.__wrap(Q)}rbSetTranslation(A,Q,B,Y,J){O.rawrigidbodyset_rbSetTranslation(this.__wbg_ptr,A,Q,B,Y,J)}rbSetRotation(A,Q,B,Y,J,C){O.rawrigidbodyset_rbSetRotation(this.__wbg_ptr,A,Q,B,Y,J,C)}rbSetLinvel(A,Q,B){c(Q,r),O.rawrigidbodyset_rbSetLinvel(this.__wbg_ptr,A,Q.__wbg_ptr,B)}rbSetAngvel(A,Q,B){c(Q,r),O.rawrigidbodyset_rbSetAngvel(this.__wbg_ptr,A,Q.__wbg_ptr,B)}rbSetNextKinematicTranslation(A,Q,B,Y){O.rawrigidbodyset_rbSetNextKinematicTranslation(this.__wbg_ptr,A,Q,B,Y)}rbSetNextKinematicRotation(A,Q,B,Y,J){O.rawrigidbodyset_rbSetNextKinematicRotation(this.__wbg_ptr,A,Q,B,Y,J)}rbRecomputeMassPropertiesFromColliders(A,Q){c(Q,T0),O.rawrigidbodyset_rbRecomputeMassPropertiesFromColliders(this.__wbg_ptr,A,Q.__wbg_ptr)}rbSetAdditionalMass(A,Q,B){O.rawrigidbodyset_rbSetAdditionalMass(this.__wbg_ptr,A,Q,B)}rbSetAdditionalMassProperties(A,Q,B,Y,J,C){c(B,r),c(Y,r),c(J,AB),O.rawrigidbodyset_rbSetAdditionalMassProperties(this.__wbg_ptr,A,Q,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C)}rbLinvel(A){let Q=O.rawrigidbodyset_rbLinvel(this.__wbg_ptr,A);return r.__wrap(Q)}rbAngvel(A){let Q=O.rawrigidbodyset_rbAngvel(this.__wbg_ptr,A);return r.__wrap(Q)}rbVelocityAtPoint(A,Q){c(Q,r);let B=O.rawrigidbodyset_rbVelocityAtPoint(this.__wbg_ptr,A,Q.__wbg_ptr);return r.__wrap(B)}rbLockTranslations(A,Q,B){O.rawrigidbodyset_rbLockTranslations(this.__wbg_ptr,A,Q,B)}rbSetEnabledTranslations(A,Q,B,Y,J){O.rawrigidbodyset_rbSetEnabledTranslations(this.__wbg_ptr,A,Q,B,Y,J)}rbLockRotations(A,Q,B){O.rawrigidbodyset_rbLockRotations(this.__wbg_ptr,A,Q,B)}rbSetEnabledRotations(A,Q,B,Y,J){O.rawrigidbodyset_rbSetEnabledRotations(this.__wbg_ptr,A,Q,B,Y,J)}rbDominanceGroup(A){return O.rawrigidbodyset_rbDominanceGroup(this.__wbg_ptr,A)}rbSetDominanceGroup(A,Q){O.rawrigidbodyset_rbSetDominanceGroup(this.__wbg_ptr,A,Q)}rbEnableCcd(A,Q){O.rawrigidbodyset_rbEnableCcd(this.__wbg_ptr,A,Q)}rbSetSoftCcdPrediction(A,Q){O.rawrigidbodyset_rbSetSoftCcdPrediction(this.__wbg_ptr,A,Q)}rbMass(A){return O.rawrigidbodyset_rbMass(this.__wbg_ptr,A)}rbInvMass(A){return O.rawrigidbodyset_rbInvMass(this.__wbg_ptr,A)}rbEffectiveInvMass(A){let Q=O.rawrigidbodyset_rbEffectiveInvMass(this.__wbg_ptr,A);return r.__wrap(Q)}rbLocalCom(A){let Q=O.rawrigidbodyset_rbLocalCom(this.__wbg_ptr,A);return r.__wrap(Q)}rbWorldCom(A){let Q=O.rawrigidbodyset_rbWorldCom(this.__wbg_ptr,A);return r.__wrap(Q)}rbInvPrincipalInertia(A){let Q=O.rawrigidbodyset_rbInvPrincipalInertia(this.__wbg_ptr,A);return r.__wrap(Q)}rbPrincipalInertiaLocalFrame(A){let Q=O.rawrigidbodyset_rbPrincipalInertiaLocalFrame(this.__wbg_ptr,A);return AB.__wrap(Q)}rbPrincipalInertia(A){let Q=O.rawrigidbodyset_rbPrincipalInertia(this.__wbg_ptr,A);return r.__wrap(Q)}rbEffectiveWorldInvInertia(A){let Q=O.rawrigidbodyset_rbEffectiveWorldInvInertia(this.__wbg_ptr,A);return yM.__wrap(Q)}rbEffectiveAngularInertia(A){let Q=O.rawrigidbodyset_rbEffectiveAngularInertia(this.__wbg_ptr,A);return yM.__wrap(Q)}rbWakeUp(A){O.rawrigidbodyset_rbWakeUp(this.__wbg_ptr,A)}rbIsCcdEnabled(A){return O.rawrigidbodyset_rbIsCcdEnabled(this.__wbg_ptr,A)!==0}rbSoftCcdPrediction(A){return O.rawrigidbodyset_rbSoftCcdPrediction(this.__wbg_ptr,A)}rbNumColliders(A){return O.rawrigidbodyset_rbNumColliders(this.__wbg_ptr,A)>>>0}rbCollider(A,Q){return O.rawrigidbodyset_rbCollider(this.__wbg_ptr,A,Q)}rbBodyType(A){return O.rawrigidbodyset_rbBodyType(this.__wbg_ptr,A)}rbSetBodyType(A,Q,B){O.rawrigidbodyset_rbSetBodyType(this.__wbg_ptr,A,Q,B)}rbIsFixed(A){return O.rawrigidbodyset_rbIsFixed(this.__wbg_ptr,A)!==0}rbIsKinematic(A){return O.rawrigidbodyset_rbIsKinematic(this.__wbg_ptr,A)!==0}rbIsDynamic(A){return O.rawrigidbodyset_rbIsDynamic(this.__wbg_ptr,A)!==0}rbLinearDamping(A){return O.rawrigidbodyset_rbLinearDamping(this.__wbg_ptr,A)}rbAngularDamping(A){return O.rawrigidbodyset_rbAngularDamping(this.__wbg_ptr,A)}rbSetLinearDamping(A,Q){O.rawrigidbodyset_rbSetLinearDamping(this.__wbg_ptr,A,Q)}rbSetAngularDamping(A,Q){O.rawrigidbodyset_rbSetAngularDamping(this.__wbg_ptr,A,Q)}rbSetEnabled(A,Q){O.rawrigidbodyset_rbSetEnabled(this.__wbg_ptr,A,Q)}rbIsEnabled(A){return O.rawrigidbodyset_rbIsEnabled(this.__wbg_ptr,A)!==0}rbGravityScale(A){return O.rawrigidbodyset_rbGravityScale(this.__wbg_ptr,A)}rbSetGravityScale(A,Q,B){O.rawrigidbodyset_rbSetGravityScale(this.__wbg_ptr,A,Q,B)}rbResetForces(A,Q){O.rawrigidbodyset_rbResetForces(this.__wbg_ptr,A,Q)}rbResetTorques(A,Q){O.rawrigidbodyset_rbResetTorques(this.__wbg_ptr,A,Q)}rbAddForce(A,Q,B){c(Q,r),O.rawrigidbodyset_rbAddForce(this.__wbg_ptr,A,Q.__wbg_ptr,B)}rbApplyImpulse(A,Q,B){c(Q,r),O.rawrigidbodyset_rbApplyImpulse(this.__wbg_ptr,A,Q.__wbg_ptr,B)}rbAddTorque(A,Q,B){c(Q,r),O.rawrigidbodyset_rbAddTorque(this.__wbg_ptr,A,Q.__wbg_ptr,B)}rbApplyTorqueImpulse(A,Q,B){c(Q,r),O.rawrigidbodyset_rbApplyTorqueImpulse(this.__wbg_ptr,A,Q.__wbg_ptr,B)}rbAddForceAtPoint(A,Q,B,Y){c(Q,r),c(B,r),O.rawrigidbodyset_rbAddForceAtPoint(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y)}rbApplyImpulseAtPoint(A,Q,B,Y){c(Q,r),c(B,r),O.rawrigidbodyset_rbApplyImpulseAtPoint(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y)}rbAdditionalSolverIterations(A){return O.rawrigidbodyset_rbAdditionalSolverIterations(this.__wbg_ptr,A)>>>0}rbSetAdditionalSolverIterations(A,Q){O.rawrigidbodyset_rbSetAdditionalSolverIterations(this.__wbg_ptr,A,Q)}rbUserData(A){return O.rawrigidbodyset_rbUserData(this.__wbg_ptr,A)>>>0}rbSetUserData(A,Q){O.rawrigidbodyset_rbSetUserData(this.__wbg_ptr,A,Q)}rbUserForce(A){let Q=O.rawrigidbodyset_rbUserForce(this.__wbg_ptr,A);return r.__wrap(Q)}rbUserTorque(A){let Q=O.rawrigidbodyset_rbUserTorque(this.__wbg_ptr,A);return r.__wrap(Q)}constructor(){let A=O.rawrigidbodyset_new();return this.__wbg_ptr=A>>>0,H_.register(this,this.__wbg_ptr,this),this}createRigidBody(A,Q,B,Y,J,C,X,G,W,F,Z,U,$,E,K,I,V,H,D,L,z,M,N,q,w,P){return c(Q,r),c(B,AB),c(X,r),c(G,r),c(W,r),c(F,r),c(Z,AB),O.rawrigidbodyset_createRigidBody(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y,J,C,X.__wbg_ptr,G.__wbg_ptr,W.__wbg_ptr,F.__wbg_ptr,Z.__wbg_ptr,U,$,E,K,I,V,H,D,L,z,M,N,q,w,P)}remove(A,Q,B,Y,J){c(Q,nX),c(B,T0),c(Y,iX),c(J,sX),O.rawrigidbodyset_remove(this.__wbg_ptr,A,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr)}len(){return O.rawrigidbodyset_len(this.__wbg_ptr)>>>0}contains(A){return O.rawrigidbodyset_contains(this.__wbg_ptr,A)!==0}forEachRigidBodyHandle(A){try{O.rawrigidbodyset_forEachRigidBodyHandle(this.__wbg_ptr,Z0(A))}finally{VB[iB++]=void 0}}propagateModifiedBodyPositionsToColliders(A){c(A,T0),O.rawrigidbodyset_propagateModifiedBodyPositionsToColliders(this.__wbg_ptr,A.__wbg_ptr)}}var D_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawrotation_free(A>>>0,1));class AB{static __wrap(A){A>>>=0;let Q=Object.create(AB.prototype);return Q.__wbg_ptr=A,D_.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,D_.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawrotation_free(A,0)}constructor(A,Q,B,Y){let J=O.rawrotation_new(A,Q,B,Y);return this.__wbg_ptr=J>>>0,D_.register(this,this.__wbg_ptr,this),this}static identity(){let A=O.rawrotation_identity();return AB.__wrap(A)}get x(){return O.rawintegrationparameters_dt(this.__wbg_ptr)}get y(){return O.rawkinematiccharactercontroller_offset(this.__wbg_ptr)}get z(){return O.rawcollidershapecasthit_time_of_impact(this.__wbg_ptr)}get w(){return O.rawrotation_w(this.__wbg_ptr)}}var Ae=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawsdpmatrix3_free(A>>>0,1));class yM{static __wrap(A){A>>>=0;let Q=Object.create(yM.prototype);return Q.__wbg_ptr=A,Ae.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Ae.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawsdpmatrix3_free(A,0)}elements(){return rV(O.rawsdpmatrix3_elements(this.__wbg_ptr))}}var Qe=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawserializationpipeline_free(A>>>0,1));class Ke{__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Qe.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawserializationpipeline_free(A,0)}constructor(){let A=O.rawccdsolver_new();return this.__wbg_ptr=A>>>0,Qe.register(this,this.__wbg_ptr,this),this}serializeAll(A,Q,B,Y,J,C,X,G,W){return c(A,r),c(Q,wF),c(B,nX),c(Y,pX),c(J,LY),c(C,C0),c(X,T0),c(G,iX),c(W,sX),rV(O.rawserializationpipeline_serializeAll(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C.__wbg_ptr,X.__wbg_ptr,G.__wbg_ptr,W.__wbg_ptr))}deserializeAll(A){let Q=O.rawserializationpipeline_deserializeAll(this.__wbg_ptr,pB(A));return Q===0?void 0:y_.__wrap(Q)}}var Be=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawshape_free(A>>>0,1));class UQ{static __wrap(A){A>>>=0;let Q=Object.create(UQ.prototype);return Q.__wbg_ptr=A,Be.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Be.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawshape_free(A,0)}static cuboid(A,Q,B){let Y=O.rawshape_cuboid(A,Q,B);return UQ.__wrap(Y)}static roundCuboid(A,Q,B,Y){let J=O.rawshape_roundCuboid(A,Q,B,Y);return UQ.__wrap(J)}static ball(A){let Q=O.rawshape_ball(A);return UQ.__wrap(Q)}static halfspace(A){c(A,r);let Q=O.rawshape_halfspace(A.__wbg_ptr);return UQ.__wrap(Q)}static capsule(A,Q){let B=O.rawshape_capsule(A,Q);return UQ.__wrap(B)}static cylinder(A,Q){let B=O.rawshape_cylinder(A,Q);return UQ.__wrap(B)}static roundCylinder(A,Q,B){let Y=O.rawshape_roundCylinder(A,Q,B);return UQ.__wrap(Y)}static cone(A,Q){let B=O.rawshape_cone(A,Q);return UQ.__wrap(B)}static roundCone(A,Q,B){let Y=O.rawshape_roundCone(A,Q,B);return UQ.__wrap(Y)}static voxels(A,Q){c(A,r);let B=dV(Q,O.__wbindgen_export_2),Y=lJ,J=O.rawshape_voxels(A.__wbg_ptr,B,Y);return UQ.__wrap(J)}static voxelsFromPoints(A,Q){c(A,r);let B=nG(Q,O.__wbindgen_export_2),Y=lJ,J=O.rawshape_voxelsFromPoints(A.__wbg_ptr,B,Y);return UQ.__wrap(J)}static polyline(A,Q){let B=nG(A,O.__wbindgen_export_2),Y=lJ,J=dV(Q,O.__wbindgen_export_2),C=lJ,X=O.rawshape_polyline(B,Y,J,C);return UQ.__wrap(X)}static trimesh(A,Q,B){let Y=nG(A,O.__wbindgen_export_2),J=lJ,C=dV(Q,O.__wbindgen_export_2),X=lJ,G=O.rawshape_trimesh(Y,J,C,X,B);return G===0?void 0:UQ.__wrap(G)}static heightfield(A,Q,B,Y,J){let C=nG(B,O.__wbindgen_export_2),X=lJ;c(Y,r);let G=O.rawshape_heightfield(A,Q,C,X,Y.__wbg_ptr,J);return UQ.__wrap(G)}static segment(A,Q){c(A,r),c(Q,r);let B=O.rawshape_segment(A.__wbg_ptr,Q.__wbg_ptr);return UQ.__wrap(B)}static triangle(A,Q,B){c(A,r),c(Q,r),c(B,r);let Y=O.rawshape_triangle(A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr);return UQ.__wrap(Y)}static roundTriangle(A,Q,B,Y){c(A,r),c(Q,r),c(B,r);let J=O.rawshape_roundTriangle(A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y);return UQ.__wrap(J)}static convexHull(A){let Q=nG(A,O.__wbindgen_export_2),B=lJ,Y=O.rawshape_convexHull(Q,B);return Y===0?void 0:UQ.__wrap(Y)}static roundConvexHull(A,Q){let B=nG(A,O.__wbindgen_export_2),Y=lJ,J=O.rawshape_roundConvexHull(B,Y,Q);return J===0?void 0:UQ.__wrap(J)}static convexMesh(A,Q){let B=nG(A,O.__wbindgen_export_2),Y=lJ,J=dV(Q,O.__wbindgen_export_2),C=lJ,X=O.rawshape_convexMesh(B,Y,J,C);return X===0?void 0:UQ.__wrap(X)}static roundConvexMesh(A,Q,B){let Y=nG(A,O.__wbindgen_export_2),J=lJ,C=dV(Q,O.__wbindgen_export_2),X=lJ,G=O.rawshape_roundConvexMesh(Y,J,C,X,B);return G===0?void 0:UQ.__wrap(G)}castShape(A,Q,B,Y,J,C,X,G,W,F){c(A,r),c(Q,AB),c(B,r),c(Y,UQ),c(J,r),c(C,AB),c(X,r);let Z=O.rawshape_castShape(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C.__wbg_ptr,X.__wbg_ptr,G,W,F);return Z===0?void 0:sM.__wrap(Z)}intersectsShape(A,Q,B,Y,J){return c(A,r),c(Q,AB),c(B,UQ),c(Y,r),c(J,AB),O.rawshape_intersectsShape(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr)!==0}contactShape(A,Q,B,Y,J,C){c(A,r),c(Q,AB),c(B,UQ),c(Y,r),c(J,AB);let X=O.rawshape_contactShape(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J.__wbg_ptr,C);return X===0?void 0:aV.__wrap(X)}containsPoint(A,Q,B){return c(A,r),c(Q,AB),c(B,r),O.rawshape_containsPoint(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr)!==0}projectPoint(A,Q,B,Y){c(A,r),c(Q,AB),c(B,r);let J=O.rawshape_projectPoint(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y);return pM.__wrap(J)}intersectsRay(A,Q,B,Y,J){return c(A,r),c(Q,AB),c(B,r),c(Y,r),O.rawshape_intersectsRay(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J)!==0}castRay(A,Q,B,Y,J,C){return c(A,r),c(Q,AB),c(B,r),c(Y,r),O.rawshape_castRay(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J,C)}castRayAndGetNormal(A,Q,B,Y,J,C){c(A,r),c(Q,AB),c(B,r),c(Y,r);let X=O.rawshape_castRayAndGetNormal(this.__wbg_ptr,A.__wbg_ptr,Q.__wbg_ptr,B.__wbg_ptr,Y.__wbg_ptr,J,C);return X===0?void 0:nM.__wrap(X)}}var Ye=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawshapecasthit_free(A>>>0,1));class sM{static __wrap(A){A>>>=0;let Q=Object.create(sM.prototype);return Q.__wbg_ptr=A,Ye.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Ye.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawshapecasthit_free(A,0)}time_of_impact(){return O.rawintegrationparameters_dt(this.__wbg_ptr)}witness1(){let A=O.rawshapecasthit_witness1(this.__wbg_ptr);return r.__wrap(A)}witness2(){let A=O.rawcontactforceevent_total_force(this.__wbg_ptr);return r.__wrap(A)}normal1(){let A=O.rawshapecasthit_normal1(this.__wbg_ptr);return r.__wrap(A)}normal2(){let A=O.rawshapecasthit_normal2(this.__wbg_ptr);return r.__wrap(A)}}var Je=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawshapecontact_free(A>>>0,1));class aV{static __wrap(A){A>>>=0;let Q=Object.create(aV.prototype);return Q.__wbg_ptr=A,Je.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,Je.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawshapecontact_free(A,0)}distance(){return O.rawkinematiccharactercontroller_maxSlopeClimbAngle(this.__wbg_ptr)}point1(){let A=O.rawpointprojection_point(this.__wbg_ptr);return r.__wrap(A)}point2(){let A=O.rawcollidershapecasthit_witness1(this.__wbg_ptr);return r.__wrap(A)}normal1(){let A=O.rawcollidershapecasthit_witness2(this.__wbg_ptr);return r.__wrap(A)}normal2(){let A=O.rawcharactercollision_translationDeltaApplied(this.__wbg_ptr);return r.__wrap(A)}}var N_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A)=>O.__wbg_rawvector_free(A>>>0,1));class r{static __wrap(A){A>>>=0;let Q=Object.create(r.prototype);return Q.__wbg_ptr=A,N_.register(Q,Q.__wbg_ptr,Q),Q}__destroy_into_raw(){let A=this.__wbg_ptr;return this.__wbg_ptr=0,N_.unregister(this),A}free(){let A=this.__destroy_into_raw();O.__wbg_rawvector_free(A,0)}static zero(){let A=O.rawvector_zero();return r.__wrap(A)}constructor(A,Q,B){let Y=O.rawvector_new(A,Q,B);return this.__wbg_ptr=Y>>>0,N_.register(this,this.__wbg_ptr,this),this}get x(){return O.rawintegrationparameters_dt(this.__wbg_ptr)}set x(A){O.rawintegrationparameters_set_dt(this.__wbg_ptr,A)}get y(){return O.rawkinematiccharactercontroller_offset(this.__wbg_ptr)}set y(A){O.rawvector_set_y(this.__wbg_ptr,A)}get z(){return O.rawcollidershapecasthit_time_of_impact(this.__wbg_ptr)}set z(A){O.rawvector_set_z(this.__wbg_ptr,A)}xyz(){let A=O.rawvector_xyz(this.__wbg_ptr);return r.__wrap(A)}yxz(){let A=O.rawvector_yxz(this.__wbg_ptr);return r.__wrap(A)}zxy(){let A=O.rawvector_zxy(this.__wbg_ptr);return r.__wrap(A)}xzy(){let A=O.rawvector_xzy(this.__wbg_ptr);return r.__wrap(A)}yzx(){let A=O.rawvector_yzx(this.__wbg_ptr);return r.__wrap(A)}zyx(){let A=O.rawvector_zyx(this.__wbg_ptr);return r.__wrap(A)}}async function Ve(A){if(O!==void 0)return O;A!==void 0&&(Object.getPrototypeOf(A)===Object.prototype?{module_or_path:A}=A:console.warn("using deprecated parameters for the initialization function; pass a single object instead")),A===void 0&&(A=new URL("rapier_wasm3d_bg.wasm",""));let Q=function(){let J={wbg:{}};return J.wbg.__wbg_bind_c8359b1cba058168=function(C,X,G,W){return pB($B(C).bind($B(X),$B(G),$B(W)))},J.wbg.__wbg_buffer_609cc3eee51ed158=function(C){return pB($B(C).buffer)},J.wbg.__wbg_call_672a4d21634d4a24=function(){return kM(function(C,X){return pB($B(C).call($B(X)))},arguments)},J.wbg.__wbg_call_7cccdd69e0791ae2=function(){return kM(function(C,X,G){return pB($B(C).call($B(X),$B(G)))},arguments)},J.wbg.__wbg_call_833bed5770ea2041=function(){return kM(function(C,X,G,W){return pB($B(C).call($B(X),$B(G),$B(W)))},arguments)},J.wbg.__wbg_call_b8adc8b1d0a0d8eb=function(){return kM(function(C,X,G,W,F){return pB($B(C).call($B(X),$B(G),$B(W),$B(F)))},arguments)},J.wbg.__wbg_length_3b4f022188ae8db6=function(C){return $B(C).length},J.wbg.__wbg_length_a446193dc22c12f8=function(C){return $B(C).length},J.wbg.__wbg_new_a12002a7f91c75be=function(C){return pB(new Uint8Array($B(C)))},J.wbg.__wbg_newnoargs_105ed471475aaf50=function(C,X){return pB(Function(L_(C,X)))},J.wbg.__wbg_newwithbyteoffsetandlength_d97e637ebe145a9a=function(C,X,G){return pB(new Uint8Array($B(C),X>>>0,G>>>0))},J.wbg.__wbg_newwithbyteoffsetandlength_e6b7e69acd4c7354=function(C,X,G){return pB(new Float32Array($B(C),X>>>0,G>>>0))},J.wbg.__wbg_newwithlength_5a5efe313cfd59f1=function(C){return pB(new Float32Array(C>>>0))},J.wbg.__wbg_now_2c95c9de01293173=function(C){return $B(C).now()},J.wbg.__wbg_performance_7a3ffd0b17f663ad=function(C){return pB($B(C).performance)},J.wbg.__wbg_rawcontactforceevent_new=function(C){return pB(k_.__wrap(C))},J.wbg.__wbg_rawraycolliderintersection_new=function(C){return pB(iM.__wrap(C))},J.wbg.__wbg_set_10bad9bee0e9c58b=function(C,X,G){$B(C).set($B(X),G>>>0)},J.wbg.__wbg_set_65595bdd868b3009=function(C,X,G){$B(C).set($B(X),G>>>0)},J.wbg.__wbg_static_accessor_GLOBAL_88a902d13a557d07=function(){let C=typeof global>"u"?null:global;return VQ(C)?0:pB(C)},J.wbg.__wbg_static_accessor_GLOBAL_THIS_56578be7e9f832b0=function(){let C=typeof globalThis>"u"?null:globalThis;return VQ(C)?0:pB(C)},J.wbg.__wbg_static_accessor_SELF_37c5d418e4bf5819=function(){let C=typeof self>"u"?null:self;return VQ(C)?0:pB(C)},J.wbg.__wbg_static_accessor_WINDOW_5de37043a91a9c40=function(){let C=typeof window>"u"?null:window;return VQ(C)?0:pB(C)},J.wbg.__wbindgen_boolean_get=function(C){let X=$B(C);return typeof X=="boolean"?X?1:0:2},J.wbg.__wbindgen_is_function=function(C){return typeof $B(C)=="function"},J.wbg.__wbindgen_is_undefined=function(C){return $B(C)===void 0},J.wbg.__wbindgen_memory=function(){return pB(O.memory)},J.wbg.__wbindgen_number_get=function(C,X){let G=$B(X),W=typeof G=="number"?G:void 0;NY().setFloat64(C+8,VQ(W)?0:W,!0),NY().setInt32(C+0,!VQ(W),!0)},J.wbg.__wbindgen_number_new=function(C){return pB(C)},J.wbg.__wbindgen_object_clone_ref=function(C){return pB($B(C))},J.wbg.__wbindgen_object_drop_ref=function(C){rV(C)},J.wbg.__wbindgen_throw=function(C,X){throw Error(L_(C,X))},J}();(typeof A=="string"||typeof Request=="function"&&A instanceof Request||typeof URL=="function"&&A instanceof URL)&&(A=fetch(A));let{instance:B,module:Y}=await async function(J,C){if(typeof Response=="function"&&J instanceof Response){if(typeof WebAssembly.instantiateStreaming=="function")try{return await WebAssembly.instantiateStreaming(J,C)}catch(G){if(J.headers.get("Content-Type")=="application/wasm")throw G;console.warn("`WebAssembly.instantiateStreaming` failed because your server does not serve Wasm with `application/wasm` MIME type. Falling back to `WebAssembly.instantiate` which is slower. Original error:\n",G)}let X=await J.arrayBuffer();return await WebAssembly.instantiate(X,C)}{let X=await WebAssembly.instantiate(J,C);return X instanceof WebAssembly.Instance?{instance:X,module:J}:X}}(await A,Q);return function(J,C){return O=J.exports,Ve.__wbindgen_wasm_module=C,zF=null,pV=null,lV=null,iV=null,cV=null,O}(B,Y)}class x_{constructor(A,Q,B){this.x=A,this.y=Q,this.z=B}}class a{static new(A,Q,B){return new x_(A,Q,B)}static intoRaw(A){return new r(A.x,A.y,A.z)}static zeros(){return a.new(0,0,0)}static fromRaw(A){if(!A)return null;let Q=a.new(A.x,A.y,A.z);return A.free(),Q}static copy(A,Q){A.x=Q.x,A.y=Q.y,A.z=Q.z}}class gM{constructor(A,Q,B,Y){this.x=A,this.y=Q,this.z=B,this.w=Y}}class hQ{static identity(){return new gM(0,0,0,1)}static fromRaw(A){if(!A)return null;let Q=new gM(A.x,A.y,A.z,A.w);return A.free(),Q}static intoRaw(A){return new AB(A.x,A.y,A.z,A.w)}static copy(A,Q){A.x=Q.x,A.y=Q.y,A.z=Q.z,A.w=Q.w}}class f_{constructor(A){this.elements=A}get m11(){return this.elements[0]}get m12(){return this.elements[1]}get m21(){return this.m12}get m13(){return this.elements[2]}get m31(){return this.m13}get m22(){return this.elements[3]}get m23(){return this.elements[4]}get m32(){return this.m23}get m33(){return this.elements[5]}}class hM{static fromRaw(A){let Q=new f_(A.elements());return A.free(),Q}}var HC,BJ,q_,M_,oV,L4,YY,z_,R_,w_,xM,fM,j_,O_,bM,RF;(function(A){A[A.Dynamic=0]="Dynamic",A[A.Fixed=1]="Fixed",A[A.KinematicPositionBased=2]="KinematicPositionBased",A[A.KinematicVelocityBased=3]="KinematicVelocityBased"})(HC||(HC={}));class mM{constructor(A,Q,B){this.rawSet=A,this.colliderSet=Q,this.handle=B}finalizeDeserialization(A){this.colliderSet=A}isValid(){return this.rawSet.contains(this.handle)}lockTranslations(A,Q){return this.rawSet.rbLockTranslations(this.handle,A,Q)}lockRotations(A,Q){return this.rawSet.rbLockRotations(this.handle,A,Q)}setEnabledTranslations(A,Q,B,Y){return this.rawSet.rbSetEnabledTranslations(this.handle,A,Q,B,Y)}restrictTranslations(A,Q,B,Y){this.setEnabledTranslations(A,Q,B,Y)}setEnabledRotations(A,Q,B,Y){return this.rawSet.rbSetEnabledRotations(this.handle,A,Q,B,Y)}restrictRotations(A,Q,B,Y){this.setEnabledRotations(A,Q,B,Y)}dominanceGroup(){return this.rawSet.rbDominanceGroup(this.handle)}setDominanceGroup(A){this.rawSet.rbSetDominanceGroup(this.handle,A)}additionalSolverIterations(){return this.rawSet.rbAdditionalSolverIterations(this.handle)}setAdditionalSolverIterations(A){this.rawSet.rbSetAdditionalSolverIterations(this.handle,A)}enableCcd(A){this.rawSet.rbEnableCcd(this.handle,A)}setSoftCcdPrediction(A){this.rawSet.rbSetSoftCcdPrediction(this.handle,A)}softCcdPrediction(){return this.rawSet.rbSoftCcdPrediction(this.handle)}translation(){let A=this.rawSet.rbTranslation(this.handle);return a.fromRaw(A)}rotation(){let A=this.rawSet.rbRotation(this.handle);return hQ.fromRaw(A)}nextTranslation(){let A=this.rawSet.rbNextTranslation(this.handle);return a.fromRaw(A)}nextRotation(){let A=this.rawSet.rbNextRotation(this.handle);return hQ.fromRaw(A)}setTranslation(A,Q){this.rawSet.rbSetTranslation(this.handle,A.x,A.y,A.z,Q)}setLinvel(A,Q){let B=a.intoRaw(A);this.rawSet.rbSetLinvel(this.handle,B,Q),B.free()}gravityScale(){return this.rawSet.rbGravityScale(this.handle)}setGravityScale(A,Q){this.rawSet.rbSetGravityScale(this.handle,A,Q)}setRotation(A,Q){this.rawSet.rbSetRotation(this.handle,A.x,A.y,A.z,A.w,Q)}setAngvel(A,Q){let B=a.intoRaw(A);this.rawSet.rbSetAngvel(this.handle,B,Q),B.free()}setNextKinematicTranslation(A){this.rawSet.rbSetNextKinematicTranslation(this.handle,A.x,A.y,A.z)}setNextKinematicRotation(A){this.rawSet.rbSetNextKinematicRotation(this.handle,A.x,A.y,A.z,A.w)}linvel(){return a.fromRaw(this.rawSet.rbLinvel(this.handle))}velocityAtPoint(A){let Q=a.intoRaw(A),B=a.fromRaw(this.rawSet.rbVelocityAtPoint(this.handle,Q));return Q.free(),B}angvel(){return a.fromRaw(this.rawSet.rbAngvel(this.handle))}mass(){return this.rawSet.rbMass(this.handle)}effectiveInvMass(){return a.fromRaw(this.rawSet.rbEffectiveInvMass(this.handle))}invMass(){return this.rawSet.rbInvMass(this.handle)}localCom(){return a.fromRaw(this.rawSet.rbLocalCom(this.handle))}worldCom(){return a.fromRaw(this.rawSet.rbWorldCom(this.handle))}invPrincipalInertia(){return a.fromRaw(this.rawSet.rbInvPrincipalInertia(this.handle))}principalInertia(){return a.fromRaw(this.rawSet.rbPrincipalInertia(this.handle))}principalInertiaLocalFrame(){return hQ.fromRaw(this.rawSet.rbPrincipalInertiaLocalFrame(this.handle))}effectiveWorldInvInertia(){return hM.fromRaw(this.rawSet.rbEffectiveWorldInvInertia(this.handle))}effectiveAngularInertia(){return hM.fromRaw(this.rawSet.rbEffectiveAngularInertia(this.handle))}sleep(){this.rawSet.rbSleep(this.handle)}wakeUp(){this.rawSet.rbWakeUp(this.handle)}isCcdEnabled(){return this.rawSet.rbIsCcdEnabled(this.handle)}numColliders(){return this.rawSet.rbNumColliders(this.handle)}collider(A){return this.colliderSet.get(this.rawSet.rbCollider(this.handle,A))}setEnabled(A){this.rawSet.rbSetEnabled(this.handle,A)}isEnabled(){return this.rawSet.rbIsEnabled(this.handle)}bodyType(){return this.rawSet.rbBodyType(this.handle)}setBodyType(A,Q){return this.rawSet.rbSetBodyType(this.handle,A,Q)}isSleeping(){return this.rawSet.rbIsSleeping(this.handle)}isMoving(){return this.rawSet.rbIsMoving(this.handle)}isFixed(){return this.rawSet.rbIsFixed(this.handle)}isKinematic(){return this.rawSet.rbIsKinematic(this.handle)}isDynamic(){return this.rawSet.rbIsDynamic(this.handle)}linearDamping(){return this.rawSet.rbLinearDamping(this.handle)}angularDamping(){return this.rawSet.rbAngularDamping(this.handle)}setLinearDamping(A){this.rawSet.rbSetLinearDamping(this.handle,A)}recomputeMassPropertiesFromColliders(){this.rawSet.rbRecomputeMassPropertiesFromColliders(this.handle,this.colliderSet.raw)}setAdditionalMass(A,Q){this.rawSet.rbSetAdditionalMass(this.handle,A,Q)}setAdditionalMassProperties(A,Q,B,Y,J){let C=a.intoRaw(Q),X=a.intoRaw(B),G=hQ.intoRaw(Y);this.rawSet.rbSetAdditionalMassProperties(this.handle,A,C,X,G,J),C.free(),X.free(),G.free()}setAngularDamping(A){this.rawSet.rbSetAngularDamping(this.handle,A)}resetForces(A){this.rawSet.rbResetForces(this.handle,A)}resetTorques(A){this.rawSet.rbResetTorques(this.handle,A)}addForce(A,Q){let B=a.intoRaw(A);this.rawSet.rbAddForce(this.handle,B,Q),B.free()}applyImpulse(A,Q){let B=a.intoRaw(A);this.rawSet.rbApplyImpulse(this.handle,B,Q),B.free()}addTorque(A,Q){let B=a.intoRaw(A);this.rawSet.rbAddTorque(this.handle,B,Q),B.free()}applyTorqueImpulse(A,Q){let B=a.intoRaw(A);this.rawSet.rbApplyTorqueImpulse(this.handle,B,Q),B.free()}addForceAtPoint(A,Q,B){let Y=a.intoRaw(A),J=a.intoRaw(Q);this.rawSet.rbAddForceAtPoint(this.handle,Y,J,B),Y.free(),J.free()}applyImpulseAtPoint(A,Q,B){let Y=a.intoRaw(A),J=a.intoRaw(Q);this.rawSet.rbApplyImpulseAtPoint(this.handle,Y,J,B),Y.free(),J.free()}userForce(){return a.fromRaw(this.rawSet.rbUserForce(this.handle))}userTorque(){return a.fromRaw(this.rawSet.rbUserTorque(this.handle))}}class w1{constructor(A){this.enabled=!0,this.status=A,this.translation=a.zeros(),this.rotation=hQ.identity(),this.gravityScale=1,this.linvel=a.zeros(),this.mass=0,this.massOnly=!1,this.centerOfMass=a.zeros(),this.translationsEnabledX=!0,this.translationsEnabledY=!0,this.angvel=a.zeros(),this.principalAngularInertia=a.zeros(),this.angularInertiaLocalFrame=hQ.identity(),this.translationsEnabledZ=!0,this.rotationsEnabledX=!0,this.rotationsEnabledY=!0,this.rotationsEnabledZ=!0,this.linearDamping=0,this.angularDamping=0,this.canSleep=!0,this.sleeping=!1,this.ccdEnabled=!1,this.softCcdPrediction=0,this.dominanceGroup=0,this.additionalSolverIterations=0}static dynamic(){return new w1(HC.Dynamic)}static kinematicPositionBased(){return new w1(HC.KinematicPositionBased)}static kinematicVelocityBased(){return new w1(HC.KinematicVelocityBased)}static fixed(){return new w1(HC.Fixed)}static newDynamic(){return new w1(HC.Dynamic)}static newKinematicPositionBased(){return new w1(HC.KinematicPositionBased)}static newKinematicVelocityBased(){return new w1(HC.KinematicVelocityBased)}static newStatic(){return new w1(HC.Fixed)}setDominanceGroup(A){return this.dominanceGroup=A,this}setAdditionalSolverIterations(A){return this.additionalSolverIterations=A,this}setEnabled(A){return this.enabled=A,this}setTranslation(A,Q,B){if(typeof A!="number"||typeof Q!="number"||typeof B!="number")throw TypeError("The translation components must be numbers.");return this.translation={x:A,y:Q,z:B},this}setRotation(A){return hQ.copy(this.rotation,A),this}setGravityScale(A){return this.gravityScale=A,this}setAdditionalMass(A){return this.mass=A,this.massOnly=!0,this}setLinvel(A,Q,B){if(typeof A!="number"||typeof Q!="number"||typeof B!="number")throw TypeError("The linvel components must be numbers.");return this.linvel={x:A,y:Q,z:B},this}setAngvel(A){return a.copy(this.angvel,A),this}setAdditionalMassProperties(A,Q,B,Y){return this.mass=A,a.copy(this.centerOfMass,Q),a.copy(this.principalAngularInertia,B),hQ.copy(this.angularInertiaLocalFrame,Y),this.massOnly=!1,this}enabledTranslations(A,Q,B){return this.translationsEnabledX=A,this.translationsEnabledY=Q,this.translationsEnabledZ=B,this}restrictTranslations(A,Q,B){return this.enabledTranslations(A,Q,B)}lockTranslations(){return this.enabledTranslations(!1,!1,!1)}enabledRotations(A,Q,B){return this.rotationsEnabledX=A,this.rotationsEnabledY=Q,this.rotationsEnabledZ=B,this}restrictRotations(A,Q,B){return this.enabledRotations(A,Q,B)}lockRotations(){return this.restrictRotations(!1,!1,!1)}setLinearDamping(A){return this.linearDamping=A,this}setAngularDamping(A){return this.angularDamping=A,this}setCanSleep(A){return this.canSleep=A,this}setSleeping(A){return this.sleeping=A,this}setCcdEnabled(A){return this.ccdEnabled=A,this}setSoftCcdPrediction(A){return this.softCcdPrediction=A,this}setUserData(A){return this.userData=A,this}}class BI{constructor(){this.fconv=new Float64Array(1),this.uconv=new Uint32Array(this.fconv.buffer),this.data=[],this.size=0}set(A,Q){let B=this.index(A);for(;this.data.length<=B;)this.data.push(null);this.data[B]==null&&(this.size+=1),this.data[B]=Q}len(){return this.size}delete(A){let Q=this.index(A);QA!=null)}index(A){return this.fconv[0]=A,this.uconv[0]}}class b_{constructor(A){this.raw=A||new C0,this.map=new BI,A&&A.forEachRigidBodyHandle((Q)=>{this.map.set(Q,new mM(A,null,Q))})}free(){this.raw&&this.raw.free(),this.raw=void 0,this.map&&this.map.clear(),this.map=void 0}finalizeDeserialization(A){this.map.forEach((Q)=>Q.finalizeDeserialization(A))}createRigidBody(A,Q){let B=a.intoRaw(Q.translation),Y=hQ.intoRaw(Q.rotation),J=a.intoRaw(Q.linvel),C=a.intoRaw(Q.centerOfMass),X=a.intoRaw(Q.angvel),G=a.intoRaw(Q.principalAngularInertia),W=hQ.intoRaw(Q.angularInertiaLocalFrame),F=this.raw.createRigidBody(Q.enabled,B,Y,Q.gravityScale,Q.mass,Q.massOnly,C,J,X,G,W,Q.translationsEnabledX,Q.translationsEnabledY,Q.translationsEnabledZ,Q.rotationsEnabledX,Q.rotationsEnabledY,Q.rotationsEnabledZ,Q.linearDamping,Q.angularDamping,Q.status,Q.canSleep,Q.sleeping,Q.softCcdPrediction,Q.ccdEnabled,Q.dominanceGroup,Q.additionalSolverIterations);B.free(),Y.free(),J.free(),C.free(),X.free(),G.free(),W.free();let Z=new mM(this.raw,A,F);return Z.userData=Q.userData,this.map.set(F,Z),Z}remove(A,Q,B,Y,J){for(let C=0;CY.unmap(C)),J.forEachJointHandleAttachedToRigidBody(A,(C)=>J.unmap(C)),this.raw.remove(A,Q.raw,B.raw,Y.raw,J.raw),this.map.delete(A)}len(){return this.map.len()}contains(A){return this.get(A)!=null}get(A){return this.map.get(A)}forEach(A){this.map.forEach(A)}forEachActiveRigidBody(A,Q){A.forEachActiveRigidBodyHandle((B)=>{Q(this.get(B))})}getAll(){return this.map.getAll()}}class m_{constructor(A){this.raw=A||new wF}free(){this.raw&&this.raw.free(),this.raw=void 0}get dt(){return this.raw.dt}get contact_erp(){return this.raw.contact_erp}get lengthUnit(){return this.raw.lengthUnit}get normalizedAllowedLinearError(){return this.raw.normalizedAllowedLinearError}get normalizedPredictionDistance(){return this.raw.normalizedPredictionDistance}get numSolverIterations(){return this.raw.numSolverIterations}get numInternalPgsIterations(){return this.raw.numInternalPgsIterations}get minIslandSize(){return this.raw.minIslandSize}get maxCcdSubsteps(){return this.raw.maxCcdSubsteps}set dt(A){this.raw.dt=A}set contact_natural_frequency(A){this.raw.contact_natural_frequency=A}set lengthUnit(A){this.raw.lengthUnit=A}set normalizedAllowedLinearError(A){this.raw.normalizedAllowedLinearError=A}set normalizedPredictionDistance(A){this.raw.normalizedPredictionDistance=A}set numSolverIterations(A){this.raw.numSolverIterations=A}set numInternalPgsIterations(A){this.raw.numInternalPgsIterations=A}set minIslandSize(A){this.raw.minIslandSize=A}set maxCcdSubsteps(A){this.raw.maxCcdSubsteps=A}}(function(A){A[A.Revolute=0]="Revolute",A[A.Fixed=1]="Fixed",A[A.Prismatic=2]="Prismatic",A[A.Rope=3]="Rope",A[A.Spring=4]="Spring",A[A.Spherical=5]="Spherical",A[A.Generic=6]="Generic"})(BJ||(BJ={})),function(A){A[A.AccelerationBased=0]="AccelerationBased",A[A.ForceBased=1]="ForceBased"}(q_||(q_={})),function(A){A[A.LinX=1]="LinX",A[A.LinY=2]="LinY",A[A.LinZ=4]="LinZ",A[A.AngX=8]="AngX",A[A.AngY=16]="AngY",A[A.AngZ=32]="AngZ"}(M_||(M_={}));class NC{constructor(A,Q,B){this.rawSet=A,this.bodySet=Q,this.handle=B}static newTyped(A,Q,B){switch(A.jointType(B)){case DC.Revolute:return new p_(A,Q,B);case DC.Prismatic:return new l_(A,Q,B);case DC.Fixed:return new u_(A,Q,B);case DC.Spring:return new c_(A,Q,B);case DC.Rope:return new d_(A,Q,B);case DC.Spherical:return new n_(A,Q,B);case DC.Generic:return new i_(A,Q,B);default:return new NC(A,Q,B)}}finalizeDeserialization(A){this.bodySet=A}isValid(){return this.rawSet.contains(this.handle)}body1(){return this.bodySet.get(this.rawSet.jointBodyHandle1(this.handle))}body2(){return this.bodySet.get(this.rawSet.jointBodyHandle2(this.handle))}type(){return this.rawSet.jointType(this.handle)}frameX1(){return hQ.fromRaw(this.rawSet.jointFrameX1(this.handle))}frameX2(){return hQ.fromRaw(this.rawSet.jointFrameX2(this.handle))}anchor1(){return a.fromRaw(this.rawSet.jointAnchor1(this.handle))}anchor2(){return a.fromRaw(this.rawSet.jointAnchor2(this.handle))}setAnchor1(A){let Q=a.intoRaw(A);this.rawSet.jointSetAnchor1(this.handle,Q),Q.free()}setAnchor2(A){let Q=a.intoRaw(A);this.rawSet.jointSetAnchor2(this.handle,Q),Q.free()}setContactsEnabled(A){this.rawSet.jointSetContactsEnabled(this.handle,A)}contactsEnabled(){return this.rawSet.jointContactsEnabled(this.handle)}}class rM extends NC{limitsEnabled(){return this.rawSet.jointLimitsEnabled(this.handle,this.rawAxis())}limitsMin(){return this.rawSet.jointLimitsMin(this.handle,this.rawAxis())}limitsMax(){return this.rawSet.jointLimitsMax(this.handle,this.rawAxis())}setLimits(A,Q){this.rawSet.jointSetLimits(this.handle,this.rawAxis(),A,Q)}configureMotorModel(A){this.rawSet.jointConfigureMotorModel(this.handle,this.rawAxis(),A)}configureMotorVelocity(A,Q){this.rawSet.jointConfigureMotorVelocity(this.handle,this.rawAxis(),A,Q)}configureMotorPosition(A,Q,B){this.rawSet.jointConfigureMotorPosition(this.handle,this.rawAxis(),A,Q,B)}configureMotor(A,Q,B,Y){this.rawSet.jointConfigureMotor(this.handle,this.rawAxis(),A,Q,B,Y)}}class u_ extends NC{}class d_ extends NC{}class c_ extends NC{}class l_ extends rM{rawAxis(){return cM.LinX}}class p_ extends rM{rawAxis(){return cM.AngX}}class i_ extends NC{}class n_ extends NC{}class lX{constructor(){}static fixed(A,Q,B,Y){let J=new lX;return J.anchor1=A,J.anchor2=B,J.frame1=Q,J.frame2=Y,J.jointType=BJ.Fixed,J}static spring(A,Q,B,Y,J){let C=new lX;return C.anchor1=Y,C.anchor2=J,C.length=A,C.stiffness=Q,C.damping=B,C.jointType=BJ.Spring,C}static rope(A,Q,B){let Y=new lX;return Y.anchor1=Q,Y.anchor2=B,Y.length=A,Y.jointType=BJ.Rope,Y}static generic(A,Q,B,Y){let J=new lX;return J.anchor1=A,J.anchor2=Q,J.axis=B,J.axesMask=Y,J.jointType=BJ.Generic,J}static spherical(A,Q){let B=new lX;return B.anchor1=A,B.anchor2=Q,B.jointType=BJ.Spherical,B}static prismatic(A,Q,B){let Y=new lX;return Y.anchor1=A,Y.anchor2=Q,Y.axis=B,Y.jointType=BJ.Prismatic,Y}static revolute(A,Q,B){let Y=new lX;return Y.anchor1=A,Y.anchor2=Q,Y.axis=B,Y.jointType=BJ.Revolute,Y}intoRaw(){let A,Q,B=a.intoRaw(this.anchor1),Y=a.intoRaw(this.anchor2),J=!1,C=0,X=0;switch(this.jointType){case BJ.Fixed:let G=hQ.intoRaw(this.frame1),W=hQ.intoRaw(this.frame2);Q=uY.fixed(B,G,Y,W),G.free(),W.free();break;case BJ.Spring:Q=uY.spring(this.length,this.stiffness,this.damping,B,Y);break;case BJ.Rope:Q=uY.rope(this.length,B,Y);break;case BJ.Prismatic:A=a.intoRaw(this.axis),this.limitsEnabled&&(J=!0,C=this.limits[0],X=this.limits[1]),Q=uY.prismatic(B,Y,A,J,C,X),A.free();break;case BJ.Generic:A=a.intoRaw(this.axis);let F=this.axesMask;Q=uY.generic(B,Y,A,F);break;case BJ.Spherical:Q=uY.spherical(B,Y);break;case BJ.Revolute:A=a.intoRaw(this.axis),Q=uY.revolute(B,Y,A),A.free()}return B.free(),Y.free(),Q}}class s_{constructor(A){this.raw=A||new iX,this.map=new BI,A&&A.forEachJointHandle((Q)=>{this.map.set(Q,NC.newTyped(A,null,Q))})}free(){this.raw&&this.raw.free(),this.raw=void 0,this.map&&this.map.clear(),this.map=void 0}finalizeDeserialization(A){this.map.forEach((Q)=>Q.finalizeDeserialization(A))}createJoint(A,Q,B,Y,J){let C=Q.intoRaw(),X=this.raw.createJoint(C,B,Y,J);C.free();let G=NC.newTyped(this.raw,A,X);return this.map.set(X,G),G}remove(A,Q){this.raw.remove(A,Q),this.unmap(A)}forEachJointHandleAttachedToRigidBody(A,Q){this.raw.forEachJointAttachedToRigidBody(A,Q)}unmap(A){this.map.delete(A)}len(){return this.map.len()}contains(A){return this.get(A)!=null}get(A){return this.map.get(A)}forEach(A){this.map.forEach(A)}getAll(){return this.map.getAll()}}class rG{constructor(A,Q){this.rawSet=A,this.handle=Q}static newTyped(A,Q){switch(A.jointType(Q)){case DC.Revolute:return new o_(A,Q);case DC.Prismatic:return new a_(A,Q);case DC.Fixed:return new r_(A,Q);case DC.Spherical:return new t_(A,Q);default:return new rG(A,Q)}}isValid(){return this.rawSet.contains(this.handle)}setContactsEnabled(A){this.rawSet.jointSetContactsEnabled(this.handle,A)}contactsEnabled(){return this.rawSet.jointContactsEnabled(this.handle)}}class aM extends rG{}class r_ extends rG{}class a_ extends aM{rawAxis(){return cM.LinX}}class o_ extends aM{rawAxis(){return cM.AngX}}class t_ extends rG{}class e_{constructor(A){this.raw=A||new sX,this.map=new BI,A&&A.forEachJointHandle((Q)=>{this.map.set(Q,rG.newTyped(this.raw,Q))})}free(){this.raw&&this.raw.free(),this.raw=void 0,this.map&&this.map.clear(),this.map=void 0}createJoint(A,Q,B,Y){let J=A.intoRaw(),C=this.raw.createJoint(J,Q,B,Y);J.free();let X=rG.newTyped(this.raw,C);return this.map.set(C,X),X}remove(A,Q){this.raw.remove(A,Q),this.map.delete(A)}unmap(A){this.map.delete(A)}len(){return this.map.len()}contains(A){return this.get(A)!=null}get(A){return this.map.get(A)}forEach(A){this.map.forEach(A)}forEachJointHandleAttachedToRigidBody(A,Q){this.raw.forEachJointAttachedToRigidBody(A,Q)}getAll(){return this.map.getAll()}}(function(A){A[A.Average=0]="Average",A[A.Min=1]="Min",A[A.Multiply=2]="Multiply",A[A.Max=3]="Max"})(oV||(oV={}));class Av{constructor(A){this.raw=A||new _M}free(){this.raw&&this.raw.free(),this.raw=void 0}}class Qv{constructor(A){this.raw=A||new nX}free(){this.raw&&this.raw.free(),this.raw=void 0}forEachActiveRigidBodyHandle(A){this.raw.forEachActiveRigidBodyHandle(A)}}(function(A){A[A.Vertex=0]="Vertex",A[A.Edge=1]="Edge",A[A.Face=2]="Face",A[A.Unknown=3]="Unknown"})(L4||(L4={}));class Ie{constructor(A,Q){this.origin=A,this.dir=Q}pointAt(A){return{x:this.origin.x+this.dir.x*A,y:this.origin.y+this.dir.y*A,z:this.origin.z+this.dir.z*A}}}class YI{constructor(A,Q,B,Y){this.featureType=L4.Unknown,this.featureId=void 0,this.timeOfImpact=A,this.normal=Q,Y!==void 0&&(this.featureId=Y),B!==void 0&&(this.featureType=B)}static fromRaw(A){if(!A)return null;let Q=new YI(A.time_of_impact(),a.fromRaw(A.normal()),A.featureType(),A.featureId());return A.free(),Q}}class tV{constructor(A,Q,B,Y,J){this.featureType=L4.Unknown,this.featureId=void 0,this.collider=A,this.timeOfImpact=Q,this.normal=B,J!==void 0&&(this.featureId=J),Y!==void 0&&(this.featureType=Y)}static fromRaw(A,Q){if(!Q)return null;let B=new tV(A.get(Q.colliderHandle()),Q.time_of_impact(),a.fromRaw(Q.normal()),Q.featureType(),Q.featureId());return Q.free(),B}}class oM{constructor(A,Q){this.collider=A,this.timeOfImpact=Q}static fromRaw(A,Q){if(!Q)return null;let B=new oM(A.get(Q.colliderHandle()),Q.timeOfImpact());return Q.free(),B}}class JI{constructor(A,Q){this.point=A,this.isInside=Q}static fromRaw(A){if(!A)return null;let Q=new JI(a.fromRaw(A.point()),A.isInside());return A.free(),Q}}class eV{constructor(A,Q,B,Y,J){this.featureType=L4.Unknown,this.featureId=void 0,this.collider=A,this.point=Q,this.isInside=B,J!==void 0&&(this.featureId=J),Y!==void 0&&(this.featureType=Y)}static fromRaw(A,Q){if(!Q)return null;let B=new eV(A.get(Q.colliderHandle()),a.fromRaw(Q.point()),Q.isInside(),Q.featureType(),Q.featureId());return Q.free(),B}}class M4{constructor(A,Q,B,Y,J){this.time_of_impact=A,this.witness1=Q,this.witness2=B,this.normal1=Y,this.normal2=J}static fromRaw(A,Q){if(!Q)return null;let B=new M4(Q.time_of_impact(),a.fromRaw(Q.witness1()),a.fromRaw(Q.witness2()),a.fromRaw(Q.normal1()),a.fromRaw(Q.normal2()));return Q.free(),B}}class CI extends M4{constructor(A,Q,B,Y,J,C){super(Q,B,Y,J,C),this.collider=A}static fromRaw(A,Q){if(!Q)return null;let B=new CI(A.get(Q.colliderHandle()),Q.time_of_impact(),a.fromRaw(Q.witness1()),a.fromRaw(Q.witness2()),a.fromRaw(Q.normal1()),a.fromRaw(Q.normal2()));return Q.free(),B}}class Bv{constructor(A){this.raw=A||new pX}free(){this.raw&&this.raw.free(),this.raw=void 0}castRay(A,Q,B,Y,J,C,X,G,W,F,Z){let U=a.intoRaw(Y.origin),$=a.intoRaw(Y.dir),E=oM.fromRaw(B,this.raw.castRay(A.raw,Q.raw,B.raw,U,$,J,C,X,G,W,F,Z));return U.free(),$.free(),E}castRayAndGetNormal(A,Q,B,Y,J,C,X,G,W,F,Z){let U=a.intoRaw(Y.origin),$=a.intoRaw(Y.dir),E=tV.fromRaw(B,this.raw.castRayAndGetNormal(A.raw,Q.raw,B.raw,U,$,J,C,X,G,W,F,Z));return U.free(),$.free(),E}intersectionsWithRay(A,Q,B,Y,J,C,X,G,W,F,Z,U){let $=a.intoRaw(Y.origin),E=a.intoRaw(Y.dir);this.raw.intersectionsWithRay(A.raw,Q.raw,B.raw,$,E,J,C,(K)=>X(tV.fromRaw(B,K)),G,W,F,Z,U),$.free(),E.free()}intersectionWithShape(A,Q,B,Y,J,C,X,G,W,F,Z){let U=a.intoRaw(Y),$=hQ.intoRaw(J),E=C.intoRaw(),K=this.raw.intersectionWithShape(A.raw,Q.raw,B.raw,U,$,E,X,G,W,F,Z);return U.free(),$.free(),E.free(),K}projectPoint(A,Q,B,Y,J,C,X,G,W,F){let Z=a.intoRaw(Y),U=eV.fromRaw(B,this.raw.projectPoint(A.raw,Q.raw,B.raw,Z,J,C,X,G,W,F));return Z.free(),U}projectPointAndGetFeature(A,Q,B,Y,J,C,X,G,W){let F=a.intoRaw(Y),Z=eV.fromRaw(B,this.raw.projectPointAndGetFeature(A.raw,Q.raw,B.raw,F,J,C,X,G,W));return F.free(),Z}intersectionsWithPoint(A,Q,B,Y,J,C,X,G,W,F){let Z=a.intoRaw(Y);this.raw.intersectionsWithPoint(A.raw,Q.raw,B.raw,Z,J,C,X,G,W,F),Z.free()}castShape(A,Q,B,Y,J,C,X,G,W,F,Z,U,$,E,K){let I=a.intoRaw(Y),V=hQ.intoRaw(J),H=a.intoRaw(C),D=X.intoRaw(),L=CI.fromRaw(B,this.raw.castShape(A.raw,Q.raw,B.raw,I,V,H,D,G,W,F,Z,U,$,E,K));return I.free(),V.free(),H.free(),D.free(),L}intersectionsWithShape(A,Q,B,Y,J,C,X,G,W,F,Z,U){let $=a.intoRaw(Y),E=hQ.intoRaw(J),K=C.intoRaw();this.raw.intersectionsWithShape(A.raw,Q.raw,B.raw,$,E,K,X,G,W,F,Z,U),$.free(),E.free(),K.free()}collidersWithAabbIntersectingAabb(A,Q,B,Y,J,C){let X=a.intoRaw(Y),G=a.intoRaw(J);this.raw.collidersWithAabbIntersectingAabb(A.raw,Q.raw,B.raw,X,G,C),X.free(),G.free()}}class Yv{constructor(A){this.raw=A||new LY,this.tempManifold=new Jv(null)}free(){this.raw&&this.raw.free(),this.raw=void 0}contactPairsWith(A,Q){this.raw.contact_pairs_with(A,Q)}intersectionPairsWith(A,Q){this.raw.intersection_pairs_with(A,Q)}contactPair(A,Q,B){let Y=this.raw.contact_pair(A,Q);if(Y){let J=Y.collider1()!=A,C;for(C=0;CA.free()),this.pidControllers.forEach((A)=>A.free()),this.vehicleControllers.forEach((A)=>A.free()),this.integrationParameters=void 0,this.islands=void 0,this.broadPhase=void 0,this.narrowPhase=void 0,this.bodies=void 0,this.colliders=void 0,this.ccdSolver=void 0,this.impulseJoints=void 0,this.multibodyJoints=void 0,this.physicsPipeline=void 0,this.serializationPipeline=void 0,this.debugRenderPipeline=void 0,this.characterControllers=void 0,this.pidControllers=void 0,this.vehicleControllers=void 0}static fromRaw(A){return A?new Ez(a.fromRaw(A.takeGravity()),A.takeIntegrationParameters(),A.takeIslandManager(),A.takeBroadPhase(),A.takeNarrowPhase(),A.takeBodies(),A.takeColliders(),A.takeImpulseJoints(),A.takeMultibodyJoints()):null}takeSnapshot(){return this.serializationPipeline.serializeAll(this.gravity,this.integrationParameters,this.islands,this.broadPhase,this.narrowPhase,this.bodies,this.colliders,this.impulseJoints,this.multibodyJoints)}static restoreSnapshot(A){return new uM().deserializeAll(A)}debugRender(A,Q){return this.debugRenderPipeline.render(this.bodies,this.colliders,this.impulseJoints,this.multibodyJoints,this.narrowPhase,A,Q),new Gv(this.debugRenderPipeline.vertices,this.debugRenderPipeline.colors)}step(A,Q){this.physicsPipeline.step(this.gravity,this.integrationParameters,this.islands,this.broadPhase,this.narrowPhase,this.bodies,this.colliders,this.impulseJoints,this.multibodyJoints,this.ccdSolver,A,Q)}propagateModifiedBodyPositionsToColliders(){this.bodies.raw.propagateModifiedBodyPositionsToColliders(this.colliders.raw)}get timestep(){return this.integrationParameters.dt}set timestep(A){this.integrationParameters.dt=A}get lengthUnit(){return this.integrationParameters.lengthUnit}set lengthUnit(A){this.integrationParameters.lengthUnit=A}get numSolverIterations(){return this.integrationParameters.numSolverIterations}set numSolverIterations(A){this.integrationParameters.numSolverIterations=A}get numInternalPgsIterations(){return this.integrationParameters.numInternalPgsIterations}set numInternalPgsIterations(A){this.integrationParameters.numInternalPgsIterations=A}get maxCcdSubsteps(){return this.integrationParameters.maxCcdSubsteps}set maxCcdSubsteps(A){this.integrationParameters.maxCcdSubsteps=A}createRigidBody(A){return this.bodies.createRigidBody(this.colliders,A)}createCharacterController(A){let Q=new Zv(A,this.integrationParameters,this.broadPhase,this.narrowPhase,this.bodies,this.colliders);return this.characterControllers.add(Q),Q}removeCharacterController(A){this.characterControllers.delete(A),A.free()}createPidController(A,Q,B,Y){let J=new $v(this.integrationParameters,this.bodies,A,Q,B,Y);return this.pidControllers.add(J),J}removePidController(A){this.pidControllers.delete(A),A.free()}createVehicleController(A){let Q=new Uv(A,this.broadPhase,this.narrowPhase,this.bodies,this.colliders);return this.vehicleControllers.add(Q),Q}removeVehicleController(A){this.vehicleControllers.delete(A),A.free()}createCollider(A,Q){let B=Q?Q.handle:void 0;return this.colliders.createCollider(this.bodies,A,B)}createImpulseJoint(A,Q,B,Y){return this.impulseJoints.createJoint(this.bodies,A,Q.handle,B.handle,Y)}createMultibodyJoint(A,Q,B,Y){return this.multibodyJoints.createJoint(A,Q.handle,B.handle,Y)}getRigidBody(A){return this.bodies.get(A)}getCollider(A){return this.colliders.get(A)}getImpulseJoint(A){return this.impulseJoints.get(A)}getMultibodyJoint(A){return this.multibodyJoints.get(A)}removeRigidBody(A){this.bodies&&this.bodies.remove(A.handle,this.islands,this.colliders,this.impulseJoints,this.multibodyJoints)}removeCollider(A,Q){this.colliders&&this.colliders.remove(A.handle,this.islands,this.bodies,Q)}removeImpulseJoint(A,Q){this.impulseJoints&&this.impulseJoints.remove(A.handle,Q)}removeMultibodyJoint(A,Q){this.impulseJoints&&this.multibodyJoints.remove(A.handle,Q)}forEachCollider(A){this.colliders.forEach(A)}forEachRigidBody(A){this.bodies.forEach(A)}forEachActiveRigidBody(A){this.bodies.forEachActiveRigidBody(this.islands,A)}castRay(A,Q,B,Y,J,C,X,G){return this.broadPhase.castRay(this.narrowPhase,this.bodies,this.colliders,A,Q,B,Y,J,C?C.handle:null,X?X.handle:null,this.colliders.castClosure(G))}castRayAndGetNormal(A,Q,B,Y,J,C,X,G){return this.broadPhase.castRayAndGetNormal(this.narrowPhase,this.bodies,this.colliders,A,Q,B,Y,J,C?C.handle:null,X?X.handle:null,this.colliders.castClosure(G))}intersectionsWithRay(A,Q,B,Y,J,C,X,G,W){this.broadPhase.intersectionsWithRay(this.narrowPhase,this.bodies,this.colliders,A,Q,B,Y,J,C,X?X.handle:null,G?G.handle:null,this.colliders.castClosure(W))}intersectionWithShape(A,Q,B,Y,J,C,X,G){let W=this.broadPhase.intersectionWithShape(this.narrowPhase,this.bodies,this.colliders,A,Q,B,Y,J,C?C.handle:null,X?X.handle:null,this.colliders.castClosure(G));return W!=null?this.colliders.get(W):null}projectPoint(A,Q,B,Y,J,C,X){return this.broadPhase.projectPoint(this.narrowPhase,this.bodies,this.colliders,A,Q,B,Y,J?J.handle:null,C?C.handle:null,this.colliders.castClosure(X))}projectPointAndGetFeature(A,Q,B,Y,J,C){return this.broadPhase.projectPointAndGetFeature(this.narrowPhase,this.bodies,this.colliders,A,Q,B,Y?Y.handle:null,J?J.handle:null,this.colliders.castClosure(C))}intersectionsWithPoint(A,Q,B,Y,J,C,X){this.broadPhase.intersectionsWithPoint(this.narrowPhase,this.bodies,this.colliders,A,this.colliders.castClosure(Q),B,Y,J?J.handle:null,C?C.handle:null,this.colliders.castClosure(X))}castShape(A,Q,B,Y,J,C,X,G,W,F,Z,U){return this.broadPhase.castShape(this.narrowPhase,this.bodies,this.colliders,A,Q,B,Y,J,C,X,G,W,F?F.handle:null,Z?Z.handle:null,this.colliders.castClosure(U))}intersectionsWithShape(A,Q,B,Y,J,C,X,G,W){this.broadPhase.intersectionsWithShape(this.narrowPhase,this.bodies,this.colliders,A,Q,B,this.colliders.castClosure(Y),J,C,X?X.handle:null,G?G.handle:null,this.colliders.castClosure(W))}collidersWithAabbIntersectingAabb(A,Q,B){this.broadPhase.collidersWithAabbIntersectingAabb(this.narrowPhase,this.bodies,this.colliders,A,Q,this.colliders.castClosure(B))}contactPairsWith(A,Q){this.narrowPhase.contactPairsWith(A.handle,this.colliders.castClosure(Q))}intersectionPairsWith(A,Q){this.narrowPhase.intersectionPairsWith(A.handle,this.colliders.castClosure(Q))}contactPair(A,Q,B){this.narrowPhase.contactPair(A.handle,Q.handle,B)}intersectionPair(A,Q){return this.narrowPhase.intersectionPair(A.handle,Q.handle)}set profilerEnabled(A){this.physicsPipeline.raw.set_profiler_enabled(A)}get profilerEnabled(){return this.physicsPipeline.raw.is_profiler_enabled()}timingStep(){return this.physicsPipeline.raw.timing_step()}timingCollisionDetection(){return this.physicsPipeline.raw.timing_collision_detection()}timingBroadPhase(){return this.physicsPipeline.raw.timing_broad_phase()}timingNarrowPhase(){return this.physicsPipeline.raw.timing_narrow_phase()}timingSolver(){return this.physicsPipeline.raw.timing_solver()}timingVelocityAssembly(){return this.physicsPipeline.raw.timing_velocity_assembly()}timingVelocityResolution(){return this.physicsPipeline.raw.timing_velocity_resolution()}timingVelocityUpdate(){return this.physicsPipeline.raw.timing_velocity_update()}timingVelocityWriteback(){return this.physicsPipeline.raw.timing_velocity_writeback()}timingCcd(){return this.physicsPipeline.raw.timing_ccd()}timingCcdToiComputation(){return this.physicsPipeline.raw.timing_ccd_toi_computation()}timingCcdBroadPhase(){return this.physicsPipeline.raw.timing_ccd_broad_phase()}timingCcdNarrowPhase(){return this.physicsPipeline.raw.timing_ccd_narrow_phase()}timingCcdSolver(){return this.physicsPipeline.raw.timing_ccd_solver()}timingIslandConstruction(){return this.physicsPipeline.raw.timing_island_construction()}timingUserChanges(){return this.physicsPipeline.raw.timing_user_changes()}}(function(A){A[A.NONE=0]="NONE",A[A.COLLISION_EVENTS=1]="COLLISION_EVENTS",A[A.CONTACT_FORCE_EVENTS=2]="CONTACT_FORCE_EVENTS"})(xM||(xM={}));class Ev{free(){this.raw&&this.raw.free(),this.raw=void 0}collider1(){return this.raw.collider1()}collider2(){return this.raw.collider2()}totalForce(){return a.fromRaw(this.raw.total_force())}totalForceMagnitude(){return this.raw.total_force_magnitude()}maxForceDirection(){return a.fromRaw(this.raw.max_force_direction())}maxForceMagnitude(){return this.raw.max_force_magnitude()}}class He{constructor(A,Q){this.raw=Q||new g_(A)}free(){this.raw&&this.raw.free(),this.raw=void 0}drainCollisionEvents(A){this.raw.drainCollisionEvents(A)}drainContactForceEvents(A){let Q=new Ev;this.raw.drainContactForceEvents((B)=>{Q.raw=B,A(Q),Q.free()})}clear(){this.raw.clear()}}(function(A){A[A.NONE=0]="NONE",A[A.FILTER_CONTACT_PAIRS=1]="FILTER_CONTACT_PAIRS",A[A.FILTER_INTERSECTION_PAIRS=2]="FILTER_INTERSECTION_PAIRS"})(fM||(fM={})),function(A){A[A.EMPTY=0]="EMPTY",A[A.COMPUTE_IMPULSE=1]="COMPUTE_IMPULSE"}(j_||(j_={})),function(A){A[A.EXCLUDE_FIXED=1]="EXCLUDE_FIXED",A[A.EXCLUDE_KINEMATIC=2]="EXCLUDE_KINEMATIC",A[A.EXCLUDE_DYNAMIC=4]="EXCLUDE_DYNAMIC",A[A.EXCLUDE_SENSORS=8]="EXCLUDE_SENSORS",A[A.EXCLUDE_SOLIDS=16]="EXCLUDE_SOLIDS",A[A.ONLY_DYNAMIC=3]="ONLY_DYNAMIC",A[A.ONLY_KINEMATIC=5]="ONLY_KINEMATIC",A[A.ONLY_FIXED=6]="ONLY_FIXED"}(O_||(O_={})),function(A){A[A.DYNAMIC_DYNAMIC=1]="DYNAMIC_DYNAMIC",A[A.DYNAMIC_KINEMATIC=12]="DYNAMIC_KINEMATIC",A[A.DYNAMIC_FIXED=2]="DYNAMIC_FIXED",A[A.KINEMATIC_KINEMATIC=52224]="KINEMATIC_KINEMATIC",A[A.KINEMATIC_FIXED=8704]="KINEMATIC_FIXED",A[A.FIXED_FIXED=32]="FIXED_FIXED",A[A.DEFAULT=15]="DEFAULT",A[A.ALL=60943]="ALL"}(bM||(bM={}));class dM{constructor(A,Q,B,Y){this.colliderSet=A,this.handle=Q,this._parent=B,this._shape=Y}finalizeDeserialization(A){this.handle!=null&&(this._parent=A.get(this.colliderSet.raw.coParent(this.handle)))}ensureShapeIsCached(){this._shape||(this._shape=JY.fromRaw(this.colliderSet.raw,this.handle))}get shape(){return this.ensureShapeIsCached(),this._shape}clearShapeCache(){this._shape=null}isValid(){return this.colliderSet.raw.contains(this.handle)}translation(){return a.fromRaw(this.colliderSet.raw.coTranslation(this.handle))}translationWrtParent(){return a.fromRaw(this.colliderSet.raw.coTranslationWrtParent(this.handle))}rotation(){return hQ.fromRaw(this.colliderSet.raw.coRotation(this.handle))}rotationWrtParent(){return hQ.fromRaw(this.colliderSet.raw.coRotationWrtParent(this.handle))}isSensor(){return this.colliderSet.raw.coIsSensor(this.handle)}setSensor(A){this.colliderSet.raw.coSetSensor(this.handle,A)}setShape(A){let Q=A.intoRaw();this.colliderSet.raw.coSetShape(this.handle,Q),Q.free(),this._shape=A}setEnabled(A){this.colliderSet.raw.coSetEnabled(this.handle,A)}isEnabled(){return this.colliderSet.raw.coIsEnabled(this.handle)}setRestitution(A){this.colliderSet.raw.coSetRestitution(this.handle,A)}setFriction(A){this.colliderSet.raw.coSetFriction(this.handle,A)}frictionCombineRule(){return this.colliderSet.raw.coFrictionCombineRule(this.handle)}setFrictionCombineRule(A){this.colliderSet.raw.coSetFrictionCombineRule(this.handle,A)}restitutionCombineRule(){return this.colliderSet.raw.coRestitutionCombineRule(this.handle)}setRestitutionCombineRule(A){this.colliderSet.raw.coSetRestitutionCombineRule(this.handle,A)}setCollisionGroups(A){this.colliderSet.raw.coSetCollisionGroups(this.handle,A)}setSolverGroups(A){this.colliderSet.raw.coSetSolverGroups(this.handle,A)}contactSkin(){return this.colliderSet.raw.coContactSkin(this.handle)}setContactSkin(A){return this.colliderSet.raw.coSetContactSkin(this.handle,A)}activeHooks(){return this.colliderSet.raw.coActiveHooks(this.handle)}setActiveHooks(A){this.colliderSet.raw.coSetActiveHooks(this.handle,A)}activeEvents(){return this.colliderSet.raw.coActiveEvents(this.handle)}setActiveEvents(A){this.colliderSet.raw.coSetActiveEvents(this.handle,A)}activeCollisionTypes(){return this.colliderSet.raw.coActiveCollisionTypes(this.handle)}setContactForceEventThreshold(A){return this.colliderSet.raw.coSetContactForceEventThreshold(this.handle,A)}contactForceEventThreshold(){return this.colliderSet.raw.coContactForceEventThreshold(this.handle)}setActiveCollisionTypes(A){this.colliderSet.raw.coSetActiveCollisionTypes(this.handle,A)}setDensity(A){this.colliderSet.raw.coSetDensity(this.handle,A)}setMass(A){this.colliderSet.raw.coSetMass(this.handle,A)}setMassProperties(A,Q,B,Y){let J=a.intoRaw(Q),C=a.intoRaw(B),X=hQ.intoRaw(Y);this.colliderSet.raw.coSetMassProperties(this.handle,A,J,C,X),J.free(),C.free(),X.free()}setTranslation(A){this.colliderSet.raw.coSetTranslation(this.handle,A.x,A.y,A.z)}setTranslationWrtParent(A){this.colliderSet.raw.coSetTranslationWrtParent(this.handle,A.x,A.y,A.z)}setRotation(A){this.colliderSet.raw.coSetRotation(this.handle,A.x,A.y,A.z,A.w)}setRotationWrtParent(A){this.colliderSet.raw.coSetRotationWrtParent(this.handle,A.x,A.y,A.z,A.w)}shapeType(){return this.colliderSet.raw.coShapeType(this.handle)}halfExtents(){return a.fromRaw(this.colliderSet.raw.coHalfExtents(this.handle))}setHalfExtents(A){let Q=a.intoRaw(A);this.colliderSet.raw.coSetHalfExtents(this.handle,Q)}radius(){return this.colliderSet.raw.coRadius(this.handle)}setRadius(A){this.colliderSet.raw.coSetRadius(this.handle,A)}roundRadius(){return this.colliderSet.raw.coRoundRadius(this.handle)}setRoundRadius(A){this.colliderSet.raw.coSetRoundRadius(this.handle,A)}halfHeight(){return this.colliderSet.raw.coHalfHeight(this.handle)}setHalfHeight(A){this.colliderSet.raw.coSetHalfHeight(this.handle,A)}setVoxel(A,Q,B,Y){this.colliderSet.raw.coSetVoxel(this.handle,A,Q,B,Y),this._shape=null}propagateVoxelChange(A,Q,B,Y,J,C,X){this.colliderSet.raw.coPropagateVoxelChange(this.handle,A.handle,Q,B,Y,J,C,X),this._shape=null}combineVoxelStates(A,Q,B,Y){this.colliderSet.raw.coCombineVoxelStates(this.handle,A.handle,Q,B,Y),this._shape=null}vertices(){return this.colliderSet.raw.coVertices(this.handle)}indices(){return this.colliderSet.raw.coIndices(this.handle)}heightfieldHeights(){return this.colliderSet.raw.coHeightfieldHeights(this.handle)}heightfieldScale(){let A=this.colliderSet.raw.coHeightfieldScale(this.handle);return a.fromRaw(A)}heightfieldNRows(){return this.colliderSet.raw.coHeightfieldNRows(this.handle)}heightfieldNCols(){return this.colliderSet.raw.coHeightfieldNCols(this.handle)}parent(){return this._parent}friction(){return this.colliderSet.raw.coFriction(this.handle)}restitution(){return this.colliderSet.raw.coRestitution(this.handle)}density(){return this.colliderSet.raw.coDensity(this.handle)}mass(){return this.colliderSet.raw.coMass(this.handle)}volume(){return this.colliderSet.raw.coVolume(this.handle)}collisionGroups(){return this.colliderSet.raw.coCollisionGroups(this.handle)}solverGroups(){return this.colliderSet.raw.coSolverGroups(this.handle)}containsPoint(A){let Q=a.intoRaw(A),B=this.colliderSet.raw.coContainsPoint(this.handle,Q);return Q.free(),B}projectPoint(A,Q){let B=a.intoRaw(A),Y=JI.fromRaw(this.colliderSet.raw.coProjectPoint(this.handle,B,Q));return B.free(),Y}intersectsRay(A,Q){let B=a.intoRaw(A.origin),Y=a.intoRaw(A.dir),J=this.colliderSet.raw.coIntersectsRay(this.handle,B,Y,Q);return B.free(),Y.free(),J}castShape(A,Q,B,Y,J,C,X,G){let W=a.intoRaw(A),F=a.intoRaw(B),Z=hQ.intoRaw(Y),U=a.intoRaw(J),$=Q.intoRaw(),E=M4.fromRaw(this.colliderSet,this.colliderSet.raw.coCastShape(this.handle,W,$,F,Z,U,C,X,G));return W.free(),F.free(),Z.free(),U.free(),$.free(),E}castCollider(A,Q,B,Y,J,C){let X=a.intoRaw(A),G=a.intoRaw(B),W=CI.fromRaw(this.colliderSet,this.colliderSet.raw.coCastCollider(this.handle,X,Q.handle,G,Y,J,C));return X.free(),G.free(),W}intersectsShape(A,Q,B){let Y=a.intoRaw(Q),J=hQ.intoRaw(B),C=A.intoRaw(),X=this.colliderSet.raw.coIntersectsShape(this.handle,C,Y,J);return Y.free(),J.free(),C.free(),X}contactShape(A,Q,B,Y){let J=a.intoRaw(Q),C=hQ.intoRaw(B),X=A.intoRaw(),G=q4.fromRaw(this.colliderSet.raw.coContactShape(this.handle,X,J,C,Y));return J.free(),C.free(),X.free(),G}contactCollider(A,Q){return q4.fromRaw(this.colliderSet.raw.coContactCollider(this.handle,A.handle,Q))}castRay(A,Q,B){let Y=a.intoRaw(A.origin),J=a.intoRaw(A.dir),C=this.colliderSet.raw.coCastRay(this.handle,Y,J,Q,B);return Y.free(),J.free(),C}castRayAndGetNormal(A,Q,B){let Y=a.intoRaw(A.origin),J=a.intoRaw(A.dir),C=YI.fromRaw(this.colliderSet.raw.coCastRayAndGetNormal(this.handle,Y,J,Q,B));return Y.free(),J.free(),C}}(function(A){A[A.Density=0]="Density",A[A.Mass=1]="Mass",A[A.MassProps=2]="MassProps"})(RF||(RF={}));class BY{constructor(A){this.enabled=!0,this.shape=A,this.massPropsMode=RF.Density,this.density=1,this.friction=0.5,this.restitution=0,this.rotation=hQ.identity(),this.translation=a.zeros(),this.isSensor=!1,this.collisionGroups=4294967295,this.solverGroups=4294967295,this.frictionCombineRule=oV.Average,this.restitutionCombineRule=oV.Average,this.activeCollisionTypes=bM.DEFAULT,this.activeEvents=xM.NONE,this.activeHooks=fM.NONE,this.mass=0,this.centerOfMass=a.zeros(),this.contactForceEventThreshold=0,this.contactSkin=0,this.principalAngularInertia=a.zeros(),this.angularInertiaLocalFrame=hQ.identity()}static ball(A){let Q=new tM(A);return new BY(Q)}static capsule(A,Q){let B=new Qz(A,Q);return new BY(B)}static segment(A,Q){let B=new Bz(A,Q);return new BY(B)}static triangle(A,Q,B){let Y=new Yz(A,Q,B);return new BY(Y)}static roundTriangle(A,Q,B,Y){let J=new Jz(A,Q,B,Y);return new BY(J)}static polyline(A,Q){let B=new Cz(A,Q);return new BY(B)}static voxels(A,Q){let B=new Xz(A,Q);return new BY(B)}static trimesh(A,Q,B){let Y=new Gz(A,Q,B);return new BY(Y)}static cuboid(A,Q,B){let Y=new eM(A,Q,B);return new BY(Y)}static roundCuboid(A,Q,B,Y){let J=new Az(A,Q,B,Y);return new BY(J)}static heightfield(A,Q,B,Y,J){let C=new Wz(A,Q,B,Y,J);return new BY(C)}static cylinder(A,Q){let B=new Fz(A,Q);return new BY(B)}static roundCylinder(A,Q,B){let Y=new Zz(A,Q,B);return new BY(Y)}static cone(A,Q){let B=new $z(A,Q);return new BY(B)}static roundCone(A,Q,B){let Y=new Uz(A,Q,B);return new BY(Y)}static convexHull(A){let Q=new AI(A,null);return new BY(Q)}static convexMesh(A,Q){let B=new AI(A,Q);return new BY(B)}static roundConvexHull(A,Q){let B=new QI(A,null,Q);return new BY(B)}static roundConvexMesh(A,Q,B){let Y=new QI(A,Q,B);return new BY(Y)}setTranslation(A,Q,B){if(typeof A!="number"||typeof Q!="number"||typeof B!="number")throw TypeError("The translation components must be numbers.");return this.translation={x:A,y:Q,z:B},this}setRotation(A){return hQ.copy(this.rotation,A),this}setSensor(A){return this.isSensor=A,this}setEnabled(A){return this.enabled=A,this}setContactSkin(A){return this.contactSkin=A,this}setDensity(A){return this.massPropsMode=RF.Density,this.density=A,this}setMass(A){return this.massPropsMode=RF.Mass,this.mass=A,this}setMassProperties(A,Q,B,Y){return this.massPropsMode=RF.MassProps,this.mass=A,a.copy(this.centerOfMass,Q),a.copy(this.principalAngularInertia,B),hQ.copy(this.angularInertiaLocalFrame,Y),this}setRestitution(A){return this.restitution=A,this}setFriction(A){return this.friction=A,this}setFrictionCombineRule(A){return this.frictionCombineRule=A,this}setRestitutionCombineRule(A){return this.restitutionCombineRule=A,this}setCollisionGroups(A){return this.collisionGroups=A,this}setSolverGroups(A){return this.solverGroups=A,this}setActiveHooks(A){return this.activeHooks=A,this}setActiveEvents(A){return this.activeEvents=A,this}setActiveCollisionTypes(A){return this.activeCollisionTypes=A,this}setContactForceEventThreshold(A){return this.contactForceEventThreshold=A,this}}class Kv{constructor(A){this.raw=A||new T0,this.map=new BI,A&&A.forEachColliderHandle((Q)=>{this.map.set(Q,new dM(this,Q,null))})}free(){this.raw&&this.raw.free(),this.raw=void 0,this.map&&this.map.clear(),this.map=void 0}castClosure(A){return(Q)=>A?A(this.get(Q)):void 0}finalizeDeserialization(A){this.map.forEach((Q)=>Q.finalizeDeserialization(A))}createCollider(A,Q,B){let Y=B!=null&&B!=null;if(Y&&isNaN(B))throw Error("Cannot create a collider with a parent rigid-body handle that is not a number.");let J=Q.shape.intoRaw(),C=a.intoRaw(Q.translation),X=hQ.intoRaw(Q.rotation),G=a.intoRaw(Q.centerOfMass),W=a.intoRaw(Q.principalAngularInertia),F=hQ.intoRaw(Q.angularInertiaLocalFrame),Z=this.raw.createCollider(Q.enabled,J,C,X,Q.massPropsMode,Q.mass,G,W,F,Q.density,Q.friction,Q.restitution,Q.frictionCombineRule,Q.restitutionCombineRule,Q.isSensor,Q.collisionGroups,Q.solverGroups,Q.activeCollisionTypes,Q.activeHooks,Q.activeEvents,Q.contactForceEventThreshold,Q.contactSkin,Y,Y?B:0,A.raw);J.free(),C.free(),X.free(),G.free(),W.free(),F.free();let U=Y?A.get(B):null,$=new dM(this,Z,U,Q.shape);return this.map.set(Z,$),$}remove(A,Q,B,Y){this.raw.remove(A,Q.raw,B.raw,Y),this.unmap(A)}unmap(A){this.map.delete(A)}get(A){return this.map.get(A)}len(){return this.map.len()}contains(A){return this.get(A)!=null}forEach(A){this.map.forEach(A)}getAll(){return this.map.getAll()}}function D_Q(A,Q,B,Y){return new(B||(B=Promise))(function(J,C){function X(F){try{W(Y.next(F))}catch(Z){C(Z)}}function G(F){try{W(Y.throw(F))}catch(Z){C(Z)}}function W(F){var Z;F.done?J(F.value):(Z=F.value,Z instanceof B?Z:new B(function(U){U(Z)})).then(X,G)}W((Y=Y.apply(A,Q||[])).next())})}for(Vv={byteLength:function(A){var Q=Ce(A),B=Q[0],Y=Q[1];return 3*(B+Y)/4-Y},toByteArray:function(A){var Q,B,Y=Ce(A),J=Y[0],C=Y[1],X=new P_(function(F,Z,U){return 3*(Z+U)/4-U}(0,J,C)),G=0,W=C>0?J-4:J;for(B=0;B>16&255,X[G++]=Q>>8&255,X[G++]=255&Q;return C===2&&(Q=T9[A.charCodeAt(B)]<<2|T9[A.charCodeAt(B+1)]>>4,X[G++]=255&Q),C===1&&(Q=T9[A.charCodeAt(B)]<<10|T9[A.charCodeAt(B+1)]<<4|T9[A.charCodeAt(B+2)]>>2,X[G++]=Q>>8&255,X[G++]=255&Q),X},fromByteArray:function(A){for(var Q,B=A.length,Y=B%3,J=[],C=16383,X=0,G=B-Y;XG?G:X+C));return Y===1?(Q=A[B-1],J.push(A5[Q>>2]+A5[Q<<4&63]+"==")):Y===2&&(Q=(A[B-2]<<8)+A[B-1],J.push(A5[Q>>10]+A5[Q>>4&63]+A5[Q<<2&63]+"=")),J.join("")}},A5=[],T9=[],P_=typeof Uint8Array<"u"?Uint8Array:Array,nV="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",sG=0,T_=nV.length;sG0)throw Error("Invalid string. Length must be a multiple of 4");var B=A.indexOf("=");return B===-1&&(B=Q),[B,B===Q?0:4-B%4]}function N_Q(A,Q,B){for(var Y,J,C=[],X=Q;X>18&63]+A5[J>>12&63]+A5[J>>6&63]+A5[63&J]);return C.join("")}function L_Q(){return D_Q(this,void 0,void 0,function*(){yield Ve(Vv.toByteArray("AGFzbQEAAAAB6QykAWACf38AYAN/f38AYAR/f39/AGACf38Bf2ABfwF/YAN/f38Bf2ABfwBgBX9/f39/AGACf3wBf2AGf39/f31/AGAGf39/f39/AGABfwF9YAV/f399fwBgA39/fQBgBX9/f399AGADf3x/AGABfwF8YAR/f39/AX9gDH9/f39/f39/f399fwF/YAZ/f39/f30AYAR/f399AX9gAAF/YAR/f39/AX1gA39/fwF9YAN/f30Bf2ACf38BfGADf39/AX5gAn99AGAGf39/f39/AX9gAn98AX1gA398fQBgBH98f38AYAV/f39/fwF/YAd/f39/f39/AGACf38BfWACf3wBfGAIf39/f39/f38AYAF9AX1gAABgCX9/f39/f39/fwBgBH9+f38Bf2AIf39/f39/f30AYAR/f399AGADf398AGALf39/f39/f399fX8AYAh/f39/fX9/fwBgCX9/f39/fX9/fwBgBX9/fX9/AGAGf3x/f39/AGADf3x/AX9gA398fwF9YAN9fX0Bf2AGf31/f399AGAJf39/f39/fX9/AX9gBX98f39/AGAGf3x9fX19AGAFf3x9fX0AYAN/fX8AYAJ9fQF/YAF8AX9gBH99f38AYAt/f39/f39/f31/fwBgCn9/f39/f31/f38AYAZ/f319f38AYAt/f39/f39/fX9/fwBgCH9/f399fX9/AGAGf319f399AGAMf39/f31/f39/fX9/AGAPf39/f39/f39/fH98f3x/AGAPf39/f39/fX9/fH98f3x/AX9gBn9/f399fQBgBn99f3x/fwF/YAZ/fX98f38AYAV/fX1/fwBgAn5/AX9gBX9/fHx/AXxgBn9/fX9/fwBgA398fAF/YAR/fH1/AGAFf3x/fX0AYAJ/fABgAX0Bf2AEfX19fQF/YA5/f39/f39/f39/f39/fwBgB39/f39/f30AYA9/f39/f39/f39/f399fX8AYAt/f399f399f319fwBgCX99f39/f39/fwF/YAd/f39/f39/AX1gCn9/f39/f399fX8AYAt/f39/f39/f319fwF/YBJ/f39/f39/f39/f399f319fX0AYA9/f39/f39/f39/f39/f38AYAp/f39/f39/f39/AX9gC39/f39/f39/f39/AGAJf39/f39/fX9/AGASf39/f39/f399fX9/fH98f3x/AX9gB39/f39/f30Bf2Abf39/f319f39/f39/f39/f39/fX1/f399f39/AXxgEH9/f39/f31/f398f3x/fH8AYAh/fX9/f39/fwBgCH9/f39/e39/AGAbf39/f39/f31/f399fX1/f39/f39/f319f3x/AGAKf31/f39/f39/fwBgDH9/f399f39/f39/fwBgBn98f39/fQF/YAd/f39/f31/AX9gCn98f39/f399fX8Bf2AMf39/f39/f39/f39/AGANf39/f39/f3x/fH98fwBgC39/f399f39/f39/AGAHf39/f399fwF9YAh/fX99f31/fwBgBn9/f399fQF/YA1/f39/f39/fH98f3x/AX9gDH9/f39/f3x/fH98fwF/YAZ/f39/f30Bf2ANf31/f39/fH9/fH98fwBgBH9/fX8AYAl/f39/f39/f38BfWASf39/f39/f39/f39/f39/f39/AGAGf3x/f31/AX9gBX98f39/AX9gCX99f39/f398fwBgBn99f39/fwBgCn9/f39/f39/f38AYAd/fH1/f39/AGAGf3x/f31/AX1gAn9+AX9gBn98fX9/fwBgCH98f3x/fX1/AX9gBX98f399AX9gDX9/f39/f399fX19fX0AYAR/fH9/AX9gBX19fX9/AX9gA31/fwF/YAl/f39/f39+fn4AYAd/f39/f39/AX9gDX9/f39/f39/f39/f38AYAR/fHx9AX9gA398fwF8YAZ/fH99fX0AYAd/fH99fX19AGACf34AYAh/f39/f39/fwF/YAd/fH19fX1/AGAJf3x8f39/f39/AGAFf39/f30Bf2AGf3x9fX1/AGAGf3x8f39/AGAEf39+fwBgA39/fgF/YAV/fn9+fwBgA39+fgBgBH19fX8Bf2ADf399AX1gAn19AGAEf319fwBgBn9/fX19fQBgA319fwF/YAV/f3x/fwBgBX9/fn9/AGAEf35/fwBgAn19AX0CqwkgA3diZxVfX3diaW5kZ2VuX251bWJlcl9uZXcAOwN3YmcWX193YmluZGdlbl9ib29sZWFuX2dldAAEA3diZxpfX3diaW5kZ2VuX29iamVjdF9kcm9wX3JlZgAGA3diZxVfX3diaW5kZ2VuX251bWJlcl9nZXQAAAN3YmcWX193YmluZGdlbl9pc19mdW5jdGlvbgAEA3diZyRfX3diZ19yYXdyYXljb2xsaWRlcmludGVyc2VjdGlvbl9uZXcABAN3YmceX193YmdfcmF3Y29udGFjdGZvcmNlZXZlbnRfbmV3AAQDd2JnIl9fd2JnX3BlcmZvcm1hbmNlXzdhM2ZmZDBiMTdmNjYzYWQABAN3YmcXX193YmluZGdlbl9pc191bmRlZmluZWQABAN3YmcaX193Ymdfbm93XzJjOTVjOWRlMDEyOTMxNzMAEAN3YmcbX193YmluZGdlbl9vYmplY3RfY2xvbmVfcmVmAAQDd2JnIF9fd2JnX25ld25vYXJnc18xMDVlZDQ3MTQ3NWFhZjUwAAMDd2JnG19fd2JnX2NhbGxfNjcyYTRkMjE2MzRkNGEyNAADA3diZxtfX3diZ19jYWxsXzdjY2NkZDY5ZTA3OTFhZTIABQN3YmcbX193YmdfY2FsbF84MzNiZWQ1NzcwZWEyMDQxABEDd2JnG19fd2JnX2NhbGxfYjhhZGM4YjFkMGEwZDhlYgAgA3diZxtfX3diZ19iaW5kX2M4MzU5YjFjYmEwNTgxNjgAEQN3YmcdX193YmdfYnVmZmVyXzYwOWNjM2VlZTUxZWQxNTgABAN3YmcyX193Ymdfc3RhdGljX2FjY2Vzc29yX0dMT0JBTF9USElTXzU2NTc4YmU3ZTlmODMyYjAAFQN3YmcrX193Ymdfc3RhdGljX2FjY2Vzc29yX1NFTEZfMzdjNWQ0MThlNGJmNTgxOQAVA3diZy1fX3diZ19zdGF0aWNfYWNjZXNzb3JfV0lORE9XXzVkZTM3MDQzYTkxYTljNDAAFQN3YmctX193Ymdfc3RhdGljX2FjY2Vzc29yX0dMT0JBTF84OGE5MDJkMTNhNTU3ZDA3ABUDd2JnMV9fd2JnX25ld3dpdGhieXRlb2Zmc2V0YW5kbGVuZ3RoX2Q5N2U2MzdlYmUxNDVhOWEABQN3YmcaX193YmdfbmV3X2ExMjAwMmE3ZjkxYzc1YmUABAN3YmcaX193Ymdfc2V0XzY1NTk1YmRkODY4YjMwMDkAAQN3YmcdX193YmdfbGVuZ3RoX2E0NDYxOTNkYzIyYzEyZjgABAN3YmcxX193YmdfbmV3d2l0aGJ5dGVvZmZzZXRhbmRsZW5ndGhfZTZiN2U2OWFjZDRjNzM1NAAFA3diZxpfX3di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d2tpbmVtYXRpY2NoYXJhY3RlcmNvbnRyb2xsZXJfYXV0b3N0ZXBNaW5XaWR0aACnCz1yYXdraW5lbWF0aWNjaGFyYWN0ZXJjb250cm9sbGVyX2F1dG9zdGVwSW5jbHVkZXNEeW5hbWljQm9kaWVzAJgLL3Jhd2tpbmVtYXRpY2NoYXJhY3RlcmNvbnRyb2xsZXJfYXV0b3N0ZXBFbmFibGVkANgLLnJhd2tpbmVtYXRpY2NoYXJhY3RlcmNvbnRyb2xsZXJfZW5hYmxlQXV0b3N0ZXAAiAsvcmF3a2luZW1hdGljY2hhcmFjdGVyY29udHJvbGxlcl9kaXNhYmxlQXV0b3N0ZXAAlAwycmF3a2luZW1hdGljY2hhcmFjdGVyY29udHJvbGxlcl9tYXhTbG9wZUNsaW1iQW5nbGUA6Qs1cmF3a2luZW1hdGljY2hhcmFjdGVyY29udHJvbGxlcl9zZXRNYXhTbG9wZUNsaW1iQW5nbGUAlQwycmF3a2luZW1hdGljY2hhcmFjdGVyY29udHJvbGxlcl9taW5TbG9wZVNsaWRlQW5nbGUA6gs1cmF3a2luZW1hdGljY2hhcmFjdGVyY29udHJvbGxlcl9zZXRNaW5TbG9wZVNsaWRlQW5nbGUAlgw0cmF3a2luZW1hdGljY2hhcmFjdGVyY29udHJvbGxlcl9zbmFwVG9Hcm91bmREaXN0YW5jZQCoCzJyYXdraW5lbWF0aWNjaGFyYWN0ZXJjb250cm9sbGVyX2VuYWJsZVNuYXBUb0dyb3VuZADrCzNyYXdraW5lbWF0aWNjaGFyYWN0ZXJjb250cm9sbGVyX2Rpc2FibGVTbmFwVG9Hcm91bmQAlwwzcmF3a2luZW1hdGljY2hhcmFjdGVyY29udHJvbGxlcl9zbmFwVG9Hcm91bmRFbmFibGVkANkLN3Jhd2tpbmVtYXRpY2NoYXJhY3RlcmNvbnRyb2xsZXJfY29tcHV0ZUNvbGxpZGVyTW92ZW1lbnQAwgIwcmF3a2luZW1hdGljY2hhcmFjdGVyY29udHJvbGxlcl9jb21wdXRlZE1vdmVtZW50AM0IMHJhd2tpbmVtYXRpY2NoYXJhY3RlcmNvbnRyb2xsZXJfY29tcHV0ZWRHcm91bmRlZADsCzVyYXdraW5lbWF0aWNjaGFyYWN0ZXJjb250cm9sbGVyX251bUNvbXB1dGVkQ29sbGlzaW9ucwDtCzFyYXdraW5lbWF0aWNjaGFyYWN0ZXJjb250cm9sbGVyX2NvbXB1dGVkQ29sbGlzaW9uAMkGIF9fd2JnX3Jhd2NoYXJhY3RlcmNvbGxpc2lvbl9mcmVlAJ0JGXJhd2NoYXJhY3RlcmNvbGxpc2lvbl9uZXcAtQsccmF3Y2hhcmFjdGVyY29sbGlzaW9uX2hhbmRsZQDuCy1yYXdjaGFyYWN0ZXJjb2xsaXNpb25fdHJhbnNsYXRpb25EZWx0YUFwcGxpZWQAzggvcmF3Y2hhcmFjdGVyY29sbGlzaW9uX3RyYW5zbGF0aW9uRGVsdGFSZW1haW5pbmcAzwgZcmF3Y2hhcmFjdGVyY29sbGlzaW9uX3RvaQDvCyNyYXdjaGFyYWN0ZXJjb2xsaXNpb25fd29ybGRXaXRuZXNzMQDQCCNyYXdjaGFyYWN0ZXJjb2xsaXNpb25fd29ybGRXaXRuZXNzMgDLBSJyYXdjaGFyYWN0ZXJjb2xsaXNpb25fd29ybGROb3JtYWwxANEIInJhd2NoYXJhY3RlcmNvbGxpc2lvbl93b3JsZE5vcm1hbDIAhAYbX193YmdfcmF3cGlkY29udHJvbGxlcl9mcmVlAJ4JFHJhd3BpZGNvbnRyb2xsZXJfbmV3AMEKF3Jhd3BpZGNvbnRyb2xsZXJfc2V0X2twAKUIF3Jhd3BpZGNvbnRyb2xsZXJfc2V0X2tpAKYIF3Jhd3BpZGNvbnRyb2xsZXJfc2V0X2tkAKcIHnJhd3BpZGNvbnRyb2xsZXJfc2V0X2F4ZXNfbWFzawC2CyByYXdwaWRjb250cm9sbGVyX3Jlc2V0X2ludGVncmFscwDdCShyYXdwaWRjb250cm9sbGVyX2FwcGx5X2xpbmVhcl9jb3JyZWN0aW9uAKwDKXJhd3BpZGNvbnRyb2xsZXJfYXBwbHlfYW5ndWxhcl9jb3JyZWN0aW9uAK0DInJhd3BpZGNvbnRyb2xsZXJfbGluZWFyX2NvcnJlY3Rpb24AhAMjcmF3cGlkY29udHJvbGxlcl9hbmd1bGFyX2NvcnJlY3Rpb24AhQMtX193YmdfcmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9mcmVlAOMGJnJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfbmV3ALELOHJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfY3VycmVudF92ZWhpY2xlX3NwZWVkAPALKnJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfY2hhc3NpcwDxCzByYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX2luZGV4X3VwX2F4aXMA8gs0cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9zZXRfaW5kZXhfdXBfYXhpcwCYDDVyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX2luZGV4X2ZvcndhcmRfYXhpcwDzCzlyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3NldF9pbmRleF9mb3J3YXJkX2F4aXMAmQwscmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9hZGRfd2hlZWwA1AMtcmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9udW1fd2hlZWxzAPQLMXJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfdXBkYXRlX3ZlaGljbGUAiANEcmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9jaGFzc2lzX2Nvbm5lY3Rpb25fcG9pbnRfY3MA9AZIcmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9zZXRfd2hlZWxfY2hhc3Npc19jb25uZWN0aW9uX3BvaW50X2NzAM0FP3Jhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfd2hlZWxfc3VzcGVuc2lvbl9yZXN0X2xlbmd0aACpCkNyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3NldF93aGVlbF9zdXNwZW5zaW9uX3Jlc3RfbGVuZ3RoAPwIPnJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfd2hlZWxfbWF4X3N1c3BlbnNpb25fdHJhdmVsAKoKQnJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfc2V0X3doZWVsX21heF9zdXNwZW5zaW9uX3RyYXZlbAD9CC9yYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3doZWVsX3JhZGl1cwCrCjNyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3NldF93aGVlbF9yYWRpdXMA/gg9cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9zdXNwZW5zaW9uX3N0aWZmbmVzcwCsCkFyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3NldF93aGVlbF9zdXNwZW5zaW9uX3N0aWZmbmVzcwD/CD9yYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3doZWVsX3N1c3BlbnNpb25fY29tcHJlc3Npb24ArQpDcmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9zZXRfd2hlZWxfc3VzcGVuc2lvbl9jb21wcmVzc2lvbgCACT5yYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3doZWVsX3N1c3BlbnNpb25fcmVsYXhhdGlvbgCuCkJyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3NldF93aGVlbF9zdXNwZW5zaW9uX3JlbGF4YXRpb24AgQk9cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9tYXhfc3VzcGVuc2lvbl9mb3JjZQCvCkFyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3NldF93aGVlbF9tYXhfc3VzcGVuc2lvbl9mb3JjZQCCCS5yYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3doZWVsX2JyYWtlALAKMnJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfc2V0X3doZWVsX2JyYWtlAIMJMXJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfd2hlZWxfc3RlZXJpbmcAsQo1cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9zZXRfd2hlZWxfc3RlZXJpbmcAhAk1cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9lbmdpbmVfZm9yY2UAsgo5cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9zZXRfd2hlZWxfZW5naW5lX2ZvcmNlAIUJNXJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfd2hlZWxfZGlyZWN0aW9uX2NzAPUGOXJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfc2V0X3doZWVsX2RpcmVjdGlvbl9jcwDOBTByYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3doZWVsX2F4bGVfY3MA9gY0cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9zZXRfd2hlZWxfYXhsZV9jcwDPBTZyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3doZWVsX2ZyaWN0aW9uX3NsaXAAswo6cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl9zZXRfd2hlZWxfZnJpY3Rpb25fc2xpcACGCUByYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3doZWVsX3NpZGVfZnJpY3Rpb25fc3RpZmZuZXNzALQKRHJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfc2V0X3doZWVsX3NpZGVfZnJpY3Rpb25fc3RpZmZuZXNzAIcJMXJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfd2hlZWxfcm90YXRpb24AtQo4cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9mb3J3YXJkX2ltcHVsc2UAtgo1cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9zaWRlX2ltcHVsc2UAtwo5cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9zdXNwZW5zaW9uX2ZvcmNlALgKOnJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfd2hlZWxfY29udGFjdF9ub3JtYWxfd3MA9wY5cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9jb250YWN0X3BvaW50X3dzAPgGOnJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfd2hlZWxfc3VzcGVuc2lvbl9sZW5ndGgAuQo2cmF3ZHluYW1pY3JheWNhc3R2ZWhpY2xlY29udHJvbGxlcl93aGVlbF9oYXJkX3BvaW50X3dzAPkGNnJhd2R5bmFtaWNyYXljYXN0dmVoaWNsZWNvbnRyb2xsZXJfd2hlZWxfaXNfaW5fY29udGFjdADCCjZyYXdkeW5hbWljcmF5Y2FzdHZlaGljbGVjb250cm9sbGVyX3doZWVsX2dyb3VuZF9vYmplY3QAmQkXX193YmdfcmF3Y2Nkc29sdmVyX2ZyZWUAnwkccmF3aW1wdWxzZWpvaW50c2V0X2pvaW50VHlwZQCEByNyYXdpbXB1bHNlam9pbnRzZXRfam9pbnRCb2R5SGFuZGxlMQDhByNyYXdpbXB1bHNlam9pbnRzZXRfam9pbnRCb2R5SGFuZGxlMgDiBx9yYXdpbXB1bHNlam9pbnRzZXRfam9pbnRGcmFtZVgxANsGH3Jhd2ltcHVsc2Vqb2ludHNldF9qb2ludEZyYW1lWDIA3AYfcmF3aW1wdWxzZWpvaW50c2V0X2pvaW50QW5jaG9yMQCFBh9yYXdpbXB1bHNlam9pbnRzZXRfam9pbnRBbmNob3IyAIYGInJhd2ltcHVsc2Vqb2ludHNldF9qb2ludFNldEFuY2hvcjEA0gUicmF3aW1wdWxzZWpvaW50c2V0X2pvaW50U2V0QW5jaG9yMgDTBSdyYXdpbXB1bHNlam9pbnRzZXRfam9pbnRDb250YWN0c0VuYWJsZWQA4wcqcmF3aW1wdWxzZWpvaW50c2V0X2pvaW50U2V0Q29udGFjdHNFbmFibGVkALgIJXJhd2ltcHVsc2Vqb2ludHNldF9qb2ludExpbWl0c0VuYWJsZWQA/AYhcmF3aW1wdWxzZWpvaW50c2V0X2pvaW50TGltaXRzTWluAKIHIXJhd2ltcHVsc2Vqb2ludHNldF9qb2ludExpbWl0c01heACjByFyYXdpbXB1bHNlam9pbnRzZXRfam9pbnRTZXRMaW1pdHMAtQcrcmF3aW1wdWxzZWpvaW50c2V0X2pvaW50Q29uZmlndXJlTW90b3JNb2RlbACBBy5yYXdpbXB1bHNlam9pbnRzZXRfam9pbnRDb25maWd1cmVNb3RvclZlbG9jaXR5AMMHLnJhd2ltcHVsc2Vqb2ludHNldF9qb2ludENvbmZpZ3VyZU1vdG9yUG9zaXRpb24AxAcmcmF3aW1wdWxzZWpvaW50c2V0X2pvaW50Q29uZmlndXJlTW90b3IAxQcdX193YmdfcmF3aW1wdWxzZWpvaW50c2V0X2ZyZWUAyAcWcmF3aW1wdWxzZWpvaW50c2V0X25ldwDDCh5yYXdpbXB1bHNlam9pbnRzZXRfY3JlYXRlSm9pbnQAtgYZcmF3aW1wdWxzZWpvaW50c2V0X3JlbW92ZQCLCRZyYXdpbXB1bHNlam9pbnRzZXRfbGVuAPILG3Jhd2ltcHVsc2Vqb2ludHNldF9jb250YWlucwDSCCVyYXdpbXB1bHNlam9pbnRzZXRfZm9yRWFjaEpvaW50SGFuZGxlAIcGMnJhd2ltcHVsc2Vqb2ludHNldF9mb3JFYWNoSm9pbnRBdHRhY2hlZFRvUmlnaWRCb2R5AIwJI19fd2JnX3Jhd2ludGVncmF0aW9ucGFyYW1ldGVyc19mcmVlAKAJHHJhd2ludGVncmF0aW9ucGFyYW1ldGVyc19uZXcA0gsbcmF3aW50ZWdyYXRpb25wYXJhbWV0ZXJzX2R0APULJHJhd2ludGVncmF0aW9ucGFyYW1ldGVyc19jb250YWN0X2VycADSCjVyYXdpbnRlZ3JhdGlvbnBhcmFtZXRlcnNfbm9ybWFsaXplZEFsbG93ZWRMaW5lYXJFcnJvcgD2CzVyYXdpbnRlZ3JhdGlvbnBhcmFtZXRlcnNfbm9ybWFsaXplZFByZWRpY3Rpb25EaXN0YW5jZQD3CyxyYXdpbnRlZ3JhdGlvbnBhcmFtZXRlcnNfbnVtU29sdmVySXRlcmF0aW9ucwD4CyZyYXdpbnRlZ3JhdGlvbnBhcmFtZXRlcnNfbWluSXNsYW5kU2l6ZQD5CydyYXdpbnRlZ3JhdGlvbnBhcmFtZXRlcnNfbWF4Q2NkU3Vic3RlcHMA+gsfcmF3aW50ZWdyYXRpb25wYXJhbWV0ZXJzX3NldF9kdACaDDZyYXdpbnRlZ3JhdGlvbnBhcmFtZXRlcnNfc2V0X2NvbnRhY3RfbmF0dXJhbF9mcmVxdWVuY3kAmww5cmF3aW50ZWdyYXRpb25wYXJhbWV0ZXJzX3NldF9ub3JtYWxpemVkQWxsb3dlZExpbmVhckVycm9yAJwMOXJhd2ludGVncmF0aW9ucGFyYW1ldGVyc19zZXRfbm9ybWFsaXplZFByZWRpY3Rpb25EaXN0YW5jZQCdDDByYXdpbnRlZ3JhdGlvbnBhcmFtZXRlcnNfc2V0X251bVNvbHZlckl0ZXJhdGlvbnMAngwqcmF3aW50ZWdyYXRpb25wYXJhbWV0ZXJzX3NldF9taW5Jc2xhbmRTaXplAJ8MK3Jhd2ludGVncmF0aW9ucGFyYW1ldGVyc19zZXRfbWF4Q2NkU3Vic3RlcHMAoAwncmF3aW50ZWdyYXRpb25wYXJhbWV0ZXJzX3NldF9sZW5ndGhVbml0AKEMG19fd2JnX3Jhd2lzbGFuZG1hbmFnZXJfZnJlZQCkBxRyYXdpc2xhbmRtYW5hZ2VyX25ldwDTCy1yYXdpc2xhbmRtYW5hZ2VyX2ZvckVhY2hBY3RpdmVSaWdpZEJvZHlIYW5kbGUAlwYaX193YmdfcmF3Z2VuZXJpY2pvaW50X2ZyZWUAoQkXcmF3Z2VuZXJpY2pvaW50X2dlbmVyaWMAyAIWcmF3Z2VuZXJpY2pvaW50X3NwcmluZwCtBBRyYXdnZW5lcmljam9pbnRfcm9wZQC4BBlyYXdnZW5lcmljam9pbnRfc3BoZXJpY2FsALwEGXJhd2dlbmVyaWNqb2ludF9wcmlzbWF0aWMAtgIVcmF3Z2VuZXJpY2pvaW50X2ZpeGVkALoCGHJhd2dlbmVyaWNqb2ludF9yZXZvbHV0ZQDYAh5yYXdtdWx0aWJvZHlqb2ludHNldF9qb2ludFR5cGUAswYhcmF3bXVsdGlib2R5am9pbnRzZXRfam9pbnRGcmFtZVgxAJMGIXJhd211bHRpYm9keWpvaW50c2V0X2pvaW50RnJhbWVYMgCUBiFyYXdtdWx0aWJvZHlqb2ludHNldF9qb2ludEFuY2hvcjEAwAUhcmF3bXVsdGlib2R5am9pbnRzZXRfam9pbnRBbmNob3IyAMEFKXJhd211bHRpYm9keWpvaW50c2V0X2pvaW50Q29udGFjdHNFbmFibGVkAO8GLHJhd211bHRpYm9keWpvaW50c2V0X2pvaW50U2V0Q29udGFjdHNFbmFibGVkAJwHJ3Jhd211bHRpYm9keWpvaW50c2V0X2pvaW50TGltaXRzRW5hYmxlZACnBiNyYXdtdWx0aWJvZHlqb2ludHNldF9qb2ludExpbWl0c01pbgDDBiNyYXdtdWx0aWJvZHlqb2ludHNldF9qb2ludExpbWl0c01heADEBh9fX3diZ19yYXdtdWx0aWJvZHlqb2ludHNldF9mcmVlAMkHGHJhd211bHRpYm9keWpvaW50c2V0X25ldwDECiByYXdtdWx0aWJvZHlqb2ludHNldF9jcmVhdGVKb2ludAC3BhtyYXdtdWx0aWJvZHlqb2ludHNldF9yZW1vdmUAlAkdcmF3bXVsdGlib2R5am9pbnRzZXRfY29udGFpbnMArAgncmF3bXVsdGlib2R5am9pbnRzZXRfZm9yRWFjaEpvaW50SGFuZGxlAJAJNHJhd211bHRpYm9keWpvaW50c2V0X2ZvckVhY2hKb2ludEF0dGFjaGVkVG9SaWdpZEJvZHkAjQkdcmF3cmlnaWRib2R5c2V0X3JiVHJhbnNsYXRpb24AiAYacmF3cmlnaWRib2R5c2V0X3JiUm90YXRpb24A5QYXcmF3cmlnaWRib2R5c2V0X3JiU2xlZXAA+AgccmF3cmlnaWRib2R5c2V0X3JiSXNTbGVlcGluZwD1BxpyYXdyaWdpZGJvZHlzZXRfcmJJc01vdmluZwCeCCFyYXdyaWdpZGJvZHlzZXRfcmJOZXh0VHJhbnNsYXRpb24AiQYecmF3cmlnaWRib2R5c2V0X3JiTmV4dFJvdGF0aW9uAOYGIHJhd3JpZ2lkYm9keXNldF9yYlNldFRyYW5zbGF0aW9uALMJHXJhd3JpZ2lkYm9keXNldF9yYlNldFJvdGF0aW9uAK0JG3Jhd3JpZ2lkYm9keXNldF9yYlNldExpbnZlbAD8BRtyYXdyaWdpZGJvZHlzZXRfcmJTZXRBbmd2ZWwA/QUtcmF3cmlnaWRib2R5c2V0X3JiU2V0TmV4dEtpbmVtYXRpY1RyYW5zbGF0aW9uAPYHKnJhd3JpZ2lkYm9keXNldF9yYlNldE5leHRLaW5lbWF0aWNSb3RhdGlvbgCjBjZyYXdyaWdpZGJvZHlzZXRfcmJSZWNvbXB1dGVNYXNzUHJvcGVydGllc0Zyb21Db2xsaWRlcnMAlQYjcmF3cmlnaWRib2R5c2V0X3JiU2V0QWRkaXRpb25hbE1hc3MA9wctcmF3cmlnaWRib2R5c2V0X3JiU2V0QWRkaXRpb25hbE1hc3NQcm9wZXJ0aWVzALEDGHJhd3JpZ2lkYm9keXNldF9yYkxpbnZlbACKBhhyYXdyaWdpZGJvZHlzZXRfcmJBbmd2ZWwAiwYhcmF3cmlnaWRib2R5c2V0X3JiVmVsb2NpdHlBdFBvaW50AMIEInJhd3JpZ2lkYm9keXNldF9yYkxvY2tUcmFuc2xhdGlvbnMAtAYocmF3cmlnaWRib2R5c2V0X3JiU2V0RW5hYmxlZFRyYW5zbGF0aW9ucwDCBR9yYXdyaWdpZGJvZHlzZXRfcmJMb2NrUm90YXRpb25zALUGJXJhd3JpZ2lkYm9keXNldF9yYlNldEVuYWJsZWRSb3RhdGlvbnMAwwUgcmF3cmlnaWRib2R5c2V0X3JiRG9taW5hbmNlR3JvdXAA+AcjcmF3cmlnaWRib2R5c2V0X3JiU2V0RG9taW5hbmNlR3JvdXAA1AcbcmF3cmlnaWRib2R5c2V0X3JiRW5hYmxlQ2NkANMIJnJhd3JpZ2lkYm9keXNldF9yYlNldFNvZnRDY2RQcmVkaWN0aW9uAOYIFnJhd3JpZ2lkYm9keXNldF9yYk1hc3MAwAcZcmF3cmlnaWRib2R5c2V0X3JiSW52TWFzcwD5ByJyYXdyaWdpZGJvZHlzZXRfcmJFZmZlY3RpdmVJbnZNYXNzAIwGGnJhd3JpZ2lkYm9keXNldF9yYkxvY2FsQ29tAI0GGnJhd3JpZ2lkYm9keXNldF9yYldvcmxkQ29tAI4GJXJhd3JpZ2lkYm9keXNldF9yYkludlByaW5jaXBhbEluZXJ0aWEAjwYscmF3cmlnaWRib2R5c2V0X3JiUHJpbmNpcGFsSW5lcnRpYUxvY2FsRnJhbWUA5wYicmF3cmlnaWRib2R5c2V0X3JiUHJpbmNpcGFsSW5lcnRpYQC8BipyYXdyaWdpZGJvZHlzZXRfcmJFZmZlY3RpdmVXb3JsZEludkluZXJ0aWEAmAYpcmF3cmlnaWRib2R5c2V0X3JiRWZmZWN0aXZlQW5ndWxhckluZXJ0aWEAvQYYcmF3cmlnaWRib2R5c2V0X3JiV2FrZVVwAM8HHnJhd3JpZ2lkYm9keXNldF9yYklzQ2NkRW5hYmxlZAD6ByNyYXdyaWdpZGJvZHlzZXRfcmJTb2Z0Q2NkUHJlZGljdGlvbgD7Bx5yYXdyaWdpZGJvZHlzZXRfcmJOdW1Db2xsaWRlcnMA/AcacmF3cmlnaWRib2R5c2V0X3JiQ29sbGlkZXIAhQcacmF3cmlnaWRib2R5c2V0X3JiQm9keVR5cGUA/QcdcmF3cmlnaWRib2R5c2V0X3JiU2V0Qm9keVR5cGUA7AcZcmF3cmlnaWRib2R5c2V0X3JiSXNGaXhlZADQBx1yYXdyaWdpZGJvZHlzZXRfcmJJc0tpbmVtYXRpYwDRBxtyYXdyaWdpZGJvZHlzZXRfcmJJc0R5bmFtaWMA1QcfcmF3cmlnaWRib2R5c2V0X3JiTGluZWFyRGFtcGluZwD+ByByYXdyaWdpZGJvZHlzZXRfcmJBbmd1bGFyRGFtcGluZwD/ByJyYXdyaWdpZGJvZHlzZXRfcmJTZXRMaW5lYXJEYW1waW5nAOcII3Jhd3JpZ2lkYm9keXNldF9yYlNldEFuZ3VsYXJEYW1waW5nAOgIHHJhd3JpZ2lkYm9keXNldF9yYlNldEVuYWJsZWQA1AgbcmF3cmlnaWRib2R5c2V0X3JiSXNFbmFibGVkAIAIHnJhd3JpZ2lkYm9keXNldF9yYkdyYXZpdHlTY2FsZQCBCCFyYXdyaWdpZGJvZHlzZXRfcmJTZXRHcmF2aXR5U2NhbGUApQcdcmF3cmlnaWRib2R5c2V0X3JiUmVzZXRGb3JjZXMA1QgecmF3cmlnaWRib2R5c2V0X3JiUmVzZXRUb3JxdWVzANYIGnJhd3JpZ2lkYm9keXNldF9yYkFkZEZvcmNlAP4FHnJhd3JpZ2lkYm9keXNldF9yYkFwcGx5SW1wdWxzZQD/BRtyYXdyaWdpZGJvZHlzZXRfcmJBZGRUb3JxdWUAgAYkcmF3cmlnaWRib2R5c2V0X3JiQXBwbHlUb3JxdWVJbXB1bHNlAIEGIXJhd3JpZ2lkYm9keXNldF9yYkFkZEZvcmNlQXRQb2ludADLBCVyYXdyaWdpZGJvZHlzZXRfcmJBcHBseUltcHVsc2VBdFBvaW50AJQELHJhd3JpZ2lkYm9keXNldF9yYkFkZGl0aW9uYWxTb2x2ZXJJdGVyYXRpb25zAIIIL3Jhd3JpZ2lkYm9keXNldF9yYlNldEFkZGl0aW9uYWxTb2x2ZXJJdGVyYXRpb25zAOkIGnJhd3JpZ2lkYm9keXNldF9yYlVzZXJEYXRhAO0HHXJhd3JpZ2lkYm9keXNldF9yYlNldFVzZXJEYXRhAMoIG3Jhd3JpZ2lkYm9keXNldF9yYlVzZXJGb3JjZQDFBhxyYXdyaWdpZGJvZHlzZXRfcmJVc2VyVG9ycXVlAMYGGl9fd2JnX3Jhd3JpZ2lkYm9keXNldF9mcmVlAO4HE3Jhd3JpZ2lkYm9keXNldF9uZXcA1gofcmF3cmlnaWRib2R5c2V0X2NyZWF0ZVJpZ2lkQm9keQDeARZyYXdyaWdpZGJvZHlzZXRfcmVtb3ZlAPUCE3Jhd3JpZ2lkYm9keXNldF9sZW4A+wsYcmF3cmlnaWRib2R5c2V0X2NvbnRhaW5zAOoIJnJhd3JpZ2lkYm9keXNldF9mb3JFYWNoUmlnaWRCb2R5SGFuZGxlAJEJOXJhd3JpZ2lkYm9keXNldF9wcm9wYWdhdGVNb2RpZmllZEJvZHlQb3NpdGlvbnNUb0NvbGxpZGVycwD9BhhfX3diZ19yYXdicm9hZHBoYXNlX2ZyZWUAygcRcmF3YnJvYWRwaGFzZV9uZXcAlQkVcmF3YnJvYWRwaGFzZV9jYXN0UmF5AJICIXJhd2Jyb2FkcGhhc2VfY2FzdFJheUFuZEdldE5vcm1hbACTAiJyYXdicm9hZHBoYXNlX2ludGVyc2VjdGlvbnNXaXRoUmF5AOABI3Jhd2Jyb2FkcGhhc2VfaW50ZXJzZWN0aW9uV2l0aFNoYXBlANUBGnJhd2Jyb2FkcGhhc2VfcHJvamVjdFBvaW50ALcCJ3Jhd2Jyb2FkcGhhc2VfcHJvamVjdFBvaW50QW5kR2V0RmVhdHVyZQC7AiRyYXdicm9hZHBoYXNlX2ludGVyc2VjdGlvbnNXaXRoUG9pbnQAmAIXcmF3YnJvYWRwaGFzZV9jYXN0U2hhcGUA0wEkcmF3YnJvYWRwaGFzZV9pbnRlcnNlY3Rpb25zV2l0aFNoYXBlANkBL3Jhd2Jyb2FkcGhhc2VfY29sbGlkZXJzV2l0aEFhYmJJbnRlcnNlY3RpbmdBYWJiALwCHHJhd2NvbGxpZGVyc2V0X2NvVHJhbnNsYXRpb24AkAYZcmF3Y29sbGlkZXJzZXRfY29Sb3RhdGlvbgDoBiVyYXdjb2xsaWRlcnNldF9jb1RyYW5zbGF0aW9uV3J0UGFyZW50AOwFInJhd2NvbGxpZGVyc2V0X2NvUm90YXRpb25XcnRQYXJlbnQAuAYfcmF3Y29sbGlkZXJzZXRfY29TZXRUcmFuc2xhdGlvbgDWByhyYXdjb2xsaWRlcnNldF9jb1NldFRyYW5zbGF0aW9uV3J0UGFyZW50AMEHHHJhd2NvbGxpZGVyc2V0X2NvU2V0Um90YXRpb24AoAYlcmF3Y29sbGlkZXJzZXRfY29TZXRSb3RhdGlvbldydFBhcmVudADACRlyYXdjb2xsaWRlcnNldF9jb0lzU2Vuc29yAIMIGnJhd2NvbGxpZGVyc2V0X2NvU2hhcGVUeXBlAI4JIHJhd2NvbGxpZGVyc2V0X2NvSGFsZnNwYWNlTm9ybWFsAK4FHHJhd2NvbGxpZGVyc2V0X2NvSGFsZkV4dGVudHMAnQUfcmF3Y29sbGlkZXJzZXRfY29TZXRIYWxmRXh0ZW50cwDUBhdyYXdjb2xsaWRlcnNldF9jb1JhZGl1cwC5CBpyYXdjb2xsaWRlcnNldF9jb1NldFJhZGl1cwDOCRtyYXdjb2xsaWRlcnNldF9jb0hhbGZIZWlnaHQAuggecmF3Y29sbGlkZXJzZXRfY29TZXRIYWxmSGVpZ2h0AM8JHHJhd2NvbGxpZGVyc2V0X2NvUm91bmRSYWRpdXMAuwgfcmF3Y29sbGlkZXJzZXRfY29TZXRSb3VuZFJhZGl1cwDQCRpyYXdjb2xsaWRlcnNldF9jb1ZveGVsRGF0YQCoBhpyYXdjb2xsaWRlcnNldF9jb1ZveGVsU2l6ZQCxBRlyYXdjb2xsaWRlcnNldF9jb1NldFZveGVsAJYHJXJhd2NvbGxpZGVyc2V0X2NvUHJvcGFnYXRlVm94ZWxDaGFuZ2UArgkjcmF3Y29sbGlkZXJzZXRfY29Db21iaW5lVm94ZWxTdGF0ZXMAwQkZcmF3Y29sbGlkZXJzZXRfY29WZXJ0aWNlcwCpBhhyYXdjb2xsaWRlcnNldF9jb0luZGljZXMAqgYdcmF3Y29sbGlkZXJzZXRfY29UcmlNZXNoRmxhZ3MA3QYhcmF3Y29sbGlkZXJzZXRfY29IZWlnaHRGaWVsZEZsYWdzAN4GI3Jhd2NvbGxpZGVyc2V0X2NvSGVpZ2h0ZmllbGRIZWlnaHRzAKsGIXJhd2NvbGxpZGVyc2V0X2NvSGVpZ2h0ZmllbGRTY2FsZQCcBSFyYXdjb2xsaWRlcnNldF9jb0hlaWdodGZpZWxkTlJvd3MAvgYhcmF3Y29sbGlkZXJzZXRfY29IZWlnaHRmaWVsZE5Db2xzAL8GF3Jhd2NvbGxpZGVyc2V0X2NvUGFyZW50AJgHG3Jhd2NvbGxpZGVyc2V0X2NvU2V0RW5hYmxlZACmBxpyYXdjb2xsaWRlcnNldF9jb0lzRW5hYmxlZADXBx9yYXdjb2xsaWRlcnNldF9jb1NldENvbnRhY3RTa2luAOsIHHJhd2NvbGxpZGVyc2V0X2NvQ29udGFjdFNraW4AhAgZcmF3Y29sbGlkZXJzZXRfY29GcmljdGlvbgCFCBxyYXdjb2xsaWRlcnNldF9jb1Jlc3RpdHV0aW9uAIYIGHJhd2NvbGxpZGVyc2V0X2NvRGVuc2l0eQCfCBVyYXdjb2xsaWRlcnNldF9jb01hc3MAoAgXcmF3Y29sbGlkZXJzZXRfY29Wb2x1bWUAoQggcmF3Y29sbGlkZXJzZXRfY29Db2xsaXNpb25Hcm91cHMAuQcdcmF3Y29sbGlkZXJzZXRfY29Tb2x2ZXJHcm91cHMAugcccmF3Y29sbGlkZXJzZXRfY29BY3RpdmVIb29rcwCHCCVyYXdjb2xsaWRlcnNldF9jb0FjdGl2ZUNvbGxpc2lvblR5cGVzAIgIHXJhd2NvbGxpZGVyc2V0X2NvQWN0aXZlRXZlbnRzAIkIK3Jhd2NvbGxpZGVyc2V0X2NvQ29udGFjdEZvcmNlRXZlbnRUaHJlc2hvbGQAiggecmF3Y29sbGlkZXJzZXRfY29Db250YWluc1BvaW50AJIFGnJhd2NvbGxpZGVyc2V0X2NvQ2FzdFNoYXBlAJYCHXJhd2NvbGxpZGVyc2V0X2NvQ2FzdENvbGxpZGVyAM8DIHJhd2NvbGxpZGVyc2V0X2NvSW50ZXJzZWN0c1NoYXBlAO4CHXJhd2NvbGxpZGVyc2V0X2NvQ29udGFjdFNoYXBlAIQCIHJhd2NvbGxpZGVyc2V0X2NvQ29udGFjdENvbGxpZGVyAKwGHXJhd2NvbGxpZGVyc2V0X2NvUHJvamVjdFBvaW50AKQEHnJhd2NvbGxpZGVyc2V0X2NvSW50ZXJzZWN0c1JheQDSAxhyYXdjb2xsaWRlcnNldF9jb0Nhc3RSYXkAswMkcmF3Y29sbGlkZXJzZXRfY29DYXN0UmF5QW5kR2V0Tm9ybWFsAOgCGnJhd2NvbGxpZGVyc2V0X2NvU2V0U2Vuc29yANIHH3Jhd2NvbGxpZGVyc2V0X2NvU2V0UmVzdGl0dXRpb24A7AgccmF3Y29sbGlkZXJzZXRfY29TZXRGcmljdGlvbgDtCCRyYXdjb2xsaWRlcnNldF9jb0ZyaWN0aW9uQ29tYmluZVJ1bGUAiwgncmF3Y29sbGlkZXJzZXRfY29TZXRGcmljdGlvbkNvbWJpbmVSdWxlALwIJ3Jhd2NvbGxpZGVyc2V0X2NvUmVzdGl0dXRpb25Db21iaW5lUnVsZQCMCCpyYXdjb2xsaWRlcnNldF9jb1NldFJlc3RpdHV0aW9uQ29tYmluZVJ1bGUAvQgjcmF3Y29sbGlkZXJzZXRfY29TZXRDb2xsaXNpb25Hcm91cHMAkQcgcmF3Y29sbGlkZXJzZXRfY29TZXRTb2x2ZXJHcm91cHMAkgcfcmF3Y29sbGlkZXJzZXRfY29TZXRBY3RpdmVIb29rcwCtCCByYXdjb2xsaWRlcnNldF9jb1NldEFjdGl2ZUV2ZW50cwC+CChyYXdjb2xsaWRlcnNldF9jb1NldEFjdGl2ZUNvbGxpc2lvblR5cGVzAL8IGXJhd2NvbGxpZGVyc2V0X2NvU2V0U2hhcGUA0AUucmF3Y29sbGlkZXJzZXRfY29TZXRDb250YWN0Rm9yY2VFdmVudFRocmVzaG9sZADuCBtyYXdjb2xsaWRlcnNldF9jb1NldERlbnNpdHkA7wgYcmF3Y29sbGlkZXJzZXRfY29TZXRNYXNzAPAIInJhd2NvbGxpZGVyc2V0X2NvU2V0TWFzc1Byb3BlcnRpZXMAugMZX193YmdfcmF3Y29sbGlkZXJzZXRfZnJlZQCnBxJyYXdjb2xsaWRlcnNldF9uZXcAmwoScmF3Y29sbGlkZXJzZXRfbGVuAPwLF3Jhd2NvbGxpZGVyc2V0X2NvbnRhaW5zAPEIHXJhd2NvbGxpZGVyc2V0X2NyZWF0ZUNvbGxpZGVyAOYBFXJhd2NvbGxpZGVyc2V0X3JlbW92ZQCPBCRyYXdjb2xsaWRlcnNldF9mb3JFYWNoQ29sbGlkZXJIYW5kbGUAkgkaX193YmdfcmF3c2hhcGVjb250YWN0X2ZyZWUAogkZX193YmdfcmF3bmFycm93cGhhc2VfZnJlZQCyCBJyYXduYXJyb3dwaGFzZV9uZXcAmQshcmF3bmFycm93cGhhc2VfY29udGFjdF9wYWlyc193aXRoAJoJG3Jhd25hcnJvd3BoYXNlX2NvbnRhY3RfcGFpcgDfBiZyYXduYXJyb3dwaGFzZV9pbnRlcnNlY3Rpb25fcGFpcnNfd2l0aACbCSByYXduYXJyb3dwaGFzZV9pbnRlcnNlY3Rpb25fcGFpcgDvBx1fX3diZ19yYXdjb250YWN0bWFuaWZvbGRfZnJlZQCjCRhyYXdjb250YWN0cGFpcl9jb2xsaWRlcjEAmgsYcmF3Y29udGFjdHBhaXJfY29sbGlkZXIyAJsLInJhd2NvbnRhY3RwYWlyX251bUNvbnRhY3RNYW5pZm9sZHMAnAsecmF3Y29udGFjdHBhaXJfY29udGFjdE1hbmlmb2xkAPkIGXJhd2NvbnRhY3RtYW5pZm9sZF9ub3JtYWwAjQgbcmF3Y29udGFjdG1hbmlmb2xkX2xvY2FsX24xAI4IG3Jhd2NvbnRhY3RtYW5pZm9sZF9sb2NhbF9uMgCPCBxyYXdjb250YWN0bWFuaWZvbGRfc3Vic2hhcGUxAJ0LHHJhd2NvbnRhY3RtYW5pZm9sZF9zdWJzaGFwZTIAngsfcmF3Y29udGFjdG1hbmlmb2xkX251bV9jb250YWN0cwCfCyNyYXdjb250YWN0bWFuaWZvbGRfY29udGFjdF9sb2NhbF9wMQDrBiNyYXdjb250YWN0bWFuaWZvbGRfY29udGFjdF9sb2NhbF9wMgDsBh9yYXdjb250YWN0bWFuaWZvbGRfY29udGFjdF9kaXN0AJwKH3Jhd2NvbnRhY3RtYW5pZm9sZF9jb250YWN0X2ZpZDEAnQofcmF3Y29udGFjdG1hbmlmb2xkX2NvbnRhY3RfZmlkMgCeCiJyYXdjb250YWN0bWFuaWZvbGRfY29udGFjdF9pbXB1bHNlAJ8KLHJhd2NvbnRhY3RtYW5pZm9sZF9jb250YWN0X3RhbmdlbnRfaW1wdWxzZV94AKAKLHJhd2NvbnRhY3RtYW5pZm9sZF9jb250YWN0X3RhbmdlbnRfaW1wdWxzZV95AKEKJnJhd2NvbnRhY3RtYW5pZm9sZF9udW1fc29sdmVyX2NvbnRhY3RzAKALJ3Jhd2NvbnRhY3RtYW5pZm9sZF9zb2x2ZXJfY29udGFjdF9wb2ludADtBiZyYXdjb250YWN0bWFuaWZvbGRfc29sdmVyX2NvbnRhY3RfZGlzdACiCipyYXdjb250YWN0bWFuaWZvbGRfc29sdmVyX2NvbnRhY3RfZnJpY3Rpb24AgwotcmF3Y29udGFjdG1hbmlmb2xkX3NvbHZlcl9jb250YWN0X3Jlc3RpdHV0aW9uAIQKMnJhd2NvbnRhY3RtYW5pZm9sZF9zb2x2ZXJfY29udGFjdF90YW5nZW50X3ZlbG9jaXR5AI0HHV9fd2JnX3Jhd3BvaW50cHJvamVjdGlvbl9mcmVlAKQJGHJhd3BvaW50cHJvamVjdGlvbl9wb2ludADXCBtyYXdwb2ludHByb2plY3Rpb25faXNJbnNpZGUA/QslX193YmdfcmF3cG9pbnRjb2xsaWRlcnByb2plY3Rpb25fZnJlZQClCSlyYXdwb2ludGNvbGxpZGVycHJvamVjdGlvbl9jb2xsaWRlckhhbmRsZQD+CyByYXdwb2ludGNvbGxpZGVycHJvamVjdGlvbl9wb2ludADYCCNyYXdwb2ludGNvbGxpZGVycHJvamVjdGlvbl9pc0luc2lkZQD/CyZyYXdwb2ludGNvbGxpZGVycHJvamVjdGlvbl9mZWF0dXJlVHlwZQCADCRyYXdwb2ludGNvbGxpZGVycHJvamVjdGlvbl9mZWF0dXJlSWQAqQsdX193YmdfcmF3cmF5aW50ZXJzZWN0aW9uX2ZyZWUApgkcX193YmdfcmF3cmF5Y29sbGlkZXJoaXRfZnJlZQCnCRNfX3diZ19yYXdzaGFwZV9mcmVlAMYHD3Jhd3NoYXBlX2N1Ym9pZACJCxRyYXdzaGFwZV9yb3VuZEN1Ym9pZAD/Cg1yYXdzaGFwZV9iYWxsAKoLEnJhd3NoYXBlX2hhbGZzcGFjZQCdBhByYXdzaGFwZV9jYXBzdWxlAMUJEXJhd3NoYXBlX2N5bGluZGVyAKELFnJhd3NoYXBlX3JvdW5kQ3lsaW5kZXIAigsNcmF3c2hhcGVfY29uZQCiCxJyYXdzaGFwZV9yb3VuZENvbmUAiwsPcmF3c2hhcGVfdm94ZWxzAPAGGXJhd3NoYXBlX3ZveGVsc0Zyb21Qb2ludHMA8QYRcmF3c2hhcGVfcG9seWxpbmUA7gkQcmF3c2hhcGVfdHJpbWVzaACvCRRyYXdzaGFwZV9oZWlnaHRmaWVsZACfBRByYXdzaGFwZV9zZWdtZW50ALsFEXJhd3NoYXBlX3RyaWFuZ2xlAIwEFnJhd3NoYXBlX3JvdW5kVHJpYW5nbGUAigQTcmF3c2hhcGVfY29udmV4SHVsbADvCRhyYXdzaGFwZV9yb3VuZENvbnZleEh1bGwA6AkTcmF3c2hhcGVfY29udmV4TWVzaAC0CRhyYXdzaGFwZV9yb3VuZENvbnZleE1lc2gAsAkScmF3c2hhcGVfY2FzdFNoYXBlAJkBGHJhd3NoYXBlX2ludGVyc2VjdHNTaGFwZQCVAhVyYXdzaGFwZV9jb250YWN0U2hhcGUA1AEWcmF3c2hhcGVfY29udGFpbnNQb2ludACMAxVyYXdzaGFwZV9wcm9qZWN0UG9pbnQA5wIWcmF3c2hhcGVfaW50ZXJzZWN0c1JheQC9AhByYXdzaGFwZV9jYXN0UmF5ALACHHJhd3NoYXBlX2Nhc3RSYXlBbmRHZXROb3JtYWwAlAIaX193YmdfcmF3c2hhcGVjYXN0aGl0X2ZyZWUAqAkYcmF3c2hhcGVjYXN0aGl0X3dpdG5lc3MxANkIF3Jhd3NoYXBlY2FzdGhpdF9ub3JtYWwxANoIF3Jhd3NoYXBlY2FzdGhpdF9ub3JtYWwyANsIIl9fd2JnX3Jhd2NvbGxpZGVyc2hhcGVjYXN0aGl0X2ZyZWUAqQkmcmF3Y29sbGlkZXJzaGFwZWNhc3RoaXRfdGltZV9vZl9pbXBhY3QAgQwgcmF3Y29sbGlkZXJzaGFwZWNhc3RoaXRfd2l0bmVzczEA3AggcmF3Y29sbGlkZXJzaGFwZWNhc3RoaXRfd2l0bmVzczIA3QgPcmF3cm90YXRpb25fbmV3ALAMFHJhd3JvdGF0aW9uX2lkZW50aXR5AP4MDXJhd3JvdGF0aW9uX3cAggwOcmF3dmVjdG9yX3plcm8Arw0NcmF3dmVjdG9yX25ldwC+DA9yYXd2ZWN0b3Jfc2V0X3kAogwPcmF3dmVjdG9yX3NldF96AKMMDXJhd3ZlY3Rvcl94eXoA0QkNcmF3dmVjdG9yX3l4egDSCQ1yYXd2ZWN0b3Jfenh5ANMJDXJhd3ZlY3Rvcl94enkA1AkNcmF3dmVjdG9yX3l6eADVCQ1yYXd2ZWN0b3Jfenl4ANYJFnJhd3NkcG1hdHJpeDNfZWxlbWVudHMAogghX193YmdfcmF3ZGVidWdyZW5kZXJwaXBlbGluZV9mcmVlAMsHGnJhd2RlYnVncmVuZGVycGlwZWxpbmVfbmV3AOkJH3Jhd2RlYnVncmVuZGVycGlwZWxpbmVfdmVydGljZXMA8ggdcmF3ZGVidWdyZW5kZXJwaXBlbGluZV9jb2xvcnMA8wgdcmF3ZGVidWdyZW5kZXJwaXBlbGluZV9yZW5kZXIAjgIYX193YmdfcmF3ZXZlbnRxdWV1ZV9mcmVlAMwHH19fd2JnX3Jhd2NvbnRhY3Rmb3JjZWV2ZW50X2ZyZWUAqgkecmF3Y29udGFjdGZvcmNlZXZlbnRfY29sbGlkZXIyAIMMIHJhd2NvbnRhY3Rmb3JjZWV2ZW50X3RvdGFsX2ZvcmNlAN4IKnJhd2NvbnRhY3Rmb3JjZWV2ZW50X3RvdGFsX2ZvcmNlX21hZ25pdHVkZQCEDChyYXdjb250YWN0Zm9yY2VldmVudF9tYXhfZm9yY2VfZGlyZWN0aW9uAN8IKHJhd2NvbnRhY3Rmb3JjZWV2ZW50X21heF9mb3JjZV9tYWduaXR1ZGUAhQwRcmF3ZXZlbnRxdWV1ZV9uZXcA0woicmF3ZXZlbnRxdWV1ZV9kcmFpbkNvbGxpc2lvbkV2ZW50cwC7CSVyYXdldmVudHF1ZXVlX2RyYWluQ29udGFjdEZvcmNlRXZlbnRzALwJE3Jhd2V2ZW50cXVldWVfY2xlYXIA5AcdX193YmdfcmF3cGh5c2ljc3BpcGVsaW5lX2ZyZWUAzQcWcmF3cGh5c2ljc3BpcGVsaW5lX25ldwCoBCdyYXdwaHlzaWNzcGlwZWxpbmVfc2V0X3Byb2ZpbGVyX2VuYWJsZWQAjgwmcmF3cGh5c2ljc3BpcGVsaW5lX2lzX3Byb2ZpbGVyX2VuYWJsZWQAhgwecmF3cGh5c2ljc3BpcGVsaW5lX3RpbWluZ19zdGVwAIwLLXJhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfY29sbGlzaW9uX2RldGVjdGlvbgDaCiVyYXdwaHlzaWNzcGlwZWxpbmVfdGltaW5nX2Jyb2FkX3BoYXNlANsKJnJhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfbmFycm93X3BoYXNlANwKIHJhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfc29sdmVyAN0KK3Jhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfdmVsb2NpdHlfYXNzZW1ibHkAjQstcmF3cGh5c2ljc3BpcGVsaW5lX3RpbWluZ192ZWxvY2l0eV9yZXNvbHV0aW9uAN4KKXJhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfdmVsb2NpdHlfdXBkYXRlAN8KLHJhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfdmVsb2NpdHlfd3JpdGViYWNrAI4LHXJhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfY2NkAOAKLXJhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfY2NkX3RvaV9jb21wdXRhdGlvbgCPCylyYXdwaHlzaWNzcGlwZWxpbmVfdGltaW5nX2NjZF9icm9hZF9waGFzZQCQCypyYXdwaHlzaWNzcGlwZWxpbmVfdGltaW5nX2NjZF9uYXJyb3dfcGhhc2UAkQskcmF3cGh5c2ljc3BpcGVsaW5lX3RpbWluZ19jY2Rfc29sdmVyAJILLXJhd3BoeXNpY3NwaXBlbGluZV90aW1pbmdfaXNsYW5kX2NvbnN0cnVjdGlvbgDhCiZyYXdwaHlzaWNzcGlwZWxpbmVfdGltaW5nX3VzZXJfY2hhbmdlcwCTCxdyYXdwaHlzaWNzcGlwZWxpbmVfc3RlcADGASFyYXdwaHlzaWNzcGlwZWxpbmVfc3RlcFdpdGhFdmVudHMAuAEfX193YmdfcmF3ZGVzZXJpYWxpemVkd29ybGRfZnJlZQDwByByYXdkZXNlcmlhbGl6ZWR3b3JsZF90YWtlR3Jhdml0eQCWCC5yYXdkZXNlcmlhbGl6ZWR3b3JsZF90YWtlSW50ZWdyYXRpb25QYXJhbWV0ZXJzAOkFJnJhd2Rlc2VyaWFsaXplZHdvcmxkX3Rha2VJc2xhbmRNYW5hZ2VyAJ4GI3Jhd2Rlc2VyaWFsaXplZHdvcmxkX3Rha2VCcm9hZFBoYXNlAOUHJHJhd2Rlc2VyaWFsaXplZHdvcmxkX3Rha2VOYXJyb3dQaGFzZQDgBh9yYXdkZXNlcmlhbGl6ZWR3b3JsZF90YWtlQm9kaWVzAOQGInJhd2Rlc2VyaWFsaXplZHdvcmxkX3Rha2VDb2xsaWRlcnMAsgcmcmF3ZGVzZXJpYWxpemVkd29ybGRfdGFrZUltcHVsc2VKb2ludHMAvAUocmF3ZGVzZXJpYWxpemVkd29ybGRfdGFrZU11bHRpYm9keUpvaW50cwC9BSVyYXdzZXJpYWxpemF0aW9ucGlwZWxpbmVfc2VyaWFsaXplQWxsAMABJ3Jhd3NlcmlhbGl6YXRpb25waXBlbGluZV9kZXNlcmlhbGl6ZUFsbADQBhxyYXdjb2xsaWRlcnNldF9pc0hhbmRsZVZhbGlkAPEIHHJhd3JheWludGVyc2VjdGlvbl9mZWF0dXJlSWQAqQskcmF3cmF5Y29sbGlkZXJpbnRlcnNlY3Rpb25fZmVhdHVyZUlkAKkLNXJhd2ludGVncmF0aW9ucGFyYW1ldGVyc19zZXRfbnVtSW50ZXJuYWxQZ3NJdGVyYXRpb25zAJgMD3Jhd3ZlY3Rvcl9zZXRfeACaDA5yZXNlcnZlX21lbW9yeQC4CyJyYXdraW5lbWF0aWNjaGFyYWN0ZXJjb250cm9sbGVyX3VwAM4IF3Jhd3NoYXBlY29udGFjdF9ub3JtYWwyAM4IFnJhd3NoYXBlY29udGFjdF9wb2ludDEA1wgWcmF3c2hhcGVjb250YWN0X3BvaW50MgDcCBlyYXdyYXlpbnRlcnNlY3Rpb25fbm9ybWFsANwIIXJhd3JheWNvbGxpZGVyaW50ZXJzZWN0aW9uX25vcm1hbADcCBdyYXdzaGFwZWNvbnRhY3Rfbm9ybWFsMQDdCB9yYXdjb2xsaWRlcnNoYXBlY2FzdGhpdF9ub3JtYWwxAM4IH3Jhd2NvbGxpZGVyc2hhcGVjYXN0aGl0X25vcm1hbDIAzwgYcmF3c2hhcGVjYXN0aGl0X3dpdG5lc3MyAN4IMXJhd2ludGVncmF0aW9ucGFyYW1ldGVyc19udW1JbnRlcm5hbFBnc0l0ZXJhdGlvbnMA8gsYcmF3c2hhcGVjb250YWN0X2Rpc3RhbmNlAOkLHnJhd3JheWludGVyc2VjdGlvbl9mZWF0dXJlVHlwZQCADClyYXdyYXljb2xsaWRlcmludGVyc2VjdGlvbl9jb2xsaWRlckhhbmRsZQD+CyFyYXdyYXlpbnRlcnNlY3Rpb25fdGltZV9vZl9pbXBhY3QAgQwmcmF3cmF5Y29sbGlkZXJpbnRlcnNlY3Rpb25fZmVhdHVyZVR5cGUAgAwgcmF3cmF5Y29sbGlkZXJoaXRfY29sbGlkZXJIYW5kbGUA7gspcmF3cmF5Y29sbGlkZXJpbnRlcnNlY3Rpb25fdGltZV9vZl9pbXBhY3QAgQwecmF3c2hhcGVjYXN0aGl0X3RpbWVfb2ZfaW1wYWN0APULJnJhd2NvbGxpZGVyc2hhcGVjYXN0aGl0X2NvbGxpZGVySGFuZGxlAO4LHnJhd3JheWNvbGxpZGVyaGl0X3RpbWVPZkltcGFjdACBDA1yYXdyb3RhdGlvbl94APULDXJhd3JvdGF0aW9uX3kA5gsNcmF3cm90YXRpb25fegCBDAtyYXd2ZWN0b3JfeAD1CwtyYXd2ZWN0b3JfeQDmCwtyYXd2ZWN0b3JfegCBDB5yYXdjb250YWN0Zm9yY2VldmVudF9jb2xsaWRlcjEA7gsjcmF3aW50ZWdyYXRpb25wYXJhbWV0ZXJzX2xlbmd0aFVuaXQAhAwZX193YmdfcmF3Y29udGFjdHBhaXJfZnJlZQCjCSVfX3diZ19yYXdyYXljb2xsaWRlcmludGVyc2VjdGlvbl9mcmVlAKUJFl9fd2JnX3Jhd3JvdGF0aW9uX2ZyZWUApAkUX193YmdfcmF3dmVjdG9yX2ZyZWUApwkYX193YmdfcmF3c2RwbWF0cml4M19mcmVlAKYJI19fd2JnX3Jhd3NlcmlhbGl6YXRpb25waXBlbGluZV9mcmVlAJ8JEHJhd2NjZHNvbHZlcl9uZXcArg0ccmF3c2VyaWFsaXphdGlvbnBpcGVsaW5lX25ldwCuDRNfX3diaW5kZ2VuX2V4cG9ydF8wAJwOH19fd2JpbmRnZW5fYWRkX3RvX3N0YWNrX3BvaW50ZXIA9A4TX193YmluZGdlbl9leHBvcnRfMQDzDRNfX3diaW5kZ2VuX2V4cG9ydF8yAKENCdwRAQBBAQv3CIkO4wK8DLAP5Q75DvcO9Q72Dv0M+g6vDLQLng2eDbAFsAXlDMEP+wj7COQD5QOUB/sO5wmr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IAEgCUEYayILNgIEIAEgAkEYajYCACALQQNNBEAgA0EAOgCTDCADQSU7AJEMIANBADYClAwgA0EBOgCQDCADQZAMahCfDQwBCyACKAAUIUQgASAJQRxrIgs2AgQgASACQRxqNgIAIAtBA00EQCADQQA6AJMMIANBJTsAkQwgA0EANgKUDCADQQE6AJAMIANBkAxqEJ8NDAELIAIoABghRSABIAlBIGsiCzYCBCABIAJBIGo2AgAgA0ELNgL0AiALQQNNBEAgA0EAOgCTDCADQSU7AJEMIANBADYClAwgA0EBOgCQDCADQZAMahCfDQwBCyACKAAcIUYgASAJQSRrNgIEIAEgAkEkajYCACACKAAgIUcgA0GQDGoiCSADQfACaiILELoJIAMoApQMIkggAygCkAwiCEECRg0AGiAIQQFxBEAgCSALELoJIAMoApQMIkkgAygCkAwiCEECRg0BGgJAIAhBAXEEQCAJIAsQugkgAygClAwhOSADKAKQDCICQQJHDQEgOQwDC0EHQaS1wQBBkK3BABCoCgwCCwJAIAJBAXEEQCADQZAMaiADQfACahC6CSADKAKUDCE6IAMoApAMIgJBAkcNASA6DAMLQQhBpLXBAEGQrcEAEKgKDAILAkAgAkEBcQRAIANBkAxqIANB8AJqELoJIAMoApQMITsgAygCkAwiAkECRw0BIDsMAwtBCUGktcEAQZCtwQAQqAoMAgsCQCACQQFxBEAgA0GQDGogA0HwAmoQ5AggAygClAwhPCADKAKQDCICQQJHDQEgPAwDC0EKQaS1wQBBkK3BABCoCgwCCwJAIAJBAXEEQCADQZAMaiADQfACahDkCCADKAKUDCE9IAMoApAMIgJBAkcNASA9DAMLQQtBpLXBAEGQrcEAEKgKDAILAkAgAkEBcQRAIANBkAxqIANB8AJqEOQIIAMoApQMIT4gAygCkAwiAkECRw0BID4MAwtBDEGktcEAQZCtwQAQqAoMAgsCQCACQQFxBEAgA0GQDGogA0HwAmoQ5AggAygClAwhPyADKAKQDCICQQJHDQEgPwwDC0ENQaS1wQBBkK3BABCoCgwCCwJAIAJBAXEEQCADQZAMaiADQfACahDkCCADKAKUDCFAIAMoApAMIgJBAkcNASBADAMLQQ5BpLXBAEGQrcEAEKgKDAILAkAgAkEBcQRAIANB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DQALIANCgcoANwOYCiADQZgKahCfDSECDA0LIANBADoAmwogA0ElOwCZCiADQQA2ApwKIANBAToAmAogA0GYCmoQnw0hAgwMCyADQQA6AJsKIANBJTsAmQogA0EANgKcCiADQQE6AJgKIANBmApqEJ8NIQIMCwsgA0EAOgCbCiADQSU7AJkKIANBADYCnAogA0EBOgCYCiADQZgKahCfDSECDAoLIANBADoAmwogA0ElOwCZCiADQQA2ApwKIANBAToAmAogA0GYCmoQnw0hAgwJCyADQQA6AJsKIANBJTsAmQogA0EANgKcCiADQQE6AJgKIANBmApqEJ8NIQIMCAsgA0EAOgCbCiADQSU7AJkKIANBADYCnAogA0EBOgCYCiADQZgKahCfDSECDAcLIANBADoAmwogA0ElOwCZCiADQQA2ApwKIANBAToAmAogA0GYCmoQnw0hAgwGCyADQQA6AJsKIANBJTsAmQogA0EANgKcCiADQQE6AJgKIANBmApqEJ8NIQIMBQsgGyECDAQLIANBADoAmwogA0ElOwCZCiADQQA2ApwKIANBAToAmAogA0GYCmoQnw0hFAwBC0EEQfTXwQBBkK3BABCoCiEBIABBAjYCxAcgACABNgIADA4LIBoEQCAaQTBBBBDoDgsgFCECDAELIANBADoAmwogA0ElOwCZCiADQQA2ApwKIANBAToAmAogA0GYCmoQnw0hAgsgAygC7BEhCSAQBEAgCSEBA0ACQCABKAIARQ0AIAFBxAJqKAIAIgsEQCALQTBBBBDoDgsgAUHoAmooAgAiC0UNACABQewCaigCACALQQN0QQQQ6A4LIAFBgANqIQEgEEEBayIQDQALCyADKALoESIBRQ0EIAkgAUGAA2xBEBDoDgwECwJAAkACQAJAIAwoAgQiAkEETwRAIAwgAkEEayIJNgIEIAwgDCgCACIBQQRqNgIAIAlFBEAgA0KBygA3A5gKIANBmApqEJ8NIQIMBAsgATUAACFmIAwgAkEFayITNgIEIAwgAUEFaiIaNgIAAkACQCABLQAEIg4OAgQAAQsgCUEESw0CIANCgcoANwOYCiADQZgKahCfDSECDAQLQQxBBBCRDiICRQ0bIAIgDjYCBCACQYSAgIB4NgIADAMLIANCgcoANwOYCiADQZgKahCfDSECDAILIAwgAkEJayITNgIEIAwgAUEJaiIaNgIAIAEoAAUhBkEBIQ4LIBNBB00EQCADQoHKADcDmAogA0GYCmoQnw0hAgwBCyAMIBNBCGs2AgQgDCAaQQhqNgIAIBopAAAiY0KAgICAEFQNASADQQE6AJgKIAMgYzcDoAogA0GYCmogA0GwCWpBjKzBABDvCiECCyAQBEAgCCEBA0ACQCABKAIARQ0AIAFBxAJqKAIAIgkEQCAJQTBBBBDoDgsgAUHoAmooAgAiCUUNACABQewCaigCACAJQQN0QQQQ6A4LIAFBgANqIQEgEEEBayIQDQALCyALRQ0EIAggC0GAA2xBEBDoDgwECyADQQI2ArQJIAMgDDYCsAkgA0GYCmogA0GwCWoQ3QMgAygCnAoiByECIAMoApgKIglBgYCAgHhGDQIgCUGAgICAeEYNASADKAK0CUUEQEEBQYy3wQBBkK3BABCoCiECIAkEQCAHIAlBA3RBBBDoDgsMAwsgAygCoAohFCMAQfAAayIBJAAgA0GQDGoiAv0MAAAAAAAAAAAAAAAAAAAAAP0LBEAgAkHQAGpCADcDACABQThqIgT9DAAAAAAAAAAAAAAAAAAAAAD9CwIQIAT9DAAAAAAAAAAAAAAAAAAAgD/9CwIAIARBKGpBADYCACAEQSBqQgA3AgAgAUEYav0MAAAAAAAAAAAAAAAAAAAAAP0LAwAgAUEoav0MAAAAAAAAAAAAAAAAAAAAAP0LAwAgAkIANwK8ASACQcQBav0MAAAAAAAAAAAAAAAAAAAAAP0LAgAgAkHUAWpBADoAACABQQA2AmQgAUEAOgBoIAH9DAAAAAAAAAAAAAAAAAAAAAD9CwMIIAJB8ABqQQBByAD8CwAgAkGAgID8AzYCWCAC/QwAAAAAAAAAAAAAAAAAAIA//QsEMCAC/Qz///////////////8AAAAA/QsEACAC/QwAAAAAAAAAAAAAAAAAAAAA/QsCXCACQewAakEANgIAIAJBgICA/AM2ArgBIAJB2AFqIAFBCGpB5AD8CgAAIAJBADYC2AIgAkH////7BzYCICACQgA3AiQgAkEsakEAOwEAIAJCBDcC3AIgAkEAOgDUAiAC/QzNzMw+AAAAPwAAAEAAAAAA/QsCxAIgAkEBOgDmAiACQQA7AeQCIAJC/wE3ArwCIAL9DAAAAAAAAAAAAAAAAAAAAAD9CwQQIAFB8ABqJAAgA0GgD2oiBCBjQiCGIGaENwMAIAMgEDYCnA8gAyAINgKYDyADIAs2ApQPIAMgBjYCkA8gAyAUNgKIDyADIAc2AoQPIAMgCTYCgA8gAygCkAwhASADQbgGaiACQQRyQfgC/AoAACADQaAGaiAE/QAEAP0LBAAgAyAD/QAEkA/9CwSQBgsCQAJAAn8CQAJ/AkACfwJAIA5BAkcEQCADQfACaiItQQRyIANBuAZqQfgC/AoAACADQYAGaiADQaAGav0ABAD9CwQAIAMgDjYC7AUgAyABNgLwAiADIAP9AASQBv0LBPAFIANBkAxqIQggA0FAayIFIQtBACECQQAhAUEAISFBACEJQQAhCkEAIRBBACEWQQAhG0EAIQxBACETQgAhZkEAIR1BACEaQQAhFUEAIQZCACFoQQAhJUEAISRBACEoQQAhJ0EAISlBACEgQQAhNUEAISZBACExQwAAAAAhf0EAITJBACEuQQAhI0EAITZBACE0QQAhLCMAQfABayIHJAACQCAFKAIEIgRFBEAgCEECNgIADAELIAsgBEEBazYCBAJ/IAsoAgAiDSgCBCILQQdNBEAgB0KBygA3A6gBQQEhFCAHQagBahCfDQwBCyANIAtBCGs2AgQgDSANKAIAIgtBCGo2AgAgByALKQAAEKgIIAcoAgAhFCAHKAIECyELAkACQCAUQQFxBEAgCyEBDAELAkAgC0UEQEEQIQkMAQsCQAJ/AkACQAJAAkACQAJAAkACQAJAQcUuIAsgC0HFLk8bIgRBsAFsIhRBEBCRDiIMBEAgB0EANgIUIAcgDDYCECAHIAQ2AgwgB0GoAWoiBEEIaiERIARBBGohDwNAIA0oAgQiFEEDTQRAIAdCgcoANwOoASAHQagBahCfDSEBDA0LIA0gFEEEayIONgIEIA0gDSgCACIEQQRqNgIAAkACQAJAAkACQCAEKAAAIhkOAgIBAAsgB0EBOgCoASAHIBmtNwOwASAHQagBakHIr8EAQZCtwQAQ7wohAQwQCyAOQQRPBEAgDSAUQQhrIgE2AgQgDSAEQQhqNgIAIAQoAAQhHyAHQQo2AoQBIAcgDTYCgAEgAUEDTQRAIAdCgcoANwOoASAHQagBahCfDSEBIAcoAhAhDAwRCyANIBRBDGs2AgQgDSAEQQxqNgIAQQEhJQJAAkACQCAEKAAIIgEOAgECAAsgB0EBOgCoASAHIAGtNwOwASAHQagBakHIr8EAQZCtwQAQ7wohASAHKAIQIQwMEgtBACElCyAHQagBaiICIAdBgAFqEJYGIAcoAqwBIgEgBygCqAFBAUYNDxoCQAJAIAEEQCAHIAcoArABIik2AowBIAcgATYCiAEgBygChAEiEkUNCSAHIBJBAWsiDjYChAEgBygCgAEiBCgCBCIJQQNNBEAgB0KBygA3A6gBIAIQnw0hAgwSCyAEIAlBBGsiFDYCBCAEIAQoAgAiAkEEajYCAAJAAkACQAJAAkAgAigAACIaDgMCAwEACyAHQQE6AKgBIAcgGq03A7ABIAdBqAFqQcy0wQBBkK3BABDvCiECDBULIAdBqAFqIAQQ5QIgBygCqAENAkEsQQQQkQ4iGw0EQQRBLEH4ysQAKAIAIgBBzAggABsRAAAACyAUQQRJDRIgBCAJQQhrNgIEIAQgAkEIajYCACACKAAEIRsMBAsgFEEESQ0QIAQgCUEIazYCBCAEIAJBCGo2AgAgAigABCEbDAMLIAcoAqwBIQIMEQtBAUHwr8EAQZCtwQAQqAoMEQsgGyAP/QACAP0LAgAgG0EoaiAPQShqKAIANgIAIBtBIGogD0EgaikCADcCACAbQRBqIA9BEGr9AAIA/QsCAAsCQAJAAkACQAJAAkACQAJAAkACQAJAIA4EQCAHIBJBAmsiAjYChAEgBCgCBCIUQQRJBEAgB0KBygA3A6gBIAdBqAFqEJ8NIQIMGAsgBCAUQQRrIg42AgQgBCAEKAIAIglBBGo2AgAgAkUNFCAJKAAAISAgByASQQNrIhA2AoQBIA5FBEAgB0KBygA3A6gBIAdBqAFqEJ8NIQIMGAsgBCAUQQVrNgIEIAQgCUEFajYCAAJAAkACQCAJLQAEIhUOAgEAAgsgDkEFSQ0VIAQgFEEJayICNgIEIAQgCUEJajYCACACQQRJBEAgB0KBygA3A6gBIAdBqAFqEJ8NIQIMGgsgCSgABSE1IAQgFEENazYCBCAEIAlBDWo2AgAgCSgACSEmIAdBqAFqIAQQ3QQgBygCrAEhAiAHKAKoAUEBRg0ZIAdB6AFqIBFBEGopAgA3AwAgByAR/QACAP0LA9gBQQEhFQsgEEUNAyAHIBJBBGsiFDYChAEgB0GoAWogBBDdBCAHKAKsASEJIAcoAqgBRQ0CIAkhAgwYC0EMQQQQkQ4iAkUNPyACIBU2AgQgAkGEgICAeDYCAAwXC0EDQfCvwQBBkK3BABCoCiECDBYLIAdBoAFqIBFBEGopAgA3AwAgByAR/QACAP0LA5ABIBRFDQIgByASQQVrIhA2AoQBIAQoAgQiDkEDTQRAIAdBADoAqwEgB0ElOwCpASAHQQA2AqwBIAdBAToAqAEgB0GoAWoQnw0hAgwWCyAEIA5BBGsiEzYCBCAEIAQoAgAiFEEEajYCACATQQNNBEAgB0EAOgCrASAHQSU7AKkBIAdBADYCrAEgB0EBOgCoASAHQagBahCfDSECDBYLIBQoAAAhMSAEIA5BCGsiEzYCBCAEIBRBCGo2AgAgE0EDTQRAIAdCgcoANwOoASAHQagBahCfDSECDBYLIBQqAAQhfyAEIA5BDGsiEzYCBCAEIBRBDGo2AgAgFCgACCIkQQRPBEAgB0EBOgCoASAHICStNwOwASAHQagBakHstMEAQZCtwQAQ7wohAgwWCyATQQNNBEAgB0KBygA3A6gBIAdBqAFqEJ8NIQIMFgsgBCAOQRBrIhM2AgQgBCAUQRBqNgIAIBQoAAwiKEEESQ0BIAdBAToAqAEgByAorTcDsAEgB0GoAWpB7LTBAEGQrcEAEO8KIQIMFQtBBUHwr8EAQZCtwQAQqAohAgwUCyAQRQ0CIAcgEkEGayIQNgKEASATQQFNBEAgB0KBygA3A6gBIAdBqAFqEJ8NIQIMFAsgBCAOQRJrIhM2AgQgBCAUQRJqNgIAIBNBBEkNESAULwAQITIgBCAOQRZrIhM2AgQgBCAUQRZqNgIAIBNBBEkEQCAHQoHKADcDqAEgB0GoAWoQnw0hAgwUCyAUKAASIS4gBCAOQRprIhM2AgQgBCAUQRpqNgIAIBNBBEkNEiAUKAAWISMgBCAOQR5rIhM2AgQgBCAUQR5qNgIAIBNBBEkEQCAHQoHKADcDqAEgB0GoAWoQnw0hAgwUCyAUKAAaITYgBCAOQSJrIhM2AgQgBCAUQSJqNgIAIBNBA00EQCAHQoHKADcDqAEgB0GoAWoQnw0hAgwUCyAUKAAeITQgBCAOQSZrIhM2AgQgBCAUQSZqNgIAIBNBA00EQCAHQoHKADcDqAEgB0GoAWoQnw0hAgwUCyAUKAAiISwgBCAOQSprIhM2AgQgBCAUQSpqNgIAIBNBA00EQCAHQoHKADcDqAEgB0GoAWoQnw0hAgwUCyAUKAAmIRMgBCAOQS5rIgY2AgQgBCAUQS5qNgIAIBQoACoiJ0EDSQ0BIAdBAToAqAEgByAnrTcDsAEgB0GoAWpBzLTBAEGQrcEAEO8KIQIMEwtBBkHwr8EAQZCtwQAQqAohAgwSCyAQRQ0CIAcgEkEHayIQNgKEASAGQQNLDQEgB0EAOgCrASAHQSU7AKkBIAdBADYCrAEgB0EBOgCoASAHQagBahCfDSECDBELQQdB8K/BAEGQrcEAEKgKIQIMEAsgBCAOQTJrIhc2AgQgBCAUQTJqNgIAIBBFDQIgFCgALiEWIAcgEkEIayIGNgKEASAXQQNLDQEgB0EAOgCrASAHQSU7AKkBIAdBADYCrAEgB0EBOgCoASAHQagBahCfDSECDA8LQQhB8K/BAEGQrcEAEKgKIQIMDgsgBCAOQTZrIhA2AgQgBCAUQTZqNgIAIAZFDQEgFCgAMiEhIAcgEkEJazYChAEgEEEPSw0EIAdCgcoANwOoASAHQagBahCfDSECDA0LQQlB8K/BAEGQrcEAEKgKIQIMDAtBCkHwr8EAQZCtwQAQqAohAgwLCyAHQoHKADcDqAEgB0GoAWoQnw0hAQwPCyAORQRAIAdCgcoANwOoASAHQagBahCfDSEBDA8LIA0gFEEFazYCBCANIARBBWo2AgACQAJAIAQtAAQiHw4CAwABCyAOQQRNBEAgB0KBygA3A6gBIAdBqAFqEJ8NIQEMEAsgDSAUQQlrNgIEIA0gBEEJajYCACAEKAAFIQZBASEfDAILQQxBBBCRDiIBRQ0xIAEgHzYCBCABQYSAgIB4NgIADA4LIBRBwgBqNQAAIWggFCkAOiFmIBQoADYhECAEIA5BxgBrNgIEIAQgFEHGAGo2AgAgB0HQAGogB0GYAWr9AAMA/QsDACAHIAcpA9gBNwNgIAcgBykDkAE3A0ggByAHQeABav0AAwD9CwNoCyAHQUBrIAdB8ABqKQMANwMAIAdBIGogB0HQAGr9AAMA/QsDACAHIAf9AARg/QsEMCAHIAcpA0g3AxggBygCDCAKRgRAQQAhDiMAQSBrIgQkAEEEIAdBDGoiFCgCACISQQF0IgwgDEEETRsiDK1CsAF+ImNCIIhCAFIEQEEAQQBB1K3BABDXDQALAkAgY6ciF0Hw////B00EfyAEIBIEfyAEIBJBsAFsNgIcIAQgFCgCBDYCFEEQBUEACzYCGCAEQQhqQRAgFyAEQRRqEOIJIAQoAghBAUcNASAEKAIQIQ4gBCgCDAVBAAsgDkHUrcEAENcNAAsgBCgCDCEOIBQgDDYCACAUIA42AgQgBEEgaiQAIAcoAhAhDAsgDCAdaiIEIBk2AgAgBEEcaiBoPgIAIARBFGogZjcCACAEQSxqIAI2AgAgBEEoaiAmNgIAIARBJGogNTYCACAEQSBqIBU2AgAgBEEQaiAQNgIAIARBCGogBjYCACAEQQRqIB82AgAgBEEwaiAHKQMwNwIAIAf9AAM4IY8BIARBhAFqIAk2AgAgBEGAAWogIDYCACAEQf0AaiAoOgAAIARB/ABqICQ6AAAgBEH4AGogfzgCACAEQfQAaiAxNgIAIARB8gBqICc6AAAgBEHwAGogMjsBACAEQewAaiATNgIAIARB6ABqICw2AgAgBEHkAGogNDYCACAEQeAAaiA2NgIAIARB3ABqICM2AgAgBEHYAGogLjYCACAEQdQAaiApNgIAIARB0ABqIAE2AgAgBEHMAGogGzYCACAEQcgAaiAaNgIAIARBOGogjwH9CwIAIAdBKGopAwAhZiAH/QADGCGPASAEQaABaiAWNgIAIARBpAFqICE2AgAgBEGoAWogJToAACAEQZgBaiBmNwIAIARBiAFqII8B/QsCACAHIApBAWoiCjYCFCAdQbABaiEdIAogC0cNAAsgBygCECEJIAcoAgwiE0GCgICAeE4NDCAJIQEMDQtBECAUQcStwQAQ1w0AC0ECQfCvwQBBkK3BABCoCiECDAcLIAdCgcoANwOoASAHQagBahCfDSECDAMLQQRB8K/BAEGQrcEAEKgKIQIMAgsgB0KBygA3A6gBIAdBqAFqEJ8NIQIMAQsgB0KBygA3A6gBIAdBqAFqEJ8NIQILIBpBAkkNAiAbQSxBBBDoDgwCCyAHQQA6AKsBIAdBJTsAqQEgB0EANgKsASAHQQE6AKgBIAdBqAFqEJ8NIQIMAQsgB0EAOgCrASAHQSU7AKkBIAdBADYCrAEgB0EBOgCoASAHQagBahCfDSECCyABIAEoAgAiAUEBazYCACABQQFGBEAgB0GIAWoQigoLIAILIQEgBygCFCEKIAcoAhAhDAsgCgRAIAxB0ABqIQIDQAJAIAJB0ABrKAIARQ0AIAIoAgAiCygCACEJIAsgCUEBazYCACAJQQFGBEAgAhCKCgsgAkEIaygCAEECSQ0AIAJBBGsoAgBBLEEEEOgOCyACQbABaiECIApBAWsiCg0ACwsgBygCDCICRQ0BIAwgAkGwAWxBEBDoDgwBCwJAAkACQAJAIA0oAgQiC0EETwRAIA0gC0EEayIENgIEIA0gDSgCACIBQQRqNgIAIARFBEAgB0KBygA3A6gBIAdBqAFqEJ8NIQEMBAsgATUAACFmIA0gC0EFayIQNgIEIA0gAUEFaiIbNgIAAkACQCABLQAEIgIOAgQAAQsgBEEESw0CIAdCgcoANwOoASAHQagBahCfDSEBDAQLQQxBBBCRDiIBRQ0mIAEgAjYCBCABQYSAgIB4NgIADAMLIAdCgcoANwOoASAHQagBahCfDSEBDAILIA0gC0EJayIQNgIEIA0gAUEJaiIbNgIAIAEoAAUhDEEBIQILIBBBB00EQCAHQoHKADcDqAEgB0GoAWoQnw0hAQwBCyANIBBBCGs2AgQgDSAbQQhqNgIAIBspAAAiY0KAgICAEFQNASAHQQE6AKgBIAcgYzcDsAEgB0GoAWogB0HYAWpBjKzBABDvCiEBCyAKBEAgCUHQAGohAgNAAkAgAkHQAGsoAgBFDQAgAigCACIEKAIAIQsgBCALQQFrNgIAIAtBAUYEQCACEIoKCyACQQhrKAIAQQJJDQAgAkEEaygCAEEsQQQQ6A4LIAJBsAFqIQIgCkEBayIKDQALCyATRQ0BIAkgE0GwAWxBEBDoDgwBCyAHQagBaiILIA0Q+gMgBygCrAEhASAHKAKoASIEQYCAgIB4RwRAIAcoArABIRQgCyANEPoDIAcoAqwBIQsgBygCqAEiDUGAgICAeEcNAiAEBEAgASAEQQN0QQQQ6A4LIAshAQsgCgRAIAlB0ABqIQIDQAJAIAJB0ABrKAIARQ0AIAIoAgAiBCgCACELIAQgC0EBazYCACALQQFGBEAgAhCKCgsgAkEIaygCAEECSQ0AIAJBBGsoAgBBLEEEEOgOCyACQbABaiECIApBAWsiCg0ACwsgE0UNACAJIBNBsAFsQRAQ6A4LIAhBAzYCACAIIAE2AgQMAQsgCCAHKAKwATYCMCAIIAs2AiwgCCANNgIoIAggFDYCJCAIIAE2AiAgCCAENgIcIAggY0IghiBmhDcCFCAIIAo2AhAgCCAJNgIMIAggEzYCCCAIIAw2AgQgCCACNgIACyAHQfABaiQAIAMoApQMIgkgAygCkAwiAkEDRg0CGiADQegJaiIBQShqIgsgCEEwaiI0KAIANgIAIANBiApqIgQgCEEoaikCADcDACABQRBqIgcgCEEYav0AAgD9CwMAIAMgA/0AApgM/QsD6AkgAkECRg0BIANBsAlqIhEiAUEwaiALKAIANgIAIAFBKGogBCkDADcCACABQRhqIAf9AAMA/QsCACADIAP9AAPoCf0LArgJIAMgCTYCtAkgAyACNgKwCSAIIQlBACEaQQAhBkEAIRlBACEPQQAhHyMAQdAKayIKJABBPCElAn9BAiAFKAIEIgJFDQAaIAUgAkEBazYCBCAFKAIAIRIgCkEDNgIkIAogEjYCIAJ/IBIoAgQiB0EHTQRAIApCgcoANwPQBUEBIQwgCkHQBWoQnw0MAQsgEiAHQQhrIgc2AgQgEiASKAIAIgFBCGo2AgAgCkEYaiABKQAAEKgIIAooAhghDCAKKAIcCyEBAkAgDEEBcQ0AAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAKAn8gAUUEQEEEIQ1BACEMQQIMAQtBgIAIIAEgAUGAgAhPGyICQQN0IghBBBCRDiILRQ0zIAogCzYC1AUgCiACNgLQBUEAIQggCkEANgLYBSASKAIAIRRBACEMA0AgB0EESQ0SIBIgB0EEayICNgIEIBIgCCAUaiIHQQRqIgQ2AgAgAkEESQ0SIAcoAAAhDSASIAJBBGsiBzYCBCASIARBBGo2AgAgBCgAACECIAooAtAFIAxGBEAgCkHQBWpB1K3BABC0CCAKKALUBSELCyAIIAtqIgQgDTYCACAEQQRqIAI2AgAgCiAMQQFqIgw2AtgFIAhBCGohCCABIAxHDQALIAooAtQFIQ0gCigC0AUiGUGCgICAeEgEQCANIQEMEwsgCigCJCIBRQ0BIAooAiAhEiABQQFrCzYCJAJ/IBIoAgQiB0EHTQRAIApCgcoANwPQBUEBIQggCkHQBWoQnw0MAQsgEiAHQQhrIgc2AgQgEiASKAIAIgFBCGo2AgAgCkEQaiABKQAAEKgIIAooAhAhCCAKKAIUCyEBIAhBAXENDwJAIAFFBEBBBCEUQQAhCAwBC0HVqgUgASABQdWqBU8bIgtBDGwiCEEEEJEOIgJFDTMgCiACNgKUCCAKIAs2ApAIIApBADYCmAggEigAACEIQQghFANAIAdBA00EQCAKQoHKADcD0AUgCkHQBWoQnw0hAQwRCyASIAdBBGsiDjYCBCASIAhBBGo2AgACQAJAAkACQCAIKAAAIhAOAgIBAAsgCkEBOgDQBSAKIBCtNwPYBSAKQdAFakHIr8EAQZCtwQAQ7wohAQwTCyAOQQRJDQggEiAHQQhrIgs2AgQgEiAIQQhqNgIAIAtBBE8EQCAIKAAEIRsgEiAHQQxrIgs2AgQgEiAIQQxqIgQ2AgAgCCgACCEPDAILIApCgcoANwPQBSAKQdAFahCfDSEBDBILIA5FBEAgCkKBygA3A9AFIApB0AVqEJ8NIQEMEgsgEiAHQQVrIgs2AgQgEiAIQQVqIgQ2AgACQAJAAkAgCC0ABCIbDgIDAAELIA5BBEsNASAKQoHKADcD0AUgCkHQBWoQnw0hAQwTC0EMQQQQkQ4iAUUNNSABIBs2AgQgAUGEgICAeDYCAAwSCyASIAdBCWsiCzYCBCASIAhBCWoiBDYCACAIKAAFIQ9BASEbCyAKKAKQCCAaRgRAIApBkAhqQdStwQAQkQggCigClAghAgsgAiAUaiIIIA82AgAgCEEEayAbNgIAIAhBCGsgEDYCACAKIBpBAWoiGjYCmAggFEEMaiEUIAshByAEIQggASAaRw0ACyAKKAKUCCEUIAooApAIIghBgoCAgHhIBEAgFCEBDBELCwJAAkACQAJAIAdBBE8EQCASIAdBBGsiAjYCBCASIBIoAgAiAUEEajYCACACRQRAIApCgcoANwPQBSAKQdAFahCfDSEBDAQLIAEoAAAhFSASIAdBBWsiCzYCBCASIAFBBWoiGzYCAAJAAkAgAS0ABCIEDgIEAAELIAJBBEsNAiAKQoHKADcD0AUgCkHQBWoQnw0hAQwEC0EMQQQQkQ4iAUUNNiABIAQ2AgQgAUGEgICAeDYCAAwDCyAKQoHKADcD0AUgCkHQBWoQnw0hAQwCCyASIAdBCWsiCzYCBCASIAFBCWoiGzYCACABKAAFIQ9BASEECyALQQdNBEAgCkKBygA3A9AFIApB0AVqEJ8NIQEMAQsgEiALQQhrNgIEIBIgG0EIajYCACAbKQAAImNCgICAgBBUDQEgCkEBOgDQBSAKIGM3A9gFIApB0AVqIApBkAhqQYyswQAQ7wohAQsgCEUNECAUIAhBDGxBBBDoDgwQCyAKKAIkIgFFDQogCiABQQFrNgIkIAooAiAhASAKQQI2AkAgCiABNgI8IApB0AVqIgIgCkE8ahDqAiAKKALUBSEBIAooAtAFIhNBgYCAgHhGDQ0CQAJAIBNBgICAgHhHBEAgCigCQCILRQ0BIAooAtgFIRYgCiALQQFrNgJAAn8gCigCPCIOKAIEIgtBB00EQCAKQoHKADcD0AVBASEHIAIQnw0MAQsgDiALQQhrNgIEIA4gDigCACICQQhqNgIAIApBCGogAikAABCoCCAKKAIIIQcgCigCDAshCyAHQQFxBEAgCyECDBALIAtFDQRBqhUgCyALQaoVTxsiAkGAA2wiB0EQEJEOIh1FDQggCkEANgJMIAogHTYCSCAKIAI2AkQgCkHQBWpBBHIhFwNAIAogDjYCyAUgDigCBCIHQQRJDQogDiAHQQRrIhI2AgQgDiAOKAIAIgJBBGo2AgAgEkEESQRAIApCgcoANwPQBSAKQdAFahCfDSECDBALIAIoAAAhGCAOIAdBCGsiEjYCBCAOIAJBCGo2AgAgCkEDNgLMBSASQQRJDQsgAigABCEcIA4gB0EMayISNgIEIA4gAkEMajYCACASQQRJBEAgCkKBygA3A9AFIApB0AVqEJ8NIQIMEAsgAigACCEiIA4gB0EQazYCBCAOIAJBEGo2AgAgAigADCEgIApB0AVqIApByAVqEGwgCigC0AUhAiAKLQCNCCIbQQNGDQ8gCkGQCGogF0G5AvwKAAAgG0ECRg0MAkACQCAKKALMBSIkBEACQAJAIAooAsgFIgcoAgQiEEEESQ0AIAovAY4IISggBygCACESIAcgEEEEayInNgIEIAcgEkEEajYCACAnQQRJDQAgEigAACEnIAcgEEEIayIhNgIEIAcgEkEIajYCACAhQQRJDQAgEioABCF/IAcgEEEMayIhNgIEIAcgEkEMajYCACAhQQRJDQAgEioACCGAASAHIBBBEGsiITYCBCAHIBJBEGo2AgAgIUEESQ0AIBIqAAwhgQEgByAQQRRrIiE2AgQgByASQRRqNgIAICFBBE8NAQsgCkEAOgDTBSAKQSU7ANEFIApBADYC1AUgCkEBOgDQBSAKQdAFahCfDSECDBMLIBIqABAhggEgByAQQRhrIiE2AgQgByASQRhqNgIAICRBAUYNASAhQQRJDRAgEioAFCGDASAHIBBBHGsiJDYCBCAHIBJBHGo2AgAgJEEETw0CIApCgcoANwPQBSAKQdAFahCfDSECDBILQQNB2LbBAEGQrcEAEKgKIQIMEQtBBEHYtsEAQZCtwQAQqAohAgwQCyASKAAYISQgByAQQSBrNgIEIAcgEkEgajYCACASKAAcIRAgCkGMA2ogCkGQCGpBuQL8CgAAIA4oAgQiEkEDTQRAIApCgcoANwPQBSAKQdAFahCfDSECDBALIA4gEkEEayIhNgIEIA4gDigCACIHQQRqNgIAICFBA00EQCAKQoHKADcD0AUgCkHQBWoQnw0hAgwQCyAHKAAAISEgDiASQQhrIik2AgQgDiAHQQhqNgIAIClBA00EQCAKQoHKADcD0AUgCkHQBWoQnw0hAgwQCyAHKAAEISkgDiASQQxrIiM2AgQgDiAHQQxqNgIAICNBA00EQCAKQoHKADcD0AUgCkHQBWoQnw0hAgwQCyAHKAAIISMgDiASQRBrNgIEIA4gB0EQajYCACAHKAAMIRIgCkHQAGogCkGMA2pBuQL8CgAAIAooAkQgBkYEQCAKQcQAakHUrcEAEJMIIAooAkghHQsgHSAfaiIHIAI2AgAgB0EEaiAKQdAAakG5AvwKAAAgB0H8AmogEjYBACAHQfgCaiAjNgEAIAdB9AJqICk2AQAgB0HwAmogITYBACAHQewCaiAQNgEAIAdB6AJqICQ2AQAgB0HkAmoggwE4AQAgB0HgAmogggE4AQAgB0HcAmoggQE4AQAgB0HYAmoggAE4AQAgB0HUAmogfzgBACAHQdACaiAnNgEAIAdBzAJqICA2AQAgB0HIAmogIjYBACAHQcQCaiAcNgEAIAdBwAJqIBg2AQAgB0G+AmogKDsBACAHQb0CaiAbOgAAIAogBkEBaiIGNgJMIB9BgANqIR8gBiALRw0ACyAKKAJIIQIgCigCRCIHQYKAgIB4SA0PIBNBgICAgHhrDgICEAULQQBByLHBAEGQrcEAEKgKIQEMDwtBAUHIscEAQZCtwQAQqAohAgwNC0EAQYC2wQBBkK3BABCoCiEBDA0LQQFB7LfBAEGQrcEAEKgKIQEMDgtBECECQQAhBwsgCkHQBWogCkEgahDkAgJAAn8gCigC0AUEQCAKKALUBQwBCyAKQThqIgsgCkHsBWooAgA2AgAgCiAK/QAC3AX9CwMoIAooAtgFIg4NAUEDQey3wQBBkK3BABCoCgshCyATBEAgASATQQR0QQQQ6A4LIAcEQCACIAdBgANsQRAQ6A4LIAshAQwLCyAJIAr9AAMo/QsCBCAJQRRqIAsoAgA2AgAgCSAVNgJQIAkgGjYCTCAJIBQ2AkggCSAINgJEIAkgDzYCQCAJIAQ2AjwgCSAMNgI4IAkgDTYCNCAJIBk2AjAgCSAGNgIsIAkgAjYCKCAJIAc2AiQgCSAWNgIgIAkgATYCHCAJIBM2AhggCSAONgIAQdQAISUgY6cMDwsACyAKQoHKADcD0AUgCkHQBWoQnw0hAQwJC0EQIAdBxK3BABDXDQALIApCgcoANwPQBSAKQdAFahCfDSECDAQLIApCgcoANwPQBSAKQdAFahCfDSECDAMLQQJB2LbBAEGQrcEAEKgKIQIMAgsgCkKBygA3A9AFIApB0AVqEJ8NIQIMAQtBAkHst8EAQZCtwQAQqAohAQwCCyAKKAJEIgtFDQAgCigCSCALQYADbEEQEOgOCyATBEAgASATQQR0QQQQ6A4LIAIhAQsgCEUNASAUIAhBDGxBBBDoDgwBCyAKKAKQCCICRQ0AIAooApQIIAJBDGxBBBDoDgsgGUUNASANIBlBA3RBBBDoDgwBCyAKQoHKADcDkAggCkGQCGoQnw0hASAKKALQBSICRQ0AIAooAtQFIAJBA3RBBBDoDgsgCSABNgIAQQMLIQEgCSAlaiABNgIAIApB0ApqJAAgAygCkAwiCyADKALMDCICQQNGDQQaIANBuAtqIgggCUE0aikCADcDACADQagLaiIEIAlBJGr9AAIA/QsDACADQZgLaiIHIAlBFGr9AAIA/QsDACADQfgKaiIUIAlByABq/QADAP0LAwAgAyAD/QAClAz9CwOICyADIAMpA9AMNwPwCiACQQJGDQMgA0GYCmoiNSIBQTRqIAgpAwA3AgAgAUEkaiAE/QADAP0LAgAgAUEUaiAH/QADAP0LAgAgAUHIAGogFP0AAwD9CwMAIAMgA/0AA4gL/QsCnAogAyADKQPwCjcD2AogAyACNgLUCiADIAs2ApgKIAkhG0EAIQlBACEHQQAhFEEAIRJBACECQQAhC0EAIQpBACEIQQAhH0EAIRBBACETQQAhGkEAIQxCACFmQgAhaEEAISVCACFqQQAhJEIAIWtBACEoQQAhJ0EAISFCACFtQQAhFkEAISlBACExQQAhMkEAIS4jAEGAEmsiBiQAAkACQAJAIAUoAgQiAUUEQCAbQQI2AjwMAQsgBSABQQFrNgIEIAUoAgAhFSAGQQM2AiwgBiAVNgIoAn8gFSgCBCIBQQdNBEAgBkKBygA3A4ANQQEhGSAGQYANahCfDQwBCyAVIAFBCGs2AgQgFSAVKAIAIgFBCGo2AgAgBkEgaiABKQAAEKgIIAYoAiAhGSAGKAIkCyENAkAgGUEBcQRAIA0hAQwBCwJAAkACQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCANRQRAQQQhBEEAIRkMAQtBhxwgDSANQYccTxsiAUGkAmwiBEEEEJEOIg5FDT4gBkEANgJMIAYgDjYCSCAGIAE2AkQgBkHYB2ohIiAGQYANaiIBQQhqIRcgBkHID2ohGCAGQZQKaiEcIAFBBGohKiABQQRyITYDQCAVKAIEIg9BA00EQCAGQoHKADcDgA0gBkGADWoQnw0hAQwfCyAVIA9BBGsiBTYCBCAVIBUoAgAiBEEEajYCAAJAAkACQAJAIAQoAAAiAQ4CAgEACyAGQQE6AIANIAYgAa03A4gNIAZBgA1qQcivwQBBkK3BABDvCiEBDCELIAVBBEkNDSAVIA9BCGsiATYCBCAVIARBCGo2AgAgBCgABCEfIAZBETYClAYgBiAVNgKQBgJ/IAFBB00EQCAGQoHKADcDgA1BASEZIAZBgA1qEJ8NDAELIBUgD0EQazYCBCAVIARBEGo2AgAgBkEYaiAEKQAIEKgIIAYoAhghGSAGKAIcCyEOIBlBAXEEQCAOIQEMIQsCQCAORQRAQRAhAUEAIQ5BACElDAELQcIQIA4gDkHCEE8bIgFB8ANsIgJBEBCRDiIJRQ0FIAZBADYClAcgBiAJNgKQByAGIAE2AowHA0AgFSgCBCICQQdNBEAgBkKBygA3A4ANIAZBgA1qEJ8NIQEMIgsgFSACQQhrIgk2AgQgFSAVKAIAIgFBCGo2AgAgASkAACJjQoCAgIAQWgRAIAZBAToAgA0gBiBjNwOIDSAGQYANaiAGQfgMakGMrMEAEO8KIQEMIgsgCUEHTQRAIAZCgcoANwOADSAGQYANahCfDSEBDCILIBUgAkEQayIJNgIEIBUgAUEQajYCACABKQAIImZCgICAgBBaBEAgBkEBOgCADSAGIGY3A4gNIAZBgA1qIAZB+AxqQYyswQAQ7wohAQwiCyAJQQdNBEAgBkKBygA3A4ANIAZBgA1qEJ8NIQEMIgsgFSACQRhrIgk2AgQgFSABQRhqNgIAIAEpABAiaEKAgICAEFoEQCAGQQE6AIANIAYgaDcDiA0gBkGADWogBkH4DGpBjKzBABDvCiEBDCILIAlBBEkNByAVIAJBHGsiCTYCBCAVIAFBHGo2AgAgCUEESQRAIAZCgcoANwOADSAGQYANahCfDSEBDCILIAEoABghFCAVIAJBIGs2AgQgFSABQSBqNgIAIAEoABwhCiAGQQQ2AvwMIAYgFTYC+AwgBkGADWoiCSAGQfgMahBsIAYoAoANIQEgBi0AvQ8iBEEDRg0hIAZBwA9qIDZBuQL8CgAAAkAgBEECRwRAIAYoAvwMIghFDQogBigC+AwiAigCBCILRQRAIAZCgcoANwOADSAJEJ8NIQEMJAsgBi8Bvg8hEiACIAtBAWs2AgQgAiACKAIAIglBAWo2AgAgCS0AACIHQQJJDQFBDEEEEJEOIgFFDUcgASAHOgAEIAFBgoCAgHg2AgAMIwtBAEG8t8EAQZCtwQAQqAohAQwiCyAIQQFGDQkCQAJAIAtBBUkNACACIAtBBWsiEDYCBCACIAlBBWo2AgAgEEEESQ0AIAkoAAEhECACIAtBCWsiDDYCBCACIAlBCWo2AgAgDEEESQ0AIAkqAAUhfyACIAtBDWsiDDYCBCACIAlBDWo2AgAgDEEESQ0AIAkqAAkhgAEgAiALQRFrIgw2AgQgAiAJQRFqNgIAIAxBBEkNACAJKgANIYEBIAIgC0EVayIMNgIEIAIgCUEVajYCACAMQQRPDQELIAZBADoAgw0gBkElOwCBDSAGQQA2AoQNIAZBAToAgA0gBkGADWoQnw0hAQwiCyAJKgARIYIBIAIgC0EZayIMNgIEIAIgCUEZajYCAAJAIAhBAkcEQAJAIAxBBEkNACAJKgAVIYMBIAIgC0EdayIINgIEIAIgCUEdajYCACAIQQRJDQAgCSgAGSEMIAIgC0EhayIINgIEIAIgCUEhajYCACAIQQRJDQAgCSoAHSGEASACIAtBJWsiCDYCBCACIAlBJWo2AgAgCEEETw0CCyAGQQA6AIMNIAZBJTsAgQ0gBkEANgKEDSAGQQE6AIANIAZBgA1qEJ8NIQEMIwtBA0G8t8EAQZCtwQAQqAohAQwiCyAJKgAhIYUBIAIgC0EpazYCBCACIAlBKWo2AgAgCSoAJSGGASAGQYwKaiAGQcAPakG5AvwKAAAgBkGADWoiCSAVEN0EIAYoAoQNIQIgBigCgA0NCiAGQdgMaiIaIBdBEGoiCykCADcDACAGIBf9AAIA/QsDyAwgCSAVEN0EIAYoAoQNIQkgBigCgA0EQCAJIQEMIgsgBkHwDGogCykCADcDACAGIBf9AAIA/QsD4AwCQAJAIBUoAgQiCEEESQ0AIBUoAgAhCyAVIAhBBGsiEzYCBCAVIAtBBGo2AgAgE0EESQ0AIAsoAAAhEyAVIAhBCGsiDzYCBCAVIAtBCGo2AgAgD0EDSw0BCyAGQQA6AIMNIAZBJTsAgQ0gBkEANgKEDSAGQQE6AIANIAZBgA1qEJ8NIQEMIgsgCzUABCFqIBUgCEEMayIPNgIEIBUgC0EMajYCAAJAAkAgD0EESQ0AIAs1AAghayAVIAhBEGsiDzYCBCAVIAtBEGo2AgAgD0EESQ0AIAsoAAwhDyAVIAhBFGsiBTYCBCAVIAtBFGo2AgAgBUEDSw0BCyAGQQA6AIMNIAZBJTsAgQ0gBkEANgKEDSAGQQE6AIANIAZBgA1qEJ8NIQEMIgsgCzUAECFtIBUgCEEYayIFNgIEIBUgC0EYajYCACAFQQRJDQsgCzUAFCFkIBUgCEEcayIFNgIEIBUgC0EcajYCACAFQQRJDQsgCygAGCEFIBUgCEEgayIWNgIEIBUgC0EgajYCACAWQQRJDQsgCzUAHCFsIBUgCEEkayIWNgIEIBUgC0EkajYCAAJAAkAgFkEESQ0AIAs1ACAhZSAVIAhBKGsiFjYCBCAVIAtBKGo2AgAgFkEESQ0AIAsoACQhFiAVIAhBLGsiGTYCBCAVIAtBLGo2AgAgGUEETw0BCyAGQQA6AIMNIAZBJTsAgQ0gBkEANgKEDSAGQQE6AIANIAZBgA1qEJ8NIQEMIgsgCzUAKCFnIBUgCEEwazYCBCAVIAtBMGo2AgAgCzUALCFpIAZB0AdqIAZBjApqQbkC/AoAACBrQiCGIWsgZEIghiFkIGVCIIYhZSAGQcAHaiIZIBopAwA3AwAgBkGgB2ogBkHoDGr9AAMA/QsDACAGIAb9AAPIDP0LBLAHIAYgBikD4Aw3A5gHIGlCIIYhaSAGKAKUByIIIAYoAowHRgRAIAZBjAdqQdStwQAQmQgLIAYoApAHIAhB8ANsaiILIAE2AhAgCyCGATgCDCALIIUBOAIIIAsghAE4AgQgCyAMNgIAIAtBFGogBkHQB2pBuQL8CgAAIAsgAjYAnAMgCyBoPgCYAyALIGY+AJQDIAsgYz4AkAMgCyBnIGmENwCIAyALIBY2AIQDIAsgZSBshDcA/AIgCyAFNgD4AiALIAo2APQCIAsgFDYA8AIgCyAHOgDoAiALIIMBOALkAiALIIIBOALgAiALIIEBOALcAiALIIABOALYAiALIH84AtQCIAsgEDYC0AIgCyASOwHOAiALIAQ6AM0CIAsgCTYAuAMgCyATNgDUAyALIGoga4Q3ANgDIAsgDzYA4AMgCyBkIG2ENwDkAyALQbADaiAZKQMANwAAIAsgBv0ABLAH/QsAoAMgC0HMA2ogBkGoB2opAwA3AAAgCyAG/QADmAf9CwC8AyAGIAhBAWoiJTYClAcgDkEBayIODQALIAYoApAHIQEgBigCjAciDkGCgICAeEgNIQsgBkGADWogBkGQBmoQqgMgBigChA0hDAJAAkACQAJAAkACQAJAAkACQAJAAkAgBigCgA0iKEGAgICAeGsOAgEJAAsgBikCiA0hbSAGQYANaiAGQZAGahCqAyAGKAKEDSEUIAYoAoANIgtBgICAgHhrDgICJwELQQFB0LXBAEGQrcEAEKgKIRQMJwsgBikCiA0hayAGQYANaiAGQZAGahCqAyAGKAKEDSEKIAYoAoANIiRBgICAgHhrDgICBQELQQJB0LXBAEGQrcEAEKgKIRQMJAsgBigClAYiAkUNASAGKQKIDSFmIAYgAkEBazYClAYCfyAGKAKQBiICKAIEIglBB00EQCAGQoHKADcDgA1BASEQIAZBgA1qEJ8NDAELIAIgCUEIazYCBCACIAIoAgAiCUEIajYCACAGQRBqIAkpAAAQqAggBigCECEQIAYoAhQLIQkgEEEBcQ0hIAYgCTYC1AcgBiACNgLQBwJAIAlFBEBBBCEHQQAhGQwBC0GAgAQgCSAJQYCABE8bIhlBBHQiAkEEEJEOIgdFDSoLIAZBADYClAogBiAHNgKQCiAGIBk2AowKIAZBgA1qIAZB0AdqEKgDIAYoAoANIhlBgYCAgHhGDRZBACESQQQhEAJAA0AgGUGAgICAeEYNASAYICpBCGooAgA2AgAgBiAqKQIANwPADyAGKAKMCiASRgRAIAZBjApqQdStwQAQtQggBigCkAohBwsgByAQaiICQQRrIBk2AgAgAiAGKQPADzcCACACQQhqIBgoAgA2AgAgBiASQQFqIhI2ApQKIBBBEGohECAGQYANaiAGQdAHahCoAyAGKAKADSIZQYGAgIB4Rw0ACyAGKAKEDSEJIAYoApAKIQcgEkUNISAHIQIDQCACKAIAIggEQCACQQRqKAIAIAhBAnRBBBDoDgsgAkEQaiECIBJBAWsiEg0ACwwhCyAGKAKQCiEHIAYoAowKIhZBgoCAgHhODQIgByEJDCELQQNB0LXBAEGQrcEAEKgKIQkMIQtBBEHQtcEAQZCtwQAQqAohCQwfCyAGQYANaiIEIAZBkAZqIhAQ4AIgBigChA0iCSAGKAKADSInQYGAgIB4Rg0cGiAGQaAGaiIvIBdBCGoiEygCADYCACAGIBcpAgA3A5gGICdBgICAgHhGDQ0gBCAQEMEBIAYoAoQNIQggBigCgA0iAkGBgICAeEYNGyAGQbgGaiIaIBdBEGoiLv0AAgD9CwMAIAYgF/0AAgD9CwOoBgJAAkACQCACQYCAgIB4RwRAIBwgBv0AA6gG/QsCACAcQRBqIBr9AAMA/QsCACAGIAg2ApAKIAYgAjYCjAojAEEgayICJAACQCAQKAIEIghFBEAgBEGAgICAeDYCAAwBCyAQIAhBAWs2AgQgECgCACEIIAJBATYCBCACIAg2AgACQAJ/IAgoAgQiEEEHTQRAIAJCgcoANwMIIAJBCGoQnw0MAQsgCCAQQQhrNgIEIAggCCgCACIIQQhqNgIAIAgpAAAiY0KAgICAEFoEQCACQQE6AAggAiBjNwMQIAJBCGogAkEfakGMrMEAEO8KDAELIAJBCGogAhD5AyACKAIMIgggAigCCCIQQYGAgIB4Rg0AGiAQQYCAgIB4Rw0BQQFBrLbBAEGQrcEAEKgKCyEIIARBgYCAgHg2AgAgBCAINgIEDAELIAI1AhAhaCAEIAg2AgQgBCAQNgIAIAQgaCBjQiCGhDcCCAsgAkEgaiQAIAYoAoQNIRAgBigCgA0iKUGAgICAeGsOAgEDAgtBBkHQtcEAQZCtwQAQqAohCAweC0EHQdC1wQBBkK3BABCoCiEIDBwLIAYpAogNIWggBkGADWoiBCAGQZAGaiIaEOACIAYoAoQNIgghAiAGKAKADSIhQYGAgIB4Rg0aIAZB0AZqIjAgEygCADYCACAGIBcpAgA3A8gGICFBgICAgHhGDQ8gBCAaEMEBIAYoAoQNIQIgBigCgA0iE0GBgICAeEYNGSAGQegGaiIPIC79AAIA/QsDACAGIBf9AAIA/QsD2AYCQCATQYCAgIB4RwRAIBggBv0AA9gG/QsCACAYQRBqIA/9AAMA/QsCACAGIAI2AsQPIAYgEzYCwA8gBCAaEOQIIAYoAoQNIRMgBigCgA0iAkECRw0BIBMhAgwaC0EJQdC1wQBBkK3BABCoCiECDBoLAkAgAkEBcQRAIAZBgA1qIAZBkAZqEMgIIAYtAIANRQ0BIAYoAoQNIQIMGgtBCkHQtcEAQZCtwQAQqAohAgwZCwJAIAYtAIENIjFBAkcEQCAGQYANaiECIwBBEGsiBCQAAkAgBkGQBmoiGigCBCIPRQRAIAJBADYCAAwBCyAaIA9BAWs2AgQgGigCACIaKAIEIg9BA00EQCAEQoHKADcDCCAEQQhqEJ8NIRogAkECNgIAIAIgGjYCBAwBCyAaIA9BBGs2AgQgGiAaKAIAIhpBBGo2AgAgAiAaKAAANgIEIAJBATYCAAsgBEEQaiQAIAYoAoQNIRogBigCgA0iAkECRw0BIBohAgwaC0ELQdC1wQBBkK3BABCoCiECDBkLAkAgAkEBcQRAIAZBgA1qIAZBkAZqEMgIIAYtAIANRQ0BIAYoAoQNIQIMGgtBDEHQtcEAQZCtwQAQqAohAgwZCyAGLQCBDSIyQQJGDRAgBkGADWohGSMAQTBrIg8kAAJAIAZBkAZqIh4iAigCBCIERQRAIBlBgICAgHg2AgAMAQsgAiAEQQFrNgIEIAIoAgAhBUEBISAgD0EBNgIUIA8gBTYCEAJ/IAUoAgQiBEEHTQRAIA9CgcoANwMYIA9BGGoQnw0MAQsgBSAEQQhrIgQ2AgQgBSAFKAIAIgJBCGo2AgAgD0EIaiACKQAAEKgIIA8oAgghICAPKAIMCyECAkACQCAgQQFxDQACQCACRQRAQQQhBEEAISBBACEdDAELAn8CQEGq1QIgAiACQarVAk8bIh1BGGwiIEEEEJEOIiwEQCAPICw2AhwgDyAdNgIYQQAhIyAPQQA2AiAgBSgCACErQQAhIANAIARBBEkNAiAFIARBBGsiBDYCBCAFICMgK2oiJkEEaiIdNgIAIARBBEkNAiAmKAAAITMgBSAEQQRrIgQ2AgQgBSAdQQRqIiY2AgAgBEEESQ0CIB01AAAhYyAFIARBBGsiBDYCBCAFICZBBGoiHTYCAAJAAkAgBEEESQ0AICY1AAAhaiAFIARBBGsiBDYCBCAFIB1BBGoiJjYCACAEQQRJDQAgHSgAACE3IAUgBEEEayIENgIEIAUgJkEEaiIdNgIAIARBBE8NAQsgD0EAOgArIA9BJTsAKSAPQQA2AiwgD0EBOgAoIA9BKGoQnw0MBAsgakIghiBjhCFjICY1AAAhaiAFIARBBGsiBDYCBCAFIB1BBGo2AgAgaiAdNQAAQiCGhCFqIA8oAhggIEYEQCAPQRhqQdStwQAQkgggDygCHCEsCyAjICxqIh0gMzYCACAdQRBqIGo3AgAgHUEMaiA3NgIAIB1BBGogYzcCACAPICBBAWoiIDYCICAjQRhqISMgAiAgRw0ACyAPKAIcIQQgDygCGCIdQYKAgIB4Tg0DIAQhAgwEC0EEICBBxK3BABDXDQALIA9BADoAKyAPQSU7ACkgD0EANgIsIA9BAToAKCAPQShqEJ8NCyECIA8oAhgiBEUNASAPKAIcIARBGGxBBBDoDgwBCyAPQRhqIA9BEGoQqgMgDygCHCECIA8oAhgiBUGBgICAeEcEQCAFQYCAgIB4Rw0CQQFB0LjBAEGQrcEAEKgKIQILIB1FDQAgBCAdQRhsQQQQ6A4LIBlBgYCAgHg2AgAgGSACNgIEDAELIBkgDykCIDcCFCAZIAI2AhAgGSAFNgIMIBkgIDYCCCAZIAQ2AgQgGSAdNgIACyAPQTBqJAAgBigChA0hAiAGKAKADSIEQYGAgIB4Rg0YIAZBiAdqIg8gLigCADYCACAGIBf9AAIA/QsD+AYCQAJAAkACQAJAAkACQAJAIARBgICAgHhHBEAgIiAG/QAD+Ab9CwIAICJBEGogDygCADYCACAGIAI2AtQHIAYgBDYC0AcgGSAeEPsBIAYoAoQNIQIgBigCgA0iBEGAgICAeGsOAgIIAQtBDkHQtcEAQZCtwQAQqAohAgwgCyAGIAYoAogNNgLQDCAGIAI2AswMIAYgBDYCyAwgBkGADWogBkGQBmoQ+wEgBigChA0hAiAGKAKADSIEQYCAgIB4aw4CAgUBC0EPQdC1wQBBkK3BABCoCiECDAULIAYgBigCiA02AugMIAYgAjYC5AwgBiAENgLgDCAGQYANaiAGQZAGahCoAyAGKAKEDSECIAYoAoANIi5BgICAgHhrDgIBAggLQRBB0LXBAEGQrcEAEKgKIQIMAgtBEUHQtcEAQZCtwQAQqAohAgsgBkHgDGoQhwsLIAZByAxqEIcLCyAGQdAHaiIEKAIAIg0EQCAEKAIEIA1BGGxBBBDoDgsgBCgCDCINBEAgBCgCECANQQJ0QQQQ6A4LDBgLIBAhCAwaCyAKIQkMHgsgDCEUDB8LIAYpAogNIWogBkGIBmoiBCAvKAIANgIAIAZB2AVqIg9BCGoiBSAc/QACAP0LAwAgD0EYaiIPIAZBpApq/QACAP0LAwAgBkHQBWoiGSAwKAIANgIAIAZBoAVqIh1BEGoiICAGQcAPaiIjQRBq/QACAP0LAwAgHUEgaiIdICNBIGopAgA3AwAgBiAGKQOYBjcDgAYgBiAGKQKMCjcD2AUgBiAGKQPIBjcDyAUgBiAG/QACwA/9CwOgBSAGQYAFaiIjQRhqIiwgBkHQB2oiJkEYaigCADYCACAjQRBqIiMgJkEQaikCADcDACAGQfgEaiImIAZB0AxqKAIANgIAIAZB6ARqIi8gBkHoDGooAgA2AgAgBiAG/QAC0Af9CwOABSAGIAYpAsgMNwPwBCAGIAYpAuAMNwPgBCAOQYCAgIB4Rg0gIAZB2ARqIjAgBCgCADYCACAGQagEaiIEQQhqIh4gBf0AAwD9CwMAIARBGGoiBCAP/QADAP0LAwAgBkGgBGoiDyAZKAIANgIAIAZB8ANqIgVBEGoiGSAg/QADAP0LAwAgBUEgaiIFIB0pAwA3AwAgBiAGKQOABjcD0AQgBiAGKQPYBTcDqAQgBiAGKQPIBTcDmAQgBiAG/QADoAX9CwPwAyAGQdADaiIdQRhqIiAgLCgCADYCACAdQRBqIh0gIykDADcDACAGQcgDaiIjICYoAgA2AgAgBkG4A2oiLCAvKAIANgIAIAYgBv0AA4AF/QsD0AMgBiAGKQPwBDcDwAMgBiAGKQPgBDcDsAMgDkGBgICAeEYNICAGQagDaiAwKAIANgIAIAZB+AJqIiZBCGogHv0AAwD9CwMAICZBGGogBP0AAwD9CwMAIAZB8AJqIA8oAgA2AgAgBkHAAmoiBEEQaiAZ/QADAP0LAwAgBEEgaiAFKQMANwMAIAYgBikD0AQ3A6ADIAYgBikDqAQ3A/gCIAYgBikDmAQ3A+gCIAYgBv0AA/AD/QsDwAIgBkGgAmoiBEEYaiAgKAIANgIAIARBEGogHSkDADcDACAGQZgCaiAjKAIANgIAIAZBiAJqICwoAgA2AgAgBiAG/QAD0AP9CwOgAiAGIAYpA8ADNwOQAiAGIAYpA7ADNwOAAgwBCyAFRQRAIAZCgcoANwOADSAGQYANahCfDSEBDCALIBUgD0EFazYCBCAVIARBBWo2AgBBgICAgHghDkEAIQECQAJAAkAgBC0ABCIZDgIDAAELIAVBBEsNASAGQoHKADcDgA0gBkGADWoQnw0hAQwhC0EMQQQQkQ4iAUUNQyABIBk2AgQgAUGEgICAeDYCAAwgCyAVIA9BCWs2AgQgFSAEQQlqNgIAIAQoAAUhJUEBIQELIAZB+AFqIh0gBkGoA2ooAgA2AgAgBkHIAWoiBEEIaiAGQfgCaiIPQQhq/QADAP0LAwAgBEEYaiAPQRhq/QADAP0LAwAgBkHAAWoiIyAGQfACaigCADYCACAGQZABaiIEQRBqIiwgBkHAAmoiD0EQav0AAwD9CwMAIARBIGoiJiAPQSBqKQMANwMAIAYgBikDoAM3A/ABIAYgBikD+AI3A8gBIAYgBikD6AI3A7gBIAYgBv0AA8AC/QsDkAEgBkHwAGoiBEEYaiIvIAZBoAJqIg9BGGooAgA2AgAgBEEQaiIwIA9BEGopAwA3AwAgBkHoAGoiHiAGQZgCaigCADYCACAGQdgAaiIrIAZBiAJqKAIANgIAIAYgBv0AA6AC/QsDcCAGIAYpA5ACNwNgIAYgBikDgAI3A1AgDkGCgICAeEYNHiAGKAJMIgUgBigCREYEQEEAISAjAEEgayIEJABBBCAGQcQAaiIPKAIAIhlBAXQiMyAzQQRNGyIzrUKkAn4iY0IgiEIAUgRAQQBBAEHUrcEAENcNAAsCQCBjpyI3Qfz///8HTQR/IAQgGQR/IAQgGUGkAmw2AhwgBCAPKAIENgIUQQQFQQALNgIYIARBCGpBBCA3IARBFGoQ4gkgBCgCCEEBRw0BIAQoAhAhICAEKAIMBUEACyAgQdStwQAQ1w0ACyAEKAIMIRkgDyAzNgIAIA8gGTYCBCAEQSBqJAALIAYoAkgiBCAFQaQCbGoiDyAJNgJMIA8gJzYCSCAPIBI2AkQgDyAHNgJAIA8gFjYCPCAPIGY3AjQgDyAKNgIwIA8gJDYCLCAPIGs3AiQgDyAUNgIgIA8gCzYCHCAPIG03AhQgDyAMNgIQIA8gKDYCDCAPICU2AgggDyABNgIEIA8gDjYCACAPIAYpA/ABNwJQIA9B2ABqIB0oAgA2AgAgDyApNgKEASAPIBA2AogBIA8gaDcCjAEgDyAhNgKUASAPIAg2ApgBIA9B/ABqIAZByAFqIgFBIGopAwA3AgAgD0HsAGogAUEQav0AAwD9CwIAIA8gBv0AA8gB/QsCXCAPIAYpA7gBNwKcASAPQaQBaiAjKAIANgIAIA9ByAFqICYpAwA3AgAgDyAG/QADkAH9CwKoASAPQbgBaiAs/QADAP0LAgAgDyAxOgCcAiAPIDI6AJ0CIA8gHzYCoAIgDyAaNgKYAiAPIBM2ApQCIA8gajcCjAIgDyACNgKIAiAPIC42AoQCIA9B6AFqIC8oAgA2AgAgD0HgAWogMCkDADcCACAPIAb9AANw/QsC0AEgDyAGKQNgNwLsASAPQfQBaiAeKAIANgIAIA9BgAJqICsoAgA2AgAgDyAGKQNQNwL4ASAGIAVBAWoiGTYCTCANQQFrIg0NAAsgBCEBIAYoAkQiEEGCgICAeEgNHgsCQAJAAkACQCAVKAIEIgJBBE8EQCAVIAJBBGsiCTYCBCAVIBUoAgAiAUEEajYCACAJRQRAIAZCgcoANwOADSAGQYANahCfDSEBDAQLIAE1AAAhaCAVIAJBBWsiHzYCBCAVIAFBBWoiEjYCAAJAAkAgAS0ABCIUDgIEAAELIAlBBEsNAiAGQoHKADcDgA0gBkGADWoQnw0hAQwEC0EMQQQQkQ4iAUUNRCABIBQ2AgQgAUGEgICAeDYCAAwDCyAGQoHKADcDgA0gBkGADWoQnw0hAQwCCyAVIAJBCWsiHzYCBCAVIAFBCWoiEjYCACABKAAFIShBASEUCyAfQQdNBEAgBkKBygA3A4ANIAZBgA1qEJ8NIQEMAQsgFSAfQQhrNgIEIBUgEkEIajYCACASKQAAImNCgICAgBBUDQEgBkEBOgCADSAGIGM3A4gNIAZBgA1qIAZB+AxqQYyswQAQ7wohAQsgGQRAIAQhAgNAIAIQ7wIgAkGkAmohAiAZQQFrIhkNAAsLIBBFDR4gBCAQQaQCbEEEEOgODB4LAkACQCAGKAIsIgEEQCAGIAFBAWsiEjYCLAJ/IAYoAigiCSgCBCIOQQdNBEAgBkKBygA3A4ANQQEhDSAGQYANahCfDQwBCyAJIA5BCGsiDjYCBCAJIAkoAgAiAUEIajYCACAGQQhqIAEpAAAQqAggBigCCCENIAYoAgwLIQEgDUEBcQ0SAkAgAUUEQEEEIQpBACEMQQAhHwwBC0HMmQMgASABQcyZA08bIgtBFGwiAkEEEJEOIiRFDSMgBiAkNgLEDyAGIAs2AsAPQQAhHyAGQQA2AsgPIAkoAgAhEkEQISUDQAJAIA5BBE8EQCAJIA5BBGsiAjYCBCAJIBJBBGoiCzYCAAJAIAJBBE8EQCASKAAAIQcgCSACQQRrIgI2AgQgCSALQQRqIgg2AgAgAkEESQ0TIAsoAAAhDSAJIAJBBGsiAjYCBCAJIAhBBGoiCzYCACACQQRPDQEgBkKBygA3A4ANIAZBgA1qEJ8NIQEMFwsgBkKBygA3A4ANIAZBgA1qEJ8NIQEMFgsgCCgAACEKIAkgAkEEayICNgIEIAkgC0EEaiIINgIAIAJBB00EQCAGQoHKADcDgA0gBkGADWoQnw0hAQwWCyALKAAAIQsgCSACQQhrIg42AgQgCSAIQQhqIhI2AgAgCCkAACJmQoCAgIAQVA0BIAZBAToAgA0gBiBmNwOIDSAGQYANaiAGQfgMakGMrMEAEO8KIQEMFQsgBkKBygA3A4ANIAZBgA1qEJ8NIQEMFAsgZqchCCAGKALADyAfRgRAIAZBwA9qQdStwQAQlAggBigCxA8hJAsgJCAlaiICIAg2AgAgAkEEayANNgIAIAJBCGsgCzYCACACQQxrIAo2AgAgAkEQayAHNgIAIAYgH0EBaiIfNgLIDyAlQRRqISUgASAfRw0ACyAGKALEDyEKIAYoAsAPIgxBgoCAgHhIBEAgCiEBDBQLIAYoAiwhEgsgEkUNDiAGIBJBAWs2AiwgBigCKCEBIAZBAjYCkAogBiABNgKMCiAGQYANaiICIAZBjApqEOoCIAYoAoQNIQEgBigCgA0iB0GBgICAeEYNEAJAAkACQCAHQYCAgIB4RwRAIAYoApAKRQ0BIAYoAogNIRUCfyAGKAKMCiIJKAIEIg5BB00EQCAGQoHKADcDgA1BASENIAIQnw0MAQsgCSAOQQhrIg42AgQgCSAJKAIAIgJBCGo2AgAgBiACKQAAEKgIIAYoAgAhDSAGKAIECyELIA1BAXENAkEEIRIgC0UNBUGAgAQgCyALQYCABE8bIg1BBHQiAkEEEJEOIghFDSYgBiAINgKEDSAGIA02AoANQQAhEiAGQQA2AogNIAkoAgAhD0EAIQ0DQAJAAn8gDkEDTQRAIAZCgcoANwPADyAGQcAPahCfDQwBCyAJIA5BBGsiAjYCBCAJIA8gEmoiGkEEaiIONgIAIAJBA00EQCAGQoHKADcDwA8gBkHAD2oQnw0MAQsgGigAACEFIAkgAkEEayICNgIEIAkgDkEEaiIaNgIAIAJBA00EQCAGQoHKADcDwA8gBkHAD2oQnw0MAQsgDigAACEWIAkgAkEEayICNgIEIAkgGkEEaiITNgIAIAJBA0sNASAGQoHKADcDwA8gBkHAD2oQnw0LIQsgBigCgA0iAkUNBCAGKAKEDSACQQR0QQQQ6A4MBAsgGigAACEaIAkgAkEEayIONgIEIAkgE0EEajYCACATKAAAIRMgBigCgA0gDUYEQCAGQYANakHUrcEAELUIIAYoAoQNIQgLIAggEmoiAiAFNgIAIAJBDGogEzYCACACQQhqIBo2AgAgAkEEaiAWNgIAIAYgDUEBaiINNgKIDSASQRBqIRIgCyANRw0ACyAGKAKEDSESIAYoAoANIgJBgoCAgHhODQMgEiELDAILQQBByLHBAEGQrcEAEKgKIQEMEwtBAUHIscEAQZCtwQAQqAohCwsgBwRAIAEgB0EEdEEEEOgOCyALIQEMEQsCQCAHQYCAgIB4aw4CABEDC0EAQYC2wQBBkK3BABCoCiEBDBALQQFBnLjBAEGQrcEAEKgKIQEMEQtBACECQQAhDQsgBkGADWogBkEoahDkAgJAAn8gBigCgA0EQCAGKAKEDQwBCyAGQUBrIgkgBkGcDWooAgA2AgAgBiAG/QACjA39CwMwIAYoAogNIgsNAUEDQZy4wQBBkK3BABCoCgshCSAHBEAgASAHQQR0QQQQ6A4LIAIEQCASIAJBBHRBBBDoDgsgCSEBDA4LIBsgBv0AAzD9CwIEIBtBFGogCSgCADYCACAbIGNCIIYgaIQ3A1AgGyAZNgJMIBsgBDYCSCAbIBA2AkQgGyAoNgJAIBsgFDYCPCAbIB82AjggGyAKNgI0IBsgDDYCMCAbIA02AiwgGyASNgIoIBsgAjYCJCAbIBU2AiAgGyABNgIcIBsgBzYCGCAbIAs2AgAMHgtBECACQcStwQAQ1w0ACyAGQoHKADcDgA0gBkGADWoQnw0hAQwZC0EBQby3wQBBkK3BABCoCiEBDBgLQQJBvLfBAEGQrcEAEKgKIQEMFwsgAiEBDBYLIAZBADoAgw0gBkElOwCBDSAGQQA2AoQNIAZBAToAgA0gBkGADWoQnw0hAQwVC0EFQdC1wQBBkK3BABCoCgwOC0EIQdC1wQBBkK3BABCoCiECDAoLQQ1B0LXBAEGQrcEAEKgKIQIMBwsgBkKBygA3A4ANIAZBgA1qEJ8NIQEMEgsgBkKBygA3A4ANIAZBgA1qEJ8NIQEMAwtBAkGcuMEAQZCtwQAQqAohAQwBCyAGKAKEDSEJDAkLIAxFDQEgCiAMQRRsQQQQ6A4MAQsgBigCwA8iAkUNACAGKALEDyACQRRsQQQQ6A4LIBkEQCAEIQIDQCACEO8CIAJBpAJqIQIgGUEBayIZDQALCyAQRQ0NIAQgEEGkAmxBBBDoDgwNCyAGQcAPahDcDAsgIQRAIAggIUECdEEEEOgOCwsgAiEIIClFDQAgECApQQJ0QQQQ6A4LIAZBjApqENwMCyAnBEAgCSAnQQJ0QQQQ6A4LIAgLIQkgEgRAIAchAgNAIAIoAgAiCARAIAJBBGooAgAgCEECdEEEEOgOCyACQRBqIQIgEkEBayISDQALCyAWRQ0BIAcgFkEEdEEEEOgODAELIAYoAowKIgJFDQAgByACQQR0QQQQ6A4LICRFDQAgCiAkQQJ0QQQQ6A4LIAsEQCAUIAtBAnRBBBDoDgsgCSEUCyAoRQ0AIAwgKEECdEEEEOgOCyAOBEAgASAOQfADbEEQEOgOCyAUIQEMAQsgBigCjAciAkUNACAGKAKQByACQfADbEEQEOgOCyAGKAJIIQkgBigCTCIZBEAgCSECA0AgAhDvAiACQaQCaiECIBlBAWsiGQ0ACwsgBigCRCICRQ0AIAkgAkGkAmxBBBDoDgsgG0EDNgI8IBsgATYCAAsgBkGAEmokAAwBC0EEIAJBxK3BABDXDQALIAMoApAMIgkgAygCzAwiAkEDRg0GGiADQdgLaiIBQTBqIgsgA0HEDGopAgA3AwAgAUEgaiIIIANBtAxq/QACAP0LAwAgAUEQaiIBIANBpAxq/QACAP0LAwAgA0HIC2oiBCADQdgMav0AAwD9CwMAIAMgA/0AApQM/QsD2AsgAyADKQPQDDcDwAsgAkECRg0FIAAgA/0AA9gL/QsC3AUgACADKQPACzcDmAYgAEGMBmogCykDADcCACAAQfwFaiAI/QADAP0LAgAgAEHsBWogAf0AAwD9CwIAIABBoAZqIAT9AAMA/QsDACA0IANByABqIgFBMGr9AAIA/QsEACAbQSBqIAFBIGr9AAIA/QsEACAbQRBqIAFBEGr9AAIA/QsEACADIAP9AAJI/QsEkAwgA0HQDGogA0GIAWpBoAH8CgAAIABBgAdqIANBqAJqQcQA/AoAACADQfANaiAtQaAD/AoAACAAQfQHaiARIgFBMGooAgA2AgAgAEHkB2ogAUEgav0AAgD9CwIAIABB1AdqIAFBEGr9AAIA/QsCACAAIAP9AAKwCf0LAsQHIANBkBFqIDVB2AD8CgAAIAAgG0HYBfwKAAAgACBKOgD8BiAAIEA2AvgGIAAgPzYC9AYgACA+NgLwBiAAID02AuwGIAAgPDYC6AYgACA7NgLkBiAAIDo2AuAGIAAgOTYC3AYgACBJNgLYBiAAIEg2AtQGIAAgRzYC0AYgACBGNgLMBiAAIEU2AsgGIAAgRDYCxAYgACBDNgLABiAAIEI2ArwGIAAgd0IghiB2hDcCtAYgACBBNgKwBiAAIAI2ApQGIAAgCTYC2AUMGgtBBUH018EAQZCtwQAQqAohAgwKC0EGQfTXwQBBkK3BABCoCgshASAAQQI2AsQHIAAgATYCAAwFC0EHQfTXwQBBkK3BABCoCgshASAAQQI2AsQHIAAgATYCAAwCC0EIQfTXwQBBkK3BABCoCgshASAAQQI2AsQHIAAgATYCACADQZgKahDJCQsgA0GwCWoQowgLIANB8AJqEOsHDAMLQQBBjLfBAEGQrcEAEKgKIQILIBAEQCAIIQEDQAJAIAEoAgBFDQAgAUHEAmooAgAiCQRAIAlBMEEEEOgOCyABQegCaigCACIJRQ0AIAFB7AJqKAIAIAlBA3RBBBDoDgsgAUGAA2ohASAQQQFrIhANAAsLIAtFDQAgCCALQYADbEEQEOgOCyAAQQI2AsQHIAAgAjYCAAsgA0GoAmoQzgcMBQsgA0KBygA3A/ACIANB8AJqEJ8NIQogAygCkAwiAUUNACADKAKUDCABQQxsQQQQ6A4LIAYEQCAJIAZBBHRBBBDoDgsgBARAIAcgBEEUbEEEEOgOCyAKIQkLIBoEQCALIBpBBHRBBBDoDgsgDgRAIAIhAQNAIAEQxwggAUE4aiEBIA5BAWsiDg0ACwsgCARAIAIgCEE4bEEEEOgOCyAJIQsLIAMoAugTIgIoAgAhASACIAFBAWs2AgAgAUEBRw0AIANB6BNqEIoKCyAAQQI2AsQHIAAgCzYCAAsgA0GIAWoQ7QkMAwsgA0KBygA3A7AJIANBsAlqEJ8NIQIgAygC9AIiAUUNACADKALwAiABQRRsQRtqQXhxIglrIAEgCWpBCWpBCBDoDgsgA0GQDGoQrAkgDARAIBYgDEEGdEHAABDoDgsgEwRAIBkgE0ECdEEEEOgOCyAaRQ0AIB0gGkEDdEEEEOgOCyAAQQI2AsQHIAAgAjYCAAsgA0HIAGoQggoMAwsgCQRAIAogCUECdEEEEOgOCwsgAkUNACAUIAJBA3RBBBDoDgsgAEECNgLEByAAIAs2AgALIANBwBRqJAAPC0EIIApB+MrEACgCACIAQcwIIAAbEQAAAAtBBCAEQcStwQAQ1w0AC0EEQTBB+MrEACgCACIAQcwIIAAbEQAAAAtBBEEMQfjKxAAoAgAiAEHMCCAAGxEAAAALQQQgCEHErcEAENcNAAusgAEEFX8afQF7A34jAEGQCGsiDCQAIAIgAygCoAERBAAhACAEIAUoAqABEQQAIQ0CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAAQf8BcQ4DAgABBQsgDUH/AXEOCQUCCwsHCwsLDAsLIA1B/wFxDgkECgIKCgoKCgsKCyANQf8BcQ0DQQAhDSACIAMQuwshAiAEIAUQuwshACACRQ0YIABFDRggASoCECImICaUIAEqAhQiKiAqlJIgASoCGCIpICmUkiIikSIlIAIqAgAiLpMgACoCACIhkyIvIApdRQ0XQwAAAAAhCiAhIAEqAgwiKCAiQwAAAABbBH1DAACAPwUgKSAllSEjICYgJZUhCiAqICWVCyIiIAEqAgAiJ5QgCiABKgIEIjeUkyIkICSSIiWUIDcgIyA3lCAiIAEqAggiOJSTIiQgJJIiJpQgJyAKIDiUICMgJ5STIiQgJJIiKpSTkiAjkyIplCEtICEgKCAqlCAnICWUIDggJpSTkiAikyIklCEnICEgKCAmlCA4ICqUIDcgJZSTkiAKkyIhlCEoIC4gI5QhJSAuICKUISYgLiAKlCEqIwBBIGsiACQAIABBADYCBCAAQSBqJAAgCygChAFFBEAgC0H8AGoiACgCAEUEQCAAQfTiwQAQwAgLIAtBATYChAEgCygCgAEiAEIANwIkIABBgICAgHw2AiAgAEGAgICAfDYCHCAAIC84AhggACAtOAIUIAAgJzgCECAAICg4AgwgACAlOAIIIAAgJjgCBCAAICo4AgAgAEEsav0MAAAAAAAAAAAAAAAAAAAAAP0LAgAgAEE8akEANgIADBcLIAsoAoABIgBBgICAgHw2AiAgAEGAgICAfDYCHCAAIC04AhQgACAnOAIQIAAgKDgCDCAAICU4AgggACAmOAIEIAAgKjgCACAAIC84AhgMFgtBACENIAIgAxC8CyEIIAQgBRC8CyEHIAhFDRcgB0UNFyALIAEQ9wINFyAMIAEqAgwiJTgC3AYgDCABKgIIIieMOALYBiAMIAEqAgQiKIw4AtQGIAwgASoCACIjjDgC0AYgDCAlICMgASoCFCImlCAoIAEqAhAiKpSTIiEgIZIiKZQgKCAoIAEqAhgiJJQgJyAmlJMiISAhkiIilCAjICcgKpQgIyAklJMiISAhkiIhlJOSICSTOALoBiAMICUgIZQgIyAplCAnICKUk5IgJpM4AuQGIAwgJSAilCAnICGUICggKZSTkiAqkzgC4AYgDEHABGogCCAHIAEQoQIgDCoCwAQiISAKXg0LIAxB+ARqIAcgCCAMQdAGahChAgJAIAwqAvgEIiIgCl4NACAMQeAFaiAIIAcgARDSAiAKIAwqAuAFIgpdDQAgDCAM/QACwAT9CwOYBiAhICJdIAogIl1xDQ0gCiAhXkUNFSAMIAz9AALgBf0LA5gGDBULIAtBADYChAEMFwtBACENIAIgAxC+CyEGIAQgBRC+CyEDIAZFDRYgA0UNFiAGKgIUIS4gBioCDCE3IAYqAhAhOCAGKgIIITAgBioCACExIAYqAgQhMyABKgIAIjIgAyoCECImlCABKgIEIi8gAyoCDCIqlJMiISAhkiEjIAEqAggiLSAqlCAyIAMqAhQiIpSTIiEgIZIhJSAMQRhqIgAgASoCGCIpICIgASoCDCInICOUIDIgJZQgLyAvICKUIC0gJpSTIiEgIZIiIZSTkpKSOAIUIAAgASoCFCIkICYgJyAllCAtICGUIDIgI5STkpKSOAIQIAAgASoCECIiICogJyAhlCAvICOUIC0gJZSTkpKSOAIMIDIgAyoCBCIllCAvIAMqAgAiJpSTIiEgIZIhKCAmIC2UIAMqAggiKiAylJMiISAhkiEjIAAgKSAqICcgKJQgMiAjlCAvICogL5QgJSAtlJMiISAhkiIhlJOSkpI4AgggACAkICUgJyAjlCAtICGUIDIgKJSTkpKSOAIEIAAgIiAmICcgIZQgLyAolCAtICOUk5KSkjgCACAMKgIkIiYgDCoCGCIvkyIkIDEgL5MiI5QgDCoCKCIqIAwqAhwiLZMiNCAzIC2TIiKUkiAMKgIsIikgDCoCICIokyI1IDAgKJMiIZSSITYgJCAklCA0IDSUkiA1IDWUkiE5AkACQAJAAkACQAJAAkACQCA3IDGTIjIgMpQgOCAzkyInICeUkiAuIDCTIiUgJZSSIjpDAAAANF9FBEAgMiAjlCAnICKUkiAlICGUkiErIDlDAAAANF8NAUMAAAAAISMgOiA5lCIsIDIgJJQgJyA0lJIgJSA1lJIiJCAklCIikyIhQwAAADReRQ0EICFDAAAANF8NBEMAAMB/QwAAgD8gLJggLCAsXBtDAADAf0MAAIA/ICKYICIgIlwbXA0DICy8IgIgIrwiAEsNAiAAIAJrQQVPDQMMBAsgOUMAAAA0X0UNBUMAAAAAISEMGAtDAAAAACEhICuMIDqVIiNDAAAAAF5FDRcgI0MAAIA/ICNDAACAP10bISMMAwsgAiAAa0EFSQ0BCyAkIDaUICsgOZSTICGVIiFDAACAPyAhQwAAgD9dG0MAAAAAICFDAAAAAF4bISMLIDYgJCAjlJIgOZUiIUMAAAAAXUUEQCAhQwAAgD9eRQ0BQwAAAAAhISAkICuTIDqVIiNDAAAAAF5FDREgI0MAAIA/ICNDAACAP10bISNDAACAPyEhDAELQwAAAAAhISArjCA6lSIjQwAAAABeRQ0UICNDAACAPyAjQwAAgD9dGyEjC0MAAAAAISJBACEEICNDAAAAAFwNAQwCC0MAAAAAISJBACEEIDYgOZUiI0MAAAAAXkUEQEMAAAAAISEMFAsgI0MAAIA/ICNDAACAP10bISEMAQsgI0MAAIA/WwRAQwEAAAAhIgwBC0MAAIA/ICOTISJBASEEC0MAAAAAISVBACECICEiJEMAAAAAWwRAICIhIQwTCyAkQwAAgD9bBEBDAQAAACElICIhIQwTC0MAAIA/ICSTISVBASECICIhIQwSCyANQf8BcQ0BCyACIAMQuwsiAARAIAwgASoCDCIlOAIkIAwgASoCCCInjDgCICAMIAEqAgQiKIw4AhwgDCABKgIAIiOMOAIYIAwgJSAjIAEqAhQiJpQgKCABKgIQIiqUkyIhICGSIimUICggKCABKgIYIiSUICcgJpSTIiEgIZIiIpQgIyAnICqUICMgJJSTIiEgIZIiIZSTkiAkkzgCMCAMICUgIZQgIyAplCAnICKUk5IgJpM4AiwgDCAlICKUICcgIZQgKCAplJOSICqTOAIoIAxBGGogBCAFKAIQIAUoAjAgACoCACAIIAkgBiAHIAogC0EBENABQQAhDQwVCyAEIAUQuwsiAA0DQQAhDQwUCwJAIABB/wFxQQRrDgUABAQEAgQLIA1B/wFxQQFrDggABAQEBAQEBQQLIAIgAxC8CyIOQQAgBCAFEMALIgAbDQlBACENIAIgAxDACyECIAQgBRC8CyEAIAJFDRIgAEUNEiAMIAEqAgwiJTgCJCAMIAEqAggiJ4w4AiAgDCABKgIEIiiMOAIcIAwgASoCACIjjDgCGCAMICUgIyABKgIUIiaUICggASoCECIqlJMiISAhkiIplCAoICggASoCGCIklCAnICaUkyIhICGSIiKUICMgJyAqlCAjICSUkyIhICGSIiGUk5IgJJM4AjAgDCAlICGUICMgKZQgJyAilJOSICaTOAIsIAwgJSAilCAnICGUICggKZSTkiAqkzgCKCAMQRhqIAEgACACIAggCSAGIAcgCiALQQEQQAwSCyAMQRhqIAQgBSgCvAERAAAgDCgCGCIFRQ0JIAwqAiAhISAMKAIcIQQgAiADEL0LIgAEQEEAIQ0gASAAIAUgBEEcaigCACAhIAogC0EAEKsBDBILQZzbwQAQ8g4AC0EAIQ0gASACIAMoAhAgAygCMCAAKgIAIAYgByAIIAkgCiALQQAQ0AEMEAsgDUH/AXFBCEYNAQsgDCACIAMoArwBEQAAIAxBDGogBCAFKAK8AREAAEEBIQ0gDCgCACIYRQ0OIAwoAgwiGUUNDiAMKgIUITQgDCgCECEdIAwqAgghNSAMKAIEIR4gCyABEPcCRQ0BQQAhDQwOCyAMQdgBaiACIAMoArwBEQAAIAwoAtgBIgNFDQUgDCoC4AEhIiAMKALcASECIAwgASoCDCIjOAIkIAwgASoCCCItjDgCICAMIAEqAgQiJ4w4AhwgDCABKgIAIiiMOAIYIAwgIyAoIAEqAhQiJZQgJyABKgIQIiaUkyIhICGSIiqUICcgJyABKgIYIimUIC0gJZSTIiEgIZIiJJQgKCAtICaUICggKZSTIiEgIZIiIZSTkiApkzgCMCAMICMgIZQgKCAqlCAtICSUk5IgJZM4AiwgDCAjICSUIC0gIZQgJyAqlJOSICaTOAIoIAQgBRC9CyIABEAgDEEYaiAAIAMgAkEcaigCACAiIAogC0EBEKsBQQAhDQwOC0Gs28EAEPIOAAsgCyoCiAEiJiAmlCALKgKMASIlICWUkiALKgKQASIrICuUkiIsQwAAgCheIgAEQCArICyRIiGVISIgJSAhlSEjICYgIZUhJAsgDEEYaiIC/QwAAAAAAAAAAAAAAAAAAAAA/QsCsAEgAv0MAAAAAAEAAAACAAAAAwAAAP0LAgAgAkEQakEAQaAB/AsAIB0oAhQhGiAeKAIMIRsgAA0FIAEqAhAiJiAmlCABKgIUIiQgJJSSIAEqAhgiIiAilJIiIUMAAIAoXkUEQEMAAAAAISNDAACAPyEkQwAAAAAhIgwGCyAiICGRIiGVISIgJCAhlSEjICYgIZUhJAwFCyALQQA2AoQBDAsLIAwgIjgCmAYgDCAlICggDCoC/AQiKpQgIyAMKgKABSIplJMiCiAKkiIklCAjICMgDCoChAUiIpQgJyAqlJMiCiAKkiIhlCAoICcgKZQgKCAilJMiCiAKkiIKlJOSICKTOAKkBiAMICUgIZQgJyAKlCAjICSUk5IgKZM4AqAGIAwgJSAKlCAoICSUICcgIZSTkiAqkzgCnAYMBwtDAQAAACElQQAhBEEAIQIMBQsgDCABKgIMIiU4AiQgDCABKgIIIieMOAIgIAwgASoCBCIojDgCHCAMIAEqAgAiI4w4AhggDCAlICMgASoCFCImlCAoIAEqAhAiKpSTIiEgIZIiKZQgKCAoIAEqAhgiJJQgJyAmlJMiISAhkiIilCAjICcgKpQgIyAklJMiISAhkiIhlJOSICSTOAIwIAwgJSAhlCAjICmUICcgIpSTkiAmkzgCLCAMICUgIpQgJyAhlCAoICmUk5IgKpM4AihBACENIAEgDEEYaiAOIAAgBiAHIAggCSAKIAtBABBADAgLQQEhDQwHCyAMICI4ArwCIAwgIzgCuAIgDCAkOAK0AiAMQZgGaiICIBggDEG0AmogGxEBACAMIAwqArwCjDgC4AEgDCAMKgK4Aow4AtwBIAwgDCoCtAKMOALYASAMQdAGaiIAIBkgASAMQdgBaiIDIBoRAgAgAyACIAAQowsgDEEYaiIAQSBqIAxB6AFq/QACAP0LAgAgDEHIAGogA0EgaigCADYCACAMQQA2AtQBIAxBADYCxAEgDCAM/QAC2AH9CwIoIAxBwARqIAAQawJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAwqAsAEIiIgIpQgDCoCxAQiJiAmlJIgDCoCyAQiJCAklJIiIUMAAAAAXkUNACAKIDWSIDSSIS4gJIwgIZEiCpUhLCAmjCAKlSErICKMIAqVISVD//9/fyEkQeQAIQUCQAJAA0AgDCoCwAQiIiAilCAMKgLEBCImICaUkiAMKgLIBCIhICGUkiIKQwAAyCteRQ0DIAwgIYwgCpEiCpU4AoAFIAwgJowgCpU4AvwEIAwgIowgCpU4AvgEIAogJGANAiAMQeAFaiICIBggDEH4BGogGxEBACAMIAwqAoAFjDgC2AYgDCAMKgL8BIw4AtQGIAwgDCoC+ASMOALQBiAMQZgGaiIAIBkgASAMQdAGaiAaEQIAIAxB2AFqIgMgAiAAEKMLIAwqAvgEIiMgDCoC2AGUIAwqAvwEIiQgDCoC3AGUkiAMKgKABSIhIAwqAuABlJIiIrxB/////wdxQYCAgPwHTw0EQQMhAiAijCAuXg0SIAogIpIgCkO9G486lF8NESAMQRhqIgAgAxDhA0UNESAMKgKABSEsIAwqAvwEISsgDCoC+AQhJSAMQcAEaiAAEGsgDCgC1AFBA0YNASAKISQgBUEBayIFDQALQwAAgD8hI0MAAAAAISFDAAAAACEkDBELICJDAACgtV9FDQEMDgsMDQsgDEIENwLoAiAMQgA3AuACIAxCgICAgMAANwLYAiAMQgQ3AtACIAxCADcCyAIgDEKAgICAwAA3AsACIAxBwAJqIgBBADYCLCAAQQA2AhQgAEEANgIIIABBADYCICAAQSRqIRYgDEHMAmohFwJAIAwoAtQBIg5Bf0YEQCAMKALIAiEDDAELIA5BAWohBEEAIQUDQCAMQdgBaiICQSBqIQ0jAEEgayIDJAACQCAMQRhqIgAoArwBIAVPBEAgBUEDTQ0BIAVBBEGok8MAEIULAAsgA0EANgIYIANBATYCDCADQYCTwwA2AgggA0IENwIQIANBCGpBmJPDABC5DQALIANBIGokACANIAAgBUEkbGpBEGoiA0EgaigCADYCACACQRBqIgAgA0EQav0AAgD9CwMAIAwgA/0AAgD9CwPYASAMKALIAiIDIAwoAsACRgRAIAxBwAJqQdj3wQAQlQgLIAwoAsQCIANBJGxqIgIgDP0AA9gB/QsCACACQSBqIA0oAgA2AgAgAkEQaiAA/QADAP0LAgAgDCADQQFqIgM2AsgCIAQgBUEBaiIFRw0AC0MAAIA/IStDAAAAACEuQwAAAAAhIkMAAAAAIQpDAAAAACEhQwAAAAAhJEMAAAAAISNDAAAAACEsQwAAAAAhJQJAAkAgDg4ECwECAAILIANBAU0NAyADQQJGDQQgA0EDTQ0FIAwoAsQCIg0qAgQhCiANKgJIIA0qAgAiIZMhLCANKgIoIAqTIiYgDSoCUCANKgIIIiKTIiSUIA0qAiwgIpMiJSANKgJMIAqTIiuUkyANKgJsICGTlCAlICyUIA0qAiQgIZMiISAklJMgDSoCcCAKk5SSICEgK5QgJiAslJMgDSoCdCAik5SSQwAAAABeDQYMCAsgA0EBTQ0GQwAAAAAgDCgCxAIiACoCLCAAKgIIkyImjCAAKgIkIAAqAgCTIiSLIAAqAiggACoCBJMiIoteIgAbIiEgJIwgIiAAGyIKIAqUICEgIZQgJkMAAAAAIAAbIiEgIZSSkpEiJZUhKyAMICYgK5QgIiAKICWVIgqUkyIsOAKACCAMICQgCpQgJiAhICWVIiGUkyIKOAKECCAMICIgIZQgJCArlJMiIjgCiAggDEHAB2oiAyAYIAxBgAhqIBsRAQAgDCAijDgC4AEgDCAKjDgC3AEgDCAsjDgC2AEgDEHQBmoiAiAZIAEgDEHYAWoiACAaEQIAIAAgAyACEKMLIAwoAsgCIgMgDCgCwAJGBEAgDEHAAmpB6PfBABCVCAsgDCgCxAIgA0EkbGoiAiAM/QAC2AH9CwIAIAJBIGogDEHYAWoiAEEgaigCADYCACACQRBqIABBEGr9AAIA/QsCACAMIANBAWoiAzYCyAILIAxBAjYCuAUgDEKAgICAEDcCsAUgDEEBNgLEBSAMQoCAgIAgNwK8BSAMQQE2AtAFIAxCgYCAgBA3AsgFIAxBADYC3AUgDEIANwLUBSAMQdgBaiIOIAwoAsQCIAMgDEGwBWogDEHIBWoQ3gIgDEHgBWoiAEEwaiINIA5BMGoiBSgCADYCACAAQSBqIgQgDkEgaiIC/QACAP0LAwAgAEEQaiIDIA5BEGoiAP0AAgD9CwMAIAwgDP0AAtgB/QsD4AUgDiAMKALEAiAMKALIAiAMQbwFaiAMQdQFahDeAiAMQZgGaiIOQTBqIAUoAgA2AgAgDkEgaiAC/QACAP0LAwAgDkEQaiAA/QACAP0LAwAgDCAM/QAC2AH9CwOYBiAMKALMAiICIAwoAtQCIg5GBEAgF0HY9cEAEJsIIAwoAswCIQILIAwoAtACIgAgDkE0bGoiBSAM/QAD4AX9CwIAIAVBIGogBP0AAwD9CwIAIAVBEGogA/0AAwD9CwIAIAVBMGogDSgCADYCACAMIA5BAWoiAzYC1AIgAiADRgR/IBdB6PXBABCbCCAMKALQAgUgAAsgA0E0bGoiAiAM/QADmAb9CwIAIAJBIGogDEGYBmoiAEEgav0AAwD9CwIAIAJBEGogAEEQav0AAwD9CwIAIAJBMGogAEEwaigCADYCACAMIA5BAmo2AtQCIAwoAuwCIgUgDCgC5AJGBEAgFkHE4MEAELQICyAFQQN0IgAgDCgC6AJqQgA3AgAgDCAFQQFqNgLsAiAMKALoAiINIABqIgAqAgQhCiAAKAIAIQQCQCAFRQRAQQAhAgwBCwNAIAogDSAFQQFrIgNBAXYiAkEDdGoiAEEEaioCAF5FBEAgBSECDAILIA0gBUEDdGogACkCADcCACACIQUgA0EBSw0ACwsgDSACQQN0aiIAIAo4AgQgACAENgIAIAwoAuwCIgUgDCgC5AJGBEAgFkHE4MEAELQICyAFQQN0IgAgDCgC6AJqQgE3AgAgDCAFQQFqNgLsAiAMKALoAiINIABqIgAqAgQhCiAAKAIAIQQCQCAFRQRAQQAhAgwBCwNAIAogDSAFQQFrIgNBAXYiAkEDdGoiAEEEaioCAF5FBEAgBSECDAILIA0gBUEDdGogACkCADcCACACIQUgA0EBSw0ACwsgDSACQQN0aiIAIAo4AgQgACAENgIADAcLQfj3wQBBJ0Gg+MEAENYMAAtBASADQdDywQAQhQsAC0ECQQJB4PLBABCFCwALQQMgA0Hw8sEAEIULAAsgDUEkaiIC/QACACE7IAIgDUHIAGoiBf0AAgD9CwIAIAUgO/0LAgAgAkEQaiIA/QACACE7IAAgBUEQaiIE/QACAP0LAgAgAkEgaiIAKAIAIQIgACAFQSBqIgAoAgA2AgAgBCA7/QsCACAAIAI2AgAMAQtBASADQcj1wQAQhQsACyAMQQI2AvgCIAxCgICAgBA3AvACIAxBAjYChAMgDEKBgICAMDcC/AIgDEEDNgKQAyAMQoCAgIAgNwKIAyAMQQE2ApwDIAxCgICAgDA3ApQDIAxBAjYCqAMgDEKDgICAEDcCoAMgDEEANgK0AyAMQoOAgIAgNwKsAyAMQQM2AsADIAxCgICAgBA3ArgDIAxBADYCzAMgDEKCgICAEDcCxAMgDEHYAWoiECANIAMgDEHwAmogDEGgA2oQ3gIgDEHQA2oiAEEwaiIEIBBBMGoiDygCADYCACAAQSBqIgMgEEEgaiIN/QACAP0LAwAgAEEQaiIAIBBBEGoiBf0AAgD9CwMAIAwgDP0AAtgB/QsD0AMgDC0AjAIhEiAQIAwoAsQCIAwoAsgCIAxB/AJqIAxBrANqEN4CIAxBiARqIgJBMGogDygCADYCACACQSBqIA39AAIA/QsDACACQRBqIAX9AAIA/QsDACAMIAz9AALYAf0LA4gEIAwtAIwCIRMgECAMKALEAiAMKALIAiAMQYgDaiAMQbgDahDeAiAMQcAEaiICQTBqIA8oAgA2AgAgAkEgaiAN/QACAP0LAwAgAkEQaiAF/QACAP0LAwAgDCAM/QAC2AH9CwPABCAMLQCMAiEOIBAgDCgCxAIgDCgCyAIgDEGUA2ogDEHEA2oQ3gIgDEH4BGoiAkEwaiAPKAIANgIAIAJBIGogDf0AAgD9CwMAIAJBEGogBf0AAgD9CwMAIAwgDP0AAtgB/QsD+AQgDC0AjAIhDSAMKALMAiICIAwoAtQCIhBGBEAgF0GA88EAEJsIIAwoAswCIQILIAwoAtACIgUgEEE0bGoiDyAM/QAD0AP9CwIAIA9BIGogA/0AAwD9CwIAIA9BEGogAP0AAwD9CwIAIA9BMGogBCgCADYCACAMIBBBAWoiADYC1AIgACACRgRAIBdBkPPBABCbCCAMKALQAiEFIAwoAswCIQILIAUgAEE0bGoiAyAM/QADiAT9CwIAIANBIGogDEGIBGoiAEEgav0AAwD9CwIAIANBEGogAEEQav0AAwD9CwIAIANBMGogAEEwaigCADYCACAMIBBBAmoiADYC1AIgACACRgRAIBdBoPPBABCbCCAMKALQAiEFIAwoAswCIQILIAUgAEE0bGoiAyAM/QADwAT9CwIAIANBIGogDEHABGoiAEEgav0AAwD9CwIAIANBEGogAEEQav0AAwD9CwIAIANBMGogAEEwaigCADYCACAMIBBBA2oiADYC1AIgACACRgRAIBdBsPPBABCbCCAMKALQAiEFCyAFIABBNGxqIgIgDP0AA/gE/QsCACACQSBqIAxB+ARqIgBBIGr9AAMA/QsCACACQRBqIABBEGr9AAMA/QsCACACQTBqIABBMGooAgA2AgAgDCAQQQRqIgA2AtQCAkAgEkEBcUUNAAJAIAAEQCAMKALIAkUNASAFKgIYIAwoAsQCIgAqAgCUIAVBHGoqAgAgAEEEaioCAJSSIAVBIGoqAgAgAEEIaioCAJSSIgpDAACgtV0NByAKjCEKIAwoAuwCIgUgDCgC5AJGBEAgFkHE4MEAELQICyAFQQN0IgIgDCgC6AJqIgAgCjgCBEEAIQMgAEEANgIAIAwgBUEBajYC7AIgDCgC6AIiDyACaiIAKgIEIQogACgCACEEAkAgBUUNAANAIAogDyAFQQFrIgJBAXYiA0EDdGoiAEEEaioCAF5FBEAgBSEDDAILIA8gBUEDdGogACkCADcCACADIQUgAkEBSw0ACwsgDyADQQN0aiIAIAo4AgQgACAENgIADAILQQBBAEHA88EAEIULAAtBAEEAQdDzwQAQhQsACwJAIBNBAXFFDQACQCAMKALUAiIAQQJPBEAgDCgCyAIiAEEBTQ0BIAwoAtACIgIqAkwgDCgCxAIiACoCJJQgAkHQAGoqAgAgAEEoaioCAJSSIAJB1ABqKgIAIABBLGoqAgCUkiIKQwAAoLVdDQcgCowhCiAMKALsAiIFIAwoAuQCRgRAIBZBxODBABC0CAsgBUEDdCICIAwoAugCaiIAIAo4AgQgAEEBNgIAIAwgBUEBajYC7AIgDCgC6AIiDyACaiIAKgIEIQogACgCACEEAkAgBUUEQEEAIQIMAQsDQCAKIA8gBUEBayIDQQF2IgJBA3RqIgBBBGoqAgBeRQRAIAUhAgwCCyAPIAVBA3RqIAApAgA3AgAgAiEFIANBAUsNAAsLIA8gAkEDdGoiACAKOAIEIAAgBDYCAAwCC0EBIABB4PPBABCFCwALQQEgAEHw88EAEIULAAsCQCAOQQFxRQ0AAkAgDCgC1AIiAEEDTwRAIAwoAsgCIgBBAk0NASAMKALQAiICKgKAASAMKALEAiIAKgJIlCACQYQBaioCACAAQcwAaioCAJSSIAJBiAFqKgIAIABB0ABqKgIAlJIiCkMAAKC1XQ0HIAqMIQogDCgC7AIiBSAMKALkAkYEQCAWQcTgwQAQtAgLIAVBA3QiAiAMKALoAmoiACAKOAIEIABBAjYCACAMIAVBAWo2AuwCIAwoAugCIg8gAmoiACoCBCEKIAAoAgAhBAJAIAVFBEBBACECDAELA0AgCiAPIAVBAWsiA0EBdiICQQN0aiIAQQRqKgIAXkUEQCAFIQIMAgsgDyAFQQN0aiAAKQIANwIAIAIhBSADQQFLDQALCyAPIAJBA3RqIgAgCjgCBCAAIAQ2AgAMAgtBAiAAQYD0wQAQhQsAC0ECIABBkPTBABCFCwALAkAgDUEBcUUNAAJAIAwoAtQCIgBBBE8EQCAMKALIAiIAQQNNDQEgDCgC0AIiAioCtAEgDCgCxAIiACoCbJQgAkG4AWoqAgAgAEHwAGoqAgCUkiACQbwBaioCACAAQfQAaioCAJSSIgpDAACgtV0NByAKjCEKIAwoAuwCIgUgDCgC5AJGBEAgFkHE4MEAELQICyAFQQN0IgIgDCgC6AJqIgAgCjgCBCAAQQM2AgAgDCAFQQFqNgLsAiAMKALoAiIPIAJqIgAqAgQhCiAAKAIAIQQCQCAFRQRAQQAhAgwBCwNAIAogDyAFQQFrIgNBAXYiAkEDdGoiAEEEaioCAF5FBEAgBSECDAILIA8gBUEDdGogACkCADcCACACIQUgA0EBSw0ACwsgDyACQQN0aiIAIAo4AgQgACAENgIADAILQQMgAEGg9MEAEIULAAtBAyAAQbD0wQAQhQsACyASQQFxDQAgE0EBcQ0AIA5BAXENACANQQFxDQBB9MrEACgCAEEESQ0EIAxBADYC6AEgDEEBNgLcASAMQZT1wQA2AtgBIAxCBDcC4AEgDEGc9cEANgLgBiAMQRk2AtwGIAxBrPXBADYC2AYgDEEZNgLUBiAMQaz1wQA2AtAGIwBB0ABrIgQkACAMQdAGaiIDKAIQIgAoAgghAiADKQIIIT4gACkCACE8IAMpAgAhPSAMQdgBaiIA/QACACE7IAQgACkCEDcCRCAEIDv9CwI0IAQgPTcCLCAEQQQ2AiggBCA8NwIgIARBADYCHCAEID43AhQgBEEANgIQIAQgAjYCDCAEQQE2AghB0MrEACgCAEGUhsQAQfDKxAAoAgBBAkYiABsgBEEIakHUysQAKAIAQfyFxAAgABsoAhARAAAgBEHQAGokAAwECyAMKALsAiINRQ0DIAxB0AZqIgBBJGohHyAMQegGaiEcIABBDGohECAMKALoAigCACEUQ///f38hIwJAAn0DQCAMKALoAiERAkADQCAMIA1BAWsiDjYC7AIgESAOQQN0aiIAKgIEIQogACgCACEDAkAgDkUEQCADIQAgCiEiDAELIBEqAgQhIiARIAo4AgQgESgCACEAIBEgAzYCAEEAIQVBASECIA1BBE8EQCAOQQJrIgJBACACIA5NGyESQQAhBEEBIQIDQCARIARBA3RqIBEgAiARIAJBA3RqIgRBBGoqAgAgBEEMaioCAF5FaiIFQQN0aikCADcCACAFQQF0IhNBAXIhAiAFIQQgEiATSw0ACwsCQAJAIA1BAmsgAkYEQCARIAVBA3RqIBEgAkEDdGoiBCkCADcCACAEIAo4AgQgBCADNgIAIAIhBQwBCyARIAVBA3RqIgIgCjgCBCACIAM2AgAgBQ0AQQAhAgwBCwNAIBEgBUEBayINQQF2IgJBA3RqIgRBBGoqAgAgCl1FBEAgBSECDAILIBEgBUEDdGogBCkCADcCACACIQUgDUEBSw0ACwsgESACQQN0aiICIAo4AgQgAiADNgIACwJAAkACQAJAAkACQAJAAkAgDCgC1AIiAiAASwRAIAxBgAhqIg9BCGoiDSAAQTRsIgUgDCgC0AJqIhVBFGooAgA2AgAgDCAVKQIMNwOACCAMQcAHaiISQQhqIgQgFUEgaigCADYCACAMIBUpAhg3A8AHIAxB2AFqIgNBCGoiAiAVQSxqKAIANgIAIBUtADAhEyAVKQIAITwgFSkCJCE9IAxB2AZqIBVBCGooAgA2AgAgDCA9NwPYASAMIDw3A9AGIBBBCGogDSgCADYCACAQIAwpA4AINwIAIBxBCGogBCgCADYCACAcIAwpA8AHNwIAIB9BCGogAigCADYCACAfIAwpA9gBNwIAIAwgEzoAgAcgEw0HIA8gGCAcIBsRAQAgDCAMKgLwBow4AuABIAwgDCoC7AaMOALcASAMIAwqAugGjDgC2AEgEiAZIAEgAyAaEQIAIAxBhAdqIA8gEhCjCyAMKALIAiIPIAwoAsACRgRAIAxBwAJqQYj2wQAQlQgLIAwoAsQCIA9BJGxqIgMgDP0AAoQH/QsCACADQSBqIAxBhAdqIgJBIGooAgA2AgAgA0EQaiACQRBq/QACAP0LAgAgDCAPQQFqIgM2AsgCIAAgFCAjIAwqAoQHIAwqAugGlCAMKgKIByAMKgLsBpSSIAJBCGoqAgAgDCoC8AaUkiIKXiICGyEUIAwoAtQCIQQCQCAiIAogIyACGyIjkkMAAEg3XUUEQCAAIARPDQMgDCgC0AIgBWpBAToAMCAMKALcBiICIAwoAtQCIgBPDQQgDCgC0AIgAkE0bGogDCgC0AYQ/gYhAyAMKALgBiICIAwoAtQCIgBPDQUgDCgC0AIgAkE0bGogDCgC1AYQ/gYhAiAMKALkBiIEIAwoAtQCIgBPDQYgDCgC0AIgBEE0bGogDCgC2AYQ/gYhACAMQcACaiIEIA8gDCgC3AYgAxDAAiAEIA8gDCgC4AYgAhDAAiAEIA8gDCgC5AYgABDAAiAMKALgAiIARQ0TICKMISIgDCgC1AIhEiAMKALcAiIFQQhqIQMgBSAAQQN0aiEOA0AgAyEAAkACQAJAIAUoAgAiAiAMKALUAiINSQRAIAwoAtACIAJBNGxqIgMtADANAyAMIAI2ArQHIAUoAgQhAiAMIA82ArAHIAwgDUEBazYCvAcgDCANQQFqNgK4ByAMIAMgAkEBakEDcEECdGooAgA2AqwHIAwgAyACQQJqQQNwQQJ0aigCADYCqAcgDEHYAWogDCgCxAIgDCgCyAIgDEGoB2ogDEG0B2oQ3gIgAyAFKAIEQQFqQQNwQQJ0aiANNgIMIAwoAtQCIgQgDCgCzAJGBEAgF0GI98EAEJsICyAMKALQAiICIARBNGxqIgUgDP0AAtgB/QsCACAFQSBqIAxB2AFqIgNBIGr9AAIA/QsCACAFQRBqIANBEGr9AAIA/QsCACAFQTBqIANBMGooAgA2AgAgDCAEQQFqIgM2AtQCIAwtAIwCRQ0DIAMgDU0NDCACIA1BNGxqIgUoAgAiAyAMKALIAiIETw0NICIgDCgCxAIiAiADQSRsaiIDKgIAIAUqAhiUIAMqAgQgBUEcaioCAJSSIAMqAgggBUEgaioCAJSSIgpeDQYgCkMAAKC1XQ0YIAqMIQogDCgC7AIiBSAMKALkAkYEQCAWQcTgwQAQtAgLIAVBA3QiAyAMKALoAmoiAiAKOAIEIAIgDTYCACAMIAVBAWo2AuwCIAwoAugCIhMgA2oiAioCBCEKIAIoAgAhDSAFDQFBACECDAILIAIgDUH49sEAEIULAAsDQCAKIBMgBUEBayIEQQF2IgJBA3RqIgNBBGoqAgBeRQRAIAUhAgwCCyATIAVBA3RqIAMpAgA3AgAgAiEFIARBAUsNAAsLIBMgAkEDdGoiAiAKOAIEIAIgDTYCAAsgACAAIA5HQQN0aiEDIA4gACIFRw0ACwwKCyAEIBRLBEAgDEHYAWogDCgC0AIgFEE0bGoiACAMKALEAiADELwHIAAqAiAhLCAAKgIcISsgACoCGAwOCyAUIARBuPfBABCFCwALIAxBwAdqIAxB0AZqIAIgBBC8ByAMKgLwBiEsIAwqAuwGISsgDCoC6AYhJSAMKgLUByEuIAwqAtAHISIgDCoCzAchCiAMKgLIByEhIAwqAsQHISQgDCoCwAchIwwOCyAAIAJB+PXBABCFCwALIAAgBEGY9sEAEIULAAsgAiAAQaj2wQAQhQsACyACIABBuPbBABCFCwALIAQgAEHI9sEAEIULAAsgDSADQZj3wQAQhQsACyADIARBqPfBABCFCwALIA4iDQ0BDAILCyAMKALUAiIAIBJGDQcgACASTQ0FIAwoAtACIBJBNGxqIABBAWs2AhQgDCgC1AIiAEUNBiAMKALQAiAAQTRsaiIAQTRGDQYgAEEkayASNgIAIAxBADYC4AIgIEHkAEYNACAgQQFqISAgDCgC7AIiDQ0BCwsgDCgC1AIiACAUTQ0BIAxB2AFqIAwoAtACIBRBNGxqIgAgDCgCxAIgDCgCyAIQvAcgACoCICEsIAAqAhwhKyAAKgIYCyElIAwqAuwBIS4gDCoC6AEhIiAMKgLkASEKIAwqAuABISEgDCoC3AEhJCAMKgLYASEjDAELIBQgAEHI98EAEIULAAsgDCgCwAIiAARAIAwoAsQCIABBJGxBBBDoDgsgDCgCzAIiAARAIAwoAtACIABBNGxBBBDoDgsgDCgC2AIiAARAIAwoAtwCIABBA3RBBBDoDgsgDCgC5AIiAARAIAwoAugCIABBA3RBBBDoDgtBASECDAULIBIgAEHY9sEAEIULAAtB6PbBABDyDgALIAwoAsACIgAEQCAMKALEAiAAQSRsQQQQ6A4LIAwoAswCIgAEQCAMKALQAiAAQTRsQQQQ6A4LIAwoAtgCIgAEQCAMKALcAiAAQQN0QQQQ6A4LIAwoAuQCIgAEQCAMKALoAiAAQQN0QQQQ6A4LQQMhAkMAAIA/ISNDAAAAACEhQwAAAAAhJAwCC0EBIQIgDEHQBmogDEEYakEBENwDIAwqAuQGIS4gDCoC4AYhIiAMKgLcBiEKIAwqAtgGISEgDCoC1AYhJCAMKgLQBiEjDAELIAxB0AZqIAxBGGpBABDcAyAMKgLkBiEuIAwqAuAGISIgDCoC3AYhCiAMKgLYBiEhIAwqAtQGISQgDCoC0AYhI0EBIQIgDCoCgAUhLCAMKgL8BCErIAwqAvgEISULIAsoAoQBIgNBBnQhDkEAIQUCQAJAAkACQCADQf///x9LDQAgDkH8////B0sNACALKAKAASEEAkAgDkUEQEEEIQ1BACEADAELQQQhBSADIQAgDkEEEJEOIg1FDQELIA4EQCANIAQgDvwKAAALIAtBADYChAFDAAAAACEmAkACQAJAIAJBAWsOAwACAQILIAwgKzgCnAYgDCAlOAKYBiAMICw4AqAGIAwgASoCDCI2ICsgASoCACIwlCAlIAEqAgQiMZSTIikgKZIiJpQgMSAsIDGUICsgASoCCCIzlJMiKSApkiIqlCAwICUgM5QgLCAwlJMiKSApkiIplJOSICyTOALYBiAMIDYgKZQgMCAmlCAzICqUk5IgK5M4AtQGIAwgNiAqlCAzICmUIDEgJpSTkiAlkzgC0AYgDCAJNgIkIAwgCDYCICAMIAc2AhwgDCAGNgIYIAxBGGogASAMQZgGaiAMQdAGahC0DEUEQCAADQZBACENDA0LIAogI5MhNyAiICSTITggLiAhkyEvIAxB2AFqIgUQ2wwgDEEYaiIEENsMIBggDEGYBmoiAiAFIB4oAhwRAQAgGSAMQdAGaiAEIB0oAhwRAQAgASoCECEpIAEgAiAFIAQgC0EAECsgDCoCmAYiJyAlXA0DIAwqApwGIiggK1wNAyAMKgKgBiImICxcDQMgMSAKICmTIi2UIDAgIiABKgIUkyIplJMiCiAKkiEyIDMgKZQgMSAuIAEqAhiTIiKUkyIKIAqSIS4gIiA2IDKUIDEgLpQgMCAwICKUIDMgLZSTIgogCpIiCpSTkpIhKiApIDYgCpQgMCAylCAzIC6Uk5KSISkgLSA2IC6UIDMgCpQgMSAylJOSkiEiIDcgJ5QgOCAolJIgLyAmlJIhCiALKAKEASIBIAsoAnxGBEAgC0H8AGpB5OLBABDACAsgCyABQQFqNgKEASALKAKAASABQQZ0aiIBIAo4AhggASAqOAIUIAEgKTgCECABICI4AgwgASAhOAIIIAEgJDgCBCABICM4AgAgAf0MAAAAAAAAAAAAAAAAAAAAAP0LAhwgAUEsav0MAAAAAAAAAAAAAAAAAAAAAP0LAgAgAUE8akEANgIADAMLICMhJiAkISogISEpCyALICk4ApABIAsgKjgCjAEgCyAmOAKIAQwCCyAFIA5BgPzBABDXDQALIAtBiAFqIQkCQAJAIAYgCHJFBEAgCygChAEhBiALKAKAASECDAELIAsoAoQBIgRFDQEgCygCgAEhAkEAIQYCQCAsIC+UICsgOJQgJSA3lJKSIgpDAAAAAGANACAKQwAAoECUISFBASAEayEBIAJBQGshBQNAIAVBKGsqAgAiCiAhYCAKQwAAAABgcgRAIAVBQGshBSABQQFqIgFBAUcNAQwCCwsgAUUEQEEBIQYMAQtBACABayEBQQEhBgNAAkACQCAFQRhqKgIAIgpDAAAAAGANACAKICFgDQAgBkEBaiEGDAELIAUgBkEGdGsiByAF/QACAP0LAgAgB0EwaiAFQTBq/QACAP0LAgAgB0EgaiAFQSBq/QACAP0LAgAgB0EQaiAFQRBq/QACAP0LAgALIAVBQGshBSABQQFrIgENAAsLIAsgBCAGayIGNgKEAQsgNUMAAAAAWyA0QwAAAABbcUUEQCAGRQ0BIAIgBkEGdGohBCA1IDSSISIgAiEFA0AgDCoCoAYhISAMKgKcBiEKIAUgNSAMKgKYBpQgBSoCAJI4AgAgBUEEaiIBIDUgCpQgASoCAJI4AgAgBUEIaiIBIDUgIZQgASoCAJI4AgAgDCoC2AYhISAMKgLUBiEKIAVBDGoiASA0IAwqAtAGlCABKgIAkjgCACAFQRBqIgEgNCAKlCABKgIAkjgCACAFQRRqIgEgNCAhlCABKgIAkjgCACAFQRhqIgEgASoCACAikzgCACAEIAVBQGsiBUcNAAsLIAkgDCkCmAY3AgAgCyAMKQLQBjcClAEgCUEIaiAMQaAGaigCADYCACALQZwBaiAMQdgGaigCADYCACAGRQ0BIANFDQEgAiAGQQZ0aiEHIA0gA0EGdGohBiANQSRqIQkgDUFAayEBIA5BQGoiBEHAAHEhAwNAIAJBJGohCyACKAIcIQggDSEFAkAgAw0AIAEhBSAIIA0oAhxHDQAgAigCICANKAIgRw0AIAsgCf0AAgD9CwIAIAtBGGogCUEYaigCADYCACALQRBqIAlBEGopAgA3AgALIAQEQANAAkAgCCAFQRxqKAIARw0AIAIoAiAgBUEgaigCAEcNACALQRhqIAVBPGooAgA2AgAgC0EQaiAFQTRqKQIANwIAIAsgBUEkav0AAgD9CwIACwJAIAggBUHcAGooAgBHDQAgAigCICAFQeAAaigCAEcNACALQRhqIAVB/ABqKAIANgIAIAtBEGogBUH0AGopAgA3AgAgCyAFQeQAav0AAgD9CwIACyAGIAVBgAFqIgVHDQALCyAHIAJBQGsiAkcNAAsMAQsgCSAMKQKYBjcCACALIAwpAtAGNwKUASAJQQhqIAxBoAZqKAIANgIAIAtBnAFqIAxB2AZqKAIANgIACyAADQBBACENDAcLIA0gAEEGdEEEEOgOQQAhDQwGC0EAIQQLQQAhAkMAAAAAISULIAwgIzgC2AYgDCAhOALUBiAMIAQ2AtAGIAwgJDgC4AEgDCAlOALcASAMIAI2AtgBIAxB4AVqIAxB0AZqEPwKIAxBmAZqIAxB2AFqEPwKAn0gKCAMKgKYBiInlCApIAwqApwGIiSUkiIoIDAgDCoC4AUiIpQgLiAMKgLkBSIhlJIiI5MiLiAulCAvICeUICYgJJSSIikgMSAilCA3ICGUkiIlkyIvIC+UIC0gJ5QgKiAklJIiJCAzICKUIDggIZSSIiqTIicgJ5SSkiIhQwAAgCheRQRAQwAAgD8hIkMAAAAAISZDAAAAAAwBCyAuICGRIiGVISYgJyAhlSEiIC8gIZULISEgLyAhlCAnICKUkiAuICaUkiAGKgIYIjOTIAMqAhgiNJMiMiAKX0UNAiABKgIAISsgASoCCCEsIAEqAgQhMCABKgIMITEjAEEgayIAJAAgAEEANgIEIABBIGokACAwICkgASoCEJMiLpQgKyAkIAEqAhSTIi2UkyIKIAqSITUgLCAtlCAwICggASoCGJMiJJSTIgogCpIhNiA0IDEgIiArlCAhIDCUkyIKIAqSIjeUIDAgJiAwlCAiICyUkyIKIAqSIjiUICsgISAslCAmICuUkyIKIAqSIieUk5IgJpMiKZQgJCAxIDWUIDAgNpQgKyArICSUICwgLpSTIgogCpIiKJSTkpKSIS8gNCAxICeUICsgN5QgLCA4lJOSICKTIiSUIC0gMSAolCArIDWUICwgNpSTkpKSIS0gNCAxIDiUICwgJ5QgMCA3lJOSICGTIgqUIC4gMSA2lCAsICiUIDAgNZSTkpKSIScgIyAmIDOUkiEoICogIiAzlJIhIyAlICEgM5SSISoCQCALKAKEAUUEQCALQfwAaiIAKAIARQRAIABB3O3BABDACAsgC0EBNgKEASALKAKAASIAQgA3AiQgAEGAgICAfDYCICAAQYCAgIB8NgIcIAAgMjgCGCAAIC84AhQgACAtOAIQIAAgJzgCDCAAICg4AgggACAjOAIEIAAgKjgCACAAQSxq/QwAAAAAAAAAAAAAAAAAAAAA/QsCACAAQTxqQQA2AgAMAQsgCygCgAEiAEGAgICAfDYCICAAQYCAgIB8NgIcIAAgLzgCFCAAIC04AhAgACAnOAIMIAAgKDgCCCAAICM4AgQgACAqOAIAIAAgMjgCGAsgCyApOAKcASALICQ4ApgBIAsgCjgClAEgCyAmOAKQASALICI4AowBIAsgITgCiAEMAwsgCygChAEiA0EGdCEJQQAhAgJAIANB////H0sNACAJQfz///8HSw0AIAsoAoABIQUCQCAJRQRAQQQhAEEAIQQMAQtBBCECIAMhBCAJQQQQkQ4iAEUNAQsgCQRAIAAgBSAJ/AoAAAsgC0EANgKEASAMQaQGaiIGKgIAISIgDCoC3AYhJiAMKgLQBiEoIAwqApwGISogDCoCoAYhISAMKgLYBiEjIAwqAtQGISUgDEEgaiAGKAIANgIAIAwgDCkCnAY3AxggDEHYAWoiAiAIIAxBGGoiBRChDyAMICYgKiAllCAhICiUkyIKIAqSIimUICggIiAolCAqICOUkyIKIAqSIiSUICUgISAjlCAiICWUkyIKIAqSIgqUk5IgIpMiIjgCkAQgDCAmICSUICMgCpQgKCAplJOSICGTIiE4AowEIAwgJiAKlCAlICmUICMgJJSTkiAqkyIKOAKIBCAFIAcgDEGIBGoQoQ8gASAMQZgGakEEciACIAUgC0EAECsgCyAiOAKcASALICE4ApgBIAsgCjgClAEgC0GQAWogBigCADYCACALIAwpApwGNwKIAQJAIAsoAoQBIgFFDQAgA0UNACALKAKAASICIAFBBnRqIQggACADQQZ0aiEHIABBJGohCyAAQUBrIQEgCUFAaiIGQcAAcSEDA0AgAkEkaiEOIAIoAhwhCSAAIQUCQCADDQAgASEFIAkgACgCHEcNACACKAIgIAAoAiBHDQAgDiAL/QACAP0LAgAgDkEYaiALQRhqKAIANgIAIA5BEGogC0EQaikCADcCAAsgBgRAA0ACQCAJIAVBHGooAgBHDQAgAigCICAFQSBqKAIARw0AIA5BGGogBUE8aigCADYCACAOQRBqIAVBNGopAgA3AgAgDiAFQSRq/QACAP0LAgALAkAgCSAFQdwAaigCAEcNACACKAIgIAVB4ABqKAIARw0AIA5BGGogBUH8AGooAgA2AgAgDkEQaiAFQfQAaikCADcCACAOIAVB5ABq/QACAP0LAgALIAcgBUGAAWoiBUcNAAsLIAggAkFAayICRw0ACwsgBEUNAyAAIARBBnRBBBDoDgwDCyACIAlBgPzBABDXDQALIAsgKTgCnAEgCyAkOAKYASALICE4ApQBIAsgIzgCkAEgCyAiOAKMASALIAo4AogBDAELIAtBADYChAELIAxBkAhqJAAgDQvThAEEH38RfQN+AXsj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JEHcAGogAiASQQRByAAQ1wYgJCgCZCEPCyApKAJgIA9ByABsaiEBIBJBAk8EQCAmIAJBf3NqIg5BAXEhECACICZBAmtHBEAgDkF+cSEOA0AgAUIANwIAIAFBCGpCfzcCACABQRBqQn83AgAgAUEYakJ/NwIAIAFBIGpBfzYCACABQdAAakJ/NwIAIAFByABqQgA3AgAgAUHEAGpBADsBACABQTRq/Qz//39///9/f///f3///39//QsCACABQSRq/QwAAAAA//9/////f3///39//QsCACABQdgAakJ/NwIAIAFB4ABqQn83AgAgAUHoAGpBfzYCACABQYwBakEAOwEAIAFB/ABq/Qz//39///9/f///f3///39//QsCACABQewAav0MAAAAAP//f////39///9/f/0LAgAgAUGQAWohASAOQQJrIg4NAAsLIA8gEmpBAWshDyAQBEAgAUJ/NwIIIAFCADcCACABQQA7AUQgAf0M//9/f///f3///39///9/f/0LAjQgAf0MAAAAAP//f////39///9/f/0LAiQgAUEQakJ/NwIAIAFBGGpCfzcCACABQSBqQX82AgAgAUHIAGohAQsLIAFCfzcCCCABQgA3AgAgAUEAOwFEIAH9DP//f3///39///9/f///f3/9CwI0IAH9DAAAAAD//3////9/f///f3/9CwIkIAFBEGpCfzcCACABQRhqQn83AgAgAUEgakF/NgIAIA9BAWohJgsgKSAmNgJkIBVBoApqJAAMAwsgGiBnQciOwgAQ8A4AC0HQi8IAQRNB2MfCABDRCwALQdCLwgBBE0Hox8IAENELAAsgF0HgAmoiARC6CiAXQbAEaiABIKkCIIMBEOQJIAApA3gingIgFykDsAR8Ip0CIJ4CVA0aIAAoAoABIBcoArgEaiIBQYCU69wDTwRAIJ0CQn9RDRsgnQJCAXwhnQIgAUGAlOvcA2shAQsgACABNgKAASAAIJ0CNwN4IABBgJTr3AM2AnAgF0GwBGoQugogFykDsAQhnQIgACAXKAK4BCICNgJQIAAgnQI3A0gghAENAQwYC0GwssIAEPIOAAsgLigC6AIiASAuKALQAiIQIAEgEEkbISYgLigC5AIhRCAuKALMAiFHIC4oAvgCIoYBIC4oAogDIgFHDRUgLkHsAmohYkMAAAAAQwAAgD9DAACA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IAH9HAEh0gFCACGdAkIAIaACIDtFBEAgGSkDOCGgAiAZKQMwIZ0CCyDiASDpAf0NAAECAwQFBgccHR4fAAECAyHiASDgASDpAf0NAAECAwQFBgcYGRobAAECAyHgASDoASDpAf0NAAECAwQFBgcUFRYXAAECAyHoASDhASDpAf0NAAECAwQFBgcQERITAAECAyHhASDeASDwAf0NAAECAwQFBgcQERITAAECAyHeASDcASDXAf0NAAECAwQFBgcQERITAAECAyHcASDdASDmAf0NAAECAwQFBgcQERITAAECAyHdASDaASDwAf0NAAECAwQFBgcYGRobAAECAyHaASDfASDwAf0NAAECAwQFBgcUFRYXAAECAyHfASDZASDXAf0NAAECAwQFBgcYGRobAAECAyHZASDbASDXAf0NAAECAwQFBgcUFRYXAAECAyHbASDYASDmAf0NAAECAwQFBgcUFRYXAAECAyHYASDWASDwAf0NAAECAwQFBgccHR4fAAECAyHWASDVASDXAf0NAAECAwQFBgccHR4fAAECAyHVASDTASDmAf0NAAECAwQFBgcYGRobAAECAyHTASDSASDmAf0NAAECAwQFBgccHR4fAAECAyHSAf0MAAAAAAAAAAAAAAAAAAAAACHXAf0MAAAAAAAAAAAAAAAAAAAAACGBAiAzRQRAICv9AAQwIYECCyDiASDjAf0NAAECAwQFBgcICQoLHB0eHyH2ASDgASDjAf0NAAECAwQFBgcICQoLGBkaGyGGAiDoASDjAf0NAAECAwQFBgcICQoLFBUWFyH+ASDhASDjAf0NAAECAwQFBgcICQoLEBESEyH/ASDeASDyAf0NAAECAwQFBgcICQoLEBESEyH9ASDcASCSAv0NAAECAwQFBgcICQoLEBESEyH7ASDdASD0Af0NAAECAwQFBgcICQoLEBESEyHkASDaASDyAf0NAAECAwQFBgcICQoLGBkaGyHxASDfASDyAf0NAAECAwQFBgcICQoLFBUWFyH3ASDZASCSAv0NAAECAwQFBgcICQoLGBkaGyGEAiDbASCSAv0NAAECAwQFBgcICQoLFBUWFyHrASDYASD0Af0NAAECAwQFBgcICQoLFBUWFyHqASDWASDyAf0NAAECAwQFBgcICQoLHB0eHyHlASDVASCSAv0NAAECAwQFBgcICQoLHB0eHyHiASDTASD0Af0NAAECAwQFBgcICQoLGBkaGyHgASDSASD0Af0NAAECAwQFBgcICQoLHB0eHyHoASAgRQRAIC/9AAQwIdcBCyAXIIMC/QsEsAQgFyCdAjcDwAQgFyCgAjcDyAQgF/0AAvwBIeEBIBf9AALkAiHeASAX/QAD6AIh3AEgF/0AAuwCId0BIBf9AAK0BCHaASAX/QADuAQh3wEgF/0AArwEIdkBIBf9AAL0ASHbASAX/QAD+AEh2AEgF/0AA4gBIdYBIBf9AAKEASHVASAX/QACjAEh0wEgFyACQeAAav0ABAAi5gEg9gH95gEgAkEwav0ABAAi4wEg/wH95gH95QEgAkFAa/0ABAAi6QEg/gH95gH95QEgAkHQAGr9AAQAItIBIIYC/eYB/eUB/QsEsAEgFyDmASCGAv3mASDpASD/Af3mASDSASD2Af3mAf3kASDjASD+Af3mAf3lAf3kAf0LBKABIBcg4wEghgL95gEg5gEg/gH95gEg6QEg9gH95gEg0gEg/wH95gH95QH95AH95AH9CwSQASAXINIBIP4B/eYBIOMBIPYB/eYBIOYBIP8B/eYB/eQB/eQBIOkBIIYC/eYB/eUB/QsEgAEgAkGAAWr9AAQAIuYBIP8B/eYBIAJB8ABq/QAEACLjASD+Af3mAf3lASLSASDSAf3kASHzASDjASCGAv3mASACQZABav0ABAAi6QEg/wH95gH95QEi0gEg0gH95AEh7gEgFyDpASDzASD2Af3mASDuASD/Af3mASDpASD+Af3mASDmASCGAv3mAf3lASLSASDSAf3kASLSASD+Af3mAf3lAf3kAf3kASCEAv3kAf0LBOABIBcg5gEg7gEg9gH95gEg0gEghgL95gEg8wEg/wH95gH95QH95AH95AEg6wH95AH9CwTQASAXIOMBINIBIPYB/eYBIPMBIP4B/eYBIO4BIIYC/eYB/eUB/eQB/eQBIPsB/eQB/QsEwAEgFyACQdABav0ABAAi4wEg0wEg+AH9DQABAgMcHR4fAAECAwABAgMg7wH9DQABAgMEBQYHHB0eHwABAgMg+gH9DQABAgMEBQYHCAkKCxwdHh8i5gH95gEgAkGgAWr9AAQAIukBIO0BIPgB/Q0AAQIDEBESEwABAgMAAQIDIO8B/Q0AAQIDBAUGBxAREhMAAQIDIPoB/Q0AAQIDBAUGBwgJCgsQERITIvYB/eYB/eUBIAJBsAFq/QAEACLTASDVASD4Af0NAAECAxQVFhcAAQIDAAECAyDvAf0NAAECAwQFBgcUFRYXAAECAyD6Af0NAAECAwQFBgcICQoLFBUWFyLzAf3mAf3lASACQcABav0ABAAi0gEg1gEg+AH9DQABAgMYGRobAAECAwABAgMg7wH9DQABAgMEBQYHGBkaGwABAgMg+gH9DQABAgMEBQYHCAkKCxgZGhsi7gH95gH95QH9CwSgAiAXIOMBIO4B/eYBINMBIPYB/eYBINIBIOYB/eYB/eQBIOkBIPMB/eYB/eUB/eQB/QsEkAIgFyDpASDuAf3mASDjASDzAf3mASDTASDmAf3mASDSASD2Af3mAf3lAf3kAf3kAf0LBIACIBcg0gEg8wH95gEg6QEg5gH95gEg4wEg9gH95gH95AH95AEg0wEg7gH95gH95QH9CwTwASACQfABav0ABAAi7QEg9gH95gEgAkHgAWr9AAQAItYBIPMB/eYB/eUBItIBINIB/eQBIeMBINYBIO4B/eYBIAJBgAJq/QAEACLTASD2Af3mAf3lASLSASDSAf3kASHpASAXINMBIOMBIOYB/eYBIOkBIPYB/eYBINMBIPMB/eYBIO0BIO4B/eYB/eUBItIBINIB/eQBItIBIPMB/eYB/eUB/eQB/eQBINgBIKgCp/0cASD5Af0NAAECAwQFBgcYGRobAAECAyD1Af0NAAECAwQFBgcICQoLGBkaGyLVAf3kAf0LBNACIBcg7QEg6QEg5gH95gEg0gEg7gH95gEg4wEg9gH95gH95QH95AH95AEg2wEgqwJCIIin/RwBIPkB/Q0AAQIDBAUGBxQVFhcAAQIDIPUB/Q0AAQIDBAUGBwgJCgsUFRYXItMB/eQB/QsEwAIgFyDWASDSASDmAf3mASDjASDzAf3mASDpASDuAf3mAf3lAf3kAf3kASCCAiCrAqf9HAEg+QH9DQABAgMEBQYHEBESEwABAgMg9QH9DQABAgMEBQYHCAkKCxAREhMi0gH95AH9CwSwAiBjIAL9AAQA/QsEACAXIOgB/QsE4AMgFyDgAf0LBNADIBcg6gH9CwTAAyAXIIQC/QsEkAQgFyDrAf0LBIAEIBcg+wH9CwTwAyAXIOQB/QsEsAMgFyDlAf0LBKADIBcg8QH9CwSQAyAXIPcB/QsEgAMgFyD9Af0LBPACIBcg4gH9CwTgAiBhIDT9AAQA/QsEACAXINkBIKACQiCIp/0cASCBAv0NAAECAwQFBgccHR4fAAECAyDXAf0NAAECAwQFBgcICQoLHB0eH/0LBLAFIBcg3wEgoAKn/RwBIIEC/Q0AAQIDBAUGBxgZGhsAAQIDINcB/Q0AAQIDBAUGBwgJCgsYGRob/QsEoAUgFyDaASCdAkIgiKf9HAEggQL9DQABAgMEBQYHFBUWFwABAgMg1wH9DQABAgMEBQYHCAkKCxQVFhf9CwSQBSAXIIMCIJ0Cp/0cASCBAv0NAAECAwQFBgcQERITAAECAyDXAf0NAAECAwQFBgcICQoLEBESE/0LBIAFIBcg3QEgpQJCIIin/RwBINQB/Q0AAQIDBAUGBxwdHh8AAQIDIOcB/Q0AAQIDBAUGBwgJCgscHR4f/QsE8AQgFyDcASClAqf9HAEg1AH9DQABAgMEBQYHGBkaGwABAgMg5wH9DQABAgMEBQYHCAkKCxgZGhv9CwTgBCAXIN4BIKMCQiCIp/0cASDUAf0NAAECAwQFBgcUFRYXAAECAyDnAf0NAAECAwQFBgcICQoLFBUWF/0LBNAEIBcghQIgowKn/RwBINQB/Q0AAQIDBAUGBxAREhMAAQIDIOcB/Q0AAQIDBAUGBwgJCgsQERIT/QsEwAQgFyDhASCoAkIgiKf9HAEg+QH9DQABAgMEBQYHHB0eHwABAgMg9QH9DQABAgMEBQYHCAkKCxwdHh/9CwSwBCAXINUB/QsE4AUgFyDTAf0LBNAFIBcg0gH9CwTABSACQZACaigCACIBIIcBSw0XIBdBBGohGiACQSBqITUgF0HgAmohKyAXQbAEaiE7IAJBlAJqLQAAISggMCABQZAEbGohDyCHASABayFMQQAhOEEAIS8jAEGgB2siGSQAIBdBgAFqIhD9AAQAIowCIBD9AAQwIvYB/eYBItIBINIB/eQBIeABIBD9AAQQIucBIBD9AAQgIocC/eYBItIBINIB/eQBIegBIIwCIIcC/eYBItIBINIB/eQBItwBIOcBIPYB/eYBItIBINIB/eQBIt0B/eUBIfIBIIwCIOcB/eYBItIBINIB/eQBIt8BIIcCIPYB/eYBItIBINIB/eQBItkB/eQBIYACIBdB8AFqIgH9AARgItUBIBD9AARg/eUBIe4BIAH9AARQItMBIBD9AARQ/eUBIfsBIAH9AARAItIBIBD9AARA/eUBIYQCIOcBIOcB/eYBIuEBIPYBIPYB/eYBItsBIIwCIIwC/eYBItQB/eUBItYB/eQBIdgBINQBINsB/eQBIOEB/eUBIIcCIIcC/eYBIt4B/eUBIZACINUBIdoBINMBIdQBINIBIdcBIChBAXEEQCDVASDyASCQAiCEAv3mASCAAiD7Af3mAf3kASDyASDuAf3mAf3kASLbAf3mAf3lASHaASDSASCQAiDbAf3mAf3lASHXASDTASCAAiDbAf3mAf3lASHUAQsg1gEg4QH95QEh1gEg6AEg4AH95AEh9AEg3wEg2QH95QEhkQIg2AEg3gH95QEh9QEgKEECcQRAINoBIPQBIJECIIQC/eYBIPUBIPsB/eYB/eQBIPQBIO4B/eYB/eQBItgB/eYB/eUBIdoBINcBIJECINgB/eYB/eUBIdcBINQBIPUBINgB/eYB/eUBIdQBCyDoASDgAf3lASH5ASDcASDdAf3kASGGAiDeASDWAf3kASH8ASAoQQRxBEAg2gEg/AEghgIghAL95gEg+QEg+wH95gH95AEg/AEg7gH95gH95AEi1gH95gH95QEh2gEg1wEghgIg1gH95gH95QEh1wEg1AEg+QEg1gH95gH95QEh1AELIDv9AASgASHmASA7/QAEkAEh4wEgO/0ABLABIekBICv9AASgASHtASAr/QAEkAEh/QEgK/0ABLABIeQBIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBn9AAQAIfEBIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBn9AAQAIfcBIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBn9AAQAId4BIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBn9AAQAIeoBIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBn9AAQAIeUBIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBn9AAQAIeIBIAH9AAQwIYoCIAH9AAQgIYsCIAH9AAQQIewBIAH9AAQAIYgCIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwTwBiAZ/QwAAAAAAAAAAAAAAAAAAAAA/QsEAAJ7IBlB8AZq/QAEACAZ/QAEAP1B/aMBBEAghwIgiAL95gH9DAAAAAAAAAAAAAAAAAAAAAD95AEhiQIg5wEgiAL95gH9DAAAAAAAAAAAAAAAAAAAAAD95AEhggIgjAIgiAL95gEMAQv9DAAAwH8AAMB/AADAfwAAwH8hiQL9DAAAwH8AAMB/AADAfwAAwH8hggL9DAAAwH8AAMB/AADAfwAAwH8LId8BIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwTwBiAZ/QwAAAAAAAAAAAAAAAAAAAAA/QsEACAZQfAGav0ABAAgGf0ABAD9Qf2jASESIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwTwBiAZ/QwAAAAAAAAAAAAAAAAAAAAA/QsEACAZQfAGav0ABAAgGf0ABAD9Qf2jASEQIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBn9AAQAIeABIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBn9AAQAIegBIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBn9AAQAIeEBIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBn9AAQAIdwBIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBn9AAQAId0BIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBn9AAQAIdkBIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBn9AAQAIdsBIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBn9AAQAIdgBIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBn9AAQAIdYBIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwTwBiAZ/QwAAAAAAAAAAAAAAAAAAAAA/QsEACAZQfAGav0ABAAgGf0ABAD9Qf2jASEBIBn9DAAAgD8AAIA/AACAPwAAgD/9CwTwBiAZ/QwAAAAAAAAAAAAAAAAAAAAA/QsEACCLAiDcASCHAv3lASLrAf3mASH6ASDZASDnAf3lASHcAQJ7IBlB8AZq/QAEACAZ/QAEAP1B/aMBRQRAIPoB/QwAAAAAAAAAAAAAAAAAAAAA/QwAAMB/AADAfwAAwH8AAMB/IAEb/eQBIfoBIIsC/QwAAAAAAAAAAAAAAAAAAAAA/eYBIIcC/QwAAAAAAAAAAAAAAAAAAAAA/eYB/QwAAMB/AADAfwAAwH8AAMB/IAEb/eQBIfMBIIwCIIsC/eYBINwB/QwAAAAAAAAAAAAAAAAAAAAA/eYB/QwAAMB/AADAfwAAwH8AAMB/IAEb/eQBDAELIIsC/QwAAAAAAAAAAAAAAAAAAAAA/eYBIfMBIIwCIIsC/eYBCyHZASDdASCMAv3lASHvASDWASDsAf3lASHdASAZ/QwAAIA/AACAPwAAgD8AAIA//QsE8AYgGf0MAAAAAAAAAAAAAAAAAAAAAP0LBAACeyAZQfAGav0ABAAgGf0ABAD9Qf2jAUUEQCDdAf0MAAAAAAAAAAAAAAAAAAAAAP3mASDZASAZ/QAE8AYi1gH95gH95AEhhQIg7wEg3QH95gEg8wEg1gH95gH95AEh8wEg5wEg3QH95gEg+gEg1gH95gH95AEMAQsg3QH9DAAAAAAAAAAAAAAAAAAAAAD95gEhhQIg7wEg3QH95gEh8wEg5wEg3QH95gELIdkBIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwTwBiAZ/QwAAAAAAAAAAAAAAAAAAAAA/QsEACAZQfAGav0ABAAgGf0ABAD9Qf2jASEBIBn9DAAAgD8AAIA/AACAPwAAgD/9CwTwBiAZ/QwAAAAAAAAAAAAAAAAAAAAA/QsEAAJ7IBlB8AZq/QAEACAZ/QAEAP1B/aMBRQRAIIwC/QwAAAAAAAAAAAAAAAAAAAAA/eYBINwBINsBIIsC/eUBItsB/eYB/QwAAMB/AADAfwAAwH8AAMB/IAEbIBn9AATwBiLWAf3mAf3kASGDAiDrAf0MAAAAAAAAAAAAAAAAAAAAAP3mASDbAf0MAAAAAAAAAAAAAAAAAAAAAP3mAf0MAADAfwAAwH8AAMB/AADAfyABGyDWAf3mAf3kASGOAiCHAiDbAf3mAf0MAADAfwAAwH8AAMB/AADAfyABGyDWAf3mAf0MAAAAAAAAAAAAAAAAAAAAAP3kAQwBCyCMAv0MAAAAAAAAAAAAAAAAAAAAAP3mASGDAiDrAf0MAAAAAAAAAAAAAAAAAAAAAP3mASGOAv0MAAAAAAAAAAAAAAAAAAAAAAsh2wEgGf0MAACAPwAAgD8AAIA/AACAP/0LBPAGIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAAnsgGUHwBmr9AAQAIBn9AAQA/UH9owFFBEAgiAL9DAAAAAAAAAAAAAAAAAAAAAD95gEggwIgGf0ABPAGItYB/eYB/eQBIYMCIIgCIO8B/eYBINsBINYB/eYB/eQBIY0CIOcBIIgC/eYBII4CINYB/eYB/eQBDAELIIgC/QwAAAAAAAAAAAAAAAAAAAAA/eYBIYMCIIgCIO8B/eYBIY0CIOcBIIgC/eYBCyHbASDYASCIAv3lASHYASAZ/QwAAAAAAAAAAAAAAAAAAAAA/QsE8AYgGf0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgGUHwBmr9AAQAIBn9AAQA/UH9owEhASAZ/QwAAIA/AACAPwAAgD8AAIA//QsE8AYgGf0MAAAAAAAAAAAAAAAAAAAAAP0LBAACeyAZQfAGav0ABAAgGf0ABAD9Qf2jAUUEQCCMAiDYAf3mASDsASDcAf3mAf0MAADAfwAAwH8AAMB/AADAfyABGyAZ/QAE8AYi1gH95gH95AEhjgIg6wEg2AH95gEg7AH9DAAAAAAAAAAAAAAAAAAAAAD95gH9DAAAwH8AAMB/AADAfwAAwH8gARsg1gH95gH95AEhgQIg2AH9DAAAAAAAAAAAAAAAAAAAAAD95gEghwIg7AH95gH9DAAAwH8AAMB/AADAfwAAwH8gARsg1gH95gH95AEMAQsgjAIg2AH95gEhjgIg6wEg2AH95gEhgQIg2AH9DAAAAAAAAAAAAAAAAAAAAAD95gELIdYBINoBIOQB/eUBIeQBINQBIO0B/eUBIfgBIBn9DAAAgD8AAIA/AACAPwAAgD/9CwTwBiAZ/QwAAAAAAAAAAAAAAAAAAAAA/QsEAAJ7IBlB8AZq/QAEACAZ/QAEAP1B/aMBRQRAIO8B/QwAAAAAAAAAAAAAAAAAAAAA/eYBINYBIBn9AATwBiLUAf3mAf3kASGSAiDnAf0MAAAAAAAAAAAAAAAAAAAAAP3mASCBAiDUAf3mAf3kASGPAiCOAiDUAf3mAf0MAAAAAAAAAAAAAAAAAAAAAP3kAQwBCyDvAf0MAAAAAAAAAAAAAAAAAAAAAP3mASGSAiDnAf0MAAAAAAAAAAAAAAAAAAAAAP3mASGPAv0MAAAAAAAAAAAAAAAAAAAAAAsh2AEg1wEg/QH95QEh7wEg8QEg5AH95QEh6wEg3gEg+AH95QEh8QEgGf0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgGf0ABAAh3gEgGf0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgGf0ABAAh3AEgGf0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgGf0ABAAh3QEgGf0MAAAAAAAAAAAAAAAAAAAAAP0LBPAGIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBlB8AZq/QAEACAZ/QAEAP1B/aMBIQEgGf0MAACAPwAAgD8AAIA/AACAP/0LBPAGIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAAnsgGUHwBmr9AAQAIBn9AAQA/UH9owFFBEAggAIg7wH95gEgkAIg8QH95gH9DAAAwH8AAMB/AADAfwAAwH8gARsgGf0ABPAGItQB/eYB/eQBIY4CIIACIOsB/eYBIJAC/QwAAAAAAAAAAAAAAAAAAAAA/eYB/QwAAMB/AADAfwAAwH8AAMB/IAEbINQB/eYB/eQBIf0BIIAC/QwAAAAAAAAAAAAAAAAAAAAA/eYBIJACIOQB/eYB/QwAAMB/AADAfwAAwH8AAMB/IAEbINQB/eYB/eQBDAELIIACIO8B/eYBIY4CIIACIOsB/eYBIf0BIIAC/QwAAAAAAAAAAAAAAAAAAAAA/eYBCyHWASD3ASDvAf3lASHtASAZ/QwAAIA/AACAPwAAgD8AAIA//QsE8AYgGf0MAAAAAAAAAAAAAAAAAAAAAP0LBAACeyAZQfAGav0ABAAgGf0ABAD9Qf2jAUUEQCDyAf0MAAAAAAAAAAAAAAAAAAAAAP3mASCOAiAZ/QAE8AYi1AH95gH95AEh/gEg8gEg7QH95gEg1gEg1AH95gH95AEh/wEg8gEg+AH95gEg/QEg1AH95gH95AEMAQsg8gH9DAAAAAAAAAAAAAAAAAAAAAD95gEh/gEg8gEg7QH95gEh/wEg8gEg+AH95gELIdYBIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwTwBiAZ/QwAAAAAAAAAAAAAAAAAAAAA/QsEACAZQfAGav0ABAAgGf0ABAD9Qf2jASEBIBn9DAAAgD8AAIA/AACAPwAAgD/9CwTwBiAZ/QwAAAAAAAAAAAAAAAAAAAAA/QsEAAJ7IBlB8AZq/QAEACAZ/QAEAP1B/aMBRQRAIPUBIO8B/eYBIJECIPEB/eYB/QwAAMB/AADAfwAAwH8AAMB/IAEbIBn9AATwBiLUAf3mAf3kASHXASD1ASDrAf3mASCRAv0MAAAAAAAAAAAAAAAAAAAAAP3mAf0MAADAfwAAwH8AAMB/AADAfyABGyDUAf3mAf3kASGBAiD1Af0MAAAAAAAAAAAAAAAAAAAAAP3mASCRAiDkAf3mAf0MAADAfwAAwH8AAMB/AADAfyABGyDUAf3mAf3kAQwBCyD1ASDvAf3mASHXASD1ASDrAf3mASGBAiD1Af0MAAAAAAAAAAAAAAAAAAAAAP3mAQsh2gEgGf0MAACAPwAAgD8AAIA/AACAP/0LBPAGIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAAnsgGUHwBmr9AAQAIBn9AAQA/UH9owFFBEAg9AH9DAAAAAAAAAAAAAAAAAAAAAD95gEg1wEgGf0ABPAGItQB/eYB/eQBIY4CIPQBIO0B/eYBINoBINQB/eYB/eQBIf0BIPQBIPgB/eYBIIECINQB/eYB/eQBDAELIPQB/QwAAAAAAAAAAAAAAAAAAAAA/eYBIY4CIPQBIO0B/eYBIf0BIPQBIPgB/eYBCyHUASDVASDpAf3lASH3ASAZ/QwAAAAAAAAAAAAAAAAAAAAA/QsE8AYgGf0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgGUHwBmr9AAQAIBn9AAQA/UH9owEhASAZ/QwAAIA/AACAPwAAgD8AAIA//QsE8AYgGf0MAAAAAAAAAAAAAAAAAAAAAP0LBAACeyAZQfAGav0ABAAgGf0ABAD9Qf2jAUUEQCD5ASDvAf3mASCGAiDxAf3mAf0MAADAfwAAwH8AAMB/AADAfyABGyAZ/QAE8AYi1QH95gH95AEh2gEg+QH9DAAAAAAAAAAAAAAAAAAAAAD95gEghgIg5AH95gH9DAAAwH8AAMB/AADAfwAAwH8gARsg1QH95gH95AEhgQIg+QEg6wH95gEghgL9DAAAAAAAAAAAAAAAAAAAAAD95gH9DAAAwH8AAMB/AADAfwAAwH8gARsg1QH95gH95AEMAQsg+QEg7wH95gEh2gEg+QH9DAAAAAAAAAAAAAAAAAAAAAD95gEhgQIg+QEg6wH95gELIdUBINMBIOYB/eUBIeYBIOoBIPcB/eUBIeoBIBn9DAAAgD8AAIA/AACAPwAAgD/9CwTwBiAZ/QwAAAAAAAAAAAAAAAAAAAAA/QsEAAJ7IBlB8AZq/QAEACAZ/QAEAP1B/aMBRQRAIPwB/QwAAAAAAAAAAAAAAAAAAAAA/eYBINoBIBn9AATwBiLTAf3mAf3kASH6ASD8ASDtAf3mASCBAiDTAf3mAf3kASHrASD8ASD4Af3mASDVASDTAf3mAf3kAQwBCyD8Af0MAAAAAAAAAAAAAAAAAAAAAP3mASH6ASD8ASDtAf3mASHrASD8ASD4Af3mAQsh1QEg0gEg4wH95QEh6QEg4gEg5gH95QEh4gEgGf0MAAAAAAAAAAAAAAAAAAAAAP0LBPAGIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBlB8AZq/QAEACAZ/QAEAP1B/aMBIQEgGf0MAACAPwAAgD8AAIA/AACAP/0LBPAGIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIIACIOoB/eYBIdoBAnsgGUHwBmr9AAQAIBn9AAQA/UH9owFFBEAggAL9DAAAAAAAAAAAAAAAAAAAAAD95gEgkAIg9wH95gH9DAAAwH8AAMB/AADAfwAAwH8gARv95AEh8AEg2gEgkAL9DAAAAAAAAAAAAAAAAAAAAAD95gH9DAAAwH8AAMB/AADAfwAAwH8gARv95AEh2gEggAIg6QH95gEgkAIg4gH95gH9DAAAwH8AAMB/AADAfwAAwH8gARv95AEMAQsggAL9DAAAAAAAAAAAAAAAAAAAAAD95gEh8AEggAIg6QH95gELIdIBIOUBIOkB/eUBIfEBIBn9DAAAgD8AAIA/AACAPwAAgD/9CwTwBiAZ/QwAAAAAAAAAAAAAAAAAAAAA/QsEAAJ7IBlB8AZq/QAEACAZ/QAEAP1B/aMBRQRAIPIB/QwAAAAAAAAAAAAAAAAAAAAA/eYBINIBIBn9AATwBiLSAf3mAf3kASHtASDyASDxAf3mASDwASDSAf3mAf3kASHwASDyASDmAf3mASDaASDSAf3mAf3kAQwBCyDyAf0MAAAAAAAAAAAAAAAAAAAAAP3mASHtASDyASDxAf3mASHwASDyASDmAf3mAQsh0wEgGf0MAAAAAAAAAAAAAAAAAAAAAP0LBPAGIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBlB8AZq/QAEACAZ/QAEAP1B/aMBIQEgGf0MAACAPwAAgD8AAIA/AACAP/0LBPAGIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAAnsgGUHwBmr9AAQAIBn9AAQA/UH9owFFBEAg9QEg6QH95gEgkQIg4gH95gH9DAAAwH8AAMB/AADAfwAAwH8gARsgGf0ABPAGItIB/eYB/eQBIeMBIPUBIOoB/eYBIJEC/QwAAAAAAAAAAAAAAAAAAAAA/eYB/QwAAMB/AADAfwAAwH8AAMB/IAEbINIB/eYB/eQBIdcBIPUB/QwAAAAAAAAAAAAAAAAAAAAA/eYBIJECIPcB/eYB/QwAAMB/AADAfwAAwH8AAMB/IAEbINIB/eYB/eQBDAELIPUBIOkB/eYBIeMBIPUBIOoB/eYBIdcBIPUB/QwAAAAAAAAAAAAAAAAAAAAA/eYBCyHaASAZ/QwAAIA/AACAPwAAgD8AAIA//QsE8AYgGf0MAAAAAAAAAAAAAAAAAAAAAP0LBAACeyAZQfAGav0ABAAgGf0ABAD9Qf2jAUUEQCD0Af0MAAAAAAAAAAAAAAAAAAAAAP3mASDjASAZ/QAE8AYi0gH95gH95AEh4wEg9AEg8QH95gEg2gEg0gH95gH95AEh5AEg9AEg5gH95gEg1wEg0gH95gH95AEMAQsg9AH9DAAAAAAAAAAAAAAAAAAAAAD95gEh4wEg9AEg8QH95gEh5AEg9AEg5gH95gELIdIBIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwTwBiAZ/QwAAAAAAAAAAAAAAAAAAAAA/QsEACAZQfAGav0ABAAgGf0ABAD9Qf2jASEBIBn9DAAAgD8AAIA/AACAPwAAgD/9CwTwBiAZ/QwAAAAAAAAAAAAAAAAAAAAA/QsEAAJ7IBlB8AZq/QAEACAZ/QAEAP1B/aMBRQRAIPkBIOkB/eYBIIYCIOIB/eYB/QwAAMB/AADAfwAAwH8AAMB/IAEbIBn9AATwBiLXAf3mAf3kASHaASD5ASDqAf3mASCGAv0MAAAAAAAAAAAAAAAAAAAAAP3mAf0MAADAfwAAwH8AAMB/AADAfyABGyDXAf3mAf3kASHqASD5Af0MAAAAAAAAAAAAAAAAAAAAAP3mASCGAiD3Af3mAf0MAADAfwAAwH8AAMB/AADAfyABGyDXAf3mAf3kAQwBCyD5ASDpAf3mASHaASD5ASDqAf3mASHqASD5Af0MAAAAAAAAAAAAAAAAAAAAAP3mAQsh5QEgGf0MAACAPwAAgD8AAIA/AACAP/0LBPAGIBn9DAAAAAAAAAAAAAAAAAAAAAD9CwQAAnsgGUHwBmr9AAQAIBn9AAQA/UH9owFFBEAg/AH9DAAAAAAAAAAAAAAAAAAAAAD95gEg2gEgGf0ABPAGItcB/eYB/eQBIeIBIPwBIPEB/eYBIOUBINcB/eYB/eQBIdoBIPwBIOYB/eYBIOoBINcB/eYB/eQBDAELIPwB/QwAAAAAAAAAAAAAAAAAAAAA/eYBIeIBIPwBIPEB/eYBIdoBIPwBIOYB/eYBCyHXASAZIO4B/QsEsAYgGSD7Af0LBKAGIBkghAL9CwSQBiAZIOIB/QsE8AQgGSDaAf0LBOAEIBkg1wH9CwTQBCAZIOMB/QsEwAQgGSDkAf0LBLAEIBkg0gH9CwSgBCAZIO0B/QsEkAQgGSDwAf0LBIAEIBkg0wH9CwTwAyAZIPoB/QsE4AMgGSDrAf0LBNADIBkg1QH9CwTAAyAZII4C/QsEsAMgGSD9Af0LBKADIBkg1AH9CwSQAyAZIP4B/QsEgAMgGSD/Af0LBPACIBkg1gH9CwTgAiAZIPwB/QsEwAEgGSD5Af0LBLABIBkghgL9CwSgASAZIPQB/QsEkAEgGSD1Af0LBIABIBkgkQL9CwRwIBkg8gH9CwRgIBkggAL9CwRQIBkgkAL9CwRAIBkg7AEgiwL95gEi0gEg0gH95AEi1gEgiAIgigL95gEi0gEg0gH95AEi0wH95QH9CwTAAiAZIIgCIIsC/eYBItIBINIB/eQBItQBIOwBIIoC/eYBItIBINIB/eQBItUB/eQB/QsEsAIgGSDWASDTAf3kAf0LBKACIBkgiAIg7AH95gEi0gEg0gH95AEi0wEgiwIgigL95gEi0gEg0gH95AEi0gH95QH9CwSAAiAZINQBINUB/eUB/QsE8AEgGSDTASDSAf3kAf0LBOABIBkgiwIgiwL95gEi1gEgigIgigL95gEi1QEgiAIgiAL95gEi0wH95QEi0gEg7AEg7AH95gEi1AH95QH95AH9CwTQAiAZINQBINIB/eQBINYB/eUB/QsEkAIgGSDTASDVAf3kASDUAf3lASDWAf3lAf0LBNABIIwCIIgC/eYBIIcCIIsC/eYBItMB/eQBIOcBIOwB/eYBItIBIPYBIIoC/eYBItoB/eQB/eQB/QwAAACAAAAAgAAAAIAAAACA/U79DAAAgD8AAIA/AACAPwAAgD/9UCHXASAZINoBINMB/QwAAMB/AADAfwAAwH8AAMB/IBAb/eQBINgB/eQB/QwAAAA/AAAAPwAAAD8AAAA//eYBINcB/eYB/QsEgAYgGSDaASDSAf0MAADAfwAAwH8AAMB/AADAfyASG/3kASCNAv3kAf0MAAAAPwAAAD8AAAA/AAAAP/3mASDXAf3mAf0LBMAFIBkgggIg9gEgiwL95gEi2AEghwIgigL95gH95AEi1gH95QEg8wH95AH9DAAAAD8AAAA/AAAAPwAAAD/95gEg1wH95gH9CwSwBSAZINoBIN8B/eQBINkB/eQB/QwAAAA/AAAAPwAAAD8AAAA//eYBINcB/eYB/QsEgAUgGSCHAiDsAf3mAf0MAAAAAAAAAAAAAAAAAAAAAP3kAf0MAADAfwAAwH8AAMB/AADAfyASGyD2ASCIAv3mASLUASCMAiCKAv3mAf3kASLVAf3lASCDAv3kAf0MAAAAPwAAAD8AAAA/AAAAP/3mASDXAf3mAf0LBPAFIBkgiQIg9gEg7AH95gEi0wEg5wEgigL95gH95AEi0gEg4QH95QH95AEghQL95AH9DAAAAD8AAAA/AAAAPwAAAD/95gEg1wH95gH9CwTgBSAZIOcBIIsC/eYB/QwAAAAAAAAAAAAAAAAAAAAA/eQB/QwAAMB/AADAfwAAwH8AAMB/IBAbINUBIOgB/eUB/eQBIJIC/eQB/QwAAAA/AAAAPwAAAD8AAAA//eYBINcB/eYB/QsE0AUgGSCMAiCLAv3mAf0MAAAAAAAAAAAAAAAAAAAAAP3kAf0MAADAfwAAwH8AAMB/AADAfyAQGyDSAf3lASCPAv3kAf0MAAAAPwAAAD8AAAA/AAAAP/3mASDXAf3mAf0LBKAFIBkgjAIg7AH95gH9DAAAAAAAAAAAAAAAAAAAAAD95AH9DAAAwH8AAMB/AADAfwAAwH8gEhsg1gEg4AH95QH95AEg2wH95AH9DAAAAD8AAAA/AAAAPwAAAD/95gEg1wH95gH9CwSQBSAZINoBIIgCIN4BIIwC/eUBItYB/eYB/eUBIOwBINwBIOcB/eUBItUB/eYB/eUBIIsCIN0BIIcC/eUBItIB/eYB/eUBINcB/eYB/QsEMCAZINgBIOwBINYB/eYB/eQBIIgCINUB/eYB/eUBIIoCINIB/eYB/eQBINcB/eYB/QsEICAZINMBIIsCINYB/eYB/eUBIIoCINUB/eYB/eQBIIgCINIB/eYB/eQBINcB/eYB/QsEECAZINQBIIoCINYB/eYB/eQBIIsCINUB/eYB/eQBIOwBINIB/eYB/eUBINcB/eYB/QsEACAaKgIQQ9sPyUCUIpoBIBoqAgAimQEgmgGUIBoqAhQinAEgnAGSkpUhmwFDAACAPyCZASCbAZQimQGVQwAAgL+SIpoBIJoBlCCcASCcASCaAUMAAIA/kkMAAIBAlJSUlbxBACCZAUMAAAAAXBv9ESHdASCbAf0TIdcBIDtB4ABqISUgK0HgAGohHSA7QcABaiEWICtBwAFqIScgGUHwBmoiAUEgaiEQIAFBEGohASA7/QAEUCHaASA7/QAEQCH3ASA7/QAEMCHfASA7/QAEICHqASA7/QAEECHlASA7/QAEACHZASAr/QAEUCHbASAr/QAEQCHiASAr/QAEMCHYASAr/QAEICHgASAr/QAEECHoASAr/QAEACHWAUEAIRICQAJAAkACQANAICggEnZBAXEEQCABIBb9AAQA/QsEACAZICf9AAQA/QsE8AYgGSAvaiI0QUBr/QAEACHhASA0QdAAav0ABAAh3gEgNEHgAGr9AAQAIdwBIDRB4AJq/QAEACHjASA0QfACav0ABAAh6QEgNEGAA2r9AAQAIe0BIDRB8ANq/QAEACH9ASA0QYAEav0ABAAh5AEgNEGQBGr9AAQAIfEBIBn9AASQBiHUASAZ/QAEoAYh1QEgGf0ABLAGIdMBIBlBwAZq/QwAAAAAAAAAAAAAAAAAAAAA/QsEACAZ/QAEwAYh0gEgECA1/QACAP0LAgAgOCBMTw0CIA8gOEGQBGxqIjQgGf0ABPAG/QsEACA0/QwAAAAAAAAAAAAAAAAAAAAA/QsE0AIgNCDxAf0LBOABIDQg5AH9CwTQASA0IP0B/QsEwAEgNCDtAf0LBLABIDQg6QH9CwSgASA0IOMB/QsEkAEgNCDcAf0LBIABIDQg3gH9CwRwIDQg4QH9CwRgIDT9DP//f3///39///9/f///f3/9CwRQIDQg0gH9DP//f////3////9/////f//95AH9CwRAIDT9DAAAAAAAAAAAAAAAAAAAAAD9CwQwIDRBIGogEP0ABAD9CwQAIDRBEGogAf0ABAD9CwQAIDQg6gEg/QH95gEg9wEg5AH95gH95AEg2gEg8QH95gH95AH9CwTAAiA0IOUBIP0B/eYBIN8BIOQB/eYB/eQBIPcBIPEB/eYB/eQB/QsEsAIgNCDZASD9Af3mASDlASDkAf3mAf3kASDqASDxAf3mAf3kAf0LBKACIDQg4AEg4wH95gEg4gEg6QH95gH95AEg2wEg7QH95gH95AH9CwSQAiA0IOgBIOMB/eYBINgBIOkB/eYB/eQBIOIBIO0B/eYB/eQB/QsEgAIgNCDWASDjAf3mASDoASDpAf3mAf3kASDgASDtAf3mAf3kAf0LBPABIDQg1wEg1AEg4QH95gEg1QEg3gH95gH95AEg0wEg3AH95gH95AH95gH9DAAAAAAAAAAAAAAAAAAAAAD95AH9CwTgAiA0QYADav0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgNP0MAAAAAAAAAAAAAAAAAAAAAP0LBPACIDQg3QH9CwSQAyA0QQA2AoAEIDQgEjYChAQgNEHAA2ogHUEgav0ABAD9CwQAIDRBsANqIB1BEGr9AAQA/QsEACA0IB39AAQA/QsEoAMgNCAl/QAEAP0LBNADIDRB4ANqICVBEGr9AAQA/QsEACA0QfADaiAlQSBq/QAEAP0LBAAgOEEBaiE4CyASQQFqIRIgL0EwaiIvQZABRw0ACyAaKgIQQ9sPyUCUIpoBIBoqAgAimQEgmgGUIBoqAhQinAEgnAGSkpUhmwFDAACAPyCZASCbAZQimQGVQwAAgL+SIpoBIJoBlCCcASCcASCaAUMAAIA/kkMAAIBAlJSUlbxBACCZAUMAAAAAXBv9ESHaASCbAf0TId8BIBlBwAZqIgFBIGohGiABQRBqIRAgO/0ABFAh2QEgO/0ABEAh6AEgO/0ABDAh2wEgO/0ABCAh4QEgO/0ABBAh3gEgO/0ABAAh2AEgK/0ABFAh1gEgK/0ABEAh3AEgK/0ABDAh1AEgK/0ABCAh3QEgK/0ABBAh1wEgK/0ABAAh1QFBAyESIBlB8AZqIS9BACFbAkADQCAoIBJ2QQFxBEAgGSBbaiIBQYAFav0ABAAh5QEgAUGQBWr9AAQAIeIBIAFBoAVq/QAEACHgASAZIBn9AAQg/QsEkAcgGSAZ/QAEEP0LBIAHIBkgGf0ABAD9CwTwBiAv/QAEACHTASAQIBb9AAQA/QsEACAZICf9AAQA/QsEwAYgGUHwBmr9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIBn9AATwBiHSASAaIDX9AAIA/QsCACA4IExPDQIgDyA4QZAEbGoiASAZ/QAEwAb9CwQAIAH9DP//f3///39///9/f///f3/9CwRQIAEg0gH9DP//f////3////9/////f//95AH9CwRAIAH9DAAAAAAAAAAAAAAAAAAAAAD9CwQwIAH9DAAAAAAAAAAAAAAAAAAAAAD9CwRgIAEg5QH9CwSQASABIOIB/QsEoAEgASDgAf0LBLABIAEg5QH9CwTAASABIOIB/QsE0AEgASDgAf0LBOABIAH9DAAAAAAAAAAAAAAAAAAAAAD9CwTQAiABIN8BINMB/eYB/QwAAAAAAAAAAAAAAAAAAAAA/eQB/QsE4AIgAUEgaiAa/QAEAP0LBAAgAUEQaiAQ/QAEAP0LBAAgAUHwAGr9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIAFBgAFq/QwAAAAAAAAAAAAAAAAAAAAA/QsEACABINUBIOUB/eYBINcBIOIB/eYB/eQBIN0BIOAB/eYB/eQB/QsE8AEgASDXASDlAf3mASDUASDiAf3mAf3kASDcASDgAf3mAf3kAf0LBIACIAEg3QEg5QH95gEg3AEg4gH95gH95AEg1gEg4AH95gH95AH9CwSQAiABINgBIOUB/eYBIN4BIOIB/eYB/eQBIOEBIOAB/eYB/eQB/QsEoAIgASDeASDlAf3mASDbASDiAf3mAf3kASDoASDgAf3mAf3kAf0LBLACIAEg4QEg5QH95gEg6AEg4gH95gH95AEg2QEg4AH95gH95AH9CwTAAiABQYADav0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgAf0MAAAAAAAAAAAAAAAAAAAAAP0LBPACIAEg2gH9CwSQAyABQQA2AoAEIAEgEjYChAQgAUHAA2ogHUEgav0ABAD9CwQAIAFBsANqIB1BEGr9AAQA/QsEACABIB39AAQA/QsEoAMgASAl/QAEAP0LBNADIAFB4ANqICVBEGr9AAQA/QsEACABQfADaiAlQSBq/QAEAP0LBAAgOEEBaiE4CyBbQTBqIVsgL0EQaiEvIBJBAWoiEkEGRw0ACyA4IExLDQIgOARAQQAhO0EAIDhrIVsgD/0ABMADIA/9AATwA/3kASHxASAP/QAEsAMgD/0ABOAD/eQBIfcBIA/9AASgAyAP/QAE0AP95AEh6gEgGUGAB2ohNCAPIQEDQCAPIDtBkARsaiIr/QAEgAIh6AEgK/0ABKABIeEBICv9AATwASHeASAr/QAEkAEh3AEgK/0ABJACId0BICv9AASwASHXASAr/QAEcCHlASAr/QAEYCHiASAr/QAEgAEh4AEgK/0ABLACIdoBICv9AATQASHfASAr/QAEoAIh2QEgK/0ABMABIdsBICv9AATAAiHYASAr/QAE4AEh1gEgK/0ABJADIdQBICv9AASAAyHSASAZQfAGaiIQ/QwAAAAAAAAAAAAAAAAAAAAA/QsEACAZ/QAE8AYh1QEgEP0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgGf0ABPAGIdMBICsg0gEg1AEg4AEg8QEg4AH95gH95gEg4gEg6gEg4gH95gH95gEg5QEg9wEg5QH95gH95gH95AH95AEg3AEg3gH95gEg4QEg6AH95gH95AEg1wEg3QH95gH95AH95AEg2wEg2QH95gEg3wEg2gH95gH95AEg1gEg2AH95gH95AH95AEi1AH95gH95AEi0gH9CwSAAyAr/QwAAAAAAAAAAAAAAAAAAAAA/QwAAIA/AACAPwAAgD8AAIA/INQBINIB/eQBItIB/ecBINIB/QwI5TweCOU8HgjlPB4I5Twe/UMg0wH9DAjlPJ4I5TyeCOU8ngjlPJ795AEg0gH9Q/1O/VL9CwTQAiAZQcAGav0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgGf0M//9/f///f3///39///9/f/0LBIAHIBkgGf0ABMAG/Qz//3////9/////f////3///eQB/QsE8AYgO0EBaiE7AkAgK0FAa/0ABAAgEP0ABAD9Qf2jAUUNACArQdAAav0ABAAgNP0ABAD9Qf2jAUUNACA4IDtNDQD9DAAAAAAAAAAAAAAAAAAAAAD9DAAAgD8AAIA/AACAPwAAgD8g1AH95wEg1AH9DAjlPB4I5TweCOU8HgjlPB79QyDVAf0MCOU8ngjlPJ4I5TyeCOU8nv3kASDUAf1D/U79UiHlAUF/IS8gASESA0AgL0UNByDqASAr/QAEYCLiAf3mASASQfAEaiJM/QAEACLgAf3mASD3ASAr/QAEcCLoAf3mASASQYAFaiIl/QAEACLhAf3mAf3kASASQZAFaiIQ/QAEACLeASDxASAr/QAEgAEi3AH95gH95gH95AEgK/0ABJABIt0BIBJBgAZqIh39AAQAItcB/eYBICv9AASgASLaASASQZAGaiIo/QAEACLfAf3mAf3kASAr/QAEsAEi2QEgEkGgBmoiNf0ABAAi2wH95gH95AH95AEgK/0ABMABItgBIBJBsAZqIhb9AAQAItYB/eYBICv9AATQASLTASASQcAGaiIn/QAEACLUAf3mAf3kASAr/QAE4AEi0gEgEkHQBmoiGv0ABAAi1QH95gH95AH95AEg5QH95gEh5AEgECDeASDcASDkAf3mAf3lAf0LBAAgJSDhASDoASDkAf3mAf3lAf0LBAAgTCDgASDiASDkAf3mAf3lAf0LBAAgEkGgBWoiECAQ/QAEACDdASDkAf3mAf3lAf0LBAAgEkGwBWoiECAQ/QAEACDaASDkAf3mAf3lAf0LBAAgEkHABWoiECAQ/QAEACDZASDkAf3mAf3lAf0LBAAgEkHQBWoiECAQ/QAEACDYASDkAf3mAf3lAf0LBAAgEkHgBWoiECAQ/QAEACDTASDkAf3mAf3lAf0LBAAgEkHwBWoiECAQ/QAEACDSASDkAf3mAf3lAf0LBAAgK/0ABPABIdMBICv9AASAAiHSASA1INsBIOQBICv9AASQAv3mAf3lAf0LBAAgKCDfASDkASDSAf3mAf3lAf0LBAAgHSDXASDkASDTAf3mAf3lAf0LBAAgK/0ABKACIdMBICv9AASwAiHSASAaINUBIOQBICv9AATAAv3mAf3lAf0LBAAgJyDUASDkASDSAf3mAf3lAf0LBAAgFiDWASDkASDTAf3mAf3lAf0LBAAgEkGAB2oiECAQ/QAEACDkASAr/QAE8AL95gH95QH9CwQAIBJB8AZqIhAgEP0ABAAg5AEgK/0ABOAC/eYB/eUB/QsEACASQZAEaiESIFsgL0EBayIvRw0ACwsgW0EBaiFbIAFBkARqIQEgOCA7Rw0ACwsgGUGgB2okAAwECyA4IExBsLHCABCFCwALIDggTEHAscIAEIULAAsgOCBMQaCxwgAQ8A4ACyAZQQA2AoAHIBlBATYC9AYgGUGIuMIANgLwBiAZQgQ3AvgGIBlB8AZqQbi4wgAQuQ0ACyACQaACaiECIA5BoAJrIg4NAAsLIFAEQCC8ASBps5QhrgFBACESICQhLUEAIQ4DQCAfIA5BuAdsaiEnAn0CQCAkIA5BxAFsaiIQKAKwASIBIGBJBEAgECgCtAEgXiABQRRsaiIPKAIARg0BCyAnKAKkByIBIENPBEBDAAAAACG5AUMAAAAAIagBQwAAAAAhsgFDAAAAACG4AUMAAAAAIb8BQwAAAAAhtgFDAACAPwwCCyA6IAFBBnRqIgEqAhghtgEgASoCFCG/ASABKgIQIbgBIAEqAgghsgEgASoCBCGoASABKgIAIbkBIAEqAgwMAQsgDygCBCIBIHZPDQ8gdyABQaQCbGoiAigCAEGAgICAeEYNDyACKAKgAiAPKAIIRw0PIA8oAhAiASACKAIITw0OIAIoAgQgAUHwA2xqIgEqArQDIbYBIAEqArADIb8BIAEqAqwDIbgBIAEqAqQDIbIBIAEqAqADIagBIAEqApwDIbkBIAEqAqgDCyGZAQJ9AkAgECgCuAEiASBgSQRAIBAoArwBIF4gAUEUbGoiDygCAEYNAQsgJygCqAciASBDTwRAQwAAgD8htwFDAAAAACGwAUMAAAAAIbQBQwAAAAAhswFDAAAAACGxAUMAAAAAIaoBQwAAAAAMAgsgOiABQQZ0aiIBKgIYIaoBIAEqAhQhsQEgASoCECGzASABKgIMIbcBIAEqAgghtAEgASoCBCGwASABKgIADAELIA8oAgQiASB2Tw0NIHcgAUGkAmxqIgIoAgBBgICAgHhGDQ0gAigCoAIgDygCCEcNDSAPKAIQIgEgAigCCE8NDCACKAIEIAFB8ANsaiIBKgK0AyGqASABKgKwAyGxASABKgKsAyGzASABKgKoAyG3ASABKgKkAyG0ASABKgKgAyGwASABKgKcAwshmgEgJy0AtQciAUEESw0KIAEEQCC+AUMAAAAAYEUNCiAnKgL8BiKsASAnKgLsBiKrAZQgJyoC+AYipwEgJyoC8AYipgGUkyGeASCnASAnKgL0BiKkAZQgJyoCgAcioQEgqwGUkyGcASChASCmAZQgrAEgpAGUkyGbASABQSxsIRAgvwH9EyCxAf0gASHYASC4Af0TILMB/SABIdYBILYB/RMgqgH9IAEh1AEgmQH9EyC3Af0gASHXASCyAf0TILQB/SABId4BIKgB/RMgsAH9IAEh3AEguQH9EyCaAf0gASHdAUEAIQ8gEiITISADQCAfICBqIgJBQGsiASoCACGZASABIMkBIJkBlDgCACACQcQAaiIBIJkBIAEqAgCSOAIAIA8gLWoiGkEQav0AAgAi2gEg3gH9DQgJCgsAAQIDAAECAwABAgMgGkEgaiIB/V0CACLSAf0NAAECAxQVFhcAAQIDAAECAyHfASACQTxqIBpBDGoqAgAgxwFDAAAAAEMAAAAAIBpBKGoqAgAgpAEgrgEgGkEIaioCAJQg1AEg3wEg1wEg3QEg2gEg0gH9DQQFBgcQERITAAECAwABAgMi1QH95gEg3AEg2gEg3gH9DQABAgMMDQ4PAAECAwABAgMi0wH95gH95QEi0gEg0gH95AEi2QH95gEg3QEg3gEg0wH95gEg3QEg3wH95gH95QEi0gEg0gH95AEi2wH95gEg3AEg3AEg3wH95gEg3gEg1QH95gH95QEi0gEg0gH95AEi0wH95gH95QH95AH95AH95AEi0gH9HwCSINIB/R8BkyKiAZQgqwEgrgEgGioCAJQg1gEgGkEcaiDaAf1WAgABINcBINMB/eYBINwBINkB/eYBIN4BINsB/eYB/eUB/eQB/eQB/eQBItIB/R8AkiDSAf0fAZMinwGUIKYBIK4BIBpBBGoqAgCUINgBIAEgGkEUav1cAgD9VgIAASDXASDbAf3mASDeASDTAf3mASDdASDZAf3mAf3lAf3kAf3kAf3kASLSAf0fAJIg0gH9HwGTIp0BlJKSkiKaASCaAUMAAAAAXRsgmgEgmgFcG5SSIpkBOAIAIAJBOGogmQFDAAAAACDIASC9ASClASCaAZKUIpkBIJkBIMgBXRsimQEgmQFDAAAAAF4bkjgCACATIB9qIhpBrANqIgEgGkGkA2oiMyoCACKaASABKgIAkjgCACAaQZADaiDHASChASCiAZQgpwEgnwGUIKwBIJ0BlJKSlCAaQZgDaioCAJI4AgAgGkGUA2ogxwEgngEgogGUIJsBIJ8BlCCcASCdAZSSkpQgGkGcA2oqAgCSOAIAIBpBqANqIgIgGkGgA2oiASoCACKZASACKgIAkjgCACAzIMkBIJoBlDgCACABIMkBIJkBlDgCACATQYwBaiETICBBzABqISAgECAPQSxqIg9HDQALCyAnIKMBOAKcByAtQcQBaiEtIBJBuAdqIRIgUCAOQQFqIg5HDQALCyBNBEAgvAEgabOU/RMh8wFBACESIEIhAUEAIRoDQCAX/QwAAAAAAAAAAAAAAAAAAIA//QsE8AEgFyA6IB4gGkGwHWxqIigoAuQcIhZBBnRqIicgF0HwAWoiNSAWIENJG/0ABAAi6AH9CwTwAiAXIDogKCgC4BwiAkEGdGoiICA1IAIgQ0kiExv9AAQAItwB/QsE4AIgOiAoKALsHCIzQQZ0aiIQIDUgMyBDSRshDiA6ICgoAugcIi1BBnRqIg8gNSAtIENJGyECIBMEeyAg/QAEEAX9DAAAAAAAAAAAAAAAAAAAAAALIdIBIA79AAQAIeEBIAL9AAQAId4BQgAhnQJCACGiAiAWIENJBEAgJykDGCGiAiAnKQMQIZ0CC/0MAAAAAAAAAAAAAAAAAAAAACH0Af0MAAAAAAAAAAAAAAAAAAAAACHUASAtIENJBEAgD/0ABBAh1AEL/QwAAAAAAAAAAAAAAAAAAAAAIecBIDMgQ0kEQCAQ/QAEECHnAQsgFyDSAf0LBLAEIBcgnQI3A8AEIBf9AAK0BCHdASAX/QADuAQh2gEgF/0AAuQCId8BIBf9AAPoAiHZASAX/QAC7AIh2wEgF/0MAAAAAAAAAAAAAAAAAACAP/0LBPABIBcgOiAoKAL0HCIQQQZ0aiIgIBdB8AFqIicgECBDSRv9AAQAIuUB/QsE8AIgFyA6ICgoAvAcIgJBBnRqIjMgJyACIENJIg8b/QAEACLYAf0LBOACIDogKCgC/BwiDkEGdGoiLSAnIA4gQ0kb/QAEACHiASA6ICgoAvgcIhNBBnRqIgIgJyATIENJG/0ABAAh4AEgDwRAIDP9AAQQIfQBC0IAIaACQgAhpAIgECBDSQRAICApAxAhoAIgICkDGCGkAgv9DAAAAAAAAAAAAAAAAAAAAAAh1wH9DAAAAAAAAAAAAAAAAAAAAAAh8gEgEyBDSQRAIAL9AAQQIfIBCyAOIENJBEAgLf0ABBAh1wELIBf9AALsAiHWASAX/QAD6AIh1QEgF/0AAuQCIdMBIBcg9AH9CwSwBCAXIKACNwPABCAoLQCQHSICQQRLDQggAgRAINsBIOgB/Q0AAQIDHB0eHwABAgMAAQIDIN4B/Q0AAQIDBAUGBxwdHh8AAQIDIOEB/Q0AAQIDBAUGBwgJCgscHR4fIe4BINkBIOgB/Q0AAQIDGBkaGwABAgMAAQIDIN4B/Q0AAQIDBAUGBxgZGhsAAQIDIOEB/Q0AAQIDBAUGBwgJCgsYGRobIf4BIN8BIOgB/Q0AAQIDFBUWFwABAgMAAQIDIN4B/Q0AAQIDBAUGBxQVFhcAAQIDIOEB/Q0AAQIDBAUGBwgJCgsUFRYXIf8BINwBIOgB/Q0AAQIDEBESEwABAgMAAQIDIN4B/Q0AAQIDBAUGBxAREhMAAQIDIOEB/Q0AAQIDBAUGBwgJCgsQERITIfYBINIBIJ0Cp/0cASDUAf0NAAECAwQFBgcQERITAAECAyDnAf0NAAECAwQFBgcICQoLEBESEyHoASDaASCiAqf9HAEg1AH9DQABAgMEBQYHGBkaGwABAgMg5wH9DQABAgMEBQYHCAkKCxgZGhsh4QEg3QEgnQJCIIin/RwBINQB/Q0AAQIDBAUGBxQVFhcAAQIDIOcB/Q0AAQIDBAUGBwgJCgsUFRYXId4BINYBIOUB/Q0AAQIDHB0eHwABAgMAAQIDIOAB/Q0AAQIDBAUGBxwdHh8AAQIDIOIB/Q0AAQIDBAUGBwgJCgscHR4fIfsBINUBIOUB/Q0AAQIDGBkaGwABAgMAAQIDIOAB/Q0AAQIDBAUGBxgZGhsAAQIDIOIB/Q0AAQIDBAUGBwgJCgsYGRobIfgBINMBIOUB/Q0AAQIDFBUWFwABAgMAAQIDIOAB/Q0AAQIDBAUGBxQVFhcAAQIDIOIB/Q0AAQIDBAUGBwgJCgsUFRYXIfoBINgBIOUB/Q0AAQIDEBESEwABAgMAAQIDIOAB/Q0AAQIDBAUGBxAREhMAAQIDIOIB/Q0AAQIDBAUGBwgJCgsQERITIe8BIPQBIKACp/0cASDyAf0NAAECAwQFBgcQERITAAECAyDXAf0NAAECAwQFBgcICQoLEBESEyHcASAX/QADuAQgpAKn/RwBIPIB/Q0AAQIDBAUGBxgZGhsAAQIDINcB/Q0AAQIDBAUGBwgJCgsYGRobId0BIBf9AAK0BCCgAkIgiKf9HAEg8gH9DQABAgMEBQYHFBUWFwABAgMg1wH9DQABAgMEBQYHCAkKCxQVFhch2gEgKP0ABMABIu0BICj9AAQAIv0B/eYBICj9AASwASLkASAo/QAEECLxAf3mAf3lASHfASDkASAo/QAEICL3Af3mASAo/QAE0AEi6gEg/QH95gH95QEh2QEg6gEg8QH95gEg7QEg9wH95gH95QEh2wEgAkGwAWwhDkEAIRAgEiIPIRMDQCABIBBqIgJBMGr9AAQAIdgBIAJBoAFq/QAEACHWASACQSBq/QAEACHSASAC/QAEACHUASACQRBq/QAEACHVASACQeAAav0ABAAh4AEgAkHQAGr9AAQAIYQCIAJBQGv9AAQAIesBIAJBkAFq/QAEACHmASACQYABav0ABAAh4wEgAkHwAGr9AAQAIekBIBdBsARq/QwAAAAAAAAAAAAAAAAAAAAA/QsEACAX/QAEsAQh0wEgDyAeaiIgQeADaiIC/QAEACHXASACIJMCINcB/eYB/QsEACAgQfADaiICINcBIAL9AAQA/eQB/QsEACAgQdADaiDYASCUAv0MAAAAAAAAAAAAAAAAAAAAACDWASD3ASDzASDSAf3mASDgASCEAiD2Af3mASDrASD/Af3mAf3lASLSASDSAf3kASLlASDuAf3mASDrASD+Af3mASDgASD2Af3mAf3lASLSASDSAf3kASLiASD2Af3mASDgASD/Af3mASCEAiD+Af3mAf3lASLSASDSAf3kASLgASD/Af3mAf3lAf3kAf3kASDhAf3kAf3kASDmASDjASDvAf3mASDpASD6Af3mAf3lASLSASDSAf3kASLXASD7Af3mASDpASD4Af3mASDmASDvAf3mAf3lASLSASDSAf3kASLYASDvAf3mASDmASD6Af3mASDjASD4Af3mAf3lASLSASDSAf3kASLSASD6Af3mAf3lAf3kAf3kASDdAf3kAf3lASLWAf3mASD9ASDzASDUAf3mASDrASDgASDuAf3mASDlASD/Af3mASDiASD+Af3mAf3lAf3kAf3kASDoAf3kAf3kASDpASDSASD7Af3mASDXASD6Af3mASDYASD4Af3mAf3lAf3kAf3kASDcAf3kAf3lASLUAf3mASDxASDzASDVAf3mASCEAiDiASDuAf3mASDgASD+Af3mASDlASD2Af3mAf3lAf3kAf3kASDeAf3kAf3kASDjASDYASD7Af3mASDSASD4Af3mASDXASDvAf3mAf3lAf3kAf3kASDaAf3kAf3lASLVAf3mAf3kAf3kAf3kASLYAf0MAAAAAAAAAAAAAAAAAAAAAP3rASDYASDYAf1C/VL95gH95AEi0gH9CwQAICBBwANqINIBINMBIJkC/eUBItIB/QwAAAAAAAAAAAAAAAAAAAAAIJgCIJsCINgB/eQB/eYBItMB/QwAAAAAAAAAAAAAAAAAAAAA/eoBINMBINMB/UL9UiLTASDSAf3rASDT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IBD9AASQECHxASAQ/QAE0A0h9wEgEP0ABIAOIeoBIBD9AASgECHlASAQ/QAE4A0h3wEgEP0ABJAOIdkBIBD9AARgIeIBIBD9AARwIeABIBD9AASAASHoASAQ/QAE0A8h2AEgEP0ABOAPIdMBIBD9AATAECGHAiAQ/QAE8A8h0gEgJSCFAiDWASCRAiCAAv3mASD8ASDbASCQAv3mASCPAiCSAv3mAf3lASLWAf3mAf3kAf3mAf3kASKNAv0LBEAgJSDcASDVASCQAiCAAv3mASD8ASCGAiCPAv3mASDbASCRAv3mAf3lASLVAf3mAf3kAf3mAf3kASLbAf0LBDAgJf0AAjQh4QEgJf0AAzgh3gEgJf0AAjwh3AEgJSDUASCAAiCEAv3mASD8ASDdAf3mAf3kAf3kASDSASCHAv3mAf3kASKJAv1aAigCICUgiQL9WwMgACAlINcBIIACIO4B/eYBIPwBIPsB/eYB/eQB/eQBINMBIIcC/eYB/eQBItMB/QsEECCDAiDzASCPAiCAAv3mASD8ASCRAiCSAv3mASCGAiCQAv3mAf3lASLSAf3mAf3kAf3mAf3kASHuASCOAiCAAiD6Af3mASD8ASDvAf3mAf3kAf3kASDYASCHAv3mAf3kASH7ASDWASDaASD8Af3lASKEAv3mASHdASDjASDrASCAAv3lASLjAf3mASHYASDVASCEAv3mASHXASDjASDmAf3mASHWASD8ASDZAf3mASHaASCAAiDfAf3mASHUASD8ASDqAf3mASHfASCAAiD3Af3mASHVASABIChJDQEMAgsgAUEEQZinwgAQ8A4ACyAdIAFBBXRqIgEg0wEgiQL9DQABAgMQERITAAECAwABAgMg/gH9DQABAgMEBQYHEBESEwABAgMg/wH9DQABAgMEBQYHCAkKCxAREhP9CwQQIAEg2wEgjQL9DQABAgMQERITAAECAwABAgMg7gH9DQABAgMEBQYHEBESEwABAgMg+wH9DQABAgMEBQYHCAkKCxAREhP9CwQACyDSASCEAv3mASHZASDjASDpAf3mASHTASD8ASDkAf3mASHbASCAAiD9Af3mASHSASDYASDdAf3kASHYASDWASDXAf3kASHWASDUASDaAf3kASHUASDVASDfAf3kASHVASACIChJBEAgHSACQQV0aiIBICX9AAIUIIkC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H0EBaw4CAQACCyACIBJqQaQBaiDSAf0fADgCAAwCCyACICZqQRhqINIB/R8AOAIADAELIAIgIUECdGpB0AJqINIB/R8AOAIACyBAIBgoAiQiAk0NASA3IAJBgANsaiECAkACQAJAAkAgH0EBaw4CAQACCyACIBJqQaQBaiDSAf0fATgCAAwCCyACICZqQRhqINIB/R8BOAIADAELIAIgIUECdGpB0AJqINIB/R8BOAIACyBAIBgoAigiAk0NASA3IAJBgANsaiECAkACQAJAAkAgH0EBaw4CAQACCyACIBJqQaQBaiDSAf0fAjgCAAwCCyACICZqQRhqINIB/R8COAIADAELIAIgIUECdGpB0AJqINIB/R8COAIACyBAIBgoAiwiAk0NASA3IAJBgANsaiECAkACQAJAAkAgH0EBaw4CAQACCyACIBJqQaQBaiDSAf0fAzgCAAwCCyACICZqQRhqINIB/R8DOAIADAELIAIgIUECdGpB0AJqINIB/R8DOAIACyAeQSBqJAAMBQsgAiBATw0AIB9BAWsOAgIDAQsgAiBAQdCxwgAQhQsACyAeQQA2AhggHkEBNgIMIB5B7IDCADYCCCAeQgQ3AhAgHkEIakHgscIAELkNAAsgIUEGQfCxwgAQhQsACyAhQQZBgLLCABCFCwALIBhBkARqIRhBACECDAELCyMAQSBrIgIkAAJAAkACQAJAAkACQAJAIBooAhAiASBASQRAIDcgAUGAA2xqIQEgGigCBCESIBooAgBBAWsOAgIDAQsgASBAQeCwwgAQhQsACyASQQZPDQIgASASQQJ0akHQAmogGioCFDgCAAwFCyASQQZJDQMgEkEGQYCxwgAQhQsACyASQQZJDQEgEkEGQZCxwgAQhQsACyACQQA2AhggAkEBNgIMIAJB7IDCADYCCCACQgQ3AhAgAkEIakHwsMIAELkNAAsgASASQRxsakGkAWogGioCFDgCAAwBCyABIBJBDGxqQRhqIBoqAhQ4AgALIAJBIGokACAaQYgBaiEaDAELCyAuKAJ4IhggLigCfEGAEmxqITYgLigCbCIaIC4oAnBBsB1saiFBIC4oAmAiECAuKAJkQbgHbGohQgNAIBogQUchEkEBIQICQANAAkAgAkEBcQRAAkAgEEUNACAQIEJGDQAgECA8ICwQywMgEEG4B2ohAgNAIAIg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IAYoAogDIRQgBigCjAMhAkEAIREDQCAcKAIAIgEgAk8NECAUIAFBgANsaiIBKAIAQQFHDRAgASgCBCAcQQRqKAIARw0QIAEtAD0EQCABILEBIAEqApgBIqABIKABlCABKgKcASKgASCgAZSSIAEqAqABIqABIKABlJKRIAEqAjQgASoCpAEioAEgoAGUIAEqAqgBIqABIKABlJIgASoCrAEioAEgoAGUkpGUkpQgASoCMEMAACBBlV4iAToAPCABIBFyIRELIA8gHEEIaiIcRw0ACyARQQFxRQ0HICJBkAFqIi4QugogIigCmAEhPSAAICIpA5ABIqECNwPQAUEAIQJBACEUQQAhDiMAQdAEayIWJAAgIkEwaiIBKgIAIaABIBZCidm54o7TvpcINwMoIBZByOfBAP0AAwAi0gH9CwMYIBZBADYCPCAWQoCAgIDAADcCNCAWQonZueKO076XCDcDUCAWINIB/QsDQCAHKAIQIjpBsAFsIRAgASoCHEMK1yM8lCGaASAGKAKIAyEcIAYoAowDIRIgBygCDCEzQQAhAQNAAkACQAJAAkAgAiAQRwRAIAIgM2oiEygCAEUNAyATQfIAai0AAA0DIBNBIGooAgBFDQMCQCATQSRqKAIAIhEgEk8NACAcIBFBgANsaiIRKAIAQQFHDQAgESgCBCATQShqKAIARg0CC0HQi8IAQRNB+MDCABDRCwALIBYgBzYCtAEgFiAGNgKwASAWIAQ2AqwBIBZCADcCmAEgFkEANgKMASAWQQA2AoABIBZBADYCdCAWIAUoAkAiTzYCqAEgFiAFKAI8IE8oAghBAWtBeHFqQQhqIkc2AqQBIKABIZkBIAMoAggiAkUNASADKAIEIgEgAkEDdGohNiABQQhqIQIgFkGwAmohQCAFKAIUITIgBSgCECE+IAUoAgQhICAFKAIIIUUgBSgCOCFBIAUoAjQhLSAWQZgEaiEkIAYoAogDISwgBigCjAMhPCBPQSBqISEDQAJAIAEoAgAiESA8Tw0AICwgEUGAA2xqIhEoAgBBAUcNACARKAIEIAEoAgRHDQAgAiETAkAgES0APEUNACARKgKkASGkASARKgLoASGjASARKgKoASGlASARKgLsASGrASARKgL0ASGtASARKgKsASGhASARKgLEASGqASARKgL8ASGiASARKgK8ASGuASAR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BEAgACACQQRBAUEBENYGIAAoAgghAgsgACgCBCACakEMNgAAIAAgAkEEaiICNgIIIANBBGoqAgAhDiADKgIAIQ8gACgCACACa0EDTQRAIAAgAkEEQQFBARDWBiAAKAIIIQILIAAoAgQgAmogDzgAACAAIAJBBGoiAjYCCCAAKAIAIAJrQQNNBEAgACACQQRBAUEBENYGIAAoAgghAgsgACACQQRqNgIIIAAoAgQgAmogDjgAAEEAIQAMBgsgCCgCCCEDIAEoAgAiACgCCCECIAAoAgAgAmtBA00EQCAAIAJBBEEBQQEQ1gYgACgCCCECCyAAIAJBBGo2AgggACgCBCACakELNgAAIAMgARDWASEADAULIAEoAgAiACgCCCECIAAoAgAgAmtBA00EQCAAIAJBBEEBQQEQ1gYgACgCCCECCyAAIAJBBGo2AgggACgCBCACakEKNgAAIAgoAggiBEEEaigCACECIARBCGooAgAiBa0hCiABKAIAIgAoAgghAyAAKAIAIANrQQdNBEAgACADQQhBAUEBENYGIAAoAgghAwsgACADQQhqNgIIIAAoAgQgA2ogCjcAACAFQSRsIQMDQCADBEAgASACEM4GIgANBiACQRBqIAEQkAgiAA0GIANBJGshAyACQRxqIQAgAkEkaiECIAAgARAtIgBFDQEMBgsLIAEgBEEMahDxASIADQQgBEE4aigCACECIARBPGooAgAiBa0hCiABKAIAIgAoAgghAyAAKAIAIANrQQdNBEAgACADQQhBAUEBENYGIAAoAgghAwsgACADQQhqNgIIIAAoAgQgA2ogCjcAACAFQRhsIQMDQCADBEAgAiABEJAIIgANBiADQRhrIQMgAkEMaiEAIAJBGGohAiAAIAEQkAgiAEUNAQwGCwsgBEFAayABEJAIIgANBCAEQcwAaiABEJAIIQAMBAsgCCgCCCEGIAEoAgAiAigCCCEAIAIoAgAgAGtBA00EQCACIABBBEEBQQEQ1gYgAigCCCEACyACIABBBGo2AgggAigCBCAAakEJNgAAIAEgBhDkBSIADQMgBigCGCEDIAYoAhwiBa0hCiACKAIAIAIoAggiBGtBB00EQCACIARBCEEBQQEQ1gYgAigCCCEECyACIARBCGoiADYCCCACKAIEIARqIAo3AAAgBQRAA0AgAy0AACEHIANBAWohAyACIAAgAigCAEcEfyAABSACIABBAUEBQQEQ1gYgAigCCAsiBEEBaiIANgIIIAIoAgQgBGogBzoAACAFQQFrIgUNAAsLIAY1AiAhCiACKAIAIABrQQdNBEAgAiAAQQhBAUEBENYGIAIoAgghAAsgAigCBCAAaiAKNwAAIAIgAEEIaiIANgIIIAY1AiQhCiACKAIAIABrQQdNBEAgAiAAQQhBAUEBENYGIAIoAgghAAsgAiAAQQhqNgIIIAIoAgQgAGogCjcAACAGQShqIAEQkAgiAA0DIAZBNGogARCQCCIADQMgBkFAayABEJAIIgANAyAGKAJMIQIgASgCACIAKAIIIQMgACgCACADa0EHTQRAIAAgA0EIQQFBARDWBiAAKAIIIQMLIAAgA0EIajYCCCAAKAIEIANqIAKtNwAAIAEgBi0AUBC2DCEADAMLIAgoAgghAyABKAIAIgAoAgghAiAAKAIAIAJrQQNNBEAgACACQQRBAUEBENYGIAAoAgghAgsgACACQQRqNgIIIAAoAgQgAmpBCDYAACADIAEQkAghAAwCCyAIKAIIIQQgASgCACICKAIIIQAgAigCACAAa0EDTQRAIAIgAEEEQQFBARDWBiACKAIIIQALIAIgAEEEajYCCCACKAIEIABqQQc2AAAgASAEEPEBIgANASAEKAIsIQMgBCgCMCIFrSEKIAIoAgAgAigCCCIAa0EHTQRAIAIgAEEIQQFBARDWBiACKAIIIQALIAIgAEEIajYCCCACKAIEIABqIAo3AAAgBUEMbCECA0AgAgRAIAJBDGshAiADIAEQkAghACADQQxqIQMgAEUNAQwDCwsgBCgCOCEDIAQoAjwiAq0hCiABKAIAIgEoAgghACABKAIAIABrQQdNBEAgASAAQQhBAUEBENYGIAEoAgghAAsgASAAQQhqIgQ2AgggASgCBCAAaiAKNwAAQQAhACACRQ0BIAMgAkEDdGohAgNAIANBBGooAgAhBiADKAIAIQUgASgCACAEa0EDTQRAIAEgBEEEQQFBARDWBiABKAIIIQQLIAEoAgQgBGogBTYAACABIARBBGoiBTYCCCABKAIAIAVrQQNNBEAgASAFQQRBAUEBENYGIAEoAgghBQsgASAFQQRqIgQ2AgggASgCBCAFaiAGNgAAIAIgA0EIaiIDRw0ACwwBCyAIKAIIIQYgASgCACIAKAIIIQIgACgCACACa0EDTQRAIAAgAkEEQQFBARDWBiAAKAIIIQILIAAgAkEEajYCCCAAKAIEIAJqQQY2AAAgASAGEPEBIgANACAGKAIsIQMgBigCMCIErSEKIAEoAgAiACgCCCECIAAoAgAgAmtBB00EQCAAIAJBCEEBQQEQ1gYgACgCCCECCyAAIAJBCGo2AgggACgCBCACaiAKNwAAIARBDGwhAgNAIAIEQCACQQxrIQIgAyABEJAIIQAgA0EMaiEDIABFDQEMAgsLIAYoAjghAiAGKAI8IgWtIQogASgCACIAKAIIIQQgACgCACAEa0EHTQRAIAAgBEEIQQFBARDWBiAAKAIIIQQLIAAgBEEIaiIDNgIIIAAoAgQgBGogCjcAACAFBEAgAiAFQQxsaiEFA0AgAigCACEEIAAoAgAgA2tBA00EQCAAIANBBEEBQQEQ1gYgACgCCCEDCyAAKAIEIANqIAQ2AAAgACADQQRqIgM2AgggAkEEaigCACEEIAAoAgAgA2tBA00EQCAAIANBBEEBQQEQ1gYgACgCCCEDCyAAKAIEIANqIAQ2AAAgACADQQRqIgQ2AgggAkEIaigCACEHIAAoAgAgBGtBA00EQCAAIARBBEEBQQEQ1gYgACgCCCEECyAAIARBBGoiAzYCCCAAKAIEIARqIAc2AAAgBSACQQxqIgJHDQALCwJAIAYoAkBBgICAgHhHBEAgASgCACIEKAIIIQAgACAEKAIARgRAIAQgAEEBQQFBARDWBiAEKAIIIQALIAQoAgQgAGpBAToAACAEIABBAWoiADYCCCAGKAJEIQMgBigCSCICrSEKIAQoAgAgAGtBB00EQCAEIABBCEEBQQEQ1gYgBCgCCCEACyAEIABBCGo2AgggBCgCBCAAaiAKNwAAIAJBDGwhAgNAIAIEQCACQQxrIQIgAyABEJAIIQAgA0EMaiEDIABFDQEMBAsLIAYoAlAhAiAGKAJUIgOtIQogBCgCACAEKAIIIgBrQQdNBEAgBCAAQQhBAUEBENYGIAQoAgghAAsgBCAAQQhqNgIIIAQoAgQgAGogCjcAACADQSRsIQMDQCADRQ0CIAIgARCQCCIADQMgAkEMaiABEJAIIgANAyADQSRrIQMgAkEYaiEAIAJBJGohAiAAIAEQkAgiAEUNAAsMAgsgASgCACIAKAIIIQIgAiAAKAIARgRAIAAgAkEBQQFBARDWBiAAKAIIIQILIAAgAkEBajYCCCAAKAIEIAJqQQA6AAALIAEoAgAhAAJAIAYoAlhBgICAgHhHBEAgACgCCCICIAAoAgBGBEAgACACQQFBAUEBENYGIAAoAgghAgsgACgCBCACakEBOgAAIAAgAkEBaiIENgIIIAYoAlwhAyAGKAJgIgWtIQogACgCACAEa0EHTQRAIAAgBEEIQQFBARDWBiAAKAIIIQQLIAAgBEEIaiICNgIIIAAoAgQgBGogCjcAACAFBEAgBUECdCEFA0AgAygCACEHIANBBGohAyAAIAAoAgAgAmtBA0sEfyACBSAAIAJBBEEBQQEQ1gYgACgCCAsiBEEEaiICNgIIIAAoAgQgBGogBzYAACAFQQRrIgUNAAsLIAYoAmghAyAGKAJsIgWtIQogACgCACACa0EHTQRAIAAgAkEIQQFBARDWBiAAKAIIIQILIAAgAkEIaiIENgIIIAAoAgQgAmogCjcAACAFBEAgBUECdCEFA0AgAygCACEHIANBBGohAyAAIAAoAgAgBGtBA0sEfyAEBSAAIARBBEEBQQEQ1gYgACgCCAsiAkEEaiIENgIIIAAoAgQgAmogBzYAACAFQQRrIgUNAAsLIAYoAnQhAiAGKAJ4IgWtIQogACgCACAEa0EHTQRAIAAgBEEIQQFBARDWBiAAKAIIIQQLIAAgBEEIaiIDNgIIIAAoAgQgBGogCjcAACAFRQ0BIAIgBUEEdGohBQNAIAIoAgAhBCAAKAIAIANrQQNNBEAgACADQQRBAUEBENYGIAAoAgghAwsgACgCBCADaiAENgAAIAAgA0EEaiIDNgIIIAJBBGooAgAhBCAAKAIAIANrQQNNBEAgACADQQRBAUEBENYGIAAoAgghAwsgACgCBCADaiAENgAAIAAgA0EEaiIDNgIIIAJBCGooAgAhBCAAKAIAIANrQQNNBEAgACADQQRBAUEBENYGIAAoAgghAwsgACgCBCADaiAENgAAIAAgA0EEaiIENgIIIAJBDGooAgAhByAAKAIAIARrQQNNBEAgACAEQQRBAUEBENYGIAAoAgghBAsgACAEQQRqIgM2AgggACgCBCAEaiAHNgAAIAUgAkEQaiICRw0ACwwBCyAAKAIIIgIgACgCAEYEQCAAIAJBAUEBQQEQ1gYgACgCCCECCyAAIAJBAWo2AgggACgCBCACakEAOgAACyABKAIAIQACQCAGKAJ8QYCAgIB4RwRAIAAoAggiAiAAKAIARgRAIAAgAkEBQQFBARDWBiAAKAIIIQILIAAoAgQgAmpBAToAACAAIAJBAWoiBDYCCCAGKAKAASEDIAYoAoQBIgWtIQogACgCACAEa0EHTQRAIAAgBEEIQQFBARDWBiAAKAIIIQQLIAAgBEEIaiICNgIIIAAoAgQgBGogCjcAACAFBEAgBUECdCEFA0AgAygCACEHIANBBGohAyAAIAAoAgAgAmtBA0sEfyACBSAAIAJBBEEBQQEQ1gYgACgCCAsiBEEEaiICNgIIIAAoAgQgBGogBzYAACAFQQRrIgUNAAsLIAYoAowBIQQgBigCkAEiBa0hCiAAKAIAIAJrQQdNBEAgACACQQhBAUEBENYGIAAoAgghAgsgACACQQhqIgM2AgggACgCBCACaiAKNwAAIAUEQCAFQQJ0IQUDQCAEKAIAIQcgBEEEaiEEIAAgACgCACADa0EDSwR/IAMFIAAgA0EEQQFBARDWBiAAKAIICyICQQRqIgM2AgggACgCBCACaiAHNgAAIAVBBGsiBQ0ACwsgBigCmAEhAiAGKAKcASIFrSEKIAAoAgAgA2tBB00EQCAAIANBCEEBQQEQ1gYgACgCCCEDCyAAIANBCGoiBDYCCCAAKAIEIANqIAo3AAAgBUUNASAFQQJ0IQUDQCACNQIAIQogAkEEaiECIAAgACgCACAEa0EHSwR/IAQFIAAgBEEIQQFBARDWBiAAKAIICyIDQQhqIgQ2AgggACgCBCADaiAKNwAAIAVBBGsiBQ0ACwwBCyAAKAIIIgIgACgCAEYEQCAAIAJBAUEBQQEQ1gYgACgCCCECCyAAIAJBAWo2AgggACgCBCACakEAOgAACyAGLwGgASEDIAEoAgAiACgCCCECIAAoAgAgAmtBAU0EQCAAIAJBAkEBQQEQ1gYgACgCCCECCyAAIAJBAmo2AgggACgCBCACaiADOwAAQQAhAAsgCEEQaiQAIAALv0ADEn8QfQF7IwBBwAdrIgQkACAE/QwAAAAAAAAAAAAAAAAAAAAA/QsEsAEgBP0MAAAAAAEAAAACAAAAAwAAAP0LBAAgBEEQaiIHQQBBoAH8CwBDAACAPyEZIAIqAgAiHiAelCACKgIEIhogGpSSIAIqAggiHCAclJIiF0MAAIAoXgRAIBwgF5EiF5UhFiAaIBeVISAgHiAXlSEZCyAEIBkgGSAZlCAgICCUkiAWIBaUkpEiGZUiGDgC4AUgBCAgIBmVIhc4AuQFIAQgFiAZlSIWOALoBSAEQbAGaiABIARB4AVqEIIEIARBADYCvAEgBEEANgKsASAEIBYgASoCYCIflCAEKgK4BpIiFjgCJCAEIBw4AjAgBCAWIByTOAIYIAQgFyAflCAEKgK0BpIiFjgCICAEIBo4AiwgBCAWIBqTOAIUIAQgBCoCsAYgGCAflJIiFjgCHCAEIB44AiggBCAWIB6TOAIQIBwgHkMAAAAAlCIdIBpDAAAAAJQiF5MiFiAWkiIbIBcgHEMAAAAAlCIXkyIWIBaSIhlDAAAAAJQiGCAXIB2TIhYgFpIiFkMAAAAAlCIXk5KSISEgGiAWIBtDAAAAAJQiFiAYk5KSISIgHiAZIBcgFpOSkiEjIARBoAVqIAQQawJAAn0CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAQqAqAFIhYgFpQgBCoCpAUiFiAWlJIgBCoCqAUiFyAXlJJDAAAAAF5FDQBD//9/fyEWQeQAIQUCQAJAAkACQANAIAQqAqAFIhsgG5QgBCoCpAUiGSAZlJIgBCoCqAUiGCAYlJIiF0MAAMgrXkUNBSAXkSIXIBZgDQQgGIwgF5UiHiAelCAbjCAXlSIbIBuUIBmMIBeVIhkgGZSSkpEhFiAEIB4gFpUiGjgC6AUgBCAbIBaVIhg4AuAFIAQgGSAWlSIWOALkBSAEQbAGaiIGIAEgBEHgBWoQggQgGyAfIBiUIAQqArAGkiIcICOTIh2UIBkgHyAWlCAEKgK0BpIiGyAikyIZlJIgHiAfIBqUIAQqArgGkiIYICGTIhaUkiIavEH/////B3FBgICA/AdPDQYgGkP//3//XUUEQCAXIBqSIBdDvRuPOpRfDQQgBCAhOALQBiAEICI4AswGIAQgIzgCyAYgBCAYOALEBiAEIBs4AsAGIAQgHDgCvAYgBCAWOAK4BiAEIBk4ArQGIAQgHTgCsAYgBCAGEOEDRQ0CIARBoAVqIAQQayAEKAK8AUEDRg0DIBchFiAFQQFrIgUNAQsLQejawgBBKEGEksMAENYMAAtDAAAAACEZQwAAAAAhGEMAAAAAIAQoArwBIgFBAWoiAkUNERogBCoCsAEiFiAEKgIklEMAAAAAkiEYIBYgBCoCIJRDAAAAAJIhGSAWIAQqAhyUQwAAAACSIhcgAUUNERogGCAEKgK0ASIWIAQqAkiUkiEYIBkgFiAEKgJElJIhGSAXIBYgBCoCQJSSIhcgAkECRg0RGiACQQNHDQUgGCAEKgK4ASIWIAQqAmyUkiEYIBkgFiAEKgJolJIhGSAXIBYgBCoCZJSSDBELIBpDAACgtV9FDQIMDwtDAAAAACEZQwAAAAAhGEMAAAAAIAQoArwBIgFBAWoiAkUNDxogBCoCsAEiFiAEKgIklEMAAAAAkiEYIBYgBCoCIJRDAAAAAJIhGSAWIAQqAhyUQwAAAACSIhcgAUUNDxogGCAEKgK0ASIWIAQqAkiUkiEYIBkgFiAEKgJElJIhGSAXIBYgBCoCQJSSIhcgAkECRg0PGiACQQNHDQQgGCAEKgK4ASIWIAQqAmyUkiEYIBkgFiAEKgJolJIhGSAXIBYgBCoCZJSSDA8LDA0LAkAgA0UEQCAEQoCAgIDAADcC7AEgBEKAgICAwAA3AuABIARCgICAgMAANwLUASAEQoCAgIDAADcCyAEgBEEANgL0ASAEQQA2AtwBIARBADYC0AEgBEEANgLoASAEQewBaiENIARB1AFqIRAgBCgCvAEiBkF/RgRAQQQhBUEAIQMMBwsgBEHIAWoiA0GEkcMAEJUIIAQoAswBIgUgB/0AAgD9CwIAIAVBIGogB0EgaigCADYCACAFQRBqIAdBEGr9AAIA/QsCACAEQQE2AtABIAZFDQEgBkECaiEHIARBNGohBiAEKALIAUEBRgRAIANBhJHDABCVCCAEKALMASEFCyAFIAb9AAIA/QsCJCAFQcQAaiAGQSBqKAIANgIAIAVBNGogBkEQav0AAgD9CwIAIARBAjYC0AEgB0EDRg0FIARB2ABqIQMgBCgCyAFBAkYEQCAEQcgBakGEkcMAEJUIIAQoAswBIQULIAUgA/0AAgD9CwJIIAVB6ABqIANBIGooAgA2AgAgBUHYAGogA0EQav0AAgD9CwIAQQMhAyAEQQM2AtABIAdBBEYNBiAEQfwAaiEDIAQoAsgBQQNGBEAgBEHIAWpBhJHDABCVCCAEKALMASEFCyAFIAP9AAIA/QsCbCAFQYwBaiADQSBqKAIANgIAIAVB/ABqIANBEGr9AAIA/QsCACAEQQQ2AtABIAdBBUYNB0EEQQRBqJPDABCFCwALIABBAToADCAAIAIpAgA3AgAgAEEIaiACQQhqKAIANgIADA8LIARBkAdqQgA3AwAgBP0MAAAAAAAAAAAAAAAAAAAAAP0LA4AHDAcLQZSSwwBBJ0G8ksMAENYMAAtBA0EDQYiTwwAQhQsAC0EDQQNBiJPDABCFCwALIAUqAiwgBSoCCJMiGkMAAAAAIAUqAiQgBSoCAJMiHIsgBSoCKCAFKgIEkyIdi14iAxsiFyAcjCAdIAMbIhsgG5RDAAAAACAajCADGyIWIBaUIBcgF5SSkpEiGJUhGSAEIB0gGZQgHCAWIBiVIhaUkyIXIBcgF5QgGiAWlCAdIBsgGJUiFpSTIhggGJQgHCAWlCAaIBmUkyIXIBeUkpKRIhaVIh04AugFIAQgFyAWlSIbOALkBSAEIBggFpUiGTgC4AUgBEGwBmogASAEQeAFahCCBCAEKgK4BiEYIAQqArQGIRYgBCoCsAYhFyAEKALQASIDIAQoAsgBRgRAIARByAFqQZSRwwAQlQgLIAQoAswBIANBJGxqIgUgITgCICAFICI4AhwgBSAjOAIYIAUgGCAfIB2UkiIYOAIUIAUgFiAfIBuUkiIWOAIQIAUgFyAfIBmUkiIXOAIMIAUgGCAhkzgCCCAFIBYgIpM4AgQgBSAXICOTOAIAIAQgA0EBaiIDNgLQASAEKALMASEFCyAEQQI2AsAEIARCgICAgBA3ArgEIARBATYCzAQgBEKAgICAIDcCxAQgBEEBNgLYBCAEQoGAgIAQNwLQBCAEQQA2AuQEIARCADcC3AQgBEGwBmoiCSAFIAMgBEG4BGogBEHQBGoQ3gIgBEHoBGoiA0EwaiILIAlBMGoiCCgCADYCACADQSBqIgcgCUEgaiIF/QACAP0LAwAgA0EQaiIGIAlBEGoiA/0AAgD9CwMAIAQgBP0AArAG/QsD6AQgCSAEKALMASAEKALQASAEQcQEaiAEQdwEahDeAiAEQaAFaiIJQTBqIAgoAgA2AgAgCUEgaiAF/QACAP0LAwAgCUEQaiAD/QACAP0LAwAgBCAE/QACsAb9CwOgBSAEKALUASIDIAQoAtwBIglGBEAgEEGEj8MAEJsIIAQoAtQBIQMLIAQoAtgBIgUgCUE0bGoiCCAE/QAD6AT9CwIAIAhBIGogB/0AAwD9CwIAIAhBEGogBv0AAwD9CwIAIAhBMGogCygCADYCACAEIAlBAWoiBjYC3AEgAyAGRgRAIBBBlI/DABCbCCAEKALYASEFCyAFIAZBNGxqIgUgBP0AA6AF/QsCACAFQSBqIARBoAVqIgNBIGr9AAMA/QsCACAFQRBqIANBEGr9AAMA/QsCACAFQTBqIANBMGooAgA2AgAgBCAJQQJqNgLcASAEKAL0ASIFIAQoAuwBRgRAIA1BqNrCABC0CAsgBCgC8AEiCCAFQQN0akIANwIAIAQgBUEBajYC9AECQCAFRQRAQQAhAwwBCwNAIAggBUEBayIHQQF2IgNBA3RqIgZBBGoqAgBDAAAAAF1FBEAgBSEDDAILIAggBUEDdGogBikCADcCACADIQUgB0EBSw0ACwsgCCADQQN0akIANwIAIAQoAvQBIgUgBCgC7AFGBEAgDUGo2sIAELQICyAEKALwASIIIAVBA3RqQgE3AgAgBCAFQQFqNgL0AQJAIAVFBEBBACEDDAELA0AgCCAFQQFrIgdBAXYiA0EDdGoiBkEEaioCAEMAAAAAXUUEQCAFIQMMAgsgCCAFQQN0aiAGKQIANwIAIAMhBSAHQQFLDQALCyAIIANBA3RqQgE3AgAMAQsgBSoCSCAFKgIAIhqTIRwgBSoCKCAFKgIEIheTIhsgBSoCUCAFKgIIIh2TIhmUIAUqAiwgHZMiFiAFKgJMIBeTIhiUkyAFKgJsIBqTlCAWIByUIAUqAiQgGpMiFiAZlJMgBSoCcCAXk5SSIBYgGJQgGyAclJMgBSoCdCAdk5SSQwAAAABeBEAgBUEkaiIG/QACACEmIAYgBUHIAGoiCP0AAgD9CwIAIAggJv0LAgAgBkEQaiID/QACACEmIAMgCEEQaiIH/QACAP0LAgAgBkEgaiIDKAIAIQYgAyAIQSBqIgMoAgA2AgAgByAm/QsCACADIAY2AgALIARBAjYCgAIgBEKAgICAEDcC+AEgBEECNgKMAiAEQoGAgIAwNwKEAiAEQQM2ApgCIARCgICAgCA3ApACIARBATYCpAIgBEKAgICAMDcCnAIgBEECNgKwAiAEQoOAgIAQNwKoAiAEQQA2ArwCIARCg4CAgCA3ArQCIARBAzYCyAIgBEKAgICAEDcCwAIgBEEANgLUAiAEQoKAgIAQNwLMAiAEQbAGaiIKIAVBBCAEQfgBaiAEQagCahDeAiAEQdgCaiIDQTBqIgggCkEwaiIMKAIANgIAIANBIGoiByAKQSBqIgv9AAIA/QsDACADQRBqIgYgCkEQaiIF/QACAP0LAwAgBCAE/QACsAb9CwPYAiAELQDkBiESIAogBCgCzAEgBCgC0AEgBEGEAmogBEG0AmoQ3gIgBEGQA2oiA0EwaiAMKAIANgIAIANBIGogC/0AAgD9CwMAIANBEGogBf0AAgD9CwMAIAQgBP0AArAG/QsDkAMgBC0A5AYhEyAKIAQoAswBIAQoAtABIARBkAJqIARBwAJqEN4CIARByANqIgNBMGogDCgCADYCACADQSBqIAv9AAIA/QsDACADQRBqIAX9AAIA/QsDACAEIAT9AAKwBv0LA8gDIAQtAOQGIQkgCiAEKALMASAEKALQASAEQZwCaiAEQcwCahDeAiAEQYAEaiIDQTBqIAwoAgA2AgAgA0EgaiAL/QACAP0LAwAgA0EQaiAF/QACAP0LAwAgBCAE/QACsAb9CwOABCAELQDkBiELIAQoAtQBIgMgBCgC3AEiCkYEQCAQQdiMwwAQmwggBCgC1AEhAwsgBCgC2AEiBSAKQTRsaiIMIAT9AAPYAv0LAgAgDEEgaiAH/QADAP0LAgAgDEEQaiAG/QADAP0LAgAgDEEwaiAIKAIANgIAIAQgCkEBaiIGNgLcASADIAZGBEAgEEHojMMAEJsIIAQoAtgBIQUgBCgC1AEhAwsgBSAGQTRsaiIHIAT9AAOQA/0LAgAgB0EgaiAEQZADaiIGQSBq/QADAP0LAgAgB0EQaiAGQRBq/QADAP0LAgAgB0EwaiAGQTBqKAIANgIAIAQgCkECaiIGNgLcASADIAZGBEAgEEH4jMMAEJsIIAQoAtgBIQUgBCgC1AEhAwsgBSAGQTRsaiIHIAT9AAPIA/0LAgAgB0EgaiAEQcgDaiIGQSBq/QADAP0LAgAgB0EQaiAGQRBq/QADAP0LAgAgB0EwaiAGQTBqKAIANgIAIAQgCkEDaiIGNgLcASADIAZGBEAgEEGIjcMAEJsIIAQoAtgBIQULIAUgBkE0bGoiBiAE/QADgAT9CwIAIAZBIGogBEGABGoiA0Egav0AAwD9CwIAIAZBEGogA0EQav0AAwD9CwIAIAZBMGogA0EwaigCADYCACAEIApBBGoiAzYC3AECQCASQQFxRQ0AAkAgAwRAIAQoAtABRQ0BIAUqAhggBCgCzAEiAyoCAJQgBUEcaioCACADQQRqKgIAlJIgBUEgaioCACADQQhqKgIAlJIiFkMAAKC1XQ0HIBaMIRcgBCgC9AEiBSAEKALsAUYEQCANQajawgAQtAgLIAQoAvABIgggBUEDdGoiAyAXOAIEIANBADYCACAEIAVBAWo2AvQBQQAhAwJAIAVFDQADQCAIIAVBAWsiB0EBdiIDQQN0aiIGQQRqKgIAIBddRQRAIAUhAwwCCyAIIAVBA3RqIAYpAgA3AgAgAyEFIAdBAUsNAAsLIAggA0EDdGoiAyAXOAIEIANBADYCAAwCC0EAQQBBmI3DABCFCwALQQBBAEGojcMAEIULAAsCQCATQQFxRQ0AAkAgBCgC3AEiA0ECTwRAIAQoAtABIgNBAU0NASAEKALYASIFKgJMIAQoAswBIgMqAiSUIAVB0ABqKgIAIANBKGoqAgCUkiAFQdQAaioCACADQSxqKgIAlJIiFkMAAKC1XQ0HIBaMIRcgBCgC9AEiBSAEKALsAUYEQCANQajawgAQtAgLIAQoAvABIgggBUEDdGoiAyAXOAIEIANBATYCACAEIAVBAWo2AvQBAkAgBUUEQEEAIQMMAQsDQCAIIAVBAWsiB0EBdiIDQQN0aiIGQQRqKgIAIBddRQRAIAUhAwwCCyAIIAVBA3RqIAYpAgA3AgAgAyEFIAdBAUsNAAsLIAggA0EDdGoiAyAXOAIEIANBATYCAAwCC0EBIANBuI3DABCFCwALQQEgA0HIjcMAEIULAAsCQCAJQQFxRQ0AAkAgBCgC3AEiA0EDTwRAIAQoAtABIgNBAk0NASAEKALYASIFKgKAASAEKALMASIDKgJIlCAFQYQBaioCACADQcwAaioCAJSSIAVBiAFqKgIAIANB0ABqKgIAlJIiFkMAAKC1XQ0HIBaMIRcgBCgC9AEiBSAEKALsAUYEQCANQajawgAQtAgLIAQoAvABIgggBUEDdGoiAyAXOAIEIANBAjYCACAEIAVBAWo2AvQBAkAgBUUEQEEAIQMMAQsDQCAIIAVBAWsiB0EBdiIDQQN0aiIGQQRqKgIAIBddRQRAIAUhAwwCCyAIIAVBA3RqIAYpAgA3AgAgAyEFIAdBAUsNAAsLIAggA0EDdGoiAyAXOAIEIANBAjYCAAwCC0ECIANB2I3DABCFCwALQQIgA0HojcMAEIULAAsCQCALQQFxRQ0AAkAgBCgC3AEiA0EETwRAIAQoAtABIgNBA00NASAEKALYASIFKgK0ASAEKALMASIDKgJslCAFQbgBaioCACADQfAAaioCAJSSIAVBvAFqKgIAIANB9ABqKgIAlJIiFkMAAKC1XQ0HIBaMIRcgBCgC9AEiBSAEKALsAUYEQCANQajawgAQtAgLIAQoAvABIgggBUEDdGoiAyAXOAIEIANBAzYCACAEIAVBAWo2AvQBAkAgBUUEQEEAIQMMAQsDQCAIIAVBAWsiB0EBdiIDQQN0aiIGQQRqKgIAIBddRQRAIAUhAwwCCyAIIAVBA3RqIAYpAgA3AgAgAyEFIAdBAUsNAAsLIAggA0EDdGoiAyAXOAIEIANBAzYCAAwCC0EDIANB+I3DABCFCwALQQMgA0GIjsMAEIULAAsgEkEBcQ0AIBNBAXENACAJQQFxDQAgC0EBcQ0AQfTKxAAoAgBBBEkNBCAEQQA2AsAGIARBATYCtAYgBEHsjsMANgKwBiAEQgQ3ArgGIARB9I7DADYC8AUgBEEZNgLsBSAEQeyLwwA2AugFIARBGTYC5AUgBEHsi8MANgLgBSAEQbAGaiAEQeAFahCQCgwECyAEKAL0AUUNAyAEKALwASgCACEPIARB1AVqIA0QqQQCQCAEKALUBUEBRw0AIARBhAZqIRIgBEH4BWohEyAEQewFaiEJQ///f38hIEEAIQoDQAJAAkACQAJAAkACQAJAAkACQCAEKALYBSIIIAQoAtwBIgNJBEAgBCoC3AUhGiAJIAhBNGwiBiAEKALYAWoiAykCDDcCACATIAMpAhg3AgAgEiADKQIkNwIAIARB6AVqIANBCGooAgA2AgAgCUEIaiADQRRqKAIANgIAIBNBCGogA0EgaigCADYCACASQQhqIANBLGooAgA2AgAgBCADKQIANwPgBSAEIAMtADAiAzoAkAYgAw0IIAQqAvgFIiQgJJQgBCoC/AUiJSAllJIgBCoCgAYiHiAelJKRIRYgBCAkIBaVIhs4AugGIAQgJSAWlSIYOALsBiAEIB4gFpUiFjgC8AYgBEGwBmogASAEQegGahCCBCAfIBaUIAQqArgGkiIZICGTIRwgHyAYlCAEKgK0BpIiGCAikyEdIB8gG5QgBCoCsAaSIhYgI5MhGyAEKALQASIRIAQoAsgBRgRAIARByAFqQbSPwwAQlQgLIAQoAswBIBFBJGxqIgMgITgCICADICI4AhwgAyAjOAIYIAMgGTgCFCADIBg4AhAgAyAWOAIMIAMgHDgCCCADIB04AgQgAyAbOAIAIAQgEUEBaiIFNgLQASAIIA8gJCAblCAlIB2UkiAeIByUkiIWICBdIgMbIQ8gBCgC3AEhByAaIBYgICADGyIgkkMAAEg3XUUEQCAHIAhNDQIgBCgC2AEgBmpBAToAMCAEKALsBSIMIAQoAtwBIgdPDQMgBCgC2AEiAyAMQTRsaiAEKALgBRD+BiEGIAQoAvAFIgsgB08NBCADIAtBNGxqIAQoAuQFEP4GIQUgBCgC9AUiCCAHTw0FIAMgCEE0bGogBCgC6AUQ/gYhAyAEQcgBaiIHIBEgDCAGEMACIAcgESALIAUQwAIgByARIAggAxDAAiAEKALoASIGRQ0QIBqMIRYgBCgC3AEhFCAEKALkASIFQQhqIQMgBSAGQQN0aiELA0AgAyEGAkACQAJAIAQoAtwBIg4gBSgCACIDSwRAIAQoAtgBIANBNGxqIgctADANAyAEIAM2AqQGIAUoAgQhAyAEIBE2AqAGIAQgDkEBazYCrAYgBCAOQQFqNgKoBiAEIAcgA0EBakEDcEECdGooAgA2ApwGIAQgByADQQJqQQNwQQJ0aigCADYCmAYgBEGwBmogBCgCzAEgBCgC0AEgBEGYBmogBEGkBmoQ3gIgByAFKAIEQQFqQQNwQQJ0aiAONgIMIAQoAtwBIgcgBCgC1AFGBEAgEEG0kMMAEJsICyAEKALYASIDIAdBNGxqIgggBP0AArAG/QsCACAIQSBqIARBsAZqIgVBIGr9AAIA/QsCACAIQRBqIAVBEGr9AAIA/QsCACAIQTBqIAVBMGooAgA2AgAgBCAHQQFqIgU2AtwBIAQtAOQGRQ0DIAUgDk0NCyADIA5BNGxqIggoAgAiBSAEKALQASIHTw0MIAQoAswBIgMgBUEkbGoiBSoCACAIKgIYlCAFKgIEIAhBHGoqAgCUkiAFKgIIIAhBIGoqAgCUkiIYIBZdDQ0gGEMAAKC1XSIDDRUgGIwhGCAEKAL0ASIFIAQoAuwBRgRAIA1BqNrCABC0CAsgFyAYIAMbIRcgFSAOIAMbIRUgBCgC8AEiDCAFQQN0aiIDIBg4AgQgAyAONgIAIAQgBUEBajYC9AEgBQ0BQQAhAwwCCyADIA5BpJDDABCFCwALA0AgFyAMIAVBAWsiCEEBdiIDQQN0aiIHQQRqKgIAXkUEQCAFIQMMAgsgDCAFQQN0aiAHKQIANwIAIAMhBSAIQQFLDQALCyAMIANBA3RqIgMgFzgCBCADIBU2AgALIAYgBiALR0EDdGohAyALIAYiBUcNAAsMCgsgByAPSwRAIARBsAZqIgEgBCgC2AEgD0E0bGogBCgCzAEgBRC8ByAEQYgHaiABQQhqKAIANgIAIAQgBCkCsAY3A4AHDA0LIA8gB0HkkMMAEIULAAsgCCADQaSPwwAQhQsACyAIIAdBxI/DABCFCwALIAwgB0HUj8MAEIULAAsgCyAHQeSPwwAQhQsACyAIIAdB9I/DABCFCwALIA4gBUHEkMMAEIULAAsgBSAHQdSQwwAQhQsACyAEQegGaiIBIARB4AVqIAMgBxC8ByAEQYgHaiABQQhqKAIANgIAIAQgBCkC6AY3A4AHDAQLIARB1AVqIA0QqQQgBCgC1AUNAQwCCyAEKALcASIDIBRGDQUgAyAUTQ0DIAQoAtgBIBRBNGxqIANBAWs2AhQgBCgC3AEiA0UNBCAEKALYASADQTRsaiIDQTRGDQQgA0EkayAUNgIAIARBADYC6AEgCkHkAEYNASAEQdQFaiANEKkEIApBAWohCiAEKALUBQ0ACwsgBCgC3AEiASAPSwRAIARBsAZqIgEgBCgC2AEgD0E0bGogBCgCzAEgBCgC0AEQvAcgBEGIB2ogAUEIaigCADYCACAEIAQpArAGNwOABwwBCyAPIAFB9JDDABCFCwALIABBCGogBEGIB2ooAgA2AgAgACAEKQOABzcCACAAQQE6AAwMAwsgFCADQYSQwwAQhQsAC0GUkMMAEPIOAAsgAEEBOgAMIAAgAikCADcCACAAQQhqIAJBCGooAgA2AgALIAQoAsgBIgAEQCAEKALMASAAQSRsQQQQ6A4LIAQoAtQBIgAEQCAEKALYASAAQTRsQQQQ6A4LIAQoAuABIgAEQCAEKALkASAAQQN0QQQQ6A4LIAQoAuwBIgBFDQIgBCgC8AEgAEEDdEEEEOgODAILIARBsAZqIARBARDcAyAEKgK4BiEYIAQqArQGIRkgBCoCsAYLIRcgACAYOAIIIAAgGTgCBCAAIBc4AgAgAEEAOgAMCyAEQcAHaiQAC/8+AxF/E30BeyMAQcAHayIEJAAgBEG4AWpBADYCACAEQgA3A7ABIAT9DAAAAAABAAAAAgAAAAMAAAD9CwQAIARBNGpBAEH4APwLAEMAAIA/IR4gAioCACIZIBmUIAIqAgQiGyAblJIgAioCCCIaIBqUkiIWQwAAgCheBEAgGiAWkSIVlSEXIBkgFZUhHiAbIBWVIRULIARBADYCvAEgBEEANgKsASAEIAEqAggiIiAXIB4gHpQgFSAVlJIgFyAXlJKRIhiVIhaYIBYgASoCDCIdlJIiFjgCJCAEIBo4AjAgBCAWIBqTOAIYIAQgASoCBCIjIBUgGJUiFZggFSAdlJIiFTgCICAEIBs4AiwgBCAVIBuTOAIUIAQgASoCACIkIB4gGJUiFZggFSAdlJIiFTgCHCAEIBk4AiggBCAVIBmTOAIQIBogGUMAAAAAlCIcIBtDAAAAAJQiFpMiFSAVkiIXIBYgGkMAAAAAlCIWkyIVIBWSIhpDAAAAAJQiGCAWIByTIhUgFZIiFUMAAAAAlCIWk5KSIR8gGyAVIBdDAAAAAJQiFSAYk5KSISAgGSAaIBYgFZOSkiEhIARB4AVqIAQQawJAAn0CQAJAAkACQAJAAkACQAJAAn8CQAJAAkACQAJAIAQqAuAFIhUgFZQgBCoC5AUiFSAVlJIgBCoC6AUiFiAWlJJDAAAAAF5FDQBD//9/fyEVQeQAIQECQAJAAkACQANAIAQqAuAFIhcgF5QgBCoC5AUiGiAalJIgBCoC6AUiGCAYlJIiFkMAAMgrXkUNBSAWkSIWIBVgDQQgGIwgFpUiFSAVlCAXjCAWlSIXIBeUIBqMIBaVIhkgGZSSkpEhGCAVICIgFSAYlSIVmCAdIBWUkiIbIB+TIhyUIBcgJCAXIBiVIhWYIB0gFZSSIhcgIZMiGpQgGSAjIBkgGJUiFZggHSAVlJIiGCAgkyIVlJKSIhm8Qf////8HcUGAgID8B08NBiAZQ///f/9dRQRAIBYgGZIgFkO9G486lF8NBCAEIB84AtAGIAQgIDgCzAYgBCAhOALIBiAEIBs4AsQGIAQgGDgCwAYgBCAXOAK8BiAEIBw4ArgGIAQgFTgCtAYgBCAaOAKwBiAEIARBsAZqEOEDRQ0CIARB4AVqIAQQayAEKAK8AUEDRg0DIBYhFSABQQFrIgENAQsLQejawgBBKEGEksMAENYMAAtDAAAAACEXQwAAAAAhGEMAAAAAIAQoArwBIgFBAWoiAkUNERogBCoCsAEiFSAEKgIklEMAAAAAkiEYIBUgBCoCIJRDAAAAAJIhFyAVIAQqAhyUQwAAAACSIhYgAUUNERogGCAEKgK0ASIVIAQqAkiUkiEYIBcgFSAEKgJElJIhFyAWIBUgBCoCQJSSIhYgAkECRg0RGiACQQNHDQUgGCAEKgK4ASIVIAQqAmyUkiEYIBcgFSAEKgJolJIhFyAWIBUgBCoCZJSSDBELIBlDAACgtV9FDQIMDwtDAAAAACEXQwAAAAAhGEMAAAAAIAQoArwBIgFBAWoiAkUNDxogBCoCsAEiFSAEKgIklEMAAAAAkiEYIBUgBCoCIJRDAAAAAJIhFyAVIAQqAhyUQwAAAACSIhYgAUUNDxogGCAEKgK0ASIVIAQqAkiUkiEYIBcgFSAEKgJElJIhFyAWIBUgBCoCQJSSIhYgAkECRg0PGiACQQNHDQQgGCAEKgK4ASIVIAQqAmyUkiEYIBcgFSAEKgJolJIhFyAWIBUgBCoCZJSSDA8LDA0LAkAgA0UEQCAEQoCAgIDAADcC7AEgBEKAgICAwAA3AuABIARCgICAgMAANwLUASAEQoCAgIDAADcCyAEgBEEANgL0ASAEQQA2AtwBIARBADYC0AEgBEEANgLoASAEQewBaiEMIARB1AFqIQ8gBCgCvAEiBkF/RgRAQQQhAUEADAcLIARByAFqIgNBhJHDABCVCCAEKALMASIBIARBEGoiBf0AAgD9CwIAIAFBIGogBUEgaigCADYCACABQRBqIAVBEGr9AAIA/QsCACAEQQE2AtABIAZFDQEgBkECaiEGIARBNGohBSAEKALIAUEBRgRAIANBhJHDABCVCCAEKALMASEBCyABIAX9AAIA/QsCJCABQcQAaiAFQSBqKAIANgIAIAFBNGogBUEQav0AAgD9CwIAIARBAjYC0AEgBkEDRg0FIARB2ABqIQMgBCgCyAFBAkYEQCAEQcgBakGEkcMAEJUIIAQoAswBIQELIAEgA/0AAgD9CwJIIAFB6ABqIANBIGooAgA2AgAgAUHYAGogA0EQav0AAgD9CwIAIARBAzYC0AFBAyAGQQRGDQYaIARB/ABqIQMgBCgCyAFBA0YEQCAEQcgBakGEkcMAEJUIIAQoAswBIQELIAEgA/0AAgD9CwJsIAFBjAFqIANBIGooAgA2AgAgAUH8AGogA0EQav0AAgD9CwIAIARBBDYC0AEgBkEFRg0HQQRBBEGok8MAEIULAAsgAEEBOgAMIAAgAikCADcCACAAQQhqIAJBCGooAgA2AgAMDwsgBEGQB2pCADcDACAE/QwAAAAAAAAAAAAAAAAAAAAA/QsDgAcMBwtBlJLDAEEnQbySwwAQ1gwAC0EDQQNBiJPDABCFCwALQQNBA0GIk8MAEIULAAsgASoCLCABKgIIkyIZQwAAAAAgASoCJCABKgIAkyIbiyABKgIoIAEqAgSTIhyLXiIDGyEWQwAAAAAgGYwgAxshFSAbjCAcIAMbIRcgBCgCyAFBAkYEQCAEQcgBakGUkcMAEJUIIAQoAswBIQELIAEgHzgCaCABICA4AmQgASAhOAJgIAEgIiAcIBYgFyAXlCAVIBWUIBYgFpSSkpEiGpUiFpQgGyAVIBqVIhWUkyIYIBggGJQgGSAVlCAcIBcgGpUiFZSTIhcgF5QgGyAVlCAZIBaUkyIWIBaUkpKRIhqVIhWYIB0gFZSSIhg4AlwgASAjIBYgGpUiFZggHSAVlJIiFjgCWCABICQgFyAalSIVmCAdIBWUkiIVOAJUIAEgGCAfkzgCUCABIBYgIJM4AkwgASAVICGTOAJIIARBAzYC0AFBAwshAyAEQQI2AsAEIARCgICAgBA3ArgEIARBATYCzAQgBEKAgICAIDcCxAQgBEEBNgLYBCAEQoGAgIAQNwLQBCAEQQA2AuQEIARCADcC3AQgBEGwBmoiCCABIAMgBEG4BGogBEHQBGoQ3gIgBEHoBGoiAUEwaiIKIAhBMGoiBygCADYCACABQSBqIgYgCEEgaiID/QACAP0LAwAgAUEQaiIFIAhBEGoiAf0AAgD9CwMAIAQgBP0AArAG/QsD6AQgCCAEKALMASAEKALQASAEQcQEaiAEQdwEahDeAiAEQaAFaiIIQTBqIAcoAgA2AgAgCEEgaiAD/QACAP0LAwAgCEEQaiAB/QACAP0LAwAgBCAE/QACsAb9CwOgBSAEKALUASIDIAQoAtwBIghGBEAgD0GEj8MAEJsIIAQoAtQBIQMLIAQoAtgBIgEgCEE0bGoiByAE/QAD6AT9CwIAIAdBIGogBv0AAwD9CwIAIAdBEGogBf0AAwD9CwIAIAdBMGogCigCADYCACAEIAhBAWoiBTYC3AEgAyAFRgRAIA9BlI/DABCbCCAEKALYASEBCyABIAVBNGxqIgMgBP0AA6AF/QsCACADQSBqIARBoAVqIgFBIGr9AAMA/QsCACADQRBqIAFBEGr9AAMA/QsCACADQTBqIAFBMGooAgA2AgAgBCAIQQJqNgLcASAEKAL0ASIBIAQoAuwBRgRAIAxBqNrCABC0CAsgBCgC8AEiByABQQN0akIANwIAIAQgAUEBajYC9AECQCABRQRAQQAhAwwBCwNAIAcgAUEBayIGQQF2IgNBA3RqIgVBBGoqAgBDAAAAAF1FBEAgASEDDAILIAcgAUEDdGogBSkCADcCACADIQEgBkEBSw0ACwsgByADQQN0akIANwIAIAQoAvQBIgEgBCgC7AFGBEAgDEGo2sIAELQICyAEKALwASIHIAFBA3RqQgE3AgAgBCABQQFqNgL0AQJAIAFFBEBBACEDDAELA0AgByABQQFrIgZBAXYiA0EDdGoiBUEEaioCAEMAAAAAXUUEQCABIQMMAgsgByABQQN0aiAFKQIANwIAIAMhASAGQQFLDQALCyAHIANBA3RqQgE3AgAMAQsgASoCSCABKgIAIhmTIRsgASoCKCABKgIEIhaTIhcgASoCUCABKgIIIhyTIhqUIAEqAiwgHJMiFSABKgJMIBaTIhiUkyABKgJsIBmTlCAVIBuUIAEqAiQgGZMiFSAalJMgASoCcCAWk5SSIBUgGJQgFyAblJMgASoCdCAck5SSQwAAAABeBEAgAUEkaiIF/QACACEoIAUgAUHIAGoiB/0AAgD9CwIAIAcgKP0LAgAgBUEQaiID/QACACEoIAMgB0EQaiIG/QACAP0LAgAgBUEgaiIDKAIAIQUgAyAHQSBqIgMoAgA2AgAgBiAo/QsCACADIAU2AgALIARBAjYCgAIgBEKAgICAEDcC+AEgBEECNgKMAiAEQoGAgIAwNwKEAiAEQQM2ApgCIARCgICAgCA3ApACIARBATYCpAIgBEKAgICAMDcCnAIgBEECNgKwAiAEQoOAgIAQNwKoAiAEQQA2ArwCIARCg4CAgCA3ArQCIARBAzYCyAIgBEKAgICAEDcCwAIgBEEANgLUAiAEQoKAgIAQNwLMAiAEQbAGaiIJIAFBBCAEQfgBaiAEQagCahDeAiAEQdgCaiIBQTBqIgcgCUEwaiILKAIANgIAIAFBIGoiBiAJQSBqIgr9AAIA/QsDACABQRBqIgUgCUEQaiID/QACAP0LAwAgBCAE/QACsAb9CwPYAiAELQDkBiERIAkgBCgCzAEgBCgC0AEgBEGEAmogBEG0AmoQ3gIgBEGQA2oiAUEwaiALKAIANgIAIAFBIGogCv0AAgD9CwMAIAFBEGogA/0AAgD9CwMAIAQgBP0AArAG/QsDkAMgBC0A5AYhEiAJIAQoAswBIAQoAtABIARBkAJqIARBwAJqEN4CIARByANqIgFBMGogCygCADYCACABQSBqIAr9AAIA/QsDACABQRBqIAP9AAIA/QsDACAEIAT9AAKwBv0LA8gDIAQtAOQGIQggCSAEKALMASAEKALQASAEQZwCaiAEQcwCahDeAiAEQYAEaiIBQTBqIAsoAgA2AgAgAUEgaiAK/QACAP0LAwAgAUEQaiAD/QACAP0LAwAgBCAE/QACsAb9CwOABCAELQDkBiEKIAQoAtQBIgMgBCgC3AEiCUYEQCAPQdiMwwAQmwggBCgC1AEhAwsgBCgC2AEiASAJQTRsaiILIAT9AAPYAv0LAgAgC0EgaiAG/QADAP0LAgAgC0EQaiAF/QADAP0LAgAgC0EwaiAHKAIANgIAIAQgCUEBaiIFNgLcASADIAVGBEAgD0HojMMAEJsIIAQoAtQBIQMgBCgC2AEhAQsgASAFQTRsaiIGIAT9AAOQA/0LAgAgBkEgaiAEQZADaiIFQSBq/QADAP0LAgAgBkEQaiAFQRBq/QADAP0LAgAgBkEwaiAFQTBqKAIANgIAIAQgCUECaiIFNgLcASADIAVGBEAgD0H4jMMAEJsIIAQoAtQBIQMgBCgC2AEhAQsgASAFQTRsaiIGIAT9AAPIA/0LAgAgBkEgaiAEQcgDaiIFQSBq/QADAP0LAgAgBkEQaiAFQRBq/QADAP0LAgAgBkEwaiAFQTBqKAIANgIAIAQgCUEDaiIFNgLcASADIAVGBEAgD0GIjcMAEJsIIAQoAtgBIQELIAEgBUE0bGoiBSAE/QADgAT9CwIAIAVBIGogBEGABGoiA0Egav0AAwD9CwIAIAVBEGogA0EQav0AAwD9CwIAIAVBMGogA0EwaigCADYCACAEIAlBBGoiAzYC3AECQCARQQFxRQ0AAkAgAwRAIAQoAtABRQ0BIAEqAhggBCgCzAEiAyoCAJQgAUEcaioCACADQQRqKgIAlJIgAUEgaioCACADQQhqKgIAlJIiFUMAAKC1XQ0HIBWMIRYgBCgC9AEiASAEKALsAUYEQCAMQajawgAQtAgLIAQoAvABIgcgAUEDdGoiAyAWOAIEIANBADYCACAEIAFBAWo2AvQBQQAhAwJAIAFFDQADQCAHIAFBAWsiBkEBdiIDQQN0aiIFQQRqKgIAIBZdRQRAIAEhAwwCCyAHIAFBA3RqIAUpAgA3AgAgAyEBIAZBAUsNAAsLIAcgA0EDdGoiASAWOAIEIAFBADYCAAwCC0EAQQBBmI3DABCFCwALQQBBAEGojcMAEIULAAsCQCASQQFxRQ0AAkAgBCgC3AEiAUECTwRAIAQoAtABIgFBAU0NASAEKALYASIDKgJMIAQoAswBIgEqAiSUIANB0ABqKgIAIAFBKGoqAgCUkiADQdQAaioCACABQSxqKgIAlJIiFUMAAKC1XQ0HIBWMIRYgBCgC9AEiASAEKALsAUYEQCAMQajawgAQtAgLIAQoAvABIgcgAUEDdGoiAyAWOAIEIANBATYCACAEIAFBAWo2AvQBAkAgAUUEQEEAIQMMAQsDQCAHIAFBAWsiBkEBdiIDQQN0aiIFQQRqKgIAIBZdRQRAIAEhAwwCCyAHIAFBA3RqIAUpAgA3AgAgAyEBIAZBAUsNAAsLIAcgA0EDdGoiASAWOAIEIAFBATYCAAwCC0EBIAFBuI3DABCFCwALQQEgAUHIjcMAEIULAAsCQCAIQQFxRQ0AAkAgBCgC3AEiAUEDTwRAIAQoAtABIgFBAk0NASAEKALYASIDKgKAASAEKALMASIBKgJIlCADQYQBaioCACABQcwAaioCAJSSIANBiAFqKgIAIAFB0ABqKgIAlJIiFUMAAKC1XQ0HIBWMIRYgBCgC9AEiASAEKALsAUYEQCAMQajawgAQtAgLIAQoAvABIgcgAUEDdGoiAyAWOAIEIANBAjYCACAEIAFBAWo2AvQBAkAgAUUEQEEAIQMMAQsDQCAHIAFBAWsiBkEBdiIDQQN0aiIFQQRqKgIAIBZdRQRAIAEhAwwCCyAHIAFBA3RqIAUpAgA3AgAgAyEBIAZBAUsNAAsLIAcgA0EDdGoiASAWOAIEIAFBAjYCAAwCC0ECIAFB2I3DABCFCwALQQIgAUHojcMAEIULAAsCQCAKQQFxRQ0AAkAgBCgC3AEiAUEETwRAIAQoAtABIgFBA00NASAEKALYASIDKgK0ASAEKALMASIBKgJslCADQbgBaioCACABQfAAaioCAJSSIANBvAFqKgIAIAFB9ABqKgIAlJIiFUMAAKC1XQ0HIBWMIRYgBCgC9AEiASAEKALsAUYEQCAMQajawgAQtAgLIAQoAvABIgcgAUEDdGoiAyAWOAIEIANBAzYCACAEIAFBAWo2AvQBAkAgAUUEQEEAIQMMAQsDQCAHIAFBAWsiBkEBdiIDQQN0aiIFQQRqKgIAIBZdRQRAIAEhAwwCCyAHIAFBA3RqIAUpAgA3AgAgAyEBIAZBAUsNAAsLIAcgA0EDdGoiASAWOAIEIAFBAzYCAAwCC0EDIAFB+I3DABCFCwALQQMgAUGIjsMAEIULAAsgEUEBcQ0AIBJBAXENACAIQQFxDQAgCkEBcQ0AQfTKxAAoAgBBBEkNBCAEQQA2AsAGIARBATYCtAYgBEHsjsMANgKwBiAEQgQ3ArgGIARB9I7DADYC8AUgBEEZNgLsBSAEQeyLwwA2AugFIARBGTYC5AUgBEHsi8MANgLgBSAEQbAGaiAEQeAFahCQCgwECyAEKAL0AUUNAyAEKALwASgCACEOIARB1AVqIAwQqQQCQCAEKALUBUEBRw0AIARBhAZqIREgBEH4BWohEiAEQewFaiEIQ///f38hHkEAIQkDQAJAAkACQAJAAkACQAJAAkACQCAEKALYBSIHIAQoAtwBIgFJBEAgBCoC3AUhGSAIIAdBNGwiBSAEKALYAWoiASkCDDcCACASIAEpAhg3AgAgESABKQIkNwIAIARB6AVqIAFBCGooAgA2AgAgCEEIaiABQRRqKAIANgIAIBJBCGogAUEgaigCADYCACARQQhqIAFBLGooAgA2AgAgBCABKQIANwPgBSAEIAEtADAiAToAkAYgAQ0IIAQqAvgFIiUgJZQgBCoC/AUiJiAmlJIgBCoCgAYiJyAnlJKRIRcgIiAnIBeVIhWYIB0gFZSSIhogH5MhGyAjICYgF5UiFZggHSAVlJIiGCAgkyEcICQgJSAXlSIVmCAdIBWUkiIVICGTIRcgBCgC0AEiECAEKALIAUYEQCAEQcgBakG0j8MAEJUICyAEKALMASAQQSRsaiIBIB84AiAgASAgOAIcIAEgITgCGCABIBo4AhQgASAYOAIQIAEgFTgCDCABIBs4AgggASAcOAIEIAEgFzgCACAEIBBBAWoiAzYC0AEgByAOICcgG5QgJSAXlCAmIByUkpIiFSAeXSIBGyEOIAQoAtwBIQYgGSAVIB4gARsiHpJDAABIN11FBEAgBiAHTQ0CIAQoAtgBIAVqQQE6ADAgBCgC7AUiCyAEKALcASIGTw0DIAQoAtgBIgEgC0E0bGogBCgC4AUQ/gYhBSAEKALwBSIKIAZPDQQgASAKQTRsaiAEKALkBRD+BiEDIAQoAvQFIgcgBk8NBSABIAdBNGxqIAQoAugFEP4GIQEgBEHIAWoiBiAQIAsgBRDAAiAGIBAgCiADEMACIAYgECAHIAEQwAIgBCgC6AEiBUUNECAZjCEVIAQoAtwBIRMgBCgC5AEiAUEIaiEDIAEgBUEDdGohCgNAIAMhBQJAAkACQCAEKALcASINIAEoAgAiA0sEQCAEKALYASADQTRsaiIGLQAwDQMgBCADNgKkBiABKAIEIQMgBCAQNgKgBiAEIA1BAWs2AqwGIAQgDUEBajYCqAYgBCAGIANBAWpBA3BBAnRqKAIANgKcBiAEIAYgA0ECakEDcEECdGooAgA2ApgGIARBsAZqIAQoAswBIAQoAtABIARBmAZqIARBpAZqEN4CIAYgASgCBEEBakEDcEECdGogDTYCDCAEKALcASIGIAQoAtQBRgRAIA9BtJDDABCbCAsgBCgC2AEiASAGQTRsaiIHIAT9AAKwBv0LAgAgB0EgaiAEQbAGaiIDQSBq/QACAP0LAgAgB0EQaiADQRBq/QACAP0LAgAgB0EwaiADQTBqKAIANgIAIAQgBkEBaiIDNgLcASAELQDkBkUNAyADIA1NDQsgASANQTRsaiIHKAIAIgEgBCgC0AEiBk8NDCAEKALMASIDIAFBJGxqIgEqAgAgByoCGJQgASoCBCAHQRxqKgIAlJIgASoCCCAHQSBqKgIAlJIiGCAVXQ0NIBhDAACgtV0iAw0VIBiMIRggBCgC9AEiASAEKALsAUYEQCAMQajawgAQtAgLIBYgGCADGyEWIBQgDSADGyEUIAQoAvABIgsgAUEDdGoiAyAYOAIEIAMgDTYCACAEIAFBAWo2AvQBIAENAUEAIQMMAgsgAyANQaSQwwAQhQsACwNAIBYgCyABQQFrIgdBAXYiA0EDdGoiBkEEaioCAF5FBEAgASEDDAILIAsgAUEDdGogBikCADcCACADIQEgB0EBSw0ACwsgCyADQQN0aiIBIBY4AgQgASAUNgIACyAFIAUgCkdBA3RqIQMgCiAFIgFHDQALDAoLIAYgDksEQCAEQbAGaiIBIAQoAtgBIA5BNGxqIAQoAswBIAMQvAcgBEGIB2ogAUEIaigCADYCACAEIAQpArAGNwOABwwNCyAOIAZB5JDDABCFCwALIAcgAUGkj8MAEIULAAsgByAGQcSPwwAQhQsACyALIAZB1I/DABCFCwALIAogBkHkj8MAEIULAAsgByAGQfSPwwAQhQsACyANIANBxJDDABCFCwALIAEgBkHUkMMAEIULAAsgBEHoBmoiASAEQeAFaiADIAYQvAcgBEGIB2ogAUEIaigCADYCACAEIAQpAugGNwOABwwECyAEQdQFaiAMEKkEIAQoAtQFDQEMAgsgBCgC3AEiASATRg0FIAEgE00NAyAEKALYASATQTRsaiABQQFrNgIUIAQoAtwBIgFFDQQgBCgC2AEgAUE0bGoiAUE0Rg0EIAFBJGsgEzYCACAEQQA2AugBIAlB5ABGDQEgBEHUBWogDBCpBCAJQQFqIQkgBCgC1AUNAAsLIAQoAtwBIgEgDksEQCAEQbAGaiIBIAQoAtgBIA5BNGxqIAQoAswBIAQoAtABELwHIARBiAdqIAFBCGooAgA2AgAgBCAEKQKwBjcDgAcMAQsgDiABQfSQwwAQhQsACyAAQQhqIARBiAdqKAIANgIAIAAgBCkDgAc3AgAgAEEBOgAMDAMLIBMgAUGEkMMAEIULAAtBlJDDABDyDgALIABBAToADCAAIAIpAgA3AgAgAEEIaiACQQhqKAIANgIACyAEKALIASIABEAgBCgCzAEgAEEkbEEEEOgOCyAEKALUASIABEAgBCgC2AEgAEE0bEEEEOgOCyAEKALgASIABEAgBCgC5AEgAEEDdEEEEOgOCyAEKALsASIARQ0CIAQoAvABIABBA3RBBBDoDgwCCyAEQbAGaiAEQQEQ3AMgBCoCuAYhGCAEKgK0BiEXIAQqArAGCyEWIAAgGDgCCCAAIBc4AgQgACAWOAIAIABBADoADAsgBEHAB2okAAuePgQTfw99AXsCfiMAQZAIayIHJAAgB/0MAAAAAAAAAAAAAAAAAAAAAP0LBLABIAf9DAAAAAABAAAAAgAAAAMAAAD9CwQAIAdBEGoiCUEAQaAB/AsAAn0gASoCECIlICWUIAEqAhQiJiAmlJIgASoCGCInICeUkiIbQwAAgCheRQRAQwAAgD8hHUMAAAAAIRtDAAAAAAwBCyAnIBuRIhqVIRsgJSAalSEdICYgGpULIRogByAbOALUASAHIBo4AtABIAcgHTgCzAEgB0HYBWoiCCACIAdBzAFqIAMRAQAgByAHKgLUAYw4ApAHIAcgByoC0AGMOAKMByAHIAcqAswBjDgCiAcgB0GYBmoiCiAEIAEgB0GIB2ogBRECACAHQSRqIAhBCGoiECgCADYCACAHQTBqIApBCGoiCigCADYCACAHIAcpAtgFNwIcIAcgBykCmAY3AyhBACEIIAdBADYCvAEgB0EANgKsASAHKgLYBSEbIAcqApgGIRogByoC3AUhHCAHKgKcBiEdIAcgECoCACAKKgIAkzgCGCAHIBwgHZM4AhQgByAbIBqTOAIQIAdB2AFqIAEgAiADIAQgBSAGQQEgBxDLAQJAAkACQAJAAkACQAJAAkACQAJAIAcoAtgBIgpFBEAgB0KAgICAwAA3AqQCIAdCgICAgMAANwKYAiAHQoCAgIDAADcCjAIgB0KAgICAwAA3AoACIAdBADYCrAIgB0EANgKUAiAHQQA2AogCIAdBADYCoAIgB0GkAmohECAHQYwCaiETIAcoArwBIghBf0YEQEEEIQhBACEJDAMLIAdBgAJqQYSRwwAQlQggBygChAIiCiAJ/QACAP0LAgAgCkEgaiAJQSBqKAIANgIAIApBEGogCUEQav0AAgD9CwIAIAdBATYCiAIgCEUEQEMAAIA/IRpDAAAAACEGQwAAAAAhHUMAAAAAIRtDAAAAACEcDAYLIAhBAmohCiAHQTRqIQkgBygCgAJBAUYEQCAHQYACakGEkcMAEJUICyAHKAKEAiIIIAn9AAIA/QsCJCAIQTRqIAlBEGr9AAIA/QsCACAIQcQAaiAJQSBqKAIANgIAIAdBAjYCiAIgCkEDRg0BIAdB2ABqIQkgBygCgAJBAkYEQCAHQYACakGEkcMAEJUIIAcoAoQCIQgLIAggCf0AAgD9CwJIIAhB6ABqIAlBIGooAgA2AgAgCEHYAGogCUEQav0AAgD9CwIAQQMhCSAHQQM2AogCIApBBEYNAiAHQfwAaiEJIAcoAoACQQNGBEAgB0GAAmpBhJHDABCVCCAHKAKEAiEICyAIIAn9AAIA/QsCbCAIQYwBaiAJQSBqKAIANgIAIAhB/ABqIAlBEGr9AAIA/QsCACAHQQQ2AogCIApBBUYNA0EEQQRBqJPDABCFCwALIAcqAvwBIRsgByoC+AEhGiAHKgL0ASEcIAcqAvABIR8gByoC7AEhISAHKgLoASEiIAcqAuQBIQYgByoC4AEhHiAHKgLcASEdAkAgCkECaw4CAAoGC0Ho2sIAQShB7PbCABDWDAALQwAAAAAgCCoCLCAIKgIIkyIGjCAIKgIkIAgqAgCTIhuLIAgqAiggCCoCBJMiGoteIggbIhwgG4wgGiAIGyIdIB2UIBwgHJQgBkMAAAAAIAgbIhwgHJSSkpEiHpUhICAHIAYgIJQgGiAdIB6VIh2UkyIfOAKACCAHIBsgHZQgBiAcIB6VIgaUkyIcOAKECCAHIBogBpQgGyAglJMiBjgCiAggB0HAB2ogAiAHQYAIaiADEQEAIAcgBow4ApAHIAcgHIw4AowHIAcgH4w4AogHIAdBmAZqIAQgASAHQYgHaiAFEQIAIAcqAqAGIQYgByoCnAYhGyAHKgKYBiEaIAcqAsgHIRwgByoCxAchHSAHKgLAByEeIAcoAogCIgkgBygCgAJGBEAgB0GAAmpBlJHDABCVCAsgBygChAIgCUEkbGoiCCAcIAaTOAIIIAggHSAbkzgCBCAIIB4gGpM4AgAgCCAHKQLABzcCDCAIIAcpApgGNwIYIAhBFGogB0HIB2ooAgA2AgAgCEEgaiAHQaAGaigCADYCACAHIAlBAWoiCTYCiAIgBygChAIhCAsgB0ECNgL4BCAHQoCAgIAQNwLwBCAHQQE2AoQFIAdCgICAgCA3AvwEIAdBATYCkAUgB0KBgICAEDcCiAUgB0EANgKcBSAHQgA3ApQFIAdBiAdqIgogCCAJIAdB8ARqIAdBiAVqEN4CIAdBoAVqIghBMGoiDiAKQTBqIgkoAgA2AgAgCEEgaiINIApBIGoiC/0AAgD9CwMAIAhBEGoiESAKQRBqIhL9AAIA/QsDACAHIAf9AAKIB/0LA6AFIAogBygChAIgBygCiAIgB0H8BGogB0GUBWoQ3gIgB0HYBWoiCEEwaiAJKAIANgIAIAhBIGogC/0AAgD9CwMAIAhBEGogEv0AAgD9CwMAIAcgB/0AAogH/QsD2AUgBygCjAIiCSAHKAKUAiIKRgRAIBNBhI/DABCbCCAHKAKMAiEJCyAHKAKQAiIIIApBNGxqIgsgB/0AA6AF/QsCACALQSBqIA39AAMA/QsCACALQRBqIBH9AAMA/QsCACALQTBqIA4oAgA2AgAgByAKQQFqIgs2ApQCIAkgC0YEQCATQZSPwwAQmwggBygCkAIhCAsgCCALQTRsaiIIIAf9AAPYBf0LAgAgCEEgaiAHQdgFaiIJQSBq/QADAP0LAgAgCEEQaiAJQRBq/QADAP0LAgAgCEEwaiAJQTBqKAIANgIAIAcgCkECajYClAIgBygCrAIiCCAHKAKkAkYEQCAQQajawgAQtAgLIAcoAqgCIgogCEEDdGpCADcCACAHIAhBAWo2AqwCAkAgCEUEQEEAIQkMAQsDQCAKIAhBAWsiC0EBdiIJQQN0aiIOQQRqKgIAQwAAAABdRQRAIAghCQwCCyAKIAhBA3RqIA4pAgA3AgAgCSEIIAtBAUsNAAsLIAogCUEDdGpCADcCACAHKAKsAiIIIAcoAqQCRgRAIBBBqNrCABC0CAsgBygCqAIiCiAIQQN0akIBNwIAIAcgCEEBajYCrAICQCAIRQRAQQAhCQwBCwNAIAogCEEBayILQQF2IglBA3RqIg5BBGoqAgBDAAAAAF1FBEAgCCEJDAILIAogCEEDdGogDikCADcCACAJIQggC0EBSw0ACwsgCiAJQQN0akIBNwIADAELIAgqAkggCCoCACIbkyEaIAgqAiggCCoCBCIGkyIdIAgqAlAgCCoCCCIckyIelCAIKgIsIByTIiAgCCoCTCAGkyIflJMgCCoCbCAbk5QgICAalCAIKgIkIBuTIhsgHpSTIAgqAnAgBpOUkiAbIB+UIB0gGpSTIAgqAnQgHJOUkkMAAAAAXgRAIAhBJGoiCf0AAgAhKSAJIAhByABqIgr9AAIA/QsCACAKICn9CwIAIAlBEGoiC/0AAgAhKSALIApBEGoiC/0AAgD9CwIAIAlBIGoiCSgCACEOIAkgCkEgaiIJKAIANgIAIAsgKf0LAgAgCSAONgIACyAHQQI2ArgCIAdCgICAgBA3ArACIAdBAjYCxAIgB0KBgICAMDcCvAIgB0EDNgLQAiAHQoCAgIAgNwLIAiAHQQE2AtwCIAdCgICAgDA3AtQCIAdBAjYC6AIgB0KDgICAEDcC4AIgB0EANgL0AiAHQoOAgIAgNwLsAiAHQQM2AoADIAdCgICAgBA3AvgCIAdBADYCjAMgB0KCgICAEDcChAMgB0GIB2oiCSAIQQQgB0GwAmogB0HgAmoQ3gIgB0GQA2oiC0EwaiIMIAlBMGoiCCgCADYCACALQSBqIg8gCUEgaiIK/QACAP0LAwAgC0EQaiIVIAlBEGoiC/0AAgD9CwMAIAcgB/0AAogH/QsDkAMgBy0AvAchDiAJIAcoAoQCIAcoAogCIAdBvAJqIAdB7AJqEN4CIAdByANqIg1BMGogCCgCADYCACANQSBqIAr9AAIA/QsDACANQRBqIAv9AAIA/QsDACAHIAf9AAKIB/0LA8gDIActALwHIQ0gCSAHKAKEAiAHKAKIAiAHQcgCaiAHQfgCahDeAiAHQYAEaiIRQTBqIAgoAgA2AgAgEUEgaiAK/QACAP0LAwAgEUEQaiAL/QACAP0LAwAgByAH/QACiAf9CwOABCAHLQC8ByERIAkgBygChAIgBygCiAIgB0HUAmogB0GEA2oQ3gIgB0G4BGoiCUEwaiAIKAIANgIAIAlBIGogCv0AAgD9CwMAIAlBEGogC/0AAgD9CwMAIAcgB/0AAogH/QsDuAQgBy0AvAchEiAHKAKMAiIJIAcoApQCIgpGBEAgE0HYjMMAEJsIIAcoAowCIQkLIAcoApACIgggCkE0bGoiCyAH/QADkAP9CwIAIAtBIGogD/0AAwD9CwIAIAtBEGogFf0AAwD9CwIAIAtBMGogDCgCADYCACAHIApBAWoiCzYClAIgCSALRgRAIBNB6IzDABCbCCAHKAKMAiEJIAcoApACIQgLIAggC0E0bGoiCyAH/QADyAP9CwIAIAtBIGogB0HIA2oiDEEgav0AAwD9CwIAIAtBEGogDEEQav0AAwD9CwIAIAtBMGogDEEwaigCADYCACAHIApBAmoiCzYClAIgCSALRgRAIBNB+IzDABCbCCAHKAKMAiEJIAcoApACIQgLIAggC0E0bGoiCyAH/QADgAT9CwIAIAtBIGogB0GABGoiDEEgav0AAwD9CwIAIAtBEGogDEEQav0AAwD9CwIAIAtBMGogDEEwaigCADYCACAHIApBA2oiCzYClAIgCSALRgRAIBNBiI3DABCbCCAHKAKQAiEICyAIIAtBNGxqIgkgB/0AA7gE/QsCACAJQSBqIAdBuARqIgtBIGr9AAMA/QsCACAJQRBqIAtBEGr9AAMA/QsCACAJQTBqIAtBMGooAgA2AgAgByAKQQRqIgk2ApQCAkAgDkEBcUUNAAJAIAkEQCAHKAKIAkUNASAIKgIYIAcoAoQCIgkqAgCUIAhBHGoqAgAgCUEEaioCAJSSIAhBIGoqAgAgCUEIaioCAJSSIgZDAACgtV0NCCAGjCEGIAcoAqwCIgggBygCpAJGBEAgEEGo2sIAELQICyAHKAKoAiIKIAhBA3RqIgkgBjgCBCAJQQA2AgAgByAIQQFqNgKsAkEAIQkCQCAIRQ0AA0AgCiAIQQFrIgtBAXYiCUEDdGoiDEEEaioCACAGXUUEQCAIIQkMAgsgCiAIQQN0aiAMKQIANwIAIAkhCCALQQFLDQALCyAKIAlBA3RqIgggBjgCBCAIQQA2AgAMAgtBAEEAQZiNwwAQhQsAC0EAQQBBqI3DABCFCwALAkAgDUEBcUUNAAJAIAcoApQCIghBAk8EQCAHKAKIAiIIQQFNDQEgBygCkAIiCCoCTCAHKAKEAiIJKgIklCAIQdAAaioCACAJQShqKgIAlJIgCEHUAGoqAgAgCUEsaioCAJSSIgZDAACgtV0NCCAGjCEGIAcoAqwCIgggBygCpAJGBEAgEEGo2sIAELQICyAHKAKoAiIKIAhBA3RqIgkgBjgCBCAJQQE2AgAgByAIQQFqNgKsAgJAIAhFBEBBACEJDAELA0AgCiAIQQFrIgtBAXYiCUEDdGoiDEEEaioCACAGXUUEQCAIIQkMAgsgCiAIQQN0aiAMKQIANwIAIAkhCCALQQFLDQALCyAKIAlBA3RqIgggBjgCBCAIQQE2AgAMAgtBASAIQbiNwwAQhQsAC0EBIAhByI3DABCFCwALAkAgEUEBcUUNAAJAIAcoApQCIghBA08EQCAHKAKIAiIIQQJNDQEgBygCkAIiCCoCgAEgBygChAIiCSoCSJQgCEGEAWoqAgAgCUHMAGoqAgCUkiAIQYgBaioCACAJQdAAaioCAJSSIgZDAACgtV0NCCAGjCEGIAcoAqwCIgggBygCpAJGBEAgEEGo2sIAELQICyAHKAKoAiIKIAhBA3RqIgkgBjgCBCAJQQI2AgAgByAIQQFqNgKsAgJAIAhFBEBBACEJDAELA0AgCiAIQQFrIgtBAXYiCUEDdGoiDEEEaioCACAGXUUEQCAIIQkMAgsgCiAIQQN0aiAMKQIANwIAIAkhCCALQQFLDQALCyAKIAlBA3RqIgggBjgCBCAIQQI2AgAMAgtBAiAIQdiNwwAQhQsAC0ECIAhB6I3DABCFCwALAkAgEkEBcUUNAAJAIAcoApQCIghBBE8EQCAHKAKIAiIIQQNNDQEgBygCkAIiCCoCtAEgBygChAIiCSoCbJQgCEG4AWoqAgAgCUHwAGoqAgCUkiAIQbwBaioCACAJQfQAaioCAJSSIgZDAACgtV0NCCAGjCEGIAcoAqwCIgggBygCpAJGBEAgEEGo2sIAELQICyAHKAKoAiIKIAhBA3RqIgkgBjgCBCAJQQM2AgAgByAIQQFqNgKsAgJAIAhFBEBBACEJDAELA0AgCiAIQQFrIgtBAXYiCUEDdGoiDEEEaioCACAGXUUEQCAIIQkMAgsgCiAIQQN0aiAMKQIANwIAIAkhCCALQQFLDQALCyAKIAlBA3RqIgggBjgCBCAIQQM2AgAMAgtBAyAIQfiNwwAQhQsAC0EDIAhBiI7DABCFCwALIA5BAXENACANQQFxDQAgEUEBcQ0AIBJBAXENAEH0ysQAKAIAQQRJDQUgB0EANgKYByAHQQE2AowHIAdB7I7DADYCiAcgB0IENwKQByAHQfSOwwA2AqgGIAdBGTYCpAYgB0Hsi8MANgKgBiAHQRk2ApwGIAdB7IvDADYCmAYgB0GIB2ogB0GYBmoQkAoMBQsgBygCrAJFDQQgBygCqAIoAgAhCyAHQYwGaiAQEKkEAkACfQJAIAcoAowGQQFHDQAgB0G8BmohFSAHQbAGaiERIAdBpAZqIRdD//9/fyEbQQAhEgNAAkACQAJAAkACQAJAAkACQCAHKAKQBiIJIAcoApQCIghJBEAgByoClAYhGiAHQYAIaiIMQQhqIgogCUE0bCIPIAcoApACaiIIQRRqKAIANgIAIAcgCCkCDDcDgAggB0HAB2oiFkEIaiIOIAhBIGooAgA2AgAgByAIKQIYNwPAByAHQYgHaiIUQQhqIhkgCEEsaigCADYCACAILQAwIQ0gCCkCACEqIAgpAiQhKyAHQaAGaiAIQQhqKAIANgIAIAcgKzcDiAcgByAqNwOYBiAXQQhqIAooAgA2AgAgFyAHKQOACDcCACARQQhqIA4oAgA2AgAgESAHKQPABzcCACAVQQhqIBkoAgA2AgAgFSAHKQOIBzcCACAHIA06AMgGIA0NByAMIAIgESADEQEAIAcgByoCuAaMOAKQByAHIAcqArQGjDgCjAcgByAHKgKwBow4AogHIBYgBCABIBQgBRECACAHQegGaiINIAooAgA2AgAgB0HYBmoiDCAOKAIANgIAIAcgBykCgAg3A+AGIAcgBykCwAc3A9AGIAoqAgAgDioCAJMhHCAHKgKECCAHKgLEB5MhHSAHKgKACCAHKgLAB5MhHiAHKAKIAiIOIAcoAoACRgRAIAdBgAJqQbSPwwAQlQgLIAcoAoQCIA5BJGxqIgggHDgCCCAIIB04AgQgCCAeOAIAIAggBykD4AY3AgwgCCAHKQPQBjcCGCAIQRRqIA0oAgA2AgAgCEEgaiAMKAIANgIAIAcgDkEBaiIKNgKIAiAJIAsgHiAHKgKwBpQgHSAHKgK0BpSSIBwgByoCuAaUkiIcIBtdIg0bIQsgBygClAIhCAJAIBogHCAbIA0bIhuSQwAASDddRQRAIAggCU0NAyAHKAKQAiAPakEBOgAwIAcoAqQGIgggBygClAIiCU8NBCAHKAKQAiAIQTRsaiAHKAKYBhD+BiEJIAcoAqgGIgggBygClAIiCk8NBSAHKAKQAiAIQTRsaiAHKAKcBhD+BiEKIAcoAqwGIgggBygClAIiDU8NBiAHKAKQAiAIQTRsaiAHKAKgBhD+BiENIAdBgAJqIgggDiAHKAKkBiAJEMACIAggDiAHKAKoBiAKEMACIAggDiAHKAKsBiANEMACIAcoAqACIgpFDRMgGowhHCAHKAKUAiENIAcoApwCIghBCGohCSAIIApBA3RqIRYDQCAJIQoCQAJAAkAgCCgCACIMIAcoApQCIglJBEAgBygCkAIgDEE0bGoiDy0AMA0DIAcgDDYC/AYgCCgCBCEMIAcgDjYC+AYgByAJQQFrNgKEByAHIAlBAWo2AoAHIAcgDyAMQQFqQQNwQQJ0aigCADYC9AYgByAPIAxBAmpBA3BBAnRqKAIANgLwBiAHQYgHaiAHKAKEAiAHKAKIAiAHQfAGaiAHQfwGahDeAiAPIAgoAgRBAWpBA3BBAnRqIAk2AgwgBygClAIiDCAHKAKMAkYEQCATQbSQwwAQmwgLIAcoApACIhQgDEE0bGoiCCAH/QACiAf9CwIAIAhBIGogB0GIB2oiD0Egav0AAgD9CwIAIAhBEGogD0EQav0AAgD9CwIAIAhBMGogD0EwaigCADYCACAHIAxBAWoiCDYClAIgBy0AvAdFDQMgCCAJTQ0MIBQgCUE0bGoiCCgCACIMIAcoAogCIg9PDQ0gBygChAIiFCAMQSRsaiIMKgIAIAgqAhiUIAwqAgQgCEEcaioCAJSSIAwqAgggCEEgaioCAJSSIhogHF0NBiAaQwAAoLVdIgwNGCAajCEaIAcoAqwCIgggBygCpAJGBEAgEEGo2sIAELQICyAGIBogDBshBiAYIAkgDBshGCAHKAKoAiIMIAhBA3RqIg8gGjgCBCAPIAk2AgAgByAIQQFqNgKsAiAIDQFBACEJDAILIAwgCUGkkMMAEIULAAsDQCAGIAwgCEEBayIPQQF2IglBA3RqIhRBBGoqAgBeRQRAIAghCQwCCyAMIAhBA3RqIBQpAgA3AgAgCSEIIA9BAUsNAAsLIAwgCUEDdGoiCCAGOAIEIAggGDYCAAsgCiAKIBZHQQN0aiEJIBYgCiIIRw0ACwwKCyAIIAtLBEAgB0GIB2ogBygCkAIgC0E0bGoiAiAHKAKEAiAKELwHIAIqAhwhGiACKgIYIRwgAioCIAwNCyALIAhB5JDDABCFCwALIAdBwAdqIAdBmAZqIBQgDxC8ByAHKgK4BiEbIAcqArQGIRogByoCsAYhHCAHKgLUByEfIAcqAtAHISEgByoCzAchIiAHKgLIByEGIAcqAsQHIR4gByoCwAchHQwNCyAJIAhBpI/DABCFCwALIAkgCEHEj8MAEIULAAsgCCAJQdSPwwAQhQsACyAIIApB5I/DABCFCwALIAggDUH0j8MAEIULAAsgCSAIQcSQwwAQhQsACyAMIA9B1JDDABCFCwALIAdBjAZqIBAQqQQgBygCjAYNAQwCCyAHKAKUAiIIIA1GDQggCCANTQ0GIAcoApACIA1BNGxqIAhBAWs2AhQgBygClAIiCEUNByAHKAKQAiAIQTRsaiIIQTRGDQcgCEEkayANNgIAIAdBADYCoAIgEkHkAEYNASAHQYwGaiAQEKkEIBJBAWohEiAHKAKMBg0ACwsgBygClAIiAiALTQ0BIAdBiAdqIAcoApACIAtBNGxqIgIgBygChAIgBygCiAIQvAcgAioCHCEaIAIqAhghHCACKgIgCyEbIAcqApwHIR8gByoCmAchISAHKgKUByEiIAcqApAHIQYgByoCjAchHiAHKgKIByEdDAELIAsgAkH0kMMAEIULAAsgBygCgAIiAgRAIAcoAoQCIAJBJGxBBBDoDgsgBygCjAIiAgRAIAcoApACIAJBNGxBBBDoDgsgBygCmAIiAgRAIAcoApwCIAJBA3RBBBDoDgsgBygCpAIiAkUNACAHKAKoAiACQQN0QQQQ6A4LIAAgGzgCJCAAIBo4AiAgACAcOAIcIAAgBjgCDCAAIB44AgggACAdOAIEIAAgGyAfIAaTlCAcICIgHZOUIBogISAek5SSkjgCNCAAIAEqAgwiICAaIAEqAgAiBpQgHCABKgIEIh2UkyIeIB6SIiiUIB0gGyAdlCAaIAEqAggiHpSTIiMgI5IiI5QgBiAcIB6UIBsgBpSTIiQgJJIiJJSTkiAbkzgCMCAAICAgJJQgBiAolCAeICOUk5IgGpM4AiwgACAgICOUIB4gJJQgHSAolJOSIByTOAIoIB0gIiAlkyIclCAGICEgJpMiIZSTIhsgG5IhGyAhIB6UIB8gJ5MiHyAdlJMiGiAakiEaIAAgHyAgIBuUIB0gGpQgBiAfIAaUIBwgHpSTIh8gH5IiH5STkpI4AhggACAhICAgH5QgBiAblCAeIBqUk5KSOAIUIAAgHCAgIBqUIB4gH5QgHSAblJOSkjgCEEEBIQgMAwsgDSAIQYSQwwAQhQsAC0GUkMMAEPIOAAsgBygCgAIiAQRAIAcoAoQCIAFBJGxBBBDoDgsgBygCjAIiAQRAIAcoApACIAFBNGxBBBDoDgsgBygCmAIiAQRAIAcoApwCIAFBA3RBBBDoDgsgBygCpAIiAQRAIAcoAqgCIAFBA3RBBBDoDgtBACEICyAAIAg2AgAgB0GQCGokAAv9RQRhfwN+D30GeyMAQaAMayIFJAACQAJAIAEgACgCOE8NACACIAAoAjQgAUEUbGoiBCgCAEcNAAJAAkACQAJAAkACQAJAIAQoAgQiFSAAKAJMTw0AIAAoAkggFUGkAmxqIggoAgAiJkGAgICAeEYNACAEKAIIIAgoAqACRw0AIAQoAhAhJyAEKAIMIQ0gACkCPCFlIAVB6AZqIgQgCEEEakGgAvwKAAAgCCBlNwIEIAhBgICAgHg2AgAgACAVNgJAIABBATYCPCAAIAAoAlBBAWo2AlAgACAAKAJUQQFrNgJUIAVBFGogBEGcAvwKAAAgBSAmNgIQICcgBSgCGCISTw0BIAUoAhQiFSAnQfADbGoiBCgCkAMEQCAEKAKYAyIEIBJPDQMgFSAEQfADbGoiCCgC8AIiHCAAKAI4Tw0EIAgoAvQCIgYgACgCNCAcQRRsaiIEKAIARw0EIAQoAgwiBCAAKAIgIg9PDQcgACgCLCEOIAAoAighDCAAKAIcIhYgBEEEdGpBCGoiCCEHA0ACQCAOIAcoAgAiBE0EQANAIA4gCCgCBCIETQ0LIAwgBEEEdGoiCCgCCCANRw0ADAILAAsgDCAEQQR0aiIHKAIMIA1HDQELCyAMIARBBHRqIhcpAggiZqciCCAPTw0GIBcpAgAiZachDSBmQiCIpyETIBYgCEEEdGoiCCgCCCIHIARHBEADQCAHIA5PDQcgDCAHQQR0aiIIKAIAIgcgBEcNAAsgCCANNgIADAYLIAhBCGogDTYCAAwFCyAFQRBqEPICDAcLQdDCwgAQ8g4AC0HgwsIAEPIOAAtB8MLCABDyDgALQYDDwgAQ8g4ACyAPIBNNDQAgZUIgiKchDSAWIBNBBHRqIggoAgwiByAERwRAA0AgByAOTw0CIAwgB0EEdGoiCCgCBCIHIARHDQALIAhBBGogDTYCAAwBCyAIQQxqIA02AgALIAAgDkEBayINNgIsIBcgDCANQQR0av0AAgD9CwIAIAQgDU8NACAMIARBBHRqKQIIImWnIgggD08NACBlQiCIpyEHAkAgDSAWIAhBBHRqIggoAggiEUcEQANAIA0gEU0NAiANIAwgEUEEdGoiCCgCACIRRw0ACyAIIAQ2AgAMAQsgCEEIaiAENgIACyAHIA9PDQAgDSAWIAdBBHRqIggoAgwiEUcEQANAIA0gEU0NAiANIAwgEUEEdGoiCCgCBCIRRw0ACyAIQQRqIAQ2AgAMAQsgCEEMaiAENgIACyADBEAgACABIAIQ2wMgACAcIAYQ2wMLIAUtAK0CIRkgBSgCmAIhWCAFKAKUAiEzIAUoApACISggBSgCjAIhHCAFKAKIAiE0IAUoAoQCISkgBSgCgAIhFyAFKAL8ASE1IAUoAvABIVkgBSgC7AEhNiAFKALkASFaIAUoAuABITcgBSgC0AEhWyAFKALMASE4IAUoArwBIVwgBSgCuAEhOSAFKAKoASFdIAUoAqQBITogBSgCmAEhXiAFKAKUASE7IAUoAoQBIV8gBSgCgAEhPCAFKAJwIWAgBSgCbCE9IAUoAlwhYSAFKAJYIT4gBSgCVCEqIAUoAlAhEyAFKAJMIT8gBSgCSCFiIAUoAkAhISAFKAI8IUAgBSgCOCFjIAUoAjAhIiAFKAIsIUEgBSgCKCFkIAUoAiAhIyAFKAIcIUIgBUEANgKUCSAFQoCAgIDAADcCjAkCQAJAAkACQCASQQJ0Ih9BBBCRDiIJBEAgCSEBIBJBAUcEQCAfQQRrIgEEQCAJQf8BIAH8CwALIAEgCWohAQsgAUF/NgIAIB9BBBCRDiIMRQ0BIAwhASAAQTxqIUMgAEEYaiENIBJBAUcEQCAfQQRrIgEEQCAMQf8BIAH8CwALIAEgDGohAQsgAUF/NgIAIBUgEkHwA2xqIRogBUG4C2ohRCAFQdwEaiFFIAVB6gtqISAgBUH9C2ohHSAFQZAMaiEYIAVB0wtqISQgBUGPC2ohHiAFQdcCaiFGQQAhESAVIQRBACEHA0AgBEHoAmotAAAiR0ECRg0FIARBywJqLQAAISsgBEHJAmovAAAhLCAEQRhqKQMAIWcgBEEQaikDACFmIARBqANqKgAAIWggBEGYA2ooAAAhJSAEQc0Cai0AACEOIARBzAJqLQAAIQ8gBEHIAmotAAAhAiAEQcQCai0AACEbIARBwAJqKgIAIWkgBEG8AmoqAgAhaiAEQagCai0AACEQIARBpAJqKgIAIWsgBEGgAmoqAgAhbCAEQYwCai0AACFIIARBiAJqKgIAIW0gBEGEAmoqAgAhbiAEQfABai0AACFJIARB7AFqKgIAIW8gBEHoAWoqAgAhcCAEQdQBai0AACFKIARB0AFqKgIAIXEgBEHMAWoqAgAhciAEQbgBai0AACFLIARBtAFqKgIAIXMgBEGwAWoqAgAhdCAEQZABav0ABAAhdyAEQfQAaioCACF1IARB5ABqKAIAIUwgBEHgAGoqAgAhdiAEQdAAav0ABAAheCAEQUBr/QAEACF5IARBMGr9AAQAIXogBEEgav0ABAAheyAE/QAEACF8IAVBiAtqIk0gBEHwAGooAgA2AgAgBUHwCmoiLSAEQYABav0AAwD9CwMAIAVBxwpqIk4gBEHIAWooAAA2AAAgBUGvCmoiTyAEQeQBaigAADYAACAFIARB6ABqKQIANwOACyAFIARB+ABqKQMANwPoCiAFIARBoAFq/QAEAP0LBNAKIAUgBEG5AWr9AAAA/QsDuAogBSAEQdUBav0AAAD9CwOgCiAFQZcKaiJQIARBgAJqKAAANgAAIAVB/wlqIlEgBEGcAmooAAA2AAAgBUHnCWoiUiAEQbgCaigAADYAACAFQdYJaiIuIARBxwJqLQAAOgAAIAVBuAlqIgFBGGoiUyAEQeYCai8BADsBACABQRBqIlQgBEHeAmopAQA3AwAgBSAEQfEBav0AAAD9CwOICiAFIARBjQJq/QAAAP0LA/AJIAUgBEGpAmr9AAAA/QsD2AkgBSAEQcUCai8AADsB1AkgBSAEQc4Cav0AAQD9CwO4CSBGIARBkANqKQAANwAAIAVBsAJqIgFBIGoiLyAEQYkDaikAADcDACABQRBqIjAgBEH5Amr9AAAA/QsDACAFQbAJaiJVIARBpANqKAAANgIAIAVBoAlqIlYgBEG0A2ooAAA2AgAgBUHoBmoiAUEgaiIKIARB2ANq/QAAAP0LAwAgAUEQaiILIARByANq/QAAAP0LAwAgAUEwaiIWIARB6ANqKQAANwMAIAUgBEHpAmr9AAAA/QsDsAIgBSAEQZwDaikAADcDqAkgBSAEQawDaikAADcDmAkgBSAEQbgDav0AAAD9CwPoBgJ/AkACQAJAAkACQCAHRSAHICdGciIGBEAgByASTw0CIAkgEWogBSgClAkiMTYCACAFQQA2ApwLIAVCADcClAsgBUKAgICAwAA3AowLIAVB0ARqIAVBjAtqIgEQgwEgBUEANgLgCyAFQgA3AtgLIAVCgICAgMAANwLQCyABIAVB0AtqEIMBIAUoAowJIDFGBEAjAEEgayIBJABBBCAFQYwJaiIyKAIAIhRBAXQiAyADQQRNGyIIrUKgAn4iZUIgiEIAUgRAQQBBAEG8ksIAENcNAAsCQCBlpyIDQfz///8HTQR/IAEgFAR/IAEgFEGgAmw2AhwgASAyKAIENgIUQQQFQQALNgIYIAFBCGpBBCADIAFBFGoQ4gkgASgCCEEBRw0BIAEoAhAhVyABKAIMBUEACyBXQbySwgAQ1w0ACyABKAIMIQMgMiAINgIAIDIgAzYCBCABQSBqJAALIAUoApAJIDFBoAJsaiIDQQA2AlggA0IANwJQIANCgICAgMAANwJIIANCBDcCQCADQgA3AjggA0IENwIwIANCADcCKCADQgQ3AiAgA0IANwIYIANCBDcCECADQgA3AgggA0KAgICAgAI3AgAgAyAF/QAC0AT9CwJcIANB/ABqIAVB0ARqIgFBIGopAgA3AgAgA0HsAGogAUEQav0AAgD9CwIAIANBADYCpAEgA0IANwKcASADQoCAgIDAADcClAEgA0KAgICAcDcCjAEgA0KAgICAwAA3AoQBIANBBDYCiAIgA0KAgICAwAA3AtABIANCADcC2AEgA0IENwLgASADQgA3AugBIANCBDcC8AEgA0KAgICAwAA3AvgBIANCADcCgAIgA0HIAWogBUGMC2oiAUEgaikCADcCACADIAX9AAKMC/0LAqgBIANBuAFqIAFBEGr9AAIA/QsCACADQZwCakEAOgAAIAP9DAAAAAAAAAAAAAAAAAAAAAD9CwKMAiADIBk6AJ0CIAUgMUEBajYClAkMAQsgEiAlTQ0JIAcgEk8NCiAJIBFqIAkgJUECdGooAgA2AgALIAcgEkYNASAJIBFqKAIAIgMgBSgClAkiAU8NAiAMIBFqIAUoApAJIANBoAJsaiIIKAIIIgM2AgAgBg0DICwgK0EQdHIMBAsgByASQaySwgAQhQsACyASIBJBzJLCABCFCwALIAMgAUHcksIAEIULAAsgTSBVKAIANgIAIAUgBSkDqAk3A4ALIAVB0ARqIgFBCGogVigCADYCACAFIAUpA5gJNwPQBEIAIWYgRUIANwIAQQAhDyBFQQhqQQA2AgAgHv0MAAAAAAAAAAAAAAAAAAAAAP0LAAAgJP0MAAAAAAAAAAAAAAAAAAAAAP0LAAAgGP0MAAAAAAAAAAAAAAAAAAAAAP0LAAAgHf0MAAAAAAAAAAAAAAAAAAAAAP0LAAAgIP0MAAAAAAAAAAAAAAAAAAAAAP0LAAAgRP0MAAAAAAAAAAAAAAAAAAAAAP0LAQAgREEQakIANwEAIAX9DAAAAAAAAAAAAAAAAAAAAAD9CwTQCiAFQfgKaiABQRBqKQMANwMAIAUgBf0AA9AE/QsD6AogTiAFQZsLaigAADYAACAFIAX9AACMC/0LA7gKIE8gBUHfC2ooAAA2AAAgBSAF/QAA0Av9CwOgCiBQIAVBnAxqKAAANgAAIAUgBf0AAI0M/QsDiAogUSAFQYkMaigAADYAACAFIAX9AAD6C/0LA/AJIFIgBUH2C2ooAAA2AAAgBSAF/QAA5wv9CwPYCSBTIAVBtgtqIgFBGGovAQA7AQAgVCABQRBqKQEANwMAIAUgBf0AAbYL/QsDuAn9DAAAgD8AAAAAAAAAAAAAAAAhd/0MAAAAAP//f////39/AAAAACF5/Qz//39/AAAAAP//f////39/IXr9DAAAAAAAAAAAAAAAAAAAgD8hfEE/IQJDAAAAACFzQQEhDkP//39/IXYgaCF1QgAhZ0P//39/IXRBACFLQ///f38hckMAAAAAIXFBACFKQ///f38hcEMAAAAAIW9BACFJQ///f38hbkMAAAAAIW1BACFIQ///f38hbEMAAAAAIWtBACEQQ///f38hakMAAAAAIWlBACEbQQAhR0EAIUz9DP//f////39/AAAAAP//f/8he/0M//9/////f38AAAAA//9//yF4QQALIQEgCCAIKAKUAiACQf8BcWlrQQZqNgKUAiAIKAIAIANGBEAgCEHsksIAEJkICyAIKAIEIANB8ANsaiIGIGc3AxggBiBmNwMQIAYgTDYCZCAGIHY4AmAgBiB4/QsEUCAGIHn9CwRAIAYgev0LBDAgBiB7/QsEICAGIHz9CwQAIAYgBSkDgAs3AmggBiB1OAJ0IAYgBSkD6Ao3A3ggBiB3/QsEkAEgBkHwAGogTSgCADYCACAGQYABaiAt/QADAP0LAwAgBiB0OAKwASAGIHM4ArQBIAYgSzoAuAEgBiByOALMASAGIHE4AtABIAYgSjoA1AEgBiBwOALoASAGIG84AuwBIAYgSToA8AEgBiAF/QAE0Ar9CwSgASAGQcgBaiBOKAAANgAAIAYgBf0AA7gK/QsAuQEgBkHkAWogTygAADYAACAGIAX9AAOgCv0LANUBIAYgbjgChAIgBiBtOAKIAiAGIEg6AIwCIAYgbDgCoAIgBiBrOAKkAiAGIBA6AKgCIAZBgAJqIFAoAAA2AAAgBiAF/QADiAr9CwDxASAGQZwCaiBRKAAANgAAIAYgBf0AA/AJ/QsAjQIgBkG4AmogUigAADYAACAGIAX9AAPYCf0LAKkCIAYgGzoAxAIgBiBpOALAAiAGIGo4ArwCIAZBxwJqIC4tAAA6AAAgBiAFLwHUCTsAxQIgBkHLAmogAUEQdjoAACAGIAE7AMkCIAYgDjoAzQIgBiAPOgDMAiAGIAI6AMgCIAZB5gJqIFMvAQA7AQAgBkHeAmogVCkDADcBACAGIAX9AAO4Cf0LAc4CIAYgRzoA6AIgBkGQA2ogRikAADcAACAGQYkDaiAvKQMANwAAIAZB+QJqIDD9AAMA/QsAACAGIAX9AAOwAv0LAOkCIAYgJTYCmAMgBkGkA2ogVSgCADYCACAGIAUpA6gJNwKcAyAGIGg4AqgDIAZBtANqIFYoAgA2AgAgBiAFKQOYCTcCrAMgBkHoA2ogFikDADcDACAGQdgDaiAK/QADAP0LAwAgBkHIA2ogC/0AAwD9CwMAIAYgBf0AA+gG/QsDuAMgCCADQQFqNgIIIAdBAWohByARQQRqIREgGiAEQfADaiIERw0ACwwEC0EEIB9B3JHCABDXDQALQQQgH0HskcIAENcNAAsgJSASQYySwgAQhQsACyAHIBJBnJLCABCFCwALICYEQCAVICZB8ANsQRAQ6A4LIAUoApAJIgYgBSgClAkiJEGgAmxqISAgJARAIAZBoAJqIQMgBiEVA0AgFSEBIAMhFSABIAEoApQCIAEoAggQ6gUgAUHQAWogASgCCCABKAKUAhD9AiABKAIIIgIEQCABKAIEIgcgAkHwA2xqISsgB0HwA2ohA0EBIQ9BACEOIAFBGGohLCABQRBqIS0gAUEoaiEuIAFBIGohLyABQThqITAgAUEwaiEKQQAhAgNAIAMhCCAHAn8CQEEGIActAMgCaSIZayIUIAJqIhYgLCgCAE0EQCAHKAKUAyIBIBRqIGRLDQggAkECdCEaAkAgGUEGRiIeDQAgLSgCACEdIAFBAnQhGEEAIRACQCAUQQhJDQAgGiAdaiIEIBggI2oiA2tBEEkNACAUQXxxIhAhAQNAIAQgA/0AAgD9CwIAIARBEGohBCADQRBqIQMgAUEEayIBDQALIBAgFEYNAQsgECAZaiELQQIgGWtBA3EiAQRAICMgEEECdCIDIBhqaiEEIB0gAyAaamohAyABIBBqIRADQCADIAQqAgA4AgAgBEEEaiEEIANBBGohAyABQQFrIgENAAsLIAtBA2tBA0kNACAdIBBBAnQiASAaamohBCAjIAEgGGpqIQNBBiAQIBlqayEBA0AgBCADKgIAOAIAIARBBGogA0EEaioCADgCACAEQQhqIANBCGoqAgA4AgAgBEEMaiADQQxqKgIAOAIAIARBEGohBCADQRBqIQMgAUEEayIBDQALCyAWIC4oAgBLDQggBygClAMiASAUaiBjSw0IAkAgHg0AIC8oAgAhHSABQQJ0IRhBACEQAkAgFEEISQ0AIBogHWoiBCAYICJqIgNrQRBJDQAgFEF8cSIQIQEDQCAEIAP9AAIA/QsCACAEQRBqIQQgA0EQaiEDIAFBBGsiAQ0ACyAQIBRGDQELIBAgGWohC0ECIBlrQQNxIgEEQCAiIBBBAnQiAyAYamohBCAdIAMgGmpqIQMgASAQaiEQA0AgAyAEKgIAOAIAIARBBGohBCADQQRqIQMgAUEBayIBDQALCyALQQNrQQNJDQAgHSAQQQJ0IgEgGmpqIQQgIiABIBhqaiEDQQYgECAZamshAQNAIAQgAyoCADgCACAEQQRqIANBBGoqAgA4AgAgBEEIaiADQQhqKgIAOAIAIARBDGogA0EMaioCADgCACAEQRBqIQQgA0EQaiEDIAFBBGsiAQ0ACwsgFiAwKAIASw0IIAcoApQDIgEgFGogYksNCAJAIB4NACAKKAIAIRggAUECdCEeQQAhGwJAIBRBCEkNACAYIBpqIgQgHiAhaiIDa0EQSQ0AIBRBfHEiGyEBA0AgBCAD/QACAP0LAgAgBEEQaiEEIANBEGohAyABQQRrIgENAAsgFCAbRg0BCyAZIBtqIQtBAiAZa0EDcSIBBEAgISAbQQJ0IgMgHmpqIQQgGCADIBpqaiEDIAEgG2ohGwNAIAMgBCoCADgCACAEQQRqIQQgA0EEaiEDIAFBAWsiAQ0ACwsgC0EDa0EDSQ0AIBggG0ECdCIBIBpqaiEEICEgASAeamohA0EGIBkgG2prIQEDQCAEIAMqAgA4AgAgBEEEaiADQQRqKgIAOAIAIARBCGogA0EIaioCADgCACAEQQxqIANBDGoqAgA4AgAgBEEQaiEEIANBEGohAyABQQRrIgENAAsLIAcgAjYClAMgByAONgKQA0EAIA5FDQIaIAcoApgDIgEgEkkNASABIBJB/JHCABCFCwALDAcLIAwgAUECdGooAgALNgKYAyAIQfADQQAgCCArRyIBG2ohAyABIA8iDmohDyAIIQcgFiECIAENAAsLIBVBAEGgAiAVICBGIgEbaiEDIAFFDQALCyAFKAKMCSEWIAwgH0EEEOgOIAkgH0EEEOgOIEIEQCAjIEJBAnRBBBDoDgsgQQRAICIgQUECdEEEEOgOCyBABEAgISBAQQJ0QQQQ6A4LICoEQCATIQQDQCAEKAIAIgEEQCAEQQRqKAIAIAFBAnRBBBDoDgsgBEEQaiEEICpBAWsiKg0ACwsgPwRAIBMgP0EEdEEEEOgOCyA+BEAgYSA+QQJ0QQQQ6A4LID0EQCBgID1BAnRBBBDoDgsgPARAIF8gPEEDdEEEEOgOCyA7BEAgXiA7QQJ0QQQQ6A4LIDoEQCBdIDpBAnRBBBDoDgsgOQRAIFwgOUECdEEEEOgOCyA4BEAgWyA4QQN0QQQQ6A4LIDcEQCBaIDdBGGxBBBDoDgsgNgRAIFkgNkECdEEEEOgOCyApBEAgFyEEA0AgBCgCACIBBEAgBEEEaigCACABQQJ0QQQQ6A4LIARBEGohBCApQQFrIikNAAsLIDUEQCAXIDVBBHRBBBDoDgsgKARAIBwhBANAIAQoAgAiAQRAIARBBGooAgAgAUECdEEEEOgOCyAEQRBqIQQgKEEBayIoDQALCyA0BEAgHCA0QQR0QQQQ6A4LIDMEQCBYIDNBAnRBBBDoDgsgBiECAkACQCAkRQ0AIAVB9AZqIQggBUG0AmohFQJAAkADQCACIgFBoAJqIQIgASgCACITQYCAgIB4Rg0DIAUgEzYCsAIgFSABQQRqQZwC/AoAAAJAAkACQAJAAkACQAJAIAUoArgCIgRBAUYEQCAFKAK0AiIDKALwAiIBIAAoAjhPDQEgAygC9AIgACgCNCABQRRsaiIDKAIARw0BIAVB6AZqIQECQCADKAIMIgQgDSgCCCIOTw0AIA0oAgQiDyAEQQR0aiIDQQhqIRwgDSgCFCELIA0oAhAhDCADKAIIIglBf0cEQANAAkAgCSALTw0AAkAgDCAJQQR0aiIXKQIIImanIgMgDk8NACAXKQIAImWnIQcgZkIgiKchEwJAIAkgDyADQQR0aiIDKAIIIgpHBEADQCAKIAtPDQIgCSAMIApBBHRqIgMoAgAiCkcNAAsgAyAHNgIADAELIANBCGogBzYCAAsgDiATTQ0AIGVCIIinIQcgCSAPIBNBBHRqIgMoAgwiCkcEQANAIAogC08NAiAJIAwgCkEEdGoiAygCBCIKRw0ACyADQQRqIAc2AgAMAQsgA0EMaiAHNgIACyANIAtBAWsiCzYCFCAXIAwgC0EEdGr9AAIA/QsCACAJIAtPDQAgFykCCCJlpyIDIA5PDQAgZUIgiKchBwJAIAsgDyADQQR0aiIDKAIIIgpHBEADQCAKIAtPDQIgCyAMIApBBHRqIgMoAgAiCkcNAAsgAyAJNgIADAELIANBCGogCTYCAAsgByAOTw0AIAsgDyAHQQR0aiIDKAIMIgpHBEADQCAKIAtPDQIgCyAMIApBBHRqIgMoAgQiCkcNAAsgA0EEaiAJNgIADAELIANBDGogCTYCAAsgHCgCACIJQX9HDQALCyAcKAIEIglBf0cEQANAAkAgCSALTw0AAkAgDCAJQQR0aiIXKQIIImanIgMgDk8NACAXKQIAImWnIQcgZkIgiKchEwJAIAkgDyADQQR0aiIDKAIIIgpHBEADQCAKIAtPDQIgCSAMIApBBHRqIgMoAgAiCkcNAAsgAyAHNgIADAELIANBCGogBzYCAAsgDiATTQ0AIGVCIIinIQcgCSAPIBNBBHRqIgMoAgwiCkcEQANAIAogC08NAiAJIAwgCkEEdGoiAygCBCIKRw0ACyADQQRqIAc2AgAMAQsgA0EMaiAHNgIACyANIAtBAWsiCzYCFCAXIAwgC0EEdGr9AAIA/QsCACAJIAtPDQAgFykCCCJlpyIDIA5PDQAgZUIgiKchBwJAIAsgDyADQQR0aiIDKAIIIgpHBEADQCAKIAtPDQIgCyAMIApBBHRqIgMoAgAiCkcNAAsgAyAJNgIADAELIANBCGogCTYCAAsgByAOTw0AIAsgDyAHQQR0aiIDKAIMIgpHBEADQCAKIAtPDQIgCyAMIApBBHRqIgMoAgQiCkcNAAsgA0EEaiAJNgIADAELIANBDGogCTYCAAsgHCgCBCIJQX9HDQALCyANIA5BAWsiDjYCCCAPIARBBHRqIgMgDyAOQQR0av0AAgD9CwIAIAQgDk8NACADKQIIImVCIIinIQkgCyBlpyIKSwRAA0AgDCAKQQR0aiIDIAQ2AgggCyADKAIAIgpLDQALCyAJIAtPDQADQCAMIAlBBHRqIgMgBDYCDCADKAIEIgkgC0kNAAsLIAEgBCAOSQR/IAEgDSgCBCAEQQR0aikCADcCBEEBBUEACzYCACAFKALoBgRAIAUoAuwGIgEgACgCOE8NAyAFKALwBiAAKAI0IAFBFGxqIgEoAgBHDQMgASAENgIMCyAFQbACahDyAgwGCyAFKAK0AiEDIAVB0ARqIAFBDGoiAUGUAvwKAAAgQygCAEEBRw0CIAAoAkAiByAAKAJMIgFPDQggACgCSCAHQaQCbGoiASgCAEGAgICAeEYNAyAFQQA2ApwLIAVBATYCkAsgBUH4icIANgKMCyAFQgQ3ApQLIAVBjAtqQYCKwgAQuQ0AC0GQw8IAEPIOAAtBoMPCABDyDgALIAggAUGUAvwKAAAgBSAENgLwBiAFIAM2AuwGIAUgEzYC6AYgBUEIaiBDIAVB6AZqEK0GIAUoAgwhESAFKAIIIQcMAQsgASATNgIAIAAgASkCBDcCPCABIAQ2AgggASADNgIEIAAgACgCVEEBajYCVCAAKAJQIREgAUEMaiAFQdAEakGUAvwKAAAgASARNgKgAgsgByAAKAJMTw0EIAAoAkggB0GkAmxqIgMoAgBBgICAgHhGDQQgAygCoAIgEUcNBCADKAIIIgFFDQAgAUHwA2whASADKAIEQZADaiEEA0AgBEEgaygCACIDIAAoAjhPDQIgBEEcaygCACAAKAI0IANBFGxqIgMoAgBHDQIgAyARNgIIIAMgBzYCBCADIAQoAgA2AhAgBEHwA2ohBCABQfADayIBDQALCyACICBHDQEMBQsLQcDDwgAQ8g4ACyAHIAFB1InCABCFCwALQdCLwgBBE0Gww8IAENELAAsgICACa0GgAm4hBCACICBGDQADQCACEPICIAJBoAJqIQIgBEEBayIEDQALCyAWRQ0AIAYgFkGgAmxBBBDoDgsgBUGgDGokAA8LIAVBADYC4AQgBUEBNgLUBCAFQbD9wQA2AtAEIAVCBDcC2AQgBUHQBGpBuP3BABC5DQALzTkDEX8JfQF7IwBBkAdrIgYkACAEQQhqIgcqAgAhGyAEKgIAIR0gBCoCBCEcIAZBGGogBygCADYCACAG/QwAAAAAAAAAAAAAAAAAAIA//QsEACAGIAQpAgA3AxBDAACAPyEXIB0gHZQgHCAclJIgGyAblJIiGUMAAIAoXgRAIBsgGZEiF5UhGiAcIBeVIRggHSAXlSEXCyAGIBo4AiggBiAYOAIkIAYgFzgCICAGQSxqIgcgBiABIAIgBkEgahDNAyADQQA2AqwBIANBADYCvAEgAyAG/QACLP0LAhAgA0EgaiAHQRBq/QACAP0LAgAgA0EwaiAHQSBqKAIANgIAIAb9DAAAAIAAAACAAAAAgAAAgD/9CwSQBSAGIBsgHEMAAACAlCAdQwAAAACUkiIXIBeSIh4gG0MAAACAlCAcQwAAAACUkiIXIBeSIhlDAAAAAJQiGiAdQwAAAICUIBtDAAAAAJSSIhcgF5IiF0MAAAAAlCIYk5KSIh84AqgFIAYgHCAXIB5DAAAAAJQiFyAak5KSIhs4AqQFIAYgHSAZIBggF5OSkiIcOAKgBSAGQbADaiADEGsCQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAGKgKwAyIXIBeUIAYqArQDIhcgF5SSIAYqArgDIhggGJSSQwAAAABeRQ0AQ///f38hF0HkACEHAkACQAJAAkADQCAGKgKwAyIdIB2UIAYqArQDIhkgGZSSIAYqArgDIhggGJSSIhpDAADIK15FDQUgBiAYjCAakSIYlSIeOAKgBCAGIBmMIBiVIhk4ApwEIAYgHYwgGJUiGjgCmAQgFyAYXw0EIAZBgAZqIgkgBkGQBWogASACIAZBmARqEM0DIBogBioCgAaUIBkgBioChAaUkiAeIAYqAogGlJIiF7xB/////wdxQYCAgPwHTw0GIBdD//9//11FBEAgGCAXkiAYQ70bjzqUXw0EIAMgCRDhA0UNAiAGQbADaiADEGsgAygCvAFBA0YNAyAYIRcgB0EBayIHDQELC0Ho2sIAQShBhJLDABDWDAALIAZB0ARqIANBABDcAwwOCyAXQwAAoLVfRQ0CIAZB0ARqIANBARDcAwwNCyAGQdAEaiADQQAQ3AMMDAsgBkHQBGogA0EBENwDDAsLAkAgBUUEQCAGQoCAgIDAADcCdCAGQoCAgIDAADcCaCAGQoCAgIDAADcCXCAGQoCAgIDAADcCUCAGIB84ApgBIAYgGzgClAEgBiAcOAKQASAG/QwAAACAAAAAgAAAAIAAAIA//QsEgAEgBkEANgJ8IAZBADYCZCAGQQA2AlggBkEANgJwIAZB9ABqIQ4gBkHcAGohEiADKAK8ASIIQX9GBEBBBCEHQQAhBQwFCyAGQdAAaiIFQYSRwwAQlQggBigCVCIHIANBEGoiCf0AAgD9CwIAIAdBIGogCUEgaigCADYCACAHQRBqIAlBEGr9AAIA/QsCACAGQQE2AlggCEUNASAIQQJqIQggA0E0aiEJIAYoAlBBAUYEQCAFQYSRwwAQlQggBigCVCEHCyAHIAn9AAIA/QsCJCAHQcQAaiAJQSBqKAIANgIAIAdBNGogCUEQav0AAgD9CwIAIAZBAjYCWCAIQQNGDQMgA0HYAGohBSAGKAJQQQJGBEAgBkHQAGpBhJHDABCVCCAGKAJUIQcLIAcgBf0AAgD9CwJIIAdB6ABqIAVBIGooAgA2AgAgB0HYAGogBUEQav0AAgD9CwIAQQMhBSAGQQM2AlggCEEERg0EIANB/ABqIQMgBigCUEEDRgRAIAZB0ABqQYSRwwAQlQggBigCVCEHCyAHIAP9AAIA/QsCbCAHQYwBaiADQSBqKAIANgIAIAdB/ABqIANBEGr9AAIA/QsCACAGQQQ2AlggCEEFRg0FQQRBBEGok8MAEIULAAsgAEEBOgAMIAAgBCkCADcCACAAQQhqIARBCGooAgA2AgAMDAsgBkHgBmpCADcDACAG/QwAAAAAAAAAAAAAAAAAAAAA/QsD0AYMBQtBlJLDAEEnQbySwwAQ1gwACyAHKgIsIAcqAgiTIhtDAAAAACAHKgIkIAcqAgCTIhyLIAcqAiggByoCBJMiGIteIgMbIhcgHIwgGCADGyIeIB6UQwAAAAAgG4wgAxsiGiAalCAXIBeUkpKRIheVIRkgBiAYIBmUIBwgGiAXlSIalJM4ApgFIAYgHCAeIBeVIheUIBsgGZSTOAKUBSAGIBsgGpQgGCAXlJM4ApAFIAZBgAZqIAZBgAFqIAEgAiAGQZAFahDNAyAGKAJYIgcgBigCUEYEQCAGQdAAakGUkcMAEJUICyAGKAJUIAdBJGxqIgUgBv0AAoAG/QsCACAFQSBqIAZBgAZqIgNBIGooAgA2AgAgBUEQaiADQRBq/QACAP0LAgAgBiAHQQFqIgU2AlggBigCVCEHCyAGQQI2AvADIAZCgICAgBA3AugDIAZBATYC/AMgBkKAgICAIDcC9AMgBkEBNgKIBCAGQoGAgIAQNwKABCAGQQA2ApQEIAZCADcCjAQgBkGABmoiCiAHIAUgBkHoA2ogBkGABGoQ3gIgBkGYBGoiA0EwaiIMIApBMGoiCCgCADYCACADQSBqIgkgCkEgaiIF/QACAP0LAwAgA0EQaiIHIApBEGoiA/0AAgD9CwMAIAYgBv0AAoAG/QsDmAQgCiAGKAJUIAYoAlggBkH0A2ogBkGMBGoQ3gIgBkHQBGoiCkEwaiAIKAIANgIAIApBIGogBf0AAgD9CwMAIApBEGogA/0AAgD9CwMAIAYgBv0AAoAG/QsD0AQgBigCXCIFIAYoAmQiCkYEQCASQYSPwwAQmwggBigCXCEFCyAGKAJgIgMgCkE0bGoiCCAG/QADmAT9CwIAIAhBIGogCf0AAwD9CwIAIAhBEGogB/0AAwD9CwIAIAhBMGogDCgCADYCACAGIApBAWoiBzYCZCAFIAdGBEAgEkGUj8MAEJsIIAYoAmAhAwsgAyAHQTRsaiIFIAb9AAPQBP0LAgAgBUEgaiAGQdAEaiIDQSBq/QADAP0LAgAgBUEQaiADQRBq/QADAP0LAgAgBUEwaiADQTBqKAIANgIAIAYgCkECajYCZCAGKAJ8IgMgBigCdEYEQCAOQajawgAQtAgLIAYoAngiCCADQQN0akIANwIAIAYgA0EBajYCfAJAIANFBEBBACEFDAELA0AgCCADQQFrIglBAXYiBUEDdGoiB0EEaioCAEMAAAAAXUUEQCADIQUMAgsgCCADQQN0aiAHKQIANwIAIAUhAyAJQQFLDQALCyAIIAVBA3RqQgA3AgAgBigCfCIDIAYoAnRGBEAgDkGo2sIAELQICyAGKAJ4IgggA0EDdGpCATcCACAGIANBAWo2AnwCQCADRQRAQQAhBQwBCwNAIAggA0EBayIJQQF2IgVBA3RqIgdBBGoqAgBDAAAAAF1FBEAgAyEFDAILIAggA0EDdGogBykCADcCACAFIQMgCUEBSw0ACwsgCCAFQQN0akIBNwIADAELIAcqAkggByoCACIfkyEbIAcqAiggByoCBCIYkyIeIAcqAlAgByoCCCIckyIZlCAHKgIsIByTIhcgByoCTCAYkyIalJMgByoCbCAfk5QgFyAblCAHKgIkIB+TIhcgGZSTIAcqAnAgGJOUkiAXIBqUIB4gG5STIAcqAnQgHJOUkkMAAAAAXgRAIAdBJGoiBf0AAgAhICAFIAdByABqIgj9AAIA/QsCACAIICD9CwIAIAVBEGoiA/0AAgAhICADIAhBEGoiCf0AAgD9CwIAIAVBIGoiAygCACEFIAMgCEEgaiIDKAIANgIAIAkgIP0LAgAgAyAFNgIACyAGQQI2ArABIAZCgICAgBA3AqgBIAZBAjYCvAEgBkKBgICAMDcCtAEgBkEDNgLIASAGQoCAgIAgNwLAASAGQQE2AtQBIAZCgICAgDA3AswBIAZBAjYC4AEgBkKDgICAEDcC2AEgBkEANgLsASAGQoOAgIAgNwLkASAGQQM2AvgBIAZCgICAgBA3AvABIAZBADYChAIgBkKCgICAEDcC/AEgBkGABmoiCyAHQQQgBkGoAWogBkHYAWoQ3gIgBkGIAmoiA0EwaiIIIAtBMGoiDSgCADYCACADQSBqIgkgC0EgaiIM/QACAP0LAwAgA0EQaiIHIAtBEGoiBf0AAgD9CwMAIAYgBv0AAoAG/QsDiAIgBi0AtAYhDyALIAYoAlQgBigCWCAGQbQBaiAGQeQBahDeAiAGQcACaiIDQTBqIA0oAgA2AgAgA0EgaiAM/QACAP0LAwAgA0EQaiAF/QACAP0LAwAgBiAG/QACgAb9CwPAAiAGLQC0BiEUIAsgBigCVCAGKAJYIAZBwAFqIAZB8AFqEN4CIAZB+AJqIgNBMGogDSgCADYCACADQSBqIAz9AAIA/QsDACADQRBqIAX9AAIA/QsDACAGIAb9AAKABv0LA/gCIAYtALQGIQogCyAGKAJUIAYoAlggBkHMAWogBkH8AWoQ3gIgBkGwA2oiA0EwaiANKAIANgIAIANBIGogDP0AAgD9CwMAIANBEGogBf0AAgD9CwMAIAYgBv0AAoAG/QsDsAMgBi0AtAYhDCAGKAJcIgUgBigCZCILRgRAIBJB2IzDABCbCCAGKAJcIQULIAYoAmAiAyALQTRsaiINIAb9AAOIAv0LAgAgDUEgaiAJ/QADAP0LAgAgDUEQaiAH/QADAP0LAgAgDUEwaiAIKAIANgIAIAYgC0EBaiIHNgJkIAUgB0YEQCASQeiMwwAQmwggBigCXCEFIAYoAmAhAwsgAyAHQTRsaiIJIAb9AAPAAv0LAgAgCUEgaiAGQcACaiIHQSBq/QADAP0LAgAgCUEQaiAHQRBq/QADAP0LAgAgCUEwaiAHQTBqKAIANgIAIAYgC0ECaiIHNgJkIAUgB0YEQCASQfiMwwAQmwggBigCXCEFIAYoAmAhAwsgAyAHQTRsaiIJIAb9AAP4Av0LAgAgCUEgaiAGQfgCaiIHQSBq/QADAP0LAgAgCUEQaiAHQRBq/QADAP0LAgAgCUEwaiAHQTBqKAIANgIAIAYgC0EDaiIHNgJkIAUgB0YEQCASQYiNwwAQmwggBigCYCEDCyADIAdBNGxqIgcgBv0AA7AD/QsCACAHQSBqIAZBsANqIgVBIGr9AAMA/QsCACAHQRBqIAVBEGr9AAMA/QsCACAHQTBqIAVBMGooAgA2AgAgBiALQQRqIgU2AmQCQCAPQQFxRQ0AAkAgBQRAIAYoAlhFDQEgAyoCGCAGKAJUIgUqAgCUIANBHGoqAgAgBUEEaioCAJSSIANBIGoqAgAgBUEIaioCAJSSIhdDAACgtV0NByAXjCEYIAYoAnwiAyAGKAJ0RgRAIA5BqNrCABC0CAsgBigCeCIIIANBA3RqIgUgGDgCBCAFQQA2AgAgBiADQQFqNgJ8QQAhBwJAIANFDQADQCAIIANBAWsiCUEBdiIHQQN0aiIFQQRqKgIAIBhdRQRAIAMhBwwCCyAIIANBA3RqIAUpAgA3AgAgByEDIAlBAUsNAAsLIAggB0EDdGoiAyAYOAIEIANBADYCAAwCC0EAQQBBmI3DABCFCwALQQBBAEGojcMAEIULAAsCQCAUQQFxRQ0AAkAgBigCZCIDQQJPBEAgBigCWCIDQQFNDQEgBigCYCIFKgJMIAYoAlQiAyoCJJQgBUHQAGoqAgAgA0EoaioCAJSSIAVB1ABqKgIAIANBLGoqAgCUkiIXQwAAoLVdDQcgF4whGCAGKAJ8IgMgBigCdEYEQCAOQajawgAQtAgLIAYoAngiCCADQQN0aiIFIBg4AgQgBUEBNgIAIAYgA0EBajYCfAJAIANFBEBBACEFDAELA0AgCCADQQFrIglBAXYiBUEDdGoiB0EEaioCACAYXUUEQCADIQUMAgsgCCADQQN0aiAHKQIANwIAIAUhAyAJQQFLDQALCyAIIAVBA3RqIgMgGDgCBCADQQE2AgAMAgtBASADQbiNwwAQhQsAC0EBIANByI3DABCFCwALAkAgCkEBcUUNAAJAIAYoAmQiA0EDTwRAIAYoAlgiA0ECTQ0BIAYoAmAiBSoCgAEgBigCVCIDKgJIlCAFQYQBaioCACADQcwAaioCAJSSIAVBiAFqKgIAIANB0ABqKgIAlJIiF0MAAKC1XQ0HIBeMIRggBigCfCIDIAYoAnRGBEAgDkGo2sIAELQICyAGKAJ4IgggA0EDdGoiBSAYOAIEIAVBAjYCACAGIANBAWo2AnwCQCADRQRAQQAhBQwBCwNAIAggA0EBayIJQQF2IgVBA3RqIgdBBGoqAgAgGF1FBEAgAyEFDAILIAggA0EDdGogBykCADcCACAFIQMgCUEBSw0ACwsgCCAFQQN0aiIDIBg4AgQgA0ECNgIADAILQQIgA0HYjcMAEIULAAtBAiADQeiNwwAQhQsACwJAIAxBAXFFDQACQCAGKAJkIgNBBE8EQCAGKAJYIgNBA00NASAGKAJgIgUqArQBIAYoAlQiAyoCbJQgBUG4AWoqAgAgA0HwAGoqAgCUkiAFQbwBaioCACADQfQAaioCAJSSIhdDAACgtV0NByAXjCEYIAYoAnwiAyAGKAJ0RgRAIA5BqNrCABC0CAsgBigCeCIIIANBA3RqIgUgGDgCBCAFQQM2AgAgBiADQQFqNgJ8AkAgA0UEQEEAIQUMAQsDQCAIIANBAWsiCUEBdiIFQQN0aiIHQQRqKgIAIBhdRQRAIAMhBQwCCyAIIANBA3RqIAcpAgA3AgAgBSEDIAlBAUsNAAsLIAggBUEDdGoiAyAYOAIEIANBAzYCAAwCC0EDIANB+I3DABCFCwALQQMgA0GIjsMAEIULAAsgD0EBcQ0AIBRBAXENACAKQQFxDQAgDEEBcQ0AQfTKxAAoAgBBBEkNBCAGQQA2ApAGIAZBATYChAYgBkHsjsMANgKABiAGQgQ3AogGIAZB9I7DADYCoAUgBkEZNgKcBSAGQeyLwwA2ApgFIAZBGTYClAUgBkHsi8MANgKQBSAGQYAGaiAGQZAFahCQCgwECyAGKAJ8RQ0DIAYoAngoAgAhESAGQYQFaiAOEKkEAkAgBigChAVBAUcNACAGQbQFaiEUIAZBqAVqIQsgBkGcBWohCkP//39/IRdBACENA0ACQAJAAkACQAJAAkACQAJAAkAgBigCiAUiCCAGKAJkIgNJBEAgBioCjAUhGSAKIAhBNGwiByAGKAJgaiIDKQIMNwIAIAsgAykCGDcCACAUIAMpAiQ3AgAgBkGYBWogA0EIaigCADYCACAKQQhqIANBFGooAgA2AgAgC0EIaiADQSBqKAIANgIAIBRBCGogA0EsaigCADYCACAGIAMpAgA3A5AFIAYgAy0AMCIDOgDABSADDQggBkHEBWogBkGAAWogASACIAsQzQMgBigCWCITIAYoAlBGBEAgBkHQAGpBtI/DABCVCAsgBigCVCATQSRsaiIFIAb9AALEBf0LAgAgBUEgaiAGQcQFaiIDQSBqKAIANgIAIAVBEGogA0EQav0AAgD9CwIAIAYgE0EBaiIFNgJYIAggESAGKgLEBSAGKgKoBZQgBioCyAUgBioCrAWUkiADQQhqKgIAIAYqArAFlJIiGiAXXSIDGyERIAYoAmQhCSAZIBogFyADGyIXkkMAAEg3XUUEQCAIIAlPDQIgBigCYCAHakEBOgAwIAYoApwFIg8gBigCZCIJTw0DIAYoAmAiAyAPQTRsaiAGKAKQBRD+BiEHIAYoAqAFIgwgCU8NBCADIAxBNGxqIAYoApQFEP4GIQUgBigCpAUiCCAJTw0FIAMgCEE0bGogBigCmAUQ/gYhAyAGQdAAaiIJIBMgDyAHEMACIAkgEyAMIAUQwAIgCSATIAggAxDAAiAGKAJwIgVFDRAgGYwhGiAGKAJkIRUgBigCbCIDQQhqIQcgAyAFQQN0aiEMA0AgByEJAkACQAJAIAYoAmQiECADKAIAIgVLBEAgBigCYCAFQTRsaiIHLQAwDQMgBiAFNgL0BSADKAIEIQUgBiATNgLwBSAGIBBBAWs2AvwFIAYgEEEBajYC+AUgBiAHIAVBAWpBA3BBAnRqKAIANgLsBSAGIAcgBUECakEDcEECdGooAgA2AugFIAZBgAZqIAYoAlQgBigCWCAGQegFaiAGQfQFahDeAiAHIAMoAgRBAWpBA3BBAnRqIBA2AgwgBigCZCIHIAYoAlxGBEAgEkG0kMMAEJsICyAGKAJgIgMgB0E0bGoiCCAG/QACgAb9CwIAIAhBIGogBkGABmoiBUEgav0AAgD9CwIAIAhBEGogBUEQav0AAgD9CwIAIAhBMGogBUEwaigCADYCACAGIAdBAWoiBTYCZCAGLQC0BkUNAyAFIBBNDQsgAyAQQTRsaiIIKAIAIgUgBigCWCIHTw0MIAYoAlQiAyAFQSRsaiIFKgIAIAgqAhiUIAUqAgQgCEEcaioCAJSSIAUqAgggCEEgaioCAJSSIhkgGl0NDSAZQwAAoLVdIgUNFSAZjCEZIAYoAnwiAyAGKAJ0RgRAIA5BqNrCABC0CAsgGCAZIAUbIRggFiAQIAUbIRYgBigCeCIPIANBA3RqIgUgGTgCBCAFIBA2AgAgBiADQQFqNgJ8IAMNAUEAIQUMAgsgBSAQQaSQwwAQhQsACwNAIBggDyADQQFrIghBAXYiBUEDdGoiB0EEaioCAF5FBEAgAyEFDAILIA8gA0EDdGogBykCADcCACAFIQMgCEEBSw0ACwsgDyAFQQN0aiIDIBg4AgQgAyAWNgIACyAJIAkgDEdBA3RqIQcgDCAJIgNHDQALDAoLIAkgEUsEQCAGQYAGaiIBIAYoAmAgEUE0bGogBigCVCAFELwHIAZB2AZqIAFBCGooAgA2AgAgBiAGKQKABjcD0AYMDQsgESAJQeSQwwAQhQsACyAIIANBpI/DABCFCwALIAggCUHEj8MAEIULAAsgDyAJQdSPwwAQhQsACyAMIAlB5I/DABCFCwALIAggCUH0j8MAEIULAAsgECAFQcSQwwAQhQsACyAFIAdB1JDDABCFCwALIAZBuAZqIgEgBkGQBWogAyAHELwHIAZB2AZqIAFBCGooAgA2AgAgBiAGKQK4BjcD0AYMBAsgBkGEBWogDhCpBCAGKAKEBQ0BDAILIAYoAmQiAyAVRg0FIAMgFU0NAyAGKAJgIBVBNGxqIANBAWs2AhQgBigCZCIDRQ0EIAYoAmAgA0E0bGoiA0E0Rg0EIANBJGsgFTYCACAGQQA2AnAgDUHkAEYNASAGQYQFaiAOEKkEIA1BAWohDSAGKAKEBQ0ACwsgBigCZCIBIBFLBEAgBkGABmoiASAGKAJgIBFBNGxqIAYoAlQgBigCWBC8ByAGQdgGaiABQQhqKAIANgIAIAYgBikCgAY3A9AGDAELIBEgAUH0kMMAEIULAAsgAEEIaiAGQdgGaigCADYCACAAIAYpA9AGNwIAIABBAToADAwDCyAVIANBhJDDABCFCwALQZSQwwAQ8g4ACyAAQQE6AAwgACAEKQIANwIAIABBCGogBEEIaigCADYCAAsgBigCUCIABEAgBigCVCAAQSRsQQQQ6A4LIAYoAlwiAARAIAYoAmAgAEE0bEEEEOgOCyAGKAJoIgAEQCAGKAJsIABBA3RBBBDoDgsgBigCdCIARQ0BIAYoAnggAEEDdEEEEOgODAELIAYqAtQEIRggBioC0AQhFyAAIAYqAtgEOAIIIAAgGDgCBCAAIBc4AgAgAEEAOgAMCyAGQZAHaiQAC64rAh9/BH4jAEGgCmsiBSQAAkACQAJAAkACQAJAAkAgASkDACIiQgBSBEAgASkDCCIjQgBSBEAgASkDECIkQgBSBEAgIiAkfCIlICJaBEAgIiAjWgRAIAEsABohFCABLgEYIQEgBSAiPgIAIAVBAUECICJCgICAgBBUIgMbNgKgASAFQQAgIkIgiKcgAxs2AgQgBUEIakEAQZgB/AsAIAUgIz4CpAEgBUEBQQIgI0KAgICAEFQiAxs2AsQCIAVBACAjQiCIpyADGzYCqAEgBUGsAWpBAEGYAfwLACAFICQ+AsgCIAVBAUECICRCgICAgBBUIgMbNgLoAyAFQQAgJEIgiKcgAxs2AswCIAVB0AJqQQBBmAH8CwAgBUHwA2pBAEGcAfwLACAFQQE2AuwDIAVBATYCjAUgAawgJUIBfXl9QsKawegEfkKAoc2gtAJ8QiCIpyIDwSEQAkAgAUEATgRAIAUgARDaARogBUGkAWogARDaARogBUHIAmogARDaARoMAQsgBUHsA2pBACABa8EQ2gEaCwJAIBBBAEgEQCAFQQAgEGtB//8DcSIBEMcBIAVBpAFqIAEQxwEgBUHIAmogARDHAQwBCyAFQewDaiADQf//AXEQxwELIAVB/AhqIAVBpAH8CgAAAkACQAJAAkAgBSgC6AMiByAFKAKcCiIBIAEgB0kbIgNBKE0EQCADRQRAQQAhAwwECyADQQFxIQogA0EBRw0BDAILDAwLIANBPnEhDSAFQfwIaiEBIAVByAJqIQgDQCABIAQgASgCACIMIAgoAgBqIgRqIgs2AgAgAUEEaiISKAIAIhMgCEEEaigCAGoiCSAEIAxJIAQgC0tyaiEEIBIgBDYCACAJIBNJIAQgCUlyIQQgCEEIaiEIIAFBCGohASANIAZBAmoiBkcNAAsLIAoEQCAGQQJ0IgYgBUH8CGpqIgkoAgAhASAJIAQgASAFQcgCaiAGaigCAGoiBGoiBjYCACABIARLIAQgBktyIQQLIARFDQAgA0EoRg0BIAVB/AhqIANBAnRqQQE2AgAgA0EBaiEDCyAFIAM2ApwKIAMgBSgCjAUiASABIANJGyIBQSlJBEAgAUECdCEBAkACQAJ/AkADQCABRQ0BIAFBBGsiASAFQewDamooAgAiAyABIAVB/AhqaigCACIERg0ACyADIARLIAMgBElrDAELQX9BACABGwsgFE4EQCAFKAKgASIGQSlPDQICQCAGRQRAQQAhBgwBCyAGQQFrQf////8DcSIBQQFqIgNBA3EhCAJAIAFBA0kEQCAFIQFCACEjDAELIANB/P///wdxIQQgBSEBQgAhIwNAIAEgATUCAEIKfiAjfCIiPgIAIAFBBGoiAzUCAEIKfiAiQiCIfCEiIAMgIj4CACABQQhqIgM1AgBCCn4gIkIgiHwhIiADICI+AgAgAUEMaiIDNQIAQgp+ICJCIIh8ISIgAyAiPgIAICJCIIghIyABQRBqIQEgBEEEayIEDQALCyAIBEADQCABIAE1AgBCCn4gI3wiIj4CACABQQRqIQEgIkIgiCEjIAhBAWsiCA0ACwsgIkKAgICAEFQNACAGQShGDREgBSAGQQJ0aiAjPgIAIAZBAWohBgsgBSAGNgKgASAFKALEAiIDQSlPDQ0gBQJ/QQAgA0UNABogA0EBa0H/////A3EiAUEBaiIEQQNxIQgCQCABQQNJBEAgBUGkAWohAUIAISIMAQsgBEH8////B3EhBCAFQaQBaiEBQgAhIgNAIAEgATUCAEIKfiAifCIiPgIAIAFBBGoiBjUCAEIKfiAiQiCIfCEiIAYgIj4CACABQQhqIgY1AgBCCn4gIkIgiHwhIiAGICI+AgAgAUEMaiIGNQIAQgp+ICJCIIh8ISMgBiAjPgIAICNCIIghIiABQRBqIQEgBEEEayIEDQALCyAIBEADQCABIAE1AgBCCn4gInwiIz4CACABQQRqIQEgI0IgiCEiIAhBAWsiCA0ACwsgAyIBICNCgICAgBBUDQAaIAFBKEYNESAFQaQBaiABQQJ0aiAiPgIAIAFBAWoLNgLEAiAFIAcEfyAHQQFrQf////8DcSIBQQFqIgNBA3EhCAJAIAFBA0kEQCAFQcgCaiEBQgAhIgwBCyADQfz///8HcSEEIAVByAJqIQFCACEiA0AgASABNQIAQgp+ICJ8IiI+AgAgAUEEaiIDNQIAQgp+ICJCIIh8ISIgAyAiPgIAIAFBCGoiAzUCAEIKfiAiQiCIfCEiIAMgIj4CACABQQxqIgM1AgBCCn4gIkIgiHwhIyADICM+AgAgI0IgiCEiIAFBEGohASAEQQRrIgQNAAsLIAgEQANAIAEgATUCAEIKfiAifCIjPgIAIAFBBGohASAjQiCIISIgCEEBayIIDQALCyAjQoCAgIAQVARAIAUgBzYC6AMMAwsgB0EoRg0RIAVByAJqIAdBAnRqICI+AgAgB0EBagVBAAs2AugDDAELIBBBAWohEAsgBUGQBWoiAyAFQewDaiIBQaQB/AoAACADQQEQ2gEhFSAFQbQGaiIDIAFBpAH8CgAAIANBAhDaASEWIAVB2AdqIgMgAUGkAfwKAAACQAJAAkACQAJAIANBAxDaASIZKAKgASITIAUoAqABIgYgBiATSRsiB0EoTQRAIAVBjAVqIRogBUGwBmohGyADQQRrIRwgFSgCoAEhFyAWKAKgASEYIAUoAowFIRJBACEKA0AgCiENIAdBAnQhAQJ/AkACQAJAA0AgAUUNASABIBxqIQMgBSABQQRrIgFqKAIAIgQgAygCACIDRg0ACyADIARLDQEMAgsgAUUNAQsgBiEHQQAMAQsgBwRAQQEhBCAHQQFxIQlBACEGIAdBAUcEQCAHQT5xIQogBSIBQdgHaiEIA0AgASABKAIAIgwgCCgCAEF/c2oiAyAEaiILNgIAIAFBBGoiDigCACIPIAhBBGooAgBBf3NqIgQgAyAMSSADIAtLcmohAyAOIAM2AgAgBCAPSSADIARJciEEIAhBCGohCCABQQhqIQEgCiAGQQJqIgZHDQALCyAJBEAgBkECdCIDIAVqIgYoAgAhASAGIAEgAyAZaigCAEF/c2oiAyAEaiIENgIAIAEgA0sgAyAES3IhBAsgBEUNFQsgBSAHNgKgAUEICyEJIBggByAHIBhJGyIDQSlPDRIgA0ECdCEBAkACQAJAA0AgAUUNASABIBtqIQQgBSABQQRrIgFqKAIAIgYgBCgCACIERg0ACyAEIAZNDQEgByEDDAILIAFFDQAgByEDDAELIAMEQEEBIQQgA0EBcSEKQQAhBiADQQFHBEAgA0E+cSEMIAUiAUG0BmohCANAIAEgASgCACILIAgoAgBBf3NqIgcgBGoiDjYCACABQQRqIg8oAgAiESAIQQRqKAIAQX9zaiIEIAcgC0kgByAOS3JqIQcgDyAHNgIAIAQgEUkgBCAHS3IhBCAIQQhqIQggAUEIaiEBIAwgBkECaiIGRw0ACwsgCgRAIAZBAnQiByAFaiIGKAIAIQEgBiABIAcgFmooAgBBf3NqIgcgBGoiBDYCACAEIAdJIAEgB0tyIQQLIARFDRULIAUgAzYCoAEgCUEEciEJCyAXIAMgAyAXSRsiB0EpTw0DIAdBAnQhAQJAAkACQANAIAFFDQEgASAaaiEEIAUgAUEEayIBaigCACIGIAQoAgAiBEYNAAsgBCAGTQ0BIAMhBwwCCyABRQ0AIAMhBwwBCyAHBEBBASEEIAdBAXEhCkEAIQYgB0EBRwRAIAdBPnEhDCAFIgFBkAVqIQgDQCABIAEoAgAiCyAIKAIAQX9zaiIDIARqIg42AgAgAUEEaiIPKAIAIhEgCEEEaigCAEF/c2oiBCADIAtJIAMgDktyaiEDIA8gAzYCACAEIBFJIAMgBElyIQQgCEEIaiEIIAFBCGohASAMIAZBAmoiBkcNAAsLIAoEQCAGQQJ0IgMgBWoiBigCACEBIAYgASADIBVqKAIAQX9zaiIDIARqIgQ2AgAgASADSyADIARLciEECyAERQ0VCyAFIAc2AqABIAlBAmohCQsgEiAHIAcgEkkbIgNBKU8NEiADQQJ0IQECQAJAAkADQCABRQ0BIAUgAUEEayIBaigCACIEIAEgBUHsA2pqKAIAIgZGDQALIAQgBk8NASAHIQMMAgsgAUUNACAHIQMMAQsgAwRAQQEhBCADQQFxIQpBACEGIANBAUcEQCADQT5xIQwgBSIBQewDaiEIA0AgASABKAIAIgsgCCgCAEF/c2oiByAEaiIONgIAIAFBBGoiDygCACIRIAhBBGooAgBBf3NqIgQgByALSSAHIA5LcmohByAPIAc2AgAgBCARSSAEIAdLciEEIAhBCGohCCABQQhqIQEgDCAGQQJqIgZHDQALCyAKBEAgBkECdCIHIAVqIgYoAgAhASAGIAEgBUHsA2ogB2ooAgBBf3NqIgcgBGoiBDYCACAEIAdJIAEgB0tyIQQLIARFDRULIAUgAzYCoAEgCUEBaiEJCyANQRFGDQUgAiANaiIOIAlBMGo6AAAgBSgCxAIiByADIAMgB0kbIgFBKU8NFCANQQFqIQogAUECdCEBAn8CQANAIAFFDQEgBSABQQRrIgFqKAIAIgQgASAFQaQBamooAgAiBkYNAAsgBCAGSyAEIAZJawwBC0F/QQAgARsLIQEgBUH8CGogBUGkAfwKAAAgBSgC6AMiCyAFKAKcCiIEIAQgC0kbIglBKEsNBCABIQwCQCAJRQRAQQAhCQwBCyAJQQFxIRFBACEEQQAhBiAJQQFHBEAgCUE+cSEdIAVB/AhqIQEgBUHIAmohCANAIAEgBCABKAIAIh4gCCgCAGoiBGoiHzYCACABQQRqIiAoAgAiISAIQQRqKAIAaiIPIAQgHkkgBCAfS3JqIQQgICAENgIAIA8gIUkgBCAPSXIhBCAIQQhqIQggAUEIaiEBIB0gBkECaiIGRw0ACwsgEQRAIAZBAnQiBiAFQfwIamoiCCgCACEBIAggBCABIAVByAJqIAZqKAIAaiIEaiIGNgIAIAEgBEsgBCAGS3IhBAsgBEUNACAJQShGDRYgBUH8CGogCUECdGpBATYCACAJQQFqIQkLIAUgCTYCnAogCSASIAkgEksbIgFBKU8NFCABQQJ0IQECfwJAA0AgAUUNASABQQRrIgEgBUHsA2pqKAIAIgQgASAFQfwIamooAgAiBkYNAAsgBCAGSyAEIAZJawwBC0F/QQAgARsLIBROIgEgDCAUSCIERXFFBEAgAQ0SIAQNAwwRC0EAIQkgBQJ/QQAgA0UNABogA0EBa0H/////A3EiAUEBaiIEQQNxIQgCQCABQQNJBEAgBSEBQgAhIgwBCyAEQfz///8HcSEEIAUhAUIAISIDQCABIAE1AgBCCn4gInwiIj4CACABQQRqIgY1AgBCCn4gIkIgiHwhIiAGICI+AgAgAUEIaiIGNQIAQgp+ICJCIIh8ISIgBiAiPgIAIAFBDGoiBjUCAEIKfiAiQiCIfCEjIAYgIz4CACAjQiCIISIgAUEQaiEBIARBBGsiBA0ACwsgCARAA0AgASABNQIAQgp+ICJ8IiM+AgAgAUEEaiEBICNCIIghIiAIQQFrIggNAAsLIAMgI0KAgICAEFQNABogA0EoRg0WIAUgA0ECdGogIj4CACADQQFqCyIGNgKgAQJAIAdFDQAgB0EBa0H/////A3EiAUEBaiIDQQNxIQgCQCABQQNJBEAgBUGkAWohAUIAISMMAQsgA0H8////B3EhBCAFQaQBaiEBQgAhIwNAIAEgATUCAEIKfiAjfCIiPgIAIAFBBGoiAzUCAEIKfiAiQiCIfCEiIAMgIj4CACABQQhqIgM1AgBCCn4gIkIgiHwhIiADICI+AgAgAUEMaiIDNQIAQgp+ICJCIIh8ISIgAyAiPgIAICJCIIghIyABQRBqIQEgBEEEayIEDQALCyAIBEADQCABIAE1AgBCCn4gI3wiIj4CACABQQRqIQEgIkIgiCEjIAhBAWsiCA0ACwsgIkKAgICAEFQEQCAHIQkMAQsgB0EoRg0WIAVBpAFqIAdBAnRqICM+AgAgB0EBaiEJCyAFIAk2AsQCAkAgC0UEQEEAIQsMAQsgC0EBa0H/////A3EiAUEBaiIDQQNxIQgCQCABQQNJBEAgBUHIAmohAUIAISIMAQsgA0H8////B3EhBCAFQcgCaiEBQgAhIgNAIAEgATUCAEIKfiAifCIiPgIAIAFBBGoiAzUCAEIKfiAiQiCIfCEiIAMgIj4CACABQQhqIgM1AgBCCn4gIkIgiHwhIiADICI+AgAgAUEMaiIDNQIAQgp+ICJCIIh8ISMgAyAjPgIAICNCIIghIiABQRBqIQEgBEEEayIEDQALCyAIBEADQCABIAE1AgBCCn4gInwiIz4CACABQQRqIQEgI0IgiCEiIAhBAWsiCA0ACwsgI0KAgICAEFQNACALQShGDRYgBUHIAmogC0ECdGogIj4CACALQQFqIQsLIAUgCzYC6AMgEyAGIAYgE0kbIgdBKE0NAAsLIAdBKEHowsQAEPAOAAsgBUEBENoBGiAFKAKMBSIBIAUoAqABIgMgASADSxsiAUEpTw0DIAFBAnQhASAFQQRrIQMgBUHoA2ohBwNAIAFFDQ0gASAHaiEEIAEgA2ohBiABQQRrIQEgBigCACIGIAQoAgAiBEYNAAsgBCAGTQ0NDA4LIAdBKEHowsQAEPAOAAsgCUEoQejCxAAQ8A4AC0ERQRFB2JvEABCFCwALDA0LIAZBKEHowsQAEPAOAAsMCwsMCwtBiJzEAEE3QcCcxAAQ1gwAC0HQnMQAQTZBiJ3EABDWDAALQeyaxABBHEGIm8QAENYMAAtBvJrEAEEdQdyaxAAQ1gwAC0GQmsQAQRxBrJrEABDWDAALIAENAQsgAiAKaiEHQQAhCEF/IQECQAJAAkADQCABIA1GDQEgAUEBaiEBIAggDmohBCAIQQFrIgMhCCAELQAAQTlGDQALIAggDWoiASACakEBaiIHIActAABBAWo6AAAgAUECaiIBIApNDQEgASAKQaisxAAQ7w4ACyACQTE6AAACQCANRSIBDQAgAQ0AIAJBAWpBMCAN/AsACyAKQRFPDQEgB0EwOgAAIBBBAWohECANQQJqIQoMAgsgA0F/Rg0BIANBf3MiAUUNASADIA5qQQJqQTAgAfwLAAwBCyAKQRFB6JvEABCFCwALIApBEU0EQCAAIBA7AQggACAKNgIEIAAgAjYCACAFQaAKaiQADwsgCkERQfibxAAQ8A4ACyADQShB6MLEABDwDgALQfjCxABBGkHowsQAENYMAAsgAUEoQejCxAAQ8A4AC0EoQShB6MLEABCFCwALlkMDI39UewJ+IwBBgAVrIggkACAAKAIAIRZBfyEXAkACQAJAAkACQAJ7An9BfyABKAIAIhEuAXgiEEEASg0AGkF/IBZBf0YNABogESgCQEEBcUUNAyARKAJEIg4gAigCjANPDQIgAigCiAMgDkGAA2xqIg4oAgBBAUcNAiAOKAIEIBEoAkhHDQIgDigCGAshHSAAKAIEIQoCQCABKAIEIhUuAXgiCUEASg0AIApBf0YNACAVKAJAQQFxRQ0DIBUoAkQiDiACKAKMA08NAiACKAKIAyAOQYADbGoiDigCAEEBRw0CIA4oAgQgFSgCSEcNAiAOKAIYIRcLIAAoAgghD0F/IRgCf0F/IAEoAggiEi4BeCILQQBKDQAaQX8gD0F/Rg0AGiASKAJAQQFxRQ0DIBIoAkQiDiACKAKMA08NAiACKAKIAyAOQYADbGoiDigCAEEBRw0CIA4oAgQgEigCSEcNAiAOKAIYCyEOIAAoAgwhDAJAIAEoAgwiEy4BeCINQQBKDQAgDEF/Rg0AIBMoAkBBAXFFDQMgEygCRCIBIAIoAowDTw0CIAIoAogDIAFBgANsaiIBKAIAQQFHDQIgASgCBCATKAJIRw0CIAEoAhghGAtBfyEZAn9BfyAQQQBIDQAaQX8gFkF/Rg0AGiARKAJMQQFxRQ0FIBEoAlAiASACKAKMA08NBCACKAKIAyABQYADbGoiASgCAEEBRw0EIAEoAgQgESgCVEcNBCABKAIYCyEeAkAgCUEASA0AIApBf0YNACAVKAJMQQFxRQ0FIBUoAlAiASACKAKMA08NBCACKAKIAyABQYADbGoiASgCAEEBRw0EIAEoAgQgFSgCVEcNBCABKAIYIRkLQX8hGgJ/QX8gC0EASA0AGkF/IA9Bf0YNABogEigCTEEBcUUNBSASKAJQIgEgAigCjANPDQQgAigCiAMgAUGAA2xqIgEoAgBBAUcNBCABKAIEIBIoAlRHDQQgASgCGAshFgJAIA1BAEgNACAMQX9GDQAgEygCTEEBcUUNBSATKAJQIgEgAigCjANPDQQgAigCiAMgAUGAA2xqIgEoAgBBAUcNBCABKAIEIBMoAlRHDQQgASgCGCEaCyADKAIEIQEgAygCCCECIAj9DAAAAAAAAAAAAAAAAAAAAAD9CwTgBCAIIAEgF0EFdGogCEHgBGoiCiACIBdLIg8b/QAEACI5/QsEECAIIAEgHUEFdGoiDCAKIAIgHUsiChv9AAQAIjT9CwQAIApFBED9DAAAAAAAAAAAAAAAAAAAAAAMAQsgDP0ABBALIT0gDkEFdCEMIBhBBXQhECACIA5LIQogDwRAIAEgF0EFdGopAxAhfwsgASAMaiEMIAIgGEshDyABIBBqIRAgCgRAIAEgDkEFdGr9AAQQIT8LIAwgCEHgBGoiDCAKGyEKIBAgDCAPGyEMIA8EQCABIBhBBXRq/QAEECFACyAI/QACDCFEIAj9AAMIIUUgCP0AAgQhQyAK/QAEACE7IAz9AAQAIT4gCCA9/QsEgAIgCCB/NwOQAiAI/QAChAIhOiADKAIUIQogAygCECEDIAggGDYCjAIgCCAONgKIAiAIIBc2AoQCIAggHTYCgAIgCCADIAogCEGAAmoQhQIgCP0MAAAAAAAAAAAAAAAAAAAAAP0LBMAEIAggASAZQQV0aiAIQcAEaiIPIAIgGUsiDBv9AAQAIiz9CwTwBCAIIAEgHkEFdGoiECAPIAIgHksiDxv9AAQAIi39CwTgBCAPBEAgEP0ABBAhOAsgGkEFdCEQIBZBBXQhCSACIBZLIQ8gDARAIAEgGUEFdGopAxAhgAELIAIgGkshAiABIBBqIQwgASAJaiEQIA8EQCABIBZBBXRq/QAEECE8CyAMIAhBwARqIgwgAhshCSAQIAwgDxshDyACBEAgASAaQQV0av0ABBAhNgsgCf0ABAAhNSAP/QAEACEwIAj9AAPoBCExIAj9AALkBCEyIAj9AALsBCEuIAgggAE3A5ACIAggOP0LBIACIAj9AAKEAiE3IAggGjYC7AQgCCAWNgLoBCAIIBk2AuQEIAggHjYC4AQgCEGAAmogAyAKIAhB4ARqIgEQhQIgCP0ABEAhaCAI/QAEUCFpIAj9AARgIWogCP0ABMACIWsgCP0ABNACIWwgCP0ABOACIW0gCEH0BGogFUHwAGooAgA2AgAgCCAVKQJoNwLsBCAIIBFB8ABqKAIANgLoBCAIIBEpAmg3A+AEIBNB8ABqIBJB8ABqIAj9AAPoBCIvIC/9GwP9HAH9VgIAAv1WAgADIS8gE0HsAGogEkHsAGogCP0AAuQEIisgK/0bA/0cAf1WAgAC/VYCAAMhKyATQegAaiASQegAaiAI/QAE4AQiSSBJ/RsD/RwB/VYCAAL9VgIAAyFJIAH9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIAj9AATgBCFLIAH9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIAj9AATgBCFMIAH9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIAj9AATgBCFNIBEoAmAhFCAB/QwAAAAAAAAAAAAAAAAAAAAA/QsEACAI/QAE4AQhTiAB/QwAAAAAAAAAAAAAAAAAAAAA/QsEAEEAIQMgFEECdiAUQQNxQQBHaiIlBEAgRCA5/Q0AAQIDHB0eHwABAgMAAQIDIDv9DQABAgMEBQYHHB0eHwABAgMgPv0NAAECAwQFBgcICQoLHB0eHyFfID0gf6f9HAEgP/0NAAECAwQFBgcQERITAAECAyBA/Q0AAQIDBAUGBwgJCgsQERITIWAgOiB/QiCIp/0cASA//Q0AAQIDBAUGBxQVFhcAAQIDIED9DQABAgMEBQYHCAkKCxQVFhchYSBNIC/95QEiP/0MAAAAgAAAAIAAAACAAAAAgP1O/QwAAIA/AACAPwAAgD8AAIA//VAhRCBLIEn95QEiQCA0IDn9DQABAgMQERITAAECAwABAgMgO/0NAAECAwQFBgcQERITAAECAyA+/Q0AAQIDBAUGBwgJCgsQERITIm4gLSAs/Q0AAQIDEBESEwABAgMAAQIDIDD9DQABAgMEBQYHEBESEwABAgMgNf0NAAECAwQFBgcICQoLEBESEyJv/eUBIjT95gEgQyA5/Q0AAQIDFBUWFwABAgMAAQIDIDv9DQABAgMEBQYHFBUWFwABAgMgPv0NAAECAwQFBgcICQoLFBUWFyJwIDIgLP0NAAECAxQVFhcAAQIDAAECAyAw/Q0AAQIDBAUGBxQVFhcAAQIDIDX9DQABAgMEBQYHCAkKCxQVFhcicf3lASJDIEwgK/3lASI9/eYB/eQBIEUgOf0NAAECAxgZGhsAAQIDAAECAyA7/Q0AAQIDBAUGBxgZGhsAAQIDID79DQABAgMEBQYHCAkKCxgZGhsiciAxICz9DQABAgMYGRobAAECAwABAgMgMP0NAAECAwQFBgcYGRobAAECAyA1/Q0AAQIDBAUGBwgJCgsYGRobInP95QEiOyA//eYB/eQBITkgOyA/IDn95gH95QEiRSBF/eYBIDQgQCA5/eYB/eUBIjsgO/3mASBDID0gOf3mAf3lASI5IDn95gH95AH95AH94wEiPv0MF7fROBe30TgXt9E4F7fROP1DITQgQCA9ID395gEgTv0MAACAvwAAgL8AAIC/AACAv/3kASA/IET95AH95wEiQ/3mASBE/eQBIDkgPv3nASA0/VIiOf3mASA9IEAgPf3mASBD/eYBIDsgPv3nASA0/VIiO/3mAf3lASFEID8gO/3mASBAIAj9AATgBCA9/eUBIEUgPv3nASA0/VIiPv3mAf3lASFFID0gPv3mASA/IDn95gH95QEhQyAuICz9DQABAgMcHR4fAAECAwABAgMgMP0NAAECAwQFBgccHR4fAAECAyA1/Q0AAQIDBAUGBwgJCgscHR4fIWIgOCCAAaf9HAEgPP0NAAECAwQFBgcQERITAAECAyA2/Q0AAQIDBAUGBwgJCgsQERITIWMgNyCAAUIgiKf9HAEgPP0NAAECAwQFBgcUFRYXAAECAyA2/Q0AAQIDBAUGBwgJCgsUFRYXIWRBkR0hD0EAIQxBBCEBQQAhAgNAIAIhCiABIQICQAJAAkAgCiAUTQRAIBQgESgCYCIBSw0KIBQgFSgCYCIBSw0KIBQgEigCYCIBSw0KIBQgEygCYCIBSw0KIApBAnYiASAHTw0BIAEgBU8NAiARKAJcIR8gFSgCXCEgIBIoAlwhISATKAJcISIgBiABQbAdbGoiCyA//QsEICALID39CwQQIAsgQP0LBAAgCyAI/QAE8AEiMP0LBFAgCyAI/QAE4AEiNf0LBEAgCyAI/QAE0AEiLP0LBDAgCyAaNgL8HCALIBY2AvgcIAsgGTYC9BwgCyAeNgLwHCALIBg2AuwcIAsgDjYC6BwgCyAXNgLkHCALIB02AuAcIAsgCP0ABPADIjT9CwSAASALIAj9AATgAyI4/QsEcCALIAj9AATQAyI8/QsEYCALQQQgFCAKayIBIAFBBE8bIiY6AJAdIAsgO/0LBLABIAsgOf0LBMABIAsgPv0LBNABIAsgAP0AAgD9CwKAHSAKIBRGDQMgLCA8/eQBIiwgQ/3mASBD/eYBIDUgOP3kASI1IEX95gEgRf3mAf3kASAwIDT95AEiMCBE/eYBIET95gH95AEhdCAsIDv95gEgO/3mASA1IDn95gEgOf3mAf3kASAwID795gEgPv3mAf3kASF1IEAgQCAs/eYB/eYBID0gPSA1/eYB/eYB/eQBID8gPyAw/eYB/eYB/eQBIXZBASEjIAQhASAMIgohJCAPIRADQCAIIAMgIGoiCf0ABAAiSf0LBJAEIAggAyAfaiIN/QAEACIw/QsEgAQgCCAJQRBq/QAEACJL/QsEsAQgCCANQRBq/QAEACIs/QsEoAQgCCAJQSBq/QAEACI3/QsE0AQgCCANQSBq/QAEACJK/QsEwAQgAyAiaiIb/QAEACFMIAMgIWoiHP0ABAAhTSAbQSBq/QAEACEvIBxBIGr9AAQAISsgG0EQav0ABAAhTiAcQRBq/QAEACFUIAggDUEwav0ABAD9CwTgBCAIIAlBMGr9AAQAImX9CwTwBCAcQTBq/QAEACFmIBtBMGr9AAQAIWcgCP0AAuQEIXcgCP0AAqQEIXggCP0AAowEIXkgCP0AA6gEIVUgCP0AAqwEIVYgCP0AA8gEIVcgCP0AAswEIU8gCP0AAoQEITUgCP0AA4gEITQgCP0AAsQEITggCC0A6AQhCSALICwgS/0NAAECAxAREhMAAQIDAAECAyBU/Q0AAQIDBAUGBxAREhMAAQIDIE79DQABAgMEBQYHCAkKCxAREhP9CwSgASAGIBBqIAkgZf0bAkEIdEGA/gNxIGb9GwJBEHRBgID8B3EgZ/0bAkEYdHJycjYAACAIQeAEaiIN/QwAAAAAAAAAAAAAAAAAAAAA/QsEACAI/QAE4AQhPCAN/QwAAAAAAAAAAAAAAAAAAAAA/QsEACAI/QAE4AQhRiAN/QwAAAAAAAAAAAAAAAAAAAAA/QsEACAI/QAE4AQhRyAI/QAE8AIhWCAI/QAEgAMhNiAI/QAEoAMhWSAI/QAEwAMhWiAI/QAEkAMhOiAI/QAEsAMhLSAI/QAEcCFQIAj9AASAASExIAj9AASgASFRIAj9AATAASFSIAj9AASQASEyIAj9AASwASEuIA39DAAAAAAAAAAAAAAAAAAAAAD9CwQAIAj9AATgBCFbIAYgJGoiCUHgA2ogOCA3/Q0AAQIDFBUWFwABAgMAAQIDICv9DQABAgMEBQYHFBUWFwABAgMgL/0NAAECAwQFBgcICQoLFBUWF/0LBAAgCUGAA2ogMiA/IDUgSf0NAAECAxQVFhcAAQIDAAECAyBN/Q0AAQIDBAUGBxQVFhcAAQIDIEz9DQABAgMEBQYHCAkKCxQVFhciXCBp/eUBIiz95gEgPSA0IEn9DQABAgMYGRobAAECAwABAgMgTf0NAAECAwQFBgcYGRobAAECAyBM/Q0AAQIDBAUGBwgJCgsYGRobIl0gav3lASI1/eYB/eUBIjP95gEgLiBAIDX95gEgPyAwIEn9DQABAgMQERITAAECAwABAgMgTf0NAAECAwQFBgcQERITAAECAyBM/Q0AAQIDBAUGBwgJCgsQERITIl4gaP3lASIw/eYB/eUBIkH95gH95AEgUiA9IDD95gEgQCAs/eYB/eUBIkL95gH95AEiev0LBAAgCUHwAmogMyAx/eYBIEEgUf3mAf3kASBCIC795gH95AEie/0LBAAgCUHgAmogMyBQ/eYBIEEgMf3mAf3kASBCIDL95gH95AEifP0LBAAgCUHQAmogXiBr/eUBIjQgRiA9/eUBIkj95gEgXCBs/eUBIjggPCBA/eUBIlP95gH95QEiRv0LBAAgCUHAAmogXSBt/eUBIjwgU/3mASA0IEcgP/3lASJT/eYB/eUBIkf9CwQAIAlBsAJqIDggU/3mASA8IEj95gH95QEiSP0LBAAgCUGgAmogQv0LBAAgCUGQAmogQf0LBAAgCUGAAmogM/0LBAAgCUGwA2ogSCA6/eYBIEcgLf3mAf3kASBGIFr95gH95AEiU/0LBAAgCUGgA2ogSCA2/eYBIEcgWf3mAf3kASBGIC395gH95AEiff0LBAAgCUGQA2ogSCBY/eYBIEcgNv3mAf3kASBGIDr95gH95AEifv0LBAAgCUGABGr9DAAAAAAAAAAAAAAAAAAAAAD9DAAAgD8AAIA/AACAPwAAgD8gdiAzIHz95gEgQSB7/eYB/eQBIEIgev3mAf3kAf3kASBIIH795gEgRyB9/eYB/eQBIEYgU/3mAf3kAf3kASIz/ecBIDP9DAjlPB4I5TweCOU8HgjlPB79QyBb/QwI5TyeCOU8ngjlPJ4I5Tye/eQBIDP9Q/1O/VL9CwQAIAYgCmoiCUHwDmogTyA3/Q0AAQIDHB0eHwABAgMAAQIDICv9DQABAgMEBQYHHB0eHwABAgMgL/0NAAECAwQFBgcICQoLHB0eH/0LBAAgCUHgDmogVyA3/Q0AAQIDGBkaGwABAgMAAQIDICv9DQABAgMEBQYHGBkaGwABAgMgL/0NAAECAwQFBgcICQoLGBkaG/0LBAAgDf0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgCP0ABOAEITMgDf0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgCP0ABOAEIUEgDf0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgCP0ABOAEIUIgCUHADmogOyBVIEv9DQABAgMYGRobAAECAwABAgMgVP0NAAECAwQFBgcYGRobAAECAyBO/Q0AAQIDBAUGBwgJCgsYGRobIkb95gEgOSBWIEv9DQABAgMcHR4fAAECAwABAgMgVP0NAAECAwQFBgccHR4fAAECAyBO/Q0AAQIDBAUGBwgJCgscHR4fIkf95gH95AEgPiBKIDf9DQABAgMQERITAAECAwABAgMgK/0NAAECAwQFBgcQERITAAECAyAv/Q0AAQIDBAUGBwgJCgsQERITIkj95gH95AEiSv0LBAAgCUGADWoiGyBSIDAgOf3mASAsIDv95gH95QEiN/3mASAyICwgPv3mASA1IDn95gH95QEiL/3mASAuIDUgO/3mASAwID795gH95QEiK/3mAf3kAf3kASJV/QsEACAJQfAMaiIcIC4gN/3mASAxIC/95gEgUSAr/eYB/eQB/eQBIlb9CwQAIAlB4AxqIicgMiA3/eYBIFAgL/3mASAxICv95gH95AH95AEiV/0LBAAgCUGgDGogNCBBIDn95QEiT/3mASA4IDMgO/3lASJB/eYB/eUBIjP9CwQAIAlBwAtqIDf9CwQAIAlBsAtqICv9CwQAIAlBoAtqIC/9CwQAIAlBoA5qIEr9CwQAIAlBkAxqIDwgQf3mASA0IEIgPv3lASJC/eYB/eUBIkH9CwQAIAlBgAxqIDggQv3mASA8IE/95gH95QEiQv0LBAAgCUHgDWoiKCBaIDP95gEgOiBC/eYBIC0gQf3mAf3kAf3kASJK/QsEACAJQdANaiIpIC0gM/3mASA2IEL95gEgWSBB/eYB/eQB/eQBIk/9CwQAIAlBwA1qIiogOiAz/eYBIFggQv3mASA2IEH95gH95AH95AEiW/0LBAAgCUGgD2ogNyBV/eYBIC8gV/3mASArIFb95gH95AH95AEgdf3kASAzIEr95gEgQiBb/eYBIEEgT/3mAf3kAf3kAf3kAf0LBAAgDf0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgCP0ABOAEITMgDf0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgCP0ABOAEIUEgDf0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgCP0ABOAEIUIgCUHQDmogQyBG/eYBIEUgR/3mAf3kASBEIEj95gH95AEiSv0LBAAgCUGwDWogUiAwIEX95gEgLCBD/eYB/eUBIjf95gEgMiAsIET95gEgNSBF/eYB/eUBIi/95gEgLiA1IEP95gEgMCBE/eYB/eUBIiv95gH95AH95AEiUv0LBAAgCUGgDWogLiA3/eYBIDEgL/3mASBRICv95gH95AH95AEiUf0LBAAgCUGQDWogMiA3/eYBIFAgL/3mASAxICv95gH95AH95AEiUP0LBAAgCUHQDGogNCBBIEX95QEiLv3mASA4IDMgQ/3lASIy/eYB/eUBIjH9CwQAIAlB8AtqIDf9CwQAIAlB4AtqICv9CwQAIAlB0AtqIC/9CwQAIAlBsA5qIEr9CwQAIAlBwAxqIDwgMv3mASA0IEIgRP3lASIz/eYB/eUBIjL9CwQAIAlBsAxqIDggM/3mASA8IC795gH95QEiLv0LBAAgCUGQDmogWiAx/eYBIDogLv3mASAtIDL95gH95AH95AEiM/0LBAAgCUGADmogLSAx/eYBIDYgLv3mASBZIDL95gH95AH95AEiLf0LBAAgCUHwDWogOiAx/eYBIFggLv3mASA2IDL95gH95AH95AEiNv0LBAAgCUGwD2ogNyBS/eYBIC8gUP3mASArIFH95gH95AH95AEgdP3kASAxIDP95gEgLiA2/eYBIDIgLf3mAf3kAf3kAf3kAf0LBAAgCUHAD2ogLyAn/QAEAP3mASArIBz9AAQA/eYB/eQBIDcgG/0ABAD95gH95AEgLiAq/QAEAP3mASAyICn9AAQA/eYB/eQBIDEgKP0ABAD95gH95AH95AEiNiA2/eQB/QsEACAI/QAEYCEuIAj9AAQwITYgCP0ABEAhLSAI/QAEACE6IAj9AAQgITIgCP0ABFAhMSAI/QAEECErIA39DAAAAAAAAAAAAAAAAAAAAAD9CwQAIAj9AATgBCEvIA39DAAAAAAAAAAAAAAAAAAAAAD9CwQAIAj9AATgBCEzIA39DAAAAAAAAAAAAAAAAAAAAAD9CwQAIFwgMf3lASI3IC8gOv3lASI6/eYBIF4gLf3lASIvIDMgK/3lASIt/eYB/eUBIjEgMf3kASExIC8gCP0ABOAEIDL95QEiMv3mASBdIC795QEiKyA6/eYB/eUBIi4gLv3kASEuIAFB4ABqICsgNiAx/eYBIDogLv3mASAtICsgLf3mASA3IDL95gH95QEiKyAr/eQBIiv95gH95QH95AH95AH9CwQAIAFB0ABqIDcgNiAu/eYBIDIgK/3mASA6IDH95gH95QH95AH95AH9CwQAIAFBQGsgLyA2ICv95gEgLSAx/eYBIDIgLv3mAf3lAf3kAf3kAf0LBAAgCP0ABLACITYgCP0ABMACITogCP0ABIACIS0gCP0ABKACITEgCP0ABNACITIgCP0ABJACIS4gCP0ABOACITcgDf0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgCP0ABOAEIS8gDf0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgCP0ABOAEISsgDf0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgCP0ABOAEITMgAUGgAWogeSBJ/Q0AAQIDHB0eHwABAgMAAQIDIE39DQABAgMEBQYHHB0eHwABAgMgTP0NAAECAwQFBgcICQoLHB0eH/0LBAAgAUEgaiBI/QsEACABQRBqIEf9CwQAIAEgRv0LBAAgAUEwaiA/ICwgX/3mASAwIGD95gH95QEgcv3kASA4IGL95gEgNCBj/eYB/eUBIHP95AH95QH95gEgQCA1IGD95gEgLCBh/eYB/eUBIG795AEgPCBj/eYBIDggZP3mAf3lASBv/eQB/eUB/eYBID0gMCBh/eYBIDUgX/3mAf3lASBw/eQBIDQgZP3mASA8IGL95gH95QEgcf3kAf3lAf3mAf3kAf3kASB4IEv9DQABAgMUFRYXAAECAwABAgMgVP0NAAECAwQFBgcUFRYXAAECAyBO/Q0AAQIDBAUGBwgJCgsUFRYXIiz9DAAAgD8AAIA/AACAPwAAgD/9DAAAAAAAAAAAAAAAAAAAAAAgLP0MAAAAAAAAAAAAAAAAAAAAAP1E/VL9DAAAgD8AAIA/AACAPwAAgD/9DAAAAAAAAAAAAAAAAAAAAAAgLP0MAACAPwAAgD8AAIA/AACAP/1G/VIgdyBl/Q0AAQIDFBUWFwABAgMAAQIDIGb9DQABAgMEBQYHFBUWFwABAgMgZ/0NAAECAwQFBgcICQoLFBUWF/0M////f////3////9/////f/1O/QwAAAAAAAAAAAAAAAAAAAAA/Tj9Uv3mAf3mAf0LBAAgXCAy/eUBIjwgLyAt/eUBIiz95gEgXiA6/eUBIjogKyAu/eUBIjX95gH95QEiMCAw/eQBITAgOiAzIDH95QEiNP3mASBdIDf95QEiLSAs/eYB/eUBIjggOP3kASE4IAFBkAFqIC0gNiAw/eYBICwgOP3mASA1IC0gNf3mASA8IDT95gH95QEiLSAt/eQBIi395gH95QH95AH95AH9CwQAIAFBgAFqIDwgNiA4/eYBIDQgLf3mASAsIDD95gH95QH95AH95AH9CwQAIAFB8ABqIDogNiAt/eYBIDUgMP3mASA0IDj95gH95QH95AH95AH9CwQAICJBQGshIiAhQUBrISEgIEFAayEgIB9BQGshHyABQbABaiEBIApBsARqIQogJEGwAmohJCAQQQRqIRAgIyAmSSEJICNBAWohIyAJDQALDAMLIAogFEHYxcIAEPEOAAsgASAHQYijwgAQhQsACyABIAVBmKPCABCFCwALIANBgAJqIQMgBEHABWohBCAMQbAdaiEMIA9BsB1qIQ8gAkEEaiEBICVBAWsiJQ0ACwsgCEGABWokAA8LQdCLwgBBE0GoxcIAENELAAtBmMXCABDyDgALQdCLwgBBE0HIxcIAENELAAtBuMXCABDyDgALIBQgAUHYxcIAEPAOAAv0LgMefyJ9BX4jAEGAEGsiCSQAAkACQAJAAkACfwJAAkAgBigCACIIRQ0AIAlBGGogCCAGKAIEKAIYEQAAIAlBsAdqIAkoAhgiCCAJKAIcKAIMEQAAIAhFDQAgCSkDsAdCnbbKlpjZ64NQhSAJKQO4B0KRkMyF2qDzmEqFhFANAQtBIEEIEJEOIghFDQMgCEEAOgAYIAhCidm54o7TvpcINwMQIAhBoNzCAP0AAwD9CwMAAkAgBigCACILRQ0AIAYoAgQiCigCACINBEAgCyANEQYACyAKKAIEIg1FDQAgCyANIAooAggQ6A4LIAZBzIbDADYCBCAGIAg2AgBBzIbDAAwBCyAGKAIAIghFDQEgBigCBAshBiAJQRBqIAggBigCHBEAACAJQbAHaiAJKAIQIg0gCSgCFCgCDBEAAAJAIA1FDQAgCSkDsAdCnbbKlpjZ64NQhSAJKQO4B0KRkMyF2qDzmEqFhEIAUg0AIA0gDS0AGEF/c0EBcSITOgAYIAUoAgghFCAFKAIEIRogBUIENwIEIAUoAgAhHCAFQQA2AgBD//9/fyEuQ///f/8hLwJAIAEoAghFBEBD//9//yEmQ///f/8hKEP//39/ISdD//9/fyErDAELQ///f/8hJkP//3//IShD//9/fyEnQ///f38hKwJAAkAgASgCBCIGKAI8Qf////8DcSAGKAIcQf////8DcWoOAgIAAQsgBioCGCEvIAYqAhQhJiAGKgIQISggBioCCCEuIAYqAgQhJyAGKgIAISsMAQsgBioCGCImIAYqAjgiJyAmICdgGyEvIAYqAhQiJiAGKgI0IicgJiAnYBshJiAGKgIQIicgBioCMCIoICcgKGAbISggBioCCCInIAYqAigiKyAnICtfGyEuIAYqAgQiJyAGKgIkIisgJyArXxshJyAGKgIAIisgBioCICIzICsgM18bISsLIAEqAmwhMyABKgJoITQgASoCZCE1IAlBJGogAiAAIAMoApQBEQEAQQQhECArIAkqAiQiLCArICxgGyIpICggCSoCMCIqICggKl8bIjZeDQQgJyAJKgIoIiggJyAoYBsiNyAmIAkqAjQiJyAmICdfGyI4Xg0EIC4gCSoCLCImICYgLl8bIi4gLyAJKgI4IisgKyAvYBsiL14NBCAJIC4gM5WO/AA2ArgOIAkgNyA0lY78ADYCtA4gCSApIDWVjvwANgKwDiAJIC8gM5WN/AA2ArgHIAkgOCA0lY38ADYCtAcgCSA2IDWVjfwANgKwByAJQTxqIgggASAJQbAOaiILIAlBsAdqIgYQngQgBiAIQfQG/AoAACALIAYQgAEgCSgCsA5BAUcNAyAzQwAAAD+UIjZDAAAgQZQiKSArkiErIDRDAAAAP5QiN0MAACBBlCI5ICeSIS4gNUMAAAA/lCI4QwAAIEGUIicgKpIhLyAmICmTITogKCA5kyE5ICwgJ5MhO0HYAEHMACAHGyEiIDdDCtcjPJIiP4whQCA2QwrXIzySIkGMIUIgOEMK1yM8kiJDjCFEIAAqAhghRSAAKgIUIUYgACoCECFHIAlB2A5qIgZBIGohHSAGQdgAaiEeIAZBzABqIR8gCUGYD2ohIANAAkACQAJAAkACQAJAIAktANQOIgZBwQBJBEACQCAGQZirwQBqLQAADgUHAAAABwALIAkqAtAOITwgCSoCzA4hPSAJKgLIDiE+IAkoAsQOIQogCSgCwA4hDiAJKAK8DiEQIAkoArgOISMgCSgCtA4hJCAJQeQPaiIMIAEQhgUgCSgC5A8hCCAJKALsDyEVIAkoAugPIQsgDCABEIYFQQAhDCANKAIEIg8gDSkDEEKCgICAEIUiSEIgiCJKIBAgCSgC8A8iEiAGQX9zQT9xQQAgBkE/a0H/AXFBAk8bIgZBAXEbIhZBASAIayIXaiASIAhBAWsiGGsiESAOIAkoAvQPIgggBkEEcRsiEkEBIAtrIhlqIAggC0EBayIbayIlIAogCSgC+A8gBkEQcRsiISAVQQFrIghrbGpsaiILQbfTsIV8c60iSX4gSEL/////D4MiSCAQIBggBkECcRsiFSAXaiARIA4gGyAGQQhxGyIXIBlqICUgCCAKIAZBIEkbIhggCGtsamxqIhFB3aHxy3xzrSJLfoUgSCBJfiBKIEt+hUIgiYUiSqciG3EhBiBKQhmIIktC/wCDQoGChIiQoMCAAX4hTCANKAIAIRkCQANAAkAgBiAZaikAACJJIEyFIkhCgYKEiJCgwIABfSBIQn+Fg0KAgYKEiJCgwIB/gyJIQgBSBEADQCAZIEh6p0EDdiAGaiAPcUFsbGoiCEEUaygCACARRgRAIAsgCEEQaygCAEYNAwsgSEIBfSBIgyJIQgBSDQALCyBJIElCAYaDQoCBgoSIkKDAgH+DQgBSDQIgDEEIaiIMIAZqIA9xIQYMAQsLIAhBDGsiDygCACEGIBMgCEEEayILLQAARwRAIAYgFE8NAyAgIBogBkHsAGxqIgYpAkA3AgAgBkKAgICAwAA3AkAgHyAGKQJMNwIAIB4gBikCWDcCACAgQQhqIAZByABqIgwoAgA2AgAgDEEANgIAIB9BCGogBkHUAGooAgA2AgAgHkEIaiAGQeAAaigCADYCACAJQegOaiAGQRBq/QACAP0LAwAgCSAG/QACAP0LA9gOIAYoAmQhDCAGKAJoIREgHUEQaiAGQTBq/QACAP0LAgAgHSAG/QACIP0LAgAgCEEIa0EANgIAIA8gBSgCCCIGNgIAIAsgEzoAACAFKAIAIAZGBEAgBUGwh8MAEJ0ICyAFKAIEIAZB7ABsaiIIIAlB2A5qQeQA/AoAACAIIBE2AmggCCAMNgJkIAUgBkEBaiIMNgIIDAQLIAUoAggiDCAGTQ0EIAUoAgQgBkHsAGxqIQYMBgsgJEEJdCAjaiIGQQAgBxshDEEAIAYgBxshDyAFKAIIIgggBSgCAEYEQCAFQcCHwwAQnQgLIAUgCEEBajYCCCAFKAIEIAhB7ABsaiIGQgA3AkggBkKAgICAwAA3AkAgBkEANgIgIAZBADYCACAGIAw2AmggBiAPNgJkIAZB0ABq/QwAAAAAAAAAAAAAAAAAAAAA/QsCACAGQeAAakEANgIAIAkgEzoA9A8gCUEANgLwDyAJIAg2AuwPIAkgCzYC6A8gCSARNgLkDyANKAIEIg8gG3EiDCANKAIAIghqKQAAQoCBgoSIkKDAgH+DIkhQBEBBCCELA0AgCyAMaiEGIAtBCGohCyAIIAYgD3EiDGopAABCgIGChIiQoMCAf4MiSFANAAsLIAggSHqnQQN2IAxqIA9xIgxqLAAAIgZBAE4EQCAIIAgpAwBCgIGChIiQoMCAf4N6p0EDdiIMai0AACEGCwJAIAZBAXEiBiANKAIIIgtFcUUEQCAIIAxqIEunQf8AcSIROgAAIAggDEEIayAPcWpBCGogEToAACANIAsgBms2AgggDSANKAIMQQFqNgIMIAggDEFsbGoiBkEUayIIQRBqIAlB9A9qKAIANgIAIAggCf0AAuQP/QsCAAwBCyAJQQhqIA0gDUEQahD4ASANIEogDSgCACANKAIEIEoQhQogCUHkD2oQiwohBgsgBkEMayEPIAUoAgghDAwCCyAGQcEAQdDiwwAQhQsACyAGIBRBoIfDABCFCwALIAwgDygCACIGSw0BCyAGIAxB0IfDABCFCwALIAUoAgQhCCAJIDYgMyAhskMAAAA/kpQiJiAmICYgKyAmICtdGyArICtcGyAKICFGGyInIDMgGLJDAAAAP5KUIiYgOiA6ICYgJiA6XRsgJiAmXBsgCiAYRhsiKJNDAAAAP5SSOALEDyAJIDcgNCASskMAAAA/kpQiJiAmICYgLiAmIC5dGyAuIC5cGyAOIBJGGyIqIDQgF7JDAAAAP5KUIiYgOSA5ICYgJiA5XRsgJiAmXBsgDiAXRhsiKZNDAAAAP5SSOALADyAJIDggNSAWskMAAAA/kpQiJiAmICYgLyAmIC9dGyAvIC9cGyAQIBZGGyItIDUgFbJDAAAAP5KUIiYgOyA7ICYgJiA7XRsgJiAmXBsgECAVRhsiJpNDAAAAP5SSOAK8DyAJIEUgKCAnkkMAAAA/lCIskzgC4A8gCSBGICkgKpJDAAAAP5QiKpM4AtwPIAkgRyAmIC2SQwAAAD+UIimTOALYDyAJIAD9AAIA/QsDyA8gCCAGQewAbGohBgJAAkACQCAHRQRAQwAAAAAhJ0MAAAAAISZDAAAAACEoIAYoAgAEQCAGKgIUIScgBioCHCEoIAYqAhghJgsgBigCSCILRQ0CICwgKJMhKCAqICaTISYgKSAnkyEnIAYoAkQiCiEIIAtBJGwiC0EkayIMQSRuQQFxRQRAIAggCCoCACAnkzgCACAIIAgqAgQgJpM4AgQgCCAIKgIIICiTOAIIIAhBJGohCAsgDEEkSQ0BIAogC2ohCwNAIAggCCoCACAnkzgCACAIQQRqIgogCioCACAmkzgCACAIQQhqIgogCioCACAokzgCACAIQSRqIgogCioCACAnkzgCACAIQShqIgogCioCACAmkzgCACAIQSxqIgogCioCACAokzgCACALIAhByABqIghHDQALDAELQwAAAAAhJ0MAAAAAISZDAAAAACEoIAYoAiAEQCAGKgI0IScgBioCPCEoIAYqAjghJgsgBigCSCILRQ0CICwgKJMhKCAqICaTISYgKSAnkyEnIAYoAkQiCiEIIAtBJGwiC0EkayIMQSRuQQFxRQRAIAggCCoCDCAnkzgCDCAIIAgqAhAgJpM4AhAgCCAIKgIUICiTOAIUIAhBJGohCAsgDEEkSQ0AIAogC2ohCwNAIAhBDGoiCiAKKgIAICeTOAIAIAhBEGoiCiAKKgIAICaTOAIAIAhBFGoiCiAKKgIAICiTOAIAIAhBMGoiCiAKKgIAICeTOAIAIAhBNGoiCiAKKgIAICaTOAIAIAhBOGoiCiAKKgIAICiTOAIAIAsgCEHIAGoiCEcNAAsLIAcNAQsgBiAsOAIcIAYgKjgCGCAGICk4AhQgBv0MAAAAAAAAAAAAAAAAAACAP/0LAgQgBkEBNgIAIAYgCUHID2ogCUG8D2pBpITDACACIANBACAGQQAgBiAEIAYQIxoMAQsgBiAsOAI8IAYgKjgCOCAGICk4AjQgBv0MAAAAAAAAAAAAAAAAAACAP/0LAiQgBkEBNgIgIAkgCSoC1A8iLDgC8A8gCSAJKgLQDyImjDgC7A8gCSAJKgLMDyInjDgC6A8gCSAJKgLIDyIojDgC5A8gCSAsICggCSoC3A8iKpQgJyAJKgLYDyIplJMiLSAtkiItlCAnICcgCSoC4A8iMpQgJiAqlJMiMCAwkiIwlCAoICYgKZQgKCAylJMiMSAxkiIxlJOSIDKTOAL8DyAJICwgMZQgKCAtlCAmIDCUk5IgKpM4AvgPIAkgLCAwlCAmIDGUICcgLZSTkiApkzgC9A8gBiAJQeQPaiACIAMgCUG8D2pBpITDAEEAIAZBACAGIAQgBhAjGgsgCUHQD2ogBiAiaiIIQQhqKAIANgIAIAkgCCkCADcDyA8gBigCSCIIRQ0AIAYoAkQhCyAIQSRsIRBBASEKQQAhDkEAIQwDQAJAAn0CQAJAAkAgCyAOaiIIQRhqIhYqAgBDAAAAAF0EQCAJKgLQDyEmIAkqAswPIScgCSoCyA8hKCAJIAIgAygCtAERAAAgCSgCACISRQ0BIAlB5A9qIBIgACAJQcgPaiAJKAIEKAIUEQIAIBYqAgAgCSoC6A8gPSA3ICeMmJKTIAkqAswPjJQgCSoC5A8gPiA4ICiMmJKTIAkqAsgPlJMgCSoC7A8gPCA2ICaMmJKTIAkqAtAPlJNeRQ0FCyAHDQIgBigCAEEBcUUNASAGKgIEIiYgCEEEaioCACItlCAGKgIIIiggCCoCACIylJMiJyAnkiEsIAYqAgwiKiAylCAmIAhBCGoqAgAiJ5STIikgKZIhKSAGKgIcICcgBioCECIwICyUICYgKZQgKCAoICeUICogLZSTIicgJ5IiMZSTkpKSIScgBioCFCAyIDAgMZQgKCAslCAqICmUk5KSkiEoIAYqAhggLSAwICmUICogMZQgJiAslJOSkpIMAwtB7IXDAEEbQeCHwwAQ0QsACyAIQQhqKgIAIScgCCoCACEoIAhBBGoqAgAMAQsgBigCIEEBcUUEQCAIQRRqKgIAIScgCEEMaioCACEoIAhBEGoqAgAMAQsgBioCJCImIAhBEGoqAgAiLZQgBioCKCIoIAhBDGoqAgAiMpSTIicgJ5IhLCAGKgIsIiogMpQgJiAIQRRqKgIAIieUkyIpICmSISkgBioCPCAnIAYqAjAiMCAslCAmICmUICggKCAnlCAqIC2UkyInICeSIjGUk5KSkiEnIAYqAjQgMiAwIDGUICggLJQgKiAplJOSkpIhKCAGKgI4IC0gMCAplCAqIDGUICYgLJSTkpKSCyEmQQAhCAJAICggPpMiKCBEXQ0AICggQ14NACAmID2TIiYgQF0NACAmID9eDQAgJyA8kyImIEFeRSAmIEJdQX9zcSEICyAPIA8oAgQgCCAMdHI2AgQLIApBH3EhDCAKQQFqIQogECAOQSRqIg5HDQALCyAJQbAOaiAJQbAHahCAASAJKAKwDg0ACwwDC0GQh8MAEPIOAAtBgIfDABDyDgALQQhBIEH4ysQAKAIAIgBBzAggABsRAAAACwJAIAkoArAHQQJGDQAgCSgCtAgiAEEhSQ0AIAkoArgHIABBAnRBBBDoDgsgBSgCBCEQIAUoAgghDAsCQCANKAIMIgFFDQAgDSgCACIIQQhqIQYgCCkDAEJ/hUKAgYKEiJCgwIB/gyFIA0ACQCBIUARAA0AgCEGgAWshCCAGKQMAIUggBkEIaiEGIEhCgIGChIiQoMCAf4MiSEKAgYKEiJCgwIB/UQ0ACyBIQoCBgoSIkKDAgH+FIUgLAkAgCCBIeqdBA3ZBbGxqIgJBBGstAAAgE0cNACACQQxrKAIAIgAgDE8NASAQIABB7ABsaiIDKAJIIgBFDQAgA0FAayEDIABBAWshBSACQQhrIgcoAgAhAkEAIQ5BJCEKAkACQANAIAIgDnZBAXFFDQEgCkEkaiEKIAAgDkEBaiIORw0AC0EAIQsMAQtBASELIAUgDkYNACAOQQFqIQ8gAygCBCAKaiEOA0ACQCAHKAIAIA92QQFxRQRAIAtBAWohCwwBCyAOIAtBXGxqIgIgDv0AAgD9CwIAIAJBIGogDkEgaigCADYCACACQRBqIA5BEGr9AAIA/QsCAAsgDkEkaiEOIAAgD0EBaiIPRw0ACwsgAyAAIAtrNgIICyBIQgF9IEiDIUggAUEBayIBDQEMAgsLIAAgDEHwh8MAEIULAAsgDSgCDCIKBEAgDSgCBCECIA0oAgAiAEEIaiEGIAApAwBCf4VCgIGChIiQoMCAf4MhSCANKAIIIQEgACEIIAohCwNAIEhQBEADQCAIQaABayEIIAYpAwAhSCAGQQhqIQYgSEKAgYKEiJCgwIB/gyJIQoCBgoSIkKDAgH9RDQALIEhCgIGChIiQoMCAf4UhSAsgSEIBfSFKIBMgCCBIeqdBA3ZBbGxqIgNBBGstAABHBEBBgAEhDiAAIANrQRRtIgMgAGoiBSkAACJJIElCAYaDQoCBgoSIkKDAgH+DeqdBA3YgACADQQhrIAJxaiIDKQAAIkkgSUIBhoNCgIGChIiQoMCAf4N5p0EDdmpBB00EQCANIAFBAWoiATYCCEH/ASEOCyAFIA46AAAgDSALQQFrIgs2AgwgA0EIaiAOOgAACyBIIEqDIUggCkEBayIKDQALCyAUBEAgGkHEAGohBgNAIAZBBGsoAgAiAARAIAYoAgAgAEEkbEEEEOgOCyAGQewAaiEGIBRBAWsiFA0ACwsgHARAIBogHEHsAGxBBBDoDgsgCUGAEGokAAuuLQIWfyF9IwAiFUHAAmtBQHEiByQAIAIgACgCICIDTwRAAkACQCACIANrIgVBAWoiBCAAKAIYIANrSwRAIABBGGogAyAEQQRBCBDYBiAAKAIgIQMMAQsgBEUNAQsgBEEDcSEKIAAoAhwhCCAFQQNPBEAgBEF8cSEEIAggA0EDdGohBQNAIAVBADYCACAFQRhqQQA2AgAgBUEQakEANgIAIAVBCGpBADYCACAFQSBqIQUgA0EEaiEDIARBBGsiBA0ACwsgCkUNACADIApqIQQgCCADQQN0aiEFA0AgBUEANgIAIAVBCGohBSAKQQFrIgoNAAsgBCEDCyAAIAM2AiALAkACQCACIANJBEAgACgCHCACQQN0aiIDKAIAIQQgA0IBNwIAIARFBEAgACAAKAIkQQFqNgIkCyACIAAoAiBPDQEgACgCHCACQQN0aiIFKAIAQQFHDQEgACgCCCIEDQIgAUEMaiEEIAAoAgBFBEAgAEHw5sIAEMMICyAAKAIEIgMgASkCADcCACADIAI2AgwgAyAEKQIANwIQIANBgYCAgHw2AhwgA/0MAAAAAAAAAAAAAAAAAAAAAP0LBCAgA0EIaiABQQhqKAIANgIAIANBGGogBEEIaigCADYCACADQTBq/QwAAAAAAAAAAAAAAAAAAAAA/QsEACAAQQE2AgggACgCFCIBIAAoAgxGBEAgAEEMakGA58IAELYICyAAKAIQIAFBAnRqQQA2AgAgACABQQFqNgIUIAVBADYCBCAVJAAPCyACIANBkITEABCFCwALQZDkwgBBD0Hg5sIAENELAAsgACgCBCIDKAI8Qf////8DcQRAIAFBDGohFiABKgIUIScgASoCECEoIAEqAgwhKSABKgIIISogASoCBCErIAEqAgAhLEEAIQoDQCAKQQZ0IhggACgCBCIJaiIDKgIQIhkgAyoCACIdkyADKgIUIhogAyoCBCIek5QgAyoCGCIbIAMqAggiH5OUIAMoAhwiDkH/////A3EiDbOUIAMqAjAiHCADKgIgIiCTIAMqAjQiISADKgIkIiKTlCADKgI4IiMgAyoCKCIkk5QgAygCPCIPQf////8DcSIMs5SSITggAygCLCEFIAMoAgwhCEP//39/ISVD//9/fyEmQQAhEQJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCANQQFGIhNFBEAgBCAITQ0BIAkgCEEGdGoiBioCECImIAYqAgAiLZMgBioCFCIuIAYqAgQiL5OUIAYqAhgiMCAGKgIIIjGTlCAGKAIcQf////8DcSILs5QgBioCMCIyIBwgHCAyXxsgBioCICIzICAgICAzYBuTIAYqAjQiNCAhICEgNF8bIAYqAiQiNSAiICIgNWAbk5QgBioCOCI2ICMgIyA2XxsgBioCKCI3ICQgJCA3YBuTlCAGKAI8Qf////8DcSIGIAxqs5SSIjkgJiAcIBwgJl8bIC0gICAgIC1gG5MgLiAhICEgLl8bIC8gIiAiIC9gG5OUIDAgIyAjIDBfGyAxICQgJCAxYBuTlCALIAxqs5QgMiAzkyA0IDWTlCA2IDeTlCAGs5SSIiZdIREgOSAmIBEbIDiTISYLQQAhEiAMQQFGIhRFBEAgBCAFTQ0CIAkgBUEGdGoiBioCECIlIAYqAgAiLZMgBioCFCIuIAYqAgQiL5OUIAYqAhgiMCAGKgIIIjGTlCAGKAIcQf////8DcSILs5QgBioCMCIyIBkgGSAyXxsgBioCICIzIB0gHSAzYBuTIAYqAjQiNCAaIBogNF8bIAYqAiQiNSAeIB4gNWAbk5QgBioCOCI2IBsgGyA2XxsgBioCKCI3IB8gHyA3YBuTlCAGKAI8Qf////8DcSIGIA1qs5SSIjkgJSAZIBkgJV8bIC0gHSAdIC1gG5MgLiAaIBogLl8bIC8gHiAeIC9gG5OUIDAgGyAbIDBfGyAxIB8gHyAxYBuTlCALIA1qs5QgMiAzkyA0IDWTlCA2IDeTlCAGs5SSIiVdIRIgOSAlIBIbIDiTISULICZDAAAAAF0gJUMAAAAAXXJFDQogJSAmXkUEQCAEIAVNDQMgByAJIAVBBnRqIgQpAwA3A4ACIAcgBCkDEDcD8AEgByAEKQMgNwPgASAHIAQpAzA3A9ABIAcgBEEIaigCADYCiAIgByAEQRhqKAIANgL4ASAHIARBKGooAgA2AugBIAcgBEE4aigCADYC2AEgACgCFCIGIAVNDQQgBCgCHCEUIAQoAgwhCyAEKAIsIQwgBCgCPCEXIAAoAhAiDyAFQQJ0aiAKQQF0IhA2AgAgA0EwaiERIANBIGohCSASRQRAIAkgDDYCDCARIAcpA9ABNwMAIBFBCGogBygC2AE2AgAgCSAXNgIcIAlBCGogBygC6AE2AgAgCSAHKQPgATcDACAEIAg2AiwgBCAaOAI0IAQgGTgCMCAEIBs4AjggBCAONgI8IAQgHzgCKCAEIB44AiQgBCAdOAIgIAQoAhwhCSAEKgIAIRwgBCoCBCEgIAQqAgghISAEKgIQISIgBCoCFCEjIAQqAhghJCADIAU2AgwgAyAkIBsgGyAkXxs4AhggAyAjIBogGiAjXxs4AhQgAyAiIBkgGSAiXxs4AhAgAyAhIB8gHyAhYBs4AgggAyAgIB4gHiAgYBs4AgQgAyAcIB0gHCAdXxs4AgAgAyAJQf////8DcSANaiAJIA5yQYCAgIB8cXI2AhwCQAJAIBdB/////wNxQQFHBEAgBiAMTQ0BIA8gDEECdGogEEEBcjYCAAwOCyAMIAAoAiBPDQEgACgCHCAMQQN0aiIDKAIARQ0BIAMgEEEBcjYCBAwNCyAMIAZBkOnCABCFCwALQZDkwgBBD0Gg6cIAENELAAsgCSAHKQOAAjcDACAJIAs2AgwgESAHKQPwATcDACAJIBQ2AhwgBCAdOAIAIAQgHjgCBCAEIB84AgggBCAINgIMIAQgGTgCECAEIBo4AhQgBCAbOAIYIAlBCGogBygCiAI2AgAgEUEIaiAHKAL4ATYCACAEIA42AhwgAyAFNgIMIAMgGyAEKgI4IhwgGyAcYBs4AhggAyAaIAQqAjQiGyAaIBtgGzgCFCADIBkgBCoCMCIaIBkgGmAbOAIQIAMgHyAEKgIoIhkgGSAfYBs4AgggAyAeIAQqAiQiGSAZIB5gGzgCBCADIB0gBCoCICIZIBkgHWAbOAIAIAMgBCgCPCIDQf////8DcSANaiADIA5yQYCAgIB8cXI2AhwCQAJAIBRB/////wNxQQFHBEAgBiALTQ0BIA8gC0ECdGogEEEBcjYCAAwMCyALIAAoAiBPDQEgACgCHCALQQN0aiIDKAIARQ0BIAMgEEEBcjYCBAwLCyALIAZB0OnCABCFCwALQZDkwgBBD0Hg6cIAENELAAsgBCAITQ0FIAcgCSAIQQZ0aiIEKQMANwPAASAHIAQpAxA3A7ABIAcgBCkDIDcDoAEgByAEKQMwNwOQASAHIARBCGooAgA2AsgBIAcgBEEYaigCADYCuAEgByAEQShqKAIANgKoASAHIARBOGooAgA2ApgBIAAoAhQiBiAITQ0EIANBEGohDSAEKAIcIRIgBCgCDCEJIAQoAiwhCyAEKAI8IRMgACgCECIOIAhBAnRqIApBAXQiEEEBcjYCACARRQRAIAMgBykDoAE3AwAgAyALNgIMIA0gBykDkAE3AwAgAyATNgIcIANBCGogBygCqAE2AgAgDUEIaiAHKAKYATYCACAEICA4AiAgBCAiOAIkIAQgJDgCKCAEIAU2AiwgBCAcOAIwIAQgITgCNCAEICM4AjggBCAPNgI8IAMgCDYCLCADIAQqAgQiGSAiIBkgIl8bOAIkIAMgBCoCACIZICAgGSAgXxs4AiAgAyAEKAIcIglB/////wNxIAxqIAkgD3JBgICAgHxxcjYCPCADIAQqAhgiGSAjIBkgI2AbOAI4IAMgBCoCFCIZICEgGSAhYBs4AjQgAyAEKgIQIhkgHCAZIBxgGzgCMCADIAQqAggiGSAkIBkgJF8bOAIoAkACQCATQf////8DcUEBRwRAIAYgC00NASAOIAtBAnRqIBA2AgAMCwsgCyAAKAIgTw0BIAAoAhwgC0EDdGoiAygCAEUNASADIBA2AgQMCgsgCyAGQbDqwgAQhQsAC0GQ5MIAQQ9BwOrCABDRCwALIAMgCTYCDCANIAcpA7ABNwMAIAMgEjYCHCADIAcpA8ABNwMAIA1BCGogBygCuAE2AgAgA0EIaiAHKALIATYCACAEIAU2AgwgBCAcOAIQIAQgDzYCHCAEICA4AgAgBCAhOAIUIAQgIzgCGCAEICQ4AgggBCAiOAIEIAQoAjwhCyAEKgIgIRkgBCoCJCEdIAQqAighGiAEKgIwIR4gBCoCNCEbIAQqAjghHyADIAg2AiwgAyAjIB8gHyAjXxs4AjggAyAhIBsgGyAhXxs4AjQgAyAcIB4gHCAeYBs4AjAgAyAkIBogGiAkYBs4AiggAyAiIB0gHSAiYBs4AiQgAyAgIBkgGSAgYBs4AiAgAyALQf////8DcSAMaiALIA9yQYCAgIB8cXI2AjwCQAJAIBJB/////wNxQQFHBEAgBiAJTQ0BIA4gCUECdGogEDYCAAwJCyAJIAAoAiBPDQEgACgCHCAJQQN0aiIDKAIARQ0BIAMgEDYCBAwICyAJIAZB8OrCABCFCwALQZDkwgBBD0GA68IAENELAAsgCCAEQdDowgAQhQsACyAFIARB4OjCABCFCwALIAUgBEHw6MIAEIULAAsgBSAGQYDpwgAQhQsACyAIIAZBoOrCABCFCwALIAggBEGQ6sIAEIULAAsCQAJAIBRFBEAgBSAGTw0BIA4gBUECdGogCEEBdDYCAAwGCyAFIAAoAiBPDQEgACgCHCAFQQN0aiIDKAIARQ0BIAMgCEEBdDYCBAwFCyAFIAZBkOvCABCFCwALQZDkwgBBD0Gg68IAENELAAsCQCAURQRAIAUgBk8NASAOIAVBAnRqIAhBAXRBAXI2AgAMBAsCQCAFIAAoAiBPDQAgACgCHCAFQQN0aiIDKAIARQ0AIAMgCEEBdEEBcjYCBAwEC0GQ5MIAQQ9B4OrCABDRCwALIAUgBkHQ6sIAEIULAAsCQCATRQRAIAYgCE0NASAPIAhBAnRqIAVBAXQ2AgAMAwsCQCAIIAAoAiBPDQAgACgCHCAIQQN0aiIDKAIARQ0AIAMgBUEBdDYCBAwDC0GQ5MIAQQ9BgOrCABDRCwALIAggBkHw6cIAEIULAAsgE0UEQCAGIAhNDQIgDyAIQQJ0aiAFQQF0QQFyNgIADAELAkAgCCAAKAIgTw0AIAAoAhwgCEEDdGoiAygCAEUNACADIAVBAXRBAXI2AgQMAQtBkOTCAEEPQcDpwgAQ0QsACyAAKAIIIgUgCk0NAQJAAkACQCAYIAAoAgQiBGoiAyoCECIZICkgGSApYBsiJSADKgIAIh0gLCAdICxfGyImkyADKgIUIhogKCAaIChgGyI4IAMqAgQiHiArIB4gK18bIi2TlCADKgIYIhsgJyAbICdgGyIuIAMqAggiHyAqIB8gKl8bIi+TlCADKAIcIglB/////wNxIghBAWqzlCADKgIwIhwgAyoCICIgkyADKgI0IiEgAyoCJCIik5QgAyoCOCIjIAMqAigiJJOUIAMoAjwiC0H/////A3EiBrOUkiIwIBkgHZMgGiAek5QgGyAfk5QgCLOUIBwgKSAcIClgGyIZICAgLCAgICxfGyIdkyAhICggISAoYBsiGiAiICsgIiArXxsiHpOUICMgJyAjICdgGyIbICQgKiAkICpfGyIfk5QgBkEBarOUkiIcXUUEQCAGIAhNDQEgHCAwXA0BCyAIQQFHDQIgByAD/QAEAP0LBAAgByABKQIANwMgIAcgA0EQav0ABAD9CwQQIAcgAUEIaigCADYCKCAAKAIAIAVGBH8gAEHw58IAEMMIIAAoAgQFIAQLIAVBBnRqIgEgB/0ABAD9CwQAIAEgAjYCLCABIBYpAgA3AjAgAUGBgICAfDYCPCABQShqIAcoAig2AgAgAUEgaiAHKQMgNwMAIAFBEGogB/0ABBD9CwQAIAFBOGogFkEIaigCADYCACAAIAVBAWo2AgggCkEBdCEDIAAoAhQiASAAKAIMRgRAIABBDGpBgOjCABC2CAsgACgCECABQQJ0aiADNgIAIAAgAUEBajYCFCAAKAIIIgEgCk0NByAAKAIEIApBBnRqIgEoAgwiAyAAKAIgTw0IIAAoAhwgA0EDdGoiAygCAEUNCCADIAVBAXQiAzYCBCACIAAoAiBPDQEgACgCHCACQQN0aiIAKAIARQ0BIAAgA0EBcjYCBCABIAU2AgwgASABKAIcQQFqNgIcIAEgASoCACIZICwgGSAsXxs4AgAgASABKgIEIhkgKyAZICtfGzgCBCABIAEqAggiGSAqIBkgKl8bOAIIIAEgASoCECIZICkgGSApYBs4AhAgASABKgIUIhkgKCAZIChgGzgCFCABIAEqAhgiGSAnIBkgJ2AbOAIYIBUkAA8LIAZBAUYEQCAHIAP9AAQg/QsEYCAHIANBMGr9AAQA/QsEcCAAKAIAIAVGBH8gAEGg58IAEMMIIAAoAgQFIAQLIAVBBnRqIgMgASkCADcCACADIAI2AgwgAyAWKQIANwIQIANBgYCAgHw2AhwgAyAH/QAEYP0LBCAgA0EIaiABQQhqKAIANgIAIANBGGogFkEIaigCADYCACADQTBqIAf9AARw/QsEACAAIAVBAWo2AgggCkEBdEEBciEDIAAoAhQiASAAKAIMRgRAIABBDGpBsOfCABC2CAsgACgCECABQQJ0aiADNgIAIAAgAUEBajYCFCAAKAIIIgEgCk0NBSACIAAoAiBPDQYgACgCHCACQQN0aiIBKAIARQ0GIAAoAgQhAiABIAVBAXQiATYCBAJAIAIgCkEGdGoiAigCLCIDIAAoAiBPDQAgACgCHCADQQN0aiIAKAIARQ0AIAAgAUEBcjYCBCACQSBqIgAgBTYCDCAAIAAoAhxBAWo2AhwgACAAKgIAIhkgLCAZICxfGzgCACAAIAAqAgQiGSArIBkgK18bOAIEIAAgACoCCCIZICogGSAqXxs4AgggACAAKgIQIhkgKSAZIClgGzgCECAAIAAqAhQiGSAoIBkgKGAbOAIUIAAgACoCGCIZICcgGSAnYBs4AhggFSQADwtBkOTCAEEPQeDnwgAQ0QsACyADIAtBAWo2AjwgAyAbOAI4IAMgGjgCNCADIBk4AjAgAyAfOAIoIAMgHjgCJCADIB04AiAgAygCLCEKDAgLQZDkwgBBD0Gw6MIAENELAAsgAyAuOAIYIAMgODgCFCADICU4AhAgAyAvOAIIIAMgLTgCBCADICY4AgAgAyAJQQFqNgIcIAMoAgwhCgwGCyAIIAZBsOnCABCFCwALIAogBUGQ58IAEIULAAsgCiABQcDnwgAQhQsAC0GQ5MIAQQ9B0OfCABDRCwALIAogAUGQ6MIAEIULAAtBkOTCAEEPQaDowgAQ0QsACyAAKAIIIgQgCksNAAsgCiAEQcDowgAQhQsACyADIAI2AiwgA0GBgICAfDYCPCADIAEpAgA3AiAgAyABKQIMNwIwIANBKGogAUEIaigCADYCACADQThqIAFBFGooAgA2AgAgBUEBNgIEIBUkAAvMLQQdfxh9Bn4DeyMAQcARayIIJAACfwJAAkACQAJ/AkACQCAGKAIAIglFDQAgCEEYaiAJIAYoAgQoAhgRAAAgCEGACGogCCgCGCIJIAgoAhwoAgwRAAAgCUUNACAIKQOACEKdtsqWmNnrg1CFIAgpA4gIQpGQzIXaoPOYSoWEUA0BC0EgQQgQkQ4iCUUNAyAJQQA6ABggCUKJ2bnijtO+lwg3AxAgCUHI58EA/QADAP0LAwACQCAGKAIAIgpFDQAgBigCBCILKAIAIg0EQCAKIA0RBgALIAsoAgQiDUUNACAKIA0gCygCCBDoDgsgBkHY58EANgIEIAYgCTYCAEHY58EADAELIAYoAgAiCUUNASAGKAIECyEGIAhBEGogCSAGKAIcEQAAIAhBgAhqIgkgCCgCECINIAgoAhQoAgwRAAACQCANRQ0AIAgpA4AIQp22ypaY2euDUIUgCCkDiAhCkZDMhdqg85hKhYRCAFINACANIA0tABhBf3NBAXEiEToAGCAFKAIIIRIgBSgCBCEUIAVCBDcCBCAFKAIAIRkgBUEANgIAIAH9CQJkIUMgAf1dA2ghRCAIQSRqIgYgARD7BiAIQTxqIgogAiAAIAMoApQBEQEAIAj9AAJAIUUgCCoCUCElIAgqAjwhJyAIQdQAaiAGIAoQ8AlBBCEQQQAgCCgCVEUNBBogCEGAAWogCEHoAGopAgA3AwAgCCAI/QACWP0LA3AgCEGMAWoiBiABIAhB8ABqENkJIAkgBkH0BvwKAAAgCEGAD2oiBiAJEJEBIAgoAoAPQQFHDQMgRSBEIEP9DQABAgMEBQYHGBkaGwABAgP9DAAAAD8AAAA/AAAAPwAAAD/95gEiQ/0MAAAgQQAAIEEAACBBAAAgQf3mASJE/eUBIEUgRP3kAf0NAAECAwQFBgcYGRobHB0eHyFFIET9HwEgJZIhLyAnIET9HwKTITBBlAFBiAEgBxshHCBD/R8AIjFDCtcjPJIiMowhMyBD/R8BIjRDCtcjPJIiNYwhNiBD/R8CIjdDCtcjPJIiOIwhOSAAKgIYITogACoCFCE7IAAqAhAhPCAIQYwRaiEaIAhB0BBqIRUgCEGUEGohGyAGQQRqIRYDQCAIQagPaiIGQRBqIBZBEGr9AAIA/QsDACAGQSBqIBZBIGooAgAiBjYCACAIIBb9AAIA/QsDqA8CQAJAIAYQww1B/wFxDgUBAAAAAQALIAhB0A9qIAEgCEGoD2oQvgUgDSgCBCIJIA0pAxBCgoCAgBCFIj5CIIgiPyAIKQLoDyI9QiCIIkJCt9OwhQyFIkB+ID1C/////w+DQt2h8csMhSJBID5C/////w+DIj5+hSA+IEB+ID8gQX6FQiCJhSI+pyIPcSEGID5CGYgiQEL/AINCgYKEiJCgwIABfiFBIEKnIQogDSgCACELID2nIQxBACEOAkACQAJAAkACQAJAAkADQAJAIAYgC2opAAAiPyBBhSI9QoGChIiQoMCAAX0gPUJ/hYNCgIGChIiQoMCAf4MiPUIAUgRAA0AgDCALID16p0EDdiAGaiAJcUFsbGoiEEEUaygCAEYEQCAQQRBrKAIAIApGDQMLID1CAX0gPYMiPUIAUg0ACwsgPyA/QgGGg0KAgYKEiJCgwIB/g0IAUg0CIA5BCGoiDiAGaiAJcSEGDAELCyAQQQxrIg4oAgAhBiARIBBBBGsiFy0AAEcEQCAGIBJPDQMgFCAGQagBbGoiCikCfCE9IApCgICAgMAANwJ8IAhBqBFqIhMgCkGEAWoiBigCADYCAEEAIQsgBkEANgIAIAggPTcDoBEgCigCYCIJQQZ0IQwgCUH///8fSw0CIAxB8P///wdLDQIgCigCXCEYIAooAmQhHSAKKQJQIT0gCigCTCEeIAopAkQhPiAKKAJAIR8gCigCpAEhICAKKAKgASEhAkAgDEUEQEEQIQ9BACEGDAELQRAhCyAJIQYgDEEQEJEOIg9FDQMLIAwEQCAPIBggDPwKAAALIAhBqBBqIgwgCkHwAGooAgA2AgAgGyAIKQOgETcBACAbQQhqIBMoAgA2AQAgCEGIEGoiEyAKQZABaigCADYCACAIQfgPaiIYIApBnAFqKAIANgIAIAggCikCaDcDoBAgCCAKKQKIATcDgBAgCCAKKQKUATcD8A8gCigCdCEiIAovAXghIyAIQcAQaiIkIApBEGr9AAIA/QsDACAVIAr9AAIg/QsCACAVQRBqIApBMGr9AAIA/QsCACAIIAr9AAIA/QsDsBAgEEEIa0EANgIAIBcgEToAACAOIAUoAggiCzYCACAFKAIAIAtGBEAgBUHk48EAEJcICyAFKAIEIAtBqAFsaiIKIAj9AAOwEP0LAgAgCiAdNgJkIAogCTYCYCAKIA82AlwgCiAGNgJYIAogPTcCUCAKIB42AkwgCiA+NwJEIAogHzYCQCAKQRBqICT9AAMA/QsCACAKQSBqIBX9AAMA/QsCACAKQTBqIAhB4BBq/QADAP0LAgAgCiAjOwF4IAogIjYCdCAKQfAAaiAMKAIANgIAIAogCCkDoBA3AmggCiAIKQGSEDcBeiAKQYABaiAIQZgQaikBADcBACAKQZABaiATKAIANgIAIAogCCkDgBA3AogBIApBnAFqIBgoAgA2AgAgCiAIKQPwDzcClAEgCiAgNgKkASAKICE2AqABIAUgC0EBaiIJNgIIDAQLIAUoAggiCSAGTQ0EIAUoAgQgBkGoAWxqIQYMBgsgCCgCrA8gCCgCqA9BCXRqIgZBACAHGyELQQAgBiAHGyEOIAUoAggiCSAFKAIARgRAIAVB9OPBABCXCAsgBSAJQQFqNgIIIAUoAgQgCUGoAWxqIgZCgICAgIACNwJYIAZBADYCTCAGQQA2AkAgBkEANgIgIAZBADYCACAGQgA3AmAgBkIANwKEASAGQoCAgIDAADcCfCAGIA42AqABIAYgCzYCpAEgBkHoAGr9DAAAAAAAAAAAAAAAAAAAAAD9CwIAIAZB+ABqQQA7AQAgBkGMAWr9DAAAAAAAAAAAAAAAAAAAAAD9CwIAIAZBnAFqQQA2AgAgCCAROgCwESAIQQA2AqwRIAggCTYCqBEgCCAKNgKkESAIIAw2AqARIA0oAgQiDCAPcSIJIA0oAgAiC2opAABCgIGChIiQoMCAf4MiPVAEQEEIIQoDQCAJIApqIQYgCkEIaiEKIAsgBiAMcSIJaikAAEKAgYKEiJCgwIB/gyI9UA0ACwsgCyA9eqdBA3YgCWogDHEiCWosAAAiBkEATgRAIAsgCykDAEKAgYKEiJCgwIB/g3qnQQN2IglqLQAAIQYLAkAgBkEBcSIGIA0oAggiCkVxRQRAIAkgC2ogQKdB/wBxIg46AAAgCyAJQQhrIAxxakEIaiAOOgAAIA0gCiAGazYCCCANIA0oAgxBAWo2AgwgCyAJQWxsaiIGQRRrIglBEGogCEGwEWooAgA2AgAgCSAI/QACoBH9CwIADAELIAhBCGogDSANQRBqEPgBIA0gPiANKAIAIA0oAgQgPhCFCiAIQaARahCLCiEGCyAGQQxrIQ4gBSgCCCEJDAILIAsgDEGA/MEAENcNAAsgBiASQdTjwQAQhQsACyAJIA4oAgAiBksNAQsgBiAJQYTkwQAQhQsACyAFKAIEIQkgCCAvOAK0ESAIIEX9CwKkESAIIDA4AqARIAhBgBFqIAhB0A9qIAEgCEGoD2ogCEGgEWoQ8wQgCCoCgBEhJyAIKgKEESEpIAgqAogRISogCEH4EGogGkEIaigCADYCACAIIBopAgA3A/AQIAggOiAqkzgCmBEgCCA7ICmTOAKUESAIIDwgJ5M4ApARIAggAP0AAgD9CwOAESAJIAZBqAFsaiEGAkACQAJAIAdFBEBDAAAAACElQwAAAAAhKEMAAAAAISYgBigCAARAIAYqAhwhJiAGKgIYISggBioCFCElCyAGKAKEASIKRQ0CICogJpMhJiApICiTISggJyAlkyElIAYoAoABIgshCSAKQQFxBEAgCSAJKgIAICWTOAIAIAkgCSoCBCAokzgCBCAJIAkqAgggJpM4AgggCUFAayEJCyAKQf///x9xQQFGDQEgCyAKQQZ0aiEKA0AgCSAJKgIAICWTOAIAIAlBBGoiCyALKgIAICiTOAIAIAlBCGoiCyALKgIAICaTOAIAIAlBQGsiCyALKgIAICWTOAIAIAlBxABqIgsgCyoCACAokzgCACAJQcgAaiILIAsqAgAgJpM4AgAgCiAJQYABaiIJRw0ACwwBC0MAAAAAISVDAAAAACEoQwAAAAAhJiAGKAIgBEAgBioCPCEmIAYqAjghKCAGKgI0ISULIAYoAoQBIgpFDQIgKiAmkyEmICkgKJMhKCAnICWTISUgBigCgAEiCyEJIApBAXEEQCAJIAkqAgwgJZM4AgwgCSAJKgIQICiTOAIQIAkgCSoCFCAmkzgCFCAJQUBrIQkLIApB////H3FBAUYNACALIApBBnRqIQoDQCAJQQxqIgsgCyoCACAlkzgCACAJQRBqIgsgCyoCACAokzgCACAJQRRqIgsgCyoCACAmkzgCACAJQcwAaiILIAsqAgAgJZM4AgAgCUHQAGoiCyALKgIAICiTOAIAIAlB1ABqIgsgCyoCACAmkzgCACAKIAlBgAFqIglHDQALCyAHDQELIAYgKjgCHCAGICk4AhggBiAnOAIUIAb9DAAAAAAAAAAAAAAAAAAAgD/9CwIEIAZBATYCACAGIAhBgBFqIAhB8BBqQbjlwQAgAiADQQAgBkEAIAYgBCAGECEaDAELIAYgKjgCPCAGICk4AjggBiAnOAI0IAb9DAAAAAAAAAAAAAAAAAAAgD/9CwIkIAZBATYCICAIIAgqAowRIio4AqwRIAggCCoCiBEiJYw4AqgRIAggCCoChBEiJ4w4AqQRIAggCCoCgBEiKYw4AqARIAggKiApIAgqApQRIiiUICcgCCoCkBEiJpSTIisgK5IiK5QgJyAnIAgqApgRIi6UICUgKJSTIiwgLJIiLJQgKSAlICaUICkgLpSTIi0gLZIiLZSTkiAukzgCuBEgCCAqIC2UICkgK5QgJSAslJOSICiTOAK0ESAIICogLJQgJSAtlCAnICuUk5IgJpM4ArARIAYgCEGgEWogAiADIAhB8BBqQbjlwQBBACAGQQAgBiAEIAYQIRoLIAhBiBFqIAYgHGoiCUEIaigCADYCACAIIAkpAgA3A4ARIAYoAoQBIglFDQAgBigCgAEhDyAJQQZ0IRBBASEKQQAhDEEAIQsDQAJAAn0CQAJAAkAgDCAPaiIJQRhqIhcqAgBDAAAAAF0EQCAIKgLEDyElIAgqAsAPIScgCCoCvA8hKSAIKgKIESEqIAgqAoQRISggCCoCgBEhJiAIIAIgAygCtAERAAAgCCgCACITRQ0BIAhBoBFqIBMgACAIQYARaiAIKAIEKAIUEQIAIBcqAgAgCCoCpBEgMSAojJggJ5KTIAgqAoQRjJQgCCoCoBEgNyAmjJggKZKTIAgqAoARlJMgCCoCqBEgNCAqjJggJZKTIAgqAogRlJNeRQ0FCyAHDQIgBigCAEEBcUUNASAGKgIEIikgCUEEaioCACIrlCAGKgIIIicgCSoCACIulJMiJSAlkiEqIAYqAgwiKCAulCApIAlBCGoqAgAiJZSTIiYgJpIhJiAGKgIcICUgBioCECIsICqUICkgJpQgJyAnICWUICggK5STIiUgJZIiLZSTkpKSISUgBioCGCArICwgJpQgKCAtlCApICqUk5KSkiEpIAYqAhQgLiAsIC2UICcgKpQgKCAmlJOSkpIMAwtBgOfBAEEbQZznwQAQ0QsACyAJQQhqKgIAISUgCUEEaioCACEpIAkqAgAMAQsgBigCIEEBcUUEQCAJQRRqKgIAISUgCUEQaioCACEpIAlBDGoqAgAMAQsgBioCJCIpIAlBEGoqAgAiK5QgBioCKCInIAlBDGoqAgAiLpSTIiUgJZIhKiAGKgIsIiggLpQgKSAJQRRqKgIAIiWUkyImICaSISYgBioCPCAlIAYqAjAiLCAqlCApICaUICcgJyAllCAoICuUkyIlICWSIi2Uk5KSkiElIAYqAjggKyAsICaUICggLZQgKSAqlJOSkpIhKSAGKgI0IC4gLCAtlCAnICqUICggJpSTkpKSCyEnQQAhCQJAICcgCCoCvA+TIicgOV0NACAnIDheDQAgKSAIKgLAD5MiJyAzXQ0AICcgMl4NACAlIAgqAsQPkyIlIDVeRSAlIDZdQX9zcSEJCyAOIA4oAgQgCSALdHI2AgQLIApBH3EhCyAKQQFqIQogECAMQUBrIgxHDQALCyAIQYAPaiAIQYAIahCRASAIKAKADw0ACwwDC0HE48EAEPIOAAtBtOPBABDyDgALQQhBIEH4ysQAKAIAIgBBzAggABsRAAAACwJAIAgoAoAIQQJGDQAgCCgChAkiAEEhSQ0AIAgoAogIIABBAnRBBBDoDgsgBSgCBCEQIAUoAggLIQACQCANKAIMIg9FDQAgDSgCACIJQQhqIQYgCSkDAEJ/hUKAgYKEiJCgwIB/gyE9A0ACQCA9UARAA0AgCUGgAWshCSAGKQMAIT0gBkEIaiEGID1CgIGChIiQoMCAf4MiPUKAgYKEiJCgwIB/UQ0ACyA9QoCBgoSIkKDAgH+FIT0LAkAgCSA9eqdBA3ZBbGxqIgJBBGstAAAgEUcNACACQQxrKAIAIgEgAE8NASAQIAFBqAFsaiIDKAKEASIBRQ0AIANB/ABqIQMgAUEBayEFIAJBCGsiBygCACECQQAhDEHAACEKAkACQANAIAIgDHZBAXFFDQEgCkFAayEKIAEgDEEBaiIMRw0AC0EAIQsMAQtBASELIAUgDEYNACAMQQFqIQ4gAygCBCAKaiEMA0ACQCAHKAIAIA52QQFxRQRAIAtBAWohCwwBCyAMIAtBBnRrIgIgDP0AAgD9CwIAIAJBMGogDEEwav0AAgD9CwIAIAJBIGogDEEgav0AAgD9CwIAIAJBEGogDEEQav0AAgD9CwIACyAMQUBrIQwgASAOQQFqIg5HDQALCyADIAEgC2s2AggLID1CAX0gPYMhPSAPQQFrIg8NAQwCCwsgASAAQaznwQAQhQsACyANKAIMIgoEQCANKAIEIQIgDSgCACIAQQhqIQYgACkDAEJ/hUKAgYKEiJCgwIB/gyE9IA0oAgghASAAIQkgCiELA0AgPVAEQANAIAlBoAFrIQkgBikDACE9IAZBCGohBiA9QoCBgoSIkKDAgH+DIj1CgIGChIiQoMCAf1ENAAsgPUKAgYKEiJCgwIB/hSE9CyA9QgF9IT4gESAJID16p0EDdkFsbGoiA0EEay0AAEcEQEGAASEMIAAgA2tBFG0iAyAAaiIFKQAAIj8gP0IBhoNCgIGChIiQoMCAf4N6p0EDdiAAIANBCGsgAnFqIgMpAAAiPyA/QgGGg0KAgYKEiJCgwIB/g3mnQQN2akEHTQRAIA0gAUEBaiIBNgIIQf8BIQwLIAUgDDoAACANIAtBAWsiCzYCDCADQQhqIAw6AAALID0gPoMhPSAKQQFrIgoNAAsLIBIEQCAUQYABaiEGA0AgBkEEaygCACIABEAgBigCACAAQQZ0QQQQ6A4LIAZBKGsoAgAiAARAIAZBJGsoAgAgAEEGdEEQEOgOCyAGQagBaiEGIBJBAWsiEg0ACwsgGQRAIBQgGUGoAWxBBBDoDgsgCEHAEWokAAv9KgMcfwd+Jn0jAEGgEmsiCSQAIAkgCDoANyAJIAU4AjACQAJAAkACQAJ/AkACQCAHKAIAIghFDQAgCUEoaiAIIAcoAgQoAhgRAAAgCUHQB2ogCSgCKCIIIAkoAiwoAgwRAAAgCEUNACAJKQPQB0LD+Mv2gJHd8QeFIAkpA9gHQsel/8+HuoSznH+FhFANAQtBIEEIEJEOIghFDQMgCEEAOgAYIAhCidm54o7TvpcINwMQIAhBoNzCAP0AAwD9CwMAAkAgBygCACIMRQ0AIAcoAgQiCigCACILBEAgDCALEQYACyAKKAIEIgtFDQAgDCALIAooAggQ6A4LIAdByIHDADYCBCAHIAg2AgBByIHDAAwBCyAHKAIAIghFDQEgBygCBAshByAJQSBqIAggBygCHBEAACAJQdAHaiAJKAIgIgwgCSgCJCgCDBEAAAJAIAxFDQAgCSkD0AdCw/jL9oCR3fEHhSAJKQPYB0LHpf/Ph7qEs5x/hYRCAFINACAMIAwtABhBf3NBAXEiEDoAGCAGKAIIIREgBigCBCEXIAZCBDcCBCAGKAIAIRggBkEANgIAIAMgBCgCECIIEQQAIRIgCSACKgJsIj5DAAAAP5QiRDgCQCAJIAIqAmgiP0MAAAA/lCJFOAI8IAkgAioCZCJAQwAAAD+UIkY4AjhD//9/fyExQ///f/8hNAJAIAIoAghFBEBD//9//yEtQ///f/8hBUP//39/ISxD//9/fyEuDAELQ///f/8hLUP//3//IQVD//9/fyEsQ///f38hLgJAAkAgAigCBCIHKAI8Qf////8DcSAHKAIcQf////8DcWoOAgIAAQsgByoCGCE0IAcqAhQhLSAHKgIQIQUgByoCCCExIAcqAgQhLCAHKgIAIS4MAQsgByoCGCIFIAcqAjgiLSAFIC1gGyE0IAcqAhQiBSAHKgI0Ii0gBSAtYBshLSAHKgIQIgUgByoCMCIsIAUgLGAbIQUgByoCCCIsIAcqAigiLiAsIC5fGyExIAcqAgQiLCAHKgIkIi4gLCAuXxshLCAHKgIAIi4gByoCICIvIC4gL18bIS4LAkACQAJAAkAgAyAIEQQAIgcoAghFDQAgBygCBCIHKAI8Qf////8DcSAHKAIcQf////8DcWoOAgABAgsgCUL////7////v383A+AHIAn9DP//f3///39///9/f///f//9CwTQBwwCCyAJQeQHaiAHQRhqKAIANgIAIAkgBykDADcD0AcgCSAHKQIQNwLcByAJIAdBCGooAgA2AtgHDAELIAkgByoCGCIvIAcqAjgiMCAvIDBgGzgC5AcgCSAHKgIUIi8gByoCNCIwIC8gMGAbOALgByAJIAcqAhAiLyAHKgIwIjAgLyAwYBs4AtwHIAkgByoCCCIvIAcqAigiMCAvIDBfGzgC2AcgCSAHKgIEIi8gByoCJCIwIC8gMF8bOALUByAJIAcqAgAiLyAHKgIgIjAgLyAwXxs4AtAHCyAJQcQAaiAJQdAHaiIHIAEQuwNBBCELIC4gCSoCRCI5IC4gOWAbIi8gBSAJKgJQIi4gBSAuXxsiMF4NBCAsIAkqAkgiBSAFICxfGyI2IC0gCSoCVCIsICwgLWAbIjJeDQQgMSAJKgJMIi0gLSAxXxsiNyA0IAkqAlgiMSAxIDRgGyI0Xg0EIAkgNyA+lY78ADYC+A8gCSA2ID+VjvwANgL0DyAJIC8gQJWO/AA2AvAPIAkgNCA+lY38ADYC2AcgCSAyID+VjfwANgLUByAJIDAgQJWN/AA2AtAHIAlB3ABqIgggAiAJQfAPaiAHEJ4EIAcgCEH0BvwKAAAgCUHQDmoiCCAHEIABIAkoAtAOQQFHDQMgREMAACBBlCIwIDGSITEgRUMAACBBlCI2ICySITQgRkMAACBBlCIsIC6SIS8gLSAwkyEwIAUgNpMhNiA5ICyTITkgBCgCDCEgIAlBqBFqIRkgCUHgEWohGiAJQdQRaiEbIAlByBFqIRwgCUGMD2ohISABKgIYIUkgASoCFCFKIAEqAhAhSyAIQQRqIQ8DQAJAIAlB+A5qIgRBIGogD0EgaigCACIHNgIAIARBEGogD0EQav0AAgD9CwMAIAkgD/0AAgD9CwP4DiAHQf8BcSIEQcEATw0AAkACQCAEQZirwQBqLQAADgUBAAAAAQALIAkoAogPIQQgCSgCgA8hCCAJKAKEDyELIAlB8A9qIgogAhCGBSAJKAL4DyEVIAkoAvAPIQ0gCSgC9A8hEyAKIAIQhgVBACEKIAkoAoQQIRYgCSgC/A8hFCAJID8gCyATQQFrIiIgB0E/c0EAIAdBP2tB/wFxQQJPGyIHQQhxGyIOskMAAAA/kpQiBSA2IDYgBSAFIDZdGyAFIAVcGyALIA5GGyItID8gCyAJKAKAECIjIAdBBHEbIh2yQwAAAD+SlCIFIAUgBSA0IAUgNF0bIDQgNFwbIAsgHUYbIiySQwAAAD+UIi44AqQPIAkgQCAIIA1BAWsiJCAHQQJxGyILskMAAAA/kpQiBSA5IDkgBSAFIDldGyAFIAVcGyAIIAtGGyI6IEAgCCAUIAdBAXEbIh6yQwAAAD+SlCIFIAUgBSAvIAUgL10bIC8gL1wbIAggHkYbIjWSQwAAAD+UIjs4AqAPIAkgPiAVQQFrIhUgBCAHQf8BcUEgSRsiH7JDAAAAP5KUIgUgMCAwIAUgBSAwXRsgBSAFXBsgBCAfRhsiMiA+IAQgFiAHQRBxGyIWskMAAAA/kpQiBSAFIAUgMSAFIDFdGyAxIDFcGyAEIBZGGyIFkkMAAAA/lCI4OAKoDyAJIEQgBSAyk0MAAAA/lJIiMjgCtA8gCSBFICwgLZNDAAAAP5SSIjc4ArAPIAkgRiA1IDqTQwAAAD+UkiI6OAKsDyAJIAH9AAIA/QsDuA8gCSBJIDiTIjU4AtAPIAkqArgPIQUgCSBLIDuTIjs4AsgPIAlBwA9qKgIAIS0gCSBKIC6TIjg4AswPIAkgMiAtIC2UIkcgCSoCxA8iLiAulCJMIAUgBZQiTZMiQyAJKgK8DyIsICyUIkiTkouUIDcgLCAtlCIzIDOSIjwgLiAFjJQiMyAzkiI9kouUIDogBSAtlCIzIDOSIk4gLiAsjJQiMyAzkiJPk4uUkpIiUCAuIAUgOJQgOyAslJMiMyAzkiIzlCAsICwgNZQgLSA4lJMiQSBBkiJBlCAFIDsgLZQgBSA1lJMiQiBCkiJClJOSIDWTIlGSIjU4AuwPIAkgMiA8ID2Ti5QgOiAFICyUIjwgPJIiPCAuIC2MlCI9ID2SIj2Si5QgNyBIIEOSIEeTi5SSkiJDIC4gQpQgBSAzlCAtIEGUk5IgOJMiOJIiBTgC6A8gCSAyIE4gT5KLlCA3IDwgPZOLlCA6IE0gTJIgSJMgR5OLlJKSIjIgLiBBlCAtIEKUICwgM5STkiA7kyI3kiItOALkDyAJIFEgUJMiLDgC4A8gCSA4IEOTIi44AtwPIAkgNyAykyIyOALYDwJAIBIoAghFBEBBACEIDAELIBIoAgQiB0EAIAcqAhggLGAbQQAgByoCFCAuYBtBACAHKgIQIDJgG0EAIAcqAgggNV8bQQAgByoCBCAFXxtBACAHKgIAIC1fGyEIIAcoAjxB/////wNxRQ0AIAcqAiAgLV8gByoCJCAFX3EgByoCKCA1X3EgByoCMCAyYHEgByoCNCAuYHEgByoCOCAsYHEhCiAHQSBqIQcLIAkgCDYCgBEgCSASNgL4ECAJIAo2AvQQIAkgBzYC9A8gCUEANgLwDyAJIAlB2A9qNgL8ECAJQRhqIAlB8A9qENkDIAkoAhhBAXEEQCAJKAIcIQdBASANayIEIAtqIBQgJGsiC0EBIBNrIgggDmogIyAiayIKIB8gFWtsamxqIhNB3aHxy3xzrSEnIAQgHmogCCAdaiAWIBVrIApsaiALbGoiFEG307CFfHOtISgDQCAMKAIEIgQgByAMKQMQQoOAgIAQhSIlQiCIIiYgKH4gJUL/////D4MiJSAnfoUgJSAofiAmICd+hUIgiYUiJadzrSImQt2h8csMfiAlQiCIIiVCt9OwhQx+hSAmQrfTsIUMfiAlQt2h8csMfoVCIImFIianIg5xIQggJkIZiCIqQv8Ag0KBgoSIkKDAgAF+ISsgDCgCACENQQAhCyAJAn8CQAJAAkADQAJAICsgCCANaikAACIphSIlQoGChIiQoMCAAX0gJUJ/hYNCgIGChIiQoMCAf4MiJUIAUgRAA0ACQCATIA0gJXqnQQN2IAhqIARxQWhsaiIKQRhrKAIARw0AIBQgCkEUaygCAEcNACAHIApBEGsoAgBGDQMLICVCAX0gJYMiJUIAUg0ACwsgKSApQgGGg0KAgYKEiJCgwIB/g0IAUg0CIAtBCGoiCyAIaiAEcSEIDAELCyAKQQxrIQRBASAKQQRrIgstAAAgEEYNAxogBCgCACIIIBFPDQEgHCAXIAhB7ABsaiIIKQJANwIAIAhCgICAgMAANwJAIBsgCCkCTDcCACAaIAgpAlg3AgAgHEEIaiAIQcgAaiINKAIANgIAIA1BADYCACAbQQhqIAhB1ABqKAIANgIAIBpBCGogCEHgAGooAgA2AgAgCUGYEWogCEEQav0AAgD9CwMAIAkgCP0AAgD9CwOIESAIKAJkIQ0gCCgCaCEOIBlBEGogCEEwav0AAgD9CwIAIBkgCP0AAiD9CwIAIApBCGtBADYCACAEIAYoAggiCDYCACALIBA6AAAgBigCACAIRgRAIAZBvILDABCdCAsgBigCBCAIQewAbGoiCiAJQYgRakHkAPwKAAAgCiAONgJoIAogDTYCZCAGIAhBAWo2AggMAgsgCSgC/A4gCSgC+A5BCXRqIgQgByAJLQA3IggbIQogByAEIAgbIQsgBigCCCIIIAYoAgBGBEAgBkHMgsMAEJ0ICyAGIAhBAWo2AgggBigCBCAIQewAbGoiBEIANwJIIARCgICAgMAANwJAIARBADYCICAEQQA2AgAgBCAKNgJoIAQgCzYCZCAEQdAAav0MAAAAAAAAAAAAAAAAAAAAAP0LAgAgBEHgAGpBADYCACAJIBA6AIQSIAlBADYCgBIgCSAINgL8ESAJIAc2AvgRIAkgFDYC9BEgCSATNgLwESAMKAIEIg0gDnEiBCAMKAIAIgtqKQAAQoCBgoSIkKDAgH+DIiVQBEBBCCEKA0AgBCAKaiEEIApBCGohCiALIAQgDXEiBGopAABCgIGChIiQoMCAf4MiJVANAAsLIAsgJXqnQQN2IARqIA1xIgRqLAAAIghBAE4EfyALIAspAwBCgIGChIiQoMCAf4N6p0EDdiIEai0AAAUgCAtBAXEiCCAMKAIIIgpFcUUEQCAEIAtqICqnQf8AcSIOOgAAIAsgBEEIayANcWpBCGogDjoAACAMIAogCGs2AgggDCAMKAIMQQFqNgIMIAsgBEFobGoiBEEYayIIIAkpAvARNwIAIAhBCGogCUH4EWr9AAIA/QsCACAEQQxrIQQMAgsgCUEQaiAMIAxBEGoQ7QEgDCAmIAwoAgAgDCgCBCAmEIUKIAlB8BFqEI0KQQxrIQQMAQsgCCARQayCwwAQhQsAC0EACzoAhxEgBCgCACIIIAYoAggiCk8EQCAIIApB3ILDABCFCwALIAYoAgQhCiAJIARBBGo2ApwSIAkgITYCmBIgCUHwiMMANgKIEiAJIAA2AoQSIAkgCiAIQewAbGo2AvwRIAkgCUE4ajYClBIgCSAJQTBqNgKQEiAJIAlBrA9qNgKMEiAJIAlBoA9qNgKAEiAJIAlBN2o2AvgRIAkgCUGHEWo2AvQRIAkgCUG4D2o2AvARIAMgByAJQfARakHsgsMAICARAgAgCUEIaiAJQfAPahDZAyAJKAIMIQcgCSgCCEEBcQ0ACwsgCSgC9BAiBEEhSQ0AIAkoAvgPIARBAnRBBBDoDgsgCUHQDmogCUHQB2oQgAEgCSgC0A4NAQwFCwsgBEHBAEHQ4sMAEIULAAtBjILDABDyDgALQfyBwwAQ8g4AC0EIQSBB+MrEACgCACIAQcwIIAAbEQAAAAsCQCAJKALQB0ECRg0AIAkoAtQIIgBBIUkNACAJKALYByAAQQJ0QQQQ6A4LIAYoAgQhCyAGKAIIIQ8LAkAgDCgCDCIARQ0AIAwoAgAiB0EIaiEGIAcpAwBCf4VCgIGChIiQoMCAf4MhJQNAAkAgJVAEQANAIAdBwAFrIQcgBikDACElIAZBCGohBiAlQoCBgoSIkKDAgH+DIiVCgIGChIiQoMCAf1ENAAsgJUKAgYKEiJCgwIB/hSElCwJAIAcgJXqnQQN2QWhsaiICQQRrLQAAIBBHDQAgAkEMaygCACIBIA9PDQEgCyABQewAbGoiAygCSCIBRQ0AIANBQGshAyABQQFrIQogAkEIayISKAIAIQJBACEIQSQhBAJAAkADQCACIAh2QQFxRQ0BIARBJGohBCABIAhBAWoiCEcNAAtBACECDAELQQEhAiAIIApGDQAgCEEBaiEKIAMoAgQgBGohCANAAkAgEigCACAKdkEBcUUEQCACQQFqIQIMAQsgCCACQVxsaiIEIAj9AAIA/QsCACAEQSBqIAhBIGooAgA2AgAgBEEQaiAIQRBq/QACAP0LAgALIAhBJGohCCABIApBAWoiCkcNAAsLIAMgASACazYCCAsgJUIBfSAlgyElIABBAWsiAA0BDAILCyABIA9BnILDABCFCwALIAwoAgwiBARAIAwoAgQhAyAMKAIAIgBBCGohBiAAKQMAQn+FQoCBgoSIkKDAgH+DISUgDCgCCCEBIAAhByAEIQIDQCAlUARAA0AgB0HAAWshByAGKQMAISUgBkEIaiEGICVCgIGChIiQoMCAf4MiJUKAgYKEiJCgwIB/UQ0ACyAlQoCBgoSIkKDAgH+FISULICVCAX0hJiAQIAcgJXqnQQN2QWhsaiIKQQRrLQAARwRAQYABIQggACAKa0EYbSIKIABqIgspAAAiJ0IBhiAng0KAgYKEiJCgwIB/g3qnQQN2IAAgCkEIayADcWoiCikAACInQgGGICeDQoCBgoSIkKDAgH+DeadBA3ZqQQdNBEAgDCABQQFqIgE2AghB/wEhCAsgCyAIOgAAIAwgAkEBayICNgIMIApBCGogCDoAAAsgJSAmgyElIARBAWsiBA0ACwsgEQRAIBdBxABqIQYDQCAGQQRrKAIAIgAEQCAGKAIAIABBJGxBBBDoDgsgBkHsAGohBiARQQFrIhENAAsLIBgEQCAXIBhB7ABsQQQQ6A4LIAlBoBJqJAALvSUCGn8DfiMAQcAGayIIJAACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgASkDACIfQgBSBEAgASkDCCIgUA0BIAEpAxAiIVANAiAfICF8IB9UDQMgHyAgVA0EIAEuARghASAIIB8+AgwgCEEBQQIgH0KAgICAEFQiBhs2AqwBIAhBACAfQiCIpyAGGzYCECAIQRRqQQBBmAH8CwAgCEG0AWpBAEGcAfwLACAIQQE2ArABIAhBATYC0AIgAawgH0IBfXl9QsKawegEfkKAoc2gtAJ8QiCIpyIGwSEOAkAgAUEATgRAIAhBDGogARDaARoMAQsgCEGwAWpBACABa8EQ2gEaCwJAIA5BAEgEQCAIQQxqQQAgDmtB//8DcRDHAQwBCyAIQbABaiAGQf//AXEQxwELIAhBnAVqIAhBsAFqQaQB/AoAACADIgdBCk8EQCAIQZQFaiELA0AgCCgCvAYiAUEpTw0UAkAgAUUNACABQf////8DaiEGIAFBAnQhBQJ/IAFBAUYEQEIAIR8gCEGcBWogBWoMAQsgBSALaiEBIAZB/////wNxQQFqQf7///8HcSEJQgAhHwNAIAFBBGoiBTUCACAfQiCGhCIgQoCU69wDgCEfIAUgHz4CACABIAE1AgAgICAfQoCU69wDfn1CIIaEIh9CgJTr3AOAIiA+AgAgHyAgQoCU69wDfn0hHyABQQhrIQEgCUECayIJDQALIB9CIIYhHyABQQhqCyEBIAZBAXENACABQQRrIgEgHyABNQIAhEKAlOvcA4A+AgALIAdBCWsiB0EJSw0ACwsgB0ECdEGgq8QAaigCAEEBdCIHRQ0FIAgoArwGIgFBKU8NEiABBH8gAUH/////A2ohBiABQQJ0IQUgB60hHwJ/IAFBAUYEQEIAISAgCEGcBWogBWoMAQsgBSAIakGUBWohASAGQf////8DcUEBakH+////B3EhCUIAISADQCABQQRqIgU1AgAgIEIghoQiISAfgCEgIAUgID4CACABIAE1AgAgISAfICB+fUIghoQiICAfgCIhPgIAICAgHyAhfn0hICABQQhrIQEgCUECayIJDQALICBCIIYhICABQQhqCyEBIAZBAXFFBEAgAUEEayIBICAgATUCAIQgH4A+AgALIAgoArwGBUEACyEBAkACQAJAIAgoAqwBIgYgASABIAZJGyIFQShNBEAgBUUEQEEAIQUMBAsgBUEBcSEMIAVBAUcNAUEAIQcMAgsgBUEoQejCxAAQ8A4ACyAFQT5xIQ9BACEHIAhBnAVqIQEgCEEMaiEJA0AgASAHQQFxIAEoAgAiCyAJKAIAaiIHaiIRNgIAIAcgC0kgByARS3IgAUEEaiIRKAIAIhQgCUEEaigCAGoiB2ohCyARIAs2AgAgByAUSSAHIAtLciEHIAlBCGohCSABQQhqIQEgDyAKQQJqIgpHDQALCyAMBH8gCkECdCILIAhBnAVqaiIJKAIAIQEgCSAHIAEgCEEMaiALaigCAGoiB2oiCzYCACABIAdLIAcgC0tyBSAHC0EBcUUNACAFQShGDRQgCEGcBWogBUECdGpBATYCACAFQQFqIQULIAggBTYCvAYgCCgC0AIiCiAFIAUgCkkbIgFBKU8NEiABQQJ0IQECQAJAA0AgAUUNASABQQRrIgEgCEGcBWpqKAIAIgUgASAIQbABamooAgAiB0YNAAsgBSAHTw0BDAkLIAENCAsgDkEBaiEODAgLQZCaxABBHEGYncQAENYMAAtBvJrEAEEdQaidxAAQ1gwAC0HsmsQAQRxBuJ3EABDWDAALQdCcxABBNkGonsQAENYMAAtBiJzEAEE3QZiexAAQ1gwAC0Gvw8QAQRtB6MLEABDWDAALAAsgBkUEQEEAIQYgCEEANgKsAQwBCyAGQQFrQf////8DcSIBQQFqIgVBA3EhCQJAIAFBA0kEQCAIQQxqIQFCACEfDAELIAVB/P///wdxIQcgCEEMaiEBQgAhHwNAIAEgATUCAEIKfiAffCIfPgIAIAFBBGoiBTUCAEIKfiAfQiCIfCEfIAUgHz4CACABQQhqIgU1AgBCCn4gH0IgiHwhHyAFIB8+AgAgAUEMaiIFNQIAQgp+IB9CIIh8ISAgBSAgPgIAICBCIIghHyABQRBqIQEgB0EEayIHDQALCyAJBEADQCABIAE1AgBCCn4gH3wiID4CACABQQRqIQEgIEIgiCEfIAlBAWsiCQ0ACwsgIEKAgICAEFoEQCAGQShGDQwgCEEMaiAGQQJ0aiAfPgIAIAZBAWohBgsgCCAGNgKsAQtBACEFQQEhDCAOwSIBIATBIgdIIhoNBiAOIARrwSADIAEgB2sgA0kbIgtFDQYgCEHUAmoiASAIQbABaiIEQaQB/AoAAEEBIREgAUEBENoBIRQgCEH4A2oiASAEQaQB/AoAACABQQIQ2gEhFSAIQZwFaiIBIARBpAH8CgAAIAhBrAFqIRsgCEHQAmohHCAIQfQDaiEdIAFBBGshHiABQQMQ2gEhFiAUKAKgASEXIBUoAqABIRggFigCoAEhGUEAIQ8gCCgCrAEhBiAIKALQAiEKAkADQCAGQSlPDQ0gBkECdCEEQQAhAQJ/AkACQANAIAEgBEYNASAIQQxqIAFqIQUgAUEEaiEBIAUoAgBFDQALIBkgBiAGIBlJGyIEQSlPDQYgBEECdCEBAkADQCABRQ0BIAEgHmohBSABQQRrIgEgCEEMamooAgAiByAFKAIAIgVGDQALIAUgB00NAkEADAMLIAFFDQFBAAwCCyADIAtJDQYCQCALIA9GDQAgCyAPayIBRQ0AIAIgD2pBMCAB/AsACyAAIA47AQggACALNgIEDAsLQQEhByAEQQFxIQxBACEGIARBAUcEQCAEQT5xIRIgCEEMaiEBIAhBnAVqIQkDQCABIAdBAXEgASgCACIHIAkoAgBBf3NqIgVqIhA2AgAgBSAHSSAFIBBLciABQQRqIhAoAgAiDSAJQQRqKAIAQX9zaiIFaiEHIBAgBzYCACAFIA1JIAUgB0tyIQcgCUEIaiEJIAFBCGohASASIAZBAmoiBkcNAAsLIAwEfyAGQQJ0IgYgCEEMamoiBSgCACEBIAUgASAGIBZqKAIAQX9zaiIGIAdqIgU2AgAgBSAGSSABIAZLcgUgBwtBAXFFDQ8gCCAENgKsASAEIQZBCAshDCAYIAYgBiAYSRsiBEEpTw0FIARBAnQhAQJAAkACQANAIAFFDQEgASAdaiEFIAFBBGsiASAIQQxqaigCACIHIAUoAgAiBUYNAAsgBSAHTQ0BIAYhBAwCCyABRQ0AIAYhBAwBCyAEBEBBASEHIARBAXEhEkEAIQYgBEEBRwRAIARBPnEhECAIQQxqIQEgCEH4A2ohCQNAIAEgB0EBcSABKAIAIgcgCSgCAEF/c2oiBWoiDTYCACAFIAdJIAUgDUtyIAFBBGoiDSgCACITIAlBBGooAgBBf3NqIgVqIQcgDSAHNgIAIAUgE0kgBSAHS3IhByAJQQhqIQkgAUEIaiEBIBAgBkECaiIGRw0ACwsgEgR/IAZBAnQiBiAIQQxqaiIFKAIAIQEgBSABIAYgFWooAgBBf3NqIgYgB2oiBTYCACAFIAZJIAEgBktyBSAHC0EBcUUNEAsgCCAENgKsASAMQQRyIQwLIBcgBCAEIBdJGyIFQSlPDQYgBUECdCEBAkACQAJAA0AgAUUNASABIBxqIQYgAUEEayIBIAhBDGpqKAIAIgcgBigCACIGRg0ACyAGIAdNDQEgBCEFDAILIAFFDQAgBCEFDAELIAUEQEEBIQcgBUEBcSESQQAhBiAFQQFHBEAgBUE+cSEQIAhBDGohASAIQdQCaiEJA0AgASAHQQFxIAEoAgAiByAJKAIAQX9zaiIEaiINNgIAIAQgB0kgBCANS3IgAUEEaiINKAIAIhMgCUEEaigCAEF/c2oiBGohByANIAc2AgAgBCATSSAEIAdLciEHIAlBCGohCSABQQhqIQEgECAGQQJqIgZHDQALCyASBH8gBkECdCIEIAhBDGpqIgYoAgAhASAGIAEgBCAUaigCAEF/c2oiBCAHaiIGNgIAIAEgBEsgBCAGS3IFIAcLQQFxRQ0QCyAIIAU2AqwBIAxBAmohDAsgCiAFIAUgCkkbIgZBKU8NDSAGQQJ0IQECQAJAAkADQCABRQ0BIAEgG2ohBCABQQRrIgEgCEEMamooAgAiByAEKAIAIgRGDQALIAQgB00NASAFIQYMAgsgAUUNACAFIQYMAQsgBgRAQQEhByAGQQFxIRJBACEFIAZBAUcEQCAGQT5xIRAgCEEMaiEBIAhBsAFqIQkDQCABIAdBAXEgASgCACIHIAkoAgBBf3NqIgRqIg02AgAgBCAHSSAEIA1LciABQQRqIg0oAgAiEyAJQQRqKAIAQX9zaiIEaiEHIA0gBzYCACAEIBNJIAQgB0tyIQcgCUEIaiEJIAFBCGohASAQIAVBAmoiBUcNAAsLIBIEfyAFQQJ0IgQgCEEMamoiBSgCACEBIAUgASAIQbABaiAEaigCAEF/c2oiBCAHaiIFNgIAIAEgBEsgBCAFS3IFIAcLQQFxRQ0QCyAIIAY2AqwBIAxBAWohDAsgAyAPTQ0BIAIgD2ogDEEwajoAACAGQSlPDQ0CQCAGRQRAQQAhBgwBCyAGQQFrQf////8DcSIBQQFqIgRBA3EhCQJAIAFBA0kEQCAIQQxqIQFCACEgDAELIARB/P///wdxIQcgCEEMaiEBQgAhIANAIAEgATUCAEIKfiAgfCIfPgIAIAFBBGoiBDUCAEIKfiAfQiCIfCEfIAQgHz4CACABQQhqIgQ1AgBCCn4gH0IgiHwhHyAEIB8+AgAgAUEMaiIENQIAQgp+IB9CIIh8IR8gBCAfPgIAIB9CIIghICABQRBqIQEgB0EEayIHDQALCyAJBEADQCABIAE1AgBCCn4gIHwiHz4CACABQQRqIQEgH0IgiCEgIAlBAWsiCQ0ACwsgH0KAgICAEFQNACAGQShGDQ0gCEEMaiAGQQJ0aiAgPgIAIAZBAWohBgsgCCAGNgKsASAPQQFqIQ8gCyARSyIBIBFqIREgAQ0AC0EAIQwgCyEFDAcLIA8gA0H4ncQAEIULAAsACyAEQShB6MLEABDwDgALIAsgA0GInsQAEPAOAAsgBEEoQejCxAAQ8A4ACyAFQShB6MLEABDwDgALAAsCQAJ/AkACQAJAIApBKUkEQAJAIApFBEBBACEKDAELIApBAWtB/////wNxIgFBAWoiBEEDcSEJAkAgAUEDSQRAIAhBsAFqIQFCACEfDAELIARB/P///wdxIQcgCEGwAWohAUIAIR8DQCABIAE1AgBCBX4gH3wiHz4CACABQQRqIgQ1AgBCBX4gH0IgiHwhHyAEIB8+AgAgAUEIaiIENQIAQgV+IB9CIIh8IR8gBCAfPgIAIAFBDGoiBDUCAEIFfiAfQiCIfCEgIAQgID4CACAgQiCIIR8gAUEQaiEBIAdBBGsiBw0ACwsgCQRAA0AgASABNQIAQgV+IB98IiA+AgAgAUEEaiEBICBCIIghHyAJQQFrIgkNAAsLICBCgICAgBBUDQAgCkEoRg0KIAhBsAFqIApBAnRqIB8+AgAgCkEBaiEKCyAIIAo2AtACIAogBiAGIApJGyIBQSlPDQggAUECdCEBIAhBCGohByAIQawBaiELAkACfwJAA0AgAUUNASABIAtqIQYgASAHaiEEIAFBBGshASAEKAIAIgQgBigCACIGRg0ACyAEIAZLIAQgBklrDAELQX9BACABGwtB/wFxDgIAAwQLQQAgDA0EGiADIAVBAWsiAUsEQCABIAJqLQAAQQFxDQMMBAsgASADQcidxAAQhQsACyAKQShB6MLEABDwDgALAAsgAyAFSQ0EIAIgBWohBEEAIQECQAJAA0AgASAFakUNASAEIAFBAWsiAWoiBi0AACIHQTlGDQALIAYgB0EBajoAACABIAVqQQFqIgQgBU0NASAEIAVBqKzEABDvDgALAkAgDARAQTEhAQwBCyACQTE6AABBMCEBIAVBAWsiBkUiBw0AIAcNACACQQFqQTAgBvwLAAsgDkEBaiEOIBoNASADIAVNDQEgBCABOgAAIAVBAWohBQwBCyABQX9GDQAgAUF/cyIBRQ0AIAZBAWpBMCAB/AsACyADIAVJDQEgBQshASAAIA47AQggACABNgIEDAELIAUgA0HoncQAEPAOAAsgACACNgIAIAhBwAZqJAAPCyAFIANB2J3EABDwDgALIAFBKEHowsQAEPAOAAtBKEEoQejCxAAQhQsACyAGQShB6MLEABDwDgALQfjCxABBGkHowsQAENYMAAuYKAQffxZ9A3sBfiMAQfABayICJAAgACgCACgCACEDIAAoAgwoAgAhBiAAKAIEKAIAIRIgAiAAKAIIKAIAIg42AjggAiASNgI0IAJB6NLBADYCMCACIAE2AiwgAkEANgIcIAJBADYCECACQQA2AgQgAiAGQZQCajYCQCACIAZBiAJqNgI8IAIgA0EAIANBIEkbNgIoIAZBoAFqIRggBkGwAWohGSAAKAIYKAIAIgFBFGooAgAhFiABQRBqKAIAIQkgACgCECgCACIBQSxqKAIAIR0gAUEoaigCACEDIBIoAowDIQEgACgCFCgCACEXAkAgBioC+AEiJ0MAAAAAWwRAIAFBgANsIQADQCAARQ0CIABBgANrIQAMAAsACyAGKAKAAkECcUUEQCABQYADbCEAA0AgAEUNAiAAQYADayEADAALAAsgEigCiAMhCCABQYADbCEKIBj9AAMAITggGf0AAwAhOUEAIQEDQCABIApGDQECQCABIAhqIgAoAgBFDQAgAEEEaigCACEFIAIgAEEQajYCrAEgAiAFNgKoASACIAw2AqQBIAJBADYCoAEgAkEEaiACQaABahCLA0UNACAAQcQAaioCACIkIABByABqKgIAIiiUIiYgJpIiISAAQUBrKgIAIiYgAEHMAGoqAgAiKZQiIyAjkiIjkiEuICYgKJQiJSAlkiIlICQgKZQiIiAikiIikyEsICEgI5MhLyAmICSUIiEgIZIiISAoICmUIiMgI5IiI5IhMCAlICKSITEgISAjkyEtICggKJQiISApICmUIiUgJiAmlCIikyIrICQgJJQiI5OSISogIyArkiAhkyEyICIgJZIgI5MgIZMhMyA5ITcgAEH2AmotAABBAUYEQCA4/QwAAIA/AACAPwAAgD8AAIA/IABB5AJqLQAAGyE3CyAAQdAAaioCACE0IABB1ABqKgIAITUgJiAAQawCaioCACIilCAkIABBqAJqKgIAIiuUkyIhICGSISMgKCArlCAmIABBsAJqKgIAIiGUkyIlICWSISUgAiAnICyUIABB2ABqKgIAICEgKSAjlCAmICWUICQgJCAhlCAoICKUkyIhICGSIiyUk5KSkiIhkjgChAEgAiAnIDCUIDUgIiApICWUICggLJQgJiAjlJOSkpIiJpI4AoABIAIgJyAzlCA0ICsgKSAslCAkICOUICggJZSTkpKSIiSSOAJ8IAIgN/0fAyIoOAKsASACIDf9HwIiKUMAAIA+lDgCqAEgAiA3/R8BIiM4AqQBIAIgN/0fACIlQwAAAACUOAKgASACICE4AmAgAiAmOAJcIAIgJDgCWCACQQRqIgAgAkHYAGoiBSACQfwAaiIEIAJBoAFqIgcQxAMgAiAnIC6UICGSOAKEASACICcgMpQgJpI4AoABIAIgJyAtlCAkkjgCfCAC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IBuUk5IgF5MiBjgCgAFB////+wchA0P//39/IQlD//9//yELQ///f/8hD0P//3//IRBD//9//yEVQ///f38hE0P//39/IRRB////+wchBQJAIAIoAghFDQACQAJAIAIoAgQiASgCPEH/////A3EgASgCHEH/////A3FqDgICAAELIAEqAhghDyABKgIUIRAgASoCECEVIAEqAgghEyABKgIEIRQgASgCACEFDAELIAEqAhgiCiABKgI4Ig8gCiAPYBshDyABKgIUIgogASoCNCIQIAogEGAbIRAgASoCECIKIAEqAjAiFSAKIBVgGyEVIAEqAggiCiABKgIoIhMgCiATXxshEyABKgIEIgogASoCJCIUIAogFF8bIRQgASoCACIKIAEqAiAiHCAKIBxfG7whBQsCQCAEKAIIRQRAQ///f/8hCkP//3//IRxD//9/fyEgDAELQ///f/8hCkP//3//IRxD//9/fyEgAkACQCAEKAIEIgEoAjxB/////wNxIAEoAhxB/////wNxag4CAgABCyABKgIYIQsgASoCFCEKIAEqAhAhHCABKgIIIQkgASoCBCEgIAEoAgAhAwwBCyABKgIYIgogASoCOCIJIAkgCl8bIQsgASoCFCIKIAEqAjQiCSAJIApfGyEKIAEqAhAiCSABKgIwIhwgCSAcYBshHCABKgIIIgkgASoCKCIgIAkgIF8bIQkgASoCBCIgIAEqAiQiHiAeICBgGyEgIAEqAgAiHiABKgIgIiIgHiAiXxu8IQMLIEIgD/0TIAv9IAEgE/0TIAn9IAH95QH9DAAAAD8AAAA/AAAAPwAAAD/95gEiXyBf/eYBIBD9EyAK/SABIBT9EyAg/SAB/eUB/QwAAAA/AAAAPwAAAD8AAAA//eYBIl8gX/3mASAV/RMgHP0gASAF/REgA/0cAf3lAf0MAAAAPwAAAD8AAAA/AAAAP/3mASJfIF/95gH95AH95AEiX/0fACBf/R8BXSIBOgCXASABDQQgCyEPIAohECAcIRUgCSETICAhFCADIQUgGCENIBYhESAXIQYgGSEMIBshDiAaIRIgRSEDIEMhBCBGIUUgRyFDDA8LIEIgBCAFKAJgEQAAIEJBwAFqIgQgQigCACIAIEIoAgQoAgwRAABBACFEIABFDRAgQikDwAFC3oWKxraak/zQAIUgQikDyAFChcGXiNPx7PrkAIWEQgBSDRAgQiABKgIMIg04AswBIEIgASoCCCIKjDgCyAEgQiABKgIEIgmMOALEASBCIAEqAgAiC4w4AsABIEIgDSALIAEqAhQiEZQgCSABKgIQIgyUkyIOIA6SIg6UIAkgCSABKgIYIhKUIAogEZSTIg8gD5IiD5QgCyAKIAyUIAsgEpSTIhAgEJIiEJSTkiASkzgC2AEgQiANIBCUIAsgDpQgCiAPlJOSIBGTOALUASBCIA0gD5QgCiAQlCAJIA6Uk5IgDJM4AtABIAQgACACIAMgBiAHIAhBARBdDBALIERB/wFxQQlHDQMgQ0UNBCBCIAEqAgwiDTgCzAEgQiABKgIIIgqMOALIASBCIAEqAgQiCYw4AsQBIEIgASoCACILjDgCwAEgQiANIAsgASoCFCIRlCAJIAEqAhAiDJSTIg4gDpIiDpQgCSAJIAEqAhgiEpQgCiARlJMiDyAPkiIPlCALIAogDJQgCyASlJMiECAQkiIQlJOSIBKTOALYASBCIA0gEJQgCyAOlCAKIA+Uk5IgEZM4AtQBIEIgDSAPlCAKIBCUIAkgDpSTkiAMkzgC0AEgQkEQaiACIAMoAmARAAAgQkHgAmogQigCECICIEIoAhQoAgwRAAACQCACRQ0AIEIpA+ACQq+p7On0rNuq4ACFIEIpA+gCQsuv4O3ri4fwq3+FhEIAUg0AQQAhRCAAIAEgQkHAAWogAiBDIEUgBiAHIAhBABBoDBALQZyJwwAQ8g4AC0Hg98IAEPIOAAtB8PfCABDyDgALIEIgGDgCiAEgQiAWOAKEASBCIBc4AoABIEIgYP0LBHAgRiEDIEchBAwKCwJAAkAgSUH/AXEOCgAHBwcHAwcHBwEHCyBEQf8BcUEFRg0DDAgLIEdFDQAgQkHAAWoiAyABENgHIEJBOGogBCAFKAJgEQAAIEJB4AJqIEIoAjgiAiBCKAI8KAIMEQAAAkAgAkUNACBCKQPgAkKvqezp9KzbquAAhSBCKQPoAkLLr+Dt64uH8Kt/hYRCAFINACAAIAMgASACIEcgRiAGIAcgCEEBEGgMCwtBrInDABDyDgALIwBBMGsiQyQAIENBCGogAiADKAJgEQAAIENBEGogQygCCCJFIEMoAgwoAgwRAAACQAJAIEVFDQAgQykDEEKvqezp9KzbquAAhSBDKQMYQsuv4O3ri4fwq3+FhEIAUg0AIAAgASBFIAQgBSAGIAcgCEEAEHYMAQsgQyAEIAUoAmARAAAgQ0EQaiIFIEMoAgAiBCBDKAIEKAIMEQAAIARFDQAgQykDEEKvqezp9KzbquAAhSBDKQMYQsuv4O3ri4fwq3+FhEIAUg0AIEMgASoCDCINOAIcIEMgASoCCCIKjDgCGCBDIAEqAgQiCYw4AhQgQyABKgIAIguMOAIQIEMgDSALIAEqAhQiEZQgCSABKgIQIgyUkyIOIA6SIg6UIAkgCSABKgIYIhKUIAogEZSTIg8gD5IiD5QgCyAKIAyUIAsgEpSTIhAgEJIiEJSTkiASkzgCKCBDIA0gEJQgCyAOlCAKIA+Uk5IgEZM4AiQgQyANIA+UIAogEJQgCSAOlJOSIAyTOAIgIAAgBSAEIAIgAyAGIAcgCEEBEHYLIENBMGokAAwJCyBEQf8BcQ4GAAQEBAQBBAsgBSgCYCEAIEJBMGogAiADKAJgIgMRAAAgQkHAAWoiBSBCKAIwIgggQigCNCgCDBEAACBCKQPAASFcIEIpA8gBIV0gQkEoaiAEIAARAAAgBSBCKAIoIgUgQigCLCgCDBEAAEEAIUQgCEEAIFxC5p216IDjz4cxhSBdQvDinLq61OzbJoWEUBsiCARAIAVBACBCKQPAAULtjJ6ph4fC+DaFIEIpA8gBQqWcoYzjlOylXoWEUBsiBQ0CCyBCQSBqIAIgAxEAACBCQcABaiICIEIoAiAiAyBCKAIkKAIMEQAAIEIpA8ABIVwgQikDyAEhXSBCQRhqIAQgABEAACACIEIoAhgiACBCKAIcKAIMEQAAIANBACBcQu2MnqmHh8L4NoUgXUKlnKGM45TspV6FhFAbIgNFDQggAEEAIEIpA8ABQuadteiA48+HMYUgQikDyAFC8OKcurrU7NsmhYRQGyIARQ0IIEIgASoCDCINOALMASBCIAEqAggiCow4AsgBIEIgASoCBCIJjDgCxAEgQiABKgIAIguMOALAASBCIA0gCyABKgIUIhGUIAkgASoCECIMlJMiDiAOkiIOlCAJIAkgASoCGCISlCAKIBGUkyIPIA+SIg+UIAsgCiAMlCALIBKUkyIQIBCSIhCUk5IgEpM4AtgBIEIgDSAQlCALIA6UIAogD5STkiARkzgC1AEgQiANIA+UIAogEJQgCSAOlJOSIAyTOALQASACIAAgAyoCACAGIAdBARCLAQwICyADKAJgIQMgBSgCYCFDIwBB0C1rIgUkACAFQSBqIAIgAxEAACAFQcAlaiIDIAUoAiAiAiAFKAIkKAIMEQAAIAUpA8AlIVwgBSkDyCUhXSAFQRhqIAQgQxEAACADIAUoAhgiQyAFKAIcKAIMEQAAAkAgAkEAIFxC5p216IDjz4cxhSBdQvDinLq61OzbJoWEUBsiBEUNACBDQQAgBSkDwCVC5p216IDjz4cxhSAFKQPIJULw4py6utTs2yaFhFAbIgJFDQAgBSAGOAIwIAUgATYCLAJAAkACQAJAAn8CQAJAIAgoAgAiAUUNACAFQRBqIAEgCCgCBCgCGBEAACADIAUoAhAiASAFKAIUKAIMEQAAIAFFDQAgBSkDwCVCsOSBqdfOiY67f4UgBSkDyCVC4qDfzNTVqPYPhYRQDQELQSBBCBCRDiIDRQ0DIANBADoAGCADQonZueKO076XCDcDECADQaDcwgD9AAMA/QsDAAJAIAgoAgAiAUUNACAIKAIEIkMoAgAiRQRAIAEgRREGAAsgQygCBCJFRQ0AIAEgRSBDKAIIEOgOCyAIQZiGwwA2AgQgCCADNgIAQZiGwwAMAQsgCCgCACIDRQ0BIAgoAgQLIQEgBUEIaiADIAEoAhwRAAAgBUHAJWogBSgCCCJDIAUoAgwoAgwRAAACQAJAIENFDQAgBSkDwCVCsOSBqdfOiY67f4UgBSkDyCVC4qDfzNTVqPYPhYRCAFINACBDIEMtABhBf3NBAXEiRzoAGCAFIEc6ADcgBUFAayAHQQhqIgEoAgA2AgAgAUEANgIAIAcpAgAhXCAHQoCAgIDAADcCACAFIFw3AzggBSAEKgJsQwAAAD+UIg44AkwgBSAEKgJoQwAAAD+UIhI4AkggBSAEKgJkIhxDAAAAP5QiIDgCRCACKgJkIRogAioCaCEGIAUgAioCbEMAAAA/lCIPOAJYIAUgBkMAAAA/lCIQOAJUIAUgGkMAAAA/lCIdOAJQQ///f38hCUP//3//IRECQCAEKAIIIkVFBEBD//9//yEGQ///f/8hDEP//39/IQ1D//9/fyELDAELQ///f/8hBkP//3//IQxD//9/fyENQ///f38hCwJAAkAgBCgCBCIBKAI8Qf////8DcSABKAIcQf////8DcWoOAgIAAQsgASoCGCERIAEqAhQhBiABKgIQIQwgASoCCCEJIAEqAgQhDSABKgIAIQsMAQsgASoCGCIGIAEqAjgiCiAGIApgGyERIAEqAhQiBiABKgI0IgogBiAKYBshBiABKgIQIgogASoCMCIJIAkgCl8bIQwgASoCCCIKIAEqAigiCSAJIApgGyEJIAEqAgQiCiABKgIkIgsgCiALXxshDSABKgIAIgogASoCICILIAogC18bIQsLIAUqAjBDAAAAP5QiCkMAAAAAYEUNASAFIBEgCpIiHzgCcCAFIAYgCpIiITgCbCAFIAwgCpIiJDgCaCAFIAkgCpMiJTgCZCAFIA0gCpMiJjgCYCAFIAsgCpMiFTgCXEP//39/IQlD//9//yERAkAgAigCCCIIRQRAQ///f/8hBkP//3//IQxD//9/fyENQ///f38hCwwBC0P//3//IQZD//9//yEMQ///f38hDUP//39/IQsCQAJAIAIoAgQiASgCPEH/////A3EgASgCHEH/////A3FqDgICAAELIAEqAhghESABKgIUIQYgASoCECEMIAEqAgghCSABKgIEIQ0gASoCACELDAELIAEqAhgiBiABKgI4IgkgBiAJYBshESABKgIUIgYgASoCNCIJIAYgCWAbIQYgASoCECIJIAEqAjAiCyAJIAtgGyEMIAEqAggiCSABKgIoIgsgCSALXxshCSABKgIEIgsgASoCJCINIAsgDV8bIQ0gASoCACILIAEqAiAiEyALIBNfGyELCyAFIAogEZIiKTgCiAEgBSAKIAaSIi04AoQBIAUgCiAMkiIuOAKAASAFIAkgCpMiLzgCfCAFIA0gCpMiMDgCeCAFIAsgCpMiMTgCdCAFKAIsIgMqAgwhFyADKgIEIRMgAyoCFCEeIAMqAgghFCADKgIQISIgAyoCACEWIAMqAhghIyAFQQA2AowBIAVBkAFqIAVB3ABqIAMgBUH0AGoQvwEgBSgCkAFFDQUgEyATICOUIBQgHpSTIgYgBpIiBpQgFiAUICKUIBYgI5STIgogCpIiCpSTIQsgFyAWIB6UIBMgIpSTIgkgCZIiCZQhDSAWIAmUIBQgBpSTIREgFyAKlCEMIBQgCpQgEyAJlJMhCiAXIAaUIQYgDiAPkkMAACBBlCEYIBIgEJJDAAAgQZQhGSAgIB2SQwAAIEGUIRsCQAJAAkACQCAIRQ0AIAIoAgQiASgCPEH/////A3EgASgCHEH/////A3FqDgIAAQILIAVC////+////79/NwPQJSAF/Qz//39///9/f///f3///3///QsEwCUMAgsgBUHUJWogAUEYaigCADYCACAFIAEpAwA3A8AlIAUgASkCEDcCzCUgBSABQQhqKAIANgLIJQwBCyAFIAEqAhgiCSABKgI4Ig4gCSAOYBs4AtQlIAUgASoCFCIJIAEqAjQiDiAJIA5gGzgC0CUgBSABKgIQIgkgASoCMCIOIAkgDmAbOALMJSAFIAEqAggiCSABKgIoIg4gCSAOXxs4AsglIAUgASoCBCIJIAEqAiQiDiAJIA5fGzgCxCUgBSABKgIAIgkgASoCICIOIAkgDl8bOALAJQsgDSALkiEnIAwgEZIhKiAGIAqSISggBSoCwAEhMiAFKgK8ASEzIAUqArgBITQgBSoCtAEhNSAFKgKwASE2IAUqAqwBITcgBSoCqAEhOCAFKgKkASE5IAUqAqABITogBSoCnAEhOyAFKgKYASE8IAUqApQBIT0gBUHMHmogBUHAJWogAxC7AyAYIAUqAuAekiEKIBkgBSoC3B6SIQ4gBSoC1B4gGJMhEiAFKgLQHiAZkyEPAkACQCAFKgLMHiAbkyIQIBUgG5MiBiAGIBBfGyIJIBsgBSoC2B6SIhUgGyAkkiIGIAYgFWAbIgxeDQAgDyAmIBmTIgYgBiAPXxsiCyAOIBkgIZIiBiAGIA5gGyINXg0AIAogGCAfkiIGIAYgCmAbIgYgEiAlIBiTIhEgESASXxsiEV1FDQELIBAhCSAPIQsgEiERIBUhDCAOIQ0gCiEGCyAnICOTISMgKiAekyEeICggIpMhIiAUjCEPIBOMISEgFowhHyAFIAY4AtgBIAUgDTgC1AEgBSAMOALQASAFIBE4AswBIAUgCzgCyAEgBSAJOALEAUP//3//IQZD//9/fyEMAkAgRUUEQEP//39/IQ1D//9/fyELQ///f/8hCkP//3//IQkMAQtD//9/fyENQ///f38hC0P//3//IQpD//9//yEJAkACQCAEKAIEIgEoAjxB/////wNxIAEoAhxB/////wNxag4CAgABCyABKgIYIQkgASoCFCEKIAEqAhAhBiABKgIIIQsgASoCBCENIAEqAgAhDAwBCyABKgIYIgYgASoCOCIKIAYgCmAbIQkgASoCFCIGIAEqAjQiCiAGIApgGyEKIAEqAhAiBiABKgIwIgsgBiALYBshBiABKgIIIgsgASoCKCINIAsgDV8bIQsgASoCBCINIAEqAiQiESANIBFfGyENIAEqAgAiESABKgIgIgwgDCARYBshDAsgFiALIAmSQwAAAD+UIhWUIBQgDCAGkkMAAAA/lCIOlJMiESARkiERIBMgDpQgFiANIAqSQwAAAD+UIhKUkyIQIBCSIRAgGSATIBSUIiQgJJIiJCAXIB+UIh8gH5IiJZOLIiYgCSALk0MAAAA/lCIJlCAWIBOUIgsgC5IiJyAXIA+UIgsgC5IiD5KLIiogBiAMk0MAAAA/lCIGlCATIBOUIgsgFyAXlCIoIBYgFpQiK5MiPpIgFCAUlCIfk4siPyAKIA2TQwAAAD+UIgqUkpIiQCAeIBIgFyARlCAWIBCUIBQgFCASlCATIBWUkyINIA2SIg2Uk5KSkiISkpIhDCAbIBYgFJQiLCAskiIsIBcgIZQiISAhkiIhkosiQSAJlCArICiSIAuTIB+TiyIoIAaUICcgD5OLIicgCpSSkiIPICIgDiAXIA2UIBQgEZQgEyAQlJOSkpIiK5KSIQ4gEiBAkyAZkyESICsgD5MgG5MhDyAjIBUgFyAQlCATIA2UIBYgEZSTkpKSIhEgHyA+IAuTkosiHyAJlCAsICGTiyIhIAaUICQgJZKLIiQgCpSSkiIGkyAYkyIQIC8gGJMiCiAKIBBfGyENAkACQCANIBggBiARkpIiFSAYICmSIgYgBiAVYBsiC14NACAPIDEgG5MiBiAGIA9fGyIKIA4gGyAukiIGIAYgDmAbIgleDQAgEiAwIBmTIgYgBiASXxsiBiAMIBkgLZIiESAMIBFfGyIRXkUNAQsgDyEKIBIhBiAQIQ0gDiEJIAwhESAVIQsLIAUgCzgC8AEgBSAROALsASAFIAk4AugBIAUgDTgC5AEgBSAGOALgASAFIAo4AtwBIAVB8IjDADYCoAIgBSAANgKcAiAFIAI2ApACIAUgBDYCiAIgBSAHNgKEAiAFIEM2AvgBIAUgBUHQAGo2AqwCIAUgBUHEAGo2AqgCIAUgBUEwajYCpAIgBSAFQSxqNgKYAiAFIAVB3AFqNgKUAiAFIAVBxAFqNgKMAiAFIAVBOGo2AoACIAUgBUE3ajYC/AEgBSAFQYwBajYC9AEgBSA6IByVjfwANgLAJSAFID0gHJWO/AA2AsweIAUgOyAEKgJsIhGVjvwANgLUHiAFIDwgBCoCaCIOlY78ADYC0B4gBSA4IBGVjfwANgLIJSAFIDkgDpWN/AA2AsQlIAVBsAJqIgEgBCAFQcweaiIAIAVBwCVqEJ4EIAAgAUH0BvwKAAAgBUGILWoiRyAAEIABIAUoAogtQQFHDQQgAioCbCIGQwAAAD+UIQ0gAioCaCIKQwAAAD+UIRIgBUGwF2ohUyAFQZAXaiFUIAIoAgQhASAFQZwQaiEDIEdBBGohRwNAIAVBgB5qIgBBIGogR0EgaigCACJGNgIAIABBEGogR0EQav0AAgD9CwMAIAUgR/0AAgD9CwOAHgJAAkAgRkH/AXEiAEHBAEkEQCAAQZirwQBqLQAAQQFrIlVB/wFxQQJPDQIgBSgCiB4hRCAFKAKQHiFJIAUoAoweIUsgBUHAJWoiACAEEIYFIAUoAsAlIUggBSgCyCUhTiAFKALEJSFKIAAgBBCGBSAFKALMJSFMIAUoAtQlIU8gBSgC0CUhTSATIAUqApQeIgyUIBYgBSoCmB4iD5STIgkgCZIhCSAUIA+UIBMgBSoCnB4iEJSTIgsgC5IhCyAFICMgECAXIAmUIBMgC5QgFiAWIBCUIBQgDJSTIhAgEJIiEJSTkpKSIhsgHyAFKgIwIhUgBSoCTJIiGJQgISAVIAUqAkSSIhmUICQgFSAFKgJIkiIVlJKSIiWTIAaVjvwANgKUFyAFIB4gDyAXIBCUIBYgCZQgFCALlJOSkpIiDyAmIBiUICogGZQgPyAVlJKSIimTIAqVjvwANgKQFyAFICIgDCAXIAuUIBQgEJQgEyAJlJOSkpIiCSBBIBiUICggGZQgJyAVlJKSIguTIBqVjvwANgKMFyAFICUgG5IgBpWN/AA2AsglIAUgKSAPkiAKlY38ADYCxCUgBSALIAmSIBqVjfwANgLAJSAFQaQJaiJQIAIgBUGMF2ogABCeBCAAIFBB9Ab8CgAAIAVBmBBqIAAQgAEgBSgCmBBBAUcNASBEIEwgRkE/c0EAIEZBP2tB/wFxQQJPGyIAQQFxGyFQIE0gSkEBayJRayFGIEwgSEEBayJSayFMQQEgSGsiSCBEIFIgAEECcRsiUmpBASBKayJKIEsgUSAAQQhxGyJRaiBGIE5BAWsiRCBJIABB/wFxQSBJGyJOIERrbGogTGxqrSBIIFBqIEwgSyBNIABBBHEbIk0gSmogSSBPIABBEHEbIk8gRGsgRmxqbGqtQiCGhCFcA0AgBUG4LGoiAEEgaiADQSBqKAIAIkY2AgAgAEEQaiADQRBq/QACAP0LAwAgBSAD/QACAP0LA7gsIEZB/wFxIgBBwQBPDRUgAEGYq8EAai0AACEAAkACQAJAAkACQCBVDgMAAQIECyAAQQFrQf8BcUEDSQ0CDAMLIABBAWtB/wFxQQJJDQEMAgsgAEEBRw0BC0P//39/IQsCQCAIRQRAQ///f38hCUP//39/IQwMAQtD//9/fyEJQ///f38hDAJAAkAgASgCPEH/////A3EgASgCHEH/////A3FqDgICAAELIAEqAgghCyABKgIEIQkgASoCACEMDAELIAEqAggiCSABKgIoIgsgCSALXxshCyABKgIEIgkgASoCJCIMIAkgDF8bIQkgASoCACIMIAEqAiAiDyAMIA9fGyEMCyANIAuSIAaVjvwAQQFrIUQgEiAJkiAKlY78ACJWQQFrIUkgHSAMkiAalY78ACJXQQFrIUtD//9//yELAkAgCEUEQEP//3//IQlD//9//yEMDAELQ///f/8hCUP//3//IQwCQAJAIAEoAjxB/////wNxIAEoAhxB/////wNxag4CAgABCyABKgIYIQsgASoCFCEJIAEqAhAhDAwBCyABKgIYIgkgASoCOCILIAkgC2AbIQsgASoCFCIJIAEqAjQiDCAJIAxgGyEJIAEqAhAiDCABKgIwIg8gDCAPYBshDAsgBSgCyCwhSCAFKALELCFKIAUoAsAsIUwgBSBcNwKoFyAFIE82AqQXIAUgTTYCoBcgBSBQNgKcFyAFIE42ApgXIAUgUTYClBcgBSBSNgKQFyAFIEogCSASkyAKlY78AEEBaiJYIEZBP3NBACBGQT9rQf8BcUECTxsiAEEEcRsiRjYCwBcgBSBIIAsgDZMgBpWO/ABBAWogAEEQcRsiWTYCxBcgBSBMIAwgHZMgGpWO/ABBAWoiWiAAQQFxGyJbNgK8FyAFIEogSSAAQQhxGyJKNgK0FyAFIEQgSCAAQf8BcUEgSRsiSDYCuBcgBSBMIEsgAEECcRsiADYCsBcgBSAAQQEgV2siAGogWiBLayJLIEpBASBWayJKaiBYIElrIkkgSCBEa2xqbGqtIAAgW2ogRiBKaiBZIERrIElsaiBLbGqtQiCGhDcCyBcgBSAFQbgsajYC0BcgBSAFQYAeaiIANgKMFyAFQfQBaiBUIFMgACADEEgLIAVBmBBqIAVBwCVqEIABIAUoApgQDQALDAELDBMLIAUoAsAlQQJGDQAgBSgCxCYiAEEhSQ0AIAUoAsglIABBAnRBBBDoDgsgBUGILWogBUHMHmoQgAEgBSgCiC0NAAsMBAtBkIjDABDyDgALIAVBADYC0CUgBUEBNgLEJSAFQejgwgA2AsAlIAVCBDcCyCUgBUHAJWpB8ODCABC5DQALQYCIwwAQ8g4AC0EIQSBB+MrEACgCACIAQcwIIAAbEQAAAAsCQCAFKALMHkECRg0AIAUoAtAfIgBBIUkNACAFKALUHiAAQQJ0QQQQ6A4LIAUgNyAalY78ADYCzB4gBSA0IBqVjfwANgLAJSAFIDUgAioCbCIGlY78ADYC1B4gBSA2IAIqAmgiCpWO/AA2AtAeIAUgMiAGlY38ADYCyCUgBSAzIAqVjfwANgLEJSAFQZgQaiIAIAIgBUHMHmogBUHAJWoQngQgBUGMF2oiASAAQfQG/AoAACAFQYAeaiIAIAEQgAEgBSgCgB5BAUYEQCARQwAAAD+UIRIgDkMAAAA/lCEPIAVBrC1qIVMgBUGMLWohVCAEKAIEIQEgBUG8LGohAyAAQQRqIUcDQCAFQageaiIAQSBqIEdBIGooAgAiRjYCACAAQRBqIEdBEGr9AAIA/QsDACAFIEf9AAIA/QsDqB4CQAJAIEZB/wFxIgBBwQBJBEAgAEGYq8EAai0AACJVQQFrQf8BcUECTw0CIAUoArAeIUQgBSgCuB4hSSAFKAK0HiFLIAVBwCVqIgggAhCGBSAFKALAJSFIIAUoAsglIU4gBSgCxCUhSiAIIAIQhgUgBSgCzCUhTCAFKALUJSFPIAUoAtAlIU0gBSgCLCIAKgIQIRsgACoCFCEaIAUqAsAeIhAgACoCACIGlCAFKgK8HiIVIAAqAgQiCpSTIgkgCZIhDSAVIAAqAggiCZQgBSoCxB4iEyAGlJMiCyALkiEMIAUgACoCGCATIAAqAgwiCyANlCAGIAyUIAogEyAKlCAQIAmUkyITIBOSIhOUk5KSkiIdIAUqAjAiFCAFKgJYkiIWIAkgCZQiFyALIAuUIh4gBiAGlCIikyIjIAogCpQiGJOSi5QgFCAFKgJUkiIZIAogCZQiHyAfkiIfIAYgC5QiISAhkiIhkouUIBQgBSoCUJIiFCAJIAaUIiQgJJIiJCAKIAuUIiUgJZIiJZOLlJKSIiaTIBGVjvwANgKQLSAFIBogECALIAyUIAkgE5QgBiANlJOSkpIiECAWIB8gIZOLlCAUIAogBpQiBiAGkiIGIAkgC5QiGiAakiIakouUIBkgGCAjkiAXk4uUkpIiI5MgDpWO/AA2AowtIAUgGyAVIAsgE5QgCiANlCAJIAyUk5KSkiIKIBYgJCAlkouUIBkgBiAak4uUIBQgIiAekiAYkyAXk4uUkpIiBpMgHJWO/AA2AogtIAUgHSAmkiARlY38ADYCyCUgBSAQICOSIA6VjfwANgLEJSAFIAogBpIgHJWN/AA2AsAlIAVBzB5qIgAgBCAFQYgtaiAIEJ4EIAggAEH0BvwKAAAgBUG4LGogCBCAASAFKAK4LEEBRw0BIEQgTCBGQT9zQQAgRkE/a0H/AXFBAk8bIgBBAXEbIVAgTSBKQQFrIlFrIQggTCBIQQFrIkxrIUZBASBIayJIIEQgTCAAQQJxGyJMakEBIEprIkogSyBRIABBCHEbIlFqIAggTkEBayJEIEkgAEH/AXFBIEkbIk4gRGtsaiBGbGqtIEggUGogRiBLIE0gAEEEcRsiTSBKaiBJIE8gAEEQcRsiTyBEayAIbGpsaq1CIIaEIVwDQCAFQeAsaiIAQSBqIANBIGooAgAiCDYCACAAQRBqIANBEGr9AAIA/QsDACAFIAP9AAIA/QsD4CwgCEH/AXEiAEHBAE8NEQJAAkACQCAAQZirwQBqLQAAQQFrDgMBAQACCyBVQQFHDQELQ///f38hDQJAIEVFBEBD//9/fyELQ///f38hCQwBC0P//39/IQtD//9/fyEJAkACQCABKAI8Qf////8DcSABKAIcQf////8DcWoOAgIAAQsgASoCCCENIAEqAgQhCyABKgIAIQkMAQsgASoCCCIGIAEqAigiCiAGIApfGyENIAEqAgQiBiABKgIkIgogBiAKXxshCyABKgIAIgYgASoCICIKIAYgCl8bIQkLIBIgDZIgEZWO/ABBAWshRiAPIAuSIA6VjvwAIlJBAWshRCAgIAmSIByVjvwAIlZBAWshSUP//3//IQ0CQCBFRQRAQ///f/8hC0P//3//IQkMAQtD//9//yELQ///f/8hCQJAAkAgASgCPEH/////A3EgASgCHEH/////A3FqDgICAAELIAEqAhghDSABKgIUIQsgASoCECEJDAELIAEqAhgiBiABKgI4IgogBiAKYBshDSABKgIUIgYgASoCNCIKIAYgCmAbIQsgASoCECIGIAEqAjAiCiAGIApgGyEJCyAFKALwLCFLIAUoAuwsIUggBSgC6CwhSiAFIFw3AsQtIAUgTzYCwC0gBSBNNgK8LSAFIFA2ArgtIAUgTjYCtC0gBSBRNgKwLSAFIEw2AqwtIAUgSCALIA+TIA6VjvwAQQFqIlcgCEE/c0EAIAhBP2tB/wFxQQJPGyIAQQRxGyIINgKcLSAFIEsgDSASkyARlY78AEEBaiAAQRBxGyJYNgKgLSAFIEogCSAgkyAclY78AEEBaiJZIABBAXEbIlo2ApgtIAUgSCBEIABBCHEbIkg2ApAtIAUgRiBLIABB/wFxQSBJGyJLNgKULSAFIEogSSAAQQJxGyIANgKMLSAFIABBASBWayIAaiBZIElrIkkgSEEBIFJrIkhqIFcgRGsiRCBLIEZrbGpsaq0gACBaaiAIIEhqIFggRmsgRGxqIElsaq1CIIaENwKkLSAFIAVBqB5qIgA2AswtIAUgBUHgLGo2AogtIAVB9AFqIFQgUyADIAAQSAsgBUG4LGogBUHAJWoQgAEgBSgCuCwNAAsMAQsMDwsgBSgCwCVBAkYNACAFKALEJiIAQSFJDQAgBSgCyCUgAEECdEEEEOgOCyAFQYAeaiAFQYwXahCAASAFKAKAHg0ACwsCQCAFKAKMF0ECRg0AIAUoApAYIgBBIUkNACAFKAKUFyAAQQJ0QQQQ6A4LIAUtADchRyBDKAIMIghFDQAgQygCACIDQQhqIUUgAykDAEJ/hUKAgYKEiJCgwIB/gyFcA0ACQCBcUARAA0AgA0HgAWshAyBFKQMAIVwgRUEIaiFFIFxCgIGChIiQoMCAf4MiXEKAgYKEiJCgwIB/UQ0ACyBcQoCBgoSIkKDAgH+FIVwLAkAgAyBceqdBA3ZBZGxqIgBBBGstAAAgR0cNACAAQQxrKAIAIgEgBygCCCICTw0BIAcoAgQgAUHsAGxqIgEoAkgiBEUNACABQUBrIUYgBEEBayEBIABBCGsiSSgCACEAQQAhREEkIQICQAJAA0AgACBEdkEBcUUNASACQSRqIQIgBCBEQQFqIkRHDQALQQAhAAwBC0EBIQAgASBERg0AIERBAWohASBGKAIEIAJqIUQDQAJAIEkoAgAgAXZBAXFFBEAgAEEBaiEADAELIEQgAEFcbGoiAiBE/QACAP0LAgAgAkEgaiBEQSBqKAIANgIAIAJBEGogREEQav0AAgD9CwIACyBEQSRqIUQgBCABQQFqIgFHDQALCyBGIAQgAGs2AggLIFxCAX0gXIMhXCAIQQFrIggNAQwCCwsgASACQaCIwwAQhQsACyBDKAIMIgIEQCBDKAIEIQQgQygCACIAQQhqIUUgACkDAEJ/hUKAgYKEiJCgwIB/gyFcIEMoAgghCCAAIQMgAiEBA0AgXFAEQANAIANB4AFrIQMgRSkDACFcIEVBCGohRSBcQoCBgoSIkKDAgH+DIlxCgIGChIiQoMCAf1ENAAsgXEKAgYKEiJCgwIB/hSFcCyBcQgF9IV0gRyADIFx6p0EDdkFkbGoiB0EEay0AAEcEQEGAASFEIAAgB2tBHG0iByAAaiJGKQAAIl4gXkIBhoNCgIGChIiQoMCAf4N6p0EDdiAAIAdBCGsgBHFqIgcpAAAiXiBeQgGGg0KAgYKEiJCgwIB/g3mnQQN2akEHTQRAIEMgCEEBaiIINgIIQf8BIUQLIEYgRDoAACBDIAFBAWsiATYCDCAHQQhqIEQ6AAALIFwgXYMhXCACQQFrIgINAAsLIAUoAjwhACAFKAJAIgMEQCAAQcQAaiFFA0AgRUEEaygCACIBBEAgRSgCACABQSRsQQQQ6A4LIEVB7ABqIUUgA0EBayIDDQALCyAFKAI4IgFFDQAgACABQewAbEEEEOgOCyAFQdAtaiQADAYLIAEgCCAFKgIAIAYgB0EAEIsBDAYLIERB/wFxQQVGDQAgSUH/AXFBBUcNAQsgQyBHckUNASMAQUBqIkMkACBDQRhqIAIgAygCYBEAACBDQSBqIEMoAhgiRSBDKAIcKAIMEQAAIEMpAyAhXCBDKQMoIV0gQ0EQaiAEIAUoArgBEQAAAkACQCBFQQAgXELmnbXogOPPhzGFIF1C8OKcurrU7NsmhYRQGyJFBEAgQygCECJHDQELIENBCGogAiADKAK4AREAACBDKAIMIQMgQygCCCECIEMgBCAFKAJgEQAAIENBIGoiBCBDKAIAIgUgQygCBCgCDBEAACACRQ0BIAVBACBDKQMgQuadteiA48+HMYUgQykDKELw4py6utTs2yaFhFAbIgVFDQEgQyABKgIMIg04AiwgQyABKgIIIgqMOAIoIEMgASoCBCIJjDgCJCBDIAEqAgAiC4w4AiAgQyANIAsgASoCFCIRlCAJIAEqAhAiDJSTIg4gDpIiDpQgCSAJIAEqAhgiEpQgCiARlJMiDyAPkiIPlCALIAogDJQgCyASlJMiECAQkiIQlJOSIBKTOAI4IEMgDSAQlCALIA6UIAogD5STkiARkzgCNCBDIA0gD5QgCiAQlCAJIA6Uk5IgDJM4AjAgACAEIAUgAiADIAYgByAIQQEQOAwBCyAAIAEgRSBHIEMoAhQgBiAHIAhBABA4CyBDQUBrJAAMAwsgRwRAQQAhRCAAIAEgRyBGQQxqKAIAIEZBEGooAgAgBCAFIAYgByAIQQAQnAEMBAsgQwRAIEJBwAFqIgQgARDYByAAIAQgQyBFQQxqKAIAIEVBEGooAgAgAiADIAYgByAIQQEQnAEMAwsgBygCCEUEQCAHKAIARQRAIAdBvInDABCdCAsgBygCBCIAQoCAgIDAADcCQCAAQQA2AiAgAEEANgIAIAD9DAAAAAAAAAAAAAAAAAAAAAD9CwJIIABB2ABq/QwAAAAAAAAAAAAAAAAAAAAA/QsCACAAQegAakEANgIAIAdBATYCCAsgASABIAIgAyAEIAVBACABQQAgASAGIAcoAgQQIyFEDAMLIwBBMGsiACQAIABBCGogAiADKAJgEQAAIABBEGogACgCCCJDIAAoAgwoAgwRAAACQAJAIENFDQAgACkDEELmnbXogOPPhzGFIAApAxhC8OKcurrU7NsmhYRCAFINACABIEMgBCAFIAYgByAIQQAQNQwBCyAAIAQgBSgCYBEAACAAQRBqIgUgACgCACIEIAAoAgQoAgwRAAAgBEUNACAAKQMQQuadteiA48+HMYUgACkDGELw4py6utTs2yaFhEIAUg0AIAAgASoCDCINOAIcIAAgASoCCCIKjDgCGCAAIAEqAgQiCYw4AhQgACABKgIAIguMOAIQIAAgDSALIAEqAhQiEZQgCSABKgIQIgyUkyIOIA6SIg6UIAkgCSABKgIYIhKUIAogEZSTIg8gD5IiD5QgCyAKIAyUIAsgEpSTIhAgEJIiEJSTkiASkzgCKCAAIA0gEJQgCyAOlCAKIA+Uk5IgEZM4AiQgACANIA+UIAogEJQgCSAOlJOSIAyTOAIgIAUgBCACIAMgBiAHIAhBARA1CyAAQTBqJAAMAQsgQioCaCIKQwAAAABgRQ0CIA8gE5NDAAAAP5QiFiAMIAyUIhcgHSAdlCIcIBIgEpQiIJMiHiAOIA6UIhiTkouUIBAgFJNDAAAAP5QiGSAMIA6UIgkgCZIiIiAdIBKUIgkgCZIiI5KLlCAVIAW+IgmTQwAAAD+UIhsgDCASlCILIAuSIh8gHSAOlCILIAuSIiGTi5SSkiEaIBAgFJJDAAAAP5QiECASlCAVIAmSQwAAAD+UIhUgDpSTIgkgCZIhCSAVIAyUIA8gE5JDAAAAP5QiDyASlJMiCyALkiELIEIgCiAaIA8gCSAdlCALIBKUIA8gDpQgECAMlJMiDyAPkiIPIA6Uk5KSIA2SIhOSkiINOAKsASBCIAogECALIB2UIA8gDJQgCSASlJOSkiARkiIQIBYgIiAjk4uUIBsgHSAMlCIRIBGSIhQgDiASlCIRIBGSIhKSi5QgGSAYIB6SIBeTi5SSkiIekpIiETgCqAEgQiAKIBUgDyAdlCAJIA6UIAsgDJSTkpIgBpIiDCAWICEgH5KLlCAZIBIgFJOLlCAbIBwgIJIgGJMgF5OLlJKSIg6SkiIGOAKkASBCIBMgGpMgCpMiCTgCoAEgQiAQIB6TIAqTIgs4ApwBIEIgDCAOkyAKkyIKOAKYASBCQbgBaiAHQQhqIgEoAgA2AgAgAUEANgIAIAcpAgAhXCAHQoCAgIDAADcCACBCIFw3A7ABAkAgQyBFKAIQEQQAIgIoAghFBEBBACEFQQAhCAwBC0EAIQUgAigCBCIBQQAgASoCGCAJYBtBACABKgIUIAtgG0EAIAEqAhAgCmAbQQAgASoCCCANXxtBACABKgIEIBFfG0EAIAEqAgAgBl8bIQggASgCPEH/////A3FFDQAgASoCICAGXyABKgIkIBFfcSABKgIoIA1fcSABKgIwIApgcSABKgI0IAtgcSABKgI4IAlgcSEFIAFBIGohAQsgQiAINgLQAiBCIAI2AsgCIEIgBTYCxAIgQiABNgLEASBCQQA2AsABIEIgQkGYAWo2AswCIEJByABqIEJBwAFqENkDIEIoAkhBAXEEQCBCKAJMIQEgRSgCDCECA0AgQiABNgLcAiBCQfCIwwA2AowDIEIgADYCiAMgQiAHNgKAAyBCIEQ2AvgCIEIgAzYC7AIgQiAENgLoAiBCIEJB7wBqNgKEAyBCIEJBsAFqNgL8AiBCIEJB3AJqNgL0AiBCIEJBlwFqNgLwAiBCIEJB6ABqNgLkAiBCIEJB8ABqNgLgAiBDIAEgQkHgAmpBgPjCACACEQIAIEJBQGsgQkHAAWoQ2QMgQigCRCEBIEIoAkBBAXENAAsLIEIoAsQCIgBBIU8EQCBCKALIASAAQQJ0QQQQ6A4LIEQoAgwiAARAIEQoAgQhAyBEKAIAIgJBCGohASACKQMAQn+FQoCBgoSIkKDAgH+DIVwgRCgCCCFFIEItAG8hBCACIUMgACEFA0AgXFAEQANAIENBgAFrIUMgASkDACFcIAFBCGohASBcQoCBgoSIkKDAgH+DIlxCgIGChIiQoMCAf1ENAAsgXEKAgYKEiJCgwIB/hSFcCyBcQgF9IV0gBCBDIFx6p0EBdEHwAXFrIghBBGstAABHBEBBgAEhByACIAhrQQR1IgggAmoiRykAACJeIF5CAYaDQoCBgoSIkKDAgH+DeqdBA3YgAiAIQQhrIANxaiIIKQAAIl4gXkIBhoNCgIGChIiQoMCAf4N5p0EDdmpBB00EQCBEIEVBAWoiRTYCCEH/ASEHCyBHIAc6AAAgRCAFQQFrIgU2AgwgCEEIaiAHOgAACyBcIF2DIVwgAEEBayIADQALCyBCKAK0ASEAIEIoArgBIkMEQCAAQcQAaiEBA0AgAUEEaygCACICBEAgASgCACACQSRsQQQQ6A4LIAFB7ABqIQEgQ0EBayJDDQALCyBCKAKwASIBRQ0AIAAgAUHsAGxBBBDoDgtBACFECyBCQZADaiQAIEQPCyBCQQA2AtABIEJBATYCxAEgQkHo4MIANgLAASBCQgQ3AsgBIEJBwAFqQfDgwgAQuQ0ACyAAQcEAQdDiwwAQhQsAC74lBBJ/V30FfgN7IwBBsAJrIgQkACAEQQA2AtwBIARC////+////79/NwLUASAE/Qz//39///9/f///f3///3///QsCxAEgBEEANgLAASAEQv////v///+/fzcDuAEgBP0M//9/f///f3///39///9///0LA6gBIARBADYCpAEgBEL////7////v383ApwBIAT9DP//f3///39///9/f///f//9CwKMASAEQQA2AogBIARC////+////79/NwOAASAE/Qz//39///9/f///f3///3///QsEcCAEQQA2AmwgBEL////7////v383AmQgBP0M//9/f///f3///39///9///0LAlQgBEEANgJQIARC////+////79/NwNIIAT9DP//f3///39///9/f///f//9CwM4IARBADYCNCAEQv////v///+/fzcCLCAE/Qz//39///9/f///f3///3///QsCHCAEQQA2AhggBEL////7////v383AxAgBP0M//9/f///f3///39///9///0LBAACQAJAAkACQCADQQFLBEAgA0EFdCIHQSBrIQggAioCCCACKgIYkkMAAAA/lCIXIRggAv0ABAAgAv0ABBD95AH9DAAAAD8AAAA/AAAAPwAAAD/95gEiciFzA0AgFyACIAVqIgZBKGoqAgAgBkE4aioCAJJDAAAAP5QiFiAWIBdfGyEXIBggFiAWIBhgGyEYIAZBIGr9XQIAIAZBMGr9XQIA/eQB/QwAAAA/AAAAPwAAAD8AAAA//eYBInQgcv3rASFyIHQgc/3qASFzIAggBUEgaiIFRw0ACyAEIHL9HwA4AuwBIAQgc/0fATgC5AEgBCBz/R8AOALgASAEIHL9HwE4AvABIAQgGDgC6AEgBCAXOAL0AUECIHIgc/3lASJy/R8BIhYgcv0fACIZXiIFIBcgGJMgFiAZIAUbXhsiEEECdCIFIARB4AFqaioCACEXQ1j//0AgBEHsAWogBWoqAgAgF5OVIRggBEH4AWogBWohCEEAIQUDQCACIAVqIgZBGGoqAgAhFiAEIAZBCGoqAgAgFpJDAAAAP5Q4AoACIAQgBkEEaiIJKgIAIAZBFGoqAgAiGZJDAAAAP5Q4AvwBIAQgBioCACIbIAZBEGoqAgAiGpJDAAAAP5Q4AvgBIBggCCoCACAXk5T8ASIGQQhPDQIgBCAGQRxsaiIGIAYoAhhBAWo2AhggBiAGKgIUIhwgFiAWIBxfGzgCFCAGIAYqAhAiFiAZIBYgGWAbOAIQIBv9EyAJ/V0CAP0NAAECAxAREhMUFRYXAAECAyAG/QACACJy/Q0AAQIDBAUGBwgJCgscHR4fIXMgBiByIHMgGv0gAyByIBr9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ACADQQRqKAIAIAVqIQUgA0EIaiEDIAZBAWsiBg0ACwsgBEHIAGogBRDRBiAEQdQAaiAFENEGIAghAyAKQQdxIgUEQANAIANBBGpBADYCACADQQhqIQMgBUEBayIFDQALCyACQQdJDQEgCCALQQN0aiECA0AgA0E8akEANgIAIANBNGpBADYCACADQSxqQQA2AgAgA0EkakEANgIAIANBHGpBADYCACADQRRqQQA2AgAgA0EMakEANgIAIANBBGpBADYCACACIANBQGsiA0cNAAsMAQsgBEHIAGpBABDRBiAEQdQAakEAENEGCyAMBEAgDkEUaiEDIAQoAmQhFCAEKAJYIRUgBCgCXCESIAQoAmghDyAEKAJMIRcgBCgCUCETIAQoAnAhGCAEKAJ0IQlBASEGQQAhDANAIA4hAiADIQ4gDCEDIAYhDAJAIAIoAgAiByAHIAIoAgQiDWpPDQAgB0ECdCICIBhqIQYgAiAUaiECIAcgCSAHIAlLGyIWIAdrIQUgByAPIAcgD0sbIhkgB2shBwJAAkACQAJAA0AgBUUNASAGKAIAIgogC08NAiAIIApBA3RqIgooAgQgCigCAGoiECATTw0DIBcgEEECdGogAzYCACAHRQ0EIAooAgQgCigCAGoiECASSQRAIBUgEEECdGogAigCADYCACAKIAooAgRBAWo2AgQgBkEEaiEGIAJBBGohAiAFQQFrIQUgB0EBayEHIA1BAWsiDUUNBgwBCwsgECASQcjCwwAQhQsACyAWIAlBiMLDABCFCwALIAogC0GYwsMAEIULAAsgECATQajCwwAQhQsACyAZIA9BuMLDABCFCwALIA4gEUciAiAMaiEGIA5BFEEAIAIbaiEDIAINAAsLIARBhAJqIARBCGooAgA2AgAgBEGQAmogBEEgaigCADYCACAEQZwCaiAEQRRqKAIANgIAIARBqAJqIARB0ABqKAIANgIAIARBtAJqIARB3ABqKAIANgIAIAQgBCkCADcC/AEgBCAEKQIYNwOIAiAEIAQpAgw3ApQCIAQgBCkCSDcDoAIgBCAEKQJUNwKsAiAEQcACaiAEQegAaigCADYCACAEQcwCaiAEQfQAaigCADYCACAEQfABaiICQQhqIAFBCGooAgA2AgAgBCAEKQJgNwO4AiAEIAQpAmw3AsQCIAQgASkCADcD8AEgACAC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QQxqIgAQjgEgA0EIaiAJKAIANgIAIAMgASkCADcCACADIAEpAgw3AgwgA0EUaiAAQQhqKAIANgIAIAFB4ABqJAAgBygCJCEAIAcoAhghASAHKAIsIQogBygCKCEEIAcoAiAhCyAHKAIcIQkgB0GAgID8AzYCICAHQoCAgPyDgIDAPzcCGCACIAkgCyAEIAogBSADIAYQqQMgAARAIAQgAEEDdEEEEOgOCyABRQ0KIAkgAUEMbEEEEOgODAoLIAdBGGohAyAHKAIQIQkgACgC8AEhDCAAKAL0ASEEIwBB4ABrIgEkACABQTBqIgBBCGoiCkEANgIAIAFBADYCCCABQoCAgIDAADcCACABQQA2AhQgAUKAgICAwAA3AgwgAUEANgIgIAFBADYCLCABQQA2AiQgASAJKgIAIh04AiggASAJKgIEIh+MIh44AhggASAeOAIwIAkqAgghHiABIB2MIiA4AhwgASAgIB6TOAI0IB8gH5QgHUMAAADAlCIjICOUkpEhICABIB4gIyAglZQiI0MAAAAAkjgCPCABIB0gHiAfICCVlCIhkjgCQCABIB5DAAAAACAglZRDAAAAAJIiIDgCRCABQdj5wwAQkQggASgCBCIJIAEpAjA3AgAgCUEIaiAKKAIANgIAIAFBATYCCCABICA4AlAgASAhIB2TIiE4AkwgASAjIB+TIh84AkggAUEYaiAAIAFByABqIAQgARDDAiABKAIAIgsgASgCCCIJRgRAIAFB6PnDABCRCCABKAIAIQsLIB4gHZIhHSABKAIEIgAgCUEMbGoiCiAgOAIIIAogITgCBCAKIB84AgAgASAJQQFqIgo2AgggCiALRgRAIAFB+PnDABCRCCABKAIEIQALIAAgCkEMbGoiACABKQI8NwIAIABBCGogAUE8aiIAQQhqKAIANgIAIAEgCUECajYCCCABQQA2AlAgASAdOAJMIAFBADYCSCABQSRqIAAgAUHIAGogBCABEMMCIAEoAggiACABKAIARgRAIAFBiPrDABCRCAsgAUEIaiIJIABBAWo2AgAgASgCBCAAQQxsaiIAQQA2AgggACAdOAIEIABBADYCACABQoCAgIAQNwJIIAEgBDYCUCABIARBAmo2AlQgASAEQQF0IgBBAmo2AlwgASAAQQFyNgJYQQEgAUHIAGpBAyAMIAEgAUEMaiIAEI4B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KAIEIAVqNgIEIAMgASABQQhqIgBBB2pBeHEgAGtqIgBqIgEhAiAAIANBA3I2AgQgBiAGQQhqIgVBB2pBeHEgBWtqIgQgAWshAwJAQczOxAAoAgAgBEcEQCAEQcjOxAAoAgBGDQEgBCgCBCIBQQNxQQFGBEAgBCABQXhxIgEQpwUgASADaiEDIAEgBGohBAsgBCAEKAIEQX5xNgIEIAIgA0EBcjYCBCACIANqIAM2AgAgA0GAAk8EQCACIAMQ8AUMBAsCf0G4zsQAKAIAIgFBASADQQN2dCIFcUUEQEG4zsQAIAEgBXI2AgAgA0H4AXFBsMzEAGoiAwwBCyADQfgBcSIBQbDMxABqIQMgAUG4zMQAaigCAAshASADIAI2AgggASACNgIMIAIgAzYCDCACIAE2AggMAwtBzM7EACACNgIAQcTOxABBxM7EACgCACADaiIBNgIAIAIgAUEBcjYCBAwCC0HIzsQAIAI2AgBBwM7EAEHAzsQAKAIAIANqIgE2AgAgAiABQQFyNgIEIAEgAmogATYCAAwBC0EAIQBBxM7EACgCACIBIANNDQFBxM7EACABIANrIgE2AgBBzM7EACADQczOxAAoAgAiAGoiAjYCACACIAFBAXI2AgQgACADQQNyNgIECyAAQQhqIQALIAlBEGokACAAC/kXAhx/AnwjAEGwBGsiAyQAIANCADcDmAEgA0IANwOQASADQgA3A4gBIANCADcDgAEgA0IANwN4IANCADcDcCADQgA3A2ggA0IANwNgIANCADcDWCADQgA3A1AgA0IANwNIIANCADcDQCADQgA3AzggA0IANwMwIANCADcDKCADQgA3AyAgA0IANwMYIANCADcDECADQgA3AwggA0IANwMAIANCADcDuAIgA0IANwOwAiADQgA3A6gCIANCADcDoAIgA0IANwOYAiADQgA3A5ACIANCADcDiAIgA0IANwOAAiADQgA3A/gBIANCADcD8AEgA0IANwPoASADQgA3A+ABIANCADcD2AEgA0IANwPQASADQgA3A8gBIANCADcDwAEgA0IANwO4ASADQgA3A7ABIANCADcDqAEgA0IANwOgASADQgA3A9gDIANCADcD0AMgA0IANwPIAyADQgA3A8ADIANCADcDuAMgA0IANwOwAyADQgA3A6gDIANCADcDoAMgA0IANwOYAyAD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AAsgA0GQAWokAAu2OgMefwZ+DH0jACIFISEgBUHAAmtBQHEiBCQAIARBQGtBqNzCACkDADcDACAEQfwAaiABQQhqKAIANgIAIARCADcDMCAEQoCAgIDAADcDKCAEQgQ3AyAgBEIANwMYIARCgICAgIAINwMQIARBADYCcCAEQoCAgIDAADcDaCAEQsAANwNgIARCADcDWCAEQoCAgIDAADcDUCAEQonZueKO076XCDcDSCAEQaDcwgApAwA3AzggBCABKQIANwJ0AkACQAJAAkACQAJAAkACfyADRQRAQZjcwgAhAkEADAELIAIgA0EMbGohDCAEQdwAaiEIIARB0ABqIQUgBEE4aiEDIARBsAFqIQoDQCACQQRqKAIAIRIgAkEIaigCACEWIAIoAgAiC0EfdiEBIAQgASALakEIbSABayIGNgKAAiAEIBZBH3YiASAWakEIbSABayIHNgKIAiAEIBJBH3YiASASakEIbSABayINNgKEAiAEQagBaiADIARBgAJqEOwEAn8gBCgCvAEiDgRAIAQpA6gBISIgBCgCZCIXIAQoAlxGBEAgCEGY5sMAEMQICyAEKAJgIBdBCXRqQcAAQYAE/AsAIAQgF0EBajYCZCAEKAJYIgkgBCgCUEYEQCAFQajmwwAQkQgLIAQoAlQgCUEMbGoiASAHNgIIIAEgDTYCBCABIAY2AgAgBCAJQQFqNgJYIARBgAJqIgFBCGogCkEIaigCADYCACAEQQA2ApACIAQgFzYCjAIgBCAKKQIANwOAAiAOICIgASAOQRBqEMcFDAELIAQoArABCyIJQQRrIgEgASgCAEEBajYCACAJQQhrKAIAIgkgBCgCZCIBTw0CIBIgBmtBA3QgC2ogB0EJdGsgFiANa0EGdGoiAUGABE8NAyAEKAJgIAlBCXRqIAFqQT86AAAgDCACQQxqIgJHDQALIAQoAjghAiAEKAJECyEBIAIpAwAhIiAEQgA3AqABIARCgICAgMAANwKYASAEQgQ3ApABIARCADcCiAEgBEKAgICAgAg3AoABIARBADYC+AEgBEIQNwK4ASAEQgA3ArABIARCgICAgIAINwKoASAEQgA3AvABIARCgICAgMAANwLoASAEQgA3AuABIARCgICAgMAANwLYASAEQgQ3AtABIARCADcCyAEgBEKAgICAwAA3AsABIAFFDQYgBEGAAWoiA0EMaiELIARBtAFqIhVBACABQRBBIBDYBiADQRhqIg1BACABQQRBCBDYBiACQQhqIQMgIkJ/hUKAgYKEiJCgwIB/gyEjIAEhDANAICNQBEADQCACQaABayECIAMpAwAhIiADQQhqIQMgIkKAgYKEiJCgwIB/gyIiQoCBgoSIkKDAgH9RDQALICJCgIGChIiQoMCAf4UhIwsgBCoCfCIpIAIgI3qnQQN2QWxsaiIOQQxrKAIAQQN0IgmylCEtIAQqAngiKiAOQRBrKAIAQQN0IgiylCEsIAQqAnQiKCAOQRRrKAIAQQN0IgWylCErICkgCUEIarKUISkgKiAIQQhqspQhKiAoIAVBCGqylCEoIA5BCGsoAgAhCiAEKAK8ASIGIAQoArQBRgRAIBVB0PPCABDFCAsgBCgCuAEgBkEFdGoiBUGBgICAfDYCHCAFICk4AhggBSAqOAIUIAUgKDgCECAFIAo2AgwgBSAtOAIIIAUgLDgCBCAFICs4AgAgBCAGQQFqNgK8ASAKIAQoAqABIgVPBEACQAJAIAogBWsiCEEBaiIHIAQoApgBIAVrSwRAIA0gBSAHQQRBCBDYBiAEKAKgASEFDAELIAdFDQELIAdBA3EhDiAEKAKcASEJIAhBA08EQCAHQXxxIQggCSAFQQN0aiEHA0AgB0EANgIAIAdBGGpBADYCACAHQRBqQQA2AgAgB0EIakEANgIAIAdBIGohByAFQQRqIQUgCEEEayIIDQALCyAORQ0AIAUgDmohCCAJIAVBA3RqIQcDQCAHQQA2AgAgB0EIaiEHIA5BAWsiDg0ACyAIIQULIAQgBTYCoAELIAUgCk0NAyAjQgF9ISIgBCgCnAEgCkEDdGoiCCgCACEFIAhCATcCACAFRQRAIAQgBCgCpAFBAWo2AqQBCyAiICODISMgDEEBayIMDQALIAZBAWoOAwYEAwULIAkgAUH45cMAEIULAAsgAUGABEGI5sMAEIULAAsgCiAFQZCExAAQhQsACyAEIAQoArgBIgH9AAQA/QsEgAIgBCAB/QAEIP0LBKACIAQgAUEQav0ABAD9CwSQAiAEIAFBMGr9AAQA/QsEsAIgBCgCiAEiASAEKAKAAUYEQCAEQYABakHw8sIAEMMICyAEKAKEASABQQZ0aiICIAT9AASAAv0LBAAgAkEQaiAE/QAEkAL9CwQAIAJBIGogBP0ABKAC/QsEACACQTBqIAT9AASwAv0LBAAgBCABQQFqNgKIASAEKAKUASIBIAQoAowBRgRAIAtBgPPCABC2CAsgBCgCkAEgAUECdGpBADYCACAEIAFBAWo2ApQBAkAgBCgCoAEiAUUNACAEKAKcASICKAIAQQFHDQAgAkEANgIEAkAgAUEBRg0AIAIoAghFDQAgAkEBNgIMDAQLQZDkwgBBD0Gg88IAENELAAtBkOTCAEEPQZDzwgAQ0QsACyAEIAQoArgBIgH9AAQA/QsEgAIgBCABQRBq/QAEAP0LBJACIAQoAogBIgEgBCgCgAFGBEAgBEGAAWpBwPLCABDDCAsgBCgChAEgAUEGdGoiAiAE/QAEgAL9CwQAIAL9DAAAAAAAAAAAAAAAAAAAAAD9CwQgIAJBEGogBP0ABJAC/QsEACACQTBq/QwAAAAAAAAAAAAAAAAAAAAA/QsEACAEIAFBAWo2AogBIAQoApQBIgEgBCgCjAFGBEAgC0HQ8sIAELYICyAEKAKQASABQQJ0akEANgIAIAQgAUEBajYClAECQCAEKAKgAUUNACAEKAKcASIBKAIAQQFHDQAgAUEANgIEDAILQZDkwgBBD0Hg8sIAENELAAsgBCgCgAEgBCgCiAEiAmsgAUkEQCAEQYABaiACIAFBwABBwAAQ2AYLIAQoAowBIAQoApQBIgJrIAFJBEAgBEGMAWogAiABQQRBBBDYBgtBACECIARBADYClAEgBCgCiAEiASAEKAKAAUYEQCAEQYABakGw88IAEMMIIAQoApQBIQILIAQoAoQBIAFBBnRqIgP9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIANBEGr9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIANBIGr9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIANBMGr9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIAQgAUEBajYCiAEgBCgCjAEgAkYEQCALQcDzwgAQtggLIAQoApABIAJBAnRqQQA2AgAgBCACQQFqNgKUASAEQYABaiEQQQAhA0EAIQ0jAEHQAGsiDyQAAkACQAJAAkACQCAVKAIIIggEQEEBIQdBBCEBAkACQCAIQQFHBEAgFSgCBCIMIAhBBXRqIQIgDEEgaiEBIAwqAgggDCoCGJJDAAAAP5QiKyEqIAwqAgAgDCoCEJJDAAAAP5QiLiEtIAwqAgQgDCoCFJJDAAAAP5QiLyEsA0AgKyABQQhqKgIAIAFBGGoqAgCSQwAAAD+UIikgKSArXxshKyAsIAFBBGoqAgAgAUEUaioCAJJDAAAAP5QiKCAoICxfGyEsICogKSApICpgGyEqIC8gKCAoIC9gGyEvIC0gASoCACABQRBqKgIAkkMAAAA/lCIoICggLV8bIS0gLiAoICggLmAbIS4gAiABQSBqIgFHDQALIAhBBHQiBkEIEJEOIgJFDQJDAACAPyArICqTlSErQwAAgD8gLCAvk5UhKUMAAIA/IC0gLpOVISggDCEBIAIhBQNAIAVBCGogAzYCACAFICsgAUEIaioCACABQRhqKgIAkkMAAAA/lCAqk5S7RAAAAAAAAEBBovwDQf///wBxrSIiQhCGICJCIIaEICKEQv+BgPiPgMAPg0KBAn5Cj+CD+ICewIcQg0IRfkLD4bCYjIbD4RCDQhR+QqSSyaSSyaSSyQCDICkgAUEEaioCACABQRRqKgIAkkMAAAA/lCAvk5S7RAAAAAAAAEBBovwDQf///wBxrSIiQhCGICJCIIaEICKEQv+BgPiPgMAPg0KBAn5Cj+CD+ICewIcQg0IRfkLD4bCYjIbD4RCDQgp+QpLJpJLJpJLJJIMgKCABKgIAIAFBEGoqAgCSQwAAAD+UIC6TlLtEAAAAAAAAQEGi/ANB////AHGtIiJCEIYgIkIghoQgIoRC/4GA+I+AwA+DQoECfkKP4IP4gJ7AhxCDQhF+QsPhsJiMhsPhEINCBX5CyaSSyaSSyaQSg4SENwMAIAFBIGohASAFQRBqIQUgCCADQQFqIgNHDQALAkAgCEEVTwRAIA9BEGohCSAIQQJJDQECQAJAAkAgAkEYaigCACIBIAJBCGooAgBJIAIpAxAiIiACKQMAIiNUICIgI1EbIgVFBEBBAiELIAhBAkYNASACQShqIQoDQCABIQMgAyAKKAIAIgFLIApBCGspAwAiIyAiVCAiICNRGw0CIApBEGohCiAjISIgCCALQQFqIgtHDQALDAILQQIhCyAIQQJGDQAgAkEoaiEKA0AgASEDIAMgCigCACIBSyAKQQhrKQMAIiMgIlQgIiAjURtBAUcNASAKQRBqIQogIyEiIAggC0EBaiILRw0ACwwBCyAIIAtHDQELIAVFDQIgAiAIQQR0IgpqIQ1BACEBIAhBAXYiA0EBRwRAIANB/v///wdxIQ5BACELA0AgAiALaiIHKQMAISIgB0EIaigCACEJIAcgAiAKaiIFQRBrIgP9AAMA/QsDACAFQQhrIAk2AgAgAyAiNwMAIAdBEGoiBSkDACEiIAdBGGooAgAhAyAFIA0gAUH+////AHNBBHRqIgX9AAMA/QsDACAFQQhqIAM2AgAgBSAiNwMAIApBIGshCiALQSBqIQsgDiABQQJqIgFHDQALCyAIQQJxRQ0CIAIgAUEEdGoiBSkDACEiIAVBCGooAgAhAyAFIA0gAUF/c0EEdGoiAf0AAwD9CwMAIAFBCGogAzYCACABICI3AwAMAgsgAiAIQQAgCEEBcmdBAXRBPnMgCRBTDAELIAJBEGohBSACIAZqIQkgAiEBA0AgAUEYaigCACIOIAFBCGooAgBJIAEpAxAiIyABKQMAIiJUICIgI1EbQQFGBEAgDSEBAn8DQCABIAJqIgdBEGogB/0AAwD9CwMAIAIgAUUNARogAUEQayEBIA4gB0EIaygCAEkgB0EQaykDACIiICNWICIgI1EbDQALIAEgAmpBEGoLIgMgDjYCCCADICM3AwALIA1BEGohDSAJIAUiAUEQaiIFRw0ACwtBACEFQQEhAQNAIAEhAyACIAVBBHRqIgFBCGohCSAFIAEoAggiAUsEQANAIAUgAiABQQR0aigCCCIBSw0ACwsgCSABNgIAIAEgCE8NAiAMIAVBBXRqIgcpAwAhJSAMIAFBBXRqIg1BEGoiDikDACEiIAcgDSkDADcDACAHQRBqIgEpAwAhJiABICI3AwAgB0EIaiIBKQMAISQgDUEYaiIJKQMAISMgASANQQhqIgUpAwA3AwAgB0EYaiIBKQMAISIgASAjNwMAIA0gJTcDACAOICY3AwAgBSAkNwMAIAkgIjcDACADIAhJIgkgA2ohASADIQUgCQ0ACyACIAZBCBDoDiAVKAIIIgdFDQggB0ECdCEBCyABQQQQkQ4iDARAIAdBAUcEfyABQQRrIgEEQCAMQf8BIAH8CwALIAEgDGoFIAwLQX82AgAgB0EFdCIBQRAQkQ4iGARAIA9BADYCDCAPIBg2AgggDyAHNgIEQQEhDiAHQQJJBEBBASEHDAgLIAdBBXQhHCAQQQxqIR4gFSgCBCENIBUoAgAhASAHIQgDQCABIQ4gCEEBayEGQQAhA0EBIQEDQCABIQVBfyECAkAgA0EQayIBQQAgASADTRsiASAGIANBEGoiCSAGIAlJGyIJSw0AIA0gA0EFdGohCkP//39/ISoDQAJAIAEgA0YNACABIAhJBEAgCioCFCIpIA0gAUEFdGoiCyoCFCIoICggKV8bIAoqAgQiKSALKgIEIiggKCApYBuTIiwgCioCGCIpIAsqAhgiKCAoIClfGyAKKgIIIikgCyoCCCIoICggKWAbkyIrlCAKKgIQIikgCyoCECIoICggKV8bIAoqAgAiKSALKgIAIiggKCApYBuTICwgK5KUkiIoICpdRQ0BIAEhAiAoISoMAQsgASAIQaDwwgAQhQsACyABIAlPDQEgCSABIAEgCUlqIgFPDQALCyADIAdPDQcgDCADQQJ0aiACNgIAIAUgCEkiAiAFaiEBIAUhAyACDQALQQEgCCAIQQFNGyEfQQAhASAMIQlBACEFQQAhAkEAIQMDQAJAAkACQAJAAkACQAJAIAEgHEcEQCAJKAIAIgYgB08NASAFIAwgBkECdGooAgBHDQIgBSAGSw0HIAYgCE8NBCABIA1qIgsqAgAhMCALQRxqKAIAIRMgC0EYaioCACExIAtBFGoqAgAhMiALQRBqKgIAITMgC0EMaigCACEaIAtBCGoqAgAhLiALQQRqKgIAIS8gDSAGQQV0aiIGKAIcIR0gBioCGCEtIAYqAhQhLCAGKgIQISsgBigCDCEbIAYqAgghKSAGKgIEISogBioCACEoIBAoAgghFCAIQQJHDQMgFEUNBSAQKAIEIgYgHTYCPCAGIC04AjggBiAsOAI0IAYgKzgCMCAGIBs2AiwgBiApOAIoIAYgKjgCJCAGICg4AiAgBiATNgIcIAYgMTgCGCAGIDI4AhQgBiAzOAIQIAYgGjYCDCAGIC44AgggBiAvOAIEIAYgMDgCACATQf////8DcSEgQQAhFAwGCyAHIAdB0O7CABCFCwALIAYgB0Hg7sIAEIULAAsgD0EgaiIGIAEgDWoiAkEQav0ABAD9CwQAIA8gAv0ABAD9CwQQIA8oAgQgA0YEQCAPQQRqQfDuwgAQxQggDygCCCEYCyAYIANBBXRqIgIgD/0ABBD9CwQAIAJBEGogBv0ABAD9CwQAIA8gA0EBaiICNgIMIAIhAwwECyATQf////8DcSEgIB1B/////wNxIQYgEyAdciEDIBAoAgAgFEYEQCAQQaDvwgAQwwgLIAYgIGohGSADQYCAgIB8cSEDIC0gMV8hEiAsIDJfIRYgKyAzXyEXICkgLmAhCiAqIC9gIQsgKCAwYCEGIBAgFEEBajYCCCAQKAIEIBRBBnRqIhEgHTYCPCARIC04AjggESAsOAI0IBEgKzgCMCARIBs2AiwgESApOAIoIBEgKjgCJCARICg4AiAgESATNgIcIBEgMTgCGCARIDI4AhQgESAzOAIQIBEgGjYCDCARIC44AgggESAvOAIEIBEgMDgCACAQKAIUIhMgECgCDEYEQCAeQbDvwgAQtggLIAMgGXIhAyAxIC0gEhshLSAyICwgFhshLCAzICsgFxshKyAuICkgChshKSAvICogCxshKiAwICggBhshKCAQIBNBAWo2AhQgECgCECATQQJ0akEANgIAIA8oAgQgAkYEQCAPQQRqQcDvwgAQxQggDygCCCEYCyAYIAJBBXRqIgYgAzYCHCAGIC04AhggBiAsOAIUIAYgKzgCECAGIBQ2AgwgBiApOAIIIAYgKjgCBCAGICg4AgAgDyACQQFqIgI2AgwgAiEDDAILIAYgCEGA78IAEIULAAtBACAUQZDvwgAQhQsACwJAICBBAUYEQAJAIBogECgCIE8NACAQKAIcIBpBA3RqIgYoAgBFDQAgBiAUQQF0NgIEDAILQZDkwgBBD0HQ78IAENELAAsgECgCFCIGIBpNBEAgGiAGQeDvwgAQhQsACyAQKAIQIBpBAnRqIBRBAXQ2AgALIB1B/////wNxQQFGBEACQCAbIBAoAiBPDQAgECgCHCAbQQN0aiIGKAIARQ0AIAYgFEEBdEEBcjYCBAwCC0GQ5MIAQQ9B8O/CABDRCwALIBAoAhQiBiAbTQRAIBsgBkGA8MIAEIULAAsgECgCECAbQQJ0aiAUQQF0QQFyNgIACyAJQQRqIQkgAUEgaiEBIB8gBUEBaiIFRw0ACyAVIA8oAgQiATYCACAVIAI2AgggFSgCBCEYIBUgDygCCCINNgIEIA8gDjYCBCAPQQA2AgwgDyAYNgIIIAIiCEEBSw0ACwwGC0EQIAFBwO7CABDXDQALQQQgAUGw7sIAENcNAAsgASAIQcjawgAQhQsAC0EIIAZBlNDCABDXDQALQYDhwgBB0gBB5OHCABDRCwALIAMgB0GQ8MIAEIULAAsgDkUNAQsgGCAOQQV0QRAQ6A4LIAwgB0ECdEEEEOgOCyAPQdAAaiQAIBAgBEGoAWoQ/wELIARBgAJqIgJBIGogBEGAAWoiAUEgaikCADcDACACQRBqIAFBEGr9AAIA/QsDACAEIAT9AAKAAf0LA4ACIARBqAFqEKwJIAQoAhAiAQRAIAQoAhQgAUEGdEHAABDoDgsgBCgCHCIBBEAgBCgCICABQQJ0QQQQ6A4LIAQoAigiAQRAIAQoAiwgAUEDdEEEEOgOCyAEQRBqIgJBIGogBEGAAmoiAUEgaikDADcDACACQRBqIAFBEGr9AAMA/QsDACAEIAT9AAOAAv0LAxAgBCgCRCIHBEAgBCgCOCIDQQhqIQ0gBCkDSEKDgICAEIUiIkL/////D4MhJyAiQiCIISUgAykDAEJ/hUKAgYKEiJCgwIB/gyEjIAQoAmAhHiAEKAJkIRMgBCgCPCEcIAMhCANAIAdBAWshByAjUAR+A0AgCEGgAWshCCANKQMAISIgDUEIaiENICJCgIGChIiQoMCAf4MiIkKAgYKEiJCgwIB/UQ0ACyAiQoCBgoSIkKDAgH+FBSAjCyIiQgF9ICKDISNBACECIAggInqnQQN2QWxsaiIBQQxrIQsgAUEQayEGIAFBCGshDiABQRRrIQkCQAJAAkADQCALKAIAIQUgBigCACEBIAQgCSgCAEEDdCIMIAJBB3FyIh82AqgBIAQgAUEDdCIBIAJBA3ZBB3FyIhk2AqwBIAQgBUEDdCIFIAJBBnZyIhI2ArABIBwgAUEfdiIBIBlqQQhtIAFrIhZBt9OwhXxzrSIkICV+IAxBH3YiASAfakEIbSABayIXQd2h8ct8c60iIiAnfoUgJCAnfiAiICV+hUIgiYUiIqcgBUEfdiIBIBJqQQhtIAFrIgpzrSIkQt2h8csMfiAiQiCIIiJCt9OwhQx+hSAkQrfTsIUMfiAiQt2h8csMfoVCIIiFIiKncSEFICJCGYhC/wCDQoGChIiQoMCAAX4hJCAZIBdrQQN0IB9qIApBCXRrIBIgFmtBBnRqIRkgAkEBaiEBQQAhDAJAAn8DQAJAIAMgBWopAAAiJiAkhSIiQoGChIiQoMCAAX0gIkJ/hYNCgIGChIiQoMCAf4MiIkIAUgRAA0ACQCAXIAMgInqnQQN2IAVqIBxxQWxsaiISQRRrKAIARw0AIBYgEkEQaygCAEcNACAKIBJBDGsoAgBGDQMLICJCAX0gIoMiIkIAUg0ACwtBwAAgJiAmQgGGg0KAgYKEiJCgwIB/g0IAUg0CGiAMQQhqIgwgBWogHHEhBQwBCwsgEkEIaygCACIFIBNPDQEgGUGABE8NA0HAACAeIAVBCXRqIBlqLQAAQcAARg0AGiAEQRBqIARBqAFqENQCQf8BcQshEiAOKAIAIgUgE08NAyAeIAVBCXRqIAJqIBI6AAAgASICQYAERg0EDAELCyAFIBNB9OjDABCFCwALIBlBgARBhOnDABCFCwALIAUgE0Hk6MMAEIULAAsgBw0ACwsgACAEQRBqQfAA/AoAACAhJAALqyYEB38MfQl7An4jAEHgA2siByQAIAdB6ABqIAMgBCgCYCILEQAAIAdB8ABqIgkiCCAHKAJoIgogBygCbCgCDBEAACAHKQNwISMgBykDeCEkIAdB4ABqIAUgBigCYCINEQAAIAggBygCYCIIIAcoAmQoAgwRAAACfwJ9An0CQAJAAkACQAJAAkACQAJAAkACQAJAIAhBACAHKQNwQu2MnqmHh8L4NoUgBykDeEKlnKGM45TspV6FhFAbIgxBAEdBACAKQQAgI0LtjJ6ph4fC+DaFICRCpZyhjOOU7KVehYRQGyIIG0UEQCAIQQAgBSAGKAKwAREEABsNASAMQQAgAyAEKAKwAREEABsNAiAHQdgAaiADIAsRAAAgCSAHKAJYIgogBygCXCgCDBEAACAHKQNwISMgBykDeCEkIAdB0ABqIAUgDREAACAJIAcoAlAiCCAHKAJUKAIMEQAAIApBACAjQuD8lOjPzYW1I4UgJEKc7aKrtJ79zMYAhYRQGyIKBEAgCEEAIAcpA3BC4PyU6M/NhbUjhSAHKQN4Qpztoqu0nv3MxgCFhFAbIggNBAsgB0HIAGogAyALEQAAIAdB8ABqIgggBygCSCIKIAcoAkwoAgwRAAAgBykDcCEjIAcpA3ghJCAHQUBrIAUgDREAACAIIAcoAkAiCCAHKAJEKAIMEQAAIApBACAjQpHm3a7YmZjS8gCFICRCm9vS2qyiuuuKf4WEUBsiCgRAIAhBACAHKQNwQpHm3a7YmZjS8gCFIAcpA3hCm9vS2qyiuuuKf4WEUBsiCA0FCyAHQThqIAMgCxEAACAHQfAAaiAHKAI4IgggBygCPCgCDBEAACAHKQNwISMgBykDeCEkIAdBMGogBSAGKAK0ASIMEQAAIAhBACAjQsWyireAgJGqqn+FICRCiYfbx6Gq9r0mhYRQGyIKBEAgBygCMCIIDQYLIAdBKGogAyAEKAK0ASIJEQAAIAcoAiwhCiAHKAIoIQsgB0EgaiAFIA0RAAAgB0HwAGogBygCICIIIAcoAiQoAgwRAAAgCwRAIAhBACAHKQNwQsWyireAgJGqqn+FIAcpA3hCiYfbx6Gq9r0mhYRQGyIIDQcLIAdBGGogAyAJEQAAIAcoAhwhCSAHKAIYIQogB0EQaiAFIAwRAAAgCgRAIAcoAhAiCA0ICyAHQQhqIAMgBCgCuAERAAAgBygCCCIIRQ0IIAdB8ABqIAggBygCDCABIAIgBSAGEJsBIAcqAnhD//9/fyAHKAJwGwwNC0MAAAAAIAIqAhAiDiAOlCACKgIUIg4gDpSSIAIqAhgiDiAOlJIiDpEgCCoCACAMKgIAkiIPkyAOIA8gD5RfGwwMCyAIKgIAIRQgBigCLCEBIAcgAioCDCIVIAIqAgAiGSACKgIUIhaUIAIqAgQiEiACKgIQIhiUkyIOIA6SIheUIBIgEiACKgIYIhCUIAIqAggiEyAWlJMiDiAOkiIRlCAZIBMgGJQgGSAQlJMiDiAOkiIPlJOSIBCTIhA4AsACIAcgFSARlCATIA+UIBIgF5STkiAYkyIOOAK4AiAHIBUgD5QgGSAXlCATIBGUk5IgFpMiDzgCvAIgB0HwAGogBSAHQbgCakEBIAERAgBDAAAAAEMAAAAAIA4gByoCcJMiDiAOlCAPIAcqAnSTIg4gDpSSIBAgByoCeJMiDiAOlJKRIBSTIg4gDkMAAAAAXRsgDiAOXBshDkEADAwLIAwqAgAhDyAEKAIsIQQgB0HAAmoiASACQRhqKAIANgIAIAcgAikCEDcDuAIgB0HwAGogAyAHQbgCakEBIAQRAgBDAAAAAEMAAAAAIAcqArgCIAcqAnCTIg4gDpQgByoCvAIgByoCdJMiDiAOlJIgASoCACAHKgJ4kyIOIA6UkpEgD5MiDiAOQwAAAABdGyAOIA5cGyEOQQAMCwsgByACKgIMIhY4AsQCIAcgAioCACISjDgCuAIgByAC/V0CBCIb/R8BIhOMOALAAiAHIBv9HwAiFYw4ArwCIAcgFiASIAL9XQIQIiD9HwEiEJQgFSAg/R8AIg+UkyIOIA6SIg6UIBsgFSACKgIYIhiU/RMgEyAPlP0gASATIBCU/RMgEiAYlP0gAf3lASIaIBr95AEiGv3mAf0fACASIBr9HwGUk5IgGJMiETgC0AIgByAW/RMiISAa/eYBIBsgG/0NBAUGBwABAgMAAQIDAAECAyAS/SABIiIgGiAb/Q0EBQYHAAECAwABAgMAAQIDIA79IAH95gEgGyAO/RMgGv0NAAECAxAREhMAAQIDAAECA/3mAf3lAf3kASAg/eUBIh39HwE4AswCIAcgHf0fADgCyAIgB0HYAmogCiAIIAIQoQIgByoC2AIiEEP//39/Xg0FIAdB6AJqIAggCiAHQbgCahChAiAHKgLoAiIPQ///f39eDQUgB0H4AmogCiAIIAIQ0gICQAJAIAcqAvgCIg5D//9/f14NAAJAIBBDAAAAAF9FDQAgD0MAAAAAX0UNACAOQwAAAABfDQELIA8gEF8gDiAQX3ENCCAOIA9fIA8gEGBxDQkgDiAQYCAOIA9gcQ0BQejawgBBKEGY9sIAENYMAAtDAAAAAAwKCyAHKgL8AiEQIAcqAoADIQ8gByAHKgKEAyIOOAJ4IAcgDzgCdCAHIBA4AnAgB0GUA2oiBCAKIAdB8ABqIgUQwQYgByAOjDgCeCAHIA+MOAJ0IAcgEIw4AnAgB0GsA2oiAyAHQbgCaiAFEPoIIAdBuANqIgEgCCADEMEGIAUgAiAEIAFD//9/fxCQAkMAAAAAIAcoAnBBAUcNCRogByoCiAEhDiAH/V0CgAEhHSAH/V0CdCEeIAcqAnwMCAsgB0HwAGogAiAKIAhD//9/fxCQAkMAAAAAIAcoAnBBAUcNCBogB/1dAoABIh79HwEgAioCACIUlCAe/R8AIAIqAgQiEJSTIg4gDpIhESAC/V0CBCId/QwAAAAAAAAAAAAAAAAAAAAA/Q0EBQYHAAECAwABAgMAAQIDIBT9IAEhHCAHKgKIASIO/RMgHv0NAAECAxAREhMAAQIDAAECAyAd/eYBIAdBhAFq/V0CACAc/eYB/eUBIhogGv3kASEaIAIqAhggDiACKgIMIg8gEZQgFCAa/R8BlCAQIBr9HwCUk5KSkiAHKgJ8kyIOIA6UIAL9XQIQIB4gD/0TIBr95gEgHSAR/RMgGv0NAAECAxAREhMAAQIDAAECA/3mASAcIBogGv0NBAUGBwABAgMAAQIDAAECAyAR/SAB/eYB/eUB/eQB/eQB/eQBIAf9XQJ0/eUBIhogGv3mASIa/R8AIBr9HwGSkpEMCAsgAiAKIAggBygCNEEYaigCABDZCiEOQQAMCAsgB0HwAGoiASACENgHIAEgCCALIApBGGooAgAQ2QoMBgsgBygCFCEBIAf9DAAAAAAAAAAAAAAAAAAAAAD9CwSgAiAH/QwAAAAAAQAAAAIAAAADAAAA/QsEcCAHQYABakEAQaAB/AsAIAdBADYCuAIgCUEMaigCACEGIAFBFGooAgAhBSMAQfAAayIJJAAgB0HwAGoiBAJ9An0gB0G4AmoiASgCAEEBRgRAIAEqAgghESABKgIEIRAgASoCDAwBCyACKgIUjCERIAIqAhCMIRAgAioCGIwLIg4gDpQgESARlCAQIBCUkpIiD0MAAIAoXgRAIAkgECAPkSIUlSIQOAIMIAkgESAUlSIPOAIQIAkgDiAUlSIOOAIUIAlBQGsiAyAKIAlBDGogBhEBACAJIA6MOAIgIAkgD4w4AhwgCSAQjDgCGCAJQcwAaiIBIAggAiAJQRhqIAURAgAgBEEANgK8ASAEQQA2AqwBIAQgCSkCQDcCHCAEQSRqIANBCGoiAygCADYCACAEIAkpAkw3AiggBEEwaiABQQhqIgEoAgA2AgAgCSoCRCAJKgJQkyERIAkqAkAgCSoCTJMhECADKgIAIAEqAgCTDAELIAlBADYCFCAJQoCAgPwDNwIMIAlB2ABqIgMgCiAJQQxqIAYRAQAgCUGAgICAeDYCICAJQoCAgPyLgICAgH83AhggCUHkAGoiASAIIAIgCUEYaiAFEQIAIARBADYCvAEgBEEANgKsASAEIAkpAlg3AhwgBEEkaiADQQhqIgMoAgA2AgAgBCAJKQJkNwIoIARBMGogAUEIaiIBKAIANgIAIAkqAlwgCSoCaJMhESAJKgJYIAkqAmSTIRAgAyoCACABKgIAkws4AhggBCAROAIUIAQgEDgCECAJQRhqIAIgCiAGIAggBUP//39/QQEgBBDLAUMAAAAAIQ4CQAJAAkAgCSgCGEEBaw4CAQACC0Ho2sIAQShB7InDABDWDAALIAkqAiggCSoCHJMiDiAOlCAJKgIsIAkqAiCTIg4gDpSSIAkqAjAgCSoCJJMiDiAOlJKRIQ4LIAlB8ABqJABBAAwGCyAHIAUgBigCuAERAABBASAHKAIAIgZFDQUaIAcoAgQhBSMAQTBrIggkACAIIAIqAgwiGDgCFCAIIAIqAggiE4w4AhAgCCACKgIEIhWMOAIMIAggAioCACIWjDgCCCAIIBggFiACKgIUIheUIBUgAioCECIRlJMiDiAOkiIUlCAVIBUgAioCGCIQlCATIBeUkyIOIA6SIg+UIBYgEyARlCAWIBCUkyIOIA6SIg6Uk5IgEJM4AiAgCCAYIA6UIBYgFJQgEyAPlJOSIBeTOAIcIAggGCAPlCATIA6UIBUgFJSTkiARkzgCGCAIQSRqIAYgBSABIAhBCGogAyAEEJsBIAgoAiQhASAIKgIsIQ4gCEEwaiQAIA5D//9/fyABGyEOQQAMBQtDAAAAAAwDCyAS/RMgCCoCCCAWIBIgByoC4AIiEJQgFSAHKgLcAiIPlJMiDiAOkiIXlCAVIBUgByoC5AIiFJQgEyAQlJMiDiAOkiIQlCASIBMgD5QgEiAUlJMiDiAOkiIPlJOSIBSTmCIO/SABIAj9XQIA/Qz///9/////f////3////9//U4gFiAQlCATIA+UIBUgF5STkv0TIBYgD5QgEiAXlCATIBCUk5L9IAEgB/1dAtwC/eUB/QwAAACAAAAAgAAAAIAAAACA/U79UCIeIBv9DQQFBgcQERITAAECAwABAgP95gEgGyAe/eYB/eUBIhogGv3kASIc/R8AIRQgCioCCCIPjCAYIA4gFiAUlCASIBMgHv0fAJQgEiAOlJMiDiAOkiIQlCAVIBz9HwGUk5KSkiIXkyEO/QwAAAAAAAAAAAAAAAAAAAAAIAr9XQIAIhr94QEgICAeICEgHCAb/Q0EBQYHAAECAwABAgMAAQIDIBD9IAH95gEgGyAc/eYBIBMgEJT9EyASIBSU/SAB/eUB/eQB/eQB/eQBIh/95QH96wH9DAAAAAAAAAAAAAAAAAAAAAAgHyAa/eUB/esB/eUBIhz9DAAAAAAAAAAAAAAAAAAAAAD9QiIa/R0AIBogG/0NAAECAwABAgMEBQYHAAECA/0dAYSnIA5DAAAAACAOQwAAAABgGyAXIA+TIg5DAAAAACAOQwAAAABgG5MiFEMAAAAAXHIhASAfIBz95AEgHyAB/RFBH/2rAUEf/awB/VIhHiARIBcgFiAVIB/9HwAiEJQgEiAf/R8BIg+UkyIOIA6SIhGUIBsgEv0gASATIA+U/RMgEiAXlP0gASAVIBeU/RMgEyAQlP0gAf3lASIaIBr95AEiHP3mASIa/R8AIBr9HwGTkpKSIQ4gHSAfICEgHP3mASAiIBwgG/0NBAUGBwABAgMAAQIDAAECAyAR/SAB/eYBIBsgEf0TIBz9DQABAgMQERITAAECAwABAgP95gH95QH95AH95AH95AEhHSAXIBSSIBcgAUEBcRsMAQsgByAHKgL0Aow4AnggByAHKgLwAow4AnQgByAHKgLsAow4AnAgB0GIA2oiBCAKIAdBuAJqIAdB8ABqIgMQsAUgCCoCACEPIAgqAgQhDiAHIAhBCGoiASoCAIw4AsADIAcgDow4ArwDIAcgD4w4ArgDIAdBzANqIAEoAgA2AgAgByAIKQIANwLEAyADIAdBuANqIARBARCGAyAH/V0DcCEdIAcqAnghDiAHQdADaiACIAQQ+gggICAH/V0D0AP95AEhHiAYIAcqAtgDkgshECAYIA4gFiAbIBL9IAEiHCAd/eYBIhr9HwEgGv0fAJMiDyAPkiIPlCAcIBsgDv0TIB39DQABAgMQERITAAECAwABAgP95gEgIiAdIBv9DQQFBgcAAQIDAAECAwABAgMgDv0gAf3mAf3lASIaIBr95AEiHP3mASIa/R8BIBr9HwCTkpKSIBCTIg4gDpQgICAdICEgHP3mASAbIA/9EyAc/Q0AAQIDEBESEwABAgMAAQID/eYBICIgHCAb/Q0EBQYHAAECAwABAgMAAQIDIA/9IAH95gH95QH95AH95AH95AEgHv3lASIaIBr95gEiGv0fACAa/R8BkpKRCyEOQQALIQUgACAOOAIEIAAgBTYCACAHQeADaiQAC/waAhl9An8jAEHwAGsiHSQAIB0gASoCFCIKIAEqAggiB5MiETgCECAdIAEqAhAiCyABKgIEIgmTIhM4AgwgHSABKgIMIg0gASoCACIMkyIWOAIIIB0gASoCICIIIAeTIhc4AhwgHSABKgIcIg4gCZMiGDgCGCAdIAEqAhgiDyAMkyIZOAIUIB0gAioCBCIFIAmTIhI4AiQgHSACKgIAIgQgDJMiEDgCICAdIAIqAggiBiAHkyIUOAIoAkACfwJAAkACQAJAAkACQAJAIBYgEJQgEyASlJIgESAUlJIiFUMAAAAAXyAZIBCUIBggEpSSIBcgFJSSIhJDAAAAAF9xRQRAIB0gBSALkyIQOAIwIB0gBCANkyIUOAIsIB0gBiAKkyIaOAI0IBkgFJQgGCAQlJIgFyAalJIiGyAWIBSUIBMgEJSSIBEgGpSSIhBfIBBDAAAAAGBxDQEgHSAFIA6TIhQ4AjwgHSAEIA+TIho4AjggHSAGIAiTIhw4AkAgFiAalCATIBSUkiARIByUkiITIBkgGpQgGCAUlJIgFyAclJIiEV8gEUMAAAAAYHENAiAdIAggCpMiCDgCTCAdIA4gC5MiDjgCSCAdIA8gDZMiDzgCRCAdQdAAaiAdQQhqIB1BFGogHUHEAGogHUEgaiAdQSxqIB1BOGogFSAQIBIgESAbIBMQgAQgHSgCUEEBaw4DBAUGAwsCQAJAIAQgDFsNAEEAIQIgDIsiCEMAAIB/Ww0BIASLIgpDAACAf1sNASAMIASTiyIEQwAAADRfDQAgBCAKIAggCCAKXRtDAAAANJRfRQ0BCwJAIAUgCVsNAEEAIQIgCYsiBEMAAIB/Ww0BIAWLIghDAACAf1sNASAJIAWTiyIFQwAAADRfDQAgBSAIIAQgBCAIXRtDAAAANJRfRQ0BC0EBIQIgBiAHWw0AQQAhAiAHiyIFQwAAgH9bDQAgBosiBEMAAIB/Ww0AQQEhAiAHIAaTiyIGQwAAADRfDQAgBiAEIAUgBCAFXhtDAAAANJRfIQILIABCADcCECAAIAI6AAwgACABKQIANwIAIABBCGogAUEIaigCADYCAAwICwJAAkAgBCANWw0AQQAhASANiyIIQwAAgH9bDQEgBIsiB0MAAIB/Ww0BIA0gBJOLIgRDAAAANF8NACAEIAcgCCAHIAheG0MAAAA0lF9FDQELAkAgBSALWw0AQQAhASALiyIEQwAAgH9bDQEgBYsiCEMAAIB/Ww0BIAsgBZOLIgVDAAAANF8NACAFIAggBCAEIAhdG0MAAAA0lF9FDQELQQEhASAGIApbDQBBACEBIAqLIgVDAACAf1sNACAGiyIEQwAAgH9bDQBBASEBIAogBpOLIgZDAAAANF8NACAGIAQgBSAEIAVeG0MAAAA0lF8hAQsgAEKAgICAEDcCECAAIAE6AAwgACAKOAIIIAAgCzgCBCAAIA04AgAMBwsCQAJAIAQgD1sNAEEAIQEgD4siB0MAAIB/Ww0BIASLIglDAACAf1sNASAPIASTiyIEQwAAADRfDQAgBCAJIAcgByAJXRtDAAAANJRfRQ0BCwJAIAUgDlsNAEEAIQEgDosiBEMAAIB/Ww0BIAWLIgdDAACAf1sNASAOIAWTiyIFQwAAADRfDQAgBSAHIAQgBCAHXRtDAAAANJRfRQ0BC0EBIQEgBiAIWw0AQQAhASAIiyIFQwAAgH9bDQAgBosiBEMAAIB/Ww0AQQEhASAIIAaTiyIGQwAAADRfDQAgBiAEIAUgBCAFXhtDAAAANJRfIQELIABCgICAgCA3AhAgACABOgAMIAAgCDgCCCAAIA44AgQgACAPOAIADAYLIBUgHSoCCCIKIAqUIB0qAgwiCyALlJIgHSoCECINIA2UkpUhCCAHIA0gCJSSIQcgCSALIAiUkiEJAkACQCAEIAwgCiAIlJIiDFsNAEEAIQEgBIsiCkMAAIB/Ww0BIAyLIgtDAACAf1sNASAMIASTiyIEQwAAADRfDQAgBCAKIAsgCiALXhtDAAAANJRfRQ0BCwJAIAUgCVsNAEEAIQEgBYsiBEMAAIB/Ww0BIAmLIgpDAACAf1sNASAJIAWTiyIFQwAAADRfDQAgBSAEIAogBCAKXhtDAAAANJRfRQ0BC0EBIQEgBiAHWw0AQQAhASAGiyIFQwAAgH9bDQAgB4siBEMAAIB/Ww0AQQEhASAHIAaTiyIGQwAAADRfDQAgBiAFIAQgBCAFXRtDAAAANJRfIQELQwAAgD8gCJMhBSAAQgE3AhAMAwsgEiAdKgIUIgogCpQgHSoCGCILIAuUkiAdKgIcIg0gDZSSlSEIIAcgDSAIlJIhByAJIAsgCJSSIQkCQAJAIAQgDCAKIAiUkiIMWw0AQQAhASAEiyIKQwAAgH9bDQEgDIsiC0MAAIB/Ww0BIAwgBJOLIgRDAAAANF8NACAEIAogCyAKIAteG0MAAAA0lF9FDQELAkAgBSAJWw0AQQAhASAFiyIEQwAAgH9bDQEgCYsiCkMAAIB/Ww0BIAkgBZOLIgVDAAAANF8NACAFIAQgCiAEIApeG0MAAAA0lF9FDQELQQEhASAGIAdbDQBBACEBIAaLIgVDAACAf1sNACAHiyIEQwAAgH9bDQBBASEBIAcgBpOLIgZDAAAANF8NACAGIAUgBCAEIAVdG0MAAAA0lF8hAQtDAACAPyAIkyEFIABCgYCAgCA3AhAMAgsgHSoCRCIMIB0qAiyUIB0qAkgiCSAdKgIwlJIgHSoCTCIHIB0qAjSUkiAMIAyUIAkgCZSSIAcgB5SSlSEIIAogByAIlJIhByALIAkgCJSSIQkCQAJAIAQgDSAMIAiUkiIMWw0AQQAhASAEiyIKQwAAgH9bDQEgDIsiC0MAAIB/Ww0BIAwgBJOLIgRDAAAANF8NACAEIAogCyAKIAteG0MAAAA0lF9FDQELAkAgBSAJWw0AQQAhASAFiyIEQwAAgH9bDQEgCYsiCkMAAIB/Ww0BIAkgBZOLIgVDAAAANF8NACAFIAQgCiAEIApeG0MAAAA0lF9FDQELQQEhASAGIAdbDQBBACEBIAaLIgVDAACAf1sNACAHiyIEQwAAgH9bDQBBASEBIAcgBpOLIgZDAAAANF8NACAGIAUgBCAEIAVdG0MAAAA0lF8hAQtDAACAPyAIkyEFIABCgYCAgBA3AhAMAQsCQAJAAkACQCAdKgJYIB0qAlwiBZIgHSoCYCIEkiIGQwAAAABbBEAgAw0DIB0qAiwiBSAFlCAdKgIwIgUgBZSSIB0qAjQiBSAFlJIgGyAQkyIFIBMgBZIgEZOVIgUgBSAPIA+UIA4gDpSSIAggCJSSlJSTIRMgHSoCICIEIASUIB0qAiQiBCAElJIgHSoCKCIEIASUkiIGIBUgFSAQk5UiBCAEIB0qAggiFSAVlCAdKgIMIhAgEJSSIB0qAhAiFiAWlJKUlJMiGCAGIBIgEiARk5UiBiAGIB0qAhQiEiASlCAdKgIYIhEgEZSSIB0qAhwiFyAXlJKUlJMiGV0NAiATIBleDQEgCiAIIAWUkiEIIAsgDiAFlJIhByANIA8gBZSSIQlBASEBDAQLIB0oAlQhHiAdKgIIIQogHSoCFCELIB0qAgwhDSAdKgIYIQ4gHSAHIAVDAACAPyAGlSIGlCIFIB0qAhCUkiAEIAaUIgggHSoCHJSSIg84AmwgHSAJIAUgDZSSIAggDpSSIg04AmggHSAMIAUgCpSSIAggC5SSIgw4AmRBACEBAkACQCAdQeQAaiIDKgIAIgQgAioCACIGWw0AIASLIgdDAACAf1sNASAGiyIJQwAAgH9bDQEgBCAGk4siBEMAAAA0Xw0AIAQgCSAHIAcgCV0bQwAAADSUX0UNAQsCQCADKgIEIgQgAioCBCIGWw0AIASLIgdDAACAf1sNASAGiyIJQwAAgH9bDQEgBCAGk4siBEMAAAA0Xw0AIAQgCSAHIAcgCV0bQwAAADSUX0UNAQtBASEBIAMqAggiBCACKgIIIgZbDQBBACEBIASLIgdDAACAf1sNACAGiyIJQwAAgH9bDQBBASEBIAQgBpOLIgRDAAAANF8NACAEIAkgByAHIAldG0MAAAA0lF8hAQsgAEMAAIA/IAWTIAiTOAIYIAAgHjYCFCAAQQI2AhAgACABOgAMIAAgDzgCCCAAIA04AgQgACAMOAIAQRwhAkEgDAULIAcgBiAXlJIhCCAJIAYgEZSSIQcgDCAGIBKUkiEJQQIhASAGIQUMAgsgEyAYXkUEQCAKIAggBZSSIQggCyAOIAWUkiEHIA0gDyAFlJIhCUEBIQEMAgsgByAEIBaUkiEIIAkgBCAQlJIhByAMIAQgFZSSIQlBACEBIAQhBQwBCyAAQQM2AhAgAEEBOgAMIAAgAikCADcCACAAQQhqIAJBCGooAgA2AgAMAwsgACAFOAIcIAAgATYCFCAAQQE2AhAgAEEBOgAMIAAgCDgCCCAAIAc4AgQgACAJOAIAIABDAACAPyAFkzgCGAwCCyAAIAE6AAwgACAHOAIIIAAgCTgCBCAAIAw4AgBBGCECQRwLIQEgACACaiAFOAIAIAAgAWogCDgCAAsgHUHwAGokAAviGQIgfQJ/IwBB8ABrIiQkACAkIAEqAhQiECABKgIIIgiTIgk4AhAgJCABKgIQIhQgASoCBCILkyIKOAIMICQgASoCDCIVIAEqAgAiDJMiETgCCCAkIAEqAiAiDSAIkyIHOAIcICQgASoCHCIOIAuTIhI4AhggJCABKgIYIg8gDJMiEzgCFCAkIAIqAggiBiAIkyIaOAIoICQgAioCBCIFIAuTIhs4AiQgJCACKgIAIgQgDJMiHDgCIAJAAn8CQAJAAkACQAJAAkACQCARIByUIAogG5SSIAkgGpSSIh1DAAAAAF8gEyAclCASIBuUkiAHIBqUkiIeQwAAAABfcUUEQCAkIAYgEJMiFjgCNCAkIAUgFJMiFzgCMCAkIAQgFZMiGDgCLCARIBiUIAogF5SSIAkgFpSSIh9DAAAAAGAgEyAYlCASIBeUkiAHIBaUkiIgIB9fcQ0BICQgBSAOkyIZOAI8ICQgBCAPkyIhOAI4ICQgBiANkyIiOAJAIBEgIZQgCiAZlJIgCSAilJIiIyATICGUIBIgGZSSIAcgIpSSIhlfIBlDAAAAAGBxDQIgJCANIBCTIg04AkwgJCAOIBSTIg44AkggJCAPIBWTIg84AkQgJEHQAGogJEEIaiAkQRRqICRBxABqICRBIGogJEEsaiAkQThqIB0gHyAeIBkgICAjEIAEICQoAlBBAWsOAwQFBgMLAkACQCAEIAxbDQBBACECIAyLIgdDAACAf1sNASAEiyIJQwAAgH9bDQEgDCAEk4siBEMAAAA0Xw0AIAQgCSAHIAcgCV0bQwAAADSUX0UNAQsCQCAFIAtbDQBBACECIAuLIgRDAACAf1sNASAFiyIHQwAAgH9bDQEgCyAFk4siBUMAAAA0Xw0AIAUgByAEIAQgB10bQwAAADSUX0UNAQtBASECIAYgCFsNAEEAIQIgCIsiBUMAAIB/Ww0AIAaLIgRDAACAf1sNAEEBIQIgCCAGk4siBkMAAAA0Xw0AIAYgBCAFIAQgBV4bQwAAADSUXyECCyAAQgA3AhAgACACOgAMIAAgASkCADcCACAAQQhqIAFBCGooAgA2AgAMCAsCQAJAIAQgFVsNAEEAIQEgFYsiB0MAAIB/Ww0BIASLIghDAACAf1sNASAVIASTiyIEQwAAADRfDQAgBCAIIAcgByAIXRtDAAAANJRfRQ0BCwJAIAUgFFsNAEEAIQEgFIsiBEMAAIB/Ww0BIAWLIgdDAACAf1sNASAUIAWTiyIFQwAAADRfDQAgBSAHIAQgBCAHXRtDAAAANJRfRQ0BC0EBIQEgBiAQWw0AQQAhASAQiyIFQwAAgH9bDQAgBosiBEMAAIB/Ww0AQQEhASAQIAaTiyIGQwAAADRfDQAgBiAEIAUgBCAFXhtDAAAANJRfIQELIABCgICAgBA3AhAgACABOgAMIAAgEDgCCCAAIBQ4AgQgACAVOAIADAcLAkACQCAEIA9bDQBBACEBIA+LIgdDAACAf1sNASAEiyIIQwAAgH9bDQEgDyAEk4siBEMAAAA0Xw0AIAQgCCAHIAcgCF0bQwAAADSUX0UNAQsCQCAFIA5bDQBBACEBIA6LIgRDAACAf1sNASAFiyIHQwAAgH9bDQEgDiAFk4siBUMAAAA0Xw0AIAUgByAEIAQgB10bQwAAADSUX0UNAQtBASEBIAYgDVsNAEEAIQEgDYsiBUMAAIB/Ww0AIAaLIgRDAACAf1sNAEEBIQEgDSAGk4siBkMAAAA0Xw0AIAYgBCAFIAQgBV4bQwAAADSUXyEBCyAAQoCAgIAgNwIQIAAgAToADCAAIA04AgggACAOOAIEIAAgDzgCAAwGCyAIIAkgHSARIBGUIAogCpSSIAkgCZSSlSIHlJIhCCALIAogB5SSIQkCQAJAIAQgDCARIAeUkiILWw0AQQAhASAEiyIKQwAAgH9bDQEgC4siDEMAAIB/Ww0BIAsgBJOLIgRDAAAANF8NACAEIAogDCAKIAxeG0MAAAA0lF9FDQELAkAgBSAJWw0AQQAhASAFiyIEQwAAgH9bDQEgCYsiCkMAAIB/Ww0BIAkgBZOLIgVDAAAANF8NACAFIAQgCiAEIApeG0MAAAA0lF9FDQELQQEhASAGIAhbDQBBACEBIAaLIgVDAACAf1sNACAIiyIEQwAAgH9bDQBBASEBIAggBpOLIgZDAAAANF8NACAGIAUgBCAEIAVdG0MAAAA0lF8hAQtDAACAPyAHkyEGIABCATcCEAwDCyAIIAcgHiATIBOUIBIgEpSSIAcgB5SSlSIHlJIhCCALIBIgB5SSIQkCQAJAIAQgDCATIAeUkiILWw0AQQAhASAEiyIKQwAAgH9bDQEgC4siDEMAAIB/Ww0BIAsgBJOLIgRDAAAANF8NACAEIAogDCAKIAxeG0MAAAA0lF9FDQELAkAgBSAJWw0AQQAhASAFiyIEQwAAgH9bDQEgCYsiCkMAAIB/Ww0BIAkgBZOLIgVDAAAANF8NACAFIAQgCiAEIApeG0MAAAA0lF9FDQELQQEhASAGIAhbDQBBACEBIAaLIgVDAACAf1sNACAIiyIEQwAAgH9bDQBBASEBIAggBpOLIgZDAAAANF8NACAGIAUgBCAEIAVdG0MAAAA0lF8hAQtDAACAPyAHkyEGIABCgYCAgCA3AhAMAgsgECANIA8gGJQgDiAXlJIgDSAWlJIgDyAPlCAOIA6UkiANIA2UkpUiB5SSIQggFCAOIAeUkiEJAkACQCAEIBUgDyAHlJIiC1sNAEEAIQEgBIsiCkMAAIB/Ww0BIAuLIgxDAACAf1sNASALIASTiyIEQwAAADRfDQAgBCAKIAwgCiAMXhtDAAAANJRfRQ0BCwJAIAUgCVsNAEEAIQEgBYsiBEMAAIB/Ww0BIAmLIgpDAACAf1sNASAJIAWTiyIFQwAAADRfDQAgBSAEIAogBCAKXhtDAAAANJRfRQ0BC0EBIQEgBiAIWw0AQQAhASAGiyIFQwAAgH9bDQAgCIsiBEMAAIB/Ww0AQQEhASAIIAaTiyIGQwAAADRfDQAgBiAFIAQgBCAFXRtDAAAANJRfIQELQwAAgD8gB5MhBiAAQoGAgIAQNwIQDAELAkACQAJAAkAgJCoCWCAkKgJcIgaSICQqAmAiBZIiBEMAAAAAWwRAIAMNAyAYIBiUIBcgF5SSIBYgFpSSICAgH5MiBiAjIAaSIBmTlSIGIAYgDyAPlCAOIA6UkiANIA2UkpSUkyEWIBwgHJQgGyAblJIgGiAalJIiBCAdIB0gH5OVIgUgBSARIBGUIAogCpSSIAkgCZSSlJSTIhcgBCAeIB4gGZOVIgQgBCATIBOUIBIgEpSSIAcgB5SSlJSTIhhdDQIgFiAYXg0BIBAgDSAGlJIhByAUIA4gBpSSIQggFSAPIAaUkiEJQQEhAQwECyAkKAJUISUgJCAHIAVDAACAPyAElSIFlCIHlCAIIAkgBiAFlCIGlJKSIhA4AmwgJCASIAeUIAsgCiAGlJKSIgs4AmggJCATIAeUIAwgESAGlJKSIgo4AmRBACEBAkACQCAkQeQAaiIDKgIAIgUgAioCACIEWw0AIAWLIghDAACAf1sNASAEiyIJQwAAgH9bDQEgBSAEk4siBUMAAAA0Xw0AIAUgCSAIIAggCV0bQwAAADSUX0UNAQsCQCADKgIEIgUgAioCBCIEWw0AIAWLIghDAACAf1sNASAEiyIJQwAAgH9bDQEgBSAEk4siBUMAAAA0Xw0AIAUgCSAIIAggCV0bQwAAADSUX0UNAQtBASEBIAMqAggiBSACKgIIIgRbDQBBACEBIAWLIghDAACAf1sNACAEiyIJQwAAgH9bDQBBASEBIAUgBJOLIgVDAAAANF8NACAFIAkgCCAIIAldG0MAAAA0lF8hAQsgAEMAAIA/IAaTIAeTOAIYIAAgJTYCFCAAQQI2AhAgACABOgAMIAAgEDgCCCAAIAs4AgQgACAKOAIAQRwhAkEgDAULIAggByAElJIhByALIBIgBJSSIQggDCATIASUkiEJQQIhASAEIQYMAgsgFiAXXkUEQCAQIA0gBpSSIQcgFCAOIAaUkiEIIBUgDyAGlJIhCUEBIQEMAgsgCCAJIAWUkiEHIAsgCiAFlJIhCCAMIBEgBZSSIQlBACEBIAUhBgwBCyAAQQM2AhAgAEEBOgAMIAAgAikCADcCACAAQQhqIAJBCGooAgA2AgAMAwsgACAGOAIcIAAgATYCFCAAQQE2AhAgAEEBOgAMIAAgBzgCCCAAIAg4AgQgACAJOAIAIABDAACAPyAGkzgCGAwCCyAAIAE6AAwgACAIOAIIIAAgCTgCBCAAIAs4AgBBGCECQRwLIQEgACACaiAGOAIAIAAgAWogBzgCAAsgJEHwAGokAAvIFgMbfQt/AnsjAEHwAGsiHiQAAkAgAS0AUEEBcUUNAAJ9AkACQAJAAkACQCABKAIMQQFrIiMEQCABKAJMQQF2IiIgAkshISABKAIkIiUgAkEAICIgIRtrIiYgI24iH00NASAmIB8gI2xrIiAgASgCICIkTw0BIAEoAhgiJyAfICRsaiAgai0AACECIB5BCGogASAgIB8QnQIgHioCVCEYIB4qAlAhGSAeKgJMIRogHioCSCEbIB4qAkQhHCAeKgJAIR0gHioCPCETIB4qAjghFCAeKgI0IRUgHigCMCEoIB4qAiwhEiAeKgIoIQ0gHioCJCEOIB4qAiAhCSAeKgIcIQwgHioCGCEDIB4qAhQhDyAeKgIQIRYgHioCDCEXIB4oAgghIgJAAn0CQAJ9AkAgIUUEQEEAISEgKEEBcUUNDSAdIBWTIgggGSAUkyIElCAcIBSTIgUgGiAVkyIHlJMiCyALlCAFIBggE5MiCpQgGyATkyIFIASUkyIEIASUIAUgB5QgCCAKlJMiByAHlJKSIgVDAACAKF5FDQ0gAkEBcSECIAsgBZEiBZUhCiAHIAWVIQcgBCAFlSEFICJBAXFFDQEgCiERIAUhECAHIAMgF5MiBiANIBaTIgOUIAwgFpMiBCAOIBeTIguUkyIMIAyUIAQgEiAPkyIIlCAJIA+TIgQgA5STIgMgA5QgBCALlCAGIAiUkyIIIAiUkpIiBEMAAIAoXkUNAhogDCAEkSIElSERIAMgBJUhECAIIASVDAILQQAhISAiQQFxRQ0MIAMgF5MiCCANIBaTIgSUIAwgFpMiBSAOIBeTIgeUkyILIAuUIAUgEiAPkyIKlCAJIA+TIgUgBJSTIgQgBJQgBSAHlCAIIAqUkyIHIAeUkpIiBUMAAIAoXkUNDCAeQQhqIAEgIEEBayAfEJ0CIAsgBZEiBZUhCiAHIAWVIQcgBCAFlSEFIB4oAjBBAXFFDQIgCiERIAchDyAFIB4qAlAgHioCOCIIkyIMIB4qAkAgHioCNCIEkyIGlCAeKgJEIAiTIgMgHioCTCAEkyILlJMiCSAJlCAeKgJUIB4qAjwiBJMiCCADlCAeKgJIIASTIgQgDJSTIgMgA5QgBCALlCAIIAaUkyIIIAiUkpIiBEMAAIAoXkUNAxogCSAEkSIElSERIAggBJUhDyADIASVDAMLIAogBUMAAIA/QwAAgL8gAhsiBCAKlJIiC5QgByAFQwAAAICUIAQgB5STIgiUkyIQIAcgCkMAAAAAlCAHkyIElCAFIAuUkyILIAuUIBAgEJQgBSAIlCAKIASUkyIIIAiUkpKRIgSVIRAgCyAElSERIAggBJULIQ8gHkEIaiABICBBAWogHxCdAgJ9IB4oAghBAXEEQCAKIQsgByEIIAUgHioCKCAeKgIQIgaTIg0gHioCGCAeKgIMIgOTIg6UIB4qAhwgBpMiCSAeKgIkIAOTIgyUkyISIBKUIB4qAiwgHioCFCIDkyIGIAmUIB4qAiAgA5MiAyANlJMiCSAJlCADIAyUIAYgDpSTIgYgBpSSkiIDQwAAgCheRQ0BGiASIAORIgSVIQsgBiAElSEIIAkgBJUMAQsgByAHIApDAAAAAJQiBJMiCJQgBSAEIAWTIgSUkyILIAsgC5QgCiAElCAHIAVDAAAAAJQgB0MAAAAAlJMiBJSTIgMgA5QgBSAElCAKIAiUkyIIIAiUkpKRIgSVIQsgCCAElSEIIAMgBJULIQQgAkUNAgwGCyAHIAeMIApDAAAAgJQiBJMiCJQgBSAFIASSIgSUkyILIAsgC5QgCiAElCAHIAdDAAAAAJQgBUMAAACAlJIiBJSTIgsgC5QgBSAElCAKIAiUkyIIIAiUkpKRIgSVIREgCCAElSEPIAsgBJULIRAgAkEBcSECAn0gKEEBcQRAIAohCyAHIQggBSAdIBWTIg4gGSAUkyIJlCAcIBSTIgMgGiAVkyIMlJMiDSANlCADIBggE5MiBpQgGyATkyIDIAmUkyIJIAmUIAMgDJQgDiAGlJMiBiAGlJKSIgNDAACAKF5FDQEaIA0gA5EiBJUhCyAGIASVIQggCSAElQwBCyAHIAcgCkMAAAAAlJMiC5QgBUMAAIC/QwAAgD8gAhsiCCAKlCAFkyIElJMiAyADIAOUIAogBJQgByAFQwAAAACUIAggB5STIgSUkyIDIAOUIAUgBJQgCiALlJMiCCAIlJKSkSIElSELIAggBJUhCCADIASVCyEEIAJFDQQLAkAgHyABKAIQQQJrTw0AIB5BCGoiAiABICAgH0EBaiIBEJ0CIAEgJU8NAyAeQTBqIAIgJyABICRsaiAgai0AAEEBcSICGygCAEEBcUUNACAeQTRqIB5BDGogAhsiAf0AAgAiKf0fACEGICn9HwMgBpMiDiAB/QACECIq/R8DICn9HwEiA5MiCZQgKv0fACADkyIDICr9HwIgBpMiDJSTIg0gDZQgAyAeQdQAaiAeQSxqIAIbKgIAICn9HwIiA5MiBpQgKv0fASADkyIDIAmUkyIJIAmUIAMgDJQgDiAGlJMiBiAGlJKSIgNDAACAKF5FDQUgDSADkSIDlSEMIAYgA5UhBiAJIAOVDAcLIAcgB0MAAAAAlCAKQwAAAACUkyIMlCAFIAogBUMAAAAAlCIGkyIDlJMiCSAJIAmUIAogA5QgByAGIAeTIgOUkyIJIAmUIAUgA5QgCiAMlJMiBiAGlJKSkSIDlSEMIAYgA5UhBiAJIAOVDAYLQbzJwwAQkg0ACyAeQQA2AhggHkEBNgIMIB5B/NzCADYCCCAeQgQ3AhAgHkEIakGMysMAELkNAAsgHkEANgJoIB5BATYCXCAeQfzcwgA2AlggHkIENwJgIB5B2ABqQZzKwwAQuQ0ACyAjICZLDQEgHkEIaiICIAEgICAfQQFrIgEQnQIgASAlSQRAIAIgHkEwaiAnIAEgJGxqICBqLQAAQQFxIgIbKAIAQQFxRQ0CIB5BDGogHkE0aiACGyIB/QACACIp/R8AIQYgKf0fAyAGkyIOIAH9AAIQIir9HwMgKf0fASIDkyIJlCAq/R8AIAOTIgMgKv0fAiAGkyIMlJMiDSANlCADIB5BLGogHkHUAGogAhsqAgAgKf0fAiIDkyIGlCAq/R8BIAOTIgMgCZSTIgkgCZQgAyAMlCAOIAaUkyIGIAaUkpIiA0MAAIAoXkUNASANIAORIgOVIQwgBiADlSEGIAkgA5UMAwsgHkEANgJoIB5BATYCXCAeQfzcwgA2AlggHkIENwJgIB5B2ABqQazKwwAQuQ0ACyAKIQwgByEGIAUMAQsgByAKQwAAAACUIAdDAAAAgJSSIgyUIAUgCowgBUMAAACAlCIGkyIDlJMiCSAJIAmUIAogA5QgByAHIAaSIgOUkyIJIAmUIAUgA5QgCiAMlJMiBiAGlJKSkSIDlSEMIAYgA5UhBiAJIAOVCyEDIAAgCjgCDCAAIAc4AgggACAFOAIEIAogDJJDAAAAP5QiDCAMlCAHIAaSQwAAAD+UIgYgBpQgBSADkkMAAAA/lCIDIAOUkpKRIQkgACAMIAmVOAIwIAAgBiAJlTgCLCAAIAMgCZU4AiggCyAKkkMAAAA/lCILIAuUIAggB5JDAAAAP5QiCCAIlCAEIAWSQwAAAD+UIgQgBJSSkpEhAyAAIAsgA5U4AiQgACAIIAOVOAIgIAAgBCADlTgCHCARIAqSQwAAAD+UIgQgBJQgDyAHkkMAAAA/lCIKIAqUIBAgBZJDAAAAP5QiBSAFlJKSkSEHIAAgBCAHlTgCGCAAIAogB5U4AhQgACAFIAeVOAIQQQEhIQsgACAhNgIAIB5B8ABqJAALnBoDDH8DfgF7IwBBgAZrIgskAAJAAkAgAUEhSQ0AA0AgA0UEQCAAIQMgAUEBdiABaiIKBEADQAJAAn8gCkEBayIKIAFPBEAgCiABawwBCyAD/QADACEUIAMgAyAKQQR0aiIA/QADAP0LAwAgACAU/QsDAEEACyIAQQF0IgRBAXIiAiABIAogASAKSRsiB08NAANAIARBAmoiBCAHSQRAIAMgAkEEdGoiBSkDACESIAMgBEEEdGoiBCkDACERIAIgBUEIaigCACAEQQhqKAIASSARIBJWIBEgElEbaiECCyADIABBBHRqIglBCGoiBigCACIFIAMgAkEEdGoiCEEIaiIEKAIAIgBJIAkpAwAiEiAIKQMAIhFUIBEgElEbQQFHDQEgCCASPgIAIAkgET4CACAJIBFCIIg+AgQgCCASQiCIPgIEIAYgADYCACAEIAU2AgAgCSgCDCEAIAkgCCgCDDYCDCAIIAA2AgwgByACIgBBAXQiBEEBciICSw0ACwsgCg0ACwsMAwsgACABQQN2IgVB8ABsaiEKIAAgBUEGdGohCSADQQFrIQMCfyABQcAATwRAIAAgCSAKIAUQ5wcMAQsgAEEIaigCACIGIAlBCGooAgAiB0kgACkDACITIAkpAwAiElQgEiATURshCCAAIAggBiAKQQhqKAIAIgZJIAopAwAiESATViARIBNRG0cNABogCiAJIAggBiAHSyARIBJWIBEgElEbcxsLIABrIQUCQAJ/AkAgAkUNACAAIAVqIgYpAwAhEiACQQhqKAIAIAZBCGooAgBJIAIpAwAiESASVCARIBJRGw0AIAsgAP0AAwD9CwMAIAAgBv0AAwD9CwMAIAYgC/0AAwD9CwMAIABBCGooAgAhDCAAKQMAIRMgACgCGCEOIAApAxAhEkEAIQcgAEEQaiIPIQYgAEEgaiIFIAAgAUEEdGoiDUEQayIKSQRAIAAhBQNAIAVBEGogDyAHQQR0aiII/QADAP0LAwAgBUEoaigCACEGIAVBIGoiAikDACERIAggAv0AAwD9CwMAIAIgDyAHIAYgDE0gESATWCARIBNRG2oiCUEEdGoiCP0AAwD9CwMAIAVBOGooAgAhByAFQTBqIgYpAwAhESAIIAb9AAMA/QsDACAJIAcgDE0gESATWCARIBNRG2ohByAFQUBrIQYgAiEFIAYgCkkNAAsgBUEQaiEGIAVBIGohBQsgBSANRwRAA0AgBUEIaigCACEIIAYgDyAHQQR0aiIC/QADAP0LAwAgBSkDACERIAIgBf0AAwD9CwMAIAcgCCAMTSARIBNYIBEgE1EbaiEHIA0gBSIGQRBqIgVHDQALIAVBEGshBgsgBiAPIAdBBHRqIgL9AAMA/QsDACACQQhqIA42AgAgAiASNwMAIAcgDCAOTyASIBNYIBIgE1EbaiIFIAFPDQIgCyAA/QADAP0LAwAgACAAIAVBBHRqIgL9AAMA/QsDACACIAv9AAMA/QsDACABIAVBAWoiBWshAUEAIQIgACAFQQR0agwBCyALIAD9AAMA/QsDACAAIAAgBWoiBf0AAwD9CwMAIAUgC/0AAwD9CwMAIABBCGooAgAhECAAKQMAIRMgACgCGCEPIAApAxAhEkEAIQcgAEEQaiIMIQYgAEEgaiIFIAAgAUEEdGoiDkEQayINSQRAIAAhBQNAIAVBEGogDCAHQQR0aiIJ/QADAP0LAwAgBUEoaigCACEIIAVBIGoiBikDACERIAkgBv0AAwD9CwMAIAYgDCAHIAggEEkgESATVCARIBNRG2oiCkEEdGoiCf0AAwD9CwMAIAVBOGooAgAhCCAFQTBqIgcpAwAhESAJIAf9AAMA/QsDACAKIAggEEkgESATVCARIBNRG2ohByAFQUBrIQggBiEFIAggDUkNAAsgBUEQaiEGIAVBIGohBQsgBSAORwRAA0AgBUEIaigCACEIIAYgDCAHQQR0aiIG/QADAP0LAwAgBSkDACERIAYgBf0AAwD9CwMAIAcgCCAQSSARIBNUIBEgE1EbaiEHIA4gBSIGQRBqIgVHDQALIAVBEGshBgsgBiAMIAdBBHRqIgX9AAMA/QsDACAFQQhqIA82AgAgBSASNwMAIAcgDyAQSSASIBNUIBIgE1EbaiIGIAFPDQEgCyAA/QADAP0LAwAgACAAIAZBBHRqIgX9AAMA/QsDACAFIAv9AAMA/QsDACAAIAYgAiADIAQQUyABIAZBf3NqIQEgBSICQRBqCyEAIAFBIU8NAQwCCwsACyABQQJJDQAgAUEBdiEMAn8gAUEPTQRAIAFBB0sEQCAAQSBBMCAAQThqKAIAIABBKGooAgBJIAApAzAiEiAAKQMgIhFUIBEgElEbIgMbaiEKIAAgAEEYaigCACAAQQhqKAIASSAAKQMQIhIgACkDACIRVCARIBJRGyICQQFzQQR0aiENIABBMEEgIAMbaiIJKQMAIRIgACACQQR0aiIIKQMAIREgCiANIAkgCUEIaigCACAIQQhqKAIASSARIBJWIBEgElEbIgUbIApBCGooAgAgDUEIaigCAEkgCikDACISIA0pAwAiEVQgESASURsiBBsiB0EIaigCACEDIAggCSANIAQbIAUbIgZBCGooAgAhAiAHKQMAIRIgBikDACERIAsgCSAIIAUb/QADAP0LAwAgCyAHIAYgAiADSyARIBJWIBEgElEbIgIb/QADAP0LAxAgCyAGIAcgAhv9AAMA/QsDICALIA0gCiAEG/0AAwD9CwMwIAxBBHQiBCAAaiIFKQMwIRIgBUEgQTAgBUE4aigCACAFQShqKAIASSAFKQMgIhEgElYgESASURsiAxtqIQ0gBSAFQRhqKAIAIAVBCGooAgBJIAUpAxAiEiAFKQMAIhFUIBEgElEbIgJBAXNBBHRqIQ4gBUEwQSAgAxtqIgopAwAhEiAFIAJBBHRqIgkpAwAhESANIA4gCiAKQQhqKAIAIAlBCGooAgBJIBEgElYgESASURsiBhsgDUEIaigCACAOQQhqKAIASSANKQMAIhIgDikDACIRVCARIBJRGyIFGyIIQQhqKAIAIQMgCSAKIA4gBRsgBhsiB0EIaigCACECIAgpAwAhEiAHKQMAIREgBCALaiIEIAogCSAGG/0AAwD9CwMAIAQgCCAHIAIgA0sgESASViARIBJRGyICG/0AAwD9CwMQIAQgByAIIAIb/QADAP0LAyAgBCAOIA0gBRv9AAMA/QsDMEEEDAILIAsgAP0AAwD9CwMAIAxBBHQiAiALaiAAIAJq/QADAP0LAwBBAQwBCyAAIAsgCyABQQR0aiIDELMBIAxBBHQiAiAAaiACIAtqIANBgAFqELMBQQgLIgZBAWohAiABIAxrIQ0gBiAMSQRAIAZBBHQhAyACIQUgBiEHA0AgBSEEIAdBBHQiBSALaiIHIAAgBWoiBSkDACISNwMAIAdBCGogBUEIaikDACIRNwMAIBGnIgggB0EIaygCAEkgB0EQaykDACIRIBJWIBEgElEbQQFGBEAgAyEFAn8DQCAFIAtqIgkgCUEQa/0AAwD9CwMAIAsiByAFQRBGDQEaIAVBEGshBSAIIAlBGGsoAgBJIAlBIGspAwAiESASViARIBJRGw0ACyAFIAdqCyIHIAg2AgggByASNwMACyADQRBqIQMgBCAMSSIIIARqIQUgBCEHIAgNAAsLIAxBBHQiBCALaiEDIAYgDUkEQCAAIARqIQkgBkEEdCEPQRAhCCADIQQDQCACIQUgBkEEdCICIANqIgYgAiAJaiICKQMAIhI3AwAgBkEIaiACQQhqKQMAIhE3AwAgEaciCiAGQQhrKAIASSAGQRBrKQMAIhEgElYgESASURtBAUYEQCAIIQYgBCEHAn8DQCAHIA9qIg4gDkEQa/0AAwD9CwMAIAMgBiAPRg0BGiAGQRBqIQYgB0EQayEHIAogDkEYaygCAEkgDkEgaykDACIRIBJWIBEgElEbDQALIAcgD2oLIgIgCjYCCCACIBI3AwALIAhBEGshCCAEQRBqIQQgBSANSSIHIAVqIQIgBSEGIAcNAAsLIANBEGshByABQQR0QRBrIgQgAGohAiAEIAtqIQYgCyEFA0AgACADIAUgA0EIaigCACAFQQhqKAIASSADKQMAIhIgBSkDACIRVCARIBJRGyIIG/0AAwD9CwMAIAIgByAGIAZBCGooAgAgB0EIaigCAEkgBikDACISIAcpAwAiEVQgESASURsiBBv9AAMA/QsDACADIAhBBHRqIQMgBSAIQQFzQQR0aiEFIAcgBEEEdCIEayEHIAQgBmpBEGshBiACQRBrIQIgAEEQaiEAIAxBAWsiDA0ACyAHQRBqIQIgAUEBcQRAIAAgBSADIAIgBUsiABv9AAMA/QsDACADIAIgBU1BBHRqIQMgBSAAQQR0aiEFCyACIAVGIAMgBkEQakZxDQAQlA0ACyALQYAGaiQAC/kWBCF/B30LewJ+IwBBIGsiBCQAQQIhGQJAAkACfyAAKAKkByIOQX9GBEBBAiEaQQAMAQtBASEaQQAgAC0AtAdBAXENABogAigCCCIFIA5NDQEgAigCBCAOQQV0aiIFKQMYITcgBSoCFCEnIAUqAhAhKCAF/QAEACEwQQAhGkEBCyEgAkACQCAAKAKoByIPQX9GDQAgAC0AtAdBAnEEQEEBIRkMAQsgAigCCCIFIA9NDQEgAigCBCAPQQV0aiIFKQMYITggBSoCFCEpIAUqAhAhKiAF/QAEACExQQAhGUEBIR4LIAAtALUHIgZBBUkEQCAAKALoBiIJIAAoAuQGIgdqIhhBBmwhHyADKAIMIREgAygCBCETIAEoAgwhEiABKAIEIQ0gACgC4AYhDAJAAkACQCAGRQRAIAAqAuwGISYgAP1dAvAGISwMAQsgACAGQcwAbGohHCANIAxBAnQiASAHQQJ0amohBSANIAdBA3QgCUECdGogAWpqIQggGEEYbCEbIAlBfHEhFCAHQXxxIRUgAP1dAuwGIiwgAP1dAoQH/eYBIS0gEyAPQQJ0aiEWIBMgDkECdGohFyAA/V0CkAcgLP3hAf3mASEyIAAqAvQGIib9EyAs/Q0UFRYXBAUGBwABAgMAAQIDISwgB0EBdCIdIAlqIAlqISEgJiAAKgKMB5T9EyEuIAAqApgHICaMlP0TITQgACoC7AYhJiAJIA9qIBFNISIgCUEESSEjIAcgDmogEU0hJCAMIRAgACEKA0AgCioCQCElAkACQAJAIBpBAWsOAgECAAsgJyAlIAoqAiiUkiEnICggJSAKKgIklJIhKCAwICX9EyAtIApBIGogLv1WAgAD/Q0AAQIDBAUGBxgZGhscHR4f/eYB/eQBITAMAQsgECAdaiASSw0EICRFDQggB0UNAEEAIQMgB0EETwRAICX9EyEzIBUhCyAFIQEgFyEDA0AgAyAzIAH9AAIA/eYBIAP9AAIA/eQB/QsCACABQRBqIQEgA0EQaiEDIAtBBGsiCw0ACyAHIBUiA0YNAQsgByADayEBIANBAnQhAwNAIAMgF2oiCyAlIAMgBWoqAgCUIAsqAgCSOAIAIANBBGohAyABQQFrIgENAAsLAkACQAJAIBlBAWsOAgECAAsgKSAlIAoqAjSUkiEpICogJSAKKgIwlJIhKiAxICX9EyAyIApBLGogNP1WAgAD/Q0AAQIDBAUGBxgZGhscHR4f/eYB/eQBITEMAQsgECAhaiASSw0IICJFDQggCUUNAEEAIQMgI0UEQCAl/RMhMyAUIQsgCCEBIBYhAwNAIAMgMyAB/QACAP3mASAD/QACAP3kAf0LAgAgAUEQaiEBIANBEGohAyALQQRrIgsNAAsgCSAUIgNGDQELIAkgA2shASADQQJ0IQMDQCADIBZqIgsgJSADIAhqKgIAlCALKgIAkjgCACADQQRqIQMgAUEBayIBDQALCyAIIBtqIQggBSAbaiEFIBAgH2ohECAcIApBzABqIgpHDQALCyAGBEAgBkGMAWwgAEGwAmoiBmohGyANIAxBAnQiASAHQRhsIAlBFGxqamohFiANIAlBDGwgB0EEdGogAWpqIQogDSAHQRRsIAlBBHRqIAFqaiEQIA0gB0EMbCAJQQN0aiABamohFyAYQRhsIQ0gCUF8cSEBIAdBfHEhCyAYQQF0IgMgDGohDCAA/V0CkAciMiAsIAAqAoAHIiX9EyAA/V0C+AYiLf0NAAECAxAREhMAAQIDAAECA/3mASAsIC39DQQFBgcAAQIDAAECAwABAgMgJv0gASAAQfwGav1dAgD95gH95QEiLv3hAf3mASE0IDIgLf3hAf3mASEyIC4gAP1dAoQHIi795gEhMyAtIC795gEhLiATIA9BAnRqIRQgAyAHaiAHaiEYIBMgDkECdGohFSAHQQF0IhwgCWogCWoiHSADaiETIAAqApgHIisgJiAt/R8BlCAsIC395gH9HwCTIiaMlP0TISwgKyAljJT9EyEtICYgACoCjAciJpT9EyE1ICUgJpT9EyE2IAkgD2ogEU0hDyAHIA5qIBFNIQ4DQCAGKgJwISUCQAJAAkACQCAaQQFrDgIBAAILIAYqAnQhJgwCCwJAIBIgDCAcak8EQCAORQ0BAkAgBwRAQQAhAwJAIAdBBEkiEUUEQCAl/RMhLyALIQggFyEFIBUhAwNAIAMgLyAF/QACAP3mASAD/QACAP3kAf0LAgAgBUEQaiEFIANBEGohAyAIQQRrIggNAAsgByALIgNGDQELIAcgA2shBSADQQJ0IQMDQCADIBVqIgggJSADIBdqKgIAlCAIKgIAkjgCACADQQRqIQMgBUEBayIFDQALCyAMIBhqIBJNDQEMDQsgDCAYaiASSw0MIAYqAnQhJgwECyAGKgJ0ISZBACEDIBFFBEAgJv0TIS8gCyEIIBAhBSAVIQMDQCADIC8gBf0AAgD95gEgA/0AAgD95AH9CwIAIAVBEGohBSADQRBqIQMgCEEEayIIDQALIAcgCyIDRg0ECyAHIANrIQUgA0ECdCEDA0AgAyAVaiIIICYgAyAQaioCAJQgCCoCAJI4AgAgA0EEaiEDIAVBAWsiBQ0ACwwDCwwKCwwJCyAnICUgBioCOJSSIAYqAnQiJiAGKgJElJIhJyAoICUgBioCNJSSICYgBioCQJSSISggMCAl/RMgLiAGQTBqIDb9VgIAA/0NAAECAwQFBgcYGRobHB0eH/3mAf3kASAm/RMgMyAGQTxqIDX9VgIAA/0NAAECAwQFBgcYGRobHB0eH/3mAf3kASEwCwJAAkACQCAZQQFrDgIAAgELAkAgEiAMIB1qTwRAIA9FDQECQCAJBEBBACEDAkAgCUEESSIRRQRAICX9EyEvIAEhCCAKIQUgFCEDA0AgAyAvIAX9AAIA/eYBIAP9AAIA/eQB/QsCACAFQRBqIQUgA0EQaiEDIAhBBGsiCA0ACyAJIAEiA0YNAQsgCSADayEFIANBAnQhAwNAIAMgFGoiCCAlIAMgCmoqAgCUIAgqAgCSOAIAIANBBGohAyAFQQFrIgUNAAsLIAwgE2ogEksNAUEAIQMgEUUEQCAm/RMhLyABIQggFiEFIBQhAwNAIAMgLyAF/QACAP3mASAD/QACAP3kAf0LAgAgBUEQaiEFIANBEGohAyAIQQRrIggNAAsgCSABIgNGDQYLIAkgA2shBSADQQJ0IQMDQCADIBRqIgggJiADIBZqKgIAlCAIKgIAkjgCACADQQRqIQMgBUEBayIFDQALDAULIAwgE2ogEk0NBAsMCwsMCgsMCQsgKSAlIAYqAlCUkiAmIAYqAlyUkiEpICogJSAGKgJMlJIgJiAGKgJYlJIhKiAxICX9EyAyIAZByABqIC39VgIAA/0NAAECAwQFBgcYGRobHB0eH/3mAf3kASAm/RMgNCAGQdQAaiAs/VYCAAP9DQABAgMEBQYHGBkaGxwdHh/95gH95AEhMQsgDSAWaiEWIAogDWohCiANIBBqIRAgDSAXaiEXIAwgH2ohDCAbIAZBjAFqIgZHDQALCwJAICAEQCAAKAKkByIBIAIoAggiA08NASACKAIEIAFBBXRqIgEgNzcDGCABICc4AhQgASAoOAIQIAEgMP0LBAALAkAgHgRAIAAoAqgHIgAgAigCCCIBTw0BIAIoAgQgAEEFdGoiACA4NwMYIAAgKTgCFCAAICo4AhAgACAx/QsEAAsgBEEgaiQADwsgACABQdilwgAQhQsACyABIANByKXCABCFCwALAAsMAwsgBkEEQbilwgAQ8A4ACyAPIAVBqKXCABCFCwALIA4gBUGYpcIAEIULAAsgBEEANgIYIARBATYCDCAEQbD9wQA2AgggBEIENwIQIARBCGpBuP3BABC5DQAL8hgCCX8BfiMAQSBrIgYkACAAKAIEIQICQAJAAkACQAJAAkACQAJAIAAoAgBBAWsOAgECAAsgAiACKAKAAiIBQQFrNgKAAiABQQFHDQUgAiACKAJAIgEgAigCyAEiBHI2AkAgASAEcUUEQCACLQCgASEBIAJBAToAoAEgBiABOgAHIAFBAUYNBwJAIAIoAqwBIgFFDQAgAigCqAEiBSEDIAFBDGwiB0EMayIIQQxuIgFBB3FBB0cEQEEAIAFBAWpBB3FrIQEDQCADKAIAIgkoAgwhBCAJIARBAiAEGzYCDCADQQxqIQMgAUEBaiIBDQALCyAIQdQASQ0AIAUgB2ohBANAIAMoAgAiBSgCDCEBIAUgAUECIAEbNgIMIANBDGooAgAiBSgCDCEBIAUgAUECIAEbNgIMIANBGGooAgAiBSgCDCEBIAUgAUECIAEbNgIMIANBJGooAgAiBSgCDCEBIAUgAUECIAEbNgIMIANBMGooAgAiBSgCDCEBIAUgAUECIAEbNgIMIANBPGooAgAiBSgCDCEBIAUgAUECIAEbNgIMIANByABqKAIAIgUoAgwhASAFIAFBAiABGzYCDCADQdQAaigCACIFKAIMIQEgBSABQQIgARs2AgwgBCADQeAAaiIDRw0ACwsgAigCuAEhBEEAIQEgAkEANgK4ASAEBEAgAigCtAEhAyAEQQxsIQQDQCAGQQhqIghBCGogA0EIaigCADYCACAGIAMpAgAiCjcDCCAKpyIFKAIMIQcgBSAHIAYoAgwgBxs2AgwgBSAFKAIAIgVBAWs2AgAgBUEBRgRAIAgQ1wsLIANBDGohAyAEQQxrIgQNAAsLIAIoAqwBRQRAIAIoArgBRSEBCyACQQA6AKABIAIgAToAvAELIAItAIgCIQEgAkEBOgCIAiABRQ0FIAIoAtABIgEEQCACKALMASABQRxsQQQQ6A4LIAJBhAFqEKQIIAJBpAFqEKQIIAJBwAJBwAAQ6A4MBQsgAiACKALAASIBQQFrNgLAASABQQFHDQQgAiACKAJAIgFBAXI2AkAgAUEBcUUEQCACLQCAASEBIAJBAToAgAEgBiABOgAHIAFBAUYNBgJAIAIoAowBIgFFDQAgAigCiAEiBSEDIAFBDGwiB0EMayIIQQxuIgFBB3FBB0cEQEEAIAFBAWpBB3FrIQEDQCADKAIAIgkoAgwhBCAJIARBAiAEGzYCDCADQQxqIQMgAUEBaiIBDQALCyAIQdQASQ0AIAUgB2ohBANAIAMoAgAiBSgCDCEBIAUgAUECIAEbNgIMIANBDGooAgAiBSgCDCEBIAUgAUECIAEbNgIMIANBGGooAgAiBSgCDCEBIAUgAUECIAEbNgIMIANBJGooAgAiBSgCDCEBIAUgAUECIAEbNgIMIANBMGooAgAiBSgCDCEBIAUgAUECIAEbNgIMIANBPGooAgAiBSgCDCEBIAUgAUECIAEbNgIMIANByABqKAIAIgUoAgwhASAFIAFBAiABGzYCDCADQdQAaigCACIFKAIMIQEgBSABQQIgARs2AgwgBCADQeAAaiIDRw0ACwsgAigCmAEhBEEAIQEgAkEANgKYASAEBEAgAigClAEhAyAEQQxsIQQDQCAGQQhqIghBCGogA0EIaigCADYCACAGIAMpAgAiCjcDCCAKpyIFKAIMIQcgBSAHIAYoAgwgBxs2AgwgBSAFKAIAIgVBAWs2AgAgBUEBRgRAIAgQ1wsLIANBDGohAyAEQQxrIgQNAAsLIAIoAowBRQRAIAIoApgBRSEBCyACQQA6AIABIAIgAToAnAELIAItAMgBIQEgAkEBOgDIASABRQ0EIAIoAgQhASACKAIAQX5xIgMgAigCQEF+cSIFRwRAA0AgA0E+cUE+RgRAIAEoAgAhBCABQegGQQQQ6A4gBCEBCyAFIANBAmoiA0cNAAsLIAENAgwDCyACIAIoAjgiAUEBazYCOCABQQFHDQMgAhDnASACLQBAIQEgAkEBOgBAIAFFDQMgAkEEahCkCCACQRxqEKQIIAJBxABBBBDoDgwDCwALIAFB6AZBBBDoDgsgAkGEAWoQpAggAkGAAkHAABDoDgsgACgCDCEEAkACQAJAAkACQAJAAkAgACgCCEEBaw4CAQIACyAEIAQoAoACIgBBAWs2AoACIABBAUcNBSAEIAQoAkAiACAEKALIASIBcjYCQCAAIAFxRQRAIAQtAKABIQAgBEEBOgCgASAGIAA6AAcgAEEBRg0HAkAgBCgCrAEiAEUNACAEKAKoASICIQMgAEEMbCIFQQxrIgdBDG4iAEEHcUEHRwRAQQAgAEEBakEHcWshAQNAIAMoAgAiCCgCDCEAIAggAEECIAAbNgIMIANBDGohAyABQQFqIgENAAsLIAdB1ABJDQAgAiAFaiEBA0AgAygCACICKAIMIQAgAiAAQQIgABs2AgwgA0EMaigCACICKAIMIQAgAiAAQQIgABs2AgwgA0EYaigCACICKAIMIQAgAiAAQQIgABs2AgwgA0EkaigCACICKAIMIQAgAiAAQQIgABs2AgwgA0EwaigCACICKAIMIQAgAiAAQQIgABs2AgwgA0E8aigCACICKAIMIQAgAiAAQQIgABs2AgwgA0HIAGooAgAiAigCDCEAIAIgAEECIAAbNgIMIANB1ABqKAIAIgIoAgwhACACIABBAiAAGzYCDCABIANB4ABqIgNHDQALCyAEKAK4ASEAQQAhASAEQQA2ArgBIAAEQCAEKAK0ASEDIABBDGwhAANAIAZBCGoiB0EIaiADQQhqKAIANgIAIAYgAykCACIKNwMIIAqnIgIoAgwhBSACIAUgBigCDCAFGzYCDCACIAIoAgAiAkEBazYCACACQQFGBEAgBxDXCwsgA0EMaiEDIABBDGsiAA0ACwsgBCgCrAFFBEAgBCgCuAFFIQELIARBADoAoAEgBCABOgC8AQsgBC0AiAIhACAEQQE6AIgCIABFDQUgBCgC0AEiAARAIAQoAswBIABBNGxBBBDoDgsgBEGEAWoQpAggBEGkAWoQpAggBEHAAkHAABDoDgwFCyAEIAQoAsABIgBBAWs2AsABIABBAUcNBCAEIAQoAkAiAEEBcjYCQCAAQQFxRQRAIAQtAIABIQAgBEEBOgCAASAGIAA6AAcgAEEBRg0GAkAgBCgCjAEiAEUNACAEKAKIASICIQMgAEEMbCIFQQxrIgdBDG4iAEEHcUEHRwRAQQAgAEEBakEHcWshAQNAIAMoAgAiCCgCDCEAIAggAEECIAAbNgIMIANBDGohAyABQQFqIgENAAsLIAdB1ABJDQAgAiAFaiEBA0AgAygCACICKAIMIQAgAiAAQQIgABs2AgwgA0EMaigCACICKAIMIQAgAiAAQQIgABs2AgwgA0EYaigCACICKAIMIQAgAiAAQQIgABs2AgwgA0EkaigCACICKAIMIQAgAiAAQQIgABs2AgwgA0EwaigCACICKAIMIQAgAiAAQQIgABs2AgwgA0E8aigCACICKAIMIQAgAiAAQQIgABs2AgwgA0HIAGooAgAiAigCDCEAIAIgAEECIAAbNgIMIANB1ABqKAIAIgIoAgwhACACIABBAiAAGzYCDCABIANB4ABqIgNHDQALCyAEKAKYASEAQQAhASAEQQA2ApgBIAAEQCAEKAKUASEDIABBDGwhAANAIAZBCGoiB0EIaiADQQhqKAIANgIAIAYgAykCACIKNwMIIAqnIgIoAgwhBSACIAUgBigCDCAFGzYCDCACIAIoAgAiAkEBazYCACACQQFGBEAgBxDXCwsgA0EMaiEDIABBDGsiAA0ACwsgBCgCjAFFBEAgBCgCmAFFIQELIARBADoAgAEgBCABOgCcAQsgBC0AyAEhACAEQQE6AMgBIABFDQQgBCgCBCEBIAQoAgBBfnEiAyAEKAJAQX5xIgJHBEADQCADQT5xQT5GBEAgASgCACEAIAFB0AxBBBDoDiAAIQELIAIgA0ECaiIDRw0ACwsgAQ0CDAMLIAQgBCgCOCIAQQFrNgI4IABBAUcNAyAEEOcBIAQtAEAhACAEQQE6AEAgAEUNAyAEQQRqEKQIIARBHGoQpAggBEHEAEEEEOgODAMLAAsgAUHQDEEEEOgOCyAEQYQBahCkCCAEQYACQcAAEOgOCyAGQSBqJAAPCyAGQgA3AhQgBkKBgICAwAA3AgwgBkGsusEANgIIIAZBB2ogBkEIakG0usEAEPsMAAuhIAMUfxd7An4jAEHgAmsiAiQAIAAoAugcIQMgACgC7BwhBCAAKALgHCEFIAEoAgQhByABKAIIIQggACgC5BwhASAC/QwAAAAAAAAAAAAAAAAAAAAA/QsEwAIgAiAHIAFBBXRqIAJBwAJqIgYgASAISSIJG/0ABAAiHP0LBJACIAIgByAFQQV0aiIKIAYgBSAISSIFG/0ABAAiGv0LBIACIARBBXQhBiADQQV0IQsgBQR7IAr9AAQQBf0MAAAAAAAAAAAAAAAAAAAAAAshFiAEIAhJIQUgBiAHaiEKIAMgCEkhBiAHIAtqIQsgCQRAIAcgAUEFdGoiASkDGCEtIAEpAxAhLgsgCiACQcACaiIBIAUbIQkgCyABIAYbIQEgBgRAIAcgA0EFdGr9AAQQIRgLIAn9AAQAIR0gAf0ABAAhHiAC/QACjAIhGSAC/QADiAIhICAC/QAChAIhGyAFBEAgByAEQQV0av0ABBAhFwsgAiAZIBz9DQABAgMcHR4fAAECAwABAgMgHv0NAAECAwQFBgccHR4fAAECAyAd/Q0AAQIDBAUGBwgJCgscHR4fIiL9CwQwIAIgICAc/Q0AAQIDGBkaGwABAgMAAQIDIB79DQABAgMEBQYHGBkaGwABAgMgHf0NAAECAwQFBgcICQoLGBkaGyIZ/QsEICACIBsgHP0NAAECAxQVFhcAAQIDAAECAyAe/Q0AAQIDBAUGBxQVFhcAAQIDIB39DQABAgMEBQYHCAkKCxQVFhciIP0LBBAgAiAaIBz9DQABAgMQERITAAECAwABAgMgHv0NAAECAwQFBgcQERITAAECAyAd/Q0AAQIDBAUGBwgJCgsQERITIh39CwQAIAIgFv0LBIABIAIgLjcDkAEgAiAWIC6n/RwBIBj9DQABAgMEBQYHEBESEwABAgMgF/0NAAECAwQFBgcICQoLEBESEyIe/QsEQCACIAL9AAKEASAuQiCIp/0cASAY/Q0AAQIDBAUGBxQVFhcAAQIDIBf9DQABAgMEBQYHCAkKCxQVFhciHP0LBFAgAiAtNwOYASACIAL9AAOIASAtp/0cASAY/Q0AAQIDBAUGBxgZGhsAAQIDIBf9DQABAgMEBQYHCAkKCxgZGhv9CwRgIAIgAv0AAowBIC1CIIin/RwBIBj9DQABAgMEBQYHHB0eHwABAgMgF/0NAAECAwQFBgcICQoLHB0eH/0LBHAgACgC+BwhASAAKAL8HCEDIAAoAvAcIQUgACgC9BwhBCAC/QwAAAAAAAAAAAAAAAAAAAAA/QsEsAIgAiAHIARBBXRqIAJBsAJqIgYgBCAISSIJG/0ABAAiF/0LBNACIAIgByAFQQV0aiIKIAYgBSAISSIFG/0ABAAiJf0LBMACIANBBXQhBiABQQV0IQsgBQRAIAr9AAQQISELIAMgCEkhBSAGIAdqIQogASAISSEGIAcgC2ohC0IAIS5CACEtIAkEQCAHIARBBXRqIgQpAxghLSAEKQMQIS4LIAogAkGwAmoiBCAFGyEJIAsgBCAGGyEE/QwAAAAAAAAAAAAAAAAAAAAAIRYgBgRAIAcgAUEFdGr9AAQQIR8LIAn9AAQAIRogBP0ABAAhGyAC/QACzAIhGCAC/QADyAIhIyAC/QACxAIhJCAFBEAgByADQQV0av0ABBAhFgsgAiAYIBf9DQABAgMcHR4fAAECAwABAgMgG/0NAAECAwQFBgccHR4fAAECAyAa/Q0AAQIDBAUGBwgJCgscHR4fIhj9CwSwASACICMgF/0NAAECAxgZGhsAAQIDAAECAyAb/Q0AAQIDBAUGBxgZGhsAAQIDIBr9DQABAgMEBQYHCAkKCxgZGhsiI/0LBKABIAIgJCAX/Q0AAQIDFBUWFwABAgMAAQIDIBv9DQABAgMEBQYHFBUWFwABAgMgGv0NAAECAwQFBgcICQoLFBUWFyIk/QsEkAEgAiAlIBf9DQABAgMQERITAAECAwABAgMgG/0NAAECAwQFBgcQERITAAECAyAa/Q0AAQIDBAUGBwgJCgsQERITIhf9CwSAASACICH9CwSAAiACIC43A5ACIAIgISAup/0cASAf/Q0AAQIDBAUGBxAREhMAAQIDIBb9DQABAgMEBQYHCAkKCxAREhMiGv0LBMABIAIgAv0AAoQCIC5CIIin/RwBIB/9DQABAgMEBQYHFBUWFwABAgMgFv0NAAECAwQFBgcICQoLFBUWFyIb/QsE0AEgAiAtNwOYAiACIAL9AAOIAiAtp/0cASAf/Q0AAQIDBAUGBxgZGhsAAQIDIBb9DQABAgMEBQYHCAkKCxgZGhv9CwTgASACIAL9AAKMAiAtQiCIp/0cASAf/Q0AAQIDBAUGBxwdHh8AAQIDIBb9DQABAgMEBQYHCAkKCxwdHh/9CwTwAQJAIAAtAJAdIgFBBUkEQCABRQ0BIAFBsAJsIQUgAP0ABCAiHyAA/QAEgAH95gEhJyAA/QAEECIhIAD9AARw/eYBISggAP0ABAAiJSAA/QAEYP3mASEpIB8gAP0ABFD95gEhKiAhIAD9AARA/eYBISsgJSAA/QAEMP3mASEsQQAhBANAIAD9AASQAf0MAAAAAAAAAAAAAAAAAAAAAP0MAAAAAAAAAAAAAAAAAAAAACAAIARqIgNB4ANqIgb9AAQAIiYgA0GABGr9AAQAIANBwANq/QAEACAlIB395gEgISAg/eYB/eQBIB8gGf3mAf3kASAiIANBgAJq/QAEAP3mASAeIANBkAJq/QAEAP3mAf3kASAcIANBoAJq/QAEAP3mAf3kAf3kASAlIBf95gEgISAk/eYB/eQBIB8gI/3mAf3kAf3lASAYIANBsAJq/QAEAP3mASAaIANBwAJq/QAEAP3mAf3kASAbIANB0AJq/QAEAP3mAf3kAf3kAf3kAf3mAf3lASIWIBb9DAAAAAAAAAAAAAAAAAAAAAD9Q/1SIBYgFv1C/VL95gEhFiAGIBb9CwQAIBwgFiAm/eUBIhYgA0GAA2r9AAQA/eYB/eQBIRwgHiADQfACav0ABAAgFv3mAf3kASEeICIgA0HgAmr9AAQAIBb95gH95AEhIiAZICogFv3mAf3kASEZICAgKyAW/eYB/eQBISAgHSAsIBb95gH95AEhHSACQYACav0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgIyAnIAL9AASAAiAW/eUBIib95gH95AEhIyAkICggJv3mAf3kASEkIBcgKSAm/eYB/eQBIRcgGyAWIANBsANq/QAEAP3mAf3kASEbIBogFiADQaADav0ABAD95gH95AEhGiAYIBYgA0GQA2r9AAQA/eYB/eQBIRggBSAEQbACaiIERw0ACwwBCyABQQRByKPCABDwDgALIAIgHv0LBEAgAiAd/QsEACACIBv9CwTQASACIBr9CwTAASACIBj9CwSwASACICP9CwSgASACICT9CwSQASACIBf9CwSAASACIBz9CwRQIBz9GwMhBCACICL9CwQwICL9GwAhBSACIBn9CwQgIBn9GwMhBiAZ/RsCIQkgGf0bASEKIBn9GwAhCyACICD9CwQQICD9GwMhDiAi/RsBIQMgAiAA/QAEwAEiFiAA/QAEACIY/eYBIAD9AAQQIhcgAP0ABLABIhn95gH95QH9CwSgAiACIBkgAP0ABCAiGf3mASAYIAD9AATQASIY/eYB/eUB/QsEkAIgAiAXIBj95gEgGSAW/eYB/eUB/QsEgAIgAQRAIABBoAtqIQMgAEHgA2ohBCAAQbABaiEFIABB4ABqIQYgAEEwaiEJA0AgAyAFIAJBgAJqIAkgBiAA/QAEoAEgBP0ABAD95gEgAiACQYABahDlASAEQbACaiEEIANBsARqIQMgAUEBayIBDQALIAIoAlwhBCACKAIwIQUgAigCLCEGIAIoAighCSACKAIkIQogAigCICELIAIoAhwhDiACKAI0IQMLIAIoAjghEiACKAI8IRMgACgC7BwhDyAAKALoHCEBIAAoAuQcIRAgACgC4BwhDCACQcACaiINQRhqIAJBGGooAgAiFDYCACANQRBqIAJBEGopAwAiLTcDACACIAL9AAQA/QsEwAIgAkGAAmoiDUEYaiACQUBrIhFBGGooAgAiFTYCACANQRBqIBFBEGopAwAiLjcDACACIBH9AAQA/QsEgAIgAv0AAowCIRYgAv0AA4gCIRggDUEUaiAC/QAChAL9VgIAASEXIAggDEsEQCAC/QAEwAIhGSAHIAxBBXRqIgwgAv0ABIACIC6n/RwBIAIoAmD9HAIgAigCcP0cA/0LBBAgDCAZIC2n/RwBIAv9HAIgBf0cA/0LBAALIAggEEsEQCACQdQCaiAC/QACxAL9VgIAASEZIAcgEEEFdGoiBSACQfQAaiACQeQAaiAX/VYCAAL9VgIAA/0LBBAgBSAZIAr9HAIgA/0cA/0LBAALIAEgCEkEQCAC/QADyAIhFyAHIAFBBXRqIgEgAkH4AGogAkHoAGogGCAV/RwB/VYCAAL9VgIAA/0LBBAgASAXIBT9HAEgCf0cAiAS/RwD/QsEAAsgAkHAAWohASAIIA9LBEAgAv0AAswCIRggByAPQQV0aiIDIAJB/ABqIAJB7ABqIBYgBP0cAf1WAgAC/VYCAAP9CwQQIAMgGCAO/RwBIAb9HAIgE/0cA/0LBAALIAAoAvwcIQMgACgC+BwhBCAAKAL0HCEFIAAoAvAcIQAgAkHAAmoiBkEYaiIJIAJBgAFqIgpBGGooAgA2AgAgBkEQaiILIApBEGopAwA3AwAgAiAC/QAEgAH9CwTAAiACKAKgASEKIAIoArABIQ4gAigCtAEhDyACKAKkASEQIAIoArgBIQwgAigCqAEhDSACKAK8ASERIAIoAqwBIRIgAigCnAEhEyACQYACaiIGQRhqIAFBGGooAgAiFDYCACAGQRBqIAFBEGopAwAiLTcDACACIAH9AAQA/QsEgAIgAv0AAowCIRYgAv0AA4gCIRggBkEUaiAC/QAChAL9VgIAASEXIAAgCEkEQCALKAIAIQEgAv0ABMACIRkgByAAQQV0aiIAIAL9AASAAiAtp/0cASACKALgAf0cAiACKALwAf0cA/0LBBAgACAZIAH9HAEgCv0cAiAO/RwD/QsEAAsgBSAISQRAIAJB1AJqIAL9AALEAv1WAgABIRkgByAFQQV0aiIAIAJB9AFqIAJB5AFqIBf9VgIAAv1WAgAD/QsEECAAIBkgEP0cAiAP/RwD/QsEAAsgBCAISQRAIAkgAv0AA8gC/VYCAAEhFyAHIARBBXRqIgAgAkH4AWogAkHoAWogGCAU/RwB/VYCAAL9VgIAA/0LBBAgACAXIA39HAIgDP0cA/0LBAALIAMgCEkEQCAC/QACzAIhGCAHIANBBXRqIgAgAkH8AWogAkHsAWogAkHcAWogFv1WAgAB/VYCAAL9VgIAA/0LBBAgACAYIBP9HAEgEv0cAiAR/RwD/QsEAAsgAkHgAmokAAuzGAMDfgh/AXsjAEEQayILJAAgC0EEaiAAKAIAIAAoAgQiACgCCEEBa0F4cWpBCGogACgCpAERAAACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAsoAgRBAWsOEwECAwQFBgcICQoLDA0ODxAREhMACyABIAEpAwBCCHw3AwBBACEADBMLIAEgASkDAEIQfDcDAEEAIQAMEgsgASABKQMAQiB8NwMAQQAhAAwRCyABIAEpAwBCHHw3AwBBACEADBALIAEgASkDAEIofDcDAEEAIQAMDwsgASkDACECIAsoAggiBSgCCCIABH4gAiAAQQZ0QUBqrXxCzAB8BSACQgx8CyECIAUoAhQiAAR+IAIgAEEBa0H/////A3GtQgOGfEIQfAUgAkIIfAtCEHwhAgJAIAUoAiAiCEUNACAFKAIcIQcCQCAIQf////8BcUEBRgRAIAchAAwBC/0MAAAAAAAAAAAAAAAAAAAAACAC/R4AIQ0gByAIQQFrQf////8BcUEBaiIMQf7///8DcSIKQQN0aiEAIAohCSAHIQYDQP0MCQAAAAAAAAAJAAAAAAAAAP0MAQAAAAAAAAABAAAAAAAAACAGQQhqIAb9XAIA/VYCAAJBP/3LAUE//cwB/VIgDf3OASENIAZBEGohBiAJQQJrIgkNAAsgDSANIA39DQgJCgsMDQ4PAAECAwQFBgf9zgH9HQAhAiAKIAxGDQELIAcgCEEDdGohBgNAQglCASAAKAIAGyACfCECIAYgAEEIaiIARw0ACwsgBSgCNCIABH4gAEEBa61CHH4hAyAFKAIoIgApAwBCgIGChIiQoMCAf4NCgIGChIiQoMCAf1EEQCAAQQhqIQADQCAAKQMAIQQgAEEIaiEAIARCgIGChIiQoMCAf4NCgIGChIiQoMCAf1ENAAsLIAIgA3xCJHwFIAJCCHwLIQIgBSgCSCIABH4gAiAAQQxsQQxrQQxurUIMfnxCFHwFIAJCCHwLIQIgBSgCVCIABH4gAiAAQQl0QYAEa618QogEfAUgAkIIfAshAiABIAUoAmAiAAR+IAIgAEEBa0H/////A3GtQgOGfEIQfAUgAkIIfAtCDHw3AwBBACEADA4LIAEpAwAhAiALKAIIIgUoAggiAAR+IAIgAEEGdEFAaq18QswAfAUgAkIMfAshAiAFKAIUIgAEfiACIABBAWtB/////wNxrUIDhnxCEHwFIAJCCHwLQhB8IQICQCAFKAIgIghFDQAgBSgCHCEHAkAgCEH/////AXFBAUYEQCAHIQAMAQv9DAAAAAAAAAAAAAAAAAAAAAAgAv0eACENIAcgCEEBa0H/////AXFBAWoiDEH+////A3EiCkEDdGohACAKIQkgByEGA0D9DAkAAAAAAAAACQAAAAAAAAD9DAEAAAAAAAAAAQAAAAAAAAAgBkEIaiAG/VwCAP1WAgACQT/9ywFBP/3MAf1SIA39zgEhDSAGQRBqIQYgCUECayIJDQALIA0gDSAN/Q0ICQoLDA0ODwABAgMEBQYH/c4B/R0AIQIgCiAMRg0BCyAHIAhBA3RqIQYDQEIJQgEgACgCABsgAnwhAiAGIABBCGoiAEcNAAsLIAUoAjAiAAR+IAIgAEEMbEEMa0EMbq1CDH58QhR8BSACQgh8CyECIAUoAjwiAAR+IAIgAEEMbEEMa0EMbq1CDH58QhR8BSACQgh8CyECAn4gBSgCQEGAgICAeEcEQCAFKAJUIQAgBSgCSCIGBH4gAiAGQQxsQQxrQQxurUIMfnxCFXwFIAJCCXwLIgNCCHwgAEUNARogAEEkbEEka0Ekbq1CJH4gA3xCLHwMAQsgAkIBfAshAgJAIAUoAlhBgICAgHhHBEAgBSgCYCIABH4gAiAAQQJ0QQRrrXxCDXwFIAJCCXwLIQIgBSgCbCIABH4gAiAAQQJ0QQRrrXxCDHwFIAJCCHwLIgNCCHwhAiAFKAJ4IgBFDQEgAyAAQQR0QRBrrXxCGHwhAgwBCyACQgF8IQILAkAgBSgCfEGAgICAeEcEQCAFKAKEASIABH4gAiAAQQJ0QQRrrXxCDXwFIAJCCXwLIQIgBSgCkAEiAAR+IAIgAEECdEEEa618Qgx8BSACQgh8CyICQgh8IQMgBSgCnAEiAEUNASACIABBAWtB/////wNxrUIDhnxCEHwhAwwBCyACQgF8IQMLIAEgA0ICfDcDAEEAIQAMDQsgASkDACECIAsoAggiBSgCCCIABH4gAiAAQQZ0QUBqrXxCzAB8BSACQgx8CyECIAUoAhQiAAR+IAIgAEEBa0H/////A3GtQgOGfEIQfAUgAkIIfAtCEHwhAgJAIAUoAiAiCEUNACAFKAIcIQcCQCAIQf////8BcUEBRgRAIAchAAwBC/0MAAAAAAAAAAAAAAAAAAAAACAC/R4AIQ0gByAIQQFrQf////8BcUEBaiIMQf7///8DcSIKQQN0aiEAIAohCSAHIQYDQP0MCQAAAAAAAAAJAAAAAAAAAP0MAQAAAAAAAAABAAAAAAAAACAGQQhqIAb9XAIA/VYCAAJBP/3LAUE//cwB/VIgDf3OASENIAZBEGohBiAJQQJrIgkNAAsgDSANIA39DQgJCgsMDQ4PAAECAwQFBgf9zgH9HQAhAiAKIAxGDQELIAcgCEEDdGohBgNAQglCASAAKAIAGyACfCECIAYgAEEIaiIARw0ACwsgBSgCMCIABH4gAiAAQQxsQQxrQQxurUIMfnxCFHwFIAJCCHwLIQIgASAFKAI8IgAEfiACIABBA3RBCGutfEIQfAUgAkIIfAs3AwBBACEADAwLIAEgASkDAEIQfDcDAEEAIQAMCwsgASkDACECIAsoAggiACgCCCIGBH4gAiAGQQJ0QQRrrXxCEHwFIAJCDHwLIQIgASAAKAIcIgYEfiACIAAoAhgiACAGaiAAQX9zaq18Qhl8BSACQhh8C0I9fDcDAEEAIQAMCgsgASABKQMAQgx8IgI3AwAgCygCCCIFQQhqKAIAIgAEQCAFQQRqKAIAQRxqIQYgAEEkbCEJA0AgASABKQMAQhx8NwMAIAYgARBXIgANCyAGQSRqIQYgCUEkayIJDQALIAEpAwAhAgsgBSgCFCIABH4gAiAAQQZ0QUBqrXxCyAB8BSACQgh8CyECIAUoAiAiAAR+IAIgAEEBa0H/////A3GtQgOGfEIQfAUgAkIIfAtCEHwhAgJAIAUoAiwiCEUNACAFKAIoIQcCQCAIQf////8BcUEBRgRAIAchAAwBC/0MAAAAAAAAAAAAAAAAAAAAACAC/R4AIQ0gByAIQQFrQf////8BcUEBaiIMQf7///8DcSIKQQN0aiEAIAohCSAHIQYDQP0MCQAAAAAAAAAJAAAAAAAAAP0MAQAAAAAAAAABAAAAAAAAACAGQQhqIAb9XAIA/VYCAAJBP/3LAUE//cwB/VIgDf3OASENIAZBEGohBiAJQQJrIgkNAAsgDSANIA39DQgJCgsMDQ4PAAECAwQFBgf9zgH9HQAhAiAKIAxGDQELIAcgCEEDdGohBgNAQglCASAAKAIAGyACfCECIAYgAEEIaiIARw0ACwsgASAFQTxqKAIAIgAEfiACIABBGGxBGGtBGG6tQhh+fEIgfAUgAkIIfAtCGHw3AwBBACEADAkLIAEgASkDAEIEfDcDACALKAIIIAEQlAUhAAwICyABIAEpAwBCDHw3AwBBACEADAcLIAEgASkDAEIMfDcDAEEAIQAMBgsgASABKQMAQhR8NwMAQQAhAAwFCyABIAEpAwBCLHw3AwBBACEADAQLIAEgASkDAEIQfDcDAEEAIQAMAwsgASABKQMAQhB8NwMAQQAhAAwCCyABIAEpAwBCBHw3AwAgCygCCCABEJQFIgANASABIAEpAwBCBHw3AwBBACEADAELQThBARCRDiIBRQ0BIAFBMGpB9L3BACkAADcAACABQSBqQeS9wQD9AAAA/QsAACABQRBqQdS9wQD9AAAA/QsAACABQcS9wQD9AAAA/QsAAEEMQQQQkQ4iAEUNAiAAQTg2AgggACABNgIEIABBODYCAAsgC0EQaiQAIAAPC0EBQThB/L7BABDXDQALQQRBDEH4ysQAKAIAIgBBzAggABsRAAAAC8kXAwZ/HX0BfiMAQeACayILJAACQAJAIApFBEAgCSAAEPgCDQIMAQsgCSABEPgCDQELIAsgAiADIAAQygECQCALKgIAIisgCF5FBEAgCyADKgIMIiAgAyoCACISkyIVIAMqAhwiGSADKgIEIhGTIhaUIAMqAhAiFCARkyIXIAMqAhgiGyASkyIclJMiGCAYlCAXIAMqAiAiHSADKgIIIheTIhOUIAMqAhQiISAXkyIaIBaUkyIWIBaUIBogHJQgFSATlJMiFSAVlJKSIhxDAACAKF4EfyALIBggHJEiGJU4AqgBIAsgFSAYlTgCpAEgCyAWIBiVOAKgAUEBBUEACzYCnAEgC0EQaiADIAtBnAFqIAIgARC+AyALKgIQIiwgCF4NASADQRhqIQ4gA0EMaiEPIAAqAhghJCAAKgIQIR4gACoCFCETIAAqAgwhHCAAKgIIIRggACoCACEWIAAqAgQhFSALQQA2AoQCIAtBADYC9AEgC0IANwLgASALQQA2AtABIAtCADcCvAEgC0EANgKsASALQQA2ApwBIAsgEyAUIBwgICAYlCAWICGUkyIaIBqSIiWUIBggFSAhlCAYIBSUkyIaIBqSIiaUIBYgFiAUlCAgIBWUkyIUIBSSIiiUk5KSkiIqIBMgESAcIBIgGJQgFyAWlJMiFCAUkiIflCAYIBcgFZQgESAYlJMiFCAUkiIjlCAWIBEgFpQgEiAVlJMiESARkiInlJOSkpIiEZMiFDgCpAEgCyAUjDgCtAEgCyARIBMgGSAcIBsgGJQgFiAdlJMiEyATkiIplCAYIBUgHZQgGCAZlJMiEyATkiItlCAWIBYgGZQgGyAVlJMiGSAZkiIZlJOSkpIiE5MiGjgC7AEgCyAajDgC/AEgCyAeIBIgHCAjlCAVICeUIBggH5STkpKSIhIgHiAbIBwgLZQgFSAZlCAYICmUk5KSkiIbkyIiOAKAAiALICKMOAL4ASALICQgFyAcICeUIBYgH5QgFSAjlJOSkpIiFyAkIB0gHCAZlCAWICmUIBUgLZSTkpKSIh2TIh84AvABIAsgH4w4AugBIAsgEyAqkyIjOALIASALICOMOALYASALIBsgHiAgIBwgJpQgFSAolCAYICWUk5KSkiInkyIeOALcASALIB6MOALUASALIB0gJCAhIBwgKJQgFiAllCAVICaUk5KSkiImkyIhOALMASALICGMOALEASALICcgEpMiJDgCuAEgCyAkjDgCsAEgCyAmIBeTIiU4AqgBIAsgJYwiIDgCoAFDAAAAACEZIAsgKiAilCAnIBqUkyAmQwAAAACUkjgCzAIgCyARICKUIBIgGpSTIBdDAAAAAJQiKJI4AsgCIAsgJyAflCAqQwAAAACUkiAiICaUkzgCxAIgCyASIB+UIBFDAAAAAJQiKZIgIiAXlJM4AsACIAsgJ0MAAAAAlCAfICqUkyAmIBqUkjgCvAIgCyASQwAAAACUIiIgHyARlJMgFyAalJI4ArgCIAsgEyAelCAbICOUkyAdQwAAAACUIhqSOAK0AiALIBEgHpQgEiAjlJMgKJI4ArACIAsgGyAhlCATQwAAAACUIh+SIB4gHZSTOAKsAiALIBIgIZQgKZIgHiAXlJM4AqgCIAsgG0MAAAAAlCIeICEgE5STIB0gI5SSOAKkAiALICIgISARlJMgFyAjlJI4AqACIAsgEyAklCAUIBuUkyAakjgCnAIgCyARICSUIBIgFJSTICiSOAKYAiALICUgG5QgH5IgJCAdlJM4ApQCIAsgEiAllCApkiAkIBeUkzgCkAIgCyAUIB2UIB4gJSATlJOSOAKMAiALIBcgFJQgIiARICWUk5I4AogCIAIqAgghIyACKgIEIR4gAioCACEhQ///f/8hESALQYgCaiEMA0ACQCALQZwBaiAQaiINKgIAIhsgG5QgDUEEaioCACIdIB2UkiANQQhqKgIAIhogGpSSIhJDAAAANF5FDQAgDCoCACIXIAxBBGoqAgAiIl4hDSAbICEgG5iUIB0gHiAdmJSSIBogIyAamJSSIBKRIhOVIR8gFyAiIA0bjCATlSAfkyESICIgFyANGyATlSAfkyIXIBFeBEAgGiATlSEUIB0gE5UhICAbIBOVIRkgFyERCyARIBJdRQ0AIBqMIBOVIRQgHYwgE5UhICAbjCATlSEZIBIhEQsgDEEIaiEMIBBBDGoiEEHsAEcNAAsCQAJAIAggEV1FBEAgC0EoaiALQQxqKAIANgIAIAsgCykCBDcDICALICs4AjAgKyAsXUUNASARICxdRQ0BIAsgLDgCMCALIBwgFSALKgIUIgiUIBYgCyoCGCIRlJMiEiASkiISlCAWIBYgCyoCHCIXlCAYIAiUkyIUIBSSIhmUIBUgGCARlCAVIBeUkyIUIBSSIhOUk5IgF5MiFDgCKCALIBwgGZQgGCATlCAWIBKUk5IgEZMiIDgCJCALIBwgE5QgFSASlCAYIBmUk5IgCJMiGTgCIAwCCyAJQQA2AkgMBAsgESArXkUEQCALKgIoIRQgCyoCJCEgIAsqAiAhGQwBCyALIBQ4AiggCyAgOAIkIAsgGTgCICALIBE4AjALIAsgASoCDCIXIBkgASoCBCIIlCAgIAEqAgAiEZSTIhIgEpIiGJQgESAUIBGUIBkgASoCCCISlJMiFiAWkiIWlCAIICAgEpQgFCAIlJMiFSAVkiIVlJOSIBSTOAI8IAsgFyAWlCASIBWUIBEgGJSTkiAgkzgCOCALIBcgFZQgCCAYlCASIBaUk5IgGZM4AjQCQAJAIAQEQCAEIAAgC0EgaiALQTRqIAUoAhQREQBFDQELIAZFDQEgBiAAIAtBIGogC0E0aiAHKAIYEREADQELIAlBADYCSAwDCyALQYgCaiIBQQhqIgUgC0EoaigCADYCACALIAspAyA3A4gCIAtBnAFqIAIgARDpAiALQZwCaiAPQQhqKAIANgIAIAtBtAJqIA5BCGooAgAiAjYCACAFIANBCGooAgA2AgAgC0GgAmogDikCACIuNwMAIAFBIGoiBSACNgIAIAv9DAAAAAABAAAAAgAAAAIAAAD9CwTQAiALIA8pAgA3ApQCIAsgLjcCrAIgCyADKQIANwOIAiALQfAAaiALQdACaiIDEP8GIAtBQGsiAkFAayADEIAHIAJBIGogBf0AAwD9CwMAIAJBEGogAUEQav0AAwD9CwMAIAtCgICAgDw3A5ABIAsgC/0AA4gC/QsDQCAJKAJIIgytQiR+Ii6nIQFBACEDAkAgLkIgiKcNACABQfz///8HSw0AIAkoAkQhBQJAIAFFBEBBBCECQQAhDAwBC0EEIQMgAUEEEJEOIgJFDQELIAEEQCACIAUgAfwKAAALIAlBADYCSCAAIAtBIGogC0GcAWogC0FAayAJIAoQJyAEIAZyBEAgCyALQTBqNgKIAiALQYgCaiEAQQAhAyAJQUBrIgQoAggiBQRAAkAgACgCACIHKgIAIghDAAAAAGANACAIQwAAoECUIQhBASAFayEBIAQoAgRBJGohAANAIABBDGsqAgAiESAIYCARQwAAAABgcgRAIABBJGohACABQQFqIgFBAUcNAQwCCwsgAUUEQEEBIQMMAQtBACABayEBQQEhAwNAAkACQCAHKgIAIghDAAAAAGANACAAQRhqKgIAIhFDAAAAAGANACARIAhDAACgQJRgDQAgA0EBaiEDDAELIAAgA0FcbGoiBiAA/QACAP0LAgAgBkEgaiAAQSBqKAIANgIAIAZBEGogAEEQav0AAgD9CwIACyAAQSRqIQAgAUEBayIBDQALCyAEIAUgA2s2AggLCyAJIAtBNGoiACALQSBqIgEgChsiAykCADcCTCAJIAEgACAKGyIAKQIANwJYIAlB1ABqIANBCGooAgA2AgAgCUHgAGogAEEIaigCADYCACAMRQ0DIAIgDEEkbEEEEOgODAMLIAMgAUHA3MIAENcNAAsgCUEANgJIDAELIAlBADYCSAsgC0HgAmokAAupEwMVfwR7A30jAEFAaiIEJAAgAygCDCESIAMoAgQhCyACKAIIIQ8gAigCBCETIAEoAgghCiABKAIEIQ4CQAJAAkACQAJ9AkACQAJAAn8gACgCCCIMQX9GBEAgCwwBCyAALQBERQRAIAAoAhAiBiAMaiASSw0HIAsgDEECdGoMAQsgDCAPTw0BQQYhBiATIAxBBXRqCyEHIAAoAhQiECAKSw0BIAAoAhAiAUEBaiIUIAFqIhYgCiAQayAUaksNBgJAIAEgBkYEQCAGQQhPDQFDAAAAAAwFCyAEQQE2AgwgBCABNgIIIARBATYCFCAEIAY2AhAMBQsgDiAQQQJ0aiEJIAZBeHEhBUEAIQMgBiEIA0AgGyADIAlqIgH9XQIAIAMgB2oiAv1dAgD95gH95AEhGyAaIAFBGGr9XQIAIAJBGGr9XQIA/eYB/eQBIRogGSABQQhq/V0CACACQQhq/V0CAP3mAf3kASEZIBwgAUEQav1dAgAgAkEQav1dAgD95gH95AEhHCADQSBqIQMgCEEIayIIQQdLDQALDAILIAwgD0HAqsIAEIULAAsgECAKQbCrwgAQ7w4ACyAZIBr95AEiGf0fASAZ/R8AIBsgHP3kASIZ/R8BIBn9HwBDAAAAAJKSkpILIR0CQCAFIAZPDQACQCAGQQNxIghFBEAgBSEBDAELIA4gBUECdCIBIBBBAnRqaiEDIAEgB2ohAiAFIQEDQCABQQFqIQEgHSADKgIAIAIqAgCUkiEdIANBBGohAyACQQRqIQIgCEEBayIIDQALCyAFIAZrQXxLDQAgDiABQQJ0IgIgEEECdGpqIQMgBiABayEBIAIgB2ohAgNAIB0gAyoCACACKgIAlJIgA0EEaioCACACQQRqKgIAlJIgA0EIaioCACACQQhqKgIAlJIgA0EMaioCACACQQxqKgIAlJIhHSADQRBqIQMgAkEQaiECIAFBBGsiAQ0ACwsCfQJAAkACQAJ/IAAoAgwiDUF/RgRAQQAhBSALDAELIAAtAEVFBEAgDSAAKAIYIgVqIBJLDQcgCyANQQJ0agwBCyANIA9PDQFBBiEFIBMgDUEFdGoLIQcgACgCHCIRIApLDQEgACgCGCIBQQFqIhUgAWoiFyAKIBFrIBVqSw0GAkAgASAFRgRAIAVBCE8NAUEAIQlDAAAAAAwFCyAEQQE2AgwgBCABNgIIIARBATYCFCAEIAU2AhAMBQsgDiARQQJ0aiEYIAVBeHEhCUEAIQMgBSEI/QwAAAAAAAAAAAAAAAAAAAAAIRn9DAAAAAAAAAAAAAAAAAAAAAAhGv0MAAAAAAAAAAAAAAAAAAAAACEb/QwAAAAAAAAAAAAAAAAAAAAAIRwDQCAbIAMgGGoiAf1dAgAgAyAHaiIC/V0CAP3mAf3kASEbIBogAUEYav1dAgAgAkEYav1dAgD95gH95AEhGiAZIAFBCGr9XQIAIAJBCGr9XQIA/eYB/eQBIRkgHCABQRBq/V0CACACQRBq/V0CAP3mAf3kASEcIANBIGohAyAIQQhrIghBB0sNAAsMAgsgDSAPQeCqwgAQhQsACyARIApBoKvCABDvDgALIBkgGv3kASIZ/R8BIBn9HwAgGyAc/eQBIhn9HwEgGf0fAEMAAAAAkpKSkgshHgJAIAUgCU0NAAJAIAVBA3EiCEUEQCAJIQEMAQsgDiAJQQJ0IgEgEUECdGpqIQMgASAHaiECIAkhAQNAIAFBAWohASAeIAMqAgAgAioCAJSSIR4gA0EEaiEDIAJBBGohAiAIQQFrIggNAAsLIAkgBWtBfEsNACAOIAFBAnQiAiARQQJ0amohAyAFIAFrIQEgAiAHaiECA0AgHiADKgIAIAIqAgCUkiADQQRqKgIAIAJBBGoqAgCUkiADQQhqKgIAIAJBCGoqAgCUkiADQQxqKgIAIAJBDGoqAgCUkiEeIANBEGohAyACQRBqIQIgAUEEayIBDQALCyAAIAAqAiQiHyAAKgIwIB4gHZMgACoCNJIgHyAAKgJAlJOUkiIdIAAqAiwiHiAdIB5dGyAAKgIoIh4gHSAeXhsiHTgCJAJAAkACQAJAAkACfyAMQX9GBEAgCyEIQQAMAQsgAC0AREUEQCAGIAxqIBJLDQggCyAMQQJ0aiEIIAYMAQsgDCAPTw0BIBMgDEEFdGohCEEGCyEDIAYgEGoiCSAKSw0DIAogCWsgFGogFkkNByAEIAY2AhggBCADNgIQIAMgBkcNCCAdIB+TIR0CQCAGRQ0AQQAhByAGQQRPBEAgDiAJQQJ0aiECIB39EyEZIAZBfHEiByEBIAghAwNAIAMgGSAC/QACAP3mASAD/QACAP3kAf0LAgAgAkEQaiECIANBEGohAyABQQRrIgENAAsgBiAHRg0BCyAOIAdBAnQiAyAJQQJ0amohAiAGIAdrIQEgAyAIaiEDA0AgAyAdIAIqAgCUIAMqAgCSOAIAIANBBGohAyACQQRqIQIgAUEBayIBDQALCwJ/QQAgDUF/Rg0AGiAALQBFRQRAIAUgDWogEksNCCALIA1BAnRqIQsgBQwBCyANIA9PDQMgEyANQQV0aiELQQYLIQMgCiAFIBFqIgBPBEAgCiAAayAVaiAXSQ0IIAQgBTYCGCAEIAM2AhAgAyAFRw0FAkAgBUUNAEEAIQcgBUEETwRAIA4gAEECdGohAiAd/RMhGSAFQXxxIgchASALIQMDQCADIAP9AAIAIBkgAv0AAgD95gH95QH9CwIAIAJBEGohAiADQRBqIQMgAUEEayIBDQALIAUgB0YNAQsgDiAAQQJ0IAdBAnQiAGpqIQIgBSAHayEBIAAgC2ohAwNAIAMgAyoCACAdIAIqAgCUkzgCACADQQRqIQMgAkEEaiECIAFBAWsiAQ0ACwsgBEFAayQADwsgACAKQYCrwgAQ7w4ACyAMIA9B0KrCABCFCwALAAsgDSAPQfCqwgAQhQsACyAJIApBkKvCABDvDgALDAMLIARBAzYCLCAEQcSDwgA2AiggBEICNwI0IAQgBEEQaq1CgICAgJAPhDcDICAEIARBCGqtQoCAgICQD4Q3AxggBCAEQRhqNgIwIARBKGpB3IPCABC5DQALIARBADYCOCAEQQE2AiwgBEGw/cEANgIoIARCBDcCMCAEQShqQbj9wQAQuQ0ACyAEQQA2AjggBEEBNgIsIARBuIDCADYCKCAEQgQ3AjAgBEEoakHAgMIAELkNAAsgBEIANwI0IARCgYCAgMAANwIsIARB8ILCADYCKCAEQRBqIARBGGogBEEoakH4gsIAEPwMAAv7FgMWfwl9BX4jAEGgAmsiCCQAIAAoAgAiBigCBCIJIAYpAxAgACgCBCITKAIAIgutIAAoAggoAgAiDK1CIIaEhSIlQiCIIiZCt9OwhQx+ICVC/////w+DIiVC3aHxywx+hSAmQt2h8csMfiAlQrfTsIUMfoVCIImFIianIg9xIQcgJkIZiCIoQv8Ag0KBgoSIkKDAgAF+ISkgBigCACEKAkACQAJAAn8CQAJAA0AgKSAHIApqKQAAIieFIiVCgYKEiJCgwIABfSAlQn+Fg0KAgYKEiJCgwIB/gyIlQgBSBEADQCAKICV6p0EDdiAHaiAJcUEEdGsiDUEQaygCACALRgRAIAwgDUEMaygCAEYNBAsgJUIBfSAlgyIlQgBSDQALCyAnICdCAYaDQoCBgoSIkKDAgH+DUARAIAcgDkEIaiIOaiAJcSEHDAELCyAAKAIYLQAAIQkgACgCFCEQIAAoAhAiCigCCCENIAENAUEAIQ5BAAwCCyANQQhrIgsoAgAiByAAKAIMIgkoAggiBk8NAyAJKAIEIAdBqAFsaiIGKQJ8ISUgBkKAgICAwAA3AnwgCEHQAWogBkGEAWoiBygCADYCAEEAIQogB0EANgIAIAggJTcDyAEgBigCYCIJQQZ0IQwgCUH///8fSw0CIAxB8P///wdLDQIgBigCXCEPIAYoAmQhECAGKQJQISUgBigCTCERIAYpAkQhJiAGKAJAIRIgBigCpAEhFCAGKAKgASEVAkAgDEUEQEEQIQ5BACEHDAELQRAhCiAJIQcgDEEQEJEOIg5FDQMLIAwEQCAOIA8gDPwKAAALIAhByABqIg8gBkHwAGooAgA2AgAgCEE8aiAIQdABaigCADYBACAIQShqIhYgBkGQAWooAgA2AgAgCEEYaiIXIAZBnAFqKAIANgIAIAggBikCaDcDQCAIIAgpA8gBNwE0IAggBikCiAE3AyAgCCAGKQKUATcDECAGKAJ0IRggBi8BeCEZIAhB0ABqIgpBEGoiGiAGQRBq/QACAP0LAwAgCkEwaiIbIAZBMGr9AAIA/QsDACAIIAb9AAIA/QsDUCAIIAb9AAIg/QsDcCALIAAoAhAiCigCCDYCACANQQRrIAAoAhQtAAA6AAAgCigCCCIMIAooAgBGBEAgCkGY8cEAEJcICyAKKAIEIAxBqAFsaiIGIAj9AANQ/QsCACAGIBA2AmQgBiAJNgJgIAYgDjYCXCAGIAc2AlggBiAlNwJQIAYgETYCTCAGICY3AkQgBiASNgJAIAYgCCkDQDcCaCAGQTBqIBv9AAMA/QsCACAGQSBqIAhB8ABq/QADAP0LAgAgBkEQaiAa/QADAP0LAgAgBkHwAGogDygCADYCACAGIBk7AXggBiAYNgJ0IAYgFDYCpAEgBiAVNgKgASAGIAgpATI3AXogBkGAAWogCEE4aikBADcBACAGQZABaiAWKAIANgIAIAYgCCkDIDcCiAEgBkGcAWogFygCADYCACAGIAgpAxA3ApQBIAogDEEBaiIHNgIIDAQLIAhBkAFqIAhBrAFqIAkbIgcgAf0AAgD9CwIAIAdBGGogAUEYaigCADYCACAHQRBqIAFBEGopAgA3AgAgCUEBcyEOIAkLIQcgDCALIAkbIREgCyAMIAkbIRIgEC0AACEQIAooAgAgDUYEQCAKQajxwQAQlwgLIAooAgQgDUGoAWxqIgkgBzYCACAJIAgpApABNwIEIAkgDjYCICAJIAgpAqwBNwIkIAlCgICAgIACNwJYIAlBADYCfCAJQQA2AkwgCUEANgJAIAlBDGogCEGQAWoiB0EIav0AAgD9CwIAIAlBHGogB0EYaigCADYCACAJQSxqIAhBrAFqIgdBCGr9AAIA/QsCACAJQTxqIAdBGGooAgA2AgAgCUH4AGpBADsBACAJQfAAakIANwIAIAn9DAAAAAAAAAAAAAAAAAAAAAD9CwJgIAlBlAFqQgA3AgAgCUEENgKAASAJQZwBakEANgIAIAn9DAAAAAAAAAAAAAAAAAAAAAD9CwKEASAJIBE2AqABIAkgEjYCpAEgCiANQQFqNgIIIAggEDoA1AEgCCANNgLQASAIIAw2AswBIAggCzYCyAEgBigCBCIMIA9xIgsgBigCACIJaikAAEKAgYKEiJCgwIB/gyIlUARAQQghBwNAIAcgC2ohCyAHQQhqIQcgCSALIAxxIgtqKQAAQoCBgoSIkKDAgH+DIiVQDQALCyAGKAIIIQ0gCSAleqdBA3YgC2ogDHEiC2osAAAiB0EATgRAIAkgCSkDAEKAgYKEiJCgwIB/g3qnQQN2IgtqLQAAIQcLAkAgB0EBcSIHIA1FcUUEQCAJIAtqICinQf8AcSIOOgAAIAYgDSAHazYCCCAJIAtBCGsgDHFqQQhqIA46AAAgBiAGKAIMQQFqNgIMIAkgC0EEdGsiB0EQayAI/QACyAH9CwIADAELIAhBCGogBiAGQRBqEIoCIAYgJiAGKAIAIAYoAgQgJhCFCiAIQcgBahDwCiEHCyAHQQhrIQsgCigCCCEHDAILIAogDEGA/MEAENcNAAsgByAGQYjxwQAQhQsACwJAAkACQAJAIAsoAgAiCSAHSQRAIAooAgQhByAIQcgBaiAAKAIcIBMoAgAQUiAIQcwBakEAIAgoAsgBGyEGIAcgCUGoAWxqIQkgACgCJCEKIAAoAiAhCyAAKAIYLQAADQMgACgCNCEHIAFFDQEgCCAHKgIMIiIgASoCDCIclCAHKgIAIh4gASoCACIdlJMgByoCBCIfIAEqAgQiI5STIAcqAggiICABKgIIIiSUkzgCjAIgCCAgIByUIB4gI5QgIiAklJIgHyAdlJOSOAKIAiAIICAgHZQgHyAclCAiICOUIB4gJJSTkpI4AoQCIAggHyAklCAiIB2UIB4gHJSSkiAgICOUkzgCgAIgHiABKgIUIiOUIB8gASoCECIklJMiHCAckiEcICAgJJQgASoCGCIhIB6UkyIdIB2SIR0gCCAHKgIYICEgIiAclCAeIB2UIB8gHyAhlCAgICOUkyIhICGSIiGUk5KSkjgCmAIgCCAHKgIUICMgIiAdlCAgICGUIB4gHJSTkpKSOAKUAiAIIAcqAhAgJCAiICGUIB8gHJQgICAdlJOSkpI4ApACDAILIAkgB0G48cEAEIULAAsgCEGAAmoiAUEYaiAHQRhqKAIANgIAIAFBEGogB0EQaikCADcDACAIIAf9AAIA/QsDgAILIAsgCEGAAmogACgCLEGk68EAIAIgAyAGQeTpwQAgBCAFIAAoAjAqAgAgCSAKKAIoERIAGgwBCyAAKAIoIQcCQCABBEAgCCABKgIIIh4gByoCCCIclCABKgIEIh8gByoCBCIdlCABKgIAIiAgByoCACIjlCABKgIMIiIgByoCDCIklJKSkjgCjAIgCCAfICOUICIgHJQgICAdlJOSIB4gJJSTOAKIAiAIICIgHZQgICAclJIgHyAklJMgHiAjlJM4AoQCIAggHiAdlCAiICOUICAgJJSTIB8gHJSTkjgCgAIgHyAHKgIQIAEqAhCTIiOUICAgByoCFCABKgIUkyIklJMiHCAckiEcIB4gJJQgHyAHKgIYIAEqAhiTIiGUkyIdIB2SIR0gCCAhICIgHJQgHyAdlCAgICAgIZQgHiAjlJMiISAhkiIhlJOSkjgCmAIgCCAkICIgIZQgICAclCAeIB2Uk5KSOAKUAiAIICMgIiAdlCAeICGUIB8gHJSTkpI4ApACDAELIAhBgAJqIgFBGGogB0EYaigCADYCACABQRBqIAdBEGopAgA3AwAgCCAH/QACAP0LA4ACCyALIAhBgAJqIAIgAyAAKAIsQaTrwQAgBCAFIAZB5OnBACAAKAIwKgIAIAkgCigCKBESABoLIAhBoAJqJAALuhYDFX8JfQV+IwBB4AFrIggkACAAKAIAIgYoAgQiCSAAKAIEKAIAIgwgBikDECIkp3OtIiVC3aHxywx+ICRCIIgiJEK307CFDH6FICVCt9OwhQx+ICRC3aHxywx+hUIgiYUiJaciD3EhByAlQhmIIidC/wCDQoGChIiQoMCAAX4hKCAGKAIAIgpBDGshDQJAAkACQAJAA0ACQCAoIAcgCmopAAAiJoUiJEKBgoSIkKDAgAF9ICRCf4WDQoCBgoSIkKDAgH+DIiRCAFIEQANAIAwgDUEAICR6p0EDdiAHaiAJcWsiDkEMbGooAgBGDQIgJEIBfSAkgyIkQgBSDQALCyAmICZCAYaDQoCBgoSIkKDAgH+DQgBSDQIgC0EIaiILIAdqIAlxIQcMAQsLIAogDkEMbGoiD0EIayIMKAIAIgcgACgCCCIJKAIIIgZPDQIgCSgCBCAHQagBbGoiBikCfCEkIAZCgICAgMAANwJ8IAhByAFqIAZBhAFqIgcoAgA2AgBBACEKIAdBADYCACAIICQ3A8ABIAYoAmAiCUEGdCELIAlB////H0sNASALQfD///8HSw0BIAYoAlwhDiAGKAJkIRAgBikCUCEkIAYoAkwhESAGKQJEISUgBigCQCESIAYoAqQBIRMgBigCoAEhFAJAIAtFBEBBECENQQAhBwwBC0EQIQogCSEHIAtBEBCRDiINRQ0CCyALBEAgDSAOIAv8CgAACyAIQUBrIg4gBkHwAGooAgA2AgAgCEE0aiAIQcgBaigCADYBACAIQSBqIhUgBkGQAWooAgA2AgAgCEEQaiIWIAZBnAFqKAIANgIAIAggBikCaDcDOCAIIAgpA8ABNwEsIAggBikCiAE3AxggCCAGKQKUATcDCCAGKAJ0IRcgBi8BeCEYIAhByABqIgpBEGoiGSAGQRBq/QACAP0LAwAgCkEwaiIaIAZBMGr9AAIA/QsDACAIIAb9AAIA/QsDSCAIIAb9AAIg/QsDaCAMIAAoAgwiCigCCDYCACAPQQRrIAAoAhAtAAA6AAAgCigCCCILIAooAgBGBEAgCkGQ78EAEJcICyAKKAIEIAtBqAFsaiIGIAj9AANI/QsCACAGIBA2AmQgBiAJNgJgIAYgDTYCXCAGIAc2AlggBiAkNwJQIAYgETYCTCAGICU3AkQgBiASNgJAIAYgCCkDODcCaCAGQTBqIBr9AAMA/QsCACAGQSBqIAhB6ABq/QADAP0LAgAgBkEQaiAZ/QADAP0LAgAgBkHwAGogDigCADYCACAGIBg7AXggBiAXNgJ0IAYgEzYCpAEgBiAUNgKgASAGIAgpASo3AXogBkGAAWogCEEwaikBADcBACAGQZABaiAVKAIANgIAIAYgCCkDGDcCiAEgBkGcAWogFigCADYCACAGIAgpAwg3ApQBIAogC0EBaiIHNgIIDAMLIAAoAhQtAAAhCSAAKAIQIQ4gACgCDCIKKAIIIQ1BACELQQAhByABBEAgCEGIAWogCEGkAWogCRsiByAB/QACAP0LAgAgB0EYaiABQRhqKAIANgIAIAdBEGogAUEQaikCADcCACAJQQFzIQsgCSEHC0EAIAwgCRshECAMQQAgCRshESAOLQAAIQ4gCigCACANRgRAIApBoO/BABCXCAsgCigCBCANQagBbGoiCSALNgIAIAkgCCkCpAE3AgQgCSAHNgIgIAkgCCkCiAE3AiQgCUKAgICAgAI3AlggCUEANgJ8IAlBADYCTCAJQQA2AkAgCUEMaiAIQaQBaiIHQQhq/QACAP0LAgAgCUEcaiAHQRhqKAIANgIAIAlBLGogCEGIAWoiB0EIav0AAgD9CwIAIAlBPGogB0EYaigCADYCACAJQfgAakEAOwEAIAlB8ABqQgA3AgAgCf0MAAAAAAAAAAAAAAAAAAAAAP0LAmAgCUGUAWpCADcCACAJQQQ2AoABIAlBnAFqQQA2AgAgCf0MAAAAAAAAAAAAAAAAAAAAAP0LAoQBIAkgEDYCoAEgCSARNgKkASAKIA1BAWo2AgggCCAOOgDIASAIIA02AsQBIAggDDYCwAEgBigCBCINIA9xIgwgBigCACIJaikAAEKAgYKEiJCgwIB/gyIkUARAQQghCwNAIAsgDGohByALQQhqIQsgCSAHIA1xIgxqKQAAQoCBgoSIkKDAgH+DIiRQDQALCyAGKAIIIQsgCSAkeqdBA3YgDGogDXEiDGosAAAiB0EATgRAIAkgCSkDAEKAgYKEiJCgwIB/g3qnQQN2IgxqLQAAIQcLAkAgB0EBcSIHIAtFcUUEQCAJIAxqICenQf8AcSIPOgAAIAkgDEEIayANcWpBCGogDzoAACAGIAsgB2s2AgggBiAGKAIMQQFqNgIMIAkgDEF0bGoiB0EMayIJQQhqIAhByAFqKAIANgIAIAkgCCkCwAE3AgAMAQsgCCAGIAZBEGoQ/QEgBiAlIAYoAgAgBigCBCAlEIUKIAhBwAFqEIwKIQcLIAdBCGshDCAKKAIIIQcMAgsgCiALQYD8wQAQ1w0ACyAHIAZBgO/BABCFCwALAkACQAJAAkAgDCgCACIJIAdJBEAgCigCBCAJQagBbGohCSAAKAIcIQYgACgCGCEKIAAoAhQtAAANAyAAKAIwIQcgAUUNASAIIAEqAggiHSAHKgIIIhuUIAEqAgQiHiAHKgIEIhyUIAEqAgAiHyAHKgIAIiGUIAEqAgwiIiAHKgIMIiOUkpKSOALMASAIIB4gIZQgIiAblCAfIByUk5IgHSAjlJM4AsgBIAggIiAclCAfIBuUkiAeICOUkyAdICGUkzgCxAEgCCAdIByUICIgIZQgHyAjlJMgHiAblJOSOALAASAeIAcqAhAgASoCEJMiIZQgHyAHKgIUIAEqAhSTIiOUkyIbIBuSIRsgHSAjlCAeIAcqAhggASoCGJMiIJSTIhwgHJIhHCAIICAgIiAblCAeIByUIB8gHyAglCAdICGUkyIgICCSIiCUk5KSOALYASAIICMgIiAglCAfIBuUIB0gHJSTkpI4AtQBIAggISAiIByUIB0gIJQgHiAblJOSkjgC0AEMAgsgCSAHQbDvwQAQhQsACyAIQcABaiIBQRhqIAdBGGooAgA2AgAgAUEQaiAHQRBqKQIANwMAIAggB/0AAgD9CwPAAQsgCiAIQcABaiACIAMgACgCJCAAKAIoIAQgBUEAIAggACgCLCoCACAJIAYoAigREgAaDAELIAAoAiAhBwJAIAEEQCAIIAcqAgwiIiABKgIMIhuUIAcqAgAiHSABKgIAIhyUkyAHKgIEIh4gASoCBCIhlJMgByoCCCIfIAEqAggiI5STOALMASAIIB8gG5QgHSAhlCAiICOUkiAeIByUk5I4AsgBIAggHyAclCAeIBuUICIgIZQgHSAjlJOSkjgCxAEgCCAeICOUICIgHJQgHSAblJKSIB8gIZSTOALAASAdIAEqAhQiIZQgHiABKgIQIiOUkyIbIBuSIRsgHyAjlCABKgIYIiAgHZSTIhwgHJIhHCAIIAcqAhggICAiIBuUIB0gHJQgHiAeICCUIB8gIZSTIiAgIJIiIJSTkpKSOALYASAIIAcqAhQgISAiIByUIB8gIJQgHSAblJOSkpI4AtQBIAggByoCECAjICIgIJQgHiAblCAfIByUk5KSkjgC0AEMAQsgCEHAAWoiAUEYaiAHQRhqKAIANgIAIAFBEGogB0EQaikCADcDACAIIAf9AAIA/QsDwAELIAogCEHAAWogACgCJCAAKAIoIAIgA0EAIAggBCAFIAAoAiwqAgAgCSAGKAIoERIAGgsgCEHgAWokAAvDFAIOfyN9IwBB4AFrIgkkACAAKAIAIQsgBioCBCEuIAAqAgQhFyAJQQA2AgggCUKAgICAwAA3AgAgCUG4AWogAyAFIAQoApQBEQEAAkAgFyAXIC6UIAsbQ83MTD2SIilDAAAAAGAEQCApIAkqAswBkiEXICkgCSoCyAGSIRkgKSAJKgLEAZIhHSAJKgLAASApkyEaIAkqArwBICmTIRggCSoCuAEgKZMhKAJAIAIoAjgiCygCCEUEQAwBCwJ/QQAgCygCBCIGKgIAIB1fRQ0AGkEAIAYqAgQgGV9FDQAaQQAgBioCCCAXX0UNABogBkEAIAYqAhggGmAbQQAgBioCFCAYYBtBACAGKgIQIChgGwshCiAGKAI8Qf////8DcUUNACAGKgIgIB1fRQ0AIAYqAiQgGV9FDQAgBioCKCAXX0UNACAGQSBqIQ0gBioCMCAoYCAGKgI0IBhgcSAGKgI4IBpgcSEMCyAJIAI2ArQBIAkgFzgCsAEgCSAZOAKsASAJIB04AqgBIAkgGjgCpAEgCSAYOAKgASAJICg4ApwBIAkgCjYCmAEgCSALNgKUASAJIAw2ApABIAkgDTYCEEEAIQ0gCUEANgIMIAlBDGoiBkGoAWohECAJQbgBaiAGIBAQkAMgCSgCwAEiCkUNASAHRSAIRXIhEiACKAI8IREgBSoCGCEzIAUqAhQhNCAFKgIQITUgBSoCCCEgIAUqAgQhISAFKgIAISIgBSoCDCEmIAhBBGohDwNAIAkoAgghAiAJQQA2AgggAgRAIAkoAgRBgAFqIQYDQCAGQQRrKAIAIgsEQCAGKAIAIAtBBnRBBBDoDgsgBkEoaygCACILBEAgBkEkaygCACALQQZ0QRAQ6A4LIAZBqAFqIQYgAkEBayICDQALCyAJICAgCioCfCIXlCAhIAoqAngiGZQgIiAKKgJ0Ih2UICYgCioCgAEiGpSSkpI4AsQBIAkgISAdlCAmIBeUICIgGZSTkiAgIBqUkzgCwAEgCSAmIBmUICIgF5SSICEgGpSTICAgHZSTOAK8ASAJICAgGZQgJiAdlCAiIBqUkyAhIBeUk5I4ArgBICEgCioChAEgNZMiHZQgIiAKKgKIASA0kyIalJMiFyAXkiEXICAgGpQgISAKKgKMASAzkyIYlJMiGSAZkiEZIAkgGCAmIBeUICEgGZQgIiAiIBiUICAgHZSTIhggGJIiGJSTkpI4AtABIAkgGiAmIBiUICIgF5QgICAZlJOSkjgCzAEgCSAdICYgGZQgICAYlCAhIBeUk5KSOALIASAKKAJAIQIgCigCRCIGKAIIIQsgCUEANgLUASAJQd8BaiAJQbgBaiADIAQgAiALQQFrQXhxakEIaiAGICkgCSAJQdQBahBJGgJAIAkoAtQBIgJFDQAgCSgC2AEiBigCACILBEAgAiALEQYACyAGKAIEIgtFDQAgAiALIAYoAggQ6A4LAkAgEgRAIAkoAghBqAFsIQYgCSgCBCEKA0AgBkUNAiAGQagBayEGIAAgCiAFIC4QkQYhAiAKQagBaiEKIAJFDQALQQEhDQwEC0EAIQYCQCAKKAIQQQFxRQ0AIAooAhQiAiARKAKMA08NACARKAKIAyACQYADbGoiAigCAEEBRw0AIAIoAgQgCigCGEcNACACQRBqQQAgAi0A9QJBAk8bIQYLIAcqAgghFyAHKgIEIRkgByoCACEdAn0gCSgCCCICBEAgAkGoAWwhAiAJKAIEIQsgBgRAIAIgC2ohEyALQagBaiEMIB0hGiAZIRggFyEoA0AgCyECIAwhCyAAIAIgBSAuEJEGIRQCQCACKAKEASIMRQ0AICIgAioCjAEiJJQgISACKgKIASIclJMiGyAbkiEnICAgHJQgIiACKgKQASIblJMiHiAekiEeIBsgJiAnlCAiIB6UICEgISAblCAgICSUkyIbIBuSIiOUk5KSIRsgHCAmICOUICEgJ5QgICAelJOSkiEcICQgJiAelCAgICOUICIgJ5STkpIiMIwhJyACKAKAASEVIAxBBnQhFkMAAAAAIR5BACECQQAhDEMAAAAAISRDAAAAACEjA0AgKSACIBVqIg5BGGoqAgBgBEAgDkEUaioCACIvIAoqAngiH5QgDkEQaioCACIxIAoqAnwiKpSTIiUgJZIhJSAxIAoqAnQiK5QgDkEMaioCACIsIB+UkyItIC2SIS0gASAGKgJ0IAoqAoQBICwgCioCgAEiMiAllCAfIC2UICogLCAqlCAvICuUkyIsICySIiyUk5KSkiI2IAYqAvABkyI3IAYqAoQBIjiUIAoqAowBIC8gMiAtlCArICyUIB8gJZSTkpKSIi8gBioC+AGTIh8gBioCfCI5lJOSICeUIBwgBioCcCAfIAYqAoABIh+UIAoqAogBIDEgMiAslCAqICWUICsgLZSTkpKSIiogBioC9AGTIiUgOJSTkpSTIBsgBioCeCAlIDmUIDcgH5STkpSTlCAPKgIAIiUgJ5QgHCAIKgIAIiuUkyAbIAhBCGoiDioCACItlJOTIR8gDiAtIBsgH5STOAIAIA8gJSAwIB+UkzgCACAIICsgHCAflJM4AgAgHiAvkiEeICQgKpIhJCAjIDaSISMgDEEBaiEMCyAWIAJBQGsiAkcNAAsgDEEATA0AIAYqAnggJCAMsyIklSAGKgL0AZMiHyAGKgJ8IiqUICMgJJUgBioC8AGTIiMgBioCgAEiJZSTkiIrIBsgBioCdCAjIAYqAoQBIiOUIB4gJJUgBioC+AGTIh4gKpSTkiIkICeUIBwgBioCcCAeICWUIB8gI5STkiIelJMgGyArlJMiJ5SSISMgASAkIDAgJ5SSlCEbIAEgHiAcICeUkpQiHIsgGoteBEAgByAcOAIAIBwhGgsgASAjlCEcIBuLIBiLXgRAIAcgGzgCBCAbIRgLIByLICiLXkUNACAHIBw4AgggHCEoCyANIBRyIQ0gC0EAQagBIAsgE0YiAhtqIQwgAkUNAAsgByoCBCEYIAcqAgAhKCAHKgIIDAILA0AgACALIAUgLhCRBiANciENIAtBqAFqIQsgAkGoAWsiAg0ACwsgGSEYIB0hKCAXCyEaIAggKCAdkyAIKgIAkjgCACAPIBggGZMgDyoCAJI4AgAgCEEIaiICIBogF5MgAioCAJI4AgALIAlBuAFqIAlBDGogEBCQAyAJKALAASIKDQALDAELIAlBADYCHCAJQQE2AhAgCUGk2cEANgIMIAlCBDcCFCAJQQxqQazZwQAQuQ0ACyAJKAKQASIAQSFPBEAgCSgCFCAAQQJ0QQQQ6A4LIAkoAgQhACAJKAIIIgoEQCAAQYABaiEGA0AgBkEEaygCACICBEAgBigCACACQQZ0QQQQ6A4LIAZBKGsoAgAiAgRAIAZBJGsoAgAgAkEGdEEQEOgOCyAGQagBaiEGIApBAWsiCg0ACwsgCSgCACICBEAgACACQagBbEEEEOgOCyAJQeABaiQAIA1BAXELrhYEHn8KfQF+AXsjAEHAA2siCCQAIAYQvQcCQAJAAkAgBigCACIJBEAgCEEQaiAJIAYoAgQoAhwRAAAgCEHQAmogCCgCECIJIAgoAhQoAgwRAAAgCUUNAiAIKQPQAkLXyMy78pK38EOFIAgpA9gCQrHV3pHwzPfs8QCFhEIAUg0CIAhBqAJqIAIgACADKAKUAREBACAEQwAAAABgRQ0BIAQgCCoCvAKSIScgBCAIKgK4ApIhKCAEIAgqArQCkiEmIAgqArACIASTISogCCoCrAIgBJMhKQJAIAgqAqgCIASTIisgCSoCGGBFDQAgCSoCHCApX0UNACAJKgIgICpfRQ0AIAkqAiQgJmBFDQAgCSoCKCAoYEUNACAJKgIsICdgRQ0AQQEhIkEEIRIMBAsgCCAnICcgKpNDAAAgQZUiJ0PNzMw9ICdDzczMPV0bIieSOAIwIAggKCAoICmTQwAAIEGVIihDzczMPSAoQ83MzD1dGyIokjgCLCAIICYgJiArk0MAACBBlSImQ83MzD0gJkPNzMw9XRsiJpI4AiggCCAqICeTOAIkIAggKSAokzgCICAIICsgJpM4AhwgCSgADCEGIAkgCSgAADYADCAJKQAQITAgCSAJKQAENwAQIAkgMDcABCAJIAY2AAAgBSgCBCESIAUoAgAhGyAFQoCAgIDAADcCACAFKAIIIRMgBUEANgIIIAlBADYCCAJAIAEoAghFDQAgASgCBCIGQQAgCCoCJCInIAYqAhhfG0EAIAgqAiAiKCAGKgIUXxtBACAIKgIcIiYgBioCEF8bQQAgCCoCMCIqIAYqAghgG0EAIAgqAiwiKSAGKgIEYBtBACAIKgIoIisgBioCAGAbIQogBigCPEH/////A3FFDQAgBioCICArXyAGKgIkIClfcSAGKgIoICpfcSAGKgIwICZgcSAGKgI0IChgcSAGKgI4ICdgcSELIAZBIGohBgsgCCAKNgLEASAIIAE2ArwBIAggCzYCuAEgCCAGNgI4IAhBADYCNCAIIAhBHGo2AsABIAhBCGogCEE0ahDZAyAIKAIIQQFxBEAgCCgCDCEKIAkoAggiBkECdCELA0AgCSgCACAGRgRAIAkgBkEBQQRBBBDYBgsgCSAGQQFqIgY2AgggCSgCBCALaiAKNgIAIAtBBGohCyAIIAhBNGoQ2QMgCCgCBCEKIAgoAgBBAXENAAsLIAlBGGohBiAIKAK4ASIKQSFPBEAgCCgCPCAKQQJ0QQQQ6A4LIAYgCP0AAhz9CwIAIAZBEGogCEEsaikCADcCAAwDC0G4gMMAEPIOAAsgCEEANgLgAiAIQQE2AtQCIAhB6ODCADYC0AIgCEIENwLYAiAIQdACakHw4MIAELkNAAtByIDDABDyDgALIAkoAhQhCiAJQQA2AhQgACoCDCIqIAAqAgAiJyAAKgIUIimUIAAqAgQiKCAAKgIQIiuUkyImICaSIi+UICggKCAAKgIYIiyUIAAqAggiJiAplJMiLSAtkiItlCAnICYgK5QgJyAslJMiLiAukiIulJOSICyTISwgKiAulCAnIC+UICYgLZSTkiApkyEpICogLZQgJiAulCAoIC+Uk5IgK5MhKyASIBNB7ABsaiERIAkoAgQiBiAJKAIIQQJ0aiEjIAkoAhAiDCAKQQJ0aiEXIAhB1AJqISQgCEGoAmoiCUEMaiEcIAlBGGohHSABKAIsIRggASgCMCEPIAEoAjghJSABKAI8IRkgJowhJiAojCEoICeMIScgCEHYAWohHkECIQ0gEiEJAkACQAJAAkADQEHsACAOQewAbGshCwJAAkACQANAIAYgI0YNASALQewAayELIA5BAWohDiAGKAIAIQogBkEEaiITIQYgCiAZTw0ACyAGQQRrIRQgIkUNASAFKAIIIQYMAgsgESAJa0HsAG4hDiAJIBFHBEAgCUHEAGohBgNAIAZBBGsoAgAiAARAIAYoAgAgAEEkbEEEEOgOCyAGQewAaiEGIA5BAWsiDg0ACwsgGwRAIBIgG0HsAGxBBBDoDgsgCEHAA2okAA8LAkACQAJAAkACQAJAAkAgDUECRgRAIAwgF0YEQEEAIQ0MBwsgDCgCACEaQQEhDSAMQQRqIQwMAQsgDUEBcUUNAQsgCiAaTQ0AIAkgEUcEQCAJQewAaiEGAkAgCSgCAEECRg0AIAkoAkAiCkUNACAJKAJEIApBJGxBBBDoDgsgBiEJCyAMIBdGDQMDQCAUKAIAIgogDCgCACIaTQ0CIAkgEUcEQCAJQewAaiEGAkAgCSgCAEECRg0AIAkoAkAiCkUNACAJKAJEIApBJGxBBBDoDgsgBiEJCyAXIAxBBGoiDEcNAAsMAwsgDUEBcQ0BDAMLIAxBBGohDEEBIQ0LIAogGkcNAQJAIAkgEUYNACAJQRRqKQIAITAgCSgCACEQIAn9AAIEITEgCEHQAmoiBkEYaiINIAlBHGooAgA2AgAgBkEQaiIGIDA3AwAgCCAx/QsD0AIgEEECRg0AIAkoAiAhCiAJKAJAIRUgCSgCRCEfIAkoAmQhICAJKAJoISEgCEGIAmoiFkEYaiANKAIANgIAIBZBEGogBikDADcDACAIQegBaiIGQQhqIAlBLGr9AAIA/QsDACAGQRhqIAlBPGooAgA2AgAgCEHIAWoiBkEIaiAJQdAAav0AAgD9CwMAIAZBGGogCUHgAGooAgA2AgAgCCAI/QAD0AL9CwOIAiAIIAkpAiQ3A+gBIAggCSkCSDcDyAEgCUHsAGohCUECIQ0MAwtB2IDDABDyDgALIBQoAgAhCkEAIQ0LQQAhECAIQeABakEANgIAIB5CADcDACAI/QwAAAAAAAAAAAAAAAAAAAAA/QsDyAEgCkEAIAcbISFBACAKIAcbISBBBCEfQQAhCkEAIRULIAUoAggiFiAFKAIARgRAIAVB6IDDABCdCAsgBSgCBCAWQewAbGoiBiAQNgIAIAYgCCkDiAI3AgQgBiAKNgIgIAYgCCkD6AE3AiQgBiAfNgJEIAYgFTYCQCAGIAj9AAPIAf0LAkggBkEMaiAIQYgCaiIKQQhq/QADAP0LAgAgBkEcaiAKQRhqKAIANgIAIAZBLGogCEHoAWoiCkEIav0AAwD9CwIAIAZBPGogCkEYaigCADYCACAGQdgAaiAeKQMANwIAIAZB4ABqIAhB4AFqKAIANgIAIAYgITYCaCAGICA2AmQgBSAWQQFqIgY2AggLIA5BAWsgBk8NBCAUKAIAIgYgGUkEQCAlIAZBDGxqIgYoAgAiCiAPTw0CIAYoAgQiECAPTw0DIAYoAggiBiAPTw0EIAUoAgQgC2shCyAdIBggBkEMbGoiBikCADcCACAdQQhqIAZBCGooAgA2AgAgCEGoAmoiFUEIaiAYIApBDGxqIgZBCGooAgA2AgAgCCAGKQIANwOoAiAcIBggEEEMbGoiBikCADcCACAcQQhqIAZBCGooAgA2AgAgCEHQAmogASAUKAIAEP4CICRBACAIKALQAhshBiAHRQRAIAYgACAVQZj9wgAgAiADIAZB2PvCAEEAIAYgBCALECMaIBMhBgwCCyAIICw4ApwDIAggKTgCmAMgCCArOAKUAyAIICo4ApADIAggJjgCjAMgCCAoOAKIAyAIICc4AoQDIAYgCEGEA2ogAiADIAhBqAJqQZj9wgBBACAGIAZB2PvCACAEIAsQIxogEyEGDAELCyAGIBlBpNPDABCFCwALIAogD0G008MAEIULAAsgECAPQcTTwwAQhQsACyAGIA9B1NPDABCFCwALIA5BAWsgBkH4gMMAEIULAAv+FAMQfQt/AX4jAEGAAWsiBCQAIAAoAgAhBQJAIAEEQCAEIAUqAgwiDCABKgIMIgqUIAUqAgAiByABKgIAIguUkyAFKgIEIgggASoCBCIJlJMgBSoCCCIGIAEqAggiDpSTOAIcIAQgBiAKlCAHIAmUIAwgDpSSIAggC5STkjgCGCAEIAYgC5QgCCAKlCAMIAmUIAcgDpSTkpI4AhQgBCAIIA6UIAwgC5QgByAKlJKSIAYgCZSTOAIQIAcgASoCFCIJlCAIIAEqAhAiDpSTIgogCpIhCiAGIA6UIAEqAhgiDSAHlJMiCyALkiELIAQgBSoCGCANIAwgCpQgByALlCAIIAggDZQgBiAJlJMiDSANkiINlJOSkpI4AiggBCAFKgIUIAkgDCALlCAGIA2UIAcgCpSTkpKSOAIkIAQgBSoCECAOIAwgDZQgCCAKlCAGIAuUk5KSkjgCIAwBCyAEQRBqIhdBGGogBUEYaigCADYCACAXQRBqIAVBEGopAgA3AwAgBCAF/QACAP0LAxALAkAgACgCBC0AAA0AIAAoAgwhFwJ9AkACfyAAKAIIIhotAAAiG0UEQCAXKAIARQ0CQRghFkEUIRhBHAwBCyAXKAIgQQFHDQFBOCEWQTQhGEE8CyAXaioCACEHIBcgGGoqAgAhBiAWIBdqKgIADAELQwAAAAAhB0MAAAAAIQZDAAAAAAshCCAXKAJIIhZBJGwiHCAXKAJEIgVqIRkgACgCECIYKgIIIAeTIQcgGCoCBCAIkyEIIBgqAgAgBpMhBgJAIBtFBEAgFkUNASAcQSRrIhZBJG5BAXFFBEAgBSAFKgIAIAaTOAIAIAUgBSoCBCAIkzgCBCAFIAUqAgggB5M4AgggBUEkaiEFCyAWQSRJDQEDQCAFIAUqAgAgBpM4AgAgBUEEaiIWIBYqAgAgCJM4AgAgBUEIaiIWIBYqAgAgB5M4AgAgBUEkaiIWIBYqAgAgBpM4AgAgBUEoaiIWIBYqAgAgCJM4AgAgBUEsaiIWIBYqAgAgB5M4AgAgGSAFQcgAaiIFRw0ACwwBCyAWRQ0AIBZBJGxBJGsiFkEkbkEBcUUEQCAFIAUqAgwgBpM4AgwgBSAFKgIQIAiTOAIQIAUgBSoCFCAHkzgCFCAFQSRqIQULIBZBJEkNAANAIAVBDGoiFiAWKgIAIAaTOAIAIAVBEGoiFiAWKgIAIAiTOAIAIAVBFGoiFiAWKgIAIAeTOAIAIAVBMGoiFiAWKgIAIAaTOAIAIAVBNGoiFiAWKgIAIAiTOAIAIAVBOGoiFiAWKgIAIAeTOAIAIBkgBUHIAGoiBUcNAAsLIBotAABFBEAgGEEIaigCACEFIBgpAgAhISAX/QwAAAAAAAAAAAAAAAAAAIA//QsCBCAXQQE2AgAgFyAhNwIUIBdBHGogBTYCAEEAIQUgFyABBH8gBEHQAGoiBUEYaiABQRhqKAIANgIAIAVBEGogAUEQaikCADcDACAEIAH9AAIA/QsDUEEBBUEACzYCICAXIAQpA1A3AiQgF0EsaiAEQdgAav0AAwD9CwIAIBdBPGogBEHoAGooAgA2AgAgACgCFCAEQRBqIAAoAhxBpITDACACIANBACAEQQAgBCAAKAIgKgIAIBcgACgCGCgCKBESABoMAQtBACEFIBcgAQR/IARB0ABqIgVBGGogAUEYaigCADYCACAFQRBqIAFBEGopAgA3AwAgBCAB/QACAP0LA1BBAQVBAAs2AgAgFyAEKQNQNwIEIBdBDGogBEHQAGoiAUEIav0AAwD9CwIAIBdBHGogBEHoAGooAgA2AgAgGEEIaigCACEFIBgpAgAhISAX/QwAAAAAAAAAAAAAAAAAAIA//QsCJCAXQQE2AiAgFyAhNwI0IBdBPGogBTYCACAAKAIUIQUgACgCGCEYIAQgBCoCHCIMOAJcIAQgBCoCGCIHjDgCWCAEIAQqAhQiCIw4AlQgBCAEKgIQIgaMOAJQIAQgDCAGIAQqAiQiCpQgCCAEKgIgIguUkyIJIAmSIgmUIAggCCAEKgIoIg6UIAcgCpSTIg0gDZIiDZQgBiAHIAuUIAYgDpSTIg8gD5IiD5STkiAOkzgCaCAEIAwgD5QgBiAJlCAHIA2Uk5IgCpM4AmQgBCAMIA2UIAcgD5QgCCAJlJOSIAuTOAJgIAUgASACIAMgACgCHEGkhMMAQQAgBEEAIAQgACgCICoCACAXIBgoAigREgAaCyAAKAIkIhYqAgAhByAWKgIEIQggFioCCCEGIARB+ABqIAAoAgwiBUHYAEHMACAAKAIIIhwtAAAbaiIBQQhqKAIANgIAIAQgASkCADcDcCAFKAJIIgEEQCAFKAJEIR0gAUEkbCEeIAAoAiwhGyAIQwrXIzySIhCMIREgBkMK1yM8kiISjCETIAdDCtcjPJIiFIwhFSAAKAIQIRkgACgCKCEXQQAhAUEAIRhBASEaA0ACQAJ9AkACQAJAIAEgHWoiAEEYaiIfKgIAQwAAAABdBEAgFyoCCCEHIBcqAgQhCCAXKgIAIQYgFioCCCEMIBYqAgQhCiAWKgIAIQsgBCoCeCEJIAQqAnQhDiAEKgJwIQ0gBEEIaiACIAMoArQBEQAAIAQoAggiIEUNASAEQdAAaiAgIARBEGogBEHwAGogBCgCDCgCFBECACAfKgIAIBkqAgQgBCoCVJIgCiAOjJggCJKTIAQqAnSMlCAZKgIAIAQqAlCSIAsgDYyYIAaSkyAEKgJwlJMgGSoCCCAEKgJYkiAMIAmMmCAHkpMgBCoCeJSTXkUNBQsgHC0AAA0CIAUoAgBBAXFFDQEgBSoCBCIHIABBBGoqAgAiCJQgBSoCCCIMIAAqAgAiDpSTIgYgBpIhCiAFKgIMIgsgDpQgByAAQQhqKgIAIgaUkyIJIAmSIQkgBSoCHCAGIAUqAhAiDSAKlCAHIAmUIAwgDCAGlCALIAiUkyIGIAaSIg+Uk5KSkiEGIAUqAhggCCANIAmUIAsgD5QgByAKlJOSkpIhCCAFKgIUIA4gDSAPlCAMIAqUIAsgCZSTkpKSDAMLQeyFwwBBG0GIhsMAENELAAsgAEEIaioCACEGIABBBGoqAgAhCCAAKgIADAELIAUoAiBBAXFFBEAgAEEUaioCACEGIABBEGoqAgAhCCAAQQxqKgIADAELIAUqAiQiByAAQRBqKgIAIgiUIAUqAigiDCAAQQxqKgIAIg6UkyIGIAaSIQogBSoCLCILIA6UIAcgAEEUaioCACIGlJMiCSAJkiEJIAUqAjwgBiAFKgIwIg0gCpQgByAJlCAMIAwgBpQgCyAIlJMiBiAGkiIPlJOSkpIhBiAFKgI4IAggDSAJlCALIA+UIAcgCpSTkpKSIQggBSoCNCAOIA0gD5QgDCAKlCALIAmUk5KSkgshB0EAIQACQCAHIBcqAgCTIgcgFV0NACAHIBReDQAgCCAXKgIEkyIHIBFdDQAgByAQXg0AIAYgFyoCCJMiByASXkUgByATXUF/c3EhAAsgGyAbKAIAIAAgGHRyNgIACyAaQR9xIRggGkEBaiEaIB4gAUEkaiIBRw0ACwsgBEGAAWokAAv9FgIXfwJ+IwBBQGoiAiQAIAJBCDYCJCACIAE2AiAgAkEoaiIBIAJBIGoQtQMgAigCLCEPAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJ/AkACfwJAAkACQAJ/AkACQAJ/AkACQAJAAkAgAigCKCIRQYGAgIB4RwRAIBFBgICAgHhHBEAgAigCJCIJRQ0EIAIoAjAhFyACIAlBAWsiBjYCJAJ/IAIoAiAiBCgCBCIDQQdNBEAgAkKBygA3AyhBASENIAEQnw0MAQsgBCADQQhrIgM2AgQgBCAEKAIAIgFBCGo2AgAgAkEYaiABKQAAEKgIIAIoAhghDSACKAIcCyELIA1BAXENJCALRQ0CQYCACCALIAtBgIAITxsiAUEDdCIGQQQQkQ4iCUUNGiACIAk2AiwgAiABNgIoQQAhASACQQA2AjAgBCgCACEHQQAhDQNAIANBBEkNJCAEIANBBGsiBjYCBCAEIAEgB2oiA0EEaiIKNgIAIAZBBEkNJCADKAAAIQUgBCAGQQRrIgM2AgQgBCAKQQRqNgIAIAooAAAhBiACKAIoIA1GBEAgAkEoakHUrcEAELQIIAIoAiwhCQsgASAJaiIKIAU2AgAgCkEEaiAGNgIAIAIgDUEBaiINNgIwIAFBCGohASALIA1HDQALIAIoAiwhCyACKAIoIhNBgoCAgHhIDSQgAigCJCEGDAMLQQBByLLBAEGQrcEAEKgKIQ8LIABBgICAgHg2AgAgACAPNgIEDCQLQQQhC0EAIQ0LIAZFDQMCfyACKAIgIgQoAgQiAUEHTQRAIAJCgcoANwMoQQEhAyACQShqEJ8NDAELIAQgAUEIayIBNgIEIAQgBCgCACIJQQhqNgIAIAJBEGogCSkAABCoCCACKAIQIQMgAigCFAshCSADQQFxDR0gCUUNAUHMmQMgCSAJQcyZA08bIgNBFGwiCkEEEJEOIgdFDRcgAiAHNgIsIAIgAzYCKEEAIQMgAkEANgIwIAQoAgAhEEEAIQoDQCABQQRJDRkgBCABQQRrIgE2AgQgBCADIBBqIgVBBGoiBzYCACABQQRJDRogBSgAACEIIAQgAUEEayIBNgIEIAQgB0EEaiIFNgIAAkACQCABQQRJDQAgBygAACEMIAQgAUEEayIBNgIEIAQgBUEEaiIHNgIAIAFBBEkNACAFKAAAIQ4gBCABQQRrIgE2AgQgBCAHQQRqIgU2AgAgAUEETw0BCyACQQA6ADsgAkElOwA5IAJBADYCPCACQQE6ADgMHgsgBzUAACEZIAQgAUEEayIBNgIEIAQgBUEEajYCACAZIAU1AABCIIaEIRkgAigCKCAKRgRAIAJBKGpB1K3BABCUCAsgAigCLCADaiIHIAg2AgAgB0EMaiAZNwIAIAdBCGogDjYCACAHQQRqIAw2AgAgAiAKQQFqIgo2AjAgA0EUaiEDIAkgCkcNAAsgAigCLCIJIAIoAigiEEGCgICAeE4NAhoMHQtBAUHIssEAQZCtwQAQqAohCwwfC0EAIQpBBAshCSAGQQFGDQMgAiAGQQJrNgIkAn8gBCgCBCIDQQdNBEAgAkKBygA3AyggAkEoahCfDSEGQQEMAQsgBCADQQhrIgM2AgQgBCAEKAIAIgFBCGo2AgAgAkEIaiABKQAAEKgIIAIoAgwhBiACKAIIC0EBcQ0EIAZFDQFBgIACIAYgBkGAgAJPGyIHQQV0IgFBBBCRDiIFRQ0XQQAhASACQQA2AjAgAiAFNgIsIAIgBzYCKCAEKAIAIQhBACEHA0ACQAJAAkAgA0EETwRAIAQgA0EEayIDNgIEIAQgCEEEaiIFNgIAIANBA0sNAQsgAkKBygA3AzggAkE4ahCfDSEGDAELIAgoAAAhDiAEIANBBGsiAzYCBCAEIAVBBGoiCDYCAAJAIANBBE8EQCAFKAAAIRIgBCADQQRrIgM2AgQgBCAIQQRqIgU2AgAgA0EDSw0BCyACQoHKADcDOCACQThqEJ8NIQYMAQsgCCgAACEUIAQgA0EEayIDNgIEIAQgBUEEaiIINgIAAkACQCADQQRJDQAgBSgAACEVIAQgA0EEayIDNgIEIAQgCEEEaiIFNgIAIANBBEkNACAIKAAAIRYgBCADQQRrIgM2AgQgBCAFQQRqIgg2AgAgA0EDSw0BCyACQQA6ADsgAkElOwA5IAJBADYCPCACQQE6ADggAkE4ahCfDSEGDAELIAU1AAAhGSAEIANBBGsiAzYCBCAEIAhBBGoiBTYCACADRQRAIAJCgcoANwM4IAJBOGoQnw0hBgwBCyAINQAAIRogBCADQQFrIgM2AgQgBCAFQQFqIgg2AgAgBS0AACIMQQJJDQFBDEEEEJEOIgZFDRsgBiAMOgAEIAZBgoCAgHg2AgALIAIoAigiAUUNBiACKAIsIAFBBXRBBBDoDgwGCyAaQiCGIBmEIRkgAigCKCAHRgRAIAJBKGpB1K3BABDCCAsgAigCLCABaiIFIA42AgAgBUEcaiAMOgAAIAVBFGogGTcCACAFQRBqIBY2AgAgBUEMaiAVNgIAIAVBCGogFDYCACAFQQRqIBI2AgAgAiAHQQFqIgc2AjAgAUEgaiEBIAYgB0cNAAsgAigCLCIGIAIoAigiAUGCgICAeE4NAhoMBAtBAkHIssEAQZCtwQAQqAohCQwZC0EAIQFBACEHQQQLIQQgAkEoaiIFIAJBIGoiCBClBCACKAIsIg4gAigCKCIGQYGAgIB4Rg0DGiAGQYCAgIB4Rg0CIAIoAjAhFCAFIAgQpQQgAigCLCISIAIoAigiA0GBgICAeEYNBRogA0GAgICAeEYNBCACKAIwIRUgBSAIEKUEIAIoAiwhBSACKAIoIghBgICAgHhrDgIHCAYLQQNByLLBAEGQrcEAEKgKIQYLIABBgICAgHg2AgAgACAGNgIEDA0LQQRByLLBAEGQrcEAEKgKCyEDIABBgICAgHg2AgAgACADNgIEDAoLQQVByLLBAEGQrcEAEKgKCyEMIABBgICAgHg2AgAgACAMNgIEDAcLIAIoAjAhFiACQShqIAJBIGoQpQQgAigCLCEMIAIoAigiGEGAgICAeGsOAgMEAgtBBkHIssEAQZCtwQAQqAohBQsgAEGAgICAeDYCACAAIAU2AgQMAwsgACACKAIwNgJcIAAgDDYCWCAAIBg2AlQgACAWNgJQIAAgBTYCTCAAIAg2AkggACAVNgJEIAAgEjYCQCAAIAM2AjwgACAUNgI4IAAgDjYCNCAAIAY2AjAgACAHNgIsIAAgBDYCKCAAIAE2AiQgACAKNgIgIAAgCTYCHCAAIBA2AhggACANNgIUIAAgCzYCECAAIBM2AgwgACAXNgIIIAAgDzYCBCAAIBE2AgAMEgtBB0HIssEAQZCtwQAQqAohDAsgAEGAgICAeDYCACAAIAw2AgQgCEUNACAFIAhBAnRBBBDoDgsgA0UNACASIANBAnRBBBDoDgsgBkUNACAOIAZBAnRBBBDoDgsgAUUNACAEIAFBBXRBBBDoDgsgEEUNCCAJIBBBFGxBBBDoDgwIC0EEIAZBxK3BABDXDQALQQQgCkHErcEAENcNAAsgAkKBygA3AzgMAwsgAkKBygA3AzgMAgtBBCABQcStwQAQ1w0AC0EEQQxB+MrEACgCACIAQcwIIAAbEQAAAAsgAkE4ahCfDSEJIAIoAigiAUUNACACKAIsIAFBFGxBBBDoDgsgAEGAgICAeDYCACAAIAk2AgQLIBNFDQIgCyATQQN0QQQQ6A4MAgsgAkKBygA3AzggAkE4ahCfDSELIAIoAigiAUUNACACKAIsIAFBA3RBBBDoDgsgAEGAgICAeDYCACAAIAs2AgQLIBFFDQAgDyARQQxsQQQQ6A4LIAJBQGskAAv8FAMQfQt/AX4jAEGAAWsiBCQAIAAoAgAhBQJAIAEEQCAEIAUqAgwiDCABKgIMIgqUIAUqAgAiByABKgIAIguUkyAFKgIEIgggASoCBCIJlJMgBSoCCCIGIAEqAggiDpSTOAIcIAQgBiAKlCAHIAmUIAwgDpSSIAggC5STkjgCGCAEIAYgC5QgCCAKlCAMIAmUIAcgDpSTkpI4AhQgBCAIIA6UIAwgC5QgByAKlJKSIAYgCZSTOAIQIAcgASoCFCIJlCAIIAEqAhAiDpSTIgogCpIhCiAGIA6UIAEqAhgiDSAHlJMiCyALkiELIAQgBSoCGCANIAwgCpQgByALlCAIIAggDZQgBiAJlJMiDSANkiINlJOSkpI4AiggBCAFKgIUIAkgDCALlCAGIA2UIAcgCpSTkpKSOAIkIAQgBSoCECAOIAwgDZQgCCAKlCAGIAuUk5KSkjgCIAwBCyAEQRBqIhdBGGogBUEYaigCADYCACAXQRBqIAVBEGopAgA3AwAgBCAF/QACAP0LAxALAkAgACgCBC0AAA0AIAAoAgwhFwJ9AkACfyAAKAIIIhotAAAiG0UEQCAXKAIARQ0CQRghGEEUIRZBHAwBCyAXKAIgQQFHDQFBOCEYQTQhFkE8CyAXaioCACEHIBYgF2oqAgAhBiAXIBhqKgIADAELQwAAAAAhB0MAAAAAIQZDAAAAAAshCCAXKAKAASIFIBcoAoQBIhZBBnRqIRkgACgCECIYKgIIIAeTIQcgGCoCBCAIkyEIIBgqAgAgBpMhBgJAIBtFBEAgFkUNASAWQQFxBEAgBSAFKgIAIAaTOAIAIAUgBSoCBCAIkzgCBCAFIAUqAgggB5M4AgggBUFAayEFCyAWQf///x9xQQFGDQEDQCAFIAUqAgAgBpM4AgAgBUEEaiIWIBYqAgAgCJM4AgAgBUEIaiIWIBYqAgAgB5M4AgAgBUFAayIWIBYqAgAgBpM4AgAgBUHEAGoiFiAWKgIAIAiTOAIAIAVByABqIhYgFioCACAHkzgCACAZIAVBgAFqIgVHDQALDAELIBZFDQAgFkEBcQRAIAUgBSoCDCAGkzgCDCAFIAUqAhAgCJM4AhAgBSAFKgIUIAeTOAIUIAVBQGshBQsgFkH///8fcUEBRg0AA0AgBUEMaiIWIBYqAgAgBpM4AgAgBUEQaiIWIBYqAgAgCJM4AgAgBUEUaiIWIBYqAgAgB5M4AgAgBUHMAGoiFiAWKgIAIAaTOAIAIAVB0ABqIhYgFioCACAIkzgCACAFQdQAaiIWIBYqAgAgB5M4AgAgGSAFQYABaiIFRw0ACwsgGi0AAEUEQCAYQQhqKAIAIQUgGCkCACEhIBf9DAAAAAAAAAAAAAAAAAAAgD/9CwIEIBdBATYCACAXICE3AhQgF0EcaiAFNgIAQQAhBSAXIAEEfyAEQdAAaiIFQRhqIAFBGGooAgA2AgAgBUEQaiABQRBqKQIANwMAIAQgAf0AAgD9CwNQQQEFQQALNgIgIBcgBCkDUDcCJCAXQSxqIARB2ABq/QADAP0LAgAgF0E8aiAEQegAaigCADYCACAAKAIUIARBEGogACgCHEG45cEAIAIgA0EAIARBACAEIAAoAiAqAgAgFyAAKAIYKAIoERIAGgwBC0EAIQUgFyABBH8gBEHQAGoiBUEYaiABQRhqKAIANgIAIAVBEGogAUEQaikCADcDACAEIAH9AAIA/QsDUEEBBUEACzYCACAXIAQpA1A3AgQgF0EMaiAEQdAAaiIBQQhq/QADAP0LAgAgF0EcaiAEQegAaigCADYCACAYQQhqKAIAIQUgGCkCACEhIBf9DAAAAAAAAAAAAAAAAAAAgD/9CwIkIBdBATYCICAXICE3AjQgF0E8aiAFNgIAIAAoAhQhBSAAKAIYIRYgBCAEKgIcIgw4AlwgBCAEKgIYIgeMOAJYIAQgBCoCFCIIjDgCVCAEIAQqAhAiBow4AlAgBCAMIAYgBCoCJCIKlCAIIAQqAiAiC5STIgkgCZIiCZQgCCAIIAQqAigiDpQgByAKlJMiDSANkiINlCAGIAcgC5QgBiAOlJMiDyAPkiIPlJOSIA6TOAJoIAQgDCAPlCAGIAmUIAcgDZSTkiAKkzgCZCAEIAwgDZQgByAPlCAIIAmUk5IgC5M4AmAgBSABIAIgAyAAKAIcQbjlwQBBACAEQQAgBCAAKAIgKgIAIBcgFigCKBESABoLIAAoAiQiGCoCACEHIBgqAgQhCCAYKgIIIQYgBEH4AGogACgCDCIFQZQBQYgBIAAoAggiHC0AABtqIgFBCGooAgA2AgAgBCABKQIANwNwIAUoAoQBIgEEQCAFKAKAASEdIAFBBnQhHiAAKAIsIRsgCEMK1yM8kiIQjCERIAZDCtcjPJIiEowhEyAHQwrXIzySIhSMIRUgACgCECEZIAAoAighF0EAIQFBACEWQQEhGgNAAkACfQJAAkACQCABIB1qIgBBGGoiHyoCAEMAAAAAXQRAIBcqAgghByAXKgIEIQggFyoCACEGIBgqAgghDCAYKgIEIQogGCoCACELIAQqAnghCSAEKgJ0IQ4gBCoCcCENIARBCGogAiADKAK0AREAACAEKAIIIiBFDQEgBEHQAGogICAEQRBqIARB8ABqIAQoAgwoAhQRAgAgHyoCACAZKgIEIAQqAlSSIAogDoyYIAiSkyAEKgJ0jJQgGSoCACAEKgJQkiALIA2MmCAGkpMgBCoCcJSTIBkqAgggBCoCWJIgDCAJjJggB5KTIAQqAniUk15FDQULIBwtAAANAiAFKAIAQQFxRQ0BIAUqAgQiByAAQQRqKgIAIgiUIAUqAggiDCAAKgIAIg6UkyIGIAaSIQogBSoCDCILIA6UIAcgAEEIaioCACIGlJMiCSAJkiEJIAUqAhwgBiAFKgIQIg0gCpQgByAJlCAMIAwgBpQgCyAIlJMiBiAGkiIPlJOSkpIhBiAFKgIYIAggDSAJlCALIA+UIAcgCpSTkpKSIQggBSoCFCAOIA0gD5QgDCAKlCALIAmUk5KSkgwDC0GA58EAQRtBxPDBABDRCwALIABBCGoqAgAhBiAAQQRqKgIAIQggACoCAAwBCyAFKAIgQQFxRQRAIABBFGoqAgAhBiAAQRBqKgIAIQggAEEMaioCAAwBCyAFKgIkIgcgAEEQaioCACIIlCAFKgIoIgwgAEEMaioCACIOlJMiBiAGkiEKIAUqAiwiCyAOlCAHIABBFGoqAgAiBpSTIgkgCZIhCSAFKgI8IAYgBSoCMCINIAqUIAcgCZQgDCAMIAaUIAsgCJSTIgYgBpIiD5STkpKSIQYgBSoCOCAIIA0gCZQgCyAPlCAHIAqUk5KSkiEIIAUqAjQgDiANIA+UIAwgCpQgCyAJlJOSkpILIQdBACEAAkAgByAXKgIAkyIHIBVdDQAgByAUXg0AIAggFyoCBJMiByARXQ0AIAcgEF4NACAGIBcqAgiTIgcgEl5FIAcgE11Bf3NxIQALIBsgGygCACAAIBZ0cjYCAAsgGkEfcSEWIBpBAWohGiAeIAFBQGsiAUcNAAsLIARBgAFqJAALtxYDFH8KfQV+IwBBkAJrIgYkACAAKAIAIQgCQCABBEAgBiABKgIIIhsgCCoCCCIflCABKgIEIhwgCCoCBCIglCABKgIAIh0gCCoCACIhlCABKgIMIh4gCCoCDCIalJKSkjgCHCAGIBwgIZQgHiAflCAdICCUk5IgGyAalJM4AhggBiAeICCUIB0gH5SSIBwgGpSTIBsgIZSTOAIUIAYgGyAglCAeICGUIB0gGpSTIBwgH5STkjgCECAcIAgqAhAgASoCEJMiH5QgHSAIKgIUIAEqAhSTIiCUkyIaIBqSISIgGyAglCAcIAgqAhggASoCGJMiIZSTIhogGpIhIyAGICEgHiAilCAcICOUIB0gHSAhlCAbIB+UkyIaIBqSIhqUk5KSOAIoIAYgICAeIBqUIB0gIpQgGyAjlJOSkjgCJCAGIB8gHiAjlCAbIBqUIBwgIpSTkpI4AiAMAQsgBkEQaiIKQRhqIAhBGGooAgA2AgAgCkEQaiAIQRBqKQIANwMAIAYgCP0AAgD9CwMQCyAAKAIMIhQgACgCCCIVIAAoAgQiGS0AACIPGygCACEWIAAoAhAiDCgCBCIJIAwpAxAgFSAUIA8bKAIAIhetIBatQiCGhIUiJEIgiCIlQrfTsIUMfiAkQv////8PgyIkQt2h8csMfoUgJULdofHLDH4gJEK307CFDH6FQiCJhSImpyIYcSELICZCGYgiKEL/AINCgYKEiJCgwIABfiElIAwoAgAhCEEAIQoCQAJAAkACQAJAAkADQAJAICUgCCALaikAACInhSIkQoGChIiQoMCAAX0gJEJ/hYNCgIGChIiQoMCAf4MiJEIAUgRAA0AgCCAkeqdBA3YgC2ogCXFBBHRrIhFBEGsoAgAgF0YEQCAWIBFBDGsoAgBGDQMLICRCAX0gJIMiJEIAUg0ACwsgJyAnQgGGg0KAgYKEiJCgwIB/g0IAUg0CIAsgCkEIaiIKaiAJcSELDAELCyARQQhrIg4oAgAiCCAAKAIUIgooAggiAU8NAiAKKAIEIAhBqAFsaiIHKQJ8ISQgB0KAgICAwAA3AnwgBkH4AWogB0GEAWoiASgCADYCAEEAIQsgAUEANgIAIAYgJDcD8AEgBygCYCIBQQZ0IQ0gAUH///8fSw0BIA1B8P///wdLDQEgBygCXCEIIAcoAmQhDCAHKQJQISUgBygCTCESIAcpAkQhJCAHKAJAIRQgBygCpAEhFSAHKAKgASEWAkAgDUUEQEEQIRBBACEKDAELQRAhCyABIQogDUEQEJEOIhBFDQILIA0EQCAQIAggDfwKAAALIAZB6ABqIhcgB0HwAGooAgA2AgAgBkHcAGogBkH4AWooAgA2AQAgBkHIAGoiEyAHQZABaigCADYCACAGQThqIg8gB0GcAWooAgA2AgAgBiAHKQJoNwNgIAYgBikD8AE3AVQgBiAHKQKIATcDQCAGIAcpApQBNwMwIAcoAnQhGCAHLwF4IQkgBkHwAGoiCEEQaiINIAdBEGr9AAIA/QsDACAIQTBqIgggB0Ewav0AAgD9CwMAIAYgB/0AAgD9CwNwIAYgB/0AAiD9CwOQASAOIAAoAhgiCygCCDYCACARQQRrIAAoAhwtAAA6AAAgCygCCCIRIAsoAgBGBEAgC0Gg8sEAEJcICyALKAIEIBFBqAFsaiIHIAb9AANw/QsCACAHIAw2AmQgByABNgJgIAcgEDYCXCAHIAo2AlggByAlNwJQIAcgEjYCTCAHICQ3AkQgByAUNgJAIAcgBikDYDcCaCAHQTBqIAj9AAMA/QsCACAHQSBqIAZBkAFq/QADAP0LAgAgB0EQaiAN/QADAP0LAgAgB0HwAGogFygCADYCACAHIAk7AXggByAYNgJ0IAcgFTYCpAEgByAWNgKgASAHIAYpAVI3AXogB0GAAWogBkHYAGopAQA3AQAgB0GQAWogEygCADYCACAHIAYpA0A3AogBIAdBnAFqIA8oAgA2AgAgByAGKQMwNwKUASALIBFBAWoiATYCCAwFCyAAKAIcIQkgACgCGCILKAIIIRIgD0UEQCAAKAIgKAIAIggEQCAGQbABaiIKQRhqIAhBGGooAgA2AgAgCkEQaiAIQRBqKQIANwMAIAYgCP0AAgD9CwOwAUEBIRMLIBUoAgAhCiAUKAIAIQ8gAUUNBAwDCyABBEAgBkGwAWoiCkEYaiABQRhqKAIANgIAIApBEGogAUEQaikCADcDACAGIAH9AAIA/QsDsAFBASETCyAUKAIAIQogFSgCACEPIAAoAiAoAgAiAQ0CDAMLIAsgDUGA/MEAENcNAAsgCCABQZDywQAQhQsACyAGQdABaiIIQRhqIAFBGGooAgA2AgAgCEEQaiABQRBqKQIANwMAIAYgAf0AAgD9CwPQAUEBIQ0LIAktAAAhCCALKAIAIBJGBEAgC0Gw8sEAEJcICyALKAIEIBJBqAFsaiIJIBM2AgAgCSAGKQOwATcCBCAJIA02AiAgCSAGKQPQATcCJCAJQoCAgICAAjcCWCAJQQA2AnwgCUEANgJMIAlBADYCQCAJQQxqIAZBsAFqIgFBCGr9AAMA/QsCACAJQRxqIAFBGGooAgA2AgAgCUEsaiAGQdABaiIBQQhq/QADAP0LAgAgCUE8aiABQRhqKAIANgIAIAlB+ABqQQA7AQAgCUHwAGpCADcCACAJ/QwAAAAAAAAAAAAAAAAAAAAA/QsCYCAJQZQBakIANwIAIAlBBDYCgAEgCUGcAWpBADYCACAJ/QwAAAAAAAAAAAAAAAAAAAAA/QsChAEgCSAPNgKgASAJIAo2AqQBIAsgEkEBajYCCCAGIAg6APwBIAYgEjYC+AEgBiAWNgL0ASAGIBc2AvABIAwoAgQiDSAYcSIOIAwoAgAiCWopAABCgIGChIiQoMCAf4MiJFAEQEEIIRADQCAOIBBqIQEgEEEIaiEQIAkgASANcSIOaikAAEKAgYKEiJCgwIB/gyIkUA0ACwsgDCgCCCEIIAkgJHqnQQN2IA5qIA1xIg5qLAAAIgFBAE4EQCAJIAkpAwBCgIGChIiQoMCAf4N6p0EDdiIOai0AACEBCwJAIAFBAXEiCiAIRXFFBEAgCSAOaiAop0H/AHEiAToAACAMIAggCms2AgggCSAOQQhrIA1xakEIaiABOgAAIAwgDCgCDEEBajYCDCAJIA5BBHRrIgFBEGsgBv0AAvAB/QsCAAwBCyAGQQhqIAwgDEEQahCKAiAMICYgDCgCACAMKAIEICYQhQogBkHwAWoQ8AohAQsgAUEIayEOIAsoAgghAQsCQAJAIA4oAgAiCiABSQRAIAsoAgQgCkGoAWxqIQggACgCKCEKIAAoAiQhASAZLQAADQEgBiAGKgIcIh44AvwBIAYgBioCGCIbjDgC+AEgBiAGKgIUIhyMOAL0ASAGIAYqAhAiHYw4AvABIAYgHiAdIAYqAiQiIpQgHCAGKgIgIiOUkyIaIBqSIh+UIBwgHCAGKgIoIiCUIBsgIpSTIhogGpIiIZQgHSAbICOUIB0gIJSTIhogGpIiGpSTkiAgkzgCiAIgBiAeIBqUIB0gH5QgGyAhlJOSICKTOAKEAiAGIB4gIZQgGyAalCAcIB+Uk5IgI5M4AoACIAEgBkHwAWogACgCLCAAKAIwIAIgAyAAKAI0IgEoAgAgASgCBCAEIAUgACgCOCoCACAIIAooAigREgAaDAILIAogAUHA8sEAEIULAAsgASAGQRBqIAIgAyAAKAIsIAAoAjAgBCAFIAAoAjQiASgCACABKAIEIAAoAjgqAgAgCCAKKAIoERIAGgsgBkGQAmokAAu6FQIKfwF+IwBBIGsiCCQAIAAQVSAAKAIUIQQCQAJAAkACQAJAIAAoAhBBAWsOAgIBAAsgBCAEKAKEAiIBQQFrNgKEAiABQQFHDQIgBCAEKALIASIHIAQoAkAiA3I2AkACQCADIAdxRQRAIAQtAIABIQEgBEEBOgCAASAIIAE6AAcgAUEBRg0BAkAgBCgCjAEiAUUNACAEKAKIASIHIQIgAUEMbCIJQQxrIgZBDG4iAUEHcUEHRwRAQQAgAUEBakEHcWshAQNAIAIoAgAiBSgCDCEKIAUgCkECIAobNgIMIAJBDGohAiABQQFqIgENAAsLIAZB1ABJDQAgByAJaiEFA0AgAigCACIBKAIMIQYgASAGQQIgBhs2AgwgAkEMaigCACIBKAIMIQYgASAGQQIgBhs2AgwgAkEYaigCACIBKAIMIQYgASAGQQIgBhs2AgwgAkEkaigCACIBKAIMIQYgASAGQQIgBhs2AgwgAkEwaigCACIBKAIMIQYgASAGQQIgBhs2AgwgAkE8aigCACIBKAIMIQYgASAGQQIgBhs2AgwgAkHIAGooAgAiASgCDCEGIAEgBkECIAYbNgIMIAJB1ABqKAIAIgEoAgwhBiABIAZBAiAGGzYCDCAFIAJB4ABqIgJHDQALCyAEKAKYASEBQQAhBiAEQQA2ApgBIAEEQCAEKAKUASECIAFBDGwhBwNAIAhBCGoiBUEIaiACQQhqKAIANgIAIAggAikCACILNwMIIAunIgkoAgwhASAJIAEgCCgCDCABGzYCDCAJIAkoAgAiAUEBazYCACABQQFGBEAgBRDXCwsgAkEMaiECIAdBDGsiBw0ACwsgBCgCjAFFBEAgBCgCmAFFIQYLIARBADoAgAEgBCAGOgCcASAEKALIASEHCyADIAdBf3NxIQYgBCgCACECA0ACQCAEKALMASAHQQFrIAJxIgVBHGxqKAIYIgEgAkEBakcEQCAGIAIiAUcNASAELQCIAiEBIARBAToAiAIgAUUNBiAEKALQASIBBEAgBCgCzAEgAUEcbEEEEOgOCyAEQYQBahCkCCAEQaQBahCkCCAEQcACQcAAEOgODAYLIAQoAsABIAVBAWpLDQAgBCgCxAEiASACQQAgAWtxaiEBCyAEKALIASEHIAEhAgwACwALDAMLIAQgBCgCPCIBQQFrNgI8IAFBAUcNASAEEOcBIAQtAEAhASAEQQE6AEAgAUUNASAEQQRqEKQIIARBHGoQpAggBEHEAEEEEOgODAELIAQgBCgCxAEiAUEBazYCxAEgAUEBRw0AIAQgBCgCQCIBQQFyNgJAIAFBAXFFBEAgBCgCQCIFQT5xQT5GBEADQCAEKAJAIgVBPnFBPkYNAAsLIAQoAgQhAiAEQQA2AgQCQCAEKAIAIgdBAXYiASAFQQF2IgZGIgUNACACDQADQCAEKAIEIQIgBEEANgIEIAJFDQALCyAFRQRAA0ACQCABQR9xIgFBH0YEQANAIAIoAgAiAUUNAAsgAkHoBkEEEOgOIAEhAgwBCyACIAFBHGxqQRxqLQAAQQFxIQEDQCABRQ0ACwsgBiAHQQJqIgdBAXYiAUcNAAsLIAIEQCACQegGQQQQ6A4LIAQgB0F+cTYCAAsgBC0AyAEhASAEQQE6AMgBIAFFDQAgBCgCBCEBIAQoAgBBfnEiAiAEKAJAQX5xIgZHBEADQCACQT5xQT5GBEAgASgCACEFIAFB6AZBBBDoDiAFIQELIAYgAkECaiICRw0ACwsgAQRAIAFB6AZBBBDoDgsgBEGEAWoQpAggBEGAAkHAABDoDgsgACgCHCEDAkACQAJAAkAgACgCGEEBaw4CAgEACyADIAMoAoQCIgBBAWs2AoQCIABBAUcNAiADIAMoAsgBIgcgAygCQCIKcjYCQAJAIAcgCnFFBEAgAy0AgAEhACADQQE6AIABIAggADoAByAAQQFGDQECQCADKAKMASIARQ0AIAMoAogBIgkhAiAAQQxsIgZBDGsiBUEMbiIAQQdxQQdHBEBBACAAQQFqQQdxayEBA0AgAigCACIAKAIMIQcgACAHQQIgBxs2AgwgAkEMaiECIAFBAWoiAQ0ACwsgBUHUAEkNACAGIAlqIQEDQCACKAIAIgAoAgwhBSAAIAVBAiAFGzYCDCACQQxqKAIAIgAoAgwhBSAAIAVBAiAFGzYCDCACQRhqKAIAIgAoAgwhBSAAIAVBAiAFGzYCDCACQSRqKAIAIgAoAgwhBSAAIAVBAiAFGzYCDCACQTBqKAIAIgAoAgwhBSAAIAVBAiAFGzYCDCACQTxqKAIAIgAoAgwhBSAAIAVBAiAFGzYCDCACQcgAaigCACIAKAIMIQUgACAFQQIgBRs2AgwgAkHUAGooAgAiACgCDCEFIAAgBUECIAUbNgIMIAEgAkHgAGoiAkcNAAsLIAMoApgBIQBBACEFIANBADYCmAEgAARAIAMoApQBIQIgAEEMbCEHA0AgCEEIaiIBQQhqIAJBCGooAgA2AgAgCCACKQIAIgs3AwggC6ciBigCDCEAIAYgACAIKAIMIAAbNgIMIAYgBigCACIAQQFrNgIAIABBAUYEQCABENcLCyACQQxqIQIgB0EMayIHDQALCyADKAKMAUUEQCADKAKYAUUhBQsgA0EAOgCAASADIAU6AJwBIAMoAsgBIQcLIAogB0F/c3EhBSADKAIAIQIDQAJAIAMoAswBIAdBAWsgAnEiAEE0bGooAjAiASACQQFqRwRAIAUgAiIBRw0BIAMtAIgCIQAgA0EBOgCIAiAARQ0GIAMoAtABIgAEQCADKALMASAAQTRsQQQQ6A4LIANBhAFqEKQIIANBpAFqEKQIIANBwAJBwAAQ6A4MBgsgAygCwAEgAEEBaksNACADKALEASIAIAJBACAAa3FqIQELIAMoAsgBIQcgASECDAALAAsMAwsgAyADKAI8IgBBAWs2AjwgAEEBRw0BIAMQ5wEgAy0AQCEAIANBAToAQCAARQ0BIANBBGoQpAggA0EcahCkCCADQcQAQQQQ6A4MAQsgAyADKALEASIAQQFrNgLEASAAQQFHDQAgAyADKAJAIgBBAXI2AkAgAEEBcUUEQCADKAJAIgBBPnFBPkYEQANAIAMoAkAiAEE+cUE+Rg0ACwsgAygCBCECIANBADYCBAJAIAMoAgAiB0EBdiIBIABBAXYiBUYiAA0AIAINAANAIAMoAgQhAiADQQA2AgQgAkUNAAsLIABFBEADQAJAIAFBH3EiAEEfRgRAA0AgAigCACIARQ0ACyACQdAMQQQQ6A4gACECDAELIAIgAEE0bGpBNGotAABBAXEhAANAIABFDQALCyAFIAdBAmoiB0EBdiIBRw0ACwsgAgRAIAJB0AxBBBDoDgsgAyAHQX5xNgIACyADLQDIASEAIANBAToAyAEgAEUNACADKAIEIQEgAygCAEF+cSICIAMoAkBBfnEiBUcEQANAIAJBPnFBPkYEQCABKAIAIQAgAUHQDEEEEOgOIAAhAQsgBSACQQJqIgJHDQALCyABBEAgAUHQDEEEEOgOCyADQYQBahCkCCADQYACQcAAEOgOCyAIQSBqJAAPCyAIQgA3AhQgCEKBgICAwAA3AgwgCEGsusEANgIIIAhBB2ogCEEIakG0usEAEPsMAAutFwQFfwl9An4BeyMAQfABayIGJAAgBCgCCCICBEAgAkGoAWwgBCgCBCICaiEJA0ACQCACIgMoAoQBIghFBEBDAAAAACELDAELIAMoAoABIQdDAAAAACELAkAgCEEBcUUEQCAHIQIgDCENDAELIAdBQGshAiAHKgI0Ig1DAAAAAJIhCyAMIA1dRQRAIAwhDQwBCyADKgJwIQ4gAyoCbCEPIAMqAmghECANIQwLIAhB////H3FBAUYNACAHIAhBBnRqIQcgDSEMA0AgAkE0aioCACINIAxeBEAgAyoCcCEOIAMqAmwhDyADKgJoIRAgDSEMCyALIA2SIQsgAkH0AGoqAgAiDSAMXgRAIAMqAnAhDiADKgJsIQ8gAyoCaCEQIA0hDAsgCyANkiELIAcgAkGAAWoiAkcNAAsLIBEgCyADKgJwlJIhESASIAsgAyoCbJSSIRIgEyALIAMqAmiUkiETIAkgA0GoAWoiAkcNAAsLIAT9AAIMIRZDAAAAAEMAAIA/IAGVIAGLQwjlPB5fGyILIAyUIQEgCyARlCEMIAsgEpQhDSALIBOUIQsgACgCDCEDAkACQAJAAkACQAJAAkACQAJAAkAgACgCCEEBaw4CBwEACyAGQYCU69wDNgKAASAGQcABakEANgIAIAb9DAAAAAAAAAAAAAAAAAAAAAD9CwOwASADKAJAIgQgAygCyAEiB3EEQEEBIQAMAgsDQAJAAkAgAygCzAEgB0EBayAEcSIHQTRsaiIAKAIwIgIgBEcEQCADKALEASIAIAJqIARBAWpHDQIgACADKAIAaiAERg0BDAILIAMoAkAiCCAERiECIAMCfyADKALAASAHQQFqTQRAIAMoAsQBIgcgBEEAIAdrcWoMAQsgBEEBagsgCCACGzYCQCACRQ0BIAYgADYCsAEgBiAEQQFqIgI2ArQBIAAgAjYCMCAAIAE4AiwgACAOOAIoIAAgDzgCJCAAIBA4AiAgACAFOAIcIAAgDDgCGCAAIA04AhQgACALOAIQIAAgFv0LAgAgA0GgAWoQvQNBAiEADAQLAkAgBigCgAEiAEGAlOvcA0YNACAGKQN4IRQQkQ0CQCAUIAYpAzAiFVEEQCAGKAI4IABPDQEMAgsgFCAVVg0BC0EAIQAMBAtB7M7EACgCAEUEQBDjCQtB8M7EACgCACEAQfDOxABBADYCAAJAIABFBEAgBhCVByIANgIYIAYgAzYCNCAGIAZB+ABqNgI4IAYgBkGwAWo2AjAgBkEwaiAGQRhqIgIQrwIgACAAKAIAIgBBAWs2AgAgAEEBRw0BIAIQ1wsMAQsgAEIANwIMIAYgADYCGCAGIAM2AjQgBiAGQfgAajYCOCAGIAZBsAFqNgIwIAZBMGoiBCAGQRhqEK8CQfDOxAAoAgAhAkHwzsQAIAA2AgAgBiACNgIwIAJFDQAgAiACKAIAIgBBAWs2AgAgAEEBRw0AIAQQ1wsLQQEhACADKAJAIgQgAygCyAEiB3FFDQEMAwsgAygCQCIEIAMoAsgBIgdxRQ0AC0EBIQAMAQsgBkGAlOvcAzYCECAGQShqQQA2AgAgBv0MAAAAAAAAAAAAAAAAAAAAAP0LAxggBiADLQAAIgA6ADAgA0EBOgAAIABBAUYNAQJAAkAgAygCJCIARQ0AIABBDGwhCSADKAIgIQpBACEEQQEhBwNAAkAgBCAKaiICKAIAIgAoAhRBgI/EAEYNACAAIAAoAgwiCCACQQRqKAIAIAgbNgIMIAgNACAHQQFrIQggAkEIaigCACICBEAgACACNgIQCyADKAIkIgAgCE0NBiADKAIgIARqIgQoAgAhAiAEQQRqKQIAIRQgACAHa0EMbCIHBEAgBCAEQQxqIAf8CgAACyADIABBAWs2AiQgAkUNAiAGIAI2AjAgBiAUNwI0IAYgFEIgiKciADYCKCADQQA6AAAgFEKAgICAEFQNByAAQQE6ADQgACABOAIwIAAgDjgCLCAAIA84AiggACAQOAIkIAAgBTgCICAAIAw4AhwgACANOAIYIAAgCzgCFCAAIBb9CwIEIABBATYCACACIAIoAgAiAEEBazYCACAGQQI2ArABIABBAUcNAyAGQTBqENcLDAMLIAdBAWohByAJIARBDGoiBEcNAAsLIAMtADRFBEAgBiABOAJsIAYgDjgCaCAGIA84AmQgBiAQOAJgIAYgBTgCXCAGIAw4AlggBiANOAJUIAYgCzgCUCAGIBb9CwJAIAYgAzYCPCAGIAM2AjQgBiAGQQhqNgI4IAYgBkEYajYCMEHszsQAKAIARQRAEOMJC0HwzsQAKAIAIQBB8M7EAEEANgIAAkAgAEUEQCAGEJUHIgA2AnQgBkEANgIwIAYgATgC7AEgBiAOOALoASAGIA84AuQBIAYgEDgC4AEgBiAFOALcASAGIAw4AtgBIAYgDTgC1AEgBiALOALQASAGIBb9CwLAASAGIAM2ArwBIAYgAzYCtAEgBiAGQQhqNgK4ASAGIAZBGGo2ArABIAZB+ABqIAZBsAFqIAZB9ABqIgIQzgEgACAAKAIAIgBBAWs2AgAgAEEBRw0BIAIQ1wsMAQsgAEIANwIMIAYgADYCdCAGQbwBaiAGQTRqIgJBCGr9AAIA/QsCACAGQcwBaiACQRhq/QACAP0LAgAgBkHcAWogAkEoav0AAgD9CwIAIAZB7AFqIAJBOGooAgA2AgAgBkEANgIwIAYgAikCADcCtAEgBiAGQRhqNgKwASAGQfgAaiAGQbABaiIDIAZB9ABqEM4BQfDOxAAoAgAhAkHwzsQAIAA2AgAgBiACNgKwASACRQ0AIAIgAigCACIAQQFrNgIAIABBAUcNACADENcLCwJAIAYoAngiAEEDRgRAIAZBsAFqIQgjAEHQAGsiACQAIAAQlQciBDYCDCAGQTBqIgIoAgAhByACQQA2AgAgBwRAIABBEGoiA0EMaiACQQxq/QACAP0LAgAgA0EcaiACQRxq/QACAP0LAgAgA0EsaiACQSxq/QACAP0LAgAgA0E8aiACQTxqKAIANgIAIAAgBzYCECAAIAIpAgQ3AhQgCCADIABBDGoiAhDOASAEIAQoAgAiA0EBazYCACADQQFGBEAgAhDXCwsgAEHQAGokAAwCC0Hk3sEAEPIOAAsgBiAANgKwAQsgBigCMEUNASAGKAI0QQA6AAAMAQsgA0EAOgAAIAZBATYCsAELIAYoArABIQALIABBAkYNBSAAQQFxRQ0DDAULIAZCADcCvAEgBkKBgICAwAA3ArQBIAZBlN/BADYCsAEgBkEwaiAGQbABakGc38EAEPsMAAsgCCAAQbTewQAQhAsAC0G03cEAEPIOAAtB7NzBAEEoQZTdwQAQ1gwACyADKAJAIgRBAXENACADKAJEIQBBACECAkACQAJAA0ACQCAEQQF2QR9xIgdBH0YEQANAIAMoAkAiBEEBcQ0CIARBAXZBH3EiB0EfRg0ACyADKAJEIQALAkAgB0EeRw0AIAINAEHQDBCtDCICDQAMBwsCQAJAIAANAEHQDBCtDCIABEAgAyADKAJEIgggACAIGzYCRCAIRQRAIAMgADYCBAwCCyACBEAgAkHQDEEEEOgOCyAAIQIMAgsMCAsgAygCQCIJIARGIQggAyAEQQJqIAkgCBs2AkAgCEUNACAHQR5HDQMgAkUNBSADIAI2AkQgAyADKAJAQQJqNgJAIAAgAjYCAEEeIQcMBAsgAygCRCEAIAMoAkAiBEEBcUUNAQsLQQAhAEEAIQcLIAIEQCACQdAMQQQQ6A4LIABFDQILIAAgB0E0bGoiACABOAIwIAAgDjgCLCAAIA84AiggACAQOAIkIAAgBTgCICAAIAw4AhwgACANOAIYIAAgCzgCFCAAIBb9CwIEIAAgACgCNEEBcjYCNCADQYABahC9AwwBC0Gk3cEAEPIOAAsgBkHwAWokAA8LQQRB0AxB+MrEACgCACIAQcwIIAAbEQAAAAv6FQISfwt9IwBBkARrIgkkACAJQSRqIAYgBCAHKAKUAREBACAJQdAAaiAFQQhqKAIANgIAIAlBADYCRCAJQgA3AjwgCSAFKQIANwJIIAgqAgQhGyAJKgIkIR0gCSoCMCEkIAkqAighHiAJKgI0IR8gCSoCLCEgIAkqAjghJSABIAIoAhARBAAiCigCCCEUIAooAgQhDyAIKgIAIRwgCUEANgJUIAlBADYC2AECQAJAIBRFDQAgICAlkkMAAAC/lCEhIB4gH5JDAAAAv5QhIiAdICSSQwAAAL+UISMgGyAlICCTQwAAAD+UkiEgIB8gHpNDAAAAP5QgG5IhHiAkIB2TQwAAAD+UIBuSIR8CQCAPKAI8Qf////8DcQRAIAlB2ABqIRIgCUHYAWohGSAJQYUEaiETIAlB1ANqIRFBACEKIAJBDGohGkEEIRBBfyEVAkADQCAJICAgISAPIApBBnRqIgIqAhiSkjgC5AMgCSAeICIgAioCFJKSOALgAyAJIB8gIyACKgIQkpI4AtwDIAkgISACKgIIkiAgkzgC2AMgCSAiIAIqAgSSIB6TOALUAyAJICMgAioCAJIgH5M4AtADIAlBGGogCUHQA2oiCyAJQTxqIgwgHEEBEMMEIAkqAhwhGyAJKAIYIQ0gCSAgICEgAioCOJKSOALkAyAJIB4gIiACKgI0kpI4AuADIAkgHyAjIAIqAjCSkjgC3AMgCSAhIAIqAiiSICCTOALYAyAJICIgAioCJJIgHpM4AtQDIAkgIyACKgIgkiAfkzgC0AMgCUEQaiALIAwgHEEBEMMEIAJBIGohCwJAIAkqAhRD//9/fyAJKAIQQQFxGyIdIBtD//9/fyANQQFxGyIkXUUEQCAdIRsgJCEdIAshDCACIQsMAQsgJCEbIAIhDAsCQAJAAkACQAJAIBwgHV5FBEAgGyAcXUUNBCAbQ///f39bDQQgDCgCHEH/////A3FBAUcNAQwCCwJAIB1D//9/f1sEQAwBCyALKAIMIQIgCygCHEH/////A3FBAUcEQCAbIBxdRQRAIAIhCgwHCyAbQ///f39bBEAgAiEKDAcLQQEhCyAMKAIcQf////8DcUEBRgRAIAIhCgwFCwJ/IAkoAtgBIg1BIUkEQCANIQogEiEOQSAhDSAZDAELIAkoAlghCiAJKAJcIQ4gEgshCyAMKAIMIQwgCiANRgR/IAlB1ABqEKMEIAkoAlwhDiASIQsgCSgCWAUgCgtBAnQgDmogDDYCACALIAsoAgBBAWo2AgAgAiEKDAYLIAkgCDYCzAMgCSAHNgLIAyAJIAY2AsQDIAkgBTYCwAMgCSAENgK8AyAJIAM2ArgDIBooAgAhDSAJQQU6AIQEIAkgCUG4A2o2AowEIAkgCUHQA2o2AogEIAEgAiAJQYgEakH0msMAIA0RAgAgCUGIA2oiAkEQaiINIBFBEGr9AAIA/QsDACACQSBqIg4gEUEgav0AAgD9CwMAIAlBhgNqIhYgE0ECai0AADoAACAJIBH9AAIA/QsDiAMgCSATLwAAOwGEAwJAIAktAIQEIgJBBUYNACAJKgLQAyEdIAlBmAJqIhdBIGoiGCAO/QADAP0LAwAgF0EQaiIOIA39AAMA/QsDACAJQZYCaiINIBYtAAA6AAAgCSAJ/QADiAP9CwOYAiAJIAkvAYQDOwGUAiACQQRGDQAgHCAdXkUNACAJQeABaiIQQSBqIBj9AAMA/QsDACAQQRBqIA79AAMA/QsDACAJQd4BaiANLQAAOgAAIAkgCf0AA5gC/QsD4AEgCSAJLwGUAjsB3AEgCygCDCEVIB0iJSEcIAIhEAsLIBsgHF1FDQMgG0P//39/Ww0DIAwoAhxB/////wNxQQFGDQELIAwoAgwhCgwDC0EAIQsLIAwoAgwhAiAJIAg2AswDIAkgBzYCyAMgCSAGNgLEAyAJIAU2AsADIAkgBDYCvAMgCSADNgK4AyAaKAIAIQ0gCUEFOgCEBCAJIAlBuANqNgKMBCAJIAlB0ANqNgKIBCABIAIgCUGIBGpB9JrDACANEQIAIAlBiANqIgJBEGoiDSARQRBq/QACAP0LAwAgAkEgaiIOIBFBIGr9AAIA/QsDACAJQYYDaiIWIBNBAmotAAA6AAAgCSAR/QACAP0LA4gDIAkgEy8AADsBhAMCQAJAIAktAIQEIgJBBUYNACAJKgLQAyEbIAlB0AJqIhdBIGoiGCAO/QADAP0LAwAgF0EQaiIOIA39AAMA/QsDACAJQc4CaiINIBYtAAA6AAAgCSAJ/QADiAP9CwPQAiAJIAkvAYQDOwHMAiACQQRGDQAgGyAcXQ0BCyALRQ0BDAILIAlB4AFqIhBBIGogGP0AAwD9CwMAIBBBEGogDv0AAwD9CwMAIAlB3gFqIA0tAAA6AAAgCSAJ/QAD0AL9CwPgASAJIAkvAcwCOwHcASAMKAIMIRUgGyIlIRwgAiEQIAsNAQsgCSgC2AEiDCECIBIhCiAZIQsgDEEhTwRAIAkoAlwhCiASIQsgCSgCWCECCyACRQ0CIAsgAkEBayICNgIAIAogAkECdGooAgAhCgsgCiAUSQ0ACyAKIBRBsPLCABCFCwALIBBB/wFxQQRHBEAgACAJ/QAD4AH9CwIIIAAgCS8B3AE7ADkgACAQOgA4IAAgJTgCBCAAIBU2AgAgAEEoaiAJQYACav0AAwD9CwIAIABBGGogCUHwAWr9AAMA/QsCACAAQTtqIAlB3gFqLQAAOgAADAILIABBBDoAOAwBCyAJICAgISAPKgIYkpI4AuQDIAkgHiAiIA8qAhSSkjgC4AMgCSAfICMgDyoCEJKSOALcAyAJICEgDyoCCJIgIJM4AtgDIAkgIiAPKgIEkiAekzgC1AMgCSAjIA8qAgCSIB+TOALQAyAJQQhqIAlB0ANqIgogCUE8aiAcQQEQwwQgCSoCDEP//39/IAkoAghBAXEbIBxdRQ0BIA8oAgwhCyAJIAg2AqwCIAkgBzYCqAIgCSAGNgKkAiAJIAU2AqACIAkgBDYCnAIgCSADNgKYAiACQQxqKAIAIQIgCUEFOgCEBCAJIAlBmAJqNgLkASAJIAo2AuABIAEgCyAJQeABakH0msMAIAIRAgAgCUGIA2oiAUEQaiICIAlB5ANq/QACAP0LAwAgAUEgaiIDIAlB9ANq/QACAP0LAwAgCUG6A2oiBCAJQYcEai0AADoAACAJIAn9AALUA/0LA4gDIAkgCS8AhQQ7AbgDAkACQCAJLQCEBCIBQQVHBEAgCSoC0AMhGyAJQdACaiIFQSBqIAP9AAMA/QsDACAFQRBqIAL9AAMA/QsDACAJQYoEaiAELQAAOgAAIAkgCf0AA4gD/QsD0AIgCSAJLwG4AzsBiARBBCEKIAFBBEcNAQsgAEEEOgA4DAELIAlB0ANqIgJBIGoiAyAJQdACaiIEQSBq/QADAP0LAwAgAkEQaiICIARBEGr9AAMA/QsDACAJIAn9AAPQAv0LA9ADIAlBigNqIgQgCUGKBGotAAA6AAAgCSAJLwGIBDsBiAMgACAbIBxdBH8gACAJ/QAD0AP9CwIIIAAgCS8BiAM7ADkgACAbOAIEIAAgDygCDDYCACAAQRhqIAL9AAMA/QsCACAAQShqIAP9AAMA/QsCACAAQTtqIAQtAAA6AAAgAQVBBAs6ADgLIAkoAtgBIQwLIAxBIUkNASAJKAJcIAxBAnRBBBDoDgwBCyAAQQQ6ADgLIAlBkARqJAALnxcDJX8LfQJ+IwBBsANrIggkACAGEL0HAn8CQAJAAkACQCAGKAIAIgkEQCAIQRBqIAkgBigCBCgCHBEAACAIQeACaiAIKAIQIgogCCgCFCgCDBEAACAKRQ0CIAgpA+ACQtfIzLvykrfwQ4UgCCkD6AJCsdXekfDM9+zxAIWEQgBSDQIgCEG4AmogAiAAIAMoApQBEQEAIARDAAAAAGBFDQEgBCAIKgLMApIhLSAEIAgqAsgCkiEuIAQgCCoCxAKSITEgCCoCwAIgBJMhMyAIKgK8AiAEkyEvAkAgCCoCuAIgBJMiMCAKKgIYYEUNACAKKgIcIC9fRQ0AIAoqAiAgM19FDQAgCioCJCAxYEUNACAKKgIoIC5gRQ0AIAoqAiwgLWBFDQBBBCEWQQEMBgsgCCAtIC0gM5NDAAAgQZUiLUPNzMw9IC1DzczMPV0bIjKSOAIwIAggLiAuIC+TQwAAIEGVIi1DzczMPSAtQ83MzD1dGyIukjgCLCAIIDEgMSAwk0MAACBBlSItQ83MzD0gLUPNzMw9XRsiLZI4AiggCCAzIDKTOAIkIAggLyAukzgCICAIIDAgLZM4AhwgCigADCEGIAogCigAADYADCAKKQAQITggCiAKKQAENwAQIAogODcABCAKIAY2AAAgBSgCBCEWIAUoAgAhGyAFQoCAgIDAADcCACAFKAIIIQ0gBUEANgIIIApBADYCCCAIQTRqIgYgASAIQRxqEPoGIAhBCGogBhDYAyAIKAIIQQFxDQMMBAtBlOnBABDyDgALIAhBADYC8AIgCEEBNgLkAiAIQaTZwQA2AuACIAhCBDcC6AIgCEHgAmpBrNnBABC5DQALQaTpwQAQ8g4ACyAIKAIMIRMgCigCCCIGQQJ0IQ8DQCAKKAIAIAZGBEAgCiAGQQFBBEEEENcGCyAKIAZBAWoiBjYCCCAKKAIEIA9qIBM2AgAgD0EEaiEPIAggCEE0ahDYAyAIKAIEIRMgCCgCAEEBcQ0ACwsgCkEYaiEJIAgoArgBIgZBIU8EQCAIKAI8IAZBAnRBBBDoDgsgCSAI/QACHP0LAgAgCUEQaiAIQSxqKQIANwIAQQALIScgCigCFCEJIApBADYCFCAAKgIMIjcgACoCACI0IAAqAhQiL5QgACoCBCI1IAAqAhAiMZSTIi0gLZIiMJQgNSA1IAAqAhgiMpQgACoCCCI2IC+UkyItIC2SIi6UIDQgNiAxlCA0IDKUkyItIC2SIi2Uk5IgMpMhMyA3IC2UIDQgMJQgNiAulJOSIC+TIS8gNyAulCA2IC2UIDUgMJSTkiAxkyEwIBYgDUGoAWxqIRQgCigCBCIGIAooAghBAnRqISggCigCECIOIAlBAnRqIRkgCEHkAmohKSABKAI8ISogNowhMiA1jCEuIDSMIS0gCEHIAWoiCUEIaiErIAlBGGohGiAJQRBqIRxBAiERIBYhCUEAIQ8DQEGoASAPQagBbGshEwJAAkACQANAIAYgKEYNASATQagBayETIA9BAWohDyAGKAIAIQ0gBkEEaiEGIA0gKk8NAAsgBkEEayEXICdFDQEgBSgCCCENDAILIBQgCWtBqAFuIQYgCSAURwRAA0AgCUH8AGooAgAiAARAIAlBgAFqKAIAIABBBnRBBBDoDgsgCUHYAGooAgAiAARAIAlB3ABqKAIAIABBBnRBEBDoDgsgCUGoAWohCSAGQQFrIgYNAAsLIBsEQCAWIBtBqAFsQQQQ6A4LIAhBsANqJAAPCwJAAkACQAJAAkACQAJAIBFBAkYEQCAOIBlGBEBBACERDAcLIA4oAgAhEkEBIREgDkEEaiEODAELIBFBAXFFDQELIA0gEk0NACAJIBRHBEAgCUGoAWohCgJAIAkoAgBBAkYNACAJKAJcIRIgCSgCWCELIAkoAnwiDARAIAkoAoABIAxBBnRBBBDoDgsgC0UNACASIAtBBnRBEBDoDgsgCiEJCyAOIBlGDQMDQCAXKAIAIg0gDigCACISTQ0CIAkgFEcEQCAJQagBaiEKAkAgCSgCAEECRg0AIAkoAlwhEiAJKAJYIQsgCSgCfCIMBEAgCSgCgAEgDEEGdEEEEOgOCyALRQ0AIBIgC0EGdEEQEOgOCyAKIQkLIBkgDkEEaiIORw0ACwwDCyARQQFxDQEMAwsgDkEEaiEOQQEhEQsgDSASRw0BAkAgCSAURg0AIAkoAgAhDSAIQeACaiIKQRhqIgwgCUEcaigCADYCACAKQRBqIhAgCUEUaikCADcDACAIIAn9AAIE/QsD4AIgCSgCICEdIAkoAkAhHiAJKQJEITggCSgCTCEfIAkpAlAhOSAJKAJYISAgCSgCXCEhIAkoAmAhIiAJKAJ0ISMgCS8BeCEkIAkvAXohLCAJKAJ8ISUgCSgCgAEhJiAJKAKgASEVIAkoAqQBIRggCEG4AmoiCkEYaiILIAwoAgA2AgAgCkEQaiIMIBApAwA3AwAgCCAI/QAD4AL9CwO4AiANQQJGDQAgCEGYAmoiCkEYaiALKAIANgIAIApBEGogDCkDADcDACAIQfgBaiIKQQhqIAlBLGr9AAIA/QsDACAKQRhqIAlBPGooAgA2AgAgHCAJQZQBaikCADcDACAaIAlBnAFqKAIANgIAIAggCP0AA7gC/QsDmAIgCCAJKQIkNwP4ASAIIAn9AAJk/QsD6AEgCCAJ/QAChAH9CwPIASAJQagBaiEJQQIhEQwDC0G06cEAEPIOAAsgFygCACENQQAhEQsgK/0MAAAAAAAAAAAAAAAAAAAAAP0LAwBBACEeIBpBADYCACAI/QwAAAAAAAAAAAAAAAAAAAAA/QsD6AEgCEIANwPIASANQQAgBxshGEEAIA0gBxshFUEQISFBBCEmQQAhH0EAISVBACEdQQAhDUEAISBBACEiQQAhI0EAISQLIAUoAggiDCAFKAIARgRAIAVBxOnBABCXCAsgBSgCBCAMQagBbGoiCyANNgIAIAsgCCkDmAI3AgQgCyAdNgIgIAsgCCkD+AE3AiQgCyAiNgJgIAsgITYCXCALICA2AlggCyA5NwJQIAsgHzYCTCALIDg3AkQgCyAeNgJAIAtBDGogCEGYAmoiCkEIav0AAwD9CwIAIAtBHGogCkEYaigCADYCACALQSxqIAhB+AFqIgpBCGr9AAMA/QsCACALQTxqIApBGGooAgA2AgAgCyAjNgJ0IAsgJTYCfCALICY2AoABIAsgLDsBeiALICQ7AXggCyAVNgKgASALIBg2AqQBIAUgDEEBaiINNgIIIAsgCP0AA+gB/QsCZCALQZQBaiAcKQMANwIAIAtBnAFqIBooAgA2AgAgCyAI/QADyAH9CwKEAQsgDSAPQQFrSwRAIAUoAgQhGCAIQbgCaiEQAkACQAJAIBcoAgAiDCABKAI8IgpJBEAgASgCOCAMQQxsaiIKKAIAIgwgASgCMCILTw0BIAooAgQiFSALTw0CIAooAggiCiALSQ0DIAogC0HU08MAEIULAAsgDCAKQaTTwwAQhQsACyAMIAtBtNPDABCFCwALIBUgC0HE08MAEIULAAsgECAKQQxsIAEoAiwiCmoiCykCADcCGCAQIAogDEEMbGoiDCkCADcCACAQIAogFUEMbGoiCikCADcCDCAQQSBqIAtBCGooAgA2AgAgEEEIaiAMQQhqKAIANgIAIBBBFGogCkEIaigCADYCACAIQeACaiABIBcoAgAQ/gIgKUEAIAgoAuACGyEKIBggE2shDCAHRQRAIAwgACAQQaTrwQAgAiADIApB5OnBAEEAIAwgBCAMECEaDAILIAggMzgCrAMgCCAvOAKoAyAIIDA4AqQDIAggNzgCoAMgCCAyOAKcAyAIIC44ApgDIAggLTgClAMgDCAIQZQDaiACIAMgCEG4AmpBpOvBAEEAIAwgCkHk6cEAIAQgDBAhGgwBCwsgD0EBayANQdTpwQAQhQsAC5Q5BAd/JH0CfgN7IwBBgAJrIggkACAIQfgAaiADIAQoAmAiCxEAACAIQaABaiIMIAgoAngiCiAIKAJ8KAIMEQAAIAgpA6ABITMgCCkDqAEhNCAIQfAAaiAFIAYoAmAiDhEAACAMIAgoAnAiCSAIKAJ0KAIMEQAAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgCUEAIAgpA6ABQu2MnqmHh8L4NoUgCCkDqAFCpZyhjOOU7KVehYRQGyINQQBHQQAgCkEAIDNC7YyeqYeHwvg2hSA0QqWcoYzjlOylXoWEUBsiCRtFBEAgCUEAIAUgBigCsAERBAAbDQEgDUEAIAMgBCgCsAERBAAbDQIgCEHoAGogAyALEQAAIAwgCCgCaCIKIAgoAmwoAgwRAAAgCCkDoAEhMyAIKQOoASE0IAhB4ABqIAUgDhEAACAMIAgoAmAiCSAIKAJkKAIMEQAAIApBACAzQpHm3a7YmZjS8gCFIDRCm9vS2qyiuuuKf4WEUBsiCgRAIAlBACAIKQOgAUKR5t2u2JmY0vIAhSAIKQOoAUKb29LarKK664p/hYRQGyIJDQQLIAhB2ABqIAMgCxEAACAIQaABaiIJIAgoAlgiCiAIKAJcKAIMEQAAIAgpA6ABITMgCCkDqAEhNCAIQdAAaiAFIA4RAAAgCSAIKAJQIgkgCCgCVCgCDBEAACAKQQAgM0KR5t2u2JmY0vIAhSA0Qpvb0tqsorrrin+FhFAbIgoEQCAJQQAgCCkDoAFCkebdrtiZmNLyAIUgCCkDqAFCm9vS2qyiuuuKf4WEUBsiCQ0FCyAIQcgAaiADIAsRAAAgCEGgAWoiCSAIKAJIIgogCCgCTCgCDBEAACAIKQOgASEzIAgpA6gBITQgCEFAayAFIA4RAAAgCSAIKAJAIgkgCCgCRCgCDBEAACAKQQAgM0KP2JnPiPXMngeFIDRCjfi2orfa/4XIAIWEUBsiCgRAIAlBACAIKQOgAULg/JToz82FtSOFIAgpA6gBQpztoqu0nv3MxgCFhFAbIgkNBgsgCEE4aiADIAsRAAAgCEGgAWogCCgCOCIJIAgoAjwoAgwRAAAgCCkDoAEhMyAIKQOoASE0IAhBMGogBSAGKAK0ASILEQAAIAlBACAzQsWyireAgJGqqn+FIDRCiYfbx6Gq9r0mhYRQGyIKBEAgCCgCMCIJDQcLIAhBKGogAyAEKAK0ASIMEQAAIAgoAiwhCiAIKAIoIQ0gCEEgaiAFIA4RAAAgCEGgAWogCCgCICIJIAgoAiQoAgwRAAAgDQRAIAlBACAIKQOgAULFsoq3gICRqqp/hSAIKQOoAUKJh9vHoar2vSaFhFAbIgkNCAsgCEEYaiADIAwRAAAgCCgCHCEJIAgoAhghDCAIQRBqIAUgCxEAACAMBEAgCCgCECIKDQkLIAhBCGogAyAEKAK4AREAACAIKAIIIglFDQkgCEGgAWogCSAIKAIMIAEgAiAFIAYgBxCIASAAIQEgCCgCpAEiAEEDRwRAIAhB8AFqIAhBuAFqKQIANwMAIAggCP0AAqgB/QsD4AEFQQIhAAsgASAANgIAIAEgCCkD4AE3AgQgAUEMaiAIQegBav0AAwD9CwIADA0LIAdDAAAAAGBFDQkCfyACKgIQIhYgFpQgAioCFCIVIBWUkiACKgIYIhogGpSSkSIQIAeTIRFBAiARIAkqAgAiISANKgIAIg+SIgdfRQ0AGkEAIAcgEGANABogFiAQlSIXIAIqAgQiEpQgFSAQlSITIAIqAgAiFpSTIgcgB5IhGCATIAIqAggiGZQgGiAQlSIUIBKUkyIHIAeSIRAgFCACKgIMIhUgGJQgEiAQlCAWIBQgFpQgFyAZlJMiByAHkiIRlJOSkiAPjCIPlCEHIBMgFSARlCAWIBiUIBkgEJSTkpIgD5QhFiAXIBUgEJQgGSARlCASIBiUk5KSIA+UIRUgISAUlCEaICEgE5QhECAhIBeUISFBAQshASAAIAc4AhggACAWOAIUIAAgFTgCECAAIBo4AgwgACAQOAIIIAAgITgCBCAAIAE2AgAMDAsgCSoCACERIAggAioCDCIWOALsASAIIAIqAggiF4w4AugBIAggAioCBCISjDgC5AEgCCACKgIAIhOMOALgASAIIBYgEyACKgIUIhiUIBIgAioCECIZlJMiDyAPkiIUlCASIBIgAioCGCIQlCAXIBiUkyIPIA+SIhWUIBMgFyAZlCATIBCUkyIPIA+SIg+Uk5IgEJM4AvgBIAggFiAPlCATIBSUIBcgFZSTkiAYkzgC9AEgCCAWIBWUIBcgD5QgEiAUlJOSIBmTOALwASAIQaABaiAIQeABaiAFIAYgESAHEPkCIAgoAqABRQRAQQIhAgwLCyAIKgLUAUMAAAAAXwRAQQAhAgwLCyAIKAK4ASEGIAgoArQBIQUgCCgCsAEhCSAIKAKsASENIAgoAqgBIQQgCCgCpAEhA0EBIQIMCgsgCEGgAWogAiADIAQgDSoCACAHEPkCIAgoAqABQQFHBEBBAiECDAkLIAgqAtQBQwAAAABfBEBBACECDAkLIAhB6AFqIAhBrAFqKAIANgIAIAhBmAFqIAhBuAFqKAIANgIAIAggCCkCpAE3A+ABIAggCCkCsAE3A5ABQQEhAgwICyAIQaABaiIBIAIgCiAJIAcQkAIgAEEYaiABQRhqKAIANgIAIABBEGogAUEQaikCADcCACAAIAj9AAKgAf0LAgAMCQsgCEGgAWoiASACIAogCSAHEJACIABBGGogAUEYaigCADYCACAAQRBqIAFBEGopAgA3AgAgACAI/QACoAH9CwIADAgLIAhBoAFqIgMgAhDYByAIQeABaiIGIQEgByEVQQAhBSMAQbACayICJAAgAiADKgIMIiI4AhAgAiADKgIIIhuMOAIMIAIgAyoCBCIcjDgCCCACIAMqAgAiHYw4AgQgAiAiIB0gAyoCFCIrlCAcIAMqAhAiLJSTIgcgB5IiEZQgHCAcIAMqAhgiLZQgGyArlJMiByAHkiIPlCAdIBsgLJQgHSAtlJMiByAHkiIHlJOSIC2TIhY4AhwgAiAiIAeUIB0gEZQgGyAPlJOSICuTIhg4AhggAiAiIA+UIBsgB5QgHCARlJOSICyTIhk4AhQgAkEgaiAJIAogAxDKAQJAAkAgAioCICIvIBVeRQRAIAIgCioCDCIjIAoqAgAiJJMiFCAKKgIcIh4gCioCBCImkyIQlCAKKgIQIhIgJpMiByAKKgIYIh8gJJMiEZSTIhMgE5QgByAKKgIgIiAgCioCCCIlkyIPlCAKKgIUIhogJZMiByAQlJMiECAQlCAHIBGUIBQgD5STIg8gD5SSkiIHQwAAgCheBH8gAiATIAeRIgeVOAKIASACIA8gB5U4AoQBIAIgECAHlTgCgAFBAQVBAAs2AnwgAkEwaiAKIAJB/ABqIAkgAkEEahC+AyACKgIwIjAgFV4NASACQQA2AuQBIAJBADYC1AEgAkIANwLAASACQQA2ArABIAJCADcCnAEgAkEANgKMASACQQA2AnwgAiArIBIgIiAbICOUIB0gGpSTIgcgB5IiIZQgGyAcIBqUIBsgEpSTIgcgB5IiF5QgHSAdIBKUIBwgI5STIgcgB5IiEpSTkpKSIjIgJiAiIBsgJJQgHSAllJMiByAHkiITlCAbIBwgJZQgGyAmlJMiByAHkiIUlCAdIB0gJpQgHCAklJMiByAHkiIQlJOSkiArkiIokyInOAKEASACICeMOAKUASACICggKyAeICIgGyAflCAdICCUkyIHIAeSIhGUIBsgHCAglCAbIB6UkyIHIAeSIg+UIB0gHSAelCAcIB+UkyIHIAeSIgeUk5KSkiIukyIxOALMASACIDGMOALcASACICwgJCAiIBSUIBwgEJQgGyATlJOSkpIiKSAsIB8gIiAPlCAcIAeUIBsgEZSTkpKSIiSTIiY4AuABIAIgJow4AtgBIAIgJSAiIBCUIB0gE5QgHCAUlJOSkiAtkiIqIC0gICAiIAeUIB0gEZQgHCAPlJOSkpIiJZMiETgC0AEgAiARjDgCyAEgAiAuIDKTIh44AqgBIAIgHow4ArgBIAIgJCAsICMgIiAXlCAcIBKUIBsgIZSTkpKSIg+TIh84ArwBIAIgH4w4ArQBIAIgJSAtIBogIiASlCAdICGUIBwgF5STkpKSIgeTIiA4AqwBIAIgIIw4AqQBIAIgDyApkyIXOAKYASACIBeMOAKQASACIAcgKpMiEjgCiAEgAiASjCIaOAKAAUMAAAAAISEgAiAyICaUIA8gMZSTIAdDAAAAAJSSOAKsAiACICggJpQgKSAxlJMgKkMAAAAAlCITkjgCqAIgAiAPIBGUIDJDAAAAAJSSICYgB5STOAKkAiACICkgEZQgKEMAAAAAlCIUkiAmICqUkzgCoAIgAiAPQwAAAACUIBEgMpSTIAcgMZSSOAKcAiACIClDAAAAAJQiECARICiUkyAqIDGUkjgCmAIgAiAuIB+UICQgHpSTICVDAAAAAJQiEZI4ApQCIAIgKCAflCApIB6UkyATkjgCkAIgAiAkICCUIC5DAAAAAJQiD5IgHyAllJM4AowCIAIgKSAglCAUkiAfICqUkzgCiAIgAiAkQwAAAACUIgcgICAulJMgJSAelJI4AoQCIAIgECAgICiUkyAqIB6UkjgCgAIgAiAuIBeUICcgJJSTIBGSOAL8ASACICggF5QgKSAnlJMgE5I4AvgBIAIgEiAklCAPkiAXICWUkzgC9AEgAiApIBKUIBSSIBcgKpSTOALwASACICcgJZQgByASIC6Uk5I4AuwBIAIgKiAnlCAQICggEpSTkjgC6AEgCSoCCCEXIAn9XQIAIjX9HwEhFCA1/R8AIRBD//9//yEHIAJB6AFqIQwDQAJAIAJB/ABqIAVqIgQqAgAiHiAelCAEQQRqKgIAIh8gH5SSIARBCGoqAgAiICAglJIiD0MAAAA0XkUNACAMKgIAIhIgDEEEaioCACITXiEEIB4gECAemJQgHyAUIB+YlJIgICAXICCYlJIgD5EiI5UhDyASIBMgBBuMICOVIA+TIREgEyASIAQbICOVIA+TIg8gB14EQCAgICOVIScgHyAjlSEaIB4gI5UhISAPIQcLIAcgEV1FDQAgIIwgI5UhJyAfjCAjlSEaIB6MICOVISEgESEHCyAMQQhqIQwgBUEMaiIFQewARw0ACwJAAkACQAJAIAcgFV5FBEACQCAvQwAAAABfRQ0AIDBDAAAAAF9FDQAgB0MAAAAAXw0CCyAHIC9fIC8gMGBxDQQgByAwXyAvIDBfcQ0DIAcgMGAgByAvYHENAkHo2sIAQShBqPbCABDWDAALIAFBAjYCAAwGCyABQQA2AgAMBQsgAiAhOAJ8IAIgGjgCgAEgAiAnOAKEASACQegBaiIFIAkgAkH8AGoiCxDBBiACICeMOAKEASACIBqMOAKAASACICGMOAJ8IAJB2ABqIgQgAkEEaiALEPoIIApBGGohDCAKQQxqIQkCQAJAAkACQEECIAQqAgAiFCAKKgIMlCAEKgIEIhAgCioCEJSSIAQqAggiESAKKgIUlJIiDyAUIAoqAgCUIBAgCioCBJSSIBEgCioCCJSSIgddIgQgFCAKKgIYlCAQIAoqAhyUkiARIAoqAiCUkiAPIAcgBBtdGw4CAQIACyALIAkpAgA3AgwgCyAKKQIANwIAIAtBFGogCUEIaigCADYCACALQQhqIApBCGooAgA2AgAMAgsgCyAJKQIANwIAIAsgDCkCADcCDCALQQhqIAlBCGooAgA2AgAgC0EUaiAMQQhqKAIANgIADAELIAsgDCkCADcCACALIAopAgA3AgwgC0EIaiAMQQhqKAIANgIAIAtBFGogCkEIaigCADYCAAsgASADIAUgCyAVEJACDAQLIAIgAioCPIw4AoQBIAIgAioCOIw4AoABIAIgAioCNIw4AnwgAkHMAGoiBSAJIAJBBGogAkH8AGoiBBCwBSAEIAogBUEBEFEgASACKgJMIAIqAnwiEJMiByAHlCACKgJQIAIqAoABIhGTIgcgB5SSIAIqAlQgAioChAEiD5MiByAHlJIgFSAVlF4Ef0ECBSACQfAAaiADIAUQ+gggASAPOAIYIAEgETgCFCABIBA4AhAgASAtIAIqAniSOAIMIAEgKyACKgJ0kjgCCCABICwgAioCcJI4AgRBAQs2AgAMAwsgAiACKgIsjDgChAEgAiACKgIojDgCgAEgAiACKgIkjDgCfCACQUBrIgQgCiADIAJB/ABqEOQDIAECf/0MAAAAAAAAAAAAAAAAAAAAACA1/eEBIAL9XQNAIjf95QH96wH9DAAAAAAAAAAAAAAAAAAAAAAgNyA1/eUB/esB/eUBIjb9DAAAAAAAAAAAAAAAAAAAAAD9QiI1/R0AIDUgNv0NAAECAwABAgMEBQYHAAECA/0dAYSnIBeMIAIqAkgiD5MiB0MAAAAAIAdDAAAAAGAbIA8gF5MiB0MAAAAAIAdDAAAAAGAbkyIHQwAAAABcciEFQQIgDyAPIAeSIA8gBUEBcRsiD5MiByAHlCA3IDcgNv3kASA3IAX9EUEf/asBQR/9rAH9UiI2/eUBIjUgNf3mASI1/R8AIDX9HwGSkiAVIBWUXg0AGiACQeQAaiACQQRqIAQQ+gggASAPOAIMIAEgNv0fATgCCCABIDb9HwA4AgQgASAWIAIqAmySOAIYIAEgGCACKgJokjgCFCABIBkgAioCZJI4AhBBAQs2AgAMAgsgAUECNgIADAELIAFBAjYCAAsgAkGwAmokACAIQYQBaiIFIAhBkAFqIgQgCCgC4AEiA0EBRiICGyIBIAgpAuQBNwIAIAFBCGogBkEMaigCADYCACAEIAUgAhsiAUEIaiAGQRhqKAIANgIAIAEgCCkC8AE3AgAgACADNgIAIAAgCCkCkAE3AgQgAEEMaiAEQQhqKAIANgIAIAAgCCkChAE3AhAgAEEYaiAFQQhqKAIANgIADAcLIAhBoAFqIgEgAiAKIAkgCCgCNEEUaigCACAHEKoEIABBGGogAUEYaigCADYCACAAQRBqIAFBEGopAgA3AgAgACAI/QACoAH9CwIADAYLIAhBoAFqIQMgCkEUaigCACEBIwBBQGoiBCQAIAQgAioCDCIYOAIwIAQgAioCCCISjDgCLCAEIAIqAgQiE4w4AiggBCACKgIAIhaMOAIkIAQgGCAWIAIqAhQiGZQgEyACKgIQIhSUkyIPIA+SIhCUIBMgEyACKgIYIhWUIBIgGZSTIg8gD5IiEZQgFiASIBSUIBYgFZSTIg8gD5IiD5STkiAVkzgCPCAEIBggD5QgFiAQlCASIBGUk5IgGZM4AjggBCAYIBGUIBIgD5QgEyAQlJOSIBSTOAI0IARBCGoiAiAEQSRqIAkgDSABIAcQqgQCQCAEKAIIQQFGBEAgAyAEKQIMNwIQIAMgBCkCGDcCBCADQQE2AgAgA0EYaiACQQxqKAIANgIAIANBDGogAkEYaigCADYCAAwBCyADIAT9AAII/QsCACADQRhqIARBCGoiAUEYaigCADYCACADQRBqIAFBEGopAgA3AgALIARBQGskACAAQRhqIANBGGooAgA2AgAgAEEQaiADQRBqKQIANwIAIAAgCP0AAqAB/QsCAAwFCyAJQQxqKAIAIQUgCCgCFEEUaigCACEEIwBBoAJrIgYkACAG/QwAAAAAAAAAAAAAAAAAAAAA/QsE4AEgBv0MAAAAAAEAAAACAAAAAwAAAP0LBDAgBkFAa0EAQaAB/AsAAn0gAioCGCISIBKUIAIqAhAiECAQlCACKgIUIhQgFJSSkiIPQwAAgCheBEAgBiAQjCAPkSIPlSIVOAL8ASAGIBSMIA+VIhE4AoACIAYgEowgD5UiDzgChAIgBkGIAmoiAyAMIAZB/AFqIAURAQAgBiAPjDgCECAGIBGMOAIMIAYgFYw4AgggBkGUAmoiASAKIAIgBkEIaiAEEQIAIAZB1ABqIANBCGoiAygCADYCACAGQeAAaiABQQhqIgEoAgA2AgAgBiAGKQKIAjcCTCAGIAYpApQCNwNYIAYqAowCIAYqApgCkyEaIAYqAogCIAYqApQCkyERIAMqAgAgASoCAJMMAQsgBkEANgKEAiAGQoCAgPwDNwL8ASAGQYgCaiIDIAwgBkH8AWogBREBACAGQYCAgIB4NgIQIAZCgICA/IuAgICAfzcCCCAGQZQCaiIBIAogAiAGQQhqIAQRAgAgBkHUAGogA0EIaiIDKAIANgIAIAZB4ABqIAFBCGoiASgCADYCACAGIAYpAogCNwJMIAYgBikClAI3A1ggBioCjAIgBioCmAKTIRogBioCiAIgBioClAKTIREgAyoCACABKgIAkwshDyAGQQA2AtwBIAZBADYC7AEgBiAPOAJIIAYgGjgCRCAGIBE4AkAgBkEIaiACIAwgBSAKIAQgB0EBIAZBMGoQywECQAJAAkACQCAGKAIIIgFBAWsOAwABAgMLIAAgBikCDDcCBCAAQQxqIAZBFGooAgA2AgAgBioCGCAQkyIQIAIqAgQiE5QgBioCHCAUkyIVIAIqAgAiFpSTIgcgB5IhGCAVIAIqAggiGZQgBioCICASkyIRIBOUkyIHIAeSIRQgACARIAIqAgwiDyAYlCATIBSUIBYgESAWlCAQIBmUkyIHIAeSIgeUk5KSOAIYIAAgFSAPIAeUIBYgGJQgGSAUlJOSkjgCFCAAIBAgDyAUlCAZIAeUIBMgGJSTkpI4AhBBASEBDAILQejawgBBKEHI9sIAENYMAAtBAiEBCyAAIAE2AgAgBkGgAmokAAwECyAIIAUgBigCuAERAAAgCCgCACIGBEAgCCgCBCEFIwBB4ABrIgkkACAJIAIqAgwiGDgCMCAJIAIqAggiEow4AiwgCSACKgIEIhOMOAIoIAkgAioCACIWjDgCJCAJIBggFiACKgIUIhmUIBMgAioCECIUlJMiDyAPkiIQlCATIBMgAioCGCIVlCASIBmUkyIPIA+SIhGUIBYgEiAUlCAWIBWUkyIPIA+SIg+Uk5IgFZM4AjwgCSAYIA+UIBYgEJQgEiARlJOSIBmTOAI4IAkgGCARlCASIA+UIBMgEJSTkiAUkzgCNCAJQUBrIAYgBSABIAlBJGogAyAEIAcQiAECQAJAIAkoAkQiA0EDRwRAIAlBIGoiAiAJQdAAaigCADYCACAJQRBqIgEgCUHcAGooAgA2AgAgCSAJKQJINwMYIAkgCSkCVDcDCCADQQFHDQEgACAJKQMYNwIQIAAgCSkDCDcCBCAAQQE2AgAgAEEYaiACKAIANgIAIABBDGogASgCADYCAAwCC0ECIQMLIAAgAzYCACAAIAkpAxg3AgQgACAJKQMINwIQIABBDGogCUEgaigCADYCACAAQRhqIAlBEGooAgA2AgALIAlB4ABqJAAMBAsgAEEDNgIADAMLIAhBADYCsAEgCEEBNgKkASAIQYD2wgA2AqABIAhCBDcCqAEgCEGgAWpBiPbCABC5DQALIAAgAjYCACAAIAgpA+ABNwIEIAAgCCkDkAE3AhAgAEEMaiAIQegBaigCADYCACAAQRhqIAhBmAFqKAIANgIADAELIAAgDTYCGCAAIAQ2AhQgACADNgIQIAAgBjYCDCAAIAU2AgggACAJNgIEIAAgAjYCAAsgCEGAAmokAAufEgMLfwZ9BHsjAEFAaiIHJAACQAJAIAAoApQCIglFBEAMAQsgASAAKAIIIghPBEAgASAIQfyawgAQhQsACwJAAkACQAJAIAYgBCgCACIIIAlqIhBPBEAgACgCBCABQfADbGooApADIgEgACgCRCIKTwRAIAEgCkGMm8IAEIULAAsgACgCQCABQQR0aiIKQQxqIgwoAgAiASAJRw0DIAMqAgghEiADKgIEIRMgAyoCACEUIAIqAgghFSACKgIEIRYgAioCACEXIAUgCEECdGohAUEAIQJBFCELA0AgAkEBaiICIAwoAgBLDQIgASAKQQRqKAIAIAtqIgNBFGsqAgAgF5RDAAAAAJIgA0EQayoCACAWlJIgA0EMayoCACAVlJIgA0EIayoCACAUlJIgA0EEayoCACATlJIgAyoCACASlJI4AgAgAUEEaiEBIAtBGGohCyACIAlHDQALQQEgCSAJQQFNGyECA0AgBiAIQQAgBkEBRyIBGyIDS0EAIAEgCEVyG0UEQCAHQQA2AjggB0EBNgIsIAdB7IDCADYCKCAHQgQ3AjAgB0EoakGcm8IAELkNAAsgCCAJaiIKQQAgARsiCyAGTw0DIAEgCkVyRQ0DIAUgC0ECdGogBSADQQJ0aioCADgCACAIQQFqIQggAkEBayICDQALDAQLDAULIAdBADYCOCAHQQE2AiwgB0Gw/cEANgIoIAdCBDcCMCAHQShqQcj9wQAQuQ0ACyAHQQA2AjggB0EBNgIsIAdB7IDCADYCKCAHQgQ3AjAgB0EoakGsm8IAELkNAAsgByABNgIMIAdBBjYCCCAHQQE2AhQgByAJNgIQIAdBAzYCLCAHQaiCwgA2AiggB0ICNwI0IAcgB0EQaq1CgICAgJAPhDcDICAHIAdBCGqtQoCAgICQD4Q3AxggByAHQRhqNgIwIAdBKGpBwILCABC5DQALAn0CQAJAAkACQAJAIAYgCSAQak8EQCAFIBBBAnRqIQMgCSEBAkAgACgCkAEiDEF/Rg0AAkAgACgCjAEiCkUNACAAKAKIASEIIAlBAUcEQCAKQQJ0IQsgAyAMQQJ0aiECIAwgCSAJIAxLG0EBayEBA0AgCCgCACINIAlPDQUgCSABQQFqIgFGDQYgCEEEaiEIIAIgAyANQQJ0aioCADgCACACQQRqIQIgC0EEayILDQALDAELIAxBAWshAiAKQQJ0IQEDQCAIKAIADQQgAkEBaiICDQUgCEEEaiEIIAFBBGsiAQ0ACwsgCSAKIAxqIgFrIghFDQAgAUEBaiENIAlBAnQiCiADaiELIAFBAnQiDiADaiECAkAgCEEBcUUEQCACIQoMAQsgAiAGQQJ0aiIPIAIgCiAORiICGyIKQQA2AgAgDyALIAIbIQsgCiAIQQFrIghBAEdBAnRqIQILIAkgDUYNAANAIAZBAnQiDSAKaiIRIAIgAiALRiIOGyIPQQA2AgAgDyAIQQFHQQJ0aiIPIAIgDWogCyAOGyILRiECIBEgCiAOGyIKIA1qIg4gDyACGyIRQQA2AgAgDiAKIAIbIQogDSAPaiALIAIbIQsgESAIQQJHQQJ0aiECIAhBAmsiCA0ACwsgAQRAIAEgCUsNCSAAQdwAaiADIAEQ3AELAkAgDEF/Rg0AIAAoAowBIgFFDQAgACgCiAEhAiAJQQFHBEAgAUECdEEEayEIA0AgCEECdiAMaiIBIAlPDQYgAiAIaigCACIKIAlPDQcgAyAKQQJ0aiADIAFBAnRqIgEqAgA4AgAgAUEANgIAIAhBBGsiCEF8Rw0ACwwBC0EAIAxrIQogAUECdEEEayEIA0AgCEECdiAKRw0FIAIgCGooAgANBiADQQA2AgAgCEEEayIIQXxHDQALCyAEKAIAIgogCWogBksNCCAEIAogCUEBdGo2AgAgCUEISQRAQQAhAUMAAAAADAcLIAUgCkECdGohCCAJQXhxIQEgCSEGA0AgGSAIQRhq/V0CACADQRhq/V0CAP3mAf3kASEZIBggCEEIav1dAgAgA0EIav1dAgD95gH95AEhGCAbIAhBEGr9XQIAIANBEGr9XQIA/eYB/eQBIRsgGiAI/V0CACAD/V0CAP3mAf3kASEaIAhBIGohCCADQSBqIQMgBkEIayIGQQdLDQALDAULDAcLIAdBADYCOCAHQQE2AiwgB0HsgMIANgIoIAdCBDcCMCAHQShqQcybwgAQuQ0ACyAHQQA2AjggB0EBNgIsIAdB7IDCADYCKCAHQgQ3AjAgB0EoakHcm8IAELkNAAsgB0EANgI4IAdBATYCLCAHQeyAwgA2AiggB0IENwIwIAdBKGpB7JvCABC5DQALIAdBADYCOCAHQQE2AiwgB0HsgMIANgIoIAdCBDcCMCAHQShqQfybwgAQuQ0ACyAYIBn95AEiGP0fASAY/R8AIBogG/3kASIY/R8BIBj9HwBDAAAAAJKSkpILIRICQCABIAlPDQACQCAJQQNxIgJFBEAgASEGDAELIAUgAUECdCIEIApBAnRqaiEDIAUgBCAQQQJ0amohCCABIQYDQCAGQQFqIQYgEiADKgIAIAgqAgCUkiESIANBBGohAyAIQQRqIQggAkEBayICDQALCyABIAlrQXxLDQAgBSAGQQJ0IgEgCkECdGpqIQMgBSABIBBBAnRqaiEIIAkgBmshBgNAIBIgAyoCACAIKgIAlJIgA0EEaioCACAIQQRqKgIAlJIgA0EIaioCACAIQQhqKgIAlJIgA0EMaioCACAIQQxqKgIAlJIhEiADQRBqIQMgCEEQaiEIIAZBBGsiBg0ACwsgACgCGCAJTwRAQQAhCAJAIAlBCEkNACAJQQhrIgBBA3ZBAWoiAUEHcSEDIABBOE8EQCABQfj///8DcSEIA0AgCEEIayIIDQALCyAJQXhxIQggA0UNAANAIANBAWsiAw0ACwsgCCAJTw0BIAghBiAJQQdxIgMEQCADIAhqIQYDQCADQQFrIgMNAAsLIAggCWtBeEsNASAJIAZrIQMDQCADQQhrIgMNAAsMAQsMAQsgB0FAayQAIBIPCyAHQQA2AjggB0EBNgIsIAdBsP3BADYCKCAHQgQ3AjAgB0EoakG4/cEAELkNAAuEFAMPfw99A34jAEGgAWsiCiQAIAogCToAFiAKIAY4AhAgCBDcBwJAAkAgCCgCACIJBEAgCkEIaiAJIAgoAgQoAhwRAAAgCkEwaiAKKAIIIgwgCigCDCgCDBEAACAKKQMwQr6mt6/GjpbU+wCFIAopAzhC3cGm5qiSv/RGhYRCAFINASAMIAwtABhBf3NBAXEiCDoAGCAKIAg6ABcCQAJAAkACQCAEIAUoAhARBAAiCSgCCEUNACAJKAIEIggoAjxB/////wNxIAgoAhxB/////wNxag4CAAECCyAKQv////v///+/fzcDgAEgCv0M//9/f///f3///39///9///0LBHAMAgsgCkGEAWogCEEYaigCADYCACAKIAgpAwA3A3AgCiAIKQIQNwJ8IAogCEEIaigCADYCeAwBCyAKIAgqAhgiBiAIKgI4IhogBiAaYBs4AoQBIAogCCoCFCIGIAgqAjQiGiAGIBpgGzgCgAEgCiAIKgIQIgYgCCoCMCIaIAYgGmAbOAJ8IAogCCoCCCIGIAgqAigiGiAGIBpfGzgCeCAKIAgqAgQiBiAIKgIkIhogBiAaXxs4AnQgCiAIKgIAIgYgCCoCICIaIAYgGl8bOAJwCyAKQRhqIgggCkHwAGogARC7AyAKKgIQIgZDAAAAAGBFDQIgCioCJCEbIAoqAhghGSAKKgIcIRwgCioCICEgIAoqAighISAKKgIsIR4gCEEIaiAHQQhqIgsoAgA2AgAgC0EANgIAIAcpAgAhKCAHQoCAgIDAADcCACAKICg3AxggCiAJNgJkIAogATYCYCAKQfCIwwA2AlwgCiAANgJYIAogBzYCSCAKIAw2AkAgCiAFNgI8IAogBDYCOCAKIAI2AjAgCiADNgJUIAMqAjAhIyADKgIsIRogAyoCKCEkIAMoAgwhCyADKAIQIQ0gCiAKQRZqNgJQIAogCkEXajYCTCAKIAg2AkQgCiAKQRBqNgI0AkACQAJAAkAgBiAbkiAklSIbQwAAAL9fDQAgBiAekiAjlSIeQwAAAL9fDQAgGSAGkyAklSIZQwAAAD9gDQAgICAGkyAjlSIfQwAAAD9gDQAgG0MAAAA/kkMAAIA/IA2zQwAAgL+SlSIglY0iG0MAAAAAXkUNACAbIA1BAWuzIh0gGyAdXRv8ASIWIBlDAAAAP5IgIJWOIhsgDUECa7MiGSAZIBteG/wBQQAgG0MAAAAAXhsiAE0NACAeQwAAAD+SQwAAgD8gC7NDAACAv5KVIh6VjSIbQwAAAABeRQ0AIB9DAAAAP5IgHpWOIhkgC0ECa7MiHyAZIB9dG/wBQQAgGUMAAAAAXhsiASAbIAtBAWsiEbMiGSAZIBteG/wBIhJPDQAgBiAhkiAalSEbIBwgBpMgGpUhBiABQQFqIQkgAygCBCIFIAFBAnQiBCAAIAtsQQJ0amohAiAFIAsgAEEBamxBAnQgBGpqIQQgACADKAIkIgUgACAFSxshFyALQQJ0IRVBACASayEYIAAgEWwiEyADKAJMQQF2aiEUIAMoAhggAygCICIPIABsaiEFA0AgACAXRg0CIAAiB0EBaiEAIAEhAwJAIAcgDUkEQCAAIA1JBEAgJCAgIAezlEMAAAC/kiIZlCEhICQgICAZkpQhHyACIQcgBCEIIAkhAwNAIANBAWsiECAPTw0GAkAgAyAFakEBay0AACIOQQZxQQZGDQAgCyAQTQ0IIAMgC08NCSAIQQRqKgIAIRkgB0EEaioCACEcIAgqAgAhHQJAIAcqAgAiIiAbXkUNACAbIBxdRQ0AIBsgHV1FDQAgGSAbXg0BCwJAIAYgIl5FDQAgBiAcXkUNACAGIB1eRQ0AIAYgGV4NAQsgGiAZlCElIBogHZQhHSAjIB4gHiAQs5RDAAAAv5IiJ5KUIRkgGiAclCEmICMgJ5QhHCAaICKUISIgDkECcUUEQCAKIB84AogBIAogJjgCgAEgCiAhOAJ8IAogIjgCdCAKICE4AnAgCiAcOAJ4IAogGTgChAEgCiAZIBwgDkEBcSIQGzgCkAEgCiAlIB0gEBs4AowBIApBMGogAyATakEBayAKQfAAahCxAgsgDkEEcQ0AIAogHTgCjAEgCiAfOAKIASAKICU4AoABIAogHzgCfCAKICE4AnAgCiAZOAKEASAKIBw4ApABIAogHCAZIA5BAXEiDhs4AnggCiAiICYgDhs4AnQgCkEwaiADIBRqQQFrIApB8ABqELECCyAHQQRqIQcgCEEEaiEIIBggA0EBaiIDakEBRw0ACwwCCwNAIAMgD08NBSADIAVqLQAAQQZxQQZGBEAgEiADQQFqIgNGDQMMAQsLIAMgC08NBSADQQFqIAtPDQYgCkEANgKAASAKQQE2AnQgCkH83MIANgJwIApCBDcCeCAKQfAAakGMzMMAELkNAAsDQCADIA9PDQQgAyAFai0AAEEGcUEGRw0FIBIgA0EBaiIDRw0ACwsgAiAVaiECIAQgFWohBCARIBNqIRMgESAUaiEUIAUgD2ohBSAAIBZHDQALCyAMKAIMIgUEQCAMKAIEIQQgDCgCACIBQQhqIQMgASkDAEJ/hUKAgYKEiJCgwIB/gyEoIAwoAgghACAKLQAXIQkgASEHIAUhAgNAIChQBEADQCAHQYABayEHIAMpAwAhKCADQQhqIQMgKEKAgYKEiJCgwIB/gyIoQoCBgoSIkKDAgH9RDQALIChCgIGChIiQoMCAf4UhKAsgKEIBfSEqIAkgByAoeqdBAXRB8AFxayILQQRrLQAARwRAQYABIQggASALa0EEdSILIAFqIg0pAAAiKUIBhiApg0KAgYKEiJCgwIB/g3qnQQN2IAEgC0EIayAEcWoiCykAACIpQgGGICmDQoCBgoSIkKDAgH+DeadBA3ZqQQdNBEAgDCAAQQFqIgA2AghB/wEhCAsgDSAIOgAAIAwgAkEBayICNgIMIAtBCGogCDoAAAsgKCAqgyEoIAVBAWsiBQ0ACwsgCigCHCEAIAooAiAiBwRAIABBxABqIQMDQCADQQRrKAIAIgEEQCADKAIAIAFBJGxBBBDoDgsgA0HsAGohAyAHQQFrIgcNAAsLIAooAhgiAQRAIAAgAUHsAGxBBBDoDgsgCkGgAWokAA8LIApBADYCgAEgCkEBNgJ0IApB/NzCADYCcCAKQgQ3AnggCkHwAGpB3MvDABC5DQALIApBADYCgAEgCkEBNgJ0IApB/NzCADYCcCAKQgQ3AnggCkHwAGpB7MvDABC5DQALIApBADYCgAEgCkEBNgJ0IApB/NzCADYCcCAKQgQ3AnggCkHwAGpB/MvDABC5DQALQeT6wgAQ8g4AC0H0+sIAEPIOAAsgCkEANgJAIApBATYCNCAKQejgwgA2AjAgCkIENwI4IApBMGpB8ODCABC5DQALwBoCJH8EfiMAQeAAayIDJAACQCACRQ0AIANCidm54o7TvpcINwNIIANBoNzCAP0AAwD9CwM4IANBADoAVyADIANBOGo2AlwgAyADQdcAajYCWCABKAI8IgtFDQBBASALayEHIAEoAjghAgJAAkADQCADQdgAaiACEKwBRQ0BIAJBDGohAiAHQQFqIgdBAUcNAAsMAQsgB0UEQEEBIQYMAQsgAkEMaiECQQAgB2shB0EBIQYDQAJAIANB2ABqIAIQrAFFBEAgBkEBaiEGDAELIAIgBkF0bGoiESACKQIANwIAIBFBCGogAkEIaigCADYCAAsgAkEMaiECIAdBAWsiBw0ACwsgASALIAZrNgI8IAMoAjwiAkUNACADKAI4IAJBA3RrQQhrIAJBCWxBEWpBCBDoDgsgA0EANgI0IANCgICAgMAANwIsIANCBDcCJCADQgA3AhwgA0KAgICAwAA3AhQgA0KJ2bnijtO+lwg3A0ggA0Gg3MIA/QADAP0LAzggAyIEIAEoAjAiBgR/IANBFGpBACAGQQRBBBDYBiADKAIYIgsgAygCHCICQQJ0aiEDIAZBAUcEQCAGQQJ0QQRrIhEEQCADQf8BIBH8CwALIAIgBmoiA0EBayECIAsgA0ECdGpBBGshAwsgA0F/NgIAIAJBAWoFQQALNgIcAkAgASgCPCIDBEAgBEEsaiEcIARBIGohHSABKAI4IgIgA0EMbGohHiACQQxqIQcgBEHIAGohH0EBIQNBACEGA0AgByELIAMhEQJAAn8CQCACKAIAIgMgAigCBCIQRg0AIAMgAigCCCIDRg0AIAMgEEYNAEEAIQhBASEDIAQoAjQiGCEHA0AgAyIQQQAgA0EDRxsiBSAYaiEJIAIgCEECdGoiGigCACESIAQoAiwgB0YEQCAcQYzRwwAQtQgLIAQoAjAiICAHQQR0aiIDIAY2AgwgAyASNgIIIANBfzYCBCADIAk2AgAgBCAHQQFqIgc2AjQgBCkDSCAaKAIAIhmtIAIgBUECdGooAgAiFa1CIIaEhSInQiCIIihCt9OwhQx+ICdC/////w+DIidC3aHxywx+hSAoQt2h8csMfiAnQrfTsIUMfoVCIIiFISggBCgCQEUEQCAEQQhqIRsjAEEwayIKJAAgCiAfNgIoIARBOGoiEygCDCEMIAogCkEoajYCLAJAIAwgDEEBaiIDTQRAIBMoAgQiFyAXQQFqQQN2QQdsIBdBCEkbIgVBAXYgA0kEQAJAAkACQAJ/IAVBAWoiBSADIAMgBUkbIgNBD08EQCADQf////8BSw0CQX8gA0EDdEEHbkEBa2d2QQFqDAELQQRBCEEQIANBCEkbIANBBEkbCyIDrUIMfiInQiCIpw0BICenIgVBeEsNASAFQQdqQXhxIgkgA0EIaiIOaiEFIAUgCUkNASAFQfj///8HSw0BIAVBCBCRDiIPDQJBCCAFQfjKxAAoAgAiAEHMCCAAGxEAAAALEKcMIAooAiQhAyAKKAIgIQUMBAsQpwwgCigCFCEDIAooAhAhBQwDCyAJIA9qIQ8gDgRAIA9B/wEgDvwLAAsgA0EBayIWIANBA3ZBB2wgFkEISRshIQJAIAxFBEAgEygCACEJDAELIA9BCGohIiATKAIAIglBDGshIyAJKQMAQn+FQoCBgoSIkKDAgH+DIScgCigCKCEkQQAhAyAMIQ4gCSEFA0AgJ1AEQANAIANBCGohAyAFQQhqIgUpAwBCgIGChIiQoMCAf4MiJ0KAgYKEiJCgwIB/UQ0ACyAnQoCBgoSIkKDAgH+FIScLIA8gJCkDACAjICd6p0EDdiADaiIlQXRsaikCAIUiKUIgiCIqQrfTsIUMfiApQv////8PgyIpQt2h8csMfoUgKkLdofHLDH4gKUK307CFDH6FQiCIhaciJiAWcSINaikAAEKAgYKEiJCgwIB/gyIpUARAQQghFANAIA0gFGohDSAUQQhqIRQgDyANIBZxIg1qKQAAQoCBgoSIkKDAgH+DIilQDQALCyAnQgF9ICeDIScgDyApeqdBA3YgDWogFnEiDWosAABBAE4EQCAPKQMAQoCBgoSIkKDAgH+DeqdBA3YhDQsgDSAPaiAmQRl2IhQ6AAAgIiANQQhrIBZxaiAUOgAAIA8gDUF/c0EMbGoiDUEIaiAJICVBf3NBDGxqIhRBCGooAAA2AAAgDSAUKQAANwAAIA5BAWsiDg0ACwsgEyAWNgIEIBMgDzYCACATICEgDGs2AghBgYCAgHghBSAXRQ0CIAkgF0EMbEETakF4cSIDayADIBdqQQlqQQgQ6A4MAgsgEyAKQSxqQYoCQQwQxgJBgYCAgHghBQwBCxCnDCAKKAIMIQMgCigCCCEFCyAbIAM2AgQgGyAFNgIAIApBMGokAAsgCCAYaiEMIAQoAjwiCSAop3EhCCAoQhmIIilC/wCDQoGChIiQoMCAAX4hKkEAIQ4gBCgCOCEFQQAhAwNAAkACfwJAAkACQCAFIAhqKQAAIiggKoUiJ0KBgoSIkKDAgAF9ICdCf4WDQoCBgoSIkKDAgH+DIidCAFIEQANAIAUgJ3qnQQN2IAhqIAlxQXRsaiIKQQxrKAIAIBlGBEAgFSAKQQhrKAIARg0DCyAnQgF9ICeDIidCAFINAAsLIChCgIGChIiQoMCAf4MhJyADRQRAICdQDQMgJ3qnQQN2IAhqIAlxIRILQQEgJyAoQgGGg1ANAxogBSASaiwAACIIQQBOBEAgBSAFKQMAQoCBgoSIkKDAgH+DeqdBA3YiEmotAAAhCAsgBSASaiApp0H/AHEiAzoAACAFIBJBCGsgCXFqQQhqIAM6AAAgBSASQXRsaiIDQQxrIBk2AgAgA0EIayAVNgIAIANBBGsgDDYCACAEIAQoAkRBAWo2AkQgBCAEKAJAIAhBAXFrNgJAIBooAgAiAyAEKAIcIghPDQEgBCgCGCADQQJ0aiAMNgIAIBBBAWohAyAQIghBA08NCQwGCyAKQQRrIgIoAgAhASACIAw2AgAgASAHTw0DIAAgGTYCDCAAIAY2AgggAEEBNgIAIAAgICABQQR0aigCDDYCBCAVIQZBEAwHCyADIAhBrNHDABCFCwALQQALIQMgDkEIaiIOIAhqIAlxIQgMAQsLCyABIAdBnNHDABCFCwALIABBADYCAEEECyEBIAAgAWogBjYCACAEKAI8IgAEQCAEKAI4IABBDGxBE2pBeHEiAWsgACABakEJakEIEOgOCyAEKAIUIgAEQCAEKAIYIABBAnRBBBDoDgsgBCgCICIABEAgBCgCJCAAQQJ0QQQQ6A4LIAQoAiwiAEUNAyAEKAIwIABBBHRBBBDoDgwDCyAEKAIoIgIgBCgCIEYEQCAdQfzQwwAQtggLIAQoAiQgAkECdGogGDYCACAEIAJBAWo2AiggCyAeRyIQIBFqIQMgC0EMQQAgEBtqIQcgCyECIBEhBiAQDQALCyAEKAJEIgMEQCAEKAI4IgdBCGohAiAHKQMAQn+FQoCBgoSIkKDAgH+DIScgBCgCMCERIAQoAjQhCwNAICdQBEADQCAHQeAAayEHIAIpAwAhJyACQQhqIQIgJ0KAgYKEiJCgwIB/gyInQoCBgoSIkKDAgH9RDQALICdCgIGChIiQoMCAf4UhJwsCQCAHICd6p0EDdkF0bGoiBkEMaygCACIQIAZBCGsoAgAiCE8NACAEKAJERQ0AIAZBBGshBSAEKAI8IgwgBCkDSCAIrSAQrUIghoSFIihCIIgiKUK307CFDH4gKEL/////D4MiKELdofHLDH6FIClC3aHxywx+IChCt9OwhQx+hUIgiIUiKKdxIQYgKEIZiEL/AINCgYKEiJCgwIABfiEqQQAhCSAEKAI4IQ4DQAJAIAYgDmopAAAiKSAqhSIoQoGChIiQoMCAAX0gKEJ/hYNCgIGChIiQoMCAf4MiKEIAUgRAA0AgDiAoeqdBA3YgBmogDHFBdGxqIhVBDGsoAgAgCEYEQCAQIBVBCGsoAgBGDQMLIChCAX0gKIMiKEIAUg0ACwsgKSApQgGGg0KAgYKEiJCgwIB/g0IAUg0CIAlBCGoiCSAGaiAMcSEGDAELCyAFKAIAIgYgC0kEQCARIAZBBHRqIBVBBGsoAgAiBjYCBCAGIAtJBEAgESAGQQR0aiAFKAIANgIEDAILIAYgC0Hs0MMAEIULAAsgBiALQdzQwwAQhQsACyAnQgF9ICeDIScgA0EBayIDDQALCyABQdgAaiECAkAgASgCWCIDQYCAgIB4Rg0AIAMEQCABKAJcIANBAnRBBBDoDgsgASgCZCIDBEAgASgCaCADQQJ0QQQQ6A4LIAEoAnAiA0UNACABKAJ0IANBBHRBBBDoDgsgAiAE/QACFP0LAgAgAEECNgIAIAJBIGogBEEUaiIAQSBqKAIANgIAIAJBEGogAEEQav0AAgD9CwIAIAQoAjwiAEUNACAEKAI4IABBDGxBE2pBeHEiAWsgACABakEJakEIEOgOCyAEQeAAaiQAC+ITAyJ/A30BfiMAQeAFayIDJAAgAUEMaiEWIAFB4AVqISAgAUHEBWohGSABQbQFaiEaIAFBqAVqIRsgAUGMB2ohHCABQYAHaiEdIAFB9AZqIR4gAUHQBGohFyABQegBaiEhIAFB3AFqISIgAUE0aiEGIAFBtAFqIQsgAUGIA2ohHyABQewCaiEQIAFB3AJqIREgAUHQAmohEiABQbQEaiETIAFBqARqIRQgAUGcBGohFSABQfgBaiEMIAFB9AFqIRggA0H8AmohCCADQdQFaiEKAn8gASgCAEEBcQRAIAEoAgQhBSABKAIIIQRBAAwBC0EBCyECA0ACQAJAAkACQAJAAkAgAkUEQCAEIAVHDQEgAUEANgIAQQEhAgwHCwJ/AkACQCABKAIwIgJBA0cEQCAYKAIAIgRBAkcEQAJAIARBAXFFDQAgA0H4AmogDBCIAiADKAL4AkUNACADQfACaiAIQQhqKAIANgIAIAMgCCkCADcD6AIMCgsCQCABKAKUBCINRQ0AIAEoAsQEIgIgASgCyAQiDk4NACABKAKYBCEPIAEoAsAEIQkgASgCrAQhByABKAKgBCEFA0AgASACQQFqIgQ2AsQEIAEgDzYCzAIgASANNgLIAiABQQA2AqACIAFCATcC9AEgASACNgLoAiABIAk2AvgCIAEgBTYC/AIgASAHNgKAAyASIBUpAgA3AgAgEkEIaiAVQQhqKAIANgIAIBEgFCkCADcCACARQQhqIBRBCGooAgA2AgAgECATKQIANwIAIBBBCGogE0EIaigCADYCACADQfgCaiAMEIgCIAMoAvgCDQQgDiAEIgJHDQALCyABQQA2AvQBAkAgASgChANBAUcNACADQfgCaiAfEIgCIAMoAvgCQQFHDQAgA0HwAmogCEEIaigCADYCACADIAgpAgA3A+gCDAoLIAFBADYChAMgASgCMCECCyAYQQI2AgAgAkECRwRAIAFBMGohIwJAA0ACQCABKAK8ASICRQRAAkAgCygCACICQSFPBEAgASgCOCEFIAEoAjQiB0UNAyAGIQQgByECDAELIAshBCAGIQUgAkUNBAsgBCACQQFrIgQ2AgAgBSAEQQJ0aigCACECCyABQQA2ArwBIAIoAhxB/////wNxQQFHBEAgAigCDCIFIAEoArgBIgIoAggiBE8NCiABKgLUASEkIAEqAtABISVBASEEAkAgASoCzAEiJiACKAIEIAVBBnRqIgIqAgBgRQ0AIAIqAgQgJV9FDQAgAioCCCAkX0UNACACKgIQIAEqAsABYEUNACACKgIUIAEqAsQBYEUNACACKgIYIAEqAsgBYEUNACABIAI2ArwBQQAhBAsgAioCICAmX0UNAiACKgIkICVfRQ0CIAIqAiggJF9FDQIgAioCMCABKgLAAWBFDQIgAioCNCABKgLEAWBFDQIgAioCOCABKgLIAWBFDQIgAkEgaiEJIARFBEACfyALKAIAIgdBIUkEQCAHIQUgBiECQSAhByALDAELIAEoAjQhBSABKAI4IQIgBgshBCAFIAdGBEAgIxCgBCABKAI0IQUgASgCOCECIAYhBAsgAiAFQQJ0aiAJNgIAIAQgBCgCAEEBajYCAAwDCyABIAk2ArwBDAILIANB0AVqIgciBSABKALYASACKAIMEK0LIANB+AJqIgQgBSAiICEQsAcgGCAEQdgC/AoAAAJAIAEoAvQBQQFxRQ0AIAcgDBCIAiADKALQBUUNACADQfACaiAKQQhqKAIANgIAIAMgCikCADcD6AIMDQsCQCABKAKUBCINRQ0AIAEoAsQEIgIgASgCyAQiDk4NACABKAKYBCEPIAEoAsAEIQkgASgCrAQhByABKAKgBCEFA0AgASACQQFqIgQ2AsQEIAEgDzYCzAIgASANNgLIAiABQQA2AqACIAFCATcC9AEgASACNgLoAiABIAk2AvgCIAEgBTYC/AIgASAH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QdABayIDJABBGCEEAkAgAkEIaiIFKAIEIgdFBEBBAiEFDAELIAUgB0EBazYCBCAFKAIAIQUgA0EGNgIgIAMgBTYCHCADQSRqIANBHGoQggMgAQJ/IAMtADwiB0EDRgRAIAMoAiQMAQsCQAJAAkAgB0ECRwRAIANBQGsgA0EcahCCAyADLQBYIglBA0YEQCADKAJADAULIAlBAkYNASADQdwAaiADQRxqEIIDIAMtAHQiCkEDRgRAIAMoAlwMBQsgCkECRg0CIANB+ABqIANBHGoQggMgAy0AkAEiBkEDRgRAIAMoAngMBQsgBkECRg0DIANBlAFqIANBHGoQggMgAy0ArAEiDEEDRgRAIAMoApQBDAULAkACQAJAIAxBAkcEQCADQbABaiADQRxqEIIDIAMtAMgBIgVBAmsOAgIBAwtBBCADQc8BakHEzcEAEKgKDAcLIAMoArABDAYLQQUgA0HPAWpBxM3BABCoCgwFCyABIAP9AAKwAf0LAowBIAEgAy8AyQE7AKUBIAEgA/0AAij9CwIEIAFBnAFqIANBwAFqKQIANwIAIAFBpwFqIANBywFqLQAAOgAAIAFBFGogA0E4aigCADYCACADQQJqIANBPWoiBEECai0AADoAACADIAQvAAA7AQAgAygCJCEEIANBE2ogA0HQAGopAgA3AAAgASADQdkAaiIILwAAOwA1IAFBN2ogCEECai0AADoAACABIAP9AAJc/QsCOCABQcgAaiADQewAaikCADcCACABIANB9QBqIggvAAA7AFEgAUHTAGogCEECai0AADoAACABIAP9AAJ4/QsCVCABQeQAaiADQYgBaikCADcCACADIAP9AAJA/QsAAyABQe8AaiADQZEBaiIIQQJqLQAAOgAAIAEgCC8AADsAbSABQYABaiADQaQBaikCADcCACABIAP9AAKUAf0LAnAgAUGLAWogA0GtAWoiCEECai0AADoAACABIAgvAAA7AIkBIAEgBzoAGCABIAQ2AgAgASAMOgCIASABIAY6AGwgASAKOgBQIAEgCToANCABIAMpAQA3ABkgAUEhaiADQQhq/QABAP0LAAAgAUEwaiADQRdqKAAANgAAQaQBIQQMBQtBACADQc8BakHEzcEAEKgKDAMLQQEgA0HPAWpBxM3BABCoCgwCC0ECIANBzwFqQcTNwQAQqAoMAQtB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AAAAAAAAAAD95AEiGv0fAzgCACATIBr9HwI4AgAgFCAa/R8BOAIAIBUgGv0fADgCACALIBsgHCAe/QzzBDW/8wQ1v/MENb/zBDW//eYBIBn9DAAAAAAAAAAAAAAAAAAAAAD95gH95AH95AH95AH9DAAAAAAAAAAAAAAAAAAAAAD95AEiGf0fAzgCACAPIBn9HwI4AgAgECAZ/R8BOAIAIBEgGf0fADgCACABQTBqIQEgBEEEayIEDQALIAcgCkYNAQsgBSAOQQxsaiEBA0AgA0EEaiIEKgIAIiFD8wQ1v5QgAyoCACIiQwAAAACUkiIgICCSIiVD8wQ1P5QhJCAiQwAAAICUIANBCGoiBSoCACIjQ/MENT+UkiIgICCSISAgBSAjICQgIEPzBDW/lCAjQwAAAICUICFDAAAAAJSSIiMgI5IiI0MAAAAAlJKSkkMAAAAAkjgCACAEICEgIEPzBDU/lCAjQwAAAICUICSSkpJDAAAAAJI4AgAgAyAiICND8wQ1P5QgJUMAAACAlCAgQwAAAACUkpKSQwAAAACSOAIAIAEgA0EMaiIDRw0ACwsgCCAOQQF0aiILIAZJDQEgCyAMSw0CIAkgBkEMbGoiDCEDAkAgDUEkTwRAIAkgACAIakEMbGohASADIApB/P///wNxIgRBDGxqIQMgBCEFA0AgAUE4aiIJIAFBLGoiDSABQSBqIg8gAUEUaiIQ/VwCAP1WAgAB/VYCAAL9VgIAAyId/Qz///8+////Pv///z7///8+/eYBIhsgAUE0aiIRIAFBKGoiEiABQRxqIhMgAUEQaiIU/VwCAP1WAgAB/VYCAAL9VgIAAyIc/Qz///8+////Pv///z7///8+/eYB/eUBIhkgGf3kAf0M////Pv///z7///8+////Pv3mASEZIBz9DP///77///++////vv///7795gEgAUEwaiIHIAFBJGoiFSABQRhqIhYgAUEMaiIB/VwCAP1WAgAB/VYCAAL9VgIAAyIe/Qz///8+////Pv///z7///8+/eYBIh/95QEiGiAa/eQB/Qz///8+////Pv///z7///8+/eYBIRogByAeIBkgGiAfIBv95AEiGyAb/eQBIh79DP///z7///8+////Pv///z795gEiH/3lAf3kAf3kAf0MAAAAAAAAAAAAAAAAAAAAAP3kASIb/R8DOAIAIBUgG/0fAjgCACAWIBv9HwE4AgAgASAb/R8AOAIAIBEgHCAfIBkgGv3kAf3kAf3kAf0MAAAAAAAAAAAAAAAAAAAAAP3kASIb/R8DOAIAIBIgG/0fAjgCACATIBv9HwE4AgAgFCAb/R8AOAIAIAkgHSAaIB79DP///77///++////vv///7795gEgGf3lAf3kAf3kAf0MAAAAAAAAAAAAAAAAAAAAAP3kASIZ/R8DOAIAIA0gGf0fAjgCACAPIBn9HwE4AgAgECAZ/R8AOAIAIAchASAFQQRrIgUNAAsgBCAKRg0BCyAMIA5BDGxqIQEDQCADQQRqIgQqAgAiJEP///++lCIiIAMqAgAiI0P///8+lCIhkyIgICCSQ////z6UISAgISADQQhqIgUqAgAiJUP///8+lCImkiIhICGSISEgBSAlICAgIUP///++lCAmICKSIiIgIpJD////PpQiIpOSkkMAAAAAkjgCACAEICQgIUP///8+lCIhICIgIJKSkkMAAAAAkjgCACADICMgIiAgICGTkpJDAAAAAJI4AgAgASADQQxqIgNHDQALCyAAQQAgACAIaiIBIABPGyIEIAIoAgAgAigCCCIDa0sEQCACIAMgBEEEQQgQ2AYgAigCCCEDCyACKAIEIQQCQCAARQ0AIAGtIisgCK0iKX0iKkICWgRAIAQgA0EDdGohASAp/RL9DAAAAAAAAAAAAQAAAAAAAAD9zgEhGSAqQn6DIicgKXwhKSADICenaiEDICchKANAIAEgGUEg/csBIBn9zgH9DAAAAAABAAAAAAAAAAEAAAD9zgH9CwIAIAFBEGohASAZ/QwCAAAAAAAAAAIAAAAAAAAA/c4BIRkgKEICfSIoQgBSDQALICcgKlENAQsgKyApfSEnIAQgA0EDdGohASApQoGAgIAQfkKAgICAEHwhKCADIAhqIABqICmnayEDA0AgASAoNwIAIAFBCGohASAoQoGAgIAQfCEoICdCAX0iJ0IAUg0ACwsgAiADNgIIIAtBAWsiACAGayIBQQAgACABTxsiASACKAIAIANrSwRAIAIgAyABQQRBCBDYBiACKAIIIQMgAigCBCEECwJAIAAgBk0NACAArSIrIAatIil9IipCAloEQCAEIANBA3RqIQEgKf0S/QwAAAAAAAAAAAEAAAAAAAAA/c4BIRkgKkJ+gyIn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CSgCACEFIApBuANqIA5BA3RqLQAERQRAIAkgBUEBayIJNgIAIAQgBCgCAEEBayIENgIAIAkgCkGAA2ogAWooAgAiCUgEQCAEIAlKDQMMAgsgAiADQQhqKAIANgIAIAogAykCADcDgAQgCkGABGogAWogBTYCACAKQegDaiIBQQhqIApB8AJqKAIANgIAIAsgCikDgAQ3AgAgC0EIaiACKAIANgIAIAogCikC6AI3A+gDIApBvAJqIAEQkwMMAgsgCSAFQQFqIgU2AgAgBCAEKAIAIgRBAWoiCTYCACAJIApBkANqIAFqKAIAIglMBEAgAiAKQfACaigCADYCACAKIAopAugCNwOABCAKQYAEaiABaiAENgIAIAYgAykCADcCACAGQQhqIANBCGooAgA2AgAgCkHQA2oiAUEIaiACKAIANgIAIAogCikDgAQ3A9ADIApBvAJqIAEQkwMMAgsgBSAJSA0BCyAAIAr9AAKwAf0LAgAgAEEwaiAKQbABaiIBQTBqKQIANwIAIABBIGogAUEgav0AAgD9CwIAIABBEGogAUEQav0AAgD9CwIAIApBoARqJAAPCyAKKAL8AiEEIAr9AALsAiEdIAooAugCIQUMAAsAC9QRAwt/L30IeyMAQSBrIgQkACADBEAgACgCECINBEACQCADIAAoAgxGBEAgAioCACIPIAEqAhQiGpQgAkEEaioCACIQIAEqAiwiG5SSIAJBCGoqAgAiESABKgJEIhyUkiACQQxqKgIAIhIgASoCXCIdlJIgAkEQaioCACITIAEqAnQiHpSSIAJBFGoqAgAiFCABKgKMASIflJIhFSAPIAEqAhAiIJQgECABKgIoIiGUkiARIAEqAkAiIpSSIBIgASoCWCIjlJIgEyABKgJwIiSUkiAUIAEqAogBIiWUkiEWIA8gASoCDCImlCAQIAEqAiQiJ5SSIBEgASoCPCIolJIgEiABKgJUIimUkiATIAEqAmwiKpSSIBQgASoChAEiK5SSIRcgDyABKgIIIiyUIBAgASoCICItlJIgESABKgI4Ii6UkiASIAEqAlAiL5SSIBMgASoCaCIwlJIgFCABKgKAASIxlJIhGCAPIAEqAgQiMpQgECABKgIcIjOUkiARIAEqAjQiNJSSIBIgASoCTCI1lJIgEyABKgJkIjaUkiAUIAEqAnwiN5SSIRkgDyAB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BgcUFRYXAAECAwABAgMgIf3lAf3rAf3rASIeIB795gH95AH9DAAAAAAAAAAAAAAAAAAAAAAgICAFQRhqIAX9XAI4/VYCAAH95QEgBUEIaiAF/VwCKP1WAgABICD95QH96wH96wEiHiAe/eYB/eQB/eMBIh79HwEgHv0fAF4iARshCAJAAkACQAJAAkAgHiAeIB79DQQFBgcAAQIDAAECAwABAgMgARsiHv0fACITIBRdRQRAIB79HwEiEyAUXUUNBCATQ///f39bDQQgCCgCHEH/////A3FBAUcNAQwCCwJAIBND//9/f1sEQAwBCyAGIAUgARsiBigCDCEBIAYoAhxB/////wNxQQFHBEAgHv0fASITIBRdRQRAIAEhBAwHCyATQ///f39bBEAgASEEDAcLQQEhBiAIKAIcQf////8DcUEBRgRAIAEhBAwFCwJ/IAMoApQBIg5BIUkEQCAOIQQgByEFQSAhDiARDAELIAMoAhQhBCADKAIYIQUgBwshBiAIKAIMIQggBCAORgR/IANBEGoQowQgAygCGCEFIAchBiADKAIUBSAEC0ECdCAFaiAINgIAIAYgBigCAEEBajYCACABIQQMBgsCQCABIAxJBEAgEiABQSRsaiIGKAIgIQEgA0GYAWogBigCHCABKAIIQQFrQXhxakEIaiAGIAIgAUHEAGooAgARAgAgAygCqAEiAUEERg0BIB0gAyoCmAEiF5MiEyATlCAcIAMqApwBIhiTIhMgE5SSIBsgAyoCoAEiFpMiEyATlJKRIhMgFF1FDQEgAygCrAEhCiADKAKkASEPIBchGSAYIRogFiEVIBMhFCABIQsMAQsgASAMQcicwwAQhQsACwsgHv0fASAUXUUNAyAe/R8BQ///f39bDQMgCCgCHEH/////A3FBAUYNAQsgCCgCDCEEDAMLQQAhBgsgDCAIKAIMIgFLBEAgEiABQSRsaiIFKAIgIQEgA0GYAWogBSgCHCABKAIIQQFrQXhxakEIaiAFIAIgAUHEAGooAgARAgACQCADKAKoASIBQQRGDQAgHSADKgKYASIXkyITIBOUIBwgAyoCnAEiGJMiEyATlJIgGyADKgKgASIWkyITIBOUkpEiEyAUXUUNACADKAKsASEKIAMoAqQBIQ8gFyEZIBghGiAWIRUgEyEUIAEhCwsgBkUNAQwCCyABIAxB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JAAPCyAEQQA2AhwgBEEBNgIQIARBpNnBADYCDCAEQgQ3AhQgBEEMakGs2cEAELkNAAvTDAIHfwN9IwBB4AFrIgskACALQTBqIAMgBCgCtAERAAAgCygCNCENIAsoAjAhDCALQShqIAYgBygCtAERAAACQAJAAkACQAJAIAwEQCALKAIoIhANAQsgC0EgaiADIAQoArgBEQAAIAsoAiAiDEUNASALQaABaiAMIAsoAiQgASACIAUgBiAHIAggCSAKEHcgCy0A2AEiAUEERwRAIAtB6ABqIAtB1AFqKAIANgIAIAtB2ABqIAtBxAFq/QACAP0LAwAgC0HIAGogC0G0AWr9AAIA/QsDACALQZIBaiALQdsBai0AADoAACALIAv9AAKkAf0LAzggCyALLwDZATsBkAELIAAgC/0AAzj9CwIAIAAgAToANCAAIAsvAZABOwA1IABBMGogC0E4aiIBQTBqKAIANgIAIABBIGogAUEgav0AAwD9CwIAIABBEGogAUEQav0AAwD9CwIAIABBN2ogC0GSAWotAAA6AAAMBAsgCygCLCEOIAoEf0EABSAHKAKsASEKIAQoAqwBIQ8gBygCqAEhESADIAQoAqgBEQsAIAYgERELAJIhFCADIA8RCwAhEiAGIAoRCwAiEyATIBIgEiATXRsgEiASXBshEkEBCyEKIAsgEjgCeCALIBQ4AnQgCyAKNgJwIA5BGGooAgAhCiAOQRBqKAIAIQ4gDUEYaigCACEPIA1BEGooAgAhDSALQYABaiADIAQoAoQBEQAAIAtBkAFqIAYgBygChAERAAAgCyoCjAEgCyoCnAFgDQEgC0GgAWoiCiABIAUgECAOIAYgByACIAwgDyADIAQgCCAJIAtB8ABqEEUgCy0A1AEiAkEERwRAIAtBOGoiAUEYaiAKQQxqKAIANgIAIAFBDGogCkEYaigCADYCACABQTBqIApBJGooAgA2AgAgAUEkaiAKQTBqKAIANgIAIAsgCykCpAE3AkggCyALKQKwATcCPCALIAspArwBNwJgIAsgCykCyAE3AlQgCyALKgKgATgCOAsgCyACOgBsDAILIAtBGGogBiAHKAK4AREAACALKAIYIgwEQCALQaABaiAMIAsoAhwgASAFIAIgAyAEIAggCSAKEHcgCy0A2AEiAUEERwRAIAtBmAFqIAtBsAFqKAIANgIAIAtBQGsgC0G8AWooAgA2AgAgC0H4AGogC0HIAWooAgA2AgAgC0GIAWogC0HUAWooAgA2AgAgCyALKQKoATcDkAEgCyALKQK0ATcDOCALIAspAsABNwNwIAsgCykCzAE3A4ABIAsqAqQBIQkLIAAgCTgCACAAIAspAzg3AgQgACALKQOQATcCECAAIAspA4ABNwIcIAAgCykDcDcCKCAAIAE6ADQgAEEMaiALQUBrKAIANgIAIABBGGogC0GYAWooAgA2AgAgAEEkaiALQYgBaigCADYCACAAQTBqIAtB+ABqKAIANgIAIABBN2ogC0GiAWotAAA6AAAgACALLwCgATsANQwDCyALQRBqIAMgBCgCYBEAACALQaABaiALKAIQIgwgCygCFCgCDBEAAAJAIAxFDQAgCykDoAFC5p216IDjz4cxhSALKQOoAULw4py6utTs2yaFhEIAUg0AIAAgASACIAwgBSAGIAcgCCAJIAoQcgwDCyALQQhqIAYgBygCYBEAACALQaABaiALKAIIIgwgCygCDCgCDBEAAAJAIAxFDQAgCykDoAFC5p216IDjz4cxhSALKQOoAULw4py6utTs2yaFhEIAUg0AIwBBQGoiBiQAIAZBCGoiByABIAUgDCACIAMgBCAIIAkgChByIAYtADwiAUEERwRAIAAgBikCDDcCECAAIAYpAhg3AgQgACAGKQIkNwIoIAAgBikCMDcCHCAAIAYqAgg4AgAgAEEYaiAHQQxqKAIANgIAIABBDGogB0EYaigCADYCACAAQTBqIAdBJGooAgA2AgAgAEEkaiAHQTBqKAIANgIACyAAIAE6ADQgBkFAayQADAMLIABBBToANAwCCyALQThqIAEgAiAMIA0gAyAEIAUgECAKIAYgByAIIAkgC0HwAGoQRQsgAEEwaiALQThqIgFBMGopAgA3AgAgAEEgaiABQSBq/QACAP0LAgAgAEEQaiABQRBq/QACAP0LAgAgACAL/QACOP0LAgALIAtB4AFqJAALowwBG38jAEGQAWsiDyQAAkACQAJAIABFDQAgAEEIayITKAIAQQFqIRAgEyAQNgIAIBBFDQEgACgCAA0CIABBfzYCACAPIBM2AgggDyAANgIEIA8gAEEIaiIfNgIAIAFFDQAgAUEIayIUKAIAQQFqIRAgFCAQNgIAIBBFDQEgASgC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AhAgCioCBCEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCCCEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCDCEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCECEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCFCEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCGCEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCHCEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCICEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCJCEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCioCKCEuIBAoAgggC2tBA00EQCAQQQhqIAtBBEEBQQEQ1gYgECgCECELCyAQKAIMIAtqIC44AAAgECALQQRqIgs2AhAgCjUCLCErIBAoAgggC2tBB00EQCAQQQhqIAtBCEEBQQEQ1gYgECgCECELCyAQKAIMIAtqICs3AAAgECALQQhqIgs2AhAgCjUCMCErIBAoAgggC2tBB00EQCAQQQhqIAtBCEEBQQEQ1gYgECgCECELCyAQKAIMIAtqICs3AAAgECALQQhqIgs2AhAgCjUCNCErIBAoAgggC2tBB00EQCAQQQhqIAtBCEEBQQEQ1gYgECgCECELCyAQKAIMIAtqICs3AAAgECALQQhqIgs2AhAg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NwLoASADQgQ3AvABIANCgICAgMAANwL4ASADQgA3AoACIANCBDcCiAIgAyAD/QACuAX9CwKoASADQagDakIANwMAIANBhAVqQQA2AgAgA0EBOgCcAiAD/QwAAAAAAAAAAAAAAAAAAAAA/QsDmAMgA/0MAAAAAAAAAAAAAAAAAAAAAP0LBMADIANCADcC/AQgA/0MAAAAAAAAAAAAAAAAAACAP/0LBKACIAP9DP//f////39/AAAAAP//f//9CwTAAiAD/Qz//39/AAAAAP//f////39//QsE0AIgA/0MAAAAAP//f////39/AAAAAP0LBOACIAP9DP//f////39/AAAAAP//f//9CwTwAiAD/QwAAAAAAAAAAAAAAAAAAAAA/QsChAMgA0H////7BzYCgAMgA/0MAAAAAAAAAAAAAAAAAAAAAP0LBLACIAP9DAAAAAAAAAAAAAAAAAAAAAD9CwC7BSAD/QwAAAAAAAAAAAAAAAAAAAAA/QsAkwUgA/0MAAAAAAAAAAAAAAAAAAAAAP0LAOcFIAP9DAAAAAAAAAAAAAAAAAAAAAD9CwCQBiAD/QwAAAAAAAAAAAAAAAAAAAAA/QsA/QUgA0EAOgDYAyADQv////sHNwPQAyAD/QwAAIA/AAAAAAAAAAAAAAAA/QsEsAMgA0GAgID8AzYClAMgA0GgAmoiCEHIAWogBkEPaigAADYAACADIAP9AAC4Bf0LANkDIANBADoA9AMgA0L////7BzcC7AMgA0GEBGogBEEPaigAADYAACADIAP9AACQBf0LAPUDIANBADoAkAQgA0L////7BzcDiAQgCEGAAmogBUEPaigAADYAACADIAP9AADkBf0LAJEEIANBADoArAQgA0L////7BzcCpAQgA0G8BGogA0GcBmooAAA2AAAgAyAD/QAAjQb9CwCtBCADQQA6AMgEIANC////+wc3A8AEIANB2ARqIANBiQZqKAAANgAAIAMgA/0AAPoF/QsAyQQgA0EAOgCIBSADQQA2AvgEIANCADcD8AQgA0GAAjsB7AQgA0EANgLoBCADQQA6AOQEIANC////+wc3AtwEIAMoAgghBiADQQxqIAMoAhgiCEEGaiIFEMcCIANBHGogBRDHAiADQSxqIAUQxwIgAygCRCIEIAMoAjxGBEAgA0E8aiAEQQFBBEEQENcGIAMoAkQh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IAFBDEEAIAUbciEOIApBDGogCiADKgIAIhdDAAAAAF4iBhsqAgAhGSAIQfwBaiEKIAhBpAJqIQsgCUEMaiEBA0AgCCAaIBv9+gH95gH9CwTAAUP//39/IRAgBiAXQwAAAABdcgRAQ///f38gCCoCyAEgFCAHspQgBhsgGZMgF5UiECAQQwAAAABdGyEQC0P//39/IRJD//9/fyERIAUgFkMAAAAAXXIEQEP//39/IA4qAgAgDSoCAJMgFpUiESARQwAAAABdGyERCyAEIBVDAAAAAF1yBEBD//9/fyAYIAKylCAIKgLEASAEGyAMKgIAkyAVlSISIBJDAAAAAF0bIRILIAggBDoA7AEgCCAFOgDkASAIIAY6ANwBAkACQAJAIBAgE15FDQAgESATXkUNACASIBNeDQELQQIgECARXiICIBIgESAQIAIbXRsiD0ECdCICIAFqIQMgCEGIAWogAmoiCSgCACEHIAhB2AFqIA9BA3RqLQAERQRAIAkgB0EBayIJNgIAIAMgAygCAEEBayIDNgIAIAkgCEGgAWogAmooAgAiCUgEQCADIAlKDQMMAgsgCEGIAmoiA0EIaiIJIAFBCGooAgA2AgAgCCABKQIANwOIAiACIANqIAc2AgAgCEGYAmoiAkEIaiAIQZABaigCADYCACALIAgpA4gCNwIAIAtBCGogCSgCADYCACAIIAgpAogBNwOYAiAIQeQAaiACEI4DDAILIAkgB0EBaiIHNgIAIAMgAygCACIDQQFqIgk2AgAgCSAIQbABaiACaigCACIJTARAIAhBiAJqIgdBCGoiCSAIQZABaigCADYCACAIIAgpAogBNwOIAiACIAdqIAM2AgAgCiABKQIANwIAIApBCGogAUEIaigCADYCACAIQfABaiICQQhqIAkoAgA2AgAgCCAIKQOIAjcD8AEgCEHkAGogAhCOAwwCCyAHIAlIDQELIAAgCP0AAhD9CwIAIABBMGogCEEQaiIBQTBqKQIANwIAIABBIGogAUEgav0AAgD9CwIAIABBEGogAUEQav0AAgD9CwIAIAhBsAJqJAAPCyAIKAKcASECIAj9AAKMASEbIAgoAogBIQcMAAsAC70JAg5/An0jAEGgAmsiAiQAAkACQAJAIAAoAkBBgICAgHhHBEAgAkEMaiAAIAFBAUP//39/EHQgAigCIEEERg0B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aikCADcCACABQQhqIANBCGr9AAIA/QsCAAsgJUEwaiQADwtBAAshJyAoQQhqIiggFmogF3EhFgwACwAL+wgDCn8BewF+IwAiAiEJIAJBQGpBQHEiBSQAAkAgACgCCCIDRQRAIABBADYCFEEAIQMMAQsgACgCBCIGKAIcIQcCQAJAAkACQAJAIAYoAjxB/////wNxIAdB/////wNxakECTQRAIABBADYCFCABQQA2AgggBSAGQTBq/QAEAP0LBDAgBSAGQSBq/QAEAP0LBCAgBSAGQRBq/QAEAP0LBBAgBSAG/QAEAP0LBAAgASgCAEUEQCABQeDwwgAQwwgLIABBDGohBCABKAIEIgIgBf0ABAD9CwQAIAJBEGogBf0ABBD9CwQAIAJBIGogBf0ABCD9CwQAIAJBMGogBf0ABDD9CwQAIAIgAigCHCIIQf////8HQf////8DIAhB/////3tLG3E2AhwgAigCPCIFQf////8DcSIIDQEMBQsgAyABKAIIIgRLBEAgASgCACAEIgJrIAMgAmsiCEkEQCABIAIgCEHAAEHAABDYBiABKAIIIQILIAEoAgQiCiACQQZ0aiEHIAhBAkkEfyACBSADIARBf3NqQQZ0IgsEQCAHQQAgC/wLAAsgCiACIANqIARrQQZ0akFAaiEHIAIgCGpBAWsLIQggB/0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgB0Ewav0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgB0Egav0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgB0EQav0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgBigCHCEHIAhBAWohAwsgAEEYaiEEIAEgAzYCCCAFQQE2AgAgBigCLCEDAkAgB0H/////A3FBAUYEQCABKAIEIgJBEGogBkEQav0ABAD9CwQAIAIgBikDADcDACACQQhqIAZBCGopAwA3AwAgAkH/////B0H/////AyACKAIcIgJB/////3tLGyACcTYCHAwBCyAAIAEgBCAAKAIQIAAoAhQgBigCDCAFQQAQggIgACgCCEUNAgsCQCAAKAIEIgIoAjxB/////wNxQQFHBEAgACABIAQgACgCECAAKAIUIAMgBUEBEIICDAELIAEoAghFDQMgAkEwav0ABAAhDCABKAIEIgMgAikDIDcDICADQShqIAJBKGopAwA3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IRMgBiASOAJkIAZC////+wc3A1AgBv0M//9/////f38AAAAA//9///0LBEAgBv0MAAAAAP//f////39/AAAAAP0LBDAgBv0M//9/fwAAAAD//3////9/f/0LBCAgBv0M//9/////f38AAAAA//9///0LBBAgBv0MAAAAAAAAAAAAAAAAAAAAAP0LBAAgBiAIKQMINwNoIAZB8ABqIAhBEGopAwA3AwAgBkH4AGogCEEYaikDADcDACAGQQA6AKgBIAZC////+wc3A6ABIAZBADYCjAEgBkIANwKEASAGIBM4AoABIAZC////+wc3ArwBIAZBADoAxAEgBkL////7BzcD2AEgBkEAOgDgASAGQv////sHNwL0ASAGQQA6APwBIAZBuAFqIAhB/ABqKAAANgAAIAYgCP0AAG39CwCpASAGQdQBaiAIQekAaigAADYAACAGIAj9AABa/QsAxQEgBkHwAWogCEHWAGooAAA2AAAgBiAI/QAAR/0LAOEBIAZBADoAmAIgBkL////7BzcDkAIgBkEAOgC0AiAGQT42ArgCIAZBgAI7AbwCIAZC////+wc3AqwCIAZBjAJqIAhBwwBqKAAANgAAIAYgCP0AADT9CwD9ASAGIAj9AAAh/QsAmQIgBkGoAmogCEEwaigAADYAACAIQZABaiQAIAdB8ANqIAtBCGooAgA2AgAgB0GMBGogDUEIaigCADYCACAHIAspAgA3A+gDIAcgDSkCADcChAQgAwRAIAdB0AVqIgMgBkHAAvwKAAAgByAFOALMBSAHIAQ4AsgFIAMgB0HIBWopAgA3AxAgAyADLQC5AkEBcjoAuQIgBiADQcAC/AoAAAsgB0EwaiAHQYADakG9AvwKAAAgCSgCACEGIAcvAb4FIQsgBy0AvQUhAyACIAIoAgBBAWs2AgAgCSAGQQFrIgI2AgAgAg0AIAdBLGoQqQ0LIAEgASgCAEEBazYCACAMIAwoAgBBAWsiATYCACABRQRAIAdBIGoQqQ0LIAAgACgCAEEBazYCACAKIAooAgBBAWsiADYCACAARQRAIAdBFGoQqQ0LQQAhAiADQQJHBEAgB0HcBWogB0EwakG9AvwKAABB4AJBEBCRDiIARQ0EIABBADYCECAAQoGAgIAQNwMAIABBFGogB0HQBWpByQL8CgAAIAAgCzsB3gIgACADOgDdAiAA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AAAAAAAA/QsAXSAE/QwAAAAAAAAAAAAAAAAAAAAA/QsASiAE/QwAAAAAAAAAAAAAAAAAAAAA/QsANyAE/QwAAAAAAAAAAAAAAAAAAAAA/QsAJCAEQYABaiILIAVB9AJqIgwQrgQgA0HgAGogC0EIaiINKAIANgIAIAMgBCkCgAE3AlggBCoCjAEhDyALIAwQrgQgBEEcaiANKAIANgIAIAQgBCkCgAE3AhQgBCoCjAEhECADIA84AmQgA0L////7BzcDUCAD/Qz//3////9/fwAAAAD//3///QsEQCAD/QwAAAAA//9/////f38AAAAA/QsEMCAD/Qz//39/AAAAAP//f////39//QsEICAD/Qz//3////9/fwAAAAD//3///QsEECAD/QwAAAAAAAAAAAAAAAAAAAAA/QsEACADIAQpAwg3A2ggA0HwAGogBEEQaikDADcDACADQfgAaiAEQRhqKQMANwMAIANBADoAqAEgA0L////7BzcDoAEgA0EANgKMASADQgA3AoQBIAMgEDgCgAEgA0L////7BzcCvAEgA0EAOgDEASADQv////sHNwPYASADQQA6AOABIANC////+wc3AvQBIANBADoA/AEgA0G4AWogBEH8AGooAAA2AAAgAyAE/QAAbf0LAKkBIANB1AFqIARB6QBqKAAANgAAIAMgBP0AAFr9CwDFASADQfABaiAEQdYAaigAADYAACADIAT9AABH/QsA4QEgA0EAOgCYAiADQv////sHNwOQAiADQQA6ALQCIANBNzYCuAIgA0GAAjsBvAIgA0L////7BzcCrAIgA0GMAmogBEHDAGooAAA2AAAgAyAE/QAANP0LAP0BIAMgBP0AACH9CwCZAiADQagCaiAEQTBqKAAANgAAIARBkAFqJAAgBUHwA2ogCEEIaigCADYCACAFQYwEaiAKQQhqKAIANgIAIAUgCCkCADcD6AMgBSAKKQIANwKEBCAFQTBqIANBvQL8CgAAIAYoAgAhBCAFLwG+BSEIIAUtAL0FIQMgAiACKAIAQQFrNgIAIAYgBEEBayICNgIAIAINACAFQSxqEKkNCyABIAEoAgBBAWs2AgAgCSAJKAIAQQFrIgE2AgAgAUUEQCAFQSBqEKkNCyAAIAAoAgBBAWs2AgAgByAHKAIAQQFrIgA2AgAgAEUEQCAFQRRqEKkNC0EA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kAlqIQIgDv0MBAAAAAQAAAAEAAAABAAAAP2uASEOIANBBGsiAw0ACyABIARGDQELIAkgBkGkAmxqIQIgCCAKayIJQQFrIQRBACEDA0AgAkGAgICAeDYCACACQQRqIAxBASADIARGIgEbNgIAIAJBCGogCyAKIANBAWoiA2ogARs2AgAgAkGkAmohAiADIAlHDQALIAMgBmohBgsgACAHNgIEIABBATYCACAAIAY2AhAgBUEgaiQAC6MFAQp/AkACQCAAKAIIIgQgAU8EQCAAIAE2AgggASAERwRAIAQgAWshBCAAKAIEIAFBBHRqIQMDQCADKAIAIgAEQCADQQRqKAIAIABBAnRBBBDoDgsgA0EQaiEDIARBAWsiBA0ACwsgAigCACIARQ0BIAIoAgQgAEECdEEEEOgODwsgAigCDCEGIAIoAgghCCACKAIEIQogAigCACELIAQhBSABIARrIgkgACgCACAEa0sEQCAAIAQgCUEEQRAQ1wYgACgCCCEFCyAAKAIEIAVBBHRqIQMCQCAJQQJJDQAgCEECdCEHIAhB/////wNLDQIgB0H8////B0sNAiAHBEAgBEF/cyABaiECIAUgCWpBAWshBUEEIQwDQCAHQQQQkQ4iAUUNBCAHBEAgASAKIAf8CgAACyADQQxqIAY2AgAgA0EIaiAINgIAIANBBGogATYCACADIAg2AgAgA0EQaiEDIAJBAWsiAg0ACwwBCyABIARBf3NqIgFBA3EhAiAJQQJrQQNPBEAgAUF8cSEBA0AgA0KAgICAwAA3AgAgA0E8aiAGNgIAIANBOGpBADYCACADQTBqQoCAgIDAADcCACADQSxqIAY2AgAgA0EoakEANgIAIANBIGpCgICAgMAANwIAIANBHGogBjYCACADQRhqQQA2AgAgA0EQakKAgICAwAA3AgAgA0EMaiAGNgIAIANBCGpBADYCACADQUBrIQMgAUEEayIBDQALCyACBEADQCADQoCAgIDAADcCACADQQxqIAY2AgAgA0EIakEANgIAIANBEGohAyACQQFrIgINAAsLIAUgCWpBAWshBQsgAyAGNgIMIAMgCDYCCCADIAo2AgQgAyALNgIAIAAgBUEBajYCCAsPCyAMIAdBgPzBABDXDQALvQUBC38jAEEgayICJAACQCABKAIEIgNFBEAgAEGAgICAeDYCAAwB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A0AgAyAGTw0CIAcgA0GAA2xqIgwoAvACIgMgAkcNAAsgDEHwAmogCTYCAAwBCyAMQQhqIAk2AgALIAggC08NACAOQiCIpyEJIAIgBCAIQQR0aiIIKAIMIgNHBEADQCADIAZPDQIgByADQYADbGoiCCgC9AIiAyACRw0ACyAIQfQCaiAJNgIADAELIAhBDGogCTYCAAsgCiAFQYAD/AoAACAFIAcgBkEBayIDQYADbGpBgAP8CgAAIAEgAzYCFAJAIAIgA08NACAHIAJBgANsaikD+AIiDaciASALTw0AIA1CIIinIQYCQCAEIAFBBHRqIgUoAggiASADRwRAA0AgASADTw0CIAMgByABQYADbGoiBSgC8AIiAUcNAAsgBUHwAmogAjYCAAwBCyAFQQhqIAI2AgALIAYgC08NACAEIAZBBHRqIgQoAgwiASADRwRAA0AgASADTw0CIAMgByABQYADbGoiBCgC9AIiAUcNAAsgBEH0AmogAjYCAAwBCyAEQQxqIAI2AgALIAAgCkHwAvwKAAALIApBgANqJAALvgQBCH8jAEEQayIDJAAgAyABNgIEIAMgADYCACADQqCAgIAONwIIAn8CQAJAAkAgAigCECIJBEAgAigCFCIADQEMAgsgAigCDCIARQ0BIAIoAggiASAAQQN0aiEEIABBAWtB/////wFxQQFqIQYgAigCACEAA0ACQCAAQQRqKAIAIgVFDQAgAygCACAAKAIAIAUgAygCBCgCDBEFAEUNAEEBDAULQQEgASgCACADIAFBBGooAgARAwANBBogAEEIaiEAIAFBCGoiASAERw0ACwwCCyAAQRhsIQogAEEBa0H/////AXFBAWohBiACKAIIIQQgAigCACEAA0ACQCAAQQRqKAIAIgFFDQAgAygCACAAKAIAIAEgAygCBCgCDBEFAEUNAEEBDAQLQQAhB0EAIQgCQAJAAkAgBSAJaiIBQQhqLwEAQQFrDgIBAgALIAFBCmovAQAhCAwBCyAEIAFBDGooAgBBA3RqLwEEIQgLAkACQAJAIAEvAQBBAWsOAgECAAsgAUECai8BACEHDAELIAQgAUEEaigCAEEDdGovAQQhBwsgAyAHOwEOIAMgCDsBDCADIAFBFGooAgA2AghBASAEIAFBEGooAgBBA3RqIgEoAgAgAyABKAIEEQMADQMaIABBCGoh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CANAIAEoAighAiABQQA2AiggAkEBcQRAIAAgAjYCACAAIAf9AAIA/QsCBCAAQRRqIAdBEGr9AAIA/QsCACAAQSRqIAdBIGooAgA2AgAMBAsgASADQQFqIgM2AlQgCCgCDEEBayADTQRAIAUgCCgCEEECa08NAyABQQA2AlQgASAFQQFqIgU2AlhBACEDCyAEQTBqIgIgCCADIAUQnQIgASACQdAA/AoAACAJIAZBEGr9AAIA/QsDACAKIAZBIGooAgA2AgAgASgCACECIAFBADYCACAEIAb9AAIA/QsDCCACQQFxRQ0ACwsgACACNgIAIAAgBP0AAwj9CwIEIABBFGogCf0AAwD9CwIAIABBJGogCigCADYCAAwBCyAAQQA2AgALIARBgAFqJAALwwMCAX8JfUP//39/IQdD//9//yEIAkAgASgCCEUEQEP//3//IQZD//9//yEFQ///f38hA0P//39/IQQMAQtD//9//yEGQ///f/8hBUP//39/IQND//9/fyEEAkACQCABKAIEIgIoAjxB/////wNxIAIoAhxB/////wNxag4CAgABCyACKgIYIQggAioCFCEGIAIqAhAhBSACKgIIIQcgAioCBCEDIAIqAgAhBAwBCyACKgIYIgYgAioCOCIFIAUgBl8bIQggAioCFCIGIAIqAjQiBSAFIAZfGyEGIAIqAhAiBSACKgIwIgMgAyAFXxshBSACKgIIIgMgAioCKCIEIAMgBF8bIQcgAioCBCIDIAIqAiQiBCADIARfGyEDIAIqAgAiBCACKgIgIgkgBCAJXxshBAsgACAHIAEqAmwiB0MAAAA/lCIJkiAHlY78ADYCCCAAIAMgASoCaCIDQwAAAD+UIgqSIAOVjvwANgIEIAAgBCABKgJkIgRDAAAAP5QiC5IgBJWO/AA2AgAgACAIIAmTIAeVjvwAQQFqNgIUIAAgBiAKkyADlY78AEEBajYCECAAIAUgC5MgBJWO/ABBAWo2AgwLiAMBB38jAEEQayIEJAACQAJAAkACQCABKAIEIgIEQCABKAIAIQYgAkEDcSEFAkAgAkEESQRAQQAhAgwBCyAGQRxqIQMgAkF8cSEIQQAhAgNAIAMoAgAgA0EIaygCACADQRBrKAIAIANBGGsoAgAgAmpqamohAiADQSBqIQMgCCAHQQRqIgdHDQALCyAFBEAgB0ED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IAMoAvgFIAMoAvwFTg0AQQAhBSADQdQHagwBCyADIAUgB2oiBSAHTzYC1AcgA0H8DmoLIAU2AgAgAygC/A4hCCADKALUByEFCyADKAKABkEBRgRAQQAhBEEAIQcgAygChAYEQCADKAKoBiIGIAMoAqQGIgdrQQAgBiAHShshBwsgAygCrAYEQCADKALQBiIEIAMoAswGIgZrQQAgBCAGShshBAsCfwJAIAMoAtQGRQ0AIAMoAogHIAMoAowHTg0AQQAhBCADQdQHagwBCyADIAQgB2oiBCAHTzYC1AcgA0H8DmoLIAQ2AgAgAygC/A4hBiADKALUByEECwJ/AkAgAygCkAcEQCADKALAByADKALEB04gBXEgBHENAUEAIQUgA0HUB2oMAgsgBCAFcUEBcQ0AQQAhBSADQdQHagwBCyAGIAhqIQUgA0H8DmoLIAU2AgALQQRBfyAJIAtqIgQgBCAJSRsgCyAQG0EBaiIEQX8gBBsiBCAEQQRNGyIGQQJ0IQUgBEH/////A0sNAyAFQfz///8HSw0DQQQhDCAFQQQQkQ4iBEUNAyAEIA82AgBBASEHIANBATYC0AcgAyAENgLMByADIAY2AsgHIANB1AdqIgUgA0EkakGkB/wKAAAgA0EQaiAFEGogAygCEEEBcUUNBCADKAIUIQxBBCELA0AgAygCyAcgB0YEQCADKAL0ByADKALwB2tBACADKALsBxshDyADKALcByADKALYB2shECADKALUByERAkAgAygChAhBA0YNACADKALICSIEQQJHBEBBASEFQQAhCEEAIQlBASEGIARBAXEEQEEAIQZBACEEIAMoAswJBEAgAygC8AkiBCADKALsCSIJa0EAIAQgCUobIQQLIAMoAvQJBEAgAygCmAoiBiADKAKUCiIJa0EAIAYgCUobIQYLAn8CQCADKAKcCkUNACADKALQCiADKALUCk4NAEEAIQYgA0H8DmoMAQsgAyAEIAZqIgYgBE82AvwOIANB+A5qCyAGNgIAIAMoAvgOIQkgAygC/A4hBgsgAygC2ApBAUYEQEEAIQVBACEEIAMoAtwKBEAgAygCgAsiBCADKAL8CiIIa0EAIAQgCEobIQQLIAMoAoQLBEAgAygCqAsiBSADKAKkCyIIa0EAIAUgCEobIQULAn8CQCADKAKsC0UNACADKALgCyADKALk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AhxB/////wNxag4CAAECCyADQv////v///+/fzcDECAD/Qz//39///9/f///f3///3///QsEAAwCCyADQRRqIAFBGGooAgA2AgAgAyABKQMANwMAIAMgASkCEDcCDCADIAFBCGooAgA2AggMAQsgAyABKgIYIgQgASoCOCIFIAQgBWAbOAIUIAMgASoCFCIEIAEqAjQiBSAEIAVgGzgCECADIAEqAhAiBCABKgIwIgUgBCAFYBs4AgwgAyABKgIIIgQgASoCKCIFIAQgBV8bOAIIIAMgASoCBCIEIAEqAiQiBSAEIAVfGzgCBCADIAEqAgAiBCABKgIgIgUgBCAFXxs4AgALIAAgAyACELsDIANBIGokAAu2AgIFfwF+IwBBQGoiAiQAIAEoAgBBgICAgHhGBEAgASgCDCEEIAJBHGoiBUEIaiIGQQA2AgAgAkKAgICAEDcCHCACQShqIgNBCGogBCgCACIEQQhqKQIANwMAIANBEGogBEEQaikCADcDACACIAQpAgA3AyggBUHYicQAIAMQuAMaIAJBGGogBigCACIDNgIAIAIgAikCHCIHNwMQIAFBCGogAzYCACABIAc3AgALIAEpAgAhByABQoCAgIAQNwIAIAJBCGoiAyABQQhqIgEoAgA2AgAgAUEANgIAIAIgBzcDAEEMQQQQkQ4iAUUEQEEEQQxB+MrEACgCACIAQcwIIAAbEQAAAAsgASACKQMANwIAIAFBCGogAygCADYCACAAQcyNxAA2AgQgACABNgIAIAJBQGskAAuRAgEFfyMAQRBrIgUkAAJAAkACQCAARQ0AIABBCGsiBigCAEEBaiEDIAYgAzYCACADRQ0BIAAoAgAiA0F/Rg0CIAAgA0EBajYCACAFIAY2AgwgBSAANgIIIAUgAEEEajYCBCACRQ0AIAJBCGsiAygCACIHQQFqIQQgAyAENgIAIARFDQEgAigCAA0CIAJBfzYCACABIAAoAkwiBEkEQCACQQRqIAAoAkggAUH0AGxqQfQA/AoAACAAKAJMIQQLIAJBADYCACADIAc2AgAgBigCACECIAAgACgCAEEBazYCACAGIAJBAWsiADYCACAARQRAIAVBDGoQ5AsLIAVBEGokACABIARJDwsQgw8LAAsQhA8AC94CAgV9A3sgACABKgIEIgVDq6qqPpQgASoCECIDQ6uqqj6UkiABKgIcIgRDq6qqPpSSIgI4AgQgAUEgaiAB/V0CFCIH/VYCAAAhCCAAIAH9XQIIIgn9DKuqqj6rqqo+q6qqPquqqj795gEgByABKgIAIgb9IAH9DKuqqj6rqqo+q6qqPquqqj795gH95AEgCP0Mq6qqPquqqj6rqqo+q6qqPv3mAf3kASIH/R8AOAIIIAAgB/0fATgCACAAIAcgCP3lASIIIAj95gEiCP0fASACIASTIgQgBJSSIAj9HwCSIgQgByABQRRqIAn9VgIAAP3lASIIIAj95gEiCP0fASACIAOTIgMgA5SSIAj9HwCSIgMgByAJIAb9IAH95QEiByAH/eYBIgf9HwEgAiAFkyICIAKUkiAH/R8AkiICQwAAAAAgAkMAAAAAXhsiAiACIANdGyICIAIgBF0bkTgCDAvvAQILfQF/IAIqAgQgASoCFJMiCiABKgIIIgOUIAIqAgggASoCGJMiCyABKgIEIgWUkyIGIAaSIQYgCyABKgIAIgiUIAIqAgAgASoCEJMiBCADlJMiByAHkiEHAkAgBCABKgIMIgwgBpQgAyAHlCAFIAQgBZQgCiAIlJMiBCAEkiIElJOSkiINIAAqAgAiCYxdDQAgCSANXQ0AIAogDCAHlCAIIASUIAMgBpSTkpIiAyAAKgIEIgmMXQ0AIAMgCV4NACALIAwgBJQgBSAGlCAIIAeUk5KSIgMgACoCCCIFXkUgAyAFjF1Bf3NxIQ4LIA4L/wECCX0BfyACKgIAIgMgA5QgAioCBCIGIAaUkiACKgIIIgQgBJSSkSEFIAMgBZUiByABKgIYIgOUIAYgBZUiCCABKgIclJIgBCAFlSIJIAEqAiCUkiEKIAFBGGohAgJAIAcgASoCACIElCAIIAEqAgSUkiAJIAEqAgiUkiILIAcgASoCDCIFlCAIIAEqAhCUkiAJIAEqAhSUkiIGXkUEQCABQQxqIAIgBiAKXiIMGyECIAUgAyAMGyEDDAELIAogC11FDQAgBCEDIAEhAgsgACACKgIIIAkgASoCJCIElJI4AgggACACKgIEIAggBJSSOAIEIAAgAyAHIASUkjgCAAunAgICfwR9AkACQCAAvCIBQYCAgAROBEAgAUH////7B0sNAUGBfyECQwAAAAAhACABQYCAgPwDRg0BDAILIABDAAAAAFsEQEMAAIC/IAAgAJSVDwsgAUEATgRAIABDAAAATJS8IQFB6H4hAgwCCyAAIACTQwAAAACVIQALIAAPCyABQY32qwJqIgFB////A3FB84nU+QNqvkMAAIC/kiIAIABDAAAAP5SUIQMgACAAQwAAAECSlSIFIAWUIgYgBpQhBCAAIAAgA5O8QYBgcb4iAJMgA5MgBSADIAYgBEPu6ZE+lEOqqio/kpQgBCAEQyaeeD6UQxPOzD6SlJKSlJIhAyAAQwCwuD+UIANDALC4P5QgAyAAkkPUmji5lJKSIAFBF3YgAmqykguaAgIBfwF9IAEqAgAhAyAAKAIAIgIoAgghACACKAIAIABrQQNNBEAgAiAAQQRBAUEBENYGIAIoAgghAAsgAigCBCAAaiADOAAAIAIgAEEEaiIANgIIIAEqAgQhAyACKAIAIABrQQNNBEAgAiAAQQRBAUEBENYGIAIoAgghAAsgAigCBCAAaiADOAAAIAIgAEEEaiIANgIIIAEqAgghAyACKAIAIABrQQNNBEAgAiAAQQRBAUEBENYGIAIoAgghAAsgAigCBCAAaiADOAAAIAIgAEEEaiIANgIIIAEqAgwhAyACKAIAIABrQQNNBEAgAiAAQQRBAUEBENYGIAIoAgghAAsgAiAAQQRqNgIIIAIoAgQgAGogAzgAAEEAC5UCAQJ/IAAoAgAhACABKAIAQQFGBEAgASgCCCECIAEoAgQhAyAAKAIIIgEgACgCAEYEQCAAIAFBAUEBQQEQ1gYgACgCCCEBCyAAKAIEIAFqQQE6AAAgACABQQFqIgE2AgggACgCACABa0EDTQRAIAAgAUEEQQFBARDWBiAAKAIIIQELIAAoAgQgAWogAzYAACAAIAFBBGoiATYCCCAAKAIAIAFrQQNNBEAgACABQQRBAUEBENYGIAAoAgghAQsgACABQQRqNgIIIAAoAgQgAWogAjYAAEEADwsgACgCCCIBIAAoAgBGBEAgACABQQFBAUEBENYGIAAoAgghAQsgACABQQFqNgIIIAAoAgQgAWpBADoAAEEAC5sJAQl/IwBBkBBrIgMkAAJAAkACQCAABEAgAEEIayIHKAIAQQFqIQIgByACNgIAIAJFDQEgACgCACICQX9GDQIgACACQQFqNgIAIAMgBzYCjAggAyAANgKICCADIABBBGo2AoQIIwBBsBhrIgIkACACIAE2AgggAkEMaiEEAkACQCACQQhqKAIAIggQGSIBQQBIDQACQCABRQRAQQEhBgwBC0EBIQUgAUEBEJEOIgZFDQELEB8iCRARIgoQFyEFIApBhAFPBEAgChACCyAFIAggBhAYIAVBhAFPBEAgBRACCyAJQYQBTwRAIAkQAgsgBCAIEBk2AgggBCAGNgIEIAQgATYCAAwBCyAFIAFBiM7CABDXDQALIAIoAhAhBCACIAIoAhQ2AqwQIAIgBDYCqBAgAkGwEGoiASACQagQahAgIAIoArAQIQYCQAJAIAIoAvQXIgVBAkcEQCACQaAIaiIEQQRyIAFBBHJBwAf8CgAAIARB+AdqIgggAUH4B2opAwA3AwAgBEHoB2oiCSABQegHav0AAwD9CwMAIARB2AdqIgogAUHYB2r9AAMA/QsDACACIAL9AAP4F/0LA+gPIAIgBjYCoAggAkHQAGoiASAEQcQH/AoAACACQRhqIgRBMGogCCkDADcDACAEQSBqIgYgCf0AAwD9CwMAIARBEGoiBCAK/QADAP0LAwAgAiAC/QAD6A/9CwMYIANBDGogAkGIB2ooAgA2AgAgAyACKQOABzcCBCADQbgHaiACQYwHakHEAPwKAAAgA0HgA2ogAUEwav0ABAD9CwQAIANB0ANqIAFBIGr9AAQA/QsEACADQcADaiABQRBq/QAEAP0LBAAgAyAC/QAEUP0LBLADIANB8ANqIAJBkAFqQaAB/AoAACADQfQGaiACQdAHakHEAPwKAAAgA0EQaiACQbACakGgA/wKAAAgA0HkBmogBv0AAwD9CwIAIANB1AZqIAT9AAMA/QsCACADIAL9AAMY/QsCxAYgA0GQBWogAkHQBWpB2AD8CgAAIANB6AVqIAJBqAZqQdgA/AoAACADIAU2AsAGIANBATYCACACKAIMIgEEQCACKAIQIAFBARDoDgsgAigCCCIBQYMBSw0BDAILIAJBAjYC5A8gAiAGNgKgCAJAIAJBoAhqIgEoAsQHQQJHBEAgARCCCiABQUBrEO0JIAFBgAdqEM4HIAFB4AFqEOsHIAFBxAdqEKMIIAFBgAVqEMkJIAFB2AVqELMIDAELIAEoAgAQzQkLIANBAjYCACACKAIMIgEEQCAEIAFBARDoDgsgAigCCCIBQYQBSQ0BCyABEAILIAJBsBhqJAAgACAAKAIAQQFrNgIAIAcgBygCAEEBayIANgIAIABFBEAgA0GMCGoQpg0LQQAhACADKAIAQQJHBEAgA0GQCGogA0GACPwKAABBoAhBEBCRDiIARQ0EIABBADYCECAAQoGAgIAQNwMAIABBFGogA0GECGpBjAj8CgAAIABBEGohAAsgA0GQEGokACAADwsQgw8LAAsQhA8AC0EQQaAIQfjKxAAoAgAiAEHMCCAAGxEAAAALiwIBCX8gACIHKAIIIgIgAUkEQCACIQMgASACayIFIAAoAgAgAmtLBEAgACACIAVBBEEEENgGIAAoAgghAwsgBygCBCADQQJ0aiEAAkAgBUECSQRAIAAhBAwBCwJAAkAgASACQX9zaiIIQQRJBEAgACEEQQEhCQwBCyAIQXxxIgZBAXIhCSAAIAZBAnRqIQQgBiEKA0AgAP0MAAAAAAAAAAAAAAAAAAAAAP0LAgAgAEEQaiEAIApBBGsiCg0ACyAGIAhGDQELIAIgCWogAWshAANAIARBADYCACAEQQRqIQQgAEEBaiIADQALCyADIAVqQQFrIQMLIARBADYCACADQQFqIQELIAcgATYCCAu2AgICfQZ/IAAoAggiA0UEQEP//39/DwsgACgCBCEFIANBAXEhBgJAIANBAUYEQEEAIQND//9/fyEBDAELIAVBxABqIQAgA0F+cSEHQQAhA0P//39/IQEDQCAAQShrKAIAIABBJGsoAgAiBCgCCEEBa0F4cWpBCGogBCgCqAERCwAhAiAAKAIAIQQgAEEEaygCACEIIABByABqIQAgASABIAIgASACXRsgAiACXBsiAiACIAggBCgCCEEBa0F4cWpBCGogBCgCqAERCwAiASABIAJeGyABIAFcGyEBIAcgA0ECaiIDRw0ACwsgBgRAIAUgA0EkbGoiA0EgaigCACEAIAEgASADQRxqKAIAIAAoAghBAWtBeHFqQQhqIAAoAqgBEQsAIgIgASACXRsgAiACXBshAQsgAQu2AgIDfQZ/IAAoAggiBEUEQEP//39/DwsgACgCBCEGIARBAXEhBwJAIARBAUYEQEEAIQRD//9/fyEBDAELIAZBxABqIQAgBEF+cSEIQQAhBEP//39/IQEDQCAAQShrKAIAIABBJGsoAgAiBSgCCEEBa0F4cWpBCGogBSgCrAERCwAhAiAAKAIAIQUgAEEEaygCACEJIABByABqIQAgCSAFKAII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AkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgACfyAAKAIMIAFNBEAgACACNgIAIAQgBTYCAEEADAELIAAoAgggAUHUAWxqIgEpAighBiABQTBqKAIAIQEgACACNgIAIANBCGoiAiABNgIAIAQgBTYCACADIAY3AwBBGEEEEJEOIgBFDQQgAEEANgIIIABCgYCAgBA3AgAgACADKQMANwIMIABBFGogAigCADYCACAAQQhqCyEAIANBEGokACAADwsQgw8LAAsQhA8AC0EEQRhB+MrEACgCACIAQcwIIAAbEQAAAAv4AQIDfwZ9AkAgASgCCEUEQAwBCyABKAIEIgNBACACKgIIIgYgAyoCGF8bQQAgAioCBCIHIAMqAhRfG0EAIAIqAgAiCCADKgIQXxtBACACKgIUIgkgAyoCCGAbQQAgAioCECIKIAMqAgRgG0EAIAIqAgwiCyADKgIAYBshBSADKAI8Qf////8DcUUNACADKgIgIAtfIAMqAiQgCl9xIAMqAiggCV9xIAMqAjAgCGBxIAMqAjQgB2BxIAMqAjggBmBxIQQgA0EgaiEDCyAAIAU2ApABIAAgATYCiAEgACACNgKMASAAIAQ2AoQBIAAgAzYCBCAAQQA2AgALqwIBAn0CQAJAAkAgASgCCEUNACABKAIEIgEoAjxB/////wNxIAEoAhxB/////wNxag4CAAECCyAAQv////v///+/fzcCECAA/Qz//39///9/f///f3///3///QsCAA8LIAAgASkCADcCACAAIAEpAhA3AgwgAEEIaiABQQhqKAIANgIAIABBFGogAUEYaigCADYCAA8LIAAgASoCGCICIAEqAjgiAyACIANgGzgCFCAAIAEqAhQiAiABKgI0IgMgAiADYBs4AhAgACABKgIQIgIgASoCMCIDIAIgA2AbOAIMIAAgASoCCCICIAEqAigiAyACIANfGzgCCCAAIAEqAgQiAiABKgIkIgMgAiADXxs4AgQgACABKgIAIgIgASoCICIDIAIgA18bOAIAC/wBAgN/AX4jAEEQayIEJAACQAJAAkAgAARAIABBCGsiBSgCAEEBaiEDIAUgAzYCACADRQ0BIAAoAgAiA0F/Rg0CIAAgA0EBajYCACAEIAU2AgwgBCAANgIIIAQgAEEIaiIDNgIEIAJBBU0EQCADIAG9IganIAZCIIin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AWohASADIAE2AgAgAUUNASAAKAIAIgFBf0YNAiAAIAFBAWo2AgAgACgCBCIFQZABaigCACEGIAUpAogBIQcgACABNgIAIAJBCGoiASAGNgIAIAMgBDYCACACIAc3AwBBGEEEEJEOIgBFDQMgAEEANgIIIABCgYCAgBA3AgAgACACKQMANwIMIABBFGogASgCADYCACACQRBqJAAgAEEIag8LEIMPCwALEIQPAAtBBEEYQfjKxAAoAgAiAEHMCCAAGxEAAAAL6wECBn8BfiMAQRBrIgIkAAJAAkACQCAABEAgAEEIayIDKAIAIgRBAWohASADIAE2AgAgAUUNASAAKAIAIgFBf0YNAiAAIAFBAWo2AgAgACgCBCIFQZwBaigCACEGIAUpApQBIQcgACABNgIAIAJBCGoiASAGNgIAIAMgBDYCACACIAc3AwBBGEEEEJEOIgBFDQMgAEEANgIIIABCgYCAgBA3AgAgACACKQMANwIMIABBFGogASgCADYCACACQRBqJAAgAEEIag8LEIMPCwALEIQPAAtBBEEYQfjKxAAoAgAiAEHMCCAAGxEAAAAL2AECAX8BfSAAKgIAIQMgASgCACICKAIIIQEgAigCACABa0EDTQRAIAIgAUEEQQFBARDWBiACKAIIIQELIAIoAgQgAWogAzgAACACIAFBBGoiATYCCCAAKgIEIQMgAigCACABa0EDTQRAIAIgAUEEQQFBARDWBiACKAIIIQELIAIoAgQgAWogAzgAACACIAFBBGoiATYCCCAAKgIIIQMgAigCACABa0EDTQRAIAIgAUEEQQFBARDWBiACKAIIIQELIAIgAUEEajYCCCACKAIEIAFqIAM4AABBAAvBAQIFfwF+IwBBIGsiAiQAQQQgACgCACIFQQF0IgQgBEEETRsiBK1CDH4iB0IgiEIAUgRAQQBBACABENcNAAsCQCAHpyIGQfz///8HTQR/IAIgBQR/IAIgBUEMbDYCHCACIAAoAgQ2AhRBBAVBAAs2AhggAkEIakEEIAYgAkEUahDiCSACKAIIQQFHDQEgAigCECEDIAIoAgwFQQALIAMgARDXDQALIAIoAgwhASAAIAQ2AgAgACABNgIEIAJBIGokAAvBAQIFfwF+IwBBIGsiAiQAQQQgACgCACIFQQF0IgQgBEEETRsiBK1CGH4iB0IgiEIAUgRAQQBBACABENcNAAsCQCAHpyIGQfz///8HTQR/IAIgBQR/IAIgBUEYbDYCHCACIAAoAgQ2AhRBBAVBAAs2AhggAkEIakEEIAYgAkEUahDiCSACKAIIQQFHDQEgAigCECEDIAIoAgwFQQALIAMgARDXDQALIAIoAgwhASAAIAQ2AgAgACABNgIEIAJBIGokAAvDAQIFfwF+IwBBIGsiAiQAQQQgACgCACIFQQF0IgQgBEEETRsiBK1CgAN+IgdCIIhCAFIEQEEAQQAgARDXDQALAkAgB6ciBkHw////B00EfyACIAUEfyACIAVBgANsNgIcIAIgACgCBDYCFEEQBUEACzYCGCACQQhqQRAgBiACQRRqEOIJIAIoAghBAUcNASACKAIQIQMgAigCDAVBAAsgAyABENcNAAsgAigCDCEBIAAgBDYCACAAIAE2AgQgAkEgaiQAC8EBAgV/AX4jAEEgayICJABBBCAAKAIAIgVBAXQiBCAEQQRNGyIErUIUfiIHQiCIQgBSBEBBAEEAIAEQ1w0ACwJAIAenIgZB/P///wdNBH8gAiAFBH8gAiAFQRRsNgIcIAIgACgCBDYCFEEEBUEACzYCGCACQQhqQQQgBiACQRRqEOIJIAIoAghBAUcNASACKAIQIQMgAigCDAVBAAsgAyABENcNAAsgAigCDCEBIAAgBDYCACAAIAE2AgQgAkEgaiQAC8EBAgV/AX4jAEEgayICJABBBCAAKAIAIgVBAXQiBCAEQQRNGyIErUIkfiIHQiCIQgBSBEBBAEEAIAEQ1w0ACwJAIAenIgZB/P///wdNBH8gAiAFBH8gAiAFQSRsNgIcIAIgACgCBDYCFEEEBUEACzYCGCACQQhqQQQgBiACQRRqEOIJIAIoAghBAUcNASACKAIQIQMgAigCDAVBAAsgAyABENcNAAsgAigCDCEBIAAgBDYCACAAIAE2AgQgAkEgaiQAC+IBAQV/IwBBEGsiAiQAAkACQAJAIAAEQCAAQRBrIgMoAgAiBEEBaiEBIAMgATYCACABRQ0BIAAoAgANAiAAKAIQIQVBACEBIABBADYCECADIAQ2AgAgBUEBcQRAIAJBCGoiAyAAQRxqKAIANgIAIAIgACkCFDcDAEEYQQQQkQ4iAEUNBCAAQQA2AgggAEKBgICAEDcCACAAIAIpAwA3AgwgAEEUaiADKAIANgIAIABBCGohAQsgAkEQaiQAIAEPCxCDDwsACxCEDwALQQRBGEH4ysQAKAIAIgBBzAggABsRAAAAC8MBAgV/AX4jAEEgayICJABBBCAAKAIAIgVBAXQiBCAEQQRNGyIErUKoAX4iB0IgiEIAUgRAQQBBACABENcNAAsCQCAHpyIGQfz///8HTQR/IAIgBQR/IAIgBUGoAWw2AhwgAiAAKAIENgIUQQQFQQALNgIYIAJBCGpBBCAGIAJBFGoQ4gkgAigCCEEBRw0BIAIoAhAhAyACKAIMBUEACyADIAEQ1w0ACyACKAIMIQEgACAENgIAIAAgATYCBCACQSBqJAALwQECBX8BfiMAQSBrIgIkAEEEIAAoAgAiBUEBdCIEIARBBE0bIgStQjB+IgdCIIhCAFIEQEEAQQAgARDXDQALAkAgB6ciBkH8////B00EfyACIAUEfyACIAVBMGw2AhwgAiAAKAIENgIUQQQFQQALNgIYIAJBCGpBBCAGIAJBFGoQ4gkgAigCCEEBRw0BIAIoAhAhAyACKAIMBUEACyADIAEQ1w0ACyACKAIMIQEgACAENgIAIAAgATYCBCACQSBqJAALwwECBX8BfiMAQSBrIgIkAEEEIAAoAgAiBUEBdCIEIARBBE0bIgStQvADfiIHQiCIQgBSBEBBAEEAIAEQ1w0ACwJAIAenIgZB8P///wdNBH8gAiAFBH8gAiAFQfADbDYCHCACIAAoAgQ2AhRBEAVBAAs2AhggAkEIakEQIAYgAkEUahDiCSACKAIIQQFHDQEgAigCECEDIAIoAgwFQQALIAMgARDXDQALIAIoAgwhASAAIAQ2AgAgACABNgIEIAJBIGokAAvBAQIFfwF+IwBBIGsiAiQAQQQgACgCACIFQQF0IgQgBEEETRsiBK1COH4iB0IgiEIAUgRAQQBBACABENcNAAsCQCAHpyIGQfz///8HTQR/IAIgBQR/IAIgBUE4bDYCHCACIAAoAgQ2AhRBBAVBAAs2AhggAkEIakEEIAYgAkEUahDiCSACKAIIQQFHDQEgAigCECEDIAIoAgwFQQALIAMgARDXDQALIAIoAgwhASAAIAQ2AgAgACABNgIEIAJBIGokAAvBAQIFfwF+IwBBIGsiAiQAQQQgACgCACIFQQF0IgQgBEEETRsiBK1CNH4iB0IgiEIAUgRAQQBBACABENcNAAsCQCAHpyIGQfz///8HTQR/IAIgBQR/IAIgBUE0bDYCHCACIAAoAgQ2AhRBBAVBAAs2AhggAkEIakEEIAYgAkEUahDiCSACKAIIQQFHDQEgAigCECEDIAIoAgwFQQALIAMgARDXDQALIAIoAgwhASAAIAQ2AgAgACABNgIEIAJBIGokAAvBAQIFfwF+IwBBIGsiAiQAQQQgACgCACIFQQF0IgQgBEEETRsiBK1CKH4iB0IgiEIAUgRAQQBBACABENcNAAsCQCAHpyIGQfz///8HTQR/IAIgBQR/IAIgBUEobDYCHCACIAAoAgQ2AhRBBAVBAAs2AhggAkEIakEEIAYgAkEUahDiCSACKAIIQQFHDQEgAigCECEDIAIoAgwFQQALIAMgARDXDQALIAIoAgwhASAAIAQ2AgAgACABNgIEIAJBIGokAAvDAQIFfwF+IwBBIGsiAiQAQQQgACgCACIFQQF0IgQgBEEETRsiBK1C7AB+IgdCIIhCAFIEQEEAQQAgARDXDQALAkAgB6ciBkH8////B00EfyACIAUEfyACIAVB7ABsNgIcIAIgACgCBDYCFEEEBUEACzYCGCACQQhqQQQgBiACQRRqEOIJIAIoAghBAUcNASACKAIQIQMgAigCDAVBAAsgAyABENcNAAsgAigCDCEBIAAgBDYCACAAIAE2AgQgAkEgaiQAC4YCAgN/AX4jAEEQayIDJAACQAJAAkAgAARAIABBEGsiBCgCAEEBaiECIAQgAjYCACACRQ0BIAAoAgAiAkF/Rg0CIAAgAkEBajYCACADIAQ2AgwgAyAANgIIIAMgAEEQaiICNgIEIAIgAb0iBacgBUIgiKcQuQwiAkUNAyAC/QAEcP0MAAAAAAAAAAAAAAAAAAAAAP1C/VMgAioCgAFDAAAAAFwgAioChAFDAAAAAFxyckEBcSECIAAgACgCAEEBazYCACAEIAQoAgBBAWsiADYCACAARQRAIANBDGoQ6wwLIANBEGokACACDwsQgw8LAAsQhA8AC0Hsz8EAQc0AQbzQwQAQ0QsAC4gDAwV/AX0BfiMAQRBrIgMkAAJAAkACQCAABEAgAEEIayIFKAIAQQFqIQIgBSACNgIAIAJFDQEgACgCACICQX9GDQIgACACQQFqNgIAIAMgBTYCDCADIAA2AgggAyAAQQRqIgI2AgQgAiABvSIIpyAIQiCIpxC6DCICRQ0DIwBBMGsiBCQAAn0CQAJAAkAgAigCOEEBaw4CAQIACyACKgI8DAILIARBBGogAigCQCACKAJEIgYoAghBAWtBeHFqQQhqQwAAgD8gBigCnAERDQAgBCoCICACKgI8lAwBCyAEQQRqIAIoAkAgAigCRCIGKAIIQQFrQXhxakEIakMAAIA/IAYoApwBEQ0AIAQqAiBDAAAAAEMAAIA/IAIoAjwqAhwiB5UgB0MAAAAAWxuUCyEHIARBMGokACAAIAAoAgBBAWs2AgAgBSAFKAIAQQFrIgA2AgAgAEUEQCADQQxqEO4MCyADQRBqJAAgBw8LEIMPCwALEIQPAAtB3NDBAEHMAEGo0cEAENELAAvoAgMFfwF9AX4jAEEQayIDJAACQAJAAkAgAARAIABBCGsiBCgCAEEBaiECIAQgAjYCACACRQ0BIAAoAgAiAkF/Rg0CIAAgAkEBajYCACADIAQ2AgwgAyAANgIIIAMgAEEEaiICNgIEIAIgAb0iCKcgCEIgiKcQugwiAkUNAyMAQTBrIgUkAAJ9AkACQAJAIAIoAjhBAWsOAgECAAsgBUEEaiACKAJAIAIoAkQiBigCCEEBa0F4cWpBCGogAioCPCAGKAKcARENAEMAAAAAQwAAgD8gBSoCICIHlSAHQwAAAABbGwwCCyACKgI8DAELQwAAAAAgAigCPCoCHCIHQwAAAABbDQAaQwAAgD8gB5ULIQcgBUEwaiQAIAAgACgCAEEBazYCACAEIAQoAgBBAWsiADYCACAARQRAIANBDGoQ7gwLIANBEGokACAHDwsQgw8LAAsQhA8AC0Hc0MEAQcwAQajRwQAQ0QsAC6gCAwR/AX0BfiMAQRBrIgMkAAJAAkACQCAABEAgAEEIayIEKAIAQQFqIQIgBCACNgIAIAJFDQEgACgCACICQX9GDQIgACACQQFqNgIAIAMgBDYCDCADIAA2AgggAyAAQQRqIgI2AgQgAiABvSIHpyAHQiCIpxC6DCIFRQ0DIwBBMGsiAiQAIAJBBGogBSgCQCAFKAJEIgUoAghBAWtBeHFqQQhqQwAAgD8gBSgCnAERDQAgAioCICEGIAJBMGokAEMAAAAAQwAAgD8gBpUgBkMAAAAAWxshBiAAIAAoAgBBAWs2AgAgBCAEKAIAQQFrIgA2AgAgAEUEQCADQQxqEO4MCyADQRBqJAAgBg8LEIMPCwALEIQPAAtB3NDBAEHMAEGo0cEAENELAAvTAQIDfwF+IwBBMGsiASQAAkACQCAABEAgAEEIayIDKAIAQQFqIQIgAyACNgIAIAJFDQEgACgCACICQX9GDQIgACACQQFqNgIAIAEgAzYCCCABIAA2AgQgASAAQQRqNgIAIAApAhQhBCABQQYQHSICNgIMIAEgBDcDICABIAD9AAIE/QsEECABQQxqIAFBEGpBBhDKCSAAIAAoAgBBAWs2AgAgAyADKAIAQQFrIgA2AgAgAEUEQCABQQhqEKoNCyABQTBqJAAgAg8LEIMPCwALEIQPAAvIAQEFfyAAKAIMIQIgACgCECIDBEAgAkHQAGohAQNAAkAgAUHQAGsoAgBFDQAgASgCACIFKAIAIQQgBSAEQQFrNgIAIARBAUYEQCABEIoKCyABQQhrKAIAQQJJDQAgAUEEaygCAEEsQQQQ6A4LIAFBsAFqIQEgA0EBayIDDQALCyAAKAIIIgEEQCACIAFBsAFsQRAQ6A4LIAAoAhwiAQRAIAAoAiAgAUEDdEEEEOgOCyAAKAIoIgEEQCAAKAIsIAFBA3RBBBDoDgsLxgEBBX8gACgCBCECIAAoAggiAwRAIAIhAQNAIAEoAgAiBSgCACEEIAUgBEEBazYCACAEQQFGBEAgARDXCwsgAUEMaiEBIANBAWsiAw0ACwsgACgCACIBBEAgAiABQQxsQQQQ6A4LIAAoAhAhAiAAKAIUIgMEQCACIQEDQCABKAIAIgUoAgAhBCAFIARBAWs2AgAgBEEBRgRAIAEQ1wsLIAFBDGohASADQQFrIgMNAAsLIAAoAgwiAARAIAIgAEEMbEEEEOgOCwu4AQEDfwJAAkAgAARAIABBCGsiBCgCACIFQQFqIQMgBCADNgIAIANFDQEgACgCAA0CQT8gAkH/AXEiAyADQT9PGyIDQQFxBEAgACABOAIECyADQQJxBEAgACABOAIICyADQQRxBEAgACABOAIMCyADQQhxBEAgACABOAIcCyADQRBxBEAgACABOAIgCyACQf8BcUEgTwRAIAAgATgCJAsgAEEANgIAIAQgBTYCAA8LEIMPCwALEIQPAAu4AQEDfwJAAkAgAARAIABBCGsiBCgCACIFQQFqIQMgBCADNgIAIANFDQEgACgCAA0CQT8gAkH/AXEiAyADQT9PGyIDQQFxBEAgACABOAJQCyADQQJxBEAgACABOAJUCyADQQRxBEAgACABOAJYCyADQQhxBEAgACABOAJcCyADQRBxBEAgACABOAJgCyACQf8BcUEgTwRAIAAgATgCZAsgAEEANgIAIAQgBTYCAA8LEIMPCwALEIQPAAu4AQEDfwJAAkAgAARAIABBCGsiBCgCACIFQQFqIQMgBCADNgIAIANFDQEgACgCAA0CQT8gAkH/AXEiAyADQT9PGyIDQQFxBEAgACABOAIQCyADQQJxBEAgACABOAIQCyADQQRxBEAgACABOAIQCyADQQhxBEAgACABOAIoCyADQRBxBEAgACABOAIsCyACQf8BcUEgTwRAIAAgATgCMAsgAEEANgIAIAQgBTYCAA8LEIMPCwALEIQPAAvSAQEDfyMAQUBqIgIkACACIAE3AwACQAJAIAFCgICAgBBaBEAgAkEDNgIcIAJB1NjBADYCGCACQgI3AiQgAkKg2MGAMDcDOCACIAKtQoCAgICwDoQ3AzAgAiACQTBqNgIgIAJBDGoiBCACQRhqEIcFQQxBBBCRDiIDRQ0BIAMgAikCDDcCACADQQhqIARBCGooAgA2AgBBASEEDAILIAGnIQMMAQtBBEEMQfjKxAAoAgAiAEHMCCAAGxEAAAALIAAgAzYCBCAAIAQ2AgAgAkFAayQAC9EBAQJ/AkAgAiABKAKMA08NACABKAKIAyACQYADbGoiASgCAEEBRw0AIAEoAgQgA0cNACABLQD1Ag0AIAEtAMwCQQRxDQAgAUEAOgDkAiABQQA2AuACIAEtAPYCRQ0AAkAgASgCFCIFIAAoAggiBE8NACAAKAIEIAVBA3RqIgUoAgAgAkcNACAFKAIEIANGDQELIAEgBDYCFCAAKAIAIARGBEAgAEGYjsIAELQICyAAIARBAWo2AgggACgCBCAEQQN0aiIAIAM2AgQgACACNgIACwu4AQEJfSABKgIUIgkgAioCACIGlCABKgIQIgogAioCBCIHlJMiBCAEkiEEIAogAioCCCIIlCABKgIYIgMgBpSTIgUgBZIhBSAAIAIqAhggAyACKgIMIgsgBJQgBiAFlCAHIAMgB5QgCSAIlJMiAyADkiIDlJOSkpI4AgggACACKgIUIAkgCyAFlCAIIAOUIAYgBJSTkpKSOAIEIAAgAioCECAKIAsgA5QgByAElCAIIAWUk5KSkjgCAAu9AQEJfSAAIAIqAhgiBSABKgIAIgSSIgYgBCADKgIYIgiSIgcgBiAHYBs4AhQgACAEIAIqAhQiBpIiByAEIAMqAhQiCpIiCSAHIAlgGzgCECAAIAQgAioCECIHkiIJIAQgAyoCECILkiIMIAkgDGAbOAIMIAAgBSAEkyIFIAggBJMiCCAFIAhfGzgCCCAAIAYgBJMiBSAKIASTIgYgBSAGXxs4AgQgACAHIASTIgUgCyAEkyIEIAQgBWAbOAIAC8EBAgN/AX4jAEEgayIDJAACQAJAIAAEQCAAQQhrIgQoAgBBAWohAiAEIAI2AgAgAkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgAgAyAENgIcIAMgADYCGCADIABBCGoiAjYCFCADQQhqIAIgAb0iBacgBUIgiKcQlQogAygCCCECIAAgACgCAEEBazYCACAEIAQoAgBBAWsiADYCACAARQRAIANBHGoQ6gwLIANBIGokACACQQBHDwsQgw8LAAsQhA8AC8oBAgN/AX4jAEEQayIEJAACQAJAAkAgAARAIABBCGsiBSgCAEEBaiEDIAUgAzYCACADRQ0BIAAoAgANAiAAQX82AgAgBCAFNgIMIAQgADYCCCAEIABBBGoiAzYCBCADIAG9IganIAZCIIinEN8JIgNFDQMgAyACQQAgAkEISRs2AlggAEEANgIAIAUgBSgCAEEBayIANgIAIABFBEAgBEEMahDuDAsgBEEQaiQADwsQgw8LAAsQhA8AC0Hc0MEAQcwAQbjRwQAQ0QsAC7ABAQp9IAAgAhCSAyIABEAgAyABKgIMIgkgAioCBCIKIAEqAgAiB5QgAioCACILIAEqAgQiCJSTIgQgBJIiDJQgCCAIIAIqAggiDZQgCiABKgIIIgSUkyIFIAWSIgWUIAcgCyAElCANIAeUkyIGIAaSIgaUk5IgDZM4AgggAyAJIAaUIAcgDJQgBCAFlJOSIAqTOAIEIAMgCSAFlCAEIAaUIAggDJSTkiALkzgCAAsgAAuwAQEKfSAAIAMQkgMiAARAIAIgASoCDCIJIAMqAgAiCiABKgIEIgeUIAMqAgQiCyABKgIAIgiUkyIEIASSIgyUIAggCCADKgIIIg2UIAogASoCCCIElJMiBSAFkiIFlCAHIAsgBJQgDSAHlJMiBiAGkiIGlJOSIA2TOAIIIAIgCSAFlCAEIAaUIAggDJSTkiALkzgCBCACIAkgBpQgByAMlCAEIAWUk5IgCpM4AgALIAAL9AECB30CeyAAIAEqAgQiBUMAAAA/lCABKgIQIgNDAAAAP5SSIgI4AgQgACAB/V0CCCIK/QwAAAA/AAAAPwAAAD8AAAA//eYBIAEqAhQiBP0TIAEqAgAiBv0gAf0MAAAAPwAAAD8AAAA/AAAAP/3mAf3kASIJ/R8AIgc4AgggACAJ/R8BIgg4AgAgACAJIAogBP0gAP3lASIJIAn95gEiCf0fASACIAOTIgMgA5SSIAn9HwCSIgMgCCAGkyIEIASUIAIgBZMiAiAClJIgByABKgIIkyICIAKUkiICQwAAAAAgAkMAAAAAXhsiAiACIANdG5E4AgwLvAEBA38jAEEgayIDJAACQAJ/QQAgASABIAJqIgJLDQAaQQBBCCACIAAoAgAiAUEBdCIEIAIgBEsbIgIgAkEITRsiBEEASA0AGkEAIQIgAyABBH8gAyABNgIcIAMgACgCBDYCFEEBBUEACzYCGCADQQhqQQEgBCADQRRqEOIJIAMoAghBAUcNASADKAIQIQUgAygCDAsgBUH8j8QAENcNAAsgAygCDCEBIAAgBDYCACAAIAE2AgQgA0EgaiQAC8gBAQJ/IwBB0ABrIgIkAAJAAkACQCABRQRAIABFDQEgAEEIayIBKAIAQQFHDQIgAkEMaiAAQQRqQcQA/AoAACABQQA2AgACQCABQX9GDQAgAEEEayIDKAIAQQFrIQAgAyAANgIAIAANACABQdAAQQQQ6A4LIAJBDGoQzgcMAwsgAEUNACAAQQhrIgAoAgBBAWshASAAIAE2AgAgAiAANgIIIAENAiACQQhqEOkMDAILEIMPAAtBkNTBAEE/EIIPAAsgAkHQAGokAAu5AQEDfyAAKAJIIQEgACgCTCIDBEAgASECA0AgAhDvAiACQaQCaiECIANBAWsiAw0ACwsgACgCRCICBEAgASACQaQCbEEEEOgOCyAAKAIwIgEEQCAAKAI0IAFBFGxBBBDoDgsgACgCGCIBBEAgACgCHCABQQR0QQQQ6A4LIAAoAiQiAQRAIAAoAiggAUEEdEEEEOgOCyAAKAIEIgEEQCAAKAIAIAFBA3RrQQhrIAFBCWxBEWpBCBDoDgsLvAEBBX8jAEEgayICJAAgACgCACIEQf////8ASwRAQQBBACABENcNAAsCQEEEIARBAXQiBSAFQQRNGyIFQQN0IgZB/P///wdNBH8gAiAEBH8gAiAEQQN0NgIcIAIgACgCBDYCFEEEBUEACzYCGCACQQhqQQQgBiACQRRqEOIJIAIoAghBAUcNASACKAIQIQMgAigCDAVBAAsgAyABENcNAAsgAigCDCEBIAAgBTYCACAAIAE2AgQgAkEgaiQAC7sBAQV/IwBBIGsiAiQAIAAoAgAiBEH///8/SwRAQQBBACABENcNAAsCQEEEIARBAXQiBSAFQQRNGyIFQQR0IgZB/P///wdNBH8gAiAEBH8gAiAEQQR0NgIcIAIgACgCBDYCFEEEBUEACzYCGCACQQhqQQQgBiACQRRqEOIJIAIoAghBAUcNASACKAIQIQMgAigCDAVBAAsgAyABENcNAAsgAigCDCEBIAAgBTYCACAAIAE2AgQgAkEgaiQAC7wBAQV/IwBBIGsiAiQAIAAoAgAiBEH/////AUsEQEEAQQAgARDXDQALAkBBBCAEQQF0IgUgBUEETRsiBUECdCIGQfz///8HTQR/IAIgBAR/IAIgBEECdDYCHCACIAAoAgQ2AhRBBAVBAAs2AhggAkEIakEEIAYgAkEUahDiCSACKAIIQQFHDQEgAigCECEDIAIoAgwFQQALIAMgARDXDQALIAIoAgwhASAAIAU2AgAgACABNgIEIAJBIGokAAvNAQEEfyMAQRBrIgIkAAJAAkACQCABRQRAIABFDQEgAEEIayIBKAIAQQFHDQIgACgCSCEEIAAoAkQhAyABQQA2AgACQCABQX9GDQAgAEEEayIFKAIAQQFrIQAgBSAANgIAIAANACABQegAQQQQ6A4LIANFDQMgBCADQfQAbEEEEOgODAMLIABFDQAgAEEIayIAKAIAQQFrIQEgACABNgIAIAIgADYCDCABDQIgAkEMahDkCwwCCxCDDwALQZDUwQBBPxCCDwALIAJBEGokAAvGAQIDfwF+IwBBEGsiBCQAAkACQAJAIAAEQCAAQQhrIgUoAgBBAWohAyAFIAM2AgAgA0UNASAAKAIADQIgAEF/NgIAIAQgBTYCDCAEIAA2AgggBCAAQQhqIgM2AgQgAyABvSIGpyAGQiCIpxCGCiIDRQ0DIAMgAkEARzoAvQIgAEEANgIAIAUgBSgCAEEBayIANgIAIABFBEAgBEEMahDvDAsgBEEQaiQADwsQgw8LAAsQhA8AC0HwzcEAQdAAQdDOwQAQ0QsAC8wDAwZ/AX0BfiMAQSBrIgMkAAJAAkAgAARAIABBCGsiBSgCAEEBaiECIAUgAjYCACACRQ0BIAAoAgAiAkF/Rg0CIAAgAkEBajYCACADIAU2AhwgAyAANgIYIAMgAEEEaiICNgIUIANBCGohBgJAAn0CQCACIAG9IgmnIAlCIIinELoMIgIEQAJAAkACQAJAAkACQAJAAkACQCACQUBrKAIAIAJBxABqKAIAIgIoAghBAWtBeHFqQQhqIgQgAigCoAERBABB/wFxDhEADAEMDAwMDAwMDAwCAwwMBAwLIAQgAhC7CyICDQkMCwsgBCACEL4LIgINAwwKCyAEIAIQyQsiAg0DDAkLIAQgAhDLCyICDQMMCAsgBCACEM0LIgINAwwHCyACKgIYDAULIAIqAgQMBAsgAioCBAwDCyACKgIEDAILQdzQwQBBzABBqNHBABDRCwALIAIqAgALIQhBASEHCyAGIAg4AgQgBiAHNgIAIAMqAgwhCCADKAIIIQIgACAAKAIAQQFrNgIAIAUgBSgCAEEBayIANgIAIABFBEAgA0EcahDuDAsgA0EgaiQAIAi7RAAAEAAAAPBBIAJBAXEbDwsQgw8LAAsQhA8AC/YDAwZ/AX0BfiMAQSBrIgMkAAJAAkAgAARAIABBCGsiBSgCAEEBaiECIAUgAjYCACACRQ0BIAAoAgAiAkF/Rg0CIAAgAkEBajYCACADIAU2AhwgAyAANgIYIAMgAEEEaiICNgIUIANBCGohBwJAAkAgAiABvSIJpyAJQiCIpxC6DCICBEACQAJAAkACQAJAAkACQCACQUBrKAIAIAJBxABqKAIAIgIoAghBAWtBeHFqQQhqIgYgAigCoAERBABB/wFxQQJrDg8ACQkJCQkJCQkJAQIJCQMJCyAGIAIQvgsiAg0HDAgLIAYgAhDJCyICDQIMBwsgBiACEMsLIgINAgwGCyAGIAIQzQsiAg0CDAULIAIqAgAhCEEBIQQMBAsgAioCACEIQQEhBAwDCyACKgIAIQhBASEEDAILQdzQwQBBzABBqNHBABDRCwALQQEhBCACKgIMIAIqAgCTIgggCJQgAioCECACKgIEkyIIIAiUkiACKgIUIAIqAgiTIgggCJSSkUMAAAA/lCEICyAHIAg4AgQgByAENgIAIAMqAgwhCCADKAIIIQIgACAAKAIAQQFrNgIAIAUgBSgCAEEBayIANgIAIABFBEAgA0EcahDuDAsgA0EgaiQAIAi7RAAAEAAAAPBBIAJBAXEbDwsQgw8LAAsQhA8AC6MEAwd/AX0CfiMAQSBrIgMkAAJAAkAgAARAIABBCGsiBigCAEEBaiECIAYgAjYCACACRQ0BIAAoAgAiAkF/Rg0CIAAgAkEBajYCACADIAY2AhwgAyAANgIYIAMgAEEEaiICNgIUIANBCGohBwJAAn0CQCACIAG9IgqnIApCIIinELoMIgIEQAJAAkACQAJAAkACQAJAAkACQCACQUBrKAIAIAJBxABqKAIAIgQoAghBAWtBeHFqQQhqIgUgBCgCoAERBABB/wFxQQ5rDgUAAQIDBAwLIAUgBBDFCyICDQkMCwsgBSAEEMcLIgINAwwKCyAFIAQQzQsiAg0DDAkLIwBBIGsiAiQAIAJBCGogBSAEKAJgEQAAIAJBEGogAigCCCIEIAIoAgwoAgwRAAAgAikDGCEKIAIpAxAhCyACQSBqJAAgBEEAIAtCs9vcjZaKhISAf4UgCkKcpMiCwICPkIt/hYRQGyICDQMMCAsgBSAEEM8LIgINAwwHCyACKgIkDAULIAIqAggMBAsgAioCCAwDCyACKgJgDAILQdzQwQBBzABBqNHBABDRCwALIAIqAgwLIQlBASEICyAHIAk4AgQgByAINgIAIAMqAgwhCSADKAIIIQIgACAAKAIAQQFrNgIAIAYgBigCAEEBayIANgIAIABFBEAgA0EcahDuDAsgA0EgaiQAIAm7RAAAEAAAAPBBIAJBAXEbDwsQgw8LAAsQhA8AC8oBAgN/AX4jAEEQayIEJAACQAJAAkAgAARAIABBCGsiBSgCAEEBaiEDIAUgAzYCACADRQ0BIAAoAgANAiAAQX82AgAgBCAFNgIMIAQgADYCCCAEIABBBGoiAzYCBCADIAG9IganIAZCIIinEN8JIgNFDQMgA0EDIAIgAkEDTxs6AGwgAEEANgIAIAUgBSgCAEEBayIANgIAIABFBEAgBEEMahDuDAsgBEEQaiQADwsQgw8LAAsQhA8AC0Hc0MEAQcwAQbjRwQAQ0QsAC8oBAgN/AX4jAEEQayIEJAACQAJAAkAgAARAIABBCGsiBSgCAEEBaiEDIAUgAzYCACADRQ0BIAAoAgANAiAAQX82AgAgBCAFNgIMIAQgADYCCCAEIABBBGoiAzYCBCADIAG9IganIAZCIIinEN8JIgNFDQMgA0EDIAIgAkEDTxs6AG0gAEEANgIAIAUgBSgCAEEBayIANgIAIABFBEAgBEEMahDuDAsgBEEQaiQADwsQgw8LAAsQhA8AC0Hc0MEAQcwAQbjRwQAQ0QsAC8oBAgN/AX4jAEEQayIEJAACQAJAAkAgAARAIABBCGsiBSgCAEEBaiEDIAUgAzYCACADRQ0BIAAoAgANAiAAQX82AgAgBCAFNgIMIAQgADYCCCAEIABBBGoiAzYCBCADIAG9IganIAZCIIinEN8JIgNFDQMgAyACQQAgAkEESRs2AlwgAEEANgIAIAUgBSgCAEEBayIANgIAIABFBEAgBEEMahDuDAsgBEEQaiQADwsQgw8LAAsQhA8AC0Hc0MEAQcwAQbjRwQAQ0QsAC8sBAgN/AX4jAEEQayIEJAACQAJAAkAgAARAIABBCGsiBSgCAEEBaiEDIAUgAzYCACADRQ0BIAAoAgANAiAAQX82AgAgBCAFNgIMIAQgADYCCCAEIABBBGoiAzYCBCADIAG9IganIAZCIIinEN8JIgNFDQMgA0EAIAIgAkHQI3EbOwFgIABBADYCACAFIAUoAgBBAWsiADYCACAARQRAIARBDGoQ7gwLIARBEGokAA8LEIMPCwALEIQPAAtB3NDBAEHMAEG40cEAENELAAu7AQEFfyMAQSBrIgIkACAAKAIAIgRB////D0sEQEEAQQAgARDXDQALAkBBBCAEQQF0IgUgBUEETRsiBUEGdCIGQfz///8HTQR/IAIgBAR/IAIgBEEGdDYCHCACIAAoAgQ2AhRBBAVBAAs2AhggAkEIakEEIAYgAkEUahDiCSACKAIIQQFHDQEgAigCECEDIAIoAgwFQQALIAMgARDXDQALIAIoAgwhASAAIAU2AgAgACABNgIEIAJBIGokAAu7AQEFfyMAQSBrIgIkACAAKAIAIgRB////D0sEQEEAQQAgARDXDQALAkBBBCAEQQF0IgUgBUEETRsiBUEGdCIGQfD///8HTQR/IAIgBAR/IAIgBEEGdDYCHCACIAAoAgQ2AhRBEAVBAAs2AhggAkEIakEQIAYgAkEUahDiCSACKAIIQQFHDQEgAigCECEDIAIoAgwFQQALIAMgARDXDQALIAIoAgwhASAAIAU2AgAgACABNgIEIAJBIGokAAu7AQEFfyMAQSBrIgIkACAAKAIAIgRB////H0sEQEEAQQAgARDXDQALAkBBBCAEQQF0IgUgBUEETRsiBUEFdCIGQfz///8HTQR/IAIgBAR/IAIgBEEFdDYCHCACIAAoAgQ2AhRBBAVBAAs2AhggAkEIakEEIAYgAkEUahDiCSACKAIIQQFHDQEgAigCECEDIAIoAgwFQQALIAMgARDXDQALIAIoAgwhASAAIAU2AgAgACABNgIEIAJBIGokAAu9AQEFfyMAQSBrIgIkACAAKAIAIgRB////D0sEQEEAQQAgARDXDQALAkBBBCAEQQF0IgUgBUEETRsiBUEGdCIGQcD///8HTQR/IAIgBAR/IAIgBEEGdDYCHCACIAAoAgQ2AhRBwAAFQQALNgIYIAJBCGpBwAAgBiACQRRqEOIJIAIoAghBAUcNASACKAIQIQMgAigCDAVBAAsgAyABENcNAAsgAigCDCEBIAAgBTYCACAAIAE2AgQgAkEgaiQAC70BAQV/IwBBIGsiAiQAIAAoAgAiBEH///8BSwRAQQBBACABENcNAAsCQEEEIARBAXQiBSAFQQRNGyIFQQl0IgZBwP///wdNBH8gAiAEBH8gAiAEQQl0NgIcIAIgACgCBDYCFEHAAAVBAAs2AhggAkEIakHAACAGIAJBFGoQ4gkgAigCCEEBRw0BIAIoAhAhAyACKAIMBUEACyADIAEQ1w0ACyACKAIMIQEgACAFNgIAIAAgATYCBCACQSBqJAALuwEBBX8jAEEgayICJAAgACgCACIEQf///x9LBEBBAEEAIAEQ1w0ACwJAQQQgBEEBdCIFIAVBBE0bIgVBBXQiBkHw////B00EfyACIAQEfyACIARBBXQ2AhwgAiAAKAIENgIUQRAFQQALNgIYIAJBCGpBECAGIAJBFGoQ4gkgAigCCEEBRw0BIAIoAhAhAyACKAIMBUEACyADIAEQ1w0ACyACKAIMIQEgACAFNgIAIAAgATYCBCACQSBqJAAL3wECAX8BfSMAQTBrIgUkACAFQQRqIAEgAiACQQxqELEBQQAhAgJAIAUoAgRBAUcNAAJAIAUqAggiBkMAAAAAXUUEQCADIAZgRQ0CIAAgBjgCBCAAIAVBDGr9AAIA/QsCCAwBCyAFKAIsIQEgBEUEQCADIAUqAhwiA2BFDQIgACADOAIEIAAgATYCFCAAIAVBIGoiASkCADcCCCAAQRBqIAFBCGooAgA2AgAMAQsgAP0MAAAAAAAAAAAAAAAAAAAAAP0LAgQgACABNgIUC0EBIQILIAAgAjYCACAFQTBqJAALvAEBBH8gACgCBCECIAAoAggiBARAIAJBgAFqIQEDQCABQQRrKAIAIgMEQCABKAIAIANBBnRBBBDoDgsgAUEoaygCACIDBEAgAUEkaygCACADQQZ0QRAQ6A4LIAFBqAFqIQEgBEEBayIEDQALCyAAKAIAIgEEQCACIAFBqAFsQQQQ6A4LAkAgACgCHCIBRQ0AIAAoAiAiACgCACICBEAgASACEQYACyAAKAIEIgJFDQAgASACIAAoAggQ6A4LC9sBAQJ/IwBBEGsiAyQAAkAgAAJ/AkAgASgCBCICRQRAIABBAjoAAQwBCyABIAJBAWs2AgQCQAJAIAEoAgAiASgCBCICRQRAIANCgcoANwMIIANBCGoQnw0hAQwBCyABIAJBAWs2AgQgASABKAIAIgFBAWo2AgAgAS0AACICQQJJDQFBDEEEEJEOIgFFDQQgASACOgAEIAFBgoCAgHg2AgALIAAgATYCBEEBDAILIAAgAjoAAQtBAAs6AAAgA0EQaiQADwtBBEEMQfjKxAAoAgAiAEHMCCAAGxEAAAALxgECAn8DfSMAQTBrIgUkACABQQhqIgYqAgAhByABKgIAIQggASoCBCEJIAVBFGogBigCADYCACAFIAeMOAIIIAUgCYw4AgQgBSAIjDgCACAFIAEpAgA3AgwgBUEYaiAFIAIgAyAEEMYIQQQhASAAIAUoAhhBAUYEfyAAIAUpAiA3AgwgACAFKgIcOAIIIABBFGogBUEoaigCADYCACAAQQIgBSgCLCICayACQQFrIAJBAEgbNgIEQQIFQQQLNgIAIAVBMGokAAvKAQIDfwF+IwBBEGsiBCQAAkACQAJAIAAEQCAAQRBrIgUoAgBBAWohAyAFIAM2AgAgA0UNASAAKAIADQIgAEF/NgIAIAQgBTYCDCAEIAA2AgggBCAAQRBqIgM2AgQgAyABvSIGpyAGQiCIpxDeCSIDRQ0DIANCADcDGCADIAKtNwMQIABBADYCACAFIAUoAgBBAWsiADYCACAARQRAIARBDGoQ6wwLIARBEGokAA8LEIMPCwALEIQPAAtB7M/BAEHNAEHM0MEAENELAAu5AQEIfQJAAkACQCACKgIAIgUgBZQgAioCCCIDIAOUkiIEQwAAAABcBEAgASoCACIGIAIqAgQiCJQiCSADIAMgBJEiBJUgASoCBCIKlCIHlCAFIAUgBJUgCpQiBJQgCZOSXg0BIAaMIQYMAwsgASoCACACKgIEIgiYIQYMAQtDAAAAACEHC0MAAAAAIQQLIAAgByADIAEqAggiA5SSOAIIIAAgBiAIIAOUkjgCBCAAIAQgBSADlJI4AgALvgEBCH0gACABKgIAOAIMIAAgAioCGCACKgIMIgYgAioCACIHQwAAAACUIgMgAioCBCIIQwAAAACUIgSTIgUgBZIiBZQgByACKgIIIglDAAAAAJQiCiADkyIDIAOSIgOUIAggBCAKkyIEIASSIgSUk5JDAAAAAJKSOAIIIAAgAioCFCAGIAOUIAkgBJQgByAFlJOSQwAAAACSkjgCBCAAIAIqAhAgBiAElCAIIAWUIAkgA5STkkMAAAAAkpI4AgAL1wECBH8BfiMAQRBrIgIkAAJAAkACQCAABEAgAEEIayIDKAIAIgRBAWohASADIAE2AgAgAUUNASAAKAIAIgFBf0YNAiAAIAE2AgAgAkEIaiIBIABB2ABqKAIANgIAIAApAlAhBSADIAQ2AgAgAiAFNwMAQRhBBBCRDiIARQ0DIABBADYCCCAAQoGAgIAQNwIAIAAgAikDADcCDCAAQRRqIAEoAgA2AgAgAkEQaiQAIABBCGoPCxCDDwsACxCEDwALQQRBGEH4ysQAKAIAIgBBzAggABsRAAAAC9YBAgR/AX4jAEEQayICJAACQAJAAkAgAARAIABBCGsiAygCACIEQQFqIQEgAyABNgIAIAFFDQEgACgCACIBQX9GDQIgACABNgIAIAJBCGoiASAAQTBqKAIANgIAIAApAighBSADIAQ2AgAgAiAFNwMAQRhBBBCRDiIARQ0DIABBADYCCCAAQoGAgIAQNwIAIAAgAikDADcCDCAAQRRqIAEoAgA2AgAgAkEQaiQAIABBCGoPCxCDDwsACxCEDwALQQRBGEH4ysQAKAIAIgBBzAggABsRAAAAC9YBAgR/AX4jAEEQayICJAACQAJAAkAgAARAIABBCGsiAygCACIEQQFqIQEgAyABNgIAIAFFDQEgACgCACIBQX9GDQIgACABNgIAIAJBCGoiASAAQTxqKAIANgIAIAApAjQhBSADIAQ2AgAgAiAFNwMAQRhBBBCRDiIARQ0DIABBADYCCCAAQoGAgIAQNwIAIAAgAikDADcCDCAAQRRqIAEoAgA2AgAgAkEQaiQAIABBCGoPCxCDDwsACxCEDwALQQRBGEH4ysQAKAIAIgBBzAggABsRAAAAC9cBAgR/AX4jAEEQayICJAACQAJAAkAgAARAIABBCGsiAygCACIEQQFqIQEgAyABNgIAIAFFDQEgACgCACIBQX9GDQIgACABNgIAIAJBCGoiASAAQcwAaigCADYCACAAKQJEIQUgAyAENgIAIAIgBTcDAEEYQQQQkQ4iAEUNAyAAQQA2AgggAEKBgICAEDcCACAAIAIpAwA3AgwgAEEUaiABKAIANgIAIAJBEGokACAAQQhqDwsQgw8LAAsQhA8AC0EEQRhB+MrEACgCACIAQcwIIAAbEQAAAAvXAQIEfwF+IwBBEGsiAiQAAkACQAJAIAAEQCAAQQhrIgMoAgAiBEEBaiEBIAMgATYCACABRQ0BIAAoAgAiAUF/Rg0CIAAgATYCACACQQhqIgEgAEHkAGooAgA2AgAgACkCXCEFIAMgBDYCACACIAU3AwBBGEEEEJEOIgBFDQMgAEEANgIIIABCgYCAgBA3AgAgACACKQMANwIMIABBFGogASgCADYCACACQRBqJAAgAEEIag8LEIMPCwALEIQPAAtBBEEYQfjKxAAoAgAiAEHMCCAAGxEAAAALtwECA38BfiMAQRBrIgMkAAJAAkAgAARAIABBCGsiBCgCAEEBaiECIAQgAjYCACACRQ0BIAAoAgAiAkF/Rg0CIAAgAkEBajYCACADIAQ2AgwgAyAANgIIIAMgAEEIaiICNgIEIAIgAb0iBacgBUIgiKcQ2wshAiAAIAAoAgBBAWs2AgAgBCAEKAIAQQFrIgA2AgAgAEUEQCADQQxqEO8MCyADQRBqJAAgAkEARw8LEIMPCwALEIQPAAvFAQIDfwF+IwBBEGsiBCQAAkACQAJAIAAEQCAAQRBrIgUoAgBBAWohAyAFIAM2AgAgA0UNASAAKAIADQIgAEF/NgIAIAQgBTYCDCAEIAA2AgggBCAAQRBqIgM2AgQgAyABvSIGpyAGQiCIpxDeCSIDRQ0DIAMgAkEARzoALSAAQQA2AgAgBSAFKAIAQQFrIgA2AgAgAEUEQCAEQQxqEOsMCyAEQRBqJAAPCxCDDwsACxCEDwALQezPwQBBzQBBzNDBABDRCwAL6gECA38BfiMAQRBrIgQkAAJAAkACQCAABEAgAEEQayIFKAIAQQFqIQMgBSADNgIAIANFDQEgACgCAA0CIABBfzYCACAEIAU2AgwgBCAANgIIIAQgAEEQaiIDNgIEIAMgAb0iBqcgBkIgiKcQ3gkiA0UNAyACQQBHIgIgAy0A5gJHBEAgAyACOgDmAiADQf8BIAMoArwCQYABciACGzYCvAILIABBADYCACAFIAUoAgBBAWsiADYCACAARQRAIARBDGoQ6wwLIARBEGokAA8LEIMPCwALEIQPAAtB7M/BAEHNAEHM0MEAENELAAuvAgIDfwF+IwBBEGsiBCQAAkACQAJAIAAEQCAAQRBrIgUoAgBBAWohAyAFIAM2AgAgA0UNASAAKAIADQIgAEF/NgIAIAQgBTYCDCAEIAA2AgggBCAAQRBqIgM2AgQgAyABvSIGpyAGQiCIpxDeCSIDRQ0DIAJBAEchAgJAAkAgAyoCvAFDAAAAAFwNACADKgLAAUMAAAAAXA0AIAMqAsQBQwAAAABbDQELIANBADYCxAEgA0IANwK8ASACRQ0AIAMtANQCBEAgAyADKAK8AkEEcjYCvAILIANBADYC0AIgA0EAOgDUAgsgAEEANgIAIAUgBSgCAEEBayIANgIAIABFBEAgBEEMahDrDAsgBEEQaiQADwsQgw8LAAsQhA8AC0Hsz8EAQc0AQczQwQAQ0QsAC68CAgN/AX4jAEEQayIEJAACQAJAAkAgAARAIABBEGsiBSgCAEEBaiEDIAUgAzYCACADRQ0BIAAoAgANAiAAQX82AgAgBCAFNgIMIAQgADYCCCAEIABBEGoiAzYCBCADIAG9IganIAZCIIinEN4JIgNFDQMgAkEARyECAkACQCADKgLIAUMAAAAAXA0AIAMqAswBQwAAAABcDQAgAyoC0AFDAAAAAFsNAQsgA0EANgLQASADQgA3A8gBIAJFDQAgAy0A1AIEQCADIAMoArwCQQRyNgK8AgsgA0EANgLQAiADQQA6ANQCCyAAQQA2AgAgBSAFKAIAQQFrIgA2AgAgAEUEQCAEQQxqEOsMCyAEQRBqJAAPCxCDDwsACxCEDwALQezPwQBBzQBBzNDBABDRCwAL1gECBH8BfiMAQRBrIgIkAAJAAkACQCAABEAgAEEIayIDKAIAIgRBAWohASADIAE2AgAgAUUNASAAKAIAIgFBf0YNAiAAIAE2AgAgAkEIaiIBIABBDGooAgA2AgAgACkCBCEFIAMgBDYCACACIAU3AwBBGEEEEJEOIgBFDQMgAEEANgIIIABCgYCAgBA3AgAgACACKQMANwIMIABBFGogASgCADYCACACQRBqJAAgAEEIag8LEIMPCwALEIQPAAtBBEEYQfjKxAAoAgAiAEHMCCAAGxEAAAAL1gECBH8BfiMAQRBrIgIkAAJAAkACQCAABEAgAEEIayIDKAIAIgRBAWohASADIAE2AgAgAUUNASAAKAIAIgFBf0YNAiAAIAE2AgAgAkEIaiIBIABBFGooAgA2AgAgACkCDCEFIAMgBDYCACACIAU3AwBBGEEEEJEOIgBFDQMgAEEANgIIIABCgYCAgBA3AgAgACACKQMANwIMIABBFGogASgCADYCACACQRBqJAAgAEEIag8LEIMPCwALEIQPAAtBBEEYQfjKxAAoAgAiAEHMCCAAGxEAAAAL1gECBH8BfiMAQRBrIgIkAAJAAkACQCAABEAgAEEIayIDKAIAIgRBAWohASADIAE2AgAgAUUNASAAKAIAIgFBf0YNAiAAIAE2AgAgAkEIaiIBIABBEGooAgA2AgAgACkCCCEFIAMgBDYCACACIAU3AwBBGEEEEJEOIgBFDQMgAEEANgIIIABCgYCAgBA3AgAgACACKQMANwIMIABBFGogASgCADYCACACQRBqJAAgAEEIag8LEIMPCwALEIQPAAtBBEEYQfjKxAAoAgAiAEHMCCAAGxEAAAAL1gECBH8BfiMAQRBrIgIkAAJAAkACQCAABEAgAEEIayIDKAIAIgRBAWohASADIAE2AgAgAUUNASAAKAIAIgFBf0YNAiAAIAE2AgAgAkEIaiIBIABBKGooAgA2AgAgACkCICEFIAMgBDYCACACIAU3AwBBGEEEEJEOIgBFDQMgAEEANgIIIABCgYCAgBA3AgAgACACKQMANwIMIABBFGogASgCADYCACACQRBqJAAgAEEIag8LEIMPCwALEIQPAAtBBEEYQfjKxAAoAgAiAEHMCCAAGxEAAAAL1gECBH8BfiMAQRBrIgIkAAJAAkACQCAABEAgAEEIayIDKAIAIgRBAWohASADIAE2AgAgAUUNASAAKAIAIgFBf0YNAiAAIAE2AgAgAkEIaiIBIABBNGooAgA2AgAgACkCLCEFIAMgBDYCACACIAU3AwBBGEEEEJEOIgBFDQMgAEEANgIIIABCgYCAgBA3AgAgACACKQMANwIMIABBFGogASgCADYCACACQRBqJAAgAEEIag8LEIMPCwALEIQPAAtBBEEYQfjKxAAoAgAiAEHMCCAAGxEAAAAL1gECBH8BfiMAQRBrIgIkAAJAAkACQCAABEAgAEEIayIDKAIAIgRBAWohASADIAE2AgAgAUUNASAAKAIAIgFBf0YNAiAAIAE2AgAgAkEIaiIBIABBGGooAgA2AgAgACkCECEFIAMgBDYCACACIAU3AwBBGEEEEJEOIgBFDQMgAEEANgIIIABCgYCAgBA3AgAgACACKQMANwIMIABBFGogASgCADYCACACQRBqJAAgAEEIag8LEIMPCwALEIQPAAtBBEEYQfjKxAAoAgAiAEHMCCAAGxEAAAAL1gECBH8BfiMAQRBrIgIkAAJAAkACQCAABEAgAEEIayIDKAIAIgRBAWohASADIAE2AgAgAUUNASAAKAIAIgFBf0YNAiAAIAE2AgAgAkEIaiIBIABBJGooAgA2AgAgACkCHCEFIAMgBDYCACACIAU3AwBBGEEEEJEOIgBFDQMgAEEANgIIIABCgYCAgBA3AgAgACACKQMANwIMIABBFGogASgCADYCACACQRBqJAAgAEEIag8LEIMPCwALEIQPAAtBBEEYQfjKxAAoAgAiAEHMCCAAGxEAAAAL1gECBH8BfiMAQRBrIgIkAAJAAkACQCAABEAgAEEIayIDKAIAIgRBAWohASADIAE2AgAgAUUNASAAKAIAIgFBf0YNAiAAIAE2AgAgAkEIaiIBIABBHGooAgA2AgAgACkCFCEFIAMgBDYCACACIAU3AwBBGEEEEJEOIgBFDQMgAEEANgIIIABCgYCAgBA3AgAgACACKQMANwIMIABBFGogASgCADYCACACQRBqJAAgAEEIag8LEIMPCwALEIQPAAtBBEEYQfjKxAAoAgAiAEHMCCAAGxEAAAAL1gECBH8BfiMAQRBrIgIkAAJAAkACQCAABEAgAEEIayIDKAIAIgRBAWohASADIAE2AgAgAUUNASAAKAIAIgFBf0YNAiAAIAE2AgAgAkEIaiIBIABBLGooAgA2AgAgACkCJCEFIAMgBDYCACACIAU3AwBBGEEEEJEOIgBFDQMgAEEANgIIIABCgYCAgBA3AgAgACACKQMANwIMIABBFGogASgCADYCACACQRBqJAAgAEEIag8LEIMPCwALEIQPAAtBBEEYQfjKxAAoAgAiAEHMCCAAGxEAAAALvwEBCH0gAEH////7BzYCDCAAIAIqAhggAioCDCIGIAIqAgAiB0MAAAAAlCIDIAIqAgQiCEMAAAAAlCIEkyIFIAWSIgWUIAcgAioCCCIJQwAAAACUIgogA5MiAyADkiIDlCAIIAQgCpMiBCAEkiIElJOSQwAAAACSkjgCCCAAIAIqAhQgBiADlCAJIASUIAcgBZSTkkMAAAAAkpI4AgQgACACKgIQIAYgBJQgCCAFlCAJIAOUk5JDAAAAAJKSOAIAC68BAQZ9QQAhAiAAIAEqAgwgASoCACIGkyIJIAEqAhwgASoCBCIFkyIHlCABKgIQIAWTIgUgASoCGCAGkyIKlJMiCCAIlCAFIAEqAiAgASoCCCIFkyIGlCABKgIUIAWTIgUgB5STIgcgB5QgBSAKlCAJIAaUkyIGIAaUkpIiBUMAAIAoXgR/IAAgCCAFkSIFlTgCDCAAIAYgBZU4AgggACAHIAWVOAIEQQEFQQALNgIAC8gBAQJ/IwBBEGsiAyQAIAACfwJAIAEoAgQiAkUEQCAAQQI6AAEMAQsgASACQQFrNgIEAkACQCAAAn8gASgCACIBKAIEIgJBA00EQCADQoHKADcDACADEJ8NDAELIAEgAkEEazYCBCABIAEoAgAiAkEEajYCAEEBIQECQCACKAAAIgIOAgIDAAsgA0EBOgAAIAMgAq03AwggA0HIr8EAQZCtwQAQ7woLNgIEQQEMAwtBACEBCyAAIAE6AAELQQALOgAAIANBEGokAAu2AQIDfwF+IAKtIQYgACgCACIDKAIIIQQgAygCACAEa0EHTQRAIAMgBEEIQQFBARDWBiADKAIIIQQLIAMgBEEIaiIANgIIIAMoAgQgBGogBjcAACACBEAgAkECdCEEA0AgASgCACEFIAFBBGohASADIAMoAgAgAGtBA0sEfyAABSADIABBBEEBQQEQ1gYgAygCCAsiAkEEaiIANgIIIAMoAgQgAmogBTYAACAEQQRrIgQNAAsLQQALywECAn8BfiMAQSBrIgIkAAJAIAEoAgQiA0UEQCAAQQA2AgAMAQsgASADQQFrNgIEAkACfyABKAIAIgEoAgQiA0EHTQRAIAJCgcoANwMIIAJBCGoQnw0MAQsgASADQQhrNgIEIAEgASgCACIBQQhqNgIAIAEpAAAiBEKAgICAEFQNASACQQE6AAggAiAENwMQIAJBCGogAkEfakGMrMEAEO8KCyEBIABBAjYCACAAIAE2AgQMAQsgACAEPgIEIABBATYCAAsgAkEgaiQAC9kCAgN/A30jAEHQAGsiAiQAIAJBEGoiAUEBOgA8IAFCgICAgKDh9ZE8NwIAIAFC25+k+rP7w6Q/NwIwIAFBAjYCCCABQZfuxsYDNgI4IAH9DM3MTD4AAAAAAACAPwAAAAD9CwIgIAFBADYCHCACQQxqIAJBPGooAgA2AgAgAiACKQI0NwIEIAItAEwhAyACKgJAIQQgAioCRCEFIAIqAkghBkHoAEEEEJEOIgFFBEBBBEHoAEH4ysQAKAIAIgFBzAggARsRAAAACyABQQI2AiggAUECNgIUIAEgADgCECAB/QwBAAAAAQAAAAAAAAABAAAA/QsCACABIAL9AAIA/QsCLCABQoCAgIDAADcCTCABIAM6AEggASAGOAJEIAEgBTgCQCABIAQ4AjwgAf0MAAAAAAAAAAAAAAAAAAAAAP0LAlQgAUHkAGpBADsBACACQdAAaiQAIAFBCGoLwgECA38BfiMAQRBrIgQkAAJAAkACQCAABEAgAEEQayIFKAIAQQFqIQMgBSADNgIAIANFDQEgACgCAA0CIABBfzYCACAEIAU2AgwgBCAANgIIIAQgAEEQaiIDNgIEIAMgAb0iBqcgBkIgiKcQ3gkiA0UNAyADIAI4AiggAEEANgIAIAUgBSgCAEEBayIANgIAIABFBEAgBEEMahDrDAsgBEEQaiQADwsQgw8LAAsQhA8AC0Hsz8EAQc0AQczQwQAQ0QsAC8IBAgN/AX4jAEEQayIEJAACQAJAAkAgAARAIABBEGsiBSgCAEEBaiEDIAUgAzYCACADRQ0BIAAoAgANAiAAQX82AgAgBCAFNgIMIAQgADYCCCAEIABBEGoiAzYCBCADIAG9IganIAZCIIinEN4JIgNFDQMgAyACOAJoIABBADYCACAFIAUoAgBBAWsiADYCACAARQRAIARBDGoQ6wwLIARBEGokAA8LEIMPCwALEIQPAAtB7M/BAEHNAEHM0MEAENELAAvCAQIDfwF+IwBBEGsiBCQAAkACQAJAIAAEQCAAQRBrIgUoAgBBAWohAyAFIAM2AgAgA0UNASAAKAIADQIgAEF/NgIAIAQgBTYCDCAEIAA2AgggBCAAQRBqIgM2AgQgAyABvSIGpyAGQiCIpxDeCSIDRQ0DIAMgAjgCbCAAQQA2AgAgBSAFKAIAQQFrIgA2AgAgAEUEQCAEQQxqEOsMCyAEQRBqJAAPCxCDDwsACxCEDwALQezPwQBBzQBBzNDBABDRCwALwwECA38BfiMAQRBrIgQkAAJAAkACQCAABEAgAEEQayIFKAIAQQFqIQMgBSADNgIAIANFDQEgACgCAA0CIABBfzYCACAEIAU2AgwgBCAANgIIIAQgAEEQaiIDNgIEIAMgAb0iBqcgBkIgiKcQ3gkiA0UNAyADIAI2AsACIABBADYCACAFIAUoAgBBAWsiADYCACAARQRAIARBDGoQ6wwLIARBEGokAA8LEIMPCwALEIQPAAtB7M/BAEHNAEHM0MEAENELAAu3AQIDfwF+IwBBEGsiAyQAAkACQCAABEAgAEEQayIEKAIAQQFqIQIgBCACNgIAIAJFDQEgACgCACICQX9GDQIgACACQQFqNgIAIAMgBDYCDCADIAA2AgggAyAAQRBqIgI2AgQgAiABvSIFpyAFQiCIpxC5DCECIAAgACgCAEEBazYCACAEIAQoAgBBAWsiADYCACAARQRAIANBDGoQ6wwLIANBEGokACACQQBHDwsQgw8LAAsQhA8AC8MBAgN/AX4jAEEQayIEJAACQAJAAkAgAARAIABBCGsiBSgCAEEBaiEDIAUgAzYCACADRQ0BIAAoAgANAiAAQX82AgAgBCAFNgIMIAQgADYCCCAEIABBBGoiAzYCBCADIAG9IganIAZCIIinEN8JIgNFDQMgAyACOAKQASAAQQA2AgAgBSAFKAIAQQFrIgA2AgAgAEUEQCAEQQxqEO4MCyAEQRBqJAAPCxCDDwsACxCEDwALQdzQwQBBzABBuNHBABDRCwALwgECA38BfiMAQRBrIgQkAAJAAkACQCAABEAgAEEIayIFKAIAQQFqIQMgBSADNgIAIANFDQEgACgCAA0CIABBfzYCACAEIAU2AgwgBCAANgIIIAQgAEEEaiIDNgIEIAMgAb0iBqcgBkIgiKcQ3wkiA0UNAyADIAI4AmggAEEANgIAIAUgBSgCAEEBayIANgIAIABFBEAgBEEMahDuDAsgBEEQaiQADwsQgw8LAAsQhA8AC0Hc0MEAQcwAQbjRwQAQ0QsAC8IBAgN/AX4jAEEQayIEJAACQAJAAkAgAARAIABBCGsiBSgCAEEBaiEDIAUgAzYCACADRQ0BIAAoAgANAiAAQX82AgAgBCAFNgIMIAQgADYCCCAEIABBBGoiAzYCBCADIAG9IganIAZCIIinEN8JIgNFDQMgAyACOAJkIABBADYCACAFIAUoAgBBAWsiADYCACAARQRAIARBDGoQ7gwLIARBEGokAA8LEIMPCwALEIQPAAtB3NDBAEHMAEG40cEAENELAAvDAQIDfwF+IwBBEGsiBCQAAkACQAJAIAAEQCAAQQhrIgUoAgBBAWohAyAFIAM2AgAgA0UNASAAKAIADQIgAEF/NgIAIAQgBTYCDCAEIAA2AgggBCAAQQRqIgM2AgQgAyABvSIGpyAGQiCIpxDfCSIDRQ0DIAMgAjgClAEgAEEANgIAIAUgBSgCAEEBayIANgIAIABFBEAgBEEMahDuDAsgBEEQaiQADwsQgw8LAAsQhA8AC0Hc0MEAQcwAQbjRwQAQ0QsAC+MBAgR/AX4jAEEQayIEJAACQAJAAkAgAARAIABBCGsiBSgCAEEBaiEDIAUgAzYCACADRQ0BIAAoAgANAiAAQX82AgAgBCAFNgIMIAQgADYCCCAEIABBBGoiAzYCBCADIAG9IgenIAdCIIinEN8JIgZFDQMjAEEQayIDJAAgA0EANgIIIAMgAjgCDCAGIANBCGoQ9QUgA0EQaiQAIABBADYCACAFIAUoAgBBAWsiADYCACAARQRAIARBDGoQ7gwLIARBEGokAA8LEIMPCwALEIQPAAtB3NDBAEHMAEG40cEAENELAAvjAQIEfwF+IwBBEGsiBCQAAkACQAJAIAAEQCAAQQhrIgUoAgBBAWohAyAFIAM2AgAgA0UNASAAKAIADQIgAEF/NgIAIAQgBTYCDCAEIAA2AgggBCAAQQRqIgM2AgQgAyABvSIHpyAHQiCIpxDfCSIGRQ0DIwBBEGsiAyQAIANBATYCCCADIAI4AgwgBiADQQhqEPUFIANBEGokACAAQQA2AgAgBSAFKAIAQQFrIgA2AgAgAEUEQCAEQQxqEO4MCyAEQRBqJAAPCxCDDwsACxCEDwALQdzQwQBBzABBuNHBABDRCwALtwECA38BfiMAQRBrIgMkAAJAAkAgAARAIABBCGsiBCgCAEEBaiECIAQgAjYCACACRQ0BIAAoAgAiAkF/Rg0CIAAgAkEBajYCACADIAQ2AgwgAyAANgIIIAMgAEEEaiICNgIEIAIgAb0iBacgBUIgiKcQugwhAiAAIAAoAgBBAWs2AgAgBCAEKAIAQQFrIgA2AgAgAEUEQCADQQxqEO4MCyADQRBqJAAgAkEARw8LEIMPCwALEIQPAAu+AQEEfyMAQRBrIgEkAAJAAkAgAARAIABBCGsiAygCAEEBaiECIAMgAjYCACACRQ0BIAAoAgAiAkF/Rg0CIAAgAkEBajYCACABIAM2AgggASAANgIEIAEgAEEIajYCACABIAAoApgCIgIQHSIENgIMIAFBDGogACgClAIgAhDKCSAAIAAoAgBBAWs2AgAgAyADKAIAQQFrIgA2AgAgAEUEQCABQQhqEPAMCyABQRBqJAAgBA8LEIMPCwALEIQPAAu+AQEEfyMAQRBrIgEkAAJAAkAgAARAIABBCGsiAygCAEEBaiECIAMgAjYCACACRQ0BIAAoAgAiAkF/Rg0CIAAgAkEBajYCACABIAM2AgggASAANgIEIAEgAEEIajYCACABIAAoAqQCIgIQHSIENgIMIAFBDGogACgCoAIgAhDKCSAAIAAoAgBBAWs2AgAgAyADKAIAQQFrIgA2AgAgAEUEQCABQQhqEPAMCyABQRBqJAAgBA8LEIMPCwALEIQPAAv+AQICewF/IwBB4ABrIgMkACADQQxqIgYgARDtBSADIAP9XQI0IAP9CQI8/Q0AAQIDBAUGBxgZGhsAAQIDIgUgAv1dAgAgAv0JAgj9DQABAgMEBQYHGBkaGwABAgP95gEiBP0fAjgCPCADIAT9HwE4AjggAyAE/R8AOAI0IAMgBCAF/ecBIgQgA/0AAkD95gH9CwJAIAMgBP0fASADKgJQlDgCUCADIAT9HwIgAyoCVJQ4AlRB1ABBBBCRDiIBBEAgASAGQdQA/AoAACAAQeiywwA2AgQgACABNgIAIANB4ABqJAAPC0EEQdQAQfjKxAAoAgAiAEHMCCAAGxEAAAAL7wEBAn0gAEEANgIYIABBADYCECAA/QwAAAAAAAAAAAAAAAAAAIA//QsCACAAIAEqAgAiA0MAAAC/lDgCFCAAQwAAAABDAACAPyACIAMgASoCBCICIAKUIgRD2w9JQJSUIgIgApJDAABAQJWUIgKVIAJDAAAAAFsbOAIcIABDAAAAAEMAAIA/IARDAABAQJQiBEMAAKBBlSADIAOUQwAAgECUQwAAQECUQwAAoEKVkiAClCIDlSADQwAAAABbGyIDOAIoIABDAAAAAEMAAIA/IARDAAAgQZUgApQiApUgAkMAAAAAWxs4AiQgACADOAIgC8YBAgV/AX4jAEEwayICJAAgASgCAEGAgICAeEYEQCABKAIMIQMgAkEMaiIFQQhqIgZBADYCACACQoCAgIAQNwIMIAJBGGoiBEEIaiADKAIAIgNBCGopAgA3AwAgBEEQaiADQRBqKQIANwMAIAIgAykCADcDGCAFQdiJxAAgBBC4AxogAkEIaiAGKAIAIgQ2AgAgAiACKQIMIgc3AwAgAUEIaiAENgIAIAEgBzcCAAsgAEHMjcQANgIEIAAgATYCACACQTBqJAALkwIBAn8jAEEgayIFJABBiMvEAEGIy8QAKAIAIgZBAWo2AgACQAJ/QQAgBkEASA0AGkEBQejOxAAtAAANABpB6M7EAEEBOgAAQeTOxABB5M7EACgCAEEBajYCAEECCyIGQQJHBEAgBkEBcUUNASAFQQhqIAAgASgCGBEAAAwBC0H8ysQAKAIAIgZBAEgNAEH8ysQAIAZBAWo2AgBB/MrEAEGAy8QAKAIABH8gBSAAIAEoAhQRAAAgBSAEOgAdIAUgAzoAHCAFIAI2AhggBSAFKQMANwIQQYDLxAAoAgAgBUEQakGEy8QAKAIAKAIUEQAAQfzKxAAoAgBBAWsFIAYLNgIAQejOxABBADoAACADRQ0AAAsAC/IBAgN/AX4jAEEQayIDJAACQAJAAkAgAARAIABBEGsiBCgCAEEBaiECIAQgAjYCACACRQ0BIAAoAgANAiAAQX82AgAgAyAENgIMIAMgADYCCCADIABBEGoiAjYCBCACIAG9IgWnIAVCIIinEN4JIgJFDQMgAkEBOgDUAiACQgA3A3AgAiACKgLMAjgC0AIgAkH4AGr9DAAAAAAAAAAAAAAAAAAAAAD9CwMAIABBADYCACAEIAQoAgBBAWsiADYCACAARQRAIANBDGoQ6wwLIANBEGokAA8LEIMPCwALEIQPAAtB7M/BAEHNAEHM0MEAENELAAvNAQEEfwJAAkACQCAABEAgAEEIayIDKAIAIgVBAWohAiADIAI2AgAgAkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgAgACgCBCIEKAIIIAFNBEAgACACNgIAIAMgBTYCAEEADwsgBCgCBCEEIAAgAjYCACADIAU2AgBBEEEEEJEOIgBFDQMgAEEANgIIIABCgYCAgBA3AgAgACAEIAFBqAFsajYCDCAAQQhqDwsQgw8LAAsQhA8AC0EEQRBB+MrEACgCACIAQcwIIAAbEQAAAAumAQEJfSACKgIEIgkgASoCACIGlCABKgIEIgcgAioCACIKlJMiBCAEkiEEIAEqAggiCCAKlCACKgIIIgMgBpSTIgUgBZIhBSAAIAMgASoCDCILIASUIAYgBZQgByAHIAOUIAggCZSTIgMgA5IiA5STkpI4AgggACAJIAsgBZQgCCADlCAGIASUk5KSOAIEIAAgCiALIAOUIAcgBJQgCCAFlJOSkjgCAAutAQEFfSACKgIAIgMgASoCGJQgAioCBCIEIAEqAhyUkiACKgIIIgUgASoCIJSSIQYgAUEYaiECAkAgASoCACADlCABKgIEIASUkiABKgIIIAWUkiIHIAMgASoCDJQgBCABKgIQlJIgBSABKgIUlJIiA15FBEAgAUEMaiACIAMgBl4bIQIMAQsgBiAHXUUNACABIQILIAAgAikCADcCACAAQQhqIAJBCGooAgA2AgALugEBBH8jAEEQayIDJAACQAJAIAAEQCAAQQhrIgQoAgAiBkEBaiEFIAQgBTYCACAFRQ0BIAAoAgANAiADIAQ2AgwgAyAANgIIIAMgAEEEajYCBAJAIAAoAgwgAU0EQCAAQQA2AgAgBCAGNgIADAELIAAoAgggAUHUAWxqIAI4AoABIAQoAgAhASAAQQA2AgAgBCABQQFrIgA2AgAgAA0AIANBDGoQvgoLIANBEGokAA8LEIMPCwALEIQPAAu6AQEEfyMAQRBrIgMkAAJAAkAgAARAIABBCGsiBCgCACIGQQFqIQUgBCAFNgIAIAVFDQEgACgCAA0CIAMgBDYCDCADIAA2AgggAyAAQQRqNgIEAkAgACgCDCABTQRAIABBADYCACAEIAY2AgAMAQsgACgCCCABQdQBbGogAjgChAEgBCgCACEBIABBADYCACAEIAFBAWsiADYCACAADQAgA0EMahC+CgsgA0EQaiQADwsQgw8LAAsQhA8AC7oBAQR/IwBBEGsiAyQAAkACQCAABEAgAEEIayIEKAIAIgZBAWohBSAEIAU2AgAgBUUNASAAKAIADQIgAyAENgIMIAMgADYCCCADIABBBGo2AgQCQCAAKAIMIAFNBEAgAEEANgIAIAQgBjYCAAwBCyAAKAIIIAFB1AFsaiACOAKIASAEKAIAIQEgAEEANgIAIAQgAUEBayIANgIAIAANACADQQxqEL4KCyADQRBqJAAPCxCDDwsACxCEDwALugEBBH8jAEEQayIDJAACQAJAIAAEQCAAQQhrIgQoAgAiBkEBaiEFIAQgBTYCACAFRQ0BIAAoAgANAiADIAQ2AgwgAyAANgIIIAMgAEEEajYCBAJAIAAoAgwgAU0EQCAAQQA2AgAgBCAGNgIADAELIAAoAgggAUHUAWxqIAI4AowBIAQoAgAhASAAQQA2AgAgBCABQQFrIgA2AgAgAA0AIANBDGoQvgoLIANBEGokAA8LEIMPCwALEIQPAAu6AQEEfyMAQRBrIgMkAAJAAkAgAARAIABBCGsiBCgCACIGQQFqIQUgBCAFNgIAIAVFDQEgACgCAA0CIAMgBDYCDCADIAA2AgggAyAAQQRqNgIEAkAgACgCDCABTQRAIABBADYCACAEIAY2AgAMAQsgACgCCCABQdQBbGogAjgCkAEgBCgCACEBIABBADYCACAEIAFBAWsiADYCACAADQAgA0EMahC+CgsgA0EQaiQADwsQgw8LAAsQhA8AC7oBAQR/IwBBEGsiAyQAAkACQCAABEAgAEEIayIEKAIAIgZBAWohBSAEIAU2AgAgBUUNASAAKAIADQIgAyAENgIMIAMgADYCCCADIABBBGo2AgQCQCAAKAIMIAFNBEAgAEEANgIAIAQgBjYCAAwBCyAAKAIIIAFB1AFsaiACOAKUASAEKAIAIQEgAEEANgIAIAQgAUEBayIANgIAIAANACADQQxqEL4KCyADQRBqJAAPCxCDDwsACxCEDwALugEBBH8jAEEQayIDJAACQAJAIAAEQCAAQQhrIgQoAgAiBkEBaiEFIAQgBTYCACAFRQ0BIAAoAgANAiADIAQ2AgwgAyAANgIIIAMgAEEEajYCBAJAIAAoAgwgAU0EQCAAQQA2AgAgBCAGNgIADAELIAAoAgggAUHUAWxqIAI4AqwBIAQoAgAhASAAQQA2AgAgBCABQQFrIgA2AgAgAA0AIANBDGoQvgoLIANBEGokAA8LEIMPCwALEIQPAAu6AQEEfyMAQRBrIgMkAAJAAkAgAARAIABBCGsiBCgCACIGQQFqIQUgBCAFNgIAIAVFDQEgACgCAA0CIAMgBDYCDCADIAA2AgggAyAAQQRqNgIEAkAgACgCDCABTQRAIABBADYCACAEIAY2AgAMAQsgACgCCCABQdQBbGogAjgCwAEgBCgCACEBIABBADYCACAEIAFBAWsiADYCACAADQAgA0EMahC+CgsgA0EQaiQADwsQgw8LAAsQhA8AC7oBAQR/IwBBEGsiAyQAAkACQCAABEAgAEEIayIEKAIAIgZBAWohBSAEIAU2AgAgBUUNASAAKAIADQIgAyAENgIMIAMgADYCCCADIABBBGo2AgQCQCAAKAIMIAFNBEAgAEEANgIAIAQgBjYCAAwBCyAAKAIIIAFB1AFsaiACOAK4ASAEKAIAIQEgAEEANgIAIAQgAUEBayIANgIAIAANACADQQxqEL4KCyADQRBqJAAPCxCDDwsACxCEDwALugEBBH8jAEEQayIDJAACQAJAIAAEQCAAQQhrIgQoAgAiBkEBaiEFIAQgBTYCACAFRQ0BIAAoAgANAiADIAQ2AgwgAyAANgIIIAMgAEEEajYCBAJAIAAoAgwgAU0EQCAAQQA2AgAgBCAGNgIADAELIAAoAgggAUHUAWxqIAI4ArwBIAQoAgAhASAAQQA2AgAgBCABQQFrIgA2AgAgAA0AIANBDGoQvgoLIANBEGokAA8LEIMPCwALEIQPAAu6AQEEfyMAQRBrIgMkAAJAAkAgAARAIABBCGsiBCgCACIGQQFqIQUgBCAFNgIAIAVFDQEgACgCAA0CIAMgBDYCDCADIAA2AgggAyAAQQRqNgIEAkAgACgCDCABTQRAIABBADYCACAEIAY2AgAMAQsgACgCCCABQdQBbGogAjgCmAEgBCgCACEBIABBADYCACAEIAFBAWsiADYCACAADQAgA0EMahC+CgsgA0EQaiQADwsQgw8LAAsQhA8AC7oBAQR/IwBBEGsiAyQAAkACQCAABEAgAEEIayIEKAIAIgZBAWohBSAEIAU2AgAgBUUNASAAKAIADQIgAyAENgIMIAMgADYCCCADIABBBGo2AgQCQCAAKAIMIAFNBEAgAEEANgIAIAQgBjYCAAwBCyAAKAIIIAFB1AFsaiACOAKcASAEKAIAIQEgAEEANgIAIAQgAUEBayIANgIAIAANACADQQxqEL4KCyADQRBqJAAPCxCDDwsACxCEDwALzwECAX8GfSMAQdABayIDJAAgA/0MAAAAAAAAAAAAAAAAAAAAAP0LBMABIAP9DAAAAAABAAAAAgAAAAMAAAD9CwQQIANBIGpBAEGgAfwLACADIAAoAgQgACgCCCADQRBqIAEgAhAyIAEqAgQhBCADKgIEIQYgASoCACEFIAMqAgAhByABKgIIIQggAyoCCCEJIAMtAAwhACADQdABaiQAIAcgBZMiBSAFlCAGIASTIgQgBJSSIAkgCJMiBCAElJKRIgQgBIwgBCAAQQFxGyACGwvJAQEBfyMAQRBrIggkACAAKAIAIAFBBiAAKAIEKAIMEQUAIQEgCEEAOgANIAggAToADCAIIAA2AgggCEEIaiACQQQgAyAEEKIGIAVBBSAGIAcQogYhASAILQANIgIgCC0ADCIDciEAAkAgAkEBRw0AIANBAXENACABKAIAIgAtAApBgAFxRQRAIAAoAgBBy7HEAEECIAAoAgQoAgwRBQAhAAwBCyAAKAIAQcqxxABBASAAKAIEKAIMEQUAIQALIAhBEGokACAAQQFxC7QBAQZ/IwBBEGsiBCQAIARBCGogAigCCCIFIAIoAgQiBhDuCiAEKAIIIQMgBCgCDCIIBH8gCCADEJEOBSADCyIHBEAgBUEBayEDIAdCgYCAgBA3AgAgBgRAIAcgA0F4cWpBCGogASAG/AoAAAsgAyAGakEAIAVrcSIDBEAgASADIAUQ6A4LIAAgAjYCBCAAIAc2AgAgBEEQaiQADwsgAyAIQfjKxAAoAgAiAEHMCCAAGxEAAAALygQCCX8BfiMAQYADayIGJAACQAJAIAAEQCAAQQhrIgkoAgBBAWohAyAJIAM2AgAgA0UNASAAKAIADQIgAEF/NgIAIAYgCTYCDCAGIAA2AgggBiAAQQhqIgM2AgQgBkEQaiEKIAG9IgynIQggDEIgiKchBCACQQBHIQIjAEHwAmsiCyQAAkACQAJAIAggAygCTE8NACADKAJIIAhBDGxqIgUoAgBBAUcNACAEIAUoAgRHDQAgBUEANgIAIAUoAgghByAFIAMpAjw3AgQgAyAINgJAIANBATYCPCADIAMoAlBBAWo2AlAgAyADKAJUQQFrNgJUAkAgAygCLCAHSwRAIANBGGohCCACDQEMAwsgCkECOgC9AgwDCyADKAIoIAdBgANsaiIEKAL8AiEFIAMoAiAiAiAEKAL4AiIESwRAIAMgAygCHCAEQQR0aiICKAIAIAIoAgQQ2wMgAygCICECCyACIAVNDQEgAyADKAIcIAVBBHRqIgIoAgAgAigCBBDbAwwBCyAKQQI6AL0CDAELIAsgCCAHELcDIAMoAiwgB0sEQAJAAkAgAygCKCAHQYADbGoiBCgC6AIiAiADKAJMTw0AIAMoAkggAkEMbGoiAigCAEEBRw0AIAIoAgQgBCgC7AJGDQELQdCLwgBBE0HAwcIAENELAAsgAiAHNgIICyAKIAtB8AL8CgAACyALQfACaiQAIABBADYCACAJIAkoAgBBAWsiADYCACAARQRAIAZBDGoQ7wwLIAZBgANqJAAPCxCDDwsACxCEDwALkQUCD38BfiMAQRBrIgUkAAJAAkAgAARAIABBCGsiBygCAEEBaiEDIAcgAzYCACADRQ0BIAAoAgAiA0F/Rg0CIAAgA0EBajYCACAFIAc2AgggBSAANgIEIAUgAEEIaiIDNgIAIAUgAjYCDCAFQQxqIQ8jAEEQayIEJAAgBEGBATYCCCABvSISpyICIAMoAjhJBEAgAygCNCACQQN0aiICQQRqQQAgAigCACASQiCIp0YbIQYLIANBGGohCSADKAIcIRAgAygCICERIAMoAiwhDSADKAIoIQpBAiEOAkACQANAIA5BAEchAwJ+AkADQAJAIANBAXENACANIBKnIgNLDQIgEkIgiKchAgNAIA0gAiIDTQ0BIAogA0GAA2xqIgsoAvQCIQIgCygC+AIgCEYNAAsgEkL/////D4MgAq1CIIaEDAMLIAYEQCAGKAIAIQhBACEOQn8hEkEAIQZBACEDIAggEU8NASAQIAhBBHRqKQIIIRIMAQsLIAQoAggiAkGDAUsEQCACEAILIARBEGokAAwECyAKIANBgANsajUC8AIgEkKAgICAcIOECyESIAkoAhQgA0sEQCADQYADbCILIAkoAhBqIgMoAvgCIgIgCSgCCCIMTw0CIANB+AJqKAIEIgIgDE8EQCACIAxBnMTBABCFCwALIAQgCiALaisD6AIQADYCDCAEIA8gBEEIaiAEQQxqEMAMIAQoAgQiAkGEAU8EQCACEAILIAQoAgwiAkGEAUkNASACEAIMAQsLQfzDwQAQ8g4ACyACIAxBjMTBABCFCwALIAAgACgCAEEBazYCACAHIAcoAgBBAWsiADYCACAARQRAIAVBCGoQ7wwLIAVBEGokAA8LEIMPCwALEIQPAAuOBQIOfwF+IwBBEGsiBSQAAkACQCAABEAgAEEIayIIKAIAQQFqIQMgCCADNgIAIANFDQEgACgCACIDQX9GDQIgACADQQFqNgIAIAUgCDYCCCAFIAA2AgQgBSAAQQhqIgM2AgAgBSACNgIMIAVBDGohDiMAQRBrIgQkACAEQYEBNgIIIAG9IhGnIgIgAygCOEkEQCADKAI0IAJBFGxqIgJBBGpBACACKAIAIBFCIIinRhshBgsgA0EYaiEJIAMoAhwhDyADKAIgIRAgAygCLCELIAMoAighDEECIQ0CQAJAA0AgDUEARyEDAn4CQANAAkAgA0EBcQ0AIAsgEaciA0sNAiARQiCIpyECA0AgCyACIgNNDQEgDCADQQR0aiIHKAIEIQIgBygCCCAKRg0ACyARQv////8PgyACrUIghoQMAwsgBgRAIAZBCGohAkEAIQ1CfyERQQAhBkEAIQMgECACKAIAIgpNDQEgDyAKQQR0aikCCCERDAELCyAEKAIIIgJBgwFLBEAgAhACCyAEQRBqJAAMBAsgDCADQQR0ajUCACARQoCAgIBwg4QLIREgCSgCFCADSwRAIAkoAhAgA0EEdGoiAygCCCICIAkoAggiB08NAiADKAIMIgIgB08EQCACIAdBnMTBABCFCwALIAQgCSgCBCACQQR0aisCABAANgIMIAQgDiAEQQhqIARBDGoQwAwgBCgCBCICQYQBTwRAIAIQAgsgBCgCDCICQYQBSQ0BIAIQAgwBCwtB/MPBABDyDgALIAIgB0GMxMEAEIULAAsgACAAKAIAQQFrNgIAIAggCCgCAEEBayIANgIAIABFBEAgBUEIahDqDAsgBUEQaiQADwsQgw8LAAsQhA8AC+oDAgN/AX4jAEEQayIEJAACQAJAIAAEQCAAQQhrIgMoAgBBAWohAiADIAI2AgAgAkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgAgBCADNgIMIAQgADYCCCAEIABBBGoiAjYCBAJAAkAgAiABvSIFpyAFQiCIpxC6DCICBEACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAJBQGsoAgAgAkHEAGooAgAiAigCCEEBa0F4cWpBCGogAigCoAERBAAiAkH/AXFBBGsOEA8AEAECAwQFBgcICQoLDA0QC0ESIQIMDwtBBCECDA4LQREhAgwNC0EHIQIMDAtBCCECDAsLQQkhAgwKC0EKIQIMCQtBCyECDAgLQQwhAgwHC0ENIQIMBgtBDiECDAULQQ8hAgwEC0EQIQIMAwsjAEEQayIAJAAgAEGg1cEANgIMIABBFDYCCCAAQYzVwQA2AgQjAEEQayICJAAgAiAAQQRqIgApAgA3AgggAkEIakGkjsQAIAAoAghBAUEAEPcIAAtB3NDBAEHMAEGo0cEAENELAAtBBSECCyAAIAAoAgBBAWs2AgAgAyADKAIAQQFrIgM2AgAgAkH/AXEhACADRQRAIARBDGoQ7gwLIARBEGokACAADwsQgw8LAAsQhA8AC6IBAQd9An0gAioCACIEIASUIAIqAgQiCSAJlJIgAioCCCIDIAOUkpEhBUMAAAAAIAQgBZUiBCAElCADIAWVIgMgA5SSIgZDAAAAAFsNABogAyAGkSIHlSABKgIEIgaUIQggBCAHlSAGlAshByAAIAggAyABKgIIIgOUkjgCCCAAIAEqAgAgCSAFlSIFmCAFIAOUkjgCBCAAIAcgBCADlJI4AgAL7wMBC38jAEEQayIEJAACQAJAIAAEQCAAQQhrIgYoAgBBAWohAiAGIAI2AgAgAkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgAgBCAGNgIIIAQgADYCBCAEIABBCGoiAjYCACAEIAE2AgwgBEEMaiEJIwBBEGsiAyQAIANBgQE2AggCQCACKAI4IgFFDQAgAigCNCEFIAFBFGxBFGshByACKAJIIQogAigCTCELA0ACQAJAIAUoAgAiDEF/RwRAIAVBEGooAgAiAg0BCyAHRQ0DDAELAkACQCAFQQRqKAIAIgEgC08NACAKIAFBpAJsaiIBKAIAQYCAgIB4Rg0AIAEoAqACIAVBCGooAgBHDQAgAiABKAIITw0BIAMgCK0gDK1CIIaEvxAANgIMIAMgCSADQQhqIANBDGoQwAwgAygCBCIBQYQBTwRAIAEQAgsgAygCDCIBQYQBTwRAIAEQAgsgBw0CDAQLQZGAwABBE0HQwsEAENELAAtB4MLBABDyDgALIAVBFGohBSAHQRRrIQcgCEEBaiEIDAALAAsgAygCCCIBQYQBTwRAIAEQAgsgA0EQaiQAIAAgACgCAEEBazYCACAGIAYoAgBBAWsiADYCACAARQRAIARBCGoQ6gwLIARBEGokAA8LEIMPCwALEIQPAAvoAgIGfwF+IwBBEGsiAyQAAkACQCAABEAgAEEQayIEKAIAQQFqIQIgBCACNgIAIAJFDQEgACgCACICQX9GDQIgACACQQFqNgIAIAMgBDYCCCADIAA2AgQgAyAAQRBqIgI2AgAgAyABNgIMIANBDGohByMAQRBrIgEkACABQYEBNgIIIAIoAowDQYADbCEFIAIoAogDIQIDQAJAAkAgBQRAIAIoAgBFDQEgASAIIAJBBGo1AgBCIIZ8vxAANgIMIAEgByABQQhqIAFBDGoQwAwgASgCBCIGQYQBTwRAIAYQAgsgASgCDCIGQYQBSQ0BIAYQAgwBCyABKAIIIgJBhAFPBEAgAhACCyABQRBqJAAMAQsgAkGAA2ohAiAFQYADayEFIAhCAXwhCAwBCwsgACAAKAIAQQFrNgIAIAQgBCgCAEEBayIANgIAIABFBEAgA0EIahDrDAsgA0EQaiQADwsQgw8LAAsQhA8AC+YCAgZ/AX4jAEEQayIDJAACQAJAIAAEQCAAQQhrIgQoAgBBAWohAiAEIAI2AgAgAkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgAgAyAENgIIIAMgADYCBCADIABBBGoiAjYCACADIAE2AgwgA0EMaiEHIwBBEGsiASQAIAFBgQE2AgggAigCEEGwAWwhBSACKAIMIQIDQAJAAkAgBQRAIAIoAgBFDQEgASAIIAJBBGo1AgBCIIZ8vxAANgIMIAEgByABQQhqIAFBDGoQwAwgASgCBCIGQYQBTwRAIAYQAgsgASgCDCIGQYQBSQ0BIAYQAgwBCyABKAIIIgJBhAFPBEAgAhACCyABQRBqJAAMAQsgAkGwAWohAiAFQbABayEFIAhCAXwhCAwBCwsgACAAKAIAQQFrNgIAIAQgBCgCAEEBayIANgIAIABFBEAgA0EIahDuDAsgA0EQaiQADwsQgw8LAAsQhA8AC6YBACMAQRBrIgMkACAAKAIAIQAgA0GBATYCCCADIAGtIAKtQiCGhL8QADYCDCADIAAgA0EIaiADQQxqEMAMQQEhAiADKAIEIQACQAJAIAMoAgBBAXFFBEAgABABQQBHIQIgAEGDAUsNAQwCCyAAQYQBSQ0BCyAAEAILIAMoAgwiAEGEAU8EQCAAEAILIAMoAggiAEGEAU8EQCAAEAILIANBEGokACACC6YBAgN/AX4jAEEQayIDJAACQAJAIAAEQCAAQQhrIgQoAgBBAWohBSAEIAU2AgAgBUUNASAAKAIADQIgAEF/NgIAIAMgBDYCDCADIAA2AgggAyAAQQhqIgU2AgQgBSABvSIGpyAGQiCIpyACQQBHEDEgAEEANgIAIAQgBCgCAEEBayIANgIAIABFBEAgA0EMahDqDAsgA0EQaiQADwsQgw8LAAsQhA8AC5UCAQF/QbABQQgQkQ4iAEUEQEEIQbABQfjKxAAoAgAiAEHMCCAAGxEAAAALIABCADcDMCAAQoCAgIDAADcDKCAAQgQ3AyAgAEIANwMYIABCgICAgIAINwMQIABBADYCCCAAQoGAgIAQNwMAIABCgICAgMAANwOQASAAQgA3A4gBIABCgICAgMAANwOAASAAQgQ3A3ggAEIANwNwIABCgICAgMAANwNoIABCEDcDYCAAQgA3A1ggAEKAgICAgAg3A1AgAEKJ2bnijtO+lwg3A0ggAEHgzcEAKQMANwM4IABBQGtB6M3BACkDADcDACAAQagBakEAOgAAIAD9DAAAAAAAAAAAAAAAAAAAAAD9CwOYASAAQQhqC6QBAQR/IAAoAgAhAiAAIAEQtggCQCAAKAIIIgQgAiAAKAIMIgFrTQ0AIAAoAgAhBSABIAIgBGsiAWshAwJAIAEgA0sEQCAFIAJrIANPDQELIAUgAWshAiABQQJ0IgEEQCAAKAIEIgMgAkECdGogAyAEQQJ0aiAB/AoAAAsgACACNgIIDwsgA0ECdCIBRQ0AIAAoAgQiACACQQJ0aiAAIAH8CgAACwu+AQEBfyMAQRBrIgUkACAAKAIAIAFBCCAAKAIEKAIMEQUAIQEgBUEAOgANIAUgAToADCAFIAA2AgggBUEIaiACQQYgAyAEEKIGIQEgBS0ADSICIAUtAAwiA3IhAAJAIAJBAUcNACADQQFxDQAgASgCACIALQAKQYABcUUEQCAAKAIAQcuxxABBAiAAKAIEKAIMEQUAIQAMAQsgACgCAEHKscQAQQEgACgCBCgCDBEFACEACyAFQRBqJAAgAEEBcQuuAQEBfyMAQRBrIgYkAAJAIAEEQCAGQQRqIAEgAyAEIAUgAigCEBEHAAJAIAYoAgQiAiAGKAIMIgFNBEAgBigCCCEFDAELIAJBAnQhAiAGKAIIIQMgAUUEQEEEIQUgAyACQQQQ6A4MAQsgAyACQQQgAUECdCICEPINIgVFDQILIAAgATYCBCAAIAU2AgAgBkEQaiQADwtB4MzCAEEyEIIPAAtBBCACQdDMwgAQ1w0AC6oBAwN/AX4BfAJAAkAgAQRAIAFBCGsiBCgCACIFQQFqIQMgBCADNgIAIANFDQEgASgCACIDQX9GDQIgASADQQFqNgIAAkAgASgCDCACTQ0AIAEoAgggAkHUAWxqIgIoAgBBAXFFDQAgAkEEaisCACEHQgEhBgsgASADNgIAIAAgBj4CACAEIAU2AgAgACAHRAAAAAAAAAAAIAanGzkDCA8LEIMPCwALEIQPAAunBgIQfwF+IwBBEGsiByQAAkACQCAABEAgAEEIayIJKAIAQQFqIQMgCSADNgIAIANFDQEgACgCACIDQX9GDQIgACADQQFqNgIAIAcgCTYCDCAHIAA2AgggByAAQQRqIgU2AgQjAEEgayIEJAAgBCACNgIUIARBgQE2AhggAb0iE0IgiKchDgJ/QQAgE6ciDyAFKAI4Tw0AGkEAIAUoAjQgD0EMbGoiAigCACAORw0AGiACKAIEIQhBAQshCiAIIAUoAghJIRAgBSgCBCAIQQR0akEIaiERIAUoAhQhCyAFKAIQIQxBAiENAkACQANAIA1BAEchAgJ+AkACQAJAIBAEQANAAkAgAkEBcQ0AIAsgE6ciAksNBCATQiCIpyEDA0AgCyADIgJNDQEgDCACQThsaiIGKAIsIQMgBigCMCAIRg0ACwwFCyAKRQ0CIBEpAgAhE0EAIQ1BACEKQQAhAgwACwALA0ACQCACQQFxDQAgCyATpyICSw0DIBNCIIinIQMDQCALIAMiAk0NASAMIAJBOGxqIgYoAiwhAyAGKAIwIAhGDQALDAQLIAohA0EAIQ1CfyETQQAhCkEAIQIgAw0ACwsgBCgCGCICQYMBSwRAIAIQAgsgBCgCFCICQYQBTwRAIAIQAgsgBEEgaiQADAULIAwgAkE4bGoiBjUCKCATQoCAgIBwg4QMAQsgE0L/////D4MgA61CIIaECyETIAUoAhQgAksEQCAFKAIQIAJBOGxqIgMoAjAiEiAFKAIIIgJPDQIgA0EwaigCBCIDIAJPBEAgAyACQZzEwQAQhQsACyAEAn4gBigCDCICIA9GIAYoAhAiAyAORnFFBEAgAq0gA61CIIaEDAELIAYpAhQLvxAANgIcIARBCGogBEEUaiAEQRhqIARBHGoQwAwgBCgCDCICQYQBTwRAIAIQAgsgBCgCHCICQYQBSQ0BIAIQAgwBCwtB/MPBABDyDgALIBIgAkGMxMEAEIULAAsgACAAKAIAQQFrNgIAIAkgCSgCAEEBayIANgIAIABFBEAgB0EMahDpDAsgB0EQaiQADwsQgw8LAAsQhA8AC8oGAhF/An4jAEEQayIHJAACQAJAIAAEQCAAQQhrIgkoAgBBAWohAyAJIAM2AgAgA0UNASAAKAIAIgNBf0YNAiAAIANBAWo2AgAgByAJNgIMIAcgADYCCCAHIABBBGoiAzYCBCMAQSBrIgUkACAFIAI2AhQgBUGBATYCGCABvSIUQiCIpyEPAn9BACAUpyIQIAMoAjhPDQAaQQAgAygCNCAQQQxsaiIEKAIAIA9HDQAaIAQoAgghCEEBCyECIANBGGohCiAIIAMoAiBJIRIgAygCHCAIQQR0akEIaiETIAMoAiwhCyADKAIoIQxBAiENAkACQANAIA1BAEchBAJ+AkACQAJAIBIEQANAAkAgBEEBcQ0AIAsgFKciBEsNBCAUQiCIpyEDA0AgCyADIgRNDQEgDCADQRRsaiIGKAIEIQMgBigCCCAIRg0ACwwFCyACRQ0CIBMpAgAhFEEAIQ1BACECQQAhBAwACwALA0ACQCAEQQFxDQAgCyAUpyIESw0DIBRCIIinIQMDQCALIAMiBE0NASAMIANBFGxqIgYoAgQhAyAGKAIIIAhGDQALDAQLIAIhA0EAIQ1CfyEUQQAhAkEAIQQgAw0ACwsgBSgCGCICQYMBSwRAIAIQAgsgBSgCFCICQYQBTwRAIAIQAgsgBUEgaiQADAULIAwgBEEUbGo1AgAgFEKAgICAcIOEDAELIBRC/////w+DIAOtQiCGhAshFCAKKAIUIARLBEAgBEEUbCIEIAooAhBqIgMoAggiBiAKKAIIIg5PDQIgAygCDCIRIA5PBEAgESAOQZzEwQAQhQsACyAEIAxqQRBqLQAARQ0BIAooAgQiBCAGQQR0aiIDKAIEIQYgBSAEIBFBBHRqKQIAIAMoAgAiA60gBq1CIIaEIhUgBiAPRhsgFSADIBBGG78QADYCHCAFQQhqIAVBFGogBUEYaiAFQRxqEMAMIAUoAgwiA0GEAU8EQCADEAILIAUoAhwiA0GEAUkNASADEAIMAQsLQfzDwQAQ8g4ACyAGIA5BjMTBABCFCwALIAAgACgCAEEBazYCACAJIAkoAgBBAWsiADYCACAARQRAIAdBDGoQ6QwLIAdBEGokAA8LEIMPCwALEIQPAAvRAQECfSAAQQA2AhggAEIANwIQIAD9DAAAAAAAAAAAAAAAAAAAgD/9CwIAIABDAAAAAEMAAIA/IAIgASoCBCICIAIgASoCACIDlJRD2w9JQJQiBCAEkpQiBJUgBEMAAAAAWxs4AhwgAEMAAAAAQwAAgD8gAyADlEMAAIBAlCACIAKUIgJDAABAQJSSQwAAQEGVIASUIgOVIANDAAAAAFsbIgM4AiggAEMAAAAAQwAAgD8gAkMAAAA/lCAElCIClSACQwAAAABbGzgCJCAAIAM4AiALzgEBAn8jAEEQayICJAACQAJAIAFFBEAgAEUNAiAAQQhrIgEoAgBBAUYEQCABQQA2AgAgAUF/Rg0CIABBBGsiAygCAEEBayEAIAMgADYCACAADQIgAUGAAUEEEOgODAILQZDUwQBBPxCCDwALIABFDQEgAEEIayIAKAIAQQFrIQEgACABNgIAIAIgADYCDCABDQACQCACQQxqKAIAIgBBf0YNACAAIAAoAgRBAWsiATYCBCABDQAgAEGAAUEEEOgOCwsgAkEQaiQADwsQgw8AC6cBAQJ/IwBBEGsiAiQAAkACQCABRQRAIABFDQIgAEEIayIBKAIAQQFGBEAgAUEANgIAIAFBf0YNAiAAQQRrIgMoAgBBAWshACADIAA2AgAgAA0CIAFB8ABBBBDoDgwCC0GQ1MEAQT8Qgg8ACyAARQ0BIABBCGsiACgCAEEBayEBIAAgATYCACACIAA2AgwgAQ0AIAJBDGoQqw0LIAJBEGokAA8LEIMPAAumAQECfyMAQRBrIgIkAAJAAkAgAUUEQCAARQ0CIABBCGsiASgCAEEBRgRAIAFBADYCACABQX9GDQIgAEEEayIDKAIAQQFrIQAgAyAANgIAIAANAiABQQxBBBDoDgwCC0GQ1MEAQT8Qgg8ACyAARQ0BIABBCGsiACgCAEEBayEBIAAgATYCACACIAA2AgwgAQ0AIAJBDGoQpg0LIAJBEGokAA8LEIMPAAunAQECfyMAQRBrIgIkAAJAAkAgAUUEQCAARQ0CIABBCGsiASgCAEEBRgRAIAFBADYCACABQX9GDQIgAEEEayIDKAIAQQFrIQAgAyAANgIAIAANAiABQdAAQQQQ6A4MAgtBkNTBAEE/EIIPAAsgAEUNASAAQQhrIgAoAgBBAWshASAAIAE2AgAgAiAANgIMIAENACACQQxqEKgNCyACQRBqJAAPCxCDDwALpwEBAn8jAEEQayICJAACQAJAIAFFBEAgAEUNAiAAQRBrIgEoAgBBAUYEQCABQQA2AgAgAUF/Rg0CIABBDGsiAygCAEEBayEAIAMgADYCACAADQIgAUHgAkEQEOgODAILQZDUwQBBPxCCDwALIABFDQEgAEEQayIAKAIAQQFrIQEgACABNgIAIAIgADYCDCABDQAgAkEMahCnDQsgAkEQaiQADwsQgw8AC84BAQJ/IwBBEGsiAiQAAkACQCABRQRAIABFDQIgAEEIayIBKAIAQQFGBEAgAUEANgIAIAFBf0YNAiAAQQRrIgMoAgBBAWshACADIAA2AgAgAA0CIAFBwABBBBDoDgwCC0GQ1MEAQT8Qgg8ACyAARQ0BIABBCGsiACgCAEEBayEBIAAgATYCACACIAA2AgwgAQ0AAkAgAkEMaigCACIAQX9GDQAgACAAKAIEQQFrIgE2AgQgAQ0AIABBwABBBBDoDgsLIAJBEGokAA8LEIMPAAvMAQECfyMAQRBrIgIkAAJAAkAgAUUEQCAARQ0CIABBCGsiASgCAEEBRgRAIAFBADYCACABQX9GDQIgAEEEayIDKAIAQQFrIQAgAyAANgIAIAANAiABQRBBBBDoDgwCC0GQ1MEAQT8Qgg8ACyAARQ0BIABBCGsiACgCAEEBayEBIAAgATYCACACIAA2AgwgAQ0AAkAgAkEMaigCACIAQX9GDQAgACAAKAIEQQFrIgE2AgQgAQ0AIABBEEEEEOgOCwsgAkEQaiQADwsQgw8AC6YBAQJ/IwBBEGsiAiQAAkACQCABRQRAIABFDQIgAEEIayIBKAIAQQFGBEAgAUEANgIAIAFBf0YNAiAAQQRrIgMoAgBBAWshACADIAA2AgAgAA0CIAFBHEEEEOgODAILQZDUwQBBPxCCDwALIABFDQEgAEEIayIAKAIAQQFrIQEgACABNgIAIAIgADYCDCABDQAgAkEMahClDQsgAkEQaiQADwsQgw8AC8wBAQJ/IwBBEGsiAiQAAkACQCABRQRAIABFDQIgAEEIayIBKAIAQQFGBEAgAUEANgIAIAFBf0YNAiAAQQRrIgMoAgBBAWshACADIAA2AgAgAA0CIAFBLEEEEOgODAILQZDUwQBBPxCCDwALIABFDQEgAEEIayIAKAIAQQFrIQEgACABNgIAIAIgADYCDCABDQACQCACQQxqKAIAIgBBf0YNACAAIAAoAgRBAWsiATYCBCABDQAgAEEsQQQQ6A4LCyACQRBqJAAPCxCDDwALpgEBAn8jAEEQayICJAACQAJAIAFFBEAgAEUNAiAAQQhrIgEoAgBBAUYEQCABQQA2AgAgAUF/Rg0CIABBBGsiAygCAEEBayEAIAMgADYCACAADQIgAUEkQQQQ6A4MAgtBkNTBAEE/EIIPAAsgAEUNASAAQQhrIgAoAgBBAWshASAAIAE2AgAgAiAANgIMIAENACACQQxqEKoNCyACQRBqJAAPCxCDDwALpgEBAn8jAEEQayICJAACQAJAIAFFBEAgAEUNAiAAQQhrIgEoAgBBAUYEQCABQQA2AgAgAUF/Rg0CIABBBGsiAygCAEEBayEAIAMgADYCACAADQIgAUEYQQQQ6A4MAgtBkNTBAEE/EIIPAAsgAEUNASAAQQhrIgAoAgBBAWshASAAIAE2AgAgAiAANgIMIAENACACQQxqEKkNCyACQRBqJAAPCxCDDwALzgEBAn8jAEEQayICJAACQAJAIAFFBEAgAEUNAiAAQQhrIgEoAgBBAUYEQCABQQA2AgAgAUF/Rg0CIABBBGsiAygCAEEBayEAIAMgADYCACAADQIgAUHEAEEEEOgODAILQZDUwQBBPxCCDwALIABFDQEgAEEIayIAKAIAQQFrIQEgACABNgIAIAIgADYCDCABDQACQCACQQxqKAIAIgBBf0YNACAAIAAoAgRBAWsiATYCBCABDQAgAEHEAEEEEOgOCwsgAkEQaiQADwsQgw8AC84BAQJ/IwBBEGsiAiQAAkACQCABRQRAIABFDQIgAEEIayIBKAIAQQFGBEAgAUEANgIAIAFBf0YNAiAAQQRrIgMoAgBBAWshACADIAA2AgAgAA0CIAFBzABBBBDoDgwCC0GQ1MEAQT8Qgg8ACyAARQ0BIABBCGsiACgCAEEBayEBIAAgATYCACACIAA2AgwgAQ0AAkAgAkEMaigCACIAQX9GDQAgACAAKAIEQQFrIgE2AgQgAQ0AIABBzABBBBDoDgsLIAJBEGokAA8LEIMPAAvMAQECfyMAQRBrIgIkAAJAAkAgAUUEQCAARQ0CIABBCGsiASgCAEEBRgRAIAFBADYCACABQX9GDQIgAEEEayIDKAIAQQFrIQAgAyAANgIAIAANAiABQTxBBBDoDgwCC0GQ1MEAQT8Qgg8ACyAARQ0BIABBCGsiACgCAEEBayEBIAAgATYCACACIAA2AgwgAQ0AAkAgAkEMaigCACIAQX9GDQAgACAAKAIEQQFrIgE2AgQgAQ0AIABBPEEEEOgOCwsgAkEQaiQADwsQgw8AC6EBAgF/BH0jAEEgayIDJAAgAioCACIFIAWUIAIqAgQiBiAGlJIgAioCCCIHIAeUkpEhBCADIAUgBJUiBTgCCCADIAYgBJUiBjgCDCADIAcgBJUiBDgCECADQRRqIAEgA0EIahCCBCAAIAQgASoCYCIElCADKgIckjgCCCAAIAYgBJQgAyoCGJI4AgQgACADKgIUIAUgBJSSOAIAIANBIGokAAubAQEBfyAAKAIAIgEEQCAAKAIEIAFBBnRBwAAQ6A4LIAAoAgwiAQRAIAAoAhAgAUEFdEEQEOgOCyAAKAIYIgEEQCAAKAIcIAFBAnRBBBDoDgsgACgCJCIBBEAgACgCKCABQQN0QQQQ6A4LIAAoAjAiAQRAIAAoAjQgAUECdEEEEOgOCyAAKAJAIgEEQCAAKAJEIAFBAnRBBBDoDgsLrQQEA38CewJ9AX4jAEEQayIIJAACQAJAIAAEQCAAQRBrIgkoAgBBAWohByAJIAc2AgAgB0UNASAAKAIADQIgAEF/NgIAIAggCTYCDCAIIAA2AgggCCAAQRBqIgc2AgQgBkEARyEGAkAgAiAClCAEIASUkiADIAOUIAUgBZSSkiIMQwAAAABeRQ0AAkAgByABvSIOpyAOQiCIpxDeCSIHBEACQAJAAkAgByoCMCINIAL9EyAD/SABIAT9IAIgBf0gAyAMkf0T/ecBIgr9HwAiAlwNACAHKgI0IAr9HwFcDQAgByoCOCAK/R8CXA0AIAcqAjwgCv0fA1sNAQsgDSACjFwNASAHKgI0IAr9HwGMXA0BIAcqAjggCv0fAoxcDQEgByoCPCAK/R8DjFwNAQsgB/0AAkwiCyAK/UL9U0UNAyALIAr94QH9Qv1TRQ0DCyAHIAI4AkwgByACOAIwIAcgCv0fAyIEOAJYIAcgCv0fAiIDOAJUIAcgCv0fASICOAJQIAcgBDgCPCAHIAM4AjggByACOAI0IAcgBygCvAJBAnI2ArwCIAcQ5A0gBkUNAiAHLQDlAkEBRg0CIActANQCRQ0BIAcgBygCvAJBBHI2ArwCDAELQezPwQBBzQBBzNDBABDRCwALIAdBADYC0AIgB0EAOgDUAgsgAEEANgIAIAkgCSgCAEEBayIANgIAIABFBEAgCEEMahDrDAsgCEEQaiQADwsQgw8LAAsQhA8AC44FAgV/AX4jAEEQayILJAACQAJAIAAEQCAAQQhrIgwoAgBBAWohCSAMIAk2AgAgCUUNASAAKAIADQIgAEF/NgIAIAsgDDYCDCALIAA2AgggCyAAQQRqIgo2AgQjAEEwayIJJAAgCUEQaiAKIAG9Ig6nIA5CIIinIAK9Ig6nIA5CIIinELQCAkAgCSgCECIKRQ0AIAkoAhQiDUUNACAJQQhqIAoQsgwgCSgCCCAJKAIMEMILIQogCSANELIMIAkoAgAgCSgCBBDCCyENIApFDQAgDUUNACAJIAU2AiAgCSAENgIcIAkgAzYCGCAJIAg2AiwgCSAHNgIoIAkgBjYCJCAJQSRqIQVBACEGIwBBEGsiAyQAIANBBGogCiAJQRhqIgQQ4wMCQAJAAkACQCADKAIEIghBAUcNACADKAIIIgYgCigCVCIHTw0BIAMoAgwiB0GABEkEQCAKKAJQIAZBCXRqIAdqLQAAQcAARiEGDAELIAdBgARB6ObDABCFCwALIAMgBCgCCCAFKAIIazYCDCADIAQoAgQgBSgCBGs2AgggAyAEKAIAIAUoAgBrNgIEIA0gA0EEaiIFIAYgCEF/c3JBAXEQjwIhBiAFIAogBBDjAwJAIAMoAgRBAUYEQCADKAIIIgQgCigCVCIFTw0DIAMoAgwiBUGABE8NASAKKAJQIARBCXRqIAVqIgQgBC0AACAGQf8BcXI6AAALIANBEGokAAwDCyAFQYAEQeTpwwAQhQsACyAGIAdB2ObDABCFCwALIAQgBUHU6cMAEIULAAsLIAlBMGokACAAQQA2AgAgDCAMKAIAQQFrIgA2AgAgAEUEQCALQQxqEO4MCyALQRBqJAAPCxCDDwsACxCEDwAL5ToCLH8GfiMAQSBrIhUkACAVIAE2AhAgFSAANgIMIBUgATYCCCAVIAM2AhwgFSACNgIYIBUgAzYCFCAVQRRqISJBACEAIwBBQGoiCiQAIBVBCGoiJCgCBCElICQoAggiAwRAIANBA24gA0EDcEEAR2ohCAsgCK1CDH4iMachAgJAAn8CQCAxQiCIpw0AIAJB/P///wdLDQACQCACRQRAQQQhAUEAIQgMAQtBBCACQQQQkQ4iAUUNAhoLIApBADYCJCAKIAE2AiAgCiAINgIcAkACQAJAAkAgAwRAIANBA24iAiADIAJBA2xHaiICIAhLBEAgCkEcakEAIAJBBEEMENYGIAooAiAhASAKKAIkIQALIAEgAEEMbGohAQNAIANBAk0NAiABIAZqIgIgBiAlaiIIKgIAOAIAIAJBBGogCEEEaikCADcCACAGQQxqIQYgAEEBaiEAIANBA2siAw0ACwsgCkEIaiAANgIAIAogCikCHDcDACAiKAIEISZBACEDICIoAggiBgRAIAZBA24gBkEDcEEAR2ohAwsgA61CDH4iMachACAxQiCIpw0BIABB/P///wdLDQFBACEIAkAgAEUEQEEEIQFBACEDDAELQQQhDiAAQQQQkQ4iAUUNAgsgCkEANgIwIAogATYCLCAKIAM2AiggBgRAIAZBA24iACAGIABBA2xHaiIAIANLBEAgCkEoakEAIABBBEEMENYGIAooAjAhCCAKKAIsIQELIAEgCEEMbGohAyAmIQADQCAGQQFGDQQgBkECTQ0FIAMgACgCADYCACADQQRqIAApAgQ3AgAgA0EMaiEDIAhBAWohCCAAQQMgBiAGQQNPGyIBQQJ0aiEAIAYgAWsiBg0ACwsgCkEYaiAINgIAIAogCikCKDcDECAKQShqIR8jAEHQAmsiFiQAIBZBIGohJyAEQQAgBEH//wNxQYACSRshGCMAQcABayIRJAACQCAKQRBqIgAoAghFBEAgJ0KAgICAKDcCACAAKAIAIgEEQCAAKAIEIAFBDGxBBBDoDgsgCigCACIARQ0BIAooAgQgAEEMbEEEEOgODAELIBFBOGogCkEIaigCADYCACARQcQAaiAAQQhqKAIANgIAIBFCADcCKCARQoCAgIDAADcCICARQgQ3AhggEUIANwIQIBFCgICAgIAINwIIIBFBgICAgHg2AkggEUGAgICAeDYCYCARQYCAgIB4NgKEASARQQA7AagBIBEgCikCADcCMCARIAApAgA3AjwgEUGsAWohKEEAIQEjAEGwAWsiBSQAIBFBCGoiBygCPCEpIBhBAXFFBEACQCAHKAJYIgBBgICAgHhGDQAgAARAIAcoAlwgAEECdEEEEOgOCyAHKAJkIgAEQCAHKAJoIABBAnRBBBDoDgsgBygCcCIARQ0AIAcoAnQgAEEEdEEEEOgOCyAHQYCAgIB4NgJYCyAYQZgBcUUEQAJAIAcoAkAiAEGAgICAeEYNACAABEAgBygCRCAAQQxsQQQQ6A4LIAcoAkwiAEUNACAHKAJQIABBJGxBBBDoDgsgB0GAgICAeDYCQAsgGEECcUUEQAJAIAcoAnwiAEGAgICAeEYNACAABEAgBygCgAEgAEECdEEEEOgOCyAHKAKIASIABEAgBygCjAEgAEECdEEEEOgOCyAHKAKUASIARQ0AIAcoApgBIABBAnRBBBDoDgsgB0GAgICAeDYCfAsCQCAHLwGgAUH/AXMgGHEiI0HwAHFFDQAgBUKJ2bnijtO+lwg3A0AgBUGg3MIA/QADAP0LAzBBBCEcQQQhCQJAAkACQAJAAkACQCAHKAIwIgsEQCALQQxsIgBBBBCRDiIJRQ0BCyAFQQA2AlggBSAJNgJUIAUgCzYCUAJAIAcoAjwiAARAIABBDGwiAkEEEJEOIhxFDQELIAUgHDYCDCAFIAA2AgggBUEANgIQIAVBoNzCAP0AAwD9CwNoIAVCidm54o7TvpcINwN4IAcoAjghDiAARQ0GIBhBIHEhISAHKAIsIR0gGEHAAHFFDQIgDiAAQQxsaiEqIA5BDGohAiAFQfgAaiErIA4hAwNAIAMhACACIQMgCyAAKAIAIgZNDQYgHSAGQQxsaiAFQTBqIgEgBUHQAGoiBBC5AiECIAsgACgCBCIGTQ0FIB0gBkEMbGogASAEELkCIQkgCyAAKAIIIgZNDQQgHSAGQQxsaiABIAQQuQIhBgJAAkACQCACIAlGDQAgAiAGRg0AICFFDQEgBiAJRw0BDAILICENAQsCfyACIAlNBEAgCSIAIAYiASACIgRJDQEaIAAgBiAAIAZJGyEEIAIhASAAIAYgACAGSxsMAQsgCSEBIAYiACAAIAIiBE8NABogASAAIAAgAUkbIQQgASAAIAAgAUsbIQEgAgsiF60gBK1CIIaEIjUgBSkDeIUiMUL/////D4MiMyABQd2h8ct8c60iMn4gMUIgiCIxQrfTsIUMfoUgMSAyfiAzQrfTsIUMfoVCIIiFITMgBSgCcEUEQCMAQTBrIg8kACAPICs2AiggBUHoAGoiGigCDCENIA8gD0EoajYCLAJAIA0gDUEBaiIATQRAIBooAgQiICAgQQFqQQN2QQdsICBBCEkbIghBAXYgAEkEQAJAAkACQAJ/IAhBAWoiCCAAIAAgCEkbIgBBD08EQCAAQf////8BSw0CQX8gAEEDdEEHbkEBa2d2QQFqDAELQQRBCEEQIABBCEkbIABBBEkbCyIArUIMfiIxQiCIpw0BIDGnIghBeEsNASAIQQdqQXhxIgwgAEEIaiISaiEIIAggDEkNASAIQfj///8HSw0BIAhBCBCRDiITDQJBCCAIQfjKxAAoAgAiAEHMCCAAGxEAAAALEKcMIA8oAiQhACAPKAIgIQgMBAsQpwwgDygCFCEAIA8oAhAhCAwDCyAMIBNqIRMgEgRAIBNB/wEgEvwLAAsgAEEBayIeIABBA3ZBB2wgHkEISRshLAJAIA1FBEAgGigCACEMDAELIBNBCGohLSAaKAIAIgwpAwBCf4VCgIGChIiQoMCAf4MhMSAPKAIoIS5BACEAIA0hEiAMIQgDQCAxUARAA0AgAEEIaiEAIAhBCGoiCCkDAEKAgYKEiJCgwIB/gyIxQoCBgoSIkKDAgH9RDQALIDFCgIGChIiQoMCAf4UhMQsgEyAuKQMAIAwgMXqnQQN2IABqIi9BdGxqIhBBDGspAgCFIjJC/////w+DIjQgEEEEazUCAELdofHLDIUiNn4gMkIgiCIyQrfTsIUMfoUgMiA2fiA0QrfTsIUMfoVCIIiFpyIwIB5xIhBqKQAAQoCBgoSIkKDAgH+DIjJQBEBBCCEbA0AgECAbaiEQIBtBCGohGyATIBAgHnEiEGopAABCgIGChIiQoMCAf4MiMlANAAsLIDFCAX0gMYMhMSATIDJ6p0EDdiAQaiAecSIQaiwAAEEATgRAIBMpAwBCgIGChIiQoMCAf4N6p0EDdiEQCyAQIBNqIDBBGXYiGzoAACAtIBBBCGsgHnFqIBs6AAAgEyAQQX9zQQxsaiIQQQhqIAwgL0F/c0EMbGoiG0EIaigAADYAACAQIBspAAA3AAAgEkEBayISDQALCyAaIB42AgQgGiATNgIAIBogLCANazYCCEGBgICAeCEIICBFDQIgDCAgQQxsQRNqQXhxIgBrIAAgIGpBCWpBCBDoDgwCCyAaIA9BLGpBkwJBDBDGAkGBgICAeCEIDAELEKcMIA8oAgwhACAPKAIIIQgLIAUgADYCBCAFIAg2AgAgD0EwaiQACyAFKAJsIg0gM6dxIQggM0IZiCIyQv8Ag0KBgoSIkKDAgAF+ITRBACESIAUoAmghDEEAIQADQCAIIAxqKQAAIjMgNIUiMUKBgoSIkKDAgAF9IDFCf4WDQoCBgoSIkKDAgH+DIjFCAFIEQANAAkAgDCAxeqdBA3YgCGogDXFBdGxqIg9BDGsoAgAgF0cNACAPQQhrKAIAIARHDQAgASAPQQRrKAIARg0ECyAxQgF9IDGDIjFCAFINAAsLIDNCgIGChIiQoMCAf4MhMQJ/AkAgAEUEQCAxUA0BIDF6p0EDdiAIaiANcSEUC0EBIDEgM0IBhoNQDQEaIAwgFGosAAAiCEEATgRAIAwgDCkDAEKAgYKEiJCgwIB/g3qnQQN2IhRqLQAAIQgLIAwgFGogMqdB/wBxIgA6AAAgDCAUQQhrIA1xakEIaiAAOgAAIAwgFEF0bGoiAEEMayA1NwIAIABBBGsgATYCACAFIAUoAnRBAWo2AnQgBSAFKAJwIAhBAXFrNgJwIAUoAgggGUYEQCAFQQhqQczPwwAQkQggBSgCDCEcCyAcIBlBDGxqIgAgBjYCCCAAIAk2AgQgACACNgIAIAUgGUEBaiIZNgIQDAMLQQALIQAgEkEIaiISIAhqIA1xIQgMAAsACyADQQBBDCADICpGIgAbaiECIABFDQALDAYLQQQgAkHszsMAENcNAAtBBCAAQdzOwwAQ1w0ACyAAQQxsIQwgDiECA0AgCyACKAIAIgZNDQMgHSAGQQxsaiAFQTBqIgQgBUHQAGoiCBC5AiEAIAsgAkEEaigCACIGTQ0CIB0gBkEMbGogBCAIELkCIQMgCyACQQhqKAIAIgZNDQECQAJAIAAgA0cgHSAGQQxsaiAEIAgQuQIiBCAAR3FFBEAgIUUNAQwCCyAhRQ0AIAMgBEYNAQsgBSgCCCABRgRAIAVBCGpBvM/DABCRCCAFKAIMIRwLIBwgAUEMbGoiBiAENgIIIAYgAzYCBCAGIAA2AgAgBSABQQFqIgE2AhALIAJBDGohAiAMQQxrIgwNAAsMAwsgBiALQazPwwAQhQsACyAGIAtBnM/DABCFCwALIAYgC0GMz8MAEIULAAsCQCAFKAJQIgEgBSgCWCIASwRAIAFBDGwhASAFKAJUIQICQCAARQRAQQQhBiACIAFBBBDoDgwBCyACIAFBBCAAQQxsIgEQ8g0iBkUNAgsgBSAANgJQIAUgBjYCVAsgB0E0aiEAIAdBKGoiASgCACICBEAgBygCLCACQQxsQQQQ6A4LIAEgBSkCUDcCACABQQhqIAVB2ABqKAIANgIAIAAoAgAiAQRAIA4gAUEMbEEEEOgOCyAAIAUpAgg3AgAgAEEIaiAFQRBqKAIANgIAIAcoAkBBgICAgHhHBEAgBxA7CyAHKAJYQYCAgIB4RwRAIAVBGGogB0EAEGkLIAUoAmwiAARAIAUoAmggAEEMbEETakF4cSIBayAAIAFqQQlqQQgQ6A4LIAUoAjQiAEUNASAFKAIwIABBBHRrQRBrIABBEWxBGWpBCBDoDgwBC0EEIAFB/M7DABDXDQALQQIhGSAjQQVxBEAgBUHoAGogByAYQQRxQQJ2EGkgBSAF/QACbP0LAwggBSgCaCEZCwJAICNBAnFFDQAgBUEANgJIIAVCBDcCQCAFQgA3AjggBUKAgICAwAA3AjAgBygCPCIOQQJ0IRdBBCEBAkACQAJAAkACQAJAAkAgDgRAIBdBBBCRDiIBRQ0BIA5BAUcEfyAXQQRrIgAEQCABQf8BIAD8CwALIAAgAWoFIAELQX82AgALQQRBBBCRDiIARQ0BIABBADYCACAFQQE2AlggBSAANgJUIAVBATYCUCAHKAIwIg1BAnQhEkEEIRRBBCEIIA0EQCASQQQQkQ4iCEUNAyANQQFHBH8gEkEEayIABEAgCEH/ASAA/AsACyAAIAhqBSAIC0F/NgIACyAOBEAgF0EEEJEOIhRFDQQgDkEBRwR/IBdBBGsiAARAIBRB/wEgAPwLAAsgACAUagUgFAtBfzYCAAsCQCANRQRAQQQhAwwBCyASQQQQkQ4iA0UNBSANQQFHBH8gEkEEayIABEAgA0H/ASAA/AsACyAAIANqBSADC0F/NgIACwJAAkACQCAOBEAgBUE8aiEPIA5BDGwhDCAFQdwAaq1CgICAgPAghCExIAVB4ABqrUKAgICA0CKEITMgBygCOCIEIQYDQCANIAYoAgAiAE0NCyAGQQhqKAIAIQIgBkEEaigCACEJIAMgAEECdGoiEygCACIAQX9GBEAgBSAFKAI4IgA2AlwgBSgCMCAARgRAIAVBMGpBpNDCABC0CAsgBSgCNCAAQQN0aiILQQA2AgQgCyAANgIAIAUgAEEBajYCOCAFKAJIBEAgBSgCRCILIAUoAjxGBEAgD0Gw3MIAELUICyAFKAJAIAtBBHRqIhAgADYCBCAQQQA2AgAgBSALQQFqNgJEC0H0ysQAKAIAQQRPBEAgBUEGNgJkIAVB/NLDADYCYCAFIDE3AyAgBSAzNwMYQezVwgAoAgAhAEHk1cIAKQIAITIgBUICNwKgASAFQQI2ApgBIAVB1NXCADYClAEgBUEKNgKQASAFQdTUwgA2AowBIAVBBDYCiAEgBSAyNwKAASAFQgo3AnggBUHU1MIANgJ0IAVBADYCcCAFIAA2AmwgBUEBNgJoIAUgBUEYajYCnAFB0MrEACgCAEGUhsQAQfDKxAAoAgBBAkYiABsgBUHoAGpB1MrEACgCAEH8hcQAIAAbKAIQEQAAIAUoAlwhAAsgEyAANgIACyAJIA1PBEAgCSEADAwLIAMgCUECdGoiEygCACIJQX9GBEAgBSAFKAI4Igk2AlwgBSgCMCAJRgRAIAVBMGpBpNDCABC0CAsgBSgCNCAJQQN0aiILQQA2AgQgCyAJNgIAIAUgCUEBajYCOCAFKAJIBEAgBSgCRCILIAUoAjxGBEAgD0Gw3MIAELUICyAFKAJAIAtBBHRqIhAgCTYCBCAQQQA2AgAgBSALQQFqNgJEC0H0ysQAKAIAQQRPBEAgBUEGNgJkIAVB/NLDADYCYCAFIDE3AyAgBSAzNwMYQezVwgAoAgAhCUHk1cIAKQIAITIgBUICNwKgASAFQQI2ApgBIAVB1NXCADYClAEgBUEKNgKQASAFQdTUwgA2AowBIAVBBDYCiAEgBSAyNwKAASAFQgo3AnggBUHU1MIANgJ0IAVBADYCcCAFIAk2AmwgBUEBNgJoIAUgBUEYajYCnAFB0MrEACgCAEGUhsQAQfDKxAAoAgBBAkYiCRsgBUHoAGpB1MrEACgCAEH8hcQAIAkbKAIQEQAAIAUoAlwhCQsgEyAJNgIACyACIA1PBEAgAiEADAwLIAMgAkECdGoiEygCACICQX9GBEAgBSAFKAI4IgI2AlwgBSgCMCACRgRAIAVBMGpBpNDCABC0CAsgBSgCNCACQQN0aiILQQA2AgQgCyACNgIAIAUgAkEBajYCOCAFKAJIBEAgBSgCRCILIAUoAjxGBEAgD0Gw3MIAELUICyAFKAJAIAtBBHRqIhAgAjYCBCAQQQA2AgAgBSALQQFqNgJEC0H0ysQAKAIAQQRPBEAgBUEGNgJkIAVB/NLDADYCYCAFIDE3AyAgBSAzNwMYQezVwgAoAgAhAkHk1cIAKQIAITIgBUICNwKgASAFQQI2ApgBIAVB1NXCADYClAEgBUEKNgKQASAFQdTUwgA2AowBIAVBBDYCiAEgBSAyNwKAASAFQgo3AnggBUHU1MIANgJ0IAVBADYCcCAFIAI2AmwgBUEBNgJoIAUgBUEYajYCnAFB0MrEACgCAEGUhsQAQfDKxAAoAgBBAkYiAhsgBUHoAGpB1MrEACgCAEH8hcQAIAIbKAIQEQAAIAUoAlwhAgsgEyACNgIACyAFQTBqIgsgACAJEIkFIAsgCSACEIkFIAsgAiAAEIkFIAZBDGohBiAMQQxrIgwNAAsgDiECIAEhCQNAIAQoAgAiACANTw0CIAVBMGogAyAAQQJ0aigCABCdBCIAIA1PDQMgCCAAQQJ0aiIGKAIAIgBBf0YEQCAFKAJYIgAgBSgCUEYEQCAFQdAAakHc0sMAELYICyAFKAJUIABBAnRqQQA2AgAgBSAAQQFqNgJYIAYgADYCAAsgBSgCWCIGIABNDQQgBSgCVCAAQQJ0aiIGIAYoAgBBAWo2AgAgCSAAQQFrNgIAIARBDGohBCAJQQRqIQkgAkEBayICDQALCwJAAkAgBSgCWCIEQQJPBEBBAiECQQEhAANAIABBAWsiCSAFKAJYIgZPDQIgACAGTw0DIAIhBiAAQQJ0IAUoAlQiAGoiAiACKAIAIAAgCUECdGooAgBqNgIAIAZBAWohAiAEIAYiAEcNAAsgBSgCWCEECyAEQQJ0IQJBACEJIARB/////wNLDQogAkH8////B0sNCiAFKAJUIQYCQCACRQRAQQQhDEEAIQAMAQtBBCEJIAQhACACQQQQkQ4iDEUNCwsgAgRAIAwgBiAC/AoAAAsCQAJAIA4EQCABIA5BAnRqIQ8gAUEEaiECIBdBBGtBAnZBAWohC0EAIQkgASEGA0AgBigCACIGIARPDQIgDCAGQQJ0aiIGKAIAIhcgDk8NAyAUIBdBAnRqIAk2AgAgBiAGKAIAQQFqNgIAIAIgDyACIgZHQQJ0aiECIAsgCUEBaiIJRw0ACwsgBUHwAGoiBCAFQdgAaigCADYCACAFIAUpAlA3A2gCQCAHKAJ8IgJBgICAgHhGDQAgAgRAIAcoAoABIAJBAnRBBBDoDgsgBygCiAEiAgRAIAcoAowBIAJBAnRBBBDoDgsgBygClAEiAkUNACAHKAKYASACQQJ0QQQQ6A4LIAcgDjYCkAEgByAUNgKMASAHIA42AogBIAcgDjYChAEgByABNgKAASAHIA42AnwgByAFKQNoNwKUASAHQZwBaiAEKAIANgIAIAAEQCAMIABBAnRBBBDoDgsgDQRAIAMgEkEEEOgOIAggEkEEEOgOCyAFKAIwIgAEQCAFKAI0IABBA3RBBBDoDgsgBSgCPCIARQ0OIAUoAkAgAEEEdEEEEOgODA4LIAYgBEH80cMAEIULAAsgFyAOQYzSwwAQhQsACyAJIAZBnNLDABCFCwALIAAgBkGs0sMAEIULAAsgACANQbzSwwAQhQsACyAAIA1BzNLDABCFCwALIAAgBkHs0sMAEIULAAtBBCAXQbzRwwAQ1w0AC0EEQQRB+MrEACgCACIAQcwIIAAbEQAAAAtBBCASQczRwwAQ1w0AC0EEIBdB3NHDABDXDQALQQQgEkHs0cMAENcNAAsgCSACQcDcwgAQ1w0ACyAAIA1BhNPDABCFCwALICNBmAFxBEAgBxA7CyAHKAI8IClHBEAgBxCHAQsgKCAZNgIAIAcgGDsBoAEgKCAF/QADCP0LAgQgBUGwAWokACARKAIQRQRAIAcQhwELICcgEUEIakGkAfwKAAALIBFBwAFqJAAgFkEYaiIAIBZBNGooAgA2AgAgFiAW/QACJP0LAwgCQAJAAkAgFigCICIBQYCAgIB4RgRAIB8gFv0AAwj9CwIAIB9BEGogACgCADYCAAwBCyAWQcQBaiICIBZBOGpBjAH8CgAAQawBQQQQkQ4iAEUNASAAIAE2AgggAEKBgICAEDcCACAAIBb9AAMI/QsCDCAAQRxqIBZBGGooAgA2AgAgAEEgaiACQYwB/AoAACAfQeivwwA2AgggHyAANgIEIB9BAzYCAAsgFkHQAmokAAwBC0EEQawBQfjKxAAoAgAiAEHMCCAAGxEAAAALIAooAjAhACAKKAIsIQEgCigCKCECICIoAgAiAwRAICYgA0ECdEEEEOgOCyAkKAIAIgMEQCAlIANBAnRBBBDoDgsgFSAANgIEIBUgAUEAIAJBA0YbNgIAIApBQGskAAwGCyAKQQA2AjggCkEBNgIsIApB2L/BADYCKCAKQgQ3AjAgCkEoakHgv8EAELkNAAsgDiAAQei6wQAQ1w0AC0EBQQFBkNbBABCFCwALQQJBAkGg1sEAEIULAAtBAAsgAkHousEAENcNAAsCQCAVKAIAIgEEfyAVKAIEIQJBFEEEEJEOIgBFDQEgACACNgIQIAAgATYCDCAAQQA2AgggAEKBgICAEDcCACAAQQhqBUEACyEAIBVBIGokACAADwtBBEEUQfjKxAAoAgAiAEHMCCAAGxEAAAAL7QgCCH8BfiMAQSBrIgckACAHIAE2AhAgByAANgIMIAcgATYCCCAHIAM2AhwgByACNgIYIAcgAzYCFCAHQRRqIQpBACEAIwBBQGoiAiQAIAdBCGoiCygCBCEMIAsoAggiAwRAIANBA24gA0EDcEEAR2ohCAsgCK1CDH4iDachAQJAAkACQAJAAkACQCANQiCIpw0AIAFB/P///wdLDQACQCABRQRAQQQhCUEAIQgMAQtBBCEGIAFBBBCRDiIJRQ0BCyACQQA2AiQgAiAJNgIgIAIgCDYCHCADBEAgAyADQQNuIgFBA2xHIAFqIgEgCEsEQCACQRxqQQAgAUEEQQwQ1gYgAigCICEJIAIoAiQhAAsgCSAAQQxsaiEBA0AgA0ECTQ0DIAEgBWoiCCAFIAxqIgYqAgA4AgAgCEEEaiAGQQRqKQIANwIAIAVBDGohBSAAQQFqIQAgA0EDayIDDQALCyACQRhqIAA2AgAgAiACKQIcNwMQIAooAgQhAUEAIQlBACEDIAooAggiBQRAIAVBA24gBUEDcEEAR2ohAwsgA61CDH4iDachACANQiCIpw0CIABB/P///wdLDQJBACEIAkAgAEUEQEEEIQZBACEDDAELQQQhCSAAQQQQkQ4iBkUNAwsgAkEANgIwIAIgBjYCLCACIAM2AiggBQRAIAUgBUEDbiIAQQNsRyAAaiIAIANLBEAgAkEoakEAIABBBEEMENYGIAIoAiwhBiACKAIwIQgLIAYgCEEMbGohAyABIQADQCAFQQFGDQUgBUECTQ0GIAMgACgCADYCACADQQRqIAApAgQ3AgAgA0EMaiEDIAhBAWohCCAAQQMgBSAFQQNPGyIGQQJ0aiEAIAUgBmsiBQ0ACyACKAIsIQYgAigCKCEDCyACQQhqIQkjAEHgAGsiBSQAIAUgAkEQaiAGIAgQPkEAIQACQAJAIAUoAgBBgICAgHhHBEBB7ABBBBCRDiIARQ0BIABCgYCAgBA3AgAgAEEIaiAFQeAA/AoAACAAIAQ4AmgLIAlByNXDADYCBCAJIAA2AgAgBUHgAGokAAwBC0EEQewAQfjKxAAoAgAiAEHMCCAAGxEAAAALIAIoAgwhACACKAIIIQUgAwRAIAYgA0EMbEEEEOgOCyAKKAIAIgMEQCABIANBAnRBBBDoDgsgCygCACIBBEAgDCABQQJ0QQQQ6A4LIAcgBTYCACAHIAA2AgQgAkFAayQADAULIAYgAUHousEAENcNAAsgAkEANgI4IAJBATYCLCACQdi/wQA2AiggAkIENwIwIAJBKGpB4L/BABC5DQALIAkgAEHousEAENcNAAtBAUEBQdDWwQAQhQsAC0ECQQJB4NbBABCFCwALAkAgBygCACIBBH8gBygCBCECQRRBBBCRDiIARQ0BIAAgAjYCECAAIAE2AgwgAEEANgIIIABCgYCAgBA3AgAgAEEIagVBAAshACAHQSBqJAAgAA8LQQRBFEH4ysQAKAIAIgBBzAggABsRAAAAC9ECAgp9AX8jAEEwayINJAAgDUEMaiABIAIQ8gUgACANKgIsIggiBSAFIA0qAiAiCSIDIAMgDSoCFCIGIgQgAyAEXhsgBCAEXBsiAyADIAVdGyADIANcGzgCFCAAIA0qAigiCiIFIAUgDSoCHCILIgMgAyANKgIQIgciBCADIAReGyAEIARcGyIDIAMgBV0bIAMgA1wbOAIQIAAgDSoCJCIEIAQgDSoCGCIFIAUgDSoCDCIDIAMgBV0bIAMgA1wbIgwgBCAMXhsgDCAMXBs4AgwgACAGIAYgCSAGIAldGyAJIAlcGyIGIAYgCCAGIAhdGyAIIAhcGzgCCCAAIAcgByALIAcgC10bIAsgC1wbIgcgByAKIAcgCl0bIAogClwbOAIEIAAgAyADIAUgAyAFXRsgBSAFXBsiAyADIAQgAyAEXRsgBCAEXBs4AgAgDUEwaiQAC6UBAgF/AX4jAEFAaiIEJAAgBEEIaiIFIAEgAUEMaiABQRhqIAIQywICQAJAIAQoAghBBEcEQCAEQThqIgEgBUEUaigCADYCACAEIAQpAhQ3AzAgAyAEKgIQIgNgDQEgAEEENgIADAILIABBBDYCAAwBCyAEKQMIIQYgACADOAIIIAAgBjcCACAAIAQpAzA3AgwgAEEUaiABKAIANgIACyAEQUBrJAAL/AICA38BfiMAQRBrIgckAAJAAkAgAARAIABBEGsiCCgCAEEBaiEGIAggBjYCACAGRQ0BIAAoAgANAiAAQX82AgAgByAINgIMIAcgADYCCCAHIABBEGoiBjYCBCAFQQBHIQUCQAJAIAYgAb0iCacgCUIgiKcQ3gkiBgRAAkAgBioCQCACXA0AIAYqAkQgA1wNACAGKgJIIARcDQAgBioCXCACXA0AIAYqAmAgA1wNACAGKgJkIARbDQMLIAYgBDgCZCAGIAM4AmAgBiACOAJcIAYgBDgCSCAGIAM4AkQgBiACOAJAIAYgBigCvAJBAnI2ArwCIAYQ5A0gBUUNAiAGLQDlAkEBRg0CIAYtANQCRQ0BIAYgBigCvAJBBHI2ArwCDAELQezPwQBBzQBBzNDBABDRCwALIAZBADYC0AIgBkEAOgDUAgsgAEEANgIAIAggCCgCAEEBayIANgIAIABFBEAgB0EMahDrDAsgB0EQaiQADwsQgw8LAAsQhA8AC+YIAgh/AX4jAEEgayIGJAAgBiABNgIQIAYgADYCDCAGIAE2AgggBiADNgIcIAYgAjYCGCAGIAM2AhQgBkEUaiEJQQAhACMAQUBqIgIkACAGQQhqIgooAgQhCyAKKAIIIgMEQCADQQNuIANBA3BBAEdqIQcLIAetQgx+IgynIQECQAJAAkACQAJAAkAgDEIgiKcNACABQfz///8HSw0AAkAgAUUEQEEEIQhBACEHDAELQQQhBSABQQQQkQ4iCEUNAQsgAkEANgIkIAIgCDYCICACIAc2AhwgAwRAIAMgA0EDbiIBQQNsRyABaiIBIAdLBEAgAkEcakEAIAFBBEEMENYGIAIoAiAhCCACKAIkIQALIAggAEEMbGohAQNAIANBAk0NAyABIARqIgcgBCALaiIFKgIAOAIAIAdBBGogBUEEaikCADcCACAEQQxqIQQgAEEBaiEAIANBA2siAw0ACwsgAkEYaiAANgIAIAIgAikCHDcDECAJKAIEIQFBACEIQQAhAyAJKAIIIgQEQCAEQQNuIARBA3BBAEdqIQMLIAOtQgx+IgynIQAgDEIgiKcNAiAAQfz///8HSw0CQQAhBwJAIABFBEBBBCEFQQAhAwwBC0EEIQggAEEEEJEOIgVFDQMLIAJBADYCMCACIAU2AiwgAiADNgIoIAQEQCAEIARBA24iAEEDbEcgAGoiACADSwRAIAJBKGpBACAAQQRBDBDWBiACKAIsIQUgAigCMCEHCyAFIAdBDGxqIQMgASEAA0AgBEEBRg0FIARBAk0NBiADIAAoAgA2AgAgA0EEaiAAKQIENwIAIANBDGohAyAHQQFqIQcgAEEDIAQgBEEDTxsiBUECdGohACAEIAVrIgQNAAsgAigCLCEFIAIoAighAwsgAkEIaiEIIwBB4ABrIgAkACAAIAJBEGogBSAHED5BACEEAkACQCAAKAIAQYCAgIB4RwRAQegAQQQQkQ4iBEUNASAEQoGAgIAQNwIAIARBCGogAEHgAPwKAAALIAhBmKLDADYCBCAIIAQ2AgAgAEHgAGokAAwBC0EEQegAQfjKxAAoAgAiAEHMCCAAGxEAAAALIAIoAgwhACACKAIIIQQgAwRAIAUgA0EMbEEEEOgOCyAJKAIAIgMEQCABIANBAnRBBBDoDgsgCigCACIBBEAgCyABQQJ0QQQQ6A4LIAYgBDYCACAGIAA2AgQgAkFAayQADAULIAUgAUHousEAENcNAAsgAkEANgI4IAJBATYCLCACQdi/wQA2AiggAkIENwIwIAJBKGpB4L/BABC5DQALIAggAEHousEAENcNAAtBAUEBQbDWwQAQhQsAC0ECQQJBwNbBABCFCwALAkAgBigCACIBBH8gBigCBCECQRRBBBCRDiIARQ0BIAAgAjYCECAAIAE2AgwgAEEANgIIIABCgYCAgBA3AgAgAEEIagVBAAshACAGQSBqJAAgAA8LQQRBFEH4ysQAKAIAIgBBzAggABsRAAAAC6wBAQR+IAAoAgAoAgApAwBChICAgBCFIgVC/////w+DIQMgASgCACACQWRsaiIAQRxrNQIAQt2h8csMhSEEIABBGGs1AgBCt9OwhQyFIgYgBUIgiCIFfiAAQRRrKQIAIAMgBH6FhSADIAZ+IAQgBX6FQiCJhSIDQiCIIgRCt9OwhQx+IANC/////w+DIgNC3aHxywx+hSAEQt2h8csMfiADQrfTsIUMfoVCIImFC6UBAQR+IAEoAgAgAkFsbGoiAUEQazUCAEK307CFDIUhAyABQQxrKAIAIAAoAgAoAgApAwBCg4CAgBCFIgRCIIgiBSADfiABQRRrNQIAQt2h8csMhSIGIARC/////w+DIgR+hSADIAR+IAUgBn6FQiCJhSIDp3OtIgRC3aHxywx+IANCIIgiA0K307CFDH6FIARCt9OwhQx+IANC3aHxywx+hUIgiYULpQEBBH4gASgCACACQWhsaiIBQRRrNQIAQrfTsIUMhSEDIAFBEGsoAgAgACgCACgCACkDAEKDgICAEIUiBEIgiCIFIAN+IAFBGGs1AgBC3aHxywyFIgYgBEL/////D4MiBH6FIAMgBH4gBSAGfoVCIImFIgOnc60iBELdofHLDH4gA0IgiCIDQrfTsIUMfoUgBEK307CFDH4gA0LdofHLDH6FQiCJhQueAQEGfQJAAkACQCACKgIAIgMgA5QgAioCCCIEIASUkiIHQwAAAABcBEAgASoCACIFIAIqAgSUIgggBCAEIAeRIgSVIAEqAgQiB5QiBpQgAyADIASVIAeUIgOUIAiTkl4NASAFjCEFDAMLIAEqAgAgAioCBJghBQwBC0MAAAAAIQYLQwAAAAAhAwsgACAGOAIIIAAgBTgCBCAAIAM4AgALngEBB30CQAJAAkAgAioCACIGIAaUIAIqAggiByAHlJIiBEMAAAAAXARAIAEqAgAiBSACKgIElCIDIAYgBJEiCJUgASoCBCIJlCIEIAaUIAOTIAcgCJUgCZQiAyAHlJJeDQEgBYwhBQwDCyABKgIAIAIqAgSYIQUMAQtDAAAAACEDC0MAAAAAIQQLIAAgAzgCCCAAIAU4AgQgACAEOAIAC6cBAQJ/IwBBEGsiAiQAAkAgASgCBCIDRQRAIABBADYCAAwBCyABIANBAWs2AgQgASgCACIBKAIEIgNBA00EQCACQQA6AAsgAkElOwAJIAJBADYCDCACQQE6AAggAkEIahCfDSEBIABBAjYCACAAIAE2AgQMAQsgAEEBNgIAIAEgA0EEazYCBCABIAEoAgAiAUEEajYCACAAIAEqAAA4AgQLIAJBEGokAAuhBAIGfwJ8IwBBEGsiAyQAAkACQCAABEAgAEEIayIEKAIAQQFqIQIgBCACNgIAIAJFDQEgACgCAA0CIABBfzYCACADIAQ2AgggAyAANgIEIAMgAEEEaiICNgIAIAMgATYCDCADQQxqIQUjAEFAaiIBJAAgAUGBATYCGCABQRxqIAIoAhAiBiACKAIUIgcQogECQCABKAIcIgJBAkYNAANAIAErAiwhCCABKwIkIQkCQCACQQFxBEAgASAJEAA2AjQgASAIEAA2AjggAUGDATYCPCABQQhqIAUgAUEYaiABQTRqIAFBOGogAUE8ahCqDCABKAIMIgJBhAFPBEAgAhACCyABKAI8IgJBhAFPBEAgAhACCyABKAI4IgJBhAFPBEAgAhACCyABKAI0IgJBhAFJDQEgAhACDAELIAEgCRAANgI0IAEgCBAANgI4IAFBggE2AjwgAUEQaiAFIAFBGGogAUE0aiABQThqIAFBPGoQqgwgASgCFCICQYQBTwRAIAIQAgsgASgCPCICQYQBTwRAIAIQAgsgASgCOCICQYQBTwRAIAIQAgsgASgCNCICQYQBSQ0AIAIQAgsgAUEcaiAGIAcQogEgASgCHCICQQJHDQALIAEoAhgiAkGEAUkNACACEAILIAFBQGskACAAQQA2AgAgBCAEKAIAQQFrIgA2AgAgAEUEQCADQQhqEO0MCyADQRBqJAAPCxCDDwsACxCEDwAL3Q4CDn8BfiMAQRBrIgkkAAJAAkAgAARAIABBCGsiCygCAEEBaiEEIAsgBDYCACAERQ0BIAAoAgANAiAAQX82AgAgCSALNgIIIAkgADYCBCAJIABBBGoiAjYCACAJIAE2AgwgCUEMaiEMIwBBkAFrIgEkACABQYEBNgIQIAIoAhwiBEGAAWohDSABQRZqIQggAigCGCEOAkADQAJAAkACQAJAAkACQAJAIA5BAWsOAgECAAsDQCAEKALMASAEKAIAIgMgBCgCyAEiBUEBa3EiB0E0bGoiBigCMCECIAIgA0EBakcEQCACIANHDQEgBCgCQCAFQX9zcSADRw0BDAQLIAQoAsABIAdBAWpNBEAgA0EAIAQoAsQBIgJrcSACaiECCyAEKAIAIgcgA0YhBSAEIAIgByAFGzYCACAFRQ0ACyABQeAAaiICQRBqIgUgBkEQav0AAgD9CwMAIAJBIGoiAiAGQSBq/QACAP0LAwAgBiAEKALEASADajYCMCABIAb9AAIA/QsDYCANELwDIAhBIGogAv0AAwD9CwEAIAhBEGogBf0AAwD9CwEAIAggAf0AA2D9CwEADAULA0AgBCgCACIDQQF2IgdBH3EiBUEfRg0AIAQoAgQhBiADQQJqIQIgA0EBcUUEQCAHIAQoAkAiCkEBdkYNAyACIAMgCnNBP0tyIQILIAZFDQAgBCACIAQoAgAiByADIAdGGzYCACADIAdHDQALIAVBHkYEQANAIAYoAgAiA0UNAAsgAygCACEHIAQgAzYCBCAEIAJBfnEgB0EAR3JBAmo2AgALIAYgBUE0bCICakEEaiEDA0AgAy0AMEEBcUUNAAsgAUHgAGoiB0EgaiIKIANBIGr9AAIA/QsDACAHQRBqIgcgA0EQav0AAgD9CwMAIAEgA/0AAgD9CwNgAkACQCAFQR5HBEAgAyADKAIwIgNBAnI2AjAgA0EEcUUNAiAFQRxLDQEgBkHoAGohBQNAIAIgBWoiAy0AAEECcUUEQCADIAMoAgAiA0EEcjYCACADQQJxRQ0ECyACQTRqIgJB5AtHDQALDAELQQAhAwNAIAMgBmoiBUE0aiICLQAAQQJxRQRAIAIgAigCACICQQRyNgIAIAJBAnFFDQMLIAVB6ABqIgItAABBAnFFBEAgAiACKAIAIgJBBHI2AgAgAkECcUUNAwsgA0HoAGoiA0GYDEcNAAsLIAZB0AxBBBDoDgsgCCAB/QADYP0LAQAgCEEgaiAK/QADAP0LAQAgCEEQaiAH/QADAP0LAQAMBAsgASAELQAAIgI6AEcgBEEBOgAAIAJBAUYNAQJAAkACQAJAIAQoAgwiAkUNACACQQxsIQogBCgCCCEPQQAhA0EAIQIDQAJAIAMgD2oiBSgCACIGKAIUQYCPxABGDQAgBiAGKAIMIgcgBUEEaigCACAHGzYCDCAHDQAgBUEIaigCACIFBEAgBiAFNgIQCyAEKAIMIgYgAk0NCCAEKAIIIANqIgUoAgAhAyAFQQRqKQIAIRAgBiACa0EMbEEMayICBEAgBSAFQQxqIAL8CgAACyAEIAZBAWs2AgwgA0UNAiABIAM2AkggASAQNwJMIARBADoAACAQQoCAgIAQVCIGDQUgEEIgiKciAi0ANUUEQANAIAItADRFDQALIAIoAgAhAyACQQA2AgAgA0EBcQRAIAFB4ABqIgNBIGogAkEkav0AAgD9CwMAIANBEGogAkEUav0AAgD9CwMAIAEgAv0AAgT9CwNgIAJBOEEEEOgOIAEoAkghAwwGC0HcucEAEPIOAAsgAigCACEFIAJBADYCACAFQQFxDQNB7LnBABDyDgALIAJBAWohAiAKIANBDGoiA0cNAAsLIARBADoAAAwDCyACQQE6ADQgAUHgAGoiBUEgaiACQSRq/QACAP0LAwAgBUEQaiACQRRq/QACAP0LAwAgASAC/QACBP0LA2ALIAggAf0AA2D9CwEAIAhBIGogAUHgAGoiAkEgav0AAwD9CwEAIAhBEGogAkEQav0AAwD9CwEACyADIAMoAgAiAkEBazYCACACQQFGBEAgAUHIAGoQ1wsLIAZFDQMLIAEoAhAiBEGEAU8EQCAEEAILIAFBkAFqJAAMBAsgAUIANwJUIAFCgYCAgMAANwJMIAFBrLrBADYCSCABQccAaiABQcgAakG0usEAEPsMAAsgAiAGQfy5wQAQhAsAC0E8QQQQkQ4iAgRAIAJBADYCCCACQoGAgIAQNwIAIAIgCP0AAQD9CwEMIAJBHGogCEEQav0AAQD9CwEAIAJBLGogCEEgav0AAQD9CwEAIAEgAkEIahAGNgJgIAFBCGogDCABQRBqIAFB4ABqEMAMIAEoAgwiAkGEAU8EQCACEAILIAEoAmAiAkGEAUkNASACEAIMAQsLQQRBPEH4ysQAKAIAIgBBzAggABsRAAAACyAAQQA2AgAgCyALKAIAQQFrIgA2AgAgAEUEQCAJQQhqEO0MCyAJQRBqJAAPCxCDDwsACxCEDwALpAEBBH4gASgCACACQXRsakEMaykAACIDIAAoAgAoAgApAwBCOImFIgRCIIgiBSADQpeSnKrbtrXCP4UiA0IgiCIGfiAEQv////8PgyIEIANC/////w+DIgN+hSADIAV+IAQgBn6FQiCJhSIDQv////8Pg0IChSIEQt2h8csMfiADQiCIIgNCt9OwhQx+hSAEQrfTsIUMfiADQt2h8csMfoVCIImFC6QBAQR+IAEoAgAgAkFsbGpBFGspAAAiAyAAKAIAKAIAKQMAQjiJhSIEQiCIIgUgA0KXkpyq27a1wj+FIgNCIIgiBn4gBEL/////D4MiBCADQv////8PgyIDfoUgAyAFfiAEIAZ+hUIgiYUiA0L/////D4NCAoUiBELdofHLDH4gA0IgiCIDQrfTsIUMfoUgBEK307CFDH4gA0LdofHLDH6FQiCJhQu9AQEBfyMAQdABayIFJAAgBf0MAAAAAAAAAAAAAAAAAAAAAP0LBMABIAX9DAAAAAABAAAAAgAAAAMAAAD9CwQQIAVBIGpBAEGgAfwLACAFIAEoAgQgASgCCCAFQRBqIAIgAxAyAkAgBCACKgIAIAUqAgCTIgQgBJQgAioCBCAFKgIEkyIEIASUkiACKgIIIAUqAgiTIgQgBJSSkV1FBEAgACAF/QACAP0LAgAMAQsgAEECOgAMCyAFQdABaiQAC9gEAwV/B30BfiMAQRBrIggkAAJAAkAgAARAIABBCGsiCigCAEEBaiEGIAogBjYCACAGRQ0BIAAoAgANAiAAQX82AgAgCCAKNgIMIAggADYCCCAIIABBBGoiBjYCBCMAQRBrIgkkAAJAAkAgAiAClCAEIASUkiADIAOUIAUgBZSSkiILQwAAAABeBEAgBiABvSISpyASQiCIpxDfCSIGRQ0BIAQgC5EiBJUiCyALjCAFIASVIhBDAAAAAGAiBxsiBSAFlCACIASVIgIgAowgBxsiDyAPlCADIASVIgMgA4wgBxsiBCAElJKSIhFDAAAAAF4EQCAFIBGRIgWVIAsgC5QgAiAClCADIAOUkpKRIBCLELYPIgIgApIiApQhDSAPIAWVIAKUIQ4gBCAFlSAClCEMCyAJIA04AgwgCSAMOAIIIAkgDjgCBCAJQQRqIQdDAAAAACECIAYoAhBBAUYEQCAGIAYoAnBBBHI2AnACfSAHKgIAQwAAAD+UIgMgA5QgByoCBEMAAAA/lCIEIASUkiAHKgIIQwAAAD+UIgUgBZSSIgtDAACAKF8EQEMAAIA/IQRDAAAAACEFQwAAAAAMAQsgBSALkSILELsPIAuVIgyUIQIgBCAMlCEFIAsQvA8hBCADIAyUCyEDIAYgBDgCKCAGIAI4AiQgBiAFOAIgIAYgAzgCHAsLIAlBEGokAAwBC0Hc0MEAQcwAQbjRwQAQ0QsACyAAQQA2AgAgCiAKKAIAQQFrIgA2AgAgAEUEQCAIQQxqEO4MCyAIQRBqJAAPCxCDDwsACxCEDwALnRMDC34qfw99IwBBEGsiHiQAAkACQCAABEAgAEEIayIfKAIAQQFqIRcgHyAXNgIAIBdFDQEgACgCAA0CIABBfzYCACAeIB82AgwgHiAANgIIIB4gAEEEaiIXNgIEIwBBMGsiFCQAIBRBGGogFyABvSIGpyAGQiCIpyACvSIGpyAGQiCIpxC0AgJAIBQoAhgiGUUNACAUKAIcIhdFDQAgFEEQaiAZELIMIBQoAhAgFCgCFBDCCyEWIBRBCGogFxCyDCAUKAIIIBQoAgwQwgshGCAWRQ0AIBhFDQAgFCAFNgIsIBQgBDYCKCAUIAM2AiQgFEEkaiEEIwBB0AFrIhEkAAJAAkACQCAWKAJIIgMEQCAWKAJEIhkgA0EMbGohLyAWKgJsIjtDAAAAP5QhPiAWKgJoIjxDAAAAP5QhPyAWKgJkIj1DAAAAP5QhQCAZQQxqIQMgFikDOEKDgICAEIUiBkL/////D4MhCSAGQiCIIQogOyAEKAIIIjCyjJQhQSA8IAQoAgQiMbKMlCFCID0gBCgCACIysoyUIUMgFigCUCEzIBYoAlQhJyAWKAIoISggFigCLCEgIBYoAjQhNANAIBkhBCADIRkgBCgCACEVIAQoAgQhAyARIEEgOyAEKAIIQQN0IheylCA+k5IiRDgCFCARIEIgPCADQQN0IgWylCA/k5IiRTgCECARIEMgPSAVQQN0IgOylCBAk5IiRjgCDCARIEEgPiA7IBdBCGqylJKSIkc4AiAgESBCID8gPCAFQQhqspSSkiJIOAIcIBEgQyBAID0gA0EIarKUkpIiSTgCGAJAIBgoAghFBEBBACESQQAhFQwBC0EAIRIgGCgCBCIDQQAgAyoCGCBEYBtBACADKgIUIEVgG0EAIAMqAhAgRmAbQQAgAyoCCCBHXxtBACADKgIEIEhfG0EAIAMqAgAgSV8bIRUgAygCPEH/////A3FFDQAgAyoCICBJXyADKgIkIEhfcSADKgIoIEdfcSADKgIwIEZgcSADKgI0IEVgcSADKgI4IERgcSESIANBIGohAwsgESAVNgK0ASARIBg2AqwBIBEgEjYCqAEgESADNgIoIBFBADYCJCARIBFBDGo2ArABIBEgEUEkahDZAwJAIBEoAgBBAXFFBEAgESgCqAEiA0EhSQ0BIBEoAiwgA0ECdEEEEOgODAELIBEoAqgBIgNBIU8EQCARKAIsIANBAnRBBBDoDgsgBCgCAEEDdCIDQQFrIhogA0EJaiI1Tg0AIAQoAgRBA3QiBUEBayIhIAVBCWoiKU4NACAEKAIIQQN0IgRBAWsiIiAEQQlqIipIICJqITYgISAhIClIaiE3A0AgAyEXIBpBH3YiBSAaakEIbSEEIBogMmsiI0EfdiEVIBUgI2pBCG0hAyAiICpIBEAgBCAFayIrQd2h8ct8c60iBiAKfiENIAYgCX4hDiADIBVrIixB3aHxy3xzrSELIDchAyAhIRUDQCADIQUgFUEfdiIDIBVqQQhtIANrIi1Bt9OwhXxzrSIGIAp+IA6FIAYgCX4gDYVCIImFIgdCIIgiBkK307CFDH4hDyAGQt2h8csMfiEQIAenITggFSAxayIkQR92IQMgAyAkakEIbSADayIuQbfTsIV8c60hDCAVICtrQQN0IBpqITkgJCAsa0EDdCAjaiE6IDYhEiAiIQQDQCAEIQMgEiEEIBEgFTYCvAEgESAaNgK4ASARICQ2AsgBIBEgIzYCxAEgESADNgLAASARIAMgMGsiGzYCzAEgA0EfdiITIANqQQhtIRICQCA0RQRAQQAhAwwBCyA5IAMgLWtBBnRqIBIgE2siE0EJdGshHCAgIBMgOHOtIgZC3aHxywx+IA+FIAZCt9OwhQx+IBCFQiCIhSIGp3EhAyAGQhmIQv8Ag0KBgoSIkKDAgAF+IQdBACESA0ACQAJAIAMgKGopAAAiCCAHhSIGQoGChIiQoMCAAX0gBkJ/hYNCgIGChIiQoMCAf4MiBkIAUgRAA0ACQCArICggBnqnQQN2IANqICBxQWxsaiIdQRRrKAIARw0AIC0gHUEQaygCAEcNACATIB1BDGsoAgBGDQMLIAZCAX0gBoMiBkIAUg0ACwsgCCAIQgGGg0KAgYKEiJCgwIB/g1ANAUEAIQMMAwsCQCAdQQhrKAIAIgMgJ0kEQCAcQf8DSw0BIDMgA0EJdGogHGoiA0EAIAMtAABBwABHGyEDDAQLIAMgJ0H06cMAEIULAAsgHEGABEGE6sMAEIULAAsgEkEIaiISIANqICBxIQMMAAsACyAbQR92IhMgG2pBCG0hEgJAAkACQCAYKAI0RQ0AIDogGyAua0EGdGogEiATayIbQQl0ayElIBgoAiwiHCAbIBgpAzhCg4CAgBCFIgZCIIgiByAMfiAGQv////8PgyIGIAt+hSAGIAx+IAcgC36FQiCJhSIGp3OtIgdC3aHxywx+IAZCIIgiBkK307CFDH6FIAdCt9OwhQx+IAZC3aHxywx+hUIgiIUiBqdxIRIgBkIZiEL/AINCgYKEiJCgwIABfiEHIBgoAighHUEAIRMDQAJAIBIgHWopAAAiCCAHhSIGQoGChIiQoMCAAX0gBkJ/hYNCgIGChIiQoMCAf4MiBkIAUgRAA0ACQCAsIB0gBnqnQQN2IBJqIBxxQWxsaiImQRRrKAIARw0AIC4gJkEQaygCAEcNACAbICZBDGsoAgBGDQMLIAZCAX0gBoMiBkIAUg0ACwsgCCAIQgGGg0KAgYKEiJCgwIB/g0IAUg0CIBNBCGoiEyASaiAccSESDAELCyAmQQhrKAIAIhMgGCgCVCISTw0KICVB/wNLDQsgGCgCUCATQQl0aiAlaiITLQAAIRIgAwRAIBJBwABGDQIgAyADLQAAIBJyIgM6AAAgEyATLQAAIANyOgAADAMLIBJBwABGDQIgFiARQbgBahDUAiEDIBMgEy0AACADQf8BcXI6AAAMAgsgA0UNAQsgGCARQcQBahDUAiESIAMgAy0AACASQf8BcXI6AAALIAQgKkgiAyAEaiESIAMNAAsgBSApSCIEIAVqIQMgBSEVIAQNAAsLIBcgNUgiBCAXaiEDIBchGiAEDQALCyAZQQBBDCAZIC9GIgQbaiEDIARFDQALCyARQdABaiQADAILIBMgEkGU6sMAEIULAAsgJUGABEGk6sMAEIULAAsLIBRBMGokACAAQQA2AgAgHyAfKAIAQQFrIgA2AgAgAEUEQCAeQQxqEO4MCyAeQRBqJAAPCxCDDwsACxCEDwALnQEBB30gASoCACIFIAIqAgAiBpQgASoCBCIHIAIqAgQiCJSSIAEqAggiCSACKgIIIgqUkiEEIANBAEcgBEMAAAAAX3FFBEAgACAKIAkgBJSTOAIIIAAgCCAHIASUkzgCBCAAIAYgBSAElJM4AgAgACAEQwAAAABfOgAMDwsgACACKQIANwIAIABBCGogAkEIaigCADYCACAAQQE6AAwLpgECAX8EfSMAQSBrIgIkACABKgIMIgNDAAAAAGBFBEAgAkEANgIYIAJBATYCDCACQejgwgA2AgggAkIENwIQIAJBCGpB8ODCABC5DQALIAEqAgQhBCABKgIAIQUgACABKgIIIgYgA5I4AhQgACAEIAOSOAIQIAAgBSADkjgCDCAAIAaMIAOTOAIIIAAgBIwgA5M4AgQgACAFjCADkzgCACACQSBqJAALpgECAX8BfSMAQcABayIDJAAgASoCYCEFIANB4ABqIgQgARDyASADIAQgAhClAQJAAkAgAygCAEGAgICAeEcEQCAEIANB4AD8CgAAQeQAQQQQkQ4iAUUNASABIARB4AD8CgAAIAEgBTgCYAwCC0EAIQEMAQtBBEHkAEH4ysQAKAIAIgBBzAggABsRAAAACyAAQcjVwwA2AgQgACABNgIAIANBwAFqJAAL1QICBX8BfSMAQSBrIgIkACACIAA4AgwgAiAAQwAAAACUIgc4AhAgAiAHOAIIIAIgAIw4AhggAiAHjCIAOAIcIAIgADgCFCMAQSBrIgMkACADQRBqIgUgAkEUaiIEQQhqKAIANgIAIANBHGogAkEIaiIGQQhqKAIANgIAIAMgBCkCADcDCCADIAYpAgA3AhRBJEEEEJEOIgRFBEBBBEEkQfjKxAAoAgAiAkHMCCACGxEAAAALIARCgYCAgBA3AgAgBCADKQMINwIIIAQgATgCICAEQRBqIAX9AAMA/QsCACACQeClwwA2AgQgAiAENgIAIANBIGokACACKAIEIQQgAigCACEFQRRBBBCRDiIDRQRAQQRBFEH4ysQAKAIAIgJBzAggAhsRAAAACyADIAU2AgwgA0EANgIIIANCgYCAgBA3AgAgAyAENgIQIAJBIGokACADQQhqC6QBAQR+IAEoAgAgAkEDdGtBCGspAAAiAyAAKAIAKAIAKQMAQjiJhSIEQiCIIgUgA0KXkpyq27a1wj+FIgNCIIgiBn4gBEL/////D4MiBCADQv////8PgyIDfoUgAyAFfiAEIAZ+hUIgiYUiA0L/////D4NCAoUiBELdofHLDH4gA0IgiCIDQrfTsIUMfoUgBEK307CFDH4gA0LdofHLDH6FQiCJhQuTAQEHfSAAIAEqAhgiAiABKgIIIgMgASoCFCIEIAMgBGAbkjgCFCAAIAIgASoCBCIFIAEqAhAiBiAFIAZgG5I4AhAgACACIAEqAgAiByABKgIMIgggByAIYBuSOAIMIAAgAyAEIAMgBF8bIAKTOAIIIAAgBSAGIAUgBl8bIAKTOAIEIAAgByAIIAcgCF8bIAKTOAIAC7UBAQl9IAEqAhQhByABKgIQIQggASoCDCEJIAEqAgghCiABKgIEIQsgASoCACEMIAIqAgghBCACKgIEIQUgAioCACEGQRhBBBCRDiIBRQRAQQRBGEH4ysQAKAIAIgBBzAggABsRAAAACyABIAQgB5Q4AhQgASAFIAiUOAIQIAEgBiAJlDgCDCABIAQgCpQ4AgggASAFIAuUOAIEIAEgBiAMlDgCACAAQYyfwwA2AgQgACABNgIAC44BAQF/IAAoAjAiAQRAIAAoAjQgAUEDdEEEEOgOCyAAKAJEIgEEQCAAKAJIIAFBDGxBBBDoDgsgACgCGCIBBEAgACgCHCABQQR0QQQQ6A4LIAAoAiQiAQRAIAAoAiggAUGAA2xBEBDoDgsgACgCBCIBBEAgACgCACABQQN0a0EIayABQQlsQRFqQQgQ6A4LC5EBAQN/IwBBIGsiAyQAIAAoAgAiABAcIQQgAyACNgIEIAMgBDYCACACIARGBEAQHyIFEBEiBCABIAIQGiEBIAVBhAFPBEAgBRACCyAEQYQBTwRAIAQQAgsgACABQQAQGyABQYQBTwRAIAEQAgsgA0EgaiQADwsgA0EANgIIIAMgA0EEaiADQQhqQYjOwgAQ/AwAC5EBAQZ9IAIqAgAiBiAGlCACKgIEIgcgB5SSIAIqAggiBCAElJIhBSABKgIAIgggCJQhCSADQQBHIAUgCV9xRQRAIAAgBCAIIAWRlSIElDgCCCAAIAcgBJQ4AgQgACAGIASUOAIAIAAgBSAJXzoADA8LIAAgAikCADcCACAAQQhqIAJBCGooAgA2AgAgAEEBOgAMC5EBAQl9IAIqAgAiBCABKgIAIgaUIAIqAgQiBSABKgIEIgeUkiABKgIIIgggAioCCCIDlJIgBCABKgIMIgmUIAUgASoCECIKlJIgAyABKgIUIguUkl4hAiAAIAggCyACGyADIAEqAhgiA5SSOAIIIAAgByAKIAIbIAUgA5SSOAIEIAAgBiAJIAIbIAQgA5SSOAIAC5YBAQR/AkBBCCAAKAIAIgFBgICAgHhzIAFBAE4bIgJBAWtBB0kNACACBEAgAUUNASAAKAIEIAFBARDoDgwBCyAALQAEQQNHDQAgACgCCCIBKAIAIQIgAUEEaigCACIEKAIAIgMEQCACIAMRBgALIAQoAgQiAwRAIAIgAyAEKAIIEOgOCyABQQxBBBDoDgsgAEEMQQQQ6A4LsQQCBn8CfiMAQRBrIgUkAAJAAkAgAARAIABBCGsiBygCAEEBaiEEIAcgBDYCACAERQ0BIAAoAgANAiAAQX82AgAgBSAHNgIMIAUgADYCCCAFIABBBGoiAzYCBCMAQTBrIgQkAAJAAkAgAyABvSIJpyAJQiCIpxDfCSIDBEACQAJAAkACQCADKAJAIAMoAkQiBigCCEEBa0F4cWpBCGogBigCoAERBABB/wFxDhEFBgAGBgYGBgYGBgYBAgYGAwYLIARBEGogAxCyDCAEKAIQIAQoAhQQvwsiA0UNBSADIAI4AhgMBQsgBEEYaiADELIMIAQoAhggBCgCHBDKCyIDRQ0EIAMgAjgCBAwECyAEQSBqIAMQsgwgBCgCICAEKAIkEMwLIgNFDQMgAyACOAIEDAMLIARBKGogAxCyDCAEKAIoIAQoAiwQzgsiA0UNAiADIAI4AgQMAgtB3NDBAEHMAEG40cEAENELAAsgBEEIaiADELIMIAQoAgghBiAEKAIMIQgjAEEgayIDJAAgA0EIaiAGIAgoAmQRAAAgA0EQaiADKAIIIgYgAygCDCgCDBEAACADKQMYIQkgAykDECEKIANBIGokACAGQQAgCkLtjJ6ph4fC+DaFIAlCpZyhjOOU7KVehYRQGyIDRQ0AIAMgAjgCAAsgBEEwaiQAIABBADYCACAHIAcoAgBBAWsiADYCACAARQRAIAVBDGoQ7gwLIAVBEGokAA8LEIMPCwALEIQPAAvSAwMFfwF9AX4jAEEQayIFJAACQAJAIAAEQCAAQQhrIgYoAgBBAWohBCAGIAQ2AgAgBEUNASAAKAIADQIgAEF/NgIAIAUgBjYCDCAFIAA2AgggBSAAQQRqIgM2AgQjAEEgayIEJAACQAJAIAMgAb0iCacgCUIgiKcQ3wkiAwRAAkACQAJAIAMoAkAgAygCRCIHKAIIQQFrQXhxakEIaiAHKAKgAREEAEH/AXFBAmsODwQFBQUFBQUFBQUAAQUFAgULIARBCGogAxCyDCAEKAIIIAQoAgwQygsiA0UNBCADIAI4AgAMBAsgBEEQaiADELIMIAQoAhAgBCgCFBDMCyIDRQ0DIAMgAjgCAAwDCyAEQRhqIAMQsgwgBCgCGCAEKAIcEM4LIgNFDQIgAyACOAIADAILQdzQwQBBzABBuNHBABDRCwALIAQgAxCyDCAEKAIAIAQoAgQQvwsiA0UNACADIAI4AhAgAyACQwAAAACUIgg4AhQgAyAIOAIMIAMgAow4AgQgAyAIjCICOAIIIAMgAjgCAAsgBEEgaiQAIABBADYCACAGIAYoAgBBAWsiADYCACAARQRAIAVBDGoQ7gwLIAVBEGokAA8LEIMPCwALEIQPAAv3BQIGfwJ+IwBBEGsiBiQAAkACQCAABEAgAEEIayIIKAIAQQFqIQQgCCAENgIAIARFDQEgACgCAA0CIABBfzYCACAGIAg2AgwgBiAANgIIIAYgAEEEaiIDNgIEIwBBMGsiBCQAAkACQCADIAG9IgmnIAlCIIinEN8JIgMEQAJAAkACQAJAIAMoAkAgAygCRCIFKAIIQQFrQXhxakEIaiAFKAKgAREEAEH/AXFBDmsOBQUAAQIDBgsgBEEQaiADELIMIAQoAhAhBSAEKAIUIQcjAEEgayIDJAAgA0EIaiAFIAcoAmQRAAAgA0EQaiADKAIIIgUgAygCDCgCDBEAACADKQMYIQkgAykDECEKIANBIGokACAFQQAgCkKUxajUzfyclkOFIAlC9viGzLSH5MkChYRQGyIDRQ0FIAMgAjgCJAwFCyAEQRhqIAMQsgwgBCgCGCAEKAIcEM4LIgNFDQQgAyACOAIIDAQLIARBIGogAxCyDCAEKAIgIQUgBCgCJCEHIwBBIGsiAyQAIANBCGogBSAHKAJkEQAAIANBEGogAygCCCIFIAMoAgwoAgwRAAAgAykDGCEJIAMpAxAhCiADQSBqJAAgBUEAIApCs9vcjZaKhISAf4UgCUKcpMiCwICPkIt/hYRQGyIDRQ0DIAMgAjgCCAwDCyAEQShqIAMQsgwgBCgCKCEFIAQoAiwhByMAQSBrIgMkACADQQhqIAUgBygCZBEAACADQRBqIAMoAggiBSADKAIMKAIMEQAAIAMpAxghCSADKQMQIQogA0EgaiQAIAVBACAKQoSMrdXS8YipZYUgCUK0+a795fqy/d4AhYRQGyIDRQ0CIAMgAjgCYAwCC0Hc0MEAQcwAQbjRwQAQ0QsACyAEQQhqIAMQsgwgBCgCCCAEKAIMEMYLIgNFDQAgAyACOAIMCyAEQTBqJAAgAEEANgIAIAggCCgCAEEBayIANgIAIABFBEAgBkEMahDuDAsgBkEQaiQADwsQgw8LAAsQhA8AC7ABAgN/A30CQAJAAkAgAARAIABBCGsiASgCACIDQQFqIQIgASACNgIAIAJFDQEgACgCAEF/Rg0CIAAqAgwhBCAAKgIIIQUgACoCBCEGIAEgAzYCAEEYQQQQkQ4iAEUNAyAAIAQ4AhQgACAFOAIQIAAgBjgCDCAAQQA2AgggAEKBgICAEDcCACAAQQhqDwsQgw8LAAsQhA8AC0EEQRhB+MrEACgCACIAQcwIIAAbEQAAAAuwAQIDfwN9AkACQAJAIAAEQCAAQQhrIgEoAgAiA0EBaiECIAEgAjYCACACRQ0BIAAoAgBBf0YNAiAAKgIMIQQgACoCBCEFIAAqAgghBiABIAM2AgBBGEEEEJEOIgBFDQMgACAEOAIUIAAgBTgCECAAIAY4AgwgAEEANgIIIABCgYCAgBA3AgAgAEEIag8LEIMPCwALEIQPAAtBBEEYQfjKxAAoAgAiAEHMCCAAGxEAAAALsAECA38DfQJAAkACQCAABEAgAEEIayIBKAIAIgNBAWohAiABIAI2AgAgAkUNASAAKAIAQX9GDQIgACoCCCEEIAAqAgQhBSAAKgIMIQYgASADNgIAQRhBBBCRDiIARQ0DIAAgBDgCFCAAIAU4AhAgACAGOAIMIABBADYCCCAAQoGAgIAQNwIAIABBCGoPCxCDDwsACxCEDwALQQRBGEH4ysQAKAIAIgBBzAggABsRAAAAC7ABAgN/A30CQAJAAkAgAARAIABBCGsiASgCACIDQQFqIQIgASACNgIAIAJFDQEgACgCAEF/Rg0CIAAqAgghBCAAKgIMIQUgACoCBCEGIAEgAzYCAEEYQQQQkQ4iAEUNAyAAIAQ4AhQgACAFOAIQIAAgBjgCDCAAQQA2AgggAEKBgICAEDcCACAAQQhqDwsQgw8LAAsQhA8AC0EEQRhB+MrEACgCACIAQcwIIAAbEQAAAAuwAQIDfwN9AkACQAJAIAAEQCAAQQhrIgEoAgAiA0EBaiECIAEgAjYCACACRQ0BIAAoAgBBf0YNAiAAKgIEIQQgACoCDCEFIAAqAgghBiABIAM2AgBBGEEEEJEOIgBFDQMgACAEOAIUIAAgBTgCECAAIAY4AgwgAEEANgIIIABCgYCAgBA3AgAgAEEIag8LEIMPCwALEIQPAAtBBEEYQfjKxAAoAgAiAEHMCCAAGxEAAAALsAECA38DfQJAAkACQCAABEAgAEEIayIBKAIAIgNBAWohAiABIAI2AgAgAkUNASAAKAIAQX9GDQIgACoCBCEEIAAqAgghBSAAKgIMIQYgASADNgIAQRhBBBCRDiIARQ0DIAAgBDgCFCAAIAU4AhAgACAGOAIMIABBADYCCCAAQoGAgIAQNwIAIABBCGoPCxCDDwsACxCEDwALQQRBGEH4ysQAKAIAIgBBzAggABsRAAAAC5ABAQN/IAAoAgAiBSACaiIELQAAIQYgBCABp0EZdiIEOgAAIAUgACgCBCACQQhrcWpBCGogBDoAACAAIAAoAgxBAWo2AgwgACAAKAIIIAZBAXFrNgIIIAUgAkFkbGoiAkEcayIAIAMpAgA3AgAgAEEIaiADQQhq/QACAP0LAgAgAEEYaiADQRhqKAIANgIAIAILjgEBA38jAEEQayICJAACQAJAIAEgACgCIE8NACAAKAIcIAFBA3RqIgEoAgBBAUcNACAAKAIIIgMgASgCBCIEQQF2IgFNDQEgAiAAKAIEIAFBBnRqIgA2AgggAiAAQSBqNgIMIAJBCGogBEEBcUECdGooAgAhAwsgAkEQaiQAIAMPCyABIANB4PPCABCFCwALlgECAX8DfSMAQSBrIgMkACADIAIqAgggASoCbCIElY78ADYCECADIAIqAgQgASoCaCIFlY78ADYCDCADIAIqAgAgASoCZCIGlY78ADYCCCADIAIqAhQgBJWN/AA2AhwgAyACKgIQIAWVjfwANgIYIAMgAioCDCAGlY38ADYCFCAAIAEgA0EIaiADQRRqEJ4EIANBIGokAAufAQIBfwR9IwBBIGsiAiQAIAEqAggiA0MAAAAAYEUEQCACQQA2AhggAkEBNgIMIAJB6ODCADYCCCACQgQ3AhAgAkEIakHw4MIAELkNAAsgASoCACEEIAAgASoCBCIFIAOSIgY4AhQgACAGOAIMIAAgBIsiBCADkjgCECAAIAWMIAOTIgU4AgggACAFOAIAIAAgBIwgA5M4AgQgAkEgaiQAC6ABACAAKAKwA0GAgICAeEcEQCAAQbADahCCCgsgACgC8ANBgICAgHhHBEAgAEHwA2oQ7QkLIAAoAvQGQYCAgIB4RwRAIABB9AZqEM4HCyAAKAKMA0ECRwRAIABBEGoQ6wcLIAAoAsAGQQJHBEAgAEHABmoQowgLIAAoAswFQQJHBEAgAEGQBWoQyQkLIAAoAqQGQQJHBEAgAEHoBWoQswgLC5YBAgJ/A30jAEFAaiIEJAAgAUEIaiIFKgIAIQYgASoCACEHIAEqAgQhCCAEQSBqIAUoAgA2AgAgBCAGjDgCFCAEIAiMOAIQIAQgB4w4AgwgBCABKQIANwIYIARBJGoiASAEQQxqIAIgAxCGAyAAIAQpAiQ3AgAgAEEIaiABQQhqKAIANgIAIAAgBC0AMDoADCAEQUBrJAALsgEBA38jAEEQayIBJAACQAJAIAAEQCAAQQhrIgMoAgBBAWohAiADIAI2AgAgAkUNASAAKAIADQIgAEF/NgIAIAEgAzYCDCABIAA2AgggASAAQQRqIgI2AgQgAv0MAAAAAAAAAAAAAAAAAAAAAP0LAjQgAkHEAGpCADcCACAAQQA2AgAgAyADKAIAQQFrIgA2AgAgAEUEQCABQQxqEKsNCyABQRBqJAAPCxCDDwsACxCEDwALmQEBA38CQCABIAAoAowDTw0AIAAoAogDIAFBgANsaiIDKAIAQQFHDQAgAygCBCACRw0AIANBEGohBCADKALMAiIFQQFxDQAgAyAFQQFyNgLMAiAAKAL4AiIDIAAoAvACRgRAIABB8AJqQYiOwgAQtAgLIAAgA0EBajYC+AIgACgC9AIgA0EDdGoiACACNgIEIAAgATYCAAsgBAuSAQEDfwJAIAEgACgCEE8NACAAKAIMIAFBsAFsaiIDKAIAQQFHDQAgAygCBCACRw0AIANBEGohBCADKAKAASIFQQFxDQAgAyAFQQFyNgKAASAAKAIkIgMgACgCHEYEQCAAQRxqQYiOwgAQtAgLIAAgA0EBajYCJCAAKAIgIANBA3RqIgAgAjYCBCAAIAE2AgALIAQL2QECA30BeyAAQQA2AhggAEIANwIQIAD9DAAAAAAAAAAAAAAAAAAAgD/9CwIAIAD9DAAAAAAAAAAAAAAAAAAAAAD9DAAAgD8AAIA/AACAPwAAgD8gAiABKgIAIgMgASoCBCIElCABKgIIIgWUQwAAAEGUlCIC/RMgAiAEIASUQwAAQECVIgQgBSAFlEMAAEBAlSIFkpT9IAEgAiADIAOUQwAAQECVIgMgBZKU/SACIAMgBJIgApT9IAMiBv3nASAG/QwAAAAAAAAAAAAAAAAAAAAA/UH9Uv0LAhwLnwEBBH1BACEDAkAgASoCACACKgIAlCIFIAWUIAEqAgQgAioCBJQiBiAGlJIgASoCCCACKgIIlCIEIASUkiIHQwAAAABeBEBBDEEEEJEOIgNFDQEgAyAEIAeRIgSVOAIIIAMgBiAElTgCBCADIAUgBJU4AgALIABBpL3DADYCBCAAIAM2AgAPC0EEQQxB+MrEACgCACIAQcwIIAAbEQAAAAuMAQEBfyACQQBOBEACfwJAIAMoAgQEQCADKAIIIgRFBEAgAg0CIAEMAwsgAygCACAEIAEgAhDyDQwCCyACDQAgAQwBCyACIAEQkQ4LIgNFBEAgACACNgIIIAAgATYCBCAAQQE2AgAPCyAAIAI2AgggACADNgIEIABBADYCAA8LIABBADYCBCAAQQE2AgALegEEfyMAQRBrIgEkABCVByEDQezOxAAoAgAhAkHszsQAQQE2AgBB8M7EACgCACEAQfDOxAAgAzYCACABIAA2AgwgASACNgIIAkAgAkUNACAARQ0AIAAgACgCACIAQQFrNgIAIABBAUcNACABQQxqENcLCyABQRBqJAALkQECAX8CfgJAAkAgASkDACIGIAJUDQAgBiACfSECIAEoAggiASADSQR/IAJQDQEgAkIBfSECIAFBgJTr3ANqBSABCyADayIEQYCU69wDSQRAIAIhBQwBCyACQn9RDQEgBEGAlOvcA2shBCACQgF8IQULIAAgBDYCCCAAIAU3AwAPC0Hsy8IAQRlBiMzCABDRCwALkgEBBH8jAEEQayICJAACf0EBIAEoAgAiA0EnIAEoAgQiBSgCECIBEQMADQAaIAIgACgCAEGBAhDaAgJAIAItAA0iAEGBAU8EQCADIAIoAgAgAREDAEUNAUEBDAILIAMgAi0ADCIEIAJqIAAgBGsgBSgCDBEFAEUNAEEBDAELIANBJyABEQMACyEEIAJBEGokACAEC4UBAgF/Bn0jAEEwayIDJAAgA0EMaiAAIAEgAhBQIAMtABghACADKgIUIQQgAyoCDCEFIAMqAhAhBiABKgIEIQcgASoCACEIIAEqAgghCSADQTBqJAAgBSAIkyIFIAWUIAYgB5MiBSAFlJIgBCAJkyIEIASUkpEiBCAEjCAEIABBAXEbIAIbC44BAgF/A30jAEEwayIFJAAgBUEMaiABIAIgAxBQAkAgBCACKgIAIAUqAgwiBJMiBiAGlCACKgIEIAUqAhAiBpMiByAHlJIgAioCCCAFKgIUIgeTIgggCJSSkV1FBEAgACAFKAIYNgIMIAAgBzgCCCAAIAY4AgQgACAEOAIADAELIABBAjoADAsgBUEwaiQAC7EGAgp/AX4jAEEgayIGJAAgBiABNgIcIAYgADYCGCAGIAE2AhQgBkEIaiEKIwBBMGsiACQAIAZBFGoiCygCBCEMIAsoAggiAQRAIAFBA24gAUEDcEEAR2ohBAsgBK1CDH4iDachCQJAAkACQCANQiCIpw0AIAlB/P///wdLDQACQCAJRQRAQQQhBUEAIQQMAQtBBCEDIAlBBBCRDiIFRQ0BCyAAQQA2AhQgACAFNgIQIAAgBDYCDCABBEAgASABQQNuIgNBA2xHIANqIgMgBEsEQCAAQQxqQQAgA0EEQQwQ1gYgACgCFCEHIAAoAhAhBQsgBSAHQQxsaiEDA0AgAUECTQ0DIAMgCGoiBCAIIAxqIgUqAgA4AgAgBEEEaiAFQQRqKQIANwIAIAhBDGohCCAHQQFqIQcgAUEDayIBDQALIAAoAhAhBSAAKAIMIQQLIwBBkAFrIgEkACABQewAaiAFIAcQIgJAAkAgASgCbCIDQYCAgIB4RwRAIAEgASkCcDcCiAEgASADNgKEASABKAJ4IQMgAUEMaiABQYQBaiABKAJ8IgcgASgCgAEQPiADBEAgByADQQxsQQQQ6A4LQQAhAyABKAIMQYCAgIB4Rg0CQewAQQQQkQ4iA0UNASADQoGAgIAQNwIAIANBCGogAUEMakHgAPwKAAAgAyACOAJoDAILQQAhAwwBC0EEQewAQfjKxAAoAgAiAEHMCCAAGxEAAAALIABByNXDADYCBCAAIAM2AgAgAUGQAWokACAAKAIEIQEgACgCACEDIAQEQCAFIARBDGxBBBDoDgsgCygCACIEBEAgDCAEQQJ0QQQQ6A4LIAogAzYCACAKIAE2AgQgAEEwaiQADAILIAMgCUHousEAENcNAAsgAEEANgIoIABBATYCHCAAQdi/wQA2AhggAEIENwIgIABBGGpB4L/BABC5DQALAkAgBigCCCIBBH8gBigCDCEDQRRBBBCRDiIARQ0BIAAgAzYCECAAIAE2AgwgAEEANgIIIABCgYCAgBA3AgAgAEEIagVBAAshACAGQSBqJAAgAA8LQQRBFEH4ysQAKAIAIgBBzAggABsRAAAAC4gyBB1/CXsJfQV+IwBB0ARrIg4kACMAQeABayIIJAAgCP0MAAAAAAAAAAAAAIA/AACAP/0LBJABIAj9DAAAgD8AAIA/zcxMPgAAgD/9CwSAASAI/QwAAAAAAACAP83MzD4AAIA//QsEcCAI/QwAAJZDAACAP83MzD4AAIA//QsEYCAI/QwAAAAAAAAAP83MzD4AAIA//QsEUCAI/QwAAHBDAAAAP83MzD4AAIA//QsEQCAI/QwAAPBBAACAP83MzD4AAIA//QsEMCAI/QwAAKBBAACAP5qZmT4AAIA//QsEICAI/QwAAPBBAACAP83MzD4AAIA//QsEECAI/QwAAKpDAACAP5qZmT4AAIA//QsEACAIQpSAgIDQADcD0AEgCEKAgID4o7PmzD43A9gBIAj9DAAAAAAAAIA/AACAPwAAgD/9CwSwASAI/QwAAPBCAACAP83MzD4AAIA//QsEoAEgCP0MAAD4QgAAgD/NzMw+AACAP/0LBMABIA5BCGohECMAQfAAayIFJAAgCCgC0AEhByAFAntB+M7EACgCAEEBRgRAQYDPxAD9AAMADAELIAVB0ABqIQEjAEEQayICJAAgAkEAOgAPQQFBARCRDiIARQRAQQFBAUH4ysQAKAIAIgBBzAggABsRAAAACyABIAJBD2qtNwMAIAEgAK03AwggAEEBQQEQ6A4gAkEQaiQAQfjOxABCATcDAEGIz8QAIAUpA1g3AwAgBf0ABFALIh39CwMYQYDPxAAgHf0dAEIBfDcDACAFQcjnwQD9AAMA/QsDCCAFQYCAgPgDNgI0IAVCgICA+IOAgIA/NwIsIAVB0ABqIQEgBUEsaiEAAkACQEHgAEEEEJEOIgMEQCAD/QwAAAA/AAAAvwAAAD8AAAA//QsCUCAD/QwAAAC/AAAAPwAAAD8AAAA//QsCQCAD/QwAAAC/AAAAvwAAAD8AAAA//QsCMCAD/QwAAAC/AAAAvwAAAD8AAAC//QsCICAD/QwAAAC/AAAAvwAAAD8AAAA//QsCECAD/QwAAAC/AAAAvwAAAL8AAAA//QsCAEHgAEEEEJEOIgJFDQEgAv0MAgAAAAYAAAADAAAABwAAAP0LAlAgAv0MAAAAAAQAAAABAAAABQAAAP0LAkAgAv0MBgAAAAcAAAAHAAAABAAAAP0LAjAgAv0MBAAAAAUAAAAFAAAABgAAAP0LAiAgAv0MAgAAAAMAAAADAAAAAAAAAP0LAhAgAv0MAAAAAAEAAAABAAAAAgAAAP0LAgAgAyAA/V0CACAA/QkCCP0NAAECAwQFBgcYGRobAAECAyIdIB395AEiHyAD/QACAP3mAf0LAgAgAyAfIB/9DQQFBgcICQoLAAECAwQFBgciHiAD/QACEP3mAf0LAhAgAyAfIB/9DQgJCgsAAQIDBAUGBwgJCgsiHSAD/QACIP3mAf0LAiAgAyAfIB/9DQABAgMEBQYHCAkKCwABAgMgA/0AAjD95gH9CwIwIAMgHiAD/QACQP3mAf0LAkAgAyAdIAP9AAJQ/eYB/QsCUCABQQw2AhQgASACNgIQIAFCiICAgMABNwIIIAEgAzYCBCABQQg2AgAMAgtBBEHgAEHA3MIAENcNAAtBBEHgAEH4ysQAKAIAIgBBzAggABsRAAAACyAFQThqIAVBCGpBzNzBACABEP4BAkAgBSgCOCIAQYCAgIB4Rg0AIAAEQCAFKAI8IABBDGxBBBDoDgsgBSgCRCIARQ0AIAUoAkggAEEDdEEEEOgOCyAFQYCAgPgDNgIsIAVB0ABqIQ8jAEEwayIEJAAgBUEsaioCACEtIARBADYCICAEQoCAgIDAADcCGCAEQQA2AiwgBEKAgICAwAA3AiQCfwJAIAdFBEBBfyEBDAELQ9sPyUAgB7OVISlBBCEGQQghAUEAIQADQCAoEOsBQwAAAD+UIScgKBDvAUMAAAA/lCEmIAQoAhggAEYEQCAEQRhqQfj+wwAQkQggBCgCHCEGCyABIAZqIgIgJzgCACACQQRrQQA2AgAgAkEIayAmOAIAIAQgAEEBaiIANgIgIAFBDGohASApICiSISggACAHRw0ACyAHQQxsIQBDAAAAACEoQQAhAQNAICgQ6wFDAAAAP5QhJyAoEO8BQwAAAD+UISYgASAHaiICIAQoAhhGBEAgBEEYakH4/sMAEJEICyAEKAIcIgYgAGoiAyAmOAIAIANBCGogJzgCACADQQRqQQA2AgAgBCACQQFqNgIgIABBDGohACApICiSISggByABQQFqIgFHDQALIAEgB2ohA0MAAAAAIShBACEBA0AgKBDrAUMAAAA/lCEnICgQ7wFDAAAAP5QhJiADIAEgBCgCGGtqRQRAIARBGGpB+P7DABCRCCAEKAIcIQYLIAAgBmoiAiAmOAIAIAJBCGogJzgCACACQQRqQQA2AgAgBCABIANqQQFqNgIgIABBDGohACApICiSISggByABQQFqIgFHDQALIAdBAXQhCgJAAkACQCAHQQBOBEAgASADaiISIApJDQEgB0EMbCINQQxrIhtBDG5BAWohESAEKAIcIhwgDWoiCyEBAkAgG0EkTwRAIAEgEUH8////A3EiA0EMbGohASALIQAgAyECA0AgAEEsaiITIABBIGoiFCAAQRRqIhUgAEEIaiIW/VwCAP1WAgAB/VYCAAL9VgIAAyIg/QwAAAAAAAAAAAAAAAAAAAAA/eYBIABBKGoiFyAAQRxqIhggAEEQaiIZIABBBGoiGv1cAgD9VgIAAf1WAgAC/VYCAAMiIv0MAAAAAAAAAAAAAAAAAAAAAP3mAf3lASIdIB395AEhIyAi/QzzBDU/8wQ1P/MENT/zBDU//eYBIABBJGoiCSAAQRhqIgwgAEEMaiIGIAD9XAIA/VYCAAH9VgIAAv1WAgADIh/9DAAAAAAAAAAAAAAAAAAAAAD95gEiHv3lASIdIB395AEhISAJIB8gI/0M8wQ1P/MENT/zBDU/8wQ1P/3mASAh/QwAAAAAAAAAAAAAAAAAAAAA/eYBIB4gIP0M8wQ1P/MENT/zBDU/8wQ1P/3mAf3lASIdIB395AEiHf0MAAAAAAAAAAAAAAAAAAAAAP3mAf3lAf3kAf3kAf0MAAAAAAAAAAAAAAAAAAAAAP3kASIe/R8DOAIAIAwgHv0fAjgCACAGIB79HwE4AgAgACAe/R8AOAIAIBcgIiAd/QzzBDU/8wQ1P/MENT/zBDU//eYBIh8gI/0MAAAAAAAAAAAAAAAAAAAAAP3mASIeICH9DPMENT/zBDU/8wQ1P/MENT/95gEiHf3lAf3kAf3kAf0MAAAAAAAAAAAAAAAAAAAAAP3kASIh/R8DOAIAIBggIf0fAjgCACAZICH9HwE4AgAgGiAh/R8AOAIAIBMgICAdIB8gHv3lAf3kAf3kAf0MAAAAAAAAAAAAAAAAAAAAAP3kASId/R8DOAIAIBQgHf0fAjgCACAVIB39HwE4AgAgFiAd/R8AOAIAIABBMGohACACQQRrIgINAAsgAyARRg0BCyALIA1qIQMDQCABQQRqIgIqAgAiLkPzBDU/lCABKgIAIixDAAAAAJQiJ5MiJiAmkiIoQ/MENT+UISogJyABQQhqIgAqAgAiJ0PzBDU/lJMiJiAmkiIpQ/MENT+UISsgACAnICogKyAnQwAAAACUIC5DAAAAAJSTIiYgJpIiJ0MAAAAAlCImk5KSQwAAAACSOAIAIAIgLiArICYgKpOSkkMAAAAAkjgCACABICwgJ0PzBDU/lCAoQwAAAACUIClDAAAAAJSTkpJDAAAAAJI4AgAgAyABQQxqIgFHDQALCyAHQQNsIg0gCkkNAiANIBJLDQMgHCAKQQxsaiILIQECQCAbQSRPBEAgASARQfz///8DcSIDQQxsaiEBIAshACADIQIDQCAAQSxqIhMgAEEgaiIUIABBFGoiFSAAQQhqIhb9XAIA/VYCAAH9VgIAAv1WAgADIiP9DAAAAAAAAAAAAAAAAAAAAAD95gEiHiAAQShqIhcgAEEcaiIYIABBEGoiGSAAQQRqIhr9XAIA/VYCAAH9VgIAAv1WAgADIiT9DPMENT/zBDU/8wQ1P/MENT/95gH95QEiHSAd/eQBIiH9DPMENT/zBDU/8wQ1P/MENT/95gEhJSAk/QwAAAAAAAAAAAAAAAAAAAAA/eYBIABBJGoiCSAAQRhqIgwgAEEMaiIGIAD9XAIA/VYCAAH9VgIAAv1WAgADIiD9DAAAAAAAAAAAAAAAAAAAAAD95gH95QEiHSAd/eQBIh/9DAAAAAAAAAAAAAAAAAAAAAD95gEhIiAJICAgJSAiICD9DPMENT/zBDU/8wQ1P/MENT/95gEgHv3lASIdIB395AEiHv0M8wQ1P/MENT/zBDU/8wQ1P/3mASId/eUB/eQB/eQB/QwAAAAAAAAAAAAAAAAAAAAA/eQBIiD9HwM4AgAgDCAg/R8COAIAIAYgIP0fATgCACAAICD9HwA4AgAgFyAkIB0gJSAi/eUB/eQB/eQB/QwAAAAAAAAAAAAAAAAAAAAA/eQBIh39HwM4AgAgGCAd/R8COAIAIBkgHf0fATgCACAaIB39HwA4AgAgEyAjIB/9DPMENT/zBDU/8wQ1P/MENT/95gEgHv0MAAAAAAAAAAAAAAAAAAAAAP3mASAh/QwAAAAAAAAAAAAAAAAAAAAA/eYB/eUB/eQB/eQB/QwAAAAAAAAAAAAAAAAAAAAA/eQBIh39HwM4AgAgFCAd/R8COAIAIBUgHf0fATgCACAWIB39HwA4AgAgAEEwaiEAIAJBBGsiAg0ACyADIBFGDQELIAsgB0EMbGohAwNAIAFBBGoiAioCACIqQwAAAACUIAEqAgAiK0MAAAAAlJMiJiAmkiEsICtD8wQ1P5QgAUEIaiIAKgIAIilDAAAAAJQiJ5MiJiAmkiEoIAAgKSAsQ/MENT+UIChDAAAAAJQgJyAqQ/MENT+UkyImICaSIiZDAAAAAJSTkpJDAAAAAJI4AgAgAiAqIChD8wQ1P5QiKSAmQ/MENT+UIicgLEMAAAAAlCImk5KSQwAAAACSOAIAIAEgKyAnICYgKZOSkkMAAAAAkjgCACADIAFBDGoiAUcNAAsLIAdBAWsiAQ0EQQAhASAEKAIoIQZBAiEKQQAhAEECDAULIAcgCkH4+MMAEPEOAAsgCiASQfj4wwAQ8A4ACyAKIA1BiPnDABDxDgALIA0gEkGI+cMAEPAOAAsgBEEkakEAIAFBBEEIENgGIAGtITAgBCgCKCEGIAQoAiwhAAJAIAFBAk8EQCAGIABBA3RqIQIgACAwQv7///8PgyIvp2ohAP0MAAAAAAAAAAABAAAAAAAAACEdIC8hMQNAIAIgHUEg/csBIB39zgH9DAAAAAABAAAAAAAAAAEAAAD9zgH9CwIAIAJBEGohAiAd/QwCAAAAAAAAAAIAAAAAAAAA/c4BIR0gMUICfSIxQgBSDQALIC8gMFENAQsgACAHaiAvp0F/c2ohAiAwIC99ITAgBiAAQQN0aiEAIC9CgYCAgBB+QoCAgIAQfCExA0AgACAxNwIAIABBCGohACAxQoGAgIAQfCExIDBCAX0iMEIAUg0ACyACIQALIA1BAWsLIQMgBCAANgIsIAQoAiQgAEYEfyAEQSRqQZiAxAAQtAggBCgCKAUgBgsgAEEDdGoiAkEANgIEIAIgATYCACAEIABBAWoiATYCLCAKQQFrIgsgB2siAEEAIAAgC00bIgAgBCgCJCABa0sEQCAEQSRqIAEgAEEEQQgQ2AYgBCgCLCEBCyAEKAIoIQYCQCAHIAtPDQAgC60iMyAHrSIvfSIyQgJaBEAgBiABQQN0aiEAIC/9Ev0MAAAAAAAAAAABAAAAAAAAAP3OASEdIDJCfoMiMCAvfCEvIAEgMKdqIQEgMCExA0AgACAdQSD9ywEgHf3OAf0MAAAAAAEAAAAAAAAAAQAAAP3OAf0LAgAgAEEQaiEAIB39DAIAAAAAAAAAAgAAAAAAAAD9zgEhHSAxQgJ9IjFCAFINAAsgMCAyUQ0BCyABIApqIC+nQX9zaiECIDMgL30hMCAGIAFBA3RqIQAgL0KBgICAEH5CgICAgBB8ITEDQCAAIDE3AgAgAEEIaiEAIDFCgYCAgBB8ITEgMEIBfSIwQgBSDQALIAIhAQsgBCABNgIsIAEgBCgCJCIARgRAIARBJGpBmIDEABC0CCAEKAIoIQYgBCgCJCEACyAGIAFBA3RqIgIgBzYCBCACIAs2AgAgBCABQQFqIgE2AiwgACABayADIAprIgBBACAAIANNGyIASQRAIARBJGogASAAQQRBCBDYBiAEKAIoIQYgBCgCLCEBCwJAIAMgCk0NACADrSIzIAqtIi99IjJCAloEQCAGIAFBA3RqIQAgL/0S/QwAAAAAAAAAAAEAAAAAAAAA/c4BIR0gMkJ+gyIwIC98IS8gASAwp2ohASAwITEDQCAAIB1BIP3LASAd/c4B/QwAAAAAAQAAAAAAAAABAAAA/c4B/QsCACAAQRBqIQAgHf0MAgAAAAAAAAACAAAAAAAAAP3OASEdIDFCAn0iMUIAUg0ACyAwIDJRDQELIDMgL30hMCABIANqIC+nayECIAYgAUEDdGohACAvQoGAgIAQfkKAgICAEHwhMQNAIAAgMTcCACAAQQhqIQAgMUKBgICAEHwhMSAwQgF9IjBCAFINAAsgAiEBCyAEIAE2AiwgBCgCJCABRgR/IARBJGpBmIDEABC0CCAEKAIoBSAGCyABQQN0aiIAIAo2AgQgACADNgIAIARBEGoiBiABQQFqNgIAIAQgBCkCJDcDCCAEKAIcIQEgBCgCGCELAkAgBCgCICIMRQ0AIC0gLZIhJiABIQAgDEEMbCIDQQxrIgJBDG5BAXFFBEAgACAmIAAqAgCUOAIAIAAgJiAAKgIElDgCBCAAICYgACoCCJQ4AgggAEEMaiEACyACQQxJDQAgASADaiEDA0AgACAmIAAqAgCUOAIAIABBBGoiAiAmIAIqAgCUOAIAIABBCGoiAiAmIAIqAgCUOAIAIABBDGoiAiAmIAIqAgCUOAIAIABBEGoiAiAmIAIqAgCUOAIAIABBFGoiAiAmIAIqAgCUOAIAIAMgAEEYaiIARw0ACwsgDyAMNgIIIA8gATYCBCAPIAs2AgAgDyAEKQMINwIMIA9BFGogBigCADYCACAEQTBqJAAgBUE4aiAFQQhqQbzcwQAgDxD+AQJAIAUoAjgiAEGAgICAeEYNACAABEAgBSgCPCAAQQxsQQQQ6A4LIAUoAkQiAEUNACAFKAJIIABBA3RBBBDoDgsgBUKAgID4g4CAgD83AiwgBUHQAGohDCMAQSBrIgkkACAFQSxqIgAqAgQhJyAAKgIAISYCQEEYQQQQkQ4iAARAIABCgICA+AM3AhAgAP0MAAAAvwAAAL8AAAAAAAAAAP0LAgAgCUECNgIQIAkgADYCDCAJQQI2AgggCUEANgIcIAlCgICAgMAANwIUQQFByPnDAEEBIAcgCUEIaiAJQRRqEI4BIAkoAgwhACAJKAIIIQsCQCAJKAIQIgZFDQAgJiAmkiEmICcgJ5IhJyAAIQEgBkEMbCIDQQxrIgJBDG5BAXFFBEAgACAnIAAqAgCUOAIAIAAgJiAAKgIElDgCBCAAICcgACoCCJQ4AgggAEEMaiEBCyACQQxJDQAgACADaiEDA0AgASAnIAEqAgCUOAIAIAFBBGoiAiAmIAIqAgCUOAIAIAFBCGoiAiAnIAIqAgCUOAIAIAFBDGoiAiAnIAIqAgCUOAIAIAFBEGoiAiAmIAIqAgCUOAIAIAFBFGoiAiAnIAIqAgCUOAIAIAMgAUEYaiIBRw0ACwsgDCAGNgIIIAwgADYCBCAMIAs2AgAgDCAJKQIUNwIMIAxBFGogCUEcaigCADYCACAJQSBqJAAMAQtBBEEYQfjKxAAoAgAiAEHMCCAAGxEAAAALIAVBOGogBUEIakHAt8IAIAwQ/gECQCAFKAI4IgBBgICAgHhGDQAgAARAIAUoAjwgAEEMbEEEEOgOCyAFKAJEIgBFDQAgBSgCSCAAQQN0QQQQ6A4LIAVDAAAAPzgCBCAFQwAAAD84AgAgBSAFKQMANwIsIAVB0ABqIgAgBUEsaiAHEPEEIAVBOGogBUEIakHQt8IAIAAQ/gECQCAFKAI4IgBBgICAgHhGDQAgAARAIAUoAjwgAEEMbEEEEOgOCyAFKAJEIgBFDQAgBSgCSCAAQQN0QQQQ6A4LIBAgBf0AAwj9CwMAIBBBEGogBUEYav0AAwD9CwMAIBBBIGogCEHgAfwKAAAgEEEPNgKAAiAFQfAAaiQAIAhB4AFqJAAgDkIENwOgAiAOQgA3A5gCIA5CgICAgMAANwOQAiAOQbACaiAQQaAC/AoAAEGwAkEIEJEOIgAEQCAAQQA2AgggAEKBgICAEDcDACAAQQxqIA5BrAJqQaQC/AoAACAOQdAEaiQAIABBCGoPC0EIQbACQfjKxAAoAgAiAEHMCCAAGxEAAAALjgECAX8DfSMAQTBrIgUkACAFQQxqIAEgAiADEFECQCAEIAIqAgAgBSoCDCIEkyIGIAaUIAIqAgQgBSoCECIGkyIHIAeUkiACKgIIIAUqAhQiB5MiCCAIlJKRXUUEQCAAIAUoAhg2AgwgACAHOAIIIAAgBjgCBCAAIAQ4AgAMAQsgAEECOgAMCyAFQTBqJAALhQECAX8GfSMAQTBrIgMkACADQQxqIAAgASACEFEgAy0AGCEAIAMqAhQhBCADKgIMIQUgAyoCECEGIAEqAgQhByABKgIAIQggASoCCCEJIANBMGokACAFIAiTIgUgBZQgBiAHkyIFIAWUkiAEIAmTIgQgBJSSkSIEIASMIAQgAEEBcRsgAhsLhgECAX8GfSMAQSBrIgMkACADQQxqIAAgASACEJ0BIAMtABwhACADKgIYIQQgAyoCECEFIAMqAhQhBiABKgIEIQcgASoCACEIIAEqAgghCSADQSBqJAAgBSAIkyIFIAWUIAYgB5MiBSAFlJIgBCAJkyIEIASUkpEiBCAEjCAEIABBAXEbIAIbC4IBAQF/IAAoAgAiAQRAIAAoAgQgAUEGdEHAABDoDgsgACgCDCIBBEAgACgCECABQQJ0QQQQ6A4LIAAoAhgiAQRAIAAoAhwgAUEDdEEEEOgOCyAAQUBrEKwJIAAoAiwiAQRAIAAoAiggAUEUbEEbakF4cSIAayAAIAFqQQlqQQgQ6A4LC4AHAgd/AX4jAEEgayIFJAAgBSABNgIQIAUgADYCDCAFIAE2AgggBSADNgIcIAUgAjYCGCAFIAM2AhQgBUEUaiEIQQAhAiMAQUBqIgAkACAFQQhqIgkoAgQhCiAJKAIIIgEEQCABQQNuIAFBA3BBAEdqIQQLIAStQgx+IgunIQMCQAJAAkACQAJAIAtCIIinDQAgA0H8////B0sNAAJAIANFBEBBBCEGQQAhBAwBC0EEIQcgA0EEEJEOIgZFDQELIABBADYCJCAAIAY2AiAgACAENgIcIAEEQEEAIQMgBCABQQNuIgQgASAEQQNsR2oiBEkEQCAAQRxqQQAgBEEEQQwQ1gYgACgCICEGIAAoAiQhAgsgBiACQQxsaiEGA0AgAUECTQ0DIAMgBmoiBCADIApqIgcqAgA4AgAgBEEEaiAHQQRqKQIANwIAIANBDGohAyACQQFqIQIgAUEDayIBDQALCyAAQRhqIAI2AgAgACAAKQIcNwMQIAgoAggiASABQQF2ayIGQQN0IQNBACECIAZB/////wFLDQIgA0H8////B0sNAiAIKAIEIQcCQCADRQRAQQQhBEEAIQYMAQtBBCECIANBBBCRDiIERQ0DCwJAAkAgAQRAQQAhA0EAIQIDQCABQQFGDQcgAyAEaiADIAdqKQIANwIAIANBCGohAyACQQFqIQIgAUECayIBDQALIAINAQsgAEGAgICAeDYCKCAAIABBEGogAEEoahCmCiAAKAIEIQMgACgCACEBIAZFDQEgBCAGQQN0QQQQ6A4MAQsgACACNgIwIAAgBDYCLCAAIAY2AiggAEEIaiAAQRBqIABBKGoQpgogACgCDCEDIAAoAgghAQsgCCgCACICBEAgByACQQJ0QQQQ6A4LIAkoAgAiAgRAIAogAkECdEEEEOgOCyAFIAE2AgAgBSADNgIEIABBQGskAAwECyAHIANB6LrBABDXDQALIABBADYCOCAAQQE2AiwgAEHYv8EANgIoIABCBDcCMCAAQShqQeC/wQAQuQ0ACyACIANB6LrBABDXDQALQQFBAUGA1sEAEIULAAsgBSgCBCEBIAUoAgAhAkEUQQQQkQ4iAEUEQEEEQRRB+MrEACgCACIAQcwIIAAbEQAAAAsgACACNgIMIABBADYCCCAAQoGAgIAQNwIAIAAgATYCECAFQSBqJAAgAEEIaguqBgIKfwF+IwBBIGsiBSQAIAUgATYCHCAFIAA2AhggBSABNgIUIAVBCGohCSMAQTBrIgAkACAFQRRqIgooAgQhCyAKKAIIIgEEQCABQQNuIAFBA3BBAEdqIQMLIAOtQgx+IgynIQgCQAJAAkAgDEIgiKcNACAIQfz///8HSw0AAkAgCEUEQEEEIQRBACEDDAELQQQhAiAIQQQQkQ4iBEUNAQsgAEEANgIUIAAgBDYCECAAIAM2AgwgAQRAIAEgAUEDbiICQQNsRyACaiICIANLBEAgAEEMakEAIAJBBEEMENYGIAAoAhQhBiAAKAIQIQQLIAQgBkEMbGohAgNAIAFBAk0NAyACIAdqIgMgByALaiIEKgIAOAIAIANBBGogBEEEaikCADcCACAHQQxqIQcgBkEBaiEGIAFBA2siAQ0ACyAAKAIQIQQgACgCDCEDCyMAQZABayIBJAAgAUHsAGogBCAGECICQAJAIAEoAmwiAkGAgICAeEcEQCABIAEpAnA3AogBIAEgAjYChAEgASgCeCECIAFBDGogAUGEAWogASgCfCIGIAEoAoABED4gAgRAIAYgAkEMbEEEEOgOC0EAIQIgASgCDEGAgICAeEYNAkHoAEEEEJEOIgJFDQEgAkKBgICAEDcCACACQQhqIAFBDGpB4AD8CgAADAILQQAhAgwBC0EEQegAQfjKxAAoAgAiAEHMCCAAGxEAAAALIABBmKLDADYCBCAAIAI2AgAgAUGQAWokACAAKAIEIQEgACgCACECIAMEQCAEIANBDGxBBBDoDgsgCigCACIDBEAgCyADQQJ0QQQQ6A4LIAkgAjYCACAJIAE2AgQgAEEwaiQADAILIAIgCEHousEAENcNAAsgAEEANgIoIABBATYCHCAAQdi/wQA2AhggAEIENwIgIABBGGpB4L/BABC5DQALAkAgBSgCCCIBBH8gBSgCDCECQRRBBBCRDiIARQ0BIAAgAjYCECAAIAE2AgwgAEEANgIIIABCgYCAgBA3AgAgAEEIagVBAAshACAFQSBqJAAgAA8LQQRBFEH4ysQAKAIAIgBBzAggABsRAAAAC7UBAwJ7A30BfwJAIAH9AAIAIgMgAv0AAgAiBCADIAT9DQABAgMEBQYHCAkKCxwdHh8gBCAD/Q0AAQIDBAUGBwgJCgscHR4f/Ub9UiID/R8AIAP9HwNeDQAgASoCECIGIAIqAhAiBSAFIAZgGyIGIAP9HwFdDQAgASoCFCIFIAIqAhQiByAFIAdfGyIFIAP9HwJdDQAgACAFOAIYIAAgBjgCFCAAIAP9CwIEQQEhCAsgACAINgIAC4sBAQN9IwBBIGsiAyQAIANBBGogASACENoDAkAgBCACKgIAIAMqAgQiBJMiBSAFlCACKgIEIAMqAggiBZMiBiAGlJIgAioCCCADKgIMIgaTIgcgB5SSkV1FBEAgACADKAIQNgIMIAAgBjgCCCAAIAU4AgQgACAEOAIADAELIABBAjoADAsgA0EgaiQAC4QBAgF/Bn0jAEEgayIDJAAgA0EEaiAAIAEQ2gMgAy0AECEAIAMqAgwhBCADKgIEIQUgAyoCCCEGIAEqAgQhByABKgIAIQggASoCCCEJIANBIGokACAFIAiTIgUgBZQgBiAHkyIFIAWUkiAEIAmTIgQgBJSSkSIEIASMIAQgAEEBcRsgAhsLjAEBBH0gASoCBCIGIAIqAgSMlCACKgIAIAEqAgAiB5STIAIqAgggASoCCCIIlJMhBQJ/AkAgBEUNACAFQwAAAABeRQ0AQwAAAAAhBUEBDAELIAUgByACKgIMlCAGIAIqAhCUkiAIIAIqAhSUkpUiBUMAAAAAYCADIAVgcQshAiAAIAU4AgQgACACNgIAC5kBAQN/IAAtAAghAQJAIAAoAgAiA0UEQCABIQIMAQtBASECAkAgAUEBcUUEQCADQQFHDQEgAC0ACUUNASAAKAIEIgEtAApBgAFxDQEgASgCAEHQscQAQQEgASgCBCgCDBEFAEUNAQsgAEEBOgAIDAELIAAgACgCBCIAKAIAQaOuxABBASAAKAIEKAIMEQUAIgI6AAgLIAJBAXELggECBn0BfyMAQRBrIgkkACAJIAAgASACEC4gASoCBCEDIAkqAgQhBSABKgIAIQQgCSoCACEGIAEqAgghByAJKgIIIQggCS0ADCEAIAlBEGokACAGIASTIgQgBJQgBSADkyIDIAOUkiAIIAeTIgMgA5SSkSIDIAOMIAMgAEEBcRsgAhsLgwECBn0BfyMAQRBrIgkkACAJIAAgAUEAEMECIAEqAgQhAyAJKgIEIQUgASoCACEEIAkqAgAhBiABKgIIIQcgCSoCCCEIIAktAAwhACAJQRBqJAAgBiAEkyIEIASUIAUgA5MiAyADlJIgCCAHkyIDIAOUkpEiAyADjCADIABBAXEbIAIbC4MBAgZ9AX8jAEEQayIJJAAgCSAAIAEgAhCJASABKgIEIQMgCSoCBCEFIAEqAgAhBCAJKgIAIQYgASoCCCEHIAkqAgghCCAJLQAMIQAgCUEQaiQAIAYgBJMiBCAElCAFIAOTIgMgA5SSIAggB5MiAyADlJKRIgMgA4wgAyAAQQFxGyACGwuDAQIGfQF/IwBBEGsiCSQAIAkgACABIAIQ/wIgASoCBCEDIAkqAgQhBSABKgIAIQQgCSoCACEGIAEqAgghByAJKgIIIQggCS0ADCEAIAlBEGokACAGIASTIgQgBJQgBSADkyIDIAOUkiAIIAeTIgMgA5SSkSIDIAOMIAMgAEEBcRsgAhsLgwECBn0BfyMAQRBrIgkkACAJIAAgASACEI8BIAEqAgQhAyAJKgIEIQUgASoCACEEIAkqAgAhBiABKgIIIQcgCSoCCCEIIAktAAwhACAJQRBqJAAgBiAEkyIEIASUIAUgA5MiAyADlJIgCCAHkyIDIAOUkpEiAyADjCADIABBAXEbIAIbC4MBAgZ9AX8jAEEQayIJJAAgCSAAIAEgAhCkASABKgIEIQMgCSoCBCEFIAEqAgAhBCAJKgIAIQYgASoCCCEHIAkqAgghCCAJLQAMIQAgCUEQaiQAIAYgBJMiBCAElCAFIAOTIgMgA5SSIAggB5MiAyADlJKRIgMgA4wgAyAAQQFxGyACGwuCAQIGfQF/IwBBEGsiCSQAIAkgACABIAIQKSABKgIEIQMgCSoCBCEFIAEqAgAhBCAJKgIAIQYgASoCCCEHIAkqAgghCCAJLQAMIQAgCUEQaiQAIAYgBJMiBCAElCAFIAOTIgMgA5SSIAggB5MiAyADlJKRIgMgA4wgAyAAQQFxGyACGwuDAQIGfQF/IwBBEGsiCSQAIAkgACABIAIQ/AMgASoCBCEDIAkqAgQhBSABKgIAIQQgCSoCACEGIAEqAgghByAJKgIIIQggCS0ADCEAIAlBEGokACAGIASTIgQgBJQgBSADkyIDIAOUkiAIIAeTIgMgA5SSkSIDIAOMIAMgAEEBcRsgAhsLggECBn0BfyMAQRBrIgkkACAJIAAgASACEC8gASoCBCEDIAkqAgQhBSABKgIAIQQgCSoCACEGIAEqAgghByAJKgIIIQggCS0ADCEAIAlBEGokACAGIASTIgQgBJQgBSADkyIDIAOUkiAIIAeTIgMgA5SSkSIDIAOMIAMgAEEBcRsgAhsLggECBn0BfyMAQRBrIgkkACAJIAAgASACECwgASoCBCEDIAkqAgQhBSABKgIAIQQgCSoCACEGIAEqAgghByAJKgIIIQggCS0ADCEAIAlBEGokACAGIASTIgQgBJQgBSADkyIDIAOUkiAIIAeTIgMgA5SSkSIDIAOMIAMgAEEBcRsgAhsLggECBn0BfyMAQRBrIgkkACAJIAAgASACECggASoCBCEDIAkqAgQhBSABKgIAIQQgCSoCACEGIAEqAgghByAJKgIIIQggCS0ADCEAIAlBEGokACAGIASTIgQgBJQgBSADkyIDIAOUkiAIIAeTIgMgA5SSkSIDIAOMIAMgAEEBcRsgAhsLmwEBAX8jAEGgAmsiAyQAIANB4ABqIgQgARDyASADIAQgAhClAQJAAkAgAygCAEGAgICAeEcEQCADQcABaiADQeAA/AoAAEHgAEEEEJEOIgENAUEEQeAAQfjKxAAoAgAiAEHMCCAAGxEAAAALQQAhAQwBCyABIANBwAFqQeAA/AoAAAsgAEGYosMANgIEIAAgATYCACADQaACaiQAC7EBAwF/AX0CeyMAQTBrIgMkACADIAIgASgCBCABKAIIENADIAEqAmAiBEMAAAAAYEUEQCADQQA2AiggA0EBNgIcIANB6ODCADYCGCADQgQ3AiAgA0EYakHw4MIAELkNAAsgACADKgIEIASTOAIEIAAgAyoCACAEkzgCACAAIAP9AAIIIgUgBP0TIgb95QEgBSAG/eQB/Q0AAQIDFBUWFxgZGhscHR4f/QsCCCADQTBqJAALgQEBAX8gACgCACIBBEAgACgCBCABQQN0QQQQ6A4LIAAoAgwiAQRAIAAoAhAgAUECdEEEEOgOCyAAKAIYIgEEQCAAKAIcIAFBAnRBBBDoDgsgACgCJCIBBEAgACgCKCABQQN0QQQQ6A4LIAAoAjAiAQRAIAAoAjQgAUEDdEEEEOgOCwuOAQIFfwF9AkACQAJAIAAEQCAAQQhrIgMoAgAiBEEBaiECIAMgAjYCACACRQ0BIAAoAgAiAkF/Rg0CIAAgAkEBajYCACAAKAIEIgUoAmAiBiABTQ0DIAUoAlwgAUEGdGoqAhAhByAAIAI2AgAgAyAENgIAIAcPCxCDDwsACxCEDwALIAEgBkHQ1cEAEIULAAuOAQIFfwF9AkACQAJAIAAEQCAAQQhrIgMoAgAiBEEBaiECIAMgAjYCACACRQ0BIAAoAgAiAkF/Rg0CIAAgAkEBajYCACAAKAIEIgUoAmAiBiABTQ0DIAUoAlwgAUEGdGoqAhQhByAAIAI2AgAgAyAENgIAIAcPCxCDDwsACxCEDwALIAEgBkHg1cEAEIULAAuLAQECfyABIAKncSIDIABqKQAAQoCBgoSIkKDAgH+DIgJQBEBBCCEEA0AgAyAEaiEDIARBCGohBCABIANxIgMgAGopAABCgIGChIiQoMCAf4MiAlANAAsLIAJ6p0EDdiADaiABcSIBIABqLAAAQQBOBH8gACkDAEKAgYKEiJCgwIB/g3qnQQN2BSABCwuAAQEBfwJAAkAgASAAKAJMTw0AIAAoAkggAUEMbGoiASgCAEEBRw0AIAEoAgQgAkcNACAAKAIoIAEoAggiAUGAA2xqIgJBACABIAAoAixJIgEbIQMgAQ0BCyADDwsgACADKALAAiADKALEAhDbAyAAIAMoAsgCIAMoAswCENsDIAILggEBAX8gACgCACIBBEAgACgCBCABQQZ0QcAAEOgOCyAAKAIMIgEEQCAAKAIQIAFBAnRBBBDoDgsgACgCGCIBBEAgACgCHCABQQN0QQQQ6A4LIAAoAigiAQRAIAAoAiwgAUEMbEEEEOgOCyAAKAI0IgEEQCAAKAI4IAFBA3RBBBDoDgsLswEDAX8CfQJ7IwBBQGoiBCQAIAQgAiABKAIEIgIgASgCCCIBENADIARBIGogAyACIAEQ0AMgACAEKgIUIgUgBCoCNCIGIAUgBmAbOAIUIAAgBCoCECIFIAQqAjAiBiAFIAZgGzgCECAAIAT9AAQAIgcgBP0ABCAiCCAHIAj9DQABAgMEBQYHCAkKCxwdHh8gCCAH/Q0AAQIDBAUGBwgJCgscHR4f/UX9Uv0LAgAgBEFAayQAC4cBAgF/AX4CQAJAIAEgA1QNACABIAN9IQMgAiAESQR/IANQDQEgA0IBfSEDIAJBgJTr3ANqBSACCyAEayIFQYCU69wDSQRAIAMhBgwBCyADQn9RDQEgBUGAlOvcA2shBSADQgF8IQYLIAAgBTYCCCAAIAY3AwAPC0HkiMQAQRlBgInEABDRCwALfQEDfyAAKAIAIQEgACgCBCICKAIIIQAgAigCACIDBEAgASAAQQFrQXhxakEIaiADEQYACwJAIAFBf0YNACABIAEoAgQiA0EBazYCBCADQQFHDQBBBCAAIABBBE0bIgAgAigCBGpBB2pBACAAa3EiAkUNACABIAIgABDoDgsLgAEBA38gACgCACIFIAJqIgQtAAAhBiAEIAGnQRl2IgQ6AAAgBSAAKAIEIAJBCGtxakEIaiAEOgAAIAAgACgCDEEBajYCDCAAIAAoAgggBkEBcWs2AgggBSACQWxsaiIAQRRrIgIgA/0AAgD9CwIAIAJBEGogA0EQaigCADYCACAAC34BA38gACgCACIFIAJqIgQtAAAhBiAEIAGnQRl2IgQ6AAAgBSAAKAIEIAJBCGtxakEIaiAEOgAAIAAgACgCDEEBajYCDCAAIAAoAgggBkEBcWs2AgggBSACQXRsaiIAQQxrIgIgAykCADcCACACQQhqIANBCGooAgA2AgAgAAuAAQEDfyAAKAIAIgUgAmoiBC0AACEGIAQgAadBGXYiBDoAACAFIAAoAgQgAkEIa3FqQQhqIAQ6AAAgACAAKAIMQQFqNgIMIAAgACgCCCAGQQFxazYCCCAFIAJBaGxqIgBBGGsiAiADKQIANwIAIAJBCGogA0EIav0AAgD9CwIAIAALkAEBAX8CQAJAIAAqAnAgASoCAFwNACAAKgJ0IAEqAgRcDQAgACoCeCABKgIIWw0BCyAALQDlAkEBa0H/AXFBAU0NACAAQfAAaiIDIAEpAgA3AgAgA0EIaiABQQhqKAIANgIAIAJFDQAgAC0A1AIEQCAAIAAoArwCQQRyNgK8AgsgAEEANgLQAiAAQQA6ANQCCwuSAQEBfwJAAkAgACoCfCABKgIAXA0AIAAqAoABIAEqAgRcDQAgACoChAEgASoCCFsNAQsgAC0A5QJBAWtB/wFxQQFNDQAgAEH8AGoiAyABKQIANwIAIANBCGogAUEIaigCADYCACACRQ0AIAAtANQCBEAgACAAKAK8AkEEcjYCvAILIABBADYC0AIgAEEAOgDUAgsLwwEDA38DfgF7IwBB0ABrIgIkACABKAIQIgMoAgghBCABKQIIIQUgAykCACEGIAEpAgAhByAA/QACACEIIAIgACkCEDcCRCACIAj9CwI0IAIgBzcCLCACQQQ2AiggAiAGNwIgIAJBADYCHCACIAU3AhQgAkEANgIQIAIgBDYCDCACQQE2AghB0MrEACgCAEGUhsQAQfDKxAAoAgBBAkYiABsgAkEIakHUysQAKAIAQfyFxAAgABsoAhARAAAgAkHQAGokAAt3AQV9IAIqAgAiBiAGlCACKgIIIgMgA5SSIgdDAAAAAFwEQCADIAeRIgSVIAEqAgQiB5QhBSAGIASVIAeUIQQLIAAgBSADIAEqAggiA5SSOAIIIAAgASoCACACKgIEIgWYIAUgA5SSOAIEIAAgBCAGIAOUkjgCAAuzAgEKfSAAIAEqAiAiByIEIAQgASoCFCIIIgIgAiABKgIIIgUiAyACIANeGyADIANcGyICIAIgBF0bIAIgAlwbOAIUIAAgASoCHCIJIgQgBCABKgIQIgoiAiACIAEqAgQiBiIDIAIgA14bIAMgA1wbIgIgAiAEXRsgAiACXBs4AhAgACABKgIYIgMgAyABKgIMIgQgBCABKgIAIgIgAiAEXRsgAiACXBsiCyADIAteGyALIAtcGzgCDCAAIAUgBSAIIAUgCF0bIAggCFwbIgUgBSAHIAUgB10bIAcgB1wbOAIIIAAgBiAGIAogBiAKXRsgCiAKXBsiBiAGIAkgBiAJXRsgCSAJXBs4AgQgACACIAIgBCACIARdGyAEIARcGyICIAIgAyACIANdGyADIANcGzgCAAt7AQN/IwBBgAFrIgQkACAAKAIAIQADQCACIARqQf8AaiAAQQ9xIgNBMHIgA0HXAGogA0EKSRs6AAAgAkEBayECIABBD0shAyAAQQR2IQAgAw0ACyABQQFB07HEAEECIAIgBGpBgAFqQQAgAmsQ2QIhACAEQYABaiQAIAALegEDfyMAQYABayIEJAAgACgCACEAA0AgAiAEakH/AGogAEEPcSIDQTByIANBN2ogA0EKSRs6AAAgAkEBayECIABBD0shAyAAQQR2IQAgAw0ACyABQQFB07HEAEECIAIgBGpBgAFqQQAgAmsQ2QIhACAEQYABaiQAIAALdgECfwJAIAEoAjggAk0NACABKAI0IAJBFGxqIgQoAgAgA0cNACAEKAIEIgIgASgCTE8NACABKAJIIAJBpAJsaiICKAIAQYCAgIB4Rg0AIAIoAqACIAQoAghHDQAgBCgCECEBIAIhBQsgACABNgIEIAAgBTYCAAuNAQEBfyMAQTBrIgMkAAJAIAACfyABKAJAQYCAgIB4RwRAIANBCGogASACQQBD//9/fxB0IAMoAhxBBEYNAiAAIAP9AAII/QsCACADKAIYDAELIANBCGogASACQQAQnQEgACAD/QACDP0LAgAgAygCCAs2AhQgAEECNgIQIANBMGokAA8LQZiZwwAQ8g4AC6oBAwF/An0CeyMAQUBqIgQkACAEIAFBQGsiASACELsDIARBIGogASADELsDIAAgBCoCFCIFIAQqAjQiBiAFIAZgGzgCFCAAIAQqAhAiBSAEKgIwIgYgBSAGYBs4AhAgACAE/QAEACIHIAT9AAQgIgggByAI/Q0AAQIDBAUGBwgJCgscHR4fIAggB/0NAAECAwQFBgcICQoLHB0eH/1F/VL9CwIAIARBQGskAAuqAQMBfwJ9AnsjAEFAaiIEJAAgBCABQTRqIgEgAhC7AyAEQSBqIAEgAxC7AyAAIAQqAhQiBSAEKgI0IgYgBSAGYBs4AhQgACAEKgIQIgUgBCoCMCIGIAUgBmAbOAIQIAAgBP0ABAAiByAE/QAEICIIIAcgCP0NAAECAwQFBgcICQoLHB0eHyAIIAf9DQABAgMEBQYHCAkKCxwdHh/9Rf1S/QsCACAEQUBrJAALiwECAX0BfyMAQSBrIgMkACABKgIMIgJDAAAAAGBFBEAgA0EANgIYIANBATYCDCADQejgwgA2AgggA0IENwIQIANBCGpBoITEABC5DQALIABBADYCCCAAQgA3AgAgACACIAEqAgAiAiAClCABKgIEIgIgApSSIAEqAggiAiAClJKRkjgCDCADQSBqJAALhwECAn8DfSMAQSBrIgUkACABQQhqIgYqAgAhByABKgIAIQggASoCBCEJIAVBHGogBigCADYCACAFIAeMOAIQIAUgCYw4AgwgBSAIjDgCCCAFIAEpAgA3AhQgBSAFQQhqIAIgAyAEEMMEIAUoAgAhASAAIAUqAgQ4AgQgACABNgIAIAVBIGokAAvUBAIGfwN7IwBBQGoiAyQAIANBDGohASMAQSBrIgIkACACQQA2AhggAkEIakEQQcAFIAJBFGoQ4gkgAigCCEEBRgRAIAIoAgwgAigCEEHAi8IAENcNAAv9DAAAAAABAAAAAgAAAAMAAAAhB0EEIQQgAigCDCIFIQADQCAAQQA2AgAgAEGQBGpBADYCACAAQeACakEANgIAIABBsAFqQQA2AgAgAEGUBGogB/0MAwAAAAMAAAADAAAAAwAAAP04Igj9DAEAAAABAAAAAQAAAAEAAAD9TiIG/VoCAAMgAEHkAmogBv1aAgACIABBtAFqIAb9WgIAASAAQQRqIAb9WgIAACAAQZgEaiAH/QwBAAAAAQAAAAEAAAABAAAA/a4B/QwAAAAAAAAAAAAAAAAAAAAAIAj9UiIG/VoCAAMgAEHoAmogBv1aAgACIABBuAFqIAb9WgIAASAAQQhqIAb9WgIAACAAQcAFaiEAIAf9DAQAAAAEAAAABAAAAAQAAAD9rgEhByAEQQRrIgQNAAsgAUIANwIUIAFBBDYCECABIAU2AgwgAUEENgIIIAFCATcCACACQSBqJAAgAUIENwIsIAFCADcCJCABQoCAgIDAADcCHEHAAEEEEJEOIgBFBEBBBEHAAEH4ysQAKAIAIgBBzAggABsRAAAACyAAQQA2AgggAEKBgICAEDcCACAAIAP9AAIM/QsCDCAAQRxqIANBHGr9AAIA/QsCACAAQSxqIANBLGr9AAIA/QsCACAAQTxqIANBPGooAgA2AgAgA0FAayQAIABBCGoLfwIEfwF9AkACQCAABEAgAEEIayIDKAIAIgRBAWohAiADIAI2AgAgAkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgAgACgCBCIFKAKEASABSwRAIAUoAoABIAFBBnRqKgIYIQYLIAAgAjYCACADIAQ2AgAgBg8LEIMPCwALEIQPAAt9AQV/AkACQCAABEAgAEEIayIEKAIAIgVBAWohAiAEIAI2AgAgAkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgAgACgCBCIGKAKEASABSwRAIAYoAoABIAFBBnRqKAIcIQMLIAAgAjYCACAEIAU2AgAgAw8LEIMPCwALEIQPAAt9AQV/AkACQCAABEAgAEEIayIEKAIAIgVBAWohAiAEIAI2AgAgAkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgAgACgCBCIGKAKEASABSwRAIAYoAoABIAFBBnRqKAIgIQMLIAAgAjYCACAEIAU2AgAgAw8LEIMPCwALEIQPAAt/AgR/AX0CQAJAIAAEQCAAQQhrIgMoAgAiBEEBaiECIAMgAjYCACACRQ0BIAAoAgAiAkF/Rg0CIAAgAkEBajYCACAAKAIEIgUoAoQBIAFLBEAgBSgCgAEgAUEGdGoqAjQhBgsgACACNgIAIAMgBDYCACAGDwsQgw8LAAsQhA8AC38CBH8BfQJAAkAgAARAIABBCGsiAygCACIEQQFqIQIgAyACNgIAIAJFDQEgACgCACICQX9GDQIgACACQQFqNgIAIAAoAgQiBSgChAEgAUsEQCAFKAKAASABQQZ0aioCJCEGCyAAIAI2AgAgAyAENgIAIAYPCxCDDwsACxCEDwALfwIEfwF9AkACQCAABEAgAEEIayIDKAIAIgRBAWohAiADIAI2AgAgAkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgAgACgCBCIFKAKEASABSwRAIAUoAoABIAFBBnRqKgIoIQYLIAAgAjYCACADIAQ2AgAgBg8LEIMPCwALEIQPAAt9AgR/AX0CQAJAIAAEQCAAQQhrIgMoAgAiBEEBaiECIAMgAjYCACACRQ0BIAAoAgAiAkF/Rg0CIAAgAkEBajYCACAAKAIEIgUoAmAgAUsEQCAFKAJcIAFBBnRqKgIMIQYLIAAgAjYCACADIAQ2AgAgBg8LEIMPCwALEIQPAAulAQEBfSAAQQA2AhggAEIANwIQIAD9DAAAAAAAAAAAAAAAAAAAgD/9CwIAIABDAAAAAEMAAIA/IAIgASoCACICIAIgAkPbD0lAlJSUQwAAgECUQwAAQECVlCIDlSADQwAAAABbGzgCHCAAQwAAAABDAACAPyACIAKUIgIgApJDAACgQJUgA5QiApUgAkMAAAAAWxsiAjgCKCAAIAI4AiQgACACOAIgC4QBAQZ9IAAgASoCFCICIAEqAggiBZJDAAAAP5Q4AgggACABKgIQIgMgASoCBCIGkkMAAAA/lDgCBCAAIAEqAgwiBCABKgIAIgeSQwAAAD+UOAIAIAAgASoCGCAEIAeTIgQgBJQgAyAGkyIDIAOUkiACIAWTIgIgApSSkUMAAAA/lJI4AgwLjQEBBH0gACABKgIAIgOLIgI4AhAgACACjDgCBCABKgIEIgJDAAAAAJRDAAAAAJQhBCAAQwAAAAAgAiADQwAAAACUIgMgAiADkyAEkl4iARs4AgwgAEMAAAAAIAKMIgUgARs4AgAgAEMAAAAAIAIgAiAEIAOTkiADXSIBGzgCFCAAQwAAAAAgBSABGzgCCAv9EwQZfw19A34BeyMAQUBqIgckACABIQsjACIBIRcgAUHAAWtBQHEiAyQAAkACQAJAAkACQAJAAkACQAJAIAIoAgAiCEGAgICAeEcEQCACKAIIIQYgAigCBCECDAELIAsoAghBAWsiBkEDdCEBQQAhCCAGQf////8BSw0BIAFB/P///wdLDQEgBkUEQEEEIQJBACEGDAELQQQhCCABQQQQkQ4iAkUNASAGrSEpQQAhCAJAIAZBAUcEQCApQv7///8BgyIrpyEI/QwAAAAAAAAAAAEAAAAAAAAAISwgAiEEICshKgNAIAQgLEEg/csBICz9zgH9DAAAAAABAAAAAAAAAAEAAAD9zgH9CwIAIARBEGohBCAs/QwCAAAAAAAAAAIAAAAAAAAA/c4BISwgKkICfSIqQgBSDQALICkgK1ENAQsgKSArfSEpIAIgCEEDdGohBCArQoGAgIAQfkKAgICAEHwhKgNAIAQgKjcCACAEQQhqIQQgKkKBgICAEHwhKiApQgF9IilCAFINAAsLIAYhCAsgA0IANwIkIANCgICAgMAANwIcIANCBDcCFCADQgA3AgwgA0KAgICAgAg3AgQgA0EANgJ8IANCEDcCPCADQgA3AjQgA0KAgICAgAg3AiwgA0IANwJ0IANCgICAgMAANwJsIANCADcCZCADQoCAgIDAADcCXCADQgQ3AlQgA0IANwJMIANCgICAgMAANwJEIAZFDQcgAiAGQQN0aiEYIANBBGoiAUEMaiEQIANBOGoiGUEAIAZBEEEgENgGIAFBGGoiGkEAIAZBBEEIENgGIAsoAgQhFCALKAIIIQ1BASERQQEhEiACIQ4DQCAOKAIAIgEgDU8NAiAOQQRqKAIAIgUgDU8NAyAUIAFBDGxqIgEqAggiHCAUIAVBDGxqIgUqAggiHSABKgIEIh5DAAAAAJQiJCABKgIAIiBDAAAAAJQiJZIiIiAckyAFKgIAIiFDAAAAAJQiJiAFKgIEIh9DAAAAAJQiJ5IiIyAdk14bISggHCAdIBwgIpIgHSAjkl4bISIgHiAfIBxDAAAAAJQiHCAlIB6TkiAmIB+TIB1DAAAAAJQiHZJeGyEjIB4gHyAcIB4gJZKSICYgH5IgHZJeGyEeICAgISAcICQgIJOSICcgIZMgHZJeGyEfICAgISAcICAgJJKSICEgJ5IgHZJeGyEcIAMoAkAiEyADKAI4RgRAIBlB0PPCABDFCAsgCUEBaiEVIAMoAjwiCiATQQV0aiIBQYGAgIB8NgIcIAEgIjgCGCABIB44AhQgASAcOAIQIAEgCTYCDCABICg4AgggASAjOAIEIAEgHzgCACADIBNBAWoiGzYCQAJAIAMoAiQiBSAJSwRAIAUhAQwBCyAJIAUiAWshBCAEIAMoAhwgAWtPBEAgGiABIARBAWpBBEEIENgGIAMoAiQhAQsgFSAFa0EDcSEPIAMoAiAhFiAEQQNPBEAgEiAFa0F8cSEMIBYgAUEDdGohBANAIARBADYCACAEQRhqQQA2AgAgBEEQakEANgIAIARBCGpBADYCACAEQSBqIQQgAUEEaiEBIAxBBGsiDA0ACwsgDwRAIAEgD2ohDyARIAVrQQNxIQwgFiABQQN0aiEEA0AgBEEANgIAIARBCGohBCAMQQFrIgwNAAsgDyEBCyADIAE2AiQLIAEgCU0NBCADKAIgIAlBA3RqIgEoAgAhBSABQgE3AgAgBUUEQCADIAMoAihBAWo2AigLIBFBAWohESASQQFqIRIgFSEJIBggDkEIaiIORw0ACyATQQFqDgMHBQQGCyAIIAFBlNDCABDXDQALIAEgDUGYncMAEIULAAsgBSANQaidwwAQhQsACyAJIAFBkITEABCFCwALIAMgCv0ABAD9CwSAASADIAr9AAQg/QsEoAEgAyAKQRBq/QAEAP0LBJABIAMgCkEwav0ABAD9CwSwASADKAIMIgUgAygCBEYEQCADQQRqQfDywgAQwwgLIAMoAgggBUEGdGoiASAD/QAEgAH9CwQAIAFBEGogA/0ABJAB/QsEACABQSBqIAP9AASgAf0LBAAgAUEwaiAD/QAEsAH9CwQAIAMgBUEBajYCDCADKAIYIgEgAygCEEYEQCAQQYDzwgAQtggLIAMoAhQgAUECdGpBADYCACADIAFBAWo2AhgCQCADKAIkIgVFDQAgAygCICIBKAIAQQFHDQAgAUEANgIEAkAgBUEBRg0AIAEoAghFDQAgAUEBNgIMDAQLQZDkwgBBD0Gg88IAENELAAtBkOTCAEEPQZDzwgAQ0QsACyADIAr9AAQA/QsEgAEgAyAKQRBq/QAEAP0LBJABIAMoAgwiBSADKAIERgRAIANBBGpBwPLCABDDCAsgAygCCCAFQQZ0aiIBIAP9AASAAf0LBAAgAf0MAAAAAAAAAAAAAAAAAAAAAP0LBCAgAUEQaiAD/QAEkAH9CwQAIAFBMGr9DAAAAAAAAAAAAAAAAAAAAAD9CwQAIAMgBUEBajYCDCADKAIYIgEgAygCEEYEQCAQQdDywgAQtggLIAMoAhQgAUECdGpBADYCACADIAFBAWo2AhgCQCADKAIkRQ0AIAMoAiAiASgCAEEBRw0AIAFBADYCBAwCC0GQ5MIAQQ9B4PLCABDRCwALIAMoAgQgAygCDCIBayAGSQRAIANBBGogASAGQcAAQcAAENgGCyADKAIQIAMoAhgiAWsgBkkEQCADQRBqIAEgBkEEQQQQ2AYLQQAhBCADQQA2AhggAygCDCIFIAMoAgRGBEAgA0EEakGw88IAEMMIIAMoAhghBAsgAygCCCAFQQZ0aiIB/QwAAAAAAAAAAAAAAAAAAAAA/QsEACABQRBq/QwAAAAAAAAAAAAAAAAAAAAA/QsEACABQSBq/QwAAAAAAAAAAAAAAAAAAAAA/QsEACABQTBq/QwAAAAAAAAAAAAAAAAAAAAA/QsEACADIAVBAWo2AgwgAygCECAERgRAIBBBwPPCABC2CAsgAygCFCAEQQJ0akEANgIAIAMgBEEBajYCGCADQQRqIgFBACAKIBsQPSABIANBLGoQ/wELIAcgA/0AAgT9CwIAIAdBIGogA0EEaiIBQSBqKQIANwIAIAdBEGogAUEQav0AAgD9CwIAIANBLGoQrAkgByAGNgI8IAcgAjYCOCAHIAg2AjQgB0EwaiALQQhqKAIANgIAIAcgCykCADcCKCAXJABByABBBBCRDiIBRQRAQQRByABB+MrEACgCACIAQcwIIAAbEQAAAAsgAUKBgICAEDcCACABIAf9AAIA/QsCCCABQRhqIAdBEGr9AAIA/QsCACABQShqIAdBIGr9AAIA/QsCACABQThqIAdBMGr9AAIA/QsCACAAQeiswwA2AgQgACABNgIAIAdBQGskAAuMAQECfyMAQSBrIgIkAAJ/IAAoAgBBgICAgHhHBEAgASgCACAAKAIEIAAoAgggASgCBCgCDBEFAAwBCyACQQhqIgNBCGogACgCDCgCACIAQQhqKQIANwMAIANBEGogAEEQaikCADcDACACIAApAgA3AwggASgCACABKAIEIAMQuAMLIQAgAkEgaiQAIAALewEBfyMAQUBqIgMkACADIAI2AhQgAyABNgIQIAMgADYCDCADQQI2AhwgA0HEu8EANgIYIANCAjcCJCADIANBEGqtQoCAgIAQhDcDOCADIANBDGqtQoCAgIAwhDcDMCADIANBMGo2AiAgA0EYahCDByEAIANBQGskACAAC4YBAgN/AXwCQAJAIAAEQCAAQQhrIgMoAgAiBEEBaiECIAMgAjYCACACRQ0BIAAoAgAiAkF/Rg0CIAAgAkEBajYCAEQAABAAAADwQSEFIAAoAgwgAUsEQCAAKAIIIAFB1AFsaioCgAG7IQULIAAgAjYCACADIAQ2AgAgBQ8LEIMPCwALEIQPAAuGAQIDfwF8AkACQCAABEAgAEEIayIDKAIAIgRBAWohAiADIAI2AgAgAkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgBEAAAQAAAA8EEhBSAAKAIMIAFLBEAgACgCCCABQdQBbGoqAoQBuyEFCyAAIAI2AgAgAyAENgIAIAUPCxCDDwsACxCEDwALhgECA38BfAJAAkAgAARAIABBCGsiAygCACIEQQFqIQIgAyACNgIAIAJFDQEgACgCACICQX9GDQIgACACQQFqNgIARAAAEAAAAPBBIQUgACgCDCABSwRAIAAoAgggAUHUAWxqKgKIAbshBQsgACACNgIAIAMgBDYCACAFDwsQgw8LAAsQhA8AC4YBAgN/AXwCQAJAIAAEQCAAQQhrIgMoAgAiBEEBaiECIAMgAjYCACACRQ0BIAAoAgAiAkF/Rg0CIAAgAkEBajYCAEQAABAAAADwQSEFIAAoAgwgAUsEQCAAKAIIIAFB1AFsaioCjAG7IQULIAAgAjYCACADIAQ2AgAgBQ8LEIMPCwALEIQPAAuGAQIDfwF8AkACQCAABEAgAEEIayIDKAIAIgRBAWohAiADIAI2AgAgAkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgBEAAAQAAAA8EEhBSAAKAIMIAFLBEAgACgCCCABQdQBbGoqApABuyEFCyAAIAI2AgAgAyAENgIAIAUPCxCDDwsACxCEDwALhgECA38BfAJAAkAgAARAIABBCGsiAygCACIEQQFqIQIgAyACNgIAIAJFDQEgACgCACICQX9GDQIgACACQQFqNgIARAAAEAAAAPBBIQUgACgCDCABSwRAIAAoAgggAUHUAWxqKgKUAbshBQsgACACNgIAIAMgBDYCACAFDwsQgw8LAAsQhA8AC4YBAgN/AXwCQAJAIAAEQCAAQQhrIgMoAgAiBEEBaiECIAMgAjYCACACRQ0BIAAoAgAiAkF/Rg0CIAAgAkEBajYCAEQAABAAAADwQSEFIAAoAgwgAUsEQCAAKAIIIAFB1AFsaioCrAG7IQULIAAgAjYCACADIAQ2AgAgBQ8LEIMPCwALEIQPAAuGAQIDfwF8AkACQCAABEAgAEEIayIDKAIAIgRBAWohAiADIAI2AgAgAkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgBEAAAQAAAA8EEhBSAAKAIMIAFLBEAgACgCCCABQdQBbGoqAsABuyEFCyAAIAI2AgAgAyAENgIAIAUPCxCDDwsACxCEDwALhgECA38BfAJAAkAgAARAIABBCGsiAygCACIEQQFqIQIgAyACNgIAIAJFDQEgACgCACICQX9GDQIgACACQQFqNgIARAAAEAAAAPBBIQUgACgCDCABSwRAIAAoAgggAUHUAWxqKgK4AbshBQsgACACNgIAIAMgBDYCACAFDwsQgw8LAAsQhA8AC4YBAgN/AXwCQAJAIAAEQCAAQQhrIgMoAgAiBEEBaiECIAMgAjYCACACRQ0BIAAoAgAiAkF/Rg0CIAAgAkEBajYCAEQAABAAAADwQSEFIAAoAgwgAUsEQCAAKAIIIAFB1AFsaioCvAG7IQULIAAgAjYCACADIAQ2AgAgBQ8LEIMPCwALEIQPAAuGAQIDfwF8AkACQCAABEAgAEEIayIDKAIAIgRBAWohAiADIAI2AgAgAkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgBEAAAQAAAA8EEhBSAAKAIMIAFLBEAgACgCCCABQdQBbGoqApgBuyEFCyAAIAI2AgAgAyAENgIAIAUPCxCDDwsACxCEDwALhgECA38BfAJAAkAgAARAIABBCGsiAygCACIEQQFqIQIgAyACNgIAIAJFDQEgACgCACICQX9GDQIgACACQQFqNgIARAAAEAAAAPBBIQUgACgCDCABSwRAIAAoAgggAUHUAWxqKgKcAbshBQsgACACNgIAIAMgBDYCACAFDwsQgw8LAAsQhA8AC4YBAgN/AXwCQAJAIAAEQCAAQQhrIgMoAgAiBEEBaiECIAMgAjYCACACRQ0BIAAoAgAiAkF/Rg0CIAAgAkEBajYCAEQAABAAAADwQSEFIAAoAgwgAUsEQCAAKAIIIAFB1AFsaioCoAG7IQULIAAgAjYCACADIAQ2AgAgBQ8LEIMPCwALEIQPAAuGAQIDfwF8AkACQCAABEAgAEEIayIDKAIAIgRBAWohAiADIAI2AgAgAkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgBEAAAQAAAA8EEhBSAAKAIMIAFLBEAgACgCCCABQdQBbGoqArABuyEFCyAAIAI2AgAgAyAENgIAIAUPCxCDDwsACxCEDwALhgECA38BfAJAAkAgAARAIABBCGsiAygCACIEQQFqIQIgAyACNgIAIAJFDQEgACgCACICQX9GDQIgACACQQFqNgIARAAAEAAAAPBBIQUgACgCDCABSwRAIAAoAgggAUHUAWxqKgK0AbshBQsgACACNgIAIAMgBDYCACAFDwsQgw8LAAsQhA8AC4YBAgN/AXwCQAJAIAAEQCAAQQhrIgMoAgAiBEEBaiECIAMgAjYCACACRQ0BIAAoAgAiAkF/Rg0CIAAgAkEBajYCAEQAABAAAADwQSEFIAAoAgwgAUsEQCAAKAIIIAFB1AFsaioCzAG7IQULIAAgAjYCACADIAQ2AgAgBQ8LEIMPCwALEIQPAAuFAQIDfwF8AkACQCAABEAgAEEIayIDKAIAIgRBAWohAiADIAI2AgAgAkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgBEAAAQAAAA8EEhBSAAKAIMIAFLBEAgACgCCCABQdQBbGoqAiS7IQULIAAgAjYCACADIAQ2AgAgBQ8LEIMPCwALEIQPAAvoBAMEfwJ8BH5B2MrEAC0AAEUEQAJAIwBBIGsiAyQAIwBBIGsiAiQAAkACQAJAAkBB4MrEAC0AAARAQeTKxAAoAgAhAQwBC0GAysQAKAIAIQFBgMrEAEEANgIAIAFFDQEgAREVACEBQeDKxAAtAAANAkHkysQAIAE2AgBB4MrEAEEBOgAACyABEAohASACQSBqJAAMAgsgAkEANgIYIAJBATYCDCACQbzNwgA2AgggAkIENwIQIAJBCGpBxM3CABC5DQALIAFBgwFLBEAgARACCyACQQA2AhggAkEBNgIMIAJB5M3CADYCCCACQgQ3AhAgAkEIakHszcIAELkNAAsgARAHIgIQCEEBRwRAIAFBhAFPBEAgARACC0HYysQALQAAIQRB2MrEAEEBOgAAQdzKxAAoAgAhAUHcysQAIAI2AgACQCAERQ0AIAFBhAFJDQAgARACCyADQSBqJAAMAQsgA0EANgIYIANBATYCDCADQbjMwgA2AgggA0IENwIQIANBCGpBwMzCABC5DQALC0HcysQAKAIAEAkiBZ0iBvwHIgpC6AeAIQkgBSAGoUQAAAAAgIQuQaIiBUT////////fPyAFpqAiBb0iB0I0iKdB/w9xIgFBsghNBHxCf0KAgICAgICAgIB/QoCAgICAgIB4IAFB/wdrrYcgAUH/B0kbIgggCEJ/hSAHg1AbIAeDvwUgBQv8ByIIQoCU69wDgCEHIAggB0KAlOvcA359pyAKIAlC6Ad+fadBwIQ9bGoiAUH/k+vcA0shAiAAIAFBgJTr3ANrIAEgAhs2AgggACACrSAHIAl8fDcDAAuOAQAjAEHwAGsiAyQAIAMgARD1ASADIAIqAgAgAyoCZJQ4AmQgAyACKgIEIAMqAmiUOAJoIAMgAioCCCADKgJslDgCbEHwAEEIEJEOIgEEQCABIANB8AD8CgAAIABBkMDDADYCBCAAIAE2AgAgA0HwAGokAA8LQQhB8ABB+MrEACgCACIAQcwIIAAbEQAAAAvDAQIDewN9IAH9AAIQIQQgAf0AAgAhBiABKgIgIQggAv1dAgAhBSACKgIIIQcgASoCJCEJQShBBBCRDiIBRQRAQQRBKEH4ysQAKAIAIgBBzAggABsRAAAACyABIAk4AiQgASAHIAiUOAIgIAEgBSAH/SACIgUgBP0NBAUGBwgJCgsAAQIDBAUGByAE/eYB/QsCECABIAUgBP0NAAECAwQFBgcICQoLAAECAyAG/eYB/QsCACAAQaDbwwA2AgQgACABNgIAC2QBBH4gAkL/////D4MiAyABQv////8PgyIEfiEFIAAgBSADIAFCIIgiBn4gBCACQiCIIgJ+IgN8IgFCIIZ8IgQ3AwAgACAEIAVUrSACIAZ+IAEgA1StQiCGIAFCIIiEfHw3AwgLfAEBfyAAKAIAIgAoAgwiAQRAIAAoAhAgAUHUAWxBBBDoDgsgACgCGCIBBEAgACgCHCABQQxsQQQQ6A4LIAAoAiQiAQRAIAAoAiggAUEMbEEEEOgOCwJAIABBf0YNACAAIAAoAgRBAWsiATYCBCABDQAgAEHEAEEEEOgOCwulAQMBfwJ9AnsjAEFAaiIEJAAgBCABIAIQsQkgBEEgaiABIAMQsQkgACAEKgIUIgUgBCoCNCIGIAUgBmAbOAIUIAAgBCoCECIFIAQqAjAiBiAFIAZgGzgCECAAIAT9AAQAIgcgBP0ABCAiCCAHIAj9DQABAgMEBQYHCAkKCxwdHh8gCCAH/Q0AAQIDBAUGBwgJCgscHR4f/UX9Uv0LAgAgBEFAayQAC6UBAwF/An0CeyMAQUBqIgQkACAEIAEgAhDIBSAEQSBqIAEgAxDIBSAAIAQqAhQiBSAEKgI0IgYgBSAGYBs4AhQgACAEKgIQIgUgBCoCMCIGIAUgBmAbOAIQIAAgBP0ABAAiByAE/QAEICIIIAcgCP0NAAECAwQFBgcICQoLHB0eHyAIIAf9DQABAgMEBQYHCAkKCxwdHh/9Rf1S/QsCACAEQUBrJAAL/AECAn8BeyMAQfAAayIFJAAgBUEMaiIEQgA3AjQgBEE/IANB/wFxIgMgA0E/Txs6ADAgBCABOAJgIAQgATgCXCAEIAE4AlggBCABOAJUIAQgATgCUCAEIAE4AkwgBEE8av0MAAAAAAAAAAAAAAAAAAAAAP0LAgAgBCAC/RMiBiAA/SAA/QsCICAEIAD9EyAC/SAD/QsCACAEIAYgAP0gAiAA/SAD/QsCEEHwAEEEEJEOIgMEQCADQQA2AgggA0KBgICAEDcCACADQQxqIARB5AD8CgAAIAVB8ABqJAAgA0EIag8LQQRB8ABB+MrEACgCACIDQcwIIAMbEQAAAAt3AQR/AkACQCAABEAgAEEIayIEKAIAIgVBAWohAiAEIAI2AgAgAkUNASAAKAIAIgJBf0YNAiAAIAJBAWo2AgAgACgCDCABSwRAIAAoAgggAUHUAWxqLQA0IQMLIAAgAjYCACAEIAU2AgAgAw8LEIMPCwALEIQPAAuIBAEGfyMAQcABayIEJAAgBEEIaiEAIwBBIGsiAyQAIANBBGohAiMAQSBrIgEkACABQQA2AhggAUEIakEEQTAgAUEUahDiCSABKAIIQQFGBEAgASgCDCABKAIQQcCLwgAQ1w0ACyABKAIMIgVBIGr9DAMAAAAAAAAAAAAAAAAAAAD9CwIAIAVBEGr9DAEAAAACAAAAAAAAAAEAAAD9CwIAIAX9DAAAAAABAAAAAQAAAAAAAAD9CwIAIAJBADYCGCACQgQ3AhAgAiAFNgIMIAJBBDYCCCACQgE3AgAgAUEgaiQAAkACQEGgAUEEEJEOIgEEQEGAHkEQEJEOIgJFDQEgAEIENwI0IABCADcCLCAAIAMpAgQ3AjwgACACNgIoIABCgICAgKABNwMgIAAgATYCHCAAQQo2AhggAEKJ2bnijtO+lwg3AxAgAEHI58EA/QADAP0LAwAgAEHEAGogA0EMav0AAgD9CwIAIABB1ABqIANBHGooAgA2AgAgA0EgaiQADAILQQRBoAFBgI3CABDXDQALQRBBgB5BkI3CABDXDQALIARB6ABqIABB2AD8CgAAQegAQQgQkQ4iAARAIABBADYCCCAAQoGAgIAQNwMAIABBDGogBEHkAGpB3AD8CgAAIARBwAFqJAAgAEEIag8LQQhB6ABB+MrEACgCACIAQcwIIAAbEQAAAAvwAgEFfyMAQcABayICJAAgAkEIaiEAIwBBIGsiASQAIAFCADcCFCABQoCAgIDAADcCDCABQQA2AhwgAUEANgIEIAFBBGpBBBDrAgJAAkBBoAFBBBCRDiIDBEBBoAFBBBCRDiIERQ0BIAAgAf0AAgT9CwI8IABCBDcCNCAAQgA3AiwgACAENgIoIABCgICAgKABNwMgIAAgAzYCHCAAQQo2AhggAEKJ2bnijtO+lwg3AxAgAEHI58EA/QADAP0LAwAgAEHUAGogAUEcaigCADYCACAAQcwAaiABQRRqKQIANwIAIAFBIGokAAwCC0EEQaABQYCNwgAQ1w0AC0EEQaABQZCNwgAQ1w0ACyACQegAaiAAQdgA/AoAAEHoAEEIEJEOIgAEQCAAQQA2AgggAEKBgICAEDcDACAAQQxqIAJB5ABqQdwA/AoAACACQcABaiQAIABBCGoPC0EIQegAQfjKxAAoAgAiAEHMCCAAGxEAAAALfAIBfwZ9IwBBIGsiBCQAIAQgASoCCCIFjDgCHCAEIAEqAgQiBow4AhggBCABKgIAIgeMOAIUIARBCGogAiAAIARBFGogAxECACAEKgIMIQggBCoCCCEJIAQqAhAhCiAEQSBqJAAgByAJlCAGIAiUkiAFIAqUkkMAAAAAXwt0AQR9IAIqAgAiBiAGlCACKgIEIgUgBZSSIAIqAggiAyADlJKRIQQgACABKgIIIAMgBJUiA5ggAyABKgIMIgOUkjgCCCAAIAEqAgQgBSAElSIFmCAFIAOUkjgCBCAAIAEqAgAgBiAElSIEmCAEIAOUkjgCAAulAQMBfwJ9AnsjAEFAaiIEJAAgBCABIAIQxwYgBEEgaiABIAMQxwYgACAEKgIUIgUgBCoCNCIGIAUgBmAbOAIUIAAgBCoCECIFIAQqAjAiBiAFIAZgGzgCECAAIAT9AAQAIgcgBP0ABCAiCCAHIAj9DQABAgMEBQYHCAkKCxwdHh8gCCAH/Q0AAQIDBAUGBwgJCgscHR4f/UX9Uv0LAgAgBEFAayQAC6UBAwF/An0CeyMAQUBqIgQkACAEIAEgAhC3BCAEQSBqIAEgAxC3BCAAIAQqAhQiBSAEKgI0IgYgBSAGYBs4AhQgACAEKgIQIgUgBCoCMCIGIAUgBmAbOAIQIAAgBP0ABAAiByAE/QAEICIIIAcgCP0NAAECAwQFBgcICQoLHB0eHyAIIAf9DQABAgMEBQYHCAkKCxwdHh/9Rf1S/QsCACAEQUBrJAALpQEDAX8CfQJ7IwBBQGoiBCQAIAQgASACEKsEIARBIGogASADEKsEIAAgBCoCFCIFIAQqAjQiBiAFIAZgGzgCFCAAIAQqAhAiBSAEKgIwIgYgBSAGYBs4AhAgACAE/QAEACIHIAT9AAQgIgggByAI/Q0AAQIDBAUGBwgJCgscHR4fIAggB/0NAAECAwQFBgcICQoLHB0eH/1F/VL9CwIAIARBQGskAAulAQMBfwJ9AnsjAEFAaiIEJAAgBCABIAIQ7gUgBEEgaiABIAMQ7gUgACAEKgIUIgUgBCoCNCIGIAUgBmAbOAIUIAAgBCoCECIFIAQqAjAiBiAFIAZgGzgCECAAIAT9AAQAIgcgBP0ABCAiCCAHIAj9DQABAgMEBQYHCAkKCxwdHh8gCCAH/Q0AAQIDBAUGBwgJCgscHR4f/UX9Uv0LAgAgBEFAayQAC6UBAwF/An0CeyMAQUBqIgQkACAEIAEgAhDvBSAEQSBqIAEgAxDvBSAAIAQqAhQiBSAEKgI0IgYgBSAGYBs4AhQgACAEKgIQIgUgBCoCMCIGIAUgBmAbOAIQIAAgBP0ABAAiByAE/QAEICIIIAcgCP0NAAECAwQFBgcICQoLHB0eHyAIIAf9DQABAgMEBQYHCAkKCxwdHh/9Rf1S/QsCACAEQUBrJAALpQEDAX8CfQJ7IwBBQGoiBCQAIAQgASACEKcEIARBIGogASADEKcEIAAgBCoCFCIFIAQqAjQiBiAFIAZgGzgCFCAAIAQqAhAiBSAEKgIwIgYgBSAGYBs4AhAgACAE/QAEACIHIAT9AAQgIgggByAI/Q0AAQIDBAUGBwgJCgscHR4fIAggB/0NAAECAwQFBgcICQoLHB0eH/1F/VL9CwIAIARBQGskAAt+AQF/IwBBQGoiBSQAIAUgATYCDCAFIAA2AgggBSADNgIUIAUgAjYCECAFQQI2AhwgBUGUscQANgIYIAVCAjcCJCAFIAVBEGqtQoCAgIDQjQGENwM4IAUgBUEIaq1CgICAgOCNAYQ3AzAgBSAFQTBqNgIgIAVBGGogBBC5DQALdwIBfQJ/IwBBIGsiAyQAIANBBGogACABENoDQQEhBAJAIAEqAgAgAyoCBJMiAiAClCABKgIEIAMqAgiTIgIgApSSIAEqAgggAyoCDJMiAiAClJIiAkMAAIAoXkUNACAAKgIYIAKRYA0AQQAhBAsgA0EgaiQAIAQLfgEGfSAAIAEqAkgiAiABKgJUIgWSQwAAAD+UOAIIIAAgASoCRCIDIAEqAlAiBpJDAAAAP5Q4AgQgACABKgJAIgQgASoCTCIHkkMAAAA/lDgCACAAIAcgBJMiBCAElCAGIAOTIgMgA5SSIAUgApMiAiAClJKRQwAAAD+UOAIMC34BBn0gACABKgI8IgIgASoCSCIFkkMAAAA/lDgCCCAAIAEqAjgiAyABKgJEIgaSQwAAAD+UOAIEIAAgASoCNCIEIAEqAkAiB5JDAAAAP5Q4AgAgACAHIASTIgQgBJQgBiADkyIDIAOUkiAFIAKTIgIgApSSkUMAAAA/lDgCDAt7AgJ/A30jAEEgayIDJAAgAEEIaiIEKgIAIQUgACoCACEGIAAqAgQhByADQRxqIAQoAgA2AgAgAyAFjDgCECADIAeMOAIMIAMgBow4AgggAyAAKQIANwIUIAMgA0EIaiABIAJBARDDBCADKAIAIQAgA0EgaiQAIABBAUYLdgIDfQN/AkACQCAABEAgAEEIayIEKAIAIgZBAWohBSAEIAU2AgAgBUUNASAAKAIAQX9GDQIgACoCDCECIAAqAgQhAyAAKgIQIQEgBCAGNgIAIAMgAUPbD8lAlCIBIAMgAZQgAiACkpKVlA8LEIMPCwALEIQPAAuqAwEEfyMAQTBrIgMkACADQQxqIQIgAEEARyEEAkACQEGAAkHAABCRDiIABEAgAEEAOgDIASAAQoGAgIAQNwPAASAAQQE6AJwBIABCBDcClAEgAEIANwKMASAAQoCAgIDAADcChAEgAEEAOgCAASAAQgA3A0AgAEIANwMAQYACQcAAEJEOIgFFDQIgAUEAOgDIASABQoGAgIAQNwPAASABQQE6AJwBIAFCBDcClAEgAUIANwKMASABQoCAgIDAADcChAEgAUEAOgCAASABQgA3A0AgAUIANwMAIAIgBDoAICACIAE2AhwgAkEBNgIYIAIgADYCFCACQQE2AhAgAiABNgIMIAJBATYCCCACIAA2AgQgAkEBNgIADAELDAELQTBBBBCRDiIARQRAQQRBMEH4ysQAKAIAIgBBzAggABsRAAAACyAAQQA2AgggAEKBgICAEDcCACAAIAP9AAIM/QsCDCAAQRxqIANBHGr9AAIA/QsCACAAQSxqIANBLGooAgA2AgAgA0EwaiQAIABBCGoPC0HAAEGAAkH4ysQAKAIAIgBBzAggABsRAAAAC5ABAQd9IAIqAgghBCACKgIEIQUgAioCACEGIAEqAgghByABKgIEIQggASoCACEJIAEqAgwhCkEQQQQQkQ4iAUUEQEEEQRBB+MrEACgCACIAQcwIIAAbEQAAAAsgASAKOAIMIAEgByAElDgCCCABIAggBZQ4AgQgASAJIAaUOAIAIABBtNjDADYCBCAAIAE2AgALgAECAX8BfSMAQSBrIgIkACABKgIIIgNDAAAAAGBFBEAgAkEANgIYIAJBATYCDCACQejgwgA2AgggAkIENwIQIAJBCGpBoITEABC5DQALIABBADYCCCAAQgA3AgAgACADIAEqAgAiAyADlCABKgIEIgMgA5SSkZI4AgwgAkEgaiQAC8oGAgd/A3sjAEHQBmsiAiQAIwBBkAFrIgAkACACQfwCaiEEIwBBIGsiAyQAIANBADYCGCADQQhqQRBBgAwgA0EUahDiCSADKAIIQQFGBEAgAygCDCADKAIQQcCLwgAQ1w0AC/0MAAAAAAEAAAACAAAAAwAAACEIQQQhBSADKAIMIgYhAQNAIAFBADYCACABQYAJakEANgIAIAFBgAZqQQA2AgAgAUGAA2pBADYCACABQYQJaiAI/QwDAAAAAwAAAAMAAAADAAAA/TgiCf0MAQAA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QQEhBEHWrcQAQdetxAAgCUEASCIAG0HWrcQAQQEgABsgChshCCAJQR92IApyIQcgBkEERwRAIAJBAzYCmAggAkHbrcQANgKUCCACQQI7AZAIIAJBkAhqDAMLQQIhBCACQQI7AZAIIAVFBEBBASEEIAJBATYCmAggAkHercQANgKUCCACQZAIagwDCyACIAU2AqAIIAJBADsBnAggAkECNgKYCCACQa2txAA2ApQIIAJBkAhqDAILQdatxABBASAJQQBIIgAbIQNB1q3EAEHXrcQAIAAbIQggCUEfdiEEIAJBkAhqIgcgAkHQCGogAkEQaiAGQQR2QRVqIgZBgIB+QQAgBWsgBcFBAEgbIgAQnwIgAMEhAAJAIAIoApAIBEAgAkHICGogB0EIaigCADYCACACIAIpApAINwPACAwBCyACQcAIaiACQdAIaiACQRBqIAYgABA5CyAIIAMgChshCCAEIApyIQcgACACLgHICCIASARAIAJBCGogAigCwAggAigCxAggACAFIAJBkAhqELUFIAIoAgwhBCACKAIIDAILQQIhBCACQQI7AZAIIAVFBEBBASEEIAJBATYCmAggAkHercQANgKUCCACQZAIagwCCyACIAU2AqAIIAJBADsBnAggAkECNgKYCCACQa2txAA2ApQIIAJBkAhqDAELIAJBAzYCmAggAkHYrcQANgKUCCACQQI7AZAIQQEhCEEAIQdBASEEIAJBkAhqCyEAIAIgBDYCzAggAiAANgLICCACIAc2AsQIIAIgCDYCwAggASACQcAIahCvAyEAIAJB8AhqJAAgAAtpAQR+IAEoAgAgAkFsbGoiAUEUaykCACAAKAIAKAIAKQMAhSIDQiCIIgQgAUEIazUCAEK307CFDIUiBX4gAUEMazUCAELdofHLDIUiBiADQv////8PgyIDfoUgAyAFfiAEIAZ+hUIgiYULbwEEfiABKAIAIAJBBHRrIgFBDGspAABCl5Kcqtu2tcI/hSIDQiCIIgUgAUEQaykAACAAKAIAKAIAKQMAQjSJhSIEQiCIIgZ+IANC/////w+DIgMgBEL/////D4MiBH6FIAMgBn4gBCAFfoVCIImFC24BB30gAEICNwIQIAAgASoCACIEIAIqAgAiBZQgASoCBCIGIAIqAgQiB5SSIAEqAggiCCACKgIIIgmUkiIDQwAAAABf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fwJ+IwBBIGsiAiQAIAJBCGogACABKAJgEQAAIAJBEGogAigCCCIAIAIoAgwoAgwRAAAgAikDGCEDIAIpAxAhBCACQSBqJAAgAEEAIARCj9iZz4j1zJ4HhSADQo34tqK32v+FyACFhFAbC2sCAX8CfiMAQSBrIgIkACACQQhqIAAgASgCYBEAACACQRBqIAIoAggiACACKAIMKAIMEQAAIAIpAxghAyACKQMQIQQgAkEgaiQAIABBACAEQuadteiA48+HMYUgA0Lw4py6utTs2yaFhFAbC2sCAX8CfiMAQSBrIgIkACACQQhqIAAgASgCZBEAACACQRBqIAIoAggiACACKAIMKAIMEQAAIAIpAxghAyACKQMQIQQgAkEgaiQAIABBACAEQuadteiA48+HMYUgA0Lw4py6utTs2yaFhFAbC20CAX8CfiMAQSBrIgIkACACQQhqIAAgASgCYBEAACACQRBqIAIoAggiACACKAIMKAIMEQAAIAIpAxghAyACKQMQIQQgAkEgaiQAIABBACAEQt6Fisa2mpP80ACFIANChcGXiNPx7PrkAIWEUBsLbQIBfwJ+IwBBIGsiAiQAIAJBCGogACABKAJgEQAAIAJBEGogAigCCCIAIAIoAgwoAgwRAAAgAikDGCEDIAIpAxAhBCACQSBqJAAgAEEAIARCr6ns6fSs26rgAIUgA0LLr+Dt64uH8Kt/hYRQGwtsAgF/An4jAEEgayICJAAgAkEIaiAAIAEoAmARAAAgAkEQaiACKAIIIgAgAigCDCgCDBEAACACKQMYIQMgAikDECEEIAJBIGokACAAQQAgBELO24DRiLeklRyFIANC5vTWnZL/juehf4WEUBsLbAIBfwJ+IwBBIGsiAiQAIAJBCGogACABKAJkEQAAIAJBEGogAigCCCIAIAIoAgwoAgwRAAAgAikDGCEDIAIpAxAhBCACQSBqJAAgAEEAIARCztuA0Yi3pJUchSADQub01p2S/47noX+FhFAbC2sCAX8CfiMAQSBrIgIkACACQQhqIAAgASgCYBEAACACQRBqIAIoAggiACACKAIMKAIMEQAAIAIpAxghAyACKQMQIQQgAkEgaiQAIABBACAEQpTFqNTN/JyWQ4UgA0L2+IbMtIfkyQKFhFAbC2wCAX8CfiMAQSBrIgIkACACQQhqIAAgASgCYBEAACACQRBqIAIoAggiACACKAIMKAIMEQAAIAIpAxghAyACKQMQIQQgAkEgaiQAIABBACAEQvD5m/utjoG5CIUgA0LtvdGXyYD42ax/hYRQGwtsAgF/An4jAEEgayICJAAgAkEIaiAAIAEoAmARAAAgAkEQaiACKAIIIgAgAigCDCgCDBEAACACKQMYIQMgAikDECEEIAJBIGokACAAQQAgBEKlotHa2tCLnot/hSADQvOasfLK6oO/aYWEUBsLbAIBfwJ+IwBBIGsiAiQAIAJBCGogACABKAJkEQAAIAJBEGogAigCCCIAIAIoAgwoAgwRAAAgAikDGCEDIAIpAxAhBCACQSBqJAAgAEEAIARCpaLR2trQi56Lf4UgA0LzmrHyyuqDv2mFhFAbC2wCAX8CfiMAQSBrIgIkACACQQhqIAAgASgCYBEAACACQRBqIAIoAggiACACKAIMKAIMEQAAIAIpAxghAyACKQMQIQQgAkEgaiQAIABBACAEQpn0sZjPtanYG4UgA0LVkvbQ162A4IZ/hYRQGwtsAgF/An4jAEEgayICJAAgAkEIaiAAIAEoAmQRAAAgAkEQaiACKAIIIgAgAigCDCgCDBEAACACKQMYIQMgAikDECEEIAJBIGokACAAQQAgBEKZ9LGYz7Wp2BuFIANC1ZL20NetgOCGf4WEUBsLawIBfwJ+IwBBIGsiAiQAIAJBCGogACABKAJgEQAAIAJBEGogAigCCCIAIAIoAgwoAgwRAAAgAikDGCEDIAIpAxAhBCACQSBqJAAgAEEAIARCgaKUz+n7kPAchSADQrzYpYDUvdj/C4WEUBsLawIBfwJ+IwBBIGsiAiQAIAJBCGogACABKAJkEQAAIAJBEGogAigCCCIAIAIoAgwoAgwRAAAgAikDGCEDIAIpAxAhBCACQSBqJAAgAEEAIARCgaKUz+n7kPAchSADQrzYpYDUvdj/C4WEUBsLbAIBfwJ+IwBBIGsiAiQAIAJBCGogACABKAJgEQAAIAJBEGogAigCCCIAIAIoAgwoAgwRAAAgAikDGCEDIAIpAxAhBCACQSBqJAAgAEEAIARChIyt1dLxiKllhSADQrT5rv3l+rL93gCFhFAbC2EBA30gACACKgIIIgMgASoCFJI4AhQgACACKgIEIgQgASoCEJI4AhAgACACKgIAIgUgASoCDJI4AgwgACABKgIIIAOTOAIIIAAgASoCBCAEkzgCBCAAIAEqAgAgBZM4AgALXAEBfyMAQTBrIgMkACADIAE2AgwgAyAANgIIIANBATYCFCADQdCuxAA2AhAgA0IBNwIcIAMgA0EIaq1CgICAgOCNAYQ3AyggAyADQShqNgIYIANBEGogAhC5DQALswEBAX9B0ABBBBCRDiIARQRAQQRB0ABB+MrEACgCACIAQcwIIAAbEQAAAAsgAEEAOgBMIABBATYCSCAA/QwEAAAAAQAAAAEAAACAAAAA/QsCOCAAQe+kjNgDNgI0IABC76SM1IOAgJDBADcCLCAA/QwAJHRJAACAPwAAgD8AAIA//QsCHCAA/QyJiIg8P8MuOQAAoEAAAPBB/QsCDCAAQQA2AgggAEKBgICAEDcCACAAQQhqC4oBAQF/QcwAQQQQkQ4iAEUEQEEEQcwAQfjKxAAoAgAiAEHMCCAAGxEAAAALIABBADYCSCAAQgQ3AkAgAEIANwI4IABCgICAgMAANwIwIABCBDcCKCAAQgA3AiAgAEKAgICAwAA3AhggAEIENwIQIAD9DAEAAAABAAAAAAAAAAAAAAD9CwIAIABBCGoLUwEFfSACKgIAIgQgBJQgAioCBCIFIAWUkiACKgIIIgYgBpSSkSEDIAAgASoCACIHIAYgA5WUOAIIIAAgByAFIAOVlDgCBCAAIAcgBCADlZQ4AgALUAIBfwJ+IwBBIGsiAiQAIAApAwAiA0I/hyEEIAEgA0IAWUEBQQAgAyAEhSAEfSACQQxqIgAQ8QUiASAAakEUIAFrENkCIQAgAkEgaiQAIAALdAEBfyMAQdABayICJAAgAv0MAAAAAAAAAAAAAAAAAAAAAP0LBMABIAL9DAAAAAABAAAAAgAAAAMAAAD9CwQQIAJBIGpBAEGgAfwLACACIAAoAgQgACgCCCACQRBqIAFBARAyIAItAAwhACACQdABaiQAIAALsAEBA38gACgCACIAKAIIIgIoAgAhASACIAFBAWs2AgAgAUEBRgRAAkAgAEEIaigCACIBQRBqKAIAIgJFDQAgAUEUaigCACEDIAJBADoAACADRQ0AIAIgA0EBEOgOCwJAIAFBf0YNACABIAEoAgQiAkEBazYCBCACQQFHDQAgAUEYQQgQ6A4LCwJAIABBf0YNACAAIAAoAgQiAUEBazYCBCABQQFHDQAgAEEYQQQQ6A4LC1IBA38CQAJAIAAEQCAAQQhrIgEoAgAiA0EBaiECIAEgAjYCACACRQ0BIAAoAgBBf0YNAiAAKAIMIQAgASADNgIAIABBAkcPCxCDDwsACxCEDwALUgEDfwJAAkAgAARAIABBCGsiASgCACIDQQFqIQIgASACNgIAIAJFDQEgACgCAEF/Rg0CIAAoAiAhACABIAM2AgAgAEECRw8LEIMPCwALEIQPAAtZAQJ+IAAoAgAoAgApAwAgASgCACACQXRsakEMaykCAIUiA0IgiCIEQrfTsIUMfiADQv////8PgyIDQt2h8csMfoUgBELdofHLDH4gA0K307CFDH6FQiCJhQtPAQF/AkAgASAAKAJMTw0AIAAoAkggAUEMbGoiASgCAEEBRw0AIAEoAgQgAkcNACABKAIIIgEgACgCLE8NACAAKAIoIAFBgANsaiEDCyADC1QBAn4gASgCACACQXRsakEMaygCACAAKAIAKAIAKQMAIgOnc60iBELdofHLDH4gA0IgiCIDQrfTsIUMfoUgBEK307CFDH4gA0LdofHLDH6FQiCJhQtgAQF/IwBB8ABrIgIkACACIAEQ9QFB8ABBCBCRDiIBBEAgASACQfAA/AoAACAAQZDAwwA2AgQgACABNgIAIAJB8ABqJAAPC0EIQfAAQfjKxAAoAgAiAEHMCCAAGxEAAAALYAEBfyMAQeAAayICJAAgAiABEPIBQeAAQQQQkQ4iAQRAIAEgAkHgAPwKAAAgAEGYosMANgIEIAAgATYCACACQeAAaiQADwtBBEHgAEH4ysQAKAIAIgBBzAggABsRAAAAC2YBAn8gASgCACECIAFBADYCAAJAIAIEQCABKAIEIQNBCEEEEJEOIgFFDQEgASADNgIEIAEgAjYCACAAQdyNxAA2AgQgACABNgIADwsAC0EEQQhB+MrEACgCACIAQcwIIAAbEQAAAAtVAQJ/IAAoAgAiACgCDCICKAIAIQEgAiABQQFrNgIAIAFBAUYEQCAAQQxqEIoKCwJAIABBf0YNACAAIAAoAgRBAWsiATYCBCABDQAgAEEUQQQQ6A4LC44CAQR/IwBBEGsiAyQAIAMgACgCACICQQRqNgIMIwBBEGsiACQAIAEoAgBBgNzCAEEIIAEoAgQoAgwRBQAhBCAAQQA6AA0gACAEOgAMIAAgATYCCCAAQQhqQYjcwgBBBiACQeDbwgAQogZBjtzCAEEFIAJBCGpB8NvCABCiBkGT3MIAQQQgA0EMakH02cIAEKIGIQIgAC0ADSIEIAAtAAwiBXIhAQJAIARBAUcNACAFQQFxDQAgAigCACIBLQAKQYABcUUEQCABKAIAQcuxxABBAiABKAIEKAIMEQUAIQEMAQsgASgCAEHKscQAQQEgASgCBCgCDBEFACEBCyAAQRBqJAAgA0EQaiQAIAFBAXELUQECfSAAIAEqAgggAioCCCIDmCADIAEqAgwiA5SSOAIIIAAgASoCBCACKgIEIgSYIAQgA5SSOAIEIAAgASoCACACKgIAIgSYIAQgA5SSOAIAC1QBBH0gACACKgIYIgQgASoCACIDkjgCFCAAIAMgAioCFCIFkjgCECAAIAMgAioCECIGkjgCDCAAIAQgA5M4AgggACAFIAOTOAIEIAAgBiADkzgCAAtSAQF/IAAoAgAiAEHMAGooAgAiAQRAIABB0ABqKAIAIAFB9ABsQQQQ6A4LAkAgAEF/Rg0AIAAgACgCBEEBayIBNgIEIAENACAAQegAQQQQ6A4LC1ECA38BfQJAAkAgAARAIABBCGsiASgCACIDQQFqIQIgASACNgIAIAJFDQEgACgCAEF/Rg0CIAAqAjwhBCABIAM2AgAgBA8LEIMPCwALEIQPAAtRAgN/AX0CQAJAIAAEQCAAQQhrIgEoAgAiA0EBaiECIAEgAjYCACACRQ0BIAAoAgBBf0YNAiAAKgIIIQQgASADNgIAIAQPCxCDDwsACxCEDwALUQEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATgCCCAAQQE2AgQgAiAENgIADwsQgw8LAAsQhA8AC08BA38CQAJAIAAEQCAAQQhrIgEoAgAiA0EBaiECIAEgAjYCACACRQ0BIAAoAgBBf0YNAiAALQBAIQAgASADNgIAIAAPCxCDDwsACxCEDwALUQIDfwF9AkACQCAABEAgAEEIayIBKAIAIgNBAWohAiABIAI2AgAgAkUNASAAKAIAQX9GDQIgACoCNCEEIAEgAzYCACAEDwsQgw8LAAsQhA8AC1ECA38BfQJAAkAgAARAIABBCGsiASgCACIDQQFqIQIgASACNgIAIAJFDQEgACgCAEF/Rg0CIAAqAjghBCABIAM2AgAgBA8LEIMPCwALEIQPAAtRAQN/AkACQCAABEAgAEEIayICKAIAIgRBAWohAyACIAM2AgAgA0UNASAAKAIADQIgACABOAIkIABBATYCICACIAQ2AgAPCxCDDwsACxCEDwALTwEDfwJAAkAgAARAIABBCGsiASgCACIDQQFqIQIgASACNgIAIAJFDQEgACgCAEF/Rg0CIAAtAFwhACABIAM2AgAgAA8LEIMPCwALEIQPAAtPAQN/AkACQCAABEAgAEEIayIBKAIAIgNBAWohAiABIAI2AgAgAkUNASAAKAIAQX9GDQIgACgCTCEAIAEgAzYCACAADwsQgw8LAAsQhA8AC1ECA38BfAJAAkAgAARAIABBCGsiASgCACIDQQFqIQIgASACNgIAIAJFDQEgACgCAEF/Rg0CIAArAgQhBCABIAM2AgAgBA8LEIMPCwALEIQPAAtRAgN/AX0CQAJAIAAEQCAAQQhrIgEoAgAiA0EBaiECIAEgAjYCACACRQ0BIAAoAgBBf0YNAiAAKgJAIQQgASADNgIAIAQPCxCDDwsACxCEDwALUQIDfwF9AkACQCAABEAgAEEIayIBKAIAIgNBAWohAiABIAI2AgAgAkUNASAAKAIAQX9GDQIgACoCKCEEIAEgAzYCACAEDwsQgw8LAAsQhA8AC1ECA38BfAJAAkAgAARAIABBCGsiASgCACIDQQFqIQIgASACNgIAIAJFDQEgACgCAEF/Rg0CIAArAiwhBCABIAM2AgAgBA8LEIMPCwALEIQPAAtPAQN/AkACQCAABEAgAEEIayIBKAIAIgNBAWohAiABIAI2AgAgAkUNASAAKAIAQX9GDQIgACgCNCEAIAEgAzYCACAADwsQgw8LAAsQhA8AC08BA38CQAJAIAAEQCAAQQhrIgEoAgAiA0EBaiECIAEgAjYCACACRQ0BIAAoAgBBf0YNAiAAKAI4IQAgASADNgIAIAAPCxCDDwsACxCEDwALTwEDfwJAAkAgAARAIABBCGsiASgCACIDQQFqIQIgASACNgIAIAJFDQEgACgCAEF/Rg0CIAAoAgwhACABIAM2AgAgAA8LEIMPCwALEIQPAAtRAgN/AX0CQAJAIAAEQCAAQQhrIgEoAgAiA0EBaiECIAEgAjYCACACRQ0BIAAoAgBBf0YNAiAAKgIEIQQgASADNgIAIAQPCxCDDwsACxCEDwALUQIDfwF9AkACQCAABEAgAEEIayIBKAIAIgNBAWohAiABIAI2AgAgAkUNASAAKAIAQX9GDQIgACoCJCEEIAEgAzYCACAEDwsQgw8LAAsQhA8AC1ECA38BfQJAAkAgAARAIABBCGsiASgCACIDQQFqIQIgASACNgIAIAJFDQEgACgCAEF/Rg0CIAAqAiwhBCABIAM2AgAgBA8LEIMPCwALEIQPAAtPAQN/AkACQCAABEAgAEEIayIBKAIAIgNBAWohAiABIAI2AgAgAkUNASAAKAIAQX9GDQIgACgCMCEAIAEgAzYCACAADwsQgw8LAAsQhA8AC08BA38CQAJAIAAEQCAAQQhrIgEoAgAiA0EBaiECIAEgAjYCACACRQ0BIAAoAgBBf0YNAiAAKAI8IQAgASADNgIAIAAPCxCDDwsACxCEDwALTwEDfwJAAkAgAARAIABBCGsiASgCACIDQQFqIQIgASACNgIAIAJFDQEgACgCAEF/Rg0CIAAoAkAhACABIAM2AgAgAA8LEIMPCwALEIQPAAtQAQN/AkACQCAABEAgAEEQayIBKAIAIgNBAWohAiABIAI2AgAgAkUNASAAKAIAQX9GDQIgACgCpAMhACABIAM2AgAgAA8LEIMPCwALEIQPAAtPAQN/AkACQCAABEAgAEEIayIBKAIAIgNBAWohAiABIAI2AgAgAkUNASAAKAIAQX9GDQIgACgCHCEAIAEgAzYCACAADwsQgw8LAAsQhA8AC08BA38CQAJAIAAEQCAAQQhrIgEoAgAiA0EBaiECIAEgAjYCACACRQ0BIAAoAgBBf0YNAiAALQAQIQAgASADNgIAIAAPCxCDDwsACxCEDwALUQIDfwF8AkACQCAABEAgAEEIayIBKAIAIgNBAWohAiABIAI2AgAgAkUNASAAKAIAQX9GDQIgACsCHCEEIAEgAzYCACAEDwsQgw8LAAsQhA8AC08BA38CQAJAIAAEQCAAQQhrIgEoAgAiA0EBaiECIAEgAjYCACACRQ0BIAAoAgBBf0YNAiAALQAYIQAgASADNgIAIAAPCxCDDwsACxCEDwALTwEDfwJAAkAgAARAIABBCGsiASgCACIDQQFqIQIgASACNgIAIAJFDQEgACgCAEF/Rg0CIAAoAgQhACABIAM2AgAgAA8LEIMPCwALEIQPAAtRAgN/AX0CQAJAIAAEQCAAQQhrIgEoAgAiA0EBaiECIAEgAjYCACACRQ0BIAAoAgBBf0YNAiAAKgIMIQQgASADNgIAIAQPCxCDDwsACxCEDwALUQIDfwF9AkACQCAABEAgAEEIayIBKAIAIgNBAWohAiABIAI2AgAgAkUNASAAKAIAQX9GDQIgACoCECEEIAEgAzYCACAEDwsQgw8LAAsQhA8AC1ECA38BfAJAAkAgAARAIABBCGsiASgCACIDQQFqIQIgASACNgIAIAJFDQEgACgCAEF/Rg0CIAArAgwhBCABIAM2AgAgBA8LEIMPCwALEIQPAAtRAgN/AX0CQAJAIAAEQCAAQQhrIgEoAgAiA0EBaiECIAEgAjYCACACRQ0BIAAoAgBBf0YNAiAAKgIgIQQgASADNgIAIAQPCxCDDwsACxCEDwALUQIDfwF9AkACQCAABEAgAEEIayIBKAIAIgNBAWohAiABIAI2AgAgAkUNASAAKAIAQX9GDQIgACoCMCEEIAEgAzYCACAEDwsQgw8LAAsQhA8AC1ABA38CQAJAIAAEQCAAQQhrIgEoAgAiA0EBaiECIAEgAjYCACACRQ0BIAAoAgBBf0YNAiAALQDgBCEAIAEgAzYCACAADwsQgw8LAAsQhA8AC1kBAn4gACgCACgCACkDACABKAIAIAJBA3RrQQhrKQIAhSIDQiCIIgRCt9OwhQx+IANC/////w+DIgNC3aHxywx+hSAEQt2h8csMfiADQrfTsIUMfoVCIImFC1kBAn4gACgCACgCACkDACABKAIAIAJBBHRrQRBrKQIAhSIDQiCIIgRCt9OwhQx+IANC/////w+DIgNC3aHxywx+hSAEQt2h8csMfiADQrfTsIUMfoVCIImFC2YBAX9BHEEEEJEOIgJFBEBBBEEcQfjKxAAoAgAiAEHMCCAAGxEAAAALIAIgAf0AAgD9CwIAIAJBGGogAUEYaigCADYCACACQRBqIAFBEGopAgA3AgAgAEHgpcMANgIEIAAgAjYCAAtoAQF/QSRBBBCRDiICRQRAQQRBJEH4ysQAKAIAIgBBzAggABsRAAAACyACIAH9AAIA/QsCACACQSBqIAFBIGooAgA2AgAgAkEQaiABQRBq/QACAP0LAgAgAEGY/cIANgIEIAAgAjYCAAtoAQF/QShBBBCRDiICRQRAQQRBKEH4ysQAKAIAIgBBzAggABsRAAAACyACIAH9AAIA/QsCACACQSBqIAFBIGopAgA3AgAgAkEQaiABQRBq/QACAP0LAgAgAEGg28MANgIEIAAgAjYCAAtcAQF/IwBBEGsiAiQAAn8gACgCAARAIAIgADYCDCABQaS8wQBBrLzBACACQQxqQZS8wQAQlwkMAQsgASgCAEGDvMEAQRAgASgCBCgCDBEFAAshACACQRBqJAAgAAtNAQN/AkACQCAABEAgAEEIayICKAIAIgRBAWohAyACIAM2AgAgA0UNASAAKAIADQIgACABQQBHOgBAIAIgBDYCAA8LEIMPCwALEIQPAAtOAQN/AkACQCAABEAgAEEIayICKAIAIgRBAWohAyACIAM2AgAgA0UNASAAKAIADQIgACABQQBHOgDgBCACIAQ2AgAPCxCDDwsACxCEDwALXAEBfyMAQRBrIgIkAAJ/IAAoAgAEQCACIAA2AgwgAUG04cEAQbzhwQAgAkEMakGk4cEAEJcJDAELIAEoAgBBk+HBAEEQIAEoAgQoAgwRBQALIQAgAkEQaiQAIAALXAEBfyMAQRBrIgIkAAJ/IAAoAgAEQCACIAA2AgwgAUHQ28IAQdjbwgAgAkEMakHA28IAEJcJDAELIAEoAgBBr9vCAEEQIAEoAgQoAgwRBQALIQAgAkEQaiQAIAALZAEBfSAAQwAAAABDAACAPyABKgIoIgKVIAJDAAAAAFsbOAIIIABDAAAAAEMAAIA/IAEqAiQiApUgAkMAAAAAWxs4AgQgAEMAAAAAQwAAgD8gASoCICIClSACQwAAAABbGzgCAAtIAQF/IAAoAgAgACgCCCIDayACSQRAIAAgAyACENkGIAAoAgghAwsgAgRAIAAoAgQgA2ogASAC/AoAAAsgACACIANqNgIIQQALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATgCPCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiASgCACIDQQFqIQIgASACNgIAIAJFDQEgACgCAA0CIABBAjYCDCABIAM2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATgCNCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATgCOCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiASgCACIDQQFqIQIgASACNgIAIAJFDQEgACgCAA0CIABBAjYCICABIAM2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATYCNCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATYCOCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATgCBCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATgCECACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATgCJCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATgCLCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATYCMCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATYCPCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAgATYCQCACIAQ2AgAPCxCDDwsACxCEDwALSgEDfwJAAkAgAARAIABBCGsiAigCACIEQQFqIQMgAiADNgIAIANFDQEgACgCAA0CIAAg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AgQoAhQREQANAEEADwsgACgCCCIERQRAQQEPCyAEIAEgAiADIAAoAgwoAhgREQALRgEBfyMAQTBrIgUkACAFQQhqIAEgAiADIAQQdAJAIAUoAhxBBEcEQCAAIAX9AAII/QsCAAwBCyAAQQI6AAwLIAVBMGokAAtGAQF/IAAoAgAiACgCCCICIAAoAgBGBEAgACACQQFBAUEBENYGIAAoAgghAgsgACACQQFqNgIIIAAoAgQgAmogAToAAEEAC1AAIAEoAgAgAigCACADKAIAIAQoAgAQDiEBQezKxAAoAgAhAkHoysQAKAIAIQNB6MrEAEIANwIAIAAgAiABIANBAUYiARs2AgQgACABNgIACzwBAX8jAEEgayICJAAgAUEBQQFBACAAKQMAIAJBDGoiABDxBSIBIABqQRQgAWsQ2QIhACACQSBqJAAgAAs9AQF/AkAgASAAKAKMA08NACAAKAKIAyABQYADbGoiACgCAEEBRw0AIABBEGpBACAAKAIEIAJGGyEDCyADCzsBAX8CQCABIAAoAhBPDQAgACgCDCABQbABbGoiACgCAEEBRw0AIABBEGpBACAAKAIEIAJGGyEDCyADC0ABAX1DAAAAACABKgIAIgMgA5QgASoCBCIDIAOUkiABKgIIIgMgA5SSkSAAKgIAkyIDIANDAAAAAF0bIAMgAhsLPwEBfyMAQSBrIgIkACACQQhqIAAoAgAgAkEWahDMBSABQQFBAUEAIAIoAgggAigCDBDZAiEAIAJBIGokACAAC5ENAwh/BX4BfCABKAIIIgdBgICAAXEhBSAAKwMAIQ8gB0GAgICAAXFFBEAgBUEARyEEIwBBgAFrIgMkACAPvSEKAn9BAyAPmUQAAAAAAADwf2ENABpBAiAKQoCAgICAgID4/wCDIgtCgICAgICAgPj/AFENABogCkL/////////B4MiDkKAgICAgICACIQgCkIBhkL+////////D4MgCkI0iKdB/w9xIgYbIgxCAYMhDSALUARAQQQgDlANARogBkGzCGshBkIBIQsgDVAMAQtCgICAgICAgCAgDEIBhiAMQoCAgICAgIAIUSIAGyEMQgJCASAAGyELQct3Qcx3IAAbIAZqIQYgDVALIQAgAyAGOwF4IAMgCzcDcCADQgE3A2ggAyAMNwNgIAMgADoAegJ/AkACQAJAAkACQCAAQQFNBEAgA0EgaiIGIANB4ABqIANBD2oQjQFB1q3EAEEBIApCAFMiABshBUHWrcQAQdetxAAgABshByAKQj+IpyEAIAMoAiBFDQEgA0HYAGogBkEIaigCADYCACADIAMpAiA3A1AMAgsgAEECRg0DQQEhBkHWrcQAQdetxAAgCkIAUyIHG0HWrcQAQQEgBxsgBBshBSAKQj+IpyAEciEHIABB/wFxQQRGDQIgA0EDNgIoIANB263EADYCJCADQQI7ASAgA0EgagwFCyADQdAAaiADQeAAaiADQQ9qEDMLIAcgBSAEGyEFIAAgBHIhByADIAMoAlAgAygCVCADLwFYQQAgA0EgahC1BSADKAIEIQYgAygCAAwDCyADQQI7ASAMAQsgA0EDNgIoIANB2K3EADYCJCADQQI7ASBBASEFQQAhB0EBIQYgA0EgagwBCyADQQE2AiggA0HercQANgIkIANBIGoLIQAgAyAGNgJcIAMgADYCWCADIAc2AlQgAyAFNgJQIAEgA0HQAGoQrwMhACADQYABaiQAIAAPCyAFQQBHIQggAS8BDiEHIwBB8AhrIgIkACAPvSEKAn9BAyAPmUQAAAAAAADwf2ENABpBAiAKQoCAgICAgID4/wCDIgtCgICAgICAgPj/AFENABogCkL/////////B4MiDkKAgICAgICACIQgCkIBhkL+////////D4MgCkI0iKdB/w9xIgQbIgxCAYMhDSALUARAQQQgDlANARogBEGzCGshBEIBIQsgDVAMAQtCgICAgICAgCAgDEIBhiAMQoCAgICAgIAIUSIAGyEMQgJCASAAGyELQct3Qcx3IAAbIARqIQQgDVALIQAgAiAEOwHoCCACIAs3A+AIIAJCATcD2AggAiAMNwPQCCACIAA6AOoIAn8CQAJAIABBAU0EQEF0QQUgBMEiAEEASBsgAGwiBUHA/QBJDQFB5a3EAEElQYyuxAAQ1gwACyAAQQJGDQFBASEEQdatxABB163EACAKQgBTIgUbQdatxABBASAFGyAIGyEGIApCP4inIAhyIQUgAEH/AXFBBEcEQCACQQM2ApgIIAJB263EADYClAggAkECOwGQCCACQZAIagwDC0ECIQQgAkECOwGQCCAHRQRAQQEhBCACQQE2ApgIIAJB3q3EADYClAggAkGQCGoMAwsgAiAHNgKgCCAC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IAFBAnRBBBDoDgsgACgCFCIBBEAgACgCGCABQQN0QQQQ6A4LCz8BAX8gACgCACEAIAEoAggiAkGAgIAQcUUEQCACQYCAgCBxRQRAIAAgARC8DA8LIAAgARCUCg8LIAAgARCTCgs2AQF/IAAoAgAiAQRAIAAoAgQgAUECdEEEEOgOCyAAKAIMIgEEQCAAKAIQIAFBAnRBBBDoDgsLPAEBfUMAAAAAIAAqAgAgASoCAJQgACoCBCABKgIElJIgACoCCCABKgIIlJIiAyADQwAAAABdGyADIAIbCzgBAX0gAEEANgIIIABCADcCACAAIAEqAgAiAiAClCABKgIEIgIgApSSIAEqAggiAiAClJKROAIMCz0BAn0gACABKgIEIgI4AhQgACACOAIMIAAgASoCAIsiAzgCECAAIAKMIgI4AgggACACOAIAIAAgA4w4AgQLxQMBA38gACgCACECIAEoAggiAEGAgIAQcUUEQCAAQYCAgCBxRQRAIwBBEGsiACQAQQMhAyACLQAAIgIhBCACQQpPBEAgACACIAJB5ABuIgRB5ABsa0H/AXFBAXQiA0HWscQAai0AADoADyAAIANB1bHEAGotAAA6AA5BASEDCyAERSACQQBHcUUEQCADQQFrIgMgAEENamogBEEBdEH+AXFB1rHEAGotAAA6AAALIAFBAUEBQQAgAEENaiADakEDIANrENkCIQEgAEEQaiQAIAEPCyMAQYABayIEJAAgAi0AACEAQQAhAgNAIAIgBGpB/wBqIABBD3EiA0EwciADQTdqIANBCkkbOgAAIAJBAWshAiAAIgNBBHYhACADQQ9LDQALIAFBAUHTscQAQQIgAiAEakGAAWpBACACaxDZAiEAIARBgAFqJAAgAA8LIwBBgAFrIgQkACACLQAAIQBBACECA0AgAiAEakH/AGogAEEPcSIDQTByIANB1wBqIANBCkkbOgAAIAJBAWshAiAAIgNBBHYhACADQQ9LDQALIAFBAUHTscQAQQIgAiAEakGAAWpBACACaxDZAiEAIARBgAFqJAAgAAvRAwEGfyMAQRBrIgMkACADIAA2AgwgAEEMaiEEIANBDGohBSMAQSBrIgAkAAJAIAEoAgAiBkHQicQAQQggASgCBCgCDCIHEQUABEBBASECDAELAkAgAS0ACkGAAXFFBEBBASECIAZBzbHEAEEB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RQRAQQRBHEH4ysQAKAIAIgBBzAggABsRAAAACyAAQoGAgIAQNwIAIAD9DAAAAAAAAAAAAAAAAAAAAAD9CwIIIABBgICA/AM2AhggAEEIagsvAQF9IAEqAgAiAiAClCABKgIEIgIgApSSIAEqAggiAiAClJIgACoCACICIAKUXwswAQF/IwBBIGsiAyQAIANBCGogACABIAJBABCaASADKAIIIQAgA0EgaiQAIABBBEcLMAEBfyMAQSBrIgMkACADQQhqIAAgASACQQEQ9AEgAygCCCEAIANBIGokACAAQQRHCzABAX8jAEEgayIDJAAgA0EIaiAAIAEgAkEBEKoCIAMoAgghACADQSBqJAAgAEEERwswAQF/IwBBEGsiAyQAIANBCGogACABIAJBARC1ASADKAIIIQAgA0EQaiQAIABBAUYLMAEBfyMAQSBrIgMkACADQQhqIAAgASACQQEQiwIgAygCCCEAIANBIGokACAAQQRHCzABAX8jAEEgayIDJAAgA0EIaiAAIAEgAkEBEKsCIAMoAgghACADQSBqJAAgAEEERwswAQF/IwBBIGsiAyQAIANBCGogACABIAJBARDbASADKAIIIQAgA0EgaiQAIABBBEcLMAEBfyMAQSBrIgMkACADQQhqIAAgASACQQEQvAEgAygCCCEAIANBIGokACAAQQRHCzABAX8jAEEgayIDJAAgA0EIaiAAIAEgAkEBEO4BIAMoAgghACADQSBqJAAgAEEERwswAQF/IwBBIGsiAyQAIANBCGogACABIAJBARCMAiADKAIIIQAgA0EgaiQAIABBBEcLMAEBfyMAQSBrIgMkACADQQhqIAAgASACQQEQpgIgAygCCCEAIANBIGokACAAQQRHCzABAX8jAEEgayIDJAAgA0EIaiAAIAEgAkEBEJsCIAMoAgghACADQSBqJAAgAEEERwswAQF/IwBBEGsiAyQAIANBCGogACABIAJBARCKASADKAIIIQAgA0EQaiQAIABBAUYLMAEBfyMAQSBrIgMkACADQQhqIAAgASACQQEQmAEgAygCCCEAIANBIGokACAAQQRHCzABAX8jAEEQayIDJAAgA0EIaiAAIAEgAkEBEJ4BIAMoAgghACADQRBqJAAgAEEBRgtIAQF/IAEoAgAhAkEEQQQQkQ4iAUUEQEEEQQRB+MrEACgCACIA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IQAgAkEQaiQAIAALJwEBfyMAQRBrIgIkACACIAAgAUEBECwgAi0ADCEAIAJBEGokACAACycBAX8jAEEQayICJAAgAiAAIAFBARApIAItAAwhACACQRBqJAAgAAsoAQF/IwBBEGsiAiQAIAIgACABQQEQ/wIgAi0ADCEAIAJBEGokACAACygBAX8jAEEQayICJAAgAiAAIAFBARCJASACLQAMIQAgAkEQaiQAIAALJwEBfyMAQRBrIgIkACACIAAgAUEBECggAi0ADCEAIAJBEGokACAACycBAn0gACoCACIBIAAqAgQiAiABIAJfGyIBIAAqAggiAiABIAJfGwsnAQJ9IAAqAmQiASAAKgJoIgIgASACXxsiASAAKgJsIgIgASACXxsLKwAgAEH/AXEiAEHAAE0EQCAAQZirwQBqLQAADwsgAEHBAEHQ4sMAEIULAAtGACAA/QwAAAAAAAAAAAAAAAAAAAAA/QsCECAA/QwAAAAAAAAAAAAAAAAAAIA//QsCACAAQShqQQA2AgAgAEEgakIANwIACzMAIAEoAgAgACgCAC0AAEECdCIAQdDLwgBqKAIAIABBwMvCAGooAgAgASgCBCgCDBEFAAslACAARQRAQeDMwgBBMhCCDwALIAAgAiADIAQgBSABKAIQESAACyMAIABFBEBB4MzCAEEyEIIPAAsgACACIAMgBCABKAIQEQIACyMAIABFBEBB4MzCAEEyEIIPAAsgACACIAMgBCABKAIQEREACyMAIABFBEBB4MzCAEEyEIIPAAsgACACIAMgBCABKAIQER8ACyQAIABFBEBB4MzCAEEyEIIPAAsgACACIAMgBCABKAIQEaIBAAsjACAARQRAQeDMwgBBMhCCDwALIAAgAiADIAQgASgCEBE8AAsoAQF/IAAoAgAiAUGAgICAeHJBgICAgHhHBEAgACgCBCABQQEQ6A4LCyEAIABFBEBB4MzCAEEyEIIPAAsgACACIAMgASgCEBEBAAsdACABKAIABEAgAEHcjcQANgIEIAAgATYCAA8LAAsnAQF/IAAoAgAiAgRAIAEoAgAgAiAAKAIEIAEoAgQoAgwRBQAPCwALJAAgAC0AAEUEQCABQfCzxABBBRD7Ag8LIAFB9bPEAEEEEPsCCx8AIABFBEBB4MzCAEEyEIIPAAsgACACIAEoAhARAwALHwAgACAB/QACQP0LAgAgAEEQaiABQdAAaikCADcCAAsfACAAIAH9AAI0/QsCACAAQRBqIAFBxABqKQIANwIACykAIAAgAC0ABCABQS5GcjoABCAAKAIAIgAoAgAgASAAKAIEKAIQEQMACx0AIAAgAiABKAIsIAEoAjAgASgCOCABKAI8EIkDCxoBAX8gACgCACIBBEAgACgCBCABQQEQ6A4LC1IAIAAEQCAAIAFB+MrEACgCACIAQcwIIAAbEQAAAAsjAEEgayIAJAAgAEEANgIYIABBATYCDCAAQfSPxAA2AgggAEIENwIQIABBCGogAhC5DQALHQAgAEHEp8MANgIEIAAgATYCACAAIAEqAhg4AggLHQAgAEGYpMMANgIEIAAgATYCACAAIAEqAgw4AggLHQAgAEGEqMMANgIEIAAgATYCACAAIAEqAiQ4AggLHQAgAEH4t8MANgIEIAAgATYCACAAIAEqAgg4AggLHQAgAEHcu8MANgIEIAAgATYCACAAIAEqAgg4AggLHQAgAEHMtMMANgIEIAAgATYCACAAIAEqAmA4AggLHwAgAEEIakG8iMQAKQIANwIAIABBtIjEACkCADcCAAsfACAAQQhqQcyIxAApAgA3AgAgAEHEiMQAKQIANwIACxoAIABBADYCCCAAQZC9wQA2AgQgACABNgIACxoAIABBADYCCCAAQdi+wQA2AgQgACABNgIACxoAIABBADYCCCAAQeDhwQA2AgQgACABNgIACxoAIABBADYCCCAAQdz7wQA2AgQgACABNgIACxYAIABB2AFqIAAtAOUCIABBMGoQsAYLGAAgACgCACABKAIAIAIoAgAgAygCABAQCxcBAX8gABASIgE2AgQgACABQQBHNgIACxcBAX8gABATIgE2AgQgACABQQBHNgIACxcBAX8gABAUIgE2AgQgACABQQBHNgIACxcBAX8gABAVIgE2AgQgACABQQBHNgIACxwAIABBADYCECAAQgA3AgggAEKAgICAwAA3AgALGgAgAEEANgIIIABBmKTDADYCBCAAIAE2AgALrQUCFH0CfyABKgIYIQYgAAJ9QwAAgD8gAUEMaiIXKgIIIg8gASoCCCIQkyIKjCAKIBcqAgQiESABKgIEIhKTIgdDAAAAAF0iGBsiCyALlCAXKgIAIhMgASoCACIUkyIMjCAMIBgbIgggCJQg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IABBDGqtQoCAgIAwhDcDUCAAIABBCGqtQoCAgIAwhDcDSAsgACAAQcgAajYCOCAAQTBqIAQQuQ0ACxMAIABBxLrBADYCBCAAIAE2AgALEwAgAEHUusEANgIEIAAgATYCAAsTACAAQfS8wQA2AgQgACABNgIACxAAIABBATYCACAAIAE2AgQLEwAgAEG8vsEANgIEIAAgATYCAAsQACAAQQQ2AgAgACABNgIECxoAAn8gAUEJTwRAIAEgABCuBgwBCyAAEEMLCxAAIAAgATYCBCAAQQU2AgALEwAgAEGs38EANgIEIAAgATYCAAsTACAAQbzfwQA2AgQgACABNgIACxMAIABBzN/BADYCBCAAIAE2AgALEwAgAEHc38EANgIEIAAgATYCAAsTACAAQezfwQA2AgQgACABNgIACxMAIABBxOHBADYCBCAAIAE2AgALEAAgACABNgIEIABBBzYCAAsQACAAIAE2AgQgAEEGNgIACxMAIABBwPvBADYCBCAAIAE2AgALFgBB7MrEACAANgIAQejKxABBATYCAAsTACAAQfTVwgA2AgQgACABNgIACxMAIABBhNbCADYCBCAAIAE2AgALEwAgAEGU1sIANgIEIAAgATYCAAsTACAAQaTWwgA2AgQgACABNgIACxMAIABBtNbCADYCBCAAIAE2AgALEwAgAEHE1sIANgIEIAAgATYCAAsTACAAQdTWwgA2AgQgACABNgIACxMAIABB5NbCADYCBCAAIAE2AgALEwAgAEH01sIANgIEIAAgATYCAAsTACAAQYTXwgA2AgQgACABNgIACxMAIABBlNfCADYCBCAAIAE2AgALEwAgAEGk18IANgIEIAAgATYCAAsTACAAQbTXwgA2AgQgACABNgIACxMAIABBxNfCADYCBCAAIAE2AgALEwAgAEHU18IANgIEIAAgATYCAAsTACAAQeTXwgA2AgQgACABNgIACxMAIABB9NfCADYCBCAAIAE2AgALEwAgAEGE2MIANgIEIAAgATYCAAsTACAAQZTYwgA2AgQgACABNgIACxMAIABBpNjCADYCBCAAIAE2AgALEwAgAEG02MIANgIEIAAgATYCAAsTACAAQcTYwgA2AgQgACABNgIACxMAIABB1NjCADYCBCAAIAE2AgALEwAgAEHk2MIANgIEIAAgATYCAAsTACAAQfTYwgA2AgQgACABNgIACxMAIABBhNnCADYCBCAAIAE2AgALEwAgAEGU2cIANgIEIAAgATYCAAsRACABIAAoAgAgACgCBBD7AgsQACAAIAE2AgQgAEEDNgIACxAAIAAgATYCBCAAQQQ2AgALEAAgACABNgIEIABBAjYCAAsQACAAIAE2AgQgAEEBNgIACxAAIAAgATYCBCAAQQA2AgALKgAgAEL////39/////4ANwIQIAD9DP////7////+/////v///379CwIACxAAIABBADYCACAAIAE2AgQLEwAgAEHgo8MANgIEIAAgATYCAAsTACAAQfyjwwA2AgQgACABNgIACxAAIABBAjYCACAAIAE2AgQLEwAgAEGop8MANgIEIAAgATYCAAsTACAAQeinwwA2AgQgACABNgIACxAAIABBAzYCACAAIAE2AgQLEwAgAEGoqMMANgIEIAAgATYCAAsOACAAIAFBQGsgAhC7AwsQACAAQQo2AgAgACABNgIECxMAIABBsKvDADYCBCAAIAE2AgALEAAgAEEHNgIAIAAgATYCBAsTACAAQbCuwwA2AgQgACABNgIACxAAIABBBjYCACAAIAE2AgQLEwAgAEGwscMANgIEIAAgATYCAAsOACAAIAFBNGogAhC7AwsQACAAQQk2AgAgACABNgIECxAAIABBCzYCACAAIAE2AgQLEwAgAEGwtMMANgIEIAAgATYCAAsQACAAQQw2AgAgACABNgIECxMAIABB3LfDADYCBCAAIAE2AgALEAAgAEENNgIAIAAgATYCBAsTACAAQcC7wwA2AgQgACABNgIACyoAIABC////9/f////+ADcCECAA/Qz////+/////v////7///9+/QsCAAsqACAAQv////f3/////gA3AhAgAP0M/////v////7////+////fv0LAgALEAAgAEEINgIAIAAgATYCBAsQACAAQQU2AgAgACABNgIECxAAIABBDjYCACAAIAE2AgQLEwAgAEGwhMQANgIEIAAgATYCAAsQACAAQQ82AgAgACABNgIECxMAIABBzITEADYCBCAAIAE2AgALEAAgAEEQNgIAIAAgATYCBAsTACAAQeiExAA2AgQgACABNgIACxAAIABBETYCACAAIAE2AgQLEwAgAEGEhcQANgIEIAAgATYCAAsQACAAQRI2AgAgACAB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bnQgYXQgaW5kZXgvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9jY2QvdG9pX2VudHJ5LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2R5bmFtaWNzL2pvaW50L211bHRpYm9keV9qb2ludC9tdWx0aWJvZHkucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvZHluYW1pY3Mvc29sdmVyL3NvbHZlcl9ib2R5LnJzAGJ1aWxkcy9yYXBpZXIzZC1zaW1kLy4uLy4uL3NyYy9keW5hbWljcy9yaWdpZF9ib2R5LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLnJ1c3R1cC90b29sY2hhaW5zL3N0YWJsZS1hYXJjaDY0LWFwcGxlLWRhcndpbi9saWIvcnVzdGxpYi9zcmMvcnVzdC9saWJyYXJ5L3N0ZC9zcmMvc3luYy9tcG1jL2FycmF5LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9uYWxnZWJyYS0wLjM0LjEvc3JjL2Jhc2UvbWF0cml4LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9uYWxnZWJyYS0wLjM0LjEvc3JjL2Jhc2UvbWluX21heC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUtYWFyY2g2NC1hcHBsZS1kYXJ3aW4vbGliL3J1c3RsaWIvc3JjL3J1c3QvbGlicmFyeS9hbGxvYy9zcmMvYm9ycm93LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9uYWxnZWJyYS0wLjM0LjEvc3JjL2Jhc2UvbWF0cml4X3ZpZXcucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL25hbGdlYnJhLTAuMzQuMS9zcmMvYmFzZS9jb25zdHJ1Y3Rpb25fdmlldy5ycwBsaWJyYXJ5L2NvcmUvc3JjL251bS9mbHQyZGVjL3N0cmF0ZWd5L2dyaXN1LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9uYWxnZWJyYS0wLjM0LjEvc3JjL2xpbmFsZy9sdS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUtYWFyY2g2NC1hcHBsZS1kYXJ3aW4vbGliL3J1c3RsaWIvc3JjL3J1c3QvbGlicmFyeS9zdGQvc3JjL3N5bmMvbXBtYy9jb250ZXh0LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcGFydGl0aW9uaW5nL2J2aC9idmhfdHJhdmVyc2VfYnZ0dC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUtYWFyY2g2NC1hcHBsZS1kYXJ3aW4vbGliL3J1c3RsaWIvc3JjL3J1c3QvbGlicmFyeS9zdGQvc3JjL3N5bmMvbXBtYy9saXN0LnJzAGxpYnJhcnkvY29yZS9zcmMvc2xpY2Uvc29ydC9zaGFyZWQvc21hbGxzb3J0LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcGFydGl0aW9uaW5nL2J2aC9idmhfaW5zZXJ0LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdXRpbHMvcG9pbnRfY2xvdWRfc3VwcG9ydF9wb2ludC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9qb2ludC9tdWx0aWJvZHlfam9pbnQvdW5pdF9tdWx0aWJvZHlfam9pbnQucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvZHluYW1pY3Mvam9pbnQvbXVsdGlib2R5X2pvaW50L211bHRpYm9keV9qb2ludC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9zb2x2ZXIvam9pbnRfY29uc3RyYWludC9qb2ludF92ZWxvY2l0eV9jb25zdHJhaW50LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2R5bmFtaWNzL3NvbHZlci9qb2ludF9jb25zdHJhaW50L2dlbmVyaWNfam9pbnRfY29uc3RyYWludC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9zb2x2ZXIvY29udGFjdF9jb25zdHJhaW50L2dlbmVyaWNfY29udGFjdF9jb25zdHJhaW50LnJzAGxpYnJhcnkvc3RkL3NyYy90aHJlYWQvY3VycmVudC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L3BvaW50L3BvaW50X3NlZ21lbnQucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9zaGFwZS9zZWdtZW50LnJzAGxpYnJhcnkvYWxsb2Mvc3JjL2ZtdC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3BhcnRpdGlvbmluZy9idmgvYnZoX3JlZml0LnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2R5bmFtaWNzL3JpZ2lkX2JvZHlfc2V0LnJzAGJ1aWxkcy9yYXBpZXIzZC1zaW1kLy4uLy4uL3NyYy9keW5hbWljcy9yaWdpZF9ib2R5X3NldC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9qb2ludC9tdWx0aWJvZHlfam9pbnQvbXVsdGlib2R5X2pvaW50X3NldC5ycwBidWlsZHMvcmFwaWVyM2Qtc2ltZC8uLi8uLi9zcmMvZHluYW1pY3MvbXVsdGlib2R5X2pvaW50X3NldC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9qb2ludC9pbXB1bHNlX2pvaW50L2ltcHVsc2Vfam9pbnRfc2V0LnJzAGJ1aWxkcy9yYXBpZXIzZC1zaW1kLy4uLy4uL3NyYy9keW5hbWljcy9pbXB1bHNlX2pvaW50X3NldC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9zb2x2ZXIvam9pbnRfY29uc3RyYWludC9qb2ludF9jb25zdHJhaW50c19zZXQucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvZHluYW1pY3Mvc29sdmVyL2NvbnRhY3RfY29uc3RyYWludC9jb250YWN0X2NvbnN0cmFpbnRzX3NldC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9nZW9tZXRyeS9jb2xsaWRlcl9zZXQucnMAYnVpbGRzL3JhcGllcjNkLXNpbWQvLi4vLi4vc3JjL2dlb21ldHJ5L2NvbGxpZGVyX3NldC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3RyYW5zZm9ybWF0aW9uL2NvbnZleF9odWxsMy90cmlhbmdsZV9mYWNldC5ycwBsaWJyYXJ5L2NvcmUvc3JjL251bS9kaXlfZmxvYXQucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvZHluYW1pY3MvcmlnaWRfYm9keV9jb21wb25lbnRzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2RhdGEvbW9kaWZpZWRfb2JqZWN0cy5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9zb2x2ZXIvaW50ZXJhY3Rpb25fZ3JvdXBzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9uYWxnZWJyYS0wLjM0LjEvc3JjL2Jhc2Uvb3BzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9zZXJkZS0xLjAuMjE5L3NyYy9kZS9pbXBscy5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3RyYW5zZm9ybWF0aW9uL2NvbnZleF9odWxsX3V0aWxzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvYm91bmRpbmdfdm9sdW1lL2FhYmJfdXRpbHMucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy90cmFuc2Zvcm1hdGlvbi91dGlscy5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy91dGlscy5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2NvbnRhY3RfbWFuaWZvbGRzL2NvbnRhY3RfbWFuaWZvbGRzX3ZveGVsc192b3hlbHMucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9zaGFwZS92b3hlbHMvdm94ZWxzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi93ZWItdGltZS0xLjEuMC9zcmMvdGltZS9qcy5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL21hc3NfcHJvcGVydGllcy9tYXNzX3Byb3BlcnRpZXMucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvcGlwZWxpbmUvdXNlcl9jaGFuZ2VzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi93YXNtLWJpbmRnZW4tMC4yLjEwMC9zcmMvY29udmVydC9zbGljZXMucnMAL1VzZXJzL3NlYmNyb3pldC8ucnVzdHVwL3Rvb2xjaGFpbnMvc3RhYmxlLWFhcmNoNjQtYXBwbGUtZGFyd2luL2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvc3RkL3NyYy9zeXMvc3luYy9tdXRleC9ub190aHJlYWRzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9uYWxnZWJyYS0wLjM0LjEvc3JjL2Jhc2UvYmxhcy5ycwBsaWJyYXJ5L2FsbG9jL3NyYy9mZmkvY19zdHIucnMAL1VzZXJzL3NlYmNyb3pldC8ucnVzdHVwL3Rvb2xjaGFpbnMvc3RhYmxlLWFhcmNoNjQtYXBwbGUtZGFyd2luL2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvY29yZS9zcmMvaXRlci90cmFpdHMvaXRlcmF0b3IucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL25hbGdlYnJhLTAuMzQuMS9zcmMvYmFzZS9kZWZhdWx0X2FsbG9jYXRvci5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9zb2x2ZXIvdmVsb2NpdHlfc29sdmVyLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2R5bmFtaWNzL2NjZC9jY2Rfc29sdmVyLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdXRpbHMvY2VudGVyLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2NvbnRyb2wvY2hhcmFjdGVyX2NvbnRyb2xsZXIucnMAYnVpbGRzL3JhcGllcjNkLXNpbWQvLi4vLi4vc3JjL2NvbnRyb2wvY2hhcmFjdGVyX2NvbnRyb2xsZXIucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvY29udHJvbC9yYXlfY2FzdF92ZWhpY2xlX2NvbnRyb2xsZXIucnMAL1VzZXJzL3NlYmNyb3pldC8ucnVzdHVwL3Rvb2xjaGFpbnMvc3RhYmxlLWFhcmNoNjQtYXBwbGUtZGFyd2luL2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvc3RkL3NyYy9zeW5jL21wbWMvd2FrZXIucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9kZWZhdWx0X3F1ZXJ5X2Rpc3BhdGNoZXIucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvZHluYW1pY3MvaXNsYW5kX21hbmFnZXIucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9zaGFwZS9jeWxpbmRlci5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9zb2x2ZXIvam9pbnRfY29uc3RyYWludC9nZW5lcmljX2pvaW50X2NvbnN0cmFpbnRfYnVpbGRlci5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9zb2x2ZXIvam9pbnRfY29uc3RyYWludC9qb2ludF9jb25zdHJhaW50X2J1aWxkZXIucnMAYnVpbGRzL3JhcGllcjNkLXNpbWQvLi4vLi4vc3JjL2dlb21ldHJ5L2NvbGxpZGVyLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdXRpbHMvY2xlYW51cC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUtYWFyY2g2NC1hcHBsZS1kYXJ3aW4vbGliL3J1c3RsaWIvc3JjL3J1c3QvbGlicmFyeS9jb3JlL3NyYy9jbXAucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9pbnRlcnNlY3Rpb25fdGVzdC9pbnRlcnNlY3Rpb25fdGVzdF9zdXBwb3J0X21hcF9zdXBwb3J0X21hcC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L25vbmxpbmVhcl9zaGFwZV9jYXN0L25vbmxpbmVhcl9zaGFwZV9jYXN0X3N1cHBvcnRfbWFwX3N1cHBvcnRfbWFwLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvY29udGFjdC9jb250YWN0X3N1cHBvcnRfbWFwX3N1cHBvcnRfbWFwLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvY2xvc2VzdF9wb2ludHMvY2xvc2VzdF9wb2ludHNfc3VwcG9ydF9tYXBfc3VwcG9ydF9tYXAucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9kaXN0YW5jZS9kaXN0YW5jZV9zdXBwb3J0X21hcF9zdXBwb3J0X21hcC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2Nsb3Nlc3RfcG9pbnRzL2Nsb3Nlc3RfcG9pbnRzX2hhbGZzcGFjZV9zdXBwb3J0X21hcC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3V0aWxzL3ZlY19tYXAucnMAL1VzZXJzL3NlYmNyb3pldC8ucnVzdHVwL3Rvb2xjaGFpbnMvc3RhYmxlLWFhcmNoNjQtYXBwbGUtZGFyd2luL2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvc3RkL3NyYy9zeW5jL21wbWMvemVyby5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3NoYXBlL2NvbnZleF9wb2x5aGVkcm9uLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvcG9pbnQvcG9pbnRfdGV0cmFoZWRyb24ucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9zaGFwZS92b3hlbHMvdm94ZWxzX2VkaXRpb24ucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL25hbGdlYnJhLTAuMzQuMS9zcmMvYmFzZS9lZGl0aW9uLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9uYWxnZWJyYS0wLjM0LjEvc3JjL2Jhc2UvY29uc3RydWN0aW9uLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2R5bmFtaWNzL3NvbHZlci9jb250YWN0X2NvbnN0cmFpbnQvY29udGFjdF93aXRoX3R3aXN0X2ZyaWN0aW9uLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2R5bmFtaWNzL3NvbHZlci9jb250YWN0X2NvbnN0cmFpbnQvY29udGFjdF93aXRoX2NvdWxvbWJfZnJpY3Rpb24ucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvZHluYW1pY3Mvc29sdmVyL2NhdGVnb3JpemF0aW9uLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdHJhbnNmb3JtYXRpb24vY29udmV4X2h1bGwzL3ZhbGlkYXRpb24ucnMAbGlicmFyeS9jb3JlL3NyYy9udW0vZmx0MmRlYy9zdHJhdGVneS9kcmFnb24ucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL25hbGdlYnJhLTAuMzQuMS9zcmMvbGluYWxnL3N5bW1ldHJpY19laWdlbi5ycwBsaWJyYXJ5L2NvcmUvc3JjL251bS9iaWdudW0ucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9jb250YWN0X21hbmlmb2xkcy9jb250YWN0X21hbmlmb2xkc19wZm1fcGZtLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvY29udGFjdF9tYW5pZm9sZHMvY29udGFjdF9tYW5pZm9sZHNfaGFsZnNwYWNlX3BmbS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3RyYW5zZm9ybWF0aW9uL2NvbnZleF9odWxsMy9jb252ZXhfaHVsbC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2NvbnRhY3RfbWFuaWZvbGRzL2NvbnRhY3RfbWFuaWZvbGRzX2NvbnZleF9iYWxsLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvY29udGFjdF9tYW5pZm9sZHMvY29udGFjdF9tYW5pZm9sZHNfdm94ZWxzX2JhbGwucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9jbG9zZXN0X3BvaW50cy9jbG9zZXN0X3BvaW50c19iYWxsX2JhbGwucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9jb250YWN0X21hbmlmb2xkcy9jb250YWN0X21hbmlmb2xkc19iYWxsX2JhbGwucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL2JpbmNvZGUtMS4zLjMvc3JjL2ludGVybmFsLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvdm94ZWxzL3ZveGVsc19jaHVuay5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9keW5hbWljcy9qb2ludC9tdWx0aWJvZHlfam9pbnQvbXVsdGlib2R5X2xpbmsucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9namsvZ2prLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2dlb21ldHJ5L2Jyb2FkX3BoYXNlX2J2aC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3RyYW5zZm9ybWF0aW9uL3RvX3RyaW1lc2gvY3lsaW5kZXJfdG9fdHJpbWVzaC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3RyYW5zZm9ybWF0aW9uL3RvX3RyaW1lc2gvY29udmV4X3BvbHloZWRyb25fdG9fdHJpbWVzaC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3RyYW5zZm9ybWF0aW9uL3RvX3RyaW1lc2gvYmFsbF90b190cmltZXNoLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdHJhbnNmb3JtYXRpb24vdG9fdHJpbWVzaC9jb25lX3RvX3RyaW1lc2gucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9zaGFwZS90cmltZXNoLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdHJhbnNmb3JtYXRpb24vY29udmV4X2h1bGwzL2luaXRpYWxfbWVzaC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9nZW9tZXRyeS9pbnRlcmFjdGlvbl9ncmFwaC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9kYXRhL2dyYXBoLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9lbmEtMC4xNC4zL3NyYy91bmRvX2xvZy5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvbmFsZ2VicmEtMC4zNC4xL3NyYy9iYXNlL2luZGV4aW5nLnJzAGxpYnJhcnkvYWxsb2Mvc3JjL3N0cmluZy5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3BhcnRpdGlvbmluZy9idmgvYnZoX29wdGltaXplLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcGFydGl0aW9uaW5nL2J2aC9idmhfdHJhdmVyc2UucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL25hbGdlYnJhLTAuMzQuMS9zcmMvYmFzZS9jb21wb25lbnR3aXNlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL2dlb21ldHJ5L25hcnJvd19waGFzZS5ycwBidWlsZHMvcmFwaWVyM2Qtc2ltZC8uLi8uLi9zcmMvZ2VvbWV0cnkvbmFycm93X3BoYXNlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvYm91bmRpbmdfdm9sdW1lL2JvdW5kaW5nX3NwaGVyZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2NvbnRhY3RfbWFuaWZvbGRzL2NvbnRhY3RfbWFuaWZvbGRzX3ZveGVsc19zaGFwZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2NvbnRhY3RfbWFuaWZvbGRzL2NvbnRhY3RfbWFuaWZvbGRzX3RyaW1lc2hfc2hhcGUucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9wb2ludC9wb2ludF9jb21wb3NpdGVfc2hhcGUucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9jb250YWN0X21hbmlmb2xkcy9jb250YWN0X21hbmlmb2xkc192b3hlbHNfY29tcG9zaXRlX3NoYXBlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvY29udGFjdF9tYW5pZm9sZHMvY29udGFjdF9tYW5pZm9sZHNfY29tcG9zaXRlX3NoYXBlX2NvbXBvc2l0ZV9zaGFwZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2NvbnRhY3RfbWFuaWZvbGRzL2NvbnRhY3RfbWFuaWZvbGRzX2hlaWdodGZpZWxkX2NvbXBvc2l0ZV9zaGFwZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2NvbnRhY3RfbWFuaWZvbGRzL2NvbnRhY3RfbWFuaWZvbGRzX2NvbXBvc2l0ZV9zaGFwZV9zaGFwZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2NvbnRhY3RfbWFuaWZvbGRzL2NvbnRhY3RfbWFuaWZvbGRzX2hlaWdodGZpZWxkX3NoYXBlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvc2hhcmVkX3NoYXBlLnJzAGJ1aWxkcy9yYXBpZXIzZC1zaW1kLy4uLy4uL3NyYy9nZW9tZXRyeS9zaGFwZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3NoYXBlL3NoYXBlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvcG9seWxpbmUucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy90cmFuc2Zvcm1hdGlvbi90b19vdXRsaW5lL3ZveGVsc190b19vdXRsaW5lLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdHJhbnNmb3JtYXRpb24vdG9fb3V0bGluZS9yb3VuZF9jeWxpbmRlcl90b19vdXRsaW5lLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdHJhbnNmb3JtYXRpb24vdG9fb3V0bGluZS9yb3VuZF9jb252ZXhfcG9seWhlZHJvbl90b19vdXRsaW5lLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdHJhbnNmb3JtYXRpb24vdG9fb3V0bGluZS9iYWxsX3RvX291dGxpbmUucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy90cmFuc2Zvcm1hdGlvbi90b19vdXRsaW5lL3JvdW5kX2NvbmVfdG9fb3V0bGluZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3RyYW5zZm9ybWF0aW9uL3RvX291dGxpbmUvY2Fwc3VsZV90b19vdXRsaW5lLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvdHJhbnNmb3JtYXRpb24vdG9fb3V0bGluZS9yb3VuZF9jdWJvaWRfdG9fb3V0bGluZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9waXBlbGluZS9waHlzaWNzX3BpcGVsaW5lLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL3BpcGVsaW5lL2RlYnVnX3JlbmRlcl9waXBlbGluZS9kZWJ1Z19yZW5kZXJfcGlwZWxpbmUucnMAbGlicmFyeS9zdGQvc3JjL3N5cy9wYWwvd2FzbS8uLi91bnN1cHBvcnRlZC90aW1lLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLnJ1c3R1cC90b29sY2hhaW5zL3N0YWJsZS1hYXJjaDY0LWFwcGxlLWRhcndpbi9saWIvcnVzdGxpYi9zcmMvcnVzdC9saWJyYXJ5L2NvcmUvc3JjL3RpbWUucnMAL3J1c3RjLzExNTllNzhjNDc0N2IwMmVmOTk2ZTU1MDgyYjcwNGMwOWI5NzA1ODgvbGlicmFyeS9jb3JlL3NyYy90aW1lLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvY29udGFjdF9tYW5pZm9sZHMvY29udGFjdF9tYW5pZm9sZHNfY2Fwc3VsZV9jYXBzdWxlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvY2xvc2VzdF9wb2ludHMvY2xvc2VzdF9wb2ludHNfY3Vib2lkX3RyaWFuZ2xlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvdHJpYW5nbGUucnMAbGlicmFyeS9jb3JlL3NyYy91bmljb2RlL3ByaW50YWJsZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvbmFsZ2VicmEtMC4zNC4xL3NyYy9iYXNlL3ZlY19zdG9yYWdlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcGFydGl0aW9uaW5nL2J2aC9idmhfdHJlZS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvbmFsZ2VicmEtMC4zNC4xL3NyYy9saW5hbGcvcGVybXV0YXRpb25fc2VxdWVuY2UucnMAL1VzZXJzL3NlYmNyb3pldC8ucnVzdHVwL3Rvb2xjaGFpbnMvc3RhYmxlLWFhcmNoNjQtYXBwbGUtZGFyd2luL2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvYWxsb2Mvc3JjL3NsaWNlLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvdm94ZWxzL3ZveGVsc19uZWlnaGJvcmhvb2QucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL2VuYS0wLjE0LjMvc3JjL3VuaWZ5L21vZC5ycwAvcnVzdC9kZXBzL2hhc2hicm93bi0wLjE1LjQvc3JjL3Jhdy9tb2QucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL2hhc2hicm93bi0wLjE2LjAvc3JjL3Jhdy9tb2QucnMAbGlicmFyeS9jb3JlL3NyYy9mbXQvbW9kLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLnJ1c3R1cC90b29sY2hhaW5zL3N0YWJsZS1hYXJjaDY0LWFwcGxlLWRhcndpbi9saWIvcnVzdGxpYi9zcmMvcnVzdC9saWJyYXJ5L2FsbG9jL3NyYy9jb2xsZWN0aW9ucy9iaW5hcnlfaGVhcC9tb2QucnMAbGlicmFyeS9zdGQvc3JjL3RocmVhZC9tb2QucnMAL1VzZXJzL3NlYmNyb3pldC8ucnVzdHVwL3Rvb2xjaGFpbnMvc3RhYmxlLWFhcmNoNjQtYXBwbGUtZGFyd2luL2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvc3RkL3NyYy9zeW5jL21wbWMvbW9kLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLnJ1c3R1cC90b29sY2hhaW5zL3N0YWJsZS1hYXJjaDY0LWFwcGxlLWRhcndpbi9saWIvcnVzdGxpYi9zcmMvcnVzdC9saWJyYXJ5L2FsbG9jL3NyYy9yYXdfdmVjL21vZC5ycwAvcnVzdGMvMTE1OWU3OGM0NzQ3YjAyZWY5OTZlNTUwODJiNzA0YzA5Yjk3MDU4OC9saWJyYXJ5L2FsbG9jL3NyYy9yYXdfdmVjL21vZC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUtYWFyY2g2NC1hcHBsZS1kYXJ3aW4vbGliL3J1c3RsaWIvc3JjL3J1c3QvbGlicmFyeS9hbGxvYy9zcmMvdmVjL21vZC5ycwBsaWJyYXJ5L2NvcmUvc3JjL251bS9mbHQyZGVjL21vZC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3NoYXBlL2NvbXBvdW5kLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9yYXBpZXIzZC0wLjMwLjEvc3JjL3BpcGVsaW5lL2RlYnVnX3JlbmRlcl9waXBlbGluZS9kZWJ1Z19yZW5kZXJfYmFja2VuZC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3BhcnRpdGlvbmluZy9idmgvYnZoX2Jpbm5lZF9idWlsZC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3BhcnRpdGlvbmluZy9idmgvYnZoX3Bsb2NfYnVpbGQucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9xdWVyeS9jbG9zZXN0X3BvaW50cy9jbG9zZXN0X3BvaW50c19jdWJvaWRfY3Vib2lkLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvY3Vib2lkLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvZmVhdHVyZV9pZC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5ydXN0dXAvdG9vbGNoYWlucy9zdGFibGUtYWFyY2g2NC1hcHBsZS1kYXJ3aW4vbGliL3J1c3RsaWIvc3JjL3J1c3QvbGlicmFyeS9hbGxvYy9zcmMvdmVjL3NwZWNfZnJvbV9pdGVyX25lc3RlZC5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL21hc3NfcHJvcGVydGllcy9tYXNzX3Byb3BlcnRpZXNfdHJpbWVzaDNkLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvcG9seWdvbmFsX2ZlYXR1cmUzZC5ycwAvcnVzdC9kZXBzL2RsbWFsbG9jLTAuMi4xMC9zcmMvZGxtYWxsb2MucnMAbGlicmFyeS9zdGQvc3JjL2FsbG9jLnJzAGxpYnJhcnkvYWxsb2Mvc3JjL3N5bmMucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL2VuYS0wLjE0LjMvc3JjL3NuYXBzaG90X3ZlYy5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvanMtc3lzLTAuMy43Ny9zcmMvbGliLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9vbmNlX2NlbGwtMS4yMS4zL3NyYy9saWIucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3ZlY19tYXAtMC44LjIvc3JjL2xpYi5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2Yvc21hbGx2ZWMtMS4xNS4xL3NyYy9saWIucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy9ib3VuZGluZ192b2x1bWUvYWFiYi5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcmFwaWVyM2QtMC4zMC4xL3NyYy9kYXRhL2NvYXJlbmEucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3JhcGllcjNkLTAuMzAuMS9zcmMvZGF0YS9hcmVuYS5ycwAvVXNlcnMvc2ViY3JvemV0Ly5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTE5NDljZjhjNmI1YjU1N2YvcGFycnkzZC0wLjI1LjMvc3JjL3F1ZXJ5L2dqay92b3Jvbm9pX3NpbXBsZXgzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvc2hhcGUvaGVpZ2h0ZmllbGQzLnJzAC9Vc2Vycy9zZWJjcm96ZXQvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9wYXJyeTNkLTAuMjUuMy9zcmMvcXVlcnkvZXBhL2VwYTMucnMAL1VzZXJzL3NlYmNyb3pldC8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3BhcnJ5M2QtMC4yNS4zL3NyYy90cmFuc2Zvcm1hdGlvbi9jb252ZXhfaHVsbDIucnMAL1VzZXJzL3NlYmNyb3pldC8ucnVzdHVwL3Rvb2xjaGFpbnMvc3RhYmxlLWFhcmNoNjQtYXBwbGUtZGFyd2luL2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvY29yZS9zcmMvbnVtL2YzMi5ycwABAQECAQEBAgEBAQICAgIDAQEBAgEBAQIBAQECAgICAwEBAQIBAQECAQEBAgICAgMCAgIDAgICAwICAgMDAwMEAAAAAGY1EAB5AAAANQAAACwAAABDYW5ub3QgZGVzZXJpYWxpemUgY3VzdG9tIHNoYXBlLgAAAAAAAAAAAQAAAAQAAABBbGxvY2F0aW9uIGZyb20gaXRlcmF0b3IgZXJyb3I6IHRoZSBpdGVyYXRvciBkaWQgbm90IHlpZWxkIHRoZSBjb3JyZWN0IG51bWJlciBvZiBlbGVtZW50cy4AABxWEABaAAAAJBkQAHMAAACEAAAACQAAAAAAAAAIAAAABAAAAAUAAABhIHR1cGxlIG9mIHNpemUgMgBBvK3BAAthAQAAAAYAAACqEhAAYwAAAJUEAAAiAAAAqhIQAGMAAACYBAAAHAAAAHN0cnVjdCBUcmlNZXNoIHdpdGggNyBlbGVtZW50cwAA5FYQAB4AAABhIHR1cGxlIG9mIHNpemUgMwBBqK7BAAsFAQAAAAcAQbiuwQALBQEAAAAHAEHIrsEACwUBAAAABwBB2K7BAAuJDgEAAAAHAAAAc3RydWN0IENvbXBvdW5kIHdpdGggNCBlbGVtZW50cwBgVxAAHwAAAHN0cnVjdCBQb2x5bGluZSB3aXRoIDMgZWxlbWVudHMAiFcQAB8AAAB2YXJpYW50IGluZGV4IDAgPD0gaSA8IDKwVxAAGAAAAHN0cnVjdCBDb2xsaWRlciB3aXRoIDExIGVsZW1lbnRz0FcQACAAAABzdHJ1Y3QgVm94ZWxzIHdpdGggNiBlbGVtZW50cwAAAPhXEAAdAAAAc3RydWN0IEhlaWdodEZpZWxkIHdpdGggNiBlbGVtZW50cwAAIFgQACIAAAB2YXJpYW50IGluZGV4IDAgPD0gaSA8IDIwAAAATFgQABkAAABzdHJ1Y3QgVHJpTWVzaENvbm5lY3RlZENvbXBvbmVudHMgd2l0aCAzIGVsZW1lbnRzAAAAcFgQADEAAABzdHJ1Y3QgR3JhcGggd2l0aCAyIGVsZW1lbnRzrFgQABwAAABzdHJ1Y3QgTFUgd2l0aCAyIGVsZW1lbnRzAAAA0FgQABkAAABzdHJ1Y3QgSXNsYW5kTWFuYWdlciB3aXRoIDQgZWxlbWVudHP0WBAAJAAAAHN0cnVjdCBDb252ZXhQb2x5aGVkcm9uIHdpdGggOCBlbGVtZW50cwAgWRAAJwAAAHN0cnVjdCBCdmhOb2RlV2lkZSB3aXRoIDIgZWxlbWVudHMAAFBZEAAiAAAAc3RydWN0IEJyb2FkUGhhc2VCdmggd2l0aCA0IGVsZW1lbnRzfFkQACQAAABzdHJ1Y3QgQ29udGFjdE1hbmlmb2xkRGF0YSB3aXRoIDcgZWxlbWVudHMAAKhZEAAqAAAAc3RydWN0IEpvaW50TW90b3Igd2l0aCA3IGVsZW1lbnRzAAAA3FkQACEAAABzdHJ1Y3QgR2VuZXJpY0pvaW50IHdpdGggMTEgZWxlbWVudHMIWhAAJAAAAHZhcmlhbnQgaW5kZXggMCA8PSBpIDwgMzRaEAAYAAAAdmFyaWFudCBpbmRleCAwIDw9IGkgPCA0VFoQABgAAABzdHJ1Y3QgSW50ZWdyYXRpb25QYXJhbWV0ZXJzIHdpdGggMTcgZWxlbWVudHMAAAB0WhAALQAAAHN0cnVjdCBNdWx0aWJvZHkgd2l0aCAxOCBlbGVtZW50cwAAAKxaEAAhAAAAc3RydWN0IEludGVyYWN0aW9uR3JhcGggd2l0aCAxIGVsZW1lbnQAANhaEAAmAAAAc3RydWN0IEluZGV4U2VxdWVuY2Ugd2l0aCAyIGVsZW1lbnRzCFsQACQAAABzdHJ1Y3QgSW1wdWxzZUpvaW50IHdpdGggNSBlbGVtZW50cwA0WxAAIwAAAHR1cGxlIHN0cnVjdCBNb2RpZmllZE9iamVjdHMgd2l0aCAyIGVsZW1lbnRzYFsQ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EACcAAAASgAAABwAAAAcORAAnAAAAEoAAAA2AAAAHDkQAJwAAAAXAQAAKgAAABw5EACcAAAAdgAAADkAAAAcORAAnAAAAH0AAAAnAAAAHDkQAJwAAACQAAAAIwAAABw5EACcAAAAnQAAAC4AAAAAAAAAMAAAAAQAAADmAAAA5wAAABw5EACcAAAA8gAAACIAAABfOhAAoQAAAEsAAAAcAAAAXzoQAKEAAABLAAAANgAAAAAAAAA4AAAABAAAAOgAAADpAAAAXzoQAKEAAABiAAAANQAAAF86EAChAAAAZQAAACMAAABfOhAAoQAAAHoAAAAjAAAAXzoQAKEAAAB/AAAALgAAALk5EAClAAAASAAAABwAAAC5ORAApQAAAEgAAAA2AAAAAAAAADAAAAAEAAAA6gAAAOsAAAAAAAAAPAAAAAQAAADsAAAA7QAAALk5EAClAAAAdwAAAD0AAAC5ORAApQAAAHoAAAArAAAAuTkQAKUAAACRAAAAKwAAALk5EAClAAAAlgAAADYAAABEVBAAagAAAMgBAAAkAAAARFQQAGoAAADJAQAAJAAAAERUEABqAAAAygEAACQAAABEVBAAagAAAN8BAAAYAAAARFQQAGoAAADgAQAAGAAAAERUEABqAAAA4QEAABgAAABEVBAAagAAAOIBAAAYAAAARFQQAGoAAADlAQAAJwAAAERUEABqAAAA5QEAAEQAAABEVBAAagAAAOoBAAAnAAAARFQQAGoAAADqAQAARAAAAERUEABqAAAA7wEAACcAAABEVBAAagAAAO8BAABEAAAARFQQAGoAAAD0AQAAJwAAAERUEABqAAAA9AEAAEQAAABIaXQgdW5leHBlY3RlZCBzdGF0ZSBpbiBFUEE6IGZhaWxlZCB0byBwcm9qZWN0IHRoZSBvcmlnaW4gb24gdGhlIGluaXRpYWwgc2ltcGxleC4AAABAehAAUQAAAERUEABqAAAA/AEAABEAAABwYXJyeTNkOjpxdWVyeTo6ZXBhOjplcGEzAAAARFQQAGoAAAABAgAAKAAAAERUEABqAAAAFAIAABgAAABEVBAAagAAABUCAAAYAAAARFQQAGoAAAAlAgAAIgAAAERUEABqAAAALQIAABsAAABEVBAAagAAAEQCAAAXAAAARFQQAGoAAABGAgAALAAAAERUEABqAAAARwIAACwA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TAAAAA4AAABEVBAAagAAAGIAAAANAAAARFQQAGoAAABjAAAADQAAAERUEABqAAAAZAAAAA0AAABEVBAAagAAAHoAAAANAAAARFQQAGoAAAB7AAAAEwAAAERUEABqAAAAfAAAABMAAABIaXQgdW5leHBlY3RlZCBzdGF0ZSBpbiBFUEE6IGZvdW5kIGluZGV4ICwgZXhwZWN0ZWQ6IAAAAIzFEAApAAAAtcUQAAwAAAA4rxAAAQAAAERUEABqAAAAjgAAABEAAABwYXJyeTNkOjpxdWVyeTo6ZXBhOjplcGEzAAAARFQQAGoAAACaAAAAHAAAAERUEABqAAAAmgAAABMAAABEVBAAagAAAJsAAAATAAAARFQQAGoAAACcAAAAEwAAAERUEABqAAAAnQAAABMAAABEVBAAagAAAN8BAAAYAAAARFQQAGoAAADgAQAAGAAAAERUEABqAAAA4QEAABgAAABEVBAAagAAAOIBAAAYAAAARFQQAGoAAADlAQAAJwAAAERUEABqAAAA5QEAAEQAAABEVBAAagAAAOoBAAAnAAAARFQQAGoAAADqAQAARAAAAERUEABqAAAA7wEAACcAAABEVBAAagAAAO8BAABEAAAARFQQAGoAAAD0AQAAJwAAAERUEABqAAAA9AEAAEQAAABIaXQgdW5leHBlY3RlZCBzdGF0ZSBpbiBFUEE6IGZhaWxlZCB0byBwcm9qZWN0IHRoZSBvcmlnaW4gb24gdGhlIGluaXRpYWwgc2ltcGxleC4AAAAYxxAAUQAAAERUEABqAAAA/AEAABEAAABEVBAAagAAABQCAAAYAAAARFQQAGoAAAAVAgAAGAAAAERUEABqAAAAJQIAACIAAABEVBAAagAAAC0CAAAbAAAARFQQAGoAAABEAgAAFwAAAERUEABqAAAARgIAACwAAABEVBAAagAAAEcCAAAsAAAARFQQAGoAAABIAgAALAAAAERUEABqAAAAegIAABcAAABEVBAAagAAAHsCAAAjAAAARFQQAGoAAABWAgAAHwAAAERUEABqAAAAYwIAACAAAABEVBAAagAAAGYCAAA6AAAARFQQAGoAAABmAgAALwAAAERUEABqAAAAPQIAACwAAABEVBAAagAAAIgCAAAkAAAARFQQAGoAAADAAQAAGwAAAERUEABqAAAABwIAABoAAABEVBAA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").buffer)})}function q_Q(){return function(){let A,Q;try{let J=O.__wbindgen_add_to_stack_pointer(-16);O.version(J);var B=NY().getInt32(J+0,!0),Y=NY().getInt32(J+4,!0);return A=B,Q=Y,L_(B,Y)}finally{O.__wbindgen_add_to_stack_pointer(16),O.__wbindgen_export_1(A,Q,1)}}()}function M_Q(A){var Q;Q=A,O.reserve_memory(Q)}T9[45]=62,T9[95]=63;var WB=Object.freeze({__proto__:null,version:q_Q,reserveMemory:M_Q,Vector3:x_,VectorOps:a,Quaternion:gM,RotationOps:hQ,SdpMatrix3:f_,SdpMatrix3Ops:hM,get RigidBodyType(){return HC},RigidBody:mM,RigidBodyDesc:w1,RigidBodySet:b_,IntegrationParameters:m_,get JointType(){return BJ},get MotorModel(){return q_},get JointAxesMask(){return M_},ImpulseJoint:NC,UnitImpulseJoint:rM,FixedImpulseJoint:u_,RopeImpulseJoint:d_,SpringImpulseJoint:c_,PrismaticImpulseJoint:l_,RevoluteImpulseJoint:p_,GenericImpulseJoint:i_,SphericalImpulseJoint:n_,JointData:lX,ImpulseJointSet:s_,MultibodyJoint:rG,UnitMultibodyJoint:aM,FixedMultibodyJoint:r_,PrismaticMultibodyJoint:a_,RevoluteMultibodyJoint:o_,SphericalMultibodyJoint:t_,MultibodyJointSet:e_,get CoefficientCombineRule(){return oV},CCDSolver:Av,IslandManager:Qv,BroadPhase:Bv,NarrowPhase:Yv,TempContactManifold:Jv,Shape:JY,get ShapeType(){return YY},get HeightFieldFlags(){return z_},get TriMeshFlags(){return R_},Ball:tM,HalfSpace:Cv,Cuboid:eM,RoundCuboid:Az,Capsule:Qz,Segment:Bz,Triangle:Yz,RoundTriangle:Jz,Polyline:Cz,Voxels:Xz,TriMesh:Gz,ConvexPolyhedron:AI,RoundConvexPolyhedron:QI,Heightfield:Wz,Cylinder:Fz,RoundCylinder:Zz,Cone:$z,RoundCone:Uz,get ActiveCollisionTypes(){return bM},Collider:dM,get MassPropsMode(){return RF},ColliderDesc:BY,ColliderSet:Kv,get FeatureType(){return L4},Ray:Ie,RayIntersection:YI,RayColliderIntersection:tV,RayColliderHit:oM,PointProjection:JI,PointColliderProjection:eV,ShapeCastHit:M4,ColliderShapeCastHit:CI,ShapeContact:q4,World:Ez,PhysicsPipeline:Xv,SerializationPipeline:uM,get ActiveEvents(){return xM},TempContactForceEvent:Ev,EventQueue:He,get ActiveHooks(){return fM},get SolverFlags(){return j_},DebugRenderBuffers:Gv,DebugRenderPipeline:Wv,get QueryFilterFlags(){return O_},init:L_Q,CharacterCollision:Fv,KinematicCharacterController:Zv,get PidAxesMask(){return w_},PidController:$v,DynamicRayCastVehicleController:Uv});var jF;((H)=>{H[H.BLOCK=1]="BLOCK";H[H.ENTITY=2]="ENTITY";H[H.ENTITY_SENSOR=4]="ENTITY_SENSOR";H[H.ENVIRONMENT_ENTITY=8]="ENVIRONMENT_ENTITY";H[H.PLAYER=16]="PLAYER";H[H.GROUP_1=32]="GROUP_1";H[H.GROUP_2=64]="GROUP_2";H[H.GROUP_3=128]="GROUP_3";H[H.GROUP_4=256]="GROUP_4";H[H.GROUP_5=512]="GROUP_5";H[H.GROUP_6=1024]="GROUP_6";H[H.GROUP_7=2048]="GROUP_7";H[H.GROUP_8=4096]="GROUP_8";H[H.GROUP_9=8192]="GROUP_9";H[H.GROUP_10=16384]="GROUP_10";H[H.GROUP_11=32768]="GROUP_11";H[H.ALL=65535]="ALL"})(jF||={});class LC{static BELONGS_TO_SHIFT=16;static COLLIDES_WITH_MASK=65535;static buildRawCollisionGroups(A){return this.combineGroups(A.belongsTo)<>>this.BELONGS_TO_SHIFT),collidesWith:this.bitsToGroups(A&this.COLLIDES_WITH_MASK)}}static decodeCollisionGroups(A){return{belongsTo:A.belongsTo.map((Q)=>this.groupToName(Q)),collidesWith:A.collidesWith.map((Q)=>this.groupToName(Q))}}static isDefaultCollisionGroups(A){return A.belongsTo.includes(65535)&&A.collidesWith.includes(65535)}static combineGroups(A){return A.reduce((Q,B)=>Q|B,0)}static bitsToGroups(A){if(A===65535)return[65535];return Object.values(jF).filter((Q)=>typeof Q==="number"&&Q!==65535&&(A&Q)!==0)}static groupToName(A){let Q=Object.entries(jF).find(([B,Y])=>Y===A);if(!Q)l.fatalError(`CollisionGroupsBuilder.groupToName(): Unknown collision group: ${A}`);return Q[0]}}var Le=qA(Ne(),1);var qe=Le.default;class BQ{static globalInstance=new BQ;_emitter=new qe;_finalListeners={};emit(A,Q){if(this.listenerCount(A)===0)return!1;try{this._emitter.emit(A,Q),this._finalListeners[A]?.(Q)}catch(B){console.error(`EventRouter.emit(): Error emitting event "${A}":`,B)}return!0}emitWithGlobal(A,Q){this.emit(A,Q),BQ.globalInstance.emit(A,Q)}emitWithWorld(A,Q,B){this.emit(Q,B),A.emit(Q,B)}final(A,Q){if(this._finalListeners[A]&&Q!==this._finalListeners[A])return l.error(`EventRouter.final(): Listener for event type "${A}" already exists. It must be removed explicitly with .off() before a different final listener can be set.`);this._finalListeners[A]=Q}hasListeners(A){return this._emitter.listenerCount(A)>0||A in this._finalListeners}listeners(A){return[...this._emitter.listeners(A),...this._finalListeners[A]?[this._finalListeners[A]]:[]]}listenerCount(A){return this._emitter.listenerCount(A)+(this._finalListeners[A]?1:0)}off(A,Q){if(this._emitter.removeListener(A,Q),this._finalListeners[A]===Q)delete this._finalListeners[A]}offAll(A){if(this._emitter.removeAllListeners(A),A)delete this._finalListeners[A];else this._finalListeners={}}on(A,Q){this._emitter.addListener(A,Q)}once(A,Q){this._emitter.once(A,Q)}}import TJB from"crypto";import z8 from"fs";import SJB from"os";import jJ from"path";function CY(A){if(typeof A!=="object"||A===null)return!1;let Q=Object.getPrototypeOf(A);return(Q===null||Q===Object.prototype||Object.getPrototypeOf(Q)===null)&&!(Symbol.toStringTag in A)&&!(Symbol.iterator in A)}import{fileURLToPath as w_Q}from"node:url";var z4=(A,Q)=>{let B=Dv(j_Q(A));if(typeof B!=="string")throw TypeError(`${Q} must be a string or a file URL: ${B}.`);return B},j_Q=(A)=>Hv(A)?A.toString():A,Hv=(A)=>typeof A!=="string"&&A&&Object.getPrototypeOf(A)===String.prototype,Dv=(A)=>A instanceof URL?w_Q(A):A;var Vz=(A,Q=[],B={})=>{let Y=z4(A,"First argument"),[J,C]=CY(Q)?[[],Q]:[Q,B];if(!Array.isArray(J))throw TypeError(`Second argument must be either an array of arguments or an options object: ${J}`);if(J.some((W)=>typeof W==="object"&&W!==null))throw TypeError(`Second argument must be an array of strings: ${J}`);let X=J.map(String),G=X.find((W)=>W.includes("\x00"));if(G!==void 0)throw TypeError(`Arguments cannot contain null bytes ("\\0"): ${G}`);if(!CY(C))throw TypeError(`Last argument must be an options object: ${C}`);return[Y,X,C]};import{ChildProcess as v_Q}from"node:child_process";import{StringDecoder as O_Q}from"node:string_decoder";var{toString:Me}=Object.prototype,ze=(A)=>Me.call(A)==="[object ArrayBuffer]",TY=(A)=>Me.call(A)==="[object Uint8Array]",rX=(A)=>new Uint8Array(A.buffer,A.byteOffset,A.byteLength),P_Q=new TextEncoder,Re=(A)=>P_Q.encode(A),T_Q=new TextDecoder,Iz=(A)=>T_Q.decode(A),we=(A,Q)=>{return S_Q(A,Q).join("")},S_Q=(A,Q)=>{if(Q==="utf8"&&A.every((C)=>typeof C==="string"))return A;let B=new O_Q(Q),Y=A.map((C)=>typeof C==="string"?Re(C):C).map((C)=>B.write(C)),J=B.end();return J===""?Y:[...Y,J]},GI=(A)=>{if(A.length===1&&TY(A[0]))return A[0];return Nv(k_Q(A))},k_Q=(A)=>A.map((Q)=>typeof Q==="string"?Re(Q):Q),Nv=(A)=>{let Q=new Uint8Array(__Q(A)),B=0;for(let Y of A)Q.set(Y,B),B+=Y.length;return Q},__Q=(A)=>{let Q=0;for(let B of A)Q+=B.length;return Q};var Te=(A)=>Array.isArray(A)&&Array.isArray(A.raw),Se=(A,Q)=>{let B=[];for(let[C,X]of A.entries())B=y_Q({templates:A,expressions:Q,tokens:B,index:C,template:X});if(B.length===0)throw TypeError("Template script must not be empty");let[Y,...J]=B;return[Y,J,{}]},y_Q=({templates:A,expressions:Q,tokens:B,index:Y,template:J})=>{if(J===void 0)throw TypeError(`Invalid backslash sequence: ${A.raw[Y]}`);let{nextTokens:C,leadingWhitespaces:X,trailingWhitespaces:G}=g_Q(J,A.raw[Y]),W=Oe(B,C,X);if(Y===Q.length)return W;let F=Q[Y],Z=Array.isArray(F)?F.map((U)=>Pe(U)):[Pe(F)];return Oe(W,Z,G)},g_Q=(A,Q)=>{if(Q.length===0)return{nextTokens:[],leadingWhitespaces:!1,trailingWhitespaces:!1};let B=[],Y=0,J=je.has(Q[0]);for(let X=0,G=0;XB||A.length===0||Q.length===0?[...A,...Q]:[...A.slice(0,-1),`${A.at(-1)}${Q[0]}`,...Q.slice(1)],Pe=(A)=>{let Q=typeof A;if(Q==="string")return A;if(Q==="number")return String(A);if(CY(A)&&(("stdout"in A)||("isMaxBuffer"in A)))return x_Q(A);if(A instanceof v_Q||Object.prototype.toString.call(A)==="[object Promise]")throw TypeError("Unexpected subprocess in template expression. Please use ${await subprocess} instead of ${subprocess}.");throw TypeError(`Unexpected "${Q}" in template expression`)},x_Q=({stdout:A})=>{if(typeof A==="string")return A;if(TY(A))return Iz(A);if(A===void 0)throw TypeError(`Missing result.stdout in template expression. This is probably due to the previous subprocess' "stdout" option.`);throw TypeError(`Unexpected "${typeof A}" stdout in template expression`)};import{spawnSync as lxQ}from"node:child_process";import{debuglog as f_Q}from"node:util";import Lv from"node:process";var qC=(A)=>Hz.includes(A),Hz=[Lv.stdin,Lv.stdout,Lv.stderr],Q5=["stdin","stdout","stderr"],Dz=(A)=>Q5[A]??`stdio[${A}]`;var _e=(A)=>{let Q={...A};for(let B of zv)Q[B]=qv(A,B);return Q},qv=(A,Q)=>{let B=Array.from({length:b_Q(A)+1}),Y=m_Q(A[Q],B,Q);return p_Q(Y,Q)},b_Q=({stdio:A})=>Array.isArray(A)?Math.max(A.length,Q5.length):Q5.length,m_Q=(A,Q,B)=>CY(A)?u_Q(A,Q,B):Q.fill(A),u_Q=(A,Q,B)=>{for(let Y of Object.keys(A).sort(d_Q))for(let J of c_Q(Y,B,Q))Q[J]=A[Y];return Q},d_Q=(A,Q)=>ke(A){if(A==="stdout"||A==="stderr")return 0;return A==="all"?2:1},c_Q=(A,Q,B)=>{if(A==="ipc")return[B.length-1];let Y=Mv(A);if(Y===void 0||Y===0)throw TypeError(`"${Q}.${A}" is invalid. It must be "${Q}.stdout", "${Q}.stderr", "${Q}.all", "${Q}.ipc", or "${Q}.fd3", "${Q}.fd4" (and so on).`);if(Y>=B.length)throw TypeError(`"${Q}.${A}" is invalid: that file descriptor does not exist. -Please set the "stdio" option to ensure that file descriptor exists.`);return Y==="all"?[1,2]:[Y]},Mv=(A)=>{if(A==="all")return A;if(Q5.includes(A))return Q5.indexOf(A);let Q=l_Q.exec(A);if(Q!==null)return Number(Q[1])},l_Q=/^fd(\d+)$/,p_Q=(A,Q)=>A.map((B)=>B===void 0?n_Q[Q]:B),i_Q=f_Q("execa").enabled?"full":"none",n_Q={lines:!1,buffer:!0,maxBuffer:1e8,verbose:i_Q,stripFinalNewline:!0},zv=["lines","buffer","maxBuffer","verbose","stripFinalNewline"],aX=(A,Q)=>Q==="ipc"?A.at(-1):A[Q];var z4=({verbose:A},Q)=>Rv(A,Q)!=="none",R4=({verbose:A},Q)=>!["none","short"].includes(Rv(A,Q)),ve=({verbose:A},Q)=>{let B=Rv(A,Q);return Nz(B)?B:void 0},Rv=(A,Q)=>Q===void 0?s_Q(A):aX(A,Q),s_Q=(A)=>A.find((Q)=>Nz(Q))??Lz.findLast((Q)=>A.includes(Q)),Nz=(A)=>typeof A==="function",Lz=["none","short","full"];import{inspect as IvQ}from"node:util";import{platform as r_Q}from"node:process";import{stripVTControlCharacters as a_Q}from"node:util";var ye=(A,Q)=>{let B=[A,...Q],Y=B.join(" "),J=B.map((C)=>BvQ(ge(C))).join(" ");return{command:Y,escapedCommand:J}},WI=(A)=>a_Q(A).split(` +Please set the "stdio" option to ensure that file descriptor exists.`);return Y==="all"?[1,2]:[Y]},Mv=(A)=>{if(A==="all")return A;if(Q5.includes(A))return Q5.indexOf(A);let Q=l_Q.exec(A);if(Q!==null)return Number(Q[1])},l_Q=/^fd(\d+)$/,p_Q=(A,Q)=>A.map((B)=>B===void 0?n_Q[Q]:B),i_Q=f_Q("execa").enabled?"full":"none",n_Q={lines:!1,buffer:!0,maxBuffer:1e8,verbose:i_Q,stripFinalNewline:!0},zv=["lines","buffer","maxBuffer","verbose","stripFinalNewline"],aX=(A,Q)=>Q==="ipc"?A.at(-1):A[Q];var R4=({verbose:A},Q)=>Rv(A,Q)!=="none",w4=({verbose:A},Q)=>!["none","short"].includes(Rv(A,Q)),ve=({verbose:A},Q)=>{let B=Rv(A,Q);return Nz(B)?B:void 0},Rv=(A,Q)=>Q===void 0?s_Q(A):aX(A,Q),s_Q=(A)=>A.find((Q)=>Nz(Q))??Lz.findLast((Q)=>A.includes(Q)),Nz=(A)=>typeof A==="function",Lz=["none","short","full"];import{inspect as IvQ}from"node:util";import{platform as r_Q}from"node:process";import{stripVTControlCharacters as a_Q}from"node:util";var ye=(A,Q)=>{let B=[A,...Q],Y=B.join(" "),J=B.map((C)=>BvQ(ge(C))).join(" ");return{command:Y,escapedCommand:J}},WI=(A)=>a_Q(A).split(` `).map((Q)=>ge(Q)).join(` `),ge=(A)=>A.replaceAll(e_Q,(Q)=>o_Q(Q)),o_Q=(A)=>{let Q=AvQ[A];if(Q!==void 0)return Q;let B=A.codePointAt(0),Y=B.toString(16);return B<=QvQ?`\\u${Y.padStart(4,"0")}`:`\\U${Y}`},t_Q=()=>{try{return new RegExp("\\p{Separator}|\\p{Other}","gu")}catch{return/[\s\u0000-\u001F\u007F-\u009F\u00AD]/g}},e_Q=t_Q(),AvQ={" ":" ","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r","\t":"\\t"},QvQ=65535,BvQ=(A)=>{if(YvQ.test(A))return A;return r_Q==="win32"?`"${A.replaceAll('"','""')}"`:`'${A.replaceAll("'","'\\''")}'`},YvQ=/^[\w./-]+$/;import he from"node:process";function wv(){let{env:A}=he,{TERM:Q,TERM_PROGRAM:B}=A;if(he.platform!=="win32")return Q!=="linux";return Boolean(A.WT_SESSION)||Boolean(A.TERMINUS_SUBLIME)||A.ConEmuTask==="{cmd::Cmder}"||B==="Terminus-Sublime"||B==="vscode"||Q==="xterm-256color"||Q==="alacritty"||Q==="rxvt-unicode"||Q==="rxvt-unicode-256color"||A.TERMINAL_EMULATOR==="JetBrains-JediTerm"}var xe={circleQuestionMark:"(?)",questionMarkPrefix:"(?)",square:"█",squareDarkShade:"▓",squareMediumShade:"▒",squareLightShade:"░",squareTop:"▀",squareBottom:"▄",squareLeft:"▌",squareRight:"▐",squareCenter:"■",bullet:"●",dot:"․",ellipsis:"…",pointerSmall:"›",triangleUp:"▲",triangleUpSmall:"▴",triangleDown:"▼",triangleDownSmall:"▾",triangleLeftSmall:"◂",triangleRightSmall:"▸",home:"⌂",heart:"♥",musicNote:"♪",musicNoteBeamed:"♫",arrowUp:"↑",arrowDown:"↓",arrowLeft:"←",arrowRight:"→",arrowLeftRight:"↔",arrowUpDown:"↕",almostEqual:"≈",notEqual:"≠",lessOrEqual:"≤",greaterOrEqual:"≥",identical:"≡",infinity:"∞",subscriptZero:"₀",subscriptOne:"₁",subscriptTwo:"₂",subscriptThree:"₃",subscriptFour:"₄",subscriptFive:"₅",subscriptSix:"₆",subscriptSeven:"₇",subscriptEight:"₈",subscriptNine:"₉",oneHalf:"½",oneThird:"⅓",oneQuarter:"¼",oneFifth:"⅕",oneSixth:"⅙",oneEighth:"⅛",twoThirds:"⅔",twoFifths:"⅖",threeQuarters:"¾",threeFifths:"⅗",threeEighths:"⅜",fourFifths:"⅘",fiveSixths:"⅚",fiveEighths:"⅝",sevenEighths:"⅞",line:"─",lineBold:"━",lineDouble:"═",lineDashed0:"┄",lineDashed1:"┅",lineDashed2:"┈",lineDashed3:"┉",lineDashed4:"╌",lineDashed5:"╍",lineDashed6:"╴",lineDashed7:"╶",lineDashed8:"╸",lineDashed9:"╺",lineDashed10:"╼",lineDashed11:"╾",lineDashed12:"−",lineDashed13:"–",lineDashed14:"‐",lineDashed15:"⁃",lineVertical:"│",lineVerticalBold:"┃",lineVerticalDouble:"║",lineVerticalDashed0:"┆",lineVerticalDashed1:"┇",lineVerticalDashed2:"┊",lineVerticalDashed3:"┋",lineVerticalDashed4:"╎",lineVerticalDashed5:"╏",lineVerticalDashed6:"╵",lineVerticalDashed7:"╷",lineVerticalDashed8:"╹",lineVerticalDashed9:"╻",lineVerticalDashed10:"╽",lineVerticalDashed11:"╿",lineDownLeft:"┐",lineDownLeftArc:"╮",lineDownBoldLeftBold:"┓",lineDownBoldLeft:"┒",lineDownLeftBold:"┑",lineDownDoubleLeftDouble:"╗",lineDownDoubleLeft:"╖",lineDownLeftDouble:"╕",lineDownRight:"┌",lineDownRightArc:"╭",lineDownBoldRightBold:"┏",lineDownBoldRight:"┎",lineDownRightBold:"┍",lineDownDoubleRightDouble:"╔",lineDownDoubleRight:"╓",lineDownRightDouble:"╒",lineUpLeft:"┘",lineUpLeftArc:"╯",lineUpBoldLeftBold:"┛",lineUpBoldLeft:"┚",lineUpLeftBold:"┙",lineUpDoubleLeftDouble:"╝",lineUpDoubleLeft:"╜",lineUpLeftDouble:"╛",lineUpRight:"└",lineUpRightArc:"╰",lineUpBoldRightBold:"┗",lineUpBoldRight:"┖",lineUpRightBold:"┕",lineUpDoubleRightDouble:"╚",lineUpDoubleRight:"╙",lineUpRightDouble:"╘",lineUpDownLeft:"┤",lineUpBoldDownBoldLeftBold:"┫",lineUpBoldDownBoldLeft:"┨",lineUpDownLeftBold:"┥",lineUpBoldDownLeftBold:"┩",lineUpDownBoldLeftBold:"┪",lineUpDownBoldLeft:"┧",lineUpBoldDownLeft:"┦",lineUpDoubleDownDoubleLeftDouble:"╣",lineUpDoubleDownDoubleLeft:"╢",lineUpDownLeftDouble:"╡",lineUpDownRight:"├",lineUpBoldDownBoldRightBold:"┣",lineUpBoldDownBoldRight:"┠",lineUpDownRightBold:"┝",lineUpBoldDownRightBold:"┡",lineUpDownBoldRightBold:"┢",lineUpDownBoldRight:"┟",lineUpBoldDownRight:"┞",lineUpDoubleDownDoubleRightDouble:"╠",lineUpDoubleDownDoubleRight:"╟",lineUpDownRightDouble:"╞",lineDownLeftRight:"┬",lineDownBoldLeftBoldRightBold:"┳",lineDownLeftBoldRightBold:"┯",lineDownBoldLeftRight:"┰",lineDownBoldLeftBoldRight:"┱",lineDownBoldLeftRightBold:"┲",lineDownLeftRightBold:"┮",lineDownLeftBoldRight:"┭",lineDownDoubleLeftDoubleRightDouble:"╦",lineDownDoubleLeftRight:"╥",lineDownLeftDoubleRightDouble:"╤",lineUpLeftRight:"┴",lineUpBoldLeftBoldRightBold:"┻",lineUpLeftBoldRightBold:"┷",lineUpBoldLeftRight:"┸",lineUpBoldLeftBoldRight:"┹",lineUpBoldLeftRightBold:"┺",lineUpLeftRightBold:"┶",lineUpLeftBoldRight:"┵",lineUpDoubleLeftDoubleRightDouble:"╩",lineUpDoubleLeftRight:"╨",lineUpLeftDoubleRightDouble:"╧",lineUpDownLeftRight:"┼",lineUpBoldDownBoldLeftBoldRightBold:"╋",lineUpDownBoldLeftBoldRightBold:"╈",lineUpBoldDownLeftBoldRightBold:"╇",lineUpBoldDownBoldLeftRightBold:"╊",lineUpBoldDownBoldLeftBoldRight:"╉",lineUpBoldDownLeftRight:"╀",lineUpDownBoldLeftRight:"╁",lineUpDownLeftBoldRight:"┽",lineUpDownLeftRightBold:"┾",lineUpBoldDownBoldLeftRight:"╂",lineUpDownLeftBoldRightBold:"┿",lineUpBoldDownLeftBoldRight:"╃",lineUpBoldDownLeftRightBold:"╄",lineUpDownBoldLeftBoldRight:"╅",lineUpDownBoldLeftRightBold:"╆",lineUpDoubleDownDoubleLeftDoubleRightDouble:"╬",lineUpDoubleDownDoubleLeftRight:"╫",lineUpDownLeftDoubleRightDouble:"╪",lineCross:"╳",lineBackslash:"╲",lineSlash:"╱"},fe={tick:"✔",info:"ℹ",warning:"⚠",cross:"✘",squareSmall:"◻",squareSmallFilled:"◼",circle:"◯",circleFilled:"◉",circleDotted:"◌",circleDouble:"◎",circleCircle:"ⓞ",circleCross:"ⓧ",circlePipe:"Ⓘ",radioOn:"◉",radioOff:"◯",checkboxOn:"☒",checkboxOff:"☐",checkboxCircleOn:"ⓧ",checkboxCircleOff:"Ⓘ",pointer:"❯",triangleUpOutline:"△",triangleLeft:"◀",triangleRight:"▶",lozenge:"◆",lozengeOutline:"◇",hamburger:"☰",smiley:"㋡",mustache:"෴",star:"★",play:"▶",nodejs:"⬢",oneSeventh:"⅐",oneNinth:"⅑",oneTenth:"⅒"},JvQ={tick:"√",info:"i",warning:"‼",cross:"×",squareSmall:"□",squareSmallFilled:"■",circle:"( )",circleFilled:"(*)",circleDotted:"( )",circleDouble:"( )",circleCircle:"(○)",circleCross:"(×)",circlePipe:"(│)",radioOn:"(*)",radioOff:"( )",checkboxOn:"[×]",checkboxOff:"[ ]",checkboxCircleOn:"(×)",checkboxCircleOff:"( )",pointer:">",triangleUpOutline:"∆",triangleLeft:"◄",triangleRight:"►",lozenge:"♦",lozengeOutline:"◊",hamburger:"≡",smiley:"☺",mustache:"┌─┐",star:"✶",play:"►",nodejs:"♦",oneSeventh:"1/7",oneNinth:"1/9",oneTenth:"1/10"},CvQ={...xe,...fe},XvQ={...xe,...JvQ},GvQ=wv(),WvQ=GvQ?CvQ:XvQ,qz=WvQ,$AY=Object.entries(fe);import FvQ from"node:tty";var ZvQ=FvQ?.WriteStream?.prototype?.hasColors?.()??!1,rQ=(A,Q)=>{if(!ZvQ)return(J)=>J;let B=`\x1B[${A}m`,Y=`\x1B[${Q}m`;return(J)=>{let C=J+"",X=C.indexOf(Y);if(X===-1)return B+C+Y;let G=B,W=0;while(X!==-1)G+=C.slice(W,X)+B,W=X+Y.length,X=C.indexOf(Y,W);return G+=C.slice(W)+Y,G}},KAY=rQ(0,0),be=rQ(1,22),VAY=rQ(2,22),IAY=rQ(3,23),HAY=rQ(4,24),DAY=rQ(53,55),NAY=rQ(7,27),LAY=rQ(8,28),qAY=rQ(9,29),MAY=rQ(30,39),zAY=rQ(31,39),RAY=rQ(32,39),wAY=rQ(33,39),jAY=rQ(34,39),OAY=rQ(35,39),PAY=rQ(36,39),TAY=rQ(37,39),Mz=rQ(90,39),SAY=rQ(40,49),kAY=rQ(41,49),_AY=rQ(42,49),vAY=rQ(43,49),yAY=rQ(44,49),gAY=rQ(45,49),hAY=rQ(46,49),xAY=rQ(47,49),fAY=rQ(100,49),me=rQ(91,39),bAY=rQ(92,39),ue=rQ(93,39),mAY=rQ(94,39),uAY=rQ(95,39),dAY=rQ(96,39),cAY=rQ(97,39),lAY=rQ(101,49),pAY=rQ(102,49),iAY=rQ(103,49),nAY=rQ(104,49),sAY=rQ(105,49),rAY=rQ(106,49),aAY=rQ(107,49);var le=({type:A,message:Q,timestamp:B,piped:Y,commandId:J,result:{failed:C=!1}={},options:{reject:X=!0}})=>{let G=$vQ(B),W=UvQ[A]({failed:C,reject:X,piped:Y}),F=EvQ[A]({reject:X});return`${Mz(`[${G}]`)} ${Mz(`[${J}]`)} ${F(W)} ${F(Q)}`},$vQ=(A)=>`${zz(A.getHours(),2)}:${zz(A.getMinutes(),2)}:${zz(A.getSeconds(),2)}.${zz(A.getMilliseconds(),3)}`,zz=(A,Q)=>String(A).padStart(Q,"0"),de=({failed:A,reject:Q})=>{if(!A)return qz.tick;return Q?qz.cross:qz.warning},UvQ={command:({piped:A})=>A?"|":"$",output:()=>" ",ipc:()=>"*",error:de,duration:de},ce=(A)=>A,EvQ={command:()=>be,output:()=>ce,ipc:()=>ce,error:({reject:A})=>A?me:ue,duration:()=>Mz};var pe=(A,Q,B)=>{let Y=ve(Q,B);return A.map(({verboseLine:J,verboseObject:C})=>KvQ(J,C,Y)).filter((J)=>J!==void 0).map((J)=>VvQ(J)).join("")},KvQ=(A,Q,B)=>{if(B===void 0)return A;let Y=B(A,Q);if(typeof Y==="string")return Y},VvQ=(A)=>A.endsWith(` `)?A:`${A} `;var j1=({type:A,verboseMessage:Q,fdNumber:B,verboseInfo:Y,result:J})=>{let C=HvQ({type:A,result:J,verboseInfo:Y}),X=DvQ(Q,C),G=pe(X,Y,B);if(G!=="")console.warn(G.slice(0,-1))},HvQ=({type:A,result:Q,verboseInfo:{escapedCommand:B,commandId:Y,rawOptions:{piped:J=!1,...C}}})=>({type:A,escapedCommand:B,commandId:`${Y}`,timestamp:new Date,piped:J,result:Q,options:C}),DvQ=(A,Q)=>A.split(` -`).map((B)=>NvQ({...Q,message:B})),NvQ=(A)=>{return{verboseLine:le(A),verboseObject:A}},Rz=(A)=>{let Q=typeof A==="string"?A:IvQ(A);return WI(Q).replaceAll("\t"," ".repeat(LvQ))},LvQ=2;var ie=(A,Q)=>{if(!z4(Q))return;j1({type:"command",verboseMessage:A,verboseInfo:Q})};var ne=(A,Q,B)=>{zvQ(A);let Y=qvQ(A);return{verbose:A,escapedCommand:Q,commandId:Y,rawOptions:B}},qvQ=(A)=>z4({verbose:A})?MvQ++:void 0,MvQ=0n,zvQ=(A)=>{for(let Q of A){if(Q===!1)throw TypeError(`The "verbose: false" option was renamed to "verbose: 'none'".`);if(Q===!0)throw TypeError(`The "verbose: true" option was renamed to "verbose: 'short'".`);if(!Lz.includes(Q)&&!Nz(Q)){let B=Lz.map((Y)=>`'${Y}'`).join(", ");throw TypeError(`The "verbose" option must not be ${Q}. Allowed values are: ${B} or a function.`)}}};import{hrtime as se}from"node:process";var wz=()=>se.bigint(),jv=(A)=>Number(se.bigint()-A)/1e6;var jz=(A,Q,B)=>{let Y=wz(),{command:J,escapedCommand:C}=ye(A,Q),X=qv(B,"verbose"),G=ne(X,C,{...B});return ie(C,G),{command:J,escapedCommand:C,startTime:Y,verboseInfo:G}};var iQA=qA(hAA(),1);import FgQ from"node:path";import pQA from"node:process";import Sz from"node:process";import OF from"node:path";function Pz(A={}){let{env:Q=process.env,platform:B=process.platform}=A;if(B!=="win32")return"PATH";return Object.keys(Q).reverse().find((Y)=>Y.toUpperCase()==="PATH")||"Path"}import{promisify as evQ}from"node:util";import{execFile as AyQ,execFileSync as xQY}from"node:child_process";import xAA from"node:path";import{fileURLToPath as QyQ}from"node:url";var mQY=evQ(AyQ);function Tz(A){return A instanceof URL?QyQ(A):A}function fAA(A){return{*[Symbol.iterator](){let Q=xAA.resolve(Tz(A)),B;while(B!==Q)yield Q,B=Q,Q=xAA.resolve(Q,"..")}}}var ByQ=({cwd:A=Sz.cwd(),path:Q=Sz.env[Pz()],preferLocal:B=!0,execPath:Y=Sz.execPath,addExecPath:J=!0}={})=>{let C=OF.resolve(Tz(A)),X=[],G=Q.split(OF.delimiter);if(B)YyQ(X,G,C);if(J)JyQ(X,G,Y,C);return Q===""||Q===OF.delimiter?`${X.join(OF.delimiter)}${Q}`:[...X,Q].join(OF.delimiter)},YyQ=(A,Q,B)=>{for(let Y of fAA(B)){let J=OF.join(Y,"node_modules/.bin");if(!Q.includes(J))A.push(J)}},JyQ=(A,Q,B,Y)=>{let J=OF.resolve(Y,Tz(B),"..");if(!Q.includes(J))A.push(J)},bAA=({env:A=Sz.env,...Q}={})=>{A={...A};let B=Pz({env:A});return Q.path=A[B],A[B]=ByQ(Q),A};import{setTimeout as NyQ}from"node:timers/promises";var mAA=(A,Q,B)=>{let Y=B?_z:kz,J=A instanceof O1?{}:{cause:A};return new Y(Q,J)};class O1 extends Error{}var uAA=(A,Q)=>{Object.defineProperty(A.prototype,"name",{value:Q,writable:!0,enumerable:!1,configurable:!0}),Object.defineProperty(A.prototype,cAA,{value:!0,writable:!1,enumerable:!1,configurable:!1})},dAA=(A)=>vz(A)&&(cAA in A),cAA=Symbol("isExecaError"),vz=(A)=>Object.prototype.toString.call(A)==="[object Error]";class kz extends Error{}uAA(kz,kz.name);class _z extends Error{}uAA(_z,_z.name);import{constants as FI}from"node:os";import{constants as WyQ}from"node:os";var lAA=()=>{let A=hv-pAA+1;return Array.from({length:A},CyQ)},CyQ=(A,Q)=>({name:`SIGRT${Q+1}`,number:pAA+Q,action:"terminate",description:"Application-specific signal (realtime)",standard:"posix"}),pAA=34,hv=64;import{constants as XyQ}from"node:os";var iAA=[{name:"SIGHUP",number:1,action:"terminate",description:"Terminal closed",standard:"posix"},{name:"SIGINT",number:2,action:"terminate",description:"User interruption with CTRL-C",standard:"ansi"},{name:"SIGQUIT",number:3,action:"core",description:"User interruption with CTRL-\\",standard:"posix"},{name:"SIGILL",number:4,action:"core",description:"Invalid machine instruction",standard:"ansi"},{name:"SIGTRAP",number:5,action:"core",description:"Debugger breakpoint",standard:"posix"},{name:"SIGABRT",number:6,action:"core",description:"Aborted",standard:"ansi"},{name:"SIGIOT",number:6,action:"core",description:"Aborted",standard:"bsd"},{name:"SIGBUS",number:7,action:"core",description:"Bus error due to misaligned, non-existing address or paging error",standard:"bsd"},{name:"SIGEMT",number:7,action:"terminate",description:"Command should be emulated but is not implemented",standard:"other"},{name:"SIGFPE",number:8,action:"core",description:"Floating point arithmetic error",standard:"ansi"},{name:"SIGKILL",number:9,action:"terminate",description:"Forced termination",standard:"posix",forced:!0},{name:"SIGUSR1",number:10,action:"terminate",description:"Application-specific signal",standard:"posix"},{name:"SIGSEGV",number:11,action:"core",description:"Segmentation fault",standard:"ansi"},{name:"SIGUSR2",number:12,action:"terminate",description:"Application-specific signal",standard:"posix"},{name:"SIGPIPE",number:13,action:"terminate",description:"Broken pipe or socket",standard:"posix"},{name:"SIGALRM",number:14,action:"terminate",description:"Timeout or timer",standard:"posix"},{name:"SIGTERM",number:15,action:"terminate",description:"Termination",standard:"ansi"},{name:"SIGSTKFLT",number:16,action:"terminate",description:"Stack is empty or overflowed",standard:"other"},{name:"SIGCHLD",number:17,action:"ignore",description:"Child process terminated, paused or unpaused",standard:"posix"},{name:"SIGCLD",number:17,action:"ignore",description:"Child process terminated, paused or unpaused",standard:"other"},{name:"SIGCONT",number:18,action:"unpause",description:"Unpaused",standard:"posix",forced:!0},{name:"SIGSTOP",number:19,action:"pause",description:"Paused",standard:"posix",forced:!0},{name:"SIGTSTP",number:20,action:"pause",description:'Paused using CTRL-Z or "suspend"',standard:"posix"},{name:"SIGTTIN",number:21,action:"pause",description:"Background process cannot read terminal input",standard:"posix"},{name:"SIGBREAK",number:21,action:"terminate",description:"User interruption with CTRL-BREAK",standard:"other"},{name:"SIGTTOU",number:22,action:"pause",description:"Background process cannot write to terminal output",standard:"posix"},{name:"SIGURG",number:23,action:"ignore",description:"Socket received out-of-band data",standard:"bsd"},{name:"SIGXCPU",number:24,action:"core",description:"Process timed out",standard:"bsd"},{name:"SIGXFSZ",number:25,action:"core",description:"File too big",standard:"bsd"},{name:"SIGVTALRM",number:26,action:"terminate",description:"Timeout or timer",standard:"bsd"},{name:"SIGPROF",number:27,action:"terminate",description:"Timeout or timer",standard:"bsd"},{name:"SIGWINCH",number:28,action:"ignore",description:"Terminal window size changed",standard:"bsd"},{name:"SIGIO",number:29,action:"terminate",description:"I/O is available",standard:"other"},{name:"SIGPOLL",number:29,action:"terminate",description:"Watched event",standard:"other"},{name:"SIGINFO",number:29,action:"ignore",description:"Request for process information",standard:"other"},{name:"SIGPWR",number:30,action:"terminate",description:"Device running out of power",standard:"systemv"},{name:"SIGSYS",number:31,action:"core",description:"Invalid system call",standard:"other"},{name:"SIGUNUSED",number:31,action:"terminate",description:"Invalid system call",standard:"other"}];var xv=()=>{let A=lAA();return[...iAA,...A].map(GyQ)},GyQ=({name:A,number:Q,description:B,action:Y,forced:J=!1,standard:C})=>{let{signals:{[A]:X}}=XyQ,G=X!==void 0;return{name:A,number:G?X:Q,description:B,supported:G,action:Y,forced:J,standard:C}};var FyQ=()=>{let A=xv();return Object.fromEntries(A.map(ZyQ))},ZyQ=({name:A,number:Q,description:B,supported:Y,action:J,forced:C,standard:X})=>[A,{name:A,number:Q,description:B,supported:Y,action:J,forced:C,standard:X}],nAA=FyQ(),$yQ=()=>{let A=xv(),Q=hv+1,B=Array.from({length:Q},(Y,J)=>UyQ(J,A));return Object.assign({},...B)},UyQ=(A,Q)=>{let B=EyQ(A,Q);if(B===void 0)return{};let{name:Y,description:J,supported:C,action:X,forced:G,standard:W}=B;return{[A]:{name:Y,number:A,description:J,supported:C,action:X,forced:G,standard:W}}},EyQ=(A,Q)=>{let B=Q.find(({name:Y})=>WyQ.signals[Y]===A);if(B!==void 0)return B;return Q.find((Y)=>Y.number===A)},JBY=$yQ();var rAA=(A)=>{if(A===0)throw TypeError("Invalid option `killSignal`: 0 cannot be used.");return oAA(A,"option `killSignal`")},aAA=(A)=>A===0?A:oAA(A,"`subprocess.kill()`'s argument"),oAA=(A,Q)=>{if(Number.isInteger(A))return KyQ(A,Q);if(typeof A==="string")return IyQ(A,Q);throw TypeError(`Invalid ${Q} ${String(A)}: it must be a string or an integer. +`).map((B)=>NvQ({...Q,message:B})),NvQ=(A)=>{return{verboseLine:le(A),verboseObject:A}},Rz=(A)=>{let Q=typeof A==="string"?A:IvQ(A);return WI(Q).replaceAll("\t"," ".repeat(LvQ))},LvQ=2;var ie=(A,Q)=>{if(!R4(Q))return;j1({type:"command",verboseMessage:A,verboseInfo:Q})};var ne=(A,Q,B)=>{zvQ(A);let Y=qvQ(A);return{verbose:A,escapedCommand:Q,commandId:Y,rawOptions:B}},qvQ=(A)=>R4({verbose:A})?MvQ++:void 0,MvQ=0n,zvQ=(A)=>{for(let Q of A){if(Q===!1)throw TypeError(`The "verbose: false" option was renamed to "verbose: 'none'".`);if(Q===!0)throw TypeError(`The "verbose: true" option was renamed to "verbose: 'short'".`);if(!Lz.includes(Q)&&!Nz(Q)){let B=Lz.map((Y)=>`'${Y}'`).join(", ");throw TypeError(`The "verbose" option must not be ${Q}. Allowed values are: ${B} or a function.`)}}};import{hrtime as se}from"node:process";var wz=()=>se.bigint(),jv=(A)=>Number(se.bigint()-A)/1e6;var jz=(A,Q,B)=>{let Y=wz(),{command:J,escapedCommand:C}=ye(A,Q),X=qv(B,"verbose"),G=ne(X,C,{...B});return ie(C,G),{command:J,escapedCommand:C,startTime:Y,verboseInfo:G}};var iQA=qA(hAA(),1);import FgQ from"node:path";import pQA from"node:process";import Sz from"node:process";import OF from"node:path";function Pz(A={}){let{env:Q=process.env,platform:B=process.platform}=A;if(B!=="win32")return"PATH";return Object.keys(Q).reverse().find((Y)=>Y.toUpperCase()==="PATH")||"Path"}import{promisify as evQ}from"node:util";import{execFile as AyQ,execFileSync as xQY}from"node:child_process";import xAA from"node:path";import{fileURLToPath as QyQ}from"node:url";var mQY=evQ(AyQ);function Tz(A){return A instanceof URL?QyQ(A):A}function fAA(A){return{*[Symbol.iterator](){let Q=xAA.resolve(Tz(A)),B;while(B!==Q)yield Q,B=Q,Q=xAA.resolve(Q,"..")}}}var ByQ=({cwd:A=Sz.cwd(),path:Q=Sz.env[Pz()],preferLocal:B=!0,execPath:Y=Sz.execPath,addExecPath:J=!0}={})=>{let C=OF.resolve(Tz(A)),X=[],G=Q.split(OF.delimiter);if(B)YyQ(X,G,C);if(J)JyQ(X,G,Y,C);return Q===""||Q===OF.delimiter?`${X.join(OF.delimiter)}${Q}`:[...X,Q].join(OF.delimiter)},YyQ=(A,Q,B)=>{for(let Y of fAA(B)){let J=OF.join(Y,"node_modules/.bin");if(!Q.includes(J))A.push(J)}},JyQ=(A,Q,B,Y)=>{let J=OF.resolve(Y,Tz(B),"..");if(!Q.includes(J))A.push(J)},bAA=({env:A=Sz.env,...Q}={})=>{A={...A};let B=Pz({env:A});return Q.path=A[B],A[B]=ByQ(Q),A};import{setTimeout as NyQ}from"node:timers/promises";var mAA=(A,Q,B)=>{let Y=B?_z:kz,J=A instanceof O1?{}:{cause:A};return new Y(Q,J)};class O1 extends Error{}var uAA=(A,Q)=>{Object.defineProperty(A.prototype,"name",{value:Q,writable:!0,enumerable:!1,configurable:!0}),Object.defineProperty(A.prototype,cAA,{value:!0,writable:!1,enumerable:!1,configurable:!1})},dAA=(A)=>vz(A)&&(cAA in A),cAA=Symbol("isExecaError"),vz=(A)=>Object.prototype.toString.call(A)==="[object Error]";class kz extends Error{}uAA(kz,kz.name);class _z extends Error{}uAA(_z,_z.name);import{constants as FI}from"node:os";import{constants as WyQ}from"node:os";var lAA=()=>{let A=hv-pAA+1;return Array.from({length:A},CyQ)},CyQ=(A,Q)=>({name:`SIGRT${Q+1}`,number:pAA+Q,action:"terminate",description:"Application-specific signal (realtime)",standard:"posix"}),pAA=34,hv=64;import{constants as XyQ}from"node:os";var iAA=[{name:"SIGHUP",number:1,action:"terminate",description:"Terminal closed",standard:"posix"},{name:"SIGINT",number:2,action:"terminate",description:"User interruption with CTRL-C",standard:"ansi"},{name:"SIGQUIT",number:3,action:"core",description:"User interruption with CTRL-\\",standard:"posix"},{name:"SIGILL",number:4,action:"core",description:"Invalid machine instruction",standard:"ansi"},{name:"SIGTRAP",number:5,action:"core",description:"Debugger breakpoint",standard:"posix"},{name:"SIGABRT",number:6,action:"core",description:"Aborted",standard:"ansi"},{name:"SIGIOT",number:6,action:"core",description:"Aborted",standard:"bsd"},{name:"SIGBUS",number:7,action:"core",description:"Bus error due to misaligned, non-existing address or paging error",standard:"bsd"},{name:"SIGEMT",number:7,action:"terminate",description:"Command should be emulated but is not implemented",standard:"other"},{name:"SIGFPE",number:8,action:"core",description:"Floating point arithmetic error",standard:"ansi"},{name:"SIGKILL",number:9,action:"terminate",description:"Forced termination",standard:"posix",forced:!0},{name:"SIGUSR1",number:10,action:"terminate",description:"Application-specific signal",standard:"posix"},{name:"SIGSEGV",number:11,action:"core",description:"Segmentation fault",standard:"ansi"},{name:"SIGUSR2",number:12,action:"terminate",description:"Application-specific signal",standard:"posix"},{name:"SIGPIPE",number:13,action:"terminate",description:"Broken pipe or socket",standard:"posix"},{name:"SIGALRM",number:14,action:"terminate",description:"Timeout or timer",standard:"posix"},{name:"SIGTERM",number:15,action:"terminate",description:"Termination",standard:"ansi"},{name:"SIGSTKFLT",number:16,action:"terminate",description:"Stack is empty or overflowed",standard:"other"},{name:"SIGCHLD",number:17,action:"ignore",description:"Child process terminated, paused or unpaused",standard:"posix"},{name:"SIGCLD",number:17,action:"ignore",description:"Child process terminated, paused or unpaused",standard:"other"},{name:"SIGCONT",number:18,action:"unpause",description:"Unpaused",standard:"posix",forced:!0},{name:"SIGSTOP",number:19,action:"pause",description:"Paused",standard:"posix",forced:!0},{name:"SIGTSTP",number:20,action:"pause",description:'Paused using CTRL-Z or "suspend"',standard:"posix"},{name:"SIGTTIN",number:21,action:"pause",description:"Background process cannot read terminal input",standard:"posix"},{name:"SIGBREAK",number:21,action:"terminate",description:"User interruption with CTRL-BREAK",standard:"other"},{name:"SIGTTOU",number:22,action:"pause",description:"Background process cannot write to terminal output",standard:"posix"},{name:"SIGURG",number:23,action:"ignore",description:"Socket received out-of-band data",standard:"bsd"},{name:"SIGXCPU",number:24,action:"core",description:"Process timed out",standard:"bsd"},{name:"SIGXFSZ",number:25,action:"core",description:"File too big",standard:"bsd"},{name:"SIGVTALRM",number:26,action:"terminate",description:"Timeout or timer",standard:"bsd"},{name:"SIGPROF",number:27,action:"terminate",description:"Timeout or timer",standard:"bsd"},{name:"SIGWINCH",number:28,action:"ignore",description:"Terminal window size changed",standard:"bsd"},{name:"SIGIO",number:29,action:"terminate",description:"I/O is available",standard:"other"},{name:"SIGPOLL",number:29,action:"terminate",description:"Watched event",standard:"other"},{name:"SIGINFO",number:29,action:"ignore",description:"Request for process information",standard:"other"},{name:"SIGPWR",number:30,action:"terminate",description:"Device running out of power",standard:"systemv"},{name:"SIGSYS",number:31,action:"core",description:"Invalid system call",standard:"other"},{name:"SIGUNUSED",number:31,action:"terminate",description:"Invalid system call",standard:"other"}];var xv=()=>{let A=lAA();return[...iAA,...A].map(GyQ)},GyQ=({name:A,number:Q,description:B,action:Y,forced:J=!1,standard:C})=>{let{signals:{[A]:X}}=XyQ,G=X!==void 0;return{name:A,number:G?X:Q,description:B,supported:G,action:Y,forced:J,standard:C}};var FyQ=()=>{let A=xv();return Object.fromEntries(A.map(ZyQ))},ZyQ=({name:A,number:Q,description:B,supported:Y,action:J,forced:C,standard:X})=>[A,{name:A,number:Q,description:B,supported:Y,action:J,forced:C,standard:X}],nAA=FyQ(),$yQ=()=>{let A=xv(),Q=hv+1,B=Array.from({length:Q},(Y,J)=>UyQ(J,A));return Object.assign({},...B)},UyQ=(A,Q)=>{let B=EyQ(A,Q);if(B===void 0)return{};let{name:Y,description:J,supported:C,action:X,forced:G,standard:W}=B;return{[A]:{name:Y,number:A,description:J,supported:C,action:X,forced:G,standard:W}}},EyQ=(A,Q)=>{let B=Q.find(({name:Y})=>WyQ.signals[Y]===A);if(B!==void 0)return B;return Q.find((Y)=>Y.number===A)},JBY=$yQ();var rAA=(A)=>{if(A===0)throw TypeError("Invalid option `killSignal`: 0 cannot be used.");return oAA(A,"option `killSignal`")},aAA=(A)=>A===0?A:oAA(A,"`subprocess.kill()`'s argument"),oAA=(A,Q)=>{if(Number.isInteger(A))return KyQ(A,Q);if(typeof A==="string")return IyQ(A,Q);throw TypeError(`Invalid ${Q} ${String(A)}: it must be a string or an integer. ${fv()}`)},KyQ=(A,Q)=>{if(sAA.has(A))return sAA.get(A);throw TypeError(`Invalid ${Q} ${A}: this signal integer does not exist. ${fv()}`)},VyQ=()=>new Map(Object.entries(FI.signals).reverse().map(([A,Q])=>[Q,A])),sAA=VyQ(),IyQ=(A,Q)=>{if(A in FI.signals)return A;if(A.toUpperCase()in FI.signals)throw TypeError(`Invalid ${Q} '${A}': please rename it to '${A.toUpperCase()}'.`);throw TypeError(`Invalid ${Q} '${A}': this signal name does not exist. ${fv()}`)},fv=()=>`Available signal names: ${HyQ()}. -Available signal numbers: ${DyQ()}.`,HyQ=()=>Object.keys(FI.signals).sort().map((A)=>`'${A}'`).join(", "),DyQ=()=>[...new Set(Object.values(FI.signals).sort((A,Q)=>A-Q))].join(", "),yz=(A)=>nAA[A].description;var tAA=(A)=>{if(A===!1)return A;if(A===!0)return LyQ;if(!Number.isFinite(A)||A<0)throw TypeError(`Expected the \`forceKillAfterDelay\` option to be a non-negative integer, got \`${A}\` (${typeof A})`);return A},LyQ=5000,eAA=({kill:A,options:{forceKillAfterDelay:Q,killSignal:B},onInternalError:Y,context:J,controller:C},X,G)=>{let{signal:W,error:F}=qyQ(X,G,B);MyQ(F,Y);let Z=A(W);return zyQ({kill:A,signal:W,forceKillAfterDelay:Q,killSignal:B,killResult:Z,context:J,controller:C}),Z},qyQ=(A,Q,B)=>{let[Y=B,J]=vz(A)?[void 0,A]:[A,Q];if(typeof Y!=="string"&&!Number.isInteger(Y))throw TypeError(`The first argument must be an error instance or a signal name string/integer: ${String(Y)}`);if(J!==void 0&&!vz(J))throw TypeError(`The second argument is optional. If specified, it must be an error instance: ${J}`);return{signal:aAA(Y),error:J}},MyQ=(A,Q)=>{if(A!==void 0)Q.reject(A)},zyQ=async({kill:A,signal:Q,forceKillAfterDelay:B,killSignal:Y,killResult:J,context:C,controller:X})=>{if(Q===Y&&J)bv({kill:A,forceKillAfterDelay:B,context:C,controllerSignal:X.signal})},bv=async({kill:A,forceKillAfterDelay:Q,context:B,controllerSignal:Y})=>{if(Q===!1)return;try{if(await NyQ(Q,void 0,{signal:Y}),A("SIGKILL"))B.isForcefullyTerminated??=!0}catch{}};import{once as RyQ}from"node:events";var gz=async(A,Q)=>{if(!A.aborted)await RyQ(A,"abort",{signal:Q})};var AQA=({cancelSignal:A})=>{if(A!==void 0&&Object.prototype.toString.call(A)!=="[object AbortSignal]")throw Error(`The \`cancelSignal\` option must be an AbortSignal: ${String(A)}`)},QQA=({subprocess:A,cancelSignal:Q,gracefulCancel:B,context:Y,controller:J})=>Q===void 0||B?[]:[wyQ(A,Q,Y,J)],wyQ=async(A,Q,B,{signal:Y})=>{throw await gz(Q,Y),B.terminationReason??="cancel",A.kill(),Q.reason};import{scheduler as iyQ}from"node:timers/promises";import{promisify as cyQ}from"node:util";var O4=({methodName:A,isSubprocess:Q,ipc:B,isConnected:Y})=>{jyQ(A,Q,B),mv(A,Q,Y)},jyQ=(A,Q,B)=>{if(!B)throw Error(`${MC(A,Q)} can only be used if the \`ipc\` option is \`true\`.`)},mv=(A,Q,B)=>{if(!B)throw Error(`${MC(A,Q)} cannot be used: the ${aG(Q)} has already exited or disconnected.`)},BQA=(A)=>{throw Error(`${MC("getOneMessage",A)} could not complete: the ${aG(A)} exited or disconnected.`)},YQA=(A)=>{throw Error(`${MC("sendMessage",A)} failed: the ${aG(A)} is sending a message too, instead of listening to incoming messages. +Available signal numbers: ${DyQ()}.`,HyQ=()=>Object.keys(FI.signals).sort().map((A)=>`'${A}'`).join(", "),DyQ=()=>[...new Set(Object.values(FI.signals).sort((A,Q)=>A-Q))].join(", "),yz=(A)=>nAA[A].description;var tAA=(A)=>{if(A===!1)return A;if(A===!0)return LyQ;if(!Number.isFinite(A)||A<0)throw TypeError(`Expected the \`forceKillAfterDelay\` option to be a non-negative integer, got \`${A}\` (${typeof A})`);return A},LyQ=5000,eAA=({kill:A,options:{forceKillAfterDelay:Q,killSignal:B},onInternalError:Y,context:J,controller:C},X,G)=>{let{signal:W,error:F}=qyQ(X,G,B);MyQ(F,Y);let Z=A(W);return zyQ({kill:A,signal:W,forceKillAfterDelay:Q,killSignal:B,killResult:Z,context:J,controller:C}),Z},qyQ=(A,Q,B)=>{let[Y=B,J]=vz(A)?[void 0,A]:[A,Q];if(typeof Y!=="string"&&!Number.isInteger(Y))throw TypeError(`The first argument must be an error instance or a signal name string/integer: ${String(Y)}`);if(J!==void 0&&!vz(J))throw TypeError(`The second argument is optional. If specified, it must be an error instance: ${J}`);return{signal:aAA(Y),error:J}},MyQ=(A,Q)=>{if(A!==void 0)Q.reject(A)},zyQ=async({kill:A,signal:Q,forceKillAfterDelay:B,killSignal:Y,killResult:J,context:C,controller:X})=>{if(Q===Y&&J)bv({kill:A,forceKillAfterDelay:B,context:C,controllerSignal:X.signal})},bv=async({kill:A,forceKillAfterDelay:Q,context:B,controllerSignal:Y})=>{if(Q===!1)return;try{if(await NyQ(Q,void 0,{signal:Y}),A("SIGKILL"))B.isForcefullyTerminated??=!0}catch{}};import{once as RyQ}from"node:events";var gz=async(A,Q)=>{if(!A.aborted)await RyQ(A,"abort",{signal:Q})};var AQA=({cancelSignal:A})=>{if(A!==void 0&&Object.prototype.toString.call(A)!=="[object AbortSignal]")throw Error(`The \`cancelSignal\` option must be an AbortSignal: ${String(A)}`)},QQA=({subprocess:A,cancelSignal:Q,gracefulCancel:B,context:Y,controller:J})=>Q===void 0||B?[]:[wyQ(A,Q,Y,J)],wyQ=async(A,Q,B,{signal:Y})=>{throw await gz(Q,Y),B.terminationReason??="cancel",A.kill(),Q.reason};import{scheduler as iyQ}from"node:timers/promises";import{promisify as cyQ}from"node:util";var P4=({methodName:A,isSubprocess:Q,ipc:B,isConnected:Y})=>{jyQ(A,Q,B),mv(A,Q,Y)},jyQ=(A,Q,B)=>{if(!B)throw Error(`${MC(A,Q)} can only be used if the \`ipc\` option is \`true\`.`)},mv=(A,Q,B)=>{if(!B)throw Error(`${MC(A,Q)} cannot be used: the ${aG(Q)} has already exited or disconnected.`)},BQA=(A)=>{throw Error(`${MC("getOneMessage",A)} could not complete: the ${aG(A)} exited or disconnected.`)},YQA=(A)=>{throw Error(`${MC("sendMessage",A)} failed: the ${aG(A)} is sending a message too, instead of listening to incoming messages. This can be fixed by both sending a message and listening to incoming messages at the same time: const [receivedMessage] = await Promise.all([ ${MC("getOneMessage",A)}, ${MC("sendMessage",A,"message, {strict: true}")}, -]);`)},hz=(A,Q)=>Error(`${MC("sendMessage",Q)} failed when sending an acknowledgment response to the ${aG(Q)}.`,{cause:A}),JQA=(A)=>{throw Error(`${MC("sendMessage",A)} failed: the ${aG(A)} is not listening to incoming messages.`)},CQA=(A)=>{throw Error(`${MC("sendMessage",A)} failed: the ${aG(A)} exited without listening to incoming messages.`)},XQA=()=>Error(`\`cancelSignal\` aborted: the ${aG(!0)} disconnected.`),GQA=()=>{throw Error("`getCancelSignal()` cannot be used without setting the `cancelSignal` subprocess option.")},WQA=({error:A,methodName:Q,isSubprocess:B})=>{if(A.code==="EPIPE")throw Error(`${MC(Q,B)} cannot be used: the ${aG(B)} is disconnecting.`,{cause:A})},FQA=({error:A,methodName:Q,isSubprocess:B,message:Y})=>{if(OyQ(A))throw Error(`${MC(Q,B)}'s argument type is invalid: the message cannot be serialized: ${String(Y)}.`,{cause:A})},OyQ=({code:A,message:Q})=>PyQ.has(A)||TyQ.some((B)=>Q.includes(B)),PyQ=new Set(["ERR_MISSING_ARGS","ERR_INVALID_ARG_TYPE"]),TyQ=["could not be cloned","circular structure","call stack size exceeded"],MC=(A,Q,B="")=>A==="cancelSignal"?"`cancelSignal`'s `controller.abort()`":`${SyQ(Q)}${A}(${B})`,SyQ=(A)=>A?"":"subprocess.",aG=(A)=>A?"parent process":"subprocess",P4=(A)=>{if(A.connected)A.disconnect()};var P1=()=>{let A={},Q=new Promise((B,Y)=>{Object.assign(A,{resolve:B,reject:Y})});return Object.assign(Q,A)};var fz=(A,Q="stdin")=>{let{options:Y,fileDescriptors:J}=T1.get(A),C=ZQA(J,Q,!0),X=A.stdio[C];if(X===null)throw TypeError($QA(C,Q,Y,!0));return X},T4=(A,Q="stdout")=>{let{options:Y,fileDescriptors:J}=T1.get(A),C=ZQA(J,Q,!1),X=C==="all"?A.all:A.stdio[C];if(X===null||X===void 0)throw TypeError($QA(C,Q,Y,!1));return X},T1=new WeakMap,ZQA=(A,Q,B)=>{let Y=kyQ(Q,B);return _yQ(Y,Q,B,A),Y},kyQ=(A,Q)=>{let B=Mv(A);if(B!==void 0)return B;let{validOptions:Y,defaultValue:J}=Q?{validOptions:'"stdin"',defaultValue:"stdin"}:{validOptions:'"stdout", "stderr", "all"',defaultValue:"stdout"};throw TypeError(`"${ZI(Q)}" must not be "${A}". +]);`)},hz=(A,Q)=>Error(`${MC("sendMessage",Q)} failed when sending an acknowledgment response to the ${aG(Q)}.`,{cause:A}),JQA=(A)=>{throw Error(`${MC("sendMessage",A)} failed: the ${aG(A)} is not listening to incoming messages.`)},CQA=(A)=>{throw Error(`${MC("sendMessage",A)} failed: the ${aG(A)} exited without listening to incoming messages.`)},XQA=()=>Error(`\`cancelSignal\` aborted: the ${aG(!0)} disconnected.`),GQA=()=>{throw Error("`getCancelSignal()` cannot be used without setting the `cancelSignal` subprocess option.")},WQA=({error:A,methodName:Q,isSubprocess:B})=>{if(A.code==="EPIPE")throw Error(`${MC(Q,B)} cannot be used: the ${aG(B)} is disconnecting.`,{cause:A})},FQA=({error:A,methodName:Q,isSubprocess:B,message:Y})=>{if(OyQ(A))throw Error(`${MC(Q,B)}'s argument type is invalid: the message cannot be serialized: ${String(Y)}.`,{cause:A})},OyQ=({code:A,message:Q})=>PyQ.has(A)||TyQ.some((B)=>Q.includes(B)),PyQ=new Set(["ERR_MISSING_ARGS","ERR_INVALID_ARG_TYPE"]),TyQ=["could not be cloned","circular structure","call stack size exceeded"],MC=(A,Q,B="")=>A==="cancelSignal"?"`cancelSignal`'s `controller.abort()`":`${SyQ(Q)}${A}(${B})`,SyQ=(A)=>A?"":"subprocess.",aG=(A)=>A?"parent process":"subprocess",T4=(A)=>{if(A.connected)A.disconnect()};var P1=()=>{let A={},Q=new Promise((B,Y)=>{Object.assign(A,{resolve:B,reject:Y})});return Object.assign(Q,A)};var fz=(A,Q="stdin")=>{let{options:Y,fileDescriptors:J}=T1.get(A),C=ZQA(J,Q,!0),X=A.stdio[C];if(X===null)throw TypeError($QA(C,Q,Y,!0));return X},S4=(A,Q="stdout")=>{let{options:Y,fileDescriptors:J}=T1.get(A),C=ZQA(J,Q,!1),X=C==="all"?A.all:A.stdio[C];if(X===null||X===void 0)throw TypeError($QA(C,Q,Y,!1));return X},T1=new WeakMap,ZQA=(A,Q,B)=>{let Y=kyQ(Q,B);return _yQ(Y,Q,B,A),Y},kyQ=(A,Q)=>{let B=Mv(A);if(B!==void 0)return B;let{validOptions:Y,defaultValue:J}=Q?{validOptions:'"stdin"',defaultValue:"stdin"}:{validOptions:'"stdout", "stderr", "all"',defaultValue:"stdout"};throw TypeError(`"${ZI(Q)}" must not be "${A}". It must be ${Y} or "fd3", "fd4" (and so on). It is optional and defaults to "${J}".`)},_yQ=(A,Q,B,Y)=>{let J=Y[UQA(A)];if(J===void 0)throw TypeError(`"${ZI(B)}" must not be ${Q}. That file descriptor does not exist. Please set the "stdio" option to ensure that file descriptor exists.`);if(J.direction==="input"&&!B)throw TypeError(`"${ZI(B)}" must not be ${Q}. It must be a readable stream, not writable.`);if(J.direction!=="input"&&B)throw TypeError(`"${ZI(B)}" must not be ${Q}. It must be a writable stream, not readable.`)},$QA=(A,Q,B,Y)=>{if(A==="all"&&!B.all)return`The "all" option must be true to use "from: 'all'".`;let{optionName:J,optionValue:C}=vyQ(A,B);return`The "${J}: ${xz(C)}" option is incompatible with using "${ZI(Y)}: ${xz(Q)}". -Please set this option with "pipe" instead.`},vyQ=(A,{stdin:Q,stdout:B,stderr:Y,stdio:J})=>{let C=UQA(A);if(C===0&&Q!==void 0)return{optionName:"stdin",optionValue:Q};if(C===1&&B!==void 0)return{optionName:"stdout",optionValue:B};if(C===2&&Y!==void 0)return{optionName:"stderr",optionValue:Y};return{optionName:`stdio[${C}]`,optionValue:J[C]}},UQA=(A)=>A==="all"?1:A,ZI=(A)=>A?"to":"from",xz=(A)=>{if(typeof A==="string")return`'${A}'`;return typeof A==="number"?`${A}`:"Stream"};import{once as byQ}from"node:events";import{addAbortListener as yyQ}from"node:events";var PF=(A,Q,B)=>{let Y=A.getMaxListeners();if(Y===0||Y===Number.POSITIVE_INFINITY)return;A.setMaxListeners(Y+Q),yyQ(B,()=>{A.setMaxListeners(A.getMaxListeners()-Q)})};import{EventEmitter as xyQ}from"node:events";import{once as gyQ}from"node:events";import{scheduler as hyQ}from"node:timers/promises";var bz=(A,Q)=>{if(Q)uv(A)},uv=(A)=>{A.refCounted()},mz=(A,Q)=>{if(Q)dv(A)},dv=(A)=>{A.unrefCounted()},EQA=(A,Q)=>{if(Q)dv(A),dv(A)},KQA=(A,Q)=>{if(Q)uv(A),uv(A)};var VQA=async({anyProcess:A,channel:Q,isSubprocess:B,ipcEmitter:Y},J)=>{if(DQA(J)||LQA(J))return;if(!uz.has(A))uz.set(A,[]);let C=uz.get(A);if(C.push(J),C.length>1)return;while(C.length>0){await NQA(A,Y,J),await hyQ.yield();let X=await HQA({wrappedMessage:C[0],anyProcess:A,channel:Q,isSubprocess:B,ipcEmitter:Y});C.shift(),Y.emit("message",X),Y.emit("message:done")}},IQA=async({anyProcess:A,channel:Q,isSubprocess:B,ipcEmitter:Y,boundOnMessage:J})=>{cv();let C=uz.get(A);while(C?.length>0)await gyQ(Y,"message:done");A.removeListener("message",J),KQA(Q,B),Y.connected=!1,Y.emit("disconnect")},uz=new WeakMap;var oG=(A,Q,B)=>{if(dz.has(A))return dz.get(A);let Y=new xyQ;return Y.connected=!0,dz.set(A,Y),fyQ({ipcEmitter:Y,anyProcess:A,channel:Q,isSubprocess:B}),Y},dz=new WeakMap,fyQ=({ipcEmitter:A,anyProcess:Q,channel:B,isSubprocess:Y})=>{let J=VQA.bind(void 0,{anyProcess:Q,channel:B,isSubprocess:Y,ipcEmitter:A});Q.on("message",J),Q.once("disconnect",IQA.bind(void 0,{anyProcess:Q,channel:B,isSubprocess:Y,ipcEmitter:A,boundOnMessage:J})),EQA(B,Y)},cz=(A)=>{let Q=dz.get(A);return Q===void 0?A.channel!==null:Q.connected};var qQA=({anyProcess:A,channel:Q,isSubprocess:B,message:Y,strict:J})=>{if(!J)return Y;let C=oG(A,Q,B),X=iz(A,C);return{id:myQ++,type:pz,message:Y,hasListeners:X}},myQ=0n,MQA=(A,Q)=>{if(Q?.type!==pz||Q.hasListeners)return;for(let{id:B}of A)if(B!==void 0)lz[B].resolve({isDeadlock:!0,hasListeners:!1})},HQA=async({wrappedMessage:A,anyProcess:Q,channel:B,isSubprocess:Y,ipcEmitter:J})=>{if(A?.type!==pz||!Q.connected)return A;let{id:C,message:X}=A,G={id:C,type:RQA,message:iz(Q,J)};try{await nz({anyProcess:Q,channel:B,isSubprocess:Y,ipc:!0},G)}catch(W){J.emit("strict:error",W)}return X},DQA=(A)=>{if(A?.type!==RQA)return!1;let{id:Q,message:B}=A;return lz[Q]?.resolve({isDeadlock:!1,hasListeners:B}),!0},zQA=async(A,Q,B)=>{if(A?.type!==pz)return;let Y=P1();lz[A.id]=Y;let J=new AbortController;try{let{isDeadlock:C,hasListeners:X}=await Promise.race([Y,uyQ(Q,B,J)]);if(C)YQA(B);if(!X)JQA(B)}finally{J.abort(),delete lz[A.id]}},lz={},uyQ=async(A,Q,{signal:B})=>{PF(A,1,B),await byQ(A,"disconnect",{signal:B}),CQA(Q)},pz="execa:ipc:request",RQA="execa:ipc:response";var wQA=(A,Q,B)=>{if(!$I.has(A))$I.set(A,new Set);let Y=$I.get(A),J=P1(),C=B?Q.id:void 0,X={onMessageSent:J,id:C};return Y.add(X),{outgoingMessages:Y,outgoingMessage:X}},jQA=({outgoingMessages:A,outgoingMessage:Q})=>{A.delete(Q),Q.onMessageSent.resolve()},NQA=async(A,Q,B)=>{while(!iz(A,Q)&&$I.get(A)?.size>0){let Y=[...$I.get(A)];MQA(Y,B),await Promise.all(Y.map(({onMessageSent:J})=>J))}},$I=new WeakMap,iz=(A,Q)=>Q.listenerCount("message")>dyQ(A),dyQ=(A)=>T1.has(A)&&!aX(T1.get(A).options.buffer,"ipc")?1:0;var nz=({anyProcess:A,channel:Q,isSubprocess:B,ipc:Y},J,{strict:C=!1}={})=>{return O4({methodName:"sendMessage",isSubprocess:B,ipc:Y,isConnected:A.connected}),lyQ({anyProcess:A,channel:Q,methodName:"sendMessage",isSubprocess:B,message:J,strict:C})},lyQ=async({anyProcess:A,channel:Q,methodName:B,isSubprocess:Y,message:J,strict:C})=>{let X=qQA({anyProcess:A,channel:Q,isSubprocess:Y,message:J,strict:C}),G=wQA(A,X,C);try{await pv({anyProcess:A,methodName:B,isSubprocess:Y,wrappedMessage:X,message:J})}catch(W){throw P4(A),W}finally{jQA(G)}},pv=async({anyProcess:A,methodName:Q,isSubprocess:B,wrappedMessage:Y,message:J})=>{let C=pyQ(A);try{await Promise.all([zQA(Y,A,B),C(Y)])}catch(X){throw WQA({error:X,methodName:Q,isSubprocess:B}),FQA({error:X,methodName:Q,isSubprocess:B,message:J}),X}},pyQ=(A)=>{if(lv.has(A))return lv.get(A);let Q=cyQ(A.send.bind(A));return lv.set(A,Q),Q},lv=new WeakMap;var PQA=(A,Q)=>{return mv("cancelSignal",!1,A.connected),pv({anyProcess:A,methodName:"cancelSignal",isSubprocess:!1,wrappedMessage:{type:SQA,message:Q},message:Q})},TQA=async({anyProcess:A,channel:Q,isSubprocess:B,ipc:Y})=>{return await nyQ({anyProcess:A,channel:Q,isSubprocess:B,ipc:Y}),iv.signal},nyQ=async({anyProcess:A,channel:Q,isSubprocess:B,ipc:Y})=>{if(OQA)return;if(OQA=!0,!Y){GQA();return}if(Q===null){cv();return}oG(A,Q,B),await iyQ.yield()},OQA=!1,LQA=(A)=>{if(A?.type!==SQA)return!1;return iv.abort(A.message),!0},SQA="execa:ipc:cancel",cv=()=>{iv.abort(XQA())},iv=new AbortController;var kQA=({gracefulCancel:A,cancelSignal:Q,ipc:B,serialization:Y})=>{if(!A)return;if(Q===void 0)throw Error("The `cancelSignal` option must be defined when setting the `gracefulCancel` option.");if(!B)throw Error("The `ipc` option cannot be false when setting the `gracefulCancel` option.");if(Y==="json")throw Error("The `serialization` option cannot be 'json' when setting the `gracefulCancel` option.")},_QA=({subprocess:A,cancelSignal:Q,gracefulCancel:B,forceKillAfterDelay:Y,context:J,controller:C})=>B?[syQ({subprocess:A,cancelSignal:Q,forceKillAfterDelay:Y,context:J,controller:C})]:[],syQ=async({subprocess:A,cancelSignal:Q,forceKillAfterDelay:B,context:Y,controller:{signal:J}})=>{await gz(Q,J);let C=ryQ(Q);throw await PQA(A,C),bv({kill:A.kill,forceKillAfterDelay:B,context:Y,controllerSignal:J}),Y.terminationReason??="gracefulCancel",Q.reason},ryQ=({reason:A})=>{if(!(A instanceof DOMException))return A;let Q=Error(A.message);return Object.defineProperty(Q,"stack",{value:A.stack,enumerable:!1,configurable:!0,writable:!0}),Q};import{setTimeout as ayQ}from"node:timers/promises";var vQA=({timeout:A})=>{if(A!==void 0&&(!Number.isFinite(A)||A<0))throw TypeError(`Expected the \`timeout\` option to be a non-negative integer, got \`${A}\` (${typeof A})`)},yQA=(A,Q,B,Y)=>Q===0||Q===void 0?[]:[oyQ(A,Q,B,Y)],oyQ=async(A,Q,B,{signal:Y})=>{throw await ayQ(Q,void 0,{signal:Y}),B.terminationReason??="timeout",A.kill(),new O1};import{execPath as tyQ,execArgv as eyQ}from"node:process";import gQA from"node:path";var hQA=({options:A})=>{if(A.node===!1)throw TypeError('The "node" option cannot be false with `execaNode()`.');return{options:{...A,node:!0}}},xQA=(A,Q,{node:B=!1,nodePath:Y=tyQ,nodeOptions:J=eyQ.filter((W)=>!W.startsWith("--inspect")),cwd:C,execPath:X,...G})=>{if(X!==void 0)throw TypeError('The "execPath" option has been removed. Please use the "nodePath" option instead.');let W=M4(Y,'The "nodePath" option'),F=gQA.resolve(C,W),Z={...G,nodePath:F,node:B,cwd:C};if(!B)return[A,Q,Z];if(gQA.basename(A,".exe")==="node")throw TypeError('When the "node" option is true, the first argument does not need to be "node".');return[F,[...J,A,...Q],{ipc:!0,...Z,shell:!1}]};import{serialize as AgQ}from"node:v8";var fQA=({ipcInput:A,ipc:Q,serialization:B})=>{if(A===void 0)return;if(!Q)throw Error("The `ipcInput` option cannot be set unless the `ipc` option is `true`.");YgQ[B](A)},QgQ=(A)=>{try{AgQ(A)}catch(Q){throw Error("The `ipcInput` option is not serializable with a structured clone.",{cause:Q})}},BgQ=(A)=>{try{JSON.stringify(A)}catch(Q){throw Error("The `ipcInput` option is not serializable with JSON.",{cause:Q})}},YgQ={advanced:QgQ,json:BgQ},bQA=async(A,Q)=>{if(Q===void 0)return;await A.sendMessage(Q)};var uQA=({encoding:A})=>{if(nv.has(A))return;let Q=CgQ(A);if(Q!==void 0)throw TypeError(`Invalid option \`encoding: ${sz(A)}\`. +Please set this option with "pipe" instead.`},vyQ=(A,{stdin:Q,stdout:B,stderr:Y,stdio:J})=>{let C=UQA(A);if(C===0&&Q!==void 0)return{optionName:"stdin",optionValue:Q};if(C===1&&B!==void 0)return{optionName:"stdout",optionValue:B};if(C===2&&Y!==void 0)return{optionName:"stderr",optionValue:Y};return{optionName:`stdio[${C}]`,optionValue:J[C]}},UQA=(A)=>A==="all"?1:A,ZI=(A)=>A?"to":"from",xz=(A)=>{if(typeof A==="string")return`'${A}'`;return typeof A==="number"?`${A}`:"Stream"};import{once as byQ}from"node:events";import{addAbortListener as yyQ}from"node:events";var PF=(A,Q,B)=>{let Y=A.getMaxListeners();if(Y===0||Y===Number.POSITIVE_INFINITY)return;A.setMaxListeners(Y+Q),yyQ(B,()=>{A.setMaxListeners(A.getMaxListeners()-Q)})};import{EventEmitter as xyQ}from"node:events";import{once as gyQ}from"node:events";import{scheduler as hyQ}from"node:timers/promises";var bz=(A,Q)=>{if(Q)uv(A)},uv=(A)=>{A.refCounted()},mz=(A,Q)=>{if(Q)dv(A)},dv=(A)=>{A.unrefCounted()},EQA=(A,Q)=>{if(Q)dv(A),dv(A)},KQA=(A,Q)=>{if(Q)uv(A),uv(A)};var VQA=async({anyProcess:A,channel:Q,isSubprocess:B,ipcEmitter:Y},J)=>{if(DQA(J)||LQA(J))return;if(!uz.has(A))uz.set(A,[]);let C=uz.get(A);if(C.push(J),C.length>1)return;while(C.length>0){await NQA(A,Y,J),await hyQ.yield();let X=await HQA({wrappedMessage:C[0],anyProcess:A,channel:Q,isSubprocess:B,ipcEmitter:Y});C.shift(),Y.emit("message",X),Y.emit("message:done")}},IQA=async({anyProcess:A,channel:Q,isSubprocess:B,ipcEmitter:Y,boundOnMessage:J})=>{cv();let C=uz.get(A);while(C?.length>0)await gyQ(Y,"message:done");A.removeListener("message",J),KQA(Q,B),Y.connected=!1,Y.emit("disconnect")},uz=new WeakMap;var oG=(A,Q,B)=>{if(dz.has(A))return dz.get(A);let Y=new xyQ;return Y.connected=!0,dz.set(A,Y),fyQ({ipcEmitter:Y,anyProcess:A,channel:Q,isSubprocess:B}),Y},dz=new WeakMap,fyQ=({ipcEmitter:A,anyProcess:Q,channel:B,isSubprocess:Y})=>{let J=VQA.bind(void 0,{anyProcess:Q,channel:B,isSubprocess:Y,ipcEmitter:A});Q.on("message",J),Q.once("disconnect",IQA.bind(void 0,{anyProcess:Q,channel:B,isSubprocess:Y,ipcEmitter:A,boundOnMessage:J})),EQA(B,Y)},cz=(A)=>{let Q=dz.get(A);return Q===void 0?A.channel!==null:Q.connected};var qQA=({anyProcess:A,channel:Q,isSubprocess:B,message:Y,strict:J})=>{if(!J)return Y;let C=oG(A,Q,B),X=iz(A,C);return{id:myQ++,type:pz,message:Y,hasListeners:X}},myQ=0n,MQA=(A,Q)=>{if(Q?.type!==pz||Q.hasListeners)return;for(let{id:B}of A)if(B!==void 0)lz[B].resolve({isDeadlock:!0,hasListeners:!1})},HQA=async({wrappedMessage:A,anyProcess:Q,channel:B,isSubprocess:Y,ipcEmitter:J})=>{if(A?.type!==pz||!Q.connected)return A;let{id:C,message:X}=A,G={id:C,type:RQA,message:iz(Q,J)};try{await nz({anyProcess:Q,channel:B,isSubprocess:Y,ipc:!0},G)}catch(W){J.emit("strict:error",W)}return X},DQA=(A)=>{if(A?.type!==RQA)return!1;let{id:Q,message:B}=A;return lz[Q]?.resolve({isDeadlock:!1,hasListeners:B}),!0},zQA=async(A,Q,B)=>{if(A?.type!==pz)return;let Y=P1();lz[A.id]=Y;let J=new AbortController;try{let{isDeadlock:C,hasListeners:X}=await Promise.race([Y,uyQ(Q,B,J)]);if(C)YQA(B);if(!X)JQA(B)}finally{J.abort(),delete lz[A.id]}},lz={},uyQ=async(A,Q,{signal:B})=>{PF(A,1,B),await byQ(A,"disconnect",{signal:B}),CQA(Q)},pz="execa:ipc:request",RQA="execa:ipc:response";var wQA=(A,Q,B)=>{if(!$I.has(A))$I.set(A,new Set);let Y=$I.get(A),J=P1(),C=B?Q.id:void 0,X={onMessageSent:J,id:C};return Y.add(X),{outgoingMessages:Y,outgoingMessage:X}},jQA=({outgoingMessages:A,outgoingMessage:Q})=>{A.delete(Q),Q.onMessageSent.resolve()},NQA=async(A,Q,B)=>{while(!iz(A,Q)&&$I.get(A)?.size>0){let Y=[...$I.get(A)];MQA(Y,B),await Promise.all(Y.map(({onMessageSent:J})=>J))}},$I=new WeakMap,iz=(A,Q)=>Q.listenerCount("message")>dyQ(A),dyQ=(A)=>T1.has(A)&&!aX(T1.get(A).options.buffer,"ipc")?1:0;var nz=({anyProcess:A,channel:Q,isSubprocess:B,ipc:Y},J,{strict:C=!1}={})=>{return P4({methodName:"sendMessage",isSubprocess:B,ipc:Y,isConnected:A.connected}),lyQ({anyProcess:A,channel:Q,methodName:"sendMessage",isSubprocess:B,message:J,strict:C})},lyQ=async({anyProcess:A,channel:Q,methodName:B,isSubprocess:Y,message:J,strict:C})=>{let X=qQA({anyProcess:A,channel:Q,isSubprocess:Y,message:J,strict:C}),G=wQA(A,X,C);try{await pv({anyProcess:A,methodName:B,isSubprocess:Y,wrappedMessage:X,message:J})}catch(W){throw T4(A),W}finally{jQA(G)}},pv=async({anyProcess:A,methodName:Q,isSubprocess:B,wrappedMessage:Y,message:J})=>{let C=pyQ(A);try{await Promise.all([zQA(Y,A,B),C(Y)])}catch(X){throw WQA({error:X,methodName:Q,isSubprocess:B}),FQA({error:X,methodName:Q,isSubprocess:B,message:J}),X}},pyQ=(A)=>{if(lv.has(A))return lv.get(A);let Q=cyQ(A.send.bind(A));return lv.set(A,Q),Q},lv=new WeakMap;var PQA=(A,Q)=>{return mv("cancelSignal",!1,A.connected),pv({anyProcess:A,methodName:"cancelSignal",isSubprocess:!1,wrappedMessage:{type:SQA,message:Q},message:Q})},TQA=async({anyProcess:A,channel:Q,isSubprocess:B,ipc:Y})=>{return await nyQ({anyProcess:A,channel:Q,isSubprocess:B,ipc:Y}),iv.signal},nyQ=async({anyProcess:A,channel:Q,isSubprocess:B,ipc:Y})=>{if(OQA)return;if(OQA=!0,!Y){GQA();return}if(Q===null){cv();return}oG(A,Q,B),await iyQ.yield()},OQA=!1,LQA=(A)=>{if(A?.type!==SQA)return!1;return iv.abort(A.message),!0},SQA="execa:ipc:cancel",cv=()=>{iv.abort(XQA())},iv=new AbortController;var kQA=({gracefulCancel:A,cancelSignal:Q,ipc:B,serialization:Y})=>{if(!A)return;if(Q===void 0)throw Error("The `cancelSignal` option must be defined when setting the `gracefulCancel` option.");if(!B)throw Error("The `ipc` option cannot be false when setting the `gracefulCancel` option.");if(Y==="json")throw Error("The `serialization` option cannot be 'json' when setting the `gracefulCancel` option.")},_QA=({subprocess:A,cancelSignal:Q,gracefulCancel:B,forceKillAfterDelay:Y,context:J,controller:C})=>B?[syQ({subprocess:A,cancelSignal:Q,forceKillAfterDelay:Y,context:J,controller:C})]:[],syQ=async({subprocess:A,cancelSignal:Q,forceKillAfterDelay:B,context:Y,controller:{signal:J}})=>{await gz(Q,J);let C=ryQ(Q);throw await PQA(A,C),bv({kill:A.kill,forceKillAfterDelay:B,context:Y,controllerSignal:J}),Y.terminationReason??="gracefulCancel",Q.reason},ryQ=({reason:A})=>{if(!(A instanceof DOMException))return A;let Q=Error(A.message);return Object.defineProperty(Q,"stack",{value:A.stack,enumerable:!1,configurable:!0,writable:!0}),Q};import{setTimeout as ayQ}from"node:timers/promises";var vQA=({timeout:A})=>{if(A!==void 0&&(!Number.isFinite(A)||A<0))throw TypeError(`Expected the \`timeout\` option to be a non-negative integer, got \`${A}\` (${typeof A})`)},yQA=(A,Q,B,Y)=>Q===0||Q===void 0?[]:[oyQ(A,Q,B,Y)],oyQ=async(A,Q,B,{signal:Y})=>{throw await ayQ(Q,void 0,{signal:Y}),B.terminationReason??="timeout",A.kill(),new O1};import{execPath as tyQ,execArgv as eyQ}from"node:process";import gQA from"node:path";var hQA=({options:A})=>{if(A.node===!1)throw TypeError('The "node" option cannot be false with `execaNode()`.');return{options:{...A,node:!0}}},xQA=(A,Q,{node:B=!1,nodePath:Y=tyQ,nodeOptions:J=eyQ.filter((W)=>!W.startsWith("--inspect")),cwd:C,execPath:X,...G})=>{if(X!==void 0)throw TypeError('The "execPath" option has been removed. Please use the "nodePath" option instead.');let W=z4(Y,'The "nodePath" option'),F=gQA.resolve(C,W),Z={...G,nodePath:F,node:B,cwd:C};if(!B)return[A,Q,Z];if(gQA.basename(A,".exe")==="node")throw TypeError('When the "node" option is true, the first argument does not need to be "node".');return[F,[...J,A,...Q],{ipc:!0,...Z,shell:!1}]};import{serialize as AgQ}from"node:v8";var fQA=({ipcInput:A,ipc:Q,serialization:B})=>{if(A===void 0)return;if(!Q)throw Error("The `ipcInput` option cannot be set unless the `ipc` option is `true`.");YgQ[B](A)},QgQ=(A)=>{try{AgQ(A)}catch(Q){throw Error("The `ipcInput` option is not serializable with a structured clone.",{cause:Q})}},BgQ=(A)=>{try{JSON.stringify(A)}catch(Q){throw Error("The `ipcInput` option is not serializable with JSON.",{cause:Q})}},YgQ={advanced:QgQ,json:BgQ},bQA=async(A,Q)=>{if(Q===void 0)return;await A.sendMessage(Q)};var uQA=({encoding:A})=>{if(nv.has(A))return;let Q=CgQ(A);if(Q!==void 0)throw TypeError(`Invalid option \`encoding: ${sz(A)}\`. Please rename it to ${sz(Q)}.`);let B=[...nv].map((Y)=>sz(Y)).join(", ");throw TypeError(`Invalid option \`encoding: ${sz(A)}\`. -Please rename it to one of: ${B}.`)},JgQ=new Set(["utf8","utf16le"]),G8=new Set(["buffer","hex","base64","base64url","latin1","ascii"]),nv=new Set([...JgQ,...G8]),CgQ=(A)=>{if(A===null)return"buffer";if(typeof A!=="string")return;let Q=A.toLowerCase();if(Q in mQA)return mQA[Q];if(nv.has(Q))return Q},mQA={"utf-8":"utf8","utf-16le":"utf16le","ucs-2":"utf16le",ucs2:"utf16le",binary:"latin1"},sz=(A)=>typeof A==="string"?`"${A}"`:String(A);import{statSync as XgQ}from"node:fs";import GgQ from"node:path";import WgQ from"node:process";var dQA=(A=cQA())=>{let Q=M4(A,'The "cwd" option');return GgQ.resolve(Q)},cQA=()=>{try{return WgQ.cwd()}catch(A){throw A.message=`The current directory does not exist. +Please rename it to one of: ${B}.`)},JgQ=new Set(["utf8","utf16le"]),G8=new Set(["buffer","hex","base64","base64url","latin1","ascii"]),nv=new Set([...JgQ,...G8]),CgQ=(A)=>{if(A===null)return"buffer";if(typeof A!=="string")return;let Q=A.toLowerCase();if(Q in mQA)return mQA[Q];if(nv.has(Q))return Q},mQA={"utf-8":"utf8","utf-16le":"utf16le","ucs-2":"utf16le",ucs2:"utf16le",binary:"latin1"},sz=(A)=>typeof A==="string"?`"${A}"`:String(A);import{statSync as XgQ}from"node:fs";import GgQ from"node:path";import WgQ from"node:process";var dQA=(A=cQA())=>{let Q=z4(A,'The "cwd" option');return GgQ.resolve(Q)},cQA=()=>{try{return WgQ.cwd()}catch(A){throw A.message=`The current directory does not exist. ${A.message}`,A}},lQA=(A,Q)=>{if(Q===cQA())return A;let B;try{B=XgQ(Q)}catch(Y){return`The "cwd" option is invalid: ${Q}. ${Y.message} ${A}`}if(!B.isDirectory())return`The "cwd" option is not a directory: ${Q}. -${A}`;return A};var rz=(A,Q,B)=>{B.cwd=dQA(B.cwd);let[Y,J,C]=xQA(A,Q,B),{command:X,args:G,options:W}=iQA.default._parse(Y,J,C),F=_e(W),Z=ZgQ(F);if(vQA(Z),uQA(Z),fQA(Z),AQA(Z),kQA(Z),Z.shell=Dv(Z.shell),Z.env=$gQ(Z),Z.killSignal=rAA(Z.killSignal),Z.forceKillAfterDelay=tAA(Z.forceKillAfterDelay),Z.lines=Z.lines.map((U,$)=>U&&!G8.has(Z.encoding)&&Z.buffer[$]),pQA.platform==="win32"&&FgQ.basename(X,".exe")==="cmd")G.unshift("/q");return{file:X,commandArguments:G,options:Z}},ZgQ=({extendEnv:A=!0,preferLocal:Q=!1,cwd:B,localDir:Y=B,encoding:J="utf8",reject:C=!0,cleanup:X=!0,all:G=!1,windowsHide:W=!0,killSignal:F="SIGTERM",forceKillAfterDelay:Z=!0,gracefulCancel:U=!1,ipcInput:$,ipc:E=$!==void 0||U,serialization:K="advanced",...I})=>({...I,extendEnv:A,preferLocal:Q,cwd:B,localDirectory:Y,encoding:J,reject:C,cleanup:X,all:G,windowsHide:W,killSignal:F,forceKillAfterDelay:Z,gracefulCancel:U,ipcInput:$,ipc:E,serialization:K}),$gQ=({env:A,extendEnv:Q,preferLocal:B,node:Y,localDirectory:J,nodePath:C})=>{let X=Q?{...pQA.env,...A}:A;if(B||Y)return bAA({env:X,cwd:J,execPath:C,preferLocal:B,addExecPath:Y});return X};import{inspect as pgQ}from"node:util";function S4(A){if(typeof A==="string")return UgQ(A);if(!(ArrayBuffer.isView(A)&&A.BYTES_PER_ELEMENT===1))throw Error("Input must be a string or a Uint8Array");return EgQ(A)}var UgQ=(A)=>A.at(-1)===nQA?A.slice(0,A.at(-2)===sQA?-2:-1):A,EgQ=(A)=>A.at(-1)===KgQ?A.subarray(0,A.at(-2)===VgQ?-2:-1):A,nQA=` -`,KgQ=nQA.codePointAt(0),sQA="\r",VgQ=sQA.codePointAt(0);import{on as ugQ}from"node:events";import{finished as dgQ}from"node:stream/promises";function zC(A,{checkOpen:Q=!0}={}){return A!==null&&typeof A==="object"&&(A.writable||A.readable||!Q||A.writable===void 0&&A.readable===void 0)&&typeof A.pipe==="function"}function sv(A,{checkOpen:Q=!0}={}){return zC(A,{checkOpen:Q})&&(A.writable||!Q)&&typeof A.write==="function"&&typeof A.end==="function"&&typeof A.writable==="boolean"&&typeof A.writableObjectMode==="boolean"&&typeof A.destroy==="function"&&typeof A.destroyed==="boolean"}function TF(A,{checkOpen:Q=!0}={}){return zC(A,{checkOpen:Q})&&(A.readable||!Q)&&typeof A.read==="function"&&typeof A.readable==="boolean"&&typeof A.readableObjectMode==="boolean"&&typeof A.destroy==="function"&&typeof A.destroyed==="boolean"}function rv(A,Q){return sv(A,Q)&&TF(A,Q)}var IgQ=Object.getPrototypeOf(Object.getPrototypeOf(async function*(){}).prototype);class rQA{#A;#Q;#B=!1;#Y=void 0;constructor(A,Q){this.#A=A,this.#Q=Q}next(){let A=()=>this.#J();return this.#Y=this.#Y?this.#Y.then(A,A):A(),this.#Y}return(A){let Q=()=>this.#C(A);return this.#Y?this.#Y.then(Q,Q):Q()}async#J(){if(this.#B)return{done:!0,value:void 0};let A;try{A=await this.#A.read()}catch(Q){throw this.#Y=void 0,this.#B=!0,this.#A.releaseLock(),Q}return A.done&&(this.#Y=void 0,this.#B=!0,this.#A.releaseLock()),A}async#C(A){if(this.#B)return{done:!0,value:A};if(this.#B=!0,!this.#Q){let Q=this.#A.cancel(A);return this.#A.releaseLock(),await Q,{done:!0,value:A}}return this.#A.releaseLock(),{done:!0,value:A}}}var av=Symbol();function aQA(){return this[av].next()}Object.defineProperty(aQA,"name",{value:"next"});function oQA(A){return this[av].return(A)}Object.defineProperty(oQA,"name",{value:"return"});var HgQ=Object.create(IgQ,{next:{enumerable:!0,configurable:!0,writable:!0,value:aQA},return:{enumerable:!0,configurable:!0,writable:!0,value:oQA}});function ov({preventCancel:A=!1}={}){let Q=this.getReader(),B=new rQA(Q,A),Y=Object.create(HgQ);return Y[av]=B,Y}var tQA=(A)=>{if(TF(A,{checkOpen:!1})&&UI.on!==void 0)return NgQ(A);if(typeof A?.[Symbol.asyncIterator]==="function")return A;if(DgQ.call(A)==="[object ReadableStream]")return ov.call(A);throw TypeError("The first argument must be a Readable, a ReadableStream, or an async iterable.")},{toString:DgQ}=Object.prototype,NgQ=async function*(A){let Q=new AbortController,B={};LgQ(A,Q,B);try{for await(let[Y]of UI.on(A,"data",{signal:Q.signal}))yield Y}catch(Y){if(B.error!==void 0)throw B.error;else if(!Q.signal.aborted)throw Y}finally{A.destroy()}},LgQ=async(A,Q,B)=>{try{await UI.finished(A,{cleanup:!0,readable:!0,writable:!1,error:!1})}catch(Y){B.error=Y}finally{Q.abort()}},UI={};var k4=async(A,{init:Q,convertChunk:B,getSize:Y,truncateChunk:J,addChunk:C,getFinalChunk:X,finalize:G},{maxBuffer:W=Number.POSITIVE_INFINITY}={})=>{let F=tQA(A),Z=Q();Z.length=0;try{for await(let U of F){let $=MgQ(U),E=B[$](U,Z);QBA({convertedChunk:E,state:Z,getSize:Y,truncateChunk:J,addChunk:C,maxBuffer:W})}return qgQ({state:Z,convertChunk:B,getSize:Y,truncateChunk:J,addChunk:C,getFinalChunk:X,maxBuffer:W}),G(Z)}catch(U){let $=typeof U==="object"&&U!==null?U:Error(U);throw $.bufferedData=G(Z),$}},qgQ=({state:A,getSize:Q,truncateChunk:B,addChunk:Y,getFinalChunk:J,maxBuffer:C})=>{let X=J(A);if(X!==void 0)QBA({convertedChunk:X,state:A,getSize:Q,truncateChunk:B,addChunk:Y,maxBuffer:C})},QBA=({convertedChunk:A,state:Q,getSize:B,truncateChunk:Y,addChunk:J,maxBuffer:C})=>{let X=B(A),G=Q.length+X;if(G<=C){eQA(A,Q,J,G);return}let W=Y(A,C-Q.length);if(W!==void 0)eQA(W,Q,J,C);throw new oX},eQA=(A,Q,B,Y)=>{Q.contents=B(A,Q,Y),Q.length=Y},MgQ=(A)=>{let Q=typeof A;if(Q==="string")return"string";if(Q!=="object"||A===null)return"others";if(globalThis.Buffer?.isBuffer(A))return"buffer";let B=ABA.call(A);if(B==="[object ArrayBuffer]")return"arrayBuffer";if(B==="[object DataView]")return"dataView";if(Number.isInteger(A.byteLength)&&Number.isInteger(A.byteOffset)&&ABA.call(A.buffer)==="[object ArrayBuffer]")return"typedArray";return"others"},{toString:ABA}=Object.prototype;class oX extends Error{name="MaxBufferError";constructor(){super("maxBuffer exceeded")}}var tX=(A)=>A,EI=()=>{return},az=({contents:A})=>A,oz=(A)=>{throw Error(`Streams in object mode are not supported: ${String(A)}`)},tz=(A)=>A.length;async function ez(A,Q){return k4(A,jgQ,Q)}var zgQ=()=>({contents:[]}),RgQ=()=>1,wgQ=(A,{contents:Q})=>{return Q.push(A),Q},jgQ={init:zgQ,convertChunk:{string:tX,buffer:tX,arrayBuffer:tX,dataView:tX,typedArray:tX,others:tX},getSize:RgQ,truncateChunk:EI,addChunk:wgQ,getFinalChunk:EI,finalize:az};async function A2(A,Q){return k4(A,ggQ,Q)}var OgQ=()=>({contents:new ArrayBuffer(0)}),PgQ=(A)=>TgQ.encode(A),TgQ=new TextEncoder,BBA=(A)=>new Uint8Array(A),YBA=(A)=>new Uint8Array(A.buffer,A.byteOffset,A.byteLength),SgQ=(A,Q)=>A.slice(0,Q),kgQ=(A,{contents:Q,length:B},Y)=>{let J=XBA()?vgQ(Q,Y):_gQ(Q,Y);return new Uint8Array(J).set(A,B),J},_gQ=(A,Q)=>{if(Q<=A.byteLength)return A;let B=new ArrayBuffer(CBA(Q));return new Uint8Array(B).set(new Uint8Array(A),0),B},vgQ=(A,Q)=>{if(Q<=A.maxByteLength)return A.resize(Q),A;let B=new ArrayBuffer(Q,{maxByteLength:CBA(Q)});return new Uint8Array(B).set(new Uint8Array(A),0),B},CBA=(A)=>JBA**Math.ceil(Math.log(A)/Math.log(JBA)),JBA=2,ygQ=({contents:A,length:Q})=>XBA()?A:A.slice(0,Q),XBA=()=>("resize"in ArrayBuffer.prototype),ggQ={init:OgQ,convertChunk:{string:PgQ,buffer:BBA,arrayBuffer:BBA,dataView:YBA,typedArray:YBA,others:oz},getSize:tz,truncateChunk:SgQ,addChunk:kgQ,getFinalChunk:EI,finalize:ygQ};async function B2(A,Q){return k4(A,mgQ,Q)}var hgQ=()=>({contents:"",textDecoder:new TextDecoder}),Q2=(A,{textDecoder:Q})=>Q.decode(A,{stream:!0}),xgQ=(A,{contents:Q})=>Q+A,fgQ=(A,Q)=>A.slice(0,Q),bgQ=({textDecoder:A})=>{let Q=A.decode();return Q===""?void 0:Q},mgQ={init:hgQ,convertChunk:{string:tX,buffer:Q2,arrayBuffer:Q2,dataView:Q2,typedArray:Q2,others:oz},getSize:tz,truncateChunk:fgQ,addChunk:xgQ,getFinalChunk:bgQ,finalize:az};Object.assign(UI,{on:ugQ,finished:dgQ});var GBA=({error:A,stream:Q,readableObjectMode:B,lines:Y,encoding:J,fdNumber:C})=>{if(!(A instanceof oX))throw A;if(C==="all")return A;let X=cgQ(B,Y,J);throw A.maxBufferInfo={fdNumber:C,unit:X},Q.destroy(),A},cgQ=(A,Q,B)=>{if(A)return"objects";if(Q)return"lines";if(B==="buffer")return"bytes";return"characters"},WBA=(A,Q,B)=>{if(Q.length!==B)return;let Y=new oX;throw Y.maxBufferInfo={fdNumber:"ipc"},Y},FBA=(A,Q)=>{let{streamName:B,threshold:Y,unit:J}=lgQ(A,Q);return`Command's ${B} was larger than ${Y} ${J}`},lgQ=(A,Q)=>{if(A?.maxBufferInfo===void 0)return{streamName:"output",threshold:Q[1],unit:"bytes"};let{maxBufferInfo:{fdNumber:B,unit:Y}}=A;delete A.maxBufferInfo;let J=aX(Q,B);if(B==="ipc")return{streamName:"IPC output",threshold:J,unit:"messages"};return{streamName:Dz(B),threshold:J,unit:Y}},ZBA=(A,Q,B)=>A?.code==="ENOBUFS"&&Q!==null&&Q.some((Y)=>Y!==null&&Y.length>Y2(B)),$BA=(A,Q,B)=>{if(!Q)return A;let Y=Y2(B);return A.length>Y?A.slice(0,Y):A},Y2=([,A])=>A;var EBA=({stdio:A,all:Q,ipcOutput:B,originalError:Y,signal:J,signalDescription:C,exitCode:X,escapedCommand:G,timedOut:W,isCanceled:F,isGracefullyCanceled:Z,isMaxBuffer:U,isForcefullyTerminated:$,forceKillAfterDelay:E,killSignal:K,maxBuffer:I,timeout:V,cwd:H})=>{let D=Y?.code,L=igQ({originalError:Y,timedOut:W,timeout:V,isMaxBuffer:U,maxBuffer:I,errorCode:D,signal:J,signalDescription:C,exitCode:X,isCanceled:F,isGracefullyCanceled:Z,isForcefullyTerminated:$,forceKillAfterDelay:E,killSignal:K}),z=sgQ(Y,H),M=z===void 0?"":` +${A}`;return A};var rz=(A,Q,B)=>{B.cwd=dQA(B.cwd);let[Y,J,C]=xQA(A,Q,B),{command:X,args:G,options:W}=iQA.default._parse(Y,J,C),F=_e(W),Z=ZgQ(F);if(vQA(Z),uQA(Z),fQA(Z),AQA(Z),kQA(Z),Z.shell=Dv(Z.shell),Z.env=$gQ(Z),Z.killSignal=rAA(Z.killSignal),Z.forceKillAfterDelay=tAA(Z.forceKillAfterDelay),Z.lines=Z.lines.map((U,$)=>U&&!G8.has(Z.encoding)&&Z.buffer[$]),pQA.platform==="win32"&&FgQ.basename(X,".exe")==="cmd")G.unshift("/q");return{file:X,commandArguments:G,options:Z}},ZgQ=({extendEnv:A=!0,preferLocal:Q=!1,cwd:B,localDir:Y=B,encoding:J="utf8",reject:C=!0,cleanup:X=!0,all:G=!1,windowsHide:W=!0,killSignal:F="SIGTERM",forceKillAfterDelay:Z=!0,gracefulCancel:U=!1,ipcInput:$,ipc:E=$!==void 0||U,serialization:K="advanced",...I})=>({...I,extendEnv:A,preferLocal:Q,cwd:B,localDirectory:Y,encoding:J,reject:C,cleanup:X,all:G,windowsHide:W,killSignal:F,forceKillAfterDelay:Z,gracefulCancel:U,ipcInput:$,ipc:E,serialization:K}),$gQ=({env:A,extendEnv:Q,preferLocal:B,node:Y,localDirectory:J,nodePath:C})=>{let X=Q?{...pQA.env,...A}:A;if(B||Y)return bAA({env:X,cwd:J,execPath:C,preferLocal:B,addExecPath:Y});return X};import{inspect as pgQ}from"node:util";function k4(A){if(typeof A==="string")return UgQ(A);if(!(ArrayBuffer.isView(A)&&A.BYTES_PER_ELEMENT===1))throw Error("Input must be a string or a Uint8Array");return EgQ(A)}var UgQ=(A)=>A.at(-1)===nQA?A.slice(0,A.at(-2)===sQA?-2:-1):A,EgQ=(A)=>A.at(-1)===KgQ?A.subarray(0,A.at(-2)===VgQ?-2:-1):A,nQA=` +`,KgQ=nQA.codePointAt(0),sQA="\r",VgQ=sQA.codePointAt(0);import{on as ugQ}from"node:events";import{finished as dgQ}from"node:stream/promises";function zC(A,{checkOpen:Q=!0}={}){return A!==null&&typeof A==="object"&&(A.writable||A.readable||!Q||A.writable===void 0&&A.readable===void 0)&&typeof A.pipe==="function"}function sv(A,{checkOpen:Q=!0}={}){return zC(A,{checkOpen:Q})&&(A.writable||!Q)&&typeof A.write==="function"&&typeof A.end==="function"&&typeof A.writable==="boolean"&&typeof A.writableObjectMode==="boolean"&&typeof A.destroy==="function"&&typeof A.destroyed==="boolean"}function TF(A,{checkOpen:Q=!0}={}){return zC(A,{checkOpen:Q})&&(A.readable||!Q)&&typeof A.read==="function"&&typeof A.readable==="boolean"&&typeof A.readableObjectMode==="boolean"&&typeof A.destroy==="function"&&typeof A.destroyed==="boolean"}function rv(A,Q){return sv(A,Q)&&TF(A,Q)}var IgQ=Object.getPrototypeOf(Object.getPrototypeOf(async function*(){}).prototype);class rQA{#A;#Q;#B=!1;#Y=void 0;constructor(A,Q){this.#A=A,this.#Q=Q}next(){let A=()=>this.#J();return this.#Y=this.#Y?this.#Y.then(A,A):A(),this.#Y}return(A){let Q=()=>this.#C(A);return this.#Y?this.#Y.then(Q,Q):Q()}async#J(){if(this.#B)return{done:!0,value:void 0};let A;try{A=await this.#A.read()}catch(Q){throw this.#Y=void 0,this.#B=!0,this.#A.releaseLock(),Q}return A.done&&(this.#Y=void 0,this.#B=!0,this.#A.releaseLock()),A}async#C(A){if(this.#B)return{done:!0,value:A};if(this.#B=!0,!this.#Q){let Q=this.#A.cancel(A);return this.#A.releaseLock(),await Q,{done:!0,value:A}}return this.#A.releaseLock(),{done:!0,value:A}}}var av=Symbol();function aQA(){return this[av].next()}Object.defineProperty(aQA,"name",{value:"next"});function oQA(A){return this[av].return(A)}Object.defineProperty(oQA,"name",{value:"return"});var HgQ=Object.create(IgQ,{next:{enumerable:!0,configurable:!0,writable:!0,value:aQA},return:{enumerable:!0,configurable:!0,writable:!0,value:oQA}});function ov({preventCancel:A=!1}={}){let Q=this.getReader(),B=new rQA(Q,A),Y=Object.create(HgQ);return Y[av]=B,Y}var tQA=(A)=>{if(TF(A,{checkOpen:!1})&&UI.on!==void 0)return NgQ(A);if(typeof A?.[Symbol.asyncIterator]==="function")return A;if(DgQ.call(A)==="[object ReadableStream]")return ov.call(A);throw TypeError("The first argument must be a Readable, a ReadableStream, or an async iterable.")},{toString:DgQ}=Object.prototype,NgQ=async function*(A){let Q=new AbortController,B={};LgQ(A,Q,B);try{for await(let[Y]of UI.on(A,"data",{signal:Q.signal}))yield Y}catch(Y){if(B.error!==void 0)throw B.error;else if(!Q.signal.aborted)throw Y}finally{A.destroy()}},LgQ=async(A,Q,B)=>{try{await UI.finished(A,{cleanup:!0,readable:!0,writable:!1,error:!1})}catch(Y){B.error=Y}finally{Q.abort()}},UI={};var _4=async(A,{init:Q,convertChunk:B,getSize:Y,truncateChunk:J,addChunk:C,getFinalChunk:X,finalize:G},{maxBuffer:W=Number.POSITIVE_INFINITY}={})=>{let F=tQA(A),Z=Q();Z.length=0;try{for await(let U of F){let $=MgQ(U),E=B[$](U,Z);QBA({convertedChunk:E,state:Z,getSize:Y,truncateChunk:J,addChunk:C,maxBuffer:W})}return qgQ({state:Z,convertChunk:B,getSize:Y,truncateChunk:J,addChunk:C,getFinalChunk:X,maxBuffer:W}),G(Z)}catch(U){let $=typeof U==="object"&&U!==null?U:Error(U);throw $.bufferedData=G(Z),$}},qgQ=({state:A,getSize:Q,truncateChunk:B,addChunk:Y,getFinalChunk:J,maxBuffer:C})=>{let X=J(A);if(X!==void 0)QBA({convertedChunk:X,state:A,getSize:Q,truncateChunk:B,addChunk:Y,maxBuffer:C})},QBA=({convertedChunk:A,state:Q,getSize:B,truncateChunk:Y,addChunk:J,maxBuffer:C})=>{let X=B(A),G=Q.length+X;if(G<=C){eQA(A,Q,J,G);return}let W=Y(A,C-Q.length);if(W!==void 0)eQA(W,Q,J,C);throw new oX},eQA=(A,Q,B,Y)=>{Q.contents=B(A,Q,Y),Q.length=Y},MgQ=(A)=>{let Q=typeof A;if(Q==="string")return"string";if(Q!=="object"||A===null)return"others";if(globalThis.Buffer?.isBuffer(A))return"buffer";let B=ABA.call(A);if(B==="[object ArrayBuffer]")return"arrayBuffer";if(B==="[object DataView]")return"dataView";if(Number.isInteger(A.byteLength)&&Number.isInteger(A.byteOffset)&&ABA.call(A.buffer)==="[object ArrayBuffer]")return"typedArray";return"others"},{toString:ABA}=Object.prototype;class oX extends Error{name="MaxBufferError";constructor(){super("maxBuffer exceeded")}}var tX=(A)=>A,EI=()=>{return},az=({contents:A})=>A,oz=(A)=>{throw Error(`Streams in object mode are not supported: ${String(A)}`)},tz=(A)=>A.length;async function ez(A,Q){return _4(A,jgQ,Q)}var zgQ=()=>({contents:[]}),RgQ=()=>1,wgQ=(A,{contents:Q})=>{return Q.push(A),Q},jgQ={init:zgQ,convertChunk:{string:tX,buffer:tX,arrayBuffer:tX,dataView:tX,typedArray:tX,others:tX},getSize:RgQ,truncateChunk:EI,addChunk:wgQ,getFinalChunk:EI,finalize:az};async function A2(A,Q){return _4(A,ggQ,Q)}var OgQ=()=>({contents:new ArrayBuffer(0)}),PgQ=(A)=>TgQ.encode(A),TgQ=new TextEncoder,BBA=(A)=>new Uint8Array(A),YBA=(A)=>new Uint8Array(A.buffer,A.byteOffset,A.byteLength),SgQ=(A,Q)=>A.slice(0,Q),kgQ=(A,{contents:Q,length:B},Y)=>{let J=XBA()?vgQ(Q,Y):_gQ(Q,Y);return new Uint8Array(J).set(A,B),J},_gQ=(A,Q)=>{if(Q<=A.byteLength)return A;let B=new ArrayBuffer(CBA(Q));return new Uint8Array(B).set(new Uint8Array(A),0),B},vgQ=(A,Q)=>{if(Q<=A.maxByteLength)return A.resize(Q),A;let B=new ArrayBuffer(Q,{maxByteLength:CBA(Q)});return new Uint8Array(B).set(new Uint8Array(A),0),B},CBA=(A)=>JBA**Math.ceil(Math.log(A)/Math.log(JBA)),JBA=2,ygQ=({contents:A,length:Q})=>XBA()?A:A.slice(0,Q),XBA=()=>("resize"in ArrayBuffer.prototype),ggQ={init:OgQ,convertChunk:{string:PgQ,buffer:BBA,arrayBuffer:BBA,dataView:YBA,typedArray:YBA,others:oz},getSize:tz,truncateChunk:SgQ,addChunk:kgQ,getFinalChunk:EI,finalize:ygQ};async function B2(A,Q){return _4(A,mgQ,Q)}var hgQ=()=>({contents:"",textDecoder:new TextDecoder}),Q2=(A,{textDecoder:Q})=>Q.decode(A,{stream:!0}),xgQ=(A,{contents:Q})=>Q+A,fgQ=(A,Q)=>A.slice(0,Q),bgQ=({textDecoder:A})=>{let Q=A.decode();return Q===""?void 0:Q},mgQ={init:hgQ,convertChunk:{string:tX,buffer:Q2,arrayBuffer:Q2,dataView:Q2,typedArray:Q2,others:oz},getSize:tz,truncateChunk:fgQ,addChunk:xgQ,getFinalChunk:bgQ,finalize:az};Object.assign(UI,{on:ugQ,finished:dgQ});var GBA=({error:A,stream:Q,readableObjectMode:B,lines:Y,encoding:J,fdNumber:C})=>{if(!(A instanceof oX))throw A;if(C==="all")return A;let X=cgQ(B,Y,J);throw A.maxBufferInfo={fdNumber:C,unit:X},Q.destroy(),A},cgQ=(A,Q,B)=>{if(A)return"objects";if(Q)return"lines";if(B==="buffer")return"bytes";return"characters"},WBA=(A,Q,B)=>{if(Q.length!==B)return;let Y=new oX;throw Y.maxBufferInfo={fdNumber:"ipc"},Y},FBA=(A,Q)=>{let{streamName:B,threshold:Y,unit:J}=lgQ(A,Q);return`Command's ${B} was larger than ${Y} ${J}`},lgQ=(A,Q)=>{if(A?.maxBufferInfo===void 0)return{streamName:"output",threshold:Q[1],unit:"bytes"};let{maxBufferInfo:{fdNumber:B,unit:Y}}=A;delete A.maxBufferInfo;let J=aX(Q,B);if(B==="ipc")return{streamName:"IPC output",threshold:J,unit:"messages"};return{streamName:Dz(B),threshold:J,unit:Y}},ZBA=(A,Q,B)=>A?.code==="ENOBUFS"&&Q!==null&&Q.some((Y)=>Y!==null&&Y.length>Y2(B)),$BA=(A,Q,B)=>{if(!Q)return A;let Y=Y2(B);return A.length>Y?A.slice(0,Y):A},Y2=([,A])=>A;var EBA=({stdio:A,all:Q,ipcOutput:B,originalError:Y,signal:J,signalDescription:C,exitCode:X,escapedCommand:G,timedOut:W,isCanceled:F,isGracefullyCanceled:Z,isMaxBuffer:U,isForcefullyTerminated:$,forceKillAfterDelay:E,killSignal:K,maxBuffer:I,timeout:V,cwd:H})=>{let D=Y?.code,L=igQ({originalError:Y,timedOut:W,timeout:V,isMaxBuffer:U,maxBuffer:I,errorCode:D,signal:J,signalDescription:C,exitCode:X,isCanceled:F,isGracefullyCanceled:Z,isForcefullyTerminated:$,forceKillAfterDelay:E,killSignal:K}),z=sgQ(Y,H),M=z===void 0?"":` ${z}`,N=`${L}: ${G}${M}`,q=Q===void 0?[A[2],A[1]]:[Q],w=[N,...q,...A.slice(3),B.map((P)=>rgQ(P)).join(` -`)].map((P)=>WI(S4(agQ(P)))).filter(Boolean).join(` +`)].map((P)=>WI(k4(agQ(P)))).filter(Boolean).join(` -`);return{originalMessage:z,shortMessage:N,message:w}},igQ=({originalError:A,timedOut:Q,timeout:B,isMaxBuffer:Y,maxBuffer:J,errorCode:C,signal:X,signalDescription:G,exitCode:W,isCanceled:F,isGracefullyCanceled:Z,isForcefullyTerminated:U,forceKillAfterDelay:$,killSignal:E})=>{let K=ngQ(U,$);if(Q)return`Command timed out after ${B} milliseconds${K}`;if(Z){if(X===void 0)return`Command was gracefully canceled with exit code ${W}`;return U?`Command was gracefully canceled${K}`:`Command was gracefully canceled with ${X} (${G})`}if(F)return`Command was canceled${K}`;if(Y)return`${FBA(A,J)}${K}`;if(C!==void 0)return`Command failed with ${C}${K}`;if(U)return`Command was killed with ${E} (${yz(E)})${K}`;if(X!==void 0)return`Command was killed with ${X} (${G})`;if(W!==void 0)return`Command failed with exit code ${W}`;return"Command failed"},ngQ=(A,Q)=>A?` and was forcefully terminated after ${Q} milliseconds`:"",sgQ=(A,Q)=>{if(A instanceof O1)return;let B=dAA(A)?A.originalMessage:String(A?.message??A),Y=WI(lQA(B,Q));return Y===""?void 0:Y},rgQ=(A)=>typeof A==="string"?A:pgQ(A),agQ=(A)=>Array.isArray(A)?A.map((Q)=>S4(UBA(Q))).filter(Boolean).join(` -`):UBA(A),UBA=(A)=>{if(typeof A==="string")return A;if(TY(A))return Iz(A);return""};var J2=({command:A,escapedCommand:Q,stdio:B,all:Y,ipcOutput:J,options:{cwd:C},startTime:X})=>KBA({command:A,escapedCommand:Q,cwd:C,durationMs:jv(X),failed:!1,timedOut:!1,isCanceled:!1,isGracefullyCanceled:!1,isTerminated:!1,isMaxBuffer:!1,isForcefullyTerminated:!1,exitCode:0,stdout:B[1],stderr:B[2],all:Y,stdio:B,ipcOutput:J,pipedFrom:[]}),_4=({error:A,command:Q,escapedCommand:B,fileDescriptors:Y,options:J,startTime:C,isSync:X})=>KI({error:A,command:Q,escapedCommand:B,startTime:C,timedOut:!1,isCanceled:!1,isGracefullyCanceled:!1,isMaxBuffer:!1,isForcefullyTerminated:!1,stdio:Array.from({length:Y.length}),ipcOutput:[],options:J,isSync:X}),KI=({error:A,command:Q,escapedCommand:B,startTime:Y,timedOut:J,isCanceled:C,isGracefullyCanceled:X,isMaxBuffer:G,isForcefullyTerminated:W,exitCode:F,signal:Z,stdio:U,all:$,ipcOutput:E,options:{timeoutDuration:K,timeout:I=K,forceKillAfterDelay:V,killSignal:H,cwd:D,maxBuffer:L},isSync:z})=>{let{exitCode:M,signal:N,signalDescription:q}=tgQ(F,Z),{originalMessage:w,shortMessage:P,message:_}=EBA({stdio:U,all:$,ipcOutput:E,originalError:A,signal:N,signalDescription:q,exitCode:M,escapedCommand:B,timedOut:J,isCanceled:C,isGracefullyCanceled:X,isMaxBuffer:G,isForcefullyTerminated:W,forceKillAfterDelay:V,killSignal:H,maxBuffer:L,timeout:I,cwd:D}),j=mAA(A,_,z);return Object.assign(j,ogQ({error:j,command:Q,escapedCommand:B,startTime:Y,timedOut:J,isCanceled:C,isGracefullyCanceled:X,isMaxBuffer:G,isForcefullyTerminated:W,exitCode:M,signal:N,signalDescription:q,stdio:U,all:$,ipcOutput:E,cwd:D,originalMessage:w,shortMessage:P})),j},ogQ=({error:A,command:Q,escapedCommand:B,startTime:Y,timedOut:J,isCanceled:C,isGracefullyCanceled:X,isMaxBuffer:G,isForcefullyTerminated:W,exitCode:F,signal:Z,signalDescription:U,stdio:$,all:E,ipcOutput:K,cwd:I,originalMessage:V,shortMessage:H})=>KBA({shortMessage:H,originalMessage:V,command:Q,escapedCommand:B,cwd:I,durationMs:jv(Y),failed:!0,timedOut:J,isCanceled:C,isGracefullyCanceled:X,isTerminated:Z!==void 0,isMaxBuffer:G,isForcefullyTerminated:W,exitCode:F,signal:Z,signalDescription:U,code:A.cause?.code,stdout:$[1],stderr:$[2],all:E,stdio:$,ipcOutput:K,pipedFrom:[]}),KBA=(A)=>Object.fromEntries(Object.entries(A).filter(([,Q])=>Q!==void 0)),tgQ=(A,Q)=>{let B=A===null?void 0:A,Y=Q===null?void 0:Q,J=Y===void 0?void 0:yz(Q);return{exitCode:B,signal:Y,signalDescription:J}};var VBA=(A)=>Number.isFinite(A)?A:0;function egQ(A){return{days:Math.trunc(A/86400000),hours:Math.trunc(A/3600000%24),minutes:Math.trunc(A/60000%60),seconds:Math.trunc(A/1000%60),milliseconds:Math.trunc(A%1000),microseconds:Math.trunc(VBA(A*1000)%1000),nanoseconds:Math.trunc(VBA(A*1e6)%1000)}}function AhQ(A){return{days:A/86400000n,hours:A/3600000n%24n,minutes:A/60000n%60n,seconds:A/1000n%60n,milliseconds:A%1000n,microseconds:0n,nanoseconds:0n}}function tv(A){switch(typeof A){case"number":{if(Number.isFinite(A))return egQ(A);break}case"bigint":return AhQ(A)}throw TypeError("Expected a finite number or bigint")}var QhQ=(A)=>A===0||A===0n,BhQ=(A,Q)=>Q===1||Q===1n?A:`${A}s`,YhQ=0.0000001,JhQ=24n*60n*60n*1000n;function ev(A,Q){let B=typeof A==="bigint";if(!B&&!Number.isFinite(A))throw TypeError("Expected a finite number or bigint");Q={...Q};let Y=A<0?"-":"";if(A=A<0?-A:A,Q.colonNotation)Q.compact=!1,Q.formatSubMilliseconds=!1,Q.separateMilliseconds=!1,Q.verbose=!1;if(Q.compact)Q.unitCount=1,Q.secondsDecimalDigits=0,Q.millisecondsDecimalDigits=0;let J=[],C=(Z,U)=>{let $=Math.floor(Z*10**U+YhQ);return(Math.round($)/10**U).toFixed(U)},X=(Z,U,$,E)=>{if((J.length===0||!Q.colonNotation)&&QhQ(Z)&&!(Q.colonNotation&&$==="m"))return;if(E??=String(Z),Q.colonNotation){let K=E.includes(".")?E.split(".")[0].length:E.length,I=J.length>0?2:1;E="0".repeat(Math.max(0,I-K))+E}else E+=Q.verbose?" "+BhQ(U,Z):$;J.push(E)},G=tv(A),W=BigInt(G.days);if(Q.hideYearAndDays)X(BigInt(W)*24n+BigInt(G.hours),"hour","h");else{if(Q.hideYear)X(W,"day","d");else X(W/365n,"year","y"),X(W%365n,"day","d");X(Number(G.hours),"hour","h")}if(X(Number(G.minutes),"minute","m"),!Q.hideSeconds)if(Q.separateMilliseconds||Q.formatSubMilliseconds||!Q.colonNotation&&A<1000){let Z=Number(G.seconds),U=Number(G.milliseconds),$=Number(G.microseconds),E=Number(G.nanoseconds);if(X(Z,"second","s"),Q.formatSubMilliseconds)X(U,"millisecond","ms"),X($,"microsecond","µs"),X(E,"nanosecond","ns");else{let K=U+$/1000+E/1e6,I=typeof Q.millisecondsDecimalDigits==="number"?Q.millisecondsDecimalDigits:0,V=K>=1?Math.round(K):Math.ceil(K),H=I?K.toFixed(I):V;X(Number.parseFloat(H),"millisecond","ms",H)}}else{let Z=(B?Number(A%JhQ):A)/1000%60,U=typeof Q.secondsDecimalDigits==="number"?Q.secondsDecimalDigits:1,$=C(Z,U),E=Q.keepDecimalsOnWholeSeconds?$:$.replace(/\.0+$/,"");X(Number.parseFloat(E),"second","s",E)}if(J.length===0)return Y+"0"+(Q.verbose?" milliseconds":"ms");let F=Q.colonNotation?":":" ";if(typeof Q.unitCount==="number")J=J.slice(0,Math.max(Q.unitCount,1));return Y+J.join(F)}var IBA=(A,Q)=>{if(A.failed)j1({type:"error",verboseMessage:A.shortMessage,verboseInfo:Q,result:A})};var HBA=(A,Q)=>{if(!z4(Q))return;IBA(A,Q),ChQ(A,Q)},ChQ=(A,Q)=>{let B=`(done in ${ev(A.durationMs)})`;j1({type:"duration",verboseMessage:B,verboseInfo:Q,result:A})};var v4=(A,Q,{reject:B})=>{if(HBA(A,Q),A.failed&&B)throw A;return A};import{readFileSync as lBA}from"node:fs";var LBA=(A,Q)=>{if(SF(A))return"asyncGenerator";if(zBA(A))return"generator";if(C2(A))return"fileUrl";if(ZhQ(A))return"filePath";if(EhQ(A))return"webStream";if(zC(A,{checkOpen:!1}))return"native";if(TY(A))return"uint8Array";if(KhQ(A))return"asyncIterable";if(VhQ(A))return"iterable";if(By(A))return qBA({transform:A},Q);if(FhQ(A))return XhQ(A,Q);return"native"},XhQ=(A,Q)=>{if(rv(A.transform,{checkOpen:!1}))return GhQ(A,Q);if(By(A.transform))return qBA(A,Q);return WhQ(A,Q)},GhQ=(A,Q)=>{return MBA(A,Q,"Duplex stream"),"duplex"},qBA=(A,Q)=>{return MBA(A,Q,"web TransformStream"),"webTransform"},MBA=({final:A,binary:Q,objectMode:B},Y,J)=>{DBA(A,`${Y}.final`,J),DBA(Q,`${Y}.binary`,J),Ay(B,`${Y}.objectMode`)},DBA=(A,Q,B)=>{if(A!==void 0)throw TypeError(`The \`${Q}\` option can only be defined when using a generator, not a ${B}.`)},WhQ=({transform:A,final:Q,binary:B,objectMode:Y},J)=>{if(A!==void 0&&!NBA(A))throw TypeError(`The \`${J}.transform\` option must be a generator, a Duplex stream or a web TransformStream.`);if(rv(Q,{checkOpen:!1}))throw TypeError(`The \`${J}.final\` option must not be a Duplex stream.`);if(By(Q))throw TypeError(`The \`${J}.final\` option must not be a web TransformStream.`);if(Q!==void 0&&!NBA(Q))throw TypeError(`The \`${J}.final\` option must be a generator.`);return Ay(B,`${J}.binary`),Ay(Y,`${J}.objectMode`),SF(A)||SF(Q)?"asyncGenerator":"generator"},Ay=(A,Q)=>{if(A!==void 0&&typeof A!=="boolean")throw TypeError(`The \`${Q}\` option must use a boolean.`)},NBA=(A)=>SF(A)||zBA(A),SF=(A)=>Object.prototype.toString.call(A)==="[object AsyncGeneratorFunction]",zBA=(A)=>Object.prototype.toString.call(A)==="[object GeneratorFunction]",FhQ=(A)=>CY(A)&&(A.transform!==void 0||A.final!==void 0),C2=(A)=>Object.prototype.toString.call(A)==="[object URL]",RBA=(A)=>C2(A)&&A.protocol!=="file:",ZhQ=(A)=>CY(A)&&Object.keys(A).length>0&&Object.keys(A).every((Q)=>$hQ.has(Q))&&Qy(A.file),$hQ=new Set(["file","append"]),Qy=(A)=>typeof A==="string",wBA=(A,Q)=>A==="native"&&typeof Q==="string"&&!UhQ.has(Q),UhQ=new Set(["ipc","ignore","inherit","overlapped","pipe"]),jBA=(A)=>Object.prototype.toString.call(A)==="[object ReadableStream]",X2=(A)=>Object.prototype.toString.call(A)==="[object WritableStream]",EhQ=(A)=>jBA(A)||X2(A),By=(A)=>jBA(A?.readable)&&X2(A?.writable),KhQ=(A)=>OBA(A)&&typeof A[Symbol.asyncIterator]==="function",VhQ=(A)=>OBA(A)&&typeof A[Symbol.iterator]==="function",OBA=(A)=>typeof A==="object"&&A!==null,B5=new Set(["generator","asyncGenerator","duplex","webTransform"]),G2=new Set(["fileUrl","filePath","fileNumber"]),Yy=new Set(["fileUrl","filePath"]),PBA=new Set([...Yy,"webStream","nodeStream"]),TBA=new Set(["webTransform","duplex"]),tG={generator:"a generator",asyncGenerator:"an async generator",fileUrl:"a file URL",filePath:"a file path string",fileNumber:"a file descriptor number",webStream:"a web stream",nodeStream:"a Node.js stream",webTransform:"a web TransformStream",duplex:"a Duplex stream",native:"any value",iterable:"an iterable",asyncIterable:"an async iterable",string:"a string",uint8Array:"a Uint8Array"};var Jy=(A,Q,B,Y)=>Y==="output"?IhQ(A,Q,B):HhQ(A,Q,B),IhQ=(A,Q,B)=>{let Y=Q!==0&&B[Q-1].value.readableObjectMode;return{writableObjectMode:Y,readableObjectMode:A??Y}},HhQ=(A,Q,B)=>{let Y=Q===0?A===!0:B[Q-1].value.readableObjectMode,J=Q!==B.length-1&&(A??Y);return{writableObjectMode:Y,readableObjectMode:J}},SBA=(A,Q)=>{let B=A.findLast(({type:Y})=>B5.has(Y));if(B===void 0)return!1;return Q==="input"?B.value.writableObjectMode:B.value.readableObjectMode};var kBA=(A,Q,B,Y)=>[...A.filter(({type:J})=>!B5.has(J)),...DhQ(A,Q,B,Y)],DhQ=(A,Q,B,{encoding:Y})=>{let J=A.filter(({type:X})=>B5.has(X)),C=Array.from({length:J.length});for(let[X,G]of Object.entries(J))C[X]=NhQ({stdioItem:G,index:Number(X),newTransforms:C,optionName:Q,direction:B,encoding:Y});return zhQ(C,B)},NhQ=({stdioItem:A,stdioItem:{type:Q},index:B,newTransforms:Y,optionName:J,direction:C,encoding:X})=>{if(Q==="duplex")return LhQ({stdioItem:A,optionName:J});if(Q==="webTransform")return qhQ({stdioItem:A,index:B,newTransforms:Y,direction:C});return MhQ({stdioItem:A,index:B,newTransforms:Y,direction:C,encoding:X})},LhQ=({stdioItem:A,stdioItem:{value:{transform:Q,transform:{writableObjectMode:B,readableObjectMode:Y},objectMode:J=Y}},optionName:C})=>{if(J&&!Y)throw TypeError(`The \`${C}.objectMode\` option can only be \`true\` if \`new Duplex({objectMode: true})\` is used.`);if(!J&&Y)throw TypeError(`The \`${C}.objectMode\` option cannot be \`false\` if \`new Duplex({objectMode: true})\` is used.`);return{...A,value:{transform:Q,writableObjectMode:B,readableObjectMode:Y}}},qhQ=({stdioItem:A,stdioItem:{value:Q},index:B,newTransforms:Y,direction:J})=>{let{transform:C,objectMode:X}=CY(Q)?Q:{transform:Q},{writableObjectMode:G,readableObjectMode:W}=Jy(X,B,Y,J);return{...A,value:{transform:C,writableObjectMode:G,readableObjectMode:W}}},MhQ=({stdioItem:A,stdioItem:{value:Q},index:B,newTransforms:Y,direction:J,encoding:C})=>{let{transform:X,final:G,binary:W=!1,preserveNewlines:F=!1,objectMode:Z}=CY(Q)?Q:{transform:Q},U=W||G8.has(C),{writableObjectMode:$,readableObjectMode:E}=Jy(Z,B,Y,J);return{...A,value:{transform:X,final:G,binary:U,preserveNewlines:F,writableObjectMode:$,readableObjectMode:E}}},zhQ=(A,Q)=>Q==="input"?A.reverse():A;import Cy from"node:process";var _BA=(A,Q,B)=>{let Y=A.map((J)=>RhQ(J,Q));if(Y.includes("input")&&Y.includes("output"))throw TypeError(`The \`${B}\` option must not be an array of both readable and writable values.`);return Y.find(Boolean)??OhQ},RhQ=({type:A,value:Q},B)=>whQ[B]??vBA[A](Q),whQ=["input","output","output"],y4=()=>{return},Xy=()=>"input",vBA={generator:y4,asyncGenerator:y4,fileUrl:y4,filePath:y4,iterable:Xy,asyncIterable:Xy,uint8Array:Xy,webStream:(A)=>X2(A)?"output":"input",nodeStream(A){if(!TF(A,{checkOpen:!1}))return"output";return sv(A,{checkOpen:!1})?void 0:"input"},webTransform:y4,duplex:y4,native(A){let Q=jhQ(A);if(Q!==void 0)return Q;if(zC(A,{checkOpen:!1}))return vBA.nodeStream(A)}},jhQ=(A)=>{if([0,Cy.stdin].includes(A))return"input";if([1,2,Cy.stdout,Cy.stderr].includes(A))return"output"},OhQ="output";var yBA=(A,Q)=>Q&&!A.includes("ipc")?[...A,"ipc"]:A;var gBA=({stdio:A,ipc:Q,buffer:B,...Y},J,C)=>{let X=PhQ(A,Y).map((G,W)=>hBA(G,W));return C?ShQ(X,B,J):yBA(X,Q)},PhQ=(A,Q)=>{if(A===void 0)return Q5.map((Y)=>Q[Y]);if(ThQ(Q))throw Error(`It's not possible to provide \`stdio\` in combination with one of ${Q5.map((Y)=>`\`${Y}\``).join(", ")}`);if(typeof A==="string")return[A,A,A];if(!Array.isArray(A))throw TypeError(`Expected \`stdio\` to be of type \`string\` or \`Array\`, got \`${typeof A}\``);let B=Math.max(A.length,Q5.length);return Array.from({length:B},(Y,J)=>A[J])},ThQ=(A)=>Q5.some((Q)=>A[Q]!==void 0),hBA=(A,Q)=>{if(Array.isArray(A))return A.map((B)=>hBA(B,Q));if(A===null||A===void 0)return Q>=Q5.length?"ignore":"pipe";return A},ShQ=(A,Q,B)=>A.map((Y,J)=>!Q[J]&&J!==0&&!R4(B,J)&&khQ(Y)?"ignore":Y),khQ=(A)=>A==="pipe"||Array.isArray(A)&&A.every((Q)=>Q==="pipe");import{readFileSync as _hQ}from"node:fs";import vhQ from"node:tty";var fBA=({stdioItem:A,stdioItem:{type:Q},isStdioArray:B,fdNumber:Y,direction:J,isSync:C})=>{if(!B||Q!=="native")return A;return C?yhQ({stdioItem:A,fdNumber:Y,direction:J}):xhQ({stdioItem:A,fdNumber:Y})},yhQ=({stdioItem:A,stdioItem:{value:Q,optionName:B},fdNumber:Y,direction:J})=>{let C=ghQ({value:Q,optionName:B,fdNumber:Y,direction:J});if(C!==void 0)return C;if(zC(Q,{checkOpen:!1}))throw TypeError(`The \`${B}: Stream\` option cannot both be an array and include a stream with synchronous methods.`);return A},ghQ=({value:A,optionName:Q,fdNumber:B,direction:Y})=>{let J=hhQ(A,B);if(J===void 0)return;if(Y==="output")return{type:"fileNumber",value:J,optionName:Q};if(vhQ.isatty(J))throw TypeError(`The \`${Q}: ${xz(A)}\` option is invalid: it cannot be a TTY with synchronous methods.`);return{type:"uint8Array",value:rX(_hQ(J)),optionName:Q}},hhQ=(A,Q)=>{if(A==="inherit")return Q;if(typeof A==="number")return A;let B=Hz.indexOf(A);if(B!==-1)return B},xhQ=({stdioItem:A,stdioItem:{value:Q,optionName:B},fdNumber:Y})=>{if(Q==="inherit")return{type:"nodeStream",value:xBA(Y,Q,B),optionName:B};if(typeof Q==="number")return{type:"nodeStream",value:xBA(Q,Q,B),optionName:B};if(zC(Q,{checkOpen:!1}))return{type:"nodeStream",value:Q,optionName:B};return A},xBA=(A,Q,B)=>{let Y=Hz[A];if(Y===void 0)throw TypeError(`The \`${B}: ${Q}\` option is invalid: no such standard stream.`);return Y};var bBA=({input:A,inputFile:Q},B)=>B===0?[...fhQ(A),...mhQ(Q)]:[],fhQ=(A)=>A===void 0?[]:[{type:bhQ(A),value:A,optionName:"input"}],bhQ=(A)=>{if(TF(A,{checkOpen:!1}))return"nodeStream";if(typeof A==="string")return"string";if(TY(A))return"uint8Array";throw Error("The `input` option must be a string, a Uint8Array or a Node.js Readable stream.")},mhQ=(A)=>A===void 0?[]:[{...uhQ(A),optionName:"inputFile"}],uhQ=(A)=>{if(C2(A))return{type:"fileUrl",value:A};if(Qy(A))return{type:"filePath",value:{file:A}};throw Error("The `inputFile` option must be a file path string or a file URL.")};var mBA=(A)=>A.filter((Q,B)=>A.every((Y,J)=>Q.value!==Y.value||B>=J||Q.type==="generator"||Q.type==="asyncGenerator")),uBA=({stdioItem:{type:A,value:Q,optionName:B},direction:Y,fileDescriptors:J,isSync:C})=>{let X=dhQ(J,A);if(X.length===0)return;if(C){chQ({otherStdioItems:X,type:A,value:Q,optionName:B,direction:Y});return}if(PBA.has(A))return dBA({otherStdioItems:X,type:A,value:Q,optionName:B,direction:Y});if(TBA.has(A))phQ({otherStdioItems:X,type:A,value:Q,optionName:B})},dhQ=(A,Q)=>A.flatMap(({direction:B,stdioItems:Y})=>Y.filter((J)=>J.type===Q).map((J)=>({...J,direction:B}))),chQ=({otherStdioItems:A,type:Q,value:B,optionName:Y,direction:J})=>{if(Yy.has(Q))dBA({otherStdioItems:A,type:Q,value:B,optionName:Y,direction:J})},dBA=({otherStdioItems:A,type:Q,value:B,optionName:Y,direction:J})=>{let C=A.filter((G)=>lhQ(G,B));if(C.length===0)return;let X=C.find((G)=>G.direction!==J);return cBA(X,Y,Q),J==="output"?C[0].stream:void 0},lhQ=({type:A,value:Q},B)=>{if(A==="filePath")return Q.file===B.file;if(A==="fileUrl")return Q.href===B.href;return Q===B},phQ=({otherStdioItems:A,type:Q,value:B,optionName:Y})=>{let J=A.find(({value:{transform:C}})=>C===B.transform);cBA(J,Y,Q)},cBA=(A,Q,B)=>{if(A!==void 0)throw TypeError(`The \`${A.optionName}\` and \`${Q}\` options must not target ${tG[B]} that is the same.`)};var W2=(A,Q,B,Y)=>{let C=gBA(Q,B,Y).map((G,W)=>ihQ({stdioOption:G,fdNumber:W,options:Q,isSync:Y})),X=AxQ({initialFileDescriptors:C,addProperties:A,options:Q,isSync:Y});return Q.stdio=X.map(({stdioItems:G})=>YxQ(G)),X},ihQ=({stdioOption:A,fdNumber:Q,options:B,isSync:Y})=>{let J=Dz(Q),{stdioItems:C,isStdioArray:X}=nhQ({stdioOption:A,fdNumber:Q,options:B,optionName:J}),G=_BA(C,Q,J),W=C.map((U)=>fBA({stdioItem:U,isStdioArray:X,fdNumber:Q,direction:G,isSync:Y})),F=kBA(W,J,G,B),Z=SBA(F,G);return ehQ(F,Z),{direction:G,objectMode:Z,stdioItems:F}},nhQ=({stdioOption:A,fdNumber:Q,options:B,optionName:Y})=>{let C=[...(Array.isArray(A)?A:[A]).map((W)=>shQ(W,Y)),...bBA(B,Q)],X=mBA(C),G=X.length>1;return rhQ(X,G,Y),ohQ(X),{stdioItems:X,isStdioArray:G}},shQ=(A,Q)=>({type:LBA(A,Q),value:A,optionName:Q}),rhQ=(A,Q,B)=>{if(A.length===0)throw TypeError(`The \`${B}\` option must not be an empty array.`);if(!Q)return;for(let{value:Y,optionName:J}of A)if(ahQ.has(Y))throw Error(`The \`${J}\` option must not include \`${Y}\`.`)},ahQ=new Set(["ignore","ipc"]),ohQ=(A)=>{for(let Q of A)thQ(Q)},thQ=({type:A,value:Q,optionName:B})=>{if(RBA(Q))throw TypeError(`The \`${B}: URL\` option must use the \`file:\` scheme. -For example, you can use the \`pathToFileURL()\` method of the \`url\` core module.`);if(wBA(A,Q))throw TypeError(`The \`${B}: { file: '...' }\` option must be used instead of \`${B}: '...'\`.`)},ehQ=(A,Q)=>{if(!Q)return;let B=A.find(({type:Y})=>G2.has(Y));if(B!==void 0)throw TypeError(`The \`${B.optionName}\` option cannot use both files and transforms in objectMode.`)},AxQ=({initialFileDescriptors:A,addProperties:Q,options:B,isSync:Y})=>{let J=[];try{for(let C of A)J.push(QxQ({fileDescriptor:C,fileDescriptors:J,addProperties:Q,options:B,isSync:Y}));return J}catch(C){throw Gy(J),C}},QxQ=({fileDescriptor:{direction:A,objectMode:Q,stdioItems:B},fileDescriptors:Y,addProperties:J,options:C,isSync:X})=>{let G=B.map((W)=>BxQ({stdioItem:W,addProperties:J,direction:A,options:C,fileDescriptors:Y,isSync:X}));return{direction:A,objectMode:Q,stdioItems:G}},BxQ=({stdioItem:A,addProperties:Q,direction:B,options:Y,fileDescriptors:J,isSync:C})=>{let X=uBA({stdioItem:A,direction:B,fileDescriptors:J,isSync:C});if(X!==void 0)return{...A,stream:X};return{...A,...Q[B][A.type](A,Y)}},Gy=(A)=>{for(let{stdioItems:Q}of A)for(let{stream:B}of Q)if(B!==void 0&&!qC(B))B.destroy()},YxQ=(A)=>{if(A.length>1)return A.some(({value:Y})=>Y==="overlapped")?"overlapped":"pipe";let[{type:Q,value:B}]=A;return Q==="native"?B:"pipe"};var iBA=(A,Q)=>W2(CxQ,A,Q,!0),S1=({type:A,optionName:Q})=>{nBA(Q,tG[A])},JxQ=({optionName:A,value:Q})=>{if(Q==="ipc"||Q==="overlapped")nBA(A,`"${Q}"`);return{}},nBA=(A,Q)=>{throw TypeError(`The \`${A}\` option cannot be ${Q} with synchronous methods.`)},pBA={generator(){},asyncGenerator:S1,webStream:S1,nodeStream:S1,webTransform:S1,duplex:S1,asyncIterable:S1,native:JxQ},CxQ={input:{...pBA,fileUrl:({value:A})=>({contents:[rX(lBA(A))]}),filePath:({value:{file:A}})=>({contents:[rX(lBA(A))]}),fileNumber:S1,iterable:({value:A})=>({contents:[...A]}),string:({value:A})=>({contents:[A]}),uint8Array:({value:A})=>({contents:[A]})},output:{...pBA,fileUrl:({value:A})=>({path:A}),filePath:({value:{file:A,append:Q}})=>({path:A,append:Q}),fileNumber:({value:A})=>({path:A}),iterable:S1,string:S1,uint8Array:S1}};var eX=(A,{stripFinalNewline:Q},B)=>Wy(Q,B)&&A!==void 0&&!Array.isArray(A)?S4(A):A,Wy=(A,Q)=>Q==="all"?A[1]||A[2]:A[Q];import{Transform as jxQ,getDefaultHighWaterMark as J0A}from"node:stream";var F2=(A,Q,B,Y)=>A||B?void 0:rBA(Q,Y),Zy=(A,Q,B)=>B?A.flatMap((Y)=>sBA(Y,Q)):sBA(A,Q),sBA=(A,Q)=>{let{transform:B,final:Y}=rBA(Q,{});return[...B(A),...Y()]},rBA=(A,Q)=>{return Q.previousChunks="",{transform:XxQ.bind(void 0,Q,A),final:WxQ.bind(void 0,Q)}},XxQ=function*(A,Q,B){if(typeof B!=="string"){yield B;return}let{previousChunks:Y}=A,J=-1;for(let C=0;C{let K=ngQ(U,$);if(Q)return`Command timed out after ${B} milliseconds${K}`;if(Z){if(X===void 0)return`Command was gracefully canceled with exit code ${W}`;return U?`Command was gracefully canceled${K}`:`Command was gracefully canceled with ${X} (${G})`}if(F)return`Command was canceled${K}`;if(Y)return`${FBA(A,J)}${K}`;if(C!==void 0)return`Command failed with ${C}${K}`;if(U)return`Command was killed with ${E} (${yz(E)})${K}`;if(X!==void 0)return`Command was killed with ${X} (${G})`;if(W!==void 0)return`Command failed with exit code ${W}`;return"Command failed"},ngQ=(A,Q)=>A?` and was forcefully terminated after ${Q} milliseconds`:"",sgQ=(A,Q)=>{if(A instanceof O1)return;let B=dAA(A)?A.originalMessage:String(A?.message??A),Y=WI(lQA(B,Q));return Y===""?void 0:Y},rgQ=(A)=>typeof A==="string"?A:pgQ(A),agQ=(A)=>Array.isArray(A)?A.map((Q)=>k4(UBA(Q))).filter(Boolean).join(` +`):UBA(A),UBA=(A)=>{if(typeof A==="string")return A;if(TY(A))return Iz(A);return""};var J2=({command:A,escapedCommand:Q,stdio:B,all:Y,ipcOutput:J,options:{cwd:C},startTime:X})=>KBA({command:A,escapedCommand:Q,cwd:C,durationMs:jv(X),failed:!1,timedOut:!1,isCanceled:!1,isGracefullyCanceled:!1,isTerminated:!1,isMaxBuffer:!1,isForcefullyTerminated:!1,exitCode:0,stdout:B[1],stderr:B[2],all:Y,stdio:B,ipcOutput:J,pipedFrom:[]}),v4=({error:A,command:Q,escapedCommand:B,fileDescriptors:Y,options:J,startTime:C,isSync:X})=>KI({error:A,command:Q,escapedCommand:B,startTime:C,timedOut:!1,isCanceled:!1,isGracefullyCanceled:!1,isMaxBuffer:!1,isForcefullyTerminated:!1,stdio:Array.from({length:Y.length}),ipcOutput:[],options:J,isSync:X}),KI=({error:A,command:Q,escapedCommand:B,startTime:Y,timedOut:J,isCanceled:C,isGracefullyCanceled:X,isMaxBuffer:G,isForcefullyTerminated:W,exitCode:F,signal:Z,stdio:U,all:$,ipcOutput:E,options:{timeoutDuration:K,timeout:I=K,forceKillAfterDelay:V,killSignal:H,cwd:D,maxBuffer:L},isSync:z})=>{let{exitCode:M,signal:N,signalDescription:q}=tgQ(F,Z),{originalMessage:w,shortMessage:P,message:_}=EBA({stdio:U,all:$,ipcOutput:E,originalError:A,signal:N,signalDescription:q,exitCode:M,escapedCommand:B,timedOut:J,isCanceled:C,isGracefullyCanceled:X,isMaxBuffer:G,isForcefullyTerminated:W,forceKillAfterDelay:V,killSignal:H,maxBuffer:L,timeout:I,cwd:D}),j=mAA(A,_,z);return Object.assign(j,ogQ({error:j,command:Q,escapedCommand:B,startTime:Y,timedOut:J,isCanceled:C,isGracefullyCanceled:X,isMaxBuffer:G,isForcefullyTerminated:W,exitCode:M,signal:N,signalDescription:q,stdio:U,all:$,ipcOutput:E,cwd:D,originalMessage:w,shortMessage:P})),j},ogQ=({error:A,command:Q,escapedCommand:B,startTime:Y,timedOut:J,isCanceled:C,isGracefullyCanceled:X,isMaxBuffer:G,isForcefullyTerminated:W,exitCode:F,signal:Z,signalDescription:U,stdio:$,all:E,ipcOutput:K,cwd:I,originalMessage:V,shortMessage:H})=>KBA({shortMessage:H,originalMessage:V,command:Q,escapedCommand:B,cwd:I,durationMs:jv(Y),failed:!0,timedOut:J,isCanceled:C,isGracefullyCanceled:X,isTerminated:Z!==void 0,isMaxBuffer:G,isForcefullyTerminated:W,exitCode:F,signal:Z,signalDescription:U,code:A.cause?.code,stdout:$[1],stderr:$[2],all:E,stdio:$,ipcOutput:K,pipedFrom:[]}),KBA=(A)=>Object.fromEntries(Object.entries(A).filter(([,Q])=>Q!==void 0)),tgQ=(A,Q)=>{let B=A===null?void 0:A,Y=Q===null?void 0:Q,J=Y===void 0?void 0:yz(Q);return{exitCode:B,signal:Y,signalDescription:J}};var VBA=(A)=>Number.isFinite(A)?A:0;function egQ(A){return{days:Math.trunc(A/86400000),hours:Math.trunc(A/3600000%24),minutes:Math.trunc(A/60000%60),seconds:Math.trunc(A/1000%60),milliseconds:Math.trunc(A%1000),microseconds:Math.trunc(VBA(A*1000)%1000),nanoseconds:Math.trunc(VBA(A*1e6)%1000)}}function AhQ(A){return{days:A/86400000n,hours:A/3600000n%24n,minutes:A/60000n%60n,seconds:A/1000n%60n,milliseconds:A%1000n,microseconds:0n,nanoseconds:0n}}function tv(A){switch(typeof A){case"number":{if(Number.isFinite(A))return egQ(A);break}case"bigint":return AhQ(A)}throw TypeError("Expected a finite number or bigint")}var QhQ=(A)=>A===0||A===0n,BhQ=(A,Q)=>Q===1||Q===1n?A:`${A}s`,YhQ=0.0000001,JhQ=24n*60n*60n*1000n;function ev(A,Q){let B=typeof A==="bigint";if(!B&&!Number.isFinite(A))throw TypeError("Expected a finite number or bigint");Q={...Q};let Y=A<0?"-":"";if(A=A<0?-A:A,Q.colonNotation)Q.compact=!1,Q.formatSubMilliseconds=!1,Q.separateMilliseconds=!1,Q.verbose=!1;if(Q.compact)Q.unitCount=1,Q.secondsDecimalDigits=0,Q.millisecondsDecimalDigits=0;let J=[],C=(Z,U)=>{let $=Math.floor(Z*10**U+YhQ);return(Math.round($)/10**U).toFixed(U)},X=(Z,U,$,E)=>{if((J.length===0||!Q.colonNotation)&&QhQ(Z)&&!(Q.colonNotation&&$==="m"))return;if(E??=String(Z),Q.colonNotation){let K=E.includes(".")?E.split(".")[0].length:E.length,I=J.length>0?2:1;E="0".repeat(Math.max(0,I-K))+E}else E+=Q.verbose?" "+BhQ(U,Z):$;J.push(E)},G=tv(A),W=BigInt(G.days);if(Q.hideYearAndDays)X(BigInt(W)*24n+BigInt(G.hours),"hour","h");else{if(Q.hideYear)X(W,"day","d");else X(W/365n,"year","y"),X(W%365n,"day","d");X(Number(G.hours),"hour","h")}if(X(Number(G.minutes),"minute","m"),!Q.hideSeconds)if(Q.separateMilliseconds||Q.formatSubMilliseconds||!Q.colonNotation&&A<1000){let Z=Number(G.seconds),U=Number(G.milliseconds),$=Number(G.microseconds),E=Number(G.nanoseconds);if(X(Z,"second","s"),Q.formatSubMilliseconds)X(U,"millisecond","ms"),X($,"microsecond","µs"),X(E,"nanosecond","ns");else{let K=U+$/1000+E/1e6,I=typeof Q.millisecondsDecimalDigits==="number"?Q.millisecondsDecimalDigits:0,V=K>=1?Math.round(K):Math.ceil(K),H=I?K.toFixed(I):V;X(Number.parseFloat(H),"millisecond","ms",H)}}else{let Z=(B?Number(A%JhQ):A)/1000%60,U=typeof Q.secondsDecimalDigits==="number"?Q.secondsDecimalDigits:1,$=C(Z,U),E=Q.keepDecimalsOnWholeSeconds?$:$.replace(/\.0+$/,"");X(Number.parseFloat(E),"second","s",E)}if(J.length===0)return Y+"0"+(Q.verbose?" milliseconds":"ms");let F=Q.colonNotation?":":" ";if(typeof Q.unitCount==="number")J=J.slice(0,Math.max(Q.unitCount,1));return Y+J.join(F)}var IBA=(A,Q)=>{if(A.failed)j1({type:"error",verboseMessage:A.shortMessage,verboseInfo:Q,result:A})};var HBA=(A,Q)=>{if(!R4(Q))return;IBA(A,Q),ChQ(A,Q)},ChQ=(A,Q)=>{let B=`(done in ${ev(A.durationMs)})`;j1({type:"duration",verboseMessage:B,verboseInfo:Q,result:A})};var y4=(A,Q,{reject:B})=>{if(HBA(A,Q),A.failed&&B)throw A;return A};import{readFileSync as lBA}from"node:fs";var LBA=(A,Q)=>{if(SF(A))return"asyncGenerator";if(zBA(A))return"generator";if(C2(A))return"fileUrl";if(ZhQ(A))return"filePath";if(EhQ(A))return"webStream";if(zC(A,{checkOpen:!1}))return"native";if(TY(A))return"uint8Array";if(KhQ(A))return"asyncIterable";if(VhQ(A))return"iterable";if(By(A))return qBA({transform:A},Q);if(FhQ(A))return XhQ(A,Q);return"native"},XhQ=(A,Q)=>{if(rv(A.transform,{checkOpen:!1}))return GhQ(A,Q);if(By(A.transform))return qBA(A,Q);return WhQ(A,Q)},GhQ=(A,Q)=>{return MBA(A,Q,"Duplex stream"),"duplex"},qBA=(A,Q)=>{return MBA(A,Q,"web TransformStream"),"webTransform"},MBA=({final:A,binary:Q,objectMode:B},Y,J)=>{DBA(A,`${Y}.final`,J),DBA(Q,`${Y}.binary`,J),Ay(B,`${Y}.objectMode`)},DBA=(A,Q,B)=>{if(A!==void 0)throw TypeError(`The \`${Q}\` option can only be defined when using a generator, not a ${B}.`)},WhQ=({transform:A,final:Q,binary:B,objectMode:Y},J)=>{if(A!==void 0&&!NBA(A))throw TypeError(`The \`${J}.transform\` option must be a generator, a Duplex stream or a web TransformStream.`);if(rv(Q,{checkOpen:!1}))throw TypeError(`The \`${J}.final\` option must not be a Duplex stream.`);if(By(Q))throw TypeError(`The \`${J}.final\` option must not be a web TransformStream.`);if(Q!==void 0&&!NBA(Q))throw TypeError(`The \`${J}.final\` option must be a generator.`);return Ay(B,`${J}.binary`),Ay(Y,`${J}.objectMode`),SF(A)||SF(Q)?"asyncGenerator":"generator"},Ay=(A,Q)=>{if(A!==void 0&&typeof A!=="boolean")throw TypeError(`The \`${Q}\` option must use a boolean.`)},NBA=(A)=>SF(A)||zBA(A),SF=(A)=>Object.prototype.toString.call(A)==="[object AsyncGeneratorFunction]",zBA=(A)=>Object.prototype.toString.call(A)==="[object GeneratorFunction]",FhQ=(A)=>CY(A)&&(A.transform!==void 0||A.final!==void 0),C2=(A)=>Object.prototype.toString.call(A)==="[object URL]",RBA=(A)=>C2(A)&&A.protocol!=="file:",ZhQ=(A)=>CY(A)&&Object.keys(A).length>0&&Object.keys(A).every((Q)=>$hQ.has(Q))&&Qy(A.file),$hQ=new Set(["file","append"]),Qy=(A)=>typeof A==="string",wBA=(A,Q)=>A==="native"&&typeof Q==="string"&&!UhQ.has(Q),UhQ=new Set(["ipc","ignore","inherit","overlapped","pipe"]),jBA=(A)=>Object.prototype.toString.call(A)==="[object ReadableStream]",X2=(A)=>Object.prototype.toString.call(A)==="[object WritableStream]",EhQ=(A)=>jBA(A)||X2(A),By=(A)=>jBA(A?.readable)&&X2(A?.writable),KhQ=(A)=>OBA(A)&&typeof A[Symbol.asyncIterator]==="function",VhQ=(A)=>OBA(A)&&typeof A[Symbol.iterator]==="function",OBA=(A)=>typeof A==="object"&&A!==null,B5=new Set(["generator","asyncGenerator","duplex","webTransform"]),G2=new Set(["fileUrl","filePath","fileNumber"]),Yy=new Set(["fileUrl","filePath"]),PBA=new Set([...Yy,"webStream","nodeStream"]),TBA=new Set(["webTransform","duplex"]),tG={generator:"a generator",asyncGenerator:"an async generator",fileUrl:"a file URL",filePath:"a file path string",fileNumber:"a file descriptor number",webStream:"a web stream",nodeStream:"a Node.js stream",webTransform:"a web TransformStream",duplex:"a Duplex stream",native:"any value",iterable:"an iterable",asyncIterable:"an async iterable",string:"a string",uint8Array:"a Uint8Array"};var Jy=(A,Q,B,Y)=>Y==="output"?IhQ(A,Q,B):HhQ(A,Q,B),IhQ=(A,Q,B)=>{let Y=Q!==0&&B[Q-1].value.readableObjectMode;return{writableObjectMode:Y,readableObjectMode:A??Y}},HhQ=(A,Q,B)=>{let Y=Q===0?A===!0:B[Q-1].value.readableObjectMode,J=Q!==B.length-1&&(A??Y);return{writableObjectMode:Y,readableObjectMode:J}},SBA=(A,Q)=>{let B=A.findLast(({type:Y})=>B5.has(Y));if(B===void 0)return!1;return Q==="input"?B.value.writableObjectMode:B.value.readableObjectMode};var kBA=(A,Q,B,Y)=>[...A.filter(({type:J})=>!B5.has(J)),...DhQ(A,Q,B,Y)],DhQ=(A,Q,B,{encoding:Y})=>{let J=A.filter(({type:X})=>B5.has(X)),C=Array.from({length:J.length});for(let[X,G]of Object.entries(J))C[X]=NhQ({stdioItem:G,index:Number(X),newTransforms:C,optionName:Q,direction:B,encoding:Y});return zhQ(C,B)},NhQ=({stdioItem:A,stdioItem:{type:Q},index:B,newTransforms:Y,optionName:J,direction:C,encoding:X})=>{if(Q==="duplex")return LhQ({stdioItem:A,optionName:J});if(Q==="webTransform")return qhQ({stdioItem:A,index:B,newTransforms:Y,direction:C});return MhQ({stdioItem:A,index:B,newTransforms:Y,direction:C,encoding:X})},LhQ=({stdioItem:A,stdioItem:{value:{transform:Q,transform:{writableObjectMode:B,readableObjectMode:Y},objectMode:J=Y}},optionName:C})=>{if(J&&!Y)throw TypeError(`The \`${C}.objectMode\` option can only be \`true\` if \`new Duplex({objectMode: true})\` is used.`);if(!J&&Y)throw TypeError(`The \`${C}.objectMode\` option cannot be \`false\` if \`new Duplex({objectMode: true})\` is used.`);return{...A,value:{transform:Q,writableObjectMode:B,readableObjectMode:Y}}},qhQ=({stdioItem:A,stdioItem:{value:Q},index:B,newTransforms:Y,direction:J})=>{let{transform:C,objectMode:X}=CY(Q)?Q:{transform:Q},{writableObjectMode:G,readableObjectMode:W}=Jy(X,B,Y,J);return{...A,value:{transform:C,writableObjectMode:G,readableObjectMode:W}}},MhQ=({stdioItem:A,stdioItem:{value:Q},index:B,newTransforms:Y,direction:J,encoding:C})=>{let{transform:X,final:G,binary:W=!1,preserveNewlines:F=!1,objectMode:Z}=CY(Q)?Q:{transform:Q},U=W||G8.has(C),{writableObjectMode:$,readableObjectMode:E}=Jy(Z,B,Y,J);return{...A,value:{transform:X,final:G,binary:U,preserveNewlines:F,writableObjectMode:$,readableObjectMode:E}}},zhQ=(A,Q)=>Q==="input"?A.reverse():A;import Cy from"node:process";var _BA=(A,Q,B)=>{let Y=A.map((J)=>RhQ(J,Q));if(Y.includes("input")&&Y.includes("output"))throw TypeError(`The \`${B}\` option must not be an array of both readable and writable values.`);return Y.find(Boolean)??OhQ},RhQ=({type:A,value:Q},B)=>whQ[B]??vBA[A](Q),whQ=["input","output","output"],g4=()=>{return},Xy=()=>"input",vBA={generator:g4,asyncGenerator:g4,fileUrl:g4,filePath:g4,iterable:Xy,asyncIterable:Xy,uint8Array:Xy,webStream:(A)=>X2(A)?"output":"input",nodeStream(A){if(!TF(A,{checkOpen:!1}))return"output";return sv(A,{checkOpen:!1})?void 0:"input"},webTransform:g4,duplex:g4,native(A){let Q=jhQ(A);if(Q!==void 0)return Q;if(zC(A,{checkOpen:!1}))return vBA.nodeStream(A)}},jhQ=(A)=>{if([0,Cy.stdin].includes(A))return"input";if([1,2,Cy.stdout,Cy.stderr].includes(A))return"output"},OhQ="output";var yBA=(A,Q)=>Q&&!A.includes("ipc")?[...A,"ipc"]:A;var gBA=({stdio:A,ipc:Q,buffer:B,...Y},J,C)=>{let X=PhQ(A,Y).map((G,W)=>hBA(G,W));return C?ShQ(X,B,J):yBA(X,Q)},PhQ=(A,Q)=>{if(A===void 0)return Q5.map((Y)=>Q[Y]);if(ThQ(Q))throw Error(`It's not possible to provide \`stdio\` in combination with one of ${Q5.map((Y)=>`\`${Y}\``).join(", ")}`);if(typeof A==="string")return[A,A,A];if(!Array.isArray(A))throw TypeError(`Expected \`stdio\` to be of type \`string\` or \`Array\`, got \`${typeof A}\``);let B=Math.max(A.length,Q5.length);return Array.from({length:B},(Y,J)=>A[J])},ThQ=(A)=>Q5.some((Q)=>A[Q]!==void 0),hBA=(A,Q)=>{if(Array.isArray(A))return A.map((B)=>hBA(B,Q));if(A===null||A===void 0)return Q>=Q5.length?"ignore":"pipe";return A},ShQ=(A,Q,B)=>A.map((Y,J)=>!Q[J]&&J!==0&&!w4(B,J)&&khQ(Y)?"ignore":Y),khQ=(A)=>A==="pipe"||Array.isArray(A)&&A.every((Q)=>Q==="pipe");import{readFileSync as _hQ}from"node:fs";import vhQ from"node:tty";var fBA=({stdioItem:A,stdioItem:{type:Q},isStdioArray:B,fdNumber:Y,direction:J,isSync:C})=>{if(!B||Q!=="native")return A;return C?yhQ({stdioItem:A,fdNumber:Y,direction:J}):xhQ({stdioItem:A,fdNumber:Y})},yhQ=({stdioItem:A,stdioItem:{value:Q,optionName:B},fdNumber:Y,direction:J})=>{let C=ghQ({value:Q,optionName:B,fdNumber:Y,direction:J});if(C!==void 0)return C;if(zC(Q,{checkOpen:!1}))throw TypeError(`The \`${B}: Stream\` option cannot both be an array and include a stream with synchronous methods.`);return A},ghQ=({value:A,optionName:Q,fdNumber:B,direction:Y})=>{let J=hhQ(A,B);if(J===void 0)return;if(Y==="output")return{type:"fileNumber",value:J,optionName:Q};if(vhQ.isatty(J))throw TypeError(`The \`${Q}: ${xz(A)}\` option is invalid: it cannot be a TTY with synchronous methods.`);return{type:"uint8Array",value:rX(_hQ(J)),optionName:Q}},hhQ=(A,Q)=>{if(A==="inherit")return Q;if(typeof A==="number")return A;let B=Hz.indexOf(A);if(B!==-1)return B},xhQ=({stdioItem:A,stdioItem:{value:Q,optionName:B},fdNumber:Y})=>{if(Q==="inherit")return{type:"nodeStream",value:xBA(Y,Q,B),optionName:B};if(typeof Q==="number")return{type:"nodeStream",value:xBA(Q,Q,B),optionName:B};if(zC(Q,{checkOpen:!1}))return{type:"nodeStream",value:Q,optionName:B};return A},xBA=(A,Q,B)=>{let Y=Hz[A];if(Y===void 0)throw TypeError(`The \`${B}: ${Q}\` option is invalid: no such standard stream.`);return Y};var bBA=({input:A,inputFile:Q},B)=>B===0?[...fhQ(A),...mhQ(Q)]:[],fhQ=(A)=>A===void 0?[]:[{type:bhQ(A),value:A,optionName:"input"}],bhQ=(A)=>{if(TF(A,{checkOpen:!1}))return"nodeStream";if(typeof A==="string")return"string";if(TY(A))return"uint8Array";throw Error("The `input` option must be a string, a Uint8Array or a Node.js Readable stream.")},mhQ=(A)=>A===void 0?[]:[{...uhQ(A),optionName:"inputFile"}],uhQ=(A)=>{if(C2(A))return{type:"fileUrl",value:A};if(Qy(A))return{type:"filePath",value:{file:A}};throw Error("The `inputFile` option must be a file path string or a file URL.")};var mBA=(A)=>A.filter((Q,B)=>A.every((Y,J)=>Q.value!==Y.value||B>=J||Q.type==="generator"||Q.type==="asyncGenerator")),uBA=({stdioItem:{type:A,value:Q,optionName:B},direction:Y,fileDescriptors:J,isSync:C})=>{let X=dhQ(J,A);if(X.length===0)return;if(C){chQ({otherStdioItems:X,type:A,value:Q,optionName:B,direction:Y});return}if(PBA.has(A))return dBA({otherStdioItems:X,type:A,value:Q,optionName:B,direction:Y});if(TBA.has(A))phQ({otherStdioItems:X,type:A,value:Q,optionName:B})},dhQ=(A,Q)=>A.flatMap(({direction:B,stdioItems:Y})=>Y.filter((J)=>J.type===Q).map((J)=>({...J,direction:B}))),chQ=({otherStdioItems:A,type:Q,value:B,optionName:Y,direction:J})=>{if(Yy.has(Q))dBA({otherStdioItems:A,type:Q,value:B,optionName:Y,direction:J})},dBA=({otherStdioItems:A,type:Q,value:B,optionName:Y,direction:J})=>{let C=A.filter((G)=>lhQ(G,B));if(C.length===0)return;let X=C.find((G)=>G.direction!==J);return cBA(X,Y,Q),J==="output"?C[0].stream:void 0},lhQ=({type:A,value:Q},B)=>{if(A==="filePath")return Q.file===B.file;if(A==="fileUrl")return Q.href===B.href;return Q===B},phQ=({otherStdioItems:A,type:Q,value:B,optionName:Y})=>{let J=A.find(({value:{transform:C}})=>C===B.transform);cBA(J,Y,Q)},cBA=(A,Q,B)=>{if(A!==void 0)throw TypeError(`The \`${A.optionName}\` and \`${Q}\` options must not target ${tG[B]} that is the same.`)};var W2=(A,Q,B,Y)=>{let C=gBA(Q,B,Y).map((G,W)=>ihQ({stdioOption:G,fdNumber:W,options:Q,isSync:Y})),X=AxQ({initialFileDescriptors:C,addProperties:A,options:Q,isSync:Y});return Q.stdio=X.map(({stdioItems:G})=>YxQ(G)),X},ihQ=({stdioOption:A,fdNumber:Q,options:B,isSync:Y})=>{let J=Dz(Q),{stdioItems:C,isStdioArray:X}=nhQ({stdioOption:A,fdNumber:Q,options:B,optionName:J}),G=_BA(C,Q,J),W=C.map((U)=>fBA({stdioItem:U,isStdioArray:X,fdNumber:Q,direction:G,isSync:Y})),F=kBA(W,J,G,B),Z=SBA(F,G);return ehQ(F,Z),{direction:G,objectMode:Z,stdioItems:F}},nhQ=({stdioOption:A,fdNumber:Q,options:B,optionName:Y})=>{let C=[...(Array.isArray(A)?A:[A]).map((W)=>shQ(W,Y)),...bBA(B,Q)],X=mBA(C),G=X.length>1;return rhQ(X,G,Y),ohQ(X),{stdioItems:X,isStdioArray:G}},shQ=(A,Q)=>({type:LBA(A,Q),value:A,optionName:Q}),rhQ=(A,Q,B)=>{if(A.length===0)throw TypeError(`The \`${B}\` option must not be an empty array.`);if(!Q)return;for(let{value:Y,optionName:J}of A)if(ahQ.has(Y))throw Error(`The \`${J}\` option must not include \`${Y}\`.`)},ahQ=new Set(["ignore","ipc"]),ohQ=(A)=>{for(let Q of A)thQ(Q)},thQ=({type:A,value:Q,optionName:B})=>{if(RBA(Q))throw TypeError(`The \`${B}: URL\` option must use the \`file:\` scheme. +For example, you can use the \`pathToFileURL()\` method of the \`url\` core module.`);if(wBA(A,Q))throw TypeError(`The \`${B}: { file: '...' }\` option must be used instead of \`${B}: '...'\`.`)},ehQ=(A,Q)=>{if(!Q)return;let B=A.find(({type:Y})=>G2.has(Y));if(B!==void 0)throw TypeError(`The \`${B.optionName}\` option cannot use both files and transforms in objectMode.`)},AxQ=({initialFileDescriptors:A,addProperties:Q,options:B,isSync:Y})=>{let J=[];try{for(let C of A)J.push(QxQ({fileDescriptor:C,fileDescriptors:J,addProperties:Q,options:B,isSync:Y}));return J}catch(C){throw Gy(J),C}},QxQ=({fileDescriptor:{direction:A,objectMode:Q,stdioItems:B},fileDescriptors:Y,addProperties:J,options:C,isSync:X})=>{let G=B.map((W)=>BxQ({stdioItem:W,addProperties:J,direction:A,options:C,fileDescriptors:Y,isSync:X}));return{direction:A,objectMode:Q,stdioItems:G}},BxQ=({stdioItem:A,addProperties:Q,direction:B,options:Y,fileDescriptors:J,isSync:C})=>{let X=uBA({stdioItem:A,direction:B,fileDescriptors:J,isSync:C});if(X!==void 0)return{...A,stream:X};return{...A,...Q[B][A.type](A,Y)}},Gy=(A)=>{for(let{stdioItems:Q}of A)for(let{stream:B}of Q)if(B!==void 0&&!qC(B))B.destroy()},YxQ=(A)=>{if(A.length>1)return A.some(({value:Y})=>Y==="overlapped")?"overlapped":"pipe";let[{type:Q,value:B}]=A;return Q==="native"?B:"pipe"};var iBA=(A,Q)=>W2(CxQ,A,Q,!0),S1=({type:A,optionName:Q})=>{nBA(Q,tG[A])},JxQ=({optionName:A,value:Q})=>{if(Q==="ipc"||Q==="overlapped")nBA(A,`"${Q}"`);return{}},nBA=(A,Q)=>{throw TypeError(`The \`${A}\` option cannot be ${Q} with synchronous methods.`)},pBA={generator(){},asyncGenerator:S1,webStream:S1,nodeStream:S1,webTransform:S1,duplex:S1,asyncIterable:S1,native:JxQ},CxQ={input:{...pBA,fileUrl:({value:A})=>({contents:[rX(lBA(A))]}),filePath:({value:{file:A}})=>({contents:[rX(lBA(A))]}),fileNumber:S1,iterable:({value:A})=>({contents:[...A]}),string:({value:A})=>({contents:[A]}),uint8Array:({value:A})=>({contents:[A]})},output:{...pBA,fileUrl:({value:A})=>({path:A}),filePath:({value:{file:A,append:Q}})=>({path:A,append:Q}),fileNumber:({value:A})=>({path:A}),iterable:S1,string:S1,uint8Array:S1}};var eX=(A,{stripFinalNewline:Q},B)=>Wy(Q,B)&&A!==void 0&&!Array.isArray(A)?k4(A):A,Wy=(A,Q)=>Q==="all"?A[1]||A[2]:A[Q];import{Transform as jxQ,getDefaultHighWaterMark as J0A}from"node:stream";var F2=(A,Q,B,Y)=>A||B?void 0:rBA(Q,Y),Zy=(A,Q,B)=>B?A.flatMap((Y)=>sBA(Y,Q)):sBA(A,Q),sBA=(A,Q)=>{let{transform:B,final:Y}=rBA(Q,{});return[...B(A),...Y()]},rBA=(A,Q)=>{return Q.previousChunks="",{transform:XxQ.bind(void 0,Q,A),final:WxQ.bind(void 0,Q)}},XxQ=function*(A,Q,B){if(typeof B!=="string"){yield B;return}let{previousChunks:Y}=A,J=-1;for(let C=0;C0)G=Fy(Y,G),Y="";yield G,J=C}if(J!==B.length-1)Y=Fy(Y,B.slice(J+1));A.previousChunks=Y},GxQ=(A,Q,B,Y)=>{if(B)return 0;return Y.isWindowsNewline=Q!==0&&A[Q-1]==="\r",Y.isWindowsNewline?2:1},WxQ=function*({previousChunks:A}){if(A.length>0)yield A},aBA=({binary:A,preserveNewlines:Q,readableObjectMode:B,state:Y})=>A||Q||B?void 0:{transform:FxQ.bind(void 0,Y)},FxQ=function*({isWindowsNewline:A=!1},Q){let{unixNewline:B,windowsNewline:Y,LF:J,concatBytes:C}=typeof Q==="string"?ZxQ:UxQ;if(Q.at(-1)===J){yield Q;return}yield C(Q,A?Y:B)},Fy=(A,Q)=>`${A}${Q}`,ZxQ={windowsNewline:`\r `,unixNewline:` `,LF:` `,concatBytes:Fy},$xQ=(A,Q)=>{let B=new Uint8Array(A.length+Q.length);return B.set(A,0),B.set(Q,A.length),B},UxQ={windowsNewline:new Uint8Array([13,10]),unixNewline:new Uint8Array([10]),LF:10,concatBytes:$xQ};import{Buffer as ExQ}from"node:buffer";var oBA=(A,Q)=>A?void 0:KxQ.bind(void 0,Q),KxQ=function*(A,Q){if(typeof Q!=="string"&&!TY(Q)&&!ExQ.isBuffer(Q))throw TypeError(`The \`${A}\` option's transform must use "objectMode: true" to receive as input: ${typeof Q}.`);yield Q},tBA=(A,Q)=>A?VxQ.bind(void 0,Q):IxQ.bind(void 0,Q),VxQ=function*(A,Q){eBA(A,Q),yield Q},IxQ=function*(A,Q){if(eBA(A,Q),typeof Q!=="string"&&!TY(Q))throw TypeError(`The \`${A}\` option's function must yield a string or an Uint8Array, not ${typeof Q}.`);yield Q},eBA=(A,Q)=>{if(Q===null||Q===void 0)throw TypeError(`The \`${A}\` option's function must not call \`yield ${Q}\`. Instead, \`yield\` should either be called with a value, or not be called at all. For example: - if (condition) { yield value; }`)};import{Buffer as HxQ}from"node:buffer";import{StringDecoder as DxQ}from"node:string_decoder";var Z2=(A,Q,B)=>{if(B)return;if(A)return{transform:NxQ.bind(void 0,new TextEncoder)};let Y=new DxQ(Q);return{transform:LxQ.bind(void 0,Y),final:qxQ.bind(void 0,Y)}},NxQ=function*(A,Q){if(HxQ.isBuffer(Q))yield rX(Q);else if(typeof Q==="string")yield A.encode(Q);else yield Q},LxQ=function*(A,Q){yield TY(Q)?A.write(Q):Q},qxQ=function*(A){let Q=A.end();if(Q!=="")yield Q};import{callbackify as A0A}from"node:util";var $y=A0A(async(A,Q,B,Y)=>{Q.currentIterable=A(...B);try{for await(let J of Q.currentIterable)Y.push(J)}finally{delete Q.currentIterable}}),$2=async function*(A,Q,B){if(B===Q.length){yield A;return}let{transform:Y=zxQ}=Q[B];for await(let J of Y(A))yield*$2(J,Q,B+1)},Q0A=async function*(A){for(let[Q,{final:B}]of Object.entries(A))yield*MxQ(B,Number(Q),A)},MxQ=async function*(A,Q,B){if(A===void 0)return;for await(let Y of A())yield*$2(Y,B,Q+1)},B0A=A0A(async({currentIterable:A},Q)=>{if(A!==void 0){await(Q?A.throw(Q):A.return());return}if(Q)throw Q}),zxQ=function*(A){yield A};var Uy=(A,Q,B,Y)=>{try{for(let J of A(...Q))B.push(J);Y()}catch(J){Y(J)}},Y0A=(A,Q)=>[...Q.flatMap((B)=>[...kF(B,A,0)]),...VI(A)],kF=function*(A,Q,B){if(B===Q.length){yield A;return}let{transform:Y=wxQ}=Q[B];for(let J of Y(A))yield*kF(J,Q,B+1)},VI=function*(A){for(let[Q,{final:B}]of Object.entries(A))yield*RxQ(B,Number(Q),A)},RxQ=function*(A,Q,B){if(A===void 0)return;for(let Y of A())yield*kF(Y,B,Q+1)},wxQ=function*(A){yield A};var Ey=({value:A,value:{transform:Q,final:B,writableObjectMode:Y,readableObjectMode:J},optionName:C},{encoding:X})=>{let G={},W=C0A(A,X,C),F=SF(Q),Z=SF(B),U=F?$y.bind(void 0,$2,G):Uy.bind(void 0,kF),$=F||Z?$y.bind(void 0,Q0A,G):Uy.bind(void 0,VI),E=F||Z?B0A.bind(void 0,G):void 0;return{stream:new jxQ({writableObjectMode:Y,writableHighWaterMark:J0A(Y),readableObjectMode:J,readableHighWaterMark:J0A(J),transform(I,V,H){U([I,W,0],this,H)},flush(I){$([W],this,I)},destroy:E})}},U2=(A,Q,B,Y)=>{let J=Q.filter(({type:X})=>X==="generator"),C=Y?J.reverse():J;for(let{value:X,optionName:G}of C){let W=C0A(X,B,G);A=Y0A(W,A)}return A},C0A=({transform:A,final:Q,binary:B,writableObjectMode:Y,readableObjectMode:J,preserveNewlines:C},X,G)=>{let W={};return[{transform:oBA(Y,G)},Z2(B,X,Y),F2(B,C,Y,W),{transform:A,final:Q},{transform:tBA(J,G)},aBA({binary:B,preserveNewlines:C,readableObjectMode:J,state:W})].filter(Boolean)};var X0A=(A,Q)=>{for(let B of OxQ(A))PxQ(A,B,Q)},OxQ=(A)=>new Set(Object.entries(A).filter(([,{direction:Q}])=>Q==="input").map(([Q])=>Number(Q))),PxQ=(A,Q,B)=>{let{stdioItems:Y}=A[Q],J=Y.filter(({contents:G})=>G!==void 0);if(J.length===0)return;if(Q!==0){let[{type:G,optionName:W}]=J;throw TypeError(`Only the \`stdin\` option, not \`${W}\`, can be ${tG[G]} with synchronous methods.`)}let X=J.map(({contents:G})=>G).map((G)=>TxQ(G,Y));B.input=GI(X)},TxQ=(A,Q)=>{let B=U2(A,Q,"utf8",!0);return SxQ(B),GI(B)},SxQ=(A)=>{let Q=A.find((B)=>typeof B!=="string"&&!TY(B));if(Q!==void 0)throw TypeError(`The \`stdin\` option is invalid: when passing objects as input, a transform must be used to serialize them to strings or Uint8Arrays: ${Q}.`)};import{writeFileSync as yxQ,appendFileSync as gxQ}from"node:fs";var E2=({stdioItems:A,encoding:Q,verboseInfo:B,fdNumber:Y})=>Y!=="all"&&R4(B,Y)&&!G8.has(Q)&&kxQ(Y)&&(A.some(({type:J,value:C})=>J==="native"&&_xQ.has(C))||A.every(({type:J})=>B5.has(J))),kxQ=(A)=>A===1||A===2,_xQ=new Set(["pipe","overlapped"]),G0A=async(A,Q,B,Y)=>{for await(let J of A)if(!vxQ(Q))F0A(J,B,Y)},W0A=(A,Q,B)=>{for(let Y of A)F0A(Y,Q,B)},vxQ=(A)=>A._readableState.pipes.length>0,F0A=(A,Q,B)=>{let Y=Rz(A);j1({type:"output",verboseMessage:Y,fdNumber:Q,verboseInfo:B})};var Z0A=({fileDescriptors:A,syncResult:{output:Q},options:B,isMaxBuffer:Y,verboseInfo:J})=>{if(Q===null)return{output:Array.from({length:3})};let C={},X=new Set([]);return{output:Q.map((W,F)=>hxQ({result:W,fileDescriptors:A,fdNumber:F,state:C,outputFiles:X,isMaxBuffer:Y,verboseInfo:J},B)),...C}},hxQ=({result:A,fileDescriptors:Q,fdNumber:B,state:Y,outputFiles:J,isMaxBuffer:C,verboseInfo:X},{buffer:G,encoding:W,lines:F,stripFinalNewline:Z,maxBuffer:U})=>{if(A===null)return;let $=$BA(A,C,U),E=rX($),{stdioItems:K,objectMode:I}=Q[B],V=xxQ([E],K,W,Y),{serializedResult:H,finalResult:D=H}=fxQ({chunks:V,objectMode:I,encoding:W,lines:F,stripFinalNewline:Z,fdNumber:B});bxQ({serializedResult:H,fdNumber:B,state:Y,verboseInfo:X,encoding:W,stdioItems:K,objectMode:I});let L=G[B]?D:void 0;try{if(Y.error===void 0)mxQ(H,K,J);return L}catch(z){return Y.error=z,L}},xxQ=(A,Q,B,Y)=>{try{return U2(A,Q,B,!1)}catch(J){return Y.error=J,A}},fxQ=({chunks:A,objectMode:Q,encoding:B,lines:Y,stripFinalNewline:J,fdNumber:C})=>{if(Q)return{serializedResult:A};if(B==="buffer")return{serializedResult:GI(A)};let X=we(A,B);if(Y[C])return{serializedResult:X,finalResult:Zy(X,!J[C],Q)};return{serializedResult:X}},bxQ=({serializedResult:A,fdNumber:Q,state:B,verboseInfo:Y,encoding:J,stdioItems:C,objectMode:X})=>{if(!E2({stdioItems:C,encoding:J,verboseInfo:Y,fdNumber:Q}))return;let G=Zy(A,!1,X);try{W0A(G,Q,Y)}catch(W){B.error??=W}},mxQ=(A,Q,B)=>{for(let{path:Y,append:J}of Q.filter(({type:C})=>G2.has(C))){let C=typeof Y==="string"?Y:Y.toString();if(J||B.has(C))gxQ(Y,A);else B.add(C),yxQ(Y,A)}};var $0A=([,A,Q],B)=>{if(!B.all)return;if(A===void 0)return Q;if(Q===void 0)return A;if(Array.isArray(A))return Array.isArray(Q)?[...A,...Q]:[...A,eX(Q,B,"all")];if(Array.isArray(Q))return[eX(A,B,"all"),...Q];if(TY(A)&&TY(Q))return Nv([A,Q]);return`${A}${Q}`};import{once as Ky}from"node:events";var U0A=async(A,Q)=>{let[B,Y]=await uxQ(A);return Q.isForcefullyTerminated??=!1,[B,Y]},uxQ=async(A)=>{let[Q,B]=await Promise.allSettled([Ky(A,"spawn"),Ky(A,"exit")]);if(Q.status==="rejected")return[];return B.status==="rejected"?E0A(A):B.value},E0A=async(A)=>{try{return await Ky(A,"exit")}catch{return E0A(A)}},K0A=async(A)=>{let[Q,B]=await A;if(!dxQ(Q,B)&&Vy(Q,B))throw new O1;return[Q,B]},dxQ=(A,Q)=>A===void 0&&Q===void 0,Vy=(A,Q)=>A!==0||Q!==null;var V0A=({error:A,status:Q,signal:B,output:Y},{maxBuffer:J})=>{let C=cxQ(A,Q,B),X=C?.code==="ETIMEDOUT",G=ZBA(C,Y,J);return{resultError:C,exitCode:Q,signal:B,timedOut:X,isMaxBuffer:G}},cxQ=(A,Q,B)=>{if(A!==void 0)return A;return Vy(Q,B)?new O1:void 0};var I0A=(A,Q,B)=>{let{file:Y,commandArguments:J,command:C,escapedCommand:X,startTime:G,verboseInfo:W,options:F,fileDescriptors:Z}=pxQ(A,Q,B),U=sxQ({file:Y,commandArguments:J,options:F,command:C,escapedCommand:X,verboseInfo:W,fileDescriptors:Z,startTime:G});return v4(U,W,F)},pxQ=(A,Q,B)=>{let{command:Y,escapedCommand:J,startTime:C,verboseInfo:X}=jz(A,Q,B),G=ixQ(B),{file:W,commandArguments:F,options:Z}=rz(A,Q,G);nxQ(Z);let U=iBA(Z,X);return{file:W,commandArguments:F,command:Y,escapedCommand:J,startTime:C,verboseInfo:X,options:Z,fileDescriptors:U}},ixQ=(A)=>A.node&&!A.ipc?{...A,ipc:!1}:A,nxQ=({ipc:A,ipcInput:Q,detached:B,cancelSignal:Y})=>{if(Q)K2("ipcInput");if(A)K2("ipc: true");if(B)K2("detached: true");if(Y)K2("cancelSignal")},K2=(A)=>{throw TypeError(`The "${A}" option cannot be used with synchronous methods.`)},sxQ=({file:A,commandArguments:Q,options:B,command:Y,escapedCommand:J,verboseInfo:C,fileDescriptors:X,startTime:G})=>{let W=rxQ({file:A,commandArguments:Q,options:B,command:Y,escapedCommand:J,fileDescriptors:X,startTime:G});if(W.failed)return W;let{resultError:F,exitCode:Z,signal:U,timedOut:$,isMaxBuffer:E}=V0A(W,B),{output:K,error:I=F}=Z0A({fileDescriptors:X,syncResult:W,options:B,isMaxBuffer:E,verboseInfo:C}),V=K.map((D,L)=>eX(D,B,L)),H=eX($0A(K,B),B,"all");return oxQ({error:I,exitCode:Z,signal:U,timedOut:$,isMaxBuffer:E,stdio:V,all:H,options:B,command:Y,escapedCommand:J,startTime:G})},rxQ=({file:A,commandArguments:Q,options:B,command:Y,escapedCommand:J,fileDescriptors:C,startTime:X})=>{try{X0A(C,B);let G=axQ(B);return lxQ(A,Q,G)}catch(G){return _4({error:G,command:Y,escapedCommand:J,fileDescriptors:C,options:B,startTime:X,isSync:!0})}},axQ=({encoding:A,maxBuffer:Q,...B})=>({...B,encoding:"buffer",maxBuffer:Y2(Q)}),oxQ=({error:A,exitCode:Q,signal:B,timedOut:Y,isMaxBuffer:J,stdio:C,all:X,options:G,command:W,escapedCommand:F,startTime:Z})=>A===void 0?J2({command:W,escapedCommand:F,stdio:C,all:X,ipcOutput:[],options:G,startTime:Z}):KI({error:A,command:W,escapedCommand:F,timedOut:Y,isCanceled:!1,isGracefullyCanceled:!1,isMaxBuffer:J,isForcefullyTerminated:!1,exitCode:Q,signal:B,stdio:C,all:X,ipcOutput:[],options:G,startTime:Z,isSync:!0});import{setMaxListeners as fbQ}from"node:events";import{spawn as bbQ}from"node:child_process";import q0A from"node:process";import{once as Iy,on as txQ}from"node:events";var H0A=({anyProcess:A,channel:Q,isSubprocess:B,ipc:Y},{reference:J=!0,filter:C}={})=>{return O4({methodName:"getOneMessage",isSubprocess:B,ipc:Y,isConnected:cz(A)}),exQ({anyProcess:A,channel:Q,isSubprocess:B,filter:C,reference:J})},exQ=async({anyProcess:A,channel:Q,isSubprocess:B,filter:Y,reference:J})=>{bz(Q,J);let C=oG(A,Q,B),X=new AbortController;try{return await Promise.race([AfQ(C,Y,X),QfQ(C,B,X),BfQ(C,B,X)])}catch(G){throw P4(A),G}finally{X.abort(),mz(Q,J)}},AfQ=async(A,Q,{signal:B})=>{if(Q===void 0){let[Y]=await Iy(A,"message",{signal:B});return Y}for await(let[Y]of txQ(A,"message",{signal:B}))if(Q(Y))return Y},QfQ=async(A,Q,{signal:B})=>{await Iy(A,"disconnect",{signal:B}),BQA(Q)},BfQ=async(A,Q,{signal:B})=>{let[Y]=await Iy(A,"strict:error",{signal:B});throw hz(Y,Q)};import{once as N0A,on as YfQ}from"node:events";var L0A=({anyProcess:A,channel:Q,isSubprocess:B,ipc:Y},{reference:J=!0}={})=>Hy({anyProcess:A,channel:Q,isSubprocess:B,ipc:Y,shouldAwait:!B,reference:J}),Hy=({anyProcess:A,channel:Q,isSubprocess:B,ipc:Y,shouldAwait:J,reference:C})=>{O4({methodName:"getEachMessage",isSubprocess:B,ipc:Y,isConnected:cz(A)}),bz(Q,C);let X=oG(A,Q,B),G=new AbortController,W={};return JfQ(A,X,G),CfQ({ipcEmitter:X,isSubprocess:B,controller:G,state:W}),XfQ({anyProcess:A,channel:Q,ipcEmitter:X,isSubprocess:B,shouldAwait:J,controller:G,state:W,reference:C})},JfQ=async(A,Q,B)=>{try{await N0A(Q,"disconnect",{signal:B.signal}),B.abort()}catch{}},CfQ=async({ipcEmitter:A,isSubprocess:Q,controller:B,state:Y})=>{try{let[J]=await N0A(A,"strict:error",{signal:B.signal});Y.error=hz(J,Q),B.abort()}catch{}},XfQ=async function*({anyProcess:A,channel:Q,ipcEmitter:B,isSubprocess:Y,shouldAwait:J,controller:C,state:X,reference:G}){try{for await(let[W]of YfQ(B,"message",{signal:C.signal}))D0A(X),yield W}catch{D0A(X)}finally{if(C.abort(),mz(Q,G),!Y)P4(A);if(J)await A}},D0A=({error:A})=>{if(A)throw A};var M0A=(A,{ipc:Q})=>{Object.assign(A,R0A(A,!1,Q))},z0A=()=>{let A=q0A,Q=!0,B=q0A.channel!==void 0;return{...R0A(A,!0,B),getCancelSignal:TQA.bind(void 0,{anyProcess:A,channel:A.channel,isSubprocess:!0,ipc:B})}},R0A=(A,Q,B)=>({sendMessage:nz.bind(void 0,{anyProcess:A,channel:A.channel,isSubprocess:Q,ipc:B}),getOneMessage:H0A.bind(void 0,{anyProcess:A,channel:A.channel,isSubprocess:Q,ipc:B}),getEachMessage:L0A.bind(void 0,{anyProcess:A,channel:A.channel,isSubprocess:Q,ipc:B})});import{ChildProcess as GfQ}from"node:child_process";import{PassThrough as WfQ,Readable as FfQ,Writable as ZfQ,Duplex as $fQ}from"node:stream";var w0A=({error:A,command:Q,escapedCommand:B,fileDescriptors:Y,options:J,startTime:C,verboseInfo:X})=>{Gy(Y);let G=new GfQ;UfQ(G,Y),Object.assign(G,{readable:EfQ,writable:KfQ,duplex:VfQ});let W=_4({error:A,command:Q,escapedCommand:B,fileDescriptors:Y,options:J,startTime:C,isSync:!1}),F=IfQ(W,X,J);return{subprocess:G,promise:F}},UfQ=(A,Q)=>{let B=II(),Y=II(),J=II(),C=Array.from({length:Q.length-3},II),X=II(),G=[B,Y,J,...C];Object.assign(A,{stdin:B,stdout:Y,stderr:J,all:X,stdio:G})},II=()=>{let A=new WfQ;return A.end(),A},EfQ=()=>new FfQ({read(){}}),KfQ=()=>new ZfQ({write(){}}),VfQ=()=>new $fQ({read(){},write(){}}),IfQ=async(A,Q,B)=>v4(A,Q,B);import{createReadStream as j0A,createWriteStream as O0A}from"node:fs";import{Buffer as HfQ}from"node:buffer";import{Readable as HI,Writable as DfQ,Duplex as NfQ}from"node:stream";var T0A=(A,Q)=>W2(LfQ,A,Q,!1),DI=({type:A,optionName:Q})=>{throw TypeError(`The \`${Q}\` option cannot be ${tG[A]}.`)},P0A={fileNumber:DI,generator:Ey,asyncGenerator:Ey,nodeStream:({value:A})=>({stream:A}),webTransform({value:{transform:A,writableObjectMode:Q,readableObjectMode:B}}){let Y=Q||B;return{stream:NfQ.fromWeb(A,{objectMode:Y})}},duplex:({value:{transform:A}})=>({stream:A}),native(){}},LfQ={input:{...P0A,fileUrl:({value:A})=>({stream:j0A(A)}),filePath:({value:{file:A}})=>({stream:j0A(A)}),webStream:({value:A})=>({stream:HI.fromWeb(A)}),iterable:({value:A})=>({stream:HI.from(A)}),asyncIterable:({value:A})=>({stream:HI.from(A)}),string:({value:A})=>({stream:HI.from(A)}),uint8Array:({value:A})=>({stream:HI.from(HfQ.from(A))})},output:{...P0A,fileUrl:({value:A})=>({stream:O0A(A)}),filePath:({value:{file:A,append:Q}})=>({stream:O0A(A,Q?{flags:"a"}:{})}),webStream:({value:A})=>({stream:DfQ.fromWeb(A)}),iterable:DI,asyncIterable:DI,string:DI,uint8Array:DI}};import{on as qfQ,once as S0A}from"node:events";import{PassThrough as MfQ,getDefaultHighWaterMark as zfQ}from"node:stream";import{finished as v0A}from"node:stream/promises";function _F(A){if(!Array.isArray(A))throw TypeError(`Expected an array, got \`${typeof A}\`.`);for(let J of A)Dy(J);let Q=A.some(({readableObjectMode:J})=>J),B=RfQ(A,Q),Y=new y0A({objectMode:Q,writableHighWaterMark:B,readableHighWaterMark:B});for(let J of A)Y.add(J);return Y}var RfQ=(A,Q)=>{if(A.length===0)return zfQ(Q);let B=A.filter(({readableObjectMode:Y})=>Y===Q).map(({readableHighWaterMark:Y})=>Y);return Math.max(...B)};class y0A extends MfQ{#A=new Set([]);#Q=new Set([]);#B=new Set([]);#Y;#J=Symbol("unpipe");#C=new WeakMap;add(A){if(Dy(A),this.#A.has(A))return;this.#A.add(A),this.#Y??=wfQ(this,this.#A,this.#J);let Q=PfQ({passThroughStream:this,stream:A,streams:this.#A,ended:this.#Q,aborted:this.#B,onFinished:this.#Y,unpipeEvent:this.#J});this.#C.set(A,Q),A.pipe(this,{end:!1})}async remove(A){if(Dy(A),!this.#A.has(A))return!1;let Q=this.#C.get(A);if(Q===void 0)return!1;return this.#C.delete(A),A.unpipe(this),await Q,!0}}var wfQ=async(A,Q,B)=>{V2(A,k0A);let Y=new AbortController;try{await Promise.race([jfQ(A,Y),OfQ(A,Q,B,Y)])}finally{Y.abort(),V2(A,-k0A)}},jfQ=async(A,{signal:Q})=>{try{await v0A(A,{signal:Q,cleanup:!0})}catch(B){throw g0A(A,B),B}},OfQ=async(A,Q,B,{signal:Y})=>{for await(let[J]of qfQ(A,"unpipe",{signal:Y}))if(Q.has(J))J.emit(B)},Dy=(A)=>{if(typeof A?.pipe!=="function")throw TypeError(`Expected a readable stream, got: \`${typeof A}\`.`)},PfQ=async({passThroughStream:A,stream:Q,streams:B,ended:Y,aborted:J,onFinished:C,unpipeEvent:X})=>{V2(A,_0A);let G=new AbortController;try{await Promise.race([TfQ(C,Q,G),SfQ({passThroughStream:A,stream:Q,streams:B,ended:Y,aborted:J,controller:G}),kfQ({stream:Q,streams:B,ended:Y,aborted:J,unpipeEvent:X,controller:G})])}finally{G.abort(),V2(A,-_0A)}if(B.size>0&&B.size===Y.size+J.size)if(Y.size===0&&J.size>0)Ny(A);else _fQ(A)},TfQ=async(A,Q,{signal:B})=>{try{if(await A,!B.aborted)Ny(Q)}catch(Y){if(!B.aborted)g0A(Q,Y)}},SfQ=async({passThroughStream:A,stream:Q,streams:B,ended:Y,aborted:J,controller:{signal:C}})=>{try{if(await v0A(Q,{signal:C,cleanup:!0,readable:!0,writable:!1}),B.has(Q))Y.add(Q)}catch(X){if(C.aborted||!B.has(Q))return;if(h0A(X))J.add(Q);else x0A(A,X)}},kfQ=async({stream:A,streams:Q,ended:B,aborted:Y,unpipeEvent:J,controller:{signal:C}})=>{if(await S0A(A,J,{signal:C}),!A.readable)return S0A(C,"abort",{signal:C});Q.delete(A),B.delete(A),Y.delete(A)},_fQ=(A)=>{if(A.writable)A.end()},g0A=(A,Q)=>{if(h0A(Q))Ny(A);else x0A(A,Q)},h0A=(A)=>A?.code==="ERR_STREAM_PREMATURE_CLOSE",Ny=(A)=>{if(A.readable||A.writable)A.destroy()},x0A=(A,Q)=>{if(!A.destroyed)A.once("error",vfQ),A.destroy(Q)},vfQ=()=>{},V2=(A,Q)=>{let B=A.getMaxListeners();if(B!==0&&B!==Number.POSITIVE_INFINITY)A.setMaxListeners(B+Q)},k0A=2,_0A=1;import{finished as f0A}from"node:stream/promises";var g4=(A,Q)=>{A.pipe(Q),yfQ(A,Q),gfQ(A,Q)},yfQ=async(A,Q)=>{if(qC(A)||qC(Q))return;try{await f0A(A,{cleanup:!0,readable:!0,writable:!1})}catch{}Ly(Q)},Ly=(A)=>{if(A.writable)A.end()},gfQ=async(A,Q)=>{if(qC(A)||qC(Q))return;try{await f0A(Q,{cleanup:!0,readable:!1,writable:!0})}catch{}qy(A)},qy=(A)=>{if(A.readable)A.destroy()};var b0A=(A,Q,B)=>{let Y=new Map;for(let[J,{stdioItems:C,direction:X}]of Object.entries(Q)){for(let{stream:G}of C.filter(({type:W})=>B5.has(W)))hfQ(A,G,X,J);for(let{stream:G}of C.filter(({type:W})=>!B5.has(W)))ffQ({subprocess:A,stream:G,direction:X,fdNumber:J,pipeGroups:Y,controller:B})}for(let[J,C]of Y.entries()){let X=C.length===1?C[0]:_F(C);g4(X,J)}},hfQ=(A,Q,B,Y)=>{if(B==="output")g4(A.stdio[Y],Q);else g4(Q,A.stdio[Y]);let J=xfQ[Y];if(J!==void 0)A[J]=Q;A.stdio[Y]=Q},xfQ=["stdin","stdout","stderr"],ffQ=({subprocess:A,stream:Q,direction:B,fdNumber:Y,pipeGroups:J,controller:C})=>{if(Q===void 0)return;bfQ(Q,C);let[X,G]=B==="output"?[Q,A.stdio[Y]]:[A.stdio[Y],Q],W=J.get(X)??[];J.set(X,[...W,G])},bfQ=(A,{signal:Q})=>{if(qC(A))PF(A,mfQ,Q)},mfQ=2;import{addAbortListener as cfQ}from"node:events";var vF=[];vF.push("SIGHUP","SIGINT","SIGTERM");if(process.platform!=="win32")vF.push("SIGALRM","SIGABRT","SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");if(process.platform==="linux")vF.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT");var I2=(A)=>!!A&&typeof A==="object"&&typeof A.removeListener==="function"&&typeof A.emit==="function"&&typeof A.reallyExit==="function"&&typeof A.listeners==="function"&&typeof A.kill==="function"&&typeof A.pid==="number"&&typeof A.on==="function",My=Symbol.for("signal-exit emitter"),zy=globalThis,ufQ=Object.defineProperty.bind(Object);class m0A{emitted={afterExit:!1,exit:!1};listeners={afterExit:[],exit:[]};count=0;id=Math.random();constructor(){if(zy[My])return zy[My];ufQ(zy,My,{value:this,writable:!1,enumerable:!1,configurable:!1})}on(A,Q){this.listeners[A].push(Q)}removeListener(A,Q){let B=this.listeners[A],Y=B.indexOf(Q);if(Y===-1)return;if(Y===0&&B.length===1)B.length=0;else B.splice(Y,1)}emit(A,Q,B){if(this.emitted[A])return!1;this.emitted[A]=!0;let Y=!1;for(let J of this.listeners[A])Y=J(Q,B)===!0||Y;if(A==="exit")Y=this.emit("afterExit",Q,B)||Y;return Y}}class wy{}var dfQ=(A)=>{return{onExit(Q,B){return A.onExit(Q,B)},load(){return A.load()},unload(){return A.unload()}}};class u0A extends wy{onExit(){return()=>{}}load(){}unload(){}}class d0A extends wy{#A=Ry.platform==="win32"?"SIGINT":"SIGHUP";#Q=new m0A;#B;#Y;#J;#C={};#W=!1;constructor(A){super();this.#B=A,this.#C={};for(let Q of vF)this.#C[Q]=()=>{let B=this.#B.listeners(Q),{count:Y}=this.#Q,J=A;if(typeof J.__signal_exit_emitter__==="object"&&typeof J.__signal_exit_emitter__.count==="number")Y+=J.__signal_exit_emitter__.count;if(B.length===Y){this.unload();let C=this.#Q.emit("exit",null,Q),X=Q==="SIGHUP"?this.#A:Q;if(!C)A.kill(A.pid,X)}};this.#J=A.reallyExit,this.#Y=A.emit}onExit(A,Q){if(!I2(this.#B))return()=>{};if(this.#W===!1)this.load();let B=Q?.alwaysLast?"afterExit":"exit";return this.#Q.on(B,A),()=>{if(this.#Q.removeListener(B,A),this.#Q.listeners.exit.length===0&&this.#Q.listeners.afterExit.length===0)this.unload()}}load(){if(this.#W)return;this.#W=!0,this.#Q.count+=1;for(let A of vF)try{let Q=this.#C[A];if(Q)this.#B.on(A,Q)}catch(Q){}this.#B.emit=(A,...Q)=>{return this.#G(A,...Q)},this.#B.reallyExit=(A)=>{return this.#X(A)}}unload(){if(!this.#W)return;this.#W=!1,vF.forEach((A)=>{let Q=this.#C[A];if(!Q)throw Error("Listener not defined for signal: "+A);try{this.#B.removeListener(A,Q)}catch(B){}}),this.#B.emit=this.#Y,this.#B.reallyExit=this.#J,this.#Q.count-=1}#X(A){if(!I2(this.#B))return 0;return this.#B.exitCode=A||0,this.#Q.emit("exit",this.#B.exitCode,null),this.#J.call(this.#B,this.#B.exitCode)}#G(A,...Q){let B=this.#Y;if(A==="exit"&&I2(this.#B)){if(typeof Q[0]==="number")this.#B.exitCode=Q[0];let Y=B.call(this.#B,A,...Q);return this.#Q.emit("exit",this.#B.exitCode,null),Y}else return B.call(this.#B,A,...Q)}}var Ry=globalThis.process,{onExit:c0A,load:b8Y,unload:m8Y}=dfQ(I2(Ry)?new d0A(Ry):new u0A);var l0A=(A,{cleanup:Q,detached:B},{signal:Y})=>{if(!Q||B)return;let J=c0A(()=>{A.kill()});cfQ(Y,()=>{J()})};var i0A=({source:A,sourcePromise:Q,boundOptions:B,createNested:Y},...J)=>{let C=wz(),{destination:X,destinationStream:G,destinationError:W,from:F,unpipeSignal:Z}=lfQ(B,Y,J),{sourceStream:U,sourceError:$}=ifQ(A,F),{options:E,fileDescriptors:K}=T1.get(A);return{sourcePromise:Q,sourceStream:U,sourceOptions:E,sourceError:$,destination:X,destinationStream:G,destinationError:W,unpipeSignal:Z,fileDescriptors:K,startTime:C}},lfQ=(A,Q,B)=>{try{let{destination:Y,pipeOptions:{from:J,to:C,unpipeSignal:X}={}}=pfQ(A,Q,...B),G=fz(Y,C);return{destination:Y,destinationStream:G,from:J,unpipeSignal:X}}catch(Y){return{destinationError:Y}}},pfQ=(A,Q,B,...Y)=>{if(Array.isArray(B))return{destination:Q(p0A,A)(B,...Y),pipeOptions:A};if(typeof B==="string"||B instanceof URL||Hv(B)){if(Object.keys(A).length>0)throw TypeError('Please use .pipe("file", ..., options) or .pipe(execa("file", ..., options)) instead of .pipe(options)("file", ...).');let[J,C,X]=Vz(B,...Y);return{destination:Q(p0A)(J,C,X),pipeOptions:X}}if(T1.has(B)){if(Object.keys(A).length>0)throw TypeError("Please use .pipe(options)`command` or .pipe($(options)`command`) instead of .pipe(options)($`command`).");return{destination:B,pipeOptions:Y[0]}}throw TypeError(`The first argument must be a template string, an options object, or an Execa subprocess: ${B}`)},p0A=({options:A})=>({options:{...A,stdin:"pipe",piped:!0}}),ifQ=(A,Q)=>{try{return{sourceStream:T4(A,Q)}}catch(B){return{sourceError:B}}};var s0A=({sourceStream:A,sourceError:Q,destinationStream:B,destinationError:Y,fileDescriptors:J,sourceOptions:C,startTime:X})=>{let G=nfQ({sourceStream:A,sourceError:Q,destinationStream:B,destinationError:Y});if(G!==void 0)throw jy({error:G,fileDescriptors:J,sourceOptions:C,startTime:X})},nfQ=({sourceStream:A,sourceError:Q,destinationStream:B,destinationError:Y})=>{if(Q!==void 0&&Y!==void 0)return Y;if(Y!==void 0)return qy(A),Y;if(Q!==void 0)return Ly(B),Q},jy=({error:A,fileDescriptors:Q,sourceOptions:B,startTime:Y})=>_4({error:A,command:n0A,escapedCommand:n0A,fileDescriptors:Q,options:B,startTime:Y,isSync:!1}),n0A="source.pipe(destination)";var r0A=async(A)=>{let[{status:Q,reason:B,value:Y=B},{status:J,reason:C,value:X=C}]=await A;if(!X.pipedFrom.includes(Y))X.pipedFrom.push(Y);if(J==="rejected")throw X;if(Q==="rejected")throw Y;return X};import{finished as sfQ}from"node:stream/promises";var a0A=(A,Q,B)=>{let Y=H2.has(Q)?afQ(A,Q):rfQ(A,Q);return PF(A,tfQ,B.signal),PF(Q,efQ,B.signal),ofQ(Q),Y},rfQ=(A,Q)=>{let B=_F([A]);return g4(B,Q),H2.set(Q,B),B},afQ=(A,Q)=>{let B=H2.get(Q);return B.add(A),B},ofQ=async(A)=>{try{await sfQ(A,{cleanup:!0,readable:!1,writable:!0})}catch{}H2.delete(A)},H2=new WeakMap,tfQ=2,efQ=1;import{aborted as AbQ}from"node:util";var o0A=(A,Q)=>A===void 0?[]:[QbQ(A,Q)],QbQ=async(A,{sourceStream:Q,mergedStream:B,fileDescriptors:Y,sourceOptions:J,startTime:C})=>{await AbQ(A,Q),await B.remove(Q);let X=Error("Pipe canceled by `unpipeSignal` option.");throw jy({error:X,fileDescriptors:Y,sourceOptions:J,startTime:C})};var D2=(A,...Q)=>{if(CY(Q[0]))return D2.bind(void 0,{...A,boundOptions:{...A.boundOptions,...Q[0]}});let{destination:B,...Y}=i0A(A,...Q),J=BbQ({...Y,destination:B});return J.pipe=D2.bind(void 0,{...A,source:B,sourcePromise:J,boundOptions:{}}),J},BbQ=async({sourcePromise:A,sourceStream:Q,sourceOptions:B,sourceError:Y,destination:J,destinationStream:C,destinationError:X,unpipeSignal:G,fileDescriptors:W,startTime:F})=>{let Z=YbQ(A,J);s0A({sourceStream:Q,sourceError:Y,destinationStream:C,destinationError:X,fileDescriptors:W,sourceOptions:B,startTime:F});let U=new AbortController;try{let $=a0A(Q,C,U);return await Promise.race([r0A(Z),...o0A(G,{sourceStream:Q,mergedStream:$,sourceOptions:B,fileDescriptors:W,startTime:F})])}finally{U.abort()}},YbQ=(A,Q)=>Promise.allSettled([A,Q]);import{setImmediate as ZbQ}from"node:timers/promises";import{on as JbQ}from"node:events";import{getDefaultHighWaterMark as CbQ}from"node:stream";var N2=({subprocessStdout:A,subprocess:Q,binary:B,shouldEncode:Y,encoding:J,preserveNewlines:C})=>{let X=new AbortController;return XbQ(Q,X),e0A({stream:A,controller:X,binary:B,shouldEncode:!A.readableObjectMode&&Y,encoding:J,shouldSplit:!A.readableObjectMode,preserveNewlines:C})},XbQ=async(A,Q)=>{try{await A}catch{}finally{Q.abort()}},Oy=({stream:A,onStreamEnd:Q,lines:B,encoding:Y,stripFinalNewline:J,allMixed:C})=>{let X=new AbortController;GbQ(Q,X,A);let G=A.readableObjectMode&&!C;return e0A({stream:A,controller:X,binary:Y==="buffer",shouldEncode:!G,encoding:Y,shouldSplit:!G&&B,preserveNewlines:!J})},GbQ=async(A,Q,B)=>{try{await A}catch{B.destroy()}finally{Q.abort()}},e0A=({stream:A,controller:Q,binary:B,shouldEncode:Y,encoding:J,shouldSplit:C,preserveNewlines:X})=>{let G=JbQ(A,"data",{signal:Q.signal,highWaterMark:t0A,highWatermark:t0A});return WbQ({onStdoutChunk:G,controller:Q,binary:B,shouldEncode:Y,encoding:J,shouldSplit:C,preserveNewlines:X})},Py=CbQ(!0),t0A=Py,WbQ=async function*({onStdoutChunk:A,controller:Q,binary:B,shouldEncode:Y,encoding:J,shouldSplit:C,preserveNewlines:X}){let G=FbQ({binary:B,shouldEncode:Y,encoding:J,shouldSplit:C,preserveNewlines:X});try{for await(let[W]of A)yield*kF(W,G,0)}catch(W){if(!Q.signal.aborted)throw W}finally{yield*VI(G)}},FbQ=({binary:A,shouldEncode:Q,encoding:B,shouldSplit:Y,preserveNewlines:J})=>[Z2(A,B,!Q),F2(A,J,!Y,{})].filter(Boolean);var AYA=async({stream:A,onStreamEnd:Q,fdNumber:B,encoding:Y,buffer:J,maxBuffer:C,lines:X,allMixed:G,stripFinalNewline:W,verboseInfo:F,streamInfo:Z})=>{let U=$bQ({stream:A,onStreamEnd:Q,fdNumber:B,encoding:Y,allMixed:G,verboseInfo:F,streamInfo:Z});if(!J){await Promise.all([UbQ(A),U]);return}let $=Wy(W,B),E=Oy({stream:A,onStreamEnd:Q,lines:X,encoding:Y,stripFinalNewline:$,allMixed:G}),[K]=await Promise.all([EbQ({stream:A,iterable:E,fdNumber:B,encoding:Y,maxBuffer:C,lines:X}),U]);return K},$bQ=async({stream:A,onStreamEnd:Q,fdNumber:B,encoding:Y,allMixed:J,verboseInfo:C,streamInfo:{fileDescriptors:X}})=>{if(!E2({stdioItems:X[B]?.stdioItems,encoding:Y,verboseInfo:C,fdNumber:B}))return;let G=Oy({stream:A,onStreamEnd:Q,lines:!0,encoding:Y,stripFinalNewline:!0,allMixed:J});await G0A(G,A,B,C)},UbQ=async(A)=>{if(await ZbQ(),A.readableFlowing===null)A.resume()},EbQ=async({stream:A,stream:{readableObjectMode:Q},iterable:B,fdNumber:Y,encoding:J,maxBuffer:C,lines:X})=>{try{if(Q||X)return await ez(B,{maxBuffer:C});if(J==="buffer")return new Uint8Array(await A2(B,{maxBuffer:C}));return await B2(B,{maxBuffer:C})}catch(G){return QYA(GBA({error:G,stream:A,readableObjectMode:Q,lines:X,encoding:J,fdNumber:Y}))}},Ty=async(A)=>{try{return await A}catch(Q){return QYA(Q)}},QYA=({bufferedData:A})=>ze(A)?new Uint8Array(A):A;import{finished as KbQ}from"node:stream/promises";var NI=async(A,Q,B,{isSameDirection:Y,stopOnExit:J=!1}={})=>{let C=VbQ(A,B),X=new AbortController;try{await Promise.race([...J?[B.exitPromise]:[],KbQ(A,{cleanup:!0,signal:X.signal})])}catch(G){if(!C.stdinCleanedUp)DbQ(G,Q,B,Y)}finally{X.abort()}},VbQ=(A,{originalStreams:[Q],subprocess:B})=>{let Y={stdinCleanedUp:!1};if(A===Q)IbQ(A,B,Y);return Y},IbQ=(A,Q,B)=>{let{_destroy:Y}=A;A._destroy=(...J)=>{HbQ(Q,B),Y.call(A,...J)}},HbQ=({exitCode:A,signalCode:Q},B)=>{if(A!==null||Q!==null)B.stdinCleanedUp=!0},DbQ=(A,Q,B,Y)=>{if(!NbQ(A,Q,B,Y))throw A},NbQ=(A,Q,B,Y=!0)=>{if(B.propagating)return BYA(A)||L2(A);return B.propagating=!0,Sy(B,Q)===Y?BYA(A):L2(A)},Sy=({fileDescriptors:A},Q)=>Q!=="all"&&A[Q].direction==="input",L2=(A)=>A?.code==="ERR_STREAM_PREMATURE_CLOSE",BYA=(A)=>A?.code==="EPIPE";var YYA=({subprocess:A,encoding:Q,buffer:B,maxBuffer:Y,lines:J,stripFinalNewline:C,verboseInfo:X,streamInfo:G})=>A.stdio.map((W,F)=>ky({stream:W,fdNumber:F,encoding:Q,buffer:B[F],maxBuffer:Y[F],lines:J[F],allMixed:!1,stripFinalNewline:C,verboseInfo:X,streamInfo:G})),ky=async({stream:A,fdNumber:Q,encoding:B,buffer:Y,maxBuffer:J,lines:C,allMixed:X,stripFinalNewline:G,verboseInfo:W,streamInfo:F})=>{if(!A)return;let Z=NI(A,Q,F);if(Sy(F,Q)){await Z;return}let[U]=await Promise.all([AYA({stream:A,onStreamEnd:Z,fdNumber:Q,encoding:B,buffer:Y,maxBuffer:J,lines:C,allMixed:X,stripFinalNewline:G,verboseInfo:W,streamInfo:F}),Z]);return U};var JYA=({stdout:A,stderr:Q},{all:B})=>B&&(A||Q)?_F([A,Q].filter(Boolean)):void 0,CYA=({subprocess:A,encoding:Q,buffer:B,maxBuffer:Y,lines:J,stripFinalNewline:C,verboseInfo:X,streamInfo:G})=>ky({...LbQ(A,B),fdNumber:"all",encoding:Q,maxBuffer:Y[1]+Y[2],lines:J[1]||J[2],allMixed:qbQ(A),stripFinalNewline:C,verboseInfo:X,streamInfo:G}),LbQ=({stdout:A,stderr:Q,all:B},[,Y,J])=>{let C=Y||J;if(!C)return{stream:B,buffer:C};if(!Y)return{stream:Q,buffer:C};if(!J)return{stream:A,buffer:C};return{stream:B,buffer:C}},qbQ=({all:A,stdout:Q,stderr:B})=>A&&Q&&B&&Q.readableObjectMode!==B.readableObjectMode;import{once as MbQ}from"node:events";var XYA=(A)=>R4(A,"ipc"),GYA=(A,Q)=>{let B=Rz(A);j1({type:"ipc",verboseMessage:B,fdNumber:"ipc",verboseInfo:Q})};var WYA=async({subprocess:A,buffer:Q,maxBuffer:B,ipc:Y,ipcOutput:J,verboseInfo:C})=>{if(!Y)return J;let X=XYA(C),G=aX(Q,"ipc"),W=aX(B,"ipc");for await(let F of Hy({anyProcess:A,channel:A.channel,isSubprocess:!1,ipc:Y,shouldAwait:!1,reference:!0})){if(G)WBA(A,J,W),J.push(F);if(X)GYA(F,C)}return J},FYA=async(A,Q)=>{return await Promise.allSettled([A]),Q};var ZYA=async({subprocess:A,options:{encoding:Q,buffer:B,maxBuffer:Y,lines:J,timeoutDuration:C,cancelSignal:X,gracefulCancel:G,forceKillAfterDelay:W,stripFinalNewline:F,ipc:Z,ipcInput:U},context:$,verboseInfo:E,fileDescriptors:K,originalStreams:I,onInternalError:V,controller:H})=>{let D=U0A(A,$),L={originalStreams:I,fileDescriptors:K,subprocess:A,exitPromise:D,propagating:!1},z=YYA({subprocess:A,encoding:Q,buffer:B,maxBuffer:Y,lines:J,stripFinalNewline:F,verboseInfo:E,streamInfo:L}),M=CYA({subprocess:A,encoding:Q,buffer:B,maxBuffer:Y,lines:J,stripFinalNewline:F,verboseInfo:E,streamInfo:L}),N=[],q=WYA({subprocess:A,buffer:B,maxBuffer:Y,ipc:Z,ipcOutput:N,verboseInfo:E}),w=zbQ(I,A,L),P=RbQ(K,L);try{return await Promise.race([Promise.all([{},K0A(D),Promise.all(z),M,q,bQA(A,U),...w,...P]),V,wbQ(A,H),...yQA(A,C,$,H),...QQA({subprocess:A,cancelSignal:X,gracefulCancel:G,context:$,controller:H}),..._QA({subprocess:A,cancelSignal:X,gracefulCancel:G,forceKillAfterDelay:W,context:$,controller:H})])}catch(_){return $.terminationReason??="other",Promise.all([{error:_},D,Promise.all(z.map((j)=>Ty(j))),Ty(M),FYA(q,N),Promise.allSettled(w),Promise.allSettled(P)])}},zbQ=(A,Q,B)=>A.map((Y,J)=>Y===Q.stdio[J]?void 0:NI(Y,J,B)),RbQ=(A,Q)=>A.flatMap(({stdioItems:B},Y)=>B.filter(({value:J,stream:C=J})=>zC(C,{checkOpen:!1})&&!qC(C)).map(({type:J,value:C,stream:X=C})=>NI(X,Y,Q,{isSameDirection:B5.has(J),stopOnExit:J==="native"}))),wbQ=async(A,{signal:Q})=>{let[B]=await MbQ(A,"error",{signal:Q});throw B};var $YA=()=>({readableDestroy:new WeakMap,writableFinal:new WeakMap,writableDestroy:new WeakMap}),LI=(A,Q,B)=>{let Y=A[B];if(!Y.has(Q))Y.set(Q,[]);let J=Y.get(Q),C=P1();return J.push(C),{resolve:C.resolve.bind(C),promises:J}},h4=async({resolve:A,promises:Q},B)=>{A();let[Y]=await Promise.race([Promise.allSettled([!0,B]),Promise.all([!1,...Q])]);return!Y};import{Readable as jbQ}from"node:stream";import{callbackify as ObQ}from"node:util";import{finished as UYA}from"node:stream/promises";var _y=async(A)=>{if(A===void 0)return;try{await vy(A)}catch{}},EYA=async(A)=>{if(A===void 0)return;try{await yy(A)}catch{}},vy=async(A)=>{await UYA(A,{cleanup:!0,readable:!1,writable:!0})},yy=async(A)=>{await UYA(A,{cleanup:!0,readable:!0,writable:!1})},q2=async(A,Q)=>{if(await A,Q)throw Q},M2=(A,Q,B)=>{if(B&&!L2(B))A.destroy(B);else if(Q)A.destroy()};var KYA=({subprocess:A,concurrentStreams:Q,encoding:B},{from:Y,binary:J=!0,preserveNewlines:C=!0}={})=>{let X=J||G8.has(B),{subprocessStdout:G,waitReadableDestroy:W}=gy(A,Y,Q),{readableEncoding:F,readableObjectMode:Z,readableHighWaterMark:U}=hy(G,X),{read:$,onStdoutDataDone:E}=xy({subprocessStdout:G,subprocess:A,binary:X,encoding:B,preserveNewlines:C}),K=new jbQ({read:$,destroy:ObQ(by.bind(void 0,{subprocessStdout:G,subprocess:A,waitReadableDestroy:W})),highWaterMark:U,objectMode:Z,encoding:F});return fy({subprocessStdout:G,onStdoutDataDone:E,readable:K,subprocess:A}),K},gy=(A,Q,B)=>{let Y=T4(A,Q),J=LI(B,Y,"readableDestroy");return{subprocessStdout:Y,waitReadableDestroy:J}},hy=({readableEncoding:A,readableObjectMode:Q,readableHighWaterMark:B},Y)=>Y?{readableEncoding:A,readableObjectMode:Q,readableHighWaterMark:B}:{readableEncoding:A,readableObjectMode:!0,readableHighWaterMark:Py},xy=({subprocessStdout:A,subprocess:Q,binary:B,encoding:Y,preserveNewlines:J})=>{let C=P1(),X=N2({subprocessStdout:A,subprocess:Q,binary:B,shouldEncode:!B,encoding:Y,preserveNewlines:J});return{read(){PbQ(this,X,C)},onStdoutDataDone:C}},PbQ=async(A,Q,B)=>{try{let{value:Y,done:J}=await Q.next();if(J)B.resolve();else A.push(Y)}catch{}},fy=async({subprocessStdout:A,onStdoutDataDone:Q,readable:B,subprocess:Y,subprocessStdin:J})=>{try{if(await yy(A),await Y,await _y(J),await Q,B.readable)B.push(null)}catch(C){await _y(J),VYA(B,C)}},by=async({subprocessStdout:A,subprocess:Q,waitReadableDestroy:B},Y)=>{if(await h4(B,Q))VYA(A,Y),await q2(Q,Y)},VYA=(A,Q)=>{M2(A,A.readable,Q)};import{Writable as TbQ}from"node:stream";import{callbackify as IYA}from"node:util";var HYA=({subprocess:A,concurrentStreams:Q},{to:B}={})=>{let{subprocessStdin:Y,waitWritableFinal:J,waitWritableDestroy:C}=my(A,B,Q),X=new TbQ({...uy(Y,A,J),destroy:IYA(cy.bind(void 0,{subprocessStdin:Y,subprocess:A,waitWritableFinal:J,waitWritableDestroy:C})),highWaterMark:Y.writableHighWaterMark,objectMode:Y.writableObjectMode});return dy(Y,X),X},my=(A,Q,B)=>{let Y=fz(A,Q),J=LI(B,Y,"writableFinal"),C=LI(B,Y,"writableDestroy");return{subprocessStdin:Y,waitWritableFinal:J,waitWritableDestroy:C}},uy=(A,Q,B)=>({write:SbQ.bind(void 0,A),final:IYA(kbQ.bind(void 0,A,Q,B))}),SbQ=(A,Q,B,Y)=>{if(A.write(Q,B))Y();else A.once("drain",Y)},kbQ=async(A,Q,B)=>{if(await h4(B,Q)){if(A.writable)A.end();await Q}},dy=async(A,Q,B)=>{try{if(await vy(A),Q.writable)Q.end()}catch(Y){await EYA(B),DYA(Q,Y)}},cy=async({subprocessStdin:A,subprocess:Q,waitWritableFinal:B,waitWritableDestroy:Y},J)=>{if(await h4(B,Q),await h4(Y,Q))DYA(A,J),await q2(Q,J)},DYA=(A,Q)=>{M2(A,A.writable,Q)};import{Duplex as _bQ}from"node:stream";import{callbackify as vbQ}from"node:util";var NYA=({subprocess:A,concurrentStreams:Q,encoding:B},{from:Y,to:J,binary:C=!0,preserveNewlines:X=!0}={})=>{let G=C||G8.has(B),{subprocessStdout:W,waitReadableDestroy:F}=gy(A,Y,Q),{subprocessStdin:Z,waitWritableFinal:U,waitWritableDestroy:$}=my(A,J,Q),{readableEncoding:E,readableObjectMode:K,readableHighWaterMark:I}=hy(W,G),{read:V,onStdoutDataDone:H}=xy({subprocessStdout:W,subprocess:A,binary:G,encoding:B,preserveNewlines:X}),D=new _bQ({read:V,...uy(Z,A,U),destroy:vbQ(ybQ.bind(void 0,{subprocessStdout:W,subprocessStdin:Z,subprocess:A,waitReadableDestroy:F,waitWritableFinal:U,waitWritableDestroy:$})),readableHighWaterMark:I,writableHighWaterMark:Z.writableHighWaterMark,readableObjectMode:K,writableObjectMode:Z.writableObjectMode,encoding:E});return fy({subprocessStdout:W,onStdoutDataDone:H,readable:D,subprocess:A,subprocessStdin:Z}),dy(Z,D,W),D},ybQ=async({subprocessStdout:A,subprocessStdin:Q,subprocess:B,waitReadableDestroy:Y,waitWritableFinal:J,waitWritableDestroy:C},X)=>{await Promise.all([by({subprocessStdout:A,subprocess:B,waitReadableDestroy:Y},X),cy({subprocessStdin:Q,subprocess:B,waitWritableFinal:J,waitWritableDestroy:C},X)])};var ly=(A,Q,{from:B,binary:Y=!1,preserveNewlines:J=!1}={})=>{let C=Y||G8.has(Q),X=T4(A,B),G=N2({subprocessStdout:X,subprocess:A,binary:C,shouldEncode:!0,encoding:Q,preserveNewlines:J});return gbQ(G,X,A)},gbQ=async function*(A,Q,B){try{yield*A}finally{if(Q.readable)Q.destroy();await B}};var LYA=(A,{encoding:Q})=>{let B=$YA();A.readable=KYA.bind(void 0,{subprocess:A,concurrentStreams:B,encoding:Q}),A.writable=HYA.bind(void 0,{subprocess:A,concurrentStreams:B}),A.duplex=NYA.bind(void 0,{subprocess:A,concurrentStreams:B,encoding:Q}),A.iterable=ly.bind(void 0,A,Q),A[Symbol.asyncIterator]=ly.bind(void 0,A,Q,{})};var qYA=(A,Q)=>{for(let[B,Y]of xbQ){let J=Y.value.bind(Q);Reflect.defineProperty(A,B,{...Y,value:J})}},hbQ=(async()=>{})().constructor.prototype,xbQ=["then","catch","finally"].map((A)=>[A,Reflect.getOwnPropertyDescriptor(hbQ,A)]);var MYA=(A,Q,B,Y)=>{let{file:J,commandArguments:C,command:X,escapedCommand:G,startTime:W,verboseInfo:F,options:Z,fileDescriptors:U}=mbQ(A,Q,B),{subprocess:$,promise:E}=dbQ({file:J,commandArguments:C,options:Z,startTime:W,verboseInfo:F,command:X,escapedCommand:G,fileDescriptors:U});return $.pipe=D2.bind(void 0,{source:$,sourcePromise:E,boundOptions:{},createNested:Y}),qYA($,E),T1.set($,{options:Z,fileDescriptors:U}),$},mbQ=(A,Q,B)=>{let{command:Y,escapedCommand:J,startTime:C,verboseInfo:X}=jz(A,Q,B),{file:G,commandArguments:W,options:F}=rz(A,Q,B),Z=ubQ(F),U=T0A(Z,X);return{file:G,commandArguments:W,command:Y,escapedCommand:J,startTime:C,verboseInfo:X,options:Z,fileDescriptors:U}},ubQ=({timeout:A,signal:Q,...B})=>{if(Q!==void 0)throw TypeError('The "signal" option has been renamed to "cancelSignal" instead.');return{...B,timeoutDuration:A}},dbQ=({file:A,commandArguments:Q,options:B,startTime:Y,verboseInfo:J,command:C,escapedCommand:X,fileDescriptors:G})=>{let W;try{W=bbQ(A,Q,B)}catch(K){return w0A({error:K,command:C,escapedCommand:X,fileDescriptors:G,options:B,startTime:Y,verboseInfo:J})}let F=new AbortController;fbQ(Number.POSITIVE_INFINITY,F.signal);let Z=[...W.stdio];b0A(W,G,F),l0A(W,B,F);let U={},$=P1();W.kill=eAA.bind(void 0,{kill:W.kill.bind(W),options:B,onInternalError:$,context:U,controller:F}),W.all=JYA(W,B),LYA(W,B),M0A(W,B);let E=cbQ({subprocess:W,options:B,startTime:Y,verboseInfo:J,fileDescriptors:G,originalStreams:Z,command:C,escapedCommand:X,context:U,onInternalError:$,controller:F});return{subprocess:W,promise:E}},cbQ=async({subprocess:A,options:Q,startTime:B,verboseInfo:Y,fileDescriptors:J,originalStreams:C,command:X,escapedCommand:G,context:W,onInternalError:F,controller:Z})=>{let[U,[$,E],K,I,V]=await ZYA({subprocess:A,options:Q,context:W,verboseInfo:Y,fileDescriptors:J,originalStreams:C,onInternalError:F,controller:Z});Z.abort(),F.resolve();let H=K.map((z,M)=>eX(z,Q,M)),D=eX(I,Q,"all"),L=lbQ({errorInfo:U,exitCode:$,signal:E,stdio:H,all:D,ipcOutput:V,context:W,options:Q,command:X,escapedCommand:G,startTime:B});return v4(L,Y,Q)},lbQ=({errorInfo:A,exitCode:Q,signal:B,stdio:Y,all:J,ipcOutput:C,context:X,options:G,command:W,escapedCommand:F,startTime:Z})=>("error"in A)?KI({error:A.error,command:W,escapedCommand:F,timedOut:X.terminationReason==="timeout",isCanceled:X.terminationReason==="cancel"||X.terminationReason==="gracefulCancel",isGracefullyCanceled:X.terminationReason==="gracefulCancel",isMaxBuffer:A.error instanceof oX,isForcefullyTerminated:X.isForcefullyTerminated,exitCode:Q,signal:B,stdio:Y,all:J,ipcOutput:C,options:G,startTime:Z,isSync:!1}):J2({command:W,escapedCommand:F,stdio:Y,all:J,ipcOutput:C,options:G,startTime:Z});var z2=(A,Q)=>{let B=Object.fromEntries(Object.entries(Q).map(([Y,J])=>[Y,pbQ(Y,A[Y],J)]));return{...A,...B}},pbQ=(A,Q,B)=>{if(ibQ.has(A)&&CY(Q)&&CY(B))return{...Q,...B};return B},ibQ=new Set(["env",...zv]);var eG=(A,Q,B,Y)=>{let J=(X,G,W)=>eG(X,G,B,W),C=(...X)=>nbQ({mapArguments:A,deepOptions:B,boundOptions:Q,setBoundExeca:Y,createNested:J},...X);if(Y!==void 0)Y(C,J,Q);return C},nbQ=({mapArguments:A,deepOptions:Q={},boundOptions:B={},setBoundExeca:Y,createNested:J},C,...X)=>{if(CY(C))return J(A,z2(B,C),Y);let{file:G,commandArguments:W,options:F,isSync:Z}=sbQ({mapArguments:A,firstArgument:C,nextArguments:X,deepOptions:Q,boundOptions:B});return Z?I0A(G,W,F):MYA(G,W,F,J)},sbQ=({mapArguments:A,firstArgument:Q,nextArguments:B,deepOptions:Y,boundOptions:J})=>{let C=Te(Q)?Se(Q,B):[Q,...B],[X,G,W]=Vz(...C),F=z2(z2(Y,J),W),{file:Z=X,commandArguments:U=G,options:$=F,isSync:E=!1}=A({file:X,commandArguments:G,options:F});return{file:Z,commandArguments:U,options:$,isSync:E}};var zYA=({file:A,commandArguments:Q})=>wYA(A,Q),RYA=({file:A,commandArguments:Q})=>({...wYA(A,Q),isSync:!0}),wYA=(A,Q)=>{if(Q.length>0)throw TypeError(`The command and its arguments must be passed as a single string: ${A} ${Q}.`);let[B,...Y]=rbQ(A);return{file:B,commandArguments:Y}},rbQ=(A)=>{if(typeof A!=="string")throw TypeError(`The command must be a string: ${String(A)}.`);let Q=A.trim();if(Q==="")return[];let B=[];for(let Y of Q.split(abQ)){let J=B.at(-1);if(J&&J.endsWith("\\"))B[B.length-1]=`${J.slice(0,-1)} ${Y}`;else B.push(Y)}return B},abQ=/ +/g;var jYA=(A,Q,B)=>{A.sync=Q(obQ,B),A.s=A.sync},OYA=({options:A})=>PYA(A),obQ=({options:A})=>({...PYA(A),isSync:!0}),PYA=(A)=>({options:{...tbQ(A),...A}}),tbQ=({input:A,inputFile:Q,stdio:B})=>A===void 0&&Q===void 0&&B===void 0?{stdin:"inherit"}:{},TYA={preferLocal:!0};var qI=eG(()=>({})),P1Y=eG(()=>({isSync:!0})),T1Y=eG(zYA),S1Y=eG(RYA),k1Y=eG(hQA),_1Y=eG(OYA,{},TYA,jYA),{sendMessage:v1Y,getOneMessage:y1Y,getEachMessage:g1Y,getCancelSignal:h1Y}=z0A();var rYA=qA(uYA(),1);var zI=(A)=>{if(typeof A!=="string")throw TypeError("invalid pattern");if(A.length>65536)throw TypeError("pattern is too long")};var XmQ={"[:alnum:]":["\\p{L}\\p{Nl}\\p{Nd}",!0],"[:alpha:]":["\\p{L}\\p{Nl}",!0],"[:ascii:]":["\\x00-\\x7f",!1],"[:blank:]":["\\p{Zs}\\t",!0],"[:cntrl:]":["\\p{Cc}",!0],"[:digit:]":["\\p{Nd}",!0],"[:graph:]":["\\p{Z}\\p{C}",!0,!0],"[:lower:]":["\\p{Ll}",!0],"[:print:]":["\\p{C}",!0],"[:punct:]":["\\p{P}",!0],"[:space:]":["\\p{Z}\\t\\r\\n\\v\\f",!0],"[:upper:]":["\\p{Lu}",!0],"[:word:]":["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}",!0],"[:xdigit:]":["A-Fa-f0-9",!1]},RI=(A)=>A.replace(/[[\]\\-]/g,"\\$&"),GmQ=(A)=>A.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),dYA=(A)=>A.join(""),cYA=(A,Q)=>{let B=Q;if(A.charAt(B)!=="[")throw Error("not in a brace expression");let Y=[],J=[],C=B+1,X=!1,G=!1,W=!1,F=!1,Z=B,U="";A:while(CU)Y.push(RI(U)+"-"+RI(I));else if(I===U)Y.push(RI(I));U="",C++;continue}if(A.startsWith("-]",C+1)){Y.push(RI(I+"-")),C+=2;continue}if(A.startsWith("-",C+1)){U=I,C+=2;continue}Y.push(RI(I)),C++}if(Z{return Q?A.replace(/\[([^\/\\])\]/g,"$1"):A.replace(/((?!\\).|^)\[([^\/\\])\]/g,"$1$2").replace(/\\([^\/])/g,"$1")};var WmQ=new Set(["!","?","+","*","@"]),lYA=(A)=>WmQ.has(A),FmQ="(?!(?:^|/)\\.\\.?(?:$|/))",R2="(?!\\.)",ZmQ=new Set(["[","."]),$mQ=new Set(["..","."]),UmQ=new Set("().*{}+?[]^$\\!"),EmQ=(A)=>A.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),sy="[^/]",pYA=sy+"*?",iYA=sy+"+?";class YJ{type;#A;#Q;#B=!1;#Y=[];#J;#C;#W;#X=!1;#G;#Z;#U=!1;constructor(A,Q,B={}){if(this.type=A,A)this.#Q=!0;if(this.#J=Q,this.#A=this.#J?this.#J.#A:this,this.#G=this.#A===this?B:this.#A.#G,this.#W=this.#A===this?[]:this.#A.#W,A==="!"&&!this.#A.#X)this.#W.push(this);this.#C=this.#J?this.#J.#Y.length:0}get hasMagic(){if(this.#Q!==void 0)return this.#Q;for(let A of this.#Y){if(typeof A==="string")continue;if(A.type||A.hasMagic)return this.#Q=!0}return this.#Q}toString(){if(this.#Z!==void 0)return this.#Z;if(!this.type)return this.#Z=this.#Y.map((A)=>String(A)).join("");else return this.#Z=this.type+"("+this.#Y.map((A)=>String(A)).join("|")+")"}#F(){if(this!==this.#A)throw Error("should only call on root");if(this.#X)return this;this.toString(),this.#X=!0;let A;while(A=this.#W.pop()){if(A.type!=="!")continue;let Q=A,B=Q.#J;while(B){for(let Y=Q.#C+1;!B.type&&Ytypeof Q==="string"?Q:Q.toJSON()):[this.type,...this.#Y.map((Q)=>Q.toJSON())];if(this.isStart()&&!this.type)A.unshift([]);if(this.isEnd()&&(this===this.#A||this.#A.#X&&this.#J?.type==="!"))A.push({});return A}isStart(){if(this.#A===this)return!0;if(!this.#J?.isStart())return!1;if(this.#C===0)return!0;let A=this.#J;for(let Q=0;Q{let[E,K,I,V]=typeof $==="string"?YJ.#I($,this.#Q,G):$.toRegExpSource(A);return this.#Q=this.#Q||I,this.#B=this.#B||V,E}).join(""),F="";if(this.isStart()){if(typeof this.#Y[0]==="string"){if(!(this.#Y.length===1&&$mQ.has(this.#Y[0]))){let E=ZmQ,K=Q&&E.has(W.charAt(0))||W.startsWith("\\.")&&E.has(W.charAt(2))||W.startsWith("\\.\\.")&&E.has(W.charAt(4)),I=!Q&&!A&&E.has(W.charAt(0));F=K?FmQ:I?R2:""}}}let Z="";if(this.isEnd()&&this.#A.#X&&this.#J?.type==="!")Z="(?:$|\\/)";return[F+W+Z,RC(W),this.#Q=!!this.#Q,this.#B]}let B=this.type==="*"||this.type==="+",Y=this.type==="!"?"(?:(?!(?:":"(?:",J=this.#V(Q);if(this.isStart()&&this.isEnd()&&!J&&this.type!=="!"){let G=this.toString();return this.#Y=[G],this.type=null,this.#Q=void 0,[G,RC(this.toString()),!1,!1]}let C=!B||A||Q||!R2?"":this.#V(!0);if(C===J)C="";if(C)J=`(?:${J})(?:${C})*?`;let X="";if(this.type==="!"&&this.#U)X=(this.isStart()&&!Q?R2:"")+iYA;else{let G=this.type==="!"?"))"+(this.isStart()&&!Q&&!A?R2:"")+pYA+")":this.type==="@"?")":this.type==="?"?")?":this.type==="+"&&C?")":this.type==="*"&&C?")?":`)${this.type}`;X=Y+J+G}return[X,RC(J),this.#Q=!!this.#Q,this.#B]}#V(A){return this.#Y.map((Q)=>{if(typeof Q==="string")throw Error("string type in extglob ast??");let[B,Y,J,C]=Q.toRegExpSource(A);return this.#B=this.#B||C,B}).filter((Q)=>!(this.isStart()&&this.isEnd())||!!Q).join("|")}static#I(A,Q,B=!1){let Y=!1,J="",C=!1;for(let X=0;X{return Q?A.replace(/[?*()[\]]/g,"[$&]"):A.replace(/[?*()[\]\\]/g,"\\$&")};var iJ=(A,Q,B={})=>{if(zI(Q),!B.nocomment&&Q.charAt(0)==="#")return!1;return new J5(Q,B).match(A)},KmQ=/^\*+([^+@!?\*\[\(]*)$/,VmQ=(A)=>(Q)=>!Q.startsWith(".")&&Q.endsWith(A),ImQ=(A)=>(Q)=>Q.endsWith(A),HmQ=(A)=>{return A=A.toLowerCase(),(Q)=>!Q.startsWith(".")&&Q.toLowerCase().endsWith(A)},DmQ=(A)=>{return A=A.toLowerCase(),(Q)=>Q.toLowerCase().endsWith(A)},NmQ=/^\*+\.\*+$/,LmQ=(A)=>!A.startsWith(".")&&A.includes("."),qmQ=(A)=>A!=="."&&A!==".."&&A.includes("."),MmQ=/^\.\*+$/,zmQ=(A)=>A!=="."&&A!==".."&&A.startsWith("."),RmQ=/^\*+$/,wmQ=(A)=>A.length!==0&&!A.startsWith("."),jmQ=(A)=>A.length!==0&&A!=="."&&A!=="..",OmQ=/^\?+([^+@!?\*\[\(]*)?$/,PmQ=([A,Q=""])=>{let B=aYA([A]);if(!Q)return B;return Q=Q.toLowerCase(),(Y)=>B(Y)&&Y.toLowerCase().endsWith(Q)},TmQ=([A,Q=""])=>{let B=oYA([A]);if(!Q)return B;return Q=Q.toLowerCase(),(Y)=>B(Y)&&Y.toLowerCase().endsWith(Q)},SmQ=([A,Q=""])=>{let B=oYA([A]);return!Q?B:(Y)=>B(Y)&&Y.endsWith(Q)},kmQ=([A,Q=""])=>{let B=aYA([A]);return!Q?B:(Y)=>B(Y)&&Y.endsWith(Q)},aYA=([A])=>{let Q=A.length;return(B)=>B.length===Q&&!B.startsWith(".")},oYA=([A])=>{let Q=A.length;return(B)=>B.length===Q&&B!=="."&&B!==".."},tYA=typeof process==="object"&&process?typeof process.env==="object"&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:"posix",nYA={win32:{sep:"\\"},posix:{sep:"/"}},_mQ=tYA==="win32"?nYA.win32.sep:nYA.posix.sep;iJ.sep=_mQ;var JJ=Symbol("globstar **");iJ.GLOBSTAR=JJ;var vmQ="[^/]",ymQ=vmQ+"*?",gmQ="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",hmQ="(?:(?!(?:\\/|^)\\.).)*?",xmQ=(A,Q={})=>(B)=>iJ(B,A,Q);iJ.filter=xmQ;var Y5=(A,Q={})=>Object.assign({},A,Q),fmQ=(A)=>{if(!A||typeof A!=="object"||!Object.keys(A).length)return iJ;let Q=iJ;return Object.assign((Y,J,C={})=>Q(Y,J,Y5(A,C)),{Minimatch:class extends Q.Minimatch{constructor(J,C={}){super(J,Y5(A,C))}static defaults(J){return Q.defaults(Y5(A,J)).Minimatch}},AST:class extends Q.AST{constructor(J,C,X={}){super(J,C,Y5(A,X))}static fromGlob(J,C={}){return Q.AST.fromGlob(J,Y5(A,C))}},unescape:(Y,J={})=>Q.unescape(Y,Y5(A,J)),escape:(Y,J={})=>Q.escape(Y,Y5(A,J)),filter:(Y,J={})=>Q.filter(Y,Y5(A,J)),defaults:(Y)=>Q.defaults(Y5(A,Y)),makeRe:(Y,J={})=>Q.makeRe(Y,Y5(A,J)),braceExpand:(Y,J={})=>Q.braceExpand(Y,Y5(A,J)),match:(Y,J,C={})=>Q.match(Y,J,Y5(A,C)),sep:Q.sep,GLOBSTAR:JJ})};iJ.defaults=fmQ;var eYA=(A,Q={})=>{if(zI(A),Q.nobrace||!/\{(?:(?!\{).)*\}/.test(A))return[A];return rYA.default(A)};iJ.braceExpand=eYA;var bmQ=(A,Q={})=>new J5(A,Q).makeRe();iJ.makeRe=bmQ;var mmQ=(A,Q,B={})=>{let Y=new J5(Q,B);if(A=A.filter((J)=>Y.match(J)),Y.options.nonull&&!A.length)A.push(Q);return A};iJ.match=mmQ;var sYA=/[?*]|[+@!]\(.*?\)|\[|\]/,umQ=(A)=>A.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&");class J5{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;regexp;constructor(A,Q={}){if(zI(A),Q=Q||{},this.options=Q,this.pattern=A,this.platform=Q.platform||tYA,this.isWindows=this.platform==="win32",this.windowsPathsNoEscape=!!Q.windowsPathsNoEscape||Q.allowWindowsEscape===!1,this.windowsPathsNoEscape)this.pattern=this.pattern.replace(/\\/g,"/");this.preserveMultipleSlashes=!!Q.preserveMultipleSlashes,this.regexp=null,this.negate=!1,this.nonegate=!!Q.nonegate,this.comment=!1,this.empty=!1,this.partial=!!Q.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=Q.windowsNoMagicRoot!==void 0?Q.windowsNoMagicRoot:!!(this.isWindows&&this.nocase),this.globSet=[],this.globParts=[],this.set=[],this.make()}hasMagic(){if(this.options.magicalBraces&&this.set.length>1)return!0;for(let A of this.set)for(let Q of A)if(typeof Q!=="string")return!0;return!1}debug(...A){}make(){let A=this.pattern,Q=this.options;if(!Q.nocomment&&A.charAt(0)==="#"){this.comment=!0;return}if(!A){this.empty=!0;return}if(this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],Q.debug)this.debug=(...J)=>console.error(...J);this.debug(this.pattern,this.globSet);let B=this.globSet.map((J)=>this.slashSplit(J));this.globParts=this.preprocess(B),this.debug(this.pattern,this.globParts);let Y=this.globParts.map((J,C,X)=>{if(this.isWindows&&this.windowsNoMagicRoot){let G=J[0]===""&&J[1]===""&&(J[2]==="?"||!sYA.test(J[2]))&&!sYA.test(J[3]),W=/^[a-z]:/i.test(J[0]);if(G)return[...J.slice(0,4),...J.slice(4).map((F)=>this.parse(F))];else if(W)return[J[0],...J.slice(1).map((F)=>this.parse(F))]}return J.map((G)=>this.parse(G))});if(this.debug(this.pattern,Y),this.set=Y.filter((J)=>J.indexOf(!1)===-1),this.isWindows)for(let J=0;J=2)A=this.firstPhasePreProcess(A),A=this.secondPhasePreProcess(A);else if(Q>=1)A=this.levelOneOptimize(A);else A=this.adjascentGlobstarOptimize(A);return A}adjascentGlobstarOptimize(A){return A.map((Q)=>{let B=-1;while((B=Q.indexOf("**",B+1))!==-1){let Y=B;while(Q[Y+1]==="**")Y++;if(Y!==B)Q.splice(B,Y-B)}return Q})}levelOneOptimize(A){return A.map((Q)=>{return Q=Q.reduce((B,Y)=>{let J=B[B.length-1];if(Y==="**"&&J==="**")return B;if(Y===".."){if(J&&J!==".."&&J!=="."&&J!=="**")return B.pop(),B}return B.push(Y),B},[]),Q.length===0?[""]:Q})}levelTwoFileOptimize(A){if(!Array.isArray(A))A=this.slashSplit(A);let Q=!1;do{if(Q=!1,!this.preserveMultipleSlashes){for(let Y=1;YY)B.splice(Y+1,C-Y);let X=B[Y+1],G=B[Y+2],W=B[Y+3];if(X!=="..")continue;if(!G||G==="."||G===".."||!W||W==="."||W==="..")continue;Q=!0,B.splice(Y,1);let F=B.slice(0);F[Y]="**",A.push(F),Y--}if(!this.preserveMultipleSlashes){for(let C=1;CQ.length)}partsMatch(A,Q,B=!1){let Y=0,J=0,C=[],X="";while(YD)Q=Q.slice(L);else if(D>L)A=A.slice(D)}}}let{optimizationLevel:J=1}=this.options;if(J>=2)A=this.levelTwoFileOptimize(A);this.debug("matchOne",this,{file:A,pattern:Q}),this.debug("matchOne",A.length,Q.length);for(var C=0,X=0,G=A.length,W=Q.length;C{if(B)return;if(A)return{transform:NxQ.bind(void 0,new TextEncoder)};let Y=new DxQ(Q);return{transform:LxQ.bind(void 0,Y),final:qxQ.bind(void 0,Y)}},NxQ=function*(A,Q){if(HxQ.isBuffer(Q))yield rX(Q);else if(typeof Q==="string")yield A.encode(Q);else yield Q},LxQ=function*(A,Q){yield TY(Q)?A.write(Q):Q},qxQ=function*(A){let Q=A.end();if(Q!=="")yield Q};import{callbackify as A0A}from"node:util";var $y=A0A(async(A,Q,B,Y)=>{Q.currentIterable=A(...B);try{for await(let J of Q.currentIterable)Y.push(J)}finally{delete Q.currentIterable}}),$2=async function*(A,Q,B){if(B===Q.length){yield A;return}let{transform:Y=zxQ}=Q[B];for await(let J of Y(A))yield*$2(J,Q,B+1)},Q0A=async function*(A){for(let[Q,{final:B}]of Object.entries(A))yield*MxQ(B,Number(Q),A)},MxQ=async function*(A,Q,B){if(A===void 0)return;for await(let Y of A())yield*$2(Y,B,Q+1)},B0A=A0A(async({currentIterable:A},Q)=>{if(A!==void 0){await(Q?A.throw(Q):A.return());return}if(Q)throw Q}),zxQ=function*(A){yield A};var Uy=(A,Q,B,Y)=>{try{for(let J of A(...Q))B.push(J);Y()}catch(J){Y(J)}},Y0A=(A,Q)=>[...Q.flatMap((B)=>[...kF(B,A,0)]),...VI(A)],kF=function*(A,Q,B){if(B===Q.length){yield A;return}let{transform:Y=wxQ}=Q[B];for(let J of Y(A))yield*kF(J,Q,B+1)},VI=function*(A){for(let[Q,{final:B}]of Object.entries(A))yield*RxQ(B,Number(Q),A)},RxQ=function*(A,Q,B){if(A===void 0)return;for(let Y of A())yield*kF(Y,B,Q+1)},wxQ=function*(A){yield A};var Ey=({value:A,value:{transform:Q,final:B,writableObjectMode:Y,readableObjectMode:J},optionName:C},{encoding:X})=>{let G={},W=C0A(A,X,C),F=SF(Q),Z=SF(B),U=F?$y.bind(void 0,$2,G):Uy.bind(void 0,kF),$=F||Z?$y.bind(void 0,Q0A,G):Uy.bind(void 0,VI),E=F||Z?B0A.bind(void 0,G):void 0;return{stream:new jxQ({writableObjectMode:Y,writableHighWaterMark:J0A(Y),readableObjectMode:J,readableHighWaterMark:J0A(J),transform(I,V,H){U([I,W,0],this,H)},flush(I){$([W],this,I)},destroy:E})}},U2=(A,Q,B,Y)=>{let J=Q.filter(({type:X})=>X==="generator"),C=Y?J.reverse():J;for(let{value:X,optionName:G}of C){let W=C0A(X,B,G);A=Y0A(W,A)}return A},C0A=({transform:A,final:Q,binary:B,writableObjectMode:Y,readableObjectMode:J,preserveNewlines:C},X,G)=>{let W={};return[{transform:oBA(Y,G)},Z2(B,X,Y),F2(B,C,Y,W),{transform:A,final:Q},{transform:tBA(J,G)},aBA({binary:B,preserveNewlines:C,readableObjectMode:J,state:W})].filter(Boolean)};var X0A=(A,Q)=>{for(let B of OxQ(A))PxQ(A,B,Q)},OxQ=(A)=>new Set(Object.entries(A).filter(([,{direction:Q}])=>Q==="input").map(([Q])=>Number(Q))),PxQ=(A,Q,B)=>{let{stdioItems:Y}=A[Q],J=Y.filter(({contents:G})=>G!==void 0);if(J.length===0)return;if(Q!==0){let[{type:G,optionName:W}]=J;throw TypeError(`Only the \`stdin\` option, not \`${W}\`, can be ${tG[G]} with synchronous methods.`)}let X=J.map(({contents:G})=>G).map((G)=>TxQ(G,Y));B.input=GI(X)},TxQ=(A,Q)=>{let B=U2(A,Q,"utf8",!0);return SxQ(B),GI(B)},SxQ=(A)=>{let Q=A.find((B)=>typeof B!=="string"&&!TY(B));if(Q!==void 0)throw TypeError(`The \`stdin\` option is invalid: when passing objects as input, a transform must be used to serialize them to strings or Uint8Arrays: ${Q}.`)};import{writeFileSync as yxQ,appendFileSync as gxQ}from"node:fs";var E2=({stdioItems:A,encoding:Q,verboseInfo:B,fdNumber:Y})=>Y!=="all"&&w4(B,Y)&&!G8.has(Q)&&kxQ(Y)&&(A.some(({type:J,value:C})=>J==="native"&&_xQ.has(C))||A.every(({type:J})=>B5.has(J))),kxQ=(A)=>A===1||A===2,_xQ=new Set(["pipe","overlapped"]),G0A=async(A,Q,B,Y)=>{for await(let J of A)if(!vxQ(Q))F0A(J,B,Y)},W0A=(A,Q,B)=>{for(let Y of A)F0A(Y,Q,B)},vxQ=(A)=>A._readableState.pipes.length>0,F0A=(A,Q,B)=>{let Y=Rz(A);j1({type:"output",verboseMessage:Y,fdNumber:Q,verboseInfo:B})};var Z0A=({fileDescriptors:A,syncResult:{output:Q},options:B,isMaxBuffer:Y,verboseInfo:J})=>{if(Q===null)return{output:Array.from({length:3})};let C={},X=new Set([]);return{output:Q.map((W,F)=>hxQ({result:W,fileDescriptors:A,fdNumber:F,state:C,outputFiles:X,isMaxBuffer:Y,verboseInfo:J},B)),...C}},hxQ=({result:A,fileDescriptors:Q,fdNumber:B,state:Y,outputFiles:J,isMaxBuffer:C,verboseInfo:X},{buffer:G,encoding:W,lines:F,stripFinalNewline:Z,maxBuffer:U})=>{if(A===null)return;let $=$BA(A,C,U),E=rX($),{stdioItems:K,objectMode:I}=Q[B],V=xxQ([E],K,W,Y),{serializedResult:H,finalResult:D=H}=fxQ({chunks:V,objectMode:I,encoding:W,lines:F,stripFinalNewline:Z,fdNumber:B});bxQ({serializedResult:H,fdNumber:B,state:Y,verboseInfo:X,encoding:W,stdioItems:K,objectMode:I});let L=G[B]?D:void 0;try{if(Y.error===void 0)mxQ(H,K,J);return L}catch(z){return Y.error=z,L}},xxQ=(A,Q,B,Y)=>{try{return U2(A,Q,B,!1)}catch(J){return Y.error=J,A}},fxQ=({chunks:A,objectMode:Q,encoding:B,lines:Y,stripFinalNewline:J,fdNumber:C})=>{if(Q)return{serializedResult:A};if(B==="buffer")return{serializedResult:GI(A)};let X=we(A,B);if(Y[C])return{serializedResult:X,finalResult:Zy(X,!J[C],Q)};return{serializedResult:X}},bxQ=({serializedResult:A,fdNumber:Q,state:B,verboseInfo:Y,encoding:J,stdioItems:C,objectMode:X})=>{if(!E2({stdioItems:C,encoding:J,verboseInfo:Y,fdNumber:Q}))return;let G=Zy(A,!1,X);try{W0A(G,Q,Y)}catch(W){B.error??=W}},mxQ=(A,Q,B)=>{for(let{path:Y,append:J}of Q.filter(({type:C})=>G2.has(C))){let C=typeof Y==="string"?Y:Y.toString();if(J||B.has(C))gxQ(Y,A);else B.add(C),yxQ(Y,A)}};var $0A=([,A,Q],B)=>{if(!B.all)return;if(A===void 0)return Q;if(Q===void 0)return A;if(Array.isArray(A))return Array.isArray(Q)?[...A,...Q]:[...A,eX(Q,B,"all")];if(Array.isArray(Q))return[eX(A,B,"all"),...Q];if(TY(A)&&TY(Q))return Nv([A,Q]);return`${A}${Q}`};import{once as Ky}from"node:events";var U0A=async(A,Q)=>{let[B,Y]=await uxQ(A);return Q.isForcefullyTerminated??=!1,[B,Y]},uxQ=async(A)=>{let[Q,B]=await Promise.allSettled([Ky(A,"spawn"),Ky(A,"exit")]);if(Q.status==="rejected")return[];return B.status==="rejected"?E0A(A):B.value},E0A=async(A)=>{try{return await Ky(A,"exit")}catch{return E0A(A)}},K0A=async(A)=>{let[Q,B]=await A;if(!dxQ(Q,B)&&Vy(Q,B))throw new O1;return[Q,B]},dxQ=(A,Q)=>A===void 0&&Q===void 0,Vy=(A,Q)=>A!==0||Q!==null;var V0A=({error:A,status:Q,signal:B,output:Y},{maxBuffer:J})=>{let C=cxQ(A,Q,B),X=C?.code==="ETIMEDOUT",G=ZBA(C,Y,J);return{resultError:C,exitCode:Q,signal:B,timedOut:X,isMaxBuffer:G}},cxQ=(A,Q,B)=>{if(A!==void 0)return A;return Vy(Q,B)?new O1:void 0};var I0A=(A,Q,B)=>{let{file:Y,commandArguments:J,command:C,escapedCommand:X,startTime:G,verboseInfo:W,options:F,fileDescriptors:Z}=pxQ(A,Q,B),U=sxQ({file:Y,commandArguments:J,options:F,command:C,escapedCommand:X,verboseInfo:W,fileDescriptors:Z,startTime:G});return y4(U,W,F)},pxQ=(A,Q,B)=>{let{command:Y,escapedCommand:J,startTime:C,verboseInfo:X}=jz(A,Q,B),G=ixQ(B),{file:W,commandArguments:F,options:Z}=rz(A,Q,G);nxQ(Z);let U=iBA(Z,X);return{file:W,commandArguments:F,command:Y,escapedCommand:J,startTime:C,verboseInfo:X,options:Z,fileDescriptors:U}},ixQ=(A)=>A.node&&!A.ipc?{...A,ipc:!1}:A,nxQ=({ipc:A,ipcInput:Q,detached:B,cancelSignal:Y})=>{if(Q)K2("ipcInput");if(A)K2("ipc: true");if(B)K2("detached: true");if(Y)K2("cancelSignal")},K2=(A)=>{throw TypeError(`The "${A}" option cannot be used with synchronous methods.`)},sxQ=({file:A,commandArguments:Q,options:B,command:Y,escapedCommand:J,verboseInfo:C,fileDescriptors:X,startTime:G})=>{let W=rxQ({file:A,commandArguments:Q,options:B,command:Y,escapedCommand:J,fileDescriptors:X,startTime:G});if(W.failed)return W;let{resultError:F,exitCode:Z,signal:U,timedOut:$,isMaxBuffer:E}=V0A(W,B),{output:K,error:I=F}=Z0A({fileDescriptors:X,syncResult:W,options:B,isMaxBuffer:E,verboseInfo:C}),V=K.map((D,L)=>eX(D,B,L)),H=eX($0A(K,B),B,"all");return oxQ({error:I,exitCode:Z,signal:U,timedOut:$,isMaxBuffer:E,stdio:V,all:H,options:B,command:Y,escapedCommand:J,startTime:G})},rxQ=({file:A,commandArguments:Q,options:B,command:Y,escapedCommand:J,fileDescriptors:C,startTime:X})=>{try{X0A(C,B);let G=axQ(B);return lxQ(A,Q,G)}catch(G){return v4({error:G,command:Y,escapedCommand:J,fileDescriptors:C,options:B,startTime:X,isSync:!0})}},axQ=({encoding:A,maxBuffer:Q,...B})=>({...B,encoding:"buffer",maxBuffer:Y2(Q)}),oxQ=({error:A,exitCode:Q,signal:B,timedOut:Y,isMaxBuffer:J,stdio:C,all:X,options:G,command:W,escapedCommand:F,startTime:Z})=>A===void 0?J2({command:W,escapedCommand:F,stdio:C,all:X,ipcOutput:[],options:G,startTime:Z}):KI({error:A,command:W,escapedCommand:F,timedOut:Y,isCanceled:!1,isGracefullyCanceled:!1,isMaxBuffer:J,isForcefullyTerminated:!1,exitCode:Q,signal:B,stdio:C,all:X,ipcOutput:[],options:G,startTime:Z,isSync:!0});import{setMaxListeners as fbQ}from"node:events";import{spawn as bbQ}from"node:child_process";import q0A from"node:process";import{once as Iy,on as txQ}from"node:events";var H0A=({anyProcess:A,channel:Q,isSubprocess:B,ipc:Y},{reference:J=!0,filter:C}={})=>{return P4({methodName:"getOneMessage",isSubprocess:B,ipc:Y,isConnected:cz(A)}),exQ({anyProcess:A,channel:Q,isSubprocess:B,filter:C,reference:J})},exQ=async({anyProcess:A,channel:Q,isSubprocess:B,filter:Y,reference:J})=>{bz(Q,J);let C=oG(A,Q,B),X=new AbortController;try{return await Promise.race([AfQ(C,Y,X),QfQ(C,B,X),BfQ(C,B,X)])}catch(G){throw T4(A),G}finally{X.abort(),mz(Q,J)}},AfQ=async(A,Q,{signal:B})=>{if(Q===void 0){let[Y]=await Iy(A,"message",{signal:B});return Y}for await(let[Y]of txQ(A,"message",{signal:B}))if(Q(Y))return Y},QfQ=async(A,Q,{signal:B})=>{await Iy(A,"disconnect",{signal:B}),BQA(Q)},BfQ=async(A,Q,{signal:B})=>{let[Y]=await Iy(A,"strict:error",{signal:B});throw hz(Y,Q)};import{once as N0A,on as YfQ}from"node:events";var L0A=({anyProcess:A,channel:Q,isSubprocess:B,ipc:Y},{reference:J=!0}={})=>Hy({anyProcess:A,channel:Q,isSubprocess:B,ipc:Y,shouldAwait:!B,reference:J}),Hy=({anyProcess:A,channel:Q,isSubprocess:B,ipc:Y,shouldAwait:J,reference:C})=>{P4({methodName:"getEachMessage",isSubprocess:B,ipc:Y,isConnected:cz(A)}),bz(Q,C);let X=oG(A,Q,B),G=new AbortController,W={};return JfQ(A,X,G),CfQ({ipcEmitter:X,isSubprocess:B,controller:G,state:W}),XfQ({anyProcess:A,channel:Q,ipcEmitter:X,isSubprocess:B,shouldAwait:J,controller:G,state:W,reference:C})},JfQ=async(A,Q,B)=>{try{await N0A(Q,"disconnect",{signal:B.signal}),B.abort()}catch{}},CfQ=async({ipcEmitter:A,isSubprocess:Q,controller:B,state:Y})=>{try{let[J]=await N0A(A,"strict:error",{signal:B.signal});Y.error=hz(J,Q),B.abort()}catch{}},XfQ=async function*({anyProcess:A,channel:Q,ipcEmitter:B,isSubprocess:Y,shouldAwait:J,controller:C,state:X,reference:G}){try{for await(let[W]of YfQ(B,"message",{signal:C.signal}))D0A(X),yield W}catch{D0A(X)}finally{if(C.abort(),mz(Q,G),!Y)T4(A);if(J)await A}},D0A=({error:A})=>{if(A)throw A};var M0A=(A,{ipc:Q})=>{Object.assign(A,R0A(A,!1,Q))},z0A=()=>{let A=q0A,Q=!0,B=q0A.channel!==void 0;return{...R0A(A,!0,B),getCancelSignal:TQA.bind(void 0,{anyProcess:A,channel:A.channel,isSubprocess:!0,ipc:B})}},R0A=(A,Q,B)=>({sendMessage:nz.bind(void 0,{anyProcess:A,channel:A.channel,isSubprocess:Q,ipc:B}),getOneMessage:H0A.bind(void 0,{anyProcess:A,channel:A.channel,isSubprocess:Q,ipc:B}),getEachMessage:L0A.bind(void 0,{anyProcess:A,channel:A.channel,isSubprocess:Q,ipc:B})});import{ChildProcess as GfQ}from"node:child_process";import{PassThrough as WfQ,Readable as FfQ,Writable as ZfQ,Duplex as $fQ}from"node:stream";var w0A=({error:A,command:Q,escapedCommand:B,fileDescriptors:Y,options:J,startTime:C,verboseInfo:X})=>{Gy(Y);let G=new GfQ;UfQ(G,Y),Object.assign(G,{readable:EfQ,writable:KfQ,duplex:VfQ});let W=v4({error:A,command:Q,escapedCommand:B,fileDescriptors:Y,options:J,startTime:C,isSync:!1}),F=IfQ(W,X,J);return{subprocess:G,promise:F}},UfQ=(A,Q)=>{let B=II(),Y=II(),J=II(),C=Array.from({length:Q.length-3},II),X=II(),G=[B,Y,J,...C];Object.assign(A,{stdin:B,stdout:Y,stderr:J,all:X,stdio:G})},II=()=>{let A=new WfQ;return A.end(),A},EfQ=()=>new FfQ({read(){}}),KfQ=()=>new ZfQ({write(){}}),VfQ=()=>new $fQ({read(){},write(){}}),IfQ=async(A,Q,B)=>y4(A,Q,B);import{createReadStream as j0A,createWriteStream as O0A}from"node:fs";import{Buffer as HfQ}from"node:buffer";import{Readable as HI,Writable as DfQ,Duplex as NfQ}from"node:stream";var T0A=(A,Q)=>W2(LfQ,A,Q,!1),DI=({type:A,optionName:Q})=>{throw TypeError(`The \`${Q}\` option cannot be ${tG[A]}.`)},P0A={fileNumber:DI,generator:Ey,asyncGenerator:Ey,nodeStream:({value:A})=>({stream:A}),webTransform({value:{transform:A,writableObjectMode:Q,readableObjectMode:B}}){let Y=Q||B;return{stream:NfQ.fromWeb(A,{objectMode:Y})}},duplex:({value:{transform:A}})=>({stream:A}),native(){}},LfQ={input:{...P0A,fileUrl:({value:A})=>({stream:j0A(A)}),filePath:({value:{file:A}})=>({stream:j0A(A)}),webStream:({value:A})=>({stream:HI.fromWeb(A)}),iterable:({value:A})=>({stream:HI.from(A)}),asyncIterable:({value:A})=>({stream:HI.from(A)}),string:({value:A})=>({stream:HI.from(A)}),uint8Array:({value:A})=>({stream:HI.from(HfQ.from(A))})},output:{...P0A,fileUrl:({value:A})=>({stream:O0A(A)}),filePath:({value:{file:A,append:Q}})=>({stream:O0A(A,Q?{flags:"a"}:{})}),webStream:({value:A})=>({stream:DfQ.fromWeb(A)}),iterable:DI,asyncIterable:DI,string:DI,uint8Array:DI}};import{on as qfQ,once as S0A}from"node:events";import{PassThrough as MfQ,getDefaultHighWaterMark as zfQ}from"node:stream";import{finished as v0A}from"node:stream/promises";function _F(A){if(!Array.isArray(A))throw TypeError(`Expected an array, got \`${typeof A}\`.`);for(let J of A)Dy(J);let Q=A.some(({readableObjectMode:J})=>J),B=RfQ(A,Q),Y=new y0A({objectMode:Q,writableHighWaterMark:B,readableHighWaterMark:B});for(let J of A)Y.add(J);return Y}var RfQ=(A,Q)=>{if(A.length===0)return zfQ(Q);let B=A.filter(({readableObjectMode:Y})=>Y===Q).map(({readableHighWaterMark:Y})=>Y);return Math.max(...B)};class y0A extends MfQ{#A=new Set([]);#Q=new Set([]);#B=new Set([]);#Y;#J=Symbol("unpipe");#C=new WeakMap;add(A){if(Dy(A),this.#A.has(A))return;this.#A.add(A),this.#Y??=wfQ(this,this.#A,this.#J);let Q=PfQ({passThroughStream:this,stream:A,streams:this.#A,ended:this.#Q,aborted:this.#B,onFinished:this.#Y,unpipeEvent:this.#J});this.#C.set(A,Q),A.pipe(this,{end:!1})}async remove(A){if(Dy(A),!this.#A.has(A))return!1;let Q=this.#C.get(A);if(Q===void 0)return!1;return this.#C.delete(A),A.unpipe(this),await Q,!0}}var wfQ=async(A,Q,B)=>{V2(A,k0A);let Y=new AbortController;try{await Promise.race([jfQ(A,Y),OfQ(A,Q,B,Y)])}finally{Y.abort(),V2(A,-k0A)}},jfQ=async(A,{signal:Q})=>{try{await v0A(A,{signal:Q,cleanup:!0})}catch(B){throw g0A(A,B),B}},OfQ=async(A,Q,B,{signal:Y})=>{for await(let[J]of qfQ(A,"unpipe",{signal:Y}))if(Q.has(J))J.emit(B)},Dy=(A)=>{if(typeof A?.pipe!=="function")throw TypeError(`Expected a readable stream, got: \`${typeof A}\`.`)},PfQ=async({passThroughStream:A,stream:Q,streams:B,ended:Y,aborted:J,onFinished:C,unpipeEvent:X})=>{V2(A,_0A);let G=new AbortController;try{await Promise.race([TfQ(C,Q,G),SfQ({passThroughStream:A,stream:Q,streams:B,ended:Y,aborted:J,controller:G}),kfQ({stream:Q,streams:B,ended:Y,aborted:J,unpipeEvent:X,controller:G})])}finally{G.abort(),V2(A,-_0A)}if(B.size>0&&B.size===Y.size+J.size)if(Y.size===0&&J.size>0)Ny(A);else _fQ(A)},TfQ=async(A,Q,{signal:B})=>{try{if(await A,!B.aborted)Ny(Q)}catch(Y){if(!B.aborted)g0A(Q,Y)}},SfQ=async({passThroughStream:A,stream:Q,streams:B,ended:Y,aborted:J,controller:{signal:C}})=>{try{if(await v0A(Q,{signal:C,cleanup:!0,readable:!0,writable:!1}),B.has(Q))Y.add(Q)}catch(X){if(C.aborted||!B.has(Q))return;if(h0A(X))J.add(Q);else x0A(A,X)}},kfQ=async({stream:A,streams:Q,ended:B,aborted:Y,unpipeEvent:J,controller:{signal:C}})=>{if(await S0A(A,J,{signal:C}),!A.readable)return S0A(C,"abort",{signal:C});Q.delete(A),B.delete(A),Y.delete(A)},_fQ=(A)=>{if(A.writable)A.end()},g0A=(A,Q)=>{if(h0A(Q))Ny(A);else x0A(A,Q)},h0A=(A)=>A?.code==="ERR_STREAM_PREMATURE_CLOSE",Ny=(A)=>{if(A.readable||A.writable)A.destroy()},x0A=(A,Q)=>{if(!A.destroyed)A.once("error",vfQ),A.destroy(Q)},vfQ=()=>{},V2=(A,Q)=>{let B=A.getMaxListeners();if(B!==0&&B!==Number.POSITIVE_INFINITY)A.setMaxListeners(B+Q)},k0A=2,_0A=1;import{finished as f0A}from"node:stream/promises";var h4=(A,Q)=>{A.pipe(Q),yfQ(A,Q),gfQ(A,Q)},yfQ=async(A,Q)=>{if(qC(A)||qC(Q))return;try{await f0A(A,{cleanup:!0,readable:!0,writable:!1})}catch{}Ly(Q)},Ly=(A)=>{if(A.writable)A.end()},gfQ=async(A,Q)=>{if(qC(A)||qC(Q))return;try{await f0A(Q,{cleanup:!0,readable:!1,writable:!0})}catch{}qy(A)},qy=(A)=>{if(A.readable)A.destroy()};var b0A=(A,Q,B)=>{let Y=new Map;for(let[J,{stdioItems:C,direction:X}]of Object.entries(Q)){for(let{stream:G}of C.filter(({type:W})=>B5.has(W)))hfQ(A,G,X,J);for(let{stream:G}of C.filter(({type:W})=>!B5.has(W)))ffQ({subprocess:A,stream:G,direction:X,fdNumber:J,pipeGroups:Y,controller:B})}for(let[J,C]of Y.entries()){let X=C.length===1?C[0]:_F(C);h4(X,J)}},hfQ=(A,Q,B,Y)=>{if(B==="output")h4(A.stdio[Y],Q);else h4(Q,A.stdio[Y]);let J=xfQ[Y];if(J!==void 0)A[J]=Q;A.stdio[Y]=Q},xfQ=["stdin","stdout","stderr"],ffQ=({subprocess:A,stream:Q,direction:B,fdNumber:Y,pipeGroups:J,controller:C})=>{if(Q===void 0)return;bfQ(Q,C);let[X,G]=B==="output"?[Q,A.stdio[Y]]:[A.stdio[Y],Q],W=J.get(X)??[];J.set(X,[...W,G])},bfQ=(A,{signal:Q})=>{if(qC(A))PF(A,mfQ,Q)},mfQ=2;import{addAbortListener as cfQ}from"node:events";var vF=[];vF.push("SIGHUP","SIGINT","SIGTERM");if(process.platform!=="win32")vF.push("SIGALRM","SIGABRT","SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");if(process.platform==="linux")vF.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT");var I2=(A)=>!!A&&typeof A==="object"&&typeof A.removeListener==="function"&&typeof A.emit==="function"&&typeof A.reallyExit==="function"&&typeof A.listeners==="function"&&typeof A.kill==="function"&&typeof A.pid==="number"&&typeof A.on==="function",My=Symbol.for("signal-exit emitter"),zy=globalThis,ufQ=Object.defineProperty.bind(Object);class m0A{emitted={afterExit:!1,exit:!1};listeners={afterExit:[],exit:[]};count=0;id=Math.random();constructor(){if(zy[My])return zy[My];ufQ(zy,My,{value:this,writable:!1,enumerable:!1,configurable:!1})}on(A,Q){this.listeners[A].push(Q)}removeListener(A,Q){let B=this.listeners[A],Y=B.indexOf(Q);if(Y===-1)return;if(Y===0&&B.length===1)B.length=0;else B.splice(Y,1)}emit(A,Q,B){if(this.emitted[A])return!1;this.emitted[A]=!0;let Y=!1;for(let J of this.listeners[A])Y=J(Q,B)===!0||Y;if(A==="exit")Y=this.emit("afterExit",Q,B)||Y;return Y}}class wy{}var dfQ=(A)=>{return{onExit(Q,B){return A.onExit(Q,B)},load(){return A.load()},unload(){return A.unload()}}};class u0A extends wy{onExit(){return()=>{}}load(){}unload(){}}class d0A extends wy{#A=Ry.platform==="win32"?"SIGINT":"SIGHUP";#Q=new m0A;#B;#Y;#J;#C={};#W=!1;constructor(A){super();this.#B=A,this.#C={};for(let Q of vF)this.#C[Q]=()=>{let B=this.#B.listeners(Q),{count:Y}=this.#Q,J=A;if(typeof J.__signal_exit_emitter__==="object"&&typeof J.__signal_exit_emitter__.count==="number")Y+=J.__signal_exit_emitter__.count;if(B.length===Y){this.unload();let C=this.#Q.emit("exit",null,Q),X=Q==="SIGHUP"?this.#A:Q;if(!C)A.kill(A.pid,X)}};this.#J=A.reallyExit,this.#Y=A.emit}onExit(A,Q){if(!I2(this.#B))return()=>{};if(this.#W===!1)this.load();let B=Q?.alwaysLast?"afterExit":"exit";return this.#Q.on(B,A),()=>{if(this.#Q.removeListener(B,A),this.#Q.listeners.exit.length===0&&this.#Q.listeners.afterExit.length===0)this.unload()}}load(){if(this.#W)return;this.#W=!0,this.#Q.count+=1;for(let A of vF)try{let Q=this.#C[A];if(Q)this.#B.on(A,Q)}catch(Q){}this.#B.emit=(A,...Q)=>{return this.#G(A,...Q)},this.#B.reallyExit=(A)=>{return this.#X(A)}}unload(){if(!this.#W)return;this.#W=!1,vF.forEach((A)=>{let Q=this.#C[A];if(!Q)throw Error("Listener not defined for signal: "+A);try{this.#B.removeListener(A,Q)}catch(B){}}),this.#B.emit=this.#Y,this.#B.reallyExit=this.#J,this.#Q.count-=1}#X(A){if(!I2(this.#B))return 0;return this.#B.exitCode=A||0,this.#Q.emit("exit",this.#B.exitCode,null),this.#J.call(this.#B,this.#B.exitCode)}#G(A,...Q){let B=this.#Y;if(A==="exit"&&I2(this.#B)){if(typeof Q[0]==="number")this.#B.exitCode=Q[0];let Y=B.call(this.#B,A,...Q);return this.#Q.emit("exit",this.#B.exitCode,null),Y}else return B.call(this.#B,A,...Q)}}var Ry=globalThis.process,{onExit:c0A,load:b8Y,unload:m8Y}=dfQ(I2(Ry)?new d0A(Ry):new u0A);var l0A=(A,{cleanup:Q,detached:B},{signal:Y})=>{if(!Q||B)return;let J=c0A(()=>{A.kill()});cfQ(Y,()=>{J()})};var i0A=({source:A,sourcePromise:Q,boundOptions:B,createNested:Y},...J)=>{let C=wz(),{destination:X,destinationStream:G,destinationError:W,from:F,unpipeSignal:Z}=lfQ(B,Y,J),{sourceStream:U,sourceError:$}=ifQ(A,F),{options:E,fileDescriptors:K}=T1.get(A);return{sourcePromise:Q,sourceStream:U,sourceOptions:E,sourceError:$,destination:X,destinationStream:G,destinationError:W,unpipeSignal:Z,fileDescriptors:K,startTime:C}},lfQ=(A,Q,B)=>{try{let{destination:Y,pipeOptions:{from:J,to:C,unpipeSignal:X}={}}=pfQ(A,Q,...B),G=fz(Y,C);return{destination:Y,destinationStream:G,from:J,unpipeSignal:X}}catch(Y){return{destinationError:Y}}},pfQ=(A,Q,B,...Y)=>{if(Array.isArray(B))return{destination:Q(p0A,A)(B,...Y),pipeOptions:A};if(typeof B==="string"||B instanceof URL||Hv(B)){if(Object.keys(A).length>0)throw TypeError('Please use .pipe("file", ..., options) or .pipe(execa("file", ..., options)) instead of .pipe(options)("file", ...).');let[J,C,X]=Vz(B,...Y);return{destination:Q(p0A)(J,C,X),pipeOptions:X}}if(T1.has(B)){if(Object.keys(A).length>0)throw TypeError("Please use .pipe(options)`command` or .pipe($(options)`command`) instead of .pipe(options)($`command`).");return{destination:B,pipeOptions:Y[0]}}throw TypeError(`The first argument must be a template string, an options object, or an Execa subprocess: ${B}`)},p0A=({options:A})=>({options:{...A,stdin:"pipe",piped:!0}}),ifQ=(A,Q)=>{try{return{sourceStream:S4(A,Q)}}catch(B){return{sourceError:B}}};var s0A=({sourceStream:A,sourceError:Q,destinationStream:B,destinationError:Y,fileDescriptors:J,sourceOptions:C,startTime:X})=>{let G=nfQ({sourceStream:A,sourceError:Q,destinationStream:B,destinationError:Y});if(G!==void 0)throw jy({error:G,fileDescriptors:J,sourceOptions:C,startTime:X})},nfQ=({sourceStream:A,sourceError:Q,destinationStream:B,destinationError:Y})=>{if(Q!==void 0&&Y!==void 0)return Y;if(Y!==void 0)return qy(A),Y;if(Q!==void 0)return Ly(B),Q},jy=({error:A,fileDescriptors:Q,sourceOptions:B,startTime:Y})=>v4({error:A,command:n0A,escapedCommand:n0A,fileDescriptors:Q,options:B,startTime:Y,isSync:!1}),n0A="source.pipe(destination)";var r0A=async(A)=>{let[{status:Q,reason:B,value:Y=B},{status:J,reason:C,value:X=C}]=await A;if(!X.pipedFrom.includes(Y))X.pipedFrom.push(Y);if(J==="rejected")throw X;if(Q==="rejected")throw Y;return X};import{finished as sfQ}from"node:stream/promises";var a0A=(A,Q,B)=>{let Y=H2.has(Q)?afQ(A,Q):rfQ(A,Q);return PF(A,tfQ,B.signal),PF(Q,efQ,B.signal),ofQ(Q),Y},rfQ=(A,Q)=>{let B=_F([A]);return h4(B,Q),H2.set(Q,B),B},afQ=(A,Q)=>{let B=H2.get(Q);return B.add(A),B},ofQ=async(A)=>{try{await sfQ(A,{cleanup:!0,readable:!1,writable:!0})}catch{}H2.delete(A)},H2=new WeakMap,tfQ=2,efQ=1;import{aborted as AbQ}from"node:util";var o0A=(A,Q)=>A===void 0?[]:[QbQ(A,Q)],QbQ=async(A,{sourceStream:Q,mergedStream:B,fileDescriptors:Y,sourceOptions:J,startTime:C})=>{await AbQ(A,Q),await B.remove(Q);let X=Error("Pipe canceled by `unpipeSignal` option.");throw jy({error:X,fileDescriptors:Y,sourceOptions:J,startTime:C})};var D2=(A,...Q)=>{if(CY(Q[0]))return D2.bind(void 0,{...A,boundOptions:{...A.boundOptions,...Q[0]}});let{destination:B,...Y}=i0A(A,...Q),J=BbQ({...Y,destination:B});return J.pipe=D2.bind(void 0,{...A,source:B,sourcePromise:J,boundOptions:{}}),J},BbQ=async({sourcePromise:A,sourceStream:Q,sourceOptions:B,sourceError:Y,destination:J,destinationStream:C,destinationError:X,unpipeSignal:G,fileDescriptors:W,startTime:F})=>{let Z=YbQ(A,J);s0A({sourceStream:Q,sourceError:Y,destinationStream:C,destinationError:X,fileDescriptors:W,sourceOptions:B,startTime:F});let U=new AbortController;try{let $=a0A(Q,C,U);return await Promise.race([r0A(Z),...o0A(G,{sourceStream:Q,mergedStream:$,sourceOptions:B,fileDescriptors:W,startTime:F})])}finally{U.abort()}},YbQ=(A,Q)=>Promise.allSettled([A,Q]);import{setImmediate as ZbQ}from"node:timers/promises";import{on as JbQ}from"node:events";import{getDefaultHighWaterMark as CbQ}from"node:stream";var N2=({subprocessStdout:A,subprocess:Q,binary:B,shouldEncode:Y,encoding:J,preserveNewlines:C})=>{let X=new AbortController;return XbQ(Q,X),e0A({stream:A,controller:X,binary:B,shouldEncode:!A.readableObjectMode&&Y,encoding:J,shouldSplit:!A.readableObjectMode,preserveNewlines:C})},XbQ=async(A,Q)=>{try{await A}catch{}finally{Q.abort()}},Oy=({stream:A,onStreamEnd:Q,lines:B,encoding:Y,stripFinalNewline:J,allMixed:C})=>{let X=new AbortController;GbQ(Q,X,A);let G=A.readableObjectMode&&!C;return e0A({stream:A,controller:X,binary:Y==="buffer",shouldEncode:!G,encoding:Y,shouldSplit:!G&&B,preserveNewlines:!J})},GbQ=async(A,Q,B)=>{try{await A}catch{B.destroy()}finally{Q.abort()}},e0A=({stream:A,controller:Q,binary:B,shouldEncode:Y,encoding:J,shouldSplit:C,preserveNewlines:X})=>{let G=JbQ(A,"data",{signal:Q.signal,highWaterMark:t0A,highWatermark:t0A});return WbQ({onStdoutChunk:G,controller:Q,binary:B,shouldEncode:Y,encoding:J,shouldSplit:C,preserveNewlines:X})},Py=CbQ(!0),t0A=Py,WbQ=async function*({onStdoutChunk:A,controller:Q,binary:B,shouldEncode:Y,encoding:J,shouldSplit:C,preserveNewlines:X}){let G=FbQ({binary:B,shouldEncode:Y,encoding:J,shouldSplit:C,preserveNewlines:X});try{for await(let[W]of A)yield*kF(W,G,0)}catch(W){if(!Q.signal.aborted)throw W}finally{yield*VI(G)}},FbQ=({binary:A,shouldEncode:Q,encoding:B,shouldSplit:Y,preserveNewlines:J})=>[Z2(A,B,!Q),F2(A,J,!Y,{})].filter(Boolean);var AYA=async({stream:A,onStreamEnd:Q,fdNumber:B,encoding:Y,buffer:J,maxBuffer:C,lines:X,allMixed:G,stripFinalNewline:W,verboseInfo:F,streamInfo:Z})=>{let U=$bQ({stream:A,onStreamEnd:Q,fdNumber:B,encoding:Y,allMixed:G,verboseInfo:F,streamInfo:Z});if(!J){await Promise.all([UbQ(A),U]);return}let $=Wy(W,B),E=Oy({stream:A,onStreamEnd:Q,lines:X,encoding:Y,stripFinalNewline:$,allMixed:G}),[K]=await Promise.all([EbQ({stream:A,iterable:E,fdNumber:B,encoding:Y,maxBuffer:C,lines:X}),U]);return K},$bQ=async({stream:A,onStreamEnd:Q,fdNumber:B,encoding:Y,allMixed:J,verboseInfo:C,streamInfo:{fileDescriptors:X}})=>{if(!E2({stdioItems:X[B]?.stdioItems,encoding:Y,verboseInfo:C,fdNumber:B}))return;let G=Oy({stream:A,onStreamEnd:Q,lines:!0,encoding:Y,stripFinalNewline:!0,allMixed:J});await G0A(G,A,B,C)},UbQ=async(A)=>{if(await ZbQ(),A.readableFlowing===null)A.resume()},EbQ=async({stream:A,stream:{readableObjectMode:Q},iterable:B,fdNumber:Y,encoding:J,maxBuffer:C,lines:X})=>{try{if(Q||X)return await ez(B,{maxBuffer:C});if(J==="buffer")return new Uint8Array(await A2(B,{maxBuffer:C}));return await B2(B,{maxBuffer:C})}catch(G){return QYA(GBA({error:G,stream:A,readableObjectMode:Q,lines:X,encoding:J,fdNumber:Y}))}},Ty=async(A)=>{try{return await A}catch(Q){return QYA(Q)}},QYA=({bufferedData:A})=>ze(A)?new Uint8Array(A):A;import{finished as KbQ}from"node:stream/promises";var NI=async(A,Q,B,{isSameDirection:Y,stopOnExit:J=!1}={})=>{let C=VbQ(A,B),X=new AbortController;try{await Promise.race([...J?[B.exitPromise]:[],KbQ(A,{cleanup:!0,signal:X.signal})])}catch(G){if(!C.stdinCleanedUp)DbQ(G,Q,B,Y)}finally{X.abort()}},VbQ=(A,{originalStreams:[Q],subprocess:B})=>{let Y={stdinCleanedUp:!1};if(A===Q)IbQ(A,B,Y);return Y},IbQ=(A,Q,B)=>{let{_destroy:Y}=A;A._destroy=(...J)=>{HbQ(Q,B),Y.call(A,...J)}},HbQ=({exitCode:A,signalCode:Q},B)=>{if(A!==null||Q!==null)B.stdinCleanedUp=!0},DbQ=(A,Q,B,Y)=>{if(!NbQ(A,Q,B,Y))throw A},NbQ=(A,Q,B,Y=!0)=>{if(B.propagating)return BYA(A)||L2(A);return B.propagating=!0,Sy(B,Q)===Y?BYA(A):L2(A)},Sy=({fileDescriptors:A},Q)=>Q!=="all"&&A[Q].direction==="input",L2=(A)=>A?.code==="ERR_STREAM_PREMATURE_CLOSE",BYA=(A)=>A?.code==="EPIPE";var YYA=({subprocess:A,encoding:Q,buffer:B,maxBuffer:Y,lines:J,stripFinalNewline:C,verboseInfo:X,streamInfo:G})=>A.stdio.map((W,F)=>ky({stream:W,fdNumber:F,encoding:Q,buffer:B[F],maxBuffer:Y[F],lines:J[F],allMixed:!1,stripFinalNewline:C,verboseInfo:X,streamInfo:G})),ky=async({stream:A,fdNumber:Q,encoding:B,buffer:Y,maxBuffer:J,lines:C,allMixed:X,stripFinalNewline:G,verboseInfo:W,streamInfo:F})=>{if(!A)return;let Z=NI(A,Q,F);if(Sy(F,Q)){await Z;return}let[U]=await Promise.all([AYA({stream:A,onStreamEnd:Z,fdNumber:Q,encoding:B,buffer:Y,maxBuffer:J,lines:C,allMixed:X,stripFinalNewline:G,verboseInfo:W,streamInfo:F}),Z]);return U};var JYA=({stdout:A,stderr:Q},{all:B})=>B&&(A||Q)?_F([A,Q].filter(Boolean)):void 0,CYA=({subprocess:A,encoding:Q,buffer:B,maxBuffer:Y,lines:J,stripFinalNewline:C,verboseInfo:X,streamInfo:G})=>ky({...LbQ(A,B),fdNumber:"all",encoding:Q,maxBuffer:Y[1]+Y[2],lines:J[1]||J[2],allMixed:qbQ(A),stripFinalNewline:C,verboseInfo:X,streamInfo:G}),LbQ=({stdout:A,stderr:Q,all:B},[,Y,J])=>{let C=Y||J;if(!C)return{stream:B,buffer:C};if(!Y)return{stream:Q,buffer:C};if(!J)return{stream:A,buffer:C};return{stream:B,buffer:C}},qbQ=({all:A,stdout:Q,stderr:B})=>A&&Q&&B&&Q.readableObjectMode!==B.readableObjectMode;import{once as MbQ}from"node:events";var XYA=(A)=>w4(A,"ipc"),GYA=(A,Q)=>{let B=Rz(A);j1({type:"ipc",verboseMessage:B,fdNumber:"ipc",verboseInfo:Q})};var WYA=async({subprocess:A,buffer:Q,maxBuffer:B,ipc:Y,ipcOutput:J,verboseInfo:C})=>{if(!Y)return J;let X=XYA(C),G=aX(Q,"ipc"),W=aX(B,"ipc");for await(let F of Hy({anyProcess:A,channel:A.channel,isSubprocess:!1,ipc:Y,shouldAwait:!1,reference:!0})){if(G)WBA(A,J,W),J.push(F);if(X)GYA(F,C)}return J},FYA=async(A,Q)=>{return await Promise.allSettled([A]),Q};var ZYA=async({subprocess:A,options:{encoding:Q,buffer:B,maxBuffer:Y,lines:J,timeoutDuration:C,cancelSignal:X,gracefulCancel:G,forceKillAfterDelay:W,stripFinalNewline:F,ipc:Z,ipcInput:U},context:$,verboseInfo:E,fileDescriptors:K,originalStreams:I,onInternalError:V,controller:H})=>{let D=U0A(A,$),L={originalStreams:I,fileDescriptors:K,subprocess:A,exitPromise:D,propagating:!1},z=YYA({subprocess:A,encoding:Q,buffer:B,maxBuffer:Y,lines:J,stripFinalNewline:F,verboseInfo:E,streamInfo:L}),M=CYA({subprocess:A,encoding:Q,buffer:B,maxBuffer:Y,lines:J,stripFinalNewline:F,verboseInfo:E,streamInfo:L}),N=[],q=WYA({subprocess:A,buffer:B,maxBuffer:Y,ipc:Z,ipcOutput:N,verboseInfo:E}),w=zbQ(I,A,L),P=RbQ(K,L);try{return await Promise.race([Promise.all([{},K0A(D),Promise.all(z),M,q,bQA(A,U),...w,...P]),V,wbQ(A,H),...yQA(A,C,$,H),...QQA({subprocess:A,cancelSignal:X,gracefulCancel:G,context:$,controller:H}),..._QA({subprocess:A,cancelSignal:X,gracefulCancel:G,forceKillAfterDelay:W,context:$,controller:H})])}catch(_){return $.terminationReason??="other",Promise.all([{error:_},D,Promise.all(z.map((j)=>Ty(j))),Ty(M),FYA(q,N),Promise.allSettled(w),Promise.allSettled(P)])}},zbQ=(A,Q,B)=>A.map((Y,J)=>Y===Q.stdio[J]?void 0:NI(Y,J,B)),RbQ=(A,Q)=>A.flatMap(({stdioItems:B},Y)=>B.filter(({value:J,stream:C=J})=>zC(C,{checkOpen:!1})&&!qC(C)).map(({type:J,value:C,stream:X=C})=>NI(X,Y,Q,{isSameDirection:B5.has(J),stopOnExit:J==="native"}))),wbQ=async(A,{signal:Q})=>{let[B]=await MbQ(A,"error",{signal:Q});throw B};var $YA=()=>({readableDestroy:new WeakMap,writableFinal:new WeakMap,writableDestroy:new WeakMap}),LI=(A,Q,B)=>{let Y=A[B];if(!Y.has(Q))Y.set(Q,[]);let J=Y.get(Q),C=P1();return J.push(C),{resolve:C.resolve.bind(C),promises:J}},x4=async({resolve:A,promises:Q},B)=>{A();let[Y]=await Promise.race([Promise.allSettled([!0,B]),Promise.all([!1,...Q])]);return!Y};import{Readable as jbQ}from"node:stream";import{callbackify as ObQ}from"node:util";import{finished as UYA}from"node:stream/promises";var _y=async(A)=>{if(A===void 0)return;try{await vy(A)}catch{}},EYA=async(A)=>{if(A===void 0)return;try{await yy(A)}catch{}},vy=async(A)=>{await UYA(A,{cleanup:!0,readable:!1,writable:!0})},yy=async(A)=>{await UYA(A,{cleanup:!0,readable:!0,writable:!1})},q2=async(A,Q)=>{if(await A,Q)throw Q},M2=(A,Q,B)=>{if(B&&!L2(B))A.destroy(B);else if(Q)A.destroy()};var KYA=({subprocess:A,concurrentStreams:Q,encoding:B},{from:Y,binary:J=!0,preserveNewlines:C=!0}={})=>{let X=J||G8.has(B),{subprocessStdout:G,waitReadableDestroy:W}=gy(A,Y,Q),{readableEncoding:F,readableObjectMode:Z,readableHighWaterMark:U}=hy(G,X),{read:$,onStdoutDataDone:E}=xy({subprocessStdout:G,subprocess:A,binary:X,encoding:B,preserveNewlines:C}),K=new jbQ({read:$,destroy:ObQ(by.bind(void 0,{subprocessStdout:G,subprocess:A,waitReadableDestroy:W})),highWaterMark:U,objectMode:Z,encoding:F});return fy({subprocessStdout:G,onStdoutDataDone:E,readable:K,subprocess:A}),K},gy=(A,Q,B)=>{let Y=S4(A,Q),J=LI(B,Y,"readableDestroy");return{subprocessStdout:Y,waitReadableDestroy:J}},hy=({readableEncoding:A,readableObjectMode:Q,readableHighWaterMark:B},Y)=>Y?{readableEncoding:A,readableObjectMode:Q,readableHighWaterMark:B}:{readableEncoding:A,readableObjectMode:!0,readableHighWaterMark:Py},xy=({subprocessStdout:A,subprocess:Q,binary:B,encoding:Y,preserveNewlines:J})=>{let C=P1(),X=N2({subprocessStdout:A,subprocess:Q,binary:B,shouldEncode:!B,encoding:Y,preserveNewlines:J});return{read(){PbQ(this,X,C)},onStdoutDataDone:C}},PbQ=async(A,Q,B)=>{try{let{value:Y,done:J}=await Q.next();if(J)B.resolve();else A.push(Y)}catch{}},fy=async({subprocessStdout:A,onStdoutDataDone:Q,readable:B,subprocess:Y,subprocessStdin:J})=>{try{if(await yy(A),await Y,await _y(J),await Q,B.readable)B.push(null)}catch(C){await _y(J),VYA(B,C)}},by=async({subprocessStdout:A,subprocess:Q,waitReadableDestroy:B},Y)=>{if(await x4(B,Q))VYA(A,Y),await q2(Q,Y)},VYA=(A,Q)=>{M2(A,A.readable,Q)};import{Writable as TbQ}from"node:stream";import{callbackify as IYA}from"node:util";var HYA=({subprocess:A,concurrentStreams:Q},{to:B}={})=>{let{subprocessStdin:Y,waitWritableFinal:J,waitWritableDestroy:C}=my(A,B,Q),X=new TbQ({...uy(Y,A,J),destroy:IYA(cy.bind(void 0,{subprocessStdin:Y,subprocess:A,waitWritableFinal:J,waitWritableDestroy:C})),highWaterMark:Y.writableHighWaterMark,objectMode:Y.writableObjectMode});return dy(Y,X),X},my=(A,Q,B)=>{let Y=fz(A,Q),J=LI(B,Y,"writableFinal"),C=LI(B,Y,"writableDestroy");return{subprocessStdin:Y,waitWritableFinal:J,waitWritableDestroy:C}},uy=(A,Q,B)=>({write:SbQ.bind(void 0,A),final:IYA(kbQ.bind(void 0,A,Q,B))}),SbQ=(A,Q,B,Y)=>{if(A.write(Q,B))Y();else A.once("drain",Y)},kbQ=async(A,Q,B)=>{if(await x4(B,Q)){if(A.writable)A.end();await Q}},dy=async(A,Q,B)=>{try{if(await vy(A),Q.writable)Q.end()}catch(Y){await EYA(B),DYA(Q,Y)}},cy=async({subprocessStdin:A,subprocess:Q,waitWritableFinal:B,waitWritableDestroy:Y},J)=>{if(await x4(B,Q),await x4(Y,Q))DYA(A,J),await q2(Q,J)},DYA=(A,Q)=>{M2(A,A.writable,Q)};import{Duplex as _bQ}from"node:stream";import{callbackify as vbQ}from"node:util";var NYA=({subprocess:A,concurrentStreams:Q,encoding:B},{from:Y,to:J,binary:C=!0,preserveNewlines:X=!0}={})=>{let G=C||G8.has(B),{subprocessStdout:W,waitReadableDestroy:F}=gy(A,Y,Q),{subprocessStdin:Z,waitWritableFinal:U,waitWritableDestroy:$}=my(A,J,Q),{readableEncoding:E,readableObjectMode:K,readableHighWaterMark:I}=hy(W,G),{read:V,onStdoutDataDone:H}=xy({subprocessStdout:W,subprocess:A,binary:G,encoding:B,preserveNewlines:X}),D=new _bQ({read:V,...uy(Z,A,U),destroy:vbQ(ybQ.bind(void 0,{subprocessStdout:W,subprocessStdin:Z,subprocess:A,waitReadableDestroy:F,waitWritableFinal:U,waitWritableDestroy:$})),readableHighWaterMark:I,writableHighWaterMark:Z.writableHighWaterMark,readableObjectMode:K,writableObjectMode:Z.writableObjectMode,encoding:E});return fy({subprocessStdout:W,onStdoutDataDone:H,readable:D,subprocess:A,subprocessStdin:Z}),dy(Z,D,W),D},ybQ=async({subprocessStdout:A,subprocessStdin:Q,subprocess:B,waitReadableDestroy:Y,waitWritableFinal:J,waitWritableDestroy:C},X)=>{await Promise.all([by({subprocessStdout:A,subprocess:B,waitReadableDestroy:Y},X),cy({subprocessStdin:Q,subprocess:B,waitWritableFinal:J,waitWritableDestroy:C},X)])};var ly=(A,Q,{from:B,binary:Y=!1,preserveNewlines:J=!1}={})=>{let C=Y||G8.has(Q),X=S4(A,B),G=N2({subprocessStdout:X,subprocess:A,binary:C,shouldEncode:!0,encoding:Q,preserveNewlines:J});return gbQ(G,X,A)},gbQ=async function*(A,Q,B){try{yield*A}finally{if(Q.readable)Q.destroy();await B}};var LYA=(A,{encoding:Q})=>{let B=$YA();A.readable=KYA.bind(void 0,{subprocess:A,concurrentStreams:B,encoding:Q}),A.writable=HYA.bind(void 0,{subprocess:A,concurrentStreams:B}),A.duplex=NYA.bind(void 0,{subprocess:A,concurrentStreams:B,encoding:Q}),A.iterable=ly.bind(void 0,A,Q),A[Symbol.asyncIterator]=ly.bind(void 0,A,Q,{})};var qYA=(A,Q)=>{for(let[B,Y]of xbQ){let J=Y.value.bind(Q);Reflect.defineProperty(A,B,{...Y,value:J})}},hbQ=(async()=>{})().constructor.prototype,xbQ=["then","catch","finally"].map((A)=>[A,Reflect.getOwnPropertyDescriptor(hbQ,A)]);var MYA=(A,Q,B,Y)=>{let{file:J,commandArguments:C,command:X,escapedCommand:G,startTime:W,verboseInfo:F,options:Z,fileDescriptors:U}=mbQ(A,Q,B),{subprocess:$,promise:E}=dbQ({file:J,commandArguments:C,options:Z,startTime:W,verboseInfo:F,command:X,escapedCommand:G,fileDescriptors:U});return $.pipe=D2.bind(void 0,{source:$,sourcePromise:E,boundOptions:{},createNested:Y}),qYA($,E),T1.set($,{options:Z,fileDescriptors:U}),$},mbQ=(A,Q,B)=>{let{command:Y,escapedCommand:J,startTime:C,verboseInfo:X}=jz(A,Q,B),{file:G,commandArguments:W,options:F}=rz(A,Q,B),Z=ubQ(F),U=T0A(Z,X);return{file:G,commandArguments:W,command:Y,escapedCommand:J,startTime:C,verboseInfo:X,options:Z,fileDescriptors:U}},ubQ=({timeout:A,signal:Q,...B})=>{if(Q!==void 0)throw TypeError('The "signal" option has been renamed to "cancelSignal" instead.');return{...B,timeoutDuration:A}},dbQ=({file:A,commandArguments:Q,options:B,startTime:Y,verboseInfo:J,command:C,escapedCommand:X,fileDescriptors:G})=>{let W;try{W=bbQ(A,Q,B)}catch(K){return w0A({error:K,command:C,escapedCommand:X,fileDescriptors:G,options:B,startTime:Y,verboseInfo:J})}let F=new AbortController;fbQ(Number.POSITIVE_INFINITY,F.signal);let Z=[...W.stdio];b0A(W,G,F),l0A(W,B,F);let U={},$=P1();W.kill=eAA.bind(void 0,{kill:W.kill.bind(W),options:B,onInternalError:$,context:U,controller:F}),W.all=JYA(W,B),LYA(W,B),M0A(W,B);let E=cbQ({subprocess:W,options:B,startTime:Y,verboseInfo:J,fileDescriptors:G,originalStreams:Z,command:C,escapedCommand:X,context:U,onInternalError:$,controller:F});return{subprocess:W,promise:E}},cbQ=async({subprocess:A,options:Q,startTime:B,verboseInfo:Y,fileDescriptors:J,originalStreams:C,command:X,escapedCommand:G,context:W,onInternalError:F,controller:Z})=>{let[U,[$,E],K,I,V]=await ZYA({subprocess:A,options:Q,context:W,verboseInfo:Y,fileDescriptors:J,originalStreams:C,onInternalError:F,controller:Z});Z.abort(),F.resolve();let H=K.map((z,M)=>eX(z,Q,M)),D=eX(I,Q,"all"),L=lbQ({errorInfo:U,exitCode:$,signal:E,stdio:H,all:D,ipcOutput:V,context:W,options:Q,command:X,escapedCommand:G,startTime:B});return y4(L,Y,Q)},lbQ=({errorInfo:A,exitCode:Q,signal:B,stdio:Y,all:J,ipcOutput:C,context:X,options:G,command:W,escapedCommand:F,startTime:Z})=>("error"in A)?KI({error:A.error,command:W,escapedCommand:F,timedOut:X.terminationReason==="timeout",isCanceled:X.terminationReason==="cancel"||X.terminationReason==="gracefulCancel",isGracefullyCanceled:X.terminationReason==="gracefulCancel",isMaxBuffer:A.error instanceof oX,isForcefullyTerminated:X.isForcefullyTerminated,exitCode:Q,signal:B,stdio:Y,all:J,ipcOutput:C,options:G,startTime:Z,isSync:!1}):J2({command:W,escapedCommand:F,stdio:Y,all:J,ipcOutput:C,options:G,startTime:Z});var z2=(A,Q)=>{let B=Object.fromEntries(Object.entries(Q).map(([Y,J])=>[Y,pbQ(Y,A[Y],J)]));return{...A,...B}},pbQ=(A,Q,B)=>{if(ibQ.has(A)&&CY(Q)&&CY(B))return{...Q,...B};return B},ibQ=new Set(["env",...zv]);var eG=(A,Q,B,Y)=>{let J=(X,G,W)=>eG(X,G,B,W),C=(...X)=>nbQ({mapArguments:A,deepOptions:B,boundOptions:Q,setBoundExeca:Y,createNested:J},...X);if(Y!==void 0)Y(C,J,Q);return C},nbQ=({mapArguments:A,deepOptions:Q={},boundOptions:B={},setBoundExeca:Y,createNested:J},C,...X)=>{if(CY(C))return J(A,z2(B,C),Y);let{file:G,commandArguments:W,options:F,isSync:Z}=sbQ({mapArguments:A,firstArgument:C,nextArguments:X,deepOptions:Q,boundOptions:B});return Z?I0A(G,W,F):MYA(G,W,F,J)},sbQ=({mapArguments:A,firstArgument:Q,nextArguments:B,deepOptions:Y,boundOptions:J})=>{let C=Te(Q)?Se(Q,B):[Q,...B],[X,G,W]=Vz(...C),F=z2(z2(Y,J),W),{file:Z=X,commandArguments:U=G,options:$=F,isSync:E=!1}=A({file:X,commandArguments:G,options:F});return{file:Z,commandArguments:U,options:$,isSync:E}};var zYA=({file:A,commandArguments:Q})=>wYA(A,Q),RYA=({file:A,commandArguments:Q})=>({...wYA(A,Q),isSync:!0}),wYA=(A,Q)=>{if(Q.length>0)throw TypeError(`The command and its arguments must be passed as a single string: ${A} ${Q}.`);let[B,...Y]=rbQ(A);return{file:B,commandArguments:Y}},rbQ=(A)=>{if(typeof A!=="string")throw TypeError(`The command must be a string: ${String(A)}.`);let Q=A.trim();if(Q==="")return[];let B=[];for(let Y of Q.split(abQ)){let J=B.at(-1);if(J&&J.endsWith("\\"))B[B.length-1]=`${J.slice(0,-1)} ${Y}`;else B.push(Y)}return B},abQ=/ +/g;var jYA=(A,Q,B)=>{A.sync=Q(obQ,B),A.s=A.sync},OYA=({options:A})=>PYA(A),obQ=({options:A})=>({...PYA(A),isSync:!0}),PYA=(A)=>({options:{...tbQ(A),...A}}),tbQ=({input:A,inputFile:Q,stdio:B})=>A===void 0&&Q===void 0&&B===void 0?{stdin:"inherit"}:{},TYA={preferLocal:!0};var qI=eG(()=>({})),P1Y=eG(()=>({isSync:!0})),T1Y=eG(zYA),S1Y=eG(RYA),k1Y=eG(hQA),_1Y=eG(OYA,{},TYA,jYA),{sendMessage:v1Y,getOneMessage:y1Y,getEachMessage:g1Y,getCancelSignal:h1Y}=z0A();var rYA=qA(uYA(),1);var zI=(A)=>{if(typeof A!=="string")throw TypeError("invalid pattern");if(A.length>65536)throw TypeError("pattern is too long")};var XmQ={"[:alnum:]":["\\p{L}\\p{Nl}\\p{Nd}",!0],"[:alpha:]":["\\p{L}\\p{Nl}",!0],"[:ascii:]":["\\x00-\\x7f",!1],"[:blank:]":["\\p{Zs}\\t",!0],"[:cntrl:]":["\\p{Cc}",!0],"[:digit:]":["\\p{Nd}",!0],"[:graph:]":["\\p{Z}\\p{C}",!0,!0],"[:lower:]":["\\p{Ll}",!0],"[:print:]":["\\p{C}",!0],"[:punct:]":["\\p{P}",!0],"[:space:]":["\\p{Z}\\t\\r\\n\\v\\f",!0],"[:upper:]":["\\p{Lu}",!0],"[:word:]":["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}",!0],"[:xdigit:]":["A-Fa-f0-9",!1]},RI=(A)=>A.replace(/[[\]\\-]/g,"\\$&"),GmQ=(A)=>A.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),dYA=(A)=>A.join(""),cYA=(A,Q)=>{let B=Q;if(A.charAt(B)!=="[")throw Error("not in a brace expression");let Y=[],J=[],C=B+1,X=!1,G=!1,W=!1,F=!1,Z=B,U="";A:while(CU)Y.push(RI(U)+"-"+RI(I));else if(I===U)Y.push(RI(I));U="",C++;continue}if(A.startsWith("-]",C+1)){Y.push(RI(I+"-")),C+=2;continue}if(A.startsWith("-",C+1)){U=I,C+=2;continue}Y.push(RI(I)),C++}if(Z{return Q?A.replace(/\[([^\/\\])\]/g,"$1"):A.replace(/((?!\\).|^)\[([^\/\\])\]/g,"$1$2").replace(/\\([^\/])/g,"$1")};var WmQ=new Set(["!","?","+","*","@"]),lYA=(A)=>WmQ.has(A),FmQ="(?!(?:^|/)\\.\\.?(?:$|/))",R2="(?!\\.)",ZmQ=new Set(["[","."]),$mQ=new Set(["..","."]),UmQ=new Set("().*{}+?[]^$\\!"),EmQ=(A)=>A.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),sy="[^/]",pYA=sy+"*?",iYA=sy+"+?";class YJ{type;#A;#Q;#B=!1;#Y=[];#J;#C;#W;#X=!1;#G;#Z;#U=!1;constructor(A,Q,B={}){if(this.type=A,A)this.#Q=!0;if(this.#J=Q,this.#A=this.#J?this.#J.#A:this,this.#G=this.#A===this?B:this.#A.#G,this.#W=this.#A===this?[]:this.#A.#W,A==="!"&&!this.#A.#X)this.#W.push(this);this.#C=this.#J?this.#J.#Y.length:0}get hasMagic(){if(this.#Q!==void 0)return this.#Q;for(let A of this.#Y){if(typeof A==="string")continue;if(A.type||A.hasMagic)return this.#Q=!0}return this.#Q}toString(){if(this.#Z!==void 0)return this.#Z;if(!this.type)return this.#Z=this.#Y.map((A)=>String(A)).join("");else return this.#Z=this.type+"("+this.#Y.map((A)=>String(A)).join("|")+")"}#F(){if(this!==this.#A)throw Error("should only call on root");if(this.#X)return this;this.toString(),this.#X=!0;let A;while(A=this.#W.pop()){if(A.type!=="!")continue;let Q=A,B=Q.#J;while(B){for(let Y=Q.#C+1;!B.type&&Ytypeof Q==="string"?Q:Q.toJSON()):[this.type,...this.#Y.map((Q)=>Q.toJSON())];if(this.isStart()&&!this.type)A.unshift([]);if(this.isEnd()&&(this===this.#A||this.#A.#X&&this.#J?.type==="!"))A.push({});return A}isStart(){if(this.#A===this)return!0;if(!this.#J?.isStart())return!1;if(this.#C===0)return!0;let A=this.#J;for(let Q=0;Q{let[E,K,I,V]=typeof $==="string"?YJ.#I($,this.#Q,G):$.toRegExpSource(A);return this.#Q=this.#Q||I,this.#B=this.#B||V,E}).join(""),F="";if(this.isStart()){if(typeof this.#Y[0]==="string"){if(!(this.#Y.length===1&&$mQ.has(this.#Y[0]))){let E=ZmQ,K=Q&&E.has(W.charAt(0))||W.startsWith("\\.")&&E.has(W.charAt(2))||W.startsWith("\\.\\.")&&E.has(W.charAt(4)),I=!Q&&!A&&E.has(W.charAt(0));F=K?FmQ:I?R2:""}}}let Z="";if(this.isEnd()&&this.#A.#X&&this.#J?.type==="!")Z="(?:$|\\/)";return[F+W+Z,RC(W),this.#Q=!!this.#Q,this.#B]}let B=this.type==="*"||this.type==="+",Y=this.type==="!"?"(?:(?!(?:":"(?:",J=this.#V(Q);if(this.isStart()&&this.isEnd()&&!J&&this.type!=="!"){let G=this.toString();return this.#Y=[G],this.type=null,this.#Q=void 0,[G,RC(this.toString()),!1,!1]}let C=!B||A||Q||!R2?"":this.#V(!0);if(C===J)C="";if(C)J=`(?:${J})(?:${C})*?`;let X="";if(this.type==="!"&&this.#U)X=(this.isStart()&&!Q?R2:"")+iYA;else{let G=this.type==="!"?"))"+(this.isStart()&&!Q&&!A?R2:"")+pYA+")":this.type==="@"?")":this.type==="?"?")?":this.type==="+"&&C?")":this.type==="*"&&C?")?":`)${this.type}`;X=Y+J+G}return[X,RC(J),this.#Q=!!this.#Q,this.#B]}#V(A){return this.#Y.map((Q)=>{if(typeof Q==="string")throw Error("string type in extglob ast??");let[B,Y,J,C]=Q.toRegExpSource(A);return this.#B=this.#B||C,B}).filter((Q)=>!(this.isStart()&&this.isEnd())||!!Q).join("|")}static#I(A,Q,B=!1){let Y=!1,J="",C=!1;for(let X=0;X{return Q?A.replace(/[?*()[\]]/g,"[$&]"):A.replace(/[?*()[\]\\]/g,"\\$&")};var iJ=(A,Q,B={})=>{if(zI(Q),!B.nocomment&&Q.charAt(0)==="#")return!1;return new J5(Q,B).match(A)},KmQ=/^\*+([^+@!?\*\[\(]*)$/,VmQ=(A)=>(Q)=>!Q.startsWith(".")&&Q.endsWith(A),ImQ=(A)=>(Q)=>Q.endsWith(A),HmQ=(A)=>{return A=A.toLowerCase(),(Q)=>!Q.startsWith(".")&&Q.toLowerCase().endsWith(A)},DmQ=(A)=>{return A=A.toLowerCase(),(Q)=>Q.toLowerCase().endsWith(A)},NmQ=/^\*+\.\*+$/,LmQ=(A)=>!A.startsWith(".")&&A.includes("."),qmQ=(A)=>A!=="."&&A!==".."&&A.includes("."),MmQ=/^\.\*+$/,zmQ=(A)=>A!=="."&&A!==".."&&A.startsWith("."),RmQ=/^\*+$/,wmQ=(A)=>A.length!==0&&!A.startsWith("."),jmQ=(A)=>A.length!==0&&A!=="."&&A!=="..",OmQ=/^\?+([^+@!?\*\[\(]*)?$/,PmQ=([A,Q=""])=>{let B=aYA([A]);if(!Q)return B;return Q=Q.toLowerCase(),(Y)=>B(Y)&&Y.toLowerCase().endsWith(Q)},TmQ=([A,Q=""])=>{let B=oYA([A]);if(!Q)return B;return Q=Q.toLowerCase(),(Y)=>B(Y)&&Y.toLowerCase().endsWith(Q)},SmQ=([A,Q=""])=>{let B=oYA([A]);return!Q?B:(Y)=>B(Y)&&Y.endsWith(Q)},kmQ=([A,Q=""])=>{let B=aYA([A]);return!Q?B:(Y)=>B(Y)&&Y.endsWith(Q)},aYA=([A])=>{let Q=A.length;return(B)=>B.length===Q&&!B.startsWith(".")},oYA=([A])=>{let Q=A.length;return(B)=>B.length===Q&&B!=="."&&B!==".."},tYA=typeof process==="object"&&process?typeof process.env==="object"&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:"posix",nYA={win32:{sep:"\\"},posix:{sep:"/"}},_mQ=tYA==="win32"?nYA.win32.sep:nYA.posix.sep;iJ.sep=_mQ;var JJ=Symbol("globstar **");iJ.GLOBSTAR=JJ;var vmQ="[^/]",ymQ=vmQ+"*?",gmQ="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",hmQ="(?:(?!(?:\\/|^)\\.).)*?",xmQ=(A,Q={})=>(B)=>iJ(B,A,Q);iJ.filter=xmQ;var Y5=(A,Q={})=>Object.assign({},A,Q),fmQ=(A)=>{if(!A||typeof A!=="object"||!Object.keys(A).length)return iJ;let Q=iJ;return Object.assign((Y,J,C={})=>Q(Y,J,Y5(A,C)),{Minimatch:class extends Q.Minimatch{constructor(J,C={}){super(J,Y5(A,C))}static defaults(J){return Q.defaults(Y5(A,J)).Minimatch}},AST:class extends Q.AST{constructor(J,C,X={}){super(J,C,Y5(A,X))}static fromGlob(J,C={}){return Q.AST.fromGlob(J,Y5(A,C))}},unescape:(Y,J={})=>Q.unescape(Y,Y5(A,J)),escape:(Y,J={})=>Q.escape(Y,Y5(A,J)),filter:(Y,J={})=>Q.filter(Y,Y5(A,J)),defaults:(Y)=>Q.defaults(Y5(A,Y)),makeRe:(Y,J={})=>Q.makeRe(Y,Y5(A,J)),braceExpand:(Y,J={})=>Q.braceExpand(Y,Y5(A,J)),match:(Y,J,C={})=>Q.match(Y,J,Y5(A,C)),sep:Q.sep,GLOBSTAR:JJ})};iJ.defaults=fmQ;var eYA=(A,Q={})=>{if(zI(A),Q.nobrace||!/\{(?:(?!\{).)*\}/.test(A))return[A];return rYA.default(A)};iJ.braceExpand=eYA;var bmQ=(A,Q={})=>new J5(A,Q).makeRe();iJ.makeRe=bmQ;var mmQ=(A,Q,B={})=>{let Y=new J5(Q,B);if(A=A.filter((J)=>Y.match(J)),Y.options.nonull&&!A.length)A.push(Q);return A};iJ.match=mmQ;var sYA=/[?*]|[+@!]\(.*?\)|\[|\]/,umQ=(A)=>A.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&");class J5{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;regexp;constructor(A,Q={}){if(zI(A),Q=Q||{},this.options=Q,this.pattern=A,this.platform=Q.platform||tYA,this.isWindows=this.platform==="win32",this.windowsPathsNoEscape=!!Q.windowsPathsNoEscape||Q.allowWindowsEscape===!1,this.windowsPathsNoEscape)this.pattern=this.pattern.replace(/\\/g,"/");this.preserveMultipleSlashes=!!Q.preserveMultipleSlashes,this.regexp=null,this.negate=!1,this.nonegate=!!Q.nonegate,this.comment=!1,this.empty=!1,this.partial=!!Q.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=Q.windowsNoMagicRoot!==void 0?Q.windowsNoMagicRoot:!!(this.isWindows&&this.nocase),this.globSet=[],this.globParts=[],this.set=[],this.make()}hasMagic(){if(this.options.magicalBraces&&this.set.length>1)return!0;for(let A of this.set)for(let Q of A)if(typeof Q!=="string")return!0;return!1}debug(...A){}make(){let A=this.pattern,Q=this.options;if(!Q.nocomment&&A.charAt(0)==="#"){this.comment=!0;return}if(!A){this.empty=!0;return}if(this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],Q.debug)this.debug=(...J)=>console.error(...J);this.debug(this.pattern,this.globSet);let B=this.globSet.map((J)=>this.slashSplit(J));this.globParts=this.preprocess(B),this.debug(this.pattern,this.globParts);let Y=this.globParts.map((J,C,X)=>{if(this.isWindows&&this.windowsNoMagicRoot){let G=J[0]===""&&J[1]===""&&(J[2]==="?"||!sYA.test(J[2]))&&!sYA.test(J[3]),W=/^[a-z]:/i.test(J[0]);if(G)return[...J.slice(0,4),...J.slice(4).map((F)=>this.parse(F))];else if(W)return[J[0],...J.slice(1).map((F)=>this.parse(F))]}return J.map((G)=>this.parse(G))});if(this.debug(this.pattern,Y),this.set=Y.filter((J)=>J.indexOf(!1)===-1),this.isWindows)for(let J=0;J=2)A=this.firstPhasePreProcess(A),A=this.secondPhasePreProcess(A);else if(Q>=1)A=this.levelOneOptimize(A);else A=this.adjascentGlobstarOptimize(A);return A}adjascentGlobstarOptimize(A){return A.map((Q)=>{let B=-1;while((B=Q.indexOf("**",B+1))!==-1){let Y=B;while(Q[Y+1]==="**")Y++;if(Y!==B)Q.splice(B,Y-B)}return Q})}levelOneOptimize(A){return A.map((Q)=>{return Q=Q.reduce((B,Y)=>{let J=B[B.length-1];if(Y==="**"&&J==="**")return B;if(Y===".."){if(J&&J!==".."&&J!=="."&&J!=="**")return B.pop(),B}return B.push(Y),B},[]),Q.length===0?[""]:Q})}levelTwoFileOptimize(A){if(!Array.isArray(A))A=this.slashSplit(A);let Q=!1;do{if(Q=!1,!this.preserveMultipleSlashes){for(let Y=1;YY)B.splice(Y+1,C-Y);let X=B[Y+1],G=B[Y+2],W=B[Y+3];if(X!=="..")continue;if(!G||G==="."||G===".."||!W||W==="."||W==="..")continue;Q=!0,B.splice(Y,1);let F=B.slice(0);F[Y]="**",A.push(F),Y--}if(!this.preserveMultipleSlashes){for(let C=1;CQ.length)}partsMatch(A,Q,B=!1){let Y=0,J=0,C=[],X="";while(YD)Q=Q.slice(L);else if(D>L)A=A.slice(D)}}}let{optimizationLevel:J=1}=this.options;if(J>=2)A=this.levelTwoFileOptimize(A);this.debug("matchOne",this,{file:A,pattern:Q}),this.debug("matchOne",A.length,Q.length);for(var C=0,X=0,G=A.length,W=Q.length;C>> no match, partial?`,A,U,Q,$),U===G)return!0}return!1}let K;if(typeof F==="string")K=Z===F,this.debug("string match",F,Z,K);else K=F.test(Z),this.debug("pattern match",F,Z,K);if(!K)return!1}if(C===G&&X===W)return!0;else if(C===G)return B;else if(X===W)return C===G-1&&A[C]==="";else throw Error("wtf?")}braceExpand(){return eYA(this.pattern,this.options)}parse(A){zI(A);let Q=this.options;if(A==="**")return JJ;if(A==="")return"";let B,Y=null;if(B=A.match(RmQ))Y=Q.dot?jmQ:wmQ;else if(B=A.match(KmQ))Y=(Q.nocase?Q.dot?DmQ:HmQ:Q.dot?ImQ:VmQ)(B[1]);else if(B=A.match(OmQ))Y=(Q.nocase?Q.dot?TmQ:PmQ:Q.dot?SmQ:kmQ)(B);else if(B=A.match(NmQ))Y=Q.dot?qmQ:LmQ;else if(B=A.match(MmQ))Y=zmQ;let J=YJ.fromGlob(A,this.options).toMMPattern();if(Y&&typeof J==="object")Reflect.defineProperty(J,"test",{value:Y});return J}makeRe(){if(this.regexp||this.regexp===!1)return this.regexp;let A=this.set;if(!A.length)return this.regexp=!1,this.regexp;let Q=this.options,B=Q.noglobstar?ymQ:Q.dot?gmQ:hmQ,Y=new Set(Q.nocase?["i"]:[]),J=A.map((G)=>{let W=G.map((F)=>{if(F instanceof RegExp)for(let Z of F.flags.split(""))Y.add(Z);return typeof F==="string"?umQ(F):F===JJ?JJ:F._src});return W.forEach((F,Z)=>{let U=W[Z+1],$=W[Z-1];if(F!==JJ||$===JJ)return;if($===void 0)if(U!==void 0&&U!==JJ)W[Z+1]="(?:\\/|"+B+"\\/)?"+U;else W[Z]=B;else if(U===void 0)W[Z-1]=$+"(?:\\/|"+B+")?";else if(U!==JJ)W[Z-1]=$+"(?:\\/|\\/"+B+"\\/)"+U,W[Z+1]=JJ}),W.filter((F)=>F!==JJ).join("/")}).join("|"),[C,X]=A.length>1?["(?:",")"]:["",""];if(J="^"+C+J+X+"$",this.negate)J="^(?!"+J+").+$";try{this.regexp=new RegExp(J,[...Y].join(""))}catch(G){this.regexp=!1}return this.regexp}slashSplit(A){if(this.preserveMultipleSlashes)return A.split("/");else if(this.isWindows&&/^\/\/[^\/]+/.test(A))return["",...A.split(/\/+/)];else return A.split(/\/+/)}match(A,Q=this.partial){if(this.debug("match",A,this.pattern),this.comment)return!1;if(this.empty)return A==="";if(A==="/"&&Q)return!0;let B=this.options;if(this.isWindows)A=A.split("\\").join("/");let Y=this.slashSplit(A);this.debug(this.pattern,"split",Y);let J=this.set;this.debug(this.pattern,"set",J);let C=Y[Y.length-1];if(!C)for(let X=Y.length-2;!C&&X>=0;X--)C=Y[X];for(let X=0;X{typeof ry.emitWarning==="function"?ry.emitWarning(A,Q,B,Y):console.error(`[${B}] ${Q}: ${A}`)},w2=globalThis.AbortController,AJA=globalThis.AbortSignal;if(typeof w2>"u"){AJA=class{onabort;_onabort=[];reason;aborted=!1;addEventListener(Y,J){this._onabort.push(J)}},w2=class{constructor(){Q()}signal=new AJA;abort(Y){if(this.signal.aborted)return;this.signal.reason=Y,this.signal.aborted=!0;for(let J of this.signal._onabort)J(Y);this.signal.onabort?.(Y)}};let A=ry.env?.LRU_CACHE_IGNORE_AC_WARNING!=="1",Q=()=>{if(!A)return;A=!1,BJA("AbortController is not defined. If using lru-cache in node 14, load an AbortController polyfill from the `node-abort-controller` package. A minimal polyfill is provided for use by LRUCache.fetch(), but it should not be relied upon in other contexts (eg, passing it to other APIs that use AbortController/AbortSignal might have undesirable effects). You may disable this with LRU_CACHE_IGNORE_AC_WARNING=1 in the env.","NO_ABORT_CONTROLLER","ENOTSUP",Q)}}var dmQ=(A)=>!QJA.has(A),QXY=Symbol("type"),A7=(A)=>A&&A===Math.floor(A)&&A>0&&isFinite(A),YJA=(A)=>!A7(A)?null:A<=Math.pow(2,8)?Uint8Array:A<=Math.pow(2,16)?Uint16Array:A<=Math.pow(2,32)?Uint32Array:A<=Number.MAX_SAFE_INTEGER?wI:null;class wI extends Array{constructor(A){super(A);this.fill(0)}}class b4{heap;length;static#A=!1;static create(A){let Q=YJA(A);if(!Q)return[];b4.#A=!0;let B=new b4(A,Q);return b4.#A=!1,B}constructor(A,Q){if(!b4.#A)throw TypeError("instantiate Stack using Stack.create(n)");this.heap=new Q(A),this.length=0}push(A){this.heap[this.length++]=A}pop(){return this.heap[--this.length]}}class jI{#A;#Q;#B;#Y;#J;#C;#W;ttl;ttlResolution;ttlAutopurge;updateAgeOnGet;updateAgeOnHas;allowStale;noDisposeOnSet;noUpdateTTL;maxEntrySize;sizeCalculation;noDeleteOnFetchRejection;noDeleteOnStaleGet;allowStaleOnFetchAbort;allowStaleOnFetchRejection;ignoreFetchAbort;#X;#G;#Z;#U;#F;#E;#V;#I;#D;#O;#N;#P;#M;#q;#L;#w;#H;#S;static unsafeExposeInternals(A){return{starts:A.#M,ttls:A.#q,sizes:A.#P,keyMap:A.#Z,keyList:A.#U,valList:A.#F,next:A.#E,prev:A.#V,get head(){return A.#I},get tail(){return A.#D},free:A.#O,isBackgroundFetch:(Q)=>A.#K(Q),backgroundFetch:(Q,B,Y,J)=>A.#g(Q,B,Y,J),moveToTail:(Q)=>A.#f(Q),indexes:(Q)=>A.#j(Q),rindexes:(Q)=>A.#T(Q),isStale:(Q)=>A.#R(Q)}}get max(){return this.#A}get maxSize(){return this.#Q}get calculatedSize(){return this.#G}get size(){return this.#X}get fetchMethod(){return this.#C}get memoMethod(){return this.#W}get dispose(){return this.#B}get onInsert(){return this.#Y}get disposeAfter(){return this.#J}constructor(A){let{max:Q=0,ttl:B,ttlResolution:Y=1,ttlAutopurge:J,updateAgeOnGet:C,updateAgeOnHas:X,allowStale:G,dispose:W,onInsert:F,disposeAfter:Z,noDisposeOnSet:U,noUpdateTTL:$,maxSize:E=0,maxEntrySize:K=0,sizeCalculation:I,fetchMethod:V,memoMethod:H,noDeleteOnFetchRejection:D,noDeleteOnStaleGet:L,allowStaleOnFetchRejection:z,allowStaleOnFetchAbort:M,ignoreFetchAbort:N}=A;if(Q!==0&&!A7(Q))throw TypeError("max option must be a nonnegative integer");let q=Q?YJA(Q):Array;if(!q)throw Error("invalid max value: "+Q);if(this.#A=Q,this.#Q=E,this.maxEntrySize=K||this.#Q,this.sizeCalculation=I,this.sizeCalculation){if(!this.#Q&&!this.maxEntrySize)throw TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");if(typeof this.sizeCalculation!=="function")throw TypeError("sizeCalculation set to non-function")}if(H!==void 0&&typeof H!=="function")throw TypeError("memoMethod must be a function if defined");if(this.#W=H,V!==void 0&&typeof V!=="function")throw TypeError("fetchMethod must be a function if specified");if(this.#C=V,this.#w=!!V,this.#Z=new Map,this.#U=Array(Q).fill(void 0),this.#F=Array(Q).fill(void 0),this.#E=new q(Q),this.#V=new q(Q),this.#I=0,this.#D=0,this.#O=b4.create(Q),this.#X=0,this.#G=0,typeof W==="function")this.#B=W;if(typeof F==="function")this.#Y=F;if(typeof Z==="function")this.#J=Z,this.#N=[];else this.#J=void 0,this.#N=void 0;if(this.#L=!!this.#B,this.#S=!!this.#Y,this.#H=!!this.#J,this.noDisposeOnSet=!!U,this.noUpdateTTL=!!$,this.noDeleteOnFetchRejection=!!D,this.allowStaleOnFetchRejection=!!z,this.allowStaleOnFetchAbort=!!M,this.ignoreFetchAbort=!!N,this.maxEntrySize!==0){if(this.#Q!==0){if(!A7(this.#Q))throw TypeError("maxSize must be a positive integer if specified")}if(!A7(this.maxEntrySize))throw TypeError("maxEntrySize must be a positive integer if specified");this.#m()}if(this.allowStale=!!G,this.noDeleteOnStaleGet=!!L,this.updateAgeOnGet=!!C,this.updateAgeOnHas=!!X,this.ttlResolution=A7(Y)||Y===0?Y:1,this.ttlAutopurge=!!J,this.ttl=B||0,this.ttl){if(!A7(this.ttl))throw TypeError("ttl must be a positive integer if specified");this.#$()}if(this.#A===0&&this.ttl===0&&this.#Q===0)throw TypeError("At least one of max, maxSize, or ttl is required");if(!this.ttlAutopurge&&!this.#A&&!this.#Q){if(dmQ("LRU_CACHE_UNBOUNDED"))QJA.add("LRU_CACHE_UNBOUNDED"),BJA("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning","LRU_CACHE_UNBOUNDED",jI)}}getRemainingTTL(A){return this.#Z.has(A)?1/0:0}#$(){let A=new wI(this.#A),Q=new wI(this.#A);this.#q=A,this.#M=Q,this.#k=(J,C,X=f4.now())=>{if(Q[J]=C!==0?X:0,A[J]=C,C!==0&&this.ttlAutopurge){let G=setTimeout(()=>{if(this.#R(J))this.#_(this.#U[J],"expire")},C+1);if(G.unref)G.unref()}},this.#v=(J)=>{Q[J]=A[J]!==0?f4.now():0},this.#z=(J,C)=>{if(A[C]){let X=A[C],G=Q[C];if(!X||!G)return;J.ttl=X,J.start=G,J.now=B||Y();let W=J.now-G;J.remainingTTL=X-W}};let B=0,Y=()=>{let J=f4.now();if(this.ttlResolution>0){B=J;let C=setTimeout(()=>B=0,this.ttlResolution);if(C.unref)C.unref()}return J};this.getRemainingTTL=(J)=>{let C=this.#Z.get(J);if(C===void 0)return 0;let X=A[C],G=Q[C];if(!X||!G)return 1/0;let W=(B||Y())-G;return X-W},this.#R=(J)=>{let C=Q[J],X=A[J];return!!X&&!!C&&(B||Y())-C>X}}#v=()=>{};#z=()=>{};#k=()=>{};#R=()=>!1;#m(){let A=new wI(this.#A);this.#G=0,this.#P=A,this.#y=(Q)=>{this.#G-=A[Q],A[Q]=0},this.#u=(Q,B,Y,J)=>{if(this.#K(B))return 0;if(!A7(Y))if(J){if(typeof J!=="function")throw TypeError("sizeCalculation must be a function");if(Y=J(B,Q),!A7(Y))throw TypeError("sizeCalculation return invalid (expect positive integer)")}else throw TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");return Y},this.#h=(Q,B,Y)=>{if(A[Q]=B,this.#Q){let J=this.#Q-A[Q];while(this.#G>J)this.#x(!0)}if(this.#G+=A[Q],Y)Y.entrySize=B,Y.totalCalculatedSize=this.#G}}#y=(A)=>{};#h=(A,Q,B)=>{};#u=(A,Q,B,Y)=>{if(B||Y)throw TypeError("cannot set size without setting maxSize or maxEntrySize on cache");return 0};*#j({allowStale:A=this.allowStale}={}){if(this.#X)for(let Q=this.#D;;){if(!this.#d(Q))break;if(A||!this.#R(Q))yield Q;if(Q===this.#I)break;else Q=this.#V[Q]}}*#T({allowStale:A=this.allowStale}={}){if(this.#X)for(let Q=this.#I;;){if(!this.#d(Q))break;if(A||!this.#R(Q))yield Q;if(Q===this.#D)break;else Q=this.#E[Q]}}#d(A){return A!==void 0&&this.#Z.get(this.#U[A])===A}*entries(){for(let A of this.#j())if(this.#F[A]!==void 0&&this.#U[A]!==void 0&&!this.#K(this.#F[A]))yield[this.#U[A],this.#F[A]]}*rentries(){for(let A of this.#T())if(this.#F[A]!==void 0&&this.#U[A]!==void 0&&!this.#K(this.#F[A]))yield[this.#U[A],this.#F[A]]}*keys(){for(let A of this.#j()){let Q=this.#U[A];if(Q!==void 0&&!this.#K(this.#F[A]))yield Q}}*rkeys(){for(let A of this.#T()){let Q=this.#U[A];if(Q!==void 0&&!this.#K(this.#F[A]))yield Q}}*values(){for(let A of this.#j())if(this.#F[A]!==void 0&&!this.#K(this.#F[A]))yield this.#F[A]}*rvalues(){for(let A of this.#T())if(this.#F[A]!==void 0&&!this.#K(this.#F[A]))yield this.#F[A]}[Symbol.iterator](){return this.entries()}[Symbol.toStringTag]="LRUCache";find(A,Q={}){for(let B of this.#j()){let Y=this.#F[B],J=this.#K(Y)?Y.__staleWhileFetching:Y;if(J===void 0)continue;if(A(J,this.#U[B],this))return this.get(this.#U[B],Q)}}forEach(A,Q=this){for(let B of this.#j()){let Y=this.#F[B],J=this.#K(Y)?Y.__staleWhileFetching:Y;if(J===void 0)continue;A.call(Q,J,this.#U[B],this)}}rforEach(A,Q=this){for(let B of this.#T()){let Y=this.#F[B],J=this.#K(Y)?Y.__staleWhileFetching:Y;if(J===void 0)continue;A.call(Q,J,this.#U[B],this)}}purgeStale(){let A=!1;for(let Q of this.#T({allowStale:!0}))if(this.#R(Q))this.#_(this.#U[Q],"expire"),A=!0;return A}info(A){let Q=this.#Z.get(A);if(Q===void 0)return;let B=this.#F[Q],Y=this.#K(B)?B.__staleWhileFetching:B;if(Y===void 0)return;let J={value:Y};if(this.#q&&this.#M){let C=this.#q[Q],X=this.#M[Q];if(C&&X){let G=C-(f4.now()-X);J.ttl=G,J.start=Date.now()}}if(this.#P)J.size=this.#P[Q];return J}dump(){let A=[];for(let Q of this.#j({allowStale:!0})){let B=this.#U[Q],Y=this.#F[Q],J=this.#K(Y)?Y.__staleWhileFetching:Y;if(J===void 0||B===void 0)continue;let C={value:J};if(this.#q&&this.#M){C.ttl=this.#q[Q];let X=f4.now()-this.#M[Q];C.start=Math.floor(Date.now()-X)}if(this.#P)C.size=this.#P[Q];A.unshift([B,C])}return A}load(A){this.clear();for(let[Q,B]of A){if(B.start){let Y=Date.now()-B.start;B.start=f4.now()-Y}this.set(Q,B.value,B)}}set(A,Q,B={}){if(Q===void 0)return this.delete(A),this;let{ttl:Y=this.ttl,start:J,noDisposeOnSet:C=this.noDisposeOnSet,sizeCalculation:X=this.sizeCalculation,status:G}=B,{noUpdateTTL:W=this.noUpdateTTL}=B,F=this.#u(A,Q,B.size||0,X);if(this.maxEntrySize&&F>this.maxEntrySize){if(G)G.set="miss",G.maxEntrySizeExceeded=!0;return this.#_(A,"set"),this}let Z=this.#X===0?void 0:this.#Z.get(A);if(Z===void 0){if(Z=this.#X===0?this.#D:this.#O.length!==0?this.#O.pop():this.#X===this.#A?this.#x(!1):this.#X,this.#U[Z]=A,this.#F[Z]=Q,this.#Z.set(A,Z),this.#E[this.#D]=Z,this.#V[Z]=this.#D,this.#D=Z,this.#X++,this.#h(Z,F,G),G)G.set="add";if(W=!1,this.#S)this.#Y?.(Q,A,"add")}else{this.#f(Z);let U=this.#F[Z];if(Q!==U){if(this.#w&&this.#K(U)){U.__abortController.abort(Error("replaced"));let{__staleWhileFetching:$}=U;if($!==void 0&&!C){if(this.#L)this.#B?.($,A,"set");if(this.#H)this.#N?.push([$,A,"set"])}}else if(!C){if(this.#L)this.#B?.(U,A,"set");if(this.#H)this.#N?.push([U,A,"set"])}if(this.#y(Z),this.#h(Z,F,G),this.#F[Z]=Q,G){G.set="replace";let $=U&&this.#K(U)?U.__staleWhileFetching:U;if($!==void 0)G.oldValue=$}}else if(G)G.set="update";if(this.#S)this.onInsert?.(Q,A,Q===U?"update":"replace")}if(Y!==0&&!this.#q)this.#$();if(this.#q){if(!W)this.#k(Z,Y,J);if(G)this.#z(G,Z)}if(!C&&this.#H&&this.#N){let U=this.#N,$;while($=U?.shift())this.#J?.(...$)}return this}pop(){try{while(this.#X){let A=this.#F[this.#I];if(this.#x(!0),this.#K(A)){if(A.__staleWhileFetching)return A.__staleWhileFetching}else if(A!==void 0)return A}}finally{if(this.#H&&this.#N){let A=this.#N,Q;while(Q=A?.shift())this.#J?.(...Q)}}}#x(A){let Q=this.#I,B=this.#U[Q],Y=this.#F[Q];if(this.#w&&this.#K(Y))Y.__abortController.abort(Error("evicted"));else if(this.#L||this.#H){if(this.#L)this.#B?.(Y,B,"evict");if(this.#H)this.#N?.push([Y,B,"evict"])}if(this.#y(Q),A)this.#U[Q]=void 0,this.#F[Q]=void 0,this.#O.push(Q);if(this.#X===1)this.#I=this.#D=0,this.#O.length=0;else this.#I=this.#E[Q];return this.#Z.delete(B),this.#X--,Q}has(A,Q={}){let{updateAgeOnHas:B=this.updateAgeOnHas,status:Y}=Q,J=this.#Z.get(A);if(J!==void 0){let C=this.#F[J];if(this.#K(C)&&C.__staleWhileFetching===void 0)return!1;if(!this.#R(J)){if(B)this.#v(J);if(Y)Y.has="hit",this.#z(Y,J);return!0}else if(Y)Y.has="stale",this.#z(Y,J)}else if(Y)Y.has="miss";return!1}peek(A,Q={}){let{allowStale:B=this.allowStale}=Q,Y=this.#Z.get(A);if(Y===void 0||!B&&this.#R(Y))return;let J=this.#F[Y];return this.#K(J)?J.__staleWhileFetching:J}#g(A,Q,B,Y){let J=Q===void 0?void 0:this.#F[Q];if(this.#K(J))return J;let C=new w2,{signal:X}=B;X?.addEventListener("abort",()=>C.abort(X.reason),{signal:C.signal});let G={signal:C.signal,options:B,context:Y},W=(K,I=!1)=>{let{aborted:V}=C.signal,H=B.ignoreFetchAbort&&K!==void 0;if(B.status)if(V&&!I){if(B.status.fetchAborted=!0,B.status.fetchError=C.signal.reason,H)B.status.fetchAbortIgnored=!0}else B.status.fetchResolved=!0;if(V&&!H&&!I)return Z(C.signal.reason);let D=$;if(this.#F[Q]===$)if(K===void 0)if(D.__staleWhileFetching)this.#F[Q]=D.__staleWhileFetching;else this.#_(A,"fetch");else{if(B.status)B.status.fetchUpdated=!0;this.set(A,K,G.options)}return K},F=(K)=>{if(B.status)B.status.fetchRejected=!0,B.status.fetchError=K;return Z(K)},Z=(K)=>{let{aborted:I}=C.signal,V=I&&B.allowStaleOnFetchAbort,H=V||B.allowStaleOnFetchRejection,D=H||B.noDeleteOnFetchRejection,L=$;if(this.#F[Q]===$){if(!D||L.__staleWhileFetching===void 0)this.#_(A,"fetch");else if(!V)this.#F[Q]=L.__staleWhileFetching}if(H){if(B.status&&L.__staleWhileFetching!==void 0)B.status.returnedStale=!0;return L.__staleWhileFetching}else if(L.__returned===L)throw K},U=(K,I)=>{let V=this.#C?.(A,J,G);if(V&&V instanceof Promise)V.then((H)=>K(H===void 0?void 0:H),I);C.signal.addEventListener("abort",()=>{if(!B.ignoreFetchAbort||B.allowStaleOnFetchAbort){if(K(void 0),B.allowStaleOnFetchAbort)K=(H)=>W(H,!0)}})};if(B.status)B.status.fetchDispatched=!0;let $=new Promise(U).then(W,F),E=Object.assign($,{__abortController:C,__staleWhileFetching:J,__returned:void 0});if(Q===void 0)this.set(A,E,{...G.options,status:void 0}),Q=this.#Z.get(A);else this.#F[Q]=E;return E}#K(A){if(!this.#w)return!1;let Q=A;return!!Q&&Q instanceof Promise&&Q.hasOwnProperty("__staleWhileFetching")&&Q.__abortController instanceof w2}async fetch(A,Q={}){let{allowStale:B=this.allowStale,updateAgeOnGet:Y=this.updateAgeOnGet,noDeleteOnStaleGet:J=this.noDeleteOnStaleGet,ttl:C=this.ttl,noDisposeOnSet:X=this.noDisposeOnSet,size:G=0,sizeCalculation:W=this.sizeCalculation,noUpdateTTL:F=this.noUpdateTTL,noDeleteOnFetchRejection:Z=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:U=this.allowStaleOnFetchRejection,ignoreFetchAbort:$=this.ignoreFetchAbort,allowStaleOnFetchAbort:E=this.allowStaleOnFetchAbort,context:K,forceRefresh:I=!1,status:V,signal:H}=Q;if(!this.#w){if(V)V.fetch="get";return this.get(A,{allowStale:B,updateAgeOnGet:Y,noDeleteOnStaleGet:J,status:V})}let D={allowStale:B,updateAgeOnGet:Y,noDeleteOnStaleGet:J,ttl:C,noDisposeOnSet:X,size:G,sizeCalculation:W,noUpdateTTL:F,noDeleteOnFetchRejection:Z,allowStaleOnFetchRejection:U,allowStaleOnFetchAbort:E,ignoreFetchAbort:$,status:V,signal:H},L=this.#Z.get(A);if(L===void 0){if(V)V.fetch="miss";let z=this.#g(A,L,D,K);return z.__returned=z}else{let z=this.#F[L];if(this.#K(z)){let P=B&&z.__staleWhileFetching!==void 0;if(V){if(V.fetch="inflight",P)V.returnedStale=!0}return P?z.__staleWhileFetching:z.__returned=z}let M=this.#R(L);if(!I&&!M){if(V)V.fetch="hit";if(this.#f(L),Y)this.#v(L);if(V)this.#z(V,L);return z}let N=this.#g(A,L,D,K),w=N.__staleWhileFetching!==void 0&&B;if(V){if(V.fetch=M?"stale":"refresh",w&&M)V.returnedStale=!0}return w?N.__staleWhileFetching:N.__returned=N}}async forceFetch(A,Q={}){let B=await this.fetch(A,Q);if(B===void 0)throw Error("fetch() returned undefined");return B}memo(A,Q={}){let B=this.#W;if(!B)throw Error("no memoMethod provided to constructor");let{context:Y,forceRefresh:J,...C}=Q,X=this.get(A,C);if(!J&&X!==void 0)return X;let G=B(A,X,{options:C,context:Y});return this.set(A,G,C),G}get(A,Q={}){let{allowStale:B=this.allowStale,updateAgeOnGet:Y=this.updateAgeOnGet,noDeleteOnStaleGet:J=this.noDeleteOnStaleGet,status:C}=Q,X=this.#Z.get(A);if(X!==void 0){let G=this.#F[X],W=this.#K(G);if(C)this.#z(C,X);if(this.#R(X)){if(C)C.get="stale";if(!W){if(!J)this.#_(A,"expire");if(C&&B)C.returnedStale=!0;return B?G:void 0}else{if(C&&B&&G.__staleWhileFetching!==void 0)C.returnedStale=!0;return B?G.__staleWhileFetching:void 0}}else{if(C)C.get="hit";if(W)return G.__staleWhileFetching;if(this.#f(X),Y)this.#v(X);return G}}else if(C)C.get="miss"}#c(A,Q){this.#V[Q]=A,this.#E[A]=Q}#f(A){if(A!==this.#D){if(A===this.#I)this.#I=this.#E[A];else this.#c(this.#V[A],this.#E[A]);this.#c(this.#D,A),this.#D=A}}delete(A){return this.#_(A,"delete")}#_(A,Q){let B=!1;if(this.#X!==0){let Y=this.#Z.get(A);if(Y!==void 0)if(B=!0,this.#X===1)this.#b(Q);else{this.#y(Y);let J=this.#F[Y];if(this.#K(J))J.__abortController.abort(Error("deleted"));else if(this.#L||this.#H){if(this.#L)this.#B?.(J,A,Q);if(this.#H)this.#N?.push([J,A,Q])}if(this.#Z.delete(A),this.#U[Y]=void 0,this.#F[Y]=void 0,Y===this.#D)this.#D=this.#V[Y];else if(Y===this.#I)this.#I=this.#E[Y];else{let C=this.#V[Y];this.#E[C]=this.#E[Y];let X=this.#E[Y];this.#V[X]=this.#V[Y]}this.#X--,this.#O.push(Y)}}if(this.#H&&this.#N?.length){let Y=this.#N,J;while(J=Y?.shift())this.#J?.(...J)}return B}clear(){return this.#b("delete")}#b(A){for(let Q of this.#T({allowStale:!0})){let B=this.#F[Q];if(this.#K(B))B.__abortController.abort(Error("deleted"));else{let Y=this.#U[Q];if(this.#L)this.#B?.(B,Y,A);if(this.#H)this.#N?.push([B,Y,A])}}if(this.#Z.clear(),this.#F.fill(void 0),this.#U.fill(void 0),this.#q&&this.#M)this.#q.fill(0),this.#M.fill(0);if(this.#P)this.#P.fill(0);if(this.#I=0,this.#D=0,this.#O.length=0,this.#G=0,this.#X=0,this.#H&&this.#N){let Q=this.#N,B;while(B=Q?.shift())this.#J?.(...B)}}}import{posix as emQ,win32 as Cg}from"node:path";import{fileURLToPath as AuQ}from"node:url";import{lstatSync as QuQ,readdir as BuQ,readdirSync as YuQ,readlinkSync as JuQ,realpathSync as CuQ}from"fs";import*as XuQ from"node:fs";import{lstat as WuQ,readdir as FuQ,readlink as ZuQ,realpath as $uQ}from"node:fs/promises";import{EventEmitter as Qg}from"node:events";import WJA from"node:stream";import{StringDecoder as cmQ}from"node:string_decoder";var JJA=typeof process==="object"&&process?process:{stdout:null,stderr:null},lmQ=(A)=>!!A&&typeof A==="object"&&(A instanceof gF||A instanceof WJA||pmQ(A)||imQ(A)),pmQ=(A)=>!!A&&typeof A==="object"&&A instanceof Qg&&typeof A.pipe==="function"&&A.pipe!==WJA.Writable.prototype.pipe,imQ=(A)=>!!A&&typeof A==="object"&&A instanceof Qg&&typeof A.write==="function"&&typeof A.end==="function",A6=Symbol("EOF"),Q6=Symbol("maybeEmitEnd"),Q7=Symbol("emittedEnd"),j2=Symbol("emittingEnd"),OI=Symbol("emittedError"),O2=Symbol("closed"),CJA=Symbol("read"),P2=Symbol("flush"),XJA=Symbol("flushChunk"),wC=Symbol("encoding"),m4=Symbol("decoder"),dY=Symbol("flowing"),PI=Symbol("paused"),u4=Symbol("resume"),cY=Symbol("buffer"),nJ=Symbol("pipes"),lY=Symbol("bufferLength"),ay=Symbol("bufferPush"),T2=Symbol("bufferShift"),NJ=Symbol("objectMode"),XY=Symbol("destroyed"),oy=Symbol("error"),ty=Symbol("emitData"),GJA=Symbol("emitEnd"),ey=Symbol("emitEnd2"),k1=Symbol("async"),Ag=Symbol("abort"),S2=Symbol("aborted"),TI=Symbol("signal"),yF=Symbol("dataListeners"),W8=Symbol("discarded"),SI=(A)=>Promise.resolve().then(A),nmQ=(A)=>A(),smQ=(A)=>A==="end"||A==="finish"||A==="prefinish",rmQ=(A)=>A instanceof ArrayBuffer||!!A&&typeof A==="object"&&A.constructor&&A.constructor.name==="ArrayBuffer"&&A.byteLength>=0,amQ=(A)=>!Buffer.isBuffer(A)&&ArrayBuffer.isView(A);class Bg{src;dest;opts;ondrain;constructor(A,Q,B){this.src=A,this.dest=Q,this.opts=B,this.ondrain=()=>A[u4](),this.dest.on("drain",this.ondrain)}unpipe(){this.dest.removeListener("drain",this.ondrain)}proxyErrors(A){}end(){if(this.unpipe(),this.opts.end)this.dest.end()}}class FJA extends Bg{unpipe(){this.src.removeListener("error",this.proxyErrors),super.unpipe()}constructor(A,Q,B){super(A,Q,B);this.proxyErrors=(Y)=>Q.emit("error",Y),A.on("error",this.proxyErrors)}}var omQ=(A)=>!!A.objectMode,tmQ=(A)=>!A.objectMode&&!!A.encoding&&A.encoding!=="buffer";class gF extends Qg{[dY]=!1;[PI]=!1;[nJ]=[];[cY]=[];[NJ];[wC];[k1];[m4];[A6]=!1;[Q7]=!1;[j2]=!1;[O2]=!1;[OI]=null;[lY]=0;[XY]=!1;[TI];[S2]=!1;[yF]=0;[W8]=!1;writable=!0;readable=!0;constructor(...A){let Q=A[0]||{};super();if(Q.objectMode&&typeof Q.encoding==="string")throw TypeError("Encoding and objectMode may not be used together");if(omQ(Q))this[NJ]=!0,this[wC]=null;else if(tmQ(Q))this[wC]=Q.encoding,this[NJ]=!1;else this[NJ]=!1,this[wC]=null;if(this[k1]=!!Q.async,this[m4]=this[wC]?new cmQ(this[wC]):null,Q&&Q.debugExposeBuffer===!0)Object.defineProperty(this,"buffer",{get:()=>this[cY]});if(Q&&Q.debugExposePipes===!0)Object.defineProperty(this,"pipes",{get:()=>this[nJ]});let{signal:B}=Q;if(B)if(this[TI]=B,B.aborted)this[Ag]();else B.addEventListener("abort",()=>this[Ag]())}get bufferLength(){return this[lY]}get encoding(){return this[wC]}set encoding(A){throw Error("Encoding must be set at instantiation time")}setEncoding(A){throw Error("Encoding must be set at instantiation time")}get objectMode(){return this[NJ]}set objectMode(A){throw Error("objectMode must be set at instantiation time")}get["async"](){return this[k1]}set["async"](A){this[k1]=this[k1]||!!A}[Ag](){this[S2]=!0,this.emit("abort",this[TI]?.reason),this.destroy(this[TI]?.reason)}get aborted(){return this[S2]}set aborted(A){}write(A,Q,B){if(this[S2])return!1;if(this[A6])throw Error("write after end");if(this[XY])return this.emit("error",Object.assign(Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),!0;if(typeof Q==="function")B=Q,Q="utf8";if(!Q)Q="utf8";let Y=this[k1]?SI:nmQ;if(!this[NJ]&&!Buffer.isBuffer(A)){if(amQ(A))A=Buffer.from(A.buffer,A.byteOffset,A.byteLength);else if(rmQ(A))A=Buffer.from(A);else if(typeof A!=="string")throw Error("Non-contiguous data written to non-objectMode stream")}if(this[NJ]){if(this[dY]&&this[lY]!==0)this[P2](!0);if(this[dY])this.emit("data",A);else this[ay](A);if(this[lY]!==0)this.emit("readable");if(B)Y(B);return this[dY]}if(!A.length){if(this[lY]!==0)this.emit("readable");if(B)Y(B);return this[dY]}if(typeof A==="string"&&!(Q===this[wC]&&!this[m4]?.lastNeed))A=Buffer.from(A,Q);if(Buffer.isBuffer(A)&&this[wC])A=this[m4].write(A);if(this[dY]&&this[lY]!==0)this[P2](!0);if(this[dY])this.emit("data",A);else this[ay](A);if(this[lY]!==0)this.emit("readable");if(B)Y(B);return this[dY]}read(A){if(this[XY])return null;if(this[W8]=!1,this[lY]===0||A===0||A&&A>this[lY])return this[Q6](),null;if(this[NJ])A=null;if(this[cY].length>1&&!this[NJ])this[cY]=[this[wC]?this[cY].join(""):Buffer.concat(this[cY],this[lY])];let Q=this[CJA](A||null,this[cY][0]);return this[Q6](),Q}[CJA](A,Q){if(this[NJ])this[T2]();else{let B=Q;if(A===B.length||A===null)this[T2]();else if(typeof B==="string")this[cY][0]=B.slice(A),Q=B.slice(0,A),this[lY]-=A;else this[cY][0]=B.subarray(A),Q=B.subarray(0,A),this[lY]-=A}if(this.emit("data",Q),!this[cY].length&&!this[A6])this.emit("drain");return Q}end(A,Q,B){if(typeof A==="function")B=A,A=void 0;if(typeof Q==="function")B=Q,Q="utf8";if(A!==void 0)this.write(A,Q);if(B)this.once("end",B);if(this[A6]=!0,this.writable=!1,this[dY]||!this[PI])this[Q6]();return this}[u4](){if(this[XY])return;if(!this[yF]&&!this[nJ].length)this[W8]=!0;if(this[PI]=!1,this[dY]=!0,this.emit("resume"),this[cY].length)this[P2]();else if(this[A6])this[Q6]();else this.emit("drain")}resume(){return this[u4]()}pause(){this[dY]=!1,this[PI]=!0,this[W8]=!1}get destroyed(){return this[XY]}get flowing(){return this[dY]}get paused(){return this[PI]}[ay](A){if(this[NJ])this[lY]+=1;else this[lY]+=A.length;this[cY].push(A)}[T2](){if(this[NJ])this[lY]-=1;else this[lY]-=this[cY][0].length;return this[cY].shift()}[P2](A=!1){do;while(this[XJA](this[T2]())&&this[cY].length);if(!A&&!this[cY].length&&!this[A6])this.emit("drain")}[XJA](A){return this.emit("data",A),this[dY]}pipe(A,Q){if(this[XY])return A;this[W8]=!1;let B=this[Q7];if(Q=Q||{},A===JJA.stdout||A===JJA.stderr)Q.end=!1;else Q.end=Q.end!==!1;if(Q.proxyErrors=!!Q.proxyErrors,B){if(Q.end)A.end()}else if(this[nJ].push(!Q.proxyErrors?new Bg(this,A,Q):new FJA(this,A,Q)),this[k1])SI(()=>this[u4]());else this[u4]();return A}unpipe(A){let Q=this[nJ].find((B)=>B.dest===A);if(Q){if(this[nJ].length===1){if(this[dY]&&this[yF]===0)this[dY]=!1;this[nJ]=[]}else this[nJ].splice(this[nJ].indexOf(Q),1);Q.unpipe()}}addListener(A,Q){return this.on(A,Q)}on(A,Q){let B=super.on(A,Q);if(A==="data"){if(this[W8]=!1,this[yF]++,!this[nJ].length&&!this[dY])this[u4]()}else if(A==="readable"&&this[lY]!==0)super.emit("readable");else if(smQ(A)&&this[Q7])super.emit(A),this.removeAllListeners(A);else if(A==="error"&&this[OI]){let Y=Q;if(this[k1])SI(()=>Y.call(this,this[OI]));else Y.call(this,this[OI])}return B}removeListener(A,Q){return this.off(A,Q)}off(A,Q){let B=super.off(A,Q);if(A==="data"){if(this[yF]=this.listeners("data").length,this[yF]===0&&!this[W8]&&!this[nJ].length)this[dY]=!1}return B}removeAllListeners(A){let Q=super.removeAllListeners(A);if(A==="data"||A===void 0){if(this[yF]=0,!this[W8]&&!this[nJ].length)this[dY]=!1}return Q}get emittedEnd(){return this[Q7]}[Q6](){if(!this[j2]&&!this[Q7]&&!this[XY]&&this[cY].length===0&&this[A6]){if(this[j2]=!0,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[O2])this.emit("close");this[j2]=!1}}emit(A,...Q){let B=Q[0];if(A!=="error"&&A!=="close"&&A!==XY&&this[XY])return!1;else if(A==="data")return!this[NJ]&&!B?!1:this[k1]?(SI(()=>this[ty](B)),!0):this[ty](B);else if(A==="end")return this[GJA]();else if(A==="close"){if(this[O2]=!0,!this[Q7]&&!this[XY])return!1;let J=super.emit("close");return this.removeAllListeners("close"),J}else if(A==="error"){this[OI]=B,super.emit(oy,B);let J=!this[TI]||this.listeners("error").length?super.emit("error",B):!1;return this[Q6](),J}else if(A==="resume"){let J=super.emit("resume");return this[Q6](),J}else if(A==="finish"||A==="prefinish"){let J=super.emit(A);return this.removeAllListeners(A),J}let Y=super.emit(A,...Q);return this[Q6](),Y}[ty](A){for(let B of this[nJ])if(B.dest.write(A)===!1)this.pause();let Q=this[W8]?!1:super.emit("data",A);return this[Q6](),Q}[GJA](){if(this[Q7])return!1;return this[Q7]=!0,this.readable=!1,this[k1]?(SI(()=>this[ey]()),!0):this[ey]()}[ey](){if(this[m4]){let Q=this[m4].end();if(Q){for(let B of this[nJ])B.dest.write(Q);if(!this[W8])super.emit("data",Q)}}for(let Q of this[nJ])Q.end();let A=super.emit("end");return this.removeAllListeners("end"),A}async collect(){let A=Object.assign([],{dataLength:0});if(!this[NJ])A.dataLength=0;let Q=this.promise();return this.on("data",(B)=>{if(A.push(B),!this[NJ])A.dataLength+=B.length}),await Q,A}async concat(){if(this[NJ])throw Error("cannot concat in objectMode");let A=await this.collect();return this[wC]?A.join(""):Buffer.concat(A,A.dataLength)}async promise(){return new Promise((A,Q)=>{this.on(XY,()=>Q(Error("stream destroyed"))),this.on("error",(B)=>Q(B)),this.on("end",()=>A())})}[Symbol.asyncIterator](){this[W8]=!1;let A=!1,Q=async()=>{return this.pause(),A=!0,{value:void 0,done:!0}};return{next:()=>{if(A)return Q();let Y=this.read();if(Y!==null)return Promise.resolve({done:!1,value:Y});if(this[A6])return Q();let J,C,X=(Z)=>{this.off("data",G),this.off("end",W),this.off(XY,F),Q(),C(Z)},G=(Z)=>{this.off("error",X),this.off("end",W),this.off(XY,F),this.pause(),J({value:Z,done:!!this[A6]})},W=()=>{this.off("error",X),this.off("data",G),this.off(XY,F),Q(),J({done:!0,value:void 0})},F=()=>X(Error("stream destroyed"));return new Promise((Z,U)=>{C=U,J=Z,this.once(XY,F),this.once("error",X),this.once("end",W),this.once("data",G)})},throw:Q,return:Q,[Symbol.asyncIterator](){return this}}}[Symbol.iterator](){this[W8]=!1;let A=!1,Q=()=>{return this.pause(),this.off(oy,Q),this.off(XY,Q),this.off("end",Q),A=!0,{done:!0,value:void 0}},B=()=>{if(A)return Q();let Y=this.read();return Y===null?Q():{done:!1,value:Y}};return this.once("end",Q),this.once(oy,Q),this.once(XY,Q),{next:B,throw:Q,return:Q,[Symbol.iterator](){return this}}}destroy(A){if(this[XY]){if(A)this.emit("error",A);else this.emit(XY);return this}this[XY]=!0,this[W8]=!0,this[cY].length=0,this[lY]=0;let Q=this;if(typeof Q.close==="function"&&!this[O2])Q.close();if(A)this.emit("error",A);else this.emit(XY);return this}static get isStream(){return lmQ}}var GuQ=CuQ.native,_I={lstatSync:QuQ,readdir:BuQ,readdirSync:YuQ,readlinkSync:JuQ,realpathSync:GuQ,promises:{lstat:WuQ,readdir:FuQ,readlink:ZuQ,realpath:$uQ}},KJA=(A)=>!A||A===_I||A===XuQ?_I:{..._I,...A,promises:{..._I.promises,...A.promises||{}}},VJA=/^\\\\\?\\([a-z]:)\\?$/i,UuQ=(A)=>A.replace(/\//g,"\\").replace(VJA,"$1\\"),EuQ=/[\\\/]/,X5=0,IJA=1,HJA=2,_1=4,DJA=6,NJA=8,hF=10,LJA=12,C5=15,kI=~C5,Yg=16,ZJA=32,vI=64,jC=128,k2=256,v2=512,$JA=vI|jC|v2,KuQ=1023,Jg=(A)=>A.isFile()?NJA:A.isDirectory()?_1:A.isSymbolicLink()?hF:A.isCharacterDevice()?HJA:A.isBlockDevice()?DJA:A.isSocket()?LJA:A.isFIFO()?IJA:X5,UJA=new Map,yI=(A)=>{let Q=UJA.get(A);if(Q)return Q;let B=A.normalize("NFKD");return UJA.set(A,B),B},EJA=new Map,_2=(A)=>{let Q=EJA.get(A);if(Q)return Q;let B=yI(A.toLowerCase());return EJA.set(A,B),B};class Xg extends jI{constructor(){super({max:256})}}class qJA extends jI{constructor(A=16384){super({maxSize:A,sizeCalculation:(Q)=>Q.length+1})}}var MJA=Symbol("PathScurry setAsCwd");class sJ{name;root;roots;parent;nocase;isCWD=!1;#A;#Q;get dev(){return this.#Q}#B;get mode(){return this.#B}#Y;get nlink(){return this.#Y}#J;get uid(){return this.#J}#C;get gid(){return this.#C}#W;get rdev(){return this.#W}#X;get blksize(){return this.#X}#G;get ino(){return this.#G}#Z;get size(){return this.#Z}#U;get blocks(){return this.#U}#F;get atimeMs(){return this.#F}#E;get mtimeMs(){return this.#E}#V;get ctimeMs(){return this.#V}#I;get birthtimeMs(){return this.#I}#D;get atime(){return this.#D}#O;get mtime(){return this.#O}#N;get ctime(){return this.#N}#P;get birthtime(){return this.#P}#M;#q;#L;#w;#H;#S;#$;#v;#z;#k;get parentPath(){return(this.parent||this).fullpath()}get path(){return this.parentPath}constructor(A,Q=X5,B,Y,J,C,X){if(this.name=A,this.#M=J?_2(A):yI(A),this.#$=Q&KuQ,this.nocase=J,this.roots=Y,this.root=B||this,this.#v=C,this.#L=X.fullpath,this.#H=X.relative,this.#S=X.relativePosix,this.parent=X.parent,this.parent)this.#A=this.parent.#A;else this.#A=KJA(X.fs)}depth(){if(this.#q!==void 0)return this.#q;if(!this.parent)return this.#q=0;return this.#q=this.parent.depth()+1}childrenCache(){return this.#v}resolve(A){if(!A)return this;let Q=this.getRootString(A),Y=A.substring(Q.length).split(this.splitSep);return Q?this.getRoot(Q).#R(Y):this.#R(Y)}#R(A){let Q=this;for(let B of A)Q=Q.child(B);return Q}children(){let A=this.#v.get(this);if(A)return A;let Q=Object.assign([],{provisional:0});return this.#v.set(this,Q),this.#$&=~Yg,Q}child(A,Q){if(A===""||A===".")return this;if(A==="..")return this.parent||this;let B=this.children(),Y=this.nocase?_2(A):yI(A);for(let G of B)if(G.#M===Y)return G;let J=this.parent?this.sep:"",C=this.#L?this.#L+J+A:void 0,X=this.newChild(A,X5,{...Q,parent:this,fullpath:C});if(!this.canReaddir())X.#$|=jC;return B.push(X),X}relative(){if(this.isCWD)return"";if(this.#H!==void 0)return this.#H;let A=this.name,Q=this.parent;if(!Q)return this.#H=this.name;let B=Q.relative();return B+(!B||!Q.parent?"":this.sep)+A}relativePosix(){if(this.sep==="/")return this.relative();if(this.isCWD)return"";if(this.#S!==void 0)return this.#S;let A=this.name,Q=this.parent;if(!Q)return this.#S=this.fullpathPosix();let B=Q.relativePosix();return B+(!B||!Q.parent?"":"/")+A}fullpath(){if(this.#L!==void 0)return this.#L;let A=this.name,Q=this.parent;if(!Q)return this.#L=this.name;let Y=Q.fullpath()+(!Q.parent?"":this.sep)+A;return this.#L=Y}fullpathPosix(){if(this.#w!==void 0)return this.#w;if(this.sep==="/")return this.#w=this.fullpath();if(!this.parent){let Y=this.fullpath().replace(/\\/g,"/");if(/^[a-z]:\//i.test(Y))return this.#w=`//?/${Y}`;else return this.#w=Y}let A=this.parent,Q=A.fullpathPosix(),B=Q+(!Q||!A.parent?"":"/")+this.name;return this.#w=B}isUnknown(){return(this.#$&C5)===X5}isType(A){return this[`is${A}`]()}getType(){return this.isUnknown()?"Unknown":this.isDirectory()?"Directory":this.isFile()?"File":this.isSymbolicLink()?"SymbolicLink":this.isFIFO()?"FIFO":this.isCharacterDevice()?"CharacterDevice":this.isBlockDevice()?"BlockDevice":this.isSocket()?"Socket":"Unknown"}isFile(){return(this.#$&C5)===NJA}isDirectory(){return(this.#$&C5)===_1}isCharacterDevice(){return(this.#$&C5)===HJA}isBlockDevice(){return(this.#$&C5)===DJA}isFIFO(){return(this.#$&C5)===IJA}isSocket(){return(this.#$&C5)===LJA}isSymbolicLink(){return(this.#$&hF)===hF}lstatCached(){return this.#$&ZJA?this:void 0}readlinkCached(){return this.#z}realpathCached(){return this.#k}readdirCached(){let A=this.children();return A.slice(0,A.provisional)}canReadlink(){if(this.#z)return!0;if(!this.parent)return!1;let A=this.#$&C5;return!(A!==X5&&A!==hF||this.#$&k2||this.#$&jC)}calledReaddir(){return!!(this.#$&Yg)}isENOENT(){return!!(this.#$&jC)}isNamed(A){return!this.nocase?this.#M===yI(A):this.#M===_2(A)}async readlink(){let A=this.#z;if(A)return A;if(!this.canReadlink())return;if(!this.parent)return;try{let Q=await this.#A.promises.readlink(this.fullpath()),B=(await this.parent.realpath())?.resolve(Q);if(B)return this.#z=B}catch(Q){this.#x(Q.code);return}}readlinkSync(){let A=this.#z;if(A)return A;if(!this.canReadlink())return;if(!this.parent)return;try{let Q=this.#A.readlinkSync(this.fullpath()),B=this.parent.realpathSync()?.resolve(Q);if(B)return this.#z=B}catch(Q){this.#x(Q.code);return}}#m(A){this.#$|=Yg;for(let Q=A.provisional;QB(null,A))}readdirCB(A,Q=!1){if(!this.canReaddir()){if(Q)A(null,[]);else queueMicrotask(()=>A(null,[]));return}let B=this.children();if(this.calledReaddir()){let J=B.slice(0,B.provisional);if(Q)A(null,J);else queueMicrotask(()=>A(null,J));return}if(this.#b.push(A),this.#p)return;this.#p=!0;let Y=this.fullpath();this.#A.readdir(Y,{withFileTypes:!0},(J,C)=>{if(J)this.#T(J.code),B.provisional=0;else{for(let X of C)this.#g(X,B);this.#m(B)}this.#i(B.slice(0,B.provisional));return})}#l;async readdir(){if(!this.canReaddir())return[];let A=this.children();if(this.calledReaddir())return A.slice(0,A.provisional);let Q=this.fullpath();if(this.#l)await this.#l;else{let B=()=>{};this.#l=new Promise((Y)=>B=Y);try{for(let Y of await this.#A.promises.readdir(Q,{withFileTypes:!0}))this.#g(Y,A);this.#m(A)}catch(Y){this.#T(Y.code),A.provisional=0}this.#l=void 0,B()}return A.slice(0,A.provisional)}readdirSync(){if(!this.canReaddir())return[];let A=this.children();if(this.calledReaddir())return A.slice(0,A.provisional);let Q=this.fullpath();try{for(let B of this.#A.readdirSync(Q,{withFileTypes:!0}))this.#g(B,A);this.#m(A)}catch(B){this.#T(B.code),A.provisional=0}return A.slice(0,A.provisional)}canReaddir(){if(this.#$&$JA)return!1;let A=C5&this.#$;if(!(A===X5||A===_1||A===hF))return!1;return!0}shouldWalk(A,Q){return(this.#$&_1)===_1&&!(this.#$&$JA)&&!A.has(this)&&(!Q||Q(this))}async realpath(){if(this.#k)return this.#k;if((v2|k2|jC)&this.#$)return;try{let A=await this.#A.promises.realpath(this.fullpath());return this.#k=this.resolve(A)}catch(A){this.#u()}}realpathSync(){if(this.#k)return this.#k;if((v2|k2|jC)&this.#$)return;try{let A=this.#A.realpathSync(this.fullpath());return this.#k=this.resolve(A)}catch(A){this.#u()}}[MJA](A){if(A===this)return;A.isCWD=!1,this.isCWD=!0;let Q=new Set([]),B=[],Y=this;while(Y&&Y.parent)Q.add(Y),Y.#H=B.join(this.sep),Y.#S=B.join("/"),Y=Y.parent,B.push("..");Y=A;while(Y&&Y.parent&&!Q.has(Y))Y.#H=void 0,Y.#S=void 0,Y=Y.parent}}class y2 extends sJ{sep="\\";splitSep=EuQ;constructor(A,Q=X5,B,Y,J,C,X){super(A,Q,B,Y,J,C,X)}newChild(A,Q=X5,B={}){return new y2(A,Q,this.root,this.roots,this.nocase,this.childrenCache(),B)}getRootString(A){return Cg.parse(A).root}getRoot(A){if(A=UuQ(A.toUpperCase()),A===this.root.name)return this.root;for(let[Q,B]of Object.entries(this.roots))if(this.sameRoot(A,Q))return this.roots[A]=B;return this.roots[A]=new gI(A,this).root}sameRoot(A,Q=this.root.name){return A=A.toUpperCase().replace(/\//g,"\\").replace(VJA,"$1\\"),A===Q}}class g2 extends sJ{splitSep="/";sep="/";constructor(A,Q=X5,B,Y,J,C,X){super(A,Q,B,Y,J,C,X)}getRootString(A){return A.startsWith("/")?"/":""}getRoot(A){return this.root}newChild(A,Q=X5,B={}){return new g2(A,Q,this.root,this.roots,this.nocase,this.childrenCache(),B)}}class Gg{root;rootPath;roots;cwd;#A;#Q;#B;nocase;#Y;constructor(A=process.cwd(),Q,B,{nocase:Y,childrenCacheSize:J=16384,fs:C=_I}={}){if(this.#Y=KJA(C),A instanceof URL||A.startsWith("file://"))A=AuQ(A);let X=Q.resolve(A);this.roots=Object.create(null),this.rootPath=this.parseRootPath(X),this.#A=new Xg,this.#Q=new Xg,this.#B=new qJA(J);let G=X.substring(this.rootPath.length).split(B);if(G.length===1&&!G[0])G.pop();if(Y===void 0)throw TypeError("must provide nocase setting to PathScurryBase ctor");this.nocase=Y,this.root=this.newRoot(this.#Y),this.roots[this.rootPath]=this.root;let W=this.root,F=G.length-1,Z=Q.sep,U=this.rootPath,$=!1;for(let E of G){let K=F--;W=W.child(E,{relative:Array(K).fill("..").join(Z),relativePosix:Array(K).fill("..").join("/"),fullpath:U+=($?"":Z)+E}),$=!0}this.cwd=W}depth(A=this.cwd){if(typeof A==="string")A=this.cwd.resolve(A);return A.depth()}childrenCache(){return this.#B}resolve(...A){let Q="";for(let J=A.length-1;J>=0;J--){let C=A[J];if(!C||C===".")continue;if(Q=Q?`${C}/${Q}`:C,this.isAbsolute(C))break}let B=this.#A.get(Q);if(B!==void 0)return B;let Y=this.cwd.resolve(Q).fullpath();return this.#A.set(Q,Y),Y}resolvePosix(...A){let Q="";for(let J=A.length-1;J>=0;J--){let C=A[J];if(!C||C===".")continue;if(Q=Q?`${C}/${Q}`:C,this.isAbsolute(C))break}let B=this.#Q.get(Q);if(B!==void 0)return B;let Y=this.cwd.resolve(Q).fullpathPosix();return this.#Q.set(Q,Y),Y}relative(A=this.cwd){if(typeof A==="string")A=this.cwd.resolve(A);return A.relative()}relativePosix(A=this.cwd){if(typeof A==="string")A=this.cwd.resolve(A);return A.relativePosix()}basename(A=this.cwd){if(typeof A==="string")A=this.cwd.resolve(A);return A.name}dirname(A=this.cwd){if(typeof A==="string")A=this.cwd.resolve(A);return(A.parent||A).fullpath()}async readdir(A=this.cwd,Q={withFileTypes:!0}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof sJ))Q=A,A=this.cwd;let{withFileTypes:B}=Q;if(!A.canReaddir())return[];else{let Y=await A.readdir();return B?Y:Y.map((J)=>J.name)}}readdirSync(A=this.cwd,Q={withFileTypes:!0}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof sJ))Q=A,A=this.cwd;let{withFileTypes:B=!0}=Q;if(!A.canReaddir())return[];else if(B)return A.readdirSync();else return A.readdirSync().map((Y)=>Y.name)}async lstat(A=this.cwd){if(typeof A==="string")A=this.cwd.resolve(A);return A.lstat()}lstatSync(A=this.cwd){if(typeof A==="string")A=this.cwd.resolve(A);return A.lstatSync()}async readlink(A=this.cwd,{withFileTypes:Q}={withFileTypes:!1}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof sJ))Q=A.withFileTypes,A=this.cwd;let B=await A.readlink();return Q?B:B?.fullpath()}readlinkSync(A=this.cwd,{withFileTypes:Q}={withFileTypes:!1}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof sJ))Q=A.withFileTypes,A=this.cwd;let B=A.readlinkSync();return Q?B:B?.fullpath()}async realpath(A=this.cwd,{withFileTypes:Q}={withFileTypes:!1}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof sJ))Q=A.withFileTypes,A=this.cwd;let B=await A.realpath();return Q?B:B?.fullpath()}realpathSync(A=this.cwd,{withFileTypes:Q}={withFileTypes:!1}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof sJ))Q=A.withFileTypes,A=this.cwd;let B=A.realpathSync();return Q?B:B?.fullpath()}async walk(A=this.cwd,Q={}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof sJ))Q=A,A=this.cwd;let{withFileTypes:B=!0,follow:Y=!1,filter:J,walkFilter:C}=Q,X=[];if(!J||J(A))X.push(B?A:A.fullpath());let G=new Set,W=(Z,U)=>{G.add(Z),Z.readdirCB(($,E)=>{if($)return U($);let K=E.length;if(!K)return U();let I=()=>{if(--K===0)U()};for(let V of E){if(!J||J(V))X.push(B?V:V.fullpath());if(Y&&V.isSymbolicLink())V.realpath().then((H)=>H?.isUnknown()?H.lstat():H).then((H)=>H?.shouldWalk(G,C)?W(H,I):I());else if(V.shouldWalk(G,C))W(V,I);else I()}},!0)},F=A;return new Promise((Z,U)=>{W(F,($)=>{if($)return U($);Z(X)})})}walkSync(A=this.cwd,Q={}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof sJ))Q=A,A=this.cwd;let{withFileTypes:B=!0,follow:Y=!1,filter:J,walkFilter:C}=Q,X=[];if(!J||J(A))X.push(B?A:A.fullpath());let G=new Set([A]);for(let W of G){let F=W.readdirSync();for(let Z of F){if(!J||J(Z))X.push(B?Z:Z.fullpath());let U=Z;if(Z.isSymbolicLink()){if(!(Y&&(U=Z.realpathSync())))continue;if(U.isUnknown())U.lstatSync()}if(U.shouldWalk(G,C))G.add(U)}}return X}[Symbol.asyncIterator](){return this.iterate()}iterate(A=this.cwd,Q={}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof sJ))Q=A,A=this.cwd;return this.stream(A,Q)[Symbol.asyncIterator]()}[Symbol.iterator](){return this.iterateSync()}*iterateSync(A=this.cwd,Q={}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof sJ))Q=A,A=this.cwd;let{withFileTypes:B=!0,follow:Y=!1,filter:J,walkFilter:C}=Q;if(!J||J(A))yield B?A:A.fullpath();let X=new Set([A]);for(let G of X){let W=G.readdirSync();for(let F of W){if(!J||J(F))yield B?F:F.fullpath();let Z=F;if(F.isSymbolicLink()){if(!(Y&&(Z=F.realpathSync())))continue;if(Z.isUnknown())Z.lstatSync()}if(Z.shouldWalk(X,C))X.add(Z)}}}stream(A=this.cwd,Q={}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof sJ))Q=A,A=this.cwd;let{withFileTypes:B=!0,follow:Y=!1,filter:J,walkFilter:C}=Q,X=new gF({objectMode:!0});if(!J||J(A))X.write(B?A:A.fullpath());let G=new Set,W=[A],F=0,Z=()=>{let U=!1;while(!U){let $=W.shift();if(!$){if(F===0)X.end();return}F++,G.add($);let E=(I,V,H=!1)=>{if(I)return X.emit("error",I);if(Y&&!H){let D=[];for(let L of V)if(L.isSymbolicLink())D.push(L.realpath().then((z)=>z?.isUnknown()?z.lstat():z));if(D.length){Promise.all(D).then(()=>E(null,V,!0));return}}for(let D of V)if(D&&(!J||J(D))){if(!X.write(B?D:D.fullpath()))U=!0}F--;for(let D of V){let L=D.realpathCached()||D;if(L.shouldWalk(G,C))W.push(L)}if(U&&!X.flowing)X.once("drain",Z);else if(!K)Z()},K=!0;$.readdirCB(E,!0),K=!1}};return Z(),X}streamSync(A=this.cwd,Q={}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof sJ))Q=A,A=this.cwd;let{withFileTypes:B=!0,follow:Y=!1,filter:J,walkFilter:C}=Q,X=new gF({objectMode:!0}),G=new Set;if(!J||J(A))X.write(B?A:A.fullpath());let W=[A],F=0,Z=()=>{let U=!1;while(!U){let $=W.shift();if(!$){if(F===0)X.end();return}F++,G.add($);let E=$.readdirSync();for(let K of E)if(!J||J(K)){if(!X.write(B?K:K.fullpath()))U=!0}F--;for(let K of E){let I=K;if(K.isSymbolicLink()){if(!(Y&&(I=K.realpathSync())))continue;if(I.isUnknown())I.lstatSync()}if(I.shouldWalk(G,C))W.push(I)}}if(U&&!X.flowing)X.once("drain",Z)};return Z(),X}chdir(A=this.cwd){let Q=this.cwd;this.cwd=typeof A==="string"?this.cwd.resolve(A):A,this.cwd[MJA](Q)}}class gI extends Gg{sep="\\";constructor(A=process.cwd(),Q={}){let{nocase:B=!0}=Q;super(A,Cg,"\\",{...Q,nocase:B});this.nocase=B;for(let Y=this.cwd;Y;Y=Y.parent)Y.nocase=this.nocase}parseRootPath(A){return Cg.parse(A).root.toUpperCase()}newRoot(A){return new y2(this.rootPath,_1,void 0,this.roots,this.nocase,this.childrenCache(),{fs:A})}isAbsolute(A){return A.startsWith("/")||A.startsWith("\\")||/^[a-z]:(\/|\\)/i.test(A)}}class hI extends Gg{sep="/";constructor(A=process.cwd(),Q={}){let{nocase:B=!1}=Q;super(A,emQ,"/",{...Q,nocase:B});this.nocase=B}parseRootPath(A){return"/"}newRoot(A){return new g2(this.rootPath,_1,void 0,this.roots,this.nocase,this.childrenCache(),{fs:A})}isAbsolute(A){return A.startsWith("/")}}class h2 extends hI{constructor(A=process.cwd(),Q={}){let{nocase:B=!0}=Q;super(A,{...Q,nocase:B})}}var EXY=process.platform==="win32"?y2:g2,zJA=process.platform==="win32"?gI:process.platform==="darwin"?h2:hI;var VuQ=(A)=>A.length>=1,IuQ=(A)=>A.length>=1;class d4{#A;#Q;#B;length;#Y;#J;#C;#W;#X;#G;#Z=!0;constructor(A,Q,B,Y){if(!VuQ(A))throw TypeError("empty pattern list");if(!IuQ(Q))throw TypeError("empty glob list");if(Q.length!==A.length)throw TypeError("mismatched pattern list and glob list lengths");if(this.length=A.length,B<0||B>=this.length)throw TypeError("index out of range");if(this.#A=A,this.#Q=Q,this.#B=B,this.#Y=Y,this.#B===0){if(this.isUNC()){let[J,C,X,G,...W]=this.#A,[F,Z,U,$,...E]=this.#Q;if(W[0]==="")W.shift(),E.shift();let K=[J,C,X,G,""].join("/"),I=[F,Z,U,$,""].join("/");this.#A=[K,...W],this.#Q=[I,...E],this.length=this.#A.length}else if(this.isDrive()||this.isAbsolute()){let[J,...C]=this.#A,[X,...G]=this.#Q;if(C[0]==="")C.shift(),G.shift();let W=J+"/",F=X+"/";this.#A=[W,...C],this.#Q=[F,...G],this.length=this.#A.length}}}pattern(){return this.#A[this.#B]}isString(){return typeof this.#A[this.#B]==="string"}isGlobstar(){return this.#A[this.#B]===JJ}isRegExp(){return this.#A[this.#B]instanceof RegExp}globString(){return this.#C=this.#C||(this.#B===0?this.isAbsolute()?this.#Q[0]+this.#Q.slice(1).join("/"):this.#Q.join("/"):this.#Q.slice(this.#B).join("/"))}hasMore(){return this.length>this.#B+1}rest(){if(this.#J!==void 0)return this.#J;if(!this.hasMore())return this.#J=null;return this.#J=new d4(this.#A,this.#Q,this.#B+1,this.#Y),this.#J.#G=this.#G,this.#J.#X=this.#X,this.#J.#W=this.#W,this.#J}isUNC(){let A=this.#A;return this.#X!==void 0?this.#X:this.#X=this.#Y==="win32"&&this.#B===0&&A[0]===""&&A[1]===""&&typeof A[2]==="string"&&!!A[2]&&typeof A[3]==="string"&&!!A[3]}isDrive(){let A=this.#A;return this.#W!==void 0?this.#W:this.#W=this.#Y==="win32"&&this.#B===0&&this.length>1&&typeof A[0]==="string"&&/^[a-z]:$/i.test(A[0])}isAbsolute(){let A=this.#A;return this.#G!==void 0?this.#G:this.#G=A[0]===""&&A.length>1||this.isDrive()||this.isUNC()}root(){let A=this.#A[0];return typeof A==="string"&&this.isAbsolute()&&this.#B===0?A:""}checkFollowGlobstar(){return!(this.#B===0||!this.isGlobstar()||!this.#Z)}markFollowGlobstar(){if(this.#B===0||!this.isGlobstar()||!this.#Z)return!1;return this.#Z=!1,!0}}var HuQ=typeof process==="object"&&process&&typeof process.platform==="string"?process.platform:"linux";class xI{relative;relativeChildren;absolute;absoluteChildren;platform;mmopts;constructor(A,{nobrace:Q,nocase:B,noext:Y,noglobstar:J,platform:C=HuQ}){this.relative=[],this.absolute=[],this.relativeChildren=[],this.absoluteChildren=[],this.platform=C,this.mmopts={dot:!0,nobrace:Q,nocase:B,noext:Y,noglobstar:J,optimizationLevel:2,platform:C,nocomment:!0,nonegate:!0};for(let X of A)this.add(X)}add(A){let Q=new J5(A,this.mmopts);for(let B=0;B[A,!!(Q&2),!!(Q&1)])}}class wJA{store=new Map;add(A,Q){if(!A.canReaddir())return;let B=this.store.get(A);if(B){if(!B.find((Y)=>Y.globString()===Q.globString()))B.push(Q)}else this.store.set(A,[Q])}get(A){let Q=this.store.get(A);if(!Q)throw Error("attempting to walk unknown path");return Q}entries(){return this.keys().map((A)=>[A,this.store.get(A)])}keys(){return[...this.store.keys()].filter((A)=>A.canReaddir())}}class fI{hasWalkedCache;matches=new RJA;subwalks=new wJA;patterns;follow;dot;opts;constructor(A,Q){this.opts=A,this.follow=!!A.follow,this.dot=!!A.dot,this.hasWalkedCache=Q?Q.copy():new Wg}processPatterns(A,Q){this.patterns=Q;let B=Q.map((Y)=>[A,Y]);for(let[Y,J]of B){this.hasWalkedCache.storeWalked(Y,J);let C=J.root(),X=J.isAbsolute()&&this.opts.absolute!==!1;if(C){Y=Y.resolve(C==="/"&&this.opts.root!==void 0?this.opts.root:C);let Z=J.rest();if(!Z){this.matches.add(Y,!0,!1);continue}else J=Z}if(Y.isENOENT())continue;let G,W,F=!1;while(typeof(G=J.pattern())==="string"&&(W=J.rest()))Y=Y.resolve(G),J=W,F=!0;if(G=J.pattern(),W=J.rest(),F){if(this.hasWalkedCache.hasWalked(Y,J))continue;this.hasWalkedCache.storeWalked(Y,J)}if(typeof G==="string"){let Z=G===".."||G===""||G===".";this.matches.add(Y.resolve(G),X,Z);continue}else if(G===JJ){if(!Y.isSymbolicLink()||this.follow||J.checkFollowGlobstar())this.subwalks.add(Y,J);let Z=W?.pattern(),U=W?.rest();if(!W||(Z===""||Z===".")&&!U)this.matches.add(Y,X,Z===""||Z===".");else if(Z===".."){let $=Y.parent||Y;if(!U)this.matches.add($,X,!0);else if(!this.hasWalkedCache.hasWalked($,U))this.subwalks.add($,U)}}else if(G instanceof RegExp)this.subwalks.add(Y,J)}return this}subwalkTargets(){return this.subwalks.keys()}child(){return new fI(this.opts,this.hasWalkedCache)}filterEntries(A,Q){let B=this.subwalks.get(A),Y=this.child();for(let J of Q)for(let C of B){let X=C.isAbsolute(),G=C.pattern(),W=C.rest();if(G===JJ)Y.testGlobstar(J,C,W,X);else if(G instanceof RegExp)Y.testRegExp(J,G,W,X);else Y.testString(J,G,W,X)}return Y}testGlobstar(A,Q,B,Y){if(this.dot||!A.name.startsWith(".")){if(!Q.hasMore())this.matches.add(A,Y,!1);if(A.canReaddir()){if(this.follow||!A.isSymbolicLink())this.subwalks.add(A,Q);else if(A.isSymbolicLink()){if(B&&Q.checkFollowGlobstar())this.subwalks.add(A,B);else if(Q.markFollowGlobstar())this.subwalks.add(A,Q)}}}if(B){let J=B.pattern();if(typeof J==="string"&&J!==".."&&J!==""&&J!==".")this.testString(A,J,B.rest(),Y);else if(J===".."){let C=A.parent||A;this.subwalks.add(C,B)}else if(J instanceof RegExp)this.testRegExp(A,J,B.rest(),Y)}}testRegExp(A,Q,B,Y){if(!Q.test(A.name))return;if(!B)this.matches.add(A,Y,!1);else this.subwalks.add(A,B)}testString(A,Q,B,Y){if(!A.isNamed(Q))return;if(!B)this.matches.add(A,Y,!1);else this.subwalks.add(A,B)}}var DuQ=(A,Q)=>typeof A==="string"?new xI([A],Q):Array.isArray(A)?new xI(A,Q):A;class Fg{path;patterns;opts;seen=new Set;paused=!1;aborted=!1;#A=[];#Q;#B;signal;maxDepth;includeChildMatches;constructor(A,Q,B){if(this.patterns=A,this.path=Q,this.opts=B,this.#B=!B.posix&&B.platform==="win32"?"\\":"/",this.includeChildMatches=B.includeChildMatches!==!1,B.ignore||!this.includeChildMatches){if(this.#Q=DuQ(B.ignore??[],B),!this.includeChildMatches&&typeof this.#Q.add!=="function")throw Error("cannot ignore child matches, ignore lacks add() method.")}if(this.maxDepth=B.maxDepth||1/0,B.signal)this.signal=B.signal,this.signal.addEventListener("abort",()=>{this.#A.length=0})}#Y(A){return this.seen.has(A)||!!this.#Q?.ignored?.(A)}#J(A){return!!this.#Q?.childrenIgnored?.(A)}pause(){this.paused=!0}resume(){if(this.signal?.aborted)return;this.paused=!1;let A=void 0;while(!this.paused&&(A=this.#A.shift()))A()}onResume(A){if(this.signal?.aborted)return;if(!this.paused)A();else this.#A.push(A)}async matchCheck(A,Q){if(Q&&this.opts.nodir)return;let B;if(this.opts.realpath){if(B=A.realpathCached()||await A.realpath(),!B)return;A=B}let J=A.isUnknown()||this.opts.stat?await A.lstat():A;if(this.opts.follow&&this.opts.nodir&&J?.isSymbolicLink()){let C=await J.realpath();if(C&&(C.isUnknown()||this.opts.stat))await C.lstat()}return this.matchCheckTest(J,Q)}matchCheckTest(A,Q){return A&&(this.maxDepth===1/0||A.depth()<=this.maxDepth)&&(!Q||A.canReaddir())&&(!this.opts.nodir||!A.isDirectory())&&(!this.opts.nodir||!this.opts.follow||!A.isSymbolicLink()||!A.realpathCached()?.isDirectory())&&!this.#Y(A)?A:void 0}matchCheckSync(A,Q){if(Q&&this.opts.nodir)return;let B;if(this.opts.realpath){if(B=A.realpathCached()||A.realpathSync(),!B)return;A=B}let J=A.isUnknown()||this.opts.stat?A.lstatSync():A;if(this.opts.follow&&this.opts.nodir&&J?.isSymbolicLink()){let C=J.realpathSync();if(C&&(C?.isUnknown()||this.opts.stat))C.lstatSync()}return this.matchCheckTest(J,Q)}matchFinish(A,Q){if(this.#Y(A))return;if(!this.includeChildMatches&&this.#Q?.add){let J=`${A.relativePosix()}/**`;this.#Q.add(J)}let B=this.opts.absolute===void 0?Q:this.opts.absolute;this.seen.add(A);let Y=this.opts.mark&&A.isDirectory()?this.#B:"";if(this.opts.withFileTypes)this.matchEmit(A);else if(B){let J=this.opts.posix?A.fullpathPosix():A.fullpath();this.matchEmit(J+Y)}else{let J=this.opts.posix?A.relativePosix():A.relative(),C=this.opts.dotRelative&&!J.startsWith(".."+this.#B)?"."+this.#B:"";this.matchEmit(!J?"."+Y:C+J+Y)}}async match(A,Q,B){let Y=await this.matchCheck(A,B);if(Y)this.matchFinish(Y,Q)}matchSync(A,Q,B){let Y=this.matchCheckSync(A,B);if(Y)this.matchFinish(Y,Q)}walkCB(A,Q,B){if(this.signal?.aborted)B();this.walkCB2(A,Q,new fI(this.opts),B)}walkCB2(A,Q,B,Y){if(this.#J(A))return Y();if(this.signal?.aborted)Y();if(this.paused){this.onResume(()=>this.walkCB2(A,Q,B,Y));return}B.processPatterns(A,Q);let J=1,C=()=>{if(--J===0)Y()};for(let[X,G,W]of B.matches.entries()){if(this.#Y(X))continue;J++,this.match(X,G,W).then(()=>C())}for(let X of B.subwalkTargets()){if(this.maxDepth!==1/0&&X.depth()>=this.maxDepth)continue;J++;let G=X.readdirCached();if(X.calledReaddir())this.walkCB3(X,G,B,C);else X.readdirCB((W,F)=>this.walkCB3(X,F,B,C),!0)}C()}walkCB3(A,Q,B,Y){B=B.filterEntries(A,Q);let J=1,C=()=>{if(--J===0)Y()};for(let[X,G,W]of B.matches.entries()){if(this.#Y(X))continue;J++,this.match(X,G,W).then(()=>C())}for(let[X,G]of B.subwalks.entries())J++,this.walkCB2(X,G,B.child(),C);C()}walkCBSync(A,Q,B){if(this.signal?.aborted)B();this.walkCB2Sync(A,Q,new fI(this.opts),B)}walkCB2Sync(A,Q,B,Y){if(this.#J(A))return Y();if(this.signal?.aborted)Y();if(this.paused){this.onResume(()=>this.walkCB2Sync(A,Q,B,Y));return}B.processPatterns(A,Q);let J=1,C=()=>{if(--J===0)Y()};for(let[X,G,W]of B.matches.entries()){if(this.#Y(X))continue;this.matchSync(X,G,W)}for(let X of B.subwalkTargets()){if(this.maxDepth!==1/0&&X.depth()>=this.maxDepth)continue;J++;let G=X.readdirSync();this.walkCB3Sync(X,G,B,C)}C()}walkCB3Sync(A,Q,B,Y){B=B.filterEntries(A,Q);let J=1,C=()=>{if(--J===0)Y()};for(let[X,G,W]of B.matches.entries()){if(this.#Y(X))continue;this.matchSync(X,G,W)}for(let[X,G]of B.subwalks.entries())J++,this.walkCB2Sync(X,G,B.child(),C);C()}}class x2 extends Fg{matches=new Set;constructor(A,Q,B){super(A,Q,B)}matchEmit(A){this.matches.add(A)}async walk(){if(this.signal?.aborted)throw this.signal.reason;if(this.path.isUnknown())await this.path.lstat();return await new Promise((A,Q)=>{this.walkCB(this.path,this.patterns,()=>{if(this.signal?.aborted)Q(this.signal.reason);else A(this.matches)})}),this.matches}walkSync(){if(this.signal?.aborted)throw this.signal.reason;if(this.path.isUnknown())this.path.lstatSync();return this.walkCBSync(this.path,this.patterns,()=>{if(this.signal?.aborted)throw this.signal.reason}),this.matches}}class f2 extends Fg{results;constructor(A,Q,B){super(A,Q,B);this.results=new gF({signal:this.signal,objectMode:!0}),this.results.on("drain",()=>this.resume()),this.results.on("resume",()=>this.resume())}matchEmit(A){if(this.results.write(A),!this.results.flowing)this.pause()}stream(){let A=this.path;if(A.isUnknown())A.lstat().then(()=>{this.walkCB(A,this.patterns,()=>this.results.end())});else this.walkCB(A,this.patterns,()=>this.results.end());return this.results}streamSync(){if(this.path.isUnknown())this.path.lstatSync();return this.walkCBSync(this.path,this.patterns,()=>this.results.end()),this.results}}var LuQ=typeof process==="object"&&process&&typeof process.platform==="string"?process.platform:"linux";class v1{absolute;cwd;root;dot;dotRelative;follow;ignore;magicalBraces;mark;matchBase;maxDepth;nobrace;nocase;nodir;noext;noglobstar;pattern;platform;realpath;scurry;stat;signal;windowsPathsNoEscape;withFileTypes;includeChildMatches;opts;patterns;constructor(A,Q){if(!Q)throw TypeError("glob options required");if(this.withFileTypes=!!Q.withFileTypes,this.signal=Q.signal,this.follow=!!Q.follow,this.dot=!!Q.dot,this.dotRelative=!!Q.dotRelative,this.nodir=!!Q.nodir,this.mark=!!Q.mark,!Q.cwd)this.cwd="";else if(Q.cwd instanceof URL||Q.cwd.startsWith("file://"))Q.cwd=NuQ(Q.cwd);if(this.cwd=Q.cwd||"",this.root=Q.root,this.magicalBraces=!!Q.magicalBraces,this.nobrace=!!Q.nobrace,this.noext=!!Q.noext,this.realpath=!!Q.realpath,this.absolute=Q.absolute,this.includeChildMatches=Q.includeChildMatches!==!1,this.noglobstar=!!Q.noglobstar,this.matchBase=!!Q.matchBase,this.maxDepth=typeof Q.maxDepth==="number"?Q.maxDepth:1/0,this.stat=!!Q.stat,this.ignore=Q.ignore,this.withFileTypes&&this.absolute!==void 0)throw Error("cannot set absolute and withFileTypes:true");if(typeof A==="string")A=[A];if(this.windowsPathsNoEscape=!!Q.windowsPathsNoEscape||Q.allowWindowsEscape===!1,this.windowsPathsNoEscape)A=A.map((G)=>G.replace(/\\/g,"/"));if(this.matchBase){if(Q.noglobstar)throw TypeError("base matching requires globstar");A=A.map((G)=>G.includes("/")?G:`./**/${G}`)}if(this.pattern=A,this.platform=Q.platform||LuQ,this.opts={...Q,platform:this.platform},Q.scurry){if(this.scurry=Q.scurry,Q.nocase!==void 0&&Q.nocase!==Q.scurry.nocase)throw Error("nocase option contradicts provided scurry option")}else{let G=Q.platform==="win32"?gI:Q.platform==="darwin"?h2:Q.platform?hI:zJA;this.scurry=new G(this.cwd,{nocase:Q.nocase,fs:Q.fs})}this.nocase=this.scurry.nocase;let B=this.platform==="darwin"||this.platform==="win32",Y={...Q,dot:this.dot,matchBase:this.matchBase,nobrace:this.nobrace,nocase:this.nocase,nocaseMagicOnly:B,nocomment:!0,noext:this.noext,nonegate:!0,optimizationLevel:2,platform:this.platform,windowsPathsNoEscape:this.windowsPathsNoEscape,debug:!!this.opts.debug},J=this.pattern.map((G)=>new J5(G,Y)),[C,X]=J.reduce((G,W)=>{return G[0].push(...W.set),G[1].push(...W.globParts),G},[[],[]]);this.patterns=C.map((G,W)=>{let F=X[W];if(!F)throw Error("invalid pattern object");return new d4(G,F,0,this.platform)})}async walk(){return[...await new x2(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walk()]}walkSync(){return[...new x2(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walkSync()]}stream(){return new f2(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).stream()}streamSync(){return new f2(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).streamSync()}iterateSync(){return this.streamSync()[Symbol.iterator]()}[Symbol.iterator](){return this.iterateSync()}iterate(){return this.stream()[Symbol.asyncIterator]()}[Symbol.asyncIterator](){return this.iterate()}}var Zg=(A,Q={})=>{if(!Array.isArray(A))A=[A];for(let B of A)if(new J5(B,Q).hasMagic())return!0;return!1};function b2(A,Q={}){return new v1(A,Q).streamSync()}function OJA(A,Q={}){return new v1(A,Q).stream()}function PJA(A,Q={}){return new v1(A,Q).walkSync()}async function jJA(A,Q={}){return new v1(A,Q).walk()}function m2(A,Q={}){return new v1(A,Q).iterateSync()}function TJA(A,Q={}){return new v1(A,Q).iterate()}var quQ=b2,MuQ=Object.assign(OJA,{sync:b2}),zuQ=m2,RuQ=Object.assign(TJA,{sync:m2}),wuQ=Object.assign(PJA,{stream:b2,iterate:m2}),c4=Object.assign(jJA,{glob:jJA,globSync:PJA,sync:wuQ,globStream:OJA,stream:MuQ,globStreamSync:b2,streamSync:quQ,globIterate:TJA,iterate:RuQ,globIterateSync:m2,iterateSync:zuQ,Glob:v1,hasMagic:Zg,escape:x4,unescape:RC});c4.glob=c4;class $g{constructor(){this._listeners={}}addEventListener(A,Q){let B=this._listeners;if(B[A]===void 0)B[A]=[];if(B[A].indexOf(Q)===-1)B[A].push(Q);return this}removeEventListener(A,Q){let Y=this._listeners[A];if(Y!==void 0){let J=Y.indexOf(Q);if(J!==-1)Y.splice(J,1)}return this}dispatchEvent(A){let B=this._listeners[A.type];if(B!==void 0){let Y=B.slice(0);for(let J=0,C=Y.length;J=0)this.list.splice(Q,1)}removeChild(A){let Q=[];for(let B of this.list)if(B.getChild()===A)Q.push(B);for(let B of Q)this.remove(B);return Q}listRefsByChild(A){let Q=[];for(let B of this.list)if(B.getChild()===A)Q.push(B);return Q}values(){return this.list}}class xB{constructor(A){if(this.set=new Set,this.map=new Map,A)for(let Q of A)this.add(Q)}add(A){let Q=A.getChild();this.removeChild(Q),this.set.add(A),this.map.set(Q,A)}remove(A){this.set.delete(A),this.map.delete(A.getChild())}removeChild(A){let Q=this.map.get(A)||null;if(Q)this.remove(Q);return Q}getRefByChild(A){return this.map.get(A)||null}values(){return Array.from(this.set)}}class rJ{constructor(A){if(this.map={},A)Object.assign(this.map,A)}set(A,Q){this.map[A]=Q}delete(A){delete this.map[A]}get(A){return this.map[A]||null}keys(){return Object.keys(this.map)}values(){return Object.values(this.map)}}var PB=Symbol("attributes"),B7=Symbol("immutableKeys");class d2 extends $g{constructor(A){super();this._disposed=!1,this.graph=void 0,this[PB]=void 0,this[B7]=void 0,this.graph=A,this[B7]=new Set,this[PB]=this._createAttributes()}getDefaults(){return{}}_createAttributes(){let A=this.getDefaults(),Q={};for(let B in A){let Y=A[B];if(Y instanceof d2){let J=this.graph._createEdge(B,this,Y);this[B7].add(B),Q[B]=J}else Q[B]=Y}return Q}isOnGraph(A){return this.graph===A.graph}isDisposed(){return this._disposed}dispose(){if(this._disposed)return;this.graph.listChildEdges(this).forEach((A)=>A.dispose()),this.graph.disconnectParents(this),this._disposed=!0,this.dispatchEvent({type:"dispose"})}detach(){return this.graph.disconnectParents(this),this}swap(A,Q){for(let B in this[PB]){let Y=this[PB][B];if(Y instanceof B6){let J=Y;if(J.getChild()===A)this.setRef(B,Q,J.getAttributes())}else if(Y instanceof OC)for(let J of Y.listRefsByChild(A)){let C=J.getAttributes();this.removeRef(B,A),this.addRef(B,Q,C)}else if(Y instanceof xB){let J=Y.getRefByChild(A);if(J){let C=J.getAttributes();this.removeRef(B,A),this.addRef(B,Q,C)}}else if(Y instanceof rJ)for(let J of Y.keys()){let C=Y.get(J);if(C.getChild()===A)this.setRefMap(B,J,Q,C.getAttributes())}}return this}get(A){return this[PB][A]}set(A,Q){return this[PB][A]=Q,this.dispatchEvent({type:"change",attribute:A})}getRef(A){let Q=this[PB][A];return Q?Q.getChild():null}setRef(A,Q,B){if(this[B7].has(A))throw Error(`Cannot overwrite immutable attribute, "${A}".`);let Y=this[PB][A];if(Y)Y.dispose();if(!Q)return this;let J=this.graph._createEdge(A,this,Q,B);return this[PB][A]=J,this.dispatchEvent({type:"change",attribute:A})}listRefs(A){return this.assertRefList(A).values().map((B)=>B.getChild())}addRef(A,Q,B){let Y=this.graph._createEdge(A,this,Q,B);return this.assertRefList(A).add(Y),this.dispatchEvent({type:"change",attribute:A})}removeRef(A,Q){let B=this.assertRefList(A);if(B instanceof OC)for(let Y of B.listRefsByChild(Q))Y.dispose();else{let Y=B.getRefByChild(Q);if(Y)Y.dispose()}return this}assertRefList(A){let Q=this[PB][A];if(Q instanceof OC||Q instanceof xB)return Q;throw Error(`Expected RefList or RefSet for attribute "${A}"`)}listRefMapKeys(A){return this.assertRefMap(A).keys()}listRefMapValues(A){return this.assertRefMap(A).values().map((Q)=>Q.getChild())}getRefMap(A,Q){let Y=this.assertRefMap(A).get(Q);return Y?Y.getChild():null}setRefMap(A,Q,B,Y){let J=this.assertRefMap(A),C=J.get(Q);if(C)C.dispose();if(!B)return this;Y=Object.assign(Y||{},{key:Q});let X=this.graph._createEdge(A,this,B,bI({},Y,{key:Q}));return J.set(Q,X),this.dispatchEvent({type:"change",attribute:A,key:Q})}assertRefMap(A){let Q=this[PB][A];if(Q instanceof rJ)return Q;throw Error(`Expected RefMap for attribute "${A}"`)}dispatchEvent(A){return super.dispatchEvent(bI({},A,{target:this})),this.graph.dispatchEvent(bI({},A,{target:this,type:`node:${A.type}`})),this}_destroyRef(A){let Q=A.getName();if(this[PB][Q]===A){if(this[PB][Q]=null,this[B7].has(Q))A.getChild().dispose()}else if(this[PB][Q]instanceof OC)this[PB][Q].remove(A);else if(this[PB][Q]instanceof xB)this[PB][Q].remove(A);else if(this[PB][Q]instanceof rJ){let B=this[PB][Q];for(let Y of B.keys())if(B.get(Y)===A)B.delete(Y)}else return;this.graph._destroyEdge(A),this.dispatchEvent({type:"change",attribute:Q})}}var hJA="v4.2.1",fF="@glb.bin",YA;(function(A){A.ACCESSOR="Accessor",A.ANIMATION="Animation",A.ANIMATION_CHANNEL="AnimationChannel",A.ANIMATION_SAMPLER="AnimationSampler",A.BUFFER="Buffer",A.CAMERA="Camera",A.MATERIAL="Material",A.MESH="Mesh",A.PRIMITIVE="Primitive",A.PRIMITIVE_TARGET="PrimitiveTarget",A.NODE="Node",A.ROOT="Root",A.SCENE="Scene",A.SKIN="Skin",A.TEXTURE="Texture",A.TEXTURE_INFO="TextureInfo"})(YA||(YA={}));var s2;(function(A){A.INTERLEAVED="interleaved",A.SEPARATE="separate"})(s2||(s2={}));var Z8;(function(A){A.ARRAY_BUFFER="ARRAY_BUFFER",A.ELEMENT_ARRAY_BUFFER="ELEMENT_ARRAY_BUFFER",A.INVERSE_BIND_MATRICES="INVERSE_BIND_MATRICES",A.OTHER="OTHER",A.SPARSE="SPARSE"})(Z8||(Z8={}));var k9;(function(A){A[A.R=4096]="R",A[A.G=256]="G",A[A.B=16]="B",A[A.A=1]="A"})(k9||(k9={}));var Y6;(function(A){A.GLTF="GLTF",A.GLB="GLB"})(Y6||(Y6={}));var J7={"5120":Int8Array,"5121":Uint8Array,"5122":Int16Array,"5123":Uint16Array,"5125":Uint32Array,"5126":Float32Array};class jQ{static createBufferFromDataURI(A){if(typeof Buffer>"u"){let Q=atob(A.split(",")[1]),B=new Uint8Array(Q.length);for(let Y=0;Y=0;return Buffer.from(Q,B?"base64":"utf8")}}static encodeText(A){return new TextEncoder().encode(A)}static decodeText(A){return new TextDecoder().decode(A)}static concat(A){let Q=0;for(let J of A)Q+=J.byteLength;let B=new Uint8Array(Q),Y=0;for(let J of A)B.set(J,Y),Y+=J.byteLength;return B}static pad(A,Q=0){let B=this.padNumber(A.byteLength);if(B===A.byteLength)return A;let Y=new Uint8Array(B);if(Y.set(A),Q!==0)for(let J=A.byteLength;J>16&255)/255,B[1]=(A>>8&255)/255,B[2]=(A&255)/255,this.convertSRGBToLinear(Q,Q)}static factorToHex(A){let Q=[...A],[B,Y,J]=this.convertLinearToSRGB(A,Q);return B*255<<16^Y*255<<8^J*255<<0}static convertSRGBToLinear(A,Q){let B=A,Y=Q;for(let J=0;J<3;J++)Y[J]=B[J]<0.04045?B[J]*0.0773993808:Math.pow(B[J]*0.9478672986+0.0521327014,2.4);return Q}static convertLinearToSRGB(A,Q){let B=A,Y=Q;for(let J=0;J<3;J++)Y[J]=B[J]<0.0031308?B[J]*12.92:1.055*Math.pow(B[J],0.41666)-0.055;return Q}}class xJA{match(A){return A.length>=3&&A[0]===255&&A[1]===216&&A[2]===255}getSize(A){let Q=new DataView(A.buffer,A.byteOffset+4),B,Y;while(Q.byteLength){if(B=Q.getUint16(0,!1),juQ(Q,B),Y=Q.getUint8(B+1),Y===192||Y===193||Y===194)return[Q.getUint16(B+7,!1),Q.getUint16(B+5,!1)];Q=new DataView(A.buffer,Q.byteOffset+B+2)}throw TypeError("Invalid JPG, no size found")}getChannels(A){return 3}}class o2{match(A){return A.length>=8&&A[0]===137&&A[1]===80&&A[2]===78&&A[3]===71&&A[4]===13&&A[5]===10&&A[6]===26&&A[7]===10}getSize(A){let Q=new DataView(A.buffer,A.byteOffset);if(jQ.decodeText(A.slice(12,16))===o2.PNG_FRIED_CHUNK_NAME)return[Q.getUint32(32,!1),Q.getUint32(36,!1)];return[Q.getUint32(16,!1),Q.getUint32(20,!1)]}getChannels(A){return 4}}o2.PNG_FRIED_CHUNK_NAME="CgBI";class F8{static registerFormat(A,Q){this.impls[A]=Q}static getMimeType(A){for(let Q in this.impls)if(this.impls[Q].match(A))return Q;return null}static getSize(A,Q){if(!this.impls[Q])return null;return this.impls[Q].getSize(A)}static getChannels(A,Q){if(!this.impls[Q])return null;return this.impls[Q].getChannels(A)}static getVRAMByteLength(A,Q){if(!this.impls[Q])return null;if(this.impls[Q].getVRAMByteLength)return this.impls[Q].getVRAMByteLength(A);let B=0,Y=4,J=this.getSize(A,Q);if(!J)return null;while(J[0]>1||J[1]>1)B+=J[0]*J[1]*Y,J[0]=Math.max(Math.floor(J[0]/2),1),J[1]=Math.max(Math.floor(J[1]/2),1);return B+=1*Y,B}static mimeTypeToExtension(A){if(A==="image/jpeg")return"jpg";return A.split("/").pop()}static extensionToMimeType(A){if(A==="jpg")return"image/jpeg";if(!A)return"";return`image/${A}`}}F8.impls={"image/jpeg":new xJA,"image/png":new o2};function juQ(A,Q){if(Q>A.byteLength)throw TypeError("Corrupt JPG, exceeded buffer limits");if(A.getUint8(Q)!==255)throw TypeError("Invalid JPG, marker table corrupted");return A}class J6{static basename(A){let Q=A.split(/[\\/]/).pop();return Q.substring(0,Q.lastIndexOf("."))}static extension(A){if(A.startsWith("data:image/")){let Q=A.match(/data:(image\/\w+)/)[1];return F8.mimeTypeToExtension(Q)}else if(A.startsWith("data:model/gltf+json"))return"gltf";else if(A.startsWith("data:model/gltf-binary"))return"glb";else if(A.startsWith("data:application/"))return"bin";return A.split(/[\\/]/).pop().split(/[.]/).pop()}}var Eg=typeof Float32Array<"u"?Float32Array:Array;if(!Math.hypot)Math.hypot=function(){var A=0,Q=arguments.length;while(Q--)A+=arguments[Q]*arguments[Q];return Math.sqrt(A)};function OuQ(){var A=new Eg(3);if(Eg!=Float32Array)A[0]=0,A[1]=0,A[2]=0;return A}function Ug(A){var Q=A[0],B=A[1],Y=A[2];return Math.hypot(Q,B,Y)}function PuQ(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=B[3]*Y+B[7]*J+B[11]*C+B[15];return X=X||1,A[0]=(B[0]*Y+B[4]*J+B[8]*C+B[12])/X,A[1]=(B[1]*Y+B[5]*J+B[9]*C+B[13])/X,A[2]=(B[2]*Y+B[6]*J+B[10]*C+B[14])/X,A}(function(){var A=OuQ();return function(Q,B,Y,J,C,X){var G,W;if(!B)B=3;if(!Y)Y=0;if(J)W=Math.min(J*B+Y,Q.length);else W=Q.length;for(G=Y;G{let C=J.getMesh();if(!C)return;let X=TuQ(C,J.getWorldMatrix());if(X.min.every(isFinite)&&X.max.every(isFinite))Kg(X.min,Q),Kg(X.max,Q)});return Q}function TuQ(A,Q){let B=fJA();for(let Y of A.listPrimitives()){let J=Y.getAttribute("POSITION"),C=Y.getIndices();if(!J)continue;let X=[0,0,0],G=[0,0,0];for(let W=0,F=C?C.getCount():J.getCount();W0)V=Math.sqrt(I+1)*2,A[3]=0.25*V,A[0]=(U-E)/V,A[1]=($-W)/V,A[2]=(G-F)/V;else if(X>Z&&X>K)V=Math.sqrt(1+X-Z-K)*2,A[3]=(U-E)/V,A[0]=0.25*V,A[1]=(G+F)/V,A[2]=($+W)/V;else if(Z>K)V=Math.sqrt(1+Z-X-K)*2,A[3]=($-W)/V,A[0]=(G+F)/V,A[1]=0.25*V,A[2]=(U+E)/V;else V=Math.sqrt(1+K-X-Z)*2,A[3]=(G-F)/V,A[0]=($+W)/V,A[1]=(U+E)/V,A[2]=0.25*V;return A}class kQ{static identity(A){return A}static eq(A,Q,B=0.00001){if(A.length!==Q.length)return!1;for(let Y=0;YB)return!1;return!0}static clamp(A,Q,B){if(AB)return B;return A}static decodeNormalizedInt(A,Q){switch(Q){case 5126:return A;case 5123:return A/65535;case 5121:return A/255;case 5122:return Math.max(A/32767,-1);case 5120:return Math.max(A/127,-1);default:throw Error("Invalid component type.")}}static encodeNormalizedInt(A,Q){switch(Q){case 5126:return A;case 5123:return Math.round(kQ.clamp(A,0,1)*65535);case 5121:return Math.round(kQ.clamp(A,0,1)*255);case 5122:return Math.round(kQ.clamp(A,-1,1)*32767);case 5120:return Math.round(kQ.clamp(A,-1,1)*127);default:throw Error("Invalid component type.")}}static decompose(A,Q,B,Y){let J=Ug([A[0],A[1],A[2]]),C=Ug([A[4],A[5],A[6]]),X=Ug([A[8],A[9],A[10]]);if(SuQ(A)<0)J=-J;Q[0]=A[12],Q[1]=A[13],Q[2]=A[14];let W=A.slice(),F=1/J,Z=1/C,U=1/X;W[0]*=F,W[1]*=F,W[2]*=F,W[4]*=Z,W[5]*=Z,W[6]*=Z,W[8]*=U,W[9]*=U,W[10]*=U,vuQ(B,W),Y[0]=J,Y[1]=C,Y[2]=X}static compose(A,Q,B,Y){let J=Y,C=Q[0],X=Q[1],G=Q[2],W=Q[3],F=C+C,Z=X+X,U=G+G,$=C*F,E=C*Z,K=C*U,I=X*Z,V=X*U,H=G*U,D=W*F,L=W*Z,z=W*U,M=B[0],N=B[1],q=B[2];return J[0]=(1-(I+H))*M,J[1]=(E+z)*M,J[2]=(K-L)*M,J[3]=0,J[4]=(E-z)*N,J[5]=(1-($+H))*N,J[6]=(V+D)*N,J[7]=0,J[8]=(K+L)*q,J[9]=(V-D)*q,J[10]=(1-($+I))*q,J[11]=0,J[12]=A[0],J[13]=A[1],J[14]=A[2],J[15]=1,J}}function yuQ(A,Q){if(!!A!==!!Q)return!1;let B=A.getChild(),Y=Q.getChild();return B===Y||B.equals(Y)}function guQ(A,Q){if(!!A!==!!Q)return!1;let B=A.values(),Y=Q.values();if(B.length!==Y.length)return!1;for(let J=0;JA,muQ=new Set;class t2 extends d2{constructor(A,Q=""){super(A);this[PB].name=Q,this.init(),this.dispatchEvent({type:"create"})}getGraph(){return this.graph}getDefaults(){return Object.assign(super.getDefaults(),{name:"",extras:{}})}set(A,Q){if(Array.isArray(Q))Q=Q.slice();return super.set(A,Q)}getName(){return this.get("name")}setName(A){return this.set("name",A)}getExtras(){return this.get("extras")}setExtras(A){return this.set("extras",A)}clone(){return new this.constructor(this.graph).copy(this,Y7)}copy(A,Q=Y7){for(let B in this[PB]){let Y=this[PB][B];if(Y instanceof B6){if(!this[B7].has(B))Y.dispose()}else if(Y instanceof OC||Y instanceof xB)for(let J of Y.values())J.dispose();else if(Y instanceof rJ)for(let J of Y.values())J.dispose()}for(let B in A[PB]){let Y=this[PB][B],J=A[PB][B];if(J instanceof B6)if(this[B7].has(B))Y.getChild().copy(Q(J.getChild()),Q);else this.setRef(B,Q(J.getChild()),J.getAttributes());else if(J instanceof xB||J instanceof OC)for(let C of J.values())this.addRef(B,Q(C.getChild()),C.getAttributes());else if(J instanceof rJ)for(let C of J.keys()){let X=J.get(C);this.setRefMap(B,C,Q(X.getChild()),X.getAttributes())}else if(xF(J))this[PB][B]=JSON.parse(JSON.stringify(J));else if(Array.isArray(J)||J instanceof ArrayBuffer||ArrayBuffer.isView(J))this[PB][B]=J.slice();else this[PB][B]=J}return this}equals(A,Q=muQ){if(this===A)return!0;if(this.propertyType!==A.propertyType)return!1;for(let B in this[PB]){if(Q.has(B))continue;let Y=this[PB][B],J=A[PB][B];if(Y instanceof B6||J instanceof B6){if(!yuQ(Y,J))return!1}else if(Y instanceof xB||J instanceof xB||Y instanceof OC||J instanceof OC){if(!guQ(Y,J))return!1}else if(Y instanceof rJ||J instanceof rJ){if(!huQ(Y,J))return!1}else if(xF(Y)||xF(J)){if(!mJA(Y,J))return!1}else if(r2(Y)||r2(J)){if(!bJA(Y,J))return!1}else if(Y!==J)return!1}return!0}detach(){return this.graph.disconnectParents(this,(A)=>A.propertyType!=="Root"),this}listParents(){return this.graph.listParents(this)}}class qJ extends t2{getDefaults(){return Object.assign(super.getDefaults(),{extensions:new rJ})}getExtension(A){return this.getRefMap("extensions",A)}setExtension(A,Q){if(Q)Q._validateParent(this);return this.setRefMap("extensions",A,Q)}listExtensions(){return this.listRefMapValues("extensions")}}class fA extends qJ{init(){this.propertyType=YA.ACCESSOR}getDefaults(){return Object.assign(super.getDefaults(),{array:null,type:fA.Type.SCALAR,componentType:fA.ComponentType.FLOAT,normalized:!1,sparse:!1,buffer:null})}static getElementSize(A){switch(A){case fA.Type.SCALAR:return 1;case fA.Type.VEC2:return 2;case fA.Type.VEC3:return 3;case fA.Type.VEC4:return 4;case fA.Type.MAT2:return 4;case fA.Type.MAT3:return 9;case fA.Type.MAT4:return 16;default:throw Error("Unexpected type: "+A)}}static getComponentSize(A){switch(A){case fA.ComponentType.BYTE:return 1;case fA.ComponentType.UNSIGNED_BYTE:return 1;case fA.ComponentType.SHORT:return 2;case fA.ComponentType.UNSIGNED_SHORT:return 2;case fA.ComponentType.UNSIGNED_INT:return 4;case fA.ComponentType.FLOAT:return 4;default:throw Error("Unexpected component type: "+A)}}getMinNormalized(A){let Q=this.getNormalized(),B=this.getElementSize(),Y=this.getComponentType();if(this.getMin(A),Q)for(let J=0;J{this._addChildOfRoot(Q.target)})}clone(){throw Error("Root cannot be cloned.")}copy(A,Q=Y7){if(Q===Y7)throw Error("Root cannot be copied.");this.set("asset",aJ({},A.get("asset"))),this.setName(A.getName()),this.setExtras(aJ({},A.getExtras())),this.setDefaultScene(A.getDefaultScene()?Q(A.getDefaultScene()):null);for(let B of A.listRefMapKeys("extensions")){let Y=A.getExtension(B);this.setExtension(B,Q(Y))}return this}_addChildOfRoot(A){if(A instanceof l4)this.addRef("scenes",A);else if(A instanceof e2)this.addRef("nodes",A);else if(A instanceof bF)this.addRef("cameras",A);else if(A instanceof qg)this.addRef("skins",A);else if(A instanceof cI)this.addRef("meshes",A);else if(A instanceof y1)this.addRef("materials",A);else if(A instanceof mF)this.addRef("textures",A);else if(A instanceof Dg)this.addRef("animations",A);else if(A instanceof fA)this.addRef("accessors",A);else if(A instanceof Ng)this.addRef("buffers",A);return this}getAsset(){return this.get("asset")}listExtensionsUsed(){return Array.from(this._extensions)}listExtensionsRequired(){return this.listExtensionsUsed().filter((A)=>A.isRequired())}_enableExtension(A){return this._extensions.add(A),this}_disableExtension(A){return this._extensions.delete(A),this}listScenes(){return this.listRefs("scenes")}setDefaultScene(A){return this.setRef("defaultScene",A)}getDefaultScene(){return this.getRef("defaultScene")}listNodes(){return this.listRefs("nodes")}listCameras(){return this.listRefs("cameras")}listSkins(){return this.listRefs("skins")}listMeshes(){return this.listRefs("meshes")}listMaterials(){return this.listRefs("materials")}listTextures(){return this.listRefs("textures")}listAnimations(){return this.listRefs("animations")}listAccessors(){return this.listRefs("accessors")}listBuffers(){return this.listRefs("buffers")}}class LJ{static fromGraph(A){return LJ._GRAPH_DOCUMENTS.get(A)||null}constructor(){this._graph=new u2,this._root=new p4(this._graph),this._logger=S9.DEFAULT_INSTANCE,LJ._GRAPH_DOCUMENTS.set(this._graph,this)}getRoot(){return this._root}getGraph(){return this._graph}getLogger(){return this._logger}setLogger(A){return this._logger=A,this}clone(){throw Error("Use 'cloneDocument(source)' from '@gltf-transform/functions'.")}merge(A){throw Error("Use 'mergeDocuments(target, source)' from '@gltf-transform/functions'.")}async transform(...A){let Q=A.map((B)=>B.name);for(let B of A)await B(this,{stack:Q});return this}createExtension(A){let Q=A.EXTENSION_NAME;return this.getRoot().listExtensionsUsed().find((Y)=>Y.extensionName===Q)||new A(this)}createScene(A=""){return new l4(this._graph,A)}createNode(A=""){return new e2(this._graph,A)}createCamera(A=""){return new bF(this._graph,A)}createSkin(A=""){return new qg(this._graph,A)}createMesh(A=""){return new cI(this._graph,A)}createPrimitive(){return new q0(this._graph)}createPrimitiveTarget(A=""){return new Lg(this._graph,A)}createMaterial(A=""){return new y1(this._graph,A)}createTexture(A=""){return new mF(this._graph,A)}createAnimation(A=""){return new Dg(this._graph,A)}createAnimationChannel(A=""){return new C6(this._graph,A)}createAnimationSampler(A=""){return new C7(this._graph,A)}createAccessor(A="",Q=null){if(!Q)Q=this.getRoot().listBuffers()[0];return new fA(this._graph,A).setBuffer(Q)}createBuffer(A=""){return new Ng(this._graph,A)}}LJ._GRAPH_DOCUMENTS=new WeakMap;class tB{constructor(A){this.extensionName="",this.prereadTypes=[],this.prewriteTypes=[],this.readDependencies=[],this.writeDependencies=[],this.document=void 0,this.required=!1,this.properties=new Set,this._listener=void 0,this.document=A,A.getRoot()._enableExtension(this),this._listener=(B)=>{let Y=B,J=Y.target;if(J instanceof oB&&J.extensionName===this.extensionName){if(Y.type==="node:create")this._addExtensionProperty(J);if(Y.type==="node:dispose")this._removeExtensionProperty(J)}};let Q=A.getGraph();Q.addEventListener("node:create",this._listener),Q.addEventListener("node:dispose",this._listener)}dispose(){this.document.getRoot()._disableExtension(this);let A=this.document.getGraph();A.removeEventListener("node:create",this._listener),A.removeEventListener("node:dispose",this._listener);for(let Q of this.properties)Q.dispose()}static register(){}isRequired(){return this.required}setRequired(A){return this.required=A,this}listProperties(){return Array.from(this.properties)}_addExtensionProperty(A){return this.properties.add(A),this}_removeExtensionProperty(A){return this.properties.delete(A),this}install(A,Q){return this}preread(A,Q){return this}prewrite(A,Q){return this}}tB.EXTENSION_NAME=void 0;class dJA{constructor(A){this.jsonDoc=void 0,this.buffers=[],this.bufferViews=[],this.bufferViewBuffers=[],this.accessors=[],this.textures=[],this.textureInfos=new Map,this.materials=[],this.meshes=[],this.cameras=[],this.nodes=[],this.skins=[],this.animations=[],this.scenes=[],this.jsonDoc=A}setTextureInfo(A,Q){if(this.textureInfos.set(A,Q),Q.texCoord!==void 0)A.setTexCoord(Q.texCoord);if(Q.extras!==void 0)A.setExtras(Q.extras);let B=this.jsonDoc.json.textures[Q.index];if(B.sampler===void 0)return;let Y=this.jsonDoc.json.samplers[B.sampler];if(Y.magFilter!==void 0)A.setMagFilter(Y.magFilter);if(Y.minFilter!==void 0)A.setMinFilter(Y.minFilter);if(Y.wrapS!==void 0)A.setWrapS(Y.wrapS);if(Y.wrapT!==void 0)A.setWrapT(Y.wrapT)}}var yJA={logger:S9.DEFAULT_INSTANCE,extensions:[],dependencies:{}},cuQ=new Set([YA.BUFFER,YA.TEXTURE,YA.MATERIAL,YA.MESH,YA.PRIMITIVE,YA.NODE,YA.SCENE]);class cJA{static read(A,Q=yJA){let B=aJ({},yJA,Q),{json:Y}=A,J=new LJ().setLogger(B.logger);this.validate(A,B);let C=new dJA(A),X=Y.asset,G=J.getRoot().getAsset();if(X.copyright)G.copyright=X.copyright;if(X.extras)G.extras=X.extras;if(Y.extras!==void 0)J.getRoot().setExtras(aJ({},Y.extras));let W=Y.extensionsUsed||[],F=Y.extensionsRequired||[];B.extensions.sort((N,q)=>N.EXTENSION_NAME>q.EXTENSION_NAME?1:-1);for(let N of B.extensions)if(W.includes(N.EXTENSION_NAME)){let q=J.createExtension(N).setRequired(F.includes(N.EXTENSION_NAME)),w=q.prereadTypes.filter((P)=>!cuQ.has(P));if(w.length)B.logger.warn(`Preread hooks for some types (${w.join()}), requested by extension ${q.extensionName}, are unsupported. Please file an issue or a PR.`);for(let P of q.readDependencies)q.install(P,B.dependencies[P])}let Z=Y.buffers||[];J.getRoot().listExtensionsUsed().filter((N)=>N.prereadTypes.includes(YA.BUFFER)).forEach((N)=>N.preread(C,YA.BUFFER)),C.buffers=Z.map((N)=>{let q=J.createBuffer(N.name);if(N.extras)q.setExtras(N.extras);if(N.uri&&N.uri.indexOf("__")!==0)q.setURI(N.uri);return q});let U=Y.bufferViews||[];C.bufferViewBuffers=U.map((N,q)=>{if(!C.bufferViews[q]){let w=A.json.buffers[N.buffer],P=w.uri?A.resources[w.uri]:A.resources[fF],_=N.byteOffset||0;C.bufferViews[q]=jQ.toView(P,_,N.byteLength)}return C.buffers[N.buffer]});let $=Y.accessors||[];C.accessors=$.map((N)=>{let q=C.bufferViewBuffers[N.bufferView],w=J.createAccessor(N.name,q).setType(N.type);if(N.extras)w.setExtras(N.extras);if(N.normalized!==void 0)w.setNormalized(N.normalized);if(N.bufferView===void 0)return w;return w.setArray(n2(N,C)),w});let E=Y.images||[],K=Y.textures||[];J.getRoot().listExtensionsUsed().filter((N)=>N.prereadTypes.includes(YA.TEXTURE)).forEach((N)=>N.preread(C,YA.TEXTURE)),C.textures=E.map((N)=>{let q=J.createTexture(N.name);if(N.extras)q.setExtras(N.extras);if(N.bufferView!==void 0){let w=Y.bufferViews[N.bufferView],P=A.json.buffers[w.buffer],_=P.uri?A.resources[P.uri]:A.resources[fF],j=w.byteOffset||0,k=w.byteLength,T=_.slice(j,j+k);q.setImage(T)}else if(N.uri!==void 0){if(q.setImage(A.resources[N.uri]),N.uri.indexOf("__")!==0)q.setURI(N.uri)}if(N.mimeType!==void 0)q.setMimeType(N.mimeType);else if(N.uri){let w=J6.extension(N.uri);q.setMimeType(F8.extensionToMimeType(w))}return q}),J.getRoot().listExtensionsUsed().filter((N)=>N.prereadTypes.includes(YA.MATERIAL)).forEach((N)=>N.preread(C,YA.MATERIAL));let I=Y.materials||[];C.materials=I.map((N)=>{let q=J.createMaterial(N.name);if(N.extras)q.setExtras(N.extras);if(N.alphaMode!==void 0)q.setAlphaMode(N.alphaMode);if(N.alphaCutoff!==void 0)q.setAlphaCutoff(N.alphaCutoff);if(N.doubleSided!==void 0)q.setDoubleSided(N.doubleSided);let w=N.pbrMetallicRoughness||{};if(w.baseColorFactor!==void 0)q.setBaseColorFactor(w.baseColorFactor);if(N.emissiveFactor!==void 0)q.setEmissiveFactor(N.emissiveFactor);if(w.metallicFactor!==void 0)q.setMetallicFactor(w.metallicFactor);if(w.roughnessFactor!==void 0)q.setRoughnessFactor(w.roughnessFactor);if(w.baseColorTexture!==void 0){let P=w.baseColorTexture,_=C.textures[K[P.index].source];q.setBaseColorTexture(_),C.setTextureInfo(q.getBaseColorTextureInfo(),P)}if(N.emissiveTexture!==void 0){let P=N.emissiveTexture,_=C.textures[K[P.index].source];q.setEmissiveTexture(_),C.setTextureInfo(q.getEmissiveTextureInfo(),P)}if(N.normalTexture!==void 0){let P=N.normalTexture,_=C.textures[K[P.index].source];if(q.setNormalTexture(_),C.setTextureInfo(q.getNormalTextureInfo(),P),N.normalTexture.scale!==void 0)q.setNormalScale(N.normalTexture.scale)}if(N.occlusionTexture!==void 0){let P=N.occlusionTexture,_=C.textures[K[P.index].source];if(q.setOcclusionTexture(_),C.setTextureInfo(q.getOcclusionTextureInfo(),P),N.occlusionTexture.strength!==void 0)q.setOcclusionStrength(N.occlusionTexture.strength)}if(w.metallicRoughnessTexture!==void 0){let P=w.metallicRoughnessTexture,_=C.textures[K[P.index].source];q.setMetallicRoughnessTexture(_),C.setTextureInfo(q.getMetallicRoughnessTextureInfo(),P)}return q}),J.getRoot().listExtensionsUsed().filter((N)=>N.prereadTypes.includes(YA.MESH)).forEach((N)=>N.preread(C,YA.MESH));let V=Y.meshes||[];J.getRoot().listExtensionsUsed().filter((N)=>N.prereadTypes.includes(YA.PRIMITIVE)).forEach((N)=>N.preread(C,YA.PRIMITIVE)),C.meshes=V.map((N)=>{let q=J.createMesh(N.name);if(N.extras)q.setExtras(N.extras);if(N.weights!==void 0)q.setWeights(N.weights);return(N.primitives||[]).forEach((P)=>{let _=J.createPrimitive();if(P.extras)_.setExtras(P.extras);if(P.material!==void 0)_.setMaterial(C.materials[P.material]);if(P.mode!==void 0)_.setMode(P.mode);for(let[T,S]of Object.entries(P.attributes||{}))_.setAttribute(T,C.accessors[S]);if(P.indices!==void 0)_.setIndices(C.accessors[P.indices]);let j=N.extras&&N.extras.targetNames||[];(P.targets||[]).forEach((T,S)=>{let v=j[S]||S.toString(),y=J.createPrimitiveTarget(v);for(let[h,g]of Object.entries(T))y.setAttribute(h,C.accessors[g]);_.addTarget(y)}),q.addPrimitive(_)}),q});let H=Y.cameras||[];C.cameras=H.map((N)=>{let q=J.createCamera(N.name).setType(N.type);if(N.extras)q.setExtras(N.extras);if(N.type===bF.Type.PERSPECTIVE){let w=N.perspective;if(q.setYFov(w.yfov),q.setZNear(w.znear),w.zfar!==void 0)q.setZFar(w.zfar);if(w.aspectRatio!==void 0)q.setAspectRatio(w.aspectRatio)}else{let w=N.orthographic;q.setZNear(w.znear).setZFar(w.zfar).setXMag(w.xmag).setYMag(w.ymag)}return q});let D=Y.nodes||[];J.getRoot().listExtensionsUsed().filter((N)=>N.prereadTypes.includes(YA.NODE)).forEach((N)=>N.preread(C,YA.NODE)),C.nodes=D.map((N)=>{let q=J.createNode(N.name);if(N.extras)q.setExtras(N.extras);if(N.translation!==void 0)q.setTranslation(N.translation);if(N.rotation!==void 0)q.setRotation(N.rotation);if(N.scale!==void 0)q.setScale(N.scale);if(N.matrix!==void 0){let w=[0,0,0],P=[0,0,0,1],_=[1,1,1];kQ.decompose(N.matrix,w,P,_),q.setTranslation(w),q.setRotation(P),q.setScale(_)}if(N.weights!==void 0)q.setWeights(N.weights);return q});let L=Y.skins||[];C.skins=L.map((N)=>{let q=J.createSkin(N.name);if(N.extras)q.setExtras(N.extras);if(N.inverseBindMatrices!==void 0)q.setInverseBindMatrices(C.accessors[N.inverseBindMatrices]);if(N.skeleton!==void 0)q.setSkeleton(C.nodes[N.skeleton]);for(let w of N.joints)q.addJoint(C.nodes[w]);return q}),D.map((N,q)=>{let w=C.nodes[q];if((N.children||[]).forEach((_)=>w.addChild(C.nodes[_])),N.mesh!==void 0)w.setMesh(C.meshes[N.mesh]);if(N.camera!==void 0)w.setCamera(C.cameras[N.camera]);if(N.skin!==void 0)w.setSkin(C.skins[N.skin])});let z=Y.animations||[];C.animations=z.map((N)=>{let q=J.createAnimation(N.name);if(N.extras)q.setExtras(N.extras);let P=(N.samplers||[]).map((j)=>{let k=J.createAnimationSampler().setInput(C.accessors[j.input]).setOutput(C.accessors[j.output]).setInterpolation(j.interpolation||C7.Interpolation.LINEAR);if(j.extras)k.setExtras(j.extras);return q.addSampler(k),k});return(N.channels||[]).forEach((j)=>{let k=J.createAnimationChannel().setSampler(P[j.sampler]).setTargetPath(j.target.path);if(j.target.node!==void 0)k.setTargetNode(C.nodes[j.target.node]);if(j.extras)k.setExtras(j.extras);q.addChannel(k)}),q});let M=Y.scenes||[];if(J.getRoot().listExtensionsUsed().filter((N)=>N.prereadTypes.includes(YA.SCENE)).forEach((N)=>N.preread(C,YA.SCENE)),C.scenes=M.map((N)=>{let q=J.createScene(N.name);if(N.extras)q.setExtras(N.extras);return(N.nodes||[]).map((P)=>C.nodes[P]).forEach((P)=>q.addChild(P)),q}),Y.scene!==void 0)J.getRoot().setDefaultScene(C.scenes[Y.scene]);return J.getRoot().listExtensionsUsed().forEach((N)=>N.read(C)),$.forEach((N,q)=>{let w=C.accessors[q],P=!!N.sparse,_=!N.bufferView&&!w.getArray();if(P||_)w.setSparse(!0).setArray(puQ(N,C))}),J}static validate(A,Q){let B=A.json;if(B.asset.version!=="2.0")throw Error(`Unsupported glTF version, "${B.asset.version}".`);if(B.extensionsRequired){for(let Y of B.extensionsRequired)if(!Q.extensions.find((J)=>J.EXTENSION_NAME===Y))throw Error(`Missing required extension, "${Y}".`)}if(B.extensionsUsed){for(let Y of B.extensionsUsed)if(!Q.extensions.find((J)=>J.EXTENSION_NAME===Y))Q.logger.warn(`Missing optional extension, "${Y}".`)}}}function luQ(A,Q){let B=Q.jsonDoc,Y=Q.bufferViews[A.bufferView],J=B.json.bufferViews[A.bufferView],C=J7[A.componentType],X=fA.getElementSize(A.type),G=C.BYTES_PER_ELEMENT,W=A.byteOffset||0,F=new C(A.count*X),Z=new DataView(Y.buffer,Y.byteOffset,Y.byteLength),U=J.byteStride;for(let $=0;$1,()=>B.basename||"buffer"),this.imageURIGenerator=new Ig(C>1,(X)=>iuQ(A,X)||B.basename||"texture"),this.logger=A.getLogger()}createTextureInfoDef(A,Q){let B={magFilter:Q.getMagFilter()||void 0,minFilter:Q.getMinFilter()||void 0,wrapS:Q.getWrapS(),wrapT:Q.getWrapT()},Y=JSON.stringify(B);if(!this.samplerDefIndexMap.has(Y))this.samplerDefIndexMap.set(Y,this.jsonDoc.json.samplers.length),this.jsonDoc.json.samplers.push(B);let J={source:this.imageIndexMap.get(A),sampler:this.samplerDefIndexMap.get(Y)},C=JSON.stringify(J);if(!this.textureDefIndexMap.has(C))this.textureDefIndexMap.set(C,this.jsonDoc.json.textures.length),this.jsonDoc.json.textures.push(J);let X={index:this.textureDefIndexMap.get(C)};if(Q.getTexCoord()!==0)X.texCoord=Q.getTexCoord();if(Object.keys(Q.getExtras()).length>0)X.extras=Q.getExtras();return this.textureInfoDefMap.set(Q,X),X}createPropertyDef(A){let Q={};if(A.getName())Q.name=A.getName();if(Object.keys(A.getExtras()).length>0)Q.extras=A.getExtras();return Q}createAccessorDef(A){let Q=this.createPropertyDef(A);if(Q.type=A.getType(),Q.componentType=A.getComponentType(),Q.count=A.getCount(),this._doc.getGraph().listParentEdges(A).some((Y)=>Y.getName()==="attributes"&&Y.getAttributes().key==="POSITION"||Y.getName()==="input"))Q.max=A.getMax([]).map(Math.fround),Q.min=A.getMin([]).map(Math.fround);if(A.getNormalized())Q.normalized=A.getNormalized();return Q}createImageData(A,Q,B){if(this.options.format===Y6.GLB)this.imageBufferViews.push(Q),A.bufferView=this.jsonDoc.json.bufferViews.length,this.jsonDoc.json.bufferViews.push({buffer:0,byteOffset:-1,byteLength:Q.byteLength});else{let Y=F8.mimeTypeToExtension(B.getMimeType());A.uri=this.imageURIGenerator.createURI(B,Y),this.assignResourceURI(A.uri,Q,!1)}}assignResourceURI(A,Q,B){let Y=this.jsonDoc.resources;if(!(A in Y)){Y[A]=Q;return}if(Q===Y[A]){this.logger.warn(`Duplicate resource URI, "${A}".`);return}let J=`Resource URI "${A}" already assigned to different data.`;if(!B){this.logger.warn(J);return}throw Error(J)}getAccessorUsage(A){let Q=this._accessorUsageMap.get(A);if(Q)return Q;if(A.getSparse())return Z8.SPARSE;for(let B of this._doc.getGraph().listParentEdges(A)){let{usage:Y}=B.getAttributes();if(Y)return Y;if(B.getParent().propertyType!==YA.ROOT)this.logger.warn(`Missing attribute ".usage" on edge, "${B.getName()}".`)}return Z8.OTHER}addAccessorToUsageGroup(A,Q){let B=this._accessorUsageMap.get(A);if(B&&B!==Q)throw Error(`Accessor with usage "${B}" cannot be reused as "${Q}".`);return this._accessorUsageMap.set(A,Q),this}}W5.BufferViewTarget=uI;W5.BufferViewUsage=Z8;W5.USAGE_TO_TARGET={[Z8.ARRAY_BUFFER]:uI.ARRAY_BUFFER,[Z8.ELEMENT_ARRAY_BUFFER]:uI.ELEMENT_ARRAY_BUFFER};class Ig{constructor(A,Q){this.multiple=void 0,this.basename=void 0,this.counter={},this.multiple=A,this.basename=Q}createURI(A,Q){if(A.getURI())return A.getURI();else if(!this.multiple)return`${this.basename(A)}.${Q}`;else{let B=this.basename(A);return this.counter[B]=this.counter[B]||1,`${B}_${this.counter[B]++}.${Q}`}}}function iuQ(A,Q){let B=A.getGraph().listParentEdges(Q).find((Y)=>Y.getParent()!==A.getRoot());return B?B.getName().replace(/texture$/i,""):""}var{BufferViewUsage:i2}=W5,{UNSIGNED_INT:nuQ,UNSIGNED_SHORT:suQ,UNSIGNED_BYTE:ruQ}=fA.ComponentType,auQ=new Set([YA.ACCESSOR,YA.BUFFER,YA.MATERIAL,YA.MESH]);class lJA{static write(A,Q){let B=A.getGraph(),Y=A.getRoot(),J={asset:aJ({generator:`glTF-Transform ${hJA}`},Y.getAsset()),extras:aJ({},Y.getExtras())},C={json:J,resources:{}},X=new W5(A,C,Q),G=Q.logger||S9.DEFAULT_INSTANCE,W=new Set(Q.extensions.map((V)=>V.EXTENSION_NAME)),F=A.getRoot().listExtensionsUsed().filter((V)=>W.has(V.extensionName)).sort((V,H)=>V.extensionName>H.extensionName?1:-1),Z=A.getRoot().listExtensionsRequired().filter((V)=>W.has(V.extensionName)).sort((V,H)=>V.extensionName>H.extensionName?1:-1);if(F.length!auQ.has(D));if(H.length)G.warn(`Prewrite hooks for some types (${H.join()}), requested by extension ${V.extensionName}, are unsupported. Please file an issue or a PR.`);for(let D of V.writeDependencies)V.install(D,Q.dependencies[D])}function U(V,H,D,L){let z=[],M=0;for(let w of V){let P=X.createAccessorDef(w);P.bufferView=J.bufferViews.length;let _=w.getArray(),j=jQ.pad(jQ.toView(_));P.byteOffset=M,M+=j.byteLength,z.push(j),X.accessorIndexMap.set(w,J.accessors.length),J.accessors.push(P)}let N=jQ.concat(z),q={buffer:H,byteOffset:D,byteLength:N.byteLength};if(L)q.target=L;return J.bufferViews.push(q),{buffers:z,byteLength:M}}function $(V,H,D){let L=V[0].getCount(),z=0;for(let P of V){let _=X.createAccessorDef(P);_.bufferView=J.bufferViews.length,_.byteOffset=z;let j=P.getElementSize(),k=P.getComponentSize();z+=jQ.padNumber(j*k),X.accessorIndexMap.set(P,J.accessors.length),J.accessors.push(_)}let M=L*z,N=new ArrayBuffer(M),q=new DataView(N);for(let P=0;PS.getCount()/2)q=!0;let p=J7[S.getComponentType()];i.indices=y,i.values=new p(h)}if(!Number.isFinite(N))return{buffers:L,byteLength:z};if(q)G.warn("Some sparse accessors have >50% non-zero elements, which may increase file size.");let w=N<255?Uint8Array:N<65535?Uint16Array:Uint32Array,P=N<255?ruQ:N<65535?suQ:nuQ,_={buffer:H,byteOffset:D+z,byteLength:0};for(let S of V){let v=M.get(S);if(v.count===0)continue;v.indicesByteOffset=_.byteLength;let y=jQ.pad(jQ.toView(new w(v.indices)));L.push(y),z+=y.byteLength,_.byteLength+=y.byteLength}J.bufferViews.push(_);let j=J.bufferViews.length-1,k={buffer:H,byteOffset:D+z,byteLength:0};for(let S of V){let v=M.get(S);if(v.count===0)continue;v.valuesByteOffset=k.byteLength;let y=jQ.pad(jQ.toView(v.values));L.push(y),z+=y.byteLength,k.byteLength+=y.byteLength}J.bufferViews.push(k);let T=J.bufferViews.length-1;for(let S of V){let v=M.get(S);if(v.count===0)continue;v.accessorDef.sparse={count:v.count,indices:{bufferView:j,byteOffset:v.indicesByteOffset,componentType:P},values:{bufferView:T,byteOffset:v.valuesByteOffset}}}return{buffers:L,byteLength:z}}if(J.accessors=[],J.bufferViews=[],J.samplers=[],J.textures=[],J.images=Y.listTextures().map((V,H)=>{let D=X.createPropertyDef(V);if(V.getMimeType())D.mimeType=V.getMimeType();let L=V.getImage();if(L)X.createImageData(D,L,V);return X.imageIndexMap.set(V,H),D}),F.filter((V)=>V.prewriteTypes.includes(YA.ACCESSOR)).forEach((V)=>V.prewrite(X,YA.ACCESSOR)),Y.listAccessors().forEach((V)=>{let{accessorUsageGroupedByParent:H,accessorParents:D}=X;if(X.accessorIndexMap.has(V))return;let L=X.getAccessorUsage(V);if(X.addAccessorToUsageGroup(V,L),H.has(L)){let z=B.listParents(V).find((M)=>M.propertyType!==YA.ROOT);D.set(V,z)}}),F.filter((V)=>V.prewriteTypes.includes(YA.BUFFER)).forEach((V)=>V.prewrite(X,YA.BUFFER)),(Y.listAccessors().length>0||X.otherBufferViews.size>0||Y.listTextures().length>0&&Q.format===Y6.GLB)&&Y.listBuffers().length===0)throw Error("Buffer required for Document resources, but none was found.");if(J.buffers=[],Y.listBuffers().forEach((V,H)=>{let D=X.createPropertyDef(V),L=X.accessorUsageGroupedByParent,z=V.listParents().filter((k)=>k instanceof fA),M=new Set(z.map((k)=>X.accessorParents.get(k))),N=new Map(Array.from(M).map((k,T)=>[k,T])),q={};for(let k of z){var w;if(X.accessorIndexMap.has(k))continue;let T=X.getAccessorUsage(k),S=T;if(L.has(T)){let v=X.accessorParents.get(k);S+=`:${N.get(v)}`}q[w=S]||(q[w]={usage:T,accessors:[]}),q[S].accessors.push(k)}let P=[],_=J.buffers.length,j=0;for(let{usage:k,accessors:T}of Object.values(q))if(k===i2.ARRAY_BUFFER&&Q.vertexLayout===s2.INTERLEAVED){let S=$(T,_,j);j+=S.byteLength;for(let v of S.buffers)P.push(v)}else if(k===i2.ARRAY_BUFFER)for(let S of T){let v=$([S],_,j);j+=v.byteLength;for(let y of v.buffers)P.push(y)}else if(k===i2.SPARSE){let S=E(T,_,j);j+=S.byteLength;for(let v of S.buffers)P.push(v)}else if(k===i2.ELEMENT_ARRAY_BUFFER){let S=W5.BufferViewTarget.ELEMENT_ARRAY_BUFFER,v=U(T,_,j,S);j+=v.byteLength;for(let y of v.buffers)P.push(y)}else{let S=U(T,_,j);j+=S.byteLength;for(let v of S.buffers)P.push(v)}if(X.imageBufferViews.length&&H===0){for(let k=0;k!V.getBuffer()))G.warn("Skipped writing one or more Accessors: no Buffer assigned.");F.filter((V)=>V.prewriteTypes.includes(YA.MATERIAL)).forEach((V)=>V.prewrite(X,YA.MATERIAL)),J.materials=Y.listMaterials().map((V,H)=>{let D=X.createPropertyDef(V);if(V.getAlphaMode()!==y1.AlphaMode.OPAQUE)D.alphaMode=V.getAlphaMode();if(V.getAlphaMode()===y1.AlphaMode.MASK)D.alphaCutoff=V.getAlphaCutoff();if(V.getDoubleSided())D.doubleSided=!0;if(D.pbrMetallicRoughness={},!kQ.eq(V.getBaseColorFactor(),[1,1,1,1]))D.pbrMetallicRoughness.baseColorFactor=V.getBaseColorFactor();if(!kQ.eq(V.getEmissiveFactor(),[0,0,0]))D.emissiveFactor=V.getEmissiveFactor();if(V.getRoughnessFactor()!==1)D.pbrMetallicRoughness.roughnessFactor=V.getRoughnessFactor();if(V.getMetallicFactor()!==1)D.pbrMetallicRoughness.metallicFactor=V.getMetallicFactor();if(V.getBaseColorTexture()){let L=V.getBaseColorTexture(),z=V.getBaseColorTextureInfo();D.pbrMetallicRoughness.baseColorTexture=X.createTextureInfoDef(L,z)}if(V.getEmissiveTexture()){let L=V.getEmissiveTexture(),z=V.getEmissiveTextureInfo();D.emissiveTexture=X.createTextureInfoDef(L,z)}if(V.getNormalTexture()){let L=V.getNormalTexture(),z=V.getNormalTextureInfo(),M=X.createTextureInfoDef(L,z);if(V.getNormalScale()!==1)M.scale=V.getNormalScale();D.normalTexture=M}if(V.getOcclusionTexture()){let L=V.getOcclusionTexture(),z=V.getOcclusionTextureInfo(),M=X.createTextureInfoDef(L,z);if(V.getOcclusionStrength()!==1)M.strength=V.getOcclusionStrength();D.occlusionTexture=M}if(V.getMetallicRoughnessTexture()){let L=V.getMetallicRoughnessTexture(),z=V.getMetallicRoughnessTextureInfo();D.pbrMetallicRoughness.metallicRoughnessTexture=X.createTextureInfoDef(L,z)}return X.materialIndexMap.set(V,H),D}),F.filter((V)=>V.prewriteTypes.includes(YA.MESH)).forEach((V)=>V.prewrite(X,YA.MESH)),J.meshes=Y.listMeshes().map((V,H)=>{let D=X.createPropertyDef(V),L=null;if(D.primitives=V.listPrimitives().map((z)=>{let M={attributes:{}};M.mode=z.getMode();let N=z.getMaterial();if(N)M.material=X.materialIndexMap.get(N);if(Object.keys(z.getExtras()).length)M.extras=z.getExtras();let q=z.getIndices();if(q)M.indices=X.accessorIndexMap.get(q);for(let w of z.listSemantics())M.attributes[w]=X.accessorIndexMap.get(z.getAttribute(w));for(let w of z.listTargets()){let P={};for(let _ of w.listSemantics())P[_]=X.accessorIndexMap.get(w.getAttribute(_));M.targets=M.targets||[],M.targets.push(P)}if(z.listTargets().length&&!L)L=z.listTargets().map((w)=>w.getName());return M}),V.getWeights().length)D.weights=V.getWeights();if(L)D.extras=D.extras||{},D.extras.targetNames=L;return X.meshIndexMap.set(V,H),D}),J.cameras=Y.listCameras().map((V,H)=>{let D=X.createPropertyDef(V);if(D.type=V.getType(),D.type===bF.Type.PERSPECTIVE){D.perspective={znear:V.getZNear(),zfar:V.getZFar(),yfov:V.getYFov()};let L=V.getAspectRatio();if(L!==null)D.perspective.aspectRatio=L}else D.orthographic={znear:V.getZNear(),zfar:V.getZFar(),xmag:V.getXMag(),ymag:V.getYMag()};return X.cameraIndexMap.set(V,H),D}),J.nodes=Y.listNodes().map((V,H)=>{let D=X.createPropertyDef(V);if(!kQ.eq(V.getTranslation(),[0,0,0]))D.translation=V.getTranslation();if(!kQ.eq(V.getRotation(),[0,0,0,1]))D.rotation=V.getRotation();if(!kQ.eq(V.getScale(),[1,1,1]))D.scale=V.getScale();if(V.getWeights().length)D.weights=V.getWeights();return X.nodeIndexMap.set(V,H),D}),J.skins=Y.listSkins().map((V,H)=>{let D=X.createPropertyDef(V),L=V.getInverseBindMatrices();if(L)D.inverseBindMatrices=X.accessorIndexMap.get(L);let z=V.getSkeleton();if(z)D.skeleton=X.nodeIndexMap.get(z);return D.joints=V.listJoints().map((M)=>X.nodeIndexMap.get(M)),X.skinIndexMap.set(V,H),D}),Y.listNodes().forEach((V,H)=>{let D=J.nodes[H],L=V.getMesh();if(L)D.mesh=X.meshIndexMap.get(L);let z=V.getCamera();if(z)D.camera=X.cameraIndexMap.get(z);let M=V.getSkin();if(M)D.skin=X.skinIndexMap.get(M);if(V.listChildren().length>0)D.children=V.listChildren().map((N)=>X.nodeIndexMap.get(N))}),J.animations=Y.listAnimations().map((V,H)=>{let D=X.createPropertyDef(V),L=new Map;return D.samplers=V.listSamplers().map((z,M)=>{let N=X.createPropertyDef(z);return N.input=X.accessorIndexMap.get(z.getInput()),N.output=X.accessorIndexMap.get(z.getOutput()),N.interpolation=z.getInterpolation(),L.set(z,M),N}),D.channels=V.listChannels().map((z)=>{let M=X.createPropertyDef(z);return M.sampler=L.get(z.getSampler()),M.target={node:X.nodeIndexMap.get(z.getTargetNode()),path:z.getTargetPath()},M}),X.animationIndexMap.set(V,H),D}),J.scenes=Y.listScenes().map((V,H)=>{let D=X.createPropertyDef(V);return D.nodes=V.listChildren().map((L)=>X.nodeIndexMap.get(L)),X.sceneIndexMap.set(V,H),D});let I=Y.getDefaultScene();if(I)J.scene=Y.listScenes().indexOf(I);return J.extensionsUsed=F.map((V)=>V.extensionName),J.extensionsRequired=Z.map((V)=>V.extensionName),F.forEach((V)=>V.write(X)),ouQ(J),C}}function ouQ(A){let Q=[];for(let B in A){let Y=A[B];if(Array.isArray(Y)&&Y.length===0)Q.push(B);else if(Y===null||Y==="")Q.push(B);else if(Y&&typeof Y==="object"&&Object.keys(Y).length===0)Q.push(B)}for(let B of Q)delete A[B]}var a2;(function(A){A[A.JSON=1313821514]="JSON",A[A.BIN=5130562]="BIN"})(a2||(a2={}));class pJA{constructor(){this._logger=S9.DEFAULT_INSTANCE,this._extensions=new Set,this._dependencies={},this._vertexLayout=s2.INTERLEAVED,this.lastReadBytes=0,this.lastWriteBytes=0}setLogger(A){return this._logger=A,this}registerExtensions(A){for(let Q of A)this._extensions.add(Q),Q.register();return this}registerDependencies(A){return Object.assign(this._dependencies,A),this}setVertexLayout(A){return this._vertexLayout=A,this}async read(A){return await this.readJSON(await this.readAsJSON(A))}async readAsJSON(A){let Q=await this.readURI(A,"view");this.lastReadBytes=Q.byteLength;let B=gJA(Q)?this._binaryToJSON(Q):{json:JSON.parse(jQ.decodeText(Q)),resources:{}};return await this._readResourcesExternal(B,this.dirname(A)),this._readResourcesInternal(B),B}async readJSON(A){return A=this._copyJSON(A),this._readResourcesInternal(A),cJA.read(A,{extensions:Array.from(this._extensions),dependencies:this._dependencies,logger:this._logger})}async binaryToJSON(A){let Q=this._binaryToJSON(jQ.assertView(A));this._readResourcesInternal(Q);let B=Q.json;if(B.buffers&&B.buffers.some((Y)=>tuQ(Q,Y)))throw Error("Cannot resolve external buffers with binaryToJSON().");else if(B.images&&B.images.some((Y)=>euQ(Q,Y)))throw Error("Cannot resolve external images with binaryToJSON().");return Q}async readBinary(A){return this.readJSON(await this.binaryToJSON(jQ.assertView(A)))}async writeJSON(A,Q={}){if(Q.format===Y6.GLB&&A.getRoot().listBuffers().length>1)throw Error("GLB must have 0–1 buffers.");return lJA.write(A,{format:Q.format||Y6.GLTF,basename:Q.basename||"",logger:this._logger,vertexLayout:this._vertexLayout,dependencies:aJ({},this._dependencies),extensions:Array.from(this._extensions)})}async writeBinary(A){let{json:Q,resources:B}=await this.writeJSON(A,{format:Y6.GLB}),Y=new Uint32Array([1179937895,2,12]),J=JSON.stringify(Q),C=jQ.pad(jQ.encodeText(J),32),X=jQ.toView(new Uint32Array([C.byteLength,1313821514])),G=jQ.concat([X,C]);Y[Y.length-1]+=G.byteLength;let W=Object.values(B)[0];if(!W||!W.byteLength)return jQ.concat([jQ.toView(Y),G]);let F=jQ.pad(W,0),Z=jQ.toView(new Uint32Array([F.byteLength,5130562])),U=jQ.concat([Z,F]);return Y[Y.length-1]+=U.byteLength,jQ.concat([jQ.toView(Y),G,U])}async _readResourcesExternal(A,Q){var B=this;let Y=A.json.images||[],J=A.json.buffers||[],C=[...Y,...J].map(async function(X){let G=X.uri;if(!G||G.match(/data:/))return Promise.resolve();A.resources[G]=await B.readURI(B.resolve(Q,G),"view"),B.lastReadBytes+=A.resources[G].byteLength});await Promise.all(C)}_readResourcesInternal(A){function Q(J){if(!J.uri)return;if(J.uri in A.resources){jQ.assertView(A.resources[J.uri]);return}if(J.uri.match(/data:/)){let C=`__${uJA()}.${J6.extension(J.uri)}`;A.resources[C]=jQ.createBufferFromDataURI(J.uri),J.uri=C}}(A.json.images||[]).forEach((J)=>{if(J.bufferView===void 0&&J.uri===void 0)throw Error("Missing resource URI or buffer view.");Q(J)}),(A.json.buffers||[]).forEach(Q)}_copyJSON(A){let{images:Q,buffers:B}=A.json;if(A={json:aJ({},A.json),resources:aJ({},A.resources)},Q)A.json.images=Q.map((Y)=>aJ({},Y));if(B)A.json.buffers=B.map((Y)=>aJ({},Y));return A}_binaryToJSON(A){if(!gJA(A))throw Error("Invalid glTF 2.0 binary.");let Q=new Uint32Array(A.buffer,A.byteOffset+12,2);if(Q[1]!==a2.JSON)throw Error("Missing required GLB JSON chunk.");let B=20,Y=Q[0],J=jQ.decodeText(jQ.toView(A,B,Y)),C=JSON.parse(J),X=B+Y;if(A.byteLength<=X)return{json:C,resources:{}};let G=new Uint32Array(A.buffer,A.byteOffset+X,2);if(G[1]!==a2.BIN)return{json:C,resources:{}};let W=G[0],F=jQ.toView(A,X+8,W);return{json:C,resources:{[fF]:F}}}}function tuQ(A,Q){return Q.uri!==void 0&&!(Q.uri in A.resources)}function euQ(A,Q){return Q.uri!==void 0&&!(Q.uri in A.resources)&&Q.bufferView===void 0}function gJA(A){if(A.byteLength<3*Uint32Array.BYTES_PER_ELEMENT)return!1;let Q=new Uint32Array(A.buffer,A.byteOffset,3);return Q[0]===1179937895&&Q[1]===2}class i4 extends pJA{constructor(A=null,Q=G5.DEFAULT_INIT){super();this._fetch=void 0,this._fetchConfig=void 0,this._init=void 0,this._fetchEnabled=!1,this._fetch=A,this._fetchConfig=Q,this._init=this.init()}async init(){if(this._init)return this._init;return Promise.all([import("fs"),import("path")]).then(([A,Q])=>{this._fs=A.promises,this._path=Q})}setAllowNetwork(A){if(A&&!this._fetch)throw Error("NodeIO requires a Fetch API implementation for HTTP requests.");return this._fetchEnabled=A,this}async readURI(A,Q){if(await this.init(),G5.isAbsoluteURL(A)){if(!this._fetchEnabled||!this._fetch)throw Error("Network request blocked. Allow HTTP requests explicitly, if needed.");let B=await this._fetch(A,this._fetchConfig);switch(Q){case"view":return new Uint8Array(await B.arrayBuffer());case"text":return B.text()}}else switch(Q){case"view":return this._fs.readFile(A);case"text":return this._fs.readFile(A,"utf8")}}resolve(A,Q){if(G5.isAbsoluteURL(A)||G5.isAbsoluteURL(Q))return G5.resolve(A,Q);return this._path.resolve(A,decodeURIComponent(Q))}dirname(A){if(G5.isAbsoluteURL(A))return G5.dirname(A);return this._path.dirname(A)}async write(A,Q){await this.init(),await(!!A.match(/\.glb$/)?this._writeGLB(A,Q):this._writeGLTF(A,Q))}async _writeGLTF(A,Q){var B=this;this.lastWriteBytes=0;let{json:Y,resources:J}=await this.writeJSON(Q,{format:Y6.GLTF,basename:J6.basename(A)}),{_fs:C,_path:X}=this,G=X.dirname(A),W=JSON.stringify(Y,null,2);await C.writeFile(A,W),this.lastWriteBytes+=W.length;for(let F of AdQ(Object.keys(J),10))await Promise.all(F.map(async function(Z){if(G5.isAbsoluteURL(Z)){if(G5.extension(Z)==="bin")throw Error(`Cannot write buffer to path "${Z}".`);return}let U=X.join(G,decodeURIComponent(Z));await C.mkdir(X.dirname(U),{recursive:!0}),await C.writeFile(U,J[Z]),B.lastWriteBytes+=J[Z].byteLength}))}async _writeGLB(A,Q){let B=await this.writeBinary(Q);await this._fs.writeFile(A,B),this.lastWriteBytes=B.byteLength}}function AdQ(A,Q){let B=[];for(let Y=0,J=A.length;Y{if(!Y.extensions||!Y.extensions[X6])return;let C=Y.extensions[X6],X=this.createInstancedMesh();for(let G in C.attributes)X.setAttribute(G,A.accessors[C.attributes[G]]);A.nodes[J].setExtension(X6,X)}),this}prewrite(A){A.accessorUsageGroupedByParent.add(zg);for(let Q of this.properties)for(let B of Q.listAttributes())A.addAccessorToUsageGroup(B,zg);return this}write(A){let Q=A.jsonDoc;return this.document.getRoot().listNodes().forEach((B)=>{let Y=B.getExtension(X6);if(Y){let J=A.nodeIndexMap.get(B),C=Q.json.nodes[J],X={attributes:{}};Y.listSemantics().forEach((G)=>{let W=Y.getAttribute(G);X.attributes[G]=A.accessorIndexMap.get(W)}),C.extensions=C.extensions||{},C.extensions[X6]=X}}),this}}Y3.EXTENSION_NAME=X6;function L6(){return L6=Object.assign?Object.assign.bind():function(A){for(var Q=1;Q8?8:4,X.componentType=C>8?rJA:YdQ,X.normalized=!0,G=A.getElementSize()===3?WdQ(G):G,X.array=Q.encodeFilterOct(G,A.getCount(),X.byteStride,C);break;case d0.QUATERNION:X.byteStride=8,X.componentType=rJA,X.normalized=!0,X.array=Q.encodeFilterQuat(G,A.getCount(),X.byteStride,C);break;default:throw Error("Invalid filter.")}if(X.min=A.getMin([]),X.max=A.getMax([]),A.getNormalized())X.min=X.min.map((W)=>Rg(W,A.getComponentType())),X.max=X.max.map((W)=>Rg(W,A.getComponentType()));if(X.normalized)X.min=X.min.map((W)=>aJA(W,X.componentType)),X.max=X.max.map((W)=>aJA(W,X.componentType))}else if(X.byteStride%4)X.array=GdQ(X.array,A.getElementSize()),X.byteStride=X.array.byteLength/A.getCount();return X}function XdQ(A){let Q=A.getComponentType(),B=A.getArray(),Y=new Float32Array(B.length);for(let J=0;J{return Y instanceof q0&&Y.getMode()===q0.Mode.TRIANGLES})?s4.TRIANGLES:s4.INDICES;return s4.ATTRIBUTES}function ZdQ(A,Q){let B=Q.getGraph().listParentEdges(A).filter((Y)=>!(Y.getParent()instanceof p4));for(let Y of B){let J=Y.getName(),C=Y.getAttributes().key||"",X=Y.getParent().propertyType===YA.PRIMITIVE_TARGET;if(J==="indices")return{filter:d0.NONE};if(J==="attributes"){if(C==="POSITION")return{filter:d0.NONE};if(C==="TEXCOORD_0")return{filter:d0.NONE};if(C.startsWith("JOINTS_"))return{filter:d0.NONE};if(C.startsWith("WEIGHTS_"))return{filter:d0.NONE};if(C==="NORMAL"||C==="TANGENT")return X?{filter:d0.NONE}:{filter:d0.OCTAHEDRAL,bits:8}}if(J==="output"){let G=W9A(A);if(G==="rotation")return{filter:d0.QUATERNION,bits:16};if(G==="translation")return{filter:d0.EXPONENTIAL,bits:12};if(G==="scale")return{filter:d0.EXPONENTIAL,bits:12};return{filter:d0.NONE}}if(J==="input")return{filter:d0.NONE};if(J==="inverseBindMatrices")return{filter:d0.NONE}}return{filter:d0.NONE}}function W9A(A){for(let Q of A.listParents()){if(!(Q instanceof C7))continue;for(let B of Q.listParents()){if(!(B instanceof C6))continue;return B.getTargetPath()}}return null}var oJA={method:nI.QUANTIZE};class rI extends tB{constructor(...A){super(...A);this.extensionName=CJ,this.prereadTypes=[YA.BUFFER,YA.PRIMITIVE],this.prewriteTypes=[YA.BUFFER,YA.ACCESSOR],this.readDependencies=["meshopt.decoder"],this.writeDependencies=["meshopt.encoder"],this._decoder=null,this._decoderFallbackBufferMap=new Map,this._encoder=null,this._encoderOptions=oJA,this._encoderFallbackBuffer=null,this._encoderBufferViews={},this._encoderBufferViewData={},this._encoderBufferViewAccessors={}}install(A,Q){if(A==="meshopt.decoder")this._decoder=Q;if(A==="meshopt.encoder")this._encoder=Q;return this}setEncoderOptions(A){return this._encoderOptions=L6({},oJA,A),this}preread(A,Q){if(!this._decoder){if(!this.isRequired())return this;throw Error(`[${CJ}] Please install extension dependency, "meshopt.decoder".`)}if(!this._decoder.supported){if(!this.isRequired())return this;throw Error(`[${CJ}]: Missing WASM support.`)}if(Q===YA.BUFFER)this._prereadBuffers(A);else if(Q===YA.PRIMITIVE)this._prereadPrimitives(A);return this}_prereadBuffers(A){let Q=A.jsonDoc;(Q.json.bufferViews||[]).forEach((Y,J)=>{if(!Y.extensions||!Y.extensions[CJ])return;let C=Y.extensions[CJ],X=C.byteOffset||0,G=C.byteLength||0,W=C.count,F=C.byteStride,Z=new Uint8Array(W*F),U=Q.json.buffers[C.buffer],$=U.uri?Q.resources[U.uri]:Q.resources[fF],E=jQ.toView($,X,G);this._decoder.decodeGltfBuffer(Z,W,F,E,C.mode,C.filter),A.bufferViews[J]=Z})}_prereadPrimitives(A){let Q=A.jsonDoc;(Q.json.bufferViews||[]).forEach((Y)=>{if(!Y.extensions||!Y.extensions[CJ])return;let J=Y.extensions[CJ],C=A.buffers[J.buffer],X=A.buffers[Y.buffer],G=Q.json.buffers[Y.buffer];if(BdQ(G))this._decoderFallbackBufferMap.set(X,C)})}read(A){if(!this.isRequired())return this;for(let[Q,B]of this._decoderFallbackBufferMap){for(let Y of Q.listParents())if(Y instanceof fA)Y.swap(Q,B);Q.dispose()}return this}prewrite(A,Q){if(Q===YA.ACCESSOR)this._prewriteAccessors(A);else if(Q===YA.BUFFER)this._prewriteBuffers(A);return this}_prewriteAccessors(A){let Q=A.jsonDoc.json,B=this._encoder,Y=this._encoderOptions,J=this.document.getGraph(),C=this.document.createBuffer(),X=this.document.getRoot().listBuffers().indexOf(C),G=1,W=new Map,F=(Z)=>{for(let U of J.listParents(Z)){if(U.propertyType===YA.ROOT)continue;let $=W.get(Z);if($===void 0)W.set(Z,$=G++);return $}return-1};this._encoderFallbackBuffer=C,this._encoderBufferViews={},this._encoderBufferViewData={},this._encoderBufferViewAccessors={};for(let Z of this.document.getRoot().listAccessors()){if(W9A(Z)==="weights")continue;if(Z.getSparse())continue;let U=A.getAccessorUsage(Z),$=A.accessorUsageGroupedByParent.has(U)?F(Z):null,E=FdQ(Z,U),K=Y.method===nI.FILTER?ZdQ(Z,this.document):{filter:d0.NONE},I=CdQ(Z,B,E,K),{array:V,byteStride:H}=I,D=Z.getBuffer();if(!D)throw Error(`${CJ}: Missing buffer for accessor.`);let L=this.document.getRoot().listBuffers().indexOf(D),z=[U,$,E,K.filter,H,L].join(":"),M=this._encoderBufferViews[z],N=this._encoderBufferViewData[z],q=this._encoderBufferViewAccessors[z];if(!M||!N)q=this._encoderBufferViewAccessors[z]=[],N=this._encoderBufferViewData[z]=[],M=this._encoderBufferViews[z]={buffer:X,target:W5.USAGE_TO_TARGET[U],byteOffset:0,byteLength:0,byteStride:U===W5.BufferViewUsage.ARRAY_BUFFER?H:void 0,extensions:{[CJ]:{buffer:L,byteOffset:0,byteLength:0,mode:E,filter:K.filter!==d0.NONE?K.filter:void 0,byteStride:H,count:0}}};let w=A.createAccessorDef(Z);if(w.componentType=I.componentType,w.normalized=I.normalized,w.byteOffset=M.byteLength,w.min&&I.min)w.min=I.min;if(w.max&&I.max)w.max=I.max;A.accessorIndexMap.set(Z,Q.accessors.length),Q.accessors.push(w),q.push(w),N.push(new Uint8Array(V.buffer,V.byteOffset,V.byteLength)),M.byteLength+=V.byteLength,M.extensions.EXT_meshopt_compression.count+=Z.getCount()}}_prewriteBuffers(A){let Q=this._encoder;for(let B in this._encoderBufferViews){let Y=this._encoderBufferViews[B],J=this._encoderBufferViewData[B],C=this.document.getRoot().listBuffers()[Y.extensions[CJ].buffer],X=A.otherBufferViews.get(C)||[],{count:G,byteStride:W,mode:F}=Y.extensions[CJ],Z=jQ.concat(J),U=Q.encodeGltfBuffer(Z,G,W,F),$=jQ.pad(U);Y.extensions[CJ].byteLength=U.byteLength,J.length=0,J.push($),X.push($),A.otherBufferViews.set(C,X)}}write(A){let Q=0;for(let C in this._encoderBufferViews){let X=this._encoderBufferViews[C],G=this._encoderBufferViewData[C][0],W=A.otherBufferViewsIndexMap.get(G),F=this._encoderBufferViewAccessors[C];for(let E of F)E.bufferView=W;let Z=A.jsonDoc.json.bufferViews[W],U=Z.byteOffset||0;Object.assign(Z,X),Z.byteOffset=Q;let $=Z.extensions[CJ];$.byteOffset=U,Q+=jQ.padNumber(X.byteLength)}let B=this._encoderFallbackBuffer,Y=A.bufferIndexMap.get(B),J=A.jsonDoc.json.buffers[Y];return J.byteLength=Q,J.extensions={[CJ]:{fallback:!0}},B.dispose(),this}}rI.EXTENSION_NAME=CJ;rI.EncoderMethod=nI;class F9A{match(A){return A.length>=12&&jQ.decodeText(A.slice(4,12))==="ftypavif"}getSize(A){if(!this.match(A))return null;let Q=new DataView(A.buffer,A.byteOffset,A.byteLength),B=tJA(Q,0);if(!B)return null;let Y=B.end;while(B=tJA(Q,Y))if(B.type==="meta")Y=B.start+4;else if(B.type==="iprp"||B.type==="ipco")Y=B.start;else if(B.type==="ispe")return[Q.getUint32(B.start+4),Q.getUint32(B.start+8)];else if(B.type==="mdat")break;else Y=B.end;return null}getChannels(A){return 4}}class J3 extends tB{constructor(...A){super(...A);this.extensionName=pI,this.prereadTypes=[YA.TEXTURE]}static register(){F8.registerFormat("image/avif",new F9A)}preread(A){return(A.jsonDoc.json.textures||[]).forEach((B)=>{if(B.extensions&&B.extensions[pI])B.source=B.extensions[pI].source}),this}read(A){return this}write(A){let Q=A.jsonDoc;return this.document.getRoot().listTextures().forEach((B)=>{if(B.getMimeType()==="image/avif"){let Y=A.imageIndexMap.get(B);(Q.json.textures||[]).forEach((C)=>{if(C.source===Y)C.extensions=C.extensions||{},C.extensions[pI]={source:C.source},delete C.source})}}),this}}J3.EXTENSION_NAME=pI;function tJA(A,Q){if(A.byteLength<4+Q)return null;let B=A.getUint32(Q);if(A.byteLength=12&&A[8]===87&&A[9]===69&&A[10]===66&&A[11]===80}getSize(A){let Q=jQ.decodeText(A.slice(0,4)),B=jQ.decodeText(A.slice(8,12));if(Q!=="RIFF"||B!=="WEBP")return null;let Y=new DataView(A.buffer,A.byteOffset),J=12;while(J>6);return[U,$]}J+=8+X+X%2}return null}getChannels(A){return 4}}class C3 extends tB{constructor(...A){super(...A);this.extensionName=lI,this.prereadTypes=[YA.TEXTURE]}static register(){F8.registerFormat("image/webp",new Z9A)}preread(A){return(A.jsonDoc.json.textures||[]).forEach((B)=>{if(B.extensions&&B.extensions[lI])B.source=B.extensions[lI].source}),this}read(A){return this}write(A){let Q=A.jsonDoc;return this.document.getRoot().listTextures().forEach((B)=>{if(B.getMimeType()==="image/webp"){let Y=A.imageIndexMap.get(B);(Q.json.textures||[]).forEach((C)=>{if(C.source===Y)C.extensions=C.extensions||{},C.extensions[lI]={source:C.source},delete C.source})}}),this}}C3.EXTENSION_NAME=lI;var SY,$9A,U9A;function $dQ(A,Q){let B=new SY.DecoderBuffer;try{if(B.Init(Q,Q.length),A.GetEncodedGeometryType(B)!==SY.TRIANGULAR_MESH)throw Error(`[${S0}] Unknown geometry type.`);let J=new SY.Mesh;if(!A.DecodeBufferToMesh(B,J).ok()||J.ptr===0)throw Error(`[${S0}] Decoding failure.`);return J}finally{SY.destroy(B)}}function UdQ(A,Q){let Y=Q.num_faces()*3,J,C;if(Q.num_points()<=65534){let X=Y*Uint16Array.BYTES_PER_ELEMENT;J=SY._malloc(X),A.GetTrianglesUInt16Array(Q,X,J),C=new Uint16Array(SY.HEAPU16.buffer,J,Y).slice()}else{let X=Y*Uint32Array.BYTES_PER_ELEMENT;J=SY._malloc(X),A.GetTrianglesUInt32Array(Q,X,J),C=new Uint32Array(SY.HEAPU32.buffer,J,Y).slice()}return SY._free(J),C}function EdQ(A,Q,B,Y){let J=U9A[Y.componentType],C=$9A[Y.componentType],X=B.num_components(),W=Q.num_points()*X,F=W*C.BYTES_PER_ELEMENT,Z=SY._malloc(F);A.GetAttributeDataArrayForAllPoints(Q,B,J,F,Z);let U=new C(SY.HEAPF32.buffer,Z,W).slice();return SY._free(Z),U}function KdQ(A){SY=A,$9A={[fA.ComponentType.FLOAT]:Float32Array,[fA.ComponentType.UNSIGNED_INT]:Uint32Array,[fA.ComponentType.UNSIGNED_SHORT]:Uint16Array,[fA.ComponentType.UNSIGNED_BYTE]:Uint8Array,[fA.ComponentType.SHORT]:Int16Array,[fA.ComponentType.BYTE]:Int8Array},U9A={[fA.ComponentType.FLOAT]:SY.DT_FLOAT32,[fA.ComponentType.UNSIGNED_INT]:SY.DT_UINT32,[fA.ComponentType.UNSIGNED_SHORT]:SY.DT_UINT16,[fA.ComponentType.UNSIGNED_BYTE]:SY.DT_UINT8,[fA.ComponentType.SHORT]:SY.DT_INT16,[fA.ComponentType.BYTE]:SY.DT_INT8}}var F5,sI;(function(A){A[A.EDGEBREAKER=1]="EDGEBREAKER",A[A.SEQUENTIAL=0]="SEQUENTIAL"})(sI||(sI={}));var U5;(function(A){A.POSITION="POSITION",A.NORMAL="NORMAL",A.COLOR="COLOR",A.TEX_COORD="TEX_COORD",A.GENERIC="GENERIC"})(U5||(U5={}));var E9A={[U5.POSITION]:14,[U5.NORMAL]:10,[U5.COLOR]:8,[U5.TEX_COORD]:12,[U5.GENERIC]:12},eJA={decodeSpeed:5,encodeSpeed:5,method:sI.EDGEBREAKER,quantizationBits:E9A,quantizationVolume:"mesh"};function VdQ(A){F5=A}function IdQ(A,Q=eJA){let B=L6({},eJA,Q);B.quantizationBits=L6({},E9A,Q.quantizationBits);let Y=new F5.MeshBuilder,J=new F5.Mesh,C=new F5.ExpertEncoder(J),X={},G=new F5.DracoInt8Array,W=A.listTargets().length>0,F=!1;for(let I of A.listSemantics()){let V=A.getAttribute(I);if(V.getSparse()){F=!0;continue}let H=HdQ(I),D=DdQ(Y,V.getComponentType(),J,F5[H],V.getCount(),V.getElementSize(),V.getArray());if(D===-1)throw Error(`Error compressing "${I}" attribute.`);if(X[I]=D,B.quantizationVolume==="mesh"||I!=="POSITION")C.SetAttributeQuantization(D,B.quantizationBits[H]);else if(typeof B.quantizationVolume==="object"){let{quantizationVolume:L}=B,z=Math.max(L.max[0]-L.min[0],L.max[1]-L.min[1],L.max[2]-L.min[2]);C.SetAttributeExplicitQuantization(D,B.quantizationBits[H],V.getElementSize(),L.min,z)}else throw Error("Invalid quantization volume state.")}let Z=A.getIndices();if(!Z)throw new Q3("Primitive must have indices.");if(Y.AddFacesToMesh(J,Z.getCount()/3,Z.getArray()),C.SetSpeedOptions(B.encodeSpeed,B.decodeSpeed),C.SetTrackEncodedProperties(!0),B.method===sI.SEQUENTIAL||W||F)C.SetEncodingMethod(F5.MESH_SEQUENTIAL_ENCODING);else C.SetEncodingMethod(F5.MESH_EDGEBREAKER_ENCODING);let U=C.EncodeToDracoBuffer(!(W||F),G);if(U<=0)throw new Q3("Error applying Draco compression.");let $=new Uint8Array(U);for(let I=0;I65534&&fA.getComponentSize(U.componentType)<=2)U.componentType=fA.ComponentType.UNSIGNED_INT;else if(Z.numVertices>254&&fA.getComponentSize(U.componentType)<=1)U.componentType=fA.ComponentType.UNSIGNED_SHORT;for(let E of X.listSemantics()){let K=X.getAttribute(E);if(Z.attributeIDs[E]===void 0)continue;let I=A.createAccessorDef(K);I.count=Z.numVertices,A.accessorIndexMap.set(K,F.length),F.push(I)}let $=X.getAttribute("POSITION").getBuffer()||this.document.getRoot().listBuffers()[0];if(!A.otherBufferViews.has($))A.otherBufferViews.set($,[]);A.otherBufferViews.get($).push(Z.data)}return B.debug(`[${S0}] Compressed ${Y.size} primitives.`),A.extensionData[S0]={primitiveHashMap:Y,primitiveEncodingMap:J},this}write(A){let Q=A.extensionData[S0];for(let B of this.document.getRoot().listMeshes()){let Y=A.jsonDoc.json.meshes[A.meshIndexMap.get(B)];for(let J=0;JY!==S0),B.extensionsRequired=(B.extensionsRequired||[]).filter((Y)=>Y!==S0)}return this}}aI.EXTENSION_NAME=S0;aI.EncoderMethod=sI;function NdQ(A){let Q=A.getLogger(),B=new Set,Y=new Set,J=0,C=0;for(let U of A.getRoot().listMeshes())for(let $ of U.listPrimitives())if(!$.getIndices())Y.add($),J++;else if($.getMode()!==q0.Mode.TRIANGLES)Y.add($),C++;else B.add($);if(J>0)Q.warn(`[${S0}] Skipping Draco compression of ${J} non-indexed primitives.`);if(C>0)Q.warn(`[${S0}] Skipping Draco compression of ${C} non-TRIANGLES primitives.`);let X=A.getRoot().listAccessors(),G=new Map;for(let U=0;UE.propertyType));if($.size!==2||!$.has(YA.PRIMITIVE)||!$.has(YA.ROOT))throw Error(`[${S0}] Compressed accessors must only be used as indices or vertex attributes.`)}for(let U of Array.from(B)){let $=Z.get(U),E=U.getIndices();if(W.get(E)!==$||U.listAttributes().some((K)=>W.get(K)!==$))throw Error(`[${S0}] Draco primitives must share all, or no, accessors.`)}for(let U of Array.from(Y)){let $=U.getIndices();if(W.has($)||U.listAttributes().some((E)=>W.has(E)))throw Error(`[${S0}] Accessor cannot be shared by compressed and uncompressed primitives.`)}return Z}function A9A(A,Q){let B=[],Y=A.getIndices();B.push(Q.get(Y));for(let J of A.listAttributes())B.push(Q.get(J));return B.sort().join("|")}class r4 extends oB{init(){this.extensionName=Z5,this.propertyType="Light",this.parentTypes=[YA.NODE]}getDefaults(){return Object.assign(super.getDefaults(),{color:[1,1,1],intensity:1,type:r4.Type.POINT,range:null,innerConeAngle:0,outerConeAngle:Math.PI/4})}getColor(){return this.get("color")}setColor(A){return this.set("color",A)}getIntensity(){return this.get("intensity")}setIntensity(A){return this.set("intensity",A)}getType(){return this.get("type")}setType(A){return this.set("type",A)}getRange(){return this.get("range")}setRange(A){return this.set("range",A)}getInnerConeAngle(){return this.get("innerConeAngle")}setInnerConeAngle(A){return this.set("innerConeAngle",A)}getOuterConeAngle(){return this.get("outerConeAngle")}setOuterConeAngle(A){return this.set("outerConeAngle",A)}}r4.EXTENSION_NAME=Z5;r4.Type={POINT:"point",SPOT:"spot",DIRECTIONAL:"directional"};class jg extends tB{constructor(...A){super(...A);this.extensionName=Z5}createLight(A=""){return new r4(this.document.getGraph(),A)}read(A){let Q=A.jsonDoc;if(!Q.json.extensions||!Q.json.extensions[Z5])return this;let J=(Q.json.extensions[Z5].lights||[]).map((C)=>{var X,G;let W=this.createLight().setName(C.name||"").setType(C.type);if(C.color!==void 0)W.setColor(C.color);if(C.intensity!==void 0)W.setIntensity(C.intensity);if(C.range!==void 0)W.setRange(C.range);if(((X=C.spot)==null?void 0:X.innerConeAngle)!==void 0)W.setInnerConeAngle(C.spot.innerConeAngle);if(((G=C.spot)==null?void 0:G.outerConeAngle)!==void 0)W.setOuterConeAngle(C.spot.outerConeAngle);return W});return Q.json.nodes.forEach((C,X)=>{if(!C.extensions||!C.extensions[Z5])return;let G=C.extensions[Z5];A.nodes[X].setExtension(Z5,J[G.light])}),this}write(A){let Q=A.jsonDoc;if(this.properties.size===0)return this;let B=[],Y=new Map;for(let J of this.properties){let C=J,X={type:C.getType()};if(!kQ.eq(C.getColor(),[1,1,1]))X.color=C.getColor();if(C.getIntensity()!==1)X.intensity=C.getIntensity();if(C.getRange()!=null)X.range=C.getRange();if(C.getName())X.name=C.getName();if(C.getType()===r4.Type.SPOT)X.spot={innerConeAngle:C.getInnerConeAngle(),outerConeAngle:C.getOuterConeAngle()};B.push(X),Y.set(C,B.length-1)}return this.document.getRoot().listNodes().forEach((J)=>{let C=J.getExtension(Z5);if(C){let X=A.nodeIndexMap.get(J),G=Q.json.nodes[X];G.extensions=G.extensions||{},G.extensions[Z5]={light:Y.get(C)}}}),Q.json.extensions=Q.json.extensions||{},Q.json.extensions[Z5]={lights:B},this}}jg.EXTENSION_NAME=Z5;var{R:LdQ,G:qdQ,B:MdQ}=k9;class Og extends oB{init(){this.extensionName=G6,this.propertyType="Anisotropy",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{anisotropyStrength:0,anisotropyRotation:0,anisotropyTexture:null,anisotropyTextureInfo:new gB(this.graph,"anisotropyTextureInfo")})}getAnisotropyStrength(){return this.get("anisotropyStrength")}setAnisotropyStrength(A){return this.set("anisotropyStrength",A)}getAnisotropyRotation(){return this.get("anisotropyRotation")}setAnisotropyRotation(A){return this.set("anisotropyRotation",A)}getAnisotropyTexture(){return this.getRef("anisotropyTexture")}getAnisotropyTextureInfo(){return this.getRef("anisotropyTexture")?this.getRef("anisotropyTextureInfo"):null}setAnisotropyTexture(A){return this.setRef("anisotropyTexture",A,{channels:LdQ|qdQ|MdQ})}}Og.EXTENSION_NAME=G6;class Pg extends tB{constructor(...A){super(...A);this.extensionName=G6,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createAnisotropy(){return new Og(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[G6]){let X=this.createAnisotropy();A.materials[C].setExtension(G6,X);let G=J.extensions[G6];if(G.anisotropyStrength!==void 0)X.setAnisotropyStrength(G.anisotropyStrength);if(G.anisotropyRotation!==void 0)X.setAnisotropyRotation(G.anisotropyRotation);if(G.anisotropyTexture!==void 0){let W=G.anisotropyTexture,F=A.textures[Y[W.index].source];X.setAnisotropyTexture(F),A.setTextureInfo(X.getAnisotropyTextureInfo(),W)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(G6);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[G6]={};if(Y.getAnisotropyStrength()>0)X.anisotropyStrength=Y.getAnisotropyStrength();if(Y.getAnisotropyRotation()!==0)X.anisotropyRotation=Y.getAnisotropyRotation();if(Y.getAnisotropyTexture()){let G=Y.getAnisotropyTexture(),W=Y.getAnisotropyTextureInfo();X.anisotropyTexture=A.createTextureInfoDef(G,W)}}}),this}}Pg.EXTENSION_NAME=G6;var{R:Q9A,G:B9A,B:zdQ}=k9;class Tg extends oB{init(){this.extensionName=W6,this.propertyType="Clearcoat",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{clearcoatFactor:0,clearcoatTexture:null,clearcoatTextureInfo:new gB(this.graph,"clearcoatTextureInfo"),clearcoatRoughnessFactor:0,clearcoatRoughnessTexture:null,clearcoatRoughnessTextureInfo:new gB(this.graph,"clearcoatRoughnessTextureInfo"),clearcoatNormalScale:1,clearcoatNormalTexture:null,clearcoatNormalTextureInfo:new gB(this.graph,"clearcoatNormalTextureInfo")})}getClearcoatFactor(){return this.get("clearcoatFactor")}setClearcoatFactor(A){return this.set("clearcoatFactor",A)}getClearcoatTexture(){return this.getRef("clearcoatTexture")}getClearcoatTextureInfo(){return this.getRef("clearcoatTexture")?this.getRef("clearcoatTextureInfo"):null}setClearcoatTexture(A){return this.setRef("clearcoatTexture",A,{channels:Q9A})}getClearcoatRoughnessFactor(){return this.get("clearcoatRoughnessFactor")}setClearcoatRoughnessFactor(A){return this.set("clearcoatRoughnessFactor",A)}getClearcoatRoughnessTexture(){return this.getRef("clearcoatRoughnessTexture")}getClearcoatRoughnessTextureInfo(){return this.getRef("clearcoatRoughnessTexture")?this.getRef("clearcoatRoughnessTextureInfo"):null}setClearcoatRoughnessTexture(A){return this.setRef("clearcoatRoughnessTexture",A,{channels:B9A})}getClearcoatNormalScale(){return this.get("clearcoatNormalScale")}setClearcoatNormalScale(A){return this.set("clearcoatNormalScale",A)}getClearcoatNormalTexture(){return this.getRef("clearcoatNormalTexture")}getClearcoatNormalTextureInfo(){return this.getRef("clearcoatNormalTexture")?this.getRef("clearcoatNormalTextureInfo"):null}setClearcoatNormalTexture(A){return this.setRef("clearcoatNormalTexture",A,{channels:Q9A|B9A|zdQ})}}Tg.EXTENSION_NAME=W6;class Sg extends tB{constructor(...A){super(...A);this.extensionName=W6,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createClearcoat(){return new Tg(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[W6]){let X=this.createClearcoat();A.materials[C].setExtension(W6,X);let G=J.extensions[W6];if(G.clearcoatFactor!==void 0)X.setClearcoatFactor(G.clearcoatFactor);if(G.clearcoatRoughnessFactor!==void 0)X.setClearcoatRoughnessFactor(G.clearcoatRoughnessFactor);if(G.clearcoatTexture!==void 0){let W=G.clearcoatTexture,F=A.textures[Y[W.index].source];X.setClearcoatTexture(F),A.setTextureInfo(X.getClearcoatTextureInfo(),W)}if(G.clearcoatRoughnessTexture!==void 0){let W=G.clearcoatRoughnessTexture,F=A.textures[Y[W.index].source];X.setClearcoatRoughnessTexture(F),A.setTextureInfo(X.getClearcoatRoughnessTextureInfo(),W)}if(G.clearcoatNormalTexture!==void 0){let W=G.clearcoatNormalTexture,F=A.textures[Y[W.index].source];if(X.setClearcoatNormalTexture(F),A.setTextureInfo(X.getClearcoatNormalTextureInfo(),W),W.scale!==void 0)X.setClearcoatNormalScale(W.scale)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(W6);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[W6]={clearcoatFactor:Y.getClearcoatFactor(),clearcoatRoughnessFactor:Y.getClearcoatRoughnessFactor()};if(Y.getClearcoatTexture()){let G=Y.getClearcoatTexture(),W=Y.getClearcoatTextureInfo();X.clearcoatTexture=A.createTextureInfoDef(G,W)}if(Y.getClearcoatRoughnessTexture()){let G=Y.getClearcoatRoughnessTexture(),W=Y.getClearcoatRoughnessTextureInfo();X.clearcoatRoughnessTexture=A.createTextureInfoDef(G,W)}if(Y.getClearcoatNormalTexture()){let G=Y.getClearcoatNormalTexture(),W=Y.getClearcoatNormalTextureInfo();if(X.clearcoatNormalTexture=A.createTextureInfoDef(G,W),Y.getClearcoatNormalScale()!==1)X.clearcoatNormalTexture.scale=Y.getClearcoatNormalScale()}}}),this}}Sg.EXTENSION_NAME=W6;var{R:RdQ,G:wdQ,B:jdQ,A:OdQ}=k9;class kg extends oB{init(){this.extensionName=F6,this.propertyType="DiffuseTransmission",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{diffuseTransmissionFactor:0,diffuseTransmissionTexture:null,diffuseTransmissionTextureInfo:new gB(this.graph,"diffuseTransmissionTextureInfo"),diffuseTransmissionColorFactor:[1,1,1],diffuseTransmissionColorTexture:null,diffuseTransmissionColorTextureInfo:new gB(this.graph,"diffuseTransmissionColorTextureInfo")})}getDiffuseTransmissionFactor(){return this.get("diffuseTransmissionFactor")}setDiffuseTransmissionFactor(A){return this.set("diffuseTransmissionFactor",A)}getDiffuseTransmissionTexture(){return this.getRef("diffuseTransmissionTexture")}getDiffuseTransmissionTextureInfo(){return this.getRef("diffuseTransmissionTexture")?this.getRef("diffuseTransmissionTextureInfo"):null}setDiffuseTransmissionTexture(A){return this.setRef("diffuseTransmissionTexture",A,{channels:OdQ})}getDiffuseTransmissionColorFactor(){return this.get("diffuseTransmissionColorFactor")}setDiffuseTransmissionColorFactor(A){return this.set("diffuseTransmissionColorFactor",A)}getDiffuseTransmissionColorTexture(){return this.getRef("diffuseTransmissionColorTexture")}getDiffuseTransmissionColorTextureInfo(){return this.getRef("diffuseTransmissionColorTexture")?this.getRef("diffuseTransmissionColorTextureInfo"):null}setDiffuseTransmissionColorTexture(A){return this.setRef("diffuseTransmissionColorTexture",A,{channels:RdQ|wdQ|jdQ})}}kg.EXTENSION_NAME=F6;class _g extends tB{constructor(...A){super(...A);this.extensionName=F6}createDiffuseTransmission(){return new kg(this.document.getGraph())}read(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[F6]){let X=this.createDiffuseTransmission();A.materials[C].setExtension(F6,X);let G=J.extensions[F6];if(G.diffuseTransmissionFactor!==void 0)X.setDiffuseTransmissionFactor(G.diffuseTransmissionFactor);if(G.diffuseTransmissionColorFactor!==void 0)X.setDiffuseTransmissionColorFactor(G.diffuseTransmissionColorFactor);if(G.diffuseTransmissionTexture!==void 0){let W=G.diffuseTransmissionTexture,F=A.textures[Y[W.index].source];X.setDiffuseTransmissionTexture(F),A.setTextureInfo(X.getDiffuseTransmissionTextureInfo(),W)}if(G.diffuseTransmissionColorTexture!==void 0){let W=G.diffuseTransmissionColorTexture,F=A.textures[Y[W.index].source];X.setDiffuseTransmissionColorTexture(F),A.setTextureInfo(X.getDiffuseTransmissionColorTextureInfo(),W)}}}),this}write(A){let Q=A.jsonDoc;for(let B of this.document.getRoot().listMaterials()){let Y=B.getExtension(F6);if(!Y)continue;let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[F6]={diffuseTransmissionFactor:Y.getDiffuseTransmissionFactor(),diffuseTransmissionColorFactor:Y.getDiffuseTransmissionColorFactor()};if(Y.getDiffuseTransmissionTexture()){let G=Y.getDiffuseTransmissionTexture(),W=Y.getDiffuseTransmissionTextureInfo();X.diffuseTransmissionTexture=A.createTextureInfoDef(G,W)}if(Y.getDiffuseTransmissionColorTexture()){let G=Y.getDiffuseTransmissionColorTexture(),W=Y.getDiffuseTransmissionColorTextureInfo();X.diffuseTransmissionColorTexture=A.createTextureInfoDef(G,W)}}return this}}_g.EXTENSION_NAME=F6;class vg extends oB{init(){this.extensionName=Z6,this.propertyType="Dispersion",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{dispersion:0})}getDispersion(){return this.get("dispersion")}setDispersion(A){return this.set("dispersion",A)}}vg.EXTENSION_NAME=Z6;class yg extends tB{constructor(...A){super(...A);this.extensionName=Z6,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createDispersion(){return new vg(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){return(A.jsonDoc.json.materials||[]).forEach((Y,J)=>{if(Y.extensions&&Y.extensions[Z6]){let C=this.createDispersion();A.materials[J].setExtension(Z6,C);let X=Y.extensions[Z6];if(X.dispersion!==void 0)C.setDispersion(X.dispersion)}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(Z6);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{},C.extensions[Z6]={dispersion:Y.getDispersion()}}}),this}}yg.EXTENSION_NAME=Z6;class gg extends oB{init(){this.extensionName=$6,this.propertyType="EmissiveStrength",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{emissiveStrength:1})}getEmissiveStrength(){return this.get("emissiveStrength")}setEmissiveStrength(A){return this.set("emissiveStrength",A)}}gg.EXTENSION_NAME=$6;class oI extends tB{constructor(...A){super(...A);this.extensionName=$6,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createEmissiveStrength(){return new gg(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){return(A.jsonDoc.json.materials||[]).forEach((Y,J)=>{if(Y.extensions&&Y.extensions[$6]){let C=this.createEmissiveStrength();A.materials[J].setExtension($6,C);let X=Y.extensions[$6];if(X.emissiveStrength!==void 0)C.setEmissiveStrength(X.emissiveStrength)}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension($6);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{},C.extensions[$6]={emissiveStrength:Y.getEmissiveStrength()}}}),this}}oI.EXTENSION_NAME=$6;class hg extends oB{init(){this.extensionName=U6,this.propertyType="IOR",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{ior:1.5})}getIOR(){return this.get("ior")}setIOR(A){return this.set("ior",A)}}hg.EXTENSION_NAME=U6;class X3 extends tB{constructor(...A){super(...A);this.extensionName=U6,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createIOR(){return new hg(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){return(A.jsonDoc.json.materials||[]).forEach((Y,J)=>{if(Y.extensions&&Y.extensions[U6]){let C=this.createIOR();A.materials[J].setExtension(U6,C);let X=Y.extensions[U6];if(X.ior!==void 0)C.setIOR(X.ior)}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(U6);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{},C.extensions[U6]={ior:Y.getIOR()}}}),this}}X3.EXTENSION_NAME=U6;var{R:PdQ,G:TdQ}=k9;class xg extends oB{init(){this.extensionName=E6,this.propertyType="Iridescence",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{iridescenceFactor:0,iridescenceTexture:null,iridescenceTextureInfo:new gB(this.graph,"iridescenceTextureInfo"),iridescenceIOR:1.3,iridescenceThicknessMinimum:100,iridescenceThicknessMaximum:400,iridescenceThicknessTexture:null,iridescenceThicknessTextureInfo:new gB(this.graph,"iridescenceThicknessTextureInfo")})}getIridescenceFactor(){return this.get("iridescenceFactor")}setIridescenceFactor(A){return this.set("iridescenceFactor",A)}getIridescenceTexture(){return this.getRef("iridescenceTexture")}getIridescenceTextureInfo(){return this.getRef("iridescenceTexture")?this.getRef("iridescenceTextureInfo"):null}setIridescenceTexture(A){return this.setRef("iridescenceTexture",A,{channels:PdQ})}getIridescenceIOR(){return this.get("iridescenceIOR")}setIridescenceIOR(A){return this.set("iridescenceIOR",A)}getIridescenceThicknessMinimum(){return this.get("iridescenceThicknessMinimum")}setIridescenceThicknessMinimum(A){return this.set("iridescenceThicknessMinimum",A)}getIridescenceThicknessMaximum(){return this.get("iridescenceThicknessMaximum")}setIridescenceThicknessMaximum(A){return this.set("iridescenceThicknessMaximum",A)}getIridescenceThicknessTexture(){return this.getRef("iridescenceThicknessTexture")}getIridescenceThicknessTextureInfo(){return this.getRef("iridescenceThicknessTexture")?this.getRef("iridescenceThicknessTextureInfo"):null}setIridescenceThicknessTexture(A){return this.setRef("iridescenceThicknessTexture",A,{channels:TdQ})}}xg.EXTENSION_NAME=E6;class fg extends tB{constructor(...A){super(...A);this.extensionName=E6,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createIridescence(){return new xg(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[E6]){let X=this.createIridescence();A.materials[C].setExtension(E6,X);let G=J.extensions[E6];if(G.iridescenceFactor!==void 0)X.setIridescenceFactor(G.iridescenceFactor);if(G.iridescenceIor!==void 0)X.setIridescenceIOR(G.iridescenceIor);if(G.iridescenceThicknessMinimum!==void 0)X.setIridescenceThicknessMinimum(G.iridescenceThicknessMinimum);if(G.iridescenceThicknessMaximum!==void 0)X.setIridescenceThicknessMaximum(G.iridescenceThicknessMaximum);if(G.iridescenceTexture!==void 0){let W=G.iridescenceTexture,F=A.textures[Y[W.index].source];X.setIridescenceTexture(F),A.setTextureInfo(X.getIridescenceTextureInfo(),W)}if(G.iridescenceThicknessTexture!==void 0){let W=G.iridescenceThicknessTexture,F=A.textures[Y[W.index].source];X.setIridescenceThicknessTexture(F),A.setTextureInfo(X.getIridescenceThicknessTextureInfo(),W)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(E6);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[E6]={};if(Y.getIridescenceFactor()>0)X.iridescenceFactor=Y.getIridescenceFactor();if(Y.getIridescenceIOR()!==1.3)X.iridescenceIor=Y.getIridescenceIOR();if(Y.getIridescenceThicknessMinimum()!==100)X.iridescenceThicknessMinimum=Y.getIridescenceThicknessMinimum();if(Y.getIridescenceThicknessMaximum()!==400)X.iridescenceThicknessMaximum=Y.getIridescenceThicknessMaximum();if(Y.getIridescenceTexture()){let G=Y.getIridescenceTexture(),W=Y.getIridescenceTextureInfo();X.iridescenceTexture=A.createTextureInfoDef(G,W)}if(Y.getIridescenceThicknessTexture()){let G=Y.getIridescenceThicknessTexture(),W=Y.getIridescenceThicknessTextureInfo();X.iridescenceThicknessTexture=A.createTextureInfoDef(G,W)}}}),this}}fg.EXTENSION_NAME=E6;var{R:Y9A,G:J9A,B:C9A,A:X9A}=k9;class bg extends oB{init(){this.extensionName=K6,this.propertyType="PBRSpecularGlossiness",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{diffuseFactor:[1,1,1,1],diffuseTexture:null,diffuseTextureInfo:new gB(this.graph,"diffuseTextureInfo"),specularFactor:[1,1,1],glossinessFactor:1,specularGlossinessTexture:null,specularGlossinessTextureInfo:new gB(this.graph,"specularGlossinessTextureInfo")})}getDiffuseFactor(){return this.get("diffuseFactor")}setDiffuseFactor(A){return this.set("diffuseFactor",A)}getDiffuseTexture(){return this.getRef("diffuseTexture")}getDiffuseTextureInfo(){return this.getRef("diffuseTexture")?this.getRef("diffuseTextureInfo"):null}setDiffuseTexture(A){return this.setRef("diffuseTexture",A,{channels:Y9A|J9A|C9A|X9A,isColor:!0})}getSpecularFactor(){return this.get("specularFactor")}setSpecularFactor(A){return this.set("specularFactor",A)}getGlossinessFactor(){return this.get("glossinessFactor")}setGlossinessFactor(A){return this.set("glossinessFactor",A)}getSpecularGlossinessTexture(){return this.getRef("specularGlossinessTexture")}getSpecularGlossinessTextureInfo(){return this.getRef("specularGlossinessTexture")?this.getRef("specularGlossinessTextureInfo"):null}setSpecularGlossinessTexture(A){return this.setRef("specularGlossinessTexture",A,{channels:Y9A|J9A|C9A|X9A})}}bg.EXTENSION_NAME=K6;class G3 extends tB{constructor(...A){super(...A);this.extensionName=K6,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createPBRSpecularGlossiness(){return new bg(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[K6]){let X=this.createPBRSpecularGlossiness();A.materials[C].setExtension(K6,X);let G=J.extensions[K6];if(G.diffuseFactor!==void 0)X.setDiffuseFactor(G.diffuseFactor);if(G.specularFactor!==void 0)X.setSpecularFactor(G.specularFactor);if(G.glossinessFactor!==void 0)X.setGlossinessFactor(G.glossinessFactor);if(G.diffuseTexture!==void 0){let W=G.diffuseTexture,F=A.textures[Y[W.index].source];X.setDiffuseTexture(F),A.setTextureInfo(X.getDiffuseTextureInfo(),W)}if(G.specularGlossinessTexture!==void 0){let W=G.specularGlossinessTexture,F=A.textures[Y[W.index].source];X.setSpecularGlossinessTexture(F),A.setTextureInfo(X.getSpecularGlossinessTextureInfo(),W)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(K6);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[K6]={diffuseFactor:Y.getDiffuseFactor(),specularFactor:Y.getSpecularFactor(),glossinessFactor:Y.getGlossinessFactor()};if(Y.getDiffuseTexture()){let G=Y.getDiffuseTexture(),W=Y.getDiffuseTextureInfo();X.diffuseTexture=A.createTextureInfoDef(G,W)}if(Y.getSpecularGlossinessTexture()){let G=Y.getSpecularGlossinessTexture(),W=Y.getSpecularGlossinessTextureInfo();X.specularGlossinessTexture=A.createTextureInfoDef(G,W)}}}),this}}G3.EXTENSION_NAME=K6;var{R:SdQ,G:kdQ,B:_dQ,A:vdQ}=k9;class mg extends oB{init(){this.extensionName=V6,this.propertyType="Sheen",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{sheenColorFactor:[0,0,0],sheenColorTexture:null,sheenColorTextureInfo:new gB(this.graph,"sheenColorTextureInfo"),sheenRoughnessFactor:0,sheenRoughnessTexture:null,sheenRoughnessTextureInfo:new gB(this.graph,"sheenRoughnessTextureInfo")})}getSheenColorFactor(){return this.get("sheenColorFactor")}setSheenColorFactor(A){return this.set("sheenColorFactor",A)}getSheenColorTexture(){return this.getRef("sheenColorTexture")}getSheenColorTextureInfo(){return this.getRef("sheenColorTexture")?this.getRef("sheenColorTextureInfo"):null}setSheenColorTexture(A){return this.setRef("sheenColorTexture",A,{channels:SdQ|kdQ|_dQ,isColor:!0})}getSheenRoughnessFactor(){return this.get("sheenRoughnessFactor")}setSheenRoughnessFactor(A){return this.set("sheenRoughnessFactor",A)}getSheenRoughnessTexture(){return this.getRef("sheenRoughnessTexture")}getSheenRoughnessTextureInfo(){return this.getRef("sheenRoughnessTexture")?this.getRef("sheenRoughnessTextureInfo"):null}setSheenRoughnessTexture(A){return this.setRef("sheenRoughnessTexture",A,{channels:vdQ})}}mg.EXTENSION_NAME=V6;class ug extends tB{constructor(...A){super(...A);this.extensionName=V6,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createSheen(){return new mg(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[V6]){let X=this.createSheen();A.materials[C].setExtension(V6,X);let G=J.extensions[V6];if(G.sheenColorFactor!==void 0)X.setSheenColorFactor(G.sheenColorFactor);if(G.sheenRoughnessFactor!==void 0)X.setSheenRoughnessFactor(G.sheenRoughnessFactor);if(G.sheenColorTexture!==void 0){let W=G.sheenColorTexture,F=A.textures[Y[W.index].source];X.setSheenColorTexture(F),A.setTextureInfo(X.getSheenColorTextureInfo(),W)}if(G.sheenRoughnessTexture!==void 0){let W=G.sheenRoughnessTexture,F=A.textures[Y[W.index].source];X.setSheenRoughnessTexture(F),A.setTextureInfo(X.getSheenRoughnessTextureInfo(),W)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(V6);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[V6]={sheenColorFactor:Y.getSheenColorFactor(),sheenRoughnessFactor:Y.getSheenRoughnessFactor()};if(Y.getSheenColorTexture()){let G=Y.getSheenColorTexture(),W=Y.getSheenColorTextureInfo();X.sheenColorTexture=A.createTextureInfoDef(G,W)}if(Y.getSheenRoughnessTexture()){let G=Y.getSheenRoughnessTexture(),W=Y.getSheenRoughnessTextureInfo();X.sheenRoughnessTexture=A.createTextureInfoDef(G,W)}}}),this}}ug.EXTENSION_NAME=V6;var{R:ydQ,G:gdQ,B:hdQ,A:xdQ}=k9;class dg extends oB{init(){this.extensionName=I6,this.propertyType="Specular",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{specularFactor:1,specularTexture:null,specularTextureInfo:new gB(this.graph,"specularTextureInfo"),specularColorFactor:[1,1,1],specularColorTexture:null,specularColorTextureInfo:new gB(this.graph,"specularColorTextureInfo")})}getSpecularFactor(){return this.get("specularFactor")}setSpecularFactor(A){return this.set("specularFactor",A)}getSpecularColorFactor(){return this.get("specularColorFactor")}setSpecularColorFactor(A){return this.set("specularColorFactor",A)}getSpecularTexture(){return this.getRef("specularTexture")}getSpecularTextureInfo(){return this.getRef("specularTexture")?this.getRef("specularTextureInfo"):null}setSpecularTexture(A){return this.setRef("specularTexture",A,{channels:xdQ})}getSpecularColorTexture(){return this.getRef("specularColorTexture")}getSpecularColorTextureInfo(){return this.getRef("specularColorTexture")?this.getRef("specularColorTextureInfo"):null}setSpecularColorTexture(A){return this.setRef("specularColorTexture",A,{channels:ydQ|gdQ|hdQ,isColor:!0})}}dg.EXTENSION_NAME=I6;class W3 extends tB{constructor(...A){super(...A);this.extensionName=I6,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createSpecular(){return new dg(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[I6]){let X=this.createSpecular();A.materials[C].setExtension(I6,X);let G=J.extensions[I6];if(G.specularFactor!==void 0)X.setSpecularFactor(G.specularFactor);if(G.specularColorFactor!==void 0)X.setSpecularColorFactor(G.specularColorFactor);if(G.specularTexture!==void 0){let W=G.specularTexture,F=A.textures[Y[W.index].source];X.setSpecularTexture(F),A.setTextureInfo(X.getSpecularTextureInfo(),W)}if(G.specularColorTexture!==void 0){let W=G.specularColorTexture,F=A.textures[Y[W.index].source];X.setSpecularColorTexture(F),A.setTextureInfo(X.getSpecularColorTextureInfo(),W)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(I6);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[I6]={};if(Y.getSpecularFactor()!==1)X.specularFactor=Y.getSpecularFactor();if(!kQ.eq(Y.getSpecularColorFactor(),[1,1,1]))X.specularColorFactor=Y.getSpecularColorFactor();if(Y.getSpecularTexture()){let G=Y.getSpecularTexture(),W=Y.getSpecularTextureInfo();X.specularTexture=A.createTextureInfoDef(G,W)}if(Y.getSpecularColorTexture()){let G=Y.getSpecularColorTexture(),W=Y.getSpecularColorTextureInfo();X.specularColorTexture=A.createTextureInfoDef(G,W)}}}),this}}W3.EXTENSION_NAME=I6;var{R:fdQ}=k9;class cg extends oB{init(){this.extensionName=H6,this.propertyType="Transmission",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{transmissionFactor:0,transmissionTexture:null,transmissionTextureInfo:new gB(this.graph,"transmissionTextureInfo")})}getTransmissionFactor(){return this.get("transmissionFactor")}setTransmissionFactor(A){return this.set("transmissionFactor",A)}getTransmissionTexture(){return this.getRef("transmissionTexture")}getTransmissionTextureInfo(){return this.getRef("transmissionTexture")?this.getRef("transmissionTextureInfo"):null}setTransmissionTexture(A){return this.setRef("transmissionTexture",A,{channels:fdQ})}}cg.EXTENSION_NAME=H6;class lg extends tB{constructor(...A){super(...A);this.extensionName=H6,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createTransmission(){return new cg(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[H6]){let X=this.createTransmission();A.materials[C].setExtension(H6,X);let G=J.extensions[H6];if(G.transmissionFactor!==void 0)X.setTransmissionFactor(G.transmissionFactor);if(G.transmissionTexture!==void 0){let W=G.transmissionTexture,F=A.textures[Y[W.index].source];X.setTransmissionTexture(F),A.setTextureInfo(X.getTransmissionTextureInfo(),W)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(H6);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[H6]={transmissionFactor:Y.getTransmissionFactor()};if(Y.getTransmissionTexture()){let G=Y.getTransmissionTexture(),W=Y.getTransmissionTextureInfo();X.transmissionTexture=A.createTextureInfoDef(G,W)}}}),this}}lg.EXTENSION_NAME=H6;class pg extends oB{init(){this.extensionName=X7,this.propertyType="Unlit",this.parentTypes=[YA.MATERIAL]}}pg.EXTENSION_NAME=X7;class F3 extends tB{constructor(...A){super(...A);this.extensionName=X7,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createUnlit(){return new pg(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){return(A.jsonDoc.json.materials||[]).forEach((B,Y)=>{if(B.extensions&&B.extensions[X7])A.materials[Y].setExtension(X7,this.createUnlit())}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{if(B.getExtension(X7)){let Y=A.materialIndexMap.get(B),J=Q.json.materials[Y];J.extensions=J.extensions||{},J.extensions[X7]={}}}),this}}F3.EXTENSION_NAME=X7;class ig extends oB{init(){this.extensionName=MJ,this.propertyType="Mapping",this.parentTypes=["MappingList"]}getDefaults(){return Object.assign(super.getDefaults(),{material:null,variants:new xB})}getMaterial(){return this.getRef("material")}setMaterial(A){return this.setRef("material",A)}addVariant(A){return this.addRef("variants",A)}removeVariant(A){return this.removeRef("variants",A)}listVariants(){return this.listRefs("variants")}}ig.EXTENSION_NAME=MJ;class ng extends oB{init(){this.extensionName=MJ,this.propertyType="MappingList",this.parentTypes=[YA.PRIMITIVE]}getDefaults(){return Object.assign(super.getDefaults(),{mappings:new xB})}addMapping(A){return this.addRef("mappings",A)}removeMapping(A){return this.removeRef("mappings",A)}listMappings(){return this.listRefs("mappings")}}ng.EXTENSION_NAME=MJ;class B3 extends oB{init(){this.extensionName=MJ,this.propertyType="Variant",this.parentTypes=["MappingList"]}}B3.EXTENSION_NAME=MJ;class sg extends tB{constructor(...A){super(...A);this.extensionName=MJ}createMappingList(){return new ng(this.document.getGraph())}createVariant(A=""){return new B3(this.document.getGraph(),A)}createMapping(){return new ig(this.document.getGraph())}listVariants(){return Array.from(this.properties).filter((A)=>A instanceof B3)}read(A){let Q=A.jsonDoc;if(!Q.json.extensions||!Q.json.extensions[MJ])return this;let J=(Q.json.extensions[MJ].variants||[]).map((X)=>this.createVariant().setName(X.name||""));return(Q.json.meshes||[]).forEach((X,G)=>{let W=A.meshes[G];(X.primitives||[]).forEach((Z,U)=>{if(!Z.extensions||!Z.extensions[MJ])return;let $=this.createMappingList(),E=Z.extensions[MJ];for(let K of E.mappings){let I=this.createMapping();if(K.material!==void 0)I.setMaterial(A.materials[K.material]);for(let V of K.variants||[])I.addVariant(J[V]);$.addMapping(I)}W.listPrimitives()[U].setExtension(MJ,$)})}),this}write(A){let Q=A.jsonDoc,B=this.listVariants();if(!B.length)return this;let Y=[],J=new Map;for(let C of B)J.set(C,Y.length),Y.push(A.createPropertyDef(C));for(let C of this.document.getRoot().listMeshes()){let X=A.meshIndexMap.get(C);C.listPrimitives().forEach((G,W)=>{let F=G.getExtension(MJ);if(!F)return;let Z=A.jsonDoc.json.meshes[X].primitives[W],U=F.listMappings().map(($)=>{let E=A.createPropertyDef($),K=$.getMaterial();if(K)E.material=A.materialIndexMap.get(K);return E.variants=$.listVariants().map((I)=>J.get(I)),E});Z.extensions=Z.extensions||{},Z.extensions[MJ]={mappings:U}})}return Q.json.extensions=Q.json.extensions||{},Q.json.extensions[MJ]={variants:Y},this}}sg.EXTENSION_NAME=MJ;var{G:bdQ}=k9;class rg extends oB{init(){this.extensionName=D6,this.propertyType="Volume",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{thicknessFactor:0,thicknessTexture:null,thicknessTextureInfo:new gB(this.graph,"thicknessTexture"),attenuationDistance:1/0,attenuationColor:[1,1,1]})}getThicknessFactor(){return this.get("thicknessFactor")}setThicknessFactor(A){return this.set("thicknessFactor",A)}getThicknessTexture(){return this.getRef("thicknessTexture")}getThicknessTextureInfo(){return this.getRef("thicknessTexture")?this.getRef("thicknessTextureInfo"):null}setThicknessTexture(A){return this.setRef("thicknessTexture",A,{channels:bdQ})}getAttenuationDistance(){return this.get("attenuationDistance")}setAttenuationDistance(A){return this.set("attenuationDistance",A)}getAttenuationColor(){return this.get("attenuationColor")}setAttenuationColor(A){return this.set("attenuationColor",A)}}rg.EXTENSION_NAME=D6;class ag extends tB{constructor(...A){super(...A);this.extensionName=D6,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createVolume(){return new rg(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[D6]){let X=this.createVolume();A.materials[C].setExtension(D6,X);let G=J.extensions[D6];if(G.thicknessFactor!==void 0)X.setThicknessFactor(G.thicknessFactor);if(G.attenuationDistance!==void 0)X.setAttenuationDistance(G.attenuationDistance);if(G.attenuationColor!==void 0)X.setAttenuationColor(G.attenuationColor);if(G.thicknessTexture!==void 0){let W=G.thicknessTexture,F=A.textures[Y[W.index].source];X.setThicknessTexture(F),A.setTextureInfo(X.getThicknessTextureInfo(),W)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(D6);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[D6]={};if(Y.getThicknessFactor()>0)X.thicknessFactor=Y.getThicknessFactor();if(Number.isFinite(Y.getAttenuationDistance()))X.attenuationDistance=Y.getAttenuationDistance();if(!kQ.eq(Y.getAttenuationColor(),[1,1,1]))X.attenuationColor=Y.getAttenuationColor();if(Y.getThicknessTexture()){let G=Y.getThicknessTexture(),W=Y.getThicknessTextureInfo();X.thicknessTexture=A.createTextureInfoDef(G,W)}}}),this}}ag.EXTENSION_NAME=D6;class tI extends tB{constructor(...A){super(...A);this.extensionName=G9A}read(A){return this}write(A){return this}}tI.EXTENSION_NAME=G9A;class K9A{match(A){return A[0]===171&&A[1]===75&&A[2]===84&&A[3]===88&&A[4]===32&&A[5]===50&&A[6]===48&&A[7]===187&&A[8]===13&&A[9]===10&&A[10]===26&&A[11]===10}getSize(A){let Q=A3(A);return[Q.pixelWidth,Q.pixelHeight]}getChannels(A){let B=A3(A).dataFormatDescriptor[0];if(B.colorModel===nJA)return B.samples.length===2&&(B.samples[1].channelType&15)===15?4:3;else if(B.colorModel===sJA)return(B.samples[0].channelType&15)===3?4:3;throw Error(`Unexpected KTX2 colorModel, "${B.colorModel}".`)}getVRAMByteLength(A){let Q=A3(A),B=this.getChannels(A)>3,Y=0;for(let J=0;J{if(Q.extensions&&Q.extensions[iI]){let B=Q.extensions[iI];Q.source=B.source}}),this}read(A){return this}write(A){let Q=A.jsonDoc;return this.document.getRoot().listTextures().forEach((B)=>{if(B.getMimeType()==="image/ktx2"){let Y=A.imageIndexMap.get(B);Q.json.textures.forEach((J)=>{if(J.source===Y)J.extensions=J.extensions||{},J.extensions[iI]={source:J.source},delete J.source})}}),this}}eI.EXTENSION_NAME=iI;class og extends oB{init(){this.extensionName=N6,this.propertyType="Transform",this.parentTypes=[YA.TEXTURE_INFO]}getDefaults(){return Object.assign(super.getDefaults(),{offset:[0,0],rotation:0,scale:[1,1],texCoord:null})}getOffset(){return this.get("offset")}setOffset(A){return this.set("offset",A)}getRotation(){return this.get("rotation")}setRotation(A){return this.set("rotation",A)}getScale(){return this.get("scale")}setScale(A){return this.set("scale",A)}getTexCoord(){return this.get("texCoord")}setTexCoord(A){return this.set("texCoord",A)}}og.EXTENSION_NAME=N6;class tg extends tB{constructor(...A){super(...A);this.extensionName=N6}createTransform(){return new og(this.document.getGraph())}read(A){for(let[Q,B]of Array.from(A.textureInfos.entries())){if(!B.extensions||!B.extensions[N6])continue;let Y=this.createTransform(),J=B.extensions[N6];if(J.offset!==void 0)Y.setOffset(J.offset);if(J.rotation!==void 0)Y.setRotation(J.rotation);if(J.scale!==void 0)Y.setScale(J.scale);if(J.texCoord!==void 0)Y.setTexCoord(J.texCoord);Q.setExtension(N6,Y)}return this}write(A){let Q=Array.from(A.textureInfoDefMap.entries());for(let[B,Y]of Q){let J=B.getExtension(N6);if(!J)continue;Y.extensions=Y.extensions||{};let C={},X=kQ.eq;if(!X(J.getOffset(),[0,0]))C.offset=J.getOffset();if(J.getRotation()!==0)C.rotation=J.getRotation();if(!X(J.getScale(),[1,1]))C.scale=J.getScale();if(J.getTexCoord()!=null)C.texCoord=J.getTexCoord();Y.extensions[N6]=C}return this}}tg.EXTENSION_NAME=N6;var mdQ=[YA.ROOT,YA.SCENE,YA.NODE,YA.MESH,YA.MATERIAL,YA.TEXTURE,YA.ANIMATION];class eg extends oB{init(){this.extensionName=$5,this.propertyType="Packet",this.parentTypes=mdQ}getDefaults(){return Object.assign(super.getDefaults(),{context:{},properties:{}})}getContext(){return this.get("context")}setContext(A){return this.set("context",L6({},A))}listProperties(){return Object.keys(this.get("properties"))}getProperty(A){let Q=this.get("properties");return A in Q?Q[A]:null}setProperty(A,Q){this._assertContext(A);let B=L6({},this.get("properties"));if(Q)B[A]=Q;else delete B[A];return this.set("properties",B)}toJSONLD(){let A=Mg(this.get("context")),Q=Mg(this.get("properties"));return L6({"@context":A},Q)}fromJSONLD(A){A=Mg(A);let Q=A["@context"];if(Q)this.set("context",Q);return delete A["@context"],this.set("properties",A)}_assertContext(A){if(!(A.split(":")[0]in this.get("context")))throw Error(`${$5}: Missing context for term, "${A}".`)}}eg.EXTENSION_NAME=$5;function Mg(A){return JSON.parse(JSON.stringify(A))}class Ah extends tB{constructor(...A){super(...A);this.extensionName=$5}createPacket(){return new eg(this.document.getGraph())}listPackets(){return Array.from(this.properties)}read(A){var Q;let B=(Q=A.jsonDoc.json.extensions)==null?void 0:Q[$5];if(!B||!B.packets)return this;let Y=A.jsonDoc.json,J=this.document.getRoot(),C=B.packets.map((W)=>this.createPacket().fromJSONLD(W)),X=[[Y.asset],Y.scenes,Y.nodes,Y.meshes,Y.materials,Y.images,Y.animations],G=[[J],J.listScenes(),J.listNodes(),J.listMeshes(),J.listMaterials(),J.listTextures(),J.listAnimations()];for(let W=0;W0)Q.extensions=Q.extensions||{},Q.extensions[$5]={packets:B};return this}}Ah.EXTENSION_NAME=$5;var udQ=[aI,jg,Pg,Sg,_g,yg,oI,X3,fg,G3,W3,ug,lg,F3,sg,ag,tI,eI,tg,Ah],aXY=[Y3,rI,J3,C3,...udQ];var $CA=qA(Qh(),1),UCA=qA(s5A(),1),ynQ=qA(ZCA(),1);async function gnQ(A,Q){if(!(A instanceof Uint8Array))throw Error("[ndarray-pixels] Input must be Uint8Array or Buffer.");let{data:B,info:Y}=await UCA.default(A).ensureAlpha().raw().toBuffer({resolveWithObject:!0});return $CA.default(new Uint8Array(B),[Y.width,Y.height,4],[4,4*Y.width|0,1],0)}async function ECA(A,Q){return gnQ(A)}var hnQ=qA(Qh(),1);function WU(){return WU=Object.assign?Object.assign.bind():function(A){for(var Q=1;QQ?"–":"+",J="%";return Y+(Math.abs(A-Q)/A*100).toFixed(B)+"%"}function h3(A,Q){return`${Th(A)} → ${Th(Q)} (${dnQ(A,Q)})`}function x3(A){let Q=[];for(let B of A.listAttributes())Q.push(B);for(let B of A.listTargets())for(let Y of B.listAttributes())Q.push(Y);return Array.from(new Set(Q))}function cnQ(A,Q,B){A.swap(Q,B);for(let Y of A.listTargets())Y.swap(Q,B)}function vCA(A){let Q=A.getIndices(),B=x3(A);if(A.dispose(),Q&&!Sh(Q))Q.dispose();for(let Y of B)if(!Sh(Y))Y.dispose()}function z6(A,Q){return A.createAccessor(Q.getName()).setArray(Q.getArray()).setType(Q.getType()).setBuffer(Q.getBuffer()).setNormalized(Q.getNormalized()).setSparse(Q.getSparse())}function lnQ(A,Q=A){let B=xh(A,Q);for(let Y=0;YQ.propertyType!==YA.ROOT)}function yCA(A){for(let Q in A)return!1;return!0}function gCA(A){let Q=LJ.fromGraph(A.getGraph()),B=A.getMaterial(),Y=Q.getRoot().listMaterials().indexOf(B),J=inQ[A.getMode()],C=!!A.getIndices(),X=A.listSemantics().sort().map((W)=>{let F=A.getAttribute(W),Z=F.getElementSize(),U=F.getComponentType();return`${W}:${Z}:${U}`}).join("+"),G=A.listTargets().map((W)=>{return W.listSemantics().sort().map((F)=>{let Z=A.getAttribute(F),U=Z.getElementSize(),$=Z.getComponentType();return`${F}:${U}:${$}`}).join("+")}).join("~");return`${Y}|${J}|${C}|${X}|${G}`}function pnQ(A){return Math.pow(2,Math.ceil(Math.log(A)/Math.LN2))}var inQ={[KCA]:KCA,[S3]:S3,[xnQ]:S3,[fnQ]:S3,[k3]:k3,[bnQ]:k3,[mnQ]:k3},XU="center",VCA={pivot:"center"};function hCA(A=VCA){let Q=R6(VCA,A);return iF(XU,(B)=>{let Y=B.getLogger(),J=B.getRoot(),C=J.listAnimations().length>0||J.listSkins().length>0;B.getRoot().listScenes().forEach((X,G)=>{Y.debug(`${XU}: Scene ${G+1} / ${J.listScenes().length}.`);let W;if(typeof Q.pivot==="string"){let Z=dI(X);if(W=[(Z.max[0]-Z.min[0])/2+Z.min[0],(Z.max[1]-Z.min[1])/2+Z.min[1],(Z.max[2]-Z.min[2])/2+Z.min[2]],Q.pivot==="above")W[1]=Z.max[1];if(Q.pivot==="below")W[1]=Z.min[1]}else W=Q.pivot;Y.debug(`${XU}: Pivot "${W.join(", ")}".`);let F=[-1*W[0],-1*W[1],-1*W[2]];if(C){Y.debug(`${XU}: Model contains animation or skin. Adding a wrapper node.`);let Z=B.createNode("Pivot").setTranslation(F);X.listChildren().forEach((U)=>Z.addChild(U)),X.addChild(Z)}else Y.debug(`${XU}: Skipping wrapper, offsetting all root nodes.`),X.listChildren().forEach((Z)=>{let U=Z.getTranslation();Z.setTranslation([U[0]+F[0],U[1]+F[1],U[2]+F[2]])})}),Y.debug(`${XU}: Complete.`)})}function nnQ(A){let Q=new Set,B=A,Y;while(Y=B.getParentNode()){if(Q.has(Y))throw Error("Circular dependency in scene graph.");Q.add(Y),B=Y}return B.listParents().filter((J)=>J instanceof l4)}function snQ(A){let Q=nnQ(A),B=A.getParentNode();if(!B)return A;A.setMatrix(A.getWorldMatrix()),B.removeChild(A);for(let Y of Q)Y.addChild(A);return A}var FU=typeof Float32Array<"u"?Float32Array:Array;if(!Math.hypot)Math.hypot=function(){var A=0,Q=arguments.length;while(Q--)A+=arguments[Q]*arguments[Q];return Math.sqrt(A)};function rnQ(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Q[4],G=Q[5],W=Q[6],F=Q[7],Z=Q[8],U=Q[9],$=Q[10],E=Q[11],K=Q[12],I=Q[13],V=Q[14],H=Q[15],D=B*G-Y*X,L=B*W-J*X,z=B*F-C*X,M=Y*W-J*G,N=Y*F-C*G,q=J*F-C*W,w=Z*I-U*K,P=Z*V-$*K,_=Z*H-E*K,j=U*V-$*I,k=U*H-E*I,T=$*H-E*V,S=D*T-L*k+z*j+M*_-N*P+q*w;if(!S)return null;return S=1/S,A[0]=(G*T-W*k+F*j)*S,A[1]=(J*k-Y*T-C*j)*S,A[2]=(I*q-V*N+H*M)*S,A[3]=($*N-U*q-E*M)*S,A[4]=(W*_-X*T-F*P)*S,A[5]=(B*T-J*_+C*P)*S,A[6]=(V*z-K*q-H*L)*S,A[7]=(Z*q-$*z+E*L)*S,A[8]=(X*k-G*_+F*w)*S,A[9]=(Y*_-B*k-C*w)*S,A[10]=(K*N-I*z+H*D)*S,A[11]=(U*z-Z*N-E*D)*S,A[12]=(G*P-X*j-W*w)*S,A[13]=(B*j-Y*P+J*w)*S,A[14]=(I*L-K*M-V*D)*S,A[15]=(Z*M-U*L+$*D)*S,A}function anQ(A){var Q=A[0],B=A[1],Y=A[2],J=A[3],C=A[4],X=A[5],G=A[6],W=A[7],F=A[8],Z=A[9],U=A[10],$=A[11],E=A[12],K=A[13],I=A[14],V=A[15],H=Q*X-B*C,D=Q*G-Y*C,L=Q*W-J*C,z=B*G-Y*X,M=B*W-J*X,N=Y*W-J*G,q=F*K-Z*E,w=F*I-U*E,P=F*V-$*E,_=Z*I-U*K,j=Z*V-$*K,k=U*V-$*I;return H*k-D*j+L*_+z*P-M*w+N*q}function xCA(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],W=Q[5],F=Q[6],Z=Q[7],U=Q[8],$=Q[9],E=Q[10],K=Q[11],I=Q[12],V=Q[13],H=Q[14],D=Q[15],L=B[0],z=B[1],M=B[2],N=B[3];return A[0]=L*Y+z*G+M*U+N*I,A[1]=L*J+z*W+M*$+N*V,A[2]=L*C+z*F+M*E+N*H,A[3]=L*X+z*Z+M*K+N*D,L=B[4],z=B[5],M=B[6],N=B[7],A[4]=L*Y+z*G+M*U+N*I,A[5]=L*J+z*W+M*$+N*V,A[6]=L*C+z*F+M*E+N*H,A[7]=L*X+z*Z+M*K+N*D,L=B[8],z=B[9],M=B[10],N=B[11],A[8]=L*Y+z*G+M*U+N*I,A[9]=L*J+z*W+M*$+N*V,A[10]=L*C+z*F+M*E+N*H,A[11]=L*X+z*Z+M*K+N*D,L=B[12],z=B[13],M=B[14],N=B[15],A[12]=L*Y+z*G+M*U+N*I,A[13]=L*J+z*W+M*$+N*V,A[14]=L*C+z*F+M*E+N*H,A[15]=L*X+z*Z+M*K+N*D,A}var zJ;(function(A){A.RENDER="render",A.RENDER_CACHED="render-cached",A.UPLOAD="upload",A.UPLOAD_NAIVE="upload-naive",A.DISTINCT="distinct",A.DISTINCT_POSITION="distinct-position",A.UNUSED="unused"})(zJ||(zJ={}));function pF(A,Q){let B=A.getAttribute("POSITION"),Y=A.getIndices();switch(Q){case zJ.RENDER:return Y?Y.getCount():B.getCount();case zJ.RENDER_CACHED:return Y?new Set(Y.getArray()).size:B.getCount();case zJ.UPLOAD_NAIVE:case zJ.UPLOAD:return B.getCount();case zJ.DISTINCT:case zJ.DISTINCT_POSITION:return onQ(Q);case zJ.UNUSED:return Y?B.getCount()-new Set(Y.getArray()).size:0;default:return tnQ(Q)}}function onQ(A){throw Error(`Not implemented: ${A}`)}function tnQ(A){throw Error(`Unexpected value: ${A}`)}var U7=4294967295;class fCA{constructor(A){this.attributes=[],this.u8=void 0,this.u32=void 0;let Q=0;for(let B of x3(A))Q+=this._initAttribute(B);this.u8=new Uint8Array(Q),this.u32=new Uint32Array(this.u8.buffer)}_initAttribute(A){let Q=A.getArray(),B=new Uint8Array(Q.buffer,Q.byteOffset,Q.byteLength),Y=A.getElementSize()*A.getComponentSize(),J=jQ.padNumber(Y);return this.attributes.push({u8:B,byteStride:Y,paddedByteStride:J}),J}hash(A){let Q=0;for(let{u8:B,byteStride:Y,paddedByteStride:J}of this.attributes){for(let C=0;C>>0,X=(X^X>>24)>>>0,X=Math.imul(X,1540483477)>>>0,A=Math.imul(A,1540483477)>>>0,A=(A^X)>>>0}return A}function AsQ(A,Q,B,Y,J=U7){let C=Q-1,G=B.hash(Y)&C;for(let W=0;W<=C;W++){let F=A[G];if(F===J||B.equal(F,Y))return G;G=G+W+1&C}throw Error("Hash table full.")}function UH(A,Q,B){let Y=LJ.fromGraph(A.getGraph());if(!Q||!B)[Q,B]=QsQ(A);let J=A.getIndices(),C=J?J.getArray():null,X=pF(A,zJ.RENDER),G=Y.createAccessor(),W=X,F=xh(W,B);for(let U=0;U0)C=1/Math.sqrt(C);return A[0]=Q[0]*C,A[1]=Q[1]*C,A[2]=Q[2]*C,A}function GsQ(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=B[3]*Y+B[7]*J+B[11]*C+B[15];return X=X||1,A[0]=(B[0]*Y+B[4]*J+B[8]*C+B[12])/X,A[1]=(B[1]*Y+B[5]*J+B[9]*C+B[13])/X,A[2]=(B[2]*Y+B[6]*J+B[10]*C+B[14])/X,A}function WsQ(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2];return A[0]=Y*B[0]+J*B[3]+C*B[6],A[1]=Y*B[1]+J*B[4]+C*B[7],A[2]=Y*B[2]+J*B[5]+C*B[8],A}var FsQ=XsQ;(function(){var A=f3();return function(Q,B,Y,J,C,X){var G,W;if(!B)B=3;if(!Y)Y=0;if(J)W=Math.min(J*B+Y,Q.length);else W=Q.length;for(G=Y;G{let Y=B.getLogger();for(let J of B.getRoot().listMeshes()){for(let C of J.listPrimitives())if(b3(C,Q),pF(C,zJ.RENDER)===0)vCA(C);if(J.listPrimitives().length===0)J.dispose()}Y.debug(`${_h}: Complete.`)})}function b3(A,Q=v3){let B=A.getGraph(),J=LJ.fromGraph(B).getLogger(),C=WU({},v3,Q);if(A.getIndices()&&!C.overwrite)return;if(A.getMode()===q0.Mode.POINTS)return;let X=A.getAttribute("POSITION").getCount(),G=A.getIndices(),W=G==null?void 0:G.getArray(),F=G?G.getCount():X,Z=new fCA(A),U=pnQ(X+X/4),$=new Uint32Array(U).fill(U7),E=new Uint32Array(X).fill(U7),K=0;for(let I=0;IY instanceof cI&&Y!==Q))A=A.clone();for(let Y of A.listTargets())if(Y.listParents().some((C)=>C instanceof q0&&C!==A))A.removeTarget(Y).addTarget(Y.clone());return A}var NCA=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function uCA(A){let Q=A.getMesh(),B=A.getMatrix();if(Q&&!kQ.eq(B,NCA))UsQ(Q,B);for(let Y of A.listChildren()){let J=Y.getMatrix();xCA(J,J,B),Y.setMatrix(J)}return A.setMatrix(NCA)}var{LINES:KsQ,LINE_STRIP:VsQ,LINE_LOOP:IsQ,TRIANGLES:HsQ,TRIANGLE_STRIP:DsQ,TRIANGLE_FAN:NsQ}=q0.Mode;function LsQ(A){let Q=A.getGraph(),B=LJ.fromGraph(Q);if(!A.getIndices())b3(A);let Y=A.getIndices(),J=Y.getArray(),C=_CA(A),G=new J7[Y.getComponentType()](C*2),W=A.getMode();if(W===VsQ)for(let Z=0;ZZ!==F&&Z!==A))A.setIndices(z6(B,Y).setArray(G));else Y.setArray(G)}function dCA(A){let Q=A.getGraph(),B=LJ.fromGraph(Q);if(!A.getIndices())b3(A);let Y=A.getIndices(),J=Y.getArray(),C=_CA(A),G=new J7[Y.getComponentType()](C*3),W=A.getMode();if(W===DsQ)for(let Z=0,U=J.length;ZZ!==F&&Z!==A))A.setIndices(z6(B,Y).setArray(G));else Y.setArray(G)}var JGY={keepUniqueNames:!1,propertyTypes:[YA.ACCESSOR,YA.MESH,YA.TEXTURE,YA.MATERIAL,YA.SKIN]};var LCA="dequantize",y3={pattern:/^((?!JOINTS_).)*$/};function cCA(A=y3){let Q=R6(y3,A);return iF(LCA,(B)=>{let Y=B.getLogger();for(let J of B.getRoot().listMeshes())for(let C of J.listPrimitives())qsQ(C,Q);B.createExtension(tI).dispose(),Y.debug(`${LCA}: Complete.`)})}function qsQ(A,Q=y3){let B=R6(y3,Q);for(let Y of A.listSemantics())if(B.pattern.test(Y))vh(A.getAttribute(Y));for(let Y of A.listTargets())for(let J of Y.listSemantics())if(B.pattern.test(J))vh(Y.getAttribute(J))}function vh(A){let Q=A.getArray();if(!Q)return;let B=g3(Q,A.getComponentType(),A.getNormalized());A.setArray(B).setNormalized(!1)}function g3(A,Q,B){let Y=new Float32Array(A.length);for(let J=0,C=A.length;J{if(Y.propertyType===lCA)return Y;let J=B.get(Y);if(!J)J=new Y.constructor(A.getGraph()),B.set(Y,J);return J}}function RsQ(A){let Q=new Set;for(let B of A.getGraph().listEdges())Q.add(B.getChild());return Array.from(Q)}function iCA(){var A=new FU(4);if(FU!=Float32Array)A[0]=0,A[1]=0,A[2]=0,A[3]=0;return A}function wsQ(A,Q,B){return A[0]=Q[0]+B[0],A[1]=Q[1]+B[1],A[2]=Q[2]+B[2],A[3]=Q[3]+B[3],A}function jsQ(A,Q,B){return A[0]=Q[0]-B[0],A[1]=Q[1]-B[1],A[2]=Q[2]-B[2],A[3]=Q[3]-B[3],A}function OsQ(A,Q,B){return A[0]=Q[0]*B[0],A[1]=Q[1]*B[1],A[2]=Q[2]*B[2],A[3]=Q[3]*B[3],A}function PsQ(A,Q,B){return A[0]=Q[0]*B,A[1]=Q[1]*B,A[2]=Q[2]*B,A[3]=Q[3]*B,A}function TsQ(A){var Q=A[0],B=A[1],Y=A[2],J=A[3];return Math.hypot(Q,B,Y,J)}var nCA=jsQ,SsQ=OsQ,sCA=TsQ;(function(){var A=iCA();return function(Q,B,Y,J,C,X){var G,W;if(!B)B=4;if(!Y)Y=0;if(J)W=Math.min(J*B+Y,Q.length);else W=Q.length;for(G=Y;G{return J.getAttributes().isColor||ksQ.test(J.getName())})?"srgb":null}function vsQ(A){let Q=A.getGraph(),B=new Set,Y=new Set;function J(C){let X=new Set;for(let G of Q.listChildEdges(C))if(G.getChild()instanceof mF)X.add(G.getName()+"Info");for(let G of Q.listChildEdges(C)){let W=G.getChild();if(B.has(W))continue;if(B.add(W),W instanceof gB&&X.has(G.getName()))Y.add(W);else if(W instanceof oB)J(W)}}return J(A),Array.from(Y)}function ysQ(A){let B=LJ.fromGraph(A.getGraph()).getRoot(),Y=A.getGraph().listParentEdges(A).filter((J)=>J.getParent()!==B).map((J)=>J.getName());return Array.from(new Set(Y))}var GU="prune",yh=0.011764705882352941,qCA={propertyTypes:[YA.NODE,YA.SKIN,YA.MESH,YA.CAMERA,YA.PRIMITIVE,YA.PRIMITIVE_TARGET,YA.ANIMATION,YA.MATERIAL,YA.TEXTURE,YA.ACCESSOR,YA.BUFFER],keepLeaves:!1,keepAttributes:!1,keepIndices:!1,keepSolidTextures:!1,keepExtras:!1};function m3(A=qCA){let Q=R6(qCA,A),B=new Set(Q.propertyTypes),Y=Q.keepExtras;return iF(GU,async(J)=>{let C=J.getLogger(),X=J.getRoot(),G=J.getGraph(),W=new rCA,F=(Z)=>W.dispose(Z.target);if(G.addEventListener("node:dispose",F),B.has(YA.MESH))for(let Z of X.listMeshes()){if(Z.listPrimitives().length>0)continue;Z.dispose()}if(B.has(YA.NODE)){if(!Q.keepLeaves)for(let Z of X.listScenes())aCA(G,Z,Y);for(let Z of X.listNodes())K5(Z,Y)}if(B.has(YA.SKIN))for(let Z of X.listSkins())K5(Z,Y);if(B.has(YA.MESH))for(let Z of X.listMeshes())K5(Z,Y);if(B.has(YA.CAMERA))for(let Z of X.listCameras())K5(Z,Y);if(B.has(YA.PRIMITIVE))MCA(G,YA.PRIMITIVE,Y);if(B.has(YA.PRIMITIVE_TARGET))MCA(G,YA.PRIMITIVE_TARGET,Y);if(!Q.keepAttributes&&B.has(YA.ACCESSOR)){let Z=new Map;for(let U of X.listMeshes())for(let $ of U.listPrimitives()){let E=$.getMaterial();if(!E)continue;let K=oCA(J,$,E),I=gsQ($,K);zCA($,I),$.listTargets().forEach((V)=>zCA(V,I)),Z.has(E)?Z.get(E).add($):Z.set(E,new Set([$]))}for(let[U,$]of Z)hsQ(U,Array.from($))}if(B.has(YA.ANIMATION))for(let Z of X.listAnimations()){for(let U of Z.listChannels())if(!U.getTargetNode())U.dispose();if(!Z.listChannels().length){let U=Z.listSamplers();K5(Z,Y),U.forEach(($)=>K5($,Y))}else Z.listSamplers().forEach((U)=>K5(U,Y))}if(B.has(YA.MATERIAL))X.listMaterials().forEach((Z)=>K5(Z,Y));if(B.has(YA.TEXTURE)){if(X.listTextures().forEach((Z)=>K5(Z,Y)),!Q.keepSolidTextures)await xsQ(J)}if(B.has(YA.ACCESSOR))X.listAccessors().forEach((Z)=>K5(Z,Y));if(B.has(YA.BUFFER))X.listBuffers().forEach((Z)=>K5(Z,Y));if(G.removeEventListener("node:dispose",F),!W.empty()){let Z=W.entries().map(([U,$])=>`${U} (${$})`).join(", ");C.info(`${GU}: Removed types... ${Z}`)}else C.debug(`${GU}: No unused properties found.`);C.debug(`${GU}: Complete.`)})}class rCA{constructor(){this.disposed={}}empty(){for(let A in this.disposed)return!1;return!0}entries(){return Object.entries(this.disposed)}dispose(A){this.disposed[A.propertyType]=this.disposed[A.propertyType]||0,this.disposed[A.propertyType]++}}function K5(A,Q){let B=A.listParents().filter((J)=>!(J instanceof p4||J instanceof C6)),Y=Q&&!yCA(A.getExtras());if(!B.length&&!Y)A.dispose()}function MCA(A,Q,B){for(let Y of A.listEdges()){let J=Y.getParent();if(J.propertyType===Q)K5(J,B)}}function aCA(A,Q,B){if(Q.listChildren().forEach((X)=>aCA(A,X,B)),Q instanceof l4)return;let Y=A.listParentEdges(Q).some((X)=>{let G=X.getParent().propertyType;return G!==YA.ROOT&&G!==YA.SCENE&&G!==YA.NODE}),J=A.listChildren(Q).length===0,C=B&&!yCA(Q.getExtras());if(J&&!Y&&!C)Q.dispose()}function zCA(A,Q){for(let B of Q)A.setAttribute(B,null)}function gsQ(A,Q){let B=[];for(let Y of A.listSemantics())if(Y==="NORMAL"&&!Q.has(Y))B.push(Y);else if(Y==="TANGENT"&&!Q.has(Y))B.push(Y);else if(Y.startsWith("TEXCOORD_")&&!Q.has(Y))B.push(Y);else if(Y.startsWith("COLOR_")&&Y!=="COLOR_0")B.push(Y);return B}function oCA(A,Q,B,Y=new Set){let C=A.getGraph().listChildEdges(B),X=new Set;for(let F of C)if(F.getChild()instanceof mF)X.add(F.getName());for(let F of C){let Z=F.getName(),U=F.getChild();if(U instanceof gB){if(X.has(Z.replace(/Info$/,"")))Y.add(`TEXCOORD_${U.getTexCoord()}`)}if(U instanceof mF&&Z.match(/normalTexture/i))Y.add("TANGENT");if(U instanceof oB)oCA(A,Q,U,Y)}let G=B instanceof y1&&!B.getExtension("KHR_materials_unlit"),W=Q.getMode()===q0.Mode.POINTS;if(G&&!W)Y.add("NORMAL");return Y}function hsQ(A,Q){let B=vsQ(A),Y=new Set(B.map((W)=>W.getTexCoord())),J=Array.from(Y).sort(),C=new Map(J.map((W,F)=>[W,F])),X=new Map(J.map((W,F)=>[`TEXCOORD_${W}`,`TEXCOORD_${F}`]));for(let W of B){let F=W.getTexCoord();W.setTexCoord(C.get(F))}for(let W of Q){let F=W.listSemantics().filter((Z)=>Z.startsWith("TEXCOORD_")).sort();G(W,F),W.listTargets().forEach((Z)=>G(Z,F))}function G(W,F){for(let Z of F){let U=W.getAttribute(Z);if(!U)continue;let $=X.get(Z);if($===Z)continue;W.setAttribute($,U),W.setAttribute(Z,null)}}}async function xsQ(A){let Q=A.getRoot(),B=A.getGraph(),Y=A.getLogger(),C=Q.listTextures().map(async(X)=>{var G;let W=await bsQ(X);if(!W)return;if(_sQ(X)==="srgb")Hg.convertSRGBToLinear(W,W);let F=X.getName()||X.getURI(),Z=(G=X.getSize())==null?void 0:G.join("x"),U=ysQ(X);for(let $ of B.listParentEdges(X)){let E=$.getParent();if(E!==Q&&fsQ(E,W,$.getName(),Y))$.dispose()}if(X.listParents().length===1)X.dispose(),Y.debug(`${GU}: Removed solid-color texture "${F}" (${Z}px ${U.join(", ")})`)});await Promise.all(C)}function fsQ(A,Q,B,Y){if(A instanceof y1)switch(B){case"baseColorTexture":return A.setBaseColorFactor(SsQ(Q,Q,A.getBaseColorFactor())),!0;case"emissiveTexture":return A.setEmissiveFactor(FsQ([0,0,0],Q.slice(0,3),A.getEmissiveFactor())),!0;case"occlusionTexture":return Math.abs(Q[0]-1)<=yh;case"metallicRoughnessTexture":return A.setRoughnessFactor(Q[1]*A.getRoughnessFactor()),A.setMetallicFactor(Q[2]*A.getMetallicFactor()),!0;case"normalTexture":return sCA(nCA(iCA(),Q,[0.5,0.5,1,1]))<=yh}return Y.warn(`${GU}: Detected single-color ${B} texture. Pruning ${B} not yet supported.`),!1}async function bsQ(A){let Q=await msQ(A);if(!Q)return null;let B=[1/0,1/0,1/0,1/0],Y=[-1/0,-1/0,-1/0,-1/0],J=[0,0,0,0],[C,X]=Q.shape;for(let G=0;Gyh)return null}return PsQ(J,wsQ(J,Y,B),0.00196078431372549)}async function msQ(A){try{return await ECA(A.getImage(),A.getMimeType())}catch(Q){return null}}var Oh="flatten",RCA={cleanup:!0};function mh(A=RCA){let Q=R6(RCA,A);return iF(Oh,async(B)=>{let Y=B.getRoot(),J=B.getLogger(),C=new Set;for(let F of Y.listSkins())for(let Z of F.listJoints())C.add(Z);let X=new Set;for(let F of Y.listAnimations())for(let Z of F.listChannels()){let U=Z.getTargetNode();if(U&&Z.getTargetPath()!=="weights")X.add(U)}let G=new Set,W=new Set;for(let F of Y.listScenes())F.traverse((Z)=>{let U=Z.getParentNode();if(!U)return;if(C.has(U)||G.has(U))G.add(Z);if(X.has(U)||W.has(U))W.add(Z)});for(let F of Y.listScenes())F.traverse((Z)=>{if(X.has(Z))return;if(G.has(Z))return;if(W.has(Z))return;snQ(Z)});if(X.size)J.debug(`${Oh}: Flattening node hierarchies with TRS animation not yet supported.`);if(Q.cleanup)await B.transform(m3({propertyTypes:[YA.NODE],keepLeaves:!1}));J.debug(`${Oh}: Complete.`)})}function tCA(A){return dI(A)}var usQ={skipValidation:!1},wCA=4294967295,{LINE_STRIP:dsQ,LINE_LOOP:csQ,TRIANGLE_STRIP:lsQ,TRIANGLE_FAN:psQ}=q0.Mode;function isQ(A,Q={}){let B=R6(usQ,Q),Y=A[0],J=LJ.fromGraph(Y.getGraph());if(!B.skipValidation&&new Set(A.map(gCA)).size>1)throw Error("Requires >=2 Primitives, sharing the same Material and Mode, with compatible vertex attributes and indices.");for(let E of A)switch(E.getMode()){case dsQ:case csQ:LsQ(E);break;case lsQ:case psQ:dCA(E);break}let C=[],X=new Uint32Array(A.length),G=0,W=0;for(let E=0;E!0};function uh(A=jCA){let Q=R6(jCA,A);return iF(gh,async(B)=>{let Y=B.getRoot(),J=B.getLogger();for(let C of Y.listScenes())OCA(B,C,Q),C.traverse((X)=>OCA(B,X,Q));if(Q.cleanup)await B.transform(m3({propertyTypes:[asQ,osQ,tsQ,esQ],keepAttributes:!0,keepIndices:!0,keepLeaves:!1}));J.debug(`${gh}: Complete.`)})}function OCA(A,Q,B){let Y=A.getLogger(),J={},C=Q.listChildren();for(let W=0;W$ instanceof C6))continue;let U=F.getMesh();if(!U)continue;if(F.getExtension("EXT_mesh_gpu_instancing"))continue;if(F.getSkin())continue;for(let $ of U.listPrimitives()){if($.listTargets().length>0)continue;let E=$.getMaterial();if(E&&E.getExtension("KHR_materials_volume"))continue;UH($),QrQ($);let K=gCA($),I=U.getName()||F.getName();if(B.keepMeshes||B.keepNamed&&I)K+=`|${W}`;if(!(K in J))J[K]={prims:[],primMeshes:[],primNodes:[],dstNode:F,dstMesh:void 0};let V=J[K];V.prims.push($),V.primNodes.push(F)}}let X=Object.values(J).filter(({prims:W})=>W.length>1),G=new Set(X.flatMap((W)=>W.primNodes));for(let W of G){let F=W.getMesh();if(F.listParents().some((U)=>{return U.propertyType!==rsQ&&W!==U}))W.setMesh(F.clone())}for(let W of X){let{dstNode:F,primNodes:Z}=W;W.dstMesh=F.getMesh(),W.primMeshes=Z.map((U)=>U.getMesh())}for(let W of X){let{prims:F,primNodes:Z,primMeshes:U,dstNode:$,dstMesh:E}=W,K=$.getMatrix();for(let H=0;H=Math.PI}else if(B==="lerp"){let H=WrQ(C,W,G,I);V=!_3(X,H,Y)}else if(B==="step")V=!_3(X,W)||!_3(X,G)}if(V){if(U!==Z)A[Z]=A[U],SCA(Q,Z,$H(Q,U,C));Z++}}if(F>0)A[Z]=A[F],SCA(Q,Z,$H(Q,F,C)),Z++;return Z}function $H(A,Q,B){for(let Y=0,J=B.length;YB)return!1;return!0}function GrQ(A,Q,B){return A*(1-B)+Q*B}function WrQ(A,Q,B,Y){for(let J=0;JCrQ)$=Math.acos(E),K=Math.sin($),I=Math.sin((1-Y)*$)/K,V=Math.sin(Y*$)/K;else I=1-Y,V=Y;return A[0]=I*J+V*W,A[1]=I*C+V*F,A[2]=I*X+V*Z,A[3]=I*G+V*U,A}function kCA(A,Q){let B=ZrQ(A,Q);return Math.acos(2*B*B-1)}function ZrQ(A,Q){return A[0]*Q[0]+A[1]*Q[1]+A[2]*Q[2]+A[3]*Q[3]}var $GY=new Float32Array(0),UGY={ready:Promise.resolve(),resample:XrQ,tolerance:0.0001,cleanup:!0};var lF="simplify",{POINTS:eCA,LINES:$rQ,LINE_STRIP:UrQ,LINE_LOOP:ErQ,TRIANGLES:KrQ,TRIANGLE_STRIP:A1A,TRIANGLE_FAN:Q1A}=q0.Mode,B1A={ratio:0,error:0.0001,lockBorder:!1};function Y1A(A){let Q=R6(B1A,A),B=Q.simplifier;if(!B)throw Error(`${lF}: simplifier dependency required — install "meshoptimizer".`);return iF(lF,async(Y)=>{let J=Y.getLogger();await B.ready,await Y.transform(fh({overwrite:!1}));let C=0;for(let X of Y.getRoot().listMeshes()){for(let G of X.listPrimitives()){let W=G.getMode();if(W!==KrQ&&W!==A1A&&W!==Q1A&&W!==eCA){C++;continue}if(VrQ(G,Q),pF(G,zJ.RENDER)===0)vCA(G)}if(X.listPrimitives().length===0)X.dispose()}if(C>0)J.warn(`${lF}: Skipped ${C} primitives: Unsupported draw mode.`);J.debug(`${lF}: Complete.`)})}function VrQ(A,Q){let B=WU({},B1A,Q),Y=B.simplifier,J=A.getGraph(),C=LJ.fromGraph(J),X=C.getLogger();switch(A.getMode()){case eCA:return IrQ(C,A,B);case $rQ:case UrQ:case ErQ:return X.warn(`${lF}: Skipping primitive simplification: Unsupported draw mode.`),A;case A1A:case Q1A:dCA(A);break}let G=pF(A,zJ.UPLOAD),W=pF(A,zJ.RENDER);if(W($&A)/J*256/W,shiftGreen:($)=>($&Q)/C*256/F,shiftBlue:($)=>($&B)/X*256/Z,shiftAlpha:Y!==0?($)=>($&Y)/G*256/U:()=>255}}var w6;(function(A){A[A.NONE=0]="NONE",A[A.BI_RLE8=1]="BI_RLE8",A[A.BI_RLE4=2]="BI_RLE4",A[A.BI_BIT_FIELDS=3]="BI_BIT_FIELDS",A[A.BI_ALPHA_BIT_FIELDS=6]="BI_ALPHA_BIT_FIELDS"})(w6||(w6={}));class p3{flag;fileSize;reserved1;reserved2;offset;headerSize;width;height;planes;bitPP;compression;rawSize;hr;vr;colors;importantColors;palette;data;maskRed;maskGreen;maskBlue;maskAlpha;toRGBA;pos;bottomUp;buffer;locRed;locGreen;locBlue;locAlpha;shiftRed;shiftGreen;shiftBlue;shiftAlpha;constructor(A,{toRGBA:Q}={toRGBA:!1}){if(this.buffer=A,this.toRGBA=!!Q,this.pos=0,this.bottomUp=!0,this.flag=this.buffer.toString("utf-8",0,this.pos+=2),this.flag!=="BM")throw Error("Invalid BMP File");this.locRed=this.toRGBA?0:3,this.locGreen=this.toRGBA?1:2,this.locBlue=this.toRGBA?2:1,this.locAlpha=this.toRGBA?3:0,this.parseHeader(),this.parseRGBA()}parseHeader(){if(this.fileSize=this.readUInt32LE(),this.reserved1=this.buffer.readUInt16LE(this.pos),this.pos+=2,this.reserved2=this.buffer.readUInt16LE(this.pos),this.pos+=2,this.offset=this.readUInt32LE(),this.headerSize=this.readUInt32LE(),!(this.headerSize in V5))throw Error(`Unsupported BMP header size ${this.headerSize}`);if(this.width=this.readUInt32LE(),this.height=this.readUInt32LE(),this.height=this.height>2147483647?this.height-4294967296:this.height,this.planes=this.buffer.readUInt16LE(this.pos),this.pos+=2,this.bitPP=this.buffer.readUInt16LE(this.pos),this.pos+=2,this.compression=this.readUInt32LE(),this.rawSize=this.readUInt32LE(),this.hr=this.readUInt32LE(),this.vr=this.readUInt32LE(),this.colors=this.readUInt32LE(),this.importantColors=this.readUInt32LE(),this.bitPP===32)this.maskAlpha=0,this.maskRed=16711680,this.maskGreen=65280,this.maskBlue=255;else if(this.bitPP===16)this.maskAlpha=0,this.maskRed=31744,this.maskGreen=992,this.maskBlue=31;if(this.headerSize>V5.BITMAP_INFO_HEADER||this.compression===w6.BI_BIT_FIELDS||this.compression===w6.BI_ALPHA_BIT_FIELDS)this.maskRed=this.readUInt32LE(),this.maskGreen=this.readUInt32LE(),this.maskBlue=this.readUInt32LE();if(this.headerSize>V5.BITMAP_V2_INFO_HEADER||this.compression===w6.BI_ALPHA_BIT_FIELDS)this.maskAlpha=this.readUInt32LE();if(this.headerSize>V5.BITMAP_V3_INFO_HEADER)this.pos+=V5.BITMAP_V4_HEADER-V5.BITMAP_V3_INFO_HEADER;if(this.headerSize>V5.BITMAP_V4_HEADER)this.pos+=V5.BITMAP_V5_HEADER-V5.BITMAP_V4_HEADER;if(this.bitPP<=8||this.colors>0){let Q=this.colors===0?1<{if(C!==Y)Y=C;let X=this.buffer.readUInt8(this.pos++),G=C*this.width*4+J*8*4;for(let W=0;W<8;W++)if(J*8+W>7-W&1];this.data[G+W*this.locAlpha]=0,this.data[G+W*4+this.locBlue]=F.blue,this.data[G+W*4+this.locGreen]=F.green,this.data[G+W*4+this.locRed]=F.red}else break})}bit4(){if(this.compression===w6.BI_RLE4){this.data.fill(0);let A=!1,Q=this.bottomUp?this.height-1:0,B=0;while(B>4),X&1&&X+1>1&1)===1)this.pos++}}else for(let C=0;C>4),A=!A}}else{let A=Math.ceil(this.width/2),Q=A%4,B=Q!==0?4-Q:0;this.scanImage(B,A,(Y,J)=>{let C=this.buffer.readUInt8(this.pos++),X=J*this.width*4+Y*2*4,G=C>>4,W=this.palette[G];if(this.data[X]=0,this.data[X+1]=W.blue,this.data[X+2]=W.green,this.data[X+3]=W.red,Y*2+1>=this.width)return!1;let F=C&15;W=this.palette[F],this.data[X+4]=0,this.data[X+4+1]=W.blue,this.data[X+4+2]=W.green,this.data[X+4+3]=W.red})}}bit8(){if(this.compression===w6.BI_RLE8){this.data.fill(0);let A=this.bottomUp?this.height-1:0,Q=0;while(Q{let J=this.buffer.readUInt8(this.pos++),C=Y*this.width*4+B*4;if(J{let Y=B*this.width*4+Q*4,J=this.buffer.readUInt16LE(this.pos);this.pos+=2,this.data[Y+this.locRed]=this.shiftRed(J),this.data[Y+this.locGreen]=this.shiftGreen(J),this.data[Y+this.locBlue]=this.shiftBlue(J),this.data[Y+this.locAlpha]=this.shiftAlpha(J)})}bit24(){let A=this.width%4;this.scanImage(A,this.width,(Q,B)=>{let Y=B*this.width*4+Q*4,J=this.buffer.readUInt8(this.pos++),C=this.buffer.readUInt8(this.pos++),X=this.buffer.readUInt8(this.pos++);this.data[Y+this.locRed]=X,this.data[Y+this.locGreen]=C,this.data[Y+this.locBlue]=J,this.data[Y+this.locAlpha]=0})}bit32(){this.scanImage(0,this.width,(A,Q)=>{let B=Q*this.width*4+A*4,Y=this.readUInt32LE();this.data[B+this.locRed]=this.shiftRed(Y),this.data[B+this.locGreen]=this.shiftGreen(Y),this.data[B+this.locBlue]=this.shiftBlue(Y),this.data[B+this.locAlpha]=this.shiftAlpha(Y)})}scanImage(A=0,Q=this.width,B){for(let Y=this.height-1;Y>=0;Y--){let J=this.bottomUp?Y:this.height-1-Y;for(let C=0;CQ<<1|B,0)}function sh(A){return A.quad<<24|A.red<<16|A.green<<8|A.blue}class i3{fileSize;reserved1;reserved2;offset;width;flag;height;planes;bitPP;compress;hr;vr;colors;importantColors;rawSize;headerSize;data;palette;extraBytes;buffer;bytesInColor;pos;constructor(A){if(this.buffer=A.data,this.width=A.width,this.height=A.height,this.headerSize=V5.BITMAP_INFO_HEADER,this.flag="BM",this.bitPP=A.bitPP||24,this.offset=54,this.reserved1=A.reserved1||0,this.reserved2=A.reserved2||0,this.planes=1,this.compress=0,this.hr=A.hr||0,this.vr=A.vr||0,this.importantColors=A.importantColors||0,this.colors=Math.min(2**(this.bitPP-1||1),A.colors||1/0),this.palette=A.palette||[],this.colors&&this.bitPP<16)this.offset+=this.colors*4;else this.colors=0;switch(this.bitPP){case 32:this.bytesInColor=4;break;case 16:this.bytesInColor=2;break;case 8:this.bytesInColor=1;break;case 4:this.bytesInColor=0.5;break;case 1:this.bytesInColor=0.125;break;default:this.bytesInColor=3,this.bitPP=24}let Q=this.width*this.bitPP/32,B=Math.ceil(Q);this.extraBytes=(B-Q)*4,this.rawSize=this.height*B*4+2,this.fileSize=this.rawSize+this.offset,this.data=Buffer.alloc(this.fileSize,1),this.pos=0,this.encode()}encode(){switch(this.pos=0,this.writeHeader(),this.bitPP){case 32:this.bit32();break;case 16:this.bit16();break;case 8:this.bit8();break;case 4:this.bit4();break;case 1:this.bit1();break;default:this.bit24()}}writeHeader(){this.data.write(this.flag,this.pos,2),this.pos+=2,this.writeUInt32LE(this.fileSize),this.writeUInt32LE(this.reserved1<<16|this.reserved2),this.writeUInt32LE(this.offset),this.writeUInt32LE(this.headerSize),this.writeUInt32LE(this.width),this.writeUInt32LE(this.height),this.data.writeUInt16LE(this.planes,this.pos),this.pos+=2,this.data.writeUInt16LE(this.bitPP,this.pos),this.pos+=2,this.writeUInt32LE(this.compress),this.writeUInt32LE(this.rawSize),this.writeUInt32LE(this.hr),this.writeUInt32LE(this.vr),this.writeUInt32LE(this.colors),this.writeUInt32LE(this.importantColors)}bit1(){if(this.palette.length&&this.colors===2)this.initColors(1);else this.writeUInt32LE(16777215),this.writeUInt32LE(0);this.pos+=1;let A=[];this.writeImage((Q,B,Y)=>{let J=B;J++;let C=this.buffer[J++],X=this.buffer[J++],W=this.buffer[J++]*0.2126+X*0.7152+C*0.0722;if(A.push(W>127?0:1),(Y+1)%8===0)this.data[Q-1]=Z1A(A),A=[];else if(Y===this.width-1&&A.length>0)this.data[Q-1]=Z1A(A)<<4,A=[];return J})}bit4(){let A=this.initColors(4),Q=[];this.writeImage((B,Y,J)=>{let C=Y,X=sh({quad:this.buffer[C++],blue:this.buffer[C++],green:this.buffer[C++],red:this.buffer[C++]}),G=A.findIndex((W)=>W===X);if(G!==-1)Q.push(G);else Q.push(0);if((J+1)%2===0)this.data[B]=Q[0]<<4|Q[1],Q=[];return C})}bit8(){let A=this.initColors(8);this.writeImage((Q,B)=>{let Y=B,J=sh({quad:this.buffer[Y++],blue:this.buffer[Y++],green:this.buffer[Y++],red:this.buffer[Y++]}),C=A.findIndex((X)=>X===J);if(C!==-1)this.data[Q]=C;else this.data[Q]=0;return Y})}bit16(){this.writeImage((A,Q)=>{let B=Q+1,Y=this.buffer[B++]/8,J=this.buffer[B++]/8,X=this.buffer[B++]/8<<10|J<<5|Y;return this.data[A]=X&255,this.data[A+1]=(X&65280)>>8,B})}bit24(){this.writeImage((A,Q)=>{let B=Q+1;return this.data[A]=this.buffer[B++],this.data[A+1]=this.buffer[B++],this.data[A+2]=this.buffer[B++],B})}bit32(){this.writeImage((A,Q)=>{let B=Q;return this.data[A+3]=this.buffer[B++],this.data[A]=this.buffer[B++],this.data[A+1]=this.buffer[B++],this.data[A+2]=this.buffer[B++],B})}writeImage(A){let Q=this.extraBytes+this.width*this.bytesInColor,B=0;for(let Y=0;Y=0,C=!B&&J&&(Q==="hex"||Q==="hex6"||Q==="hex3"||Q==="hex4"||Q==="hex8"||Q==="name");if(C){if(Q==="name"&&this._a===0)return this.toName();return this.toRgbString()}if(Q==="rgb")Y=this.toRgbString();if(Q==="prgb")Y=this.toPercentageRgbString();if(Q==="hex"||Q==="hex6")Y=this.toHexString();if(Q==="hex3")Y=this.toHexString(!0);if(Q==="hex4")Y=this.toHex8String(!0);if(Q==="hex8")Y=this.toHex8String();if(Q==="name")Y=this.toName();if(Q==="hsl")Y=this.toHslString();if(Q==="hsv")Y=this.toHsvString();return Y||this.toHexString()},clone:function(){return oA(this.toString())},_applyModification:function(Q,B){var Y=Q.apply(null,[this].concat([].slice.call(B)));return this._r=Y._r,this._g=Y._g,this._b=Y._b,this.setAlpha(Y._a),this},lighten:function(){return this._applyModification(_rQ,arguments)},brighten:function(){return this._applyModification(vrQ,arguments)},darken:function(){return this._applyModification(yrQ,arguments)},desaturate:function(){return this._applyModification(TrQ,arguments)},saturate:function(){return this._applyModification(SrQ,arguments)},greyscale:function(){return this._applyModification(krQ,arguments)},spin:function(){return this._applyModification(grQ,arguments)},_applyCombination:function(Q,B){return Q.apply(null,[this].concat([].slice.call(B)))},analogous:function(){return this._applyCombination(frQ,arguments)},complement:function(){return this._applyCombination(hrQ,arguments)},monochromatic:function(){return this._applyCombination(brQ,arguments)},splitcomplement:function(){return this._applyCombination(xrQ,arguments)},triad:function(){return this._applyCombination(H1A,[3])},tetrad:function(){return this._applyCombination(H1A,[4])}};oA.fromRatio=function(A,Q){if(n3(A)=="object"){var B={};for(var Y in A)if(A.hasOwnProperty(Y))if(Y==="a")B[Y]=A[Y];else B[Y]=HH(A[Y]);A=B}return oA(A,Q)};function RrQ(A){var Q={r:0,g:0,b:0},B=1,Y=null,J=null,C=null,X=!1,G=!1;if(typeof A=="string")A=lrQ(A);if(n3(A)=="object"){if(j6(A.r)&&j6(A.g)&&j6(A.b))Q=wrQ(A.r,A.g,A.b),X=!0,G=String(A.r).substr(-1)==="%"?"prgb":"rgb";else if(j6(A.h)&&j6(A.s)&&j6(A.v))Y=HH(A.s),J=HH(A.v),Q=OrQ(A.h,Y,J),X=!0,G="hsv";else if(j6(A.h)&&j6(A.s)&&j6(A.l))Y=HH(A.s),C=HH(A.l),Q=jrQ(A.h,Y,C),X=!0,G="hsl";if(A.hasOwnProperty("a"))B=A.a}return B=N1A(B),{ok:X,format:A.format||G,r:Math.min(255,Math.max(Q.r,0)),g:Math.min(255,Math.max(Q.g,0)),b:Math.min(255,Math.max(Q.b,0)),a:B}}function wrQ(A,Q,B){return{r:M0(A,255)*255,g:M0(Q,255)*255,b:M0(B,255)*255}}function E1A(A,Q,B){A=M0(A,255),Q=M0(Q,255),B=M0(B,255);var Y=Math.max(A,Q,B),J=Math.min(A,Q,B),C,X,G=(Y+J)/2;if(Y==J)C=X=0;else{var W=Y-J;switch(X=G>0.5?W/(2-Y-J):W/(Y+J),Y){case A:C=(Q-B)/W+(Q1)U-=1;if(U<0.16666666666666666)return F+(Z-F)*6*U;if(U<0.5)return Z;if(U<0.6666666666666666)return F+(Z-F)*(0.6666666666666666-U)*6;return F}if(Q===0)Y=J=C=B;else{var G=B<0.5?B*(1+Q):B+Q-B*Q,W=2*B-G;Y=X(W,G,A+0.3333333333333333),J=X(W,G,A),C=X(W,G,A-0.3333333333333333)}return{r:Y*255,g:J*255,b:C*255}}function K1A(A,Q,B){A=M0(A,255),Q=M0(Q,255),B=M0(B,255);var Y=Math.max(A,Q,B),J=Math.min(A,Q,B),C,X,G=Y,W=Y-J;if(X=Y===0?0:W/Y,Y==J)C=0;else{switch(Y){case A:C=(Q-B)/W+(Q>1)+720)%360;--Q;)Y.h=(Y.h+J)%360,C.push(oA(Y));return C}function brQ(A,Q){Q=Q||6;var B=oA(A).toHsv(),Y=B.h,J=B.s,C=B.v,X=[],G=1/Q;while(Q--)X.push(oA({h:Y,s:J,v:C})),C=(C+G)%1;return X}oA.mix=function(A,Q,B){B=B===0?0:B||50;var Y=oA(A).toRgb(),J=oA(Q).toRgb(),C=B/100,X={r:(J.r-Y.r)*C+Y.r,g:(J.g-Y.g)*C+Y.g,b:(J.b-Y.b)*C+Y.b,a:(J.a-Y.a)*C+Y.a};return oA(X)};oA.readability=function(A,Q){var B=oA(A),Y=oA(Q);return(Math.max(B.getLuminance(),Y.getLuminance())+0.05)/(Math.min(B.getLuminance(),Y.getLuminance())+0.05)};oA.isReadable=function(A,Q,B){var Y=oA.readability(A,Q),J,C;switch(C=!1,J=prQ(B),J.level+J.size){case"AAsmall":case"AAAlarge":C=Y>=4.5;break;case"AAlarge":C=Y>=3;break;case"AAAsmall":C=Y>=7;break}return C};oA.mostReadable=function(A,Q,B){var Y=null,J=0,C,X,G,W;B=B||{},X=B.includeFallbackColors,G=B.level,W=B.size;for(var F=0;FJ)J=C,Y=oA(Q[F]);if(oA.isReadable(A,Y,{level:G,size:W})||!X)return Y;else return B.includeFallbackColors=!1,oA.mostReadable(A,["#fff","#000"],B)};var rh=oA.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},mrQ=oA.hexNames=urQ(rh);function urQ(A){var Q={};for(var B in A)if(A.hasOwnProperty(B))Q[A[B]]=B;return Q}function N1A(A){if(A=parseFloat(A),isNaN(A)||A<0||A>1)A=1;return A}function M0(A,Q){if(drQ(A))A="100%";var B=crQ(A);if(A=Math.min(Q,Math.max(0,parseFloat(A))),B)A=parseInt(A*Q,10)/100;if(Math.abs(A-Q)<0.000001)return 1;return A%Q/parseFloat(Q)}function s3(A){return Math.min(1,Math.max(0,A))}function E8(A){return parseInt(A,16)}function drQ(A){return typeof A=="string"&&A.indexOf(".")!=-1&&parseFloat(A)===1}function crQ(A){return typeof A==="string"&&A.indexOf("%")!=-1}function SC(A){return A.length==1?"0"+A:""+A}function HH(A){if(A<=1)A=A*100+"%";return A}function L1A(A){return Math.round(parseFloat(A)*255).toString(16)}function D1A(A){return E8(A)/255}var TC=function(){var A="[-\\+]?\\d+%?",Q="[-\\+]?\\d*\\.\\d+%?",B="(?:"+Q+")|(?:"+A+")",Y="[\\s|\\(]+("+B+")[,|\\s]+("+B+")[,|\\s]+("+B+")\\s*\\)?",J="[\\s|\\(]+("+B+")[,|\\s]+("+B+")[,|\\s]+("+B+")[,|\\s]+("+B+")\\s*\\)?";return{CSS_UNIT:new RegExp(B),rgb:new RegExp("rgb"+Y),rgba:new RegExp("rgba"+J),hsl:new RegExp("hsl"+Y),hsla:new RegExp("hsla"+J),hsv:new RegExp("hsv"+Y),hsva:new RegExp("hsva"+J),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/}}();function j6(A){return!!TC.CSS_UNIT.exec(A)}function lrQ(A){A=A.replace(MrQ,"").replace(zrQ,"").toLowerCase();var Q=!1;if(rh[A])A=rh[A],Q=!0;else if(A=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var B;if(B=TC.rgb.exec(A))return{r:B[1],g:B[2],b:B[3]};if(B=TC.rgba.exec(A))return{r:B[1],g:B[2],b:B[3],a:B[4]};if(B=TC.hsl.exec(A))return{h:B[1],s:B[2],l:B[3]};if(B=TC.hsla.exec(A))return{h:B[1],s:B[2],l:B[3],a:B[4]};if(B=TC.hsv.exec(A))return{h:B[1],s:B[2],v:B[3]};if(B=TC.hsva.exec(A))return{h:B[1],s:B[2],v:B[3],a:B[4]};if(B=TC.hex8.exec(A))return{r:E8(B[1]),g:E8(B[2]),b:E8(B[3]),a:D1A(B[4]),format:Q?"name":"hex8"};if(B=TC.hex6.exec(A))return{r:E8(B[1]),g:E8(B[2]),b:E8(B[3]),format:Q?"name":"hex"};if(B=TC.hex4.exec(A))return{r:E8(B[1]+""+B[1]),g:E8(B[2]+""+B[2]),b:E8(B[3]+""+B[3]),a:D1A(B[4]+""+B[4]),format:Q?"name":"hex8"};if(B=TC.hex3.exec(A))return{r:E8(B[1]+""+B[1]),g:E8(B[2]+""+B[2]),b:E8(B[3]+""+B[3]),format:Q?"name":"hex"};return!1}function prQ(A){var Q,B;if(A=A||{level:"AA",size:"small"},Q=(A.level||"AA").toUpperCase(),B=(A.size||"small").toLowerCase(),Q!=="AA"&&Q!=="AAA")Q="AA";if(B!=="small"&&B!=="large")B="small";return{level:Q,size:B}}function K8(A){let Q={width:A.bitmap.width,height:A.bitmap.height,data:Buffer.from(A.bitmap.data)};return new A.constructor(Q)}function I5(A,Q,B,Y,J,C){let X,G,W,F,Z;if(typeof Q==="function")Z=Q,X=0,G=0,W=A.bitmap.width,F=A.bitmap.height;else{if(X=Q,typeof B!=="number")throw Error("y must be a number");if(G=B,typeof Y!=="number")throw Error("w must be a number");if(W=Y,typeof J!=="number")throw Error("h must be a number");if(F=J,typeof C!=="function")throw Error("cb must be a function");Z=C}X=Math.round(X),G=Math.round(G),W=Math.round(W),F=Math.round(F);let U=Z.bind(A);for(let $=G;$Math.pow(G,2),{max:Y}=Math,J=195075,C="a"in A?A.a:255,X="a"in Q?Q.a:255;return(Y(B(A.r-Q.r),B(A.r-Q.r-C+X))+Y(B(A.g-Q.g),B(A.g-Q.g-C+X))+Y(B(A.b-Q.b),B(A.b-Q.b-C+X)))/195075}function z0(A){return A=Math.max(A,0),A=Math.min(A,255),A}function M1A(A){if(typeof A==="number")return A;return parseInt(oA(A).toHex8(),16)}function z1A(A,Q={}){return I5({bitmap:A},0,0,A.width,A.height,function(B,Y,J){let C=A.data[J+0],X=A.data[J+1],G=A.data[J+2],W=A.data[J+3];A.data[J+0]=W,A.data[J+1]=G,A.data[J+2]=X,A.data[J+3]=C}),U1A({...A,...Q}).data}function R1A(A,Q){let B=$1A(A,Q);return I5({bitmap:B},0,0,B.width,B.height,function(Y,J,C){let X=B.data[C+1],G=B.data[C+2],W=B.data[C+3];B.data[C+0]=W,B.data[C+1]=G,B.data[C+2]=X,B.data[C+3]=255}),B}function w1A(){return{mime:"image/x-ms-bmp",encode:z1A,decode:R1A}}function r3(){return{mime:"image/bmp",encode:z1A,decode:R1A}}var TXA=qA(ah(),1),I7=qA(PXA(),1);function XR(){return{mime:"image/gif",encode:async(A)=>{let Q=new I7.BitmapImage(A);I7.GifUtil.quantizeDekker(Q,256);let B=new I7.GifFrame(A);return(await new I7.GifCodec().encodeGif([B],{})).buffer},decode:(A)=>{let Q=new TXA.default.GifReader(A),B=Buffer.alloc(Q.width*Q.height*4);return Q.decodeAndBlitFrameRGBA(0,B),{data:B,width:Q.width,height:Q.height}}}}var Zx=qA(hXA(),1);function WR(){return{mime:"image/jpeg",encode:(A,{quality:Q=100}={})=>Zx.default.encode(A,Q).data,decode:(A,Q)=>Zx.default.decode(A,Q)}}var ZR=qA(P6A(),1);var FR;(function(A){A[A.AUTO=-1]="AUTO",A[A.NONE=0]="NONE",A[A.SUB=1]="SUB",A[A.UP=2]="UP",A[A.AVERAGE=3]="AVERAGE",A[A.PATH=4]="PATH"})(FR||(FR={}));var PH;(function(A){A[A.GRAYSCALE=0]="GRAYSCALE",A[A.COLOR=2]="COLOR",A[A.GRAYSCALE_ALPHA=4]="GRAYSCALE_ALPHA",A[A.COLOR_ALPHA=6]="COLOR_ALPHA"})(PH||(PH={}));function $R(){return{mime:"image/png",hasAlpha:!0,encode:(A,{deflateLevel:Q=9,deflateStrategy:B=3,filterType:Y=FR.AUTO,colorType:J,inputHasAlpha:C=!0,...X}={})=>{let G=new ZR.PNG({width:A.width,height:A.height});return G.data=A.data,ZR.PNG.sync.write(G,{...X,deflateLevel:Q,deflateStrategy:B,filterType:Y,colorType:typeof J<"u"?J:C?PH.COLOR_ALPHA:PH.COLOR,inputHasAlpha:C})},decode:(A,Q)=>{let B=ZR.PNG.sync.read(A,Q);return{data:B.data,width:B.width,height:B.height}}}}var cH=qA(H7A(),1);function D7A(A){if(typeof A==="number")return A;if(A instanceof Uint8Array)return A[0];if(typeof A[0]==="string")return parseInt(A[0]);return A[0]}function PR(){return{mime:"image/tiff",encode:(A)=>{let Q=cH.default.encodeImage(A.data,A.width,A.height);return Buffer.from(Q)},decode:(A)=>{let Q=cH.default.decode(A),B=Q[0];if(!B)throw Error("No page found in TIFF");if(!B.t256)throw Error("No image width found in TIFF");if(!B.t257)throw Error("No image height found in TIFF");Q.forEach((J)=>{cH.default.decodeImage(A,J)});let Y=cH.default.toRGBA8(B);return{data:Buffer.from(Y),width:D7A(B.t256),height:D7A(B.t257)}}}}var s={};iG(s,{void:()=>sQB,util:()=>FB,unknown:()=>iQB,union:()=>tQB,undefined:()=>cQB,tuple:()=>QBB,transformer:()=>$BB,symbol:()=>dQB,string:()=>O7A,strictObject:()=>oQB,setErrorMap:()=>EQB,set:()=>JBB,record:()=>BBB,quotelessJson:()=>$QB,promise:()=>ZBB,preprocess:()=>KBB,pipeline:()=>VBB,ostring:()=>IBB,optional:()=>UBB,onumber:()=>HBB,oboolean:()=>DBB,objectUtil:()=>Gf,object:()=>aQB,number:()=>P7A,nullable:()=>EBB,null:()=>lQB,never:()=>nQB,nativeEnum:()=>FBB,nan:()=>bQB,map:()=>YBB,makeIssue:()=>lH,literal:()=>GBB,lazy:()=>XBB,late:()=>xQB,isValid:()=>w7,isDirty:()=>SR,isAsync:()=>SU,isAborted:()=>TR,intersection:()=>ABB,instanceof:()=>fQB,getParsedType:()=>s1,getErrorMap:()=>TU,function:()=>CBB,enum:()=>WBB,effect:()=>$BB,discriminatedUnion:()=>eQB,defaultErrorMap:()=>v6,datetimeRegex:()=>R7A,date:()=>uQB,custom:()=>j7A,coerce:()=>NBB,boolean:()=>T7A,bigint:()=>mQB,array:()=>rQB,any:()=>pQB,addIssueToContext:()=>xA,ZodVoid:()=>iH,ZodUnknown:()=>j7,ZodUnion:()=>hU,ZodUndefined:()=>yU,ZodType:()=>JB,ZodTuple:()=>a1,ZodTransformer:()=>fC,ZodSymbol:()=>pH,ZodString:()=>yC,ZodSet:()=>XZ,ZodSchema:()=>JB,ZodRecord:()=>nH,ZodReadonly:()=>cU,ZodPromise:()=>GZ,ZodPipeline:()=>aH,ZodParsedType:()=>kA,ZodOptional:()=>hC,ZodObject:()=>y0,ZodNumber:()=>O7,ZodNullable:()=>g6,ZodNull:()=>gU,ZodNever:()=>r1,ZodNativeEnum:()=>mU,ZodNaN:()=>rH,ZodMap:()=>sH,ZodLiteral:()=>bU,ZodLazy:()=>fU,ZodIssueCode:()=>RA,ZodIntersection:()=>xU,ZodFunction:()=>_U,ZodFirstPartyTypeKind:()=>zQ,ZodError:()=>g9,ZodEnum:()=>T7,ZodEffects:()=>fC,ZodDiscriminatedUnion:()=>kR,ZodDefault:()=>uU,ZodDate:()=>JZ,ZodCatch:()=>dU,ZodBranded:()=>_R,ZodBoolean:()=>vU,ZodBigInt:()=>P7,ZodArray:()=>gC,ZodAny:()=>CZ,Schema:()=>JB,ParseStatus:()=>WJ,OK:()=>wJ,NEVER:()=>LBB,INVALID:()=>LQ,EMPTY_PATH:()=>KQB,DIRTY:()=>YZ,BRAND:()=>hQB});var FB;(function(A){A.assertEqual=(J)=>{};function Q(J){}A.assertIs=Q;function B(J){throw Error()}A.assertNever=B,A.arrayToEnum=(J)=>{let C={};for(let X of J)C[X]=X;return C},A.getValidEnumValues=(J)=>{let C=A.objectKeys(J).filter((G)=>typeof J[J[G]]!=="number"),X={};for(let G of C)X[G]=J[G];return A.objectValues(X)},A.objectValues=(J)=>{return A.objectKeys(J).map(function(C){return J[C]})},A.objectKeys=typeof Object.keys==="function"?(J)=>Object.keys(J):(J)=>{let C=[];for(let X in J)if(Object.prototype.hasOwnProperty.call(J,X))C.push(X);return C},A.find=(J,C)=>{for(let X of J)if(C(X))return X;return},A.isInteger=typeof Number.isInteger==="function"?(J)=>Number.isInteger(J):(J)=>typeof J==="number"&&Number.isFinite(J)&&Math.floor(J)===J;function Y(J,C=" | "){return J.map((X)=>typeof X==="string"?`'${X}'`:X).join(C)}A.joinValues=Y,A.jsonStringifyReplacer=(J,C)=>{if(typeof C==="bigint")return C.toString();return C}})(FB||(FB={}));var Gf;(function(A){A.mergeShapes=(Q,B)=>{return{...Q,...B}}})(Gf||(Gf={}));var kA=FB.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),s1=(A)=>{switch(typeof A){case"undefined":return kA.undefined;case"string":return kA.string;case"number":return Number.isNaN(A)?kA.nan:kA.number;case"boolean":return kA.boolean;case"function":return kA.function;case"bigint":return kA.bigint;case"symbol":return kA.symbol;case"object":if(Array.isArray(A))return kA.array;if(A===null)return kA.null;if(A.then&&typeof A.then==="function"&&A.catch&&typeof A.catch==="function")return kA.promise;if(typeof Map<"u"&&A instanceof Map)return kA.map;if(typeof Set<"u"&&A instanceof Set)return kA.set;if(typeof Date<"u"&&A instanceof Date)return kA.date;return kA.object;default:return kA.unknown}};var RA=FB.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),$QB=(A)=>{return JSON.stringify(A,null,2).replace(/"([^"]+)":/g,"$1:")};class g9 extends Error{get errors(){return this.issues}constructor(A){super();this.issues=[],this.addIssue=(B)=>{this.issues=[...this.issues,B]},this.addIssues=(B=[])=>{this.issues=[...this.issues,...B]};let Q=new.target.prototype;if(Object.setPrototypeOf)Object.setPrototypeOf(this,Q);else this.__proto__=Q;this.name="ZodError",this.issues=A}format(A){let Q=A||function(J){return J.message},B={_errors:[]},Y=(J)=>{for(let C of J.issues)if(C.code==="invalid_union")C.unionErrors.map(Y);else if(C.code==="invalid_return_type")Y(C.returnTypeError);else if(C.code==="invalid_arguments")Y(C.argumentsError);else if(C.path.length===0)B._errors.push(Q(C));else{let X=B,G=0;while(GQ.message){let Q={},B=[];for(let Y of this.issues)if(Y.path.length>0){let J=Y.path[0];Q[J]=Q[J]||[],Q[J].push(A(Y))}else B.push(A(Y));return{formErrors:B,fieldErrors:Q}}get formErrors(){return this.flatten()}}g9.create=(A)=>{return new g9(A)};var UQB=(A,Q)=>{let B;switch(A.code){case RA.invalid_type:if(A.received===kA.undefined)B="Required";else B=`Expected ${A.expected}, received ${A.received}`;break;case RA.invalid_literal:B=`Invalid literal value, expected ${JSON.stringify(A.expected,FB.jsonStringifyReplacer)}`;break;case RA.unrecognized_keys:B=`Unrecognized key(s) in object: ${FB.joinValues(A.keys,", ")}`;break;case RA.invalid_union:B="Invalid input";break;case RA.invalid_union_discriminator:B=`Invalid discriminator value. Expected ${FB.joinValues(A.options)}`;break;case RA.invalid_enum_value:B=`Invalid enum value. Expected ${FB.joinValues(A.options)}, received '${A.received}'`;break;case RA.invalid_arguments:B="Invalid function arguments";break;case RA.invalid_return_type:B="Invalid function return type";break;case RA.invalid_date:B="Invalid date";break;case RA.invalid_string:if(typeof A.validation==="object")if("includes"in A.validation){if(B=`Invalid input: must include "${A.validation.includes}"`,typeof A.validation.position==="number")B=`${B} at one or more positions greater than or equal to ${A.validation.position}`}else if("startsWith"in A.validation)B=`Invalid input: must start with "${A.validation.startsWith}"`;else if("endsWith"in A.validation)B=`Invalid input: must end with "${A.validation.endsWith}"`;else FB.assertNever(A.validation);else if(A.validation!=="regex")B=`Invalid ${A.validation}`;else B="Invalid";break;case RA.too_small:if(A.type==="array")B=`Array must contain ${A.exact?"exactly":A.inclusive?"at least":"more than"} ${A.minimum} element(s)`;else if(A.type==="string")B=`String must contain ${A.exact?"exactly":A.inclusive?"at least":"over"} ${A.minimum} character(s)`;else if(A.type==="number")B=`Number must be ${A.exact?"exactly equal to ":A.inclusive?"greater than or equal to ":"greater than "}${A.minimum}`;else if(A.type==="bigint")B=`Number must be ${A.exact?"exactly equal to ":A.inclusive?"greater than or equal to ":"greater than "}${A.minimum}`;else if(A.type==="date")B=`Date must be ${A.exact?"exactly equal to ":A.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(A.minimum))}`;else B="Invalid input";break;case RA.too_big:if(A.type==="array")B=`Array must contain ${A.exact?"exactly":A.inclusive?"at most":"less than"} ${A.maximum} element(s)`;else if(A.type==="string")B=`String must contain ${A.exact?"exactly":A.inclusive?"at most":"under"} ${A.maximum} character(s)`;else if(A.type==="number")B=`Number must be ${A.exact?"exactly":A.inclusive?"less than or equal to":"less than"} ${A.maximum}`;else if(A.type==="bigint")B=`BigInt must be ${A.exact?"exactly":A.inclusive?"less than or equal to":"less than"} ${A.maximum}`;else if(A.type==="date")B=`Date must be ${A.exact?"exactly":A.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(A.maximum))}`;else B="Invalid input";break;case RA.custom:B="Invalid input";break;case RA.invalid_intersection_types:B="Intersection results could not be merged";break;case RA.not_multiple_of:B=`Number must be a multiple of ${A.multipleOf}`;break;case RA.not_finite:B="Number must be finite";break;default:B=Q.defaultError,FB.assertNever(A)}return{message:B}},v6=UQB;var N7A=v6;function EQB(A){N7A=A}function TU(){return N7A}var lH=(A)=>{let{data:Q,path:B,errorMaps:Y,issueData:J}=A,C=[...B,...J.path||[]],X={...J,path:C};if(J.message!==void 0)return{...J,path:C,message:J.message};let G="",W=Y.filter((F)=>!!F).slice().reverse();for(let F of W)G=F(X,{data:Q,defaultError:G}).message;return{...J,path:C,message:G}},KQB=[];function xA(A,Q){let B=TU(),Y=lH({issueData:Q,data:A.data,path:A.path,errorMaps:[A.common.contextualErrorMap,A.schemaErrorMap,B,B===v6?void 0:v6].filter((J)=>!!J)});A.common.issues.push(Y)}class WJ{constructor(){this.value="valid"}dirty(){if(this.value==="valid")this.value="dirty"}abort(){if(this.value!=="aborted")this.value="aborted"}static mergeArray(A,Q){let B=[];for(let Y of Q){if(Y.status==="aborted")return LQ;if(Y.status==="dirty")A.dirty();B.push(Y.value)}return{status:A.value,value:B}}static async mergeObjectAsync(A,Q){let B=[];for(let Y of Q){let J=await Y.key,C=await Y.value;B.push({key:J,value:C})}return WJ.mergeObjectSync(A,B)}static mergeObjectSync(A,Q){let B={};for(let Y of Q){let{key:J,value:C}=Y;if(J.status==="aborted")return LQ;if(C.status==="aborted")return LQ;if(J.status==="dirty")A.dirty();if(C.status==="dirty")A.dirty();if(J.value!=="__proto__"&&(typeof C.value<"u"||Y.alwaysSet))B[J.value]=C.value}return{status:A.value,value:B}}}var LQ=Object.freeze({status:"aborted"}),YZ=(A)=>({status:"dirty",value:A}),wJ=(A)=>({status:"valid",value:A}),TR=(A)=>A.status==="aborted",SR=(A)=>A.status==="dirty",w7=(A)=>A.status==="valid",SU=(A)=>typeof Promise<"u"&&A instanceof Promise;var tA;(function(A){A.errToObj=(Q)=>typeof Q==="string"?{message:Q}:Q||{},A.toString=(Q)=>typeof Q==="string"?Q:Q?.message})(tA||(tA={}));class xC{constructor(A,Q,B,Y){this._cachedPath=[],this.parent=A,this.data=Q,this._path=B,this._key=Y}get path(){if(!this._cachedPath.length)if(Array.isArray(this._key))this._cachedPath.push(...this._path,...this._key);else this._cachedPath.push(...this._path,this._key);return this._cachedPath}}var L7A=(A,Q)=>{if(w7(Q))return{success:!0,data:Q.value};else{if(!A.common.issues.length)throw Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let B=new g9(A.common.issues);return this._error=B,this._error}}}};function pQ(A){if(!A)return{};let{errorMap:Q,invalid_type_error:B,required_error:Y,description:J}=A;if(Q&&(B||Y))throw Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);if(Q)return{errorMap:Q,description:J};return{errorMap:(X,G)=>{let{message:W}=A;if(X.code==="invalid_enum_value")return{message:W??G.defaultError};if(typeof G.data>"u")return{message:W??Y??G.defaultError};if(X.code!=="invalid_type")return{message:G.defaultError};return{message:W??B??G.defaultError}},description:J}}class JB{get description(){return this._def.description}_getType(A){return s1(A.data)}_getOrReturnCtx(A,Q){return Q||{common:A.parent.common,data:A.data,parsedType:s1(A.data),schemaErrorMap:this._def.errorMap,path:A.path,parent:A.parent}}_processInputParams(A){return{status:new WJ,ctx:{common:A.parent.common,data:A.data,parsedType:s1(A.data),schemaErrorMap:this._def.errorMap,path:A.path,parent:A.parent}}}_parseSync(A){let Q=this._parse(A);if(SU(Q))throw Error("Synchronous parse encountered promise.");return Q}_parseAsync(A){let Q=this._parse(A);return Promise.resolve(Q)}parse(A,Q){let B=this.safeParse(A,Q);if(B.success)return B.data;throw B.error}safeParse(A,Q){let B={common:{issues:[],async:Q?.async??!1,contextualErrorMap:Q?.errorMap},path:Q?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:A,parsedType:s1(A)},Y=this._parseSync({data:A,path:B.path,parent:B});return L7A(B,Y)}"~validate"(A){let Q={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:A,parsedType:s1(A)};if(!this["~standard"].async)try{let B=this._parseSync({data:A,path:[],parent:Q});return w7(B)?{value:B.value}:{issues:Q.common.issues}}catch(B){if(B?.message?.toLowerCase()?.includes("encountered"))this["~standard"].async=!0;Q.common={issues:[],async:!0}}return this._parseAsync({data:A,path:[],parent:Q}).then((B)=>w7(B)?{value:B.value}:{issues:Q.common.issues})}async parseAsync(A,Q){let B=await this.safeParseAsync(A,Q);if(B.success)return B.data;throw B.error}async safeParseAsync(A,Q){let B={common:{issues:[],contextualErrorMap:Q?.errorMap,async:!0},path:Q?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:A,parsedType:s1(A)},Y=this._parse({data:A,path:B.path,parent:B}),J=await(SU(Y)?Y:Promise.resolve(Y));return L7A(B,J)}refine(A,Q){let B=(Y)=>{if(typeof Q==="string"||typeof Q>"u")return{message:Q};else if(typeof Q==="function")return Q(Y);else return Q};return this._refinement((Y,J)=>{let C=A(Y),X=()=>J.addIssue({code:RA.custom,...B(Y)});if(typeof Promise<"u"&&C instanceof Promise)return C.then((G)=>{if(!G)return X(),!1;else return!0});if(!C)return X(),!1;else return!0})}refinement(A,Q){return this._refinement((B,Y)=>{if(!A(B))return Y.addIssue(typeof Q==="function"?Q(B,Y):Q),!1;else return!0})}_refinement(A){return new fC({schema:this,typeName:zQ.ZodEffects,effect:{type:"refinement",refinement:A}})}superRefine(A){return this._refinement(A)}constructor(A){this.spa=this.safeParseAsync,this._def=A,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:(Q)=>this["~validate"](Q)}}optional(){return hC.create(this,this._def)}nullable(){return g6.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return gC.create(this)}promise(){return GZ.create(this,this._def)}or(A){return hU.create([this,A],this._def)}and(A){return xU.create(this,A,this._def)}transform(A){return new fC({...pQ(this._def),schema:this,typeName:zQ.ZodEffects,effect:{type:"transform",transform:A}})}default(A){let Q=typeof A==="function"?A:()=>A;return new uU({...pQ(this._def),innerType:this,defaultValue:Q,typeName:zQ.ZodDefault})}brand(){return new _R({typeName:zQ.ZodBranded,type:this,...pQ(this._def)})}catch(A){let Q=typeof A==="function"?A:()=>A;return new dU({...pQ(this._def),innerType:this,catchValue:Q,typeName:zQ.ZodCatch})}describe(A){return new this.constructor({...this._def,description:A})}pipe(A){return aH.create(this,A)}readonly(){return cU.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}var VQB=/^c[^\s-]{8,}$/i,IQB=/^[0-9a-z]+$/,HQB=/^[0-9A-HJKMNP-TV-Z]{26}$/i,DQB=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,NQB=/^[a-z0-9_-]{21}$/i,LQB=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,qQB=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,MQB=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,zQB="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Wf,RQB=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,wQB=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,jQB=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,OQB=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,PQB=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,TQB=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,M7A="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",SQB=new RegExp(`^${M7A}$`);function z7A(A){let Q="[0-5]\\d";if(A.precision)Q=`${Q}\\.\\d{${A.precision}}`;else if(A.precision==null)Q=`${Q}(\\.\\d+)?`;let B=A.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${Q})${B}`}function kQB(A){return new RegExp(`^${z7A(A)}$`)}function R7A(A){let Q=`${M7A}T${z7A(A)}`,B=[];if(B.push(A.local?"Z?":"Z"),A.offset)B.push("([+-]\\d{2}:?\\d{2})");return Q=`${Q}(${B.join("|")})`,new RegExp(`^${Q}$`)}function _QB(A,Q){if((Q==="v4"||!Q)&&RQB.test(A))return!0;if((Q==="v6"||!Q)&&jQB.test(A))return!0;return!1}function vQB(A,Q){if(!LQB.test(A))return!1;try{let[B]=A.split(".");if(!B)return!1;let Y=B.replace(/-/g,"+").replace(/_/g,"/").padEnd(B.length+(4-B.length%4)%4,"="),J=JSON.parse(atob(Y));if(typeof J!=="object"||J===null)return!1;if("typ"in J&&J?.typ!=="JWT")return!1;if(!J.alg)return!1;if(Q&&J.alg!==Q)return!1;return!0}catch{return!1}}function yQB(A,Q){if((Q==="v4"||!Q)&&wQB.test(A))return!0;if((Q==="v6"||!Q)&&OQB.test(A))return!0;return!1}class yC extends JB{_parse(A){if(this._def.coerce)A.data=String(A.data);if(this._getType(A)!==kA.string){let J=this._getOrReturnCtx(A);return xA(J,{code:RA.invalid_type,expected:kA.string,received:J.parsedType}),LQ}let B=new WJ,Y=void 0;for(let J of this._def.checks)if(J.kind==="min"){if(A.data.lengthJ.value)Y=this._getOrReturnCtx(A,Y),xA(Y,{code:RA.too_big,maximum:J.value,type:"string",inclusive:!0,exact:!1,message:J.message}),B.dirty()}else if(J.kind==="length"){let C=A.data.length>J.value,X=A.data.lengthA.test(Y),{validation:Q,code:RA.invalid_string,...tA.errToObj(B)})}_addCheck(A){return new yC({...this._def,checks:[...this._def.checks,A]})}email(A){return this._addCheck({kind:"email",...tA.errToObj(A)})}url(A){return this._addCheck({kind:"url",...tA.errToObj(A)})}emoji(A){return this._addCheck({kind:"emoji",...tA.errToObj(A)})}uuid(A){return this._addCheck({kind:"uuid",...tA.errToObj(A)})}nanoid(A){return this._addCheck({kind:"nanoid",...tA.errToObj(A)})}cuid(A){return this._addCheck({kind:"cuid",...tA.errToObj(A)})}cuid2(A){return this._addCheck({kind:"cuid2",...tA.errToObj(A)})}ulid(A){return this._addCheck({kind:"ulid",...tA.errToObj(A)})}base64(A){return this._addCheck({kind:"base64",...tA.errToObj(A)})}base64url(A){return this._addCheck({kind:"base64url",...tA.errToObj(A)})}jwt(A){return this._addCheck({kind:"jwt",...tA.errToObj(A)})}ip(A){return this._addCheck({kind:"ip",...tA.errToObj(A)})}cidr(A){return this._addCheck({kind:"cidr",...tA.errToObj(A)})}datetime(A){if(typeof A==="string")return this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:A});return this._addCheck({kind:"datetime",precision:typeof A?.precision>"u"?null:A?.precision,offset:A?.offset??!1,local:A?.local??!1,...tA.errToObj(A?.message)})}date(A){return this._addCheck({kind:"date",message:A})}time(A){if(typeof A==="string")return this._addCheck({kind:"time",precision:null,message:A});return this._addCheck({kind:"time",precision:typeof A?.precision>"u"?null:A?.precision,...tA.errToObj(A?.message)})}duration(A){return this._addCheck({kind:"duration",...tA.errToObj(A)})}regex(A,Q){return this._addCheck({kind:"regex",regex:A,...tA.errToObj(Q)})}includes(A,Q){return this._addCheck({kind:"includes",value:A,position:Q?.position,...tA.errToObj(Q?.message)})}startsWith(A,Q){return this._addCheck({kind:"startsWith",value:A,...tA.errToObj(Q)})}endsWith(A,Q){return this._addCheck({kind:"endsWith",value:A,...tA.errToObj(Q)})}min(A,Q){return this._addCheck({kind:"min",value:A,...tA.errToObj(Q)})}max(A,Q){return this._addCheck({kind:"max",value:A,...tA.errToObj(Q)})}length(A,Q){return this._addCheck({kind:"length",value:A,...tA.errToObj(Q)})}nonempty(A){return this.min(1,tA.errToObj(A))}trim(){return new yC({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new yC({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new yC({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find((A)=>A.kind==="datetime")}get isDate(){return!!this._def.checks.find((A)=>A.kind==="date")}get isTime(){return!!this._def.checks.find((A)=>A.kind==="time")}get isDuration(){return!!this._def.checks.find((A)=>A.kind==="duration")}get isEmail(){return!!this._def.checks.find((A)=>A.kind==="email")}get isURL(){return!!this._def.checks.find((A)=>A.kind==="url")}get isEmoji(){return!!this._def.checks.find((A)=>A.kind==="emoji")}get isUUID(){return!!this._def.checks.find((A)=>A.kind==="uuid")}get isNANOID(){return!!this._def.checks.find((A)=>A.kind==="nanoid")}get isCUID(){return!!this._def.checks.find((A)=>A.kind==="cuid")}get isCUID2(){return!!this._def.checks.find((A)=>A.kind==="cuid2")}get isULID(){return!!this._def.checks.find((A)=>A.kind==="ulid")}get isIP(){return!!this._def.checks.find((A)=>A.kind==="ip")}get isCIDR(){return!!this._def.checks.find((A)=>A.kind==="cidr")}get isBase64(){return!!this._def.checks.find((A)=>A.kind==="base64")}get isBase64url(){return!!this._def.checks.find((A)=>A.kind==="base64url")}get minLength(){let A=null;for(let Q of this._def.checks)if(Q.kind==="min"){if(A===null||Q.value>A)A=Q.value}return A}get maxLength(){let A=null;for(let Q of this._def.checks)if(Q.kind==="max"){if(A===null||Q.value{return new yC({checks:[],typeName:zQ.ZodString,coerce:A?.coerce??!1,...pQ(A)})};function gQB(A,Q){let B=(A.toString().split(".")[1]||"").length,Y=(Q.toString().split(".")[1]||"").length,J=B>Y?B:Y,C=Number.parseInt(A.toFixed(J).replace(".","")),X=Number.parseInt(Q.toFixed(J).replace(".",""));return C%X/10**J}class O7 extends JB{constructor(){super(...arguments);this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(A){if(this._def.coerce)A.data=Number(A.data);if(this._getType(A)!==kA.number){let J=this._getOrReturnCtx(A);return xA(J,{code:RA.invalid_type,expected:kA.number,received:J.parsedType}),LQ}let B=void 0,Y=new WJ;for(let J of this._def.checks)if(J.kind==="int"){if(!FB.isInteger(A.data))B=this._getOrReturnCtx(A,B),xA(B,{code:RA.invalid_type,expected:"integer",received:"float",message:J.message}),Y.dirty()}else if(J.kind==="min"){if(J.inclusive?A.dataJ.value:A.data>=J.value)B=this._getOrReturnCtx(A,B),xA(B,{code:RA.too_big,maximum:J.value,type:"number",inclusive:J.inclusive,exact:!1,message:J.message}),Y.dirty()}else if(J.kind==="multipleOf"){if(gQB(A.data,J.value)!==0)B=this._getOrReturnCtx(A,B),xA(B,{code:RA.not_multiple_of,multipleOf:J.value,message:J.message}),Y.dirty()}else if(J.kind==="finite"){if(!Number.isFinite(A.data))B=this._getOrReturnCtx(A,B),xA(B,{code:RA.not_finite,message:J.message}),Y.dirty()}else FB.assertNever(J);return{status:Y.value,value:A.data}}gte(A,Q){return this.setLimit("min",A,!0,tA.toString(Q))}gt(A,Q){return this.setLimit("min",A,!1,tA.toString(Q))}lte(A,Q){return this.setLimit("max",A,!0,tA.toString(Q))}lt(A,Q){return this.setLimit("max",A,!1,tA.toString(Q))}setLimit(A,Q,B,Y){return new O7({...this._def,checks:[...this._def.checks,{kind:A,value:Q,inclusive:B,message:tA.toString(Y)}]})}_addCheck(A){return new O7({...this._def,checks:[...this._def.checks,A]})}int(A){return this._addCheck({kind:"int",message:tA.toString(A)})}positive(A){return this._addCheck({kind:"min",value:0,inclusive:!1,message:tA.toString(A)})}negative(A){return this._addCheck({kind:"max",value:0,inclusive:!1,message:tA.toString(A)})}nonpositive(A){return this._addCheck({kind:"max",value:0,inclusive:!0,message:tA.toString(A)})}nonnegative(A){return this._addCheck({kind:"min",value:0,inclusive:!0,message:tA.toString(A)})}multipleOf(A,Q){return this._addCheck({kind:"multipleOf",value:A,message:tA.toString(Q)})}finite(A){return this._addCheck({kind:"finite",message:tA.toString(A)})}safe(A){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:tA.toString(A)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:tA.toString(A)})}get minValue(){let A=null;for(let Q of this._def.checks)if(Q.kind==="min"){if(A===null||Q.value>A)A=Q.value}return A}get maxValue(){let A=null;for(let Q of this._def.checks)if(Q.kind==="max"){if(A===null||Q.valueA.kind==="int"||A.kind==="multipleOf"&&FB.isInteger(A.value))}get isFinite(){let A=null,Q=null;for(let B of this._def.checks)if(B.kind==="finite"||B.kind==="int"||B.kind==="multipleOf")return!0;else if(B.kind==="min"){if(Q===null||B.value>Q)Q=B.value}else if(B.kind==="max"){if(A===null||B.value{return new O7({checks:[],typeName:zQ.ZodNumber,coerce:A?.coerce||!1,...pQ(A)})};class P7 extends JB{constructor(){super(...arguments);this.min=this.gte,this.max=this.lte}_parse(A){if(this._def.coerce)try{A.data=BigInt(A.data)}catch{return this._getInvalidInput(A)}if(this._getType(A)!==kA.bigint)return this._getInvalidInput(A);let B=void 0,Y=new WJ;for(let J of this._def.checks)if(J.kind==="min"){if(J.inclusive?A.dataJ.value:A.data>=J.value)B=this._getOrReturnCtx(A,B),xA(B,{code:RA.too_big,type:"bigint",maximum:J.value,inclusive:J.inclusive,message:J.message}),Y.dirty()}else if(J.kind==="multipleOf"){if(A.data%J.value!==BigInt(0))B=this._getOrReturnCtx(A,B),xA(B,{code:RA.not_multiple_of,multipleOf:J.value,message:J.message}),Y.dirty()}else FB.assertNever(J);return{status:Y.value,value:A.data}}_getInvalidInput(A){let Q=this._getOrReturnCtx(A);return xA(Q,{code:RA.invalid_type,expected:kA.bigint,received:Q.parsedType}),LQ}gte(A,Q){return this.setLimit("min",A,!0,tA.toString(Q))}gt(A,Q){return this.setLimit("min",A,!1,tA.toString(Q))}lte(A,Q){return this.setLimit("max",A,!0,tA.toString(Q))}lt(A,Q){return this.setLimit("max",A,!1,tA.toString(Q))}setLimit(A,Q,B,Y){return new P7({...this._def,checks:[...this._def.checks,{kind:A,value:Q,inclusive:B,message:tA.toString(Y)}]})}_addCheck(A){return new P7({...this._def,checks:[...this._def.checks,A]})}positive(A){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:tA.toString(A)})}negative(A){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:tA.toString(A)})}nonpositive(A){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:tA.toString(A)})}nonnegative(A){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:tA.toString(A)})}multipleOf(A,Q){return this._addCheck({kind:"multipleOf",value:A,message:tA.toString(Q)})}get minValue(){let A=null;for(let Q of this._def.checks)if(Q.kind==="min"){if(A===null||Q.value>A)A=Q.value}return A}get maxValue(){let A=null;for(let Q of this._def.checks)if(Q.kind==="max"){if(A===null||Q.value{return new P7({checks:[],typeName:zQ.ZodBigInt,coerce:A?.coerce??!1,...pQ(A)})};class vU extends JB{_parse(A){if(this._def.coerce)A.data=Boolean(A.data);if(this._getType(A)!==kA.boolean){let B=this._getOrReturnCtx(A);return xA(B,{code:RA.invalid_type,expected:kA.boolean,received:B.parsedType}),LQ}return wJ(A.data)}}vU.create=(A)=>{return new vU({typeName:zQ.ZodBoolean,coerce:A?.coerce||!1,...pQ(A)})};class JZ extends JB{_parse(A){if(this._def.coerce)A.data=new Date(A.data);if(this._getType(A)!==kA.date){let J=this._getOrReturnCtx(A);return xA(J,{code:RA.invalid_type,expected:kA.date,received:J.parsedType}),LQ}if(Number.isNaN(A.data.getTime())){let J=this._getOrReturnCtx(A);return xA(J,{code:RA.invalid_date}),LQ}let B=new WJ,Y=void 0;for(let J of this._def.checks)if(J.kind==="min"){if(A.data.getTime()J.value)Y=this._getOrReturnCtx(A,Y),xA(Y,{code:RA.too_big,message:J.message,inclusive:!0,exact:!1,maximum:J.value,type:"date"}),B.dirty()}else FB.assertNever(J);return{status:B.value,value:new Date(A.data.getTime())}}_addCheck(A){return new JZ({...this._def,checks:[...this._def.checks,A]})}min(A,Q){return this._addCheck({kind:"min",value:A.getTime(),message:tA.toString(Q)})}max(A,Q){return this._addCheck({kind:"max",value:A.getTime(),message:tA.toString(Q)})}get minDate(){let A=null;for(let Q of this._def.checks)if(Q.kind==="min"){if(A===null||Q.value>A)A=Q.value}return A!=null?new Date(A):null}get maxDate(){let A=null;for(let Q of this._def.checks)if(Q.kind==="max"){if(A===null||Q.value{return new JZ({checks:[],coerce:A?.coerce||!1,typeName:zQ.ZodDate,...pQ(A)})};class pH extends JB{_parse(A){if(this._getType(A)!==kA.symbol){let B=this._getOrReturnCtx(A);return xA(B,{code:RA.invalid_type,expected:kA.symbol,received:B.parsedType}),LQ}return wJ(A.data)}}pH.create=(A)=>{return new pH({typeName:zQ.ZodSymbol,...pQ(A)})};class yU extends JB{_parse(A){if(this._getType(A)!==kA.undefined){let B=this._getOrReturnCtx(A);return xA(B,{code:RA.invalid_type,expected:kA.undefined,received:B.parsedType}),LQ}return wJ(A.data)}}yU.create=(A)=>{return new yU({typeName:zQ.ZodUndefined,...pQ(A)})};class gU extends JB{_parse(A){if(this._getType(A)!==kA.null){let B=this._getOrReturnCtx(A);return xA(B,{code:RA.invalid_type,expected:kA.null,received:B.parsedType}),LQ}return wJ(A.data)}}gU.create=(A)=>{return new gU({typeName:zQ.ZodNull,...pQ(A)})};class CZ extends JB{constructor(){super(...arguments);this._any=!0}_parse(A){return wJ(A.data)}}CZ.create=(A)=>{return new CZ({typeName:zQ.ZodAny,...pQ(A)})};class j7 extends JB{constructor(){super(...arguments);this._unknown=!0}_parse(A){return wJ(A.data)}}j7.create=(A)=>{return new j7({typeName:zQ.ZodUnknown,...pQ(A)})};class r1 extends JB{_parse(A){let Q=this._getOrReturnCtx(A);return xA(Q,{code:RA.invalid_type,expected:kA.never,received:Q.parsedType}),LQ}}r1.create=(A)=>{return new r1({typeName:zQ.ZodNever,...pQ(A)})};class iH extends JB{_parse(A){if(this._getType(A)!==kA.undefined){let B=this._getOrReturnCtx(A);return xA(B,{code:RA.invalid_type,expected:kA.void,received:B.parsedType}),LQ}return wJ(A.data)}}iH.create=(A)=>{return new iH({typeName:zQ.ZodVoid,...pQ(A)})};class gC extends JB{_parse(A){let{ctx:Q,status:B}=this._processInputParams(A),Y=this._def;if(Q.parsedType!==kA.array)return xA(Q,{code:RA.invalid_type,expected:kA.array,received:Q.parsedType}),LQ;if(Y.exactLength!==null){let C=Q.data.length>Y.exactLength.value,X=Q.data.lengthY.maxLength.value)xA(Q,{code:RA.too_big,maximum:Y.maxLength.value,type:"array",inclusive:!0,exact:!1,message:Y.maxLength.message}),B.dirty()}if(Q.common.async)return Promise.all([...Q.data].map((C,X)=>{return Y.type._parseAsync(new xC(Q,C,Q.path,X))})).then((C)=>{return WJ.mergeArray(B,C)});let J=[...Q.data].map((C,X)=>{return Y.type._parseSync(new xC(Q,C,Q.path,X))});return WJ.mergeArray(B,J)}get element(){return this._def.type}min(A,Q){return new gC({...this._def,minLength:{value:A,message:tA.toString(Q)}})}max(A,Q){return new gC({...this._def,maxLength:{value:A,message:tA.toString(Q)}})}length(A,Q){return new gC({...this._def,exactLength:{value:A,message:tA.toString(Q)}})}nonempty(A){return this.min(1,A)}}gC.create=(A,Q)=>{return new gC({type:A,minLength:null,maxLength:null,exactLength:null,typeName:zQ.ZodArray,...pQ(Q)})};function kU(A){if(A instanceof y0){let Q={};for(let B in A.shape){let Y=A.shape[B];Q[B]=hC.create(kU(Y))}return new y0({...A._def,shape:()=>Q})}else if(A instanceof gC)return new gC({...A._def,type:kU(A.element)});else if(A instanceof hC)return hC.create(kU(A.unwrap()));else if(A instanceof g6)return g6.create(kU(A.unwrap()));else if(A instanceof a1)return a1.create(A.items.map((Q)=>kU(Q)));else return A}class y0 extends JB{constructor(){super(...arguments);this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let A=this._def.shape(),Q=FB.objectKeys(A);return this._cached={shape:A,keys:Q},this._cached}_parse(A){if(this._getType(A)!==kA.object){let W=this._getOrReturnCtx(A);return xA(W,{code:RA.invalid_type,expected:kA.object,received:W.parsedType}),LQ}let{status:B,ctx:Y}=this._processInputParams(A),{shape:J,keys:C}=this._getCached(),X=[];if(!(this._def.catchall instanceof r1&&this._def.unknownKeys==="strip")){for(let W in Y.data)if(!C.includes(W))X.push(W)}let G=[];for(let W of C){let F=J[W],Z=Y.data[W];G.push({key:{status:"valid",value:W},value:F._parse(new xC(Y,Z,Y.path,W)),alwaysSet:W in Y.data})}if(this._def.catchall instanceof r1){let W=this._def.unknownKeys;if(W==="passthrough")for(let F of X)G.push({key:{status:"valid",value:F},value:{status:"valid",value:Y.data[F]}});else if(W==="strict"){if(X.length>0)xA(Y,{code:RA.unrecognized_keys,keys:X}),B.dirty()}else if(W==="strip");else throw Error("Internal ZodObject error: invalid unknownKeys value.")}else{let W=this._def.catchall;for(let F of X){let Z=Y.data[F];G.push({key:{status:"valid",value:F},value:W._parse(new xC(Y,Z,Y.path,F)),alwaysSet:F in Y.data})}}if(Y.common.async)return Promise.resolve().then(async()=>{let W=[];for(let F of G){let Z=await F.key,U=await F.value;W.push({key:Z,value:U,alwaysSet:F.alwaysSet})}return W}).then((W)=>{return WJ.mergeObjectSync(B,W)});else return WJ.mergeObjectSync(B,G)}get shape(){return this._def.shape()}strict(A){return tA.errToObj,new y0({...this._def,unknownKeys:"strict",...A!==void 0?{errorMap:(Q,B)=>{let Y=this._def.errorMap?.(Q,B).message??B.defaultError;if(Q.code==="unrecognized_keys")return{message:tA.errToObj(A).message??Y};return{message:Y}}}:{}})}strip(){return new y0({...this._def,unknownKeys:"strip"})}passthrough(){return new y0({...this._def,unknownKeys:"passthrough"})}extend(A){return new y0({...this._def,shape:()=>({...this._def.shape(),...A})})}merge(A){return new y0({unknownKeys:A._def.unknownKeys,catchall:A._def.catchall,shape:()=>({...this._def.shape(),...A._def.shape()}),typeName:zQ.ZodObject})}setKey(A,Q){return this.augment({[A]:Q})}catchall(A){return new y0({...this._def,catchall:A})}pick(A){let Q={};for(let B of FB.objectKeys(A))if(A[B]&&this.shape[B])Q[B]=this.shape[B];return new y0({...this._def,shape:()=>Q})}omit(A){let Q={};for(let B of FB.objectKeys(this.shape))if(!A[B])Q[B]=this.shape[B];return new y0({...this._def,shape:()=>Q})}deepPartial(){return kU(this)}partial(A){let Q={};for(let B of FB.objectKeys(this.shape)){let Y=this.shape[B];if(A&&!A[B])Q[B]=Y;else Q[B]=Y.optional()}return new y0({...this._def,shape:()=>Q})}required(A){let Q={};for(let B of FB.objectKeys(this.shape))if(A&&!A[B])Q[B]=this.shape[B];else{let J=this.shape[B];while(J instanceof hC)J=J._def.innerType;Q[B]=J}return new y0({...this._def,shape:()=>Q})}keyof(){return w7A(FB.objectKeys(this.shape))}}y0.create=(A,Q)=>{return new y0({shape:()=>A,unknownKeys:"strip",catchall:r1.create(),typeName:zQ.ZodObject,...pQ(Q)})};y0.strictCreate=(A,Q)=>{return new y0({shape:()=>A,unknownKeys:"strict",catchall:r1.create(),typeName:zQ.ZodObject,...pQ(Q)})};y0.lazycreate=(A,Q)=>{return new y0({shape:A,unknownKeys:"strip",catchall:r1.create(),typeName:zQ.ZodObject,...pQ(Q)})};class hU extends JB{_parse(A){let{ctx:Q}=this._processInputParams(A),B=this._def.options;function Y(J){for(let X of J)if(X.result.status==="valid")return X.result;for(let X of J)if(X.result.status==="dirty")return Q.common.issues.push(...X.ctx.common.issues),X.result;let C=J.map((X)=>new g9(X.ctx.common.issues));return xA(Q,{code:RA.invalid_union,unionErrors:C}),LQ}if(Q.common.async)return Promise.all(B.map(async(J)=>{let C={...Q,common:{...Q.common,issues:[]},parent:null};return{result:await J._parseAsync({data:Q.data,path:Q.path,parent:C}),ctx:C}})).then(Y);else{let J=void 0,C=[];for(let G of B){let W={...Q,common:{...Q.common,issues:[]},parent:null},F=G._parseSync({data:Q.data,path:Q.path,parent:W});if(F.status==="valid")return F;else if(F.status==="dirty"&&!J)J={result:F,ctx:W};if(W.common.issues.length)C.push(W.common.issues)}if(J)return Q.common.issues.push(...J.ctx.common.issues),J.result;let X=C.map((G)=>new g9(G));return xA(Q,{code:RA.invalid_union,unionErrors:X}),LQ}}get options(){return this._def.options}}hU.create=(A,Q)=>{return new hU({options:A,typeName:zQ.ZodUnion,...pQ(Q)})};var y6=(A)=>{if(A instanceof fU)return y6(A.schema);else if(A instanceof fC)return y6(A.innerType());else if(A instanceof bU)return[A.value];else if(A instanceof T7)return A.options;else if(A instanceof mU)return FB.objectValues(A.enum);else if(A instanceof uU)return y6(A._def.innerType);else if(A instanceof yU)return[void 0];else if(A instanceof gU)return[null];else if(A instanceof hC)return[void 0,...y6(A.unwrap())];else if(A instanceof g6)return[null,...y6(A.unwrap())];else if(A instanceof _R)return y6(A.unwrap());else if(A instanceof cU)return y6(A.unwrap());else if(A instanceof dU)return y6(A._def.innerType);else return[]};class kR extends JB{_parse(A){let{ctx:Q}=this._processInputParams(A);if(Q.parsedType!==kA.object)return xA(Q,{code:RA.invalid_type,expected:kA.object,received:Q.parsedType}),LQ;let B=this.discriminator,Y=Q.data[B],J=this.optionsMap.get(Y);if(!J)return xA(Q,{code:RA.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[B]}),LQ;if(Q.common.async)return J._parseAsync({data:Q.data,path:Q.path,parent:Q});else return J._parseSync({data:Q.data,path:Q.path,parent:Q})}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(A,Q,B){let Y=new Map;for(let J of Q){let C=y6(J.shape[A]);if(!C.length)throw Error(`A discriminator value for key \`${A}\` could not be extracted from all schema options`);for(let X of C){if(Y.has(X))throw Error(`Discriminator property ${String(A)} has duplicate value ${String(X)}`);Y.set(X,J)}}return new kR({typeName:zQ.ZodDiscriminatedUnion,discriminator:A,options:Q,optionsMap:Y,...pQ(B)})}}function Ff(A,Q){let B=s1(A),Y=s1(Q);if(A===Q)return{valid:!0,data:A};else if(B===kA.object&&Y===kA.object){let J=FB.objectKeys(Q),C=FB.objectKeys(A).filter((G)=>J.indexOf(G)!==-1),X={...A,...Q};for(let G of C){let W=Ff(A[G],Q[G]);if(!W.valid)return{valid:!1};X[G]=W.data}return{valid:!0,data:X}}else if(B===kA.array&&Y===kA.array){if(A.length!==Q.length)return{valid:!1};let J=[];for(let C=0;C{if(TR(J)||TR(C))return LQ;let X=Ff(J.value,C.value);if(!X.valid)return xA(B,{code:RA.invalid_intersection_types}),LQ;if(SR(J)||SR(C))Q.dirty();return{status:Q.value,value:X.data}};if(B.common.async)return Promise.all([this._def.left._parseAsync({data:B.data,path:B.path,parent:B}),this._def.right._parseAsync({data:B.data,path:B.path,parent:B})]).then(([J,C])=>Y(J,C));else return Y(this._def.left._parseSync({data:B.data,path:B.path,parent:B}),this._def.right._parseSync({data:B.data,path:B.path,parent:B}))}}xU.create=(A,Q,B)=>{return new xU({left:A,right:Q,typeName:zQ.ZodIntersection,...pQ(B)})};class a1 extends JB{_parse(A){let{status:Q,ctx:B}=this._processInputParams(A);if(B.parsedType!==kA.array)return xA(B,{code:RA.invalid_type,expected:kA.array,received:B.parsedType}),LQ;if(B.data.lengththis._def.items.length)xA(B,{code:RA.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),Q.dirty();let J=[...B.data].map((C,X)=>{let G=this._def.items[X]||this._def.rest;if(!G)return null;return G._parse(new xC(B,C,B.path,X))}).filter((C)=>!!C);if(B.common.async)return Promise.all(J).then((C)=>{return WJ.mergeArray(Q,C)});else return WJ.mergeArray(Q,J)}get items(){return this._def.items}rest(A){return new a1({...this._def,rest:A})}}a1.create=(A,Q)=>{if(!Array.isArray(A))throw Error("You must pass an array of schemas to z.tuple([ ... ])");return new a1({items:A,typeName:zQ.ZodTuple,rest:null,...pQ(Q)})};class nH extends JB{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(A){let{status:Q,ctx:B}=this._processInputParams(A);if(B.parsedType!==kA.object)return xA(B,{code:RA.invalid_type,expected:kA.object,received:B.parsedType}),LQ;let Y=[],J=this._def.keyType,C=this._def.valueType;for(let X in B.data)Y.push({key:J._parse(new xC(B,X,B.path,X)),value:C._parse(new xC(B,B.data[X],B.path,X)),alwaysSet:X in B.data});if(B.common.async)return WJ.mergeObjectAsync(Q,Y);else return WJ.mergeObjectSync(Q,Y)}get element(){return this._def.valueType}static create(A,Q,B){if(Q instanceof JB)return new nH({keyType:A,valueType:Q,typeName:zQ.ZodRecord,...pQ(B)});return new nH({keyType:yC.create(),valueType:A,typeName:zQ.ZodRecord,...pQ(Q)})}}class sH extends JB{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(A){let{status:Q,ctx:B}=this._processInputParams(A);if(B.parsedType!==kA.map)return xA(B,{code:RA.invalid_type,expected:kA.map,received:B.parsedType}),LQ;let Y=this._def.keyType,J=this._def.valueType,C=[...B.data.entries()].map(([X,G],W)=>{return{key:Y._parse(new xC(B,X,B.path,[W,"key"])),value:J._parse(new xC(B,G,B.path,[W,"value"]))}});if(B.common.async){let X=new Map;return Promise.resolve().then(async()=>{for(let G of C){let W=await G.key,F=await G.value;if(W.status==="aborted"||F.status==="aborted")return LQ;if(W.status==="dirty"||F.status==="dirty")Q.dirty();X.set(W.value,F.value)}return{status:Q.value,value:X}})}else{let X=new Map;for(let G of C){let{key:W,value:F}=G;if(W.status==="aborted"||F.status==="aborted")return LQ;if(W.status==="dirty"||F.status==="dirty")Q.dirty();X.set(W.value,F.value)}return{status:Q.value,value:X}}}}sH.create=(A,Q,B)=>{return new sH({valueType:Q,keyType:A,typeName:zQ.ZodMap,...pQ(B)})};class XZ extends JB{_parse(A){let{status:Q,ctx:B}=this._processInputParams(A);if(B.parsedType!==kA.set)return xA(B,{code:RA.invalid_type,expected:kA.set,received:B.parsedType}),LQ;let Y=this._def;if(Y.minSize!==null){if(B.data.sizeY.maxSize.value)xA(B,{code:RA.too_big,maximum:Y.maxSize.value,type:"set",inclusive:!0,exact:!1,message:Y.maxSize.message}),Q.dirty()}let J=this._def.valueType;function C(G){let W=new Set;for(let F of G){if(F.status==="aborted")return LQ;if(F.status==="dirty")Q.dirty();W.add(F.value)}return{status:Q.value,value:W}}let X=[...B.data.values()].map((G,W)=>J._parse(new xC(B,G,B.path,W)));if(B.common.async)return Promise.all(X).then((G)=>C(G));else return C(X)}min(A,Q){return new XZ({...this._def,minSize:{value:A,message:tA.toString(Q)}})}max(A,Q){return new XZ({...this._def,maxSize:{value:A,message:tA.toString(Q)}})}size(A,Q){return this.min(A,Q).max(A,Q)}nonempty(A){return this.min(1,A)}}XZ.create=(A,Q)=>{return new XZ({valueType:A,minSize:null,maxSize:null,typeName:zQ.ZodSet,...pQ(Q)})};class _U extends JB{constructor(){super(...arguments);this.validate=this.implement}_parse(A){let{ctx:Q}=this._processInputParams(A);if(Q.parsedType!==kA.function)return xA(Q,{code:RA.invalid_type,expected:kA.function,received:Q.parsedType}),LQ;function B(X,G){return lH({data:X,path:Q.path,errorMaps:[Q.common.contextualErrorMap,Q.schemaErrorMap,TU(),v6].filter((W)=>!!W),issueData:{code:RA.invalid_arguments,argumentsError:G}})}function Y(X,G){return lH({data:X,path:Q.path,errorMaps:[Q.common.contextualErrorMap,Q.schemaErrorMap,TU(),v6].filter((W)=>!!W),issueData:{code:RA.invalid_return_type,returnTypeError:G}})}let J={errorMap:Q.common.contextualErrorMap},C=Q.data;if(this._def.returns instanceof GZ){let X=this;return wJ(async function(...G){let W=new g9([]),F=await X._def.args.parseAsync(G,J).catch(($)=>{throw W.addIssue(B(G,$)),W}),Z=await Reflect.apply(C,this,F);return await X._def.returns._def.type.parseAsync(Z,J).catch(($)=>{throw W.addIssue(Y(Z,$)),W})})}else{let X=this;return wJ(function(...G){let W=X._def.args.safeParse(G,J);if(!W.success)throw new g9([B(G,W.error)]);let F=Reflect.apply(C,this,W.data),Z=X._def.returns.safeParse(F,J);if(!Z.success)throw new g9([Y(F,Z.error)]);return Z.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...A){return new _U({...this._def,args:a1.create(A).rest(j7.create())})}returns(A){return new _U({...this._def,returns:A})}implement(A){return this.parse(A)}strictImplement(A){return this.parse(A)}static create(A,Q,B){return new _U({args:A?A:a1.create([]).rest(j7.create()),returns:Q||j7.create(),typeName:zQ.ZodFunction,...pQ(B)})}}class fU extends JB{get schema(){return this._def.getter()}_parse(A){let{ctx:Q}=this._processInputParams(A);return this._def.getter()._parse({data:Q.data,path:Q.path,parent:Q})}}fU.create=(A,Q)=>{return new fU({getter:A,typeName:zQ.ZodLazy,...pQ(Q)})};class bU extends JB{_parse(A){if(A.data!==this._def.value){let Q=this._getOrReturnCtx(A);return xA(Q,{received:Q.data,code:RA.invalid_literal,expected:this._def.value}),LQ}return{status:"valid",value:A.data}}get value(){return this._def.value}}bU.create=(A,Q)=>{return new bU({value:A,typeName:zQ.ZodLiteral,...pQ(Q)})};function w7A(A,Q){return new T7({values:A,typeName:zQ.ZodEnum,...pQ(Q)})}class T7 extends JB{_parse(A){if(typeof A.data!=="string"){let Q=this._getOrReturnCtx(A),B=this._def.values;return xA(Q,{expected:FB.joinValues(B),received:Q.parsedType,code:RA.invalid_type}),LQ}if(!this._cache)this._cache=new Set(this._def.values);if(!this._cache.has(A.data)){let Q=this._getOrReturnCtx(A),B=this._def.values;return xA(Q,{received:Q.data,code:RA.invalid_enum_value,options:B}),LQ}return wJ(A.data)}get options(){return this._def.values}get enum(){let A={};for(let Q of this._def.values)A[Q]=Q;return A}get Values(){let A={};for(let Q of this._def.values)A[Q]=Q;return A}get Enum(){let A={};for(let Q of this._def.values)A[Q]=Q;return A}extract(A,Q=this._def){return T7.create(A,{...this._def,...Q})}exclude(A,Q=this._def){return T7.create(this.options.filter((B)=>!A.includes(B)),{...this._def,...Q})}}T7.create=w7A;class mU extends JB{_parse(A){let Q=FB.getValidEnumValues(this._def.values),B=this._getOrReturnCtx(A);if(B.parsedType!==kA.string&&B.parsedType!==kA.number){let Y=FB.objectValues(Q);return xA(B,{expected:FB.joinValues(Y),received:B.parsedType,code:RA.invalid_type}),LQ}if(!this._cache)this._cache=new Set(FB.getValidEnumValues(this._def.values));if(!this._cache.has(A.data)){let Y=FB.objectValues(Q);return xA(B,{received:B.data,code:RA.invalid_enum_value,options:Y}),LQ}return wJ(A.data)}get enum(){return this._def.values}}mU.create=(A,Q)=>{return new mU({values:A,typeName:zQ.ZodNativeEnum,...pQ(Q)})};class GZ extends JB{unwrap(){return this._def.type}_parse(A){let{ctx:Q}=this._processInputParams(A);if(Q.parsedType!==kA.promise&&Q.common.async===!1)return xA(Q,{code:RA.invalid_type,expected:kA.promise,received:Q.parsedType}),LQ;let B=Q.parsedType===kA.promise?Q.data:Promise.resolve(Q.data);return wJ(B.then((Y)=>{return this._def.type.parseAsync(Y,{path:Q.path,errorMap:Q.common.contextualErrorMap})}))}}GZ.create=(A,Q)=>{return new GZ({type:A,typeName:zQ.ZodPromise,...pQ(Q)})};class fC extends JB{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===zQ.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(A){let{status:Q,ctx:B}=this._processInputParams(A),Y=this._def.effect||null,J={addIssue:(C)=>{if(xA(B,C),C.fatal)Q.abort();else Q.dirty()},get path(){return B.path}};if(J.addIssue=J.addIssue.bind(J),Y.type==="preprocess"){let C=Y.transform(B.data,J);if(B.common.async)return Promise.resolve(C).then(async(X)=>{if(Q.value==="aborted")return LQ;let G=await this._def.schema._parseAsync({data:X,path:B.path,parent:B});if(G.status==="aborted")return LQ;if(G.status==="dirty")return YZ(G.value);if(Q.value==="dirty")return YZ(G.value);return G});else{if(Q.value==="aborted")return LQ;let X=this._def.schema._parseSync({data:C,path:B.path,parent:B});if(X.status==="aborted")return LQ;if(X.status==="dirty")return YZ(X.value);if(Q.value==="dirty")return YZ(X.value);return X}}if(Y.type==="refinement"){let C=(X)=>{let G=Y.refinement(X,J);if(B.common.async)return Promise.resolve(G);if(G instanceof Promise)throw Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return X};if(B.common.async===!1){let X=this._def.schema._parseSync({data:B.data,path:B.path,parent:B});if(X.status==="aborted")return LQ;if(X.status==="dirty")Q.dirty();return C(X.value),{status:Q.value,value:X.value}}else return this._def.schema._parseAsync({data:B.data,path:B.path,parent:B}).then((X)=>{if(X.status==="aborted")return LQ;if(X.status==="dirty")Q.dirty();return C(X.value).then(()=>{return{status:Q.value,value:X.value}})})}if(Y.type==="transform")if(B.common.async===!1){let C=this._def.schema._parseSync({data:B.data,path:B.path,parent:B});if(!w7(C))return LQ;let X=Y.transform(C.value,J);if(X instanceof Promise)throw Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:Q.value,value:X}}else return this._def.schema._parseAsync({data:B.data,path:B.path,parent:B}).then((C)=>{if(!w7(C))return LQ;return Promise.resolve(Y.transform(C.value,J)).then((X)=>({status:Q.value,value:X}))});FB.assertNever(Y)}}fC.create=(A,Q,B)=>{return new fC({schema:A,typeName:zQ.ZodEffects,effect:Q,...pQ(B)})};fC.createWithPreprocess=(A,Q,B)=>{return new fC({schema:Q,effect:{type:"preprocess",transform:A},typeName:zQ.ZodEffects,...pQ(B)})};class hC extends JB{_parse(A){if(this._getType(A)===kA.undefined)return wJ(void 0);return this._def.innerType._parse(A)}unwrap(){return this._def.innerType}}hC.create=(A,Q)=>{return new hC({innerType:A,typeName:zQ.ZodOptional,...pQ(Q)})};class g6 extends JB{_parse(A){if(this._getType(A)===kA.null)return wJ(null);return this._def.innerType._parse(A)}unwrap(){return this._def.innerType}}g6.create=(A,Q)=>{return new g6({innerType:A,typeName:zQ.ZodNullable,...pQ(Q)})};class uU extends JB{_parse(A){let{ctx:Q}=this._processInputParams(A),B=Q.data;if(Q.parsedType===kA.undefined)B=this._def.defaultValue();return this._def.innerType._parse({data:B,path:Q.path,parent:Q})}removeDefault(){return this._def.innerType}}uU.create=(A,Q)=>{return new uU({innerType:A,typeName:zQ.ZodDefault,defaultValue:typeof Q.default==="function"?Q.default:()=>Q.default,...pQ(Q)})};class dU extends JB{_parse(A){let{ctx:Q}=this._processInputParams(A),B={...Q,common:{...Q.common,issues:[]}},Y=this._def.innerType._parse({data:B.data,path:B.path,parent:{...B}});if(SU(Y))return Y.then((J)=>{return{status:"valid",value:J.status==="valid"?J.value:this._def.catchValue({get error(){return new g9(B.common.issues)},input:B.data})}});else return{status:"valid",value:Y.status==="valid"?Y.value:this._def.catchValue({get error(){return new g9(B.common.issues)},input:B.data})}}removeCatch(){return this._def.innerType}}dU.create=(A,Q)=>{return new dU({innerType:A,typeName:zQ.ZodCatch,catchValue:typeof Q.catch==="function"?Q.catch:()=>Q.catch,...pQ(Q)})};class rH extends JB{_parse(A){if(this._getType(A)!==kA.nan){let B=this._getOrReturnCtx(A);return xA(B,{code:RA.invalid_type,expected:kA.nan,received:B.parsedType}),LQ}return{status:"valid",value:A.data}}}rH.create=(A)=>{return new rH({typeName:zQ.ZodNaN,...pQ(A)})};var hQB=Symbol("zod_brand");class _R extends JB{_parse(A){let{ctx:Q}=this._processInputParams(A),B=Q.data;return this._def.type._parse({data:B,path:Q.path,parent:Q})}unwrap(){return this._def.type}}class aH extends JB{_parse(A){let{status:Q,ctx:B}=this._processInputParams(A);if(B.common.async)return(async()=>{let J=await this._def.in._parseAsync({data:B.data,path:B.path,parent:B});if(J.status==="aborted")return LQ;if(J.status==="dirty")return Q.dirty(),YZ(J.value);else return this._def.out._parseAsync({data:J.value,path:B.path,parent:B})})();else{let Y=this._def.in._parseSync({data:B.data,path:B.path,parent:B});if(Y.status==="aborted")return LQ;if(Y.status==="dirty")return Q.dirty(),{status:"dirty",value:Y.value};else return this._def.out._parseSync({data:Y.value,path:B.path,parent:B})}}static create(A,Q){return new aH({in:A,out:Q,typeName:zQ.ZodPipeline})}}class cU extends JB{_parse(A){let Q=this._def.innerType._parse(A),B=(Y)=>{if(w7(Y))Y.value=Object.freeze(Y.value);return Y};return SU(Q)?Q.then((Y)=>B(Y)):B(Q)}unwrap(){return this._def.innerType}}cU.create=(A,Q)=>{return new cU({innerType:A,typeName:zQ.ZodReadonly,...pQ(Q)})};function q7A(A,Q){let B=typeof A==="function"?A(Q):typeof A==="string"?{message:A}:A;return typeof B==="string"?{message:B}:B}function j7A(A,Q={},B){if(A)return CZ.create().superRefine((Y,J)=>{let C=A(Y);if(C instanceof Promise)return C.then((X)=>{if(!X){let G=q7A(Q,Y),W=G.fatal??B??!0;J.addIssue({code:"custom",...G,fatal:W})}});if(!C){let X=q7A(Q,Y),G=X.fatal??B??!0;J.addIssue({code:"custom",...X,fatal:G})}return});return CZ.create()}var xQB={object:y0.lazycreate},zQ;(function(A){A.ZodString="ZodString",A.ZodNumber="ZodNumber",A.ZodNaN="ZodNaN",A.ZodBigInt="ZodBigInt",A.ZodBoolean="ZodBoolean",A.ZodDate="ZodDate",A.ZodSymbol="ZodSymbol",A.ZodUndefined="ZodUndefined",A.ZodNull="ZodNull",A.ZodAny="ZodAny",A.ZodUnknown="ZodUnknown",A.ZodNever="ZodNever",A.ZodVoid="ZodVoid",A.ZodArray="ZodArray",A.ZodObject="ZodObject",A.ZodUnion="ZodUnion",A.ZodDiscriminatedUnion="ZodDiscriminatedUnion",A.ZodIntersection="ZodIntersection",A.ZodTuple="ZodTuple",A.ZodRecord="ZodRecord",A.ZodMap="ZodMap",A.ZodSet="ZodSet",A.ZodFunction="ZodFunction",A.ZodLazy="ZodLazy",A.ZodLiteral="ZodLiteral",A.ZodEnum="ZodEnum",A.ZodEffects="ZodEffects",A.ZodNativeEnum="ZodNativeEnum",A.ZodOptional="ZodOptional",A.ZodNullable="ZodNullable",A.ZodDefault="ZodDefault",A.ZodCatch="ZodCatch",A.ZodPromise="ZodPromise",A.ZodBranded="ZodBranded",A.ZodPipeline="ZodPipeline",A.ZodReadonly="ZodReadonly"})(zQ||(zQ={}));var fQB=(A,Q={message:`Input not instance of ${A.name}`})=>j7A((B)=>B instanceof A,Q),O7A=yC.create,P7A=O7.create,bQB=rH.create,mQB=P7.create,T7A=vU.create,uQB=JZ.create,dQB=pH.create,cQB=yU.create,lQB=gU.create,pQB=CZ.create,iQB=j7.create,nQB=r1.create,sQB=iH.create,rQB=gC.create,aQB=y0.create,oQB=y0.strictCreate,tQB=hU.create,eQB=kR.create,ABB=xU.create,QBB=a1.create,BBB=nH.create,YBB=sH.create,JBB=XZ.create,CBB=_U.create,XBB=fU.create,GBB=bU.create,WBB=T7.create,FBB=mU.create,ZBB=GZ.create,$BB=fC.create,UBB=hC.create,EBB=g6.create,KBB=fC.createWithPreprocess,VBB=aH.create,IBB=()=>O7A().optional(),HBB=()=>P7A().optional(),DBB=()=>T7A().optional(),NBB={string:(A)=>yC.create({...A,coerce:!0}),number:(A)=>O7.create({...A,coerce:!0}),boolean:(A)=>vU.create({...A,coerce:!0}),bigint:(A)=>P7.create({...A,coerce:!0}),date:(A)=>JZ.create({...A,coerce:!0})};var LBB=LQ;var SB=s;var bC;(function(A){A[A.EXTEND=1]="EXTEND",A[A.WRAP=2]="WRAP",A[A.CROP=3]="CROP"})(bC||(bC={}));var S7=s.object({bitmap:s.object({data:s.union([s.instanceof(Buffer),s.instanceof(Uint8Array)]),width:s.number(),height:s.number()})});var qBB=s.object({src:S7,x:s.number().optional(),y:s.number().optional(),srcX:s.number().optional(),srcY:s.number().optional(),srcW:s.number().optional(),srcH:s.number().optional()}),MBB=s.union([S7,qBB]),lU={blit(A,Q){let B=MBB.parse(Q),{src:Y,x:J=0,y:C=0,srcX:X=0,srcY:G=0,srcW:W=Y.bitmap.width,srcH:F=Y.bitmap.height}="bitmap"in B?{src:B}:B;if(!("bitmap"in Y))throw Error("The source must be a Jimp image");if(typeof J!=="number"||typeof C!=="number")throw Error("x and y must be numbers");J=Math.round(J),C=Math.round(C),X=Math.round(X),G=Math.round(G),W=Math.round(W),F=Math.round(F);let Z=A.bitmap.width,U=A.bitmap.height;return I5(Y,X,G,W,F,function($,E,K){let I=J+$-X,V=C+E-G;if(I>=0&&V>=0&&Z-I>0&&U-V>0){let H=A.getPixelIndex(I,V),D={r:Y.bitmap.data[K]||0,g:Y.bitmap.data[K+1]||0,b:Y.bitmap.data[K+2]||0,a:Y.bitmap.data[K+3]||0},L={r:A.bitmap.data[H]||0,g:A.bitmap.data[H+1]||0,b:A.bitmap.data[H+2]||0,a:A.bitmap.data[H+3]||0};A.bitmap.data[H]=(D.a*(D.r-L.r)-L.r+255>>8)+L.r,A.bitmap.data[H+1]=(D.a*(D.g-L.g)-L.g+255>>8)+L.g,A.bitmap.data[H+2]=(D.a*(D.b-L.b)-L.b+255>>8)+L.b,A.bitmap.data[H+3]=z0(L.a+D.a)}}),A}};var S7A=[1,57,41,21,203,34,97,73,227,91,149,62,105,45,39,137,241,107,3,173,39,71,65,238,219,101,187,87,81,151,141,133,249,117,221,209,197,187,177,169,5,153,73,139,133,127,243,233,223,107,103,99,191,23,177,171,165,159,77,149,9,139,135,131,253,245,119,231,224,109,211,103,25,195,189,23,45,175,171,83,81,79,155,151,147,9,141,137,67,131,129,251,123,30,235,115,113,221,217,53,13,51,50,49,193,189,185,91,179,175,43,169,83,163,5,79,155,19,75,147,145,143,35,69,17,67,33,65,255,251,247,243,239,59,29,229,113,111,219,27,213,105,207,51,201,199,49,193,191,47,93,183,181,179,11,87,43,85,167,165,163,161,159,157,155,77,19,75,37,73,145,143,141,35,138,137,135,67,33,131,129,255,63,250,247,61,121,239,237,117,29,229,227,225,111,55,109,216,213,211,209,207,205,203,201,199,197,195,193,48,190,47,93,185,183,181,179,178,176,175,173,171,85,21,167,165,41,163,161,5,79,157,78,154,153,19,75,149,74,147,73,144,143,71,141,140,139,137,17,135,134,133,66,131,65,129,1],k7A=[0,9,10,10,14,12,14,14,16,15,16,15,16,15,15,17,18,17,12,18,16,17,17,19,19,18,19,18,18,19,19,19,20,19,20,20,20,20,20,20,15,20,19,20,20,20,21,21,21,20,20,20,21,18,21,21,21,21,20,21,17,21,21,21,22,22,21,22,22,21,22,21,19,22,22,19,20,22,22,21,21,21,22,22,22,18,22,22,21,22,22,23,22,20,23,22,22,23,23,21,19,21,21,21,23,23,23,22,23,23,21,23,22,23,18,22,23,20,22,23,23,23,21,22,20,22,21,22,24,24,24,24,24,22,21,24,23,23,24,21,24,23,24,22,24,24,22,24,24,22,23,24,24,24,20,23,22,23,24,24,24,24,24,24,24,23,21,23,22,23,24,24,24,22,24,24,24,23,22,24,24,25,23,25,25,23,24,25,25,24,22,25,25,25,24,23,24,25,25,25,25,25,25,25,25,25,25,25,25,23,25,23,24,25,25,25,25,25,25,25,25,25,24,22,25,25,23,25,25,20,24,25,24,25,25,22,24,25,24,25,24,25,25,24,25,25,25,25,22,25,25,25,24,25,24,25,18];var _7A={blur(A,Q){if(typeof Q!=="number")throw Error("r must be a number");if(Q<1)throw Error("r must be greater than 0");let B,Y,J,C,X,G,W,F,Z,U,$,E,K,I=A.bitmap.width-1,V=A.bitmap.height-1,H=Q+1,D=S7A[Q],L=k7A[Q],z=[],M=[],N=[],q=[],w=[],P=[],_=2;while(_-- >0){E=0,K=0;for(G=0;GI?I:W)<<2),B+=A.bitmap.data[F++],Y+=A.bitmap.data[F++],J+=A.bitmap.data[F++],C+=A.bitmap.data[F];for(X=0;X0?F<<2:0;Z=K+w[X],U=K+P[X],B+=A.bitmap.data[Z++]-A.bitmap.data[U++],Y+=A.bitmap.data[Z++]-A.bitmap.data[U++],J+=A.bitmap.data[Z++]-A.bitmap.data[U++],C+=A.bitmap.data[Z]-A.bitmap.data[U++],E++}K+=A.bitmap.width<<2}for(X=0;XV?0:A.bitmap.width,B+=z[$],Y+=M[$],J+=N[$],C+=q[$];E=X<<2;for(G=0;G>>L),A.bitmap.data[E+1]=z0(Y*D>>>L),A.bitmap.data[E+2]=z0(J*D>>>L),A.bitmap.data[E+3]=z0(C*D>>>L),X===0)w[G]=((F=G+H)0?F*A.bitmap.width:0;Z=X+w[G],U=X+P[G],B+=z[Z]-z[U],Y+=M[Z]-M[U],J+=N[Z]-N[U],C+=q[Z]-q[U],E+=A.bitmap.width<<2}}}return A},gaussian(A,Q){if(typeof Q!=="number")throw Error("r must be a number");if(Q<1)throw Error("r must be greater than 0");let B=Math.ceil(Q*2.57),Y=B*2+1,J=Q*Q*2,C=J*Math.PI,X=[];for(let G=0;GA.bitmap.height?A.bitmap.height:A.bitmap.width)/2,J={x:typeof B.x==="number"?B.x:A.bitmap.width/2,y:typeof B.y==="number"?B.y:A.bitmap.height/2};return A.scan((C,X,G)=>{let W=Math.sqrt(Math.pow(C-J.x,2)+Math.pow(X-J.y,2));if(Y-W<=0)A.bitmap.data[G+3]=0;else if(Y-W<1)A.bitmap.data[G+3]=255*(Y-W)}),A}};var vR=s.array(s.number()).min(1).array(),OBB=s.object({kernel:vR,edgeHandling:s.nativeEnum(bC).optional()}),PBB=s.union([vR,OBB]),TBB=s.object({kernel:vR,x:s.number().optional(),y:s.number().optional(),w:s.number().optional(),h:s.number().optional()}),SBB=s.union([vR,TBB]),g7A=s.number().min(1).max(1/0),kBB=s.object({size:g7A,x:s.number().optional(),y:s.number().optional(),w:s.number().optional(),h:s.number().optional()}),_BB=s.union([g7A,kBB]);function y7A(A,Q,B,Y){let J=[0,0,0,0],C=(Q.length-1)/2;for(let X=0;X{Q.r[A.bitmap.data[J+0]]++,Q.g[A.bitmap.data[J+1]]++,Q.b[A.bitmap.data[J+2]]++}),Q}var $f=function(A,Q,B){return(A-Q)*255/(B-Q)},Uf=function(A){return[A.findIndex((Q)=>Q>0),255-A.slice().reverse().findIndex((Q)=>Q>0)]},pU={normalize(A){let Q=rBB(A),B={r:Uf(Q.r),g:Uf(Q.g),b:Uf(Q.b)};return A.scan((Y,J,C)=>{let X=A.bitmap.data[C+0],G=A.bitmap.data[C+1],W=A.bitmap.data[C+2];A.bitmap.data[C+0]=$f(X,B.r[0],B.r[1]),A.bitmap.data[C+1]=$f(G,B.g[0],B.g[1]),A.bitmap.data[C+2]=$f(W,B.b[0],B.b[1])}),A},invert(A){return A.scan((Q,B,Y)=>{A.bitmap.data[Y]=255-A.bitmap.data[Y],A.bitmap.data[Y+1]=255-A.bitmap.data[Y+1],A.bitmap.data[Y+2]=255-A.bitmap.data[Y+2]}),A},brightness(A,Q){if(typeof Q!=="number")throw Error("val must be numbers");return A.scan((B,Y,J)=>{A.bitmap.data[J]=z0(A.bitmap.data[J]*Q),A.bitmap.data[J+1]=z0(A.bitmap.data[J+1]*Q),A.bitmap.data[J+2]=z0(A.bitmap.data[J+2]*Q)}),A},contrast(A,Q){if(typeof Q!=="number")throw Error("val must be numbers");if(Q<-1||Q>1)throw Error("val must be a number between -1 and +1");let B=(Q+1)/(1-Q);function Y(J){return J=Math.floor(B*(J-127)+127),J<0?0:J>255?255:J}return A.scan((J,C,X)=>{A.bitmap.data[X]=Y(A.bitmap.data[X]),A.bitmap.data[X+1]=Y(A.bitmap.data[X+1]),A.bitmap.data[X+2]=Y(A.bitmap.data[X+2])}),A},posterize(A,Q){if(typeof Q!=="number")throw Error("n must be numbers");if(Q<2)Q=2;return A.scan((B,Y,J)=>{let C=A.bitmap.data[J],X=A.bitmap.data[J+1],G=A.bitmap.data[J+2];A.bitmap.data[J]=Math.floor(C/255*(Q-1))/(Q-1)*255,A.bitmap.data[J+1]=Math.floor(X/255*(Q-1))/(Q-1)*255,A.bitmap.data[J+2]=Math.floor(G/255*(Q-1))/(Q-1)*255}),A},greyscale(A){return A.scan((Q,B,Y)=>{let J=0.2126*A.bitmap.data[Y]+0.7152*A.bitmap.data[Y+1]+0.0722*A.bitmap.data[Y+2];A.bitmap.data[Y]=J,A.bitmap.data[Y+1]=J,A.bitmap.data[Y+2]=J}),A},opacity(A,Q){if(typeof Q!=="number")throw Error("f must be a number");if(Q<0||Q>1)throw Error("f must be a number from 0 to 1");return A.scan((B,Y,J)=>{let C=A.bitmap.data[J+3]*Q;A.bitmap.data[J+3]=C}),A},sepia(A){return A.scan((Q,B,Y)=>{let J=A.bitmap.data[Y],C=A.bitmap.data[Y+1],X=A.bitmap.data[Y+2];J=J*0.393+C*0.769+X*0.189,C=J*0.349+C*0.686+X*0.168,X=J*0.272+C*0.534+X*0.131,A.bitmap.data[Y]=J<255?J:255,A.bitmap.data[Y+1]=C<255?C:255,A.bitmap.data[Y+2]=X<255?X:255}),A},fade(A,Q){if(typeof Q!=="number")throw Error("f must be a number");if(Q<0||Q>1)throw Error("f must be a number from 0 to 1");return this.opacity(A,1-Q)},convolution(A,Q){let B=PBB.parse(Q),{kernel:Y,edgeHandling:J=bC.EXTEND}="kernel"in B?B:{kernel:B,edgeHandling:void 0};if(!Y[0])throw Error("kernel must be a matrix");let C=Buffer.from(A.bitmap.data),X=Y.length,G=Y[0].length,W=Math.floor(X/2),F=Math.floor(G/2),Z=-W,U=-F,$,E,K,I,V,H,D,L,z,M;return A.scan((N,q,w)=>{I=0,K=0,E=0;for(let P=Z;P<=W;P++)for(let _=U;_<=F;_++){if(L=N+_,z=q+P,$=Y[P+W][_+F],M=A.getPixelIndex(L,z,J),M===-1)D=0,H=0,V=0;else V=A.bitmap.data[M+0],H=A.bitmap.data[M+1],D=A.bitmap.data[M+2];E+=$*V,K+=$*H,I+=$*D}if(E<0)E=0;if(K<0)K=0;if(I<0)I=0;if(E>255)E=255;if(K>255)K=255;if(I>255)I=255;C[w+0]=E,C[w+1]=K,C[w+2]=I}),A.bitmap.data=C,A},opaque(A){return A.scan((Q,B,Y)=>{A.bitmap.data[Y+3]=255}),A},pixelate(A,Q){let B=_BB.parse(Q),{size:Y,x:J=0,y:C=0,w:X=A.bitmap.width-J,h:G=A.bitmap.height-C}=typeof B==="number"?{size:B}:B,W=[[0.0625,0.125,0.0625],[0.125,0.25,0.125],[0.0625,0.125,0.0625]],F=K8(A);return I5(F,J,C,X,G,(Z,U,$)=>{Z=Y*Math.floor(Z/Y),U=Y*Math.floor(U/Y);let E=y7A(F,W,Z,U);A.bitmap.data[$]=E[0],A.bitmap.data[$+1]=E[1],A.bitmap.data[$+2]=E[2],A.bitmap.data[$+3]=E[3]}),A},convolute(A,Q){let B=SBB.parse(Q),{kernel:Y,x:J=0,y:C=0,w:X=A.bitmap.width-J,h:G=A.bitmap.height-C}="kernel"in B?B:{kernel:B},W=K8(A);return I5(W,J,C,X,G,(F,Z,U)=>{let $=y7A(W,Y,F,Z);A.bitmap.data[U]=z0($[0]),A.bitmap.data[U+1]=z0($[1]),A.bitmap.data[U+2]=z0($[2]),A.bitmap.data[U+3]=z0($[3])}),A},color(A,Q){if(!Q||!Array.isArray(Q))throw Error("actions must be an array");return Q.forEach((B)=>sBB.parse(B)),Q=Q.map((B)=>{if(B.apply==="xor"||B.apply==="mix")B.params[0]=oA(B.params[0]).toRgb();return B}),A.scan((B,Y,J)=>{let C={r:A.bitmap.data[J],g:A.bitmap.data[J+1],b:A.bitmap.data[J+2]},X=(G,W)=>z0(C[G]+W);Q.forEach((G)=>{if(G.apply==="mix")C=Zf(C,G.params[0],G.params[1]);else if(G.apply==="tint")C=Zf(C,{r:255,g:255,b:255},G.params?.[0]);else if(G.apply==="shade")C=Zf(C,{r:0,g:0,b:0},G.params?.[0]);else if(G.apply==="xor")C={r:C.r^G.params[0].r,g:C.g^G.params[0].g,b:C.b^G.params[0].b};else if(G.apply==="red")C.r=X("r",G.params[0]);else if(G.apply==="green")C.g=X("g",G.params[0]);else if(G.apply==="blue")C.b=X("b",G.params[0]);else{if(G.apply==="hue")G.apply="spin";let W=oA(C),F=W[G.apply].bind(W);if(!F)throw Error("action "+G.apply+" not supported");C=F(...G.params||[]).toRgb()}}),A.bitmap.data[J]=C.r,A.bitmap.data[J+1]=C.g,A.bitmap.data[J+2]=C.b}),A}};var LFA=qA(zWA(),1),wf=qA(wWA(),1);import{promises as jWA}from"fs";import{existsSync as TWA}from"fs";var OWA=jWA.readFile,PWA=jWA.writeFile;var qFA=qA(gWA(),1);var M5;(function(A){A[A.LEFT=1]="LEFT",A[A.CENTER=2]="CENTER",A[A.RIGHT=4]="RIGHT"})(M5||(M5={}));var z5;(function(A){A[A.TOP=8]="TOP",A[A.MIDDLE=16]="MIDDLE",A[A.BOTTOM=32]="BOTTOM"})(z5||(z5={}));var dR;(function(A){A.SRC_OVER="srcOver",A.DST_OVER="dstOver",A.MULTIPLY="multiply",A.ADD="add",A.SCREEN="screen",A.OVERLAY="overlay",A.DARKEN="darken",A.LIGHTEN="lighten",A.HARD_LIGHT="hardLight",A.DIFFERENCE="difference",A.EXCLUSION="exclusion"})(dR||(dR={}));var Nf={};iG(Nf,{srcOver:()=>hWA,screen:()=>mWA,overlay:()=>uWA,names:()=>QYB,multiply:()=>fWA,lighten:()=>cWA,hardLight:()=>lWA,exclusion:()=>iWA,dstOver:()=>xWA,difference:()=>pWA,darken:()=>dWA,add:()=>bWA});function hWA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=(A.r*A.a+Q.r*Q.a*(1-A.a))/Y,C=(A.g*A.a+Q.g*Q.a*(1-A.a))/Y,X=(A.b*A.a+Q.b*Q.a*(1-A.a))/Y;return{r:J,g:C,b:X,a:Y}}function xWA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=(Q.r*Q.a+A.r*A.a*(1-Q.a))/Y,C=(Q.g*Q.a+A.g*A.a*(1-Q.a))/Y,X=(Q.b*Q.a+A.b*A.a*(1-Q.a))/Y;return{r:J,g:C,b:X,a:Y}}function fWA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,W=Q.g*Q.a,F=Q.b*Q.a,Z=(J*G+J*(1-Q.a)+G*(1-A.a))/Y,U=(C*W+C*(1-Q.a)+W*(1-A.a))/Y,$=(X*F+X*(1-Q.a)+F*(1-A.a))/Y;return{r:Z,g:U,b:$,a:Y}}function bWA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,W=Q.g*Q.a,F=Q.b*Q.a,Z=(J+G)/Y,U=(C+W)/Y,$=(X+F)/Y;return{r:Z,g:U,b:$,a:Y}}function mWA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,W=Q.g*Q.a,F=Q.b*Q.a,Z=(J*Q.a+G*A.a-J*G+J*(1-Q.a)+G*(1-A.a))/Y,U=(C*Q.a+W*A.a-C*W+C*(1-Q.a)+W*(1-A.a))/Y,$=(X*Q.a+F*A.a-X*F+X*(1-Q.a)+F*(1-A.a))/Y;return{r:Z,g:U,b:$,a:Y}}function uWA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,W=Q.g*Q.a,F=Q.b*Q.a,Z=(2*G<=Q.a?2*J*G+J*(1-Q.a)+G*(1-A.a):J*(1+Q.a)+G*(1+A.a)-2*G*J-Q.a*A.a)/Y,U=(2*W<=Q.a?2*C*W+C*(1-Q.a)+W*(1-A.a):C*(1+Q.a)+W*(1+A.a)-2*W*C-Q.a*A.a)/Y,$=(2*F<=Q.a?2*X*F+X*(1-Q.a)+F*(1-A.a):X*(1+Q.a)+F*(1+A.a)-2*F*X-Q.a*A.a)/Y;return{r:Z,g:U,b:$,a:Y}}function dWA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,W=Q.g*Q.a,F=Q.b*Q.a,Z=(Math.min(J*Q.a,G*A.a)+J*(1-Q.a)+G*(1-A.a))/Y,U=(Math.min(C*Q.a,W*A.a)+C*(1-Q.a)+W*(1-A.a))/Y,$=(Math.min(X*Q.a,F*A.a)+X*(1-Q.a)+F*(1-A.a))/Y;return{r:Z,g:U,b:$,a:Y}}function cWA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,W=Q.g*Q.a,F=Q.b*Q.a,Z=(Math.max(J*Q.a,G*A.a)+J*(1-Q.a)+G*(1-A.a))/Y,U=(Math.max(C*Q.a,W*A.a)+C*(1-Q.a)+W*(1-A.a))/Y,$=(Math.max(X*Q.a,F*A.a)+X*(1-Q.a)+F*(1-A.a))/Y;return{r:Z,g:U,b:$,a:Y}}function lWA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,W=Q.g*Q.a,F=Q.b*Q.a,Z=(2*J<=A.a?2*J*G+J*(1-Q.a)+G*(1-A.a):J*(1+Q.a)+G*(1+A.a)-2*G*J-Q.a*A.a)/Y,U=(2*C<=A.a?2*C*W+C*(1-Q.a)+W*(1-A.a):C*(1+Q.a)+W*(1+A.a)-2*W*C-Q.a*A.a)/Y,$=(2*X<=A.a?2*X*F+X*(1-Q.a)+F*(1-A.a):X*(1+Q.a)+F*(1+A.a)-2*F*X-Q.a*A.a)/Y;return{r:Z,g:U,b:$,a:Y}}function pWA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,W=Q.g*Q.a,F=Q.b*Q.a,Z=(J+G-2*Math.min(J*Q.a,G*A.a))/Y,U=(C+W-2*Math.min(C*Q.a,W*A.a))/Y,$=(X+F-2*Math.min(X*Q.a,F*A.a))/Y;return{r:Z,g:U,b:$,a:Y}}function iWA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,W=Q.g*Q.a,F=Q.b*Q.a,Z=(J*Q.a+G*A.a-2*J*G+J*(1-Q.a)+G*(1-A.a))/Y,U=(C*Q.a+W*A.a-2*C*W+C*(1-Q.a)+W*(1-A.a))/Y,$=(X*Q.a+F*A.a-2*X*F+X*(1-Q.a)+F*(1-A.a))/Y;return{r:Z,g:U,b:$,a:Y}}var QYB=[hWA,xWA,fWA,bWA,mWA,uWA,dWA,cWA,lWA,pWA,iWA];function iU(A,Q,B=0,Y=0,J={}){if(!(Q instanceof A.constructor))throw Error("The source must be a Jimp image");if(typeof B!=="number"||typeof Y!=="number")throw Error("x and y must be numbers");let{mode:C=dR.SRC_OVER}=J,{opacitySource:X=1,opacityDest:G=1}=J;if(typeof X!=="number"||X<0||X>1)X=1;if(typeof G!=="number"||G<0||G>1)G=1;let W=Nf[C];if(B=Math.round(B),Y=Math.round(Y),G!==1)A.scan((F,Z,U)=>{let $=A.bitmap.data[U+3]*G;A.bitmap.data[U+3]=$});return Q.scan((F,Z,U)=>{let $=A.getPixelIndex(B+F,Y+Z,bC.CROP);if($===-1)return;let E=W({r:Q.bitmap.data[U+0]/255,g:Q.bitmap.data[U+1]/255,b:Q.bitmap.data[U+2]/255,a:Q.bitmap.data[U+3]/255},{r:A.bitmap.data[$+0]/255,g:A.bitmap.data[$+1]/255,b:A.bitmap.data[$+2]/255,a:A.bitmap.data[$+3]/255},X);A.bitmap.data[$+0]=z0(E.r*255),A.bitmap.data[$+1]=z0(E.g*255),A.bitmap.data[$+2]=z0(E.b*255),A.bitmap.data[$+3]=z0(E.a*255)}),A}var HFA=qA(IFA(),1);function zf(A){let Q=A._exif;return Q&&Q.tags&&Q.tags.Orientation||1}function EYB(A){let Q=A.bitmap.width,B=A.bitmap.height;switch(zf(A)){case 1:return null;case 2:return function(Y,J){return[Q-Y-1,J]};case 3:return function(Y,J){return[Q-Y-1,B-J-1]};case 4:return function(Y,J){return[Y,B-J-1]};case 5:return function(Y,J){return[J,Y]};case 6:return function(Y,J){return[J,B-Y-1]};case 7:return function(Y,J){return[Q-J-1,B-Y-1]};case 8:return function(Y,J){return[Q-J-1,Y]};default:return null}}function KYB(A,Q,B,Y){let J=A.bitmap.data,C=A.bitmap.width,X=Buffer.alloc(J.length);for(let G=0;G4,Y=B?A.bitmap.height:A.bitmap.width,J=B?A.bitmap.width:A.bitmap.height;if(Q)KYB(A,Y,J,Q)}async function DFA(A,Q){try{A._exif=HFA.default.create(Q).parse(),VYB(A)}catch{}}var Rf={data:Buffer.alloc(0),width:0,height:0};function NFA(A){let Q=Buffer.alloc(A.byteLength),B=new Uint8Array(A);for(let Y=0;YC()),J=class{bitmap=Rf;background=0;formats=[];mime;constructor(X=Rf){if(this.formats=Y,"data"in X)this.bitmap=X;else if(this.bitmap={data:Buffer.alloc(X.width*X.height*4),width:X.width,height:X.height},X.color){this.background=typeof X.color==="string"?M1A(X.color):X.color;for(let G=0;G{let Z=G[W]?.(this,...F);if(typeof Z==="object"&&"bitmap"in Z)return this.bitmap=Z.bitmap,this;return Z}}static async read(X,G){if(Buffer.isBuffer(X)||X instanceof ArrayBuffer)return this.fromBuffer(X);if(TWA(X))return this.fromBuffer(await OWA(X));let[W,F]=await wf.to(fetch(X));if(W)throw Error(`Could not load Buffer from URL: ${X}`);if(!F.ok)throw Error(`HTTP Status ${F.status} for url ${X}`);let[Z,U]=await wf.to(F.arrayBuffer());if(Z)throw Error(`Could not load Buffer from ${X}`);let $=NFA(U);return this.fromBuffer($,G)}static fromBitmap(X){let G;if(X.data instanceof Buffer)G=Buffer.from(X.data);if(X.data instanceof Uint8Array||X.data instanceof Uint8ClampedArray)G=Buffer.from(X.data.buffer);if(Array.isArray(X.data))G=Buffer.concat(X.data.map((W)=>Buffer.from(W.toString(16).padStart(8,"0"),"hex")));if(!G)throw Error("data must be a Buffer");if(typeof X.height!=="number"||typeof X.width!=="number")throw Error("bitmap must have width and height");return new J({height:X.height,width:X.width,data:G})}static async fromBuffer(X,G){let W=X instanceof ArrayBuffer?NFA(X):X,F=await LFA.default.fromBuffer(W);if(!F||!F.mime)throw Error("Could not find MIME for Buffer");let Z=Y.find(($)=>$.mime===F.mime);if(!Z||!Z.decode)throw Error(`Mime type ${F.mime} does not support decoding`);let U=new J(await Z.decode(W,G?.[Z.mime]));return U.mime=F.mime,DFA(U,W),U}inspect(){return""}toString(){return"[object Jimp]"}get width(){return this.bitmap.width}get height(){return this.bitmap.height}async getBuffer(X,G){let W=this.formats.find((Z)=>Z.mime===X);if(!W||!W.encode)throw Error(`Unsupported MIME type: ${X}`);let F;if(W.hasAlpha)F=this;else F=new J({width:this.bitmap.width,height:this.bitmap.height,color:this.background}),iU(F,this);return W.encode(F.bitmap,G)}async getBase64(X,G){let W=await this.getBuffer(X,G);return"data:"+X+";base64,"+W.toString("base64")}async write(X,G){let W=qFA.default.getType(X);await PWA(X,await this.getBuffer(W,G))}clone(){return new J({...this.bitmap,data:Buffer.from(this.bitmap.data)})}getPixelIndex(X,G,W){let F,Z;if(!W)W=bC.EXTEND;if(typeof X!=="number"||typeof G!=="number")throw Error("x and y must be numbers");if(X=Math.round(X),G=Math.round(G),F=X,Z=G,W===bC.EXTEND){if(X<0)F=0;if(X>=this.bitmap.width)F=this.bitmap.width-1;if(G<0)Z=0;if(G>=this.bitmap.height)Z=this.bitmap.height-1}if(W===bC.WRAP){if(X<0)F=this.bitmap.width+X;if(X>=this.bitmap.width)F=X%this.bitmap.width;if(G<0)Z=this.bitmap.height+G;if(G>=this.bitmap.height)Z=G%this.bitmap.height}let U=this.bitmap.width*Z+F<<2;if(F<0||F>=this.bitmap.width)U=-1;if(Z<0||Z>=this.bitmap.height)U=-1;return U}getPixelColor(X,G){if(typeof X!=="number"||typeof G!=="number")throw Error("x and y must be numbers");let W=this.getPixelIndex(X,G);return this.bitmap.data.readUInt32BE(W)}setPixelColor(X,G,W){if(typeof X!=="number"||typeof G!=="number"||typeof W!=="number")throw Error("hex, x and y must be numbers");let F=this.getPixelIndex(G,W);return this.bitmap.data.writeUInt32BE(X,F),this}hasAlpha(){let{width:X,height:G,data:W}=this.bitmap,F=X*G<<2;for(let Z=3;Z0&&this.heightOriginal>0&&this.targetWidth>0&&this.targetHeight>0)this.configurePasses();else throw console.log(this),Error("Invalid settings specified for the resizer.")};qY.prototype.configurePasses=function(){if(this.widthOriginal===this.targetWidth)this.resizeWidth=this.bypassResizer;else if(this.ratioWeightWidthPass=this.widthOriginal/this.targetWidth,this.ratioWeightWidthPass<1&&this.interpolationPass)this.initializeFirstPassBuffers(!0),this.resizeWidth=this.colorChannels===4?this.resizeWidthInterpolatedRGBA:this.resizeWidthInterpolatedRGB;else this.initializeFirstPassBuffers(!1),this.resizeWidth=this.colorChannels===4?this.resizeWidthRGBA:this.resizeWidthRGB;if(this.heightOriginal===this.targetHeight)this.resizeHeight=this.bypassResizer;else if(this.ratioWeightHeightPass=this.heightOriginal/this.targetHeight,this.ratioWeightHeightPass<1&&this.interpolationPass)this.initializeSecondPassBuffers(!0),this.resizeHeight=this.resizeHeightInterpolated;else this.initializeSecondPassBuffers(!1),this.resizeHeight=this.colorChannels===4?this.resizeHeightRGBA:this.resizeHeightRGB};qY.prototype._resizeWidthInterpolatedRGBChannels=function(A,Q){let B=Q?4:3,Y=this.ratioWeightWidthPass,J=this.widthBuffer,C=0,X=0,G=0,W=0,F=0,Z;for(Z=0;C<0.3333333333333333;Z+=B,C+=Y)for(X=Z,G=0;X=U)$+=B,E=$,Z-=U;else{E+=Z;break}}while(Z>0&&$=W)F=E,Z=F,G-=W;else{Z+=G;break}}while(G>0&&F3)this.outputWidthWorkBenchOpaquePixelsCount=this.generateFloat64Buffer(this.heightOriginal)}};qY.prototype.initializeSecondPassBuffers=function(A){if(this.heightBuffer=this.generateUint8Buffer(this.finalResultSize),!A){if(this.outputHeightWorkBench=this.generateFloatBuffer(this.targetWidthMultipliedByChannels),this.colorChannels>3)this.outputHeightWorkBenchOpaquePixelsCount=this.generateFloat64Buffer(this.targetWidth)}};qY.prototype.generateFloatBuffer=function(A){try{return new Float32Array(A)}catch(Q){return console.error(Q),[]}};qY.prototype.generateFloat64Buffer=function(A){try{return new Float64Array(A)}catch(Q){return console.error(Q),[]}};qY.prototype.generateUint8Buffer=function(A){try{return new Uint8Array(A)}catch(Q){return console.error(Q),[]}};var zFA=qY;var jf={nearestNeighbor(A,Q){let{width:B,height:Y}=A,J=Q.width,C=Q.height,X=A.data,G=Q.data;for(let W=0;W0?J[P-4]:2*J[P]-J[P+4],j=J[P],k=J[P+4],T=z0?K[P-U*4]:2*K[P]-K[P+U*4],j=K[P],k=K[P+U*4],T=z1)for(let H=0;H{A.bitmap.data=Buffer.from(X),A.bitmap.width=Y,A.bitmap.height=J}).resize(A.bitmap.data);return A},scale(A,Q){let{f:B,mode:Y}=typeof Q==="number"?{f:Q}:DYB.parse(Q),J=A.bitmap.width*B,C=A.bitmap.height*B;return this.resize(A,{w:J,h:C,mode:Y})},scaleToFit(A,Q){let{h:B,w:Y,mode:J}=HYB.parse(Q),C=Y/B>A.bitmap.width/A.bitmap.height?B/A.bitmap.height:Y/A.bitmap.width;return this.scale(A,{f:C,mode:J})}};var LYB=s.object({w:s.number(),h:s.number(),align:s.number().optional(),mode:s.nativeEnum(N8).optional()}),RFA={contain(A,Q){let{w:B,h:Y,align:J=M5.CENTER|z5.MIDDLE,mode:C}=LYB.parse(Q),X=J&7,G=J>>3;if(!(X!==0&&!(X&X-1)||G!==0&&!(G&G-1)))throw Error("only use one flag per alignment direction");let W=X>>1,F=G>>1,Z=B/Y>A.bitmap.width/A.bitmap.height?Y/A.bitmap.height:B/A.bitmap.width,U=mC.scale(K8(A),{f:Z,mode:C});return A=mC.resize(A,{w:B,h:Y,mode:C}),A.scan(($,E,K)=>{A.bitmap.data.writeUInt32BE(A.background,K)}),A=lU.blit(A,{src:U,x:(A.bitmap.width-U.bitmap.width)/2*W,y:(A.bitmap.height-U.bitmap.height)/2*F}),A}};var MYB=s.object({x:s.number(),y:s.number(),w:s.number(),h:s.number()}),zYB=s.object({tolerance:s.number().min(0).max(1).optional(),cropOnlyFrames:s.boolean().optional(),cropSymmetric:s.boolean().optional(),leaveBorder:s.number().optional(),ignoreSides:s.object({north:s.boolean().optional(),south:s.boolean().optional(),east:s.boolean().optional(),west:s.boolean().optional()}).optional()}),rU={crop(A,Q){let{x:B,y:Y,w:J,h:C}=MYB.parse(Q);if(B=Math.round(B),Y=Math.round(Y),J=Math.round(J),C=Math.round(C),B===0&&J===A.bitmap.width){let X=J*Y+B<<2,G=X+(C*J<<2);A.bitmap.data=A.bitmap.data.slice(X,G)}else{let X=Buffer.allocUnsafe(J*C*4),G=0;I5(A,B,Y,J,C,function(W,F,Z){let U=A.bitmap.data.readUInt32BE(Z);X.writeUInt32BE(U,G),G+=4}),A.bitmap.data=X}return A.bitmap.width=J,A.bitmap.height=C,A},autocrop(A,Q={}){let{tolerance:B=0.0002,cropOnlyFrames:Y=!0,cropSymmetric:J=!1,leaveBorder:C=0,ignoreSides:X}=typeof Q==="number"?{tolerance:Q}:zYB.parse(Q),G=A.bitmap.width,W=A.bitmap.height,F=1,Z={north:!1,south:!1,east:!1,west:!1,...X},U=A.getPixelColor(0,0),$=ZU(U),E=0,K=0,I=0,V=0;if(U=A.getPixelColor(0,0),!Z.north)A:for(let z=0;zB)break A}E++}if(U=A.getPixelColor(G,0),!Z.west)A:for(let z=0;zB)break A}V++}if(U=A.getPixelColor(0,W),!Z.south)A:for(let z=W-1;z>=E+1;z--){for(let M=G-K-1;M>=0;M--){let N=A.getPixelColor(M,z),q=ZU(N);if(DH($,q)>B)break A}I++}if(U=A.getPixelColor(G,W),!Z.east)A:for(let z=G-1;z>=0+V+1;z--){for(let M=W-1;M>=0+E;M--){let N=A.getPixelColor(z,M),q=ZU(N);if(DH($,q)>B)break A}K++}let H=!1;if(V-=C,K-=C,E-=C,I-=C,J){let z=Math.min(K,V),M=Math.min(E,I);V=z,K=z,E=M,I=M}V=V>=0?V:0,K=K>=0?K:0,E=E>=0?E:0,I=I>=0?I:0;let D=G-(V+K),L=W-(I+E);if(Y)H=K!==0&&E!==0&&V!==0&&I!==0;else H=K!==0||E!==0||V!==0||I!==0;if(H)this.crop(A,{x:V,y:E,w:D,h:L});return A}};var wYB=s.object({w:s.number(),h:s.number(),align:s.number().optional(),mode:s.nativeEnum(N8).optional()}),wFA={cover(A,Q){let{w:B,h:Y,align:J=M5.CENTER|z5.MIDDLE,mode:C}=wYB.parse(Q),X=J&7,G=J>>3;if(!(X!==0&&!(X&X-1)||G!==0&&!(G&G-1)))throw Error("only use one flag per alignment direction");let W=X>>1,F=G>>1,Z=B/Y>A.bitmap.width/A.bitmap.height?B/A.bitmap.width:Y/A.bitmap.height;return A=mC.scale(A,{f:Z,mode:C}),A=rU.crop(A,{x:(A.bitmap.width-B)/2*W,y:(A.bitmap.height-Y)/2*F,w:B,h:Y}),A}};var OYB=s.object({map:S7,offset:s.number()}),jFA={displace(A,Q){let{map:B,offset:Y}=OYB.parse(Q),J=K8(A);return A.scan((C,X,G)=>{let W=B.bitmap.data[G]/256*Y;W=Math.round(W);let F=A.getPixelIndex(C+W,X);A.bitmap.data[F]=J.bitmap.data[G],A.bitmap.data[F+1]=J.bitmap.data[G+1],A.bitmap.data[F+2]=J.bitmap.data[G+2]}),A}};var OFA={dither(A){let Q=[1,9,3,11,13,5,15,7,4,12,2,10,16,8,14,6];return A.scan((B,Y,J)=>{let C=((Y&3)<<2)+B%4,X=Q[C];A.bitmap.data[J]=Math.min(A.bitmap.data[J]+X,255),A.bitmap.data[J+1]=Math.min(A.bitmap.data[J+1]+X,255),A.bitmap.data[J+2]=Math.min(A.bitmap.data[J+2]+X,255)}),A}};var SYB=s.object({radius:s.number().min(0).optional()}),PFA={fisheye(A,Q={}){let{radius:B=2.5}=SYB.parse(Q),Y=K8(A),{width:J,height:C}=Y.bitmap;return Y.scan((X,G)=>{let W=X/J,F=G/C,Z=Math.sqrt(Math.pow(W-0.5,2)+Math.pow(F-0.5,2)),U=2*Math.pow(Z,B),$=(W-0.5)/Z,E=(F-0.5)/Z,K=Math.round((U*$+0.5)*J),I=Math.round((U*E+0.5)*C),V=Y.getPixelColor(K,I);A.setPixelColor(V,X,G)}),A.setPixelColor(Y.getPixelColor(J/2,C/2),J/2,C/2),A}};var _YB=s.object({horizontal:s.boolean().optional(),vertical:s.boolean().optional()}),TFA={flip(A,Q){let{horizontal:B,vertical:Y}=_YB.parse(Q),J=Buffer.alloc(A.bitmap.data.length);return A.scan((C,X,G)=>{let W=B?A.bitmap.width-1-C:C,F=Y?A.bitmap.height-1-X:X,Z=A.bitmap.width*F+W<<2,U=A.bitmap.data.readUInt32BE(G);J.writeUInt32BE(U,Z)}),A.bitmap.data=Buffer.from(J),A}};var AD=qA(vFA(),1);class yFA{size;smallerSize;constructor(A,Q){this.size=A||32,this.smallerSize=Q||8,hYB(this.size)}distance(A,Q){let B=0;for(let Y=0;YJ?"1":"0";return C}}function gYB(A){let Q=A&255;A>>>=8;let B=A&255;A>>>=8;let Y=A&255;return A>>>=8,{r:A&255,g:Y,b:B,a:Q}}var pR=[];function hYB(A){for(let Q=1;Q64)throw Error("base must be a number between 2 and 64");let B=gFA.slice(0,Q),Y=this.pHash(A),J=hFA[Q];return AD.default(AD.default.BIN,B)(Y).padStart(J,"0")},distanceFromHash(A,Q){let B=new Pf,Y=B.getHash(A);return B.distance(Y,Q)}};var bYB=s.object({src:S7,x:s.number().optional(),y:s.number().optional()}),mYB=s.union([S7,bYB]),fFA={mask(A,Q){mYB.parse(Q);let B,Y,J;if("bitmap"in Q)B=Q,Y=0,J=0;else B=Q.src,Y=Q.x??0,J=Q.y??0;Y=Math.round(Y),J=Math.round(J);let C=A.bitmap.width,X=A.bitmap.height;return B.scan(function(G,W,F){let Z=Y+G,U=J+W;if(Z>=0&&U>=0&&Z{if(aU(A,G+(Y.length>1?" ":""))>B){let U=G[Symbol.iterator](),$="";for(let E of U){let K=[...C,$+E].join(" "),I=aU(A,K);if(IB)J.push([...C,$]),C=[],$=E;else J.push([...C,$+E]),C=[],$=""}return}let F=[...C,G].join(" "),Z=aU(A,F);if(Z<=B&&!G.includes(` +>>> no match, partial?`,A,U,Q,$),U===G)return!0}return!1}let K;if(typeof F==="string")K=Z===F,this.debug("string match",F,Z,K);else K=F.test(Z),this.debug("pattern match",F,Z,K);if(!K)return!1}if(C===G&&X===W)return!0;else if(C===G)return B;else if(X===W)return C===G-1&&A[C]==="";else throw Error("wtf?")}braceExpand(){return eYA(this.pattern,this.options)}parse(A){zI(A);let Q=this.options;if(A==="**")return JJ;if(A==="")return"";let B,Y=null;if(B=A.match(RmQ))Y=Q.dot?jmQ:wmQ;else if(B=A.match(KmQ))Y=(Q.nocase?Q.dot?DmQ:HmQ:Q.dot?ImQ:VmQ)(B[1]);else if(B=A.match(OmQ))Y=(Q.nocase?Q.dot?TmQ:PmQ:Q.dot?SmQ:kmQ)(B);else if(B=A.match(NmQ))Y=Q.dot?qmQ:LmQ;else if(B=A.match(MmQ))Y=zmQ;let J=YJ.fromGlob(A,this.options).toMMPattern();if(Y&&typeof J==="object")Reflect.defineProperty(J,"test",{value:Y});return J}makeRe(){if(this.regexp||this.regexp===!1)return this.regexp;let A=this.set;if(!A.length)return this.regexp=!1,this.regexp;let Q=this.options,B=Q.noglobstar?ymQ:Q.dot?gmQ:hmQ,Y=new Set(Q.nocase?["i"]:[]),J=A.map((G)=>{let W=G.map((F)=>{if(F instanceof RegExp)for(let Z of F.flags.split(""))Y.add(Z);return typeof F==="string"?umQ(F):F===JJ?JJ:F._src});return W.forEach((F,Z)=>{let U=W[Z+1],$=W[Z-1];if(F!==JJ||$===JJ)return;if($===void 0)if(U!==void 0&&U!==JJ)W[Z+1]="(?:\\/|"+B+"\\/)?"+U;else W[Z]=B;else if(U===void 0)W[Z-1]=$+"(?:\\/|"+B+")?";else if(U!==JJ)W[Z-1]=$+"(?:\\/|\\/"+B+"\\/)"+U,W[Z+1]=JJ}),W.filter((F)=>F!==JJ).join("/")}).join("|"),[C,X]=A.length>1?["(?:",")"]:["",""];if(J="^"+C+J+X+"$",this.negate)J="^(?!"+J+").+$";try{this.regexp=new RegExp(J,[...Y].join(""))}catch(G){this.regexp=!1}return this.regexp}slashSplit(A){if(this.preserveMultipleSlashes)return A.split("/");else if(this.isWindows&&/^\/\/[^\/]+/.test(A))return["",...A.split(/\/+/)];else return A.split(/\/+/)}match(A,Q=this.partial){if(this.debug("match",A,this.pattern),this.comment)return!1;if(this.empty)return A==="";if(A==="/"&&Q)return!0;let B=this.options;if(this.isWindows)A=A.split("\\").join("/");let Y=this.slashSplit(A);this.debug(this.pattern,"split",Y);let J=this.set;this.debug(this.pattern,"set",J);let C=Y[Y.length-1];if(!C)for(let X=Y.length-2;!C&&X>=0;X--)C=Y[X];for(let X=0;X{typeof ry.emitWarning==="function"?ry.emitWarning(A,Q,B,Y):console.error(`[${B}] ${Q}: ${A}`)},w2=globalThis.AbortController,AJA=globalThis.AbortSignal;if(typeof w2>"u"){AJA=class{onabort;_onabort=[];reason;aborted=!1;addEventListener(Y,J){this._onabort.push(J)}},w2=class{constructor(){Q()}signal=new AJA;abort(Y){if(this.signal.aborted)return;this.signal.reason=Y,this.signal.aborted=!0;for(let J of this.signal._onabort)J(Y);this.signal.onabort?.(Y)}};let A=ry.env?.LRU_CACHE_IGNORE_AC_WARNING!=="1",Q=()=>{if(!A)return;A=!1,BJA("AbortController is not defined. If using lru-cache in node 14, load an AbortController polyfill from the `node-abort-controller` package. A minimal polyfill is provided for use by LRUCache.fetch(), but it should not be relied upon in other contexts (eg, passing it to other APIs that use AbortController/AbortSignal might have undesirable effects). You may disable this with LRU_CACHE_IGNORE_AC_WARNING=1 in the env.","NO_ABORT_CONTROLLER","ENOTSUP",Q)}}var dmQ=(A)=>!QJA.has(A),QXY=Symbol("type"),A7=(A)=>A&&A===Math.floor(A)&&A>0&&isFinite(A),YJA=(A)=>!A7(A)?null:A<=Math.pow(2,8)?Uint8Array:A<=Math.pow(2,16)?Uint16Array:A<=Math.pow(2,32)?Uint32Array:A<=Number.MAX_SAFE_INTEGER?wI:null;class wI extends Array{constructor(A){super(A);this.fill(0)}}class m4{heap;length;static#A=!1;static create(A){let Q=YJA(A);if(!Q)return[];m4.#A=!0;let B=new m4(A,Q);return m4.#A=!1,B}constructor(A,Q){if(!m4.#A)throw TypeError("instantiate Stack using Stack.create(n)");this.heap=new Q(A),this.length=0}push(A){this.heap[this.length++]=A}pop(){return this.heap[--this.length]}}class jI{#A;#Q;#B;#Y;#J;#C;#W;ttl;ttlResolution;ttlAutopurge;updateAgeOnGet;updateAgeOnHas;allowStale;noDisposeOnSet;noUpdateTTL;maxEntrySize;sizeCalculation;noDeleteOnFetchRejection;noDeleteOnStaleGet;allowStaleOnFetchAbort;allowStaleOnFetchRejection;ignoreFetchAbort;#X;#G;#Z;#U;#F;#E;#V;#I;#D;#O;#N;#P;#M;#q;#L;#w;#H;#S;static unsafeExposeInternals(A){return{starts:A.#M,ttls:A.#q,sizes:A.#P,keyMap:A.#Z,keyList:A.#U,valList:A.#F,next:A.#E,prev:A.#V,get head(){return A.#I},get tail(){return A.#D},free:A.#O,isBackgroundFetch:(Q)=>A.#K(Q),backgroundFetch:(Q,B,Y,J)=>A.#g(Q,B,Y,J),moveToTail:(Q)=>A.#f(Q),indexes:(Q)=>A.#j(Q),rindexes:(Q)=>A.#T(Q),isStale:(Q)=>A.#R(Q)}}get max(){return this.#A}get maxSize(){return this.#Q}get calculatedSize(){return this.#G}get size(){return this.#X}get fetchMethod(){return this.#C}get memoMethod(){return this.#W}get dispose(){return this.#B}get onInsert(){return this.#Y}get disposeAfter(){return this.#J}constructor(A){let{max:Q=0,ttl:B,ttlResolution:Y=1,ttlAutopurge:J,updateAgeOnGet:C,updateAgeOnHas:X,allowStale:G,dispose:W,onInsert:F,disposeAfter:Z,noDisposeOnSet:U,noUpdateTTL:$,maxSize:E=0,maxEntrySize:K=0,sizeCalculation:I,fetchMethod:V,memoMethod:H,noDeleteOnFetchRejection:D,noDeleteOnStaleGet:L,allowStaleOnFetchRejection:z,allowStaleOnFetchAbort:M,ignoreFetchAbort:N}=A;if(Q!==0&&!A7(Q))throw TypeError("max option must be a nonnegative integer");let q=Q?YJA(Q):Array;if(!q)throw Error("invalid max value: "+Q);if(this.#A=Q,this.#Q=E,this.maxEntrySize=K||this.#Q,this.sizeCalculation=I,this.sizeCalculation){if(!this.#Q&&!this.maxEntrySize)throw TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");if(typeof this.sizeCalculation!=="function")throw TypeError("sizeCalculation set to non-function")}if(H!==void 0&&typeof H!=="function")throw TypeError("memoMethod must be a function if defined");if(this.#W=H,V!==void 0&&typeof V!=="function")throw TypeError("fetchMethod must be a function if specified");if(this.#C=V,this.#w=!!V,this.#Z=new Map,this.#U=Array(Q).fill(void 0),this.#F=Array(Q).fill(void 0),this.#E=new q(Q),this.#V=new q(Q),this.#I=0,this.#D=0,this.#O=m4.create(Q),this.#X=0,this.#G=0,typeof W==="function")this.#B=W;if(typeof F==="function")this.#Y=F;if(typeof Z==="function")this.#J=Z,this.#N=[];else this.#J=void 0,this.#N=void 0;if(this.#L=!!this.#B,this.#S=!!this.#Y,this.#H=!!this.#J,this.noDisposeOnSet=!!U,this.noUpdateTTL=!!$,this.noDeleteOnFetchRejection=!!D,this.allowStaleOnFetchRejection=!!z,this.allowStaleOnFetchAbort=!!M,this.ignoreFetchAbort=!!N,this.maxEntrySize!==0){if(this.#Q!==0){if(!A7(this.#Q))throw TypeError("maxSize must be a positive integer if specified")}if(!A7(this.maxEntrySize))throw TypeError("maxEntrySize must be a positive integer if specified");this.#m()}if(this.allowStale=!!G,this.noDeleteOnStaleGet=!!L,this.updateAgeOnGet=!!C,this.updateAgeOnHas=!!X,this.ttlResolution=A7(Y)||Y===0?Y:1,this.ttlAutopurge=!!J,this.ttl=B||0,this.ttl){if(!A7(this.ttl))throw TypeError("ttl must be a positive integer if specified");this.#$()}if(this.#A===0&&this.ttl===0&&this.#Q===0)throw TypeError("At least one of max, maxSize, or ttl is required");if(!this.ttlAutopurge&&!this.#A&&!this.#Q){if(dmQ("LRU_CACHE_UNBOUNDED"))QJA.add("LRU_CACHE_UNBOUNDED"),BJA("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning","LRU_CACHE_UNBOUNDED",jI)}}getRemainingTTL(A){return this.#Z.has(A)?1/0:0}#$(){let A=new wI(this.#A),Q=new wI(this.#A);this.#q=A,this.#M=Q,this.#k=(J,C,X=b4.now())=>{if(Q[J]=C!==0?X:0,A[J]=C,C!==0&&this.ttlAutopurge){let G=setTimeout(()=>{if(this.#R(J))this.#_(this.#U[J],"expire")},C+1);if(G.unref)G.unref()}},this.#v=(J)=>{Q[J]=A[J]!==0?b4.now():0},this.#z=(J,C)=>{if(A[C]){let X=A[C],G=Q[C];if(!X||!G)return;J.ttl=X,J.start=G,J.now=B||Y();let W=J.now-G;J.remainingTTL=X-W}};let B=0,Y=()=>{let J=b4.now();if(this.ttlResolution>0){B=J;let C=setTimeout(()=>B=0,this.ttlResolution);if(C.unref)C.unref()}return J};this.getRemainingTTL=(J)=>{let C=this.#Z.get(J);if(C===void 0)return 0;let X=A[C],G=Q[C];if(!X||!G)return 1/0;let W=(B||Y())-G;return X-W},this.#R=(J)=>{let C=Q[J],X=A[J];return!!X&&!!C&&(B||Y())-C>X}}#v=()=>{};#z=()=>{};#k=()=>{};#R=()=>!1;#m(){let A=new wI(this.#A);this.#G=0,this.#P=A,this.#y=(Q)=>{this.#G-=A[Q],A[Q]=0},this.#u=(Q,B,Y,J)=>{if(this.#K(B))return 0;if(!A7(Y))if(J){if(typeof J!=="function")throw TypeError("sizeCalculation must be a function");if(Y=J(B,Q),!A7(Y))throw TypeError("sizeCalculation return invalid (expect positive integer)")}else throw TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");return Y},this.#h=(Q,B,Y)=>{if(A[Q]=B,this.#Q){let J=this.#Q-A[Q];while(this.#G>J)this.#x(!0)}if(this.#G+=A[Q],Y)Y.entrySize=B,Y.totalCalculatedSize=this.#G}}#y=(A)=>{};#h=(A,Q,B)=>{};#u=(A,Q,B,Y)=>{if(B||Y)throw TypeError("cannot set size without setting maxSize or maxEntrySize on cache");return 0};*#j({allowStale:A=this.allowStale}={}){if(this.#X)for(let Q=this.#D;;){if(!this.#d(Q))break;if(A||!this.#R(Q))yield Q;if(Q===this.#I)break;else Q=this.#V[Q]}}*#T({allowStale:A=this.allowStale}={}){if(this.#X)for(let Q=this.#I;;){if(!this.#d(Q))break;if(A||!this.#R(Q))yield Q;if(Q===this.#D)break;else Q=this.#E[Q]}}#d(A){return A!==void 0&&this.#Z.get(this.#U[A])===A}*entries(){for(let A of this.#j())if(this.#F[A]!==void 0&&this.#U[A]!==void 0&&!this.#K(this.#F[A]))yield[this.#U[A],this.#F[A]]}*rentries(){for(let A of this.#T())if(this.#F[A]!==void 0&&this.#U[A]!==void 0&&!this.#K(this.#F[A]))yield[this.#U[A],this.#F[A]]}*keys(){for(let A of this.#j()){let Q=this.#U[A];if(Q!==void 0&&!this.#K(this.#F[A]))yield Q}}*rkeys(){for(let A of this.#T()){let Q=this.#U[A];if(Q!==void 0&&!this.#K(this.#F[A]))yield Q}}*values(){for(let A of this.#j())if(this.#F[A]!==void 0&&!this.#K(this.#F[A]))yield this.#F[A]}*rvalues(){for(let A of this.#T())if(this.#F[A]!==void 0&&!this.#K(this.#F[A]))yield this.#F[A]}[Symbol.iterator](){return this.entries()}[Symbol.toStringTag]="LRUCache";find(A,Q={}){for(let B of this.#j()){let Y=this.#F[B],J=this.#K(Y)?Y.__staleWhileFetching:Y;if(J===void 0)continue;if(A(J,this.#U[B],this))return this.get(this.#U[B],Q)}}forEach(A,Q=this){for(let B of this.#j()){let Y=this.#F[B],J=this.#K(Y)?Y.__staleWhileFetching:Y;if(J===void 0)continue;A.call(Q,J,this.#U[B],this)}}rforEach(A,Q=this){for(let B of this.#T()){let Y=this.#F[B],J=this.#K(Y)?Y.__staleWhileFetching:Y;if(J===void 0)continue;A.call(Q,J,this.#U[B],this)}}purgeStale(){let A=!1;for(let Q of this.#T({allowStale:!0}))if(this.#R(Q))this.#_(this.#U[Q],"expire"),A=!0;return A}info(A){let Q=this.#Z.get(A);if(Q===void 0)return;let B=this.#F[Q],Y=this.#K(B)?B.__staleWhileFetching:B;if(Y===void 0)return;let J={value:Y};if(this.#q&&this.#M){let C=this.#q[Q],X=this.#M[Q];if(C&&X){let G=C-(b4.now()-X);J.ttl=G,J.start=Date.now()}}if(this.#P)J.size=this.#P[Q];return J}dump(){let A=[];for(let Q of this.#j({allowStale:!0})){let B=this.#U[Q],Y=this.#F[Q],J=this.#K(Y)?Y.__staleWhileFetching:Y;if(J===void 0||B===void 0)continue;let C={value:J};if(this.#q&&this.#M){C.ttl=this.#q[Q];let X=b4.now()-this.#M[Q];C.start=Math.floor(Date.now()-X)}if(this.#P)C.size=this.#P[Q];A.unshift([B,C])}return A}load(A){this.clear();for(let[Q,B]of A){if(B.start){let Y=Date.now()-B.start;B.start=b4.now()-Y}this.set(Q,B.value,B)}}set(A,Q,B={}){if(Q===void 0)return this.delete(A),this;let{ttl:Y=this.ttl,start:J,noDisposeOnSet:C=this.noDisposeOnSet,sizeCalculation:X=this.sizeCalculation,status:G}=B,{noUpdateTTL:W=this.noUpdateTTL}=B,F=this.#u(A,Q,B.size||0,X);if(this.maxEntrySize&&F>this.maxEntrySize){if(G)G.set="miss",G.maxEntrySizeExceeded=!0;return this.#_(A,"set"),this}let Z=this.#X===0?void 0:this.#Z.get(A);if(Z===void 0){if(Z=this.#X===0?this.#D:this.#O.length!==0?this.#O.pop():this.#X===this.#A?this.#x(!1):this.#X,this.#U[Z]=A,this.#F[Z]=Q,this.#Z.set(A,Z),this.#E[this.#D]=Z,this.#V[Z]=this.#D,this.#D=Z,this.#X++,this.#h(Z,F,G),G)G.set="add";if(W=!1,this.#S)this.#Y?.(Q,A,"add")}else{this.#f(Z);let U=this.#F[Z];if(Q!==U){if(this.#w&&this.#K(U)){U.__abortController.abort(Error("replaced"));let{__staleWhileFetching:$}=U;if($!==void 0&&!C){if(this.#L)this.#B?.($,A,"set");if(this.#H)this.#N?.push([$,A,"set"])}}else if(!C){if(this.#L)this.#B?.(U,A,"set");if(this.#H)this.#N?.push([U,A,"set"])}if(this.#y(Z),this.#h(Z,F,G),this.#F[Z]=Q,G){G.set="replace";let $=U&&this.#K(U)?U.__staleWhileFetching:U;if($!==void 0)G.oldValue=$}}else if(G)G.set="update";if(this.#S)this.onInsert?.(Q,A,Q===U?"update":"replace")}if(Y!==0&&!this.#q)this.#$();if(this.#q){if(!W)this.#k(Z,Y,J);if(G)this.#z(G,Z)}if(!C&&this.#H&&this.#N){let U=this.#N,$;while($=U?.shift())this.#J?.(...$)}return this}pop(){try{while(this.#X){let A=this.#F[this.#I];if(this.#x(!0),this.#K(A)){if(A.__staleWhileFetching)return A.__staleWhileFetching}else if(A!==void 0)return A}}finally{if(this.#H&&this.#N){let A=this.#N,Q;while(Q=A?.shift())this.#J?.(...Q)}}}#x(A){let Q=this.#I,B=this.#U[Q],Y=this.#F[Q];if(this.#w&&this.#K(Y))Y.__abortController.abort(Error("evicted"));else if(this.#L||this.#H){if(this.#L)this.#B?.(Y,B,"evict");if(this.#H)this.#N?.push([Y,B,"evict"])}if(this.#y(Q),A)this.#U[Q]=void 0,this.#F[Q]=void 0,this.#O.push(Q);if(this.#X===1)this.#I=this.#D=0,this.#O.length=0;else this.#I=this.#E[Q];return this.#Z.delete(B),this.#X--,Q}has(A,Q={}){let{updateAgeOnHas:B=this.updateAgeOnHas,status:Y}=Q,J=this.#Z.get(A);if(J!==void 0){let C=this.#F[J];if(this.#K(C)&&C.__staleWhileFetching===void 0)return!1;if(!this.#R(J)){if(B)this.#v(J);if(Y)Y.has="hit",this.#z(Y,J);return!0}else if(Y)Y.has="stale",this.#z(Y,J)}else if(Y)Y.has="miss";return!1}peek(A,Q={}){let{allowStale:B=this.allowStale}=Q,Y=this.#Z.get(A);if(Y===void 0||!B&&this.#R(Y))return;let J=this.#F[Y];return this.#K(J)?J.__staleWhileFetching:J}#g(A,Q,B,Y){let J=Q===void 0?void 0:this.#F[Q];if(this.#K(J))return J;let C=new w2,{signal:X}=B;X?.addEventListener("abort",()=>C.abort(X.reason),{signal:C.signal});let G={signal:C.signal,options:B,context:Y},W=(K,I=!1)=>{let{aborted:V}=C.signal,H=B.ignoreFetchAbort&&K!==void 0;if(B.status)if(V&&!I){if(B.status.fetchAborted=!0,B.status.fetchError=C.signal.reason,H)B.status.fetchAbortIgnored=!0}else B.status.fetchResolved=!0;if(V&&!H&&!I)return Z(C.signal.reason);let D=$;if(this.#F[Q]===$)if(K===void 0)if(D.__staleWhileFetching)this.#F[Q]=D.__staleWhileFetching;else this.#_(A,"fetch");else{if(B.status)B.status.fetchUpdated=!0;this.set(A,K,G.options)}return K},F=(K)=>{if(B.status)B.status.fetchRejected=!0,B.status.fetchError=K;return Z(K)},Z=(K)=>{let{aborted:I}=C.signal,V=I&&B.allowStaleOnFetchAbort,H=V||B.allowStaleOnFetchRejection,D=H||B.noDeleteOnFetchRejection,L=$;if(this.#F[Q]===$){if(!D||L.__staleWhileFetching===void 0)this.#_(A,"fetch");else if(!V)this.#F[Q]=L.__staleWhileFetching}if(H){if(B.status&&L.__staleWhileFetching!==void 0)B.status.returnedStale=!0;return L.__staleWhileFetching}else if(L.__returned===L)throw K},U=(K,I)=>{let V=this.#C?.(A,J,G);if(V&&V instanceof Promise)V.then((H)=>K(H===void 0?void 0:H),I);C.signal.addEventListener("abort",()=>{if(!B.ignoreFetchAbort||B.allowStaleOnFetchAbort){if(K(void 0),B.allowStaleOnFetchAbort)K=(H)=>W(H,!0)}})};if(B.status)B.status.fetchDispatched=!0;let $=new Promise(U).then(W,F),E=Object.assign($,{__abortController:C,__staleWhileFetching:J,__returned:void 0});if(Q===void 0)this.set(A,E,{...G.options,status:void 0}),Q=this.#Z.get(A);else this.#F[Q]=E;return E}#K(A){if(!this.#w)return!1;let Q=A;return!!Q&&Q instanceof Promise&&Q.hasOwnProperty("__staleWhileFetching")&&Q.__abortController instanceof w2}async fetch(A,Q={}){let{allowStale:B=this.allowStale,updateAgeOnGet:Y=this.updateAgeOnGet,noDeleteOnStaleGet:J=this.noDeleteOnStaleGet,ttl:C=this.ttl,noDisposeOnSet:X=this.noDisposeOnSet,size:G=0,sizeCalculation:W=this.sizeCalculation,noUpdateTTL:F=this.noUpdateTTL,noDeleteOnFetchRejection:Z=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:U=this.allowStaleOnFetchRejection,ignoreFetchAbort:$=this.ignoreFetchAbort,allowStaleOnFetchAbort:E=this.allowStaleOnFetchAbort,context:K,forceRefresh:I=!1,status:V,signal:H}=Q;if(!this.#w){if(V)V.fetch="get";return this.get(A,{allowStale:B,updateAgeOnGet:Y,noDeleteOnStaleGet:J,status:V})}let D={allowStale:B,updateAgeOnGet:Y,noDeleteOnStaleGet:J,ttl:C,noDisposeOnSet:X,size:G,sizeCalculation:W,noUpdateTTL:F,noDeleteOnFetchRejection:Z,allowStaleOnFetchRejection:U,allowStaleOnFetchAbort:E,ignoreFetchAbort:$,status:V,signal:H},L=this.#Z.get(A);if(L===void 0){if(V)V.fetch="miss";let z=this.#g(A,L,D,K);return z.__returned=z}else{let z=this.#F[L];if(this.#K(z)){let P=B&&z.__staleWhileFetching!==void 0;if(V){if(V.fetch="inflight",P)V.returnedStale=!0}return P?z.__staleWhileFetching:z.__returned=z}let M=this.#R(L);if(!I&&!M){if(V)V.fetch="hit";if(this.#f(L),Y)this.#v(L);if(V)this.#z(V,L);return z}let N=this.#g(A,L,D,K),w=N.__staleWhileFetching!==void 0&&B;if(V){if(V.fetch=M?"stale":"refresh",w&&M)V.returnedStale=!0}return w?N.__staleWhileFetching:N.__returned=N}}async forceFetch(A,Q={}){let B=await this.fetch(A,Q);if(B===void 0)throw Error("fetch() returned undefined");return B}memo(A,Q={}){let B=this.#W;if(!B)throw Error("no memoMethod provided to constructor");let{context:Y,forceRefresh:J,...C}=Q,X=this.get(A,C);if(!J&&X!==void 0)return X;let G=B(A,X,{options:C,context:Y});return this.set(A,G,C),G}get(A,Q={}){let{allowStale:B=this.allowStale,updateAgeOnGet:Y=this.updateAgeOnGet,noDeleteOnStaleGet:J=this.noDeleteOnStaleGet,status:C}=Q,X=this.#Z.get(A);if(X!==void 0){let G=this.#F[X],W=this.#K(G);if(C)this.#z(C,X);if(this.#R(X)){if(C)C.get="stale";if(!W){if(!J)this.#_(A,"expire");if(C&&B)C.returnedStale=!0;return B?G:void 0}else{if(C&&B&&G.__staleWhileFetching!==void 0)C.returnedStale=!0;return B?G.__staleWhileFetching:void 0}}else{if(C)C.get="hit";if(W)return G.__staleWhileFetching;if(this.#f(X),Y)this.#v(X);return G}}else if(C)C.get="miss"}#c(A,Q){this.#V[Q]=A,this.#E[A]=Q}#f(A){if(A!==this.#D){if(A===this.#I)this.#I=this.#E[A];else this.#c(this.#V[A],this.#E[A]);this.#c(this.#D,A),this.#D=A}}delete(A){return this.#_(A,"delete")}#_(A,Q){let B=!1;if(this.#X!==0){let Y=this.#Z.get(A);if(Y!==void 0)if(B=!0,this.#X===1)this.#b(Q);else{this.#y(Y);let J=this.#F[Y];if(this.#K(J))J.__abortController.abort(Error("deleted"));else if(this.#L||this.#H){if(this.#L)this.#B?.(J,A,Q);if(this.#H)this.#N?.push([J,A,Q])}if(this.#Z.delete(A),this.#U[Y]=void 0,this.#F[Y]=void 0,Y===this.#D)this.#D=this.#V[Y];else if(Y===this.#I)this.#I=this.#E[Y];else{let C=this.#V[Y];this.#E[C]=this.#E[Y];let X=this.#E[Y];this.#V[X]=this.#V[Y]}this.#X--,this.#O.push(Y)}}if(this.#H&&this.#N?.length){let Y=this.#N,J;while(J=Y?.shift())this.#J?.(...J)}return B}clear(){return this.#b("delete")}#b(A){for(let Q of this.#T({allowStale:!0})){let B=this.#F[Q];if(this.#K(B))B.__abortController.abort(Error("deleted"));else{let Y=this.#U[Q];if(this.#L)this.#B?.(B,Y,A);if(this.#H)this.#N?.push([B,Y,A])}}if(this.#Z.clear(),this.#F.fill(void 0),this.#U.fill(void 0),this.#q&&this.#M)this.#q.fill(0),this.#M.fill(0);if(this.#P)this.#P.fill(0);if(this.#I=0,this.#D=0,this.#O.length=0,this.#G=0,this.#X=0,this.#H&&this.#N){let Q=this.#N,B;while(B=Q?.shift())this.#J?.(...B)}}}import{posix as emQ,win32 as Cg}from"node:path";import{fileURLToPath as AuQ}from"node:url";import{lstatSync as QuQ,readdir as BuQ,readdirSync as YuQ,readlinkSync as JuQ,realpathSync as CuQ}from"fs";import*as XuQ from"node:fs";import{lstat as WuQ,readdir as FuQ,readlink as ZuQ,realpath as $uQ}from"node:fs/promises";import{EventEmitter as Qg}from"node:events";import WJA from"node:stream";import{StringDecoder as cmQ}from"node:string_decoder";var JJA=typeof process==="object"&&process?process:{stdout:null,stderr:null},lmQ=(A)=>!!A&&typeof A==="object"&&(A instanceof gF||A instanceof WJA||pmQ(A)||imQ(A)),pmQ=(A)=>!!A&&typeof A==="object"&&A instanceof Qg&&typeof A.pipe==="function"&&A.pipe!==WJA.Writable.prototype.pipe,imQ=(A)=>!!A&&typeof A==="object"&&A instanceof Qg&&typeof A.write==="function"&&typeof A.end==="function",A6=Symbol("EOF"),Q6=Symbol("maybeEmitEnd"),Q7=Symbol("emittedEnd"),j2=Symbol("emittingEnd"),OI=Symbol("emittedError"),O2=Symbol("closed"),CJA=Symbol("read"),P2=Symbol("flush"),XJA=Symbol("flushChunk"),wC=Symbol("encoding"),u4=Symbol("decoder"),dY=Symbol("flowing"),PI=Symbol("paused"),d4=Symbol("resume"),cY=Symbol("buffer"),nJ=Symbol("pipes"),lY=Symbol("bufferLength"),ay=Symbol("bufferPush"),T2=Symbol("bufferShift"),NJ=Symbol("objectMode"),XY=Symbol("destroyed"),oy=Symbol("error"),ty=Symbol("emitData"),GJA=Symbol("emitEnd"),ey=Symbol("emitEnd2"),k1=Symbol("async"),Ag=Symbol("abort"),S2=Symbol("aborted"),TI=Symbol("signal"),yF=Symbol("dataListeners"),W8=Symbol("discarded"),SI=(A)=>Promise.resolve().then(A),nmQ=(A)=>A(),smQ=(A)=>A==="end"||A==="finish"||A==="prefinish",rmQ=(A)=>A instanceof ArrayBuffer||!!A&&typeof A==="object"&&A.constructor&&A.constructor.name==="ArrayBuffer"&&A.byteLength>=0,amQ=(A)=>!Buffer.isBuffer(A)&&ArrayBuffer.isView(A);class Bg{src;dest;opts;ondrain;constructor(A,Q,B){this.src=A,this.dest=Q,this.opts=B,this.ondrain=()=>A[d4](),this.dest.on("drain",this.ondrain)}unpipe(){this.dest.removeListener("drain",this.ondrain)}proxyErrors(A){}end(){if(this.unpipe(),this.opts.end)this.dest.end()}}class FJA extends Bg{unpipe(){this.src.removeListener("error",this.proxyErrors),super.unpipe()}constructor(A,Q,B){super(A,Q,B);this.proxyErrors=(Y)=>Q.emit("error",Y),A.on("error",this.proxyErrors)}}var omQ=(A)=>!!A.objectMode,tmQ=(A)=>!A.objectMode&&!!A.encoding&&A.encoding!=="buffer";class gF extends Qg{[dY]=!1;[PI]=!1;[nJ]=[];[cY]=[];[NJ];[wC];[k1];[u4];[A6]=!1;[Q7]=!1;[j2]=!1;[O2]=!1;[OI]=null;[lY]=0;[XY]=!1;[TI];[S2]=!1;[yF]=0;[W8]=!1;writable=!0;readable=!0;constructor(...A){let Q=A[0]||{};super();if(Q.objectMode&&typeof Q.encoding==="string")throw TypeError("Encoding and objectMode may not be used together");if(omQ(Q))this[NJ]=!0,this[wC]=null;else if(tmQ(Q))this[wC]=Q.encoding,this[NJ]=!1;else this[NJ]=!1,this[wC]=null;if(this[k1]=!!Q.async,this[u4]=this[wC]?new cmQ(this[wC]):null,Q&&Q.debugExposeBuffer===!0)Object.defineProperty(this,"buffer",{get:()=>this[cY]});if(Q&&Q.debugExposePipes===!0)Object.defineProperty(this,"pipes",{get:()=>this[nJ]});let{signal:B}=Q;if(B)if(this[TI]=B,B.aborted)this[Ag]();else B.addEventListener("abort",()=>this[Ag]())}get bufferLength(){return this[lY]}get encoding(){return this[wC]}set encoding(A){throw Error("Encoding must be set at instantiation time")}setEncoding(A){throw Error("Encoding must be set at instantiation time")}get objectMode(){return this[NJ]}set objectMode(A){throw Error("objectMode must be set at instantiation time")}get["async"](){return this[k1]}set["async"](A){this[k1]=this[k1]||!!A}[Ag](){this[S2]=!0,this.emit("abort",this[TI]?.reason),this.destroy(this[TI]?.reason)}get aborted(){return this[S2]}set aborted(A){}write(A,Q,B){if(this[S2])return!1;if(this[A6])throw Error("write after end");if(this[XY])return this.emit("error",Object.assign(Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),!0;if(typeof Q==="function")B=Q,Q="utf8";if(!Q)Q="utf8";let Y=this[k1]?SI:nmQ;if(!this[NJ]&&!Buffer.isBuffer(A)){if(amQ(A))A=Buffer.from(A.buffer,A.byteOffset,A.byteLength);else if(rmQ(A))A=Buffer.from(A);else if(typeof A!=="string")throw Error("Non-contiguous data written to non-objectMode stream")}if(this[NJ]){if(this[dY]&&this[lY]!==0)this[P2](!0);if(this[dY])this.emit("data",A);else this[ay](A);if(this[lY]!==0)this.emit("readable");if(B)Y(B);return this[dY]}if(!A.length){if(this[lY]!==0)this.emit("readable");if(B)Y(B);return this[dY]}if(typeof A==="string"&&!(Q===this[wC]&&!this[u4]?.lastNeed))A=Buffer.from(A,Q);if(Buffer.isBuffer(A)&&this[wC])A=this[u4].write(A);if(this[dY]&&this[lY]!==0)this[P2](!0);if(this[dY])this.emit("data",A);else this[ay](A);if(this[lY]!==0)this.emit("readable");if(B)Y(B);return this[dY]}read(A){if(this[XY])return null;if(this[W8]=!1,this[lY]===0||A===0||A&&A>this[lY])return this[Q6](),null;if(this[NJ])A=null;if(this[cY].length>1&&!this[NJ])this[cY]=[this[wC]?this[cY].join(""):Buffer.concat(this[cY],this[lY])];let Q=this[CJA](A||null,this[cY][0]);return this[Q6](),Q}[CJA](A,Q){if(this[NJ])this[T2]();else{let B=Q;if(A===B.length||A===null)this[T2]();else if(typeof B==="string")this[cY][0]=B.slice(A),Q=B.slice(0,A),this[lY]-=A;else this[cY][0]=B.subarray(A),Q=B.subarray(0,A),this[lY]-=A}if(this.emit("data",Q),!this[cY].length&&!this[A6])this.emit("drain");return Q}end(A,Q,B){if(typeof A==="function")B=A,A=void 0;if(typeof Q==="function")B=Q,Q="utf8";if(A!==void 0)this.write(A,Q);if(B)this.once("end",B);if(this[A6]=!0,this.writable=!1,this[dY]||!this[PI])this[Q6]();return this}[d4](){if(this[XY])return;if(!this[yF]&&!this[nJ].length)this[W8]=!0;if(this[PI]=!1,this[dY]=!0,this.emit("resume"),this[cY].length)this[P2]();else if(this[A6])this[Q6]();else this.emit("drain")}resume(){return this[d4]()}pause(){this[dY]=!1,this[PI]=!0,this[W8]=!1}get destroyed(){return this[XY]}get flowing(){return this[dY]}get paused(){return this[PI]}[ay](A){if(this[NJ])this[lY]+=1;else this[lY]+=A.length;this[cY].push(A)}[T2](){if(this[NJ])this[lY]-=1;else this[lY]-=this[cY][0].length;return this[cY].shift()}[P2](A=!1){do;while(this[XJA](this[T2]())&&this[cY].length);if(!A&&!this[cY].length&&!this[A6])this.emit("drain")}[XJA](A){return this.emit("data",A),this[dY]}pipe(A,Q){if(this[XY])return A;this[W8]=!1;let B=this[Q7];if(Q=Q||{},A===JJA.stdout||A===JJA.stderr)Q.end=!1;else Q.end=Q.end!==!1;if(Q.proxyErrors=!!Q.proxyErrors,B){if(Q.end)A.end()}else if(this[nJ].push(!Q.proxyErrors?new Bg(this,A,Q):new FJA(this,A,Q)),this[k1])SI(()=>this[d4]());else this[d4]();return A}unpipe(A){let Q=this[nJ].find((B)=>B.dest===A);if(Q){if(this[nJ].length===1){if(this[dY]&&this[yF]===0)this[dY]=!1;this[nJ]=[]}else this[nJ].splice(this[nJ].indexOf(Q),1);Q.unpipe()}}addListener(A,Q){return this.on(A,Q)}on(A,Q){let B=super.on(A,Q);if(A==="data"){if(this[W8]=!1,this[yF]++,!this[nJ].length&&!this[dY])this[d4]()}else if(A==="readable"&&this[lY]!==0)super.emit("readable");else if(smQ(A)&&this[Q7])super.emit(A),this.removeAllListeners(A);else if(A==="error"&&this[OI]){let Y=Q;if(this[k1])SI(()=>Y.call(this,this[OI]));else Y.call(this,this[OI])}return B}removeListener(A,Q){return this.off(A,Q)}off(A,Q){let B=super.off(A,Q);if(A==="data"){if(this[yF]=this.listeners("data").length,this[yF]===0&&!this[W8]&&!this[nJ].length)this[dY]=!1}return B}removeAllListeners(A){let Q=super.removeAllListeners(A);if(A==="data"||A===void 0){if(this[yF]=0,!this[W8]&&!this[nJ].length)this[dY]=!1}return Q}get emittedEnd(){return this[Q7]}[Q6](){if(!this[j2]&&!this[Q7]&&!this[XY]&&this[cY].length===0&&this[A6]){if(this[j2]=!0,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[O2])this.emit("close");this[j2]=!1}}emit(A,...Q){let B=Q[0];if(A!=="error"&&A!=="close"&&A!==XY&&this[XY])return!1;else if(A==="data")return!this[NJ]&&!B?!1:this[k1]?(SI(()=>this[ty](B)),!0):this[ty](B);else if(A==="end")return this[GJA]();else if(A==="close"){if(this[O2]=!0,!this[Q7]&&!this[XY])return!1;let J=super.emit("close");return this.removeAllListeners("close"),J}else if(A==="error"){this[OI]=B,super.emit(oy,B);let J=!this[TI]||this.listeners("error").length?super.emit("error",B):!1;return this[Q6](),J}else if(A==="resume"){let J=super.emit("resume");return this[Q6](),J}else if(A==="finish"||A==="prefinish"){let J=super.emit(A);return this.removeAllListeners(A),J}let Y=super.emit(A,...Q);return this[Q6](),Y}[ty](A){for(let B of this[nJ])if(B.dest.write(A)===!1)this.pause();let Q=this[W8]?!1:super.emit("data",A);return this[Q6](),Q}[GJA](){if(this[Q7])return!1;return this[Q7]=!0,this.readable=!1,this[k1]?(SI(()=>this[ey]()),!0):this[ey]()}[ey](){if(this[u4]){let Q=this[u4].end();if(Q){for(let B of this[nJ])B.dest.write(Q);if(!this[W8])super.emit("data",Q)}}for(let Q of this[nJ])Q.end();let A=super.emit("end");return this.removeAllListeners("end"),A}async collect(){let A=Object.assign([],{dataLength:0});if(!this[NJ])A.dataLength=0;let Q=this.promise();return this.on("data",(B)=>{if(A.push(B),!this[NJ])A.dataLength+=B.length}),await Q,A}async concat(){if(this[NJ])throw Error("cannot concat in objectMode");let A=await this.collect();return this[wC]?A.join(""):Buffer.concat(A,A.dataLength)}async promise(){return new Promise((A,Q)=>{this.on(XY,()=>Q(Error("stream destroyed"))),this.on("error",(B)=>Q(B)),this.on("end",()=>A())})}[Symbol.asyncIterator](){this[W8]=!1;let A=!1,Q=async()=>{return this.pause(),A=!0,{value:void 0,done:!0}};return{next:()=>{if(A)return Q();let Y=this.read();if(Y!==null)return Promise.resolve({done:!1,value:Y});if(this[A6])return Q();let J,C,X=(Z)=>{this.off("data",G),this.off("end",W),this.off(XY,F),Q(),C(Z)},G=(Z)=>{this.off("error",X),this.off("end",W),this.off(XY,F),this.pause(),J({value:Z,done:!!this[A6]})},W=()=>{this.off("error",X),this.off("data",G),this.off(XY,F),Q(),J({done:!0,value:void 0})},F=()=>X(Error("stream destroyed"));return new Promise((Z,U)=>{C=U,J=Z,this.once(XY,F),this.once("error",X),this.once("end",W),this.once("data",G)})},throw:Q,return:Q,[Symbol.asyncIterator](){return this}}}[Symbol.iterator](){this[W8]=!1;let A=!1,Q=()=>{return this.pause(),this.off(oy,Q),this.off(XY,Q),this.off("end",Q),A=!0,{done:!0,value:void 0}},B=()=>{if(A)return Q();let Y=this.read();return Y===null?Q():{done:!1,value:Y}};return this.once("end",Q),this.once(oy,Q),this.once(XY,Q),{next:B,throw:Q,return:Q,[Symbol.iterator](){return this}}}destroy(A){if(this[XY]){if(A)this.emit("error",A);else this.emit(XY);return this}this[XY]=!0,this[W8]=!0,this[cY].length=0,this[lY]=0;let Q=this;if(typeof Q.close==="function"&&!this[O2])Q.close();if(A)this.emit("error",A);else this.emit(XY);return this}static get isStream(){return lmQ}}var GuQ=CuQ.native,_I={lstatSync:QuQ,readdir:BuQ,readdirSync:YuQ,readlinkSync:JuQ,realpathSync:GuQ,promises:{lstat:WuQ,readdir:FuQ,readlink:ZuQ,realpath:$uQ}},KJA=(A)=>!A||A===_I||A===XuQ?_I:{..._I,...A,promises:{..._I.promises,...A.promises||{}}},VJA=/^\\\\\?\\([a-z]:)\\?$/i,UuQ=(A)=>A.replace(/\//g,"\\").replace(VJA,"$1\\"),EuQ=/[\\\/]/,X5=0,IJA=1,HJA=2,_1=4,DJA=6,NJA=8,hF=10,LJA=12,C5=15,kI=~C5,Yg=16,ZJA=32,vI=64,jC=128,k2=256,v2=512,$JA=vI|jC|v2,KuQ=1023,Jg=(A)=>A.isFile()?NJA:A.isDirectory()?_1:A.isSymbolicLink()?hF:A.isCharacterDevice()?HJA:A.isBlockDevice()?DJA:A.isSocket()?LJA:A.isFIFO()?IJA:X5,UJA=new Map,yI=(A)=>{let Q=UJA.get(A);if(Q)return Q;let B=A.normalize("NFKD");return UJA.set(A,B),B},EJA=new Map,_2=(A)=>{let Q=EJA.get(A);if(Q)return Q;let B=yI(A.toLowerCase());return EJA.set(A,B),B};class Xg extends jI{constructor(){super({max:256})}}class qJA extends jI{constructor(A=16384){super({maxSize:A,sizeCalculation:(Q)=>Q.length+1})}}var MJA=Symbol("PathScurry setAsCwd");class sJ{name;root;roots;parent;nocase;isCWD=!1;#A;#Q;get dev(){return this.#Q}#B;get mode(){return this.#B}#Y;get nlink(){return this.#Y}#J;get uid(){return this.#J}#C;get gid(){return this.#C}#W;get rdev(){return this.#W}#X;get blksize(){return this.#X}#G;get ino(){return this.#G}#Z;get size(){return this.#Z}#U;get blocks(){return this.#U}#F;get atimeMs(){return this.#F}#E;get mtimeMs(){return this.#E}#V;get ctimeMs(){return this.#V}#I;get birthtimeMs(){return this.#I}#D;get atime(){return this.#D}#O;get mtime(){return this.#O}#N;get ctime(){return this.#N}#P;get birthtime(){return this.#P}#M;#q;#L;#w;#H;#S;#$;#v;#z;#k;get parentPath(){return(this.parent||this).fullpath()}get path(){return this.parentPath}constructor(A,Q=X5,B,Y,J,C,X){if(this.name=A,this.#M=J?_2(A):yI(A),this.#$=Q&KuQ,this.nocase=J,this.roots=Y,this.root=B||this,this.#v=C,this.#L=X.fullpath,this.#H=X.relative,this.#S=X.relativePosix,this.parent=X.parent,this.parent)this.#A=this.parent.#A;else this.#A=KJA(X.fs)}depth(){if(this.#q!==void 0)return this.#q;if(!this.parent)return this.#q=0;return this.#q=this.parent.depth()+1}childrenCache(){return this.#v}resolve(A){if(!A)return this;let Q=this.getRootString(A),Y=A.substring(Q.length).split(this.splitSep);return Q?this.getRoot(Q).#R(Y):this.#R(Y)}#R(A){let Q=this;for(let B of A)Q=Q.child(B);return Q}children(){let A=this.#v.get(this);if(A)return A;let Q=Object.assign([],{provisional:0});return this.#v.set(this,Q),this.#$&=~Yg,Q}child(A,Q){if(A===""||A===".")return this;if(A==="..")return this.parent||this;let B=this.children(),Y=this.nocase?_2(A):yI(A);for(let G of B)if(G.#M===Y)return G;let J=this.parent?this.sep:"",C=this.#L?this.#L+J+A:void 0,X=this.newChild(A,X5,{...Q,parent:this,fullpath:C});if(!this.canReaddir())X.#$|=jC;return B.push(X),X}relative(){if(this.isCWD)return"";if(this.#H!==void 0)return this.#H;let A=this.name,Q=this.parent;if(!Q)return this.#H=this.name;let B=Q.relative();return B+(!B||!Q.parent?"":this.sep)+A}relativePosix(){if(this.sep==="/")return this.relative();if(this.isCWD)return"";if(this.#S!==void 0)return this.#S;let A=this.name,Q=this.parent;if(!Q)return this.#S=this.fullpathPosix();let B=Q.relativePosix();return B+(!B||!Q.parent?"":"/")+A}fullpath(){if(this.#L!==void 0)return this.#L;let A=this.name,Q=this.parent;if(!Q)return this.#L=this.name;let Y=Q.fullpath()+(!Q.parent?"":this.sep)+A;return this.#L=Y}fullpathPosix(){if(this.#w!==void 0)return this.#w;if(this.sep==="/")return this.#w=this.fullpath();if(!this.parent){let Y=this.fullpath().replace(/\\/g,"/");if(/^[a-z]:\//i.test(Y))return this.#w=`//?/${Y}`;else return this.#w=Y}let A=this.parent,Q=A.fullpathPosix(),B=Q+(!Q||!A.parent?"":"/")+this.name;return this.#w=B}isUnknown(){return(this.#$&C5)===X5}isType(A){return this[`is${A}`]()}getType(){return this.isUnknown()?"Unknown":this.isDirectory()?"Directory":this.isFile()?"File":this.isSymbolicLink()?"SymbolicLink":this.isFIFO()?"FIFO":this.isCharacterDevice()?"CharacterDevice":this.isBlockDevice()?"BlockDevice":this.isSocket()?"Socket":"Unknown"}isFile(){return(this.#$&C5)===NJA}isDirectory(){return(this.#$&C5)===_1}isCharacterDevice(){return(this.#$&C5)===HJA}isBlockDevice(){return(this.#$&C5)===DJA}isFIFO(){return(this.#$&C5)===IJA}isSocket(){return(this.#$&C5)===LJA}isSymbolicLink(){return(this.#$&hF)===hF}lstatCached(){return this.#$&ZJA?this:void 0}readlinkCached(){return this.#z}realpathCached(){return this.#k}readdirCached(){let A=this.children();return A.slice(0,A.provisional)}canReadlink(){if(this.#z)return!0;if(!this.parent)return!1;let A=this.#$&C5;return!(A!==X5&&A!==hF||this.#$&k2||this.#$&jC)}calledReaddir(){return!!(this.#$&Yg)}isENOENT(){return!!(this.#$&jC)}isNamed(A){return!this.nocase?this.#M===yI(A):this.#M===_2(A)}async readlink(){let A=this.#z;if(A)return A;if(!this.canReadlink())return;if(!this.parent)return;try{let Q=await this.#A.promises.readlink(this.fullpath()),B=(await this.parent.realpath())?.resolve(Q);if(B)return this.#z=B}catch(Q){this.#x(Q.code);return}}readlinkSync(){let A=this.#z;if(A)return A;if(!this.canReadlink())return;if(!this.parent)return;try{let Q=this.#A.readlinkSync(this.fullpath()),B=this.parent.realpathSync()?.resolve(Q);if(B)return this.#z=B}catch(Q){this.#x(Q.code);return}}#m(A){this.#$|=Yg;for(let Q=A.provisional;QB(null,A))}readdirCB(A,Q=!1){if(!this.canReaddir()){if(Q)A(null,[]);else queueMicrotask(()=>A(null,[]));return}let B=this.children();if(this.calledReaddir()){let J=B.slice(0,B.provisional);if(Q)A(null,J);else queueMicrotask(()=>A(null,J));return}if(this.#b.push(A),this.#p)return;this.#p=!0;let Y=this.fullpath();this.#A.readdir(Y,{withFileTypes:!0},(J,C)=>{if(J)this.#T(J.code),B.provisional=0;else{for(let X of C)this.#g(X,B);this.#m(B)}this.#i(B.slice(0,B.provisional));return})}#l;async readdir(){if(!this.canReaddir())return[];let A=this.children();if(this.calledReaddir())return A.slice(0,A.provisional);let Q=this.fullpath();if(this.#l)await this.#l;else{let B=()=>{};this.#l=new Promise((Y)=>B=Y);try{for(let Y of await this.#A.promises.readdir(Q,{withFileTypes:!0}))this.#g(Y,A);this.#m(A)}catch(Y){this.#T(Y.code),A.provisional=0}this.#l=void 0,B()}return A.slice(0,A.provisional)}readdirSync(){if(!this.canReaddir())return[];let A=this.children();if(this.calledReaddir())return A.slice(0,A.provisional);let Q=this.fullpath();try{for(let B of this.#A.readdirSync(Q,{withFileTypes:!0}))this.#g(B,A);this.#m(A)}catch(B){this.#T(B.code),A.provisional=0}return A.slice(0,A.provisional)}canReaddir(){if(this.#$&$JA)return!1;let A=C5&this.#$;if(!(A===X5||A===_1||A===hF))return!1;return!0}shouldWalk(A,Q){return(this.#$&_1)===_1&&!(this.#$&$JA)&&!A.has(this)&&(!Q||Q(this))}async realpath(){if(this.#k)return this.#k;if((v2|k2|jC)&this.#$)return;try{let A=await this.#A.promises.realpath(this.fullpath());return this.#k=this.resolve(A)}catch(A){this.#u()}}realpathSync(){if(this.#k)return this.#k;if((v2|k2|jC)&this.#$)return;try{let A=this.#A.realpathSync(this.fullpath());return this.#k=this.resolve(A)}catch(A){this.#u()}}[MJA](A){if(A===this)return;A.isCWD=!1,this.isCWD=!0;let Q=new Set([]),B=[],Y=this;while(Y&&Y.parent)Q.add(Y),Y.#H=B.join(this.sep),Y.#S=B.join("/"),Y=Y.parent,B.push("..");Y=A;while(Y&&Y.parent&&!Q.has(Y))Y.#H=void 0,Y.#S=void 0,Y=Y.parent}}class y2 extends sJ{sep="\\";splitSep=EuQ;constructor(A,Q=X5,B,Y,J,C,X){super(A,Q,B,Y,J,C,X)}newChild(A,Q=X5,B={}){return new y2(A,Q,this.root,this.roots,this.nocase,this.childrenCache(),B)}getRootString(A){return Cg.parse(A).root}getRoot(A){if(A=UuQ(A.toUpperCase()),A===this.root.name)return this.root;for(let[Q,B]of Object.entries(this.roots))if(this.sameRoot(A,Q))return this.roots[A]=B;return this.roots[A]=new gI(A,this).root}sameRoot(A,Q=this.root.name){return A=A.toUpperCase().replace(/\//g,"\\").replace(VJA,"$1\\"),A===Q}}class g2 extends sJ{splitSep="/";sep="/";constructor(A,Q=X5,B,Y,J,C,X){super(A,Q,B,Y,J,C,X)}getRootString(A){return A.startsWith("/")?"/":""}getRoot(A){return this.root}newChild(A,Q=X5,B={}){return new g2(A,Q,this.root,this.roots,this.nocase,this.childrenCache(),B)}}class Gg{root;rootPath;roots;cwd;#A;#Q;#B;nocase;#Y;constructor(A=process.cwd(),Q,B,{nocase:Y,childrenCacheSize:J=16384,fs:C=_I}={}){if(this.#Y=KJA(C),A instanceof URL||A.startsWith("file://"))A=AuQ(A);let X=Q.resolve(A);this.roots=Object.create(null),this.rootPath=this.parseRootPath(X),this.#A=new Xg,this.#Q=new Xg,this.#B=new qJA(J);let G=X.substring(this.rootPath.length).split(B);if(G.length===1&&!G[0])G.pop();if(Y===void 0)throw TypeError("must provide nocase setting to PathScurryBase ctor");this.nocase=Y,this.root=this.newRoot(this.#Y),this.roots[this.rootPath]=this.root;let W=this.root,F=G.length-1,Z=Q.sep,U=this.rootPath,$=!1;for(let E of G){let K=F--;W=W.child(E,{relative:Array(K).fill("..").join(Z),relativePosix:Array(K).fill("..").join("/"),fullpath:U+=($?"":Z)+E}),$=!0}this.cwd=W}depth(A=this.cwd){if(typeof A==="string")A=this.cwd.resolve(A);return A.depth()}childrenCache(){return this.#B}resolve(...A){let Q="";for(let J=A.length-1;J>=0;J--){let C=A[J];if(!C||C===".")continue;if(Q=Q?`${C}/${Q}`:C,this.isAbsolute(C))break}let B=this.#A.get(Q);if(B!==void 0)return B;let Y=this.cwd.resolve(Q).fullpath();return this.#A.set(Q,Y),Y}resolvePosix(...A){let Q="";for(let J=A.length-1;J>=0;J--){let C=A[J];if(!C||C===".")continue;if(Q=Q?`${C}/${Q}`:C,this.isAbsolute(C))break}let B=this.#Q.get(Q);if(B!==void 0)return B;let Y=this.cwd.resolve(Q).fullpathPosix();return this.#Q.set(Q,Y),Y}relative(A=this.cwd){if(typeof A==="string")A=this.cwd.resolve(A);return A.relative()}relativePosix(A=this.cwd){if(typeof A==="string")A=this.cwd.resolve(A);return A.relativePosix()}basename(A=this.cwd){if(typeof A==="string")A=this.cwd.resolve(A);return A.name}dirname(A=this.cwd){if(typeof A==="string")A=this.cwd.resolve(A);return(A.parent||A).fullpath()}async readdir(A=this.cwd,Q={withFileTypes:!0}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof sJ))Q=A,A=this.cwd;let{withFileTypes:B}=Q;if(!A.canReaddir())return[];else{let Y=await A.readdir();return B?Y:Y.map((J)=>J.name)}}readdirSync(A=this.cwd,Q={withFileTypes:!0}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof sJ))Q=A,A=this.cwd;let{withFileTypes:B=!0}=Q;if(!A.canReaddir())return[];else if(B)return A.readdirSync();else return A.readdirSync().map((Y)=>Y.name)}async lstat(A=this.cwd){if(typeof A==="string")A=this.cwd.resolve(A);return A.lstat()}lstatSync(A=this.cwd){if(typeof A==="string")A=this.cwd.resolve(A);return A.lstatSync()}async readlink(A=this.cwd,{withFileTypes:Q}={withFileTypes:!1}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof sJ))Q=A.withFileTypes,A=this.cwd;let B=await A.readlink();return Q?B:B?.fullpath()}readlinkSync(A=this.cwd,{withFileTypes:Q}={withFileTypes:!1}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof sJ))Q=A.withFileTypes,A=this.cwd;let B=A.readlinkSync();return Q?B:B?.fullpath()}async realpath(A=this.cwd,{withFileTypes:Q}={withFileTypes:!1}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof sJ))Q=A.withFileTypes,A=this.cwd;let B=await A.realpath();return Q?B:B?.fullpath()}realpathSync(A=this.cwd,{withFileTypes:Q}={withFileTypes:!1}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof sJ))Q=A.withFileTypes,A=this.cwd;let B=A.realpathSync();return Q?B:B?.fullpath()}async walk(A=this.cwd,Q={}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof sJ))Q=A,A=this.cwd;let{withFileTypes:B=!0,follow:Y=!1,filter:J,walkFilter:C}=Q,X=[];if(!J||J(A))X.push(B?A:A.fullpath());let G=new Set,W=(Z,U)=>{G.add(Z),Z.readdirCB(($,E)=>{if($)return U($);let K=E.length;if(!K)return U();let I=()=>{if(--K===0)U()};for(let V of E){if(!J||J(V))X.push(B?V:V.fullpath());if(Y&&V.isSymbolicLink())V.realpath().then((H)=>H?.isUnknown()?H.lstat():H).then((H)=>H?.shouldWalk(G,C)?W(H,I):I());else if(V.shouldWalk(G,C))W(V,I);else I()}},!0)},F=A;return new Promise((Z,U)=>{W(F,($)=>{if($)return U($);Z(X)})})}walkSync(A=this.cwd,Q={}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof sJ))Q=A,A=this.cwd;let{withFileTypes:B=!0,follow:Y=!1,filter:J,walkFilter:C}=Q,X=[];if(!J||J(A))X.push(B?A:A.fullpath());let G=new Set([A]);for(let W of G){let F=W.readdirSync();for(let Z of F){if(!J||J(Z))X.push(B?Z:Z.fullpath());let U=Z;if(Z.isSymbolicLink()){if(!(Y&&(U=Z.realpathSync())))continue;if(U.isUnknown())U.lstatSync()}if(U.shouldWalk(G,C))G.add(U)}}return X}[Symbol.asyncIterator](){return this.iterate()}iterate(A=this.cwd,Q={}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof sJ))Q=A,A=this.cwd;return this.stream(A,Q)[Symbol.asyncIterator]()}[Symbol.iterator](){return this.iterateSync()}*iterateSync(A=this.cwd,Q={}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof sJ))Q=A,A=this.cwd;let{withFileTypes:B=!0,follow:Y=!1,filter:J,walkFilter:C}=Q;if(!J||J(A))yield B?A:A.fullpath();let X=new Set([A]);for(let G of X){let W=G.readdirSync();for(let F of W){if(!J||J(F))yield B?F:F.fullpath();let Z=F;if(F.isSymbolicLink()){if(!(Y&&(Z=F.realpathSync())))continue;if(Z.isUnknown())Z.lstatSync()}if(Z.shouldWalk(X,C))X.add(Z)}}}stream(A=this.cwd,Q={}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof sJ))Q=A,A=this.cwd;let{withFileTypes:B=!0,follow:Y=!1,filter:J,walkFilter:C}=Q,X=new gF({objectMode:!0});if(!J||J(A))X.write(B?A:A.fullpath());let G=new Set,W=[A],F=0,Z=()=>{let U=!1;while(!U){let $=W.shift();if(!$){if(F===0)X.end();return}F++,G.add($);let E=(I,V,H=!1)=>{if(I)return X.emit("error",I);if(Y&&!H){let D=[];for(let L of V)if(L.isSymbolicLink())D.push(L.realpath().then((z)=>z?.isUnknown()?z.lstat():z));if(D.length){Promise.all(D).then(()=>E(null,V,!0));return}}for(let D of V)if(D&&(!J||J(D))){if(!X.write(B?D:D.fullpath()))U=!0}F--;for(let D of V){let L=D.realpathCached()||D;if(L.shouldWalk(G,C))W.push(L)}if(U&&!X.flowing)X.once("drain",Z);else if(!K)Z()},K=!0;$.readdirCB(E,!0),K=!1}};return Z(),X}streamSync(A=this.cwd,Q={}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof sJ))Q=A,A=this.cwd;let{withFileTypes:B=!0,follow:Y=!1,filter:J,walkFilter:C}=Q,X=new gF({objectMode:!0}),G=new Set;if(!J||J(A))X.write(B?A:A.fullpath());let W=[A],F=0,Z=()=>{let U=!1;while(!U){let $=W.shift();if(!$){if(F===0)X.end();return}F++,G.add($);let E=$.readdirSync();for(let K of E)if(!J||J(K)){if(!X.write(B?K:K.fullpath()))U=!0}F--;for(let K of E){let I=K;if(K.isSymbolicLink()){if(!(Y&&(I=K.realpathSync())))continue;if(I.isUnknown())I.lstatSync()}if(I.shouldWalk(G,C))W.push(I)}}if(U&&!X.flowing)X.once("drain",Z)};return Z(),X}chdir(A=this.cwd){let Q=this.cwd;this.cwd=typeof A==="string"?this.cwd.resolve(A):A,this.cwd[MJA](Q)}}class gI extends Gg{sep="\\";constructor(A=process.cwd(),Q={}){let{nocase:B=!0}=Q;super(A,Cg,"\\",{...Q,nocase:B});this.nocase=B;for(let Y=this.cwd;Y;Y=Y.parent)Y.nocase=this.nocase}parseRootPath(A){return Cg.parse(A).root.toUpperCase()}newRoot(A){return new y2(this.rootPath,_1,void 0,this.roots,this.nocase,this.childrenCache(),{fs:A})}isAbsolute(A){return A.startsWith("/")||A.startsWith("\\")||/^[a-z]:(\/|\\)/i.test(A)}}class hI extends Gg{sep="/";constructor(A=process.cwd(),Q={}){let{nocase:B=!1}=Q;super(A,emQ,"/",{...Q,nocase:B});this.nocase=B}parseRootPath(A){return"/"}newRoot(A){return new g2(this.rootPath,_1,void 0,this.roots,this.nocase,this.childrenCache(),{fs:A})}isAbsolute(A){return A.startsWith("/")}}class h2 extends hI{constructor(A=process.cwd(),Q={}){let{nocase:B=!0}=Q;super(A,{...Q,nocase:B})}}var EXY=process.platform==="win32"?y2:g2,zJA=process.platform==="win32"?gI:process.platform==="darwin"?h2:hI;var VuQ=(A)=>A.length>=1,IuQ=(A)=>A.length>=1;class c4{#A;#Q;#B;length;#Y;#J;#C;#W;#X;#G;#Z=!0;constructor(A,Q,B,Y){if(!VuQ(A))throw TypeError("empty pattern list");if(!IuQ(Q))throw TypeError("empty glob list");if(Q.length!==A.length)throw TypeError("mismatched pattern list and glob list lengths");if(this.length=A.length,B<0||B>=this.length)throw TypeError("index out of range");if(this.#A=A,this.#Q=Q,this.#B=B,this.#Y=Y,this.#B===0){if(this.isUNC()){let[J,C,X,G,...W]=this.#A,[F,Z,U,$,...E]=this.#Q;if(W[0]==="")W.shift(),E.shift();let K=[J,C,X,G,""].join("/"),I=[F,Z,U,$,""].join("/");this.#A=[K,...W],this.#Q=[I,...E],this.length=this.#A.length}else if(this.isDrive()||this.isAbsolute()){let[J,...C]=this.#A,[X,...G]=this.#Q;if(C[0]==="")C.shift(),G.shift();let W=J+"/",F=X+"/";this.#A=[W,...C],this.#Q=[F,...G],this.length=this.#A.length}}}pattern(){return this.#A[this.#B]}isString(){return typeof this.#A[this.#B]==="string"}isGlobstar(){return this.#A[this.#B]===JJ}isRegExp(){return this.#A[this.#B]instanceof RegExp}globString(){return this.#C=this.#C||(this.#B===0?this.isAbsolute()?this.#Q[0]+this.#Q.slice(1).join("/"):this.#Q.join("/"):this.#Q.slice(this.#B).join("/"))}hasMore(){return this.length>this.#B+1}rest(){if(this.#J!==void 0)return this.#J;if(!this.hasMore())return this.#J=null;return this.#J=new c4(this.#A,this.#Q,this.#B+1,this.#Y),this.#J.#G=this.#G,this.#J.#X=this.#X,this.#J.#W=this.#W,this.#J}isUNC(){let A=this.#A;return this.#X!==void 0?this.#X:this.#X=this.#Y==="win32"&&this.#B===0&&A[0]===""&&A[1]===""&&typeof A[2]==="string"&&!!A[2]&&typeof A[3]==="string"&&!!A[3]}isDrive(){let A=this.#A;return this.#W!==void 0?this.#W:this.#W=this.#Y==="win32"&&this.#B===0&&this.length>1&&typeof A[0]==="string"&&/^[a-z]:$/i.test(A[0])}isAbsolute(){let A=this.#A;return this.#G!==void 0?this.#G:this.#G=A[0]===""&&A.length>1||this.isDrive()||this.isUNC()}root(){let A=this.#A[0];return typeof A==="string"&&this.isAbsolute()&&this.#B===0?A:""}checkFollowGlobstar(){return!(this.#B===0||!this.isGlobstar()||!this.#Z)}markFollowGlobstar(){if(this.#B===0||!this.isGlobstar()||!this.#Z)return!1;return this.#Z=!1,!0}}var HuQ=typeof process==="object"&&process&&typeof process.platform==="string"?process.platform:"linux";class xI{relative;relativeChildren;absolute;absoluteChildren;platform;mmopts;constructor(A,{nobrace:Q,nocase:B,noext:Y,noglobstar:J,platform:C=HuQ}){this.relative=[],this.absolute=[],this.relativeChildren=[],this.absoluteChildren=[],this.platform=C,this.mmopts={dot:!0,nobrace:Q,nocase:B,noext:Y,noglobstar:J,optimizationLevel:2,platform:C,nocomment:!0,nonegate:!0};for(let X of A)this.add(X)}add(A){let Q=new J5(A,this.mmopts);for(let B=0;B[A,!!(Q&2),!!(Q&1)])}}class wJA{store=new Map;add(A,Q){if(!A.canReaddir())return;let B=this.store.get(A);if(B){if(!B.find((Y)=>Y.globString()===Q.globString()))B.push(Q)}else this.store.set(A,[Q])}get(A){let Q=this.store.get(A);if(!Q)throw Error("attempting to walk unknown path");return Q}entries(){return this.keys().map((A)=>[A,this.store.get(A)])}keys(){return[...this.store.keys()].filter((A)=>A.canReaddir())}}class fI{hasWalkedCache;matches=new RJA;subwalks=new wJA;patterns;follow;dot;opts;constructor(A,Q){this.opts=A,this.follow=!!A.follow,this.dot=!!A.dot,this.hasWalkedCache=Q?Q.copy():new Wg}processPatterns(A,Q){this.patterns=Q;let B=Q.map((Y)=>[A,Y]);for(let[Y,J]of B){this.hasWalkedCache.storeWalked(Y,J);let C=J.root(),X=J.isAbsolute()&&this.opts.absolute!==!1;if(C){Y=Y.resolve(C==="/"&&this.opts.root!==void 0?this.opts.root:C);let Z=J.rest();if(!Z){this.matches.add(Y,!0,!1);continue}else J=Z}if(Y.isENOENT())continue;let G,W,F=!1;while(typeof(G=J.pattern())==="string"&&(W=J.rest()))Y=Y.resolve(G),J=W,F=!0;if(G=J.pattern(),W=J.rest(),F){if(this.hasWalkedCache.hasWalked(Y,J))continue;this.hasWalkedCache.storeWalked(Y,J)}if(typeof G==="string"){let Z=G===".."||G===""||G===".";this.matches.add(Y.resolve(G),X,Z);continue}else if(G===JJ){if(!Y.isSymbolicLink()||this.follow||J.checkFollowGlobstar())this.subwalks.add(Y,J);let Z=W?.pattern(),U=W?.rest();if(!W||(Z===""||Z===".")&&!U)this.matches.add(Y,X,Z===""||Z===".");else if(Z===".."){let $=Y.parent||Y;if(!U)this.matches.add($,X,!0);else if(!this.hasWalkedCache.hasWalked($,U))this.subwalks.add($,U)}}else if(G instanceof RegExp)this.subwalks.add(Y,J)}return this}subwalkTargets(){return this.subwalks.keys()}child(){return new fI(this.opts,this.hasWalkedCache)}filterEntries(A,Q){let B=this.subwalks.get(A),Y=this.child();for(let J of Q)for(let C of B){let X=C.isAbsolute(),G=C.pattern(),W=C.rest();if(G===JJ)Y.testGlobstar(J,C,W,X);else if(G instanceof RegExp)Y.testRegExp(J,G,W,X);else Y.testString(J,G,W,X)}return Y}testGlobstar(A,Q,B,Y){if(this.dot||!A.name.startsWith(".")){if(!Q.hasMore())this.matches.add(A,Y,!1);if(A.canReaddir()){if(this.follow||!A.isSymbolicLink())this.subwalks.add(A,Q);else if(A.isSymbolicLink()){if(B&&Q.checkFollowGlobstar())this.subwalks.add(A,B);else if(Q.markFollowGlobstar())this.subwalks.add(A,Q)}}}if(B){let J=B.pattern();if(typeof J==="string"&&J!==".."&&J!==""&&J!==".")this.testString(A,J,B.rest(),Y);else if(J===".."){let C=A.parent||A;this.subwalks.add(C,B)}else if(J instanceof RegExp)this.testRegExp(A,J,B.rest(),Y)}}testRegExp(A,Q,B,Y){if(!Q.test(A.name))return;if(!B)this.matches.add(A,Y,!1);else this.subwalks.add(A,B)}testString(A,Q,B,Y){if(!A.isNamed(Q))return;if(!B)this.matches.add(A,Y,!1);else this.subwalks.add(A,B)}}var DuQ=(A,Q)=>typeof A==="string"?new xI([A],Q):Array.isArray(A)?new xI(A,Q):A;class Fg{path;patterns;opts;seen=new Set;paused=!1;aborted=!1;#A=[];#Q;#B;signal;maxDepth;includeChildMatches;constructor(A,Q,B){if(this.patterns=A,this.path=Q,this.opts=B,this.#B=!B.posix&&B.platform==="win32"?"\\":"/",this.includeChildMatches=B.includeChildMatches!==!1,B.ignore||!this.includeChildMatches){if(this.#Q=DuQ(B.ignore??[],B),!this.includeChildMatches&&typeof this.#Q.add!=="function")throw Error("cannot ignore child matches, ignore lacks add() method.")}if(this.maxDepth=B.maxDepth||1/0,B.signal)this.signal=B.signal,this.signal.addEventListener("abort",()=>{this.#A.length=0})}#Y(A){return this.seen.has(A)||!!this.#Q?.ignored?.(A)}#J(A){return!!this.#Q?.childrenIgnored?.(A)}pause(){this.paused=!0}resume(){if(this.signal?.aborted)return;this.paused=!1;let A=void 0;while(!this.paused&&(A=this.#A.shift()))A()}onResume(A){if(this.signal?.aborted)return;if(!this.paused)A();else this.#A.push(A)}async matchCheck(A,Q){if(Q&&this.opts.nodir)return;let B;if(this.opts.realpath){if(B=A.realpathCached()||await A.realpath(),!B)return;A=B}let J=A.isUnknown()||this.opts.stat?await A.lstat():A;if(this.opts.follow&&this.opts.nodir&&J?.isSymbolicLink()){let C=await J.realpath();if(C&&(C.isUnknown()||this.opts.stat))await C.lstat()}return this.matchCheckTest(J,Q)}matchCheckTest(A,Q){return A&&(this.maxDepth===1/0||A.depth()<=this.maxDepth)&&(!Q||A.canReaddir())&&(!this.opts.nodir||!A.isDirectory())&&(!this.opts.nodir||!this.opts.follow||!A.isSymbolicLink()||!A.realpathCached()?.isDirectory())&&!this.#Y(A)?A:void 0}matchCheckSync(A,Q){if(Q&&this.opts.nodir)return;let B;if(this.opts.realpath){if(B=A.realpathCached()||A.realpathSync(),!B)return;A=B}let J=A.isUnknown()||this.opts.stat?A.lstatSync():A;if(this.opts.follow&&this.opts.nodir&&J?.isSymbolicLink()){let C=J.realpathSync();if(C&&(C?.isUnknown()||this.opts.stat))C.lstatSync()}return this.matchCheckTest(J,Q)}matchFinish(A,Q){if(this.#Y(A))return;if(!this.includeChildMatches&&this.#Q?.add){let J=`${A.relativePosix()}/**`;this.#Q.add(J)}let B=this.opts.absolute===void 0?Q:this.opts.absolute;this.seen.add(A);let Y=this.opts.mark&&A.isDirectory()?this.#B:"";if(this.opts.withFileTypes)this.matchEmit(A);else if(B){let J=this.opts.posix?A.fullpathPosix():A.fullpath();this.matchEmit(J+Y)}else{let J=this.opts.posix?A.relativePosix():A.relative(),C=this.opts.dotRelative&&!J.startsWith(".."+this.#B)?"."+this.#B:"";this.matchEmit(!J?"."+Y:C+J+Y)}}async match(A,Q,B){let Y=await this.matchCheck(A,B);if(Y)this.matchFinish(Y,Q)}matchSync(A,Q,B){let Y=this.matchCheckSync(A,B);if(Y)this.matchFinish(Y,Q)}walkCB(A,Q,B){if(this.signal?.aborted)B();this.walkCB2(A,Q,new fI(this.opts),B)}walkCB2(A,Q,B,Y){if(this.#J(A))return Y();if(this.signal?.aborted)Y();if(this.paused){this.onResume(()=>this.walkCB2(A,Q,B,Y));return}B.processPatterns(A,Q);let J=1,C=()=>{if(--J===0)Y()};for(let[X,G,W]of B.matches.entries()){if(this.#Y(X))continue;J++,this.match(X,G,W).then(()=>C())}for(let X of B.subwalkTargets()){if(this.maxDepth!==1/0&&X.depth()>=this.maxDepth)continue;J++;let G=X.readdirCached();if(X.calledReaddir())this.walkCB3(X,G,B,C);else X.readdirCB((W,F)=>this.walkCB3(X,F,B,C),!0)}C()}walkCB3(A,Q,B,Y){B=B.filterEntries(A,Q);let J=1,C=()=>{if(--J===0)Y()};for(let[X,G,W]of B.matches.entries()){if(this.#Y(X))continue;J++,this.match(X,G,W).then(()=>C())}for(let[X,G]of B.subwalks.entries())J++,this.walkCB2(X,G,B.child(),C);C()}walkCBSync(A,Q,B){if(this.signal?.aborted)B();this.walkCB2Sync(A,Q,new fI(this.opts),B)}walkCB2Sync(A,Q,B,Y){if(this.#J(A))return Y();if(this.signal?.aborted)Y();if(this.paused){this.onResume(()=>this.walkCB2Sync(A,Q,B,Y));return}B.processPatterns(A,Q);let J=1,C=()=>{if(--J===0)Y()};for(let[X,G,W]of B.matches.entries()){if(this.#Y(X))continue;this.matchSync(X,G,W)}for(let X of B.subwalkTargets()){if(this.maxDepth!==1/0&&X.depth()>=this.maxDepth)continue;J++;let G=X.readdirSync();this.walkCB3Sync(X,G,B,C)}C()}walkCB3Sync(A,Q,B,Y){B=B.filterEntries(A,Q);let J=1,C=()=>{if(--J===0)Y()};for(let[X,G,W]of B.matches.entries()){if(this.#Y(X))continue;this.matchSync(X,G,W)}for(let[X,G]of B.subwalks.entries())J++,this.walkCB2Sync(X,G,B.child(),C);C()}}class x2 extends Fg{matches=new Set;constructor(A,Q,B){super(A,Q,B)}matchEmit(A){this.matches.add(A)}async walk(){if(this.signal?.aborted)throw this.signal.reason;if(this.path.isUnknown())await this.path.lstat();return await new Promise((A,Q)=>{this.walkCB(this.path,this.patterns,()=>{if(this.signal?.aborted)Q(this.signal.reason);else A(this.matches)})}),this.matches}walkSync(){if(this.signal?.aborted)throw this.signal.reason;if(this.path.isUnknown())this.path.lstatSync();return this.walkCBSync(this.path,this.patterns,()=>{if(this.signal?.aborted)throw this.signal.reason}),this.matches}}class f2 extends Fg{results;constructor(A,Q,B){super(A,Q,B);this.results=new gF({signal:this.signal,objectMode:!0}),this.results.on("drain",()=>this.resume()),this.results.on("resume",()=>this.resume())}matchEmit(A){if(this.results.write(A),!this.results.flowing)this.pause()}stream(){let A=this.path;if(A.isUnknown())A.lstat().then(()=>{this.walkCB(A,this.patterns,()=>this.results.end())});else this.walkCB(A,this.patterns,()=>this.results.end());return this.results}streamSync(){if(this.path.isUnknown())this.path.lstatSync();return this.walkCBSync(this.path,this.patterns,()=>this.results.end()),this.results}}var LuQ=typeof process==="object"&&process&&typeof process.platform==="string"?process.platform:"linux";class v1{absolute;cwd;root;dot;dotRelative;follow;ignore;magicalBraces;mark;matchBase;maxDepth;nobrace;nocase;nodir;noext;noglobstar;pattern;platform;realpath;scurry;stat;signal;windowsPathsNoEscape;withFileTypes;includeChildMatches;opts;patterns;constructor(A,Q){if(!Q)throw TypeError("glob options required");if(this.withFileTypes=!!Q.withFileTypes,this.signal=Q.signal,this.follow=!!Q.follow,this.dot=!!Q.dot,this.dotRelative=!!Q.dotRelative,this.nodir=!!Q.nodir,this.mark=!!Q.mark,!Q.cwd)this.cwd="";else if(Q.cwd instanceof URL||Q.cwd.startsWith("file://"))Q.cwd=NuQ(Q.cwd);if(this.cwd=Q.cwd||"",this.root=Q.root,this.magicalBraces=!!Q.magicalBraces,this.nobrace=!!Q.nobrace,this.noext=!!Q.noext,this.realpath=!!Q.realpath,this.absolute=Q.absolute,this.includeChildMatches=Q.includeChildMatches!==!1,this.noglobstar=!!Q.noglobstar,this.matchBase=!!Q.matchBase,this.maxDepth=typeof Q.maxDepth==="number"?Q.maxDepth:1/0,this.stat=!!Q.stat,this.ignore=Q.ignore,this.withFileTypes&&this.absolute!==void 0)throw Error("cannot set absolute and withFileTypes:true");if(typeof A==="string")A=[A];if(this.windowsPathsNoEscape=!!Q.windowsPathsNoEscape||Q.allowWindowsEscape===!1,this.windowsPathsNoEscape)A=A.map((G)=>G.replace(/\\/g,"/"));if(this.matchBase){if(Q.noglobstar)throw TypeError("base matching requires globstar");A=A.map((G)=>G.includes("/")?G:`./**/${G}`)}if(this.pattern=A,this.platform=Q.platform||LuQ,this.opts={...Q,platform:this.platform},Q.scurry){if(this.scurry=Q.scurry,Q.nocase!==void 0&&Q.nocase!==Q.scurry.nocase)throw Error("nocase option contradicts provided scurry option")}else{let G=Q.platform==="win32"?gI:Q.platform==="darwin"?h2:Q.platform?hI:zJA;this.scurry=new G(this.cwd,{nocase:Q.nocase,fs:Q.fs})}this.nocase=this.scurry.nocase;let B=this.platform==="darwin"||this.platform==="win32",Y={...Q,dot:this.dot,matchBase:this.matchBase,nobrace:this.nobrace,nocase:this.nocase,nocaseMagicOnly:B,nocomment:!0,noext:this.noext,nonegate:!0,optimizationLevel:2,platform:this.platform,windowsPathsNoEscape:this.windowsPathsNoEscape,debug:!!this.opts.debug},J=this.pattern.map((G)=>new J5(G,Y)),[C,X]=J.reduce((G,W)=>{return G[0].push(...W.set),G[1].push(...W.globParts),G},[[],[]]);this.patterns=C.map((G,W)=>{let F=X[W];if(!F)throw Error("invalid pattern object");return new c4(G,F,0,this.platform)})}async walk(){return[...await new x2(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walk()]}walkSync(){return[...new x2(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walkSync()]}stream(){return new f2(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).stream()}streamSync(){return new f2(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).streamSync()}iterateSync(){return this.streamSync()[Symbol.iterator]()}[Symbol.iterator](){return this.iterateSync()}iterate(){return this.stream()[Symbol.asyncIterator]()}[Symbol.asyncIterator](){return this.iterate()}}var Zg=(A,Q={})=>{if(!Array.isArray(A))A=[A];for(let B of A)if(new J5(B,Q).hasMagic())return!0;return!1};function b2(A,Q={}){return new v1(A,Q).streamSync()}function OJA(A,Q={}){return new v1(A,Q).stream()}function PJA(A,Q={}){return new v1(A,Q).walkSync()}async function jJA(A,Q={}){return new v1(A,Q).walk()}function m2(A,Q={}){return new v1(A,Q).iterateSync()}function TJA(A,Q={}){return new v1(A,Q).iterate()}var quQ=b2,MuQ=Object.assign(OJA,{sync:b2}),zuQ=m2,RuQ=Object.assign(TJA,{sync:m2}),wuQ=Object.assign(PJA,{stream:b2,iterate:m2}),l4=Object.assign(jJA,{glob:jJA,globSync:PJA,sync:wuQ,globStream:OJA,stream:MuQ,globStreamSync:b2,streamSync:quQ,globIterate:TJA,iterate:RuQ,globIterateSync:m2,iterateSync:zuQ,Glob:v1,hasMagic:Zg,escape:f4,unescape:RC});l4.glob=l4;class $g{constructor(){this._listeners={}}addEventListener(A,Q){let B=this._listeners;if(B[A]===void 0)B[A]=[];if(B[A].indexOf(Q)===-1)B[A].push(Q);return this}removeEventListener(A,Q){let Y=this._listeners[A];if(Y!==void 0){let J=Y.indexOf(Q);if(J!==-1)Y.splice(J,1)}return this}dispatchEvent(A){let B=this._listeners[A.type];if(B!==void 0){let Y=B.slice(0);for(let J=0,C=Y.length;J=0)this.list.splice(Q,1)}removeChild(A){let Q=[];for(let B of this.list)if(B.getChild()===A)Q.push(B);for(let B of Q)this.remove(B);return Q}listRefsByChild(A){let Q=[];for(let B of this.list)if(B.getChild()===A)Q.push(B);return Q}values(){return this.list}}class xB{constructor(A){if(this.set=new Set,this.map=new Map,A)for(let Q of A)this.add(Q)}add(A){let Q=A.getChild();this.removeChild(Q),this.set.add(A),this.map.set(Q,A)}remove(A){this.set.delete(A),this.map.delete(A.getChild())}removeChild(A){let Q=this.map.get(A)||null;if(Q)this.remove(Q);return Q}getRefByChild(A){return this.map.get(A)||null}values(){return Array.from(this.set)}}class rJ{constructor(A){if(this.map={},A)Object.assign(this.map,A)}set(A,Q){this.map[A]=Q}delete(A){delete this.map[A]}get(A){return this.map[A]||null}keys(){return Object.keys(this.map)}values(){return Object.values(this.map)}}var PB=Symbol("attributes"),B7=Symbol("immutableKeys");class d2 extends $g{constructor(A){super();this._disposed=!1,this.graph=void 0,this[PB]=void 0,this[B7]=void 0,this.graph=A,this[B7]=new Set,this[PB]=this._createAttributes()}getDefaults(){return{}}_createAttributes(){let A=this.getDefaults(),Q={};for(let B in A){let Y=A[B];if(Y instanceof d2){let J=this.graph._createEdge(B,this,Y);this[B7].add(B),Q[B]=J}else Q[B]=Y}return Q}isOnGraph(A){return this.graph===A.graph}isDisposed(){return this._disposed}dispose(){if(this._disposed)return;this.graph.listChildEdges(this).forEach((A)=>A.dispose()),this.graph.disconnectParents(this),this._disposed=!0,this.dispatchEvent({type:"dispose"})}detach(){return this.graph.disconnectParents(this),this}swap(A,Q){for(let B in this[PB]){let Y=this[PB][B];if(Y instanceof B6){let J=Y;if(J.getChild()===A)this.setRef(B,Q,J.getAttributes())}else if(Y instanceof OC)for(let J of Y.listRefsByChild(A)){let C=J.getAttributes();this.removeRef(B,A),this.addRef(B,Q,C)}else if(Y instanceof xB){let J=Y.getRefByChild(A);if(J){let C=J.getAttributes();this.removeRef(B,A),this.addRef(B,Q,C)}}else if(Y instanceof rJ)for(let J of Y.keys()){let C=Y.get(J);if(C.getChild()===A)this.setRefMap(B,J,Q,C.getAttributes())}}return this}get(A){return this[PB][A]}set(A,Q){return this[PB][A]=Q,this.dispatchEvent({type:"change",attribute:A})}getRef(A){let Q=this[PB][A];return Q?Q.getChild():null}setRef(A,Q,B){if(this[B7].has(A))throw Error(`Cannot overwrite immutable attribute, "${A}".`);let Y=this[PB][A];if(Y)Y.dispose();if(!Q)return this;let J=this.graph._createEdge(A,this,Q,B);return this[PB][A]=J,this.dispatchEvent({type:"change",attribute:A})}listRefs(A){return this.assertRefList(A).values().map((B)=>B.getChild())}addRef(A,Q,B){let Y=this.graph._createEdge(A,this,Q,B);return this.assertRefList(A).add(Y),this.dispatchEvent({type:"change",attribute:A})}removeRef(A,Q){let B=this.assertRefList(A);if(B instanceof OC)for(let Y of B.listRefsByChild(Q))Y.dispose();else{let Y=B.getRefByChild(Q);if(Y)Y.dispose()}return this}assertRefList(A){let Q=this[PB][A];if(Q instanceof OC||Q instanceof xB)return Q;throw Error(`Expected RefList or RefSet for attribute "${A}"`)}listRefMapKeys(A){return this.assertRefMap(A).keys()}listRefMapValues(A){return this.assertRefMap(A).values().map((Q)=>Q.getChild())}getRefMap(A,Q){let Y=this.assertRefMap(A).get(Q);return Y?Y.getChild():null}setRefMap(A,Q,B,Y){let J=this.assertRefMap(A),C=J.get(Q);if(C)C.dispose();if(!B)return this;Y=Object.assign(Y||{},{key:Q});let X=this.graph._createEdge(A,this,B,bI({},Y,{key:Q}));return J.set(Q,X),this.dispatchEvent({type:"change",attribute:A,key:Q})}assertRefMap(A){let Q=this[PB][A];if(Q instanceof rJ)return Q;throw Error(`Expected RefMap for attribute "${A}"`)}dispatchEvent(A){return super.dispatchEvent(bI({},A,{target:this})),this.graph.dispatchEvent(bI({},A,{target:this,type:`node:${A.type}`})),this}_destroyRef(A){let Q=A.getName();if(this[PB][Q]===A){if(this[PB][Q]=null,this[B7].has(Q))A.getChild().dispose()}else if(this[PB][Q]instanceof OC)this[PB][Q].remove(A);else if(this[PB][Q]instanceof xB)this[PB][Q].remove(A);else if(this[PB][Q]instanceof rJ){let B=this[PB][Q];for(let Y of B.keys())if(B.get(Y)===A)B.delete(Y)}else return;this.graph._destroyEdge(A),this.dispatchEvent({type:"change",attribute:Q})}}var hJA="v4.2.1",fF="@glb.bin",YA;(function(A){A.ACCESSOR="Accessor",A.ANIMATION="Animation",A.ANIMATION_CHANNEL="AnimationChannel",A.ANIMATION_SAMPLER="AnimationSampler",A.BUFFER="Buffer",A.CAMERA="Camera",A.MATERIAL="Material",A.MESH="Mesh",A.PRIMITIVE="Primitive",A.PRIMITIVE_TARGET="PrimitiveTarget",A.NODE="Node",A.ROOT="Root",A.SCENE="Scene",A.SKIN="Skin",A.TEXTURE="Texture",A.TEXTURE_INFO="TextureInfo"})(YA||(YA={}));var s2;(function(A){A.INTERLEAVED="interleaved",A.SEPARATE="separate"})(s2||(s2={}));var Z8;(function(A){A.ARRAY_BUFFER="ARRAY_BUFFER",A.ELEMENT_ARRAY_BUFFER="ELEMENT_ARRAY_BUFFER",A.INVERSE_BIND_MATRICES="INVERSE_BIND_MATRICES",A.OTHER="OTHER",A.SPARSE="SPARSE"})(Z8||(Z8={}));var k9;(function(A){A[A.R=4096]="R",A[A.G=256]="G",A[A.B=16]="B",A[A.A=1]="A"})(k9||(k9={}));var Y6;(function(A){A.GLTF="GLTF",A.GLB="GLB"})(Y6||(Y6={}));var J7={"5120":Int8Array,"5121":Uint8Array,"5122":Int16Array,"5123":Uint16Array,"5125":Uint32Array,"5126":Float32Array};class jQ{static createBufferFromDataURI(A){if(typeof Buffer>"u"){let Q=atob(A.split(",")[1]),B=new Uint8Array(Q.length);for(let Y=0;Y=0;return Buffer.from(Q,B?"base64":"utf8")}}static encodeText(A){return new TextEncoder().encode(A)}static decodeText(A){return new TextDecoder().decode(A)}static concat(A){let Q=0;for(let J of A)Q+=J.byteLength;let B=new Uint8Array(Q),Y=0;for(let J of A)B.set(J,Y),Y+=J.byteLength;return B}static pad(A,Q=0){let B=this.padNumber(A.byteLength);if(B===A.byteLength)return A;let Y=new Uint8Array(B);if(Y.set(A),Q!==0)for(let J=A.byteLength;J>16&255)/255,B[1]=(A>>8&255)/255,B[2]=(A&255)/255,this.convertSRGBToLinear(Q,Q)}static factorToHex(A){let Q=[...A],[B,Y,J]=this.convertLinearToSRGB(A,Q);return B*255<<16^Y*255<<8^J*255<<0}static convertSRGBToLinear(A,Q){let B=A,Y=Q;for(let J=0;J<3;J++)Y[J]=B[J]<0.04045?B[J]*0.0773993808:Math.pow(B[J]*0.9478672986+0.0521327014,2.4);return Q}static convertLinearToSRGB(A,Q){let B=A,Y=Q;for(let J=0;J<3;J++)Y[J]=B[J]<0.0031308?B[J]*12.92:1.055*Math.pow(B[J],0.41666)-0.055;return Q}}class xJA{match(A){return A.length>=3&&A[0]===255&&A[1]===216&&A[2]===255}getSize(A){let Q=new DataView(A.buffer,A.byteOffset+4),B,Y;while(Q.byteLength){if(B=Q.getUint16(0,!1),juQ(Q,B),Y=Q.getUint8(B+1),Y===192||Y===193||Y===194)return[Q.getUint16(B+7,!1),Q.getUint16(B+5,!1)];Q=new DataView(A.buffer,Q.byteOffset+B+2)}throw TypeError("Invalid JPG, no size found")}getChannels(A){return 3}}class o2{match(A){return A.length>=8&&A[0]===137&&A[1]===80&&A[2]===78&&A[3]===71&&A[4]===13&&A[5]===10&&A[6]===26&&A[7]===10}getSize(A){let Q=new DataView(A.buffer,A.byteOffset);if(jQ.decodeText(A.slice(12,16))===o2.PNG_FRIED_CHUNK_NAME)return[Q.getUint32(32,!1),Q.getUint32(36,!1)];return[Q.getUint32(16,!1),Q.getUint32(20,!1)]}getChannels(A){return 4}}o2.PNG_FRIED_CHUNK_NAME="CgBI";class F8{static registerFormat(A,Q){this.impls[A]=Q}static getMimeType(A){for(let Q in this.impls)if(this.impls[Q].match(A))return Q;return null}static getSize(A,Q){if(!this.impls[Q])return null;return this.impls[Q].getSize(A)}static getChannels(A,Q){if(!this.impls[Q])return null;return this.impls[Q].getChannels(A)}static getVRAMByteLength(A,Q){if(!this.impls[Q])return null;if(this.impls[Q].getVRAMByteLength)return this.impls[Q].getVRAMByteLength(A);let B=0,Y=4,J=this.getSize(A,Q);if(!J)return null;while(J[0]>1||J[1]>1)B+=J[0]*J[1]*Y,J[0]=Math.max(Math.floor(J[0]/2),1),J[1]=Math.max(Math.floor(J[1]/2),1);return B+=1*Y,B}static mimeTypeToExtension(A){if(A==="image/jpeg")return"jpg";return A.split("/").pop()}static extensionToMimeType(A){if(A==="jpg")return"image/jpeg";if(!A)return"";return`image/${A}`}}F8.impls={"image/jpeg":new xJA,"image/png":new o2};function juQ(A,Q){if(Q>A.byteLength)throw TypeError("Corrupt JPG, exceeded buffer limits");if(A.getUint8(Q)!==255)throw TypeError("Invalid JPG, marker table corrupted");return A}class J6{static basename(A){let Q=A.split(/[\\/]/).pop();return Q.substring(0,Q.lastIndexOf("."))}static extension(A){if(A.startsWith("data:image/")){let Q=A.match(/data:(image\/\w+)/)[1];return F8.mimeTypeToExtension(Q)}else if(A.startsWith("data:model/gltf+json"))return"gltf";else if(A.startsWith("data:model/gltf-binary"))return"glb";else if(A.startsWith("data:application/"))return"bin";return A.split(/[\\/]/).pop().split(/[.]/).pop()}}var Eg=typeof Float32Array<"u"?Float32Array:Array;if(!Math.hypot)Math.hypot=function(){var A=0,Q=arguments.length;while(Q--)A+=arguments[Q]*arguments[Q];return Math.sqrt(A)};function OuQ(){var A=new Eg(3);if(Eg!=Float32Array)A[0]=0,A[1]=0,A[2]=0;return A}function Ug(A){var Q=A[0],B=A[1],Y=A[2];return Math.hypot(Q,B,Y)}function PuQ(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=B[3]*Y+B[7]*J+B[11]*C+B[15];return X=X||1,A[0]=(B[0]*Y+B[4]*J+B[8]*C+B[12])/X,A[1]=(B[1]*Y+B[5]*J+B[9]*C+B[13])/X,A[2]=(B[2]*Y+B[6]*J+B[10]*C+B[14])/X,A}(function(){var A=OuQ();return function(Q,B,Y,J,C,X){var G,W;if(!B)B=3;if(!Y)Y=0;if(J)W=Math.min(J*B+Y,Q.length);else W=Q.length;for(G=Y;G{let C=J.getMesh();if(!C)return;let X=TuQ(C,J.getWorldMatrix());if(X.min.every(isFinite)&&X.max.every(isFinite))Kg(X.min,Q),Kg(X.max,Q)});return Q}function TuQ(A,Q){let B=fJA();for(let Y of A.listPrimitives()){let J=Y.getAttribute("POSITION"),C=Y.getIndices();if(!J)continue;let X=[0,0,0],G=[0,0,0];for(let W=0,F=C?C.getCount():J.getCount();W0)V=Math.sqrt(I+1)*2,A[3]=0.25*V,A[0]=(U-E)/V,A[1]=($-W)/V,A[2]=(G-F)/V;else if(X>Z&&X>K)V=Math.sqrt(1+X-Z-K)*2,A[3]=(U-E)/V,A[0]=0.25*V,A[1]=(G+F)/V,A[2]=($+W)/V;else if(Z>K)V=Math.sqrt(1+Z-X-K)*2,A[3]=($-W)/V,A[0]=(G+F)/V,A[1]=0.25*V,A[2]=(U+E)/V;else V=Math.sqrt(1+K-X-Z)*2,A[3]=(G-F)/V,A[0]=($+W)/V,A[1]=(U+E)/V,A[2]=0.25*V;return A}class kQ{static identity(A){return A}static eq(A,Q,B=0.00001){if(A.length!==Q.length)return!1;for(let Y=0;YB)return!1;return!0}static clamp(A,Q,B){if(AB)return B;return A}static decodeNormalizedInt(A,Q){switch(Q){case 5126:return A;case 5123:return A/65535;case 5121:return A/255;case 5122:return Math.max(A/32767,-1);case 5120:return Math.max(A/127,-1);default:throw Error("Invalid component type.")}}static encodeNormalizedInt(A,Q){switch(Q){case 5126:return A;case 5123:return Math.round(kQ.clamp(A,0,1)*65535);case 5121:return Math.round(kQ.clamp(A,0,1)*255);case 5122:return Math.round(kQ.clamp(A,-1,1)*32767);case 5120:return Math.round(kQ.clamp(A,-1,1)*127);default:throw Error("Invalid component type.")}}static decompose(A,Q,B,Y){let J=Ug([A[0],A[1],A[2]]),C=Ug([A[4],A[5],A[6]]),X=Ug([A[8],A[9],A[10]]);if(SuQ(A)<0)J=-J;Q[0]=A[12],Q[1]=A[13],Q[2]=A[14];let W=A.slice(),F=1/J,Z=1/C,U=1/X;W[0]*=F,W[1]*=F,W[2]*=F,W[4]*=Z,W[5]*=Z,W[6]*=Z,W[8]*=U,W[9]*=U,W[10]*=U,vuQ(B,W),Y[0]=J,Y[1]=C,Y[2]=X}static compose(A,Q,B,Y){let J=Y,C=Q[0],X=Q[1],G=Q[2],W=Q[3],F=C+C,Z=X+X,U=G+G,$=C*F,E=C*Z,K=C*U,I=X*Z,V=X*U,H=G*U,D=W*F,L=W*Z,z=W*U,M=B[0],N=B[1],q=B[2];return J[0]=(1-(I+H))*M,J[1]=(E+z)*M,J[2]=(K-L)*M,J[3]=0,J[4]=(E-z)*N,J[5]=(1-($+H))*N,J[6]=(V+D)*N,J[7]=0,J[8]=(K+L)*q,J[9]=(V-D)*q,J[10]=(1-($+I))*q,J[11]=0,J[12]=A[0],J[13]=A[1],J[14]=A[2],J[15]=1,J}}function yuQ(A,Q){if(!!A!==!!Q)return!1;let B=A.getChild(),Y=Q.getChild();return B===Y||B.equals(Y)}function guQ(A,Q){if(!!A!==!!Q)return!1;let B=A.values(),Y=Q.values();if(B.length!==Y.length)return!1;for(let J=0;JA,muQ=new Set;class t2 extends d2{constructor(A,Q=""){super(A);this[PB].name=Q,this.init(),this.dispatchEvent({type:"create"})}getGraph(){return this.graph}getDefaults(){return Object.assign(super.getDefaults(),{name:"",extras:{}})}set(A,Q){if(Array.isArray(Q))Q=Q.slice();return super.set(A,Q)}getName(){return this.get("name")}setName(A){return this.set("name",A)}getExtras(){return this.get("extras")}setExtras(A){return this.set("extras",A)}clone(){return new this.constructor(this.graph).copy(this,Y7)}copy(A,Q=Y7){for(let B in this[PB]){let Y=this[PB][B];if(Y instanceof B6){if(!this[B7].has(B))Y.dispose()}else if(Y instanceof OC||Y instanceof xB)for(let J of Y.values())J.dispose();else if(Y instanceof rJ)for(let J of Y.values())J.dispose()}for(let B in A[PB]){let Y=this[PB][B],J=A[PB][B];if(J instanceof B6)if(this[B7].has(B))Y.getChild().copy(Q(J.getChild()),Q);else this.setRef(B,Q(J.getChild()),J.getAttributes());else if(J instanceof xB||J instanceof OC)for(let C of J.values())this.addRef(B,Q(C.getChild()),C.getAttributes());else if(J instanceof rJ)for(let C of J.keys()){let X=J.get(C);this.setRefMap(B,C,Q(X.getChild()),X.getAttributes())}else if(xF(J))this[PB][B]=JSON.parse(JSON.stringify(J));else if(Array.isArray(J)||J instanceof ArrayBuffer||ArrayBuffer.isView(J))this[PB][B]=J.slice();else this[PB][B]=J}return this}equals(A,Q=muQ){if(this===A)return!0;if(this.propertyType!==A.propertyType)return!1;for(let B in this[PB]){if(Q.has(B))continue;let Y=this[PB][B],J=A[PB][B];if(Y instanceof B6||J instanceof B6){if(!yuQ(Y,J))return!1}else if(Y instanceof xB||J instanceof xB||Y instanceof OC||J instanceof OC){if(!guQ(Y,J))return!1}else if(Y instanceof rJ||J instanceof rJ){if(!huQ(Y,J))return!1}else if(xF(Y)||xF(J)){if(!mJA(Y,J))return!1}else if(r2(Y)||r2(J)){if(!bJA(Y,J))return!1}else if(Y!==J)return!1}return!0}detach(){return this.graph.disconnectParents(this,(A)=>A.propertyType!=="Root"),this}listParents(){return this.graph.listParents(this)}}class qJ extends t2{getDefaults(){return Object.assign(super.getDefaults(),{extensions:new rJ})}getExtension(A){return this.getRefMap("extensions",A)}setExtension(A,Q){if(Q)Q._validateParent(this);return this.setRefMap("extensions",A,Q)}listExtensions(){return this.listRefMapValues("extensions")}}class fA extends qJ{init(){this.propertyType=YA.ACCESSOR}getDefaults(){return Object.assign(super.getDefaults(),{array:null,type:fA.Type.SCALAR,componentType:fA.ComponentType.FLOAT,normalized:!1,sparse:!1,buffer:null})}static getElementSize(A){switch(A){case fA.Type.SCALAR:return 1;case fA.Type.VEC2:return 2;case fA.Type.VEC3:return 3;case fA.Type.VEC4:return 4;case fA.Type.MAT2:return 4;case fA.Type.MAT3:return 9;case fA.Type.MAT4:return 16;default:throw Error("Unexpected type: "+A)}}static getComponentSize(A){switch(A){case fA.ComponentType.BYTE:return 1;case fA.ComponentType.UNSIGNED_BYTE:return 1;case fA.ComponentType.SHORT:return 2;case fA.ComponentType.UNSIGNED_SHORT:return 2;case fA.ComponentType.UNSIGNED_INT:return 4;case fA.ComponentType.FLOAT:return 4;default:throw Error("Unexpected component type: "+A)}}getMinNormalized(A){let Q=this.getNormalized(),B=this.getElementSize(),Y=this.getComponentType();if(this.getMin(A),Q)for(let J=0;J{this._addChildOfRoot(Q.target)})}clone(){throw Error("Root cannot be cloned.")}copy(A,Q=Y7){if(Q===Y7)throw Error("Root cannot be copied.");this.set("asset",aJ({},A.get("asset"))),this.setName(A.getName()),this.setExtras(aJ({},A.getExtras())),this.setDefaultScene(A.getDefaultScene()?Q(A.getDefaultScene()):null);for(let B of A.listRefMapKeys("extensions")){let Y=A.getExtension(B);this.setExtension(B,Q(Y))}return this}_addChildOfRoot(A){if(A instanceof p4)this.addRef("scenes",A);else if(A instanceof e2)this.addRef("nodes",A);else if(A instanceof bF)this.addRef("cameras",A);else if(A instanceof qg)this.addRef("skins",A);else if(A instanceof cI)this.addRef("meshes",A);else if(A instanceof y1)this.addRef("materials",A);else if(A instanceof mF)this.addRef("textures",A);else if(A instanceof Dg)this.addRef("animations",A);else if(A instanceof fA)this.addRef("accessors",A);else if(A instanceof Ng)this.addRef("buffers",A);return this}getAsset(){return this.get("asset")}listExtensionsUsed(){return Array.from(this._extensions)}listExtensionsRequired(){return this.listExtensionsUsed().filter((A)=>A.isRequired())}_enableExtension(A){return this._extensions.add(A),this}_disableExtension(A){return this._extensions.delete(A),this}listScenes(){return this.listRefs("scenes")}setDefaultScene(A){return this.setRef("defaultScene",A)}getDefaultScene(){return this.getRef("defaultScene")}listNodes(){return this.listRefs("nodes")}listCameras(){return this.listRefs("cameras")}listSkins(){return this.listRefs("skins")}listMeshes(){return this.listRefs("meshes")}listMaterials(){return this.listRefs("materials")}listTextures(){return this.listRefs("textures")}listAnimations(){return this.listRefs("animations")}listAccessors(){return this.listRefs("accessors")}listBuffers(){return this.listRefs("buffers")}}class LJ{static fromGraph(A){return LJ._GRAPH_DOCUMENTS.get(A)||null}constructor(){this._graph=new u2,this._root=new i4(this._graph),this._logger=S9.DEFAULT_INSTANCE,LJ._GRAPH_DOCUMENTS.set(this._graph,this)}getRoot(){return this._root}getGraph(){return this._graph}getLogger(){return this._logger}setLogger(A){return this._logger=A,this}clone(){throw Error("Use 'cloneDocument(source)' from '@gltf-transform/functions'.")}merge(A){throw Error("Use 'mergeDocuments(target, source)' from '@gltf-transform/functions'.")}async transform(...A){let Q=A.map((B)=>B.name);for(let B of A)await B(this,{stack:Q});return this}createExtension(A){let Q=A.EXTENSION_NAME;return this.getRoot().listExtensionsUsed().find((Y)=>Y.extensionName===Q)||new A(this)}createScene(A=""){return new p4(this._graph,A)}createNode(A=""){return new e2(this._graph,A)}createCamera(A=""){return new bF(this._graph,A)}createSkin(A=""){return new qg(this._graph,A)}createMesh(A=""){return new cI(this._graph,A)}createPrimitive(){return new q0(this._graph)}createPrimitiveTarget(A=""){return new Lg(this._graph,A)}createMaterial(A=""){return new y1(this._graph,A)}createTexture(A=""){return new mF(this._graph,A)}createAnimation(A=""){return new Dg(this._graph,A)}createAnimationChannel(A=""){return new C6(this._graph,A)}createAnimationSampler(A=""){return new C7(this._graph,A)}createAccessor(A="",Q=null){if(!Q)Q=this.getRoot().listBuffers()[0];return new fA(this._graph,A).setBuffer(Q)}createBuffer(A=""){return new Ng(this._graph,A)}}LJ._GRAPH_DOCUMENTS=new WeakMap;class tB{constructor(A){this.extensionName="",this.prereadTypes=[],this.prewriteTypes=[],this.readDependencies=[],this.writeDependencies=[],this.document=void 0,this.required=!1,this.properties=new Set,this._listener=void 0,this.document=A,A.getRoot()._enableExtension(this),this._listener=(B)=>{let Y=B,J=Y.target;if(J instanceof oB&&J.extensionName===this.extensionName){if(Y.type==="node:create")this._addExtensionProperty(J);if(Y.type==="node:dispose")this._removeExtensionProperty(J)}};let Q=A.getGraph();Q.addEventListener("node:create",this._listener),Q.addEventListener("node:dispose",this._listener)}dispose(){this.document.getRoot()._disableExtension(this);let A=this.document.getGraph();A.removeEventListener("node:create",this._listener),A.removeEventListener("node:dispose",this._listener);for(let Q of this.properties)Q.dispose()}static register(){}isRequired(){return this.required}setRequired(A){return this.required=A,this}listProperties(){return Array.from(this.properties)}_addExtensionProperty(A){return this.properties.add(A),this}_removeExtensionProperty(A){return this.properties.delete(A),this}install(A,Q){return this}preread(A,Q){return this}prewrite(A,Q){return this}}tB.EXTENSION_NAME=void 0;class dJA{constructor(A){this.jsonDoc=void 0,this.buffers=[],this.bufferViews=[],this.bufferViewBuffers=[],this.accessors=[],this.textures=[],this.textureInfos=new Map,this.materials=[],this.meshes=[],this.cameras=[],this.nodes=[],this.skins=[],this.animations=[],this.scenes=[],this.jsonDoc=A}setTextureInfo(A,Q){if(this.textureInfos.set(A,Q),Q.texCoord!==void 0)A.setTexCoord(Q.texCoord);if(Q.extras!==void 0)A.setExtras(Q.extras);let B=this.jsonDoc.json.textures[Q.index];if(B.sampler===void 0)return;let Y=this.jsonDoc.json.samplers[B.sampler];if(Y.magFilter!==void 0)A.setMagFilter(Y.magFilter);if(Y.minFilter!==void 0)A.setMinFilter(Y.minFilter);if(Y.wrapS!==void 0)A.setWrapS(Y.wrapS);if(Y.wrapT!==void 0)A.setWrapT(Y.wrapT)}}var yJA={logger:S9.DEFAULT_INSTANCE,extensions:[],dependencies:{}},cuQ=new Set([YA.BUFFER,YA.TEXTURE,YA.MATERIAL,YA.MESH,YA.PRIMITIVE,YA.NODE,YA.SCENE]);class cJA{static read(A,Q=yJA){let B=aJ({},yJA,Q),{json:Y}=A,J=new LJ().setLogger(B.logger);this.validate(A,B);let C=new dJA(A),X=Y.asset,G=J.getRoot().getAsset();if(X.copyright)G.copyright=X.copyright;if(X.extras)G.extras=X.extras;if(Y.extras!==void 0)J.getRoot().setExtras(aJ({},Y.extras));let W=Y.extensionsUsed||[],F=Y.extensionsRequired||[];B.extensions.sort((N,q)=>N.EXTENSION_NAME>q.EXTENSION_NAME?1:-1);for(let N of B.extensions)if(W.includes(N.EXTENSION_NAME)){let q=J.createExtension(N).setRequired(F.includes(N.EXTENSION_NAME)),w=q.prereadTypes.filter((P)=>!cuQ.has(P));if(w.length)B.logger.warn(`Preread hooks for some types (${w.join()}), requested by extension ${q.extensionName}, are unsupported. Please file an issue or a PR.`);for(let P of q.readDependencies)q.install(P,B.dependencies[P])}let Z=Y.buffers||[];J.getRoot().listExtensionsUsed().filter((N)=>N.prereadTypes.includes(YA.BUFFER)).forEach((N)=>N.preread(C,YA.BUFFER)),C.buffers=Z.map((N)=>{let q=J.createBuffer(N.name);if(N.extras)q.setExtras(N.extras);if(N.uri&&N.uri.indexOf("__")!==0)q.setURI(N.uri);return q});let U=Y.bufferViews||[];C.bufferViewBuffers=U.map((N,q)=>{if(!C.bufferViews[q]){let w=A.json.buffers[N.buffer],P=w.uri?A.resources[w.uri]:A.resources[fF],_=N.byteOffset||0;C.bufferViews[q]=jQ.toView(P,_,N.byteLength)}return C.buffers[N.buffer]});let $=Y.accessors||[];C.accessors=$.map((N)=>{let q=C.bufferViewBuffers[N.bufferView],w=J.createAccessor(N.name,q).setType(N.type);if(N.extras)w.setExtras(N.extras);if(N.normalized!==void 0)w.setNormalized(N.normalized);if(N.bufferView===void 0)return w;return w.setArray(n2(N,C)),w});let E=Y.images||[],K=Y.textures||[];J.getRoot().listExtensionsUsed().filter((N)=>N.prereadTypes.includes(YA.TEXTURE)).forEach((N)=>N.preread(C,YA.TEXTURE)),C.textures=E.map((N)=>{let q=J.createTexture(N.name);if(N.extras)q.setExtras(N.extras);if(N.bufferView!==void 0){let w=Y.bufferViews[N.bufferView],P=A.json.buffers[w.buffer],_=P.uri?A.resources[P.uri]:A.resources[fF],j=w.byteOffset||0,k=w.byteLength,T=_.slice(j,j+k);q.setImage(T)}else if(N.uri!==void 0){if(q.setImage(A.resources[N.uri]),N.uri.indexOf("__")!==0)q.setURI(N.uri)}if(N.mimeType!==void 0)q.setMimeType(N.mimeType);else if(N.uri){let w=J6.extension(N.uri);q.setMimeType(F8.extensionToMimeType(w))}return q}),J.getRoot().listExtensionsUsed().filter((N)=>N.prereadTypes.includes(YA.MATERIAL)).forEach((N)=>N.preread(C,YA.MATERIAL));let I=Y.materials||[];C.materials=I.map((N)=>{let q=J.createMaterial(N.name);if(N.extras)q.setExtras(N.extras);if(N.alphaMode!==void 0)q.setAlphaMode(N.alphaMode);if(N.alphaCutoff!==void 0)q.setAlphaCutoff(N.alphaCutoff);if(N.doubleSided!==void 0)q.setDoubleSided(N.doubleSided);let w=N.pbrMetallicRoughness||{};if(w.baseColorFactor!==void 0)q.setBaseColorFactor(w.baseColorFactor);if(N.emissiveFactor!==void 0)q.setEmissiveFactor(N.emissiveFactor);if(w.metallicFactor!==void 0)q.setMetallicFactor(w.metallicFactor);if(w.roughnessFactor!==void 0)q.setRoughnessFactor(w.roughnessFactor);if(w.baseColorTexture!==void 0){let P=w.baseColorTexture,_=C.textures[K[P.index].source];q.setBaseColorTexture(_),C.setTextureInfo(q.getBaseColorTextureInfo(),P)}if(N.emissiveTexture!==void 0){let P=N.emissiveTexture,_=C.textures[K[P.index].source];q.setEmissiveTexture(_),C.setTextureInfo(q.getEmissiveTextureInfo(),P)}if(N.normalTexture!==void 0){let P=N.normalTexture,_=C.textures[K[P.index].source];if(q.setNormalTexture(_),C.setTextureInfo(q.getNormalTextureInfo(),P),N.normalTexture.scale!==void 0)q.setNormalScale(N.normalTexture.scale)}if(N.occlusionTexture!==void 0){let P=N.occlusionTexture,_=C.textures[K[P.index].source];if(q.setOcclusionTexture(_),C.setTextureInfo(q.getOcclusionTextureInfo(),P),N.occlusionTexture.strength!==void 0)q.setOcclusionStrength(N.occlusionTexture.strength)}if(w.metallicRoughnessTexture!==void 0){let P=w.metallicRoughnessTexture,_=C.textures[K[P.index].source];q.setMetallicRoughnessTexture(_),C.setTextureInfo(q.getMetallicRoughnessTextureInfo(),P)}return q}),J.getRoot().listExtensionsUsed().filter((N)=>N.prereadTypes.includes(YA.MESH)).forEach((N)=>N.preread(C,YA.MESH));let V=Y.meshes||[];J.getRoot().listExtensionsUsed().filter((N)=>N.prereadTypes.includes(YA.PRIMITIVE)).forEach((N)=>N.preread(C,YA.PRIMITIVE)),C.meshes=V.map((N)=>{let q=J.createMesh(N.name);if(N.extras)q.setExtras(N.extras);if(N.weights!==void 0)q.setWeights(N.weights);return(N.primitives||[]).forEach((P)=>{let _=J.createPrimitive();if(P.extras)_.setExtras(P.extras);if(P.material!==void 0)_.setMaterial(C.materials[P.material]);if(P.mode!==void 0)_.setMode(P.mode);for(let[T,S]of Object.entries(P.attributes||{}))_.setAttribute(T,C.accessors[S]);if(P.indices!==void 0)_.setIndices(C.accessors[P.indices]);let j=N.extras&&N.extras.targetNames||[];(P.targets||[]).forEach((T,S)=>{let v=j[S]||S.toString(),y=J.createPrimitiveTarget(v);for(let[h,g]of Object.entries(T))y.setAttribute(h,C.accessors[g]);_.addTarget(y)}),q.addPrimitive(_)}),q});let H=Y.cameras||[];C.cameras=H.map((N)=>{let q=J.createCamera(N.name).setType(N.type);if(N.extras)q.setExtras(N.extras);if(N.type===bF.Type.PERSPECTIVE){let w=N.perspective;if(q.setYFov(w.yfov),q.setZNear(w.znear),w.zfar!==void 0)q.setZFar(w.zfar);if(w.aspectRatio!==void 0)q.setAspectRatio(w.aspectRatio)}else{let w=N.orthographic;q.setZNear(w.znear).setZFar(w.zfar).setXMag(w.xmag).setYMag(w.ymag)}return q});let D=Y.nodes||[];J.getRoot().listExtensionsUsed().filter((N)=>N.prereadTypes.includes(YA.NODE)).forEach((N)=>N.preread(C,YA.NODE)),C.nodes=D.map((N)=>{let q=J.createNode(N.name);if(N.extras)q.setExtras(N.extras);if(N.translation!==void 0)q.setTranslation(N.translation);if(N.rotation!==void 0)q.setRotation(N.rotation);if(N.scale!==void 0)q.setScale(N.scale);if(N.matrix!==void 0){let w=[0,0,0],P=[0,0,0,1],_=[1,1,1];kQ.decompose(N.matrix,w,P,_),q.setTranslation(w),q.setRotation(P),q.setScale(_)}if(N.weights!==void 0)q.setWeights(N.weights);return q});let L=Y.skins||[];C.skins=L.map((N)=>{let q=J.createSkin(N.name);if(N.extras)q.setExtras(N.extras);if(N.inverseBindMatrices!==void 0)q.setInverseBindMatrices(C.accessors[N.inverseBindMatrices]);if(N.skeleton!==void 0)q.setSkeleton(C.nodes[N.skeleton]);for(let w of N.joints)q.addJoint(C.nodes[w]);return q}),D.map((N,q)=>{let w=C.nodes[q];if((N.children||[]).forEach((_)=>w.addChild(C.nodes[_])),N.mesh!==void 0)w.setMesh(C.meshes[N.mesh]);if(N.camera!==void 0)w.setCamera(C.cameras[N.camera]);if(N.skin!==void 0)w.setSkin(C.skins[N.skin])});let z=Y.animations||[];C.animations=z.map((N)=>{let q=J.createAnimation(N.name);if(N.extras)q.setExtras(N.extras);let P=(N.samplers||[]).map((j)=>{let k=J.createAnimationSampler().setInput(C.accessors[j.input]).setOutput(C.accessors[j.output]).setInterpolation(j.interpolation||C7.Interpolation.LINEAR);if(j.extras)k.setExtras(j.extras);return q.addSampler(k),k});return(N.channels||[]).forEach((j)=>{let k=J.createAnimationChannel().setSampler(P[j.sampler]).setTargetPath(j.target.path);if(j.target.node!==void 0)k.setTargetNode(C.nodes[j.target.node]);if(j.extras)k.setExtras(j.extras);q.addChannel(k)}),q});let M=Y.scenes||[];if(J.getRoot().listExtensionsUsed().filter((N)=>N.prereadTypes.includes(YA.SCENE)).forEach((N)=>N.preread(C,YA.SCENE)),C.scenes=M.map((N)=>{let q=J.createScene(N.name);if(N.extras)q.setExtras(N.extras);return(N.nodes||[]).map((P)=>C.nodes[P]).forEach((P)=>q.addChild(P)),q}),Y.scene!==void 0)J.getRoot().setDefaultScene(C.scenes[Y.scene]);return J.getRoot().listExtensionsUsed().forEach((N)=>N.read(C)),$.forEach((N,q)=>{let w=C.accessors[q],P=!!N.sparse,_=!N.bufferView&&!w.getArray();if(P||_)w.setSparse(!0).setArray(puQ(N,C))}),J}static validate(A,Q){let B=A.json;if(B.asset.version!=="2.0")throw Error(`Unsupported glTF version, "${B.asset.version}".`);if(B.extensionsRequired){for(let Y of B.extensionsRequired)if(!Q.extensions.find((J)=>J.EXTENSION_NAME===Y))throw Error(`Missing required extension, "${Y}".`)}if(B.extensionsUsed){for(let Y of B.extensionsUsed)if(!Q.extensions.find((J)=>J.EXTENSION_NAME===Y))Q.logger.warn(`Missing optional extension, "${Y}".`)}}}function luQ(A,Q){let B=Q.jsonDoc,Y=Q.bufferViews[A.bufferView],J=B.json.bufferViews[A.bufferView],C=J7[A.componentType],X=fA.getElementSize(A.type),G=C.BYTES_PER_ELEMENT,W=A.byteOffset||0,F=new C(A.count*X),Z=new DataView(Y.buffer,Y.byteOffset,Y.byteLength),U=J.byteStride;for(let $=0;$1,()=>B.basename||"buffer"),this.imageURIGenerator=new Ig(C>1,(X)=>iuQ(A,X)||B.basename||"texture"),this.logger=A.getLogger()}createTextureInfoDef(A,Q){let B={magFilter:Q.getMagFilter()||void 0,minFilter:Q.getMinFilter()||void 0,wrapS:Q.getWrapS(),wrapT:Q.getWrapT()},Y=JSON.stringify(B);if(!this.samplerDefIndexMap.has(Y))this.samplerDefIndexMap.set(Y,this.jsonDoc.json.samplers.length),this.jsonDoc.json.samplers.push(B);let J={source:this.imageIndexMap.get(A),sampler:this.samplerDefIndexMap.get(Y)},C=JSON.stringify(J);if(!this.textureDefIndexMap.has(C))this.textureDefIndexMap.set(C,this.jsonDoc.json.textures.length),this.jsonDoc.json.textures.push(J);let X={index:this.textureDefIndexMap.get(C)};if(Q.getTexCoord()!==0)X.texCoord=Q.getTexCoord();if(Object.keys(Q.getExtras()).length>0)X.extras=Q.getExtras();return this.textureInfoDefMap.set(Q,X),X}createPropertyDef(A){let Q={};if(A.getName())Q.name=A.getName();if(Object.keys(A.getExtras()).length>0)Q.extras=A.getExtras();return Q}createAccessorDef(A){let Q=this.createPropertyDef(A);if(Q.type=A.getType(),Q.componentType=A.getComponentType(),Q.count=A.getCount(),this._doc.getGraph().listParentEdges(A).some((Y)=>Y.getName()==="attributes"&&Y.getAttributes().key==="POSITION"||Y.getName()==="input"))Q.max=A.getMax([]).map(Math.fround),Q.min=A.getMin([]).map(Math.fround);if(A.getNormalized())Q.normalized=A.getNormalized();return Q}createImageData(A,Q,B){if(this.options.format===Y6.GLB)this.imageBufferViews.push(Q),A.bufferView=this.jsonDoc.json.bufferViews.length,this.jsonDoc.json.bufferViews.push({buffer:0,byteOffset:-1,byteLength:Q.byteLength});else{let Y=F8.mimeTypeToExtension(B.getMimeType());A.uri=this.imageURIGenerator.createURI(B,Y),this.assignResourceURI(A.uri,Q,!1)}}assignResourceURI(A,Q,B){let Y=this.jsonDoc.resources;if(!(A in Y)){Y[A]=Q;return}if(Q===Y[A]){this.logger.warn(`Duplicate resource URI, "${A}".`);return}let J=`Resource URI "${A}" already assigned to different data.`;if(!B){this.logger.warn(J);return}throw Error(J)}getAccessorUsage(A){let Q=this._accessorUsageMap.get(A);if(Q)return Q;if(A.getSparse())return Z8.SPARSE;for(let B of this._doc.getGraph().listParentEdges(A)){let{usage:Y}=B.getAttributes();if(Y)return Y;if(B.getParent().propertyType!==YA.ROOT)this.logger.warn(`Missing attribute ".usage" on edge, "${B.getName()}".`)}return Z8.OTHER}addAccessorToUsageGroup(A,Q){let B=this._accessorUsageMap.get(A);if(B&&B!==Q)throw Error(`Accessor with usage "${B}" cannot be reused as "${Q}".`);return this._accessorUsageMap.set(A,Q),this}}W5.BufferViewTarget=uI;W5.BufferViewUsage=Z8;W5.USAGE_TO_TARGET={[Z8.ARRAY_BUFFER]:uI.ARRAY_BUFFER,[Z8.ELEMENT_ARRAY_BUFFER]:uI.ELEMENT_ARRAY_BUFFER};class Ig{constructor(A,Q){this.multiple=void 0,this.basename=void 0,this.counter={},this.multiple=A,this.basename=Q}createURI(A,Q){if(A.getURI())return A.getURI();else if(!this.multiple)return`${this.basename(A)}.${Q}`;else{let B=this.basename(A);return this.counter[B]=this.counter[B]||1,`${B}_${this.counter[B]++}.${Q}`}}}function iuQ(A,Q){let B=A.getGraph().listParentEdges(Q).find((Y)=>Y.getParent()!==A.getRoot());return B?B.getName().replace(/texture$/i,""):""}var{BufferViewUsage:i2}=W5,{UNSIGNED_INT:nuQ,UNSIGNED_SHORT:suQ,UNSIGNED_BYTE:ruQ}=fA.ComponentType,auQ=new Set([YA.ACCESSOR,YA.BUFFER,YA.MATERIAL,YA.MESH]);class lJA{static write(A,Q){let B=A.getGraph(),Y=A.getRoot(),J={asset:aJ({generator:`glTF-Transform ${hJA}`},Y.getAsset()),extras:aJ({},Y.getExtras())},C={json:J,resources:{}},X=new W5(A,C,Q),G=Q.logger||S9.DEFAULT_INSTANCE,W=new Set(Q.extensions.map((V)=>V.EXTENSION_NAME)),F=A.getRoot().listExtensionsUsed().filter((V)=>W.has(V.extensionName)).sort((V,H)=>V.extensionName>H.extensionName?1:-1),Z=A.getRoot().listExtensionsRequired().filter((V)=>W.has(V.extensionName)).sort((V,H)=>V.extensionName>H.extensionName?1:-1);if(F.length!auQ.has(D));if(H.length)G.warn(`Prewrite hooks for some types (${H.join()}), requested by extension ${V.extensionName}, are unsupported. Please file an issue or a PR.`);for(let D of V.writeDependencies)V.install(D,Q.dependencies[D])}function U(V,H,D,L){let z=[],M=0;for(let w of V){let P=X.createAccessorDef(w);P.bufferView=J.bufferViews.length;let _=w.getArray(),j=jQ.pad(jQ.toView(_));P.byteOffset=M,M+=j.byteLength,z.push(j),X.accessorIndexMap.set(w,J.accessors.length),J.accessors.push(P)}let N=jQ.concat(z),q={buffer:H,byteOffset:D,byteLength:N.byteLength};if(L)q.target=L;return J.bufferViews.push(q),{buffers:z,byteLength:M}}function $(V,H,D){let L=V[0].getCount(),z=0;for(let P of V){let _=X.createAccessorDef(P);_.bufferView=J.bufferViews.length,_.byteOffset=z;let j=P.getElementSize(),k=P.getComponentSize();z+=jQ.padNumber(j*k),X.accessorIndexMap.set(P,J.accessors.length),J.accessors.push(_)}let M=L*z,N=new ArrayBuffer(M),q=new DataView(N);for(let P=0;PS.getCount()/2)q=!0;let p=J7[S.getComponentType()];i.indices=y,i.values=new p(h)}if(!Number.isFinite(N))return{buffers:L,byteLength:z};if(q)G.warn("Some sparse accessors have >50% non-zero elements, which may increase file size.");let w=N<255?Uint8Array:N<65535?Uint16Array:Uint32Array,P=N<255?ruQ:N<65535?suQ:nuQ,_={buffer:H,byteOffset:D+z,byteLength:0};for(let S of V){let v=M.get(S);if(v.count===0)continue;v.indicesByteOffset=_.byteLength;let y=jQ.pad(jQ.toView(new w(v.indices)));L.push(y),z+=y.byteLength,_.byteLength+=y.byteLength}J.bufferViews.push(_);let j=J.bufferViews.length-1,k={buffer:H,byteOffset:D+z,byteLength:0};for(let S of V){let v=M.get(S);if(v.count===0)continue;v.valuesByteOffset=k.byteLength;let y=jQ.pad(jQ.toView(v.values));L.push(y),z+=y.byteLength,k.byteLength+=y.byteLength}J.bufferViews.push(k);let T=J.bufferViews.length-1;for(let S of V){let v=M.get(S);if(v.count===0)continue;v.accessorDef.sparse={count:v.count,indices:{bufferView:j,byteOffset:v.indicesByteOffset,componentType:P},values:{bufferView:T,byteOffset:v.valuesByteOffset}}}return{buffers:L,byteLength:z}}if(J.accessors=[],J.bufferViews=[],J.samplers=[],J.textures=[],J.images=Y.listTextures().map((V,H)=>{let D=X.createPropertyDef(V);if(V.getMimeType())D.mimeType=V.getMimeType();let L=V.getImage();if(L)X.createImageData(D,L,V);return X.imageIndexMap.set(V,H),D}),F.filter((V)=>V.prewriteTypes.includes(YA.ACCESSOR)).forEach((V)=>V.prewrite(X,YA.ACCESSOR)),Y.listAccessors().forEach((V)=>{let{accessorUsageGroupedByParent:H,accessorParents:D}=X;if(X.accessorIndexMap.has(V))return;let L=X.getAccessorUsage(V);if(X.addAccessorToUsageGroup(V,L),H.has(L)){let z=B.listParents(V).find((M)=>M.propertyType!==YA.ROOT);D.set(V,z)}}),F.filter((V)=>V.prewriteTypes.includes(YA.BUFFER)).forEach((V)=>V.prewrite(X,YA.BUFFER)),(Y.listAccessors().length>0||X.otherBufferViews.size>0||Y.listTextures().length>0&&Q.format===Y6.GLB)&&Y.listBuffers().length===0)throw Error("Buffer required for Document resources, but none was found.");if(J.buffers=[],Y.listBuffers().forEach((V,H)=>{let D=X.createPropertyDef(V),L=X.accessorUsageGroupedByParent,z=V.listParents().filter((k)=>k instanceof fA),M=new Set(z.map((k)=>X.accessorParents.get(k))),N=new Map(Array.from(M).map((k,T)=>[k,T])),q={};for(let k of z){var w;if(X.accessorIndexMap.has(k))continue;let T=X.getAccessorUsage(k),S=T;if(L.has(T)){let v=X.accessorParents.get(k);S+=`:${N.get(v)}`}q[w=S]||(q[w]={usage:T,accessors:[]}),q[S].accessors.push(k)}let P=[],_=J.buffers.length,j=0;for(let{usage:k,accessors:T}of Object.values(q))if(k===i2.ARRAY_BUFFER&&Q.vertexLayout===s2.INTERLEAVED){let S=$(T,_,j);j+=S.byteLength;for(let v of S.buffers)P.push(v)}else if(k===i2.ARRAY_BUFFER)for(let S of T){let v=$([S],_,j);j+=v.byteLength;for(let y of v.buffers)P.push(y)}else if(k===i2.SPARSE){let S=E(T,_,j);j+=S.byteLength;for(let v of S.buffers)P.push(v)}else if(k===i2.ELEMENT_ARRAY_BUFFER){let S=W5.BufferViewTarget.ELEMENT_ARRAY_BUFFER,v=U(T,_,j,S);j+=v.byteLength;for(let y of v.buffers)P.push(y)}else{let S=U(T,_,j);j+=S.byteLength;for(let v of S.buffers)P.push(v)}if(X.imageBufferViews.length&&H===0){for(let k=0;k!V.getBuffer()))G.warn("Skipped writing one or more Accessors: no Buffer assigned.");F.filter((V)=>V.prewriteTypes.includes(YA.MATERIAL)).forEach((V)=>V.prewrite(X,YA.MATERIAL)),J.materials=Y.listMaterials().map((V,H)=>{let D=X.createPropertyDef(V);if(V.getAlphaMode()!==y1.AlphaMode.OPAQUE)D.alphaMode=V.getAlphaMode();if(V.getAlphaMode()===y1.AlphaMode.MASK)D.alphaCutoff=V.getAlphaCutoff();if(V.getDoubleSided())D.doubleSided=!0;if(D.pbrMetallicRoughness={},!kQ.eq(V.getBaseColorFactor(),[1,1,1,1]))D.pbrMetallicRoughness.baseColorFactor=V.getBaseColorFactor();if(!kQ.eq(V.getEmissiveFactor(),[0,0,0]))D.emissiveFactor=V.getEmissiveFactor();if(V.getRoughnessFactor()!==1)D.pbrMetallicRoughness.roughnessFactor=V.getRoughnessFactor();if(V.getMetallicFactor()!==1)D.pbrMetallicRoughness.metallicFactor=V.getMetallicFactor();if(V.getBaseColorTexture()){let L=V.getBaseColorTexture(),z=V.getBaseColorTextureInfo();D.pbrMetallicRoughness.baseColorTexture=X.createTextureInfoDef(L,z)}if(V.getEmissiveTexture()){let L=V.getEmissiveTexture(),z=V.getEmissiveTextureInfo();D.emissiveTexture=X.createTextureInfoDef(L,z)}if(V.getNormalTexture()){let L=V.getNormalTexture(),z=V.getNormalTextureInfo(),M=X.createTextureInfoDef(L,z);if(V.getNormalScale()!==1)M.scale=V.getNormalScale();D.normalTexture=M}if(V.getOcclusionTexture()){let L=V.getOcclusionTexture(),z=V.getOcclusionTextureInfo(),M=X.createTextureInfoDef(L,z);if(V.getOcclusionStrength()!==1)M.strength=V.getOcclusionStrength();D.occlusionTexture=M}if(V.getMetallicRoughnessTexture()){let L=V.getMetallicRoughnessTexture(),z=V.getMetallicRoughnessTextureInfo();D.pbrMetallicRoughness.metallicRoughnessTexture=X.createTextureInfoDef(L,z)}return X.materialIndexMap.set(V,H),D}),F.filter((V)=>V.prewriteTypes.includes(YA.MESH)).forEach((V)=>V.prewrite(X,YA.MESH)),J.meshes=Y.listMeshes().map((V,H)=>{let D=X.createPropertyDef(V),L=null;if(D.primitives=V.listPrimitives().map((z)=>{let M={attributes:{}};M.mode=z.getMode();let N=z.getMaterial();if(N)M.material=X.materialIndexMap.get(N);if(Object.keys(z.getExtras()).length)M.extras=z.getExtras();let q=z.getIndices();if(q)M.indices=X.accessorIndexMap.get(q);for(let w of z.listSemantics())M.attributes[w]=X.accessorIndexMap.get(z.getAttribute(w));for(let w of z.listTargets()){let P={};for(let _ of w.listSemantics())P[_]=X.accessorIndexMap.get(w.getAttribute(_));M.targets=M.targets||[],M.targets.push(P)}if(z.listTargets().length&&!L)L=z.listTargets().map((w)=>w.getName());return M}),V.getWeights().length)D.weights=V.getWeights();if(L)D.extras=D.extras||{},D.extras.targetNames=L;return X.meshIndexMap.set(V,H),D}),J.cameras=Y.listCameras().map((V,H)=>{let D=X.createPropertyDef(V);if(D.type=V.getType(),D.type===bF.Type.PERSPECTIVE){D.perspective={znear:V.getZNear(),zfar:V.getZFar(),yfov:V.getYFov()};let L=V.getAspectRatio();if(L!==null)D.perspective.aspectRatio=L}else D.orthographic={znear:V.getZNear(),zfar:V.getZFar(),xmag:V.getXMag(),ymag:V.getYMag()};return X.cameraIndexMap.set(V,H),D}),J.nodes=Y.listNodes().map((V,H)=>{let D=X.createPropertyDef(V);if(!kQ.eq(V.getTranslation(),[0,0,0]))D.translation=V.getTranslation();if(!kQ.eq(V.getRotation(),[0,0,0,1]))D.rotation=V.getRotation();if(!kQ.eq(V.getScale(),[1,1,1]))D.scale=V.getScale();if(V.getWeights().length)D.weights=V.getWeights();return X.nodeIndexMap.set(V,H),D}),J.skins=Y.listSkins().map((V,H)=>{let D=X.createPropertyDef(V),L=V.getInverseBindMatrices();if(L)D.inverseBindMatrices=X.accessorIndexMap.get(L);let z=V.getSkeleton();if(z)D.skeleton=X.nodeIndexMap.get(z);return D.joints=V.listJoints().map((M)=>X.nodeIndexMap.get(M)),X.skinIndexMap.set(V,H),D}),Y.listNodes().forEach((V,H)=>{let D=J.nodes[H],L=V.getMesh();if(L)D.mesh=X.meshIndexMap.get(L);let z=V.getCamera();if(z)D.camera=X.cameraIndexMap.get(z);let M=V.getSkin();if(M)D.skin=X.skinIndexMap.get(M);if(V.listChildren().length>0)D.children=V.listChildren().map((N)=>X.nodeIndexMap.get(N))}),J.animations=Y.listAnimations().map((V,H)=>{let D=X.createPropertyDef(V),L=new Map;return D.samplers=V.listSamplers().map((z,M)=>{let N=X.createPropertyDef(z);return N.input=X.accessorIndexMap.get(z.getInput()),N.output=X.accessorIndexMap.get(z.getOutput()),N.interpolation=z.getInterpolation(),L.set(z,M),N}),D.channels=V.listChannels().map((z)=>{let M=X.createPropertyDef(z);return M.sampler=L.get(z.getSampler()),M.target={node:X.nodeIndexMap.get(z.getTargetNode()),path:z.getTargetPath()},M}),X.animationIndexMap.set(V,H),D}),J.scenes=Y.listScenes().map((V,H)=>{let D=X.createPropertyDef(V);return D.nodes=V.listChildren().map((L)=>X.nodeIndexMap.get(L)),X.sceneIndexMap.set(V,H),D});let I=Y.getDefaultScene();if(I)J.scene=Y.listScenes().indexOf(I);return J.extensionsUsed=F.map((V)=>V.extensionName),J.extensionsRequired=Z.map((V)=>V.extensionName),F.forEach((V)=>V.write(X)),ouQ(J),C}}function ouQ(A){let Q=[];for(let B in A){let Y=A[B];if(Array.isArray(Y)&&Y.length===0)Q.push(B);else if(Y===null||Y==="")Q.push(B);else if(Y&&typeof Y==="object"&&Object.keys(Y).length===0)Q.push(B)}for(let B of Q)delete A[B]}var a2;(function(A){A[A.JSON=1313821514]="JSON",A[A.BIN=5130562]="BIN"})(a2||(a2={}));class pJA{constructor(){this._logger=S9.DEFAULT_INSTANCE,this._extensions=new Set,this._dependencies={},this._vertexLayout=s2.INTERLEAVED,this.lastReadBytes=0,this.lastWriteBytes=0}setLogger(A){return this._logger=A,this}registerExtensions(A){for(let Q of A)this._extensions.add(Q),Q.register();return this}registerDependencies(A){return Object.assign(this._dependencies,A),this}setVertexLayout(A){return this._vertexLayout=A,this}async read(A){return await this.readJSON(await this.readAsJSON(A))}async readAsJSON(A){let Q=await this.readURI(A,"view");this.lastReadBytes=Q.byteLength;let B=gJA(Q)?this._binaryToJSON(Q):{json:JSON.parse(jQ.decodeText(Q)),resources:{}};return await this._readResourcesExternal(B,this.dirname(A)),this._readResourcesInternal(B),B}async readJSON(A){return A=this._copyJSON(A),this._readResourcesInternal(A),cJA.read(A,{extensions:Array.from(this._extensions),dependencies:this._dependencies,logger:this._logger})}async binaryToJSON(A){let Q=this._binaryToJSON(jQ.assertView(A));this._readResourcesInternal(Q);let B=Q.json;if(B.buffers&&B.buffers.some((Y)=>tuQ(Q,Y)))throw Error("Cannot resolve external buffers with binaryToJSON().");else if(B.images&&B.images.some((Y)=>euQ(Q,Y)))throw Error("Cannot resolve external images with binaryToJSON().");return Q}async readBinary(A){return this.readJSON(await this.binaryToJSON(jQ.assertView(A)))}async writeJSON(A,Q={}){if(Q.format===Y6.GLB&&A.getRoot().listBuffers().length>1)throw Error("GLB must have 0–1 buffers.");return lJA.write(A,{format:Q.format||Y6.GLTF,basename:Q.basename||"",logger:this._logger,vertexLayout:this._vertexLayout,dependencies:aJ({},this._dependencies),extensions:Array.from(this._extensions)})}async writeBinary(A){let{json:Q,resources:B}=await this.writeJSON(A,{format:Y6.GLB}),Y=new Uint32Array([1179937895,2,12]),J=JSON.stringify(Q),C=jQ.pad(jQ.encodeText(J),32),X=jQ.toView(new Uint32Array([C.byteLength,1313821514])),G=jQ.concat([X,C]);Y[Y.length-1]+=G.byteLength;let W=Object.values(B)[0];if(!W||!W.byteLength)return jQ.concat([jQ.toView(Y),G]);let F=jQ.pad(W,0),Z=jQ.toView(new Uint32Array([F.byteLength,5130562])),U=jQ.concat([Z,F]);return Y[Y.length-1]+=U.byteLength,jQ.concat([jQ.toView(Y),G,U])}async _readResourcesExternal(A,Q){var B=this;let Y=A.json.images||[],J=A.json.buffers||[],C=[...Y,...J].map(async function(X){let G=X.uri;if(!G||G.match(/data:/))return Promise.resolve();A.resources[G]=await B.readURI(B.resolve(Q,G),"view"),B.lastReadBytes+=A.resources[G].byteLength});await Promise.all(C)}_readResourcesInternal(A){function Q(J){if(!J.uri)return;if(J.uri in A.resources){jQ.assertView(A.resources[J.uri]);return}if(J.uri.match(/data:/)){let C=`__${uJA()}.${J6.extension(J.uri)}`;A.resources[C]=jQ.createBufferFromDataURI(J.uri),J.uri=C}}(A.json.images||[]).forEach((J)=>{if(J.bufferView===void 0&&J.uri===void 0)throw Error("Missing resource URI or buffer view.");Q(J)}),(A.json.buffers||[]).forEach(Q)}_copyJSON(A){let{images:Q,buffers:B}=A.json;if(A={json:aJ({},A.json),resources:aJ({},A.resources)},Q)A.json.images=Q.map((Y)=>aJ({},Y));if(B)A.json.buffers=B.map((Y)=>aJ({},Y));return A}_binaryToJSON(A){if(!gJA(A))throw Error("Invalid glTF 2.0 binary.");let Q=new Uint32Array(A.buffer,A.byteOffset+12,2);if(Q[1]!==a2.JSON)throw Error("Missing required GLB JSON chunk.");let B=20,Y=Q[0],J=jQ.decodeText(jQ.toView(A,B,Y)),C=JSON.parse(J),X=B+Y;if(A.byteLength<=X)return{json:C,resources:{}};let G=new Uint32Array(A.buffer,A.byteOffset+X,2);if(G[1]!==a2.BIN)return{json:C,resources:{}};let W=G[0],F=jQ.toView(A,X+8,W);return{json:C,resources:{[fF]:F}}}}function tuQ(A,Q){return Q.uri!==void 0&&!(Q.uri in A.resources)}function euQ(A,Q){return Q.uri!==void 0&&!(Q.uri in A.resources)&&Q.bufferView===void 0}function gJA(A){if(A.byteLength<3*Uint32Array.BYTES_PER_ELEMENT)return!1;let Q=new Uint32Array(A.buffer,A.byteOffset,3);return Q[0]===1179937895&&Q[1]===2}class n4 extends pJA{constructor(A=null,Q=G5.DEFAULT_INIT){super();this._fetch=void 0,this._fetchConfig=void 0,this._init=void 0,this._fetchEnabled=!1,this._fetch=A,this._fetchConfig=Q,this._init=this.init()}async init(){if(this._init)return this._init;return Promise.all([import("fs"),import("path")]).then(([A,Q])=>{this._fs=A.promises,this._path=Q})}setAllowNetwork(A){if(A&&!this._fetch)throw Error("NodeIO requires a Fetch API implementation for HTTP requests.");return this._fetchEnabled=A,this}async readURI(A,Q){if(await this.init(),G5.isAbsoluteURL(A)){if(!this._fetchEnabled||!this._fetch)throw Error("Network request blocked. Allow HTTP requests explicitly, if needed.");let B=await this._fetch(A,this._fetchConfig);switch(Q){case"view":return new Uint8Array(await B.arrayBuffer());case"text":return B.text()}}else switch(Q){case"view":return this._fs.readFile(A);case"text":return this._fs.readFile(A,"utf8")}}resolve(A,Q){if(G5.isAbsoluteURL(A)||G5.isAbsoluteURL(Q))return G5.resolve(A,Q);return this._path.resolve(A,decodeURIComponent(Q))}dirname(A){if(G5.isAbsoluteURL(A))return G5.dirname(A);return this._path.dirname(A)}async write(A,Q){await this.init(),await(!!A.match(/\.glb$/)?this._writeGLB(A,Q):this._writeGLTF(A,Q))}async _writeGLTF(A,Q){var B=this;this.lastWriteBytes=0;let{json:Y,resources:J}=await this.writeJSON(Q,{format:Y6.GLTF,basename:J6.basename(A)}),{_fs:C,_path:X}=this,G=X.dirname(A),W=JSON.stringify(Y,null,2);await C.writeFile(A,W),this.lastWriteBytes+=W.length;for(let F of AdQ(Object.keys(J),10))await Promise.all(F.map(async function(Z){if(G5.isAbsoluteURL(Z)){if(G5.extension(Z)==="bin")throw Error(`Cannot write buffer to path "${Z}".`);return}let U=X.join(G,decodeURIComponent(Z));await C.mkdir(X.dirname(U),{recursive:!0}),await C.writeFile(U,J[Z]),B.lastWriteBytes+=J[Z].byteLength}))}async _writeGLB(A,Q){let B=await this.writeBinary(Q);await this._fs.writeFile(A,B),this.lastWriteBytes=B.byteLength}}function AdQ(A,Q){let B=[];for(let Y=0,J=A.length;Y{if(!Y.extensions||!Y.extensions[X6])return;let C=Y.extensions[X6],X=this.createInstancedMesh();for(let G in C.attributes)X.setAttribute(G,A.accessors[C.attributes[G]]);A.nodes[J].setExtension(X6,X)}),this}prewrite(A){A.accessorUsageGroupedByParent.add(zg);for(let Q of this.properties)for(let B of Q.listAttributes())A.addAccessorToUsageGroup(B,zg);return this}write(A){let Q=A.jsonDoc;return this.document.getRoot().listNodes().forEach((B)=>{let Y=B.getExtension(X6);if(Y){let J=A.nodeIndexMap.get(B),C=Q.json.nodes[J],X={attributes:{}};Y.listSemantics().forEach((G)=>{let W=Y.getAttribute(G);X.attributes[G]=A.accessorIndexMap.get(W)}),C.extensions=C.extensions||{},C.extensions[X6]=X}}),this}}Y3.EXTENSION_NAME=X6;function L6(){return L6=Object.assign?Object.assign.bind():function(A){for(var Q=1;Q8?8:4,X.componentType=C>8?rJA:YdQ,X.normalized=!0,G=A.getElementSize()===3?WdQ(G):G,X.array=Q.encodeFilterOct(G,A.getCount(),X.byteStride,C);break;case d0.QUATERNION:X.byteStride=8,X.componentType=rJA,X.normalized=!0,X.array=Q.encodeFilterQuat(G,A.getCount(),X.byteStride,C);break;default:throw Error("Invalid filter.")}if(X.min=A.getMin([]),X.max=A.getMax([]),A.getNormalized())X.min=X.min.map((W)=>Rg(W,A.getComponentType())),X.max=X.max.map((W)=>Rg(W,A.getComponentType()));if(X.normalized)X.min=X.min.map((W)=>aJA(W,X.componentType)),X.max=X.max.map((W)=>aJA(W,X.componentType))}else if(X.byteStride%4)X.array=GdQ(X.array,A.getElementSize()),X.byteStride=X.array.byteLength/A.getCount();return X}function XdQ(A){let Q=A.getComponentType(),B=A.getArray(),Y=new Float32Array(B.length);for(let J=0;J{return Y instanceof q0&&Y.getMode()===q0.Mode.TRIANGLES})?r4.TRIANGLES:r4.INDICES;return r4.ATTRIBUTES}function ZdQ(A,Q){let B=Q.getGraph().listParentEdges(A).filter((Y)=>!(Y.getParent()instanceof i4));for(let Y of B){let J=Y.getName(),C=Y.getAttributes().key||"",X=Y.getParent().propertyType===YA.PRIMITIVE_TARGET;if(J==="indices")return{filter:d0.NONE};if(J==="attributes"){if(C==="POSITION")return{filter:d0.NONE};if(C==="TEXCOORD_0")return{filter:d0.NONE};if(C.startsWith("JOINTS_"))return{filter:d0.NONE};if(C.startsWith("WEIGHTS_"))return{filter:d0.NONE};if(C==="NORMAL"||C==="TANGENT")return X?{filter:d0.NONE}:{filter:d0.OCTAHEDRAL,bits:8}}if(J==="output"){let G=W9A(A);if(G==="rotation")return{filter:d0.QUATERNION,bits:16};if(G==="translation")return{filter:d0.EXPONENTIAL,bits:12};if(G==="scale")return{filter:d0.EXPONENTIAL,bits:12};return{filter:d0.NONE}}if(J==="input")return{filter:d0.NONE};if(J==="inverseBindMatrices")return{filter:d0.NONE}}return{filter:d0.NONE}}function W9A(A){for(let Q of A.listParents()){if(!(Q instanceof C7))continue;for(let B of Q.listParents()){if(!(B instanceof C6))continue;return B.getTargetPath()}}return null}var oJA={method:nI.QUANTIZE};class rI extends tB{constructor(...A){super(...A);this.extensionName=CJ,this.prereadTypes=[YA.BUFFER,YA.PRIMITIVE],this.prewriteTypes=[YA.BUFFER,YA.ACCESSOR],this.readDependencies=["meshopt.decoder"],this.writeDependencies=["meshopt.encoder"],this._decoder=null,this._decoderFallbackBufferMap=new Map,this._encoder=null,this._encoderOptions=oJA,this._encoderFallbackBuffer=null,this._encoderBufferViews={},this._encoderBufferViewData={},this._encoderBufferViewAccessors={}}install(A,Q){if(A==="meshopt.decoder")this._decoder=Q;if(A==="meshopt.encoder")this._encoder=Q;return this}setEncoderOptions(A){return this._encoderOptions=L6({},oJA,A),this}preread(A,Q){if(!this._decoder){if(!this.isRequired())return this;throw Error(`[${CJ}] Please install extension dependency, "meshopt.decoder".`)}if(!this._decoder.supported){if(!this.isRequired())return this;throw Error(`[${CJ}]: Missing WASM support.`)}if(Q===YA.BUFFER)this._prereadBuffers(A);else if(Q===YA.PRIMITIVE)this._prereadPrimitives(A);return this}_prereadBuffers(A){let Q=A.jsonDoc;(Q.json.bufferViews||[]).forEach((Y,J)=>{if(!Y.extensions||!Y.extensions[CJ])return;let C=Y.extensions[CJ],X=C.byteOffset||0,G=C.byteLength||0,W=C.count,F=C.byteStride,Z=new Uint8Array(W*F),U=Q.json.buffers[C.buffer],$=U.uri?Q.resources[U.uri]:Q.resources[fF],E=jQ.toView($,X,G);this._decoder.decodeGltfBuffer(Z,W,F,E,C.mode,C.filter),A.bufferViews[J]=Z})}_prereadPrimitives(A){let Q=A.jsonDoc;(Q.json.bufferViews||[]).forEach((Y)=>{if(!Y.extensions||!Y.extensions[CJ])return;let J=Y.extensions[CJ],C=A.buffers[J.buffer],X=A.buffers[Y.buffer],G=Q.json.buffers[Y.buffer];if(BdQ(G))this._decoderFallbackBufferMap.set(X,C)})}read(A){if(!this.isRequired())return this;for(let[Q,B]of this._decoderFallbackBufferMap){for(let Y of Q.listParents())if(Y instanceof fA)Y.swap(Q,B);Q.dispose()}return this}prewrite(A,Q){if(Q===YA.ACCESSOR)this._prewriteAccessors(A);else if(Q===YA.BUFFER)this._prewriteBuffers(A);return this}_prewriteAccessors(A){let Q=A.jsonDoc.json,B=this._encoder,Y=this._encoderOptions,J=this.document.getGraph(),C=this.document.createBuffer(),X=this.document.getRoot().listBuffers().indexOf(C),G=1,W=new Map,F=(Z)=>{for(let U of J.listParents(Z)){if(U.propertyType===YA.ROOT)continue;let $=W.get(Z);if($===void 0)W.set(Z,$=G++);return $}return-1};this._encoderFallbackBuffer=C,this._encoderBufferViews={},this._encoderBufferViewData={},this._encoderBufferViewAccessors={};for(let Z of this.document.getRoot().listAccessors()){if(W9A(Z)==="weights")continue;if(Z.getSparse())continue;let U=A.getAccessorUsage(Z),$=A.accessorUsageGroupedByParent.has(U)?F(Z):null,E=FdQ(Z,U),K=Y.method===nI.FILTER?ZdQ(Z,this.document):{filter:d0.NONE},I=CdQ(Z,B,E,K),{array:V,byteStride:H}=I,D=Z.getBuffer();if(!D)throw Error(`${CJ}: Missing buffer for accessor.`);let L=this.document.getRoot().listBuffers().indexOf(D),z=[U,$,E,K.filter,H,L].join(":"),M=this._encoderBufferViews[z],N=this._encoderBufferViewData[z],q=this._encoderBufferViewAccessors[z];if(!M||!N)q=this._encoderBufferViewAccessors[z]=[],N=this._encoderBufferViewData[z]=[],M=this._encoderBufferViews[z]={buffer:X,target:W5.USAGE_TO_TARGET[U],byteOffset:0,byteLength:0,byteStride:U===W5.BufferViewUsage.ARRAY_BUFFER?H:void 0,extensions:{[CJ]:{buffer:L,byteOffset:0,byteLength:0,mode:E,filter:K.filter!==d0.NONE?K.filter:void 0,byteStride:H,count:0}}};let w=A.createAccessorDef(Z);if(w.componentType=I.componentType,w.normalized=I.normalized,w.byteOffset=M.byteLength,w.min&&I.min)w.min=I.min;if(w.max&&I.max)w.max=I.max;A.accessorIndexMap.set(Z,Q.accessors.length),Q.accessors.push(w),q.push(w),N.push(new Uint8Array(V.buffer,V.byteOffset,V.byteLength)),M.byteLength+=V.byteLength,M.extensions.EXT_meshopt_compression.count+=Z.getCount()}}_prewriteBuffers(A){let Q=this._encoder;for(let B in this._encoderBufferViews){let Y=this._encoderBufferViews[B],J=this._encoderBufferViewData[B],C=this.document.getRoot().listBuffers()[Y.extensions[CJ].buffer],X=A.otherBufferViews.get(C)||[],{count:G,byteStride:W,mode:F}=Y.extensions[CJ],Z=jQ.concat(J),U=Q.encodeGltfBuffer(Z,G,W,F),$=jQ.pad(U);Y.extensions[CJ].byteLength=U.byteLength,J.length=0,J.push($),X.push($),A.otherBufferViews.set(C,X)}}write(A){let Q=0;for(let C in this._encoderBufferViews){let X=this._encoderBufferViews[C],G=this._encoderBufferViewData[C][0],W=A.otherBufferViewsIndexMap.get(G),F=this._encoderBufferViewAccessors[C];for(let E of F)E.bufferView=W;let Z=A.jsonDoc.json.bufferViews[W],U=Z.byteOffset||0;Object.assign(Z,X),Z.byteOffset=Q;let $=Z.extensions[CJ];$.byteOffset=U,Q+=jQ.padNumber(X.byteLength)}let B=this._encoderFallbackBuffer,Y=A.bufferIndexMap.get(B),J=A.jsonDoc.json.buffers[Y];return J.byteLength=Q,J.extensions={[CJ]:{fallback:!0}},B.dispose(),this}}rI.EXTENSION_NAME=CJ;rI.EncoderMethod=nI;class F9A{match(A){return A.length>=12&&jQ.decodeText(A.slice(4,12))==="ftypavif"}getSize(A){if(!this.match(A))return null;let Q=new DataView(A.buffer,A.byteOffset,A.byteLength),B=tJA(Q,0);if(!B)return null;let Y=B.end;while(B=tJA(Q,Y))if(B.type==="meta")Y=B.start+4;else if(B.type==="iprp"||B.type==="ipco")Y=B.start;else if(B.type==="ispe")return[Q.getUint32(B.start+4),Q.getUint32(B.start+8)];else if(B.type==="mdat")break;else Y=B.end;return null}getChannels(A){return 4}}class J3 extends tB{constructor(...A){super(...A);this.extensionName=pI,this.prereadTypes=[YA.TEXTURE]}static register(){F8.registerFormat("image/avif",new F9A)}preread(A){return(A.jsonDoc.json.textures||[]).forEach((B)=>{if(B.extensions&&B.extensions[pI])B.source=B.extensions[pI].source}),this}read(A){return this}write(A){let Q=A.jsonDoc;return this.document.getRoot().listTextures().forEach((B)=>{if(B.getMimeType()==="image/avif"){let Y=A.imageIndexMap.get(B);(Q.json.textures||[]).forEach((C)=>{if(C.source===Y)C.extensions=C.extensions||{},C.extensions[pI]={source:C.source},delete C.source})}}),this}}J3.EXTENSION_NAME=pI;function tJA(A,Q){if(A.byteLength<4+Q)return null;let B=A.getUint32(Q);if(A.byteLength=12&&A[8]===87&&A[9]===69&&A[10]===66&&A[11]===80}getSize(A){let Q=jQ.decodeText(A.slice(0,4)),B=jQ.decodeText(A.slice(8,12));if(Q!=="RIFF"||B!=="WEBP")return null;let Y=new DataView(A.buffer,A.byteOffset),J=12;while(J>6);return[U,$]}J+=8+X+X%2}return null}getChannels(A){return 4}}class C3 extends tB{constructor(...A){super(...A);this.extensionName=lI,this.prereadTypes=[YA.TEXTURE]}static register(){F8.registerFormat("image/webp",new Z9A)}preread(A){return(A.jsonDoc.json.textures||[]).forEach((B)=>{if(B.extensions&&B.extensions[lI])B.source=B.extensions[lI].source}),this}read(A){return this}write(A){let Q=A.jsonDoc;return this.document.getRoot().listTextures().forEach((B)=>{if(B.getMimeType()==="image/webp"){let Y=A.imageIndexMap.get(B);(Q.json.textures||[]).forEach((C)=>{if(C.source===Y)C.extensions=C.extensions||{},C.extensions[lI]={source:C.source},delete C.source})}}),this}}C3.EXTENSION_NAME=lI;var SY,$9A,U9A;function $dQ(A,Q){let B=new SY.DecoderBuffer;try{if(B.Init(Q,Q.length),A.GetEncodedGeometryType(B)!==SY.TRIANGULAR_MESH)throw Error(`[${S0}] Unknown geometry type.`);let J=new SY.Mesh;if(!A.DecodeBufferToMesh(B,J).ok()||J.ptr===0)throw Error(`[${S0}] Decoding failure.`);return J}finally{SY.destroy(B)}}function UdQ(A,Q){let Y=Q.num_faces()*3,J,C;if(Q.num_points()<=65534){let X=Y*Uint16Array.BYTES_PER_ELEMENT;J=SY._malloc(X),A.GetTrianglesUInt16Array(Q,X,J),C=new Uint16Array(SY.HEAPU16.buffer,J,Y).slice()}else{let X=Y*Uint32Array.BYTES_PER_ELEMENT;J=SY._malloc(X),A.GetTrianglesUInt32Array(Q,X,J),C=new Uint32Array(SY.HEAPU32.buffer,J,Y).slice()}return SY._free(J),C}function EdQ(A,Q,B,Y){let J=U9A[Y.componentType],C=$9A[Y.componentType],X=B.num_components(),W=Q.num_points()*X,F=W*C.BYTES_PER_ELEMENT,Z=SY._malloc(F);A.GetAttributeDataArrayForAllPoints(Q,B,J,F,Z);let U=new C(SY.HEAPF32.buffer,Z,W).slice();return SY._free(Z),U}function KdQ(A){SY=A,$9A={[fA.ComponentType.FLOAT]:Float32Array,[fA.ComponentType.UNSIGNED_INT]:Uint32Array,[fA.ComponentType.UNSIGNED_SHORT]:Uint16Array,[fA.ComponentType.UNSIGNED_BYTE]:Uint8Array,[fA.ComponentType.SHORT]:Int16Array,[fA.ComponentType.BYTE]:Int8Array},U9A={[fA.ComponentType.FLOAT]:SY.DT_FLOAT32,[fA.ComponentType.UNSIGNED_INT]:SY.DT_UINT32,[fA.ComponentType.UNSIGNED_SHORT]:SY.DT_UINT16,[fA.ComponentType.UNSIGNED_BYTE]:SY.DT_UINT8,[fA.ComponentType.SHORT]:SY.DT_INT16,[fA.ComponentType.BYTE]:SY.DT_INT8}}var F5,sI;(function(A){A[A.EDGEBREAKER=1]="EDGEBREAKER",A[A.SEQUENTIAL=0]="SEQUENTIAL"})(sI||(sI={}));var U5;(function(A){A.POSITION="POSITION",A.NORMAL="NORMAL",A.COLOR="COLOR",A.TEX_COORD="TEX_COORD",A.GENERIC="GENERIC"})(U5||(U5={}));var E9A={[U5.POSITION]:14,[U5.NORMAL]:10,[U5.COLOR]:8,[U5.TEX_COORD]:12,[U5.GENERIC]:12},eJA={decodeSpeed:5,encodeSpeed:5,method:sI.EDGEBREAKER,quantizationBits:E9A,quantizationVolume:"mesh"};function VdQ(A){F5=A}function IdQ(A,Q=eJA){let B=L6({},eJA,Q);B.quantizationBits=L6({},E9A,Q.quantizationBits);let Y=new F5.MeshBuilder,J=new F5.Mesh,C=new F5.ExpertEncoder(J),X={},G=new F5.DracoInt8Array,W=A.listTargets().length>0,F=!1;for(let I of A.listSemantics()){let V=A.getAttribute(I);if(V.getSparse()){F=!0;continue}let H=HdQ(I),D=DdQ(Y,V.getComponentType(),J,F5[H],V.getCount(),V.getElementSize(),V.getArray());if(D===-1)throw Error(`Error compressing "${I}" attribute.`);if(X[I]=D,B.quantizationVolume==="mesh"||I!=="POSITION")C.SetAttributeQuantization(D,B.quantizationBits[H]);else if(typeof B.quantizationVolume==="object"){let{quantizationVolume:L}=B,z=Math.max(L.max[0]-L.min[0],L.max[1]-L.min[1],L.max[2]-L.min[2]);C.SetAttributeExplicitQuantization(D,B.quantizationBits[H],V.getElementSize(),L.min,z)}else throw Error("Invalid quantization volume state.")}let Z=A.getIndices();if(!Z)throw new Q3("Primitive must have indices.");if(Y.AddFacesToMesh(J,Z.getCount()/3,Z.getArray()),C.SetSpeedOptions(B.encodeSpeed,B.decodeSpeed),C.SetTrackEncodedProperties(!0),B.method===sI.SEQUENTIAL||W||F)C.SetEncodingMethod(F5.MESH_SEQUENTIAL_ENCODING);else C.SetEncodingMethod(F5.MESH_EDGEBREAKER_ENCODING);let U=C.EncodeToDracoBuffer(!(W||F),G);if(U<=0)throw new Q3("Error applying Draco compression.");let $=new Uint8Array(U);for(let I=0;I65534&&fA.getComponentSize(U.componentType)<=2)U.componentType=fA.ComponentType.UNSIGNED_INT;else if(Z.numVertices>254&&fA.getComponentSize(U.componentType)<=1)U.componentType=fA.ComponentType.UNSIGNED_SHORT;for(let E of X.listSemantics()){let K=X.getAttribute(E);if(Z.attributeIDs[E]===void 0)continue;let I=A.createAccessorDef(K);I.count=Z.numVertices,A.accessorIndexMap.set(K,F.length),F.push(I)}let $=X.getAttribute("POSITION").getBuffer()||this.document.getRoot().listBuffers()[0];if(!A.otherBufferViews.has($))A.otherBufferViews.set($,[]);A.otherBufferViews.get($).push(Z.data)}return B.debug(`[${S0}] Compressed ${Y.size} primitives.`),A.extensionData[S0]={primitiveHashMap:Y,primitiveEncodingMap:J},this}write(A){let Q=A.extensionData[S0];for(let B of this.document.getRoot().listMeshes()){let Y=A.jsonDoc.json.meshes[A.meshIndexMap.get(B)];for(let J=0;JY!==S0),B.extensionsRequired=(B.extensionsRequired||[]).filter((Y)=>Y!==S0)}return this}}aI.EXTENSION_NAME=S0;aI.EncoderMethod=sI;function NdQ(A){let Q=A.getLogger(),B=new Set,Y=new Set,J=0,C=0;for(let U of A.getRoot().listMeshes())for(let $ of U.listPrimitives())if(!$.getIndices())Y.add($),J++;else if($.getMode()!==q0.Mode.TRIANGLES)Y.add($),C++;else B.add($);if(J>0)Q.warn(`[${S0}] Skipping Draco compression of ${J} non-indexed primitives.`);if(C>0)Q.warn(`[${S0}] Skipping Draco compression of ${C} non-TRIANGLES primitives.`);let X=A.getRoot().listAccessors(),G=new Map;for(let U=0;UE.propertyType));if($.size!==2||!$.has(YA.PRIMITIVE)||!$.has(YA.ROOT))throw Error(`[${S0}] Compressed accessors must only be used as indices or vertex attributes.`)}for(let U of Array.from(B)){let $=Z.get(U),E=U.getIndices();if(W.get(E)!==$||U.listAttributes().some((K)=>W.get(K)!==$))throw Error(`[${S0}] Draco primitives must share all, or no, accessors.`)}for(let U of Array.from(Y)){let $=U.getIndices();if(W.has($)||U.listAttributes().some((E)=>W.has(E)))throw Error(`[${S0}] Accessor cannot be shared by compressed and uncompressed primitives.`)}return Z}function A9A(A,Q){let B=[],Y=A.getIndices();B.push(Q.get(Y));for(let J of A.listAttributes())B.push(Q.get(J));return B.sort().join("|")}class a4 extends oB{init(){this.extensionName=Z5,this.propertyType="Light",this.parentTypes=[YA.NODE]}getDefaults(){return Object.assign(super.getDefaults(),{color:[1,1,1],intensity:1,type:a4.Type.POINT,range:null,innerConeAngle:0,outerConeAngle:Math.PI/4})}getColor(){return this.get("color")}setColor(A){return this.set("color",A)}getIntensity(){return this.get("intensity")}setIntensity(A){return this.set("intensity",A)}getType(){return this.get("type")}setType(A){return this.set("type",A)}getRange(){return this.get("range")}setRange(A){return this.set("range",A)}getInnerConeAngle(){return this.get("innerConeAngle")}setInnerConeAngle(A){return this.set("innerConeAngle",A)}getOuterConeAngle(){return this.get("outerConeAngle")}setOuterConeAngle(A){return this.set("outerConeAngle",A)}}a4.EXTENSION_NAME=Z5;a4.Type={POINT:"point",SPOT:"spot",DIRECTIONAL:"directional"};class jg extends tB{constructor(...A){super(...A);this.extensionName=Z5}createLight(A=""){return new a4(this.document.getGraph(),A)}read(A){let Q=A.jsonDoc;if(!Q.json.extensions||!Q.json.extensions[Z5])return this;let J=(Q.json.extensions[Z5].lights||[]).map((C)=>{var X,G;let W=this.createLight().setName(C.name||"").setType(C.type);if(C.color!==void 0)W.setColor(C.color);if(C.intensity!==void 0)W.setIntensity(C.intensity);if(C.range!==void 0)W.setRange(C.range);if(((X=C.spot)==null?void 0:X.innerConeAngle)!==void 0)W.setInnerConeAngle(C.spot.innerConeAngle);if(((G=C.spot)==null?void 0:G.outerConeAngle)!==void 0)W.setOuterConeAngle(C.spot.outerConeAngle);return W});return Q.json.nodes.forEach((C,X)=>{if(!C.extensions||!C.extensions[Z5])return;let G=C.extensions[Z5];A.nodes[X].setExtension(Z5,J[G.light])}),this}write(A){let Q=A.jsonDoc;if(this.properties.size===0)return this;let B=[],Y=new Map;for(let J of this.properties){let C=J,X={type:C.getType()};if(!kQ.eq(C.getColor(),[1,1,1]))X.color=C.getColor();if(C.getIntensity()!==1)X.intensity=C.getIntensity();if(C.getRange()!=null)X.range=C.getRange();if(C.getName())X.name=C.getName();if(C.getType()===a4.Type.SPOT)X.spot={innerConeAngle:C.getInnerConeAngle(),outerConeAngle:C.getOuterConeAngle()};B.push(X),Y.set(C,B.length-1)}return this.document.getRoot().listNodes().forEach((J)=>{let C=J.getExtension(Z5);if(C){let X=A.nodeIndexMap.get(J),G=Q.json.nodes[X];G.extensions=G.extensions||{},G.extensions[Z5]={light:Y.get(C)}}}),Q.json.extensions=Q.json.extensions||{},Q.json.extensions[Z5]={lights:B},this}}jg.EXTENSION_NAME=Z5;var{R:LdQ,G:qdQ,B:MdQ}=k9;class Og extends oB{init(){this.extensionName=G6,this.propertyType="Anisotropy",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{anisotropyStrength:0,anisotropyRotation:0,anisotropyTexture:null,anisotropyTextureInfo:new gB(this.graph,"anisotropyTextureInfo")})}getAnisotropyStrength(){return this.get("anisotropyStrength")}setAnisotropyStrength(A){return this.set("anisotropyStrength",A)}getAnisotropyRotation(){return this.get("anisotropyRotation")}setAnisotropyRotation(A){return this.set("anisotropyRotation",A)}getAnisotropyTexture(){return this.getRef("anisotropyTexture")}getAnisotropyTextureInfo(){return this.getRef("anisotropyTexture")?this.getRef("anisotropyTextureInfo"):null}setAnisotropyTexture(A){return this.setRef("anisotropyTexture",A,{channels:LdQ|qdQ|MdQ})}}Og.EXTENSION_NAME=G6;class Pg extends tB{constructor(...A){super(...A);this.extensionName=G6,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createAnisotropy(){return new Og(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[G6]){let X=this.createAnisotropy();A.materials[C].setExtension(G6,X);let G=J.extensions[G6];if(G.anisotropyStrength!==void 0)X.setAnisotropyStrength(G.anisotropyStrength);if(G.anisotropyRotation!==void 0)X.setAnisotropyRotation(G.anisotropyRotation);if(G.anisotropyTexture!==void 0){let W=G.anisotropyTexture,F=A.textures[Y[W.index].source];X.setAnisotropyTexture(F),A.setTextureInfo(X.getAnisotropyTextureInfo(),W)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(G6);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[G6]={};if(Y.getAnisotropyStrength()>0)X.anisotropyStrength=Y.getAnisotropyStrength();if(Y.getAnisotropyRotation()!==0)X.anisotropyRotation=Y.getAnisotropyRotation();if(Y.getAnisotropyTexture()){let G=Y.getAnisotropyTexture(),W=Y.getAnisotropyTextureInfo();X.anisotropyTexture=A.createTextureInfoDef(G,W)}}}),this}}Pg.EXTENSION_NAME=G6;var{R:Q9A,G:B9A,B:zdQ}=k9;class Tg extends oB{init(){this.extensionName=W6,this.propertyType="Clearcoat",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{clearcoatFactor:0,clearcoatTexture:null,clearcoatTextureInfo:new gB(this.graph,"clearcoatTextureInfo"),clearcoatRoughnessFactor:0,clearcoatRoughnessTexture:null,clearcoatRoughnessTextureInfo:new gB(this.graph,"clearcoatRoughnessTextureInfo"),clearcoatNormalScale:1,clearcoatNormalTexture:null,clearcoatNormalTextureInfo:new gB(this.graph,"clearcoatNormalTextureInfo")})}getClearcoatFactor(){return this.get("clearcoatFactor")}setClearcoatFactor(A){return this.set("clearcoatFactor",A)}getClearcoatTexture(){return this.getRef("clearcoatTexture")}getClearcoatTextureInfo(){return this.getRef("clearcoatTexture")?this.getRef("clearcoatTextureInfo"):null}setClearcoatTexture(A){return this.setRef("clearcoatTexture",A,{channels:Q9A})}getClearcoatRoughnessFactor(){return this.get("clearcoatRoughnessFactor")}setClearcoatRoughnessFactor(A){return this.set("clearcoatRoughnessFactor",A)}getClearcoatRoughnessTexture(){return this.getRef("clearcoatRoughnessTexture")}getClearcoatRoughnessTextureInfo(){return this.getRef("clearcoatRoughnessTexture")?this.getRef("clearcoatRoughnessTextureInfo"):null}setClearcoatRoughnessTexture(A){return this.setRef("clearcoatRoughnessTexture",A,{channels:B9A})}getClearcoatNormalScale(){return this.get("clearcoatNormalScale")}setClearcoatNormalScale(A){return this.set("clearcoatNormalScale",A)}getClearcoatNormalTexture(){return this.getRef("clearcoatNormalTexture")}getClearcoatNormalTextureInfo(){return this.getRef("clearcoatNormalTexture")?this.getRef("clearcoatNormalTextureInfo"):null}setClearcoatNormalTexture(A){return this.setRef("clearcoatNormalTexture",A,{channels:Q9A|B9A|zdQ})}}Tg.EXTENSION_NAME=W6;class Sg extends tB{constructor(...A){super(...A);this.extensionName=W6,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createClearcoat(){return new Tg(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[W6]){let X=this.createClearcoat();A.materials[C].setExtension(W6,X);let G=J.extensions[W6];if(G.clearcoatFactor!==void 0)X.setClearcoatFactor(G.clearcoatFactor);if(G.clearcoatRoughnessFactor!==void 0)X.setClearcoatRoughnessFactor(G.clearcoatRoughnessFactor);if(G.clearcoatTexture!==void 0){let W=G.clearcoatTexture,F=A.textures[Y[W.index].source];X.setClearcoatTexture(F),A.setTextureInfo(X.getClearcoatTextureInfo(),W)}if(G.clearcoatRoughnessTexture!==void 0){let W=G.clearcoatRoughnessTexture,F=A.textures[Y[W.index].source];X.setClearcoatRoughnessTexture(F),A.setTextureInfo(X.getClearcoatRoughnessTextureInfo(),W)}if(G.clearcoatNormalTexture!==void 0){let W=G.clearcoatNormalTexture,F=A.textures[Y[W.index].source];if(X.setClearcoatNormalTexture(F),A.setTextureInfo(X.getClearcoatNormalTextureInfo(),W),W.scale!==void 0)X.setClearcoatNormalScale(W.scale)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(W6);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[W6]={clearcoatFactor:Y.getClearcoatFactor(),clearcoatRoughnessFactor:Y.getClearcoatRoughnessFactor()};if(Y.getClearcoatTexture()){let G=Y.getClearcoatTexture(),W=Y.getClearcoatTextureInfo();X.clearcoatTexture=A.createTextureInfoDef(G,W)}if(Y.getClearcoatRoughnessTexture()){let G=Y.getClearcoatRoughnessTexture(),W=Y.getClearcoatRoughnessTextureInfo();X.clearcoatRoughnessTexture=A.createTextureInfoDef(G,W)}if(Y.getClearcoatNormalTexture()){let G=Y.getClearcoatNormalTexture(),W=Y.getClearcoatNormalTextureInfo();if(X.clearcoatNormalTexture=A.createTextureInfoDef(G,W),Y.getClearcoatNormalScale()!==1)X.clearcoatNormalTexture.scale=Y.getClearcoatNormalScale()}}}),this}}Sg.EXTENSION_NAME=W6;var{R:RdQ,G:wdQ,B:jdQ,A:OdQ}=k9;class kg extends oB{init(){this.extensionName=F6,this.propertyType="DiffuseTransmission",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{diffuseTransmissionFactor:0,diffuseTransmissionTexture:null,diffuseTransmissionTextureInfo:new gB(this.graph,"diffuseTransmissionTextureInfo"),diffuseTransmissionColorFactor:[1,1,1],diffuseTransmissionColorTexture:null,diffuseTransmissionColorTextureInfo:new gB(this.graph,"diffuseTransmissionColorTextureInfo")})}getDiffuseTransmissionFactor(){return this.get("diffuseTransmissionFactor")}setDiffuseTransmissionFactor(A){return this.set("diffuseTransmissionFactor",A)}getDiffuseTransmissionTexture(){return this.getRef("diffuseTransmissionTexture")}getDiffuseTransmissionTextureInfo(){return this.getRef("diffuseTransmissionTexture")?this.getRef("diffuseTransmissionTextureInfo"):null}setDiffuseTransmissionTexture(A){return this.setRef("diffuseTransmissionTexture",A,{channels:OdQ})}getDiffuseTransmissionColorFactor(){return this.get("diffuseTransmissionColorFactor")}setDiffuseTransmissionColorFactor(A){return this.set("diffuseTransmissionColorFactor",A)}getDiffuseTransmissionColorTexture(){return this.getRef("diffuseTransmissionColorTexture")}getDiffuseTransmissionColorTextureInfo(){return this.getRef("diffuseTransmissionColorTexture")?this.getRef("diffuseTransmissionColorTextureInfo"):null}setDiffuseTransmissionColorTexture(A){return this.setRef("diffuseTransmissionColorTexture",A,{channels:RdQ|wdQ|jdQ})}}kg.EXTENSION_NAME=F6;class _g extends tB{constructor(...A){super(...A);this.extensionName=F6}createDiffuseTransmission(){return new kg(this.document.getGraph())}read(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[F6]){let X=this.createDiffuseTransmission();A.materials[C].setExtension(F6,X);let G=J.extensions[F6];if(G.diffuseTransmissionFactor!==void 0)X.setDiffuseTransmissionFactor(G.diffuseTransmissionFactor);if(G.diffuseTransmissionColorFactor!==void 0)X.setDiffuseTransmissionColorFactor(G.diffuseTransmissionColorFactor);if(G.diffuseTransmissionTexture!==void 0){let W=G.diffuseTransmissionTexture,F=A.textures[Y[W.index].source];X.setDiffuseTransmissionTexture(F),A.setTextureInfo(X.getDiffuseTransmissionTextureInfo(),W)}if(G.diffuseTransmissionColorTexture!==void 0){let W=G.diffuseTransmissionColorTexture,F=A.textures[Y[W.index].source];X.setDiffuseTransmissionColorTexture(F),A.setTextureInfo(X.getDiffuseTransmissionColorTextureInfo(),W)}}}),this}write(A){let Q=A.jsonDoc;for(let B of this.document.getRoot().listMaterials()){let Y=B.getExtension(F6);if(!Y)continue;let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[F6]={diffuseTransmissionFactor:Y.getDiffuseTransmissionFactor(),diffuseTransmissionColorFactor:Y.getDiffuseTransmissionColorFactor()};if(Y.getDiffuseTransmissionTexture()){let G=Y.getDiffuseTransmissionTexture(),W=Y.getDiffuseTransmissionTextureInfo();X.diffuseTransmissionTexture=A.createTextureInfoDef(G,W)}if(Y.getDiffuseTransmissionColorTexture()){let G=Y.getDiffuseTransmissionColorTexture(),W=Y.getDiffuseTransmissionColorTextureInfo();X.diffuseTransmissionColorTexture=A.createTextureInfoDef(G,W)}}return this}}_g.EXTENSION_NAME=F6;class vg extends oB{init(){this.extensionName=Z6,this.propertyType="Dispersion",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{dispersion:0})}getDispersion(){return this.get("dispersion")}setDispersion(A){return this.set("dispersion",A)}}vg.EXTENSION_NAME=Z6;class yg extends tB{constructor(...A){super(...A);this.extensionName=Z6,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createDispersion(){return new vg(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){return(A.jsonDoc.json.materials||[]).forEach((Y,J)=>{if(Y.extensions&&Y.extensions[Z6]){let C=this.createDispersion();A.materials[J].setExtension(Z6,C);let X=Y.extensions[Z6];if(X.dispersion!==void 0)C.setDispersion(X.dispersion)}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(Z6);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{},C.extensions[Z6]={dispersion:Y.getDispersion()}}}),this}}yg.EXTENSION_NAME=Z6;class gg extends oB{init(){this.extensionName=$6,this.propertyType="EmissiveStrength",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{emissiveStrength:1})}getEmissiveStrength(){return this.get("emissiveStrength")}setEmissiveStrength(A){return this.set("emissiveStrength",A)}}gg.EXTENSION_NAME=$6;class oI extends tB{constructor(...A){super(...A);this.extensionName=$6,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createEmissiveStrength(){return new gg(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){return(A.jsonDoc.json.materials||[]).forEach((Y,J)=>{if(Y.extensions&&Y.extensions[$6]){let C=this.createEmissiveStrength();A.materials[J].setExtension($6,C);let X=Y.extensions[$6];if(X.emissiveStrength!==void 0)C.setEmissiveStrength(X.emissiveStrength)}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension($6);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{},C.extensions[$6]={emissiveStrength:Y.getEmissiveStrength()}}}),this}}oI.EXTENSION_NAME=$6;class hg extends oB{init(){this.extensionName=U6,this.propertyType="IOR",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{ior:1.5})}getIOR(){return this.get("ior")}setIOR(A){return this.set("ior",A)}}hg.EXTENSION_NAME=U6;class X3 extends tB{constructor(...A){super(...A);this.extensionName=U6,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createIOR(){return new hg(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){return(A.jsonDoc.json.materials||[]).forEach((Y,J)=>{if(Y.extensions&&Y.extensions[U6]){let C=this.createIOR();A.materials[J].setExtension(U6,C);let X=Y.extensions[U6];if(X.ior!==void 0)C.setIOR(X.ior)}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(U6);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{},C.extensions[U6]={ior:Y.getIOR()}}}),this}}X3.EXTENSION_NAME=U6;var{R:PdQ,G:TdQ}=k9;class xg extends oB{init(){this.extensionName=E6,this.propertyType="Iridescence",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{iridescenceFactor:0,iridescenceTexture:null,iridescenceTextureInfo:new gB(this.graph,"iridescenceTextureInfo"),iridescenceIOR:1.3,iridescenceThicknessMinimum:100,iridescenceThicknessMaximum:400,iridescenceThicknessTexture:null,iridescenceThicknessTextureInfo:new gB(this.graph,"iridescenceThicknessTextureInfo")})}getIridescenceFactor(){return this.get("iridescenceFactor")}setIridescenceFactor(A){return this.set("iridescenceFactor",A)}getIridescenceTexture(){return this.getRef("iridescenceTexture")}getIridescenceTextureInfo(){return this.getRef("iridescenceTexture")?this.getRef("iridescenceTextureInfo"):null}setIridescenceTexture(A){return this.setRef("iridescenceTexture",A,{channels:PdQ})}getIridescenceIOR(){return this.get("iridescenceIOR")}setIridescenceIOR(A){return this.set("iridescenceIOR",A)}getIridescenceThicknessMinimum(){return this.get("iridescenceThicknessMinimum")}setIridescenceThicknessMinimum(A){return this.set("iridescenceThicknessMinimum",A)}getIridescenceThicknessMaximum(){return this.get("iridescenceThicknessMaximum")}setIridescenceThicknessMaximum(A){return this.set("iridescenceThicknessMaximum",A)}getIridescenceThicknessTexture(){return this.getRef("iridescenceThicknessTexture")}getIridescenceThicknessTextureInfo(){return this.getRef("iridescenceThicknessTexture")?this.getRef("iridescenceThicknessTextureInfo"):null}setIridescenceThicknessTexture(A){return this.setRef("iridescenceThicknessTexture",A,{channels:TdQ})}}xg.EXTENSION_NAME=E6;class fg extends tB{constructor(...A){super(...A);this.extensionName=E6,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createIridescence(){return new xg(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[E6]){let X=this.createIridescence();A.materials[C].setExtension(E6,X);let G=J.extensions[E6];if(G.iridescenceFactor!==void 0)X.setIridescenceFactor(G.iridescenceFactor);if(G.iridescenceIor!==void 0)X.setIridescenceIOR(G.iridescenceIor);if(G.iridescenceThicknessMinimum!==void 0)X.setIridescenceThicknessMinimum(G.iridescenceThicknessMinimum);if(G.iridescenceThicknessMaximum!==void 0)X.setIridescenceThicknessMaximum(G.iridescenceThicknessMaximum);if(G.iridescenceTexture!==void 0){let W=G.iridescenceTexture,F=A.textures[Y[W.index].source];X.setIridescenceTexture(F),A.setTextureInfo(X.getIridescenceTextureInfo(),W)}if(G.iridescenceThicknessTexture!==void 0){let W=G.iridescenceThicknessTexture,F=A.textures[Y[W.index].source];X.setIridescenceThicknessTexture(F),A.setTextureInfo(X.getIridescenceThicknessTextureInfo(),W)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(E6);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[E6]={};if(Y.getIridescenceFactor()>0)X.iridescenceFactor=Y.getIridescenceFactor();if(Y.getIridescenceIOR()!==1.3)X.iridescenceIor=Y.getIridescenceIOR();if(Y.getIridescenceThicknessMinimum()!==100)X.iridescenceThicknessMinimum=Y.getIridescenceThicknessMinimum();if(Y.getIridescenceThicknessMaximum()!==400)X.iridescenceThicknessMaximum=Y.getIridescenceThicknessMaximum();if(Y.getIridescenceTexture()){let G=Y.getIridescenceTexture(),W=Y.getIridescenceTextureInfo();X.iridescenceTexture=A.createTextureInfoDef(G,W)}if(Y.getIridescenceThicknessTexture()){let G=Y.getIridescenceThicknessTexture(),W=Y.getIridescenceThicknessTextureInfo();X.iridescenceThicknessTexture=A.createTextureInfoDef(G,W)}}}),this}}fg.EXTENSION_NAME=E6;var{R:Y9A,G:J9A,B:C9A,A:X9A}=k9;class bg extends oB{init(){this.extensionName=K6,this.propertyType="PBRSpecularGlossiness",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{diffuseFactor:[1,1,1,1],diffuseTexture:null,diffuseTextureInfo:new gB(this.graph,"diffuseTextureInfo"),specularFactor:[1,1,1],glossinessFactor:1,specularGlossinessTexture:null,specularGlossinessTextureInfo:new gB(this.graph,"specularGlossinessTextureInfo")})}getDiffuseFactor(){return this.get("diffuseFactor")}setDiffuseFactor(A){return this.set("diffuseFactor",A)}getDiffuseTexture(){return this.getRef("diffuseTexture")}getDiffuseTextureInfo(){return this.getRef("diffuseTexture")?this.getRef("diffuseTextureInfo"):null}setDiffuseTexture(A){return this.setRef("diffuseTexture",A,{channels:Y9A|J9A|C9A|X9A,isColor:!0})}getSpecularFactor(){return this.get("specularFactor")}setSpecularFactor(A){return this.set("specularFactor",A)}getGlossinessFactor(){return this.get("glossinessFactor")}setGlossinessFactor(A){return this.set("glossinessFactor",A)}getSpecularGlossinessTexture(){return this.getRef("specularGlossinessTexture")}getSpecularGlossinessTextureInfo(){return this.getRef("specularGlossinessTexture")?this.getRef("specularGlossinessTextureInfo"):null}setSpecularGlossinessTexture(A){return this.setRef("specularGlossinessTexture",A,{channels:Y9A|J9A|C9A|X9A})}}bg.EXTENSION_NAME=K6;class G3 extends tB{constructor(...A){super(...A);this.extensionName=K6,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createPBRSpecularGlossiness(){return new bg(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[K6]){let X=this.createPBRSpecularGlossiness();A.materials[C].setExtension(K6,X);let G=J.extensions[K6];if(G.diffuseFactor!==void 0)X.setDiffuseFactor(G.diffuseFactor);if(G.specularFactor!==void 0)X.setSpecularFactor(G.specularFactor);if(G.glossinessFactor!==void 0)X.setGlossinessFactor(G.glossinessFactor);if(G.diffuseTexture!==void 0){let W=G.diffuseTexture,F=A.textures[Y[W.index].source];X.setDiffuseTexture(F),A.setTextureInfo(X.getDiffuseTextureInfo(),W)}if(G.specularGlossinessTexture!==void 0){let W=G.specularGlossinessTexture,F=A.textures[Y[W.index].source];X.setSpecularGlossinessTexture(F),A.setTextureInfo(X.getSpecularGlossinessTextureInfo(),W)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(K6);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[K6]={diffuseFactor:Y.getDiffuseFactor(),specularFactor:Y.getSpecularFactor(),glossinessFactor:Y.getGlossinessFactor()};if(Y.getDiffuseTexture()){let G=Y.getDiffuseTexture(),W=Y.getDiffuseTextureInfo();X.diffuseTexture=A.createTextureInfoDef(G,W)}if(Y.getSpecularGlossinessTexture()){let G=Y.getSpecularGlossinessTexture(),W=Y.getSpecularGlossinessTextureInfo();X.specularGlossinessTexture=A.createTextureInfoDef(G,W)}}}),this}}G3.EXTENSION_NAME=K6;var{R:SdQ,G:kdQ,B:_dQ,A:vdQ}=k9;class mg extends oB{init(){this.extensionName=V6,this.propertyType="Sheen",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{sheenColorFactor:[0,0,0],sheenColorTexture:null,sheenColorTextureInfo:new gB(this.graph,"sheenColorTextureInfo"),sheenRoughnessFactor:0,sheenRoughnessTexture:null,sheenRoughnessTextureInfo:new gB(this.graph,"sheenRoughnessTextureInfo")})}getSheenColorFactor(){return this.get("sheenColorFactor")}setSheenColorFactor(A){return this.set("sheenColorFactor",A)}getSheenColorTexture(){return this.getRef("sheenColorTexture")}getSheenColorTextureInfo(){return this.getRef("sheenColorTexture")?this.getRef("sheenColorTextureInfo"):null}setSheenColorTexture(A){return this.setRef("sheenColorTexture",A,{channels:SdQ|kdQ|_dQ,isColor:!0})}getSheenRoughnessFactor(){return this.get("sheenRoughnessFactor")}setSheenRoughnessFactor(A){return this.set("sheenRoughnessFactor",A)}getSheenRoughnessTexture(){return this.getRef("sheenRoughnessTexture")}getSheenRoughnessTextureInfo(){return this.getRef("sheenRoughnessTexture")?this.getRef("sheenRoughnessTextureInfo"):null}setSheenRoughnessTexture(A){return this.setRef("sheenRoughnessTexture",A,{channels:vdQ})}}mg.EXTENSION_NAME=V6;class ug extends tB{constructor(...A){super(...A);this.extensionName=V6,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createSheen(){return new mg(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[V6]){let X=this.createSheen();A.materials[C].setExtension(V6,X);let G=J.extensions[V6];if(G.sheenColorFactor!==void 0)X.setSheenColorFactor(G.sheenColorFactor);if(G.sheenRoughnessFactor!==void 0)X.setSheenRoughnessFactor(G.sheenRoughnessFactor);if(G.sheenColorTexture!==void 0){let W=G.sheenColorTexture,F=A.textures[Y[W.index].source];X.setSheenColorTexture(F),A.setTextureInfo(X.getSheenColorTextureInfo(),W)}if(G.sheenRoughnessTexture!==void 0){let W=G.sheenRoughnessTexture,F=A.textures[Y[W.index].source];X.setSheenRoughnessTexture(F),A.setTextureInfo(X.getSheenRoughnessTextureInfo(),W)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(V6);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[V6]={sheenColorFactor:Y.getSheenColorFactor(),sheenRoughnessFactor:Y.getSheenRoughnessFactor()};if(Y.getSheenColorTexture()){let G=Y.getSheenColorTexture(),W=Y.getSheenColorTextureInfo();X.sheenColorTexture=A.createTextureInfoDef(G,W)}if(Y.getSheenRoughnessTexture()){let G=Y.getSheenRoughnessTexture(),W=Y.getSheenRoughnessTextureInfo();X.sheenRoughnessTexture=A.createTextureInfoDef(G,W)}}}),this}}ug.EXTENSION_NAME=V6;var{R:ydQ,G:gdQ,B:hdQ,A:xdQ}=k9;class dg extends oB{init(){this.extensionName=I6,this.propertyType="Specular",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{specularFactor:1,specularTexture:null,specularTextureInfo:new gB(this.graph,"specularTextureInfo"),specularColorFactor:[1,1,1],specularColorTexture:null,specularColorTextureInfo:new gB(this.graph,"specularColorTextureInfo")})}getSpecularFactor(){return this.get("specularFactor")}setSpecularFactor(A){return this.set("specularFactor",A)}getSpecularColorFactor(){return this.get("specularColorFactor")}setSpecularColorFactor(A){return this.set("specularColorFactor",A)}getSpecularTexture(){return this.getRef("specularTexture")}getSpecularTextureInfo(){return this.getRef("specularTexture")?this.getRef("specularTextureInfo"):null}setSpecularTexture(A){return this.setRef("specularTexture",A,{channels:xdQ})}getSpecularColorTexture(){return this.getRef("specularColorTexture")}getSpecularColorTextureInfo(){return this.getRef("specularColorTexture")?this.getRef("specularColorTextureInfo"):null}setSpecularColorTexture(A){return this.setRef("specularColorTexture",A,{channels:ydQ|gdQ|hdQ,isColor:!0})}}dg.EXTENSION_NAME=I6;class W3 extends tB{constructor(...A){super(...A);this.extensionName=I6,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createSpecular(){return new dg(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[I6]){let X=this.createSpecular();A.materials[C].setExtension(I6,X);let G=J.extensions[I6];if(G.specularFactor!==void 0)X.setSpecularFactor(G.specularFactor);if(G.specularColorFactor!==void 0)X.setSpecularColorFactor(G.specularColorFactor);if(G.specularTexture!==void 0){let W=G.specularTexture,F=A.textures[Y[W.index].source];X.setSpecularTexture(F),A.setTextureInfo(X.getSpecularTextureInfo(),W)}if(G.specularColorTexture!==void 0){let W=G.specularColorTexture,F=A.textures[Y[W.index].source];X.setSpecularColorTexture(F),A.setTextureInfo(X.getSpecularColorTextureInfo(),W)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(I6);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[I6]={};if(Y.getSpecularFactor()!==1)X.specularFactor=Y.getSpecularFactor();if(!kQ.eq(Y.getSpecularColorFactor(),[1,1,1]))X.specularColorFactor=Y.getSpecularColorFactor();if(Y.getSpecularTexture()){let G=Y.getSpecularTexture(),W=Y.getSpecularTextureInfo();X.specularTexture=A.createTextureInfoDef(G,W)}if(Y.getSpecularColorTexture()){let G=Y.getSpecularColorTexture(),W=Y.getSpecularColorTextureInfo();X.specularColorTexture=A.createTextureInfoDef(G,W)}}}),this}}W3.EXTENSION_NAME=I6;var{R:fdQ}=k9;class cg extends oB{init(){this.extensionName=H6,this.propertyType="Transmission",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{transmissionFactor:0,transmissionTexture:null,transmissionTextureInfo:new gB(this.graph,"transmissionTextureInfo")})}getTransmissionFactor(){return this.get("transmissionFactor")}setTransmissionFactor(A){return this.set("transmissionFactor",A)}getTransmissionTexture(){return this.getRef("transmissionTexture")}getTransmissionTextureInfo(){return this.getRef("transmissionTexture")?this.getRef("transmissionTextureInfo"):null}setTransmissionTexture(A){return this.setRef("transmissionTexture",A,{channels:fdQ})}}cg.EXTENSION_NAME=H6;class lg extends tB{constructor(...A){super(...A);this.extensionName=H6,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createTransmission(){return new cg(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[H6]){let X=this.createTransmission();A.materials[C].setExtension(H6,X);let G=J.extensions[H6];if(G.transmissionFactor!==void 0)X.setTransmissionFactor(G.transmissionFactor);if(G.transmissionTexture!==void 0){let W=G.transmissionTexture,F=A.textures[Y[W.index].source];X.setTransmissionTexture(F),A.setTextureInfo(X.getTransmissionTextureInfo(),W)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(H6);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[H6]={transmissionFactor:Y.getTransmissionFactor()};if(Y.getTransmissionTexture()){let G=Y.getTransmissionTexture(),W=Y.getTransmissionTextureInfo();X.transmissionTexture=A.createTextureInfoDef(G,W)}}}),this}}lg.EXTENSION_NAME=H6;class pg extends oB{init(){this.extensionName=X7,this.propertyType="Unlit",this.parentTypes=[YA.MATERIAL]}}pg.EXTENSION_NAME=X7;class F3 extends tB{constructor(...A){super(...A);this.extensionName=X7,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createUnlit(){return new pg(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){return(A.jsonDoc.json.materials||[]).forEach((B,Y)=>{if(B.extensions&&B.extensions[X7])A.materials[Y].setExtension(X7,this.createUnlit())}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{if(B.getExtension(X7)){let Y=A.materialIndexMap.get(B),J=Q.json.materials[Y];J.extensions=J.extensions||{},J.extensions[X7]={}}}),this}}F3.EXTENSION_NAME=X7;class ig extends oB{init(){this.extensionName=MJ,this.propertyType="Mapping",this.parentTypes=["MappingList"]}getDefaults(){return Object.assign(super.getDefaults(),{material:null,variants:new xB})}getMaterial(){return this.getRef("material")}setMaterial(A){return this.setRef("material",A)}addVariant(A){return this.addRef("variants",A)}removeVariant(A){return this.removeRef("variants",A)}listVariants(){return this.listRefs("variants")}}ig.EXTENSION_NAME=MJ;class ng extends oB{init(){this.extensionName=MJ,this.propertyType="MappingList",this.parentTypes=[YA.PRIMITIVE]}getDefaults(){return Object.assign(super.getDefaults(),{mappings:new xB})}addMapping(A){return this.addRef("mappings",A)}removeMapping(A){return this.removeRef("mappings",A)}listMappings(){return this.listRefs("mappings")}}ng.EXTENSION_NAME=MJ;class B3 extends oB{init(){this.extensionName=MJ,this.propertyType="Variant",this.parentTypes=["MappingList"]}}B3.EXTENSION_NAME=MJ;class sg extends tB{constructor(...A){super(...A);this.extensionName=MJ}createMappingList(){return new ng(this.document.getGraph())}createVariant(A=""){return new B3(this.document.getGraph(),A)}createMapping(){return new ig(this.document.getGraph())}listVariants(){return Array.from(this.properties).filter((A)=>A instanceof B3)}read(A){let Q=A.jsonDoc;if(!Q.json.extensions||!Q.json.extensions[MJ])return this;let J=(Q.json.extensions[MJ].variants||[]).map((X)=>this.createVariant().setName(X.name||""));return(Q.json.meshes||[]).forEach((X,G)=>{let W=A.meshes[G];(X.primitives||[]).forEach((Z,U)=>{if(!Z.extensions||!Z.extensions[MJ])return;let $=this.createMappingList(),E=Z.extensions[MJ];for(let K of E.mappings){let I=this.createMapping();if(K.material!==void 0)I.setMaterial(A.materials[K.material]);for(let V of K.variants||[])I.addVariant(J[V]);$.addMapping(I)}W.listPrimitives()[U].setExtension(MJ,$)})}),this}write(A){let Q=A.jsonDoc,B=this.listVariants();if(!B.length)return this;let Y=[],J=new Map;for(let C of B)J.set(C,Y.length),Y.push(A.createPropertyDef(C));for(let C of this.document.getRoot().listMeshes()){let X=A.meshIndexMap.get(C);C.listPrimitives().forEach((G,W)=>{let F=G.getExtension(MJ);if(!F)return;let Z=A.jsonDoc.json.meshes[X].primitives[W],U=F.listMappings().map(($)=>{let E=A.createPropertyDef($),K=$.getMaterial();if(K)E.material=A.materialIndexMap.get(K);return E.variants=$.listVariants().map((I)=>J.get(I)),E});Z.extensions=Z.extensions||{},Z.extensions[MJ]={mappings:U}})}return Q.json.extensions=Q.json.extensions||{},Q.json.extensions[MJ]={variants:Y},this}}sg.EXTENSION_NAME=MJ;var{G:bdQ}=k9;class rg extends oB{init(){this.extensionName=D6,this.propertyType="Volume",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{thicknessFactor:0,thicknessTexture:null,thicknessTextureInfo:new gB(this.graph,"thicknessTexture"),attenuationDistance:1/0,attenuationColor:[1,1,1]})}getThicknessFactor(){return this.get("thicknessFactor")}setThicknessFactor(A){return this.set("thicknessFactor",A)}getThicknessTexture(){return this.getRef("thicknessTexture")}getThicknessTextureInfo(){return this.getRef("thicknessTexture")?this.getRef("thicknessTextureInfo"):null}setThicknessTexture(A){return this.setRef("thicknessTexture",A,{channels:bdQ})}getAttenuationDistance(){return this.get("attenuationDistance")}setAttenuationDistance(A){return this.set("attenuationDistance",A)}getAttenuationColor(){return this.get("attenuationColor")}setAttenuationColor(A){return this.set("attenuationColor",A)}}rg.EXTENSION_NAME=D6;class ag extends tB{constructor(...A){super(...A);this.extensionName=D6,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createVolume(){return new rg(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[D6]){let X=this.createVolume();A.materials[C].setExtension(D6,X);let G=J.extensions[D6];if(G.thicknessFactor!==void 0)X.setThicknessFactor(G.thicknessFactor);if(G.attenuationDistance!==void 0)X.setAttenuationDistance(G.attenuationDistance);if(G.attenuationColor!==void 0)X.setAttenuationColor(G.attenuationColor);if(G.thicknessTexture!==void 0){let W=G.thicknessTexture,F=A.textures[Y[W.index].source];X.setThicknessTexture(F),A.setTextureInfo(X.getThicknessTextureInfo(),W)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(D6);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[D6]={};if(Y.getThicknessFactor()>0)X.thicknessFactor=Y.getThicknessFactor();if(Number.isFinite(Y.getAttenuationDistance()))X.attenuationDistance=Y.getAttenuationDistance();if(!kQ.eq(Y.getAttenuationColor(),[1,1,1]))X.attenuationColor=Y.getAttenuationColor();if(Y.getThicknessTexture()){let G=Y.getThicknessTexture(),W=Y.getThicknessTextureInfo();X.thicknessTexture=A.createTextureInfoDef(G,W)}}}),this}}ag.EXTENSION_NAME=D6;class tI extends tB{constructor(...A){super(...A);this.extensionName=G9A}read(A){return this}write(A){return this}}tI.EXTENSION_NAME=G9A;class K9A{match(A){return A[0]===171&&A[1]===75&&A[2]===84&&A[3]===88&&A[4]===32&&A[5]===50&&A[6]===48&&A[7]===187&&A[8]===13&&A[9]===10&&A[10]===26&&A[11]===10}getSize(A){let Q=A3(A);return[Q.pixelWidth,Q.pixelHeight]}getChannels(A){let B=A3(A).dataFormatDescriptor[0];if(B.colorModel===nJA)return B.samples.length===2&&(B.samples[1].channelType&15)===15?4:3;else if(B.colorModel===sJA)return(B.samples[0].channelType&15)===3?4:3;throw Error(`Unexpected KTX2 colorModel, "${B.colorModel}".`)}getVRAMByteLength(A){let Q=A3(A),B=this.getChannels(A)>3,Y=0;for(let J=0;J{if(Q.extensions&&Q.extensions[iI]){let B=Q.extensions[iI];Q.source=B.source}}),this}read(A){return this}write(A){let Q=A.jsonDoc;return this.document.getRoot().listTextures().forEach((B)=>{if(B.getMimeType()==="image/ktx2"){let Y=A.imageIndexMap.get(B);Q.json.textures.forEach((J)=>{if(J.source===Y)J.extensions=J.extensions||{},J.extensions[iI]={source:J.source},delete J.source})}}),this}}eI.EXTENSION_NAME=iI;class og extends oB{init(){this.extensionName=N6,this.propertyType="Transform",this.parentTypes=[YA.TEXTURE_INFO]}getDefaults(){return Object.assign(super.getDefaults(),{offset:[0,0],rotation:0,scale:[1,1],texCoord:null})}getOffset(){return this.get("offset")}setOffset(A){return this.set("offset",A)}getRotation(){return this.get("rotation")}setRotation(A){return this.set("rotation",A)}getScale(){return this.get("scale")}setScale(A){return this.set("scale",A)}getTexCoord(){return this.get("texCoord")}setTexCoord(A){return this.set("texCoord",A)}}og.EXTENSION_NAME=N6;class tg extends tB{constructor(...A){super(...A);this.extensionName=N6}createTransform(){return new og(this.document.getGraph())}read(A){for(let[Q,B]of Array.from(A.textureInfos.entries())){if(!B.extensions||!B.extensions[N6])continue;let Y=this.createTransform(),J=B.extensions[N6];if(J.offset!==void 0)Y.setOffset(J.offset);if(J.rotation!==void 0)Y.setRotation(J.rotation);if(J.scale!==void 0)Y.setScale(J.scale);if(J.texCoord!==void 0)Y.setTexCoord(J.texCoord);Q.setExtension(N6,Y)}return this}write(A){let Q=Array.from(A.textureInfoDefMap.entries());for(let[B,Y]of Q){let J=B.getExtension(N6);if(!J)continue;Y.extensions=Y.extensions||{};let C={},X=kQ.eq;if(!X(J.getOffset(),[0,0]))C.offset=J.getOffset();if(J.getRotation()!==0)C.rotation=J.getRotation();if(!X(J.getScale(),[1,1]))C.scale=J.getScale();if(J.getTexCoord()!=null)C.texCoord=J.getTexCoord();Y.extensions[N6]=C}return this}}tg.EXTENSION_NAME=N6;var mdQ=[YA.ROOT,YA.SCENE,YA.NODE,YA.MESH,YA.MATERIAL,YA.TEXTURE,YA.ANIMATION];class eg extends oB{init(){this.extensionName=$5,this.propertyType="Packet",this.parentTypes=mdQ}getDefaults(){return Object.assign(super.getDefaults(),{context:{},properties:{}})}getContext(){return this.get("context")}setContext(A){return this.set("context",L6({},A))}listProperties(){return Object.keys(this.get("properties"))}getProperty(A){let Q=this.get("properties");return A in Q?Q[A]:null}setProperty(A,Q){this._assertContext(A);let B=L6({},this.get("properties"));if(Q)B[A]=Q;else delete B[A];return this.set("properties",B)}toJSONLD(){let A=Mg(this.get("context")),Q=Mg(this.get("properties"));return L6({"@context":A},Q)}fromJSONLD(A){A=Mg(A);let Q=A["@context"];if(Q)this.set("context",Q);return delete A["@context"],this.set("properties",A)}_assertContext(A){if(!(A.split(":")[0]in this.get("context")))throw Error(`${$5}: Missing context for term, "${A}".`)}}eg.EXTENSION_NAME=$5;function Mg(A){return JSON.parse(JSON.stringify(A))}class Ah extends tB{constructor(...A){super(...A);this.extensionName=$5}createPacket(){return new eg(this.document.getGraph())}listPackets(){return Array.from(this.properties)}read(A){var Q;let B=(Q=A.jsonDoc.json.extensions)==null?void 0:Q[$5];if(!B||!B.packets)return this;let Y=A.jsonDoc.json,J=this.document.getRoot(),C=B.packets.map((W)=>this.createPacket().fromJSONLD(W)),X=[[Y.asset],Y.scenes,Y.nodes,Y.meshes,Y.materials,Y.images,Y.animations],G=[[J],J.listScenes(),J.listNodes(),J.listMeshes(),J.listMaterials(),J.listTextures(),J.listAnimations()];for(let W=0;W0)Q.extensions=Q.extensions||{},Q.extensions[$5]={packets:B};return this}}Ah.EXTENSION_NAME=$5;var udQ=[aI,jg,Pg,Sg,_g,yg,oI,X3,fg,G3,W3,ug,lg,F3,sg,ag,tI,eI,tg,Ah],aXY=[Y3,rI,J3,C3,...udQ];var $CA=qA(Qh(),1),UCA=qA(s5A(),1),ynQ=qA(ZCA(),1);async function gnQ(A,Q){if(!(A instanceof Uint8Array))throw Error("[ndarray-pixels] Input must be Uint8Array or Buffer.");let{data:B,info:Y}=await UCA.default(A).ensureAlpha().raw().toBuffer({resolveWithObject:!0});return $CA.default(new Uint8Array(B),[Y.width,Y.height,4],[4,4*Y.width|0,1],0)}async function ECA(A,Q){return gnQ(A)}var hnQ=qA(Qh(),1);function FU(){return FU=Object.assign?Object.assign.bind():function(A){for(var Q=1;QQ?"–":"+",J="%";return Y+(Math.abs(A-Q)/A*100).toFixed(B)+"%"}function h3(A,Q){return`${Th(A)} → ${Th(Q)} (${dnQ(A,Q)})`}function x3(A){let Q=[];for(let B of A.listAttributes())Q.push(B);for(let B of A.listTargets())for(let Y of B.listAttributes())Q.push(Y);return Array.from(new Set(Q))}function cnQ(A,Q,B){A.swap(Q,B);for(let Y of A.listTargets())Y.swap(Q,B)}function vCA(A){let Q=A.getIndices(),B=x3(A);if(A.dispose(),Q&&!Sh(Q))Q.dispose();for(let Y of B)if(!Sh(Y))Y.dispose()}function z6(A,Q){return A.createAccessor(Q.getName()).setArray(Q.getArray()).setType(Q.getType()).setBuffer(Q.getBuffer()).setNormalized(Q.getNormalized()).setSparse(Q.getSparse())}function lnQ(A,Q=A){let B=xh(A,Q);for(let Y=0;YQ.propertyType!==YA.ROOT)}function yCA(A){for(let Q in A)return!1;return!0}function gCA(A){let Q=LJ.fromGraph(A.getGraph()),B=A.getMaterial(),Y=Q.getRoot().listMaterials().indexOf(B),J=inQ[A.getMode()],C=!!A.getIndices(),X=A.listSemantics().sort().map((W)=>{let F=A.getAttribute(W),Z=F.getElementSize(),U=F.getComponentType();return`${W}:${Z}:${U}`}).join("+"),G=A.listTargets().map((W)=>{return W.listSemantics().sort().map((F)=>{let Z=A.getAttribute(F),U=Z.getElementSize(),$=Z.getComponentType();return`${F}:${U}:${$}`}).join("+")}).join("~");return`${Y}|${J}|${C}|${X}|${G}`}function pnQ(A){return Math.pow(2,Math.ceil(Math.log(A)/Math.LN2))}var inQ={[KCA]:KCA,[S3]:S3,[xnQ]:S3,[fnQ]:S3,[k3]:k3,[bnQ]:k3,[mnQ]:k3},GU="center",VCA={pivot:"center"};function hCA(A=VCA){let Q=R6(VCA,A);return iF(GU,(B)=>{let Y=B.getLogger(),J=B.getRoot(),C=J.listAnimations().length>0||J.listSkins().length>0;B.getRoot().listScenes().forEach((X,G)=>{Y.debug(`${GU}: Scene ${G+1} / ${J.listScenes().length}.`);let W;if(typeof Q.pivot==="string"){let Z=dI(X);if(W=[(Z.max[0]-Z.min[0])/2+Z.min[0],(Z.max[1]-Z.min[1])/2+Z.min[1],(Z.max[2]-Z.min[2])/2+Z.min[2]],Q.pivot==="above")W[1]=Z.max[1];if(Q.pivot==="below")W[1]=Z.min[1]}else W=Q.pivot;Y.debug(`${GU}: Pivot "${W.join(", ")}".`);let F=[-1*W[0],-1*W[1],-1*W[2]];if(C){Y.debug(`${GU}: Model contains animation or skin. Adding a wrapper node.`);let Z=B.createNode("Pivot").setTranslation(F);X.listChildren().forEach((U)=>Z.addChild(U)),X.addChild(Z)}else Y.debug(`${GU}: Skipping wrapper, offsetting all root nodes.`),X.listChildren().forEach((Z)=>{let U=Z.getTranslation();Z.setTranslation([U[0]+F[0],U[1]+F[1],U[2]+F[2]])})}),Y.debug(`${GU}: Complete.`)})}function nnQ(A){let Q=new Set,B=A,Y;while(Y=B.getParentNode()){if(Q.has(Y))throw Error("Circular dependency in scene graph.");Q.add(Y),B=Y}return B.listParents().filter((J)=>J instanceof p4)}function snQ(A){let Q=nnQ(A),B=A.getParentNode();if(!B)return A;A.setMatrix(A.getWorldMatrix()),B.removeChild(A);for(let Y of Q)Y.addChild(A);return A}var ZU=typeof Float32Array<"u"?Float32Array:Array;if(!Math.hypot)Math.hypot=function(){var A=0,Q=arguments.length;while(Q--)A+=arguments[Q]*arguments[Q];return Math.sqrt(A)};function rnQ(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Q[4],G=Q[5],W=Q[6],F=Q[7],Z=Q[8],U=Q[9],$=Q[10],E=Q[11],K=Q[12],I=Q[13],V=Q[14],H=Q[15],D=B*G-Y*X,L=B*W-J*X,z=B*F-C*X,M=Y*W-J*G,N=Y*F-C*G,q=J*F-C*W,w=Z*I-U*K,P=Z*V-$*K,_=Z*H-E*K,j=U*V-$*I,k=U*H-E*I,T=$*H-E*V,S=D*T-L*k+z*j+M*_-N*P+q*w;if(!S)return null;return S=1/S,A[0]=(G*T-W*k+F*j)*S,A[1]=(J*k-Y*T-C*j)*S,A[2]=(I*q-V*N+H*M)*S,A[3]=($*N-U*q-E*M)*S,A[4]=(W*_-X*T-F*P)*S,A[5]=(B*T-J*_+C*P)*S,A[6]=(V*z-K*q-H*L)*S,A[7]=(Z*q-$*z+E*L)*S,A[8]=(X*k-G*_+F*w)*S,A[9]=(Y*_-B*k-C*w)*S,A[10]=(K*N-I*z+H*D)*S,A[11]=(U*z-Z*N-E*D)*S,A[12]=(G*P-X*j-W*w)*S,A[13]=(B*j-Y*P+J*w)*S,A[14]=(I*L-K*M-V*D)*S,A[15]=(Z*M-U*L+$*D)*S,A}function anQ(A){var Q=A[0],B=A[1],Y=A[2],J=A[3],C=A[4],X=A[5],G=A[6],W=A[7],F=A[8],Z=A[9],U=A[10],$=A[11],E=A[12],K=A[13],I=A[14],V=A[15],H=Q*X-B*C,D=Q*G-Y*C,L=Q*W-J*C,z=B*G-Y*X,M=B*W-J*X,N=Y*W-J*G,q=F*K-Z*E,w=F*I-U*E,P=F*V-$*E,_=Z*I-U*K,j=Z*V-$*K,k=U*V-$*I;return H*k-D*j+L*_+z*P-M*w+N*q}function xCA(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],W=Q[5],F=Q[6],Z=Q[7],U=Q[8],$=Q[9],E=Q[10],K=Q[11],I=Q[12],V=Q[13],H=Q[14],D=Q[15],L=B[0],z=B[1],M=B[2],N=B[3];return A[0]=L*Y+z*G+M*U+N*I,A[1]=L*J+z*W+M*$+N*V,A[2]=L*C+z*F+M*E+N*H,A[3]=L*X+z*Z+M*K+N*D,L=B[4],z=B[5],M=B[6],N=B[7],A[4]=L*Y+z*G+M*U+N*I,A[5]=L*J+z*W+M*$+N*V,A[6]=L*C+z*F+M*E+N*H,A[7]=L*X+z*Z+M*K+N*D,L=B[8],z=B[9],M=B[10],N=B[11],A[8]=L*Y+z*G+M*U+N*I,A[9]=L*J+z*W+M*$+N*V,A[10]=L*C+z*F+M*E+N*H,A[11]=L*X+z*Z+M*K+N*D,L=B[12],z=B[13],M=B[14],N=B[15],A[12]=L*Y+z*G+M*U+N*I,A[13]=L*J+z*W+M*$+N*V,A[14]=L*C+z*F+M*E+N*H,A[15]=L*X+z*Z+M*K+N*D,A}var zJ;(function(A){A.RENDER="render",A.RENDER_CACHED="render-cached",A.UPLOAD="upload",A.UPLOAD_NAIVE="upload-naive",A.DISTINCT="distinct",A.DISTINCT_POSITION="distinct-position",A.UNUSED="unused"})(zJ||(zJ={}));function pF(A,Q){let B=A.getAttribute("POSITION"),Y=A.getIndices();switch(Q){case zJ.RENDER:return Y?Y.getCount():B.getCount();case zJ.RENDER_CACHED:return Y?new Set(Y.getArray()).size:B.getCount();case zJ.UPLOAD_NAIVE:case zJ.UPLOAD:return B.getCount();case zJ.DISTINCT:case zJ.DISTINCT_POSITION:return onQ(Q);case zJ.UNUSED:return Y?B.getCount()-new Set(Y.getArray()).size:0;default:return tnQ(Q)}}function onQ(A){throw Error(`Not implemented: ${A}`)}function tnQ(A){throw Error(`Unexpected value: ${A}`)}var U7=4294967295;class fCA{constructor(A){this.attributes=[],this.u8=void 0,this.u32=void 0;let Q=0;for(let B of x3(A))Q+=this._initAttribute(B);this.u8=new Uint8Array(Q),this.u32=new Uint32Array(this.u8.buffer)}_initAttribute(A){let Q=A.getArray(),B=new Uint8Array(Q.buffer,Q.byteOffset,Q.byteLength),Y=A.getElementSize()*A.getComponentSize(),J=jQ.padNumber(Y);return this.attributes.push({u8:B,byteStride:Y,paddedByteStride:J}),J}hash(A){let Q=0;for(let{u8:B,byteStride:Y,paddedByteStride:J}of this.attributes){for(let C=0;C>>0,X=(X^X>>24)>>>0,X=Math.imul(X,1540483477)>>>0,A=Math.imul(A,1540483477)>>>0,A=(A^X)>>>0}return A}function AsQ(A,Q,B,Y,J=U7){let C=Q-1,G=B.hash(Y)&C;for(let W=0;W<=C;W++){let F=A[G];if(F===J||B.equal(F,Y))return G;G=G+W+1&C}throw Error("Hash table full.")}function UH(A,Q,B){let Y=LJ.fromGraph(A.getGraph());if(!Q||!B)[Q,B]=QsQ(A);let J=A.getIndices(),C=J?J.getArray():null,X=pF(A,zJ.RENDER),G=Y.createAccessor(),W=X,F=xh(W,B);for(let U=0;U0)C=1/Math.sqrt(C);return A[0]=Q[0]*C,A[1]=Q[1]*C,A[2]=Q[2]*C,A}function GsQ(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=B[3]*Y+B[7]*J+B[11]*C+B[15];return X=X||1,A[0]=(B[0]*Y+B[4]*J+B[8]*C+B[12])/X,A[1]=(B[1]*Y+B[5]*J+B[9]*C+B[13])/X,A[2]=(B[2]*Y+B[6]*J+B[10]*C+B[14])/X,A}function WsQ(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2];return A[0]=Y*B[0]+J*B[3]+C*B[6],A[1]=Y*B[1]+J*B[4]+C*B[7],A[2]=Y*B[2]+J*B[5]+C*B[8],A}var FsQ=XsQ;(function(){var A=f3();return function(Q,B,Y,J,C,X){var G,W;if(!B)B=3;if(!Y)Y=0;if(J)W=Math.min(J*B+Y,Q.length);else W=Q.length;for(G=Y;G{let Y=B.getLogger();for(let J of B.getRoot().listMeshes()){for(let C of J.listPrimitives())if(b3(C,Q),pF(C,zJ.RENDER)===0)vCA(C);if(J.listPrimitives().length===0)J.dispose()}Y.debug(`${_h}: Complete.`)})}function b3(A,Q=v3){let B=A.getGraph(),J=LJ.fromGraph(B).getLogger(),C=FU({},v3,Q);if(A.getIndices()&&!C.overwrite)return;if(A.getMode()===q0.Mode.POINTS)return;let X=A.getAttribute("POSITION").getCount(),G=A.getIndices(),W=G==null?void 0:G.getArray(),F=G?G.getCount():X,Z=new fCA(A),U=pnQ(X+X/4),$=new Uint32Array(U).fill(U7),E=new Uint32Array(X).fill(U7),K=0;for(let I=0;IY instanceof cI&&Y!==Q))A=A.clone();for(let Y of A.listTargets())if(Y.listParents().some((C)=>C instanceof q0&&C!==A))A.removeTarget(Y).addTarget(Y.clone());return A}var NCA=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function uCA(A){let Q=A.getMesh(),B=A.getMatrix();if(Q&&!kQ.eq(B,NCA))UsQ(Q,B);for(let Y of A.listChildren()){let J=Y.getMatrix();xCA(J,J,B),Y.setMatrix(J)}return A.setMatrix(NCA)}var{LINES:KsQ,LINE_STRIP:VsQ,LINE_LOOP:IsQ,TRIANGLES:HsQ,TRIANGLE_STRIP:DsQ,TRIANGLE_FAN:NsQ}=q0.Mode;function LsQ(A){let Q=A.getGraph(),B=LJ.fromGraph(Q);if(!A.getIndices())b3(A);let Y=A.getIndices(),J=Y.getArray(),C=_CA(A),G=new J7[Y.getComponentType()](C*2),W=A.getMode();if(W===VsQ)for(let Z=0;ZZ!==F&&Z!==A))A.setIndices(z6(B,Y).setArray(G));else Y.setArray(G)}function dCA(A){let Q=A.getGraph(),B=LJ.fromGraph(Q);if(!A.getIndices())b3(A);let Y=A.getIndices(),J=Y.getArray(),C=_CA(A),G=new J7[Y.getComponentType()](C*3),W=A.getMode();if(W===DsQ)for(let Z=0,U=J.length;ZZ!==F&&Z!==A))A.setIndices(z6(B,Y).setArray(G));else Y.setArray(G)}var JGY={keepUniqueNames:!1,propertyTypes:[YA.ACCESSOR,YA.MESH,YA.TEXTURE,YA.MATERIAL,YA.SKIN]};var LCA="dequantize",y3={pattern:/^((?!JOINTS_).)*$/};function cCA(A=y3){let Q=R6(y3,A);return iF(LCA,(B)=>{let Y=B.getLogger();for(let J of B.getRoot().listMeshes())for(let C of J.listPrimitives())qsQ(C,Q);B.createExtension(tI).dispose(),Y.debug(`${LCA}: Complete.`)})}function qsQ(A,Q=y3){let B=R6(y3,Q);for(let Y of A.listSemantics())if(B.pattern.test(Y))vh(A.getAttribute(Y));for(let Y of A.listTargets())for(let J of Y.listSemantics())if(B.pattern.test(J))vh(Y.getAttribute(J))}function vh(A){let Q=A.getArray();if(!Q)return;let B=g3(Q,A.getComponentType(),A.getNormalized());A.setArray(B).setNormalized(!1)}function g3(A,Q,B){let Y=new Float32Array(A.length);for(let J=0,C=A.length;J{if(Y.propertyType===lCA)return Y;let J=B.get(Y);if(!J)J=new Y.constructor(A.getGraph()),B.set(Y,J);return J}}function RsQ(A){let Q=new Set;for(let B of A.getGraph().listEdges())Q.add(B.getChild());return Array.from(Q)}function iCA(){var A=new ZU(4);if(ZU!=Float32Array)A[0]=0,A[1]=0,A[2]=0,A[3]=0;return A}function wsQ(A,Q,B){return A[0]=Q[0]+B[0],A[1]=Q[1]+B[1],A[2]=Q[2]+B[2],A[3]=Q[3]+B[3],A}function jsQ(A,Q,B){return A[0]=Q[0]-B[0],A[1]=Q[1]-B[1],A[2]=Q[2]-B[2],A[3]=Q[3]-B[3],A}function OsQ(A,Q,B){return A[0]=Q[0]*B[0],A[1]=Q[1]*B[1],A[2]=Q[2]*B[2],A[3]=Q[3]*B[3],A}function PsQ(A,Q,B){return A[0]=Q[0]*B,A[1]=Q[1]*B,A[2]=Q[2]*B,A[3]=Q[3]*B,A}function TsQ(A){var Q=A[0],B=A[1],Y=A[2],J=A[3];return Math.hypot(Q,B,Y,J)}var nCA=jsQ,SsQ=OsQ,sCA=TsQ;(function(){var A=iCA();return function(Q,B,Y,J,C,X){var G,W;if(!B)B=4;if(!Y)Y=0;if(J)W=Math.min(J*B+Y,Q.length);else W=Q.length;for(G=Y;G{return J.getAttributes().isColor||ksQ.test(J.getName())})?"srgb":null}function vsQ(A){let Q=A.getGraph(),B=new Set,Y=new Set;function J(C){let X=new Set;for(let G of Q.listChildEdges(C))if(G.getChild()instanceof mF)X.add(G.getName()+"Info");for(let G of Q.listChildEdges(C)){let W=G.getChild();if(B.has(W))continue;if(B.add(W),W instanceof gB&&X.has(G.getName()))Y.add(W);else if(W instanceof oB)J(W)}}return J(A),Array.from(Y)}function ysQ(A){let B=LJ.fromGraph(A.getGraph()).getRoot(),Y=A.getGraph().listParentEdges(A).filter((J)=>J.getParent()!==B).map((J)=>J.getName());return Array.from(new Set(Y))}var WU="prune",yh=0.011764705882352941,qCA={propertyTypes:[YA.NODE,YA.SKIN,YA.MESH,YA.CAMERA,YA.PRIMITIVE,YA.PRIMITIVE_TARGET,YA.ANIMATION,YA.MATERIAL,YA.TEXTURE,YA.ACCESSOR,YA.BUFFER],keepLeaves:!1,keepAttributes:!1,keepIndices:!1,keepSolidTextures:!1,keepExtras:!1};function m3(A=qCA){let Q=R6(qCA,A),B=new Set(Q.propertyTypes),Y=Q.keepExtras;return iF(WU,async(J)=>{let C=J.getLogger(),X=J.getRoot(),G=J.getGraph(),W=new rCA,F=(Z)=>W.dispose(Z.target);if(G.addEventListener("node:dispose",F),B.has(YA.MESH))for(let Z of X.listMeshes()){if(Z.listPrimitives().length>0)continue;Z.dispose()}if(B.has(YA.NODE)){if(!Q.keepLeaves)for(let Z of X.listScenes())aCA(G,Z,Y);for(let Z of X.listNodes())K5(Z,Y)}if(B.has(YA.SKIN))for(let Z of X.listSkins())K5(Z,Y);if(B.has(YA.MESH))for(let Z of X.listMeshes())K5(Z,Y);if(B.has(YA.CAMERA))for(let Z of X.listCameras())K5(Z,Y);if(B.has(YA.PRIMITIVE))MCA(G,YA.PRIMITIVE,Y);if(B.has(YA.PRIMITIVE_TARGET))MCA(G,YA.PRIMITIVE_TARGET,Y);if(!Q.keepAttributes&&B.has(YA.ACCESSOR)){let Z=new Map;for(let U of X.listMeshes())for(let $ of U.listPrimitives()){let E=$.getMaterial();if(!E)continue;let K=oCA(J,$,E),I=gsQ($,K);zCA($,I),$.listTargets().forEach((V)=>zCA(V,I)),Z.has(E)?Z.get(E).add($):Z.set(E,new Set([$]))}for(let[U,$]of Z)hsQ(U,Array.from($))}if(B.has(YA.ANIMATION))for(let Z of X.listAnimations()){for(let U of Z.listChannels())if(!U.getTargetNode())U.dispose();if(!Z.listChannels().length){let U=Z.listSamplers();K5(Z,Y),U.forEach(($)=>K5($,Y))}else Z.listSamplers().forEach((U)=>K5(U,Y))}if(B.has(YA.MATERIAL))X.listMaterials().forEach((Z)=>K5(Z,Y));if(B.has(YA.TEXTURE)){if(X.listTextures().forEach((Z)=>K5(Z,Y)),!Q.keepSolidTextures)await xsQ(J)}if(B.has(YA.ACCESSOR))X.listAccessors().forEach((Z)=>K5(Z,Y));if(B.has(YA.BUFFER))X.listBuffers().forEach((Z)=>K5(Z,Y));if(G.removeEventListener("node:dispose",F),!W.empty()){let Z=W.entries().map(([U,$])=>`${U} (${$})`).join(", ");C.info(`${WU}: Removed types... ${Z}`)}else C.debug(`${WU}: No unused properties found.`);C.debug(`${WU}: Complete.`)})}class rCA{constructor(){this.disposed={}}empty(){for(let A in this.disposed)return!1;return!0}entries(){return Object.entries(this.disposed)}dispose(A){this.disposed[A.propertyType]=this.disposed[A.propertyType]||0,this.disposed[A.propertyType]++}}function K5(A,Q){let B=A.listParents().filter((J)=>!(J instanceof i4||J instanceof C6)),Y=Q&&!yCA(A.getExtras());if(!B.length&&!Y)A.dispose()}function MCA(A,Q,B){for(let Y of A.listEdges()){let J=Y.getParent();if(J.propertyType===Q)K5(J,B)}}function aCA(A,Q,B){if(Q.listChildren().forEach((X)=>aCA(A,X,B)),Q instanceof p4)return;let Y=A.listParentEdges(Q).some((X)=>{let G=X.getParent().propertyType;return G!==YA.ROOT&&G!==YA.SCENE&&G!==YA.NODE}),J=A.listChildren(Q).length===0,C=B&&!yCA(Q.getExtras());if(J&&!Y&&!C)Q.dispose()}function zCA(A,Q){for(let B of Q)A.setAttribute(B,null)}function gsQ(A,Q){let B=[];for(let Y of A.listSemantics())if(Y==="NORMAL"&&!Q.has(Y))B.push(Y);else if(Y==="TANGENT"&&!Q.has(Y))B.push(Y);else if(Y.startsWith("TEXCOORD_")&&!Q.has(Y))B.push(Y);else if(Y.startsWith("COLOR_")&&Y!=="COLOR_0")B.push(Y);return B}function oCA(A,Q,B,Y=new Set){let C=A.getGraph().listChildEdges(B),X=new Set;for(let F of C)if(F.getChild()instanceof mF)X.add(F.getName());for(let F of C){let Z=F.getName(),U=F.getChild();if(U instanceof gB){if(X.has(Z.replace(/Info$/,"")))Y.add(`TEXCOORD_${U.getTexCoord()}`)}if(U instanceof mF&&Z.match(/normalTexture/i))Y.add("TANGENT");if(U instanceof oB)oCA(A,Q,U,Y)}let G=B instanceof y1&&!B.getExtension("KHR_materials_unlit"),W=Q.getMode()===q0.Mode.POINTS;if(G&&!W)Y.add("NORMAL");return Y}function hsQ(A,Q){let B=vsQ(A),Y=new Set(B.map((W)=>W.getTexCoord())),J=Array.from(Y).sort(),C=new Map(J.map((W,F)=>[W,F])),X=new Map(J.map((W,F)=>[`TEXCOORD_${W}`,`TEXCOORD_${F}`]));for(let W of B){let F=W.getTexCoord();W.setTexCoord(C.get(F))}for(let W of Q){let F=W.listSemantics().filter((Z)=>Z.startsWith("TEXCOORD_")).sort();G(W,F),W.listTargets().forEach((Z)=>G(Z,F))}function G(W,F){for(let Z of F){let U=W.getAttribute(Z);if(!U)continue;let $=X.get(Z);if($===Z)continue;W.setAttribute($,U),W.setAttribute(Z,null)}}}async function xsQ(A){let Q=A.getRoot(),B=A.getGraph(),Y=A.getLogger(),C=Q.listTextures().map(async(X)=>{var G;let W=await bsQ(X);if(!W)return;if(_sQ(X)==="srgb")Hg.convertSRGBToLinear(W,W);let F=X.getName()||X.getURI(),Z=(G=X.getSize())==null?void 0:G.join("x"),U=ysQ(X);for(let $ of B.listParentEdges(X)){let E=$.getParent();if(E!==Q&&fsQ(E,W,$.getName(),Y))$.dispose()}if(X.listParents().length===1)X.dispose(),Y.debug(`${WU}: Removed solid-color texture "${F}" (${Z}px ${U.join(", ")})`)});await Promise.all(C)}function fsQ(A,Q,B,Y){if(A instanceof y1)switch(B){case"baseColorTexture":return A.setBaseColorFactor(SsQ(Q,Q,A.getBaseColorFactor())),!0;case"emissiveTexture":return A.setEmissiveFactor(FsQ([0,0,0],Q.slice(0,3),A.getEmissiveFactor())),!0;case"occlusionTexture":return Math.abs(Q[0]-1)<=yh;case"metallicRoughnessTexture":return A.setRoughnessFactor(Q[1]*A.getRoughnessFactor()),A.setMetallicFactor(Q[2]*A.getMetallicFactor()),!0;case"normalTexture":return sCA(nCA(iCA(),Q,[0.5,0.5,1,1]))<=yh}return Y.warn(`${WU}: Detected single-color ${B} texture. Pruning ${B} not yet supported.`),!1}async function bsQ(A){let Q=await msQ(A);if(!Q)return null;let B=[1/0,1/0,1/0,1/0],Y=[-1/0,-1/0,-1/0,-1/0],J=[0,0,0,0],[C,X]=Q.shape;for(let G=0;Gyh)return null}return PsQ(J,wsQ(J,Y,B),0.00196078431372549)}async function msQ(A){try{return await ECA(A.getImage(),A.getMimeType())}catch(Q){return null}}var Oh="flatten",RCA={cleanup:!0};function mh(A=RCA){let Q=R6(RCA,A);return iF(Oh,async(B)=>{let Y=B.getRoot(),J=B.getLogger(),C=new Set;for(let F of Y.listSkins())for(let Z of F.listJoints())C.add(Z);let X=new Set;for(let F of Y.listAnimations())for(let Z of F.listChannels()){let U=Z.getTargetNode();if(U&&Z.getTargetPath()!=="weights")X.add(U)}let G=new Set,W=new Set;for(let F of Y.listScenes())F.traverse((Z)=>{let U=Z.getParentNode();if(!U)return;if(C.has(U)||G.has(U))G.add(Z);if(X.has(U)||W.has(U))W.add(Z)});for(let F of Y.listScenes())F.traverse((Z)=>{if(X.has(Z))return;if(G.has(Z))return;if(W.has(Z))return;snQ(Z)});if(X.size)J.debug(`${Oh}: Flattening node hierarchies with TRS animation not yet supported.`);if(Q.cleanup)await B.transform(m3({propertyTypes:[YA.NODE],keepLeaves:!1}));J.debug(`${Oh}: Complete.`)})}function tCA(A){return dI(A)}var usQ={skipValidation:!1},wCA=4294967295,{LINE_STRIP:dsQ,LINE_LOOP:csQ,TRIANGLE_STRIP:lsQ,TRIANGLE_FAN:psQ}=q0.Mode;function isQ(A,Q={}){let B=R6(usQ,Q),Y=A[0],J=LJ.fromGraph(Y.getGraph());if(!B.skipValidation&&new Set(A.map(gCA)).size>1)throw Error("Requires >=2 Primitives, sharing the same Material and Mode, with compatible vertex attributes and indices.");for(let E of A)switch(E.getMode()){case dsQ:case csQ:LsQ(E);break;case lsQ:case psQ:dCA(E);break}let C=[],X=new Uint32Array(A.length),G=0,W=0;for(let E=0;E!0};function uh(A=jCA){let Q=R6(jCA,A);return iF(gh,async(B)=>{let Y=B.getRoot(),J=B.getLogger();for(let C of Y.listScenes())OCA(B,C,Q),C.traverse((X)=>OCA(B,X,Q));if(Q.cleanup)await B.transform(m3({propertyTypes:[asQ,osQ,tsQ,esQ],keepAttributes:!0,keepIndices:!0,keepLeaves:!1}));J.debug(`${gh}: Complete.`)})}function OCA(A,Q,B){let Y=A.getLogger(),J={},C=Q.listChildren();for(let W=0;W$ instanceof C6))continue;let U=F.getMesh();if(!U)continue;if(F.getExtension("EXT_mesh_gpu_instancing"))continue;if(F.getSkin())continue;for(let $ of U.listPrimitives()){if($.listTargets().length>0)continue;let E=$.getMaterial();if(E&&E.getExtension("KHR_materials_volume"))continue;UH($),QrQ($);let K=gCA($),I=U.getName()||F.getName();if(B.keepMeshes||B.keepNamed&&I)K+=`|${W}`;if(!(K in J))J[K]={prims:[],primMeshes:[],primNodes:[],dstNode:F,dstMesh:void 0};let V=J[K];V.prims.push($),V.primNodes.push(F)}}let X=Object.values(J).filter(({prims:W})=>W.length>1),G=new Set(X.flatMap((W)=>W.primNodes));for(let W of G){let F=W.getMesh();if(F.listParents().some((U)=>{return U.propertyType!==rsQ&&W!==U}))W.setMesh(F.clone())}for(let W of X){let{dstNode:F,primNodes:Z}=W;W.dstMesh=F.getMesh(),W.primMeshes=Z.map((U)=>U.getMesh())}for(let W of X){let{prims:F,primNodes:Z,primMeshes:U,dstNode:$,dstMesh:E}=W,K=$.getMatrix();for(let H=0;H=Math.PI}else if(B==="lerp"){let H=WrQ(C,W,G,I);V=!_3(X,H,Y)}else if(B==="step")V=!_3(X,W)||!_3(X,G)}if(V){if(U!==Z)A[Z]=A[U],SCA(Q,Z,$H(Q,U,C));Z++}}if(F>0)A[Z]=A[F],SCA(Q,Z,$H(Q,F,C)),Z++;return Z}function $H(A,Q,B){for(let Y=0,J=B.length;YB)return!1;return!0}function GrQ(A,Q,B){return A*(1-B)+Q*B}function WrQ(A,Q,B,Y){for(let J=0;JCrQ)$=Math.acos(E),K=Math.sin($),I=Math.sin((1-Y)*$)/K,V=Math.sin(Y*$)/K;else I=1-Y,V=Y;return A[0]=I*J+V*W,A[1]=I*C+V*F,A[2]=I*X+V*Z,A[3]=I*G+V*U,A}function kCA(A,Q){let B=ZrQ(A,Q);return Math.acos(2*B*B-1)}function ZrQ(A,Q){return A[0]*Q[0]+A[1]*Q[1]+A[2]*Q[2]+A[3]*Q[3]}var $GY=new Float32Array(0),UGY={ready:Promise.resolve(),resample:XrQ,tolerance:0.0001,cleanup:!0};var lF="simplify",{POINTS:eCA,LINES:$rQ,LINE_STRIP:UrQ,LINE_LOOP:ErQ,TRIANGLES:KrQ,TRIANGLE_STRIP:A1A,TRIANGLE_FAN:Q1A}=q0.Mode,B1A={ratio:0,error:0.0001,lockBorder:!1};function Y1A(A){let Q=R6(B1A,A),B=Q.simplifier;if(!B)throw Error(`${lF}: simplifier dependency required — install "meshoptimizer".`);return iF(lF,async(Y)=>{let J=Y.getLogger();await B.ready,await Y.transform(fh({overwrite:!1}));let C=0;for(let X of Y.getRoot().listMeshes()){for(let G of X.listPrimitives()){let W=G.getMode();if(W!==KrQ&&W!==A1A&&W!==Q1A&&W!==eCA){C++;continue}if(VrQ(G,Q),pF(G,zJ.RENDER)===0)vCA(G)}if(X.listPrimitives().length===0)X.dispose()}if(C>0)J.warn(`${lF}: Skipped ${C} primitives: Unsupported draw mode.`);J.debug(`${lF}: Complete.`)})}function VrQ(A,Q){let B=FU({},B1A,Q),Y=B.simplifier,J=A.getGraph(),C=LJ.fromGraph(J),X=C.getLogger();switch(A.getMode()){case eCA:return IrQ(C,A,B);case $rQ:case UrQ:case ErQ:return X.warn(`${lF}: Skipping primitive simplification: Unsupported draw mode.`),A;case A1A:case Q1A:dCA(A);break}let G=pF(A,zJ.UPLOAD),W=pF(A,zJ.RENDER);if(W($&A)/J*256/W,shiftGreen:($)=>($&Q)/C*256/F,shiftBlue:($)=>($&B)/X*256/Z,shiftAlpha:Y!==0?($)=>($&Y)/G*256/U:()=>255}}var w6;(function(A){A[A.NONE=0]="NONE",A[A.BI_RLE8=1]="BI_RLE8",A[A.BI_RLE4=2]="BI_RLE4",A[A.BI_BIT_FIELDS=3]="BI_BIT_FIELDS",A[A.BI_ALPHA_BIT_FIELDS=6]="BI_ALPHA_BIT_FIELDS"})(w6||(w6={}));class p3{flag;fileSize;reserved1;reserved2;offset;headerSize;width;height;planes;bitPP;compression;rawSize;hr;vr;colors;importantColors;palette;data;maskRed;maskGreen;maskBlue;maskAlpha;toRGBA;pos;bottomUp;buffer;locRed;locGreen;locBlue;locAlpha;shiftRed;shiftGreen;shiftBlue;shiftAlpha;constructor(A,{toRGBA:Q}={toRGBA:!1}){if(this.buffer=A,this.toRGBA=!!Q,this.pos=0,this.bottomUp=!0,this.flag=this.buffer.toString("utf-8",0,this.pos+=2),this.flag!=="BM")throw Error("Invalid BMP File");this.locRed=this.toRGBA?0:3,this.locGreen=this.toRGBA?1:2,this.locBlue=this.toRGBA?2:1,this.locAlpha=this.toRGBA?3:0,this.parseHeader(),this.parseRGBA()}parseHeader(){if(this.fileSize=this.readUInt32LE(),this.reserved1=this.buffer.readUInt16LE(this.pos),this.pos+=2,this.reserved2=this.buffer.readUInt16LE(this.pos),this.pos+=2,this.offset=this.readUInt32LE(),this.headerSize=this.readUInt32LE(),!(this.headerSize in V5))throw Error(`Unsupported BMP header size ${this.headerSize}`);if(this.width=this.readUInt32LE(),this.height=this.readUInt32LE(),this.height=this.height>2147483647?this.height-4294967296:this.height,this.planes=this.buffer.readUInt16LE(this.pos),this.pos+=2,this.bitPP=this.buffer.readUInt16LE(this.pos),this.pos+=2,this.compression=this.readUInt32LE(),this.rawSize=this.readUInt32LE(),this.hr=this.readUInt32LE(),this.vr=this.readUInt32LE(),this.colors=this.readUInt32LE(),this.importantColors=this.readUInt32LE(),this.bitPP===32)this.maskAlpha=0,this.maskRed=16711680,this.maskGreen=65280,this.maskBlue=255;else if(this.bitPP===16)this.maskAlpha=0,this.maskRed=31744,this.maskGreen=992,this.maskBlue=31;if(this.headerSize>V5.BITMAP_INFO_HEADER||this.compression===w6.BI_BIT_FIELDS||this.compression===w6.BI_ALPHA_BIT_FIELDS)this.maskRed=this.readUInt32LE(),this.maskGreen=this.readUInt32LE(),this.maskBlue=this.readUInt32LE();if(this.headerSize>V5.BITMAP_V2_INFO_HEADER||this.compression===w6.BI_ALPHA_BIT_FIELDS)this.maskAlpha=this.readUInt32LE();if(this.headerSize>V5.BITMAP_V3_INFO_HEADER)this.pos+=V5.BITMAP_V4_HEADER-V5.BITMAP_V3_INFO_HEADER;if(this.headerSize>V5.BITMAP_V4_HEADER)this.pos+=V5.BITMAP_V5_HEADER-V5.BITMAP_V4_HEADER;if(this.bitPP<=8||this.colors>0){let Q=this.colors===0?1<{if(C!==Y)Y=C;let X=this.buffer.readUInt8(this.pos++),G=C*this.width*4+J*8*4;for(let W=0;W<8;W++)if(J*8+W>7-W&1];this.data[G+W*this.locAlpha]=0,this.data[G+W*4+this.locBlue]=F.blue,this.data[G+W*4+this.locGreen]=F.green,this.data[G+W*4+this.locRed]=F.red}else break})}bit4(){if(this.compression===w6.BI_RLE4){this.data.fill(0);let A=!1,Q=this.bottomUp?this.height-1:0,B=0;while(B>4),X&1&&X+1>1&1)===1)this.pos++}}else for(let C=0;C>4),A=!A}}else{let A=Math.ceil(this.width/2),Q=A%4,B=Q!==0?4-Q:0;this.scanImage(B,A,(Y,J)=>{let C=this.buffer.readUInt8(this.pos++),X=J*this.width*4+Y*2*4,G=C>>4,W=this.palette[G];if(this.data[X]=0,this.data[X+1]=W.blue,this.data[X+2]=W.green,this.data[X+3]=W.red,Y*2+1>=this.width)return!1;let F=C&15;W=this.palette[F],this.data[X+4]=0,this.data[X+4+1]=W.blue,this.data[X+4+2]=W.green,this.data[X+4+3]=W.red})}}bit8(){if(this.compression===w6.BI_RLE8){this.data.fill(0);let A=this.bottomUp?this.height-1:0,Q=0;while(Q{let J=this.buffer.readUInt8(this.pos++),C=Y*this.width*4+B*4;if(J{let Y=B*this.width*4+Q*4,J=this.buffer.readUInt16LE(this.pos);this.pos+=2,this.data[Y+this.locRed]=this.shiftRed(J),this.data[Y+this.locGreen]=this.shiftGreen(J),this.data[Y+this.locBlue]=this.shiftBlue(J),this.data[Y+this.locAlpha]=this.shiftAlpha(J)})}bit24(){let A=this.width%4;this.scanImage(A,this.width,(Q,B)=>{let Y=B*this.width*4+Q*4,J=this.buffer.readUInt8(this.pos++),C=this.buffer.readUInt8(this.pos++),X=this.buffer.readUInt8(this.pos++);this.data[Y+this.locRed]=X,this.data[Y+this.locGreen]=C,this.data[Y+this.locBlue]=J,this.data[Y+this.locAlpha]=0})}bit32(){this.scanImage(0,this.width,(A,Q)=>{let B=Q*this.width*4+A*4,Y=this.readUInt32LE();this.data[B+this.locRed]=this.shiftRed(Y),this.data[B+this.locGreen]=this.shiftGreen(Y),this.data[B+this.locBlue]=this.shiftBlue(Y),this.data[B+this.locAlpha]=this.shiftAlpha(Y)})}scanImage(A=0,Q=this.width,B){for(let Y=this.height-1;Y>=0;Y--){let J=this.bottomUp?Y:this.height-1-Y;for(let C=0;CQ<<1|B,0)}function sh(A){return A.quad<<24|A.red<<16|A.green<<8|A.blue}class i3{fileSize;reserved1;reserved2;offset;width;flag;height;planes;bitPP;compress;hr;vr;colors;importantColors;rawSize;headerSize;data;palette;extraBytes;buffer;bytesInColor;pos;constructor(A){if(this.buffer=A.data,this.width=A.width,this.height=A.height,this.headerSize=V5.BITMAP_INFO_HEADER,this.flag="BM",this.bitPP=A.bitPP||24,this.offset=54,this.reserved1=A.reserved1||0,this.reserved2=A.reserved2||0,this.planes=1,this.compress=0,this.hr=A.hr||0,this.vr=A.vr||0,this.importantColors=A.importantColors||0,this.colors=Math.min(2**(this.bitPP-1||1),A.colors||1/0),this.palette=A.palette||[],this.colors&&this.bitPP<16)this.offset+=this.colors*4;else this.colors=0;switch(this.bitPP){case 32:this.bytesInColor=4;break;case 16:this.bytesInColor=2;break;case 8:this.bytesInColor=1;break;case 4:this.bytesInColor=0.5;break;case 1:this.bytesInColor=0.125;break;default:this.bytesInColor=3,this.bitPP=24}let Q=this.width*this.bitPP/32,B=Math.ceil(Q);this.extraBytes=(B-Q)*4,this.rawSize=this.height*B*4+2,this.fileSize=this.rawSize+this.offset,this.data=Buffer.alloc(this.fileSize,1),this.pos=0,this.encode()}encode(){switch(this.pos=0,this.writeHeader(),this.bitPP){case 32:this.bit32();break;case 16:this.bit16();break;case 8:this.bit8();break;case 4:this.bit4();break;case 1:this.bit1();break;default:this.bit24()}}writeHeader(){this.data.write(this.flag,this.pos,2),this.pos+=2,this.writeUInt32LE(this.fileSize),this.writeUInt32LE(this.reserved1<<16|this.reserved2),this.writeUInt32LE(this.offset),this.writeUInt32LE(this.headerSize),this.writeUInt32LE(this.width),this.writeUInt32LE(this.height),this.data.writeUInt16LE(this.planes,this.pos),this.pos+=2,this.data.writeUInt16LE(this.bitPP,this.pos),this.pos+=2,this.writeUInt32LE(this.compress),this.writeUInt32LE(this.rawSize),this.writeUInt32LE(this.hr),this.writeUInt32LE(this.vr),this.writeUInt32LE(this.colors),this.writeUInt32LE(this.importantColors)}bit1(){if(this.palette.length&&this.colors===2)this.initColors(1);else this.writeUInt32LE(16777215),this.writeUInt32LE(0);this.pos+=1;let A=[];this.writeImage((Q,B,Y)=>{let J=B;J++;let C=this.buffer[J++],X=this.buffer[J++],W=this.buffer[J++]*0.2126+X*0.7152+C*0.0722;if(A.push(W>127?0:1),(Y+1)%8===0)this.data[Q-1]=Z1A(A),A=[];else if(Y===this.width-1&&A.length>0)this.data[Q-1]=Z1A(A)<<4,A=[];return J})}bit4(){let A=this.initColors(4),Q=[];this.writeImage((B,Y,J)=>{let C=Y,X=sh({quad:this.buffer[C++],blue:this.buffer[C++],green:this.buffer[C++],red:this.buffer[C++]}),G=A.findIndex((W)=>W===X);if(G!==-1)Q.push(G);else Q.push(0);if((J+1)%2===0)this.data[B]=Q[0]<<4|Q[1],Q=[];return C})}bit8(){let A=this.initColors(8);this.writeImage((Q,B)=>{let Y=B,J=sh({quad:this.buffer[Y++],blue:this.buffer[Y++],green:this.buffer[Y++],red:this.buffer[Y++]}),C=A.findIndex((X)=>X===J);if(C!==-1)this.data[Q]=C;else this.data[Q]=0;return Y})}bit16(){this.writeImage((A,Q)=>{let B=Q+1,Y=this.buffer[B++]/8,J=this.buffer[B++]/8,X=this.buffer[B++]/8<<10|J<<5|Y;return this.data[A]=X&255,this.data[A+1]=(X&65280)>>8,B})}bit24(){this.writeImage((A,Q)=>{let B=Q+1;return this.data[A]=this.buffer[B++],this.data[A+1]=this.buffer[B++],this.data[A+2]=this.buffer[B++],B})}bit32(){this.writeImage((A,Q)=>{let B=Q;return this.data[A+3]=this.buffer[B++],this.data[A]=this.buffer[B++],this.data[A+1]=this.buffer[B++],this.data[A+2]=this.buffer[B++],B})}writeImage(A){let Q=this.extraBytes+this.width*this.bytesInColor,B=0;for(let Y=0;Y=0,C=!B&&J&&(Q==="hex"||Q==="hex6"||Q==="hex3"||Q==="hex4"||Q==="hex8"||Q==="name");if(C){if(Q==="name"&&this._a===0)return this.toName();return this.toRgbString()}if(Q==="rgb")Y=this.toRgbString();if(Q==="prgb")Y=this.toPercentageRgbString();if(Q==="hex"||Q==="hex6")Y=this.toHexString();if(Q==="hex3")Y=this.toHexString(!0);if(Q==="hex4")Y=this.toHex8String(!0);if(Q==="hex8")Y=this.toHex8String();if(Q==="name")Y=this.toName();if(Q==="hsl")Y=this.toHslString();if(Q==="hsv")Y=this.toHsvString();return Y||this.toHexString()},clone:function(){return oA(this.toString())},_applyModification:function(Q,B){var Y=Q.apply(null,[this].concat([].slice.call(B)));return this._r=Y._r,this._g=Y._g,this._b=Y._b,this.setAlpha(Y._a),this},lighten:function(){return this._applyModification(_rQ,arguments)},brighten:function(){return this._applyModification(vrQ,arguments)},darken:function(){return this._applyModification(yrQ,arguments)},desaturate:function(){return this._applyModification(TrQ,arguments)},saturate:function(){return this._applyModification(SrQ,arguments)},greyscale:function(){return this._applyModification(krQ,arguments)},spin:function(){return this._applyModification(grQ,arguments)},_applyCombination:function(Q,B){return Q.apply(null,[this].concat([].slice.call(B)))},analogous:function(){return this._applyCombination(frQ,arguments)},complement:function(){return this._applyCombination(hrQ,arguments)},monochromatic:function(){return this._applyCombination(brQ,arguments)},splitcomplement:function(){return this._applyCombination(xrQ,arguments)},triad:function(){return this._applyCombination(H1A,[3])},tetrad:function(){return this._applyCombination(H1A,[4])}};oA.fromRatio=function(A,Q){if(n3(A)=="object"){var B={};for(var Y in A)if(A.hasOwnProperty(Y))if(Y==="a")B[Y]=A[Y];else B[Y]=HH(A[Y]);A=B}return oA(A,Q)};function RrQ(A){var Q={r:0,g:0,b:0},B=1,Y=null,J=null,C=null,X=!1,G=!1;if(typeof A=="string")A=lrQ(A);if(n3(A)=="object"){if(j6(A.r)&&j6(A.g)&&j6(A.b))Q=wrQ(A.r,A.g,A.b),X=!0,G=String(A.r).substr(-1)==="%"?"prgb":"rgb";else if(j6(A.h)&&j6(A.s)&&j6(A.v))Y=HH(A.s),J=HH(A.v),Q=OrQ(A.h,Y,J),X=!0,G="hsv";else if(j6(A.h)&&j6(A.s)&&j6(A.l))Y=HH(A.s),C=HH(A.l),Q=jrQ(A.h,Y,C),X=!0,G="hsl";if(A.hasOwnProperty("a"))B=A.a}return B=N1A(B),{ok:X,format:A.format||G,r:Math.min(255,Math.max(Q.r,0)),g:Math.min(255,Math.max(Q.g,0)),b:Math.min(255,Math.max(Q.b,0)),a:B}}function wrQ(A,Q,B){return{r:M0(A,255)*255,g:M0(Q,255)*255,b:M0(B,255)*255}}function E1A(A,Q,B){A=M0(A,255),Q=M0(Q,255),B=M0(B,255);var Y=Math.max(A,Q,B),J=Math.min(A,Q,B),C,X,G=(Y+J)/2;if(Y==J)C=X=0;else{var W=Y-J;switch(X=G>0.5?W/(2-Y-J):W/(Y+J),Y){case A:C=(Q-B)/W+(Q1)U-=1;if(U<0.16666666666666666)return F+(Z-F)*6*U;if(U<0.5)return Z;if(U<0.6666666666666666)return F+(Z-F)*(0.6666666666666666-U)*6;return F}if(Q===0)Y=J=C=B;else{var G=B<0.5?B*(1+Q):B+Q-B*Q,W=2*B-G;Y=X(W,G,A+0.3333333333333333),J=X(W,G,A),C=X(W,G,A-0.3333333333333333)}return{r:Y*255,g:J*255,b:C*255}}function K1A(A,Q,B){A=M0(A,255),Q=M0(Q,255),B=M0(B,255);var Y=Math.max(A,Q,B),J=Math.min(A,Q,B),C,X,G=Y,W=Y-J;if(X=Y===0?0:W/Y,Y==J)C=0;else{switch(Y){case A:C=(Q-B)/W+(Q>1)+720)%360;--Q;)Y.h=(Y.h+J)%360,C.push(oA(Y));return C}function brQ(A,Q){Q=Q||6;var B=oA(A).toHsv(),Y=B.h,J=B.s,C=B.v,X=[],G=1/Q;while(Q--)X.push(oA({h:Y,s:J,v:C})),C=(C+G)%1;return X}oA.mix=function(A,Q,B){B=B===0?0:B||50;var Y=oA(A).toRgb(),J=oA(Q).toRgb(),C=B/100,X={r:(J.r-Y.r)*C+Y.r,g:(J.g-Y.g)*C+Y.g,b:(J.b-Y.b)*C+Y.b,a:(J.a-Y.a)*C+Y.a};return oA(X)};oA.readability=function(A,Q){var B=oA(A),Y=oA(Q);return(Math.max(B.getLuminance(),Y.getLuminance())+0.05)/(Math.min(B.getLuminance(),Y.getLuminance())+0.05)};oA.isReadable=function(A,Q,B){var Y=oA.readability(A,Q),J,C;switch(C=!1,J=prQ(B),J.level+J.size){case"AAsmall":case"AAAlarge":C=Y>=4.5;break;case"AAlarge":C=Y>=3;break;case"AAAsmall":C=Y>=7;break}return C};oA.mostReadable=function(A,Q,B){var Y=null,J=0,C,X,G,W;B=B||{},X=B.includeFallbackColors,G=B.level,W=B.size;for(var F=0;FJ)J=C,Y=oA(Q[F]);if(oA.isReadable(A,Y,{level:G,size:W})||!X)return Y;else return B.includeFallbackColors=!1,oA.mostReadable(A,["#fff","#000"],B)};var rh=oA.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},mrQ=oA.hexNames=urQ(rh);function urQ(A){var Q={};for(var B in A)if(A.hasOwnProperty(B))Q[A[B]]=B;return Q}function N1A(A){if(A=parseFloat(A),isNaN(A)||A<0||A>1)A=1;return A}function M0(A,Q){if(drQ(A))A="100%";var B=crQ(A);if(A=Math.min(Q,Math.max(0,parseFloat(A))),B)A=parseInt(A*Q,10)/100;if(Math.abs(A-Q)<0.000001)return 1;return A%Q/parseFloat(Q)}function s3(A){return Math.min(1,Math.max(0,A))}function E8(A){return parseInt(A,16)}function drQ(A){return typeof A=="string"&&A.indexOf(".")!=-1&&parseFloat(A)===1}function crQ(A){return typeof A==="string"&&A.indexOf("%")!=-1}function SC(A){return A.length==1?"0"+A:""+A}function HH(A){if(A<=1)A=A*100+"%";return A}function L1A(A){return Math.round(parseFloat(A)*255).toString(16)}function D1A(A){return E8(A)/255}var TC=function(){var A="[-\\+]?\\d+%?",Q="[-\\+]?\\d*\\.\\d+%?",B="(?:"+Q+")|(?:"+A+")",Y="[\\s|\\(]+("+B+")[,|\\s]+("+B+")[,|\\s]+("+B+")\\s*\\)?",J="[\\s|\\(]+("+B+")[,|\\s]+("+B+")[,|\\s]+("+B+")[,|\\s]+("+B+")\\s*\\)?";return{CSS_UNIT:new RegExp(B),rgb:new RegExp("rgb"+Y),rgba:new RegExp("rgba"+J),hsl:new RegExp("hsl"+Y),hsla:new RegExp("hsla"+J),hsv:new RegExp("hsv"+Y),hsva:new RegExp("hsva"+J),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/}}();function j6(A){return!!TC.CSS_UNIT.exec(A)}function lrQ(A){A=A.replace(MrQ,"").replace(zrQ,"").toLowerCase();var Q=!1;if(rh[A])A=rh[A],Q=!0;else if(A=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var B;if(B=TC.rgb.exec(A))return{r:B[1],g:B[2],b:B[3]};if(B=TC.rgba.exec(A))return{r:B[1],g:B[2],b:B[3],a:B[4]};if(B=TC.hsl.exec(A))return{h:B[1],s:B[2],l:B[3]};if(B=TC.hsla.exec(A))return{h:B[1],s:B[2],l:B[3],a:B[4]};if(B=TC.hsv.exec(A))return{h:B[1],s:B[2],v:B[3]};if(B=TC.hsva.exec(A))return{h:B[1],s:B[2],v:B[3],a:B[4]};if(B=TC.hex8.exec(A))return{r:E8(B[1]),g:E8(B[2]),b:E8(B[3]),a:D1A(B[4]),format:Q?"name":"hex8"};if(B=TC.hex6.exec(A))return{r:E8(B[1]),g:E8(B[2]),b:E8(B[3]),format:Q?"name":"hex"};if(B=TC.hex4.exec(A))return{r:E8(B[1]+""+B[1]),g:E8(B[2]+""+B[2]),b:E8(B[3]+""+B[3]),a:D1A(B[4]+""+B[4]),format:Q?"name":"hex8"};if(B=TC.hex3.exec(A))return{r:E8(B[1]+""+B[1]),g:E8(B[2]+""+B[2]),b:E8(B[3]+""+B[3]),format:Q?"name":"hex"};return!1}function prQ(A){var Q,B;if(A=A||{level:"AA",size:"small"},Q=(A.level||"AA").toUpperCase(),B=(A.size||"small").toLowerCase(),Q!=="AA"&&Q!=="AAA")Q="AA";if(B!=="small"&&B!=="large")B="small";return{level:Q,size:B}}function K8(A){let Q={width:A.bitmap.width,height:A.bitmap.height,data:Buffer.from(A.bitmap.data)};return new A.constructor(Q)}function I5(A,Q,B,Y,J,C){let X,G,W,F,Z;if(typeof Q==="function")Z=Q,X=0,G=0,W=A.bitmap.width,F=A.bitmap.height;else{if(X=Q,typeof B!=="number")throw Error("y must be a number");if(G=B,typeof Y!=="number")throw Error("w must be a number");if(W=Y,typeof J!=="number")throw Error("h must be a number");if(F=J,typeof C!=="function")throw Error("cb must be a function");Z=C}X=Math.round(X),G=Math.round(G),W=Math.round(W),F=Math.round(F);let U=Z.bind(A);for(let $=G;$Math.pow(G,2),{max:Y}=Math,J=195075,C="a"in A?A.a:255,X="a"in Q?Q.a:255;return(Y(B(A.r-Q.r),B(A.r-Q.r-C+X))+Y(B(A.g-Q.g),B(A.g-Q.g-C+X))+Y(B(A.b-Q.b),B(A.b-Q.b-C+X)))/195075}function z0(A){return A=Math.max(A,0),A=Math.min(A,255),A}function M1A(A){if(typeof A==="number")return A;return parseInt(oA(A).toHex8(),16)}function z1A(A,Q={}){return I5({bitmap:A},0,0,A.width,A.height,function(B,Y,J){let C=A.data[J+0],X=A.data[J+1],G=A.data[J+2],W=A.data[J+3];A.data[J+0]=W,A.data[J+1]=G,A.data[J+2]=X,A.data[J+3]=C}),U1A({...A,...Q}).data}function R1A(A,Q){let B=$1A(A,Q);return I5({bitmap:B},0,0,B.width,B.height,function(Y,J,C){let X=B.data[C+1],G=B.data[C+2],W=B.data[C+3];B.data[C+0]=W,B.data[C+1]=G,B.data[C+2]=X,B.data[C+3]=255}),B}function w1A(){return{mime:"image/x-ms-bmp",encode:z1A,decode:R1A}}function r3(){return{mime:"image/bmp",encode:z1A,decode:R1A}}var TXA=qA(ah(),1),I7=qA(PXA(),1);function XR(){return{mime:"image/gif",encode:async(A)=>{let Q=new I7.BitmapImage(A);I7.GifUtil.quantizeDekker(Q,256);let B=new I7.GifFrame(A);return(await new I7.GifCodec().encodeGif([B],{})).buffer},decode:(A)=>{let Q=new TXA.default.GifReader(A),B=Buffer.alloc(Q.width*Q.height*4);return Q.decodeAndBlitFrameRGBA(0,B),{data:B,width:Q.width,height:Q.height}}}}var Zx=qA(hXA(),1);function WR(){return{mime:"image/jpeg",encode:(A,{quality:Q=100}={})=>Zx.default.encode(A,Q).data,decode:(A,Q)=>Zx.default.decode(A,Q)}}var ZR=qA(P6A(),1);var FR;(function(A){A[A.AUTO=-1]="AUTO",A[A.NONE=0]="NONE",A[A.SUB=1]="SUB",A[A.UP=2]="UP",A[A.AVERAGE=3]="AVERAGE",A[A.PATH=4]="PATH"})(FR||(FR={}));var PH;(function(A){A[A.GRAYSCALE=0]="GRAYSCALE",A[A.COLOR=2]="COLOR",A[A.GRAYSCALE_ALPHA=4]="GRAYSCALE_ALPHA",A[A.COLOR_ALPHA=6]="COLOR_ALPHA"})(PH||(PH={}));function $R(){return{mime:"image/png",hasAlpha:!0,encode:(A,{deflateLevel:Q=9,deflateStrategy:B=3,filterType:Y=FR.AUTO,colorType:J,inputHasAlpha:C=!0,...X}={})=>{let G=new ZR.PNG({width:A.width,height:A.height});return G.data=A.data,ZR.PNG.sync.write(G,{...X,deflateLevel:Q,deflateStrategy:B,filterType:Y,colorType:typeof J<"u"?J:C?PH.COLOR_ALPHA:PH.COLOR,inputHasAlpha:C})},decode:(A,Q)=>{let B=ZR.PNG.sync.read(A,Q);return{data:B.data,width:B.width,height:B.height}}}}var cH=qA(H7A(),1);function D7A(A){if(typeof A==="number")return A;if(A instanceof Uint8Array)return A[0];if(typeof A[0]==="string")return parseInt(A[0]);return A[0]}function PR(){return{mime:"image/tiff",encode:(A)=>{let Q=cH.default.encodeImage(A.data,A.width,A.height);return Buffer.from(Q)},decode:(A)=>{let Q=cH.default.decode(A),B=Q[0];if(!B)throw Error("No page found in TIFF");if(!B.t256)throw Error("No image width found in TIFF");if(!B.t257)throw Error("No image height found in TIFF");Q.forEach((J)=>{cH.default.decodeImage(A,J)});let Y=cH.default.toRGBA8(B);return{data:Buffer.from(Y),width:D7A(B.t256),height:D7A(B.t257)}}}}var s={};iG(s,{void:()=>sQB,util:()=>FB,unknown:()=>iQB,union:()=>tQB,undefined:()=>cQB,tuple:()=>QBB,transformer:()=>$BB,symbol:()=>dQB,string:()=>O7A,strictObject:()=>oQB,setErrorMap:()=>EQB,set:()=>JBB,record:()=>BBB,quotelessJson:()=>$QB,promise:()=>ZBB,preprocess:()=>KBB,pipeline:()=>VBB,ostring:()=>IBB,optional:()=>UBB,onumber:()=>HBB,oboolean:()=>DBB,objectUtil:()=>Gf,object:()=>aQB,number:()=>P7A,nullable:()=>EBB,null:()=>lQB,never:()=>nQB,nativeEnum:()=>FBB,nan:()=>bQB,map:()=>YBB,makeIssue:()=>lH,literal:()=>GBB,lazy:()=>XBB,late:()=>xQB,isValid:()=>w7,isDirty:()=>SR,isAsync:()=>kU,isAborted:()=>TR,intersection:()=>ABB,instanceof:()=>fQB,getParsedType:()=>s1,getErrorMap:()=>SU,function:()=>CBB,enum:()=>WBB,effect:()=>$BB,discriminatedUnion:()=>eQB,defaultErrorMap:()=>v6,datetimeRegex:()=>R7A,date:()=>uQB,custom:()=>j7A,coerce:()=>NBB,boolean:()=>T7A,bigint:()=>mQB,array:()=>rQB,any:()=>pQB,addIssueToContext:()=>xA,ZodVoid:()=>iH,ZodUnknown:()=>j7,ZodUnion:()=>xU,ZodUndefined:()=>gU,ZodType:()=>JB,ZodTuple:()=>a1,ZodTransformer:()=>fC,ZodSymbol:()=>pH,ZodString:()=>yC,ZodSet:()=>XZ,ZodSchema:()=>JB,ZodRecord:()=>nH,ZodReadonly:()=>lU,ZodPromise:()=>GZ,ZodPipeline:()=>aH,ZodParsedType:()=>kA,ZodOptional:()=>hC,ZodObject:()=>y0,ZodNumber:()=>O7,ZodNullable:()=>g6,ZodNull:()=>hU,ZodNever:()=>r1,ZodNativeEnum:()=>uU,ZodNaN:()=>rH,ZodMap:()=>sH,ZodLiteral:()=>mU,ZodLazy:()=>bU,ZodIssueCode:()=>RA,ZodIntersection:()=>fU,ZodFunction:()=>vU,ZodFirstPartyTypeKind:()=>zQ,ZodError:()=>g9,ZodEnum:()=>T7,ZodEffects:()=>fC,ZodDiscriminatedUnion:()=>kR,ZodDefault:()=>dU,ZodDate:()=>JZ,ZodCatch:()=>cU,ZodBranded:()=>_R,ZodBoolean:()=>yU,ZodBigInt:()=>P7,ZodArray:()=>gC,ZodAny:()=>CZ,Schema:()=>JB,ParseStatus:()=>WJ,OK:()=>wJ,NEVER:()=>LBB,INVALID:()=>LQ,EMPTY_PATH:()=>KQB,DIRTY:()=>YZ,BRAND:()=>hQB});var FB;(function(A){A.assertEqual=(J)=>{};function Q(J){}A.assertIs=Q;function B(J){throw Error()}A.assertNever=B,A.arrayToEnum=(J)=>{let C={};for(let X of J)C[X]=X;return C},A.getValidEnumValues=(J)=>{let C=A.objectKeys(J).filter((G)=>typeof J[J[G]]!=="number"),X={};for(let G of C)X[G]=J[G];return A.objectValues(X)},A.objectValues=(J)=>{return A.objectKeys(J).map(function(C){return J[C]})},A.objectKeys=typeof Object.keys==="function"?(J)=>Object.keys(J):(J)=>{let C=[];for(let X in J)if(Object.prototype.hasOwnProperty.call(J,X))C.push(X);return C},A.find=(J,C)=>{for(let X of J)if(C(X))return X;return},A.isInteger=typeof Number.isInteger==="function"?(J)=>Number.isInteger(J):(J)=>typeof J==="number"&&Number.isFinite(J)&&Math.floor(J)===J;function Y(J,C=" | "){return J.map((X)=>typeof X==="string"?`'${X}'`:X).join(C)}A.joinValues=Y,A.jsonStringifyReplacer=(J,C)=>{if(typeof C==="bigint")return C.toString();return C}})(FB||(FB={}));var Gf;(function(A){A.mergeShapes=(Q,B)=>{return{...Q,...B}}})(Gf||(Gf={}));var kA=FB.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),s1=(A)=>{switch(typeof A){case"undefined":return kA.undefined;case"string":return kA.string;case"number":return Number.isNaN(A)?kA.nan:kA.number;case"boolean":return kA.boolean;case"function":return kA.function;case"bigint":return kA.bigint;case"symbol":return kA.symbol;case"object":if(Array.isArray(A))return kA.array;if(A===null)return kA.null;if(A.then&&typeof A.then==="function"&&A.catch&&typeof A.catch==="function")return kA.promise;if(typeof Map<"u"&&A instanceof Map)return kA.map;if(typeof Set<"u"&&A instanceof Set)return kA.set;if(typeof Date<"u"&&A instanceof Date)return kA.date;return kA.object;default:return kA.unknown}};var RA=FB.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),$QB=(A)=>{return JSON.stringify(A,null,2).replace(/"([^"]+)":/g,"$1:")};class g9 extends Error{get errors(){return this.issues}constructor(A){super();this.issues=[],this.addIssue=(B)=>{this.issues=[...this.issues,B]},this.addIssues=(B=[])=>{this.issues=[...this.issues,...B]};let Q=new.target.prototype;if(Object.setPrototypeOf)Object.setPrototypeOf(this,Q);else this.__proto__=Q;this.name="ZodError",this.issues=A}format(A){let Q=A||function(J){return J.message},B={_errors:[]},Y=(J)=>{for(let C of J.issues)if(C.code==="invalid_union")C.unionErrors.map(Y);else if(C.code==="invalid_return_type")Y(C.returnTypeError);else if(C.code==="invalid_arguments")Y(C.argumentsError);else if(C.path.length===0)B._errors.push(Q(C));else{let X=B,G=0;while(GQ.message){let Q={},B=[];for(let Y of this.issues)if(Y.path.length>0){let J=Y.path[0];Q[J]=Q[J]||[],Q[J].push(A(Y))}else B.push(A(Y));return{formErrors:B,fieldErrors:Q}}get formErrors(){return this.flatten()}}g9.create=(A)=>{return new g9(A)};var UQB=(A,Q)=>{let B;switch(A.code){case RA.invalid_type:if(A.received===kA.undefined)B="Required";else B=`Expected ${A.expected}, received ${A.received}`;break;case RA.invalid_literal:B=`Invalid literal value, expected ${JSON.stringify(A.expected,FB.jsonStringifyReplacer)}`;break;case RA.unrecognized_keys:B=`Unrecognized key(s) in object: ${FB.joinValues(A.keys,", ")}`;break;case RA.invalid_union:B="Invalid input";break;case RA.invalid_union_discriminator:B=`Invalid discriminator value. Expected ${FB.joinValues(A.options)}`;break;case RA.invalid_enum_value:B=`Invalid enum value. Expected ${FB.joinValues(A.options)}, received '${A.received}'`;break;case RA.invalid_arguments:B="Invalid function arguments";break;case RA.invalid_return_type:B="Invalid function return type";break;case RA.invalid_date:B="Invalid date";break;case RA.invalid_string:if(typeof A.validation==="object")if("includes"in A.validation){if(B=`Invalid input: must include "${A.validation.includes}"`,typeof A.validation.position==="number")B=`${B} at one or more positions greater than or equal to ${A.validation.position}`}else if("startsWith"in A.validation)B=`Invalid input: must start with "${A.validation.startsWith}"`;else if("endsWith"in A.validation)B=`Invalid input: must end with "${A.validation.endsWith}"`;else FB.assertNever(A.validation);else if(A.validation!=="regex")B=`Invalid ${A.validation}`;else B="Invalid";break;case RA.too_small:if(A.type==="array")B=`Array must contain ${A.exact?"exactly":A.inclusive?"at least":"more than"} ${A.minimum} element(s)`;else if(A.type==="string")B=`String must contain ${A.exact?"exactly":A.inclusive?"at least":"over"} ${A.minimum} character(s)`;else if(A.type==="number")B=`Number must be ${A.exact?"exactly equal to ":A.inclusive?"greater than or equal to ":"greater than "}${A.minimum}`;else if(A.type==="bigint")B=`Number must be ${A.exact?"exactly equal to ":A.inclusive?"greater than or equal to ":"greater than "}${A.minimum}`;else if(A.type==="date")B=`Date must be ${A.exact?"exactly equal to ":A.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(A.minimum))}`;else B="Invalid input";break;case RA.too_big:if(A.type==="array")B=`Array must contain ${A.exact?"exactly":A.inclusive?"at most":"less than"} ${A.maximum} element(s)`;else if(A.type==="string")B=`String must contain ${A.exact?"exactly":A.inclusive?"at most":"under"} ${A.maximum} character(s)`;else if(A.type==="number")B=`Number must be ${A.exact?"exactly":A.inclusive?"less than or equal to":"less than"} ${A.maximum}`;else if(A.type==="bigint")B=`BigInt must be ${A.exact?"exactly":A.inclusive?"less than or equal to":"less than"} ${A.maximum}`;else if(A.type==="date")B=`Date must be ${A.exact?"exactly":A.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(A.maximum))}`;else B="Invalid input";break;case RA.custom:B="Invalid input";break;case RA.invalid_intersection_types:B="Intersection results could not be merged";break;case RA.not_multiple_of:B=`Number must be a multiple of ${A.multipleOf}`;break;case RA.not_finite:B="Number must be finite";break;default:B=Q.defaultError,FB.assertNever(A)}return{message:B}},v6=UQB;var N7A=v6;function EQB(A){N7A=A}function SU(){return N7A}var lH=(A)=>{let{data:Q,path:B,errorMaps:Y,issueData:J}=A,C=[...B,...J.path||[]],X={...J,path:C};if(J.message!==void 0)return{...J,path:C,message:J.message};let G="",W=Y.filter((F)=>!!F).slice().reverse();for(let F of W)G=F(X,{data:Q,defaultError:G}).message;return{...J,path:C,message:G}},KQB=[];function xA(A,Q){let B=SU(),Y=lH({issueData:Q,data:A.data,path:A.path,errorMaps:[A.common.contextualErrorMap,A.schemaErrorMap,B,B===v6?void 0:v6].filter((J)=>!!J)});A.common.issues.push(Y)}class WJ{constructor(){this.value="valid"}dirty(){if(this.value==="valid")this.value="dirty"}abort(){if(this.value!=="aborted")this.value="aborted"}static mergeArray(A,Q){let B=[];for(let Y of Q){if(Y.status==="aborted")return LQ;if(Y.status==="dirty")A.dirty();B.push(Y.value)}return{status:A.value,value:B}}static async mergeObjectAsync(A,Q){let B=[];for(let Y of Q){let J=await Y.key,C=await Y.value;B.push({key:J,value:C})}return WJ.mergeObjectSync(A,B)}static mergeObjectSync(A,Q){let B={};for(let Y of Q){let{key:J,value:C}=Y;if(J.status==="aborted")return LQ;if(C.status==="aborted")return LQ;if(J.status==="dirty")A.dirty();if(C.status==="dirty")A.dirty();if(J.value!=="__proto__"&&(typeof C.value<"u"||Y.alwaysSet))B[J.value]=C.value}return{status:A.value,value:B}}}var LQ=Object.freeze({status:"aborted"}),YZ=(A)=>({status:"dirty",value:A}),wJ=(A)=>({status:"valid",value:A}),TR=(A)=>A.status==="aborted",SR=(A)=>A.status==="dirty",w7=(A)=>A.status==="valid",kU=(A)=>typeof Promise<"u"&&A instanceof Promise;var tA;(function(A){A.errToObj=(Q)=>typeof Q==="string"?{message:Q}:Q||{},A.toString=(Q)=>typeof Q==="string"?Q:Q?.message})(tA||(tA={}));class xC{constructor(A,Q,B,Y){this._cachedPath=[],this.parent=A,this.data=Q,this._path=B,this._key=Y}get path(){if(!this._cachedPath.length)if(Array.isArray(this._key))this._cachedPath.push(...this._path,...this._key);else this._cachedPath.push(...this._path,this._key);return this._cachedPath}}var L7A=(A,Q)=>{if(w7(Q))return{success:!0,data:Q.value};else{if(!A.common.issues.length)throw Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let B=new g9(A.common.issues);return this._error=B,this._error}}}};function pQ(A){if(!A)return{};let{errorMap:Q,invalid_type_error:B,required_error:Y,description:J}=A;if(Q&&(B||Y))throw Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);if(Q)return{errorMap:Q,description:J};return{errorMap:(X,G)=>{let{message:W}=A;if(X.code==="invalid_enum_value")return{message:W??G.defaultError};if(typeof G.data>"u")return{message:W??Y??G.defaultError};if(X.code!=="invalid_type")return{message:G.defaultError};return{message:W??B??G.defaultError}},description:J}}class JB{get description(){return this._def.description}_getType(A){return s1(A.data)}_getOrReturnCtx(A,Q){return Q||{common:A.parent.common,data:A.data,parsedType:s1(A.data),schemaErrorMap:this._def.errorMap,path:A.path,parent:A.parent}}_processInputParams(A){return{status:new WJ,ctx:{common:A.parent.common,data:A.data,parsedType:s1(A.data),schemaErrorMap:this._def.errorMap,path:A.path,parent:A.parent}}}_parseSync(A){let Q=this._parse(A);if(kU(Q))throw Error("Synchronous parse encountered promise.");return Q}_parseAsync(A){let Q=this._parse(A);return Promise.resolve(Q)}parse(A,Q){let B=this.safeParse(A,Q);if(B.success)return B.data;throw B.error}safeParse(A,Q){let B={common:{issues:[],async:Q?.async??!1,contextualErrorMap:Q?.errorMap},path:Q?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:A,parsedType:s1(A)},Y=this._parseSync({data:A,path:B.path,parent:B});return L7A(B,Y)}"~validate"(A){let Q={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:A,parsedType:s1(A)};if(!this["~standard"].async)try{let B=this._parseSync({data:A,path:[],parent:Q});return w7(B)?{value:B.value}:{issues:Q.common.issues}}catch(B){if(B?.message?.toLowerCase()?.includes("encountered"))this["~standard"].async=!0;Q.common={issues:[],async:!0}}return this._parseAsync({data:A,path:[],parent:Q}).then((B)=>w7(B)?{value:B.value}:{issues:Q.common.issues})}async parseAsync(A,Q){let B=await this.safeParseAsync(A,Q);if(B.success)return B.data;throw B.error}async safeParseAsync(A,Q){let B={common:{issues:[],contextualErrorMap:Q?.errorMap,async:!0},path:Q?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:A,parsedType:s1(A)},Y=this._parse({data:A,path:B.path,parent:B}),J=await(kU(Y)?Y:Promise.resolve(Y));return L7A(B,J)}refine(A,Q){let B=(Y)=>{if(typeof Q==="string"||typeof Q>"u")return{message:Q};else if(typeof Q==="function")return Q(Y);else return Q};return this._refinement((Y,J)=>{let C=A(Y),X=()=>J.addIssue({code:RA.custom,...B(Y)});if(typeof Promise<"u"&&C instanceof Promise)return C.then((G)=>{if(!G)return X(),!1;else return!0});if(!C)return X(),!1;else return!0})}refinement(A,Q){return this._refinement((B,Y)=>{if(!A(B))return Y.addIssue(typeof Q==="function"?Q(B,Y):Q),!1;else return!0})}_refinement(A){return new fC({schema:this,typeName:zQ.ZodEffects,effect:{type:"refinement",refinement:A}})}superRefine(A){return this._refinement(A)}constructor(A){this.spa=this.safeParseAsync,this._def=A,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:(Q)=>this["~validate"](Q)}}optional(){return hC.create(this,this._def)}nullable(){return g6.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return gC.create(this)}promise(){return GZ.create(this,this._def)}or(A){return xU.create([this,A],this._def)}and(A){return fU.create(this,A,this._def)}transform(A){return new fC({...pQ(this._def),schema:this,typeName:zQ.ZodEffects,effect:{type:"transform",transform:A}})}default(A){let Q=typeof A==="function"?A:()=>A;return new dU({...pQ(this._def),innerType:this,defaultValue:Q,typeName:zQ.ZodDefault})}brand(){return new _R({typeName:zQ.ZodBranded,type:this,...pQ(this._def)})}catch(A){let Q=typeof A==="function"?A:()=>A;return new cU({...pQ(this._def),innerType:this,catchValue:Q,typeName:zQ.ZodCatch})}describe(A){return new this.constructor({...this._def,description:A})}pipe(A){return aH.create(this,A)}readonly(){return lU.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}var VQB=/^c[^\s-]{8,}$/i,IQB=/^[0-9a-z]+$/,HQB=/^[0-9A-HJKMNP-TV-Z]{26}$/i,DQB=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,NQB=/^[a-z0-9_-]{21}$/i,LQB=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,qQB=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,MQB=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,zQB="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Wf,RQB=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,wQB=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,jQB=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,OQB=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,PQB=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,TQB=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,M7A="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",SQB=new RegExp(`^${M7A}$`);function z7A(A){let Q="[0-5]\\d";if(A.precision)Q=`${Q}\\.\\d{${A.precision}}`;else if(A.precision==null)Q=`${Q}(\\.\\d+)?`;let B=A.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${Q})${B}`}function kQB(A){return new RegExp(`^${z7A(A)}$`)}function R7A(A){let Q=`${M7A}T${z7A(A)}`,B=[];if(B.push(A.local?"Z?":"Z"),A.offset)B.push("([+-]\\d{2}:?\\d{2})");return Q=`${Q}(${B.join("|")})`,new RegExp(`^${Q}$`)}function _QB(A,Q){if((Q==="v4"||!Q)&&RQB.test(A))return!0;if((Q==="v6"||!Q)&&jQB.test(A))return!0;return!1}function vQB(A,Q){if(!LQB.test(A))return!1;try{let[B]=A.split(".");if(!B)return!1;let Y=B.replace(/-/g,"+").replace(/_/g,"/").padEnd(B.length+(4-B.length%4)%4,"="),J=JSON.parse(atob(Y));if(typeof J!=="object"||J===null)return!1;if("typ"in J&&J?.typ!=="JWT")return!1;if(!J.alg)return!1;if(Q&&J.alg!==Q)return!1;return!0}catch{return!1}}function yQB(A,Q){if((Q==="v4"||!Q)&&wQB.test(A))return!0;if((Q==="v6"||!Q)&&OQB.test(A))return!0;return!1}class yC extends JB{_parse(A){if(this._def.coerce)A.data=String(A.data);if(this._getType(A)!==kA.string){let J=this._getOrReturnCtx(A);return xA(J,{code:RA.invalid_type,expected:kA.string,received:J.parsedType}),LQ}let B=new WJ,Y=void 0;for(let J of this._def.checks)if(J.kind==="min"){if(A.data.lengthJ.value)Y=this._getOrReturnCtx(A,Y),xA(Y,{code:RA.too_big,maximum:J.value,type:"string",inclusive:!0,exact:!1,message:J.message}),B.dirty()}else if(J.kind==="length"){let C=A.data.length>J.value,X=A.data.lengthA.test(Y),{validation:Q,code:RA.invalid_string,...tA.errToObj(B)})}_addCheck(A){return new yC({...this._def,checks:[...this._def.checks,A]})}email(A){return this._addCheck({kind:"email",...tA.errToObj(A)})}url(A){return this._addCheck({kind:"url",...tA.errToObj(A)})}emoji(A){return this._addCheck({kind:"emoji",...tA.errToObj(A)})}uuid(A){return this._addCheck({kind:"uuid",...tA.errToObj(A)})}nanoid(A){return this._addCheck({kind:"nanoid",...tA.errToObj(A)})}cuid(A){return this._addCheck({kind:"cuid",...tA.errToObj(A)})}cuid2(A){return this._addCheck({kind:"cuid2",...tA.errToObj(A)})}ulid(A){return this._addCheck({kind:"ulid",...tA.errToObj(A)})}base64(A){return this._addCheck({kind:"base64",...tA.errToObj(A)})}base64url(A){return this._addCheck({kind:"base64url",...tA.errToObj(A)})}jwt(A){return this._addCheck({kind:"jwt",...tA.errToObj(A)})}ip(A){return this._addCheck({kind:"ip",...tA.errToObj(A)})}cidr(A){return this._addCheck({kind:"cidr",...tA.errToObj(A)})}datetime(A){if(typeof A==="string")return this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:A});return this._addCheck({kind:"datetime",precision:typeof A?.precision>"u"?null:A?.precision,offset:A?.offset??!1,local:A?.local??!1,...tA.errToObj(A?.message)})}date(A){return this._addCheck({kind:"date",message:A})}time(A){if(typeof A==="string")return this._addCheck({kind:"time",precision:null,message:A});return this._addCheck({kind:"time",precision:typeof A?.precision>"u"?null:A?.precision,...tA.errToObj(A?.message)})}duration(A){return this._addCheck({kind:"duration",...tA.errToObj(A)})}regex(A,Q){return this._addCheck({kind:"regex",regex:A,...tA.errToObj(Q)})}includes(A,Q){return this._addCheck({kind:"includes",value:A,position:Q?.position,...tA.errToObj(Q?.message)})}startsWith(A,Q){return this._addCheck({kind:"startsWith",value:A,...tA.errToObj(Q)})}endsWith(A,Q){return this._addCheck({kind:"endsWith",value:A,...tA.errToObj(Q)})}min(A,Q){return this._addCheck({kind:"min",value:A,...tA.errToObj(Q)})}max(A,Q){return this._addCheck({kind:"max",value:A,...tA.errToObj(Q)})}length(A,Q){return this._addCheck({kind:"length",value:A,...tA.errToObj(Q)})}nonempty(A){return this.min(1,tA.errToObj(A))}trim(){return new yC({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new yC({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new yC({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find((A)=>A.kind==="datetime")}get isDate(){return!!this._def.checks.find((A)=>A.kind==="date")}get isTime(){return!!this._def.checks.find((A)=>A.kind==="time")}get isDuration(){return!!this._def.checks.find((A)=>A.kind==="duration")}get isEmail(){return!!this._def.checks.find((A)=>A.kind==="email")}get isURL(){return!!this._def.checks.find((A)=>A.kind==="url")}get isEmoji(){return!!this._def.checks.find((A)=>A.kind==="emoji")}get isUUID(){return!!this._def.checks.find((A)=>A.kind==="uuid")}get isNANOID(){return!!this._def.checks.find((A)=>A.kind==="nanoid")}get isCUID(){return!!this._def.checks.find((A)=>A.kind==="cuid")}get isCUID2(){return!!this._def.checks.find((A)=>A.kind==="cuid2")}get isULID(){return!!this._def.checks.find((A)=>A.kind==="ulid")}get isIP(){return!!this._def.checks.find((A)=>A.kind==="ip")}get isCIDR(){return!!this._def.checks.find((A)=>A.kind==="cidr")}get isBase64(){return!!this._def.checks.find((A)=>A.kind==="base64")}get isBase64url(){return!!this._def.checks.find((A)=>A.kind==="base64url")}get minLength(){let A=null;for(let Q of this._def.checks)if(Q.kind==="min"){if(A===null||Q.value>A)A=Q.value}return A}get maxLength(){let A=null;for(let Q of this._def.checks)if(Q.kind==="max"){if(A===null||Q.value{return new yC({checks:[],typeName:zQ.ZodString,coerce:A?.coerce??!1,...pQ(A)})};function gQB(A,Q){let B=(A.toString().split(".")[1]||"").length,Y=(Q.toString().split(".")[1]||"").length,J=B>Y?B:Y,C=Number.parseInt(A.toFixed(J).replace(".","")),X=Number.parseInt(Q.toFixed(J).replace(".",""));return C%X/10**J}class O7 extends JB{constructor(){super(...arguments);this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(A){if(this._def.coerce)A.data=Number(A.data);if(this._getType(A)!==kA.number){let J=this._getOrReturnCtx(A);return xA(J,{code:RA.invalid_type,expected:kA.number,received:J.parsedType}),LQ}let B=void 0,Y=new WJ;for(let J of this._def.checks)if(J.kind==="int"){if(!FB.isInteger(A.data))B=this._getOrReturnCtx(A,B),xA(B,{code:RA.invalid_type,expected:"integer",received:"float",message:J.message}),Y.dirty()}else if(J.kind==="min"){if(J.inclusive?A.dataJ.value:A.data>=J.value)B=this._getOrReturnCtx(A,B),xA(B,{code:RA.too_big,maximum:J.value,type:"number",inclusive:J.inclusive,exact:!1,message:J.message}),Y.dirty()}else if(J.kind==="multipleOf"){if(gQB(A.data,J.value)!==0)B=this._getOrReturnCtx(A,B),xA(B,{code:RA.not_multiple_of,multipleOf:J.value,message:J.message}),Y.dirty()}else if(J.kind==="finite"){if(!Number.isFinite(A.data))B=this._getOrReturnCtx(A,B),xA(B,{code:RA.not_finite,message:J.message}),Y.dirty()}else FB.assertNever(J);return{status:Y.value,value:A.data}}gte(A,Q){return this.setLimit("min",A,!0,tA.toString(Q))}gt(A,Q){return this.setLimit("min",A,!1,tA.toString(Q))}lte(A,Q){return this.setLimit("max",A,!0,tA.toString(Q))}lt(A,Q){return this.setLimit("max",A,!1,tA.toString(Q))}setLimit(A,Q,B,Y){return new O7({...this._def,checks:[...this._def.checks,{kind:A,value:Q,inclusive:B,message:tA.toString(Y)}]})}_addCheck(A){return new O7({...this._def,checks:[...this._def.checks,A]})}int(A){return this._addCheck({kind:"int",message:tA.toString(A)})}positive(A){return this._addCheck({kind:"min",value:0,inclusive:!1,message:tA.toString(A)})}negative(A){return this._addCheck({kind:"max",value:0,inclusive:!1,message:tA.toString(A)})}nonpositive(A){return this._addCheck({kind:"max",value:0,inclusive:!0,message:tA.toString(A)})}nonnegative(A){return this._addCheck({kind:"min",value:0,inclusive:!0,message:tA.toString(A)})}multipleOf(A,Q){return this._addCheck({kind:"multipleOf",value:A,message:tA.toString(Q)})}finite(A){return this._addCheck({kind:"finite",message:tA.toString(A)})}safe(A){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:tA.toString(A)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:tA.toString(A)})}get minValue(){let A=null;for(let Q of this._def.checks)if(Q.kind==="min"){if(A===null||Q.value>A)A=Q.value}return A}get maxValue(){let A=null;for(let Q of this._def.checks)if(Q.kind==="max"){if(A===null||Q.valueA.kind==="int"||A.kind==="multipleOf"&&FB.isInteger(A.value))}get isFinite(){let A=null,Q=null;for(let B of this._def.checks)if(B.kind==="finite"||B.kind==="int"||B.kind==="multipleOf")return!0;else if(B.kind==="min"){if(Q===null||B.value>Q)Q=B.value}else if(B.kind==="max"){if(A===null||B.value{return new O7({checks:[],typeName:zQ.ZodNumber,coerce:A?.coerce||!1,...pQ(A)})};class P7 extends JB{constructor(){super(...arguments);this.min=this.gte,this.max=this.lte}_parse(A){if(this._def.coerce)try{A.data=BigInt(A.data)}catch{return this._getInvalidInput(A)}if(this._getType(A)!==kA.bigint)return this._getInvalidInput(A);let B=void 0,Y=new WJ;for(let J of this._def.checks)if(J.kind==="min"){if(J.inclusive?A.dataJ.value:A.data>=J.value)B=this._getOrReturnCtx(A,B),xA(B,{code:RA.too_big,type:"bigint",maximum:J.value,inclusive:J.inclusive,message:J.message}),Y.dirty()}else if(J.kind==="multipleOf"){if(A.data%J.value!==BigInt(0))B=this._getOrReturnCtx(A,B),xA(B,{code:RA.not_multiple_of,multipleOf:J.value,message:J.message}),Y.dirty()}else FB.assertNever(J);return{status:Y.value,value:A.data}}_getInvalidInput(A){let Q=this._getOrReturnCtx(A);return xA(Q,{code:RA.invalid_type,expected:kA.bigint,received:Q.parsedType}),LQ}gte(A,Q){return this.setLimit("min",A,!0,tA.toString(Q))}gt(A,Q){return this.setLimit("min",A,!1,tA.toString(Q))}lte(A,Q){return this.setLimit("max",A,!0,tA.toString(Q))}lt(A,Q){return this.setLimit("max",A,!1,tA.toString(Q))}setLimit(A,Q,B,Y){return new P7({...this._def,checks:[...this._def.checks,{kind:A,value:Q,inclusive:B,message:tA.toString(Y)}]})}_addCheck(A){return new P7({...this._def,checks:[...this._def.checks,A]})}positive(A){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:tA.toString(A)})}negative(A){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:tA.toString(A)})}nonpositive(A){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:tA.toString(A)})}nonnegative(A){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:tA.toString(A)})}multipleOf(A,Q){return this._addCheck({kind:"multipleOf",value:A,message:tA.toString(Q)})}get minValue(){let A=null;for(let Q of this._def.checks)if(Q.kind==="min"){if(A===null||Q.value>A)A=Q.value}return A}get maxValue(){let A=null;for(let Q of this._def.checks)if(Q.kind==="max"){if(A===null||Q.value{return new P7({checks:[],typeName:zQ.ZodBigInt,coerce:A?.coerce??!1,...pQ(A)})};class yU extends JB{_parse(A){if(this._def.coerce)A.data=Boolean(A.data);if(this._getType(A)!==kA.boolean){let B=this._getOrReturnCtx(A);return xA(B,{code:RA.invalid_type,expected:kA.boolean,received:B.parsedType}),LQ}return wJ(A.data)}}yU.create=(A)=>{return new yU({typeName:zQ.ZodBoolean,coerce:A?.coerce||!1,...pQ(A)})};class JZ extends JB{_parse(A){if(this._def.coerce)A.data=new Date(A.data);if(this._getType(A)!==kA.date){let J=this._getOrReturnCtx(A);return xA(J,{code:RA.invalid_type,expected:kA.date,received:J.parsedType}),LQ}if(Number.isNaN(A.data.getTime())){let J=this._getOrReturnCtx(A);return xA(J,{code:RA.invalid_date}),LQ}let B=new WJ,Y=void 0;for(let J of this._def.checks)if(J.kind==="min"){if(A.data.getTime()J.value)Y=this._getOrReturnCtx(A,Y),xA(Y,{code:RA.too_big,message:J.message,inclusive:!0,exact:!1,maximum:J.value,type:"date"}),B.dirty()}else FB.assertNever(J);return{status:B.value,value:new Date(A.data.getTime())}}_addCheck(A){return new JZ({...this._def,checks:[...this._def.checks,A]})}min(A,Q){return this._addCheck({kind:"min",value:A.getTime(),message:tA.toString(Q)})}max(A,Q){return this._addCheck({kind:"max",value:A.getTime(),message:tA.toString(Q)})}get minDate(){let A=null;for(let Q of this._def.checks)if(Q.kind==="min"){if(A===null||Q.value>A)A=Q.value}return A!=null?new Date(A):null}get maxDate(){let A=null;for(let Q of this._def.checks)if(Q.kind==="max"){if(A===null||Q.value{return new JZ({checks:[],coerce:A?.coerce||!1,typeName:zQ.ZodDate,...pQ(A)})};class pH extends JB{_parse(A){if(this._getType(A)!==kA.symbol){let B=this._getOrReturnCtx(A);return xA(B,{code:RA.invalid_type,expected:kA.symbol,received:B.parsedType}),LQ}return wJ(A.data)}}pH.create=(A)=>{return new pH({typeName:zQ.ZodSymbol,...pQ(A)})};class gU extends JB{_parse(A){if(this._getType(A)!==kA.undefined){let B=this._getOrReturnCtx(A);return xA(B,{code:RA.invalid_type,expected:kA.undefined,received:B.parsedType}),LQ}return wJ(A.data)}}gU.create=(A)=>{return new gU({typeName:zQ.ZodUndefined,...pQ(A)})};class hU extends JB{_parse(A){if(this._getType(A)!==kA.null){let B=this._getOrReturnCtx(A);return xA(B,{code:RA.invalid_type,expected:kA.null,received:B.parsedType}),LQ}return wJ(A.data)}}hU.create=(A)=>{return new hU({typeName:zQ.ZodNull,...pQ(A)})};class CZ extends JB{constructor(){super(...arguments);this._any=!0}_parse(A){return wJ(A.data)}}CZ.create=(A)=>{return new CZ({typeName:zQ.ZodAny,...pQ(A)})};class j7 extends JB{constructor(){super(...arguments);this._unknown=!0}_parse(A){return wJ(A.data)}}j7.create=(A)=>{return new j7({typeName:zQ.ZodUnknown,...pQ(A)})};class r1 extends JB{_parse(A){let Q=this._getOrReturnCtx(A);return xA(Q,{code:RA.invalid_type,expected:kA.never,received:Q.parsedType}),LQ}}r1.create=(A)=>{return new r1({typeName:zQ.ZodNever,...pQ(A)})};class iH extends JB{_parse(A){if(this._getType(A)!==kA.undefined){let B=this._getOrReturnCtx(A);return xA(B,{code:RA.invalid_type,expected:kA.void,received:B.parsedType}),LQ}return wJ(A.data)}}iH.create=(A)=>{return new iH({typeName:zQ.ZodVoid,...pQ(A)})};class gC extends JB{_parse(A){let{ctx:Q,status:B}=this._processInputParams(A),Y=this._def;if(Q.parsedType!==kA.array)return xA(Q,{code:RA.invalid_type,expected:kA.array,received:Q.parsedType}),LQ;if(Y.exactLength!==null){let C=Q.data.length>Y.exactLength.value,X=Q.data.lengthY.maxLength.value)xA(Q,{code:RA.too_big,maximum:Y.maxLength.value,type:"array",inclusive:!0,exact:!1,message:Y.maxLength.message}),B.dirty()}if(Q.common.async)return Promise.all([...Q.data].map((C,X)=>{return Y.type._parseAsync(new xC(Q,C,Q.path,X))})).then((C)=>{return WJ.mergeArray(B,C)});let J=[...Q.data].map((C,X)=>{return Y.type._parseSync(new xC(Q,C,Q.path,X))});return WJ.mergeArray(B,J)}get element(){return this._def.type}min(A,Q){return new gC({...this._def,minLength:{value:A,message:tA.toString(Q)}})}max(A,Q){return new gC({...this._def,maxLength:{value:A,message:tA.toString(Q)}})}length(A,Q){return new gC({...this._def,exactLength:{value:A,message:tA.toString(Q)}})}nonempty(A){return this.min(1,A)}}gC.create=(A,Q)=>{return new gC({type:A,minLength:null,maxLength:null,exactLength:null,typeName:zQ.ZodArray,...pQ(Q)})};function _U(A){if(A instanceof y0){let Q={};for(let B in A.shape){let Y=A.shape[B];Q[B]=hC.create(_U(Y))}return new y0({...A._def,shape:()=>Q})}else if(A instanceof gC)return new gC({...A._def,type:_U(A.element)});else if(A instanceof hC)return hC.create(_U(A.unwrap()));else if(A instanceof g6)return g6.create(_U(A.unwrap()));else if(A instanceof a1)return a1.create(A.items.map((Q)=>_U(Q)));else return A}class y0 extends JB{constructor(){super(...arguments);this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let A=this._def.shape(),Q=FB.objectKeys(A);return this._cached={shape:A,keys:Q},this._cached}_parse(A){if(this._getType(A)!==kA.object){let W=this._getOrReturnCtx(A);return xA(W,{code:RA.invalid_type,expected:kA.object,received:W.parsedType}),LQ}let{status:B,ctx:Y}=this._processInputParams(A),{shape:J,keys:C}=this._getCached(),X=[];if(!(this._def.catchall instanceof r1&&this._def.unknownKeys==="strip")){for(let W in Y.data)if(!C.includes(W))X.push(W)}let G=[];for(let W of C){let F=J[W],Z=Y.data[W];G.push({key:{status:"valid",value:W},value:F._parse(new xC(Y,Z,Y.path,W)),alwaysSet:W in Y.data})}if(this._def.catchall instanceof r1){let W=this._def.unknownKeys;if(W==="passthrough")for(let F of X)G.push({key:{status:"valid",value:F},value:{status:"valid",value:Y.data[F]}});else if(W==="strict"){if(X.length>0)xA(Y,{code:RA.unrecognized_keys,keys:X}),B.dirty()}else if(W==="strip");else throw Error("Internal ZodObject error: invalid unknownKeys value.")}else{let W=this._def.catchall;for(let F of X){let Z=Y.data[F];G.push({key:{status:"valid",value:F},value:W._parse(new xC(Y,Z,Y.path,F)),alwaysSet:F in Y.data})}}if(Y.common.async)return Promise.resolve().then(async()=>{let W=[];for(let F of G){let Z=await F.key,U=await F.value;W.push({key:Z,value:U,alwaysSet:F.alwaysSet})}return W}).then((W)=>{return WJ.mergeObjectSync(B,W)});else return WJ.mergeObjectSync(B,G)}get shape(){return this._def.shape()}strict(A){return tA.errToObj,new y0({...this._def,unknownKeys:"strict",...A!==void 0?{errorMap:(Q,B)=>{let Y=this._def.errorMap?.(Q,B).message??B.defaultError;if(Q.code==="unrecognized_keys")return{message:tA.errToObj(A).message??Y};return{message:Y}}}:{}})}strip(){return new y0({...this._def,unknownKeys:"strip"})}passthrough(){return new y0({...this._def,unknownKeys:"passthrough"})}extend(A){return new y0({...this._def,shape:()=>({...this._def.shape(),...A})})}merge(A){return new y0({unknownKeys:A._def.unknownKeys,catchall:A._def.catchall,shape:()=>({...this._def.shape(),...A._def.shape()}),typeName:zQ.ZodObject})}setKey(A,Q){return this.augment({[A]:Q})}catchall(A){return new y0({...this._def,catchall:A})}pick(A){let Q={};for(let B of FB.objectKeys(A))if(A[B]&&this.shape[B])Q[B]=this.shape[B];return new y0({...this._def,shape:()=>Q})}omit(A){let Q={};for(let B of FB.objectKeys(this.shape))if(!A[B])Q[B]=this.shape[B];return new y0({...this._def,shape:()=>Q})}deepPartial(){return _U(this)}partial(A){let Q={};for(let B of FB.objectKeys(this.shape)){let Y=this.shape[B];if(A&&!A[B])Q[B]=Y;else Q[B]=Y.optional()}return new y0({...this._def,shape:()=>Q})}required(A){let Q={};for(let B of FB.objectKeys(this.shape))if(A&&!A[B])Q[B]=this.shape[B];else{let J=this.shape[B];while(J instanceof hC)J=J._def.innerType;Q[B]=J}return new y0({...this._def,shape:()=>Q})}keyof(){return w7A(FB.objectKeys(this.shape))}}y0.create=(A,Q)=>{return new y0({shape:()=>A,unknownKeys:"strip",catchall:r1.create(),typeName:zQ.ZodObject,...pQ(Q)})};y0.strictCreate=(A,Q)=>{return new y0({shape:()=>A,unknownKeys:"strict",catchall:r1.create(),typeName:zQ.ZodObject,...pQ(Q)})};y0.lazycreate=(A,Q)=>{return new y0({shape:A,unknownKeys:"strip",catchall:r1.create(),typeName:zQ.ZodObject,...pQ(Q)})};class xU extends JB{_parse(A){let{ctx:Q}=this._processInputParams(A),B=this._def.options;function Y(J){for(let X of J)if(X.result.status==="valid")return X.result;for(let X of J)if(X.result.status==="dirty")return Q.common.issues.push(...X.ctx.common.issues),X.result;let C=J.map((X)=>new g9(X.ctx.common.issues));return xA(Q,{code:RA.invalid_union,unionErrors:C}),LQ}if(Q.common.async)return Promise.all(B.map(async(J)=>{let C={...Q,common:{...Q.common,issues:[]},parent:null};return{result:await J._parseAsync({data:Q.data,path:Q.path,parent:C}),ctx:C}})).then(Y);else{let J=void 0,C=[];for(let G of B){let W={...Q,common:{...Q.common,issues:[]},parent:null},F=G._parseSync({data:Q.data,path:Q.path,parent:W});if(F.status==="valid")return F;else if(F.status==="dirty"&&!J)J={result:F,ctx:W};if(W.common.issues.length)C.push(W.common.issues)}if(J)return Q.common.issues.push(...J.ctx.common.issues),J.result;let X=C.map((G)=>new g9(G));return xA(Q,{code:RA.invalid_union,unionErrors:X}),LQ}}get options(){return this._def.options}}xU.create=(A,Q)=>{return new xU({options:A,typeName:zQ.ZodUnion,...pQ(Q)})};var y6=(A)=>{if(A instanceof bU)return y6(A.schema);else if(A instanceof fC)return y6(A.innerType());else if(A instanceof mU)return[A.value];else if(A instanceof T7)return A.options;else if(A instanceof uU)return FB.objectValues(A.enum);else if(A instanceof dU)return y6(A._def.innerType);else if(A instanceof gU)return[void 0];else if(A instanceof hU)return[null];else if(A instanceof hC)return[void 0,...y6(A.unwrap())];else if(A instanceof g6)return[null,...y6(A.unwrap())];else if(A instanceof _R)return y6(A.unwrap());else if(A instanceof lU)return y6(A.unwrap());else if(A instanceof cU)return y6(A._def.innerType);else return[]};class kR extends JB{_parse(A){let{ctx:Q}=this._processInputParams(A);if(Q.parsedType!==kA.object)return xA(Q,{code:RA.invalid_type,expected:kA.object,received:Q.parsedType}),LQ;let B=this.discriminator,Y=Q.data[B],J=this.optionsMap.get(Y);if(!J)return xA(Q,{code:RA.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[B]}),LQ;if(Q.common.async)return J._parseAsync({data:Q.data,path:Q.path,parent:Q});else return J._parseSync({data:Q.data,path:Q.path,parent:Q})}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(A,Q,B){let Y=new Map;for(let J of Q){let C=y6(J.shape[A]);if(!C.length)throw Error(`A discriminator value for key \`${A}\` could not be extracted from all schema options`);for(let X of C){if(Y.has(X))throw Error(`Discriminator property ${String(A)} has duplicate value ${String(X)}`);Y.set(X,J)}}return new kR({typeName:zQ.ZodDiscriminatedUnion,discriminator:A,options:Q,optionsMap:Y,...pQ(B)})}}function Ff(A,Q){let B=s1(A),Y=s1(Q);if(A===Q)return{valid:!0,data:A};else if(B===kA.object&&Y===kA.object){let J=FB.objectKeys(Q),C=FB.objectKeys(A).filter((G)=>J.indexOf(G)!==-1),X={...A,...Q};for(let G of C){let W=Ff(A[G],Q[G]);if(!W.valid)return{valid:!1};X[G]=W.data}return{valid:!0,data:X}}else if(B===kA.array&&Y===kA.array){if(A.length!==Q.length)return{valid:!1};let J=[];for(let C=0;C{if(TR(J)||TR(C))return LQ;let X=Ff(J.value,C.value);if(!X.valid)return xA(B,{code:RA.invalid_intersection_types}),LQ;if(SR(J)||SR(C))Q.dirty();return{status:Q.value,value:X.data}};if(B.common.async)return Promise.all([this._def.left._parseAsync({data:B.data,path:B.path,parent:B}),this._def.right._parseAsync({data:B.data,path:B.path,parent:B})]).then(([J,C])=>Y(J,C));else return Y(this._def.left._parseSync({data:B.data,path:B.path,parent:B}),this._def.right._parseSync({data:B.data,path:B.path,parent:B}))}}fU.create=(A,Q,B)=>{return new fU({left:A,right:Q,typeName:zQ.ZodIntersection,...pQ(B)})};class a1 extends JB{_parse(A){let{status:Q,ctx:B}=this._processInputParams(A);if(B.parsedType!==kA.array)return xA(B,{code:RA.invalid_type,expected:kA.array,received:B.parsedType}),LQ;if(B.data.lengththis._def.items.length)xA(B,{code:RA.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),Q.dirty();let J=[...B.data].map((C,X)=>{let G=this._def.items[X]||this._def.rest;if(!G)return null;return G._parse(new xC(B,C,B.path,X))}).filter((C)=>!!C);if(B.common.async)return Promise.all(J).then((C)=>{return WJ.mergeArray(Q,C)});else return WJ.mergeArray(Q,J)}get items(){return this._def.items}rest(A){return new a1({...this._def,rest:A})}}a1.create=(A,Q)=>{if(!Array.isArray(A))throw Error("You must pass an array of schemas to z.tuple([ ... ])");return new a1({items:A,typeName:zQ.ZodTuple,rest:null,...pQ(Q)})};class nH extends JB{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(A){let{status:Q,ctx:B}=this._processInputParams(A);if(B.parsedType!==kA.object)return xA(B,{code:RA.invalid_type,expected:kA.object,received:B.parsedType}),LQ;let Y=[],J=this._def.keyType,C=this._def.valueType;for(let X in B.data)Y.push({key:J._parse(new xC(B,X,B.path,X)),value:C._parse(new xC(B,B.data[X],B.path,X)),alwaysSet:X in B.data});if(B.common.async)return WJ.mergeObjectAsync(Q,Y);else return WJ.mergeObjectSync(Q,Y)}get element(){return this._def.valueType}static create(A,Q,B){if(Q instanceof JB)return new nH({keyType:A,valueType:Q,typeName:zQ.ZodRecord,...pQ(B)});return new nH({keyType:yC.create(),valueType:A,typeName:zQ.ZodRecord,...pQ(Q)})}}class sH extends JB{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(A){let{status:Q,ctx:B}=this._processInputParams(A);if(B.parsedType!==kA.map)return xA(B,{code:RA.invalid_type,expected:kA.map,received:B.parsedType}),LQ;let Y=this._def.keyType,J=this._def.valueType,C=[...B.data.entries()].map(([X,G],W)=>{return{key:Y._parse(new xC(B,X,B.path,[W,"key"])),value:J._parse(new xC(B,G,B.path,[W,"value"]))}});if(B.common.async){let X=new Map;return Promise.resolve().then(async()=>{for(let G of C){let W=await G.key,F=await G.value;if(W.status==="aborted"||F.status==="aborted")return LQ;if(W.status==="dirty"||F.status==="dirty")Q.dirty();X.set(W.value,F.value)}return{status:Q.value,value:X}})}else{let X=new Map;for(let G of C){let{key:W,value:F}=G;if(W.status==="aborted"||F.status==="aborted")return LQ;if(W.status==="dirty"||F.status==="dirty")Q.dirty();X.set(W.value,F.value)}return{status:Q.value,value:X}}}}sH.create=(A,Q,B)=>{return new sH({valueType:Q,keyType:A,typeName:zQ.ZodMap,...pQ(B)})};class XZ extends JB{_parse(A){let{status:Q,ctx:B}=this._processInputParams(A);if(B.parsedType!==kA.set)return xA(B,{code:RA.invalid_type,expected:kA.set,received:B.parsedType}),LQ;let Y=this._def;if(Y.minSize!==null){if(B.data.sizeY.maxSize.value)xA(B,{code:RA.too_big,maximum:Y.maxSize.value,type:"set",inclusive:!0,exact:!1,message:Y.maxSize.message}),Q.dirty()}let J=this._def.valueType;function C(G){let W=new Set;for(let F of G){if(F.status==="aborted")return LQ;if(F.status==="dirty")Q.dirty();W.add(F.value)}return{status:Q.value,value:W}}let X=[...B.data.values()].map((G,W)=>J._parse(new xC(B,G,B.path,W)));if(B.common.async)return Promise.all(X).then((G)=>C(G));else return C(X)}min(A,Q){return new XZ({...this._def,minSize:{value:A,message:tA.toString(Q)}})}max(A,Q){return new XZ({...this._def,maxSize:{value:A,message:tA.toString(Q)}})}size(A,Q){return this.min(A,Q).max(A,Q)}nonempty(A){return this.min(1,A)}}XZ.create=(A,Q)=>{return new XZ({valueType:A,minSize:null,maxSize:null,typeName:zQ.ZodSet,...pQ(Q)})};class vU extends JB{constructor(){super(...arguments);this.validate=this.implement}_parse(A){let{ctx:Q}=this._processInputParams(A);if(Q.parsedType!==kA.function)return xA(Q,{code:RA.invalid_type,expected:kA.function,received:Q.parsedType}),LQ;function B(X,G){return lH({data:X,path:Q.path,errorMaps:[Q.common.contextualErrorMap,Q.schemaErrorMap,SU(),v6].filter((W)=>!!W),issueData:{code:RA.invalid_arguments,argumentsError:G}})}function Y(X,G){return lH({data:X,path:Q.path,errorMaps:[Q.common.contextualErrorMap,Q.schemaErrorMap,SU(),v6].filter((W)=>!!W),issueData:{code:RA.invalid_return_type,returnTypeError:G}})}let J={errorMap:Q.common.contextualErrorMap},C=Q.data;if(this._def.returns instanceof GZ){let X=this;return wJ(async function(...G){let W=new g9([]),F=await X._def.args.parseAsync(G,J).catch(($)=>{throw W.addIssue(B(G,$)),W}),Z=await Reflect.apply(C,this,F);return await X._def.returns._def.type.parseAsync(Z,J).catch(($)=>{throw W.addIssue(Y(Z,$)),W})})}else{let X=this;return wJ(function(...G){let W=X._def.args.safeParse(G,J);if(!W.success)throw new g9([B(G,W.error)]);let F=Reflect.apply(C,this,W.data),Z=X._def.returns.safeParse(F,J);if(!Z.success)throw new g9([Y(F,Z.error)]);return Z.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...A){return new vU({...this._def,args:a1.create(A).rest(j7.create())})}returns(A){return new vU({...this._def,returns:A})}implement(A){return this.parse(A)}strictImplement(A){return this.parse(A)}static create(A,Q,B){return new vU({args:A?A:a1.create([]).rest(j7.create()),returns:Q||j7.create(),typeName:zQ.ZodFunction,...pQ(B)})}}class bU extends JB{get schema(){return this._def.getter()}_parse(A){let{ctx:Q}=this._processInputParams(A);return this._def.getter()._parse({data:Q.data,path:Q.path,parent:Q})}}bU.create=(A,Q)=>{return new bU({getter:A,typeName:zQ.ZodLazy,...pQ(Q)})};class mU extends JB{_parse(A){if(A.data!==this._def.value){let Q=this._getOrReturnCtx(A);return xA(Q,{received:Q.data,code:RA.invalid_literal,expected:this._def.value}),LQ}return{status:"valid",value:A.data}}get value(){return this._def.value}}mU.create=(A,Q)=>{return new mU({value:A,typeName:zQ.ZodLiteral,...pQ(Q)})};function w7A(A,Q){return new T7({values:A,typeName:zQ.ZodEnum,...pQ(Q)})}class T7 extends JB{_parse(A){if(typeof A.data!=="string"){let Q=this._getOrReturnCtx(A),B=this._def.values;return xA(Q,{expected:FB.joinValues(B),received:Q.parsedType,code:RA.invalid_type}),LQ}if(!this._cache)this._cache=new Set(this._def.values);if(!this._cache.has(A.data)){let Q=this._getOrReturnCtx(A),B=this._def.values;return xA(Q,{received:Q.data,code:RA.invalid_enum_value,options:B}),LQ}return wJ(A.data)}get options(){return this._def.values}get enum(){let A={};for(let Q of this._def.values)A[Q]=Q;return A}get Values(){let A={};for(let Q of this._def.values)A[Q]=Q;return A}get Enum(){let A={};for(let Q of this._def.values)A[Q]=Q;return A}extract(A,Q=this._def){return T7.create(A,{...this._def,...Q})}exclude(A,Q=this._def){return T7.create(this.options.filter((B)=>!A.includes(B)),{...this._def,...Q})}}T7.create=w7A;class uU extends JB{_parse(A){let Q=FB.getValidEnumValues(this._def.values),B=this._getOrReturnCtx(A);if(B.parsedType!==kA.string&&B.parsedType!==kA.number){let Y=FB.objectValues(Q);return xA(B,{expected:FB.joinValues(Y),received:B.parsedType,code:RA.invalid_type}),LQ}if(!this._cache)this._cache=new Set(FB.getValidEnumValues(this._def.values));if(!this._cache.has(A.data)){let Y=FB.objectValues(Q);return xA(B,{received:B.data,code:RA.invalid_enum_value,options:Y}),LQ}return wJ(A.data)}get enum(){return this._def.values}}uU.create=(A,Q)=>{return new uU({values:A,typeName:zQ.ZodNativeEnum,...pQ(Q)})};class GZ extends JB{unwrap(){return this._def.type}_parse(A){let{ctx:Q}=this._processInputParams(A);if(Q.parsedType!==kA.promise&&Q.common.async===!1)return xA(Q,{code:RA.invalid_type,expected:kA.promise,received:Q.parsedType}),LQ;let B=Q.parsedType===kA.promise?Q.data:Promise.resolve(Q.data);return wJ(B.then((Y)=>{return this._def.type.parseAsync(Y,{path:Q.path,errorMap:Q.common.contextualErrorMap})}))}}GZ.create=(A,Q)=>{return new GZ({type:A,typeName:zQ.ZodPromise,...pQ(Q)})};class fC extends JB{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===zQ.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(A){let{status:Q,ctx:B}=this._processInputParams(A),Y=this._def.effect||null,J={addIssue:(C)=>{if(xA(B,C),C.fatal)Q.abort();else Q.dirty()},get path(){return B.path}};if(J.addIssue=J.addIssue.bind(J),Y.type==="preprocess"){let C=Y.transform(B.data,J);if(B.common.async)return Promise.resolve(C).then(async(X)=>{if(Q.value==="aborted")return LQ;let G=await this._def.schema._parseAsync({data:X,path:B.path,parent:B});if(G.status==="aborted")return LQ;if(G.status==="dirty")return YZ(G.value);if(Q.value==="dirty")return YZ(G.value);return G});else{if(Q.value==="aborted")return LQ;let X=this._def.schema._parseSync({data:C,path:B.path,parent:B});if(X.status==="aborted")return LQ;if(X.status==="dirty")return YZ(X.value);if(Q.value==="dirty")return YZ(X.value);return X}}if(Y.type==="refinement"){let C=(X)=>{let G=Y.refinement(X,J);if(B.common.async)return Promise.resolve(G);if(G instanceof Promise)throw Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return X};if(B.common.async===!1){let X=this._def.schema._parseSync({data:B.data,path:B.path,parent:B});if(X.status==="aborted")return LQ;if(X.status==="dirty")Q.dirty();return C(X.value),{status:Q.value,value:X.value}}else return this._def.schema._parseAsync({data:B.data,path:B.path,parent:B}).then((X)=>{if(X.status==="aborted")return LQ;if(X.status==="dirty")Q.dirty();return C(X.value).then(()=>{return{status:Q.value,value:X.value}})})}if(Y.type==="transform")if(B.common.async===!1){let C=this._def.schema._parseSync({data:B.data,path:B.path,parent:B});if(!w7(C))return LQ;let X=Y.transform(C.value,J);if(X instanceof Promise)throw Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:Q.value,value:X}}else return this._def.schema._parseAsync({data:B.data,path:B.path,parent:B}).then((C)=>{if(!w7(C))return LQ;return Promise.resolve(Y.transform(C.value,J)).then((X)=>({status:Q.value,value:X}))});FB.assertNever(Y)}}fC.create=(A,Q,B)=>{return new fC({schema:A,typeName:zQ.ZodEffects,effect:Q,...pQ(B)})};fC.createWithPreprocess=(A,Q,B)=>{return new fC({schema:Q,effect:{type:"preprocess",transform:A},typeName:zQ.ZodEffects,...pQ(B)})};class hC extends JB{_parse(A){if(this._getType(A)===kA.undefined)return wJ(void 0);return this._def.innerType._parse(A)}unwrap(){return this._def.innerType}}hC.create=(A,Q)=>{return new hC({innerType:A,typeName:zQ.ZodOptional,...pQ(Q)})};class g6 extends JB{_parse(A){if(this._getType(A)===kA.null)return wJ(null);return this._def.innerType._parse(A)}unwrap(){return this._def.innerType}}g6.create=(A,Q)=>{return new g6({innerType:A,typeName:zQ.ZodNullable,...pQ(Q)})};class dU extends JB{_parse(A){let{ctx:Q}=this._processInputParams(A),B=Q.data;if(Q.parsedType===kA.undefined)B=this._def.defaultValue();return this._def.innerType._parse({data:B,path:Q.path,parent:Q})}removeDefault(){return this._def.innerType}}dU.create=(A,Q)=>{return new dU({innerType:A,typeName:zQ.ZodDefault,defaultValue:typeof Q.default==="function"?Q.default:()=>Q.default,...pQ(Q)})};class cU extends JB{_parse(A){let{ctx:Q}=this._processInputParams(A),B={...Q,common:{...Q.common,issues:[]}},Y=this._def.innerType._parse({data:B.data,path:B.path,parent:{...B}});if(kU(Y))return Y.then((J)=>{return{status:"valid",value:J.status==="valid"?J.value:this._def.catchValue({get error(){return new g9(B.common.issues)},input:B.data})}});else return{status:"valid",value:Y.status==="valid"?Y.value:this._def.catchValue({get error(){return new g9(B.common.issues)},input:B.data})}}removeCatch(){return this._def.innerType}}cU.create=(A,Q)=>{return new cU({innerType:A,typeName:zQ.ZodCatch,catchValue:typeof Q.catch==="function"?Q.catch:()=>Q.catch,...pQ(Q)})};class rH extends JB{_parse(A){if(this._getType(A)!==kA.nan){let B=this._getOrReturnCtx(A);return xA(B,{code:RA.invalid_type,expected:kA.nan,received:B.parsedType}),LQ}return{status:"valid",value:A.data}}}rH.create=(A)=>{return new rH({typeName:zQ.ZodNaN,...pQ(A)})};var hQB=Symbol("zod_brand");class _R extends JB{_parse(A){let{ctx:Q}=this._processInputParams(A),B=Q.data;return this._def.type._parse({data:B,path:Q.path,parent:Q})}unwrap(){return this._def.type}}class aH extends JB{_parse(A){let{status:Q,ctx:B}=this._processInputParams(A);if(B.common.async)return(async()=>{let J=await this._def.in._parseAsync({data:B.data,path:B.path,parent:B});if(J.status==="aborted")return LQ;if(J.status==="dirty")return Q.dirty(),YZ(J.value);else return this._def.out._parseAsync({data:J.value,path:B.path,parent:B})})();else{let Y=this._def.in._parseSync({data:B.data,path:B.path,parent:B});if(Y.status==="aborted")return LQ;if(Y.status==="dirty")return Q.dirty(),{status:"dirty",value:Y.value};else return this._def.out._parseSync({data:Y.value,path:B.path,parent:B})}}static create(A,Q){return new aH({in:A,out:Q,typeName:zQ.ZodPipeline})}}class lU extends JB{_parse(A){let Q=this._def.innerType._parse(A),B=(Y)=>{if(w7(Y))Y.value=Object.freeze(Y.value);return Y};return kU(Q)?Q.then((Y)=>B(Y)):B(Q)}unwrap(){return this._def.innerType}}lU.create=(A,Q)=>{return new lU({innerType:A,typeName:zQ.ZodReadonly,...pQ(Q)})};function q7A(A,Q){let B=typeof A==="function"?A(Q):typeof A==="string"?{message:A}:A;return typeof B==="string"?{message:B}:B}function j7A(A,Q={},B){if(A)return CZ.create().superRefine((Y,J)=>{let C=A(Y);if(C instanceof Promise)return C.then((X)=>{if(!X){let G=q7A(Q,Y),W=G.fatal??B??!0;J.addIssue({code:"custom",...G,fatal:W})}});if(!C){let X=q7A(Q,Y),G=X.fatal??B??!0;J.addIssue({code:"custom",...X,fatal:G})}return});return CZ.create()}var xQB={object:y0.lazycreate},zQ;(function(A){A.ZodString="ZodString",A.ZodNumber="ZodNumber",A.ZodNaN="ZodNaN",A.ZodBigInt="ZodBigInt",A.ZodBoolean="ZodBoolean",A.ZodDate="ZodDate",A.ZodSymbol="ZodSymbol",A.ZodUndefined="ZodUndefined",A.ZodNull="ZodNull",A.ZodAny="ZodAny",A.ZodUnknown="ZodUnknown",A.ZodNever="ZodNever",A.ZodVoid="ZodVoid",A.ZodArray="ZodArray",A.ZodObject="ZodObject",A.ZodUnion="ZodUnion",A.ZodDiscriminatedUnion="ZodDiscriminatedUnion",A.ZodIntersection="ZodIntersection",A.ZodTuple="ZodTuple",A.ZodRecord="ZodRecord",A.ZodMap="ZodMap",A.ZodSet="ZodSet",A.ZodFunction="ZodFunction",A.ZodLazy="ZodLazy",A.ZodLiteral="ZodLiteral",A.ZodEnum="ZodEnum",A.ZodEffects="ZodEffects",A.ZodNativeEnum="ZodNativeEnum",A.ZodOptional="ZodOptional",A.ZodNullable="ZodNullable",A.ZodDefault="ZodDefault",A.ZodCatch="ZodCatch",A.ZodPromise="ZodPromise",A.ZodBranded="ZodBranded",A.ZodPipeline="ZodPipeline",A.ZodReadonly="ZodReadonly"})(zQ||(zQ={}));var fQB=(A,Q={message:`Input not instance of ${A.name}`})=>j7A((B)=>B instanceof A,Q),O7A=yC.create,P7A=O7.create,bQB=rH.create,mQB=P7.create,T7A=yU.create,uQB=JZ.create,dQB=pH.create,cQB=gU.create,lQB=hU.create,pQB=CZ.create,iQB=j7.create,nQB=r1.create,sQB=iH.create,rQB=gC.create,aQB=y0.create,oQB=y0.strictCreate,tQB=xU.create,eQB=kR.create,ABB=fU.create,QBB=a1.create,BBB=nH.create,YBB=sH.create,JBB=XZ.create,CBB=vU.create,XBB=bU.create,GBB=mU.create,WBB=T7.create,FBB=uU.create,ZBB=GZ.create,$BB=fC.create,UBB=hC.create,EBB=g6.create,KBB=fC.createWithPreprocess,VBB=aH.create,IBB=()=>O7A().optional(),HBB=()=>P7A().optional(),DBB=()=>T7A().optional(),NBB={string:(A)=>yC.create({...A,coerce:!0}),number:(A)=>O7.create({...A,coerce:!0}),boolean:(A)=>yU.create({...A,coerce:!0}),bigint:(A)=>P7.create({...A,coerce:!0}),date:(A)=>JZ.create({...A,coerce:!0})};var LBB=LQ;var SB=s;var bC;(function(A){A[A.EXTEND=1]="EXTEND",A[A.WRAP=2]="WRAP",A[A.CROP=3]="CROP"})(bC||(bC={}));var S7=s.object({bitmap:s.object({data:s.union([s.instanceof(Buffer),s.instanceof(Uint8Array)]),width:s.number(),height:s.number()})});var qBB=s.object({src:S7,x:s.number().optional(),y:s.number().optional(),srcX:s.number().optional(),srcY:s.number().optional(),srcW:s.number().optional(),srcH:s.number().optional()}),MBB=s.union([S7,qBB]),pU={blit(A,Q){let B=MBB.parse(Q),{src:Y,x:J=0,y:C=0,srcX:X=0,srcY:G=0,srcW:W=Y.bitmap.width,srcH:F=Y.bitmap.height}="bitmap"in B?{src:B}:B;if(!("bitmap"in Y))throw Error("The source must be a Jimp image");if(typeof J!=="number"||typeof C!=="number")throw Error("x and y must be numbers");J=Math.round(J),C=Math.round(C),X=Math.round(X),G=Math.round(G),W=Math.round(W),F=Math.round(F);let Z=A.bitmap.width,U=A.bitmap.height;return I5(Y,X,G,W,F,function($,E,K){let I=J+$-X,V=C+E-G;if(I>=0&&V>=0&&Z-I>0&&U-V>0){let H=A.getPixelIndex(I,V),D={r:Y.bitmap.data[K]||0,g:Y.bitmap.data[K+1]||0,b:Y.bitmap.data[K+2]||0,a:Y.bitmap.data[K+3]||0},L={r:A.bitmap.data[H]||0,g:A.bitmap.data[H+1]||0,b:A.bitmap.data[H+2]||0,a:A.bitmap.data[H+3]||0};A.bitmap.data[H]=(D.a*(D.r-L.r)-L.r+255>>8)+L.r,A.bitmap.data[H+1]=(D.a*(D.g-L.g)-L.g+255>>8)+L.g,A.bitmap.data[H+2]=(D.a*(D.b-L.b)-L.b+255>>8)+L.b,A.bitmap.data[H+3]=z0(L.a+D.a)}}),A}};var S7A=[1,57,41,21,203,34,97,73,227,91,149,62,105,45,39,137,241,107,3,173,39,71,65,238,219,101,187,87,81,151,141,133,249,117,221,209,197,187,177,169,5,153,73,139,133,127,243,233,223,107,103,99,191,23,177,171,165,159,77,149,9,139,135,131,253,245,119,231,224,109,211,103,25,195,189,23,45,175,171,83,81,79,155,151,147,9,141,137,67,131,129,251,123,30,235,115,113,221,217,53,13,51,50,49,193,189,185,91,179,175,43,169,83,163,5,79,155,19,75,147,145,143,35,69,17,67,33,65,255,251,247,243,239,59,29,229,113,111,219,27,213,105,207,51,201,199,49,193,191,47,93,183,181,179,11,87,43,85,167,165,163,161,159,157,155,77,19,75,37,73,145,143,141,35,138,137,135,67,33,131,129,255,63,250,247,61,121,239,237,117,29,229,227,225,111,55,109,216,213,211,209,207,205,203,201,199,197,195,193,48,190,47,93,185,183,181,179,178,176,175,173,171,85,21,167,165,41,163,161,5,79,157,78,154,153,19,75,149,74,147,73,144,143,71,141,140,139,137,17,135,134,133,66,131,65,129,1],k7A=[0,9,10,10,14,12,14,14,16,15,16,15,16,15,15,17,18,17,12,18,16,17,17,19,19,18,19,18,18,19,19,19,20,19,20,20,20,20,20,20,15,20,19,20,20,20,21,21,21,20,20,20,21,18,21,21,21,21,20,21,17,21,21,21,22,22,21,22,22,21,22,21,19,22,22,19,20,22,22,21,21,21,22,22,22,18,22,22,21,22,22,23,22,20,23,22,22,23,23,21,19,21,21,21,23,23,23,22,23,23,21,23,22,23,18,22,23,20,22,23,23,23,21,22,20,22,21,22,24,24,24,24,24,22,21,24,23,23,24,21,24,23,24,22,24,24,22,24,24,22,23,24,24,24,20,23,22,23,24,24,24,24,24,24,24,23,21,23,22,23,24,24,24,22,24,24,24,23,22,24,24,25,23,25,25,23,24,25,25,24,22,25,25,25,24,23,24,25,25,25,25,25,25,25,25,25,25,25,25,23,25,23,24,25,25,25,25,25,25,25,25,25,24,22,25,25,23,25,25,20,24,25,24,25,25,22,24,25,24,25,24,25,25,24,25,25,25,25,22,25,25,25,24,25,24,25,18];var _7A={blur(A,Q){if(typeof Q!=="number")throw Error("r must be a number");if(Q<1)throw Error("r must be greater than 0");let B,Y,J,C,X,G,W,F,Z,U,$,E,K,I=A.bitmap.width-1,V=A.bitmap.height-1,H=Q+1,D=S7A[Q],L=k7A[Q],z=[],M=[],N=[],q=[],w=[],P=[],_=2;while(_-- >0){E=0,K=0;for(G=0;GI?I:W)<<2),B+=A.bitmap.data[F++],Y+=A.bitmap.data[F++],J+=A.bitmap.data[F++],C+=A.bitmap.data[F];for(X=0;X0?F<<2:0;Z=K+w[X],U=K+P[X],B+=A.bitmap.data[Z++]-A.bitmap.data[U++],Y+=A.bitmap.data[Z++]-A.bitmap.data[U++],J+=A.bitmap.data[Z++]-A.bitmap.data[U++],C+=A.bitmap.data[Z]-A.bitmap.data[U++],E++}K+=A.bitmap.width<<2}for(X=0;XV?0:A.bitmap.width,B+=z[$],Y+=M[$],J+=N[$],C+=q[$];E=X<<2;for(G=0;G>>L),A.bitmap.data[E+1]=z0(Y*D>>>L),A.bitmap.data[E+2]=z0(J*D>>>L),A.bitmap.data[E+3]=z0(C*D>>>L),X===0)w[G]=((F=G+H)0?F*A.bitmap.width:0;Z=X+w[G],U=X+P[G],B+=z[Z]-z[U],Y+=M[Z]-M[U],J+=N[Z]-N[U],C+=q[Z]-q[U],E+=A.bitmap.width<<2}}}return A},gaussian(A,Q){if(typeof Q!=="number")throw Error("r must be a number");if(Q<1)throw Error("r must be greater than 0");let B=Math.ceil(Q*2.57),Y=B*2+1,J=Q*Q*2,C=J*Math.PI,X=[];for(let G=0;GA.bitmap.height?A.bitmap.height:A.bitmap.width)/2,J={x:typeof B.x==="number"?B.x:A.bitmap.width/2,y:typeof B.y==="number"?B.y:A.bitmap.height/2};return A.scan((C,X,G)=>{let W=Math.sqrt(Math.pow(C-J.x,2)+Math.pow(X-J.y,2));if(Y-W<=0)A.bitmap.data[G+3]=0;else if(Y-W<1)A.bitmap.data[G+3]=255*(Y-W)}),A}};var vR=s.array(s.number()).min(1).array(),OBB=s.object({kernel:vR,edgeHandling:s.nativeEnum(bC).optional()}),PBB=s.union([vR,OBB]),TBB=s.object({kernel:vR,x:s.number().optional(),y:s.number().optional(),w:s.number().optional(),h:s.number().optional()}),SBB=s.union([vR,TBB]),g7A=s.number().min(1).max(1/0),kBB=s.object({size:g7A,x:s.number().optional(),y:s.number().optional(),w:s.number().optional(),h:s.number().optional()}),_BB=s.union([g7A,kBB]);function y7A(A,Q,B,Y){let J=[0,0,0,0],C=(Q.length-1)/2;for(let X=0;X{Q.r[A.bitmap.data[J+0]]++,Q.g[A.bitmap.data[J+1]]++,Q.b[A.bitmap.data[J+2]]++}),Q}var $f=function(A,Q,B){return(A-Q)*255/(B-Q)},Uf=function(A){return[A.findIndex((Q)=>Q>0),255-A.slice().reverse().findIndex((Q)=>Q>0)]},iU={normalize(A){let Q=rBB(A),B={r:Uf(Q.r),g:Uf(Q.g),b:Uf(Q.b)};return A.scan((Y,J,C)=>{let X=A.bitmap.data[C+0],G=A.bitmap.data[C+1],W=A.bitmap.data[C+2];A.bitmap.data[C+0]=$f(X,B.r[0],B.r[1]),A.bitmap.data[C+1]=$f(G,B.g[0],B.g[1]),A.bitmap.data[C+2]=$f(W,B.b[0],B.b[1])}),A},invert(A){return A.scan((Q,B,Y)=>{A.bitmap.data[Y]=255-A.bitmap.data[Y],A.bitmap.data[Y+1]=255-A.bitmap.data[Y+1],A.bitmap.data[Y+2]=255-A.bitmap.data[Y+2]}),A},brightness(A,Q){if(typeof Q!=="number")throw Error("val must be numbers");return A.scan((B,Y,J)=>{A.bitmap.data[J]=z0(A.bitmap.data[J]*Q),A.bitmap.data[J+1]=z0(A.bitmap.data[J+1]*Q),A.bitmap.data[J+2]=z0(A.bitmap.data[J+2]*Q)}),A},contrast(A,Q){if(typeof Q!=="number")throw Error("val must be numbers");if(Q<-1||Q>1)throw Error("val must be a number between -1 and +1");let B=(Q+1)/(1-Q);function Y(J){return J=Math.floor(B*(J-127)+127),J<0?0:J>255?255:J}return A.scan((J,C,X)=>{A.bitmap.data[X]=Y(A.bitmap.data[X]),A.bitmap.data[X+1]=Y(A.bitmap.data[X+1]),A.bitmap.data[X+2]=Y(A.bitmap.data[X+2])}),A},posterize(A,Q){if(typeof Q!=="number")throw Error("n must be numbers");if(Q<2)Q=2;return A.scan((B,Y,J)=>{let C=A.bitmap.data[J],X=A.bitmap.data[J+1],G=A.bitmap.data[J+2];A.bitmap.data[J]=Math.floor(C/255*(Q-1))/(Q-1)*255,A.bitmap.data[J+1]=Math.floor(X/255*(Q-1))/(Q-1)*255,A.bitmap.data[J+2]=Math.floor(G/255*(Q-1))/(Q-1)*255}),A},greyscale(A){return A.scan((Q,B,Y)=>{let J=0.2126*A.bitmap.data[Y]+0.7152*A.bitmap.data[Y+1]+0.0722*A.bitmap.data[Y+2];A.bitmap.data[Y]=J,A.bitmap.data[Y+1]=J,A.bitmap.data[Y+2]=J}),A},opacity(A,Q){if(typeof Q!=="number")throw Error("f must be a number");if(Q<0||Q>1)throw Error("f must be a number from 0 to 1");return A.scan((B,Y,J)=>{let C=A.bitmap.data[J+3]*Q;A.bitmap.data[J+3]=C}),A},sepia(A){return A.scan((Q,B,Y)=>{let J=A.bitmap.data[Y],C=A.bitmap.data[Y+1],X=A.bitmap.data[Y+2];J=J*0.393+C*0.769+X*0.189,C=J*0.349+C*0.686+X*0.168,X=J*0.272+C*0.534+X*0.131,A.bitmap.data[Y]=J<255?J:255,A.bitmap.data[Y+1]=C<255?C:255,A.bitmap.data[Y+2]=X<255?X:255}),A},fade(A,Q){if(typeof Q!=="number")throw Error("f must be a number");if(Q<0||Q>1)throw Error("f must be a number from 0 to 1");return this.opacity(A,1-Q)},convolution(A,Q){let B=PBB.parse(Q),{kernel:Y,edgeHandling:J=bC.EXTEND}="kernel"in B?B:{kernel:B,edgeHandling:void 0};if(!Y[0])throw Error("kernel must be a matrix");let C=Buffer.from(A.bitmap.data),X=Y.length,G=Y[0].length,W=Math.floor(X/2),F=Math.floor(G/2),Z=-W,U=-F,$,E,K,I,V,H,D,L,z,M;return A.scan((N,q,w)=>{I=0,K=0,E=0;for(let P=Z;P<=W;P++)for(let _=U;_<=F;_++){if(L=N+_,z=q+P,$=Y[P+W][_+F],M=A.getPixelIndex(L,z,J),M===-1)D=0,H=0,V=0;else V=A.bitmap.data[M+0],H=A.bitmap.data[M+1],D=A.bitmap.data[M+2];E+=$*V,K+=$*H,I+=$*D}if(E<0)E=0;if(K<0)K=0;if(I<0)I=0;if(E>255)E=255;if(K>255)K=255;if(I>255)I=255;C[w+0]=E,C[w+1]=K,C[w+2]=I}),A.bitmap.data=C,A},opaque(A){return A.scan((Q,B,Y)=>{A.bitmap.data[Y+3]=255}),A},pixelate(A,Q){let B=_BB.parse(Q),{size:Y,x:J=0,y:C=0,w:X=A.bitmap.width-J,h:G=A.bitmap.height-C}=typeof B==="number"?{size:B}:B,W=[[0.0625,0.125,0.0625],[0.125,0.25,0.125],[0.0625,0.125,0.0625]],F=K8(A);return I5(F,J,C,X,G,(Z,U,$)=>{Z=Y*Math.floor(Z/Y),U=Y*Math.floor(U/Y);let E=y7A(F,W,Z,U);A.bitmap.data[$]=E[0],A.bitmap.data[$+1]=E[1],A.bitmap.data[$+2]=E[2],A.bitmap.data[$+3]=E[3]}),A},convolute(A,Q){let B=SBB.parse(Q),{kernel:Y,x:J=0,y:C=0,w:X=A.bitmap.width-J,h:G=A.bitmap.height-C}="kernel"in B?B:{kernel:B},W=K8(A);return I5(W,J,C,X,G,(F,Z,U)=>{let $=y7A(W,Y,F,Z);A.bitmap.data[U]=z0($[0]),A.bitmap.data[U+1]=z0($[1]),A.bitmap.data[U+2]=z0($[2]),A.bitmap.data[U+3]=z0($[3])}),A},color(A,Q){if(!Q||!Array.isArray(Q))throw Error("actions must be an array");return Q.forEach((B)=>sBB.parse(B)),Q=Q.map((B)=>{if(B.apply==="xor"||B.apply==="mix")B.params[0]=oA(B.params[0]).toRgb();return B}),A.scan((B,Y,J)=>{let C={r:A.bitmap.data[J],g:A.bitmap.data[J+1],b:A.bitmap.data[J+2]},X=(G,W)=>z0(C[G]+W);Q.forEach((G)=>{if(G.apply==="mix")C=Zf(C,G.params[0],G.params[1]);else if(G.apply==="tint")C=Zf(C,{r:255,g:255,b:255},G.params?.[0]);else if(G.apply==="shade")C=Zf(C,{r:0,g:0,b:0},G.params?.[0]);else if(G.apply==="xor")C={r:C.r^G.params[0].r,g:C.g^G.params[0].g,b:C.b^G.params[0].b};else if(G.apply==="red")C.r=X("r",G.params[0]);else if(G.apply==="green")C.g=X("g",G.params[0]);else if(G.apply==="blue")C.b=X("b",G.params[0]);else{if(G.apply==="hue")G.apply="spin";let W=oA(C),F=W[G.apply].bind(W);if(!F)throw Error("action "+G.apply+" not supported");C=F(...G.params||[]).toRgb()}}),A.bitmap.data[J]=C.r,A.bitmap.data[J+1]=C.g,A.bitmap.data[J+2]=C.b}),A}};var LFA=qA(zWA(),1),wf=qA(wWA(),1);import{promises as jWA}from"fs";import{existsSync as TWA}from"fs";var OWA=jWA.readFile,PWA=jWA.writeFile;var qFA=qA(gWA(),1);var M5;(function(A){A[A.LEFT=1]="LEFT",A[A.CENTER=2]="CENTER",A[A.RIGHT=4]="RIGHT"})(M5||(M5={}));var z5;(function(A){A[A.TOP=8]="TOP",A[A.MIDDLE=16]="MIDDLE",A[A.BOTTOM=32]="BOTTOM"})(z5||(z5={}));var dR;(function(A){A.SRC_OVER="srcOver",A.DST_OVER="dstOver",A.MULTIPLY="multiply",A.ADD="add",A.SCREEN="screen",A.OVERLAY="overlay",A.DARKEN="darken",A.LIGHTEN="lighten",A.HARD_LIGHT="hardLight",A.DIFFERENCE="difference",A.EXCLUSION="exclusion"})(dR||(dR={}));var Nf={};iG(Nf,{srcOver:()=>hWA,screen:()=>mWA,overlay:()=>uWA,names:()=>QYB,multiply:()=>fWA,lighten:()=>cWA,hardLight:()=>lWA,exclusion:()=>iWA,dstOver:()=>xWA,difference:()=>pWA,darken:()=>dWA,add:()=>bWA});function hWA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=(A.r*A.a+Q.r*Q.a*(1-A.a))/Y,C=(A.g*A.a+Q.g*Q.a*(1-A.a))/Y,X=(A.b*A.a+Q.b*Q.a*(1-A.a))/Y;return{r:J,g:C,b:X,a:Y}}function xWA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=(Q.r*Q.a+A.r*A.a*(1-Q.a))/Y,C=(Q.g*Q.a+A.g*A.a*(1-Q.a))/Y,X=(Q.b*Q.a+A.b*A.a*(1-Q.a))/Y;return{r:J,g:C,b:X,a:Y}}function fWA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,W=Q.g*Q.a,F=Q.b*Q.a,Z=(J*G+J*(1-Q.a)+G*(1-A.a))/Y,U=(C*W+C*(1-Q.a)+W*(1-A.a))/Y,$=(X*F+X*(1-Q.a)+F*(1-A.a))/Y;return{r:Z,g:U,b:$,a:Y}}function bWA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,W=Q.g*Q.a,F=Q.b*Q.a,Z=(J+G)/Y,U=(C+W)/Y,$=(X+F)/Y;return{r:Z,g:U,b:$,a:Y}}function mWA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,W=Q.g*Q.a,F=Q.b*Q.a,Z=(J*Q.a+G*A.a-J*G+J*(1-Q.a)+G*(1-A.a))/Y,U=(C*Q.a+W*A.a-C*W+C*(1-Q.a)+W*(1-A.a))/Y,$=(X*Q.a+F*A.a-X*F+X*(1-Q.a)+F*(1-A.a))/Y;return{r:Z,g:U,b:$,a:Y}}function uWA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,W=Q.g*Q.a,F=Q.b*Q.a,Z=(2*G<=Q.a?2*J*G+J*(1-Q.a)+G*(1-A.a):J*(1+Q.a)+G*(1+A.a)-2*G*J-Q.a*A.a)/Y,U=(2*W<=Q.a?2*C*W+C*(1-Q.a)+W*(1-A.a):C*(1+Q.a)+W*(1+A.a)-2*W*C-Q.a*A.a)/Y,$=(2*F<=Q.a?2*X*F+X*(1-Q.a)+F*(1-A.a):X*(1+Q.a)+F*(1+A.a)-2*F*X-Q.a*A.a)/Y;return{r:Z,g:U,b:$,a:Y}}function dWA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,W=Q.g*Q.a,F=Q.b*Q.a,Z=(Math.min(J*Q.a,G*A.a)+J*(1-Q.a)+G*(1-A.a))/Y,U=(Math.min(C*Q.a,W*A.a)+C*(1-Q.a)+W*(1-A.a))/Y,$=(Math.min(X*Q.a,F*A.a)+X*(1-Q.a)+F*(1-A.a))/Y;return{r:Z,g:U,b:$,a:Y}}function cWA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,W=Q.g*Q.a,F=Q.b*Q.a,Z=(Math.max(J*Q.a,G*A.a)+J*(1-Q.a)+G*(1-A.a))/Y,U=(Math.max(C*Q.a,W*A.a)+C*(1-Q.a)+W*(1-A.a))/Y,$=(Math.max(X*Q.a,F*A.a)+X*(1-Q.a)+F*(1-A.a))/Y;return{r:Z,g:U,b:$,a:Y}}function lWA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,W=Q.g*Q.a,F=Q.b*Q.a,Z=(2*J<=A.a?2*J*G+J*(1-Q.a)+G*(1-A.a):J*(1+Q.a)+G*(1+A.a)-2*G*J-Q.a*A.a)/Y,U=(2*C<=A.a?2*C*W+C*(1-Q.a)+W*(1-A.a):C*(1+Q.a)+W*(1+A.a)-2*W*C-Q.a*A.a)/Y,$=(2*X<=A.a?2*X*F+X*(1-Q.a)+F*(1-A.a):X*(1+Q.a)+F*(1+A.a)-2*F*X-Q.a*A.a)/Y;return{r:Z,g:U,b:$,a:Y}}function pWA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,W=Q.g*Q.a,F=Q.b*Q.a,Z=(J+G-2*Math.min(J*Q.a,G*A.a))/Y,U=(C+W-2*Math.min(C*Q.a,W*A.a))/Y,$=(X+F-2*Math.min(X*Q.a,F*A.a))/Y;return{r:Z,g:U,b:$,a:Y}}function iWA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,W=Q.g*Q.a,F=Q.b*Q.a,Z=(J*Q.a+G*A.a-2*J*G+J*(1-Q.a)+G*(1-A.a))/Y,U=(C*Q.a+W*A.a-2*C*W+C*(1-Q.a)+W*(1-A.a))/Y,$=(X*Q.a+F*A.a-2*X*F+X*(1-Q.a)+F*(1-A.a))/Y;return{r:Z,g:U,b:$,a:Y}}var QYB=[hWA,xWA,fWA,bWA,mWA,uWA,dWA,cWA,lWA,pWA,iWA];function nU(A,Q,B=0,Y=0,J={}){if(!(Q instanceof A.constructor))throw Error("The source must be a Jimp image");if(typeof B!=="number"||typeof Y!=="number")throw Error("x and y must be numbers");let{mode:C=dR.SRC_OVER}=J,{opacitySource:X=1,opacityDest:G=1}=J;if(typeof X!=="number"||X<0||X>1)X=1;if(typeof G!=="number"||G<0||G>1)G=1;let W=Nf[C];if(B=Math.round(B),Y=Math.round(Y),G!==1)A.scan((F,Z,U)=>{let $=A.bitmap.data[U+3]*G;A.bitmap.data[U+3]=$});return Q.scan((F,Z,U)=>{let $=A.getPixelIndex(B+F,Y+Z,bC.CROP);if($===-1)return;let E=W({r:Q.bitmap.data[U+0]/255,g:Q.bitmap.data[U+1]/255,b:Q.bitmap.data[U+2]/255,a:Q.bitmap.data[U+3]/255},{r:A.bitmap.data[$+0]/255,g:A.bitmap.data[$+1]/255,b:A.bitmap.data[$+2]/255,a:A.bitmap.data[$+3]/255},X);A.bitmap.data[$+0]=z0(E.r*255),A.bitmap.data[$+1]=z0(E.g*255),A.bitmap.data[$+2]=z0(E.b*255),A.bitmap.data[$+3]=z0(E.a*255)}),A}var HFA=qA(IFA(),1);function zf(A){let Q=A._exif;return Q&&Q.tags&&Q.tags.Orientation||1}function EYB(A){let Q=A.bitmap.width,B=A.bitmap.height;switch(zf(A)){case 1:return null;case 2:return function(Y,J){return[Q-Y-1,J]};case 3:return function(Y,J){return[Q-Y-1,B-J-1]};case 4:return function(Y,J){return[Y,B-J-1]};case 5:return function(Y,J){return[J,Y]};case 6:return function(Y,J){return[J,B-Y-1]};case 7:return function(Y,J){return[Q-J-1,B-Y-1]};case 8:return function(Y,J){return[Q-J-1,Y]};default:return null}}function KYB(A,Q,B,Y){let J=A.bitmap.data,C=A.bitmap.width,X=Buffer.alloc(J.length);for(let G=0;G4,Y=B?A.bitmap.height:A.bitmap.width,J=B?A.bitmap.width:A.bitmap.height;if(Q)KYB(A,Y,J,Q)}async function DFA(A,Q){try{A._exif=HFA.default.create(Q).parse(),VYB(A)}catch{}}var Rf={data:Buffer.alloc(0),width:0,height:0};function NFA(A){let Q=Buffer.alloc(A.byteLength),B=new Uint8Array(A);for(let Y=0;YC()),J=class{bitmap=Rf;background=0;formats=[];mime;constructor(X=Rf){if(this.formats=Y,"data"in X)this.bitmap=X;else if(this.bitmap={data:Buffer.alloc(X.width*X.height*4),width:X.width,height:X.height},X.color){this.background=typeof X.color==="string"?M1A(X.color):X.color;for(let G=0;G{let Z=G[W]?.(this,...F);if(typeof Z==="object"&&"bitmap"in Z)return this.bitmap=Z.bitmap,this;return Z}}static async read(X,G){if(Buffer.isBuffer(X)||X instanceof ArrayBuffer)return this.fromBuffer(X);if(TWA(X))return this.fromBuffer(await OWA(X));let[W,F]=await wf.to(fetch(X));if(W)throw Error(`Could not load Buffer from URL: ${X}`);if(!F.ok)throw Error(`HTTP Status ${F.status} for url ${X}`);let[Z,U]=await wf.to(F.arrayBuffer());if(Z)throw Error(`Could not load Buffer from ${X}`);let $=NFA(U);return this.fromBuffer($,G)}static fromBitmap(X){let G;if(X.data instanceof Buffer)G=Buffer.from(X.data);if(X.data instanceof Uint8Array||X.data instanceof Uint8ClampedArray)G=Buffer.from(X.data.buffer);if(Array.isArray(X.data))G=Buffer.concat(X.data.map((W)=>Buffer.from(W.toString(16).padStart(8,"0"),"hex")));if(!G)throw Error("data must be a Buffer");if(typeof X.height!=="number"||typeof X.width!=="number")throw Error("bitmap must have width and height");return new J({height:X.height,width:X.width,data:G})}static async fromBuffer(X,G){let W=X instanceof ArrayBuffer?NFA(X):X,F=await LFA.default.fromBuffer(W);if(!F||!F.mime)throw Error("Could not find MIME for Buffer");let Z=Y.find(($)=>$.mime===F.mime);if(!Z||!Z.decode)throw Error(`Mime type ${F.mime} does not support decoding`);let U=new J(await Z.decode(W,G?.[Z.mime]));return U.mime=F.mime,DFA(U,W),U}inspect(){return""}toString(){return"[object Jimp]"}get width(){return this.bitmap.width}get height(){return this.bitmap.height}async getBuffer(X,G){let W=this.formats.find((Z)=>Z.mime===X);if(!W||!W.encode)throw Error(`Unsupported MIME type: ${X}`);let F;if(W.hasAlpha)F=this;else F=new J({width:this.bitmap.width,height:this.bitmap.height,color:this.background}),nU(F,this);return W.encode(F.bitmap,G)}async getBase64(X,G){let W=await this.getBuffer(X,G);return"data:"+X+";base64,"+W.toString("base64")}async write(X,G){let W=qFA.default.getType(X);await PWA(X,await this.getBuffer(W,G))}clone(){return new J({...this.bitmap,data:Buffer.from(this.bitmap.data)})}getPixelIndex(X,G,W){let F,Z;if(!W)W=bC.EXTEND;if(typeof X!=="number"||typeof G!=="number")throw Error("x and y must be numbers");if(X=Math.round(X),G=Math.round(G),F=X,Z=G,W===bC.EXTEND){if(X<0)F=0;if(X>=this.bitmap.width)F=this.bitmap.width-1;if(G<0)Z=0;if(G>=this.bitmap.height)Z=this.bitmap.height-1}if(W===bC.WRAP){if(X<0)F=this.bitmap.width+X;if(X>=this.bitmap.width)F=X%this.bitmap.width;if(G<0)Z=this.bitmap.height+G;if(G>=this.bitmap.height)Z=G%this.bitmap.height}let U=this.bitmap.width*Z+F<<2;if(F<0||F>=this.bitmap.width)U=-1;if(Z<0||Z>=this.bitmap.height)U=-1;return U}getPixelColor(X,G){if(typeof X!=="number"||typeof G!=="number")throw Error("x and y must be numbers");let W=this.getPixelIndex(X,G);return this.bitmap.data.readUInt32BE(W)}setPixelColor(X,G,W){if(typeof X!=="number"||typeof G!=="number"||typeof W!=="number")throw Error("hex, x and y must be numbers");let F=this.getPixelIndex(G,W);return this.bitmap.data.writeUInt32BE(X,F),this}hasAlpha(){let{width:X,height:G,data:W}=this.bitmap,F=X*G<<2;for(let Z=3;Z0&&this.heightOriginal>0&&this.targetWidth>0&&this.targetHeight>0)this.configurePasses();else throw console.log(this),Error("Invalid settings specified for the resizer.")};qY.prototype.configurePasses=function(){if(this.widthOriginal===this.targetWidth)this.resizeWidth=this.bypassResizer;else if(this.ratioWeightWidthPass=this.widthOriginal/this.targetWidth,this.ratioWeightWidthPass<1&&this.interpolationPass)this.initializeFirstPassBuffers(!0),this.resizeWidth=this.colorChannels===4?this.resizeWidthInterpolatedRGBA:this.resizeWidthInterpolatedRGB;else this.initializeFirstPassBuffers(!1),this.resizeWidth=this.colorChannels===4?this.resizeWidthRGBA:this.resizeWidthRGB;if(this.heightOriginal===this.targetHeight)this.resizeHeight=this.bypassResizer;else if(this.ratioWeightHeightPass=this.heightOriginal/this.targetHeight,this.ratioWeightHeightPass<1&&this.interpolationPass)this.initializeSecondPassBuffers(!0),this.resizeHeight=this.resizeHeightInterpolated;else this.initializeSecondPassBuffers(!1),this.resizeHeight=this.colorChannels===4?this.resizeHeightRGBA:this.resizeHeightRGB};qY.prototype._resizeWidthInterpolatedRGBChannels=function(A,Q){let B=Q?4:3,Y=this.ratioWeightWidthPass,J=this.widthBuffer,C=0,X=0,G=0,W=0,F=0,Z;for(Z=0;C<0.3333333333333333;Z+=B,C+=Y)for(X=Z,G=0;X=U)$+=B,E=$,Z-=U;else{E+=Z;break}}while(Z>0&&$=W)F=E,Z=F,G-=W;else{Z+=G;break}}while(G>0&&F3)this.outputWidthWorkBenchOpaquePixelsCount=this.generateFloat64Buffer(this.heightOriginal)}};qY.prototype.initializeSecondPassBuffers=function(A){if(this.heightBuffer=this.generateUint8Buffer(this.finalResultSize),!A){if(this.outputHeightWorkBench=this.generateFloatBuffer(this.targetWidthMultipliedByChannels),this.colorChannels>3)this.outputHeightWorkBenchOpaquePixelsCount=this.generateFloat64Buffer(this.targetWidth)}};qY.prototype.generateFloatBuffer=function(A){try{return new Float32Array(A)}catch(Q){return console.error(Q),[]}};qY.prototype.generateFloat64Buffer=function(A){try{return new Float64Array(A)}catch(Q){return console.error(Q),[]}};qY.prototype.generateUint8Buffer=function(A){try{return new Uint8Array(A)}catch(Q){return console.error(Q),[]}};var zFA=qY;var jf={nearestNeighbor(A,Q){let{width:B,height:Y}=A,J=Q.width,C=Q.height,X=A.data,G=Q.data;for(let W=0;W0?J[P-4]:2*J[P]-J[P+4],j=J[P],k=J[P+4],T=z0?K[P-U*4]:2*K[P]-K[P+U*4],j=K[P],k=K[P+U*4],T=z1)for(let H=0;H{A.bitmap.data=Buffer.from(X),A.bitmap.width=Y,A.bitmap.height=J}).resize(A.bitmap.data);return A},scale(A,Q){let{f:B,mode:Y}=typeof Q==="number"?{f:Q}:DYB.parse(Q),J=A.bitmap.width*B,C=A.bitmap.height*B;return this.resize(A,{w:J,h:C,mode:Y})},scaleToFit(A,Q){let{h:B,w:Y,mode:J}=HYB.parse(Q),C=Y/B>A.bitmap.width/A.bitmap.height?B/A.bitmap.height:Y/A.bitmap.width;return this.scale(A,{f:C,mode:J})}};var LYB=s.object({w:s.number(),h:s.number(),align:s.number().optional(),mode:s.nativeEnum(N8).optional()}),RFA={contain(A,Q){let{w:B,h:Y,align:J=M5.CENTER|z5.MIDDLE,mode:C}=LYB.parse(Q),X=J&7,G=J>>3;if(!(X!==0&&!(X&X-1)||G!==0&&!(G&G-1)))throw Error("only use one flag per alignment direction");let W=X>>1,F=G>>1,Z=B/Y>A.bitmap.width/A.bitmap.height?Y/A.bitmap.height:B/A.bitmap.width,U=mC.scale(K8(A),{f:Z,mode:C});return A=mC.resize(A,{w:B,h:Y,mode:C}),A.scan(($,E,K)=>{A.bitmap.data.writeUInt32BE(A.background,K)}),A=pU.blit(A,{src:U,x:(A.bitmap.width-U.bitmap.width)/2*W,y:(A.bitmap.height-U.bitmap.height)/2*F}),A}};var MYB=s.object({x:s.number(),y:s.number(),w:s.number(),h:s.number()}),zYB=s.object({tolerance:s.number().min(0).max(1).optional(),cropOnlyFrames:s.boolean().optional(),cropSymmetric:s.boolean().optional(),leaveBorder:s.number().optional(),ignoreSides:s.object({north:s.boolean().optional(),south:s.boolean().optional(),east:s.boolean().optional(),west:s.boolean().optional()}).optional()}),aU={crop(A,Q){let{x:B,y:Y,w:J,h:C}=MYB.parse(Q);if(B=Math.round(B),Y=Math.round(Y),J=Math.round(J),C=Math.round(C),B===0&&J===A.bitmap.width){let X=J*Y+B<<2,G=X+(C*J<<2);A.bitmap.data=A.bitmap.data.slice(X,G)}else{let X=Buffer.allocUnsafe(J*C*4),G=0;I5(A,B,Y,J,C,function(W,F,Z){let U=A.bitmap.data.readUInt32BE(Z);X.writeUInt32BE(U,G),G+=4}),A.bitmap.data=X}return A.bitmap.width=J,A.bitmap.height=C,A},autocrop(A,Q={}){let{tolerance:B=0.0002,cropOnlyFrames:Y=!0,cropSymmetric:J=!1,leaveBorder:C=0,ignoreSides:X}=typeof Q==="number"?{tolerance:Q}:zYB.parse(Q),G=A.bitmap.width,W=A.bitmap.height,F=1,Z={north:!1,south:!1,east:!1,west:!1,...X},U=A.getPixelColor(0,0),$=$U(U),E=0,K=0,I=0,V=0;if(U=A.getPixelColor(0,0),!Z.north)A:for(let z=0;zB)break A}E++}if(U=A.getPixelColor(G,0),!Z.west)A:for(let z=0;zB)break A}V++}if(U=A.getPixelColor(0,W),!Z.south)A:for(let z=W-1;z>=E+1;z--){for(let M=G-K-1;M>=0;M--){let N=A.getPixelColor(M,z),q=$U(N);if(DH($,q)>B)break A}I++}if(U=A.getPixelColor(G,W),!Z.east)A:for(let z=G-1;z>=0+V+1;z--){for(let M=W-1;M>=0+E;M--){let N=A.getPixelColor(z,M),q=$U(N);if(DH($,q)>B)break A}K++}let H=!1;if(V-=C,K-=C,E-=C,I-=C,J){let z=Math.min(K,V),M=Math.min(E,I);V=z,K=z,E=M,I=M}V=V>=0?V:0,K=K>=0?K:0,E=E>=0?E:0,I=I>=0?I:0;let D=G-(V+K),L=W-(I+E);if(Y)H=K!==0&&E!==0&&V!==0&&I!==0;else H=K!==0||E!==0||V!==0||I!==0;if(H)this.crop(A,{x:V,y:E,w:D,h:L});return A}};var wYB=s.object({w:s.number(),h:s.number(),align:s.number().optional(),mode:s.nativeEnum(N8).optional()}),wFA={cover(A,Q){let{w:B,h:Y,align:J=M5.CENTER|z5.MIDDLE,mode:C}=wYB.parse(Q),X=J&7,G=J>>3;if(!(X!==0&&!(X&X-1)||G!==0&&!(G&G-1)))throw Error("only use one flag per alignment direction");let W=X>>1,F=G>>1,Z=B/Y>A.bitmap.width/A.bitmap.height?B/A.bitmap.width:Y/A.bitmap.height;return A=mC.scale(A,{f:Z,mode:C}),A=aU.crop(A,{x:(A.bitmap.width-B)/2*W,y:(A.bitmap.height-Y)/2*F,w:B,h:Y}),A}};var OYB=s.object({map:S7,offset:s.number()}),jFA={displace(A,Q){let{map:B,offset:Y}=OYB.parse(Q),J=K8(A);return A.scan((C,X,G)=>{let W=B.bitmap.data[G]/256*Y;W=Math.round(W);let F=A.getPixelIndex(C+W,X);A.bitmap.data[F]=J.bitmap.data[G],A.bitmap.data[F+1]=J.bitmap.data[G+1],A.bitmap.data[F+2]=J.bitmap.data[G+2]}),A}};var OFA={dither(A){let Q=[1,9,3,11,13,5,15,7,4,12,2,10,16,8,14,6];return A.scan((B,Y,J)=>{let C=((Y&3)<<2)+B%4,X=Q[C];A.bitmap.data[J]=Math.min(A.bitmap.data[J]+X,255),A.bitmap.data[J+1]=Math.min(A.bitmap.data[J+1]+X,255),A.bitmap.data[J+2]=Math.min(A.bitmap.data[J+2]+X,255)}),A}};var SYB=s.object({radius:s.number().min(0).optional()}),PFA={fisheye(A,Q={}){let{radius:B=2.5}=SYB.parse(Q),Y=K8(A),{width:J,height:C}=Y.bitmap;return Y.scan((X,G)=>{let W=X/J,F=G/C,Z=Math.sqrt(Math.pow(W-0.5,2)+Math.pow(F-0.5,2)),U=2*Math.pow(Z,B),$=(W-0.5)/Z,E=(F-0.5)/Z,K=Math.round((U*$+0.5)*J),I=Math.round((U*E+0.5)*C),V=Y.getPixelColor(K,I);A.setPixelColor(V,X,G)}),A.setPixelColor(Y.getPixelColor(J/2,C/2),J/2,C/2),A}};var _YB=s.object({horizontal:s.boolean().optional(),vertical:s.boolean().optional()}),TFA={flip(A,Q){let{horizontal:B,vertical:Y}=_YB.parse(Q),J=Buffer.alloc(A.bitmap.data.length);return A.scan((C,X,G)=>{let W=B?A.bitmap.width-1-C:C,F=Y?A.bitmap.height-1-X:X,Z=A.bitmap.width*F+W<<2,U=A.bitmap.data.readUInt32BE(G);J.writeUInt32BE(U,Z)}),A.bitmap.data=Buffer.from(J),A}};var AD=qA(vFA(),1);class yFA{size;smallerSize;constructor(A,Q){this.size=A||32,this.smallerSize=Q||8,hYB(this.size)}distance(A,Q){let B=0;for(let Y=0;YJ?"1":"0";return C}}function gYB(A){let Q=A&255;A>>>=8;let B=A&255;A>>>=8;let Y=A&255;return A>>>=8,{r:A&255,g:Y,b:B,a:Q}}var pR=[];function hYB(A){for(let Q=1;Q64)throw Error("base must be a number between 2 and 64");let B=gFA.slice(0,Q),Y=this.pHash(A),J=hFA[Q];return AD.default(AD.default.BIN,B)(Y).padStart(J,"0")},distanceFromHash(A,Q){let B=new Pf,Y=B.getHash(A);return B.distance(Y,Q)}};var bYB=s.object({src:S7,x:s.number().optional(),y:s.number().optional()}),mYB=s.union([S7,bYB]),fFA={mask(A,Q){mYB.parse(Q);let B,Y,J;if("bitmap"in Q)B=Q,Y=0,J=0;else B=Q.src,Y=Q.x??0,J=Q.y??0;Y=Math.round(Y),J=Math.round(J);let C=A.bitmap.width,X=A.bitmap.height;return B.scan(function(G,W,F){let Z=Y+G,U=J+W;if(Z>=0&&U>=0&&Z{if(oU(A,G+(Y.length>1?" ":""))>B){let U=G[Symbol.iterator](),$="";for(let E of U){let K=[...C,$+E].join(" "),I=oU(A,K);if(IB)J.push([...C,$]),C=[],$=E;else J.push([...C,$+E]),C=[],$=""}return}let F=[...C,G].join(" "),Z=oU(A,F);if(Z<=B&&!G.includes(` `)){if(Z>X)X=Z;C.push(G)}else J.push(C),C=[G.replace(` -`,"")]}),J.push(C),{lines:J,longestLine:X}}function Sf(A,Q,B){let{lines:Y}=Tf(A,Q,B);return Y.length*A.common.lineHeight}var dYB=s.object({x:s.number(),y:s.number(),text:s.union([s.union([s.string(),s.number()]),s.object({text:s.union([s.string(),s.number()]),alignmentX:s.nativeEnum(M5).optional(),alignmentY:s.nativeEnum(z5).optional()})]),maxWidth:s.number().optional(),maxHeight:s.number().optional(),cb:s.function(s.tuple([s.object({x:s.number(),y:s.number()})])).optional()});function cYB(A,Q,B,Y){if(Y===M5.LEFT)return 0;if(Y===M5.CENTER)return(B-aU(A,Q))/2;return B-aU(A,Q)}function lYB(A,Q,B,Y,J){if(J.width>0&&J.height>0){let C=Q.pages[J.page];if(C)A=lU.blit(A,{src:C,x:B+J.xoffset,y:Y+J.yoffset,srcX:J.x,srcY:J.y,srcW:J.width,srcH:J.height})}return A}function pYB(A,Q,B,Y,J,C){for(let X=0;X{}}=dYB.parse(B),F,Z;if(typeof C==="object"&&C.text!==null&&C.text!==void 0)F=C.alignmentX||M5.LEFT,Z=C.alignmentY||z5.TOP,{text:C}=C;else F=M5.LEFT,Z=z5.TOP,C=C.toString();if(typeof C==="number")C=C.toString();if(G!==1/0&&Z===z5.BOTTOM)J+=G-Sf(Q,C,X);else if(G!==1/0&&Z===z5.MIDDLE)J+=G/2-Sf(Q,C,X)/2;let U=Object.entries(Q.chars).find((K)=>K[1].xadvance)?.[1].xadvance;if(typeof U!=="number")throw Error("Could not find default character width");let{lines:$,longestLine:E}=Tf(Q,C,X);return $.forEach((K)=>{let I=K.join(" "),V=cYB(Q,I,X,F);pYB(A,Q,Y+V,J,I,U),J+=Q.common.lineHeight}),W.bind(A)({x:Y+E,y:J}),A}};var nYB=s.union([s.number(),s.object({deg:s.number(),mode:s.union([s.boolean(),s.nativeEnum(N8)]).optional()})]);function mFA(A){return function(Q,B){return B*A+Q<<2}}function sYB(A,Q){if(Math.abs(Q)%90!==0)throw Error("Unsupported matrix rotation degree");let B=A.bitmap.width,Y=A.bitmap.height,J;switch(Q){case 90:case-270:J=90;break;case 180:case-180:J=180;break;case 270:case-90:J=-90;break;default:throw Error("Unsupported matrix rotation degree")}let C=J===180?B:Y,X=J===180?Y:B,G=Buffer.alloc(A.bitmap.data.length),W=mFA(B),F=mFA(C);for(let Z=0;Z{A.bitmap.data.writeUInt32BE(A.background,H)});let K=Math.max(X,G,A.bitmap.width,A.bitmap.height);A=mC.resize(A,{h:K,w:K,mode:B===!0?void 0:B}),A=iU(A,E,A.bitmap.width/2-E.bitmap.width/2,A.bitmap.height/2-E.bitmap.height/2)}let W=A.bitmap.width,F=A.bitmap.height,Z=Buffer.alloc(A.bitmap.data.length),U=uFA(-(W/2),-(F/2)),$=uFA(W/2+0.5,F/2+0.5);for(let E=1;E<=F;E++)for(let K=1;K<=W;K++){let I=U(K,E),V=$(J*I.x-C*I.y,J*I.y+C*I.x),H=W*(E-1)+K-1<<2;if(V.x>=0&&V.x=0&&V.y{let W=A.bitmap.data[G](Q in A)?nFA(A,Q,{enumerable:!0,configurable:!0,writable:!0,value:B}):A[Q]=B,f6=(A,Q)=>{for(var B in Q)nFA(A,B,{get:Q[B],enumerable:!0})},ZA=(A,Q,B)=>{return eYB(A,typeof Q!=="symbol"?Q+"":Q,B),B},AJB={};f6(AJB,{bt709:()=>sFA});var sFA={};f6(sFA,{Y:()=>rFA,x:()=>aFA,y:()=>oFA});var rFA=((A)=>{return A[A.RED=0.2126]="RED",A[A.GREEN=0.7152]="GREEN",A[A.BLUE=0.0722]="BLUE",A[A.WHITE=1]="WHITE",A})(rFA||{}),aFA=((A)=>{return A[A.RED=0.64]="RED",A[A.GREEN=0.3]="GREEN",A[A.BLUE=0.15]="BLUE",A[A.WHITE=0.3127]="WHITE",A})(aFA||{}),oFA=((A)=>{return A[A.RED=0.33]="RED",A[A.GREEN=0.6]="GREEN",A[A.BLUE=0.06]="BLUE",A[A.WHITE=0.329]="WHITE",A})(oFA||{}),QJB={};f6(QJB,{lab2rgb:()=>FJB,lab2xyz:()=>YZA,rgb2hsl:()=>iR,rgb2lab:()=>BD,rgb2xyz:()=>tFA,xyz2lab:()=>BZA,xyz2rgb:()=>JZA});function kf(A){return A>0.04045?((A+0.055)/1.055)**2.4:A/12.92}function tFA(A,Q,B){return A=kf(A/255),Q=kf(Q/255),B=kf(B/255),{x:A*0.4124+Q*0.3576+B*0.1805,y:A*0.2126+Q*0.7152+B*0.0722,z:A*0.0193+Q*0.1192+B*0.9505}}var eFA={};f6(eFA,{degrees2radians:()=>v7,inRange0to255:()=>q8,inRange0to255Rounded:()=>R5,intInRange:()=>BJB,max3:()=>AZA,min3:()=>QZA,stableSort:()=>hf});function v7(A){return A*(Math.PI/180)}function AZA(A,Q,B){let Y=A;if(YQ)Y=Q;if(Y>B)Y=B;return Y}function BJB(A,Q,B){if(A>B)A=B;if(A255)A=255;else if(A<0)A=0;return A}function q8(A){if(A>255)A=255;else if(A<0)A=0;return A}function hf(A,Q){let B=typeof A[0],Y;if(B==="number"||B==="string"){let J=Object.create(null);for(let C=0,X=A.length;CQ(C,X)||J[C]-J[X])}else{let J=A.slice(0);Y=A.sort((C,X)=>Q(C,X)||J.indexOf(C)-J.indexOf(X))}return Y}function iR(A,Q,B){let Y=QZA(A,Q,B),J=AZA(A,Q,B),C=J-Y,X=(Y+J)/510,G=0;if(X>0&&X<1)G=C/(X<0.5?J+Y:510-J-Y);let W=0;if(C>0){if(J===A)W=(Q-B)/C;else if(J===Q)W=2+(B-A)/C;else W=4+(A-Q)/C;if(W*=60,W<0)W+=360}return{h:W,s:G,l:X}}var YJB=0.95047,JJB=1,CJB=1.08883;function _f(A){return A>0.008856?A**0.3333333333333333:7.787*A+0.13793103448275862}function BZA(A,Q,B){if(A=_f(A/YJB),Q=_f(Q/JJB),B=_f(B/CJB),116*Q-16<0)throw Error("xxx");return{L:Math.max(0,116*Q-16),a:500*(A-Q),b:200*(Q-B)}}function BD(A,Q,B){let Y=tFA(A,Q,B);return BZA(Y.x,Y.y,Y.z)}var XJB=0.95047,GJB=1,WJB=1.08883;function vf(A){return A>0.206893034?A**3:(A-0.13793103448275862)/7.787}function YZA(A,Q,B){let Y=(A+16)/116,J=Q/500+Y,C=Y-B/200;return{x:XJB*vf(J),y:GJB*vf(Y),z:WJB*vf(C)}}function yf(A){return A>0.0031308?1.055*A**0.4166666666666667-0.055:12.92*A}function JZA(A,Q,B){let Y=yf(A*3.2406+Q*-1.5372+B*-0.4986),J=yf(A*-0.9689+Q*1.8758+B*0.0415),C=yf(A*0.0557+Q*-0.204+B*1.057);return{r:R5(Y*255),g:R5(J*255),b:R5(C*255)}}function FJB(A,Q,B){let Y=YZA(A,Q,B);return JZA(Y.x,Y.y,Y.z)}var ZJB={};f6(ZJB,{AbstractDistanceCalculator:()=>WZ,AbstractEuclidean:()=>nR,AbstractManhattan:()=>sR,CIE94GraphicArts:()=>GZA,CIE94Textiles:()=>XZA,CIEDE2000:()=>uC,CMetric:()=>WZA,Euclidean:()=>FZA,EuclideanBT709:()=>ZZA,EuclideanBT709NoAlpha:()=>$ZA,Manhattan:()=>UZA,ManhattanBT709:()=>KZA,ManhattanNommyde:()=>EZA,PNGQuant:()=>VZA});var WZ=class{constructor(){ZA(this,"_maxDistance"),ZA(this,"_whitePoint"),this._setDefaults(),this.setWhitePoint(255,255,255,255)}setWhitePoint(A,Q,B,Y){this._whitePoint={r:A>0?255/A:0,g:Q>0?255/Q:0,b:B>0?255/B:0,a:Y>0?255/Y:0},this._maxDistance=this.calculateRaw(A,Q,B,Y,0,0,0,0)}calculateNormalized(A,Q){return this.calculateRaw(A.r,A.g,A.b,A.a,Q.r,Q.g,Q.b,Q.a)/this._maxDistance}},CZA=class extends WZ{calculateRaw(A,Q,B,Y,J,C,X,G){let W=BD(q8(A*this._whitePoint.r),q8(Q*this._whitePoint.g),q8(B*this._whitePoint.b)),F=BD(q8(J*this._whitePoint.r),q8(C*this._whitePoint.g),q8(X*this._whitePoint.b)),Z=W.L-F.L,U=W.a-F.a,$=W.b-F.b,E=Math.sqrt(W.a*W.a+W.b*W.b),K=Math.sqrt(F.a*F.a+F.b*F.b),I=E-K,V=U*U+$*$-I*I;V=V<0?0:Math.sqrt(V);let H=(G-Y)*this._whitePoint.a*this._kA;return Math.sqrt((Z/this._Kl)**2+(I/(1+this._K1*E))**2+(V/(1+this._K2*E))**2+H**2)}},XZA=class extends CZA{_setDefaults(){this._Kl=2,this._K1=0.048,this._K2=0.014,this._kA=0.049019607843137254}},GZA=class extends CZA{_setDefaults(){this._Kl=1,this._K1=0.045,this._K2=0.015,this._kA=0.09803921568627451}},j0=class extends WZ{_setDefaults(){}static _calculatehp(A,Q){let B=Math.atan2(A,Q);if(B>=0)return B;return B+j0._deg360InRad}static _calculateRT(A,Q){let B=Q**7,Y=2*Math.sqrt(B/(B+j0._pow25to7)),J=j0._deg30InRad*Math.exp(-(((A-j0._deg275InRad)/j0._deg25InRad)**2));return-Math.sin(2*J)*Y}static _calculateT(A){return 1-0.17*Math.cos(A-j0._deg30InRad)+0.24*Math.cos(A*2)+0.32*Math.cos(A*3+j0._deg6InRad)-0.2*Math.cos(A*4-j0._deg63InRad)}static _calculate_ahp(A,Q,B,Y){let J=B+Y;if(A===0)return J;if(Q<=j0._deg180InRad)return J/2;if(J>8)+4*Z*Z+((767-W)*U*U>>8),E=(G-Y)*this._whitePoint.a;return Math.sqrt($+E*E)}_setDefaults(){}},nR=class extends WZ{calculateRaw(A,Q,B,Y,J,C,X,G){let W=J-A,F=C-Q,Z=X-B,U=G-Y;return Math.sqrt(this._kR*W*W+this._kG*F*F+this._kB*Z*Z+this._kA*U*U)}},FZA=class extends nR{_setDefaults(){this._kR=1,this._kG=1,this._kB=1,this._kA=1}},ZZA=class extends nR{_setDefaults(){this._kR=0.2126,this._kG=0.7152,this._kB=0.0722,this._kA=1}},$ZA=class extends nR{_setDefaults(){this._kR=0.2126,this._kG=0.7152,this._kB=0.0722,this._kA=0}},sR=class extends WZ{calculateRaw(A,Q,B,Y,J,C,X,G){let W=J-A,F=C-Q,Z=X-B,U=G-Y;if(W<0)W=0-W;if(F<0)F=0-F;if(Z<0)Z=0-Z;if(U<0)U=0-U;return this._kR*W+this._kG*F+this._kB*Z+this._kA*U}},UZA=class extends sR{_setDefaults(){this._kR=1,this._kG=1,this._kB=1,this._kA=1}},EZA=class extends sR{_setDefaults(){this._kR=0.4984,this._kG=0.8625,this._kB=0.2979,this._kA=1}},KZA=class extends sR{_setDefaults(){this._kR=0.2126,this._kG=0.7152,this._kB=0.0722,this._kA=1}},VZA=class extends WZ{calculateRaw(A,Q,B,Y,J,C,X,G){let W=(G-Y)*this._whitePoint.a;return this._colordifferenceCh(A*this._whitePoint.r,J*this._whitePoint.r,W)+this._colordifferenceCh(Q*this._whitePoint.g,C*this._whitePoint.g,W)+this._colordifferenceCh(B*this._whitePoint.b,X*this._whitePoint.b,W)}_colordifferenceCh(A,Q,B){let Y=A-Q,J=Y+B;return Y*Y+J*J}_setDefaults(){}},$JB={};f6($JB,{AbstractPaletteQuantizer:()=>YD,ColorHistogram:()=>CD,NeuQuant:()=>g0,NeuQuantFloat:()=>h0,RGBQuant:()=>DZA,WuColorCube:()=>NZA,WuQuant:()=>BE});var YD=class{quantizeSync(){for(let A of this.quantize())if(A.palette)return A.palette;throw Error("unreachable")}},M8=class{constructor(){ZA(this,"r"),ZA(this,"g"),ZA(this,"b"),ZA(this,"a"),ZA(this,"uint32"),ZA(this,"rgba"),this.uint32=4294967295,this.r=this.g=this.b=this.a=0,this.rgba=[,,,,],this.rgba[0]=0,this.rgba[1]=0,this.rgba[2]=0,this.rgba[3]=0}static createByQuadruplet(A){let Q=new M8;return Q.r=A[0]|0,Q.g=A[1]|0,Q.b=A[2]|0,Q.a=A[3]|0,Q._loadUINT32(),Q._loadQuadruplet(),Q}static createByRGBA(A,Q,B,Y){let J=new M8;return J.r=A|0,J.g=Q|0,J.b=B|0,J.a=Y|0,J._loadUINT32(),J._loadQuadruplet(),J}static createByUint32(A){let Q=new M8;return Q.uint32=A>>>0,Q._loadRGBA(),Q._loadQuadruplet(),Q}from(A){this.r=A.r,this.g=A.g,this.b=A.b,this.a=A.a,this.uint32=A.uint32,this.rgba[0]=A.r,this.rgba[1]=A.g,this.rgba[2]=A.b,this.rgba[3]=A.a}getLuminosity(A){let Q=this.r,B=this.g,Y=this.b;if(A)Q=Math.min(255,255-this.a+this.a*Q/255),B=Math.min(255,255-this.a+this.a*B/255),Y=Math.min(255,255-this.a+this.a*Y/255);return Q*0.2126+B*0.7152+Y*0.0722}_loadUINT32(){this.uint32=(this.a<<24|this.b<<16|this.g<<8|this.r)>>>0}_loadRGBA(){this.r=this.uint32&255,this.g=this.uint32>>>8&255,this.b=this.uint32>>>16&255,this.a=this.uint32>>>24&255}_loadQuadruplet(){this.rgba[0]=this.r,this.rgba[1]=this.g,this.rgba[2]=this.b,this.rgba[3]=this.a}},x6=class{constructor(){ZA(this,"_pointArray"),ZA(this,"_width"),ZA(this,"_height"),this._width=0,this._height=0,this._pointArray=[]}getWidth(){return this._width}getHeight(){return this._height}setWidth(A){this._width=A}setHeight(A){this._height=A}getPointArray(){return this._pointArray}clone(){let A=new x6;A._width=this._width,A._height=this._height;for(let Q=0,B=this._pointArray.length;Q=X&&A=0;Q--)if(A.uint32===this._pointArray[Q].uint32)return!0;return!1}getNearestColor(A,Q){return this._pointArray[this._getNearestIndex(A,Q)|0]}getPointContainer(){return this._pointContainer}_nearestPointFromCache(A){return typeof this._i32idx[A]==="number"?this._i32idx[A]:-1}_getNearestIndex(A,Q){let B=this._nearestPointFromCache(""+Q.uint32);if(B>=0)return B;let Y=Number.MAX_VALUE;B=0;for(let J=0,C=this._pointArray.length;J{let B=iR(A.r,A.g,A.b),Y=iR(Q.r,Q.g,Q.b),J=A.r===A.g&&A.g===A.b?0:1+gf(B.h,lFA),X=(Q.r===Q.g&&Q.g===Q.b?0:1+gf(Y.h,lFA))-J;if(X)return-X;let G=A.getLuminosity(!0),W=Q.getLuminosity(!0);if(W-G!==0)return W-G;let F=(Y.s*100|0)-(B.s*100|0);if(F)return-F;return 0})}},xf={};f6(xf,{HueStatistics:()=>IZA,Palette:()=>JD,Point:()=>M8,PointContainer:()=>x6,ProgressTracker:()=>b6,arithmetic:()=>eFA});var UJB=class{constructor(){ZA(this,"num",0),ZA(this,"cols",[])}},IZA=class{constructor(A,Q){ZA(this,"_numGroups"),ZA(this,"_minCols"),ZA(this,"_stats"),ZA(this,"_groupsFull"),this._numGroups=A,this._minCols=Q,this._stats=[];for(let B=0;B<=A;B++)this._stats[B]=new UJB;this._groupsFull=0}check(A){if(this._groupsFull===this._numGroups+1)this.check=()=>{};let Q=A&255,B=A>>>8&255,Y=A>>>16&255,J=Q===B&&B===Y?0:1+gf(iR(Q,B,Y).h,this._numGroups),C=this._stats[J],X=this._minCols;if(C.num++,C.num>X)return;if(C.num===X)this._groupsFull++;if(C.num<=X)this._stats[J].cols.push(A)}injectIntoDictionary(A){for(let Q=0;Q<=this._numGroups;Q++)if(this._stats[Q].num<=this._minCols)this._stats[Q].cols.forEach((B)=>{if(!A[B])A[B]=1;else A[B]++})}injectIntoArray(A){for(let Q=0;Q<=this._numGroups;Q++)if(this._stats[Q].num<=this._minCols)this._stats[Q].cols.forEach((B)=>{if(A.indexOf(B)===-1)A.push(B)})}},HZA=class{constructor(A,Q){ZA(this,"progress"),ZA(this,"_step"),ZA(this,"_range"),ZA(this,"_last"),ZA(this,"_progressRange"),this._range=A,this._progressRange=Q,this._step=Math.max(1,this._range/(HZA.steps+1)|0),this._last=-this._step,this.progress=0}shouldNotify(A){if(A-this._last>=this._step)return this._last=A,this.progress=Math.min(this._progressRange*this._last/this._range,this._progressRange),!0;return!1}},b6=HZA;ZA(b6,"steps",100);var C9=3,EJB=class{constructor(A){ZA(this,"r"),ZA(this,"g"),ZA(this,"b"),ZA(this,"a"),this.r=this.g=this.b=this.a=A}toPoint(){return M8.createByRGBA(this.r>>C9,this.g>>C9,this.b>>C9,this.a>>C9)}subtract(A,Q,B,Y){this.r-=A|0,this.g-=Q|0,this.b-=B|0,this.a-=Y|0}},CB=class extends YD{constructor(A,Q=256){super();ZA(this,"_pointArray"),ZA(this,"_networkSize"),ZA(this,"_network"),ZA(this,"_sampleFactor"),ZA(this,"_radPower"),ZA(this,"_freq"),ZA(this,"_bias"),ZA(this,"_distance"),this._distance=A,this._pointArray=[],this._sampleFactor=1,this._networkSize=Q,this._distance.setWhitePoint(255<>3)*CB._radiusBias,G=X>>CB._radiusBiasShift;if(G<=1)G=0;for(let Z=0;Z>>0;let W;if(Q=Q)U-=Q;if(Z++,J===0)J=1;if(Z%J===0){if(C-=C/B|0,X-=X/CB._radiusDecrease|0,G=X>>CB._radiusBiasShift,G<=1)G=0;for(let D=0;D>>0}}}_buildPalette(){let A=new JD;return this._network.forEach((Q)=>{A.add(Q.toPoint())}),A.sort(),A}_alterNeighbour(A,Q,B,Y,J,C){let X=Q-A;if(X<-1)X=-1;let G=Q+A;if(G>this._networkSize)G=this._networkSize;let W=Q+1,F=Q-1,Z=1;while(WX){let U=this._radPower[Z++]/CB._alphaRadBias;if(WX){let $=this._network[F--];$.subtract(U*($.r-J),U*($.g-Y),U*($.b-B),U*($.a-C))}}}_alterSingle(A,Q,B,Y,J,C){A/=CB._initAlpha;let X=this._network[Q];X.subtract(A*(X.r-J),A*(X.g-Y),A*(X.b-B),A*(X.a-C))}_contest(A,Q,B,Y){let J=1020<>CB._initialBiasShift-C9);if($>CB._betaShift;this._freq[F]-=E,this._bias[F]+=E<>CB._betaShift);ZA(g0,"_betaGamma",CB._initialBias<>X9,this.g>>X9,this.b>>X9,this.a>>X9)}subtract(A,Q,B,Y){this.r-=A,this.g-=Q,this.b-=B,this.a-=Y}},XB=class extends YD{constructor(A,Q=256){super();ZA(this,"_pointArray"),ZA(this,"_networkSize"),ZA(this,"_network"),ZA(this,"_sampleFactor"),ZA(this,"_radPower"),ZA(this,"_freq"),ZA(this,"_bias"),ZA(this,"_distance"),this._distance=A,this._pointArray=[],this._sampleFactor=1,this._networkSize=Q,this._distance.setWhitePoint(255<>3)*XB._radiusBias,G=X>>XB._radiusBiasShift;if(G<=1)G=0;for(let Z=0;Z=Q)U-=Q;if(Z++,J===0)J=1;if(Z%J===0){if(C-=C/B,X-=X/XB._radiusDecrease,G=X>>XB._radiusBiasShift,G<=1)G=0;for(let D=0;D{A.add(Q.toPoint())}),A.sort(),A}_alterNeighbour(A,Q,B,Y,J,C){let X=Q-A;if(X<-1)X=-1;let G=Q+A;if(G>this._networkSize)G=this._networkSize;let W=Q+1,F=Q-1,Z=1;while(WX){let U=this._radPower[Z++]/XB._alphaRadBias;if(WX){let $=this._network[F--];$.subtract(U*($.r-J),U*($.g-Y),U*($.b-B),U*($.a-C))}}}_alterSingle(A,Q,B,Y,J,C){A/=XB._initAlpha;let X=this._network[Q];X.subtract(A*(X.r-J),A*(X.g-Y),A*(X.b-B),A*(X.a-C))}_contest(A,Q,B,Y){let J=1020<>XB._initialBiasShift-X9);if($>XB._betaShift;this._freq[F]-=E,this._bias[F]+=E<>XB._betaShift);ZA(h0,"_betaGamma",XB._initialBias<this._histogram[Y]-this._histogram[B]);if(A.length===0)return[];let Q;switch(this._method){case 1:let B=Math.min(A.length,this._initColors),Y=A[B-1],J=this._histogram[Y];Q=A.slice(0,B);let C=B,X=A.length;while(C+B)}_colorStats1D(A){let Q=this._histogram,B=A.getPointArray(),Y=B.length;for(let J=0;J{let Z=Math.round(F.w*F.h/X)*QD._boxPixels;if(Z<2)Z=2;let U={};this._iterateBox(F,Q,($)=>{let E=Y[$].uint32;if(this._hueStats.check(E),E in W)W[E]++;else if(E in U){if(++U[E]>=Z)W[E]=U[E]}else U[E]=1})}),this._hueStats.injectIntoDictionary(W)}_iterateBox(A,Q,B){let Y=A,J=Y.y*Q+Y.x,C=(Y.y+Y.h-1)*Q+(Y.x+Y.w-1),X=Q-Y.w+1,G=0,W=J;do B.call(this,W),W+=++G%Y.w===0?X:1;while(W<=C)}_makeBoxes(A,Q,B,Y){let J=A%B,C=Q%Y,X=A-J,G=Q-C,W=[];for(let F=0;Fthis._colors){C.length=0;for(let Z=0;Zthis._colors*3?this._initialDistance:this._distanceIncrement}if(X$.distance-U.distance);let Z=0;while(X=0;Z--)if(Y[Z]===0){if(Z!==F-1)B[Z]=B[F-1];--F}B.length=F,Q.sort(),yield{palette:Q,progress:100}}};function oU(A){let Q=[];for(let B=0;B0){let B=this._sums[Q],Y=this._reds[Q]/B,J=this._greens[Q]/B,C=this._blues[Q]/B,X=this._alphas[Q]/B,G=M8.createByRGBA(Y|0,J|0,C|0,X|0);A.add(G)}A.sort(),yield{palette:A,progress:100}}*_preparePalette(){yield*this._calculateMoments();let A=0,Q=oU(this._colors);for(let X=1;X1?this._calculateVariance(this._cubes[A]):0,Q[X]=this._cubes[X].volume>1?this._calculateVariance(this._cubes[X]):0;else Q[A]=0,X--;A=0;let G=Q[0];for(let W=1;W<=X;++W)if(Q[W]>G)G=Q[W],A=W;if(G<=0){this._colors=X+1;break}}let B=[],Y=[],J=[],C=[];for(let X=0;X0)B[X]=PQ._volume(this._cubes[X],this._momentsRed)/G|0,Y[X]=PQ._volume(this._cubes[X],this._momentsGreen)/G|0,J[X]=PQ._volume(this._cubes[X],this._momentsBlue)/G|0,C[X]=PQ._volume(this._cubes[X],this._momentsAlpha)/G|0;else B[X]=0,Y[X]=0,J[X]=0,C[X]=0}this._reds=oU(this._colors+1),this._greens=oU(this._colors+1),this._blues=oU(this._colors+1),this._alphas=oU(this._colors+1),this._sums=oU(this._colors+1);for(let X=0,G=this._pixels.length;X>Q)+1,Y=(A.g>>Q)+1,J=(A.b>>Q)+1,C=(A.a>>Q)+1;this._weights[C][B][Y][J]++,this._momentsRed[C][B][Y][J]+=A.r,this._momentsGreen[C][B][Y][J]+=A.g,this._momentsBlue[C][B][Y][J]+=A.b,this._momentsAlpha[C][B][Y][J]+=A.a,this._moments[C][B][Y][J]+=this._table[A.r]+this._table[A.g]+this._table[A.b]+this._table[A.a]}*_calculateMoments(){let A=[],Q=[],B=[],Y=[],J=[],C=[],X=eU(this._sideSize,this._sideSize,this._sideSize),G=eU(this._sideSize,this._sideSize,this._sideSize),W=eU(this._sideSize,this._sideSize,this._sideSize),F=eU(this._sideSize,this._sideSize,this._sideSize),Z=eU(this._sideSize,this._sideSize,this._sideSize),U=eU(this._sideSize,this._sideSize,this._sideSize),$=0,E=new b6(this._alphaMaxSideIndex*this._maxSideIndex,99);for(let K=1;K<=this._alphaMaxSideIndex;++K){AE(X,this._sideSize,this._sideSize,this._sideSize,0),AE(G,this._sideSize,this._sideSize,this._sideSize,0),AE(W,this._sideSize,this._sideSize,this._sideSize,0),AE(F,this._sideSize,this._sideSize,this._sideSize,0),AE(Z,this._sideSize,this._sideSize,this._sideSize,0),AE(U,this._sideSize,this._sideSize,this._sideSize,0);for(let I=1;I<=this._maxSideIndex;++I,++$){if(E.shouldNotify($))yield{progress:E.progress};QE(A,this._sideSize,0),QE(Q,this._sideSize,0),QE(B,this._sideSize,0),QE(Y,this._sideSize,0),QE(J,this._sideSize,0),QE(C,this._sideSize,0);for(let V=1;V<=this._maxSideIndex;++V){let H=0,D=0,L=0,z=0,M=0,N=0;for(let q=1;q<=this._maxSideIndex;++q)H+=this._weights[K][I][V][q],D+=this._momentsRed[K][I][V][q],L+=this._momentsGreen[K][I][V][q],z+=this._momentsBlue[K][I][V][q],M+=this._momentsAlpha[K][I][V][q],N+=this._moments[K][I][V][q],A[q]+=H,Q[q]+=D,B[q]+=L,Y[q]+=z,J[q]+=M,C[q]+=N,X[I][V][q]=X[I-1][V][q]+A[q],G[I][V][q]=G[I-1][V][q]+Q[q],W[I][V][q]=W[I-1][V][q]+B[q],F[I][V][q]=F[I-1][V][q]+Y[q],Z[I][V][q]=Z[I-1][V][q]+J[q],U[I][V][q]=U[I-1][V][q]+C[q],this._weights[K][I][V][q]=this._weights[K-1][I][V][q]+X[I][V][q],this._momentsRed[K][I][V][q]=this._momentsRed[K-1][I][V][q]+G[I][V][q],this._momentsGreen[K][I][V][q]=this._momentsGreen[K-1][I][V][q]+W[I][V][q],this._momentsBlue[K][I][V][q]=this._momentsBlue[K-1][I][V][q]+F[I][V][q],this._momentsAlpha[K][I][V][q]=this._momentsAlpha[K-1][I][V][q]+Z[I][V][q],this._moments[K][I][V][q]=this._moments[K-1][I][V][q]+U[I][V][q]}}}}static _volumeFloat(A,Q){return Q[A.alphaMaximum][A.redMaximum][A.greenMaximum][A.blueMaximum]-Q[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMaximum]-Q[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMaximum]+Q[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMaximum]-Q[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMaximum]+Q[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMaximum]+Q[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMaximum]-Q[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(Q[A.alphaMaximum][A.redMaximum][A.greenMaximum][A.blueMinimum]-Q[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMinimum]-Q[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMinimum]+Q[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]-Q[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMinimum]+Q[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]+Q[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]-Q[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum])}static _volume(A,Q){return PQ._volumeFloat(A,Q)|0}static _top(A,Q,B,Y){let J;switch(Q){case PQ._alpha:J=Y[B][A.redMaximum][A.greenMaximum][A.blueMaximum]-Y[B][A.redMaximum][A.greenMinimum][A.blueMaximum]-Y[B][A.redMinimum][A.greenMaximum][A.blueMaximum]+Y[B][A.redMinimum][A.greenMinimum][A.blueMaximum]-(Y[B][A.redMaximum][A.greenMaximum][A.blueMinimum]-Y[B][A.redMaximum][A.greenMinimum][A.blueMinimum]-Y[B][A.redMinimum][A.greenMaximum][A.blueMinimum]+Y[B][A.redMinimum][A.greenMinimum][A.blueMinimum]);break;case PQ._red:J=Y[A.alphaMaximum][B][A.greenMaximum][A.blueMaximum]-Y[A.alphaMaximum][B][A.greenMinimum][A.blueMaximum]-Y[A.alphaMinimum][B][A.greenMaximum][A.blueMaximum]+Y[A.alphaMinimum][B][A.greenMinimum][A.blueMaximum]-(Y[A.alphaMaximum][B][A.greenMaximum][A.blueMinimum]-Y[A.alphaMaximum][B][A.greenMinimum][A.blueMinimum]-Y[A.alphaMinimum][B][A.greenMaximum][A.blueMinimum]+Y[A.alphaMinimum][B][A.greenMinimum][A.blueMinimum]);break;case PQ._green:J=Y[A.alphaMaximum][A.redMaximum][B][A.blueMaximum]-Y[A.alphaMaximum][A.redMinimum][B][A.blueMaximum]-Y[A.alphaMinimum][A.redMaximum][B][A.blueMaximum]+Y[A.alphaMinimum][A.redMinimum][B][A.blueMaximum]-(Y[A.alphaMaximum][A.redMaximum][B][A.blueMinimum]-Y[A.alphaMaximum][A.redMinimum][B][A.blueMinimum]-Y[A.alphaMinimum][A.redMaximum][B][A.blueMinimum]+Y[A.alphaMinimum][A.redMinimum][B][A.blueMinimum]);break;case PQ._blue:J=Y[A.alphaMaximum][A.redMaximum][A.greenMaximum][B]-Y[A.alphaMaximum][A.redMaximum][A.greenMinimum][B]-Y[A.alphaMaximum][A.redMinimum][A.greenMaximum][B]+Y[A.alphaMaximum][A.redMinimum][A.greenMinimum][B]-(Y[A.alphaMinimum][A.redMaximum][A.greenMaximum][B]-Y[A.alphaMinimum][A.redMaximum][A.greenMinimum][B]-Y[A.alphaMinimum][A.redMinimum][A.greenMaximum][B]+Y[A.alphaMinimum][A.redMinimum][A.greenMinimum][B]);break;default:throw Error("impossible")}return J|0}static _bottom(A,Q,B){switch(Q){case PQ._alpha:return-B[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMaximum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMaximum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMaximum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(-B[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMinimum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);case PQ._red:return-B[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMaximum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMaximum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMaximum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(-B[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMinimum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);case PQ._green:return-B[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMaximum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMaximum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMaximum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(-B[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);case PQ._blue:return-B[A.alphaMaximum][A.redMaximum][A.greenMaximum][A.blueMinimum]+B[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]-(-B[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMinimum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);default:return 0}}_calculateVariance(A){let Q=PQ._volume(A,this._momentsRed),B=PQ._volume(A,this._momentsGreen),Y=PQ._volume(A,this._momentsBlue),J=PQ._volume(A,this._momentsAlpha),C=PQ._volumeFloat(A,this._moments),X=PQ._volume(A,this._weights),G=Q*Q+B*B+Y*Y+J*J;return C-G/X}_maximize(A,Q,B,Y,J,C,X,G,W){let F=PQ._bottom(A,Q,this._momentsRed)|0,Z=PQ._bottom(A,Q,this._momentsGreen)|0,U=PQ._bottom(A,Q,this._momentsBlue)|0,$=PQ._bottom(A,Q,this._momentsAlpha)|0,E=PQ._bottom(A,Q,this._weights)|0,K=0,I=-1;for(let V=B;VK)K=q,I=V}}}return{max:K,position:I}}_cut(A,Q){let B,Y=PQ._volume(A,this._momentsRed),J=PQ._volume(A,this._momentsGreen),C=PQ._volume(A,this._momentsBlue),X=PQ._volume(A,this._momentsAlpha),G=PQ._volume(A,this._weights),W=this._maximize(A,PQ._red,A.redMinimum+1,A.redMaximum,Y,J,C,X,G),F=this._maximize(A,PQ._green,A.greenMinimum+1,A.greenMaximum,Y,J,C,X,G),Z=this._maximize(A,PQ._blue,A.blueMinimum+1,A.blueMaximum,Y,J,C,X,G),U=this._maximize(A,PQ._alpha,A.alphaMinimum+1,A.alphaMaximum,Y,J,C,X,G);if(U.max>=W.max&&U.max>=F.max&&U.max>=Z.max){if(B=PQ._alpha,U.position<0)return!1}else if(W.max>=U.max&&W.max>=F.max&&W.max>=Z.max)B=PQ._red;else if(F.max>=U.max&&F.max>=W.max&&F.max>=Z.max)B=PQ._green;else B=PQ._blue;switch(Q.redMaximum=A.redMaximum,Q.greenMaximum=A.greenMaximum,Q.blueMaximum=A.blueMaximum,Q.alphaMaximum=A.alphaMaximum,B){case PQ._red:Q.redMinimum=A.redMaximum=W.position,Q.greenMinimum=A.greenMinimum,Q.blueMinimum=A.blueMinimum,Q.alphaMinimum=A.alphaMinimum;break;case PQ._green:Q.greenMinimum=A.greenMaximum=F.position,Q.redMinimum=A.redMinimum,Q.blueMinimum=A.blueMinimum,Q.alphaMinimum=A.alphaMinimum;break;case PQ._blue:Q.blueMinimum=A.blueMaximum=Z.position,Q.redMinimum=A.redMinimum,Q.greenMinimum=A.greenMinimum,Q.alphaMinimum=A.alphaMinimum;break;case PQ._alpha:Q.alphaMinimum=A.alphaMaximum=U.position,Q.blueMinimum=A.blueMinimum,Q.redMinimum=A.redMinimum,Q.greenMinimum=A.greenMinimum;break}return A.volume=(A.redMaximum-A.redMinimum)*(A.greenMaximum-A.greenMinimum)*(A.blueMaximum-A.blueMinimum)*(A.alphaMaximum-A.alphaMinimum),Q.volume=(Q.redMaximum-Q.redMinimum)*(Q.greenMaximum-Q.greenMinimum)*(Q.blueMaximum-Q.blueMinimum)*(Q.alphaMaximum-Q.alphaMinimum),!0}_initialize(A){this._colors=A,this._cubes=[];for(let Q=0;QrR,ErrorDiffusionArray:()=>t1,ErrorDiffusionArrayKernel:()=>qZA,ErrorDiffusionRiemersma:()=>ff,NearestColor:()=>LZA});var rR=class{quantizeSync(A,Q){for(let B of this.quantize(A,Q))if(B.pointContainer)return B.pointContainer;throw Error("unreachable")}},LZA=class extends rR{constructor(A){super();ZA(this,"_distance"),this._distance=A}*quantize(A,Q){let B=A.getPointArray(),Y=A.getWidth(),J=A.getHeight(),C=new b6(J,99);for(let X=0;X{return A[A.FloydSteinberg=0]="FloydSteinberg",A[A.FalseFloydSteinberg=1]="FalseFloydSteinberg",A[A.Stucki=2]="Stucki",A[A.Atkinson=3]="Atkinson",A[A.Jarvis=4]="Jarvis",A[A.Burkes=5]="Burkes",A[A.Sierra=6]="Sierra",A[A.TwoSierra=7]="TwoSierra",A[A.SierraLite=8]="SierraLite",A})(qZA||{}),t1=class extends rR{constructor(A,Q,B=!0,Y=0,J=!1){super();ZA(this,"_minColorDistance"),ZA(this,"_serpentine"),ZA(this,"_kernel"),ZA(this,"_calculateErrorLikeGIMP"),ZA(this,"_distance"),this._setKernel(Q),this._distance=A,this._minColorDistance=Y,this._serpentine=B,this._calculateErrorLikeGIMP=J}*quantize(A,Q){let B=A.getPointArray(),Y=new M8,J=A.getWidth(),C=A.getHeight(),X=[],G=1,W=1;for(let Z of this._kernel){let U=Z[2]+1;if(W=0&&k+I=0&&T+ZQ)A.length=Q;let B=A.length;for(let Y=0;Y=0&&A.x=0&&A.y{let F=B[G+W*Y],{r:Z,g:U,b:$,a:E}=F;for(let H=0;HqJB});var NJB=0.01,LJB=0.03;function qJB(A,Q){if(A.getHeight()!==Q.getHeight()||A.getWidth()!==Q.getWidth())throw Error("Images have different sizes!");let Y=255,J=(NJB*Y)**2,C=(LJB*Y)**2,X=0,G=0;return MJB(A,Q,(W,F,Z,U)=>{let $=0,E=0,K=0;for(let L=0;Lprocess.nextTick(A):(A)=>setTimeout(A,0);function MZA(A,{colorDistanceFormula:Q,paletteQuantization:B,colors:Y}={}){let J=RZA(Q),C=RJB(J,B,Y);return A.forEach((X)=>C.sample(X)),C.quantizeSync()}function zZA(A,Q,{colorDistanceFormula:B,imageQuantization:Y}={}){let J=RZA(B);return zJB(J,Y).quantizeSync(A,Q)}function RZA(A="euclidean-bt709"){switch(A){case"cie94-graphic-arts":return new GZA;case"cie94-textiles":return new XZA;case"ciede2000":return new uC;case"color-metric":return new WZA;case"euclidean":return new FZA;case"euclidean-bt709":return new ZZA;case"euclidean-bt709-noalpha":return new $ZA;case"manhattan":return new UZA;case"manhattan-bt709":return new KZA;case"manhattan-nommyde":return new EZA;case"pngquant":return new VZA;default:throw Error(`Unknown colorDistanceFormula ${A}`)}}function zJB(A,Q="floyd-steinberg"){switch(Q){case"nearest":return new LZA(A);case"riemersma":return new ff(A);case"floyd-steinberg":return new t1(A,0);case"false-floyd-steinberg":return new t1(A,1);case"stucki":return new t1(A,2);case"atkinson":return new t1(A,3);case"jarvis":return new t1(A,4);case"burkes":return new t1(A,5);case"sierra":return new t1(A,6);case"two-sierra":return new t1(A,7);case"sierra-lite":return new t1(A,8);default:throw Error(`Unknown imageQuantization ${Q}`)}}function RJB(A,Q="wuquant",B=256){switch(Q){case"neuquant":return new g0(A,B);case"rgbquant":return new DZA(A,B);case"wuquant":return new BE(A,B);case"neuquant-float":return new h0(A,B);default:throw Error(`Unknown paletteQuantization ${Q}`)}}var wJB=SB.object({colors:SB.number().optional(),colorDistanceFormula:SB.union([SB.literal("cie94-textiles"),SB.literal("cie94-graphic-arts"),SB.literal("ciede2000"),SB.literal("color-metric"),SB.literal("euclidean"),SB.literal("euclidean-bt709-noalpha"),SB.literal("euclidean-bt709"),SB.literal("manhattan"),SB.literal("manhattan-bt709"),SB.literal("manhattan-nommyde"),SB.literal("pngquant")]).optional(),paletteQuantization:SB.union([SB.literal("neuquant"),SB.literal("neuquant-float"),SB.literal("rgbquant"),SB.literal("wuquant")]).optional(),imageQuantization:SB.union([SB.literal("nearest"),SB.literal("riemersma"),SB.literal("floyd-steinberg"),SB.literal("false-floyd-steinberg"),SB.literal("stucki"),SB.literal("atkinson"),SB.literal("jarvis"),SB.literal("burkes"),SB.literal("sierra"),SB.literal("two-sierra"),SB.literal("sierra-lite")]).optional()}),wZA={quantize(A,Q){let{colors:B,colorDistanceFormula:Y,paletteQuantization:J,imageQuantization:C}=wJB.parse(Q),X=xf.PointContainer.fromUint8Array(A.bitmap.data,A.bitmap.width,A.bitmap.height),G=MZA([X],{colors:B,colorDistanceFormula:Y,paletteQuantization:J}),W=zZA(X,G,{colorDistanceFormula:Y,imageQuantization:C});return A.bitmap.data=Buffer.from(W.toUint8Array()),A}};var OJB=[lU,_7A,v7A,pU,RFA,wFA,rU,jFA,OFA,PFA,TFA,xFA,fFA,bFA,mC,dFA,cFA,wZA],PJB=[r3,w1A,XR,WR,$R,PR],f$Y={bmp:r3().mime,gif:XR().mime,jpeg:WR().mime,png:$R().mime,tiff:PR().mime},YE=MFA({formats:PJB,plugins:OJB});var R8={OPTIMIZED_DIR:".optimized",TEMP_DIR:"hytopia-models-temp",CHECKSUM_EXT:".md5",VERSION:4,DATA_EXT:".data.json",DIRECTORIES:[PY.assetsLibraryPath,jJ.resolve(process.cwd(),"assets")].filter(Boolean),OPTIMIZER_RUNS:[{suffix:"",options:["--compress","false","--instance","false","--simplify","false","--texture-compress","false"],stripAnimations:!1,optimalMaxMeshCount:10,optimalMaxMeshHint:"Reduce nodes/meshes in your source model, or use fewer unique materials so primitives can be merged in the generated optimized model.",keepEmptyNamedNodes:!1},{suffix:"-named-nodes",options:["--compress","false","--flatten","false","--instance","false","--simplify","false","--join","false","--prune","false","--texture-compress","false"],stripAnimations:!1,optimalMaxMeshCount:20,optimalMaxMeshHint:"Use fewer unique materials in your source model so primitives sharing the same material can be joined in the generated optimized model. Named nodes are preserved, reduce unnecessary named nodes to further reduce mesh count.",keepEmptyNamedNodes:!0},{suffix:"-no-animations",options:["--compress","false","--instance","false","--simplify","false","--texture-compress","false"],stripAnimations:!0,optimalMaxMeshCount:1,optimalMaxMeshHint:"Use a single material/texture atlas in your source model so all primitives can merge into one mesh in the generated optimized model.",keepEmptyNamedNodes:!1}]},aR=[oI,eI];class yY{static instance=new yY;optimize=process.env.NODE_ENV!=="production";_modelUriAnimationNames=new Map;_modelUriBoundingBoxes=new Map;_modelUriNodeNames=new Map;_modelUriTrimeshes=new Map;constructor(){}async preloadModels(){let A=await this._getAbsoluteModelPaths();console.info(`ModelRegistry.preloadModels(): Preloading ${A.length} models...`);let Q=performance.now();for(let Y of A){if(this.optimize)await this._resolveOptimizedModelPath(Y);await this._loadModelData(Y)}let B=performance.now();console.info(`ModelRegistry.preloadModels(): Preloaded ${A.length} models in ${B-Q}ms!`)}getAllModelUris(){return Array.from(this._modelUriBoundingBoxes.keys())}getAnimationNames(A){let Q=this._modelUriAnimationNames.get(A);if(!Q)return l.error(`ModelRegistry.getAnimationNames(): Model ${A} not found!`),[];return Q}getBoundingBox(A){let Q=this._modelUriBoundingBoxes.get(A);if(!Q)return l.error(`ModelRegistry.getBoundingBox(): Model ${A} not found!`),{min:{x:0,y:0,z:0},max:{x:1,y:1,z:1}};return Q}getDepth(A){let Q=this.getBoundingBox(A);return Q.max.z-Q.min.z}getHeight(A){let Q=this.getBoundingBox(A);return Q.max.y-Q.min.y}getNodeNames(A){let Q=this._modelUriNodeNames.get(A);if(!Q)return l.error(`ModelRegistry.getNodeNames(): Model ${A} not found!`),[];return Q}getTrimesh(A,Q={x:1,y:1,z:1}){let B=this._modelUriTrimeshes.get(A);if(!B){l.error(`ModelRegistry.getTrimesh(): Model ${A} not found!`);return}let Y=B.vertices;if(Q.x!==1||Q.y!==1||Q.z!==1){Y=new Float32Array(Y.length);for(let J=0;JK.getName()),Z=G.getRoot().listAnimations().map((K)=>K.getName()),U=await this._buildTrimesh(G),$={},E=new i4().registerExtensions(aR);for(let K of R8.OPTIMIZER_RUNS){let I=this._buildOptimizedModelPath(A),V=this._buildOptimizedSuffixedModelPath(I,K.suffix);$[K.suffix]={meshCount:(await E.read(V)).getRoot().listMeshes().length}}X={schemaVersion:R8.VERSION,source:{uri:Y,sha256:J},animationNames:Z,boundingBox:{min:{x:W.min[0],y:W.min[1],z:W.min[2]},max:{x:W.max[0],y:W.max[1],z:W.max[2]}},nodeNames:F,trimesh:U?{vertices:Array.from(U.vertices),indices:Array.from(U.indices)}:void 0,optimizedModelData:$};try{let K=jJ.dirname(B);z8.mkdirSync(K,{recursive:!0}),z8.writeFileSync(B,JSON.stringify(X))}catch(K){l.warning(`ModelRegistry._loadModelData(): Failed to write data file for ${Y}. Error: ${String(K)}`)}}if(process.env.NODE_ENV!=="production"&&!C)for(let G of R8.OPTIMIZER_RUNS){let W=X.optimizedModelData[G.suffix].meshCount;if(W>G.optimalMaxMeshCount)l.warning(`Model "${Y}" (${G.suffix}) has ${W} meshes (less is better, try not to exceed: ${G.optimalMaxMeshCount}). This may impact FPS if this model is used in a game. ${G.optimalMaxMeshHint}`)}this._modelUriAnimationNames.set(Y,X.animationNames),this._modelUriBoundingBoxes.set(Y,X.boundingBox),this._modelUriNodeNames.set(Y,X.nodeNames),this._modelUriTrimeshes.set(Y,X.trimesh?{vertices:new Float32Array(X.trimesh.vertices),indices:new Uint32Array(X.trimesh.indices)}:void 0)}async _resolveOptimizedModelPath(A){let Q=this._buildOptimizedModelPath(A);if(this._isOptimizedVersionValid(A))return Q;return await this._optimizeModel(A,Q)}_isOptimizedVersionValid(A){let Q=`${this._buildOptimizedModelPath(A)}${R8.CHECKSUM_EXT}`;if(!z8.existsSync(Q))return!1;let B=this._calculateChecksum(A),Y=z8.readFileSync(Q,"utf8");return B===Y}_calculateChecksum(A){if(!z8.existsSync(A))return"";let Q=z8.readFileSync(A);return TJB.createHash("sha256").update(Q.toString("base64")).update(R8.VERSION.toString()).digest("hex")}_buildOptimizedModelPath(A){let Q=jJ.basename(A),B=Q.replace(/\.[^/.]+$/,""),Y=jJ.dirname(A),J=jJ.join(Y,R8.OPTIMIZED_DIR,B);return jJ.join(J,Q)}_buildOptimizedSuffixedModelPath(A,Q){return A.replace(/(\.[^/.]+)$/,`${Q}.glb`)}async _buildTrimesh(A,Q=1,B=0.001){let Y=pCA(A);Y.setLogger(new S9(mI.WARN)),await Y.transform(hCA({pivot:"center"}),mh(),uh(),fh(),Y1A({simplifier:jZA.MeshoptSimplifier,ratio:Q,error:B}),cCA());for(let $ of Y.getRoot().listScenes())for(let E of $.listChildren())uCA(E);let J=[],C=0,X=0;for(let $ of Y.getRoot().listMeshes())for(let E of $.listPrimitives()){let K=E.getAttribute("POSITION"),I=E.getIndices();if(!K||!I)continue;let V=K.getArray(),H=I.getArray(),D=H instanceof Uint32Array?H:new Uint32Array(H);if(V.length===0||D.length===0)continue;J.push({vertices:V,indices:D}),C+=V.length,X+=D.length}if(J.length===0){l.error("ModelRegistry._buildTrimesh(): Model has no primitives with POSITION and INDICES!");return}let G=new Float32Array(C),W=new Uint32Array(X),F=0,Z=0,U=0;for(let $ of J){G.set($.vertices,F);let E=$.vertices.length/3;for(let K=0;K<$.indices.length;K++)W[U+K]=$.indices[K]+Z;F+=$.vertices.length,U+=$.indices.length,Z+=E}return{vertices:G,indices:W}}async _optimizeModel(A,Q){let B=jJ.dirname(Q);z8.rmSync(B,{recursive:!0,force:!0}),z8.mkdirSync(B,{recursive:!0}),console.info(`ModelRegistry: Optimizing model ${this._absoluteModelPathToModelUri(A)}...`);for(let Y of R8.OPTIMIZER_RUNS){let J=this._buildOptimizedSuffixedModelPath(Q,Y.suffix),C=await this._preprocessOptimizableModel(A,Y),X=await qI("npx",["@gltf-transform/cli","optimize",C,J,...Y.options]);if(X.stderr)return l.warning(`ModelRegistry._optimizeModel(): Error optimizing model ${this._absoluteModelPathToModelUri(A)}, defaulting to unoptimized model. Error: ${X.stderr}`),A;await this._embedModelMetadata(J);let G=await qI("npx",["@gltf-transform/cli","uastc",J,J,"--level","4","--zstd","10"]);if(G.stderr)l.warning(`ModelRegistry._optimizeModel(): Error compressing textures for model ${this._absoluteModelPathToModelUri(A)}, continuing without compression. Error: ${G.stderr}`)}return z8.writeFileSync(`${Q}${R8.CHECKSUM_EXT}`,this._calculateChecksum(A)),Q}async _embedModelMetadata(A){try{let Q=new i4().registerExtensions(aR),B=await Q.read(A);for(let Y of B.getRoot().listMaterials()){let C=Y.getBaseColorTexture()?.getImage(),X=!1;if(C)try{let G=Y.getAlphaMode()==="MASK"?Y.getAlphaCutoff()??0.5:0,W=Y.getAlpha(),F=G/W*255,{data:Z}=(await YE.read(Buffer.from(C))).bitmap;for(let U=3;U=F&&Z[U]<255){X=!0;break}}catch{}Y.setExtras({...Y.getExtras(),hasTransparency:X})}await Q.write(A,B)}catch(Q){l.warning(`ModelRegistry._embedModelMetadata(): Failed to embed metadata for ${A}. Error: ${String(Q)}`)}}async _preprocessOptimizableModel(A,Q){let B=new i4().registerExtensions(aR),Y=await B.read(A),J=!1;if(Q.stripAnimations){let C=Y.getRoot().listAnimations();if(C.length>0)C.forEach((X)=>X.dispose()),J=!0}if(Q.keepEmptyNamedNodes)await Y.transform(mh({cleanup:!1}),uh({cleanup:!1,keepNamed:!0}),m3({keepLeaves:!0})),J=!0;if(J){let C=jJ.join(SJB.tmpdir(),R8.TEMP_DIR);z8.mkdirSync(C,{recursive:!0});let X=jJ.join(C,jJ.basename(A));return await B.write(X,Y),X}return A}}var FZ;((J)=>{J.DYNAMIC="dynamic";J.FIXED="fixed";J.KINEMATIC_POSITION="kinematic_position";J.KINEMATIC_VELOCITY="kinematic_velocity"})(FZ||={});var bf=0.001,OZA="dynamic";class y7 extends BQ{_additionalMass=0;_colliders=new Set;_explicitSleep=!1;_enabledPositions={x:!0,y:!0,z:!0};_enabledRotations={x:!0,y:!0,z:!0};_rigidBody;_rigidBodyDesc;_rigidBodyType;_simulation;constructor(A){super();A.type??=OZA,this._rigidBodyDesc=this._createRigidBodyDesc(A),this._rigidBodyType=A.type,this._applyRigidBodyOptions(A),this._autoAddToSimulation(A)}get additionalMass(){if(!this._requireNotRemoved("additionalMass"))return 0;return this._additionalMass}get additionalSolverIterations(){if(!this._requireNotRemoved("additionalSolverIterations"))return 0;return this._rigidBody?this._rigidBody.additionalSolverIterations():this._rigidBodyDesc.additionalSolverIterations}get angularDamping(){if(!this._requireNotRemoved("angularDamping"))return 0;return this._rigidBody?this._rigidBody.angularDamping():this._rigidBodyDesc.angularDamping}get angularVelocity(){if(!this._requireNotRemoved("angularVelocity"))return{x:0,y:0,z:0};return this._rigidBody?this._rigidBody.angvel():this._rigidBodyDesc.angvel}get colliders(){return this._colliders}get dominanceGroup(){if(!this._requireNotRemoved("dominanceGroup"))return 0;return this._rigidBody?this._rigidBody.dominanceGroup():this._rigidBodyDesc.dominanceGroup}get directionFromRotation(){let{x:A,y:Q,z:B,w:Y}=this.rotation;return{x:-2*(A*B+Y*Q),y:-2*(Q*B-Y*A),z:-(1-2*(A*A+Q*Q))}}get effectiveAngularInertia(){if(!this._requireNotRemoved("effectiveAngularInertia"))return;return this._rigidBody?this._rigidBody.effectiveAngularInertia():void 0}get effectiveInverseMass(){if(!this._requireNotRemoved("effectiveInverseMass"))return;return this._rigidBody?this._rigidBody.effectiveInvMass():void 0}get enabledRotations(){if(!this._requireNotRemoved("enabledRotations"))return{x:!0,y:!0,z:!0};return this._enabledRotations}get enabledPositions(){if(!this._requireNotRemoved("enabledPositions"))return{x:!0,y:!0,z:!0};return this._enabledPositions}get gravityScale(){if(!this._requireNotRemoved("gravityScale"))return 0;return this._rigidBody?this._rigidBody.gravityScale():this._rigidBodyDesc.gravityScale}get inverseMass(){if(!this._requireNotRemoved("inverseMass"))return;return this._rigidBody?this._rigidBody.invMass():void 0}get isCcdEnabled(){if(!this._requireNotRemoved("isCcdEnabled"))return!1;return this._rigidBody?this._rigidBody.isCcdEnabled():this._rigidBodyDesc.ccdEnabled}get isDynamic(){if(!this._requireNotRemoved("isDynamic"))return!1;return this._rigidBodyType==="dynamic"}get isEnabled(){if(!this._requireNotRemoved("isEnabled"))return!1;return this._rigidBody?this._rigidBody.isEnabled():this._rigidBodyDesc.enabled}get isFixed(){if(!this._requireNotRemoved("isFixed"))return!1;return this._rigidBodyType==="fixed"}get isKinematic(){if(!this._requireNotRemoved("isKinematic"))return!1;return["kinematic_position","kinematic_velocity"].includes(this._rigidBodyType)}get isKinematicPositionBased(){if(!this._requireNotRemoved("isKinematicPositionBased"))return!1;return this._rigidBodyType==="kinematic_position"}get isKinematicVelocityBased(){if(!this._requireNotRemoved("isKinematicVelocityBased"))return!1;return this._rigidBodyType==="kinematic_velocity"}get isMoving(){if(!this._requireNotRemoved("isMoving"))return!1;return this._rigidBody?this._rigidBody.isMoving():!1}get isRemoved(){return!this._rigidBody&&!this._rigidBodyDesc}get isSimulated(){if(!this._requireNotRemoved("isSimulated"))return!1;return this._rigidBody?!0:!1}get isSleeping(){if(!this._requireNotRemoved("isSleeping"))return!1;return this._rigidBody?this._rigidBody.isSleeping():this._rigidBodyDesc.sleeping}get linearDamping(){if(!this._requireNotRemoved("linearDamping"))return 0;return this._rigidBody?this._rigidBody.linearDamping():this._rigidBodyDesc.linearDamping}get linearVelocity(){if(!this._requireNotRemoved("linearVelocity"))return{x:0,y:0,z:0};return this._rigidBody?this._rigidBody.linvel():this._rigidBodyDesc.linvel}get localCenterOfMass(){if(!this._requireNotRemoved("localCenterOfMass"))return{x:0,y:0,z:0};return this._rigidBody?this._rigidBody.localCom():this._rigidBodyDesc.centerOfMass}get mass(){if(!this._requireNotRemoved("mass"))return 0;return this._rigidBody?this._rigidBody.mass():this._rigidBodyDesc.mass}get nextKinematicRotation(){if(!this._requireNotRemoved("nextKinematicRotation"))return{x:0,y:0,z:0,w:1};return this._rigidBody?this._rigidBody.nextRotation():this._rigidBodyDesc.rotation}get nextKinematicPosition(){if(!this._requireNotRemoved("nextKinematicPosition"))return{x:0,y:0,z:0};return this._rigidBody?this._rigidBody.nextTranslation():this._rigidBodyDesc.translation}get numColliders(){return this._colliders.size}get principalAngularInertia(){if(!this._requireNotRemoved("principalAngularInertia"))return{x:0,y:0,z:0};return this._rigidBody?this._rigidBody.principalInertia():this._rigidBodyDesc.principalAngularInertia}get principalAngularInertiaLocalFrame(){if(!this._requireNotRemoved("principalAngularInertiaLocalFrame"))return;return this._rigidBody?this._rigidBody.principalInertiaLocalFrame():void 0}get position(){if(!this._requireNotRemoved("position"))return{x:0,y:0,z:0};return this._rigidBody?this._rigidBody.translation():this._rigidBodyDesc.translation}get rawRigidBody(){if(!this._requireNotRemoved("rawRigidBody"))return;return this._rigidBody}get rotation(){if(!this._requireNotRemoved("rotation"))return{x:0,y:0,z:0,w:1};return this._rigidBody?this._rigidBody.rotation():this._rigidBodyDesc.rotation}get softCcdPrediction(){if(!this._requireNotRemoved("softCcdPrediction"))return 0;return this._rigidBody?this._rigidBody.softCcdPrediction():this._rigidBodyDesc.softCcdPrediction}get type(){if(!this._requireNotRemoved("type"))return"dynamic";return this._rigidBodyType}get worldCenterOfMass(){if(!this._requireNotRemoved("worldCenterOfMass"))return;return this._rigidBody?this._rigidBody.worldCom():void 0}setAdditionalMass(A){if(!this._requireDynamic("setAdditionalMass"))return;if(!this._requireNotRemoved("setAdditionalMass"))return;this._rigidBody?this._rigidBody.setAdditionalMass(A,!this._explicitSleep):this._rigidBodyDesc.setAdditionalMass(A)}setAdditionalMassProperties(A){if(!this._requireDynamic("setAdditionalMassProperties"))return;if(!this._requireNotRemoved("setAdditionalMassProperties"))return;let{additionalMass:Q,centerOfMass:B,principalAngularInertia:Y,principalAngularInertiaLocalFrame:J}=A;this._rigidBody?this._rigidBody.setAdditionalMassProperties(Q,B,Y,J,!this._explicitSleep):this._rigidBodyDesc.setAdditionalMassProperties(Q,B,Y,J)}setAdditionalSolverIterations(A){if(!this._requireDynamic("setAdditionalSolverIterations"))return;if(!this._requireNotRemoved("setAdditionalSolverIterations"))return;this._rigidBody?this._rigidBody.setAdditionalSolverIterations(A):this._rigidBodyDesc.setAdditionalSolverIterations(A)}setAngularDamping(A){if(!this._requireDynamic("setAngularDamping"))return;if(!this._requireNotRemoved("setAngularDamping"))return;this._rigidBody?this._rigidBody.setAngularDamping(A):this._rigidBodyDesc.setAngularDamping(A)}setAngularVelocity(A){if(!this._requireNotKinematicPositionBased("setAngularVelocity"))return;if(!this._requireNotRemoved("setAngularVelocity"))return;this._rigidBody?this._rigidBody.setAngvel(A,!this._explicitSleep):this._rigidBodyDesc.setAngvel(A)}setCcdEnabled(A){if(!this._requireDynamic("setCcdEnabled"))return;if(!this._requireNotRemoved("setCcdEnabled"))return;this._rigidBody?this._rigidBody.enableCcd(A):this._rigidBodyDesc.setCcdEnabled(A)}setDominanceGroup(A){if(!this._requireDynamic("setDominanceGroup"))return;if(!this._requireNotRemoved("setDominanceGroup"))return;this._rigidBody?this._rigidBody.setDominanceGroup(A):this._rigidBodyDesc.setDominanceGroup(A)}setEnabled(A){if(!this._requireNotRemoved("setEnabled"))return;this._rigidBody?this._rigidBody.setEnabled(A):this._rigidBodyDesc.setEnabled(A)}setEnabledPositions(A){if(!this._requireDynamic("setEnabledPositions"))return;if(!this._requireNotRemoved("setEnabledPositions"))return;this._rigidBody?this._rigidBody.setEnabledTranslations(A.x,A.y,A.z,!this._explicitSleep):this._rigidBodyDesc.enabledTranslations(A.x,A.y,A.z),this._enabledPositions=A}setEnabledRotations(A){if(!this._requireDynamic("setEnabledRotations"))return;if(!this._requireNotRemoved("setEnabledRotations"))return;this._rigidBody?this._rigidBody.setEnabledRotations(A.x,A.y,A.z,!this._explicitSleep):this._rigidBodyDesc.enabledRotations(A.x,A.y,A.z),this._enabledRotations=A}setGravityScale(A){if(!this._requireDynamic("setGravityScale"))return;if(!this._requireNotRemoved("setGravityScale"))return;this._rigidBody?this._rigidBody.setGravityScale(A,!this._explicitSleep):this._rigidBodyDesc.setGravityScale(A)}setLinearDamping(A){if(!this._requireDynamic("setLinearDamping"))return;if(!this._requireNotRemoved("setLinearDamping"))return;this._rigidBody?this._rigidBody.setLinearDamping(A):this._rigidBodyDesc.setLinearDamping(A)}setLinearVelocity(A){if(!this._requireNotKinematicPositionBased("setLinearVelocity"))return;if(!this._requireNotRemoved("setLinearVelocity"))return;this._rigidBody?this._rigidBody.setLinvel(A,!this._explicitSleep):this._rigidBodyDesc.setLinvel(A.x,A.y,A.z)}setNextKinematicRotation(A){if(!this._requireKinematic("setNextKinematicRotation"))return;if(!this._requireNotRemoved("setNextKinematicRotation"))return;this._rigidBody?this._rigidBody.setNextKinematicRotation(A):this._rigidBodyDesc.setRotation(A)}setNextKinematicPosition(A){if(!this._requireKinematic("setNextKinematicPosition"))return;if(!this._requireNotRemoved("setNextKinematicPosition"))return;this._rigidBody?this._rigidBody.setNextKinematicTranslation(A):this._rigidBodyDesc.setTranslation(A.x,A.y,A.z)}setPosition(A){if(!this._requireNotRemoved("setPosition"))return;this._rigidBody?this._rigidBody.setTranslation(A,!this._explicitSleep):this._rigidBodyDesc.setTranslation(A.x,A.y,A.z)}setRotation(A){if(!this._requireNotRemoved("setRotation"))return;this._rigidBody?this._rigidBody.setRotation(A,!this._explicitSleep):this._rigidBodyDesc.setRotation(A)}setSleeping(A){if(!this._requireDynamic("setSleeping"))return;if(!this._requireNotRemoved("setSleeping"))return;this._rigidBody?A?this._rigidBody.sleep():this._rigidBody.wakeUp():this._rigidBodyDesc.sleeping=A,this._explicitSleep=A}setSoftCcdPrediction(A){if(!this._requireDynamic("setSoftCcdPrediction"))return;if(!this._requireNotRemoved("setSoftCcdPrediction"))return;this._rigidBody?this._rigidBody.setSoftCcdPrediction(A):this._rigidBodyDesc.setSoftCcdPrediction(A)}setCollisionGroupsForSolidColliders(A){if(!this._requireNotRemoved("setCollisionGroupsForSolidColliders"))return;this._colliders.forEach((Q)=>{if(Q.isSensor)return;Q.setCollisionGroups(A)})}setCollisionGroupsForSensorColliders(A){if(!this._requireNotRemoved("setCollisionGroupsForSensorColliders"))return;this._colliders.forEach((Q)=>{if(!Q.isSensor)return;Q.setCollisionGroups(A)})}setType(A){if(!this._requireNotRemoved("setType"))return;let B={["dynamic"]:WB.RigidBodyType.Dynamic,["fixed"]:WB.RigidBodyType.Fixed,["kinematic_position"]:WB.RigidBodyType.KinematicPositionBased,["kinematic_velocity"]:WB.RigidBodyType.KinematicVelocityBased}[A];if(B===void 0)return l.error(`Invalid RigidBodyType: ${A}`);this._rigidBody?this._rigidBody.setBodyType(B,!this._explicitSleep):this._rigidBodyDesc.status=B,this._rigidBodyType=A}addForce(A){if(!this._requireNotRemoved("addForce"))return;if(!this._requireCreated("addForce"))return;if(!this._requireDynamic("addForce"))return;if(this._isNegligibleVector(A))return;this._rigidBody.addForce(A,!this._explicitSleep)}addTorque(A){if(!this._requireNotRemoved("addTorque"))return;if(!this._requireCreated("addTorque"))return;if(!this._requireDynamic("addTorque"))return;if(this._isNegligibleVector(A))return;this._rigidBody.addTorque(A,!this._explicitSleep)}addChildColliderToSimulation(A){if(!this._requireNotRemoved("addChildColliderToSimulation"))return;if(!this._requireCreated("addChildColliderToSimulation"))return;A.addToSimulation(this._simulation,this)}addToSimulation(A){if(!this._requireNotRemoved("addToSimulation"))return;if(this._rigidBody)return l.error("RigidBody.addToSimulation(): Rigid body already exists in the simulation!");this._simulation=A,this._rigidBody=this._simulation.createRawRigidBody(this._rigidBodyDesc),this._colliders.forEach((Q)=>{if(!Q.isSimulated)Q.addToSimulation(A,this)})}applyImpulse(A){if(!this._requireNotRemoved("applyImpulse"))return;if(!this._requireCreated("applyImpulse"))return;if(!this._requireDynamic("applyImpulse"))return;if(this._isNegligibleVector(A))return;this._rigidBody.applyImpulse(A,!this._explicitSleep)}applyImpulseAtPoint(A,Q){if(!this._requireNotRemoved("applyImpulseAtPoint"))return;if(!this._requireCreated("applyImpulseAtPoint"))return;if(!this._requireDynamic("applyImpulseAtPoint"))return;if(this._isNegligibleVector(A))return;this._rigidBody.applyImpulseAtPoint(A,Q,!this._explicitSleep)}applyTorqueImpulse(A){if(!this._requireNotRemoved("applyTorqueImpulse"))return;if(!this._requireCreated("applyTorqueImpulse"))return;if(!this._requireDynamic("applyTorqueImpulse"))return;this._rigidBody.applyTorqueImpulse(A,!this._explicitSleep)}createAndAddChildCollider(A){if(!this._requireNotRemoved("createAndAddChildCollider"))return null;return this._simulation?new h9({...A,parentRigidBody:this,simulation:this._simulation}):this._createAndAddPendingChildCollider(A)}createAndAddChildColliders(A){let Q=[];return A.forEach((B)=>{let Y=this.createAndAddChildCollider(B);if(Y)Q.push(Y)}),Q}getCollidersByTag(A){let Q=[];for(let B of this._colliders)if(B.tag===A)Q.push(B);return Q}linkCollider(A){if(!this._requireNotRemoved("linkCollider"))return;if(A.parentRigidBody!==this)return l.error("RigidBody.linkCollider(): Collider cannot be linked because it is not a child of this rigid body!");this._colliders.add(A)}lockAllRotations(){if(!this._requireNotRemoved("lockAllRotations"))return;this.setEnabledRotations({x:!1,y:!1,z:!1})}lockAllPositions(){if(!this._requireNotRemoved("lockAllPositions"))return;this.setEnabledPositions({x:!1,y:!1,z:!1})}removeFromSimulation(){if(!this._requireNotRemoved("removeFromSimulation"))return;if(!this._rigidBody)return l.error("RigidBody.removeFromSimulation(): Rigid body does not exist in the simulation!");this._colliders.forEach((A)=>{A.removeFromSimulation()}),this._simulation.removeRawRigidBody(this._rigidBody),this._simulation=void 0,this._rigidBody=void 0}unlinkCollider(A){if(!this._requireNotRemoved("unlinkCollider"))return;if(!A.isRemoved)return l.error("RigidBody.unlinkCollider(): Collider is still simulated and therefore cannot be unlinked from this rigid body!");this._colliders.delete(A)}resetAngularVelocity(){if(!this._requireNotRemoved("resetAngularVelocity"))return;if(!this._requireCreated("resetAngularVelocity"))return;this.setAngularVelocity({x:0,y:0,z:0})}resetForces(){if(!this._requireNotRemoved("resetForces"))return;if(!this._requireCreated("resetForces"))return;this._rigidBody.resetForces(!this._explicitSleep)}resetLinearVelocity(){if(!this._requireNotRemoved("resetLinearVelocity"))return;if(!this._requireCreated("resetLinearVelocity"))return;this.setLinearVelocity({x:0,y:0,z:0})}resetTorques(){if(!this._requireNotRemoved("resetTorques"))return;if(!this._requireCreated("resetTorques"))return;this._rigidBody.resetTorques(!this._explicitSleep)}sleep(){if(!this._requireNotRemoved("sleep"))return;this.setSleeping(!0)}wakeUp(){if(!this._requireNotRemoved("wakeUp"))return;this.setSleeping(!1)}_applyRigidBodyOptions(A){[["additionalMass",this.setAdditionalMass.bind(this)],["additionalMassProperties",this.setAdditionalMassProperties.bind(this)],["additionalSolverIterations",this.setAdditionalSolverIterations.bind(this)],["angularDamping",this.setAngularDamping.bind(this)],["angularVelocity",this.setAngularVelocity.bind(this)],["dominanceGroup",this.setDominanceGroup.bind(this)],["ccdEnabled",this.setCcdEnabled.bind(this)],["enabled",this.setEnabled.bind(this)],["enabledPositions",this.setEnabledPositions.bind(this)],["enabledRotations",this.setEnabledRotations.bind(this)],["gravityScale",this.setGravityScale.bind(this)],["linearDamping",this.setLinearDamping.bind(this)],["linearVelocity",this.setLinearVelocity.bind(this)],["position",this.setPosition.bind(this)],["rotation",this.setRotation.bind(this)],["sleeping",this.setSleeping.bind(this)],["softCcdPrediction",this.setSoftCcdPrediction.bind(this)]].forEach(([B,Y])=>{if(B in A)Y(A[B])})}_autoAddToSimulation(A){if(A.colliders)this._createAndAddPendingChildColliders(A.colliders);if(A.simulation)this.addToSimulation(A.simulation)}_createAndAddPendingChildCollider(A){if(!this._requireNotRemoved("createAndAddPendingChildCollider"))return null;if(!this._requireNotSimulated("createAndAddPendingChildCollider"))return null;let Q=new h9(A);return this._colliders.add(Q),Q}_createAndAddPendingChildColliders(A){let Q=[];return A.forEach((B)=>{let Y=this._createAndAddPendingChildCollider(B);if(Y)Q.push(Y)}),Q}_createRigidBodyDesc(A){let Q=A.type??OZA;return{["dynamic"]:()=>WB.RigidBodyDesc.dynamic(),["fixed"]:()=>WB.RigidBodyDesc.fixed(),["kinematic_position"]:()=>WB.RigidBodyDesc.kinematicPositionBased(),["kinematic_velocity"]:()=>WB.RigidBodyDesc.kinematicVelocityBased()}[Q]()}_requireCreated(A){if(!this._rigidBody||!this._simulation)l.error(`RigidBody._requireCreated(): Rigid body has not been created and therefore does not support the invoked method: ${A}()`);return!!this._rigidBody&&!!this._simulation}_requireDynamic(A){if(!this.isDynamic)l.error(`RigidBody._requireDynamic(): Rigid body is not dynamic and therefore does not support the invoked method: ${A}()`);return this.isDynamic}_requireKinematic(A){if(!this.isKinematic)l.error(`RigidBody._requireKinematic(): Rigid body is not kinematic and therefore does not support the invoked method: ${A}()`);return this.isKinematic}_requireNotKinematicPositionBased(A){if(this.isKinematicPositionBased)l.error(`RigidBody._requireNotKinematicPositionBased(): Rigid body is kinematic position based and therefore does not support the invoked method: ${A}()`);return!this.isKinematicPositionBased}_requireNotRemoved(A){if(!this._rigidBody&&!this._rigidBodyDesc)l.error(`RigidBody._requireNotRemoved(): Rigid body has been removed and therefore does not support the invoked method: ${A}()`);return!!this._rigidBody||!!this._rigidBodyDesc}_requireNotSimulated(A){if(this.isSimulated)l.error(`RigidBody._requireNotSimulated(): Rigid body is simulated and therefore does not support the invoked method: ${A}()`);return!this.isSimulated}_isNegligibleVector(A){return Math.abs(A.x){J[J.Average=0]="Average";J[J.Min=1]="Min";J[J.Multiply=2]="Multiply";J[J.Max=3]="Max"})(mf||={});var ZZ;((Z)=>{Z.NONE="none";Z.BALL="ball";Z.BLOCK="block";Z.CAPSULE="capsule";Z.CONE="cone";Z.CYLINDER="cylinder";Z.ROUND_CYLINDER="round-cylinder";Z.TRIMESH="trimesh";Z.VOXELS="voxels";Z.WEDGE="wedge"})(ZZ||={});class h9 extends BQ{_collider;_colliderDesc;_onCollision;_parentRigidBody;_relativePosition={x:0,y:0,z:0};_relativeRotation={x:0,y:0,z:0,w:1};_scale={x:1,y:1,z:1};_shape;_simulation;_tag;constructor(A){super();this._colliderDesc=this._createColliderDesc(A),this._shape=A.shape,this._applyColliderOptions(A),this._autoAddToSimulation(A)}static optionsFromBlockHalfExtents(A){return{shape:"block",halfExtents:A}}static optionsFromModelUri(A,Q=1,B){Q=typeof Q==="number"?{x:Q,y:Q,z:Q}:Q;let Y=yY.instance.getBoundingBox(A),J=Y.max.x-Y.min.x,C=Y.max.y-Y.min.y,X=Y.max.z-Y.min.z,G=J*Q.x,W=C*Q.y,F=X*Q.z,Z=Math.max(G,F),U=Math.min(G,F),$=Z/U,E=Z/W,K=Z/2,I=(M)=>Math.max(0.01,M),V=()=>({shape:"block",halfExtents:{x:I(G/2),y:I(W/2),z:I(F/2)}}),H=()=>({shape:"round-cylinder",radius:I(K),halfHeight:I(W/2),borderRadius:I(K*0.1)}),D=()=>{let M=yY.instance.getTrimesh(A,Q);if(!M)return;return{shape:"trimesh",vertices:M.vertices,indices:M.indices}},L=()=>({shape:"wedge",extents:{x:G,y:W,z:F}}),z=()=>({shape:"capsule",radius:I(K),halfHeight:I(W/2-K)});if(B)switch(B){case"block":return V();case"capsule":return z();case"round-cylinder":return H();case"trimesh":{let M=D();if(!M){l.error(`Collider.optionsFromModelUri(): Failed to create trimesh options for model ${A}, falling back to generic shape!`);break}return M}case"wedge":return L();default:l.warning(`Collider.optionsFromModelUri(): Preferred shape ${B} is not yet supported with Collider.optionsFromModelUri(), defaulting to generic shape!`)}if($>2)return V();if(E>1.5)return H();return z()}get bounciness(){if(!this._requireNotRemoved("bounciness"))return 0;return this._collider?this._collider.restitution():this._colliderDesc.restitution}get bouncinessCombineRule(){if(!this._requireNotRemoved("bouncinessCombineRule"))return 0;return this._collider?this._collider.restitutionCombineRule():this._colliderDesc.restitutionCombineRule}get collisionGroups(){if(!this._requireNotRemoved("collisionGroups"))return{belongsTo:[],collidesWith:[]};return this._collider?LC.decodeRawCollisionGroups(this._collider.collisionGroups()):LC.decodeRawCollisionGroups(this._colliderDesc.collisionGroups)}get friction(){if(!this._requireNotRemoved("friction"))return 0;return this._collider?this._collider.friction():this._colliderDesc.friction}get frictionCombineRule(){if(!this._requireNotRemoved("frictionCombineRule"))return 0;return this._collider?this._collider.frictionCombineRule():this._colliderDesc.frictionCombineRule}get isEnabled(){if(!this._requireNotRemoved("isEnabled"))return!1;return this._collider?this._collider.isEnabled():this._colliderDesc.enabled}get isRemoved(){return!this._collider&&!this._colliderDesc}get isSensor(){if(!this._requireNotRemoved("isSensor"))return!1;return this._collider?this._collider.isSensor():this._colliderDesc.isSensor}get isSimulated(){if(!this._requireNotRemoved("isSimulated"))return!1;return!!this._collider}get isBall(){return this.shape==="ball"}get isBlock(){return this.shape==="block"}get isCapsule(){return this.shape==="capsule"}get isCone(){return this.shape==="cone"}get isCylinder(){return this.shape==="cylinder"}get isNone(){return this.shape==="none"}get isRoundCylinder(){return this.shape==="round-cylinder"}get isTrimesh(){return this.shape==="trimesh"}get isVoxel(){return this.shape==="voxels"}get isWedge(){return this.shape==="wedge"}get parentRigidBody(){if(!this._requireNotRemoved("parentRigidBody"))return;return this._parentRigidBody}get rawCollider(){if(!this._requireNotRemoved("rawCollider"))return;return this._collider}get rawShape(){if(!this._requireNotRemoved("rawShape"))return;return this._collider?this._collider.shape:this._colliderDesc.shape}get relativePosition(){if(!this._requireNotRemoved("relativePosition"))return{x:0,y:0,z:0};return this._relativePosition}get relativeRotation(){if(!this._requireNotRemoved("relativeRotation"))return{x:0,y:0,z:0,w:1};return this._relativeRotation}get scale(){if(!this._requireNotRemoved("scale"))return{x:1,y:1,z:1};return this._scale}get shape(){if(!this._requireNotRemoved("shape"))return"none";return this._shape}get tag(){if(!this._requireNotRemoved("tag"))return;return this._tag}setBounciness(A){if(!this._requireNotRemoved("setBounciness"))return;this._collider?this._collider.setRestitution(A):this._colliderDesc.setRestitution(A)}setBouncinessCombineRule(A){if(!this._requireNotRemoved("setBouncinessCombineRule"))return;this._collider?this._collider.setRestitutionCombineRule(A):this._colliderDesc.setRestitutionCombineRule(A)}setCollisionGroups(A){if(!this._requireNotRemoved("setCollisionGroups"))return;let Q=LC.buildRawCollisionGroups(A);this._collider?this._collider.setCollisionGroups(Q):this._colliderDesc.setCollisionGroups(Q)}setEnabled(A){if(!this._requireNotRemoved("setEnabled"))return;this._collider?this._collider.setEnabled(A):this._colliderDesc.setEnabled(A)}setFriction(A){if(!this._requireNotRemoved("setFriction"))return;this._collider?this._collider.setFriction(A):this._colliderDesc.setFriction(A)}setFrictionCombineRule(A){if(!this._requireNotRemoved("setFrictionCombineRule"))return;this._collider?this._collider.setFrictionCombineRule(A):this._colliderDesc.setFrictionCombineRule(A)}setHalfExtents(A){if(!this._requireSimulated("setHalfExtents"))return;if(!this._requireNotRemoved("setHalfExtents"))return;if(this.shape!=="block")return l.error("Collider.setHalfExtents(): Collider is not a block collider!");this._collider.setHalfExtents(A)}setHalfHeight(A){if(!this._requireSimulated("setHalfHeight"))return;if(!this._requireNotRemoved("setHalfHeight"))return;if(this.shape!=="capsule"&&this.shape!=="cone"&&this.shape!=="cylinder"&&this.shape!=="round-cylinder")return l.error("Collider.setHalfHeight(): Collider is not a capsule, cone, cylinder, or round cylinder collider!");this._collider.setHalfHeight(A)}setMass(A){if(!this._requireNotRemoved("setMass"))return;this._collider?this._collider.setMass(A):this._colliderDesc.setMass(A)}setOnCollision(A){if(!this._requireNotRemoved("setOnCollision"))return;if(this._onCollision=A,this.isSimulated)if(this.enableCollisionEvents(!!A),A)this._simulation.colliderMap.setColliderCollisionCallback(this,A);else this._simulation.colliderMap.removeColliderCollisionCallback(this)}setRadius(A){if(!this._requireSimulated("setRadius"))return;if(!this._requireNotRemoved("setRadius"))return;if(this.shape!=="ball"&&this.shape!=="capsule"&&this.shape!=="cylinder"&&this.shape!=="round-cylinder")return l.error("Collider.setRadius(): Collider is not a ball, capsule, cylinder, or round cylinder collider!");this._collider.setRadius(A)}setRelativeRotation(A){if(!this._requireNotRemoved("setRelativeRotation"))return;this._relativeRotation=A,this._collider?this._collider.parent()?this._collider.setRotationWrtParent(A):this._collider.setRotation(A):this._colliderDesc.setRotation(A)}setRelativePosition(A){if(!this._requireNotRemoved("setRelativePosition"))return;this._relativePosition=A,this._collider?this._collider.parent()?this._collider.setTranslationWrtParent(A):this._collider.setTranslation(A):this._colliderDesc.setTranslation(A.x,A.y,A.z)}setSensor(A){if(!this._requireNotRemoved("setSensor"))return;this._collider?this._collider.setSensor(A):this._colliderDesc.setSensor(A)}setTag(A){if(!this._requireNotRemoved("setTag"))return;this._tag=A}setVoxel(A,Q){if(!this._requireNotRemoved("setVoxel"))return;if(!this._requireSimulated("setVoxel"))return;if(this.shape!=="voxels")return l.error("Collider.setVoxel(): Collider is not a voxels collider!");this._collider.setVoxel(A.x,A.y,A.z,Q)}addToSimulation(A,Q){if(!this._requireNotRemoved("addToSimulation"))return;if(!this._requireUnsimulated("addToSimulation"))return;if(Q){if(!Q.isSimulated)return l.error("Collider.addToSimulation(): Rigid body must be simulated before adding a collider to it!");if(Q.type==="dynamic"&&this.shape==="trimesh")l.warning("Collider.addToSimulation(): Trimesh colliders are strongly discouraged to be used with dynamic rigid bodies, they will not contribute any mass!")}if(this._simulation=A,this._parentRigidBody=Q,this._collider=this._simulation.createRawCollider(this._colliderDesc,Q?.rawRigidBody),this._colliderDesc=void 0,Q)Q.linkCollider(this);if(this._onCollision)this.setOnCollision(this._onCollision)}combineVoxelStates(A){if(!this._requireNotRemoved("combineVoxelStates"))return;if(!this._requireSimulated("combineVoxelStates"))return;if(!A.isSimulated)return l.error("Collider.combineVoxelStates(): Other collider is not simulated!");if(this.shape!=="voxels")return l.error("Collider.combineVoxelStates(): Collider is not a voxels collider!");if(A.shape!=="voxels")return l.error("Collider.combineVoxelStates(): Other collider is not a voxels collider!");this._collider.combineVoxelStates(A.rawCollider,0,0,0)}enableCollisionEvents(A){if(!this._requireNotRemoved("enableCollisionEvents"))return;let Q=this._collider?this._collider.activeEvents():this._colliderDesc.activeEvents,B=A?Q|WB.ActiveEvents.COLLISION_EVENTS:Q&~WB.ActiveEvents.COLLISION_EVENTS;(this._collider??this._colliderDesc).setActiveEvents(B),this._setActiveCollisionTypes()}enableContactForceEvents(A){if(!this._requireNotRemoved("enableContactForceEvents"))return;let Q=this._collider?this._collider.activeEvents():this._colliderDesc.activeEvents,B=A?Q|WB.ActiveEvents.CONTACT_FORCE_EVENTS:Q&~WB.ActiveEvents.CONTACT_FORCE_EVENTS;(this._collider??this._colliderDesc).setActiveEvents(B),this._setActiveCollisionTypes()}propagateVoxelChange(A,Q){if(!this._requireNotRemoved("propagateVoxelChange"))return;if(!this._requireSimulated("propagateVoxelChange"))return;if(!A.isSimulated)return l.error("Collider.propagateVoxelChange(): Other collider is not simulated!");if(this.shape!=="voxels")return l.error("Collider.propagateVoxelChange(): Collider is not a voxels collider!");if(A.shape!=="voxels")return l.error("Collider.propagateVoxelChange(): Other collider is not a voxels collider!");this._collider.propagateVoxelChange(A.rawCollider,Q.x,Q.y,Q.z,0,0,0)}removeFromSimulation(){if(!this._requireNotRemoved("removeFromSimulation"))return;if(!this._requireSimulated("removeFromSimulation"))return;if(this._simulation.removeRawCollider(this._collider),this._simulation=void 0,this._collider=void 0,this._parentRigidBody)this._parentRigidBody.unlinkCollider(this);this._parentRigidBody=void 0}setScale(A){if(!this._requireNotRemoved("scale"))return;let Q={x:A.x/this._scale.x,y:A.y/this._scale.y,z:A.z/this._scale.z};this.setRelativePosition({x:this.relativePosition.x*Q.x,y:this.relativePosition.y*Q.y,z:this.relativePosition.z*Q.z});let B=Math.max(this._scale.x,this._scale.z),J=Math.max(A.x,A.z)/B;switch(this._scale=A,this._shape){case"ball":{if(this._collider)this._collider.setRadius(this._collider.radius()*J);else this._colliderDesc.shape.radius*=J;return}case"block":{if(this._collider){let C=this._collider.halfExtents();this._collider.setHalfExtents({x:C.x*Q.x,y:C.y*Q.y,z:C.z*Q.z})}else this._colliderDesc.shape.halfExtents.x*=Q.x,this._colliderDesc.shape.halfExtents.y*=Q.y,this._colliderDesc.shape.halfExtents.z*=Q.z;return}case"capsule":{if(this._collider)this._collider.setHalfHeight(this._collider.halfHeight()*Q.y),this._collider.setRadius(this._collider.radius()*J);else this._colliderDesc.shape.halfHeight*=Q.y,this._colliderDesc.shape.radius*=J;return}case"cone":{if(this._collider)this._collider.setHalfHeight(this._collider.halfHeight()*Q.y),this._collider.setRadius(this._collider.radius()*J);else this._colliderDesc.shape.halfHeight*=Q.y,this._colliderDesc.shape.radius*=J;return}case"cylinder":{if(this._collider)this._collider.setHalfHeight(this._collider.halfHeight()*Q.y),this._collider.setRadius(this._collider.radius()*J);else this._colliderDesc.shape.halfHeight*=Q.y,this._colliderDesc.shape.radius*=J;return}case"round-cylinder":{if(this._collider)this._collider.setHalfHeight(this._collider.halfHeight()*Q.y),this._collider.setRoundRadius(this._collider.roundRadius()*J),this._collider.setRadius(this._collider.radius()*J);else this._colliderDesc.shape.halfHeight=this._colliderDesc.shape.halfHeight*Q.y,this._colliderDesc.shape.borderRadius=this._colliderDesc.shape.borderRadius*J,this._colliderDesc.shape.radius=this._colliderDesc.shape.radius*J;return}case"trimesh":{l.error("Collider.setScale(): Trimesh colliders cannot be scaled at runtime!");return}case"voxels":{l.error("Collider.setScale(): Voxels colliders cannot be scaled!");return}case"wedge":{l.error("Collider.setScale(): Wedge colliders cannot be scaled!");return}default:l.fatalError(`Collider.setScale(): ${this._shape} is not a valid collider shape!`)}}_applyColliderOptions(A){[["bounciness",this.setBounciness.bind(this)],["bouncinessCombineRule",this.setBouncinessCombineRule.bind(this)],["collisionGroups",this.setCollisionGroups.bind(this)],["enabled",this.setEnabled.bind(this)],["friction",this.setFriction.bind(this)],["frictionCombineRule",this.setFrictionCombineRule.bind(this)],["isSensor",this.setSensor.bind(this)],["mass",this.setMass.bind(this)],["onCollision",this.setOnCollision.bind(this)],["relativePosition",this.setRelativePosition.bind(this)],["relativeRotation",this.setRelativeRotation.bind(this)],["tag",this.setTag.bind(this)]].forEach(([B,Y])=>{if(A[B]!==void 0)Y.call(this,A[B])})}_autoAddToSimulation(A){if(A.simulation)this.addToSimulation(A.simulation,A.parentRigidBody)}_buildWedgeConvexHullVertices(A){let{x:Q,y:B,z:Y}=A,J=Q/2,C=Y/2,X=B/2;return new Float32Array([-J,0-X,-C,J,0-X,-C,J,0-X,C,-J,0-X,C,-J,B-X,-C,J,B-X,-C])}_createColliderDesc(A){let{shape:Q,flags:B}=A;switch(Q){case"ball":{if(!A.radius)l.fatalError("Ball collider must have a radius!");return WB.ColliderDesc.ball(A.radius)}case"block":{if(!A.halfExtents)l.fatalError("Block collider must have halfExtents!");return WB.ColliderDesc.cuboid(A.halfExtents.x,A.halfExtents.y,A.halfExtents.z)}case"capsule":{if(!A.halfHeight||!A.radius)l.fatalError("Capsule collider must have halfHeight and radius!");return WB.ColliderDesc.capsule(A.halfHeight,A.radius)}case"cone":{if(!A.radius||!A.halfHeight)l.fatalError("Cone collider must have radius and halfHeight!");return WB.ColliderDesc.cone(A.halfHeight,A.radius)}case"cylinder":{if(!A.radius||!A.halfHeight)l.fatalError("Cylinder collider must have radius and halfHeight!");return WB.ColliderDesc.cylinder(A.halfHeight,A.radius)}case"round-cylinder":{if(!A.radius||!A.halfHeight||!A.borderRadius)l.fatalError("Round cylinder collider must have radius, halfHeight, and borderRadius!");return WB.ColliderDesc.roundCylinder(A.halfHeight,A.radius,A.borderRadius)}case"trimesh":{if(!A.indices||!A.vertices)l.fatalError("Trimesh collider must have vertices and indices!");return WB.ColliderDesc.trimesh(A.vertices,A.indices,B)}case"voxels":{if(!A.coordinates||!A.size)l.fatalError("Voxels collider must have coordinates and size!");return WB.ColliderDesc.voxels(this._coordinatesToInt32Array(A.coordinates),A.size)}case"wedge":{if(!A.extents)l.fatalError("Wedge collider must have extents!");let Y=this._buildWedgeConvexHullVertices(A.extents),J=WB.ColliderDesc.convexHull(Y);if(!J)throw l.fatalError("Failed to create convex hull for wedge collider!"),Error("Convex hull creation failed");return J}default:l.fatalError(`Collider._createColliderDesc(): ${Q} is not a valid collider shape!`)}}_requireSimulated(A){if(!this.isSimulated)l.error(`Collider._requireSimulated(): Collider is not simulated, invoked method: ${A}()`);return this.isSimulated}_requireUnsimulated(A){if(this.isSimulated)l.error(`Collider._requireUnsimulated(): Collider is already simulated, invoked method: ${A}()`);return!this.isSimulated}_requireNotRemoved(A){if(this.isRemoved)l.error(`Collider._requireNotRemoved(): Collider is removed, invoked method: ${A}()`);return!this.isRemoved}_setActiveCollisionTypes(){(this._collider??this._colliderDesc).setActiveCollisionTypes(WB.ActiveCollisionTypes.DYNAMIC_DYNAMIC|WB.ActiveCollisionTypes.DYNAMIC_KINEMATIC|WB.ActiveCollisionTypes.DYNAMIC_FIXED|WB.ActiveCollisionTypes.KINEMATIC_KINEMATIC|WB.ActiveCollisionTypes.KINEMATIC_FIXED)}_coordinatesToInt32Array(A){let Q=new Int32Array(A.length*3);for(let B=0;Bthis.serializeBlockType(Q))}static serializeChunk(A){return{c:this.serializeVector(A.originCoordinate),b:Array.from(A.blocks),r:Array.from(A.blockRotations).flatMap(([Q,B])=>[Q,B.enumIndex])}}static serializeEntity(A){if(!A.world||A.id===void 0)l.fatalError("Serializer.serializeEntity(): Entity is not in a world");return{i:A.id,bt:A.blockTextureUri,bh:A.blockHalfExtents?this.serializeVector(A.blockHalfExtents):void 0,e:A.isEnvironmental,ec:A.emissiveColor?this.serializeRgbColor(A.emissiveColor):void 0,ei:A.emissiveIntensity,m:A.modelUri,ma:A.modelAnimations.map((Q)=>this.serializeEntityModelAnimation(Q)),mo:A.modelNodeOverrides.map((Q)=>this.serializeEntityModelNodeOverride(Q)),mt:A.modelTextureUri,n:A.name,o:A.opacity,ol:A.outline?this.serializeOutline(A.outline):void 0,p:this.serializeVector(A.position),pi:A.positionInterpolationMs,pe:A.parent?A.parent.id:void 0,pn:A.parentNodeName,r:this.serializeQuaternion(A.rotation),ri:A.rotationInterpolationMs,si:A.modelScaleInterpolationMs,sv:A.modelScale?this.serializeVector(A.modelScale):void 0,t:A.tintColor?this.serializeRgbColor(A.tintColor):void 0}}static serializeEntityModelAnimation(A){return{n:A.name,b:A.blendMode,c:A.clampWhenFinished,fi:A.fadesIn,fo:A.fadesOut,l:A.loopMode,p:A.isPlaying&&A.loopMode!==0,pr:A.playbackRate,w:A.weight}}static serializeEntityModelNodeOverride(A){return{n:A.nameMatch,ec:A.emissiveColor?this.serializeRgbColor(A.emissiveColor):void 0,ei:A.emissiveIntensity,h:A.isHidden,p:A.localPosition?this.serializeVector(A.localPosition):void 0,pi:A.localPositionInterpolationMs,r:A.localRotation?this.serializeQuaternion(A.localRotation):void 0,ri:A.localRotationInterpolationMs,s:A.localScale?this.serializeVector(A.localScale):void 0,si:A.localScaleInterpolationMs}}static serializeOutline(A){return{c:A.color?this.serializeRgbColor(A.color):void 0,ci:A.colorIntensity,th:A.thickness,o:A.opacity,oc:A.occluded}}static serializeParticleEmitter(A){if(!A.world||A.id===void 0)l.fatalError("Serializer.serializeParticleEmitter(): ParticleEmitter is not in a world");return{i:A.id,at:A.alphaTest,ce:A.colorEnd?this.serializeRgbColor(A.colorEnd):void 0,cev:A.colorEndVariance?this.serializeRgbColor(A.colorEndVariance):void 0,cs:A.colorStart?this.serializeRgbColor(A.colorStart):void 0,csv:A.colorStartVariance?this.serializeRgbColor(A.colorStartVariance):void 0,cie:A.colorIntensityEnd,ciev:A.colorIntensityEndVariance,cis:A.colorIntensityStart,cisv:A.colorIntensityStartVariance,e:A.attachedToEntity?.isSpawned?A.attachedToEntity.id:void 0,en:A.attachedToEntityNodeName,g:A.gravity?this.serializeVector(A.gravity):void 0,l:A.lifetime,le:A.lockToEmitter,lv:A.lifetimeVariance,mp:A.maxParticles,o:A.offset?this.serializeVector(A.offset):void 0,or:A.orientation?this.serializeParticleEmitterOrientation(A.orientation):void 0,ofr:A.orientationFixedRotation?this.serializeVector(A.orientationFixedRotation):void 0,oe:A.opacityEnd,oev:A.opacityEndVariance,os:A.opacityStart,osv:A.opacityStartVariance,p:A.position?this.serializeVector(A.position):void 0,pa:A.paused,pv:A.positionVariance?this.serializeVector(A.positionVariance):void 0,r:A.rate,rv:A.rateVariance,se:A.sizeEnd,sev:A.sizeEndVariance,ss:A.sizeStart,ssv:A.sizeStartVariance,t:A.transparent,tu:A.textureUri,v:A.velocity?this.serializeVector(A.velocity):void 0,vv:A.velocityVariance?this.serializeVector(A.velocityVariance):void 0}}static serializeParticleEmitterOrientation(A){switch(A){case"billboard":return 0;case"billboardY":return 1;case"fixed":return 2;case"velocity":return 3;default:return 0}}static serializePhysicsDebugRaycast(A){return{o:this.serializeVector(A.origin),d:this.serializeVector(A.direction),l:A.length,h:A.hit}}static serializePlayer(A){return{i:A.id,u:A.username,p:A.profilePictureUrl}}static serializePlayerCamera(A){return{cb:A.collidesWithBlocks,m:A.mode,e:A.attachedToEntity?.isSpawned?A.attachedToEntity.id:void 0,et:A.targetEntity?.isSpawned?A.targetEntity.id:void 0,fo:A.filmOffset,ffo:A.forwardOffset,fv:A.fov,h:Array.from(A.viewModelHiddenNodes),mp:A.viewModelPitchesWithCamera,my:A.viewModelYawsWithCamera,o:A.offset?this.serializeVector(A.offset):void 0,p:A.attachedToPosition?this.serializeVector(A.attachedToPosition):void 0,pt:A.targetPosition?this.serializeVector(A.targetPosition):void 0,s:Array.from(A.viewModelShownNodes),sa:A.shoulderAngle,z:A.zoom}}static serializeQuaternion(A){return[A.x,A.y,A.z,A.w]}static serializeRgbColor(A){return[A.r,A.g,A.b]}static serializeSceneUI(A){if(A.id===void 0)l.fatalError("Serializer.serializeSceneUI(): SceneUI is not loaded!");return{i:A.id,e:A.attachedToEntity?.isSpawned?A.attachedToEntity.id:void 0,o:A.offset?this.serializeVector(A.offset):void 0,p:A.position?this.serializeVector(A.position):void 0,s:A.state,t:A.templateId,v:A.viewDistance}}static serializeVector(A){return[A.x,A.y,A.z]}static serializeVectorBoolean(A){return[A.x,A.y,A.z]}static serializeWorld(A){return{i:A.id,ac:this.serializeRgbColor(A.ambientLightColor),ai:A.ambientLightIntensity,dc:this.serializeRgbColor(A.directionalLightColor),di:A.directionalLightIntensity,dp:this.serializeVector(A.directionalLightPosition),fc:A.fogColor?this.serializeRgbColor(A.fogColor):void 0,ff:A.fogFar,fn:A.fogNear,n:A.name,s:A.skyboxUri,si:A.skyboxIntensity,t:A.loop.timestepS}}}var PZA;((Y)=>{Y[Y.PLAYING=0]="PLAYING";Y[Y.PAUSED=1]="PAUSED";Y[Y.STOPPED=2]="STOPPED"})(PZA||={});var uf;((B)=>{B[B.ADDITIVE=0]="ADDITIVE";B[B.NORMAL=1]="NORMAL"})(uf||={});var JE;((Y)=>{Y[Y.ONCE=0]="ONCE";Y[Y.LOOP=1]="LOOP";Y[Y.PING_PONG=2]="PING_PONG"})(JE||={});var df;((U)=>{U.PAUSE="ENTITY_MODEL_ANIMATION.PAUSE";U.PLAY="ENTITY_MODEL_ANIMATION.PLAY";U.RESTART="ENTITY_MODEL_ANIMATION.RESTART";U.SET_BLEND_MODE="ENTITY_MODEL_ANIMATION.SET_BLEND_MODE";U.SET_CLAMP_WHEN_FINISHED="ENTITY_MODEL_ANIMATION.SET_CLAMP_WHEN_FINISHED";U.SET_FADES_IN="ENTITY_MODEL_ANIMATION.SET_FADES_IN";U.SET_FADES_OUT="ENTITY_MODEL_ANIMATION.SET_FADES_OUT";U.SET_LOOP_MODE="ENTITY_MODEL_ANIMATION.SET_LOOP_MODE";U.SET_PLAYBACK_RATE="ENTITY_MODEL_ANIMATION.SET_PLAYBACK_RATE";U.SET_WEIGHT="ENTITY_MODEL_ANIMATION.SET_WEIGHT";U.STOP="ENTITY_MODEL_ANIMATION.STOP"})(df||={});class CE{_name;_blendMode=1;_clampWhenFinished=!1;_entity;_fadesIn=!0;_fadesOut=!0;_loopMode=0;_state=2;_playbackRate=1;_weight=1;constructor(A){this._name=A.name,this._entity=A.entity,this._blendMode=A.blendMode??this._blendMode,this._clampWhenFinished=A.clampWhenFinished??this._clampWhenFinished,this._fadesIn=A.fadesIn??this._fadesIn,this._fadesOut=A.fadesOut??this._fadesOut,this._loopMode=A.loopMode??this._loopMode,this._state=A.play?0:this._state,this._playbackRate=A.playbackRate??this._playbackRate,this._weight=A.weight??this._weight}get name(){return this._name}get blendMode(){return this._blendMode}get clampWhenFinished(){return this._clampWhenFinished}get entity(){return this._entity}get fadesIn(){return this._fadesIn}get fadesOut(){return this._fadesOut}get isPlaying(){return this._state===0}get isPaused(){return this._state===1}get isStopped(){return this._state===2}get loopMode(){return this._loopMode}get playbackRate(){return this._playbackRate}get weight(){return this._weight}pause(){if(this._state===1)return;if(this._state=1,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.PAUSE",{entityModelAnimation:this})}play(){if(this._state===0)return;if(this._state=0,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.PLAY",{entityModelAnimation:this})}restart(){if(this._state=0,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.RESTART",{entityModelAnimation:this})}setBlendMode(A){if(this._blendMode===A)return;if(this._blendMode=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_BLEND_MODE",{entityModelAnimation:this,blendMode:A})}setClampWhenFinished(A){if(this._clampWhenFinished===A)return;if(this._clampWhenFinished=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_CLAMP_WHEN_FINISHED",{entityModelAnimation:this,clampWhenFinished:A})}setFadesIn(A){if(this._fadesIn===A)return;if(this._fadesIn=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_FADES_IN",{entityModelAnimation:this,fadesIn:A})}setFadesOut(A){if(this._fadesOut===A)return;if(this._fadesOut=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_FADES_OUT",{entityModelAnimation:this,fadesOut:A})}setLoopMode(A){if(this._loopMode===A)return;if(this._loopMode=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_LOOP_MODE",{entityModelAnimation:this,loopMode:A})}setPlaybackRate(A){if(this._playbackRate===A)return;if(this._playbackRate=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_PLAYBACK_RATE",{entityModelAnimation:this,playbackRate:A})}setWeight(A){if(this._weight===A)return;if(this._weight=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_WEIGHT",{entityModelAnimation:this,weight:A})}stop(){if(this._state===2)return;if(this._state=2,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.STOP",{entityModelAnimation:this})}serialize(){return GQ.serializeEntityModelAnimation(this)}}var cf;((F)=>{F.SET_EMISSIVE_COLOR="ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_COLOR";F.SET_EMISSIVE_INTENSITY="ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_INTENSITY";F.SET_HIDDEN="ENTITY_MODEL_NODE_OVERRIDE.SET_HIDDEN";F.SET_LOCAL_POSITION="ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION";F.SET_LOCAL_POSITION_INTERPOLATION_MS="ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION_INTERPOLATION_MS";F.SET_LOCAL_ROTATION="ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION";F.SET_LOCAL_ROTATION_INTERPOLATION_MS="ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION_INTERPOLATION_MS";F.SET_LOCAL_SCALE="ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE";F.SET_LOCAL_SCALE_INTERPOLATION_MS="ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE_INTERPOLATION_MS"})(cf||={});class XE{_nameMatch;_entity;_emissiveColor;_emissiveIntensity;_hidden=!1;_isRemoved=!1;_localPosition;_localPositionInterpolationMs;_localRotation;_localRotationInterpolationMs;_localScale;_localScaleInterpolationMs;constructor(A){this._nameMatch=A.nameMatch.toLowerCase(),this._entity=A.entity,this._emissiveColor=A.emissiveColor,this._emissiveIntensity=A.emissiveIntensity,this._hidden=A.hidden??this._hidden,this._localPosition=A.localPosition,this._localPositionInterpolationMs=A.localPositionInterpolationMs,this._localRotation=A.localRotation,this._localRotationInterpolationMs=A.localRotationInterpolationMs,this._localScale=typeof A.localScale==="number"?{x:A.localScale,y:A.localScale,z:A.localScale}:A.localScale,this._localScaleInterpolationMs=A.localScaleInterpolationMs}get nameMatch(){return this._nameMatch}get name(){return this._nameMatch}get entity(){return this._entity}get emissiveColor(){return this._emissiveColor}get emissiveIntensity(){return this._emissiveIntensity}get isHidden(){return this._hidden}get localPosition(){return this._localPosition}get localPositionInterpolationMs(){return this._localPositionInterpolationMs}get localRotation(){return this._localRotation}get localRotationInterpolationMs(){return this._localRotationInterpolationMs}get localScale(){return this._localScale}get localScaleInterpolationMs(){return this._localScaleInterpolationMs}remove(){this._entity.removeModelNodeOverride(this.nameMatch)}setEmissiveColor(A){if(this._isRemoved)return;if(!A&&!this._emissiveColor||A&&this._emissiveColor&&A.r===this._emissiveColor.r&&A.g===this._emissiveColor.g&&A.b===this._emissiveColor.b)return;if(this._emissiveColor=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_COLOR",{entityModelNodeOverride:this,emissiveColor:A})}setEmissiveIntensity(A){if(this._isRemoved)return;if(this._emissiveIntensity===A)return;if(this._emissiveIntensity=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_INTENSITY",{entityModelNodeOverride:this,emissiveIntensity:A})}setHidden(A){if(this._isRemoved)return;if(this._hidden===A)return;if(this._hidden=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_HIDDEN",{entityModelNodeOverride:this,hidden:A})}setLocalPosition(A){if(this._isRemoved)return;if(A===this._localPosition)return;if(A&&this._localPosition&&this._localPosition.x===A.x&&this._localPosition.y===A.y&&this._localPosition.z===A.z)return;if(this._localPosition=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION",{entityModelNodeOverride:this,localPosition:A})}setLocalPositionInterpolationMs(A){if(this._isRemoved)return;if(A===this._localPositionInterpolationMs)return;if(this._localPositionInterpolationMs=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION_INTERPOLATION_MS",{entityModelNodeOverride:this,interpolationMs:A})}setLocalRotation(A){if(this._isRemoved)return;if(A===this._localRotation)return;if(A&&this._localRotation&&this._localRotation.x===A.x&&this._localRotation.y===A.y&&this._localRotation.z===A.z&&this._localRotation.w===A.w)return;if(this._localRotation=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION",{entityModelNodeOverride:this,localRotation:A})}setLocalRotationInterpolationMs(A){if(this._isRemoved)return;if(A===this._localRotationInterpolationMs)return;if(this._localRotationInterpolationMs=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION_INTERPOLATION_MS",{entityModelNodeOverride:this,interpolationMs:A})}setLocalScale(A){if(this._isRemoved)return;if(A===this._localScale)return;if(typeof A==="number")A={x:A,y:A,z:A};if(A&&this._localScale&&this._localScale.x===A.x&&this._localScale.y===A.y&&this._localScale.z===A.z)return;if(this._localScale=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE",{entityModelNodeOverride:this,localScale:A})}setLocalScaleInterpolationMs(A){if(this._isRemoved)return;if(A===this._localScaleInterpolationMs)return;if(this._localScaleInterpolationMs=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE_INTERPOLATION_MS",{entityModelNodeOverride:this,interpolationMs:A})}serialize(){return GQ.serializeEntityModelNodeOverride(this)}markRemoved(){this._isRemoved=!0}}var TZA={type:"dynamic",softCcdPrediction:1},SZA=0.0016,kZA=Math.cos(0.026),XD;((q)=>{q.BLOCK_COLLISION="ENTITY.BLOCK_COLLISION";q.BLOCK_CONTACT_FORCE="ENTITY.BLOCK_CONTACT_FORCE";q.DESPAWN="ENTITY.DESPAWN";q.ENTITY_COLLISION="ENTITY.ENTITY_COLLISION";q.ENTITY_CONTACT_FORCE="ENTITY.ENTITY_CONTACT_FORCE";q.INTERACT="ENTITY.INTERACT";q.REMOVE_MODEL_NODE_OVERRIDE="ENTITY.REMOVE_MODEL_NODE_OVERRIDE";q.SET_BLOCK_TEXTURE_URI="ENTITY.SET_BLOCK_TEXTURE_URI";q.SET_EMISSIVE_COLOR="ENTITY.SET_EMISSIVE_COLOR";q.SET_EMISSIVE_INTENSITY="ENTITY.SET_EMISSIVE_INTENSITY";q.SET_MODEL_SCALE="ENTITY.SET_MODEL_SCALE";q.SET_MODEL_SCALE_INTERPOLATION_MS="ENTITY.SET_MODEL_SCALE_INTERPOLATION_MS";q.SET_MODEL_TEXTURE_URI="ENTITY.SET_MODEL_TEXTURE_URI";q.SET_OPACITY="ENTITY.SET_OPACITY";q.SET_OUTLINE="ENTITY.SET_OUTLINE";q.SET_PARENT="ENTITY.SET_PARENT";q.SET_POSITION_INTERPOLATION_MS="ENTITY.SET_POSITION_INTERPOLATION_MS";q.SET_ROTATION_INTERPOLATION_MS="ENTITY.SET_ROTATION_INTERPOLATION_MS";q.SET_TINT_COLOR="ENTITY.SET_TINT_COLOR";q.SPAWN="ENTITY.SPAWN";q.TICK="ENTITY.TICK";q.UPDATE_POSITION="ENTITY.UPDATE_POSITION";q.UPDATE_ROTATION="ENTITY.UPDATE_ROTATION"})(XD||={});class X0 extends y7{_id;_blockHalfExtents;_blockTextureUri;_controller;_isEnvironmental=!1;_modelAnimations=new Map;_modelNodeOverrides=new Map;_modelPreferredShape;_modelScale={x:1,y:1,z:1};_modelScaleInterpolationMs;_modelTextureUri;_modelUri;_name;_opacity;_outline;_parent;_parentNodeName;_positionInterpolationMs;_rotationInterpolationMs;_tag;_tintColor;_emissiveColor;_emissiveIntensity;_lastUpdatedPosition={x:0,y:0,z:0};_lastUpdatedRotation={x:0,y:0,z:0,w:1};_lastParentlessType="dynamic";_world;_positionUpdateThresholdSq;_rotationUpdateThreshold;constructor(A){let Q="blockTextureUri"in A,B="modelUri"in A;if(!Q===!B)l.fatalError("Entity.constructor(): Entity data must include a blockTextureUri or modelUri, but not both.");if(Q&&!A.blockHalfExtents)l.fatalError("Entity.constructor(): Block entity must have blockHalfExtents!");if(A.parent&&!A.parent.isSpawned)l.fatalError("Entity.constructor(): Parent entity must be spawned before child entity!");if(A.parent?.modelUri&&A.parentNodeName&&!yY.instance.modelHasNode(A.parent.modelUri,A.parentNodeName))l.fatalError(`Entity.constructor(): Parent node name ${A.parentNodeName} not found in parent model ${A.parent.modelUri}!`);super(A.rigidBodyOptions??TZA);if(Q)this._blockHalfExtents=A.blockHalfExtents,this._blockTextureUri=A.blockTextureUri;if(B){let Y=this._modelScale=typeof A.modelScale==="number"?{x:A.modelScale,y:A.modelScale,z:A.modelScale}:A.modelScale??{x:1,y:1,z:1};if(this._modelPreferredShape=A.modelPreferredShape,this._modelScale=Y,this._modelScaleInterpolationMs=A.modelScaleInterpolationMs,this._modelTextureUri=A.modelTextureUri,this._modelUri=A.modelUri,!this._modelUri.startsWith("http"))if(yY.instance.hasModel(this._modelUri))A.modelAnimations?.forEach((J)=>{this._modelAnimations.set(J.name,new CE({...J,entity:this}))});else l.error(`Entity.constructor(): Model ${this._modelUri} does not exist!`);A.modelNodeOverrides?.forEach((J)=>{this._modelNodeOverrides.set(J.nameMatch.toLowerCase(),new XE({...J,entity:this}))})}if(this._emissiveColor=A.emissiveColor,this._emissiveIntensity=A.emissiveIntensity,this._isEnvironmental=A.isEnvironmental??!1,this._name=A.name??"Nameless",this._opacity=A.opacity??1,this._outline=A.outline,this._parent=A.parent,this._parentNodeName=A.parentNodeName,this._positionInterpolationMs=A.positionInterpolationMs,this._rotationInterpolationMs=A.rotationInterpolationMs,this._tag=A.tag,this._tintColor=A.tintColor,this._positionUpdateThresholdSq=SZA,this._rotationUpdateThreshold=kZA,A.controller)this._controller=A.controller,this._controller.attach(this)}get id(){return this._id}get availableModelAnimationNames(){return this.isModelEntity?yY.instance.getAnimationNames(this._modelUri):[]}get availableModelNodeNames(){return this.isModelEntity?yY.instance.getNodeNames(this._modelUri):[]}get blockHalfExtents(){return this._blockHalfExtents}get blockTextureUri(){return this._blockTextureUri}get controller(){return this._controller}get emissiveColor(){return this._emissiveColor}get emissiveIntensity(){return this._emissiveIntensity}get depth(){return this.isModelEntity?yY.instance.getDepth(this._modelUri)*this._modelScale.z:this._blockHalfExtents.z*2}get height(){return this.isModelEntity?yY.instance.getHeight(this._modelUri)*this._modelScale.y:this._blockHalfExtents.y*2}get modelAnimations(){return Array.from(this._modelAnimations.values())}get modelNodeOverrides(){return Array.from(this._modelNodeOverrides.values())}get modelPreferredShape(){return this._modelPreferredShape}get modelScale(){return this._modelScale}get modelScaleInterpolationMs(){return this._modelScaleInterpolationMs}get modelTextureUri(){return this._modelTextureUri}get modelUri(){return this._modelUri}get name(){return this._name}get opacity(){return this._opacity}get outline(){return this._outline}get parent(){return this._parent}get parentNodeName(){return this._parentNodeName}get positionInterpolationMs(){return this._positionInterpolationMs}get rotationInterpolationMs(){return this._rotationInterpolationMs}get tag(){return this._tag}get tintColor(){return this._tintColor}get isBlockEntity(){return!!this._blockTextureUri}get isEnvironmental(){return this._isEnvironmental}get isModelEntity(){return!!this._modelUri}get isSpawned(){return!!this._world}get width(){return this.isModelEntity?yY.instance.getWidth(this._modelUri)*this._modelScale.x:this._blockHalfExtents.x*2}get world(){return this._world}clearModelNodeOverrides(){if(!this.isModelEntity)return;this.removeModelNodeOverrides(Array.from(this._modelNodeOverrides.keys()))}despawn(){if(!this._requireSpawned("despawn"))return;if(this._world.entityManager.getEntityChildren(this).forEach((A)=>{A.despawn()}),this._controller)this._controller.detach(this),this._controller.despawn(this);if(this.emitWithWorld(this._world,"ENTITY.DESPAWN",{entity:this}),this.isSimulated)this.removeFromSimulation();this._world.entityManager.unregisterEntity(this),this._world.audioManager.unregisterEntityAttachedAudios(this),this._world.particleEmitterManager.despawnEntityAttachedParticleEmitters(this),this._world.sceneUIManager.unloadEntityAttachedSceneUIs(this),this._id=void 0,this._world=void 0}getModelAnimation(A){if(!this.isModelEntity)return;let Q=this._modelAnimations.get(A);if(!Q)Q=new CE({name:A,entity:this}),this._modelAnimations.set(A,Q);return Q}getModelNodeOverride(A){if(!this.isModelEntity)return;A=A.toLowerCase();let Q=this._modelNodeOverrides.get(A);if(!Q)Q=new XE({nameMatch:A,entity:this}),this._modelNodeOverrides.set(A,Q);return Q}interact(A,Q){if(!this._requireSpawned("interact"))return;this.emitWithWorld(this._world,"ENTITY.INTERACT",{entity:this,player:A,raycastHit:Q})}setBlockTextureUri(A){if(this._blockTextureUri===A)return;if(this._blockTextureUri=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_BLOCK_TEXTURE_URI",{entity:this,blockTextureUri:A})}removeModelNodeOverride(A){if(!this.isModelEntity)return;A=A.toLowerCase();let Q=this._modelNodeOverrides.get(A);if(!Q)return;if(Q.markRemoved(),this._modelNodeOverrides.delete(A),this.isSpawned)this.emitWithWorld(this._world,"ENTITY.REMOVE_MODEL_NODE_OVERRIDE",{entity:this,entityModelNodeOverride:Q})}removeModelNodeOverrides(A){if(!this.isModelEntity)return;for(let Q of A)this.removeModelNodeOverride(Q)}setEmissiveColor(A){if(!A&&!this._emissiveColor||A&&this._emissiveColor&&A.r===this._emissiveColor.r&&A.g===this._emissiveColor.g&&A.b===this._emissiveColor.b)return;if(this._emissiveColor=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_EMISSIVE_COLOR",{entity:this,emissiveColor:A})}setEmissiveIntensity(A){if(this._emissiveIntensity===A)return;if(this._emissiveIntensity=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_EMISSIVE_INTENSITY",{entity:this,emissiveIntensity:A})}setModelScale(A){if(!this.isModelEntity)return;if(typeof A==="number")A={x:A,y:A,z:A};if(this._modelScale===A)return;let Q={x:A.x/this._modelScale.x,y:A.y/this._modelScale.y,z:A.z/this._modelScale.z};if(this._modelScale=A,this.colliders.forEach((B)=>B.setScale(Q)),this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_MODEL_SCALE",{entity:this,modelScale:A})}setModelScaleInterpolationMs(A){if(!this.isModelEntity)return;if(this._modelScaleInterpolationMs===A)return;if(this._modelScaleInterpolationMs=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_MODEL_SCALE_INTERPOLATION_MS",{entity:this,interpolationMs:A})}setModelTextureUri(A){if(!this.isModelEntity||this._modelTextureUri===A)return;if(this._modelTextureUri=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_MODEL_TEXTURE_URI",{entity:this,modelTextureUri:A})}setOpacity(A){if(this._opacity===A)return;if(this._opacity=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_OPACITY",{entity:this,opacity:A})}setOutline(A,Q){if(this._outline=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_OUTLINE",{entity:this,forPlayer:Q,outline:A})}setParent(A,Q,B,Y){if(A&&!A.isSpawned)return l.error("Entity.setParent(): Parent entity is not spawned, cannot set parent!");if(!this._parent&&A)this._lastParentlessType=this.type;if(this._parent=A,this._parentNodeName=Q,!this.isSpawned)return;if(this.colliders.forEach((J)=>J.setEnabled(!A)),this.setType(!A?this._lastParentlessType:"kinematic_velocity"),this.setPosition(B??{x:0,y:0,z:0}),this.setRotation(Y??{x:0,y:0,z:0,w:1}),!this.isKinematicPositionBased)this.resetAngularVelocity(),this.resetForces(),this.resetLinearVelocity(),this.resetTorques();this.emitWithWorld(this._world,"ENTITY.SET_PARENT",{entity:this,parent:A,parentNodeName:Q})}setPositionInterpolationMs(A){if(this._positionInterpolationMs===A)return;if(this._positionInterpolationMs=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_POSITION_INTERPOLATION_MS",{entity:this,interpolationMs:A})}setRotationInterpolationMs(A){if(this._rotationInterpolationMs===A)return;if(this._rotationInterpolationMs=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_ROTATION_INTERPOLATION_MS",{entity:this,interpolationMs:A})}setTintColor(A){if(!A&&!this._tintColor||A&&this._tintColor&&A.r===this._tintColor.r&&A.g===this._tintColor.g&&A.b===this._tintColor.b)return;if(this._tintColor=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_TINT_COLOR",{entity:this,tintColor:A})}spawn(A,Q,B){if(this.isSpawned)return l.error(`Entity.spawn(): Entity ${this._name} is already spawned with id ${this._id}!`);if(!this.isSimulated)this.addToSimulation(A.simulation);if(this._blockTextureUri&&this._blockHalfExtents&&this.numColliders===0)this.addChildColliderToSimulation(new h9(h9.optionsFromBlockHalfExtents(this._blockHalfExtents)));if(this._modelUri&&this.numColliders===0&&this._modelPreferredShape!=="none")this.addChildColliderToSimulation(new h9(h9.optionsFromModelUri(this._modelUri,this._modelScale,this._modelPreferredShape)));if(this.colliders.forEach((Y)=>{if(this.hasListeners("ENTITY.BLOCK_COLLISION")||this.hasListeners("ENTITY.ENTITY_COLLISION"))Y.enableCollisionEvents(!0);if(this.hasListeners("ENTITY.BLOCK_CONTACT_FORCE")||this.hasListeners("ENTITY.ENTITY_CONTACT_FORCE"))Y.enableContactForceEvents(!0);if(LC.isDefaultCollisionGroups(Y.collisionGroups)){let J=this.isEnvironmental?[8]:[Y.isSensor?4:2],C=this.isEnvironmental?[65535&~8&~1]:[65535];Y.setCollisionGroups({belongsTo:J,collidesWith:C})}}),this.setPosition(Q),B)this.setRotation(B);if(this._id=A.entityManager.registerEntity(this),this._world=A,this._controller)this._controller.spawn(this);if(this._parent)this.setParent(this._parent,this._parentNodeName,Q,B);this.colliders.forEach((Y)=>{A.simulation.colliderMap.setColliderEntity(Y,this)}),this.emitWithWorld(A,"ENTITY.SPAWN",{entity:this})}stopAllModelAnimations(A){for(let Q of this._modelAnimations.values()){if(A?.(Q))continue;Q.stop()}}stopModelAnimations(A){for(let Q of A){let B=this._modelAnimations.get(Q);if(!B)continue;B.stop()}}checkAndEmitUpdates(){if(!this._requireSpawned("checkAndEmitUpdates"))return;let A=this.position,Q=this.rotation;if(this._rotationExceedsThreshold(Q,this._lastUpdatedRotation))this._lastUpdatedRotation=Q,this.emitWithWorld(this._world,"ENTITY.UPDATE_ROTATION",{entity:this,rotation:Q});if(this._positionExceedsThreshold(A,this._lastUpdatedPosition))this._lastUpdatedPosition=A,this.emitWithWorld(this._world,"ENTITY.UPDATE_POSITION",{entity:this,position:A})}serialize(){return GQ.serializeEntity(this)}tick(A){if(this.emit("ENTITY.TICK",{entity:this,tickDeltaMs:A}),this._controller)this._controller.tick(this,A)}_positionExceedsThreshold(A,Q){let B=A.x-Q.x,Y=A.y-Q.y,J=A.z-Q.z;return B*B+Y*Y+J*J>this._positionUpdateThresholdSq}_requireSpawned(A){if(!this.isSpawned)l.error(`Entity._requireSpawned(): Entity ${this._name} is not spawned, cannot invoke ${A}()!`);return this.isSpawned}_rotationExceedsThreshold(A,Q){return Math.abs(A.x*Q.x+A.y*Q.y+A.z*Q.z+A.w*Q.w){X.ATTACH="BASE_ENTITY_CONTROLLER.ATTACH";X.DESPAWN="BASE_ENTITY_CONTROLLER.DESPAWN";X.DETACH="BASE_ENTITY_CONTROLLER.DETACH";X.SPAWN="BASE_ENTITY_CONTROLLER.SPAWN";X.TICK="BASE_ENTITY_CONTROLLER.TICK";X.TICK_WITH_PLAYER_INPUT="BASE_ENTITY_CONTROLLER.TICK_WITH_PLAYER_INPUT"})(_ZA||={});class $Z extends BQ{attach(A){this.emit("BASE_ENTITY_CONTROLLER.ATTACH",{entity:A})}despawn(A){this.emit("BASE_ENTITY_CONTROLLER.DESPAWN",{entity:A})}detach(A){this.emit("BASE_ENTITY_CONTROLLER.DETACH",{entity:A})}spawn(A){this.emit("BASE_ENTITY_CONTROLLER.SPAWN",{entity:A})}tickWithPlayerInput(A,Q,B,Y){this.emit("BASE_ENTITY_CONTROLLER.TICK_WITH_PLAYER_INPUT",{entity:A,input:Q,cameraOrientation:B,deltaTimeMs:Y})}tick(A,Q){this.emit("BASE_ENTITY_CONTROLLER.TICK",{entity:A,deltaTimeMs:Q})}}var vZA=0.099856;class UZ extends $Z{faceSpeed=0;idleLoopedAnimations=[];idleLoopedAnimationsSpeed;jumpOneshotAnimations=[];moveLoopedAnimations=[];moveLoopedAnimationsSpeed;moveSpeed=0;_faceTarget;_jumpHeight=0;_moveCompletesWhenStuck=!1;_moveIgnoreAxes={};_moveStartMoveAnimations=!1;_moveStartIdleAnimationsOnCompletion=!0;_moveStoppingDistanceSquared=vZA;_moveStuckAccumulatorMs=0;_moveStuckLastPosition;_moveTarget;_onFace;_onFaceComplete;_onMove;_onMoveComplete;_stopFaceRequested=!1;_stopMoveRequested=!1;constructor(A={}){super();this.idleLoopedAnimations=A.idleLoopedAnimations??this.idleLoopedAnimations,this.idleLoopedAnimationsSpeed=A.idleLoopedAnimationsSpeed??this.idleLoopedAnimationsSpeed,this.jumpOneshotAnimations=A.jumpOneshotAnimations??this.jumpOneshotAnimations,this.moveLoopedAnimations=A.moveLoopedAnimations??this.moveLoopedAnimations,this.moveLoopedAnimationsSpeed=A.moveLoopedAnimationsSpeed??this.moveLoopedAnimationsSpeed}spawn(A){super.spawn(A),this._startIdleAnimations(A)}face(A,Q,B){this._faceTarget=A,this.faceSpeed=Q,this._onFace=B?.faceCallback,this._onFaceComplete=B?.faceCompleteCallback}jump(A){this._jumpHeight=A}move(A,Q,B){this.moveSpeed=Q,this._moveCompletesWhenStuck=B?.moveCompletesWhenStuck??!1,this._moveIgnoreAxes=B?.moveIgnoreAxes??{},this._moveStartIdleAnimationsOnCompletion=B?.moveStartIdleAnimationsOnCompletion??!0,this._moveStartMoveAnimations=!0,this._moveStoppingDistanceSquared=B?.moveStoppingDistance?B.moveStoppingDistance**2:vZA,this._moveTarget=A,this._onMove=B?.moveCallback,this._onMoveComplete=B?.moveCompleteCallback,this._moveStuckAccumulatorMs=0,this._moveStuckLastPosition=void 0}stopFace(){this._stopFaceRequested=!0}stopMove(){this._stopMoveRequested=!0}tick(A,Q){if(super.tick(A,Q),!this._moveTarget&&!this._faceTarget&&!this._jumpHeight)return;if(this._moveStartMoveAnimations)this._startMoveAnimations(A),this._moveStartMoveAnimations=!1;let B=Q/1000,Y=A.position;if(A.isDynamic&&this._jumpHeight>0){let J=Math.abs(A.world.simulation.gravity.y),C=Math.sqrt(2*J*this._jumpHeight);A.applyImpulse({x:0,y:C*A.mass,z:0}),this._jumpHeight=0,this._startJumpAnimations(A)}if(this._moveTarget){let J={x:this._moveIgnoreAxes.x?0:this._moveTarget.x-Y.x,y:this._moveIgnoreAxes.y?0:this._moveTarget.y-Y.y,z:this._moveIgnoreAxes.z?0:this._moveTarget.z-Y.z},C=J.x*J.x+J.y*J.y+J.z*J.z,X=!1;if(this._moveCompletesWhenStuck){if(this._moveStuckAccumulatorMs+=Q,this._moveStuckAccumulatorMs>=500){if(this._moveStuckLastPosition){let G=Y.x-this._moveStuckLastPosition.x,W=Y.y-this._moveStuckLastPosition.y,F=Y.z-this._moveStuckLastPosition.z;X=Math.sqrt(G*G+W*W+F*F)this._moveStoppingDistanceSquared&&!this._stopMoveRequested&&!X){let G=Math.sqrt(C),W=this.moveSpeed*B,Z=Math.min(G,W)/G,U={x:Y.x+J.x*Z,y:Y.y+J.y*Z,z:Y.z+J.z*Z};if(A.setPosition(U),this._onMove)this._onMove(U,this._moveTarget)}else{if(this._moveStuckAccumulatorMs=0,this._moveStuckLastPosition=void 0,this._moveTarget=void 0,this._stopMoveRequested=!1,this._moveStartIdleAnimationsOnCompletion)this._startIdleAnimations(A);if(this._onMoveComplete){let G=this._onMoveComplete;this._onMove=void 0,this._onMoveComplete=void 0,G(Y)}}}if(this._faceTarget){let J={x:this._faceTarget.x-Y.x,z:this._faceTarget.z-Y.z},C=Math.atan2(-J.x,-J.z),X=A.rotation,G=Math.atan2(2*(X.w*X.y),1-2*(X.y*X.y)),W=C-G;while(W>Math.PI)W-=2*Math.PI;while(W<-Math.PI)W+=2*Math.PI;if(Math.abs(W)>0.01&&!this._stopFaceRequested){let F=this.faceSpeed*B,Z=Math.abs(W){if(this._behavior)this._behavior.tick(this,this._world,J)})}get isSpawned(){return this._spawned}get world(){return this._world}get controller(){return this.entity.controller}setBehavior(A){this._behavior=A}spawn(A){if(this._spawned)return;let Q=A??{x:0,y:10,z:0};this.entity.spawn(this._world,Q),this._spawned=!0}teleport(A){if(!this._spawned)return;this.entity.setPosition(A)}despawn(){if(!this._spawned)return;this.entity.despawn(),this._spawned=!1}}class G9{static _instance;static get instance(){if(!G9._instance)G9._instance=new G9;return G9._instance}_bots=new Map;get botCount(){return this._bots.size}spawnBot(A,Q){let B=new GD(A,Q);return B.spawn(Q?.spawnPosition),this._bots.set(B.id,B),B}spawnBots(A,Q,B){let Y=[];for(let J=0;J=this._changeIntervalMs)this._elapsed=0,this._pickNewTarget(A)}_pickNewTarget(A){let Q=Math.random()*Math.PI*2,B=Math.random()*this._moveRadius,Y=this._originX+Math.cos(Q)*B,J=this._originZ+Math.sin(Q)*B,C=A.entity.position;A.controller.move({x:Y,y:C.y,z:J},this._moveSpeed),A.controller.face({x:Y,y:C.y,z:J},5)}}class FD{name="chase";_chaseSpeed;_detectionRadius;_updateIntervalMs;_elapsed=0;constructor(A){this._chaseSpeed=A?.chaseSpeed??5,this._detectionRadius=A?.detectionRadius??50,this._updateIntervalMs=A?.updateIntervalMs??500}tick(A,Q,B){if(!A.isSpawned)return;if(this._elapsed+=B,this._elapsed=3000)this._moveElapsed=0,this._moveToRandom(A);if(this._elapsed+=B,this._elapsed{Y.post("Profiler.enable",()=>{Y.post("Profiler.start",()=>{setTimeout(()=>{Y.post("Profiler.stop",(X,{profile:G})=>{if(Y.post("Profiler.disable"),Y.disconnect(),X){C(X);return}if(Q)yZA(Q,JSON.stringify(G));J(G)})},A)})})})}static async captureHeapSnapshot(A){let Q=await gZA();if(!Q)return console.warn("CpuProfiler: node:inspector not available in this runtime"),"";let B=new Q.Session;B.connect();let Y="";return B.on("HeapProfiler.addHeapSnapshotChunk",(J)=>{let C=J.params?.chunk;if(typeof C==="string")Y+=C}),new Promise((J,C)=>{B.post("HeapProfiler.takeHeapSnapshot",void 0,(X)=>{if(B.disconnect(),X){C(X);return}if(A)yZA(A,Y);J(Y)})})}}var hZA=5,pf;((U)=>{U.PAUSE="AUDIO.PAUSE";U.PLAY="AUDIO.PLAY";U.PLAY_RESTART="AUDIO.PLAY_RESTART";U.SET_ATTACHED_TO_ENTITY="AUDIO.SET_ATTACHED_TO_ENTITY";U.SET_CUTOFF_DISTANCE="AUDIO.SET_CUTOFF_DISTANCE";U.SET_DETUNE="AUDIO.SET_DETUNE";U.SET_DISTORTION="AUDIO.SET_DISTORTION";U.SET_POSITION="AUDIO.SET_POSITION";U.SET_PLAYBACK_RATE="AUDIO.SET_PLAYBACK_RATE";U.SET_REFERENCE_DISTANCE="AUDIO.SET_REFERENCE_DISTANCE";U.SET_VOLUME="AUDIO.SET_VOLUME"})(pf||={});class $D extends BQ{_id;_attachedToEntity;_cutoffDistance;_duration;_detune;_distortion;_loop;_offset;_position;_playbackRate;_playing;_referenceDistance;_startTick;_uri;_volume;_world;constructor(A){super();this._attachedToEntity=A.attachedToEntity,this._cutoffDistance=A.cutoffDistance??(this.isPositional?(A.referenceDistance??hZA)+10:0),this._duration=A.duration,this._detune=A.detune??0,this._distortion=A.distortion??0,this._loop=A.loop??!1,this._offset=A.offset??0,this._position=A.position,this._playing=!1,this._playbackRate=A.playbackRate??1,this._referenceDistance=A.referenceDistance??(this.isPositional?hZA:0),this._uri=A.uri,this._volume=A.volume??0.5}get id(){return this._id}get attachedToEntity(){return this._attachedToEntity}get cutoffDistance(){return this._cutoffDistance}get duration(){return this._duration}get detune(){return this._detune}get distortion(){return this._distortion}get loop(){return this._loop}get offset(){return this._offset}get isLoaded(){return this._id!==void 0}get isPlaying(){return this._playing}get isPositional(){return this._attachedToEntity!==void 0||this._position!==void 0}get position(){return this._position}get playbackRate(){return this._playbackRate}get referenceDistance(){return this._referenceDistance}get startTick(){return this._startTick}get uri(){return this._uri}get volume(){return this._volume}get world(){return this._world}play(A,Q=!1){if(this.isPlaying&&!Q)return;if(this._attachedToEntity&&!this._attachedToEntity.isSpawned)return l.error(`Audio.play(): Attached entity ${this._attachedToEntity.id} is not spawned!`);let B=Q&&this._id!==void 0?"AUDIO.PLAY_RESTART":"AUDIO.PLAY";this._id??=A.audioManager.registerAudio(this),this._playing=!0,this._startTick=A.loop.currentTick,this._world=this._world??A,this.emitWithWorld(A,B,{audio:this})}pause(){if(!this.isPlaying||!this._world)return;this._playing=!1,this.emitWithWorld(this._world,"AUDIO.PAUSE",{audio:this})}setAttachedToEntity(A){if(!this._requirePositional())return;if(!A.isSpawned)return l.error(`Audio.setAttachedToEntity(): Entity ${A.id} is not spawned!`);if(this._attachedToEntity===A)return;if(this._attachedToEntity=A,this._position=void 0,this.isLoaded&&this._world)this.emitWithWorld(this._world,"AUDIO.SET_ATTACHED_TO_ENTITY",{audio:this,entity:A})}setCutoffDistance(A){if(!this._requirePositional())return;if(A<=0||A1)return l.error("Volume must be between 0 and 1");if(this._volume===A)return;if(this._volume=A,this.isLoaded&&this._world)this.emitWithWorld(this._world,"AUDIO.SET_VOLUME",{audio:this,volume:A})}serialize(){return GQ.serializeAudio(this)}_requirePositional(){if(!this.isPositional)l.error("Audio._requirePositional(): Audio is not positional. and therefor does not support the invoked method.");return this.isPositional}}class UD{_audios=new Map;_nextAudioId=1;_world;constructor(A){this._world=A}get world(){return this._world}getAllAudios(){return Array.from(this._audios.values())}getAllEntityAttachedAudios(A){return this.getAllAudios().filter((Q)=>Q.attachedToEntity===A)}getAllLoopedAudios(){return this.getAllAudios().filter((A)=>A.loop)}getAllOneshotAudios(){return this.getAllAudios().filter((A)=>!A.loop)}registerAudio(A){if(A.id!==void 0)l.fatalError(`AudioManager.registerAudio(): Provided audio instance with uri ${A.uri} is already assigned the id ${A.id}!`);let Q=this._nextAudioId;return this._audios.set(Q,A),this._nextAudioId++,Q}unregisterAudio(A){if(A.id===void 0)return l.error(`AudioManager.unregisterAudio(): Provided audio instance with uri ${A.uri} is not assigned an id!`);A.pause(),this._audios.delete(A.id)}unregisterEntityAttachedAudios(A){this.getAllEntityAttachedAudios(A).forEach((Q)=>{this.unregisterAudio(Q)})}}var w8={Y_0:{enumIndex:0,matrix:[1,0,0,0,1,0,0,0,1]},Y_90:{enumIndex:1,matrix:[0,0,-1,0,1,0,1,0,0]},Y_180:{enumIndex:2,matrix:[-1,0,0,0,1,0,0,0,-1]},Y_270:{enumIndex:3,matrix:[0,0,1,0,1,0,-1,0,0]},NY_0:{enumIndex:4,matrix:[-1,0,0,0,-1,0,0,0,1]},NY_90:{enumIndex:5,matrix:[0,0,-1,0,-1,0,-1,0,0]},NY_180:{enumIndex:6,matrix:[1,0,0,0,-1,0,0,0,-1]},NY_270:{enumIndex:7,matrix:[0,0,1,0,-1,0,1,0,0]},X_0:{enumIndex:8,matrix:[0,-1,0,1,0,0,0,0,1]},X_90:{enumIndex:9,matrix:[0,0,-1,1,0,0,0,-1,0]},X_180:{enumIndex:10,matrix:[0,1,0,1,0,0,0,0,-1]},X_270:{enumIndex:11,matrix:[0,0,1,1,0,0,0,1,0]},NX_0:{enumIndex:12,matrix:[0,1,0,-1,0,0,0,0,1]},NX_90:{enumIndex:13,matrix:[0,0,-1,-1,0,0,0,1,0]},NX_180:{enumIndex:14,matrix:[0,-1,0,-1,0,0,0,0,-1]},NX_270:{enumIndex:15,matrix:[0,0,1,-1,0,0,0,-1,0]},Z_0:{enumIndex:16,matrix:[1,0,0,0,0,1,0,-1,0]},Z_90:{enumIndex:17,matrix:[0,1,0,0,0,1,1,0,0]},Z_180:{enumIndex:18,matrix:[-1,0,0,0,0,1,0,1,0]},Z_270:{enumIndex:19,matrix:[0,-1,0,0,0,1,-1,0,0]},NZ_0:{enumIndex:20,matrix:[1,0,0,0,0,-1,0,1,0]},NZ_90:{enumIndex:21,matrix:[0,-1,0,0,0,-1,1,0,0]},NZ_180:{enumIndex:22,matrix:[-1,0,0,0,0,-1,0,-1,0]},NZ_270:{enumIndex:23,matrix:[0,1,0,0,0,-1,-1,0,0]}};class WE{globalCoordinate;blockType;constructor(A,Q){this.globalCoordinate=A,this.blockType=Q}static fromGlobalCoordinate(A,Q){return new WE(A,Q)}getNeighborGlobalCoordinateFromHitPoint(A){let Q={x:A.x-(this.globalCoordinate.x+0.5),y:A.y-(this.globalCoordinate.y+0.5),z:A.z-(this.globalCoordinate.z+0.5)},B="x",Y=Math.abs(Q.x);for(let[J,C]of Object.entries(Q))if(Math.abs(C)>Y)B=J,Y=Math.abs(C);return{x:this.globalCoordinate.x+(B==="x"?Math.sign(Q.x):0),y:this.globalCoordinate.y+(B==="y"?Math.sign(Q.y):0),z:this.globalCoordinate.z+(B==="z"?Math.sign(Q.z):0)}}}import _JB from"crypto";import g7 from"fs";import j8 from"path";var U0={ATLAS_DIR:".atlas",ATLAS_PNG_FILE:"atlas.png",ATLAS_KTX2_FILE:"atlas.ktx2",ATLAS_MANIFEST_FILE:"atlas.json",TEXTURE_SIZE:24,TEXTURE_PADDING:20,ALPHA_TEST_THRESHOLD:0.05,DATA_SCHEMA_VERSION:1,DIRECTORIES:[PY.assetsLibraryPath&&j8.join(PY.assetsLibraryPath,"blocks"),j8.resolve(process.cwd(),"assets","blocks")].filter(Boolean)};class h7{static instance=new h7;generate=process.env.NODE_ENV!=="production";_textureUriMetadata=new Map;constructor(){}hasBlockTexture(A){return this._textureUriMetadata.has(A)||["+x","-x","+y","-y","+z","-z"].every((Q)=>this._textureUriMetadata.has(`${A}/${Q}.png`))}getBlockTextureMetadata(A){let Q=this._textureUriMetadata.get(A);if(Q)return[Q];let B=["+x","-x","+y","-y","+z","-z"].map((Y)=>this._textureUriMetadata.get(`${A}/${Y}.png`)).filter(Boolean);return B.length===6?B:void 0}async preloadAtlas(){let A=await this._getAbsoluteTexturePaths(),Q=j8.resolve(process.cwd(),"assets/blocks",U0.ATLAS_DIR);if(this._loadCachedAtlasManifest(A,Q))return console.info(`BlockTextureRegistry.preloadAtlas(): Using cached atlas for ${A.length} block textures`);if(!this.generate)l.fatalError("BlockTextureRegistry.preloadAtlas(): No cached atlas found in production. Run development server to generate atlas.");console.info(`BlockTextureRegistry.preloadAtlas(): Generating atlas for ${A.length} block textures...`);let B=await Promise.all(A.map(async(U)=>{let $=await YE.read(U),E=this._absoluteTexturePathToTextureUri(U);if($.width!==U0.TEXTURE_SIZE||$.height!==U0.TEXTURE_SIZE)$.resize({w:U0.TEXTURE_SIZE,h:U0.TEXTURE_SIZE});return{textureUri:E,image:$,metadata:this._analyzeTexture($.bitmap)}})),Y=U0.TEXTURE_SIZE+U0.TEXTURE_PADDING*2,{cols:J,rows:C}=this._calculateGridLayout(B.length),X=J*Y,G=C*Y,W=new YE({width:X,height:G,color:0});for(let U=0;U{let U=(W*C+G)*4,$=(Z*C+F)*4;J[$]=J[U],J[$+1]=J[U+1],J[$+2]=J[U+2],J[$+3]=J[U+3]};for(let G=0;G=B+Q||W=B+Q){let F=Math.max(B,Math.min(B+Q-1,W)),Z=Math.max(B,Math.min(B+Q-1,G));X(F,Z,W,G)}return Y}_analyzeTexture(A){let{width:Q,height:B,data:Y}=A,J=Q*B,C=[0,0,0],X=255*U0.ALPHA_TEST_THRESHOLD,G=!1,W=!1,F=0;for(let Z=0;Z=X,W||=UZ/J/255),isTransparent:G,needsAlphaTest:W,transparencyRatio:F/J}}_calculateGridLayout(A){let Q=(C)=>2**Math.ceil(Math.log2(C)),B=Math.ceil(Math.sqrt(A)),Y=Q(B),J=Q(Math.ceil(A/Y));return{cols:Y,rows:J}}async _getAbsoluteTexturePaths(){let A=new Map;for(let B of U0.DIRECTORIES){if(!g7.existsSync(B))continue;let Y=await c4("**/*.png",{cwd:B,follow:!0});for(let J of Y){let C=j8.join(B,J),X=this._absoluteTexturePathToTextureUri(C);A.set(X,C)}}return Array.from(A.keys()).sort().map((B)=>A.get(B))}}var nf;((Y)=>{Y.ENTITY_COLLISION="BLOCK_TYPE.ENTITY_COLLISION";Y.ENTITY_CONTACT_FORCE="BLOCK_TYPE.ENTITY_CONTACT_FORCE";Y.INTERACT="BLOCK_TYPE.INTERACT"})(nf||={});class O8 extends BQ{_id;_customColliderOptions;_isLiquid;_lightLevel;_name;_textureUri;constructor(A={id:-1,textureUri:"textures/missing.png",name:"Unknown"}){if(A.id<0)l.fatalError("BlockType.constructor(): BlockType id not set.");if(!h7.instance.hasBlockTexture(A.textureUri))l.fatalError(`BlockType.constructor(): Block texture ${A.textureUri} not found. If it is a cubemap texture, make sure every face is present in the folder (+x.png, -x.png, +y.png, -y.png, +z.png, -z.png).`);super();this._id=A.id,this._customColliderOptions=A.customColliderOptions,this._isLiquid=A.isLiquid??!1,this._name=A.name,this._textureUri=A.textureUri,this._lightLevel=Math.min(A.lightLevel??0,15)}get id(){return this._id}get colliderOptions(){return this._customColliderOptions??{shape:"voxels"}}get isLiquid(){return this._isLiquid}get isMeshable(){return!this._customColliderOptions}get isTrimesh(){return this.colliderOptions.shape==="trimesh"}get isVoxel(){return this.colliderOptions.shape==="voxels"}get lightLevel(){return this._lightLevel}get name(){return this._name}get textureUri(){return this._textureUri}createCollider(A){let Q=this.colliderOptions.shape==="voxels"?new h9({...this.colliderOptions,coordinates:A.map((B)=>B.globalCoordinate),size:{x:1,y:1,z:1}}):new h9({...this.colliderOptions,...this._buildTrimeshFromBlockPlacements(A)});if(this.isLiquid)Q.setSensor(!0);if(this.hasListeners("BLOCK_TYPE.ENTITY_COLLISION")||this.isLiquid)Q.enableCollisionEvents(!0);if(this.hasListeners("BLOCK_TYPE.ENTITY_CONTACT_FORCE"))Q.enableContactForceEvents(!0);if(LC.isDefaultCollisionGroups(Q.collisionGroups))Q.setCollisionGroups({belongsTo:[1],collidesWith:[65535&~1]});return Q}interact(A,Q){if(!A.world)return;this.emitWithWorld(A.world,"BLOCK_TYPE.INTERACT",{blockType:this,player:A,raycastHit:Q})}serialize(){return GQ.serializeBlockType(this)}_buildTrimeshFromBlockPlacements(A){let Q=this.colliderOptions,B=Q.vertices,Y=Q.indices;if(!B||!Y)l.fatalError(`BlockType._buildTrimeshFromCoordinates(): Block type id ${this.id} (${this.name}) is a trimesh but is missing vertices or indices!`);if(B.length%3!==0||Y.length%3!==0)l.fatalError(`BlockType._buildTrimeshFromCoordinates(): Block type id ${this.id} (${this.name}) has an invalid number of vertices or indices! Expected a multiple of 3, got ${B.length} and ${Y.length}.`);let J=B.length/3,C=A.length,X=new Float32Array(B.length*C),G=new Uint32Array(Y.length*C);for(let W=0;WQ.REGISTER_BLOCK_TYPE="BLOCK_TYPE_REGISTRY.REGISTER_BLOCK_TYPE")(sf||={});class ED extends BQ{_blockTypes=new Map;_world;constructor(A){super();this._world=A}get world(){return this._world}getAllBlockTypes(){return Array.from(this._blockTypes.values())}getBlockType(A){let Q=this._blockTypes.get(A);if(!Q)l.fatalError(`BlockTypeRegistry.getBlockType(): BlockType with id ${A} not found.`);return Q}registerGenericBlockType(A){let B=new class extends O8{constructor(Y=A){super(Y)}};return this.registerBlockType(B),B}registerBlockType(A){this._blockTypes.set(A.id,A),this.emitWithWorld(this._world,"BLOCK_TYPE_REGISTRY.REGISTER_BLOCK_TYPE",{blockTypeRegistry:this,id:A.id,blockType:A})}serialize(){return GQ.serializeBlockTypeRegistry(this)}}var Om={};iG(Om,{worldSchema:()=>jm,worldPacketDefinition:()=>SKA,vectorSchema:()=>nQ,vectorBooleanSchema:()=>zGB,uiSchema:()=>Rm,uiPacketDefinition:()=>PKA,uiDatasSchema:()=>wm,uiDatasPacketDefinition:()=>TKA,uiDataSendPacketDefinition:()=>UKA,uiDataSchema:()=>fD,syncResponseSchema:()=>zm,syncResponsePacketDefinition:()=>OKA,syncRequestSchema:()=>rb,syncRequestPacketDefinition:()=>$KA,stateRequestSchema:()=>sb,stateRequestPacketDefinition:()=>ZKA,sceneUIsSchema:()=>Mm,sceneUIsPacketDefinition:()=>jKA,sceneUISchema:()=>qm,rgbColorSchema:()=>gY,registeredPackets:()=>xw,quaternionSchema:()=>bD,playersSchema:()=>Lm,playersPacketDefinition:()=>wKA,playerSchema:()=>Nm,physicsDebugRenderSchema:()=>Dm,physicsDebugRenderPacketDefinition:()=>zKA,physicsDebugRaycastsSchema:()=>Hm,physicsDebugRaycastsPacketDefinition:()=>RKA,physicsDebugRaycastSchema:()=>Im,particleEmittersSchema:()=>Vm,particleEmittersPacketDefinition:()=>MKA,particleEmitterSchema:()=>Km,outlineSchema:()=>Wm,outboundPackets:()=>hw,notificationPermissionRequestSchema:()=>Em,notificationPermissionRequestPacketDefinition:()=>qKA,modelNodeOverrideSchema:()=>Gm,modelAnimationSchema:()=>Xm,lightsSchema:()=>Um,lightsPacketDefinition:()=>LKA,lightSchema:()=>$m,isValidPacket:()=>wGB,inputSchema:()=>nb,inputPacketDefinition:()=>FKA,inboundPackets:()=>gw,hexColorSchema:()=>pb,heartbeatSchema:()=>lb,heartbeatPacketDefinition:()=>XKA,framePacketBuffer:()=>MGB,entitySchema:()=>Fm,entitiesSchema:()=>Zm,entitiesPacketDefinition:()=>NKA,definePacket:()=>HQ,debugConfigSchema:()=>ib,debugConfigPacketDefinition:()=>WKA,createPacketBufferUnframer:()=>qGB,createPacket:()=>LGB,connectionSchema:()=>cb,connectionPacketDefinition:()=>CKA,chunksSchema:()=>Cm,chunksPacketDefinition:()=>DKA,chunkSchema:()=>Jm,chatMessagesSchema:()=>Ym,chatMessagesPacketDefinition:()=>HKA,chatMessageSendPacketDefinition:()=>GKA,chatMessageSchema:()=>xD,cameraSchema:()=>Bm,cameraPacketDefinition:()=>IKA,blocksSchema:()=>eb,blocksPacketDefinition:()=>KKA,blockTypesSchema:()=>Qm,blockTypesPacketDefinition:()=>VKA,blockTypeSchema:()=>Am,blockSchema:()=>tb,bidirectionalPackets:()=>yw,audiosSchema:()=>ob,audiosPacketDefinition:()=>EKA,audioSchema:()=>ab,PacketId:()=>sB});var yw={};iG(yw,{heartbeatPacketDefinition:()=>XKA,connectionPacketDefinition:()=>CKA});var ub=qA(YKA(),1);class db extends ub.default{static instance=new ub.default}var hD=4,JKA=33554432,sB;((_)=>{_[_.SYNC_REQUEST=0]="SYNC_REQUEST";_[_.INPUT=1]="INPUT";_[_.STATE_REQUEST=2]="STATE_REQUEST";_[_.CHAT_MESSAGE_SEND=3]="CHAT_MESSAGE_SEND";_[_.UI_DATA_SEND=4]="UI_DATA_SEND";_[_.SYNC_RESPONSE=32]="SYNC_RESPONSE";_[_.AUDIOS=33]="AUDIOS";_[_.BLOCKS=34]="BLOCKS";_[_.BLOCK_TYPES=35]="BLOCK_TYPES";_[_.CHAT_MESSAGES=36]="CHAT_MESSAGES";_[_.CHUNKS=37]="CHUNKS";_[_.ENTITIES=38]="ENTITIES";_[_.WORLD=39]="WORLD";_[_.CAMERA=40]="CAMERA";_[_.UI=41]="UI";_[_.UI_DATAS=42]="UI_DATAS";_[_.SCENE_UIS=43]="SCENE_UIS";_[_.LIGHTS=44]="LIGHTS";_[_.PLAYERS=45]="PLAYERS";_[_.PARTICLE_EMITTERS=46]="PARTICLE_EMITTERS";_[_.NOTIFICATION_PERMISSION_REQUEST=47]="NOTIFICATION_PERMISSION_REQUEST";_[_.CONNECTION=116]="CONNECTION";_[_.HEARTBEAT=117]="HEARTBEAT";_[_.DEBUG_CONFIG=128]="DEBUG_CONFIG";_[_.PHYSICS_DEBUG_RENDER=192]="PHYSICS_DEBUG_RENDER";_[_.PHYSICS_DEBUG_RAYCASTS=193]="PHYSICS_DEBUG_RAYCASTS"})(sB||={});function LGB(A,Q,B){if(!A.validate(Q))throw Error(`Invalid payload for packet with id ${A.id}. Error: ${db.instance.errorsText(A.validate.errors)}`);let Y=[A.id,Q];if(typeof B==="number")Y.push(B);return Y}function qGB(A){let Q=new Uint8Array(524288),B=new DataView(Q.buffer,Q.byteOffset,Q.byteLength),Y=0;return(J)=>{if(Y+J.length>Q.length){let X=Math.max(Q.length*2,Y+J.length);if(X>JKA){console.error(`Unframer packet buffer exceeded maximum size of ${JKA} bytes, discarding packet...`),Y=0;return}let G=new Uint8Array(X);G.set(Q.subarray(0,Y)),Q=G,B=new DataView(Q.buffer,Q.byteOffset,Q.byteLength)}Q.set(J,Y),Y+=J.length;let C=0;while(Y-C>=hD){let X=B.getUint32(C,!1),G=hD+X;if(Y-C0){if(Y>C)Q.copyWithin(0,C,Y);Y-=C}}}function HQ(A,Q){return{id:A,schema:Q,validate:db.instance.compile(Q)}}function MGB(A){let Q=new Uint8Array(hD+A.length);return new DataView(Q.buffer).setUint32(0,A.length,!1),Q.set(A,hD),Q}var cb={type:"object",properties:{i:{type:"string",nullable:!0},k:{type:"boolean",nullable:!0}},additionalProperties:!1};var CKA=HQ(116,cb);var lb={type:"null",nullable:!0};var XKA=HQ(117,lb);var gw={};iG(gw,{uiDataSendPacketDefinition:()=>UKA,syncRequestPacketDefinition:()=>$KA,stateRequestPacketDefinition:()=>ZKA,inputPacketDefinition:()=>FKA,debugConfigPacketDefinition:()=>WKA,chatMessageSendPacketDefinition:()=>GKA});var pb={type:"string",pattern:"^[0-9A-Fa-f]{6}$"};var xD={type:"object",properties:{m:{type:"string"},c:{...pb,nullable:!0},p:{type:"string",nullable:!0}},required:["m"],additionalProperties:!1};var GKA=HQ(3,xD);var ib={type:"object",properties:{pdr:{type:"boolean",nullable:!0}},additionalProperties:!1};var WKA=HQ(128,ib);var nQ={type:"array",items:[{type:"number"},{type:"number"},{type:"number"}],minItems:3,maxItems:3};var nb={type:"object",properties:{"1":{type:"boolean",nullable:!0},"2":{type:"boolean",nullable:!0},"3":{type:"boolean",nullable:!0},"4":{type:"boolean",nullable:!0},"5":{type:"boolean",nullable:!0},"6":{type:"boolean",nullable:!0},"7":{type:"boolean",nullable:!0},"8":{type:"boolean",nullable:!0},"9":{type:"boolean",nullable:!0},"0":{type:"boolean",nullable:!0},w:{type:"boolean",nullable:!0},a:{type:"boolean",nullable:!0},s:{type:"boolean",nullable:!0},d:{type:"boolean",nullable:!0},q:{type:"boolean",nullable:!0},e:{type:"boolean",nullable:!0},r:{type:"boolean",nullable:!0},f:{type:"boolean",nullable:!0},z:{type:"boolean",nullable:!0},x:{type:"boolean",nullable:!0},c:{type:"boolean",nullable:!0},v:{type:"boolean",nullable:!0},u:{type:"boolean",nullable:!0},i:{type:"boolean",nullable:!0},o:{type:"boolean",nullable:!0},j:{type:"boolean",nullable:!0},k:{type:"boolean",nullable:!0},l:{type:"boolean",nullable:!0},n:{type:"boolean",nullable:!0},m:{type:"boolean",nullable:!0},sp:{type:"boolean",nullable:!0},sh:{type:"boolean",nullable:!0},tb:{type:"boolean",nullable:!0},ml:{type:"boolean",nullable:!0},mr:{type:"boolean",nullable:!0},cp:{type:"number",nullable:!0},cy:{type:"number",nullable:!0},ird:{...nQ,nullable:!0},iro:{...nQ,nullable:!0},jd:{type:"number",nullable:!0},sq:{type:"number",nullable:!0}},additionalProperties:!1};var FKA=HQ(1,nb);var sb={type:"object",properties:{},additionalProperties:!1};var ZKA=HQ(2,sb);var rb={type:"null",nullable:!0};var $KA=HQ(0,rb);var fD={type:"object",properties:{},additionalProperties:!0};var UKA=HQ(4,fD);var hw={};iG(hw,{worldPacketDefinition:()=>SKA,uiPacketDefinition:()=>PKA,uiDatasPacketDefinition:()=>TKA,syncResponsePacketDefinition:()=>OKA,sceneUIsPacketDefinition:()=>jKA,playersPacketDefinition:()=>wKA,physicsDebugRenderPacketDefinition:()=>zKA,physicsDebugRaycastsPacketDefinition:()=>RKA,particleEmittersPacketDefinition:()=>MKA,notificationPermissionRequestPacketDefinition:()=>qKA,lightsPacketDefinition:()=>LKA,entitiesPacketDefinition:()=>NKA,chunksPacketDefinition:()=>DKA,chatMessagesPacketDefinition:()=>HKA,cameraPacketDefinition:()=>IKA,blocksPacketDefinition:()=>KKA,blockTypesPacketDefinition:()=>VKA,audiosPacketDefinition:()=>EKA});var ab={type:"object",properties:{i:{type:"number"},a:{type:"string",nullable:!0},cd:{type:"number",nullable:!0},d:{type:"number",nullable:!0},de:{type:"number",nullable:!0},di:{type:"number",minimum:0,nullable:!0},e:{type:"number",nullable:!0},l:{type:"boolean",nullable:!0},o:{type:"number",nullable:!0},p:{...nQ,nullable:!0},pa:{type:"boolean",nullable:!0},pl:{type:"boolean",nullable:!0},pr:{type:"number",minimum:0,nullable:!0},r:{type:"boolean",nullable:!0},rd:{type:"number",nullable:!0},s:{type:"number",nullable:!0},v:{type:"number",minimum:0,maximum:1,nullable:!0}},required:["i"],additionalProperties:!1};var ob={type:"array",items:{...ab}};var EKA=HQ(33,ob);var tb={type:"object",properties:{i:{type:"number"},c:nQ,r:{type:"number",nullable:!0}},required:["i","c"],additionalProperties:!1};var eb={type:"array",items:{...tb}};var KKA=HQ(34,eb);var Am={type:"object",properties:{i:{type:"number"},l:{type:"boolean",nullable:!0},ll:{type:"number",nullable:!0},n:{type:"string",nullable:!0},t:{type:"string",nullable:!0},ti:{type:"array",items:{type:"number"},nullable:!0},tv:{type:"array",items:{type:"number"},nullable:!0}},required:["i"],additionalProperties:!1};var Qm={type:"array",items:{...Am}};var VKA=HQ(35,Qm);var Bm={type:"object",properties:{cb:{type:"boolean",nullable:!0},m:{type:"number",nullable:!0},e:{type:"number",nullable:!0},et:{type:"number",nullable:!0},fo:{type:"number",nullable:!0},ffo:{type:"number",nullable:!0},fv:{type:"number",nullable:!0},h:{type:"array",items:{type:"string"},nullable:!0},mp:{type:"boolean",nullable:!0},my:{type:"boolean",nullable:!0},o:{...nQ,nullable:!0},p:{...nQ,nullable:!0},pt:{...nQ,nullable:!0},pl:{...nQ,nullable:!0},s:{type:"array",items:{type:"string"},nullable:!0},sa:{type:"number",nullable:!0},z:{type:"number",nullable:!0}},additionalProperties:!1};var Ym={type:"array",items:{...xD}};var Jm={type:"object",properties:{c:nQ,b:{type:"array",items:{type:"number",minimum:0,maximum:255},minItems:4096,maxItems:4096,nullable:!0},r:{type:"array",items:{type:"number"},minItems:0,maxItems:8192,nullable:!0},rm:{type:"boolean",nullable:!0}},required:["c"],additionalProperties:!1};var Cm={type:"array",items:{...Jm}};var gY={type:"array",items:[{type:"number",minimum:0,maximum:255},{type:"number",minimum:0,maximum:255},{type:"number",minimum:0,maximum:255}],minItems:3,maxItems:3};var Xm={type:"object",properties:{n:{type:"string"},b:{type:"number",nullable:!0},c:{type:"boolean",nullable:!0},fi:{type:"boolean",nullable:!0},fo:{type:"boolean",nullable:!0},l:{type:"number",nullable:!0},p:{type:"boolean",nullable:!0},pa:{type:"boolean",nullable:!0},pr:{type:"number",nullable:!0},r:{type:"boolean",nullable:!0},s:{type:"boolean",nullable:!0},w:{type:"number",nullable:!0}},required:["n"],additionalProperties:!1};var bD={type:"array",items:[{type:"number"},{type:"number"},{type:"number"},{type:"number"}],minItems:4,maxItems:4};var Gm={type:"object",properties:{n:{type:"string"},ec:{...gY,nullable:!0},ei:{type:"number",nullable:!0},h:{type:"boolean",nullable:!0},p:{...nQ,nullable:!0},pi:{type:"number",nullable:!0},r:{...bD,nullable:!0},ri:{type:"number",nullable:!0},rm:{type:"boolean",nullable:!0},s:{...nQ,nullable:!0},si:{type:"number",nullable:!0}},required:["n"],additionalProperties:!1};var Wm={type:"object",properties:{c:{...gY,nullable:!0},ci:{type:"number",nullable:!0},th:{type:"number",nullable:!0},o:{type:"number",nullable:!0},oc:{type:"boolean",nullable:!0}},required:[],additionalProperties:!1};var Fm={type:"object",properties:{i:{type:"number"},bh:{...nQ,nullable:!0},bt:{type:"string",nullable:!0},e:{type:"boolean",nullable:!0},ec:{...gY,nullable:!0},ei:{type:"number",nullable:!0},m:{type:"string",nullable:!0},ma:{type:"array",items:{...Xm},nullable:!0},mo:{type:"array",items:{...Gm},nullable:!0},mt:{type:"string",nullable:!0},n:{type:"string",nullable:!0},o:{type:"number",nullable:!0},ol:{...Wm,nullable:!0},p:{...nQ,nullable:!0},pi:{type:"number",nullable:!0},pe:{type:"number",nullable:!0},pn:{type:"string",nullable:!0},r:{...bD,nullable:!0},ri:{type:"number",nullable:!0},rm:{type:"boolean",nullable:!0},si:{type:"number",nullable:!0},sv:{...nQ,nullable:!0},t:{...gY,nullable:!0}},required:["i"],additionalProperties:!1};var Zm={type:"array",items:{...Fm}};var $m={type:"object",properties:{i:{type:"number"},a:{type:"number",nullable:!0},e:{type:"number",nullable:!0},c:{...gY,nullable:!0},d:{type:"number",nullable:!0},n:{type:"number",nullable:!0},o:{...nQ,nullable:!0},p:{...nQ,nullable:!0},pe:{type:"number",minimum:0,maximum:1,nullable:!0},rm:{type:"boolean",nullable:!0},t:{type:"number",nullable:!0},te:{type:"number",nullable:!0},tp:{...nQ,nullable:!0}},required:["i"],additionalProperties:!1};var Um={type:"array",items:{...$m}};var Em={type:"null",nullable:!0};var Km={type:"object",properties:{i:{type:"number"},at:{type:"number",nullable:!0},b:{type:"number",nullable:!0},ce:{...gY,nullable:!0},cev:{...gY,nullable:!0},cs:{...gY,nullable:!0},csv:{...gY,nullable:!0},cie:{type:"number",nullable:!0},ciev:{type:"number",nullable:!0},cis:{type:"number",nullable:!0},cisv:{type:"number",nullable:!0},e:{type:"number",nullable:!0},en:{type:"string",nullable:!0},g:{...nQ,nullable:!0},l:{type:"number",nullable:!0},le:{type:"boolean",nullable:!0},lv:{type:"number",nullable:!0},mp:{type:"number",nullable:!0},o:{...nQ,nullable:!0},oe:{type:"number",nullable:!0},oev:{type:"number",nullable:!0},or:{type:"number",nullable:!0},ofr:{...nQ,nullable:!0},os:{type:"number",nullable:!0},osv:{type:"number",nullable:!0},p:{...nQ,nullable:!0},pa:{type:"boolean",nullable:!0},pv:{...nQ,nullable:!0},r:{type:"number",nullable:!0},rv:{type:"number",nullable:!0},rm:{type:"boolean",nullable:!0},se:{type:"number",nullable:!0},sev:{type:"number",nullable:!0},ss:{type:"number",nullable:!0},ssv:{type:"number",nullable:!0},t:{type:"boolean",nullable:!0},tu:{type:"string",nullable:!0},v:{...nQ,nullable:!0},vv:{...nQ,nullable:!0}},required:["i"],additionalProperties:!1};var Vm={type:"array",items:{...Km}};var Im={type:"object",properties:{o:{...nQ},d:{...nQ},l:{type:"number"},h:{type:"boolean"}},required:["o","d","l","h"],additionalProperties:!1};var Hm={type:"array",items:{...Im}};var Dm={type:"object",properties:{v:{type:"array",items:{type:"number"}},c:{type:"array",items:{type:"number"}}},required:["v","c"],additionalProperties:!1};var Nm={type:"object",properties:{i:{type:"string"},p:{type:"string",nullable:!0},rm:{type:"boolean",nullable:!0},u:{type:"string",nullable:!0}},required:["i"],additionalProperties:!1};var Lm={type:"array",items:{...Nm}};var qm={type:"object",properties:{i:{type:"number"},e:{type:"number",nullable:!0},o:{...nQ,nullable:!0},p:{...nQ,nullable:!0},rm:{type:"boolean",nullable:!0},s:{type:"object",nullable:!0},t:{type:"string",nullable:!0},v:{type:"number",nullable:!0}},required:["i"],additionalProperties:!1};var Mm={type:"array",items:{...qm}};var zm={type:"object",properties:{r:{type:"number"},s:{type:"number"},p:{type:"number"},n:{type:"number"}},required:["r","s","p","n"],additionalProperties:!1};var Rm={type:"object",properties:{p:{type:"boolean",nullable:!0},pf:{type:"boolean",nullable:!0},u:{type:"string",nullable:!0},ua:{type:"array",items:{type:"string"},nullable:!0}},additionalProperties:!1};var wm={type:"array",items:{...fD}};var zGB={type:"array",items:[{type:"boolean"},{type:"boolean"},{type:"boolean"}],minItems:3,maxItems:3};var jm={type:"object",properties:{i:{type:"number"},ac:{...gY,nullable:!0},ai:{type:"number",nullable:!0},dc:{...gY,nullable:!0},di:{type:"number",nullable:!0},dp:{...nQ,nullable:!0},fc:{...gY,nullable:!0},ff:{type:"number",nullable:!0},fn:{type:"number",nullable:!0},n:{type:"string",nullable:!0},s:{type:"string",nullable:!0},si:{type:"number",nullable:!0},t:{type:"number",nullable:!0}},required:["i"],additionalProperties:!1};var IKA=HQ(40,Bm);var HKA=HQ(36,Ym);var DKA=HQ(37,Cm);var NKA=HQ(38,Zm);var LKA=HQ(44,Um);var qKA=HQ(47,Em);var MKA=HQ(46,Vm);var zKA=HQ(192,Dm);var RKA=HQ(193,Hm);var wKA=HQ(45,Lm);var jKA=HQ(43,Mm);var OKA=HQ(32,zm);var PKA=HQ(41,Rm);var TKA=HQ(42,wm);var SKA=HQ(39,jm);var xw=new Map,RGB={...yw,...gw,...hw};for(let A of Object.values(RGB))if("id"in A&&"schema"in A){let Q=A;if(xw.has(Q.id))throw Error(`Packet with id ${Q.id} is already registered.`);xw.set(Q.id,Q)}function wGB(A){if(typeof A!=="object"||A===null||typeof A[0]!=="number"||A[0]<0||A[1]===void 0||A[2]!==void 0&&(typeof A[2]!=="number"||A[2]<0))return!1;let Q=xw.get(A[0]);return!!Q&&Q.validate(A[1])}var gQ=Om;var hIA=qA(JVA(),1);import zZ from"fs";import yIA from"path";var EWB=qA(eVA(),1),KWB=qA(fm(),1),VWB=qA(mm(),1),OE=qA(sw(),1),nm=qA(XIA(),1);var GIA=OE.default;function u9(A){if(A===null)return"null";if(Array.isArray(A))return"array";return typeof A}function n7(A){return u9(A)==="object"}function IWB(A){return Array.isArray(A)&&A.length>0&&A.every((Q)=>("message"in Q))}function sm(A,Q){return A.length<124?A:Q}var WIA="graphql-transport-ws";var T8=((A)=>{return A[A.InternalServerError=4500]="InternalServerError",A[A.InternalClientError=4005]="InternalClientError",A[A.BadRequest=4400]="BadRequest",A[A.BadResponse=4004]="BadResponse",A[A.Unauthorized=4401]="Unauthorized",A[A.Forbidden=4403]="Forbidden",A[A.SubprotocolNotAcceptable=4406]="SubprotocolNotAcceptable",A[A.ConnectionInitialisationTimeout=4408]="ConnectionInitialisationTimeout",A[A.ConnectionAcknowledgementTimeout=4504]="ConnectionAcknowledgementTimeout",A[A.SubscriberAlreadyExists=4409]="SubscriberAlreadyExists",A[A.TooManyInitialisationRequests=4429]="TooManyInitialisationRequests",A})(T8||{}),S8=((A)=>{return A.ConnectionInit="connection_init",A.ConnectionAck="connection_ack",A.Ping="ping",A.Pong="pong",A.Subscribe="subscribe",A.Next="next",A.Error="error",A.Complete="complete",A})(S8||{});function FIA(A){if(!n7(A))throw Error(`Message is expected to be an object, but got ${u9(A)}`);if(!A.type)throw Error("Message is missing the 'type' property");if(typeof A.type!=="string")throw Error(`Message is expects the 'type' property to be a string, but got ${u9(A.type)}`);switch(A.type){case"connection_init":case"connection_ack":case"ping":case"pong":{if(A.payload!=null&&!n7(A.payload))throw Error(`"${A.type}" message expects the 'payload' property to be an object or nullish or missing, but got "${A.payload}"`);break}case"subscribe":{if(typeof A.id!=="string")throw Error(`"${A.type}" message expects the 'id' property to be a string, but got ${u9(A.id)}`);if(!A.id)throw Error(`"${A.type}" message requires a non-empty 'id' property`);if(!n7(A.payload))throw Error(`"${A.type}" message expects the 'payload' property to be an object, but got ${u9(A.payload)}`);if(typeof A.payload.query!=="string")throw Error(`"${A.type}" message payload expects the 'query' property to be a string, but got ${u9(A.payload.query)}`);if(A.payload.variables!=null&&!n7(A.payload.variables))throw Error(`"${A.type}" message payload expects the 'variables' property to be a an object or nullish or missing, but got ${u9(A.payload.variables)}`);if(A.payload.operationName!=null&&u9(A.payload.operationName)!=="string")throw Error(`"${A.type}" message payload expects the 'operationName' property to be a string or nullish or missing, but got ${u9(A.payload.operationName)}`);if(A.payload.extensions!=null&&!n7(A.payload.extensions))throw Error(`"${A.type}" message payload expects the 'extensions' property to be a an object or nullish or missing, but got ${u9(A.payload.extensions)}`);break}case"next":{if(typeof A.id!=="string")throw Error(`"${A.type}" message expects the 'id' property to be a string, but got ${u9(A.id)}`);if(!A.id)throw Error(`"${A.type}" message requires a non-empty 'id' property`);if(!n7(A.payload))throw Error(`"${A.type}" message expects the 'payload' property to be an object, but got ${u9(A.payload)}`);break}case"error":{if(typeof A.id!=="string")throw Error(`"${A.type}" message expects the 'id' property to be a string, but got ${u9(A.id)}`);if(!A.id)throw Error(`"${A.type}" message requires a non-empty 'id' property`);if(!IWB(A.payload))throw Error(`"${A.type}" message expects the 'payload' property to be an array of GraphQL errors, but got ${JSON.stringify(A.payload)}`);break}case"complete":{if(typeof A.id!=="string")throw Error(`"${A.type}" message expects the 'id' property to be a string, but got ${u9(A.id)}`);if(!A.id)throw Error(`"${A.type}" message requires a non-empty 'id' property`);break}default:throw Error(`Invalid message 'type' property "${A.type}"`)}return A}function ZIA(A,Q){return FIA(typeof A==="string"?JSON.parse(A,Q):A)}function PE(A,Q){return FIA(A),JSON.stringify(A,Q)}function am(A){let{url:Q,connectionParams:B,lazy:Y=!0,onNonLazyError:J=console.error,lazyCloseTimeout:C=0,keepAlive:X=0,disablePong:G,connectionAckWaitTimeout:W=0,retryAttempts:F=5,retryWait:Z=async function(v){let y=Math.pow(2,v);await new Promise((h)=>setTimeout(h,y*1000+Math.floor(Math.random()*2700+300)))},shouldRetry:U=rm,on:$,webSocketImpl:E,generateID:K=function(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(v)=>{let y=Math.random()*16|0;return(v=="x"?y:y&3|8).toString(16)})},jsonMessageReplacer:I,jsonMessageReviver:V}=A,H;if(E){if(!DWB(E))throw Error("Invalid WebSocket implementation provided");H=E}else if(typeof WebSocket<"u")H=WebSocket;else if(typeof global<"u")H=global.WebSocket||global.MozWebSocket;else if(typeof window<"u")H=window.WebSocket||window.MozWebSocket;if(!H)throw Error("WebSocket implementation missing; on Node you can `import WebSocket from 'ws';` and pass `webSocketImpl: WebSocket` to `createClient`");let D=H,L=(()=>{let S=(()=>{let y={};return{on(h,g){return y[h]=g,()=>{delete y[h]}},emit(h){if("id"in h)y[h.id]?.(h)}}})(),v={connecting:$?.connecting?[$.connecting]:[],opened:$?.opened?[$.opened]:[],connected:$?.connected?[$.connected]:[],ping:$?.ping?[$.ping]:[],pong:$?.pong?[$.pong]:[],message:$?.message?[S.emit,$.message]:[S.emit],closed:$?.closed?[$.closed]:[],error:$?.error?[$.error]:[]};return{onMessage:S.on,on(y,h){let g=v[y];return g.push(h),()=>{g.splice(g.indexOf(h),1)}},emit(y,...h){for(let g of[...v[y]])g(...h)}}})();function z(S){let v=[L.on("error",(y)=>{v.forEach((h)=>h()),S(y)}),L.on("closed",(y)=>{v.forEach((h)=>h()),S(y)})]}let M,N=0,q,w=!1,P=0,_=!1;async function j(){clearTimeout(q);let[S,v]=await(M??(M=new Promise((g,m)=>(async()=>{if(w){if(await Z(P),!N)return M=void 0,m({code:1000,reason:"All Subscriptions Gone"});P++}L.emit("connecting",w);let n=new D(typeof Q==="function"?await Q():Q,WIA),i,p;function d(){if(isFinite(X)&&X>0)clearTimeout(p),p=setTimeout(()=>{if(n.readyState===D.OPEN)n.send(PE({type:S8.Ping})),L.emit("ping",!1,void 0)},X)}z((b)=>{if(M=void 0,clearTimeout(i),clearTimeout(p),m(b),b instanceof aw)n.close(4499,"Terminated"),n.onerror=null,n.onclose=null}),n.onerror=(b)=>L.emit("error",b),n.onclose=(b)=>L.emit("closed",b),n.onopen=async()=>{try{L.emit("opened",n);let b=typeof B==="function"?await B():B;if(n.readyState!==D.OPEN)return;if(n.send(PE(b?{type:S8.ConnectionInit,payload:b}:{type:S8.ConnectionInit},I)),isFinite(W)&&W>0)i=setTimeout(()=>{n.close(T8.ConnectionAcknowledgementTimeout,"Connection acknowledgement timeout")},W);d()}catch(b){L.emit("error",b),n.close(T8.InternalClientError,sm(b instanceof Error?b.message:String(b),"Internal client error"))}};let x=!1;n.onmessage=({data:b})=>{try{let o=ZIA(b,V);if(L.emit("message",o),o.type==="ping"||o.type==="pong"){if(L.emit(o.type,!0,o.payload),o.type==="pong")d();else if(!G)n.send(PE(o.payload?{type:S8.Pong,payload:o.payload}:{type:S8.Pong})),L.emit("pong",!1,o.payload);return}if(x)return;if(o.type!==S8.ConnectionAck)throw Error(`First message cannot be of type ${o.type}`);clearTimeout(i),x=!0,L.emit("connected",n,o.payload,w),w=!1,P=0,g([n,new Promise((GA,VA)=>z(VA))])}catch(o){n.onmessage=null,L.emit("error",o),n.close(T8.BadResponse,sm(o instanceof Error?o.message:String(o),"Bad response"))}}})())));if(S.readyState===D.CLOSING)await v;let y=()=>{},h=new Promise((g)=>y=g);return[S,y,Promise.race([h.then(()=>{if(!N){let g=()=>S.close(1000,"Normal Closure");if(isFinite(C)&&C>0)q=setTimeout(()=>{if(S.readyState===D.OPEN)g()},C);else g()}}),v])]}function k(S){if(rm(S)&&(HWB(S.code)||[T8.InternalServerError,T8.InternalClientError,T8.BadRequest,T8.BadResponse,T8.Unauthorized,T8.SubprotocolNotAcceptable,T8.SubscriberAlreadyExists,T8.TooManyInitialisationRequests].includes(S.code)))throw S;if(_)return!1;if(rm(S)&&S.code===1000)return N>0;if(!F||P>=F)throw S;if(!U(S))throw S;return w=!0}if(!Y)(async()=>{N++;for(;;)try{let[,,S]=await j();await S}catch(S){try{if(!k(S))return}catch(v){return J?.(v)}}})();function T(S,v){let y=K(S),h=!1,g=!1,m=()=>{N--,h=!0};return(async()=>{N++;for(;;)try{let[n,i,p]=await j();if(h)return i();let d=L.onMessage(y,(x)=>{switch(x.type){case S8.Next:{v.next(x.payload);return}case S8.Error:{g=!0,h=!0,v.error(x.payload),m();return}case S8.Complete:{h=!0,m();return}}});n.send(PE({id:y,type:S8.Subscribe,payload:S},I)),m=()=>{if(!h&&n.readyState===D.OPEN)n.send(PE({id:y,type:S8.Complete},I));N--,h=!0,i()},await p.finally(d);return}catch(n){if(!k(n))return}})().then(()=>{if(!g)v.complete()}).catch((n)=>{v.error(n)}),()=>{if(!h)m()}}return{on:L.on,subscribe:T,iterate(S){let v=[],y={done:!1,error:null,resolve:()=>{}},h=T(S,{next(m){v.push(m),y.resolve()},error(m){y.done=!0,y.error=m,y.resolve()},complete(){y.done=!0,y.resolve()}}),g=async function*(){for(;;){if(!v.length)await new Promise((n)=>y.resolve=n);while(v.length)yield v.shift();if(y.error)throw y.error;if(y.done)return}}();return g.throw=async(m)=>{if(!y.done)y.done=!0,y.error=m,y.resolve();return{done:!0,value:void 0}},g.return=async()=>{return h(),{done:!0,value:void 0}},g},async dispose(){if(_=!0,M){let[S]=await M;S.close(1000,"Normal Closure")}},terminate(){if(M)L.emit("closed",new aw)}}}class aw extends Error{name="TerminatedCloseEvent";message="4499: Terminated";code=4499;reason="Terminated";wasClean=!1}function rm(A){return n7(A)&&"code"in A&&"reason"in A}function HWB(A){if([1000,1001,1006,1005,1012,1013,1014].includes(A))return!1;return A>=1000&&A<=1999}function DWB(A){return typeof A==="function"&&"constructor"in A&&"CLOSED"in A&&"CLOSING"in A&&"CONNECTING"in A&&"OPEN"in A}var gIA=qA(vIA(),1);var rD="./dev/persistence",tw=process.env.HYTOPIA_NOTIFICATION_SERVICE_URL||"https://prod.notifications.hytopia.com";class P5{static instance=new P5;creatorApiKey=process.env.HYTOPIA_API_KEY;gameId=process.env.HYTOPIA_GAME_ID;lobbyId=process.env.HYTOPIA_LOBBY_ID;_creativeGateway;_gqlWs;constructor(){this._gqlWs=am({url:"wss://prod.gql.hytopia.com/graphql",webSocketImpl:GIA});try{this._creativeGateway=new gIA.CreativeGateway}catch{console.warn(["━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━","\uD83D\uDEA8 HYTOPIA PLATFORM GATEWAY IS NOT INITIALIZED \uD83D\uDEA8","","\uD83D\uDD27 Local development is still possible, but these features will be disabled:"," • \uD83D\uDC64 Live Player Accounts"," • \uD83C\uDFAD Live Player Cosmetics"," • \uD83D\uDD14 Scheduled Notifications"," • \uD83D\uDC1B Crash Analytics & Debug Logs","","\uD83D\uDCA1 These features will be enabled but modified:"," • \uD83D\uDCBE Player & Global Persisted Data - Data will be persisted"," locally in the ./dev/persistence directory of your project."," Player ids for data persistence will begin at 1 for the first "," player to join your local server, and increments for each"," additional player. This means that if you restart your"," server, the first player id will be 1 again. This is to ensure"," that data persistence across server restarts can be easily"," tested and debugged in local development.","","To enable the HYTOPIA Platform Gateway locally:"," 1. Set these environment variables:"," HYTOPIA_API_KEY, HYTOPIA_GAME_ID, HYTOPIA_LOBBY_ID"," 2. You can find these values at: https://create.hytopia.com","","Note: In production, these environment variables will be auto-populated ","& the HYTOPIA Platform Gateway will automatically be initialized \uD83D\uDE80","━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━",""].join(` +`,"")]}),J.push(C),{lines:J,longestLine:X}}function Sf(A,Q,B){let{lines:Y}=Tf(A,Q,B);return Y.length*A.common.lineHeight}var dYB=s.object({x:s.number(),y:s.number(),text:s.union([s.union([s.string(),s.number()]),s.object({text:s.union([s.string(),s.number()]),alignmentX:s.nativeEnum(M5).optional(),alignmentY:s.nativeEnum(z5).optional()})]),maxWidth:s.number().optional(),maxHeight:s.number().optional(),cb:s.function(s.tuple([s.object({x:s.number(),y:s.number()})])).optional()});function cYB(A,Q,B,Y){if(Y===M5.LEFT)return 0;if(Y===M5.CENTER)return(B-oU(A,Q))/2;return B-oU(A,Q)}function lYB(A,Q,B,Y,J){if(J.width>0&&J.height>0){let C=Q.pages[J.page];if(C)A=pU.blit(A,{src:C,x:B+J.xoffset,y:Y+J.yoffset,srcX:J.x,srcY:J.y,srcW:J.width,srcH:J.height})}return A}function pYB(A,Q,B,Y,J,C){for(let X=0;X{}}=dYB.parse(B),F,Z;if(typeof C==="object"&&C.text!==null&&C.text!==void 0)F=C.alignmentX||M5.LEFT,Z=C.alignmentY||z5.TOP,{text:C}=C;else F=M5.LEFT,Z=z5.TOP,C=C.toString();if(typeof C==="number")C=C.toString();if(G!==1/0&&Z===z5.BOTTOM)J+=G-Sf(Q,C,X);else if(G!==1/0&&Z===z5.MIDDLE)J+=G/2-Sf(Q,C,X)/2;let U=Object.entries(Q.chars).find((K)=>K[1].xadvance)?.[1].xadvance;if(typeof U!=="number")throw Error("Could not find default character width");let{lines:$,longestLine:E}=Tf(Q,C,X);return $.forEach((K)=>{let I=K.join(" "),V=cYB(Q,I,X,F);pYB(A,Q,Y+V,J,I,U),J+=Q.common.lineHeight}),W.bind(A)({x:Y+E,y:J}),A}};var nYB=s.union([s.number(),s.object({deg:s.number(),mode:s.union([s.boolean(),s.nativeEnum(N8)]).optional()})]);function mFA(A){return function(Q,B){return B*A+Q<<2}}function sYB(A,Q){if(Math.abs(Q)%90!==0)throw Error("Unsupported matrix rotation degree");let B=A.bitmap.width,Y=A.bitmap.height,J;switch(Q){case 90:case-270:J=90;break;case 180:case-180:J=180;break;case 270:case-90:J=-90;break;default:throw Error("Unsupported matrix rotation degree")}let C=J===180?B:Y,X=J===180?Y:B,G=Buffer.alloc(A.bitmap.data.length),W=mFA(B),F=mFA(C);for(let Z=0;Z{A.bitmap.data.writeUInt32BE(A.background,H)});let K=Math.max(X,G,A.bitmap.width,A.bitmap.height);A=mC.resize(A,{h:K,w:K,mode:B===!0?void 0:B}),A=nU(A,E,A.bitmap.width/2-E.bitmap.width/2,A.bitmap.height/2-E.bitmap.height/2)}let W=A.bitmap.width,F=A.bitmap.height,Z=Buffer.alloc(A.bitmap.data.length),U=uFA(-(W/2),-(F/2)),$=uFA(W/2+0.5,F/2+0.5);for(let E=1;E<=F;E++)for(let K=1;K<=W;K++){let I=U(K,E),V=$(J*I.x-C*I.y,J*I.y+C*I.x),H=W*(E-1)+K-1<<2;if(V.x>=0&&V.x=0&&V.y{let W=A.bitmap.data[G](Q in A)?nFA(A,Q,{enumerable:!0,configurable:!0,writable:!0,value:B}):A[Q]=B,f6=(A,Q)=>{for(var B in Q)nFA(A,B,{get:Q[B],enumerable:!0})},ZA=(A,Q,B)=>{return eYB(A,typeof Q!=="symbol"?Q+"":Q,B),B},AJB={};f6(AJB,{bt709:()=>sFA});var sFA={};f6(sFA,{Y:()=>rFA,x:()=>aFA,y:()=>oFA});var rFA=((A)=>{return A[A.RED=0.2126]="RED",A[A.GREEN=0.7152]="GREEN",A[A.BLUE=0.0722]="BLUE",A[A.WHITE=1]="WHITE",A})(rFA||{}),aFA=((A)=>{return A[A.RED=0.64]="RED",A[A.GREEN=0.3]="GREEN",A[A.BLUE=0.15]="BLUE",A[A.WHITE=0.3127]="WHITE",A})(aFA||{}),oFA=((A)=>{return A[A.RED=0.33]="RED",A[A.GREEN=0.6]="GREEN",A[A.BLUE=0.06]="BLUE",A[A.WHITE=0.329]="WHITE",A})(oFA||{}),QJB={};f6(QJB,{lab2rgb:()=>FJB,lab2xyz:()=>YZA,rgb2hsl:()=>iR,rgb2lab:()=>BD,rgb2xyz:()=>tFA,xyz2lab:()=>BZA,xyz2rgb:()=>JZA});function kf(A){return A>0.04045?((A+0.055)/1.055)**2.4:A/12.92}function tFA(A,Q,B){return A=kf(A/255),Q=kf(Q/255),B=kf(B/255),{x:A*0.4124+Q*0.3576+B*0.1805,y:A*0.2126+Q*0.7152+B*0.0722,z:A*0.0193+Q*0.1192+B*0.9505}}var eFA={};f6(eFA,{degrees2radians:()=>v7,inRange0to255:()=>q8,inRange0to255Rounded:()=>R5,intInRange:()=>BJB,max3:()=>AZA,min3:()=>QZA,stableSort:()=>hf});function v7(A){return A*(Math.PI/180)}function AZA(A,Q,B){let Y=A;if(YQ)Y=Q;if(Y>B)Y=B;return Y}function BJB(A,Q,B){if(A>B)A=B;if(A255)A=255;else if(A<0)A=0;return A}function q8(A){if(A>255)A=255;else if(A<0)A=0;return A}function hf(A,Q){let B=typeof A[0],Y;if(B==="number"||B==="string"){let J=Object.create(null);for(let C=0,X=A.length;CQ(C,X)||J[C]-J[X])}else{let J=A.slice(0);Y=A.sort((C,X)=>Q(C,X)||J.indexOf(C)-J.indexOf(X))}return Y}function iR(A,Q,B){let Y=QZA(A,Q,B),J=AZA(A,Q,B),C=J-Y,X=(Y+J)/510,G=0;if(X>0&&X<1)G=C/(X<0.5?J+Y:510-J-Y);let W=0;if(C>0){if(J===A)W=(Q-B)/C;else if(J===Q)W=2+(B-A)/C;else W=4+(A-Q)/C;if(W*=60,W<0)W+=360}return{h:W,s:G,l:X}}var YJB=0.95047,JJB=1,CJB=1.08883;function _f(A){return A>0.008856?A**0.3333333333333333:7.787*A+0.13793103448275862}function BZA(A,Q,B){if(A=_f(A/YJB),Q=_f(Q/JJB),B=_f(B/CJB),116*Q-16<0)throw Error("xxx");return{L:Math.max(0,116*Q-16),a:500*(A-Q),b:200*(Q-B)}}function BD(A,Q,B){let Y=tFA(A,Q,B);return BZA(Y.x,Y.y,Y.z)}var XJB=0.95047,GJB=1,WJB=1.08883;function vf(A){return A>0.206893034?A**3:(A-0.13793103448275862)/7.787}function YZA(A,Q,B){let Y=(A+16)/116,J=Q/500+Y,C=Y-B/200;return{x:XJB*vf(J),y:GJB*vf(Y),z:WJB*vf(C)}}function yf(A){return A>0.0031308?1.055*A**0.4166666666666667-0.055:12.92*A}function JZA(A,Q,B){let Y=yf(A*3.2406+Q*-1.5372+B*-0.4986),J=yf(A*-0.9689+Q*1.8758+B*0.0415),C=yf(A*0.0557+Q*-0.204+B*1.057);return{r:R5(Y*255),g:R5(J*255),b:R5(C*255)}}function FJB(A,Q,B){let Y=YZA(A,Q,B);return JZA(Y.x,Y.y,Y.z)}var ZJB={};f6(ZJB,{AbstractDistanceCalculator:()=>WZ,AbstractEuclidean:()=>nR,AbstractManhattan:()=>sR,CIE94GraphicArts:()=>GZA,CIE94Textiles:()=>XZA,CIEDE2000:()=>uC,CMetric:()=>WZA,Euclidean:()=>FZA,EuclideanBT709:()=>ZZA,EuclideanBT709NoAlpha:()=>$ZA,Manhattan:()=>UZA,ManhattanBT709:()=>KZA,ManhattanNommyde:()=>EZA,PNGQuant:()=>VZA});var WZ=class{constructor(){ZA(this,"_maxDistance"),ZA(this,"_whitePoint"),this._setDefaults(),this.setWhitePoint(255,255,255,255)}setWhitePoint(A,Q,B,Y){this._whitePoint={r:A>0?255/A:0,g:Q>0?255/Q:0,b:B>0?255/B:0,a:Y>0?255/Y:0},this._maxDistance=this.calculateRaw(A,Q,B,Y,0,0,0,0)}calculateNormalized(A,Q){return this.calculateRaw(A.r,A.g,A.b,A.a,Q.r,Q.g,Q.b,Q.a)/this._maxDistance}},CZA=class extends WZ{calculateRaw(A,Q,B,Y,J,C,X,G){let W=BD(q8(A*this._whitePoint.r),q8(Q*this._whitePoint.g),q8(B*this._whitePoint.b)),F=BD(q8(J*this._whitePoint.r),q8(C*this._whitePoint.g),q8(X*this._whitePoint.b)),Z=W.L-F.L,U=W.a-F.a,$=W.b-F.b,E=Math.sqrt(W.a*W.a+W.b*W.b),K=Math.sqrt(F.a*F.a+F.b*F.b),I=E-K,V=U*U+$*$-I*I;V=V<0?0:Math.sqrt(V);let H=(G-Y)*this._whitePoint.a*this._kA;return Math.sqrt((Z/this._Kl)**2+(I/(1+this._K1*E))**2+(V/(1+this._K2*E))**2+H**2)}},XZA=class extends CZA{_setDefaults(){this._Kl=2,this._K1=0.048,this._K2=0.014,this._kA=0.049019607843137254}},GZA=class extends CZA{_setDefaults(){this._Kl=1,this._K1=0.045,this._K2=0.015,this._kA=0.09803921568627451}},j0=class extends WZ{_setDefaults(){}static _calculatehp(A,Q){let B=Math.atan2(A,Q);if(B>=0)return B;return B+j0._deg360InRad}static _calculateRT(A,Q){let B=Q**7,Y=2*Math.sqrt(B/(B+j0._pow25to7)),J=j0._deg30InRad*Math.exp(-(((A-j0._deg275InRad)/j0._deg25InRad)**2));return-Math.sin(2*J)*Y}static _calculateT(A){return 1-0.17*Math.cos(A-j0._deg30InRad)+0.24*Math.cos(A*2)+0.32*Math.cos(A*3+j0._deg6InRad)-0.2*Math.cos(A*4-j0._deg63InRad)}static _calculate_ahp(A,Q,B,Y){let J=B+Y;if(A===0)return J;if(Q<=j0._deg180InRad)return J/2;if(J>8)+4*Z*Z+((767-W)*U*U>>8),E=(G-Y)*this._whitePoint.a;return Math.sqrt($+E*E)}_setDefaults(){}},nR=class extends WZ{calculateRaw(A,Q,B,Y,J,C,X,G){let W=J-A,F=C-Q,Z=X-B,U=G-Y;return Math.sqrt(this._kR*W*W+this._kG*F*F+this._kB*Z*Z+this._kA*U*U)}},FZA=class extends nR{_setDefaults(){this._kR=1,this._kG=1,this._kB=1,this._kA=1}},ZZA=class extends nR{_setDefaults(){this._kR=0.2126,this._kG=0.7152,this._kB=0.0722,this._kA=1}},$ZA=class extends nR{_setDefaults(){this._kR=0.2126,this._kG=0.7152,this._kB=0.0722,this._kA=0}},sR=class extends WZ{calculateRaw(A,Q,B,Y,J,C,X,G){let W=J-A,F=C-Q,Z=X-B,U=G-Y;if(W<0)W=0-W;if(F<0)F=0-F;if(Z<0)Z=0-Z;if(U<0)U=0-U;return this._kR*W+this._kG*F+this._kB*Z+this._kA*U}},UZA=class extends sR{_setDefaults(){this._kR=1,this._kG=1,this._kB=1,this._kA=1}},EZA=class extends sR{_setDefaults(){this._kR=0.4984,this._kG=0.8625,this._kB=0.2979,this._kA=1}},KZA=class extends sR{_setDefaults(){this._kR=0.2126,this._kG=0.7152,this._kB=0.0722,this._kA=1}},VZA=class extends WZ{calculateRaw(A,Q,B,Y,J,C,X,G){let W=(G-Y)*this._whitePoint.a;return this._colordifferenceCh(A*this._whitePoint.r,J*this._whitePoint.r,W)+this._colordifferenceCh(Q*this._whitePoint.g,C*this._whitePoint.g,W)+this._colordifferenceCh(B*this._whitePoint.b,X*this._whitePoint.b,W)}_colordifferenceCh(A,Q,B){let Y=A-Q,J=Y+B;return Y*Y+J*J}_setDefaults(){}},$JB={};f6($JB,{AbstractPaletteQuantizer:()=>YD,ColorHistogram:()=>CD,NeuQuant:()=>g0,NeuQuantFloat:()=>h0,RGBQuant:()=>DZA,WuColorCube:()=>NZA,WuQuant:()=>YE});var YD=class{quantizeSync(){for(let A of this.quantize())if(A.palette)return A.palette;throw Error("unreachable")}},M8=class{constructor(){ZA(this,"r"),ZA(this,"g"),ZA(this,"b"),ZA(this,"a"),ZA(this,"uint32"),ZA(this,"rgba"),this.uint32=4294967295,this.r=this.g=this.b=this.a=0,this.rgba=[,,,,],this.rgba[0]=0,this.rgba[1]=0,this.rgba[2]=0,this.rgba[3]=0}static createByQuadruplet(A){let Q=new M8;return Q.r=A[0]|0,Q.g=A[1]|0,Q.b=A[2]|0,Q.a=A[3]|0,Q._loadUINT32(),Q._loadQuadruplet(),Q}static createByRGBA(A,Q,B,Y){let J=new M8;return J.r=A|0,J.g=Q|0,J.b=B|0,J.a=Y|0,J._loadUINT32(),J._loadQuadruplet(),J}static createByUint32(A){let Q=new M8;return Q.uint32=A>>>0,Q._loadRGBA(),Q._loadQuadruplet(),Q}from(A){this.r=A.r,this.g=A.g,this.b=A.b,this.a=A.a,this.uint32=A.uint32,this.rgba[0]=A.r,this.rgba[1]=A.g,this.rgba[2]=A.b,this.rgba[3]=A.a}getLuminosity(A){let Q=this.r,B=this.g,Y=this.b;if(A)Q=Math.min(255,255-this.a+this.a*Q/255),B=Math.min(255,255-this.a+this.a*B/255),Y=Math.min(255,255-this.a+this.a*Y/255);return Q*0.2126+B*0.7152+Y*0.0722}_loadUINT32(){this.uint32=(this.a<<24|this.b<<16|this.g<<8|this.r)>>>0}_loadRGBA(){this.r=this.uint32&255,this.g=this.uint32>>>8&255,this.b=this.uint32>>>16&255,this.a=this.uint32>>>24&255}_loadQuadruplet(){this.rgba[0]=this.r,this.rgba[1]=this.g,this.rgba[2]=this.b,this.rgba[3]=this.a}},x6=class{constructor(){ZA(this,"_pointArray"),ZA(this,"_width"),ZA(this,"_height"),this._width=0,this._height=0,this._pointArray=[]}getWidth(){return this._width}getHeight(){return this._height}setWidth(A){this._width=A}setHeight(A){this._height=A}getPointArray(){return this._pointArray}clone(){let A=new x6;A._width=this._width,A._height=this._height;for(let Q=0,B=this._pointArray.length;Q=X&&A=0;Q--)if(A.uint32===this._pointArray[Q].uint32)return!0;return!1}getNearestColor(A,Q){return this._pointArray[this._getNearestIndex(A,Q)|0]}getPointContainer(){return this._pointContainer}_nearestPointFromCache(A){return typeof this._i32idx[A]==="number"?this._i32idx[A]:-1}_getNearestIndex(A,Q){let B=this._nearestPointFromCache(""+Q.uint32);if(B>=0)return B;let Y=Number.MAX_VALUE;B=0;for(let J=0,C=this._pointArray.length;J{let B=iR(A.r,A.g,A.b),Y=iR(Q.r,Q.g,Q.b),J=A.r===A.g&&A.g===A.b?0:1+gf(B.h,lFA),X=(Q.r===Q.g&&Q.g===Q.b?0:1+gf(Y.h,lFA))-J;if(X)return-X;let G=A.getLuminosity(!0),W=Q.getLuminosity(!0);if(W-G!==0)return W-G;let F=(Y.s*100|0)-(B.s*100|0);if(F)return-F;return 0})}},xf={};f6(xf,{HueStatistics:()=>IZA,Palette:()=>JD,Point:()=>M8,PointContainer:()=>x6,ProgressTracker:()=>b6,arithmetic:()=>eFA});var UJB=class{constructor(){ZA(this,"num",0),ZA(this,"cols",[])}},IZA=class{constructor(A,Q){ZA(this,"_numGroups"),ZA(this,"_minCols"),ZA(this,"_stats"),ZA(this,"_groupsFull"),this._numGroups=A,this._minCols=Q,this._stats=[];for(let B=0;B<=A;B++)this._stats[B]=new UJB;this._groupsFull=0}check(A){if(this._groupsFull===this._numGroups+1)this.check=()=>{};let Q=A&255,B=A>>>8&255,Y=A>>>16&255,J=Q===B&&B===Y?0:1+gf(iR(Q,B,Y).h,this._numGroups),C=this._stats[J],X=this._minCols;if(C.num++,C.num>X)return;if(C.num===X)this._groupsFull++;if(C.num<=X)this._stats[J].cols.push(A)}injectIntoDictionary(A){for(let Q=0;Q<=this._numGroups;Q++)if(this._stats[Q].num<=this._minCols)this._stats[Q].cols.forEach((B)=>{if(!A[B])A[B]=1;else A[B]++})}injectIntoArray(A){for(let Q=0;Q<=this._numGroups;Q++)if(this._stats[Q].num<=this._minCols)this._stats[Q].cols.forEach((B)=>{if(A.indexOf(B)===-1)A.push(B)})}},HZA=class{constructor(A,Q){ZA(this,"progress"),ZA(this,"_step"),ZA(this,"_range"),ZA(this,"_last"),ZA(this,"_progressRange"),this._range=A,this._progressRange=Q,this._step=Math.max(1,this._range/(HZA.steps+1)|0),this._last=-this._step,this.progress=0}shouldNotify(A){if(A-this._last>=this._step)return this._last=A,this.progress=Math.min(this._progressRange*this._last/this._range,this._progressRange),!0;return!1}},b6=HZA;ZA(b6,"steps",100);var C9=3,EJB=class{constructor(A){ZA(this,"r"),ZA(this,"g"),ZA(this,"b"),ZA(this,"a"),this.r=this.g=this.b=this.a=A}toPoint(){return M8.createByRGBA(this.r>>C9,this.g>>C9,this.b>>C9,this.a>>C9)}subtract(A,Q,B,Y){this.r-=A|0,this.g-=Q|0,this.b-=B|0,this.a-=Y|0}},CB=class extends YD{constructor(A,Q=256){super();ZA(this,"_pointArray"),ZA(this,"_networkSize"),ZA(this,"_network"),ZA(this,"_sampleFactor"),ZA(this,"_radPower"),ZA(this,"_freq"),ZA(this,"_bias"),ZA(this,"_distance"),this._distance=A,this._pointArray=[],this._sampleFactor=1,this._networkSize=Q,this._distance.setWhitePoint(255<>3)*CB._radiusBias,G=X>>CB._radiusBiasShift;if(G<=1)G=0;for(let Z=0;Z>>0;let W;if(Q=Q)U-=Q;if(Z++,J===0)J=1;if(Z%J===0){if(C-=C/B|0,X-=X/CB._radiusDecrease|0,G=X>>CB._radiusBiasShift,G<=1)G=0;for(let D=0;D>>0}}}_buildPalette(){let A=new JD;return this._network.forEach((Q)=>{A.add(Q.toPoint())}),A.sort(),A}_alterNeighbour(A,Q,B,Y,J,C){let X=Q-A;if(X<-1)X=-1;let G=Q+A;if(G>this._networkSize)G=this._networkSize;let W=Q+1,F=Q-1,Z=1;while(WX){let U=this._radPower[Z++]/CB._alphaRadBias;if(WX){let $=this._network[F--];$.subtract(U*($.r-J),U*($.g-Y),U*($.b-B),U*($.a-C))}}}_alterSingle(A,Q,B,Y,J,C){A/=CB._initAlpha;let X=this._network[Q];X.subtract(A*(X.r-J),A*(X.g-Y),A*(X.b-B),A*(X.a-C))}_contest(A,Q,B,Y){let J=1020<>CB._initialBiasShift-C9);if($>CB._betaShift;this._freq[F]-=E,this._bias[F]+=E<>CB._betaShift);ZA(g0,"_betaGamma",CB._initialBias<>X9,this.g>>X9,this.b>>X9,this.a>>X9)}subtract(A,Q,B,Y){this.r-=A,this.g-=Q,this.b-=B,this.a-=Y}},XB=class extends YD{constructor(A,Q=256){super();ZA(this,"_pointArray"),ZA(this,"_networkSize"),ZA(this,"_network"),ZA(this,"_sampleFactor"),ZA(this,"_radPower"),ZA(this,"_freq"),ZA(this,"_bias"),ZA(this,"_distance"),this._distance=A,this._pointArray=[],this._sampleFactor=1,this._networkSize=Q,this._distance.setWhitePoint(255<>3)*XB._radiusBias,G=X>>XB._radiusBiasShift;if(G<=1)G=0;for(let Z=0;Z=Q)U-=Q;if(Z++,J===0)J=1;if(Z%J===0){if(C-=C/B,X-=X/XB._radiusDecrease,G=X>>XB._radiusBiasShift,G<=1)G=0;for(let D=0;D{A.add(Q.toPoint())}),A.sort(),A}_alterNeighbour(A,Q,B,Y,J,C){let X=Q-A;if(X<-1)X=-1;let G=Q+A;if(G>this._networkSize)G=this._networkSize;let W=Q+1,F=Q-1,Z=1;while(WX){let U=this._radPower[Z++]/XB._alphaRadBias;if(WX){let $=this._network[F--];$.subtract(U*($.r-J),U*($.g-Y),U*($.b-B),U*($.a-C))}}}_alterSingle(A,Q,B,Y,J,C){A/=XB._initAlpha;let X=this._network[Q];X.subtract(A*(X.r-J),A*(X.g-Y),A*(X.b-B),A*(X.a-C))}_contest(A,Q,B,Y){let J=1020<>XB._initialBiasShift-X9);if($>XB._betaShift;this._freq[F]-=E,this._bias[F]+=E<>XB._betaShift);ZA(h0,"_betaGamma",XB._initialBias<this._histogram[Y]-this._histogram[B]);if(A.length===0)return[];let Q;switch(this._method){case 1:let B=Math.min(A.length,this._initColors),Y=A[B-1],J=this._histogram[Y];Q=A.slice(0,B);let C=B,X=A.length;while(C+B)}_colorStats1D(A){let Q=this._histogram,B=A.getPointArray(),Y=B.length;for(let J=0;J{let Z=Math.round(F.w*F.h/X)*QD._boxPixels;if(Z<2)Z=2;let U={};this._iterateBox(F,Q,($)=>{let E=Y[$].uint32;if(this._hueStats.check(E),E in W)W[E]++;else if(E in U){if(++U[E]>=Z)W[E]=U[E]}else U[E]=1})}),this._hueStats.injectIntoDictionary(W)}_iterateBox(A,Q,B){let Y=A,J=Y.y*Q+Y.x,C=(Y.y+Y.h-1)*Q+(Y.x+Y.w-1),X=Q-Y.w+1,G=0,W=J;do B.call(this,W),W+=++G%Y.w===0?X:1;while(W<=C)}_makeBoxes(A,Q,B,Y){let J=A%B,C=Q%Y,X=A-J,G=Q-C,W=[];for(let F=0;Fthis._colors){C.length=0;for(let Z=0;Zthis._colors*3?this._initialDistance:this._distanceIncrement}if(X$.distance-U.distance);let Z=0;while(X=0;Z--)if(Y[Z]===0){if(Z!==F-1)B[Z]=B[F-1];--F}B.length=F,Q.sort(),yield{palette:Q,progress:100}}};function tU(A){let Q=[];for(let B=0;B0){let B=this._sums[Q],Y=this._reds[Q]/B,J=this._greens[Q]/B,C=this._blues[Q]/B,X=this._alphas[Q]/B,G=M8.createByRGBA(Y|0,J|0,C|0,X|0);A.add(G)}A.sort(),yield{palette:A,progress:100}}*_preparePalette(){yield*this._calculateMoments();let A=0,Q=tU(this._colors);for(let X=1;X1?this._calculateVariance(this._cubes[A]):0,Q[X]=this._cubes[X].volume>1?this._calculateVariance(this._cubes[X]):0;else Q[A]=0,X--;A=0;let G=Q[0];for(let W=1;W<=X;++W)if(Q[W]>G)G=Q[W],A=W;if(G<=0){this._colors=X+1;break}}let B=[],Y=[],J=[],C=[];for(let X=0;X0)B[X]=PQ._volume(this._cubes[X],this._momentsRed)/G|0,Y[X]=PQ._volume(this._cubes[X],this._momentsGreen)/G|0,J[X]=PQ._volume(this._cubes[X],this._momentsBlue)/G|0,C[X]=PQ._volume(this._cubes[X],this._momentsAlpha)/G|0;else B[X]=0,Y[X]=0,J[X]=0,C[X]=0}this._reds=tU(this._colors+1),this._greens=tU(this._colors+1),this._blues=tU(this._colors+1),this._alphas=tU(this._colors+1),this._sums=tU(this._colors+1);for(let X=0,G=this._pixels.length;X>Q)+1,Y=(A.g>>Q)+1,J=(A.b>>Q)+1,C=(A.a>>Q)+1;this._weights[C][B][Y][J]++,this._momentsRed[C][B][Y][J]+=A.r,this._momentsGreen[C][B][Y][J]+=A.g,this._momentsBlue[C][B][Y][J]+=A.b,this._momentsAlpha[C][B][Y][J]+=A.a,this._moments[C][B][Y][J]+=this._table[A.r]+this._table[A.g]+this._table[A.b]+this._table[A.a]}*_calculateMoments(){let A=[],Q=[],B=[],Y=[],J=[],C=[],X=AE(this._sideSize,this._sideSize,this._sideSize),G=AE(this._sideSize,this._sideSize,this._sideSize),W=AE(this._sideSize,this._sideSize,this._sideSize),F=AE(this._sideSize,this._sideSize,this._sideSize),Z=AE(this._sideSize,this._sideSize,this._sideSize),U=AE(this._sideSize,this._sideSize,this._sideSize),$=0,E=new b6(this._alphaMaxSideIndex*this._maxSideIndex,99);for(let K=1;K<=this._alphaMaxSideIndex;++K){QE(X,this._sideSize,this._sideSize,this._sideSize,0),QE(G,this._sideSize,this._sideSize,this._sideSize,0),QE(W,this._sideSize,this._sideSize,this._sideSize,0),QE(F,this._sideSize,this._sideSize,this._sideSize,0),QE(Z,this._sideSize,this._sideSize,this._sideSize,0),QE(U,this._sideSize,this._sideSize,this._sideSize,0);for(let I=1;I<=this._maxSideIndex;++I,++$){if(E.shouldNotify($))yield{progress:E.progress};BE(A,this._sideSize,0),BE(Q,this._sideSize,0),BE(B,this._sideSize,0),BE(Y,this._sideSize,0),BE(J,this._sideSize,0),BE(C,this._sideSize,0);for(let V=1;V<=this._maxSideIndex;++V){let H=0,D=0,L=0,z=0,M=0,N=0;for(let q=1;q<=this._maxSideIndex;++q)H+=this._weights[K][I][V][q],D+=this._momentsRed[K][I][V][q],L+=this._momentsGreen[K][I][V][q],z+=this._momentsBlue[K][I][V][q],M+=this._momentsAlpha[K][I][V][q],N+=this._moments[K][I][V][q],A[q]+=H,Q[q]+=D,B[q]+=L,Y[q]+=z,J[q]+=M,C[q]+=N,X[I][V][q]=X[I-1][V][q]+A[q],G[I][V][q]=G[I-1][V][q]+Q[q],W[I][V][q]=W[I-1][V][q]+B[q],F[I][V][q]=F[I-1][V][q]+Y[q],Z[I][V][q]=Z[I-1][V][q]+J[q],U[I][V][q]=U[I-1][V][q]+C[q],this._weights[K][I][V][q]=this._weights[K-1][I][V][q]+X[I][V][q],this._momentsRed[K][I][V][q]=this._momentsRed[K-1][I][V][q]+G[I][V][q],this._momentsGreen[K][I][V][q]=this._momentsGreen[K-1][I][V][q]+W[I][V][q],this._momentsBlue[K][I][V][q]=this._momentsBlue[K-1][I][V][q]+F[I][V][q],this._momentsAlpha[K][I][V][q]=this._momentsAlpha[K-1][I][V][q]+Z[I][V][q],this._moments[K][I][V][q]=this._moments[K-1][I][V][q]+U[I][V][q]}}}}static _volumeFloat(A,Q){return Q[A.alphaMaximum][A.redMaximum][A.greenMaximum][A.blueMaximum]-Q[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMaximum]-Q[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMaximum]+Q[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMaximum]-Q[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMaximum]+Q[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMaximum]+Q[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMaximum]-Q[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(Q[A.alphaMaximum][A.redMaximum][A.greenMaximum][A.blueMinimum]-Q[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMinimum]-Q[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMinimum]+Q[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]-Q[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMinimum]+Q[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]+Q[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]-Q[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum])}static _volume(A,Q){return PQ._volumeFloat(A,Q)|0}static _top(A,Q,B,Y){let J;switch(Q){case PQ._alpha:J=Y[B][A.redMaximum][A.greenMaximum][A.blueMaximum]-Y[B][A.redMaximum][A.greenMinimum][A.blueMaximum]-Y[B][A.redMinimum][A.greenMaximum][A.blueMaximum]+Y[B][A.redMinimum][A.greenMinimum][A.blueMaximum]-(Y[B][A.redMaximum][A.greenMaximum][A.blueMinimum]-Y[B][A.redMaximum][A.greenMinimum][A.blueMinimum]-Y[B][A.redMinimum][A.greenMaximum][A.blueMinimum]+Y[B][A.redMinimum][A.greenMinimum][A.blueMinimum]);break;case PQ._red:J=Y[A.alphaMaximum][B][A.greenMaximum][A.blueMaximum]-Y[A.alphaMaximum][B][A.greenMinimum][A.blueMaximum]-Y[A.alphaMinimum][B][A.greenMaximum][A.blueMaximum]+Y[A.alphaMinimum][B][A.greenMinimum][A.blueMaximum]-(Y[A.alphaMaximum][B][A.greenMaximum][A.blueMinimum]-Y[A.alphaMaximum][B][A.greenMinimum][A.blueMinimum]-Y[A.alphaMinimum][B][A.greenMaximum][A.blueMinimum]+Y[A.alphaMinimum][B][A.greenMinimum][A.blueMinimum]);break;case PQ._green:J=Y[A.alphaMaximum][A.redMaximum][B][A.blueMaximum]-Y[A.alphaMaximum][A.redMinimum][B][A.blueMaximum]-Y[A.alphaMinimum][A.redMaximum][B][A.blueMaximum]+Y[A.alphaMinimum][A.redMinimum][B][A.blueMaximum]-(Y[A.alphaMaximum][A.redMaximum][B][A.blueMinimum]-Y[A.alphaMaximum][A.redMinimum][B][A.blueMinimum]-Y[A.alphaMinimum][A.redMaximum][B][A.blueMinimum]+Y[A.alphaMinimum][A.redMinimum][B][A.blueMinimum]);break;case PQ._blue:J=Y[A.alphaMaximum][A.redMaximum][A.greenMaximum][B]-Y[A.alphaMaximum][A.redMaximum][A.greenMinimum][B]-Y[A.alphaMaximum][A.redMinimum][A.greenMaximum][B]+Y[A.alphaMaximum][A.redMinimum][A.greenMinimum][B]-(Y[A.alphaMinimum][A.redMaximum][A.greenMaximum][B]-Y[A.alphaMinimum][A.redMaximum][A.greenMinimum][B]-Y[A.alphaMinimum][A.redMinimum][A.greenMaximum][B]+Y[A.alphaMinimum][A.redMinimum][A.greenMinimum][B]);break;default:throw Error("impossible")}return J|0}static _bottom(A,Q,B){switch(Q){case PQ._alpha:return-B[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMaximum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMaximum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMaximum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(-B[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMinimum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);case PQ._red:return-B[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMaximum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMaximum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMaximum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(-B[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMinimum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);case PQ._green:return-B[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMaximum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMaximum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMaximum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(-B[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);case PQ._blue:return-B[A.alphaMaximum][A.redMaximum][A.greenMaximum][A.blueMinimum]+B[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]-(-B[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMinimum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);default:return 0}}_calculateVariance(A){let Q=PQ._volume(A,this._momentsRed),B=PQ._volume(A,this._momentsGreen),Y=PQ._volume(A,this._momentsBlue),J=PQ._volume(A,this._momentsAlpha),C=PQ._volumeFloat(A,this._moments),X=PQ._volume(A,this._weights),G=Q*Q+B*B+Y*Y+J*J;return C-G/X}_maximize(A,Q,B,Y,J,C,X,G,W){let F=PQ._bottom(A,Q,this._momentsRed)|0,Z=PQ._bottom(A,Q,this._momentsGreen)|0,U=PQ._bottom(A,Q,this._momentsBlue)|0,$=PQ._bottom(A,Q,this._momentsAlpha)|0,E=PQ._bottom(A,Q,this._weights)|0,K=0,I=-1;for(let V=B;VK)K=q,I=V}}}return{max:K,position:I}}_cut(A,Q){let B,Y=PQ._volume(A,this._momentsRed),J=PQ._volume(A,this._momentsGreen),C=PQ._volume(A,this._momentsBlue),X=PQ._volume(A,this._momentsAlpha),G=PQ._volume(A,this._weights),W=this._maximize(A,PQ._red,A.redMinimum+1,A.redMaximum,Y,J,C,X,G),F=this._maximize(A,PQ._green,A.greenMinimum+1,A.greenMaximum,Y,J,C,X,G),Z=this._maximize(A,PQ._blue,A.blueMinimum+1,A.blueMaximum,Y,J,C,X,G),U=this._maximize(A,PQ._alpha,A.alphaMinimum+1,A.alphaMaximum,Y,J,C,X,G);if(U.max>=W.max&&U.max>=F.max&&U.max>=Z.max){if(B=PQ._alpha,U.position<0)return!1}else if(W.max>=U.max&&W.max>=F.max&&W.max>=Z.max)B=PQ._red;else if(F.max>=U.max&&F.max>=W.max&&F.max>=Z.max)B=PQ._green;else B=PQ._blue;switch(Q.redMaximum=A.redMaximum,Q.greenMaximum=A.greenMaximum,Q.blueMaximum=A.blueMaximum,Q.alphaMaximum=A.alphaMaximum,B){case PQ._red:Q.redMinimum=A.redMaximum=W.position,Q.greenMinimum=A.greenMinimum,Q.blueMinimum=A.blueMinimum,Q.alphaMinimum=A.alphaMinimum;break;case PQ._green:Q.greenMinimum=A.greenMaximum=F.position,Q.redMinimum=A.redMinimum,Q.blueMinimum=A.blueMinimum,Q.alphaMinimum=A.alphaMinimum;break;case PQ._blue:Q.blueMinimum=A.blueMaximum=Z.position,Q.redMinimum=A.redMinimum,Q.greenMinimum=A.greenMinimum,Q.alphaMinimum=A.alphaMinimum;break;case PQ._alpha:Q.alphaMinimum=A.alphaMaximum=U.position,Q.blueMinimum=A.blueMinimum,Q.redMinimum=A.redMinimum,Q.greenMinimum=A.greenMinimum;break}return A.volume=(A.redMaximum-A.redMinimum)*(A.greenMaximum-A.greenMinimum)*(A.blueMaximum-A.blueMinimum)*(A.alphaMaximum-A.alphaMinimum),Q.volume=(Q.redMaximum-Q.redMinimum)*(Q.greenMaximum-Q.greenMinimum)*(Q.blueMaximum-Q.blueMinimum)*(Q.alphaMaximum-Q.alphaMinimum),!0}_initialize(A){this._colors=A,this._cubes=[];for(let Q=0;QrR,ErrorDiffusionArray:()=>t1,ErrorDiffusionArrayKernel:()=>qZA,ErrorDiffusionRiemersma:()=>ff,NearestColor:()=>LZA});var rR=class{quantizeSync(A,Q){for(let B of this.quantize(A,Q))if(B.pointContainer)return B.pointContainer;throw Error("unreachable")}},LZA=class extends rR{constructor(A){super();ZA(this,"_distance"),this._distance=A}*quantize(A,Q){let B=A.getPointArray(),Y=A.getWidth(),J=A.getHeight(),C=new b6(J,99);for(let X=0;X{return A[A.FloydSteinberg=0]="FloydSteinberg",A[A.FalseFloydSteinberg=1]="FalseFloydSteinberg",A[A.Stucki=2]="Stucki",A[A.Atkinson=3]="Atkinson",A[A.Jarvis=4]="Jarvis",A[A.Burkes=5]="Burkes",A[A.Sierra=6]="Sierra",A[A.TwoSierra=7]="TwoSierra",A[A.SierraLite=8]="SierraLite",A})(qZA||{}),t1=class extends rR{constructor(A,Q,B=!0,Y=0,J=!1){super();ZA(this,"_minColorDistance"),ZA(this,"_serpentine"),ZA(this,"_kernel"),ZA(this,"_calculateErrorLikeGIMP"),ZA(this,"_distance"),this._setKernel(Q),this._distance=A,this._minColorDistance=Y,this._serpentine=B,this._calculateErrorLikeGIMP=J}*quantize(A,Q){let B=A.getPointArray(),Y=new M8,J=A.getWidth(),C=A.getHeight(),X=[],G=1,W=1;for(let Z of this._kernel){let U=Z[2]+1;if(W=0&&k+I=0&&T+ZQ)A.length=Q;let B=A.length;for(let Y=0;Y=0&&A.x=0&&A.y{let F=B[G+W*Y],{r:Z,g:U,b:$,a:E}=F;for(let H=0;HqJB});var NJB=0.01,LJB=0.03;function qJB(A,Q){if(A.getHeight()!==Q.getHeight()||A.getWidth()!==Q.getWidth())throw Error("Images have different sizes!");let Y=255,J=(NJB*Y)**2,C=(LJB*Y)**2,X=0,G=0;return MJB(A,Q,(W,F,Z,U)=>{let $=0,E=0,K=0;for(let L=0;Lprocess.nextTick(A):(A)=>setTimeout(A,0);function MZA(A,{colorDistanceFormula:Q,paletteQuantization:B,colors:Y}={}){let J=RZA(Q),C=RJB(J,B,Y);return A.forEach((X)=>C.sample(X)),C.quantizeSync()}function zZA(A,Q,{colorDistanceFormula:B,imageQuantization:Y}={}){let J=RZA(B);return zJB(J,Y).quantizeSync(A,Q)}function RZA(A="euclidean-bt709"){switch(A){case"cie94-graphic-arts":return new GZA;case"cie94-textiles":return new XZA;case"ciede2000":return new uC;case"color-metric":return new WZA;case"euclidean":return new FZA;case"euclidean-bt709":return new ZZA;case"euclidean-bt709-noalpha":return new $ZA;case"manhattan":return new UZA;case"manhattan-bt709":return new KZA;case"manhattan-nommyde":return new EZA;case"pngquant":return new VZA;default:throw Error(`Unknown colorDistanceFormula ${A}`)}}function zJB(A,Q="floyd-steinberg"){switch(Q){case"nearest":return new LZA(A);case"riemersma":return new ff(A);case"floyd-steinberg":return new t1(A,0);case"false-floyd-steinberg":return new t1(A,1);case"stucki":return new t1(A,2);case"atkinson":return new t1(A,3);case"jarvis":return new t1(A,4);case"burkes":return new t1(A,5);case"sierra":return new t1(A,6);case"two-sierra":return new t1(A,7);case"sierra-lite":return new t1(A,8);default:throw Error(`Unknown imageQuantization ${Q}`)}}function RJB(A,Q="wuquant",B=256){switch(Q){case"neuquant":return new g0(A,B);case"rgbquant":return new DZA(A,B);case"wuquant":return new YE(A,B);case"neuquant-float":return new h0(A,B);default:throw Error(`Unknown paletteQuantization ${Q}`)}}var wJB=SB.object({colors:SB.number().optional(),colorDistanceFormula:SB.union([SB.literal("cie94-textiles"),SB.literal("cie94-graphic-arts"),SB.literal("ciede2000"),SB.literal("color-metric"),SB.literal("euclidean"),SB.literal("euclidean-bt709-noalpha"),SB.literal("euclidean-bt709"),SB.literal("manhattan"),SB.literal("manhattan-bt709"),SB.literal("manhattan-nommyde"),SB.literal("pngquant")]).optional(),paletteQuantization:SB.union([SB.literal("neuquant"),SB.literal("neuquant-float"),SB.literal("rgbquant"),SB.literal("wuquant")]).optional(),imageQuantization:SB.union([SB.literal("nearest"),SB.literal("riemersma"),SB.literal("floyd-steinberg"),SB.literal("false-floyd-steinberg"),SB.literal("stucki"),SB.literal("atkinson"),SB.literal("jarvis"),SB.literal("burkes"),SB.literal("sierra"),SB.literal("two-sierra"),SB.literal("sierra-lite")]).optional()}),wZA={quantize(A,Q){let{colors:B,colorDistanceFormula:Y,paletteQuantization:J,imageQuantization:C}=wJB.parse(Q),X=xf.PointContainer.fromUint8Array(A.bitmap.data,A.bitmap.width,A.bitmap.height),G=MZA([X],{colors:B,colorDistanceFormula:Y,paletteQuantization:J}),W=zZA(X,G,{colorDistanceFormula:Y,imageQuantization:C});return A.bitmap.data=Buffer.from(W.toUint8Array()),A}};var OJB=[pU,_7A,v7A,iU,RFA,wFA,aU,jFA,OFA,PFA,TFA,xFA,fFA,bFA,mC,dFA,cFA,wZA],PJB=[r3,w1A,XR,WR,$R,PR],f$Y={bmp:r3().mime,gif:XR().mime,jpeg:WR().mime,png:$R().mime,tiff:PR().mime},JE=MFA({formats:PJB,plugins:OJB});var R8={OPTIMIZED_DIR:".optimized",TEMP_DIR:"hytopia-models-temp",CHECKSUM_EXT:".md5",VERSION:4,DATA_EXT:".data.json",DIRECTORIES:[PY.assetsLibraryPath,jJ.resolve(process.cwd(),"assets")].filter(Boolean),OPTIMIZER_RUNS:[{suffix:"",options:["--compress","false","--instance","false","--simplify","false","--texture-compress","false"],stripAnimations:!1,optimalMaxMeshCount:10,optimalMaxMeshHint:"Reduce nodes/meshes in your source model, or use fewer unique materials so primitives can be merged in the generated optimized model.",keepEmptyNamedNodes:!1},{suffix:"-named-nodes",options:["--compress","false","--flatten","false","--instance","false","--simplify","false","--join","false","--prune","false","--texture-compress","false"],stripAnimations:!1,optimalMaxMeshCount:20,optimalMaxMeshHint:"Use fewer unique materials in your source model so primitives sharing the same material can be joined in the generated optimized model. Named nodes are preserved, reduce unnecessary named nodes to further reduce mesh count.",keepEmptyNamedNodes:!0},{suffix:"-no-animations",options:["--compress","false","--instance","false","--simplify","false","--texture-compress","false"],stripAnimations:!0,optimalMaxMeshCount:1,optimalMaxMeshHint:"Use a single material/texture atlas in your source model so all primitives can merge into one mesh in the generated optimized model.",keepEmptyNamedNodes:!1}]},aR=[oI,eI];class yY{static instance=new yY;optimize=process.env.NODE_ENV!=="production";_modelUriAnimationNames=new Map;_modelUriBoundingBoxes=new Map;_modelUriNodeNames=new Map;_modelUriTrimeshes=new Map;constructor(){}async preloadModels(){let A=await this._getAbsoluteModelPaths();console.info(`ModelRegistry.preloadModels(): Preloading ${A.length} models...`);let Q=performance.now();for(let Y of A){if(this.optimize)await this._resolveOptimizedModelPath(Y);await this._loadModelData(Y)}let B=performance.now();console.info(`ModelRegistry.preloadModels(): Preloaded ${A.length} models in ${B-Q}ms!`)}getAllModelUris(){return Array.from(this._modelUriBoundingBoxes.keys())}getAnimationNames(A){let Q=this._modelUriAnimationNames.get(A);if(!Q)return l.error(`ModelRegistry.getAnimationNames(): Model ${A} not found!`),[];return Q}getBoundingBox(A){let Q=this._modelUriBoundingBoxes.get(A);if(!Q)return l.error(`ModelRegistry.getBoundingBox(): Model ${A} not found!`),{min:{x:0,y:0,z:0},max:{x:1,y:1,z:1}};return Q}getDepth(A){let Q=this.getBoundingBox(A);return Q.max.z-Q.min.z}getHeight(A){let Q=this.getBoundingBox(A);return Q.max.y-Q.min.y}getNodeNames(A){let Q=this._modelUriNodeNames.get(A);if(!Q)return l.error(`ModelRegistry.getNodeNames(): Model ${A} not found!`),[];return Q}getTrimesh(A,Q={x:1,y:1,z:1}){let B=this._modelUriTrimeshes.get(A);if(!B){l.error(`ModelRegistry.getTrimesh(): Model ${A} not found!`);return}let Y=B.vertices;if(Q.x!==1||Q.y!==1||Q.z!==1){Y=new Float32Array(Y.length);for(let J=0;JK.getName()),Z=G.getRoot().listAnimations().map((K)=>K.getName()),U=await this._buildTrimesh(G),$={},E=new n4().registerExtensions(aR);for(let K of R8.OPTIMIZER_RUNS){let I=this._buildOptimizedModelPath(A),V=this._buildOptimizedSuffixedModelPath(I,K.suffix);$[K.suffix]={meshCount:(await E.read(V)).getRoot().listMeshes().length}}X={schemaVersion:R8.VERSION,source:{uri:Y,sha256:J},animationNames:Z,boundingBox:{min:{x:W.min[0],y:W.min[1],z:W.min[2]},max:{x:W.max[0],y:W.max[1],z:W.max[2]}},nodeNames:F,trimesh:U?{vertices:Array.from(U.vertices),indices:Array.from(U.indices)}:void 0,optimizedModelData:$};try{let K=jJ.dirname(B);z8.mkdirSync(K,{recursive:!0}),z8.writeFileSync(B,JSON.stringify(X))}catch(K){l.warning(`ModelRegistry._loadModelData(): Failed to write data file for ${Y}. Error: ${String(K)}`)}}if(process.env.NODE_ENV!=="production"&&!C)for(let G of R8.OPTIMIZER_RUNS){let W=X.optimizedModelData[G.suffix].meshCount;if(W>G.optimalMaxMeshCount)l.warning(`Model "${Y}" (${G.suffix}) has ${W} meshes (less is better, try not to exceed: ${G.optimalMaxMeshCount}). This may impact FPS if this model is used in a game. ${G.optimalMaxMeshHint}`)}this._modelUriAnimationNames.set(Y,X.animationNames),this._modelUriBoundingBoxes.set(Y,X.boundingBox),this._modelUriNodeNames.set(Y,X.nodeNames),this._modelUriTrimeshes.set(Y,X.trimesh?{vertices:new Float32Array(X.trimesh.vertices),indices:new Uint32Array(X.trimesh.indices)}:void 0)}async _resolveOptimizedModelPath(A){let Q=this._buildOptimizedModelPath(A);if(this._isOptimizedVersionValid(A))return Q;return await this._optimizeModel(A,Q)}_isOptimizedVersionValid(A){let Q=`${this._buildOptimizedModelPath(A)}${R8.CHECKSUM_EXT}`;if(!z8.existsSync(Q))return!1;let B=this._calculateChecksum(A),Y=z8.readFileSync(Q,"utf8");return B===Y}_calculateChecksum(A){if(!z8.existsSync(A))return"";let Q=z8.readFileSync(A);return TJB.createHash("sha256").update(Q.toString("base64")).update(R8.VERSION.toString()).digest("hex")}_buildOptimizedModelPath(A){let Q=jJ.basename(A),B=Q.replace(/\.[^/.]+$/,""),Y=jJ.dirname(A),J=jJ.join(Y,R8.OPTIMIZED_DIR,B);return jJ.join(J,Q)}_buildOptimizedSuffixedModelPath(A,Q){return A.replace(/(\.[^/.]+)$/,`${Q}.glb`)}async _buildTrimesh(A,Q=1,B=0.001){let Y=pCA(A);Y.setLogger(new S9(mI.WARN)),await Y.transform(hCA({pivot:"center"}),mh(),uh(),fh(),Y1A({simplifier:jZA.MeshoptSimplifier,ratio:Q,error:B}),cCA());for(let $ of Y.getRoot().listScenes())for(let E of $.listChildren())uCA(E);let J=[],C=0,X=0;for(let $ of Y.getRoot().listMeshes())for(let E of $.listPrimitives()){let K=E.getAttribute("POSITION"),I=E.getIndices();if(!K||!I)continue;let V=K.getArray(),H=I.getArray(),D=H instanceof Uint32Array?H:new Uint32Array(H);if(V.length===0||D.length===0)continue;J.push({vertices:V,indices:D}),C+=V.length,X+=D.length}if(J.length===0){l.error("ModelRegistry._buildTrimesh(): Model has no primitives with POSITION and INDICES!");return}let G=new Float32Array(C),W=new Uint32Array(X),F=0,Z=0,U=0;for(let $ of J){G.set($.vertices,F);let E=$.vertices.length/3;for(let K=0;K<$.indices.length;K++)W[U+K]=$.indices[K]+Z;F+=$.vertices.length,U+=$.indices.length,Z+=E}return{vertices:G,indices:W}}async _optimizeModel(A,Q){let B=jJ.dirname(Q);z8.rmSync(B,{recursive:!0,force:!0}),z8.mkdirSync(B,{recursive:!0}),console.info(`ModelRegistry: Optimizing model ${this._absoluteModelPathToModelUri(A)}...`);for(let Y of R8.OPTIMIZER_RUNS){let J=this._buildOptimizedSuffixedModelPath(Q,Y.suffix),C=await this._preprocessOptimizableModel(A,Y),X=await qI("npx",["@gltf-transform/cli","optimize",C,J,...Y.options]);if(X.stderr)return l.warning(`ModelRegistry._optimizeModel(): Error optimizing model ${this._absoluteModelPathToModelUri(A)}, defaulting to unoptimized model. Error: ${X.stderr}`),A;await this._embedModelMetadata(J);let G=await qI("npx",["@gltf-transform/cli","uastc",J,J,"--level","4","--zstd","10"]);if(G.stderr)l.warning(`ModelRegistry._optimizeModel(): Error compressing textures for model ${this._absoluteModelPathToModelUri(A)}, continuing without compression. Error: ${G.stderr}`)}return z8.writeFileSync(`${Q}${R8.CHECKSUM_EXT}`,this._calculateChecksum(A)),Q}async _embedModelMetadata(A){try{let Q=new n4().registerExtensions(aR),B=await Q.read(A);for(let Y of B.getRoot().listMaterials()){let C=Y.getBaseColorTexture()?.getImage(),X=!1;if(C)try{let G=Y.getAlphaMode()==="MASK"?Y.getAlphaCutoff()??0.5:0,W=Y.getAlpha(),F=G/W*255,{data:Z}=(await JE.read(Buffer.from(C))).bitmap;for(let U=3;U=F&&Z[U]<255){X=!0;break}}catch{}Y.setExtras({...Y.getExtras(),hasTransparency:X})}await Q.write(A,B)}catch(Q){l.warning(`ModelRegistry._embedModelMetadata(): Failed to embed metadata for ${A}. Error: ${String(Q)}`)}}async _preprocessOptimizableModel(A,Q){let B=new n4().registerExtensions(aR),Y=await B.read(A),J=!1;if(Q.stripAnimations){let C=Y.getRoot().listAnimations();if(C.length>0)C.forEach((X)=>X.dispose()),J=!0}if(Q.keepEmptyNamedNodes)await Y.transform(mh({cleanup:!1}),uh({cleanup:!1,keepNamed:!0}),m3({keepLeaves:!0})),J=!0;if(J){let C=jJ.join(SJB.tmpdir(),R8.TEMP_DIR);z8.mkdirSync(C,{recursive:!0});let X=jJ.join(C,jJ.basename(A));return await B.write(X,Y),X}return A}}var FZ;((J)=>{J.DYNAMIC="dynamic";J.FIXED="fixed";J.KINEMATIC_POSITION="kinematic_position";J.KINEMATIC_VELOCITY="kinematic_velocity"})(FZ||={});var bf=0.001,OZA="dynamic";class y7 extends BQ{_additionalMass=0;_colliders=new Set;_explicitSleep=!1;_enabledPositions={x:!0,y:!0,z:!0};_enabledRotations={x:!0,y:!0,z:!0};_rigidBody;_rigidBodyDesc;_rigidBodyType;_simulation;constructor(A){super();A.type??=OZA,this._rigidBodyDesc=this._createRigidBodyDesc(A),this._rigidBodyType=A.type,this._applyRigidBodyOptions(A),this._autoAddToSimulation(A)}get additionalMass(){if(!this._requireNotRemoved("additionalMass"))return 0;return this._additionalMass}get additionalSolverIterations(){if(!this._requireNotRemoved("additionalSolverIterations"))return 0;return this._rigidBody?this._rigidBody.additionalSolverIterations():this._rigidBodyDesc.additionalSolverIterations}get angularDamping(){if(!this._requireNotRemoved("angularDamping"))return 0;return this._rigidBody?this._rigidBody.angularDamping():this._rigidBodyDesc.angularDamping}get angularVelocity(){if(!this._requireNotRemoved("angularVelocity"))return{x:0,y:0,z:0};return this._rigidBody?this._rigidBody.angvel():this._rigidBodyDesc.angvel}get colliders(){return this._colliders}get dominanceGroup(){if(!this._requireNotRemoved("dominanceGroup"))return 0;return this._rigidBody?this._rigidBody.dominanceGroup():this._rigidBodyDesc.dominanceGroup}get directionFromRotation(){let{x:A,y:Q,z:B,w:Y}=this.rotation;return{x:-2*(A*B+Y*Q),y:-2*(Q*B-Y*A),z:-(1-2*(A*A+Q*Q))}}get effectiveAngularInertia(){if(!this._requireNotRemoved("effectiveAngularInertia"))return;return this._rigidBody?this._rigidBody.effectiveAngularInertia():void 0}get effectiveInverseMass(){if(!this._requireNotRemoved("effectiveInverseMass"))return;return this._rigidBody?this._rigidBody.effectiveInvMass():void 0}get enabledRotations(){if(!this._requireNotRemoved("enabledRotations"))return{x:!0,y:!0,z:!0};return this._enabledRotations}get enabledPositions(){if(!this._requireNotRemoved("enabledPositions"))return{x:!0,y:!0,z:!0};return this._enabledPositions}get gravityScale(){if(!this._requireNotRemoved("gravityScale"))return 0;return this._rigidBody?this._rigidBody.gravityScale():this._rigidBodyDesc.gravityScale}get inverseMass(){if(!this._requireNotRemoved("inverseMass"))return;return this._rigidBody?this._rigidBody.invMass():void 0}get isCcdEnabled(){if(!this._requireNotRemoved("isCcdEnabled"))return!1;return this._rigidBody?this._rigidBody.isCcdEnabled():this._rigidBodyDesc.ccdEnabled}get isDynamic(){if(!this._requireNotRemoved("isDynamic"))return!1;return this._rigidBodyType==="dynamic"}get isEnabled(){if(!this._requireNotRemoved("isEnabled"))return!1;return this._rigidBody?this._rigidBody.isEnabled():this._rigidBodyDesc.enabled}get isFixed(){if(!this._requireNotRemoved("isFixed"))return!1;return this._rigidBodyType==="fixed"}get isKinematic(){if(!this._requireNotRemoved("isKinematic"))return!1;return["kinematic_position","kinematic_velocity"].includes(this._rigidBodyType)}get isKinematicPositionBased(){if(!this._requireNotRemoved("isKinematicPositionBased"))return!1;return this._rigidBodyType==="kinematic_position"}get isKinematicVelocityBased(){if(!this._requireNotRemoved("isKinematicVelocityBased"))return!1;return this._rigidBodyType==="kinematic_velocity"}get isMoving(){if(!this._requireNotRemoved("isMoving"))return!1;return this._rigidBody?this._rigidBody.isMoving():!1}get isRemoved(){return!this._rigidBody&&!this._rigidBodyDesc}get isSimulated(){if(!this._requireNotRemoved("isSimulated"))return!1;return this._rigidBody?!0:!1}get isSleeping(){if(!this._requireNotRemoved("isSleeping"))return!1;return this._rigidBody?this._rigidBody.isSleeping():this._rigidBodyDesc.sleeping}get linearDamping(){if(!this._requireNotRemoved("linearDamping"))return 0;return this._rigidBody?this._rigidBody.linearDamping():this._rigidBodyDesc.linearDamping}get linearVelocity(){if(!this._requireNotRemoved("linearVelocity"))return{x:0,y:0,z:0};return this._rigidBody?this._rigidBody.linvel():this._rigidBodyDesc.linvel}get localCenterOfMass(){if(!this._requireNotRemoved("localCenterOfMass"))return{x:0,y:0,z:0};return this._rigidBody?this._rigidBody.localCom():this._rigidBodyDesc.centerOfMass}get mass(){if(!this._requireNotRemoved("mass"))return 0;return this._rigidBody?this._rigidBody.mass():this._rigidBodyDesc.mass}get nextKinematicRotation(){if(!this._requireNotRemoved("nextKinematicRotation"))return{x:0,y:0,z:0,w:1};return this._rigidBody?this._rigidBody.nextRotation():this._rigidBodyDesc.rotation}get nextKinematicPosition(){if(!this._requireNotRemoved("nextKinematicPosition"))return{x:0,y:0,z:0};return this._rigidBody?this._rigidBody.nextTranslation():this._rigidBodyDesc.translation}get numColliders(){return this._colliders.size}get principalAngularInertia(){if(!this._requireNotRemoved("principalAngularInertia"))return{x:0,y:0,z:0};return this._rigidBody?this._rigidBody.principalInertia():this._rigidBodyDesc.principalAngularInertia}get principalAngularInertiaLocalFrame(){if(!this._requireNotRemoved("principalAngularInertiaLocalFrame"))return;return this._rigidBody?this._rigidBody.principalInertiaLocalFrame():void 0}get position(){if(!this._requireNotRemoved("position"))return{x:0,y:0,z:0};return this._rigidBody?this._rigidBody.translation():this._rigidBodyDesc.translation}get rawRigidBody(){if(!this._requireNotRemoved("rawRigidBody"))return;return this._rigidBody}get rotation(){if(!this._requireNotRemoved("rotation"))return{x:0,y:0,z:0,w:1};return this._rigidBody?this._rigidBody.rotation():this._rigidBodyDesc.rotation}get softCcdPrediction(){if(!this._requireNotRemoved("softCcdPrediction"))return 0;return this._rigidBody?this._rigidBody.softCcdPrediction():this._rigidBodyDesc.softCcdPrediction}get type(){if(!this._requireNotRemoved("type"))return"dynamic";return this._rigidBodyType}get worldCenterOfMass(){if(!this._requireNotRemoved("worldCenterOfMass"))return;return this._rigidBody?this._rigidBody.worldCom():void 0}setAdditionalMass(A){if(!this._requireDynamic("setAdditionalMass"))return;if(!this._requireNotRemoved("setAdditionalMass"))return;this._rigidBody?this._rigidBody.setAdditionalMass(A,!this._explicitSleep):this._rigidBodyDesc.setAdditionalMass(A)}setAdditionalMassProperties(A){if(!this._requireDynamic("setAdditionalMassProperties"))return;if(!this._requireNotRemoved("setAdditionalMassProperties"))return;let{additionalMass:Q,centerOfMass:B,principalAngularInertia:Y,principalAngularInertiaLocalFrame:J}=A;this._rigidBody?this._rigidBody.setAdditionalMassProperties(Q,B,Y,J,!this._explicitSleep):this._rigidBodyDesc.setAdditionalMassProperties(Q,B,Y,J)}setAdditionalSolverIterations(A){if(!this._requireDynamic("setAdditionalSolverIterations"))return;if(!this._requireNotRemoved("setAdditionalSolverIterations"))return;this._rigidBody?this._rigidBody.setAdditionalSolverIterations(A):this._rigidBodyDesc.setAdditionalSolverIterations(A)}setAngularDamping(A){if(!this._requireDynamic("setAngularDamping"))return;if(!this._requireNotRemoved("setAngularDamping"))return;this._rigidBody?this._rigidBody.setAngularDamping(A):this._rigidBodyDesc.setAngularDamping(A)}setAngularVelocity(A){if(!this._requireNotKinematicPositionBased("setAngularVelocity"))return;if(!this._requireNotRemoved("setAngularVelocity"))return;this._rigidBody?this._rigidBody.setAngvel(A,!this._explicitSleep):this._rigidBodyDesc.setAngvel(A)}setCcdEnabled(A){if(!this._requireDynamic("setCcdEnabled"))return;if(!this._requireNotRemoved("setCcdEnabled"))return;this._rigidBody?this._rigidBody.enableCcd(A):this._rigidBodyDesc.setCcdEnabled(A)}setDominanceGroup(A){if(!this._requireDynamic("setDominanceGroup"))return;if(!this._requireNotRemoved("setDominanceGroup"))return;this._rigidBody?this._rigidBody.setDominanceGroup(A):this._rigidBodyDesc.setDominanceGroup(A)}setEnabled(A){if(!this._requireNotRemoved("setEnabled"))return;this._rigidBody?this._rigidBody.setEnabled(A):this._rigidBodyDesc.setEnabled(A)}setEnabledPositions(A){if(!this._requireDynamic("setEnabledPositions"))return;if(!this._requireNotRemoved("setEnabledPositions"))return;this._rigidBody?this._rigidBody.setEnabledTranslations(A.x,A.y,A.z,!this._explicitSleep):this._rigidBodyDesc.enabledTranslations(A.x,A.y,A.z),this._enabledPositions=A}setEnabledRotations(A){if(!this._requireDynamic("setEnabledRotations"))return;if(!this._requireNotRemoved("setEnabledRotations"))return;this._rigidBody?this._rigidBody.setEnabledRotations(A.x,A.y,A.z,!this._explicitSleep):this._rigidBodyDesc.enabledRotations(A.x,A.y,A.z),this._enabledRotations=A}setGravityScale(A){if(!this._requireDynamic("setGravityScale"))return;if(!this._requireNotRemoved("setGravityScale"))return;this._rigidBody?this._rigidBody.setGravityScale(A,!this._explicitSleep):this._rigidBodyDesc.setGravityScale(A)}setLinearDamping(A){if(!this._requireDynamic("setLinearDamping"))return;if(!this._requireNotRemoved("setLinearDamping"))return;this._rigidBody?this._rigidBody.setLinearDamping(A):this._rigidBodyDesc.setLinearDamping(A)}setLinearVelocity(A){if(!this._requireNotKinematicPositionBased("setLinearVelocity"))return;if(!this._requireNotRemoved("setLinearVelocity"))return;this._rigidBody?this._rigidBody.setLinvel(A,!this._explicitSleep):this._rigidBodyDesc.setLinvel(A.x,A.y,A.z)}setNextKinematicRotation(A){if(!this._requireKinematic("setNextKinematicRotation"))return;if(!this._requireNotRemoved("setNextKinematicRotation"))return;this._rigidBody?this._rigidBody.setNextKinematicRotation(A):this._rigidBodyDesc.setRotation(A)}setNextKinematicPosition(A){if(!this._requireKinematic("setNextKinematicPosition"))return;if(!this._requireNotRemoved("setNextKinematicPosition"))return;this._rigidBody?this._rigidBody.setNextKinematicTranslation(A):this._rigidBodyDesc.setTranslation(A.x,A.y,A.z)}setPosition(A){if(!this._requireNotRemoved("setPosition"))return;this._rigidBody?this._rigidBody.setTranslation(A,!this._explicitSleep):this._rigidBodyDesc.setTranslation(A.x,A.y,A.z)}setRotation(A){if(!this._requireNotRemoved("setRotation"))return;this._rigidBody?this._rigidBody.setRotation(A,!this._explicitSleep):this._rigidBodyDesc.setRotation(A)}setSleeping(A){if(!this._requireDynamic("setSleeping"))return;if(!this._requireNotRemoved("setSleeping"))return;this._rigidBody?A?this._rigidBody.sleep():this._rigidBody.wakeUp():this._rigidBodyDesc.sleeping=A,this._explicitSleep=A}setSoftCcdPrediction(A){if(!this._requireDynamic("setSoftCcdPrediction"))return;if(!this._requireNotRemoved("setSoftCcdPrediction"))return;this._rigidBody?this._rigidBody.setSoftCcdPrediction(A):this._rigidBodyDesc.setSoftCcdPrediction(A)}setCollisionGroupsForSolidColliders(A){if(!this._requireNotRemoved("setCollisionGroupsForSolidColliders"))return;this._colliders.forEach((Q)=>{if(Q.isSensor)return;Q.setCollisionGroups(A)})}setCollisionGroupsForSensorColliders(A){if(!this._requireNotRemoved("setCollisionGroupsForSensorColliders"))return;this._colliders.forEach((Q)=>{if(!Q.isSensor)return;Q.setCollisionGroups(A)})}setType(A){if(!this._requireNotRemoved("setType"))return;let B={["dynamic"]:WB.RigidBodyType.Dynamic,["fixed"]:WB.RigidBodyType.Fixed,["kinematic_position"]:WB.RigidBodyType.KinematicPositionBased,["kinematic_velocity"]:WB.RigidBodyType.KinematicVelocityBased}[A];if(B===void 0)return l.error(`Invalid RigidBodyType: ${A}`);this._rigidBody?this._rigidBody.setBodyType(B,!this._explicitSleep):this._rigidBodyDesc.status=B,this._rigidBodyType=A}addForce(A){if(!this._requireNotRemoved("addForce"))return;if(!this._requireCreated("addForce"))return;if(!this._requireDynamic("addForce"))return;if(this._isNegligibleVector(A))return;this._rigidBody.addForce(A,!this._explicitSleep)}addTorque(A){if(!this._requireNotRemoved("addTorque"))return;if(!this._requireCreated("addTorque"))return;if(!this._requireDynamic("addTorque"))return;if(this._isNegligibleVector(A))return;this._rigidBody.addTorque(A,!this._explicitSleep)}addChildColliderToSimulation(A){if(!this._requireNotRemoved("addChildColliderToSimulation"))return;if(!this._requireCreated("addChildColliderToSimulation"))return;A.addToSimulation(this._simulation,this)}addToSimulation(A){if(!this._requireNotRemoved("addToSimulation"))return;if(this._rigidBody)return l.error("RigidBody.addToSimulation(): Rigid body already exists in the simulation!");this._simulation=A,this._rigidBody=this._simulation.createRawRigidBody(this._rigidBodyDesc),this._colliders.forEach((Q)=>{if(!Q.isSimulated)Q.addToSimulation(A,this)})}applyImpulse(A){if(!this._requireNotRemoved("applyImpulse"))return;if(!this._requireCreated("applyImpulse"))return;if(!this._requireDynamic("applyImpulse"))return;if(this._isNegligibleVector(A))return;this._rigidBody.applyImpulse(A,!this._explicitSleep)}applyImpulseAtPoint(A,Q){if(!this._requireNotRemoved("applyImpulseAtPoint"))return;if(!this._requireCreated("applyImpulseAtPoint"))return;if(!this._requireDynamic("applyImpulseAtPoint"))return;if(this._isNegligibleVector(A))return;this._rigidBody.applyImpulseAtPoint(A,Q,!this._explicitSleep)}applyTorqueImpulse(A){if(!this._requireNotRemoved("applyTorqueImpulse"))return;if(!this._requireCreated("applyTorqueImpulse"))return;if(!this._requireDynamic("applyTorqueImpulse"))return;this._rigidBody.applyTorqueImpulse(A,!this._explicitSleep)}createAndAddChildCollider(A){if(!this._requireNotRemoved("createAndAddChildCollider"))return null;return this._simulation?new h9({...A,parentRigidBody:this,simulation:this._simulation}):this._createAndAddPendingChildCollider(A)}createAndAddChildColliders(A){let Q=[];return A.forEach((B)=>{let Y=this.createAndAddChildCollider(B);if(Y)Q.push(Y)}),Q}getCollidersByTag(A){let Q=[];for(let B of this._colliders)if(B.tag===A)Q.push(B);return Q}linkCollider(A){if(!this._requireNotRemoved("linkCollider"))return;if(A.parentRigidBody!==this)return l.error("RigidBody.linkCollider(): Collider cannot be linked because it is not a child of this rigid body!");this._colliders.add(A)}lockAllRotations(){if(!this._requireNotRemoved("lockAllRotations"))return;this.setEnabledRotations({x:!1,y:!1,z:!1})}lockAllPositions(){if(!this._requireNotRemoved("lockAllPositions"))return;this.setEnabledPositions({x:!1,y:!1,z:!1})}removeFromSimulation(){if(!this._requireNotRemoved("removeFromSimulation"))return;if(!this._rigidBody)return l.error("RigidBody.removeFromSimulation(): Rigid body does not exist in the simulation!");this._colliders.forEach((A)=>{A.removeFromSimulation()}),this._simulation.removeRawRigidBody(this._rigidBody),this._simulation=void 0,this._rigidBody=void 0}unlinkCollider(A){if(!this._requireNotRemoved("unlinkCollider"))return;if(!A.isRemoved)return l.error("RigidBody.unlinkCollider(): Collider is still simulated and therefore cannot be unlinked from this rigid body!");this._colliders.delete(A)}resetAngularVelocity(){if(!this._requireNotRemoved("resetAngularVelocity"))return;if(!this._requireCreated("resetAngularVelocity"))return;this.setAngularVelocity({x:0,y:0,z:0})}resetForces(){if(!this._requireNotRemoved("resetForces"))return;if(!this._requireCreated("resetForces"))return;this._rigidBody.resetForces(!this._explicitSleep)}resetLinearVelocity(){if(!this._requireNotRemoved("resetLinearVelocity"))return;if(!this._requireCreated("resetLinearVelocity"))return;this.setLinearVelocity({x:0,y:0,z:0})}resetTorques(){if(!this._requireNotRemoved("resetTorques"))return;if(!this._requireCreated("resetTorques"))return;this._rigidBody.resetTorques(!this._explicitSleep)}sleep(){if(!this._requireNotRemoved("sleep"))return;this.setSleeping(!0)}wakeUp(){if(!this._requireNotRemoved("wakeUp"))return;this.setSleeping(!1)}_applyRigidBodyOptions(A){[["additionalMass",this.setAdditionalMass.bind(this)],["additionalMassProperties",this.setAdditionalMassProperties.bind(this)],["additionalSolverIterations",this.setAdditionalSolverIterations.bind(this)],["angularDamping",this.setAngularDamping.bind(this)],["angularVelocity",this.setAngularVelocity.bind(this)],["dominanceGroup",this.setDominanceGroup.bind(this)],["ccdEnabled",this.setCcdEnabled.bind(this)],["enabled",this.setEnabled.bind(this)],["enabledPositions",this.setEnabledPositions.bind(this)],["enabledRotations",this.setEnabledRotations.bind(this)],["gravityScale",this.setGravityScale.bind(this)],["linearDamping",this.setLinearDamping.bind(this)],["linearVelocity",this.setLinearVelocity.bind(this)],["position",this.setPosition.bind(this)],["rotation",this.setRotation.bind(this)],["sleeping",this.setSleeping.bind(this)],["softCcdPrediction",this.setSoftCcdPrediction.bind(this)]].forEach(([B,Y])=>{if(B in A)Y(A[B])})}_autoAddToSimulation(A){if(A.colliders)this._createAndAddPendingChildColliders(A.colliders);if(A.simulation)this.addToSimulation(A.simulation)}_createAndAddPendingChildCollider(A){if(!this._requireNotRemoved("createAndAddPendingChildCollider"))return null;if(!this._requireNotSimulated("createAndAddPendingChildCollider"))return null;let Q=new h9(A);return this._colliders.add(Q),Q}_createAndAddPendingChildColliders(A){let Q=[];return A.forEach((B)=>{let Y=this._createAndAddPendingChildCollider(B);if(Y)Q.push(Y)}),Q}_createRigidBodyDesc(A){let Q=A.type??OZA;return{["dynamic"]:()=>WB.RigidBodyDesc.dynamic(),["fixed"]:()=>WB.RigidBodyDesc.fixed(),["kinematic_position"]:()=>WB.RigidBodyDesc.kinematicPositionBased(),["kinematic_velocity"]:()=>WB.RigidBodyDesc.kinematicVelocityBased()}[Q]()}_requireCreated(A){if(!this._rigidBody||!this._simulation)l.error(`RigidBody._requireCreated(): Rigid body has not been created and therefore does not support the invoked method: ${A}()`);return!!this._rigidBody&&!!this._simulation}_requireDynamic(A){if(!this.isDynamic)l.error(`RigidBody._requireDynamic(): Rigid body is not dynamic and therefore does not support the invoked method: ${A}()`);return this.isDynamic}_requireKinematic(A){if(!this.isKinematic)l.error(`RigidBody._requireKinematic(): Rigid body is not kinematic and therefore does not support the invoked method: ${A}()`);return this.isKinematic}_requireNotKinematicPositionBased(A){if(this.isKinematicPositionBased)l.error(`RigidBody._requireNotKinematicPositionBased(): Rigid body is kinematic position based and therefore does not support the invoked method: ${A}()`);return!this.isKinematicPositionBased}_requireNotRemoved(A){if(!this._rigidBody&&!this._rigidBodyDesc)l.error(`RigidBody._requireNotRemoved(): Rigid body has been removed and therefore does not support the invoked method: ${A}()`);return!!this._rigidBody||!!this._rigidBodyDesc}_requireNotSimulated(A){if(this.isSimulated)l.error(`RigidBody._requireNotSimulated(): Rigid body is simulated and therefore does not support the invoked method: ${A}()`);return!this.isSimulated}_isNegligibleVector(A){return Math.abs(A.x){J[J.Average=0]="Average";J[J.Min=1]="Min";J[J.Multiply=2]="Multiply";J[J.Max=3]="Max"})(mf||={});var ZZ;((Z)=>{Z.NONE="none";Z.BALL="ball";Z.BLOCK="block";Z.CAPSULE="capsule";Z.CONE="cone";Z.CYLINDER="cylinder";Z.ROUND_CYLINDER="round-cylinder";Z.TRIMESH="trimesh";Z.VOXELS="voxels";Z.WEDGE="wedge"})(ZZ||={});class h9 extends BQ{_collider;_colliderDesc;_onCollision;_parentRigidBody;_relativePosition={x:0,y:0,z:0};_relativeRotation={x:0,y:0,z:0,w:1};_scale={x:1,y:1,z:1};_shape;_simulation;_tag;constructor(A){super();this._colliderDesc=this._createColliderDesc(A),this._shape=A.shape,this._applyColliderOptions(A),this._autoAddToSimulation(A)}static optionsFromBlockHalfExtents(A){return{shape:"block",halfExtents:A}}static optionsFromModelUri(A,Q=1,B){Q=typeof Q==="number"?{x:Q,y:Q,z:Q}:Q;let Y=yY.instance.getBoundingBox(A),J=Y.max.x-Y.min.x,C=Y.max.y-Y.min.y,X=Y.max.z-Y.min.z,G=J*Q.x,W=C*Q.y,F=X*Q.z,Z=Math.max(G,F),U=Math.min(G,F),$=Z/U,E=Z/W,K=Z/2,I=(M)=>Math.max(0.01,M),V=()=>({shape:"block",halfExtents:{x:I(G/2),y:I(W/2),z:I(F/2)}}),H=()=>({shape:"round-cylinder",radius:I(K),halfHeight:I(W/2),borderRadius:I(K*0.1)}),D=()=>{let M=yY.instance.getTrimesh(A,Q);if(!M)return;return{shape:"trimesh",vertices:M.vertices,indices:M.indices}},L=()=>({shape:"wedge",extents:{x:G,y:W,z:F}}),z=()=>({shape:"capsule",radius:I(K),halfHeight:I(W/2-K)});if(B)switch(B){case"block":return V();case"capsule":return z();case"round-cylinder":return H();case"trimesh":{let M=D();if(!M){l.error(`Collider.optionsFromModelUri(): Failed to create trimesh options for model ${A}, falling back to generic shape!`);break}return M}case"wedge":return L();default:l.warning(`Collider.optionsFromModelUri(): Preferred shape ${B} is not yet supported with Collider.optionsFromModelUri(), defaulting to generic shape!`)}if($>2)return V();if(E>1.5)return H();return z()}get bounciness(){if(!this._requireNotRemoved("bounciness"))return 0;return this._collider?this._collider.restitution():this._colliderDesc.restitution}get bouncinessCombineRule(){if(!this._requireNotRemoved("bouncinessCombineRule"))return 0;return this._collider?this._collider.restitutionCombineRule():this._colliderDesc.restitutionCombineRule}get collisionGroups(){if(!this._requireNotRemoved("collisionGroups"))return{belongsTo:[],collidesWith:[]};return this._collider?LC.decodeRawCollisionGroups(this._collider.collisionGroups()):LC.decodeRawCollisionGroups(this._colliderDesc.collisionGroups)}get friction(){if(!this._requireNotRemoved("friction"))return 0;return this._collider?this._collider.friction():this._colliderDesc.friction}get frictionCombineRule(){if(!this._requireNotRemoved("frictionCombineRule"))return 0;return this._collider?this._collider.frictionCombineRule():this._colliderDesc.frictionCombineRule}get isEnabled(){if(!this._requireNotRemoved("isEnabled"))return!1;return this._collider?this._collider.isEnabled():this._colliderDesc.enabled}get isRemoved(){return!this._collider&&!this._colliderDesc}get isSensor(){if(!this._requireNotRemoved("isSensor"))return!1;return this._collider?this._collider.isSensor():this._colliderDesc.isSensor}get isSimulated(){if(!this._requireNotRemoved("isSimulated"))return!1;return!!this._collider}get isBall(){return this.shape==="ball"}get isBlock(){return this.shape==="block"}get isCapsule(){return this.shape==="capsule"}get isCone(){return this.shape==="cone"}get isCylinder(){return this.shape==="cylinder"}get isNone(){return this.shape==="none"}get isRoundCylinder(){return this.shape==="round-cylinder"}get isTrimesh(){return this.shape==="trimesh"}get isVoxel(){return this.shape==="voxels"}get isWedge(){return this.shape==="wedge"}get parentRigidBody(){if(!this._requireNotRemoved("parentRigidBody"))return;return this._parentRigidBody}get rawCollider(){if(!this._requireNotRemoved("rawCollider"))return;return this._collider}get rawShape(){if(!this._requireNotRemoved("rawShape"))return;return this._collider?this._collider.shape:this._colliderDesc.shape}get relativePosition(){if(!this._requireNotRemoved("relativePosition"))return{x:0,y:0,z:0};return this._relativePosition}get relativeRotation(){if(!this._requireNotRemoved("relativeRotation"))return{x:0,y:0,z:0,w:1};return this._relativeRotation}get scale(){if(!this._requireNotRemoved("scale"))return{x:1,y:1,z:1};return this._scale}get shape(){if(!this._requireNotRemoved("shape"))return"none";return this._shape}get tag(){if(!this._requireNotRemoved("tag"))return;return this._tag}setBounciness(A){if(!this._requireNotRemoved("setBounciness"))return;this._collider?this._collider.setRestitution(A):this._colliderDesc.setRestitution(A)}setBouncinessCombineRule(A){if(!this._requireNotRemoved("setBouncinessCombineRule"))return;this._collider?this._collider.setRestitutionCombineRule(A):this._colliderDesc.setRestitutionCombineRule(A)}setCollisionGroups(A){if(!this._requireNotRemoved("setCollisionGroups"))return;let Q=LC.buildRawCollisionGroups(A);this._collider?this._collider.setCollisionGroups(Q):this._colliderDesc.setCollisionGroups(Q)}setEnabled(A){if(!this._requireNotRemoved("setEnabled"))return;this._collider?this._collider.setEnabled(A):this._colliderDesc.setEnabled(A)}setFriction(A){if(!this._requireNotRemoved("setFriction"))return;this._collider?this._collider.setFriction(A):this._colliderDesc.setFriction(A)}setFrictionCombineRule(A){if(!this._requireNotRemoved("setFrictionCombineRule"))return;this._collider?this._collider.setFrictionCombineRule(A):this._colliderDesc.setFrictionCombineRule(A)}setHalfExtents(A){if(!this._requireSimulated("setHalfExtents"))return;if(!this._requireNotRemoved("setHalfExtents"))return;if(this.shape!=="block")return l.error("Collider.setHalfExtents(): Collider is not a block collider!");this._collider.setHalfExtents(A)}setHalfHeight(A){if(!this._requireSimulated("setHalfHeight"))return;if(!this._requireNotRemoved("setHalfHeight"))return;if(this.shape!=="capsule"&&this.shape!=="cone"&&this.shape!=="cylinder"&&this.shape!=="round-cylinder")return l.error("Collider.setHalfHeight(): Collider is not a capsule, cone, cylinder, or round cylinder collider!");this._collider.setHalfHeight(A)}setMass(A){if(!this._requireNotRemoved("setMass"))return;this._collider?this._collider.setMass(A):this._colliderDesc.setMass(A)}setOnCollision(A){if(!this._requireNotRemoved("setOnCollision"))return;if(this._onCollision=A,this.isSimulated)if(this.enableCollisionEvents(!!A),A)this._simulation.colliderMap.setColliderCollisionCallback(this,A);else this._simulation.colliderMap.removeColliderCollisionCallback(this)}setRadius(A){if(!this._requireSimulated("setRadius"))return;if(!this._requireNotRemoved("setRadius"))return;if(this.shape!=="ball"&&this.shape!=="capsule"&&this.shape!=="cylinder"&&this.shape!=="round-cylinder")return l.error("Collider.setRadius(): Collider is not a ball, capsule, cylinder, or round cylinder collider!");this._collider.setRadius(A)}setRelativeRotation(A){if(!this._requireNotRemoved("setRelativeRotation"))return;this._relativeRotation=A,this._collider?this._collider.parent()?this._collider.setRotationWrtParent(A):this._collider.setRotation(A):this._colliderDesc.setRotation(A)}setRelativePosition(A){if(!this._requireNotRemoved("setRelativePosition"))return;this._relativePosition=A,this._collider?this._collider.parent()?this._collider.setTranslationWrtParent(A):this._collider.setTranslation(A):this._colliderDesc.setTranslation(A.x,A.y,A.z)}setSensor(A){if(!this._requireNotRemoved("setSensor"))return;this._collider?this._collider.setSensor(A):this._colliderDesc.setSensor(A)}setTag(A){if(!this._requireNotRemoved("setTag"))return;this._tag=A}setVoxel(A,Q){if(!this._requireNotRemoved("setVoxel"))return;if(!this._requireSimulated("setVoxel"))return;if(this.shape!=="voxels")return l.error("Collider.setVoxel(): Collider is not a voxels collider!");this._collider.setVoxel(A.x,A.y,A.z,Q)}addToSimulation(A,Q){if(!this._requireNotRemoved("addToSimulation"))return;if(!this._requireUnsimulated("addToSimulation"))return;if(Q){if(!Q.isSimulated)return l.error("Collider.addToSimulation(): Rigid body must be simulated before adding a collider to it!");if(Q.type==="dynamic"&&this.shape==="trimesh")l.warning("Collider.addToSimulation(): Trimesh colliders are strongly discouraged to be used with dynamic rigid bodies, they will not contribute any mass!")}if(this._simulation=A,this._parentRigidBody=Q,this._collider=this._simulation.createRawCollider(this._colliderDesc,Q?.rawRigidBody),this._colliderDesc=void 0,Q)Q.linkCollider(this);if(this._onCollision)this.setOnCollision(this._onCollision)}combineVoxelStates(A){if(!this._requireNotRemoved("combineVoxelStates"))return;if(!this._requireSimulated("combineVoxelStates"))return;if(!A.isSimulated)return l.error("Collider.combineVoxelStates(): Other collider is not simulated!");if(this.shape!=="voxels")return l.error("Collider.combineVoxelStates(): Collider is not a voxels collider!");if(A.shape!=="voxels")return l.error("Collider.combineVoxelStates(): Other collider is not a voxels collider!");this._collider.combineVoxelStates(A.rawCollider,0,0,0)}enableCollisionEvents(A){if(!this._requireNotRemoved("enableCollisionEvents"))return;let Q=this._collider?this._collider.activeEvents():this._colliderDesc.activeEvents,B=A?Q|WB.ActiveEvents.COLLISION_EVENTS:Q&~WB.ActiveEvents.COLLISION_EVENTS;(this._collider??this._colliderDesc).setActiveEvents(B),this._setActiveCollisionTypes()}enableContactForceEvents(A){if(!this._requireNotRemoved("enableContactForceEvents"))return;let Q=this._collider?this._collider.activeEvents():this._colliderDesc.activeEvents,B=A?Q|WB.ActiveEvents.CONTACT_FORCE_EVENTS:Q&~WB.ActiveEvents.CONTACT_FORCE_EVENTS;(this._collider??this._colliderDesc).setActiveEvents(B),this._setActiveCollisionTypes()}propagateVoxelChange(A,Q){if(!this._requireNotRemoved("propagateVoxelChange"))return;if(!this._requireSimulated("propagateVoxelChange"))return;if(!A.isSimulated)return l.error("Collider.propagateVoxelChange(): Other collider is not simulated!");if(this.shape!=="voxels")return l.error("Collider.propagateVoxelChange(): Collider is not a voxels collider!");if(A.shape!=="voxels")return l.error("Collider.propagateVoxelChange(): Other collider is not a voxels collider!");this._collider.propagateVoxelChange(A.rawCollider,Q.x,Q.y,Q.z,0,0,0)}removeFromSimulation(){if(!this._requireNotRemoved("removeFromSimulation"))return;if(!this._requireSimulated("removeFromSimulation"))return;if(this._simulation.removeRawCollider(this._collider),this._simulation=void 0,this._collider=void 0,this._parentRigidBody)this._parentRigidBody.unlinkCollider(this);this._parentRigidBody=void 0}setScale(A){if(!this._requireNotRemoved("scale"))return;let Q={x:A.x/this._scale.x,y:A.y/this._scale.y,z:A.z/this._scale.z};this.setRelativePosition({x:this.relativePosition.x*Q.x,y:this.relativePosition.y*Q.y,z:this.relativePosition.z*Q.z});let B=Math.max(this._scale.x,this._scale.z),J=Math.max(A.x,A.z)/B;switch(this._scale=A,this._shape){case"ball":{if(this._collider)this._collider.setRadius(this._collider.radius()*J);else this._colliderDesc.shape.radius*=J;return}case"block":{if(this._collider){let C=this._collider.halfExtents();this._collider.setHalfExtents({x:C.x*Q.x,y:C.y*Q.y,z:C.z*Q.z})}else this._colliderDesc.shape.halfExtents.x*=Q.x,this._colliderDesc.shape.halfExtents.y*=Q.y,this._colliderDesc.shape.halfExtents.z*=Q.z;return}case"capsule":{if(this._collider)this._collider.setHalfHeight(this._collider.halfHeight()*Q.y),this._collider.setRadius(this._collider.radius()*J);else this._colliderDesc.shape.halfHeight*=Q.y,this._colliderDesc.shape.radius*=J;return}case"cone":{if(this._collider)this._collider.setHalfHeight(this._collider.halfHeight()*Q.y),this._collider.setRadius(this._collider.radius()*J);else this._colliderDesc.shape.halfHeight*=Q.y,this._colliderDesc.shape.radius*=J;return}case"cylinder":{if(this._collider)this._collider.setHalfHeight(this._collider.halfHeight()*Q.y),this._collider.setRadius(this._collider.radius()*J);else this._colliderDesc.shape.halfHeight*=Q.y,this._colliderDesc.shape.radius*=J;return}case"round-cylinder":{if(this._collider)this._collider.setHalfHeight(this._collider.halfHeight()*Q.y),this._collider.setRoundRadius(this._collider.roundRadius()*J),this._collider.setRadius(this._collider.radius()*J);else this._colliderDesc.shape.halfHeight=this._colliderDesc.shape.halfHeight*Q.y,this._colliderDesc.shape.borderRadius=this._colliderDesc.shape.borderRadius*J,this._colliderDesc.shape.radius=this._colliderDesc.shape.radius*J;return}case"trimesh":{l.error("Collider.setScale(): Trimesh colliders cannot be scaled at runtime!");return}case"voxels":{l.error("Collider.setScale(): Voxels colliders cannot be scaled!");return}case"wedge":{l.error("Collider.setScale(): Wedge colliders cannot be scaled!");return}default:l.fatalError(`Collider.setScale(): ${this._shape} is not a valid collider shape!`)}}_applyColliderOptions(A){[["bounciness",this.setBounciness.bind(this)],["bouncinessCombineRule",this.setBouncinessCombineRule.bind(this)],["collisionGroups",this.setCollisionGroups.bind(this)],["enabled",this.setEnabled.bind(this)],["friction",this.setFriction.bind(this)],["frictionCombineRule",this.setFrictionCombineRule.bind(this)],["isSensor",this.setSensor.bind(this)],["mass",this.setMass.bind(this)],["onCollision",this.setOnCollision.bind(this)],["relativePosition",this.setRelativePosition.bind(this)],["relativeRotation",this.setRelativeRotation.bind(this)],["tag",this.setTag.bind(this)]].forEach(([B,Y])=>{if(A[B]!==void 0)Y.call(this,A[B])})}_autoAddToSimulation(A){if(A.simulation)this.addToSimulation(A.simulation,A.parentRigidBody)}_buildWedgeConvexHullVertices(A){let{x:Q,y:B,z:Y}=A,J=Q/2,C=Y/2,X=B/2;return new Float32Array([-J,0-X,-C,J,0-X,-C,J,0-X,C,-J,0-X,C,-J,B-X,-C,J,B-X,-C])}_createColliderDesc(A){let{shape:Q,flags:B}=A;switch(Q){case"ball":{if(!A.radius)l.fatalError("Ball collider must have a radius!");return WB.ColliderDesc.ball(A.radius)}case"block":{if(!A.halfExtents)l.fatalError("Block collider must have halfExtents!");return WB.ColliderDesc.cuboid(A.halfExtents.x,A.halfExtents.y,A.halfExtents.z)}case"capsule":{if(!A.halfHeight||!A.radius)l.fatalError("Capsule collider must have halfHeight and radius!");return WB.ColliderDesc.capsule(A.halfHeight,A.radius)}case"cone":{if(!A.radius||!A.halfHeight)l.fatalError("Cone collider must have radius and halfHeight!");return WB.ColliderDesc.cone(A.halfHeight,A.radius)}case"cylinder":{if(!A.radius||!A.halfHeight)l.fatalError("Cylinder collider must have radius and halfHeight!");return WB.ColliderDesc.cylinder(A.halfHeight,A.radius)}case"round-cylinder":{if(!A.radius||!A.halfHeight||!A.borderRadius)l.fatalError("Round cylinder collider must have radius, halfHeight, and borderRadius!");return WB.ColliderDesc.roundCylinder(A.halfHeight,A.radius,A.borderRadius)}case"trimesh":{if(!A.indices||!A.vertices)l.fatalError("Trimesh collider must have vertices and indices!");return WB.ColliderDesc.trimesh(A.vertices,A.indices,B)}case"voxels":{if(!A.coordinates||!A.size)l.fatalError("Voxels collider must have coordinates and size!");return WB.ColliderDesc.voxels(this._coordinatesToInt32Array(A.coordinates),A.size)}case"wedge":{if(!A.extents)l.fatalError("Wedge collider must have extents!");let Y=this._buildWedgeConvexHullVertices(A.extents),J=WB.ColliderDesc.convexHull(Y);if(!J)throw l.fatalError("Failed to create convex hull for wedge collider!"),Error("Convex hull creation failed");return J}default:l.fatalError(`Collider._createColliderDesc(): ${Q} is not a valid collider shape!`)}}_requireSimulated(A){if(!this.isSimulated)l.error(`Collider._requireSimulated(): Collider is not simulated, invoked method: ${A}()`);return this.isSimulated}_requireUnsimulated(A){if(this.isSimulated)l.error(`Collider._requireUnsimulated(): Collider is already simulated, invoked method: ${A}()`);return!this.isSimulated}_requireNotRemoved(A){if(this.isRemoved)l.error(`Collider._requireNotRemoved(): Collider is removed, invoked method: ${A}()`);return!this.isRemoved}_setActiveCollisionTypes(){(this._collider??this._colliderDesc).setActiveCollisionTypes(WB.ActiveCollisionTypes.DYNAMIC_DYNAMIC|WB.ActiveCollisionTypes.DYNAMIC_KINEMATIC|WB.ActiveCollisionTypes.DYNAMIC_FIXED|WB.ActiveCollisionTypes.KINEMATIC_KINEMATIC|WB.ActiveCollisionTypes.KINEMATIC_FIXED)}_coordinatesToInt32Array(A){let Q=new Int32Array(A.length*3);for(let B=0;Bthis.serializeBlockType(Q))}static serializeChunk(A){return{c:this.serializeVector(A.originCoordinate),b:Array.from(A.blocks),r:Array.from(A.blockRotations).flatMap(([Q,B])=>[Q,B.enumIndex])}}static serializeEntity(A){if(!A.world||A.id===void 0)l.fatalError("Serializer.serializeEntity(): Entity is not in a world");return{i:A.id,bt:A.blockTextureUri,bh:A.blockHalfExtents?this.serializeVector(A.blockHalfExtents):void 0,e:A.isEnvironmental,ec:A.emissiveColor?this.serializeRgbColor(A.emissiveColor):void 0,ei:A.emissiveIntensity,m:A.modelUri,ma:A.modelAnimations.map((Q)=>this.serializeEntityModelAnimation(Q)),mo:A.modelNodeOverrides.map((Q)=>this.serializeEntityModelNodeOverride(Q)),mt:A.modelTextureUri,n:A.name,o:A.opacity,ol:A.outline?this.serializeOutline(A.outline):void 0,p:this.serializeVector(A.position),pi:A.positionInterpolationMs,pe:A.parent?A.parent.id:void 0,pn:A.parentNodeName,r:this.serializeQuaternion(A.rotation),ri:A.rotationInterpolationMs,si:A.modelScaleInterpolationMs,sv:A.modelScale?this.serializeVector(A.modelScale):void 0,t:A.tintColor?this.serializeRgbColor(A.tintColor):void 0}}static serializeEntityModelAnimation(A){return{n:A.name,b:A.blendMode,c:A.clampWhenFinished,fi:A.fadesIn,fo:A.fadesOut,l:A.loopMode,p:A.isPlaying&&A.loopMode!==0,pr:A.playbackRate,w:A.weight}}static serializeEntityModelNodeOverride(A){return{n:A.nameMatch,ec:A.emissiveColor?this.serializeRgbColor(A.emissiveColor):void 0,ei:A.emissiveIntensity,h:A.isHidden,p:A.localPosition?this.serializeVector(A.localPosition):void 0,pi:A.localPositionInterpolationMs,r:A.localRotation?this.serializeQuaternion(A.localRotation):void 0,ri:A.localRotationInterpolationMs,s:A.localScale?this.serializeVector(A.localScale):void 0,si:A.localScaleInterpolationMs}}static serializeOutline(A){return{c:A.color?this.serializeRgbColor(A.color):void 0,ci:A.colorIntensity,th:A.thickness,o:A.opacity,oc:A.occluded}}static serializeParticleEmitter(A){if(!A.world||A.id===void 0)l.fatalError("Serializer.serializeParticleEmitter(): ParticleEmitter is not in a world");return{i:A.id,at:A.alphaTest,ce:A.colorEnd?this.serializeRgbColor(A.colorEnd):void 0,cev:A.colorEndVariance?this.serializeRgbColor(A.colorEndVariance):void 0,cs:A.colorStart?this.serializeRgbColor(A.colorStart):void 0,csv:A.colorStartVariance?this.serializeRgbColor(A.colorStartVariance):void 0,cie:A.colorIntensityEnd,ciev:A.colorIntensityEndVariance,cis:A.colorIntensityStart,cisv:A.colorIntensityStartVariance,e:A.attachedToEntity?.isSpawned?A.attachedToEntity.id:void 0,en:A.attachedToEntityNodeName,g:A.gravity?this.serializeVector(A.gravity):void 0,l:A.lifetime,le:A.lockToEmitter,lv:A.lifetimeVariance,mp:A.maxParticles,o:A.offset?this.serializeVector(A.offset):void 0,or:A.orientation?this.serializeParticleEmitterOrientation(A.orientation):void 0,ofr:A.orientationFixedRotation?this.serializeVector(A.orientationFixedRotation):void 0,oe:A.opacityEnd,oev:A.opacityEndVariance,os:A.opacityStart,osv:A.opacityStartVariance,p:A.position?this.serializeVector(A.position):void 0,pa:A.paused,pv:A.positionVariance?this.serializeVector(A.positionVariance):void 0,r:A.rate,rv:A.rateVariance,se:A.sizeEnd,sev:A.sizeEndVariance,ss:A.sizeStart,ssv:A.sizeStartVariance,t:A.transparent,tu:A.textureUri,v:A.velocity?this.serializeVector(A.velocity):void 0,vv:A.velocityVariance?this.serializeVector(A.velocityVariance):void 0}}static serializeParticleEmitterOrientation(A){switch(A){case"billboard":return 0;case"billboardY":return 1;case"fixed":return 2;case"velocity":return 3;default:return 0}}static serializePhysicsDebugRaycast(A){return{o:this.serializeVector(A.origin),d:this.serializeVector(A.direction),l:A.length,h:A.hit}}static serializePlayer(A){return{i:A.id,u:A.username,p:A.profilePictureUrl}}static serializePlayerCamera(A){return{cb:A.collidesWithBlocks,m:A.mode,e:A.attachedToEntity?.isSpawned?A.attachedToEntity.id:void 0,et:A.targetEntity?.isSpawned?A.targetEntity.id:void 0,fo:A.filmOffset,ffo:A.forwardOffset,fv:A.fov,h:Array.from(A.viewModelHiddenNodes),mp:A.viewModelPitchesWithCamera,my:A.viewModelYawsWithCamera,o:A.offset?this.serializeVector(A.offset):void 0,p:A.attachedToPosition?this.serializeVector(A.attachedToPosition):void 0,pt:A.targetPosition?this.serializeVector(A.targetPosition):void 0,s:Array.from(A.viewModelShownNodes),sa:A.shoulderAngle,z:A.zoom}}static serializeQuaternion(A){return[A.x,A.y,A.z,A.w]}static serializeRgbColor(A){return[A.r,A.g,A.b]}static serializeSceneUI(A){if(A.id===void 0)l.fatalError("Serializer.serializeSceneUI(): SceneUI is not loaded!");return{i:A.id,e:A.attachedToEntity?.isSpawned?A.attachedToEntity.id:void 0,o:A.offset?this.serializeVector(A.offset):void 0,p:A.position?this.serializeVector(A.position):void 0,s:A.state,t:A.templateId,v:A.viewDistance}}static serializeVector(A){return[A.x,A.y,A.z]}static serializeVectorBoolean(A){return[A.x,A.y,A.z]}static serializeWorld(A){return{i:A.id,ac:this.serializeRgbColor(A.ambientLightColor),ai:A.ambientLightIntensity,dc:this.serializeRgbColor(A.directionalLightColor),di:A.directionalLightIntensity,dp:this.serializeVector(A.directionalLightPosition),fc:A.fogColor?this.serializeRgbColor(A.fogColor):void 0,ff:A.fogFar,fn:A.fogNear,n:A.name,s:A.skyboxUri,si:A.skyboxIntensity,t:A.loop.timestepS}}}var PZA;((Y)=>{Y[Y.PLAYING=0]="PLAYING";Y[Y.PAUSED=1]="PAUSED";Y[Y.STOPPED=2]="STOPPED"})(PZA||={});var uf;((B)=>{B[B.ADDITIVE=0]="ADDITIVE";B[B.NORMAL=1]="NORMAL"})(uf||={});var $Z;((Y)=>{Y[Y.ONCE=0]="ONCE";Y[Y.LOOP=1]="LOOP";Y[Y.PING_PONG=2]="PING_PONG"})($Z||={});var df;((U)=>{U.PAUSE="ENTITY_MODEL_ANIMATION.PAUSE";U.PLAY="ENTITY_MODEL_ANIMATION.PLAY";U.RESTART="ENTITY_MODEL_ANIMATION.RESTART";U.SET_BLEND_MODE="ENTITY_MODEL_ANIMATION.SET_BLEND_MODE";U.SET_CLAMP_WHEN_FINISHED="ENTITY_MODEL_ANIMATION.SET_CLAMP_WHEN_FINISHED";U.SET_FADES_IN="ENTITY_MODEL_ANIMATION.SET_FADES_IN";U.SET_FADES_OUT="ENTITY_MODEL_ANIMATION.SET_FADES_OUT";U.SET_LOOP_MODE="ENTITY_MODEL_ANIMATION.SET_LOOP_MODE";U.SET_PLAYBACK_RATE="ENTITY_MODEL_ANIMATION.SET_PLAYBACK_RATE";U.SET_WEIGHT="ENTITY_MODEL_ANIMATION.SET_WEIGHT";U.STOP="ENTITY_MODEL_ANIMATION.STOP"})(df||={});class CE{_name;_blendMode=1;_clampWhenFinished=!1;_entity;_fadesIn=!0;_fadesOut=!0;_loopMode=0;_state=2;_playbackRate=1;_weight=1;constructor(A){this._name=A.name,this._entity=A.entity,this._blendMode=A.blendMode??this._blendMode,this._clampWhenFinished=A.clampWhenFinished??this._clampWhenFinished,this._fadesIn=A.fadesIn??this._fadesIn,this._fadesOut=A.fadesOut??this._fadesOut,this._loopMode=A.loopMode??this._loopMode,this._state=A.play?0:this._state,this._playbackRate=A.playbackRate??this._playbackRate,this._weight=A.weight??this._weight}get name(){return this._name}get blendMode(){return this._blendMode}get clampWhenFinished(){return this._clampWhenFinished}get entity(){return this._entity}get fadesIn(){return this._fadesIn}get fadesOut(){return this._fadesOut}get isPlaying(){return this._state===0}get isPaused(){return this._state===1}get isStopped(){return this._state===2}get loopMode(){return this._loopMode}get playbackRate(){return this._playbackRate}get weight(){return this._weight}pause(){if(this._state===1)return;if(this._state=1,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.PAUSE",{entityModelAnimation:this})}play(){if(this._state===0)return;if(this._state=0,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.PLAY",{entityModelAnimation:this})}restart(){if(this._state=0,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.RESTART",{entityModelAnimation:this})}setBlendMode(A){if(this._blendMode===A)return;if(this._blendMode=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_BLEND_MODE",{entityModelAnimation:this,blendMode:A})}setClampWhenFinished(A){if(this._clampWhenFinished===A)return;if(this._clampWhenFinished=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_CLAMP_WHEN_FINISHED",{entityModelAnimation:this,clampWhenFinished:A})}setFadesIn(A){if(this._fadesIn===A)return;if(this._fadesIn=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_FADES_IN",{entityModelAnimation:this,fadesIn:A})}setFadesOut(A){if(this._fadesOut===A)return;if(this._fadesOut=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_FADES_OUT",{entityModelAnimation:this,fadesOut:A})}setLoopMode(A){if(this._loopMode===A)return;if(this._loopMode=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_LOOP_MODE",{entityModelAnimation:this,loopMode:A})}setPlaybackRate(A){if(this._playbackRate===A)return;if(this._playbackRate=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_PLAYBACK_RATE",{entityModelAnimation:this,playbackRate:A})}setWeight(A){if(this._weight===A)return;if(this._weight=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_WEIGHT",{entityModelAnimation:this,weight:A})}stop(){if(this._state===2)return;if(this._state=2,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.STOP",{entityModelAnimation:this})}serialize(){return GQ.serializeEntityModelAnimation(this)}}var cf;((F)=>{F.SET_EMISSIVE_COLOR="ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_COLOR";F.SET_EMISSIVE_INTENSITY="ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_INTENSITY";F.SET_HIDDEN="ENTITY_MODEL_NODE_OVERRIDE.SET_HIDDEN";F.SET_LOCAL_POSITION="ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION";F.SET_LOCAL_POSITION_INTERPOLATION_MS="ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION_INTERPOLATION_MS";F.SET_LOCAL_ROTATION="ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION";F.SET_LOCAL_ROTATION_INTERPOLATION_MS="ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION_INTERPOLATION_MS";F.SET_LOCAL_SCALE="ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE";F.SET_LOCAL_SCALE_INTERPOLATION_MS="ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE_INTERPOLATION_MS"})(cf||={});class XE{_nameMatch;_entity;_emissiveColor;_emissiveIntensity;_hidden=!1;_isRemoved=!1;_localPosition;_localPositionInterpolationMs;_localRotation;_localRotationInterpolationMs;_localScale;_localScaleInterpolationMs;constructor(A){this._nameMatch=A.nameMatch.toLowerCase(),this._entity=A.entity,this._emissiveColor=A.emissiveColor,this._emissiveIntensity=A.emissiveIntensity,this._hidden=A.hidden??this._hidden,this._localPosition=A.localPosition,this._localPositionInterpolationMs=A.localPositionInterpolationMs,this._localRotation=A.localRotation,this._localRotationInterpolationMs=A.localRotationInterpolationMs,this._localScale=typeof A.localScale==="number"?{x:A.localScale,y:A.localScale,z:A.localScale}:A.localScale,this._localScaleInterpolationMs=A.localScaleInterpolationMs}get nameMatch(){return this._nameMatch}get name(){return this._nameMatch}get entity(){return this._entity}get emissiveColor(){return this._emissiveColor}get emissiveIntensity(){return this._emissiveIntensity}get isHidden(){return this._hidden}get localPosition(){return this._localPosition}get localPositionInterpolationMs(){return this._localPositionInterpolationMs}get localRotation(){return this._localRotation}get localRotationInterpolationMs(){return this._localRotationInterpolationMs}get localScale(){return this._localScale}get localScaleInterpolationMs(){return this._localScaleInterpolationMs}remove(){this._entity.removeModelNodeOverride(this.nameMatch)}setEmissiveColor(A){if(this._isRemoved)return;if(!A&&!this._emissiveColor||A&&this._emissiveColor&&A.r===this._emissiveColor.r&&A.g===this._emissiveColor.g&&A.b===this._emissiveColor.b)return;if(this._emissiveColor=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_COLOR",{entityModelNodeOverride:this,emissiveColor:A})}setEmissiveIntensity(A){if(this._isRemoved)return;if(this._emissiveIntensity===A)return;if(this._emissiveIntensity=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_INTENSITY",{entityModelNodeOverride:this,emissiveIntensity:A})}setHidden(A){if(this._isRemoved)return;if(this._hidden===A)return;if(this._hidden=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_HIDDEN",{entityModelNodeOverride:this,hidden:A})}setLocalPosition(A){if(this._isRemoved)return;if(A===this._localPosition)return;if(A&&this._localPosition&&this._localPosition.x===A.x&&this._localPosition.y===A.y&&this._localPosition.z===A.z)return;if(this._localPosition=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION",{entityModelNodeOverride:this,localPosition:A})}setLocalPositionInterpolationMs(A){if(this._isRemoved)return;if(A===this._localPositionInterpolationMs)return;if(this._localPositionInterpolationMs=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION_INTERPOLATION_MS",{entityModelNodeOverride:this,interpolationMs:A})}setLocalRotation(A){if(this._isRemoved)return;if(A===this._localRotation)return;if(A&&this._localRotation&&this._localRotation.x===A.x&&this._localRotation.y===A.y&&this._localRotation.z===A.z&&this._localRotation.w===A.w)return;if(this._localRotation=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION",{entityModelNodeOverride:this,localRotation:A})}setLocalRotationInterpolationMs(A){if(this._isRemoved)return;if(A===this._localRotationInterpolationMs)return;if(this._localRotationInterpolationMs=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION_INTERPOLATION_MS",{entityModelNodeOverride:this,interpolationMs:A})}setLocalScale(A){if(this._isRemoved)return;if(A===this._localScale)return;if(typeof A==="number")A={x:A,y:A,z:A};if(A&&this._localScale&&this._localScale.x===A.x&&this._localScale.y===A.y&&this._localScale.z===A.z)return;if(this._localScale=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE",{entityModelNodeOverride:this,localScale:A})}setLocalScaleInterpolationMs(A){if(this._isRemoved)return;if(A===this._localScaleInterpolationMs)return;if(this._localScaleInterpolationMs=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE_INTERPOLATION_MS",{entityModelNodeOverride:this,interpolationMs:A})}serialize(){return GQ.serializeEntityModelNodeOverride(this)}markRemoved(){this._isRemoved=!0}}var TZA={type:"dynamic",softCcdPrediction:1},SZA=0.0016,kZA=Math.cos(0.026),XD;((q)=>{q.BLOCK_COLLISION="ENTITY.BLOCK_COLLISION";q.BLOCK_CONTACT_FORCE="ENTITY.BLOCK_CONTACT_FORCE";q.DESPAWN="ENTITY.DESPAWN";q.ENTITY_COLLISION="ENTITY.ENTITY_COLLISION";q.ENTITY_CONTACT_FORCE="ENTITY.ENTITY_CONTACT_FORCE";q.INTERACT="ENTITY.INTERACT";q.REMOVE_MODEL_NODE_OVERRIDE="ENTITY.REMOVE_MODEL_NODE_OVERRIDE";q.SET_BLOCK_TEXTURE_URI="ENTITY.SET_BLOCK_TEXTURE_URI";q.SET_EMISSIVE_COLOR="ENTITY.SET_EMISSIVE_COLOR";q.SET_EMISSIVE_INTENSITY="ENTITY.SET_EMISSIVE_INTENSITY";q.SET_MODEL_SCALE="ENTITY.SET_MODEL_SCALE";q.SET_MODEL_SCALE_INTERPOLATION_MS="ENTITY.SET_MODEL_SCALE_INTERPOLATION_MS";q.SET_MODEL_TEXTURE_URI="ENTITY.SET_MODEL_TEXTURE_URI";q.SET_OPACITY="ENTITY.SET_OPACITY";q.SET_OUTLINE="ENTITY.SET_OUTLINE";q.SET_PARENT="ENTITY.SET_PARENT";q.SET_POSITION_INTERPOLATION_MS="ENTITY.SET_POSITION_INTERPOLATION_MS";q.SET_ROTATION_INTERPOLATION_MS="ENTITY.SET_ROTATION_INTERPOLATION_MS";q.SET_TINT_COLOR="ENTITY.SET_TINT_COLOR";q.SPAWN="ENTITY.SPAWN";q.TICK="ENTITY.TICK";q.UPDATE_POSITION="ENTITY.UPDATE_POSITION";q.UPDATE_ROTATION="ENTITY.UPDATE_ROTATION"})(XD||={});class X0 extends y7{_id;_blockHalfExtents;_blockTextureUri;_controller;_isEnvironmental=!1;_modelAnimations=new Map;_modelNodeOverrides=new Map;_modelPreferredShape;_modelScale={x:1,y:1,z:1};_modelScaleInterpolationMs;_modelTextureUri;_modelUri;_name;_opacity;_outline;_parent;_parentNodeName;_positionInterpolationMs;_rotationInterpolationMs;_tag;_tintColor;_emissiveColor;_emissiveIntensity;_lastUpdatedPosition={x:0,y:0,z:0};_lastUpdatedRotation={x:0,y:0,z:0,w:1};_lastParentlessType="dynamic";_world;_positionUpdateThresholdSq;_rotationUpdateThreshold;constructor(A){let Q="blockTextureUri"in A,B="modelUri"in A;if(!Q===!B)l.fatalError("Entity.constructor(): Entity data must include a blockTextureUri or modelUri, but not both.");if(Q&&!A.blockHalfExtents)l.fatalError("Entity.constructor(): Block entity must have blockHalfExtents!");if(A.parent&&!A.parent.isSpawned)l.fatalError("Entity.constructor(): Parent entity must be spawned before child entity!");if(A.parent?.modelUri&&A.parentNodeName&&!yY.instance.modelHasNode(A.parent.modelUri,A.parentNodeName))l.fatalError(`Entity.constructor(): Parent node name ${A.parentNodeName} not found in parent model ${A.parent.modelUri}!`);super(A.rigidBodyOptions??TZA);if(Q)this._blockHalfExtents=A.blockHalfExtents,this._blockTextureUri=A.blockTextureUri;if(B){let Y=this._modelScale=typeof A.modelScale==="number"?{x:A.modelScale,y:A.modelScale,z:A.modelScale}:A.modelScale??{x:1,y:1,z:1};if(this._modelPreferredShape=A.modelPreferredShape,this._modelScale=Y,this._modelScaleInterpolationMs=A.modelScaleInterpolationMs,this._modelTextureUri=A.modelTextureUri,this._modelUri=A.modelUri,!this._modelUri.startsWith("http"))if(yY.instance.hasModel(this._modelUri))A.modelAnimations?.forEach((J)=>{this._modelAnimations.set(J.name,new CE({...J,entity:this}))});else l.error(`Entity.constructor(): Model ${this._modelUri} does not exist!`);A.modelNodeOverrides?.forEach((J)=>{this._modelNodeOverrides.set(J.nameMatch.toLowerCase(),new XE({...J,entity:this}))})}if(this._emissiveColor=A.emissiveColor,this._emissiveIntensity=A.emissiveIntensity,this._isEnvironmental=A.isEnvironmental??!1,this._name=A.name??"Nameless",this._opacity=A.opacity??1,this._outline=A.outline,this._parent=A.parent,this._parentNodeName=A.parentNodeName,this._positionInterpolationMs=A.positionInterpolationMs,this._rotationInterpolationMs=A.rotationInterpolationMs,this._tag=A.tag,this._tintColor=A.tintColor,this._positionUpdateThresholdSq=SZA,this._rotationUpdateThreshold=kZA,A.controller)this._controller=A.controller,this._controller.attach(this)}get id(){return this._id}get availableModelAnimationNames(){return this.isModelEntity?yY.instance.getAnimationNames(this._modelUri):[]}get availableModelNodeNames(){return this.isModelEntity?yY.instance.getNodeNames(this._modelUri):[]}get blockHalfExtents(){return this._blockHalfExtents}get blockTextureUri(){return this._blockTextureUri}get controller(){return this._controller}get emissiveColor(){return this._emissiveColor}get emissiveIntensity(){return this._emissiveIntensity}get depth(){return this.isModelEntity?yY.instance.getDepth(this._modelUri)*this._modelScale.z:this._blockHalfExtents.z*2}get height(){return this.isModelEntity?yY.instance.getHeight(this._modelUri)*this._modelScale.y:this._blockHalfExtents.y*2}get modelAnimations(){return Array.from(this._modelAnimations.values())}get modelNodeOverrides(){return Array.from(this._modelNodeOverrides.values())}get modelPreferredShape(){return this._modelPreferredShape}get modelScale(){return this._modelScale}get modelScaleInterpolationMs(){return this._modelScaleInterpolationMs}get modelTextureUri(){return this._modelTextureUri}get modelUri(){return this._modelUri}get name(){return this._name}get opacity(){return this._opacity}get outline(){return this._outline}get parent(){return this._parent}get parentNodeName(){return this._parentNodeName}get positionInterpolationMs(){return this._positionInterpolationMs}get rotationInterpolationMs(){return this._rotationInterpolationMs}get tag(){return this._tag}get tintColor(){return this._tintColor}get isBlockEntity(){return!!this._blockTextureUri}get isEnvironmental(){return this._isEnvironmental}get isModelEntity(){return!!this._modelUri}get isSpawned(){return!!this._world}get width(){return this.isModelEntity?yY.instance.getWidth(this._modelUri)*this._modelScale.x:this._blockHalfExtents.x*2}get world(){return this._world}clearModelNodeOverrides(){if(!this.isModelEntity)return;this.removeModelNodeOverrides(Array.from(this._modelNodeOverrides.keys()))}despawn(){if(!this._requireSpawned("despawn"))return;if(this._world.entityManager.getEntityChildren(this).forEach((A)=>{A.despawn()}),this._controller)this._controller.detach(this),this._controller.despawn(this);if(this.emitWithWorld(this._world,"ENTITY.DESPAWN",{entity:this}),this.isSimulated)this.removeFromSimulation();this._world.entityManager.unregisterEntity(this),this._world.audioManager.unregisterEntityAttachedAudios(this),this._world.particleEmitterManager.despawnEntityAttachedParticleEmitters(this),this._world.sceneUIManager.unloadEntityAttachedSceneUIs(this),this._id=void 0,this._world=void 0}getModelAnimation(A){if(!this.isModelEntity)return;let Q=this._modelAnimations.get(A);if(!Q)Q=new CE({name:A,entity:this}),this._modelAnimations.set(A,Q);return Q}setModelAnimationsPlaybackRate(A){if(!this.isModelEntity)return;for(let Q of this._modelAnimations.values())Q.setPlaybackRate(A)}startModelLoopedAnimations(A){if(!this.isModelEntity)return;for(let Q of A){let B=this.getModelAnimation(Q);if(!B)continue;B.setLoopMode(1),B.play()}}startModelOneshotAnimations(A){if(!this.isModelEntity)return;for(let Q of A){let B=this.getModelAnimation(Q);if(!B)continue;B.setLoopMode(0),B.play()}}setModelNodeEmissiveColor(A,Q){let B=this.getModelNodeOverride(A);if(B)B.setEmissiveColor(Q)}setModelNodeEmissiveIntensity(A,Q){let B=this.getModelNodeOverride(A);if(B)B.setEmissiveIntensity(Q)}getModelNodeOverride(A){if(!this.isModelEntity)return;A=A.toLowerCase();let Q=this._modelNodeOverrides.get(A);if(!Q)Q=new XE({nameMatch:A,entity:this}),this._modelNodeOverrides.set(A,Q);return Q}interact(A,Q){if(!this._requireSpawned("interact"))return;this.emitWithWorld(this._world,"ENTITY.INTERACT",{entity:this,player:A,raycastHit:Q})}setBlockTextureUri(A){if(this._blockTextureUri===A)return;if(this._blockTextureUri=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_BLOCK_TEXTURE_URI",{entity:this,blockTextureUri:A})}removeModelNodeOverride(A){if(!this.isModelEntity)return;A=A.toLowerCase();let Q=this._modelNodeOverrides.get(A);if(!Q)return;if(Q.markRemoved(),this._modelNodeOverrides.delete(A),this.isSpawned)this.emitWithWorld(this._world,"ENTITY.REMOVE_MODEL_NODE_OVERRIDE",{entity:this,entityModelNodeOverride:Q})}removeModelNodeOverrides(A){if(!this.isModelEntity)return;for(let Q of A)this.removeModelNodeOverride(Q)}setEmissiveColor(A){if(!A&&!this._emissiveColor||A&&this._emissiveColor&&A.r===this._emissiveColor.r&&A.g===this._emissiveColor.g&&A.b===this._emissiveColor.b)return;if(this._emissiveColor=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_EMISSIVE_COLOR",{entity:this,emissiveColor:A})}setEmissiveIntensity(A){if(this._emissiveIntensity===A)return;if(this._emissiveIntensity=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_EMISSIVE_INTENSITY",{entity:this,emissiveIntensity:A})}setModelScale(A){if(!this.isModelEntity)return;if(typeof A==="number")A={x:A,y:A,z:A};if(this._modelScale===A)return;let Q={x:A.x/this._modelScale.x,y:A.y/this._modelScale.y,z:A.z/this._modelScale.z};if(this._modelScale=A,this.colliders.forEach((B)=>B.setScale(Q)),this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_MODEL_SCALE",{entity:this,modelScale:A})}setModelScaleInterpolationMs(A){if(!this.isModelEntity)return;if(this._modelScaleInterpolationMs===A)return;if(this._modelScaleInterpolationMs=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_MODEL_SCALE_INTERPOLATION_MS",{entity:this,interpolationMs:A})}setModelTextureUri(A){if(!this.isModelEntity||this._modelTextureUri===A)return;if(this._modelTextureUri=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_MODEL_TEXTURE_URI",{entity:this,modelTextureUri:A})}setOpacity(A){if(this._opacity===A)return;if(this._opacity=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_OPACITY",{entity:this,opacity:A})}setOutline(A,Q){if(this._outline=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_OUTLINE",{entity:this,forPlayer:Q,outline:A})}setParent(A,Q,B,Y){if(A&&!A.isSpawned)return l.error("Entity.setParent(): Parent entity is not spawned, cannot set parent!");if(!this._parent&&A)this._lastParentlessType=this.type;if(this._parent=A,this._parentNodeName=Q,!this.isSpawned)return;if(this.colliders.forEach((J)=>J.setEnabled(!A)),this.setType(!A?this._lastParentlessType:"kinematic_velocity"),this.setPosition(B??{x:0,y:0,z:0}),this.setRotation(Y??{x:0,y:0,z:0,w:1}),!this.isKinematicPositionBased)this.resetAngularVelocity(),this.resetForces(),this.resetLinearVelocity(),this.resetTorques();this.emitWithWorld(this._world,"ENTITY.SET_PARENT",{entity:this,parent:A,parentNodeName:Q})}setPositionInterpolationMs(A){if(this._positionInterpolationMs===A)return;if(this._positionInterpolationMs=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_POSITION_INTERPOLATION_MS",{entity:this,interpolationMs:A})}setRotationInterpolationMs(A){if(this._rotationInterpolationMs===A)return;if(this._rotationInterpolationMs=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_ROTATION_INTERPOLATION_MS",{entity:this,interpolationMs:A})}setTintColor(A){if(!A&&!this._tintColor||A&&this._tintColor&&A.r===this._tintColor.r&&A.g===this._tintColor.g&&A.b===this._tintColor.b)return;if(this._tintColor=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_TINT_COLOR",{entity:this,tintColor:A})}spawn(A,Q,B){if(this.isSpawned)return l.error(`Entity.spawn(): Entity ${this._name} is already spawned with id ${this._id}!`);if(!this.isSimulated)this.addToSimulation(A.simulation);if(this._blockTextureUri&&this._blockHalfExtents&&this.numColliders===0)this.addChildColliderToSimulation(new h9(h9.optionsFromBlockHalfExtents(this._blockHalfExtents)));if(this._modelUri&&this.numColliders===0&&this._modelPreferredShape!=="none")this.addChildColliderToSimulation(new h9(h9.optionsFromModelUri(this._modelUri,this._modelScale,this._modelPreferredShape)));if(this.colliders.forEach((Y)=>{if(this.hasListeners("ENTITY.BLOCK_COLLISION")||this.hasListeners("ENTITY.ENTITY_COLLISION"))Y.enableCollisionEvents(!0);if(this.hasListeners("ENTITY.BLOCK_CONTACT_FORCE")||this.hasListeners("ENTITY.ENTITY_CONTACT_FORCE"))Y.enableContactForceEvents(!0);if(LC.isDefaultCollisionGroups(Y.collisionGroups)){let J=this.isEnvironmental?[8]:[Y.isSensor?4:2],C=this.isEnvironmental?[65535&~8&~1]:[65535];Y.setCollisionGroups({belongsTo:J,collidesWith:C})}}),this.setPosition(Q),B)this.setRotation(B);if(this._id=A.entityManager.registerEntity(this),this._world=A,this._controller)this._controller.spawn(this);if(this._parent)this.setParent(this._parent,this._parentNodeName,Q,B);this.colliders.forEach((Y)=>{A.simulation.colliderMap.setColliderEntity(Y,this)}),this.emitWithWorld(A,"ENTITY.SPAWN",{entity:this})}stopAllModelAnimations(A){for(let Q of this._modelAnimations.values()){if(A?.(Q))continue;Q.stop()}}stopModelAnimations(A){for(let Q of A){let B=this._modelAnimations.get(Q);if(!B)continue;B.stop()}}checkAndEmitUpdates(){if(!this._requireSpawned("checkAndEmitUpdates"))return;let A=this.position,Q=this.rotation;if(this._rotationExceedsThreshold(Q,this._lastUpdatedRotation))this._lastUpdatedRotation=Q,this.emitWithWorld(this._world,"ENTITY.UPDATE_ROTATION",{entity:this,rotation:Q});if(this._positionExceedsThreshold(A,this._lastUpdatedPosition))this._lastUpdatedPosition=A,this.emitWithWorld(this._world,"ENTITY.UPDATE_POSITION",{entity:this,position:A})}serialize(){return GQ.serializeEntity(this)}tick(A){if(this.emit("ENTITY.TICK",{entity:this,tickDeltaMs:A}),this._controller)this._controller.tick(this,A)}_positionExceedsThreshold(A,Q){let B=A.x-Q.x,Y=A.y-Q.y,J=A.z-Q.z;return B*B+Y*Y+J*J>this._positionUpdateThresholdSq}_requireSpawned(A){if(!this.isSpawned)l.error(`Entity._requireSpawned(): Entity ${this._name} is not spawned, cannot invoke ${A}()!`);return this.isSpawned}_rotationExceedsThreshold(A,Q){return Math.abs(A.x*Q.x+A.y*Q.y+A.z*Q.z+A.w*Q.w){X.ATTACH="BASE_ENTITY_CONTROLLER.ATTACH";X.DESPAWN="BASE_ENTITY_CONTROLLER.DESPAWN";X.DETACH="BASE_ENTITY_CONTROLLER.DETACH";X.SPAWN="BASE_ENTITY_CONTROLLER.SPAWN";X.TICK="BASE_ENTITY_CONTROLLER.TICK";X.TICK_WITH_PLAYER_INPUT="BASE_ENTITY_CONTROLLER.TICK_WITH_PLAYER_INPUT"})(_ZA||={});class UZ extends BQ{attach(A){this.emit("BASE_ENTITY_CONTROLLER.ATTACH",{entity:A})}despawn(A){this.emit("BASE_ENTITY_CONTROLLER.DESPAWN",{entity:A})}detach(A){this.emit("BASE_ENTITY_CONTROLLER.DETACH",{entity:A})}spawn(A){this.emit("BASE_ENTITY_CONTROLLER.SPAWN",{entity:A})}tickWithPlayerInput(A,Q,B,Y){this.emit("BASE_ENTITY_CONTROLLER.TICK_WITH_PLAYER_INPUT",{entity:A,input:Q,cameraOrientation:B,deltaTimeMs:Y})}tick(A,Q){this.emit("BASE_ENTITY_CONTROLLER.TICK",{entity:A,deltaTimeMs:Q})}}var vZA=0.099856;class EZ extends UZ{faceSpeed=0;idleLoopedAnimations=[];idleLoopedAnimationsSpeed;jumpOneshotAnimations=[];moveLoopedAnimations=[];moveLoopedAnimationsSpeed;moveSpeed=0;_faceTarget;_jumpHeight=0;_moveCompletesWhenStuck=!1;_moveIgnoreAxes={};_moveStartMoveAnimations=!1;_moveStartIdleAnimationsOnCompletion=!0;_moveStoppingDistanceSquared=vZA;_moveStuckAccumulatorMs=0;_moveStuckLastPosition;_moveTarget;_onFace;_onFaceComplete;_onMove;_onMoveComplete;_stopFaceRequested=!1;_stopMoveRequested=!1;constructor(A={}){super();this.idleLoopedAnimations=A.idleLoopedAnimations??this.idleLoopedAnimations,this.idleLoopedAnimationsSpeed=A.idleLoopedAnimationsSpeed??this.idleLoopedAnimationsSpeed,this.jumpOneshotAnimations=A.jumpOneshotAnimations??this.jumpOneshotAnimations,this.moveLoopedAnimations=A.moveLoopedAnimations??this.moveLoopedAnimations,this.moveLoopedAnimationsSpeed=A.moveLoopedAnimationsSpeed??this.moveLoopedAnimationsSpeed}spawn(A){super.spawn(A),this._startIdleAnimations(A)}face(A,Q,B){this._faceTarget=A,this.faceSpeed=Q,this._onFace=B?.faceCallback,this._onFaceComplete=B?.faceCompleteCallback}jump(A){this._jumpHeight=A}move(A,Q,B){this.moveSpeed=Q,this._moveCompletesWhenStuck=B?.moveCompletesWhenStuck??!1,this._moveIgnoreAxes=B?.moveIgnoreAxes??{},this._moveStartIdleAnimationsOnCompletion=B?.moveStartIdleAnimationsOnCompletion??!0,this._moveStartMoveAnimations=!0,this._moveStoppingDistanceSquared=B?.moveStoppingDistance?B.moveStoppingDistance**2:vZA,this._moveTarget=A,this._onMove=B?.moveCallback,this._onMoveComplete=B?.moveCompleteCallback,this._moveStuckAccumulatorMs=0,this._moveStuckLastPosition=void 0}stopFace(){this._stopFaceRequested=!0}stopMove(){this._stopMoveRequested=!0}tick(A,Q){if(super.tick(A,Q),!this._moveTarget&&!this._faceTarget&&!this._jumpHeight)return;if(this._moveStartMoveAnimations)this._startMoveAnimations(A),this._moveStartMoveAnimations=!1;let B=Q/1000,Y=A.position;if(A.isDynamic&&this._jumpHeight>0){let J=Math.abs(A.world.simulation.gravity.y),C=Math.sqrt(2*J*this._jumpHeight);A.applyImpulse({x:0,y:C*A.mass,z:0}),this._jumpHeight=0,this._startJumpAnimations(A)}if(this._moveTarget){let J={x:this._moveIgnoreAxes.x?0:this._moveTarget.x-Y.x,y:this._moveIgnoreAxes.y?0:this._moveTarget.y-Y.y,z:this._moveIgnoreAxes.z?0:this._moveTarget.z-Y.z},C=J.x*J.x+J.y*J.y+J.z*J.z,X=!1;if(this._moveCompletesWhenStuck){if(this._moveStuckAccumulatorMs+=Q,this._moveStuckAccumulatorMs>=500){if(this._moveStuckLastPosition){let G=Y.x-this._moveStuckLastPosition.x,W=Y.y-this._moveStuckLastPosition.y,F=Y.z-this._moveStuckLastPosition.z;X=Math.sqrt(G*G+W*W+F*F)this._moveStoppingDistanceSquared&&!this._stopMoveRequested&&!X){let G=Math.sqrt(C),W=this.moveSpeed*B,Z=Math.min(G,W)/G,U={x:Y.x+J.x*Z,y:Y.y+J.y*Z,z:Y.z+J.z*Z};if(A.setPosition(U),this._onMove)this._onMove(U,this._moveTarget)}else{if(this._moveStuckAccumulatorMs=0,this._moveStuckLastPosition=void 0,this._moveTarget=void 0,this._stopMoveRequested=!1,this._moveStartIdleAnimationsOnCompletion)this._startIdleAnimations(A);if(this._onMoveComplete){let G=this._onMoveComplete;this._onMove=void 0,this._onMoveComplete=void 0,G(Y)}}}if(this._faceTarget){let J={x:this._faceTarget.x-Y.x,z:this._faceTarget.z-Y.z},C=Math.atan2(-J.x,-J.z),X=A.rotation,G=Math.atan2(2*(X.w*X.y),1-2*(X.y*X.y)),W=C-G;while(W>Math.PI)W-=2*Math.PI;while(W<-Math.PI)W+=2*Math.PI;if(Math.abs(W)>0.01&&!this._stopFaceRequested){let F=this.faceSpeed*B,Z=Math.abs(W){if(this._behavior)this._behavior.tick(this,this._world,J)})}get isSpawned(){return this._spawned}get world(){return this._world}get controller(){return this.entity.controller}setBehavior(A){this._behavior=A}spawn(A){if(this._spawned)return;let Q=A??{x:0,y:10,z:0};this.entity.spawn(this._world,Q),this._spawned=!0}teleport(A){if(!this._spawned)return;this.entity.setPosition(A)}despawn(){if(!this._spawned)return;this.entity.despawn(),this._spawned=!1}}class G9{static _instance;static get instance(){if(!G9._instance)G9._instance=new G9;return G9._instance}_bots=new Map;get botCount(){return this._bots.size}spawnBot(A,Q){let B=new GD(A,Q);return B.spawn(Q?.spawnPosition),this._bots.set(B.id,B),B}spawnBots(A,Q,B){let Y=[];for(let J=0;J=this._changeIntervalMs)this._elapsed=0,this._pickNewTarget(A)}_pickNewTarget(A){let Q=Math.random()*Math.PI*2,B=Math.random()*this._moveRadius,Y=this._originX+Math.cos(Q)*B,J=this._originZ+Math.sin(Q)*B,C=A.entity.position;A.controller.move({x:Y,y:C.y,z:J},this._moveSpeed),A.controller.face({x:Y,y:C.y,z:J},5)}}class FD{name="chase";_chaseSpeed;_detectionRadius;_updateIntervalMs;_elapsed=0;constructor(A){this._chaseSpeed=A?.chaseSpeed??5,this._detectionRadius=A?.detectionRadius??50,this._updateIntervalMs=A?.updateIntervalMs??500}tick(A,Q,B){if(!A.isSpawned)return;if(this._elapsed+=B,this._elapsed=3000)this._moveElapsed=0,this._moveToRandom(A);if(this._elapsed+=B,this._elapsed{Y.post("Profiler.enable",()=>{Y.post("Profiler.start",()=>{setTimeout(()=>{Y.post("Profiler.stop",(X,{profile:G})=>{if(Y.post("Profiler.disable"),Y.disconnect(),X){C(X);return}if(Q)yZA(Q,JSON.stringify(G));J(G)})},A)})})})}static async captureHeapSnapshot(A){let Q=await gZA();if(!Q)return console.warn("CpuProfiler: node:inspector not available in this runtime"),"";let B=new Q.Session;B.connect();let Y="";return B.on("HeapProfiler.addHeapSnapshotChunk",(J)=>{let C=J.params?.chunk;if(typeof C==="string")Y+=C}),new Promise((J,C)=>{B.post("HeapProfiler.takeHeapSnapshot",void 0,(X)=>{if(B.disconnect(),X){C(X);return}if(A)yZA(A,Y);J(Y)})})}}var hZA=5,pf;((U)=>{U.PAUSE="AUDIO.PAUSE";U.PLAY="AUDIO.PLAY";U.PLAY_RESTART="AUDIO.PLAY_RESTART";U.SET_ATTACHED_TO_ENTITY="AUDIO.SET_ATTACHED_TO_ENTITY";U.SET_CUTOFF_DISTANCE="AUDIO.SET_CUTOFF_DISTANCE";U.SET_DETUNE="AUDIO.SET_DETUNE";U.SET_DISTORTION="AUDIO.SET_DISTORTION";U.SET_POSITION="AUDIO.SET_POSITION";U.SET_PLAYBACK_RATE="AUDIO.SET_PLAYBACK_RATE";U.SET_REFERENCE_DISTANCE="AUDIO.SET_REFERENCE_DISTANCE";U.SET_VOLUME="AUDIO.SET_VOLUME"})(pf||={});class $D extends BQ{_id;_attachedToEntity;_cutoffDistance;_duration;_detune;_distortion;_loop;_offset;_position;_playbackRate;_playing;_referenceDistance;_startTick;_uri;_volume;_world;constructor(A){super();this._attachedToEntity=A.attachedToEntity,this._cutoffDistance=A.cutoffDistance??(this.isPositional?(A.referenceDistance??hZA)+10:0),this._duration=A.duration,this._detune=A.detune??0,this._distortion=A.distortion??0,this._loop=A.loop??!1,this._offset=A.offset??0,this._position=A.position,this._playing=!1,this._playbackRate=A.playbackRate??1,this._referenceDistance=A.referenceDistance??(this.isPositional?hZA:0),this._uri=A.uri,this._volume=A.volume??0.5}get id(){return this._id}get attachedToEntity(){return this._attachedToEntity}get cutoffDistance(){return this._cutoffDistance}get duration(){return this._duration}get detune(){return this._detune}get distortion(){return this._distortion}get loop(){return this._loop}get offset(){return this._offset}get isLoaded(){return this._id!==void 0}get isPlaying(){return this._playing}get isPositional(){return this._attachedToEntity!==void 0||this._position!==void 0}get position(){return this._position}get playbackRate(){return this._playbackRate}get referenceDistance(){return this._referenceDistance}get startTick(){return this._startTick}get uri(){return this._uri}get volume(){return this._volume}get world(){return this._world}play(A,Q=!1){if(this.isPlaying&&!Q)return;if(this._attachedToEntity&&!this._attachedToEntity.isSpawned)return l.error(`Audio.play(): Attached entity ${this._attachedToEntity.id} is not spawned!`);let B=Q&&this._id!==void 0?"AUDIO.PLAY_RESTART":"AUDIO.PLAY";this._id??=A.audioManager.registerAudio(this),this._playing=!0,this._startTick=A.loop.currentTick,this._world=this._world??A,this.emitWithWorld(A,B,{audio:this})}pause(){if(!this.isPlaying||!this._world)return;this._playing=!1,this.emitWithWorld(this._world,"AUDIO.PAUSE",{audio:this})}setAttachedToEntity(A){if(!this._requirePositional())return;if(!A.isSpawned)return l.error(`Audio.setAttachedToEntity(): Entity ${A.id} is not spawned!`);if(this._attachedToEntity===A)return;if(this._attachedToEntity=A,this._position=void 0,this.isLoaded&&this._world)this.emitWithWorld(this._world,"AUDIO.SET_ATTACHED_TO_ENTITY",{audio:this,entity:A})}setCutoffDistance(A){if(!this._requirePositional())return;if(A<=0||A1)return l.error("Volume must be between 0 and 1");if(this._volume===A)return;if(this._volume=A,this.isLoaded&&this._world)this.emitWithWorld(this._world,"AUDIO.SET_VOLUME",{audio:this,volume:A})}serialize(){return GQ.serializeAudio(this)}_requirePositional(){if(!this.isPositional)l.error("Audio._requirePositional(): Audio is not positional. and therefor does not support the invoked method.");return this.isPositional}}class UD{_audios=new Map;_nextAudioId=1;_world;constructor(A){this._world=A}get world(){return this._world}getAllAudios(){return Array.from(this._audios.values())}getAllEntityAttachedAudios(A){return this.getAllAudios().filter((Q)=>Q.attachedToEntity===A)}getAllLoopedAudios(){return this.getAllAudios().filter((A)=>A.loop)}getAllOneshotAudios(){return this.getAllAudios().filter((A)=>!A.loop)}registerAudio(A){if(A.id!==void 0)l.fatalError(`AudioManager.registerAudio(): Provided audio instance with uri ${A.uri} is already assigned the id ${A.id}!`);let Q=this._nextAudioId;return this._audios.set(Q,A),this._nextAudioId++,Q}unregisterAudio(A){if(A.id===void 0)return l.error(`AudioManager.unregisterAudio(): Provided audio instance with uri ${A.uri} is not assigned an id!`);A.pause(),this._audios.delete(A.id)}unregisterEntityAttachedAudios(A){this.getAllEntityAttachedAudios(A).forEach((Q)=>{this.unregisterAudio(Q)})}}var w8={Y_0:{enumIndex:0,matrix:[1,0,0,0,1,0,0,0,1]},Y_90:{enumIndex:1,matrix:[0,0,-1,0,1,0,1,0,0]},Y_180:{enumIndex:2,matrix:[-1,0,0,0,1,0,0,0,-1]},Y_270:{enumIndex:3,matrix:[0,0,1,0,1,0,-1,0,0]},NY_0:{enumIndex:4,matrix:[-1,0,0,0,-1,0,0,0,1]},NY_90:{enumIndex:5,matrix:[0,0,-1,0,-1,0,-1,0,0]},NY_180:{enumIndex:6,matrix:[1,0,0,0,-1,0,0,0,-1]},NY_270:{enumIndex:7,matrix:[0,0,1,0,-1,0,1,0,0]},X_0:{enumIndex:8,matrix:[0,-1,0,1,0,0,0,0,1]},X_90:{enumIndex:9,matrix:[0,0,-1,1,0,0,0,-1,0]},X_180:{enumIndex:10,matrix:[0,1,0,1,0,0,0,0,-1]},X_270:{enumIndex:11,matrix:[0,0,1,1,0,0,0,1,0]},NX_0:{enumIndex:12,matrix:[0,1,0,-1,0,0,0,0,1]},NX_90:{enumIndex:13,matrix:[0,0,-1,-1,0,0,0,1,0]},NX_180:{enumIndex:14,matrix:[0,-1,0,-1,0,0,0,0,-1]},NX_270:{enumIndex:15,matrix:[0,0,1,-1,0,0,0,-1,0]},Z_0:{enumIndex:16,matrix:[1,0,0,0,0,1,0,-1,0]},Z_90:{enumIndex:17,matrix:[0,1,0,0,0,1,1,0,0]},Z_180:{enumIndex:18,matrix:[-1,0,0,0,0,1,0,1,0]},Z_270:{enumIndex:19,matrix:[0,-1,0,0,0,1,-1,0,0]},NZ_0:{enumIndex:20,matrix:[1,0,0,0,0,-1,0,1,0]},NZ_90:{enumIndex:21,matrix:[0,-1,0,0,0,-1,1,0,0]},NZ_180:{enumIndex:22,matrix:[-1,0,0,0,0,-1,0,-1,0]},NZ_270:{enumIndex:23,matrix:[0,1,0,0,0,-1,-1,0,0]}};class WE{globalCoordinate;blockType;constructor(A,Q){this.globalCoordinate=A,this.blockType=Q}static fromGlobalCoordinate(A,Q){return new WE(A,Q)}getNeighborGlobalCoordinateFromHitPoint(A){let Q={x:A.x-(this.globalCoordinate.x+0.5),y:A.y-(this.globalCoordinate.y+0.5),z:A.z-(this.globalCoordinate.z+0.5)},B="x",Y=Math.abs(Q.x);for(let[J,C]of Object.entries(Q))if(Math.abs(C)>Y)B=J,Y=Math.abs(C);return{x:this.globalCoordinate.x+(B==="x"?Math.sign(Q.x):0),y:this.globalCoordinate.y+(B==="y"?Math.sign(Q.y):0),z:this.globalCoordinate.z+(B==="z"?Math.sign(Q.z):0)}}}import _JB from"crypto";import g7 from"fs";import j8 from"path";var U0={ATLAS_DIR:".atlas",ATLAS_PNG_FILE:"atlas.png",ATLAS_KTX2_FILE:"atlas.ktx2",ATLAS_MANIFEST_FILE:"atlas.json",TEXTURE_SIZE:24,TEXTURE_PADDING:20,ALPHA_TEST_THRESHOLD:0.05,DATA_SCHEMA_VERSION:1,DIRECTORIES:[PY.assetsLibraryPath&&j8.join(PY.assetsLibraryPath,"blocks"),j8.resolve(process.cwd(),"assets","blocks")].filter(Boolean)};class h7{static instance=new h7;generate=process.env.NODE_ENV!=="production";_textureUriMetadata=new Map;constructor(){}hasBlockTexture(A){return this._textureUriMetadata.has(A)||["+x","-x","+y","-y","+z","-z"].every((Q)=>this._textureUriMetadata.has(`${A}/${Q}.png`))}getBlockTextureMetadata(A){let Q=this._textureUriMetadata.get(A);if(Q)return[Q];let B=["+x","-x","+y","-y","+z","-z"].map((Y)=>this._textureUriMetadata.get(`${A}/${Y}.png`)).filter(Boolean);return B.length===6?B:void 0}async preloadAtlas(){let A=await this._getAbsoluteTexturePaths(),Q=j8.resolve(process.cwd(),"assets/blocks",U0.ATLAS_DIR);if(this._loadCachedAtlasManifest(A,Q))return console.info(`BlockTextureRegistry.preloadAtlas(): Using cached atlas for ${A.length} block textures`);if(!this.generate)l.fatalError("BlockTextureRegistry.preloadAtlas(): No cached atlas found in production. Run development server to generate atlas.");console.info(`BlockTextureRegistry.preloadAtlas(): Generating atlas for ${A.length} block textures...`);let B=await Promise.all(A.map(async(U)=>{let $=await JE.read(U),E=this._absoluteTexturePathToTextureUri(U);if($.width!==U0.TEXTURE_SIZE||$.height!==U0.TEXTURE_SIZE)$.resize({w:U0.TEXTURE_SIZE,h:U0.TEXTURE_SIZE});return{textureUri:E,image:$,metadata:this._analyzeTexture($.bitmap)}})),Y=U0.TEXTURE_SIZE+U0.TEXTURE_PADDING*2,{cols:J,rows:C}=this._calculateGridLayout(B.length),X=J*Y,G=C*Y,W=new JE({width:X,height:G,color:0});for(let U=0;U{let U=(W*C+G)*4,$=(Z*C+F)*4;J[$]=J[U],J[$+1]=J[U+1],J[$+2]=J[U+2],J[$+3]=J[U+3]};for(let G=0;G=B+Q||W=B+Q){let F=Math.max(B,Math.min(B+Q-1,W)),Z=Math.max(B,Math.min(B+Q-1,G));X(F,Z,W,G)}return Y}_analyzeTexture(A){let{width:Q,height:B,data:Y}=A,J=Q*B,C=[0,0,0],X=255*U0.ALPHA_TEST_THRESHOLD,G=!1,W=!1,F=0;for(let Z=0;Z=X,W||=UZ/J/255),isTransparent:G,needsAlphaTest:W,transparencyRatio:F/J}}_calculateGridLayout(A){let Q=(C)=>2**Math.ceil(Math.log2(C)),B=Math.ceil(Math.sqrt(A)),Y=Q(B),J=Q(Math.ceil(A/Y));return{cols:Y,rows:J}}async _getAbsoluteTexturePaths(){let A=new Map;for(let B of U0.DIRECTORIES){if(!g7.existsSync(B))continue;let Y=await l4("**/*.png",{cwd:B,follow:!0});for(let J of Y){let C=j8.join(B,J),X=this._absoluteTexturePathToTextureUri(C);A.set(X,C)}}return Array.from(A.keys()).sort().map((B)=>A.get(B))}}var nf;((Y)=>{Y.ENTITY_COLLISION="BLOCK_TYPE.ENTITY_COLLISION";Y.ENTITY_CONTACT_FORCE="BLOCK_TYPE.ENTITY_CONTACT_FORCE";Y.INTERACT="BLOCK_TYPE.INTERACT"})(nf||={});class O8 extends BQ{_id;_customColliderOptions;_isLiquid;_lightLevel;_name;_textureUri;constructor(A={id:-1,textureUri:"textures/missing.png",name:"Unknown"}){if(A.id<0)l.fatalError("BlockType.constructor(): BlockType id not set.");if(!h7.instance.hasBlockTexture(A.textureUri))l.fatalError(`BlockType.constructor(): Block texture ${A.textureUri} not found. If it is a cubemap texture, make sure every face is present in the folder (+x.png, -x.png, +y.png, -y.png, +z.png, -z.png).`);super();this._id=A.id,this._customColliderOptions=A.customColliderOptions,this._isLiquid=A.isLiquid??!1,this._name=A.name,this._textureUri=A.textureUri,this._lightLevel=Math.min(A.lightLevel??0,15)}get id(){return this._id}get colliderOptions(){return this._customColliderOptions??{shape:"voxels"}}get isLiquid(){return this._isLiquid}get isMeshable(){return!this._customColliderOptions}get isTrimesh(){return this.colliderOptions.shape==="trimesh"}get isVoxel(){return this.colliderOptions.shape==="voxels"}get lightLevel(){return this._lightLevel}get name(){return this._name}get textureUri(){return this._textureUri}createCollider(A){let Q=this.colliderOptions.shape==="voxels"?new h9({...this.colliderOptions,coordinates:A.map((B)=>B.globalCoordinate),size:{x:1,y:1,z:1}}):new h9({...this.colliderOptions,...this._buildTrimeshFromBlockPlacements(A)});if(this.isLiquid)Q.setSensor(!0);if(this.hasListeners("BLOCK_TYPE.ENTITY_COLLISION")||this.isLiquid)Q.enableCollisionEvents(!0);if(this.hasListeners("BLOCK_TYPE.ENTITY_CONTACT_FORCE"))Q.enableContactForceEvents(!0);if(LC.isDefaultCollisionGroups(Q.collisionGroups))Q.setCollisionGroups({belongsTo:[1],collidesWith:[65535&~1]});return Q}interact(A,Q){if(!A.world)return;this.emitWithWorld(A.world,"BLOCK_TYPE.INTERACT",{blockType:this,player:A,raycastHit:Q})}serialize(){return GQ.serializeBlockType(this)}_buildTrimeshFromBlockPlacements(A){let Q=this.colliderOptions,B=Q.vertices,Y=Q.indices;if(!B||!Y)l.fatalError(`BlockType._buildTrimeshFromCoordinates(): Block type id ${this.id} (${this.name}) is a trimesh but is missing vertices or indices!`);if(B.length%3!==0||Y.length%3!==0)l.fatalError(`BlockType._buildTrimeshFromCoordinates(): Block type id ${this.id} (${this.name}) has an invalid number of vertices or indices! Expected a multiple of 3, got ${B.length} and ${Y.length}.`);let J=B.length/3,C=A.length,X=new Float32Array(B.length*C),G=new Uint32Array(Y.length*C);for(let W=0;WQ.REGISTER_BLOCK_TYPE="BLOCK_TYPE_REGISTRY.REGISTER_BLOCK_TYPE")(sf||={});class ED extends BQ{_blockTypes=new Map;_world;constructor(A){super();this._world=A}get world(){return this._world}getAllBlockTypes(){return Array.from(this._blockTypes.values())}getBlockType(A){let Q=this._blockTypes.get(A);if(!Q)l.fatalError(`BlockTypeRegistry.getBlockType(): BlockType with id ${A} not found.`);return Q}registerGenericBlockType(A){let B=new class extends O8{constructor(Y=A){super(Y)}};return this.registerBlockType(B),B}registerBlockType(A){this._blockTypes.set(A.id,A),this.emitWithWorld(this._world,"BLOCK_TYPE_REGISTRY.REGISTER_BLOCK_TYPE",{blockTypeRegistry:this,id:A.id,blockType:A})}serialize(){return GQ.serializeBlockTypeRegistry(this)}}var Om={};iG(Om,{worldSchema:()=>jm,worldPacketDefinition:()=>SKA,vectorSchema:()=>nQ,vectorBooleanSchema:()=>zGB,uiSchema:()=>Rm,uiPacketDefinition:()=>PKA,uiDatasSchema:()=>wm,uiDatasPacketDefinition:()=>TKA,uiDataSendPacketDefinition:()=>UKA,uiDataSchema:()=>fD,syncResponseSchema:()=>zm,syncResponsePacketDefinition:()=>OKA,syncRequestSchema:()=>rb,syncRequestPacketDefinition:()=>$KA,stateRequestSchema:()=>sb,stateRequestPacketDefinition:()=>ZKA,sceneUIsSchema:()=>Mm,sceneUIsPacketDefinition:()=>jKA,sceneUISchema:()=>qm,rgbColorSchema:()=>gY,registeredPackets:()=>xw,quaternionSchema:()=>bD,playersSchema:()=>Lm,playersPacketDefinition:()=>wKA,playerSchema:()=>Nm,physicsDebugRenderSchema:()=>Dm,physicsDebugRenderPacketDefinition:()=>zKA,physicsDebugRaycastsSchema:()=>Hm,physicsDebugRaycastsPacketDefinition:()=>RKA,physicsDebugRaycastSchema:()=>Im,particleEmittersSchema:()=>Vm,particleEmittersPacketDefinition:()=>MKA,particleEmitterSchema:()=>Km,outlineSchema:()=>Wm,outboundPackets:()=>hw,notificationPermissionRequestSchema:()=>Em,notificationPermissionRequestPacketDefinition:()=>qKA,modelNodeOverrideSchema:()=>Gm,modelAnimationSchema:()=>Xm,lightsSchema:()=>Um,lightsPacketDefinition:()=>LKA,lightSchema:()=>$m,isValidPacket:()=>wGB,inputSchema:()=>nb,inputPacketDefinition:()=>FKA,inboundPackets:()=>gw,hexColorSchema:()=>pb,heartbeatSchema:()=>lb,heartbeatPacketDefinition:()=>XKA,framePacketBuffer:()=>MGB,entitySchema:()=>Fm,entitiesSchema:()=>Zm,entitiesPacketDefinition:()=>NKA,definePacket:()=>HQ,debugConfigSchema:()=>ib,debugConfigPacketDefinition:()=>WKA,createPacketBufferUnframer:()=>qGB,createPacket:()=>LGB,connectionSchema:()=>cb,connectionPacketDefinition:()=>CKA,chunksSchema:()=>Cm,chunksPacketDefinition:()=>DKA,chunkSchema:()=>Jm,chatMessagesSchema:()=>Ym,chatMessagesPacketDefinition:()=>HKA,chatMessageSendPacketDefinition:()=>GKA,chatMessageSchema:()=>xD,cameraSchema:()=>Bm,cameraPacketDefinition:()=>IKA,blocksSchema:()=>eb,blocksPacketDefinition:()=>KKA,blockTypesSchema:()=>Qm,blockTypesPacketDefinition:()=>VKA,blockTypeSchema:()=>Am,blockSchema:()=>tb,bidirectionalPackets:()=>yw,audiosSchema:()=>ob,audiosPacketDefinition:()=>EKA,audioSchema:()=>ab,PacketId:()=>sB});var yw={};iG(yw,{heartbeatPacketDefinition:()=>XKA,connectionPacketDefinition:()=>CKA});var ub=qA(YKA(),1);class db extends ub.default{static instance=new ub.default}var hD=4,JKA=33554432,sB;((_)=>{_[_.SYNC_REQUEST=0]="SYNC_REQUEST";_[_.INPUT=1]="INPUT";_[_.STATE_REQUEST=2]="STATE_REQUEST";_[_.CHAT_MESSAGE_SEND=3]="CHAT_MESSAGE_SEND";_[_.UI_DATA_SEND=4]="UI_DATA_SEND";_[_.SYNC_RESPONSE=32]="SYNC_RESPONSE";_[_.AUDIOS=33]="AUDIOS";_[_.BLOCKS=34]="BLOCKS";_[_.BLOCK_TYPES=35]="BLOCK_TYPES";_[_.CHAT_MESSAGES=36]="CHAT_MESSAGES";_[_.CHUNKS=37]="CHUNKS";_[_.ENTITIES=38]="ENTITIES";_[_.WORLD=39]="WORLD";_[_.CAMERA=40]="CAMERA";_[_.UI=41]="UI";_[_.UI_DATAS=42]="UI_DATAS";_[_.SCENE_UIS=43]="SCENE_UIS";_[_.LIGHTS=44]="LIGHTS";_[_.PLAYERS=45]="PLAYERS";_[_.PARTICLE_EMITTERS=46]="PARTICLE_EMITTERS";_[_.NOTIFICATION_PERMISSION_REQUEST=47]="NOTIFICATION_PERMISSION_REQUEST";_[_.CONNECTION=116]="CONNECTION";_[_.HEARTBEAT=117]="HEARTBEAT";_[_.DEBUG_CONFIG=128]="DEBUG_CONFIG";_[_.PHYSICS_DEBUG_RENDER=192]="PHYSICS_DEBUG_RENDER";_[_.PHYSICS_DEBUG_RAYCASTS=193]="PHYSICS_DEBUG_RAYCASTS"})(sB||={});function LGB(A,Q,B){if(!A.validate(Q))throw Error(`Invalid payload for packet with id ${A.id}. Error: ${db.instance.errorsText(A.validate.errors)}`);let Y=[A.id,Q];if(typeof B==="number")Y.push(B);return Y}function qGB(A){let Q=new Uint8Array(524288),B=new DataView(Q.buffer,Q.byteOffset,Q.byteLength),Y=0;return(J)=>{if(Y+J.length>Q.length){let X=Math.max(Q.length*2,Y+J.length);if(X>JKA){console.error(`Unframer packet buffer exceeded maximum size of ${JKA} bytes, discarding packet...`),Y=0;return}let G=new Uint8Array(X);G.set(Q.subarray(0,Y)),Q=G,B=new DataView(Q.buffer,Q.byteOffset,Q.byteLength)}Q.set(J,Y),Y+=J.length;let C=0;while(Y-C>=hD){let X=B.getUint32(C,!1),G=hD+X;if(Y-C0){if(Y>C)Q.copyWithin(0,C,Y);Y-=C}}}function HQ(A,Q){return{id:A,schema:Q,validate:db.instance.compile(Q)}}function MGB(A){let Q=new Uint8Array(hD+A.length);return new DataView(Q.buffer).setUint32(0,A.length,!1),Q.set(A,hD),Q}var cb={type:"object",properties:{i:{type:"string",nullable:!0},k:{type:"boolean",nullable:!0}},additionalProperties:!1};var CKA=HQ(116,cb);var lb={type:"null",nullable:!0};var XKA=HQ(117,lb);var gw={};iG(gw,{uiDataSendPacketDefinition:()=>UKA,syncRequestPacketDefinition:()=>$KA,stateRequestPacketDefinition:()=>ZKA,inputPacketDefinition:()=>FKA,debugConfigPacketDefinition:()=>WKA,chatMessageSendPacketDefinition:()=>GKA});var pb={type:"string",pattern:"^[0-9A-Fa-f]{6}$"};var xD={type:"object",properties:{m:{type:"string"},c:{...pb,nullable:!0},p:{type:"string",nullable:!0}},required:["m"],additionalProperties:!1};var GKA=HQ(3,xD);var ib={type:"object",properties:{pdr:{type:"boolean",nullable:!0}},additionalProperties:!1};var WKA=HQ(128,ib);var nQ={type:"array",items:[{type:"number"},{type:"number"},{type:"number"}],minItems:3,maxItems:3};var nb={type:"object",properties:{"1":{type:"boolean",nullable:!0},"2":{type:"boolean",nullable:!0},"3":{type:"boolean",nullable:!0},"4":{type:"boolean",nullable:!0},"5":{type:"boolean",nullable:!0},"6":{type:"boolean",nullable:!0},"7":{type:"boolean",nullable:!0},"8":{type:"boolean",nullable:!0},"9":{type:"boolean",nullable:!0},"0":{type:"boolean",nullable:!0},w:{type:"boolean",nullable:!0},a:{type:"boolean",nullable:!0},s:{type:"boolean",nullable:!0},d:{type:"boolean",nullable:!0},q:{type:"boolean",nullable:!0},e:{type:"boolean",nullable:!0},r:{type:"boolean",nullable:!0},f:{type:"boolean",nullable:!0},z:{type:"boolean",nullable:!0},x:{type:"boolean",nullable:!0},c:{type:"boolean",nullable:!0},v:{type:"boolean",nullable:!0},u:{type:"boolean",nullable:!0},i:{type:"boolean",nullable:!0},o:{type:"boolean",nullable:!0},j:{type:"boolean",nullable:!0},k:{type:"boolean",nullable:!0},l:{type:"boolean",nullable:!0},n:{type:"boolean",nullable:!0},m:{type:"boolean",nullable:!0},sp:{type:"boolean",nullable:!0},sh:{type:"boolean",nullable:!0},tb:{type:"boolean",nullable:!0},ml:{type:"boolean",nullable:!0},mr:{type:"boolean",nullable:!0},cp:{type:"number",nullable:!0},cy:{type:"number",nullable:!0},ird:{...nQ,nullable:!0},iro:{...nQ,nullable:!0},jd:{type:"number",nullable:!0},sq:{type:"number",nullable:!0}},additionalProperties:!1};var FKA=HQ(1,nb);var sb={type:"object",properties:{},additionalProperties:!1};var ZKA=HQ(2,sb);var rb={type:"null",nullable:!0};var $KA=HQ(0,rb);var fD={type:"object",properties:{},additionalProperties:!0};var UKA=HQ(4,fD);var hw={};iG(hw,{worldPacketDefinition:()=>SKA,uiPacketDefinition:()=>PKA,uiDatasPacketDefinition:()=>TKA,syncResponsePacketDefinition:()=>OKA,sceneUIsPacketDefinition:()=>jKA,playersPacketDefinition:()=>wKA,physicsDebugRenderPacketDefinition:()=>zKA,physicsDebugRaycastsPacketDefinition:()=>RKA,particleEmittersPacketDefinition:()=>MKA,notificationPermissionRequestPacketDefinition:()=>qKA,lightsPacketDefinition:()=>LKA,entitiesPacketDefinition:()=>NKA,chunksPacketDefinition:()=>DKA,chatMessagesPacketDefinition:()=>HKA,cameraPacketDefinition:()=>IKA,blocksPacketDefinition:()=>KKA,blockTypesPacketDefinition:()=>VKA,audiosPacketDefinition:()=>EKA});var ab={type:"object",properties:{i:{type:"number"},a:{type:"string",nullable:!0},cd:{type:"number",nullable:!0},d:{type:"number",nullable:!0},de:{type:"number",nullable:!0},di:{type:"number",minimum:0,nullable:!0},e:{type:"number",nullable:!0},l:{type:"boolean",nullable:!0},o:{type:"number",nullable:!0},p:{...nQ,nullable:!0},pa:{type:"boolean",nullable:!0},pl:{type:"boolean",nullable:!0},pr:{type:"number",minimum:0,nullable:!0},r:{type:"boolean",nullable:!0},rd:{type:"number",nullable:!0},s:{type:"number",nullable:!0},v:{type:"number",minimum:0,maximum:1,nullable:!0}},required:["i"],additionalProperties:!1};var ob={type:"array",items:{...ab}};var EKA=HQ(33,ob);var tb={type:"object",properties:{i:{type:"number"},c:nQ,r:{type:"number",nullable:!0}},required:["i","c"],additionalProperties:!1};var eb={type:"array",items:{...tb}};var KKA=HQ(34,eb);var Am={type:"object",properties:{i:{type:"number"},l:{type:"boolean",nullable:!0},ll:{type:"number",nullable:!0},n:{type:"string",nullable:!0},t:{type:"string",nullable:!0},ti:{type:"array",items:{type:"number"},nullable:!0},tv:{type:"array",items:{type:"number"},nullable:!0}},required:["i"],additionalProperties:!1};var Qm={type:"array",items:{...Am}};var VKA=HQ(35,Qm);var Bm={type:"object",properties:{cb:{type:"boolean",nullable:!0},m:{type:"number",nullable:!0},e:{type:"number",nullable:!0},et:{type:"number",nullable:!0},fo:{type:"number",nullable:!0},ffo:{type:"number",nullable:!0},fv:{type:"number",nullable:!0},h:{type:"array",items:{type:"string"},nullable:!0},mp:{type:"boolean",nullable:!0},my:{type:"boolean",nullable:!0},o:{...nQ,nullable:!0},p:{...nQ,nullable:!0},pt:{...nQ,nullable:!0},pl:{...nQ,nullable:!0},s:{type:"array",items:{type:"string"},nullable:!0},sa:{type:"number",nullable:!0},z:{type:"number",nullable:!0}},additionalProperties:!1};var Ym={type:"array",items:{...xD}};var Jm={type:"object",properties:{c:nQ,b:{type:"array",items:{type:"number",minimum:0,maximum:255},minItems:4096,maxItems:4096,nullable:!0},r:{type:"array",items:{type:"number"},minItems:0,maxItems:8192,nullable:!0},rm:{type:"boolean",nullable:!0}},required:["c"],additionalProperties:!1};var Cm={type:"array",items:{...Jm}};var gY={type:"array",items:[{type:"number",minimum:0,maximum:255},{type:"number",minimum:0,maximum:255},{type:"number",minimum:0,maximum:255}],minItems:3,maxItems:3};var Xm={type:"object",properties:{n:{type:"string"},b:{type:"number",nullable:!0},c:{type:"boolean",nullable:!0},fi:{type:"boolean",nullable:!0},fo:{type:"boolean",nullable:!0},l:{type:"number",nullable:!0},p:{type:"boolean",nullable:!0},pa:{type:"boolean",nullable:!0},pr:{type:"number",nullable:!0},r:{type:"boolean",nullable:!0},s:{type:"boolean",nullable:!0},w:{type:"number",nullable:!0}},required:["n"],additionalProperties:!1};var bD={type:"array",items:[{type:"number"},{type:"number"},{type:"number"},{type:"number"}],minItems:4,maxItems:4};var Gm={type:"object",properties:{n:{type:"string"},ec:{...gY,nullable:!0},ei:{type:"number",nullable:!0},h:{type:"boolean",nullable:!0},p:{...nQ,nullable:!0},pi:{type:"number",nullable:!0},r:{...bD,nullable:!0},ri:{type:"number",nullable:!0},rm:{type:"boolean",nullable:!0},s:{...nQ,nullable:!0},si:{type:"number",nullable:!0}},required:["n"],additionalProperties:!1};var Wm={type:"object",properties:{c:{...gY,nullable:!0},ci:{type:"number",nullable:!0},th:{type:"number",nullable:!0},o:{type:"number",nullable:!0},oc:{type:"boolean",nullable:!0}},required:[],additionalProperties:!1};var Fm={type:"object",properties:{i:{type:"number"},bh:{...nQ,nullable:!0},bt:{type:"string",nullable:!0},e:{type:"boolean",nullable:!0},ec:{...gY,nullable:!0},ei:{type:"number",nullable:!0},m:{type:"string",nullable:!0},ma:{type:"array",items:{...Xm},nullable:!0},mo:{type:"array",items:{...Gm},nullable:!0},mt:{type:"string",nullable:!0},n:{type:"string",nullable:!0},o:{type:"number",nullable:!0},ol:{...Wm,nullable:!0},p:{...nQ,nullable:!0},pi:{type:"number",nullable:!0},pe:{type:"number",nullable:!0},pn:{type:"string",nullable:!0},r:{...bD,nullable:!0},ri:{type:"number",nullable:!0},rm:{type:"boolean",nullable:!0},si:{type:"number",nullable:!0},sv:{...nQ,nullable:!0},t:{...gY,nullable:!0}},required:["i"],additionalProperties:!1};var Zm={type:"array",items:{...Fm}};var $m={type:"object",properties:{i:{type:"number"},a:{type:"number",nullable:!0},e:{type:"number",nullable:!0},c:{...gY,nullable:!0},d:{type:"number",nullable:!0},n:{type:"number",nullable:!0},o:{...nQ,nullable:!0},p:{...nQ,nullable:!0},pe:{type:"number",minimum:0,maximum:1,nullable:!0},rm:{type:"boolean",nullable:!0},t:{type:"number",nullable:!0},te:{type:"number",nullable:!0},tp:{...nQ,nullable:!0}},required:["i"],additionalProperties:!1};var Um={type:"array",items:{...$m}};var Em={type:"null",nullable:!0};var Km={type:"object",properties:{i:{type:"number"},at:{type:"number",nullable:!0},b:{type:"number",nullable:!0},ce:{...gY,nullable:!0},cev:{...gY,nullable:!0},cs:{...gY,nullable:!0},csv:{...gY,nullable:!0},cie:{type:"number",nullable:!0},ciev:{type:"number",nullable:!0},cis:{type:"number",nullable:!0},cisv:{type:"number",nullable:!0},e:{type:"number",nullable:!0},en:{type:"string",nullable:!0},g:{...nQ,nullable:!0},l:{type:"number",nullable:!0},le:{type:"boolean",nullable:!0},lv:{type:"number",nullable:!0},mp:{type:"number",nullable:!0},o:{...nQ,nullable:!0},oe:{type:"number",nullable:!0},oev:{type:"number",nullable:!0},or:{type:"number",nullable:!0},ofr:{...nQ,nullable:!0},os:{type:"number",nullable:!0},osv:{type:"number",nullable:!0},p:{...nQ,nullable:!0},pa:{type:"boolean",nullable:!0},pv:{...nQ,nullable:!0},r:{type:"number",nullable:!0},rv:{type:"number",nullable:!0},rm:{type:"boolean",nullable:!0},se:{type:"number",nullable:!0},sev:{type:"number",nullable:!0},ss:{type:"number",nullable:!0},ssv:{type:"number",nullable:!0},t:{type:"boolean",nullable:!0},tu:{type:"string",nullable:!0},v:{...nQ,nullable:!0},vv:{...nQ,nullable:!0}},required:["i"],additionalProperties:!1};var Vm={type:"array",items:{...Km}};var Im={type:"object",properties:{o:{...nQ},d:{...nQ},l:{type:"number"},h:{type:"boolean"}},required:["o","d","l","h"],additionalProperties:!1};var Hm={type:"array",items:{...Im}};var Dm={type:"object",properties:{v:{type:"array",items:{type:"number"}},c:{type:"array",items:{type:"number"}}},required:["v","c"],additionalProperties:!1};var Nm={type:"object",properties:{i:{type:"string"},p:{type:"string",nullable:!0},rm:{type:"boolean",nullable:!0},u:{type:"string",nullable:!0}},required:["i"],additionalProperties:!1};var Lm={type:"array",items:{...Nm}};var qm={type:"object",properties:{i:{type:"number"},e:{type:"number",nullable:!0},o:{...nQ,nullable:!0},p:{...nQ,nullable:!0},rm:{type:"boolean",nullable:!0},s:{type:"object",nullable:!0},t:{type:"string",nullable:!0},v:{type:"number",nullable:!0}},required:["i"],additionalProperties:!1};var Mm={type:"array",items:{...qm}};var zm={type:"object",properties:{r:{type:"number"},s:{type:"number"},p:{type:"number"},n:{type:"number"}},required:["r","s","p","n"],additionalProperties:!1};var Rm={type:"object",properties:{p:{type:"boolean",nullable:!0},pf:{type:"boolean",nullable:!0},u:{type:"string",nullable:!0},ua:{type:"array",items:{type:"string"},nullable:!0}},additionalProperties:!1};var wm={type:"array",items:{...fD}};var zGB={type:"array",items:[{type:"boolean"},{type:"boolean"},{type:"boolean"}],minItems:3,maxItems:3};var jm={type:"object",properties:{i:{type:"number"},ac:{...gY,nullable:!0},ai:{type:"number",nullable:!0},dc:{...gY,nullable:!0},di:{type:"number",nullable:!0},dp:{...nQ,nullable:!0},fc:{...gY,nullable:!0},ff:{type:"number",nullable:!0},fn:{type:"number",nullable:!0},n:{type:"string",nullable:!0},s:{type:"string",nullable:!0},si:{type:"number",nullable:!0},t:{type:"number",nullable:!0}},required:["i"],additionalProperties:!1};var IKA=HQ(40,Bm);var HKA=HQ(36,Ym);var DKA=HQ(37,Cm);var NKA=HQ(38,Zm);var LKA=HQ(44,Um);var qKA=HQ(47,Em);var MKA=HQ(46,Vm);var zKA=HQ(192,Dm);var RKA=HQ(193,Hm);var wKA=HQ(45,Lm);var jKA=HQ(43,Mm);var OKA=HQ(32,zm);var PKA=HQ(41,Rm);var TKA=HQ(42,wm);var SKA=HQ(39,jm);var xw=new Map,RGB={...yw,...gw,...hw};for(let A of Object.values(RGB))if("id"in A&&"schema"in A){let Q=A;if(xw.has(Q.id))throw Error(`Packet with id ${Q.id} is already registered.`);xw.set(Q.id,Q)}function wGB(A){if(typeof A!=="object"||A===null||typeof A[0]!=="number"||A[0]<0||A[1]===void 0||A[2]!==void 0&&(typeof A[2]!=="number"||A[2]<0))return!1;let Q=xw.get(A[0]);return!!Q&&Q.validate(A[1])}var gQ=Om;var hIA=qA(JVA(),1);import RZ from"fs";import yIA from"path";var EWB=qA(eVA(),1),KWB=qA(fm(),1),VWB=qA(mm(),1),OE=qA(sw(),1),nm=qA(XIA(),1);var GIA=OE.default;function u9(A){if(A===null)return"null";if(Array.isArray(A))return"array";return typeof A}function n7(A){return u9(A)==="object"}function IWB(A){return Array.isArray(A)&&A.length>0&&A.every((Q)=>("message"in Q))}function sm(A,Q){return A.length<124?A:Q}var WIA="graphql-transport-ws";var T8=((A)=>{return A[A.InternalServerError=4500]="InternalServerError",A[A.InternalClientError=4005]="InternalClientError",A[A.BadRequest=4400]="BadRequest",A[A.BadResponse=4004]="BadResponse",A[A.Unauthorized=4401]="Unauthorized",A[A.Forbidden=4403]="Forbidden",A[A.SubprotocolNotAcceptable=4406]="SubprotocolNotAcceptable",A[A.ConnectionInitialisationTimeout=4408]="ConnectionInitialisationTimeout",A[A.ConnectionAcknowledgementTimeout=4504]="ConnectionAcknowledgementTimeout",A[A.SubscriberAlreadyExists=4409]="SubscriberAlreadyExists",A[A.TooManyInitialisationRequests=4429]="TooManyInitialisationRequests",A})(T8||{}),S8=((A)=>{return A.ConnectionInit="connection_init",A.ConnectionAck="connection_ack",A.Ping="ping",A.Pong="pong",A.Subscribe="subscribe",A.Next="next",A.Error="error",A.Complete="complete",A})(S8||{});function FIA(A){if(!n7(A))throw Error(`Message is expected to be an object, but got ${u9(A)}`);if(!A.type)throw Error("Message is missing the 'type' property");if(typeof A.type!=="string")throw Error(`Message is expects the 'type' property to be a string, but got ${u9(A.type)}`);switch(A.type){case"connection_init":case"connection_ack":case"ping":case"pong":{if(A.payload!=null&&!n7(A.payload))throw Error(`"${A.type}" message expects the 'payload' property to be an object or nullish or missing, but got "${A.payload}"`);break}case"subscribe":{if(typeof A.id!=="string")throw Error(`"${A.type}" message expects the 'id' property to be a string, but got ${u9(A.id)}`);if(!A.id)throw Error(`"${A.type}" message requires a non-empty 'id' property`);if(!n7(A.payload))throw Error(`"${A.type}" message expects the 'payload' property to be an object, but got ${u9(A.payload)}`);if(typeof A.payload.query!=="string")throw Error(`"${A.type}" message payload expects the 'query' property to be a string, but got ${u9(A.payload.query)}`);if(A.payload.variables!=null&&!n7(A.payload.variables))throw Error(`"${A.type}" message payload expects the 'variables' property to be a an object or nullish or missing, but got ${u9(A.payload.variables)}`);if(A.payload.operationName!=null&&u9(A.payload.operationName)!=="string")throw Error(`"${A.type}" message payload expects the 'operationName' property to be a string or nullish or missing, but got ${u9(A.payload.operationName)}`);if(A.payload.extensions!=null&&!n7(A.payload.extensions))throw Error(`"${A.type}" message payload expects the 'extensions' property to be a an object or nullish or missing, but got ${u9(A.payload.extensions)}`);break}case"next":{if(typeof A.id!=="string")throw Error(`"${A.type}" message expects the 'id' property to be a string, but got ${u9(A.id)}`);if(!A.id)throw Error(`"${A.type}" message requires a non-empty 'id' property`);if(!n7(A.payload))throw Error(`"${A.type}" message expects the 'payload' property to be an object, but got ${u9(A.payload)}`);break}case"error":{if(typeof A.id!=="string")throw Error(`"${A.type}" message expects the 'id' property to be a string, but got ${u9(A.id)}`);if(!A.id)throw Error(`"${A.type}" message requires a non-empty 'id' property`);if(!IWB(A.payload))throw Error(`"${A.type}" message expects the 'payload' property to be an array of GraphQL errors, but got ${JSON.stringify(A.payload)}`);break}case"complete":{if(typeof A.id!=="string")throw Error(`"${A.type}" message expects the 'id' property to be a string, but got ${u9(A.id)}`);if(!A.id)throw Error(`"${A.type}" message requires a non-empty 'id' property`);break}default:throw Error(`Invalid message 'type' property "${A.type}"`)}return A}function ZIA(A,Q){return FIA(typeof A==="string"?JSON.parse(A,Q):A)}function PE(A,Q){return FIA(A),JSON.stringify(A,Q)}function am(A){let{url:Q,connectionParams:B,lazy:Y=!0,onNonLazyError:J=console.error,lazyCloseTimeout:C=0,keepAlive:X=0,disablePong:G,connectionAckWaitTimeout:W=0,retryAttempts:F=5,retryWait:Z=async function(v){let y=Math.pow(2,v);await new Promise((h)=>setTimeout(h,y*1000+Math.floor(Math.random()*2700+300)))},shouldRetry:U=rm,on:$,webSocketImpl:E,generateID:K=function(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(v)=>{let y=Math.random()*16|0;return(v=="x"?y:y&3|8).toString(16)})},jsonMessageReplacer:I,jsonMessageReviver:V}=A,H;if(E){if(!DWB(E))throw Error("Invalid WebSocket implementation provided");H=E}else if(typeof WebSocket<"u")H=WebSocket;else if(typeof global<"u")H=global.WebSocket||global.MozWebSocket;else if(typeof window<"u")H=window.WebSocket||window.MozWebSocket;if(!H)throw Error("WebSocket implementation missing; on Node you can `import WebSocket from 'ws';` and pass `webSocketImpl: WebSocket` to `createClient`");let D=H,L=(()=>{let S=(()=>{let y={};return{on(h,g){return y[h]=g,()=>{delete y[h]}},emit(h){if("id"in h)y[h.id]?.(h)}}})(),v={connecting:$?.connecting?[$.connecting]:[],opened:$?.opened?[$.opened]:[],connected:$?.connected?[$.connected]:[],ping:$?.ping?[$.ping]:[],pong:$?.pong?[$.pong]:[],message:$?.message?[S.emit,$.message]:[S.emit],closed:$?.closed?[$.closed]:[],error:$?.error?[$.error]:[]};return{onMessage:S.on,on(y,h){let g=v[y];return g.push(h),()=>{g.splice(g.indexOf(h),1)}},emit(y,...h){for(let g of[...v[y]])g(...h)}}})();function z(S){let v=[L.on("error",(y)=>{v.forEach((h)=>h()),S(y)}),L.on("closed",(y)=>{v.forEach((h)=>h()),S(y)})]}let M,N=0,q,w=!1,P=0,_=!1;async function j(){clearTimeout(q);let[S,v]=await(M??(M=new Promise((g,m)=>(async()=>{if(w){if(await Z(P),!N)return M=void 0,m({code:1000,reason:"All Subscriptions Gone"});P++}L.emit("connecting",w);let n=new D(typeof Q==="function"?await Q():Q,WIA),i,p;function d(){if(isFinite(X)&&X>0)clearTimeout(p),p=setTimeout(()=>{if(n.readyState===D.OPEN)n.send(PE({type:S8.Ping})),L.emit("ping",!1,void 0)},X)}z((b)=>{if(M=void 0,clearTimeout(i),clearTimeout(p),m(b),b instanceof aw)n.close(4499,"Terminated"),n.onerror=null,n.onclose=null}),n.onerror=(b)=>L.emit("error",b),n.onclose=(b)=>L.emit("closed",b),n.onopen=async()=>{try{L.emit("opened",n);let b=typeof B==="function"?await B():B;if(n.readyState!==D.OPEN)return;if(n.send(PE(b?{type:S8.ConnectionInit,payload:b}:{type:S8.ConnectionInit},I)),isFinite(W)&&W>0)i=setTimeout(()=>{n.close(T8.ConnectionAcknowledgementTimeout,"Connection acknowledgement timeout")},W);d()}catch(b){L.emit("error",b),n.close(T8.InternalClientError,sm(b instanceof Error?b.message:String(b),"Internal client error"))}};let x=!1;n.onmessage=({data:b})=>{try{let o=ZIA(b,V);if(L.emit("message",o),o.type==="ping"||o.type==="pong"){if(L.emit(o.type,!0,o.payload),o.type==="pong")d();else if(!G)n.send(PE(o.payload?{type:S8.Pong,payload:o.payload}:{type:S8.Pong})),L.emit("pong",!1,o.payload);return}if(x)return;if(o.type!==S8.ConnectionAck)throw Error(`First message cannot be of type ${o.type}`);clearTimeout(i),x=!0,L.emit("connected",n,o.payload,w),w=!1,P=0,g([n,new Promise((GA,VA)=>z(VA))])}catch(o){n.onmessage=null,L.emit("error",o),n.close(T8.BadResponse,sm(o instanceof Error?o.message:String(o),"Bad response"))}}})())));if(S.readyState===D.CLOSING)await v;let y=()=>{},h=new Promise((g)=>y=g);return[S,y,Promise.race([h.then(()=>{if(!N){let g=()=>S.close(1000,"Normal Closure");if(isFinite(C)&&C>0)q=setTimeout(()=>{if(S.readyState===D.OPEN)g()},C);else g()}}),v])]}function k(S){if(rm(S)&&(HWB(S.code)||[T8.InternalServerError,T8.InternalClientError,T8.BadRequest,T8.BadResponse,T8.Unauthorized,T8.SubprotocolNotAcceptable,T8.SubscriberAlreadyExists,T8.TooManyInitialisationRequests].includes(S.code)))throw S;if(_)return!1;if(rm(S)&&S.code===1000)return N>0;if(!F||P>=F)throw S;if(!U(S))throw S;return w=!0}if(!Y)(async()=>{N++;for(;;)try{let[,,S]=await j();await S}catch(S){try{if(!k(S))return}catch(v){return J?.(v)}}})();function T(S,v){let y=K(S),h=!1,g=!1,m=()=>{N--,h=!0};return(async()=>{N++;for(;;)try{let[n,i,p]=await j();if(h)return i();let d=L.onMessage(y,(x)=>{switch(x.type){case S8.Next:{v.next(x.payload);return}case S8.Error:{g=!0,h=!0,v.error(x.payload),m();return}case S8.Complete:{h=!0,m();return}}});n.send(PE({id:y,type:S8.Subscribe,payload:S},I)),m=()=>{if(!h&&n.readyState===D.OPEN)n.send(PE({id:y,type:S8.Complete},I));N--,h=!0,i()},await p.finally(d);return}catch(n){if(!k(n))return}})().then(()=>{if(!g)v.complete()}).catch((n)=>{v.error(n)}),()=>{if(!h)m()}}return{on:L.on,subscribe:T,iterate(S){let v=[],y={done:!1,error:null,resolve:()=>{}},h=T(S,{next(m){v.push(m),y.resolve()},error(m){y.done=!0,y.error=m,y.resolve()},complete(){y.done=!0,y.resolve()}}),g=async function*(){for(;;){if(!v.length)await new Promise((n)=>y.resolve=n);while(v.length)yield v.shift();if(y.error)throw y.error;if(y.done)return}}();return g.throw=async(m)=>{if(!y.done)y.done=!0,y.error=m,y.resolve();return{done:!0,value:void 0}},g.return=async()=>{return h(),{done:!0,value:void 0}},g},async dispose(){if(_=!0,M){let[S]=await M;S.close(1000,"Normal Closure")}},terminate(){if(M)L.emit("closed",new aw)}}}class aw extends Error{name="TerminatedCloseEvent";message="4499: Terminated";code=4499;reason="Terminated";wasClean=!1}function rm(A){return n7(A)&&"code"in A&&"reason"in A}function HWB(A){if([1000,1001,1006,1005,1012,1013,1014].includes(A))return!1;return A>=1000&&A<=1999}function DWB(A){return typeof A==="function"&&"constructor"in A&&"CLOSED"in A&&"CLOSING"in A&&"CONNECTING"in A&&"OPEN"in A}var gIA=qA(vIA(),1);var rD="./dev/persistence",tw=process.env.HYTOPIA_NOTIFICATION_SERVICE_URL||"https://prod.notifications.hytopia.com";class P5{static instance=new P5;creatorApiKey=process.env.HYTOPIA_API_KEY;gameId=process.env.HYTOPIA_GAME_ID;lobbyId=process.env.HYTOPIA_LOBBY_ID;_creativeGateway;_gqlWs;constructor(){this._gqlWs=am({url:"wss://prod.gql.hytopia.com/graphql",webSocketImpl:GIA});try{this._creativeGateway=new gIA.CreativeGateway}catch{console.warn(["━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━","\uD83D\uDEA8 HYTOPIA PLATFORM GATEWAY IS NOT INITIALIZED \uD83D\uDEA8","","\uD83D\uDD27 Local development is still possible, but these features will be disabled:"," • \uD83D\uDC64 Live Player Accounts"," • \uD83C\uDFAD Live Player Cosmetics"," • \uD83D\uDD14 Scheduled Notifications"," • \uD83D\uDC1B Crash Analytics & Debug Logs","","\uD83D\uDCA1 These features will be enabled but modified:"," • \uD83D\uDCBE Player & Global Persisted Data - Data will be persisted"," locally in the ./dev/persistence directory of your project."," Player ids for data persistence will begin at 1 for the first "," player to join your local server, and increments for each"," additional player. This means that if you restart your"," server, the first player id will be 1 again. This is to ensure"," that data persistence across server restarts can be easily"," tested and debugged in local development.","","To enable the HYTOPIA Platform Gateway locally:"," 1. Set these environment variables:"," HYTOPIA_API_KEY, HYTOPIA_GAME_ID, HYTOPIA_LOBBY_ID"," 2. You can find these values at: https://create.hytopia.com","","Note: In production, these environment variables will be auto-populated ","& the HYTOPIA Platform Gateway will automatically be initialized \uD83D\uDE80","━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━",""].join(` `))}}get isGatewayAvailable(){return!!this._creativeGateway}async getGlobalData(A){if(!this._creativeGateway&&process.env.NODE_ENV==="production")return l.warning("PlatformGateway.getGlobalData(): You are running in production mode, but the Platform Gateway is not initialized! No data will be returned."),{error:{code:"gatewayError",message:"Platform Gateway is not initialized."}};return this._creativeGateway?await this._creativeGateway.kv.get(A):this._readDevGlobalDataLocally(A)}async getPlayerCosmetics(A){let Q=this._gqlWs.iterate({query:`{ userById(id: "${A}") { characterSettings { @@ -258,16 +258,16 @@ globstar while`,A,U,Q,$,E),this.matchOne(A.slice(U),Q.slice($),B))return this.de } } } - }`});try{let Y=(await Q.next()).value?.data?.userById;if(!Y)return l.warning(`PlatformGateway.getPlayerCosmetics(): No cosmetic data returned for user id "${A}".`);let J=Y.equippedItems?Y.equippedItems.map((W)=>({slot:W.slot,item:W.itemInstance.item.slots.find((F)=>F.type===W.slot)})).filter((W)=>!!W.item):[],C=Y.characterSettings?.hair?.modelUrl,X=Y.characterSettings?.hair?.textureUrl,G=`https://d3qkovarww0lj1.cloudfront.net/?skin_tone=${Y.characterSettings?.skinTone||"SKIN_COLOR_1"}&clothing=${Y.characterSettings?.clothing||"CLOTHING_1"}&hair_style=${Y.characterSettings?.hairStyle||"HAIR_STYLE_1"}&hair_color=${Y.characterSettings?.hairColor||"HAIR_COLOR_1"}&eye_color=${Y.characterSettings?.eyeColor||"00FF00"}`;return{equippedItems:J,hairModelUri:C,hairTextureUri:X,skinTextureUri:G}}finally{await Q.return?.()}}async getPlayerSession(A){if(!this._creativeGateway)return;return await this._creativeGateway.getSession(A)}async scheduleNotification(A,Q,B){if(!tw)return l.warning("PlatformGateway.scheduleNotification(): HYTOPIA_NOTIFICATION_SERVICE_URL is not set. Unable to schedule notification.");if(!this.gameId||!this.creatorApiKey)return l.warning("PlatformGateway.scheduleNotification(): HYTOPIA_GAME_ID or HYTOPIA_API_KEY is not set. Unable to schedule notification.");if(BsetTimeout(J,500))}l.warning(`PersistenceManager.getGlobalData(): Failed to get global data after ${Q} attempts.`);return}async getPlayerData(A){let Q=await this._saveStatesClient.load(this._getPlayerKey(A));if(!Q)return l.warning(`PersistenceManager.getPlayerData(): Failed to get player data for player ${A.id}. Persistence service may be down.`),{};return Q}async setGlobalData(A,Q){let B=await P5.instance.setGlobalData(A,Q);if(!B||B.error){if(B?.error)l.warning(`PersistenceManager.setGlobalData(): ${B.error.message}`)}}async setPlayerData(A,Q){let B=await this.getPlayerData(A);for(let[Y,J]of Object.entries(Q))B[Y]=J}async unloadPlayerData(A){await this._saveStatesClient.unload(this._getPlayerKey(A))}_getPlayerKey(A){return`player-${A.id}`}}var tm;((Y)=>{Y[Y.FIRST_PERSON=0]="FIRST_PERSON";Y[Y.THIRD_PERSON=1]="THIRD_PERSON";Y[Y.SPECTATOR=2]="SPECTATOR"})(tm||={});var em;((L)=>{L.FACE_ENTITY="PLAYER_CAMERA.FACE_ENTITY";L.FACE_POSITION="PLAYER_CAMERA.FACE_POSITION";L.SET_ATTACHED_TO_ENTITY="PLAYER_CAMERA.SET_ATTACHED_TO_ENTITY";L.SET_ATTACHED_TO_POSITION="PLAYER_CAMERA.SET_ATTACHED_TO_POSITION";L.SET_COLLIDES_WITH_BLOCKS="PLAYER_CAMERA.SET_COLLIDES_WITH_BLOCKS";L.SET_FILM_OFFSET="PLAYER_CAMERA.SET_FILM_OFFSET";L.SET_FORWARD_OFFSET="PLAYER_CAMERA.SET_FORWARD_OFFSET";L.SET_FOV="PLAYER_CAMERA.SET_FOV";L.SET_MODE="PLAYER_CAMERA.SET_MODE";L.SET_OFFSET="PLAYER_CAMERA.SET_OFFSET";L.SET_SHOULDER_ANGLE="PLAYER_CAMERA.SET_SHOULDER_ANGLE";L.SET_TARGET_ENTITY="PLAYER_CAMERA.SET_TARGET_ENTITY";L.SET_TARGET_POSITION="PLAYER_CAMERA.SET_TARGET_POSITION";L.SET_VIEW_MODEL="PLAYER_CAMERA.SET_VIEW_MODEL";L.SET_VIEW_MODEL_HIDDEN_NODES="PLAYER_CAMERA.SET_VIEW_MODEL_HIDDEN_NODES";L.SET_VIEW_MODEL_PITCHES_WITH_CAMERA="PLAYER_CAMERA.SET_VIEW_MODEL_PITCHES_WITH_CAMERA";L.SET_VIEW_MODEL_SHOWN_NODES="PLAYER_CAMERA.SET_VIEW_MODEL_SHOWN_NODES";L.SET_VIEW_MODEL_YAWS_WITH_CAMERA="PLAYER_CAMERA.SET_VIEW_MODEL_YAWS_WITH_CAMERA";L.SET_ZOOM="PLAYER_CAMERA.SET_ZOOM"})(em||={});class aD extends BQ{player;_attachedToEntity;_attachedToPosition;_collidesWithBlocks=!0;_filmOffset=0;_forwardOffset=0;_fov=75;_mode=1;_offset={x:0,y:0,z:0};_orientation={pitch:0,yaw:0};_shoulderAngle=0;_targetEntity;_targetPosition;_viewModelUri;_viewModelHiddenNodes=new Set;_viewModelPitchesWithCamera=!1;_viewModelShownNodes=new Set;_viewModelYawsWithCamera=!1;_zoom=1;constructor(A){super();this.player=A}get attachedToEntity(){return this._attachedToEntity}get attachedToPosition(){return this._attachedToPosition}get collidesWithBlocks(){return this._collidesWithBlocks}get facingDirection(){return{x:-Math.sin(this._orientation.yaw)*Math.cos(this._orientation.pitch),y:Math.sin(this._orientation.pitch),z:-Math.cos(this._orientation.yaw)*Math.cos(this._orientation.pitch)}}get facingQuaternion(){let A=this._orientation.pitch*0.5,Q=this._orientation.yaw*0.5,B=Math.cos(A),Y=Math.sin(A),J=Math.cos(Q),C=Math.sin(Q);return{x:Y*J,y:B*C,z:-Y*C,w:B*J}}get filmOffset(){return this._filmOffset}get forwardOffset(){return this._forwardOffset}get fov(){return this._fov}get modelHiddenNodes(){return this._viewModelHiddenNodes}get modelShownNodes(){return this._viewModelShownNodes}get mode(){return this._mode}get offset(){return this._offset}get orientation(){return this._orientation}get shoulderAngle(){return this._shoulderAngle}get targetEntity(){return this._targetEntity}get targetPosition(){return this._targetPosition}get viewModelUri(){return this._viewModelUri??this._attachedToEntity?.modelUri}get viewModelHiddenNodes(){return this._viewModelHiddenNodes}get viewModelPitchesWithCamera(){return this._viewModelPitchesWithCamera}get viewModelShownNodes(){return this._viewModelShownNodes}get viewModelYawsWithCamera(){return this._viewModelYawsWithCamera}get zoom(){return this._zoom}faceEntity(A){if(!this._requirePlayerWorld("faceEntity"))return;this._targetEntity=void 0,this._targetPosition=void 0,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.FACE_ENTITY",{playerCamera:this,entity:A})}facePosition(A){if(!this._requirePlayerWorld("facePosition"))return;this._targetEntity=void 0,this._targetPosition=void 0,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.FACE_POSITION",{playerCamera:this,position:A})}reset(){this._attachedToEntity=void 0,this._attachedToPosition=void 0,this._orientation={pitch:0,yaw:0},this._targetEntity=void 0,this._targetPosition=void 0}setAttachedToEntity(A){if(!this._requirePlayerWorld("setAttachedToEntity"))return;if(!A.isSpawned)return l.error(`PlayerCamera.setAttachedToEntity(): Entity ${A.id} is not spawned!`);if(this._targetEntity===A)return l.error(`PlayerCamera.setAttachedToEntity(): Entity ${A.id} is already set as the target. Attachment and target cannot be the same!`);this._attachedToEntity=A,this._attachedToPosition=void 0,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_ATTACHED_TO_ENTITY",{playerCamera:this,entity:A})}setAttachedToPosition(A){if(!this._requirePlayerWorld("setAttachedToPosition"))return;if(A&&this._targetPosition?.x===A.x&&this._targetPosition?.y===A.y&&this._targetPosition?.z===A.z)return l.error(`PlayerCamera.setAttachedToPosition(): Position ${A.x}, ${A.y}, ${A.z} is already set as the target. Attachment and target cannot be the same!`);this._attachedToPosition=A,this._attachedToEntity=void 0,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_ATTACHED_TO_POSITION",{playerCamera:this,position:A})}setCollidesWithBlocks(A){if(!this._requirePlayerWorld("setCollidesWithBlocks"))return;this._collidesWithBlocks=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_COLLIDES_WITH_BLOCKS",{playerCamera:this,collidesWithBlocks:A})}setFilmOffset(A){if(!this._requirePlayerWorld("setFilmOffset"))return;this._filmOffset=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_FILM_OFFSET",{playerCamera:this,filmOffset:A})}setForwardOffset(A){if(!this._requirePlayerWorld("setForwardOffset"))return;this._forwardOffset=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_FORWARD_OFFSET",{playerCamera:this,forwardOffset:A})}setFov(A){if(!this._requirePlayerWorld("setFov"))return;this._fov=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_FOV",{playerCamera:this,fov:A})}setMode(A){if(!this._requirePlayerWorld("setMode"))return;this._mode=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_MODE",{playerCamera:this,mode:A})}setOffset(A){if(!this._requirePlayerWorld("setOffset"))return;this._offset=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_OFFSET",{playerCamera:this,offset:A})}setOrientationPitch(A){this._orientation.pitch=A}setOrientationYaw(A){this._orientation.yaw=A}setShoulderAngle(A){if(!this._requirePlayerWorld("setShoulderAngle"))return;this._shoulderAngle=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_SHOULDER_ANGLE",{playerCamera:this,shoulderAngle:A})}setTargetEntity(A){if(!this._requirePlayerWorld("setTargetEntity"))return;if(A&&this._attachedToEntity===A)return l.error(`PlayerCamera.setTargetEntity(): Entity ${A.id} is already set as the attachment. Attachment and target cannot be the same!`);if(this._targetEntity=A,A)this._targetPosition=void 0;this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_TARGET_ENTITY",{playerCamera:this,entity:A})}setTargetPosition(A){if(!this._requirePlayerWorld("setTargetPosition"))return;if(A&&this._attachedToPosition?.x===A.x&&this._attachedToPosition?.y===A.y&&this._attachedToPosition?.z===A.z)return l.error(`PlayerCamera.setTargetPosition(): Position ${A.x}, ${A.y}, ${A.z} is already set as the attachment. Attachment and target cannot be the same!`);if(this._targetPosition=A,A)this._targetEntity=void 0;this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_TARGET_POSITION",{playerCamera:this,position:A})}setViewModel(A){if(!this._requirePlayerWorld("setViewModel"))return;if(!this._attachedToEntity)return l.error("PlayerCamera.setViewModel(): Camera is not attached to an entity, cannot set view model! Use camera.setAttachedToEntity() first.");this._viewModelUri=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_VIEW_MODEL",{playerCamera:this,viewModelUri:A})}setViewModelHiddenNodes(A){if(!this._requirePlayerWorld("setViewModelHiddenNodes"))return;this._viewModelHiddenNodes=new Set(A.map((Q)=>Q.toLowerCase())),this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_VIEW_MODEL_HIDDEN_NODES",{playerCamera:this,viewModelHiddenNodes:this._viewModelHiddenNodes})}setViewModelPitchesWithCamera(A){if(!this._requirePlayerWorld("setViewModelPitchesWithCamera"))return;this._viewModelPitchesWithCamera=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_VIEW_MODEL_PITCHES_WITH_CAMERA",{playerCamera:this,viewModelPitchesWithCamera:A})}setViewModelShownNodes(A){if(!this._requirePlayerWorld("setViewModelShownNodes"))return;this._viewModelShownNodes=new Set(A.map((Q)=>Q.toLowerCase())),this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_VIEW_MODEL_SHOWN_NODES",{playerCamera:this,viewModelShownNodes:this._viewModelShownNodes})}setViewModelYawsWithCamera(A){if(!this._requirePlayerWorld("setViewModelYawsWithCamera"))return;this._viewModelYawsWithCamera=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_VIEW_MODEL_YAWS_WITH_CAMERA",{playerCamera:this,viewModelYawsWithCamera:A})}setZoom(A){if(!this._requirePlayerWorld("setZoom"))return;this._zoom=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_ZOOM",{playerCamera:this,zoom:A})}serialize(){return GQ.serializePlayerCamera(this)}_requirePlayerWorld(A){if(!this.player.world)l.error(`PlayerCamera._requirePlayerWorld(): Player ${this.player.id} is not in a world, invoked method: ${A}()`);return!!this.player.world}}var ew;((X)=>{X.APPEND="PLAYER_UI.APPEND";X.DATA="PLAYER_UI.DATA";X.FREEZE_POINTER_LOCK="PLAYER_UI.FREEZE_POINTER_LOCK";X.LOAD="PLAYER_UI.LOAD";X.LOCK_POINTER="PLAYER_UI.LOCK_POINTER";X.SEND_DATA="PLAYER_UI.SEND_DATA"})(ew||={});class oD extends BQ{player;constructor(A){super();this.player=A}append(A){if(!this.player.world)return;this.emitWithWorld(this.player.world,"PLAYER_UI.APPEND",{playerUI:this,htmlUri:A})}freezePointerLock(A){if(!this.player.world)return;this.emitWithWorld(this.player.world,"PLAYER_UI.FREEZE_POINTER_LOCK",{playerUI:this,freeze:A})}load(A){if(!this.player.world)return;this.emitWithWorld(this.player.world,"PLAYER_UI.LOAD",{playerUI:this,htmlUri:A})}lockPointer(A){if(!this.player.world)return;this.emitWithWorld(this.player.world,"PLAYER_UI.LOCK_POINTER",{playerUI:this,lock:A})}sendData(A){if(!this.player.world)return;this.emitWithWorld(this.player.world,"PLAYER_UI.SEND_DATA",{playerUI:this,data:A})}}var lWB=["w","a","s","d","sp","sh","tb","ml","mr","q","e","r","f","z","x","c","v","u","i","o","j","k","l","n","m","1","2","3","4","5","6","7","8","9","0","cp","cy","iro","ird","jd"],tD;((G)=>{G.CHAT_MESSAGE_SEND="PLAYER.CHAT_MESSAGE_SEND";G.INTERACT="PLAYER.INTERACT";G.JOINED_WORLD="PLAYER.JOINED_WORLD";G.LEFT_WORLD="PLAYER.LEFT_WORLD";G.RECONNECTED_WORLD="PLAYER.RECONNECTED_WORLD";G.REQUEST_NOTIFICATION_PERMISSION="PLAYER.REQUEST_NOTIFICATION_PERMISSION";G.REQUEST_SYNC="PLAYER.REQUEST_SYNC"})(tD||={});class TE extends BQ{static _devNextPlayerId=1;id;username;profilePictureUrl;camera;connection;cosmetics;ui;_input={};_interactEnabled=!0;_lastUnreliableInputSequenceNumber=0;_maxInteractDistance=20;_persistedData;_world;_worldSwitched=!1;constructor(A,Q){super();this.id=Q?.user.id??`player-${TE._devNextPlayerId++}`,this.username=Q?.user.username??this.id,this.profilePictureUrl=Q?.user.profilePictureURL??void 0,this.camera=new aD(this),this.connection=A,this.cosmetics=P5.instance.getPlayerCosmetics(this.id),this.ui=new oD(this),A.onPacket(gQ.PacketId.CHAT_MESSAGE_SEND,this._onChatMessageSendPacket),A.onPacket(gQ.PacketId.DEBUG_CONFIG,this._onDebugConfigPacket),A.onPacket(gQ.PacketId.INPUT,this._onInputPacket),A.onPacket(gQ.PacketId.SYNC_REQUEST,this._onSyncRequestPacket),A.onPacket(gQ.PacketId.UI_DATA_SEND,this._onUIDataSendPacket)}get input(){return this._input}get isInteractEnabled(){return this._interactEnabled}get maxInteractDistance(){return this._maxInteractDistance}get world(){return this._world}disconnect(){this._leaveWorld(),this.connection.disconnect()}getPersistedData(){if(!this._persistedData)return;let A=Object.keys(this._persistedData);if(A.length===0||A.length===1&&A[0]==="__version")return;return this._persistedData}joinWorld(A){if(this._world===A)return;if(!this._world)this._world=A,this.emitWithWorld(this._world,"PLAYER.JOINED_WORLD",{player:this,world:this._world});else{for(let Q of this._world.entityManager.getPlayerEntitiesByPlayer(this))if(Q.isSpawned)Q.despawn();this.disconnect(),this._world=A,this._worldSwitched=!0}}async scheduleNotification(A,Q){if(!this._world)return l.warning("Player.scheduleNotification(): Player must be in a world to schedule a notification.");return this.emitWithWorld(this._world,"PLAYER.REQUEST_NOTIFICATION_PERMISSION",{player:this}),P5.instance.scheduleNotification(this.id,A,Q)}async unscheduleNotification(A){if(!A)return!1;return P5.instance.unscheduleNotification(A)}async loadInitialPersistedData(){if(this._persistedData)return;this._persistedData=await s7.instance.getPlayerData(this)}reconnected(){if(!this._world)return;if(this._lastUnreliableInputSequenceNumber=0,!this._worldSwitched)this.emitWithWorld(this._world,"PLAYER.RECONNECTED_WORLD",{player:this,world:this._world});else this._worldSwitched=!1,this.emitWithWorld(this._world,"PLAYER.JOINED_WORLD",{player:this,world:this._world})}resetInputs(){this._input={}}setInteractEnabled(A){this._interactEnabled=A}setMaxInteractDistance(A){this._maxInteractDistance=A}setPersistedData(A){if(!this._persistedData){l.warning(`Player.setPersistedData(): Persisted data not found for player ${this.id}`);return}for(let[Q,B]of Object.entries(A))this._persistedData[Q]=B}serialize(){return GQ.serializePlayer(this)}_leaveWorld(){if(!this._world)return;this.emitWithWorld(this._world,"PLAYER.LEFT_WORLD",{player:this,world:this._world}),this._world=void 0}_onChatMessageSendPacket=(A)=>{if(!this._world)return;let Q=A[1].m;if(this._world.chatManager.handleCommand(this,Q)){this._world.chatManager.sendPlayerMessage(this,`Command Entered: ${Q}`,"CCCCCC");return}this.emitWithWorld(this._world,"PLAYER.CHAT_MESSAGE_SEND",{player:this,message:Q})};_onDebugConfigPacket=(A)=>{console.log(A)};_onInputPacket=(A)=>{let Q=A[1];if(Q.sq!==void 0){if(Q.sq{if(!this.world||!this._input.ird||!this._input.iro)return;if(this._interactEnabled){let A={x:this._input.iro[0],y:this._input.iro[1],z:this._input.iro[2]},Q={x:this._input.ird[0],y:this._input.ird[1],z:this._input.ird[2]},B=this.world.entityManager.getPlayerEntitiesByPlayer(this)[0],Y=this.world.simulation.raycast(A,Q,this._maxInteractDistance,{filterExcludeRigidBody:B?.rawRigidBody,filterFlags:WB.QueryFilterFlags.EXCLUDE_SENSORS});if(this.emitWithWorld(this.world,"PLAYER.INTERACT",{player:this,interactOrigin:A,interactDirection:Q,raycastHit:Y}),Y?.hitEntity)Y.hitEntity.interact(this,Y);if(Y?.hitBlock)Y.hitBlock.blockType.interact(this,Y)}};_onSyncRequestPacket=()=>{if(this._world)this.emitWithWorld(this._world,"PLAYER.REQUEST_SYNC",{player:this,receivedAt:Date.now(),receivedAtMs:performance.now()})};_onUIDataSendPacket=(A)=>{this.ui.emit("PLAYER_UI.DATA",{playerUI:this.ui,data:A[1]})}}var Au;((B)=>{B.BROADCAST_MESSAGE="CHAT.BROADCAST_MESSAGE";B.PLAYER_MESSAGE="CHAT.PLAYER_MESSAGE"})(Au||={});class eD extends BQ{_commandCallbacks={};_world;constructor(A){super();this._world=A,this._subscribeToPlayerEvents()}registerCommand(A,Q){this._commandCallbacks[A]=Q}unregisterCommand(A){delete this._commandCallbacks[A]}sendBroadcastMessage(A,Q){this._sendBroadcastMessage(void 0,A,Q)}handleCommand(A,Q){let[B,...Y]=Q.split(" "),J=this._commandCallbacks[B];if(J)return J(A,Y,Q),!0;return!1}sendPlayerMessage(A,Q,B){this.emitWithWorld(this._world,"CHAT.PLAYER_MESSAGE",{player:A,message:Q,color:B})}_subscribeToPlayerEvents(){this._world.on("PLAYER.CHAT_MESSAGE_SEND",(A)=>{let{player:Q,message:B}=A;this._sendBroadcastMessage(Q,B)})}_sendBroadcastMessage(A,Q,B){this.emitWithWorld(this._world,"CHAT.BROADCAST_MESSAGE",{player:A,message:Q,color:B})}}var d9=16,T5=d9-1,RZ=Math.log2(d9),c9=d9**3,SE=255;class MY{_blocks;_blockRotations=new Map;_originCoordinate;constructor(A){this._blocks=new Uint8Array(c9),this._originCoordinate=A}get blocks(){return this._blocks}get blockRotations(){return this._blockRotations}get originCoordinate(){return this._originCoordinate}static blockIndexToLocalCoordinate(A){return{x:A&T5,y:A>>RZ&T5,z:A>>RZ*2&T5}}static localCoordinateToBlockIndex(A){return A.x+(A.y<SE)return l.error(`Chunk.setBlock(): Block type id ${Q} is out of bounds (expected 0-${SE}).`);let Y=this._getIndex(A);if(this._blocks[Y]=Q,this._blockRotations.delete(Y),B&&B!==w8.Y_0)this._blockRotations.set(Y,B)}serialize(){return GQ.serializeChunk(this)}_getIndex(A){return MY.localCoordinateToBlockIndex(A)}_isValidLocalCoordinate(A){return A.x>=0&&A.x<=T5&&A.y>=0&&A.y<=T5&&A.z>=0&&A.z<=T5}}var pWB=32,iWB=c9/pWB,AN=54,nWB=BigInt(AN),sWB=BigInt(AN*2),Qu;((Y)=>{Y.ADD_CHUNK="CHUNK_LATTICE.ADD_CHUNK";Y.REMOVE_CHUNK="CHUNK_LATTICE.REMOVE_CHUNK";Y.SET_BLOCK="CHUNK_LATTICE.SET_BLOCK"})(Qu||={});class QN extends BQ{_blockTypeColliders=new Map;_blockTypeChunkMasks=new Map;_blockTypeCounts=new Map;_chunks=new Map;_rigidBody;_world;constructor(A){super();this._world=A}get chunkCount(){return this._chunks.size}clear(){for(let A of this._blockTypeColliders.values())A.removeFromSimulation();this._chunks.forEach((A)=>{this.emitWithWorld(this._world,"CHUNK_LATTICE.REMOVE_CHUNK",{chunkLattice:this,chunk:A})}),this._blockTypeColliders.clear(),this._blockTypeChunkMasks.clear(),this._blockTypeCounts.clear(),this._chunks.clear()}getBlockId(A){let Q=this.getChunk(A);if(!Q)return 0;return Q.getBlockId(MY.globalCoordinateToLocalCoordinate(A))}getBlockTypeCollider(A){return this._blockTypeColliders.get(A)}getBlockType(A){let Q=this.getBlockId(A);return Q?this._world.blockTypeRegistry.getBlockType(Q):null}getBlockTypeCount(A){if(!this._isValidBlockTypeId(A))return 0;return this._blockTypeCounts.get(A)??0}getChunk(A){return this._chunks.get(this._getChunkKey(A))}getOrCreateBlockTypeCollider(A,Q){let B=this._blockTypeColliders.get(A);if(B)return B;let J=this._world.blockTypeRegistry.getBlockType(A).createCollider(Q);return this._blockTypeColliders.set(A,J),J}getOrCreateChunk(A){let Q=MY.globalCoordinateToOriginCoordinate(A),B=this._packCoordinate(Q),Y=this._chunks.get(B);if(Y)return Y;return Y=new MY(Q),this._chunks.set(B,Y),this.emitWithWorld(this._world,"CHUNK_LATTICE.ADD_CHUNK",{chunkLattice:this,chunk:Y}),Y}getAllChunks(){return Array.from(this._chunks.values())}hasBlock(A){let Q=this.getChunk(A);if(!Q)return!1;return Q.hasBlock(MY.globalCoordinateToLocalCoordinate(A))}hasChunk(A){return this._chunks.has(this._getChunkKey(A))}initializeBlocks(A){let Q=function*(){for(let B in A){let Y=Number(B),J=A[Y];for(let C=0;C>>0;if(G===0)continue;let W=G;while(W!==0){let F=W&-W,Z=31-Math.clz32(F),U=(X<<5)+Z,$=MY.blockIndexToLocalCoordinate(U),E=C.getBlockRotation($);Q.push({globalCoordinate:{x:C.originCoordinate.x+$.x,y:C.originCoordinate.y+$.y,z:C.originCoordinate.z+$.z},blockRotation:E===w8.Y_0?void 0:E}),W=(W&W-1)>>>0}}}return Q}_isChunkMaskEmpty(A){for(let Q=0;Q=0&&A<=SE;if(!Q)l.error(`ChunkLattice._isValidBlockTypeId(): Block type id ${A} is out of bounds (expected 0-${SE}).`);return Q}_setBlockTypePlacement(A,Q,B){let Y=this._blockTypeChunkMasks.get(A);if(!Y){if(!B)return;Y=new Map,this._blockTypeChunkMasks.set(A,Y)}let J=this._getChunkKey(Q),C=MY.globalCoordinateToLocalCoordinate(Q),X=MY.localCoordinateToBlockIndex(C),G=X>>>5,W=1<<(X&31)>>>0,F=Y.get(J);if(!F){if(!B)return;F=new Uint32Array(iWB),Y.set(J,F)}let Z=(F[G]&W)!==0;if(B){if(Z)return;F[G]|=W,this._blockTypeCounts.set(A,(this._blockTypeCounts.get(A)??0)+1);return}if(!Z)return;F[G]&=~W;let U=Math.max(0,(this._blockTypeCounts.get(A)??0)-1);if(U>0)this._blockTypeCounts.set(A,U);else this._blockTypeCounts.delete(A),this._blockTypeChunkMasks.delete(A);if(this._blockTypeChunkMasks.has(A)&&this._isChunkMaskEmpty(F))Y.delete(J)}}class BN{_colliderHandleBlockTypeMap=new Map;_colliderHandleCollisionCallbackMap=new Map;_colliderHandleEntityMap=new Map;_cleanupBlockTypeColliderHandles=new Set;_pendingCleanupBlockTypeColliderHandles=new Set;_cleanupCollisionCallbackColliderHandles=new Set;_pendingCleanupCollisionCallbackColliderHandles=new Set;_cleanupEntityColliderHandles=new Set;_pendingCleanupEntityColliderHandles=new Set;getColliderBlockType(A){if(!this._requireSimulatedCollider(A))return;return this._colliderHandleBlockTypeMap.get(A.rawCollider.handle)}getColliderCollisionCallback(A){if(!this._requireSimulatedCollider(A))return;return this._colliderHandleCollisionCallbackMap.get(A.rawCollider.handle)}getColliderEntity(A){if(!this._requireSimulatedCollider(A))return;return this._colliderHandleEntityMap.get(A.rawCollider.handle)}getColliderHandleBlockType(A){return this._colliderHandleBlockTypeMap.get(A)}getColliderHandleCollisionCallback(A){return this._colliderHandleCollisionCallbackMap.get(A)}getColliderHandleEntity(A){return this._colliderHandleEntityMap.get(A)}removeColliderBlockType(A){if(!this._requireSimulatedCollider(A))return;this.removeColliderHandleBlockType(A.rawCollider.handle)}removeColliderCollisionCallback(A){if(!this._requireSimulatedCollider(A))return;this.removeColliderHandleCollisionCallback(A.rawCollider.handle)}removeColliderEntity(A){if(!this._requireSimulatedCollider(A))return;this.removeColliderHandleEntity(A.rawCollider.handle)}removeColliderHandleBlockType(A){this._colliderHandleBlockTypeMap.delete(A)}removeColliderHandleCollisionCallback(A){this._colliderHandleCollisionCallbackMap.delete(A)}removeColliderHandleEntity(A){this._colliderHandleEntityMap.delete(A)}setColliderBlockType(A,Q){if(!this._requireSimulatedCollider(A))return;this.setColliderHandleBlockType(A.rawCollider.handle,Q)}setColliderCollisionCallback(A,Q){if(!this._requireSimulatedCollider(A))return;this.setColliderHandleCollisionCallback(A.rawCollider.handle,Q)}setColliderEntity(A,Q){if(!this._requireSimulatedCollider(A))return;this.setColliderHandleEntity(A.rawCollider.handle,Q)}setColliderHandleBlockType(A,Q){this._colliderHandleBlockTypeMap.set(A,Q),this._cleanupBlockTypeColliderHandles.delete(A),this._pendingCleanupBlockTypeColliderHandles.delete(A)}setColliderHandleCollisionCallback(A,Q){this._colliderHandleCollisionCallbackMap.set(A,Q),this._cleanupCollisionCallbackColliderHandles.delete(A),this._pendingCleanupCollisionCallbackColliderHandles.delete(A)}setColliderHandleEntity(A,Q){this._colliderHandleEntityMap.set(A,Q),this._cleanupEntityColliderHandles.delete(A),this._pendingCleanupEntityColliderHandles.delete(A)}queueColliderHandleForCleanup(A){if(this._colliderHandleBlockTypeMap.has(A))this._pendingCleanupBlockTypeColliderHandles.add(A);if(this._colliderHandleCollisionCallbackMap.has(A))this._pendingCleanupCollisionCallbackColliderHandles.add(A);if(this._colliderHandleEntityMap.has(A))this._pendingCleanupEntityColliderHandles.add(A)}cleanup(){for(let A of this._cleanupBlockTypeColliderHandles)this._colliderHandleBlockTypeMap.delete(A);if(this._cleanupBlockTypeColliderHandles.size>0)this._cleanupBlockTypeColliderHandles.clear();for(let A of this._cleanupCollisionCallbackColliderHandles)this._colliderHandleCollisionCallbackMap.delete(A);if(this._cleanupCollisionCallbackColliderHandles.size>0)this._cleanupCollisionCallbackColliderHandles.clear();for(let A of this._cleanupEntityColliderHandles)this._colliderHandleEntityMap.delete(A);if(this._cleanupEntityColliderHandles.size>0)this._cleanupEntityColliderHandles.clear();for(let A of this._pendingCleanupBlockTypeColliderHandles)this._cleanupBlockTypeColliderHandles.add(A);if(this._pendingCleanupBlockTypeColliderHandles.size>0)this._pendingCleanupBlockTypeColliderHandles.clear();for(let A of this._pendingCleanupCollisionCallbackColliderHandles)this._cleanupCollisionCallbackColliderHandles.add(A);if(this._pendingCleanupCollisionCallbackColliderHandles.size>0)this._pendingCleanupCollisionCallbackColliderHandles.clear();for(let A of this._pendingCleanupEntityColliderHandles)this._cleanupEntityColliderHandles.add(A);if(this._pendingCleanupEntityColliderHandles.size>0)this._pendingCleanupEntityColliderHandles.clear()}_requireSimulatedCollider(A){if(!A.rawCollider)l.error("ColliderMap._requireSimulatedCollider(): Collider is not in the simulation.");return!!A.rawCollider}}class G0 extends $Z{static BASE_ENTITY_HEIGHT=1.5;static GROUND_SENSOR_HEIGHT_SCALE=0.125;static GROUND_SENSOR_RADIUS_SCALE=0.23;static JUMP_LAND_HEAVY_VELOCITY_THRESHOLD=-12;static WALL_COLLIDER_HEIGHT_SCALE=0.33;static WALL_COLLIDER_RADIUS_SCALE=0.4;static MOVEMENT_ROTATIONS={wa:Math.PI/4,wd:-Math.PI/4,sa:Math.PI-Math.PI/4,sd:Math.PI+Math.PI/4,s:Math.PI,asd:Math.PI,a:Math.PI/2,d:-Math.PI/2};static EXTERNAL_IMPULSE_DECAY_RATE=0.253;static SWIM_UPWARD_COOLDOWN_MS=600;static SWIMMING_DRAG_FACTOR=0.05;static WATER_ENTRY_SINKING_FACTOR=0.8;static WATER_ENTRY_SINKING_MS=250;applyDirectionalMovementRotations=!0;autoCancelMouseLeftClick=!0;canJump=()=>!0;canRun=()=>!0;canSwim=()=>!0;canWalk=()=>!0;facesCameraWhenIdle=!1;idleLoopedAnimations=["idle-upper","idle-lower"];interactOneshotAnimations=["simple-interact"];jumpLandHeavyOneshotAnimations=["jump-post-heavy"];jumpLandLightOneshotAnimations=["jump-post-light"];jumpOneshotAnimations=["jump-loop"];jumpVelocity=10;runLoopedAnimations=["run-upper","run-lower"];runVelocity=8;sticksToPlatforms=!0;swimFastVelocity=5;swimGravity=0;swimIdleLoopedAnimations=["swim-idle"];swimLoopedAnimations=["swim-forward"];swimMaxGravityVelocity=-1;swimSlowVelocity=3;swimUpwardVelocity=2;walkLoopedAnimations=["walk-upper","walk-lower"];walkVelocity=4;_externalVelocity={x:0,y:0,z:0};_magnitudeYTracker=0;_groundContactCount=0;_internalApplyImpulse=()=>{};_isActivelyMoving=!1;_isFullySubmerged=!1;_justSubmergedUntil=0;_liquidContactCount=0;_platform;_reusableImpulse={x:0,y:0,z:0};_reusablePlatformVelocity={x:0,y:0,z:0};_reusableTargetVelocities={x:0,y:0,z:0};_reusableVelocityClamp={x:0,y:0,z:0};_stepAudio;_swimUpwardCooldownAt=0;constructor(A={}){super();this.applyDirectionalMovementRotations=A.applyDirectionalMovementRotations??this.applyDirectionalMovementRotations,this.autoCancelMouseLeftClick=A.autoCancelMouseLeftClick??this.autoCancelMouseLeftClick,this.facesCameraWhenIdle=A.facesCameraWhenIdle??this.facesCameraWhenIdle,this.sticksToPlatforms=A.sticksToPlatforms??this.sticksToPlatforms,this.canJump=A.canJump??this.canJump,this.canRun=A.canRun??this.canRun,this.canSwim=A.canSwim??this.canSwim,this.canWalk=A.canWalk??this.canWalk,this.jumpVelocity=A.jumpVelocity??this.jumpVelocity,this.runVelocity=A.runVelocity??this.runVelocity,this.walkVelocity=A.walkVelocity??this.walkVelocity,this.swimFastVelocity=A.swimFastVelocity??this.swimFastVelocity,this.swimSlowVelocity=A.swimSlowVelocity??this.swimSlowVelocity,this.swimUpwardVelocity=A.swimUpwardVelocity??this.swimUpwardVelocity,this.swimGravity=A.swimGravity??this.swimGravity,this.swimMaxGravityVelocity=A.swimMaxGravityVelocity??this.swimMaxGravityVelocity,this.idleLoopedAnimations=A.idleLoopedAnimations??this.idleLoopedAnimations,this.interactOneshotAnimations=A.interactOneshotAnimations??this.interactOneshotAnimations,this.jumpOneshotAnimations=A.jumpOneshotAnimations??this.jumpOneshotAnimations,this.jumpLandHeavyOneshotAnimations=A.jumpLandHeavyOneshotAnimations??this.jumpLandHeavyOneshotAnimations,this.jumpLandLightOneshotAnimations=A.jumpLandLightOneshotAnimations??this.jumpLandLightOneshotAnimations,this.runLoopedAnimations=A.runLoopedAnimations??this.runLoopedAnimations,this.swimLoopedAnimations=A.swimLoopedAnimations??this.swimLoopedAnimations,this.swimIdleLoopedAnimations=A.swimIdleLoopedAnimations??this.swimIdleLoopedAnimations,this.walkLoopedAnimations=A.walkLoopedAnimations??this.walkLoopedAnimations}get isActivelyMoving(){return this._isActivelyMoving}get isGrounded(){return this._groundContactCount>0}get isOnPlatform(){return!!this._platform}get isSwimming(){return this._liquidContactCount>0}get platform(){return this._platform}attach(A){super.attach(A),this._internalApplyImpulse=A.applyImpulse.bind(A),A.applyImpulse=(Q)=>{let B=A.mass||1;this._externalVelocity.x+=Q.x/B,this._externalVelocity.y+=Q.y/B,this._externalVelocity.z+=Q.z/B},this._stepAudio=new $D({uri:"audio/sfx/step/stone/stone-step-04.mp3",loop:!0,volume:0.1,referenceDistance:2,cutoffDistance:15,attachedToEntity:A}),A.setCcdEnabled(!0),A.lockAllRotations(),A.on("ENTITY.BLOCK_COLLISION",({blockType:Q,started:B})=>{if(!Q.isLiquid||!this.canSwim(this))return;if(this._liquidContactCount<=0&&B){let Y=A.linearVelocity;A.setLinearVelocity({x:Y.x*this.swimGravity,y:Y.y*this.swimGravity,z:Y.z*this.swimGravity})}if(this._liquidContactCount+=B?1:-1,this._liquidContactCount>0)A.setGravityScale(this.swimGravity),A.stopAllModelAnimations((Y)=>this.swimLoopedAnimations.includes(Y.name)),this._swimUpwardCooldownAt=performance.now()+G0.SWIM_UPWARD_COOLDOWN_MS;else A.setGravityScale(1),A.stopModelAnimations(this.swimLoopedAnimations)})}spawn(A){if(!A.isSpawned)return l.error("DefaultPlayerEntityController.spawn(): Entity is not spawned!");A.createAndAddChildCollider({shape:"cylinder",radius:G0.GROUND_SENSOR_RADIUS_SCALE*(A.height/G0.BASE_ENTITY_HEIGHT),halfHeight:G0.GROUND_SENSOR_HEIGHT_SCALE*(A.height/G0.BASE_ENTITY_HEIGHT),collisionGroups:{belongsTo:[4],collidesWith:[1,2,8]},isSensor:!0,relativePosition:{x:0,y:-A.height/2,z:0},tag:"groundSensor",onCollision:(Q,B)=>{if(!A.isSpawned)return;if(!(Q instanceof O8)||!Q.isLiquid){if(B&&this._groundContactCount===0&&A.linearVelocity.y<-1)if(A.linearVelocity.yw.includes(P.name)||P.loopMode===0);for(let P of w)A.getModelAnimation(P)?.setLoopMode(1),A.getModelAnimation(P)?.play();this._stepAudio?.setPlaybackRate(V?0.75:0.51),this._stepAudio?.play(A.world,!this._stepAudio?.isPlaying)}else if(this._isFullySubmerged&&this.canSwim(this))if(this._stepAudio?.pause(),this._isActivelyMoving){A.stopAllModelAnimations((w)=>this.swimLoopedAnimations.includes(w.name)||w.loopMode===0);for(let w of this.swimLoopedAnimations)A.getModelAnimation(w)?.setLoopMode(1),A.getModelAnimation(w)?.play()}else{A.stopAllModelAnimations((w)=>this.swimIdleLoopedAnimations.includes(w.name)||w.loopMode===0);for(let w of this.swimIdleLoopedAnimations)A.getModelAnimation(w)?.setLoopMode(1),A.getModelAnimation(w)?.play()}else{this._stepAudio?.pause(),A.stopAllModelAnimations((w)=>this.idleLoopedAnimations.includes(w.name)||w.loopMode===0);for(let w of this.idleLoopedAnimations)A.getModelAnimation(w)?.setLoopMode(1),A.getModelAnimation(w)?.play()}let L;if(this.applyDirectionalMovementRotations&&D){if(I)L=$;else if(J&&C&&!G&&!X)L=G0.MOVEMENT_ROTATIONS.wa;else if(J&&G&&!C&&!X)L=G0.MOVEMENT_ROTATIONS.wd;else if(X&&C&&!J&&!G)L=G0.MOVEMENT_ROTATIONS.sa;else if(X&&G&&!J&&!C)L=G0.MOVEMENT_ROTATIONS.sd;else if(X&&!J&&!C&&!G||C&&X&&G&&!J)L=G0.MOVEMENT_ROTATIONS.s;else if(C&&!J&&!X&&!G)L=G0.MOVEMENT_ROTATIONS.a;else if(G&&!J&&!C&&!X)L=G0.MOVEMENT_ROTATIONS.d}if(U){for(let w of this.interactOneshotAnimations)A.getModelAnimation(w)?.setBlendMode(0),A.getModelAnimation(w)?.restart();Q.ml=!this.autoCancelMouseLeftClick}if(D){let w=!this.isSwimming?V?this.runVelocity:this.walkVelocity:V?this.swimFastVelocity:this.swimSlowVelocity;if(I){let P=E+$;this._reusableTargetVelocities.x=-w*Math.sin(P),this._reusableTargetVelocities.z=-w*Math.cos(P)}else{let P=Math.sin(E),_=Math.cos(E);if(J)this._reusableTargetVelocities.x-=w*P,this._reusableTargetVelocities.z-=w*_;if(X)this._reusableTargetVelocities.x+=w*P,this._reusableTargetVelocities.z+=w*_;if(C)this._reusableTargetVelocities.x-=w*_,this._reusableTargetVelocities.z+=w*P;if(G)this._reusableTargetVelocities.x+=w*_,this._reusableTargetVelocities.z-=w*P;let j=Math.sqrt(this._reusableTargetVelocities.x*this._reusableTargetVelocities.x+this._reusableTargetVelocities.z*this._reusableTargetVelocities.z);if(j>w){let k=w/j;this._reusableTargetVelocities.x*=k,this._reusableTargetVelocities.z*=k}}}if(this.isSwimming){if(K.ythis.swimUpwardVelocity*2)this._reusableVelocityClamp.x=K.x,this._reusableVelocityClamp.y=this.swimUpwardVelocity*2,this._reusableVelocityClamp.z=K.z,A.setLinearVelocity(this._reusableVelocityClamp);if(W)this._reusableTargetVelocities.y=-this.swimUpwardVelocity;else if(performance.now()-0.001&&K.y<=3)this._reusableTargetVelocities.y=this.jumpVelocity;else if(this.isSwimming&&performance.now()>this._swimUpwardCooldownAt)this._reusableTargetVelocities.y=this.swimUpwardVelocity}let z=this._platform?.linearVelocity??this._reusablePlatformVelocity;if(this._externalVelocity.y!==0)this._magnitudeYTracker+=this._externalVelocity.y;if(this._externalVelocity.x!==0||this._externalVelocity.y!==0||this._externalVelocity.z!==0){if(this.isGrounded){let w=Math.sqrt(this._externalVelocity.x*this._externalVelocity.x+this._magnitudeYTracker*this._magnitudeYTracker+this._externalVelocity.z*this._externalVelocity.z);if(w>0.01){let _=Math.max(0,w-G0.EXTERNAL_IMPULSE_DECAY_RATE)/w;this._externalVelocity.x*=_,this._magnitudeYTracker*=_,this._externalVelocity.z*=_}else this._externalVelocity.x=0,this._externalVelocity.y=0,this._magnitudeYTracker=0,this._externalVelocity.z=0}}let M=this._reusableTargetVelocities.x+this._externalVelocity.x-K.x+z.x,N=this._reusableTargetVelocities.y+this._externalVelocity.y+z.y,q=this._reusableTargetVelocities.z+this._externalVelocity.z-K.z+z.z;if(this._externalVelocity.y=0,M!==0||N!==0||q!==0){let w=A.mass;this._reusableImpulse.x=M*w,this._reusableImpulse.y=N*w,this._reusableImpulse.z=q*w,this._internalApplyImpulse(this._reusableImpulse)}if(E!==void 0&&(this.facesCameraWhenIdle||this.isActivelyMoving)){let P=(L!==void 0?E+L:E)*0.5;A.setRotation({x:0,y:Math.sin(P),z:0,w:Math.cos(P)})}}}var Bu;((G)=>{G.LOAD="SCENE_UI.LOAD";G.SET_ATTACHED_TO_ENTITY="SCENE_UI.SET_ATTACHED_TO_ENTITY";G.SET_OFFSET="SCENE_UI.SET_OFFSET";G.SET_POSITION="SCENE_UI.SET_POSITION";G.SET_STATE="SCENE_UI.SET_STATE";G.SET_VIEW_DISTANCE="SCENE_UI.SET_VIEW_DISTANCE";G.UNLOAD="SCENE_UI.UNLOAD"})(Bu||={});class YN extends BQ{_id;_attachedToEntity;_offset;_position;_state={};_templateId;_viewDistance;_world;constructor(A){if(!!A.attachedToEntity===!!A.position)l.fatalError("Either attachedToEntity or position must be set, but not both");super();this._attachedToEntity=A.attachedToEntity,this._offset=A.offset,this._position=A.position,this._state=A.state??{},this._templateId=A.templateId,this._viewDistance=A.viewDistance}get id(){return this._id}get attachedToEntity(){return this._attachedToEntity}get isLoaded(){return this._id!==void 0}get offset(){return this._offset}get position(){return this._position}get state(){return this._state}get templateId(){return this._templateId}get viewDistance(){return this._viewDistance}get world(){return this._world}load(A){if(this.isLoaded)return;if(this._attachedToEntity&&!this._attachedToEntity.isSpawned)return l.error(`SceneUI.load(): Attached entity ${this._attachedToEntity.id} must be spawned before loading SceneUI!`);this._id=A.sceneUIManager.registerSceneUI(this),this._world=A,this.emitWithWorld(A,"SCENE_UI.LOAD",{sceneUI:this})}setAttachedToEntity(A){if(!A.isSpawned)return l.error(`SceneUI.setAttachedToEntity(): Entity ${A.id} is not spawned!`);if(this._attachedToEntity===A)return;if(this._attachedToEntity=A,this._position=void 0,this.isLoaded)this.emitWithWorld(this._world,"SCENE_UI.SET_ATTACHED_TO_ENTITY",{sceneUI:this,entity:A})}setOffset(A){if(this._offset===A)return;if(this._offset=A,this.isLoaded)this.emitWithWorld(this._world,"SCENE_UI.SET_OFFSET",{sceneUI:this,offset:A})}setPosition(A){if(this._position===A)return;if(this._attachedToEntity=void 0,this._position=A,this.isLoaded)this.emitWithWorld(this._world,"SCENE_UI.SET_POSITION",{sceneUI:this,position:A})}setState(A){if(this._state={...this._state,...A},this.isLoaded)this.emitWithWorld(this._world,"SCENE_UI.SET_STATE",{sceneUI:this,state:this._state})}setViewDistance(A){if(this._viewDistance=A,this.isLoaded)this.emitWithWorld(this._world,"SCENE_UI.SET_VIEW_DISTANCE",{sceneUI:this,viewDistance:A})}unload(){if(!this.isLoaded||!this._world)return;this._world.sceneUIManager.unregisterSceneUI(this),this.emitWithWorld(this._world,"SCENE_UI.UNLOAD",{sceneUI:this}),this._id=void 0,this._world=void 0}serialize(){return GQ.serializeSceneUI(this)}}var xIA=0.010000000000000002,fIA=Math.cos(0.026);class BX extends X0{player;nametagSceneUI;_tickWithPlayerInputEnabled=!0;constructor(A){super(A);this._positionUpdateThresholdSq=xIA,this._rotationUpdateThreshold=fIA,this.player=A.player,this.nametagSceneUI=new YN({templateId:"hytopia:nametag",attachedToEntity:this,offset:{x:0,y:1,z:0},viewDistance:15,state:{username:this.player.username,profilePictureUrl:this.player.profilePictureUrl}})}get isTickWithPlayerInputEnabled(){return this._tickWithPlayerInputEnabled}setTickWithPlayerInputEnabled(A){this._tickWithPlayerInputEnabled=A}spawn(A,Q,B){super.spawn(A,Q,B),this.nametagSceneUI.load(A),this.player.on("PLAYER.CHAT_MESSAGE_SEND",({message:Y})=>{this.nametagSceneUI.setState({chat:Y})})}tick(A){if(!this.isSpawned||!this.world)return;if(!this.controller)return l.error(`PlayerEntity.tick(): PlayerEntity "${this.name}" must have a controller.`);if(this._tickWithPlayerInputEnabled){let{input:Q,camera:B}=this.player;this.controller.tickWithPlayerInput(this,Q,B.orientation,A)}super.tick(A)}}var bIA="models/players/player.gltf",rWB={BACK:"back-anchor",HEAD:"head-anchor",LEFT_ARM:"arm-left-anchor",LEFT_FOOT:"foot-left-anchor",LEFT_HAND:"hand-left-anchor",LEFT_ITEM:"hand-left-anchor",LEFT_LEG:"leg-left-anchor",RIGHT_ARM:"arm-right-anchor",RIGHT_FOOT:"foot-right-anchor",RIGHT_HAND:"hand-right-anchor",RIGHT_ITEM:"hand-right-anchor",RIGHT_LEG:"leg-right-anchor",TORSO:"torso-anchor"};class Yu extends BX{_cosmeticHiddenSlots;constructor(A){super({controller:new G0,modelAnimations:[{name:"idle-lower",loopMode:1,play:!0},{name:"idle-upper",loopMode:1,play:!0}],modelUri:bIA,...A});this._cosmeticHiddenSlots=A.cosmeticHiddenSlots??[]}get cosmeticHiddenSlots(){return this._cosmeticHiddenSlots}spawn(A,Q,B){super.spawn(A,Q,B),this.player.cosmetics.then((Y)=>{if(!Y||!this.modelUri)return;if(!(Y.equippedItems.some((C)=>C.item.flags.includes("HIDES_HAIR"))&&!this._cosmeticHiddenSlots.includes("ALL")&&!this._cosmeticHiddenSlots.includes("HEAD"))&&Y.hairModelUri)new X0({modelUri:Y.hairModelUri,modelPreferredShape:"none",modelTextureUri:Y.hairTextureUri,parent:this,parentNodeName:"head-anchor"}).spawn(A,{x:0,y:0,z:0});if(this.modelUri===bIA)this.setModelTextureUri(Y.skinTextureUri);if(this._cosmeticHiddenSlots.includes("ALL"))return;for(let C of Y.equippedItems){let{item:X,slot:G}=C;if(this._cosmeticHiddenSlots.includes(G))continue;let W=rWB[G];if(!W||!yY.instance.modelHasNode(this.modelUri,W))continue;new X0({modelUri:X.modelUrl,modelPreferredShape:"none",parent:this,parentNodeName:W}).spawn(A,{x:0,y:0,z:0})}}).catch((Y)=>l.warning(`DefaultPlayerEntity.spawn(): Failed to get player cosmetics: ${Y}`))}}var mIA;((Y)=>{Y.TICK_REPORT="PERFORMANCE_MONITOR.TICK_REPORT";Y.SPIKE_DETECTED="PERFORMANCE_MONITOR.SPIKE_DETECTED";Y.SNAPSHOT="PERFORMANCE_MONITOR.SNAPSHOT"})(mIA||={});class O0 extends BQ{static _instance;static get instance(){if(!O0._instance)O0._instance=new O0;return O0._instance}_enabled=!1;_entityProfilingEnabled=!1;_spikeThresholdMs=50;_tickBudgetMs=16.67;_snapshotIntervalMs=5000;_historySize=3600;_startTime=0;_operations=new Map;_worldTicks=new Map;_entityCosts=new Map;_snapshotTimer=null;constructor(){super()}get isEnabled(){return this._enabled}get isEntityProfilingEnabled(){return this._enabled&&this._entityProfilingEnabled}enable(A){if(this._enabled)return;if(this._enabled=!0,this._startTime=performance.now(),this._spikeThresholdMs=A?.spikeThresholdMs??50,this._tickBudgetMs=A?.tickBudgetMs??16.67,this._snapshotIntervalMs=A?.snapshotIntervalMs??5000,this._historySize=A?.historySize??3600,this._worldTicks.clear(),this._operations.clear(),this._entityCosts.clear(),this._snapshotIntervalMs>0)this._snapshotTimer=setInterval(()=>{let Q=this.getSnapshot();this.emit("PERFORMANCE_MONITOR.SNAPSHOT",Q)},this._snapshotIntervalMs)}disable(){if(this._enabled=!1,this._entityProfilingEnabled=!1,this._snapshotTimer)clearInterval(this._snapshotTimer),this._snapshotTimer=null}enableEntityProfiling(A){if(this._entityProfilingEnabled=A,!A)this._entityCosts.clear()}measure(A,Q){if(!this._enabled)return Q();let B=performance.now(),Y=Q(),J=performance.now()-B;return this._recordOperation(A,J),Y}async measureAsync(A,Q){if(!this._enabled)return Q();let B=performance.now(),Y=await Q(),J=performance.now()-B;return this._recordOperation(A,J),Y}startTiming(A){if(!this._enabled)return()=>{};let Q=performance.now();return()=>{this._recordOperation(A,performance.now()-Q)}}beginTick(A,Q,B,Y=0){let J=this._getOrCreateWorldTickState(Y);J.currentTick=A,J.currentTickStart=performance.now(),J.currentPhases={},J.currentEntityCount=Q,J.currentPlayerCount=B}recordPhase(A,Q,B=0){let Y=this._worldTicks.get(B);if(!Y)return;Y.currentPhases[A]=Q}endTick(A=0){let Q=this._worldTicks.get(A);if(!Q)return;let B=performance.now()-Q.currentTickStart;if(Q.tickDurations[Q.tickIndex]=B,Q.tickIndex=(Q.tickIndex+1)%Q.tickDurations.length,Q.tickCount=Math.min(Q.tickCount+1,Q.tickDurations.length),Q.totalTicks++,B>Q.maxTickMs)Q.maxTickMs=B;if(B>this._tickBudgetMs)Q.ticksOverBudget++;let Y=process.memoryUsage().heapUsed/1048576,J={worldId:A,tick:Q.currentTick,durationMs:B,budgetMs:this._tickBudgetMs,budgetPercent:B/this._tickBudgetMs*100,phases:{...Q.currentPhases},entityCount:Q.currentEntityCount,playerCount:Q.currentPlayerCount,heapUsedMb:Y};if(this.emit("PERFORMANCE_MONITOR.TICK_REPORT",J),B>this._spikeThresholdMs)this.emit("PERFORMANCE_MONITOR.SPIKE_DETECTED",J)}recordEntityCost(A,Q,B){this._entityCosts.set(A,{tickMs:B,name:Q})}getEntityCosts(){return new Map(this._entityCosts)}getSnapshot(A){let Q=process.memoryUsage(),Y=(typeof A==="number"?this._getTickSamples(A):this._getAllTickSamples()).slice().sort((C,X)=>C-X),J=typeof A==="number"?this._getRollup(A):this._getGlobalRollup();return{uptimeMs:performance.now()-this._startTime,tickRate:60,avgTickMs:Y.length>0?Y.reduce((C,X)=>C+X,0)/Y.length:0,maxTickMs:J.maxTickMs,p95TickMs:Y.length>0?Y[Math.floor(Y.length*0.95)]:0,p99TickMs:Y.length>0?Y[Math.floor(Y.length*0.99)]:0,ticksOverBudget:J.ticksOverBudget,totalTicks:J.totalTicks,budgetMs:this._tickBudgetMs,operations:this._getOperationStats(),memory:{heapUsedMb:Q.heapUsed/1048576,heapTotalMb:Q.heapTotal/1048576,rssMb:Q.rss/1048576}}}resetStats(){this._worldTicks.clear(),this._operations.clear(),this._entityCosts.clear()}_recordOperation(A,Q){let B=this._operations.get(A);if(!B)B={count:0,totalMs:0,minMs:1/0,maxMs:0,lastMs:0,samples:new Float64Array(1000),sampleIndex:0,sampleCount:0},this._operations.set(A,B);if(B.count++,B.totalMs+=Q,B.lastMs=Q,QB.maxMs)B.maxMs=Q;B.samples[B.sampleIndex]=Q,B.sampleIndex=(B.sampleIndex+1)%B.samples.length,B.sampleCount=Math.min(B.sampleCount+1,B.samples.length)}_getOrCreateWorldTickState(A){let Q=Math.floor(A),B=this._worldTicks.get(Q);if(!B)B={tickDurations:new Float64Array(this._historySize),tickIndex:0,tickCount:0,ticksOverBudget:0,maxTickMs:0,totalTicks:0,currentTick:0,currentTickStart:0,currentPhases:{},currentEntityCount:0,currentPlayerCount:0},this._worldTicks.set(Q,B);return B}_getTickSamples(A){let Q=this._worldTicks.get(Math.floor(A));if(!Q||Q.tickCount===0)return[];let B=[];for(let Y=0;YJ-C),A[Q]={count:B.count,totalMs:B.totalMs,avgMs:B.count>0?B.totalMs/B.count:0,minMs:B.minMs===1/0?0:B.minMs,maxMs:B.maxMs,lastMs:B.lastMs,p50Ms:Y.length>0?Y[Math.floor(Y.length*0.5)]:0,p95Ms:Y.length>0?Y[Math.floor(Y.length*0.95)]:0,p99Ms:Y.length>0?Y[Math.floor(Y.length*0.99)]:0}}return A}}class JN{_activeEntities=new Set;_entities=new Map;_nextEntityId=1;_world;constructor(A){this._world=A}get entityCount(){return this._entities.size}get world(){return this._world}registerEntity(A){if(A.id!==void 0)l.fatalError(`EntityManager.registerEntity(): Entity ${A.name} is already assigned the id ${A.id}!`);let Q=this._nextEntityId;if(this._entities.set(Q,A),this._nextEntityId++,!A.isEnvironmental)this._activeEntities.add(A);return Q}unregisterEntity(A){if(A.id===void 0)return l.error(`EntityManager.unregisterEntity(): Entity ${A.name} is not assigned an id!`);if(this._entities.delete(A.id),!A.isEnvironmental)this._activeEntities.delete(A)}getAllEntities(){return Array.from(this._entities.values())}getAllPlayerEntities(){let A=[];return this._entities.forEach((Q)=>{if(Q instanceof BX)A.push(Q)}),A}getPlayerEntitiesByPlayer(A){let Q=[];return this._entities.forEach((B)=>{if(B instanceof BX&&B.player===A)Q.push(B)}),Q}getEntity(A){return this._entities.get(A)}getEntitiesByTag(A){let Q=[];return this._entities.forEach((B)=>{if(B.tag===A)Q.push(B)}),Q}getEntitiesByTagSubstring(A){let Q=[];return this._entities.forEach((B)=>{if(B.tag?.includes(A))Q.push(B)}),Q}getEntityChildren(A){let Q=[];return this._entities.forEach((B)=>{if(B.parent===A)Q.push(B)}),Q}tickEntities(A){let Q=O0.instance,B=Q.isEntityProfilingEnabled;for(let Y of this._activeEntities)if(B){let J=performance.now();Y.tick(A),Q.recordEntityCost(Y.id??0,Y.name,performance.now()-J)}else Y.tick(A)}checkAndEmitUpdates(){for(let A of this._activeEntities)A.checkAndEmitUpdates()}}import{gzipSync as om0}from"zlib";var Z9=qA(lHA(),1),qqY=Z9.default.v1,MqY=Z9.default.v1ToV6,zqY=Z9.default.v3,pHA=Z9.default.v4,RqY=Z9.default.v5,wqY=Z9.default.v6,jqY=Z9.default.v6ToV1,OqY=Z9.default.v7,PqY=Z9.default.NIL,TqY=Z9.default.MAX,SqY=Z9.default.version,kqY=Z9.default.validate,_qY=Z9.default.stringify,vqY=Z9.default.parse;var $u;try{$u=new TextDecoder}catch(A){}var _A,_8,t=0;var Vu=[],jZ=Vu,GN=0,A0={},DB,r6,k8=0,S5=0,hY,a6,p9=[],UB,iHA={useRecords:!1,mapsAsObjects:!0};class Gj{}var Iu=new Gj;Iu.name="MessagePack 0xC1";var r7=!1,ADA=2,Uu,Eu,Ku;try{Function("")}catch(A){ADA=1/0}class o6{constructor(A){if(A){if(A.useRecords===!1&&A.mapsAsObjects===void 0)A.mapsAsObjects=!0;if(A.sequential&&A.trusted!==!1){if(A.trusted=!0,!A.structures&&A.useRecords!=!1){if(A.structures=[],!A.maxSharedStructures)A.maxSharedStructures=0}}if(A.structures)A.structures.sharedLength=A.structures.length;else if(A.getStructures)(A.structures=[]).uninitialized=!0,A.structures.sharedLength=0;if(A.int64AsNumber)A.int64AsType="number"}Object.assign(this,A)}unpack(A,Q){if(_A)return ZDA(()=>{return Xj(),this?this.unpack(A,Q):o6.prototype.unpack.call(iHA,A,Q)});if(!A.buffer&&A.constructor===ArrayBuffer)A=typeof Buffer<"u"?Buffer.from(A):new Uint8Array(A);if(typeof Q==="object")_8=Q.end||A.length,t=Q.start||0;else t=0,_8=Q>-1?Q:A.length;GN=0,S5=0,r6=null,jZ=Vu,hY=null,_A=A;try{UB=A.dataView||(A.dataView=new DataView(A.buffer,A.byteOffset,A.byteLength))}catch(B){if(_A=null,A instanceof Uint8Array)throw B;throw Error("Source must be a Uint8Array or Buffer but was a "+(A&&typeof A=="object"?A.constructor.name:typeof A))}if(this instanceof o6){if(A0=this,this.structures)return DB=this.structures,Jj(Q);else if(!DB||DB.length>0)DB=[]}else if(A0=iHA,!DB||DB.length>0)DB=[];return Jj(Q)}unpackMultiple(A,Q){let B,Y=0;try{r7=!0;let J=A.length,C=this?this.unpack(A,J):Fj.unpack(A,J);if(Q){if(Q(C,Y,t)===!1)return;while(tB.slice(0));for(let B=0,Y=A.length;B=32)J.highByte=B-32>>5}}A.sharedLength=A.length;for(let B in Q||[])if(B>=0){let Y=A[B],J=Q[B];if(J){if(Y)(A.restoreStructures||(A.restoreStructures=[]))[B]=Y;A[B]=J}}return this.structures=A}decode(A,Q){return this.unpack(A,Q)}}function Jj(A){try{if(!A0.trusted&&!r7){let B=DB.sharedLength||0;if(B=32&&Uu){if(Q=Uu(_A,t,_8,A0),_A=null,!(A&&A.lazy)&&Q)Q=Q.toJSON();t=_8}else Q=ZY();if(hY)t=hY.postBundlePosition,hY=null;if(r7)DB.restoreStructures=null;if(t==_8){if(DB&&DB.restoreStructures)nHA();if(DB=null,_A=null,a6)a6=null}else if(t>_8)throw Error("Unexpected end of MessagePack data");else if(!r7){let B;try{B=JSON.stringify(Q,(Y,J)=>typeof J==="bigint"?`${J}n`:J).slice(0,100)}catch(Y){B="(JSON view not available "+Y+")"}throw Error("Data read, but end of buffer not reached "+B)}return Q}catch(Q){if(DB&&DB.restoreStructures)nHA();if(Xj(),Q instanceof RangeError||Q.message.startsWith("Unexpected end of buffer")||t>_8)Q.incomplete=!0;throw Q}}function nHA(){for(let A in DB.restoreStructures)DB[A]=DB.restoreStructures[A];DB.restoreStructures=null}function ZY(){let A=_A[t++];if(A<160)if(A<128)if(A<64)return A;else{let Q=DB[A&63]||A0.getStructures&&QDA()[A&63];if(Q){if(!Q.read)Q.read=Hu(Q,A&63);return Q.read()}else return A}else if(A<144)if(A-=128,A0.mapsAsObjects){let Q={};for(let B=0;B=t)return r6.slice(t-k8,(t+=Q)-k8);if(S5==0&&_8<140){let B=Q<16?Du(Q):GDA(Q);if(B!=null)return B}return Cj(Q)}else{let Q;switch(A){case 192:return null;case 193:if(hY)if(Q=ZY(),Q>0)return hY[1].slice(hY.position1,hY.position1+=Q);else return hY[0].slice(hY.position0,hY.position0-=Q);return Iu;case 194:return!1;case 195:return!0;case 196:if(Q=_A[t++],Q===void 0)throw Error("Unexpected end of buffer");return Zu(Q);case 197:return Q=UB.getUint16(t),t+=2,Zu(Q);case 198:return Q=UB.getUint32(t),t+=4,Zu(Q);case 199:return wZ(_A[t++]);case 200:return Q=UB.getUint16(t),t+=2,wZ(Q);case 201:return Q=UB.getUint32(t),t+=4,wZ(Q);case 202:if(Q=UB.getFloat32(t),A0.useFloat32>2){let B=PZ[(_A[t]&127)<<1|_A[t+1]>>7];return t+=4,(B*Q+(Q>0?0.5:-0.5)>>0)/B}return t+=4,Q;case 203:return Q=UB.getFloat64(t),t+=8,Q;case 204:return _A[t++];case 205:return Q=UB.getUint16(t),t+=2,Q;case 206:return Q=UB.getUint32(t),t+=4,Q;case 207:if(A0.int64AsType==="number")Q=UB.getUint32(t)*4294967296,Q+=UB.getUint32(t+4);else if(A0.int64AsType==="string")Q=UB.getBigUint64(t).toString();else if(A0.int64AsType==="auto"){if(Q=UB.getBigUint64(t),Q<=BigInt(2)<=BigInt(-2)<=t)return r6.slice(t-k8,(t+=Q)-k8);return BDA(Q);case 218:if(Q=UB.getUint16(t),t+=2,S5>=t)return r6.slice(t-k8,(t+=Q)-k8);return YDA(Q);case 219:if(Q=UB.getUint32(t),t+=4,S5>=t)return r6.slice(t-k8,(t+=Q)-k8);return JDA(Q);case 220:return Q=UB.getUint16(t),t+=2,rHA(Q);case 221:return Q=UB.getUint32(t),t+=4,rHA(Q);case 222:return Q=UB.getUint16(t),t+=2,aHA(Q);case 223:return Q=UB.getUint32(t),t+=4,aHA(Q);default:if(A>=224)return A-256;if(A===void 0){let B=Error("Unexpected end of MessagePack data");throw B.incomplete=!0,B}throw Error("Unknown MessagePack token "+A)}}}var RZB=/^[a-zA-Z_$][a-zA-Z\d_$]*$/;function Hu(A,Q){function B(){if(B.count++>ADA){let J=A.read=Function("r","return function(){return "+(A0.freezeData?"Object.freeze":"")+"({"+A.map((C)=>C==="__proto__"?"__proto_:r()":RZB.test(C)?C+":r()":"["+JSON.stringify(C)+"]:r()").join(",")+"})}")(ZY);if(A.highByte===0)A.read=sHA(Q,A.read);return J()}let Y={};for(let J=0,C=A.length;J{return function(){let B=_A[t++];if(B===0)return Q();let Y=A<32?-(A+(B<<5)):A+(B<<5),J=DB[Y]||QDA()[Y];if(!J)throw Error("Record id is not defined for "+Y);if(!J.read)J.read=Hu(J,A);return J.read()}};function QDA(){let A=ZDA(()=>{return _A=null,A0.getStructures()});return DB=A0._mergeStructures(A,DB)}var Cj=OZ,BDA=OZ,YDA=OZ,JDA=OZ,Wj=!1;function CDA(A){Wj=!0,Cj=Q(1),BDA=Q(2),YDA=Q(3),JDA=Q(5);function Q(B){return function(J){let C=jZ[GN++];if(C==null){if(hY)return OZ(J);let G=_A.byteOffset,W=A(t-B+G,_8+G,_A.buffer);if(typeof W=="string")C=W,jZ=Vu;else if(jZ=W,GN=1,S5=1,C=jZ[0],C===void 0)throw Error("Unexpected end of buffer")}let X=C.length;if(X<=J)return t+=J,C;return r6=C,k8=t,S5=t+X,t+=J,C.slice(0,J)}}}function OZ(A){let Q;if(A<16){if(Q=Du(A))return Q}if(A>64&&$u)return $u.decode(_A.subarray(t,t+=A));let B=t+A,Y=[];Q="";while(t65535)W-=65536,Y.push(W>>>10&1023|55296),W=56320|W&1023;Y.push(W)}else Y.push(J);if(Y.length>=4096)Q+=sY.apply(String,Y),Y.length=0}if(Y.length>0)Q+=sY.apply(String,Y);return Q}function XDA(A,Q,B){let Y=_A;_A=A,t=Q;try{return OZ(B)}finally{_A=Y}}function rHA(A){let Q=Array(A);for(let B=0;B0){t=Q;return}B[Y]=J}return sY.apply(String,B)}function Du(A){if(A<4)if(A<2)if(A===0)return"";else{let Q=_A[t++];if((Q&128)>1){t-=1;return}return sY(Q)}else{let Q=_A[t++],B=_A[t++];if((Q&128)>0||(B&128)>0){t-=2;return}if(A<3)return sY(Q,B);let Y=_A[t++];if((Y&128)>0){t-=3;return}return sY(Q,B,Y)}else{let Q=_A[t++],B=_A[t++],Y=_A[t++],J=_A[t++];if((Q&128)>0||(B&128)>0||(Y&128)>0||(J&128)>0){t-=4;return}if(A<6)if(A===4)return sY(Q,B,Y,J);else{let C=_A[t++];if((C&128)>0){t-=5;return}return sY(Q,B,Y,J,C)}else if(A<8){let C=_A[t++],X=_A[t++];if((C&128)>0||(X&128)>0){t-=6;return}if(A<7)return sY(Q,B,Y,J,C,X);let G=_A[t++];if((G&128)>0){t-=7;return}return sY(Q,B,Y,J,C,X,G)}else{let C=_A[t++],X=_A[t++],G=_A[t++],W=_A[t++];if((C&128)>0||(X&128)>0||(G&128)>0||(W&128)>0){t-=8;return}if(A<10)if(A===8)return sY(Q,B,Y,J,C,X,G,W);else{let F=_A[t++];if((F&128)>0){t-=9;return}return sY(Q,B,Y,J,C,X,G,W,F)}else if(A<12){let F=_A[t++],Z=_A[t++];if((F&128)>0||(Z&128)>0){t-=10;return}if(A<11)return sY(Q,B,Y,J,C,X,G,W,F,Z);let U=_A[t++];if((U&128)>0){t-=11;return}return sY(Q,B,Y,J,C,X,G,W,F,Z,U)}else{let F=_A[t++],Z=_A[t++],U=_A[t++],$=_A[t++];if((F&128)>0||(Z&128)>0||(U&128)>0||($&128)>0){t-=12;return}if(A<14)if(A===12)return sY(Q,B,Y,J,C,X,G,W,F,Z,U,$);else{let E=_A[t++];if((E&128)>0){t-=13;return}return sY(Q,B,Y,J,C,X,G,W,F,Z,U,$,E)}else{let E=_A[t++],K=_A[t++];if((E&128)>0||(K&128)>0){t-=14;return}if(A<15)return sY(Q,B,Y,J,C,X,G,W,F,Z,U,$,E,K);let I=_A[t++];if((I&128)>0){t-=15;return}return sY(Q,B,Y,J,C,X,G,W,F,Z,U,$,E,K,I)}}}}}function oHA(){let A=_A[t++],Q;if(A<192)Q=A-160;else switch(A){case 217:Q=_A[t++];break;case 218:Q=UB.getUint16(t),t+=2;break;case 219:Q=UB.getUint32(t),t+=4;break;default:throw Error("Expected string")}return OZ(Q)}function Zu(A){return A0.copyBuffers?Uint8Array.prototype.slice.call(_A,t,t+=A):_A.subarray(t,t+=A)}function wZ(A){let Q=_A[t++];if(p9[Q]){let B;return p9[Q](_A.subarray(t,B=t+=A),(Y)=>{t=Y;try{return ZY()}finally{t=B}})}else throw Error("Unknown extension type "+Q)}var tHA=Array(4096);function WDA(){let A=_A[t++];if(A>=160&&A<192){if(A=A-160,S5>=t)return r6.slice(t-k8,(t+=A)-k8);else if(!(S5==0&&_8<180))return Cj(A)}else return t--,FDA(ZY());let Q=(A<<5^(A>1?UB.getUint16(t):A>0?_A[t]:0))&4095,B=tHA[Q],Y=t,J=t+A-3,C,X=0;if(B&&B.bytes==A){while(Y["string","number","boolean","bigint"].includes(typeof Q)))return A.flat().toString();throw Error(`Invalid property type for record: ${typeof A}`)}var eHA=(A,Q)=>{let B=ZY().map(FDA),Y=A;if(Q!==void 0)A=A<32?-((Q<<5)+A):(Q<<5)+A,B.highByte=Q;let J=DB[A];if(J&&(J.isShared||r7))(DB.restoreStructures||(DB.restoreStructures=[]))[A]=J;return DB[A]=B,B.read=Hu(B,Y),B.read()};p9[0]=()=>{};p9[0].noBuffer=!0;p9[66]=(A)=>{let Q=A.length,B=BigInt(A[0]&128?A[0]-256:A[0]);for(let Y=1;Y{let A=ZY();return(wZB[A[0]]||Error)(A[1],{cause:A[2]})};p9[105]=(A)=>{if(A0.structuredClone===!1)throw Error("Structured clone extension is disabled");let Q=UB.getUint32(t-4);if(!a6)a6=new Map;let B=_A[t],Y;if(B>=144&&B<160||B==220||B==221)Y=[];else if(B>=128&&B<144||B==222||B==223)Y=new Map;else if((B>=199&&B<=201||B>=212&&B<=216)&&_A[t+1]===115)Y=new Set;else Y={};let J={target:Y};a6.set(Q,J);let C=ZY();if(!J.used)return J.target=C;else Object.assign(Y,C);if(Y instanceof Map)for(let[X,G]of C.entries())Y.set(X,G);if(Y instanceof Set)for(let X of Array.from(C))Y.add(X);return Y};p9[112]=(A)=>{if(A0.structuredClone===!1)throw Error("Structured clone extension is disabled");let Q=UB.getUint32(t-4),B=a6.get(Q);return B.used=!0,B.target};p9[115]=()=>new Set(ZY());var Nu=["Int8","Uint8","Uint8Clamped","Int16","Uint16","Int32","Uint32","Float32","Float64","BigInt64","BigUint64"].map((A)=>A+"Array"),jZB=typeof globalThis==="object"?globalThis:window;p9[116]=(A)=>{let Q=A[0],B=Uint8Array.prototype.slice.call(A,1).buffer,Y=Nu[Q];if(!Y){if(Q===16)return B;if(Q===17)return new DataView(B);throw Error("Could not find typed array for code "+Q)}return new jZB[Y](B)};p9[120]=()=>{let A=ZY();return new RegExp(A[0],A[1])};var OZB=[];p9[98]=(A)=>{let Q=(A[0]<<24)+(A[1]<<16)+(A[2]<<8)+A[3],B=t;return t+=Q-A.length,hY=OZB,hY=[oHA(),oHA()],hY.position0=0,hY.position1=0,hY.postBundlePosition=t,t=B,ZY()};p9[255]=(A)=>{if(A.length==4)return new Date((A[0]*16777216+(A[1]<<16)+(A[2]<<8)+A[3])*1000);else if(A.length==8)return new Date(((A[0]<<22)+(A[1]<<14)+(A[2]<<6)+(A[3]>>2))/1e6+((A[3]&3)*4294967296+A[4]*16777216+(A[5]<<16)+(A[6]<<8)+A[7])*1000);else if(A.length==12)return new Date(((A[0]<<24)+(A[1]<<16)+(A[2]<<8)+A[3])/1e6+((A[4]&128?-281474976710656:0)+A[6]*1099511627776+A[7]*4294967296+A[8]*16777216+(A[9]<<16)+(A[10]<<8)+A[11])*1000);else return new Date("invalid")};function ZDA(A){if(Ku)Ku();let Q=_8,B=t,Y=GN,J=k8,C=S5,X=r6,G=jZ,W=a6,F=hY,Z=new Uint8Array(_A.slice(0,_8)),U=DB,$=DB.slice(0,DB.length),E=A0,K=r7,I=A();return _8=Q,t=B,GN=Y,k8=J,S5=C,r6=X,jZ=G,a6=W,hY=F,_A=Z,r7=K,DB=U,DB.splice(0,DB.length,...$),A0=E,UB=new DataView(_A.buffer,_A.byteOffset,_A.byteLength),I}function Xj(){_A=null,a6=null,DB=null}var PZ=Array(147);for(let A=0;A<256;A++)PZ[A]=+("1e"+Math.floor(45.15-A*0.30103));var Fj=new o6({useRecords:!1}),PZB=Fj.unpack,TZB=Fj.unpackMultiple,SZB=Fj.unpack,WN={NEVER:0,ALWAYS:1,DECIMAL_ROUND:3,DECIMAL_FIT:4},kZB=new Float32Array(1),gqY=new Uint8Array(kZB.buffer,0,4);function $DA(A,Q,B){Uu=A,Eu=Q,Ku=B}var $j;try{$j=new TextEncoder}catch(A){}var Mu,KDA,ZN=typeof Buffer<"u",Zj=ZN?function(A){return Buffer.allocUnsafeSlow(A)}:Uint8Array,VDA=ZN?Buffer:Uint8Array,UDA=ZN?4294967296:2144337920,$A,FN,W0,BA=0,$9,x0=null,IDA,_ZB=21760,vZB=/[\u0080-\uFFFF]/,YX=Symbol("record-id");class TZ extends o6{constructor(A){super(A);this.offset=0;let Q,B,Y,J,C,X=VDA.prototype.utf8Write?function(T,S){return $A.utf8Write(T,S,$A.byteLength-S)}:$j&&$j.encodeInto?function(T,S){return $j.encodeInto(T,$A.subarray(S)).written}:!1,G=this;if(!A)A={};let W=A&&A.sequential,F=A.structures||A.saveStructures,Z=A.maxSharedStructures;if(Z==null)Z=F?32:0;if(Z>8160)throw Error("Maximum maxSharedStructure is 8160");if(A.structuredClone&&A.moreTypes==null)this.moreTypes=!0;let U=A.maxOwnStructures;if(U==null)U=F?32:64;if(!this.structures&&A.useRecords!=!1)this.structures=[];let $=Z>32||U+Z>64,E=Z+64,K=Z+U+64;if(K>8256)throw Error("Maximum maxSharedStructure + maxOwnStructure is 8192");let I=[],V=0,H=0;this.pack=this.encode=function(T,S){if(!$A)$A=new Zj(8192),W0=$A.dataView||($A.dataView=new DataView($A.buffer,0,8192)),BA=0;if($9=$A.length-10,$9-BA<2048)$A=new Zj($A.length),W0=$A.dataView||($A.dataView=new DataView($A.buffer,0,$A.length)),$9=$A.length-10,BA=0;else BA=BA+7&2147483640;if(B=BA,S&mZB)BA+=S&255;if(C=G.structuredClone?new Map:null,G.bundleStrings&&typeof T!=="string")x0=[],x0.size=1/0;else x0=null;if(J=G.structures,J){if(J.uninitialized)J=G._mergeStructures(G.getStructures());let y=J.sharedLength||0;if(y>Z)throw Error("Shared structures is larger than maximum shared structures, try increasing maxSharedStructures to "+J.sharedLength);if(!J.transitions){J.transitions=Object.create(null);for(let h=0;hi.offset>p.offset?1:-1),g=h.length,m=-1;while(y&&g>0){let i=h[--g].offset+B;if(iy.position+B){if(m>=0)m+=6}else{if(m>=0)W0.setUint32(y.position+B,W0.getUint32(y.position+B)+m),m=-1;y=y.previous,g++}}if(m>=0&&y)W0.setUint32(y.position+B,W0.getUint32(y.position+B)+m);if(BA+=h.length*6,BA>$9)P(BA);G.offset=BA;let n=gZB($A.subarray(B,BA),h);return C=null,n}if(G.offset=BA,S&fZB)return $A.start=B,$A.end=BA,$A;return $A.subarray(B,BA)}catch(y){throw v=y,y}finally{if(J){if(D(),Y&&G.saveStructures){let y=J.sharedLength||0,h=$A.subarray(B,BA),g=HDA(J,G);if(!v){if(G.saveStructures(g,g.isCompatible)===!1)return G.pack(T,S);if(G.lastNamedStructuresLength=y,$A.length>1073741824)$A=null;return h}}}if($A.length>1073741824)$A=null;if(S&bZB)BA=B}};let D=()=>{if(H<10)H++;let T=J.sharedLength||0;if(J.length>T&&!W)J.length=T;if(V>1e4){if(J.transitions=null,H=0,V=0,I.length>0)I=[]}else if(I.length>0&&!W){for(let S=0,v=I.length;S{var S=T.length;if(S<16)$A[BA++]=144|S;else if(S<65536)$A[BA++]=220,$A[BA++]=S>>8,$A[BA++]=S&255;else $A[BA++]=221,W0.setUint32(BA,S),BA+=4;for(let v=0;v{if(BA>$9)$A=P(BA);var S=typeof T,v;if(S==="string"){let y=T.length;if(x0&&y>=4&&y<4096){if((x0.size+=y)>_ZB){let n,i=(x0[0]?x0[0].length*3+x0[1].length:0)+10;if(BA+i>$9)$A=P(BA+i);let p;if(x0.position)p=x0,$A[BA]=200,BA+=3,$A[BA++]=98,n=BA-B,BA+=4,EDA(B,z,0),W0.setUint16(n+B-3,BA-B-n);else $A[BA++]=214,$A[BA++]=98,n=BA-B,BA+=4;x0=["",""],x0.previous=p,x0.size=0,x0.position=n}let m=vZB.test(T);x0[m?0:1]+=T,$A[BA++]=193,z(m?-y:y);return}let h;if(y<32)h=1;else if(y<256)h=2;else if(y<65536)h=3;else h=5;let g=y*3;if(BA+g>$9)$A=P(BA+g);if(y<64||!X){let m,n,i,p=BA+h;for(m=0;m>6|192,$A[p++]=n&63|128;else if((n&64512)===55296&&((i=T.charCodeAt(m+1))&64512)===56320)n=65536+((n&1023)<<10)+(i&1023),m++,$A[p++]=n>>18|240,$A[p++]=n>>12&63|128,$A[p++]=n>>6&63|128,$A[p++]=n&63|128;else $A[p++]=n>>12|224,$A[p++]=n>>6&63|128,$A[p++]=n&63|128;v=p-BA-h}else v=X(T,BA+h);if(v<32)$A[BA++]=160|v;else if(v<256){if(h<2)$A.copyWithin(BA+2,BA+1,BA+1+v);$A[BA++]=217,$A[BA++]=v}else if(v<65536){if(h<3)$A.copyWithin(BA+3,BA+2,BA+2+v);$A[BA++]=218,$A[BA++]=v>>8,$A[BA++]=v&255}else{if(h<5)$A.copyWithin(BA+5,BA+3,BA+3+v);$A[BA++]=219,W0.setUint32(BA,v),BA+=4}BA+=v}else if(S==="number")if(T>>>0===T)if(T<32||T<128&&this.useRecords===!1||T<64&&!this.randomAccessStructure)$A[BA++]=T;else if(T<256)$A[BA++]=204,$A[BA++]=T;else if(T<65536)$A[BA++]=205,$A[BA++]=T>>8,$A[BA++]=T&255;else $A[BA++]=206,W0.setUint32(BA,T),BA+=4;else if(T>>0===T)if(T>=-32)$A[BA++]=256+T;else if(T>=-128)$A[BA++]=208,$A[BA++]=T+256;else if(T>=-32768)$A[BA++]=209,W0.setInt16(BA,T),BA+=2;else $A[BA++]=210,W0.setInt32(BA,T),BA+=4;else{let y;if((y=this.useFloat32)>0&&T<4294967296&&T>=-2147483648){$A[BA++]=202,W0.setFloat32(BA,T);let h;if(y<4||(h=T*PZ[($A[BA]&127)<<1|$A[BA+1]>>7])>>0===h){BA+=4;return}else BA--}$A[BA++]=203,W0.setFloat64(BA,T),BA+=8}else if(S==="object"||S==="function")if(!T)$A[BA++]=192;else{if(C){let h=C.get(T);if(h){if(!h.id){let g=C.idsToInsert||(C.idsToInsert=[]);h.id=g.push(h)}$A[BA++]=214,$A[BA++]=112,W0.setUint32(BA,h.id),BA+=4;return}else C.set(T,{offset:BA-B})}let y=T.constructor;if(y===Object)w(T);else if(y===Array)L(T);else if(y===Map)if(this.mapAsEmptyObject)$A[BA++]=128;else{if(v=T.size,v<16)$A[BA++]=128|v;else if(v<65536)$A[BA++]=222,$A[BA++]=v>>8,$A[BA++]=v&255;else $A[BA++]=223,W0.setUint32(BA,v),BA+=4;for(let[h,g]of T)z(h),z(g)}else{for(let h=0,g=Mu.length;h{if($A=i,i=null,BA+=b,BA>$9)P(BA);return{target:$A,targetView:W0,position:BA-b}},z)}finally{if(i)$A=i,W0=p,BA=d,$9=$A.length-10}if(x){if(x.length+BA>$9)P(x.length+BA);BA=yZB(x,$A,BA,n.type)}return}}if(Array.isArray(T))L(T);else{if(T.toJSON){let h=T.toJSON();if(h!==T)return z(h)}if(S==="function")return z(this.writeFunction&&this.writeFunction(T));w(T)}}}else if(S==="boolean")$A[BA++]=T?195:194;else if(S==="bigint"){if(T<9223372036854776000&&T>=-9223372036854776000)$A[BA++]=211,W0.setBigInt64(BA,T);else if(T<18446744073709552000&&T>0)$A[BA++]=207,W0.setBigUint64(BA,T);else if(this.largeBigIntToFloat)$A[BA++]=203,W0.setFloat64(BA,Number(T));else if(this.largeBigIntToString)return z(T.toString());else if((this.useBigIntExtension||this.moreTypes)&&T-(BigInt(2)**BigInt(1023))){$A[BA++]=199,BA++,$A[BA++]=66;let y=[],h;do{let g=T&BigInt(255);h=(g&BigInt(128))===(T>=BigInt(8)}while(!((T===BigInt(0)||T===BigInt(-1))&&h));$A[BA-2]=y.length;for(let g=y.length;g>0;)$A[BA++]=Number(y[--g]);return}else throw RangeError(T+" was too large to fit in MessagePack 64-bit integer format, use useBigIntExtension, or set largeBigIntToFloat to convert to float-64, or set largeBigIntToString to convert to string");BA+=8}else if(S==="undefined")if(this.encodeUndefinedAsNil)$A[BA++]=192;else $A[BA++]=212,$A[BA++]=0,$A[BA++]=0;else throw Error("Unknown type: "+S)},M=this.variableMapSize||this.coercibleKeyAsNumber||this.skipValues?(T)=>{let S;if(this.skipValues){S=[];for(let h in T)if((typeof T.hasOwnProperty!=="function"||T.hasOwnProperty(h))&&!this.skipValues.includes(T[h]))S.push(h)}else S=Object.keys(T);let v=S.length;if(v<16)$A[BA++]=128|v;else if(v<65536)$A[BA++]=222,$A[BA++]=v>>8,$A[BA++]=v&255;else $A[BA++]=223,W0.setUint32(BA,v),BA+=4;let y;if(this.coercibleKeyAsNumber)for(let h=0;h{$A[BA++]=222;let S=BA-B;BA+=2;let v=0;for(let y in T)if(typeof T.hasOwnProperty!=="function"||T.hasOwnProperty(y))z(y),z(T[y]),v++;if(v>65535)throw Error('Object is too large to serialize with fast 16-bit map size, use the "variableMapSize" option to serialize this object');$A[S+++B]=v>>8,$A[S+B]=v&255},N=this.useRecords===!1?M:A.progressiveRecords&&!$?(T)=>{let S,v=J.transitions||(J.transitions=Object.create(null)),y=BA++-B,h;for(let g in T)if(typeof T.hasOwnProperty!=="function"||T.hasOwnProperty(g)){if(S=v[g],S)v=S;else{let m=Object.keys(T),n=v;v=J.transitions;let i=0;for(let p=0,d=m.length;p{let S,v=J.transitions||(J.transitions=Object.create(null)),y=0;for(let g in T)if(typeof T.hasOwnProperty!=="function"||T.hasOwnProperty(g)){if(S=v[g],!S)S=v[g]=Object.create(null),y++;v=S}let h=v[YX];if(h)if(h>=96&&$)$A[BA++]=((h-=96)&31)+96,$A[BA++]=h>>5;else $A[BA++]=h;else _(v,v.__keys__||Object.keys(T),y);for(let g in T)if(typeof T.hasOwnProperty!=="function"||T.hasOwnProperty(g))z(T[g])},q=typeof this.useRecords=="function"&&this.useRecords,w=q?(T)=>{q(T)?N(T):M(T)}:N,P=(T)=>{let S;if(T>16777216){if(T-B>UDA)throw Error("Packed buffer would be larger than maximum buffer size");S=Math.min(UDA,Math.round(Math.max((T-B)*(T>67108864?1.25:2),4194304)/4096)*4096)}else S=(Math.max(T-B<<2,$A.length-1)>>12)+1<<12;let v=new Zj(S);if(W0=v.dataView||(v.dataView=new DataView(v.buffer,0,S)),T=Math.min(T,$A.length),$A.copy)$A.copy(v,0,B,T);else v.set($A.slice(B,T));return BA-=B,B=0,$9=v.length-10,$A=v},_=(T,S,v)=>{let y=J.nextId;if(!y)y=64;if(y=K)y=E;J.nextId=y+1}let h=S.highByte=y>=96&&$?y-96>>5:-1;if(T[YX]=y,T.__keys__=S,J[y-64]=S,y=0)$A[BA++]=(y&31)+96,$A[BA++]=h;else $A[BA++]=y;else{if(h>=0)$A[BA++]=213,$A[BA++]=114,$A[BA++]=(y&31)+96,$A[BA++]=h;else $A[BA++]=212,$A[BA++]=114,$A[BA++]=y;if(v)V+=H*v;if(I.length>=U)I.shift()[YX]=0;I.push(T),z(S)}},j=(T,S,v,y)=>{let h=$A,g=BA,m=$9,n=B;if($A=FN,BA=0,B=0,!$A)FN=$A=new Zj(8192);$9=$A.length-10,_(T,S,y),FN=$A;let i=BA;if($A=h,BA=g,$9=m,B=n,i>1){let p=BA+i-1;if(p>$9)P(p);let d=v+B;$A.copyWithin(d+i,d+1,BA),$A.set(FN.slice(0,i),d),BA=p}else $A[v+B]=FN[0]},k=(T)=>{let S=IDA(T,$A,B,BA,J,P,(v,y,h)=>{if(h)return Y=!0;BA=y;let g=$A;if(z(v),D(),g!==$A)return{position:BA,targetView:W0,target:$A};return BA},this);if(S===0)return w(T);BA=S}}useBuffer(A){$A=A,$A.dataView||($A.dataView=new DataView($A.buffer,$A.byteOffset,$A.byteLength)),BA=0}set position(A){BA=A}get position(){return BA}clearSharedData(){if(this.structures)this.structures=[];if(this.typedStructs)this.typedStructs=[]}}KDA=[Date,Set,Error,RegExp,ArrayBuffer,Object.getPrototypeOf(Uint8Array.prototype).constructor,DataView,Gj];Mu=[{pack(A,Q,B){let Y=A.getTime()/1000;if((this.useTimestamp32||A.getMilliseconds()===0)&&Y>=0&&Y<4294967296){let{target:J,targetView:C,position:X}=Q(6);J[X++]=214,J[X++]=255,C.setUint32(X,Y)}else if(Y>0&&Y<4294967296){let{target:J,targetView:C,position:X}=Q(10);J[X++]=215,J[X++]=255,C.setUint32(X,A.getMilliseconds()*4000000+(Y/1000/4294967296>>0)),C.setUint32(X+4,Y)}else if(isNaN(Y)){if(this.onInvalidDate)return Q(0),B(this.onInvalidDate());let{target:J,targetView:C,position:X}=Q(3);J[X++]=212,J[X++]=255,J[X++]=255}else{let{target:J,targetView:C,position:X}=Q(15);J[X++]=199,J[X++]=12,J[X++]=255,C.setUint32(X,A.getMilliseconds()*1e6),C.setBigInt64(X+4,BigInt(Math.floor(Y)))}}},{pack(A,Q,B){if(this.setAsEmptyObject)return Q(0),B({});let Y=Array.from(A),{target:J,position:C}=Q(this.moreTypes?3:0);if(this.moreTypes)J[C++]=212,J[C++]=115,J[C++]=0;B(Y)}},{pack(A,Q,B){let{target:Y,position:J}=Q(this.moreTypes?3:0);if(this.moreTypes)Y[J++]=212,Y[J++]=101,Y[J++]=0;B([A.name,A.message,A.cause])}},{pack(A,Q,B){let{target:Y,position:J}=Q(this.moreTypes?3:0);if(this.moreTypes)Y[J++]=212,Y[J++]=120,Y[J++]=0;B([A.source,A.flags])}},{pack(A,Q){if(this.moreTypes)Lu(A,16,Q);else qu(ZN?Buffer.from(A):new Uint8Array(A),Q)}},{pack(A,Q){let B=A.constructor;if(B!==VDA&&this.moreTypes)Lu(A,Nu.indexOf(B.name),Q);else qu(A,Q)}},{pack(A,Q){if(this.moreTypes)Lu(A,17,Q);else qu(ZN?Buffer.from(A):new Uint8Array(A),Q)}},{pack(A,Q){let{target:B,position:Y}=Q(1);B[Y]=193}}];function Lu(A,Q,B,Y){let J=A.byteLength;if(J+1<256){var{target:C,position:X}=B(4+J);C[X++]=199,C[X++]=J+1}else if(J+1<65536){var{target:C,position:X}=B(5+J);C[X++]=200,C[X++]=J+1>>8,C[X++]=J+1&255}else{var{target:C,position:X,targetView:G}=B(7+J);C[X++]=201,G.setUint32(X,J+1),X+=4}if(C[X++]=116,C[X++]=Q,!A.buffer)A=new Uint8Array(A);C.set(new Uint8Array(A.buffer,A.byteOffset,A.byteLength),X)}function qu(A,Q){let B=A.byteLength;var Y,J;if(B<256){var{target:Y,position:J}=Q(B+2);Y[J++]=196,Y[J++]=B}else if(B<65536){var{target:Y,position:J}=Q(B+3);Y[J++]=197,Y[J++]=B>>8,Y[J++]=B&255}else{var{target:Y,position:J,targetView:C}=Q(B+5);Y[J++]=198,C.setUint32(J,B),J+=4}Y.set(A,J)}function yZB(A,Q,B,Y){let J=A.length;switch(J){case 1:Q[B++]=212;break;case 2:Q[B++]=213;break;case 4:Q[B++]=214;break;case 8:Q[B++]=215;break;case 16:Q[B++]=216;break;default:if(J<256)Q[B++]=199,Q[B++]=J;else if(J<65536)Q[B++]=200,Q[B++]=J>>8,Q[B++]=J&255;else Q[B++]=201,Q[B++]=J>>24,Q[B++]=J>>16&255,Q[B++]=J>>8&255,Q[B++]=J&255}return Q[B++]=Y,Q.set(A,B),B+=J,B}function gZB(A,Q){let B,Y=Q.length*6,J=A.length-Y;while(B=Q.pop()){let{offset:C,id:X}=B;A.copyWithin(C+Y,C,J),Y-=6;let G=C+Y;A[G++]=214,A[G++]=105,A[G++]=X>>24,A[G++]=X>>16&255,A[G++]=X>>8&255,A[G++]=X&255,J=C}return A}function EDA(A,Q,B){if(x0.length>0){W0.setUint32(x0.position+A,BA+B-x0.position-A),x0.stringsPosition=BA-A;let Y=x0;x0=null,Q(Y[0]),Q(Y[1])}}function HDA(A,Q){return A.isCompatible=(B)=>{let Y=!B||(Q.lastNamedStructuresLength||0)===B.length;if(!Y)Q._mergeStructures(B);return Y},A}function DDA(A,Q){IDA=A,HDA=Q}var NDA=new TZ({useRecords:!1}),hZB=NDA.pack,xZB=NDA.pack;var fZB=512,bZB=1024,mZB=2048;var zu=3,_E=0,$N=2,Uj=1,wu=16,qDA=["num","object","string","ascii"];qDA[wu]="date";var dZB=[!1,!0,!0,!1,!1,!0,!0,!1],MDA;try{Function(""),MDA=!0}catch(A){}var SZ,cZB=typeof Buffer<"u",Ej,JX;try{Ej=new TextEncoder}catch(A){}var lZB=cZB?function(A,Q,B){return A.utf8Write(Q,B,A.byteLength-B)}:Ej&&Ej.encodeInto?function(A,Q,B){return Ej.encodeInto(Q,A.subarray(B)).written}:!1,lqY=Symbol("type"),pqY=Symbol("parent");DDA(zDA,rZB);function zDA(A,Q,B,Y,J,C,X,G){let W=G.typedStructs||(G.typedStructs=[]),F=Q.dataView,Z=(W.lastStringStart||100)+Y,U=Q.length-10,$=Y;if(Y>U)Q=C(Y),F=Q.dataView,Y-=B,$-=B,Z-=B,B=0,U=Q.length-10;let E,K=Z,I=W.transitions||(W.transitions=Object.create(null)),V=W.nextId||W.length,H=V<15?1:V<240?2:V<61440?3:V<15728640?4:0;if(H===0)return 0;Y+=H;let D=[],L,z=0;for(let N in A){let q=A[N],w=I[N];if(!w)I[N]=w={key:N,parent:I,enumerationOffset:0,ascii0:null,ascii8:null,num8:null,string16:null,object16:null,num32:null,float64:null,date64:null};if(Y>U)Q=C(Y),F=Q.dataView,Y-=B,$-=B,Z-=B,K-=B,B=0,U=Q.length-10;switch(typeof q){case"number":let P=q;if(V<200||!w.num64){if(P>>0===P&&P<536870912&&P>-520093696){if(P<246&&P>=0&&(w.num8&&!(V>200&&w.num32)||P<32&&!w.num32))I=w.num8||i9(w,_E,1),Q[Y++]=P;else I=w.num32||i9(w,_E,4),F.setUint32(Y,P,!0),Y+=4;break}else if(P<4294967296&&P>=-2147483648){if(F.setFloat32(Y,P,!0),dZB[Q[Y+3]>>>5]){let T;if((T=P*PZ[(Q[Y+3]&127)<<1|Q[Y+2]>>7])>>0===T){I=w.num32||i9(w,_E,4),Y+=4;break}}}}I=w.num64||i9(w,_E,8),F.setFloat64(Y,P,!0),Y+=8;break;case"string":let _=q.length;if(E=K-Z,(_<<2)+K>U)Q=C((_<<2)+K),F=Q.dataView,Y-=B,$-=B,Z-=B,K-=B,B=0,U=Q.length-10;if(_>65280+E>>2){D.push(N,q,Y-$);break}let j,k=K;if(_<64){let T,S,v;for(T=0;T<_;T++)if(S=q.charCodeAt(T),S<128)Q[K++]=S;else if(S<2048)j=!0,Q[K++]=S>>6|192,Q[K++]=S&63|128;else if((S&64512)===55296&&((v=q.charCodeAt(T+1))&64512)===56320)j=!0,S=65536+((S&1023)<<10)+(v&1023),T++,Q[K++]=S>>18|240,Q[K++]=S>>12&63|128,Q[K++]=S>>6&63|128,Q[K++]=S&63|128;else j=!0,Q[K++]=S>>12|224,Q[K++]=S>>6&63|128,Q[K++]=S&63|128}else K+=lZB(Q,q,K),j=K-k>_;if(E<160||E<246&&(w.ascii8||w.string8)){if(j){if(!(I=w.string8))if(W.length>10&&(I=w.ascii8))I.__type=$N,w.ascii8=null,w.string8=I,X(null,0,!0);else I=i9(w,$N,1)}else if(E===0&&!L){L=!0,I=w.ascii0||i9(w,zu,0);break}else if(!(I=w.ascii8)&&!(W.length>10&&(I=w.string8)))I=i9(w,zu,1);Q[Y++]=E}else I=w.string16||i9(w,$N,2),F.setUint16(Y,E,!0),Y+=2;break;case"object":if(q){if(q.constructor===Date)I=w.date64||i9(w,wu,8),F.setFloat64(Y,q.getTime(),!0),Y+=8;else D.push(N,q,z);break}else if(w=LDA(w,Y,F,-10),w)I=w,Y=SZ;else D.push(N,q,z);break;case"boolean":I=w.num8||w.ascii8||i9(w,_E,1),Q[Y++]=q?249:248;break;case"undefined":if(w=LDA(w,Y,F,-9),w)I=w,Y=SZ;else D.push(N,q,z);break;default:D.push(N,q,z)}z++}for(let N=0,q=D.length;N=16)return 0;Q[$]=M+32;break;case 2:if(M>=256)return 0;Q[$]=56,Q[$+1]=M;break;case 3:if(M>=65536)return 0;Q[$]=57,F.setUint16($+1,M,!0);break;case 4:if(M>=16777216)return 0;F.setUint32($,(M<<8)+58,!0);break}if(YZ){if(Z===K)return Y;return W.lastStringStart=Y-$,zDA(A,Q,B,$,J,C,X,G)}return K}function LDA(A,Q,B,Y){let J;if(J=A.ascii8||A.num8)return B.setInt8(Q,Y,!0),SZ=Q+1,J;if(J=A.string16||A.object16)return B.setInt16(Q,Y,!0),SZ=Q+2,J;if(J=A.num32)return B.setUint32(Q,3758096640+Y,!0),SZ=Q+4,J;if(J=A.num64)return B.setFloat64(Q,NaN,!0),B.setInt8(Q,Y),SZ=Q+8,J;SZ=Q;return}function i9(A,Q,B){let Y=qDA[Q]+(B<<3),J=A[Y]||(A[Y]=Object.create(null));return J.__type=Q,J.__size=B,J.__parent=A,J}function pZB(A){if(!(A instanceof Map))return A;let Q=A.get("typed")||[];if(Object.isFrozen(Q))Q=Q.map((J)=>J.slice(0));let B=A.get("named"),Y=Object.create(null);for(let J=0,C=Q.length;J=24)switch(J){case 24:J=A[Q++];break;case 25:J=A[Q++]+(A[Q++]<<8);break;case 26:J=A[Q++]+(A[Q++]<<8)+(A[Q++]<<16);break;case 27:J=A[Q++]+(A[Q++]<<8)+(A[Q++]<<16)+(A[Q++]<<24);break}let C=Y.typedStructs&&Y.typedStructs[J];if(!C){if(A=Uint8Array.prototype.slice.call(A,Q,B),B-=Q,Q=0,!Y.getStructures)throw Error(`Reference to shared structure ${J} without getStructures method`);if(Y._mergeStructures(Y.getStructures()),!Y.typedStructs)throw Error("Could not find any shared typed structures");if(Y.lastTypedStructuresLength=Y.typedStructs.length,C=Y.typedStructs[J],!C)throw Error("Could not find typed structure "+J)}var{construct:X,fullConstruct:G}=C;if(!X){X=C.construct=function(){},G=C.fullConstruct=function(){},G.prototype=Y.structPrototype??{};var W=X.prototype=Y.structPrototype?Object.create(Y.structPrototype):{};let Z=[],U=0,$;for(let E=0,K=C.length;E0;break;case 1:M=(q,w)=>{let P=q.bytes[w+z.offset];return P>=246?kE(P):P};break;case 2:M=(q,w)=>{let P=q.bytes,j=(P.dataView||(P.dataView=new DataView(P.buffer,P.byteOffset,P.byteLength))).getUint16(w+z.offset,!0);return j>=65280?kE(j&255):j};break;case 4:M=(q,w)=>{let P=q.bytes,j=(P.dataView||(P.dataView=new DataView(P.buffer,P.byteOffset,P.byteLength))).getUint32(w+z.offset,!0);return j>=4294967040?kE(j&255):j};break}z.getRef=M,U+=H;let N;switch(V){case zu:if($&&!$.next)$.next=z;$=z,z.multiGetCount=0,N=function(q){let{bytes:w,position:P}=q,_=U+P,j=M(q,P);if(typeof j!=="number")return j;let k,T=z.next;while(T){if(k=T.getRef(q,P),typeof k==="number")break;else k=null;T=T.next}if(k==null)k=q.bytesEnd-_;if(q.srcString)return q.srcString.slice(j,k);return XDA(w,j+_,k-j)};break;case $N:case Uj:if($&&!$.next)$.next=z;$=z,N=function(q){let w=q.position,P=U+w,_=M(q,w);if(typeof _!=="number")return _;let j=q.bytes,k,T=z.next;while(T){if(k=T.getRef(q,w),typeof k==="number")break;else k=null;T=T.next}if(k==null)k=q.bytesEnd-P;if(V===$N)return j.toString("utf8",_+P,k+P);else{JX=q;try{return Y.unpack(j,{start:_+P,end:k+P})}finally{JX=null}}};break;case _E:switch(H){case 4:N=function(q){let w=q.bytes,P=w.dataView||(w.dataView=new DataView(w.buffer,w.byteOffset,w.byteLength)),_=q.position+z.offset,j=P.getInt32(_,!0);if(j<536870912){if(j>-520093696)return j;if(j>-536870912)return kE(j&255)}let k=P.getFloat32(_,!0),T=PZ[(w[_+3]&127)<<1|w[_+2]>>7];return(T*k+(k>0?0.5:-0.5)>>0)/T};break;case 8:N=function(q){let w=q.bytes,_=(w.dataView||(w.dataView=new DataView(w.buffer,w.byteOffset,w.byteLength))).getFloat64(q.position+z.offset,!0);if(isNaN(_)){let j=w[q.position+z.offset];if(j>=246)return kE(j)}return _};break;case 1:N=function(q){let P=q.bytes[q.position+z.offset];return P<246?P:kE(P)};break}break;case wu:N=function(q){let w=q.bytes,P=w.dataView||(w.dataView=new DataView(w.buffer,w.byteOffset,w.byteLength));return new Date(P.getFloat64(q.position+z.offset,!0))};break}z.get=N}if(MDA){let E=[],K=[],I=0,V;for(let D of Z){if(Y.alwaysLazyProperty&&Y.alwaysLazyProperty(D.key)){V=!0;continue}Object.defineProperty(W,D.key,{get:nZB(D.get),enumerable:!0});let L="v"+I++;K.push(L),E.push("o["+JSON.stringify(D.key)+"]="+L+"(s)")}if(V)E.push("__proto__:this");let H=Function(...K,"var c=this;return function(s){var o=new c();"+E.join(";")+";return o;}").apply(G,Z.map((D)=>D.get));Object.defineProperty(W,"toJSON",{value(D){return H.call(this,this[Ru])}})}else Object.defineProperty(W,"toJSON",{value(E){let K={};for(let I=0,V=Z.length;I{let J=!0;if(Y instanceof Map){if((Y.get("named")||[]).length!==(Q.lastNamedStructuresLength||0))J=!1;if((Y.get("typed")||[]).length!==B)J=!1}else if(Y instanceof Array||Array.isArray(Y)){if(Y.length!==(Q.lastNamedStructuresLength||0))J=!1}if(!J)Q._mergeStructures(Y);return J},Q.lastTypedStructuresLength=Q.typedStructs&&Q.typedStructs.length,A}$DA(iZB,pZB,sZB);var X$B=process.env.MSGPACKR_NATIVE_ACCELERATION_DISABLED!==void 0&&process.env.MSGPACKR_NATIVE_ACCELERATION_DISABLED.toLowerCase()==="true";if(!X$B){let A;try{if(A=mDA(),A)CDA(A.extractStrings)}catch(Q){}}if(!Wj)console.warn("Msgpackr: msgpackr native acceleration is not enabled, using fallback implementation.");var vu=new TZ({useFloat32:WN.ALWAYS});class $Y{static _instance;static get instance(){if(!$Y._instance)$Y._instance=new $Y;return $Y._instance}_enabled=!1;_bytesSentTotal=0;_bytesReceivedTotal=0;_packetsSentTotal=0;_packetsReceivedTotal=0;_compressionCount=0;_serializationTotalMs=0;_serializationCount=0;_lastSnapshotTime=0;_lastBytesSent=0;_lastBytesReceived=0;_lastPacketsSent=0;_lastPacketsReceived=0;_connectedPlayers=0;get isEnabled(){return this._enabled}enable(){this._enabled=!0,this._lastSnapshotTime=performance.now(),this._reset()}disable(){this._enabled=!1}reset(){this._lastSnapshotTime=performance.now(),this._reset()}setConnectedPlayers(A){this._connectedPlayers=A}recordBytesSent(A){if(!this._enabled)return;this._bytesSentTotal+=A}recordBytesReceived(A){if(!this._enabled)return;this._bytesReceivedTotal+=A}recordPacketSent(){if(!this._enabled)return;this._packetsSentTotal++}recordPacketReceived(){if(!this._enabled)return;this._packetsReceivedTotal++}recordSerialization(A){if(!this._enabled)return;this._serializationTotalMs+=A,this._serializationCount++}recordCompression(){if(!this._enabled)return;this._compressionCount++}getSnapshot(){let A=performance.now(),Q=Math.max((A-this._lastSnapshotTime)/1000,0.001),B={connectedPlayers:this._connectedPlayers,bytesSentTotal:this._bytesSentTotal,bytesReceivedTotal:this._bytesReceivedTotal,bytesSentPerSecond:(this._bytesSentTotal-this._lastBytesSent)/Q,bytesReceivedPerSecond:(this._bytesReceivedTotal-this._lastBytesReceived)/Q,packetsSentPerSecond:(this._packetsSentTotal-this._lastPacketsSent)/Q,packetsReceivedPerSecond:(this._packetsReceivedTotal-this._lastPacketsReceived)/Q,avgSerializationMs:this._serializationCount>0?this._serializationTotalMs/this._serializationCount:0,compressionCount:this._compressionCount};return this._lastSnapshotTime=A,this._lastBytesSent=this._bytesSentTotal,this._lastBytesReceived=this._bytesReceivedTotal,this._lastPacketsSent=this._packetsSentTotal,this._lastPacketsReceived=this._packetsReceivedTotal,B}_reset(){this._bytesSentTotal=0,this._bytesReceivedTotal=0,this._packetsSentTotal=0,this._packetsReceivedTotal=0,this._compressionCount=0,this._serializationTotalMs=0,this._serializationCount=0,this._lastBytesSent=0,this._lastBytesReceived=0,this._lastPacketsSent=0,this._lastPacketsReceived=0}}var Qr={};iG(Qr,{zodErrorsIntegration:()=>Qc,wrapMcpServerWithSentry:()=>Xc,withScope:()=>h8,withMonitor:()=>GX,withIsolationScope:()=>BG,withActiveSpan:()=>GW,vercelAIIntegration:()=>uT,validateOpenTelemetrySetup:()=>Ar,updateSpanName:()=>ru,trpcMiddleware:()=>Yc,tediousIntegration:()=>gT,suppressTracing:()=>ON,supabaseIntegration:()=>Ac,startSpanManual:()=>jN,startSpan:()=>b8,startSession:()=>vN,startNewTrace:()=>Vd,startInactiveSpan:()=>Ed,spotlightIntegration:()=>ST,spanToTraceHeader:()=>HN,spanToJSON:()=>eA,spanToBaggageHeader:()=>Yd,setupKoaErrorHandler:()=>BNQ,setupHapiErrorHandler:()=>SDQ,setupFastifyErrorHandler:()=>cEQ,setupExpressErrorHandler:()=>oUQ,setupConnectErrorHandler:()=>wNQ,setUser:()=>wd,setTags:()=>zd,setTag:()=>Rd,setNodeAsyncContextStrategy:()=>LP,setMeasurement:()=>$d,setHttpStatus:()=>mE,setExtras:()=>qd,setExtra:()=>Md,setCurrentClient:()=>bd,setContext:()=>Ld,rewriteFramesIntegration:()=>ed,requestDataIntegration:()=>xN,redisIntegration:()=>KT,profiler:()=>Bc,prismaIntegration:()=>LT,preloadOpenTelemetry:()=>gqQ,postgresIntegration:()=>DT,parameterize:()=>dj,onUnhandledRejectionIntegration:()=>fP,onUncaughtExceptionIntegration:()=>xP,nodeContextIntegration:()=>kP,nativeNodeFetchIntegration:()=>PP,mysqlIntegration:()=>ZT,mysql2Integration:()=>UT,mongooseIntegration:()=>WT,mongoIntegration:()=>XT,modulesIntegration:()=>hP,makeNodeTransport:()=>sT,lruMemoizerIntegration:()=>CT,logger:()=>Zc,localVariablesIntegration:()=>gP,linkedErrorsIntegration:()=>hN,lastEventId:()=>jd,koaIntegration:()=>OT,knexIntegration:()=>sNQ,kafkaIntegration:()=>JT,isInitialized:()=>cZ,instrumentSupabaseClient:()=>sj,initWithoutDefaultIntegrations:()=>xqQ,initOpenTelemetry:()=>eT,init:()=>AS,inboundFiltersIntegration:()=>gN,httpIntegration:()=>RP,hapiIntegration:()=>RT,graphqlIntegration:()=>YT,getTraceMetaTags:()=>cd,getTraceData:()=>CG,getSpanStatusFromHttpCode:()=>bE,getSpanDescendants:()=>DN,getSentryRelease:()=>oT,getRootSpan:()=>K0,getIsolationScope:()=>RQ,getGlobalScope:()=>QG,getDefaultIntegrationsWithoutPerformance:()=>ts,getDefaultIntegrations:()=>es,getCurrentScope:()=>sQ,getClient:()=>gA,getAutoPerformanceIntegrations:()=>pT,getActiveSpan:()=>Q1,genericPoolIntegration:()=>hT,generateInstrumentOnce:()=>EQ,functionToStringIntegration:()=>yN,fsIntegration:()=>o4Q,flush:()=>Od,fastifyIntegration:()=>eP,extraErrorDataIntegration:()=>sd,expressIntegration:()=>lP,expressErrorHandler:()=>qn,eventFiltersIntegration:()=>lj,endSession:()=>lZ,disableAnrDetectionForCallback:()=>IUQ,defaultStackParser:()=>tT,dedupeIntegration:()=>nd,dataloaderIntegration:()=>bLQ,cron:()=>cqQ,createTransport:()=>nE,createSentryWinstonTransport:()=>ZqQ,createGetModuleFromFilename:()=>aT,continueTrace:()=>Kd,contextLinesIntegration:()=>_P,consoleLoggingIntegration:()=>Wc,consoleIntegration:()=>fN,connectIntegration:()=>TT,close:()=>Pd,childProcessIntegration:()=>dT,captureSession:()=>Sd,captureMessage:()=>iE,captureFeedback:()=>Gc,captureException:()=>jB,captureEvent:()=>kN,captureConsoleIntegration:()=>id,captureCheckIn:()=>SN,anrIntegration:()=>VUQ,amqplibIntegration:()=>bT,addIntegration:()=>yd,addEventProcessor:()=>Td,addBreadcrumb:()=>E9,SentryContextManager:()=>lT,Scope:()=>UJ,SEMANTIC_ATTRIBUTE_SENTRY_SOURCE:()=>Q0,SEMANTIC_ATTRIBUTE_SENTRY_SAMPLE_RATE:()=>g5,SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN:()=>DQ,SEMANTIC_ATTRIBUTE_SENTRY_OP:()=>YQ,SDK_VERSION:()=>l0,NodeClient:()=>Gq});var Zc={};iG(Zc,{warn:()=>uUB,trace:()=>fUB,info:()=>mUB,fmt:()=>ud,fatal:()=>cUB,error:()=>dUB,debug:()=>bUB});import{format as xUB}from"node:util";var OA=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__;var l0="9.22.0";var AQ=globalThis;function TJ(){return a7(AQ),AQ}function a7(A){let Q=A.__SENTRY__=A.__SENTRY__||{};return Q.version=Q.version||l0,Q[l0]=Q[l0]||{}}function kZ(A,Q,B=AQ){let Y=B.__SENTRY__=B.__SENTRY__||{},J=Y[l0]=Y[l0]||{};return J[A]||(J[A]=Q())}var uDA=Object.prototype.toString;function aC(A){switch(uDA.call(A)){case"[object Error]":case"[object Exception]":case"[object DOMException]":case"[object WebAssembly.Exception]":return!0;default:return t6(A,Error)}}function Ij(A,Q){return uDA.call(A)===`[object ${Q}]`}function dDA(A){return Ij(A,"ErrorEvent")}function _Z(A){return Ij(A,"String")}function vZ(A){return typeof A==="object"&&A!==null&&"__sentry_template_string__"in A&&"__sentry_template_values__"in A}function UN(A){return A===null||vZ(A)||typeof A!=="object"&&typeof A!=="function"}function k5(A){return Ij(A,"Object")}function cDA(A){return typeof Event<"u"&&t6(A,Event)}function lDA(A){return typeof Element<"u"&&t6(A,Element)}function pDA(A){return Ij(A,"RegExp")}function _5(A){return Boolean(A?.then&&typeof A.then==="function")}function iDA(A){return k5(A)&&"nativeEvent"in A&&"preventDefault"in A&&"stopPropagation"in A}function t6(A,Q){try{return A instanceof Q}catch(B){return!1}}function Hj(A){return!!(typeof A==="object"&&A!==null&&(A.__isVue||A._isVue))}var G$B=AQ,W$B=80;function nDA(A,Q={}){if(!A)return"";try{let B=A,Y=5,J=[],C=0,X=0,G=" > ",W=G.length,F,Z=Array.isArray(Q)?Q:Q.keyAttrs,U=!Array.isArray(Q)&&Q.maxStringLength||W$B;while(B&&C++1&&X+J.length*W+F.length>=U)break;J.push(F),X+=F.length,B=B.parentNode}return J.reverse().join(G)}catch(B){return""}}function F$B(A,Q){let B=A,Y=[];if(!B?.tagName)return"";if(G$B.HTMLElement){if(B instanceof HTMLElement&&B.dataset){if(B.dataset.sentryComponent)return B.dataset.sentryComponent;if(B.dataset.sentryElement)return B.dataset.sentryElement}}Y.push(B.tagName.toLowerCase());let J=Q?.length?Q.filter((X)=>B.getAttribute(X)).map((X)=>[X,B.getAttribute(X)]):null;if(J?.length)J.forEach((X)=>{Y.push(`[${X[0]}="${X[1]}"]`)});else{if(B.id)Y.push(`#${B.id}`);let X=B.className;if(X&&_Z(X)){let G=X.split(/\s+/);for(let W of G)Y.push(`.${W}`)}}let C=["aria-label","type","name","title","alt"];for(let X of C){let G=B.getAttribute(X);if(G)Y.push(`[${X}="${G}"]`)}return Y.join("")}var Z$B="Sentry Logger ",oC=["debug","info","warn","error","log","assert","trace"],vE={};function f0(A){if(!("console"in AQ))return A();let Q=AQ.console,B={},Y=Object.keys(vE);Y.forEach((J)=>{let C=vE[J];B[J]=Q[J],Q[J]=C});try{return A()}finally{Y.forEach((J)=>{Q[J]=B[J]})}}function $$B(){let A=!1,Q={enable:()=>{A=!0},disable:()=>{A=!1},isEnabled:()=>A};if(OA)oC.forEach((B)=>{Q[B]=(...Y)=>{if(A)f0(()=>{AQ.console[B](`${Z$B}[${B}]:`,...Y)})}});else oC.forEach((B)=>{Q[B]=()=>{return}});return Q}var e=kZ("logger",$$B);function n9(A,Q=0){if(typeof A!=="string"||Q===0)return A;return A.length<=Q?A:`${A.slice(0,Q)}...`}function yu(A,Q){let B=A,Y=B.length;if(Y<=150)return B;if(Q>Y)Q=Y;let J=Math.max(Q-60,0);if(J<5)J=0;let C=Math.min(J+140,Y);if(C>Y-5)C=Y;if(C===Y)J=Math.max(C-140,0);if(B=B.slice(J,C),J>0)B=`'{snip} ${B}`;if(CsDA(A,Y,B))}function gu(A,Q,B){if(!(Q in A))return;let Y=A[Q];if(typeof Y!=="function")return;let J=B(Y);if(typeof J==="function")oDA(J,Y);try{A[Q]=J}catch{OA&&e.log(`Failed to replace method "${Q}" in object`,A)}}function p0(A,Q,B){try{Object.defineProperty(A,Q,{value:B,writable:!0,configurable:!0})}catch(Y){OA&&e.log(`Failed to add non-enumerable property "${Q}" to object`,A)}}function oDA(A,Q){try{let B=Q.prototype||{};A.prototype=Q.prototype=B,p0(A,"__sentry_original__",Q)}catch(B){}}function hu(A){return A.__sentry_original__}function Dj(A){if(aC(A))return{message:A.message,name:A.name,stack:A.stack,...aDA(A)};else if(cDA(A)){let Q={type:A.type,target:rDA(A.target),currentTarget:rDA(A.currentTarget),...aDA(A)};if(typeof CustomEvent<"u"&&t6(A,CustomEvent))Q.detail=A.detail;return Q}else return A}function rDA(A){try{return lDA(A)?nDA(A):Object.prototype.toString.call(A)}catch(Q){return""}}function aDA(A){if(typeof A==="object"&&A!==null){let Q={};for(let B in A)if(Object.prototype.hasOwnProperty.call(A,B))Q[B]=A[B];return Q}else return{}}function xu(A,Q=40){let B=Object.keys(Dj(A));B.sort();let Y=B[0];if(!Y)return"[object has no keys]";if(Y.length>=Q)return n9(Y,Q);for(let J=B.length;J>0;J--){let C=B.slice(0,J).join(", ");if(C.length>Q)continue;if(J===B.length)return C;return n9(C,Q)}return""}function U$B(){let A=AQ;return A.crypto||A.msCrypto}function UY(A=U$B()){let Q=()=>Math.random()*16;try{if(A?.randomUUID)return A.randomUUID().replace(/-/g,"");if(A?.getRandomValues)Q=()=>{let B=new Uint8Array(1);return A.getRandomValues(B),B[0]}}catch(B){}return([1e7]+1000+4000+8000+100000000000).replace(/[018]/g,(B)=>(B^(Q()&15)>>B/4).toString(16))}function tDA(A){return A.exception?.values?.[0]}function e7(A){let{message:Q,event_id:B}=A;if(Q)return Q;let Y=tDA(A);if(Y){if(Y.type&&Y.value)return`${Y.type}: ${Y.value}`;return Y.type||Y.value||B||""}return B||""}function bu(A,Q,B){let Y=A.exception=A.exception||{},J=Y.values=Y.values||[],C=J[0]=J[0]||{};if(!C.value)C.value=Q||"";if(!C.type)C.type=B||"Error"}function AW(A,Q){let B=tDA(A);if(!B)return;let Y={type:"generic",handled:!0},J=B.mechanism;if(B.mechanism={...Y,...J,...Q},Q&&"data"in Q){let C={...J?.data,...Q.data};B.mechanism.data=C}}var E$B=/^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/;function fu(A){return parseInt(A||"",10)}function mu(A){let Q=A.match(E$B)||[],B=fu(Q[1]),Y=fu(Q[2]),J=fu(Q[3]);return{buildmetadata:Q[5],major:isNaN(B)?void 0:B,minor:isNaN(Y)?void 0:Y,patch:isNaN(J)?void 0:J,prerelease:Q[4]}}function Nj(A){if(K$B(A))return!0;try{p0(A,"__sentry_captured__",!0)}catch(Q){}return!1}function K$B(A){try{return A.__sentry_captured__}catch{}}var eDA=1000;function e6(){return Date.now()/eDA}function V$B(){let{performance:A}=AQ;if(!A?.now)return e6;let Q=Date.now()-A.now(),B=A.timeOrigin==null?Q:A.timeOrigin;return()=>{return(B+A.now())/eDA}}var v8=V$B();function ANA(A){let Q=v8(),B={sid:UY(),init:!0,timestamp:Q,started:Q,duration:0,status:"ok",errors:0,ignoreDuration:!1,toJSON:()=>I$B(B)};if(A)AG(B,A);return B}function AG(A,Q={}){if(Q.user){if(!A.ipAddress&&Q.user.ip_address)A.ipAddress=Q.user.ip_address;if(!A.did&&!Q.did)A.did=Q.user.id||Q.user.email||Q.user.username}if(A.timestamp=Q.timestamp||v8(),Q.abnormal_mechanism)A.abnormal_mechanism=Q.abnormal_mechanism;if(Q.ignoreDuration)A.ignoreDuration=Q.ignoreDuration;if(Q.sid)A.sid=Q.sid.length===32?Q.sid:UY();if(Q.init!==void 0)A.init=Q.init;if(!A.did&&Q.did)A.did=`${Q.did}`;if(typeof Q.started==="number")A.started=Q.started;if(A.ignoreDuration)A.duration=void 0;else if(typeof Q.duration==="number")A.duration=Q.duration;else{let B=A.timestamp-A.started;A.duration=B>=0?B:0}if(Q.release)A.release=Q.release;if(Q.environment)A.environment=Q.environment;if(!A.ipAddress&&Q.ipAddress)A.ipAddress=Q.ipAddress;if(!A.userAgent&&Q.userAgent)A.userAgent=Q.userAgent;if(typeof Q.errors==="number")A.errors=Q.errors;if(Q.status)A.status=Q.status}function QNA(A,Q){let B={};if(Q)B={status:Q};else if(A.status==="ok")B={status:"exited"};AG(A,B)}function I$B(A){return{sid:`${A.sid}`,init:A.init,started:new Date(A.started*1000).toISOString(),timestamp:new Date(A.timestamp*1000).toISOString(),status:A.status,errors:A.errors,did:typeof A.did==="number"||typeof A.did==="string"?`${A.did}`:void 0,duration:A.duration,abnormal_mechanism:A.abnormal_mechanism,attrs:{release:A.release,environment:A.environment,ip_address:A.ipAddress,user_agent:A.userAgent}}}function QW(A,Q,B=2){if(!Q||typeof Q!=="object"||B<=0)return Q;if(A&&Object.keys(Q).length===0)return A;let Y={...A};for(let J in Q)if(Object.prototype.hasOwnProperty.call(Q,J))Y[J]=QW(Y[J],Q[J],B-1);return Y}var uu="_sentrySpan";function yZ(A,Q){if(Q)p0(A,uu,Q);else delete A[uu]}function tC(A){return A[uu]}function y8(){return UY()}function g8(){return UY().substring(16)}var H$B=100;class UJ{constructor(){this._notifyingListeners=!1,this._scopeListeners=[],this._eventProcessors=[],this._breadcrumbs=[],this._attachments=[],this._user={},this._tags={},this._extra={},this._contexts={},this._sdkProcessingMetadata={},this._propagationContext={traceId:y8(),sampleRand:Math.random()}}clone(){let A=new UJ;if(A._breadcrumbs=[...this._breadcrumbs],A._tags={...this._tags},A._extra={...this._extra},A._contexts={...this._contexts},this._contexts.flags)A._contexts.flags={values:[...this._contexts.flags.values]};return A._user=this._user,A._level=this._level,A._session=this._session,A._transactionName=this._transactionName,A._fingerprint=this._fingerprint,A._eventProcessors=[...this._eventProcessors],A._attachments=[...this._attachments],A._sdkProcessingMetadata={...this._sdkProcessingMetadata},A._propagationContext={...this._propagationContext},A._client=this._client,A._lastEventId=this._lastEventId,yZ(A,tC(this)),A}setClient(A){this._client=A}setLastEventId(A){this._lastEventId=A}getClient(){return this._client}lastEventId(){return this._lastEventId}addScopeListener(A){this._scopeListeners.push(A)}addEventProcessor(A){return this._eventProcessors.push(A),this}setUser(A){if(this._user=A||{email:void 0,id:void 0,ip_address:void 0,username:void 0},this._session)AG(this._session,{user:A});return this._notifyScopeListeners(),this}getUser(){return this._user}setTags(A){return this._tags={...this._tags,...A},this._notifyScopeListeners(),this}setTag(A,Q){return this._tags={...this._tags,[A]:Q},this._notifyScopeListeners(),this}setExtras(A){return this._extra={...this._extra,...A},this._notifyScopeListeners(),this}setExtra(A,Q){return this._extra={...this._extra,[A]:Q},this._notifyScopeListeners(),this}setFingerprint(A){return this._fingerprint=A,this._notifyScopeListeners(),this}setLevel(A){return this._level=A,this._notifyScopeListeners(),this}setTransactionName(A){return this._transactionName=A,this._notifyScopeListeners(),this}setContext(A,Q){if(Q===null)delete this._contexts[A];else this._contexts[A]=Q;return this._notifyScopeListeners(),this}setSession(A){if(!A)delete this._session;else this._session=A;return this._notifyScopeListeners(),this}getSession(){return this._session}update(A){if(!A)return this;let Q=typeof A==="function"?A(this):A,B=Q instanceof UJ?Q.getScopeData():k5(Q)?A:void 0,{tags:Y,extra:J,user:C,contexts:X,level:G,fingerprint:W=[],propagationContext:F}=B||{};if(this._tags={...this._tags,...Y},this._extra={...this._extra,...J},this._contexts={...this._contexts,...X},C&&Object.keys(C).length)this._user=C;if(G)this._level=G;if(W.length)this._fingerprint=W;if(F)this._propagationContext=F;return this}clear(){return this._breadcrumbs=[],this._tags={},this._extra={},this._user={},this._contexts={},this._level=void 0,this._transactionName=void 0,this._fingerprint=void 0,this._session=void 0,yZ(this,void 0),this._attachments=[],this.setPropagationContext({traceId:y8(),sampleRand:Math.random()}),this._notifyScopeListeners(),this}addBreadcrumb(A,Q){let B=typeof Q==="number"?Q:H$B;if(B<=0)return this;let Y={timestamp:e6(),...A,message:A.message?n9(A.message,2048):A.message};if(this._breadcrumbs.push(Y),this._breadcrumbs.length>B)this._breadcrumbs=this._breadcrumbs.slice(-B),this._client?.recordDroppedEvent("buffer_overflow","log_item");return this._notifyScopeListeners(),this}getLastBreadcrumb(){return this._breadcrumbs[this._breadcrumbs.length-1]}clearBreadcrumbs(){return this._breadcrumbs=[],this._notifyScopeListeners(),this}addAttachment(A){return this._attachments.push(A),this}clearAttachments(){return this._attachments=[],this}getScopeData(){return{breadcrumbs:this._breadcrumbs,attachments:this._attachments,contexts:this._contexts,tags:this._tags,extra:this._extra,user:this._user,level:this._level,fingerprint:this._fingerprint||[],eventProcessors:this._eventProcessors,propagationContext:this._propagationContext,sdkProcessingMetadata:this._sdkProcessingMetadata,transactionName:this._transactionName,span:tC(this)}}setSDKProcessingMetadata(A){return this._sdkProcessingMetadata=QW(this._sdkProcessingMetadata,A,2),this}setPropagationContext(A){return this._propagationContext=A,this}getPropagationContext(){return this._propagationContext}captureException(A,Q){let B=Q?.event_id||UY();if(!this._client)return e.warn("No client configured on scope - will not capture exception!"),B;let Y=Error("Sentry syntheticException");return this._client.captureException(A,{originalException:A,syntheticException:Y,...Q,event_id:B},this),B}captureMessage(A,Q,B){let Y=B?.event_id||UY();if(!this._client)return e.warn("No client configured on scope - will not capture message!"),Y;let J=Error(A);return this._client.captureMessage(A,Q,{originalException:A,syntheticException:J,...B,event_id:Y},this),Y}captureEvent(A,Q){let B=Q?.event_id||UY();if(!this._client)return e.warn("No client configured on scope - will not capture event!"),B;return this._client.captureEvent(A,{...Q,event_id:B},this),B}_notifyScopeListeners(){if(!this._notifyingListeners)this._notifyingListeners=!0,this._scopeListeners.forEach((A)=>{A(this)}),this._notifyingListeners=!1}}function yE(){return kZ("defaultCurrentScope",()=>new UJ)}function v5(){return kZ("defaultIsolationScope",()=>new UJ)}class YNA{constructor(A,Q){let B;if(!A)B=new UJ;else B=A;let Y;if(!Q)Y=new UJ;else Y=Q;this._stack=[{scope:B}],this._isolationScope=Y}withScope(A){let Q=this._pushScope(),B;try{B=A(Q)}catch(Y){throw this._popScope(),Y}if(_5(B))return B.then((Y)=>{return this._popScope(),Y},(Y)=>{throw this._popScope(),Y});return this._popScope(),B}getClient(){return this.getStackTop().client}getScope(){return this.getStackTop().scope}getIsolationScope(){return this._isolationScope}getStackTop(){return this._stack[this._stack.length-1]}_pushScope(){let A=this.getScope().clone();return this._stack.push({client:this.getClient(),scope:A}),A}_popScope(){if(this._stack.length<=1)return!1;return!!this._stack.pop()}}function gE(){let A=TJ(),Q=a7(A);return Q.stack=Q.stack||new YNA(yE(),v5())}function D$B(A){return gE().withScope(A)}function N$B(A,Q){let B=gE();return B.withScope(()=>{return B.getStackTop().scope=A,Q(A)})}function BNA(A){return gE().withScope(()=>{return A(gE().getIsolationScope())})}function JNA(){return{withIsolationScope:BNA,withScope:D$B,withSetScope:N$B,withSetIsolationScope:(A,Q)=>{return BNA(Q)},getCurrentScope:()=>gE().getScope(),getIsolationScope:()=>gE().getIsolationScope()}}function du(A){let Q=TJ(),B=a7(Q);B.acs=A}function y5(A){let Q=a7(A);if(Q.acs)return Q.acs;return JNA()}function sQ(){let A=TJ();return y5(A).getCurrentScope()}function RQ(){let A=TJ();return y5(A).getIsolationScope()}function QG(){return kZ("globalScope",()=>new UJ)}function h8(...A){let Q=TJ(),B=y5(Q);if(A.length===2){let[Y,J]=A;if(!Y)return B.withScope(J);return B.withSetScope(Y,J)}return B.withScope(A[0])}function BG(...A){let Q=TJ(),B=y5(Q);if(A.length===2){let[Y,J]=A;if(!Y)return B.withIsolationScope(J);return B.withSetIsolationScope(Y,J)}return B.withIsolationScope(A[0])}function gA(){return sQ().getClient()}function hE(A){let Q=A.getPropagationContext(),{traceId:B,parentSpanId:Y,propagationSpanId:J}=Q,C={trace_id:B,span_id:J||g8()};if(Y)C.parent_span_id=Y;return C}var Q0="sentry.source",g5="sentry.sample_rate",cu="sentry.previous_trace_sample_rate",YQ="sentry.op",DQ="sentry.origin";var Lj="sentry.measurement_unit",qj="sentry.measurement_value",eC="sentry.custom_span_name",xE="sentry.profile_id",fE="sentry.exclusive_time",lu="cache.hit",pu="cache.key",iu="cache.item_size";var nu=0,BW=1,s9=2;function bE(A){if(A<400&&A>=100)return{code:1};if(A>=400&&A<500)switch(A){case 401:return{code:2,message:"unauthenticated"};case 403:return{code:2,message:"permission_denied"};case 404:return{code:2,message:"not_found"};case 409:return{code:2,message:"already_exists"};case 413:return{code:2,message:"failed_precondition"};case 429:return{code:2,message:"resource_exhausted"};case 499:return{code:2,message:"cancelled"};default:return{code:2,message:"invalid_argument"}}if(A>=500&&A<600)switch(A){case 501:return{code:2,message:"unimplemented"};case 503:return{code:2,message:"unavailable"};case 504:return{code:2,message:"deadline_exceeded"};default:return{code:2,message:"internal_error"}}return{code:2,message:"unknown_error"}}function mE(A,Q){A.setAttribute("http.response.status_code",Q);let B=bE(Q);if(B.message!=="unknown_error")A.setStatus(B)}var CNA="_sentryScope",XNA="_sentryIsolationScope";function EN(A,Q,B){if(A)p0(A,XNA,B),p0(A,CNA,Q)}function A1(A){return{scope:A[CNA],isolationScope:A[XNA]}}function x8(A){if(typeof A==="boolean")return Number(A);let Q=typeof A==="string"?parseFloat(A):A;if(typeof Q!=="number"||isNaN(Q)||Q<0||Q>1)return;return Q}var KN="sentry-",WNA=/^sentry-/,FNA=8192;function YW(A){let Q=gZ(A);if(!Q)return;let B=Object.entries(Q).reduce((Y,[J,C])=>{if(J.match(WNA)){let X=J.slice(KN.length);Y[X]=C}return Y},{});if(Object.keys(B).length>0)return B;else return}function JW(A){if(!A)return;let Q=Object.entries(A).reduce((B,[Y,J])=>{if(J)B[`${KN}${Y}`]=J;return B},{});return Mj(Q)}function gZ(A){if(!A||!_Z(A)&&!Array.isArray(A))return;if(Array.isArray(A))return A.reduce((Q,B)=>{let Y=GNA(B);return Object.entries(Y).forEach(([J,C])=>{Q[J]=C}),Q},{});return GNA(A)}function GNA(A){return A.split(",").map((Q)=>Q.split("=").map((B)=>{try{return decodeURIComponent(B.trim())}catch{return}})).reduce((Q,[B,Y])=>{if(B&&Y)Q[B]=Y;return Q},{})}function Mj(A){if(Object.keys(A).length===0)return;return Object.entries(A).reduce((Q,[B,Y],J)=>{let C=`${encodeURIComponent(B)}=${encodeURIComponent(Y)}`,X=J===0?C:`${Q},${C}`;if(X.length>FNA)return OA&&e.warn(`Not adding key: ${B} with val: ${Y} to baggage header due to exceeding baggage size limits.`),Q;else return X},"")}var VN=new RegExp("^[ \\t]*([0-9a-f]{32})?-?([0-9a-f]{16})?-?([01])?[ \\t]*$");function ZNA(A){if(!A)return;let Q=A.match(VN);if(!Q)return;let B;if(Q[3]==="1")B=!0;else if(Q[3]==="0")B=!1;return{traceId:Q[1],parentSampled:B,parentSpanId:Q[2]}}function hZ(A,Q){let B=ZNA(A),Y=YW(Q);if(!B?.traceId)return{traceId:y8(),sampleRand:Math.random()};let J=L$B(B,Y);if(Y)Y.sample_rand=J.toString();let{traceId:C,parentSpanId:X,parentSampled:G}=B;return{traceId:C,parentSpanId:X,sampled:G,dsc:Y||{},sampleRand:J}}function CW(A=y8(),Q=g8(),B){let Y="";if(B!==void 0)Y=B?"-1":"-0";return`${A}-${Q}${Y}`}function L$B(A,Q){let B=x8(Q?.sample_rand);if(B!==void 0)return B;let Y=x8(Q?.sample_rate);if(Y&&A?.parentSampled!==void 0)return A.parentSampled?Math.random()*Y:Y+Math.random()*(1-Y);else return Math.random()}var zj=0,Rj=1,$NA=!1;function ENA(A){let{spanId:Q,traceId:B}=A.spanContext(),{data:Y,op:J,parent_span_id:C,status:X,origin:G,links:W}=eA(A);return{parent_span_id:C,span_id:Q,trace_id:B,data:Y,op:J,status:X,origin:G,links:W}}function XW(A){let{spanId:Q,traceId:B,isRemote:Y}=A.spanContext(),J=Y?Q:eA(A).parent_span_id,C=A1(A).scope,X=Y?C?.getPropagationContext().propagationSpanId||g8():Q;return{parent_span_id:J,span_id:X,trace_id:B}}function HN(A){let{traceId:Q,spanId:B}=A.spanContext(),Y=XX(A);return CW(Q,B,Y)}function xZ(A){if(A&&A.length>0)return A.map(({context:{spanId:Q,traceId:B,traceFlags:Y,...J},attributes:C})=>({span_id:Q,trace_id:B,sampled:Y===Rj,attributes:C,...J}));else return}function r9(A){if(typeof A==="number")return UNA(A);if(Array.isArray(A))return A[0]+A[1]/1e9;if(A instanceof Date)return UNA(A.getTime());return v8()}function UNA(A){return A>9999999999?A/1000:A}function eA(A){if(M$B(A))return A.getSpanJSON();let{spanId:Q,traceId:B}=A.spanContext();if(q$B(A)){let{attributes:Y,startTime:J,name:C,endTime:X,status:G,links:W}=A,F="parentSpanId"in A?A.parentSpanId:("parentSpanContext"in A)?A.parentSpanContext?.spanId:void 0;return{span_id:Q,trace_id:B,data:Y,description:C,parent_span_id:F,start_timestamp:r9(J),timestamp:r9(X)||void 0,status:fZ(G),op:Y[YQ],origin:Y[DQ],links:xZ(W)}}return{span_id:Q,trace_id:B,start_timestamp:0,data:{}}}function q$B(A){let Q=A;return!!Q.attributes&&!!Q.startTime&&!!Q.name&&!!Q.endTime&&!!Q.status}function M$B(A){return typeof A.getSpanJSON==="function"}function XX(A){let{traceFlags:Q}=A.spanContext();return Q===Rj}function fZ(A){if(!A||A.code===nu)return;if(A.code===BW)return"ok";return A.message||"unknown_error"}var IN="_sentryChildSpans",su="_sentryRootSpan";function uE(A,Q){let B=A[su]||A;if(p0(Q,su,B),A[IN])A[IN].add(Q);else p0(A,IN,new Set([Q]))}function DN(A){let Q=new Set;function B(Y){if(Q.has(Y))return;else if(XX(Y)){Q.add(Y);let J=Y[IN]?Array.from(Y[IN]):[];for(let C of J)B(C)}}return B(A),Array.from(Q)}function K0(A){return A[su]||A}function Q1(){let A=TJ(),Q=y5(A);if(Q.getActiveSpan)return Q.getActiveSpan();return tC(sQ())}function NN(){if(!$NA)f0(()=>{console.warn("[Sentry] Returning null from `beforeSendSpan` is disallowed. To drop certain spans, configure the respective integrations directly.")}),$NA=!0}function ru(A,Q){A.updateName(Q),A.setAttributes({[Q0]:"custom",[eC]:Q})}var ou="?",KNA=/\(error: (.*)\)/,VNA=/captureMessage|captureException/;function jj(...A){let Q=A.sort((B,Y)=>B[0]-Y[0]).map((B)=>B[1]);return(B,Y=0,J=0)=>{let C=[],X=B.split(` + }`});try{let Y=(await Q.next()).value?.data?.userById;if(!Y)return l.warning(`PlatformGateway.getPlayerCosmetics(): No cosmetic data returned for user id "${A}".`);let J=Y.equippedItems?Y.equippedItems.map((W)=>({slot:W.slot,item:W.itemInstance.item.slots.find((F)=>F.type===W.slot)})).filter((W)=>!!W.item):[],C=Y.characterSettings?.hair?.modelUrl,X=Y.characterSettings?.hair?.textureUrl,G=`https://d3qkovarww0lj1.cloudfront.net/?skin_tone=${Y.characterSettings?.skinTone||"SKIN_COLOR_1"}&clothing=${Y.characterSettings?.clothing||"CLOTHING_1"}&hair_style=${Y.characterSettings?.hairStyle||"HAIR_STYLE_1"}&hair_color=${Y.characterSettings?.hairColor||"HAIR_COLOR_1"}&eye_color=${Y.characterSettings?.eyeColor||"00FF00"}`;return{equippedItems:J,hairModelUri:C,hairTextureUri:X,skinTextureUri:G}}finally{await Q.return?.()}}async getPlayerSession(A){if(!this._creativeGateway)return;return await this._creativeGateway.getSession(A)}async scheduleNotification(A,Q,B){if(!tw)return l.warning("PlatformGateway.scheduleNotification(): HYTOPIA_NOTIFICATION_SERVICE_URL is not set. Unable to schedule notification.");if(!this.gameId||!this.creatorApiKey)return l.warning("PlatformGateway.scheduleNotification(): HYTOPIA_GAME_ID or HYTOPIA_API_KEY is not set. Unable to schedule notification.");if(BsetTimeout(J,500))}l.warning(`PersistenceManager.getGlobalData(): Failed to get global data after ${Q} attempts.`);return}async getPlayerData(A){let Q=await this._saveStatesClient.load(this._getPlayerKey(A));if(!Q)return l.warning(`PersistenceManager.getPlayerData(): Failed to get player data for player ${A.id}. Persistence service may be down.`),{};return Q}async setGlobalData(A,Q){let B=await P5.instance.setGlobalData(A,Q);if(!B||B.error){if(B?.error)l.warning(`PersistenceManager.setGlobalData(): ${B.error.message}`)}}async setPlayerData(A,Q){let B=await this.getPlayerData(A);for(let[Y,J]of Object.entries(Q))B[Y]=J}async unloadPlayerData(A){await this._saveStatesClient.unload(this._getPlayerKey(A))}_getPlayerKey(A){return`player-${A.id}`}}var tm;((Y)=>{Y[Y.FIRST_PERSON=0]="FIRST_PERSON";Y[Y.THIRD_PERSON=1]="THIRD_PERSON";Y[Y.SPECTATOR=2]="SPECTATOR"})(tm||={});var em;((L)=>{L.FACE_ENTITY="PLAYER_CAMERA.FACE_ENTITY";L.FACE_POSITION="PLAYER_CAMERA.FACE_POSITION";L.SET_ATTACHED_TO_ENTITY="PLAYER_CAMERA.SET_ATTACHED_TO_ENTITY";L.SET_ATTACHED_TO_POSITION="PLAYER_CAMERA.SET_ATTACHED_TO_POSITION";L.SET_COLLIDES_WITH_BLOCKS="PLAYER_CAMERA.SET_COLLIDES_WITH_BLOCKS";L.SET_FILM_OFFSET="PLAYER_CAMERA.SET_FILM_OFFSET";L.SET_FORWARD_OFFSET="PLAYER_CAMERA.SET_FORWARD_OFFSET";L.SET_FOV="PLAYER_CAMERA.SET_FOV";L.SET_MODE="PLAYER_CAMERA.SET_MODE";L.SET_OFFSET="PLAYER_CAMERA.SET_OFFSET";L.SET_SHOULDER_ANGLE="PLAYER_CAMERA.SET_SHOULDER_ANGLE";L.SET_TARGET_ENTITY="PLAYER_CAMERA.SET_TARGET_ENTITY";L.SET_TARGET_POSITION="PLAYER_CAMERA.SET_TARGET_POSITION";L.SET_VIEW_MODEL="PLAYER_CAMERA.SET_VIEW_MODEL";L.SET_VIEW_MODEL_HIDDEN_NODES="PLAYER_CAMERA.SET_VIEW_MODEL_HIDDEN_NODES";L.SET_VIEW_MODEL_PITCHES_WITH_CAMERA="PLAYER_CAMERA.SET_VIEW_MODEL_PITCHES_WITH_CAMERA";L.SET_VIEW_MODEL_SHOWN_NODES="PLAYER_CAMERA.SET_VIEW_MODEL_SHOWN_NODES";L.SET_VIEW_MODEL_YAWS_WITH_CAMERA="PLAYER_CAMERA.SET_VIEW_MODEL_YAWS_WITH_CAMERA";L.SET_ZOOM="PLAYER_CAMERA.SET_ZOOM"})(em||={});class aD extends BQ{player;_attachedToEntity;_attachedToPosition;_collidesWithBlocks=!0;_filmOffset=0;_forwardOffset=0;_fov=75;_mode=1;_offset={x:0,y:0,z:0};_orientation={pitch:0,yaw:0};_shoulderAngle=0;_targetEntity;_targetPosition;_viewModelUri;_viewModelHiddenNodes=new Set;_viewModelPitchesWithCamera=!1;_viewModelShownNodes=new Set;_viewModelYawsWithCamera=!1;_zoom=1;constructor(A){super();this.player=A}get attachedToEntity(){return this._attachedToEntity}get attachedToPosition(){return this._attachedToPosition}get collidesWithBlocks(){return this._collidesWithBlocks}get facingDirection(){return{x:-Math.sin(this._orientation.yaw)*Math.cos(this._orientation.pitch),y:Math.sin(this._orientation.pitch),z:-Math.cos(this._orientation.yaw)*Math.cos(this._orientation.pitch)}}get facingQuaternion(){let A=this._orientation.pitch*0.5,Q=this._orientation.yaw*0.5,B=Math.cos(A),Y=Math.sin(A),J=Math.cos(Q),C=Math.sin(Q);return{x:Y*J,y:B*C,z:-Y*C,w:B*J}}get filmOffset(){return this._filmOffset}get forwardOffset(){return this._forwardOffset}get fov(){return this._fov}get modelHiddenNodes(){return this._viewModelHiddenNodes}get modelShownNodes(){return this._viewModelShownNodes}get mode(){return this._mode}get offset(){return this._offset}get orientation(){return this._orientation}get shoulderAngle(){return this._shoulderAngle}get targetEntity(){return this._targetEntity}get targetPosition(){return this._targetPosition}get viewModelUri(){return this._viewModelUri??this._attachedToEntity?.modelUri}get viewModelHiddenNodes(){return this._viewModelHiddenNodes}get viewModelPitchesWithCamera(){return this._viewModelPitchesWithCamera}get viewModelShownNodes(){return this._viewModelShownNodes}get viewModelYawsWithCamera(){return this._viewModelYawsWithCamera}get zoom(){return this._zoom}faceEntity(A){if(!this._requirePlayerWorld("faceEntity"))return;this._targetEntity=void 0,this._targetPosition=void 0,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.FACE_ENTITY",{playerCamera:this,entity:A})}facePosition(A){if(!this._requirePlayerWorld("facePosition"))return;this._targetEntity=void 0,this._targetPosition=void 0,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.FACE_POSITION",{playerCamera:this,position:A})}reset(){this._attachedToEntity=void 0,this._attachedToPosition=void 0,this._orientation={pitch:0,yaw:0},this._targetEntity=void 0,this._targetPosition=void 0}setAttachedToEntity(A){if(!this._requirePlayerWorld("setAttachedToEntity"))return;if(!A.isSpawned)return l.error(`PlayerCamera.setAttachedToEntity(): Entity ${A.id} is not spawned!`);if(this._targetEntity===A)return l.error(`PlayerCamera.setAttachedToEntity(): Entity ${A.id} is already set as the target. Attachment and target cannot be the same!`);this._attachedToEntity=A,this._attachedToPosition=void 0,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_ATTACHED_TO_ENTITY",{playerCamera:this,entity:A})}setAttachedToPosition(A){if(!this._requirePlayerWorld("setAttachedToPosition"))return;if(A&&this._targetPosition?.x===A.x&&this._targetPosition?.y===A.y&&this._targetPosition?.z===A.z)return l.error(`PlayerCamera.setAttachedToPosition(): Position ${A.x}, ${A.y}, ${A.z} is already set as the target. Attachment and target cannot be the same!`);this._attachedToPosition=A,this._attachedToEntity=void 0,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_ATTACHED_TO_POSITION",{playerCamera:this,position:A})}setCollidesWithBlocks(A){if(!this._requirePlayerWorld("setCollidesWithBlocks"))return;this._collidesWithBlocks=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_COLLIDES_WITH_BLOCKS",{playerCamera:this,collidesWithBlocks:A})}setFilmOffset(A){if(!this._requirePlayerWorld("setFilmOffset"))return;this._filmOffset=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_FILM_OFFSET",{playerCamera:this,filmOffset:A})}setForwardOffset(A){if(!this._requirePlayerWorld("setForwardOffset"))return;this._forwardOffset=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_FORWARD_OFFSET",{playerCamera:this,forwardOffset:A})}setFov(A){if(!this._requirePlayerWorld("setFov"))return;this._fov=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_FOV",{playerCamera:this,fov:A})}setMode(A){if(!this._requirePlayerWorld("setMode"))return;this._mode=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_MODE",{playerCamera:this,mode:A})}setOffset(A){if(!this._requirePlayerWorld("setOffset"))return;this._offset=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_OFFSET",{playerCamera:this,offset:A})}setOrientationPitch(A){this._orientation.pitch=A}setOrientationYaw(A){this._orientation.yaw=A}setShoulderAngle(A){if(!this._requirePlayerWorld("setShoulderAngle"))return;this._shoulderAngle=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_SHOULDER_ANGLE",{playerCamera:this,shoulderAngle:A})}setTargetEntity(A){if(!this._requirePlayerWorld("setTargetEntity"))return;if(A&&this._attachedToEntity===A)return l.error(`PlayerCamera.setTargetEntity(): Entity ${A.id} is already set as the attachment. Attachment and target cannot be the same!`);if(this._targetEntity=A,A)this._targetPosition=void 0;this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_TARGET_ENTITY",{playerCamera:this,entity:A})}setTargetPosition(A){if(!this._requirePlayerWorld("setTargetPosition"))return;if(A&&this._attachedToPosition?.x===A.x&&this._attachedToPosition?.y===A.y&&this._attachedToPosition?.z===A.z)return l.error(`PlayerCamera.setTargetPosition(): Position ${A.x}, ${A.y}, ${A.z} is already set as the attachment. Attachment and target cannot be the same!`);if(this._targetPosition=A,A)this._targetEntity=void 0;this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_TARGET_POSITION",{playerCamera:this,position:A})}setViewModel(A){if(!this._requirePlayerWorld("setViewModel"))return;if(!this._attachedToEntity)return l.error("PlayerCamera.setViewModel(): Camera is not attached to an entity, cannot set view model! Use camera.setAttachedToEntity() first.");this._viewModelUri=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_VIEW_MODEL",{playerCamera:this,viewModelUri:A})}setViewModelHiddenNodes(A){if(!this._requirePlayerWorld("setViewModelHiddenNodes"))return;this._viewModelHiddenNodes=new Set(A.map((Q)=>Q.toLowerCase())),this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_VIEW_MODEL_HIDDEN_NODES",{playerCamera:this,viewModelHiddenNodes:this._viewModelHiddenNodes})}setViewModelPitchesWithCamera(A){if(!this._requirePlayerWorld("setViewModelPitchesWithCamera"))return;this._viewModelPitchesWithCamera=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_VIEW_MODEL_PITCHES_WITH_CAMERA",{playerCamera:this,viewModelPitchesWithCamera:A})}setViewModelShownNodes(A){if(!this._requirePlayerWorld("setViewModelShownNodes"))return;this._viewModelShownNodes=new Set(A.map((Q)=>Q.toLowerCase())),this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_VIEW_MODEL_SHOWN_NODES",{playerCamera:this,viewModelShownNodes:this._viewModelShownNodes})}setViewModelYawsWithCamera(A){if(!this._requirePlayerWorld("setViewModelYawsWithCamera"))return;this._viewModelYawsWithCamera=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_VIEW_MODEL_YAWS_WITH_CAMERA",{playerCamera:this,viewModelYawsWithCamera:A})}setZoom(A){if(!this._requirePlayerWorld("setZoom"))return;this._zoom=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_ZOOM",{playerCamera:this,zoom:A})}serialize(){return GQ.serializePlayerCamera(this)}_requirePlayerWorld(A){if(!this.player.world)l.error(`PlayerCamera._requirePlayerWorld(): Player ${this.player.id} is not in a world, invoked method: ${A}()`);return!!this.player.world}}var ew;((X)=>{X.APPEND="PLAYER_UI.APPEND";X.DATA="PLAYER_UI.DATA";X.FREEZE_POINTER_LOCK="PLAYER_UI.FREEZE_POINTER_LOCK";X.LOAD="PLAYER_UI.LOAD";X.LOCK_POINTER="PLAYER_UI.LOCK_POINTER";X.SEND_DATA="PLAYER_UI.SEND_DATA"})(ew||={});class oD extends BQ{player;constructor(A){super();this.player=A}append(A){if(!this.player.world)return;this.emitWithWorld(this.player.world,"PLAYER_UI.APPEND",{playerUI:this,htmlUri:A})}freezePointerLock(A){if(!this.player.world)return;this.emitWithWorld(this.player.world,"PLAYER_UI.FREEZE_POINTER_LOCK",{playerUI:this,freeze:A})}load(A){if(!this.player.world)return;this.emitWithWorld(this.player.world,"PLAYER_UI.LOAD",{playerUI:this,htmlUri:A})}lockPointer(A){if(!this.player.world)return;this.emitWithWorld(this.player.world,"PLAYER_UI.LOCK_POINTER",{playerUI:this,lock:A})}sendData(A){if(!this.player.world)return;this.emitWithWorld(this.player.world,"PLAYER_UI.SEND_DATA",{playerUI:this,data:A})}}var lWB=["w","a","s","d","sp","sh","tb","ml","mr","q","e","r","f","z","x","c","v","u","i","o","j","k","l","n","m","1","2","3","4","5","6","7","8","9","0","cp","cy","iro","ird","jd"],tD;((G)=>{G.CHAT_MESSAGE_SEND="PLAYER.CHAT_MESSAGE_SEND";G.INTERACT="PLAYER.INTERACT";G.JOINED_WORLD="PLAYER.JOINED_WORLD";G.LEFT_WORLD="PLAYER.LEFT_WORLD";G.RECONNECTED_WORLD="PLAYER.RECONNECTED_WORLD";G.REQUEST_NOTIFICATION_PERMISSION="PLAYER.REQUEST_NOTIFICATION_PERMISSION";G.REQUEST_SYNC="PLAYER.REQUEST_SYNC"})(tD||={});class TE extends BQ{static _devNextPlayerId=1;id;username;profilePictureUrl;camera;connection;cosmetics;ui;_input={};_interactEnabled=!0;_lastUnreliableInputSequenceNumber=0;_maxInteractDistance=20;_persistedData;_world;_worldSwitched=!1;constructor(A,Q){super();this.id=Q?.user.id??`player-${TE._devNextPlayerId++}`,this.username=Q?.user.username??this.id,this.profilePictureUrl=Q?.user.profilePictureURL??void 0,this.camera=new aD(this),this.connection=A,this.cosmetics=P5.instance.getPlayerCosmetics(this.id),this.ui=new oD(this),A.onPacket(gQ.PacketId.CHAT_MESSAGE_SEND,this._onChatMessageSendPacket),A.onPacket(gQ.PacketId.DEBUG_CONFIG,this._onDebugConfigPacket),A.onPacket(gQ.PacketId.INPUT,this._onInputPacket),A.onPacket(gQ.PacketId.SYNC_REQUEST,this._onSyncRequestPacket),A.onPacket(gQ.PacketId.UI_DATA_SEND,this._onUIDataSendPacket)}get input(){return this._input}get isInteractEnabled(){return this._interactEnabled}get maxInteractDistance(){return this._maxInteractDistance}get world(){return this._world}disconnect(){this._leaveWorld(),this.connection.disconnect()}getPersistedData(){if(!this._persistedData)return;let A=Object.keys(this._persistedData);if(A.length===0||A.length===1&&A[0]==="__version")return;return this._persistedData}joinWorld(A){if(this._world===A)return;if(!this._world)this._world=A,this.emitWithWorld(this._world,"PLAYER.JOINED_WORLD",{player:this,world:this._world});else{for(let Q of this._world.entityManager.getPlayerEntitiesByPlayer(this))if(Q.isSpawned)Q.despawn();this.disconnect(),this._world=A,this._worldSwitched=!0}}async scheduleNotification(A,Q){if(!this._world)return l.warning("Player.scheduleNotification(): Player must be in a world to schedule a notification.");return this.emitWithWorld(this._world,"PLAYER.REQUEST_NOTIFICATION_PERMISSION",{player:this}),P5.instance.scheduleNotification(this.id,A,Q)}async unscheduleNotification(A){if(!A)return!1;return P5.instance.unscheduleNotification(A)}async loadInitialPersistedData(){if(this._persistedData)return;this._persistedData=await s7.instance.getPlayerData(this)}reconnected(){if(!this._world)return;if(this._lastUnreliableInputSequenceNumber=0,!this._worldSwitched)this.emitWithWorld(this._world,"PLAYER.RECONNECTED_WORLD",{player:this,world:this._world});else this._worldSwitched=!1,this.emitWithWorld(this._world,"PLAYER.JOINED_WORLD",{player:this,world:this._world})}resetInputs(){this._input={}}setInteractEnabled(A){this._interactEnabled=A}setMaxInteractDistance(A){this._maxInteractDistance=A}setPersistedData(A){if(!this._persistedData){l.warning(`Player.setPersistedData(): Persisted data not found for player ${this.id}`);return}for(let[Q,B]of Object.entries(A))this._persistedData[Q]=B}serialize(){return GQ.serializePlayer(this)}_leaveWorld(){if(!this._world)return;this.emitWithWorld(this._world,"PLAYER.LEFT_WORLD",{player:this,world:this._world}),this._world=void 0}_onChatMessageSendPacket=(A)=>{if(!this._world)return;let Q=A[1].m;if(this._world.chatManager.handleCommand(this,Q)){this._world.chatManager.sendPlayerMessage(this,`Command Entered: ${Q}`,"CCCCCC");return}this.emitWithWorld(this._world,"PLAYER.CHAT_MESSAGE_SEND",{player:this,message:Q})};_onDebugConfigPacket=(A)=>{console.log(A)};_onInputPacket=(A)=>{let Q=A[1];if(Q.sq!==void 0){if(Q.sq{if(!this.world||!this._input.ird||!this._input.iro)return;if(this._interactEnabled){let A={x:this._input.iro[0],y:this._input.iro[1],z:this._input.iro[2]},Q={x:this._input.ird[0],y:this._input.ird[1],z:this._input.ird[2]},B=this.world.entityManager.getPlayerEntitiesByPlayer(this)[0],Y=this.world.simulation.raycast(A,Q,this._maxInteractDistance,{filterExcludeRigidBody:B?.rawRigidBody,filterFlags:WB.QueryFilterFlags.EXCLUDE_SENSORS});if(this.emitWithWorld(this.world,"PLAYER.INTERACT",{player:this,interactOrigin:A,interactDirection:Q,raycastHit:Y}),Y?.hitEntity)Y.hitEntity.interact(this,Y);if(Y?.hitBlock)Y.hitBlock.blockType.interact(this,Y)}};_onSyncRequestPacket=()=>{if(this._world)this.emitWithWorld(this._world,"PLAYER.REQUEST_SYNC",{player:this,receivedAt:Date.now(),receivedAtMs:performance.now()})};_onUIDataSendPacket=(A)=>{this.ui.emit("PLAYER_UI.DATA",{playerUI:this.ui,data:A[1]})}}var Au;((B)=>{B.BROADCAST_MESSAGE="CHAT.BROADCAST_MESSAGE";B.PLAYER_MESSAGE="CHAT.PLAYER_MESSAGE"})(Au||={});class eD extends BQ{_commandCallbacks={};_world;constructor(A){super();this._world=A,this._subscribeToPlayerEvents()}registerCommand(A,Q){this._commandCallbacks[A]=Q}unregisterCommand(A){delete this._commandCallbacks[A]}sendBroadcastMessage(A,Q){this._sendBroadcastMessage(void 0,A,Q)}handleCommand(A,Q){let[B,...Y]=Q.split(" "),J=this._commandCallbacks[B];if(J)return J(A,Y,Q),!0;return!1}sendPlayerMessage(A,Q,B){this.emitWithWorld(this._world,"CHAT.PLAYER_MESSAGE",{player:A,message:Q,color:B})}_subscribeToPlayerEvents(){this._world.on("PLAYER.CHAT_MESSAGE_SEND",(A)=>{let{player:Q,message:B}=A;this._sendBroadcastMessage(Q,B)})}_sendBroadcastMessage(A,Q,B){this.emitWithWorld(this._world,"CHAT.BROADCAST_MESSAGE",{player:A,message:Q,color:B})}}var d9=16,T5=d9-1,wZ=Math.log2(d9),c9=d9**3,SE=255;class MY{_blocks;_blockRotations=new Map;_originCoordinate;constructor(A){this._blocks=new Uint8Array(c9),this._originCoordinate=A}get blocks(){return this._blocks}get blockRotations(){return this._blockRotations}get originCoordinate(){return this._originCoordinate}static blockIndexToLocalCoordinate(A){return{x:A&T5,y:A>>wZ&T5,z:A>>wZ*2&T5}}static localCoordinateToBlockIndex(A){return A.x+(A.y<SE)return l.error(`Chunk.setBlock(): Block type id ${Q} is out of bounds (expected 0-${SE}).`);let Y=this._getIndex(A);if(this._blocks[Y]=Q,this._blockRotations.delete(Y),B&&B!==w8.Y_0)this._blockRotations.set(Y,B)}serialize(){return GQ.serializeChunk(this)}_getIndex(A){return MY.localCoordinateToBlockIndex(A)}_isValidLocalCoordinate(A){return A.x>=0&&A.x<=T5&&A.y>=0&&A.y<=T5&&A.z>=0&&A.z<=T5}}var pWB=32,iWB=c9/pWB,AN=54,nWB=BigInt(AN),sWB=BigInt(AN*2),Qu;((Y)=>{Y.ADD_CHUNK="CHUNK_LATTICE.ADD_CHUNK";Y.REMOVE_CHUNK="CHUNK_LATTICE.REMOVE_CHUNK";Y.SET_BLOCK="CHUNK_LATTICE.SET_BLOCK"})(Qu||={});class QN extends BQ{_blockTypeColliders=new Map;_blockTypeChunkMasks=new Map;_blockTypeCounts=new Map;_chunks=new Map;_rigidBody;_world;constructor(A){super();this._world=A}get chunkCount(){return this._chunks.size}clear(){for(let A of this._blockTypeColliders.values())A.removeFromSimulation();this._chunks.forEach((A)=>{this.emitWithWorld(this._world,"CHUNK_LATTICE.REMOVE_CHUNK",{chunkLattice:this,chunk:A})}),this._blockTypeColliders.clear(),this._blockTypeChunkMasks.clear(),this._blockTypeCounts.clear(),this._chunks.clear()}getBlockId(A){let Q=this.getChunk(A);if(!Q)return 0;return Q.getBlockId(MY.globalCoordinateToLocalCoordinate(A))}getBlockTypeCollider(A){return this._blockTypeColliders.get(A)}getBlockType(A){let Q=this.getBlockId(A);return Q?this._world.blockTypeRegistry.getBlockType(Q):null}getBlockTypeCount(A){if(!this._isValidBlockTypeId(A))return 0;return this._blockTypeCounts.get(A)??0}getChunk(A){return this._chunks.get(this._getChunkKey(A))}getOrCreateBlockTypeCollider(A,Q){let B=this._blockTypeColliders.get(A);if(B)return B;let J=this._world.blockTypeRegistry.getBlockType(A).createCollider(Q);return this._blockTypeColliders.set(A,J),J}getOrCreateChunk(A){let Q=MY.globalCoordinateToOriginCoordinate(A),B=this._packCoordinate(Q),Y=this._chunks.get(B);if(Y)return Y;return Y=new MY(Q),this._chunks.set(B,Y),this.emitWithWorld(this._world,"CHUNK_LATTICE.ADD_CHUNK",{chunkLattice:this,chunk:Y}),Y}getAllChunks(){return Array.from(this._chunks.values())}hasBlock(A){let Q=this.getChunk(A);if(!Q)return!1;return Q.hasBlock(MY.globalCoordinateToLocalCoordinate(A))}hasChunk(A){return this._chunks.has(this._getChunkKey(A))}initializeBlocks(A){let Q=function*(){for(let B in A){let Y=Number(B),J=A[Y];for(let C=0;C>>0;if(G===0)continue;let W=G;while(W!==0){let F=W&-W,Z=31-Math.clz32(F),U=(X<<5)+Z,$=MY.blockIndexToLocalCoordinate(U),E=C.getBlockRotation($);Q.push({globalCoordinate:{x:C.originCoordinate.x+$.x,y:C.originCoordinate.y+$.y,z:C.originCoordinate.z+$.z},blockRotation:E===w8.Y_0?void 0:E}),W=(W&W-1)>>>0}}}return Q}_isChunkMaskEmpty(A){for(let Q=0;Q=0&&A<=SE;if(!Q)l.error(`ChunkLattice._isValidBlockTypeId(): Block type id ${A} is out of bounds (expected 0-${SE}).`);return Q}_setBlockTypePlacement(A,Q,B){let Y=this._blockTypeChunkMasks.get(A);if(!Y){if(!B)return;Y=new Map,this._blockTypeChunkMasks.set(A,Y)}let J=this._getChunkKey(Q),C=MY.globalCoordinateToLocalCoordinate(Q),X=MY.localCoordinateToBlockIndex(C),G=X>>>5,W=1<<(X&31)>>>0,F=Y.get(J);if(!F){if(!B)return;F=new Uint32Array(iWB),Y.set(J,F)}let Z=(F[G]&W)!==0;if(B){if(Z)return;F[G]|=W,this._blockTypeCounts.set(A,(this._blockTypeCounts.get(A)??0)+1);return}if(!Z)return;F[G]&=~W;let U=Math.max(0,(this._blockTypeCounts.get(A)??0)-1);if(U>0)this._blockTypeCounts.set(A,U);else this._blockTypeCounts.delete(A),this._blockTypeChunkMasks.delete(A);if(this._blockTypeChunkMasks.has(A)&&this._isChunkMaskEmpty(F))Y.delete(J)}}class BN{_colliderHandleBlockTypeMap=new Map;_colliderHandleCollisionCallbackMap=new Map;_colliderHandleEntityMap=new Map;_cleanupBlockTypeColliderHandles=new Set;_pendingCleanupBlockTypeColliderHandles=new Set;_cleanupCollisionCallbackColliderHandles=new Set;_pendingCleanupCollisionCallbackColliderHandles=new Set;_cleanupEntityColliderHandles=new Set;_pendingCleanupEntityColliderHandles=new Set;getColliderBlockType(A){if(!this._requireSimulatedCollider(A))return;return this._colliderHandleBlockTypeMap.get(A.rawCollider.handle)}getColliderCollisionCallback(A){if(!this._requireSimulatedCollider(A))return;return this._colliderHandleCollisionCallbackMap.get(A.rawCollider.handle)}getColliderEntity(A){if(!this._requireSimulatedCollider(A))return;return this._colliderHandleEntityMap.get(A.rawCollider.handle)}getColliderHandleBlockType(A){return this._colliderHandleBlockTypeMap.get(A)}getColliderHandleCollisionCallback(A){return this._colliderHandleCollisionCallbackMap.get(A)}getColliderHandleEntity(A){return this._colliderHandleEntityMap.get(A)}removeColliderBlockType(A){if(!this._requireSimulatedCollider(A))return;this.removeColliderHandleBlockType(A.rawCollider.handle)}removeColliderCollisionCallback(A){if(!this._requireSimulatedCollider(A))return;this.removeColliderHandleCollisionCallback(A.rawCollider.handle)}removeColliderEntity(A){if(!this._requireSimulatedCollider(A))return;this.removeColliderHandleEntity(A.rawCollider.handle)}removeColliderHandleBlockType(A){this._colliderHandleBlockTypeMap.delete(A)}removeColliderHandleCollisionCallback(A){this._colliderHandleCollisionCallbackMap.delete(A)}removeColliderHandleEntity(A){this._colliderHandleEntityMap.delete(A)}setColliderBlockType(A,Q){if(!this._requireSimulatedCollider(A))return;this.setColliderHandleBlockType(A.rawCollider.handle,Q)}setColliderCollisionCallback(A,Q){if(!this._requireSimulatedCollider(A))return;this.setColliderHandleCollisionCallback(A.rawCollider.handle,Q)}setColliderEntity(A,Q){if(!this._requireSimulatedCollider(A))return;this.setColliderHandleEntity(A.rawCollider.handle,Q)}setColliderHandleBlockType(A,Q){this._colliderHandleBlockTypeMap.set(A,Q),this._cleanupBlockTypeColliderHandles.delete(A),this._pendingCleanupBlockTypeColliderHandles.delete(A)}setColliderHandleCollisionCallback(A,Q){this._colliderHandleCollisionCallbackMap.set(A,Q),this._cleanupCollisionCallbackColliderHandles.delete(A),this._pendingCleanupCollisionCallbackColliderHandles.delete(A)}setColliderHandleEntity(A,Q){this._colliderHandleEntityMap.set(A,Q),this._cleanupEntityColliderHandles.delete(A),this._pendingCleanupEntityColliderHandles.delete(A)}queueColliderHandleForCleanup(A){if(this._colliderHandleBlockTypeMap.has(A))this._pendingCleanupBlockTypeColliderHandles.add(A);if(this._colliderHandleCollisionCallbackMap.has(A))this._pendingCleanupCollisionCallbackColliderHandles.add(A);if(this._colliderHandleEntityMap.has(A))this._pendingCleanupEntityColliderHandles.add(A)}cleanup(){for(let A of this._cleanupBlockTypeColliderHandles)this._colliderHandleBlockTypeMap.delete(A);if(this._cleanupBlockTypeColliderHandles.size>0)this._cleanupBlockTypeColliderHandles.clear();for(let A of this._cleanupCollisionCallbackColliderHandles)this._colliderHandleCollisionCallbackMap.delete(A);if(this._cleanupCollisionCallbackColliderHandles.size>0)this._cleanupCollisionCallbackColliderHandles.clear();for(let A of this._cleanupEntityColliderHandles)this._colliderHandleEntityMap.delete(A);if(this._cleanupEntityColliderHandles.size>0)this._cleanupEntityColliderHandles.clear();for(let A of this._pendingCleanupBlockTypeColliderHandles)this._cleanupBlockTypeColliderHandles.add(A);if(this._pendingCleanupBlockTypeColliderHandles.size>0)this._pendingCleanupBlockTypeColliderHandles.clear();for(let A of this._pendingCleanupCollisionCallbackColliderHandles)this._cleanupCollisionCallbackColliderHandles.add(A);if(this._pendingCleanupCollisionCallbackColliderHandles.size>0)this._pendingCleanupCollisionCallbackColliderHandles.clear();for(let A of this._pendingCleanupEntityColliderHandles)this._cleanupEntityColliderHandles.add(A);if(this._pendingCleanupEntityColliderHandles.size>0)this._pendingCleanupEntityColliderHandles.clear()}_requireSimulatedCollider(A){if(!A.rawCollider)l.error("ColliderMap._requireSimulatedCollider(): Collider is not in the simulation.");return!!A.rawCollider}}class G0 extends UZ{static BASE_ENTITY_HEIGHT=1.5;static GROUND_SENSOR_HEIGHT_SCALE=0.125;static GROUND_SENSOR_RADIUS_SCALE=0.23;static JUMP_LAND_HEAVY_VELOCITY_THRESHOLD=-12;static WALL_COLLIDER_HEIGHT_SCALE=0.33;static WALL_COLLIDER_RADIUS_SCALE=0.4;static MOVEMENT_ROTATIONS={wa:Math.PI/4,wd:-Math.PI/4,sa:Math.PI-Math.PI/4,sd:Math.PI+Math.PI/4,s:Math.PI,asd:Math.PI,a:Math.PI/2,d:-Math.PI/2};static EXTERNAL_IMPULSE_DECAY_RATE=0.253;static SWIM_UPWARD_COOLDOWN_MS=600;static SWIMMING_DRAG_FACTOR=0.05;static WATER_ENTRY_SINKING_FACTOR=0.8;static WATER_ENTRY_SINKING_MS=250;applyDirectionalMovementRotations=!0;autoCancelMouseLeftClick=!0;canJump=()=>!0;canRun=()=>!0;canSwim=()=>!0;canWalk=()=>!0;facesCameraWhenIdle=!1;idleLoopedAnimations=["idle-upper","idle-lower"];interactOneshotAnimations=["simple-interact"];jumpLandHeavyOneshotAnimations=["jump-post-heavy"];jumpLandLightOneshotAnimations=["jump-post-light"];jumpOneshotAnimations=["jump-loop"];jumpVelocity=10;runLoopedAnimations=["run-upper","run-lower"];runVelocity=8;sticksToPlatforms=!0;swimFastVelocity=5;swimGravity=0;swimIdleLoopedAnimations=["swim-idle"];swimLoopedAnimations=["swim-forward"];swimMaxGravityVelocity=-1;swimSlowVelocity=3;swimUpwardVelocity=2;walkLoopedAnimations=["walk-upper","walk-lower"];walkVelocity=4;_externalVelocity={x:0,y:0,z:0};_magnitudeYTracker=0;_groundContactCount=0;_internalApplyImpulse=()=>{};_isActivelyMoving=!1;_isFullySubmerged=!1;_justSubmergedUntil=0;_liquidContactCount=0;_platform;_reusableImpulse={x:0,y:0,z:0};_reusablePlatformVelocity={x:0,y:0,z:0};_reusableTargetVelocities={x:0,y:0,z:0};_reusableVelocityClamp={x:0,y:0,z:0};_stepAudio;_swimUpwardCooldownAt=0;constructor(A={}){super();this.applyDirectionalMovementRotations=A.applyDirectionalMovementRotations??this.applyDirectionalMovementRotations,this.autoCancelMouseLeftClick=A.autoCancelMouseLeftClick??this.autoCancelMouseLeftClick,this.facesCameraWhenIdle=A.facesCameraWhenIdle??this.facesCameraWhenIdle,this.sticksToPlatforms=A.sticksToPlatforms??this.sticksToPlatforms,this.canJump=A.canJump??this.canJump,this.canRun=A.canRun??this.canRun,this.canSwim=A.canSwim??this.canSwim,this.canWalk=A.canWalk??this.canWalk,this.jumpVelocity=A.jumpVelocity??this.jumpVelocity,this.runVelocity=A.runVelocity??this.runVelocity,this.walkVelocity=A.walkVelocity??this.walkVelocity,this.swimFastVelocity=A.swimFastVelocity??this.swimFastVelocity,this.swimSlowVelocity=A.swimSlowVelocity??this.swimSlowVelocity,this.swimUpwardVelocity=A.swimUpwardVelocity??this.swimUpwardVelocity,this.swimGravity=A.swimGravity??this.swimGravity,this.swimMaxGravityVelocity=A.swimMaxGravityVelocity??this.swimMaxGravityVelocity,this.idleLoopedAnimations=A.idleLoopedAnimations??this.idleLoopedAnimations,this.interactOneshotAnimations=A.interactOneshotAnimations??this.interactOneshotAnimations,this.jumpOneshotAnimations=A.jumpOneshotAnimations??this.jumpOneshotAnimations,this.jumpLandHeavyOneshotAnimations=A.jumpLandHeavyOneshotAnimations??this.jumpLandHeavyOneshotAnimations,this.jumpLandLightOneshotAnimations=A.jumpLandLightOneshotAnimations??this.jumpLandLightOneshotAnimations,this.runLoopedAnimations=A.runLoopedAnimations??this.runLoopedAnimations,this.swimLoopedAnimations=A.swimLoopedAnimations??this.swimLoopedAnimations,this.swimIdleLoopedAnimations=A.swimIdleLoopedAnimations??this.swimIdleLoopedAnimations,this.walkLoopedAnimations=A.walkLoopedAnimations??this.walkLoopedAnimations}get isActivelyMoving(){return this._isActivelyMoving}get isGrounded(){return this._groundContactCount>0}get isOnPlatform(){return!!this._platform}get isSwimming(){return this._liquidContactCount>0}get platform(){return this._platform}attach(A){super.attach(A),this._internalApplyImpulse=A.applyImpulse.bind(A),A.applyImpulse=(Q)=>{let B=A.mass||1;this._externalVelocity.x+=Q.x/B,this._externalVelocity.y+=Q.y/B,this._externalVelocity.z+=Q.z/B},this._stepAudio=new $D({uri:"audio/sfx/step/stone/stone-step-04.mp3",loop:!0,volume:0.1,referenceDistance:2,cutoffDistance:15,attachedToEntity:A}),A.setCcdEnabled(!0),A.lockAllRotations(),A.on("ENTITY.BLOCK_COLLISION",({blockType:Q,started:B})=>{if(!Q.isLiquid||!this.canSwim(this))return;if(this._liquidContactCount<=0&&B){let Y=A.linearVelocity;A.setLinearVelocity({x:Y.x*this.swimGravity,y:Y.y*this.swimGravity,z:Y.z*this.swimGravity})}if(this._liquidContactCount+=B?1:-1,this._liquidContactCount>0)A.setGravityScale(this.swimGravity),A.stopAllModelAnimations((Y)=>this.swimLoopedAnimations.includes(Y.name)),this._swimUpwardCooldownAt=performance.now()+G0.SWIM_UPWARD_COOLDOWN_MS;else A.setGravityScale(1),A.stopModelAnimations(this.swimLoopedAnimations)})}spawn(A){if(!A.isSpawned)return l.error("DefaultPlayerEntityController.spawn(): Entity is not spawned!");A.createAndAddChildCollider({shape:"cylinder",radius:G0.GROUND_SENSOR_RADIUS_SCALE*(A.height/G0.BASE_ENTITY_HEIGHT),halfHeight:G0.GROUND_SENSOR_HEIGHT_SCALE*(A.height/G0.BASE_ENTITY_HEIGHT),collisionGroups:{belongsTo:[4],collidesWith:[1,2,8]},isSensor:!0,relativePosition:{x:0,y:-A.height/2,z:0},tag:"groundSensor",onCollision:(Q,B)=>{if(!A.isSpawned)return;if(!(Q instanceof O8)||!Q.isLiquid){if(B&&this._groundContactCount===0&&A.linearVelocity.y<-1)if(A.linearVelocity.yw.includes(P.name)||P.loopMode===0);for(let P of w)A.getModelAnimation(P)?.setLoopMode(1),A.getModelAnimation(P)?.play();this._stepAudio?.setPlaybackRate(V?0.75:0.51),this._stepAudio?.play(A.world,!this._stepAudio?.isPlaying)}else if(this._isFullySubmerged&&this.canSwim(this))if(this._stepAudio?.pause(),this._isActivelyMoving){A.stopAllModelAnimations((w)=>this.swimLoopedAnimations.includes(w.name)||w.loopMode===0);for(let w of this.swimLoopedAnimations)A.getModelAnimation(w)?.setLoopMode(1),A.getModelAnimation(w)?.play()}else{A.stopAllModelAnimations((w)=>this.swimIdleLoopedAnimations.includes(w.name)||w.loopMode===0);for(let w of this.swimIdleLoopedAnimations)A.getModelAnimation(w)?.setLoopMode(1),A.getModelAnimation(w)?.play()}else{this._stepAudio?.pause(),A.stopAllModelAnimations((w)=>this.idleLoopedAnimations.includes(w.name)||w.loopMode===0);for(let w of this.idleLoopedAnimations)A.getModelAnimation(w)?.setLoopMode(1),A.getModelAnimation(w)?.play()}let L;if(this.applyDirectionalMovementRotations&&D){if(I)L=$;else if(J&&C&&!G&&!X)L=G0.MOVEMENT_ROTATIONS.wa;else if(J&&G&&!C&&!X)L=G0.MOVEMENT_ROTATIONS.wd;else if(X&&C&&!J&&!G)L=G0.MOVEMENT_ROTATIONS.sa;else if(X&&G&&!J&&!C)L=G0.MOVEMENT_ROTATIONS.sd;else if(X&&!J&&!C&&!G||C&&X&&G&&!J)L=G0.MOVEMENT_ROTATIONS.s;else if(C&&!J&&!X&&!G)L=G0.MOVEMENT_ROTATIONS.a;else if(G&&!J&&!C&&!X)L=G0.MOVEMENT_ROTATIONS.d}if(U){for(let w of this.interactOneshotAnimations)A.getModelAnimation(w)?.setBlendMode(0),A.getModelAnimation(w)?.restart();Q.ml=!this.autoCancelMouseLeftClick}if(D){let w=!this.isSwimming?V?this.runVelocity:this.walkVelocity:V?this.swimFastVelocity:this.swimSlowVelocity;if(I){let P=E+$;this._reusableTargetVelocities.x=-w*Math.sin(P),this._reusableTargetVelocities.z=-w*Math.cos(P)}else{let P=Math.sin(E),_=Math.cos(E);if(J)this._reusableTargetVelocities.x-=w*P,this._reusableTargetVelocities.z-=w*_;if(X)this._reusableTargetVelocities.x+=w*P,this._reusableTargetVelocities.z+=w*_;if(C)this._reusableTargetVelocities.x-=w*_,this._reusableTargetVelocities.z+=w*P;if(G)this._reusableTargetVelocities.x+=w*_,this._reusableTargetVelocities.z-=w*P;let j=Math.sqrt(this._reusableTargetVelocities.x*this._reusableTargetVelocities.x+this._reusableTargetVelocities.z*this._reusableTargetVelocities.z);if(j>w){let k=w/j;this._reusableTargetVelocities.x*=k,this._reusableTargetVelocities.z*=k}}}if(this.isSwimming){if(K.ythis.swimUpwardVelocity*2)this._reusableVelocityClamp.x=K.x,this._reusableVelocityClamp.y=this.swimUpwardVelocity*2,this._reusableVelocityClamp.z=K.z,A.setLinearVelocity(this._reusableVelocityClamp);if(W)this._reusableTargetVelocities.y=-this.swimUpwardVelocity;else if(performance.now()-0.001&&K.y<=3)this._reusableTargetVelocities.y=this.jumpVelocity;else if(this.isSwimming&&performance.now()>this._swimUpwardCooldownAt)this._reusableTargetVelocities.y=this.swimUpwardVelocity}let z=this._platform?.linearVelocity??this._reusablePlatformVelocity;if(this._externalVelocity.y!==0)this._magnitudeYTracker+=this._externalVelocity.y;if(this._externalVelocity.x!==0||this._externalVelocity.y!==0||this._externalVelocity.z!==0){if(this.isGrounded){let w=Math.sqrt(this._externalVelocity.x*this._externalVelocity.x+this._magnitudeYTracker*this._magnitudeYTracker+this._externalVelocity.z*this._externalVelocity.z);if(w>0.01){let _=Math.max(0,w-G0.EXTERNAL_IMPULSE_DECAY_RATE)/w;this._externalVelocity.x*=_,this._magnitudeYTracker*=_,this._externalVelocity.z*=_}else this._externalVelocity.x=0,this._externalVelocity.y=0,this._magnitudeYTracker=0,this._externalVelocity.z=0}}let M=this._reusableTargetVelocities.x+this._externalVelocity.x-K.x+z.x,N=this._reusableTargetVelocities.y+this._externalVelocity.y+z.y,q=this._reusableTargetVelocities.z+this._externalVelocity.z-K.z+z.z;if(this._externalVelocity.y=0,M!==0||N!==0||q!==0){let w=A.mass;this._reusableImpulse.x=M*w,this._reusableImpulse.y=N*w,this._reusableImpulse.z=q*w,this._internalApplyImpulse(this._reusableImpulse)}if(E!==void 0&&(this.facesCameraWhenIdle||this.isActivelyMoving)){let P=(L!==void 0?E+L:E)*0.5;A.setRotation({x:0,y:Math.sin(P),z:0,w:Math.cos(P)})}}}var Bu;((G)=>{G.LOAD="SCENE_UI.LOAD";G.SET_ATTACHED_TO_ENTITY="SCENE_UI.SET_ATTACHED_TO_ENTITY";G.SET_OFFSET="SCENE_UI.SET_OFFSET";G.SET_POSITION="SCENE_UI.SET_POSITION";G.SET_STATE="SCENE_UI.SET_STATE";G.SET_VIEW_DISTANCE="SCENE_UI.SET_VIEW_DISTANCE";G.UNLOAD="SCENE_UI.UNLOAD"})(Bu||={});class YN extends BQ{_id;_attachedToEntity;_offset;_position;_state={};_templateId;_viewDistance;_world;constructor(A){if(!!A.attachedToEntity===!!A.position)l.fatalError("Either attachedToEntity or position must be set, but not both");super();this._attachedToEntity=A.attachedToEntity,this._offset=A.offset,this._position=A.position,this._state=A.state??{},this._templateId=A.templateId,this._viewDistance=A.viewDistance}get id(){return this._id}get attachedToEntity(){return this._attachedToEntity}get isLoaded(){return this._id!==void 0}get offset(){return this._offset}get position(){return this._position}get state(){return this._state}get templateId(){return this._templateId}get viewDistance(){return this._viewDistance}get world(){return this._world}load(A){if(this.isLoaded)return;if(this._attachedToEntity&&!this._attachedToEntity.isSpawned)return l.error(`SceneUI.load(): Attached entity ${this._attachedToEntity.id} must be spawned before loading SceneUI!`);this._id=A.sceneUIManager.registerSceneUI(this),this._world=A,this.emitWithWorld(A,"SCENE_UI.LOAD",{sceneUI:this})}setAttachedToEntity(A){if(!A.isSpawned)return l.error(`SceneUI.setAttachedToEntity(): Entity ${A.id} is not spawned!`);if(this._attachedToEntity===A)return;if(this._attachedToEntity=A,this._position=void 0,this.isLoaded)this.emitWithWorld(this._world,"SCENE_UI.SET_ATTACHED_TO_ENTITY",{sceneUI:this,entity:A})}setOffset(A){if(this._offset===A)return;if(this._offset=A,this.isLoaded)this.emitWithWorld(this._world,"SCENE_UI.SET_OFFSET",{sceneUI:this,offset:A})}setPosition(A){if(this._position===A)return;if(this._attachedToEntity=void 0,this._position=A,this.isLoaded)this.emitWithWorld(this._world,"SCENE_UI.SET_POSITION",{sceneUI:this,position:A})}setState(A){if(this._state={...this._state,...A},this.isLoaded)this.emitWithWorld(this._world,"SCENE_UI.SET_STATE",{sceneUI:this,state:this._state})}setViewDistance(A){if(this._viewDistance=A,this.isLoaded)this.emitWithWorld(this._world,"SCENE_UI.SET_VIEW_DISTANCE",{sceneUI:this,viewDistance:A})}unload(){if(!this.isLoaded||!this._world)return;this._world.sceneUIManager.unregisterSceneUI(this),this.emitWithWorld(this._world,"SCENE_UI.UNLOAD",{sceneUI:this}),this._id=void 0,this._world=void 0}serialize(){return GQ.serializeSceneUI(this)}}var xIA=0.010000000000000002,fIA=Math.cos(0.026);class BX extends X0{player;nametagSceneUI;_tickWithPlayerInputEnabled=!0;constructor(A){super(A);this._positionUpdateThresholdSq=xIA,this._rotationUpdateThreshold=fIA,this.player=A.player,this.nametagSceneUI=new YN({templateId:"hytopia:nametag",attachedToEntity:this,offset:{x:0,y:1,z:0},viewDistance:15,state:{username:this.player.username,profilePictureUrl:this.player.profilePictureUrl}})}get isTickWithPlayerInputEnabled(){return this._tickWithPlayerInputEnabled}setTickWithPlayerInputEnabled(A){this._tickWithPlayerInputEnabled=A}spawn(A,Q,B){super.spawn(A,Q,B),this.nametagSceneUI.load(A),this.player.on("PLAYER.CHAT_MESSAGE_SEND",({message:Y})=>{this.nametagSceneUI.setState({chat:Y})})}tick(A){if(!this.isSpawned||!this.world)return;if(!this.controller)return l.error(`PlayerEntity.tick(): PlayerEntity "${this.name}" must have a controller.`);if(this._tickWithPlayerInputEnabled){let{input:Q,camera:B}=this.player;this.controller.tickWithPlayerInput(this,Q,B.orientation,A)}super.tick(A)}}var bIA="models/players/player.gltf",rWB={BACK:"back-anchor",HEAD:"head-anchor",LEFT_ARM:"arm-left-anchor",LEFT_FOOT:"foot-left-anchor",LEFT_HAND:"hand-left-anchor",LEFT_ITEM:"hand-left-anchor",LEFT_LEG:"leg-left-anchor",RIGHT_ARM:"arm-right-anchor",RIGHT_FOOT:"foot-right-anchor",RIGHT_HAND:"hand-right-anchor",RIGHT_ITEM:"hand-right-anchor",RIGHT_LEG:"leg-right-anchor",TORSO:"torso-anchor"};class Yu extends BX{_cosmeticHiddenSlots;constructor(A){super({controller:new G0,modelAnimations:[{name:"idle-lower",loopMode:1,play:!0},{name:"idle-upper",loopMode:1,play:!0}],modelUri:bIA,...A});this._cosmeticHiddenSlots=A.cosmeticHiddenSlots??[]}get cosmeticHiddenSlots(){return this._cosmeticHiddenSlots}spawn(A,Q,B){super.spawn(A,Q,B),this.player.cosmetics.then((Y)=>{if(!Y||!this.modelUri)return;if(!(Y.equippedItems.some((C)=>C.item.flags.includes("HIDES_HAIR"))&&!this._cosmeticHiddenSlots.includes("ALL")&&!this._cosmeticHiddenSlots.includes("HEAD"))&&Y.hairModelUri)new X0({modelUri:Y.hairModelUri,modelPreferredShape:"none",modelTextureUri:Y.hairTextureUri,parent:this,parentNodeName:"head-anchor"}).spawn(A,{x:0,y:0,z:0});if(this.modelUri===bIA)this.setModelTextureUri(Y.skinTextureUri);if(this._cosmeticHiddenSlots.includes("ALL"))return;for(let C of Y.equippedItems){let{item:X,slot:G}=C;if(this._cosmeticHiddenSlots.includes(G))continue;let W=rWB[G];if(!W||!yY.instance.modelHasNode(this.modelUri,W))continue;new X0({modelUri:X.modelUrl,modelPreferredShape:"none",parent:this,parentNodeName:W}).spawn(A,{x:0,y:0,z:0})}}).catch((Y)=>l.warning(`DefaultPlayerEntity.spawn(): Failed to get player cosmetics: ${Y}`))}}var mIA;((Y)=>{Y.TICK_REPORT="PERFORMANCE_MONITOR.TICK_REPORT";Y.SPIKE_DETECTED="PERFORMANCE_MONITOR.SPIKE_DETECTED";Y.SNAPSHOT="PERFORMANCE_MONITOR.SNAPSHOT"})(mIA||={});class O0 extends BQ{static _instance;static get instance(){if(!O0._instance)O0._instance=new O0;return O0._instance}_enabled=!1;_entityProfilingEnabled=!1;_spikeThresholdMs=50;_tickBudgetMs=16.67;_snapshotIntervalMs=5000;_historySize=3600;_startTime=0;_operations=new Map;_worldTicks=new Map;_entityCosts=new Map;_snapshotTimer=null;constructor(){super()}get isEnabled(){return this._enabled}get isEntityProfilingEnabled(){return this._enabled&&this._entityProfilingEnabled}enable(A){if(this._enabled)return;if(this._enabled=!0,this._startTime=performance.now(),this._spikeThresholdMs=A?.spikeThresholdMs??50,this._tickBudgetMs=A?.tickBudgetMs??16.67,this._snapshotIntervalMs=A?.snapshotIntervalMs??5000,this._historySize=A?.historySize??3600,this._worldTicks.clear(),this._operations.clear(),this._entityCosts.clear(),this._snapshotIntervalMs>0)this._snapshotTimer=setInterval(()=>{let Q=this.getSnapshot();this.emit("PERFORMANCE_MONITOR.SNAPSHOT",Q)},this._snapshotIntervalMs)}disable(){if(this._enabled=!1,this._entityProfilingEnabled=!1,this._snapshotTimer)clearInterval(this._snapshotTimer),this._snapshotTimer=null}enableEntityProfiling(A){if(this._entityProfilingEnabled=A,!A)this._entityCosts.clear()}measure(A,Q){if(!this._enabled)return Q();let B=performance.now(),Y=Q(),J=performance.now()-B;return this._recordOperation(A,J),Y}async measureAsync(A,Q){if(!this._enabled)return Q();let B=performance.now(),Y=await Q(),J=performance.now()-B;return this._recordOperation(A,J),Y}startTiming(A){if(!this._enabled)return()=>{};let Q=performance.now();return()=>{this._recordOperation(A,performance.now()-Q)}}beginTick(A,Q,B,Y=0){let J=this._getOrCreateWorldTickState(Y);J.currentTick=A,J.currentTickStart=performance.now(),J.currentPhases={},J.currentEntityCount=Q,J.currentPlayerCount=B}recordPhase(A,Q,B=0){let Y=this._worldTicks.get(B);if(!Y)return;Y.currentPhases[A]=Q}endTick(A=0){let Q=this._worldTicks.get(A);if(!Q)return;let B=performance.now()-Q.currentTickStart;if(Q.tickDurations[Q.tickIndex]=B,Q.tickIndex=(Q.tickIndex+1)%Q.tickDurations.length,Q.tickCount=Math.min(Q.tickCount+1,Q.tickDurations.length),Q.totalTicks++,B>Q.maxTickMs)Q.maxTickMs=B;if(B>this._tickBudgetMs)Q.ticksOverBudget++;let Y=process.memoryUsage().heapUsed/1048576,J={worldId:A,tick:Q.currentTick,durationMs:B,budgetMs:this._tickBudgetMs,budgetPercent:B/this._tickBudgetMs*100,phases:{...Q.currentPhases},entityCount:Q.currentEntityCount,playerCount:Q.currentPlayerCount,heapUsedMb:Y};if(this.emit("PERFORMANCE_MONITOR.TICK_REPORT",J),B>this._spikeThresholdMs)this.emit("PERFORMANCE_MONITOR.SPIKE_DETECTED",J)}recordEntityCost(A,Q,B){this._entityCosts.set(A,{tickMs:B,name:Q})}getEntityCosts(){return new Map(this._entityCosts)}getSnapshot(A){let Q=process.memoryUsage(),Y=(typeof A==="number"?this._getTickSamples(A):this._getAllTickSamples()).slice().sort((C,X)=>C-X),J=typeof A==="number"?this._getRollup(A):this._getGlobalRollup();return{uptimeMs:performance.now()-this._startTime,tickRate:60,avgTickMs:Y.length>0?Y.reduce((C,X)=>C+X,0)/Y.length:0,maxTickMs:J.maxTickMs,p95TickMs:Y.length>0?Y[Math.floor(Y.length*0.95)]:0,p99TickMs:Y.length>0?Y[Math.floor(Y.length*0.99)]:0,ticksOverBudget:J.ticksOverBudget,totalTicks:J.totalTicks,budgetMs:this._tickBudgetMs,operations:this._getOperationStats(),memory:{heapUsedMb:Q.heapUsed/1048576,heapTotalMb:Q.heapTotal/1048576,rssMb:Q.rss/1048576}}}resetStats(){this._worldTicks.clear(),this._operations.clear(),this._entityCosts.clear()}_recordOperation(A,Q){let B=this._operations.get(A);if(!B)B={count:0,totalMs:0,minMs:1/0,maxMs:0,lastMs:0,samples:new Float64Array(1000),sampleIndex:0,sampleCount:0},this._operations.set(A,B);if(B.count++,B.totalMs+=Q,B.lastMs=Q,QB.maxMs)B.maxMs=Q;B.samples[B.sampleIndex]=Q,B.sampleIndex=(B.sampleIndex+1)%B.samples.length,B.sampleCount=Math.min(B.sampleCount+1,B.samples.length)}_getOrCreateWorldTickState(A){let Q=Math.floor(A),B=this._worldTicks.get(Q);if(!B)B={tickDurations:new Float64Array(this._historySize),tickIndex:0,tickCount:0,ticksOverBudget:0,maxTickMs:0,totalTicks:0,currentTick:0,currentTickStart:0,currentPhases:{},currentEntityCount:0,currentPlayerCount:0},this._worldTicks.set(Q,B);return B}_getTickSamples(A){let Q=this._worldTicks.get(Math.floor(A));if(!Q||Q.tickCount===0)return[];let B=[];for(let Y=0;YJ-C),A[Q]={count:B.count,totalMs:B.totalMs,avgMs:B.count>0?B.totalMs/B.count:0,minMs:B.minMs===1/0?0:B.minMs,maxMs:B.maxMs,lastMs:B.lastMs,p50Ms:Y.length>0?Y[Math.floor(Y.length*0.5)]:0,p95Ms:Y.length>0?Y[Math.floor(Y.length*0.95)]:0,p99Ms:Y.length>0?Y[Math.floor(Y.length*0.99)]:0}}return A}}class JN{_activeEntities=new Set;_entities=new Map;_nextEntityId=1;_world;constructor(A){this._world=A}get entityCount(){return this._entities.size}get world(){return this._world}registerEntity(A){if(A.id!==void 0)l.fatalError(`EntityManager.registerEntity(): Entity ${A.name} is already assigned the id ${A.id}!`);let Q=this._nextEntityId;if(this._entities.set(Q,A),this._nextEntityId++,!A.isEnvironmental)this._activeEntities.add(A);return Q}unregisterEntity(A){if(A.id===void 0)return l.error(`EntityManager.unregisterEntity(): Entity ${A.name} is not assigned an id!`);if(this._entities.delete(A.id),!A.isEnvironmental)this._activeEntities.delete(A)}getAllEntities(){return Array.from(this._entities.values())}getAllPlayerEntities(){let A=[];return this._entities.forEach((Q)=>{if(Q instanceof BX)A.push(Q)}),A}getPlayerEntitiesByPlayer(A){let Q=[];return this._entities.forEach((B)=>{if(B instanceof BX&&B.player===A)Q.push(B)}),Q}getEntity(A){return this._entities.get(A)}getEntitiesByTag(A){let Q=[];return this._entities.forEach((B)=>{if(B.tag===A)Q.push(B)}),Q}getEntitiesByTagSubstring(A){let Q=[];return this._entities.forEach((B)=>{if(B.tag?.includes(A))Q.push(B)}),Q}getEntityChildren(A){let Q=[];return this._entities.forEach((B)=>{if(B.parent===A)Q.push(B)}),Q}tickEntities(A){let Q=O0.instance,B=Q.isEntityProfilingEnabled;for(let Y of this._activeEntities)if(B){let J=performance.now();Y.tick(A),Q.recordEntityCost(Y.id??0,Y.name,performance.now()-J)}else Y.tick(A)}checkAndEmitUpdates(){for(let A of this._activeEntities)A.checkAndEmitUpdates()}}import{gzipSync as om0}from"zlib";var Z9=qA(lHA(),1),qqY=Z9.default.v1,MqY=Z9.default.v1ToV6,zqY=Z9.default.v3,pHA=Z9.default.v4,RqY=Z9.default.v5,wqY=Z9.default.v6,jqY=Z9.default.v6ToV1,OqY=Z9.default.v7,PqY=Z9.default.NIL,TqY=Z9.default.MAX,SqY=Z9.default.version,kqY=Z9.default.validate,_qY=Z9.default.stringify,vqY=Z9.default.parse;var $u;try{$u=new TextDecoder}catch(A){}var _A,_8,t=0;var Vu=[],OZ=Vu,GN=0,A0={},DB,r6,k8=0,S5=0,hY,a6,p9=[],UB,iHA={useRecords:!1,mapsAsObjects:!0};class Gj{}var Iu=new Gj;Iu.name="MessagePack 0xC1";var r7=!1,ADA=2,Uu,Eu,Ku;try{Function("")}catch(A){ADA=1/0}class o6{constructor(A){if(A){if(A.useRecords===!1&&A.mapsAsObjects===void 0)A.mapsAsObjects=!0;if(A.sequential&&A.trusted!==!1){if(A.trusted=!0,!A.structures&&A.useRecords!=!1){if(A.structures=[],!A.maxSharedStructures)A.maxSharedStructures=0}}if(A.structures)A.structures.sharedLength=A.structures.length;else if(A.getStructures)(A.structures=[]).uninitialized=!0,A.structures.sharedLength=0;if(A.int64AsNumber)A.int64AsType="number"}Object.assign(this,A)}unpack(A,Q){if(_A)return ZDA(()=>{return Xj(),this?this.unpack(A,Q):o6.prototype.unpack.call(iHA,A,Q)});if(!A.buffer&&A.constructor===ArrayBuffer)A=typeof Buffer<"u"?Buffer.from(A):new Uint8Array(A);if(typeof Q==="object")_8=Q.end||A.length,t=Q.start||0;else t=0,_8=Q>-1?Q:A.length;GN=0,S5=0,r6=null,OZ=Vu,hY=null,_A=A;try{UB=A.dataView||(A.dataView=new DataView(A.buffer,A.byteOffset,A.byteLength))}catch(B){if(_A=null,A instanceof Uint8Array)throw B;throw Error("Source must be a Uint8Array or Buffer but was a "+(A&&typeof A=="object"?A.constructor.name:typeof A))}if(this instanceof o6){if(A0=this,this.structures)return DB=this.structures,Jj(Q);else if(!DB||DB.length>0)DB=[]}else if(A0=iHA,!DB||DB.length>0)DB=[];return Jj(Q)}unpackMultiple(A,Q){let B,Y=0;try{r7=!0;let J=A.length,C=this?this.unpack(A,J):Fj.unpack(A,J);if(Q){if(Q(C,Y,t)===!1)return;while(tB.slice(0));for(let B=0,Y=A.length;B=32)J.highByte=B-32>>5}}A.sharedLength=A.length;for(let B in Q||[])if(B>=0){let Y=A[B],J=Q[B];if(J){if(Y)(A.restoreStructures||(A.restoreStructures=[]))[B]=Y;A[B]=J}}return this.structures=A}decode(A,Q){return this.unpack(A,Q)}}function Jj(A){try{if(!A0.trusted&&!r7){let B=DB.sharedLength||0;if(B=32&&Uu){if(Q=Uu(_A,t,_8,A0),_A=null,!(A&&A.lazy)&&Q)Q=Q.toJSON();t=_8}else Q=ZY();if(hY)t=hY.postBundlePosition,hY=null;if(r7)DB.restoreStructures=null;if(t==_8){if(DB&&DB.restoreStructures)nHA();if(DB=null,_A=null,a6)a6=null}else if(t>_8)throw Error("Unexpected end of MessagePack data");else if(!r7){let B;try{B=JSON.stringify(Q,(Y,J)=>typeof J==="bigint"?`${J}n`:J).slice(0,100)}catch(Y){B="(JSON view not available "+Y+")"}throw Error("Data read, but end of buffer not reached "+B)}return Q}catch(Q){if(DB&&DB.restoreStructures)nHA();if(Xj(),Q instanceof RangeError||Q.message.startsWith("Unexpected end of buffer")||t>_8)Q.incomplete=!0;throw Q}}function nHA(){for(let A in DB.restoreStructures)DB[A]=DB.restoreStructures[A];DB.restoreStructures=null}function ZY(){let A=_A[t++];if(A<160)if(A<128)if(A<64)return A;else{let Q=DB[A&63]||A0.getStructures&&QDA()[A&63];if(Q){if(!Q.read)Q.read=Hu(Q,A&63);return Q.read()}else return A}else if(A<144)if(A-=128,A0.mapsAsObjects){let Q={};for(let B=0;B=t)return r6.slice(t-k8,(t+=Q)-k8);if(S5==0&&_8<140){let B=Q<16?Du(Q):GDA(Q);if(B!=null)return B}return Cj(Q)}else{let Q;switch(A){case 192:return null;case 193:if(hY)if(Q=ZY(),Q>0)return hY[1].slice(hY.position1,hY.position1+=Q);else return hY[0].slice(hY.position0,hY.position0-=Q);return Iu;case 194:return!1;case 195:return!0;case 196:if(Q=_A[t++],Q===void 0)throw Error("Unexpected end of buffer");return Zu(Q);case 197:return Q=UB.getUint16(t),t+=2,Zu(Q);case 198:return Q=UB.getUint32(t),t+=4,Zu(Q);case 199:return jZ(_A[t++]);case 200:return Q=UB.getUint16(t),t+=2,jZ(Q);case 201:return Q=UB.getUint32(t),t+=4,jZ(Q);case 202:if(Q=UB.getFloat32(t),A0.useFloat32>2){let B=TZ[(_A[t]&127)<<1|_A[t+1]>>7];return t+=4,(B*Q+(Q>0?0.5:-0.5)>>0)/B}return t+=4,Q;case 203:return Q=UB.getFloat64(t),t+=8,Q;case 204:return _A[t++];case 205:return Q=UB.getUint16(t),t+=2,Q;case 206:return Q=UB.getUint32(t),t+=4,Q;case 207:if(A0.int64AsType==="number")Q=UB.getUint32(t)*4294967296,Q+=UB.getUint32(t+4);else if(A0.int64AsType==="string")Q=UB.getBigUint64(t).toString();else if(A0.int64AsType==="auto"){if(Q=UB.getBigUint64(t),Q<=BigInt(2)<=BigInt(-2)<=t)return r6.slice(t-k8,(t+=Q)-k8);return BDA(Q);case 218:if(Q=UB.getUint16(t),t+=2,S5>=t)return r6.slice(t-k8,(t+=Q)-k8);return YDA(Q);case 219:if(Q=UB.getUint32(t),t+=4,S5>=t)return r6.slice(t-k8,(t+=Q)-k8);return JDA(Q);case 220:return Q=UB.getUint16(t),t+=2,rHA(Q);case 221:return Q=UB.getUint32(t),t+=4,rHA(Q);case 222:return Q=UB.getUint16(t),t+=2,aHA(Q);case 223:return Q=UB.getUint32(t),t+=4,aHA(Q);default:if(A>=224)return A-256;if(A===void 0){let B=Error("Unexpected end of MessagePack data");throw B.incomplete=!0,B}throw Error("Unknown MessagePack token "+A)}}}var RZB=/^[a-zA-Z_$][a-zA-Z\d_$]*$/;function Hu(A,Q){function B(){if(B.count++>ADA){let J=A.read=Function("r","return function(){return "+(A0.freezeData?"Object.freeze":"")+"({"+A.map((C)=>C==="__proto__"?"__proto_:r()":RZB.test(C)?C+":r()":"["+JSON.stringify(C)+"]:r()").join(",")+"})}")(ZY);if(A.highByte===0)A.read=sHA(Q,A.read);return J()}let Y={};for(let J=0,C=A.length;J{return function(){let B=_A[t++];if(B===0)return Q();let Y=A<32?-(A+(B<<5)):A+(B<<5),J=DB[Y]||QDA()[Y];if(!J)throw Error("Record id is not defined for "+Y);if(!J.read)J.read=Hu(J,A);return J.read()}};function QDA(){let A=ZDA(()=>{return _A=null,A0.getStructures()});return DB=A0._mergeStructures(A,DB)}var Cj=PZ,BDA=PZ,YDA=PZ,JDA=PZ,Wj=!1;function CDA(A){Wj=!0,Cj=Q(1),BDA=Q(2),YDA=Q(3),JDA=Q(5);function Q(B){return function(J){let C=OZ[GN++];if(C==null){if(hY)return PZ(J);let G=_A.byteOffset,W=A(t-B+G,_8+G,_A.buffer);if(typeof W=="string")C=W,OZ=Vu;else if(OZ=W,GN=1,S5=1,C=OZ[0],C===void 0)throw Error("Unexpected end of buffer")}let X=C.length;if(X<=J)return t+=J,C;return r6=C,k8=t,S5=t+X,t+=J,C.slice(0,J)}}}function PZ(A){let Q;if(A<16){if(Q=Du(A))return Q}if(A>64&&$u)return $u.decode(_A.subarray(t,t+=A));let B=t+A,Y=[];Q="";while(t65535)W-=65536,Y.push(W>>>10&1023|55296),W=56320|W&1023;Y.push(W)}else Y.push(J);if(Y.length>=4096)Q+=sY.apply(String,Y),Y.length=0}if(Y.length>0)Q+=sY.apply(String,Y);return Q}function XDA(A,Q,B){let Y=_A;_A=A,t=Q;try{return PZ(B)}finally{_A=Y}}function rHA(A){let Q=Array(A);for(let B=0;B0){t=Q;return}B[Y]=J}return sY.apply(String,B)}function Du(A){if(A<4)if(A<2)if(A===0)return"";else{let Q=_A[t++];if((Q&128)>1){t-=1;return}return sY(Q)}else{let Q=_A[t++],B=_A[t++];if((Q&128)>0||(B&128)>0){t-=2;return}if(A<3)return sY(Q,B);let Y=_A[t++];if((Y&128)>0){t-=3;return}return sY(Q,B,Y)}else{let Q=_A[t++],B=_A[t++],Y=_A[t++],J=_A[t++];if((Q&128)>0||(B&128)>0||(Y&128)>0||(J&128)>0){t-=4;return}if(A<6)if(A===4)return sY(Q,B,Y,J);else{let C=_A[t++];if((C&128)>0){t-=5;return}return sY(Q,B,Y,J,C)}else if(A<8){let C=_A[t++],X=_A[t++];if((C&128)>0||(X&128)>0){t-=6;return}if(A<7)return sY(Q,B,Y,J,C,X);let G=_A[t++];if((G&128)>0){t-=7;return}return sY(Q,B,Y,J,C,X,G)}else{let C=_A[t++],X=_A[t++],G=_A[t++],W=_A[t++];if((C&128)>0||(X&128)>0||(G&128)>0||(W&128)>0){t-=8;return}if(A<10)if(A===8)return sY(Q,B,Y,J,C,X,G,W);else{let F=_A[t++];if((F&128)>0){t-=9;return}return sY(Q,B,Y,J,C,X,G,W,F)}else if(A<12){let F=_A[t++],Z=_A[t++];if((F&128)>0||(Z&128)>0){t-=10;return}if(A<11)return sY(Q,B,Y,J,C,X,G,W,F,Z);let U=_A[t++];if((U&128)>0){t-=11;return}return sY(Q,B,Y,J,C,X,G,W,F,Z,U)}else{let F=_A[t++],Z=_A[t++],U=_A[t++],$=_A[t++];if((F&128)>0||(Z&128)>0||(U&128)>0||($&128)>0){t-=12;return}if(A<14)if(A===12)return sY(Q,B,Y,J,C,X,G,W,F,Z,U,$);else{let E=_A[t++];if((E&128)>0){t-=13;return}return sY(Q,B,Y,J,C,X,G,W,F,Z,U,$,E)}else{let E=_A[t++],K=_A[t++];if((E&128)>0||(K&128)>0){t-=14;return}if(A<15)return sY(Q,B,Y,J,C,X,G,W,F,Z,U,$,E,K);let I=_A[t++];if((I&128)>0){t-=15;return}return sY(Q,B,Y,J,C,X,G,W,F,Z,U,$,E,K,I)}}}}}function oHA(){let A=_A[t++],Q;if(A<192)Q=A-160;else switch(A){case 217:Q=_A[t++];break;case 218:Q=UB.getUint16(t),t+=2;break;case 219:Q=UB.getUint32(t),t+=4;break;default:throw Error("Expected string")}return PZ(Q)}function Zu(A){return A0.copyBuffers?Uint8Array.prototype.slice.call(_A,t,t+=A):_A.subarray(t,t+=A)}function jZ(A){let Q=_A[t++];if(p9[Q]){let B;return p9[Q](_A.subarray(t,B=t+=A),(Y)=>{t=Y;try{return ZY()}finally{t=B}})}else throw Error("Unknown extension type "+Q)}var tHA=Array(4096);function WDA(){let A=_A[t++];if(A>=160&&A<192){if(A=A-160,S5>=t)return r6.slice(t-k8,(t+=A)-k8);else if(!(S5==0&&_8<180))return Cj(A)}else return t--,FDA(ZY());let Q=(A<<5^(A>1?UB.getUint16(t):A>0?_A[t]:0))&4095,B=tHA[Q],Y=t,J=t+A-3,C,X=0;if(B&&B.bytes==A){while(Y["string","number","boolean","bigint"].includes(typeof Q)))return A.flat().toString();throw Error(`Invalid property type for record: ${typeof A}`)}var eHA=(A,Q)=>{let B=ZY().map(FDA),Y=A;if(Q!==void 0)A=A<32?-((Q<<5)+A):(Q<<5)+A,B.highByte=Q;let J=DB[A];if(J&&(J.isShared||r7))(DB.restoreStructures||(DB.restoreStructures=[]))[A]=J;return DB[A]=B,B.read=Hu(B,Y),B.read()};p9[0]=()=>{};p9[0].noBuffer=!0;p9[66]=(A)=>{let Q=A.length,B=BigInt(A[0]&128?A[0]-256:A[0]);for(let Y=1;Y{let A=ZY();return(wZB[A[0]]||Error)(A[1],{cause:A[2]})};p9[105]=(A)=>{if(A0.structuredClone===!1)throw Error("Structured clone extension is disabled");let Q=UB.getUint32(t-4);if(!a6)a6=new Map;let B=_A[t],Y;if(B>=144&&B<160||B==220||B==221)Y=[];else if(B>=128&&B<144||B==222||B==223)Y=new Map;else if((B>=199&&B<=201||B>=212&&B<=216)&&_A[t+1]===115)Y=new Set;else Y={};let J={target:Y};a6.set(Q,J);let C=ZY();if(!J.used)return J.target=C;else Object.assign(Y,C);if(Y instanceof Map)for(let[X,G]of C.entries())Y.set(X,G);if(Y instanceof Set)for(let X of Array.from(C))Y.add(X);return Y};p9[112]=(A)=>{if(A0.structuredClone===!1)throw Error("Structured clone extension is disabled");let Q=UB.getUint32(t-4),B=a6.get(Q);return B.used=!0,B.target};p9[115]=()=>new Set(ZY());var Nu=["Int8","Uint8","Uint8Clamped","Int16","Uint16","Int32","Uint32","Float32","Float64","BigInt64","BigUint64"].map((A)=>A+"Array"),jZB=typeof globalThis==="object"?globalThis:window;p9[116]=(A)=>{let Q=A[0],B=Uint8Array.prototype.slice.call(A,1).buffer,Y=Nu[Q];if(!Y){if(Q===16)return B;if(Q===17)return new DataView(B);throw Error("Could not find typed array for code "+Q)}return new jZB[Y](B)};p9[120]=()=>{let A=ZY();return new RegExp(A[0],A[1])};var OZB=[];p9[98]=(A)=>{let Q=(A[0]<<24)+(A[1]<<16)+(A[2]<<8)+A[3],B=t;return t+=Q-A.length,hY=OZB,hY=[oHA(),oHA()],hY.position0=0,hY.position1=0,hY.postBundlePosition=t,t=B,ZY()};p9[255]=(A)=>{if(A.length==4)return new Date((A[0]*16777216+(A[1]<<16)+(A[2]<<8)+A[3])*1000);else if(A.length==8)return new Date(((A[0]<<22)+(A[1]<<14)+(A[2]<<6)+(A[3]>>2))/1e6+((A[3]&3)*4294967296+A[4]*16777216+(A[5]<<16)+(A[6]<<8)+A[7])*1000);else if(A.length==12)return new Date(((A[0]<<24)+(A[1]<<16)+(A[2]<<8)+A[3])/1e6+((A[4]&128?-281474976710656:0)+A[6]*1099511627776+A[7]*4294967296+A[8]*16777216+(A[9]<<16)+(A[10]<<8)+A[11])*1000);else return new Date("invalid")};function ZDA(A){if(Ku)Ku();let Q=_8,B=t,Y=GN,J=k8,C=S5,X=r6,G=OZ,W=a6,F=hY,Z=new Uint8Array(_A.slice(0,_8)),U=DB,$=DB.slice(0,DB.length),E=A0,K=r7,I=A();return _8=Q,t=B,GN=Y,k8=J,S5=C,r6=X,OZ=G,a6=W,hY=F,_A=Z,r7=K,DB=U,DB.splice(0,DB.length,...$),A0=E,UB=new DataView(_A.buffer,_A.byteOffset,_A.byteLength),I}function Xj(){_A=null,a6=null,DB=null}var TZ=Array(147);for(let A=0;A<256;A++)TZ[A]=+("1e"+Math.floor(45.15-A*0.30103));var Fj=new o6({useRecords:!1}),PZB=Fj.unpack,TZB=Fj.unpackMultiple,SZB=Fj.unpack,WN={NEVER:0,ALWAYS:1,DECIMAL_ROUND:3,DECIMAL_FIT:4},kZB=new Float32Array(1),gqY=new Uint8Array(kZB.buffer,0,4);function $DA(A,Q,B){Uu=A,Eu=Q,Ku=B}var $j;try{$j=new TextEncoder}catch(A){}var Mu,KDA,ZN=typeof Buffer<"u",Zj=ZN?function(A){return Buffer.allocUnsafeSlow(A)}:Uint8Array,VDA=ZN?Buffer:Uint8Array,UDA=ZN?4294967296:2144337920,$A,FN,W0,BA=0,$9,x0=null,IDA,_ZB=21760,vZB=/[\u0080-\uFFFF]/,YX=Symbol("record-id");class SZ extends o6{constructor(A){super(A);this.offset=0;let Q,B,Y,J,C,X=VDA.prototype.utf8Write?function(T,S){return $A.utf8Write(T,S,$A.byteLength-S)}:$j&&$j.encodeInto?function(T,S){return $j.encodeInto(T,$A.subarray(S)).written}:!1,G=this;if(!A)A={};let W=A&&A.sequential,F=A.structures||A.saveStructures,Z=A.maxSharedStructures;if(Z==null)Z=F?32:0;if(Z>8160)throw Error("Maximum maxSharedStructure is 8160");if(A.structuredClone&&A.moreTypes==null)this.moreTypes=!0;let U=A.maxOwnStructures;if(U==null)U=F?32:64;if(!this.structures&&A.useRecords!=!1)this.structures=[];let $=Z>32||U+Z>64,E=Z+64,K=Z+U+64;if(K>8256)throw Error("Maximum maxSharedStructure + maxOwnStructure is 8192");let I=[],V=0,H=0;this.pack=this.encode=function(T,S){if(!$A)$A=new Zj(8192),W0=$A.dataView||($A.dataView=new DataView($A.buffer,0,8192)),BA=0;if($9=$A.length-10,$9-BA<2048)$A=new Zj($A.length),W0=$A.dataView||($A.dataView=new DataView($A.buffer,0,$A.length)),$9=$A.length-10,BA=0;else BA=BA+7&2147483640;if(B=BA,S&mZB)BA+=S&255;if(C=G.structuredClone?new Map:null,G.bundleStrings&&typeof T!=="string")x0=[],x0.size=1/0;else x0=null;if(J=G.structures,J){if(J.uninitialized)J=G._mergeStructures(G.getStructures());let y=J.sharedLength||0;if(y>Z)throw Error("Shared structures is larger than maximum shared structures, try increasing maxSharedStructures to "+J.sharedLength);if(!J.transitions){J.transitions=Object.create(null);for(let h=0;hi.offset>p.offset?1:-1),g=h.length,m=-1;while(y&&g>0){let i=h[--g].offset+B;if(iy.position+B){if(m>=0)m+=6}else{if(m>=0)W0.setUint32(y.position+B,W0.getUint32(y.position+B)+m),m=-1;y=y.previous,g++}}if(m>=0&&y)W0.setUint32(y.position+B,W0.getUint32(y.position+B)+m);if(BA+=h.length*6,BA>$9)P(BA);G.offset=BA;let n=gZB($A.subarray(B,BA),h);return C=null,n}if(G.offset=BA,S&fZB)return $A.start=B,$A.end=BA,$A;return $A.subarray(B,BA)}catch(y){throw v=y,y}finally{if(J){if(D(),Y&&G.saveStructures){let y=J.sharedLength||0,h=$A.subarray(B,BA),g=HDA(J,G);if(!v){if(G.saveStructures(g,g.isCompatible)===!1)return G.pack(T,S);if(G.lastNamedStructuresLength=y,$A.length>1073741824)$A=null;return h}}}if($A.length>1073741824)$A=null;if(S&bZB)BA=B}};let D=()=>{if(H<10)H++;let T=J.sharedLength||0;if(J.length>T&&!W)J.length=T;if(V>1e4){if(J.transitions=null,H=0,V=0,I.length>0)I=[]}else if(I.length>0&&!W){for(let S=0,v=I.length;S{var S=T.length;if(S<16)$A[BA++]=144|S;else if(S<65536)$A[BA++]=220,$A[BA++]=S>>8,$A[BA++]=S&255;else $A[BA++]=221,W0.setUint32(BA,S),BA+=4;for(let v=0;v{if(BA>$9)$A=P(BA);var S=typeof T,v;if(S==="string"){let y=T.length;if(x0&&y>=4&&y<4096){if((x0.size+=y)>_ZB){let n,i=(x0[0]?x0[0].length*3+x0[1].length:0)+10;if(BA+i>$9)$A=P(BA+i);let p;if(x0.position)p=x0,$A[BA]=200,BA+=3,$A[BA++]=98,n=BA-B,BA+=4,EDA(B,z,0),W0.setUint16(n+B-3,BA-B-n);else $A[BA++]=214,$A[BA++]=98,n=BA-B,BA+=4;x0=["",""],x0.previous=p,x0.size=0,x0.position=n}let m=vZB.test(T);x0[m?0:1]+=T,$A[BA++]=193,z(m?-y:y);return}let h;if(y<32)h=1;else if(y<256)h=2;else if(y<65536)h=3;else h=5;let g=y*3;if(BA+g>$9)$A=P(BA+g);if(y<64||!X){let m,n,i,p=BA+h;for(m=0;m>6|192,$A[p++]=n&63|128;else if((n&64512)===55296&&((i=T.charCodeAt(m+1))&64512)===56320)n=65536+((n&1023)<<10)+(i&1023),m++,$A[p++]=n>>18|240,$A[p++]=n>>12&63|128,$A[p++]=n>>6&63|128,$A[p++]=n&63|128;else $A[p++]=n>>12|224,$A[p++]=n>>6&63|128,$A[p++]=n&63|128;v=p-BA-h}else v=X(T,BA+h);if(v<32)$A[BA++]=160|v;else if(v<256){if(h<2)$A.copyWithin(BA+2,BA+1,BA+1+v);$A[BA++]=217,$A[BA++]=v}else if(v<65536){if(h<3)$A.copyWithin(BA+3,BA+2,BA+2+v);$A[BA++]=218,$A[BA++]=v>>8,$A[BA++]=v&255}else{if(h<5)$A.copyWithin(BA+5,BA+3,BA+3+v);$A[BA++]=219,W0.setUint32(BA,v),BA+=4}BA+=v}else if(S==="number")if(T>>>0===T)if(T<32||T<128&&this.useRecords===!1||T<64&&!this.randomAccessStructure)$A[BA++]=T;else if(T<256)$A[BA++]=204,$A[BA++]=T;else if(T<65536)$A[BA++]=205,$A[BA++]=T>>8,$A[BA++]=T&255;else $A[BA++]=206,W0.setUint32(BA,T),BA+=4;else if(T>>0===T)if(T>=-32)$A[BA++]=256+T;else if(T>=-128)$A[BA++]=208,$A[BA++]=T+256;else if(T>=-32768)$A[BA++]=209,W0.setInt16(BA,T),BA+=2;else $A[BA++]=210,W0.setInt32(BA,T),BA+=4;else{let y;if((y=this.useFloat32)>0&&T<4294967296&&T>=-2147483648){$A[BA++]=202,W0.setFloat32(BA,T);let h;if(y<4||(h=T*TZ[($A[BA]&127)<<1|$A[BA+1]>>7])>>0===h){BA+=4;return}else BA--}$A[BA++]=203,W0.setFloat64(BA,T),BA+=8}else if(S==="object"||S==="function")if(!T)$A[BA++]=192;else{if(C){let h=C.get(T);if(h){if(!h.id){let g=C.idsToInsert||(C.idsToInsert=[]);h.id=g.push(h)}$A[BA++]=214,$A[BA++]=112,W0.setUint32(BA,h.id),BA+=4;return}else C.set(T,{offset:BA-B})}let y=T.constructor;if(y===Object)w(T);else if(y===Array)L(T);else if(y===Map)if(this.mapAsEmptyObject)$A[BA++]=128;else{if(v=T.size,v<16)$A[BA++]=128|v;else if(v<65536)$A[BA++]=222,$A[BA++]=v>>8,$A[BA++]=v&255;else $A[BA++]=223,W0.setUint32(BA,v),BA+=4;for(let[h,g]of T)z(h),z(g)}else{for(let h=0,g=Mu.length;h{if($A=i,i=null,BA+=b,BA>$9)P(BA);return{target:$A,targetView:W0,position:BA-b}},z)}finally{if(i)$A=i,W0=p,BA=d,$9=$A.length-10}if(x){if(x.length+BA>$9)P(x.length+BA);BA=yZB(x,$A,BA,n.type)}return}}if(Array.isArray(T))L(T);else{if(T.toJSON){let h=T.toJSON();if(h!==T)return z(h)}if(S==="function")return z(this.writeFunction&&this.writeFunction(T));w(T)}}}else if(S==="boolean")$A[BA++]=T?195:194;else if(S==="bigint"){if(T<9223372036854776000&&T>=-9223372036854776000)$A[BA++]=211,W0.setBigInt64(BA,T);else if(T<18446744073709552000&&T>0)$A[BA++]=207,W0.setBigUint64(BA,T);else if(this.largeBigIntToFloat)$A[BA++]=203,W0.setFloat64(BA,Number(T));else if(this.largeBigIntToString)return z(T.toString());else if((this.useBigIntExtension||this.moreTypes)&&T-(BigInt(2)**BigInt(1023))){$A[BA++]=199,BA++,$A[BA++]=66;let y=[],h;do{let g=T&BigInt(255);h=(g&BigInt(128))===(T>=BigInt(8)}while(!((T===BigInt(0)||T===BigInt(-1))&&h));$A[BA-2]=y.length;for(let g=y.length;g>0;)$A[BA++]=Number(y[--g]);return}else throw RangeError(T+" was too large to fit in MessagePack 64-bit integer format, use useBigIntExtension, or set largeBigIntToFloat to convert to float-64, or set largeBigIntToString to convert to string");BA+=8}else if(S==="undefined")if(this.encodeUndefinedAsNil)$A[BA++]=192;else $A[BA++]=212,$A[BA++]=0,$A[BA++]=0;else throw Error("Unknown type: "+S)},M=this.variableMapSize||this.coercibleKeyAsNumber||this.skipValues?(T)=>{let S;if(this.skipValues){S=[];for(let h in T)if((typeof T.hasOwnProperty!=="function"||T.hasOwnProperty(h))&&!this.skipValues.includes(T[h]))S.push(h)}else S=Object.keys(T);let v=S.length;if(v<16)$A[BA++]=128|v;else if(v<65536)$A[BA++]=222,$A[BA++]=v>>8,$A[BA++]=v&255;else $A[BA++]=223,W0.setUint32(BA,v),BA+=4;let y;if(this.coercibleKeyAsNumber)for(let h=0;h{$A[BA++]=222;let S=BA-B;BA+=2;let v=0;for(let y in T)if(typeof T.hasOwnProperty!=="function"||T.hasOwnProperty(y))z(y),z(T[y]),v++;if(v>65535)throw Error('Object is too large to serialize with fast 16-bit map size, use the "variableMapSize" option to serialize this object');$A[S+++B]=v>>8,$A[S+B]=v&255},N=this.useRecords===!1?M:A.progressiveRecords&&!$?(T)=>{let S,v=J.transitions||(J.transitions=Object.create(null)),y=BA++-B,h;for(let g in T)if(typeof T.hasOwnProperty!=="function"||T.hasOwnProperty(g)){if(S=v[g],S)v=S;else{let m=Object.keys(T),n=v;v=J.transitions;let i=0;for(let p=0,d=m.length;p{let S,v=J.transitions||(J.transitions=Object.create(null)),y=0;for(let g in T)if(typeof T.hasOwnProperty!=="function"||T.hasOwnProperty(g)){if(S=v[g],!S)S=v[g]=Object.create(null),y++;v=S}let h=v[YX];if(h)if(h>=96&&$)$A[BA++]=((h-=96)&31)+96,$A[BA++]=h>>5;else $A[BA++]=h;else _(v,v.__keys__||Object.keys(T),y);for(let g in T)if(typeof T.hasOwnProperty!=="function"||T.hasOwnProperty(g))z(T[g])},q=typeof this.useRecords=="function"&&this.useRecords,w=q?(T)=>{q(T)?N(T):M(T)}:N,P=(T)=>{let S;if(T>16777216){if(T-B>UDA)throw Error("Packed buffer would be larger than maximum buffer size");S=Math.min(UDA,Math.round(Math.max((T-B)*(T>67108864?1.25:2),4194304)/4096)*4096)}else S=(Math.max(T-B<<2,$A.length-1)>>12)+1<<12;let v=new Zj(S);if(W0=v.dataView||(v.dataView=new DataView(v.buffer,0,S)),T=Math.min(T,$A.length),$A.copy)$A.copy(v,0,B,T);else v.set($A.slice(B,T));return BA-=B,B=0,$9=v.length-10,$A=v},_=(T,S,v)=>{let y=J.nextId;if(!y)y=64;if(y=K)y=E;J.nextId=y+1}let h=S.highByte=y>=96&&$?y-96>>5:-1;if(T[YX]=y,T.__keys__=S,J[y-64]=S,y=0)$A[BA++]=(y&31)+96,$A[BA++]=h;else $A[BA++]=y;else{if(h>=0)$A[BA++]=213,$A[BA++]=114,$A[BA++]=(y&31)+96,$A[BA++]=h;else $A[BA++]=212,$A[BA++]=114,$A[BA++]=y;if(v)V+=H*v;if(I.length>=U)I.shift()[YX]=0;I.push(T),z(S)}},j=(T,S,v,y)=>{let h=$A,g=BA,m=$9,n=B;if($A=FN,BA=0,B=0,!$A)FN=$A=new Zj(8192);$9=$A.length-10,_(T,S,y),FN=$A;let i=BA;if($A=h,BA=g,$9=m,B=n,i>1){let p=BA+i-1;if(p>$9)P(p);let d=v+B;$A.copyWithin(d+i,d+1,BA),$A.set(FN.slice(0,i),d),BA=p}else $A[v+B]=FN[0]},k=(T)=>{let S=IDA(T,$A,B,BA,J,P,(v,y,h)=>{if(h)return Y=!0;BA=y;let g=$A;if(z(v),D(),g!==$A)return{position:BA,targetView:W0,target:$A};return BA},this);if(S===0)return w(T);BA=S}}useBuffer(A){$A=A,$A.dataView||($A.dataView=new DataView($A.buffer,$A.byteOffset,$A.byteLength)),BA=0}set position(A){BA=A}get position(){return BA}clearSharedData(){if(this.structures)this.structures=[];if(this.typedStructs)this.typedStructs=[]}}KDA=[Date,Set,Error,RegExp,ArrayBuffer,Object.getPrototypeOf(Uint8Array.prototype).constructor,DataView,Gj];Mu=[{pack(A,Q,B){let Y=A.getTime()/1000;if((this.useTimestamp32||A.getMilliseconds()===0)&&Y>=0&&Y<4294967296){let{target:J,targetView:C,position:X}=Q(6);J[X++]=214,J[X++]=255,C.setUint32(X,Y)}else if(Y>0&&Y<4294967296){let{target:J,targetView:C,position:X}=Q(10);J[X++]=215,J[X++]=255,C.setUint32(X,A.getMilliseconds()*4000000+(Y/1000/4294967296>>0)),C.setUint32(X+4,Y)}else if(isNaN(Y)){if(this.onInvalidDate)return Q(0),B(this.onInvalidDate());let{target:J,targetView:C,position:X}=Q(3);J[X++]=212,J[X++]=255,J[X++]=255}else{let{target:J,targetView:C,position:X}=Q(15);J[X++]=199,J[X++]=12,J[X++]=255,C.setUint32(X,A.getMilliseconds()*1e6),C.setBigInt64(X+4,BigInt(Math.floor(Y)))}}},{pack(A,Q,B){if(this.setAsEmptyObject)return Q(0),B({});let Y=Array.from(A),{target:J,position:C}=Q(this.moreTypes?3:0);if(this.moreTypes)J[C++]=212,J[C++]=115,J[C++]=0;B(Y)}},{pack(A,Q,B){let{target:Y,position:J}=Q(this.moreTypes?3:0);if(this.moreTypes)Y[J++]=212,Y[J++]=101,Y[J++]=0;B([A.name,A.message,A.cause])}},{pack(A,Q,B){let{target:Y,position:J}=Q(this.moreTypes?3:0);if(this.moreTypes)Y[J++]=212,Y[J++]=120,Y[J++]=0;B([A.source,A.flags])}},{pack(A,Q){if(this.moreTypes)Lu(A,16,Q);else qu(ZN?Buffer.from(A):new Uint8Array(A),Q)}},{pack(A,Q){let B=A.constructor;if(B!==VDA&&this.moreTypes)Lu(A,Nu.indexOf(B.name),Q);else qu(A,Q)}},{pack(A,Q){if(this.moreTypes)Lu(A,17,Q);else qu(ZN?Buffer.from(A):new Uint8Array(A),Q)}},{pack(A,Q){let{target:B,position:Y}=Q(1);B[Y]=193}}];function Lu(A,Q,B,Y){let J=A.byteLength;if(J+1<256){var{target:C,position:X}=B(4+J);C[X++]=199,C[X++]=J+1}else if(J+1<65536){var{target:C,position:X}=B(5+J);C[X++]=200,C[X++]=J+1>>8,C[X++]=J+1&255}else{var{target:C,position:X,targetView:G}=B(7+J);C[X++]=201,G.setUint32(X,J+1),X+=4}if(C[X++]=116,C[X++]=Q,!A.buffer)A=new Uint8Array(A);C.set(new Uint8Array(A.buffer,A.byteOffset,A.byteLength),X)}function qu(A,Q){let B=A.byteLength;var Y,J;if(B<256){var{target:Y,position:J}=Q(B+2);Y[J++]=196,Y[J++]=B}else if(B<65536){var{target:Y,position:J}=Q(B+3);Y[J++]=197,Y[J++]=B>>8,Y[J++]=B&255}else{var{target:Y,position:J,targetView:C}=Q(B+5);Y[J++]=198,C.setUint32(J,B),J+=4}Y.set(A,J)}function yZB(A,Q,B,Y){let J=A.length;switch(J){case 1:Q[B++]=212;break;case 2:Q[B++]=213;break;case 4:Q[B++]=214;break;case 8:Q[B++]=215;break;case 16:Q[B++]=216;break;default:if(J<256)Q[B++]=199,Q[B++]=J;else if(J<65536)Q[B++]=200,Q[B++]=J>>8,Q[B++]=J&255;else Q[B++]=201,Q[B++]=J>>24,Q[B++]=J>>16&255,Q[B++]=J>>8&255,Q[B++]=J&255}return Q[B++]=Y,Q.set(A,B),B+=J,B}function gZB(A,Q){let B,Y=Q.length*6,J=A.length-Y;while(B=Q.pop()){let{offset:C,id:X}=B;A.copyWithin(C+Y,C,J),Y-=6;let G=C+Y;A[G++]=214,A[G++]=105,A[G++]=X>>24,A[G++]=X>>16&255,A[G++]=X>>8&255,A[G++]=X&255,J=C}return A}function EDA(A,Q,B){if(x0.length>0){W0.setUint32(x0.position+A,BA+B-x0.position-A),x0.stringsPosition=BA-A;let Y=x0;x0=null,Q(Y[0]),Q(Y[1])}}function HDA(A,Q){return A.isCompatible=(B)=>{let Y=!B||(Q.lastNamedStructuresLength||0)===B.length;if(!Y)Q._mergeStructures(B);return Y},A}function DDA(A,Q){IDA=A,HDA=Q}var NDA=new SZ({useRecords:!1}),hZB=NDA.pack,xZB=NDA.pack;var fZB=512,bZB=1024,mZB=2048;var zu=3,_E=0,$N=2,Uj=1,wu=16,qDA=["num","object","string","ascii"];qDA[wu]="date";var dZB=[!1,!0,!0,!1,!1,!0,!0,!1],MDA;try{Function(""),MDA=!0}catch(A){}var kZ,cZB=typeof Buffer<"u",Ej,JX;try{Ej=new TextEncoder}catch(A){}var lZB=cZB?function(A,Q,B){return A.utf8Write(Q,B,A.byteLength-B)}:Ej&&Ej.encodeInto?function(A,Q,B){return Ej.encodeInto(Q,A.subarray(B)).written}:!1,lqY=Symbol("type"),pqY=Symbol("parent");DDA(zDA,rZB);function zDA(A,Q,B,Y,J,C,X,G){let W=G.typedStructs||(G.typedStructs=[]),F=Q.dataView,Z=(W.lastStringStart||100)+Y,U=Q.length-10,$=Y;if(Y>U)Q=C(Y),F=Q.dataView,Y-=B,$-=B,Z-=B,B=0,U=Q.length-10;let E,K=Z,I=W.transitions||(W.transitions=Object.create(null)),V=W.nextId||W.length,H=V<15?1:V<240?2:V<61440?3:V<15728640?4:0;if(H===0)return 0;Y+=H;let D=[],L,z=0;for(let N in A){let q=A[N],w=I[N];if(!w)I[N]=w={key:N,parent:I,enumerationOffset:0,ascii0:null,ascii8:null,num8:null,string16:null,object16:null,num32:null,float64:null,date64:null};if(Y>U)Q=C(Y),F=Q.dataView,Y-=B,$-=B,Z-=B,K-=B,B=0,U=Q.length-10;switch(typeof q){case"number":let P=q;if(V<200||!w.num64){if(P>>0===P&&P<536870912&&P>-520093696){if(P<246&&P>=0&&(w.num8&&!(V>200&&w.num32)||P<32&&!w.num32))I=w.num8||i9(w,_E,1),Q[Y++]=P;else I=w.num32||i9(w,_E,4),F.setUint32(Y,P,!0),Y+=4;break}else if(P<4294967296&&P>=-2147483648){if(F.setFloat32(Y,P,!0),dZB[Q[Y+3]>>>5]){let T;if((T=P*TZ[(Q[Y+3]&127)<<1|Q[Y+2]>>7])>>0===T){I=w.num32||i9(w,_E,4),Y+=4;break}}}}I=w.num64||i9(w,_E,8),F.setFloat64(Y,P,!0),Y+=8;break;case"string":let _=q.length;if(E=K-Z,(_<<2)+K>U)Q=C((_<<2)+K),F=Q.dataView,Y-=B,$-=B,Z-=B,K-=B,B=0,U=Q.length-10;if(_>65280+E>>2){D.push(N,q,Y-$);break}let j,k=K;if(_<64){let T,S,v;for(T=0;T<_;T++)if(S=q.charCodeAt(T),S<128)Q[K++]=S;else if(S<2048)j=!0,Q[K++]=S>>6|192,Q[K++]=S&63|128;else if((S&64512)===55296&&((v=q.charCodeAt(T+1))&64512)===56320)j=!0,S=65536+((S&1023)<<10)+(v&1023),T++,Q[K++]=S>>18|240,Q[K++]=S>>12&63|128,Q[K++]=S>>6&63|128,Q[K++]=S&63|128;else j=!0,Q[K++]=S>>12|224,Q[K++]=S>>6&63|128,Q[K++]=S&63|128}else K+=lZB(Q,q,K),j=K-k>_;if(E<160||E<246&&(w.ascii8||w.string8)){if(j){if(!(I=w.string8))if(W.length>10&&(I=w.ascii8))I.__type=$N,w.ascii8=null,w.string8=I,X(null,0,!0);else I=i9(w,$N,1)}else if(E===0&&!L){L=!0,I=w.ascii0||i9(w,zu,0);break}else if(!(I=w.ascii8)&&!(W.length>10&&(I=w.string8)))I=i9(w,zu,1);Q[Y++]=E}else I=w.string16||i9(w,$N,2),F.setUint16(Y,E,!0),Y+=2;break;case"object":if(q){if(q.constructor===Date)I=w.date64||i9(w,wu,8),F.setFloat64(Y,q.getTime(),!0),Y+=8;else D.push(N,q,z);break}else if(w=LDA(w,Y,F,-10),w)I=w,Y=kZ;else D.push(N,q,z);break;case"boolean":I=w.num8||w.ascii8||i9(w,_E,1),Q[Y++]=q?249:248;break;case"undefined":if(w=LDA(w,Y,F,-9),w)I=w,Y=kZ;else D.push(N,q,z);break;default:D.push(N,q,z)}z++}for(let N=0,q=D.length;N=16)return 0;Q[$]=M+32;break;case 2:if(M>=256)return 0;Q[$]=56,Q[$+1]=M;break;case 3:if(M>=65536)return 0;Q[$]=57,F.setUint16($+1,M,!0);break;case 4:if(M>=16777216)return 0;F.setUint32($,(M<<8)+58,!0);break}if(YZ){if(Z===K)return Y;return W.lastStringStart=Y-$,zDA(A,Q,B,$,J,C,X,G)}return K}function LDA(A,Q,B,Y){let J;if(J=A.ascii8||A.num8)return B.setInt8(Q,Y,!0),kZ=Q+1,J;if(J=A.string16||A.object16)return B.setInt16(Q,Y,!0),kZ=Q+2,J;if(J=A.num32)return B.setUint32(Q,3758096640+Y,!0),kZ=Q+4,J;if(J=A.num64)return B.setFloat64(Q,NaN,!0),B.setInt8(Q,Y),kZ=Q+8,J;kZ=Q;return}function i9(A,Q,B){let Y=qDA[Q]+(B<<3),J=A[Y]||(A[Y]=Object.create(null));return J.__type=Q,J.__size=B,J.__parent=A,J}function pZB(A){if(!(A instanceof Map))return A;let Q=A.get("typed")||[];if(Object.isFrozen(Q))Q=Q.map((J)=>J.slice(0));let B=A.get("named"),Y=Object.create(null);for(let J=0,C=Q.length;J=24)switch(J){case 24:J=A[Q++];break;case 25:J=A[Q++]+(A[Q++]<<8);break;case 26:J=A[Q++]+(A[Q++]<<8)+(A[Q++]<<16);break;case 27:J=A[Q++]+(A[Q++]<<8)+(A[Q++]<<16)+(A[Q++]<<24);break}let C=Y.typedStructs&&Y.typedStructs[J];if(!C){if(A=Uint8Array.prototype.slice.call(A,Q,B),B-=Q,Q=0,!Y.getStructures)throw Error(`Reference to shared structure ${J} without getStructures method`);if(Y._mergeStructures(Y.getStructures()),!Y.typedStructs)throw Error("Could not find any shared typed structures");if(Y.lastTypedStructuresLength=Y.typedStructs.length,C=Y.typedStructs[J],!C)throw Error("Could not find typed structure "+J)}var{construct:X,fullConstruct:G}=C;if(!X){X=C.construct=function(){},G=C.fullConstruct=function(){},G.prototype=Y.structPrototype??{};var W=X.prototype=Y.structPrototype?Object.create(Y.structPrototype):{};let Z=[],U=0,$;for(let E=0,K=C.length;E0;break;case 1:M=(q,w)=>{let P=q.bytes[w+z.offset];return P>=246?kE(P):P};break;case 2:M=(q,w)=>{let P=q.bytes,j=(P.dataView||(P.dataView=new DataView(P.buffer,P.byteOffset,P.byteLength))).getUint16(w+z.offset,!0);return j>=65280?kE(j&255):j};break;case 4:M=(q,w)=>{let P=q.bytes,j=(P.dataView||(P.dataView=new DataView(P.buffer,P.byteOffset,P.byteLength))).getUint32(w+z.offset,!0);return j>=4294967040?kE(j&255):j};break}z.getRef=M,U+=H;let N;switch(V){case zu:if($&&!$.next)$.next=z;$=z,z.multiGetCount=0,N=function(q){let{bytes:w,position:P}=q,_=U+P,j=M(q,P);if(typeof j!=="number")return j;let k,T=z.next;while(T){if(k=T.getRef(q,P),typeof k==="number")break;else k=null;T=T.next}if(k==null)k=q.bytesEnd-_;if(q.srcString)return q.srcString.slice(j,k);return XDA(w,j+_,k-j)};break;case $N:case Uj:if($&&!$.next)$.next=z;$=z,N=function(q){let w=q.position,P=U+w,_=M(q,w);if(typeof _!=="number")return _;let j=q.bytes,k,T=z.next;while(T){if(k=T.getRef(q,w),typeof k==="number")break;else k=null;T=T.next}if(k==null)k=q.bytesEnd-P;if(V===$N)return j.toString("utf8",_+P,k+P);else{JX=q;try{return Y.unpack(j,{start:_+P,end:k+P})}finally{JX=null}}};break;case _E:switch(H){case 4:N=function(q){let w=q.bytes,P=w.dataView||(w.dataView=new DataView(w.buffer,w.byteOffset,w.byteLength)),_=q.position+z.offset,j=P.getInt32(_,!0);if(j<536870912){if(j>-520093696)return j;if(j>-536870912)return kE(j&255)}let k=P.getFloat32(_,!0),T=TZ[(w[_+3]&127)<<1|w[_+2]>>7];return(T*k+(k>0?0.5:-0.5)>>0)/T};break;case 8:N=function(q){let w=q.bytes,_=(w.dataView||(w.dataView=new DataView(w.buffer,w.byteOffset,w.byteLength))).getFloat64(q.position+z.offset,!0);if(isNaN(_)){let j=w[q.position+z.offset];if(j>=246)return kE(j)}return _};break;case 1:N=function(q){let P=q.bytes[q.position+z.offset];return P<246?P:kE(P)};break}break;case wu:N=function(q){let w=q.bytes,P=w.dataView||(w.dataView=new DataView(w.buffer,w.byteOffset,w.byteLength));return new Date(P.getFloat64(q.position+z.offset,!0))};break}z.get=N}if(MDA){let E=[],K=[],I=0,V;for(let D of Z){if(Y.alwaysLazyProperty&&Y.alwaysLazyProperty(D.key)){V=!0;continue}Object.defineProperty(W,D.key,{get:nZB(D.get),enumerable:!0});let L="v"+I++;K.push(L),E.push("o["+JSON.stringify(D.key)+"]="+L+"(s)")}if(V)E.push("__proto__:this");let H=Function(...K,"var c=this;return function(s){var o=new c();"+E.join(";")+";return o;}").apply(G,Z.map((D)=>D.get));Object.defineProperty(W,"toJSON",{value(D){return H.call(this,this[Ru])}})}else Object.defineProperty(W,"toJSON",{value(E){let K={};for(let I=0,V=Z.length;I{let J=!0;if(Y instanceof Map){if((Y.get("named")||[]).length!==(Q.lastNamedStructuresLength||0))J=!1;if((Y.get("typed")||[]).length!==B)J=!1}else if(Y instanceof Array||Array.isArray(Y)){if(Y.length!==(Q.lastNamedStructuresLength||0))J=!1}if(!J)Q._mergeStructures(Y);return J},Q.lastTypedStructuresLength=Q.typedStructs&&Q.typedStructs.length,A}$DA(iZB,pZB,sZB);var X$B=process.env.MSGPACKR_NATIVE_ACCELERATION_DISABLED!==void 0&&process.env.MSGPACKR_NATIVE_ACCELERATION_DISABLED.toLowerCase()==="true";if(!X$B){let A;try{if(A=mDA(),A)CDA(A.extractStrings)}catch(Q){}}if(!Wj)console.warn("Msgpackr: msgpackr native acceleration is not enabled, using fallback implementation.");var vu=new SZ({useFloat32:WN.ALWAYS});class $Y{static _instance;static get instance(){if(!$Y._instance)$Y._instance=new $Y;return $Y._instance}_enabled=!1;_bytesSentTotal=0;_bytesReceivedTotal=0;_packetsSentTotal=0;_packetsReceivedTotal=0;_compressionCount=0;_serializationTotalMs=0;_serializationCount=0;_lastSnapshotTime=0;_lastBytesSent=0;_lastBytesReceived=0;_lastPacketsSent=0;_lastPacketsReceived=0;_connectedPlayers=0;get isEnabled(){return this._enabled}enable(){this._enabled=!0,this._lastSnapshotTime=performance.now(),this._reset()}disable(){this._enabled=!1}reset(){this._lastSnapshotTime=performance.now(),this._reset()}setConnectedPlayers(A){this._connectedPlayers=A}recordBytesSent(A){if(!this._enabled)return;this._bytesSentTotal+=A}recordBytesReceived(A){if(!this._enabled)return;this._bytesReceivedTotal+=A}recordPacketSent(){if(!this._enabled)return;this._packetsSentTotal++}recordPacketReceived(){if(!this._enabled)return;this._packetsReceivedTotal++}recordSerialization(A){if(!this._enabled)return;this._serializationTotalMs+=A,this._serializationCount++}recordCompression(){if(!this._enabled)return;this._compressionCount++}getSnapshot(){let A=performance.now(),Q=Math.max((A-this._lastSnapshotTime)/1000,0.001),B={connectedPlayers:this._connectedPlayers,bytesSentTotal:this._bytesSentTotal,bytesReceivedTotal:this._bytesReceivedTotal,bytesSentPerSecond:(this._bytesSentTotal-this._lastBytesSent)/Q,bytesReceivedPerSecond:(this._bytesReceivedTotal-this._lastBytesReceived)/Q,packetsSentPerSecond:(this._packetsSentTotal-this._lastPacketsSent)/Q,packetsReceivedPerSecond:(this._packetsReceivedTotal-this._lastPacketsReceived)/Q,avgSerializationMs:this._serializationCount>0?this._serializationTotalMs/this._serializationCount:0,compressionCount:this._compressionCount};return this._lastSnapshotTime=A,this._lastBytesSent=this._bytesSentTotal,this._lastBytesReceived=this._bytesReceivedTotal,this._lastPacketsSent=this._packetsSentTotal,this._lastPacketsReceived=this._packetsReceivedTotal,B}_reset(){this._bytesSentTotal=0,this._bytesReceivedTotal=0,this._packetsSentTotal=0,this._packetsReceivedTotal=0,this._compressionCount=0,this._serializationTotalMs=0,this._serializationCount=0,this._lastBytesSent=0,this._lastBytesReceived=0,this._lastPacketsSent=0,this._lastPacketsReceived=0}}var Qr={};iG(Qr,{zodErrorsIntegration:()=>Qc,wrapMcpServerWithSentry:()=>Xc,withScope:()=>h8,withMonitor:()=>GX,withIsolationScope:()=>BG,withActiveSpan:()=>GW,vercelAIIntegration:()=>uT,validateOpenTelemetrySetup:()=>Ar,updateSpanName:()=>ru,trpcMiddleware:()=>Yc,tediousIntegration:()=>gT,suppressTracing:()=>ON,supabaseIntegration:()=>Ac,startSpanManual:()=>jN,startSpan:()=>b8,startSession:()=>vN,startNewTrace:()=>Vd,startInactiveSpan:()=>Ed,spotlightIntegration:()=>ST,spanToTraceHeader:()=>HN,spanToJSON:()=>eA,spanToBaggageHeader:()=>Yd,setupKoaErrorHandler:()=>BNQ,setupHapiErrorHandler:()=>SDQ,setupFastifyErrorHandler:()=>cEQ,setupExpressErrorHandler:()=>oUQ,setupConnectErrorHandler:()=>wNQ,setUser:()=>wd,setTags:()=>zd,setTag:()=>Rd,setNodeAsyncContextStrategy:()=>LP,setMeasurement:()=>$d,setHttpStatus:()=>mE,setExtras:()=>qd,setExtra:()=>Md,setCurrentClient:()=>bd,setContext:()=>Ld,rewriteFramesIntegration:()=>ed,requestDataIntegration:()=>xN,redisIntegration:()=>KT,profiler:()=>Bc,prismaIntegration:()=>LT,preloadOpenTelemetry:()=>gqQ,postgresIntegration:()=>DT,parameterize:()=>dj,onUnhandledRejectionIntegration:()=>fP,onUncaughtExceptionIntegration:()=>xP,nodeContextIntegration:()=>kP,nativeNodeFetchIntegration:()=>PP,mysqlIntegration:()=>ZT,mysql2Integration:()=>UT,mongooseIntegration:()=>WT,mongoIntegration:()=>XT,modulesIntegration:()=>hP,makeNodeTransport:()=>sT,lruMemoizerIntegration:()=>CT,logger:()=>Zc,localVariablesIntegration:()=>gP,linkedErrorsIntegration:()=>hN,lastEventId:()=>jd,koaIntegration:()=>OT,knexIntegration:()=>sNQ,kafkaIntegration:()=>JT,isInitialized:()=>lZ,instrumentSupabaseClient:()=>sj,initWithoutDefaultIntegrations:()=>xqQ,initOpenTelemetry:()=>eT,init:()=>AS,inboundFiltersIntegration:()=>gN,httpIntegration:()=>RP,hapiIntegration:()=>RT,graphqlIntegration:()=>YT,getTraceMetaTags:()=>cd,getTraceData:()=>CG,getSpanStatusFromHttpCode:()=>bE,getSpanDescendants:()=>DN,getSentryRelease:()=>oT,getRootSpan:()=>K0,getIsolationScope:()=>RQ,getGlobalScope:()=>QG,getDefaultIntegrationsWithoutPerformance:()=>ts,getDefaultIntegrations:()=>es,getCurrentScope:()=>sQ,getClient:()=>gA,getAutoPerformanceIntegrations:()=>pT,getActiveSpan:()=>Q1,genericPoolIntegration:()=>hT,generateInstrumentOnce:()=>EQ,functionToStringIntegration:()=>yN,fsIntegration:()=>o4Q,flush:()=>Od,fastifyIntegration:()=>eP,extraErrorDataIntegration:()=>sd,expressIntegration:()=>lP,expressErrorHandler:()=>qn,eventFiltersIntegration:()=>lj,endSession:()=>pZ,disableAnrDetectionForCallback:()=>IUQ,defaultStackParser:()=>tT,dedupeIntegration:()=>nd,dataloaderIntegration:()=>bLQ,cron:()=>cqQ,createTransport:()=>nE,createSentryWinstonTransport:()=>ZqQ,createGetModuleFromFilename:()=>aT,continueTrace:()=>Kd,contextLinesIntegration:()=>_P,consoleLoggingIntegration:()=>Wc,consoleIntegration:()=>fN,connectIntegration:()=>TT,close:()=>Pd,childProcessIntegration:()=>dT,captureSession:()=>Sd,captureMessage:()=>iE,captureFeedback:()=>Gc,captureException:()=>jB,captureEvent:()=>kN,captureConsoleIntegration:()=>id,captureCheckIn:()=>SN,anrIntegration:()=>VUQ,amqplibIntegration:()=>bT,addIntegration:()=>yd,addEventProcessor:()=>Td,addBreadcrumb:()=>E9,SentryContextManager:()=>lT,Scope:()=>UJ,SEMANTIC_ATTRIBUTE_SENTRY_SOURCE:()=>Q0,SEMANTIC_ATTRIBUTE_SENTRY_SAMPLE_RATE:()=>g5,SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN:()=>DQ,SEMANTIC_ATTRIBUTE_SENTRY_OP:()=>YQ,SDK_VERSION:()=>l0,NodeClient:()=>Gq});var Zc={};iG(Zc,{warn:()=>uUB,trace:()=>fUB,info:()=>mUB,fmt:()=>ud,fatal:()=>cUB,error:()=>dUB,debug:()=>bUB});import{format as xUB}from"node:util";var OA=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__;var l0="9.22.0";var AQ=globalThis;function TJ(){return a7(AQ),AQ}function a7(A){let Q=A.__SENTRY__=A.__SENTRY__||{};return Q.version=Q.version||l0,Q[l0]=Q[l0]||{}}function _Z(A,Q,B=AQ){let Y=B.__SENTRY__=B.__SENTRY__||{},J=Y[l0]=Y[l0]||{};return J[A]||(J[A]=Q())}var uDA=Object.prototype.toString;function aC(A){switch(uDA.call(A)){case"[object Error]":case"[object Exception]":case"[object DOMException]":case"[object WebAssembly.Exception]":return!0;default:return t6(A,Error)}}function Ij(A,Q){return uDA.call(A)===`[object ${Q}]`}function dDA(A){return Ij(A,"ErrorEvent")}function vZ(A){return Ij(A,"String")}function yZ(A){return typeof A==="object"&&A!==null&&"__sentry_template_string__"in A&&"__sentry_template_values__"in A}function UN(A){return A===null||yZ(A)||typeof A!=="object"&&typeof A!=="function"}function k5(A){return Ij(A,"Object")}function cDA(A){return typeof Event<"u"&&t6(A,Event)}function lDA(A){return typeof Element<"u"&&t6(A,Element)}function pDA(A){return Ij(A,"RegExp")}function _5(A){return Boolean(A?.then&&typeof A.then==="function")}function iDA(A){return k5(A)&&"nativeEvent"in A&&"preventDefault"in A&&"stopPropagation"in A}function t6(A,Q){try{return A instanceof Q}catch(B){return!1}}function Hj(A){return!!(typeof A==="object"&&A!==null&&(A.__isVue||A._isVue))}var G$B=AQ,W$B=80;function nDA(A,Q={}){if(!A)return"";try{let B=A,Y=5,J=[],C=0,X=0,G=" > ",W=G.length,F,Z=Array.isArray(Q)?Q:Q.keyAttrs,U=!Array.isArray(Q)&&Q.maxStringLength||W$B;while(B&&C++1&&X+J.length*W+F.length>=U)break;J.push(F),X+=F.length,B=B.parentNode}return J.reverse().join(G)}catch(B){return""}}function F$B(A,Q){let B=A,Y=[];if(!B?.tagName)return"";if(G$B.HTMLElement){if(B instanceof HTMLElement&&B.dataset){if(B.dataset.sentryComponent)return B.dataset.sentryComponent;if(B.dataset.sentryElement)return B.dataset.sentryElement}}Y.push(B.tagName.toLowerCase());let J=Q?.length?Q.filter((X)=>B.getAttribute(X)).map((X)=>[X,B.getAttribute(X)]):null;if(J?.length)J.forEach((X)=>{Y.push(`[${X[0]}="${X[1]}"]`)});else{if(B.id)Y.push(`#${B.id}`);let X=B.className;if(X&&vZ(X)){let G=X.split(/\s+/);for(let W of G)Y.push(`.${W}`)}}let C=["aria-label","type","name","title","alt"];for(let X of C){let G=B.getAttribute(X);if(G)Y.push(`[${X}="${G}"]`)}return Y.join("")}var Z$B="Sentry Logger ",oC=["debug","info","warn","error","log","assert","trace"],vE={};function f0(A){if(!("console"in AQ))return A();let Q=AQ.console,B={},Y=Object.keys(vE);Y.forEach((J)=>{let C=vE[J];B[J]=Q[J],Q[J]=C});try{return A()}finally{Y.forEach((J)=>{Q[J]=B[J]})}}function $$B(){let A=!1,Q={enable:()=>{A=!0},disable:()=>{A=!1},isEnabled:()=>A};if(OA)oC.forEach((B)=>{Q[B]=(...Y)=>{if(A)f0(()=>{AQ.console[B](`${Z$B}[${B}]:`,...Y)})}});else oC.forEach((B)=>{Q[B]=()=>{return}});return Q}var e=_Z("logger",$$B);function n9(A,Q=0){if(typeof A!=="string"||Q===0)return A;return A.length<=Q?A:`${A.slice(0,Q)}...`}function yu(A,Q){let B=A,Y=B.length;if(Y<=150)return B;if(Q>Y)Q=Y;let J=Math.max(Q-60,0);if(J<5)J=0;let C=Math.min(J+140,Y);if(C>Y-5)C=Y;if(C===Y)J=Math.max(C-140,0);if(B=B.slice(J,C),J>0)B=`'{snip} ${B}`;if(CsDA(A,Y,B))}function gu(A,Q,B){if(!(Q in A))return;let Y=A[Q];if(typeof Y!=="function")return;let J=B(Y);if(typeof J==="function")oDA(J,Y);try{A[Q]=J}catch{OA&&e.log(`Failed to replace method "${Q}" in object`,A)}}function p0(A,Q,B){try{Object.defineProperty(A,Q,{value:B,writable:!0,configurable:!0})}catch(Y){OA&&e.log(`Failed to add non-enumerable property "${Q}" to object`,A)}}function oDA(A,Q){try{let B=Q.prototype||{};A.prototype=Q.prototype=B,p0(A,"__sentry_original__",Q)}catch(B){}}function hu(A){return A.__sentry_original__}function Dj(A){if(aC(A))return{message:A.message,name:A.name,stack:A.stack,...aDA(A)};else if(cDA(A)){let Q={type:A.type,target:rDA(A.target),currentTarget:rDA(A.currentTarget),...aDA(A)};if(typeof CustomEvent<"u"&&t6(A,CustomEvent))Q.detail=A.detail;return Q}else return A}function rDA(A){try{return lDA(A)?nDA(A):Object.prototype.toString.call(A)}catch(Q){return""}}function aDA(A){if(typeof A==="object"&&A!==null){let Q={};for(let B in A)if(Object.prototype.hasOwnProperty.call(A,B))Q[B]=A[B];return Q}else return{}}function xu(A,Q=40){let B=Object.keys(Dj(A));B.sort();let Y=B[0];if(!Y)return"[object has no keys]";if(Y.length>=Q)return n9(Y,Q);for(let J=B.length;J>0;J--){let C=B.slice(0,J).join(", ");if(C.length>Q)continue;if(J===B.length)return C;return n9(C,Q)}return""}function U$B(){let A=AQ;return A.crypto||A.msCrypto}function UY(A=U$B()){let Q=()=>Math.random()*16;try{if(A?.randomUUID)return A.randomUUID().replace(/-/g,"");if(A?.getRandomValues)Q=()=>{let B=new Uint8Array(1);return A.getRandomValues(B),B[0]}}catch(B){}return([1e7]+1000+4000+8000+100000000000).replace(/[018]/g,(B)=>(B^(Q()&15)>>B/4).toString(16))}function tDA(A){return A.exception?.values?.[0]}function e7(A){let{message:Q,event_id:B}=A;if(Q)return Q;let Y=tDA(A);if(Y){if(Y.type&&Y.value)return`${Y.type}: ${Y.value}`;return Y.type||Y.value||B||""}return B||""}function bu(A,Q,B){let Y=A.exception=A.exception||{},J=Y.values=Y.values||[],C=J[0]=J[0]||{};if(!C.value)C.value=Q||"";if(!C.type)C.type=B||"Error"}function AW(A,Q){let B=tDA(A);if(!B)return;let Y={type:"generic",handled:!0},J=B.mechanism;if(B.mechanism={...Y,...J,...Q},Q&&"data"in Q){let C={...J?.data,...Q.data};B.mechanism.data=C}}var E$B=/^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/;function fu(A){return parseInt(A||"",10)}function mu(A){let Q=A.match(E$B)||[],B=fu(Q[1]),Y=fu(Q[2]),J=fu(Q[3]);return{buildmetadata:Q[5],major:isNaN(B)?void 0:B,minor:isNaN(Y)?void 0:Y,patch:isNaN(J)?void 0:J,prerelease:Q[4]}}function Nj(A){if(K$B(A))return!0;try{p0(A,"__sentry_captured__",!0)}catch(Q){}return!1}function K$B(A){try{return A.__sentry_captured__}catch{}}var eDA=1000;function e6(){return Date.now()/eDA}function V$B(){let{performance:A}=AQ;if(!A?.now)return e6;let Q=Date.now()-A.now(),B=A.timeOrigin==null?Q:A.timeOrigin;return()=>{return(B+A.now())/eDA}}var v8=V$B();function ANA(A){let Q=v8(),B={sid:UY(),init:!0,timestamp:Q,started:Q,duration:0,status:"ok",errors:0,ignoreDuration:!1,toJSON:()=>I$B(B)};if(A)AG(B,A);return B}function AG(A,Q={}){if(Q.user){if(!A.ipAddress&&Q.user.ip_address)A.ipAddress=Q.user.ip_address;if(!A.did&&!Q.did)A.did=Q.user.id||Q.user.email||Q.user.username}if(A.timestamp=Q.timestamp||v8(),Q.abnormal_mechanism)A.abnormal_mechanism=Q.abnormal_mechanism;if(Q.ignoreDuration)A.ignoreDuration=Q.ignoreDuration;if(Q.sid)A.sid=Q.sid.length===32?Q.sid:UY();if(Q.init!==void 0)A.init=Q.init;if(!A.did&&Q.did)A.did=`${Q.did}`;if(typeof Q.started==="number")A.started=Q.started;if(A.ignoreDuration)A.duration=void 0;else if(typeof Q.duration==="number")A.duration=Q.duration;else{let B=A.timestamp-A.started;A.duration=B>=0?B:0}if(Q.release)A.release=Q.release;if(Q.environment)A.environment=Q.environment;if(!A.ipAddress&&Q.ipAddress)A.ipAddress=Q.ipAddress;if(!A.userAgent&&Q.userAgent)A.userAgent=Q.userAgent;if(typeof Q.errors==="number")A.errors=Q.errors;if(Q.status)A.status=Q.status}function QNA(A,Q){let B={};if(Q)B={status:Q};else if(A.status==="ok")B={status:"exited"};AG(A,B)}function I$B(A){return{sid:`${A.sid}`,init:A.init,started:new Date(A.started*1000).toISOString(),timestamp:new Date(A.timestamp*1000).toISOString(),status:A.status,errors:A.errors,did:typeof A.did==="number"||typeof A.did==="string"?`${A.did}`:void 0,duration:A.duration,abnormal_mechanism:A.abnormal_mechanism,attrs:{release:A.release,environment:A.environment,ip_address:A.ipAddress,user_agent:A.userAgent}}}function QW(A,Q,B=2){if(!Q||typeof Q!=="object"||B<=0)return Q;if(A&&Object.keys(Q).length===0)return A;let Y={...A};for(let J in Q)if(Object.prototype.hasOwnProperty.call(Q,J))Y[J]=QW(Y[J],Q[J],B-1);return Y}var uu="_sentrySpan";function gZ(A,Q){if(Q)p0(A,uu,Q);else delete A[uu]}function tC(A){return A[uu]}function y8(){return UY()}function g8(){return UY().substring(16)}var H$B=100;class UJ{constructor(){this._notifyingListeners=!1,this._scopeListeners=[],this._eventProcessors=[],this._breadcrumbs=[],this._attachments=[],this._user={},this._tags={},this._extra={},this._contexts={},this._sdkProcessingMetadata={},this._propagationContext={traceId:y8(),sampleRand:Math.random()}}clone(){let A=new UJ;if(A._breadcrumbs=[...this._breadcrumbs],A._tags={...this._tags},A._extra={...this._extra},A._contexts={...this._contexts},this._contexts.flags)A._contexts.flags={values:[...this._contexts.flags.values]};return A._user=this._user,A._level=this._level,A._session=this._session,A._transactionName=this._transactionName,A._fingerprint=this._fingerprint,A._eventProcessors=[...this._eventProcessors],A._attachments=[...this._attachments],A._sdkProcessingMetadata={...this._sdkProcessingMetadata},A._propagationContext={...this._propagationContext},A._client=this._client,A._lastEventId=this._lastEventId,gZ(A,tC(this)),A}setClient(A){this._client=A}setLastEventId(A){this._lastEventId=A}getClient(){return this._client}lastEventId(){return this._lastEventId}addScopeListener(A){this._scopeListeners.push(A)}addEventProcessor(A){return this._eventProcessors.push(A),this}setUser(A){if(this._user=A||{email:void 0,id:void 0,ip_address:void 0,username:void 0},this._session)AG(this._session,{user:A});return this._notifyScopeListeners(),this}getUser(){return this._user}setTags(A){return this._tags={...this._tags,...A},this._notifyScopeListeners(),this}setTag(A,Q){return this._tags={...this._tags,[A]:Q},this._notifyScopeListeners(),this}setExtras(A){return this._extra={...this._extra,...A},this._notifyScopeListeners(),this}setExtra(A,Q){return this._extra={...this._extra,[A]:Q},this._notifyScopeListeners(),this}setFingerprint(A){return this._fingerprint=A,this._notifyScopeListeners(),this}setLevel(A){return this._level=A,this._notifyScopeListeners(),this}setTransactionName(A){return this._transactionName=A,this._notifyScopeListeners(),this}setContext(A,Q){if(Q===null)delete this._contexts[A];else this._contexts[A]=Q;return this._notifyScopeListeners(),this}setSession(A){if(!A)delete this._session;else this._session=A;return this._notifyScopeListeners(),this}getSession(){return this._session}update(A){if(!A)return this;let Q=typeof A==="function"?A(this):A,B=Q instanceof UJ?Q.getScopeData():k5(Q)?A:void 0,{tags:Y,extra:J,user:C,contexts:X,level:G,fingerprint:W=[],propagationContext:F}=B||{};if(this._tags={...this._tags,...Y},this._extra={...this._extra,...J},this._contexts={...this._contexts,...X},C&&Object.keys(C).length)this._user=C;if(G)this._level=G;if(W.length)this._fingerprint=W;if(F)this._propagationContext=F;return this}clear(){return this._breadcrumbs=[],this._tags={},this._extra={},this._user={},this._contexts={},this._level=void 0,this._transactionName=void 0,this._fingerprint=void 0,this._session=void 0,gZ(this,void 0),this._attachments=[],this.setPropagationContext({traceId:y8(),sampleRand:Math.random()}),this._notifyScopeListeners(),this}addBreadcrumb(A,Q){let B=typeof Q==="number"?Q:H$B;if(B<=0)return this;let Y={timestamp:e6(),...A,message:A.message?n9(A.message,2048):A.message};if(this._breadcrumbs.push(Y),this._breadcrumbs.length>B)this._breadcrumbs=this._breadcrumbs.slice(-B),this._client?.recordDroppedEvent("buffer_overflow","log_item");return this._notifyScopeListeners(),this}getLastBreadcrumb(){return this._breadcrumbs[this._breadcrumbs.length-1]}clearBreadcrumbs(){return this._breadcrumbs=[],this._notifyScopeListeners(),this}addAttachment(A){return this._attachments.push(A),this}clearAttachments(){return this._attachments=[],this}getScopeData(){return{breadcrumbs:this._breadcrumbs,attachments:this._attachments,contexts:this._contexts,tags:this._tags,extra:this._extra,user:this._user,level:this._level,fingerprint:this._fingerprint||[],eventProcessors:this._eventProcessors,propagationContext:this._propagationContext,sdkProcessingMetadata:this._sdkProcessingMetadata,transactionName:this._transactionName,span:tC(this)}}setSDKProcessingMetadata(A){return this._sdkProcessingMetadata=QW(this._sdkProcessingMetadata,A,2),this}setPropagationContext(A){return this._propagationContext=A,this}getPropagationContext(){return this._propagationContext}captureException(A,Q){let B=Q?.event_id||UY();if(!this._client)return e.warn("No client configured on scope - will not capture exception!"),B;let Y=Error("Sentry syntheticException");return this._client.captureException(A,{originalException:A,syntheticException:Y,...Q,event_id:B},this),B}captureMessage(A,Q,B){let Y=B?.event_id||UY();if(!this._client)return e.warn("No client configured on scope - will not capture message!"),Y;let J=Error(A);return this._client.captureMessage(A,Q,{originalException:A,syntheticException:J,...B,event_id:Y},this),Y}captureEvent(A,Q){let B=Q?.event_id||UY();if(!this._client)return e.warn("No client configured on scope - will not capture event!"),B;return this._client.captureEvent(A,{...Q,event_id:B},this),B}_notifyScopeListeners(){if(!this._notifyingListeners)this._notifyingListeners=!0,this._scopeListeners.forEach((A)=>{A(this)}),this._notifyingListeners=!1}}function yE(){return _Z("defaultCurrentScope",()=>new UJ)}function v5(){return _Z("defaultIsolationScope",()=>new UJ)}class YNA{constructor(A,Q){let B;if(!A)B=new UJ;else B=A;let Y;if(!Q)Y=new UJ;else Y=Q;this._stack=[{scope:B}],this._isolationScope=Y}withScope(A){let Q=this._pushScope(),B;try{B=A(Q)}catch(Y){throw this._popScope(),Y}if(_5(B))return B.then((Y)=>{return this._popScope(),Y},(Y)=>{throw this._popScope(),Y});return this._popScope(),B}getClient(){return this.getStackTop().client}getScope(){return this.getStackTop().scope}getIsolationScope(){return this._isolationScope}getStackTop(){return this._stack[this._stack.length-1]}_pushScope(){let A=this.getScope().clone();return this._stack.push({client:this.getClient(),scope:A}),A}_popScope(){if(this._stack.length<=1)return!1;return!!this._stack.pop()}}function gE(){let A=TJ(),Q=a7(A);return Q.stack=Q.stack||new YNA(yE(),v5())}function D$B(A){return gE().withScope(A)}function N$B(A,Q){let B=gE();return B.withScope(()=>{return B.getStackTop().scope=A,Q(A)})}function BNA(A){return gE().withScope(()=>{return A(gE().getIsolationScope())})}function JNA(){return{withIsolationScope:BNA,withScope:D$B,withSetScope:N$B,withSetIsolationScope:(A,Q)=>{return BNA(Q)},getCurrentScope:()=>gE().getScope(),getIsolationScope:()=>gE().getIsolationScope()}}function du(A){let Q=TJ(),B=a7(Q);B.acs=A}function y5(A){let Q=a7(A);if(Q.acs)return Q.acs;return JNA()}function sQ(){let A=TJ();return y5(A).getCurrentScope()}function RQ(){let A=TJ();return y5(A).getIsolationScope()}function QG(){return _Z("globalScope",()=>new UJ)}function h8(...A){let Q=TJ(),B=y5(Q);if(A.length===2){let[Y,J]=A;if(!Y)return B.withScope(J);return B.withSetScope(Y,J)}return B.withScope(A[0])}function BG(...A){let Q=TJ(),B=y5(Q);if(A.length===2){let[Y,J]=A;if(!Y)return B.withIsolationScope(J);return B.withSetIsolationScope(Y,J)}return B.withIsolationScope(A[0])}function gA(){return sQ().getClient()}function hE(A){let Q=A.getPropagationContext(),{traceId:B,parentSpanId:Y,propagationSpanId:J}=Q,C={trace_id:B,span_id:J||g8()};if(Y)C.parent_span_id=Y;return C}var Q0="sentry.source",g5="sentry.sample_rate",cu="sentry.previous_trace_sample_rate",YQ="sentry.op",DQ="sentry.origin";var Lj="sentry.measurement_unit",qj="sentry.measurement_value",eC="sentry.custom_span_name",xE="sentry.profile_id",fE="sentry.exclusive_time",lu="cache.hit",pu="cache.key",iu="cache.item_size";var nu=0,BW=1,s9=2;function bE(A){if(A<400&&A>=100)return{code:1};if(A>=400&&A<500)switch(A){case 401:return{code:2,message:"unauthenticated"};case 403:return{code:2,message:"permission_denied"};case 404:return{code:2,message:"not_found"};case 409:return{code:2,message:"already_exists"};case 413:return{code:2,message:"failed_precondition"};case 429:return{code:2,message:"resource_exhausted"};case 499:return{code:2,message:"cancelled"};default:return{code:2,message:"invalid_argument"}}if(A>=500&&A<600)switch(A){case 501:return{code:2,message:"unimplemented"};case 503:return{code:2,message:"unavailable"};case 504:return{code:2,message:"deadline_exceeded"};default:return{code:2,message:"internal_error"}}return{code:2,message:"unknown_error"}}function mE(A,Q){A.setAttribute("http.response.status_code",Q);let B=bE(Q);if(B.message!=="unknown_error")A.setStatus(B)}var CNA="_sentryScope",XNA="_sentryIsolationScope";function EN(A,Q,B){if(A)p0(A,XNA,B),p0(A,CNA,Q)}function A1(A){return{scope:A[CNA],isolationScope:A[XNA]}}function x8(A){if(typeof A==="boolean")return Number(A);let Q=typeof A==="string"?parseFloat(A):A;if(typeof Q!=="number"||isNaN(Q)||Q<0||Q>1)return;return Q}var KN="sentry-",WNA=/^sentry-/,FNA=8192;function YW(A){let Q=hZ(A);if(!Q)return;let B=Object.entries(Q).reduce((Y,[J,C])=>{if(J.match(WNA)){let X=J.slice(KN.length);Y[X]=C}return Y},{});if(Object.keys(B).length>0)return B;else return}function JW(A){if(!A)return;let Q=Object.entries(A).reduce((B,[Y,J])=>{if(J)B[`${KN}${Y}`]=J;return B},{});return Mj(Q)}function hZ(A){if(!A||!vZ(A)&&!Array.isArray(A))return;if(Array.isArray(A))return A.reduce((Q,B)=>{let Y=GNA(B);return Object.entries(Y).forEach(([J,C])=>{Q[J]=C}),Q},{});return GNA(A)}function GNA(A){return A.split(",").map((Q)=>Q.split("=").map((B)=>{try{return decodeURIComponent(B.trim())}catch{return}})).reduce((Q,[B,Y])=>{if(B&&Y)Q[B]=Y;return Q},{})}function Mj(A){if(Object.keys(A).length===0)return;return Object.entries(A).reduce((Q,[B,Y],J)=>{let C=`${encodeURIComponent(B)}=${encodeURIComponent(Y)}`,X=J===0?C:`${Q},${C}`;if(X.length>FNA)return OA&&e.warn(`Not adding key: ${B} with val: ${Y} to baggage header due to exceeding baggage size limits.`),Q;else return X},"")}var VN=new RegExp("^[ \\t]*([0-9a-f]{32})?-?([0-9a-f]{16})?-?([01])?[ \\t]*$");function ZNA(A){if(!A)return;let Q=A.match(VN);if(!Q)return;let B;if(Q[3]==="1")B=!0;else if(Q[3]==="0")B=!1;return{traceId:Q[1],parentSampled:B,parentSpanId:Q[2]}}function xZ(A,Q){let B=ZNA(A),Y=YW(Q);if(!B?.traceId)return{traceId:y8(),sampleRand:Math.random()};let J=L$B(B,Y);if(Y)Y.sample_rand=J.toString();let{traceId:C,parentSpanId:X,parentSampled:G}=B;return{traceId:C,parentSpanId:X,sampled:G,dsc:Y||{},sampleRand:J}}function CW(A=y8(),Q=g8(),B){let Y="";if(B!==void 0)Y=B?"-1":"-0";return`${A}-${Q}${Y}`}function L$B(A,Q){let B=x8(Q?.sample_rand);if(B!==void 0)return B;let Y=x8(Q?.sample_rate);if(Y&&A?.parentSampled!==void 0)return A.parentSampled?Math.random()*Y:Y+Math.random()*(1-Y);else return Math.random()}var zj=0,Rj=1,$NA=!1;function ENA(A){let{spanId:Q,traceId:B}=A.spanContext(),{data:Y,op:J,parent_span_id:C,status:X,origin:G,links:W}=eA(A);return{parent_span_id:C,span_id:Q,trace_id:B,data:Y,op:J,status:X,origin:G,links:W}}function XW(A){let{spanId:Q,traceId:B,isRemote:Y}=A.spanContext(),J=Y?Q:eA(A).parent_span_id,C=A1(A).scope,X=Y?C?.getPropagationContext().propagationSpanId||g8():Q;return{parent_span_id:J,span_id:X,trace_id:B}}function HN(A){let{traceId:Q,spanId:B}=A.spanContext(),Y=XX(A);return CW(Q,B,Y)}function fZ(A){if(A&&A.length>0)return A.map(({context:{spanId:Q,traceId:B,traceFlags:Y,...J},attributes:C})=>({span_id:Q,trace_id:B,sampled:Y===Rj,attributes:C,...J}));else return}function r9(A){if(typeof A==="number")return UNA(A);if(Array.isArray(A))return A[0]+A[1]/1e9;if(A instanceof Date)return UNA(A.getTime());return v8()}function UNA(A){return A>9999999999?A/1000:A}function eA(A){if(M$B(A))return A.getSpanJSON();let{spanId:Q,traceId:B}=A.spanContext();if(q$B(A)){let{attributes:Y,startTime:J,name:C,endTime:X,status:G,links:W}=A,F="parentSpanId"in A?A.parentSpanId:("parentSpanContext"in A)?A.parentSpanContext?.spanId:void 0;return{span_id:Q,trace_id:B,data:Y,description:C,parent_span_id:F,start_timestamp:r9(J),timestamp:r9(X)||void 0,status:bZ(G),op:Y[YQ],origin:Y[DQ],links:fZ(W)}}return{span_id:Q,trace_id:B,start_timestamp:0,data:{}}}function q$B(A){let Q=A;return!!Q.attributes&&!!Q.startTime&&!!Q.name&&!!Q.endTime&&!!Q.status}function M$B(A){return typeof A.getSpanJSON==="function"}function XX(A){let{traceFlags:Q}=A.spanContext();return Q===Rj}function bZ(A){if(!A||A.code===nu)return;if(A.code===BW)return"ok";return A.message||"unknown_error"}var IN="_sentryChildSpans",su="_sentryRootSpan";function uE(A,Q){let B=A[su]||A;if(p0(Q,su,B),A[IN])A[IN].add(Q);else p0(A,IN,new Set([Q]))}function DN(A){let Q=new Set;function B(Y){if(Q.has(Y))return;else if(XX(Y)){Q.add(Y);let J=Y[IN]?Array.from(Y[IN]):[];for(let C of J)B(C)}}return B(A),Array.from(Q)}function K0(A){return A[su]||A}function Q1(){let A=TJ(),Q=y5(A);if(Q.getActiveSpan)return Q.getActiveSpan();return tC(sQ())}function NN(){if(!$NA)f0(()=>{console.warn("[Sentry] Returning null from `beforeSendSpan` is disallowed. To drop certain spans, configure the respective integrations directly.")}),$NA=!0}function ru(A,Q){A.updateName(Q),A.setAttributes({[Q0]:"custom",[eC]:Q})}var ou="?",KNA=/\(error: (.*)\)/,VNA=/captureMessage|captureException/;function jj(...A){let Q=A.sort((B,Y)=>B[0]-Y[0]).map((B)=>B[1]);return(B,Y=0,J=0)=>{let C=[],X=B.split(` `);for(let G=Y;G1024)continue;let F=KNA.test(W)?W.replace(KNA,"$1"):W;if(F.match(/\S*Error: /))continue;for(let Z of Q){let U=Z(F);if(U){C.push(U);break}}if(C.length>=50+J)break}return INA(C.slice(J))}}function tu(A){if(Array.isArray(A))return jj(...A);return A}function INA(A){if(!A.length)return[];let Q=Array.from(A);if(/sentryWrapped/.test(wj(Q).function||""))Q.pop();if(Q.reverse(),VNA.test(wj(Q).function||"")){if(Q.pop(),VNA.test(wj(Q).function||""))Q.pop()}return Q.slice(0,50).map((B)=>({...B,filename:B.filename||wj(Q).filename,function:B.function||"?"}))}function wj(A){return A[A.length-1]||{}}var au="";function LN(A){try{if(!A||typeof A!=="function")return au;return A.name||au}catch(Q){return au}}function Oj(A){let Q=A.exception;if(Q){let B=[];try{return Q.values.forEach((Y)=>{if(Y.stacktrace.frames)B.push(...Y.stacktrace.frames)}),B}catch(Y){return}}return}var Pj={},HNA={};function dE(A,Q){Pj[A]=Pj[A]||[],Pj[A].push(Q)}function cE(A,Q){if(!HNA[A]){HNA[A]=!0;try{Q()}catch(B){OA&&e.error(`Error while instrumenting ${A}`,B)}}}function lE(A,Q){let B=A&&Pj[A];if(!B)return;for(let Y of B)try{Y(Q)}catch(J){OA&&e.error(`Error while triggering instrumentation handler. Type: ${A} Name: ${LN(Y)} -Error:`,J)}}var eu=null;function DNA(A){dE("error",A),cE("error",z$B)}function z$B(){eu=AQ.onerror,AQ.onerror=function(A,Q,B,Y,J){if(lE("error",{column:Y,error:J,line:B,msg:A,url:Q}),eu)return eu.apply(this,arguments);return!1},AQ.onerror.__SENTRY_INSTRUMENTED__=!0}var Ad=null;function NNA(A){dE("unhandledrejection",A),cE("unhandledrejection",R$B)}function R$B(){Ad=AQ.onunhandledrejection,AQ.onunhandledrejection=function(A){if(lE("unhandledrejection",A),Ad)return Ad.apply(this,arguments);return!0},AQ.onunhandledrejection.__SENTRY_INSTRUMENTED__=!0}var LNA=!1;function qNA(){if(LNA)return;LNA=!0,DNA(Qd),NNA(Qd)}function Qd(){let A=Q1(),Q=A&&K0(A);if(Q)OA&&e.log("[Tracing] Root span: internal_error -> Global error occurred"),Q.setStatus({code:s9,message:"internal_error"})}Qd.tag="sentry_tracingErrorCallback";function U9(A){if(typeof __SENTRY_TRACING__==="boolean"&&!__SENTRY_TRACING__)return!1;let Q=A||gA()?.getOptions();return!!Q&&(Q.tracesSampleRate!=null||!!Q.tracesSampler)}var pE="production";var w$B=/^o(\d+)\./,j$B=/^(?:(\w+):)\/\/(?:(\w+)(?::(\w+)?)?@)([\w.-]+)(?::(\d+))?\/(.+)/;function O$B(A){return A==="http"||A==="https"}function B1(A,Q=!1){let{host:B,path:Y,pass:J,port:C,projectId:X,protocol:G,publicKey:W}=A;return`${G}://${W}${Q&&J?`:${J}`:""}@${B}${C?`:${C}`:""}/${Y?`${Y}/`:Y}${X}`}function P$B(A){let Q=j$B.exec(A);if(!Q){f0(()=>{console.error(`Invalid Sentry Dsn: ${A}`)});return}let[B,Y,J="",C="",X="",G=""]=Q.slice(1),W="",F=G,Z=F.split("/");if(Z.length>1)W=Z.slice(0,-1).join("/"),F=Z.pop();if(F){let U=F.match(/^\d+/);if(U)F=U[0]}return MNA({host:C,pass:J,path:W,projectId:F,port:X,protocol:B,publicKey:Y})}function MNA(A){return{protocol:A.protocol,publicKey:A.publicKey||"",pass:A.pass||"",host:A.host,port:A.port||"",path:A.path||"",projectId:A.projectId}}function T$B(A){if(!OA)return!0;let{port:Q,projectId:B,protocol:Y}=A;if(["protocol","publicKey","host","projectId"].find((X)=>{if(!A[X])return e.error(`Invalid Sentry Dsn: ${X} missing`),!0;return!1}))return!1;if(!B.match(/^\d+$/))return e.error(`Invalid Sentry Dsn: Invalid projectId ${B}`),!1;if(!O$B(Y))return e.error(`Invalid Sentry Dsn: Invalid protocol ${Y}`),!1;if(Q&&isNaN(parseInt(Q,10)))return e.error(`Invalid Sentry Dsn: Invalid port ${Q}`),!1;return!0}function zNA(A){return A.match(w$B)?.[1]}function RNA(A){let Q=typeof A==="string"?P$B(A):MNA(A);if(!Q||!T$B(Q))return;return Q}var wNA="_frozenDsc";function Tj(A,Q){p0(A,wNA,Q)}function Bd(A,Q){let B=Q.getOptions(),{publicKey:Y,host:J}=Q.getDsn()||{},C;if(B.orgId)C=String(B.orgId);else if(J)C=zNA(J);let X={environment:B.environment||pE,release:B.release,public_key:Y,trace_id:A,org_id:C};return Q.emit("createDsc",X),X}function YG(A,Q){let B=Q.getPropagationContext();return B.dsc||Bd(B.traceId,A)}function i0(A){let Q=gA();if(!Q)return{};let B=K0(A),Y=eA(B),J=Y.data,C=B.spanContext().traceState,X=C?.get("sentry.sample_rate")??J[g5]??J[cu];function G(K){if(typeof X==="number"||typeof X==="string")K.sample_rate=`${X}`;return K}let W=B[wNA];if(W)return G(W);let F=C?.get("sentry.dsc"),Z=F&&YW(F);if(Z)return G(Z);let U=Bd(A.spanContext().traceId,Q),$=J[Q0],E=Y.description;if($!=="url"&&E)U.transaction=E;if(U9())U.sampled=String(XX(B)),U.sample_rand=C?.get("sentry.sample_rand")??A1(B).scope?.getPropagationContext().sampleRand.toString();return G(U),Q.emit("createDsc",U,B),U}function Yd(A){let Q=i0(A);return JW(Q)}class bZ{constructor(A={}){this._traceId=A.traceId||y8(),this._spanId=A.spanId||g8()}spanContext(){return{spanId:this._spanId,traceId:this._traceId,traceFlags:zj}}end(A){}setAttribute(A,Q){return this}setAttributes(A){return this}setStatus(A){return this}updateName(A){return this}isRecording(){return!1}addEvent(A,Q,B){return this}addLink(A){return this}addLinks(A){return this}recordException(A,Q){}}function mZ(A,Q,B=()=>{}){let Y;try{Y=A()}catch(J){throw Q(J),B(),J}return S$B(Y,Q,B)}function S$B(A,Q,B){if(_5(A))return A.then((Y)=>{return B(),Y},(Y)=>{throw Q(Y),B(),Y});return B(),A}function qN(A){if(!OA)return;let{description:Q="< unknown name >",op:B="< unknown op >",parent_span_id:Y}=eA(A),{spanId:J}=A.spanContext(),C=XX(A),X=K0(A),G=X===A,W=`[Tracing] Starting ${C?"sampled":"unsampled"} ${G?"root ":""}span`,F=[`op: ${B}`,`name: ${Q}`,`ID: ${J}`];if(Y)F.push(`parent ID: ${Y}`);if(!G){let{op:Z,description:U}=eA(X);if(F.push(`root ID: ${X.spanContext().spanId}`),Z)F.push(`root op: ${Z}`);if(U)F.push(`root description: ${U}`)}e.log(`${W} +Error:`,J)}}var eu=null;function DNA(A){dE("error",A),cE("error",z$B)}function z$B(){eu=AQ.onerror,AQ.onerror=function(A,Q,B,Y,J){if(lE("error",{column:Y,error:J,line:B,msg:A,url:Q}),eu)return eu.apply(this,arguments);return!1},AQ.onerror.__SENTRY_INSTRUMENTED__=!0}var Ad=null;function NNA(A){dE("unhandledrejection",A),cE("unhandledrejection",R$B)}function R$B(){Ad=AQ.onunhandledrejection,AQ.onunhandledrejection=function(A){if(lE("unhandledrejection",A),Ad)return Ad.apply(this,arguments);return!0},AQ.onunhandledrejection.__SENTRY_INSTRUMENTED__=!0}var LNA=!1;function qNA(){if(LNA)return;LNA=!0,DNA(Qd),NNA(Qd)}function Qd(){let A=Q1(),Q=A&&K0(A);if(Q)OA&&e.log("[Tracing] Root span: internal_error -> Global error occurred"),Q.setStatus({code:s9,message:"internal_error"})}Qd.tag="sentry_tracingErrorCallback";function U9(A){if(typeof __SENTRY_TRACING__==="boolean"&&!__SENTRY_TRACING__)return!1;let Q=A||gA()?.getOptions();return!!Q&&(Q.tracesSampleRate!=null||!!Q.tracesSampler)}var pE="production";var w$B=/^o(\d+)\./,j$B=/^(?:(\w+):)\/\/(?:(\w+)(?::(\w+)?)?@)([\w.-]+)(?::(\d+))?\/(.+)/;function O$B(A){return A==="http"||A==="https"}function B1(A,Q=!1){let{host:B,path:Y,pass:J,port:C,projectId:X,protocol:G,publicKey:W}=A;return`${G}://${W}${Q&&J?`:${J}`:""}@${B}${C?`:${C}`:""}/${Y?`${Y}/`:Y}${X}`}function P$B(A){let Q=j$B.exec(A);if(!Q){f0(()=>{console.error(`Invalid Sentry Dsn: ${A}`)});return}let[B,Y,J="",C="",X="",G=""]=Q.slice(1),W="",F=G,Z=F.split("/");if(Z.length>1)W=Z.slice(0,-1).join("/"),F=Z.pop();if(F){let U=F.match(/^\d+/);if(U)F=U[0]}return MNA({host:C,pass:J,path:W,projectId:F,port:X,protocol:B,publicKey:Y})}function MNA(A){return{protocol:A.protocol,publicKey:A.publicKey||"",pass:A.pass||"",host:A.host,port:A.port||"",path:A.path||"",projectId:A.projectId}}function T$B(A){if(!OA)return!0;let{port:Q,projectId:B,protocol:Y}=A;if(["protocol","publicKey","host","projectId"].find((X)=>{if(!A[X])return e.error(`Invalid Sentry Dsn: ${X} missing`),!0;return!1}))return!1;if(!B.match(/^\d+$/))return e.error(`Invalid Sentry Dsn: Invalid projectId ${B}`),!1;if(!O$B(Y))return e.error(`Invalid Sentry Dsn: Invalid protocol ${Y}`),!1;if(Q&&isNaN(parseInt(Q,10)))return e.error(`Invalid Sentry Dsn: Invalid port ${Q}`),!1;return!0}function zNA(A){return A.match(w$B)?.[1]}function RNA(A){let Q=typeof A==="string"?P$B(A):MNA(A);if(!Q||!T$B(Q))return;return Q}var wNA="_frozenDsc";function Tj(A,Q){p0(A,wNA,Q)}function Bd(A,Q){let B=Q.getOptions(),{publicKey:Y,host:J}=Q.getDsn()||{},C;if(B.orgId)C=String(B.orgId);else if(J)C=zNA(J);let X={environment:B.environment||pE,release:B.release,public_key:Y,trace_id:A,org_id:C};return Q.emit("createDsc",X),X}function YG(A,Q){let B=Q.getPropagationContext();return B.dsc||Bd(B.traceId,A)}function i0(A){let Q=gA();if(!Q)return{};let B=K0(A),Y=eA(B),J=Y.data,C=B.spanContext().traceState,X=C?.get("sentry.sample_rate")??J[g5]??J[cu];function G(K){if(typeof X==="number"||typeof X==="string")K.sample_rate=`${X}`;return K}let W=B[wNA];if(W)return G(W);let F=C?.get("sentry.dsc"),Z=F&&YW(F);if(Z)return G(Z);let U=Bd(A.spanContext().traceId,Q),$=J[Q0],E=Y.description;if($!=="url"&&E)U.transaction=E;if(U9())U.sampled=String(XX(B)),U.sample_rand=C?.get("sentry.sample_rand")??A1(B).scope?.getPropagationContext().sampleRand.toString();return G(U),Q.emit("createDsc",U,B),U}function Yd(A){let Q=i0(A);return JW(Q)}class mZ{constructor(A={}){this._traceId=A.traceId||y8(),this._spanId=A.spanId||g8()}spanContext(){return{spanId:this._spanId,traceId:this._traceId,traceFlags:zj}}end(A){}setAttribute(A,Q){return this}setAttributes(A){return this}setStatus(A){return this}updateName(A){return this}isRecording(){return!1}addEvent(A,Q,B){return this}addLink(A){return this}addLinks(A){return this}recordException(A,Q){}}function uZ(A,Q,B=()=>{}){let Y;try{Y=A()}catch(J){throw Q(J),B(),J}return S$B(Y,Q,B)}function S$B(A,Q,B){if(_5(A))return A.then((Y)=>{return B(),Y},(Y)=>{throw Q(Y),B(),Y});return B(),A}function qN(A){if(!OA)return;let{description:Q="< unknown name >",op:B="< unknown op >",parent_span_id:Y}=eA(A),{spanId:J}=A.spanContext(),C=XX(A),X=K0(A),G=X===A,W=`[Tracing] Starting ${C?"sampled":"unsampled"} ${G?"root ":""}span`,F=[`op: ${B}`,`name: ${Q}`,`ID: ${J}`];if(Y)F.push(`parent ID: ${Y}`);if(!G){let{op:Z,description:U}=eA(X);if(F.push(`root ID: ${X.spanContext().spanId}`),Z)F.push(`root op: ${Z}`);if(U)F.push(`root description: ${U}`)}e.log(`${W} ${F.join(` `)}`)}function MN(A){if(!OA)return;let{description:Q="< unknown name >",op:B="< unknown op >"}=eA(A),{spanId:Y}=A.spanContext(),C=K0(A)===A,X=`[Tracing] Finishing "${B}" ${C?"root ":""}span "${Q}" with ID ${Y}`;e.log(X)}function zN(A,Q,B){if(!U9(A))return[!1];let Y=void 0,J;if(typeof A.tracesSampler==="function")J=A.tracesSampler({...Q,inheritOrSampleWith:(G)=>{if(typeof Q.parentSampleRate==="number")return Q.parentSampleRate;if(typeof Q.parentSampled==="boolean")return Number(Q.parentSampled);return G}}),Y=!0;else if(Q.parentSampled!==void 0)J=Q.parentSampled;else if(typeof A.tracesSampleRate<"u")J=A.tracesSampleRate,Y=!0;let C=x8(J);if(C===void 0)return OA&&e.warn(`[Tracing] Discarding root span because of invalid sample rate. Sample rate must be a boolean or a number between 0 and 1. Got ${JSON.stringify(J)} of type ${JSON.stringify(typeof J)}.`),[!1];if(!C)return OA&&e.log(`[Tracing] Discarding transaction because ${typeof A.tracesSampler==="function"?"tracesSampler returned 0 or false":"a negative sampling decision was inherited or tracesSampleRate is set to 0"}`),[!1,C,Y];let X=BB)return Cd(A,Q-1,B);return Y}function Jd(A,Q,B=1/0,Y=1/0,J=g$B()){let[C,X]=J;if(Q==null||["boolean","string"].includes(typeof Q)||typeof Q==="number"&&Number.isFinite(Q))return Q;let G=k$B(A,Q);if(!G.startsWith("[object "))return G;if(Q.__sentry_skip_normalization__)return Q;let W=typeof Q.__sentry_override_normalization_depth__==="number"?Q.__sentry_override_normalization_depth__:B;if(W===0)return G.replace("object ","");if(C(Q))return"[Circular ~]";let F=Q;if(F&&typeof F.toJSON==="function")try{let E=F.toJSON();return Jd("",E,W-1,Y,J)}catch(E){}let Z=Array.isArray(Q)?[]:{},U=0,$=Dj(Q);for(let E in $){if(!Object.prototype.hasOwnProperty.call($,E))continue;if(U>=Y){Z[E]="[MaxProperties ~]";break}let K=$[E];Z[E]=Jd(E,K,W-1,Y,J),U++}return X(Q),Z}function k$B(A,Q){try{if(A==="domain"&&Q&&typeof Q==="object"&&Q._events)return"[Domain]";if(A==="domainEmitter")return"[DomainEmitter]";if(typeof global<"u"&&Q===global)return"[Global]";if(typeof window<"u"&&Q===window)return"[Window]";if(typeof document<"u"&&Q===document)return"[Document]";if(Hj(Q))return"[VueViewModel]";if(iDA(Q))return"[SyntheticEvent]";if(typeof Q==="number"&&!Number.isFinite(Q))return`[${Q}]`;if(typeof Q==="function")return`[Function: ${LN(Q)}]`;if(typeof Q==="symbol")return`[${String(Q)}]`;if(typeof Q==="bigint")return`[BigInt: ${String(Q)}]`;let B=_$B(Q);if(/^HTML(\w*)Element$/.test(B))return`[HTMLElement: ${B}]`;return`[object ${B}]`}catch(B){return`**non-serializable** (${B})`}}function _$B(A){let Q=Object.getPrototypeOf(A);return Q?.constructor?Q.constructor.name:"null prototype"}function v$B(A){return~-encodeURI(A).split(/%..|./).length}function y$B(A){return v$B(JSON.stringify(A))}function g$B(){let A=new WeakSet;function Q(Y){if(A.has(Y))return!0;return A.add(Y),!1}function B(Y){A.delete(Y)}return[Q,B]}function f8(A,Q=[]){return[A,Q]}function Gd(A,Q){let[B,Y]=A;return[B,[...Y,Q]]}function Sj(A,Q){let B=A[1];for(let Y of B){let J=Y[0].type;if(Q(Y,J))return!0}return!1}function Xd(A){let Q=a7(AQ);return Q.encodePolyfill?Q.encodePolyfill(A):new TextEncoder().encode(A)}function RN(A){let[Q,B]=A,Y=JSON.stringify(Q);function J(C){if(typeof Y==="string")Y=typeof C==="string"?Y+C:[Xd(Y),C];else Y.push(typeof C==="string"?Xd(C):C)}for(let C of B){let[X,G]=C;if(J(` ${JSON.stringify(X)} -`),typeof G==="string"||G instanceof Uint8Array)J(G);else{let W;try{W=JSON.stringify(G)}catch(F){W=JSON.stringify(SJ(G))}J(W)}}return typeof Y==="string"?Y:h$B(Y)}function h$B(A){let Q=A.reduce((J,C)=>J+C.length,0),B=new Uint8Array(Q),Y=0;for(let J of A)B.set(J,Y),Y+=J.length;return B}function Wd(A){return[{type:"span"},A]}function Fd(A){let Q=typeof A.data==="string"?Xd(A.data):A.data;return[{type:"attachment",length:Q.length,filename:A.filename,content_type:A.contentType,attachment_type:A.attachmentType},Q]}var x$B={session:"session",sessions:"session",attachment:"attachment",transaction:"transaction",event:"error",client_report:"internal",user_report:"default",profile:"profile",profile_chunk:"profile",replay_event:"replay",replay_recording:"replay",check_in:"monitor",feedback:"feedback",span:"span",raw_security:"security",log:"log_item"};function kj(A){return x$B[A]}function _j(A){if(!A?.sdk)return;let{name:Q,version:B}=A.sdk;return{name:Q,version:B}}function Zd(A,Q,B,Y){let J=A.sdkProcessingMetadata?.dynamicSamplingContext;return{event_id:A.event_id,sent_at:new Date().toISOString(),...Q&&{sdk:Q},...!!B&&Y&&{dsn:B1(Y)},...J&&{trace:J}}}function f$B(A,Q){if(!Q)return A;return A.sdk=A.sdk||{},A.sdk.name=A.sdk.name||Q.name,A.sdk.version=A.sdk.version||Q.version,A.sdk.integrations=[...A.sdk.integrations||[],...Q.integrations||[]],A.sdk.packages=[...A.sdk.packages||[],...Q.packages||[]],A}function jNA(A,Q,B,Y){let J=_j(B),C={sent_at:new Date().toISOString(),...J&&{sdk:J},...!!Y&&Q&&{dsn:B1(Q)}},X="aggregates"in A?[{type:"sessions"},A]:[{type:"session"},A.toJSON()];return f8(C,[X])}function ONA(A,Q,B,Y){let J=_j(B),C=A.type&&A.type!=="replay_event"?A.type:"event";f$B(A,B?.sdk);let X=Zd(A,J,Y,Q);return delete A.sdkProcessingMetadata,f8(X,[[{type:C},A]])}function PNA(A,Q){function B(Z){return!!Z.trace_id&&!!Z.public_key}let Y=i0(A[0]),J=Q?.getDsn(),C=Q?.getOptions().tunnel,X={sent_at:new Date().toISOString(),...B(Y)&&{trace:Y},...!!C&&J&&{dsn:B1(J)}},G=Q?.getOptions().beforeSendSpan,W=G?(Z)=>{let U=eA(Z),$=G(U);if(!$)return NN(),U;return $}:eA,F=[];for(let Z of A){let U=W(Z);if(U)F.push(Wd(U))}return f8(X,F)}function $d(A,Q,B,Y=Q1()){let J=Y&&K0(Y);if(J)OA&&e.log(`[Measurement] Setting measurement on root span: ${A} = ${Q} ${B}`),J.addEvent(A,{[qj]:Q,[Lj]:B})}function uZ(A){if(!A||A.length===0)return;let Q={};return A.forEach((B)=>{let Y=B.attributes||{},J=Y[Lj],C=Y[qj];if(typeof J==="string"&&typeof C==="number")Q[B.name]={value:C,unit:J}}),Q}var TNA=1000;class wN{constructor(A={}){if(this._traceId=A.traceId||y8(),this._spanId=A.spanId||g8(),this._startTime=A.startTimestamp||v8(),this._links=A.links,this._attributes={},this.setAttributes({[DQ]:"manual",[YQ]:A.op,...A.attributes}),this._name=A.name,A.parentSpanId)this._parentSpanId=A.parentSpanId;if("sampled"in A)this._sampled=A.sampled;if(A.endTimestamp)this._endTime=A.endTimestamp;if(this._events=[],this._isStandaloneSpan=A.isStandalone,this._endTime)this._onSpanEnded()}addLink(A){if(this._links)this._links.push(A);else this._links=[A];return this}addLinks(A){if(this._links)this._links.push(...A);else this._links=A;return this}recordException(A,Q){}spanContext(){let{_spanId:A,_traceId:Q,_sampled:B}=this;return{spanId:A,traceId:Q,traceFlags:B?Rj:zj}}setAttribute(A,Q){if(Q===void 0)delete this._attributes[A];else this._attributes[A]=Q;return this}setAttributes(A){return Object.keys(A).forEach((Q)=>this.setAttribute(Q,A[Q])),this}updateStartTime(A){this._startTime=r9(A)}setStatus(A){return this._status=A,this}updateName(A){return this._name=A,this.setAttribute(Q0,"custom"),this}end(A){if(this._endTime)return;this._endTime=r9(A),MN(this),this._onSpanEnded()}getSpanJSON(){return{data:this._attributes,description:this._name,op:this._attributes[YQ],parent_span_id:this._parentSpanId,span_id:this._spanId,start_timestamp:this._startTime,status:fZ(this._status),timestamp:this._endTime,trace_id:this._traceId,origin:this._attributes[DQ],profile_id:this._attributes[xE],exclusive_time:this._attributes[fE],measurements:uZ(this._events),is_segment:this._isStandaloneSpan&&K0(this)===this||void 0,segment_id:this._isStandaloneSpan?K0(this).spanContext().spanId:void 0,links:xZ(this._links)}}isRecording(){return!this._endTime&&!!this._sampled}addEvent(A,Q,B){OA&&e.log("[Tracing] Adding an event to span:",A);let Y=SNA(Q)?Q:B||v8(),J=SNA(Q)?{}:Q||{},C={name:A,time:r9(Y),attributes:J};return this._events.push(C),this}isStandaloneSpan(){return!!this._isStandaloneSpan}_onSpanEnded(){let A=gA();if(A)A.emit("spanEnd",this);if(!(this._isStandaloneSpan||this===K0(this)))return;if(this._isStandaloneSpan){if(this._sampled)m$B(PNA([this],A));else if(OA&&e.log("[Tracing] Discarding standalone span because its trace was not chosen to be sampled."),A)A.recordDroppedEvent("sample_rate","span");return}let B=this._convertSpanToTransaction();if(B)(A1(this).scope||sQ()).captureEvent(B)}_convertSpanToTransaction(){if(!kNA(eA(this)))return;if(!this._name)OA&&e.warn("Transaction has no name, falling back to ``."),this._name="";let{scope:A,isolationScope:Q}=A1(this),B=A?.getScopeData().sdkProcessingMetadata?.normalizedRequest;if(this._sampled!==!0)return;let J=DN(this).filter((F)=>F!==this&&!b$B(F)).map((F)=>eA(F)).filter(kNA),C=this._attributes[Q0];delete this._attributes[eC],J.forEach((F)=>{delete F.data[eC]});let X={contexts:{trace:ENA(this)},spans:J.length>TNA?J.sort((F,Z)=>F.start_timestamp-Z.start_timestamp).slice(0,TNA):J,start_timestamp:this._startTime,timestamp:this._endTime,transaction:this._name,type:"transaction",sdkProcessingMetadata:{capturedSpanScope:A,capturedSpanIsolationScope:Q,dynamicSamplingContext:i0(this)},request:B,...C&&{transaction_info:{source:C}}},G=uZ(this._events);if(G&&Object.keys(G).length)OA&&e.log("[Measurements] Adding measurements to transaction event",JSON.stringify(G,void 0,2)),X.measurements=G;return X}}function SNA(A){return A&&typeof A==="number"||A instanceof Date||Array.isArray(A)}function kNA(A){return!!A.start_timestamp&&!!A.timestamp&&!!A.span_id&&!!A.trace_id}function b$B(A){return A instanceof wN&&A.isStandaloneSpan()}function m$B(A){let Q=gA();if(!Q)return;let B=A[1];if(!B||B.length===0){Q.recordDroppedEvent("before_send","span");return}Q.sendEnvelope(A)}var Ud="__SENTRY_SUPPRESS_TRACING__";function b8(A,Q){let B=PN();if(B.startSpan)return B.startSpan(A,Q);let Y=Hd(A),{forceTransaction:J,parentSpan:C,scope:X}=A,G=X?.clone();return h8(G,()=>{return vNA(C)(()=>{let F=sQ(),Z=Dd(F),$=A.onlyIfParent&&!Z?new bZ:Id({parentSpan:Z,spanArguments:Y,forceTransaction:J,scope:F});return yZ(F,$),mZ(()=>Q($),()=>{let{status:E}=eA($);if($.isRecording()&&(!E||E==="ok"))$.setStatus({code:s9,message:"internal_error"})},()=>{$.end()})})})}function jN(A,Q){let B=PN();if(B.startSpanManual)return B.startSpanManual(A,Q);let Y=Hd(A),{forceTransaction:J,parentSpan:C,scope:X}=A,G=X?.clone();return h8(G,()=>{return vNA(C)(()=>{let F=sQ(),Z=Dd(F),$=A.onlyIfParent&&!Z?new bZ:Id({parentSpan:Z,spanArguments:Y,forceTransaction:J,scope:F});return yZ(F,$),mZ(()=>Q($,()=>$.end()),()=>{let{status:E}=eA($);if($.isRecording()&&(!E||E==="ok"))$.setStatus({code:s9,message:"internal_error"})})})})}function Ed(A){let Q=PN();if(Q.startInactiveSpan)return Q.startInactiveSpan(A);let B=Hd(A),{forceTransaction:Y,parentSpan:J}=A;return(A.scope?(X)=>h8(A.scope,X):J!==void 0?(X)=>GW(J,X):(X)=>X())(()=>{let X=sQ(),G=Dd(X);if(A.onlyIfParent&&!G)return new bZ;return Id({parentSpan:G,spanArguments:B,forceTransaction:Y,scope:X})})}var Kd=(A,Q)=>{let B=TJ(),Y=y5(B);if(Y.continueTrace)return Y.continueTrace(A,Q);let{sentryTrace:J,baggage:C}=A;return h8((X)=>{let G=hZ(J,C);return X.setPropagationContext(G),Q()})};function GW(A,Q){let B=PN();if(B.withActiveSpan)return B.withActiveSpan(A,Q);return h8((Y)=>{return yZ(Y,A||void 0),Q(Y)})}function ON(A){let Q=PN();if(Q.suppressTracing)return Q.suppressTracing(A);return h8((B)=>{return B.setSDKProcessingMetadata({[Ud]:!0}),A()})}function Vd(A){return h8((Q)=>{return Q.setPropagationContext({traceId:y8(),sampleRand:Math.random()}),OA&&e.info(`Starting a new trace with id ${Q.getPropagationContext().traceId}`),GW(null,A)})}function Id({parentSpan:A,spanArguments:Q,forceTransaction:B,scope:Y}){if(!U9()){let X=new bZ;if(B||!A){let G={sampled:"false",sample_rate:"0",transaction:Q.name,...i0(X)};Tj(X,G)}return X}let J=RQ(),C;if(A&&!B)C=u$B(A,Y,Q),uE(A,C);else if(A){let X=i0(A),{traceId:G,spanId:W}=A.spanContext(),F=XX(A);C=_NA({traceId:G,parentSpanId:W,...Q},Y,F),Tj(C,X)}else{let{traceId:X,dsc:G,parentSpanId:W,sampled:F}={...J.getPropagationContext(),...Y.getPropagationContext()};if(C=_NA({traceId:X,parentSpanId:W,...Q},Y,F),G)Tj(C,G)}return qN(C),EN(C,Y,J),C}function Hd(A){let B={isStandalone:(A.experimental||{}).standalone,...A};if(A.startTime){let Y={...B};return Y.startTimestamp=r9(A.startTime),delete Y.startTime,Y}return B}function PN(){let A=TJ();return y5(A)}function _NA(A,Q,B){let Y=gA(),J=Y?.getOptions()||{},{name:C=""}=A,X={spanAttributes:{...A.attributes},spanName:C,parentSampled:B};Y?.emit("beforeSampling",X,{decision:!1});let G=X.parentSampled??B,W=X.spanAttributes,F=Q.getPropagationContext(),[Z,U,$]=Q.getScopeData().sdkProcessingMetadata[Ud]?[!1]:zN(J,{name:C,parentSampled:G,attributes:W,parentSampleRate:x8(F.dsc?.sample_rate)},F.sampleRand),E=new wN({...A,attributes:{[Q0]:"custom",[g5]:U!==void 0&&$?U:void 0,...W},sampled:Z});if(!Z&&Y)OA&&e.log("[Tracing] Discarding root span because its trace was not chosen to be sampled."),Y.recordDroppedEvent("sample_rate","transaction");if(Y)Y.emit("spanStart",E);return E}function u$B(A,Q,B){let{spanId:Y,traceId:J}=A.spanContext(),C=Q.getScopeData().sdkProcessingMetadata[Ud]?!1:XX(A),X=C?new wN({...B,parentSpanId:Y,traceId:J,sampled:C}):new bZ({traceId:J});uE(A,X);let G=gA();if(G){if(G.emit("spanStart",X),B.endTimestamp)G.emit("spanEnd",X)}return X}function Dd(A){let Q=tC(A);if(!Q)return;let B=gA();if((B?B.getOptions():{}).parentSpanIsAlwaysRootSpan)return K0(Q);return Q}function vNA(A){return A!==void 0?(Q)=>{return GW(A,Q)}:(Q)=>Q()}var JG;(function(A){A[A.PENDING=0]="PENDING";let B=1;A[A.RESOLVED=B]="RESOLVED";let Y=2;A[A.REJECTED=Y]="REJECTED"})(JG||(JG={}));function J1(A){return new Y1((Q)=>{Q(A)})}function vj(A){return new Y1((Q,B)=>{B(A)})}class Y1{constructor(A){this._state=JG.PENDING,this._handlers=[],this._runExecutor(A)}then(A,Q){return new Y1((B,Y)=>{this._handlers.push([!1,(J)=>{if(!A)B(J);else try{B(A(J))}catch(C){Y(C)}},(J)=>{if(!Q)Y(J);else try{B(Q(J))}catch(C){Y(C)}}]),this._executeHandlers()})}catch(A){return this.then((Q)=>Q,A)}finally(A){return new Y1((Q,B)=>{let Y,J;return this.then((C)=>{if(J=!1,Y=C,A)A()},(C)=>{if(J=!0,Y=C,A)A()}).then(()=>{if(J){B(Y);return}Q(Y)})})}_executeHandlers(){if(this._state===JG.PENDING)return;let A=this._handlers.slice();this._handlers=[],A.forEach((Q)=>{if(Q[0])return;if(this._state===JG.RESOLVED)Q[1](this._value);if(this._state===JG.REJECTED)Q[2](this._value);Q[0]=!0})}_runExecutor(A){let Q=(J,C)=>{if(this._state!==JG.PENDING)return;if(_5(C)){C.then(B,Y);return}this._state=J,this._value=C,this._executeHandlers()},B=(J)=>{Q(JG.RESOLVED,J)},Y=(J)=>{Q(JG.REJECTED,J)};try{A(B,Y)}catch(J){Y(J)}}}function yj(A,Q,B,Y=0){return new Y1((J,C)=>{let X=A[Y];if(Q===null||typeof X!=="function")J(Q);else{let G=X({...Q},B);if(OA&&X.id&&G===null&&e.log(`Event processor "${X.id}" dropped event`),_5(G))G.then((W)=>yj(A,W,B,Y+1).then(J)).then(null,C);else yj(A,G,B,Y+1).then(J).then(null,C)}})}var gj,yNA,hj;function TN(A){let Q=AQ._sentryDebugIds;if(!Q)return{};let B=Object.keys(Q);if(hj&&B.length===yNA)return hj;return yNA=B.length,hj=B.reduce((Y,J)=>{if(!gj)gj={};let C=gj[J];if(C)Y[C[0]]=C[1];else{let X=A(J);for(let G=X.length-1;G>=0;G--){let F=X[G]?.filename,Z=Q[J];if(F&&Z){Y[F]=Z,gj[J]=[F,Z];break}}}return Y},{}),hj}function Nd(A,Q){let{fingerprint:B,span:Y,breadcrumbs:J,sdkProcessingMetadata:C}=Q;if(d$B(A,Q),Y)p$B(A,Y);i$B(A,B),c$B(A,J),l$B(A,C)}function dZ(A,Q){let{extra:B,tags:Y,user:J,contexts:C,level:X,sdkProcessingMetadata:G,breadcrumbs:W,fingerprint:F,eventProcessors:Z,attachments:U,propagationContext:$,transactionName:E,span:K}=Q;if(xj(A,"extra",B),xj(A,"tags",Y),xj(A,"user",J),xj(A,"contexts",C),A.sdkProcessingMetadata=QW(A.sdkProcessingMetadata,G,2),X)A.level=X;if(E)A.transactionName=E;if(K)A.span=K;if(W.length)A.breadcrumbs=[...A.breadcrumbs,...W];if(F.length)A.fingerprint=[...A.fingerprint,...F];if(Z.length)A.eventProcessors=[...A.eventProcessors,...Z];if(U.length)A.attachments=[...A.attachments,...U];A.propagationContext={...A.propagationContext,...$}}function xj(A,Q,B){A[Q]=QW(A[Q],B,1)}function d$B(A,Q){let{extra:B,tags:Y,user:J,contexts:C,level:X,transactionName:G}=Q;if(Object.keys(B).length)A.extra={...B,...A.extra};if(Object.keys(Y).length)A.tags={...Y,...A.tags};if(Object.keys(J).length)A.user={...J,...A.user};if(Object.keys(C).length)A.contexts={...C,...A.contexts};if(X)A.level=X;if(G&&A.type!=="transaction")A.transaction=G}function c$B(A,Q){let B=[...A.breadcrumbs||[],...Q];A.breadcrumbs=B.length?B:void 0}function l$B(A,Q){A.sdkProcessingMetadata={...A.sdkProcessingMetadata,...Q}}function p$B(A,Q){A.contexts={trace:XW(Q),...A.contexts},A.sdkProcessingMetadata={dynamicSamplingContext:i0(Q),...A.sdkProcessingMetadata};let B=K0(Q),Y=eA(B).description;if(Y&&!A.transaction&&A.type==="transaction")A.transaction=Y}function i$B(A,Q){if(A.fingerprint=A.fingerprint?Array.isArray(A.fingerprint)?A.fingerprint:[A.fingerprint]:[],Q)A.fingerprint=A.fingerprint.concat(Q);if(!A.fingerprint.length)delete A.fingerprint}function gNA(A,Q,B,Y,J,C){let{normalizeDepth:X=3,normalizeMaxBreadth:G=1000}=A,W={...Q,event_id:Q.event_id||B.event_id||UY(),timestamp:Q.timestamp||e6()},F=B.integrations||A.integrations.map((V)=>V.name);if(n$B(W,A),a$B(W,F),J)J.emit("applyFrameMetadata",Q);if(Q.type===void 0)s$B(W,A.stackParser);let Z=t$B(Y,B.captureContext);if(B.mechanism)AW(W,B.mechanism);let U=J?J.getEventProcessors():[],$=QG().getScopeData();if(C){let V=C.getScopeData();dZ($,V)}if(Z){let V=Z.getScopeData();dZ($,V)}let E=[...B.attachments||[],...$.attachments];if(E.length)B.attachments=E;Nd(W,$);let K=[...U,...$.eventProcessors];return yj(K,W,B).then((V)=>{if(V)r$B(V);if(typeof X==="number"&&X>0)return o$B(V,X,G);return V})}function n$B(A,Q){let{environment:B,release:Y,dist:J,maxValueLength:C=250}=Q;if(A.environment=A.environment||B||pE,!A.release&&Y)A.release=Y;if(!A.dist&&J)A.dist=J;let X=A.request;if(X?.url)X.url=n9(X.url,C)}function s$B(A,Q){let B=TN(Q);A.exception?.values?.forEach((Y)=>{Y.stacktrace?.frames?.forEach((J)=>{if(J.filename)J.debug_id=B[J.filename]})})}function r$B(A){let Q={};if(A.exception?.values?.forEach((Y)=>{Y.stacktrace?.frames?.forEach((J)=>{if(J.debug_id){if(J.abs_path)Q[J.abs_path]=J.debug_id;else if(J.filename)Q[J.filename]=J.debug_id;delete J.debug_id}})}),Object.keys(Q).length===0)return;A.debug_meta=A.debug_meta||{},A.debug_meta.images=A.debug_meta.images||[];let B=A.debug_meta.images;Object.entries(Q).forEach(([Y,J])=>{B.push({type:"sourcemap",code_file:Y,debug_id:J})})}function a$B(A,Q){if(Q.length>0)A.sdk=A.sdk||{},A.sdk.integrations=[...A.sdk.integrations||[],...Q]}function o$B(A,Q,B){if(!A)return null;let Y={...A,...A.breadcrumbs&&{breadcrumbs:A.breadcrumbs.map((J)=>({...J,...J.data&&{data:SJ(J.data,Q,B)}}))},...A.user&&{user:SJ(A.user,Q,B)},...A.contexts&&{contexts:SJ(A.contexts,Q,B)},...A.extra&&{extra:SJ(A.extra,Q,B)}};if(A.contexts?.trace&&Y.contexts){if(Y.contexts.trace=A.contexts.trace,A.contexts.trace.data)Y.contexts.trace.data=SJ(A.contexts.trace.data,Q,B)}if(A.spans)Y.spans=A.spans.map((J)=>{return{...J,...J.data&&{data:SJ(J.data,Q,B)}}});if(A.contexts?.flags&&Y.contexts)Y.contexts.flags=SJ(A.contexts.flags,3,B);return Y}function t$B(A,Q){if(!Q)return A;let B=A?A.clone():new UJ;return B.update(Q),B}function hNA(A){if(!A)return;if(e$B(A))return{captureContext:A};if(Q4B(A))return{captureContext:A};return A}function e$B(A){return A instanceof UJ||typeof A==="function"}var A4B=["user","level","extra","contexts","tags","fingerprint","propagationContext"];function Q4B(A){return Object.keys(A).some((Q)=>A4B.includes(Q))}function jB(A,Q){return sQ().captureException(A,hNA(Q))}function iE(A,Q){let B=typeof Q==="string"?Q:void 0,Y=typeof Q!=="string"?{captureContext:Q}:void 0;return sQ().captureMessage(A,B,Y)}function kN(A,Q){return sQ().captureEvent(A,Q)}function Ld(A,Q){RQ().setContext(A,Q)}function qd(A){RQ().setExtras(A)}function Md(A,Q){RQ().setExtra(A,Q)}function zd(A){RQ().setTags(A)}function Rd(A,Q){RQ().setTag(A,Q)}function wd(A){RQ().setUser(A)}function jd(){return RQ().lastEventId()}function SN(A,Q){let B=sQ(),Y=gA();if(!Y)OA&&e.warn("Cannot capture check-in. No client defined.");else if(!Y.captureCheckIn)OA&&e.warn("Cannot capture check-in. Client does not support sending check-ins.");else return Y.captureCheckIn(A,Q,B);return UY()}function GX(A,Q,B){let Y=SN({monitorSlug:A,status:"in_progress"},B),J=v8();function C(X){SN({monitorSlug:A,status:X,checkInId:Y,duration:v8()-J})}return BG(()=>{let X;try{X=Q()}catch(G){throw C("error"),G}if(_5(X))Promise.resolve(X).then(()=>{C("ok")},(G)=>{throw C("error"),G});else C("ok");return X})}async function Od(A){let Q=gA();if(Q)return Q.flush(A);return OA&&e.warn("Cannot flush events. No client defined."),Promise.resolve(!1)}async function Pd(A){let Q=gA();if(Q)return Q.close(A);return OA&&e.warn("Cannot flush events and disable SDK. No client defined."),Promise.resolve(!1)}function cZ(){return!!gA()}function _N(){let A=gA();return A?.getOptions().enabled!==!1&&!!A?.getTransport()}function Td(A){RQ().addEventProcessor(A)}function vN(A){let Q=RQ(),B=sQ(),{userAgent:Y}=AQ.navigator||{},J=ANA({user:B.getUser()||Q.getUser(),...Y&&{userAgent:Y},...A}),C=Q.getSession();if(C?.status==="ok")AG(C,{status:"exited"});return lZ(),Q.setSession(J),J}function lZ(){let A=RQ(),B=sQ().getSession()||A.getSession();if(B)QNA(B);xNA(),A.setSession()}function xNA(){let A=RQ(),Q=gA(),B=A.getSession();if(B&&Q)Q.captureSession(B)}function Sd(A=!1){if(A){lZ();return}xNA()}var B4B="7";function Y4B(A){let Q=A.protocol?`${A.protocol}:`:"",B=A.port?`:${A.port}`:"";return`${Q}//${A.host}${B}${A.path?`/${A.path}`:""}/api/`}function J4B(A){return`${Y4B(A)}${A.projectId}/envelope/`}function C4B(A,Q){let B={sentry_version:B4B};if(A.publicKey)B.sentry_key=A.publicKey;if(Q)B.sentry_client=`${Q.name}/${Q.version}`;return new URLSearchParams(B).toString()}function fNA(A,Q,B){return Q?Q:`${J4B(A)}?${C4B(A,B)}`}var bNA=[];function X4B(A){let Q={};return A.forEach((B)=>{let{name:Y}=B,J=Q[Y];if(J&&!J.isDefaultInstance&&B.isDefaultInstance)return;Q[Y]=B}),Object.values(Q)}function kd(A){let Q=A.defaultIntegrations||[],B=A.integrations;Q.forEach((J)=>{J.isDefaultInstance=!0});let Y;if(Array.isArray(B))Y=[...Q,...B];else if(typeof B==="function"){let J=B(Q);Y=Array.isArray(J)?J:[J]}else Y=Q;return X4B(Y)}function mNA(A,Q){let B={};return Q.forEach((Y)=>{if(Y)vd(A,Y,B)}),B}function _d(A,Q){for(let B of Q)if(B?.afterAllSetup)B.afterAllSetup(A)}function vd(A,Q,B){if(B[Q.name]){OA&&e.log(`Integration skipped because it was already installed: ${Q.name}`);return}if(B[Q.name]=Q,bNA.indexOf(Q.name)===-1&&typeof Q.setupOnce==="function")Q.setupOnce(),bNA.push(Q.name);if(Q.setup&&typeof Q.setup==="function")Q.setup(A);if(typeof Q.preprocessEvent==="function"){let Y=Q.preprocessEvent.bind(Q);A.on("preprocessEvent",(J,C)=>Y(J,C,A))}if(typeof Q.processEvent==="function"){let Y=Q.processEvent.bind(Q),J=Object.assign((C,X)=>Y(C,X,A),{id:Q.name});A.addEventProcessor(J)}OA&&e.log(`Integration installed: ${Q.name}`)}function yd(A){let Q=gA();if(!Q){OA&&e.warn(`Cannot add integration "${A.name}" because no SDK Client is available.`);return}Q.addIntegration(A)}function wA(A){return A}function fj(A){let Q=[];if(A.message)Q.push(A.message);try{let B=A.exception.values[A.exception.values.length-1];if(B?.value){if(Q.push(B.value),B.type)Q.push(`${B.type}: ${B.value}`)}}catch(B){}return Q}function uNA(A){let{trace_id:Q,parent_span_id:B,span_id:Y,status:J,origin:C,data:X,op:G}=A.contexts?.trace??{};return{data:X??{},description:A.transaction,op:G,parent_span_id:B,span_id:Y??"",start_timestamp:A.start_timestamp??0,status:J,timestamp:A.timestamp,trace_id:Q??"",origin:C,profile_id:X?.[xE],exclusive_time:X?.[fE],measurements:A.measurements,is_segment:!0}}function dNA(A){return{type:"transaction",timestamp:A.timestamp,start_timestamp:A.start_timestamp,transaction:A.description,contexts:{trace:{trace_id:A.trace_id,span_id:A.span_id,parent_span_id:A.parent_span_id,op:A.op,status:A.status,origin:A.origin,data:{...A.data,...A.profile_id&&{[xE]:A.profile_id},...A.exclusive_time&&{[fE]:A.exclusive_time}}}},measurements:A.measurements}}function cNA(A,Q,B){let Y=[{type:"client_report"},{timestamp:B||e6(),discarded_events:A}];return f8(Q?{dsn:Q}:{},[Y])}var lNA="Not capturing exception because it's already been captured.",pNA="Discarded session because of missing or non-string release",sNA=Symbol.for("SentryInternalError"),rNA=Symbol.for("SentryDoNotSendEventError");function bj(A){return{message:A,[sNA]:!0}}function gd(A){return{message:A,[rNA]:!0}}function iNA(A){return!!A&&typeof A==="object"&&sNA in A}function nNA(A){return!!A&&typeof A==="object"&&rNA in A}class xd{constructor(A){if(this._options=A,this._integrations={},this._numProcessing=0,this._outcomes={},this._hooks={},this._eventProcessors=[],A.dsn)this._dsn=RNA(A.dsn);else OA&&e.warn("No DSN provided, client will not send events.");if(this._dsn){let Q=fNA(this._dsn,A.tunnel,A._metadata?A._metadata.sdk:void 0);this._transport=A.transport({tunnel:this._options.tunnel,recordDroppedEvent:this.recordDroppedEvent.bind(this),...A.transportOptions,url:Q})}}captureException(A,Q,B){let Y=UY();if(Nj(A))return OA&&e.log(lNA),Y;let J={event_id:Y,...Q};return this._process(this.eventFromException(A,J).then((C)=>this._captureEvent(C,J,B))),J.event_id}captureMessage(A,Q,B,Y){let J={event_id:UY(),...B},C=vZ(A)?A:String(A),X=UN(A)?this.eventFromMessage(C,Q,J):this.eventFromException(A,J);return this._process(X.then((G)=>this._captureEvent(G,J,Y))),J.event_id}captureEvent(A,Q,B){let Y=UY();if(Q?.originalException&&Nj(Q.originalException))return OA&&e.log(lNA),Y;let J={event_id:Y,...Q},C=A.sdkProcessingMetadata||{},X=C.capturedSpanScope,G=C.capturedSpanIsolationScope;return this._process(this._captureEvent(A,J,X||B,G)),J.event_id}captureSession(A){this.sendSession(A),AG(A,{init:!1})}getDsn(){return this._dsn}getOptions(){return this._options}getSdkMetadata(){return this._options._metadata}getTransport(){return this._transport}flush(A){let Q=this._transport;if(Q)return this.emit("flush"),this._isClientDoneProcessing(A).then((B)=>{return Q.flush(A).then((Y)=>B&&Y)});else return J1(!0)}close(A){return this.flush(A).then((Q)=>{return this.getOptions().enabled=!1,this.emit("close"),Q})}getEventProcessors(){return this._eventProcessors}addEventProcessor(A){this._eventProcessors.push(A)}init(){if(this._isEnabled()||this._options.integrations.some(({name:A})=>A.startsWith("Spotlight")))this._setupIntegrations()}getIntegrationByName(A){return this._integrations[A]}addIntegration(A){let Q=this._integrations[A.name];if(vd(this,A,this._integrations),!Q)_d(this,[A])}sendEvent(A,Q={}){this.emit("beforeSendEvent",A,Q);let B=ONA(A,this._dsn,this._options._metadata,this._options.tunnel);for(let J of Q.attachments||[])B=Gd(B,Fd(J));let Y=this.sendEnvelope(B);if(Y)Y.then((J)=>this.emit("afterSendEvent",A,J),null)}sendSession(A){let{release:Q,environment:B=pE}=this._options;if("aggregates"in A){let J=A.attrs||{};if(!J.release&&!Q){OA&&e.warn(pNA);return}J.release=J.release||Q,J.environment=J.environment||B,A.attrs=J}else{if(!A.release&&!Q){OA&&e.warn(pNA);return}A.release=A.release||Q,A.environment=A.environment||B}this.emit("beforeSendSession",A);let Y=jNA(A,this._dsn,this._options._metadata,this._options.tunnel);this.sendEnvelope(Y)}recordDroppedEvent(A,Q,B=1){if(this._options.sendClientReports){let Y=`${A}:${Q}`;OA&&e.log(`Recording outcome: "${Y}"${B>1?` (${B} times)`:""}`),this._outcomes[Y]=(this._outcomes[Y]||0)+B}}on(A,Q){let B=this._hooks[A]=this._hooks[A]||[];return B.push(Q),()=>{let Y=B.indexOf(Q);if(Y>-1)B.splice(Y,1)}}emit(A,...Q){let B=this._hooks[A];if(B)B.forEach((Y)=>Y(...Q))}sendEnvelope(A){if(this.emit("beforeEnvelope",A),this._isEnabled()&&this._transport)return this._transport.send(A).then(null,(Q)=>{return OA&&e.error("Error while sending envelope:",Q),Q});return OA&&e.error("Transport disabled"),J1({})}_setupIntegrations(){let{integrations:A}=this._options;this._integrations=mNA(this,A),_d(this,A)}_updateSessionFromEvent(A,Q){let B=Q.level==="fatal",Y=!1,J=Q.exception?.values;if(J){Y=!0;for(let G of J)if(G.mechanism?.handled===!1){B=!0;break}}let C=A.status==="ok";if(C&&A.errors===0||C&&B)AG(A,{...B&&{status:"crashed"},errors:A.errors||Number(Y||B)}),this.captureSession(A)}_isClientDoneProcessing(A){return new Y1((Q)=>{let B=0,Y=1,J=setInterval(()=>{if(this._numProcessing==0)clearInterval(J),Q(!0);else if(B+=Y,A&&B>=A)clearInterval(J),Q(!1)},Y)})}_isEnabled(){return this.getOptions().enabled!==!1&&this._transport!==void 0}_prepareEvent(A,Q,B,Y){let J=this.getOptions(),C=Object.keys(this._integrations);if(!Q.integrations&&C?.length)Q.integrations=C;if(this.emit("preprocessEvent",A,Q),!A.type)Y.setLastEventId(A.event_id||Q.event_id);return gNA(J,A,Q,B,this,Y).then((X)=>{if(X===null)return X;this.emit("postprocessEvent",X,Q),X.contexts={trace:hE(B),...X.contexts};let G=YG(this,B);return X.sdkProcessingMetadata={dynamicSamplingContext:G,...X.sdkProcessingMetadata},X})}_captureEvent(A,Q={},B=sQ(),Y=RQ()){if(OA&&hd(A))e.log(`Captured error event \`${fj(A)[0]||""}\``);return this._processEvent(A,Q,B,Y).then((J)=>{return J.event_id},(J)=>{if(OA)if(nNA(J))e.log(J.message);else if(iNA(J))e.warn(J.message);else e.warn(J);return})}_processEvent(A,Q,B,Y){let J=this.getOptions(),{sampleRate:C}=J,X=aNA(A),G=hd(A),W=A.type||"error",F=`before send for type \`${W}\``,Z=typeof C>"u"?void 0:x8(C);if(G&&typeof Z==="number"&&Math.random()>Z)return this.recordDroppedEvent("sample_rate","error"),vj(gd(`Discarding event because it's not included in the random sample (sampling rate = ${C})`));let U=W==="replay_event"?"replay":W;return this._prepareEvent(A,Q,B,Y).then(($)=>{if($===null)throw this.recordDroppedEvent("event_processor",U),gd("An event processor returned `null`, will not send event.");if(Q.data&&Q.data.__sentry__===!0)return $;let K=W4B(this,J,$,Q);return G4B(K,F)}).then(($)=>{if($===null){if(this.recordDroppedEvent("before_send",U),X){let V=1+(A.spans||[]).length;this.recordDroppedEvent("before_send","span",V)}throw gd(`${F} returned \`null\`, will not send event.`)}let E=B.getSession()||Y.getSession();if(G&&E)this._updateSessionFromEvent(E,$);if(X){let I=$.sdkProcessingMetadata?.spanCountBeforeProcessing||0,V=$.spans?$.spans.length:0,H=I-V;if(H>0)this.recordDroppedEvent("before_send","span",H)}let K=$.transaction_info;if(X&&K&&$.transaction!==A.transaction)$.transaction_info={...K,source:"custom"};return this.sendEvent($,Q),$}).then(null,($)=>{if(nNA($)||iNA($))throw $;throw this.captureException($,{data:{__sentry__:!0},originalException:$}),bj(`Event processing pipeline threw an error, original event will not be sent. Details have been sent as a new event. -Reason: ${$}`)})}_process(A){this._numProcessing++,A.then((Q)=>{return this._numProcessing--,Q},(Q)=>{return this._numProcessing--,Q})}_clearOutcomes(){let A=this._outcomes;return this._outcomes={},Object.entries(A).map(([Q,B])=>{let[Y,J]=Q.split(":");return{reason:Y,category:J,quantity:B}})}_flushOutcomes(){OA&&e.log("Flushing outcomes...");let A=this._clearOutcomes();if(A.length===0){OA&&e.log("No outcomes to send");return}if(!this._dsn){OA&&e.log("No dsn provided, will not send outcomes");return}OA&&e.log("Sending outcomes:",A);let Q=cNA(A,this._options.tunnel&&B1(this._dsn));this.sendEnvelope(Q)}}function G4B(A,Q){let B=`${Q} must return \`null\` or a valid event.`;if(_5(A))return A.then((Y)=>{if(!k5(Y)&&Y!==null)throw bj(B);return Y},(Y)=>{throw bj(`${Q} rejected with ${Y}`)});else if(!k5(A)&&A!==null)throw bj(B);return A}function W4B(A,Q,B,Y){let{beforeSend:J,beforeSendTransaction:C,beforeSendSpan:X}=Q,G=B;if(hd(G)&&J)return J(G,Y);if(aNA(G)){if(X){let W=X(uNA(G));if(!W)NN();else G=QW(B,dNA(W));if(G.spans){let F=[];for(let Z of G.spans){let U=X(Z);if(!U)NN(),F.push(Z);else F.push(U)}G.spans=F}}if(C){if(G.spans){let W=G.spans.length;G.sdkProcessingMetadata={...B.sdkProcessingMetadata,spanCountBeforeProcessing:W}}return C(G,Y)}}return G}function hd(A){return A.type===void 0}function aNA(A){return A.type==="transaction"}function mj(A,Q){if(!Q)return[void 0,void 0];let B=tC(Q),Y=B?XW(B):hE(Q);return[B?i0(B):YG(A,Q),Y]}function oNA(A,Q,B,Y,J){let C={sent_at:new Date().toISOString()};if(B?.sdk)C.sdk={name:B.sdk.name,version:B.sdk.version};if(!!Y&&!!J)C.dsn=B1(J);if(Q)C.trace=Q;let X=F4B(A);return f8(C,[X])}function F4B(A){return[{type:"check_in"},A]}var tNA={trace:1,debug:5,info:9,warn:13,error:17,fatal:21};function Z4B(A){return[{type:"log",item_count:A.length,content_type:"application/vnd.sentry.items.log+json"},{items:A}]}function eNA(A,Q,B,Y){let J={};if(Q?.sdk)J.sdk={name:Q.sdk.name,version:Q.sdk.version};if(!!B&&!!Y)J.dsn=B1(Y);return f8(J,[Z4B(A)])}var $4B=100;AQ._sentryClientToLogBufferMap=new WeakMap;function U4B(A){switch(typeof A){case"number":if(Number.isInteger(A))return{value:A,type:"integer"};return{value:A,type:"double"};case"boolean":return{value:A,type:"boolean"};case"string":return{value:A,type:"string"};default:{let Q="";try{Q=JSON.stringify(A)??""}catch{}return{value:Q,type:"string"}}}}function pZ(A,Q=gA(),B=sQ()){if(!Q){OA&&e.warn("No client available to capture log.");return}let{_experiments:Y,release:J,environment:C}=Q.getOptions(),{enableLogs:X=!1,beforeSendLog:G}=Y??{};if(!X){OA&&e.warn("logging option not enabled, log will not be captured.");return}let[,W]=mj(Q,B),F={...A.attributes};if(J)F["sentry.release"]=J;if(C)F["sentry.environment"]=C;let{sdk:Z}=Q.getSdkMetadata()??{};if(Z)F["sentry.sdk.name"]=Z.name,F["sentry.sdk.version"]=Z.version;let U=A.message;if(vZ(U)){let{__sentry_template_string__:M,__sentry_template_values__:N=[]}=U;F["sentry.message.template"]=M,N.forEach((q,w)=>{F[`sentry.message.parameter.${w}`]=q})}let $=tC(B);if($)F["sentry.trace.parent_span_id"]=$.spanContext().spanId;let E={...A,attributes:F};Q.emit("beforeCaptureLog",E);let K=G?G(E):E;if(!K){Q.recordDroppedEvent("before_send","log_item",1),OA&&e.warn("beforeSendLog returned null, log will not be captured.");return}let{level:I,message:V,attributes:H={},severityNumber:D}=K,L={timestamp:v8(),level:I,body:V,trace_id:W?.trace_id,severity_number:D??tNA[I],attributes:Object.keys(H).reduce((M,N)=>{return M[N]=U4B(H[N]),M},{})},z=ALA(Q);if(z===void 0)AQ._sentryClientToLogBufferMap?.set(Q,[L]);else if(AQ._sentryClientToLogBufferMap?.set(Q,[...z,L]),z.length>=$4B)WW(Q,z);Q.emit("afterCaptureLog",K)}function WW(A,Q){let B=Q??ALA(A)??[];if(B.length===0)return;let Y=A.getOptions(),J=eNA(B,Y._metadata,Y.tunnel,A.getDsn());AQ._sentryClientToLogBufferMap?.set(A,[]),A.emit("flushLogs"),A.sendEnvelope(J)}function ALA(A){return AQ._sentryClientToLogBufferMap?.get(A)}function QLA(A,Q){return A(Q.stack||"",1)}function fd(A,Q){let B={type:Q.name||Q.constructor.name,value:Q.message},Y=QLA(A,Q);if(Y.length)B.stacktrace={frames:Y};return B}function E4B(A){for(let Q in A)if(Object.prototype.hasOwnProperty.call(A,Q)){let B=A[Q];if(B instanceof Error)return B}return}function K4B(A){if("name"in A&&typeof A.name==="string"){let Y=`'${A.name}' captured as exception`;if("message"in A&&typeof A.message==="string")Y+=` with message '${A.message}'`;return Y}else if("message"in A&&typeof A.message==="string")return A.message;let Q=xu(A);if(dDA(A))return`Event \`ErrorEvent\` captured as exception with message \`${A.message}\``;let B=V4B(A);return`${B&&B!=="Object"?`'${B}'`:"Object"} captured as exception with keys: ${Q}`}function V4B(A){try{let Q=Object.getPrototypeOf(A);return Q?Q.constructor.name:void 0}catch(Q){}}function I4B(A,Q,B,Y){if(aC(B))return[B,void 0];if(Q.synthetic=!0,k5(B)){let C=A?.getOptions().normalizeDepth,X={["__serialized__"]:Cd(B,C)},G=E4B(B);if(G)return[G,X];let W=K4B(B),F=Y?.syntheticException||Error(W);return F.message=W,[F,X]}let J=Y?.syntheticException||Error(B);return J.message=`${B}`,[J,void 0]}function BLA(A,Q,B,Y){let C=Y?.data&&Y.data.mechanism||{handled:!0,type:"generic"},[X,G]=I4B(A,C,B,Y),W={exception:{values:[fd(Q,X)]}};if(G)W.extra=G;return bu(W,void 0,void 0),AW(W,C),{...W,event_id:Y?.event_id}}function YLA(A,Q,B="info",Y,J){let C={event_id:Y?.event_id,level:B};if(J&&Y?.syntheticException){let X=QLA(A,Y.syntheticException);if(X.length)C.exception={values:[{value:Q,stacktrace:{frames:X}}]},AW(C,{synthetic:!0})}if(vZ(Q)){let{__sentry_template_string__:X,__sentry_template_values__:G}=Q;return C.logentry={message:X,params:G},C}return C.message=Q,C}var H4B=5000;class uj extends xd{constructor(A){qNA();super(A);if(this._logWeight=0,this._options._experiments?.enableLogs){let Q=this;Q.on("flushLogs",()=>{Q._logWeight=0,clearTimeout(Q._logFlushIdleTimeout)}),Q.on("afterCaptureLog",(B)=>{if(Q._logWeight+=D4B(B),Q._logWeight>=800000)WW(Q);else Q._logFlushIdleTimeout=setTimeout(()=>{WW(Q)},H4B)}),Q.on("flush",()=>{WW(Q)})}}eventFromException(A,Q){let B=BLA(this,this._options.stackParser,A,Q);return B.level="error",J1(B)}eventFromMessage(A,Q="info",B){return J1(YLA(this._options.stackParser,A,Q,B,this._options.attachStacktrace))}captureException(A,Q,B){return JLA(Q),super.captureException(A,Q,B)}captureEvent(A,Q,B){if(!A.type&&A.exception?.values&&A.exception.values.length>0)JLA(Q);return super.captureEvent(A,Q,B)}captureCheckIn(A,Q,B){let Y="checkInId"in A&&A.checkInId?A.checkInId:UY();if(!this._isEnabled())return OA&&e.warn("SDK not enabled, will not capture check-in."),Y;let J=this.getOptions(),{release:C,environment:X,tunnel:G}=J,W={check_in_id:Y,monitor_slug:A.monitorSlug,status:A.status,release:C,environment:X};if("duration"in A)W.duration=A.duration;if(Q)W.monitor_config={schedule:Q.schedule,checkin_margin:Q.checkinMargin,max_runtime:Q.maxRuntime,timezone:Q.timezone,failure_issue_threshold:Q.failureIssueThreshold,recovery_threshold:Q.recoveryThreshold};let[F,Z]=mj(this,B);if(Z)W.contexts={trace:Z};let U=oNA(W,F,this.getSdkMetadata(),G,this.getDsn());return OA&&e.info("Sending checkin:",A.monitorSlug,A.status),this.sendEnvelope(U),Y}_prepareEvent(A,Q,B,Y){if(this._options.platform)A.platform=A.platform||this._options.platform;if(this._options.runtime)A.contexts={...A.contexts,runtime:A.contexts?.runtime||this._options.runtime};if(this._options.serverName)A.server_name=A.server_name||this._options.serverName;return super._prepareEvent(A,Q,B,Y)}}function JLA(A){let Q=RQ().getScopeData().sdkProcessingMetadata.requestSession;if(Q){let B=A?.mechanism?.handled??!0;if(B&&Q.status!=="crashed")Q.status="errored";else if(!B)Q.status="crashed"}}function D4B(A){let Q=0;if(A.message)Q+=A.message.length*2;if(A.attributes)Object.values(A.attributes).forEach((B)=>{if(Array.isArray(B))Q+=B.length*CLA(B[0]);else if(UN(B))Q+=CLA(B);else Q+=100});return Q}function CLA(A){if(typeof A==="string")return A.length*2;else if(typeof A==="number")return 8;else if(typeof A==="boolean")return 4;return 0}function bd(A){sQ().setClient(A)}var md=Symbol.for("SentryBufferFullError");function XLA(A){let Q=[];function B(){return A===void 0||Q.lengthY(G)).then(null,()=>Y(G).then(null,()=>{})),G}function C(X){return new Y1((G,W)=>{let F=Q.length;if(!F)return G(!0);let Z=setTimeout(()=>{if(X&&X>0)G(!1)},X);Q.forEach((U)=>{J1(U).then(()=>{if(!--F)clearTimeout(Z),G(!0)},W)})})}return{$:Q,add:J,drain:C}}function N4B(A,Q=Date.now()){let B=parseInt(`${A}`,10);if(!isNaN(B))return B*1000;let Y=Date.parse(`${A}`);if(!isNaN(Y))return Y-Q;return 60000}function L4B(A,Q){return A[Q]||A.all||0}function GLA(A,Q,B=Date.now()){return L4B(A,Q)>B}function WLA(A,{statusCode:Q,headers:B},Y=Date.now()){let J={...A},C=B?.["x-sentry-rate-limits"],X=B?.["retry-after"];if(C)for(let G of C.trim().split(",")){let[W,F,,,Z]=G.split(":",5),U=parseInt(W,10),$=(!isNaN(U)?U:60)*1000;if(!F)J.all=Y+$;else for(let E of F.split(";"))if(E==="metric_bucket"){if(!Z||Z.split(";").includes("custom"))J[E]=Y+$}else J[E]=Y+$}else if(X)J.all=Y+N4B(X,Y);else if(Q===429)J.all=Y+60000;return J}var q4B=64;function nE(A,Q,B=XLA(A.bufferSize||q4B)){let Y={},J=(X)=>B.drain(X);function C(X){let G=[];if(Sj(X,(U,$)=>{let E=kj($);if(GLA(Y,E))A.recordDroppedEvent("ratelimit_backoff",E);else G.push(U)}),G.length===0)return J1({});let W=f8(X[0],G),F=(U)=>{Sj(W,($,E)=>{A.recordDroppedEvent(U,kj(E))})},Z=()=>Q({body:RN(W)}).then((U)=>{if(U.statusCode!==void 0&&(U.statusCode<200||U.statusCode>=300))OA&&e.warn(`Sentry responded with status code ${U.statusCode} to sent event.`);return Y=WLA(Y,U),U},(U)=>{throw F("network_error"),OA&&e.error("Encountered error running transport request:",U),U});return B.add(Z).then((U)=>U,(U)=>{if(U===md)return OA&&e.error("Skipped sending event because buffer is full."),F("queue_overflow"),J1({});else throw U})}return{send:C,flush:J}}function dj(A,...Q){let B=new String(String.raw(A,...Q));return B.__sentry_template_string__=A.join("\x00").replace(/%/g,"%%").replace(/\0/g,"%s"),B.__sentry_template_values__=Q,B}var ud=dj;function dd(A,Q,B=[Q],Y="npm"){let J=A._metadata||{};if(!J.sdk)J.sdk={name:`sentry.javascript.${Q}`,packages:B.map((C)=>({name:`${Y}:@sentry/${C}`,version:l0})),version:l0};A._metadata=J}function CG(A={}){let Q=gA();if(!_N()||!Q)return{};let B=TJ(),Y=y5(B);if(Y.getTraceData)return Y.getTraceData(A);let J=sQ(),C=A.span||Q1(),X=C?HN(C):M4B(J),G=C?i0(C):YG(Q,J),W=JW(G);if(!VN.test(X))return e.warn("Invalid sentry-trace data. Cannot generate trace data"),{};return{"sentry-trace":X,baggage:W}}function M4B(A){let{traceId:Q,sampled:B,propagationSpanId:Y}=A.getPropagationContext();return CW(Q,Y,B)}function cd(){return Object.entries(CG()).map(([A,Q])=>``).join(` +`),typeof G==="string"||G instanceof Uint8Array)J(G);else{let W;try{W=JSON.stringify(G)}catch(F){W=JSON.stringify(SJ(G))}J(W)}}return typeof Y==="string"?Y:h$B(Y)}function h$B(A){let Q=A.reduce((J,C)=>J+C.length,0),B=new Uint8Array(Q),Y=0;for(let J of A)B.set(J,Y),Y+=J.length;return B}function Wd(A){return[{type:"span"},A]}function Fd(A){let Q=typeof A.data==="string"?Xd(A.data):A.data;return[{type:"attachment",length:Q.length,filename:A.filename,content_type:A.contentType,attachment_type:A.attachmentType},Q]}var x$B={session:"session",sessions:"session",attachment:"attachment",transaction:"transaction",event:"error",client_report:"internal",user_report:"default",profile:"profile",profile_chunk:"profile",replay_event:"replay",replay_recording:"replay",check_in:"monitor",feedback:"feedback",span:"span",raw_security:"security",log:"log_item"};function kj(A){return x$B[A]}function _j(A){if(!A?.sdk)return;let{name:Q,version:B}=A.sdk;return{name:Q,version:B}}function Zd(A,Q,B,Y){let J=A.sdkProcessingMetadata?.dynamicSamplingContext;return{event_id:A.event_id,sent_at:new Date().toISOString(),...Q&&{sdk:Q},...!!B&&Y&&{dsn:B1(Y)},...J&&{trace:J}}}function f$B(A,Q){if(!Q)return A;return A.sdk=A.sdk||{},A.sdk.name=A.sdk.name||Q.name,A.sdk.version=A.sdk.version||Q.version,A.sdk.integrations=[...A.sdk.integrations||[],...Q.integrations||[]],A.sdk.packages=[...A.sdk.packages||[],...Q.packages||[]],A}function jNA(A,Q,B,Y){let J=_j(B),C={sent_at:new Date().toISOString(),...J&&{sdk:J},...!!Y&&Q&&{dsn:B1(Q)}},X="aggregates"in A?[{type:"sessions"},A]:[{type:"session"},A.toJSON()];return f8(C,[X])}function ONA(A,Q,B,Y){let J=_j(B),C=A.type&&A.type!=="replay_event"?A.type:"event";f$B(A,B?.sdk);let X=Zd(A,J,Y,Q);return delete A.sdkProcessingMetadata,f8(X,[[{type:C},A]])}function PNA(A,Q){function B(Z){return!!Z.trace_id&&!!Z.public_key}let Y=i0(A[0]),J=Q?.getDsn(),C=Q?.getOptions().tunnel,X={sent_at:new Date().toISOString(),...B(Y)&&{trace:Y},...!!C&&J&&{dsn:B1(J)}},G=Q?.getOptions().beforeSendSpan,W=G?(Z)=>{let U=eA(Z),$=G(U);if(!$)return NN(),U;return $}:eA,F=[];for(let Z of A){let U=W(Z);if(U)F.push(Wd(U))}return f8(X,F)}function $d(A,Q,B,Y=Q1()){let J=Y&&K0(Y);if(J)OA&&e.log(`[Measurement] Setting measurement on root span: ${A} = ${Q} ${B}`),J.addEvent(A,{[qj]:Q,[Lj]:B})}function dZ(A){if(!A||A.length===0)return;let Q={};return A.forEach((B)=>{let Y=B.attributes||{},J=Y[Lj],C=Y[qj];if(typeof J==="string"&&typeof C==="number")Q[B.name]={value:C,unit:J}}),Q}var TNA=1000;class wN{constructor(A={}){if(this._traceId=A.traceId||y8(),this._spanId=A.spanId||g8(),this._startTime=A.startTimestamp||v8(),this._links=A.links,this._attributes={},this.setAttributes({[DQ]:"manual",[YQ]:A.op,...A.attributes}),this._name=A.name,A.parentSpanId)this._parentSpanId=A.parentSpanId;if("sampled"in A)this._sampled=A.sampled;if(A.endTimestamp)this._endTime=A.endTimestamp;if(this._events=[],this._isStandaloneSpan=A.isStandalone,this._endTime)this._onSpanEnded()}addLink(A){if(this._links)this._links.push(A);else this._links=[A];return this}addLinks(A){if(this._links)this._links.push(...A);else this._links=A;return this}recordException(A,Q){}spanContext(){let{_spanId:A,_traceId:Q,_sampled:B}=this;return{spanId:A,traceId:Q,traceFlags:B?Rj:zj}}setAttribute(A,Q){if(Q===void 0)delete this._attributes[A];else this._attributes[A]=Q;return this}setAttributes(A){return Object.keys(A).forEach((Q)=>this.setAttribute(Q,A[Q])),this}updateStartTime(A){this._startTime=r9(A)}setStatus(A){return this._status=A,this}updateName(A){return this._name=A,this.setAttribute(Q0,"custom"),this}end(A){if(this._endTime)return;this._endTime=r9(A),MN(this),this._onSpanEnded()}getSpanJSON(){return{data:this._attributes,description:this._name,op:this._attributes[YQ],parent_span_id:this._parentSpanId,span_id:this._spanId,start_timestamp:this._startTime,status:bZ(this._status),timestamp:this._endTime,trace_id:this._traceId,origin:this._attributes[DQ],profile_id:this._attributes[xE],exclusive_time:this._attributes[fE],measurements:dZ(this._events),is_segment:this._isStandaloneSpan&&K0(this)===this||void 0,segment_id:this._isStandaloneSpan?K0(this).spanContext().spanId:void 0,links:fZ(this._links)}}isRecording(){return!this._endTime&&!!this._sampled}addEvent(A,Q,B){OA&&e.log("[Tracing] Adding an event to span:",A);let Y=SNA(Q)?Q:B||v8(),J=SNA(Q)?{}:Q||{},C={name:A,time:r9(Y),attributes:J};return this._events.push(C),this}isStandaloneSpan(){return!!this._isStandaloneSpan}_onSpanEnded(){let A=gA();if(A)A.emit("spanEnd",this);if(!(this._isStandaloneSpan||this===K0(this)))return;if(this._isStandaloneSpan){if(this._sampled)m$B(PNA([this],A));else if(OA&&e.log("[Tracing] Discarding standalone span because its trace was not chosen to be sampled."),A)A.recordDroppedEvent("sample_rate","span");return}let B=this._convertSpanToTransaction();if(B)(A1(this).scope||sQ()).captureEvent(B)}_convertSpanToTransaction(){if(!kNA(eA(this)))return;if(!this._name)OA&&e.warn("Transaction has no name, falling back to ``."),this._name="";let{scope:A,isolationScope:Q}=A1(this),B=A?.getScopeData().sdkProcessingMetadata?.normalizedRequest;if(this._sampled!==!0)return;let J=DN(this).filter((F)=>F!==this&&!b$B(F)).map((F)=>eA(F)).filter(kNA),C=this._attributes[Q0];delete this._attributes[eC],J.forEach((F)=>{delete F.data[eC]});let X={contexts:{trace:ENA(this)},spans:J.length>TNA?J.sort((F,Z)=>F.start_timestamp-Z.start_timestamp).slice(0,TNA):J,start_timestamp:this._startTime,timestamp:this._endTime,transaction:this._name,type:"transaction",sdkProcessingMetadata:{capturedSpanScope:A,capturedSpanIsolationScope:Q,dynamicSamplingContext:i0(this)},request:B,...C&&{transaction_info:{source:C}}},G=dZ(this._events);if(G&&Object.keys(G).length)OA&&e.log("[Measurements] Adding measurements to transaction event",JSON.stringify(G,void 0,2)),X.measurements=G;return X}}function SNA(A){return A&&typeof A==="number"||A instanceof Date||Array.isArray(A)}function kNA(A){return!!A.start_timestamp&&!!A.timestamp&&!!A.span_id&&!!A.trace_id}function b$B(A){return A instanceof wN&&A.isStandaloneSpan()}function m$B(A){let Q=gA();if(!Q)return;let B=A[1];if(!B||B.length===0){Q.recordDroppedEvent("before_send","span");return}Q.sendEnvelope(A)}var Ud="__SENTRY_SUPPRESS_TRACING__";function b8(A,Q){let B=PN();if(B.startSpan)return B.startSpan(A,Q);let Y=Hd(A),{forceTransaction:J,parentSpan:C,scope:X}=A,G=X?.clone();return h8(G,()=>{return vNA(C)(()=>{let F=sQ(),Z=Dd(F),$=A.onlyIfParent&&!Z?new mZ:Id({parentSpan:Z,spanArguments:Y,forceTransaction:J,scope:F});return gZ(F,$),uZ(()=>Q($),()=>{let{status:E}=eA($);if($.isRecording()&&(!E||E==="ok"))$.setStatus({code:s9,message:"internal_error"})},()=>{$.end()})})})}function jN(A,Q){let B=PN();if(B.startSpanManual)return B.startSpanManual(A,Q);let Y=Hd(A),{forceTransaction:J,parentSpan:C,scope:X}=A,G=X?.clone();return h8(G,()=>{return vNA(C)(()=>{let F=sQ(),Z=Dd(F),$=A.onlyIfParent&&!Z?new mZ:Id({parentSpan:Z,spanArguments:Y,forceTransaction:J,scope:F});return gZ(F,$),uZ(()=>Q($,()=>$.end()),()=>{let{status:E}=eA($);if($.isRecording()&&(!E||E==="ok"))$.setStatus({code:s9,message:"internal_error"})})})})}function Ed(A){let Q=PN();if(Q.startInactiveSpan)return Q.startInactiveSpan(A);let B=Hd(A),{forceTransaction:Y,parentSpan:J}=A;return(A.scope?(X)=>h8(A.scope,X):J!==void 0?(X)=>GW(J,X):(X)=>X())(()=>{let X=sQ(),G=Dd(X);if(A.onlyIfParent&&!G)return new mZ;return Id({parentSpan:G,spanArguments:B,forceTransaction:Y,scope:X})})}var Kd=(A,Q)=>{let B=TJ(),Y=y5(B);if(Y.continueTrace)return Y.continueTrace(A,Q);let{sentryTrace:J,baggage:C}=A;return h8((X)=>{let G=xZ(J,C);return X.setPropagationContext(G),Q()})};function GW(A,Q){let B=PN();if(B.withActiveSpan)return B.withActiveSpan(A,Q);return h8((Y)=>{return gZ(Y,A||void 0),Q(Y)})}function ON(A){let Q=PN();if(Q.suppressTracing)return Q.suppressTracing(A);return h8((B)=>{return B.setSDKProcessingMetadata({[Ud]:!0}),A()})}function Vd(A){return h8((Q)=>{return Q.setPropagationContext({traceId:y8(),sampleRand:Math.random()}),OA&&e.info(`Starting a new trace with id ${Q.getPropagationContext().traceId}`),GW(null,A)})}function Id({parentSpan:A,spanArguments:Q,forceTransaction:B,scope:Y}){if(!U9()){let X=new mZ;if(B||!A){let G={sampled:"false",sample_rate:"0",transaction:Q.name,...i0(X)};Tj(X,G)}return X}let J=RQ(),C;if(A&&!B)C=u$B(A,Y,Q),uE(A,C);else if(A){let X=i0(A),{traceId:G,spanId:W}=A.spanContext(),F=XX(A);C=_NA({traceId:G,parentSpanId:W,...Q},Y,F),Tj(C,X)}else{let{traceId:X,dsc:G,parentSpanId:W,sampled:F}={...J.getPropagationContext(),...Y.getPropagationContext()};if(C=_NA({traceId:X,parentSpanId:W,...Q},Y,F),G)Tj(C,G)}return qN(C),EN(C,Y,J),C}function Hd(A){let B={isStandalone:(A.experimental||{}).standalone,...A};if(A.startTime){let Y={...B};return Y.startTimestamp=r9(A.startTime),delete Y.startTime,Y}return B}function PN(){let A=TJ();return y5(A)}function _NA(A,Q,B){let Y=gA(),J=Y?.getOptions()||{},{name:C=""}=A,X={spanAttributes:{...A.attributes},spanName:C,parentSampled:B};Y?.emit("beforeSampling",X,{decision:!1});let G=X.parentSampled??B,W=X.spanAttributes,F=Q.getPropagationContext(),[Z,U,$]=Q.getScopeData().sdkProcessingMetadata[Ud]?[!1]:zN(J,{name:C,parentSampled:G,attributes:W,parentSampleRate:x8(F.dsc?.sample_rate)},F.sampleRand),E=new wN({...A,attributes:{[Q0]:"custom",[g5]:U!==void 0&&$?U:void 0,...W},sampled:Z});if(!Z&&Y)OA&&e.log("[Tracing] Discarding root span because its trace was not chosen to be sampled."),Y.recordDroppedEvent("sample_rate","transaction");if(Y)Y.emit("spanStart",E);return E}function u$B(A,Q,B){let{spanId:Y,traceId:J}=A.spanContext(),C=Q.getScopeData().sdkProcessingMetadata[Ud]?!1:XX(A),X=C?new wN({...B,parentSpanId:Y,traceId:J,sampled:C}):new mZ({traceId:J});uE(A,X);let G=gA();if(G){if(G.emit("spanStart",X),B.endTimestamp)G.emit("spanEnd",X)}return X}function Dd(A){let Q=tC(A);if(!Q)return;let B=gA();if((B?B.getOptions():{}).parentSpanIsAlwaysRootSpan)return K0(Q);return Q}function vNA(A){return A!==void 0?(Q)=>{return GW(A,Q)}:(Q)=>Q()}var JG;(function(A){A[A.PENDING=0]="PENDING";let B=1;A[A.RESOLVED=B]="RESOLVED";let Y=2;A[A.REJECTED=Y]="REJECTED"})(JG||(JG={}));function J1(A){return new Y1((Q)=>{Q(A)})}function vj(A){return new Y1((Q,B)=>{B(A)})}class Y1{constructor(A){this._state=JG.PENDING,this._handlers=[],this._runExecutor(A)}then(A,Q){return new Y1((B,Y)=>{this._handlers.push([!1,(J)=>{if(!A)B(J);else try{B(A(J))}catch(C){Y(C)}},(J)=>{if(!Q)Y(J);else try{B(Q(J))}catch(C){Y(C)}}]),this._executeHandlers()})}catch(A){return this.then((Q)=>Q,A)}finally(A){return new Y1((Q,B)=>{let Y,J;return this.then((C)=>{if(J=!1,Y=C,A)A()},(C)=>{if(J=!0,Y=C,A)A()}).then(()=>{if(J){B(Y);return}Q(Y)})})}_executeHandlers(){if(this._state===JG.PENDING)return;let A=this._handlers.slice();this._handlers=[],A.forEach((Q)=>{if(Q[0])return;if(this._state===JG.RESOLVED)Q[1](this._value);if(this._state===JG.REJECTED)Q[2](this._value);Q[0]=!0})}_runExecutor(A){let Q=(J,C)=>{if(this._state!==JG.PENDING)return;if(_5(C)){C.then(B,Y);return}this._state=J,this._value=C,this._executeHandlers()},B=(J)=>{Q(JG.RESOLVED,J)},Y=(J)=>{Q(JG.REJECTED,J)};try{A(B,Y)}catch(J){Y(J)}}}function yj(A,Q,B,Y=0){return new Y1((J,C)=>{let X=A[Y];if(Q===null||typeof X!=="function")J(Q);else{let G=X({...Q},B);if(OA&&X.id&&G===null&&e.log(`Event processor "${X.id}" dropped event`),_5(G))G.then((W)=>yj(A,W,B,Y+1).then(J)).then(null,C);else yj(A,G,B,Y+1).then(J).then(null,C)}})}var gj,yNA,hj;function TN(A){let Q=AQ._sentryDebugIds;if(!Q)return{};let B=Object.keys(Q);if(hj&&B.length===yNA)return hj;return yNA=B.length,hj=B.reduce((Y,J)=>{if(!gj)gj={};let C=gj[J];if(C)Y[C[0]]=C[1];else{let X=A(J);for(let G=X.length-1;G>=0;G--){let F=X[G]?.filename,Z=Q[J];if(F&&Z){Y[F]=Z,gj[J]=[F,Z];break}}}return Y},{}),hj}function Nd(A,Q){let{fingerprint:B,span:Y,breadcrumbs:J,sdkProcessingMetadata:C}=Q;if(d$B(A,Q),Y)p$B(A,Y);i$B(A,B),c$B(A,J),l$B(A,C)}function cZ(A,Q){let{extra:B,tags:Y,user:J,contexts:C,level:X,sdkProcessingMetadata:G,breadcrumbs:W,fingerprint:F,eventProcessors:Z,attachments:U,propagationContext:$,transactionName:E,span:K}=Q;if(xj(A,"extra",B),xj(A,"tags",Y),xj(A,"user",J),xj(A,"contexts",C),A.sdkProcessingMetadata=QW(A.sdkProcessingMetadata,G,2),X)A.level=X;if(E)A.transactionName=E;if(K)A.span=K;if(W.length)A.breadcrumbs=[...A.breadcrumbs,...W];if(F.length)A.fingerprint=[...A.fingerprint,...F];if(Z.length)A.eventProcessors=[...A.eventProcessors,...Z];if(U.length)A.attachments=[...A.attachments,...U];A.propagationContext={...A.propagationContext,...$}}function xj(A,Q,B){A[Q]=QW(A[Q],B,1)}function d$B(A,Q){let{extra:B,tags:Y,user:J,contexts:C,level:X,transactionName:G}=Q;if(Object.keys(B).length)A.extra={...B,...A.extra};if(Object.keys(Y).length)A.tags={...Y,...A.tags};if(Object.keys(J).length)A.user={...J,...A.user};if(Object.keys(C).length)A.contexts={...C,...A.contexts};if(X)A.level=X;if(G&&A.type!=="transaction")A.transaction=G}function c$B(A,Q){let B=[...A.breadcrumbs||[],...Q];A.breadcrumbs=B.length?B:void 0}function l$B(A,Q){A.sdkProcessingMetadata={...A.sdkProcessingMetadata,...Q}}function p$B(A,Q){A.contexts={trace:XW(Q),...A.contexts},A.sdkProcessingMetadata={dynamicSamplingContext:i0(Q),...A.sdkProcessingMetadata};let B=K0(Q),Y=eA(B).description;if(Y&&!A.transaction&&A.type==="transaction")A.transaction=Y}function i$B(A,Q){if(A.fingerprint=A.fingerprint?Array.isArray(A.fingerprint)?A.fingerprint:[A.fingerprint]:[],Q)A.fingerprint=A.fingerprint.concat(Q);if(!A.fingerprint.length)delete A.fingerprint}function gNA(A,Q,B,Y,J,C){let{normalizeDepth:X=3,normalizeMaxBreadth:G=1000}=A,W={...Q,event_id:Q.event_id||B.event_id||UY(),timestamp:Q.timestamp||e6()},F=B.integrations||A.integrations.map((V)=>V.name);if(n$B(W,A),a$B(W,F),J)J.emit("applyFrameMetadata",Q);if(Q.type===void 0)s$B(W,A.stackParser);let Z=t$B(Y,B.captureContext);if(B.mechanism)AW(W,B.mechanism);let U=J?J.getEventProcessors():[],$=QG().getScopeData();if(C){let V=C.getScopeData();cZ($,V)}if(Z){let V=Z.getScopeData();cZ($,V)}let E=[...B.attachments||[],...$.attachments];if(E.length)B.attachments=E;Nd(W,$);let K=[...U,...$.eventProcessors];return yj(K,W,B).then((V)=>{if(V)r$B(V);if(typeof X==="number"&&X>0)return o$B(V,X,G);return V})}function n$B(A,Q){let{environment:B,release:Y,dist:J,maxValueLength:C=250}=Q;if(A.environment=A.environment||B||pE,!A.release&&Y)A.release=Y;if(!A.dist&&J)A.dist=J;let X=A.request;if(X?.url)X.url=n9(X.url,C)}function s$B(A,Q){let B=TN(Q);A.exception?.values?.forEach((Y)=>{Y.stacktrace?.frames?.forEach((J)=>{if(J.filename)J.debug_id=B[J.filename]})})}function r$B(A){let Q={};if(A.exception?.values?.forEach((Y)=>{Y.stacktrace?.frames?.forEach((J)=>{if(J.debug_id){if(J.abs_path)Q[J.abs_path]=J.debug_id;else if(J.filename)Q[J.filename]=J.debug_id;delete J.debug_id}})}),Object.keys(Q).length===0)return;A.debug_meta=A.debug_meta||{},A.debug_meta.images=A.debug_meta.images||[];let B=A.debug_meta.images;Object.entries(Q).forEach(([Y,J])=>{B.push({type:"sourcemap",code_file:Y,debug_id:J})})}function a$B(A,Q){if(Q.length>0)A.sdk=A.sdk||{},A.sdk.integrations=[...A.sdk.integrations||[],...Q]}function o$B(A,Q,B){if(!A)return null;let Y={...A,...A.breadcrumbs&&{breadcrumbs:A.breadcrumbs.map((J)=>({...J,...J.data&&{data:SJ(J.data,Q,B)}}))},...A.user&&{user:SJ(A.user,Q,B)},...A.contexts&&{contexts:SJ(A.contexts,Q,B)},...A.extra&&{extra:SJ(A.extra,Q,B)}};if(A.contexts?.trace&&Y.contexts){if(Y.contexts.trace=A.contexts.trace,A.contexts.trace.data)Y.contexts.trace.data=SJ(A.contexts.trace.data,Q,B)}if(A.spans)Y.spans=A.spans.map((J)=>{return{...J,...J.data&&{data:SJ(J.data,Q,B)}}});if(A.contexts?.flags&&Y.contexts)Y.contexts.flags=SJ(A.contexts.flags,3,B);return Y}function t$B(A,Q){if(!Q)return A;let B=A?A.clone():new UJ;return B.update(Q),B}function hNA(A){if(!A)return;if(e$B(A))return{captureContext:A};if(Q4B(A))return{captureContext:A};return A}function e$B(A){return A instanceof UJ||typeof A==="function"}var A4B=["user","level","extra","contexts","tags","fingerprint","propagationContext"];function Q4B(A){return Object.keys(A).some((Q)=>A4B.includes(Q))}function jB(A,Q){return sQ().captureException(A,hNA(Q))}function iE(A,Q){let B=typeof Q==="string"?Q:void 0,Y=typeof Q!=="string"?{captureContext:Q}:void 0;return sQ().captureMessage(A,B,Y)}function kN(A,Q){return sQ().captureEvent(A,Q)}function Ld(A,Q){RQ().setContext(A,Q)}function qd(A){RQ().setExtras(A)}function Md(A,Q){RQ().setExtra(A,Q)}function zd(A){RQ().setTags(A)}function Rd(A,Q){RQ().setTag(A,Q)}function wd(A){RQ().setUser(A)}function jd(){return RQ().lastEventId()}function SN(A,Q){let B=sQ(),Y=gA();if(!Y)OA&&e.warn("Cannot capture check-in. No client defined.");else if(!Y.captureCheckIn)OA&&e.warn("Cannot capture check-in. Client does not support sending check-ins.");else return Y.captureCheckIn(A,Q,B);return UY()}function GX(A,Q,B){let Y=SN({monitorSlug:A,status:"in_progress"},B),J=v8();function C(X){SN({monitorSlug:A,status:X,checkInId:Y,duration:v8()-J})}return BG(()=>{let X;try{X=Q()}catch(G){throw C("error"),G}if(_5(X))Promise.resolve(X).then(()=>{C("ok")},(G)=>{throw C("error"),G});else C("ok");return X})}async function Od(A){let Q=gA();if(Q)return Q.flush(A);return OA&&e.warn("Cannot flush events. No client defined."),Promise.resolve(!1)}async function Pd(A){let Q=gA();if(Q)return Q.close(A);return OA&&e.warn("Cannot flush events and disable SDK. No client defined."),Promise.resolve(!1)}function lZ(){return!!gA()}function _N(){let A=gA();return A?.getOptions().enabled!==!1&&!!A?.getTransport()}function Td(A){RQ().addEventProcessor(A)}function vN(A){let Q=RQ(),B=sQ(),{userAgent:Y}=AQ.navigator||{},J=ANA({user:B.getUser()||Q.getUser(),...Y&&{userAgent:Y},...A}),C=Q.getSession();if(C?.status==="ok")AG(C,{status:"exited"});return pZ(),Q.setSession(J),J}function pZ(){let A=RQ(),B=sQ().getSession()||A.getSession();if(B)QNA(B);xNA(),A.setSession()}function xNA(){let A=RQ(),Q=gA(),B=A.getSession();if(B&&Q)Q.captureSession(B)}function Sd(A=!1){if(A){pZ();return}xNA()}var B4B="7";function Y4B(A){let Q=A.protocol?`${A.protocol}:`:"",B=A.port?`:${A.port}`:"";return`${Q}//${A.host}${B}${A.path?`/${A.path}`:""}/api/`}function J4B(A){return`${Y4B(A)}${A.projectId}/envelope/`}function C4B(A,Q){let B={sentry_version:B4B};if(A.publicKey)B.sentry_key=A.publicKey;if(Q)B.sentry_client=`${Q.name}/${Q.version}`;return new URLSearchParams(B).toString()}function fNA(A,Q,B){return Q?Q:`${J4B(A)}?${C4B(A,B)}`}var bNA=[];function X4B(A){let Q={};return A.forEach((B)=>{let{name:Y}=B,J=Q[Y];if(J&&!J.isDefaultInstance&&B.isDefaultInstance)return;Q[Y]=B}),Object.values(Q)}function kd(A){let Q=A.defaultIntegrations||[],B=A.integrations;Q.forEach((J)=>{J.isDefaultInstance=!0});let Y;if(Array.isArray(B))Y=[...Q,...B];else if(typeof B==="function"){let J=B(Q);Y=Array.isArray(J)?J:[J]}else Y=Q;return X4B(Y)}function mNA(A,Q){let B={};return Q.forEach((Y)=>{if(Y)vd(A,Y,B)}),B}function _d(A,Q){for(let B of Q)if(B?.afterAllSetup)B.afterAllSetup(A)}function vd(A,Q,B){if(B[Q.name]){OA&&e.log(`Integration skipped because it was already installed: ${Q.name}`);return}if(B[Q.name]=Q,bNA.indexOf(Q.name)===-1&&typeof Q.setupOnce==="function")Q.setupOnce(),bNA.push(Q.name);if(Q.setup&&typeof Q.setup==="function")Q.setup(A);if(typeof Q.preprocessEvent==="function"){let Y=Q.preprocessEvent.bind(Q);A.on("preprocessEvent",(J,C)=>Y(J,C,A))}if(typeof Q.processEvent==="function"){let Y=Q.processEvent.bind(Q),J=Object.assign((C,X)=>Y(C,X,A),{id:Q.name});A.addEventProcessor(J)}OA&&e.log(`Integration installed: ${Q.name}`)}function yd(A){let Q=gA();if(!Q){OA&&e.warn(`Cannot add integration "${A.name}" because no SDK Client is available.`);return}Q.addIntegration(A)}function wA(A){return A}function fj(A){let Q=[];if(A.message)Q.push(A.message);try{let B=A.exception.values[A.exception.values.length-1];if(B?.value){if(Q.push(B.value),B.type)Q.push(`${B.type}: ${B.value}`)}}catch(B){}return Q}function uNA(A){let{trace_id:Q,parent_span_id:B,span_id:Y,status:J,origin:C,data:X,op:G}=A.contexts?.trace??{};return{data:X??{},description:A.transaction,op:G,parent_span_id:B,span_id:Y??"",start_timestamp:A.start_timestamp??0,status:J,timestamp:A.timestamp,trace_id:Q??"",origin:C,profile_id:X?.[xE],exclusive_time:X?.[fE],measurements:A.measurements,is_segment:!0}}function dNA(A){return{type:"transaction",timestamp:A.timestamp,start_timestamp:A.start_timestamp,transaction:A.description,contexts:{trace:{trace_id:A.trace_id,span_id:A.span_id,parent_span_id:A.parent_span_id,op:A.op,status:A.status,origin:A.origin,data:{...A.data,...A.profile_id&&{[xE]:A.profile_id},...A.exclusive_time&&{[fE]:A.exclusive_time}}}},measurements:A.measurements}}function cNA(A,Q,B){let Y=[{type:"client_report"},{timestamp:B||e6(),discarded_events:A}];return f8(Q?{dsn:Q}:{},[Y])}var lNA="Not capturing exception because it's already been captured.",pNA="Discarded session because of missing or non-string release",sNA=Symbol.for("SentryInternalError"),rNA=Symbol.for("SentryDoNotSendEventError");function bj(A){return{message:A,[sNA]:!0}}function gd(A){return{message:A,[rNA]:!0}}function iNA(A){return!!A&&typeof A==="object"&&sNA in A}function nNA(A){return!!A&&typeof A==="object"&&rNA in A}class xd{constructor(A){if(this._options=A,this._integrations={},this._numProcessing=0,this._outcomes={},this._hooks={},this._eventProcessors=[],A.dsn)this._dsn=RNA(A.dsn);else OA&&e.warn("No DSN provided, client will not send events.");if(this._dsn){let Q=fNA(this._dsn,A.tunnel,A._metadata?A._metadata.sdk:void 0);this._transport=A.transport({tunnel:this._options.tunnel,recordDroppedEvent:this.recordDroppedEvent.bind(this),...A.transportOptions,url:Q})}}captureException(A,Q,B){let Y=UY();if(Nj(A))return OA&&e.log(lNA),Y;let J={event_id:Y,...Q};return this._process(this.eventFromException(A,J).then((C)=>this._captureEvent(C,J,B))),J.event_id}captureMessage(A,Q,B,Y){let J={event_id:UY(),...B},C=yZ(A)?A:String(A),X=UN(A)?this.eventFromMessage(C,Q,J):this.eventFromException(A,J);return this._process(X.then((G)=>this._captureEvent(G,J,Y))),J.event_id}captureEvent(A,Q,B){let Y=UY();if(Q?.originalException&&Nj(Q.originalException))return OA&&e.log(lNA),Y;let J={event_id:Y,...Q},C=A.sdkProcessingMetadata||{},X=C.capturedSpanScope,G=C.capturedSpanIsolationScope;return this._process(this._captureEvent(A,J,X||B,G)),J.event_id}captureSession(A){this.sendSession(A),AG(A,{init:!1})}getDsn(){return this._dsn}getOptions(){return this._options}getSdkMetadata(){return this._options._metadata}getTransport(){return this._transport}flush(A){let Q=this._transport;if(Q)return this.emit("flush"),this._isClientDoneProcessing(A).then((B)=>{return Q.flush(A).then((Y)=>B&&Y)});else return J1(!0)}close(A){return this.flush(A).then((Q)=>{return this.getOptions().enabled=!1,this.emit("close"),Q})}getEventProcessors(){return this._eventProcessors}addEventProcessor(A){this._eventProcessors.push(A)}init(){if(this._isEnabled()||this._options.integrations.some(({name:A})=>A.startsWith("Spotlight")))this._setupIntegrations()}getIntegrationByName(A){return this._integrations[A]}addIntegration(A){let Q=this._integrations[A.name];if(vd(this,A,this._integrations),!Q)_d(this,[A])}sendEvent(A,Q={}){this.emit("beforeSendEvent",A,Q);let B=ONA(A,this._dsn,this._options._metadata,this._options.tunnel);for(let J of Q.attachments||[])B=Gd(B,Fd(J));let Y=this.sendEnvelope(B);if(Y)Y.then((J)=>this.emit("afterSendEvent",A,J),null)}sendSession(A){let{release:Q,environment:B=pE}=this._options;if("aggregates"in A){let J=A.attrs||{};if(!J.release&&!Q){OA&&e.warn(pNA);return}J.release=J.release||Q,J.environment=J.environment||B,A.attrs=J}else{if(!A.release&&!Q){OA&&e.warn(pNA);return}A.release=A.release||Q,A.environment=A.environment||B}this.emit("beforeSendSession",A);let Y=jNA(A,this._dsn,this._options._metadata,this._options.tunnel);this.sendEnvelope(Y)}recordDroppedEvent(A,Q,B=1){if(this._options.sendClientReports){let Y=`${A}:${Q}`;OA&&e.log(`Recording outcome: "${Y}"${B>1?` (${B} times)`:""}`),this._outcomes[Y]=(this._outcomes[Y]||0)+B}}on(A,Q){let B=this._hooks[A]=this._hooks[A]||[];return B.push(Q),()=>{let Y=B.indexOf(Q);if(Y>-1)B.splice(Y,1)}}emit(A,...Q){let B=this._hooks[A];if(B)B.forEach((Y)=>Y(...Q))}sendEnvelope(A){if(this.emit("beforeEnvelope",A),this._isEnabled()&&this._transport)return this._transport.send(A).then(null,(Q)=>{return OA&&e.error("Error while sending envelope:",Q),Q});return OA&&e.error("Transport disabled"),J1({})}_setupIntegrations(){let{integrations:A}=this._options;this._integrations=mNA(this,A),_d(this,A)}_updateSessionFromEvent(A,Q){let B=Q.level==="fatal",Y=!1,J=Q.exception?.values;if(J){Y=!0;for(let G of J)if(G.mechanism?.handled===!1){B=!0;break}}let C=A.status==="ok";if(C&&A.errors===0||C&&B)AG(A,{...B&&{status:"crashed"},errors:A.errors||Number(Y||B)}),this.captureSession(A)}_isClientDoneProcessing(A){return new Y1((Q)=>{let B=0,Y=1,J=setInterval(()=>{if(this._numProcessing==0)clearInterval(J),Q(!0);else if(B+=Y,A&&B>=A)clearInterval(J),Q(!1)},Y)})}_isEnabled(){return this.getOptions().enabled!==!1&&this._transport!==void 0}_prepareEvent(A,Q,B,Y){let J=this.getOptions(),C=Object.keys(this._integrations);if(!Q.integrations&&C?.length)Q.integrations=C;if(this.emit("preprocessEvent",A,Q),!A.type)Y.setLastEventId(A.event_id||Q.event_id);return gNA(J,A,Q,B,this,Y).then((X)=>{if(X===null)return X;this.emit("postprocessEvent",X,Q),X.contexts={trace:hE(B),...X.contexts};let G=YG(this,B);return X.sdkProcessingMetadata={dynamicSamplingContext:G,...X.sdkProcessingMetadata},X})}_captureEvent(A,Q={},B=sQ(),Y=RQ()){if(OA&&hd(A))e.log(`Captured error event \`${fj(A)[0]||""}\``);return this._processEvent(A,Q,B,Y).then((J)=>{return J.event_id},(J)=>{if(OA)if(nNA(J))e.log(J.message);else if(iNA(J))e.warn(J.message);else e.warn(J);return})}_processEvent(A,Q,B,Y){let J=this.getOptions(),{sampleRate:C}=J,X=aNA(A),G=hd(A),W=A.type||"error",F=`before send for type \`${W}\``,Z=typeof C>"u"?void 0:x8(C);if(G&&typeof Z==="number"&&Math.random()>Z)return this.recordDroppedEvent("sample_rate","error"),vj(gd(`Discarding event because it's not included in the random sample (sampling rate = ${C})`));let U=W==="replay_event"?"replay":W;return this._prepareEvent(A,Q,B,Y).then(($)=>{if($===null)throw this.recordDroppedEvent("event_processor",U),gd("An event processor returned `null`, will not send event.");if(Q.data&&Q.data.__sentry__===!0)return $;let K=W4B(this,J,$,Q);return G4B(K,F)}).then(($)=>{if($===null){if(this.recordDroppedEvent("before_send",U),X){let V=1+(A.spans||[]).length;this.recordDroppedEvent("before_send","span",V)}throw gd(`${F} returned \`null\`, will not send event.`)}let E=B.getSession()||Y.getSession();if(G&&E)this._updateSessionFromEvent(E,$);if(X){let I=$.sdkProcessingMetadata?.spanCountBeforeProcessing||0,V=$.spans?$.spans.length:0,H=I-V;if(H>0)this.recordDroppedEvent("before_send","span",H)}let K=$.transaction_info;if(X&&K&&$.transaction!==A.transaction)$.transaction_info={...K,source:"custom"};return this.sendEvent($,Q),$}).then(null,($)=>{if(nNA($)||iNA($))throw $;throw this.captureException($,{data:{__sentry__:!0},originalException:$}),bj(`Event processing pipeline threw an error, original event will not be sent. Details have been sent as a new event. +Reason: ${$}`)})}_process(A){this._numProcessing++,A.then((Q)=>{return this._numProcessing--,Q},(Q)=>{return this._numProcessing--,Q})}_clearOutcomes(){let A=this._outcomes;return this._outcomes={},Object.entries(A).map(([Q,B])=>{let[Y,J]=Q.split(":");return{reason:Y,category:J,quantity:B}})}_flushOutcomes(){OA&&e.log("Flushing outcomes...");let A=this._clearOutcomes();if(A.length===0){OA&&e.log("No outcomes to send");return}if(!this._dsn){OA&&e.log("No dsn provided, will not send outcomes");return}OA&&e.log("Sending outcomes:",A);let Q=cNA(A,this._options.tunnel&&B1(this._dsn));this.sendEnvelope(Q)}}function G4B(A,Q){let B=`${Q} must return \`null\` or a valid event.`;if(_5(A))return A.then((Y)=>{if(!k5(Y)&&Y!==null)throw bj(B);return Y},(Y)=>{throw bj(`${Q} rejected with ${Y}`)});else if(!k5(A)&&A!==null)throw bj(B);return A}function W4B(A,Q,B,Y){let{beforeSend:J,beforeSendTransaction:C,beforeSendSpan:X}=Q,G=B;if(hd(G)&&J)return J(G,Y);if(aNA(G)){if(X){let W=X(uNA(G));if(!W)NN();else G=QW(B,dNA(W));if(G.spans){let F=[];for(let Z of G.spans){let U=X(Z);if(!U)NN(),F.push(Z);else F.push(U)}G.spans=F}}if(C){if(G.spans){let W=G.spans.length;G.sdkProcessingMetadata={...B.sdkProcessingMetadata,spanCountBeforeProcessing:W}}return C(G,Y)}}return G}function hd(A){return A.type===void 0}function aNA(A){return A.type==="transaction"}function mj(A,Q){if(!Q)return[void 0,void 0];let B=tC(Q),Y=B?XW(B):hE(Q);return[B?i0(B):YG(A,Q),Y]}function oNA(A,Q,B,Y,J){let C={sent_at:new Date().toISOString()};if(B?.sdk)C.sdk={name:B.sdk.name,version:B.sdk.version};if(!!Y&&!!J)C.dsn=B1(J);if(Q)C.trace=Q;let X=F4B(A);return f8(C,[X])}function F4B(A){return[{type:"check_in"},A]}var tNA={trace:1,debug:5,info:9,warn:13,error:17,fatal:21};function Z4B(A){return[{type:"log",item_count:A.length,content_type:"application/vnd.sentry.items.log+json"},{items:A}]}function eNA(A,Q,B,Y){let J={};if(Q?.sdk)J.sdk={name:Q.sdk.name,version:Q.sdk.version};if(!!B&&!!Y)J.dsn=B1(Y);return f8(J,[Z4B(A)])}var $4B=100;AQ._sentryClientToLogBufferMap=new WeakMap;function U4B(A){switch(typeof A){case"number":if(Number.isInteger(A))return{value:A,type:"integer"};return{value:A,type:"double"};case"boolean":return{value:A,type:"boolean"};case"string":return{value:A,type:"string"};default:{let Q="";try{Q=JSON.stringify(A)??""}catch{}return{value:Q,type:"string"}}}}function iZ(A,Q=gA(),B=sQ()){if(!Q){OA&&e.warn("No client available to capture log.");return}let{_experiments:Y,release:J,environment:C}=Q.getOptions(),{enableLogs:X=!1,beforeSendLog:G}=Y??{};if(!X){OA&&e.warn("logging option not enabled, log will not be captured.");return}let[,W]=mj(Q,B),F={...A.attributes};if(J)F["sentry.release"]=J;if(C)F["sentry.environment"]=C;let{sdk:Z}=Q.getSdkMetadata()??{};if(Z)F["sentry.sdk.name"]=Z.name,F["sentry.sdk.version"]=Z.version;let U=A.message;if(yZ(U)){let{__sentry_template_string__:M,__sentry_template_values__:N=[]}=U;F["sentry.message.template"]=M,N.forEach((q,w)=>{F[`sentry.message.parameter.${w}`]=q})}let $=tC(B);if($)F["sentry.trace.parent_span_id"]=$.spanContext().spanId;let E={...A,attributes:F};Q.emit("beforeCaptureLog",E);let K=G?G(E):E;if(!K){Q.recordDroppedEvent("before_send","log_item",1),OA&&e.warn("beforeSendLog returned null, log will not be captured.");return}let{level:I,message:V,attributes:H={},severityNumber:D}=K,L={timestamp:v8(),level:I,body:V,trace_id:W?.trace_id,severity_number:D??tNA[I],attributes:Object.keys(H).reduce((M,N)=>{return M[N]=U4B(H[N]),M},{})},z=ALA(Q);if(z===void 0)AQ._sentryClientToLogBufferMap?.set(Q,[L]);else if(AQ._sentryClientToLogBufferMap?.set(Q,[...z,L]),z.length>=$4B)WW(Q,z);Q.emit("afterCaptureLog",K)}function WW(A,Q){let B=Q??ALA(A)??[];if(B.length===0)return;let Y=A.getOptions(),J=eNA(B,Y._metadata,Y.tunnel,A.getDsn());AQ._sentryClientToLogBufferMap?.set(A,[]),A.emit("flushLogs"),A.sendEnvelope(J)}function ALA(A){return AQ._sentryClientToLogBufferMap?.get(A)}function QLA(A,Q){return A(Q.stack||"",1)}function fd(A,Q){let B={type:Q.name||Q.constructor.name,value:Q.message},Y=QLA(A,Q);if(Y.length)B.stacktrace={frames:Y};return B}function E4B(A){for(let Q in A)if(Object.prototype.hasOwnProperty.call(A,Q)){let B=A[Q];if(B instanceof Error)return B}return}function K4B(A){if("name"in A&&typeof A.name==="string"){let Y=`'${A.name}' captured as exception`;if("message"in A&&typeof A.message==="string")Y+=` with message '${A.message}'`;return Y}else if("message"in A&&typeof A.message==="string")return A.message;let Q=xu(A);if(dDA(A))return`Event \`ErrorEvent\` captured as exception with message \`${A.message}\``;let B=V4B(A);return`${B&&B!=="Object"?`'${B}'`:"Object"} captured as exception with keys: ${Q}`}function V4B(A){try{let Q=Object.getPrototypeOf(A);return Q?Q.constructor.name:void 0}catch(Q){}}function I4B(A,Q,B,Y){if(aC(B))return[B,void 0];if(Q.synthetic=!0,k5(B)){let C=A?.getOptions().normalizeDepth,X={["__serialized__"]:Cd(B,C)},G=E4B(B);if(G)return[G,X];let W=K4B(B),F=Y?.syntheticException||Error(W);return F.message=W,[F,X]}let J=Y?.syntheticException||Error(B);return J.message=`${B}`,[J,void 0]}function BLA(A,Q,B,Y){let C=Y?.data&&Y.data.mechanism||{handled:!0,type:"generic"},[X,G]=I4B(A,C,B,Y),W={exception:{values:[fd(Q,X)]}};if(G)W.extra=G;return bu(W,void 0,void 0),AW(W,C),{...W,event_id:Y?.event_id}}function YLA(A,Q,B="info",Y,J){let C={event_id:Y?.event_id,level:B};if(J&&Y?.syntheticException){let X=QLA(A,Y.syntheticException);if(X.length)C.exception={values:[{value:Q,stacktrace:{frames:X}}]},AW(C,{synthetic:!0})}if(yZ(Q)){let{__sentry_template_string__:X,__sentry_template_values__:G}=Q;return C.logentry={message:X,params:G},C}return C.message=Q,C}var H4B=5000;class uj extends xd{constructor(A){qNA();super(A);if(this._logWeight=0,this._options._experiments?.enableLogs){let Q=this;Q.on("flushLogs",()=>{Q._logWeight=0,clearTimeout(Q._logFlushIdleTimeout)}),Q.on("afterCaptureLog",(B)=>{if(Q._logWeight+=D4B(B),Q._logWeight>=800000)WW(Q);else Q._logFlushIdleTimeout=setTimeout(()=>{WW(Q)},H4B)}),Q.on("flush",()=>{WW(Q)})}}eventFromException(A,Q){let B=BLA(this,this._options.stackParser,A,Q);return B.level="error",J1(B)}eventFromMessage(A,Q="info",B){return J1(YLA(this._options.stackParser,A,Q,B,this._options.attachStacktrace))}captureException(A,Q,B){return JLA(Q),super.captureException(A,Q,B)}captureEvent(A,Q,B){if(!A.type&&A.exception?.values&&A.exception.values.length>0)JLA(Q);return super.captureEvent(A,Q,B)}captureCheckIn(A,Q,B){let Y="checkInId"in A&&A.checkInId?A.checkInId:UY();if(!this._isEnabled())return OA&&e.warn("SDK not enabled, will not capture check-in."),Y;let J=this.getOptions(),{release:C,environment:X,tunnel:G}=J,W={check_in_id:Y,monitor_slug:A.monitorSlug,status:A.status,release:C,environment:X};if("duration"in A)W.duration=A.duration;if(Q)W.monitor_config={schedule:Q.schedule,checkin_margin:Q.checkinMargin,max_runtime:Q.maxRuntime,timezone:Q.timezone,failure_issue_threshold:Q.failureIssueThreshold,recovery_threshold:Q.recoveryThreshold};let[F,Z]=mj(this,B);if(Z)W.contexts={trace:Z};let U=oNA(W,F,this.getSdkMetadata(),G,this.getDsn());return OA&&e.info("Sending checkin:",A.monitorSlug,A.status),this.sendEnvelope(U),Y}_prepareEvent(A,Q,B,Y){if(this._options.platform)A.platform=A.platform||this._options.platform;if(this._options.runtime)A.contexts={...A.contexts,runtime:A.contexts?.runtime||this._options.runtime};if(this._options.serverName)A.server_name=A.server_name||this._options.serverName;return super._prepareEvent(A,Q,B,Y)}}function JLA(A){let Q=RQ().getScopeData().sdkProcessingMetadata.requestSession;if(Q){let B=A?.mechanism?.handled??!0;if(B&&Q.status!=="crashed")Q.status="errored";else if(!B)Q.status="crashed"}}function D4B(A){let Q=0;if(A.message)Q+=A.message.length*2;if(A.attributes)Object.values(A.attributes).forEach((B)=>{if(Array.isArray(B))Q+=B.length*CLA(B[0]);else if(UN(B))Q+=CLA(B);else Q+=100});return Q}function CLA(A){if(typeof A==="string")return A.length*2;else if(typeof A==="number")return 8;else if(typeof A==="boolean")return 4;return 0}function bd(A){sQ().setClient(A)}var md=Symbol.for("SentryBufferFullError");function XLA(A){let Q=[];function B(){return A===void 0||Q.lengthY(G)).then(null,()=>Y(G).then(null,()=>{})),G}function C(X){return new Y1((G,W)=>{let F=Q.length;if(!F)return G(!0);let Z=setTimeout(()=>{if(X&&X>0)G(!1)},X);Q.forEach((U)=>{J1(U).then(()=>{if(!--F)clearTimeout(Z),G(!0)},W)})})}return{$:Q,add:J,drain:C}}function N4B(A,Q=Date.now()){let B=parseInt(`${A}`,10);if(!isNaN(B))return B*1000;let Y=Date.parse(`${A}`);if(!isNaN(Y))return Y-Q;return 60000}function L4B(A,Q){return A[Q]||A.all||0}function GLA(A,Q,B=Date.now()){return L4B(A,Q)>B}function WLA(A,{statusCode:Q,headers:B},Y=Date.now()){let J={...A},C=B?.["x-sentry-rate-limits"],X=B?.["retry-after"];if(C)for(let G of C.trim().split(",")){let[W,F,,,Z]=G.split(":",5),U=parseInt(W,10),$=(!isNaN(U)?U:60)*1000;if(!F)J.all=Y+$;else for(let E of F.split(";"))if(E==="metric_bucket"){if(!Z||Z.split(";").includes("custom"))J[E]=Y+$}else J[E]=Y+$}else if(X)J.all=Y+N4B(X,Y);else if(Q===429)J.all=Y+60000;return J}var q4B=64;function nE(A,Q,B=XLA(A.bufferSize||q4B)){let Y={},J=(X)=>B.drain(X);function C(X){let G=[];if(Sj(X,(U,$)=>{let E=kj($);if(GLA(Y,E))A.recordDroppedEvent("ratelimit_backoff",E);else G.push(U)}),G.length===0)return J1({});let W=f8(X[0],G),F=(U)=>{Sj(W,($,E)=>{A.recordDroppedEvent(U,kj(E))})},Z=()=>Q({body:RN(W)}).then((U)=>{if(U.statusCode!==void 0&&(U.statusCode<200||U.statusCode>=300))OA&&e.warn(`Sentry responded with status code ${U.statusCode} to sent event.`);return Y=WLA(Y,U),U},(U)=>{throw F("network_error"),OA&&e.error("Encountered error running transport request:",U),U});return B.add(Z).then((U)=>U,(U)=>{if(U===md)return OA&&e.error("Skipped sending event because buffer is full."),F("queue_overflow"),J1({});else throw U})}return{send:C,flush:J}}function dj(A,...Q){let B=new String(String.raw(A,...Q));return B.__sentry_template_string__=A.join("\x00").replace(/%/g,"%%").replace(/\0/g,"%s"),B.__sentry_template_values__=Q,B}var ud=dj;function dd(A,Q,B=[Q],Y="npm"){let J=A._metadata||{};if(!J.sdk)J.sdk={name:`sentry.javascript.${Q}`,packages:B.map((C)=>({name:`${Y}:@sentry/${C}`,version:l0})),version:l0};A._metadata=J}function CG(A={}){let Q=gA();if(!_N()||!Q)return{};let B=TJ(),Y=y5(B);if(Y.getTraceData)return Y.getTraceData(A);let J=sQ(),C=A.span||Q1(),X=C?HN(C):M4B(J),G=C?i0(C):YG(Q,J),W=JW(G);if(!VN.test(X))return e.warn("Invalid sentry-trace data. Cannot generate trace data"),{};return{"sentry-trace":X,baggage:W}}function M4B(A){let{traceId:Q,sampled:B,propagationSpanId:Y}=A.getPropagationContext();return CW(Q,Y,B)}function cd(){return Object.entries(CG()).map(([A,Q])=>``).join(` `)}function FLA(A){let Q=Object.create(null);try{Object.entries(A).forEach(([B,Y])=>{if(typeof Y==="string")Q[B]=Y})}catch{}return Q}function sE(A){let Q=A.headers||{},B=typeof Q.host==="string"?Q.host:void 0,Y=A.protocol||(A.socket?.encrypted?"https":"http"),J=A.url||"",C=z4B({url:J,host:B,protocol:Y}),X=A.body||void 0,G=A.cookies;return{url:C,method:A.method,query_string:ZLA(J),headers:FLA(Q),cookies:G,data:X}}function z4B({url:A,protocol:Q,host:B}){if(A?.startsWith("http"))return A;if(A&&B)return`${Q}://${B}${A}`;return}function ZLA(A){if(!A)return;try{let Q=new URL(A,"http://s.io").search.slice(1);return Q.length?Q:void 0}catch{return}}var R4B=100;function E9(A,Q){let B=gA(),Y=RQ();if(!B)return;let{beforeBreadcrumb:J=null,maxBreadcrumbs:C=R4B}=B.getOptions();if(C<=0)return;let G={timestamp:e6(),...A},W=J?f0(()=>J(G,Q)):G;if(W===null)return;if(B.emit)B.emit("beforeAddBreadcrumb",W,Q);Y.addBreadcrumb(W,C)}var $LA,w4B="FunctionToString",ULA=new WeakMap,j4B=()=>{return{name:w4B,setupOnce(){$LA=Function.prototype.toString;try{Function.prototype.toString=function(...A){let Q=hu(this),B=ULA.has(gA())&&Q!==void 0?Q:this;return $LA.apply(B,A)}}catch{}},setup(A){ULA.set(A,!0)}}},yN=wA(j4B);var O4B=[/^Script error\.?$/,/^Javascript error: Script error\.? on line 0$/,/^ResizeObserver loop completed with undelivered notifications.$/,/^Cannot redefine property: googletag$/,/^Can't find variable: gmo$/,/^undefined is not an object \(evaluating 'a\.[A-Z]'\)$/,`can't redefine non-configurable property "solana"`,"vv().getRestrictions is not a function. (In 'vv().getRestrictions(1,a)', 'vv().getRestrictions' is undefined)","Can't find variable: _AutofillCallbackHandler",/^Non-Error promise rejection captured with value: Object Not Found Matching Id:\d+, MethodName:simulateEvent, ParamCount:\d+$/,/^Java exception was raised during method invocation$/],P4B="EventFilters",lj=wA((A={})=>{let Q;return{name:P4B,setup(B){let Y=B.getOptions();Q=ELA(A,Y)},processEvent(B,Y,J){if(!Q){let C=J.getOptions();Q=ELA(A,C)}return T4B(B,Q)?null:B}}}),gN=wA((A={})=>{return{...lj(A),name:"InboundFilters"}});function ELA(A={},Q={}){return{allowUrls:[...A.allowUrls||[],...Q.allowUrls||[]],denyUrls:[...A.denyUrls||[],...Q.denyUrls||[]],ignoreErrors:[...A.ignoreErrors||[],...Q.ignoreErrors||[],...A.disableErrorDefaults?[]:O4B],ignoreTransactions:[...A.ignoreTransactions||[],...Q.ignoreTransactions||[]]}}function T4B(A,Q){if(!A.type){if(S4B(A,Q.ignoreErrors))return OA&&e.warn(`Event dropped due to being matched by \`ignoreErrors\` option. Event: ${e7(A)}`),!0;if(g4B(A))return OA&&e.warn(`Event dropped due to not having an error message, error type or stacktrace. Event: ${e7(A)}`),!0;if(_4B(A,Q.denyUrls))return OA&&e.warn(`Event dropped due to being matched by \`denyUrls\` option. @@ -276,17 +276,17 @@ Url: ${cj(A)}`),!0;if(!v4B(A,Q.allowUrls))return OA&&e.warn(`Event dropped due t Event: ${e7(A)}. Url: ${cj(A)}`),!0}else if(A.type==="transaction"){if(k4B(A,Q.ignoreTransactions))return OA&&e.warn(`Event dropped due to being matched by \`ignoreTransactions\` option. Event: ${e7(A)}`),!0}return!1}function S4B(A,Q){if(!Q?.length)return!1;return fj(A).some((B)=>t7(B,Q))}function k4B(A,Q){if(!Q?.length)return!1;let B=A.transaction;return B?t7(B,Q):!1}function _4B(A,Q){if(!Q?.length)return!1;let B=cj(A);return!B?!1:t7(B,Q)}function v4B(A,Q){if(!Q?.length)return!0;let B=cj(A);return!B?!0:t7(B,Q)}function y4B(A=[]){for(let Q=A.length-1;Q>=0;Q--){let B=A[Q];if(B&&B.filename!==""&&B.filename!=="[native code]")return B.filename||null}return null}function cj(A){try{let B=[...A.exception?.values??[]].reverse().find((Y)=>Y.mechanism?.parent_id===void 0&&Y.stacktrace?.frames?.length)?.stacktrace?.frames;return B?y4B(B):null}catch(Q){return OA&&e.error(`Cannot extract url for event ${e7(A)}`),null}}function g4B(A){if(!A.exception?.values?.length)return!1;return!A.message&&!A.exception.values.some((Q)=>Q.stacktrace||Q.type&&Q.type!=="Error"||Q.value)}function ILA(A,Q,B,Y,J,C){if(!J.exception?.values||!C||!t6(C.originalException,Error))return;let X=J.exception.values.length>0?J.exception.values[J.exception.values.length-1]:void 0;if(X)J.exception.values=ld(A,Q,Y,C.originalException,B,J.exception.values,X,0)}function ld(A,Q,B,Y,J,C,X,G){if(C.length>=B+1)return C;let W=[...C];if(t6(Y[J],Error)){KLA(X,G);let F=A(Q,Y[J]),Z=W.length;VLA(F,J,Z,G),W=ld(A,Q,B,Y[J],J,[F,...W],F,Z)}if(Array.isArray(Y.errors))Y.errors.forEach((F,Z)=>{if(t6(F,Error)){KLA(X,G);let U=A(Q,F),$=W.length;VLA(U,`errors[${Z}]`,$,G),W=ld(A,Q,B,F,J,[U,...W],U,$)}});return W}function KLA(A,Q){A.mechanism=A.mechanism||{type:"generic",handled:!0},A.mechanism={...A.mechanism,...A.type==="AggregateError"&&{is_exception_group:!0},exception_id:Q}}function VLA(A,Q,B,Y){A.mechanism=A.mechanism||{type:"generic",handled:!0},A.mechanism={...A.mechanism,type:"chained",source:Q,exception_id:B,parent_id:Y}}var h4B="cause",x4B=5,f4B="LinkedErrors",b4B=(A={})=>{let Q=A.limit||x4B,B=A.key||h4B;return{name:f4B,preprocessEvent(Y,J,C){let X=C.getOptions();ILA(fd,X.stackParser,B,Q,Y,J)}}},hN=wA(b4B);function HLA(A){let Q={},B=0;while(B{let C=A[J],X=Array.isArray(C)?C.join(";"):C;if(J==="Forwarded")return m4B(X);return X?.split(",").map((G)=>G.trim())}).reduce((J,C)=>{if(!C)return J;return J.concat(C)},[]).find((J)=>J!==null&&u4B(J))||null}function m4B(A){if(!A)return null;for(let Q of A.split(";"))if(Q.startsWith("for="))return Q.slice(4);return null}function u4B(A){return/(?:^(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}$)|(?:^(?:(?:[a-fA-F\d]{1,4}:){7}(?:[a-fA-F\d]{1,4}|:)|(?:[a-fA-F\d]{1,4}:){6}(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|:[a-fA-F\d]{1,4}|:)|(?:[a-fA-F\d]{1,4}:){5}(?::(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,2}|:)|(?:[a-fA-F\d]{1,4}:){4}(?:(?::[a-fA-F\d]{1,4}){0,1}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,3}|:)|(?:[a-fA-F\d]{1,4}:){3}(?:(?::[a-fA-F\d]{1,4}){0,2}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,4}|:)|(?:[a-fA-F\d]{1,4}:){2}(?:(?::[a-fA-F\d]{1,4}){0,3}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,5}|:)|(?:[a-fA-F\d]{1,4}:){1}(?:(?::[a-fA-F\d]{1,4}){0,4}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,6}|:)|(?::(?:(?::[a-fA-F\d]{1,4}){0,5}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-fA-F\d]{1,4}){1,7}|:)))(?:%[0-9a-zA-Z]{1,})?$)/.test(A)}var d4B={cookies:!0,data:!0,headers:!0,query_string:!0,url:!0},c4B="RequestData",l4B=(A={})=>{let Q={...d4B,...A.include};return{name:c4B,processEvent(B,Y,J){let{sdkProcessingMetadata:C={}}=B,{normalizedRequest:X,ipAddress:G}=C,W={...Q,ip:Q.ip??J.getOptions().sendDefaultPii};if(X)p4B(B,X,{ipAddress:G},W);return B}}},xN=wA(l4B);function p4B(A,Q,B,Y){if(A.request={...A.request,...i4B(Q,Y)},Y.ip){let J=Q.headers&&DLA(Q.headers)||B.ipAddress;if(J)A.user={...A.user,ip_address:J}}}function i4B(A,Q){let B={},Y={...A.headers};if(Q.headers){if(B.headers=Y,!Q.cookies)delete Y.cookie;if(!Q.ip)pd.forEach((J)=>{delete Y[J]})}if(B.method=A.method,Q.url)B.url=A.url;if(Q.cookies){let J=A.cookies||(Y?.cookie?HLA(Y.cookie):void 0);B.cookies=J||{}}if(Q.query_string)B.query_string=A.query_string;if(Q.data)B.data=A.data;return B}function rE(A){dE("console",A),cE("console",n4B)}function n4B(){if(!("console"in AQ))return;oC.forEach(function(A){if(!(A in AQ.console))return;gu(AQ.console,A,function(Q){return vE[A]=Q,function(...B){lE("console",{args:B,level:A}),vE[A]?.apply(AQ.console,B)}})})}function pj(A){return A==="warn"?"warning":["fatal","error","warning","log","info","debug"].includes(A)?A:"log"}var s4B="CaptureConsole",r4B=(A={})=>{let Q=A.levels||oC,B=A.handled??!0;return{name:s4B,setup(Y){if(!("console"in AQ))return;rE(({args:J,level:C})=>{if(gA()!==Y||!Q.includes(C))return;a4B(J,C,B)})}}},id=wA(r4B);function a4B(A,Q,B){let Y={level:pj(Q),extra:{arguments:A}};h8((J)=>{if(J.addEventProcessor((G)=>{return G.logger="console",AW(G,{handled:B,type:"console"}),G}),Q==="assert"){if(!A[0]){let G=`Assertion failed: ${o7(A.slice(1)," ")||"console.assert"}`;J.setExtra("arguments",A.slice(1)),iE(G,Y)}return}let C=A.find((G)=>G instanceof Error);if(C){jB(C,Y);return}let X=o7(A," ");iE(X,Y)})}var o4B="Dedupe",t4B=()=>{let A;return{name:o4B,processEvent(Q){if(Q.type)return Q;try{if(e4B(Q,A))return OA&&e.warn("Event dropped due to being a duplicate of previously captured event."),null}catch(B){}return A=Q}}},nd=wA(t4B);function e4B(A,Q){if(!Q)return!1;if(AUB(A,Q))return!0;if(QUB(A,Q))return!0;return!1}function AUB(A,Q){let B=A.message,Y=Q.message;if(!B&&!Y)return!1;if(B&&!Y||!B&&Y)return!1;if(B!==Y)return!1;if(!qLA(A,Q))return!1;if(!LLA(A,Q))return!1;return!0}function QUB(A,Q){let B=NLA(Q),Y=NLA(A);if(!B||!Y)return!1;if(B.type!==Y.type||B.value!==Y.value)return!1;if(!qLA(A,Q))return!1;if(!LLA(A,Q))return!1;return!0}function LLA(A,Q){let B=Oj(A),Y=Oj(Q);if(!B&&!Y)return!0;if(B&&!Y||!B&&Y)return!1;if(B=B,Y=Y,Y.length!==B.length)return!1;for(let J=0;J{let{depth:Q=3,captureErrorCause:B=!0}=A;return{name:BUB,processEvent(Y,J,C){let{maxValueLength:X=250}=C.getOptions();return JUB(Y,J,Q,B,X)}}},sd=wA(YUB);function JUB(A,Q={},B,Y,J){if(!Q.originalException||!aC(Q.originalException))return A;let C=Q.originalException.name||Q.originalException.constructor.name,X=CUB(Q.originalException,Y,J);if(X){let G={...A.contexts},W=SJ(X,B);if(k5(W))p0(W,"__sentry_skip_normalization__",!0),G[C]=W;return{...A,contexts:G}}return A}function CUB(A,Q,B){try{let Y=["name","message","stack","line","column","fileName","lineNumber","columnNumber","toJSON"],J={};for(let C of Object.keys(A)){if(Y.indexOf(C)!==-1)continue;let X=A[C];J[C]=aC(X)||typeof X==="string"?n9(`${X}`,B):X}if(Q&&A.cause!==void 0)J.cause=aC(A.cause)?A.cause.toString():A.cause;if(typeof A.toJSON==="function"){let C=A.toJSON();for(let X of Object.keys(C)){let G=C[X];J[X]=aC(G)?G.toString():G}}return J}catch(Y){OA&&e.error("Unable to extract extra data from the Error object:",Y)}return null}function XUB(A,Q){let B=0;for(let Y=A.length-1;Y>=0;Y--){let J=A[Y];if(J===".")A.splice(Y,1);else if(J==="..")A.splice(Y,1),B++;else if(B)A.splice(Y,1),B--}if(Q)for(;B--;B)A.unshift("..");return A}var GUB=/^(\S+:\\|\/?)([\s\S]*?)((?:\.{1,2}|[^/\\]+?|)(\.[^./\\]*|))(?:[/\\]*)$/;function zLA(A){let Q=A.length>1024?`${A.slice(-1024)}`:A,B=GUB.exec(Q);return B?B.slice(1):[]}function rd(...A){let Q="",B=!1;for(let Y=A.length-1;Y>=-1&&!B;Y--){let J=Y>=0?A[Y]:"/";if(!J)continue;Q=`${J}/${Q}`,B=J.charAt(0)==="/"}return Q=XUB(Q.split("/").filter((Y)=>!!Y),!B).join("/"),(B?"/":"")+Q||"."}function MLA(A){let Q=0;for(;Q=0;B--)if(A[B]!=="")break;if(Q>B)return[];return A.slice(Q,B-Q+1)}function ad(A,Q){A=rd(A).slice(1),Q=rd(Q).slice(1);let B=MLA(A.split("/")),Y=MLA(Q.split("/")),J=Math.min(B.length,Y.length),C=J;for(let G=0;G{let Q=A.root,B=A.prefix||"app:///",Y="window"in AQ&&!!AQ.window,J=A.iteratee||FUB({isBrowser:Y,root:Q,prefix:B});function C(G){try{return{...G,exception:{...G.exception,values:G.exception.values.map((W)=>({...W,...W.stacktrace&&{stacktrace:X(W.stacktrace)}}))}}}catch(W){return G}}function X(G){return{...G,frames:G?.frames&&G.frames.map((W)=>J(W))}}return{name:WUB,processEvent(G){let W=G;if(G.exception&&Array.isArray(G.exception.values))W=C(W);return W}}});function FUB({isBrowser:A,root:Q,prefix:B}){return(Y)=>{if(!Y.filename)return Y;let J=/^[a-zA-Z]:\\/.test(Y.filename)||Y.filename.includes("\\")&&!Y.filename.includes("/"),C=/^\//.test(Y.filename);if(A){if(Q){let X=Y.filename;if(X.indexOf(Q)===0)Y.filename=X.replace(Q,B)}}else if(J||C){let X=J?Y.filename.replace(/^[a-zA-Z]:/,"").replace(/\\/g,"/"):Y.filename,G=Q?ad(Q,X):td(X);Y.filename=`${B}${G}`}return Y}}var ZUB=["reauthenticate","signInAnonymously","signInWithOAuth","signInWithIdToken","signInWithOtp","signInWithPassword","signInWithSSO","signOut","signUp","verifyOtp"],$UB=["createUser","deleteUser","listUsers","getUserById","updateUserById","inviteUserByEmail"],UUB={eq:"eq",neq:"neq",gt:"gt",gte:"gte",lt:"lt",lte:"lte",like:"like","like(all)":"likeAllOf","like(any)":"likeAnyOf",ilike:"ilike","ilike(all)":"ilikeAllOf","ilike(any)":"ilikeAnyOf",is:"is",in:"in",cs:"contains",cd:"containedBy",sr:"rangeGt",nxl:"rangeGte",sl:"rangeLt",nxr:"rangeLte",adj:"rangeAdjacent",ov:"overlaps",fts:"",plfts:"plain",phfts:"phrase",wfts:"websearch",not:"not"},wLA=["select","insert","upsert","update","delete"];function ij(A){try{A.__SENTRY_INSTRUMENTED__=!0}catch{}}function nj(A){try{return A.__SENTRY_INSTRUMENTED__}catch{return!1}}function EUB(A,Q={}){switch(A){case"GET":return"select";case"POST":if(Q.Prefer?.includes("resolution="))return"upsert";else return"insert";case"PATCH":return"update";case"DELETE":return"delete";default:return""}}function KUB(A,Q){if(Q===""||Q==="*")return"select(*)";if(A==="select")return`select(${Q})`;if(A==="or"||A.endsWith(".or"))return`${A}${Q}`;let[B,...Y]=Q.split("."),J;if(B?.startsWith("fts"))J="textSearch";else if(B?.startsWith("plfts"))J="textSearch[plain]";else if(B?.startsWith("phfts"))J="textSearch[phrase]";else if(B?.startsWith("wfts"))J="textSearch[websearch]";else J=B&&UUB[B]||"filter";return`${J}(${A}, ${Y.join(".")})`}function RLA(A,Q=!1){return new Proxy(A,{apply(B,Y,J){return b8({name:A.name,attributes:{[DQ]:"auto.db.supabase",[YQ]:`db.auth.${Q?"admin.":""}${A.name}`}},(C)=>{return Reflect.apply(B,Y,J).then((X)=>{if(X&&typeof X==="object"&&"error"in X&&X.error)C.setStatus({code:s9}),jB(X.error,{mechanism:{handled:!1}});else C.setStatus({code:BW});return C.end(),X}).catch((X)=>{throw C.setStatus({code:s9}),C.end(),jB(X,{mechanism:{handled:!1}}),X}).then(...J)})}})}function VUB(A){let Q=A.auth;if(!Q||nj(A.auth))return;for(let B of ZUB){let Y=Q[B];if(!Y)continue;if(typeof A.auth[B]==="function")A.auth[B]=RLA(Y)}for(let B of $UB){let Y=Q.admin[B];if(!Y)continue;if(typeof A.auth.admin[B]==="function")A.auth.admin[B]=RLA(Y,!0)}ij(A.auth)}function IUB(A){if(nj(A.prototype.from))return;A.prototype.from=new Proxy(A.prototype.from,{apply(Q,B,Y){let J=Reflect.apply(Q,B,Y),C=J.constructor;return DUB(C),J}}),ij(A.prototype.from)}function HUB(A){if(nj(A.prototype.then))return;A.prototype.then=new Proxy(A.prototype.then,{apply(Q,B,Y){let J=wLA,C=B,X=EUB(C.method,C.headers);if(!J.includes(X))return Reflect.apply(Q,B,Y);if(!C?.url?.pathname||typeof C.url.pathname!=="string")return Reflect.apply(Q,B,Y);let G=C.url.pathname.split("/"),W=G.length>0?G[G.length-1]:"",F=`from(${W})`,Z=[];for(let[E,K]of C.url.searchParams.entries())Z.push(KUB(E,K));let U=Object.create(null);if(k5(C.body))for(let[E,K]of Object.entries(C.body))U[E]=K;let $={"db.table":W,"db.schema":C.schema,"db.url":C.url.origin,"db.sdk":C.headers["X-Client-Info"],"db.system":"postgresql",[DQ]:"auto.db.supabase",[YQ]:`db.${X}`};if(Z.length)$["db.query"]=Z;if(Object.keys(U).length)$["db.body"]=U;return b8({name:F,attributes:$},(E)=>{return Reflect.apply(Q,B,[]).then((K)=>{if(E){if(K&&typeof K==="object"&&"status"in K)mE(E,K.status||500);E.end()}if(K.error){let H=Error(K.error.message);if(K.error.code)H.code=K.error.code;if(K.error.details)H.details=K.error.details;let D={};if(Z.length)D.query=Z;if(Object.keys(U).length)D.body=U;jB(H,{contexts:{supabase:D}})}let I={type:"supabase",category:`db.${X}`,message:F},V={};if(Z.length)V.query=Z;if(Object.keys(U).length)V.body=U;if(Object.keys(V).length)I.data=V;return E9(I),K},(K)=>{if(E)mE(E,500),E.end();throw K}).then(...Y)})}}),ij(A.prototype.then)}function DUB(A){for(let Q of wLA){if(nj(A.prototype[Q]))continue;A.prototype[Q]=new Proxy(A.prototype[Q],{apply(B,Y,J){let C=Reflect.apply(B,Y,J),X=C.constructor;return OA&&e.log(`Instrumenting ${Q} operation's PostgRESTFilterBuilder`),HUB(X),C}}),ij(A.prototype[Q])}}var sj=(A)=>{if(!A){OA&&e.warn("Supabase integration was not installed because no Supabase client was provided.");return}let Q=A.constructor===Function?A:A.constructor;IUB(Q),VUB(A)},NUB="Supabase",LUB=(A)=>{return{setupOnce(){sj(A)},name:NUB}},Ac=wA((A)=>{return LUB(A.supabaseClient)});var qUB=10,MUB="ZodErrors";function zUB(A){return aC(A)&&A.name==="ZodError"&&Array.isArray(A.issues)}function RUB(A){return{...A,path:"path"in A&&Array.isArray(A.path)?A.path.join("."):void 0,keys:"keys"in A?JSON.stringify(A.keys):void 0,unionErrors:"unionErrors"in A?JSON.stringify(A.unionErrors):void 0}}function wUB(A){return A.map((Q)=>{if(typeof Q==="number")return"";else return Q}).join(".")}function jUB(A){let Q=new Set;for(let Y of A.issues){let J=wUB(Y.path);if(J.length>0)Q.add(J)}let B=Array.from(Q);if(B.length===0){let Y="variable";if(A.issues.length>0){let J=A.issues[0];if(J!==void 0&&"expected"in J&&typeof J.expected==="string")Y=J.expected}return`Failed to validate ${Y}`}return`Failed to validate keys: ${n9(B.join(", "),100)}`}function OUB(A,Q=!1,B,Y){if(!B.exception?.values||!Y.originalException||!zUB(Y.originalException)||Y.originalException.issues.length===0)return B;try{let C=(Q?Y.originalException.issues:Y.originalException.issues.slice(0,A)).map(RUB);if(Q){if(!Array.isArray(Y.attachments))Y.attachments=[];Y.attachments.push({filename:"zod_issues.json",data:JSON.stringify({issues:C})})}return{...B,exception:{...B.exception,values:[{...B.exception.values[0],value:jUB(Y.originalException)},...B.exception.values.slice(1)]},extra:{...B.extra,"zoderror.issues":C.slice(0,A)}}}catch(J){return{...B,extra:{...B.extra,"zoderrors sentry integration parse error":{message:"an exception was thrown while processing ZodError within applyZodErrorsToEvent()",error:J instanceof Error?`${J.name}: ${J.message} -${J.stack}`:"unknown"}}}}}var PUB=(A={})=>{let Q=A.limit??qUB;return{name:MUB,processEvent(B,Y){return OUB(Q,A.saveZodIssuesAsAttachment,B,Y)}}},Qc=wA(PUB);var TUB="Console",fN=wA((A={})=>{let Q=new Set(A.levels||oC);return{name:TUB,setup(B){rE(({args:Y,level:J})=>{if(gA()!==B||!Q.has(J))return;SUB(J,Y)})}}});function SUB(A,Q){let B={category:"console",data:{arguments:Q,logger:"console"},level:pj(A),message:jLA(Q)};if(A==="assert")if(Q[0]===!1){let Y=Q.slice(1);B.message=Y.length>0?`Assertion failed: ${jLA(Y)}`:"Assertion failed",B.data.arguments=Y}else return;E9(B,{input:Q,level:A})}function jLA(A){return"util"in AQ&&typeof AQ.util.format==="function"?AQ.util.format(...A):o7(A," ")}function OLA(A){return!!A&&typeof A._profiler<"u"&&typeof A._profiler.start==="function"&&typeof A._profiler.stop==="function"}function kUB(){let A=gA();if(!A){OA&&e.warn("No Sentry client available, profiling is not started");return}let Q=A.getIntegrationByName("ProfilingIntegration");if(!Q){OA&&e.warn("ProfilingIntegration is not available");return}if(!OLA(Q)){OA&&e.warn("Profiler is not available on profiling integration.");return}Q._profiler.start()}function _UB(){let A=gA();if(!A){OA&&e.warn("No Sentry client available, profiling is not started");return}let Q=A.getIntegrationByName("ProfilingIntegration");if(!Q){OA&&e.warn("ProfilingIntegration is not available");return}if(!OLA(Q)){OA&&e.warn("Profiler is not available on profiling integration.");return}Q._profiler.stop()}var Bc={startProfiler:kUB,stopProfiler:_UB};function FW(A){if(!A)return{};let Q=A.match(/^(([^:/?#]+):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?$/);if(!Q)return{};let B=Q[6]||"",Y=Q[8]||"";return{host:Q[4],path:Q[5],protocol:Q[2],search:B,hash:Y,relative:Q[5]+B+Y}}function aE(A){return A.split(/[?#]/,1)[0]}function ZW(A){let{protocol:Q,host:B,path:Y}=A,J=B?.replace(/^.*@/,"[filtered]:[filtered]@").replace(/(:80)$/,"").replace(/(:443)$/,"")||"";return`${Q?`${Q}://`:""}${J}${Y}`}var PLA={mechanism:{handled:!1,data:{function:"trpcMiddleware"}}};function vUB(A){if(typeof A==="object"&&A!==null&&"ok"in A&&!A.ok&&"error"in A)jB(A.error,PLA)}function Yc(A={}){return async function(Q){let{path:B,type:Y,next:J,rawInput:C,getRawInput:X}=Q,W=gA()?.getOptions(),F={procedure_path:B,procedure_type:Y};if(p0(F,"__sentry_override_normalization_depth__",1+(W?.normalizeDepth??5)),A.attachRpcInput!==void 0?A.attachRpcInput:W?.sendDefaultPii){if(C!==void 0)F.input=SJ(C);if(X!==void 0&&typeof X==="function")try{let Z=await X();F.input=SJ(Z)}catch(Z){}}return BG((Z)=>{return Z.setContext("trpc",F),jN({name:`trpc/${B}`,op:"rpc.server",attributes:{[Q0]:"route",[DQ]:"auto.rpc.trpc"},forceTransaction:!!A.forceTransaction},async(U)=>{try{let $=await J();return vUB($),U.end(),$}catch($){throw jB($,PLA),U.end(),$}})})}}var TLA=new WeakSet;function Xc(A){if(TLA.has(A))return A;if(!yUB(A))return OA&&e.warn("Did not patch MCP server. Interface is incompatible."),A;return A.connect=new Proxy(A.connect,{apply(Q,B,Y){let[J,...C]=Y;if(!J.onclose)J.onclose=()=>{if(J.sessionId)kLA(J.sessionId)};if(!J.onmessage)J.onmessage=(G)=>{if(J.sessionId&&SLA(G))_LA(J.sessionId,G.id)};let X=new Proxy(J,{set(G,W,F){if(W==="onmessage")G[W]=new Proxy(F,{apply(Z,U,$){let[E]=$;if(J.sessionId&&SLA(E))_LA(J.sessionId,E.id);return Reflect.apply(Z,U,$)}});else if(W==="onclose")G[W]=new Proxy(F,{apply(Z,U,$){if(J.sessionId)kLA(J.sessionId);return Reflect.apply(Z,U,$)}});else G[W]=F;return!0}});return Reflect.apply(Q,B,[X,...C])}}),A.resource=new Proxy(A.resource,{apply(Q,B,Y){let J=Y[0],C=Y[Y.length-1];if(typeof J!=="string"||typeof C!=="function")return Q.apply(B,Y);let X=new Proxy(C,{apply(G,W,F){let Z=F.find(Jc);return Cc(Z,()=>{return b8({name:`mcp-server/resource:${J}`,forceTransaction:!0,attributes:{[YQ]:"auto.function.mcp-server",[DQ]:"auto.function.mcp-server",[Q0]:"route","mcp_server.resource":J}},()=>G.apply(W,F))})}});return Reflect.apply(Q,B,[...Y.slice(0,-1),X])}}),A.tool=new Proxy(A.tool,{apply(Q,B,Y){let J=Y[0],C=Y[Y.length-1];if(typeof J!=="string"||typeof C!=="function")return Q.apply(B,Y);let X=new Proxy(C,{apply(G,W,F){let Z=F.find(Jc);return Cc(Z,()=>{return b8({name:`mcp-server/tool:${J}`,forceTransaction:!0,attributes:{[YQ]:"auto.function.mcp-server",[DQ]:"auto.function.mcp-server",[Q0]:"route","mcp_server.tool":J}},()=>G.apply(W,F))})}});return Reflect.apply(Q,B,[...Y.slice(0,-1),X])}}),A.prompt=new Proxy(A.prompt,{apply(Q,B,Y){let J=Y[0],C=Y[Y.length-1];if(typeof J!=="string"||typeof C!=="function")return Q.apply(B,Y);let X=new Proxy(C,{apply(G,W,F){let Z=F.find(Jc);return Cc(Z,()=>{return b8({name:`mcp-server/prompt:${J}`,forceTransaction:!0,attributes:{[YQ]:"auto.function.mcp-server",[DQ]:"auto.function.mcp-server",[Q0]:"route","mcp_server.prompt":J}},()=>G.apply(W,F))})}});return Reflect.apply(Q,B,[...Y.slice(0,-1),X])}}),TLA.add(A),A}function yUB(A){return typeof A==="object"&&A!==null&&"resource"in A&&typeof A.resource==="function"&&"tool"in A&&typeof A.tool==="function"&&"prompt"in A&&typeof A.prompt==="function"&&"connect"in A&&typeof A.connect==="function"}function SLA(A){return typeof A==="object"&&A!==null&&"id"in A&&(typeof A.id==="number"||typeof A.id==="string")}function Jc(A){return typeof A==="object"&&A!==null&&"sessionId"in A&&typeof A.sessionId==="string"&&"requestId"in A&&(typeof A.requestId==="number"||typeof A.requestId==="string")}var rj=new Map;function kLA(A){rj.delete(A)}function _LA(A,Q){let B=Q1();if(B){let Y=rj.get(A)??new Map;Y.set(Q,B),rj.set(A,Y)}}function Cc(A,Q){if(A){let{sessionId:B,requestId:Y}=A,J=rj.get(B);if(!J)return Q();let C=J.get(Y);if(!C)return Q();return J.delete(Y),GW(C,()=>{return Q()})}return Q()}function Gc(A,Q={},B=sQ()){let{message:Y,name:J,email:C,url:X,source:G,associatedEventId:W,tags:F}=A,Z={contexts:{feedback:{contact_email:C,name:J,message:Y,url:X,source:G,associated_event_id:W}},type:"feedback",level:"info",tags:F},U=B?.getClient()||gA();if(U)U.emit("beforeSendFeedback",Z,Q);return B.captureEvent(Z,Q)}var gUB="ConsoleLogs",vLA={[DQ]:"auto.console.logging"},hUB=(A={})=>{let Q=A.levels||oC;return{name:gUB,setup(B){if(!B.getOptions()._experiments?.enableLogs){OA&&e.warn("`_experiments.enableLogs` is not enabled, ConsoleLogs integration disabled");return}rE(({args:Y,level:J})=>{if(gA()!==B||!Q.includes(J))return;if(J==="assert"){if(!Y[0]){let X=Y.slice(1),G=X.length>0?`Assertion failed: ${yLA(X)}`:"Assertion failed";pZ({level:"error",message:G,attributes:vLA})}return}let C=J==="log";pZ({level:C?"info":J,message:yLA(Y),severityNumber:C?10:void 0,attributes:vLA})})}}},Wc=wA(hUB);function yLA(A){return"util"in AQ&&typeof AQ.util.format==="function"?AQ.util.format(...A):o7(A," ")}function bN(A){if(A===void 0)return;else if(A>=400&&A<500)return"warning";else if(A>=500)return"error";else return}function hLA(A,Q=!1){return!(Q||A&&!A.startsWith("/")&&!A.match(/^[A-Z]:/)&&!A.startsWith(".")&&!A.match(/^[a-zA-Z]([a-zA-Z0-9.\-+])*:\/\//))&&A!==void 0&&!A.includes("node_modules/")}function xLA(A){let Q=/^\s*[-]{4,}$/,B=/at (?:async )?(?:(.+?)\s+\()?(?:(.+):(\d+):(\d+)?|([^)]+))\)?/;return(Y)=>{let J=Y.match(B);if(J){let C,X,G,W,F;if(J[1]){G=J[1];let $=G.lastIndexOf(".");if(G[$-1]===".")$--;if($>0){C=G.slice(0,$),X=G.slice($+1);let E=C.indexOf(".Module");if(E>0)G=G.slice(E+1),C=C.slice(0,E)}W=void 0}if(X)W=C,F=X;if(X==="")F=void 0,G=void 0;if(G===void 0)F=F||ou,G=W?`${W}.${F}`:F;let Z=J[2]?.startsWith("file://")?J[2].slice(7):J[2],U=J[5]==="native";if(Z?.match(/\/[A-Z]:/))Z=Z.slice(1);if(!Z&&J[5]&&!U)Z=J[5];return{filename:Z?decodeURI(Z):void 0,module:A?A(Z):void 0,function:G,lineno:gLA(J[3]),colno:gLA(J[4]),in_app:hLA(Z||"",U)}}if(Y.match(Q))return{filename:Y};return}}function Fc(A){return[90,xLA(A)]}function gLA(A){return parseInt(A||"",10)||void 0}class m8{constructor(A){this._maxSize=A,this._cache=new Map}get size(){return this._cache.size}get(A){let Q=this._cache.get(A);if(Q===void 0)return;return this._cache.delete(A),this._cache.set(A,Q),Q}set(A,Q){if(this._cache.size>=this._maxSize)this._cache.delete(this._cache.keys().next().value);this._cache.set(A,Q)}remove(A){let Q=this._cache.get(A);if(Q)this._cache.delete(A);return Q}clear(){this._cache.clear()}keys(){return Array.from(this._cache.keys())}values(){let A=[];return this._cache.forEach((Q)=>A.push(Q)),A}}function XG(A,...Q){let[B,Y,J]=Q;if(Array.isArray(Y)){let C={...J};C["sentry.message.template"]=B,Y.forEach((G,W)=>{C[`sentry.message.parameter.${W}`]=G});let X=xUB(B,...Y);pZ({level:A,message:X,attributes:C})}else pZ({level:A,message:B,attributes:Y})}function fUB(...A){XG("trace",...A)}function bUB(...A){XG("debug",...A)}function mUB(...A){XG("info",...A)}function uUB(...A){XG("warn",...A)}function dUB(...A){XG("error",...A)}function cUB(...A){XG("fatal",...A)}var G4Q=qA(yA(),1),W4Q=qA(wiA(),1);var Bi=qA(NB(),1),YP={};function EQ(A,Q,B){if(B)return epB(A,Q,B);return tpB(A,Q)}function tpB(A,Q){return Object.assign((B)=>{let Y=YP[A];if(Y){if(B)Y.setConfig(B);return Y}let J=Q(B);return YP[A]=J,Bi.registerInstrumentations({instrumentations:[J]}),J},{id:A})}function epB(A,Q,B){return Object.assign((Y)=>{let J=B(Y),C=YP[A];if(C)return C.setConfig(J),C;let X=new Q(J);return YP[A]=X,Bi.registerInstrumentations({instrumentations:[X]}),X},{id:A})}function VW(A){let Q=!1,B=[];if(!AiB(A))Q=!0;else{let J=A._wrap;A._wrap=(...C)=>{return Q=!0,B.forEach((X)=>X()),B=[],J(...C)}}return(J)=>{if(Q)J();else B.push(J)}}function AiB(A){return typeof A._wrap==="function"}function s0(A,Q){A.setAttribute(DQ,Q)}function jL(A){let Q=A.protocol||"",B=A.hostname||A.host||"",Y=!A.port||A.port===80||A.port===443||/^(.*):(\d+)$/.test(B)?"":`:${A.port}`,J=A.path?A.path:"/";return`${Q}//${B}${Y}${J}`}var OK=qA(yA(),1),zP=qA(MB(),1),_L=qA(NB(),1);import{subscribe as qP,unsubscribe as MP}from"node:diagnostics_channel";var oQ=qA(dB(),1);var t9=qA(yA(),1),bA=qA(yA(),1),r5=qA(MB(),1),DW=qA(_i(),1),mi="sentry.parentIsRemote",wK="sentry.graphql.operation";function ui(A){if("parentSpanId"in A)return A.parentSpanId;else if("parentSpanContext"in A)return A.parentSpanContext?.spanId;return}function di(A){let Q=A;return!!Q.attributes&&typeof Q.attributes==="object"}function VH0(A){return typeof A.kind==="number"}function IH0(A){return!!A.status}function g$Q(A){return!!A.name}function HH0(A){if(!di(A))return{};let Q=A.attributes[oQ.ATTR_URL_FULL]||A.attributes[oQ.SEMATTRS_HTTP_URL],B={url:Q,"http.method":A.attributes[oQ.ATTR_HTTP_REQUEST_METHOD]||A.attributes[oQ.SEMATTRS_HTTP_METHOD]};if(!B["http.method"]&&B.url)B["http.method"]="GET";try{if(typeof Q==="string"){let Y=FW(Q);if(B.url=ZW(Y),Y.search)B["http.query"]=Y.search;if(Y.hash)B["http.fragment"]=Y.hash}}catch{}return B}function DH0(A){if(VH0(A))return A.kind;return bA.SpanKind.INTERNAL}var vi="sentry-trace",yi="baggage",ci="sentry.dsc",li="sentry.sampled_not_recording",h$Q="sentry.url",NH0="sentry.sample_rand",LH0="sentry.sample_rate",x$Q=bA.createContextKey("sentry_scopes"),gi=bA.createContextKey("sentry_fork_isolation_scope"),hi=bA.createContextKey("sentry_fork_set_scope"),xi=bA.createContextKey("sentry_fork_set_isolation_scope"),f$Q="_scopeContext";function jK(A){return A.getValue(x$Q)}function b$Q(A,Q){return A.setValue(x$Q,Q)}function qH0(A,Q){p0(A,f$Q,Q)}function pi(A){return A[f$Q]}function RK(A){let{traceFlags:Q,traceState:B}=A,Y=B?B.get(li)==="1":!1;if(Q===bA.TraceFlags.SAMPLED)return!0;if(Y)return!1;let J=B?B.get(ci):void 0,C=J?YW(J):void 0;if(C?.sampled==="true")return!0;if(C?.sampled==="false")return!1;return}function m$Q(A,Q,B){let Y=Q[oQ.ATTR_HTTP_REQUEST_METHOD]||Q[oQ.SEMATTRS_HTTP_METHOD];if(Y)return zH0({attributes:Q,name:A,kind:B},Y);let J=Q[oQ.SEMATTRS_DB_SYSTEM],C=typeof Q[YQ]==="string"&&Q[YQ].startsWith("cache.");if(J&&!C)return MH0({attributes:Q,name:A});let X=Q[Q0]==="custom"?"custom":"route";if(Q[oQ.SEMATTRS_RPC_SERVICE])return{...TL(A,Q,"route"),op:"rpc"};if(Q[oQ.SEMATTRS_MESSAGING_SYSTEM])return{...TL(A,Q,X),op:"message"};let F=Q[oQ.SEMATTRS_FAAS_TRIGGER];if(F)return{...TL(A,Q,X),op:F.toString()};return{op:void 0,description:A,source:"custom"}}function u$Q(A){let Q=di(A)?A.attributes:{},B=g$Q(A)?A.name:"",Y=DH0(A);return m$Q(B,Q,Y)}function MH0({attributes:A,name:Q}){let B=A[eC];if(typeof B==="string")return{op:"db",description:B,source:A[Q0]||"custom"};if(A[Q0]==="custom")return{op:"db",description:Q,source:"custom"};let Y=A[oQ.SEMATTRS_DB_STATEMENT];return{op:"db",description:Y?Y.toString():Q,source:"task"}}function zH0({name:A,kind:Q,attributes:B},Y){let J=["http"];switch(Q){case bA.SpanKind.CLIENT:J.push("client");break;case bA.SpanKind.SERVER:J.push("server");break}if(B["sentry.http.prefetch"])J.push("prefetch");let{urlPath:C,url:X,query:G,fragment:W,hasRoute:F}=wH0(B,Q);if(!C)return{...TL(A,B),op:J.join(".")};let Z=B[wK],U=`${Y} ${C}`,$=Z?`${U} (${RH0(Z)})`:U,E=F||C==="/"?"route":"url",K={};if(X)K.url=X;if(G)K["http.query"]=G;if(W)K["http.fragment"]=W;let I=Q===bA.SpanKind.CLIENT||Q===bA.SpanKind.SERVER,H=!`${B[DQ]||"manual"}`.startsWith("auto"),D=B[Q0]==="custom",L=B[eC],z=!D&&L==null&&(I||!H),{description:M,source:N}=z?{description:$,source:E}:TL(A,B);return{op:J.join("."),description:M,source:N,data:K}}function RH0(A){if(Array.isArray(A)){let Q=A.slice().sort();if(Q.length<=5)return Q.join(", ");else return`${Q.slice(0,5).join(", ")}, +${Q.length-5}`}return`${A}`}function wH0(A,Q){let B=A[oQ.SEMATTRS_HTTP_TARGET],Y=A[oQ.SEMATTRS_HTTP_URL]||A[oQ.ATTR_URL_FULL],J=A[oQ.ATTR_HTTP_ROUTE],C=typeof Y==="string"?FW(Y):void 0,X=C?ZW(C):void 0,G=C?.search||void 0,W=C?.hash||void 0;if(typeof J==="string")return{urlPath:J,url:X,query:G,fragment:W,hasRoute:!0};if(Q===bA.SpanKind.SERVER&&typeof B==="string")return{urlPath:aE(B),url:X,query:G,fragment:W,hasRoute:!1};if(C)return{urlPath:X,url:X,query:G,fragment:W,hasRoute:!1};if(typeof B==="string")return{urlPath:aE(B),url:X,query:G,fragment:W,hasRoute:!1};return{urlPath:void 0,url:X,query:G,fragment:W,hasRoute:!1}}function TL(A,Q,B="custom"){let Y=Q[Q0]||B,J=Q[eC];if(J&&typeof J==="string")return{description:J,source:Y};return{description:A,source:Y}}function d$Q(A){A.on("createDsc",(Q,B)=>{if(!B)return;let C=eA(B).data[Q0],{description:X}=g$Q(B)?u$Q(B):{description:void 0};if(C!=="url"&&X)Q.transaction=X;if(U9()){let G=RK(B.spanContext());Q.sampled=G==null?void 0:String(G)}})}function c$Q(){return bA.trace.getActiveSpan()}var HX=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__;function l$Q({dsc:A,sampled:Q}){let B=A?JW(A):void 0,Y=new r5.TraceState,J=B?Y.set(ci,B):Y;return Q===!1?J.set(li,"1"):J}var p$Q=new Set;function i$Q(){return Array.from(p$Q)}function NP(A){p$Q.add(A)}class ii extends r5.W3CBaggagePropagator{constructor(){super();NP("SentryPropagator"),this._urlMatchesTargetsMap=new m8(100)}inject(A,Q,B){if(r5.isTracingSuppressed(A)){HX&&e.log("[Tracing] Not injecting trace data for url because tracing is suppressed.");return}let Y=bA.trace.getSpan(A),J=Y&&PH0(Y),C=gA()?.getOptions()?.tracePropagationTargets;if(!SL(J,C,this._urlMatchesTargetsMap)){HX&&e.log("[Tracing] Not injecting trace data for url because it does not match tracePropagationTargets:",J);return}let X=OH0(Q),G=bA.propagation.getBaggage(A)||bA.propagation.createBaggage({}),{dynamicSamplingContext:W,traceId:F,spanId:Z,sampled:U}=n$Q(A);if(X){let $=gZ(X);if($)Object.entries($).forEach(([E,K])=>{G=G.setEntry(E,{value:K})})}if(W)G=Object.entries(W).reduce(($,[E,K])=>{if(K)return $.setEntry(`${KN}${E}`,{value:K});return $},G);if(F&&F!==bA.INVALID_TRACEID)B.set(Q,vi,CW(F,Z,U));super.inject(bA.propagation.setBaggage(A,G),Q,B)}extract(A,Q,B){let Y=B.get(Q,vi),J=B.get(Q,yi),C=Y?Array.isArray(Y)?Y[0]:Y:void 0;return r$Q(s$Q(A,{sentryTrace:C,baggage:J}))}fields(){return[vi,yi]}}var _$Q="[Tracing] Not injecting trace data for url because it does not match tracePropagationTargets:";function SL(A,Q,B){if(typeof A!=="string"||!Q)return!0;let Y=B?.get(A);if(Y!==void 0)return HX&&!Y&&e.log(_$Q,A),Y;let J=t7(A,Q);return B?.set(A,J),HX&&!J&&e.log(_$Q,A),J}function n$Q(A){let Q=bA.trace.getSpan(A);if(Q?.spanContext().isRemote){let X=Q.spanContext();return{dynamicSamplingContext:i0(Q),traceId:X.traceId,spanId:void 0,sampled:RK(X)}}if(Q){let X=Q.spanContext();return{dynamicSamplingContext:i0(Q),traceId:X.traceId,spanId:X.spanId,sampled:RK(X)}}let B=jK(A)?.scope||sQ(),Y=gA(),J=B.getPropagationContext();return{dynamicSamplingContext:Y?YG(Y,B):void 0,traceId:J.traceId,spanId:J.propagationSpanId,sampled:J.sampled}}function s$Q(A,{sentryTrace:Q,baggage:B}){let Y=hZ(Q,B),{traceId:J,parentSpanId:C,sampled:X,dsc:G}=Y;if(!C)return A;let W=TH0({traceId:J,spanId:C,sampled:X,dsc:G});return bA.trace.setSpanContext(A,W)}function jH0(A,Q,B){let Y=r$Q(s$Q(A,Q));return bA.context.with(Y,B)}function r$Q(A){let Q=jK(A),B={scope:Q?Q.scope:sQ().clone(),isolationScope:Q?Q.isolationScope:RQ()};return b$Q(A,B)}function OH0(A){try{let Q=A[yi];return Array.isArray(Q)?Q.join(","):Q}catch{return}}function PH0(A){let Q=eA(A).data,B=Q[oQ.SEMATTRS_HTTP_URL]||Q[oQ.ATTR_URL_FULL];if(typeof B==="string")return B;let Y=A.spanContext().traceState?.get(h$Q);if(Y)return Y;return}function TH0({spanId:A,traceId:Q,sampled:B,dsc:Y}){let J=l$Q({dsc:Y,sampled:B});return{traceId:Q,spanId:A,isRemote:!0,traceFlags:B?bA.TraceFlags.SAMPLED:bA.TraceFlags.NONE,traceState:J}}function SH0(A,Q){let B=ni(),{name:Y,parentSpan:J}=A;return ai(J)(()=>{let X=ri(A.scope,A.forceTransaction),W=A.onlyIfParent&&!bA.trace.getSpan(X)?r5.suppressTracing(X):X,F=si(A);return B.startActiveSpan(Y,F,W,(Z)=>{return mZ(()=>Q(Z),()=>{if(eA(Z).status===void 0)Z.setStatus({code:bA.SpanStatusCode.ERROR})},()=>Z.end())})})}function kH0(A,Q){let B=ni(),{name:Y,parentSpan:J}=A;return ai(J)(()=>{let X=ri(A.scope,A.forceTransaction),W=A.onlyIfParent&&!bA.trace.getSpan(X)?r5.suppressTracing(X):X,F=si(A);return B.startActiveSpan(Y,F,W,(Z)=>{return mZ(()=>Q(Z,()=>Z.end()),()=>{if(eA(Z).status===void 0)Z.setStatus({code:bA.SpanStatusCode.ERROR})})})})}function _H0(A){let Q=ni(),{name:B,parentSpan:Y}=A;return ai(Y)(()=>{let C=ri(A.scope,A.forceTransaction),G=A.onlyIfParent&&!bA.trace.getSpan(C)?r5.suppressTracing(C):C,W=si(A);return Q.startSpan(B,W,G)})}function a$Q(A,Q){let B=A?bA.trace.setSpan(bA.context.active(),A):bA.trace.deleteSpan(bA.context.active());return bA.context.with(B,()=>Q(sQ()))}function ni(){return gA()?.tracer||bA.trace.getTracer("@sentry/opentelemetry",l0)}function si(A){let{startTime:Q,attributes:B,kind:Y,op:J,links:C}=A,X=typeof Q==="number"?vH0(Q):Q;return{attributes:J?{[YQ]:J,...B}:B,kind:Y,links:C,startTime:X}}function vH0(A){return A<9999999999?A*1000:A}function ri(A,Q){let B=yH0(A),Y=bA.trace.getSpan(B);if(!Y)return B;if(!Q)return B;let J=bA.trace.deleteSpan(B),{spanId:C,traceId:X}=Y.spanContext(),G=RK(Y.spanContext()),W=K0(Y),F=i0(W),Z=l$Q({dsc:F,sampled:G}),U={traceId:X,spanId:C,isRemote:!0,traceFlags:G?bA.TraceFlags.SAMPLED:bA.TraceFlags.NONE,traceState:Z};return bA.trace.setSpanContext(J,U)}function yH0(A){if(A){let Q=pi(A);if(Q)return Q}return bA.context.active()}function gH0(A,Q){return jH0(bA.context.active(),A,Q)}function o$Q(A,Q){let B=pi(Q),Y=B&&bA.trace.getSpan(B),J=Y?XW(Y):hE(Q);return[Y?i0(Y):YG(A,Q),J]}function ai(A){return A!==void 0?(Q)=>{return a$Q(A,Q)}:(Q)=>Q()}function hH0(A){let Q=r5.suppressTracing(bA.context.active());return bA.context.with(Q,A)}function t$Q(A){A.on("preprocessEvent",(Q)=>{let B=c$Q();if(!B||Q.type==="transaction")return;Q.contexts={trace:XW(B),...Q.contexts};let Y=K0(B);return Q.sdkProcessingMetadata={dynamicSamplingContext:i0(Y),...Q.sdkProcessingMetadata},Q})}function xH0({span:A}={}){let Q=t9.context.active();if(A){let{scope:X}=A1(A);Q=X&&pi(X)||t9.trace.setSpan(t9.context.active(),A)}let{traceId:B,spanId:Y,sampled:J,dynamicSamplingContext:C}=n$Q(Q);return{"sentry-trace":CW(B,Y,J),baggage:JW(C)}}function LP(){function A(){let G=t9.context.active(),W=jK(G);if(W)return W;return{scope:yE(),isolationScope:v5()}}function Q(G){let W=t9.context.active();return t9.context.with(W,()=>{return G(C())})}function B(G,W){let F=t9.context.active();return t9.context.with(F.setValue(hi,G),()=>{return W(G)})}function Y(G){let W=t9.context.active();return t9.context.with(W.setValue(gi,!0),()=>{return G(X())})}function J(G,W){let F=t9.context.active();return t9.context.with(F.setValue(xi,G),()=>{return W(X())})}function C(){return A().scope}function X(){return A().isolationScope}du({withScope:Q,withSetScope:B,withSetIsolationScope:J,withIsolationScope:Y,getCurrentScope:C,getIsolationScope:X,startSpan:SH0,startSpanManual:kH0,startInactiveSpan:_H0,getActiveSpan:c$Q,suppressTracing:hH0,getTraceData:xH0,continueTrace:gH0,withActiveSpan:a$Q})}function e$Q(A){class Q extends A{constructor(...B){super(...B);NP("SentryContextManager")}with(B,Y,J,...C){let X=jK(B),G=X?.scope||sQ(),W=X?.isolationScope||RQ(),F=B.getValue(gi)===!0,Z=B.getValue(hi),U=B.getValue(xi),$=Z||G.clone(),E=U||(F?W.clone():W),V=b$Q(B,{scope:$,isolationScope:E}).deleteValue(gi).deleteValue(hi).deleteValue(xi);return qH0($,V),super.with(V,Y,J,...C)}}return Q}function fH0(A){let Q=new Map;for(let B of A)bH0(Q,B);return Array.from(Q,function([B,Y]){return Y})}function A4Q(A){return A.attributes[mi]!==!0?ui(A):void 0}function bH0(A,Q){let B=Q.spanContext().spanId,Y=A4Q(Q);if(!Y){fi(A,{id:B,span:Q,children:[]});return}let J=mH0(A,Y),C=fi(A,{id:B,span:Q,parentNode:J,children:[]});J.children.push(C)}function mH0(A,Q){let B=A.get(Q);if(B)return B;return fi(A,{id:Q,children:[]})}function fi(A,Q){let B=A.get(Q.id);if(B?.span)return B;if(B&&!B.span)return B.span=Q.span,B.parentNode=Q.parentNode,B;return A.set(Q.id,Q),Q}var Q4Q={"1":"cancelled","2":"unknown_error","3":"invalid_argument","4":"deadline_exceeded","5":"not_found","6":"already_exists","7":"permission_denied","8":"resource_exhausted","9":"failed_precondition","10":"aborted","11":"out_of_range","12":"unimplemented","13":"internal_error","14":"unavailable","15":"data_loss","16":"unauthenticated"},uH0=(A)=>{return Object.values(Q4Q).includes(A)};function B4Q(A){let Q=di(A)?A.attributes:{},B=IH0(A)?A.status:void 0;if(B){if(B.code===bA.SpanStatusCode.OK)return{code:BW};else if(B.code===bA.SpanStatusCode.ERROR){if(typeof B.message>"u"){let J=v$Q(Q);if(J)return J}if(B.message&&uH0(B.message))return{code:s9,message:B.message};else return{code:s9,message:"unknown_error"}}}let Y=v$Q(Q);if(Y)return Y;if(B?.code===bA.SpanStatusCode.UNSET)return{code:BW};else return{code:s9,message:"unknown_error"}}function v$Q(A){let Q=A[oQ.ATTR_HTTP_RESPONSE_STATUS_CODE]||A[oQ.SEMATTRS_HTTP_STATUS_CODE],B=A[oQ.SEMATTRS_RPC_GRPC_STATUS_CODE],Y=typeof Q==="number"?Q:typeof Q==="string"?parseInt(Q):void 0;if(typeof Y==="number")return bE(Y);if(typeof B==="string")return{code:s9,message:Q4Q[B]||"unknown_error"};return}var y$Q=1000,dH0=300;class Y4Q{constructor(A){this._finishedSpanBucketSize=A?.timeout||dH0,this._finishedSpanBuckets=Array(this._finishedSpanBucketSize).fill(void 0),this._lastCleanupTimestampInS=Math.floor(Date.now()/1000),this._spansToBucketEntry=new WeakMap}export(A){let Q=Math.floor(Date.now()/1000);if(this._lastCleanupTimestampInS!==Q){let J=0;if(this._finishedSpanBuckets.forEach((C,X)=>{if(C&&C.timestampInS<=Q-this._finishedSpanBucketSize)J+=C.spans.size,this._finishedSpanBuckets[X]=void 0}),J>0)HX&&e.log(`SpanExporter dropped ${J} spans because they were pending for more than ${this._finishedSpanBucketSize} seconds.`);this._lastCleanupTimestampInS=Q}let B=Q%this._finishedSpanBucketSize,Y=this._finishedSpanBuckets[B]||{timestampInS:Q,spans:new Set};if(this._finishedSpanBuckets[B]=Y,Y.spans.add(A),this._spansToBucketEntry.set(A,Y),!A4Q(A))this._clearTimeout(),this._flushTimeout=setTimeout(()=>{this.flush()},1)}flush(){this._clearTimeout();let A=[];this._finishedSpanBuckets.forEach((J)=>{if(J)A.push(...J.spans)});let Q=cH0(A),B=Q.size,Y=A.length-B;HX&&e.log(`SpanExporter exported ${B} spans, ${Y} spans are waiting for their parent spans to finish`),Q.forEach((J)=>{let C=this._spansToBucketEntry.get(J);if(C)C.spans.delete(J)})}clear(){this._finishedSpanBuckets=this._finishedSpanBuckets.fill(void 0),this._clearTimeout()}_clearTimeout(){if(this._flushTimeout)clearTimeout(this._flushTimeout),this._flushTimeout=void 0}}function cH0(A){let Q=fH0(A),B=new Set;return pH0(Q).forEach((J)=>{let C=J.span;B.add(C);let X=nH0(C),G=X.spans||[];J.children.forEach((F)=>{bi(F,G,B)}),X.spans=G.length>y$Q?G.sort((F,Z)=>F.start_timestamp-Z.start_timestamp).slice(0,y$Q):G;let W=uZ(C.events);if(W)X.measurements=W;kN(X)}),B}function lH0(A){return!!A.span&&!A.parentNode}function pH0(A){return A.filter(lH0)}function iH0(A){let Q=A.attributes,B=Q[DQ],Y=Q[YQ],J=Q[Q0];return{origin:B,op:Y,source:J}}function nH0(A){let{op:Q,description:B,data:Y,origin:J="manual",source:C}=J4Q(A),X=A1(A),G=A.attributes[g5],W={[Q0]:C,[g5]:G,[YQ]:Q,[DQ]:J,...Y,...C4Q(A.attributes)},{links:F}=A,{traceId:Z,spanId:U}=A.spanContext(),$=ui(A),E=B4Q(A),K={parent_span_id:$,span_id:U,trace_id:Z,data:W,origin:J,op:Q,status:fZ(E),links:xZ(F)},I=W[oQ.ATTR_HTTP_RESPONSE_STATUS_CODE],V=typeof I==="number"?{response:{status_code:I}}:void 0;return{contexts:{trace:K,otel:{resource:A.resource.attributes},...V},spans:[],start_timestamp:r9(A.startTime),timestamp:r9(A.endTime),transaction:B,type:"transaction",sdkProcessingMetadata:{capturedSpanScope:X.scope,capturedSpanIsolationScope:X.isolationScope,sampleRate:G,dynamicSamplingContext:i0(A)},...C&&{transaction_info:{source:C}}}}function bi(A,Q,B){let Y=A.span;if(Y)B.add(Y);if(!Y){A.children.forEach((L)=>{bi(L,Q,B)});return}let C=Y.spanContext().spanId,X=Y.spanContext().traceId,G=ui(Y),{attributes:W,startTime:F,endTime:Z,links:U}=Y,{op:$,description:E,data:K,origin:I="manual"}=J4Q(Y),V={[DQ]:I,[YQ]:$,...C4Q(W),...K},H=B4Q(Y),D={span_id:C,trace_id:X,data:V,description:E,parent_span_id:G,start_timestamp:r9(F),timestamp:r9(Z)||void 0,status:fZ(H),op:$,origin:I,measurements:uZ(Y.events),links:xZ(U)};Q.push(D),A.children.forEach((L)=>{bi(L,Q,B)})}function J4Q(A){let{op:Q,source:B,origin:Y}=iH0(A),{op:J,description:C,source:X,data:G}=u$Q(A),W=Q||J,F=B||X,Z={...G,...sH0(A)};return{op:W,description:C,source:F,origin:Y,data:Z}}function C4Q(A){let Q={...A};return delete Q[g5],delete Q[mi],delete Q[eC],Q}function sH0(A){let Q=A.attributes,B={};if(A.kind!==bA.SpanKind.INTERNAL)B["otel.kind"]=bA.SpanKind[A.kind];let Y=Q[oQ.SEMATTRS_HTTP_STATUS_CODE];if(Y)B[oQ.ATTR_HTTP_RESPONSE_STATUS_CODE]=Y;let J=HH0(A);if(J.url)B.url=J.url;if(J["http.query"])B["http.query"]=J["http.query"].slice(1);if(J["http.fragment"])B["http.fragment"]=J["http.fragment"].slice(1);return B}function rH0(A,Q){let B=bA.trace.getSpan(Q),Y=jK(Q);if(B&&!B.spanContext().isRemote)uE(B,A);if(B?.spanContext().isRemote)A.setAttribute(mi,!0);if(Q===bA.ROOT_CONTEXT)Y={scope:yE(),isolationScope:v5()};if(Y)EN(A,Y.scope,Y.isolationScope);qN(A),gA()?.emit("spanStart",A)}function aH0(A){MN(A),gA()?.emit("spanEnd",A)}class oi{constructor(A){NP("SentrySpanProcessor"),this._exporter=new Y4Q(A)}async forceFlush(){this._exporter.flush()}async shutdown(){this._exporter.clear()}onStart(A,Q){rH0(A,Q)}onEnd(A){aH0(A),this._exporter.export(A)}}class ti{constructor(A){this._client=A,NP("SentrySampler")}shouldSample(A,Q,B,Y,J,C){let X=this._client.getOptions(),G=eH0(A),W=G?.spanContext();if(!U9(X))return zK({decision:void 0,context:A,spanAttributes:J});let F=J[oQ.SEMATTRS_HTTP_METHOD]||J[oQ.ATTR_HTTP_REQUEST_METHOD];if(Y===bA.SpanKind.CLIENT&&F&&(!G||W?.isRemote))return zK({decision:void 0,context:A,spanAttributes:J});let Z=G?oH0(G,Q,B):void 0;if(!(!G||W?.isRemote))return zK({decision:Z?DW.SamplingDecision.RECORD_AND_SAMPLED:DW.SamplingDecision.NOT_RECORD,context:A,spanAttributes:J});let{description:$,data:E,op:K}=m$Q(B,J,Y),I={...E,...J};if(K)I[YQ]=K;let V={decision:!0};if(this._client.emit("beforeSampling",{spanAttributes:I,spanName:$,parentSampled:Z,parentContext:W},V),!V.decision)return zK({decision:void 0,context:A,spanAttributes:J});let{isolationScope:H}=jK(A)??{},D=W?.traceState?W.traceState.get(ci):void 0,L=D?YW(D):void 0,z=x8(L?.sample_rand)??Math.random(),[M,N,q]=zN(X,{name:$,attributes:I,normalizedRequest:H?.getScopeData().sdkProcessingMetadata.normalizedRequest,parentSampled:Z,parentSampleRate:x8(L?.sample_rate)},z),w=`${F}`.toUpperCase();if(w==="OPTIONS"||w==="HEAD")return HX&&e.log(`[Tracing] Not sampling span because HTTP method is '${w}' for ${B}`),zK({decision:DW.SamplingDecision.NOT_RECORD,context:A,spanAttributes:J,sampleRand:z,downstreamTraceSampleRate:0});if(!M&&Z===void 0)HX&&e.log("[Tracing] Discarding root span because its trace was not chosen to be sampled."),this._client.recordDroppedEvent("sample_rate","transaction");return{...zK({decision:M?DW.SamplingDecision.RECORD_AND_SAMPLED:DW.SamplingDecision.NOT_RECORD,context:A,spanAttributes:J,sampleRand:z,downstreamTraceSampleRate:q?N:void 0}),attributes:{[g5]:q?N:void 0}}}toString(){return"SentrySampler"}}function oH0(A,Q,B){let Y=A.spanContext();if(bA.isSpanContextValid(Y)&&Y.traceId===Q){if(Y.isRemote){let C=RK(A.spanContext());return HX&&e.log(`[Tracing] Inheriting remote parent's sampled decision for ${B}: ${C}`),C}let J=RK(Y);return HX&&e.log(`[Tracing] Inheriting parent's sampled decision for ${B}: ${J}`),J}return}function zK({decision:A,context:Q,spanAttributes:B,sampleRand:Y,downstreamTraceSampleRate:J}){let C=tH0(Q,B);if(J!==void 0)C=C.set(LH0,`${J}`);if(Y!==void 0)C=C.set(NH0,`${Y}`);if(A==null)return{decision:DW.SamplingDecision.NOT_RECORD,traceState:C};if(A===DW.SamplingDecision.NOT_RECORD)return{decision:A,traceState:C.set(li,"1")};return{decision:A,traceState:C}}function tH0(A,Q){let J=bA.trace.getSpan(A)?.spanContext()?.traceState||new r5.TraceState,C=Q[oQ.SEMATTRS_HTTP_URL]||Q[oQ.ATTR_URL_FULL];if(C&&typeof C==="string")J=J.set(h$Q,C);return J}function eH0(A){let Q=bA.trace.getSpan(A);return Q&&bA.isSpanContextValid(Q.spanContext())?Q:void 0}var fQ=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__;function kL(A,Q){if(!A)return Q;let B=gZ(A),Y=gZ(Q);if(!Y)return A;let J={...B};return Object.entries(Y).forEach(([C,X])=>{if(!J[C])J[C]=X}),Mj(J)}var Z1="@sentry/instrumentation-http",AD0=1048576;class An extends _L.InstrumentationBase{constructor(A={}){super(Z1,zP.VERSION,A);this._propagationDecisionMap=new m8(100),this._ignoreOutgoingRequestsMap=new WeakMap}init(){let A=!1,Q=(G)=>{let W=G;this._patchServerEmitOnce(W.server)},B=(G)=>{let W=G;this._onOutgoingRequestFinish(W.request,W.response)},Y=(G)=>{let W=G;this._onOutgoingRequestFinish(W.request,void 0)},J=(G)=>{let W=G;this._onOutgoingRequestCreated(W.request)},C=(G)=>{if(A)return G;if(A=!0,qP("http.server.request.start",Q),qP("http.client.response.finish",B),qP("http.client.request.error",Y),this.getConfig().propagateTraceInOutgoingRequests)qP("http.client.request.created",J);return G},X=()=>{MP("http.server.request.start",Q),MP("http.client.response.finish",B),MP("http.client.request.error",Y),MP("http.client.request.created",J)};return[new _L.InstrumentationNodeModuleDefinition("http",["*"],C,X),new _L.InstrumentationNodeModuleDefinition("https",["*"],C,X)]}_onOutgoingRequestFinish(A,Q){fQ&&e.log(Z1,"Handling finished outgoing request");let B=this.getConfig().breadcrumbs,Y=typeof B>"u"?!0:B,J=this._ignoreOutgoingRequestsMap.get(A)??this._shouldIgnoreOutgoingRequest(A);if(this._ignoreOutgoingRequestsMap.set(A,J),Y&&!J)QD0(A,Q)}_onOutgoingRequestCreated(A){let Q=this._ignoreOutgoingRequestsMap.get(A)??this._shouldIgnoreOutgoingRequest(A);if(this._ignoreOutgoingRequestsMap.set(A,Q),Q)return;let B=jL(A),Y=gA()?.getOptions().tracePropagationTargets,J=SL(B,Y,this._propagationDecisionMap)?CG():void 0;if(!J)return;let{"sentry-trace":C,baggage:X}=J;if(C&&!A.getHeader("sentry-trace"))A.setHeader("sentry-trace",C),e.log(Z1,"Added sentry-trace header to outgoing request");if(X){let G=kL(A.getHeader("baggage"),X);if(G)A.setHeader("baggage",G)}}_patchServerEmitOnce(A){let Q=A.emit;if(Q.__sentry_patched__)return;fQ&&e.log(Z1,"Patching server.emit");let B=this,{ignoreIncomingRequestBody:Y,maxIncomingRequestBodySize:J="medium"}=B.getConfig(),C=new Proxy(Q,{apply(X,G,W){if(W[0]!=="request")return X.apply(G,W);fQ&&e.log(Z1,"Handling incoming request");let F=RQ().clone(),Z=W[1],U=W[2],$=sE(Z),E=Z.ip||Z.socket?.remoteAddress,K=Z.url||"/";if(!Y?.(K,Z)&&J!=="none")YD0(Z,F,J);F.setSDKProcessingMetadata({normalizedRequest:$,ipAddress:E});let I=(Z.method||"GET").toUpperCase(),V=aE(K),H=`${I} ${V}`;if(F.setTransactionName(H),B.getConfig().trackIncomingRequestsAsSessions!==!1)CD0({requestIsolationScope:F,response:U,sessionFlushingDelayMS:B.getConfig().sessionFlushingDelayMS??60000});return BG(F,()=>{if(sQ().getPropagationContext().propagationSpanId=g8(),!B.getConfig().extractIncomingTraceFromHeader)return X.apply(G,W);let D=OK.propagation.extract(OK.context.active(),$.headers);return OK.context.with(D,()=>{return X.apply(G,W)})})}});p0(C,"__sentry_patched__",!0),A.emit=C}_shouldIgnoreOutgoingRequest(A){if(zP.isTracingSuppressed(OK.context.active()))return!0;let Q=this.getConfig().ignoreOutgoingRequests;if(!Q)return!1;let B=JD0(A),Y=jL(A);return Q(Y,B)}}function QD0(A,Q){let B=BD0(A),Y=Q?.statusCode,J=bN(Y);E9({category:"http",data:{status_code:Y,...B},type:"http",level:J},{event:"response",request:A,response:Q})}function BD0(A){try{let Q=A.getHeader("host")||A.host,B=new URL(A.path,`${A.protocol}//${Q}`),Y=FW(B.toString()),J={url:ZW(Y),"http.method":A.method||"GET"};if(Y.search)J["http.query"]=Y.search;if(Y.hash)J["http.fragment"]=Y.hash;return J}catch{return{}}}function YD0(A,Q,B){let Y=0,J=[];fQ&&e.log(Z1,"Patching request.on");let C=new WeakMap,X=B==="small"?1000:B==="medium"?1e4:AD0;try{A.on=new Proxy(A.on,{apply:(G,W,F)=>{let[Z,U,...$]=F;if(Z==="data"){fQ&&e.log(Z1,`Handling request.on("data") with maximum body size of ${X}b`);let E=new Proxy(U,{apply:(K,I,V)=>{try{let H=V[0],D=Buffer.from(H);if(Y{let[,Z]=F,U=C.get(Z);if(U){C.delete(Z);let $=F.slice();return $[1]=U,Reflect.apply(G,W,$)}return Reflect.apply(G,W,F)}}),A.on("end",()=>{try{let G=Buffer.concat(J).toString("utf-8");if(G){let F=Buffer.byteLength(G,"utf-8")>X?`${Buffer.from(G).subarray(0,X-3).toString("utf-8")}...`:G;Q.setSDKProcessingMetadata({normalizedRequest:{data:F}})}}catch(G){if(fQ)e.error(Z1,"Error building captured request body",G)}})}catch(G){if(fQ)e.error(Z1,"Error patching request to capture body",G)}}function JD0(A){return{method:A.method,protocol:A.protocol,host:A.host,hostname:A.host,path:A.path,headers:A.getHeaders()}}function CD0({requestIsolationScope:A,response:Q,sessionFlushingDelayMS:B}){A.setSDKProcessingMetadata({requestSession:{status:"ok"}}),Q.once("close",()=>{let Y=gA(),J=A.getScopeData().sdkProcessingMetadata.requestSession;if(Y&&J){fQ&&e.debug(`Recorded request session with status: ${J.status}`);let C=new Date;C.setSeconds(0,0);let X=C.toISOString(),G=ei.get(Y),W=G?.[X]||{exited:0,crashed:0,errored:0};if(W[{ok:"exited",crashed:"crashed",errored:"errored"}[J.status]]++,G)G[X]=W;else{fQ&&e.debug("Opened new request session aggregate.");let F={[X]:W};ei.set(Y,F);let Z=()=>{clearTimeout($),U(),ei.delete(Y);let E=Object.entries(F).map(([K,I])=>({started:K,exited:I.exited,errored:I.errored,crashed:I.crashed}));Y.sendSession({aggregates:E})},U=Y.on("flush",()=>{fQ&&e.debug("Sending request session aggregate due to client flush"),Z()}),$=setTimeout(()=>{fQ&&e.debug("Sending request session aggregate due to flushing schedule"),Z()},B).unref()}}})}var ei=new Map;var Qn="Http",X4Q="@opentelemetry_sentry-patched/instrumentation-http",XD0=EQ(`${Qn}.sentry`,(A)=>{return new An(A)}),Bn=EQ(Qn,(A)=>{let Q=new W4Q.HttpInstrumentation(A);try{Q._diag=G4Q.diag.createComponentLogger({namespace:X4Q}),Q.instrumentationName=X4Q}catch{}return Q});function GD0(A,Q={}){return typeof A.spans==="boolean"?A.spans:!Q.skipOpenTelemetrySetup}var RP=wA((A={})=>{let Q=A.dropSpansForIncomingRequestStatusCodes??[404];return{name:Qn,setupOnce(){let B=GD0(A,gA()?.getOptions());if(XD0({...A,extractIncomingTraceFromHeader:!B,propagateTraceInOutgoingRequests:!B}),B){let Y=ZD0(A);Bn(Y)}},processEvent(B){if(B.type==="transaction"){let Y=B.contexts?.trace?.data?.["http.response.status_code"];if(typeof Y==="number"&&Q.some((J)=>{if(typeof J==="number")return J===Y;let[C,X]=J;return Y>=C&&Y<=X}))return null}return B}}});function WD0(A){return"outputData"in A&&"outputSize"in A&&!("client"in A)&&!("statusCode"in A)}function FD0(A){return A.headers["next-router-prefetch"]==="1"}function ZD0(A={}){return{...A.instrumentation?._experimentalConfig,disableIncomingRequestInstrumentation:A.disableIncomingRequestSpans,ignoreOutgoingRequestHook:(B)=>{let Y=jL(B);if(!Y)return!1;let J=A.ignoreOutgoingRequests;if(J?.(Y,B))return!0;return!1},ignoreIncomingRequestHook:(B)=>{let Y=B.url,J=B.method?.toUpperCase();if(J==="OPTIONS"||J==="HEAD")return!0;let C=A.ignoreIncomingRequests;if(Y&&C?.(Y,B))return!0;return!1},requireParentforOutgoingSpans:!1,requireParentforIncomingSpans:!1,requestHook:(B,Y)=>{if(s0(B,"auto.http.otel.http"),!WD0(Y)&&FD0(Y))B.setAttribute("sentry.http.prefetch",!0);A.instrumentation?.requestHook?.(B,Y)},responseHook:(B,Y)=>{A.instrumentation?.responseHook?.(B,Y)},applyCustomAttributesOnSpan:(B,Y,J)=>{A.instrumentation?.applyCustomAttributesOnSpan?.(B,Y,J)}}}var P4Q=qA(z4Q(),1);var j4Q=qA(yA(),1),OP=qA(MB(),1),O4Q=qA(NB(),1);import*as PK from"diagnostics_channel";var LW=mu(process.versions.node),gL=LW.major,R4Q=LW.minor;var jP="sentry-trace",Yn="baggage",w4Q=/baggage: (.*)\r\n/;class Cn extends O4Q.InstrumentationBase{constructor(A={}){super("@sentry/instrumentation-node-fetch",OP.VERSION,A);this._channelSubs=[],this._propagationDecisionMap=new m8(100),this._ignoreOutgoingRequestsMap=new WeakMap}init(){return}disable(){super.disable(),this._channelSubs.forEach((A)=>A.unsubscribe()),this._channelSubs=[]}enable(){if(super.enable(),this._channelSubs=this._channelSubs||[],this._channelSubs.length>0)return;this._subscribeToChannel("undici:request:create",this._onRequestCreated.bind(this)),this._subscribeToChannel("undici:request:headers",this._onResponseHeaders.bind(this))}_onRequestCreated({request:A}){if(this.getConfig().enabled===!1)return;let Y=this._shouldIgnoreOutgoingRequest(A);if(this._ignoreOutgoingRequestsMap.set(A,Y),Y)return;let J=Jn(A.origin,A.path),C=gA()?.getOptions().tracePropagationTargets,X=SL(J,C,this._propagationDecisionMap)?CG():void 0;if(!X)return;let{"sentry-trace":G,baggage:W}=X;if(Array.isArray(A.headers)){let F=A.headers;if(G&&!F.includes(jP))F.push(jP,G);let Z=F.findIndex((U)=>U===Yn);if(W&&Z===-1)F.push(Yn,W);else if(W){let U=F[Z+1],$=kL(U,W);if($)F[Z+1]=$}}else{let F=A.headers;if(G&&!F.includes(`${jP}:`))A.headers+=`${jP}: ${G}\r +${J.stack}`:"unknown"}}}}}var PUB=(A={})=>{let Q=A.limit??qUB;return{name:MUB,processEvent(B,Y){return OUB(Q,A.saveZodIssuesAsAttachment,B,Y)}}},Qc=wA(PUB);var TUB="Console",fN=wA((A={})=>{let Q=new Set(A.levels||oC);return{name:TUB,setup(B){rE(({args:Y,level:J})=>{if(gA()!==B||!Q.has(J))return;SUB(J,Y)})}}});function SUB(A,Q){let B={category:"console",data:{arguments:Q,logger:"console"},level:pj(A),message:jLA(Q)};if(A==="assert")if(Q[0]===!1){let Y=Q.slice(1);B.message=Y.length>0?`Assertion failed: ${jLA(Y)}`:"Assertion failed",B.data.arguments=Y}else return;E9(B,{input:Q,level:A})}function jLA(A){return"util"in AQ&&typeof AQ.util.format==="function"?AQ.util.format(...A):o7(A," ")}function OLA(A){return!!A&&typeof A._profiler<"u"&&typeof A._profiler.start==="function"&&typeof A._profiler.stop==="function"}function kUB(){let A=gA();if(!A){OA&&e.warn("No Sentry client available, profiling is not started");return}let Q=A.getIntegrationByName("ProfilingIntegration");if(!Q){OA&&e.warn("ProfilingIntegration is not available");return}if(!OLA(Q)){OA&&e.warn("Profiler is not available on profiling integration.");return}Q._profiler.start()}function _UB(){let A=gA();if(!A){OA&&e.warn("No Sentry client available, profiling is not started");return}let Q=A.getIntegrationByName("ProfilingIntegration");if(!Q){OA&&e.warn("ProfilingIntegration is not available");return}if(!OLA(Q)){OA&&e.warn("Profiler is not available on profiling integration.");return}Q._profiler.stop()}var Bc={startProfiler:kUB,stopProfiler:_UB};function FW(A){if(!A)return{};let Q=A.match(/^(([^:/?#]+):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?$/);if(!Q)return{};let B=Q[6]||"",Y=Q[8]||"";return{host:Q[4],path:Q[5],protocol:Q[2],search:B,hash:Y,relative:Q[5]+B+Y}}function aE(A){return A.split(/[?#]/,1)[0]}function ZW(A){let{protocol:Q,host:B,path:Y}=A,J=B?.replace(/^.*@/,"[filtered]:[filtered]@").replace(/(:80)$/,"").replace(/(:443)$/,"")||"";return`${Q?`${Q}://`:""}${J}${Y}`}var PLA={mechanism:{handled:!1,data:{function:"trpcMiddleware"}}};function vUB(A){if(typeof A==="object"&&A!==null&&"ok"in A&&!A.ok&&"error"in A)jB(A.error,PLA)}function Yc(A={}){return async function(Q){let{path:B,type:Y,next:J,rawInput:C,getRawInput:X}=Q,W=gA()?.getOptions(),F={procedure_path:B,procedure_type:Y};if(p0(F,"__sentry_override_normalization_depth__",1+(W?.normalizeDepth??5)),A.attachRpcInput!==void 0?A.attachRpcInput:W?.sendDefaultPii){if(C!==void 0)F.input=SJ(C);if(X!==void 0&&typeof X==="function")try{let Z=await X();F.input=SJ(Z)}catch(Z){}}return BG((Z)=>{return Z.setContext("trpc",F),jN({name:`trpc/${B}`,op:"rpc.server",attributes:{[Q0]:"route",[DQ]:"auto.rpc.trpc"},forceTransaction:!!A.forceTransaction},async(U)=>{try{let $=await J();return vUB($),U.end(),$}catch($){throw jB($,PLA),U.end(),$}})})}}var TLA=new WeakSet;function Xc(A){if(TLA.has(A))return A;if(!yUB(A))return OA&&e.warn("Did not patch MCP server. Interface is incompatible."),A;return A.connect=new Proxy(A.connect,{apply(Q,B,Y){let[J,...C]=Y;if(!J.onclose)J.onclose=()=>{if(J.sessionId)kLA(J.sessionId)};if(!J.onmessage)J.onmessage=(G)=>{if(J.sessionId&&SLA(G))_LA(J.sessionId,G.id)};let X=new Proxy(J,{set(G,W,F){if(W==="onmessage")G[W]=new Proxy(F,{apply(Z,U,$){let[E]=$;if(J.sessionId&&SLA(E))_LA(J.sessionId,E.id);return Reflect.apply(Z,U,$)}});else if(W==="onclose")G[W]=new Proxy(F,{apply(Z,U,$){if(J.sessionId)kLA(J.sessionId);return Reflect.apply(Z,U,$)}});else G[W]=F;return!0}});return Reflect.apply(Q,B,[X,...C])}}),A.resource=new Proxy(A.resource,{apply(Q,B,Y){let J=Y[0],C=Y[Y.length-1];if(typeof J!=="string"||typeof C!=="function")return Q.apply(B,Y);let X=new Proxy(C,{apply(G,W,F){let Z=F.find(Jc);return Cc(Z,()=>{return b8({name:`mcp-server/resource:${J}`,forceTransaction:!0,attributes:{[YQ]:"auto.function.mcp-server",[DQ]:"auto.function.mcp-server",[Q0]:"route","mcp_server.resource":J}},()=>G.apply(W,F))})}});return Reflect.apply(Q,B,[...Y.slice(0,-1),X])}}),A.tool=new Proxy(A.tool,{apply(Q,B,Y){let J=Y[0],C=Y[Y.length-1];if(typeof J!=="string"||typeof C!=="function")return Q.apply(B,Y);let X=new Proxy(C,{apply(G,W,F){let Z=F.find(Jc);return Cc(Z,()=>{return b8({name:`mcp-server/tool:${J}`,forceTransaction:!0,attributes:{[YQ]:"auto.function.mcp-server",[DQ]:"auto.function.mcp-server",[Q0]:"route","mcp_server.tool":J}},()=>G.apply(W,F))})}});return Reflect.apply(Q,B,[...Y.slice(0,-1),X])}}),A.prompt=new Proxy(A.prompt,{apply(Q,B,Y){let J=Y[0],C=Y[Y.length-1];if(typeof J!=="string"||typeof C!=="function")return Q.apply(B,Y);let X=new Proxy(C,{apply(G,W,F){let Z=F.find(Jc);return Cc(Z,()=>{return b8({name:`mcp-server/prompt:${J}`,forceTransaction:!0,attributes:{[YQ]:"auto.function.mcp-server",[DQ]:"auto.function.mcp-server",[Q0]:"route","mcp_server.prompt":J}},()=>G.apply(W,F))})}});return Reflect.apply(Q,B,[...Y.slice(0,-1),X])}}),TLA.add(A),A}function yUB(A){return typeof A==="object"&&A!==null&&"resource"in A&&typeof A.resource==="function"&&"tool"in A&&typeof A.tool==="function"&&"prompt"in A&&typeof A.prompt==="function"&&"connect"in A&&typeof A.connect==="function"}function SLA(A){return typeof A==="object"&&A!==null&&"id"in A&&(typeof A.id==="number"||typeof A.id==="string")}function Jc(A){return typeof A==="object"&&A!==null&&"sessionId"in A&&typeof A.sessionId==="string"&&"requestId"in A&&(typeof A.requestId==="number"||typeof A.requestId==="string")}var rj=new Map;function kLA(A){rj.delete(A)}function _LA(A,Q){let B=Q1();if(B){let Y=rj.get(A)??new Map;Y.set(Q,B),rj.set(A,Y)}}function Cc(A,Q){if(A){let{sessionId:B,requestId:Y}=A,J=rj.get(B);if(!J)return Q();let C=J.get(Y);if(!C)return Q();return J.delete(Y),GW(C,()=>{return Q()})}return Q()}function Gc(A,Q={},B=sQ()){let{message:Y,name:J,email:C,url:X,source:G,associatedEventId:W,tags:F}=A,Z={contexts:{feedback:{contact_email:C,name:J,message:Y,url:X,source:G,associated_event_id:W}},type:"feedback",level:"info",tags:F},U=B?.getClient()||gA();if(U)U.emit("beforeSendFeedback",Z,Q);return B.captureEvent(Z,Q)}var gUB="ConsoleLogs",vLA={[DQ]:"auto.console.logging"},hUB=(A={})=>{let Q=A.levels||oC;return{name:gUB,setup(B){if(!B.getOptions()._experiments?.enableLogs){OA&&e.warn("`_experiments.enableLogs` is not enabled, ConsoleLogs integration disabled");return}rE(({args:Y,level:J})=>{if(gA()!==B||!Q.includes(J))return;if(J==="assert"){if(!Y[0]){let X=Y.slice(1),G=X.length>0?`Assertion failed: ${yLA(X)}`:"Assertion failed";iZ({level:"error",message:G,attributes:vLA})}return}let C=J==="log";iZ({level:C?"info":J,message:yLA(Y),severityNumber:C?10:void 0,attributes:vLA})})}}},Wc=wA(hUB);function yLA(A){return"util"in AQ&&typeof AQ.util.format==="function"?AQ.util.format(...A):o7(A," ")}function bN(A){if(A===void 0)return;else if(A>=400&&A<500)return"warning";else if(A>=500)return"error";else return}function hLA(A,Q=!1){return!(Q||A&&!A.startsWith("/")&&!A.match(/^[A-Z]:/)&&!A.startsWith(".")&&!A.match(/^[a-zA-Z]([a-zA-Z0-9.\-+])*:\/\//))&&A!==void 0&&!A.includes("node_modules/")}function xLA(A){let Q=/^\s*[-]{4,}$/,B=/at (?:async )?(?:(.+?)\s+\()?(?:(.+):(\d+):(\d+)?|([^)]+))\)?/;return(Y)=>{let J=Y.match(B);if(J){let C,X,G,W,F;if(J[1]){G=J[1];let $=G.lastIndexOf(".");if(G[$-1]===".")$--;if($>0){C=G.slice(0,$),X=G.slice($+1);let E=C.indexOf(".Module");if(E>0)G=G.slice(E+1),C=C.slice(0,E)}W=void 0}if(X)W=C,F=X;if(X==="")F=void 0,G=void 0;if(G===void 0)F=F||ou,G=W?`${W}.${F}`:F;let Z=J[2]?.startsWith("file://")?J[2].slice(7):J[2],U=J[5]==="native";if(Z?.match(/\/[A-Z]:/))Z=Z.slice(1);if(!Z&&J[5]&&!U)Z=J[5];return{filename:Z?decodeURI(Z):void 0,module:A?A(Z):void 0,function:G,lineno:gLA(J[3]),colno:gLA(J[4]),in_app:hLA(Z||"",U)}}if(Y.match(Q))return{filename:Y};return}}function Fc(A){return[90,xLA(A)]}function gLA(A){return parseInt(A||"",10)||void 0}class m8{constructor(A){this._maxSize=A,this._cache=new Map}get size(){return this._cache.size}get(A){let Q=this._cache.get(A);if(Q===void 0)return;return this._cache.delete(A),this._cache.set(A,Q),Q}set(A,Q){if(this._cache.size>=this._maxSize)this._cache.delete(this._cache.keys().next().value);this._cache.set(A,Q)}remove(A){let Q=this._cache.get(A);if(Q)this._cache.delete(A);return Q}clear(){this._cache.clear()}keys(){return Array.from(this._cache.keys())}values(){let A=[];return this._cache.forEach((Q)=>A.push(Q)),A}}function XG(A,...Q){let[B,Y,J]=Q;if(Array.isArray(Y)){let C={...J};C["sentry.message.template"]=B,Y.forEach((G,W)=>{C[`sentry.message.parameter.${W}`]=G});let X=xUB(B,...Y);iZ({level:A,message:X,attributes:C})}else iZ({level:A,message:B,attributes:Y})}function fUB(...A){XG("trace",...A)}function bUB(...A){XG("debug",...A)}function mUB(...A){XG("info",...A)}function uUB(...A){XG("warn",...A)}function dUB(...A){XG("error",...A)}function cUB(...A){XG("fatal",...A)}var G4Q=qA(yA(),1),W4Q=qA(wiA(),1);var Bi=qA(NB(),1),YP={};function EQ(A,Q,B){if(B)return epB(A,Q,B);return tpB(A,Q)}function tpB(A,Q){return Object.assign((B)=>{let Y=YP[A];if(Y){if(B)Y.setConfig(B);return Y}let J=Q(B);return YP[A]=J,Bi.registerInstrumentations({instrumentations:[J]}),J},{id:A})}function epB(A,Q,B){return Object.assign((Y)=>{let J=B(Y),C=YP[A];if(C)return C.setConfig(J),C;let X=new Q(J);return YP[A]=X,Bi.registerInstrumentations({instrumentations:[X]}),X},{id:A})}function VW(A){let Q=!1,B=[];if(!AiB(A))Q=!0;else{let J=A._wrap;A._wrap=(...C)=>{return Q=!0,B.forEach((X)=>X()),B=[],J(...C)}}return(J)=>{if(Q)J();else B.push(J)}}function AiB(A){return typeof A._wrap==="function"}function s0(A,Q){A.setAttribute(DQ,Q)}function jL(A){let Q=A.protocol||"",B=A.hostname||A.host||"",Y=!A.port||A.port===80||A.port===443||/^(.*):(\d+)$/.test(B)?"":`:${A.port}`,J=A.path?A.path:"/";return`${Q}//${B}${Y}${J}`}var OK=qA(yA(),1),zP=qA(MB(),1),_L=qA(NB(),1);import{subscribe as qP,unsubscribe as MP}from"node:diagnostics_channel";var oQ=qA(dB(),1);var t9=qA(yA(),1),bA=qA(yA(),1),r5=qA(MB(),1),DW=qA(_i(),1),mi="sentry.parentIsRemote",wK="sentry.graphql.operation";function ui(A){if("parentSpanId"in A)return A.parentSpanId;else if("parentSpanContext"in A)return A.parentSpanContext?.spanId;return}function di(A){let Q=A;return!!Q.attributes&&typeof Q.attributes==="object"}function VH0(A){return typeof A.kind==="number"}function IH0(A){return!!A.status}function g$Q(A){return!!A.name}function HH0(A){if(!di(A))return{};let Q=A.attributes[oQ.ATTR_URL_FULL]||A.attributes[oQ.SEMATTRS_HTTP_URL],B={url:Q,"http.method":A.attributes[oQ.ATTR_HTTP_REQUEST_METHOD]||A.attributes[oQ.SEMATTRS_HTTP_METHOD]};if(!B["http.method"]&&B.url)B["http.method"]="GET";try{if(typeof Q==="string"){let Y=FW(Q);if(B.url=ZW(Y),Y.search)B["http.query"]=Y.search;if(Y.hash)B["http.fragment"]=Y.hash}}catch{}return B}function DH0(A){if(VH0(A))return A.kind;return bA.SpanKind.INTERNAL}var vi="sentry-trace",yi="baggage",ci="sentry.dsc",li="sentry.sampled_not_recording",h$Q="sentry.url",NH0="sentry.sample_rand",LH0="sentry.sample_rate",x$Q=bA.createContextKey("sentry_scopes"),gi=bA.createContextKey("sentry_fork_isolation_scope"),hi=bA.createContextKey("sentry_fork_set_scope"),xi=bA.createContextKey("sentry_fork_set_isolation_scope"),f$Q="_scopeContext";function jK(A){return A.getValue(x$Q)}function b$Q(A,Q){return A.setValue(x$Q,Q)}function qH0(A,Q){p0(A,f$Q,Q)}function pi(A){return A[f$Q]}function RK(A){let{traceFlags:Q,traceState:B}=A,Y=B?B.get(li)==="1":!1;if(Q===bA.TraceFlags.SAMPLED)return!0;if(Y)return!1;let J=B?B.get(ci):void 0,C=J?YW(J):void 0;if(C?.sampled==="true")return!0;if(C?.sampled==="false")return!1;return}function m$Q(A,Q,B){let Y=Q[oQ.ATTR_HTTP_REQUEST_METHOD]||Q[oQ.SEMATTRS_HTTP_METHOD];if(Y)return zH0({attributes:Q,name:A,kind:B},Y);let J=Q[oQ.SEMATTRS_DB_SYSTEM],C=typeof Q[YQ]==="string"&&Q[YQ].startsWith("cache.");if(J&&!C)return MH0({attributes:Q,name:A});let X=Q[Q0]==="custom"?"custom":"route";if(Q[oQ.SEMATTRS_RPC_SERVICE])return{...TL(A,Q,"route"),op:"rpc"};if(Q[oQ.SEMATTRS_MESSAGING_SYSTEM])return{...TL(A,Q,X),op:"message"};let F=Q[oQ.SEMATTRS_FAAS_TRIGGER];if(F)return{...TL(A,Q,X),op:F.toString()};return{op:void 0,description:A,source:"custom"}}function u$Q(A){let Q=di(A)?A.attributes:{},B=g$Q(A)?A.name:"",Y=DH0(A);return m$Q(B,Q,Y)}function MH0({attributes:A,name:Q}){let B=A[eC];if(typeof B==="string")return{op:"db",description:B,source:A[Q0]||"custom"};if(A[Q0]==="custom")return{op:"db",description:Q,source:"custom"};let Y=A[oQ.SEMATTRS_DB_STATEMENT];return{op:"db",description:Y?Y.toString():Q,source:"task"}}function zH0({name:A,kind:Q,attributes:B},Y){let J=["http"];switch(Q){case bA.SpanKind.CLIENT:J.push("client");break;case bA.SpanKind.SERVER:J.push("server");break}if(B["sentry.http.prefetch"])J.push("prefetch");let{urlPath:C,url:X,query:G,fragment:W,hasRoute:F}=wH0(B,Q);if(!C)return{...TL(A,B),op:J.join(".")};let Z=B[wK],U=`${Y} ${C}`,$=Z?`${U} (${RH0(Z)})`:U,E=F||C==="/"?"route":"url",K={};if(X)K.url=X;if(G)K["http.query"]=G;if(W)K["http.fragment"]=W;let I=Q===bA.SpanKind.CLIENT||Q===bA.SpanKind.SERVER,H=!`${B[DQ]||"manual"}`.startsWith("auto"),D=B[Q0]==="custom",L=B[eC],z=!D&&L==null&&(I||!H),{description:M,source:N}=z?{description:$,source:E}:TL(A,B);return{op:J.join("."),description:M,source:N,data:K}}function RH0(A){if(Array.isArray(A)){let Q=A.slice().sort();if(Q.length<=5)return Q.join(", ");else return`${Q.slice(0,5).join(", ")}, +${Q.length-5}`}return`${A}`}function wH0(A,Q){let B=A[oQ.SEMATTRS_HTTP_TARGET],Y=A[oQ.SEMATTRS_HTTP_URL]||A[oQ.ATTR_URL_FULL],J=A[oQ.ATTR_HTTP_ROUTE],C=typeof Y==="string"?FW(Y):void 0,X=C?ZW(C):void 0,G=C?.search||void 0,W=C?.hash||void 0;if(typeof J==="string")return{urlPath:J,url:X,query:G,fragment:W,hasRoute:!0};if(Q===bA.SpanKind.SERVER&&typeof B==="string")return{urlPath:aE(B),url:X,query:G,fragment:W,hasRoute:!1};if(C)return{urlPath:X,url:X,query:G,fragment:W,hasRoute:!1};if(typeof B==="string")return{urlPath:aE(B),url:X,query:G,fragment:W,hasRoute:!1};return{urlPath:void 0,url:X,query:G,fragment:W,hasRoute:!1}}function TL(A,Q,B="custom"){let Y=Q[Q0]||B,J=Q[eC];if(J&&typeof J==="string")return{description:J,source:Y};return{description:A,source:Y}}function d$Q(A){A.on("createDsc",(Q,B)=>{if(!B)return;let C=eA(B).data[Q0],{description:X}=g$Q(B)?u$Q(B):{description:void 0};if(C!=="url"&&X)Q.transaction=X;if(U9()){let G=RK(B.spanContext());Q.sampled=G==null?void 0:String(G)}})}function c$Q(){return bA.trace.getActiveSpan()}var HX=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__;function l$Q({dsc:A,sampled:Q}){let B=A?JW(A):void 0,Y=new r5.TraceState,J=B?Y.set(ci,B):Y;return Q===!1?J.set(li,"1"):J}var p$Q=new Set;function i$Q(){return Array.from(p$Q)}function NP(A){p$Q.add(A)}class ii extends r5.W3CBaggagePropagator{constructor(){super();NP("SentryPropagator"),this._urlMatchesTargetsMap=new m8(100)}inject(A,Q,B){if(r5.isTracingSuppressed(A)){HX&&e.log("[Tracing] Not injecting trace data for url because tracing is suppressed.");return}let Y=bA.trace.getSpan(A),J=Y&&PH0(Y),C=gA()?.getOptions()?.tracePropagationTargets;if(!SL(J,C,this._urlMatchesTargetsMap)){HX&&e.log("[Tracing] Not injecting trace data for url because it does not match tracePropagationTargets:",J);return}let X=OH0(Q),G=bA.propagation.getBaggage(A)||bA.propagation.createBaggage({}),{dynamicSamplingContext:W,traceId:F,spanId:Z,sampled:U}=n$Q(A);if(X){let $=hZ(X);if($)Object.entries($).forEach(([E,K])=>{G=G.setEntry(E,{value:K})})}if(W)G=Object.entries(W).reduce(($,[E,K])=>{if(K)return $.setEntry(`${KN}${E}`,{value:K});return $},G);if(F&&F!==bA.INVALID_TRACEID)B.set(Q,vi,CW(F,Z,U));super.inject(bA.propagation.setBaggage(A,G),Q,B)}extract(A,Q,B){let Y=B.get(Q,vi),J=B.get(Q,yi),C=Y?Array.isArray(Y)?Y[0]:Y:void 0;return r$Q(s$Q(A,{sentryTrace:C,baggage:J}))}fields(){return[vi,yi]}}var _$Q="[Tracing] Not injecting trace data for url because it does not match tracePropagationTargets:";function SL(A,Q,B){if(typeof A!=="string"||!Q)return!0;let Y=B?.get(A);if(Y!==void 0)return HX&&!Y&&e.log(_$Q,A),Y;let J=t7(A,Q);return B?.set(A,J),HX&&!J&&e.log(_$Q,A),J}function n$Q(A){let Q=bA.trace.getSpan(A);if(Q?.spanContext().isRemote){let X=Q.spanContext();return{dynamicSamplingContext:i0(Q),traceId:X.traceId,spanId:void 0,sampled:RK(X)}}if(Q){let X=Q.spanContext();return{dynamicSamplingContext:i0(Q),traceId:X.traceId,spanId:X.spanId,sampled:RK(X)}}let B=jK(A)?.scope||sQ(),Y=gA(),J=B.getPropagationContext();return{dynamicSamplingContext:Y?YG(Y,B):void 0,traceId:J.traceId,spanId:J.propagationSpanId,sampled:J.sampled}}function s$Q(A,{sentryTrace:Q,baggage:B}){let Y=xZ(Q,B),{traceId:J,parentSpanId:C,sampled:X,dsc:G}=Y;if(!C)return A;let W=TH0({traceId:J,spanId:C,sampled:X,dsc:G});return bA.trace.setSpanContext(A,W)}function jH0(A,Q,B){let Y=r$Q(s$Q(A,Q));return bA.context.with(Y,B)}function r$Q(A){let Q=jK(A),B={scope:Q?Q.scope:sQ().clone(),isolationScope:Q?Q.isolationScope:RQ()};return b$Q(A,B)}function OH0(A){try{let Q=A[yi];return Array.isArray(Q)?Q.join(","):Q}catch{return}}function PH0(A){let Q=eA(A).data,B=Q[oQ.SEMATTRS_HTTP_URL]||Q[oQ.ATTR_URL_FULL];if(typeof B==="string")return B;let Y=A.spanContext().traceState?.get(h$Q);if(Y)return Y;return}function TH0({spanId:A,traceId:Q,sampled:B,dsc:Y}){let J=l$Q({dsc:Y,sampled:B});return{traceId:Q,spanId:A,isRemote:!0,traceFlags:B?bA.TraceFlags.SAMPLED:bA.TraceFlags.NONE,traceState:J}}function SH0(A,Q){let B=ni(),{name:Y,parentSpan:J}=A;return ai(J)(()=>{let X=ri(A.scope,A.forceTransaction),W=A.onlyIfParent&&!bA.trace.getSpan(X)?r5.suppressTracing(X):X,F=si(A);return B.startActiveSpan(Y,F,W,(Z)=>{return uZ(()=>Q(Z),()=>{if(eA(Z).status===void 0)Z.setStatus({code:bA.SpanStatusCode.ERROR})},()=>Z.end())})})}function kH0(A,Q){let B=ni(),{name:Y,parentSpan:J}=A;return ai(J)(()=>{let X=ri(A.scope,A.forceTransaction),W=A.onlyIfParent&&!bA.trace.getSpan(X)?r5.suppressTracing(X):X,F=si(A);return B.startActiveSpan(Y,F,W,(Z)=>{return uZ(()=>Q(Z,()=>Z.end()),()=>{if(eA(Z).status===void 0)Z.setStatus({code:bA.SpanStatusCode.ERROR})})})})}function _H0(A){let Q=ni(),{name:B,parentSpan:Y}=A;return ai(Y)(()=>{let C=ri(A.scope,A.forceTransaction),G=A.onlyIfParent&&!bA.trace.getSpan(C)?r5.suppressTracing(C):C,W=si(A);return Q.startSpan(B,W,G)})}function a$Q(A,Q){let B=A?bA.trace.setSpan(bA.context.active(),A):bA.trace.deleteSpan(bA.context.active());return bA.context.with(B,()=>Q(sQ()))}function ni(){return gA()?.tracer||bA.trace.getTracer("@sentry/opentelemetry",l0)}function si(A){let{startTime:Q,attributes:B,kind:Y,op:J,links:C}=A,X=typeof Q==="number"?vH0(Q):Q;return{attributes:J?{[YQ]:J,...B}:B,kind:Y,links:C,startTime:X}}function vH0(A){return A<9999999999?A*1000:A}function ri(A,Q){let B=yH0(A),Y=bA.trace.getSpan(B);if(!Y)return B;if(!Q)return B;let J=bA.trace.deleteSpan(B),{spanId:C,traceId:X}=Y.spanContext(),G=RK(Y.spanContext()),W=K0(Y),F=i0(W),Z=l$Q({dsc:F,sampled:G}),U={traceId:X,spanId:C,isRemote:!0,traceFlags:G?bA.TraceFlags.SAMPLED:bA.TraceFlags.NONE,traceState:Z};return bA.trace.setSpanContext(J,U)}function yH0(A){if(A){let Q=pi(A);if(Q)return Q}return bA.context.active()}function gH0(A,Q){return jH0(bA.context.active(),A,Q)}function o$Q(A,Q){let B=pi(Q),Y=B&&bA.trace.getSpan(B),J=Y?XW(Y):hE(Q);return[Y?i0(Y):YG(A,Q),J]}function ai(A){return A!==void 0?(Q)=>{return a$Q(A,Q)}:(Q)=>Q()}function hH0(A){let Q=r5.suppressTracing(bA.context.active());return bA.context.with(Q,A)}function t$Q(A){A.on("preprocessEvent",(Q)=>{let B=c$Q();if(!B||Q.type==="transaction")return;Q.contexts={trace:XW(B),...Q.contexts};let Y=K0(B);return Q.sdkProcessingMetadata={dynamicSamplingContext:i0(Y),...Q.sdkProcessingMetadata},Q})}function xH0({span:A}={}){let Q=t9.context.active();if(A){let{scope:X}=A1(A);Q=X&&pi(X)||t9.trace.setSpan(t9.context.active(),A)}let{traceId:B,spanId:Y,sampled:J,dynamicSamplingContext:C}=n$Q(Q);return{"sentry-trace":CW(B,Y,J),baggage:JW(C)}}function LP(){function A(){let G=t9.context.active(),W=jK(G);if(W)return W;return{scope:yE(),isolationScope:v5()}}function Q(G){let W=t9.context.active();return t9.context.with(W,()=>{return G(C())})}function B(G,W){let F=t9.context.active();return t9.context.with(F.setValue(hi,G),()=>{return W(G)})}function Y(G){let W=t9.context.active();return t9.context.with(W.setValue(gi,!0),()=>{return G(X())})}function J(G,W){let F=t9.context.active();return t9.context.with(F.setValue(xi,G),()=>{return W(X())})}function C(){return A().scope}function X(){return A().isolationScope}du({withScope:Q,withSetScope:B,withSetIsolationScope:J,withIsolationScope:Y,getCurrentScope:C,getIsolationScope:X,startSpan:SH0,startSpanManual:kH0,startInactiveSpan:_H0,getActiveSpan:c$Q,suppressTracing:hH0,getTraceData:xH0,continueTrace:gH0,withActiveSpan:a$Q})}function e$Q(A){class Q extends A{constructor(...B){super(...B);NP("SentryContextManager")}with(B,Y,J,...C){let X=jK(B),G=X?.scope||sQ(),W=X?.isolationScope||RQ(),F=B.getValue(gi)===!0,Z=B.getValue(hi),U=B.getValue(xi),$=Z||G.clone(),E=U||(F?W.clone():W),V=b$Q(B,{scope:$,isolationScope:E}).deleteValue(gi).deleteValue(hi).deleteValue(xi);return qH0($,V),super.with(V,Y,J,...C)}}return Q}function fH0(A){let Q=new Map;for(let B of A)bH0(Q,B);return Array.from(Q,function([B,Y]){return Y})}function A4Q(A){return A.attributes[mi]!==!0?ui(A):void 0}function bH0(A,Q){let B=Q.spanContext().spanId,Y=A4Q(Q);if(!Y){fi(A,{id:B,span:Q,children:[]});return}let J=mH0(A,Y),C=fi(A,{id:B,span:Q,parentNode:J,children:[]});J.children.push(C)}function mH0(A,Q){let B=A.get(Q);if(B)return B;return fi(A,{id:Q,children:[]})}function fi(A,Q){let B=A.get(Q.id);if(B?.span)return B;if(B&&!B.span)return B.span=Q.span,B.parentNode=Q.parentNode,B;return A.set(Q.id,Q),Q}var Q4Q={"1":"cancelled","2":"unknown_error","3":"invalid_argument","4":"deadline_exceeded","5":"not_found","6":"already_exists","7":"permission_denied","8":"resource_exhausted","9":"failed_precondition","10":"aborted","11":"out_of_range","12":"unimplemented","13":"internal_error","14":"unavailable","15":"data_loss","16":"unauthenticated"},uH0=(A)=>{return Object.values(Q4Q).includes(A)};function B4Q(A){let Q=di(A)?A.attributes:{},B=IH0(A)?A.status:void 0;if(B){if(B.code===bA.SpanStatusCode.OK)return{code:BW};else if(B.code===bA.SpanStatusCode.ERROR){if(typeof B.message>"u"){let J=v$Q(Q);if(J)return J}if(B.message&&uH0(B.message))return{code:s9,message:B.message};else return{code:s9,message:"unknown_error"}}}let Y=v$Q(Q);if(Y)return Y;if(B?.code===bA.SpanStatusCode.UNSET)return{code:BW};else return{code:s9,message:"unknown_error"}}function v$Q(A){let Q=A[oQ.ATTR_HTTP_RESPONSE_STATUS_CODE]||A[oQ.SEMATTRS_HTTP_STATUS_CODE],B=A[oQ.SEMATTRS_RPC_GRPC_STATUS_CODE],Y=typeof Q==="number"?Q:typeof Q==="string"?parseInt(Q):void 0;if(typeof Y==="number")return bE(Y);if(typeof B==="string")return{code:s9,message:Q4Q[B]||"unknown_error"};return}var y$Q=1000,dH0=300;class Y4Q{constructor(A){this._finishedSpanBucketSize=A?.timeout||dH0,this._finishedSpanBuckets=Array(this._finishedSpanBucketSize).fill(void 0),this._lastCleanupTimestampInS=Math.floor(Date.now()/1000),this._spansToBucketEntry=new WeakMap}export(A){let Q=Math.floor(Date.now()/1000);if(this._lastCleanupTimestampInS!==Q){let J=0;if(this._finishedSpanBuckets.forEach((C,X)=>{if(C&&C.timestampInS<=Q-this._finishedSpanBucketSize)J+=C.spans.size,this._finishedSpanBuckets[X]=void 0}),J>0)HX&&e.log(`SpanExporter dropped ${J} spans because they were pending for more than ${this._finishedSpanBucketSize} seconds.`);this._lastCleanupTimestampInS=Q}let B=Q%this._finishedSpanBucketSize,Y=this._finishedSpanBuckets[B]||{timestampInS:Q,spans:new Set};if(this._finishedSpanBuckets[B]=Y,Y.spans.add(A),this._spansToBucketEntry.set(A,Y),!A4Q(A))this._clearTimeout(),this._flushTimeout=setTimeout(()=>{this.flush()},1)}flush(){this._clearTimeout();let A=[];this._finishedSpanBuckets.forEach((J)=>{if(J)A.push(...J.spans)});let Q=cH0(A),B=Q.size,Y=A.length-B;HX&&e.log(`SpanExporter exported ${B} spans, ${Y} spans are waiting for their parent spans to finish`),Q.forEach((J)=>{let C=this._spansToBucketEntry.get(J);if(C)C.spans.delete(J)})}clear(){this._finishedSpanBuckets=this._finishedSpanBuckets.fill(void 0),this._clearTimeout()}_clearTimeout(){if(this._flushTimeout)clearTimeout(this._flushTimeout),this._flushTimeout=void 0}}function cH0(A){let Q=fH0(A),B=new Set;return pH0(Q).forEach((J)=>{let C=J.span;B.add(C);let X=nH0(C),G=X.spans||[];J.children.forEach((F)=>{bi(F,G,B)}),X.spans=G.length>y$Q?G.sort((F,Z)=>F.start_timestamp-Z.start_timestamp).slice(0,y$Q):G;let W=dZ(C.events);if(W)X.measurements=W;kN(X)}),B}function lH0(A){return!!A.span&&!A.parentNode}function pH0(A){return A.filter(lH0)}function iH0(A){let Q=A.attributes,B=Q[DQ],Y=Q[YQ],J=Q[Q0];return{origin:B,op:Y,source:J}}function nH0(A){let{op:Q,description:B,data:Y,origin:J="manual",source:C}=J4Q(A),X=A1(A),G=A.attributes[g5],W={[Q0]:C,[g5]:G,[YQ]:Q,[DQ]:J,...Y,...C4Q(A.attributes)},{links:F}=A,{traceId:Z,spanId:U}=A.spanContext(),$=ui(A),E=B4Q(A),K={parent_span_id:$,span_id:U,trace_id:Z,data:W,origin:J,op:Q,status:bZ(E),links:fZ(F)},I=W[oQ.ATTR_HTTP_RESPONSE_STATUS_CODE],V=typeof I==="number"?{response:{status_code:I}}:void 0;return{contexts:{trace:K,otel:{resource:A.resource.attributes},...V},spans:[],start_timestamp:r9(A.startTime),timestamp:r9(A.endTime),transaction:B,type:"transaction",sdkProcessingMetadata:{capturedSpanScope:X.scope,capturedSpanIsolationScope:X.isolationScope,sampleRate:G,dynamicSamplingContext:i0(A)},...C&&{transaction_info:{source:C}}}}function bi(A,Q,B){let Y=A.span;if(Y)B.add(Y);if(!Y){A.children.forEach((L)=>{bi(L,Q,B)});return}let C=Y.spanContext().spanId,X=Y.spanContext().traceId,G=ui(Y),{attributes:W,startTime:F,endTime:Z,links:U}=Y,{op:$,description:E,data:K,origin:I="manual"}=J4Q(Y),V={[DQ]:I,[YQ]:$,...C4Q(W),...K},H=B4Q(Y),D={span_id:C,trace_id:X,data:V,description:E,parent_span_id:G,start_timestamp:r9(F),timestamp:r9(Z)||void 0,status:bZ(H),op:$,origin:I,measurements:dZ(Y.events),links:fZ(U)};Q.push(D),A.children.forEach((L)=>{bi(L,Q,B)})}function J4Q(A){let{op:Q,source:B,origin:Y}=iH0(A),{op:J,description:C,source:X,data:G}=u$Q(A),W=Q||J,F=B||X,Z={...G,...sH0(A)};return{op:W,description:C,source:F,origin:Y,data:Z}}function C4Q(A){let Q={...A};return delete Q[g5],delete Q[mi],delete Q[eC],Q}function sH0(A){let Q=A.attributes,B={};if(A.kind!==bA.SpanKind.INTERNAL)B["otel.kind"]=bA.SpanKind[A.kind];let Y=Q[oQ.SEMATTRS_HTTP_STATUS_CODE];if(Y)B[oQ.ATTR_HTTP_RESPONSE_STATUS_CODE]=Y;let J=HH0(A);if(J.url)B.url=J.url;if(J["http.query"])B["http.query"]=J["http.query"].slice(1);if(J["http.fragment"])B["http.fragment"]=J["http.fragment"].slice(1);return B}function rH0(A,Q){let B=bA.trace.getSpan(Q),Y=jK(Q);if(B&&!B.spanContext().isRemote)uE(B,A);if(B?.spanContext().isRemote)A.setAttribute(mi,!0);if(Q===bA.ROOT_CONTEXT)Y={scope:yE(),isolationScope:v5()};if(Y)EN(A,Y.scope,Y.isolationScope);qN(A),gA()?.emit("spanStart",A)}function aH0(A){MN(A),gA()?.emit("spanEnd",A)}class oi{constructor(A){NP("SentrySpanProcessor"),this._exporter=new Y4Q(A)}async forceFlush(){this._exporter.flush()}async shutdown(){this._exporter.clear()}onStart(A,Q){rH0(A,Q)}onEnd(A){aH0(A),this._exporter.export(A)}}class ti{constructor(A){this._client=A,NP("SentrySampler")}shouldSample(A,Q,B,Y,J,C){let X=this._client.getOptions(),G=eH0(A),W=G?.spanContext();if(!U9(X))return zK({decision:void 0,context:A,spanAttributes:J});let F=J[oQ.SEMATTRS_HTTP_METHOD]||J[oQ.ATTR_HTTP_REQUEST_METHOD];if(Y===bA.SpanKind.CLIENT&&F&&(!G||W?.isRemote))return zK({decision:void 0,context:A,spanAttributes:J});let Z=G?oH0(G,Q,B):void 0;if(!(!G||W?.isRemote))return zK({decision:Z?DW.SamplingDecision.RECORD_AND_SAMPLED:DW.SamplingDecision.NOT_RECORD,context:A,spanAttributes:J});let{description:$,data:E,op:K}=m$Q(B,J,Y),I={...E,...J};if(K)I[YQ]=K;let V={decision:!0};if(this._client.emit("beforeSampling",{spanAttributes:I,spanName:$,parentSampled:Z,parentContext:W},V),!V.decision)return zK({decision:void 0,context:A,spanAttributes:J});let{isolationScope:H}=jK(A)??{},D=W?.traceState?W.traceState.get(ci):void 0,L=D?YW(D):void 0,z=x8(L?.sample_rand)??Math.random(),[M,N,q]=zN(X,{name:$,attributes:I,normalizedRequest:H?.getScopeData().sdkProcessingMetadata.normalizedRequest,parentSampled:Z,parentSampleRate:x8(L?.sample_rate)},z),w=`${F}`.toUpperCase();if(w==="OPTIONS"||w==="HEAD")return HX&&e.log(`[Tracing] Not sampling span because HTTP method is '${w}' for ${B}`),zK({decision:DW.SamplingDecision.NOT_RECORD,context:A,spanAttributes:J,sampleRand:z,downstreamTraceSampleRate:0});if(!M&&Z===void 0)HX&&e.log("[Tracing] Discarding root span because its trace was not chosen to be sampled."),this._client.recordDroppedEvent("sample_rate","transaction");return{...zK({decision:M?DW.SamplingDecision.RECORD_AND_SAMPLED:DW.SamplingDecision.NOT_RECORD,context:A,spanAttributes:J,sampleRand:z,downstreamTraceSampleRate:q?N:void 0}),attributes:{[g5]:q?N:void 0}}}toString(){return"SentrySampler"}}function oH0(A,Q,B){let Y=A.spanContext();if(bA.isSpanContextValid(Y)&&Y.traceId===Q){if(Y.isRemote){let C=RK(A.spanContext());return HX&&e.log(`[Tracing] Inheriting remote parent's sampled decision for ${B}: ${C}`),C}let J=RK(Y);return HX&&e.log(`[Tracing] Inheriting parent's sampled decision for ${B}: ${J}`),J}return}function zK({decision:A,context:Q,spanAttributes:B,sampleRand:Y,downstreamTraceSampleRate:J}){let C=tH0(Q,B);if(J!==void 0)C=C.set(LH0,`${J}`);if(Y!==void 0)C=C.set(NH0,`${Y}`);if(A==null)return{decision:DW.SamplingDecision.NOT_RECORD,traceState:C};if(A===DW.SamplingDecision.NOT_RECORD)return{decision:A,traceState:C.set(li,"1")};return{decision:A,traceState:C}}function tH0(A,Q){let J=bA.trace.getSpan(A)?.spanContext()?.traceState||new r5.TraceState,C=Q[oQ.SEMATTRS_HTTP_URL]||Q[oQ.ATTR_URL_FULL];if(C&&typeof C==="string")J=J.set(h$Q,C);return J}function eH0(A){let Q=bA.trace.getSpan(A);return Q&&bA.isSpanContextValid(Q.spanContext())?Q:void 0}var fQ=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__;function kL(A,Q){if(!A)return Q;let B=hZ(A),Y=hZ(Q);if(!Y)return A;let J={...B};return Object.entries(Y).forEach(([C,X])=>{if(!J[C])J[C]=X}),Mj(J)}var Z1="@sentry/instrumentation-http",AD0=1048576;class An extends _L.InstrumentationBase{constructor(A={}){super(Z1,zP.VERSION,A);this._propagationDecisionMap=new m8(100),this._ignoreOutgoingRequestsMap=new WeakMap}init(){let A=!1,Q=(G)=>{let W=G;this._patchServerEmitOnce(W.server)},B=(G)=>{let W=G;this._onOutgoingRequestFinish(W.request,W.response)},Y=(G)=>{let W=G;this._onOutgoingRequestFinish(W.request,void 0)},J=(G)=>{let W=G;this._onOutgoingRequestCreated(W.request)},C=(G)=>{if(A)return G;if(A=!0,qP("http.server.request.start",Q),qP("http.client.response.finish",B),qP("http.client.request.error",Y),this.getConfig().propagateTraceInOutgoingRequests)qP("http.client.request.created",J);return G},X=()=>{MP("http.server.request.start",Q),MP("http.client.response.finish",B),MP("http.client.request.error",Y),MP("http.client.request.created",J)};return[new _L.InstrumentationNodeModuleDefinition("http",["*"],C,X),new _L.InstrumentationNodeModuleDefinition("https",["*"],C,X)]}_onOutgoingRequestFinish(A,Q){fQ&&e.log(Z1,"Handling finished outgoing request");let B=this.getConfig().breadcrumbs,Y=typeof B>"u"?!0:B,J=this._ignoreOutgoingRequestsMap.get(A)??this._shouldIgnoreOutgoingRequest(A);if(this._ignoreOutgoingRequestsMap.set(A,J),Y&&!J)QD0(A,Q)}_onOutgoingRequestCreated(A){let Q=this._ignoreOutgoingRequestsMap.get(A)??this._shouldIgnoreOutgoingRequest(A);if(this._ignoreOutgoingRequestsMap.set(A,Q),Q)return;let B=jL(A),Y=gA()?.getOptions().tracePropagationTargets,J=SL(B,Y,this._propagationDecisionMap)?CG():void 0;if(!J)return;let{"sentry-trace":C,baggage:X}=J;if(C&&!A.getHeader("sentry-trace"))A.setHeader("sentry-trace",C),e.log(Z1,"Added sentry-trace header to outgoing request");if(X){let G=kL(A.getHeader("baggage"),X);if(G)A.setHeader("baggage",G)}}_patchServerEmitOnce(A){let Q=A.emit;if(Q.__sentry_patched__)return;fQ&&e.log(Z1,"Patching server.emit");let B=this,{ignoreIncomingRequestBody:Y,maxIncomingRequestBodySize:J="medium"}=B.getConfig(),C=new Proxy(Q,{apply(X,G,W){if(W[0]!=="request")return X.apply(G,W);fQ&&e.log(Z1,"Handling incoming request");let F=RQ().clone(),Z=W[1],U=W[2],$=sE(Z),E=Z.ip||Z.socket?.remoteAddress,K=Z.url||"/";if(!Y?.(K,Z)&&J!=="none")YD0(Z,F,J);F.setSDKProcessingMetadata({normalizedRequest:$,ipAddress:E});let I=(Z.method||"GET").toUpperCase(),V=aE(K),H=`${I} ${V}`;if(F.setTransactionName(H),B.getConfig().trackIncomingRequestsAsSessions!==!1)CD0({requestIsolationScope:F,response:U,sessionFlushingDelayMS:B.getConfig().sessionFlushingDelayMS??60000});return BG(F,()=>{if(sQ().getPropagationContext().propagationSpanId=g8(),!B.getConfig().extractIncomingTraceFromHeader)return X.apply(G,W);let D=OK.propagation.extract(OK.context.active(),$.headers);return OK.context.with(D,()=>{return X.apply(G,W)})})}});p0(C,"__sentry_patched__",!0),A.emit=C}_shouldIgnoreOutgoingRequest(A){if(zP.isTracingSuppressed(OK.context.active()))return!0;let Q=this.getConfig().ignoreOutgoingRequests;if(!Q)return!1;let B=JD0(A),Y=jL(A);return Q(Y,B)}}function QD0(A,Q){let B=BD0(A),Y=Q?.statusCode,J=bN(Y);E9({category:"http",data:{status_code:Y,...B},type:"http",level:J},{event:"response",request:A,response:Q})}function BD0(A){try{let Q=A.getHeader("host")||A.host,B=new URL(A.path,`${A.protocol}//${Q}`),Y=FW(B.toString()),J={url:ZW(Y),"http.method":A.method||"GET"};if(Y.search)J["http.query"]=Y.search;if(Y.hash)J["http.fragment"]=Y.hash;return J}catch{return{}}}function YD0(A,Q,B){let Y=0,J=[];fQ&&e.log(Z1,"Patching request.on");let C=new WeakMap,X=B==="small"?1000:B==="medium"?1e4:AD0;try{A.on=new Proxy(A.on,{apply:(G,W,F)=>{let[Z,U,...$]=F;if(Z==="data"){fQ&&e.log(Z1,`Handling request.on("data") with maximum body size of ${X}b`);let E=new Proxy(U,{apply:(K,I,V)=>{try{let H=V[0],D=Buffer.from(H);if(Y{let[,Z]=F,U=C.get(Z);if(U){C.delete(Z);let $=F.slice();return $[1]=U,Reflect.apply(G,W,$)}return Reflect.apply(G,W,F)}}),A.on("end",()=>{try{let G=Buffer.concat(J).toString("utf-8");if(G){let F=Buffer.byteLength(G,"utf-8")>X?`${Buffer.from(G).subarray(0,X-3).toString("utf-8")}...`:G;Q.setSDKProcessingMetadata({normalizedRequest:{data:F}})}}catch(G){if(fQ)e.error(Z1,"Error building captured request body",G)}})}catch(G){if(fQ)e.error(Z1,"Error patching request to capture body",G)}}function JD0(A){return{method:A.method,protocol:A.protocol,host:A.host,hostname:A.host,path:A.path,headers:A.getHeaders()}}function CD0({requestIsolationScope:A,response:Q,sessionFlushingDelayMS:B}){A.setSDKProcessingMetadata({requestSession:{status:"ok"}}),Q.once("close",()=>{let Y=gA(),J=A.getScopeData().sdkProcessingMetadata.requestSession;if(Y&&J){fQ&&e.debug(`Recorded request session with status: ${J.status}`);let C=new Date;C.setSeconds(0,0);let X=C.toISOString(),G=ei.get(Y),W=G?.[X]||{exited:0,crashed:0,errored:0};if(W[{ok:"exited",crashed:"crashed",errored:"errored"}[J.status]]++,G)G[X]=W;else{fQ&&e.debug("Opened new request session aggregate.");let F={[X]:W};ei.set(Y,F);let Z=()=>{clearTimeout($),U(),ei.delete(Y);let E=Object.entries(F).map(([K,I])=>({started:K,exited:I.exited,errored:I.errored,crashed:I.crashed}));Y.sendSession({aggregates:E})},U=Y.on("flush",()=>{fQ&&e.debug("Sending request session aggregate due to client flush"),Z()}),$=setTimeout(()=>{fQ&&e.debug("Sending request session aggregate due to flushing schedule"),Z()},B).unref()}}})}var ei=new Map;var Qn="Http",X4Q="@opentelemetry_sentry-patched/instrumentation-http",XD0=EQ(`${Qn}.sentry`,(A)=>{return new An(A)}),Bn=EQ(Qn,(A)=>{let Q=new W4Q.HttpInstrumentation(A);try{Q._diag=G4Q.diag.createComponentLogger({namespace:X4Q}),Q.instrumentationName=X4Q}catch{}return Q});function GD0(A,Q={}){return typeof A.spans==="boolean"?A.spans:!Q.skipOpenTelemetrySetup}var RP=wA((A={})=>{let Q=A.dropSpansForIncomingRequestStatusCodes??[404];return{name:Qn,setupOnce(){let B=GD0(A,gA()?.getOptions());if(XD0({...A,extractIncomingTraceFromHeader:!B,propagateTraceInOutgoingRequests:!B}),B){let Y=ZD0(A);Bn(Y)}},processEvent(B){if(B.type==="transaction"){let Y=B.contexts?.trace?.data?.["http.response.status_code"];if(typeof Y==="number"&&Q.some((J)=>{if(typeof J==="number")return J===Y;let[C,X]=J;return Y>=C&&Y<=X}))return null}return B}}});function WD0(A){return"outputData"in A&&"outputSize"in A&&!("client"in A)&&!("statusCode"in A)}function FD0(A){return A.headers["next-router-prefetch"]==="1"}function ZD0(A={}){return{...A.instrumentation?._experimentalConfig,disableIncomingRequestInstrumentation:A.disableIncomingRequestSpans,ignoreOutgoingRequestHook:(B)=>{let Y=jL(B);if(!Y)return!1;let J=A.ignoreOutgoingRequests;if(J?.(Y,B))return!0;return!1},ignoreIncomingRequestHook:(B)=>{let Y=B.url,J=B.method?.toUpperCase();if(J==="OPTIONS"||J==="HEAD")return!0;let C=A.ignoreIncomingRequests;if(Y&&C?.(Y,B))return!0;return!1},requireParentforOutgoingSpans:!1,requireParentforIncomingSpans:!1,requestHook:(B,Y)=>{if(s0(B,"auto.http.otel.http"),!WD0(Y)&&FD0(Y))B.setAttribute("sentry.http.prefetch",!0);A.instrumentation?.requestHook?.(B,Y)},responseHook:(B,Y)=>{A.instrumentation?.responseHook?.(B,Y)},applyCustomAttributesOnSpan:(B,Y,J)=>{A.instrumentation?.applyCustomAttributesOnSpan?.(B,Y,J)}}}var P4Q=qA(z4Q(),1);var j4Q=qA(yA(),1),OP=qA(MB(),1),O4Q=qA(NB(),1);import*as PK from"diagnostics_channel";var LW=mu(process.versions.node),gL=LW.major,R4Q=LW.minor;var jP="sentry-trace",Yn="baggage",w4Q=/baggage: (.*)\r\n/;class Cn extends O4Q.InstrumentationBase{constructor(A={}){super("@sentry/instrumentation-node-fetch",OP.VERSION,A);this._channelSubs=[],this._propagationDecisionMap=new m8(100),this._ignoreOutgoingRequestsMap=new WeakMap}init(){return}disable(){super.disable(),this._channelSubs.forEach((A)=>A.unsubscribe()),this._channelSubs=[]}enable(){if(super.enable(),this._channelSubs=this._channelSubs||[],this._channelSubs.length>0)return;this._subscribeToChannel("undici:request:create",this._onRequestCreated.bind(this)),this._subscribeToChannel("undici:request:headers",this._onResponseHeaders.bind(this))}_onRequestCreated({request:A}){if(this.getConfig().enabled===!1)return;let Y=this._shouldIgnoreOutgoingRequest(A);if(this._ignoreOutgoingRequestsMap.set(A,Y),Y)return;let J=Jn(A.origin,A.path),C=gA()?.getOptions().tracePropagationTargets,X=SL(J,C,this._propagationDecisionMap)?CG():void 0;if(!X)return;let{"sentry-trace":G,baggage:W}=X;if(Array.isArray(A.headers)){let F=A.headers;if(G&&!F.includes(jP))F.push(jP,G);let Z=F.findIndex((U)=>U===Yn);if(W&&Z===-1)F.push(Yn,W);else if(W){let U=F[Z+1],$=kL(U,W);if($)F[Z+1]=$}}else{let F=A.headers;if(G&&!F.includes(`${jP}:`))A.headers+=`${jP}: ${G}\r `;let Z=A.headers.match(w4Q)?.[1];if(W&&!Z)A.headers+=`${Yn}: ${W}\r `;else if(W){let U=kL(Z,W);if(U)A.headers=A.headers.replace(w4Q,`baggage: ${U}\r -`)}}}_onResponseHeaders({request:A,response:Q}){let B=this.getConfig();if(B.enabled===!1)return;let J=B.breadcrumbs,C=typeof J>"u"?!0:J,X=this._ignoreOutgoingRequestsMap.get(A);if(C&&!X)KD0(A,Q)}_subscribeToChannel(A,Q){let B=gL>18||gL===18&&R4Q>=19,Y;if(B)PK.subscribe?.(A,Q),Y=()=>PK.unsubscribe?.(A,Q);else{let J=PK.channel(A);J.subscribe(Q),Y=()=>J.unsubscribe(Q)}this._channelSubs.push({name:A,unsubscribe:Y})}_shouldIgnoreOutgoingRequest(A){if(OP.isTracingSuppressed(j4Q.context.active()))return!0;let Q=Jn(A.origin,A.path),B=this.getConfig().ignoreOutgoingRequests;if(typeof B!=="function"||!Q)return!1;return B(Q)}}function KD0(A,Q){let B=VD0(A),Y=Q.statusCode,J=bN(Y);E9({category:"http",data:{status_code:Y,...B},type:"http",level:J},{event:"response",request:A,response:Q})}function VD0(A){try{let Q=Jn(A.origin,A.path),B=FW(Q),Y={url:ZW(B),"http.method":A.method||"GET"};if(B.search)Y["http.query"]=B.search;if(B.hash)Y["http.fragment"]=B.hash;return Y}catch{return{}}}function Jn(A,Q="/"){try{return new URL(Q,A).toString()}catch{let B=`${A}`;if(B.endsWith("/")&&Q.startsWith("/"))return`${B}${Q.slice(1)}`;if(!B.endsWith("/")&&!Q.startsWith("/"))return`${B}/${Q.slice(1)}`;return`${B}${Q}`}}var T4Q="NodeFetch",ID0=EQ(T4Q,P4Q.UndiciInstrumentation,(A)=>{return qD0(A)}),HD0=EQ(`${T4Q}.sentry`,Cn,(A)=>{return A}),DD0=(A={})=>{return{name:"NodeFetch",setupOnce(){if(LD0(A,gA()?.getOptions()))ID0(A);HD0(A)}}},PP=wA(DD0);function ND0(A,Q="/"){let B=`${A}`;if(B.endsWith("/")&&Q.startsWith("/"))return`${B}${Q.slice(1)}`;if(!B.endsWith("/")&&!Q.startsWith("/"))return`${B}/${Q.slice(1)}`;return`${B}${Q}`}function LD0(A,Q={}){return typeof A.spans==="boolean"?A.spans:!Q.skipOpenTelemetrySetup}function qD0(A={}){return{requireParentforSpans:!1,ignoreRequestHook:(B)=>{let Y=ND0(B.origin,B.path),J=A.ignoreOutgoingRequests;return!!(J&&Y&&J(Y))},startSpanHook:()=>{return{[DQ]:"auto.http.otel.node_fetch"}}}}var a4Q=qA(s4Q(),1);var r4Q="FileSystem",o4Q=wA((A={})=>{return{name:r4Q,setupOnce(){EQ(r4Q,()=>new a4Q.FsInstrumentation({requireParentSpan:!0,endHook(Q,{args:B,span:Y,error:J}){if(Y.updateName(`fs.${Q}`),Y.setAttributes({[YQ]:"file",[DQ]:"auto.file.fs"}),A.recordErrorMessagesAsSpanAttributes){if(typeof B[0]==="string"&&yD0.includes(Q))Y.setAttribute("path_argument",B[0]);else if(typeof B[0]==="string"&&typeof B[1]==="string"&&vD0.includes(Q))Y.setAttribute("target_argument",B[0]),Y.setAttribute("path_argument",B[1]);else if(typeof B[0]==="string"&&_D0.includes(Q))Y.setAttribute("prefix_argument",B[0]);else if(typeof B[0]==="string"&&typeof B[1]==="string"&&kD0.includes(Q))Y.setAttribute("existing_path_argument",B[0]),Y.setAttribute("new_path_argument",B[1]);else if(typeof B[0]==="string"&&typeof B[1]==="string"&&SD0.includes(Q))Y.setAttribute("src_argument",B[0]),Y.setAttribute("dest_argument",B[1]);else if(typeof B[0]==="string"&&typeof B[1]==="string"&&TD0.includes(Q))Y.setAttribute("old_path_argument",B[0]),Y.setAttribute("new_path_argument",B[1])}if(J&&A.recordErrorMessagesAsSpanAttributes)Y.setAttribute("fs_error",J.message)}}))()}}}),TD0=["rename","renameSync"],SD0=["copyFile","cp","copyFileSync","cpSync"],kD0=["link","linkSync"],_D0=["mkdtemp","mkdtempSync"],vD0=["symlink","symlinkSync"],yD0=["access","appendFile","chmod","chown","exists","mkdir","lchown","lstat","lutimes","open","opendir","readdir","readFile","readlink","realpath","realpath.native","rm","rmdir","stat","truncate","unlink","utimes","writeFile","accessSync","appendFileSync","chmodSync","chownSync","existsSync","lchownSync","lstatSync","lutimesSync","opendirSync","mkdirSync","openSync","readdirSync","readFileSync","readlinkSync","realpathSync","realpathSync.native","rmdirSync","rmSync","statSync","truncateSync","unlinkSync","utimesSync","writeFileSync"];import{execFile as gD0}from"node:child_process";import{readFile as hD0,readdir as xD0}from"node:fs";import*as rY from"node:os";import{join as fD0}from"node:path";import{promisify as e4Q}from"node:util";var bD0=e4Q(hD0),mD0=e4Q(xD0),uD0="Context",dD0=(A={})=>{let Q,B={app:!0,os:!0,device:!0,culture:!0,cloudResource:!0,...A};async function Y(C){if(Q===void 0)Q=J();let X=cD0(await Q);return C.contexts={...C.contexts,app:{...X.app,...C.contexts?.app},os:{...X.os,...C.contexts?.os},device:{...X.device,...C.contexts?.device},culture:{...X.culture,...C.contexts?.culture},cloud_resource:{...X.cloud_resource,...C.contexts?.cloud_resource}},C}async function J(){let C={};if(B.os)C.os=await lD0();if(B.app)C.app=iD0();if(B.device)C.device=nD0(B.device);if(B.culture){let X=pD0();if(X)C.culture=X}if(B.cloudResource)C.cloud_resource=eD0();return C}return{name:uD0,processEvent(C){return Y(C)}}},kP=wA(dD0);function cD0(A){if(A.app?.app_memory)A.app.app_memory=process.memoryUsage().rss;if(A.app?.free_memory&&typeof process.availableMemory==="function"){let Q=process.availableMemory?.();if(Q!=null)A.app.free_memory=Q}if(A.device?.free_memory)A.device.free_memory=rY.freemem();return A}async function lD0(){let A=rY.platform();switch(A){case"darwin":return oD0();case"linux":return tD0();default:return{name:sD0[A]||A,version:rY.release()}}}function pD0(){try{if(typeof process.versions.icu!=="string")return;let A=new Date(900000000);if(new Intl.DateTimeFormat("es",{month:"long"}).format(A)==="enero"){let B=Intl.DateTimeFormat().resolvedOptions();return{locale:B.locale,timezone:B.timeZone}}}catch(A){}return}function iD0(){let A=process.memoryUsage().rss,B={app_start_time:new Date(Date.now()-process.uptime()*1000).toISOString(),app_memory:A};if(typeof process.availableMemory==="function"){let Y=process.availableMemory?.();if(Y!=null)B.free_memory=Y}return B}function nD0(A){let Q={},B;try{B=rY.uptime()}catch(Y){}if(typeof B==="number")Q.boot_time=new Date(Date.now()-B*1000).toISOString();if(Q.arch=rY.arch(),A===!0||A.memory)Q.memory_size=rY.totalmem(),Q.free_memory=rY.freemem();if(A===!0||A.cpu){let Y=rY.cpus(),J=Y?.[0];if(J)Q.processor_count=Y.length,Q.cpu_description=J.model,Q.processor_frequency=J.speed}return Q}var sD0={aix:"IBM AIX",freebsd:"FreeBSD",openbsd:"OpenBSD",sunos:"SunOS",win32:"Windows"},rD0=[{name:"fedora-release",distros:["Fedora"]},{name:"redhat-release",distros:["Red Hat Linux","Centos"]},{name:"redhat_version",distros:["Red Hat Linux"]},{name:"SuSE-release",distros:["SUSE Linux"]},{name:"lsb-release",distros:["Ubuntu Linux","Arch Linux"]},{name:"debian_version",distros:["Debian"]},{name:"debian_release",distros:["Debian"]},{name:"arch-release",distros:["Arch Linux"]},{name:"gentoo-release",distros:["Gentoo Linux"]},{name:"novell-release",distros:["SUSE Linux"]},{name:"alpine-release",distros:["Alpine Linux"]}],aD0={alpine:(A)=>A,arch:(A)=>DX(/distrib_release=(.*)/,A),centos:(A)=>DX(/release ([^ ]+)/,A),debian:(A)=>A,fedora:(A)=>DX(/release (..)/,A),mint:(A)=>DX(/distrib_release=(.*)/,A),red:(A)=>DX(/release ([^ ]+)/,A),suse:(A)=>DX(/VERSION = (.*)\n/,A),ubuntu:(A)=>DX(/distrib_release=(.*)/,A)};function DX(A,Q){let B=A.exec(Q);return B?B[1]:void 0}async function oD0(){let A={kernel_version:rY.release(),name:"Mac OS X",version:`10.${Number(rY.release().split(".")[0])-4}`};try{let Q=await new Promise((B,Y)=>{gD0("/usr/bin/sw_vers",(J,C)=>{if(J){Y(J);return}B(C)})});A.name=DX(/^ProductName:\s+(.*)$/m,Q),A.version=DX(/^ProductVersion:\s+(.*)$/m,Q),A.build=DX(/^BuildVersion:\s+(.*)$/m,Q)}catch(Q){}return A}function t4Q(A){return A.split(" ")[0].toLowerCase()}async function tD0(){let A={kernel_version:rY.release(),name:"Linux"};try{let Q=await mD0("/etc"),B=rD0.find((G)=>Q.includes(G.name));if(!B)return A;let Y=fD0("/etc",B.name),J=(await bD0(Y,{encoding:"utf-8"})).toLowerCase(),{distros:C}=B;A.name=C.find((G)=>J.indexOf(t4Q(G))>=0)||C[0];let X=t4Q(A.name);A.version=aD0[X]?.(J)}catch(Q){}return A}function eD0(){if(process.env.VERCEL)return{"cloud.provider":"vercel","cloud.region":process.env.VERCEL_REGION};else if(process.env.AWS_REGION)return{"cloud.provider":"aws","cloud.region":process.env.AWS_REGION,"cloud.platform":process.env.AWS_EXECUTION_ENV};else if(process.env.GCP_PROJECT)return{"cloud.provider":"gcp"};else if(process.env.ALIYUN_REGION_ID)return{"cloud.provider":"alibaba_cloud","cloud.region":process.env.ALIYUN_REGION_ID};else if(process.env.WEBSITE_SITE_NAME&&process.env.REGION_NAME)return{"cloud.provider":"azure","cloud.region":process.env.REGION_NAME};else if(process.env.IBM_CLOUD_REGION)return{"cloud.provider":"ibm_cloud","cloud.region":process.env.IBM_CLOUD_REGION};else if(process.env.TENCENTCLOUD_REGION)return{"cloud.provider":"tencent_cloud","cloud.region":process.env.TENCENTCLOUD_REGION,"cloud.account.id":process.env.TENCENTCLOUD_APPID,"cloud.availability_zone":process.env.TENCENTCLOUD_ZONE};else if(process.env.NETLIFY)return{"cloud.provider":"netlify"};else if(process.env.FLY_REGION)return{"cloud.provider":"fly.io","cloud.region":process.env.FLY_REGION};else if(process.env.DYNO)return{"cloud.provider":"heroku"};else return}import{createReadStream as AN0}from"node:fs";import{createInterface as QN0}from"node:readline";var Xn=new m8(10),BUQ=new m8(20),BN0=7,YN0="ContextLines",JN0=1000,CN0=1e4;function XN0(A,Q,B){let Y=A.get(Q);if(Y===void 0)return A.set(Q,B),B;return Y}function GN0(A){if(A.startsWith("node:"))return!0;if(A.endsWith(".min.js"))return!0;if(A.endsWith(".min.cjs"))return!0;if(A.endsWith(".min.mjs"))return!0;if(A.startsWith("data:"))return!0;return!1}function WN0(A){if(A.lineno!==void 0&&A.lineno>CN0)return!0;if(A.colno!==void 0&&A.colno>JN0)return!0;return!1}function FN0(A,Q){let B=Xn.get(A);if(B===void 0)return!1;for(let Y=Q[0];Y<=Q[1];Y++)if(B[Y]===void 0)return!1;return!0}function ZN0(A,Q){if(!A.length)return[];let B=0,Y=A[0];if(typeof Y!=="number")return[];let J=QUQ(Y,Q),C=[];while(!0){if(B===A.length-1){C.push(J);break}let X=A[B+1];if(typeof X!=="number")break;if(X<=J[1])J[1]=X+Q;else C.push(J),J=QUQ(X,Q);B++}return C}function $N0(A,Q,B){return new Promise((Y,J)=>{let C=AN0(A),X=QN0({input:C});function G(){C.destroy(),Y()}let W=0,F=0,Z=Q[F];if(Z===void 0){G();return}let U=Z[0],$=Z[1];function E(K){BUQ.set(A,1),fQ&&e.error(`Failed to read file: ${A}. Error: ${K}`),X.close(),X.removeAllListeners(),G()}C.on("error",E),X.on("error",E),X.on("close",G),X.on("line",(K)=>{if(W++,W=$){if(F===Q.length-1){X.close(),X.removeAllListeners();return}F++;let I=Q[F];if(I===void 0){X.close(),X.removeAllListeners();return}U=I[0],$=I[1]}})})}async function UN0(A,Q){let B={};if(Q>0&&A.exception?.values)for(let C of A.exception.values){if(!C.stacktrace?.frames?.length)continue;for(let X=C.stacktrace.frames.length-1;X>=0;X--){let G=C.stacktrace.frames[X],W=G?.filename;if(!G||typeof W!=="string"||typeof G.lineno!=="number"||GN0(W)||WN0(G))continue;if(!B[W])B[W]=[];B[W].push(G.lineno)}}let Y=Object.keys(B);if(Y.length==0)return A;let J=[];for(let C of Y){if(BUQ.get(C))continue;let X=B[C];if(!X)continue;X.sort((F,Z)=>F-Z);let G=ZN0(X,Q);if(G.every((F)=>FN0(C,F)))continue;let W=XN0(Xn,C,{});J.push($N0(C,G,W))}if(await Promise.all(J).catch(()=>{fQ&&e.log("Failed to read one or more source files and resolve context lines")}),Q>0&&A.exception?.values){for(let C of A.exception.values)if(C.stacktrace?.frames&&C.stacktrace.frames.length>0)EN0(C.stacktrace.frames,Q,Xn)}return A}function EN0(A,Q,B){for(let Y of A)if(Y.filename&&Y.context_line===void 0&&typeof Y.lineno==="number"){let J=B.get(Y.filename);if(J===void 0)continue;KN0(Y.lineno,Y,Q,J)}}function AUQ(A){delete A.pre_context,delete A.context_line,delete A.post_context}function KN0(A,Q,B,Y){if(Q.lineno===void 0||Y===void 0){fQ&&e.error("Cannot resolve context for frame with no lineno or file contents");return}Q.pre_context=[];for(let C=YUQ(A,B);C{let Q=A.frameContextLines!==void 0?A.frameContextLines:BN0;return{name:YN0,processEvent(B){return UN0(B,Q)}}},_P=wA(VN0);import{Worker as IN0}from"node:worker_threads";var vP;async function TK(){if(vP===void 0)try{vP=!!(await import("node:inspector")).url()}catch(A){vP=!1}return vP}var hL="__SENTRY_ERROR_LOCAL_VARIABLES__";function XUQ(A,Q,B){let Y=0,J=5,C=0;return setInterval(()=>{if(C===0){if(Y>A){if(J*=2,B(J),J>86400)J=86400;C=J}}else if(C-=1,C===0)Q();Y=0},1000).unref(),()=>{Y+=1}}function CUQ(A){return A!==void 0&&(A.length===0||A==="?"||A==="")}function yP(A,Q){return A===Q||CUQ(A)&&CUQ(Q)}var HN0="LyohIEBzZW50cnkvbm9kZSA5LjIyLjAgKGNjYWJmYzIpIHwgaHR0cHM6Ly9naXRodWIuY29tL2dldHNlbnRyeS9zZW50cnktamF2YXNjcmlwdCAqLwppbXBvcnR7U2Vzc2lvbiBhcyBlfWZyb20ibm9kZTppbnNwZWN0b3IvcHJvbWlzZXMiO2ltcG9ydHt3b3JrZXJEYXRhIGFzIHR9ZnJvbSJub2RlOndvcmtlcl90aHJlYWRzIjtjb25zdCBuPSJ1bmRlZmluZWQiPT10eXBlb2YgX19TRU5UUllfREVCVUdfX3x8X19TRU5UUllfREVCVUdfXyxvPSI5LjIyLjAiLGk9Z2xvYmFsVGhpcztjb25zdCBhPVsiZGVidWciLCJpbmZvIiwid2FybiIsImVycm9yIiwibG9nIiwiYXNzZXJ0IiwidHJhY2UiXSxzPXt9O2Z1bmN0aW9uIGMoZSl7aWYoISgiY29uc29sZSJpbiBpKSlyZXR1cm4gZSgpO2NvbnN0IHQ9aS5jb25zb2xlLG49e30sbz1PYmplY3Qua2V5cyhzKTtvLmZvckVhY2goKGU9Pntjb25zdCBvPXNbZV07bltlXT10W2VdLHRbZV09b30pKTt0cnl7cmV0dXJuIGUoKX1maW5hbGx5e28uZm9yRWFjaCgoZT0+e3RbZV09bltlXX0pKX19IWZ1bmN0aW9uKGUsdCxuPWkpe2NvbnN0IGE9bi5fX1NFTlRSWV9fPW4uX19TRU5UUllfX3x8e30scz1hW29dPWFbb118fHt9O3NbZV18fChzW2VdPXQoKSl9KCJsb2dnZXIiLChmdW5jdGlvbigpe2xldCBlPSExO2NvbnN0IHQ9e2VuYWJsZTooKT0+e2U9ITB9LGRpc2FibGU6KCk9PntlPSExfSxpc0VuYWJsZWQ6KCk9PmV9O3JldHVybiBuP2EuZm9yRWFjaCgobj0+e3Rbbl09KC4uLnQpPT57ZSYmYygoKCk9PntpLmNvbnNvbGVbbl0oYFNlbnRyeSBMb2dnZXIgWyR7bn1dOmAsLi4udCl9KSl9fSkpOmEuZm9yRWFjaCgoZT0+e3RbZV09KCk9Pnt9fSkpLHR9KSk7Y29uc3Qgcj0iX19TRU5UUllfRVJST1JfTE9DQUxfVkFSSUFCTEVTX18iO2NvbnN0IHU9dDtmdW5jdGlvbiBsKC4uLmUpe3UuZGVidWcmJmMoKCgpPT5jb25zb2xlLmxvZygiW0xvY2FsVmFyaWFibGVzIFdvcmtlcl0iLC4uLmUpKSl9YXN5bmMgZnVuY3Rpb24gZihlLHQsbixvKXtjb25zdCBpPWF3YWl0IGUucG9zdCgiUnVudGltZS5nZXRQcm9wZXJ0aWVzIix7b2JqZWN0SWQ6dCxvd25Qcm9wZXJ0aWVzOiEwfSk7b1tuXT1pLnJlc3VsdC5maWx0ZXIoKGU9PiJsZW5ndGgiIT09ZS5uYW1lJiYhaXNOYU4ocGFyc2VJbnQoZS5uYW1lLDEwKSkpKS5zb3J0KCgoZSx0KT0+cGFyc2VJbnQoZS5uYW1lLDEwKS1wYXJzZUludCh0Lm5hbWUsMTApKSkubWFwKChlPT5lLnZhbHVlPy52YWx1ZSkpfWFzeW5jIGZ1bmN0aW9uIGcoZSx0LG4sbyl7Y29uc3QgaT1hd2FpdCBlLnBvc3QoIlJ1bnRpbWUuZ2V0UHJvcGVydGllcyIse29iamVjdElkOnQsb3duUHJvcGVydGllczohMH0pO29bbl09aS5yZXN1bHQubWFwKChlPT5bZS5uYW1lLGUudmFsdWU/LnZhbHVlXSkpLnJlZHVjZSgoKGUsW3Qsbl0pPT4oZVt0XT1uLGUpKSx7fSl9ZnVuY3Rpb24gZChlLHQpe2UudmFsdWUmJigidmFsdWUiaW4gZS52YWx1ZT92b2lkIDA9PT1lLnZhbHVlLnZhbHVlfHxudWxsPT09ZS52YWx1ZS52YWx1ZT90W2UubmFtZV09YDwke2UudmFsdWUudmFsdWV9PmA6dFtlLm5hbWVdPWUudmFsdWUudmFsdWU6ImRlc2NyaXB0aW9uImluIGUudmFsdWUmJiJmdW5jdGlvbiIhPT1lLnZhbHVlLnR5cGU/dFtlLm5hbWVdPWA8JHtlLnZhbHVlLmRlc2NyaXB0aW9ufT5gOiJ1bmRlZmluZWQiPT09ZS52YWx1ZS50eXBlJiYodFtlLm5hbWVdPSI8dW5kZWZpbmVkPiIpKX1hc3luYyBmdW5jdGlvbiBiKGUsdCl7Y29uc3Qgbj1hd2FpdCBlLnBvc3QoIlJ1bnRpbWUuZ2V0UHJvcGVydGllcyIse29iamVjdElkOnQsb3duUHJvcGVydGllczohMH0pLG89e307Zm9yKGNvbnN0IHQgb2Ygbi5yZXN1bHQpaWYodC52YWx1ZT8ub2JqZWN0SWQmJiJBcnJheSI9PT10LnZhbHVlLmNsYXNzTmFtZSl7Y29uc3Qgbj10LnZhbHVlLm9iamVjdElkO2F3YWl0IGYoZSxuLHQubmFtZSxvKX1lbHNlIGlmKHQudmFsdWU/Lm9iamVjdElkJiYiT2JqZWN0Ij09PXQudmFsdWUuY2xhc3NOYW1lKXtjb25zdCBuPXQudmFsdWUub2JqZWN0SWQ7YXdhaXQgZyhlLG4sdC5uYW1lLG8pfWVsc2UgdC52YWx1ZSYmZCh0LG8pO3JldHVybiBvfWxldCBwOyhhc3luYyBmdW5jdGlvbigpe2NvbnN0IHQ9bmV3IGU7dC5jb25uZWN0VG9NYWluVGhyZWFkKCksbCgiQ29ubmVjdGVkIHRvIG1haW4gdGhyZWFkIik7bGV0IG49ITE7dC5vbigiRGVidWdnZXIucmVzdW1lZCIsKCgpPT57bj0hMX0pKSx0Lm9uKCJEZWJ1Z2dlci5wYXVzZWQiLChlPT57bj0hMCxhc3luYyBmdW5jdGlvbihlLHtyZWFzb246dCxkYXRhOntvYmplY3RJZDpufSxjYWxsRnJhbWVzOm99KXtpZigiZXhjZXB0aW9uIiE9PXQmJiJwcm9taXNlUmVqZWN0aW9uIiE9PXQpcmV0dXJuO2lmKHA/LigpLG51bGw9PW4pcmV0dXJuO2NvbnN0IGk9W107Zm9yKGxldCB0PTA7dDxvLmxlbmd0aDt0Kyspe2NvbnN0e3Njb3BlQ2hhaW46bixmdW5jdGlvbk5hbWU6YSx0aGlzOnN9PW9bdF0sYz1uLmZpbmQoKGU9PiJsb2NhbCI9PT1lLnR5cGUpKSxyPSJnbG9iYWwiIT09cy5jbGFzc05hbWUmJnMuY2xhc3NOYW1lP2Ake3MuY2xhc3NOYW1lfS4ke2F9YDphO2lmKHZvaWQgMD09PWM/Lm9iamVjdC5vYmplY3RJZClpW3RdPXtmdW5jdGlvbjpyfTtlbHNle2NvbnN0IG49YXdhaXQgYihlLGMub2JqZWN0Lm9iamVjdElkKTtpW3RdPXtmdW5jdGlvbjpyLHZhcnM6bn19fWF3YWl0IGUucG9zdCgiUnVudGltZS5jYWxsRnVuY3Rpb25PbiIse2Z1bmN0aW9uRGVjbGFyYXRpb246YGZ1bmN0aW9uKCkgeyB0aGlzLiR7cn0gPSB0aGlzLiR7cn0gfHwgJHtKU09OLnN0cmluZ2lmeShpKX07IH1gLHNpbGVudDohMCxvYmplY3RJZDpufSksYXdhaXQgZS5wb3N0KCJSdW50aW1lLnJlbGVhc2VPYmplY3QiLHtvYmplY3RJZDpufSl9KHQsZS5wYXJhbXMpLnRoZW4oKGFzeW5jKCk9PntuJiZhd2FpdCB0LnBvc3QoIkRlYnVnZ2VyLnJlc3VtZSIpfSksKGFzeW5jIGU9PntuJiZhd2FpdCB0LnBvc3QoIkRlYnVnZ2VyLnJlc3VtZSIpfSkpfSkpLGF3YWl0IHQucG9zdCgiRGVidWdnZXIuZW5hYmxlIik7Y29uc3Qgbz0hMSE9PXUuY2FwdHVyZUFsbEV4Y2VwdGlvbnM7aWYoYXdhaXQgdC5wb3N0KCJEZWJ1Z2dlci5zZXRQYXVzZU9uRXhjZXB0aW9ucyIse3N0YXRlOm8/ImFsbCI6InVuY2F1Z2h0In0pLG8pe2NvbnN0IGU9dS5tYXhFeGNlcHRpb25zUGVyU2Vjb25kfHw1MDtwPWZ1bmN0aW9uKGUsdCxuKXtsZXQgbz0wLGk9NSxhPTA7cmV0dXJuIHNldEludGVydmFsKCgoKT0+ezA9PT1hP28+ZSYmKGkqPTIsbihpKSxpPjg2NDAwJiYoaT04NjQwMCksYT1pKTooYS09MSwwPT09YSYmdCgpKSxvPTB9KSwxZTMpLnVucmVmKCksKCk9PntvKz0xfX0oZSwoYXN5bmMoKT0+e2woIlJhdGUtbGltaXQgbGlmdGVkLiIpLGF3YWl0IHQucG9zdCgiRGVidWdnZXIuc2V0UGF1c2VPbkV4Y2VwdGlvbnMiLHtzdGF0ZToiYWxsIn0pfSksKGFzeW5jIGU9PntsKGBSYXRlLWxpbWl0IGV4Y2VlZGVkLiBEaXNhYmxpbmcgY2FwdHVyaW5nIG9mIGNhdWdodCBleGNlcHRpb25zIGZvciAke2V9IHNlY29uZHMuYCksYXdhaXQgdC5wb3N0KCJEZWJ1Z2dlci5zZXRQYXVzZU9uRXhjZXB0aW9ucyIse3N0YXRlOiJ1bmNhdWdodCJ9KX0pKX19KSgpLmNhdGNoKChlPT57bCgiRmFpbGVkIHRvIHN0YXJ0IGRlYnVnZ2VyIixlKX0pKSxzZXRJbnRlcnZhbCgoKCk9Pnt9KSwxZTQpOw==";function GUQ(...A){e.log("[LocalVariables]",...A)}var WUQ=wA((A={})=>{function Q(C,X){let G=(C.stacktrace?.frames||[]).filter((W)=>W.function!=="new Promise");for(let W=0;W{X.terminate()}),X.once("error",(G)=>{GUQ("Worker error",G)}),X.once("exit",(G)=>{GUQ("Worker exit",G)}),X.unref()}return{name:"LocalVariablesAsync",async setup(C){if(!C.getOptions().includeLocalVariables)return;if(await TK()){e.warn("Local variables capture has been disabled because the debugger was already enabled");return}let G={...A,debug:e.isEnabled()};Y().then(()=>{try{J(G)}catch(W){e.error("Failed to start worker",W)}},(W)=>{e.error("Failed to start inspector",W)})},processEvent(C,X){return B(C,X)}}});function FUQ(A){if(A===void 0)return;return A.slice(-10).reduce((Q,B)=>`${Q},${B.function},${B.lineno},${B.colno}`,"")}function DN0(A,Q){if(Q===void 0)return;return FUQ(A(Q,1))}function ZUQ(A){let Q=[],B=!1;function Y(X){if(Q=[],B)return;B=!0,A(X)}Q.push(Y);function J(X){Q.push(X)}function C(X){let G=Q.pop()||Y;try{G(X)}catch(W){Y(X)}}return{add:J,next:C}}class Gn{constructor(A){this._session=A}static async create(A){if(A)return A;let Q=await import("node:inspector");return new Gn(new Q.Session)}configureAndConnect(A,Q){this._session.connect(),this._session.on("Debugger.paused",(B)=>{A(B,()=>{this._session.post("Debugger.resume")})}),this._session.post("Debugger.enable"),this._session.post("Debugger.setPauseOnExceptions",{state:Q?"all":"uncaught"})}setPauseOnExceptions(A){this._session.post("Debugger.setPauseOnExceptions",{state:A?"all":"uncaught"})}getLocalVariables(A,Q){this._getProperties(A,(B)=>{let{add:Y,next:J}=ZUQ(Q);for(let C of B)if(C.value?.objectId&&C.value.className==="Array"){let X=C.value.objectId;Y((G)=>this._unrollArray(X,C.name,G,J))}else if(C.value?.objectId&&C.value.className==="Object"){let X=C.value.objectId;Y((G)=>this._unrollObject(X,C.name,G,J))}else if(C.value)Y((X)=>this._unrollOther(C,X,J));J({})})}_getProperties(A,Q){this._session.post("Runtime.getProperties",{objectId:A,ownProperties:!0},(B,Y)=>{if(B)Q([]);else Q(Y.result)})}_unrollArray(A,Q,B,Y){this._getProperties(A,(J)=>{B[Q]=J.filter((C)=>C.name!=="length"&&!isNaN(parseInt(C.name,10))).sort((C,X)=>parseInt(C.name,10)-parseInt(X.name,10)).map((C)=>C.value?.value),Y(B)})}_unrollObject(A,Q,B,Y){this._getProperties(A,(J)=>{B[Q]=J.map((C)=>[C.name,C.value?.value]).reduce((C,[X,G])=>{return C[X]=G,C},{}),Y(B)})}_unrollOther(A,Q,B){if(A.value){if("value"in A.value)if(A.value.value===void 0||A.value.value===null)Q[A.name]=`<${A.value.value}>`;else Q[A.name]=A.value.value;else if("description"in A.value&&A.value.type!=="function")Q[A.name]=`<${A.value.description}>`;else if(A.value.type==="undefined")Q[A.name]=""}B(Q)}}var NN0="LocalVariables",LN0=(A={},Q)=>{let B=new m8(20),Y,J=!1;function C(G){let W=FUQ(G.stacktrace?.frames);if(W===void 0)return;let F=B.remove(W);if(F===void 0)return;let Z=(G.stacktrace?.frames||[]).filter((U)=>U.function!=="new Promise");for(let U=0;U= v18.");return}if(await TK()){e.warn("Local variables capture has been disabled because the debugger was already enabled");return}Gn.create(Q).then((Z)=>{function U(E,{params:{reason:K,data:I,callFrames:V}},H){if(K!=="exception"&&K!=="promiseRejection"){H();return}Y?.();let D=DN0(E,I.description);if(D==null){H();return}let{add:L,next:z}=ZUQ((M)=>{B.set(D,M),H()});for(let M=0;Mj.type==="local"),_=w.className==="global"||!w.className?q:`${w.className}.${q}`;if(P?.object.objectId===void 0)L((j)=>{j[M]={function:_},z(j)});else{let j=P.object.objectId;L((k)=>Z.getLocalVariables(j,(T)=>{k[M]={function:_,vars:T},z(k)}))}}z([])}let $=A.captureAllExceptions!==!1;if(Z.configureAndConnect((E,K)=>U(W.stackParser,E,K),$),$){let E=A.maxExceptionsPerSecond||50;Y=XUQ(E,()=>{e.log("Local variables rate-limit lifted."),Z.setPauseOnExceptions(!0)},(K)=>{e.log(`Local variables rate-limit exceeded. Disabling capturing of caught exceptions for ${K} seconds.`),Z.setPauseOnExceptions(!1)})}J=!0},(Z)=>{e.log("The `LocalVariables` integration failed to start.",Z)})},processEvent(G){if(J)return X(G);return G},_getCachedFramesCount(){return B.size},_getFirstCachedFrame(){return B.values()[0]}}},$UQ=wA(LN0);var gP=(A={})=>{return LW.major<19?$UQ(A):WUQ(A)};import{existsSync as qN0,readFileSync as MN0}from"node:fs";import{dirname as zN0,join as RN0}from"node:path";function a5(){try{return typeof UUQ<"u"&&typeof dmY<"u"}catch{return!1}}var Wn,EUQ="Modules",wN0=()=>{if(!a5())return fQ&&e.warn("modulesIntegration only works in CommonJS (CJS) environments. Remove this integration if you are using ESM."),{name:EUQ};return{name:EUQ,processEvent(A){return A.modules={...A.modules,...PN0()},A}}},hP=wA(wN0);function jN0(){try{return u.cache?Object.keys(u.cache):[]}catch(A){return[]}}function ON0(){let A=u.main?.paths||[],Q=jN0(),B={},Y={};return Q.forEach((J)=>{let C=J,X=()=>{let G=C;if(C=zN0(G),!C||G===C||Y[G])return;if(A.indexOf(C)<0)return X();let W=RN0(G,"package.json");if(Y[G]=!0,!qN0(W))return X();try{let F=JSON.parse(MN0(W,"utf8"));B[F.name]=F.version}catch(F){}};X()}),B}function PN0(){if(!Wn)Wn=ON0();return Wn}var TN0=2000;function xL(A){f0(()=>{console.error(A)});let Q=gA();if(Q===void 0){fQ&&e.warn("No NodeClient was defined, we are exiting the process now."),global.process.exit(1);return}let B=Q.getOptions(),Y=B?.shutdownTimeout&&B.shutdownTimeout>0?B.shutdownTimeout:TN0;Q.close(Y).then((J)=>{if(!J)fQ&&e.warn("We reached the timeout for emptying the request buffer, still exiting now!");global.process.exit(1)},(J)=>{fQ&&e.error(J)})}var SN0="OnUncaughtException",xP=wA((A={})=>{let Q={exitEvenIfOtherHandlersAreRegistered:!1,...A};return{name:SN0,setup(B){global.process.on("uncaughtException",kN0(B,Q))}}});function kN0(A,Q){let Y=!1,J=!1,C=!1,X,G=A.getOptions();return Object.assign((W)=>{let F=xL;if(Q.onFatalError)F=Q.onFatalError;else if(G.onFatalError)F=G.onFatalError;let U=global.process.listeners("uncaughtException").filter((E)=>{return E.name!=="domainUncaughtExceptionClear"&&E.tag!=="sentry_tracingErrorCallback"&&E._errorHandler!==!0}).length===0,$=Q.exitEvenIfOtherHandlersAreRegistered||U;if(!Y){if(X=W,Y=!0,gA()===A)jB(W,{originalException:W,captureContext:{level:"fatal"},mechanism:{handled:!1,type:"onuncaughtexception"}});if(!C&&$)C=!0,F(W)}else if($){if(C)fQ&&e.warn("uncaught exception after calling fatal error shutdown callback - this is bad! forcing shutdown"),xL(W);else if(!J)J=!0,setTimeout(()=>{if(!C)C=!0,F(X,W)},2000)}},{_errorHandler:!0})}var _N0="OnUnhandledRejection",vN0=(A={})=>{let Q={mode:"warn",...A};return{name:_N0,setup(B){global.process.on("unhandledRejection",yN0(B,Q))}}},fP=wA(vN0);function yN0(A,Q){return function(Y,J){if(gA()!==A)return;let C=Q.mode==="strict"?"fatal":"error";jB(Y,{originalException:J,captureContext:{extra:{unhandledPromiseRejection:!0},level:C},mechanism:{handled:!1,type:"onunhandledrejection"}}),gN0(Y,Q.mode)}}function gN0(A,Q){let B="This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). The promise rejected with the reason:";if(Q==="warn")f0(()=>{console.warn(B),console.error(A&&typeof A==="object"&&"stack"in A?A.stack:A)});else if(Q==="strict")f0(()=>{console.warn(B)}),xL(A)}import{types as hN0}from"node:util";import{Worker as xN0}from"node:worker_threads";var{isPromise:fN0}=hN0,bN0="LyohIEBzZW50cnkvbm9kZSA5LjIyLjAgKGNjYWJmYzIpIHwgaHR0cHM6Ly9naXRodWIuY29tL2dldHNlbnRyeS9zZW50cnktamF2YXNjcmlwdCAqLwppbXBvcnR7U2Vzc2lvbiBhcyB0fWZyb20ibm9kZTppbnNwZWN0b3IiO2ltcG9ydHt3b3JrZXJEYXRhIGFzIG4scGFyZW50UG9ydCBhcyBlfWZyb20ibm9kZTp3b3JrZXJfdGhyZWFkcyI7aW1wb3J0e3Bvc2l4IGFzIHIsc2VwIGFzIG99ZnJvbSJub2RlOnBhdGgiO2ltcG9ydCphcyBzIGZyb20ibm9kZTpodHRwIjtpbXBvcnQqYXMgaSBmcm9tIm5vZGU6aHR0cHMiO2ltcG9ydHtSZWFkYWJsZSBhcyBjfWZyb20ibm9kZTpzdHJlYW0iO2ltcG9ydHtjcmVhdGVHemlwIGFzIHV9ZnJvbSJub2RlOnpsaWIiO2ltcG9ydCphcyBhIGZyb20ibm9kZTpuZXQiO2ltcG9ydCphcyBmIGZyb20ibm9kZTp0bHMiO2NvbnN0IGg9InVuZGVmaW5lZCI9PXR5cGVvZiBfX1NFTlRSWV9ERUJVR19ffHxfX1NFTlRSWV9ERUJVR19fLHA9IjkuMjIuMCIsbD1nbG9iYWxUaGlzO2Z1bmN0aW9uIGQoKXtyZXR1cm4gbShsKSxsfWZ1bmN0aW9uIG0odCl7Y29uc3Qgbj10Ll9fU0VOVFJZX189dC5fX1NFTlRSWV9ffHx7fTtyZXR1cm4gbi52ZXJzaW9uPW4udmVyc2lvbnx8cCxuW3BdPW5bcF18fHt9fWZ1bmN0aW9uIGcodCxuLGU9bCl7Y29uc3Qgcj1lLl9fU0VOVFJZX189ZS5fX1NFTlRSWV9ffHx7fSxvPXJbcF09cltwXXx8e307cmV0dXJuIG9bdF18fChvW3RdPW4oKSl9Y29uc3QgeT1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nO2Z1bmN0aW9uIGIodCxuKXtyZXR1cm4geS5jYWxsKHQpPT09YFtvYmplY3QgJHtufV1gfWZ1bmN0aW9uIF8odCl7cmV0dXJuIGIodCwiU3RyaW5nIil9ZnVuY3Rpb24gdih0KXtyZXR1cm4gYih0LCJPYmplY3QiKX1mdW5jdGlvbiB3KHQpe3JldHVybiBCb29sZWFuKHQ/LnRoZW4mJiJmdW5jdGlvbiI9PXR5cGVvZiB0LnRoZW4pfWZ1bmN0aW9uIFModCxuKXt0cnl7cmV0dXJuIHQgaW5zdGFuY2VvZiBufWNhdGNoKHQpe3JldHVybiExfX1jb25zdCAkPWwsRT04MDtmdW5jdGlvbiB4KHQsbil7Y29uc3QgZT10LHI9W107aWYoIWU/LnRhZ05hbWUpcmV0dXJuIiI7aWYoJC5IVE1MRWxlbWVudCYmZSBpbnN0YW5jZW9mIEhUTUxFbGVtZW50JiZlLmRhdGFzZXQpe2lmKGUuZGF0YXNldC5zZW50cnlDb21wb25lbnQpcmV0dXJuIGUuZGF0YXNldC5zZW50cnlDb21wb25lbnQ7aWYoZS5kYXRhc2V0LnNlbnRyeUVsZW1lbnQpcmV0dXJuIGUuZGF0YXNldC5zZW50cnlFbGVtZW50fXIucHVzaChlLnRhZ05hbWUudG9Mb3dlckNhc2UoKSk7Y29uc3Qgbz1uPy5sZW5ndGg/bi5maWx0ZXIoKHQ9PmUuZ2V0QXR0cmlidXRlKHQpKSkubWFwKCh0PT5bdCxlLmdldEF0dHJpYnV0ZSh0KV0pKTpudWxsO2lmKG8/Lmxlbmd0aClvLmZvckVhY2goKHQ9PntyLnB1c2goYFske3RbMF19PSIke3RbMV19Il1gKX0pKTtlbHNle2UuaWQmJnIucHVzaChgIyR7ZS5pZH1gKTtjb25zdCB0PWUuY2xhc3NOYW1lO2lmKHQmJl8odCkpe2NvbnN0IG49dC5zcGxpdCgvXHMrLyk7Zm9yKGNvbnN0IHQgb2YgbilyLnB1c2goYC4ke3R9YCl9fWNvbnN0IHM9WyJhcmlhLWxhYmVsIiwidHlwZSIsIm5hbWUiLCJ0aXRsZSIsImFsdCJdO2Zvcihjb25zdCB0IG9mIHMpe2NvbnN0IG49ZS5nZXRBdHRyaWJ1dGUodCk7biYmci5wdXNoKGBbJHt0fT0iJHtufSJdYCl9cmV0dXJuIHIuam9pbigiIil9Y29uc3QgTj1bImRlYnVnIiwiaW5mbyIsIndhcm4iLCJlcnJvciIsImxvZyIsImFzc2VydCIsInRyYWNlIl0sQz17fTtmdW5jdGlvbiBUKHQpe2lmKCEoImNvbnNvbGUiaW4gbCkpcmV0dXJuIHQoKTtjb25zdCBuPWwuY29uc29sZSxlPXt9LHI9T2JqZWN0LmtleXMoQyk7ci5mb3JFYWNoKCh0PT57Y29uc3Qgcj1DW3RdO2VbdF09blt0XSxuW3RdPXJ9KSk7dHJ5e3JldHVybiB0KCl9ZmluYWxseXtyLmZvckVhY2goKHQ9PntuW3RdPWVbdF19KSl9fWNvbnN0IGs9ZygibG9nZ2VyIiwoZnVuY3Rpb24oKXtsZXQgdD0hMTtjb25zdCBuPXtlbmFibGU6KCk9Pnt0PSEwfSxkaXNhYmxlOigpPT57dD0hMX0saXNFbmFibGVkOigpPT50fTtyZXR1cm4gaD9OLmZvckVhY2goKGU9PntuW2VdPSguLi5uKT0+e3QmJlQoKCgpPT57bC5jb25zb2xlW2VdKGBTZW50cnkgTG9nZ2VyIFske2V9XTpgLC4uLm4pfSkpfX0pKTpOLmZvckVhY2goKHQ9PntuW3RdPSgpPT57fX0pKSxufSkpO2Z1bmN0aW9uIGoodCxuPTApe3JldHVybiJzdHJpbmciIT10eXBlb2YgdHx8MD09PW58fHQubGVuZ3RoPD1uP3Q6YCR7dC5zbGljZSgwLG4pfS4uLmB9ZnVuY3Rpb24gUih0KXtpZihmdW5jdGlvbih0KXtzd2l0Y2goeS5jYWxsKHQpKXtjYXNlIltvYmplY3QgRXJyb3JdIjpjYXNlIltvYmplY3QgRXhjZXB0aW9uXSI6Y2FzZSJbb2JqZWN0IERPTUV4Y2VwdGlvbl0iOmNhc2UiW29iamVjdCBXZWJBc3NlbWJseS5FeGNlcHRpb25dIjpyZXR1cm4hMDtkZWZhdWx0OnJldHVybiBTKHQsRXJyb3IpfX0odCkpcmV0dXJue21lc3NhZ2U6dC5tZXNzYWdlLG5hbWU6dC5uYW1lLHN0YWNrOnQuc3RhY2ssLi4uTyh0KX07aWYobj10LCJ1bmRlZmluZWQiIT10eXBlb2YgRXZlbnQmJlMobixFdmVudCkpe2NvbnN0IG49e3R5cGU6dC50eXBlLHRhcmdldDpJKHQudGFyZ2V0KSxjdXJyZW50VGFyZ2V0OkkodC5jdXJyZW50VGFyZ2V0KSwuLi5PKHQpfTtyZXR1cm4idW5kZWZpbmVkIiE9dHlwZW9mIEN1c3RvbUV2ZW50JiZTKHQsQ3VzdG9tRXZlbnQpJiYobi5kZXRhaWw9dC5kZXRhaWwpLG59cmV0dXJuIHQ7dmFyIG59ZnVuY3Rpb24gSSh0KXt0cnl7cmV0dXJuIG49dCwidW5kZWZpbmVkIiE9dHlwZW9mIEVsZW1lbnQmJlMobixFbGVtZW50KT9mdW5jdGlvbih0LG49e30pe2lmKCF0KXJldHVybiI8dW5rbm93bj4iO3RyeXtsZXQgZT10O2NvbnN0IHI9NSxvPVtdO2xldCBzPTAsaT0wO2NvbnN0IGM9IiA+ICIsdT1jLmxlbmd0aDtsZXQgYTtjb25zdCBmPUFycmF5LmlzQXJyYXkobik/bjpuLmtleUF0dHJzLGg9IUFycmF5LmlzQXJyYXkobikmJm4ubWF4U3RyaW5nTGVuZ3RofHxFO2Zvcig7ZSYmcysrPHImJihhPXgoZSxmKSwhKCJodG1sIj09PWF8fHM+MSYmaStvLmxlbmd0aCp1K2EubGVuZ3RoPj1oKSk7KW8ucHVzaChhKSxpKz1hLmxlbmd0aCxlPWUucGFyZW50Tm9kZTtyZXR1cm4gby5yZXZlcnNlKCkuam9pbihjKX1jYXRjaCh0KXtyZXR1cm4iPHVua25vd24+In19KHQpOk9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbCh0KX1jYXRjaCh0KXtyZXR1cm4iPHVua25vd24+In12YXIgbn1mdW5jdGlvbiBPKHQpe2lmKCJvYmplY3QiPT10eXBlb2YgdCYmbnVsbCE9PXQpe2NvbnN0IG49e307Zm9yKGNvbnN0IGUgaW4gdClPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodCxlKSYmKG5bZV09dFtlXSk7cmV0dXJuIG59cmV0dXJue319ZnVuY3Rpb24gRCh0PWZ1bmN0aW9uKCl7Y29uc3QgdD1sO3JldHVybiB0LmNyeXB0b3x8dC5tc0NyeXB0b30oKSl7bGV0IG49KCk9PjE2Kk1hdGgucmFuZG9tKCk7dHJ5e2lmKHQ/LnJhbmRvbVVVSUQpcmV0dXJuIHQucmFuZG9tVVVJRCgpLnJlcGxhY2UoLy0vZywiIik7dD8uZ2V0UmFuZG9tVmFsdWVzJiYobj0oKT0+e2NvbnN0IG49bmV3IFVpbnQ4QXJyYXkoMSk7cmV0dXJuIHQuZ2V0UmFuZG9tVmFsdWVzKG4pLG5bMF19KX1jYXRjaCh0KXt9cmV0dXJuKFsxZTddKzFlMys0ZTMrOGUzKzFlMTEpLnJlcGxhY2UoL1swMThdL2csKHQ9Pih0XigxNSZuKCkpPj50LzQpLnRvU3RyaW5nKDE2KSkpfWNvbnN0IEE9MWUzO2Z1bmN0aW9uIFAoKXtyZXR1cm4gRGF0ZS5ub3coKS9BfWNvbnN0IFU9ZnVuY3Rpb24oKXtjb25zdHtwZXJmb3JtYW5jZTp0fT1sO2lmKCF0Py5ub3cpcmV0dXJuIFA7Y29uc3Qgbj1EYXRlLm5vdygpLXQubm93KCksZT1udWxsPT10LnRpbWVPcmlnaW4/bjp0LnRpbWVPcmlnaW47cmV0dXJuKCk9PihlK3Qubm93KCkpL0F9KCk7ZnVuY3Rpb24gTSh0KXtjb25zdCBuPVUoKSxlPXtzaWQ6RCgpLGluaXQ6ITAsdGltZXN0YW1wOm4sc3RhcnRlZDpuLGR1cmF0aW9uOjAsc3RhdHVzOiJvayIsZXJyb3JzOjAsaWdub3JlRHVyYXRpb246ITEsdG9KU09OOigpPT5mdW5jdGlvbih0KXtyZXR1cm57c2lkOmAke3Quc2lkfWAsaW5pdDp0LmluaXQsc3RhcnRlZDpuZXcgRGF0ZSgxZTMqdC5zdGFydGVkKS50b0lTT1N0cmluZygpLHRpbWVzdGFtcDpuZXcgRGF0ZSgxZTMqdC50aW1lc3RhbXApLnRvSVNPU3RyaW5nKCksc3RhdHVzOnQuc3RhdHVzLGVycm9yczp0LmVycm9ycyxkaWQ6Im51bWJlciI9PXR5cGVvZiB0LmRpZHx8InN0cmluZyI9PXR5cGVvZiB0LmRpZD9gJHt0LmRpZH1gOnZvaWQgMCxkdXJhdGlvbjp0LmR1cmF0aW9uLGFibm9ybWFsX21lY2hhbmlzbTp0LmFibm9ybWFsX21lY2hhbmlzbSxhdHRyczp7cmVsZWFzZTp0LnJlbGVhc2UsZW52aXJvbm1lbnQ6dC5lbnZpcm9ubWVudCxpcF9hZGRyZXNzOnQuaXBBZGRyZXNzLHVzZXJfYWdlbnQ6dC51c2VyQWdlbnR9fX0oZSl9O3JldHVybiB0JiZMKGUsdCksZX1mdW5jdGlvbiBMKHQsbj17fSl7aWYobi51c2VyJiYoIXQuaXBBZGRyZXNzJiZuLnVzZXIuaXBfYWRkcmVzcyYmKHQuaXBBZGRyZXNzPW4udXNlci5pcF9hZGRyZXNzKSx0LmRpZHx8bi5kaWR8fCh0LmRpZD1uLnVzZXIuaWR8fG4udXNlci5lbWFpbHx8bi51c2VyLnVzZXJuYW1lKSksdC50aW1lc3RhbXA9bi50aW1lc3RhbXB8fFUoKSxuLmFibm9ybWFsX21lY2hhbmlzbSYmKHQuYWJub3JtYWxfbWVjaGFuaXNtPW4uYWJub3JtYWxfbWVjaGFuaXNtKSxuLmlnbm9yZUR1cmF0aW9uJiYodC5pZ25vcmVEdXJhdGlvbj1uLmlnbm9yZUR1cmF0aW9uKSxuLnNpZCYmKHQuc2lkPTMyPT09bi5zaWQubGVuZ3RoP24uc2lkOkQoKSksdm9pZCAwIT09bi5pbml0JiYodC5pbml0PW4uaW5pdCksIXQuZGlkJiZuLmRpZCYmKHQuZGlkPWAke24uZGlkfWApLCJudW1iZXIiPT10eXBlb2Ygbi5zdGFydGVkJiYodC5zdGFydGVkPW4uc3RhcnRlZCksdC5pZ25vcmVEdXJhdGlvbil0LmR1cmF0aW9uPXZvaWQgMDtlbHNlIGlmKCJudW1iZXIiPT10eXBlb2Ygbi5kdXJhdGlvbil0LmR1cmF0aW9uPW4uZHVyYXRpb247ZWxzZXtjb25zdCBuPXQudGltZXN0YW1wLXQuc3RhcnRlZDt0LmR1cmF0aW9uPW4+PTA/bjowfW4ucmVsZWFzZSYmKHQucmVsZWFzZT1uLnJlbGVhc2UpLG4uZW52aXJvbm1lbnQmJih0LmVudmlyb25tZW50PW4uZW52aXJvbm1lbnQpLCF0LmlwQWRkcmVzcyYmbi5pcEFkZHJlc3MmJih0LmlwQWRkcmVzcz1uLmlwQWRkcmVzcyksIXQudXNlckFnZW50JiZuLnVzZXJBZ2VudCYmKHQudXNlckFnZW50PW4udXNlckFnZW50KSwibnVtYmVyIj09dHlwZW9mIG4uZXJyb3JzJiYodC5lcnJvcnM9bi5lcnJvcnMpLG4uc3RhdHVzJiYodC5zdGF0dXM9bi5zdGF0dXMpfWZ1bmN0aW9uIEIodCxuLGU9Mil7aWYoIW58fCJvYmplY3QiIT10eXBlb2Ygbnx8ZTw9MClyZXR1cm4gbjtpZih0JiYwPT09T2JqZWN0LmtleXMobikubGVuZ3RoKXJldHVybiB0O2NvbnN0IHI9ey4uLnR9O2Zvcihjb25zdCB0IGluIG4pT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG4sdCkmJihyW3RdPUIoclt0XSxuW3RdLGUtMSkpO3JldHVybiByfWNvbnN0IEc9Il9zZW50cnlTcGFuIjtmdW5jdGlvbiBKKHQsbil7bj9mdW5jdGlvbih0LG4sZSl7dHJ5e09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LG4se3ZhbHVlOmUsd3JpdGFibGU6ITAsY29uZmlndXJhYmxlOiEwfSl9Y2F0Y2goZSl7aCYmay5sb2coYEZhaWxlZCB0byBhZGQgbm9uLWVudW1lcmFibGUgcHJvcGVydHkgIiR7bn0iIHRvIG9iamVjdGAsdCl9fSh0LEcsbik6ZGVsZXRlIHRbR119ZnVuY3Rpb24geih0KXtyZXR1cm4gdFtHXX1mdW5jdGlvbiBIKCl7cmV0dXJuIEQoKX1mdW5jdGlvbiBGKCl7cmV0dXJuIEQoKS5zdWJzdHJpbmcoMTYpfWNsYXNzIFd7Y29uc3RydWN0b3IoKXt0aGlzLnQ9ITEsdGhpcy5vPVtdLHRoaXMuaT1bXSx0aGlzLnU9W10sdGhpcy5oPVtdLHRoaXMucD17fSx0aGlzLmw9e30sdGhpcy5tPXt9LHRoaXMuXz17fSx0aGlzLnY9e30sdGhpcy5TPXt0cmFjZUlkOkgoKSxzYW1wbGVSYW5kOk1hdGgucmFuZG9tKCl9fWNsb25lKCl7Y29uc3QgdD1uZXcgVztyZXR1cm4gdC51PVsuLi50aGlzLnVdLHQubD17Li4udGhpcy5sfSx0Lm09ey4uLnRoaXMubX0sdC5fPXsuLi50aGlzLl99LHRoaXMuXy5mbGFncyYmKHQuXy5mbGFncz17dmFsdWVzOlsuLi50aGlzLl8uZmxhZ3MudmFsdWVzXX0pLHQucD10aGlzLnAsdC5OPXRoaXMuTix0LkM9dGhpcy5DLHQuVD10aGlzLlQsdC5rPXRoaXMuayx0Lmk9Wy4uLnRoaXMuaV0sdC5oPVsuLi50aGlzLmhdLHQudj17Li4udGhpcy52fSx0LlM9ey4uLnRoaXMuU30sdC5qPXRoaXMuaix0LlI9dGhpcy5SLEoodCx6KHRoaXMpKSx0fXNldENsaWVudCh0KXt0aGlzLmo9dH1zZXRMYXN0RXZlbnRJZCh0KXt0aGlzLlI9dH1nZXRDbGllbnQoKXtyZXR1cm4gdGhpcy5qfWxhc3RFdmVudElkKCl7cmV0dXJuIHRoaXMuUn1hZGRTY29wZUxpc3RlbmVyKHQpe3RoaXMuby5wdXNoKHQpfWFkZEV2ZW50UHJvY2Vzc29yKHQpe3JldHVybiB0aGlzLmkucHVzaCh0KSx0aGlzfXNldFVzZXIodCl7cmV0dXJuIHRoaXMucD10fHx7ZW1haWw6dm9pZCAwLGlkOnZvaWQgMCxpcF9hZGRyZXNzOnZvaWQgMCx1c2VybmFtZTp2b2lkIDB9LHRoaXMuQyYmTCh0aGlzLkMse3VzZXI6dH0pLHRoaXMuSSgpLHRoaXN9Z2V0VXNlcigpe3JldHVybiB0aGlzLnB9c2V0VGFncyh0KXtyZXR1cm4gdGhpcy5sPXsuLi50aGlzLmwsLi4udH0sdGhpcy5JKCksdGhpc31zZXRUYWcodCxuKXtyZXR1cm4gdGhpcy5sPXsuLi50aGlzLmwsW3RdOm59LHRoaXMuSSgpLHRoaXN9c2V0RXh0cmFzKHQpe3JldHVybiB0aGlzLm09ey4uLnRoaXMubSwuLi50fSx0aGlzLkkoKSx0aGlzfXNldEV4dHJhKHQsbil7cmV0dXJuIHRoaXMubT17Li4udGhpcy5tLFt0XTpufSx0aGlzLkkoKSx0aGlzfXNldEZpbmdlcnByaW50KHQpe3JldHVybiB0aGlzLms9dCx0aGlzLkkoKSx0aGlzfXNldExldmVsKHQpe3JldHVybiB0aGlzLk49dCx0aGlzLkkoKSx0aGlzfXNldFRyYW5zYWN0aW9uTmFtZSh0KXtyZXR1cm4gdGhpcy5UPXQsdGhpcy5JKCksdGhpc31zZXRDb250ZXh0KHQsbil7cmV0dXJuIG51bGw9PT1uP2RlbGV0ZSB0aGlzLl9bdF06dGhpcy5fW3RdPW4sdGhpcy5JKCksdGhpc31zZXRTZXNzaW9uKHQpe3JldHVybiB0P3RoaXMuQz10OmRlbGV0ZSB0aGlzLkMsdGhpcy5JKCksdGhpc31nZXRTZXNzaW9uKCl7cmV0dXJuIHRoaXMuQ311cGRhdGUodCl7aWYoIXQpcmV0dXJuIHRoaXM7Y29uc3Qgbj0iZnVuY3Rpb24iPT10eXBlb2YgdD90KHRoaXMpOnQsZT1uIGluc3RhbmNlb2YgVz9uLmdldFNjb3BlRGF0YSgpOnYobik/dDp2b2lkIDAse3RhZ3M6cixleHRyYTpvLHVzZXI6cyxjb250ZXh0czppLGxldmVsOmMsZmluZ2VycHJpbnQ6dT1bXSxwcm9wYWdhdGlvbkNvbnRleHQ6YX09ZXx8e307cmV0dXJuIHRoaXMubD17Li4udGhpcy5sLC4uLnJ9LHRoaXMubT17Li4udGhpcy5tLC4uLm99LHRoaXMuXz17Li4udGhpcy5fLC4uLml9LHMmJk9iamVjdC5rZXlzKHMpLmxlbmd0aCYmKHRoaXMucD1zKSxjJiYodGhpcy5OPWMpLHUubGVuZ3RoJiYodGhpcy5rPXUpLGEmJih0aGlzLlM9YSksdGhpc31jbGVhcigpe3JldHVybiB0aGlzLnU9W10sdGhpcy5sPXt9LHRoaXMubT17fSx0aGlzLnA9e30sdGhpcy5fPXt9LHRoaXMuTj12b2lkIDAsdGhpcy5UPXZvaWQgMCx0aGlzLms9dm9pZCAwLHRoaXMuQz12b2lkIDAsSih0aGlzLHZvaWQgMCksdGhpcy5oPVtdLHRoaXMuc2V0UHJvcGFnYXRpb25Db250ZXh0KHt0cmFjZUlkOkgoKSxzYW1wbGVSYW5kOk1hdGgucmFuZG9tKCl9KSx0aGlzLkkoKSx0aGlzfWFkZEJyZWFkY3J1bWIodCxuKXtjb25zdCBlPSJudW1iZXIiPT10eXBlb2Ygbj9uOjEwMDtpZihlPD0wKXJldHVybiB0aGlzO2NvbnN0IHI9e3RpbWVzdGFtcDpQKCksLi4udCxtZXNzYWdlOnQubWVzc2FnZT9qKHQubWVzc2FnZSwyMDQ4KTp0Lm1lc3NhZ2V9O3JldHVybiB0aGlzLnUucHVzaChyKSx0aGlzLnUubGVuZ3RoPmUmJih0aGlzLnU9dGhpcy51LnNsaWNlKC1lKSx0aGlzLmo/LnJlY29yZERyb3BwZWRFdmVudCgiYnVmZmVyX292ZXJmbG93IiwibG9nX2l0ZW0iKSksdGhpcy5JKCksdGhpc31nZXRMYXN0QnJlYWRjcnVtYigpe3JldHVybiB0aGlzLnVbdGhpcy51Lmxlbmd0aC0xXX1jbGVhckJyZWFkY3J1bWJzKCl7cmV0dXJuIHRoaXMudT1bXSx0aGlzLkkoKSx0aGlzfWFkZEF0dGFjaG1lbnQodCl7cmV0dXJuIHRoaXMuaC5wdXNoKHQpLHRoaXN9Y2xlYXJBdHRhY2htZW50cygpe3JldHVybiB0aGlzLmg9W10sdGhpc31nZXRTY29wZURhdGEoKXtyZXR1cm57YnJlYWRjcnVtYnM6dGhpcy51LGF0dGFjaG1lbnRzOnRoaXMuaCxjb250ZXh0czp0aGlzLl8sdGFnczp0aGlzLmwsZXh0cmE6dGhpcy5tLHVzZXI6dGhpcy5wLGxldmVsOnRoaXMuTixmaW5nZXJwcmludDp0aGlzLmt8fFtdLGV2ZW50UHJvY2Vzc29yczp0aGlzLmkscHJvcGFnYXRpb25Db250ZXh0OnRoaXMuUyxzZGtQcm9jZXNzaW5nTWV0YWRhdGE6dGhpcy52LHRyYW5zYWN0aW9uTmFtZTp0aGlzLlQsc3Bhbjp6KHRoaXMpfX1zZXRTREtQcm9jZXNzaW5nTWV0YWRhdGEodCl7cmV0dXJuIHRoaXMudj1CKHRoaXMudix0LDIpLHRoaXN9c2V0UHJvcGFnYXRpb25Db250ZXh0KHQpe3JldHVybiB0aGlzLlM9dCx0aGlzfWdldFByb3BhZ2F0aW9uQ29udGV4dCgpe3JldHVybiB0aGlzLlN9Y2FwdHVyZUV4Y2VwdGlvbih0LG4pe2NvbnN0IGU9bj8uZXZlbnRfaWR8fEQoKTtpZighdGhpcy5qKXJldHVybiBrLndhcm4oIk5vIGNsaWVudCBjb25maWd1cmVkIG9uIHNjb3BlIC0gd2lsbCBub3QgY2FwdHVyZSBleGNlcHRpb24hIiksZTtjb25zdCByPW5ldyBFcnJvcigiU2VudHJ5IHN5bnRoZXRpY0V4Y2VwdGlvbiIpO3JldHVybiB0aGlzLmouY2FwdHVyZUV4Y2VwdGlvbih0LHtvcmlnaW5hbEV4Y2VwdGlvbjp0LHN5bnRoZXRpY0V4Y2VwdGlvbjpyLC4uLm4sZXZlbnRfaWQ6ZX0sdGhpcyksZX1jYXB0dXJlTWVzc2FnZSh0LG4sZSl7Y29uc3Qgcj1lPy5ldmVudF9pZHx8RCgpO2lmKCF0aGlzLmopcmV0dXJuIGsud2FybigiTm8gY2xpZW50IGNvbmZpZ3VyZWQgb24gc2NvcGUgLSB3aWxsIG5vdCBjYXB0dXJlIG1lc3NhZ2UhIikscjtjb25zdCBvPW5ldyBFcnJvcih0KTtyZXR1cm4gdGhpcy5qLmNhcHR1cmVNZXNzYWdlKHQsbix7b3JpZ2luYWxFeGNlcHRpb246dCxzeW50aGV0aWNFeGNlcHRpb246bywuLi5lLGV2ZW50X2lkOnJ9LHRoaXMpLHJ9Y2FwdHVyZUV2ZW50KHQsbil7Y29uc3QgZT1uPy5ldmVudF9pZHx8RCgpO3JldHVybiB0aGlzLmo/KHRoaXMuai5jYXB0dXJlRXZlbnQodCx7Li4ubixldmVudF9pZDplfSx0aGlzKSxlKTooay53YXJuKCJObyBjbGllbnQgY29uZmlndXJlZCBvbiBzY29wZSAtIHdpbGwgbm90IGNhcHR1cmUgZXZlbnQhIiksZSl9SSgpe3RoaXMudHx8KHRoaXMudD0hMCx0aGlzLm8uZm9yRWFjaCgodD0+e3QodGhpcyl9KSksdGhpcy50PSExKX19Y2xhc3MgWXtjb25zdHJ1Y3Rvcih0LG4pe2xldCBlLHI7ZT10fHxuZXcgVyxyPW58fG5ldyBXLHRoaXMuTz1be3Njb3BlOmV9XSx0aGlzLkQ9cn13aXRoU2NvcGUodCl7Y29uc3Qgbj10aGlzLkEoKTtsZXQgZTt0cnl7ZT10KG4pfWNhdGNoKHQpe3Rocm93IHRoaXMuUCgpLHR9cmV0dXJuIHcoZSk/ZS50aGVuKCh0PT4odGhpcy5QKCksdCkpLCh0PT57dGhyb3cgdGhpcy5QKCksdH0pKToodGhpcy5QKCksZSl9Z2V0Q2xpZW50KCl7cmV0dXJuIHRoaXMuZ2V0U3RhY2tUb3AoKS5jbGllbnR9Z2V0U2NvcGUoKXtyZXR1cm4gdGhpcy5nZXRTdGFja1RvcCgpLnNjb3BlfWdldElzb2xhdGlvblNjb3BlKCl7cmV0dXJuIHRoaXMuRH1nZXRTdGFja1RvcCgpe3JldHVybiB0aGlzLk9bdGhpcy5PLmxlbmd0aC0xXX1BKCl7Y29uc3QgdD10aGlzLmdldFNjb3BlKCkuY2xvbmUoKTtyZXR1cm4gdGhpcy5PLnB1c2goe2NsaWVudDp0aGlzLmdldENsaWVudCgpLHNjb3BlOnR9KSx0fVAoKXtyZXR1cm4hKHRoaXMuTy5sZW5ndGg8PTEpJiYhIXRoaXMuTy5wb3AoKX19ZnVuY3Rpb24gSygpe2NvbnN0IHQ9bShkKCkpO3JldHVybiB0LnN0YWNrPXQuc3RhY2t8fG5ldyBZKGcoImRlZmF1bHRDdXJyZW50U2NvcGUiLCgoKT0+bmV3IFcpKSxnKCJkZWZhdWx0SXNvbGF0aW9uU2NvcGUiLCgoKT0+bmV3IFcpKSl9ZnVuY3Rpb24gVih0KXtyZXR1cm4gSygpLndpdGhTY29wZSh0KX1mdW5jdGlvbiBaKHQsbil7Y29uc3QgZT1LKCk7cmV0dXJuIGUud2l0aFNjb3BlKCgoKT0+KGUuZ2V0U3RhY2tUb3AoKS5zY29wZT10LG4odCkpKSl9ZnVuY3Rpb24gcSh0KXtyZXR1cm4gSygpLndpdGhTY29wZSgoKCk9PnQoSygpLmdldElzb2xhdGlvblNjb3BlKCkpKSl9ZnVuY3Rpb24gUSh0KXtjb25zdCBuPW0odCk7cmV0dXJuIG4uYWNzP24uYWNzOnt3aXRoSXNvbGF0aW9uU2NvcGU6cSx3aXRoU2NvcGU6Vix3aXRoU2V0U2NvcGU6Wix3aXRoU2V0SXNvbGF0aW9uU2NvcGU6KHQsbik9PnEobiksZ2V0Q3VycmVudFNjb3BlOigpPT5LKCkuZ2V0U2NvcGUoKSxnZXRJc29sYXRpb25TY29wZTooKT0+SygpLmdldElzb2xhdGlvblNjb3BlKCl9fWZ1bmN0aW9uIFgoKXtyZXR1cm4gUShkKCkpLmdldEN1cnJlbnRTY29wZSgpLmdldENsaWVudCgpfWNvbnN0IHR0PSJzZW50cnkuc291cmNlIixudD0ic2VudHJ5LnNhbXBsZV9yYXRlIixldD0ic2VudHJ5LnByZXZpb3VzX3RyYWNlX3NhbXBsZV9yYXRlIixydD0ic2VudHJ5Lm9wIixvdD0ic2VudHJ5Lm9yaWdpbiIsc3Q9MCxpdD0xLGN0PSJfc2VudHJ5U2NvcGUiLHV0PSJfc2VudHJ5SXNvbGF0aW9uU2NvcGUiO2Z1bmN0aW9uIGF0KHQpe3JldHVybntzY29wZTp0W2N0XSxpc29sYXRpb25TY29wZTp0W3V0XX19Y29uc3QgZnQ9InNlbnRyeS0iLGh0PS9ec2VudHJ5LS87ZnVuY3Rpb24gcHQodCl7Y29uc3Qgbj1mdW5jdGlvbih0KXtpZighdHx8IV8odCkmJiFBcnJheS5pc0FycmF5KHQpKXJldHVybjtpZihBcnJheS5pc0FycmF5KHQpKXJldHVybiB0LnJlZHVjZSgoKHQsbik9Pntjb25zdCBlPWx0KG4pO3JldHVybiBPYmplY3QuZW50cmllcyhlKS5mb3JFYWNoKCgoW24sZV0pPT57dFtuXT1lfSkpLHR9KSx7fSk7cmV0dXJuIGx0KHQpfSh0KTtpZighbilyZXR1cm47Y29uc3QgZT1PYmplY3QuZW50cmllcyhuKS5yZWR1Y2UoKCh0LFtuLGVdKT0+e2lmKG4ubWF0Y2goaHQpKXt0W24uc2xpY2UoZnQubGVuZ3RoKV09ZX1yZXR1cm4gdH0pLHt9KTtyZXR1cm4gT2JqZWN0LmtleXMoZSkubGVuZ3RoPjA/ZTp2b2lkIDB9ZnVuY3Rpb24gbHQodCl7cmV0dXJuIHQuc3BsaXQoIiwiKS5tYXAoKHQ9PnQuc3BsaXQoIj0iKS5tYXAoKHQ9Pnt0cnl7cmV0dXJuIGRlY29kZVVSSUNvbXBvbmVudCh0LnRyaW0oKSl9Y2F0Y2h7cmV0dXJufX0pKSkpLnJlZHVjZSgoKHQsW24sZV0pPT4obiYmZSYmKHRbbl09ZSksdCkpLHt9KX1jb25zdCBkdD0xO2Z1bmN0aW9uIG10KHQpe2NvbnN0e3NwYW5JZDpuLHRyYWNlSWQ6ZSxpc1JlbW90ZTpyfT10LnNwYW5Db250ZXh0KCksbz1yP246X3QodCkucGFyZW50X3NwYW5faWQscz1hdCh0KS5zY29wZTtyZXR1cm57cGFyZW50X3NwYW5faWQ6byxzcGFuX2lkOnI/cz8uZ2V0UHJvcGFnYXRpb25Db250ZXh0KCkucHJvcGFnYXRpb25TcGFuSWR8fEYoKTpuLHRyYWNlX2lkOmV9fWZ1bmN0aW9uIGd0KHQpe3JldHVybiB0JiZ0Lmxlbmd0aD4wP3QubWFwKCgoe2NvbnRleHQ6e3NwYW5JZDp0LHRyYWNlSWQ6bix0cmFjZUZsYWdzOmUsLi4ucn0sYXR0cmlidXRlczpvfSk9Pih7c3Bhbl9pZDp0LHRyYWNlX2lkOm4sc2FtcGxlZDplPT09ZHQsYXR0cmlidXRlczpvLC4uLnJ9KSkpOnZvaWQgMH1mdW5jdGlvbiB5dCh0KXtyZXR1cm4ibnVtYmVyIj09dHlwZW9mIHQ/YnQodCk6QXJyYXkuaXNBcnJheSh0KT90WzBdK3RbMV0vMWU5OnQgaW5zdGFuY2VvZiBEYXRlP2J0KHQuZ2V0VGltZSgpKTpVKCl9ZnVuY3Rpb24gYnQodCl7cmV0dXJuIHQ+OTk5OTk5OTk5OT90LzFlMzp0fWZ1bmN0aW9uIF90KHQpe2lmKGZ1bmN0aW9uKHQpe3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiB0LmdldFNwYW5KU09OfSh0KSlyZXR1cm4gdC5nZXRTcGFuSlNPTigpO2NvbnN0e3NwYW5JZDpuLHRyYWNlSWQ6ZX09dC5zcGFuQ29udGV4dCgpO2lmKGZ1bmN0aW9uKHQpe2NvbnN0IG49dDtyZXR1cm4hIShuLmF0dHJpYnV0ZXMmJm4uc3RhcnRUaW1lJiZuLm5hbWUmJm4uZW5kVGltZSYmbi5zdGF0dXMpfSh0KSl7Y29uc3R7YXR0cmlidXRlczpyLHN0YXJ0VGltZTpvLG5hbWU6cyxlbmRUaW1lOmksc3RhdHVzOmMsbGlua3M6dX09dDtyZXR1cm57c3Bhbl9pZDpuLHRyYWNlX2lkOmUsZGF0YTpyLGRlc2NyaXB0aW9uOnMscGFyZW50X3NwYW5faWQ6InBhcmVudFNwYW5JZCJpbiB0P3QucGFyZW50U3BhbklkOiJwYXJlbnRTcGFuQ29udGV4dCJpbiB0P3QucGFyZW50U3BhbkNvbnRleHQ/LnNwYW5JZDp2b2lkIDAsc3RhcnRfdGltZXN0YW1wOnl0KG8pLHRpbWVzdGFtcDp5dChpKXx8dm9pZCAwLHN0YXR1czp2dChjKSxvcDpyW3J0XSxvcmlnaW46cltvdF0sbGlua3M6Z3QodSl9fXJldHVybntzcGFuX2lkOm4sdHJhY2VfaWQ6ZSxzdGFydF90aW1lc3RhbXA6MCxkYXRhOnt9fX1mdW5jdGlvbiB2dCh0KXtpZih0JiZ0LmNvZGUhPT1zdClyZXR1cm4gdC5jb2RlPT09aXQ/Im9rIjp0Lm1lc3NhZ2V8fCJ1bmtub3duX2Vycm9yIn1jb25zdCB3dD0iX3NlbnRyeVJvb3RTcGFuIjtmdW5jdGlvbiBTdCh0KXtyZXR1cm4gdFt3dF18fHR9Y29uc3QgJHQ9NTAsRXQ9Ij8iLHh0PS9jYXB0dXJlTWVzc2FnZXxjYXB0dXJlRXhjZXB0aW9uLztmdW5jdGlvbiBOdCh0KXtyZXR1cm4gdFt0Lmxlbmd0aC0xXXx8e319Y29uc3QgQ3Q9Ijxhbm9ueW1vdXM+Ijtjb25zdCBUdD0icHJvZHVjdGlvbiIsa3Q9L15vKFxkKylcLi87ZnVuY3Rpb24ganQodCxuPSExKXtjb25zdHtob3N0OmUscGF0aDpyLHBhc3M6byxwb3J0OnMscHJvamVjdElkOmkscHJvdG9jb2w6YyxwdWJsaWNLZXk6dX09dDtyZXR1cm5gJHtjfTovLyR7dX0ke24mJm8/YDoke299YDoiIn1AJHtlfSR7cz9gOiR7c31gOiIifS8ke3I/YCR7cn0vYDpyfSR7aX1gfWNvbnN0IFJ0PSJfZnJvemVuRHNjIjtmdW5jdGlvbiBJdCh0LG4pe2NvbnN0IGU9bi5nZXRPcHRpb25zKCkse3B1YmxpY0tleTpyLGhvc3Q6b309bi5nZXREc24oKXx8e307bGV0IHM7ZS5vcmdJZD9zPVN0cmluZyhlLm9yZ0lkKTpvJiYocz1mdW5jdGlvbih0KXtjb25zdCBuPXQubWF0Y2goa3QpO3JldHVybiBuPy5bMV19KG8pKTtjb25zdCBpPXtlbnZpcm9ubWVudDplLmVudmlyb25tZW50fHxUdCxyZWxlYXNlOmUucmVsZWFzZSxwdWJsaWNfa2V5OnIsdHJhY2VfaWQ6dCxvcmdfaWQ6c307cmV0dXJuIG4uZW1pdCgiY3JlYXRlRHNjIixpKSxpfWZ1bmN0aW9uIE90KHQpe2NvbnN0IG49WCgpO2lmKCFuKXJldHVybnt9O2NvbnN0IGU9U3QodCkscj1fdChlKSxvPXIuZGF0YSxzPWUuc3BhbkNvbnRleHQoKS50cmFjZVN0YXRlLGk9cz8uZ2V0KCJzZW50cnkuc2FtcGxlX3JhdGUiKT8/b1tudF0/P29bZXRdO2Z1bmN0aW9uIGModCl7cmV0dXJuIm51bWJlciIhPXR5cGVvZiBpJiYic3RyaW5nIiE9dHlwZW9mIGl8fCh0LnNhbXBsZV9yYXRlPWAke2l9YCksdH1jb25zdCB1PWVbUnRdO2lmKHUpcmV0dXJuIGModSk7Y29uc3QgYT1zPy5nZXQoInNlbnRyeS5kc2MiKSxmPWEmJnB0KGEpO2lmKGYpcmV0dXJuIGMoZik7Y29uc3QgaD1JdCh0LnNwYW5Db250ZXh0KCkudHJhY2VJZCxuKSxwPW9bdHRdLGw9ci5kZXNjcmlwdGlvbjtyZXR1cm4idXJsIiE9PXAmJmwmJihoLnRyYW5zYWN0aW9uPWwpLGZ1bmN0aW9uKHQpe2lmKCJib29sZWFuIj09dHlwZW9mIF9fU0VOVFJZX1RSQUNJTkdfXyYmIV9fU0VOVFJZX1RSQUNJTkdfXylyZXR1cm4hMTtjb25zdCBuPXR8fFgoKT8uZ2V0T3B0aW9ucygpO3JldHVybiEoIW58fG51bGw9PW4udHJhY2VzU2FtcGxlUmF0ZSYmIW4udHJhY2VzU2FtcGxlcil9KCkmJihoLnNhbXBsZWQ9U3RyaW5nKGZ1bmN0aW9uKHQpe2NvbnN0e3RyYWNlRmxhZ3M6bn09dC5zcGFuQ29udGV4dCgpO3JldHVybiBuPT09ZHR9KGUpKSxoLnNhbXBsZV9yYW5kPXM/LmdldCgic2VudHJ5LnNhbXBsZV9yYW5kIik/P2F0KGUpLnNjb3BlPy5nZXRQcm9wYWdhdGlvbkNvbnRleHQoKS5zYW1wbGVSYW5kLnRvU3RyaW5nKCkpLGMoaCksbi5lbWl0KCJjcmVhdGVEc2MiLGgsZSksaH1mdW5jdGlvbiBEdCh0LG49MTAwLGU9MS8wKXt0cnl7cmV0dXJuIEF0KCIiLHQsbixlKX1jYXRjaCh0KXtyZXR1cm57RVJST1I6YCoqbm9uLXNlcmlhbGl6YWJsZSoqICgke3R9KWB9fX1mdW5jdGlvbiBBdCh0LG4sZT0xLzAscj0xLzAsbz1mdW5jdGlvbigpe2NvbnN0IHQ9bmV3IFdlYWtTZXQ7ZnVuY3Rpb24gbihuKXtyZXR1cm4hIXQuaGFzKG4pfHwodC5hZGQobiksITEpfWZ1bmN0aW9uIGUobil7dC5kZWxldGUobil9cmV0dXJuW24sZV19KCkpe2NvbnN0W3MsaV09bztpZihudWxsPT1ufHxbImJvb2xlYW4iLCJzdHJpbmciXS5pbmNsdWRlcyh0eXBlb2Ygbil8fCJudW1iZXIiPT10eXBlb2YgbiYmTnVtYmVyLmlzRmluaXRlKG4pKXJldHVybiBuO2NvbnN0IGM9ZnVuY3Rpb24odCxuKXt0cnl7aWYoImRvbWFpbiI9PT10JiZuJiYib2JqZWN0Ij09dHlwZW9mIG4mJm4uVSlyZXR1cm4iW0RvbWFpbl0iO2lmKCJkb21haW5FbWl0dGVyIj09PXQpcmV0dXJuIltEb21haW5FbWl0dGVyXSI7aWYoInVuZGVmaW5lZCIhPXR5cGVvZiBnbG9iYWwmJm49PT1nbG9iYWwpcmV0dXJuIltHbG9iYWxdIjtpZigidW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdyYmbj09PXdpbmRvdylyZXR1cm4iW1dpbmRvd10iO2lmKCJ1bmRlZmluZWQiIT10eXBlb2YgZG9jdW1lbnQmJm49PT1kb2N1bWVudClyZXR1cm4iW0RvY3VtZW50XSI7aWYoIm9iamVjdCI9PXR5cGVvZihlPW4pJiZudWxsIT09ZSYmKGUuX19pc1Z1ZXx8ZS5NKSlyZXR1cm4iW1Z1ZVZpZXdNb2RlbF0iO2lmKGZ1bmN0aW9uKHQpe3JldHVybiB2KHQpJiYibmF0aXZlRXZlbnQiaW4gdCYmInByZXZlbnREZWZhdWx0ImluIHQmJiJzdG9wUHJvcGFnYXRpb24iaW4gdH0obikpcmV0dXJuIltTeW50aGV0aWNFdmVudF0iO2lmKCJudW1iZXIiPT10eXBlb2YgbiYmIU51bWJlci5pc0Zpbml0ZShuKSlyZXR1cm5gWyR7bn1dYDtpZigiZnVuY3Rpb24iPT10eXBlb2YgbilyZXR1cm5gW0Z1bmN0aW9uOiAke2Z1bmN0aW9uKHQpe3RyeXtyZXR1cm4gdCYmImZ1bmN0aW9uIj09dHlwZW9mIHQmJnQubmFtZXx8Q3R9Y2F0Y2godCl7cmV0dXJuIEN0fX0obil9XWA7aWYoInN5bWJvbCI9PXR5cGVvZiBuKXJldHVybmBbJHtTdHJpbmcobil9XWA7aWYoImJpZ2ludCI9PXR5cGVvZiBuKXJldHVybmBbQmlnSW50OiAke1N0cmluZyhuKX1dYDtjb25zdCByPWZ1bmN0aW9uKHQpe2NvbnN0IG49T2JqZWN0LmdldFByb3RvdHlwZU9mKHQpO3JldHVybiBuPy5jb25zdHJ1Y3Rvcj9uLmNvbnN0cnVjdG9yLm5hbWU6Im51bGwgcHJvdG90eXBlIn0obik7cmV0dXJuL15IVE1MKFx3KilFbGVtZW50JC8udGVzdChyKT9gW0hUTUxFbGVtZW50OiAke3J9XWA6YFtvYmplY3QgJHtyfV1gfWNhdGNoKHQpe3JldHVybmAqKm5vbi1zZXJpYWxpemFibGUqKiAoJHt0fSlgfXZhciBlfSh0LG4pO2lmKCFjLnN0YXJ0c1dpdGgoIltvYmplY3QgIikpcmV0dXJuIGM7aWYobi5fX3NlbnRyeV9za2lwX25vcm1hbGl6YXRpb25fXylyZXR1cm4gbjtjb25zdCB1PSJudW1iZXIiPT10eXBlb2Ygbi5fX3NlbnRyeV9vdmVycmlkZV9ub3JtYWxpemF0aW9uX2RlcHRoX18/bi5fX3NlbnRyeV9vdmVycmlkZV9ub3JtYWxpemF0aW9uX2RlcHRoX186ZTtpZigwPT09dSlyZXR1cm4gYy5yZXBsYWNlKCJvYmplY3QgIiwiIik7aWYocyhuKSlyZXR1cm4iW0NpcmN1bGFyIH5dIjtjb25zdCBhPW47aWYoYSYmImZ1bmN0aW9uIj09dHlwZW9mIGEudG9KU09OKXRyeXtyZXR1cm4gQXQoIiIsYS50b0pTT04oKSx1LTEscixvKX1jYXRjaCh0KXt9Y29uc3QgZj1BcnJheS5pc0FycmF5KG4pP1tdOnt9O2xldCBoPTA7Y29uc3QgcD1SKG4pO2Zvcihjb25zdCB0IGluIHApe2lmKCFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocCx0KSljb250aW51ZTtpZihoPj1yKXtmW3RdPSJbTWF4UHJvcGVydGllcyB+XSI7YnJlYWt9Y29uc3Qgbj1wW3RdO2ZbdF09QXQodCxuLHUtMSxyLG8pLGgrK31yZXR1cm4gaShuKSxmfWZ1bmN0aW9uIFB0KHQsbil7Y29uc3QgZT1uLnJlcGxhY2UoL1xcL2csIi8iKS5yZXBsYWNlKC9bfFxce30oKVtcXV4kKyo/Ll0vZywiXFwkJiIpO2xldCByPXQ7dHJ5e3I9ZGVjb2RlVVJJKHQpfWNhdGNoKHQpe31yZXR1cm4gci5yZXBsYWNlKC9cXC9nLCIvIikucmVwbGFjZSgvd2VicGFjazpcLz8vZywiIikucmVwbGFjZShuZXcgUmVnRXhwKGAoZmlsZTovLyk/Lyoke2V9LypgLCJpZyIpLCJhcHA6Ly8vIil9ZnVuY3Rpb24gVXQodCxuPVtdKXtyZXR1cm5bdCxuXX1mdW5jdGlvbiBNdCh0LG4pe2NvbnN0IGU9dFsxXTtmb3IoY29uc3QgdCBvZiBlKXtpZihuKHQsdFswXS50eXBlKSlyZXR1cm4hMH1yZXR1cm4hMX1mdW5jdGlvbiBMdCh0KXtjb25zdCBuPW0obCk7cmV0dXJuIG4uZW5jb2RlUG9seWZpbGw/bi5lbmNvZGVQb2x5ZmlsbCh0KToobmV3IFRleHRFbmNvZGVyKS5lbmNvZGUodCl9ZnVuY3Rpb24gQnQodCl7Y29uc3RbbixlXT10O2xldCByPUpTT04uc3RyaW5naWZ5KG4pO2Z1bmN0aW9uIG8odCl7InN0cmluZyI9PXR5cGVvZiByP3I9InN0cmluZyI9PXR5cGVvZiB0P3IrdDpbTHQociksdF06ci5wdXNoKCJzdHJpbmciPT10eXBlb2YgdD9MdCh0KTp0KX1mb3IoY29uc3QgdCBvZiBlKXtjb25zdFtuLGVdPXQ7aWYobyhgXG4ke0pTT04uc3RyaW5naWZ5KG4pfVxuYCksInN0cmluZyI9PXR5cGVvZiBlfHxlIGluc3RhbmNlb2YgVWludDhBcnJheSlvKGUpO2Vsc2V7bGV0IHQ7dHJ5e3Q9SlNPTi5zdHJpbmdpZnkoZSl9Y2F0Y2gobil7dD1KU09OLnN0cmluZ2lmeShEdChlKSl9byh0KX19cmV0dXJuInN0cmluZyI9PXR5cGVvZiByP3I6ZnVuY3Rpb24odCl7Y29uc3Qgbj10LnJlZHVjZSgoKHQsbik9PnQrbi5sZW5ndGgpLDApLGU9bmV3IFVpbnQ4QXJyYXkobik7bGV0IHI9MDtmb3IoY29uc3QgbiBvZiB0KWUuc2V0KG4scikscis9bi5sZW5ndGg7cmV0dXJuIGV9KHIpfWNvbnN0IEd0PXtzZXNzaW9uOiJzZXNzaW9uIixzZXNzaW9uczoic2Vzc2lvbiIsYXR0YWNobWVudDoiYXR0YWNobWVudCIsdHJhbnNhY3Rpb246InRyYW5zYWN0aW9uIixldmVudDoiZXJyb3IiLGNsaWVudF9yZXBvcnQ6ImludGVybmFsIix1c2VyX3JlcG9ydDoiZGVmYXVsdCIscHJvZmlsZToicHJvZmlsZSIscHJvZmlsZV9jaHVuazoicHJvZmlsZSIscmVwbGF5X2V2ZW50OiJyZXBsYXkiLHJlcGxheV9yZWNvcmRpbmc6InJlcGxheSIsY2hlY2tfaW46Im1vbml0b3IiLGZlZWRiYWNrOiJmZWVkYmFjayIsc3Bhbjoic3BhbiIscmF3X3NlY3VyaXR5OiJzZWN1cml0eSIsbG9nOiJsb2dfaXRlbSJ9O2Z1bmN0aW9uIEp0KHQpe2lmKCF0Py5zZGspcmV0dXJuO2NvbnN0e25hbWU6bix2ZXJzaW9uOmV9PXQuc2RrO3JldHVybntuYW1lOm4sdmVyc2lvbjplfX1mdW5jdGlvbiB6dCh0LG4sZSxyKXtjb25zdCBvPUp0KGUpLHM9dC50eXBlJiYicmVwbGF5X2V2ZW50IiE9PXQudHlwZT90LnR5cGU6ImV2ZW50IjshZnVuY3Rpb24odCxuKXtuJiYodC5zZGs9dC5zZGt8fHt9LHQuc2RrLm5hbWU9dC5zZGsubmFtZXx8bi5uYW1lLHQuc2RrLnZlcnNpb249dC5zZGsudmVyc2lvbnx8bi52ZXJzaW9uLHQuc2RrLmludGVncmF0aW9ucz1bLi4udC5zZGsuaW50ZWdyYXRpb25zfHxbXSwuLi5uLmludGVncmF0aW9uc3x8W11dLHQuc2RrLnBhY2thZ2VzPVsuLi50LnNkay5wYWNrYWdlc3x8W10sLi4ubi5wYWNrYWdlc3x8W11dKX0odCxlPy5zZGspO2NvbnN0IGk9ZnVuY3Rpb24odCxuLGUscil7Y29uc3Qgbz10LnNka1Byb2Nlc3NpbmdNZXRhZGF0YT8uZHluYW1pY1NhbXBsaW5nQ29udGV4dDtyZXR1cm57ZXZlbnRfaWQ6dC5ldmVudF9pZCxzZW50X2F0OihuZXcgRGF0ZSkudG9JU09TdHJpbmcoKSwuLi5uJiZ7c2RrOm59LC4uLiEhZSYmciYme2RzbjpqdChyKX0sLi4ubyYme3RyYWNlOm99fX0odCxvLHIsbik7ZGVsZXRlIHQuc2RrUHJvY2Vzc2luZ01ldGFkYXRhO3JldHVybiBVdChpLFtbe3R5cGU6c30sdF1dKX1jb25zdCBIdD0iX19TRU5UUllfU1VQUFJFU1NfVFJBQ0lOR19fIjtmdW5jdGlvbiBGdCh0KXtjb25zdCBuPVEoZCgpKTtyZXR1cm4gbi5zdXBwcmVzc1RyYWNpbmc/bi5zdXBwcmVzc1RyYWNpbmcodCk6ZnVuY3Rpb24oLi4udCl7Y29uc3Qgbj1RKGQoKSk7aWYoMj09PXQubGVuZ3RoKXtjb25zdFtlLHJdPXQ7cmV0dXJuIGU/bi53aXRoU2V0U2NvcGUoZSxyKTpuLndpdGhTY29wZShyKX1yZXR1cm4gbi53aXRoU2NvcGUodFswXSl9KChuPT4obi5zZXRTREtQcm9jZXNzaW5nTWV0YWRhdGEoe1tIdF06ITB9KSx0KCkpKSl9dmFyIFd0O2Z1bmN0aW9uIFl0KHQpe3JldHVybiBuZXcgS3QoKG49PntuKHQpfSkpfSFmdW5jdGlvbih0KXt0W3QuUEVORElORz0wXT0iUEVORElORyI7dFt0LlJFU09MVkVEPTFdPSJSRVNPTFZFRCI7dFt0LlJFSkVDVEVEPTJdPSJSRUpFQ1RFRCJ9KFd0fHwoV3Q9e30pKTtjbGFzcyBLdHtjb25zdHJ1Y3Rvcih0KXt0aGlzLkw9V3QuUEVORElORyx0aGlzLkI9W10sdGhpcy5HKHQpfXRoZW4odCxuKXtyZXR1cm4gbmV3IEt0KCgoZSxyKT0+e3RoaXMuQi5wdXNoKFshMSxuPT57aWYodCl0cnl7ZSh0KG4pKX1jYXRjaCh0KXtyKHQpfWVsc2UgZShuKX0sdD0+e2lmKG4pdHJ5e2Uobih0KSl9Y2F0Y2godCl7cih0KX1lbHNlIHIodCl9XSksdGhpcy5KKCl9KSl9Y2F0Y2godCl7cmV0dXJuIHRoaXMudGhlbigodD0+dCksdCl9ZmluYWxseSh0KXtyZXR1cm4gbmV3IEt0KCgobixlKT0+e2xldCByLG87cmV0dXJuIHRoaXMudGhlbigobj0+e289ITEscj1uLHQmJnQoKX0pLChuPT57bz0hMCxyPW4sdCYmdCgpfSkpLnRoZW4oKCgpPT57bz9lKHIpOm4ocil9KSl9KSl9Sigpe2lmKHRoaXMuTD09PVd0LlBFTkRJTkcpcmV0dXJuO2NvbnN0IHQ9dGhpcy5CLnNsaWNlKCk7dGhpcy5CPVtdLHQuZm9yRWFjaCgodD0+e3RbMF18fCh0aGlzLkw9PT1XdC5SRVNPTFZFRCYmdFsxXSh0aGlzLkgpLHRoaXMuTD09PVd0LlJFSkVDVEVEJiZ0WzJdKHRoaXMuSCksdFswXT0hMCl9KSl9Ryh0KXtjb25zdCBuPSh0LG4pPT57dGhpcy5MPT09V3QuUEVORElORyYmKHcobik/bi50aGVuKGUscik6KHRoaXMuTD10LHRoaXMuSD1uLHRoaXMuSigpKSl9LGU9dD0+e24oV3QuUkVTT0xWRUQsdCl9LHI9dD0+e24oV3QuUkVKRUNURUQsdCl9O3RyeXt0KGUscil9Y2F0Y2godCl7cih0KX19fWZ1bmN0aW9uIFZ0KHQsbil7Y29uc3R7ZmluZ2VycHJpbnQ6ZSxzcGFuOnIsYnJlYWRjcnVtYnM6byxzZGtQcm9jZXNzaW5nTWV0YWRhdGE6c309bjshZnVuY3Rpb24odCxuKXtjb25zdHtleHRyYTplLHRhZ3M6cix1c2VyOm8sY29udGV4dHM6cyxsZXZlbDppLHRyYW5zYWN0aW9uTmFtZTpjfT1uO09iamVjdC5rZXlzKGUpLmxlbmd0aCYmKHQuZXh0cmE9ey4uLmUsLi4udC5leHRyYX0pO09iamVjdC5rZXlzKHIpLmxlbmd0aCYmKHQudGFncz17Li4uciwuLi50LnRhZ3N9KTtPYmplY3Qua2V5cyhvKS5sZW5ndGgmJih0LnVzZXI9ey4uLm8sLi4udC51c2VyfSk7T2JqZWN0LmtleXMocykubGVuZ3RoJiYodC5jb250ZXh0cz17Li4ucywuLi50LmNvbnRleHRzfSk7aSYmKHQubGV2ZWw9aSk7YyYmInRyYW5zYWN0aW9uIiE9PXQudHlwZSYmKHQudHJhbnNhY3Rpb249Yyl9KHQsbiksciYmZnVuY3Rpb24odCxuKXt0LmNvbnRleHRzPXt0cmFjZTptdChuKSwuLi50LmNvbnRleHRzfSx0LnNka1Byb2Nlc3NpbmdNZXRhZGF0YT17ZHluYW1pY1NhbXBsaW5nQ29udGV4dDpPdChuKSwuLi50LnNka1Byb2Nlc3NpbmdNZXRhZGF0YX07Y29uc3QgZT1TdChuKSxyPV90KGUpLmRlc2NyaXB0aW9uO3ImJiF0LnRyYW5zYWN0aW9uJiYidHJhbnNhY3Rpb24iPT09dC50eXBlJiYodC50cmFuc2FjdGlvbj1yKX0odCxyKSxmdW5jdGlvbih0LG4pe3QuZmluZ2VycHJpbnQ9dC5maW5nZXJwcmludD9BcnJheS5pc0FycmF5KHQuZmluZ2VycHJpbnQpP3QuZmluZ2VycHJpbnQ6W3QuZmluZ2VycHJpbnRdOltdLG4mJih0LmZpbmdlcnByaW50PXQuZmluZ2VycHJpbnQuY29uY2F0KG4pKTt0LmZpbmdlcnByaW50Lmxlbmd0aHx8ZGVsZXRlIHQuZmluZ2VycHJpbnR9KHQsZSksZnVuY3Rpb24odCxuKXtjb25zdCBlPVsuLi50LmJyZWFkY3J1bWJzfHxbXSwuLi5uXTt0LmJyZWFkY3J1bWJzPWUubGVuZ3RoP2U6dm9pZCAwfSh0LG8pLGZ1bmN0aW9uKHQsbil7dC5zZGtQcm9jZXNzaW5nTWV0YWRhdGE9ey4uLnQuc2RrUHJvY2Vzc2luZ01ldGFkYXRhLC4uLm59fSh0LHMpfWNvbnN0IFp0PSI3Ijtjb25zdCBxdD1TeW1ib2wuZm9yKCJTZW50cnlCdWZmZXJGdWxsRXJyb3IiKTtmdW5jdGlvbiBRdCh0KXtjb25zdCBuPVtdO2Z1bmN0aW9uIGUodCl7cmV0dXJuIG4uc3BsaWNlKG4uaW5kZXhPZih0KSwxKVswXXx8UHJvbWlzZS5yZXNvbHZlKHZvaWQgMCl9cmV0dXJueyQ6bixhZGQ6ZnVuY3Rpb24ocil7aWYoISh2b2lkIDA9PT10fHxuLmxlbmd0aDx0KSlyZXR1cm4gbz1xdCxuZXcgS3QoKCh0LG4pPT57bihvKX0pKTt2YXIgbztjb25zdCBzPXIoKTtyZXR1cm4tMT09PW4uaW5kZXhPZihzKSYmbi5wdXNoKHMpLHMudGhlbigoKCk9PmUocykpKS50aGVuKG51bGwsKCgpPT5lKHMpLnRoZW4obnVsbCwoKCk9Pnt9KSkpKSxzfSxkcmFpbjpmdW5jdGlvbih0KXtyZXR1cm4gbmV3IEt0KCgoZSxyKT0+e2xldCBvPW4ubGVuZ3RoO2lmKCFvKXJldHVybiBlKCEwKTtjb25zdCBzPXNldFRpbWVvdXQoKCgpPT57dCYmdD4wJiZlKCExKX0pLHQpO24uZm9yRWFjaCgodD0+e1l0KHQpLnRoZW4oKCgpPT57LS1vfHwoY2xlYXJUaW1lb3V0KHMpLGUoITApKX0pLHIpfSkpfSkpfX19Y29uc3QgWHQ9NmU0O2Z1bmN0aW9uIHRuKHQse3N0YXR1c0NvZGU6bixoZWFkZXJzOmV9LHI9RGF0ZS5ub3coKSl7Y29uc3Qgbz17Li4udH0scz1lPy5bIngtc2VudHJ5LXJhdGUtbGltaXRzIl0saT1lPy5bInJldHJ5LWFmdGVyIl07aWYocylmb3IoY29uc3QgdCBvZiBzLnRyaW0oKS5zcGxpdCgiLCIpKXtjb25zdFtuLGUsLCxzXT10LnNwbGl0KCI6Iiw1KSxpPXBhcnNlSW50KG4sMTApLGM9MWUzKihpc05hTihpKT82MDppKTtpZihlKWZvcihjb25zdCB0IG9mIGUuc3BsaXQoIjsiKSkibWV0cmljX2J1Y2tldCI9PT10JiZzJiYhcy5zcGxpdCgiOyIpLmluY2x1ZGVzKCJjdXN0b20iKXx8KG9bdF09citjKTtlbHNlIG8uYWxsPXIrY31lbHNlIGk/by5hbGw9citmdW5jdGlvbih0LG49RGF0ZS5ub3coKSl7Y29uc3QgZT1wYXJzZUludChgJHt0fWAsMTApO2lmKCFpc05hTihlKSlyZXR1cm4gMWUzKmU7Y29uc3Qgcj1EYXRlLnBhcnNlKGAke3R9YCk7cmV0dXJuIGlzTmFOKHIpP1h0OnItbn0oaSxyKTo0Mjk9PT1uJiYoby5hbGw9cis2ZTQpO3JldHVybiBvfWNvbnN0IG5uPTY0O2Z1bmN0aW9uIGVuKHQsbixlPVF0KHQuYnVmZmVyU2l6ZXx8bm4pKXtsZXQgcj17fTtyZXR1cm57c2VuZDpmdW5jdGlvbih0KXtjb25zdCBvPVtdO2lmKE10KHQsKCh0LG4pPT57Y29uc3QgZT1mdW5jdGlvbih0KXtyZXR1cm4gR3RbdF19KG4pOyhmdW5jdGlvbih0LG4sZT1EYXRlLm5vdygpKXtyZXR1cm4gZnVuY3Rpb24odCxuKXtyZXR1cm4gdFtuXXx8dC5hbGx8fDB9KHQsbik+ZX0pKHIsZSl8fG8ucHVzaCh0KX0pKSwwPT09by5sZW5ndGgpcmV0dXJuIFl0KHt9KTtjb25zdCBzPVV0KHRbMF0sbyksaT10PT57TXQocywoKHQsbik9Pnt9KSl9O3JldHVybiBlLmFkZCgoKCk9Pm4oe2JvZHk6QnQocyl9KS50aGVuKCh0PT4odm9pZCAwIT09dC5zdGF0dXNDb2RlJiYodC5zdGF0dXNDb2RlPDIwMHx8dC5zdGF0dXNDb2RlPj0zMDApJiZoJiZrLndhcm4oYFNlbnRyeSByZXNwb25kZWQgd2l0aCBzdGF0dXMgY29kZSAke3Quc3RhdHVzQ29kZX0gdG8gc2VudCBldmVudC5gKSxyPXRuKHIsdCksdCkpLCh0PT57dGhyb3cgaSgpLGgmJmsuZXJyb3IoIkVuY291bnRlcmVkIGVycm9yIHJ1bm5pbmcgdHJhbnNwb3J0IHJlcXVlc3Q6Iix0KSx0fSkpKSkudGhlbigodD0+dCksKHQ9PntpZih0PT09cXQpcmV0dXJuIGgmJmsuZXJyb3IoIlNraXBwZWQgc2VuZGluZyBldmVudCBiZWNhdXNlIGJ1ZmZlciBpcyBmdWxsLiIpLGkoKSxZdCh7fSk7dGhyb3cgdH0pKX0sZmx1c2g6dD0+ZS5kcmFpbih0KX19Y29uc3Qgcm49L14oXFMrOlxcfFwvPykoW1xzXFNdKj8pKCg/OlwuezEsMn18W14vXFxdKz98KShcLlteLi9cXF0qfCkpKD86Wy9cXF0qKSQvO2Z1bmN0aW9uIG9uKHQpe2NvbnN0IG49ZnVuY3Rpb24odCl7Y29uc3Qgbj10Lmxlbmd0aD4xMDI0P2A8dHJ1bmNhdGVkPiR7dC5zbGljZSgtMTAyNCl9YDp0LGU9cm4uZXhlYyhuKTtyZXR1cm4gZT9lLnNsaWNlKDEpOltdfSh0KSxlPW5bMF18fCIiO2xldCByPW5bMV07cmV0dXJuIGV8fHI/KHImJihyPXIuc2xpY2UoMCxyLmxlbmd0aC0xKSksZStyKToiLiJ9ZnVuY3Rpb24gc24odCxuPSExKXtyZXR1cm4hKG58fHQmJiF0LnN0YXJ0c1dpdGgoIi8iKSYmIXQubWF0Y2goL15bQS1aXTovKSYmIXQuc3RhcnRzV2l0aCgiLiIpJiYhdC5tYXRjaCgvXlthLXpBLVpdKFthLXpBLVowLTkuXC0rXSkqOlwvXC8vKSkmJnZvaWQgMCE9PXQmJiF0LmluY2x1ZGVzKCJub2RlX21vZHVsZXMvIil9Y29uc3QgY249U3ltYm9sKCJBZ2VudEJhc2VJbnRlcm5hbFN0YXRlIik7Y2xhc3MgdW4gZXh0ZW5kcyBzLkFnZW50e2NvbnN0cnVjdG9yKHQpe3N1cGVyKHQpLHRoaXNbY25dPXt9fWlzU2VjdXJlRW5kcG9pbnQodCl7aWYodCl7aWYoImJvb2xlYW4iPT10eXBlb2YgdC5zZWN1cmVFbmRwb2ludClyZXR1cm4gdC5zZWN1cmVFbmRwb2ludDtpZigic3RyaW5nIj09dHlwZW9mIHQucHJvdG9jb2wpcmV0dXJuImh0dHBzOiI9PT10LnByb3RvY29sfWNvbnN0e3N0YWNrOm59PW5ldyBFcnJvcjtyZXR1cm4ic3RyaW5nIj09dHlwZW9mIG4mJm4uc3BsaXQoIlxuIikuc29tZSgodD0+LTEhPT10LmluZGV4T2YoIihodHRwcy5qczoiKXx8LTEhPT10LmluZGV4T2YoIm5vZGU6aHR0cHM6IikpKX1jcmVhdGVTb2NrZXQodCxuLGUpe2NvbnN0IHI9ey4uLm4sc2VjdXJlRW5kcG9pbnQ6dGhpcy5pc1NlY3VyZUVuZHBvaW50KG4pfTtQcm9taXNlLnJlc29sdmUoKS50aGVuKCgoKT0+dGhpcy5jb25uZWN0KHQscikpKS50aGVuKChvPT57aWYobyBpbnN0YW5jZW9mIHMuQWdlbnQpcmV0dXJuIG8uYWRkUmVxdWVzdCh0LHIpO3RoaXNbY25dLmN1cnJlbnRTb2NrZXQ9byxzdXBlci5jcmVhdGVTb2NrZXQodCxuLGUpfSksZSl9Y3JlYXRlQ29ubmVjdGlvbigpe2NvbnN0IHQ9dGhpc1tjbl0uY3VycmVudFNvY2tldDtpZih0aGlzW2NuXS5jdXJyZW50U29ja2V0PXZvaWQgMCwhdCl0aHJvdyBuZXcgRXJyb3IoIk5vIHNvY2tldCB3YXMgcmV0dXJuZWQgaW4gdGhlIGBjb25uZWN0KClgIGZ1bmN0aW9uIik7cmV0dXJuIHR9Z2V0IGRlZmF1bHRQb3J0KCl7cmV0dXJuIHRoaXNbY25dLmRlZmF1bHRQb3J0Pz8oImh0dHBzOiI9PT10aGlzLnByb3RvY29sPzQ0Mzo4MCl9c2V0IGRlZmF1bHRQb3J0KHQpe3RoaXNbY25dJiYodGhpc1tjbl0uZGVmYXVsdFBvcnQ9dCl9Z2V0IHByb3RvY29sKCl7cmV0dXJuIHRoaXNbY25dLnByb3RvY29sPz8odGhpcy5pc1NlY3VyZUVuZHBvaW50KCk/Imh0dHBzOiI6Imh0dHA6Iil9c2V0IHByb3RvY29sKHQpe3RoaXNbY25dJiYodGhpc1tjbl0ucHJvdG9jb2w9dCl9fWZ1bmN0aW9uIGFuKC4uLnQpe2subG9nKCJbaHR0cHMtcHJveHktYWdlbnQ6cGFyc2UtcHJveHktcmVzcG9uc2VdIiwuLi50KX1mdW5jdGlvbiBmbih0KXtyZXR1cm4gbmV3IFByb21pc2UoKChuLGUpPT57bGV0IHI9MDtjb25zdCBvPVtdO2Z1bmN0aW9uIHMoKXtjb25zdCBjPXQucmVhZCgpO2M/ZnVuY3Rpb24oYyl7by5wdXNoKGMpLHIrPWMubGVuZ3RoO2NvbnN0IHU9QnVmZmVyLmNvbmNhdChvLHIpLGE9dS5pbmRleE9mKCJcclxuXHJcbiIpO2lmKC0xPT09YSlyZXR1cm4gYW4oImhhdmUgbm90IHJlY2VpdmVkIGVuZCBvZiBIVFRQIGhlYWRlcnMgeWV0Li4uIiksdm9pZCBzKCk7Y29uc3QgZj11LnN1YmFycmF5KDAsYSkudG9TdHJpbmcoImFzY2lpIikuc3BsaXQoIlxyXG4iKSxoPWYuc2hpZnQoKTtpZighaClyZXR1cm4gdC5kZXN0cm95KCksZShuZXcgRXJyb3IoIk5vIGhlYWRlciByZWNlaXZlZCBmcm9tIHByb3h5IENPTk5FQ1QgcmVzcG9uc2UiKSk7Y29uc3QgcD1oLnNwbGl0KCIgIiksbD0rKHBbMV18fDApLGQ9cC5zbGljZSgyKS5qb2luKCIgIiksbT17fTtmb3IoY29uc3QgbiBvZiBmKXtpZighbiljb250aW51ZTtjb25zdCByPW4uaW5kZXhPZigiOiIpO2lmKC0xPT09cilyZXR1cm4gdC5kZXN0cm95KCksZShuZXcgRXJyb3IoYEludmFsaWQgaGVhZGVyIGZyb20gcHJveHkgQ09OTkVDVCByZXNwb25zZTogIiR7bn0iYCkpO2NvbnN0IG89bi5zbGljZSgwLHIpLnRvTG93ZXJDYXNlKCkscz1uLnNsaWNlKHIrMSkudHJpbVN0YXJ0KCksaT1tW29dOyJzdHJpbmciPT10eXBlb2YgaT9tW29dPVtpLHNdOkFycmF5LmlzQXJyYXkoaSk/aS5wdXNoKHMpOm1bb109c31hbigiZ290IHByb3h5IHNlcnZlciByZXNwb25zZTogJW8gJW8iLGgsbSksaSgpLG4oe2Nvbm5lY3Q6e3N0YXR1c0NvZGU6bCxzdGF0dXNUZXh0OmQsaGVhZGVyczptfSxidWZmZXJlZDp1fSl9KGMpOnQub25jZSgicmVhZGFibGUiLHMpfWZ1bmN0aW9uIGkoKXt0LnJlbW92ZUxpc3RlbmVyKCJlbmQiLGMpLHQucmVtb3ZlTGlzdGVuZXIoImVycm9yIix1KSx0LnJlbW92ZUxpc3RlbmVyKCJyZWFkYWJsZSIscyl9ZnVuY3Rpb24gYygpe2koKSxhbigib25lbmQiKSxlKG5ldyBFcnJvcigiUHJveHkgY29ubmVjdGlvbiBlbmRlZCBiZWZvcmUgcmVjZWl2aW5nIENPTk5FQ1QgcmVzcG9uc2UiKSl9ZnVuY3Rpb24gdSh0KXtpKCksYW4oIm9uZXJyb3IgJW8iLHQpLGUodCl9dC5vbigiZXJyb3IiLHUpLHQub24oImVuZCIsYykscygpfSkpfWZ1bmN0aW9uIGhuKC4uLnQpe2subG9nKCJbaHR0cHMtcHJveHktYWdlbnRdIiwuLi50KX1jbGFzcyBwbiBleHRlbmRzIHVue3N0YXRpYyBfX2luaXRTdGF0aWMoKXt0aGlzLnByb3RvY29scz1bImh0dHAiLCJodHRwcyJdfWNvbnN0cnVjdG9yKHQsbil7c3VwZXIobiksdGhpcy5vcHRpb25zPXt9LHRoaXMucHJveHk9InN0cmluZyI9PXR5cGVvZiB0P25ldyBVUkwodCk6dCx0aGlzLnByb3h5SGVhZGVycz1uPy5oZWFkZXJzPz97fSxobigiQ3JlYXRpbmcgbmV3IEh0dHBzUHJveHlBZ2VudCBpbnN0YW5jZTogJW8iLHRoaXMucHJveHkuaHJlZik7Y29uc3QgZT0odGhpcy5wcm94eS5ob3N0bmFtZXx8dGhpcy5wcm94eS5ob3N0KS5yZXBsYWNlKC9eXFt8XF0kL2csIiIpLHI9dGhpcy5wcm94eS5wb3J0P3BhcnNlSW50KHRoaXMucHJveHkucG9ydCwxMCk6Imh0dHBzOiI9PT10aGlzLnByb3h5LnByb3RvY29sPzQ0Mzo4MDt0aGlzLmNvbm5lY3RPcHRzPXtBTFBOUHJvdG9jb2xzOlsiaHR0cC8xLjEiXSwuLi5uP2RuKG4sImhlYWRlcnMiKTpudWxsLGhvc3Q6ZSxwb3J0OnJ9fWFzeW5jIGNvbm5lY3QodCxuKXtjb25zdHtwcm94eTplfT10aGlzO2lmKCFuLmhvc3QpdGhyb3cgbmV3IFR5cGVFcnJvcignTm8gImhvc3QiIHByb3ZpZGVkJyk7bGV0IHI7aWYoImh0dHBzOiI9PT1lLnByb3RvY29sKXtobigiQ3JlYXRpbmcgYHRscy5Tb2NrZXRgOiAlbyIsdGhpcy5jb25uZWN0T3B0cyk7Y29uc3QgdD10aGlzLmNvbm5lY3RPcHRzLnNlcnZlcm5hbWV8fHRoaXMuY29ubmVjdE9wdHMuaG9zdDtyPWYuY29ubmVjdCh7Li4udGhpcy5jb25uZWN0T3B0cyxzZXJ2ZXJuYW1lOnQmJmEuaXNJUCh0KT92b2lkIDA6dH0pfWVsc2UgaG4oIkNyZWF0aW5nIGBuZXQuU29ja2V0YDogJW8iLHRoaXMuY29ubmVjdE9wdHMpLHI9YS5jb25uZWN0KHRoaXMuY29ubmVjdE9wdHMpO2NvbnN0IG89ImZ1bmN0aW9uIj09dHlwZW9mIHRoaXMucHJveHlIZWFkZXJzP3RoaXMucHJveHlIZWFkZXJzKCk6ey4uLnRoaXMucHJveHlIZWFkZXJzfSxzPWEuaXNJUHY2KG4uaG9zdCk/YFske24uaG9zdH1dYDpuLmhvc3Q7bGV0IGk9YENPTk5FQ1QgJHtzfToke24ucG9ydH0gSFRUUC8xLjFcclxuYDtpZihlLnVzZXJuYW1lfHxlLnBhc3N3b3JkKXtjb25zdCB0PWAke2RlY29kZVVSSUNvbXBvbmVudChlLnVzZXJuYW1lKX06JHtkZWNvZGVVUklDb21wb25lbnQoZS5wYXNzd29yZCl9YDtvWyJQcm94eS1BdXRob3JpemF0aW9uIl09YEJhc2ljICR7QnVmZmVyLmZyb20odCkudG9TdHJpbmcoImJhc2U2NCIpfWB9by5Ib3N0PWAke3N9OiR7bi5wb3J0fWAsb1siUHJveHktQ29ubmVjdGlvbiJdfHwob1siUHJveHktQ29ubmVjdGlvbiJdPXRoaXMua2VlcEFsaXZlPyJLZWVwLUFsaXZlIjoiY2xvc2UiKTtmb3IoY29uc3QgdCBvZiBPYmplY3Qua2V5cyhvKSlpKz1gJHt0fTogJHtvW3RdfVxyXG5gO2NvbnN0IGM9Zm4ocik7ci53cml0ZShgJHtpfVxyXG5gKTtjb25zdHtjb25uZWN0OnUsYnVmZmVyZWQ6aH09YXdhaXQgYztpZih0LmVtaXQoInByb3h5Q29ubmVjdCIsdSksdGhpcy5lbWl0KCJwcm94eUNvbm5lY3QiLHUsdCksMjAwPT09dS5zdGF0dXNDb2RlKXtpZih0Lm9uY2UoInNvY2tldCIsbG4pLG4uc2VjdXJlRW5kcG9pbnQpe2huKCJVcGdyYWRpbmcgc29ja2V0IGNvbm5lY3Rpb24gdG8gVExTIik7Y29uc3QgdD1uLnNlcnZlcm5hbWV8fG4uaG9zdDtyZXR1cm4gZi5jb25uZWN0KHsuLi5kbihuLCJob3N0IiwicGF0aCIsInBvcnQiKSxzb2NrZXQ6cixzZXJ2ZXJuYW1lOmEuaXNJUCh0KT92b2lkIDA6dH0pfXJldHVybiByfXIuZGVzdHJveSgpO2NvbnN0IHA9bmV3IGEuU29ja2V0KHt3cml0YWJsZTohMX0pO3JldHVybiBwLnJlYWRhYmxlPSEwLHQub25jZSgic29ja2V0IiwodD0+e2huKCJSZXBsYXlpbmcgcHJveHkgYnVmZmVyIGZvciBmYWlsZWQgcmVxdWVzdCIpLHQucHVzaChoKSx0LnB1c2gobnVsbCl9KSkscH19ZnVuY3Rpb24gbG4odCl7dC5yZXN1bWUoKX1mdW5jdGlvbiBkbih0LC4uLm4pe2NvbnN0IGU9e307bGV0IHI7Zm9yKHIgaW4gdCluLmluY2x1ZGVzKHIpfHwoZVtyXT10W3JdKTtyZXR1cm4gZX1wbi5fX2luaXRTdGF0aWMoKTtjb25zdCBtbj0zMjc2ODtmdW5jdGlvbiBnbih0KXtyZXR1cm4gdC5yZXBsYWNlKC9eW0EtWl06LywiIikucmVwbGFjZSgvXFwvZywiLyIpfWNvbnN0IHluPW47bGV0IGJuLF9uPTAsdm49e307ZnVuY3Rpb24gd24odCl7eW4uZGVidWcmJmNvbnNvbGUubG9nKGBbQU5SIFdvcmtlcl0gJHt0fWApfXZhciBTbiwkbixFbjtjb25zdCB4bj1mdW5jdGlvbih0KXtsZXQgbjt0cnl7bj1uZXcgVVJMKHQudXJsKX1jYXRjaChuKXtyZXR1cm4gVCgoKCk9Pntjb25zb2xlLndhcm4oIltAc2VudHJ5L25vZGVdOiBJbnZhbGlkIGRzbiBvciB0dW5uZWwgb3B0aW9uLCB3aWxsIG5vdCBzZW5kIGFueSBldmVudHMuIFRoZSB0dW5uZWwgb3B0aW9uIG11c3QgYmUgYSBmdWxsIFVSTCB3aGVuIHVzZWQuIil9KSksZW4odCwoKCk9PlByb21pc2UucmVzb2x2ZSh7fSkpKX1jb25zdCBlPSJodHRwczoiPT09bi5wcm90b2NvbCxyPWZ1bmN0aW9uKHQsbil7Y29uc3R7bm9fcHJveHk6ZX09cHJvY2Vzcy5lbnYscj1lPy5zcGxpdCgiLCIpLnNvbWUoKG49PnQuaG9zdC5lbmRzV2l0aChuKXx8dC5ob3N0bmFtZS5lbmRzV2l0aChuKSkpO3JldHVybiByP3ZvaWQgMDpufShuLHQucHJveHl8fChlP3Byb2Nlc3MuZW52Lmh0dHBzX3Byb3h5OnZvaWQgMCl8fHByb2Nlc3MuZW52Lmh0dHBfcHJveHkpLG89ZT9pOnMsYT12b2lkIDAhPT10LmtlZXBBbGl2ZSYmdC5rZWVwQWxpdmUsZj1yP25ldyBwbihyKTpuZXcgby5BZ2VudCh7a2VlcEFsaXZlOmEsbWF4U29ja2V0czozMCx0aW1lb3V0OjJlM30pLGg9ZnVuY3Rpb24odCxuLGUpe2NvbnN0e2hvc3RuYW1lOnIscGF0aG5hbWU6byxwb3J0OnMscHJvdG9jb2w6aSxzZWFyY2g6YX09bmV3IFVSTCh0LnVybCk7cmV0dXJuIGZ1bmN0aW9uKGYpe3JldHVybiBuZXcgUHJvbWlzZSgoKGgscCk9PntGdCgoKCk9PntsZXQgbD1mdW5jdGlvbih0KXtyZXR1cm4gbmV3IGMoe3JlYWQoKXt0aGlzLnB1c2godCksdGhpcy5wdXNoKG51bGwpfX0pfShmLmJvZHkpO2NvbnN0IGQ9ey4uLnQuaGVhZGVyc307Zi5ib2R5Lmxlbmd0aD5tbiYmKGRbImNvbnRlbnQtZW5jb2RpbmciXT0iZ3ppcCIsbD1sLnBpcGUodSgpKSk7Y29uc3QgbT1uLnJlcXVlc3Qoe21ldGhvZDoiUE9TVCIsYWdlbnQ6ZSxoZWFkZXJzOmQsaG9zdG5hbWU6cixwYXRoOmAke299JHthfWAscG9ydDpzLHByb3RvY29sOmksY2E6dC5jYUNlcnRzfSwodD0+e3Qub24oImRhdGEiLCgoKT0+e30pKSx0Lm9uKCJlbmQiLCgoKT0+e30pKSx0LnNldEVuY29kaW5nKCJ1dGY4Iik7Y29uc3Qgbj10LmhlYWRlcnNbInJldHJ5LWFmdGVyIl0/P251bGwsZT10LmhlYWRlcnNbIngtc2VudHJ5LXJhdGUtbGltaXRzIl0/P251bGw7aCh7c3RhdHVzQ29kZTp0LnN0YXR1c0NvZGUsaGVhZGVyczp7InJldHJ5LWFmdGVyIjpuLCJ4LXNlbnRyeS1yYXRlLWxpbWl0cyI6QXJyYXkuaXNBcnJheShlKT9lWzBdfHxudWxsOmV9fSl9KSk7bS5vbigiZXJyb3IiLHApLGwucGlwZShtKX0pKX0pKX19KHQsdC5odHRwTW9kdWxlPz9vLGYpO3JldHVybiBlbih0LGgpfSh7dXJsOihTbj15bi5kc24sJG49eW4udHVubmVsLEVuPXluLnNka01ldGFkYXRhLnNkaywkbnx8YCR7ZnVuY3Rpb24odCl7cmV0dXJuYCR7ZnVuY3Rpb24odCl7Y29uc3Qgbj10LnByb3RvY29sP2Ake3QucHJvdG9jb2x9OmA6IiIsZT10LnBvcnQ/YDoke3QucG9ydH1gOiIiO3JldHVybmAke259Ly8ke3QuaG9zdH0ke2V9JHt0LnBhdGg/YC8ke3QucGF0aH1gOiIifS9hcGkvYH0odCl9JHt0LnByb2plY3RJZH0vZW52ZWxvcGUvYH0oU24pfT8ke2Z1bmN0aW9uKHQsbil7Y29uc3QgZT17c2VudHJ5X3ZlcnNpb246WnR9O3JldHVybiB0LnB1YmxpY0tleSYmKGUuc2VudHJ5X2tleT10LnB1YmxpY0tleSksbiYmKGUuc2VudHJ5X2NsaWVudD1gJHtuLm5hbWV9LyR7bi52ZXJzaW9ufWApLG5ldyBVUkxTZWFyY2hQYXJhbXMoZSkudG9TdHJpbmcoKX0oU24sRW4pfWApfSk7YXN5bmMgZnVuY3Rpb24gTm4oKXtpZihibil7d24oIlNlbmRpbmcgYWJub3JtYWwgc2Vzc2lvbiIpLEwoYm4se3N0YXR1czoiYWJub3JtYWwiLGFibm9ybWFsX21lY2hhbmlzbToiYW5yX2ZvcmVncm91bmQiLHJlbGVhc2U6eW4ucmVsZWFzZSxlbnZpcm9ubWVudDp5bi5lbnZpcm9ubWVudH0pO2NvbnN0IHQ9ZnVuY3Rpb24odCxuLGUscil7Y29uc3Qgbz1KdChlKTtyZXR1cm4gVXQoe3NlbnRfYXQ6KG5ldyBEYXRlKS50b0lTT1N0cmluZygpLC4uLm8mJntzZGs6b30sLi4uISFyJiZuJiZ7ZHNuOmp0KG4pfX0sWyJhZ2dyZWdhdGVzImluIHQ/W3t0eXBlOiJzZXNzaW9ucyJ9LHRdOlt7dHlwZToic2Vzc2lvbiJ9LHQudG9KU09OKCldXSl9KGJuLHluLmRzbix5bi5zZGtNZXRhZGF0YSx5bi50dW5uZWwpO3duKEpTT04uc3RyaW5naWZ5KHQpKSxhd2FpdCB4bi5zZW5kKHQpO3RyeXtlPy5wb3N0TWVzc2FnZSgic2Vzc2lvbi1lbmRlZCIpfWNhdGNoKHQpe319fWZ1bmN0aW9uIENuKHQpe2lmKCF0KXJldHVybjtjb25zdCBuPWZ1bmN0aW9uKHQpe2lmKCF0Lmxlbmd0aClyZXR1cm5bXTtjb25zdCBuPUFycmF5LmZyb20odCk7cmV0dXJuL3NlbnRyeVdyYXBwZWQvLnRlc3QoTnQobikuZnVuY3Rpb258fCIiKSYmbi5wb3AoKSxuLnJldmVyc2UoKSx4dC50ZXN0KE50KG4pLmZ1bmN0aW9ufHwiIikmJihuLnBvcCgpLHh0LnRlc3QoTnQobikuZnVuY3Rpb258fCIiKSYmbi5wb3AoKSksbi5zbGljZSgwLCR0KS5tYXAoKHQ9Pih7Li4udCxmaWxlbmFtZTp0LmZpbGVuYW1lfHxOdChuKS5maWxlbmFtZSxmdW5jdGlvbjp0LmZ1bmN0aW9ufHxFdH0pKSl9KHQpO2lmKHluLmFwcFJvb3RQYXRoKWZvcihjb25zdCB0IG9mIG4pdC5maWxlbmFtZSYmKHQuZmlsZW5hbWU9UHQodC5maWxlbmFtZSx5bi5hcHBSb290UGF0aCkpO3JldHVybiBufWFzeW5jIGZ1bmN0aW9uIFRuKHQsbil7aWYoX24+PXluLm1heEFuckV2ZW50cylyZXR1cm47X24rPTEsYXdhaXQgTm4oKSx3bigiU2VuZGluZyBldmVudCIpO2NvbnN0IGU9e2V2ZW50X2lkOkQoKSxjb250ZXh0czp5bi5jb250ZXh0cyxyZWxlYXNlOnluLnJlbGVhc2UsZW52aXJvbm1lbnQ6eW4uZW52aXJvbm1lbnQsZGlzdDp5bi5kaXN0LHBsYXRmb3JtOiJub2RlIixsZXZlbDoiZXJyb3IiLGV4Y2VwdGlvbjp7dmFsdWVzOlt7dHlwZToiQXBwbGljYXRpb25Ob3RSZXNwb25kaW5nIix2YWx1ZTpgQXBwbGljYXRpb24gTm90IFJlc3BvbmRpbmcgZm9yIGF0IGxlYXN0ICR7eW4uYW5yVGhyZXNob2xkfSBtc2Asc3RhY2t0cmFjZTp7ZnJhbWVzOkNuKHQpfSxtZWNoYW5pc206e3R5cGU6IkFOUiJ9fV19LHRhZ3M6eW4uc3RhdGljVGFnc307biYmZnVuY3Rpb24odCxuKXtpZihWdCh0LG4pLCF0LmNvbnRleHRzPy50cmFjZSl7Y29uc3R7dHJhY2VJZDplLHBhcmVudFNwYW5JZDpyLHByb3BhZ2F0aW9uU3BhbklkOm99PW4ucHJvcGFnYXRpb25Db250ZXh0O3QuY29udGV4dHM9e3RyYWNlOnt0cmFjZV9pZDplLHNwYW5faWQ6b3x8RigpLHBhcmVudF9zcGFuX2lkOnJ9LC4uLnQuY29udGV4dHN9fX0oZSxuKSxmdW5jdGlvbih0KXtpZigwPT09T2JqZWN0LmtleXModm4pLmxlbmd0aClyZXR1cm47Y29uc3Qgbj15bi5hcHBSb290UGF0aD97fTp2bjtpZih5bi5hcHBSb290UGF0aClmb3IoY29uc3RbdCxlXW9mIE9iamVjdC5lbnRyaWVzKHZuKSluW1B0KHQseW4uYXBwUm9vdFBhdGgpXT1lO2NvbnN0IGU9bmV3IE1hcDtmb3IoY29uc3QgciBvZiB0LmV4Y2VwdGlvbj8udmFsdWVzfHxbXSlmb3IoY29uc3QgdCBvZiByLnN0YWNrdHJhY2U/LmZyYW1lc3x8W10pe2NvbnN0IHI9dC5hYnNfcGF0aHx8dC5maWxlbmFtZTtyJiZuW3JdJiZlLnNldChyLG5bcl0pfWlmKGUuc2l6ZT4wKXtjb25zdCBuPVtdO2Zvcihjb25zdFt0LHJdb2YgZS5lbnRyaWVzKCkpbi5wdXNoKHt0eXBlOiJzb3VyY2VtYXAiLGNvZGVfZmlsZTp0LGRlYnVnX2lkOnJ9KTt0LmRlYnVnX21ldGE9e2ltYWdlczpufX19KGUpO2NvbnN0IHI9enQoZSx5bi5kc24seW4uc2RrTWV0YWRhdGEseW4udHVubmVsKTt3bihKU09OLnN0cmluZ2lmeShyKSksYXdhaXQgeG4uc2VuZChyKSxhd2FpdCB4bi5mbHVzaCgyZTMpLF9uPj15bi5tYXhBbnJFdmVudHMmJnNldFRpbWVvdXQoKCgpPT57cHJvY2Vzcy5leGl0KDApfSksNWUzKX1sZXQga247aWYod24oIlN0YXJ0ZWQiKSx5bi5jYXB0dXJlU3RhY2tUcmFjZSl7d24oIkNvbm5lY3RpbmcgdG8gZGVidWdnZXIiKTtjb25zdCBuPW5ldyB0O24uY29ubmVjdFRvTWFpblRocmVhZCgpLHduKCJDb25uZWN0ZWQgdG8gZGVidWdnZXIiKTtjb25zdCBlPW5ldyBNYXA7bi5vbigiRGVidWdnZXIuc2NyaXB0UGFyc2VkIiwodD0+e2Uuc2V0KHQucGFyYW1zLnNjcmlwdElkLHQucGFyYW1zLnVybCl9KSksbi5vbigiRGVidWdnZXIucGF1c2VkIiwodD0+e2lmKCJvdGhlciI9PT10LnBhcmFtcy5yZWFzb24pdHJ5e3duKCJEZWJ1Z2dlciBwYXVzZWQiKTtjb25zdCBzPVsuLi50LnBhcmFtcy5jYWxsRnJhbWVzXSxpPXluLmFwcFJvb3RQYXRoP2Z1bmN0aW9uKHQ9KHByb2Nlc3MuYXJndlsxXT9vbihwcm9jZXNzLmFyZ3ZbMV0pOnByb2Nlc3MuY3dkKCkpLG49IlxcIj09PW8pe2NvbnN0IGU9bj9nbih0KTp0O3JldHVybiB0PT57aWYoIXQpcmV0dXJuO2NvbnN0IG89bj9nbih0KTp0O2xldHtkaXI6cyxiYXNlOmksZXh0OmN9PXIucGFyc2Uobyk7Ii5qcyIhPT1jJiYiLm1qcyIhPT1jJiYiLmNqcyIhPT1jfHwoaT1pLnNsaWNlKDAsLTEqYy5sZW5ndGgpKTtjb25zdCB1PWRlY29kZVVSSUNvbXBvbmVudChpKTtzfHwocz0iLiIpO2NvbnN0IGE9cy5sYXN0SW5kZXhPZigiL25vZGVfbW9kdWxlcyIpO2lmKGE+LTEpcmV0dXJuYCR7cy5zbGljZShhKzE0KS5yZXBsYWNlKC9cLy9nLCIuIil9OiR7dX1gO2lmKHMuc3RhcnRzV2l0aChlKSl7Y29uc3QgdD1zLnNsaWNlKGUubGVuZ3RoKzEpLnJlcGxhY2UoL1wvL2csIi4iKTtyZXR1cm4gdD9gJHt0fToke3V9YDp1fXJldHVybiB1fX0oeW4uYXBwUm9vdFBhdGgpOigpPT57fSxjPXMubWFwKCh0PT5mdW5jdGlvbih0LG4sZSl7Y29uc3Qgcj1uP24ucmVwbGFjZSgvXmZpbGU6XC9cLy8sIiIpOnZvaWQgMCxvPXQubG9jYXRpb24uY29sdW1uTnVtYmVyP3QubG9jYXRpb24uY29sdW1uTnVtYmVyKzE6dm9pZCAwLHM9dC5sb2NhdGlvbi5saW5lTnVtYmVyP3QubG9jYXRpb24ubGluZU51bWJlcisxOnZvaWQgMDtyZXR1cm57ZmlsZW5hbWU6cixtb2R1bGU6ZShyKSxmdW5jdGlvbjp0LmZ1bmN0aW9uTmFtZXx8RXQsY29sbm86byxsaW5lbm86cyxpbl9hcHA6cj9zbihyKTp2b2lkIDB9fSh0LGUuZ2V0KHQubG9jYXRpb24uc2NyaXB0SWQpLGkpKSksdT1zZXRUaW1lb3V0KCgoKT0+e1RuKGMpLnRoZW4obnVsbCwoKCk9Pnt3bigiU2VuZGluZyBBTlIgZXZlbnQgZmFpbGVkLiIpfSkpfSksNWUzKTtuLnBvc3QoIlJ1bnRpbWUuZXZhbHVhdGUiLHtleHByZXNzaW9uOiJnbG9iYWwuX19TRU5UUllfR0VUX1NDT1BFU19fKCk7IixzaWxlbnQ6ITAscmV0dXJuQnlWYWx1ZTohMH0sKCh0LGUpPT57dCYmd24oYEVycm9yIGV4ZWN1dGluZyBzY3JpcHQ6ICcke3QubWVzc2FnZX0nYCksY2xlYXJUaW1lb3V0KHUpO2NvbnN0IHI9ZT8ucmVzdWx0P2UucmVzdWx0LnZhbHVlOnZvaWQgMDtuLnBvc3QoIkRlYnVnZ2VyLnJlc3VtZSIpLG4ucG9zdCgiRGVidWdnZXIuZGlzYWJsZSIpLFRuKGMscikudGhlbihudWxsLCgoKT0+e3duKCJTZW5kaW5nIEFOUiBldmVudCBmYWlsZWQuIil9KSl9KSl9Y2F0Y2godCl7dGhyb3cgbi5wb3N0KCJEZWJ1Z2dlci5yZXN1bWUiKSxuLnBvc3QoIkRlYnVnZ2VyLmRpc2FibGUiKSx0fX0pKSxrbj0oKT0+e3RyeXtuLnBvc3QoIkRlYnVnZ2VyLmVuYWJsZSIsKCgpPT57bi5wb3N0KCJEZWJ1Z2dlci5wYXVzZSIpfSkpfWNhdGNoKHQpe319fWNvbnN0e3BvbGw6am59PWZ1bmN0aW9uKHQsbixlLHIpe2NvbnN0IG89dCgpO2xldCBzPSExLGk9ITA7cmV0dXJuIHNldEludGVydmFsKCgoKT0+e2NvbnN0IHQ9by5nZXRUaW1lTXMoKTshMT09PXMmJnQ+bitlJiYocz0hMCxpJiZyKCkpLHQ8bitlJiYocz0hMSl9KSwyMCkse3BvbGw6KCk9PntvLnJlc2V0KCl9LGVuYWJsZWQ6dD0+e2k9dH19fSgoZnVuY3Rpb24oKXtsZXQgdD1wcm9jZXNzLmhydGltZSgpO3JldHVybntnZXRUaW1lTXM6KCk9Pntjb25zdFtuLGVdPXByb2Nlc3MuaHJ0aW1lKHQpO3JldHVybiBNYXRoLmZsb29yKDFlMypuK2UvMWU2KX0scmVzZXQ6KCk9Pnt0PXByb2Nlc3MuaHJ0aW1lKCl9fX0pLHluLnBvbGxJbnRlcnZhbCx5bi5hbnJUaHJlc2hvbGQsKGZ1bmN0aW9uKCl7d24oIldhdGNoZG9nIHRpbWVvdXQiKSxrbj8od24oIlBhdXNpbmcgZGVidWdnZXIgdG8gY2FwdHVyZSBzdGFjayB0cmFjZSIpLGtuKCkpOih3bigiQ2FwdHVyaW5nIGV2ZW50IHdpdGhvdXQgYSBzdGFjayB0cmFjZSIpLFRuKCkudGhlbihudWxsLCgoKT0+e3duKCJTZW5kaW5nIEFOUiBldmVudCBmYWlsZWQgb24gd2F0Y2hkb2cgdGltZW91dC4iKX0pKSl9KSk7ZT8ub24oIm1lc3NhZ2UiLCh0PT57dC5zZXNzaW9uJiYoYm49TSh0LnNlc3Npb24pKSx0LmRlYnVnSW1hZ2VzJiYodm49dC5kZWJ1Z0ltYWdlcyksam4oKX0pKTs=",mN0=50,uN0=5000;function Fn(A,...Q){e.log(`[ANR] ${A}`,...Q)}function dN0(){return AQ}function cN0(){let A=QG().getScopeData();return dZ(A,RQ().getScopeData()),dZ(A,sQ().getScopeData()),A.attachments=[],A.eventProcessors=[],A}async function lN0(A){let Q={message:"ANR"},B={};for(let Y of A.getEventProcessors()){if(Q===null)break;Q=await Y(Q,B)}return Q?.contexts||{}}var KUQ="Anr",pN0=(A={})=>{if(LW.major<16||LW.major===16&&LW.minor<17)throw Error("ANR detection requires Node 16.17.0 or later");let Q,B,Y=dN0();return Y.__SENTRY_GET_SCOPES__=cN0,{name:KUQ,startWorker:()=>{if(Q)return;if(B)Q=iN0(B,A)},stopWorker:()=>{if(Q)Q.then((J)=>{J(),Q=void 0})},async setup(J){if(B=J,A.captureStackTrace&&await TK())e.warn("ANR captureStackTrace has been disabled because the debugger was already enabled"),A.captureStackTrace=!1;setImmediate(()=>this.startWorker())}}},VUQ=wA(pN0);async function iN0(A,Q){let B=A.getDsn();if(!B)return()=>{};let Y=await lN0(A);delete Y.app?.app_memory,delete Y.device?.free_memory;let J=A.getOptions(),C=A.getSdkMetadata()||{};if(C.sdk)C.sdk.integrations=J.integrations.map((F)=>F.name);let X={debug:e.isEnabled(),dsn:B,tunnel:J.tunnel,environment:J.environment||"production",release:J.release,dist:J.dist,sdkMetadata:C,appRootPath:Q.appRootPath,pollInterval:Q.pollInterval||mN0,anrThreshold:Q.anrThreshold||uN0,captureStackTrace:!!Q.captureStackTrace,maxAnrEvents:Q.maxAnrEvents||1,staticTags:Q.staticTags||{},contexts:Y};if(X.captureStackTrace){let F=await import("node:inspector");if(!F.url())F.open(0)}let G=new xN0(new URL(`data:application/javascript;base64,${bN0}`),{workerData:X,execArgv:[],env:{...process.env,NODE_OPTIONS:void 0}});process.on("exit",()=>{G.terminate()});let W=setInterval(()=>{try{let F=RQ().getSession(),Z=F?{...F,toJSON:void 0}:void 0;G.postMessage({session:Z,debugImages:TN(J.stackParser)})}catch(F){}},X.pollInterval);return W.unref(),G.on("message",(F)=>{if(F==="session-ended")Fn("ANR event sent from ANR worker. Clearing session in this thread."),RQ().setSession(void 0)}),G.once("error",(F)=>{clearInterval(W),Fn("ANR worker error",F)}),G.once("exit",(F)=>{clearInterval(W),Fn("ANR worker exit",F)}),G.unref(),()=>{G.terminate(),clearInterval(W)}}function IUQ(A){let Q=gA()?.getIntegrationByName(KUQ);if(!Q)return A();Q.stopWorker();let B=A();if(fN0(B))return B.finally(()=>Q.startWorker());return Q.startWorker(),B}var nUQ=qA(fUQ(),1);var mUQ=qA(MB(),1);var bUQ=(A)=>({package:A,"javascript.is_cjs":a5()});function RW(A,Q){let B=gA()?.getOptions();if(!B?.disableInstrumentationWarnings&&!mUQ.isWrapped(A)&&_N()&&U9(B))f0(()=>{if(a5())console.warn(`[Sentry] ${Q} is not instrumented. This is likely because you required/imported ${Q} before calling \`Sentry.init()\`.`);else console.warn(`[Sentry] ${Q} is not instrumented. Please make sure to initialize Sentry in a separate file that you \`--import\` when running node, see: https://docs.sentry.io/platforms/javascript/guides/${Q}/install/esm/.`)}),QG().setContext("missing_instrumentation",bUQ(Q))}var U1=qA(yA(),1),cP=qA(MB(),1),LX=qA(NB(),1),iUQ=qA(dB(),1);var o5;(function(A){A.EXPRESS_TYPE="express.type";let B="express.name";A.EXPRESS_NAME=B})(o5||(o5={}));var IG;(function(A){A.ROUTER="router";let B="middleware";A.MIDDLEWARE=B;let Y="request_handler";A.REQUEST_HANDLER=Y})(IG||(IG={}));var In=Symbol("express-layer-patched"),wW="__ot_middlewares";var dUQ=(A,Q)=>{if(Array.isArray(A[wW])===!1)Object.defineProperty(A,wW,{enumerable:!1,value:[]});if(Q===void 0)return;A[wW].push(Q)},cUQ=(A,Q)=>{let B=Q.handle?.stack?.[0];if(B?.route?.path)return`${A}${B.route.path}`;if(B?.handle?.stack)return cUQ(A,B);return A},lUQ=(A,Q,B)=>{if(Q.name==="router"){let Y=cUQ("",Q),J=Y?Y:B||A||"/";return{attributes:{[o5.EXPRESS_NAME]:J,[o5.EXPRESS_TYPE]:IG.ROUTER},name:`router - ${J}`}}else if(Q.name==="bound dispatch"||Q.name==="handle")return{attributes:{[o5.EXPRESS_NAME]:(A||B)??"request handler",[o5.EXPRESS_TYPE]:IG.REQUEST_HANDLER},name:`request handler${Q.path?` - ${A||B}`:""}`};else return{attributes:{[o5.EXPRESS_NAME]:Q.name,[o5.EXPRESS_TYPE]:IG.MIDDLEWARE},name:`middleware - ${Q.name}`}},ZL0=(A,Q)=>{if(typeof Q==="string")return Q===A;else if(Q instanceof RegExp)return Q.test(A);else if(typeof Q==="function")return Q(A);else throw TypeError("Pattern is in unsupported datatype")},pUQ=(A,Q,B)=>{if(Array.isArray(B?.ignoreLayersType)&&B?.ignoreLayersType?.includes(Q))return!0;if(Array.isArray(B?.ignoreLayers)===!1)return!1;try{for(let Y of B.ignoreLayers)if(ZL0(A,Y))return!0}catch(Y){}return!1},Hn=(A)=>A instanceof Error?[A,A.message]:[String(A),String(A)],dP=(A)=>{let Q=A[0];if(Array.isArray(Q))return Q.map((B)=>uUQ(B)||"").join(",");return uUQ(Q)},uUQ=(A)=>{if(typeof A==="string")return A;if(A instanceof RegExp||typeof A==="number")return A.toString();return};var $L0="0.1.0",UL0="@sentry/instrumentation-express-v5";class Dn extends LX.InstrumentationBase{constructor(A={}){super(UL0,$L0,A)}init(){return[new LX.InstrumentationNodeModuleDefinition("express",[">=5.0.0"],(A)=>this._setup(A),(A)=>this._tearDown(A))]}_setup(A){let Q=A.Router.prototype;if(LX.isWrapped(Q.route))this._unwrap(Q,"route");if(this._wrap(Q,"route",this._getRoutePatch()),LX.isWrapped(Q.use))this._unwrap(Q,"use");if(this._wrap(Q,"use",this._getRouterUsePatch()),LX.isWrapped(A.application.use))this._unwrap(A.application,"use");return this._wrap(A.application,"use",this._getAppUsePatch()),A}_tearDown(A){if(A===void 0)return;let Q=A.Router.prototype;this._unwrap(Q,"route"),this._unwrap(Q,"use"),this._unwrap(A.application,"use")}_getRoutePatch(){let A=this;return function(Q){return function(...Y){let J=Q.apply(this,Y),C=this.stack[this.stack.length-1];return A._applyPatch(C,dP(Y)),J}}}_getRouterUsePatch(){let A=this;return function(Q){return function(...Y){let J=Q.apply(this,Y),C=this.stack[this.stack.length-1];return A._applyPatch(C,dP(Y)),J}}}_getAppUsePatch(){let A=this;return function(Q){return function(...Y){let J=this.router,C=Q.apply(this,Y);if(J){let X=J.stack[J.stack.length-1];A._applyPatch(X,dP(Y))}return C}}}_applyPatch(A,Q){let B=this;if(A[In]===!0)return;A[In]=!0,this._wrap(A,"handle",(Y)=>{if(Y.length===4)return Y;let J=function(C,X){dUQ(C,Q);let G=C[wW].filter((z)=>z!=="/"&&z!=="/*").join("").replace(/\/{2,}/g,"/"),W=G.length>0?G:void 0,F={[iUQ.SEMATTRS_HTTP_ROUTE]:W},Z=lUQ(G,A,Q),U=Z.attributes[o5.EXPRESS_TYPE],$=cP.getRPCMetadata(U1.context.active());if($?.type===cP.RPCType.HTTP)$.route=W;if(pUQ(Z.name,U,B.getConfig())){if(U===IG.MIDDLEWARE)C[wW].pop();return Y.apply(this,arguments)}if(U1.trace.getSpan(U1.context.active())===void 0)return Y.apply(this,arguments);let E=B._getSpanName({request:C,layerType:U,route:G},Z.name),K=B.tracer.startSpan(E,{attributes:Object.assign(F,Z.attributes)}),{requestHook:I}=B.getConfig();if(I)LX.safeExecuteInTheMiddle(()=>I(K,{request:C,layerType:U,route:G}),(z)=>{if(z)U1.diag.error("express instrumentation: request hook failed",z)},!0);let V=!1;if(Z.attributes[o5.EXPRESS_TYPE]!==IG.MIDDLEWARE)K.end(),V=!0;let H=()=>{if(V===!1)V=!0,K.end()},D=Array.from(arguments),L=D.findIndex((z)=>typeof z==="function");if(L>=0)arguments[L]=function(){let z=arguments[0],M=![void 0,null,"route","router"].includes(z);if(!V&&M){let[q,w]=Hn(z);K.recordException(q),K.setStatus({code:U1.SpanStatusCode.ERROR,message:w})}if(V===!1)V=!0,C.res?.removeListener("finish",H),K.end();if(!(C.route&&M))C[wW].pop();return D[L].apply(this,arguments)};try{return Y.apply(this,arguments)}catch(z){let[M,N]=Hn(z);throw K.recordException(M),K.setStatus({code:U1.SpanStatusCode.ERROR,message:N}),z}finally{if(!V)X.once("finish",H)}};for(let C in Y)Object.defineProperty(J,C,{get(){return Y[C]},set(X){Y[C]=X}});return J})}_getSpanName(A,Q){let{spanNameHook:B}=this.getConfig();if(!(B instanceof Function))return Q;try{return B(A,Q)??Q}catch(Y){return U1.diag.error("express instrumentation: error calling span name rewrite hook",Y),Q}}}var sUQ="Express",EL0="Express-V5";function rUQ(A){s0(A,"auto.http.otel.express");let Q=eA(A).data,B=Q["express.type"];if(B)A.setAttribute(YQ,`${B}.express`);let Y=Q["express.name"];if(typeof Y==="string")A.updateName(Y)}function aUQ(A,Q){if(RQ()===v5())return fQ&&e.warn("Isolation scope is still default isolation scope - skipping setting transactionName"),Q;if(A.layerType==="request_handler"){let B=A.request,Y=B.method?B.method.toUpperCase():"GET";RQ().setTransactionName(`${Y} ${A.route}`)}return Q}var Nn=EQ(sUQ,()=>new nUQ.ExpressInstrumentation({requestHook:(A)=>rUQ(A),spanNameHook:(A,Q)=>aUQ(A,Q)})),Ln=EQ(EL0,()=>new Dn({requestHook:(A)=>rUQ(A),spanNameHook:(A,Q)=>aUQ(A,Q)})),KL0=()=>{return{name:sUQ,setupOnce(){Nn(),Ln()}}},lP=wA(KL0);function qn(A){return function(B,Y,J,C){let X=sE(Y);if(RQ().setSDKProcessingMetadata({normalizedRequest:X}),(A?.shouldHandleError||HL0)(B)){let W=jB(B,{mechanism:{type:"middleware",handled:!1}});J.sentry=W}C(B)}}function VL0(){return function(Q,B,Y){let J=sE(Q);RQ().setSDKProcessingMetadata({normalizedRequest:J}),Y()}}function oUQ(A,Q){A.use(VL0()),A.use(qn(Q)),RW(A.use,"express")}function IL0(A){let Q=A.status||A.statusCode||A.status_code||A.output?.statusCode;return Q?parseInt(Q,10):500}function HL0(A){return IL0(A)>=500}import*as uEQ from"node:diagnostics_channel";var KY=qA(yA(),1),aP=qA(MB(),1),yEQ=qA(NB(),1),RY=qA(dB(),1);import TEQ from"node:diagnostics_channel";var SEQ="@fastify/otel",qq0="0.8.0",Mq0=">=4.0.0 <6",kEQ=["onRequest","preParsing","preValidation","preHandler","preSerialization","onSend","onResponse","onError"],H0={HOOK_NAME:"hook.name",FASTIFY_TYPE:"fastify.type",HOOK_CALLBACK_NAME:"hook.callback.name",ROOT:"fastify.root"},jW={ROUTE:"route-hook",INSTANCE:"hook",HANDLER:"request-handler"},HG="anonymous",N9=Symbol("fastify otel instance"),OW=Symbol("fastify otel request spans"),uL=Symbol("fastify otel request context"),_EQ=Symbol("fastify otel addhook original"),vEQ=Symbol("fastify otel setnotfound original"),rP=Symbol("fastify otel ignore path");class On extends yEQ.InstrumentationBase{constructor(A){super(SEQ,qq0,A);if(this.servername=A?.servername??process.env.OTEL_SERVICE_NAME??"fastify",this[rP]=null,this._logger=KY.diag.createComponentLogger({namespace:SEQ}),A?.ignorePaths!=null||process.env.OTEL_FASTIFY_IGNORE_PATHS!=null){let Q=A?.ignorePaths??process.env.OTEL_FASTIFY_IGNORE_PATHS;if((typeof Q!=="string"||Q.length===0)&&typeof Q!=="function")throw TypeError("ignorePaths must be a string or a function");let B=null;this[rP]=(Y)=>{if(typeof Q==="function")return Q(Y);else{if(B==null)B=PEQ().minimatch;return B(Y.url,Q)}}}}enable(){if(this._handleInitialization===void 0&&this.getConfig().registerOnInitialization){let A=this.plugin();this._handleInitialization=(Q)=>{Q.fastify.register(A)},TEQ.subscribe("fastify.initialization",this._handleInitialization)}return super.enable()}disable(){if(this._handleInitialization)TEQ.unsubscribe("fastify.initialization",this._handleInitialization),this._handleInitialization=void 0;return super.disable()}init(){return[]}plugin(){let A=this;return Q[Symbol.for("skip-override")]=!0,Q[Symbol.for("fastify.display-name")]="@fastify/otel",Q[Symbol.for("plugin-meta")]={fastify:Mq0,name:"@fastify/otel"},Q;function Q(B,Y,J){B.decorate(N9,A),B.decorate(_EQ,B.addHook),B.decorate(vEQ,B.setNotFoundHandler),B.decorateRequest("opentelemetry",function(){let U=this[uL];return{span:this[OW],tracer:A.tracer,context:U,inject:(E,K)=>{return KY.propagation.inject(U,E,K)},extract:(E,K)=>{return KY.propagation.extract(U,E,K)}}}),B.decorateRequest(OW,null),B.decorateRequest(uL,null),B.addHook("onRoute",function(Z){if(A[rP]?.(Z)===!0){A._logger.debug(`Ignoring route instrumentation ${Z.method} ${Z.url} because it matches the ignore path`);return}for(let U of kEQ)if(Z[U]!=null){let $=Z[U];if(typeof $==="function")Z[U]=F($,{[RY.ATTR_SERVICE_NAME]:B[N9].servername,[H0.HOOK_NAME]:`${this.pluginName} - route -> ${U}`,[H0.FASTIFY_TYPE]:jW.ROUTE,[RY.ATTR_HTTP_ROUTE]:Z.url,[H0.HOOK_CALLBACK_NAME]:$.name?.length>0?$.name:HG});else if(Array.isArray($)){let E=[];for(let K of $)E.push(F(K,{[RY.ATTR_SERVICE_NAME]:B[N9].servername,[H0.HOOK_NAME]:`${this.pluginName} - route -> ${U}`,[H0.FASTIFY_TYPE]:jW.ROUTE,[RY.ATTR_HTTP_ROUTE]:Z.url,[H0.HOOK_CALLBACK_NAME]:K.name?.length>0?K.name:HG}));Z[U]=E}}if(Z.onSend!=null)Z.onSend=Array.isArray(Z.onSend)?[...Z.onSend,C]:[Z.onSend,C];else Z.onSend=C;if(Z.onError!=null)Z.onError=Array.isArray(Z.onError)?[...Z.onError,X]:[Z.onError,X];else Z.onError=X;Z.handler=F(Z.handler,{[RY.ATTR_SERVICE_NAME]:B[N9].servername,[H0.HOOK_NAME]:`${this.pluginName} - route-handler`,[H0.FASTIFY_TYPE]:jW.HANDLER,[RY.ATTR_HTTP_ROUTE]:Z.url,[H0.HOOK_CALLBACK_NAME]:Z.handler.name.length>0?Z.handler.name:HG})}),B.addHook("onRequest",function(Z,U,$){if(this[N9].isEnabled()===!1)return $();else if(this[N9][rP]?.({url:Z.url,method:Z.method})===!0)return this[N9]._logger.debug(`Ignoring request ${Z.method} ${Z.url} because it matches the ignore path`),$();let E=KY.context.active();if(KY.trace.getSpan(E)==null)E=KY.propagation.extract(E,Z.headers);let K=aP.getRPCMetadata(E);if(Z.routeOptions.url!=null&&K?.type===aP.RPCType.HTTP)K.route=Z.routeOptions.url;let I=this[N9].tracer.startSpan("request",{attributes:{[RY.ATTR_SERVICE_NAME]:B[N9].servername,[H0.ROOT]:"@fastify/otel",[RY.ATTR_HTTP_ROUTE]:Z.url,[RY.ATTR_HTTP_REQUEST_METHOD]:Z.method}},E);Z[uL]=KY.trace.setSpan(E,I),Z[OW]=I,KY.context.with(Z[uL],()=>{$()})}),B.addHook("onResponse",function(Z,U,$){let E=Z[OW];if(E!=null)E.setStatus({code:KY.SpanStatusCode.OK,message:"OK"}),E.setAttributes({[RY.ATTR_HTTP_RESPONSE_STATUS_CODE]:404}),E.end();Z[OW]=null,$()}),B.addHook=G,B.setNotFoundHandler=W,J();function C(Z,U,$,E){let K=Z[OW];if(K!=null){if(U.statusCode<500)K.setStatus({code:KY.SpanStatusCode.OK,message:"OK"});K.setAttributes({[RY.ATTR_HTTP_RESPONSE_STATUS_CODE]:U.statusCode}),K.end()}Z[OW]=null,E(null,$)}function X(Z,U,$,E){let K=Z[OW];if(K!=null)K.setStatus({code:KY.SpanStatusCode.ERROR,message:$.message}),K.recordException($);E()}function G(Z,U){let $=this[_EQ];if(kEQ.includes(Z))return $.call(this,Z,F(U,{[RY.ATTR_SERVICE_NAME]:B[N9].servername,[H0.HOOK_NAME]:`${this.pluginName} - ${Z}`,[H0.FASTIFY_TYPE]:jW.INSTANCE,[H0.HOOK_CALLBACK_NAME]:U.name?.length>0?U.name:HG}));else return $.call(this,Z,U)}function W(Z,U){let $=this[vEQ];if(typeof Z==="function")U=F(Z,{[RY.ATTR_SERVICE_NAME]:B[N9].servername,[H0.HOOK_NAME]:`${this.pluginName} - not-found-handler`,[H0.FASTIFY_TYPE]:jW.INSTANCE,[H0.HOOK_CALLBACK_NAME]:Z.name?.length>0?Z.name:HG}),$.call(this,U);else{if(Z.preValidation!=null)Z.preValidation=F(Z.preValidation,{[RY.ATTR_SERVICE_NAME]:B[N9].servername,[H0.HOOK_NAME]:`${this.pluginName} - not-found-handler - preValidation`,[H0.FASTIFY_TYPE]:jW.INSTANCE,[H0.HOOK_CALLBACK_NAME]:Z.preValidation.name?.length>0?Z.preValidation.name:HG});if(Z.preHandler!=null)Z.preHandler=F(Z.preHandler,{[RY.ATTR_SERVICE_NAME]:B[N9].servername,[H0.HOOK_NAME]:`${this.pluginName} - not-found-handler - preHandler`,[H0.FASTIFY_TYPE]:jW.INSTANCE,[H0.HOOK_CALLBACK_NAME]:Z.preHandler.name?.length>0?Z.preHandler.name:HG});U=F(U,{[RY.ATTR_SERVICE_NAME]:B[N9].servername,[H0.HOOK_NAME]:`${this.pluginName} - not-found-handler`,[H0.FASTIFY_TYPE]:jW.INSTANCE,[H0.HOOK_CALLBACK_NAME]:U.name?.length>0?U.name:HG}),$.call(this,Z,U)}}function F(Z,U={}){return function(...E){let K=this[N9],[I]=E;if(K.isEnabled()===!1)return Z.call(this,...E);let V=I[uL]??KY.context.active(),H=K.tracer.startSpan(`handler - ${Z.name?.length>0?Z.name:this.pluginName??HG}`,{attributes:U},V);return KY.context.with(KY.trace.setSpan(V,H),function(){try{let D=Z.call(this,...E);if(typeof D?.then==="function")return D.then((L)=>{return H.end(),L},(L)=>{return H.setStatus({code:KY.SpanStatusCode.ERROR,message:L.message}),H.recordException(L),H.end(),Promise.reject(L)});return H.end(),D}catch(D){throw H.setStatus({code:KY.SpanStatusCode.ERROR,message:D.message}),H.recordException(D),H.end(),D}},this)}}}}}var E1=qA(yA(),1),tP=qA(MB(),1),O$=qA(NB(),1),bEQ=qA(dB(),1);var DG;(function(A){A.FASTIFY_NAME="fastify.name";let B="fastify.type";A.FASTIFY_TYPE=B;let Y="hook.name";A.HOOK_NAME=Y;let J="plugin.name";A.PLUGIN_NAME=J})(DG||(DG={}));var dL;(function(A){A.MIDDLEWARE="middleware";let B="request_handler";A.REQUEST_HANDLER=B})(dL||(dL={}));var cL;(function(A){A.MIDDLEWARE="middleware";let B="request handler";A.REQUEST_HANDLER=B})(cL||(cL={}));var hEQ=qA(yA(),1);var lL=Symbol("opentelemetry.instrumentation.fastify.request_active_span");function Pn(A,Q,B,Y={}){let J=Q.startSpan(B,{attributes:Y}),C=A[lL]||[];return C.push(J),Object.defineProperty(A,lL,{enumerable:!1,configurable:!0,value:C}),J}function oP(A,Q){let B=A[lL]||[];if(!B.length)return;B.forEach((Y)=>{if(Q)Y.setStatus({code:hEQ.SpanStatusCode.ERROR,message:Q.message}),Y.recordException(Q);Y.end()}),delete A[lL]}function xEQ(A,Q,B){let Y,J=void 0;try{if(J=A(),gEQ(J))J.then((C)=>Q(void 0,C),(C)=>Q(C))}catch(C){Y=C}finally{if(!gEQ(J)){if(Q(Y,J),Y)throw Y}return J}}function gEQ(A){return typeof A==="object"&&A&&typeof Object.getOwnPropertyDescriptor(A,"then")?.value==="function"||!1}var zq0="0.1.0",Rq0="@sentry/instrumentation-fastify-v3",fEQ="anonymous",wq0=new Set(["onTimeout","onRequest","preParsing","preValidation","preSerialization","preHandler","onSend","onResponse","onError"]);class Tn extends O$.InstrumentationBase{constructor(A={}){super(Rq0,zq0,A)}init(){return[new O$.InstrumentationNodeModuleDefinition("fastify",[">=3.0.0 <4"],(A)=>{return this._patchConstructor(A)})]}_hookOnRequest(){let A=this;return function(B,Y,J){if(!A.isEnabled())return J();A._wrap(Y,"send",A._patchSend());let C=B,X=tP.getRPCMetadata(E1.context.active()),G=C.routeOptions?C.routeOptions.url:B.routerPath;if(G&&X?.type===tP.RPCType.HTTP)X.route=G;let W=B.method||"GET";RQ().setTransactionName(`${W} ${G}`),J()}}_wrapHandler(A,Q,B,Y){let J=this;return this._diag.debug("Patching fastify route.handler function"),function(...C){if(!J.isEnabled())return B.apply(this,C);let X=B.name||A||fEQ,G=`${cL.MIDDLEWARE} - ${X}`,W=C[1],F=Pn(W,J.tracer,G,{[DG.FASTIFY_TYPE]:dL.MIDDLEWARE,[DG.PLUGIN_NAME]:A,[DG.HOOK_NAME]:Q}),Z=Y&&C[C.length-1];if(Z)C[C.length-1]=function(...U){oP(W),Z.apply(this,U)};return E1.context.with(E1.trace.setSpan(E1.context.active(),F),()=>{return xEQ(()=>{return B.apply(this,C)},(U)=>{if(U instanceof Error)F.setStatus({code:E1.SpanStatusCode.ERROR,message:U.message}),F.recordException(U);if(!Y)oP(W)})})}}_wrapAddHook(){let A=this;return this._diag.debug("Patching fastify server.addHook function"),function(Q){return function(...Y){let J=Y[0],C=Y[1],X=this.pluginName;if(!wq0.has(J))return Q.apply(this,Y);let G=typeof Y[Y.length-1]==="function"&&C.constructor.name!=="AsyncFunction";return Q.apply(this,[J,A._wrapHandler(X,J,C,G)])}}}_patchConstructor(A){let Q=this;function B(...Y){let J=A.fastify.apply(this,Y);return J.addHook("onRequest",Q._hookOnRequest()),J.addHook("preHandler",Q._hookPreHandler()),jq0(),Q._wrap(J,"addHook",Q._wrapAddHook()),J}if(A.errorCodes!==void 0)B.errorCodes=A.errorCodes;return B.fastify=B,B.default=B,B}_patchSend(){let A=this;return this._diag.debug("Patching fastify reply.send function"),function(B){return function(...J){let C=J[0];if(!A.isEnabled())return B.apply(this,J);return O$.safeExecuteInTheMiddle(()=>{return B.apply(this,J)},(X)=>{if(!X&&C instanceof Error)X=C;oP(this,X)})}}}_hookPreHandler(){let A=this;return this._diag.debug("Patching fastify preHandler function"),function(B,Y,J){if(!A.isEnabled())return J();let C=B,X=C.routeOptions?.handler||C.context?.handler,G=X?.name.startsWith("bound ")?X.name.substring(6):X?.name,W=`${cL.REQUEST_HANDLER} - ${G||this.pluginName||fEQ}`,F={[DG.PLUGIN_NAME]:this.pluginName,[DG.FASTIFY_TYPE]:dL.REQUEST_HANDLER,[bEQ.SEMATTRS_HTTP_ROUTE]:C.routeOptions?C.routeOptions.url:B.routerPath};if(G)F[DG.FASTIFY_NAME]=G;let Z=Pn(Y,A.tracer,W,F);mEQ(Z);let{requestHook:U}=A.getConfig();if(U)O$.safeExecuteInTheMiddle(()=>U(Z,{request:B}),($)=>{if($)A._diag.error("request hook failed",$)},!0);return E1.context.with(E1.trace.setSpan(E1.context.active(),Z),()=>{J()})}}}function jq0(){let A=gA();if(A)A.on("spanStart",(Q)=>{mEQ(Q)})}function mEQ(A){let Q=eA(A).data,B=Q["fastify.type"];if(Q[YQ]||!B)return;A.setAttributes({[DQ]:"auto.http.otel.fastify",[YQ]:`${B}.fastify`});let Y=Q["fastify.name"]||Q["plugin.name"]||Q["hook.name"];if(typeof Y==="string"){let J=Y.replace(/^fastify -> /,"").replace(/^@fastify\/otel -> /,"");A.updateName(J)}}var dEQ="Fastify",Oq0="Fastify-V3",Sn=EQ(Oq0,()=>new Tn),kn=EQ(dEQ,()=>{let A=new On,Q=A.plugin();return uEQ.subscribe("fastify.initialization",(B)=>{let Y=B.fastify;Y?.register(Q).after((J)=>{if(J)fQ&&e.error("Failed to setup Fastify instrumentation",J);else if(Sq0(),Y)kq0(Y)})}),A}),Pq0=()=>{return{name:dEQ,setupOnce(){Sn(),kn()}}},eP=wA(Pq0);function Tq0(A,Q,B){let Y=B.statusCode;return Y>=500||Y<=299}function cEQ(A,Q){let B=Q?.shouldHandleError||Tq0,Y=Object.assign(function(J,C,X){J.addHook("onError",async(G,W,F)=>{if(B(F,G,W))jB(F)}),X()},{[Symbol.for("skip-override")]:!0,[Symbol.for("fastify.display-name")]:"sentry-fastify-error-handler"});A.register(Y)}function lEQ(A){let Q=eA(A),B=Q.description,Y=Q.data,J=Y["fastify.type"],C=J==="hook",X=J===B?.startsWith("handler -"),G=B==="request"||J==="request-handler";if(Y[YQ]||!X&&!G&&!C)return;let W=C?"hook":X?"middleware":G?"request-handler":"";A.setAttributes({[DQ]:"auto.http.otel.fastify",[YQ]:`${W}.fastify`});let F=Y["fastify.name"]||Y["plugin.name"]||Y["hook.name"];if(typeof F==="string"){let Z=F.replace(/^fastify -> /,"").replace(/^@fastify\/otel -> /,"");A.updateName(Z)}}function Sq0(){let A=gA();if(A)A.on("spanStart",(Q)=>{lEQ(Q)})}function kq0(A){A.addHook("onRequest",async(Q,B)=>{if(Q.opentelemetry){let{span:C}=Q.opentelemetry();if(C)lEQ(C)}let Y=Q.routeOptions?.url,J=Q.method||"GET";RQ().setTransactionName(`${J} ${Y}`)})}var PKQ=qA(OKQ(),1);var TKQ="Graphql",fn=EQ(TKQ,PKQ.GraphQLInstrumentation,(A)=>{let Q=SKQ(A);return{...Q,responseHook(B){s0(B,"auto.graphql.otel.graphql");let Y=eA(B).data,J=Y["graphql.operation.type"],C=Y["graphql.operation.name"];if(Q.useOperationNameForRootSpan&&J){let X=K0(B),W=eA(X).data[wK]||[],F=C?`${J} ${C}`:`${J}`;if(Array.isArray(W))W.push(F),X.setAttribute(wK,W);else if(typeof W==="string")X.setAttribute(wK,[W,F]);else X.setAttribute(wK,F);if(!eA(X).data["original-description"])X.setAttribute("original-description",eA(X).description);X.updateName(`${eA(X).data["original-description"]} (${JM0(W)})`)}}}}),YM0=(A={})=>{return{name:TKQ,setupOnce(){fn(SKQ(A))}}},YT=wA(YM0);function SKQ(A){return{ignoreResolveSpans:!0,ignoreTrivialResolveSpans:!0,useOperationNameForRootSpan:!0,...A}}function JM0(A){if(Array.isArray(A)){let Q=A.slice().sort();if(Q.length<=5)return Q.join(", ");else return`${Q.slice(0,5).join(", ")}, +${Q.length-5}`}return`${A}`}var nKQ=qA(iKQ(),1);var sKQ="Kafka",bn=EQ(sKQ,()=>new nKQ.KafkaJsInstrumentation({consumerHook(A){s0(A,"auto.kafkajs.otel.consumer")},producerHook(A){s0(A,"auto.kafkajs.otel.producer")}})),GM0=()=>{return{name:sKQ,setupOnce(){bn()}}},JT=wA(GM0);var XVQ=qA(CVQ(),1);var GVQ="LruMemoizer",mn=EQ(GVQ,()=>new XVQ.LruMemoizerInstrumentation),$M0=()=>{return{name:GVQ,setupOnce(){mn()}}},CT=wA($M0);var MVQ=qA(qVQ(),1);var zVQ="Mongo",pn=EQ(zVQ,()=>new MVQ.MongoDBInstrumentation({dbStatementSerializer:IM0,responseHook(A){s0(A,"auto.db.otel.mongo")}}));function IM0(A){let Q=ln(A);return JSON.stringify(Q)}function ln(A){if(Array.isArray(A))return A.map((Q)=>ln(Q));if(HM0(A)){let Q={};return Object.entries(A).map(([B,Y])=>[B,ln(Y)]).reduce((B,Y)=>{if(NM0(Y))B[Y[0]]=Y[1];return B},Q)}return"?"}function HM0(A){return typeof A==="object"&&A!==null&&!DM0(A)}function DM0(A){let Q=!1;if(typeof Buffer<"u")Q=Buffer.isBuffer(A);return Q}function NM0(A){return Array.isArray(A)}var LM0=()=>{return{name:zVQ,setupOnce(){pn()}}},XT=wA(LM0);var lVQ=qA(cVQ(),1);var pVQ="Mongoose",rn=EQ(pVQ,()=>new lVQ.MongooseInstrumentation({responseHook(A){s0(A,"auto.db.otel.mongoose")}})),vM0=()=>{return{name:pVQ,setupOnce(){rn()}}},WT=wA(vM0);var FIQ=qA(WIQ(),1);var ZIQ="Mysql",en=EQ(ZIQ,()=>new FIQ.MySQLInstrumentation({})),rM0=()=>{return{name:ZIQ,setupOnce(){en()}}},ZT=wA(rM0);var SIQ=qA(TIQ(),1);var kIQ="Mysql2",Js=EQ(kIQ,()=>new SIQ.MySQL2Instrumentation({responseHook(A){s0(A,"auto.db.otel.mysql2")}})),Uz0=()=>{return{name:kIQ,setupOnce(){Js()}}},UT=wA(Uz0);var DHQ=qA(aIQ(),1),NHQ=qA(EHQ(),1);var jz0=["get","set","setex"],Xs=["get","mget"],Oz0=["set","setex"];function eL(A,Q){return A.includes(Q.toLowerCase())}function Gs(A){if(eL(Xs,A))return"cache.get";else if(eL(Oz0,A))return"cache.put";else return}function Pz0(A,Q){return Q.some((B)=>A.startsWith(B))}function VHQ(A,Q){try{if(Q.length===0)return;let B=(J)=>{if(typeof J==="string"||typeof J==="number"||Buffer.isBuffer(J))return[J.toString()];else if(Array.isArray(J))return KHQ(J.map((C)=>B(C)));else return[""]},Y=Q[0];if(eL(jz0,A)&&Y!=null)return B(Y);return KHQ(Q.map((J)=>B(J)))}catch(B){return}}function IHQ(A,Q,B){if(!Gs(A))return!1;for(let Y of Q)if(Pz0(Y,B))return!0;return!1}function HHQ(A){let Q=(B)=>{try{if(Buffer.isBuffer(B))return B.byteLength;else if(typeof B==="string")return B.length;else if(typeof B==="number")return B.toString().length;else if(B===null||B===void 0)return 0;return JSON.stringify(B).length}catch(Y){return}};return Array.isArray(A)?A.reduce((B,Y)=>{let J=Q(Y);return typeof J==="number"?B!==void 0?B+J:J:B},0):Q(A)}function KHQ(A){let Q=[],B=(Y)=>{Y.forEach((J)=>{if(Array.isArray(J))B(J);else Q.push(J)})};return B(A),Q}var LHQ="Redis",Ws={},qHQ=(A,Q,B,Y)=>{A.setAttribute(DQ,"auto.db.otel.redis");let J=VHQ(Q,B),C=Gs(Q);if(!J||!C||!Ws.cachePrefixes||!IHQ(Q,J,Ws.cachePrefixes))return;let X=eA(A).data["net.peer.name"],G=eA(A).data["net.peer.port"];if(G&&X)A.setAttributes({"network.peer.address":X,"network.peer.port":G});let W=HHQ(Y);if(W)A.setAttribute(iu,W);if(eL(Xs,Q)&&W!==void 0)A.setAttribute(lu,W>0);A.setAttributes({[YQ]:C,[pu]:J});let F=J.join(", ");A.updateName(n9(F,1024))},Tz0=EQ("IORedis",()=>{return new DHQ.IORedisInstrumentation({responseHook:qHQ})}),Sz0=EQ("Redis-4",()=>{return new NHQ.RedisInstrumentation({responseHook:qHQ})}),Fs=Object.assign(()=>{Tz0(),Sz0()},{id:LHQ}),kz0=(A={})=>{return{name:LHQ,setupOnce(){Ws=A,Fs()}}},KT=wA(kz0);var eHQ=qA(tHQ(),1);var ADQ="Postgres",Hs=EQ(ADQ,()=>new eHQ.PgInstrumentation({requireParentSpan:!0,requestHook(A){s0(A,"auto.db.otel.postgres")}})),V20=()=>{return{name:ADQ,setupOnce(){Hs()}}},DT=wA(V20);var YDQ=qA(yA(),1),NT=qA(NB(),1),dW=qA(yA(),1);var I20=process.env.PRISMA_SHOW_ALL_TRACES==="true",H20="00-10-10-00";function D20(A){switch(A){case"client":return dW.SpanKind.CLIENT;case"internal":default:return dW.SpanKind.INTERNAL}}var N20=class{traceMiddleware;tracerProvider;ignoreSpanTypes;constructor({traceMiddleware:A,tracerProvider:Q,ignoreSpanTypes:B}){this.traceMiddleware=A,this.tracerProvider=Q,this.ignoreSpanTypes=B}isEnabled(){return!0}getTraceParent(A){let Q=dW.trace.getSpanContext(A??dW.context.active());if(Q)return`00-${Q.traceId}-${Q.spanId}-0${Q.traceFlags}`;return H20}dispatchEngineSpans(A){let Q=this.tracerProvider.getTracer("prisma"),B=new Map,Y=A.filter((J)=>J.parentId===null);for(let J of Y)JDQ(Q,J,A,B,this.ignoreSpanTypes)}getActiveContext(){return dW.context.active()}runInChildSpan(A,Q){if(typeof A==="string")A={name:A};if(A.internal&&!I20)return Q();if(A.middleware&&!this.traceMiddleware)return Q();let B=this.tracerProvider.getTracer("prisma"),Y=A.context??this.getActiveContext(),J=`prisma:client:${A.name}`;if(CDQ(J,this.ignoreSpanTypes))return Q();if(A.active===!1){let C=B.startSpan(J,A,Y);return QDQ(C,Q(C,Y))}return B.startActiveSpan(J,A,(C)=>QDQ(C,Q(C,Y)))}};function JDQ(A,Q,B,Y,J){if(CDQ(Q.name,J))return;let C={attributes:Q.attributes,kind:D20(Q.kind),startTime:Q.startTime};A.startActiveSpan(Q.name,C,(X)=>{if(Y.set(Q.id,X.spanContext().spanId),Q.links)X.addLinks(Q.links.flatMap((W)=>{let F=Y.get(W);if(!F)return[];return{context:{spanId:F,traceId:X.spanContext().traceId,traceFlags:X.spanContext().traceFlags}}}));let G=B.filter((W)=>W.parentId===Q.id);for(let W of G)JDQ(A,W,B,Y,J);X.end(Q.endTime)})}function QDQ(A,Q){if(L20(Q))return Q.then((B)=>{return A.end(),B},(B)=>{throw A.end(),B});return A.end(),Q}function L20(A){return A!=null&&typeof A.then==="function"}function CDQ(A,Q){return Q.some((B)=>typeof B==="string"?B===A:B.test(A))}var XDQ={name:"@prisma/instrumentation",version:"6.7.0",description:"OpenTelemetry compliant instrumentation for Prisma Client",main:"dist/index.js",module:"dist/index.mjs",types:"dist/index.d.ts",exports:{".":{require:{types:"./dist/index.d.ts",default:"./dist/index.js"},import:{types:"./dist/index.d.ts",default:"./dist/index.mjs"}}},license:"Apache-2.0",homepage:"https://www.prisma.io",repository:{type:"git",url:"https://github.com/prisma/prisma.git",directory:"packages/instrumentation"},bugs:"https://github.com/prisma/prisma/issues",devDependencies:{"@prisma/internals":"workspace:*","@swc/core":"1.11.5","@types/jest":"29.5.14","@types/node":"18.19.76","@opentelemetry/api":"1.9.0",jest:"29.7.0","jest-junit":"16.0.0",typescript:"5.4.5"},dependencies:{"@opentelemetry/instrumentation":"^0.52.0 || ^0.53.0 || ^0.54.0 || ^0.55.0 || ^0.56.0 || ^0.57.0"},peerDependencies:{"@opentelemetry/api":"^1.8"},files:["dist"],keywords:["prisma","instrumentation","opentelemetry","otel"],scripts:{dev:"DEV=true tsx helpers/build.ts",build:"tsx helpers/build.ts",prepublishOnly:"pnpm run build",test:"jest"},sideEffects:!1},Ns=XDQ.version,q20=Ns.split(".")[0],BDQ="PRISMA_INSTRUMENTATION",Ds=`V${q20}_PRISMA_INSTRUMENTATION`,M20=XDQ.name,z20="@prisma/client",GDQ=class extends NT.InstrumentationBase{tracerProvider;constructor(A={}){super(M20,Ns,A)}setTracerProvider(A){this.tracerProvider=A}init(){return[new NT.InstrumentationNodeModuleDefinition(z20,[Ns])]}enable(){let A=this._config,Q={helper:new N20({traceMiddleware:A.middleware??!1,tracerProvider:this.tracerProvider??YDQ.trace.getTracerProvider(),ignoreSpanTypes:A.ignoreSpanTypes??[]})};global[BDQ]=Q,global[Ds]=Q}disable(){delete global[BDQ],delete global[Ds]}isEnabled(){return Boolean(global[Ds])}};var WDQ="Prisma";function R20(A){return!!A&&typeof A==="object"&&"dispatchEngineSpans"in A}function FDQ(){let A=globalThis.PRISMA_INSTRUMENTATION;return A&&typeof A==="object"&&"helper"in A?A.helper:void 0}class ZDQ extends GDQ{constructor(){super()}enable(){super.enable();let A=FDQ(),Q=!1;if(R20(A))A.createEngineSpan=()=>{f0(()=>{if(!Q)Q=!0,console.warn("[Sentry] The Sentry SDK supports tracing with Prisma version 5 only with limited capabilities. For full tracing capabilities pass `prismaInstrumentation` for version 5 to the Sentry `prismaIntegration`. Read more: https://docs.sentry.io/platforms/javascript/guides/node/configuration/integrations/prisma/")})}}}var w20=EQ(WDQ,(A)=>{if(A?.prismaInstrumentation)return A.prismaInstrumentation;return new ZDQ}),LT=wA(({prismaInstrumentation:A}={})=>{return{name:WDQ,setupOnce(){w20({prismaInstrumentation:A})},setup(Q){if(!FDQ())return;Q.on("spanStart",(B)=>{let Y=eA(B);if(Y.description?.startsWith("prisma:"))B.setAttribute(DQ,"auto.db.otel.prisma");if(Y.description==="prisma:engine:db_query"&&Y.data["db.query.text"])B.updateName(Y.data["db.query.text"]);if(Y.description==="prisma:engine:db_query"&&!Y.data["db.system"])B.setAttribute("db.system","prisma")})}}});var PDQ=qA(ODQ(),1);var TDQ="Hapi",zT=EQ(TDQ,()=>new PDQ.HapiInstrumentation),i20=()=>{return{name:TDQ,setupOnce(){zT()}}},RT=wA(i20);function n20(A){return!!(A&&typeof A==="object"&&("error"in A)&&A.error)}function s20(A){jB(A,{mechanism:{type:"hapi",handled:!1,data:{function:"hapiErrorPlugin"}}})}var r20={name:"SentryHapiErrorPlugin",version:l0,register:async function(A){A.events.on({name:"request",channels:["error"]},(B,Y)=>{if(RQ()!==v5()){let J=B.route;if(J.path)RQ().setTransactionName(`${J.method.toUpperCase()} ${J.path}`)}else fQ&&e.warn("Isolation scope is still the default isolation scope - skipping setting transactionName");if(n20(Y))s20(Y.error)})}};async function SDQ(A){await A.register(r20);let Q=gA();if(Q)Q.on("spanStart",(B)=>{a20(B)});RW(A.register,"hapi")}function a20(A){let Q=eA(A).data,B=Q["hapi.type"];if(Q[YQ]||!B)return;A.setAttributes({[DQ]:"auto.http.otel.hapi",[YQ]:`${B}.hapi`})}var eDQ=qA(tDQ(),1),ANQ=qA(dB(),1);var QNQ="Koa",Ps=EQ(QNQ,()=>new eDQ.KoaInstrumentation({requestHook(A,Q){if(X30(A),RQ()===v5()){fQ&&e.warn("Isolation scope is default isolation scope - skipping setting transactionName");return}let Y=eA(A).data[ANQ.ATTR_HTTP_ROUTE],J=Q.context?.request?.method?.toUpperCase()||"GET";if(Y)RQ().setTransactionName(`${J} ${Y}`)}})),C30=()=>{return{name:QNQ,setupOnce(){Ps()}}},OT=wA(C30),BNQ=(A)=>{A.use(async(Q,B)=>{try{await B()}catch(Y){throw jB(Y),Y}}),RW(A.use,"koa")};function X30(A){A.setAttribute(DQ,"auto.http.otel.koa");let Q=eA(A).data,B=Q["koa.type"];if(B)A.setAttribute(YQ,`${B}.koa`);let Y=Q["koa.name"];if(typeof Y==="string")A.updateName(Y||"< unknown >")}var zNQ=qA(MNQ(),1);var RNQ="Connect",vs=EQ(RNQ,()=>new zNQ.ConnectInstrumentation),L30=()=>{return{name:RNQ,setupOnce(){vs()}}},TT=wA(L30);function q30(A,Q,B,Y){jB(A),Y(A)}var wNQ=(A)=>{A.use(q30);let Q=gA();if(Q)Q.on("spanStart",(B)=>{M30(B)});RW(A.use,"connect")};function M30(A){let Q=eA(A).data,B=Q["connect.type"];if(Q[YQ]||!B)return;A.setAttributes({[DQ]:"auto.http.otel.connect",[YQ]:`${B}.connect`});let Y=Q["connect.name"];if(typeof Y==="string")A.updateName(Y)}import*as z30 from"node:http";var ys="Spotlight",R30=(A={})=>{let Q={sidecarUrl:A.sidecarUrl||"http://localhost:8969/stream"};return{name:ys,setup(B){if(typeof process==="object"&&process.env&&process.env.NODE_ENV!=="development")e.warn("[Spotlight] It seems you're not in dev mode. Do you really want to have Spotlight enabled?");w30(B,Q)}}},ST=wA(R30);function w30(A,Q){let B=j30(Q.sidecarUrl);if(!B)return;let Y=0;A.on("beforeEnvelope",(J)=>{if(Y>3){e.warn("[Spotlight] Disabled Sentry -> Spotlight integration due to too many failed requests");return}let C=RN(J),G=O30()({method:"POST",path:B.pathname,hostname:B.hostname,port:B.port,headers:{"Content-Type":"application/x-sentry-envelope"}},(W)=>{if(W.statusCode&&W.statusCode>=200&&W.statusCode<400)Y=0;W.on("data",()=>{}),W.on("end",()=>{}),W.setEncoding("utf8")});G.on("error",()=>{Y++,e.warn("[Spotlight] Failed to send envelope to Spotlight Sidecar")}),G.write(C),G.end()})}function j30(A){try{return new URL(`${A}`)}catch{e.warn(`[Spotlight] Invalid sidecar URL: ${A}`);return}}function O30(){let{request:A}=z30;if(P30(A))return A.__sentry_original__;return A}function P30(A){return"__sentry_original__"in A}var iNQ=qA(pNQ(),1);var nNQ="Knex",l30=EQ(nNQ,()=>new iNQ.KnexInstrumentation({requireParentSpan:!0})),p30=()=>{let A;return{name:nNQ,setupOnce(){let Q=l30();A=VW(Q)},setup(Q){A?.(()=>Q.on("spanStart",(B)=>{let{data:Y}=eA(B);if("knex.version"in Y)B.setAttribute(DQ,"auto.db.otel.knex")}))}}},sNQ=wA(p30);var ULQ=qA($LQ(),1);var t30=new Set(["callProcedure","execSql","execSqlBatch","execBulkLoad","prepare","execute"]),ELQ="Tedious",hs=EQ(ELQ,()=>new ULQ.TediousInstrumentation({})),e30=()=>{let A;return{name:ELQ,setupOnce(){let Q=hs();A=VW(Q)},setup(Q){A?.(()=>Q.on("spanStart",(B)=>{let{description:Y,data:J}=eA(B);if(!Y||J["db.system"]!=="mssql")return;let C=Y.split(" ")[0]||"";if(t30.has(C))B.setAttribute(DQ,"auto.db.otel.tedious")}))}}},gT=wA(e30);var zLQ=qA(MLQ(),1);var RLQ="GenericPool",fs=EQ(RLQ,()=>new zLQ.GenericPoolInstrumentation({})),YR0=()=>{let A;return{name:RLQ,setupOnce(){let Q=fs();A=VW(Q)},setup(Q){A?.(()=>Q.on("spanStart",(B)=>{let J=eA(B).description;if(J==="generic-pool.aquire"||J==="generic-pool.acquire")B.setAttribute(DQ,"auto.db.otel.generic_pool")}))}}},hT=wA(YR0);var xLQ=qA(hLQ(),1);var fLQ="Dataloader",XR0=EQ(fLQ,()=>new xLQ.DataloaderInstrumentation({requireParentSpan:!0})),GR0=()=>{let A;return{name:fLQ,setupOnce(){let Q=XR0();A=VW(Q)},setup(Q){A?.(()=>{Q.on("spanStart",(B)=>{let Y=eA(B);if(Y.description?.startsWith("dataloader"))B.setAttribute(DQ,"auto.db.otel.dataloader");if(Y.description==="dataloader.load"||Y.description==="dataloader.loadMany"||Y.description==="dataloader.batch")B.setAttribute(YQ,"cache.get")})})}}},bLQ=wA(GR0);var CqQ=qA(JqQ(),1);var XqQ="Amqplib",OR0={consumeEndHook:(A)=>{s0(A,"auto.amqplib.otel.consumer")},publishHook:(A)=>{s0(A,"auto.amqplib.otel.publisher")}},cs=EQ(XqQ,()=>new CqQ.AmqplibInstrumentation(OR0)),PR0=()=>{return{name:XqQ,setupOnce(){cs()}}},bT=wA(PR0);var mT=qA(NB(),1);var GqQ=["generateText","streamText","generateObject","streamObject","embed","embedMany"];class Cq extends mT.InstrumentationBase{__init(){this._isPatched=!1}__init2(){this._callbacks=[]}constructor(A={}){super("@sentry/instrumentation-vercel-ai",l0,A);Cq.prototype.__init.call(this),Cq.prototype.__init2.call(this)}init(){return new mT.InstrumentationNodeModuleDefinition("ai",[">=3.0.0 <5"],this._patch.bind(this))}callWhenPatched(A){if(this._isPatched)A();else this._callbacks.push(A)}_patch(A){this._isPatched=!0,this._callbacks.forEach((B)=>B()),this._callbacks=[];function Q(B){return(...Y)=>{let J=Y[0].experimental_telemetry||{};if(J.isEnabled===void 0)Y[0].experimental_telemetry={isEnabled:!0,recordInputs:!1,recordOutputs:!1,...J};return B.apply(this,Y)}}if(Object.prototype.toString.call(A)==="[object Module]"){for(let B of GqQ)A[B]=Q(A[B]);return A}else{let B=GqQ.reduce((Y,J)=>{return Y[J]=Q(A[J]),Y},{});return{...A,...B}}}}var WqQ="VercelAI",ls=EQ(WqQ,()=>new Cq({})),TR0=()=>{let A;return{name:WqQ,setupOnce(){A=ls()},setup(Q){A?.callWhenPatched(()=>{Q.on("spanStart",(B)=>{let{data:Y,description:J}=eA(B);if(!J)return;let C=Y["ai.model.id"],X=Y["ai.model.provider"];if(typeof C!=="string"||typeof X!=="string"||!C||!X)return;let G=!1;switch(J){case"ai.generateText":{B.setAttribute(YQ,"ai.pipeline.generateText"),G=!0;break}case"ai.generateText.doGenerate":{B.setAttribute(YQ,"ai.run.doGenerate");break}case"ai.streamText":{B.setAttribute(YQ,"ai.pipeline.streamText"),G=!0;break}case"ai.streamText.doStream":{B.setAttribute(YQ,"ai.run.doStream");break}case"ai.generateObject":{B.setAttribute(YQ,"ai.pipeline.generateObject"),G=!0;break}case"ai.generateObject.doGenerate":{B.setAttribute(YQ,"ai.run.doGenerate");break}case"ai.streamObject":{B.setAttribute(YQ,"ai.pipeline.streamObject"),G=!0;break}case"ai.streamObject.doStream":{B.setAttribute(YQ,"ai.run.doStream");break}case"ai.embed":{B.setAttribute(YQ,"ai.pipeline.embed"),G=!0;break}case"ai.embed.doEmbed":{B.setAttribute(YQ,"ai.embeddings");break}case"ai.embedMany":{B.setAttribute(YQ,"ai.pipeline.embedMany"),G=!0;break}case"ai.embedMany.doEmbed":{B.setAttribute(YQ,"ai.embeddings");break}case"ai.toolCall":case"ai.stream.firstChunk":case"ai.stream.finish":B.setAttribute(YQ,"ai.run");break}s0(B,"auto.vercelai.otel");let W=J.replace("ai.","");B.setAttribute("ai.pipeline.name",W),B.updateName(W);let F=Y["ai.telemetry.functionId"];if(F&&typeof F==="string"&&G)B.updateName(F),B.setAttribute("ai.pipeline.name",F);if(Y["ai.prompt"])B.setAttribute("ai.input_messages",Y["ai.prompt"]);if(Y["ai.model.id"])B.setAttribute("ai.model_id",Y["ai.model.id"]);B.setAttribute("ai.streaming",J.includes("stream"))}),Q.addEventProcessor((B)=>{if(B.type==="transaction"&&B.spans?.length)for(let Y of B.spans){let{data:J,description:C}=Y;if(!C||Y.origin!=="auto.vercelai.otel")continue;if(J["ai.usage.completionTokens"]!=null)J["ai.completion_tokens.used"]=J["ai.usage.completionTokens"];if(J["ai.usage.promptTokens"]!=null)J["ai.prompt_tokens.used"]=J["ai.usage.promptTokens"];if(typeof J["ai.usage.completionTokens"]=="number"&&typeof J["ai.usage.promptTokens"]=="number")J["ai.total_tokens.used"]=J["ai.usage.completionTokens"]+J["ai.usage.promptTokens"]}return B})})}}},uT=wA(TR0);import*as ps from"node:diagnostics_channel";var SR0="ChildProcess",dT=wA((A={})=>{return{name:SR0,setup(){ps.channel("child_process").subscribe((Q)=>{if(Q&&typeof Q==="object"&&"process"in Q)kR0(Q.process,A)}),ps.channel("worker_threads").subscribe((Q)=>{if(Q&&typeof Q==="object"&&"worker"in Q)_R0(Q.worker,A)})}}});function kR0(A,Q){let B=!1,Y;A.on("spawn",()=>{if(A.spawnfile==="/usr/bin/sw_vers"){B=!0;return}if(Y={spawnfile:A.spawnfile},Q.includeChildProcessArgs)Y.spawnargs=A.spawnargs}).on("exit",(J)=>{if(!B){if(B=!0,J!==null&&J!==0)E9({category:"child_process",message:`Child process exited with code '${J}'`,level:J===0?"info":"warning",data:Y})}}).on("error",(J)=>{if(!B)B=!0,E9({category:"child_process",message:`Child process errored with '${J.message}'`,level:"error",data:Y})})}function _R0(A,Q){let B;A.on("online",()=>{B=A.threadId}).on("error",(Y)=>{if(Q.captureWorkerErrors!==!1)jB(Y,{mechanism:{type:"instrument",handled:!1,data:{threadId:String(B)}}});else E9({category:"worker_thread",message:`Worker thread errored with '${Y.message}'`,level:"error",data:{threadId:B}})})}var vR0=["trace","debug","info","warn","error","fatal"],FqQ=Symbol.for("level"),yR0=Symbol.for("message"),gR0=Symbol.for("splat");function ZqQ(A,Q){class B extends A{constructor(Y){super(Y);this._levels=new Set(Q?.levels??vR0)}log(Y,J){try{if(setImmediate(()=>{this.emit("logged",Y)}),!hR0(Y))return;let C=Y[FqQ],{level:X,message:G,timestamp:W,...F}=Y;F[FqQ]=void 0,F[yR0]=void 0,F[gR0]=void 0;let Z=xR0[C]??"info";if(this._levels.has(Z))XG(Z,G,{...F,"sentry.origin":"auto.logging.winston"})}catch{}if(J)J()}}return B}function hR0(A){return typeof A==="object"&&A!=null}var xR0={silly:"trace",debug:"debug",verbose:"debug",http:"debug",info:"info",notice:"info",warn:"warn",warning:"warn",error:"error",emerg:"fatal",alert:"fatal",crit:"fatal"};var zqQ=qA(MqQ(),1);var lT=e$Q(zqQ.AsyncLocalStorageContextManager);var rR0="ProcessSession",RqQ=wA(()=>{return{name:rR0,setupOnce(){vN(),process.on("beforeExit",()=>{if(RQ().getSession()?.status!=="ok")lZ()})}}});function pT(){return[lP(),eP(),YT(),XT(),WT(),ZT(),UT(),KT(),DT(),LT(),RT(),OT(),TT(),gT(),hT(),JT(),bT(),CT(),uT()]}function wqQ(){return[Bn,Nn,Ln,vs,kn,Sn,zT,bn,Ps,mn,pn,rn,en,Js,Hs,zT,fn,Fs,hs,fs,cs,ls]}import*as oR0 from"node:http";import*as tR0 from"node:https";import{Readable as eR0}from"node:stream";import{createGzip as Aw0}from"node:zlib";import*as SG from"node:net";import*as rs from"node:tls";import*as ns from"node:http";var MX=Symbol("AgentBaseInternalState");class ss extends ns.Agent{constructor(A){super(A);this[MX]={}}isSecureEndpoint(A){if(A){if(typeof A.secureEndpoint==="boolean")return A.secureEndpoint;if(typeof A.protocol==="string")return A.protocol==="https:"}let{stack:Q}=Error();if(typeof Q!=="string")return!1;return Q.split(` +`)}}}_onResponseHeaders({request:A,response:Q}){let B=this.getConfig();if(B.enabled===!1)return;let J=B.breadcrumbs,C=typeof J>"u"?!0:J,X=this._ignoreOutgoingRequestsMap.get(A);if(C&&!X)KD0(A,Q)}_subscribeToChannel(A,Q){let B=gL>18||gL===18&&R4Q>=19,Y;if(B)PK.subscribe?.(A,Q),Y=()=>PK.unsubscribe?.(A,Q);else{let J=PK.channel(A);J.subscribe(Q),Y=()=>J.unsubscribe(Q)}this._channelSubs.push({name:A,unsubscribe:Y})}_shouldIgnoreOutgoingRequest(A){if(OP.isTracingSuppressed(j4Q.context.active()))return!0;let Q=Jn(A.origin,A.path),B=this.getConfig().ignoreOutgoingRequests;if(typeof B!=="function"||!Q)return!1;return B(Q)}}function KD0(A,Q){let B=VD0(A),Y=Q.statusCode,J=bN(Y);E9({category:"http",data:{status_code:Y,...B},type:"http",level:J},{event:"response",request:A,response:Q})}function VD0(A){try{let Q=Jn(A.origin,A.path),B=FW(Q),Y={url:ZW(B),"http.method":A.method||"GET"};if(B.search)Y["http.query"]=B.search;if(B.hash)Y["http.fragment"]=B.hash;return Y}catch{return{}}}function Jn(A,Q="/"){try{return new URL(Q,A).toString()}catch{let B=`${A}`;if(B.endsWith("/")&&Q.startsWith("/"))return`${B}${Q.slice(1)}`;if(!B.endsWith("/")&&!Q.startsWith("/"))return`${B}/${Q.slice(1)}`;return`${B}${Q}`}}var T4Q="NodeFetch",ID0=EQ(T4Q,P4Q.UndiciInstrumentation,(A)=>{return qD0(A)}),HD0=EQ(`${T4Q}.sentry`,Cn,(A)=>{return A}),DD0=(A={})=>{return{name:"NodeFetch",setupOnce(){if(LD0(A,gA()?.getOptions()))ID0(A);HD0(A)}}},PP=wA(DD0);function ND0(A,Q="/"){let B=`${A}`;if(B.endsWith("/")&&Q.startsWith("/"))return`${B}${Q.slice(1)}`;if(!B.endsWith("/")&&!Q.startsWith("/"))return`${B}/${Q.slice(1)}`;return`${B}${Q}`}function LD0(A,Q={}){return typeof A.spans==="boolean"?A.spans:!Q.skipOpenTelemetrySetup}function qD0(A={}){return{requireParentforSpans:!1,ignoreRequestHook:(B)=>{let Y=ND0(B.origin,B.path),J=A.ignoreOutgoingRequests;return!!(J&&Y&&J(Y))},startSpanHook:()=>{return{[DQ]:"auto.http.otel.node_fetch"}}}}var a4Q=qA(s4Q(),1);var r4Q="FileSystem",o4Q=wA((A={})=>{return{name:r4Q,setupOnce(){EQ(r4Q,()=>new a4Q.FsInstrumentation({requireParentSpan:!0,endHook(Q,{args:B,span:Y,error:J}){if(Y.updateName(`fs.${Q}`),Y.setAttributes({[YQ]:"file",[DQ]:"auto.file.fs"}),A.recordErrorMessagesAsSpanAttributes){if(typeof B[0]==="string"&&yD0.includes(Q))Y.setAttribute("path_argument",B[0]);else if(typeof B[0]==="string"&&typeof B[1]==="string"&&vD0.includes(Q))Y.setAttribute("target_argument",B[0]),Y.setAttribute("path_argument",B[1]);else if(typeof B[0]==="string"&&_D0.includes(Q))Y.setAttribute("prefix_argument",B[0]);else if(typeof B[0]==="string"&&typeof B[1]==="string"&&kD0.includes(Q))Y.setAttribute("existing_path_argument",B[0]),Y.setAttribute("new_path_argument",B[1]);else if(typeof B[0]==="string"&&typeof B[1]==="string"&&SD0.includes(Q))Y.setAttribute("src_argument",B[0]),Y.setAttribute("dest_argument",B[1]);else if(typeof B[0]==="string"&&typeof B[1]==="string"&&TD0.includes(Q))Y.setAttribute("old_path_argument",B[0]),Y.setAttribute("new_path_argument",B[1])}if(J&&A.recordErrorMessagesAsSpanAttributes)Y.setAttribute("fs_error",J.message)}}))()}}}),TD0=["rename","renameSync"],SD0=["copyFile","cp","copyFileSync","cpSync"],kD0=["link","linkSync"],_D0=["mkdtemp","mkdtempSync"],vD0=["symlink","symlinkSync"],yD0=["access","appendFile","chmod","chown","exists","mkdir","lchown","lstat","lutimes","open","opendir","readdir","readFile","readlink","realpath","realpath.native","rm","rmdir","stat","truncate","unlink","utimes","writeFile","accessSync","appendFileSync","chmodSync","chownSync","existsSync","lchownSync","lstatSync","lutimesSync","opendirSync","mkdirSync","openSync","readdirSync","readFileSync","readlinkSync","realpathSync","realpathSync.native","rmdirSync","rmSync","statSync","truncateSync","unlinkSync","utimesSync","writeFileSync"];import{execFile as gD0}from"node:child_process";import{readFile as hD0,readdir as xD0}from"node:fs";import*as rY from"node:os";import{join as fD0}from"node:path";import{promisify as e4Q}from"node:util";var bD0=e4Q(hD0),mD0=e4Q(xD0),uD0="Context",dD0=(A={})=>{let Q,B={app:!0,os:!0,device:!0,culture:!0,cloudResource:!0,...A};async function Y(C){if(Q===void 0)Q=J();let X=cD0(await Q);return C.contexts={...C.contexts,app:{...X.app,...C.contexts?.app},os:{...X.os,...C.contexts?.os},device:{...X.device,...C.contexts?.device},culture:{...X.culture,...C.contexts?.culture},cloud_resource:{...X.cloud_resource,...C.contexts?.cloud_resource}},C}async function J(){let C={};if(B.os)C.os=await lD0();if(B.app)C.app=iD0();if(B.device)C.device=nD0(B.device);if(B.culture){let X=pD0();if(X)C.culture=X}if(B.cloudResource)C.cloud_resource=eD0();return C}return{name:uD0,processEvent(C){return Y(C)}}},kP=wA(dD0);function cD0(A){if(A.app?.app_memory)A.app.app_memory=process.memoryUsage().rss;if(A.app?.free_memory&&typeof process.availableMemory==="function"){let Q=process.availableMemory?.();if(Q!=null)A.app.free_memory=Q}if(A.device?.free_memory)A.device.free_memory=rY.freemem();return A}async function lD0(){let A=rY.platform();switch(A){case"darwin":return oD0();case"linux":return tD0();default:return{name:sD0[A]||A,version:rY.release()}}}function pD0(){try{if(typeof process.versions.icu!=="string")return;let A=new Date(900000000);if(new Intl.DateTimeFormat("es",{month:"long"}).format(A)==="enero"){let B=Intl.DateTimeFormat().resolvedOptions();return{locale:B.locale,timezone:B.timeZone}}}catch(A){}return}function iD0(){let A=process.memoryUsage().rss,B={app_start_time:new Date(Date.now()-process.uptime()*1000).toISOString(),app_memory:A};if(typeof process.availableMemory==="function"){let Y=process.availableMemory?.();if(Y!=null)B.free_memory=Y}return B}function nD0(A){let Q={},B;try{B=rY.uptime()}catch(Y){}if(typeof B==="number")Q.boot_time=new Date(Date.now()-B*1000).toISOString();if(Q.arch=rY.arch(),A===!0||A.memory)Q.memory_size=rY.totalmem(),Q.free_memory=rY.freemem();if(A===!0||A.cpu){let Y=rY.cpus(),J=Y?.[0];if(J)Q.processor_count=Y.length,Q.cpu_description=J.model,Q.processor_frequency=J.speed}return Q}var sD0={aix:"IBM AIX",freebsd:"FreeBSD",openbsd:"OpenBSD",sunos:"SunOS",win32:"Windows"},rD0=[{name:"fedora-release",distros:["Fedora"]},{name:"redhat-release",distros:["Red Hat Linux","Centos"]},{name:"redhat_version",distros:["Red Hat Linux"]},{name:"SuSE-release",distros:["SUSE Linux"]},{name:"lsb-release",distros:["Ubuntu Linux","Arch Linux"]},{name:"debian_version",distros:["Debian"]},{name:"debian_release",distros:["Debian"]},{name:"arch-release",distros:["Arch Linux"]},{name:"gentoo-release",distros:["Gentoo Linux"]},{name:"novell-release",distros:["SUSE Linux"]},{name:"alpine-release",distros:["Alpine Linux"]}],aD0={alpine:(A)=>A,arch:(A)=>DX(/distrib_release=(.*)/,A),centos:(A)=>DX(/release ([^ ]+)/,A),debian:(A)=>A,fedora:(A)=>DX(/release (..)/,A),mint:(A)=>DX(/distrib_release=(.*)/,A),red:(A)=>DX(/release ([^ ]+)/,A),suse:(A)=>DX(/VERSION = (.*)\n/,A),ubuntu:(A)=>DX(/distrib_release=(.*)/,A)};function DX(A,Q){let B=A.exec(Q);return B?B[1]:void 0}async function oD0(){let A={kernel_version:rY.release(),name:"Mac OS X",version:`10.${Number(rY.release().split(".")[0])-4}`};try{let Q=await new Promise((B,Y)=>{gD0("/usr/bin/sw_vers",(J,C)=>{if(J){Y(J);return}B(C)})});A.name=DX(/^ProductName:\s+(.*)$/m,Q),A.version=DX(/^ProductVersion:\s+(.*)$/m,Q),A.build=DX(/^BuildVersion:\s+(.*)$/m,Q)}catch(Q){}return A}function t4Q(A){return A.split(" ")[0].toLowerCase()}async function tD0(){let A={kernel_version:rY.release(),name:"Linux"};try{let Q=await mD0("/etc"),B=rD0.find((G)=>Q.includes(G.name));if(!B)return A;let Y=fD0("/etc",B.name),J=(await bD0(Y,{encoding:"utf-8"})).toLowerCase(),{distros:C}=B;A.name=C.find((G)=>J.indexOf(t4Q(G))>=0)||C[0];let X=t4Q(A.name);A.version=aD0[X]?.(J)}catch(Q){}return A}function eD0(){if(process.env.VERCEL)return{"cloud.provider":"vercel","cloud.region":process.env.VERCEL_REGION};else if(process.env.AWS_REGION)return{"cloud.provider":"aws","cloud.region":process.env.AWS_REGION,"cloud.platform":process.env.AWS_EXECUTION_ENV};else if(process.env.GCP_PROJECT)return{"cloud.provider":"gcp"};else if(process.env.ALIYUN_REGION_ID)return{"cloud.provider":"alibaba_cloud","cloud.region":process.env.ALIYUN_REGION_ID};else if(process.env.WEBSITE_SITE_NAME&&process.env.REGION_NAME)return{"cloud.provider":"azure","cloud.region":process.env.REGION_NAME};else if(process.env.IBM_CLOUD_REGION)return{"cloud.provider":"ibm_cloud","cloud.region":process.env.IBM_CLOUD_REGION};else if(process.env.TENCENTCLOUD_REGION)return{"cloud.provider":"tencent_cloud","cloud.region":process.env.TENCENTCLOUD_REGION,"cloud.account.id":process.env.TENCENTCLOUD_APPID,"cloud.availability_zone":process.env.TENCENTCLOUD_ZONE};else if(process.env.NETLIFY)return{"cloud.provider":"netlify"};else if(process.env.FLY_REGION)return{"cloud.provider":"fly.io","cloud.region":process.env.FLY_REGION};else if(process.env.DYNO)return{"cloud.provider":"heroku"};else return}import{createReadStream as AN0}from"node:fs";import{createInterface as QN0}from"node:readline";var Xn=new m8(10),BUQ=new m8(20),BN0=7,YN0="ContextLines",JN0=1000,CN0=1e4;function XN0(A,Q,B){let Y=A.get(Q);if(Y===void 0)return A.set(Q,B),B;return Y}function GN0(A){if(A.startsWith("node:"))return!0;if(A.endsWith(".min.js"))return!0;if(A.endsWith(".min.cjs"))return!0;if(A.endsWith(".min.mjs"))return!0;if(A.startsWith("data:"))return!0;return!1}function WN0(A){if(A.lineno!==void 0&&A.lineno>CN0)return!0;if(A.colno!==void 0&&A.colno>JN0)return!0;return!1}function FN0(A,Q){let B=Xn.get(A);if(B===void 0)return!1;for(let Y=Q[0];Y<=Q[1];Y++)if(B[Y]===void 0)return!1;return!0}function ZN0(A,Q){if(!A.length)return[];let B=0,Y=A[0];if(typeof Y!=="number")return[];let J=QUQ(Y,Q),C=[];while(!0){if(B===A.length-1){C.push(J);break}let X=A[B+1];if(typeof X!=="number")break;if(X<=J[1])J[1]=X+Q;else C.push(J),J=QUQ(X,Q);B++}return C}function $N0(A,Q,B){return new Promise((Y,J)=>{let C=AN0(A),X=QN0({input:C});function G(){C.destroy(),Y()}let W=0,F=0,Z=Q[F];if(Z===void 0){G();return}let U=Z[0],$=Z[1];function E(K){BUQ.set(A,1),fQ&&e.error(`Failed to read file: ${A}. Error: ${K}`),X.close(),X.removeAllListeners(),G()}C.on("error",E),X.on("error",E),X.on("close",G),X.on("line",(K)=>{if(W++,W=$){if(F===Q.length-1){X.close(),X.removeAllListeners();return}F++;let I=Q[F];if(I===void 0){X.close(),X.removeAllListeners();return}U=I[0],$=I[1]}})})}async function UN0(A,Q){let B={};if(Q>0&&A.exception?.values)for(let C of A.exception.values){if(!C.stacktrace?.frames?.length)continue;for(let X=C.stacktrace.frames.length-1;X>=0;X--){let G=C.stacktrace.frames[X],W=G?.filename;if(!G||typeof W!=="string"||typeof G.lineno!=="number"||GN0(W)||WN0(G))continue;if(!B[W])B[W]=[];B[W].push(G.lineno)}}let Y=Object.keys(B);if(Y.length==0)return A;let J=[];for(let C of Y){if(BUQ.get(C))continue;let X=B[C];if(!X)continue;X.sort((F,Z)=>F-Z);let G=ZN0(X,Q);if(G.every((F)=>FN0(C,F)))continue;let W=XN0(Xn,C,{});J.push($N0(C,G,W))}if(await Promise.all(J).catch(()=>{fQ&&e.log("Failed to read one or more source files and resolve context lines")}),Q>0&&A.exception?.values){for(let C of A.exception.values)if(C.stacktrace?.frames&&C.stacktrace.frames.length>0)EN0(C.stacktrace.frames,Q,Xn)}return A}function EN0(A,Q,B){for(let Y of A)if(Y.filename&&Y.context_line===void 0&&typeof Y.lineno==="number"){let J=B.get(Y.filename);if(J===void 0)continue;KN0(Y.lineno,Y,Q,J)}}function AUQ(A){delete A.pre_context,delete A.context_line,delete A.post_context}function KN0(A,Q,B,Y){if(Q.lineno===void 0||Y===void 0){fQ&&e.error("Cannot resolve context for frame with no lineno or file contents");return}Q.pre_context=[];for(let C=YUQ(A,B);C{let Q=A.frameContextLines!==void 0?A.frameContextLines:BN0;return{name:YN0,processEvent(B){return UN0(B,Q)}}},_P=wA(VN0);import{Worker as IN0}from"node:worker_threads";var vP;async function TK(){if(vP===void 0)try{vP=!!(await import("node:inspector")).url()}catch(A){vP=!1}return vP}var hL="__SENTRY_ERROR_LOCAL_VARIABLES__";function XUQ(A,Q,B){let Y=0,J=5,C=0;return setInterval(()=>{if(C===0){if(Y>A){if(J*=2,B(J),J>86400)J=86400;C=J}}else if(C-=1,C===0)Q();Y=0},1000).unref(),()=>{Y+=1}}function CUQ(A){return A!==void 0&&(A.length===0||A==="?"||A==="")}function yP(A,Q){return A===Q||CUQ(A)&&CUQ(Q)}var HN0="LyohIEBzZW50cnkvbm9kZSA5LjIyLjAgKGNjYWJmYzIpIHwgaHR0cHM6Ly9naXRodWIuY29tL2dldHNlbnRyeS9zZW50cnktamF2YXNjcmlwdCAqLwppbXBvcnR7U2Vzc2lvbiBhcyBlfWZyb20ibm9kZTppbnNwZWN0b3IvcHJvbWlzZXMiO2ltcG9ydHt3b3JrZXJEYXRhIGFzIHR9ZnJvbSJub2RlOndvcmtlcl90aHJlYWRzIjtjb25zdCBuPSJ1bmRlZmluZWQiPT10eXBlb2YgX19TRU5UUllfREVCVUdfX3x8X19TRU5UUllfREVCVUdfXyxvPSI5LjIyLjAiLGk9Z2xvYmFsVGhpcztjb25zdCBhPVsiZGVidWciLCJpbmZvIiwid2FybiIsImVycm9yIiwibG9nIiwiYXNzZXJ0IiwidHJhY2UiXSxzPXt9O2Z1bmN0aW9uIGMoZSl7aWYoISgiY29uc29sZSJpbiBpKSlyZXR1cm4gZSgpO2NvbnN0IHQ9aS5jb25zb2xlLG49e30sbz1PYmplY3Qua2V5cyhzKTtvLmZvckVhY2goKGU9Pntjb25zdCBvPXNbZV07bltlXT10W2VdLHRbZV09b30pKTt0cnl7cmV0dXJuIGUoKX1maW5hbGx5e28uZm9yRWFjaCgoZT0+e3RbZV09bltlXX0pKX19IWZ1bmN0aW9uKGUsdCxuPWkpe2NvbnN0IGE9bi5fX1NFTlRSWV9fPW4uX19TRU5UUllfX3x8e30scz1hW29dPWFbb118fHt9O3NbZV18fChzW2VdPXQoKSl9KCJsb2dnZXIiLChmdW5jdGlvbigpe2xldCBlPSExO2NvbnN0IHQ9e2VuYWJsZTooKT0+e2U9ITB9LGRpc2FibGU6KCk9PntlPSExfSxpc0VuYWJsZWQ6KCk9PmV9O3JldHVybiBuP2EuZm9yRWFjaCgobj0+e3Rbbl09KC4uLnQpPT57ZSYmYygoKCk9PntpLmNvbnNvbGVbbl0oYFNlbnRyeSBMb2dnZXIgWyR7bn1dOmAsLi4udCl9KSl9fSkpOmEuZm9yRWFjaCgoZT0+e3RbZV09KCk9Pnt9fSkpLHR9KSk7Y29uc3Qgcj0iX19TRU5UUllfRVJST1JfTE9DQUxfVkFSSUFCTEVTX18iO2NvbnN0IHU9dDtmdW5jdGlvbiBsKC4uLmUpe3UuZGVidWcmJmMoKCgpPT5jb25zb2xlLmxvZygiW0xvY2FsVmFyaWFibGVzIFdvcmtlcl0iLC4uLmUpKSl9YXN5bmMgZnVuY3Rpb24gZihlLHQsbixvKXtjb25zdCBpPWF3YWl0IGUucG9zdCgiUnVudGltZS5nZXRQcm9wZXJ0aWVzIix7b2JqZWN0SWQ6dCxvd25Qcm9wZXJ0aWVzOiEwfSk7b1tuXT1pLnJlc3VsdC5maWx0ZXIoKGU9PiJsZW5ndGgiIT09ZS5uYW1lJiYhaXNOYU4ocGFyc2VJbnQoZS5uYW1lLDEwKSkpKS5zb3J0KCgoZSx0KT0+cGFyc2VJbnQoZS5uYW1lLDEwKS1wYXJzZUludCh0Lm5hbWUsMTApKSkubWFwKChlPT5lLnZhbHVlPy52YWx1ZSkpfWFzeW5jIGZ1bmN0aW9uIGcoZSx0LG4sbyl7Y29uc3QgaT1hd2FpdCBlLnBvc3QoIlJ1bnRpbWUuZ2V0UHJvcGVydGllcyIse29iamVjdElkOnQsb3duUHJvcGVydGllczohMH0pO29bbl09aS5yZXN1bHQubWFwKChlPT5bZS5uYW1lLGUudmFsdWU/LnZhbHVlXSkpLnJlZHVjZSgoKGUsW3Qsbl0pPT4oZVt0XT1uLGUpKSx7fSl9ZnVuY3Rpb24gZChlLHQpe2UudmFsdWUmJigidmFsdWUiaW4gZS52YWx1ZT92b2lkIDA9PT1lLnZhbHVlLnZhbHVlfHxudWxsPT09ZS52YWx1ZS52YWx1ZT90W2UubmFtZV09YDwke2UudmFsdWUudmFsdWV9PmA6dFtlLm5hbWVdPWUudmFsdWUudmFsdWU6ImRlc2NyaXB0aW9uImluIGUudmFsdWUmJiJmdW5jdGlvbiIhPT1lLnZhbHVlLnR5cGU/dFtlLm5hbWVdPWA8JHtlLnZhbHVlLmRlc2NyaXB0aW9ufT5gOiJ1bmRlZmluZWQiPT09ZS52YWx1ZS50eXBlJiYodFtlLm5hbWVdPSI8dW5kZWZpbmVkPiIpKX1hc3luYyBmdW5jdGlvbiBiKGUsdCl7Y29uc3Qgbj1hd2FpdCBlLnBvc3QoIlJ1bnRpbWUuZ2V0UHJvcGVydGllcyIse29iamVjdElkOnQsb3duUHJvcGVydGllczohMH0pLG89e307Zm9yKGNvbnN0IHQgb2Ygbi5yZXN1bHQpaWYodC52YWx1ZT8ub2JqZWN0SWQmJiJBcnJheSI9PT10LnZhbHVlLmNsYXNzTmFtZSl7Y29uc3Qgbj10LnZhbHVlLm9iamVjdElkO2F3YWl0IGYoZSxuLHQubmFtZSxvKX1lbHNlIGlmKHQudmFsdWU/Lm9iamVjdElkJiYiT2JqZWN0Ij09PXQudmFsdWUuY2xhc3NOYW1lKXtjb25zdCBuPXQudmFsdWUub2JqZWN0SWQ7YXdhaXQgZyhlLG4sdC5uYW1lLG8pfWVsc2UgdC52YWx1ZSYmZCh0LG8pO3JldHVybiBvfWxldCBwOyhhc3luYyBmdW5jdGlvbigpe2NvbnN0IHQ9bmV3IGU7dC5jb25uZWN0VG9NYWluVGhyZWFkKCksbCgiQ29ubmVjdGVkIHRvIG1haW4gdGhyZWFkIik7bGV0IG49ITE7dC5vbigiRGVidWdnZXIucmVzdW1lZCIsKCgpPT57bj0hMX0pKSx0Lm9uKCJEZWJ1Z2dlci5wYXVzZWQiLChlPT57bj0hMCxhc3luYyBmdW5jdGlvbihlLHtyZWFzb246dCxkYXRhOntvYmplY3RJZDpufSxjYWxsRnJhbWVzOm99KXtpZigiZXhjZXB0aW9uIiE9PXQmJiJwcm9taXNlUmVqZWN0aW9uIiE9PXQpcmV0dXJuO2lmKHA/LigpLG51bGw9PW4pcmV0dXJuO2NvbnN0IGk9W107Zm9yKGxldCB0PTA7dDxvLmxlbmd0aDt0Kyspe2NvbnN0e3Njb3BlQ2hhaW46bixmdW5jdGlvbk5hbWU6YSx0aGlzOnN9PW9bdF0sYz1uLmZpbmQoKGU9PiJsb2NhbCI9PT1lLnR5cGUpKSxyPSJnbG9iYWwiIT09cy5jbGFzc05hbWUmJnMuY2xhc3NOYW1lP2Ake3MuY2xhc3NOYW1lfS4ke2F9YDphO2lmKHZvaWQgMD09PWM/Lm9iamVjdC5vYmplY3RJZClpW3RdPXtmdW5jdGlvbjpyfTtlbHNle2NvbnN0IG49YXdhaXQgYihlLGMub2JqZWN0Lm9iamVjdElkKTtpW3RdPXtmdW5jdGlvbjpyLHZhcnM6bn19fWF3YWl0IGUucG9zdCgiUnVudGltZS5jYWxsRnVuY3Rpb25PbiIse2Z1bmN0aW9uRGVjbGFyYXRpb246YGZ1bmN0aW9uKCkgeyB0aGlzLiR7cn0gPSB0aGlzLiR7cn0gfHwgJHtKU09OLnN0cmluZ2lmeShpKX07IH1gLHNpbGVudDohMCxvYmplY3RJZDpufSksYXdhaXQgZS5wb3N0KCJSdW50aW1lLnJlbGVhc2VPYmplY3QiLHtvYmplY3RJZDpufSl9KHQsZS5wYXJhbXMpLnRoZW4oKGFzeW5jKCk9PntuJiZhd2FpdCB0LnBvc3QoIkRlYnVnZ2VyLnJlc3VtZSIpfSksKGFzeW5jIGU9PntuJiZhd2FpdCB0LnBvc3QoIkRlYnVnZ2VyLnJlc3VtZSIpfSkpfSkpLGF3YWl0IHQucG9zdCgiRGVidWdnZXIuZW5hYmxlIik7Y29uc3Qgbz0hMSE9PXUuY2FwdHVyZUFsbEV4Y2VwdGlvbnM7aWYoYXdhaXQgdC5wb3N0KCJEZWJ1Z2dlci5zZXRQYXVzZU9uRXhjZXB0aW9ucyIse3N0YXRlOm8/ImFsbCI6InVuY2F1Z2h0In0pLG8pe2NvbnN0IGU9dS5tYXhFeGNlcHRpb25zUGVyU2Vjb25kfHw1MDtwPWZ1bmN0aW9uKGUsdCxuKXtsZXQgbz0wLGk9NSxhPTA7cmV0dXJuIHNldEludGVydmFsKCgoKT0+ezA9PT1hP28+ZSYmKGkqPTIsbihpKSxpPjg2NDAwJiYoaT04NjQwMCksYT1pKTooYS09MSwwPT09YSYmdCgpKSxvPTB9KSwxZTMpLnVucmVmKCksKCk9PntvKz0xfX0oZSwoYXN5bmMoKT0+e2woIlJhdGUtbGltaXQgbGlmdGVkLiIpLGF3YWl0IHQucG9zdCgiRGVidWdnZXIuc2V0UGF1c2VPbkV4Y2VwdGlvbnMiLHtzdGF0ZToiYWxsIn0pfSksKGFzeW5jIGU9PntsKGBSYXRlLWxpbWl0IGV4Y2VlZGVkLiBEaXNhYmxpbmcgY2FwdHVyaW5nIG9mIGNhdWdodCBleGNlcHRpb25zIGZvciAke2V9IHNlY29uZHMuYCksYXdhaXQgdC5wb3N0KCJEZWJ1Z2dlci5zZXRQYXVzZU9uRXhjZXB0aW9ucyIse3N0YXRlOiJ1bmNhdWdodCJ9KX0pKX19KSgpLmNhdGNoKChlPT57bCgiRmFpbGVkIHRvIHN0YXJ0IGRlYnVnZ2VyIixlKX0pKSxzZXRJbnRlcnZhbCgoKCk9Pnt9KSwxZTQpOw==";function GUQ(...A){e.log("[LocalVariables]",...A)}var WUQ=wA((A={})=>{function Q(C,X){let G=(C.stacktrace?.frames||[]).filter((W)=>W.function!=="new Promise");for(let W=0;W{X.terminate()}),X.once("error",(G)=>{GUQ("Worker error",G)}),X.once("exit",(G)=>{GUQ("Worker exit",G)}),X.unref()}return{name:"LocalVariablesAsync",async setup(C){if(!C.getOptions().includeLocalVariables)return;if(await TK()){e.warn("Local variables capture has been disabled because the debugger was already enabled");return}let G={...A,debug:e.isEnabled()};Y().then(()=>{try{J(G)}catch(W){e.error("Failed to start worker",W)}},(W)=>{e.error("Failed to start inspector",W)})},processEvent(C,X){return B(C,X)}}});function FUQ(A){if(A===void 0)return;return A.slice(-10).reduce((Q,B)=>`${Q},${B.function},${B.lineno},${B.colno}`,"")}function DN0(A,Q){if(Q===void 0)return;return FUQ(A(Q,1))}function ZUQ(A){let Q=[],B=!1;function Y(X){if(Q=[],B)return;B=!0,A(X)}Q.push(Y);function J(X){Q.push(X)}function C(X){let G=Q.pop()||Y;try{G(X)}catch(W){Y(X)}}return{add:J,next:C}}class Gn{constructor(A){this._session=A}static async create(A){if(A)return A;let Q=await import("node:inspector");return new Gn(new Q.Session)}configureAndConnect(A,Q){this._session.connect(),this._session.on("Debugger.paused",(B)=>{A(B,()=>{this._session.post("Debugger.resume")})}),this._session.post("Debugger.enable"),this._session.post("Debugger.setPauseOnExceptions",{state:Q?"all":"uncaught"})}setPauseOnExceptions(A){this._session.post("Debugger.setPauseOnExceptions",{state:A?"all":"uncaught"})}getLocalVariables(A,Q){this._getProperties(A,(B)=>{let{add:Y,next:J}=ZUQ(Q);for(let C of B)if(C.value?.objectId&&C.value.className==="Array"){let X=C.value.objectId;Y((G)=>this._unrollArray(X,C.name,G,J))}else if(C.value?.objectId&&C.value.className==="Object"){let X=C.value.objectId;Y((G)=>this._unrollObject(X,C.name,G,J))}else if(C.value)Y((X)=>this._unrollOther(C,X,J));J({})})}_getProperties(A,Q){this._session.post("Runtime.getProperties",{objectId:A,ownProperties:!0},(B,Y)=>{if(B)Q([]);else Q(Y.result)})}_unrollArray(A,Q,B,Y){this._getProperties(A,(J)=>{B[Q]=J.filter((C)=>C.name!=="length"&&!isNaN(parseInt(C.name,10))).sort((C,X)=>parseInt(C.name,10)-parseInt(X.name,10)).map((C)=>C.value?.value),Y(B)})}_unrollObject(A,Q,B,Y){this._getProperties(A,(J)=>{B[Q]=J.map((C)=>[C.name,C.value?.value]).reduce((C,[X,G])=>{return C[X]=G,C},{}),Y(B)})}_unrollOther(A,Q,B){if(A.value){if("value"in A.value)if(A.value.value===void 0||A.value.value===null)Q[A.name]=`<${A.value.value}>`;else Q[A.name]=A.value.value;else if("description"in A.value&&A.value.type!=="function")Q[A.name]=`<${A.value.description}>`;else if(A.value.type==="undefined")Q[A.name]=""}B(Q)}}var NN0="LocalVariables",LN0=(A={},Q)=>{let B=new m8(20),Y,J=!1;function C(G){let W=FUQ(G.stacktrace?.frames);if(W===void 0)return;let F=B.remove(W);if(F===void 0)return;let Z=(G.stacktrace?.frames||[]).filter((U)=>U.function!=="new Promise");for(let U=0;U= v18.");return}if(await TK()){e.warn("Local variables capture has been disabled because the debugger was already enabled");return}Gn.create(Q).then((Z)=>{function U(E,{params:{reason:K,data:I,callFrames:V}},H){if(K!=="exception"&&K!=="promiseRejection"){H();return}Y?.();let D=DN0(E,I.description);if(D==null){H();return}let{add:L,next:z}=ZUQ((M)=>{B.set(D,M),H()});for(let M=0;Mj.type==="local"),_=w.className==="global"||!w.className?q:`${w.className}.${q}`;if(P?.object.objectId===void 0)L((j)=>{j[M]={function:_},z(j)});else{let j=P.object.objectId;L((k)=>Z.getLocalVariables(j,(T)=>{k[M]={function:_,vars:T},z(k)}))}}z([])}let $=A.captureAllExceptions!==!1;if(Z.configureAndConnect((E,K)=>U(W.stackParser,E,K),$),$){let E=A.maxExceptionsPerSecond||50;Y=XUQ(E,()=>{e.log("Local variables rate-limit lifted."),Z.setPauseOnExceptions(!0)},(K)=>{e.log(`Local variables rate-limit exceeded. Disabling capturing of caught exceptions for ${K} seconds.`),Z.setPauseOnExceptions(!1)})}J=!0},(Z)=>{e.log("The `LocalVariables` integration failed to start.",Z)})},processEvent(G){if(J)return X(G);return G},_getCachedFramesCount(){return B.size},_getFirstCachedFrame(){return B.values()[0]}}},$UQ=wA(LN0);var gP=(A={})=>{return LW.major<19?$UQ(A):WUQ(A)};import{existsSync as qN0,readFileSync as MN0}from"node:fs";import{dirname as zN0,join as RN0}from"node:path";function a5(){try{return typeof UUQ<"u"&&typeof dmY<"u"}catch{return!1}}var Wn,EUQ="Modules",wN0=()=>{if(!a5())return fQ&&e.warn("modulesIntegration only works in CommonJS (CJS) environments. Remove this integration if you are using ESM."),{name:EUQ};return{name:EUQ,processEvent(A){return A.modules={...A.modules,...PN0()},A}}},hP=wA(wN0);function jN0(){try{return u.cache?Object.keys(u.cache):[]}catch(A){return[]}}function ON0(){let A=u.main?.paths||[],Q=jN0(),B={},Y={};return Q.forEach((J)=>{let C=J,X=()=>{let G=C;if(C=zN0(G),!C||G===C||Y[G])return;if(A.indexOf(C)<0)return X();let W=RN0(G,"package.json");if(Y[G]=!0,!qN0(W))return X();try{let F=JSON.parse(MN0(W,"utf8"));B[F.name]=F.version}catch(F){}};X()}),B}function PN0(){if(!Wn)Wn=ON0();return Wn}var TN0=2000;function xL(A){f0(()=>{console.error(A)});let Q=gA();if(Q===void 0){fQ&&e.warn("No NodeClient was defined, we are exiting the process now."),global.process.exit(1);return}let B=Q.getOptions(),Y=B?.shutdownTimeout&&B.shutdownTimeout>0?B.shutdownTimeout:TN0;Q.close(Y).then((J)=>{if(!J)fQ&&e.warn("We reached the timeout for emptying the request buffer, still exiting now!");global.process.exit(1)},(J)=>{fQ&&e.error(J)})}var SN0="OnUncaughtException",xP=wA((A={})=>{let Q={exitEvenIfOtherHandlersAreRegistered:!1,...A};return{name:SN0,setup(B){global.process.on("uncaughtException",kN0(B,Q))}}});function kN0(A,Q){let Y=!1,J=!1,C=!1,X,G=A.getOptions();return Object.assign((W)=>{let F=xL;if(Q.onFatalError)F=Q.onFatalError;else if(G.onFatalError)F=G.onFatalError;let U=global.process.listeners("uncaughtException").filter((E)=>{return E.name!=="domainUncaughtExceptionClear"&&E.tag!=="sentry_tracingErrorCallback"&&E._errorHandler!==!0}).length===0,$=Q.exitEvenIfOtherHandlersAreRegistered||U;if(!Y){if(X=W,Y=!0,gA()===A)jB(W,{originalException:W,captureContext:{level:"fatal"},mechanism:{handled:!1,type:"onuncaughtexception"}});if(!C&&$)C=!0,F(W)}else if($){if(C)fQ&&e.warn("uncaught exception after calling fatal error shutdown callback - this is bad! forcing shutdown"),xL(W);else if(!J)J=!0,setTimeout(()=>{if(!C)C=!0,F(X,W)},2000)}},{_errorHandler:!0})}var _N0="OnUnhandledRejection",vN0=(A={})=>{let Q={mode:"warn",...A};return{name:_N0,setup(B){global.process.on("unhandledRejection",yN0(B,Q))}}},fP=wA(vN0);function yN0(A,Q){return function(Y,J){if(gA()!==A)return;let C=Q.mode==="strict"?"fatal":"error";jB(Y,{originalException:J,captureContext:{extra:{unhandledPromiseRejection:!0},level:C},mechanism:{handled:!1,type:"onunhandledrejection"}}),gN0(Y,Q.mode)}}function gN0(A,Q){let B="This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). The promise rejected with the reason:";if(Q==="warn")f0(()=>{console.warn(B),console.error(A&&typeof A==="object"&&"stack"in A?A.stack:A)});else if(Q==="strict")f0(()=>{console.warn(B)}),xL(A)}import{types as hN0}from"node:util";import{Worker as xN0}from"node:worker_threads";var{isPromise:fN0}=hN0,bN0="LyohIEBzZW50cnkvbm9kZSA5LjIyLjAgKGNjYWJmYzIpIHwgaHR0cHM6Ly9naXRodWIuY29tL2dldHNlbnRyeS9zZW50cnktamF2YXNjcmlwdCAqLwppbXBvcnR7U2Vzc2lvbiBhcyB0fWZyb20ibm9kZTppbnNwZWN0b3IiO2ltcG9ydHt3b3JrZXJEYXRhIGFzIG4scGFyZW50UG9ydCBhcyBlfWZyb20ibm9kZTp3b3JrZXJfdGhyZWFkcyI7aW1wb3J0e3Bvc2l4IGFzIHIsc2VwIGFzIG99ZnJvbSJub2RlOnBhdGgiO2ltcG9ydCphcyBzIGZyb20ibm9kZTpodHRwIjtpbXBvcnQqYXMgaSBmcm9tIm5vZGU6aHR0cHMiO2ltcG9ydHtSZWFkYWJsZSBhcyBjfWZyb20ibm9kZTpzdHJlYW0iO2ltcG9ydHtjcmVhdGVHemlwIGFzIHV9ZnJvbSJub2RlOnpsaWIiO2ltcG9ydCphcyBhIGZyb20ibm9kZTpuZXQiO2ltcG9ydCphcyBmIGZyb20ibm9kZTp0bHMiO2NvbnN0IGg9InVuZGVmaW5lZCI9PXR5cGVvZiBfX1NFTlRSWV9ERUJVR19ffHxfX1NFTlRSWV9ERUJVR19fLHA9IjkuMjIuMCIsbD1nbG9iYWxUaGlzO2Z1bmN0aW9uIGQoKXtyZXR1cm4gbShsKSxsfWZ1bmN0aW9uIG0odCl7Y29uc3Qgbj10Ll9fU0VOVFJZX189dC5fX1NFTlRSWV9ffHx7fTtyZXR1cm4gbi52ZXJzaW9uPW4udmVyc2lvbnx8cCxuW3BdPW5bcF18fHt9fWZ1bmN0aW9uIGcodCxuLGU9bCl7Y29uc3Qgcj1lLl9fU0VOVFJZX189ZS5fX1NFTlRSWV9ffHx7fSxvPXJbcF09cltwXXx8e307cmV0dXJuIG9bdF18fChvW3RdPW4oKSl9Y29uc3QgeT1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nO2Z1bmN0aW9uIGIodCxuKXtyZXR1cm4geS5jYWxsKHQpPT09YFtvYmplY3QgJHtufV1gfWZ1bmN0aW9uIF8odCl7cmV0dXJuIGIodCwiU3RyaW5nIil9ZnVuY3Rpb24gdih0KXtyZXR1cm4gYih0LCJPYmplY3QiKX1mdW5jdGlvbiB3KHQpe3JldHVybiBCb29sZWFuKHQ/LnRoZW4mJiJmdW5jdGlvbiI9PXR5cGVvZiB0LnRoZW4pfWZ1bmN0aW9uIFModCxuKXt0cnl7cmV0dXJuIHQgaW5zdGFuY2VvZiBufWNhdGNoKHQpe3JldHVybiExfX1jb25zdCAkPWwsRT04MDtmdW5jdGlvbiB4KHQsbil7Y29uc3QgZT10LHI9W107aWYoIWU/LnRhZ05hbWUpcmV0dXJuIiI7aWYoJC5IVE1MRWxlbWVudCYmZSBpbnN0YW5jZW9mIEhUTUxFbGVtZW50JiZlLmRhdGFzZXQpe2lmKGUuZGF0YXNldC5zZW50cnlDb21wb25lbnQpcmV0dXJuIGUuZGF0YXNldC5zZW50cnlDb21wb25lbnQ7aWYoZS5kYXRhc2V0LnNlbnRyeUVsZW1lbnQpcmV0dXJuIGUuZGF0YXNldC5zZW50cnlFbGVtZW50fXIucHVzaChlLnRhZ05hbWUudG9Mb3dlckNhc2UoKSk7Y29uc3Qgbz1uPy5sZW5ndGg/bi5maWx0ZXIoKHQ9PmUuZ2V0QXR0cmlidXRlKHQpKSkubWFwKCh0PT5bdCxlLmdldEF0dHJpYnV0ZSh0KV0pKTpudWxsO2lmKG8/Lmxlbmd0aClvLmZvckVhY2goKHQ9PntyLnB1c2goYFske3RbMF19PSIke3RbMV19Il1gKX0pKTtlbHNle2UuaWQmJnIucHVzaChgIyR7ZS5pZH1gKTtjb25zdCB0PWUuY2xhc3NOYW1lO2lmKHQmJl8odCkpe2NvbnN0IG49dC5zcGxpdCgvXHMrLyk7Zm9yKGNvbnN0IHQgb2YgbilyLnB1c2goYC4ke3R9YCl9fWNvbnN0IHM9WyJhcmlhLWxhYmVsIiwidHlwZSIsIm5hbWUiLCJ0aXRsZSIsImFsdCJdO2Zvcihjb25zdCB0IG9mIHMpe2NvbnN0IG49ZS5nZXRBdHRyaWJ1dGUodCk7biYmci5wdXNoKGBbJHt0fT0iJHtufSJdYCl9cmV0dXJuIHIuam9pbigiIil9Y29uc3QgTj1bImRlYnVnIiwiaW5mbyIsIndhcm4iLCJlcnJvciIsImxvZyIsImFzc2VydCIsInRyYWNlIl0sQz17fTtmdW5jdGlvbiBUKHQpe2lmKCEoImNvbnNvbGUiaW4gbCkpcmV0dXJuIHQoKTtjb25zdCBuPWwuY29uc29sZSxlPXt9LHI9T2JqZWN0LmtleXMoQyk7ci5mb3JFYWNoKCh0PT57Y29uc3Qgcj1DW3RdO2VbdF09blt0XSxuW3RdPXJ9KSk7dHJ5e3JldHVybiB0KCl9ZmluYWxseXtyLmZvckVhY2goKHQ9PntuW3RdPWVbdF19KSl9fWNvbnN0IGs9ZygibG9nZ2VyIiwoZnVuY3Rpb24oKXtsZXQgdD0hMTtjb25zdCBuPXtlbmFibGU6KCk9Pnt0PSEwfSxkaXNhYmxlOigpPT57dD0hMX0saXNFbmFibGVkOigpPT50fTtyZXR1cm4gaD9OLmZvckVhY2goKGU9PntuW2VdPSguLi5uKT0+e3QmJlQoKCgpPT57bC5jb25zb2xlW2VdKGBTZW50cnkgTG9nZ2VyIFske2V9XTpgLC4uLm4pfSkpfX0pKTpOLmZvckVhY2goKHQ9PntuW3RdPSgpPT57fX0pKSxufSkpO2Z1bmN0aW9uIGoodCxuPTApe3JldHVybiJzdHJpbmciIT10eXBlb2YgdHx8MD09PW58fHQubGVuZ3RoPD1uP3Q6YCR7dC5zbGljZSgwLG4pfS4uLmB9ZnVuY3Rpb24gUih0KXtpZihmdW5jdGlvbih0KXtzd2l0Y2goeS5jYWxsKHQpKXtjYXNlIltvYmplY3QgRXJyb3JdIjpjYXNlIltvYmplY3QgRXhjZXB0aW9uXSI6Y2FzZSJbb2JqZWN0IERPTUV4Y2VwdGlvbl0iOmNhc2UiW29iamVjdCBXZWJBc3NlbWJseS5FeGNlcHRpb25dIjpyZXR1cm4hMDtkZWZhdWx0OnJldHVybiBTKHQsRXJyb3IpfX0odCkpcmV0dXJue21lc3NhZ2U6dC5tZXNzYWdlLG5hbWU6dC5uYW1lLHN0YWNrOnQuc3RhY2ssLi4uTyh0KX07aWYobj10LCJ1bmRlZmluZWQiIT10eXBlb2YgRXZlbnQmJlMobixFdmVudCkpe2NvbnN0IG49e3R5cGU6dC50eXBlLHRhcmdldDpJKHQudGFyZ2V0KSxjdXJyZW50VGFyZ2V0OkkodC5jdXJyZW50VGFyZ2V0KSwuLi5PKHQpfTtyZXR1cm4idW5kZWZpbmVkIiE9dHlwZW9mIEN1c3RvbUV2ZW50JiZTKHQsQ3VzdG9tRXZlbnQpJiYobi5kZXRhaWw9dC5kZXRhaWwpLG59cmV0dXJuIHQ7dmFyIG59ZnVuY3Rpb24gSSh0KXt0cnl7cmV0dXJuIG49dCwidW5kZWZpbmVkIiE9dHlwZW9mIEVsZW1lbnQmJlMobixFbGVtZW50KT9mdW5jdGlvbih0LG49e30pe2lmKCF0KXJldHVybiI8dW5rbm93bj4iO3RyeXtsZXQgZT10O2NvbnN0IHI9NSxvPVtdO2xldCBzPTAsaT0wO2NvbnN0IGM9IiA+ICIsdT1jLmxlbmd0aDtsZXQgYTtjb25zdCBmPUFycmF5LmlzQXJyYXkobik/bjpuLmtleUF0dHJzLGg9IUFycmF5LmlzQXJyYXkobikmJm4ubWF4U3RyaW5nTGVuZ3RofHxFO2Zvcig7ZSYmcysrPHImJihhPXgoZSxmKSwhKCJodG1sIj09PWF8fHM+MSYmaStvLmxlbmd0aCp1K2EubGVuZ3RoPj1oKSk7KW8ucHVzaChhKSxpKz1hLmxlbmd0aCxlPWUucGFyZW50Tm9kZTtyZXR1cm4gby5yZXZlcnNlKCkuam9pbihjKX1jYXRjaCh0KXtyZXR1cm4iPHVua25vd24+In19KHQpOk9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbCh0KX1jYXRjaCh0KXtyZXR1cm4iPHVua25vd24+In12YXIgbn1mdW5jdGlvbiBPKHQpe2lmKCJvYmplY3QiPT10eXBlb2YgdCYmbnVsbCE9PXQpe2NvbnN0IG49e307Zm9yKGNvbnN0IGUgaW4gdClPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodCxlKSYmKG5bZV09dFtlXSk7cmV0dXJuIG59cmV0dXJue319ZnVuY3Rpb24gRCh0PWZ1bmN0aW9uKCl7Y29uc3QgdD1sO3JldHVybiB0LmNyeXB0b3x8dC5tc0NyeXB0b30oKSl7bGV0IG49KCk9PjE2Kk1hdGgucmFuZG9tKCk7dHJ5e2lmKHQ/LnJhbmRvbVVVSUQpcmV0dXJuIHQucmFuZG9tVVVJRCgpLnJlcGxhY2UoLy0vZywiIik7dD8uZ2V0UmFuZG9tVmFsdWVzJiYobj0oKT0+e2NvbnN0IG49bmV3IFVpbnQ4QXJyYXkoMSk7cmV0dXJuIHQuZ2V0UmFuZG9tVmFsdWVzKG4pLG5bMF19KX1jYXRjaCh0KXt9cmV0dXJuKFsxZTddKzFlMys0ZTMrOGUzKzFlMTEpLnJlcGxhY2UoL1swMThdL2csKHQ9Pih0XigxNSZuKCkpPj50LzQpLnRvU3RyaW5nKDE2KSkpfWNvbnN0IEE9MWUzO2Z1bmN0aW9uIFAoKXtyZXR1cm4gRGF0ZS5ub3coKS9BfWNvbnN0IFU9ZnVuY3Rpb24oKXtjb25zdHtwZXJmb3JtYW5jZTp0fT1sO2lmKCF0Py5ub3cpcmV0dXJuIFA7Y29uc3Qgbj1EYXRlLm5vdygpLXQubm93KCksZT1udWxsPT10LnRpbWVPcmlnaW4/bjp0LnRpbWVPcmlnaW47cmV0dXJuKCk9PihlK3Qubm93KCkpL0F9KCk7ZnVuY3Rpb24gTSh0KXtjb25zdCBuPVUoKSxlPXtzaWQ6RCgpLGluaXQ6ITAsdGltZXN0YW1wOm4sc3RhcnRlZDpuLGR1cmF0aW9uOjAsc3RhdHVzOiJvayIsZXJyb3JzOjAsaWdub3JlRHVyYXRpb246ITEsdG9KU09OOigpPT5mdW5jdGlvbih0KXtyZXR1cm57c2lkOmAke3Quc2lkfWAsaW5pdDp0LmluaXQsc3RhcnRlZDpuZXcgRGF0ZSgxZTMqdC5zdGFydGVkKS50b0lTT1N0cmluZygpLHRpbWVzdGFtcDpuZXcgRGF0ZSgxZTMqdC50aW1lc3RhbXApLnRvSVNPU3RyaW5nKCksc3RhdHVzOnQuc3RhdHVzLGVycm9yczp0LmVycm9ycyxkaWQ6Im51bWJlciI9PXR5cGVvZiB0LmRpZHx8InN0cmluZyI9PXR5cGVvZiB0LmRpZD9gJHt0LmRpZH1gOnZvaWQgMCxkdXJhdGlvbjp0LmR1cmF0aW9uLGFibm9ybWFsX21lY2hhbmlzbTp0LmFibm9ybWFsX21lY2hhbmlzbSxhdHRyczp7cmVsZWFzZTp0LnJlbGVhc2UsZW52aXJvbm1lbnQ6dC5lbnZpcm9ubWVudCxpcF9hZGRyZXNzOnQuaXBBZGRyZXNzLHVzZXJfYWdlbnQ6dC51c2VyQWdlbnR9fX0oZSl9O3JldHVybiB0JiZMKGUsdCksZX1mdW5jdGlvbiBMKHQsbj17fSl7aWYobi51c2VyJiYoIXQuaXBBZGRyZXNzJiZuLnVzZXIuaXBfYWRkcmVzcyYmKHQuaXBBZGRyZXNzPW4udXNlci5pcF9hZGRyZXNzKSx0LmRpZHx8bi5kaWR8fCh0LmRpZD1uLnVzZXIuaWR8fG4udXNlci5lbWFpbHx8bi51c2VyLnVzZXJuYW1lKSksdC50aW1lc3RhbXA9bi50aW1lc3RhbXB8fFUoKSxuLmFibm9ybWFsX21lY2hhbmlzbSYmKHQuYWJub3JtYWxfbWVjaGFuaXNtPW4uYWJub3JtYWxfbWVjaGFuaXNtKSxuLmlnbm9yZUR1cmF0aW9uJiYodC5pZ25vcmVEdXJhdGlvbj1uLmlnbm9yZUR1cmF0aW9uKSxuLnNpZCYmKHQuc2lkPTMyPT09bi5zaWQubGVuZ3RoP24uc2lkOkQoKSksdm9pZCAwIT09bi5pbml0JiYodC5pbml0PW4uaW5pdCksIXQuZGlkJiZuLmRpZCYmKHQuZGlkPWAke24uZGlkfWApLCJudW1iZXIiPT10eXBlb2Ygbi5zdGFydGVkJiYodC5zdGFydGVkPW4uc3RhcnRlZCksdC5pZ25vcmVEdXJhdGlvbil0LmR1cmF0aW9uPXZvaWQgMDtlbHNlIGlmKCJudW1iZXIiPT10eXBlb2Ygbi5kdXJhdGlvbil0LmR1cmF0aW9uPW4uZHVyYXRpb247ZWxzZXtjb25zdCBuPXQudGltZXN0YW1wLXQuc3RhcnRlZDt0LmR1cmF0aW9uPW4+PTA/bjowfW4ucmVsZWFzZSYmKHQucmVsZWFzZT1uLnJlbGVhc2UpLG4uZW52aXJvbm1lbnQmJih0LmVudmlyb25tZW50PW4uZW52aXJvbm1lbnQpLCF0LmlwQWRkcmVzcyYmbi5pcEFkZHJlc3MmJih0LmlwQWRkcmVzcz1uLmlwQWRkcmVzcyksIXQudXNlckFnZW50JiZuLnVzZXJBZ2VudCYmKHQudXNlckFnZW50PW4udXNlckFnZW50KSwibnVtYmVyIj09dHlwZW9mIG4uZXJyb3JzJiYodC5lcnJvcnM9bi5lcnJvcnMpLG4uc3RhdHVzJiYodC5zdGF0dXM9bi5zdGF0dXMpfWZ1bmN0aW9uIEIodCxuLGU9Mil7aWYoIW58fCJvYmplY3QiIT10eXBlb2Ygbnx8ZTw9MClyZXR1cm4gbjtpZih0JiYwPT09T2JqZWN0LmtleXMobikubGVuZ3RoKXJldHVybiB0O2NvbnN0IHI9ey4uLnR9O2Zvcihjb25zdCB0IGluIG4pT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG4sdCkmJihyW3RdPUIoclt0XSxuW3RdLGUtMSkpO3JldHVybiByfWNvbnN0IEc9Il9zZW50cnlTcGFuIjtmdW5jdGlvbiBKKHQsbil7bj9mdW5jdGlvbih0LG4sZSl7dHJ5e09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LG4se3ZhbHVlOmUsd3JpdGFibGU6ITAsY29uZmlndXJhYmxlOiEwfSl9Y2F0Y2goZSl7aCYmay5sb2coYEZhaWxlZCB0byBhZGQgbm9uLWVudW1lcmFibGUgcHJvcGVydHkgIiR7bn0iIHRvIG9iamVjdGAsdCl9fSh0LEcsbik6ZGVsZXRlIHRbR119ZnVuY3Rpb24geih0KXtyZXR1cm4gdFtHXX1mdW5jdGlvbiBIKCl7cmV0dXJuIEQoKX1mdW5jdGlvbiBGKCl7cmV0dXJuIEQoKS5zdWJzdHJpbmcoMTYpfWNsYXNzIFd7Y29uc3RydWN0b3IoKXt0aGlzLnQ9ITEsdGhpcy5vPVtdLHRoaXMuaT1bXSx0aGlzLnU9W10sdGhpcy5oPVtdLHRoaXMucD17fSx0aGlzLmw9e30sdGhpcy5tPXt9LHRoaXMuXz17fSx0aGlzLnY9e30sdGhpcy5TPXt0cmFjZUlkOkgoKSxzYW1wbGVSYW5kOk1hdGgucmFuZG9tKCl9fWNsb25lKCl7Y29uc3QgdD1uZXcgVztyZXR1cm4gdC51PVsuLi50aGlzLnVdLHQubD17Li4udGhpcy5sfSx0Lm09ey4uLnRoaXMubX0sdC5fPXsuLi50aGlzLl99LHRoaXMuXy5mbGFncyYmKHQuXy5mbGFncz17dmFsdWVzOlsuLi50aGlzLl8uZmxhZ3MudmFsdWVzXX0pLHQucD10aGlzLnAsdC5OPXRoaXMuTix0LkM9dGhpcy5DLHQuVD10aGlzLlQsdC5rPXRoaXMuayx0Lmk9Wy4uLnRoaXMuaV0sdC5oPVsuLi50aGlzLmhdLHQudj17Li4udGhpcy52fSx0LlM9ey4uLnRoaXMuU30sdC5qPXRoaXMuaix0LlI9dGhpcy5SLEoodCx6KHRoaXMpKSx0fXNldENsaWVudCh0KXt0aGlzLmo9dH1zZXRMYXN0RXZlbnRJZCh0KXt0aGlzLlI9dH1nZXRDbGllbnQoKXtyZXR1cm4gdGhpcy5qfWxhc3RFdmVudElkKCl7cmV0dXJuIHRoaXMuUn1hZGRTY29wZUxpc3RlbmVyKHQpe3RoaXMuby5wdXNoKHQpfWFkZEV2ZW50UHJvY2Vzc29yKHQpe3JldHVybiB0aGlzLmkucHVzaCh0KSx0aGlzfXNldFVzZXIodCl7cmV0dXJuIHRoaXMucD10fHx7ZW1haWw6dm9pZCAwLGlkOnZvaWQgMCxpcF9hZGRyZXNzOnZvaWQgMCx1c2VybmFtZTp2b2lkIDB9LHRoaXMuQyYmTCh0aGlzLkMse3VzZXI6dH0pLHRoaXMuSSgpLHRoaXN9Z2V0VXNlcigpe3JldHVybiB0aGlzLnB9c2V0VGFncyh0KXtyZXR1cm4gdGhpcy5sPXsuLi50aGlzLmwsLi4udH0sdGhpcy5JKCksdGhpc31zZXRUYWcodCxuKXtyZXR1cm4gdGhpcy5sPXsuLi50aGlzLmwsW3RdOm59LHRoaXMuSSgpLHRoaXN9c2V0RXh0cmFzKHQpe3JldHVybiB0aGlzLm09ey4uLnRoaXMubSwuLi50fSx0aGlzLkkoKSx0aGlzfXNldEV4dHJhKHQsbil7cmV0dXJuIHRoaXMubT17Li4udGhpcy5tLFt0XTpufSx0aGlzLkkoKSx0aGlzfXNldEZpbmdlcnByaW50KHQpe3JldHVybiB0aGlzLms9dCx0aGlzLkkoKSx0aGlzfXNldExldmVsKHQpe3JldHVybiB0aGlzLk49dCx0aGlzLkkoKSx0aGlzfXNldFRyYW5zYWN0aW9uTmFtZSh0KXtyZXR1cm4gdGhpcy5UPXQsdGhpcy5JKCksdGhpc31zZXRDb250ZXh0KHQsbil7cmV0dXJuIG51bGw9PT1uP2RlbGV0ZSB0aGlzLl9bdF06dGhpcy5fW3RdPW4sdGhpcy5JKCksdGhpc31zZXRTZXNzaW9uKHQpe3JldHVybiB0P3RoaXMuQz10OmRlbGV0ZSB0aGlzLkMsdGhpcy5JKCksdGhpc31nZXRTZXNzaW9uKCl7cmV0dXJuIHRoaXMuQ311cGRhdGUodCl7aWYoIXQpcmV0dXJuIHRoaXM7Y29uc3Qgbj0iZnVuY3Rpb24iPT10eXBlb2YgdD90KHRoaXMpOnQsZT1uIGluc3RhbmNlb2YgVz9uLmdldFNjb3BlRGF0YSgpOnYobik/dDp2b2lkIDAse3RhZ3M6cixleHRyYTpvLHVzZXI6cyxjb250ZXh0czppLGxldmVsOmMsZmluZ2VycHJpbnQ6dT1bXSxwcm9wYWdhdGlvbkNvbnRleHQ6YX09ZXx8e307cmV0dXJuIHRoaXMubD17Li4udGhpcy5sLC4uLnJ9LHRoaXMubT17Li4udGhpcy5tLC4uLm99LHRoaXMuXz17Li4udGhpcy5fLC4uLml9LHMmJk9iamVjdC5rZXlzKHMpLmxlbmd0aCYmKHRoaXMucD1zKSxjJiYodGhpcy5OPWMpLHUubGVuZ3RoJiYodGhpcy5rPXUpLGEmJih0aGlzLlM9YSksdGhpc31jbGVhcigpe3JldHVybiB0aGlzLnU9W10sdGhpcy5sPXt9LHRoaXMubT17fSx0aGlzLnA9e30sdGhpcy5fPXt9LHRoaXMuTj12b2lkIDAsdGhpcy5UPXZvaWQgMCx0aGlzLms9dm9pZCAwLHRoaXMuQz12b2lkIDAsSih0aGlzLHZvaWQgMCksdGhpcy5oPVtdLHRoaXMuc2V0UHJvcGFnYXRpb25Db250ZXh0KHt0cmFjZUlkOkgoKSxzYW1wbGVSYW5kOk1hdGgucmFuZG9tKCl9KSx0aGlzLkkoKSx0aGlzfWFkZEJyZWFkY3J1bWIodCxuKXtjb25zdCBlPSJudW1iZXIiPT10eXBlb2Ygbj9uOjEwMDtpZihlPD0wKXJldHVybiB0aGlzO2NvbnN0IHI9e3RpbWVzdGFtcDpQKCksLi4udCxtZXNzYWdlOnQubWVzc2FnZT9qKHQubWVzc2FnZSwyMDQ4KTp0Lm1lc3NhZ2V9O3JldHVybiB0aGlzLnUucHVzaChyKSx0aGlzLnUubGVuZ3RoPmUmJih0aGlzLnU9dGhpcy51LnNsaWNlKC1lKSx0aGlzLmo/LnJlY29yZERyb3BwZWRFdmVudCgiYnVmZmVyX292ZXJmbG93IiwibG9nX2l0ZW0iKSksdGhpcy5JKCksdGhpc31nZXRMYXN0QnJlYWRjcnVtYigpe3JldHVybiB0aGlzLnVbdGhpcy51Lmxlbmd0aC0xXX1jbGVhckJyZWFkY3J1bWJzKCl7cmV0dXJuIHRoaXMudT1bXSx0aGlzLkkoKSx0aGlzfWFkZEF0dGFjaG1lbnQodCl7cmV0dXJuIHRoaXMuaC5wdXNoKHQpLHRoaXN9Y2xlYXJBdHRhY2htZW50cygpe3JldHVybiB0aGlzLmg9W10sdGhpc31nZXRTY29wZURhdGEoKXtyZXR1cm57YnJlYWRjcnVtYnM6dGhpcy51LGF0dGFjaG1lbnRzOnRoaXMuaCxjb250ZXh0czp0aGlzLl8sdGFnczp0aGlzLmwsZXh0cmE6dGhpcy5tLHVzZXI6dGhpcy5wLGxldmVsOnRoaXMuTixmaW5nZXJwcmludDp0aGlzLmt8fFtdLGV2ZW50UHJvY2Vzc29yczp0aGlzLmkscHJvcGFnYXRpb25Db250ZXh0OnRoaXMuUyxzZGtQcm9jZXNzaW5nTWV0YWRhdGE6dGhpcy52LHRyYW5zYWN0aW9uTmFtZTp0aGlzLlQsc3Bhbjp6KHRoaXMpfX1zZXRTREtQcm9jZXNzaW5nTWV0YWRhdGEodCl7cmV0dXJuIHRoaXMudj1CKHRoaXMudix0LDIpLHRoaXN9c2V0UHJvcGFnYXRpb25Db250ZXh0KHQpe3JldHVybiB0aGlzLlM9dCx0aGlzfWdldFByb3BhZ2F0aW9uQ29udGV4dCgpe3JldHVybiB0aGlzLlN9Y2FwdHVyZUV4Y2VwdGlvbih0LG4pe2NvbnN0IGU9bj8uZXZlbnRfaWR8fEQoKTtpZighdGhpcy5qKXJldHVybiBrLndhcm4oIk5vIGNsaWVudCBjb25maWd1cmVkIG9uIHNjb3BlIC0gd2lsbCBub3QgY2FwdHVyZSBleGNlcHRpb24hIiksZTtjb25zdCByPW5ldyBFcnJvcigiU2VudHJ5IHN5bnRoZXRpY0V4Y2VwdGlvbiIpO3JldHVybiB0aGlzLmouY2FwdHVyZUV4Y2VwdGlvbih0LHtvcmlnaW5hbEV4Y2VwdGlvbjp0LHN5bnRoZXRpY0V4Y2VwdGlvbjpyLC4uLm4sZXZlbnRfaWQ6ZX0sdGhpcyksZX1jYXB0dXJlTWVzc2FnZSh0LG4sZSl7Y29uc3Qgcj1lPy5ldmVudF9pZHx8RCgpO2lmKCF0aGlzLmopcmV0dXJuIGsud2FybigiTm8gY2xpZW50IGNvbmZpZ3VyZWQgb24gc2NvcGUgLSB3aWxsIG5vdCBjYXB0dXJlIG1lc3NhZ2UhIikscjtjb25zdCBvPW5ldyBFcnJvcih0KTtyZXR1cm4gdGhpcy5qLmNhcHR1cmVNZXNzYWdlKHQsbix7b3JpZ2luYWxFeGNlcHRpb246dCxzeW50aGV0aWNFeGNlcHRpb246bywuLi5lLGV2ZW50X2lkOnJ9LHRoaXMpLHJ9Y2FwdHVyZUV2ZW50KHQsbil7Y29uc3QgZT1uPy5ldmVudF9pZHx8RCgpO3JldHVybiB0aGlzLmo/KHRoaXMuai5jYXB0dXJlRXZlbnQodCx7Li4ubixldmVudF9pZDplfSx0aGlzKSxlKTooay53YXJuKCJObyBjbGllbnQgY29uZmlndXJlZCBvbiBzY29wZSAtIHdpbGwgbm90IGNhcHR1cmUgZXZlbnQhIiksZSl9SSgpe3RoaXMudHx8KHRoaXMudD0hMCx0aGlzLm8uZm9yRWFjaCgodD0+e3QodGhpcyl9KSksdGhpcy50PSExKX19Y2xhc3MgWXtjb25zdHJ1Y3Rvcih0LG4pe2xldCBlLHI7ZT10fHxuZXcgVyxyPW58fG5ldyBXLHRoaXMuTz1be3Njb3BlOmV9XSx0aGlzLkQ9cn13aXRoU2NvcGUodCl7Y29uc3Qgbj10aGlzLkEoKTtsZXQgZTt0cnl7ZT10KG4pfWNhdGNoKHQpe3Rocm93IHRoaXMuUCgpLHR9cmV0dXJuIHcoZSk/ZS50aGVuKCh0PT4odGhpcy5QKCksdCkpLCh0PT57dGhyb3cgdGhpcy5QKCksdH0pKToodGhpcy5QKCksZSl9Z2V0Q2xpZW50KCl7cmV0dXJuIHRoaXMuZ2V0U3RhY2tUb3AoKS5jbGllbnR9Z2V0U2NvcGUoKXtyZXR1cm4gdGhpcy5nZXRTdGFja1RvcCgpLnNjb3BlfWdldElzb2xhdGlvblNjb3BlKCl7cmV0dXJuIHRoaXMuRH1nZXRTdGFja1RvcCgpe3JldHVybiB0aGlzLk9bdGhpcy5PLmxlbmd0aC0xXX1BKCl7Y29uc3QgdD10aGlzLmdldFNjb3BlKCkuY2xvbmUoKTtyZXR1cm4gdGhpcy5PLnB1c2goe2NsaWVudDp0aGlzLmdldENsaWVudCgpLHNjb3BlOnR9KSx0fVAoKXtyZXR1cm4hKHRoaXMuTy5sZW5ndGg8PTEpJiYhIXRoaXMuTy5wb3AoKX19ZnVuY3Rpb24gSygpe2NvbnN0IHQ9bShkKCkpO3JldHVybiB0LnN0YWNrPXQuc3RhY2t8fG5ldyBZKGcoImRlZmF1bHRDdXJyZW50U2NvcGUiLCgoKT0+bmV3IFcpKSxnKCJkZWZhdWx0SXNvbGF0aW9uU2NvcGUiLCgoKT0+bmV3IFcpKSl9ZnVuY3Rpb24gVih0KXtyZXR1cm4gSygpLndpdGhTY29wZSh0KX1mdW5jdGlvbiBaKHQsbil7Y29uc3QgZT1LKCk7cmV0dXJuIGUud2l0aFNjb3BlKCgoKT0+KGUuZ2V0U3RhY2tUb3AoKS5zY29wZT10LG4odCkpKSl9ZnVuY3Rpb24gcSh0KXtyZXR1cm4gSygpLndpdGhTY29wZSgoKCk9PnQoSygpLmdldElzb2xhdGlvblNjb3BlKCkpKSl9ZnVuY3Rpb24gUSh0KXtjb25zdCBuPW0odCk7cmV0dXJuIG4uYWNzP24uYWNzOnt3aXRoSXNvbGF0aW9uU2NvcGU6cSx3aXRoU2NvcGU6Vix3aXRoU2V0U2NvcGU6Wix3aXRoU2V0SXNvbGF0aW9uU2NvcGU6KHQsbik9PnEobiksZ2V0Q3VycmVudFNjb3BlOigpPT5LKCkuZ2V0U2NvcGUoKSxnZXRJc29sYXRpb25TY29wZTooKT0+SygpLmdldElzb2xhdGlvblNjb3BlKCl9fWZ1bmN0aW9uIFgoKXtyZXR1cm4gUShkKCkpLmdldEN1cnJlbnRTY29wZSgpLmdldENsaWVudCgpfWNvbnN0IHR0PSJzZW50cnkuc291cmNlIixudD0ic2VudHJ5LnNhbXBsZV9yYXRlIixldD0ic2VudHJ5LnByZXZpb3VzX3RyYWNlX3NhbXBsZV9yYXRlIixydD0ic2VudHJ5Lm9wIixvdD0ic2VudHJ5Lm9yaWdpbiIsc3Q9MCxpdD0xLGN0PSJfc2VudHJ5U2NvcGUiLHV0PSJfc2VudHJ5SXNvbGF0aW9uU2NvcGUiO2Z1bmN0aW9uIGF0KHQpe3JldHVybntzY29wZTp0W2N0XSxpc29sYXRpb25TY29wZTp0W3V0XX19Y29uc3QgZnQ9InNlbnRyeS0iLGh0PS9ec2VudHJ5LS87ZnVuY3Rpb24gcHQodCl7Y29uc3Qgbj1mdW5jdGlvbih0KXtpZighdHx8IV8odCkmJiFBcnJheS5pc0FycmF5KHQpKXJldHVybjtpZihBcnJheS5pc0FycmF5KHQpKXJldHVybiB0LnJlZHVjZSgoKHQsbik9Pntjb25zdCBlPWx0KG4pO3JldHVybiBPYmplY3QuZW50cmllcyhlKS5mb3JFYWNoKCgoW24sZV0pPT57dFtuXT1lfSkpLHR9KSx7fSk7cmV0dXJuIGx0KHQpfSh0KTtpZighbilyZXR1cm47Y29uc3QgZT1PYmplY3QuZW50cmllcyhuKS5yZWR1Y2UoKCh0LFtuLGVdKT0+e2lmKG4ubWF0Y2goaHQpKXt0W24uc2xpY2UoZnQubGVuZ3RoKV09ZX1yZXR1cm4gdH0pLHt9KTtyZXR1cm4gT2JqZWN0LmtleXMoZSkubGVuZ3RoPjA/ZTp2b2lkIDB9ZnVuY3Rpb24gbHQodCl7cmV0dXJuIHQuc3BsaXQoIiwiKS5tYXAoKHQ9PnQuc3BsaXQoIj0iKS5tYXAoKHQ9Pnt0cnl7cmV0dXJuIGRlY29kZVVSSUNvbXBvbmVudCh0LnRyaW0oKSl9Y2F0Y2h7cmV0dXJufX0pKSkpLnJlZHVjZSgoKHQsW24sZV0pPT4obiYmZSYmKHRbbl09ZSksdCkpLHt9KX1jb25zdCBkdD0xO2Z1bmN0aW9uIG10KHQpe2NvbnN0e3NwYW5JZDpuLHRyYWNlSWQ6ZSxpc1JlbW90ZTpyfT10LnNwYW5Db250ZXh0KCksbz1yP246X3QodCkucGFyZW50X3NwYW5faWQscz1hdCh0KS5zY29wZTtyZXR1cm57cGFyZW50X3NwYW5faWQ6byxzcGFuX2lkOnI/cz8uZ2V0UHJvcGFnYXRpb25Db250ZXh0KCkucHJvcGFnYXRpb25TcGFuSWR8fEYoKTpuLHRyYWNlX2lkOmV9fWZ1bmN0aW9uIGd0KHQpe3JldHVybiB0JiZ0Lmxlbmd0aD4wP3QubWFwKCgoe2NvbnRleHQ6e3NwYW5JZDp0LHRyYWNlSWQ6bix0cmFjZUZsYWdzOmUsLi4ucn0sYXR0cmlidXRlczpvfSk9Pih7c3Bhbl9pZDp0LHRyYWNlX2lkOm4sc2FtcGxlZDplPT09ZHQsYXR0cmlidXRlczpvLC4uLnJ9KSkpOnZvaWQgMH1mdW5jdGlvbiB5dCh0KXtyZXR1cm4ibnVtYmVyIj09dHlwZW9mIHQ/YnQodCk6QXJyYXkuaXNBcnJheSh0KT90WzBdK3RbMV0vMWU5OnQgaW5zdGFuY2VvZiBEYXRlP2J0KHQuZ2V0VGltZSgpKTpVKCl9ZnVuY3Rpb24gYnQodCl7cmV0dXJuIHQ+OTk5OTk5OTk5OT90LzFlMzp0fWZ1bmN0aW9uIF90KHQpe2lmKGZ1bmN0aW9uKHQpe3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiB0LmdldFNwYW5KU09OfSh0KSlyZXR1cm4gdC5nZXRTcGFuSlNPTigpO2NvbnN0e3NwYW5JZDpuLHRyYWNlSWQ6ZX09dC5zcGFuQ29udGV4dCgpO2lmKGZ1bmN0aW9uKHQpe2NvbnN0IG49dDtyZXR1cm4hIShuLmF0dHJpYnV0ZXMmJm4uc3RhcnRUaW1lJiZuLm5hbWUmJm4uZW5kVGltZSYmbi5zdGF0dXMpfSh0KSl7Y29uc3R7YXR0cmlidXRlczpyLHN0YXJ0VGltZTpvLG5hbWU6cyxlbmRUaW1lOmksc3RhdHVzOmMsbGlua3M6dX09dDtyZXR1cm57c3Bhbl9pZDpuLHRyYWNlX2lkOmUsZGF0YTpyLGRlc2NyaXB0aW9uOnMscGFyZW50X3NwYW5faWQ6InBhcmVudFNwYW5JZCJpbiB0P3QucGFyZW50U3BhbklkOiJwYXJlbnRTcGFuQ29udGV4dCJpbiB0P3QucGFyZW50U3BhbkNvbnRleHQ/LnNwYW5JZDp2b2lkIDAsc3RhcnRfdGltZXN0YW1wOnl0KG8pLHRpbWVzdGFtcDp5dChpKXx8dm9pZCAwLHN0YXR1czp2dChjKSxvcDpyW3J0XSxvcmlnaW46cltvdF0sbGlua3M6Z3QodSl9fXJldHVybntzcGFuX2lkOm4sdHJhY2VfaWQ6ZSxzdGFydF90aW1lc3RhbXA6MCxkYXRhOnt9fX1mdW5jdGlvbiB2dCh0KXtpZih0JiZ0LmNvZGUhPT1zdClyZXR1cm4gdC5jb2RlPT09aXQ/Im9rIjp0Lm1lc3NhZ2V8fCJ1bmtub3duX2Vycm9yIn1jb25zdCB3dD0iX3NlbnRyeVJvb3RTcGFuIjtmdW5jdGlvbiBTdCh0KXtyZXR1cm4gdFt3dF18fHR9Y29uc3QgJHQ9NTAsRXQ9Ij8iLHh0PS9jYXB0dXJlTWVzc2FnZXxjYXB0dXJlRXhjZXB0aW9uLztmdW5jdGlvbiBOdCh0KXtyZXR1cm4gdFt0Lmxlbmd0aC0xXXx8e319Y29uc3QgQ3Q9Ijxhbm9ueW1vdXM+Ijtjb25zdCBUdD0icHJvZHVjdGlvbiIsa3Q9L15vKFxkKylcLi87ZnVuY3Rpb24ganQodCxuPSExKXtjb25zdHtob3N0OmUscGF0aDpyLHBhc3M6byxwb3J0OnMscHJvamVjdElkOmkscHJvdG9jb2w6YyxwdWJsaWNLZXk6dX09dDtyZXR1cm5gJHtjfTovLyR7dX0ke24mJm8/YDoke299YDoiIn1AJHtlfSR7cz9gOiR7c31gOiIifS8ke3I/YCR7cn0vYDpyfSR7aX1gfWNvbnN0IFJ0PSJfZnJvemVuRHNjIjtmdW5jdGlvbiBJdCh0LG4pe2NvbnN0IGU9bi5nZXRPcHRpb25zKCkse3B1YmxpY0tleTpyLGhvc3Q6b309bi5nZXREc24oKXx8e307bGV0IHM7ZS5vcmdJZD9zPVN0cmluZyhlLm9yZ0lkKTpvJiYocz1mdW5jdGlvbih0KXtjb25zdCBuPXQubWF0Y2goa3QpO3JldHVybiBuPy5bMV19KG8pKTtjb25zdCBpPXtlbnZpcm9ubWVudDplLmVudmlyb25tZW50fHxUdCxyZWxlYXNlOmUucmVsZWFzZSxwdWJsaWNfa2V5OnIsdHJhY2VfaWQ6dCxvcmdfaWQ6c307cmV0dXJuIG4uZW1pdCgiY3JlYXRlRHNjIixpKSxpfWZ1bmN0aW9uIE90KHQpe2NvbnN0IG49WCgpO2lmKCFuKXJldHVybnt9O2NvbnN0IGU9U3QodCkscj1fdChlKSxvPXIuZGF0YSxzPWUuc3BhbkNvbnRleHQoKS50cmFjZVN0YXRlLGk9cz8uZ2V0KCJzZW50cnkuc2FtcGxlX3JhdGUiKT8/b1tudF0/P29bZXRdO2Z1bmN0aW9uIGModCl7cmV0dXJuIm51bWJlciIhPXR5cGVvZiBpJiYic3RyaW5nIiE9dHlwZW9mIGl8fCh0LnNhbXBsZV9yYXRlPWAke2l9YCksdH1jb25zdCB1PWVbUnRdO2lmKHUpcmV0dXJuIGModSk7Y29uc3QgYT1zPy5nZXQoInNlbnRyeS5kc2MiKSxmPWEmJnB0KGEpO2lmKGYpcmV0dXJuIGMoZik7Y29uc3QgaD1JdCh0LnNwYW5Db250ZXh0KCkudHJhY2VJZCxuKSxwPW9bdHRdLGw9ci5kZXNjcmlwdGlvbjtyZXR1cm4idXJsIiE9PXAmJmwmJihoLnRyYW5zYWN0aW9uPWwpLGZ1bmN0aW9uKHQpe2lmKCJib29sZWFuIj09dHlwZW9mIF9fU0VOVFJZX1RSQUNJTkdfXyYmIV9fU0VOVFJZX1RSQUNJTkdfXylyZXR1cm4hMTtjb25zdCBuPXR8fFgoKT8uZ2V0T3B0aW9ucygpO3JldHVybiEoIW58fG51bGw9PW4udHJhY2VzU2FtcGxlUmF0ZSYmIW4udHJhY2VzU2FtcGxlcil9KCkmJihoLnNhbXBsZWQ9U3RyaW5nKGZ1bmN0aW9uKHQpe2NvbnN0e3RyYWNlRmxhZ3M6bn09dC5zcGFuQ29udGV4dCgpO3JldHVybiBuPT09ZHR9KGUpKSxoLnNhbXBsZV9yYW5kPXM/LmdldCgic2VudHJ5LnNhbXBsZV9yYW5kIik/P2F0KGUpLnNjb3BlPy5nZXRQcm9wYWdhdGlvbkNvbnRleHQoKS5zYW1wbGVSYW5kLnRvU3RyaW5nKCkpLGMoaCksbi5lbWl0KCJjcmVhdGVEc2MiLGgsZSksaH1mdW5jdGlvbiBEdCh0LG49MTAwLGU9MS8wKXt0cnl7cmV0dXJuIEF0KCIiLHQsbixlKX1jYXRjaCh0KXtyZXR1cm57RVJST1I6YCoqbm9uLXNlcmlhbGl6YWJsZSoqICgke3R9KWB9fX1mdW5jdGlvbiBBdCh0LG4sZT0xLzAscj0xLzAsbz1mdW5jdGlvbigpe2NvbnN0IHQ9bmV3IFdlYWtTZXQ7ZnVuY3Rpb24gbihuKXtyZXR1cm4hIXQuaGFzKG4pfHwodC5hZGQobiksITEpfWZ1bmN0aW9uIGUobil7dC5kZWxldGUobil9cmV0dXJuW24sZV19KCkpe2NvbnN0W3MsaV09bztpZihudWxsPT1ufHxbImJvb2xlYW4iLCJzdHJpbmciXS5pbmNsdWRlcyh0eXBlb2Ygbil8fCJudW1iZXIiPT10eXBlb2YgbiYmTnVtYmVyLmlzRmluaXRlKG4pKXJldHVybiBuO2NvbnN0IGM9ZnVuY3Rpb24odCxuKXt0cnl7aWYoImRvbWFpbiI9PT10JiZuJiYib2JqZWN0Ij09dHlwZW9mIG4mJm4uVSlyZXR1cm4iW0RvbWFpbl0iO2lmKCJkb21haW5FbWl0dGVyIj09PXQpcmV0dXJuIltEb21haW5FbWl0dGVyXSI7aWYoInVuZGVmaW5lZCIhPXR5cGVvZiBnbG9iYWwmJm49PT1nbG9iYWwpcmV0dXJuIltHbG9iYWxdIjtpZigidW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdyYmbj09PXdpbmRvdylyZXR1cm4iW1dpbmRvd10iO2lmKCJ1bmRlZmluZWQiIT10eXBlb2YgZG9jdW1lbnQmJm49PT1kb2N1bWVudClyZXR1cm4iW0RvY3VtZW50XSI7aWYoIm9iamVjdCI9PXR5cGVvZihlPW4pJiZudWxsIT09ZSYmKGUuX19pc1Z1ZXx8ZS5NKSlyZXR1cm4iW1Z1ZVZpZXdNb2RlbF0iO2lmKGZ1bmN0aW9uKHQpe3JldHVybiB2KHQpJiYibmF0aXZlRXZlbnQiaW4gdCYmInByZXZlbnREZWZhdWx0ImluIHQmJiJzdG9wUHJvcGFnYXRpb24iaW4gdH0obikpcmV0dXJuIltTeW50aGV0aWNFdmVudF0iO2lmKCJudW1iZXIiPT10eXBlb2YgbiYmIU51bWJlci5pc0Zpbml0ZShuKSlyZXR1cm5gWyR7bn1dYDtpZigiZnVuY3Rpb24iPT10eXBlb2YgbilyZXR1cm5gW0Z1bmN0aW9uOiAke2Z1bmN0aW9uKHQpe3RyeXtyZXR1cm4gdCYmImZ1bmN0aW9uIj09dHlwZW9mIHQmJnQubmFtZXx8Q3R9Y2F0Y2godCl7cmV0dXJuIEN0fX0obil9XWA7aWYoInN5bWJvbCI9PXR5cGVvZiBuKXJldHVybmBbJHtTdHJpbmcobil9XWA7aWYoImJpZ2ludCI9PXR5cGVvZiBuKXJldHVybmBbQmlnSW50OiAke1N0cmluZyhuKX1dYDtjb25zdCByPWZ1bmN0aW9uKHQpe2NvbnN0IG49T2JqZWN0LmdldFByb3RvdHlwZU9mKHQpO3JldHVybiBuPy5jb25zdHJ1Y3Rvcj9uLmNvbnN0cnVjdG9yLm5hbWU6Im51bGwgcHJvdG90eXBlIn0obik7cmV0dXJuL15IVE1MKFx3KilFbGVtZW50JC8udGVzdChyKT9gW0hUTUxFbGVtZW50OiAke3J9XWA6YFtvYmplY3QgJHtyfV1gfWNhdGNoKHQpe3JldHVybmAqKm5vbi1zZXJpYWxpemFibGUqKiAoJHt0fSlgfXZhciBlfSh0LG4pO2lmKCFjLnN0YXJ0c1dpdGgoIltvYmplY3QgIikpcmV0dXJuIGM7aWYobi5fX3NlbnRyeV9za2lwX25vcm1hbGl6YXRpb25fXylyZXR1cm4gbjtjb25zdCB1PSJudW1iZXIiPT10eXBlb2Ygbi5fX3NlbnRyeV9vdmVycmlkZV9ub3JtYWxpemF0aW9uX2RlcHRoX18/bi5fX3NlbnRyeV9vdmVycmlkZV9ub3JtYWxpemF0aW9uX2RlcHRoX186ZTtpZigwPT09dSlyZXR1cm4gYy5yZXBsYWNlKCJvYmplY3QgIiwiIik7aWYocyhuKSlyZXR1cm4iW0NpcmN1bGFyIH5dIjtjb25zdCBhPW47aWYoYSYmImZ1bmN0aW9uIj09dHlwZW9mIGEudG9KU09OKXRyeXtyZXR1cm4gQXQoIiIsYS50b0pTT04oKSx1LTEscixvKX1jYXRjaCh0KXt9Y29uc3QgZj1BcnJheS5pc0FycmF5KG4pP1tdOnt9O2xldCBoPTA7Y29uc3QgcD1SKG4pO2Zvcihjb25zdCB0IGluIHApe2lmKCFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocCx0KSljb250aW51ZTtpZihoPj1yKXtmW3RdPSJbTWF4UHJvcGVydGllcyB+XSI7YnJlYWt9Y29uc3Qgbj1wW3RdO2ZbdF09QXQodCxuLHUtMSxyLG8pLGgrK31yZXR1cm4gaShuKSxmfWZ1bmN0aW9uIFB0KHQsbil7Y29uc3QgZT1uLnJlcGxhY2UoL1xcL2csIi8iKS5yZXBsYWNlKC9bfFxce30oKVtcXV4kKyo/Ll0vZywiXFwkJiIpO2xldCByPXQ7dHJ5e3I9ZGVjb2RlVVJJKHQpfWNhdGNoKHQpe31yZXR1cm4gci5yZXBsYWNlKC9cXC9nLCIvIikucmVwbGFjZSgvd2VicGFjazpcLz8vZywiIikucmVwbGFjZShuZXcgUmVnRXhwKGAoZmlsZTovLyk/Lyoke2V9LypgLCJpZyIpLCJhcHA6Ly8vIil9ZnVuY3Rpb24gVXQodCxuPVtdKXtyZXR1cm5bdCxuXX1mdW5jdGlvbiBNdCh0LG4pe2NvbnN0IGU9dFsxXTtmb3IoY29uc3QgdCBvZiBlKXtpZihuKHQsdFswXS50eXBlKSlyZXR1cm4hMH1yZXR1cm4hMX1mdW5jdGlvbiBMdCh0KXtjb25zdCBuPW0obCk7cmV0dXJuIG4uZW5jb2RlUG9seWZpbGw/bi5lbmNvZGVQb2x5ZmlsbCh0KToobmV3IFRleHRFbmNvZGVyKS5lbmNvZGUodCl9ZnVuY3Rpb24gQnQodCl7Y29uc3RbbixlXT10O2xldCByPUpTT04uc3RyaW5naWZ5KG4pO2Z1bmN0aW9uIG8odCl7InN0cmluZyI9PXR5cGVvZiByP3I9InN0cmluZyI9PXR5cGVvZiB0P3IrdDpbTHQociksdF06ci5wdXNoKCJzdHJpbmciPT10eXBlb2YgdD9MdCh0KTp0KX1mb3IoY29uc3QgdCBvZiBlKXtjb25zdFtuLGVdPXQ7aWYobyhgXG4ke0pTT04uc3RyaW5naWZ5KG4pfVxuYCksInN0cmluZyI9PXR5cGVvZiBlfHxlIGluc3RhbmNlb2YgVWludDhBcnJheSlvKGUpO2Vsc2V7bGV0IHQ7dHJ5e3Q9SlNPTi5zdHJpbmdpZnkoZSl9Y2F0Y2gobil7dD1KU09OLnN0cmluZ2lmeShEdChlKSl9byh0KX19cmV0dXJuInN0cmluZyI9PXR5cGVvZiByP3I6ZnVuY3Rpb24odCl7Y29uc3Qgbj10LnJlZHVjZSgoKHQsbik9PnQrbi5sZW5ndGgpLDApLGU9bmV3IFVpbnQ4QXJyYXkobik7bGV0IHI9MDtmb3IoY29uc3QgbiBvZiB0KWUuc2V0KG4scikscis9bi5sZW5ndGg7cmV0dXJuIGV9KHIpfWNvbnN0IEd0PXtzZXNzaW9uOiJzZXNzaW9uIixzZXNzaW9uczoic2Vzc2lvbiIsYXR0YWNobWVudDoiYXR0YWNobWVudCIsdHJhbnNhY3Rpb246InRyYW5zYWN0aW9uIixldmVudDoiZXJyb3IiLGNsaWVudF9yZXBvcnQ6ImludGVybmFsIix1c2VyX3JlcG9ydDoiZGVmYXVsdCIscHJvZmlsZToicHJvZmlsZSIscHJvZmlsZV9jaHVuazoicHJvZmlsZSIscmVwbGF5X2V2ZW50OiJyZXBsYXkiLHJlcGxheV9yZWNvcmRpbmc6InJlcGxheSIsY2hlY2tfaW46Im1vbml0b3IiLGZlZWRiYWNrOiJmZWVkYmFjayIsc3Bhbjoic3BhbiIscmF3X3NlY3VyaXR5OiJzZWN1cml0eSIsbG9nOiJsb2dfaXRlbSJ9O2Z1bmN0aW9uIEp0KHQpe2lmKCF0Py5zZGspcmV0dXJuO2NvbnN0e25hbWU6bix2ZXJzaW9uOmV9PXQuc2RrO3JldHVybntuYW1lOm4sdmVyc2lvbjplfX1mdW5jdGlvbiB6dCh0LG4sZSxyKXtjb25zdCBvPUp0KGUpLHM9dC50eXBlJiYicmVwbGF5X2V2ZW50IiE9PXQudHlwZT90LnR5cGU6ImV2ZW50IjshZnVuY3Rpb24odCxuKXtuJiYodC5zZGs9dC5zZGt8fHt9LHQuc2RrLm5hbWU9dC5zZGsubmFtZXx8bi5uYW1lLHQuc2RrLnZlcnNpb249dC5zZGsudmVyc2lvbnx8bi52ZXJzaW9uLHQuc2RrLmludGVncmF0aW9ucz1bLi4udC5zZGsuaW50ZWdyYXRpb25zfHxbXSwuLi5uLmludGVncmF0aW9uc3x8W11dLHQuc2RrLnBhY2thZ2VzPVsuLi50LnNkay5wYWNrYWdlc3x8W10sLi4ubi5wYWNrYWdlc3x8W11dKX0odCxlPy5zZGspO2NvbnN0IGk9ZnVuY3Rpb24odCxuLGUscil7Y29uc3Qgbz10LnNka1Byb2Nlc3NpbmdNZXRhZGF0YT8uZHluYW1pY1NhbXBsaW5nQ29udGV4dDtyZXR1cm57ZXZlbnRfaWQ6dC5ldmVudF9pZCxzZW50X2F0OihuZXcgRGF0ZSkudG9JU09TdHJpbmcoKSwuLi5uJiZ7c2RrOm59LC4uLiEhZSYmciYme2RzbjpqdChyKX0sLi4ubyYme3RyYWNlOm99fX0odCxvLHIsbik7ZGVsZXRlIHQuc2RrUHJvY2Vzc2luZ01ldGFkYXRhO3JldHVybiBVdChpLFtbe3R5cGU6c30sdF1dKX1jb25zdCBIdD0iX19TRU5UUllfU1VQUFJFU1NfVFJBQ0lOR19fIjtmdW5jdGlvbiBGdCh0KXtjb25zdCBuPVEoZCgpKTtyZXR1cm4gbi5zdXBwcmVzc1RyYWNpbmc/bi5zdXBwcmVzc1RyYWNpbmcodCk6ZnVuY3Rpb24oLi4udCl7Y29uc3Qgbj1RKGQoKSk7aWYoMj09PXQubGVuZ3RoKXtjb25zdFtlLHJdPXQ7cmV0dXJuIGU/bi53aXRoU2V0U2NvcGUoZSxyKTpuLndpdGhTY29wZShyKX1yZXR1cm4gbi53aXRoU2NvcGUodFswXSl9KChuPT4obi5zZXRTREtQcm9jZXNzaW5nTWV0YWRhdGEoe1tIdF06ITB9KSx0KCkpKSl9dmFyIFd0O2Z1bmN0aW9uIFl0KHQpe3JldHVybiBuZXcgS3QoKG49PntuKHQpfSkpfSFmdW5jdGlvbih0KXt0W3QuUEVORElORz0wXT0iUEVORElORyI7dFt0LlJFU09MVkVEPTFdPSJSRVNPTFZFRCI7dFt0LlJFSkVDVEVEPTJdPSJSRUpFQ1RFRCJ9KFd0fHwoV3Q9e30pKTtjbGFzcyBLdHtjb25zdHJ1Y3Rvcih0KXt0aGlzLkw9V3QuUEVORElORyx0aGlzLkI9W10sdGhpcy5HKHQpfXRoZW4odCxuKXtyZXR1cm4gbmV3IEt0KCgoZSxyKT0+e3RoaXMuQi5wdXNoKFshMSxuPT57aWYodCl0cnl7ZSh0KG4pKX1jYXRjaCh0KXtyKHQpfWVsc2UgZShuKX0sdD0+e2lmKG4pdHJ5e2Uobih0KSl9Y2F0Y2godCl7cih0KX1lbHNlIHIodCl9XSksdGhpcy5KKCl9KSl9Y2F0Y2godCl7cmV0dXJuIHRoaXMudGhlbigodD0+dCksdCl9ZmluYWxseSh0KXtyZXR1cm4gbmV3IEt0KCgobixlKT0+e2xldCByLG87cmV0dXJuIHRoaXMudGhlbigobj0+e289ITEscj1uLHQmJnQoKX0pLChuPT57bz0hMCxyPW4sdCYmdCgpfSkpLnRoZW4oKCgpPT57bz9lKHIpOm4ocil9KSl9KSl9Sigpe2lmKHRoaXMuTD09PVd0LlBFTkRJTkcpcmV0dXJuO2NvbnN0IHQ9dGhpcy5CLnNsaWNlKCk7dGhpcy5CPVtdLHQuZm9yRWFjaCgodD0+e3RbMF18fCh0aGlzLkw9PT1XdC5SRVNPTFZFRCYmdFsxXSh0aGlzLkgpLHRoaXMuTD09PVd0LlJFSkVDVEVEJiZ0WzJdKHRoaXMuSCksdFswXT0hMCl9KSl9Ryh0KXtjb25zdCBuPSh0LG4pPT57dGhpcy5MPT09V3QuUEVORElORyYmKHcobik/bi50aGVuKGUscik6KHRoaXMuTD10LHRoaXMuSD1uLHRoaXMuSigpKSl9LGU9dD0+e24oV3QuUkVTT0xWRUQsdCl9LHI9dD0+e24oV3QuUkVKRUNURUQsdCl9O3RyeXt0KGUscil9Y2F0Y2godCl7cih0KX19fWZ1bmN0aW9uIFZ0KHQsbil7Y29uc3R7ZmluZ2VycHJpbnQ6ZSxzcGFuOnIsYnJlYWRjcnVtYnM6byxzZGtQcm9jZXNzaW5nTWV0YWRhdGE6c309bjshZnVuY3Rpb24odCxuKXtjb25zdHtleHRyYTplLHRhZ3M6cix1c2VyOm8sY29udGV4dHM6cyxsZXZlbDppLHRyYW5zYWN0aW9uTmFtZTpjfT1uO09iamVjdC5rZXlzKGUpLmxlbmd0aCYmKHQuZXh0cmE9ey4uLmUsLi4udC5leHRyYX0pO09iamVjdC5rZXlzKHIpLmxlbmd0aCYmKHQudGFncz17Li4uciwuLi50LnRhZ3N9KTtPYmplY3Qua2V5cyhvKS5sZW5ndGgmJih0LnVzZXI9ey4uLm8sLi4udC51c2VyfSk7T2JqZWN0LmtleXMocykubGVuZ3RoJiYodC5jb250ZXh0cz17Li4ucywuLi50LmNvbnRleHRzfSk7aSYmKHQubGV2ZWw9aSk7YyYmInRyYW5zYWN0aW9uIiE9PXQudHlwZSYmKHQudHJhbnNhY3Rpb249Yyl9KHQsbiksciYmZnVuY3Rpb24odCxuKXt0LmNvbnRleHRzPXt0cmFjZTptdChuKSwuLi50LmNvbnRleHRzfSx0LnNka1Byb2Nlc3NpbmdNZXRhZGF0YT17ZHluYW1pY1NhbXBsaW5nQ29udGV4dDpPdChuKSwuLi50LnNka1Byb2Nlc3NpbmdNZXRhZGF0YX07Y29uc3QgZT1TdChuKSxyPV90KGUpLmRlc2NyaXB0aW9uO3ImJiF0LnRyYW5zYWN0aW9uJiYidHJhbnNhY3Rpb24iPT09dC50eXBlJiYodC50cmFuc2FjdGlvbj1yKX0odCxyKSxmdW5jdGlvbih0LG4pe3QuZmluZ2VycHJpbnQ9dC5maW5nZXJwcmludD9BcnJheS5pc0FycmF5KHQuZmluZ2VycHJpbnQpP3QuZmluZ2VycHJpbnQ6W3QuZmluZ2VycHJpbnRdOltdLG4mJih0LmZpbmdlcnByaW50PXQuZmluZ2VycHJpbnQuY29uY2F0KG4pKTt0LmZpbmdlcnByaW50Lmxlbmd0aHx8ZGVsZXRlIHQuZmluZ2VycHJpbnR9KHQsZSksZnVuY3Rpb24odCxuKXtjb25zdCBlPVsuLi50LmJyZWFkY3J1bWJzfHxbXSwuLi5uXTt0LmJyZWFkY3J1bWJzPWUubGVuZ3RoP2U6dm9pZCAwfSh0LG8pLGZ1bmN0aW9uKHQsbil7dC5zZGtQcm9jZXNzaW5nTWV0YWRhdGE9ey4uLnQuc2RrUHJvY2Vzc2luZ01ldGFkYXRhLC4uLm59fSh0LHMpfWNvbnN0IFp0PSI3Ijtjb25zdCBxdD1TeW1ib2wuZm9yKCJTZW50cnlCdWZmZXJGdWxsRXJyb3IiKTtmdW5jdGlvbiBRdCh0KXtjb25zdCBuPVtdO2Z1bmN0aW9uIGUodCl7cmV0dXJuIG4uc3BsaWNlKG4uaW5kZXhPZih0KSwxKVswXXx8UHJvbWlzZS5yZXNvbHZlKHZvaWQgMCl9cmV0dXJueyQ6bixhZGQ6ZnVuY3Rpb24ocil7aWYoISh2b2lkIDA9PT10fHxuLmxlbmd0aDx0KSlyZXR1cm4gbz1xdCxuZXcgS3QoKCh0LG4pPT57bihvKX0pKTt2YXIgbztjb25zdCBzPXIoKTtyZXR1cm4tMT09PW4uaW5kZXhPZihzKSYmbi5wdXNoKHMpLHMudGhlbigoKCk9PmUocykpKS50aGVuKG51bGwsKCgpPT5lKHMpLnRoZW4obnVsbCwoKCk9Pnt9KSkpKSxzfSxkcmFpbjpmdW5jdGlvbih0KXtyZXR1cm4gbmV3IEt0KCgoZSxyKT0+e2xldCBvPW4ubGVuZ3RoO2lmKCFvKXJldHVybiBlKCEwKTtjb25zdCBzPXNldFRpbWVvdXQoKCgpPT57dCYmdD4wJiZlKCExKX0pLHQpO24uZm9yRWFjaCgodD0+e1l0KHQpLnRoZW4oKCgpPT57LS1vfHwoY2xlYXJUaW1lb3V0KHMpLGUoITApKX0pLHIpfSkpfSkpfX19Y29uc3QgWHQ9NmU0O2Z1bmN0aW9uIHRuKHQse3N0YXR1c0NvZGU6bixoZWFkZXJzOmV9LHI9RGF0ZS5ub3coKSl7Y29uc3Qgbz17Li4udH0scz1lPy5bIngtc2VudHJ5LXJhdGUtbGltaXRzIl0saT1lPy5bInJldHJ5LWFmdGVyIl07aWYocylmb3IoY29uc3QgdCBvZiBzLnRyaW0oKS5zcGxpdCgiLCIpKXtjb25zdFtuLGUsLCxzXT10LnNwbGl0KCI6Iiw1KSxpPXBhcnNlSW50KG4sMTApLGM9MWUzKihpc05hTihpKT82MDppKTtpZihlKWZvcihjb25zdCB0IG9mIGUuc3BsaXQoIjsiKSkibWV0cmljX2J1Y2tldCI9PT10JiZzJiYhcy5zcGxpdCgiOyIpLmluY2x1ZGVzKCJjdXN0b20iKXx8KG9bdF09citjKTtlbHNlIG8uYWxsPXIrY31lbHNlIGk/by5hbGw9citmdW5jdGlvbih0LG49RGF0ZS5ub3coKSl7Y29uc3QgZT1wYXJzZUludChgJHt0fWAsMTApO2lmKCFpc05hTihlKSlyZXR1cm4gMWUzKmU7Y29uc3Qgcj1EYXRlLnBhcnNlKGAke3R9YCk7cmV0dXJuIGlzTmFOKHIpP1h0OnItbn0oaSxyKTo0Mjk9PT1uJiYoby5hbGw9cis2ZTQpO3JldHVybiBvfWNvbnN0IG5uPTY0O2Z1bmN0aW9uIGVuKHQsbixlPVF0KHQuYnVmZmVyU2l6ZXx8bm4pKXtsZXQgcj17fTtyZXR1cm57c2VuZDpmdW5jdGlvbih0KXtjb25zdCBvPVtdO2lmKE10KHQsKCh0LG4pPT57Y29uc3QgZT1mdW5jdGlvbih0KXtyZXR1cm4gR3RbdF19KG4pOyhmdW5jdGlvbih0LG4sZT1EYXRlLm5vdygpKXtyZXR1cm4gZnVuY3Rpb24odCxuKXtyZXR1cm4gdFtuXXx8dC5hbGx8fDB9KHQsbik+ZX0pKHIsZSl8fG8ucHVzaCh0KX0pKSwwPT09by5sZW5ndGgpcmV0dXJuIFl0KHt9KTtjb25zdCBzPVV0KHRbMF0sbyksaT10PT57TXQocywoKHQsbik9Pnt9KSl9O3JldHVybiBlLmFkZCgoKCk9Pm4oe2JvZHk6QnQocyl9KS50aGVuKCh0PT4odm9pZCAwIT09dC5zdGF0dXNDb2RlJiYodC5zdGF0dXNDb2RlPDIwMHx8dC5zdGF0dXNDb2RlPj0zMDApJiZoJiZrLndhcm4oYFNlbnRyeSByZXNwb25kZWQgd2l0aCBzdGF0dXMgY29kZSAke3Quc3RhdHVzQ29kZX0gdG8gc2VudCBldmVudC5gKSxyPXRuKHIsdCksdCkpLCh0PT57dGhyb3cgaSgpLGgmJmsuZXJyb3IoIkVuY291bnRlcmVkIGVycm9yIHJ1bm5pbmcgdHJhbnNwb3J0IHJlcXVlc3Q6Iix0KSx0fSkpKSkudGhlbigodD0+dCksKHQ9PntpZih0PT09cXQpcmV0dXJuIGgmJmsuZXJyb3IoIlNraXBwZWQgc2VuZGluZyBldmVudCBiZWNhdXNlIGJ1ZmZlciBpcyBmdWxsLiIpLGkoKSxZdCh7fSk7dGhyb3cgdH0pKX0sZmx1c2g6dD0+ZS5kcmFpbih0KX19Y29uc3Qgcm49L14oXFMrOlxcfFwvPykoW1xzXFNdKj8pKCg/OlwuezEsMn18W14vXFxdKz98KShcLlteLi9cXF0qfCkpKD86Wy9cXF0qKSQvO2Z1bmN0aW9uIG9uKHQpe2NvbnN0IG49ZnVuY3Rpb24odCl7Y29uc3Qgbj10Lmxlbmd0aD4xMDI0P2A8dHJ1bmNhdGVkPiR7dC5zbGljZSgtMTAyNCl9YDp0LGU9cm4uZXhlYyhuKTtyZXR1cm4gZT9lLnNsaWNlKDEpOltdfSh0KSxlPW5bMF18fCIiO2xldCByPW5bMV07cmV0dXJuIGV8fHI/KHImJihyPXIuc2xpY2UoMCxyLmxlbmd0aC0xKSksZStyKToiLiJ9ZnVuY3Rpb24gc24odCxuPSExKXtyZXR1cm4hKG58fHQmJiF0LnN0YXJ0c1dpdGgoIi8iKSYmIXQubWF0Y2goL15bQS1aXTovKSYmIXQuc3RhcnRzV2l0aCgiLiIpJiYhdC5tYXRjaCgvXlthLXpBLVpdKFthLXpBLVowLTkuXC0rXSkqOlwvXC8vKSkmJnZvaWQgMCE9PXQmJiF0LmluY2x1ZGVzKCJub2RlX21vZHVsZXMvIil9Y29uc3QgY249U3ltYm9sKCJBZ2VudEJhc2VJbnRlcm5hbFN0YXRlIik7Y2xhc3MgdW4gZXh0ZW5kcyBzLkFnZW50e2NvbnN0cnVjdG9yKHQpe3N1cGVyKHQpLHRoaXNbY25dPXt9fWlzU2VjdXJlRW5kcG9pbnQodCl7aWYodCl7aWYoImJvb2xlYW4iPT10eXBlb2YgdC5zZWN1cmVFbmRwb2ludClyZXR1cm4gdC5zZWN1cmVFbmRwb2ludDtpZigic3RyaW5nIj09dHlwZW9mIHQucHJvdG9jb2wpcmV0dXJuImh0dHBzOiI9PT10LnByb3RvY29sfWNvbnN0e3N0YWNrOm59PW5ldyBFcnJvcjtyZXR1cm4ic3RyaW5nIj09dHlwZW9mIG4mJm4uc3BsaXQoIlxuIikuc29tZSgodD0+LTEhPT10LmluZGV4T2YoIihodHRwcy5qczoiKXx8LTEhPT10LmluZGV4T2YoIm5vZGU6aHR0cHM6IikpKX1jcmVhdGVTb2NrZXQodCxuLGUpe2NvbnN0IHI9ey4uLm4sc2VjdXJlRW5kcG9pbnQ6dGhpcy5pc1NlY3VyZUVuZHBvaW50KG4pfTtQcm9taXNlLnJlc29sdmUoKS50aGVuKCgoKT0+dGhpcy5jb25uZWN0KHQscikpKS50aGVuKChvPT57aWYobyBpbnN0YW5jZW9mIHMuQWdlbnQpcmV0dXJuIG8uYWRkUmVxdWVzdCh0LHIpO3RoaXNbY25dLmN1cnJlbnRTb2NrZXQ9byxzdXBlci5jcmVhdGVTb2NrZXQodCxuLGUpfSksZSl9Y3JlYXRlQ29ubmVjdGlvbigpe2NvbnN0IHQ9dGhpc1tjbl0uY3VycmVudFNvY2tldDtpZih0aGlzW2NuXS5jdXJyZW50U29ja2V0PXZvaWQgMCwhdCl0aHJvdyBuZXcgRXJyb3IoIk5vIHNvY2tldCB3YXMgcmV0dXJuZWQgaW4gdGhlIGBjb25uZWN0KClgIGZ1bmN0aW9uIik7cmV0dXJuIHR9Z2V0IGRlZmF1bHRQb3J0KCl7cmV0dXJuIHRoaXNbY25dLmRlZmF1bHRQb3J0Pz8oImh0dHBzOiI9PT10aGlzLnByb3RvY29sPzQ0Mzo4MCl9c2V0IGRlZmF1bHRQb3J0KHQpe3RoaXNbY25dJiYodGhpc1tjbl0uZGVmYXVsdFBvcnQ9dCl9Z2V0IHByb3RvY29sKCl7cmV0dXJuIHRoaXNbY25dLnByb3RvY29sPz8odGhpcy5pc1NlY3VyZUVuZHBvaW50KCk/Imh0dHBzOiI6Imh0dHA6Iil9c2V0IHByb3RvY29sKHQpe3RoaXNbY25dJiYodGhpc1tjbl0ucHJvdG9jb2w9dCl9fWZ1bmN0aW9uIGFuKC4uLnQpe2subG9nKCJbaHR0cHMtcHJveHktYWdlbnQ6cGFyc2UtcHJveHktcmVzcG9uc2VdIiwuLi50KX1mdW5jdGlvbiBmbih0KXtyZXR1cm4gbmV3IFByb21pc2UoKChuLGUpPT57bGV0IHI9MDtjb25zdCBvPVtdO2Z1bmN0aW9uIHMoKXtjb25zdCBjPXQucmVhZCgpO2M/ZnVuY3Rpb24oYyl7by5wdXNoKGMpLHIrPWMubGVuZ3RoO2NvbnN0IHU9QnVmZmVyLmNvbmNhdChvLHIpLGE9dS5pbmRleE9mKCJcclxuXHJcbiIpO2lmKC0xPT09YSlyZXR1cm4gYW4oImhhdmUgbm90IHJlY2VpdmVkIGVuZCBvZiBIVFRQIGhlYWRlcnMgeWV0Li4uIiksdm9pZCBzKCk7Y29uc3QgZj11LnN1YmFycmF5KDAsYSkudG9TdHJpbmcoImFzY2lpIikuc3BsaXQoIlxyXG4iKSxoPWYuc2hpZnQoKTtpZighaClyZXR1cm4gdC5kZXN0cm95KCksZShuZXcgRXJyb3IoIk5vIGhlYWRlciByZWNlaXZlZCBmcm9tIHByb3h5IENPTk5FQ1QgcmVzcG9uc2UiKSk7Y29uc3QgcD1oLnNwbGl0KCIgIiksbD0rKHBbMV18fDApLGQ9cC5zbGljZSgyKS5qb2luKCIgIiksbT17fTtmb3IoY29uc3QgbiBvZiBmKXtpZighbiljb250aW51ZTtjb25zdCByPW4uaW5kZXhPZigiOiIpO2lmKC0xPT09cilyZXR1cm4gdC5kZXN0cm95KCksZShuZXcgRXJyb3IoYEludmFsaWQgaGVhZGVyIGZyb20gcHJveHkgQ09OTkVDVCByZXNwb25zZTogIiR7bn0iYCkpO2NvbnN0IG89bi5zbGljZSgwLHIpLnRvTG93ZXJDYXNlKCkscz1uLnNsaWNlKHIrMSkudHJpbVN0YXJ0KCksaT1tW29dOyJzdHJpbmciPT10eXBlb2YgaT9tW29dPVtpLHNdOkFycmF5LmlzQXJyYXkoaSk/aS5wdXNoKHMpOm1bb109c31hbigiZ290IHByb3h5IHNlcnZlciByZXNwb25zZTogJW8gJW8iLGgsbSksaSgpLG4oe2Nvbm5lY3Q6e3N0YXR1c0NvZGU6bCxzdGF0dXNUZXh0OmQsaGVhZGVyczptfSxidWZmZXJlZDp1fSl9KGMpOnQub25jZSgicmVhZGFibGUiLHMpfWZ1bmN0aW9uIGkoKXt0LnJlbW92ZUxpc3RlbmVyKCJlbmQiLGMpLHQucmVtb3ZlTGlzdGVuZXIoImVycm9yIix1KSx0LnJlbW92ZUxpc3RlbmVyKCJyZWFkYWJsZSIscyl9ZnVuY3Rpb24gYygpe2koKSxhbigib25lbmQiKSxlKG5ldyBFcnJvcigiUHJveHkgY29ubmVjdGlvbiBlbmRlZCBiZWZvcmUgcmVjZWl2aW5nIENPTk5FQ1QgcmVzcG9uc2UiKSl9ZnVuY3Rpb24gdSh0KXtpKCksYW4oIm9uZXJyb3IgJW8iLHQpLGUodCl9dC5vbigiZXJyb3IiLHUpLHQub24oImVuZCIsYykscygpfSkpfWZ1bmN0aW9uIGhuKC4uLnQpe2subG9nKCJbaHR0cHMtcHJveHktYWdlbnRdIiwuLi50KX1jbGFzcyBwbiBleHRlbmRzIHVue3N0YXRpYyBfX2luaXRTdGF0aWMoKXt0aGlzLnByb3RvY29scz1bImh0dHAiLCJodHRwcyJdfWNvbnN0cnVjdG9yKHQsbil7c3VwZXIobiksdGhpcy5vcHRpb25zPXt9LHRoaXMucHJveHk9InN0cmluZyI9PXR5cGVvZiB0P25ldyBVUkwodCk6dCx0aGlzLnByb3h5SGVhZGVycz1uPy5oZWFkZXJzPz97fSxobigiQ3JlYXRpbmcgbmV3IEh0dHBzUHJveHlBZ2VudCBpbnN0YW5jZTogJW8iLHRoaXMucHJveHkuaHJlZik7Y29uc3QgZT0odGhpcy5wcm94eS5ob3N0bmFtZXx8dGhpcy5wcm94eS5ob3N0KS5yZXBsYWNlKC9eXFt8XF0kL2csIiIpLHI9dGhpcy5wcm94eS5wb3J0P3BhcnNlSW50KHRoaXMucHJveHkucG9ydCwxMCk6Imh0dHBzOiI9PT10aGlzLnByb3h5LnByb3RvY29sPzQ0Mzo4MDt0aGlzLmNvbm5lY3RPcHRzPXtBTFBOUHJvdG9jb2xzOlsiaHR0cC8xLjEiXSwuLi5uP2RuKG4sImhlYWRlcnMiKTpudWxsLGhvc3Q6ZSxwb3J0OnJ9fWFzeW5jIGNvbm5lY3QodCxuKXtjb25zdHtwcm94eTplfT10aGlzO2lmKCFuLmhvc3QpdGhyb3cgbmV3IFR5cGVFcnJvcignTm8gImhvc3QiIHByb3ZpZGVkJyk7bGV0IHI7aWYoImh0dHBzOiI9PT1lLnByb3RvY29sKXtobigiQ3JlYXRpbmcgYHRscy5Tb2NrZXRgOiAlbyIsdGhpcy5jb25uZWN0T3B0cyk7Y29uc3QgdD10aGlzLmNvbm5lY3RPcHRzLnNlcnZlcm5hbWV8fHRoaXMuY29ubmVjdE9wdHMuaG9zdDtyPWYuY29ubmVjdCh7Li4udGhpcy5jb25uZWN0T3B0cyxzZXJ2ZXJuYW1lOnQmJmEuaXNJUCh0KT92b2lkIDA6dH0pfWVsc2UgaG4oIkNyZWF0aW5nIGBuZXQuU29ja2V0YDogJW8iLHRoaXMuY29ubmVjdE9wdHMpLHI9YS5jb25uZWN0KHRoaXMuY29ubmVjdE9wdHMpO2NvbnN0IG89ImZ1bmN0aW9uIj09dHlwZW9mIHRoaXMucHJveHlIZWFkZXJzP3RoaXMucHJveHlIZWFkZXJzKCk6ey4uLnRoaXMucHJveHlIZWFkZXJzfSxzPWEuaXNJUHY2KG4uaG9zdCk/YFske24uaG9zdH1dYDpuLmhvc3Q7bGV0IGk9YENPTk5FQ1QgJHtzfToke24ucG9ydH0gSFRUUC8xLjFcclxuYDtpZihlLnVzZXJuYW1lfHxlLnBhc3N3b3JkKXtjb25zdCB0PWAke2RlY29kZVVSSUNvbXBvbmVudChlLnVzZXJuYW1lKX06JHtkZWNvZGVVUklDb21wb25lbnQoZS5wYXNzd29yZCl9YDtvWyJQcm94eS1BdXRob3JpemF0aW9uIl09YEJhc2ljICR7QnVmZmVyLmZyb20odCkudG9TdHJpbmcoImJhc2U2NCIpfWB9by5Ib3N0PWAke3N9OiR7bi5wb3J0fWAsb1siUHJveHktQ29ubmVjdGlvbiJdfHwob1siUHJveHktQ29ubmVjdGlvbiJdPXRoaXMua2VlcEFsaXZlPyJLZWVwLUFsaXZlIjoiY2xvc2UiKTtmb3IoY29uc3QgdCBvZiBPYmplY3Qua2V5cyhvKSlpKz1gJHt0fTogJHtvW3RdfVxyXG5gO2NvbnN0IGM9Zm4ocik7ci53cml0ZShgJHtpfVxyXG5gKTtjb25zdHtjb25uZWN0OnUsYnVmZmVyZWQ6aH09YXdhaXQgYztpZih0LmVtaXQoInByb3h5Q29ubmVjdCIsdSksdGhpcy5lbWl0KCJwcm94eUNvbm5lY3QiLHUsdCksMjAwPT09dS5zdGF0dXNDb2RlKXtpZih0Lm9uY2UoInNvY2tldCIsbG4pLG4uc2VjdXJlRW5kcG9pbnQpe2huKCJVcGdyYWRpbmcgc29ja2V0IGNvbm5lY3Rpb24gdG8gVExTIik7Y29uc3QgdD1uLnNlcnZlcm5hbWV8fG4uaG9zdDtyZXR1cm4gZi5jb25uZWN0KHsuLi5kbihuLCJob3N0IiwicGF0aCIsInBvcnQiKSxzb2NrZXQ6cixzZXJ2ZXJuYW1lOmEuaXNJUCh0KT92b2lkIDA6dH0pfXJldHVybiByfXIuZGVzdHJveSgpO2NvbnN0IHA9bmV3IGEuU29ja2V0KHt3cml0YWJsZTohMX0pO3JldHVybiBwLnJlYWRhYmxlPSEwLHQub25jZSgic29ja2V0IiwodD0+e2huKCJSZXBsYXlpbmcgcHJveHkgYnVmZmVyIGZvciBmYWlsZWQgcmVxdWVzdCIpLHQucHVzaChoKSx0LnB1c2gobnVsbCl9KSkscH19ZnVuY3Rpb24gbG4odCl7dC5yZXN1bWUoKX1mdW5jdGlvbiBkbih0LC4uLm4pe2NvbnN0IGU9e307bGV0IHI7Zm9yKHIgaW4gdCluLmluY2x1ZGVzKHIpfHwoZVtyXT10W3JdKTtyZXR1cm4gZX1wbi5fX2luaXRTdGF0aWMoKTtjb25zdCBtbj0zMjc2ODtmdW5jdGlvbiBnbih0KXtyZXR1cm4gdC5yZXBsYWNlKC9eW0EtWl06LywiIikucmVwbGFjZSgvXFwvZywiLyIpfWNvbnN0IHluPW47bGV0IGJuLF9uPTAsdm49e307ZnVuY3Rpb24gd24odCl7eW4uZGVidWcmJmNvbnNvbGUubG9nKGBbQU5SIFdvcmtlcl0gJHt0fWApfXZhciBTbiwkbixFbjtjb25zdCB4bj1mdW5jdGlvbih0KXtsZXQgbjt0cnl7bj1uZXcgVVJMKHQudXJsKX1jYXRjaChuKXtyZXR1cm4gVCgoKCk9Pntjb25zb2xlLndhcm4oIltAc2VudHJ5L25vZGVdOiBJbnZhbGlkIGRzbiBvciB0dW5uZWwgb3B0aW9uLCB3aWxsIG5vdCBzZW5kIGFueSBldmVudHMuIFRoZSB0dW5uZWwgb3B0aW9uIG11c3QgYmUgYSBmdWxsIFVSTCB3aGVuIHVzZWQuIil9KSksZW4odCwoKCk9PlByb21pc2UucmVzb2x2ZSh7fSkpKX1jb25zdCBlPSJodHRwczoiPT09bi5wcm90b2NvbCxyPWZ1bmN0aW9uKHQsbil7Y29uc3R7bm9fcHJveHk6ZX09cHJvY2Vzcy5lbnYscj1lPy5zcGxpdCgiLCIpLnNvbWUoKG49PnQuaG9zdC5lbmRzV2l0aChuKXx8dC5ob3N0bmFtZS5lbmRzV2l0aChuKSkpO3JldHVybiByP3ZvaWQgMDpufShuLHQucHJveHl8fChlP3Byb2Nlc3MuZW52Lmh0dHBzX3Byb3h5OnZvaWQgMCl8fHByb2Nlc3MuZW52Lmh0dHBfcHJveHkpLG89ZT9pOnMsYT12b2lkIDAhPT10LmtlZXBBbGl2ZSYmdC5rZWVwQWxpdmUsZj1yP25ldyBwbihyKTpuZXcgby5BZ2VudCh7a2VlcEFsaXZlOmEsbWF4U29ja2V0czozMCx0aW1lb3V0OjJlM30pLGg9ZnVuY3Rpb24odCxuLGUpe2NvbnN0e2hvc3RuYW1lOnIscGF0aG5hbWU6byxwb3J0OnMscHJvdG9jb2w6aSxzZWFyY2g6YX09bmV3IFVSTCh0LnVybCk7cmV0dXJuIGZ1bmN0aW9uKGYpe3JldHVybiBuZXcgUHJvbWlzZSgoKGgscCk9PntGdCgoKCk9PntsZXQgbD1mdW5jdGlvbih0KXtyZXR1cm4gbmV3IGMoe3JlYWQoKXt0aGlzLnB1c2godCksdGhpcy5wdXNoKG51bGwpfX0pfShmLmJvZHkpO2NvbnN0IGQ9ey4uLnQuaGVhZGVyc307Zi5ib2R5Lmxlbmd0aD5tbiYmKGRbImNvbnRlbnQtZW5jb2RpbmciXT0iZ3ppcCIsbD1sLnBpcGUodSgpKSk7Y29uc3QgbT1uLnJlcXVlc3Qoe21ldGhvZDoiUE9TVCIsYWdlbnQ6ZSxoZWFkZXJzOmQsaG9zdG5hbWU6cixwYXRoOmAke299JHthfWAscG9ydDpzLHByb3RvY29sOmksY2E6dC5jYUNlcnRzfSwodD0+e3Qub24oImRhdGEiLCgoKT0+e30pKSx0Lm9uKCJlbmQiLCgoKT0+e30pKSx0LnNldEVuY29kaW5nKCJ1dGY4Iik7Y29uc3Qgbj10LmhlYWRlcnNbInJldHJ5LWFmdGVyIl0/P251bGwsZT10LmhlYWRlcnNbIngtc2VudHJ5LXJhdGUtbGltaXRzIl0/P251bGw7aCh7c3RhdHVzQ29kZTp0LnN0YXR1c0NvZGUsaGVhZGVyczp7InJldHJ5LWFmdGVyIjpuLCJ4LXNlbnRyeS1yYXRlLWxpbWl0cyI6QXJyYXkuaXNBcnJheShlKT9lWzBdfHxudWxsOmV9fSl9KSk7bS5vbigiZXJyb3IiLHApLGwucGlwZShtKX0pKX0pKX19KHQsdC5odHRwTW9kdWxlPz9vLGYpO3JldHVybiBlbih0LGgpfSh7dXJsOihTbj15bi5kc24sJG49eW4udHVubmVsLEVuPXluLnNka01ldGFkYXRhLnNkaywkbnx8YCR7ZnVuY3Rpb24odCl7cmV0dXJuYCR7ZnVuY3Rpb24odCl7Y29uc3Qgbj10LnByb3RvY29sP2Ake3QucHJvdG9jb2x9OmA6IiIsZT10LnBvcnQ/YDoke3QucG9ydH1gOiIiO3JldHVybmAke259Ly8ke3QuaG9zdH0ke2V9JHt0LnBhdGg/YC8ke3QucGF0aH1gOiIifS9hcGkvYH0odCl9JHt0LnByb2plY3RJZH0vZW52ZWxvcGUvYH0oU24pfT8ke2Z1bmN0aW9uKHQsbil7Y29uc3QgZT17c2VudHJ5X3ZlcnNpb246WnR9O3JldHVybiB0LnB1YmxpY0tleSYmKGUuc2VudHJ5X2tleT10LnB1YmxpY0tleSksbiYmKGUuc2VudHJ5X2NsaWVudD1gJHtuLm5hbWV9LyR7bi52ZXJzaW9ufWApLG5ldyBVUkxTZWFyY2hQYXJhbXMoZSkudG9TdHJpbmcoKX0oU24sRW4pfWApfSk7YXN5bmMgZnVuY3Rpb24gTm4oKXtpZihibil7d24oIlNlbmRpbmcgYWJub3JtYWwgc2Vzc2lvbiIpLEwoYm4se3N0YXR1czoiYWJub3JtYWwiLGFibm9ybWFsX21lY2hhbmlzbToiYW5yX2ZvcmVncm91bmQiLHJlbGVhc2U6eW4ucmVsZWFzZSxlbnZpcm9ubWVudDp5bi5lbnZpcm9ubWVudH0pO2NvbnN0IHQ9ZnVuY3Rpb24odCxuLGUscil7Y29uc3Qgbz1KdChlKTtyZXR1cm4gVXQoe3NlbnRfYXQ6KG5ldyBEYXRlKS50b0lTT1N0cmluZygpLC4uLm8mJntzZGs6b30sLi4uISFyJiZuJiZ7ZHNuOmp0KG4pfX0sWyJhZ2dyZWdhdGVzImluIHQ/W3t0eXBlOiJzZXNzaW9ucyJ9LHRdOlt7dHlwZToic2Vzc2lvbiJ9LHQudG9KU09OKCldXSl9KGJuLHluLmRzbix5bi5zZGtNZXRhZGF0YSx5bi50dW5uZWwpO3duKEpTT04uc3RyaW5naWZ5KHQpKSxhd2FpdCB4bi5zZW5kKHQpO3RyeXtlPy5wb3N0TWVzc2FnZSgic2Vzc2lvbi1lbmRlZCIpfWNhdGNoKHQpe319fWZ1bmN0aW9uIENuKHQpe2lmKCF0KXJldHVybjtjb25zdCBuPWZ1bmN0aW9uKHQpe2lmKCF0Lmxlbmd0aClyZXR1cm5bXTtjb25zdCBuPUFycmF5LmZyb20odCk7cmV0dXJuL3NlbnRyeVdyYXBwZWQvLnRlc3QoTnQobikuZnVuY3Rpb258fCIiKSYmbi5wb3AoKSxuLnJldmVyc2UoKSx4dC50ZXN0KE50KG4pLmZ1bmN0aW9ufHwiIikmJihuLnBvcCgpLHh0LnRlc3QoTnQobikuZnVuY3Rpb258fCIiKSYmbi5wb3AoKSksbi5zbGljZSgwLCR0KS5tYXAoKHQ9Pih7Li4udCxmaWxlbmFtZTp0LmZpbGVuYW1lfHxOdChuKS5maWxlbmFtZSxmdW5jdGlvbjp0LmZ1bmN0aW9ufHxFdH0pKSl9KHQpO2lmKHluLmFwcFJvb3RQYXRoKWZvcihjb25zdCB0IG9mIG4pdC5maWxlbmFtZSYmKHQuZmlsZW5hbWU9UHQodC5maWxlbmFtZSx5bi5hcHBSb290UGF0aCkpO3JldHVybiBufWFzeW5jIGZ1bmN0aW9uIFRuKHQsbil7aWYoX24+PXluLm1heEFuckV2ZW50cylyZXR1cm47X24rPTEsYXdhaXQgTm4oKSx3bigiU2VuZGluZyBldmVudCIpO2NvbnN0IGU9e2V2ZW50X2lkOkQoKSxjb250ZXh0czp5bi5jb250ZXh0cyxyZWxlYXNlOnluLnJlbGVhc2UsZW52aXJvbm1lbnQ6eW4uZW52aXJvbm1lbnQsZGlzdDp5bi5kaXN0LHBsYXRmb3JtOiJub2RlIixsZXZlbDoiZXJyb3IiLGV4Y2VwdGlvbjp7dmFsdWVzOlt7dHlwZToiQXBwbGljYXRpb25Ob3RSZXNwb25kaW5nIix2YWx1ZTpgQXBwbGljYXRpb24gTm90IFJlc3BvbmRpbmcgZm9yIGF0IGxlYXN0ICR7eW4uYW5yVGhyZXNob2xkfSBtc2Asc3RhY2t0cmFjZTp7ZnJhbWVzOkNuKHQpfSxtZWNoYW5pc206e3R5cGU6IkFOUiJ9fV19LHRhZ3M6eW4uc3RhdGljVGFnc307biYmZnVuY3Rpb24odCxuKXtpZihWdCh0LG4pLCF0LmNvbnRleHRzPy50cmFjZSl7Y29uc3R7dHJhY2VJZDplLHBhcmVudFNwYW5JZDpyLHByb3BhZ2F0aW9uU3BhbklkOm99PW4ucHJvcGFnYXRpb25Db250ZXh0O3QuY29udGV4dHM9e3RyYWNlOnt0cmFjZV9pZDplLHNwYW5faWQ6b3x8RigpLHBhcmVudF9zcGFuX2lkOnJ9LC4uLnQuY29udGV4dHN9fX0oZSxuKSxmdW5jdGlvbih0KXtpZigwPT09T2JqZWN0LmtleXModm4pLmxlbmd0aClyZXR1cm47Y29uc3Qgbj15bi5hcHBSb290UGF0aD97fTp2bjtpZih5bi5hcHBSb290UGF0aClmb3IoY29uc3RbdCxlXW9mIE9iamVjdC5lbnRyaWVzKHZuKSluW1B0KHQseW4uYXBwUm9vdFBhdGgpXT1lO2NvbnN0IGU9bmV3IE1hcDtmb3IoY29uc3QgciBvZiB0LmV4Y2VwdGlvbj8udmFsdWVzfHxbXSlmb3IoY29uc3QgdCBvZiByLnN0YWNrdHJhY2U/LmZyYW1lc3x8W10pe2NvbnN0IHI9dC5hYnNfcGF0aHx8dC5maWxlbmFtZTtyJiZuW3JdJiZlLnNldChyLG5bcl0pfWlmKGUuc2l6ZT4wKXtjb25zdCBuPVtdO2Zvcihjb25zdFt0LHJdb2YgZS5lbnRyaWVzKCkpbi5wdXNoKHt0eXBlOiJzb3VyY2VtYXAiLGNvZGVfZmlsZTp0LGRlYnVnX2lkOnJ9KTt0LmRlYnVnX21ldGE9e2ltYWdlczpufX19KGUpO2NvbnN0IHI9enQoZSx5bi5kc24seW4uc2RrTWV0YWRhdGEseW4udHVubmVsKTt3bihKU09OLnN0cmluZ2lmeShyKSksYXdhaXQgeG4uc2VuZChyKSxhd2FpdCB4bi5mbHVzaCgyZTMpLF9uPj15bi5tYXhBbnJFdmVudHMmJnNldFRpbWVvdXQoKCgpPT57cHJvY2Vzcy5leGl0KDApfSksNWUzKX1sZXQga247aWYod24oIlN0YXJ0ZWQiKSx5bi5jYXB0dXJlU3RhY2tUcmFjZSl7d24oIkNvbm5lY3RpbmcgdG8gZGVidWdnZXIiKTtjb25zdCBuPW5ldyB0O24uY29ubmVjdFRvTWFpblRocmVhZCgpLHduKCJDb25uZWN0ZWQgdG8gZGVidWdnZXIiKTtjb25zdCBlPW5ldyBNYXA7bi5vbigiRGVidWdnZXIuc2NyaXB0UGFyc2VkIiwodD0+e2Uuc2V0KHQucGFyYW1zLnNjcmlwdElkLHQucGFyYW1zLnVybCl9KSksbi5vbigiRGVidWdnZXIucGF1c2VkIiwodD0+e2lmKCJvdGhlciI9PT10LnBhcmFtcy5yZWFzb24pdHJ5e3duKCJEZWJ1Z2dlciBwYXVzZWQiKTtjb25zdCBzPVsuLi50LnBhcmFtcy5jYWxsRnJhbWVzXSxpPXluLmFwcFJvb3RQYXRoP2Z1bmN0aW9uKHQ9KHByb2Nlc3MuYXJndlsxXT9vbihwcm9jZXNzLmFyZ3ZbMV0pOnByb2Nlc3MuY3dkKCkpLG49IlxcIj09PW8pe2NvbnN0IGU9bj9nbih0KTp0O3JldHVybiB0PT57aWYoIXQpcmV0dXJuO2NvbnN0IG89bj9nbih0KTp0O2xldHtkaXI6cyxiYXNlOmksZXh0OmN9PXIucGFyc2Uobyk7Ii5qcyIhPT1jJiYiLm1qcyIhPT1jJiYiLmNqcyIhPT1jfHwoaT1pLnNsaWNlKDAsLTEqYy5sZW5ndGgpKTtjb25zdCB1PWRlY29kZVVSSUNvbXBvbmVudChpKTtzfHwocz0iLiIpO2NvbnN0IGE9cy5sYXN0SW5kZXhPZigiL25vZGVfbW9kdWxlcyIpO2lmKGE+LTEpcmV0dXJuYCR7cy5zbGljZShhKzE0KS5yZXBsYWNlKC9cLy9nLCIuIil9OiR7dX1gO2lmKHMuc3RhcnRzV2l0aChlKSl7Y29uc3QgdD1zLnNsaWNlKGUubGVuZ3RoKzEpLnJlcGxhY2UoL1wvL2csIi4iKTtyZXR1cm4gdD9gJHt0fToke3V9YDp1fXJldHVybiB1fX0oeW4uYXBwUm9vdFBhdGgpOigpPT57fSxjPXMubWFwKCh0PT5mdW5jdGlvbih0LG4sZSl7Y29uc3Qgcj1uP24ucmVwbGFjZSgvXmZpbGU6XC9cLy8sIiIpOnZvaWQgMCxvPXQubG9jYXRpb24uY29sdW1uTnVtYmVyP3QubG9jYXRpb24uY29sdW1uTnVtYmVyKzE6dm9pZCAwLHM9dC5sb2NhdGlvbi5saW5lTnVtYmVyP3QubG9jYXRpb24ubGluZU51bWJlcisxOnZvaWQgMDtyZXR1cm57ZmlsZW5hbWU6cixtb2R1bGU6ZShyKSxmdW5jdGlvbjp0LmZ1bmN0aW9uTmFtZXx8RXQsY29sbm86byxsaW5lbm86cyxpbl9hcHA6cj9zbihyKTp2b2lkIDB9fSh0LGUuZ2V0KHQubG9jYXRpb24uc2NyaXB0SWQpLGkpKSksdT1zZXRUaW1lb3V0KCgoKT0+e1RuKGMpLnRoZW4obnVsbCwoKCk9Pnt3bigiU2VuZGluZyBBTlIgZXZlbnQgZmFpbGVkLiIpfSkpfSksNWUzKTtuLnBvc3QoIlJ1bnRpbWUuZXZhbHVhdGUiLHtleHByZXNzaW9uOiJnbG9iYWwuX19TRU5UUllfR0VUX1NDT1BFU19fKCk7IixzaWxlbnQ6ITAscmV0dXJuQnlWYWx1ZTohMH0sKCh0LGUpPT57dCYmd24oYEVycm9yIGV4ZWN1dGluZyBzY3JpcHQ6ICcke3QubWVzc2FnZX0nYCksY2xlYXJUaW1lb3V0KHUpO2NvbnN0IHI9ZT8ucmVzdWx0P2UucmVzdWx0LnZhbHVlOnZvaWQgMDtuLnBvc3QoIkRlYnVnZ2VyLnJlc3VtZSIpLG4ucG9zdCgiRGVidWdnZXIuZGlzYWJsZSIpLFRuKGMscikudGhlbihudWxsLCgoKT0+e3duKCJTZW5kaW5nIEFOUiBldmVudCBmYWlsZWQuIil9KSl9KSl9Y2F0Y2godCl7dGhyb3cgbi5wb3N0KCJEZWJ1Z2dlci5yZXN1bWUiKSxuLnBvc3QoIkRlYnVnZ2VyLmRpc2FibGUiKSx0fX0pKSxrbj0oKT0+e3RyeXtuLnBvc3QoIkRlYnVnZ2VyLmVuYWJsZSIsKCgpPT57bi5wb3N0KCJEZWJ1Z2dlci5wYXVzZSIpfSkpfWNhdGNoKHQpe319fWNvbnN0e3BvbGw6am59PWZ1bmN0aW9uKHQsbixlLHIpe2NvbnN0IG89dCgpO2xldCBzPSExLGk9ITA7cmV0dXJuIHNldEludGVydmFsKCgoKT0+e2NvbnN0IHQ9by5nZXRUaW1lTXMoKTshMT09PXMmJnQ+bitlJiYocz0hMCxpJiZyKCkpLHQ8bitlJiYocz0hMSl9KSwyMCkse3BvbGw6KCk9PntvLnJlc2V0KCl9LGVuYWJsZWQ6dD0+e2k9dH19fSgoZnVuY3Rpb24oKXtsZXQgdD1wcm9jZXNzLmhydGltZSgpO3JldHVybntnZXRUaW1lTXM6KCk9Pntjb25zdFtuLGVdPXByb2Nlc3MuaHJ0aW1lKHQpO3JldHVybiBNYXRoLmZsb29yKDFlMypuK2UvMWU2KX0scmVzZXQ6KCk9Pnt0PXByb2Nlc3MuaHJ0aW1lKCl9fX0pLHluLnBvbGxJbnRlcnZhbCx5bi5hbnJUaHJlc2hvbGQsKGZ1bmN0aW9uKCl7d24oIldhdGNoZG9nIHRpbWVvdXQiKSxrbj8od24oIlBhdXNpbmcgZGVidWdnZXIgdG8gY2FwdHVyZSBzdGFjayB0cmFjZSIpLGtuKCkpOih3bigiQ2FwdHVyaW5nIGV2ZW50IHdpdGhvdXQgYSBzdGFjayB0cmFjZSIpLFRuKCkudGhlbihudWxsLCgoKT0+e3duKCJTZW5kaW5nIEFOUiBldmVudCBmYWlsZWQgb24gd2F0Y2hkb2cgdGltZW91dC4iKX0pKSl9KSk7ZT8ub24oIm1lc3NhZ2UiLCh0PT57dC5zZXNzaW9uJiYoYm49TSh0LnNlc3Npb24pKSx0LmRlYnVnSW1hZ2VzJiYodm49dC5kZWJ1Z0ltYWdlcyksam4oKX0pKTs=",mN0=50,uN0=5000;function Fn(A,...Q){e.log(`[ANR] ${A}`,...Q)}function dN0(){return AQ}function cN0(){let A=QG().getScopeData();return cZ(A,RQ().getScopeData()),cZ(A,sQ().getScopeData()),A.attachments=[],A.eventProcessors=[],A}async function lN0(A){let Q={message:"ANR"},B={};for(let Y of A.getEventProcessors()){if(Q===null)break;Q=await Y(Q,B)}return Q?.contexts||{}}var KUQ="Anr",pN0=(A={})=>{if(LW.major<16||LW.major===16&&LW.minor<17)throw Error("ANR detection requires Node 16.17.0 or later");let Q,B,Y=dN0();return Y.__SENTRY_GET_SCOPES__=cN0,{name:KUQ,startWorker:()=>{if(Q)return;if(B)Q=iN0(B,A)},stopWorker:()=>{if(Q)Q.then((J)=>{J(),Q=void 0})},async setup(J){if(B=J,A.captureStackTrace&&await TK())e.warn("ANR captureStackTrace has been disabled because the debugger was already enabled"),A.captureStackTrace=!1;setImmediate(()=>this.startWorker())}}},VUQ=wA(pN0);async function iN0(A,Q){let B=A.getDsn();if(!B)return()=>{};let Y=await lN0(A);delete Y.app?.app_memory,delete Y.device?.free_memory;let J=A.getOptions(),C=A.getSdkMetadata()||{};if(C.sdk)C.sdk.integrations=J.integrations.map((F)=>F.name);let X={debug:e.isEnabled(),dsn:B,tunnel:J.tunnel,environment:J.environment||"production",release:J.release,dist:J.dist,sdkMetadata:C,appRootPath:Q.appRootPath,pollInterval:Q.pollInterval||mN0,anrThreshold:Q.anrThreshold||uN0,captureStackTrace:!!Q.captureStackTrace,maxAnrEvents:Q.maxAnrEvents||1,staticTags:Q.staticTags||{},contexts:Y};if(X.captureStackTrace){let F=await import("node:inspector");if(!F.url())F.open(0)}let G=new xN0(new URL(`data:application/javascript;base64,${bN0}`),{workerData:X,execArgv:[],env:{...process.env,NODE_OPTIONS:void 0}});process.on("exit",()=>{G.terminate()});let W=setInterval(()=>{try{let F=RQ().getSession(),Z=F?{...F,toJSON:void 0}:void 0;G.postMessage({session:Z,debugImages:TN(J.stackParser)})}catch(F){}},X.pollInterval);return W.unref(),G.on("message",(F)=>{if(F==="session-ended")Fn("ANR event sent from ANR worker. Clearing session in this thread."),RQ().setSession(void 0)}),G.once("error",(F)=>{clearInterval(W),Fn("ANR worker error",F)}),G.once("exit",(F)=>{clearInterval(W),Fn("ANR worker exit",F)}),G.unref(),()=>{G.terminate(),clearInterval(W)}}function IUQ(A){let Q=gA()?.getIntegrationByName(KUQ);if(!Q)return A();Q.stopWorker();let B=A();if(fN0(B))return B.finally(()=>Q.startWorker());return Q.startWorker(),B}var nUQ=qA(fUQ(),1);var mUQ=qA(MB(),1);var bUQ=(A)=>({package:A,"javascript.is_cjs":a5()});function RW(A,Q){let B=gA()?.getOptions();if(!B?.disableInstrumentationWarnings&&!mUQ.isWrapped(A)&&_N()&&U9(B))f0(()=>{if(a5())console.warn(`[Sentry] ${Q} is not instrumented. This is likely because you required/imported ${Q} before calling \`Sentry.init()\`.`);else console.warn(`[Sentry] ${Q} is not instrumented. Please make sure to initialize Sentry in a separate file that you \`--import\` when running node, see: https://docs.sentry.io/platforms/javascript/guides/${Q}/install/esm/.`)}),QG().setContext("missing_instrumentation",bUQ(Q))}var U1=qA(yA(),1),cP=qA(MB(),1),LX=qA(NB(),1),iUQ=qA(dB(),1);var o5;(function(A){A.EXPRESS_TYPE="express.type";let B="express.name";A.EXPRESS_NAME=B})(o5||(o5={}));var IG;(function(A){A.ROUTER="router";let B="middleware";A.MIDDLEWARE=B;let Y="request_handler";A.REQUEST_HANDLER=Y})(IG||(IG={}));var In=Symbol("express-layer-patched"),wW="__ot_middlewares";var dUQ=(A,Q)=>{if(Array.isArray(A[wW])===!1)Object.defineProperty(A,wW,{enumerable:!1,value:[]});if(Q===void 0)return;A[wW].push(Q)},cUQ=(A,Q)=>{let B=Q.handle?.stack?.[0];if(B?.route?.path)return`${A}${B.route.path}`;if(B?.handle?.stack)return cUQ(A,B);return A},lUQ=(A,Q,B)=>{if(Q.name==="router"){let Y=cUQ("",Q),J=Y?Y:B||A||"/";return{attributes:{[o5.EXPRESS_NAME]:J,[o5.EXPRESS_TYPE]:IG.ROUTER},name:`router - ${J}`}}else if(Q.name==="bound dispatch"||Q.name==="handle")return{attributes:{[o5.EXPRESS_NAME]:(A||B)??"request handler",[o5.EXPRESS_TYPE]:IG.REQUEST_HANDLER},name:`request handler${Q.path?` - ${A||B}`:""}`};else return{attributes:{[o5.EXPRESS_NAME]:Q.name,[o5.EXPRESS_TYPE]:IG.MIDDLEWARE},name:`middleware - ${Q.name}`}},ZL0=(A,Q)=>{if(typeof Q==="string")return Q===A;else if(Q instanceof RegExp)return Q.test(A);else if(typeof Q==="function")return Q(A);else throw TypeError("Pattern is in unsupported datatype")},pUQ=(A,Q,B)=>{if(Array.isArray(B?.ignoreLayersType)&&B?.ignoreLayersType?.includes(Q))return!0;if(Array.isArray(B?.ignoreLayers)===!1)return!1;try{for(let Y of B.ignoreLayers)if(ZL0(A,Y))return!0}catch(Y){}return!1},Hn=(A)=>A instanceof Error?[A,A.message]:[String(A),String(A)],dP=(A)=>{let Q=A[0];if(Array.isArray(Q))return Q.map((B)=>uUQ(B)||"").join(",");return uUQ(Q)},uUQ=(A)=>{if(typeof A==="string")return A;if(A instanceof RegExp||typeof A==="number")return A.toString();return};var $L0="0.1.0",UL0="@sentry/instrumentation-express-v5";class Dn extends LX.InstrumentationBase{constructor(A={}){super(UL0,$L0,A)}init(){return[new LX.InstrumentationNodeModuleDefinition("express",[">=5.0.0"],(A)=>this._setup(A),(A)=>this._tearDown(A))]}_setup(A){let Q=A.Router.prototype;if(LX.isWrapped(Q.route))this._unwrap(Q,"route");if(this._wrap(Q,"route",this._getRoutePatch()),LX.isWrapped(Q.use))this._unwrap(Q,"use");if(this._wrap(Q,"use",this._getRouterUsePatch()),LX.isWrapped(A.application.use))this._unwrap(A.application,"use");return this._wrap(A.application,"use",this._getAppUsePatch()),A}_tearDown(A){if(A===void 0)return;let Q=A.Router.prototype;this._unwrap(Q,"route"),this._unwrap(Q,"use"),this._unwrap(A.application,"use")}_getRoutePatch(){let A=this;return function(Q){return function(...Y){let J=Q.apply(this,Y),C=this.stack[this.stack.length-1];return A._applyPatch(C,dP(Y)),J}}}_getRouterUsePatch(){let A=this;return function(Q){return function(...Y){let J=Q.apply(this,Y),C=this.stack[this.stack.length-1];return A._applyPatch(C,dP(Y)),J}}}_getAppUsePatch(){let A=this;return function(Q){return function(...Y){let J=this.router,C=Q.apply(this,Y);if(J){let X=J.stack[J.stack.length-1];A._applyPatch(X,dP(Y))}return C}}}_applyPatch(A,Q){let B=this;if(A[In]===!0)return;A[In]=!0,this._wrap(A,"handle",(Y)=>{if(Y.length===4)return Y;let J=function(C,X){dUQ(C,Q);let G=C[wW].filter((z)=>z!=="/"&&z!=="/*").join("").replace(/\/{2,}/g,"/"),W=G.length>0?G:void 0,F={[iUQ.SEMATTRS_HTTP_ROUTE]:W},Z=lUQ(G,A,Q),U=Z.attributes[o5.EXPRESS_TYPE],$=cP.getRPCMetadata(U1.context.active());if($?.type===cP.RPCType.HTTP)$.route=W;if(pUQ(Z.name,U,B.getConfig())){if(U===IG.MIDDLEWARE)C[wW].pop();return Y.apply(this,arguments)}if(U1.trace.getSpan(U1.context.active())===void 0)return Y.apply(this,arguments);let E=B._getSpanName({request:C,layerType:U,route:G},Z.name),K=B.tracer.startSpan(E,{attributes:Object.assign(F,Z.attributes)}),{requestHook:I}=B.getConfig();if(I)LX.safeExecuteInTheMiddle(()=>I(K,{request:C,layerType:U,route:G}),(z)=>{if(z)U1.diag.error("express instrumentation: request hook failed",z)},!0);let V=!1;if(Z.attributes[o5.EXPRESS_TYPE]!==IG.MIDDLEWARE)K.end(),V=!0;let H=()=>{if(V===!1)V=!0,K.end()},D=Array.from(arguments),L=D.findIndex((z)=>typeof z==="function");if(L>=0)arguments[L]=function(){let z=arguments[0],M=![void 0,null,"route","router"].includes(z);if(!V&&M){let[q,w]=Hn(z);K.recordException(q),K.setStatus({code:U1.SpanStatusCode.ERROR,message:w})}if(V===!1)V=!0,C.res?.removeListener("finish",H),K.end();if(!(C.route&&M))C[wW].pop();return D[L].apply(this,arguments)};try{return Y.apply(this,arguments)}catch(z){let[M,N]=Hn(z);throw K.recordException(M),K.setStatus({code:U1.SpanStatusCode.ERROR,message:N}),z}finally{if(!V)X.once("finish",H)}};for(let C in Y)Object.defineProperty(J,C,{get(){return Y[C]},set(X){Y[C]=X}});return J})}_getSpanName(A,Q){let{spanNameHook:B}=this.getConfig();if(!(B instanceof Function))return Q;try{return B(A,Q)??Q}catch(Y){return U1.diag.error("express instrumentation: error calling span name rewrite hook",Y),Q}}}var sUQ="Express",EL0="Express-V5";function rUQ(A){s0(A,"auto.http.otel.express");let Q=eA(A).data,B=Q["express.type"];if(B)A.setAttribute(YQ,`${B}.express`);let Y=Q["express.name"];if(typeof Y==="string")A.updateName(Y)}function aUQ(A,Q){if(RQ()===v5())return fQ&&e.warn("Isolation scope is still default isolation scope - skipping setting transactionName"),Q;if(A.layerType==="request_handler"){let B=A.request,Y=B.method?B.method.toUpperCase():"GET";RQ().setTransactionName(`${Y} ${A.route}`)}return Q}var Nn=EQ(sUQ,()=>new nUQ.ExpressInstrumentation({requestHook:(A)=>rUQ(A),spanNameHook:(A,Q)=>aUQ(A,Q)})),Ln=EQ(EL0,()=>new Dn({requestHook:(A)=>rUQ(A),spanNameHook:(A,Q)=>aUQ(A,Q)})),KL0=()=>{return{name:sUQ,setupOnce(){Nn(),Ln()}}},lP=wA(KL0);function qn(A){return function(B,Y,J,C){let X=sE(Y);if(RQ().setSDKProcessingMetadata({normalizedRequest:X}),(A?.shouldHandleError||HL0)(B)){let W=jB(B,{mechanism:{type:"middleware",handled:!1}});J.sentry=W}C(B)}}function VL0(){return function(Q,B,Y){let J=sE(Q);RQ().setSDKProcessingMetadata({normalizedRequest:J}),Y()}}function oUQ(A,Q){A.use(VL0()),A.use(qn(Q)),RW(A.use,"express")}function IL0(A){let Q=A.status||A.statusCode||A.status_code||A.output?.statusCode;return Q?parseInt(Q,10):500}function HL0(A){return IL0(A)>=500}import*as uEQ from"node:diagnostics_channel";var KY=qA(yA(),1),aP=qA(MB(),1),yEQ=qA(NB(),1),RY=qA(dB(),1);import TEQ from"node:diagnostics_channel";var SEQ="@fastify/otel",qq0="0.8.0",Mq0=">=4.0.0 <6",kEQ=["onRequest","preParsing","preValidation","preHandler","preSerialization","onSend","onResponse","onError"],H0={HOOK_NAME:"hook.name",FASTIFY_TYPE:"fastify.type",HOOK_CALLBACK_NAME:"hook.callback.name",ROOT:"fastify.root"},jW={ROUTE:"route-hook",INSTANCE:"hook",HANDLER:"request-handler"},HG="anonymous",N9=Symbol("fastify otel instance"),OW=Symbol("fastify otel request spans"),uL=Symbol("fastify otel request context"),_EQ=Symbol("fastify otel addhook original"),vEQ=Symbol("fastify otel setnotfound original"),rP=Symbol("fastify otel ignore path");class On extends yEQ.InstrumentationBase{constructor(A){super(SEQ,qq0,A);if(this.servername=A?.servername??process.env.OTEL_SERVICE_NAME??"fastify",this[rP]=null,this._logger=KY.diag.createComponentLogger({namespace:SEQ}),A?.ignorePaths!=null||process.env.OTEL_FASTIFY_IGNORE_PATHS!=null){let Q=A?.ignorePaths??process.env.OTEL_FASTIFY_IGNORE_PATHS;if((typeof Q!=="string"||Q.length===0)&&typeof Q!=="function")throw TypeError("ignorePaths must be a string or a function");let B=null;this[rP]=(Y)=>{if(typeof Q==="function")return Q(Y);else{if(B==null)B=PEQ().minimatch;return B(Y.url,Q)}}}}enable(){if(this._handleInitialization===void 0&&this.getConfig().registerOnInitialization){let A=this.plugin();this._handleInitialization=(Q)=>{Q.fastify.register(A)},TEQ.subscribe("fastify.initialization",this._handleInitialization)}return super.enable()}disable(){if(this._handleInitialization)TEQ.unsubscribe("fastify.initialization",this._handleInitialization),this._handleInitialization=void 0;return super.disable()}init(){return[]}plugin(){let A=this;return Q[Symbol.for("skip-override")]=!0,Q[Symbol.for("fastify.display-name")]="@fastify/otel",Q[Symbol.for("plugin-meta")]={fastify:Mq0,name:"@fastify/otel"},Q;function Q(B,Y,J){B.decorate(N9,A),B.decorate(_EQ,B.addHook),B.decorate(vEQ,B.setNotFoundHandler),B.decorateRequest("opentelemetry",function(){let U=this[uL];return{span:this[OW],tracer:A.tracer,context:U,inject:(E,K)=>{return KY.propagation.inject(U,E,K)},extract:(E,K)=>{return KY.propagation.extract(U,E,K)}}}),B.decorateRequest(OW,null),B.decorateRequest(uL,null),B.addHook("onRoute",function(Z){if(A[rP]?.(Z)===!0){A._logger.debug(`Ignoring route instrumentation ${Z.method} ${Z.url} because it matches the ignore path`);return}for(let U of kEQ)if(Z[U]!=null){let $=Z[U];if(typeof $==="function")Z[U]=F($,{[RY.ATTR_SERVICE_NAME]:B[N9].servername,[H0.HOOK_NAME]:`${this.pluginName} - route -> ${U}`,[H0.FASTIFY_TYPE]:jW.ROUTE,[RY.ATTR_HTTP_ROUTE]:Z.url,[H0.HOOK_CALLBACK_NAME]:$.name?.length>0?$.name:HG});else if(Array.isArray($)){let E=[];for(let K of $)E.push(F(K,{[RY.ATTR_SERVICE_NAME]:B[N9].servername,[H0.HOOK_NAME]:`${this.pluginName} - route -> ${U}`,[H0.FASTIFY_TYPE]:jW.ROUTE,[RY.ATTR_HTTP_ROUTE]:Z.url,[H0.HOOK_CALLBACK_NAME]:K.name?.length>0?K.name:HG}));Z[U]=E}}if(Z.onSend!=null)Z.onSend=Array.isArray(Z.onSend)?[...Z.onSend,C]:[Z.onSend,C];else Z.onSend=C;if(Z.onError!=null)Z.onError=Array.isArray(Z.onError)?[...Z.onError,X]:[Z.onError,X];else Z.onError=X;Z.handler=F(Z.handler,{[RY.ATTR_SERVICE_NAME]:B[N9].servername,[H0.HOOK_NAME]:`${this.pluginName} - route-handler`,[H0.FASTIFY_TYPE]:jW.HANDLER,[RY.ATTR_HTTP_ROUTE]:Z.url,[H0.HOOK_CALLBACK_NAME]:Z.handler.name.length>0?Z.handler.name:HG})}),B.addHook("onRequest",function(Z,U,$){if(this[N9].isEnabled()===!1)return $();else if(this[N9][rP]?.({url:Z.url,method:Z.method})===!0)return this[N9]._logger.debug(`Ignoring request ${Z.method} ${Z.url} because it matches the ignore path`),$();let E=KY.context.active();if(KY.trace.getSpan(E)==null)E=KY.propagation.extract(E,Z.headers);let K=aP.getRPCMetadata(E);if(Z.routeOptions.url!=null&&K?.type===aP.RPCType.HTTP)K.route=Z.routeOptions.url;let I=this[N9].tracer.startSpan("request",{attributes:{[RY.ATTR_SERVICE_NAME]:B[N9].servername,[H0.ROOT]:"@fastify/otel",[RY.ATTR_HTTP_ROUTE]:Z.url,[RY.ATTR_HTTP_REQUEST_METHOD]:Z.method}},E);Z[uL]=KY.trace.setSpan(E,I),Z[OW]=I,KY.context.with(Z[uL],()=>{$()})}),B.addHook("onResponse",function(Z,U,$){let E=Z[OW];if(E!=null)E.setStatus({code:KY.SpanStatusCode.OK,message:"OK"}),E.setAttributes({[RY.ATTR_HTTP_RESPONSE_STATUS_CODE]:404}),E.end();Z[OW]=null,$()}),B.addHook=G,B.setNotFoundHandler=W,J();function C(Z,U,$,E){let K=Z[OW];if(K!=null){if(U.statusCode<500)K.setStatus({code:KY.SpanStatusCode.OK,message:"OK"});K.setAttributes({[RY.ATTR_HTTP_RESPONSE_STATUS_CODE]:U.statusCode}),K.end()}Z[OW]=null,E(null,$)}function X(Z,U,$,E){let K=Z[OW];if(K!=null)K.setStatus({code:KY.SpanStatusCode.ERROR,message:$.message}),K.recordException($);E()}function G(Z,U){let $=this[_EQ];if(kEQ.includes(Z))return $.call(this,Z,F(U,{[RY.ATTR_SERVICE_NAME]:B[N9].servername,[H0.HOOK_NAME]:`${this.pluginName} - ${Z}`,[H0.FASTIFY_TYPE]:jW.INSTANCE,[H0.HOOK_CALLBACK_NAME]:U.name?.length>0?U.name:HG}));else return $.call(this,Z,U)}function W(Z,U){let $=this[vEQ];if(typeof Z==="function")U=F(Z,{[RY.ATTR_SERVICE_NAME]:B[N9].servername,[H0.HOOK_NAME]:`${this.pluginName} - not-found-handler`,[H0.FASTIFY_TYPE]:jW.INSTANCE,[H0.HOOK_CALLBACK_NAME]:Z.name?.length>0?Z.name:HG}),$.call(this,U);else{if(Z.preValidation!=null)Z.preValidation=F(Z.preValidation,{[RY.ATTR_SERVICE_NAME]:B[N9].servername,[H0.HOOK_NAME]:`${this.pluginName} - not-found-handler - preValidation`,[H0.FASTIFY_TYPE]:jW.INSTANCE,[H0.HOOK_CALLBACK_NAME]:Z.preValidation.name?.length>0?Z.preValidation.name:HG});if(Z.preHandler!=null)Z.preHandler=F(Z.preHandler,{[RY.ATTR_SERVICE_NAME]:B[N9].servername,[H0.HOOK_NAME]:`${this.pluginName} - not-found-handler - preHandler`,[H0.FASTIFY_TYPE]:jW.INSTANCE,[H0.HOOK_CALLBACK_NAME]:Z.preHandler.name?.length>0?Z.preHandler.name:HG});U=F(U,{[RY.ATTR_SERVICE_NAME]:B[N9].servername,[H0.HOOK_NAME]:`${this.pluginName} - not-found-handler`,[H0.FASTIFY_TYPE]:jW.INSTANCE,[H0.HOOK_CALLBACK_NAME]:U.name?.length>0?U.name:HG}),$.call(this,Z,U)}}function F(Z,U={}){return function(...E){let K=this[N9],[I]=E;if(K.isEnabled()===!1)return Z.call(this,...E);let V=I[uL]??KY.context.active(),H=K.tracer.startSpan(`handler - ${Z.name?.length>0?Z.name:this.pluginName??HG}`,{attributes:U},V);return KY.context.with(KY.trace.setSpan(V,H),function(){try{let D=Z.call(this,...E);if(typeof D?.then==="function")return D.then((L)=>{return H.end(),L},(L)=>{return H.setStatus({code:KY.SpanStatusCode.ERROR,message:L.message}),H.recordException(L),H.end(),Promise.reject(L)});return H.end(),D}catch(D){throw H.setStatus({code:KY.SpanStatusCode.ERROR,message:D.message}),H.recordException(D),H.end(),D}},this)}}}}}var E1=qA(yA(),1),tP=qA(MB(),1),P$=qA(NB(),1),bEQ=qA(dB(),1);var DG;(function(A){A.FASTIFY_NAME="fastify.name";let B="fastify.type";A.FASTIFY_TYPE=B;let Y="hook.name";A.HOOK_NAME=Y;let J="plugin.name";A.PLUGIN_NAME=J})(DG||(DG={}));var dL;(function(A){A.MIDDLEWARE="middleware";let B="request_handler";A.REQUEST_HANDLER=B})(dL||(dL={}));var cL;(function(A){A.MIDDLEWARE="middleware";let B="request handler";A.REQUEST_HANDLER=B})(cL||(cL={}));var hEQ=qA(yA(),1);var lL=Symbol("opentelemetry.instrumentation.fastify.request_active_span");function Pn(A,Q,B,Y={}){let J=Q.startSpan(B,{attributes:Y}),C=A[lL]||[];return C.push(J),Object.defineProperty(A,lL,{enumerable:!1,configurable:!0,value:C}),J}function oP(A,Q){let B=A[lL]||[];if(!B.length)return;B.forEach((Y)=>{if(Q)Y.setStatus({code:hEQ.SpanStatusCode.ERROR,message:Q.message}),Y.recordException(Q);Y.end()}),delete A[lL]}function xEQ(A,Q,B){let Y,J=void 0;try{if(J=A(),gEQ(J))J.then((C)=>Q(void 0,C),(C)=>Q(C))}catch(C){Y=C}finally{if(!gEQ(J)){if(Q(Y,J),Y)throw Y}return J}}function gEQ(A){return typeof A==="object"&&A&&typeof Object.getOwnPropertyDescriptor(A,"then")?.value==="function"||!1}var zq0="0.1.0",Rq0="@sentry/instrumentation-fastify-v3",fEQ="anonymous",wq0=new Set(["onTimeout","onRequest","preParsing","preValidation","preSerialization","preHandler","onSend","onResponse","onError"]);class Tn extends P$.InstrumentationBase{constructor(A={}){super(Rq0,zq0,A)}init(){return[new P$.InstrumentationNodeModuleDefinition("fastify",[">=3.0.0 <4"],(A)=>{return this._patchConstructor(A)})]}_hookOnRequest(){let A=this;return function(B,Y,J){if(!A.isEnabled())return J();A._wrap(Y,"send",A._patchSend());let C=B,X=tP.getRPCMetadata(E1.context.active()),G=C.routeOptions?C.routeOptions.url:B.routerPath;if(G&&X?.type===tP.RPCType.HTTP)X.route=G;let W=B.method||"GET";RQ().setTransactionName(`${W} ${G}`),J()}}_wrapHandler(A,Q,B,Y){let J=this;return this._diag.debug("Patching fastify route.handler function"),function(...C){if(!J.isEnabled())return B.apply(this,C);let X=B.name||A||fEQ,G=`${cL.MIDDLEWARE} - ${X}`,W=C[1],F=Pn(W,J.tracer,G,{[DG.FASTIFY_TYPE]:dL.MIDDLEWARE,[DG.PLUGIN_NAME]:A,[DG.HOOK_NAME]:Q}),Z=Y&&C[C.length-1];if(Z)C[C.length-1]=function(...U){oP(W),Z.apply(this,U)};return E1.context.with(E1.trace.setSpan(E1.context.active(),F),()=>{return xEQ(()=>{return B.apply(this,C)},(U)=>{if(U instanceof Error)F.setStatus({code:E1.SpanStatusCode.ERROR,message:U.message}),F.recordException(U);if(!Y)oP(W)})})}}_wrapAddHook(){let A=this;return this._diag.debug("Patching fastify server.addHook function"),function(Q){return function(...Y){let J=Y[0],C=Y[1],X=this.pluginName;if(!wq0.has(J))return Q.apply(this,Y);let G=typeof Y[Y.length-1]==="function"&&C.constructor.name!=="AsyncFunction";return Q.apply(this,[J,A._wrapHandler(X,J,C,G)])}}}_patchConstructor(A){let Q=this;function B(...Y){let J=A.fastify.apply(this,Y);return J.addHook("onRequest",Q._hookOnRequest()),J.addHook("preHandler",Q._hookPreHandler()),jq0(),Q._wrap(J,"addHook",Q._wrapAddHook()),J}if(A.errorCodes!==void 0)B.errorCodes=A.errorCodes;return B.fastify=B,B.default=B,B}_patchSend(){let A=this;return this._diag.debug("Patching fastify reply.send function"),function(B){return function(...J){let C=J[0];if(!A.isEnabled())return B.apply(this,J);return P$.safeExecuteInTheMiddle(()=>{return B.apply(this,J)},(X)=>{if(!X&&C instanceof Error)X=C;oP(this,X)})}}}_hookPreHandler(){let A=this;return this._diag.debug("Patching fastify preHandler function"),function(B,Y,J){if(!A.isEnabled())return J();let C=B,X=C.routeOptions?.handler||C.context?.handler,G=X?.name.startsWith("bound ")?X.name.substring(6):X?.name,W=`${cL.REQUEST_HANDLER} - ${G||this.pluginName||fEQ}`,F={[DG.PLUGIN_NAME]:this.pluginName,[DG.FASTIFY_TYPE]:dL.REQUEST_HANDLER,[bEQ.SEMATTRS_HTTP_ROUTE]:C.routeOptions?C.routeOptions.url:B.routerPath};if(G)F[DG.FASTIFY_NAME]=G;let Z=Pn(Y,A.tracer,W,F);mEQ(Z);let{requestHook:U}=A.getConfig();if(U)P$.safeExecuteInTheMiddle(()=>U(Z,{request:B}),($)=>{if($)A._diag.error("request hook failed",$)},!0);return E1.context.with(E1.trace.setSpan(E1.context.active(),Z),()=>{J()})}}}function jq0(){let A=gA();if(A)A.on("spanStart",(Q)=>{mEQ(Q)})}function mEQ(A){let Q=eA(A).data,B=Q["fastify.type"];if(Q[YQ]||!B)return;A.setAttributes({[DQ]:"auto.http.otel.fastify",[YQ]:`${B}.fastify`});let Y=Q["fastify.name"]||Q["plugin.name"]||Q["hook.name"];if(typeof Y==="string"){let J=Y.replace(/^fastify -> /,"").replace(/^@fastify\/otel -> /,"");A.updateName(J)}}var dEQ="Fastify",Oq0="Fastify-V3",Sn=EQ(Oq0,()=>new Tn),kn=EQ(dEQ,()=>{let A=new On,Q=A.plugin();return uEQ.subscribe("fastify.initialization",(B)=>{let Y=B.fastify;Y?.register(Q).after((J)=>{if(J)fQ&&e.error("Failed to setup Fastify instrumentation",J);else if(Sq0(),Y)kq0(Y)})}),A}),Pq0=()=>{return{name:dEQ,setupOnce(){Sn(),kn()}}},eP=wA(Pq0);function Tq0(A,Q,B){let Y=B.statusCode;return Y>=500||Y<=299}function cEQ(A,Q){let B=Q?.shouldHandleError||Tq0,Y=Object.assign(function(J,C,X){J.addHook("onError",async(G,W,F)=>{if(B(F,G,W))jB(F)}),X()},{[Symbol.for("skip-override")]:!0,[Symbol.for("fastify.display-name")]:"sentry-fastify-error-handler"});A.register(Y)}function lEQ(A){let Q=eA(A),B=Q.description,Y=Q.data,J=Y["fastify.type"],C=J==="hook",X=J===B?.startsWith("handler -"),G=B==="request"||J==="request-handler";if(Y[YQ]||!X&&!G&&!C)return;let W=C?"hook":X?"middleware":G?"request-handler":"";A.setAttributes({[DQ]:"auto.http.otel.fastify",[YQ]:`${W}.fastify`});let F=Y["fastify.name"]||Y["plugin.name"]||Y["hook.name"];if(typeof F==="string"){let Z=F.replace(/^fastify -> /,"").replace(/^@fastify\/otel -> /,"");A.updateName(Z)}}function Sq0(){let A=gA();if(A)A.on("spanStart",(Q)=>{lEQ(Q)})}function kq0(A){A.addHook("onRequest",async(Q,B)=>{if(Q.opentelemetry){let{span:C}=Q.opentelemetry();if(C)lEQ(C)}let Y=Q.routeOptions?.url,J=Q.method||"GET";RQ().setTransactionName(`${J} ${Y}`)})}var PKQ=qA(OKQ(),1);var TKQ="Graphql",fn=EQ(TKQ,PKQ.GraphQLInstrumentation,(A)=>{let Q=SKQ(A);return{...Q,responseHook(B){s0(B,"auto.graphql.otel.graphql");let Y=eA(B).data,J=Y["graphql.operation.type"],C=Y["graphql.operation.name"];if(Q.useOperationNameForRootSpan&&J){let X=K0(B),W=eA(X).data[wK]||[],F=C?`${J} ${C}`:`${J}`;if(Array.isArray(W))W.push(F),X.setAttribute(wK,W);else if(typeof W==="string")X.setAttribute(wK,[W,F]);else X.setAttribute(wK,F);if(!eA(X).data["original-description"])X.setAttribute("original-description",eA(X).description);X.updateName(`${eA(X).data["original-description"]} (${JM0(W)})`)}}}}),YM0=(A={})=>{return{name:TKQ,setupOnce(){fn(SKQ(A))}}},YT=wA(YM0);function SKQ(A){return{ignoreResolveSpans:!0,ignoreTrivialResolveSpans:!0,useOperationNameForRootSpan:!0,...A}}function JM0(A){if(Array.isArray(A)){let Q=A.slice().sort();if(Q.length<=5)return Q.join(", ");else return`${Q.slice(0,5).join(", ")}, +${Q.length-5}`}return`${A}`}var nKQ=qA(iKQ(),1);var sKQ="Kafka",bn=EQ(sKQ,()=>new nKQ.KafkaJsInstrumentation({consumerHook(A){s0(A,"auto.kafkajs.otel.consumer")},producerHook(A){s0(A,"auto.kafkajs.otel.producer")}})),GM0=()=>{return{name:sKQ,setupOnce(){bn()}}},JT=wA(GM0);var XVQ=qA(CVQ(),1);var GVQ="LruMemoizer",mn=EQ(GVQ,()=>new XVQ.LruMemoizerInstrumentation),$M0=()=>{return{name:GVQ,setupOnce(){mn()}}},CT=wA($M0);var MVQ=qA(qVQ(),1);var zVQ="Mongo",pn=EQ(zVQ,()=>new MVQ.MongoDBInstrumentation({dbStatementSerializer:IM0,responseHook(A){s0(A,"auto.db.otel.mongo")}}));function IM0(A){let Q=ln(A);return JSON.stringify(Q)}function ln(A){if(Array.isArray(A))return A.map((Q)=>ln(Q));if(HM0(A)){let Q={};return Object.entries(A).map(([B,Y])=>[B,ln(Y)]).reduce((B,Y)=>{if(NM0(Y))B[Y[0]]=Y[1];return B},Q)}return"?"}function HM0(A){return typeof A==="object"&&A!==null&&!DM0(A)}function DM0(A){let Q=!1;if(typeof Buffer<"u")Q=Buffer.isBuffer(A);return Q}function NM0(A){return Array.isArray(A)}var LM0=()=>{return{name:zVQ,setupOnce(){pn()}}},XT=wA(LM0);var lVQ=qA(cVQ(),1);var pVQ="Mongoose",rn=EQ(pVQ,()=>new lVQ.MongooseInstrumentation({responseHook(A){s0(A,"auto.db.otel.mongoose")}})),vM0=()=>{return{name:pVQ,setupOnce(){rn()}}},WT=wA(vM0);var FIQ=qA(WIQ(),1);var ZIQ="Mysql",en=EQ(ZIQ,()=>new FIQ.MySQLInstrumentation({})),rM0=()=>{return{name:ZIQ,setupOnce(){en()}}},ZT=wA(rM0);var SIQ=qA(TIQ(),1);var kIQ="Mysql2",Js=EQ(kIQ,()=>new SIQ.MySQL2Instrumentation({responseHook(A){s0(A,"auto.db.otel.mysql2")}})),Uz0=()=>{return{name:kIQ,setupOnce(){Js()}}},UT=wA(Uz0);var DHQ=qA(aIQ(),1),NHQ=qA(EHQ(),1);var jz0=["get","set","setex"],Xs=["get","mget"],Oz0=["set","setex"];function eL(A,Q){return A.includes(Q.toLowerCase())}function Gs(A){if(eL(Xs,A))return"cache.get";else if(eL(Oz0,A))return"cache.put";else return}function Pz0(A,Q){return Q.some((B)=>A.startsWith(B))}function VHQ(A,Q){try{if(Q.length===0)return;let B=(J)=>{if(typeof J==="string"||typeof J==="number"||Buffer.isBuffer(J))return[J.toString()];else if(Array.isArray(J))return KHQ(J.map((C)=>B(C)));else return[""]},Y=Q[0];if(eL(jz0,A)&&Y!=null)return B(Y);return KHQ(Q.map((J)=>B(J)))}catch(B){return}}function IHQ(A,Q,B){if(!Gs(A))return!1;for(let Y of Q)if(Pz0(Y,B))return!0;return!1}function HHQ(A){let Q=(B)=>{try{if(Buffer.isBuffer(B))return B.byteLength;else if(typeof B==="string")return B.length;else if(typeof B==="number")return B.toString().length;else if(B===null||B===void 0)return 0;return JSON.stringify(B).length}catch(Y){return}};return Array.isArray(A)?A.reduce((B,Y)=>{let J=Q(Y);return typeof J==="number"?B!==void 0?B+J:J:B},0):Q(A)}function KHQ(A){let Q=[],B=(Y)=>{Y.forEach((J)=>{if(Array.isArray(J))B(J);else Q.push(J)})};return B(A),Q}var LHQ="Redis",Ws={},qHQ=(A,Q,B,Y)=>{A.setAttribute(DQ,"auto.db.otel.redis");let J=VHQ(Q,B),C=Gs(Q);if(!J||!C||!Ws.cachePrefixes||!IHQ(Q,J,Ws.cachePrefixes))return;let X=eA(A).data["net.peer.name"],G=eA(A).data["net.peer.port"];if(G&&X)A.setAttributes({"network.peer.address":X,"network.peer.port":G});let W=HHQ(Y);if(W)A.setAttribute(iu,W);if(eL(Xs,Q)&&W!==void 0)A.setAttribute(lu,W>0);A.setAttributes({[YQ]:C,[pu]:J});let F=J.join(", ");A.updateName(n9(F,1024))},Tz0=EQ("IORedis",()=>{return new DHQ.IORedisInstrumentation({responseHook:qHQ})}),Sz0=EQ("Redis-4",()=>{return new NHQ.RedisInstrumentation({responseHook:qHQ})}),Fs=Object.assign(()=>{Tz0(),Sz0()},{id:LHQ}),kz0=(A={})=>{return{name:LHQ,setupOnce(){Ws=A,Fs()}}},KT=wA(kz0);var eHQ=qA(tHQ(),1);var ADQ="Postgres",Hs=EQ(ADQ,()=>new eHQ.PgInstrumentation({requireParentSpan:!0,requestHook(A){s0(A,"auto.db.otel.postgres")}})),V20=()=>{return{name:ADQ,setupOnce(){Hs()}}},DT=wA(V20);var YDQ=qA(yA(),1),NT=qA(NB(),1),dW=qA(yA(),1);var I20=process.env.PRISMA_SHOW_ALL_TRACES==="true",H20="00-10-10-00";function D20(A){switch(A){case"client":return dW.SpanKind.CLIENT;case"internal":default:return dW.SpanKind.INTERNAL}}var N20=class{traceMiddleware;tracerProvider;ignoreSpanTypes;constructor({traceMiddleware:A,tracerProvider:Q,ignoreSpanTypes:B}){this.traceMiddleware=A,this.tracerProvider=Q,this.ignoreSpanTypes=B}isEnabled(){return!0}getTraceParent(A){let Q=dW.trace.getSpanContext(A??dW.context.active());if(Q)return`00-${Q.traceId}-${Q.spanId}-0${Q.traceFlags}`;return H20}dispatchEngineSpans(A){let Q=this.tracerProvider.getTracer("prisma"),B=new Map,Y=A.filter((J)=>J.parentId===null);for(let J of Y)JDQ(Q,J,A,B,this.ignoreSpanTypes)}getActiveContext(){return dW.context.active()}runInChildSpan(A,Q){if(typeof A==="string")A={name:A};if(A.internal&&!I20)return Q();if(A.middleware&&!this.traceMiddleware)return Q();let B=this.tracerProvider.getTracer("prisma"),Y=A.context??this.getActiveContext(),J=`prisma:client:${A.name}`;if(CDQ(J,this.ignoreSpanTypes))return Q();if(A.active===!1){let C=B.startSpan(J,A,Y);return QDQ(C,Q(C,Y))}return B.startActiveSpan(J,A,(C)=>QDQ(C,Q(C,Y)))}};function JDQ(A,Q,B,Y,J){if(CDQ(Q.name,J))return;let C={attributes:Q.attributes,kind:D20(Q.kind),startTime:Q.startTime};A.startActiveSpan(Q.name,C,(X)=>{if(Y.set(Q.id,X.spanContext().spanId),Q.links)X.addLinks(Q.links.flatMap((W)=>{let F=Y.get(W);if(!F)return[];return{context:{spanId:F,traceId:X.spanContext().traceId,traceFlags:X.spanContext().traceFlags}}}));let G=B.filter((W)=>W.parentId===Q.id);for(let W of G)JDQ(A,W,B,Y,J);X.end(Q.endTime)})}function QDQ(A,Q){if(L20(Q))return Q.then((B)=>{return A.end(),B},(B)=>{throw A.end(),B});return A.end(),Q}function L20(A){return A!=null&&typeof A.then==="function"}function CDQ(A,Q){return Q.some((B)=>typeof B==="string"?B===A:B.test(A))}var XDQ={name:"@prisma/instrumentation",version:"6.7.0",description:"OpenTelemetry compliant instrumentation for Prisma Client",main:"dist/index.js",module:"dist/index.mjs",types:"dist/index.d.ts",exports:{".":{require:{types:"./dist/index.d.ts",default:"./dist/index.js"},import:{types:"./dist/index.d.ts",default:"./dist/index.mjs"}}},license:"Apache-2.0",homepage:"https://www.prisma.io",repository:{type:"git",url:"https://github.com/prisma/prisma.git",directory:"packages/instrumentation"},bugs:"https://github.com/prisma/prisma/issues",devDependencies:{"@prisma/internals":"workspace:*","@swc/core":"1.11.5","@types/jest":"29.5.14","@types/node":"18.19.76","@opentelemetry/api":"1.9.0",jest:"29.7.0","jest-junit":"16.0.0",typescript:"5.4.5"},dependencies:{"@opentelemetry/instrumentation":"^0.52.0 || ^0.53.0 || ^0.54.0 || ^0.55.0 || ^0.56.0 || ^0.57.0"},peerDependencies:{"@opentelemetry/api":"^1.8"},files:["dist"],keywords:["prisma","instrumentation","opentelemetry","otel"],scripts:{dev:"DEV=true tsx helpers/build.ts",build:"tsx helpers/build.ts",prepublishOnly:"pnpm run build",test:"jest"},sideEffects:!1},Ns=XDQ.version,q20=Ns.split(".")[0],BDQ="PRISMA_INSTRUMENTATION",Ds=`V${q20}_PRISMA_INSTRUMENTATION`,M20=XDQ.name,z20="@prisma/client",GDQ=class extends NT.InstrumentationBase{tracerProvider;constructor(A={}){super(M20,Ns,A)}setTracerProvider(A){this.tracerProvider=A}init(){return[new NT.InstrumentationNodeModuleDefinition(z20,[Ns])]}enable(){let A=this._config,Q={helper:new N20({traceMiddleware:A.middleware??!1,tracerProvider:this.tracerProvider??YDQ.trace.getTracerProvider(),ignoreSpanTypes:A.ignoreSpanTypes??[]})};global[BDQ]=Q,global[Ds]=Q}disable(){delete global[BDQ],delete global[Ds]}isEnabled(){return Boolean(global[Ds])}};var WDQ="Prisma";function R20(A){return!!A&&typeof A==="object"&&"dispatchEngineSpans"in A}function FDQ(){let A=globalThis.PRISMA_INSTRUMENTATION;return A&&typeof A==="object"&&"helper"in A?A.helper:void 0}class ZDQ extends GDQ{constructor(){super()}enable(){super.enable();let A=FDQ(),Q=!1;if(R20(A))A.createEngineSpan=()=>{f0(()=>{if(!Q)Q=!0,console.warn("[Sentry] The Sentry SDK supports tracing with Prisma version 5 only with limited capabilities. For full tracing capabilities pass `prismaInstrumentation` for version 5 to the Sentry `prismaIntegration`. Read more: https://docs.sentry.io/platforms/javascript/guides/node/configuration/integrations/prisma/")})}}}var w20=EQ(WDQ,(A)=>{if(A?.prismaInstrumentation)return A.prismaInstrumentation;return new ZDQ}),LT=wA(({prismaInstrumentation:A}={})=>{return{name:WDQ,setupOnce(){w20({prismaInstrumentation:A})},setup(Q){if(!FDQ())return;Q.on("spanStart",(B)=>{let Y=eA(B);if(Y.description?.startsWith("prisma:"))B.setAttribute(DQ,"auto.db.otel.prisma");if(Y.description==="prisma:engine:db_query"&&Y.data["db.query.text"])B.updateName(Y.data["db.query.text"]);if(Y.description==="prisma:engine:db_query"&&!Y.data["db.system"])B.setAttribute("db.system","prisma")})}}});var PDQ=qA(ODQ(),1);var TDQ="Hapi",zT=EQ(TDQ,()=>new PDQ.HapiInstrumentation),i20=()=>{return{name:TDQ,setupOnce(){zT()}}},RT=wA(i20);function n20(A){return!!(A&&typeof A==="object"&&("error"in A)&&A.error)}function s20(A){jB(A,{mechanism:{type:"hapi",handled:!1,data:{function:"hapiErrorPlugin"}}})}var r20={name:"SentryHapiErrorPlugin",version:l0,register:async function(A){A.events.on({name:"request",channels:["error"]},(B,Y)=>{if(RQ()!==v5()){let J=B.route;if(J.path)RQ().setTransactionName(`${J.method.toUpperCase()} ${J.path}`)}else fQ&&e.warn("Isolation scope is still the default isolation scope - skipping setting transactionName");if(n20(Y))s20(Y.error)})}};async function SDQ(A){await A.register(r20);let Q=gA();if(Q)Q.on("spanStart",(B)=>{a20(B)});RW(A.register,"hapi")}function a20(A){let Q=eA(A).data,B=Q["hapi.type"];if(Q[YQ]||!B)return;A.setAttributes({[DQ]:"auto.http.otel.hapi",[YQ]:`${B}.hapi`})}var eDQ=qA(tDQ(),1),ANQ=qA(dB(),1);var QNQ="Koa",Ps=EQ(QNQ,()=>new eDQ.KoaInstrumentation({requestHook(A,Q){if(X30(A),RQ()===v5()){fQ&&e.warn("Isolation scope is default isolation scope - skipping setting transactionName");return}let Y=eA(A).data[ANQ.ATTR_HTTP_ROUTE],J=Q.context?.request?.method?.toUpperCase()||"GET";if(Y)RQ().setTransactionName(`${J} ${Y}`)}})),C30=()=>{return{name:QNQ,setupOnce(){Ps()}}},OT=wA(C30),BNQ=(A)=>{A.use(async(Q,B)=>{try{await B()}catch(Y){throw jB(Y),Y}}),RW(A.use,"koa")};function X30(A){A.setAttribute(DQ,"auto.http.otel.koa");let Q=eA(A).data,B=Q["koa.type"];if(B)A.setAttribute(YQ,`${B}.koa`);let Y=Q["koa.name"];if(typeof Y==="string")A.updateName(Y||"< unknown >")}var zNQ=qA(MNQ(),1);var RNQ="Connect",vs=EQ(RNQ,()=>new zNQ.ConnectInstrumentation),L30=()=>{return{name:RNQ,setupOnce(){vs()}}},TT=wA(L30);function q30(A,Q,B,Y){jB(A),Y(A)}var wNQ=(A)=>{A.use(q30);let Q=gA();if(Q)Q.on("spanStart",(B)=>{M30(B)});RW(A.use,"connect")};function M30(A){let Q=eA(A).data,B=Q["connect.type"];if(Q[YQ]||!B)return;A.setAttributes({[DQ]:"auto.http.otel.connect",[YQ]:`${B}.connect`});let Y=Q["connect.name"];if(typeof Y==="string")A.updateName(Y)}import*as z30 from"node:http";var ys="Spotlight",R30=(A={})=>{let Q={sidecarUrl:A.sidecarUrl||"http://localhost:8969/stream"};return{name:ys,setup(B){if(typeof process==="object"&&process.env&&process.env.NODE_ENV!=="development")e.warn("[Spotlight] It seems you're not in dev mode. Do you really want to have Spotlight enabled?");w30(B,Q)}}},ST=wA(R30);function w30(A,Q){let B=j30(Q.sidecarUrl);if(!B)return;let Y=0;A.on("beforeEnvelope",(J)=>{if(Y>3){e.warn("[Spotlight] Disabled Sentry -> Spotlight integration due to too many failed requests");return}let C=RN(J),G=O30()({method:"POST",path:B.pathname,hostname:B.hostname,port:B.port,headers:{"Content-Type":"application/x-sentry-envelope"}},(W)=>{if(W.statusCode&&W.statusCode>=200&&W.statusCode<400)Y=0;W.on("data",()=>{}),W.on("end",()=>{}),W.setEncoding("utf8")});G.on("error",()=>{Y++,e.warn("[Spotlight] Failed to send envelope to Spotlight Sidecar")}),G.write(C),G.end()})}function j30(A){try{return new URL(`${A}`)}catch{e.warn(`[Spotlight] Invalid sidecar URL: ${A}`);return}}function O30(){let{request:A}=z30;if(P30(A))return A.__sentry_original__;return A}function P30(A){return"__sentry_original__"in A}var iNQ=qA(pNQ(),1);var nNQ="Knex",l30=EQ(nNQ,()=>new iNQ.KnexInstrumentation({requireParentSpan:!0})),p30=()=>{let A;return{name:nNQ,setupOnce(){let Q=l30();A=VW(Q)},setup(Q){A?.(()=>Q.on("spanStart",(B)=>{let{data:Y}=eA(B);if("knex.version"in Y)B.setAttribute(DQ,"auto.db.otel.knex")}))}}},sNQ=wA(p30);var ULQ=qA($LQ(),1);var t30=new Set(["callProcedure","execSql","execSqlBatch","execBulkLoad","prepare","execute"]),ELQ="Tedious",hs=EQ(ELQ,()=>new ULQ.TediousInstrumentation({})),e30=()=>{let A;return{name:ELQ,setupOnce(){let Q=hs();A=VW(Q)},setup(Q){A?.(()=>Q.on("spanStart",(B)=>{let{description:Y,data:J}=eA(B);if(!Y||J["db.system"]!=="mssql")return;let C=Y.split(" ")[0]||"";if(t30.has(C))B.setAttribute(DQ,"auto.db.otel.tedious")}))}}},gT=wA(e30);var zLQ=qA(MLQ(),1);var RLQ="GenericPool",fs=EQ(RLQ,()=>new zLQ.GenericPoolInstrumentation({})),YR0=()=>{let A;return{name:RLQ,setupOnce(){let Q=fs();A=VW(Q)},setup(Q){A?.(()=>Q.on("spanStart",(B)=>{let J=eA(B).description;if(J==="generic-pool.aquire"||J==="generic-pool.acquire")B.setAttribute(DQ,"auto.db.otel.generic_pool")}))}}},hT=wA(YR0);var xLQ=qA(hLQ(),1);var fLQ="Dataloader",XR0=EQ(fLQ,()=>new xLQ.DataloaderInstrumentation({requireParentSpan:!0})),GR0=()=>{let A;return{name:fLQ,setupOnce(){let Q=XR0();A=VW(Q)},setup(Q){A?.(()=>{Q.on("spanStart",(B)=>{let Y=eA(B);if(Y.description?.startsWith("dataloader"))B.setAttribute(DQ,"auto.db.otel.dataloader");if(Y.description==="dataloader.load"||Y.description==="dataloader.loadMany"||Y.description==="dataloader.batch")B.setAttribute(YQ,"cache.get")})})}}},bLQ=wA(GR0);var CqQ=qA(JqQ(),1);var XqQ="Amqplib",OR0={consumeEndHook:(A)=>{s0(A,"auto.amqplib.otel.consumer")},publishHook:(A)=>{s0(A,"auto.amqplib.otel.publisher")}},cs=EQ(XqQ,()=>new CqQ.AmqplibInstrumentation(OR0)),PR0=()=>{return{name:XqQ,setupOnce(){cs()}}},bT=wA(PR0);var mT=qA(NB(),1);var GqQ=["generateText","streamText","generateObject","streamObject","embed","embedMany"];class Cq extends mT.InstrumentationBase{__init(){this._isPatched=!1}__init2(){this._callbacks=[]}constructor(A={}){super("@sentry/instrumentation-vercel-ai",l0,A);Cq.prototype.__init.call(this),Cq.prototype.__init2.call(this)}init(){return new mT.InstrumentationNodeModuleDefinition("ai",[">=3.0.0 <5"],this._patch.bind(this))}callWhenPatched(A){if(this._isPatched)A();else this._callbacks.push(A)}_patch(A){this._isPatched=!0,this._callbacks.forEach((B)=>B()),this._callbacks=[];function Q(B){return(...Y)=>{let J=Y[0].experimental_telemetry||{};if(J.isEnabled===void 0)Y[0].experimental_telemetry={isEnabled:!0,recordInputs:!1,recordOutputs:!1,...J};return B.apply(this,Y)}}if(Object.prototype.toString.call(A)==="[object Module]"){for(let B of GqQ)A[B]=Q(A[B]);return A}else{let B=GqQ.reduce((Y,J)=>{return Y[J]=Q(A[J]),Y},{});return{...A,...B}}}}var WqQ="VercelAI",ls=EQ(WqQ,()=>new Cq({})),TR0=()=>{let A;return{name:WqQ,setupOnce(){A=ls()},setup(Q){A?.callWhenPatched(()=>{Q.on("spanStart",(B)=>{let{data:Y,description:J}=eA(B);if(!J)return;let C=Y["ai.model.id"],X=Y["ai.model.provider"];if(typeof C!=="string"||typeof X!=="string"||!C||!X)return;let G=!1;switch(J){case"ai.generateText":{B.setAttribute(YQ,"ai.pipeline.generateText"),G=!0;break}case"ai.generateText.doGenerate":{B.setAttribute(YQ,"ai.run.doGenerate");break}case"ai.streamText":{B.setAttribute(YQ,"ai.pipeline.streamText"),G=!0;break}case"ai.streamText.doStream":{B.setAttribute(YQ,"ai.run.doStream");break}case"ai.generateObject":{B.setAttribute(YQ,"ai.pipeline.generateObject"),G=!0;break}case"ai.generateObject.doGenerate":{B.setAttribute(YQ,"ai.run.doGenerate");break}case"ai.streamObject":{B.setAttribute(YQ,"ai.pipeline.streamObject"),G=!0;break}case"ai.streamObject.doStream":{B.setAttribute(YQ,"ai.run.doStream");break}case"ai.embed":{B.setAttribute(YQ,"ai.pipeline.embed"),G=!0;break}case"ai.embed.doEmbed":{B.setAttribute(YQ,"ai.embeddings");break}case"ai.embedMany":{B.setAttribute(YQ,"ai.pipeline.embedMany"),G=!0;break}case"ai.embedMany.doEmbed":{B.setAttribute(YQ,"ai.embeddings");break}case"ai.toolCall":case"ai.stream.firstChunk":case"ai.stream.finish":B.setAttribute(YQ,"ai.run");break}s0(B,"auto.vercelai.otel");let W=J.replace("ai.","");B.setAttribute("ai.pipeline.name",W),B.updateName(W);let F=Y["ai.telemetry.functionId"];if(F&&typeof F==="string"&&G)B.updateName(F),B.setAttribute("ai.pipeline.name",F);if(Y["ai.prompt"])B.setAttribute("ai.input_messages",Y["ai.prompt"]);if(Y["ai.model.id"])B.setAttribute("ai.model_id",Y["ai.model.id"]);B.setAttribute("ai.streaming",J.includes("stream"))}),Q.addEventProcessor((B)=>{if(B.type==="transaction"&&B.spans?.length)for(let Y of B.spans){let{data:J,description:C}=Y;if(!C||Y.origin!=="auto.vercelai.otel")continue;if(J["ai.usage.completionTokens"]!=null)J["ai.completion_tokens.used"]=J["ai.usage.completionTokens"];if(J["ai.usage.promptTokens"]!=null)J["ai.prompt_tokens.used"]=J["ai.usage.promptTokens"];if(typeof J["ai.usage.completionTokens"]=="number"&&typeof J["ai.usage.promptTokens"]=="number")J["ai.total_tokens.used"]=J["ai.usage.completionTokens"]+J["ai.usage.promptTokens"]}return B})})}}},uT=wA(TR0);import*as ps from"node:diagnostics_channel";var SR0="ChildProcess",dT=wA((A={})=>{return{name:SR0,setup(){ps.channel("child_process").subscribe((Q)=>{if(Q&&typeof Q==="object"&&"process"in Q)kR0(Q.process,A)}),ps.channel("worker_threads").subscribe((Q)=>{if(Q&&typeof Q==="object"&&"worker"in Q)_R0(Q.worker,A)})}}});function kR0(A,Q){let B=!1,Y;A.on("spawn",()=>{if(A.spawnfile==="/usr/bin/sw_vers"){B=!0;return}if(Y={spawnfile:A.spawnfile},Q.includeChildProcessArgs)Y.spawnargs=A.spawnargs}).on("exit",(J)=>{if(!B){if(B=!0,J!==null&&J!==0)E9({category:"child_process",message:`Child process exited with code '${J}'`,level:J===0?"info":"warning",data:Y})}}).on("error",(J)=>{if(!B)B=!0,E9({category:"child_process",message:`Child process errored with '${J.message}'`,level:"error",data:Y})})}function _R0(A,Q){let B;A.on("online",()=>{B=A.threadId}).on("error",(Y)=>{if(Q.captureWorkerErrors!==!1)jB(Y,{mechanism:{type:"instrument",handled:!1,data:{threadId:String(B)}}});else E9({category:"worker_thread",message:`Worker thread errored with '${Y.message}'`,level:"error",data:{threadId:B}})})}var vR0=["trace","debug","info","warn","error","fatal"],FqQ=Symbol.for("level"),yR0=Symbol.for("message"),gR0=Symbol.for("splat");function ZqQ(A,Q){class B extends A{constructor(Y){super(Y);this._levels=new Set(Q?.levels??vR0)}log(Y,J){try{if(setImmediate(()=>{this.emit("logged",Y)}),!hR0(Y))return;let C=Y[FqQ],{level:X,message:G,timestamp:W,...F}=Y;F[FqQ]=void 0,F[yR0]=void 0,F[gR0]=void 0;let Z=xR0[C]??"info";if(this._levels.has(Z))XG(Z,G,{...F,"sentry.origin":"auto.logging.winston"})}catch{}if(J)J()}}return B}function hR0(A){return typeof A==="object"&&A!=null}var xR0={silly:"trace",debug:"debug",verbose:"debug",http:"debug",info:"info",notice:"info",warn:"warn",warning:"warn",error:"error",emerg:"fatal",alert:"fatal",crit:"fatal"};var zqQ=qA(MqQ(),1);var lT=e$Q(zqQ.AsyncLocalStorageContextManager);var rR0="ProcessSession",RqQ=wA(()=>{return{name:rR0,setupOnce(){vN(),process.on("beforeExit",()=>{if(RQ().getSession()?.status!=="ok")pZ()})}}});function pT(){return[lP(),eP(),YT(),XT(),WT(),ZT(),UT(),KT(),DT(),LT(),RT(),OT(),TT(),gT(),hT(),JT(),bT(),CT(),uT()]}function wqQ(){return[Bn,Nn,Ln,vs,kn,Sn,zT,bn,Ps,mn,pn,rn,en,Js,Hs,zT,fn,Fs,hs,fs,cs,ls]}import*as oR0 from"node:http";import*as tR0 from"node:https";import{Readable as eR0}from"node:stream";import{createGzip as Aw0}from"node:zlib";import*as SG from"node:net";import*as rs from"node:tls";import*as ns from"node:http";var MX=Symbol("AgentBaseInternalState");class ss extends ns.Agent{constructor(A){super(A);this[MX]={}}isSecureEndpoint(A){if(A){if(typeof A.secureEndpoint==="boolean")return A.secureEndpoint;if(typeof A.protocol==="string")return A.protocol==="https:"}let{stack:Q}=Error();if(typeof Q!=="string")return!1;return Q.split(` `).some((B)=>B.indexOf("(https.js:")!==-1||B.indexOf("node:https:")!==-1)}createSocket(A,Q,B){let Y={...Q,secureEndpoint:this.isSecureEndpoint(Q)};Promise.resolve().then(()=>this.connect(A,Y)).then((J)=>{if(J instanceof ns.Agent)return J.addRequest(A,Y);this[MX].currentSocket=J,super.createSocket(A,Q,B)},B)}createConnection(){let A=this[MX].currentSocket;if(this[MX].currentSocket=void 0,!A)throw Error("No socket was returned in the `connect()` function");return A}get defaultPort(){return this[MX].defaultPort??(this.protocol==="https:"?443:80)}set defaultPort(A){if(this[MX])this[MX].defaultPort=A}get protocol(){return this[MX].protocol??(this.isSecureEndpoint()?"https:":"http:")}set protocol(A){if(this[MX])this[MX].protocol=A}}function iT(...A){e.log("[https-proxy-agent:parse-proxy-response]",...A)}function jqQ(A){return new Promise((Q,B)=>{let Y=0,J=[];function C(){let Z=A.read();if(Z)F(Z);else A.once("readable",C)}function X(){A.removeListener("end",G),A.removeListener("error",W),A.removeListener("readable",C)}function G(){X(),iT("onend"),B(Error("Proxy connection ended before receiving CONNECT response"))}function W(Z){X(),iT("onerror %o",Z),B(Z)}function F(Z){J.push(Z),Y+=Z.length;let U=Buffer.concat(J,Y),$=U.indexOf(`\r \r `);if($===-1){iT("have not received end of HTTP headers yet..."),C();return}let E=U.subarray(0,$).toString("ascii").split(`\r `),K=E.shift();if(!K)return A.destroy(),B(Error("No header received from proxy CONNECT response"));let I=K.split(" "),V=+(I[1]||0),H=I.slice(2).join(" "),D={};for(let L of E){if(!L)continue;let z=L.indexOf(":");if(z===-1)return A.destroy(),B(Error(`Invalid header from proxy CONNECT response: "${L}"`));let M=L.slice(0,z).toLowerCase(),N=L.slice(z+1).trimStart(),q=D[M];if(typeof q==="string")D[M]=[q,N];else if(Array.isArray(q))q.push(N);else D[M]=N}iT("got proxy server response: %o %o",K,D),X(),Q({connect:{statusCode:V,statusText:H,headers:D},buffered:U})}A.on("error",W),A.on("end",G),C()})}function Xq(...A){e.log("[https-proxy-agent]",...A)}class nT extends ss{static __initStatic(){this.protocols=["http","https"]}constructor(A,Q){super(Q);this.options={},this.proxy=typeof A==="string"?new URL(A):A,this.proxyHeaders=Q?.headers??{},Xq("Creating new HttpsProxyAgent instance: %o",this.proxy.href);let B=(this.proxy.hostname||this.proxy.host).replace(/^\[|\]$/g,""),Y=this.proxy.port?parseInt(this.proxy.port,10):this.proxy.protocol==="https:"?443:80;this.connectOpts={ALPNProtocols:["http/1.1"],...Q?OqQ(Q,"headers"):null,host:B,port:Y}}async connect(A,Q){let{proxy:B}=this;if(!Q.host)throw TypeError('No "host" provided');let Y;if(B.protocol==="https:"){Xq("Creating `tls.Socket`: %o",this.connectOpts);let U=this.connectOpts.servername||this.connectOpts.host;Y=rs.connect({...this.connectOpts,servername:U&&SG.isIP(U)?void 0:U})}else Xq("Creating `net.Socket`: %o",this.connectOpts),Y=SG.connect(this.connectOpts);let J=typeof this.proxyHeaders==="function"?this.proxyHeaders():{...this.proxyHeaders},C=SG.isIPv6(Q.host)?`[${Q.host}]`:Q.host,X=`CONNECT ${C}:${Q.port} HTTP/1.1\r `;if(B.username||B.password){let U=`${decodeURIComponent(B.username)}:${decodeURIComponent(B.password)}`;J["Proxy-Authorization"]=`Basic ${Buffer.from(U).toString("base64")}`}if(J.Host=`${C}:${Q.port}`,!J["Proxy-Connection"])J["Proxy-Connection"]=this.keepAlive?"Keep-Alive":"close";for(let U of Object.keys(J))X+=`${U}: ${J[U]}\r `;let G=jqQ(Y);Y.write(`${X}\r -`);let{connect:W,buffered:F}=await G;if(A.emit("proxyConnect",W),this.emit("proxyConnect",W,A),W.statusCode===200){if(A.once("socket",aR0),Q.secureEndpoint){Xq("Upgrading socket connection to TLS");let U=Q.servername||Q.host;return rs.connect({...OqQ(Q,"host","path","port"),socket:Y,servername:SG.isIP(U)?void 0:U})}return Y}Y.destroy();let Z=new SG.Socket({writable:!1});return Z.readable=!0,A.once("socket",(U)=>{Xq("Replaying proxy buffer for failed request"),U.push(F),U.push(null)}),Z}}nT.__initStatic();function aR0(A){A.resume()}function OqQ(A,...Q){let B={},Y;for(Y in A)if(!Q.includes(Y))B[Y]=A[Y];return B}var Qw0=32768;function Bw0(A){return new eR0({read(){this.push(A),this.push(null)}})}function sT(A){let Q;try{Q=new URL(A.url)}catch(W){return f0(()=>{console.warn("[@sentry/node]: Invalid dsn or tunnel option, will not send any events. The tunnel option must be a full URL when used.")}),nE(A,()=>Promise.resolve({}))}let B=Q.protocol==="https:",Y=Yw0(Q,A.proxy||(B?process.env.https_proxy:void 0)||process.env.http_proxy),J=B?tR0:oR0,C=A.keepAlive===void 0?!1:A.keepAlive,X=Y?new nT(Y):new J.Agent({keepAlive:C,maxSockets:30,timeout:2000}),G=Jw0(A,A.httpModule??J,X);return nE(A,G)}function Yw0(A,Q){let{no_proxy:B}=process.env;if(B?.split(",").some((J)=>A.host.endsWith(J)||A.hostname.endsWith(J)))return;else return Q}function Jw0(A,Q,B){let{hostname:Y,pathname:J,port:C,protocol:X,search:G}=new URL(A.url);return function(F){return new Promise((Z,U)=>{ON(()=>{let $=Bw0(F.body),E={...A.headers};if(F.body.length>Qw0)E["content-encoding"]="gzip",$=$.pipe(Aw0());let K=Q.request({method:"POST",agent:B,headers:E,hostname:Y,path:`${J}${G}`,port:C,protocol:X,ca:A.caCerts},(I)=>{I.on("data",()=>{}),I.on("end",()=>{}),I.setEncoding("utf8");let V=I.headers["retry-after"]??null,H=I.headers["x-sentry-rate-limits"]??null;Z({statusCode:I.statusCode,headers:{"retry-after":V,"x-sentry-rate-limits":Array.isArray(H)?H[0]||null:H}})});K.on("error",U),$.pipe(K)})})}}var Cw0=new Set(["false","f","n","no","off","0"]),Xw0=new Set(["true","t","y","yes","on","1"]);function rT(A,Q){let B=String(A).toLowerCase();if(Cw0.has(B))return!1;if(Xw0.has(B))return!0;return Q?.strict?null:Boolean(A)}import{posix as Gw0,sep as Ww0}from"node:path";function PqQ(A){return A.replace(/^[A-Z]:/,"").replace(/\\/g,"/")}function aT(A=process.argv[1]?od(process.argv[1]):process.cwd(),Q=Ww0==="\\"){let B=Q?PqQ(A):A;return(Y)=>{if(!Y)return;let J=Q?PqQ(Y):Y,{dir:C,base:X,ext:G}=Gw0.parse(J);if(G===".js"||G===".mjs"||G===".cjs")X=X.slice(0,G.length*-1);let W=decodeURIComponent(X);if(!C)C=".";let F=C.lastIndexOf("/node_modules");if(F>-1)return`${C.slice(F+14).replace(/\//g,".")}:${W}`;if(C.startsWith(B)){let Z=C.slice(B.length+1).replace(/\//g,".");return Z?`${Z}:${W}`:W}return W}}function oT(A){if(process.env.SENTRY_RELEASE)return process.env.SENTRY_RELEASE;if(AQ.SENTRY_RELEASE?.id)return AQ.SENTRY_RELEASE.id;let Q=process.env.GITHUB_SHA||process.env.CI_MERGE_REQUEST_SOURCE_BRANCH_SHA||process.env.CI_BUILD_REF||process.env.CI_COMMIT_SHA||process.env.BITBUCKET_COMMIT,B=process.env.APPVEYOR_PULL_REQUEST_HEAD_COMMIT||process.env.APPVEYOR_REPO_COMMIT||process.env.CODEBUILD_RESOLVED_SOURCE_VERSION||process.env.AWS_COMMIT_ID||process.env.BUILD_SOURCEVERSION||process.env.GIT_CLONE_COMMIT_HASH||process.env.BUDDY_EXECUTION_REVISION||process.env.BUILDKITE_COMMIT||process.env.CIRCLE_SHA1||process.env.CIRRUS_CHANGE_IN_REPO||process.env.CF_REVISION||process.env.CM_COMMIT||process.env.CF_PAGES_COMMIT_SHA||process.env.DRONE_COMMIT_SHA||process.env.FC_GIT_COMMIT_SHA||process.env.HEROKU_TEST_RUN_COMMIT_VERSION||process.env.HEROKU_SLUG_COMMIT||process.env.RAILWAY_GIT_COMMIT_SHA||process.env.RENDER_GIT_COMMIT||process.env.SEMAPHORE_GIT_SHA||process.env.TRAVIS_PULL_REQUEST_SHA||process.env.VERCEL_GIT_COMMIT_SHA||process.env.VERCEL_GITHUB_COMMIT_SHA||process.env.VERCEL_GITLAB_COMMIT_SHA||process.env.VERCEL_BITBUCKET_COMMIT_SHA||process.env.ZEIT_GITHUB_COMMIT_SHA||process.env.ZEIT_GITLAB_COMMIT_SHA||process.env.ZEIT_BITBUCKET_COMMIT_SHA,Y=process.env.CI_COMMIT_ID||process.env.SOURCE_COMMIT||process.env.SOURCE_VERSION||process.env.GIT_COMMIT||process.env.COMMIT_REF||process.env.BUILD_VCS_NUMBER||process.env.CI_COMMIT_SHA;return Q||B||Y||A}var tT=jj(Fc(aT()));var SqQ=qA(yA(),1),kqQ=qA(NB(),1);import*as TqQ from"node:os";import{threadId as Fw0,isMainThread as Zw0}from"worker_threads";var $w0=60000;class Gq extends uj{constructor(A){let Q=A.serverName||global.process.env.SENTRY_NAME||TqQ.hostname(),B={...A,platform:"node",runtime:{name:"node",version:global.process.version},serverName:Q};if(A.openTelemetryInstrumentations)kqQ.registerInstrumentations({instrumentations:A.openTelemetryInstrumentations});dd(B,"node"),e.log(`Initializing Sentry: process: ${process.pid}, thread: ${Zw0?"main":`worker-${Fw0}`}.`);super(B);if(this.getOptions()._experiments?.enableLogs){if(this._logOnExitFlushListener=()=>{WW(this)},Q)this.on("beforeCaptureLog",(Y)=>{Y.attributes={...Y.attributes,"server.address":Q}});process.on("beforeExit",this._logOnExitFlushListener)}}get tracer(){if(this._tracer)return this._tracer;let A="@sentry/node",Q=l0,B=SqQ.trace.getTracer(A,Q);return this._tracer=B,B}async flush(A){let B=this.traceProvider?.activeSpanProcessor;if(B)await B.forceFlush();if(this.getOptions().sendClientReports)this._flushOutcomes();return super.flush(A)}close(A){if(this._clientReportInterval)clearInterval(this._clientReportInterval);if(this._clientReportOnExitFlushListener)process.off("beforeExit",this._clientReportOnExitFlushListener);if(this._logOnExitFlushListener)process.off("beforeExit",this._logOnExitFlushListener);return super.close(A)}startClientReportTracking(){let A=this.getOptions();if(A.sendClientReports)this._clientReportOnExitFlushListener=()=>{this._flushOutcomes()},this._clientReportInterval=setInterval(()=>{fQ&&e.log("Flushing client reports based on interval."),this._flushOutcomes()},A.clientReportFlushInterval??$w0).unref(),process.on("beforeExit",this._clientReportOnExitFlushListener)}_getTraceInfoFromScope(A){if(!A)return[void 0,void 0];return o$Q(this,A)}}var V1=qA(yA(),1),_qQ=qA(Ti(),1),vqQ=qA(_i(),1),dK=qA(dB(),1);var yqQ=qA(up(),1);import Uw0 from"module";var as=1e6;function eT(A,Q={}){if(A.getOptions().debug)hqQ();let B=Kw0(A,Q);A.traceProvider=B}function os(){let[A=0,Q=0]=process.versions.node.split(".").map(Number);if(A>=21||A===20&&Q>=6||A===18&&Q>=19){if(!AQ._sentryEsmLoaderHookRegistered)try{let{addHookMessagePort:B}=yqQ.createAddHookMessageChannel();Uw0.register("import-in-the-middle/hook.mjs",import.meta.url,{data:{addHookMessagePort:B,include:[]},transferList:[B]})}catch(B){e.warn("Failed to register ESM hook",B)}}else f0(()=>{console.warn(`[Sentry] You are using Node.js v${process.versions.node} in ESM mode ("import syntax"). The Sentry Node.js SDK is not compatible with ESM in Node.js versions before 18.19.0 or before 20.6.0. Please either build your application with CommonJS ("require() syntax"), or upgrade your Node.js version.`)})}function gqQ(A={}){let{debug:Q}=A;if(Q)e.enable(),hqQ();if(!a5())os();Ew0(A.integrations).forEach((B)=>{if(B(),Q)e.log(`[Sentry] Preloaded ${B.id} instrumentation`)})}function Ew0(A){let Q=wqQ();if(!A)return Q;return Q.filter((B)=>A.includes(B.id))}function Kw0(A,Q={}){let B=new vqQ.BasicTracerProvider({sampler:new ti(A),resource:new _qQ.Resource({[dK.ATTR_SERVICE_NAME]:"node",[dK.SEMRESATTRS_SERVICE_NAMESPACE]:"sentry",[dK.ATTR_SERVICE_VERSION]:l0}),forceFlushTimeoutMillis:500,spanProcessors:[new oi({timeout:Vw0(A.getOptions().maxSpanWaitDuration)}),...Q.spanProcessors||[]]});return V1.trace.setGlobalTracerProvider(B),V1.propagation.setGlobalPropagator(new ii),V1.context.setGlobalContextManager(new lT),B}function Vw0(A){if(A==null)return;if(A>as)return fQ&&e.warn(`\`maxSpanWaitDuration\` is too high, using the maximum value of ${as}`),as;else if(A<=0||Number.isNaN(A)){fQ&&e.warn("`maxSpanWaitDuration` must be a positive number, using default value instead.");return}return A}function hqQ(){let A=new Proxy(e,{get(Q,B,Y){return Reflect.get(Q,B==="verbose"?"debug":B,Y)}});V1.diag.disable(),V1.diag.setLogger(A,V1.DiagLogLevel.DEBUG)}function Iw0(){return a5()?[hP()]:[]}function ts(){return[gN(),yN(),hN(),xN(),fN(),RP(),PP(),xP(),fP(),_P(),gP(),kP(),dT(),RqQ(),...Iw0()]}function es(A){return[...ts(),...U9(A)?pT():[]]}function AS(A={}){return fqQ(A,es)}function xqQ(A={}){return fqQ(A,()=>[])}function fqQ(A={},Q){let B=Hw0(A,Q);if(B.debug===!0)if(fQ)e.enable();else f0(()=>{console.warn("[Sentry] Cannot initialize SDK with `debug` option using a non-debug bundle.")});if(!a5()&&B.registerEsmLoaderHooks!==!1)os();if(LP(),sQ().update(B.initialScope),B.spotlight&&!B.integrations.some(({name:C})=>C===ys))B.integrations.push(ST({sidecarUrl:typeof B.spotlight==="string"?B.spotlight:void 0}));let J=new Gq(B);if(sQ().setClient(J),J.init(),e.log(`Running in ${a5()?"CommonJS":"ESM"} mode.`),J.startClientReportTracking(),Lw0(),!B.skipOpenTelemetrySetup)eT(J,{spanProcessors:B.openTelemetrySpanProcessors}),Ar();return d$Q(J),t$Q(J),J}function Ar(){if(!fQ)return;let A=i$Q(),Q=["SentryContextManager","SentryPropagator"];if(U9())Q.push("SentrySpanProcessor");for(let B of Q)if(!A.includes(B))e.error(`You have to set up the ${B}. Without this, the OpenTelemetry & Sentry integration will not work properly.`);if(!A.includes("SentrySampler"))e.warn("You have to set up the SentrySampler. Without this, the OpenTelemetry & Sentry integration may still work, but sample rates set for the Sentry SDK will not be respected. If you use a custom sampler, make sure to use `wrapSamplingDecision`.")}function Hw0(A,Q){let B=Dw0(A.release),Y=A.spotlight??rT(process.env.SENTRY_SPOTLIGHT,{strict:!0})??process.env.SENTRY_SPOTLIGHT,J=Nw0(A.tracesSampleRate),C={...A,dsn:A.dsn??process.env.SENTRY_DSN,environment:A.environment??process.env.SENTRY_ENVIRONMENT,sendClientReports:A.sendClientReports??!0,transport:A.transport??sT,stackParser:tu(A.stackParser||tT),release:B,tracesSampleRate:J,spotlight:Y,debug:rT(A.debug??process.env.SENTRY_DEBUG)},X=A.integrations,G=A.defaultIntegrations??Q(C);return{...C,integrations:kd({defaultIntegrations:G,integrations:X})}}function Dw0(A){if(A!==void 0)return A;let Q=oT();if(Q!==void 0)return Q;return}function Nw0(A){if(A!==void 0)return A;let Q=process.env.SENTRY_TRACES_SAMPLE_RATE;if(!Q)return;let B=parseFloat(Q);return isFinite(B)?B:void 0}function Lw0(){if(rT(process.env.SENTRY_USE_ENVIRONMENT)!==!1){let A=process.env.SENTRY_TRACE,Q=process.env.SENTRY_BAGGAGE,B=hZ(A,Q);sQ().setPropagationContext(B)}}var qw0=[["january","1"],["february","2"],["march","3"],["april","4"],["may","5"],["june","6"],["july","7"],["august","8"],["september","9"],["october","10"],["november","11"],["december","12"],["jan","1"],["feb","2"],["mar","3"],["apr","4"],["may","5"],["jun","6"],["jul","7"],["aug","8"],["sep","9"],["oct","10"],["nov","11"],["dec","12"],["sunday","0"],["monday","1"],["tuesday","2"],["wednesday","3"],["thursday","4"],["friday","5"],["saturday","6"],["sun","0"],["mon","1"],["tue","2"],["wed","3"],["thu","4"],["fri","5"],["sat","6"]];function g$(A){return qw0.reduce((Q,[B,Y])=>Q.replace(new RegExp(B,"gi"),Y),A)}var bqQ="Automatic instrumentation of CronJob only supports crontab string";function mqQ(A,Q){let B=!1;return new Proxy(A,{construct(Y,J){let[C,X,G,W,F,...Z]=J;if(typeof C!=="string")throw Error(bqQ);if(B)throw Error(`A job named '${Q}' has already been scheduled`);B=!0;let U=g$(C);async function $(E,K){return GX(Q,async()=>{try{await X(E,K)}catch(I){throw jB(I),I}},{schedule:{type:"crontab",value:U},timezone:F||void 0})}return new Y(C,$,G,W,F,...Z)},get(Y,J){if(J==="from")return(C)=>{let{cronTime:X,onTick:G,timeZone:W}=C;if(typeof X!=="string")throw Error(bqQ);if(B)throw Error(`A job named '${Q}' has already been scheduled`);B=!0;let F=g$(X);return C.onTick=async(Z,U)=>{return GX(Q,async()=>{try{await G(Z,U)}catch($){throw jB($),$}},{schedule:{type:"crontab",value:F},timezone:W||void 0})},Y.from(C)};else return Y[J]}})}function uqQ(A){return new Proxy(A,{get(Q,B){if(B==="schedule"&&Q.schedule)return new Proxy(Q.schedule,{apply(Y,J,C){let[X,G,W]=C,F=W?.name,Z=W?.timezone;if(!F)throw Error('Missing "name" for scheduled job. A name is required for Sentry check-in monitoring.');let U=async()=>{return GX(F,async()=>{try{return await G()}catch($){throw jB($),$}},{schedule:{type:"crontab",value:g$(X)},timezone:Z})};return Y.apply(J,[X,U,W])}});else return Q[B]}})}function dqQ(A){return new Proxy(A,{get(Q,B){if(B==="scheduleJob")return new Proxy(Q.scheduleJob,{apply(Y,J,C){let[X,G,W]=C;if(typeof X!=="string"||typeof G!=="string"||typeof W!=="function")throw Error("Automatic instrumentation of 'node-schedule' requires the first parameter of 'scheduleJob' to be a job name string and the second parameter to be a crontab string");let F=X,Z=G;async function U(){return GX(F,async()=>{await W?.()},{schedule:{type:"crontab",value:g$(Z)}})}return Y.apply(J,[F,Z,U])}});return Q[B]}})}var cqQ={instrumentCron:mqQ,instrumentNodeCron:uqQ,instrumentNodeSchedule:dqQ};import qSQ from"fs";import sm0 from"http2";import It from"path";var EaY=s$(),kb0=$q(),KaY=JV(),VaY=YRQ(),_b0=o$(),IaY=Ka(),HaY=SRQ(),DaY=xRQ(),NaY=uRQ(),vb0=QB(),hk=lQ(),{InvalidArgumentError:gk}=vb0,SV=TwQ(),LaY=Eq(),qaY=ma(),{MockCallHistory:MaY,MockCallHistoryLog:zaY}=ca(),RaY=aa(),waY=ia(),jaY=yjQ(),OaY=ja(),PaY=uS(),{getGlobalDispatcher:yb0,setGlobalDispatcher:gb0}=Ak(),TaY=KV(),SaY=Co();Object.assign(kb0.prototype,SV);var no=_b0;var bb0={redirect:pjQ(),responseError:sjQ(),retry:ajQ(),dump:ejQ(),dns:YOQ(),cache:zOQ(),decompress:SOQ()},JSQ={MemoryCacheStore:Go()};var hb0=_OQ();JSQ.SqliteCacheStore=hb0;var mb0={parseHeaders:hk.parseHeaders,headerNameToString:hk.headerNameToString};function FM(A){return(Q,B,Y)=>{if(typeof B==="function")Y=B,B=null;if(!Q||typeof Q!=="string"&&typeof Q!=="object"&&!(Q instanceof URL))throw new gk("invalid url");if(B!=null&&typeof B!=="object")throw new gk("invalid opts");if(B&&B.path!=null){if(typeof B.path!=="string")throw new gk("invalid opts.path");let X=B.path;if(!B.path.startsWith("/"))X=`/${X}`;Q=new URL(hk.parseOrigin(Q).origin+X)}else{if(!B)B=typeof Q==="object"?Q:{};Q=hk.parseURL(Q)}let{agent:J,dispatcher:C=yb0()}=B;if(J)throw new gk("unsupported opts.agent. Did you mean opts.client?");return A.call(C,{...B,origin:Q.origin,path:Q.search?`${Q.pathname}${Q.search}`:Q.pathname,method:B.method||(B.body?"PUT":"GET")},Y)}}var so=gb0;var kaY=QM().fetch;var ub0=Y4().Headers,db0=eq().Response,cb0=NV().Request,lb0=HS().FormData;var{setGlobalOrigin:_aY,getGlobalOrigin:vaY}=Sr();var{CacheStorage:xb0}=mPQ(),{kConstruct:fb0}=B0();var pb0=new xb0(fb0);var{deleteCookie:yaY,getCookies:gaY,getSetCookies:haY,setCookie:xaY,parseCookie:faY}=ePQ();var{parseMIMEType:baY,serializeAMimeType:maY}=l8();var{CloseEvent:uaY,ErrorEvent:daY,MessageEvent:caY}=Rk(),{WebSocket:laY,ping:paY}=yTQ();var ib0=dTQ().WebSocketStream,nb0=uo().WebSocketError,sb0=FM(SV.request),rb0=FM(SV.stream),ab0=FM(SV.pipeline),ob0=FM(SV.connect),tb0=FM(SV.upgrade);var{EventSource:iaY}=YSQ();import lk from"fs";import KSQ from"path";var eb0=2,Am0=3;class ZM{_accumulatorMs=0;_targetTicksPerSecond;_fixedTimestepMs;_fixedTimestepS;_maxAccumulatorMs;_nextTickMs=0;_lastLoopTimeMs=0;_tickFunction;_tickErrorCallback;_tickHandle=null;constructor(A,Q,B){this._targetTicksPerSecond=A,this._fixedTimestepS=Math.fround(1/A),this._fixedTimestepMs=Math.fround(this._fixedTimestepS*1000),this._maxAccumulatorMs=this._fixedTimestepMs*Am0,this._tickFunction=Q,this._tickErrorCallback=B}get targetTicksPerSecond(){return this._targetTicksPerSecond}get fixedTimestepMs(){return this._fixedTimestepMs}get fixedTimestepS(){return this._fixedTimestepS}get isStarted(){return!!this._tickHandle}get nextTickMs(){return this._nextTickMs}start(){if(this._tickHandle)return;this._lastLoopTimeMs=performance.now();let A=()=>{let Q=performance.now(),B=Q-this._lastLoopTimeMs;if(this._lastLoopTimeMs=Q,this._accumulatorMs+=B,this._accumulatorMs>this._maxAccumulatorMs)this._accumulatorMs=this._maxAccumulatorMs;if(this._accumulatorMs>=this._fixedTimestepMs)AY.startSpan({operation:"ticker_tick"},()=>{let Y=0;while(this._accumulatorMs>=this._fixedTimestepMs&&Y{J.STEP_START="SIMULATION.STEP_START";J.STEP_END="SIMULATION.STEP_END";J.DEBUG_RAYCAST="SIMULATION.DEBUG_RAYCAST";J.DEBUG_RENDER="SIMULATION.DEBUG_RENDER"})(ro||={});class UM extends BQ{_colliderMap=new BN;_debugRaycastingEnabled=!1;_debugRenderingEnabled=!1;_debugRenderingFilterFlags;_rapierEventQueue;_rapierSimulation;_world;constructor(A,Q=$M,B=Qm0){super();this._rapierEventQueue=new WB.EventQueue(!0),this._rapierSimulation=new WB.World(B),this._rapierSimulation.timestep=Math.fround(1/Q),this._world=A}get colliderMap(){return this._colliderMap}get isDebugRaycastingEnabled(){return this._debugRaycastingEnabled}get isDebugRenderingEnabled(){return this._debugRenderingEnabled}get gravity(){return this._rapierSimulation.gravity}get timestepS(){return this._rapierSimulation.timestep}get world(){return this._world}createRawCollider(A,Q){return this._rapierSimulation.createCollider(A,Q)}createRawRigidBody(A){return this._rapierSimulation.createRigidBody(A)}enableDebugRaycasting(A){this._debugRaycastingEnabled=A}enableDebugRendering(A,Q=WB.QueryFilterFlags.EXCLUDE_FIXED){this._debugRenderingEnabled=A,this._debugRenderingFilterFlags=Q}getContactManifolds(A,Q){let B=[];return this._rapierSimulation.narrowPhase.contactPair(A,Q,(Y,J)=>{if(Y.numContacts()===0)return;let C=Y.normal(),X=[];for(let G=0;G{let G=this._colliderMap.getColliderHandleBlockType(X.handle);if(G&&!J.has(G))return J.add(G),C.push({intersectedBlockType:G}),!0;let W=this._colliderMap.getColliderHandleEntity(X.handle);if(W&&!J.has(W))return J.add(W),C.push({intersectedEntity:W}),!0;return!0},Y.filterFlags,Y.filterGroups,Y.filterExcludeCollider,Y.filterExcludeRigidBody,Y.filterPredicate),C}raycast(A,Q,B,Y={}){let J=new WB.Ray(A,Q),C=this._rapierSimulation.castRay(J,B,Y.solidMode??!0,Y.filterFlags,Y.filterGroups,Y.filterExcludeCollider,Y.filterExcludeRigidBody,Y.filterPredicate);if(this._debugRaycastingEnabled)this.emitWithWorld(this._world,"SIMULATION.DEBUG_RAYCAST",{simulation:this,origin:A,direction:Q,length:B,hit:!!C});if(!C)return null;let X=J.pointAt(C.timeOfImpact),G=C.timeOfImpact,W=C.collider,F=this._colliderMap.getColliderHandleBlockType(W.handle);if(F)return{hitBlock:WE.fromGlobalCoordinate({x:Math.floor(X.x-(J.dir.x<0?0.0001:-0.0001)),y:Math.floor(X.y-(J.dir.y<0?0.0001:-0.0001)),z:Math.floor(X.z-(J.dir.z<0?0.0001:-0.0001))},F),hitPoint:X,hitDistance:G,origin:A,originDirection:Q};let Z=this._colliderMap.getColliderHandleEntity(W.handle);if(Z)return{hitEntity:Z,hitPoint:X,hitDistance:G,origin:A,originDirection:Q};return null}removeRawCollider(A){this._colliderMap.queueColliderHandleForCleanup(A.handle),this._rapierSimulation.removeCollider(A,!1)}removeRawRigidBody(A){this._rapierSimulation.removeRigidBody(A)}setGravity(A){this._rapierSimulation.gravity=A}step=(A)=>{this.emitWithWorld(this._world,"SIMULATION.STEP_START",{simulation:this,tickDeltaMs:A});let Q=performance.now();if(AY.startSpan({operation:"physics_step"},()=>{this._rapierSimulation.step(this._rapierEventQueue)}),AY.startSpan({operation:"physics_cleanup"},()=>{this._rapierEventQueue.drainContactForceEvents(this._onContactForceEvent),this._rapierEventQueue.drainCollisionEvents(this._onCollisionEvent),this._colliderMap.cleanup()}),this.emitWithWorld(this._world,"SIMULATION.STEP_END",{simulation:this,stepDurationMs:performance.now()-Q}),this._debugRenderingEnabled)this.emitWithWorld(this._world,"SIMULATION.DEBUG_RENDER",{simulation:this,...this._rapierSimulation.debugRender(this._debugRenderingFilterFlags)})};_onCollisionEvent=(A,Q,B)=>{let[Y,J]=this._getCollisionObjects(A,Q);if(!Y||!J)return;let C=(X,G)=>{if(X instanceof O8&&G instanceof X0&&X.hasListeners("BLOCK_TYPE.ENTITY_COLLISION"))X.emit("BLOCK_TYPE.ENTITY_COLLISION",{blockType:X,entity:G,started:B,colliderHandleA:A,colliderHandleB:Q});else if(X instanceof X0&&G instanceof O8&&X.hasListeners("ENTITY.BLOCK_COLLISION"))X.emit("ENTITY.BLOCK_COLLISION",{entity:X,blockType:G,started:B,colliderHandleA:A,colliderHandleB:Q});else if(X instanceof X0&&G instanceof X0&&X.hasListeners("ENTITY.ENTITY_COLLISION"))X.emit("ENTITY.ENTITY_COLLISION",{entity:X,otherEntity:G,started:B,colliderHandleA:A,colliderHandleB:Q});else if(typeof X==="function"&&(G instanceof X0||G instanceof O8))X(G,B,A,Q)};C(Y,J),C(J,Y)};_onContactForceEvent=(A)=>{let[Q,B]=this._getCollisionObjects(A.collider1(),A.collider2());if(!Q||typeof Q==="function"||!B||typeof B==="function")return;let Y={totalForce:A.totalForce(),totalForceMagnitude:A.totalForceMagnitude(),maxForceDirection:A.maxForceDirection(),maxForceMagnitude:A.maxForceMagnitude()},J=(C,X)=>{if(C instanceof O8&&X instanceof X0&&C.hasListeners("BLOCK_TYPE.ENTITY_CONTACT_FORCE"))C.emit("BLOCK_TYPE.ENTITY_CONTACT_FORCE",{blockType:C,entity:X,contactForceData:Y});else if(C instanceof X0&&X instanceof O8&&C.hasListeners("ENTITY.BLOCK_CONTACT_FORCE"))C.emit("ENTITY.BLOCK_CONTACT_FORCE",{entity:C,blockType:X,contactForceData:Y});else if(C instanceof X0&&X instanceof X0&&C.hasListeners("ENTITY.ENTITY_CONTACT_FORCE"))C.emit("ENTITY.ENTITY_CONTACT_FORCE",{entity:C,otherEntity:X,contactForceData:Y})};J(Q,B),J(B,Q)};_getCollisionObjects(A,Q){let B=this._colliderMap.getColliderHandleBlockType(A)??this._colliderMap.getColliderHandleCollisionCallback(A)??this._colliderMap.getColliderHandleEntity(A),Y=this._colliderMap.getColliderHandleBlockType(Q)??this._colliderMap.getColliderHandleCollisionCallback(Q)??this._colliderMap.getColliderHandleEntity(Q);return[B,Y]}}var ao;((C)=>{C.START="WORLD_LOOP.START";C.STOP="WORLD_LOOP.STOP";C.TICK_START="WORLD_LOOP.TICK_START";C.TICK_END="WORLD_LOOP.TICK_END";C.TICK_ERROR="WORLD_LOOP.TICK_ERROR"})(ao||={});class EM extends BQ{_currentTick=0;_ticker;_world;constructor(A,Q=$M){super();this._ticker=new ZM(Q,this._tick,this._onTickError),this._world=A}get currentTick(){return this._currentTick}get isStarted(){return this._ticker.isStarted}get nextTickMs(){return this._ticker.nextTickMs}get timestepS(){return this._ticker.fixedTimestepS}get world(){return this._world}start(){this._ticker.start(),this.emitWithWorld(this._world,"WORLD_LOOP.START",{worldLoop:this})}stop(){this._ticker.stop(),this.emitWithWorld(this._world,"WORLD_LOOP.STOP",{worldLoop:this})}_tick=(A)=>{this.emitWithWorld(this._world,"WORLD_LOOP.TICK_START",{worldLoop:this,tickDeltaMs:A});let Q=performance.now(),B=O0.instance,Y=B.isEnabled;if(Y)B.beginTick(this._currentTick,this._world.entityManager.entityCount,dJ.instance.playerCount,this._world.id);if(AY.startSpan({operation:"world_tick",attributes:{serverPlayerCount:dJ.instance.playerCount,targetTickRate:this._ticker.targetTicksPerSecond,targetTickRateMs:this._ticker.fixedTimestepMs,worldId:this._world.id,worldName:this._world.name,worldChunkCount:this._world.chunkLattice.chunkCount,worldEntityCount:this._world.entityManager.entityCount,worldLoopTick:this._currentTick}},()=>{let J;if(J=Y?performance.now():0,AY.startSpan({operation:"entities_tick"},()=>this._world.entityManager.tickEntities(A)),Y)B.recordPhase("entities_tick",performance.now()-J,this._world.id);if(J=Y?performance.now():0,AY.startSpan({operation:"simulation_step"},()=>this._world.simulation.step(A)),Y)B.recordPhase("simulation_step",performance.now()-J,this._world.id);if(J=Y?performance.now():0,AY.startSpan({operation:"entities_emit_updates"},()=>this._world.entityManager.checkAndEmitUpdates()),Y)B.recordPhase("entities_emit_updates",performance.now()-J,this._world.id);if(this._world.networkSynchronizer.shouldSynchronize()){if(J=Y?performance.now():0,AY.startSpan({operation:"network_synchronize"},()=>this._world.networkSynchronizer.synchronize()),Y)B.recordPhase("network_synchronize",performance.now()-J,this._world.id)}}),Y)B.endTick(this._world.id);this._currentTick++,this.emitWithWorld(this._world,"WORLD_LOOP.TICK_END",{worldLoop:this,tickDurationMs:performance.now()-Q})};_onTickError=(A)=>{l.error(`WorldLoop._onTickError(): Error: ${A}`),this.emitWithWorld(this._world,"WORLD_LOOP.TICK_ERROR",{worldLoop:this,error:A})}}class xk{_world=null;_options=null;_tickFn=null;_toggleParity=!1;get isRunning(){return!!this._tickFn}start(A,Q){this.stop();let B=Math.max(0,Math.floor(Q.blocksPerTick)),Y=Math.max(0,Math.floor(Q.blockTypeId)),J=Q.min??{x:-32,y:0,z:-32},C=Q.max??{x:32,y:16,z:32},X=Bm0(J,C),G=Q.mode??"toggle";this._world=A,this._options={blocksPerTick:B,blockTypeId:Y,mode:G,min:X.min,max:X.max},this._toggleParity=!1,this._tickFn=()=>{this._tick()},A.loop.on("WORLD_LOOP.TICK_START",this._tickFn)}stop(){if(this._world&&this._tickFn)this._world.loop.off("WORLD_LOOP.TICK_START",this._tickFn);this._world=null,this._options=null,this._tickFn=null,this._toggleParity=!1}_tick(){if(!this._world||!this._options)return;let{blocksPerTick:A,blockTypeId:Q,min:B,max:Y,mode:J}=this._options;if(!B||!Y)return;let C=Y.x-B.x+1,X=Y.y-B.y+1,G=Y.z-B.z+1;if(C<=0||X<=0||G<=0)return;let W=this._toggleParity;this._toggleParity=!this._toggleParity;for(let F=0;F{A.call(Q,B,Y,this)})}keys(){return this._map.keys()}values(){return this._map.values()}entries(){return this._map.entries()}[Symbol.iterator](){return this._map[Symbol.iterator]()}_syncArray(){this._values.length=0;for(let A of this._map.values())this._values.push(A);this._isDirty=!1}}var to;((p)=>{p.BURST="PARTICLE_EMITTER.BURST";p.DESPAWN="PARTICLE_EMITTER.DESPAWN";p.SET_ALPHA_TEST="PARTICLE_EMITTER.SET_ALPHA_TEST";p.SET_ATTACHED_TO_ENTITY="PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY";p.SET_ATTACHED_TO_ENTITY_NODE_NAME="PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY_NODE_NAME";p.SET_COLOR_END="PARTICLE_EMITTER.SET_COLOR_END";p.SET_COLOR_END_VARIANCE="PARTICLE_EMITTER.SET_COLOR_END_VARIANCE";p.SET_COLOR_INTENSITY_END="PARTICLE_EMITTER.SET_COLOR_INTENSITY_END";p.SET_COLOR_INTENSITY_END_VARIANCE="PARTICLE_EMITTER.SET_COLOR_INTENSITY_END_VARIANCE";p.SET_COLOR_INTENSITY_START="PARTICLE_EMITTER.SET_COLOR_INTENSITY_START";p.SET_COLOR_INTENSITY_START_VARIANCE="PARTICLE_EMITTER.SET_COLOR_INTENSITY_START_VARIANCE";p.SET_COLOR_START="PARTICLE_EMITTER.SET_COLOR_START";p.SET_COLOR_START_VARIANCE="PARTICLE_EMITTER.SET_COLOR_START_VARIANCE";p.SET_GRAVITY="PARTICLE_EMITTER.SET_GRAVITY";p.SET_LIFETIME="PARTICLE_EMITTER.SET_LIFETIME";p.SET_LIFETIME_VARIANCE="PARTICLE_EMITTER.SET_LIFETIME_VARIANCE";p.SET_MAX_PARTICLES="PARTICLE_EMITTER.SET_MAX_PARTICLES";p.SET_OFFSET="PARTICLE_EMITTER.SET_OFFSET";p.SET_ORIENTATION="PARTICLE_EMITTER.SET_ORIENTATION";p.SET_ORIENTATION_FIXED_ROTATION="PARTICLE_EMITTER.SET_ORIENTATION_FIXED_ROTATION";p.SET_OPACITY_END="PARTICLE_EMITTER.SET_OPACITY_END";p.SET_OPACITY_END_VARIANCE="PARTICLE_EMITTER.SET_OPACITY_END_VARIANCE";p.SET_OPACITY_START="PARTICLE_EMITTER.SET_OPACITY_START";p.SET_OPACITY_START_VARIANCE="PARTICLE_EMITTER.SET_OPACITY_START_VARIANCE";p.SET_PAUSED="PARTICLE_EMITTER.SET_PAUSED";p.SET_POSITION="PARTICLE_EMITTER.SET_POSITION";p.SET_POSITION_VARIANCE="PARTICLE_EMITTER.SET_POSITION_VARIANCE";p.SET_RATE="PARTICLE_EMITTER.SET_RATE";p.SET_RATE_VARIANCE="PARTICLE_EMITTER.SET_RATE_VARIANCE";p.SET_SIZE_END="PARTICLE_EMITTER.SET_SIZE_END";p.SET_SIZE_END_VARIANCE="PARTICLE_EMITTER.SET_SIZE_END_VARIANCE";p.SET_SIZE_START="PARTICLE_EMITTER.SET_SIZE_START";p.SET_SIZE_START_VARIANCE="PARTICLE_EMITTER.SET_SIZE_START_VARIANCE";p.SET_TEXTURE_URI="PARTICLE_EMITTER.SET_TEXTURE_URI";p.SET_TRANSPARENT="PARTICLE_EMITTER.SET_TRANSPARENT";p.SET_VELOCITY="PARTICLE_EMITTER.SET_VELOCITY";p.SET_VELOCITY_VARIANCE="PARTICLE_EMITTER.SET_VELOCITY_VARIANCE";p.SPAWN="PARTICLE_EMITTER.SPAWN"})(to||={});class eo extends BQ{_id;_alphaTest;_attachedToEntity;_attachedToEntityNodeName;_colorEnd;_colorEndVariance;_colorIntensityEnd;_colorIntensityEndVariance;_colorIntensityStart;_colorIntensityStartVariance;_colorStart;_colorStartVariance;_gravity;_lifetime;_lifetimeVariance;_lockToEmitter;_maxParticles;_offset;_orientation;_orientationFixedRotation;_opacityEnd;_opacityEndVariance;_opacityStart;_opacityStartVariance;_paused;_position;_positionVariance;_rate;_rateVariance;_sizeEnd;_sizeEndVariance;_sizeStart;_sizeStartVariance;_sizeVariance;_textureUri;_transparent;_velocity;_velocityVariance;_world;constructor(A){if(!!A.attachedToEntity===!!A.position)l.fatalError("Either attachedToEntity or position must be set, but not both.");if(!A.textureUri)l.fatalError("ParticleEmitter.constructor(): textureUri must be provided.");super();this._alphaTest=A.alphaTest??0.05,this._attachedToEntity=A.attachedToEntity,this._attachedToEntityNodeName=A.attachedToEntityNodeName,this._colorEnd=A.colorEnd,this._colorEndVariance=A.colorEndVariance,this._colorIntensityEnd=A.colorIntensityEnd,this._colorIntensityEndVariance=A.colorIntensityEndVariance,this._colorIntensityStart=A.colorIntensityStart,this._colorIntensityStartVariance=A.colorIntensityStartVariance,this._colorStart=A.colorStart,this._colorStartVariance=A.colorStartVariance,this._gravity=A.gravity,this._lifetime=A.lifetime,this._lifetimeVariance=A.lifetimeVariance,this._lockToEmitter=A.lockToEmitter??!1,this._maxParticles=A.maxParticles,this._offset=A.offset,this._orientation=A.orientation,this._orientationFixedRotation=A.orientationFixedRotation,this._opacityEnd=A.opacityEnd,this._opacityEndVariance=A.opacityEndVariance,this._opacityStart=A.opacityStart,this._opacityStartVariance=A.opacityStartVariance,this._paused=!1,this._position=A.position,this._positionVariance=A.positionVariance,this._rate=A.rate,this._rateVariance=A.rateVariance,this._sizeEnd=A.sizeEnd,this._sizeEndVariance=A.sizeEndVariance,this._sizeStart=A.sizeStart,this._sizeStartVariance=A.sizeStartVariance,this._textureUri=A.textureUri,this._transparent=A.transparent,this._velocity=A.velocity,this._velocityVariance=A.velocityVariance}get id(){return this._id}get alphaTest(){return this._alphaTest}get attachedToEntity(){return this._attachedToEntity}get attachedToEntityNodeName(){return this._attachedToEntityNodeName}get colorEnd(){return this._colorEnd}get colorEndVariance(){return this._colorEndVariance}get colorIntensityEnd(){return this._colorIntensityEnd}get colorIntensityEndVariance(){return this._colorIntensityEndVariance}get colorIntensityStart(){return this._colorIntensityStart}get colorIntensityStartVariance(){return this._colorIntensityStartVariance}get colorStart(){return this._colorStart}get colorStartVariance(){return this._colorStartVariance}get gravity(){return this._gravity}get isSpawned(){return this._id!==void 0}get lifetime(){return this._lifetime}get lifetimeVariance(){return this._lifetimeVariance}get lockToEmitter(){return this._lockToEmitter}get maxParticles(){return this._maxParticles}get offset(){return this._offset}get orientation(){return this._orientation}get orientationFixedRotation(){return this._orientationFixedRotation}get opacityEnd(){return this._opacityEnd}get opacityEndVariance(){return this._opacityEndVariance}get opacityStart(){return this._opacityStart}get opacityStartVariance(){return this._opacityStartVariance}get paused(){return this._paused}get position(){return this._position}get positionVariance(){return this._positionVariance}get rate(){return this._rate}get rateVariance(){return this._rateVariance}get sizeEnd(){return this._sizeEnd}get sizeEndVariance(){return this._sizeEndVariance}get sizeStart(){return this._sizeStart}get sizeStartVariance(){return this._sizeStartVariance}get sizeVariance(){return this._sizeVariance}get textureUri(){return this._textureUri}get transparent(){return this._transparent}get velocity(){return this._velocity}get velocityVariance(){return this._velocityVariance}get world(){return this._world}setAlphaTest(A){if(this._alphaTest===A)return;if(this._alphaTest=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_ALPHA_TEST",{particleEmitter:this,alphaTest:A})}setAttachedToEntity(A){if(!A.isSpawned)return l.error(`ParticleEmitter.setAttachedToEntity(): Entity ${A.id} is not spawned!`);if(this._attachedToEntity===A)return;if(this._attachedToEntity=A,this._position=void 0,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY",{particleEmitter:this,entity:A})}setAttachedToEntityNodeName(A){if(this._attachedToEntityNodeName===A)return;if(this._attachedToEntityNodeName=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY_NODE_NAME",{particleEmitter:this,attachedToEntityNodeName:A})}setColorEnd(A){if(this._colorEnd&&this._colorEnd.r===A.r&&this._colorEnd.g===A.g&&this._colorEnd.b===A.b)return;if(this._colorEnd=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_END",{particleEmitter:this,colorEnd:A})}setColorEndVariance(A){if(this._colorEndVariance&&this._colorEndVariance.r===A.r&&this._colorEndVariance.g===A.g&&this._colorEndVariance.b===A.b)return;if(this._colorEndVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_END_VARIANCE",{particleEmitter:this,colorEndVariance:A})}setColorIntensityEnd(A){if(this._colorIntensityEnd===A)return;if(this._colorIntensityEnd=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_INTENSITY_END",{particleEmitter:this,colorIntensityEnd:A})}setColorIntensityEndVariance(A){if(this._colorIntensityEndVariance===A)return;if(this._colorIntensityEndVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_INTENSITY_END_VARIANCE",{particleEmitter:this,colorIntensityEndVariance:A})}setColorIntensityStart(A){if(this._colorIntensityStart===A)return;if(this._colorIntensityStart=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_INTENSITY_START",{particleEmitter:this,colorIntensityStart:A})}setColorIntensityStartVariance(A){if(this._colorIntensityStartVariance===A)return;if(this._colorIntensityStartVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_INTENSITY_START_VARIANCE",{particleEmitter:this,colorIntensityStartVariance:A})}setColorStart(A){if(this._colorStart&&this._colorStart.r===A.r&&this._colorStart.g===A.g&&this._colorStart.b===A.b)return;if(this._colorStart=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_START",{particleEmitter:this,colorStart:A})}setColorStartVariance(A){if(this._colorStartVariance&&this._colorStartVariance.r===A.r&&this._colorStartVariance.g===A.g&&this._colorStartVariance.b===A.b)return;if(this._colorStartVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_START_VARIANCE",{particleEmitter:this,colorStartVariance:A})}setGravity(A){if(this._gravity&&this._gravity.x===A.x&&this._gravity.y===A.y&&this._gravity.z===A.z)return;if(this._gravity=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_GRAVITY",{particleEmitter:this,gravity:A})}setLifetime(A){if(this._lifetime===A)return;if(this._lifetime=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_LIFETIME",{particleEmitter:this,lifetime:A})}setLifetimeVariance(A){if(this._lifetimeVariance===A)return;if(this._lifetimeVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_LIFETIME_VARIANCE",{particleEmitter:this,lifetimeVariance:A})}setMaxParticles(A){if(this._maxParticles===A)return;if(this._maxParticles=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_MAX_PARTICLES",{particleEmitter:this,maxParticles:A})}setOffset(A){if(this._offset&&this._offset.x===A.x&&this._offset.y===A.y&&this._offset.z===A.z)return;if(this._offset=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_OFFSET",{particleEmitter:this,offset:A})}setOrientation(A){if(this._orientation===A)return;if(this._orientation=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_ORIENTATION",{particleEmitter:this,orientation:A})}setOrientationFixedRotation(A){if(this._orientationFixedRotation&&this._orientationFixedRotation.x===A.x&&this._orientationFixedRotation.y===A.y&&this._orientationFixedRotation.z===A.z)return;if(this._orientationFixedRotation=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_ORIENTATION_FIXED_ROTATION",{particleEmitter:this,orientationFixedRotation:A})}setOpacityEnd(A){if(this._opacityEnd===A)return;if(this._opacityEnd=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_OPACITY_END",{particleEmitter:this,opacityEnd:A})}setOpacityEndVariance(A){if(this._opacityEndVariance===A)return;if(this._opacityEndVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_OPACITY_END_VARIANCE",{particleEmitter:this,opacityEndVariance:A})}setOpacityStart(A){if(this._opacityStart===A)return;if(this._opacityStart=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_OPACITY_START",{particleEmitter:this,opacityStart:A})}setOpacityStartVariance(A){if(this._opacityStartVariance===A)return;if(this._opacityStartVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_OPACITY_START_VARIANCE",{particleEmitter:this,opacityStartVariance:A})}setPosition(A){if(this._position&&this._position.x===A.x&&this._position.y===A.y&&this._position.z===A.z)return;if(this._position=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_POSITION",{particleEmitter:this,position:A})}setPositionVariance(A){if(this._positionVariance&&this._positionVariance.x===A.x&&this._positionVariance.y===A.y&&this._positionVariance.z===A.z)return;if(this._positionVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_POSITION_VARIANCE",{particleEmitter:this,positionVariance:A})}setRate(A){if(this._rate===A)return;if(this._rate=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_RATE",{particleEmitter:this,rate:A})}setRateVariance(A){if(this._rateVariance===A)return;if(this._rateVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_RATE_VARIANCE",{particleEmitter:this,rateVariance:A})}setSizeEnd(A){if(this._sizeEnd===A)return;if(this._sizeEnd=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_SIZE_END",{particleEmitter:this,sizeEnd:A})}setSizeEndVariance(A){if(this._sizeEndVariance===A)return;if(this._sizeEndVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_SIZE_END_VARIANCE",{particleEmitter:this,sizeEndVariance:A})}setSizeStart(A){if(this._sizeStart===A)return;if(this._sizeStart=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_SIZE_START",{particleEmitter:this,sizeStart:A})}setSizeStartVariance(A){if(this._sizeStartVariance===A)return;if(this._sizeStartVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_SIZE_START_VARIANCE",{particleEmitter:this,sizeStartVariance:A})}setTextureUri(A){if(this._textureUri===A)return;if(this._textureUri=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_TEXTURE_URI",{particleEmitter:this,textureUri:A})}setTransparent(A){if(this._transparent===A)return;if(this._transparent=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_TRANSPARENT",{particleEmitter:this,transparent:A})}setVelocity(A){if(this._velocity&&this._velocity.x===A.x&&this._velocity.y===A.y&&this._velocity.z===A.z)return;if(this._velocity=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_VELOCITY",{particleEmitter:this,velocity:A})}setVelocityVariance(A){if(this._velocityVariance&&this._velocityVariance.x===A.x&&this._velocityVariance.y===A.y&&this._velocityVariance.z===A.z)return;if(this._velocityVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_VELOCITY_VARIANCE",{particleEmitter:this,velocityVariance:A})}burst(A){if(this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.BURST",{particleEmitter:this,count:A})}despawn(){if(!this.isSpawned||!this._world)return;this._world.particleEmitterManager.unregisterParticleEmitter(this),this.emitWithWorld(this._world,"PARTICLE_EMITTER.DESPAWN",{particleEmitter:this}),this._id=void 0,this._world=void 0}restart(){if(!this._paused)return;if(this._paused=!1,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_PAUSED",{particleEmitter:this,paused:this._paused})}stop(){if(this._paused)return;if(this._paused=!0,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_PAUSED",{particleEmitter:this,paused:this._paused})}spawn(A){if(this.isSpawned)return;if(this._attachedToEntity&&!this._attachedToEntity.isSpawned)return l.error(`ParticleEmitter.spawn(): Attached entity ${this._attachedToEntity.id} must be spawned before spawning ParticleEmitter!`);this._id=A.particleEmitterManager.registerParticleEmitter(this),this._world=A,this.emitWithWorld(A,"PARTICLE_EMITTER.SPAWN",{particleEmitter:this})}serialize(){return GQ.serializeParticleEmitter(this)}}var Ym0=30,Jm0=Math.round($M/Ym0);class fk{_outboundPerPlayerReliablePackets=new bB;_outboundSharedReliablePackets=[];_outboundSharedUnreliablePackets=[];_queuedAudioSyncs={broadcast:new bB,perPlayer:new bB};_queuedBlockSyncs={broadcast:new bB,perPlayer:new bB};_queuedBlockTypeSyncs={broadcast:new bB,perPlayer:new bB};_queuedChunkSyncs={broadcast:new bB,perPlayer:new bB};_queuedEntitySyncs={broadcast:new bB,perPlayer:new bB};_queuedParticleEmitterSyncs={broadcast:new bB,perPlayer:new bB};_queuedPlayerSyncs={broadcast:new bB,perPlayer:new bB};_queuedSceneUISyncs={broadcast:new bB,perPlayer:new bB};_queuedCameraSyncs={broadcast:void 0,perPlayer:new bB};_queuedChatMessagesSyncs={broadcast:void 0,perPlayer:new bB};_queuedDebugRaycastsSyncs={broadcast:void 0,perPlayer:new bB};_queuedDebugRenderSyncs={broadcast:void 0,perPlayer:new bB};_queuedNotificationPermissionRequestSyncs={broadcast:void 0,perPlayer:new bB};_queuedUISyncs={broadcast:void 0,perPlayer:new bB};_queuedUIDatasSyncs={broadcast:void 0,perPlayer:new bB};_queuedWorldSyncs={broadcast:void 0,perPlayer:new bB};_loadedSceneUIs=new Set;_spawnedChunks=new Set;_spawnedEntities=new Set;_playersInWorld=new Set;_world;constructor(A){this._world=A,this._subscribeToAudioEvents(),this._subscribeToBlockTypeRegistryEvents(),this._subscribeToChatEvents(),this._subscribeToChunkLatticeEvents(),this._subscribeToEntityEvents(),this._subscribeToEntityModelAnimationEvents(),this._subscribeToEntityModelNodeOverrideEvents(),this._subscribeToParticleEmitterEvents(),this._subscribeToPlayerEvents(),this._subscribeToPlayerCameraEvents(),this._subscribeToPlayerUIEvents(),this._subscribeToSceneUIEvents(),this._subscribeToSimulationEvents(),this._subscribeToWorldEvents()}shouldSynchronize(){return this._world.loop.currentTick%Jm0===0}synchronize(){let A=this._world.loop.currentTick;if(this._queuedEntitySyncs.broadcast.size>0){let Q=[],B=[];for(let Y of this._queuedEntitySyncs.broadcast.valuesArray){let J=!1;for(let C in Y)if(J=C!=="i"&&C!=="p"&&C!=="r",J)break;(J?Q:B).push(Y)}if(B.length>0){let Y=gQ.createPacket(gQ.outboundPackets.entitiesPacketDefinition,B,A);this._outboundSharedUnreliablePackets.push(Y)}if(Q.length>0){let Y=gQ.createPacket(gQ.outboundPackets.entitiesPacketDefinition,Q,A);this._outboundSharedReliablePackets.push(Y);for(let J of this._outboundPerPlayerReliablePackets.valuesArray)J.push(Y)}}if(this._queuedEntitySyncs.perPlayer.size>0)for(let[Q,B]of this._queuedEntitySyncs.perPlayer.entries())this._outboundPerPlayerReliablePackets.get(Q)?.push(gQ.createPacket(gQ.outboundPackets.entitiesPacketDefinition,B.valuesArray,A));this._collectSingletonSyncToOutboundPackets(this._queuedCameraSyncs,gQ.outboundPackets.cameraPacketDefinition),this._collectSyncToOutboundPackets(this._queuedAudioSyncs,gQ.outboundPackets.audiosPacketDefinition),this._collectSyncToOutboundPackets(this._queuedBlockTypeSyncs,gQ.outboundPackets.blockTypesPacketDefinition),this._collectSyncToOutboundPackets(this._queuedChunkSyncs,gQ.outboundPackets.chunksPacketDefinition),this._collectSyncToOutboundPackets(this._queuedBlockSyncs,gQ.outboundPackets.blocksPacketDefinition),this._collectSyncToOutboundPackets(this._queuedParticleEmitterSyncs,gQ.outboundPackets.particleEmittersPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedUISyncs,gQ.outboundPackets.uiPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedUIDatasSyncs,gQ.outboundPackets.uiDatasPacketDefinition),this._collectSyncToOutboundPackets(this._queuedSceneUISyncs,gQ.outboundPackets.sceneUIsPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedWorldSyncs,gQ.outboundPackets.worldPacketDefinition),this._collectSyncToOutboundPackets(this._queuedPlayerSyncs,gQ.outboundPackets.playersPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedChatMessagesSyncs,gQ.outboundPackets.chatMessagesPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedNotificationPermissionRequestSyncs,gQ.outboundPackets.notificationPermissionRequestPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedDebugRenderSyncs,gQ.outboundPackets.physicsDebugRenderPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedDebugRaycastsSyncs,gQ.outboundPackets.physicsDebugRaycastsPacketDefinition),AY.startSpan({operation:"send_all_packets"},()=>{for(let Q of dJ.instance.getConnectedPlayersByWorld(this._world)){let B=this._outboundPerPlayerReliablePackets.get(Q)??this._outboundSharedReliablePackets;if(B.length>0)Q.connection.send(B);if(this._outboundSharedUnreliablePackets.length>0)Q.connection.send(this._outboundSharedUnreliablePackets,!1)}}),AY.startSpan({operation:"network_synchronize_cleanup"},()=>{if(this._outboundPerPlayerReliablePackets.size>0)this._outboundPerPlayerReliablePackets.clear();if(this._outboundSharedReliablePackets.length>0)this._outboundSharedReliablePackets.length=0;if(this._outboundSharedUnreliablePackets.length>0)this._outboundSharedUnreliablePackets.length=0;if(this._loadedSceneUIs.size>0)this._loadedSceneUIs.clear();if(this._spawnedChunks.size>0)this._spawnedChunks.clear();if(this._spawnedEntities.size>0)this._spawnedEntities.clear();this._clearSyncQueue(this._queuedAudioSyncs),this._clearSyncQueue(this._queuedBlockSyncs),this._clearSyncQueue(this._queuedBlockTypeSyncs),this._clearSyncQueue(this._queuedChunkSyncs),this._clearSyncQueue(this._queuedEntitySyncs),this._clearSyncQueue(this._queuedParticleEmitterSyncs),this._clearSyncQueue(this._queuedPlayerSyncs),this._clearSyncQueue(this._queuedSceneUISyncs),this._clearSingletonSyncQueue(this._queuedCameraSyncs),this._clearSingletonSyncQueue(this._queuedChatMessagesSyncs),this._clearSingletonSyncQueue(this._queuedDebugRaycastsSyncs),this._clearSingletonSyncQueue(this._queuedDebugRenderSyncs),this._clearSingletonSyncQueue(this._queuedNotificationPermissionRequestSyncs),this._clearSingletonSyncQueue(this._queuedUISyncs),this._clearSingletonSyncQueue(this._queuedUIDatasSyncs),this._clearSingletonSyncQueue(this._queuedWorldSyncs),q1.clearCachedPacketsSerializedBuffers()})}_subscribeToAudioEvents(){this._world.final("AUDIO.PAUSE",this._onAudioPause),this._world.final("AUDIO.PLAY",this._onAudioPlay),this._world.final("AUDIO.PLAY_RESTART",this._onAudioPlayRestart),this._world.final("AUDIO.SET_ATTACHED_TO_ENTITY",this._onAudioSetAttachedToEntity),this._world.final("AUDIO.SET_CUTOFF_DISTANCE",this._onAudioSetCutoffDistance),this._world.final("AUDIO.SET_DETUNE",this._onAudioSetDetune),this._world.final("AUDIO.SET_DISTORTION",this._onAudioSetDistortion),this._world.final("AUDIO.SET_POSITION",this._onAudioSetPosition),this._world.final("AUDIO.SET_PLAYBACK_RATE",this._onAudioSetPlaybackRate),this._world.final("AUDIO.SET_REFERENCE_DISTANCE",this._onAudioSetReferenceDistance),this._world.final("AUDIO.SET_VOLUME",this._onAudioSetVolume)}_subscribeToBlockTypeRegistryEvents(){this._world.final("BLOCK_TYPE_REGISTRY.REGISTER_BLOCK_TYPE",this._onBlockTypeRegistryRegisterBlockType)}_subscribeToChatEvents(){this._world.final("CHAT.BROADCAST_MESSAGE",this._onChatSendBroadcastMessage),this._world.final("CHAT.PLAYER_MESSAGE",this._onChatSendPlayerMessage)}_subscribeToChunkLatticeEvents(){this._world.final("CHUNK_LATTICE.ADD_CHUNK",this._onChunkLatticeAddChunk),this._world.final("CHUNK_LATTICE.REMOVE_CHUNK",this._onChunkLatticeRemoveChunk),this._world.final("CHUNK_LATTICE.SET_BLOCK",this._onChunkLatticeSetBlock)}_subscribeToEntityEvents(){this._world.final("ENTITY.SPAWN",this._onEntitySpawn),this._world.final("ENTITY.DESPAWN",this._onEntityDespawn),this._world.final("ENTITY.REMOVE_MODEL_NODE_OVERRIDE",this._onEntityRemoveModelNodeOverride),this._world.final("ENTITY.SET_BLOCK_TEXTURE_URI",this._onEntitySetBlockTextureUri),this._world.final("ENTITY.SET_EMISSIVE_COLOR",this._onEntitySetEmissiveColor),this._world.final("ENTITY.SET_EMISSIVE_INTENSITY",this._onEntitySetEmissiveIntensity),this._world.final("ENTITY.SET_MODEL_SCALE",this._onEntitySetModelScale),this._world.final("ENTITY.SET_MODEL_SCALE_INTERPOLATION_MS",this._onEntitySetModelScaleInterpolationMs),this._world.final("ENTITY.SET_MODEL_TEXTURE_URI",this._onEntitySetModelTextureUri),this._world.final("ENTITY.SET_OPACITY",this._onEntitySetOpacity),this._world.final("ENTITY.SET_OUTLINE",this._onEntitySetOutline),this._world.final("ENTITY.SET_PARENT",this._onEntitySetParent),this._world.final("ENTITY.SET_POSITION_INTERPOLATION_MS",this._onEntitySetPositionInterpolationMs),this._world.final("ENTITY.SET_ROTATION_INTERPOLATION_MS",this._onEntitySetRotationInterpolationMs),this._world.final("ENTITY.SET_TINT_COLOR",this._onEntitySetTintColor),this._world.final("ENTITY.UPDATE_POSITION",this._onEntityUpdatePosition),this._world.final("ENTITY.UPDATE_ROTATION",this._onEntityUpdateRotation)}_subscribeToEntityModelAnimationEvents(){this._world.final("ENTITY_MODEL_ANIMATION.PAUSE",this._onEntityModelAnimationPause),this._world.final("ENTITY_MODEL_ANIMATION.PLAY",this._onEntityModelAnimationPlay),this._world.final("ENTITY_MODEL_ANIMATION.RESTART",this._onEntityModelAnimationRestart),this._world.final("ENTITY_MODEL_ANIMATION.SET_BLEND_MODE",this._onEntityModelAnimationSetBlendMode),this._world.final("ENTITY_MODEL_ANIMATION.SET_CLAMP_WHEN_FINISHED",this._onEntityModelAnimationSetClampWhenFinished),this._world.final("ENTITY_MODEL_ANIMATION.SET_FADES_IN",this._onEntityModelAnimationSetFadesIn),this._world.final("ENTITY_MODEL_ANIMATION.SET_FADES_OUT",this._onEntityModelAnimationSetFadesOut),this._world.final("ENTITY_MODEL_ANIMATION.SET_LOOP_MODE",this._onEntityModelAnimationSetLoopMode),this._world.final("ENTITY_MODEL_ANIMATION.SET_PLAYBACK_RATE",this._onEntityModelAnimationSetPlaybackRate),this._world.final("ENTITY_MODEL_ANIMATION.SET_WEIGHT",this._onEntityModelAnimationSetWeight),this._world.final("ENTITY_MODEL_ANIMATION.STOP",this._onEntityModelAnimationStop)}_subscribeToEntityModelNodeOverrideEvents(){this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_COLOR",this._onEntityModelNodeOverrideSetEmissiveColor),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_INTENSITY",this._onEntityModelNodeOverrideSetEmissiveIntensity),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_HIDDEN",this._onEntityModelNodeOverrideSetHidden),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION",this._onEntityModelNodeOverrideSetLocalPosition),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION_INTERPOLATION_MS",this._onEntityModelNodeOverrideSetLocalPositionInterpolationMs),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION",this._onEntityModelNodeOverrideSetLocalRotation),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION_INTERPOLATION_MS",this._onEntityModelNodeOverrideSetLocalRotationInterpolationMs),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE",this._onEntityModelNodeOverrideSetLocalScale),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE_INTERPOLATION_MS",this._onEntityModelNodeOverrideSetLocalScaleInterpolationMs)}_subscribeToParticleEmitterEvents(){this._world.final("PARTICLE_EMITTER.DESPAWN",this._onParticleEmitterDespawn),this._world.final("PARTICLE_EMITTER.BURST",this._onParticleEmitterBurst),this._world.final("PARTICLE_EMITTER.SET_ALPHA_TEST",this._onParticleEmitterSetAlphaTest),this._world.final("PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY",this._onParticleEmitterSetAttachedToEntity),this._world.final("PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY_NODE_NAME",this._onParticleEmitterSetAttachedToEntityNodeName),this._world.final("PARTICLE_EMITTER.SET_COLOR_END",this._onParticleEmitterSetColorEnd),this._world.final("PARTICLE_EMITTER.SET_COLOR_END_VARIANCE",this._onParticleEmitterSetColorEndVariance),this._world.final("PARTICLE_EMITTER.SET_COLOR_INTENSITY_END",this._onParticleEmitterSetColorIntensityEnd),this._world.final("PARTICLE_EMITTER.SET_COLOR_INTENSITY_END_VARIANCE",this._onParticleEmitterSetColorIntensityEndVariance),this._world.final("PARTICLE_EMITTER.SET_COLOR_INTENSITY_START",this._onParticleEmitterSetColorIntensityStart),this._world.final("PARTICLE_EMITTER.SET_COLOR_INTENSITY_START_VARIANCE",this._onParticleEmitterSetColorIntensityStartVariance),this._world.final("PARTICLE_EMITTER.SET_COLOR_START",this._onParticleEmitterSetColorStart),this._world.final("PARTICLE_EMITTER.SET_COLOR_START_VARIANCE",this._onParticleEmitterSetColorStartVariance),this._world.final("PARTICLE_EMITTER.SET_GRAVITY",this._onParticleEmitterSetGravity),this._world.final("PARTICLE_EMITTER.SET_LIFETIME",this._onParticleEmitterSetLifetime),this._world.final("PARTICLE_EMITTER.SET_LIFETIME_VARIANCE",this._onParticleEmitterSetLifetimeVariance),this._world.final("PARTICLE_EMITTER.SET_MAX_PARTICLES",this._onParticleEmitterSetMaxParticles),this._world.final("PARTICLE_EMITTER.SET_OFFSET",this._onParticleEmitterSetOffset),this._world.final("PARTICLE_EMITTER.SET_OPACITY_END",this._onParticleEmitterSetOpacityEnd),this._world.final("PARTICLE_EMITTER.SET_OPACITY_END_VARIANCE",this._onParticleEmitterSetOpacityEndVariance),this._world.final("PARTICLE_EMITTER.SET_OPACITY_START",this._onParticleEmitterSetOpacityStart),this._world.final("PARTICLE_EMITTER.SET_OPACITY_START_VARIANCE",this._onParticleEmitterSetOpacityStartVariance),this._world.final("PARTICLE_EMITTER.SET_PAUSED",this._onParticleEmitterSetPaused),this._world.final("PARTICLE_EMITTER.SET_POSITION",this._onParticleEmitterSetPosition),this._world.final("PARTICLE_EMITTER.SET_POSITION_VARIANCE",this._onParticleEmitterSetPositionVariance),this._world.final("PARTICLE_EMITTER.SET_RATE",this._onParticleEmitterSetRate),this._world.final("PARTICLE_EMITTER.SET_RATE_VARIANCE",this._onParticleEmitterSetRateVariance),this._world.final("PARTICLE_EMITTER.SET_SIZE_END",this._onParticleEmitterSetSizeEnd),this._world.final("PARTICLE_EMITTER.SET_SIZE_END_VARIANCE",this._onParticleEmitterSetSizeEndVariance),this._world.final("PARTICLE_EMITTER.SET_SIZE_START",this._onParticleEmitterSetSizeStart),this._world.final("PARTICLE_EMITTER.SET_SIZE_START_VARIANCE",this._onParticleEmitterSetSizeStartVariance),this._world.final("PARTICLE_EMITTER.SET_TEXTURE_URI",this._onParticleEmitterSetTextureUri),this._world.final("PARTICLE_EMITTER.SET_TRANSPARENT",this._onParticleEmitterSetTransparent),this._world.final("PARTICLE_EMITTER.SET_VELOCITY",this._onParticleEmitterSetVelocity),this._world.final("PARTICLE_EMITTER.SET_VELOCITY_VARIANCE",this._onParticleEmitterSetVelocityVariance),this._world.final("PARTICLE_EMITTER.SPAWN",this._onParticleEmitterSpawn)}_subscribeToPlayerEvents(){this._world.final("PLAYER.JOINED_WORLD",this._onPlayerJoinedWorld),this._world.final("PLAYER.LEFT_WORLD",this._onPlayerLeftWorld),this._world.final("PLAYER.RECONNECTED_WORLD",this._onPlayerReconnectedWorld),this._world.final("PLAYER.REQUEST_NOTIFICATION_PERMISSION",this._onPlayerRequestNotificationPermission),this._world.final("PLAYER.REQUEST_SYNC",this._onPlayerRequestSync)}_subscribeToPlayerCameraEvents(){this._world.final("PLAYER_CAMERA.FACE_ENTITY",this._onPlayerCameraFaceEntity),this._world.final("PLAYER_CAMERA.FACE_POSITION",this._onPlayerCameraFacePosition),this._world.final("PLAYER_CAMERA.SET_ATTACHED_TO_ENTITY",this._onPlayerCameraSetAttachedToEntity),this._world.final("PLAYER_CAMERA.SET_ATTACHED_TO_POSITION",this._onPlayerCameraSetAttachedToPosition),this._world.final("PLAYER_CAMERA.SET_COLLIDES_WITH_BLOCKS",this._onPlayerCameraSetCollidesWithBlocks),this._world.final("PLAYER_CAMERA.SET_FILM_OFFSET",this._onPlayerCameraSetFilmOffset),this._world.final("PLAYER_CAMERA.SET_FORWARD_OFFSET",this._onPlayerCameraSetForwardOffset),this._world.final("PLAYER_CAMERA.SET_FOV",this._onPlayerCameraSetFov),this._world.final("PLAYER_CAMERA.SET_MODE",this._onPlayerCameraSetMode),this._world.final("PLAYER_CAMERA.SET_OFFSET",this._onPlayerCameraSetOffset),this._world.final("PLAYER_CAMERA.SET_SHOULDER_ANGLE",this._onPlayerCameraSetShoulderAngle),this._world.final("PLAYER_CAMERA.SET_TARGET_ENTITY",this._onPlayerCameraSetTargetEntity),this._world.final("PLAYER_CAMERA.SET_TARGET_POSITION",this._onPlayerCameraSetTargetPosition),this._world.final("PLAYER_CAMERA.SET_VIEW_MODEL",this._onPlayerCameraSetViewModel),this._world.final("PLAYER_CAMERA.SET_VIEW_MODEL_HIDDEN_NODES",this._onPlayerCameraSetViewModelHiddenNodes),this._world.final("PLAYER_CAMERA.SET_VIEW_MODEL_PITCHES_WITH_CAMERA",this._onPlayerCameraSetViewModelPitchesWithCamera),this._world.final("PLAYER_CAMERA.SET_VIEW_MODEL_SHOWN_NODES",this._onPlayerCameraSetViewModelShownNodes),this._world.final("PLAYER_CAMERA.SET_VIEW_MODEL_YAWS_WITH_CAMERA",this._onPlayerCameraSetViewModelYawsWithCamera),this._world.final("PLAYER_CAMERA.SET_ZOOM",this._onPlayerCameraSetZoom)}_subscribeToPlayerUIEvents(){this._world.final("PLAYER_UI.APPEND",this._onPlayerUIAppend),this._world.final("PLAYER_UI.FREEZE_POINTER_LOCK",this._onPlayerUIFreezePointerLock),this._world.final("PLAYER_UI.LOAD",this._onPlayerUILoad),this._world.final("PLAYER_UI.LOCK_POINTER",this._onPlayerUILockPointer),this._world.final("PLAYER_UI.SEND_DATA",this._onPlayerUISendData)}_subscribeToSceneUIEvents(){this._world.final("SCENE_UI.LOAD",this._onSceneUILoad),this._world.final("SCENE_UI.SET_ATTACHED_TO_ENTITY",this._onSceneUISetAttachedToEntity),this._world.final("SCENE_UI.SET_OFFSET",this._onSceneUISetOffset),this._world.final("SCENE_UI.SET_POSITION",this._onSceneUISetPosition),this._world.final("SCENE_UI.SET_STATE",this._onSceneUISetState),this._world.final("SCENE_UI.SET_VIEW_DISTANCE",this._onSceneUISetViewDistance),this._world.final("SCENE_UI.UNLOAD",this._onSceneUIUnload)}_subscribeToSimulationEvents(){this._world.final("SIMULATION.DEBUG_RAYCAST",this._onSimulationDebugRaycast),this._world.final("SIMULATION.DEBUG_RENDER",this._onSimulationDebugRender)}_subscribeToWorldEvents(){this._world.final("WORLD.SET_AMBIENT_LIGHT_COLOR",this._onWorldSetAmbientLightColor),this._world.final("WORLD.SET_AMBIENT_LIGHT_INTENSITY",this._onWorldSetAmbientLightIntensity),this._world.final("WORLD.SET_DIRECTIONAL_LIGHT_COLOR",this._onWorldSetDirectionalLightColor),this._world.final("WORLD.SET_DIRECTIONAL_LIGHT_INTENSITY",this._onWorldSetDirectionalLightIntensity),this._world.final("WORLD.SET_DIRECTIONAL_LIGHT_POSITION",this._onWorldSetDirectionalLightPosition),this._world.final("WORLD.SET_FOG_COLOR",this._onWorldSetFogColor),this._world.final("WORLD.SET_FOG_FAR",this._onWorldSetFogFar),this._world.final("WORLD.SET_FOG_NEAR",this._onWorldSetFogNear),this._world.final("WORLD.SET_SKYBOX_INTENSITY",this._onWorldSetSkyboxIntensity),this._world.final("WORLD.SET_SKYBOX_URI",this._onWorldSetSkyboxUri)}_onAudioPause=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.pa=!0,delete Q.pl,delete Q.r};_onAudioPlay=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Object.assign(Q,A.audio.serialize()),Q.pl=!0,delete Q.pa,delete Q.r};_onAudioPlayRestart=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Object.assign(Q,A.audio.serialize()),Q.r=!0,delete Q.pa,delete Q.pl};_onAudioSetAttachedToEntity=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.e=A.entity?A.entity.id:void 0,Q.p=A.entity?void 0:Q.p};_onAudioSetCutoffDistance=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.cd=A.cutoffDistance};_onAudioSetDetune=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.de=A.detune};_onAudioSetDistortion=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.di=A.distortion};_onAudioSetPosition=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.e=A.position?void 0:Q.e,Q.p=A.position?GQ.serializeVector(A.position):void 0};_onAudioSetPlaybackRate=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.pr=A.playbackRate};_onAudioSetReferenceDistance=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.rd=A.referenceDistance};_onAudioSetVolume=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.v=A.volume};_onBlockTypeRegistryRegisterBlockType=(A)=>{if(this._playersInWorld.size===0)return;let Q=this._createOrGetQueuedBlockTypeSync(A.blockType);Object.assign(Q,A.blockType.serialize())};_onChatSendBroadcastMessage=(A)=>{this._createOrGetQueuedChatMessagesSync().push({m:A.message,c:A.color,p:A.player?.id})};_onChatSendPlayerMessage=(A)=>{this._createOrGetQueuedChatMessagesSync(A.player).push({m:A.message,c:A.color})};_onChunkLatticeAddChunk=(A)=>{if(this._playersInWorld.size===0)return;let Q=this._createOrGetQueuedChunkSync(A.chunk);Object.assign(Q,A.chunk.serialize()),Q.rm=void 0,this._spawnedChunks.add(Q.c.join(","))};_onChunkLatticeRemoveChunk=(A)=>{if(this._playersInWorld.size===0)return;let Q=this._createOrGetQueuedChunkSync(A.chunk),B=Q.c.join(",");if(this._spawnedChunks.has(B))this._queuedChunkSyncs.broadcast.delete(B),this._spawnedChunks.delete(B);else Q.rm=!0};_onChunkLatticeSetBlock=(A)=>{if(this._playersInWorld.size===0)return;let Q=this._createOrGetQueuedBlockSync(A.globalCoordinate);Q.i=A.blockTypeId,Q.r=A.blockRotation?.enumIndex};_onEntitySpawn=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Object.assign(Q,A.entity.serialize()),this._spawnedEntities.add(Q.i)};_onEntityDespawn=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);if(this._spawnedEntities.has(Q.i))this._queuedEntitySyncs.broadcast.delete(Q.i),this._spawnedEntities.delete(Q.i);else Q.rm=!0};_onEntityRemoveModelNodeOverride=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.rm=!0};_onEntitySetBlockTextureUri=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.bt=A.blockTextureUri};_onEntitySetEmissiveColor=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.ec=A.emissiveColor?GQ.serializeRgbColor(A.emissiveColor):void 0};_onEntitySetEmissiveIntensity=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.ei=A.emissiveIntensity};_onEntitySetModelScale=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.sv=A.modelScale?GQ.serializeVector(A.modelScale):void 0};_onEntitySetModelScaleInterpolationMs=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.si=A.interpolationMs};_onEntitySetModelTextureUri=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.mt=A.modelTextureUri};_onEntitySetOpacity=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.o=A.opacity};_onEntitySetOutline=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity,A.forPlayer);Q.ol=A.outline?GQ.serializeOutline(A.outline):void 0};_onEntitySetParent=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.pe=A.parent?A.parent.id:void 0,Q.pn=A.parentNodeName};_onEntitySetPositionInterpolationMs=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.pi=A.interpolationMs};_onEntitySetRotationInterpolationMs=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.ri=A.interpolationMs};_onEntitySetTintColor=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.t=A.tintColor?GQ.serializeRgbColor(A.tintColor):void 0};_onEntityUpdatePosition=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.p=[A.position.x,A.position.y,A.position.z]};_onEntityUpdateRotation=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.r=[A.rotation.x,A.rotation.y,A.rotation.z,A.rotation.w]};_onEntityModelAnimationPause=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.pa=!0,delete Q.p,delete Q.r,delete Q.s};_onEntityModelAnimationPlay=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.p=!0,delete Q.pa,delete Q.r,delete Q.s};_onEntityModelAnimationRestart=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.r=!0,delete Q.pa,delete Q.p,delete Q.s};_onEntityModelAnimationSetBlendMode=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.b=A.blendMode};_onEntityModelAnimationSetClampWhenFinished=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.c=A.clampWhenFinished};_onEntityModelAnimationSetFadesIn=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.fi=A.fadesIn};_onEntityModelAnimationSetFadesOut=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.fo=A.fadesOut};_onEntityModelAnimationSetLoopMode=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.l=A.loopMode};_onEntityModelAnimationSetPlaybackRate=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.pr=A.playbackRate};_onEntityModelAnimationSetWeight=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.w=A.weight};_onEntityModelAnimationStop=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.s=!0,delete Q.p,delete Q.pa,delete Q.r};_onEntityModelNodeOverrideSetEmissiveColor=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.ec=A.emissiveColor?GQ.serializeRgbColor(A.emissiveColor):void 0,delete Q.rm};_onEntityModelNodeOverrideSetEmissiveIntensity=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.ei=A.emissiveIntensity,delete Q.rm};_onEntityModelNodeOverrideSetHidden=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.h=A.hidden,delete Q.rm};_onEntityModelNodeOverrideSetLocalPosition=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.p=A.localPosition?GQ.serializeVector(A.localPosition):void 0,delete Q.rm};_onEntityModelNodeOverrideSetLocalPositionInterpolationMs=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.pi=A.interpolationMs,delete Q.rm};_onEntityModelNodeOverrideSetLocalRotation=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.r=A.localRotation?GQ.serializeQuaternion(A.localRotation):void 0,delete Q.rm};_onEntityModelNodeOverrideSetLocalRotationInterpolationMs=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.ri=A.interpolationMs,delete Q.rm};_onEntityModelNodeOverrideSetLocalScale=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.s=A.localScale?GQ.serializeVector(A.localScale):void 0,delete Q.rm};_onEntityModelNodeOverrideSetLocalScaleInterpolationMs=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.si=A.interpolationMs,delete Q.rm};_onParticleEmitterBurst=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.b=A.count};_onParticleEmitterDespawn=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.rm=!0};_onParticleEmitterSetAlphaTest=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.at=A.alphaTest};_onParticleEmitterSetAttachedToEntity=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.e=A.entity?A.entity.id:void 0,Q.p=A.entity?void 0:Q.p};_onParticleEmitterSetAttachedToEntityNodeName=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.en=A.attachedToEntityNodeName};_onParticleEmitterSetColorEnd=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.ce=A.colorEnd?GQ.serializeRgbColor(A.colorEnd):void 0};_onParticleEmitterSetColorEndVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.cev=A.colorEndVariance?GQ.serializeRgbColor(A.colorEndVariance):void 0};_onParticleEmitterSetColorIntensityEnd=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.cie=A.colorIntensityEnd};_onParticleEmitterSetColorIntensityEndVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.ciev=A.colorIntensityEndVariance};_onParticleEmitterSetColorIntensityStart=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.cis=A.colorIntensityStart};_onParticleEmitterSetColorIntensityStartVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.cisv=A.colorIntensityStartVariance};_onParticleEmitterSetColorStart=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.cs=A.colorStart?GQ.serializeRgbColor(A.colorStart):void 0};_onParticleEmitterSetColorStartVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.csv=A.colorStartVariance?GQ.serializeRgbColor(A.colorStartVariance):void 0};_onParticleEmitterSetGravity=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.g=A.gravity?GQ.serializeVector(A.gravity):void 0};_onParticleEmitterSetLifetime=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.l=A.lifetime};_onParticleEmitterSetLifetimeVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.lv=A.lifetimeVariance};_onParticleEmitterSetMaxParticles=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.mp=A.maxParticles};_onParticleEmitterSetOffset=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.o=A.offset?GQ.serializeVector(A.offset):void 0};_onParticleEmitterSetOpacityEnd=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.oe=A.opacityEnd};_onParticleEmitterSetOpacityEndVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.oev=A.opacityEndVariance};_onParticleEmitterSetOpacityStart=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.os=A.opacityStart};_onParticleEmitterSetOpacityStartVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.osv=A.opacityStartVariance};_onParticleEmitterSetPaused=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.pa=A.paused};_onParticleEmitterSetPosition=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.p=A.position?GQ.serializeVector(A.position):void 0,Q.e=A.position?void 0:Q.e,Q.en=A.position?void 0:Q.en};_onParticleEmitterSetPositionVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.pv=A.positionVariance?GQ.serializeVector(A.positionVariance):void 0};_onParticleEmitterSetRate=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.r=A.rate};_onParticleEmitterSetRateVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.rv=A.rateVariance};_onParticleEmitterSetSizeEnd=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.se=A.sizeEnd};_onParticleEmitterSetSizeEndVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.sev=A.sizeEndVariance};_onParticleEmitterSetSizeStart=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.ss=A.sizeStart};_onParticleEmitterSetSizeStartVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.ssv=A.sizeStartVariance};_onParticleEmitterSetTextureUri=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.tu=A.textureUri};_onParticleEmitterSetTransparent=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.t=A.transparent};_onParticleEmitterSetVelocity=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.v=A.velocity?GQ.serializeVector(A.velocity):void 0};_onParticleEmitterSetVelocityVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.vv=A.velocityVariance?GQ.serializeVector(A.velocityVariance):void 0};_onParticleEmitterSpawn=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Object.assign(Q,A.particleEmitter.serialize())};_onPlayerCameraFaceEntity=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.pl=GQ.serializeVector(A.entity.position),delete Q.et,delete Q.pt};_onPlayerCameraFacePosition=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.pl=A.position?GQ.serializeVector(A.position):void 0,delete Q.et,delete Q.pt};_onPlayerCameraSetAttachedToEntity=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.e=A.entity.id,delete Q.p,this._syncPlayerCameraAttachedEntityModel(A.playerCamera)};_onPlayerCameraSetAttachedToPosition=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.p=A.position?GQ.serializeVector(A.position):void 0,delete Q.e};_onPlayerCameraSetCollidesWithBlocks=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.cb=A.collidesWithBlocks};_onPlayerCameraSetFilmOffset=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.fo=A.filmOffset};_onPlayerCameraSetForwardOffset=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.ffo=A.forwardOffset};_onPlayerCameraSetFov=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.fv=A.fov};_onPlayerCameraSetMode=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.m=A.mode,this._syncPlayerCameraAttachedEntityModel(A.playerCamera)};_onPlayerCameraSetOffset=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.o=A.offset?GQ.serializeVector(A.offset):void 0};_onPlayerCameraSetShoulderAngle=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.sa=A.shoulderAngle};_onPlayerCameraSetTargetEntity=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.et=A.entity?A.entity.id:void 0,delete Q.pl,delete Q.pt};_onPlayerCameraSetTargetPosition=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.pt=A.position?GQ.serializeVector(A.position):void 0,delete Q.et,delete Q.pl};_onPlayerCameraSetZoom=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.z=A.zoom};_onPlayerCameraSetViewModel=(A)=>{this._syncPlayerCameraAttachedEntityModel(A.playerCamera)};_onPlayerCameraSetViewModelHiddenNodes=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.h=Array.from(A.viewModelHiddenNodes)};_onPlayerCameraSetViewModelPitchesWithCamera=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.mp=A.viewModelPitchesWithCamera};_onPlayerCameraSetViewModelShownNodes=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.s=Array.from(A.viewModelShownNodes)};_onPlayerCameraSetViewModelYawsWithCamera=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.my=A.viewModelYawsWithCamera};_onPlayerJoinedWorld=(A)=>{let{player:Q}=A;this._playersInWorld.add(Q);for(let C of this._world.audioManager.getAllAudios()){let X=this._createOrGetQueuedAudioSync(C,Q);this._assignUndefined(X,C.serialize())}for(let C of this._world.blockTypeRegistry.getAllBlockTypes()){let X=this._createOrGetQueuedBlockTypeSync(C,Q);this._assignUndefined(X,C.serialize())}let B=this._createOrGetQueuedCameraSync(Q);this._assignUndefined(B,Q.camera.serialize());for(let C of this._world.chunkLattice.getAllChunks()){let X=this._createOrGetQueuedChunkSync(C,Q);this._assignUndefined(X,C.serialize())}for(let C of this._world.entityManager.getAllEntities()){if(Q.camera.attachedToEntity===void 0&&C instanceof BX&&C.player===Q)Q.camera.setAttachedToEntity(C);let X=this._createOrGetQueuedEntitySync(C,Q);this._assignUndefined(X,C.serialize())}this._syncPlayerCameraAttachedEntityModel(Q.camera);for(let C of this._world.particleEmitterManager.getAllParticleEmitters()){let X=this._createOrGetQueuedParticleEmitterSync(C,Q);this._assignUndefined(X,C.serialize())}for(let C of dJ.instance.getConnectedPlayers()){let X=this._createOrGetQueuedPlayerSync(C,Q);this._assignUndefined(X,C.serialize())}for(let C of this._world.sceneUIManager.getAllSceneUIs()){let X=this._createOrGetQueuedSceneUISync(C,Q);this._assignUndefined(X,C.serialize())}let Y=this._createOrGetQueuedWorldSync(this._world,Q);this._assignUndefined(Y,this._world.serialize());let J=this._createOrGetQueuedPlayerSync(Q);this._assignUndefined(J,Q.serialize())};_onPlayerLeftWorld=(A)=>{this._playersInWorld.delete(A.player);let Q=this._createOrGetQueuedPlayerSync(A.player);Q.rm=!0};_onPlayerReconnectedWorld=(A)=>{this._onPlayerJoinedWorld(A)};_onPlayerRequestNotificationPermission=(A)=>{this._createOrGetQueuedNotificationPermissionRequestSync(A.player)};_onPlayerRequestSync=(A)=>{A.player.connection.send([gQ.createPacket(gQ.outboundPackets.syncResponsePacketDefinition,{r:A.receivedAt,s:Date.now(),p:performance.now()-A.receivedAtMs,n:this._world.loop.nextTickMs},this._world.loop.currentTick)])};_onPlayerUIAppend=(A)=>{let Q=this._createOrGetQueuedUISync(A.playerUI.player);Q.ua??=[],Q.ua.push(A.htmlUri)};_onPlayerUIFreezePointerLock=(A)=>{let Q=this._createOrGetQueuedUISync(A.playerUI.player);Q.pf=A.freeze};_onPlayerUILoad=(A)=>{let Q=this._createOrGetQueuedUISync(A.playerUI.player);Q.u=A.htmlUri};_onPlayerUILockPointer=(A)=>{let Q=this._createOrGetQueuedUISync(A.playerUI.player);Q.p=A.lock};_onPlayerUISendData=(A)=>{this._createOrGetQueuedUIDatasSync(A.playerUI.player).push(A.data)};_onSceneUILoad=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);Object.assign(Q,A.sceneUI.serialize()),this._loadedSceneUIs.add(Q.i)};_onSceneUISetAttachedToEntity=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);Q.e=A.entity?A.entity.id:void 0,Q.p=A.entity?void 0:Q.p};_onSceneUISetOffset=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);Q.o=A.offset?GQ.serializeVector(A.offset):void 0};_onSceneUISetPosition=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);Q.p=A.position?GQ.serializeVector(A.position):void 0,Q.e=A.position?void 0:Q.e};_onSceneUISetState=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);Q.s=A.state};_onSceneUISetViewDistance=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);Q.v=A.viewDistance};_onSceneUIUnload=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);if(this._loadedSceneUIs.has(Q.i))this._queuedSceneUISyncs.broadcast.delete(Q.i),this._loadedSceneUIs.delete(Q.i);else Q.rm=!0};_onSimulationDebugRaycast=(A)=>{this._createOrGetDebugRaycastsSync().push(GQ.serializePhysicsDebugRaycast(A))};_onSimulationDebugRender=(A)=>{let Q=this._createOrGetDebugRenderSync();Q.v=Array.from(A.vertices),Q.c=Array.from(A.colors)};_onWorldSetAmbientLightColor=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.ac=GQ.serializeRgbColor(A.color)};_onWorldSetAmbientLightIntensity=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.ai=A.intensity};_onWorldSetDirectionalLightColor=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.dc=GQ.serializeRgbColor(A.color)};_onWorldSetDirectionalLightIntensity=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.di=A.intensity};_onWorldSetDirectionalLightPosition=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.dp=GQ.serializeVector(A.position)};_onWorldSetFogColor=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.fc=GQ.serializeRgbColor(A.color)};_onWorldSetFogFar=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.ff=A.far};_onWorldSetFogNear=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.fn=A.near};_onWorldSetSkyboxIntensity=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.si=A.intensity};_onWorldSetSkyboxUri=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.s=A.uri};_assignUndefined(A,Q){for(let B in Q)if(A[B]===void 0)A[B]=Q[B];return A}_createAudioSync=(A)=>({i:A.id});_createOrGetQueuedAudioSync(A,Q){if(A.id===void 0)l.fatalError("NetworkSynchronizer._createOrGetQueuedAudioSync(): Audio has no id!");return this._createOrGetQueuedSync(this._queuedAudioSyncs,A.id,this._createAudioSync,A,Q)}_createBlockSync=(A)=>({i:0,c:[A.x,A.y,A.z]});_createOrGetQueuedBlockSync(A,Q){let B=`${A.x},${A.y},${A.z}`;return this._createOrGetQueuedSync(this._queuedBlockSyncs,B,this._createBlockSync,A,Q)}_createBlockTypeSync=(A)=>({i:A.id});_createOrGetQueuedBlockTypeSync(A,Q){return this._createOrGetQueuedSync(this._queuedBlockTypeSyncs,A.id,this._createBlockTypeSync,A,Q)}_createCameraSync=()=>({});_createOrGetQueuedCameraSync(A){return this._createOrGetQueuedSingletonSync(this._queuedCameraSyncs,this._createCameraSync,void 0,A)}_createChatMessagesSync=()=>[];_createOrGetQueuedChatMessagesSync(A){return this._createOrGetQueuedSingletonSync(this._queuedChatMessagesSyncs,this._createChatMessagesSync,void 0,A)}_createChunkSync=(A)=>({c:[A.originCoordinate.x,A.originCoordinate.y,A.originCoordinate.z]});_createOrGetQueuedChunkSync(A,Q){if(!A.originCoordinate)l.fatalError("NetworkSynchronizer._createOrGetQueuedChunkSync(): Chunk has no origin coordinate!");let B=`${A.originCoordinate.x},${A.originCoordinate.y},${A.originCoordinate.z}`;return this._createOrGetQueuedSync(this._queuedChunkSyncs,B,this._createChunkSync,A,Q)}_createDebugRaycastsSync=()=>[];_createOrGetDebugRaycastsSync(A){return this._createOrGetQueuedSingletonSync(this._queuedDebugRaycastsSyncs,this._createDebugRaycastsSync,void 0,A)}_createDebugRenderSync=()=>({v:[],c:[]});_createOrGetDebugRenderSync(A){return this._createOrGetQueuedSingletonSync(this._queuedDebugRenderSyncs,this._createDebugRenderSync,void 0,A)}_createEntitySync=(A)=>({i:A.id});_createOrGetQueuedEntitySync(A,Q){if(A.id===void 0)l.fatalError("NetworkSynchronizer._createOrGetQueuedEntitySync(): Entity has no id!");return this._createOrGetQueuedSync(this._queuedEntitySyncs,A.id,this._createEntitySync,A,Q)}_createEntityModelAnimationSync=(A)=>({n:A.name});_createOrGetQueuedEntityModelAnimationSync(A,Q){if(A.entity.id===void 0)l.fatalError("NetworkSynchronizer._createOrGetQueuedEntityModelAnimationSync(): EntityModelAnimation entity has no id!");let B=this._createOrGetQueuedEntitySync(A.entity,Q);B.ma??=[];let Y=B.ma.find((J)=>J.n===A.name);if(!Y)Y=this._createEntityModelAnimationSync(A),B.ma.push(Y);return Y}_createEntityModelNodeOverrideSync=(A)=>({n:A.nameMatch});_createOrGetQueuedEntityModelNodeOverrideSync(A,Q){if(A.entity.id===void 0)l.fatalError("NetworkSynchronizer._createOrGetQueuedEntityModelNodeOverrideSync(): EntityModelNodeOverride entity has no id!");let B=this._createOrGetQueuedEntitySync(A.entity,Q);B.mo??=[];let Y=B.mo.find((J)=>J.n===A.nameMatch);if(!Y)Y=this._createEntityModelNodeOverrideSync(A),B.mo.push(Y);return Y}_createNotificationPermissionRequestSync=()=>null;_createOrGetQueuedNotificationPermissionRequestSync(A){return this._createOrGetQueuedSingletonSync(this._queuedNotificationPermissionRequestSyncs,this._createNotificationPermissionRequestSync,void 0,A)}_createParticleEmitterSync=(A)=>({i:A.id});_createOrGetQueuedParticleEmitterSync(A,Q){if(A.id===void 0)l.fatalError("NetworkSynchronizer._createOrGetQueuedParticleEmitterSync(): ParticleEmitter has no id!");return this._createOrGetQueuedSync(this._queuedParticleEmitterSyncs,A.id,this._createParticleEmitterSync,A,Q)}_createPlayerSync=(A)=>({i:A.id});_createOrGetQueuedPlayerSync(A,Q){return this._createOrGetQueuedSync(this._queuedPlayerSyncs,A.id,this._createPlayerSync,A,Q)}_createSceneUISync=(A)=>({i:A.id});_createOrGetQueuedSceneUISync(A,Q){if(A.id===void 0)l.fatalError("NetworkSynchronizer._createOrGetQueuedSceneUISync(): SceneUI has no id!");return this._createOrGetQueuedSync(this._queuedSceneUISyncs,A.id,this._createSceneUISync,A,Q)}_createUISync=()=>({});_createOrGetQueuedUISync(A){return this._createOrGetQueuedSingletonSync(this._queuedUISyncs,this._createUISync,void 0,A)}_createUIDatasSync=()=>[];_createOrGetQueuedUIDatasSync(A){return this._createOrGetQueuedSingletonSync(this._queuedUIDatasSyncs,this._createUIDatasSync,void 0,A)}_createWorldSync=(A)=>({i:A.id});_createOrGetQueuedWorldSync(A,Q){if(A.id!==this._world.id)l.fatalError("NetworkSynchronizer._createOrGetQueuedWorldSync(): World does not match this network synchronizer world!");return this._createOrGetQueuedSingletonSync(this._queuedWorldSyncs,this._createWorldSync,A,Q)}_createOrGetQueuedSync(A,Q,B,Y,J){let C,X;if(J){if(X=A.perPlayer.get(J),!X)X=new bB,A.perPlayer.set(J,X);if(!this._outboundPerPlayerReliablePackets.has(J))this._outboundPerPlayerReliablePackets.set(J,[])}else X=A.broadcast;if(C=X.get(Q),C===void 0)C=B(Y),X.set(Q,C);return C}_createOrGetQueuedSingletonSync(A,Q,B,Y){let J=Y?A.perPlayer.get(Y):A.broadcast;if(J===void 0)if(J=Q(B),Y){if(A.perPlayer.set(Y,J),!this._outboundPerPlayerReliablePackets.has(Y))this._outboundPerPlayerReliablePackets.set(Y,[])}else A.broadcast=J;return J}_clearSyncQueue(A){if(A.broadcast.size>0)A.broadcast.clear();if(A.perPlayer.size>0)A.perPlayer.clear()}_clearSingletonSyncQueue(A){if(A.broadcast!==void 0)A.broadcast=void 0;if(A.perPlayer.size>0)A.perPlayer.clear()}_collectSingletonSyncToOutboundPackets(A,Q){if(A.broadcast!==void 0){let B=gQ.createPacket(Q,A.broadcast,this._world.loop.currentTick);this._outboundSharedReliablePackets.push(B);for(let Y of this._outboundPerPlayerReliablePackets.valuesArray)Y.push(B)}if(A.perPlayer.size>0)for(let[B,Y]of A.perPlayer.entries())this._outboundPerPlayerReliablePackets.get(B)?.push(gQ.createPacket(Q,Y,this._world.loop.currentTick))}_collectSyncToOutboundPackets(A,Q){if(A.broadcast.size>0){let B=gQ.createPacket(Q,A.broadcast.valuesArray,this._world.loop.currentTick);this._outboundSharedReliablePackets.push(B);for(let Y of this._outboundPerPlayerReliablePackets.valuesArray)Y.push(B)}if(A.perPlayer.size>0)for(let[B,Y]of A.perPlayer.entries())this._outboundPerPlayerReliablePackets.get(B)?.push(gQ.createPacket(Q,Y.valuesArray,this._world.loop.currentTick))}_syncPlayerCameraAttachedEntityModel(A){let Q=A.attachedToEntity,B=Q&&(A.mode===0?A.viewModelUri:Q.modelUri);if(Q&&B)this._createOrGetQueuedEntitySync(Q,A.player).m=B}}class KM{_particleEmitters=new Map;_nextParticleEmitterId=1;_world;constructor(A){this._world=A}get world(){return this._world}despawnEntityAttachedParticleEmitters(A){this.getAllEntityAttachedParticleEmitters(A).forEach((Q)=>{Q.despawn()})}getAllParticleEmitters(){return Array.from(this._particleEmitters.values())}getAllEntityAttachedParticleEmitters(A){return this.getAllParticleEmitters().filter((Q)=>Q.attachedToEntity===A)}registerParticleEmitter(A){if(A.id!==void 0)return A.id;let Q=this._nextParticleEmitterId;return this._particleEmitters.set(Q,A),this._nextParticleEmitterId++,Q}unregisterParticleEmitter(A){if(A.id===void 0)return;this._particleEmitters.delete(A.id)}}class VM{_sceneUIs=new Map;_nextSceneUIId=1;_world;constructor(A){this._world=A}get world(){return this._world}getAllSceneUIs(){return Array.from(this._sceneUIs.values())}getAllEntityAttachedSceneUIs(A){return this.getAllSceneUIs().filter((Q)=>Q.attachedToEntity===A)}getSceneUIById(A){return this._sceneUIs.get(A)}registerSceneUI(A){if(A.id!==void 0)return A.id;let Q=this._nextSceneUIId;return this._sceneUIs.set(Q,A),this._nextSceneUIId++,Q}unloadEntityAttachedSceneUIs(A){this.getAllEntityAttachedSceneUIs(A).forEach((Q)=>{Q.unload()})}unregisterSceneUI(A){if(A.id===void 0)return;this._sceneUIs.delete(A.id)}}import Ft from"fs";import wm0 from"path";import{brotliCompressSync as Cm0,brotliDecompressSync as Xm0,constants as bk,gunzipSync as Gm0,gzipSync as Wm0}from"zlib";var Qt=Object.values(w8).sort((A,Q)=>A.enumIndex-Q.enumIndex);function Fm0(A){return A<<1^A>>31}function IM(A){return A>>>1^-(A&1)}function Zm0(A,Q,B){let Y=B>>>0;while(Y>127)A[Q++]=Y&127|128,Y>>>=7;return A[Q++]=Y,Q}function HM(A,Q,B){return Zm0(A,Q,Fm0(B))}function DM(A,Q){let B=0,Y=0,J=0;do J=A[Q++],B|=(J&127)<>>0,offset:Q}}function $m0(A,Q){if(A==="none")return Q;if(A==="gzip")return Gm0(Q);return Xm0(Q)}function CSQ(A,Q,B){if(A==="none")return Q;if(A==="gzip")return Wm0(Q,{level:Math.min(9,Math.max(0,B))});return Cm0(Q,{params:{[bk.BROTLI_PARAM_MODE]:bk.BROTLI_MODE_GENERIC,[bk.BROTLI_PARAM_QUALITY]:Math.min(11,Math.max(0,B)),[bk.BROTLI_PARAM_SIZE_HINT]:Q.byteLength}})}function XSQ(A){return A!==null&&typeof A==="object"}function Um0(A){if(!A)return;if(Array.isArray(A))return A;return Object.values(A)}class eY{static isCompressedWorldMap(A){if(!XSQ(A))return!1;if(typeof A.data!=="string")return!1;if(!XSQ(A.bounds))return!1;let Q=A.bounds;return typeof Q.minX==="number"&&typeof Q.minY==="number"&&typeof Q.minZ==="number"&&typeof Q.maxX==="number"&&typeof Q.maxY==="number"&&typeof Q.maxZ==="number"}static compress(A,Q={}){let B=A.blocks??{},Y=[],J=1/0,C=1/0,X=1/0,G=-1/0,W=-1/0,F=-1/0,Z=!1;for(let N in B){let q=B[N],w=typeof q==="number"?q:q.i,P=typeof q==="number"?0:q.r??0;if(!Number.isInteger(w)||w<0||w>255)l.fatalError(`WorldMapCodec.compress(): Invalid block type id ${w} at ${N} (expected 0-255).`);if(!Number.isInteger(P)||P<0||P>=Qt.length)l.fatalError(`WorldMapCodec.compress(): Invalid block rotation index ${P} at ${N}.`);if(P!==0)Z=!0;let _=N.indexOf(","),j=N.indexOf(",",_+1),k=Number(N.slice(0,_)),T=Number(N.slice(_+1,j)),S=Number(N.slice(j+1));J=Math.min(J,k),C=Math.min(C,T),X=Math.min(X,S),G=Math.max(G,k),W=Math.max(W,T),F=Math.max(F,S),Y.push({x:k,y:T,z:S,id:w,r:P})}if(Y.length===0){let N=Buffer.allocUnsafe(4);N.writeUInt32LE(0,0);let q=Q.algorithm??"brotli",w=Q.level??9,P=CSQ(q,N,w).toString("base64");return{format:"hytopia.worldmap.compressed",codecVersion:1,version:"1.0.0",algorithm:q,data:P,bounds:{minX:0,minY:0,minZ:0,maxX:0,maxY:0,maxZ:0},blockTypes:A.blockTypes,entities:A.entities,options:{rotations:!1,useDelta:!0,useVarint:!0}}}let U=Q.includeRotations??Z;if(!U&&Z)l.fatalError("WorldMapCodec.compress(): Map contains rotated blocks but includeRotations is false.");for(let N=0;NN.y-q.y||N.x-q.x||N.z-q.z);let $=U?25:20,E=Buffer.allocUnsafe(4+Y.length*$),K=0;E.writeUInt32LE(Y.length,K),K+=4;let I=0,V=0,H=0;for(let N=0;N=Qt.length)l.fatalError(`WorldMapCodec.decodeBlockEntries(): Invalid rotation index ${I} at block ${$}.`);if(K<0||K>255)l.fatalError(`WorldMapCodec.decodeBlockEntries(): Invalid block type id ${K} at block ${$} (expected 0-255).`);let V=F+C.minX,H=Z+C.minY,D=U+C.minZ;yield{globalCoordinate:{x:V,y:H,z:D},blockTypeId:K,blockRotation:I!==0?Qt[I]:void 0}}}return W()}static decompressToWorldMap(A){let Q=Um0(A.blockTypes),B=A.entities,Y={},J=A.options?.rotations===!0;for(let C of this.decodeBlockEntries(A)){let X=`${C.globalCoordinate.x},${C.globalCoordinate.y},${C.globalCoordinate.z}`;if(!J||!C.blockRotation||C.blockRotation.enumIndex===0)Y[X]=C.blockTypeId;else Y[X]={i:C.blockTypeId,r:C.blockRotation.enumIndex}}return{blockTypes:Q,blocks:Y,entities:B}}}import{brotliCompressSync as Em0,brotliDecompressSync as Km0,constants as mk,gunzipSync as Vm0,gzipSync as Im0}from"zlib";var kV=Buffer.from("HYTCHUNK"),NM=1,_V=12;function GSQ(A){if(A==="none")return 0;if(A==="gzip")return 2;return 1}function WSQ(A){if(A===0)return"none";if(A===2)return"gzip";return"brotli"}var Hm0=Object.values(w8).sort((A,Q)=>A.enumIndex-Q.enumIndex);function ZSQ(A){return A!==null&&typeof A==="object"}function $SQ(A){return A<<1^A>>31}function Dm0(A){return A>>>1^-(A&1)}function LM(A){let Q=A>>>0,B=1;while(Q>127)B++,Q>>>=7;return B}function Bt(A){return LM($SQ(A))}function qM(A,Q,B){let Y=B>>>0;while(Y>127)A[Q++]=Y&127|128,Y>>>=7;return A[Q++]=Y,Q}function Yt(A,Q,B){return qM(A,Q,$SQ(B))}function MM(A,Q){let B=0,Y=0,J=0;do J=A[Q++],B|=(J&127)<>>0,offset:Q}}function Jt(A,Q){let B=MM(A,Q);return{value:Dm0(B.value),offset:B.offset}}function Nm0(A,Q,B){if(A==="none")return Q;if(A==="gzip")return Im0(Q,{level:Math.min(9,Math.max(0,B))});return Em0(Q,{params:{[mk.BROTLI_PARAM_MODE]:mk.BROTLI_MODE_GENERIC,[mk.BROTLI_PARAM_QUALITY]:Math.min(11,Math.max(0,B)),[mk.BROTLI_PARAM_SIZE_HINT]:Q.byteLength}})}function Lm0(A,Q){if(A==="none")return Q;if(A==="gzip")return Vm0(Q);return Km0(Q)}function Ct(A,Q){if(!Number.isSafeInteger(A))l.fatalError(`WorldMapChunkCacheCodec: ${Q} must be a safe integer.`)}function FSQ(A){if(!A)return;if(Array.isArray(A))return A;if(ZSQ(A))return Object.values(A);return}class o8{static _writeHeader(A){let Q=Buffer.allocUnsafe(_V);return kV.copy(Q,0),Q.writeUInt8(NM,8),Q.writeUInt8(GSQ(A),9),Q.writeUInt16LE(0,10),Q}static isWorldMapChunkCache(A){if(!ZSQ(A))return!1;if(typeof A.data!=="string")return!1;if(A.format==="hytopia.worldmap.chunk-cache")return!0;try{let Q=Buffer.from(A.data.slice(0,24),"base64");if(Q.byteLength<8)return!1;return Q.subarray(0,8).equals(kV)}catch{return!1}}static create(A,Q={}){let B=Q.algorithm??"brotli",Y=Q.level??6,{encoded:J}=this._encodeBody(A,{includeRotations:Q.includeRotations,sourceSha256:Q.sourceSha256}),C=this._writeHeader(B),X=Nm0(B,J,Y),G=Buffer.concat([C,X]);return{format:"hytopia.worldmap.chunk-cache",codecVersion:1,version:"1.0.0",algorithm:B,data:G.toString("base64")}}static decode(A){let Q=this._decodeFile(A),B=this._decodeMetadata(Q.body),Y=B.metadata.options?.rotations===!0,J=B.chunkCount,C=B.offset,X=this._decodeChunks(Q.body,C,J,Y);return{metadata:B.metadata,chunks:X}}static decodeMetadata(A){let Q=this._decodeFile(A);return this._decodeMetadata(Q.body).metadata}static decodeChunks(A){let Q=this._decodeFile(A),B=this._decodeMetadata(Q.body),Y=B.metadata.options?.rotations===!0;return this._decodeChunks(Q.body,B.offset,B.chunkCount,Y)}static decompressToWorldMap(A){let{metadata:Q,chunks:B}=this.decode(A),Y={},J=Q.options?.rotations===!0;for(let C of B){let X=C.originCoordinate;for(let G=0;G=c9)l.fatalError(`WorldMapChunkCacheCodec.decode(): Invalid block index ${L} (expected 0-${c9-1}).`);let z=A.readUInt8(J++),M=Hm0[z];if(!M)l.fatalError(`WorldMapChunkCacheCodec.decode(): Invalid rotation enumIndex ${z}.`);K.set(L,M)}}yield{originCoordinate:{x:W,y:F,z:Z},blocks:E,blockRotations:K}}}return C()}static _encodeBody(A,Q){let B=new Map,Y=!1,J=(I,V,H)=>{if(Ct(I.x,"block x"),Ct(I.y,"block y"),Ct(I.z,"block z"),!Number.isInteger(V)||V<0||V>255)l.fatalError(`WorldMapChunkCacheCodec: Invalid block type id ${V} (expected 0-255).`);if(!Number.isInteger(H)||H<0||H>255)l.fatalError(`WorldMapChunkCacheCodec: Invalid rotation enumIndex ${H} (expected 0-255).`);let D=MY.globalCoordinateToOriginCoordinate(I),L=`${D.x},${D.y},${D.z}`,z=B.get(L);if(!z)z={originCoordinate:D,blocks:new Uint8Array(c9),rotationsByBlockIndex:new Map},B.set(L,z);let M=MY.globalCoordinateToLocalCoordinate(I),N=MY.localCoordinateToBlockIndex(M);if(z.blocks[N]=V,H!==0)z.rotationsByBlockIndex.set(N,H),Y=!0};if(eY.isCompressedWorldMap(A))for(let I of eY.decodeBlockEntries(A))J(I.globalCoordinate,I.blockTypeId,I.blockRotation?.enumIndex??0);else if(A.blocks)for(let I in A.blocks){let V=A.blocks[I],H=typeof V==="number"?V:V.i,D=typeof V==="number"?0:V.r??0,L=I.indexOf(","),z=I.indexOf(",",L+1),M=Number(I.slice(0,L)),N=Number(I.slice(L+1,z)),q=Number(I.slice(z+1));J({x:M,y:N,z:q},H,D)}let C=Q.includeRotations??Y;if(!C&&Y)l.fatalError("WorldMapChunkCacheCodec: Map contains rotated blocks but includeRotations is false.");let X=C&&Y,G={blockTypes:FSQ(A.blockTypes),entities:A.entities,options:{rotations:X},source:Q.sourceSha256?{sha256:Q.sourceSha256}:void 0,metadata:eY.isCompressedWorldMap(A)?A.metadata:void 0,mapVersion:eY.isCompressedWorldMap(A)?A.mapVersion:void 0},W=Buffer.from(JSON.stringify(G),"utf8"),F=B.size,Z=Array.from(B.values());Z.sort((I,V)=>I.originCoordinate.y-V.originCoordinate.y||I.originCoordinate.x-V.originCoordinate.x||I.originCoordinate.z-V.originCoordinate.z);let U=0;for(let I of Z)if(U+=Bt(I.originCoordinate.x),U+=Bt(I.originCoordinate.y),U+=Bt(I.originCoordinate.z),U+=c9,X){let V=Array.from(I.rotationsByBlockIndex.entries());U+=LM(V.length);for(let[H]of V)U+=LM(H),U+=1}let $=LM(W.byteLength)+W.byteLength+LM(F)+U,E=Buffer.allocUnsafe($),K=0;K=qM(E,K,W.byteLength),W.copy(E,K),K+=W.byteLength,K=qM(E,K,F);for(let I of Z)if(K=Yt(E,K,I.originCoordinate.x),K=Yt(E,K,I.originCoordinate.y),K=Yt(E,K,I.originCoordinate.z),E.set(I.blocks,K),K+=c9,X){let V=Array.from(I.rotationsByBlockIndex.entries());V.sort((H,D)=>H[0]-D[0]),K=qM(E,K,V.length);for(let[H,D]of V)K=qM(E,K,H),E.writeUInt8(D,K++)}return{encoded:E,hasRotations:X}}}import IF from"fs";import qm0 from"path";import Mm0 from"crypto";function zm0(A){let Q=Mm0.createHash("sha256");return Q.update(A),Q.digest("hex")}function Wt(A){return A!==null&&typeof A==="object"}function Xt(A){return Wt(A)&&Object.keys(A).length>0}function Gt(A){if(!A)return!1;if(Array.isArray(A))return A.length>0;if(Wt(A))return Object.keys(A).length>0;return!1}function Rm0(A){if(!IF.existsSync(A))return;try{return JSON.parse(IF.readFileSync(A,"utf-8"))}catch{return}}function USQ(A){if(eY.isCompressedWorldMap(A))return{blockTypes:A.blockTypes,entities:A.entities};if(!Wt(A))return{};return{blockTypes:A.blockTypes,entities:A.entities}}class vV{static load(A,Q={}){let B=Q.preferChunkCache??!0,Y=qm0.resolve(process.cwd(),A),J=Y.endsWith(".chunks.bin"),C=Q.warnings??"auto",X=C==="always"||C==="auto"&&process.env.NODE_ENV!=="production",G=(Z)=>{if(X)l.warning(Z)};if(B){if(J&&!IF.existsSync(Y))l.fatalError(`WorldMapFileLoader.load(): Chunk cache file not found at ${Y}.`);let Z=Y;if(Y.endsWith(".compressed.json"))Z=Y.slice(0,-16);else if(Y.endsWith(".chunks.bin"))Z=Y.slice(0,-11);else if(Y.endsWith(".json"))Z=Y.slice(0,-5);let U=Z+".chunks.bin";if(IF.existsSync(U)){let $=IF.readFileSync(U);if($.byteLength>=_V&&$.subarray(0,8).equals(kV)&&$.readUInt8(8)===NM){let K={data:$.toString("base64")};try{let I=o8.decodeMetadata(K),V=I.source?.sha256,H=!Xt(I.entities),D=!Gt(I.blockTypes),L=H||D,z,M,N,q,w=()=>{let j=H&&z,k=D&&N;if(!j&&!k)return K;if(j&&M)G(`WorldMapFileLoader.load(): Chunk cache at ${U} missing entities; using entities overlay from ${M}.`);if(k&&q)G(`WorldMapFileLoader.load(): Chunk cache at ${U} missing blockTypes; using blockTypes overlay from ${q}.`);return{...K,...j?{entities:z}:{},...k?{blockTypes:N}:{}}},P=(j)=>{if(!L)return;let k=Rm0(j);if(!k)return;let T=USQ(k);if(!z&&Xt(T.entities))z=T.entities,M=j;if(!N&&Gt(T.blockTypes))N=T.blockTypes,q=j},_=(j,k)=>{if(!L)return;try{let T=JSON.parse(j),S=USQ(T);if(!z&&Xt(S.entities))z=S.entities,M=k;if(!N&&Gt(S.blockTypes))N=S.blockTypes,q=k}catch{}};if(V){let j=Y.endsWith(".compressed.json")?Y:Z+".compressed.json";if(IF.existsSync(j)){let k=IF.readFileSync(j,"utf-8");if(zm0(k)===V)return _(k,j),w();G(`WorldMapFileLoader.load(): Chunk cache sha256 mismatch for ${U}; ignoring cache and falling back to JSON.`)}else return G(`WorldMapFileLoader.load(): Chunk cache has source sha256, but ${j} is missing; using cache without validation.`),P(Z+".compressed.json"),P(Z+".json"),w()}else return P(Z+".compressed.json"),P(Z+".json"),w()}catch{if(J)l.fatalError(`WorldMapFileLoader.load(): Failed to decode chunk cache metadata for ${U}.`);G(`WorldMapFileLoader.load(): Failed to decode chunk cache metadata for ${U}; ignoring cache and falling back to JSON.`)}}else if(J)l.fatalError(`WorldMapFileLoader.load(): Invalid chunk cache at ${U}.`)}}if(J)l.fatalError(`WorldMapFileLoader.load(): Failed to load chunk cache at ${Y}.`);let W=IF.readFileSync(Y,"utf-8"),F=JSON.parse(W);if(o8.isWorldMapChunkCache(F))return F;if(eY.isCompressedWorldMap(F))return F;if(F&&typeof F==="object")return F;l.fatalError(`WorldMapFileLoader.load(): Unsupported map file format at ${Y}.`)}}var At;(($)=>{$.SET_AMBIENT_LIGHT_COLOR="WORLD.SET_AMBIENT_LIGHT_COLOR";$.SET_AMBIENT_LIGHT_INTENSITY="WORLD.SET_AMBIENT_LIGHT_INTENSITY";$.SET_DIRECTIONAL_LIGHT_COLOR="WORLD.SET_DIRECTIONAL_LIGHT_COLOR";$.SET_DIRECTIONAL_LIGHT_INTENSITY="WORLD.SET_DIRECTIONAL_LIGHT_INTENSITY";$.SET_DIRECTIONAL_LIGHT_POSITION="WORLD.SET_DIRECTIONAL_LIGHT_POSITION";$.SET_FOG_COLOR="WORLD.SET_FOG_COLOR";$.SET_FOG_FAR="WORLD.SET_FOG_FAR";$.SET_FOG_NEAR="WORLD.SET_FOG_NEAR";$.SET_SKYBOX_INTENSITY="WORLD.SET_SKYBOX_INTENSITY";$.SET_SKYBOX_URI="WORLD.SET_SKYBOX_URI";$.START="WORLD.START";$.STOP="WORLD.STOP"})(At||={});class zM extends BQ{_id;_ambientLightColor;_ambientLightIntensity;_audioManager;_blockTypeRegistry;_chatManager;_chunkLattice;_directionalLightColor;_directionalLightIntensity;_directionalLightPosition;_entityManager;_fogColor;_fogFar;_fogNear;_loop;_name;_networkSynchronizer;_particleEmitterManager;_sceneUIManager;_simulation;_skyboxIntensity;_skyboxUri;_tag;constructor(A){super();if(this._id=A.id,this._ambientLightColor=A.ambientLightColor??{r:255,g:255,b:255},this._ambientLightIntensity=A.ambientLightIntensity??1,this._directionalLightColor=A.directionalLightColor??{r:255,g:255,b:255},this._directionalLightIntensity=A.directionalLightIntensity??3,this._directionalLightPosition=A.directionalLightPosition??{x:100,y:150,z:100},this._fogColor=A.fogColor,this._fogFar=A.fogFar??550,this._fogNear=A.fogNear??500,this._name=A.name,this._skyboxIntensity=A.skyboxIntensity??1,this._skyboxUri=A.skyboxUri,this._tag=A.tag,this._audioManager=new UD(this),this._blockTypeRegistry=new ED(this),this._chatManager=new eD(this),this._chunkLattice=new QN(this),this._entityManager=new JN(this),this._loop=new EM(this,A.tickRate),this._networkSynchronizer=new fk(this),this._particleEmitterManager=new KM(this),this._sceneUIManager=new VM(this),this._simulation=new UM(this,A.tickRate,A.gravity),A.map)this.loadMap(A.map)}get id(){return this._id}get ambientLightColor(){return this._ambientLightColor}get ambientLightIntensity(){return this._ambientLightIntensity}get blockTypeRegistry(){return this._blockTypeRegistry}get chatManager(){return this._chatManager}get chunkLattice(){return this._chunkLattice}get directionalLightColor(){return this._directionalLightColor}get directionalLightIntensity(){return this._directionalLightIntensity}get directionalLightPosition(){return this._directionalLightPosition}get entityManager(){return this._entityManager}get fogColor(){return this._fogColor}get fogFar(){return this._fogFar}get fogNear(){return this._fogNear}get loop(){return this._loop}get name(){return this._name}get networkSynchronizer(){return this._networkSynchronizer}get particleEmitterManager(){return this._particleEmitterManager}get sceneUIManager(){return this._sceneUIManager}get simulation(){return this._simulation}get skyboxIntensity(){return this._skyboxIntensity}get skyboxUri(){return this._skyboxUri}get audioManager(){return this._audioManager}get tag(){return this._tag}loadMap(A,Q={}){if(typeof A==="string")A=vV.load(A);if((Q.preferMapArtifacts??!0)&&!eY.isCompressedWorldMap(A)&&!o8.isWorldMapChunkCache(A)&&typeof A==="object"&&A!==null&&"blocks"in A){let C=wm0.resolve(process.cwd(),"assets/map"),X=C+".chunks.bin",G=C+".compressed.json",W=C+".json";if(Ft.existsSync(W)&&(Ft.existsSync(X)||Ft.existsSync(G)))A=vV.load("assets/map.json")}if(eY.isCompressedWorldMap(A))A=eY.decompressToWorldMap(A);else if(o8.isWorldMapChunkCache(A))A=o8.decompressToWorldMap(A);this.chunkLattice.clear();let Y=Object.values(w8).sort((C,X)=>C.enumIndex-X.enumIndex);if(A.blockTypes)for(let C of A.blockTypes)this.blockTypeRegistry.registerGenericBlockType({id:C.id,isLiquid:C.isLiquid,lightLevel:C.lightLevel,name:C.name,textureUri:C.textureUri,customColliderOptions:C.customColliderOptions});if(A.blocks){let C=A.blocks,X=function*(){for(let G in C){let W=C[G],F=typeof W==="number"?W:W.i,Z=typeof W==="number"?void 0:W.r,U=G.indexOf(","),$=G.indexOf(",",U+1);yield{globalCoordinate:{x:Number(G.slice(0,U)),y:Number(G.slice(U+1,$)),z:Number(G.slice($+1))},blockTypeId:F,blockRotation:Z!==void 0?Y[Z]:void 0}}};this.chunkLattice.initializeBlockEntries(X())}if((Q.spawnEntities??!0)&&A.entities)for(let C in A.entities){let X=A.entities[C],G=C.indexOf(","),W=C.indexOf(",",G+1),F=Number(C.slice(0,G)),Z=Number(C.slice(G+1,W)),U=Number(C.slice(W+1));new X0({isEnvironmental:!0,...X}).spawn(this,{x:F,y:Z,z:U})}}setAmbientLightColor(A){this._ambientLightColor=A,this.emit("WORLD.SET_AMBIENT_LIGHT_COLOR",{world:this,color:A})}setAmbientLightIntensity(A){this._ambientLightIntensity=A,this.emit("WORLD.SET_AMBIENT_LIGHT_INTENSITY",{world:this,intensity:A})}setDirectionalLightColor(A){this._directionalLightColor=A,this.emit("WORLD.SET_DIRECTIONAL_LIGHT_COLOR",{world:this,color:A})}setDirectionalLightIntensity(A){this._directionalLightIntensity=A,this.emit("WORLD.SET_DIRECTIONAL_LIGHT_INTENSITY",{world:this,intensity:A})}setDirectionalLightPosition(A){this._directionalLightPosition=A,this.emit("WORLD.SET_DIRECTIONAL_LIGHT_POSITION",{world:this,position:A})}setFogColor(A){this._fogColor=A,this.emit("WORLD.SET_FOG_COLOR",{world:this,color:A})}setFogFar(A){this._fogFar=A,this.emit("WORLD.SET_FOG_FAR",{world:this,far:A})}setFogNear(A){this._fogNear=A,this.emit("WORLD.SET_FOG_NEAR",{world:this,near:A})}setSkyboxIntensity(A){this._skyboxIntensity=A,this.emit("WORLD.SET_SKYBOX_INTENSITY",{world:this,intensity:A})}setSkyboxUri(A){this._skyboxUri=A,this.emit("WORLD.SET_SKYBOX_URI",{world:this,uri:A})}start(){if(this._loop.isStarted)return;this._loop.start(),this.emit("WORLD.START",{world:this,startedAtMs:Date.now()})}stop(){if(!this._loop.isStarted)return;this._loop.stop(),this.emit("WORLD.STOP",{world:this,stoppedAtMs:Date.now()})}serialize(){return GQ.serializeWorld(this)}}var ESQ;((Q)=>Q.WORLD_CREATED="WORLD_MANAGER.WORLD_CREATED")(ESQ||={});class F0{static instance=new F0;_defaultWorld;_nextWorldId=1;_worlds=new Map;createWorld(A){let Q=new zM({...A,id:this._nextWorldId++});return Q.start(),this._worlds.set(Q.id,Q),BQ.globalInstance.emit("WORLD_MANAGER.WORLD_CREATED",{world:Q}),Q}getAllWorlds(){return Array.from(this._worlds.values())}getDefaultWorld(){return this._defaultWorld??=this.createWorld({name:"Default World",skyboxUri:"skyboxes/partly-cloudy"}),this._defaultWorld}getWorldsByTag(A){let Q=[];return this._worlds.forEach((B)=>{if(B.tag===A)Q.push(B)}),Q}getWorld(A){return this._worlds.get(A)}setDefaultWorld(A){this._defaultWorld=A}}function Zt(A,Q,B){return Math.max(Q,Math.min(B,Math.floor(A)))}function jm0(A,Q){if(A.blockTypeRegistry.getAllBlockTypes().some((Y)=>Y.id===Q))return;A.blockTypeRegistry.registerGenericBlockType({id:Q,name:`perf-block-${Q}`,textureUri:"blocks/stone.png"})}function Om0(A){if(typeof A==="number"){let Q=F0.instance.getWorld(Math.floor(A));if(Q)return Q}return F0.instance.getDefaultWorld()}function Pm0(A){return Math.max(1,Math.ceil(Math.sqrt(A)))}function Tm0(A,Q,B){if(B<=0)return;if(B>=c9){A.fill(Q);return}A.fill(0),A.fill(Q,0,B)}function Sm0(A,Q,B,Y){A.fill(0);let J=d9*B*d9,C=Math.max(0,Math.min(J,Y));if(C===0)return;let X=C;for(let G=0;G0;G++){let W=G<0;F++){let Z=W+(F<{if(Y+=C.length,Y>km0){mB(Q,413,{ok:!1,error:"Request body too large"}),A.destroy();return}J.push(C)}),A.on("error",()=>{mB(Q,400,{ok:!1,error:"Failed to read request body"})}),A.on("end",()=>{try{let C=Buffer.concat(J).toString("utf-8"),X=C.length>0?JSON.parse(C):{};B(X)}catch{mB(Q,400,{ok:!1,error:"Invalid JSON body"})}})}function DSQ(A){let Q=KSQ.resolve("assets"),B=A.trim().replace(/^\/+/,"").replace(/^assets[\\/]/,""),Y=KSQ.resolve(Q,B);if(!Y.startsWith(Q))return null;return Y}function ym0(A){switch((A??"").toLowerCase()){case"":case"idle":return new GE;case"random_walk":case"randomwalk":return new WD;case"chase":return new FD;case"interact":return new ZD;default:return null}}function gm0(A,Q){let B=F0.instance.getDefaultWorld(),Y=Math.max(0,Math.floor(A)),J={x:0,y:10,z:0},C=Math.ceil(Math.sqrt(Y))*2;for(let X=0;X=0&&Y0){let X=DSQ(Q);if(!X)throw Error("Invalid mapPath");if(!lk.existsSync(X))throw Error(`Map not found: ${Q}`);J=lk.readFileSync(X,"utf-8")}let C=[];for(let X=0;X0)F0.instance.setDefaultWorld(C[0]);return{created:C.length,defaultWorldId:F0.instance.getDefaultWorld().id}}function im0(A){let Q=Math.floor(A),B=F0.instance.getWorld(Q);if(!B)throw Error(`World not found: ${Q}`);return F0.instance.setDefaultWorld(B),{ok:!0,defaultWorldId:B.id}}function nm0(){let A=F0.instance.getDefaultWorld();LSQ(),G9.instance.despawnAll();for(let Q of A.entityManager.getEntitiesByTagSubstring(yV))Q.despawn();return A.chunkLattice.clear(),{ok:!0}}class RM{static enableIfConfigured(){if(!VSQ())return;try{if(!O0.instance.isEnabled)O0.instance.enable({snapshotIntervalMs:0});if(!$Y.instance.isEnabled)$Y.instance.enable()}catch(A){l.warning(`PerfHarness.enableIfConfigured(): Failed to enable perf tools. Error: ${String(A)}`)}}static handleWebRequest(A,Q){if(!VSQ())return!1;let B=A.url?.split("?")[0]??"/";if(!B.startsWith(`${dk}/`))return!1;if(!_m0(A))return mB(Q,401,{ok:!1,error:"Unauthorized"}),!0;let Y=A.method??"GET";if(Y==="GET"&&B===`${dk}/snapshot`){let J=O0.instance.getSnapshot(),C=$Y.instance.isEnabled?$Y.instance.getSnapshot():void 0,X=F0.instance.getDefaultWorld();return mB(Q,200,{...J,timestamp:Date.now(),players:dJ.instance.playerCount,bots:G9.instance.botCount,worlds:{count:F0.instance.getAllWorlds().length,defaultWorldId:X.id},world:{id:X.id,chunkCount:X.chunkLattice.chunkCount,entityCount:X.entityManager.entityCount},blockChurn:{running:Kt.isRunning},network:C}),!0}if(Y==="POST"&&B===`${dk}/reset`)return O0.instance.resetStats(),$Y.instance.reset(),mB(Q,200,{ok:!0}),!0;if(Y==="POST"&&B===`${dk}/action`)return vm0(A,Q,(J)=>{try{let C=J;switch(C.type){case"spawn_bots":{if(typeof C.count!=="number")return mB(Q,400,{ok:!1,error:'"count" is required'});let X=gm0(C.count,typeof C.behavior==="string"?C.behavior:void 0);mB(Q,200,{ok:!0,result:X});return}case"despawn_bots":{let X=xm0(typeof C.count==="number"?C.count:void 0);mB(Q,200,{ok:!0,result:X});return}case"load_map":{if(typeof C.mapPath!=="string")return mB(Q,400,{ok:!1,error:'"mapPath" is required'});let X=fm0(C.mapPath,typeof C.worldId==="number"?C.worldId:void 0);mB(Q,200,{ok:!0,result:X});return}case"generate_blocks":{if(typeof C.blockCount!=="number")return mB(Q,400,{ok:!1,error:'"blockCount" is required'});if(typeof C.blockTypeId!=="number")return mB(Q,400,{ok:!1,error:'"blockTypeId" is required'});let X=bm0(C.blockCount,C.blockTypeId,typeof C.worldId==="number"?C.worldId:void 0,C.layout==="dense"||C.layout==="slab"?C.layout:void 0,typeof C.slabHeight==="number"?C.slabHeight:void 0,Vt(C.origin),typeof C.clear==="boolean"?C.clear:void 0);mB(Q,200,{ok:!0,result:X});return}case"spawn_entities":{if(typeof C.count!=="number")return mB(Q,400,{ok:!1,error:'"count" is required'});let X=mm0(C.count,C.kind==="model"||C.kind==="block"?C.kind:void 0,typeof C.options==="object"&&C.options?C.options:void 0,typeof C.tag==="string"?C.tag:void 0);mB(Q,200,{ok:!0,result:X});return}case"despawn_entities":{let X=um0(typeof C.tag==="string"?C.tag:void 0);mB(Q,200,{ok:!0,result:X});return}case"start_block_churn":{if(typeof C.blocksPerTick!=="number")return mB(Q,400,{ok:!1,error:'"blocksPerTick" is required'});if(typeof C.blockTypeId!=="number")return mB(Q,400,{ok:!1,error:'"blockTypeId" is required'});let X=lm0(C.blocksPerTick,C.blockTypeId,C.mode,C.min,C.max);mB(Q,200,{ok:!0,result:X});return}case"stop_block_churn":{let X=LSQ();mB(Q,200,{ok:!0,result:X});return}case"create_worlds":{if(typeof C.count!=="number")return mB(Q,400,{ok:!1,error:'"count" is required'});let X=pm0(C.count,typeof C.mapPath==="string"?C.mapPath:void 0,typeof C.setDefault==="boolean"?C.setDefault:void 0);mB(Q,200,{ok:!0,result:X});return}case"set_default_world":{if(typeof C.worldId!=="number")return mB(Q,400,{ok:!1,error:'"worldId" is required'});let X=im0(C.worldId);mB(Q,200,{ok:!0,result:X});return}case"clear_world":{let X=nm0();mB(Q,200,{ok:!0,result:X});return}case"reset":{O0.instance.resetStats(),$Y.instance.reset(),mB(Q,200,{ok:!0});return}default:mB(Q,400,{ok:!1,error:`Unsupported action: ${String(C.type)}`})}}catch(C){mB(Q,500,{ok:!1,error:C.message})}}),!0;return mB(Q,404,{ok:!1,error:"Not found"}),!0}}var pk=`-----BEGIN CERTIFICATE----- +`);let{connect:W,buffered:F}=await G;if(A.emit("proxyConnect",W),this.emit("proxyConnect",W,A),W.statusCode===200){if(A.once("socket",aR0),Q.secureEndpoint){Xq("Upgrading socket connection to TLS");let U=Q.servername||Q.host;return rs.connect({...OqQ(Q,"host","path","port"),socket:Y,servername:SG.isIP(U)?void 0:U})}return Y}Y.destroy();let Z=new SG.Socket({writable:!1});return Z.readable=!0,A.once("socket",(U)=>{Xq("Replaying proxy buffer for failed request"),U.push(F),U.push(null)}),Z}}nT.__initStatic();function aR0(A){A.resume()}function OqQ(A,...Q){let B={},Y;for(Y in A)if(!Q.includes(Y))B[Y]=A[Y];return B}var Qw0=32768;function Bw0(A){return new eR0({read(){this.push(A),this.push(null)}})}function sT(A){let Q;try{Q=new URL(A.url)}catch(W){return f0(()=>{console.warn("[@sentry/node]: Invalid dsn or tunnel option, will not send any events. The tunnel option must be a full URL when used.")}),nE(A,()=>Promise.resolve({}))}let B=Q.protocol==="https:",Y=Yw0(Q,A.proxy||(B?process.env.https_proxy:void 0)||process.env.http_proxy),J=B?tR0:oR0,C=A.keepAlive===void 0?!1:A.keepAlive,X=Y?new nT(Y):new J.Agent({keepAlive:C,maxSockets:30,timeout:2000}),G=Jw0(A,A.httpModule??J,X);return nE(A,G)}function Yw0(A,Q){let{no_proxy:B}=process.env;if(B?.split(",").some((J)=>A.host.endsWith(J)||A.hostname.endsWith(J)))return;else return Q}function Jw0(A,Q,B){let{hostname:Y,pathname:J,port:C,protocol:X,search:G}=new URL(A.url);return function(F){return new Promise((Z,U)=>{ON(()=>{let $=Bw0(F.body),E={...A.headers};if(F.body.length>Qw0)E["content-encoding"]="gzip",$=$.pipe(Aw0());let K=Q.request({method:"POST",agent:B,headers:E,hostname:Y,path:`${J}${G}`,port:C,protocol:X,ca:A.caCerts},(I)=>{I.on("data",()=>{}),I.on("end",()=>{}),I.setEncoding("utf8");let V=I.headers["retry-after"]??null,H=I.headers["x-sentry-rate-limits"]??null;Z({statusCode:I.statusCode,headers:{"retry-after":V,"x-sentry-rate-limits":Array.isArray(H)?H[0]||null:H}})});K.on("error",U),$.pipe(K)})})}}var Cw0=new Set(["false","f","n","no","off","0"]),Xw0=new Set(["true","t","y","yes","on","1"]);function rT(A,Q){let B=String(A).toLowerCase();if(Cw0.has(B))return!1;if(Xw0.has(B))return!0;return Q?.strict?null:Boolean(A)}import{posix as Gw0,sep as Ww0}from"node:path";function PqQ(A){return A.replace(/^[A-Z]:/,"").replace(/\\/g,"/")}function aT(A=process.argv[1]?od(process.argv[1]):process.cwd(),Q=Ww0==="\\"){let B=Q?PqQ(A):A;return(Y)=>{if(!Y)return;let J=Q?PqQ(Y):Y,{dir:C,base:X,ext:G}=Gw0.parse(J);if(G===".js"||G===".mjs"||G===".cjs")X=X.slice(0,G.length*-1);let W=decodeURIComponent(X);if(!C)C=".";let F=C.lastIndexOf("/node_modules");if(F>-1)return`${C.slice(F+14).replace(/\//g,".")}:${W}`;if(C.startsWith(B)){let Z=C.slice(B.length+1).replace(/\//g,".");return Z?`${Z}:${W}`:W}return W}}function oT(A){if(process.env.SENTRY_RELEASE)return process.env.SENTRY_RELEASE;if(AQ.SENTRY_RELEASE?.id)return AQ.SENTRY_RELEASE.id;let Q=process.env.GITHUB_SHA||process.env.CI_MERGE_REQUEST_SOURCE_BRANCH_SHA||process.env.CI_BUILD_REF||process.env.CI_COMMIT_SHA||process.env.BITBUCKET_COMMIT,B=process.env.APPVEYOR_PULL_REQUEST_HEAD_COMMIT||process.env.APPVEYOR_REPO_COMMIT||process.env.CODEBUILD_RESOLVED_SOURCE_VERSION||process.env.AWS_COMMIT_ID||process.env.BUILD_SOURCEVERSION||process.env.GIT_CLONE_COMMIT_HASH||process.env.BUDDY_EXECUTION_REVISION||process.env.BUILDKITE_COMMIT||process.env.CIRCLE_SHA1||process.env.CIRRUS_CHANGE_IN_REPO||process.env.CF_REVISION||process.env.CM_COMMIT||process.env.CF_PAGES_COMMIT_SHA||process.env.DRONE_COMMIT_SHA||process.env.FC_GIT_COMMIT_SHA||process.env.HEROKU_TEST_RUN_COMMIT_VERSION||process.env.HEROKU_SLUG_COMMIT||process.env.RAILWAY_GIT_COMMIT_SHA||process.env.RENDER_GIT_COMMIT||process.env.SEMAPHORE_GIT_SHA||process.env.TRAVIS_PULL_REQUEST_SHA||process.env.VERCEL_GIT_COMMIT_SHA||process.env.VERCEL_GITHUB_COMMIT_SHA||process.env.VERCEL_GITLAB_COMMIT_SHA||process.env.VERCEL_BITBUCKET_COMMIT_SHA||process.env.ZEIT_GITHUB_COMMIT_SHA||process.env.ZEIT_GITLAB_COMMIT_SHA||process.env.ZEIT_BITBUCKET_COMMIT_SHA,Y=process.env.CI_COMMIT_ID||process.env.SOURCE_COMMIT||process.env.SOURCE_VERSION||process.env.GIT_COMMIT||process.env.COMMIT_REF||process.env.BUILD_VCS_NUMBER||process.env.CI_COMMIT_SHA;return Q||B||Y||A}var tT=jj(Fc(aT()));var SqQ=qA(yA(),1),kqQ=qA(NB(),1);import*as TqQ from"node:os";import{threadId as Fw0,isMainThread as Zw0}from"worker_threads";var $w0=60000;class Gq extends uj{constructor(A){let Q=A.serverName||global.process.env.SENTRY_NAME||TqQ.hostname(),B={...A,platform:"node",runtime:{name:"node",version:global.process.version},serverName:Q};if(A.openTelemetryInstrumentations)kqQ.registerInstrumentations({instrumentations:A.openTelemetryInstrumentations});dd(B,"node"),e.log(`Initializing Sentry: process: ${process.pid}, thread: ${Zw0?"main":`worker-${Fw0}`}.`);super(B);if(this.getOptions()._experiments?.enableLogs){if(this._logOnExitFlushListener=()=>{WW(this)},Q)this.on("beforeCaptureLog",(Y)=>{Y.attributes={...Y.attributes,"server.address":Q}});process.on("beforeExit",this._logOnExitFlushListener)}}get tracer(){if(this._tracer)return this._tracer;let A="@sentry/node",Q=l0,B=SqQ.trace.getTracer(A,Q);return this._tracer=B,B}async flush(A){let B=this.traceProvider?.activeSpanProcessor;if(B)await B.forceFlush();if(this.getOptions().sendClientReports)this._flushOutcomes();return super.flush(A)}close(A){if(this._clientReportInterval)clearInterval(this._clientReportInterval);if(this._clientReportOnExitFlushListener)process.off("beforeExit",this._clientReportOnExitFlushListener);if(this._logOnExitFlushListener)process.off("beforeExit",this._logOnExitFlushListener);return super.close(A)}startClientReportTracking(){let A=this.getOptions();if(A.sendClientReports)this._clientReportOnExitFlushListener=()=>{this._flushOutcomes()},this._clientReportInterval=setInterval(()=>{fQ&&e.log("Flushing client reports based on interval."),this._flushOutcomes()},A.clientReportFlushInterval??$w0).unref(),process.on("beforeExit",this._clientReportOnExitFlushListener)}_getTraceInfoFromScope(A){if(!A)return[void 0,void 0];return o$Q(this,A)}}var V1=qA(yA(),1),_qQ=qA(Ti(),1),vqQ=qA(_i(),1),dK=qA(dB(),1);var yqQ=qA(up(),1);import Uw0 from"module";var as=1e6;function eT(A,Q={}){if(A.getOptions().debug)hqQ();let B=Kw0(A,Q);A.traceProvider=B}function os(){let[A=0,Q=0]=process.versions.node.split(".").map(Number);if(A>=21||A===20&&Q>=6||A===18&&Q>=19){if(!AQ._sentryEsmLoaderHookRegistered)try{let{addHookMessagePort:B}=yqQ.createAddHookMessageChannel();Uw0.register("import-in-the-middle/hook.mjs",import.meta.url,{data:{addHookMessagePort:B,include:[]},transferList:[B]})}catch(B){e.warn("Failed to register ESM hook",B)}}else f0(()=>{console.warn(`[Sentry] You are using Node.js v${process.versions.node} in ESM mode ("import syntax"). The Sentry Node.js SDK is not compatible with ESM in Node.js versions before 18.19.0 or before 20.6.0. Please either build your application with CommonJS ("require() syntax"), or upgrade your Node.js version.`)})}function gqQ(A={}){let{debug:Q}=A;if(Q)e.enable(),hqQ();if(!a5())os();Ew0(A.integrations).forEach((B)=>{if(B(),Q)e.log(`[Sentry] Preloaded ${B.id} instrumentation`)})}function Ew0(A){let Q=wqQ();if(!A)return Q;return Q.filter((B)=>A.includes(B.id))}function Kw0(A,Q={}){let B=new vqQ.BasicTracerProvider({sampler:new ti(A),resource:new _qQ.Resource({[dK.ATTR_SERVICE_NAME]:"node",[dK.SEMRESATTRS_SERVICE_NAMESPACE]:"sentry",[dK.ATTR_SERVICE_VERSION]:l0}),forceFlushTimeoutMillis:500,spanProcessors:[new oi({timeout:Vw0(A.getOptions().maxSpanWaitDuration)}),...Q.spanProcessors||[]]});return V1.trace.setGlobalTracerProvider(B),V1.propagation.setGlobalPropagator(new ii),V1.context.setGlobalContextManager(new lT),B}function Vw0(A){if(A==null)return;if(A>as)return fQ&&e.warn(`\`maxSpanWaitDuration\` is too high, using the maximum value of ${as}`),as;else if(A<=0||Number.isNaN(A)){fQ&&e.warn("`maxSpanWaitDuration` must be a positive number, using default value instead.");return}return A}function hqQ(){let A=new Proxy(e,{get(Q,B,Y){return Reflect.get(Q,B==="verbose"?"debug":B,Y)}});V1.diag.disable(),V1.diag.setLogger(A,V1.DiagLogLevel.DEBUG)}function Iw0(){return a5()?[hP()]:[]}function ts(){return[gN(),yN(),hN(),xN(),fN(),RP(),PP(),xP(),fP(),_P(),gP(),kP(),dT(),RqQ(),...Iw0()]}function es(A){return[...ts(),...U9(A)?pT():[]]}function AS(A={}){return fqQ(A,es)}function xqQ(A={}){return fqQ(A,()=>[])}function fqQ(A={},Q){let B=Hw0(A,Q);if(B.debug===!0)if(fQ)e.enable();else f0(()=>{console.warn("[Sentry] Cannot initialize SDK with `debug` option using a non-debug bundle.")});if(!a5()&&B.registerEsmLoaderHooks!==!1)os();if(LP(),sQ().update(B.initialScope),B.spotlight&&!B.integrations.some(({name:C})=>C===ys))B.integrations.push(ST({sidecarUrl:typeof B.spotlight==="string"?B.spotlight:void 0}));let J=new Gq(B);if(sQ().setClient(J),J.init(),e.log(`Running in ${a5()?"CommonJS":"ESM"} mode.`),J.startClientReportTracking(),Lw0(),!B.skipOpenTelemetrySetup)eT(J,{spanProcessors:B.openTelemetrySpanProcessors}),Ar();return d$Q(J),t$Q(J),J}function Ar(){if(!fQ)return;let A=i$Q(),Q=["SentryContextManager","SentryPropagator"];if(U9())Q.push("SentrySpanProcessor");for(let B of Q)if(!A.includes(B))e.error(`You have to set up the ${B}. Without this, the OpenTelemetry & Sentry integration will not work properly.`);if(!A.includes("SentrySampler"))e.warn("You have to set up the SentrySampler. Without this, the OpenTelemetry & Sentry integration may still work, but sample rates set for the Sentry SDK will not be respected. If you use a custom sampler, make sure to use `wrapSamplingDecision`.")}function Hw0(A,Q){let B=Dw0(A.release),Y=A.spotlight??rT(process.env.SENTRY_SPOTLIGHT,{strict:!0})??process.env.SENTRY_SPOTLIGHT,J=Nw0(A.tracesSampleRate),C={...A,dsn:A.dsn??process.env.SENTRY_DSN,environment:A.environment??process.env.SENTRY_ENVIRONMENT,sendClientReports:A.sendClientReports??!0,transport:A.transport??sT,stackParser:tu(A.stackParser||tT),release:B,tracesSampleRate:J,spotlight:Y,debug:rT(A.debug??process.env.SENTRY_DEBUG)},X=A.integrations,G=A.defaultIntegrations??Q(C);return{...C,integrations:kd({defaultIntegrations:G,integrations:X})}}function Dw0(A){if(A!==void 0)return A;let Q=oT();if(Q!==void 0)return Q;return}function Nw0(A){if(A!==void 0)return A;let Q=process.env.SENTRY_TRACES_SAMPLE_RATE;if(!Q)return;let B=parseFloat(Q);return isFinite(B)?B:void 0}function Lw0(){if(rT(process.env.SENTRY_USE_ENVIRONMENT)!==!1){let A=process.env.SENTRY_TRACE,Q=process.env.SENTRY_BAGGAGE,B=xZ(A,Q);sQ().setPropagationContext(B)}}var qw0=[["january","1"],["february","2"],["march","3"],["april","4"],["may","5"],["june","6"],["july","7"],["august","8"],["september","9"],["october","10"],["november","11"],["december","12"],["jan","1"],["feb","2"],["mar","3"],["apr","4"],["may","5"],["jun","6"],["jul","7"],["aug","8"],["sep","9"],["oct","10"],["nov","11"],["dec","12"],["sunday","0"],["monday","1"],["tuesday","2"],["wednesday","3"],["thursday","4"],["friday","5"],["saturday","6"],["sun","0"],["mon","1"],["tue","2"],["wed","3"],["thu","4"],["fri","5"],["sat","6"]];function h$(A){return qw0.reduce((Q,[B,Y])=>Q.replace(new RegExp(B,"gi"),Y),A)}var bqQ="Automatic instrumentation of CronJob only supports crontab string";function mqQ(A,Q){let B=!1;return new Proxy(A,{construct(Y,J){let[C,X,G,W,F,...Z]=J;if(typeof C!=="string")throw Error(bqQ);if(B)throw Error(`A job named '${Q}' has already been scheduled`);B=!0;let U=h$(C);async function $(E,K){return GX(Q,async()=>{try{await X(E,K)}catch(I){throw jB(I),I}},{schedule:{type:"crontab",value:U},timezone:F||void 0})}return new Y(C,$,G,W,F,...Z)},get(Y,J){if(J==="from")return(C)=>{let{cronTime:X,onTick:G,timeZone:W}=C;if(typeof X!=="string")throw Error(bqQ);if(B)throw Error(`A job named '${Q}' has already been scheduled`);B=!0;let F=h$(X);return C.onTick=async(Z,U)=>{return GX(Q,async()=>{try{await G(Z,U)}catch($){throw jB($),$}},{schedule:{type:"crontab",value:F},timezone:W||void 0})},Y.from(C)};else return Y[J]}})}function uqQ(A){return new Proxy(A,{get(Q,B){if(B==="schedule"&&Q.schedule)return new Proxy(Q.schedule,{apply(Y,J,C){let[X,G,W]=C,F=W?.name,Z=W?.timezone;if(!F)throw Error('Missing "name" for scheduled job. A name is required for Sentry check-in monitoring.');let U=async()=>{return GX(F,async()=>{try{return await G()}catch($){throw jB($),$}},{schedule:{type:"crontab",value:h$(X)},timezone:Z})};return Y.apply(J,[X,U,W])}});else return Q[B]}})}function dqQ(A){return new Proxy(A,{get(Q,B){if(B==="scheduleJob")return new Proxy(Q.scheduleJob,{apply(Y,J,C){let[X,G,W]=C;if(typeof X!=="string"||typeof G!=="string"||typeof W!=="function")throw Error("Automatic instrumentation of 'node-schedule' requires the first parameter of 'scheduleJob' to be a job name string and the second parameter to be a crontab string");let F=X,Z=G;async function U(){return GX(F,async()=>{await W?.()},{schedule:{type:"crontab",value:h$(Z)}})}return Y.apply(J,[F,Z,U])}});return Q[B]}})}var cqQ={instrumentCron:mqQ,instrumentNodeCron:uqQ,instrumentNodeSchedule:dqQ};import qSQ from"fs";import sm0 from"http2";import It from"path";var EaY=r$(),kb0=$q(),KaY=JV(),VaY=YRQ(),_b0=t$(),IaY=Ka(),HaY=SRQ(),DaY=xRQ(),NaY=uRQ(),vb0=QB(),hk=lQ(),{InvalidArgumentError:gk}=vb0,SV=TwQ(),LaY=Eq(),qaY=ma(),{MockCallHistory:MaY,MockCallHistoryLog:zaY}=ca(),RaY=aa(),waY=ia(),jaY=yjQ(),OaY=ja(),PaY=uS(),{getGlobalDispatcher:yb0,setGlobalDispatcher:gb0}=Ak(),TaY=KV(),SaY=Co();Object.assign(kb0.prototype,SV);var no=_b0;var bb0={redirect:pjQ(),responseError:sjQ(),retry:ajQ(),dump:ejQ(),dns:YOQ(),cache:zOQ(),decompress:SOQ()},JSQ={MemoryCacheStore:Go()};var hb0=_OQ();JSQ.SqliteCacheStore=hb0;var mb0={parseHeaders:hk.parseHeaders,headerNameToString:hk.headerNameToString};function FM(A){return(Q,B,Y)=>{if(typeof B==="function")Y=B,B=null;if(!Q||typeof Q!=="string"&&typeof Q!=="object"&&!(Q instanceof URL))throw new gk("invalid url");if(B!=null&&typeof B!=="object")throw new gk("invalid opts");if(B&&B.path!=null){if(typeof B.path!=="string")throw new gk("invalid opts.path");let X=B.path;if(!B.path.startsWith("/"))X=`/${X}`;Q=new URL(hk.parseOrigin(Q).origin+X)}else{if(!B)B=typeof Q==="object"?Q:{};Q=hk.parseURL(Q)}let{agent:J,dispatcher:C=yb0()}=B;if(J)throw new gk("unsupported opts.agent. Did you mean opts.client?");return A.call(C,{...B,origin:Q.origin,path:Q.search?`${Q.pathname}${Q.search}`:Q.pathname,method:B.method||(B.body?"PUT":"GET")},Y)}}var so=gb0;var kaY=QM().fetch;var ub0=J4().Headers,db0=eq().Response,cb0=NV().Request,lb0=HS().FormData;var{setGlobalOrigin:_aY,getGlobalOrigin:vaY}=Sr();var{CacheStorage:xb0}=mPQ(),{kConstruct:fb0}=B0();var pb0=new xb0(fb0);var{deleteCookie:yaY,getCookies:gaY,getSetCookies:haY,setCookie:xaY,parseCookie:faY}=ePQ();var{parseMIMEType:baY,serializeAMimeType:maY}=l8();var{CloseEvent:uaY,ErrorEvent:daY,MessageEvent:caY}=Rk(),{WebSocket:laY,ping:paY}=yTQ();var ib0=dTQ().WebSocketStream,nb0=uo().WebSocketError,sb0=FM(SV.request),rb0=FM(SV.stream),ab0=FM(SV.pipeline),ob0=FM(SV.connect),tb0=FM(SV.upgrade);var{EventSource:iaY}=YSQ();import lk from"fs";import KSQ from"path";var eb0=2,Am0=3;class ZM{_accumulatorMs=0;_targetTicksPerSecond;_fixedTimestepMs;_fixedTimestepS;_maxAccumulatorMs;_nextTickMs=0;_lastLoopTimeMs=0;_tickFunction;_tickErrorCallback;_tickHandle=null;constructor(A,Q,B){this._targetTicksPerSecond=A,this._fixedTimestepS=Math.fround(1/A),this._fixedTimestepMs=Math.fround(this._fixedTimestepS*1000),this._maxAccumulatorMs=this._fixedTimestepMs*Am0,this._tickFunction=Q,this._tickErrorCallback=B}get targetTicksPerSecond(){return this._targetTicksPerSecond}get fixedTimestepMs(){return this._fixedTimestepMs}get fixedTimestepS(){return this._fixedTimestepS}get isStarted(){return!!this._tickHandle}get nextTickMs(){return this._nextTickMs}start(){if(this._tickHandle)return;this._lastLoopTimeMs=performance.now();let A=()=>{let Q=performance.now(),B=Q-this._lastLoopTimeMs;if(this._lastLoopTimeMs=Q,this._accumulatorMs+=B,this._accumulatorMs>this._maxAccumulatorMs)this._accumulatorMs=this._maxAccumulatorMs;if(this._accumulatorMs>=this._fixedTimestepMs)AY.startSpan({operation:"ticker_tick"},()=>{let Y=0;while(this._accumulatorMs>=this._fixedTimestepMs&&Y{J.STEP_START="SIMULATION.STEP_START";J.STEP_END="SIMULATION.STEP_END";J.DEBUG_RAYCAST="SIMULATION.DEBUG_RAYCAST";J.DEBUG_RENDER="SIMULATION.DEBUG_RENDER"})(ro||={});class UM extends BQ{_colliderMap=new BN;_debugRaycastingEnabled=!1;_debugRenderingEnabled=!1;_debugRenderingFilterFlags;_rapierEventQueue;_rapierSimulation;_world;constructor(A,Q=$M,B=Qm0){super();this._rapierEventQueue=new WB.EventQueue(!0),this._rapierSimulation=new WB.World(B),this._rapierSimulation.timestep=Math.fround(1/Q),this._world=A}get colliderMap(){return this._colliderMap}get isDebugRaycastingEnabled(){return this._debugRaycastingEnabled}get isDebugRenderingEnabled(){return this._debugRenderingEnabled}get gravity(){return this._rapierSimulation.gravity}get timestepS(){return this._rapierSimulation.timestep}get world(){return this._world}createRawCollider(A,Q){return this._rapierSimulation.createCollider(A,Q)}createRawRigidBody(A){return this._rapierSimulation.createRigidBody(A)}enableDebugRaycasting(A){this._debugRaycastingEnabled=A}enableDebugRendering(A,Q=WB.QueryFilterFlags.EXCLUDE_FIXED){this._debugRenderingEnabled=A,this._debugRenderingFilterFlags=Q}getContactManifolds(A,Q){let B=[];return this._rapierSimulation.narrowPhase.contactPair(A,Q,(Y,J)=>{if(Y.numContacts()===0)return;let C=Y.normal(),X=[];for(let G=0;G{let G=this._colliderMap.getColliderHandleBlockType(X.handle);if(G&&!J.has(G))return J.add(G),C.push({intersectedBlockType:G}),!0;let W=this._colliderMap.getColliderHandleEntity(X.handle);if(W&&!J.has(W))return J.add(W),C.push({intersectedEntity:W}),!0;return!0},Y.filterFlags,Y.filterGroups,Y.filterExcludeCollider,Y.filterExcludeRigidBody,Y.filterPredicate),C}raycast(A,Q,B,Y={}){let J=new WB.Ray(A,Q),C=this._rapierSimulation.castRay(J,B,Y.solidMode??!0,Y.filterFlags,Y.filterGroups,Y.filterExcludeCollider,Y.filterExcludeRigidBody,Y.filterPredicate);if(this._debugRaycastingEnabled)this.emitWithWorld(this._world,"SIMULATION.DEBUG_RAYCAST",{simulation:this,origin:A,direction:Q,length:B,hit:!!C});if(!C)return null;let X=J.pointAt(C.timeOfImpact),G=C.timeOfImpact,W=C.collider,F=this._colliderMap.getColliderHandleBlockType(W.handle);if(F)return{hitBlock:WE.fromGlobalCoordinate({x:Math.floor(X.x-(J.dir.x<0?0.0001:-0.0001)),y:Math.floor(X.y-(J.dir.y<0?0.0001:-0.0001)),z:Math.floor(X.z-(J.dir.z<0?0.0001:-0.0001))},F),hitPoint:X,hitDistance:G,origin:A,originDirection:Q};let Z=this._colliderMap.getColliderHandleEntity(W.handle);if(Z)return{hitEntity:Z,hitPoint:X,hitDistance:G,origin:A,originDirection:Q};return null}removeRawCollider(A){this._colliderMap.queueColliderHandleForCleanup(A.handle),this._rapierSimulation.removeCollider(A,!1)}removeRawRigidBody(A){this._rapierSimulation.removeRigidBody(A)}setGravity(A){this._rapierSimulation.gravity=A}step=(A)=>{this.emitWithWorld(this._world,"SIMULATION.STEP_START",{simulation:this,tickDeltaMs:A});let Q=performance.now();if(AY.startSpan({operation:"physics_step"},()=>{this._rapierSimulation.step(this._rapierEventQueue)}),AY.startSpan({operation:"physics_cleanup"},()=>{this._rapierEventQueue.drainContactForceEvents(this._onContactForceEvent),this._rapierEventQueue.drainCollisionEvents(this._onCollisionEvent),this._colliderMap.cleanup()}),this.emitWithWorld(this._world,"SIMULATION.STEP_END",{simulation:this,stepDurationMs:performance.now()-Q}),this._debugRenderingEnabled)this.emitWithWorld(this._world,"SIMULATION.DEBUG_RENDER",{simulation:this,...this._rapierSimulation.debugRender(this._debugRenderingFilterFlags)})};_onCollisionEvent=(A,Q,B)=>{let[Y,J]=this._getCollisionObjects(A,Q);if(!Y||!J)return;let C=(X,G)=>{if(X instanceof O8&&G instanceof X0&&X.hasListeners("BLOCK_TYPE.ENTITY_COLLISION"))X.emit("BLOCK_TYPE.ENTITY_COLLISION",{blockType:X,entity:G,started:B,colliderHandleA:A,colliderHandleB:Q});else if(X instanceof X0&&G instanceof O8&&X.hasListeners("ENTITY.BLOCK_COLLISION"))X.emit("ENTITY.BLOCK_COLLISION",{entity:X,blockType:G,started:B,colliderHandleA:A,colliderHandleB:Q});else if(X instanceof X0&&G instanceof X0&&X.hasListeners("ENTITY.ENTITY_COLLISION"))X.emit("ENTITY.ENTITY_COLLISION",{entity:X,otherEntity:G,started:B,colliderHandleA:A,colliderHandleB:Q});else if(typeof X==="function"&&(G instanceof X0||G instanceof O8))X(G,B,A,Q)};C(Y,J),C(J,Y)};_onContactForceEvent=(A)=>{let[Q,B]=this._getCollisionObjects(A.collider1(),A.collider2());if(!Q||typeof Q==="function"||!B||typeof B==="function")return;let Y={totalForce:A.totalForce(),totalForceMagnitude:A.totalForceMagnitude(),maxForceDirection:A.maxForceDirection(),maxForceMagnitude:A.maxForceMagnitude()},J=(C,X)=>{if(C instanceof O8&&X instanceof X0&&C.hasListeners("BLOCK_TYPE.ENTITY_CONTACT_FORCE"))C.emit("BLOCK_TYPE.ENTITY_CONTACT_FORCE",{blockType:C,entity:X,contactForceData:Y});else if(C instanceof X0&&X instanceof O8&&C.hasListeners("ENTITY.BLOCK_CONTACT_FORCE"))C.emit("ENTITY.BLOCK_CONTACT_FORCE",{entity:C,blockType:X,contactForceData:Y});else if(C instanceof X0&&X instanceof X0&&C.hasListeners("ENTITY.ENTITY_CONTACT_FORCE"))C.emit("ENTITY.ENTITY_CONTACT_FORCE",{entity:C,otherEntity:X,contactForceData:Y})};J(Q,B),J(B,Q)};_getCollisionObjects(A,Q){let B=this._colliderMap.getColliderHandleBlockType(A)??this._colliderMap.getColliderHandleCollisionCallback(A)??this._colliderMap.getColliderHandleEntity(A),Y=this._colliderMap.getColliderHandleBlockType(Q)??this._colliderMap.getColliderHandleCollisionCallback(Q)??this._colliderMap.getColliderHandleEntity(Q);return[B,Y]}}var ao;((C)=>{C.START="WORLD_LOOP.START";C.STOP="WORLD_LOOP.STOP";C.TICK_START="WORLD_LOOP.TICK_START";C.TICK_END="WORLD_LOOP.TICK_END";C.TICK_ERROR="WORLD_LOOP.TICK_ERROR"})(ao||={});class EM extends BQ{_currentTick=0;_ticker;_world;constructor(A,Q=$M){super();this._ticker=new ZM(Q,this._tick,this._onTickError),this._world=A}get currentTick(){return this._currentTick}get isStarted(){return this._ticker.isStarted}get nextTickMs(){return this._ticker.nextTickMs}get timestepS(){return this._ticker.fixedTimestepS}get world(){return this._world}start(){this._ticker.start(),this.emitWithWorld(this._world,"WORLD_LOOP.START",{worldLoop:this})}stop(){this._ticker.stop(),this.emitWithWorld(this._world,"WORLD_LOOP.STOP",{worldLoop:this})}_tick=(A)=>{this.emitWithWorld(this._world,"WORLD_LOOP.TICK_START",{worldLoop:this,tickDeltaMs:A});let Q=performance.now(),B=O0.instance,Y=B.isEnabled;if(Y)B.beginTick(this._currentTick,this._world.entityManager.entityCount,dJ.instance.playerCount,this._world.id);if(AY.startSpan({operation:"world_tick",attributes:{serverPlayerCount:dJ.instance.playerCount,targetTickRate:this._ticker.targetTicksPerSecond,targetTickRateMs:this._ticker.fixedTimestepMs,worldId:this._world.id,worldName:this._world.name,worldChunkCount:this._world.chunkLattice.chunkCount,worldEntityCount:this._world.entityManager.entityCount,worldLoopTick:this._currentTick}},()=>{let J;if(J=Y?performance.now():0,AY.startSpan({operation:"entities_tick"},()=>this._world.entityManager.tickEntities(A)),Y)B.recordPhase("entities_tick",performance.now()-J,this._world.id);if(J=Y?performance.now():0,AY.startSpan({operation:"simulation_step"},()=>this._world.simulation.step(A)),Y)B.recordPhase("simulation_step",performance.now()-J,this._world.id);if(J=Y?performance.now():0,AY.startSpan({operation:"entities_emit_updates"},()=>this._world.entityManager.checkAndEmitUpdates()),Y)B.recordPhase("entities_emit_updates",performance.now()-J,this._world.id);if(this._world.networkSynchronizer.shouldSynchronize()){if(J=Y?performance.now():0,AY.startSpan({operation:"network_synchronize"},()=>this._world.networkSynchronizer.synchronize()),Y)B.recordPhase("network_synchronize",performance.now()-J,this._world.id)}}),Y)B.endTick(this._world.id);this._currentTick++,this.emitWithWorld(this._world,"WORLD_LOOP.TICK_END",{worldLoop:this,tickDurationMs:performance.now()-Q})};_onTickError=(A)=>{l.error(`WorldLoop._onTickError(): Error: ${A}`),this.emitWithWorld(this._world,"WORLD_LOOP.TICK_ERROR",{worldLoop:this,error:A})}}class xk{_world=null;_options=null;_tickFn=null;_toggleParity=!1;get isRunning(){return!!this._tickFn}start(A,Q){this.stop();let B=Math.max(0,Math.floor(Q.blocksPerTick)),Y=Math.max(0,Math.floor(Q.blockTypeId)),J=Q.min??{x:-32,y:0,z:-32},C=Q.max??{x:32,y:16,z:32},X=Bm0(J,C),G=Q.mode??"toggle";this._world=A,this._options={blocksPerTick:B,blockTypeId:Y,mode:G,min:X.min,max:X.max},this._toggleParity=!1,this._tickFn=()=>{this._tick()},A.loop.on("WORLD_LOOP.TICK_START",this._tickFn)}stop(){if(this._world&&this._tickFn)this._world.loop.off("WORLD_LOOP.TICK_START",this._tickFn);this._world=null,this._options=null,this._tickFn=null,this._toggleParity=!1}_tick(){if(!this._world||!this._options)return;let{blocksPerTick:A,blockTypeId:Q,min:B,max:Y,mode:J}=this._options;if(!B||!Y)return;let C=Y.x-B.x+1,X=Y.y-B.y+1,G=Y.z-B.z+1;if(C<=0||X<=0||G<=0)return;let W=this._toggleParity;this._toggleParity=!this._toggleParity;for(let F=0;F{A.call(Q,B,Y,this)})}keys(){return this._map.keys()}values(){return this._map.values()}entries(){return this._map.entries()}[Symbol.iterator](){return this._map[Symbol.iterator]()}_syncArray(){this._values.length=0;for(let A of this._map.values())this._values.push(A);this._isDirty=!1}}var to;((p)=>{p.BURST="PARTICLE_EMITTER.BURST";p.DESPAWN="PARTICLE_EMITTER.DESPAWN";p.SET_ALPHA_TEST="PARTICLE_EMITTER.SET_ALPHA_TEST";p.SET_ATTACHED_TO_ENTITY="PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY";p.SET_ATTACHED_TO_ENTITY_NODE_NAME="PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY_NODE_NAME";p.SET_COLOR_END="PARTICLE_EMITTER.SET_COLOR_END";p.SET_COLOR_END_VARIANCE="PARTICLE_EMITTER.SET_COLOR_END_VARIANCE";p.SET_COLOR_INTENSITY_END="PARTICLE_EMITTER.SET_COLOR_INTENSITY_END";p.SET_COLOR_INTENSITY_END_VARIANCE="PARTICLE_EMITTER.SET_COLOR_INTENSITY_END_VARIANCE";p.SET_COLOR_INTENSITY_START="PARTICLE_EMITTER.SET_COLOR_INTENSITY_START";p.SET_COLOR_INTENSITY_START_VARIANCE="PARTICLE_EMITTER.SET_COLOR_INTENSITY_START_VARIANCE";p.SET_COLOR_START="PARTICLE_EMITTER.SET_COLOR_START";p.SET_COLOR_START_VARIANCE="PARTICLE_EMITTER.SET_COLOR_START_VARIANCE";p.SET_GRAVITY="PARTICLE_EMITTER.SET_GRAVITY";p.SET_LIFETIME="PARTICLE_EMITTER.SET_LIFETIME";p.SET_LIFETIME_VARIANCE="PARTICLE_EMITTER.SET_LIFETIME_VARIANCE";p.SET_MAX_PARTICLES="PARTICLE_EMITTER.SET_MAX_PARTICLES";p.SET_OFFSET="PARTICLE_EMITTER.SET_OFFSET";p.SET_ORIENTATION="PARTICLE_EMITTER.SET_ORIENTATION";p.SET_ORIENTATION_FIXED_ROTATION="PARTICLE_EMITTER.SET_ORIENTATION_FIXED_ROTATION";p.SET_OPACITY_END="PARTICLE_EMITTER.SET_OPACITY_END";p.SET_OPACITY_END_VARIANCE="PARTICLE_EMITTER.SET_OPACITY_END_VARIANCE";p.SET_OPACITY_START="PARTICLE_EMITTER.SET_OPACITY_START";p.SET_OPACITY_START_VARIANCE="PARTICLE_EMITTER.SET_OPACITY_START_VARIANCE";p.SET_PAUSED="PARTICLE_EMITTER.SET_PAUSED";p.SET_POSITION="PARTICLE_EMITTER.SET_POSITION";p.SET_POSITION_VARIANCE="PARTICLE_EMITTER.SET_POSITION_VARIANCE";p.SET_RATE="PARTICLE_EMITTER.SET_RATE";p.SET_RATE_VARIANCE="PARTICLE_EMITTER.SET_RATE_VARIANCE";p.SET_SIZE_END="PARTICLE_EMITTER.SET_SIZE_END";p.SET_SIZE_END_VARIANCE="PARTICLE_EMITTER.SET_SIZE_END_VARIANCE";p.SET_SIZE_START="PARTICLE_EMITTER.SET_SIZE_START";p.SET_SIZE_START_VARIANCE="PARTICLE_EMITTER.SET_SIZE_START_VARIANCE";p.SET_TEXTURE_URI="PARTICLE_EMITTER.SET_TEXTURE_URI";p.SET_TRANSPARENT="PARTICLE_EMITTER.SET_TRANSPARENT";p.SET_VELOCITY="PARTICLE_EMITTER.SET_VELOCITY";p.SET_VELOCITY_VARIANCE="PARTICLE_EMITTER.SET_VELOCITY_VARIANCE";p.SPAWN="PARTICLE_EMITTER.SPAWN"})(to||={});class eo extends BQ{_id;_alphaTest;_attachedToEntity;_attachedToEntityNodeName;_colorEnd;_colorEndVariance;_colorIntensityEnd;_colorIntensityEndVariance;_colorIntensityStart;_colorIntensityStartVariance;_colorStart;_colorStartVariance;_gravity;_lifetime;_lifetimeVariance;_lockToEmitter;_maxParticles;_offset;_orientation;_orientationFixedRotation;_opacityEnd;_opacityEndVariance;_opacityStart;_opacityStartVariance;_paused;_position;_positionVariance;_rate;_rateVariance;_sizeEnd;_sizeEndVariance;_sizeStart;_sizeStartVariance;_sizeVariance;_textureUri;_transparent;_velocity;_velocityVariance;_world;constructor(A){if(!!A.attachedToEntity===!!A.position)l.fatalError("Either attachedToEntity or position must be set, but not both.");if(!A.textureUri)l.fatalError("ParticleEmitter.constructor(): textureUri must be provided.");super();this._alphaTest=A.alphaTest??0.05,this._attachedToEntity=A.attachedToEntity,this._attachedToEntityNodeName=A.attachedToEntityNodeName,this._colorEnd=A.colorEnd,this._colorEndVariance=A.colorEndVariance,this._colorIntensityEnd=A.colorIntensityEnd,this._colorIntensityEndVariance=A.colorIntensityEndVariance,this._colorIntensityStart=A.colorIntensityStart,this._colorIntensityStartVariance=A.colorIntensityStartVariance,this._colorStart=A.colorStart,this._colorStartVariance=A.colorStartVariance,this._gravity=A.gravity,this._lifetime=A.lifetime,this._lifetimeVariance=A.lifetimeVariance,this._lockToEmitter=A.lockToEmitter??!1,this._maxParticles=A.maxParticles,this._offset=A.offset,this._orientation=A.orientation,this._orientationFixedRotation=A.orientationFixedRotation,this._opacityEnd=A.opacityEnd,this._opacityEndVariance=A.opacityEndVariance,this._opacityStart=A.opacityStart,this._opacityStartVariance=A.opacityStartVariance,this._paused=!1,this._position=A.position,this._positionVariance=A.positionVariance,this._rate=A.rate,this._rateVariance=A.rateVariance,this._sizeEnd=A.sizeEnd,this._sizeEndVariance=A.sizeEndVariance,this._sizeStart=A.sizeStart,this._sizeStartVariance=A.sizeStartVariance,this._textureUri=A.textureUri,this._transparent=A.transparent,this._velocity=A.velocity,this._velocityVariance=A.velocityVariance}get id(){return this._id}get alphaTest(){return this._alphaTest}get attachedToEntity(){return this._attachedToEntity}get attachedToEntityNodeName(){return this._attachedToEntityNodeName}get colorEnd(){return this._colorEnd}get colorEndVariance(){return this._colorEndVariance}get colorIntensityEnd(){return this._colorIntensityEnd}get colorIntensityEndVariance(){return this._colorIntensityEndVariance}get colorIntensityStart(){return this._colorIntensityStart}get colorIntensityStartVariance(){return this._colorIntensityStartVariance}get colorStart(){return this._colorStart}get colorStartVariance(){return this._colorStartVariance}get gravity(){return this._gravity}get isSpawned(){return this._id!==void 0}get lifetime(){return this._lifetime}get lifetimeVariance(){return this._lifetimeVariance}get lockToEmitter(){return this._lockToEmitter}get maxParticles(){return this._maxParticles}get offset(){return this._offset}get orientation(){return this._orientation}get orientationFixedRotation(){return this._orientationFixedRotation}get opacityEnd(){return this._opacityEnd}get opacityEndVariance(){return this._opacityEndVariance}get opacityStart(){return this._opacityStart}get opacityStartVariance(){return this._opacityStartVariance}get paused(){return this._paused}get position(){return this._position}get positionVariance(){return this._positionVariance}get rate(){return this._rate}get rateVariance(){return this._rateVariance}get sizeEnd(){return this._sizeEnd}get sizeEndVariance(){return this._sizeEndVariance}get sizeStart(){return this._sizeStart}get sizeStartVariance(){return this._sizeStartVariance}get sizeVariance(){return this._sizeVariance}get textureUri(){return this._textureUri}get transparent(){return this._transparent}get velocity(){return this._velocity}get velocityVariance(){return this._velocityVariance}get world(){return this._world}setAlphaTest(A){if(this._alphaTest===A)return;if(this._alphaTest=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_ALPHA_TEST",{particleEmitter:this,alphaTest:A})}setAttachedToEntity(A){if(!A.isSpawned)return l.error(`ParticleEmitter.setAttachedToEntity(): Entity ${A.id} is not spawned!`);if(this._attachedToEntity===A)return;if(this._attachedToEntity=A,this._position=void 0,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY",{particleEmitter:this,entity:A})}setAttachedToEntityNodeName(A){if(this._attachedToEntityNodeName===A)return;if(this._attachedToEntityNodeName=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY_NODE_NAME",{particleEmitter:this,attachedToEntityNodeName:A})}setColorEnd(A){if(this._colorEnd&&this._colorEnd.r===A.r&&this._colorEnd.g===A.g&&this._colorEnd.b===A.b)return;if(this._colorEnd=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_END",{particleEmitter:this,colorEnd:A})}setColorEndVariance(A){if(this._colorEndVariance&&this._colorEndVariance.r===A.r&&this._colorEndVariance.g===A.g&&this._colorEndVariance.b===A.b)return;if(this._colorEndVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_END_VARIANCE",{particleEmitter:this,colorEndVariance:A})}setColorIntensityEnd(A){if(this._colorIntensityEnd===A)return;if(this._colorIntensityEnd=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_INTENSITY_END",{particleEmitter:this,colorIntensityEnd:A})}setColorIntensityEndVariance(A){if(this._colorIntensityEndVariance===A)return;if(this._colorIntensityEndVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_INTENSITY_END_VARIANCE",{particleEmitter:this,colorIntensityEndVariance:A})}setColorIntensityStart(A){if(this._colorIntensityStart===A)return;if(this._colorIntensityStart=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_INTENSITY_START",{particleEmitter:this,colorIntensityStart:A})}setColorIntensityStartVariance(A){if(this._colorIntensityStartVariance===A)return;if(this._colorIntensityStartVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_INTENSITY_START_VARIANCE",{particleEmitter:this,colorIntensityStartVariance:A})}setColorStart(A){if(this._colorStart&&this._colorStart.r===A.r&&this._colorStart.g===A.g&&this._colorStart.b===A.b)return;if(this._colorStart=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_START",{particleEmitter:this,colorStart:A})}setColorStartVariance(A){if(this._colorStartVariance&&this._colorStartVariance.r===A.r&&this._colorStartVariance.g===A.g&&this._colorStartVariance.b===A.b)return;if(this._colorStartVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_START_VARIANCE",{particleEmitter:this,colorStartVariance:A})}setGravity(A){if(this._gravity&&this._gravity.x===A.x&&this._gravity.y===A.y&&this._gravity.z===A.z)return;if(this._gravity=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_GRAVITY",{particleEmitter:this,gravity:A})}setLifetime(A){if(this._lifetime===A)return;if(this._lifetime=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_LIFETIME",{particleEmitter:this,lifetime:A})}setLifetimeVariance(A){if(this._lifetimeVariance===A)return;if(this._lifetimeVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_LIFETIME_VARIANCE",{particleEmitter:this,lifetimeVariance:A})}setMaxParticles(A){if(this._maxParticles===A)return;if(this._maxParticles=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_MAX_PARTICLES",{particleEmitter:this,maxParticles:A})}setOffset(A){if(this._offset&&this._offset.x===A.x&&this._offset.y===A.y&&this._offset.z===A.z)return;if(this._offset=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_OFFSET",{particleEmitter:this,offset:A})}setOrientation(A){if(this._orientation===A)return;if(this._orientation=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_ORIENTATION",{particleEmitter:this,orientation:A})}setOrientationFixedRotation(A){if(this._orientationFixedRotation&&this._orientationFixedRotation.x===A.x&&this._orientationFixedRotation.y===A.y&&this._orientationFixedRotation.z===A.z)return;if(this._orientationFixedRotation=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_ORIENTATION_FIXED_ROTATION",{particleEmitter:this,orientationFixedRotation:A})}setOpacityEnd(A){if(this._opacityEnd===A)return;if(this._opacityEnd=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_OPACITY_END",{particleEmitter:this,opacityEnd:A})}setOpacityEndVariance(A){if(this._opacityEndVariance===A)return;if(this._opacityEndVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_OPACITY_END_VARIANCE",{particleEmitter:this,opacityEndVariance:A})}setOpacityStart(A){if(this._opacityStart===A)return;if(this._opacityStart=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_OPACITY_START",{particleEmitter:this,opacityStart:A})}setOpacityStartVariance(A){if(this._opacityStartVariance===A)return;if(this._opacityStartVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_OPACITY_START_VARIANCE",{particleEmitter:this,opacityStartVariance:A})}setPosition(A){if(this._position&&this._position.x===A.x&&this._position.y===A.y&&this._position.z===A.z)return;if(this._position=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_POSITION",{particleEmitter:this,position:A})}setPositionVariance(A){if(this._positionVariance&&this._positionVariance.x===A.x&&this._positionVariance.y===A.y&&this._positionVariance.z===A.z)return;if(this._positionVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_POSITION_VARIANCE",{particleEmitter:this,positionVariance:A})}setRate(A){if(this._rate===A)return;if(this._rate=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_RATE",{particleEmitter:this,rate:A})}setRateVariance(A){if(this._rateVariance===A)return;if(this._rateVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_RATE_VARIANCE",{particleEmitter:this,rateVariance:A})}setSizeEnd(A){if(this._sizeEnd===A)return;if(this._sizeEnd=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_SIZE_END",{particleEmitter:this,sizeEnd:A})}setSizeEndVariance(A){if(this._sizeEndVariance===A)return;if(this._sizeEndVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_SIZE_END_VARIANCE",{particleEmitter:this,sizeEndVariance:A})}setSizeStart(A){if(this._sizeStart===A)return;if(this._sizeStart=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_SIZE_START",{particleEmitter:this,sizeStart:A})}setSizeStartVariance(A){if(this._sizeStartVariance===A)return;if(this._sizeStartVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_SIZE_START_VARIANCE",{particleEmitter:this,sizeStartVariance:A})}setTextureUri(A){if(this._textureUri===A)return;if(this._textureUri=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_TEXTURE_URI",{particleEmitter:this,textureUri:A})}setTransparent(A){if(this._transparent===A)return;if(this._transparent=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_TRANSPARENT",{particleEmitter:this,transparent:A})}setVelocity(A){if(this._velocity&&this._velocity.x===A.x&&this._velocity.y===A.y&&this._velocity.z===A.z)return;if(this._velocity=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_VELOCITY",{particleEmitter:this,velocity:A})}setVelocityVariance(A){if(this._velocityVariance&&this._velocityVariance.x===A.x&&this._velocityVariance.y===A.y&&this._velocityVariance.z===A.z)return;if(this._velocityVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_VELOCITY_VARIANCE",{particleEmitter:this,velocityVariance:A})}burst(A){if(this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.BURST",{particleEmitter:this,count:A})}despawn(){if(!this.isSpawned||!this._world)return;this._world.particleEmitterManager.unregisterParticleEmitter(this),this.emitWithWorld(this._world,"PARTICLE_EMITTER.DESPAWN",{particleEmitter:this}),this._id=void 0,this._world=void 0}restart(){if(!this._paused)return;if(this._paused=!1,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_PAUSED",{particleEmitter:this,paused:this._paused})}stop(){if(this._paused)return;if(this._paused=!0,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_PAUSED",{particleEmitter:this,paused:this._paused})}spawn(A){if(this.isSpawned)return;if(this._attachedToEntity&&!this._attachedToEntity.isSpawned)return l.error(`ParticleEmitter.spawn(): Attached entity ${this._attachedToEntity.id} must be spawned before spawning ParticleEmitter!`);this._id=A.particleEmitterManager.registerParticleEmitter(this),this._world=A,this.emitWithWorld(A,"PARTICLE_EMITTER.SPAWN",{particleEmitter:this})}serialize(){return GQ.serializeParticleEmitter(this)}}var Ym0=30,Jm0=Math.round($M/Ym0);class fk{_outboundPerPlayerReliablePackets=new bB;_outboundSharedReliablePackets=[];_outboundSharedUnreliablePackets=[];_queuedAudioSyncs={broadcast:new bB,perPlayer:new bB};_queuedBlockSyncs={broadcast:new bB,perPlayer:new bB};_queuedBlockTypeSyncs={broadcast:new bB,perPlayer:new bB};_queuedChunkSyncs={broadcast:new bB,perPlayer:new bB};_queuedEntitySyncs={broadcast:new bB,perPlayer:new bB};_queuedParticleEmitterSyncs={broadcast:new bB,perPlayer:new bB};_queuedPlayerSyncs={broadcast:new bB,perPlayer:new bB};_queuedSceneUISyncs={broadcast:new bB,perPlayer:new bB};_queuedCameraSyncs={broadcast:void 0,perPlayer:new bB};_queuedChatMessagesSyncs={broadcast:void 0,perPlayer:new bB};_queuedDebugRaycastsSyncs={broadcast:void 0,perPlayer:new bB};_queuedDebugRenderSyncs={broadcast:void 0,perPlayer:new bB};_queuedNotificationPermissionRequestSyncs={broadcast:void 0,perPlayer:new bB};_queuedUISyncs={broadcast:void 0,perPlayer:new bB};_queuedUIDatasSyncs={broadcast:void 0,perPlayer:new bB};_queuedWorldSyncs={broadcast:void 0,perPlayer:new bB};_loadedSceneUIs=new Set;_spawnedChunks=new Set;_spawnedEntities=new Set;_playersInWorld=new Set;_world;constructor(A){this._world=A,this._subscribeToAudioEvents(),this._subscribeToBlockTypeRegistryEvents(),this._subscribeToChatEvents(),this._subscribeToChunkLatticeEvents(),this._subscribeToEntityEvents(),this._subscribeToEntityModelAnimationEvents(),this._subscribeToEntityModelNodeOverrideEvents(),this._subscribeToParticleEmitterEvents(),this._subscribeToPlayerEvents(),this._subscribeToPlayerCameraEvents(),this._subscribeToPlayerUIEvents(),this._subscribeToSceneUIEvents(),this._subscribeToSimulationEvents(),this._subscribeToWorldEvents()}shouldSynchronize(){return this._world.loop.currentTick%Jm0===0}synchronize(){let A=this._world.loop.currentTick;if(this._queuedEntitySyncs.broadcast.size>0){let Q=[],B=[];for(let Y of this._queuedEntitySyncs.broadcast.valuesArray){let J=!1;for(let C in Y)if(J=C!=="i"&&C!=="p"&&C!=="r",J)break;(J?Q:B).push(Y)}if(B.length>0){let Y=gQ.createPacket(gQ.outboundPackets.entitiesPacketDefinition,B,A);this._outboundSharedUnreliablePackets.push(Y)}if(Q.length>0){let Y=gQ.createPacket(gQ.outboundPackets.entitiesPacketDefinition,Q,A);this._outboundSharedReliablePackets.push(Y);for(let J of this._outboundPerPlayerReliablePackets.valuesArray)J.push(Y)}}if(this._queuedEntitySyncs.perPlayer.size>0)for(let[Q,B]of this._queuedEntitySyncs.perPlayer.entries())this._outboundPerPlayerReliablePackets.get(Q)?.push(gQ.createPacket(gQ.outboundPackets.entitiesPacketDefinition,B.valuesArray,A));this._collectSingletonSyncToOutboundPackets(this._queuedCameraSyncs,gQ.outboundPackets.cameraPacketDefinition),this._collectSyncToOutboundPackets(this._queuedAudioSyncs,gQ.outboundPackets.audiosPacketDefinition),this._collectSyncToOutboundPackets(this._queuedBlockTypeSyncs,gQ.outboundPackets.blockTypesPacketDefinition),this._collectSyncToOutboundPackets(this._queuedChunkSyncs,gQ.outboundPackets.chunksPacketDefinition),this._collectSyncToOutboundPackets(this._queuedBlockSyncs,gQ.outboundPackets.blocksPacketDefinition),this._collectSyncToOutboundPackets(this._queuedParticleEmitterSyncs,gQ.outboundPackets.particleEmittersPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedUISyncs,gQ.outboundPackets.uiPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedUIDatasSyncs,gQ.outboundPackets.uiDatasPacketDefinition),this._collectSyncToOutboundPackets(this._queuedSceneUISyncs,gQ.outboundPackets.sceneUIsPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedWorldSyncs,gQ.outboundPackets.worldPacketDefinition),this._collectSyncToOutboundPackets(this._queuedPlayerSyncs,gQ.outboundPackets.playersPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedChatMessagesSyncs,gQ.outboundPackets.chatMessagesPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedNotificationPermissionRequestSyncs,gQ.outboundPackets.notificationPermissionRequestPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedDebugRenderSyncs,gQ.outboundPackets.physicsDebugRenderPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedDebugRaycastsSyncs,gQ.outboundPackets.physicsDebugRaycastsPacketDefinition),AY.startSpan({operation:"send_all_packets"},()=>{for(let Q of dJ.instance.getConnectedPlayersByWorld(this._world)){let B=this._outboundPerPlayerReliablePackets.get(Q)??this._outboundSharedReliablePackets;if(B.length>0)Q.connection.send(B);if(this._outboundSharedUnreliablePackets.length>0)Q.connection.send(this._outboundSharedUnreliablePackets,!1)}}),AY.startSpan({operation:"network_synchronize_cleanup"},()=>{if(this._outboundPerPlayerReliablePackets.size>0)this._outboundPerPlayerReliablePackets.clear();if(this._outboundSharedReliablePackets.length>0)this._outboundSharedReliablePackets.length=0;if(this._outboundSharedUnreliablePackets.length>0)this._outboundSharedUnreliablePackets.length=0;if(this._loadedSceneUIs.size>0)this._loadedSceneUIs.clear();if(this._spawnedChunks.size>0)this._spawnedChunks.clear();if(this._spawnedEntities.size>0)this._spawnedEntities.clear();this._clearSyncQueue(this._queuedAudioSyncs),this._clearSyncQueue(this._queuedBlockSyncs),this._clearSyncQueue(this._queuedBlockTypeSyncs),this._clearSyncQueue(this._queuedChunkSyncs),this._clearSyncQueue(this._queuedEntitySyncs),this._clearSyncQueue(this._queuedParticleEmitterSyncs),this._clearSyncQueue(this._queuedPlayerSyncs),this._clearSyncQueue(this._queuedSceneUISyncs),this._clearSingletonSyncQueue(this._queuedCameraSyncs),this._clearSingletonSyncQueue(this._queuedChatMessagesSyncs),this._clearSingletonSyncQueue(this._queuedDebugRaycastsSyncs),this._clearSingletonSyncQueue(this._queuedDebugRenderSyncs),this._clearSingletonSyncQueue(this._queuedNotificationPermissionRequestSyncs),this._clearSingletonSyncQueue(this._queuedUISyncs),this._clearSingletonSyncQueue(this._queuedUIDatasSyncs),this._clearSingletonSyncQueue(this._queuedWorldSyncs),q1.clearCachedPacketsSerializedBuffers()})}_subscribeToAudioEvents(){this._world.final("AUDIO.PAUSE",this._onAudioPause),this._world.final("AUDIO.PLAY",this._onAudioPlay),this._world.final("AUDIO.PLAY_RESTART",this._onAudioPlayRestart),this._world.final("AUDIO.SET_ATTACHED_TO_ENTITY",this._onAudioSetAttachedToEntity),this._world.final("AUDIO.SET_CUTOFF_DISTANCE",this._onAudioSetCutoffDistance),this._world.final("AUDIO.SET_DETUNE",this._onAudioSetDetune),this._world.final("AUDIO.SET_DISTORTION",this._onAudioSetDistortion),this._world.final("AUDIO.SET_POSITION",this._onAudioSetPosition),this._world.final("AUDIO.SET_PLAYBACK_RATE",this._onAudioSetPlaybackRate),this._world.final("AUDIO.SET_REFERENCE_DISTANCE",this._onAudioSetReferenceDistance),this._world.final("AUDIO.SET_VOLUME",this._onAudioSetVolume)}_subscribeToBlockTypeRegistryEvents(){this._world.final("BLOCK_TYPE_REGISTRY.REGISTER_BLOCK_TYPE",this._onBlockTypeRegistryRegisterBlockType)}_subscribeToChatEvents(){this._world.final("CHAT.BROADCAST_MESSAGE",this._onChatSendBroadcastMessage),this._world.final("CHAT.PLAYER_MESSAGE",this._onChatSendPlayerMessage)}_subscribeToChunkLatticeEvents(){this._world.final("CHUNK_LATTICE.ADD_CHUNK",this._onChunkLatticeAddChunk),this._world.final("CHUNK_LATTICE.REMOVE_CHUNK",this._onChunkLatticeRemoveChunk),this._world.final("CHUNK_LATTICE.SET_BLOCK",this._onChunkLatticeSetBlock)}_subscribeToEntityEvents(){this._world.final("ENTITY.SPAWN",this._onEntitySpawn),this._world.final("ENTITY.DESPAWN",this._onEntityDespawn),this._world.final("ENTITY.REMOVE_MODEL_NODE_OVERRIDE",this._onEntityRemoveModelNodeOverride),this._world.final("ENTITY.SET_BLOCK_TEXTURE_URI",this._onEntitySetBlockTextureUri),this._world.final("ENTITY.SET_EMISSIVE_COLOR",this._onEntitySetEmissiveColor),this._world.final("ENTITY.SET_EMISSIVE_INTENSITY",this._onEntitySetEmissiveIntensity),this._world.final("ENTITY.SET_MODEL_SCALE",this._onEntitySetModelScale),this._world.final("ENTITY.SET_MODEL_SCALE_INTERPOLATION_MS",this._onEntitySetModelScaleInterpolationMs),this._world.final("ENTITY.SET_MODEL_TEXTURE_URI",this._onEntitySetModelTextureUri),this._world.final("ENTITY.SET_OPACITY",this._onEntitySetOpacity),this._world.final("ENTITY.SET_OUTLINE",this._onEntitySetOutline),this._world.final("ENTITY.SET_PARENT",this._onEntitySetParent),this._world.final("ENTITY.SET_POSITION_INTERPOLATION_MS",this._onEntitySetPositionInterpolationMs),this._world.final("ENTITY.SET_ROTATION_INTERPOLATION_MS",this._onEntitySetRotationInterpolationMs),this._world.final("ENTITY.SET_TINT_COLOR",this._onEntitySetTintColor),this._world.final("ENTITY.UPDATE_POSITION",this._onEntityUpdatePosition),this._world.final("ENTITY.UPDATE_ROTATION",this._onEntityUpdateRotation)}_subscribeToEntityModelAnimationEvents(){this._world.final("ENTITY_MODEL_ANIMATION.PAUSE",this._onEntityModelAnimationPause),this._world.final("ENTITY_MODEL_ANIMATION.PLAY",this._onEntityModelAnimationPlay),this._world.final("ENTITY_MODEL_ANIMATION.RESTART",this._onEntityModelAnimationRestart),this._world.final("ENTITY_MODEL_ANIMATION.SET_BLEND_MODE",this._onEntityModelAnimationSetBlendMode),this._world.final("ENTITY_MODEL_ANIMATION.SET_CLAMP_WHEN_FINISHED",this._onEntityModelAnimationSetClampWhenFinished),this._world.final("ENTITY_MODEL_ANIMATION.SET_FADES_IN",this._onEntityModelAnimationSetFadesIn),this._world.final("ENTITY_MODEL_ANIMATION.SET_FADES_OUT",this._onEntityModelAnimationSetFadesOut),this._world.final("ENTITY_MODEL_ANIMATION.SET_LOOP_MODE",this._onEntityModelAnimationSetLoopMode),this._world.final("ENTITY_MODEL_ANIMATION.SET_PLAYBACK_RATE",this._onEntityModelAnimationSetPlaybackRate),this._world.final("ENTITY_MODEL_ANIMATION.SET_WEIGHT",this._onEntityModelAnimationSetWeight),this._world.final("ENTITY_MODEL_ANIMATION.STOP",this._onEntityModelAnimationStop)}_subscribeToEntityModelNodeOverrideEvents(){this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_COLOR",this._onEntityModelNodeOverrideSetEmissiveColor),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_INTENSITY",this._onEntityModelNodeOverrideSetEmissiveIntensity),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_HIDDEN",this._onEntityModelNodeOverrideSetHidden),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION",this._onEntityModelNodeOverrideSetLocalPosition),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION_INTERPOLATION_MS",this._onEntityModelNodeOverrideSetLocalPositionInterpolationMs),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION",this._onEntityModelNodeOverrideSetLocalRotation),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION_INTERPOLATION_MS",this._onEntityModelNodeOverrideSetLocalRotationInterpolationMs),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE",this._onEntityModelNodeOverrideSetLocalScale),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE_INTERPOLATION_MS",this._onEntityModelNodeOverrideSetLocalScaleInterpolationMs)}_subscribeToParticleEmitterEvents(){this._world.final("PARTICLE_EMITTER.DESPAWN",this._onParticleEmitterDespawn),this._world.final("PARTICLE_EMITTER.BURST",this._onParticleEmitterBurst),this._world.final("PARTICLE_EMITTER.SET_ALPHA_TEST",this._onParticleEmitterSetAlphaTest),this._world.final("PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY",this._onParticleEmitterSetAttachedToEntity),this._world.final("PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY_NODE_NAME",this._onParticleEmitterSetAttachedToEntityNodeName),this._world.final("PARTICLE_EMITTER.SET_COLOR_END",this._onParticleEmitterSetColorEnd),this._world.final("PARTICLE_EMITTER.SET_COLOR_END_VARIANCE",this._onParticleEmitterSetColorEndVariance),this._world.final("PARTICLE_EMITTER.SET_COLOR_INTENSITY_END",this._onParticleEmitterSetColorIntensityEnd),this._world.final("PARTICLE_EMITTER.SET_COLOR_INTENSITY_END_VARIANCE",this._onParticleEmitterSetColorIntensityEndVariance),this._world.final("PARTICLE_EMITTER.SET_COLOR_INTENSITY_START",this._onParticleEmitterSetColorIntensityStart),this._world.final("PARTICLE_EMITTER.SET_COLOR_INTENSITY_START_VARIANCE",this._onParticleEmitterSetColorIntensityStartVariance),this._world.final("PARTICLE_EMITTER.SET_COLOR_START",this._onParticleEmitterSetColorStart),this._world.final("PARTICLE_EMITTER.SET_COLOR_START_VARIANCE",this._onParticleEmitterSetColorStartVariance),this._world.final("PARTICLE_EMITTER.SET_GRAVITY",this._onParticleEmitterSetGravity),this._world.final("PARTICLE_EMITTER.SET_LIFETIME",this._onParticleEmitterSetLifetime),this._world.final("PARTICLE_EMITTER.SET_LIFETIME_VARIANCE",this._onParticleEmitterSetLifetimeVariance),this._world.final("PARTICLE_EMITTER.SET_MAX_PARTICLES",this._onParticleEmitterSetMaxParticles),this._world.final("PARTICLE_EMITTER.SET_OFFSET",this._onParticleEmitterSetOffset),this._world.final("PARTICLE_EMITTER.SET_OPACITY_END",this._onParticleEmitterSetOpacityEnd),this._world.final("PARTICLE_EMITTER.SET_OPACITY_END_VARIANCE",this._onParticleEmitterSetOpacityEndVariance),this._world.final("PARTICLE_EMITTER.SET_OPACITY_START",this._onParticleEmitterSetOpacityStart),this._world.final("PARTICLE_EMITTER.SET_OPACITY_START_VARIANCE",this._onParticleEmitterSetOpacityStartVariance),this._world.final("PARTICLE_EMITTER.SET_PAUSED",this._onParticleEmitterSetPaused),this._world.final("PARTICLE_EMITTER.SET_POSITION",this._onParticleEmitterSetPosition),this._world.final("PARTICLE_EMITTER.SET_POSITION_VARIANCE",this._onParticleEmitterSetPositionVariance),this._world.final("PARTICLE_EMITTER.SET_RATE",this._onParticleEmitterSetRate),this._world.final("PARTICLE_EMITTER.SET_RATE_VARIANCE",this._onParticleEmitterSetRateVariance),this._world.final("PARTICLE_EMITTER.SET_SIZE_END",this._onParticleEmitterSetSizeEnd),this._world.final("PARTICLE_EMITTER.SET_SIZE_END_VARIANCE",this._onParticleEmitterSetSizeEndVariance),this._world.final("PARTICLE_EMITTER.SET_SIZE_START",this._onParticleEmitterSetSizeStart),this._world.final("PARTICLE_EMITTER.SET_SIZE_START_VARIANCE",this._onParticleEmitterSetSizeStartVariance),this._world.final("PARTICLE_EMITTER.SET_TEXTURE_URI",this._onParticleEmitterSetTextureUri),this._world.final("PARTICLE_EMITTER.SET_TRANSPARENT",this._onParticleEmitterSetTransparent),this._world.final("PARTICLE_EMITTER.SET_VELOCITY",this._onParticleEmitterSetVelocity),this._world.final("PARTICLE_EMITTER.SET_VELOCITY_VARIANCE",this._onParticleEmitterSetVelocityVariance),this._world.final("PARTICLE_EMITTER.SPAWN",this._onParticleEmitterSpawn)}_subscribeToPlayerEvents(){this._world.final("PLAYER.JOINED_WORLD",this._onPlayerJoinedWorld),this._world.final("PLAYER.LEFT_WORLD",this._onPlayerLeftWorld),this._world.final("PLAYER.RECONNECTED_WORLD",this._onPlayerReconnectedWorld),this._world.final("PLAYER.REQUEST_NOTIFICATION_PERMISSION",this._onPlayerRequestNotificationPermission),this._world.final("PLAYER.REQUEST_SYNC",this._onPlayerRequestSync)}_subscribeToPlayerCameraEvents(){this._world.final("PLAYER_CAMERA.FACE_ENTITY",this._onPlayerCameraFaceEntity),this._world.final("PLAYER_CAMERA.FACE_POSITION",this._onPlayerCameraFacePosition),this._world.final("PLAYER_CAMERA.SET_ATTACHED_TO_ENTITY",this._onPlayerCameraSetAttachedToEntity),this._world.final("PLAYER_CAMERA.SET_ATTACHED_TO_POSITION",this._onPlayerCameraSetAttachedToPosition),this._world.final("PLAYER_CAMERA.SET_COLLIDES_WITH_BLOCKS",this._onPlayerCameraSetCollidesWithBlocks),this._world.final("PLAYER_CAMERA.SET_FILM_OFFSET",this._onPlayerCameraSetFilmOffset),this._world.final("PLAYER_CAMERA.SET_FORWARD_OFFSET",this._onPlayerCameraSetForwardOffset),this._world.final("PLAYER_CAMERA.SET_FOV",this._onPlayerCameraSetFov),this._world.final("PLAYER_CAMERA.SET_MODE",this._onPlayerCameraSetMode),this._world.final("PLAYER_CAMERA.SET_OFFSET",this._onPlayerCameraSetOffset),this._world.final("PLAYER_CAMERA.SET_SHOULDER_ANGLE",this._onPlayerCameraSetShoulderAngle),this._world.final("PLAYER_CAMERA.SET_TARGET_ENTITY",this._onPlayerCameraSetTargetEntity),this._world.final("PLAYER_CAMERA.SET_TARGET_POSITION",this._onPlayerCameraSetTargetPosition),this._world.final("PLAYER_CAMERA.SET_VIEW_MODEL",this._onPlayerCameraSetViewModel),this._world.final("PLAYER_CAMERA.SET_VIEW_MODEL_HIDDEN_NODES",this._onPlayerCameraSetViewModelHiddenNodes),this._world.final("PLAYER_CAMERA.SET_VIEW_MODEL_PITCHES_WITH_CAMERA",this._onPlayerCameraSetViewModelPitchesWithCamera),this._world.final("PLAYER_CAMERA.SET_VIEW_MODEL_SHOWN_NODES",this._onPlayerCameraSetViewModelShownNodes),this._world.final("PLAYER_CAMERA.SET_VIEW_MODEL_YAWS_WITH_CAMERA",this._onPlayerCameraSetViewModelYawsWithCamera),this._world.final("PLAYER_CAMERA.SET_ZOOM",this._onPlayerCameraSetZoom)}_subscribeToPlayerUIEvents(){this._world.final("PLAYER_UI.APPEND",this._onPlayerUIAppend),this._world.final("PLAYER_UI.FREEZE_POINTER_LOCK",this._onPlayerUIFreezePointerLock),this._world.final("PLAYER_UI.LOAD",this._onPlayerUILoad),this._world.final("PLAYER_UI.LOCK_POINTER",this._onPlayerUILockPointer),this._world.final("PLAYER_UI.SEND_DATA",this._onPlayerUISendData)}_subscribeToSceneUIEvents(){this._world.final("SCENE_UI.LOAD",this._onSceneUILoad),this._world.final("SCENE_UI.SET_ATTACHED_TO_ENTITY",this._onSceneUISetAttachedToEntity),this._world.final("SCENE_UI.SET_OFFSET",this._onSceneUISetOffset),this._world.final("SCENE_UI.SET_POSITION",this._onSceneUISetPosition),this._world.final("SCENE_UI.SET_STATE",this._onSceneUISetState),this._world.final("SCENE_UI.SET_VIEW_DISTANCE",this._onSceneUISetViewDistance),this._world.final("SCENE_UI.UNLOAD",this._onSceneUIUnload)}_subscribeToSimulationEvents(){this._world.final("SIMULATION.DEBUG_RAYCAST",this._onSimulationDebugRaycast),this._world.final("SIMULATION.DEBUG_RENDER",this._onSimulationDebugRender)}_subscribeToWorldEvents(){this._world.final("WORLD.SET_AMBIENT_LIGHT_COLOR",this._onWorldSetAmbientLightColor),this._world.final("WORLD.SET_AMBIENT_LIGHT_INTENSITY",this._onWorldSetAmbientLightIntensity),this._world.final("WORLD.SET_DIRECTIONAL_LIGHT_COLOR",this._onWorldSetDirectionalLightColor),this._world.final("WORLD.SET_DIRECTIONAL_LIGHT_INTENSITY",this._onWorldSetDirectionalLightIntensity),this._world.final("WORLD.SET_DIRECTIONAL_LIGHT_POSITION",this._onWorldSetDirectionalLightPosition),this._world.final("WORLD.SET_FOG_COLOR",this._onWorldSetFogColor),this._world.final("WORLD.SET_FOG_FAR",this._onWorldSetFogFar),this._world.final("WORLD.SET_FOG_NEAR",this._onWorldSetFogNear),this._world.final("WORLD.SET_SKYBOX_INTENSITY",this._onWorldSetSkyboxIntensity),this._world.final("WORLD.SET_SKYBOX_URI",this._onWorldSetSkyboxUri)}_onAudioPause=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.pa=!0,delete Q.pl,delete Q.r};_onAudioPlay=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Object.assign(Q,A.audio.serialize()),Q.pl=!0,delete Q.pa,delete Q.r};_onAudioPlayRestart=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Object.assign(Q,A.audio.serialize()),Q.r=!0,delete Q.pa,delete Q.pl};_onAudioSetAttachedToEntity=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.e=A.entity?A.entity.id:void 0,Q.p=A.entity?void 0:Q.p};_onAudioSetCutoffDistance=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.cd=A.cutoffDistance};_onAudioSetDetune=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.de=A.detune};_onAudioSetDistortion=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.di=A.distortion};_onAudioSetPosition=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.e=A.position?void 0:Q.e,Q.p=A.position?GQ.serializeVector(A.position):void 0};_onAudioSetPlaybackRate=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.pr=A.playbackRate};_onAudioSetReferenceDistance=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.rd=A.referenceDistance};_onAudioSetVolume=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.v=A.volume};_onBlockTypeRegistryRegisterBlockType=(A)=>{if(this._playersInWorld.size===0)return;let Q=this._createOrGetQueuedBlockTypeSync(A.blockType);Object.assign(Q,A.blockType.serialize())};_onChatSendBroadcastMessage=(A)=>{this._createOrGetQueuedChatMessagesSync().push({m:A.message,c:A.color,p:A.player?.id})};_onChatSendPlayerMessage=(A)=>{this._createOrGetQueuedChatMessagesSync(A.player).push({m:A.message,c:A.color})};_onChunkLatticeAddChunk=(A)=>{if(this._playersInWorld.size===0)return;let Q=this._createOrGetQueuedChunkSync(A.chunk);Object.assign(Q,A.chunk.serialize()),Q.rm=void 0,this._spawnedChunks.add(Q.c.join(","))};_onChunkLatticeRemoveChunk=(A)=>{if(this._playersInWorld.size===0)return;let Q=this._createOrGetQueuedChunkSync(A.chunk),B=Q.c.join(",");if(this._spawnedChunks.has(B))this._queuedChunkSyncs.broadcast.delete(B),this._spawnedChunks.delete(B);else Q.rm=!0};_onChunkLatticeSetBlock=(A)=>{if(this._playersInWorld.size===0)return;let Q=this._createOrGetQueuedBlockSync(A.globalCoordinate);Q.i=A.blockTypeId,Q.r=A.blockRotation?.enumIndex};_onEntitySpawn=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Object.assign(Q,A.entity.serialize()),this._spawnedEntities.add(Q.i)};_onEntityDespawn=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);if(this._spawnedEntities.has(Q.i))this._queuedEntitySyncs.broadcast.delete(Q.i),this._spawnedEntities.delete(Q.i);else Q.rm=!0};_onEntityRemoveModelNodeOverride=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.rm=!0};_onEntitySetBlockTextureUri=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.bt=A.blockTextureUri};_onEntitySetEmissiveColor=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.ec=A.emissiveColor?GQ.serializeRgbColor(A.emissiveColor):void 0};_onEntitySetEmissiveIntensity=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.ei=A.emissiveIntensity};_onEntitySetModelScale=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.sv=A.modelScale?GQ.serializeVector(A.modelScale):void 0};_onEntitySetModelScaleInterpolationMs=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.si=A.interpolationMs};_onEntitySetModelTextureUri=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.mt=A.modelTextureUri};_onEntitySetOpacity=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.o=A.opacity};_onEntitySetOutline=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity,A.forPlayer);Q.ol=A.outline?GQ.serializeOutline(A.outline):void 0};_onEntitySetParent=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.pe=A.parent?A.parent.id:void 0,Q.pn=A.parentNodeName};_onEntitySetPositionInterpolationMs=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.pi=A.interpolationMs};_onEntitySetRotationInterpolationMs=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.ri=A.interpolationMs};_onEntitySetTintColor=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.t=A.tintColor?GQ.serializeRgbColor(A.tintColor):void 0};_onEntityUpdatePosition=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.p=[A.position.x,A.position.y,A.position.z]};_onEntityUpdateRotation=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.r=[A.rotation.x,A.rotation.y,A.rotation.z,A.rotation.w]};_onEntityModelAnimationPause=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.pa=!0,delete Q.p,delete Q.r,delete Q.s};_onEntityModelAnimationPlay=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.p=!0,delete Q.pa,delete Q.r,delete Q.s};_onEntityModelAnimationRestart=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.r=!0,delete Q.pa,delete Q.p,delete Q.s};_onEntityModelAnimationSetBlendMode=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.b=A.blendMode};_onEntityModelAnimationSetClampWhenFinished=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.c=A.clampWhenFinished};_onEntityModelAnimationSetFadesIn=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.fi=A.fadesIn};_onEntityModelAnimationSetFadesOut=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.fo=A.fadesOut};_onEntityModelAnimationSetLoopMode=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.l=A.loopMode};_onEntityModelAnimationSetPlaybackRate=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.pr=A.playbackRate};_onEntityModelAnimationSetWeight=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.w=A.weight};_onEntityModelAnimationStop=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.s=!0,delete Q.p,delete Q.pa,delete Q.r};_onEntityModelNodeOverrideSetEmissiveColor=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.ec=A.emissiveColor?GQ.serializeRgbColor(A.emissiveColor):void 0,delete Q.rm};_onEntityModelNodeOverrideSetEmissiveIntensity=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.ei=A.emissiveIntensity,delete Q.rm};_onEntityModelNodeOverrideSetHidden=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.h=A.hidden,delete Q.rm};_onEntityModelNodeOverrideSetLocalPosition=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.p=A.localPosition?GQ.serializeVector(A.localPosition):void 0,delete Q.rm};_onEntityModelNodeOverrideSetLocalPositionInterpolationMs=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.pi=A.interpolationMs,delete Q.rm};_onEntityModelNodeOverrideSetLocalRotation=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.r=A.localRotation?GQ.serializeQuaternion(A.localRotation):void 0,delete Q.rm};_onEntityModelNodeOverrideSetLocalRotationInterpolationMs=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.ri=A.interpolationMs,delete Q.rm};_onEntityModelNodeOverrideSetLocalScale=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.s=A.localScale?GQ.serializeVector(A.localScale):void 0,delete Q.rm};_onEntityModelNodeOverrideSetLocalScaleInterpolationMs=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.si=A.interpolationMs,delete Q.rm};_onParticleEmitterBurst=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.b=A.count};_onParticleEmitterDespawn=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.rm=!0};_onParticleEmitterSetAlphaTest=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.at=A.alphaTest};_onParticleEmitterSetAttachedToEntity=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.e=A.entity?A.entity.id:void 0,Q.p=A.entity?void 0:Q.p};_onParticleEmitterSetAttachedToEntityNodeName=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.en=A.attachedToEntityNodeName};_onParticleEmitterSetColorEnd=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.ce=A.colorEnd?GQ.serializeRgbColor(A.colorEnd):void 0};_onParticleEmitterSetColorEndVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.cev=A.colorEndVariance?GQ.serializeRgbColor(A.colorEndVariance):void 0};_onParticleEmitterSetColorIntensityEnd=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.cie=A.colorIntensityEnd};_onParticleEmitterSetColorIntensityEndVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.ciev=A.colorIntensityEndVariance};_onParticleEmitterSetColorIntensityStart=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.cis=A.colorIntensityStart};_onParticleEmitterSetColorIntensityStartVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.cisv=A.colorIntensityStartVariance};_onParticleEmitterSetColorStart=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.cs=A.colorStart?GQ.serializeRgbColor(A.colorStart):void 0};_onParticleEmitterSetColorStartVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.csv=A.colorStartVariance?GQ.serializeRgbColor(A.colorStartVariance):void 0};_onParticleEmitterSetGravity=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.g=A.gravity?GQ.serializeVector(A.gravity):void 0};_onParticleEmitterSetLifetime=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.l=A.lifetime};_onParticleEmitterSetLifetimeVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.lv=A.lifetimeVariance};_onParticleEmitterSetMaxParticles=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.mp=A.maxParticles};_onParticleEmitterSetOffset=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.o=A.offset?GQ.serializeVector(A.offset):void 0};_onParticleEmitterSetOpacityEnd=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.oe=A.opacityEnd};_onParticleEmitterSetOpacityEndVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.oev=A.opacityEndVariance};_onParticleEmitterSetOpacityStart=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.os=A.opacityStart};_onParticleEmitterSetOpacityStartVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.osv=A.opacityStartVariance};_onParticleEmitterSetPaused=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.pa=A.paused};_onParticleEmitterSetPosition=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.p=A.position?GQ.serializeVector(A.position):void 0,Q.e=A.position?void 0:Q.e,Q.en=A.position?void 0:Q.en};_onParticleEmitterSetPositionVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.pv=A.positionVariance?GQ.serializeVector(A.positionVariance):void 0};_onParticleEmitterSetRate=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.r=A.rate};_onParticleEmitterSetRateVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.rv=A.rateVariance};_onParticleEmitterSetSizeEnd=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.se=A.sizeEnd};_onParticleEmitterSetSizeEndVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.sev=A.sizeEndVariance};_onParticleEmitterSetSizeStart=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.ss=A.sizeStart};_onParticleEmitterSetSizeStartVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.ssv=A.sizeStartVariance};_onParticleEmitterSetTextureUri=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.tu=A.textureUri};_onParticleEmitterSetTransparent=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.t=A.transparent};_onParticleEmitterSetVelocity=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.v=A.velocity?GQ.serializeVector(A.velocity):void 0};_onParticleEmitterSetVelocityVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.vv=A.velocityVariance?GQ.serializeVector(A.velocityVariance):void 0};_onParticleEmitterSpawn=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Object.assign(Q,A.particleEmitter.serialize())};_onPlayerCameraFaceEntity=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.pl=GQ.serializeVector(A.entity.position),delete Q.et,delete Q.pt};_onPlayerCameraFacePosition=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.pl=A.position?GQ.serializeVector(A.position):void 0,delete Q.et,delete Q.pt};_onPlayerCameraSetAttachedToEntity=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.e=A.entity.id,delete Q.p,this._syncPlayerCameraAttachedEntityModel(A.playerCamera)};_onPlayerCameraSetAttachedToPosition=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.p=A.position?GQ.serializeVector(A.position):void 0,delete Q.e};_onPlayerCameraSetCollidesWithBlocks=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.cb=A.collidesWithBlocks};_onPlayerCameraSetFilmOffset=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.fo=A.filmOffset};_onPlayerCameraSetForwardOffset=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.ffo=A.forwardOffset};_onPlayerCameraSetFov=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.fv=A.fov};_onPlayerCameraSetMode=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.m=A.mode,this._syncPlayerCameraAttachedEntityModel(A.playerCamera)};_onPlayerCameraSetOffset=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.o=A.offset?GQ.serializeVector(A.offset):void 0};_onPlayerCameraSetShoulderAngle=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.sa=A.shoulderAngle};_onPlayerCameraSetTargetEntity=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.et=A.entity?A.entity.id:void 0,delete Q.pl,delete Q.pt};_onPlayerCameraSetTargetPosition=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.pt=A.position?GQ.serializeVector(A.position):void 0,delete Q.et,delete Q.pl};_onPlayerCameraSetZoom=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.z=A.zoom};_onPlayerCameraSetViewModel=(A)=>{this._syncPlayerCameraAttachedEntityModel(A.playerCamera)};_onPlayerCameraSetViewModelHiddenNodes=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.h=Array.from(A.viewModelHiddenNodes)};_onPlayerCameraSetViewModelPitchesWithCamera=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.mp=A.viewModelPitchesWithCamera};_onPlayerCameraSetViewModelShownNodes=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.s=Array.from(A.viewModelShownNodes)};_onPlayerCameraSetViewModelYawsWithCamera=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.my=A.viewModelYawsWithCamera};_onPlayerJoinedWorld=(A)=>{let{player:Q}=A;this._playersInWorld.add(Q);for(let C of this._world.audioManager.getAllAudios()){let X=this._createOrGetQueuedAudioSync(C,Q);this._assignUndefined(X,C.serialize())}for(let C of this._world.blockTypeRegistry.getAllBlockTypes()){let X=this._createOrGetQueuedBlockTypeSync(C,Q);this._assignUndefined(X,C.serialize())}let B=this._createOrGetQueuedCameraSync(Q);this._assignUndefined(B,Q.camera.serialize());for(let C of this._world.chunkLattice.getAllChunks()){let X=this._createOrGetQueuedChunkSync(C,Q);this._assignUndefined(X,C.serialize())}for(let C of this._world.entityManager.getAllEntities()){if(Q.camera.attachedToEntity===void 0&&C instanceof BX&&C.player===Q)Q.camera.setAttachedToEntity(C);let X=this._createOrGetQueuedEntitySync(C,Q);this._assignUndefined(X,C.serialize())}this._syncPlayerCameraAttachedEntityModel(Q.camera);for(let C of this._world.particleEmitterManager.getAllParticleEmitters()){let X=this._createOrGetQueuedParticleEmitterSync(C,Q);this._assignUndefined(X,C.serialize())}for(let C of dJ.instance.getConnectedPlayers()){let X=this._createOrGetQueuedPlayerSync(C,Q);this._assignUndefined(X,C.serialize())}for(let C of this._world.sceneUIManager.getAllSceneUIs()){let X=this._createOrGetQueuedSceneUISync(C,Q);this._assignUndefined(X,C.serialize())}let Y=this._createOrGetQueuedWorldSync(this._world,Q);this._assignUndefined(Y,this._world.serialize());let J=this._createOrGetQueuedPlayerSync(Q);this._assignUndefined(J,Q.serialize())};_onPlayerLeftWorld=(A)=>{this._playersInWorld.delete(A.player);let Q=this._createOrGetQueuedPlayerSync(A.player);Q.rm=!0};_onPlayerReconnectedWorld=(A)=>{this._onPlayerJoinedWorld(A)};_onPlayerRequestNotificationPermission=(A)=>{this._createOrGetQueuedNotificationPermissionRequestSync(A.player)};_onPlayerRequestSync=(A)=>{A.player.connection.send([gQ.createPacket(gQ.outboundPackets.syncResponsePacketDefinition,{r:A.receivedAt,s:Date.now(),p:performance.now()-A.receivedAtMs,n:this._world.loop.nextTickMs},this._world.loop.currentTick)])};_onPlayerUIAppend=(A)=>{let Q=this._createOrGetQueuedUISync(A.playerUI.player);Q.ua??=[],Q.ua.push(A.htmlUri)};_onPlayerUIFreezePointerLock=(A)=>{let Q=this._createOrGetQueuedUISync(A.playerUI.player);Q.pf=A.freeze};_onPlayerUILoad=(A)=>{let Q=this._createOrGetQueuedUISync(A.playerUI.player);Q.u=A.htmlUri};_onPlayerUILockPointer=(A)=>{let Q=this._createOrGetQueuedUISync(A.playerUI.player);Q.p=A.lock};_onPlayerUISendData=(A)=>{this._createOrGetQueuedUIDatasSync(A.playerUI.player).push(A.data)};_onSceneUILoad=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);Object.assign(Q,A.sceneUI.serialize()),this._loadedSceneUIs.add(Q.i)};_onSceneUISetAttachedToEntity=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);Q.e=A.entity?A.entity.id:void 0,Q.p=A.entity?void 0:Q.p};_onSceneUISetOffset=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);Q.o=A.offset?GQ.serializeVector(A.offset):void 0};_onSceneUISetPosition=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);Q.p=A.position?GQ.serializeVector(A.position):void 0,Q.e=A.position?void 0:Q.e};_onSceneUISetState=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);Q.s=A.state};_onSceneUISetViewDistance=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);Q.v=A.viewDistance};_onSceneUIUnload=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);if(this._loadedSceneUIs.has(Q.i))this._queuedSceneUISyncs.broadcast.delete(Q.i),this._loadedSceneUIs.delete(Q.i);else Q.rm=!0};_onSimulationDebugRaycast=(A)=>{this._createOrGetDebugRaycastsSync().push(GQ.serializePhysicsDebugRaycast(A))};_onSimulationDebugRender=(A)=>{let Q=this._createOrGetDebugRenderSync();Q.v=Array.from(A.vertices),Q.c=Array.from(A.colors)};_onWorldSetAmbientLightColor=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.ac=GQ.serializeRgbColor(A.color)};_onWorldSetAmbientLightIntensity=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.ai=A.intensity};_onWorldSetDirectionalLightColor=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.dc=GQ.serializeRgbColor(A.color)};_onWorldSetDirectionalLightIntensity=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.di=A.intensity};_onWorldSetDirectionalLightPosition=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.dp=GQ.serializeVector(A.position)};_onWorldSetFogColor=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.fc=GQ.serializeRgbColor(A.color)};_onWorldSetFogFar=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.ff=A.far};_onWorldSetFogNear=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.fn=A.near};_onWorldSetSkyboxIntensity=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.si=A.intensity};_onWorldSetSkyboxUri=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.s=A.uri};_assignUndefined(A,Q){for(let B in Q)if(A[B]===void 0)A[B]=Q[B];return A}_createAudioSync=(A)=>({i:A.id});_createOrGetQueuedAudioSync(A,Q){if(A.id===void 0)l.fatalError("NetworkSynchronizer._createOrGetQueuedAudioSync(): Audio has no id!");return this._createOrGetQueuedSync(this._queuedAudioSyncs,A.id,this._createAudioSync,A,Q)}_createBlockSync=(A)=>({i:0,c:[A.x,A.y,A.z]});_createOrGetQueuedBlockSync(A,Q){let B=`${A.x},${A.y},${A.z}`;return this._createOrGetQueuedSync(this._queuedBlockSyncs,B,this._createBlockSync,A,Q)}_createBlockTypeSync=(A)=>({i:A.id});_createOrGetQueuedBlockTypeSync(A,Q){return this._createOrGetQueuedSync(this._queuedBlockTypeSyncs,A.id,this._createBlockTypeSync,A,Q)}_createCameraSync=()=>({});_createOrGetQueuedCameraSync(A){return this._createOrGetQueuedSingletonSync(this._queuedCameraSyncs,this._createCameraSync,void 0,A)}_createChatMessagesSync=()=>[];_createOrGetQueuedChatMessagesSync(A){return this._createOrGetQueuedSingletonSync(this._queuedChatMessagesSyncs,this._createChatMessagesSync,void 0,A)}_createChunkSync=(A)=>({c:[A.originCoordinate.x,A.originCoordinate.y,A.originCoordinate.z]});_createOrGetQueuedChunkSync(A,Q){if(!A.originCoordinate)l.fatalError("NetworkSynchronizer._createOrGetQueuedChunkSync(): Chunk has no origin coordinate!");let B=`${A.originCoordinate.x},${A.originCoordinate.y},${A.originCoordinate.z}`;return this._createOrGetQueuedSync(this._queuedChunkSyncs,B,this._createChunkSync,A,Q)}_createDebugRaycastsSync=()=>[];_createOrGetDebugRaycastsSync(A){return this._createOrGetQueuedSingletonSync(this._queuedDebugRaycastsSyncs,this._createDebugRaycastsSync,void 0,A)}_createDebugRenderSync=()=>({v:[],c:[]});_createOrGetDebugRenderSync(A){return this._createOrGetQueuedSingletonSync(this._queuedDebugRenderSyncs,this._createDebugRenderSync,void 0,A)}_createEntitySync=(A)=>({i:A.id});_createOrGetQueuedEntitySync(A,Q){if(A.id===void 0)l.fatalError("NetworkSynchronizer._createOrGetQueuedEntitySync(): Entity has no id!");return this._createOrGetQueuedSync(this._queuedEntitySyncs,A.id,this._createEntitySync,A,Q)}_createEntityModelAnimationSync=(A)=>({n:A.name});_createOrGetQueuedEntityModelAnimationSync(A,Q){if(A.entity.id===void 0)l.fatalError("NetworkSynchronizer._createOrGetQueuedEntityModelAnimationSync(): EntityModelAnimation entity has no id!");let B=this._createOrGetQueuedEntitySync(A.entity,Q);B.ma??=[];let Y=B.ma.find((J)=>J.n===A.name);if(!Y)Y=this._createEntityModelAnimationSync(A),B.ma.push(Y);return Y}_createEntityModelNodeOverrideSync=(A)=>({n:A.nameMatch});_createOrGetQueuedEntityModelNodeOverrideSync(A,Q){if(A.entity.id===void 0)l.fatalError("NetworkSynchronizer._createOrGetQueuedEntityModelNodeOverrideSync(): EntityModelNodeOverride entity has no id!");let B=this._createOrGetQueuedEntitySync(A.entity,Q);B.mo??=[];let Y=B.mo.find((J)=>J.n===A.nameMatch);if(!Y)Y=this._createEntityModelNodeOverrideSync(A),B.mo.push(Y);return Y}_createNotificationPermissionRequestSync=()=>null;_createOrGetQueuedNotificationPermissionRequestSync(A){return this._createOrGetQueuedSingletonSync(this._queuedNotificationPermissionRequestSyncs,this._createNotificationPermissionRequestSync,void 0,A)}_createParticleEmitterSync=(A)=>({i:A.id});_createOrGetQueuedParticleEmitterSync(A,Q){if(A.id===void 0)l.fatalError("NetworkSynchronizer._createOrGetQueuedParticleEmitterSync(): ParticleEmitter has no id!");return this._createOrGetQueuedSync(this._queuedParticleEmitterSyncs,A.id,this._createParticleEmitterSync,A,Q)}_createPlayerSync=(A)=>({i:A.id});_createOrGetQueuedPlayerSync(A,Q){return this._createOrGetQueuedSync(this._queuedPlayerSyncs,A.id,this._createPlayerSync,A,Q)}_createSceneUISync=(A)=>({i:A.id});_createOrGetQueuedSceneUISync(A,Q){if(A.id===void 0)l.fatalError("NetworkSynchronizer._createOrGetQueuedSceneUISync(): SceneUI has no id!");return this._createOrGetQueuedSync(this._queuedSceneUISyncs,A.id,this._createSceneUISync,A,Q)}_createUISync=()=>({});_createOrGetQueuedUISync(A){return this._createOrGetQueuedSingletonSync(this._queuedUISyncs,this._createUISync,void 0,A)}_createUIDatasSync=()=>[];_createOrGetQueuedUIDatasSync(A){return this._createOrGetQueuedSingletonSync(this._queuedUIDatasSyncs,this._createUIDatasSync,void 0,A)}_createWorldSync=(A)=>({i:A.id});_createOrGetQueuedWorldSync(A,Q){if(A.id!==this._world.id)l.fatalError("NetworkSynchronizer._createOrGetQueuedWorldSync(): World does not match this network synchronizer world!");return this._createOrGetQueuedSingletonSync(this._queuedWorldSyncs,this._createWorldSync,A,Q)}_createOrGetQueuedSync(A,Q,B,Y,J){let C,X;if(J){if(X=A.perPlayer.get(J),!X)X=new bB,A.perPlayer.set(J,X);if(!this._outboundPerPlayerReliablePackets.has(J))this._outboundPerPlayerReliablePackets.set(J,[])}else X=A.broadcast;if(C=X.get(Q),C===void 0)C=B(Y),X.set(Q,C);return C}_createOrGetQueuedSingletonSync(A,Q,B,Y){let J=Y?A.perPlayer.get(Y):A.broadcast;if(J===void 0)if(J=Q(B),Y){if(A.perPlayer.set(Y,J),!this._outboundPerPlayerReliablePackets.has(Y))this._outboundPerPlayerReliablePackets.set(Y,[])}else A.broadcast=J;return J}_clearSyncQueue(A){if(A.broadcast.size>0)A.broadcast.clear();if(A.perPlayer.size>0)A.perPlayer.clear()}_clearSingletonSyncQueue(A){if(A.broadcast!==void 0)A.broadcast=void 0;if(A.perPlayer.size>0)A.perPlayer.clear()}_collectSingletonSyncToOutboundPackets(A,Q){if(A.broadcast!==void 0){let B=gQ.createPacket(Q,A.broadcast,this._world.loop.currentTick);this._outboundSharedReliablePackets.push(B);for(let Y of this._outboundPerPlayerReliablePackets.valuesArray)Y.push(B)}if(A.perPlayer.size>0)for(let[B,Y]of A.perPlayer.entries())this._outboundPerPlayerReliablePackets.get(B)?.push(gQ.createPacket(Q,Y,this._world.loop.currentTick))}_collectSyncToOutboundPackets(A,Q){if(A.broadcast.size>0){let B=gQ.createPacket(Q,A.broadcast.valuesArray,this._world.loop.currentTick);this._outboundSharedReliablePackets.push(B);for(let Y of this._outboundPerPlayerReliablePackets.valuesArray)Y.push(B)}if(A.perPlayer.size>0)for(let[B,Y]of A.perPlayer.entries())this._outboundPerPlayerReliablePackets.get(B)?.push(gQ.createPacket(Q,Y.valuesArray,this._world.loop.currentTick))}_syncPlayerCameraAttachedEntityModel(A){let Q=A.attachedToEntity,B=Q&&(A.mode===0?A.viewModelUri:Q.modelUri);if(Q&&B)this._createOrGetQueuedEntitySync(Q,A.player).m=B}}class KM{_particleEmitters=new Map;_nextParticleEmitterId=1;_world;constructor(A){this._world=A}get world(){return this._world}despawnEntityAttachedParticleEmitters(A){this.getAllEntityAttachedParticleEmitters(A).forEach((Q)=>{Q.despawn()})}getAllParticleEmitters(){return Array.from(this._particleEmitters.values())}getAllEntityAttachedParticleEmitters(A){return this.getAllParticleEmitters().filter((Q)=>Q.attachedToEntity===A)}registerParticleEmitter(A){if(A.id!==void 0)return A.id;let Q=this._nextParticleEmitterId;return this._particleEmitters.set(Q,A),this._nextParticleEmitterId++,Q}unregisterParticleEmitter(A){if(A.id===void 0)return;this._particleEmitters.delete(A.id)}}class VM{_sceneUIs=new Map;_nextSceneUIId=1;_world;constructor(A){this._world=A}get world(){return this._world}getAllSceneUIs(){return Array.from(this._sceneUIs.values())}getAllEntityAttachedSceneUIs(A){return this.getAllSceneUIs().filter((Q)=>Q.attachedToEntity===A)}getSceneUIById(A){return this._sceneUIs.get(A)}registerSceneUI(A){if(A.id!==void 0)return A.id;let Q=this._nextSceneUIId;return this._sceneUIs.set(Q,A),this._nextSceneUIId++,Q}unloadEntityAttachedSceneUIs(A){this.getAllEntityAttachedSceneUIs(A).forEach((Q)=>{Q.unload()})}unregisterSceneUI(A){if(A.id===void 0)return;this._sceneUIs.delete(A.id)}}import Ft from"fs";import wm0 from"path";import{brotliCompressSync as Cm0,brotliDecompressSync as Xm0,constants as bk,gunzipSync as Gm0,gzipSync as Wm0}from"zlib";var Qt=Object.values(w8).sort((A,Q)=>A.enumIndex-Q.enumIndex);function Fm0(A){return A<<1^A>>31}function IM(A){return A>>>1^-(A&1)}function Zm0(A,Q,B){let Y=B>>>0;while(Y>127)A[Q++]=Y&127|128,Y>>>=7;return A[Q++]=Y,Q}function HM(A,Q,B){return Zm0(A,Q,Fm0(B))}function DM(A,Q){let B=0,Y=0,J=0;do J=A[Q++],B|=(J&127)<>>0,offset:Q}}function $m0(A,Q){if(A==="none")return Q;if(A==="gzip")return Gm0(Q);return Xm0(Q)}function CSQ(A,Q,B){if(A==="none")return Q;if(A==="gzip")return Wm0(Q,{level:Math.min(9,Math.max(0,B))});return Cm0(Q,{params:{[bk.BROTLI_PARAM_MODE]:bk.BROTLI_MODE_GENERIC,[bk.BROTLI_PARAM_QUALITY]:Math.min(11,Math.max(0,B)),[bk.BROTLI_PARAM_SIZE_HINT]:Q.byteLength}})}function XSQ(A){return A!==null&&typeof A==="object"}function Um0(A){if(!A)return;if(Array.isArray(A))return A;return Object.values(A)}class eY{static isCompressedWorldMap(A){if(!XSQ(A))return!1;if(typeof A.data!=="string")return!1;if(!XSQ(A.bounds))return!1;let Q=A.bounds;return typeof Q.minX==="number"&&typeof Q.minY==="number"&&typeof Q.minZ==="number"&&typeof Q.maxX==="number"&&typeof Q.maxY==="number"&&typeof Q.maxZ==="number"}static compress(A,Q={}){let B=A.blocks??{},Y=[],J=1/0,C=1/0,X=1/0,G=-1/0,W=-1/0,F=-1/0,Z=!1;for(let N in B){let q=B[N],w=typeof q==="number"?q:q.i,P=typeof q==="number"?0:q.r??0;if(!Number.isInteger(w)||w<0||w>255)l.fatalError(`WorldMapCodec.compress(): Invalid block type id ${w} at ${N} (expected 0-255).`);if(!Number.isInteger(P)||P<0||P>=Qt.length)l.fatalError(`WorldMapCodec.compress(): Invalid block rotation index ${P} at ${N}.`);if(P!==0)Z=!0;let _=N.indexOf(","),j=N.indexOf(",",_+1),k=Number(N.slice(0,_)),T=Number(N.slice(_+1,j)),S=Number(N.slice(j+1));J=Math.min(J,k),C=Math.min(C,T),X=Math.min(X,S),G=Math.max(G,k),W=Math.max(W,T),F=Math.max(F,S),Y.push({x:k,y:T,z:S,id:w,r:P})}if(Y.length===0){let N=Buffer.allocUnsafe(4);N.writeUInt32LE(0,0);let q=Q.algorithm??"brotli",w=Q.level??9,P=CSQ(q,N,w).toString("base64");return{format:"hytopia.worldmap.compressed",codecVersion:1,version:"1.0.0",algorithm:q,data:P,bounds:{minX:0,minY:0,minZ:0,maxX:0,maxY:0,maxZ:0},blockTypes:A.blockTypes,entities:A.entities,options:{rotations:!1,useDelta:!0,useVarint:!0}}}let U=Q.includeRotations??Z;if(!U&&Z)l.fatalError("WorldMapCodec.compress(): Map contains rotated blocks but includeRotations is false.");for(let N=0;NN.y-q.y||N.x-q.x||N.z-q.z);let $=U?25:20,E=Buffer.allocUnsafe(4+Y.length*$),K=0;E.writeUInt32LE(Y.length,K),K+=4;let I=0,V=0,H=0;for(let N=0;N=Qt.length)l.fatalError(`WorldMapCodec.decodeBlockEntries(): Invalid rotation index ${I} at block ${$}.`);if(K<0||K>255)l.fatalError(`WorldMapCodec.decodeBlockEntries(): Invalid block type id ${K} at block ${$} (expected 0-255).`);let V=F+C.minX,H=Z+C.minY,D=U+C.minZ;yield{globalCoordinate:{x:V,y:H,z:D},blockTypeId:K,blockRotation:I!==0?Qt[I]:void 0}}}return W()}static decompressToWorldMap(A){let Q=Um0(A.blockTypes),B=A.entities,Y={},J=A.options?.rotations===!0;for(let C of this.decodeBlockEntries(A)){let X=`${C.globalCoordinate.x},${C.globalCoordinate.y},${C.globalCoordinate.z}`;if(!J||!C.blockRotation||C.blockRotation.enumIndex===0)Y[X]=C.blockTypeId;else Y[X]={i:C.blockTypeId,r:C.blockRotation.enumIndex}}return{blockTypes:Q,blocks:Y,entities:B}}}import{brotliCompressSync as Em0,brotliDecompressSync as Km0,constants as mk,gunzipSync as Vm0,gzipSync as Im0}from"zlib";var kV=Buffer.from("HYTCHUNK"),NM=1,_V=12;function GSQ(A){if(A==="none")return 0;if(A==="gzip")return 2;return 1}function WSQ(A){if(A===0)return"none";if(A===2)return"gzip";return"brotli"}var Hm0=Object.values(w8).sort((A,Q)=>A.enumIndex-Q.enumIndex);function ZSQ(A){return A!==null&&typeof A==="object"}function $SQ(A){return A<<1^A>>31}function Dm0(A){return A>>>1^-(A&1)}function LM(A){let Q=A>>>0,B=1;while(Q>127)B++,Q>>>=7;return B}function Bt(A){return LM($SQ(A))}function qM(A,Q,B){let Y=B>>>0;while(Y>127)A[Q++]=Y&127|128,Y>>>=7;return A[Q++]=Y,Q}function Yt(A,Q,B){return qM(A,Q,$SQ(B))}function MM(A,Q){let B=0,Y=0,J=0;do J=A[Q++],B|=(J&127)<>>0,offset:Q}}function Jt(A,Q){let B=MM(A,Q);return{value:Dm0(B.value),offset:B.offset}}function Nm0(A,Q,B){if(A==="none")return Q;if(A==="gzip")return Im0(Q,{level:Math.min(9,Math.max(0,B))});return Em0(Q,{params:{[mk.BROTLI_PARAM_MODE]:mk.BROTLI_MODE_GENERIC,[mk.BROTLI_PARAM_QUALITY]:Math.min(11,Math.max(0,B)),[mk.BROTLI_PARAM_SIZE_HINT]:Q.byteLength}})}function Lm0(A,Q){if(A==="none")return Q;if(A==="gzip")return Vm0(Q);return Km0(Q)}function Ct(A,Q){if(!Number.isSafeInteger(A))l.fatalError(`WorldMapChunkCacheCodec: ${Q} must be a safe integer.`)}function FSQ(A){if(!A)return;if(Array.isArray(A))return A;if(ZSQ(A))return Object.values(A);return}class o8{static _writeHeader(A){let Q=Buffer.allocUnsafe(_V);return kV.copy(Q,0),Q.writeUInt8(NM,8),Q.writeUInt8(GSQ(A),9),Q.writeUInt16LE(0,10),Q}static isWorldMapChunkCache(A){if(!ZSQ(A))return!1;if(typeof A.data!=="string")return!1;if(A.format==="hytopia.worldmap.chunk-cache")return!0;try{let Q=Buffer.from(A.data.slice(0,24),"base64");if(Q.byteLength<8)return!1;return Q.subarray(0,8).equals(kV)}catch{return!1}}static create(A,Q={}){let B=Q.algorithm??"brotli",Y=Q.level??6,{encoded:J}=this._encodeBody(A,{includeRotations:Q.includeRotations,sourceSha256:Q.sourceSha256}),C=this._writeHeader(B),X=Nm0(B,J,Y),G=Buffer.concat([C,X]);return{format:"hytopia.worldmap.chunk-cache",codecVersion:1,version:"1.0.0",algorithm:B,data:G.toString("base64")}}static decode(A){let Q=this._decodeFile(A),B=this._decodeMetadata(Q.body),Y=B.metadata.options?.rotations===!0,J=B.chunkCount,C=B.offset,X=this._decodeChunks(Q.body,C,J,Y);return{metadata:B.metadata,chunks:X}}static decodeMetadata(A){let Q=this._decodeFile(A);return this._decodeMetadata(Q.body).metadata}static decodeChunks(A){let Q=this._decodeFile(A),B=this._decodeMetadata(Q.body),Y=B.metadata.options?.rotations===!0;return this._decodeChunks(Q.body,B.offset,B.chunkCount,Y)}static decompressToWorldMap(A){let{metadata:Q,chunks:B}=this.decode(A),Y={},J=Q.options?.rotations===!0;for(let C of B){let X=C.originCoordinate;for(let G=0;G=c9)l.fatalError(`WorldMapChunkCacheCodec.decode(): Invalid block index ${L} (expected 0-${c9-1}).`);let z=A.readUInt8(J++),M=Hm0[z];if(!M)l.fatalError(`WorldMapChunkCacheCodec.decode(): Invalid rotation enumIndex ${z}.`);K.set(L,M)}}yield{originCoordinate:{x:W,y:F,z:Z},blocks:E,blockRotations:K}}}return C()}static _encodeBody(A,Q){let B=new Map,Y=!1,J=(I,V,H)=>{if(Ct(I.x,"block x"),Ct(I.y,"block y"),Ct(I.z,"block z"),!Number.isInteger(V)||V<0||V>255)l.fatalError(`WorldMapChunkCacheCodec: Invalid block type id ${V} (expected 0-255).`);if(!Number.isInteger(H)||H<0||H>255)l.fatalError(`WorldMapChunkCacheCodec: Invalid rotation enumIndex ${H} (expected 0-255).`);let D=MY.globalCoordinateToOriginCoordinate(I),L=`${D.x},${D.y},${D.z}`,z=B.get(L);if(!z)z={originCoordinate:D,blocks:new Uint8Array(c9),rotationsByBlockIndex:new Map},B.set(L,z);let M=MY.globalCoordinateToLocalCoordinate(I),N=MY.localCoordinateToBlockIndex(M);if(z.blocks[N]=V,H!==0)z.rotationsByBlockIndex.set(N,H),Y=!0};if(eY.isCompressedWorldMap(A))for(let I of eY.decodeBlockEntries(A))J(I.globalCoordinate,I.blockTypeId,I.blockRotation?.enumIndex??0);else if(A.blocks)for(let I in A.blocks){let V=A.blocks[I],H=typeof V==="number"?V:V.i,D=typeof V==="number"?0:V.r??0,L=I.indexOf(","),z=I.indexOf(",",L+1),M=Number(I.slice(0,L)),N=Number(I.slice(L+1,z)),q=Number(I.slice(z+1));J({x:M,y:N,z:q},H,D)}let C=Q.includeRotations??Y;if(!C&&Y)l.fatalError("WorldMapChunkCacheCodec: Map contains rotated blocks but includeRotations is false.");let X=C&&Y,G={blockTypes:FSQ(A.blockTypes),entities:A.entities,options:{rotations:X},source:Q.sourceSha256?{sha256:Q.sourceSha256}:void 0,metadata:eY.isCompressedWorldMap(A)?A.metadata:void 0,mapVersion:eY.isCompressedWorldMap(A)?A.mapVersion:void 0},W=Buffer.from(JSON.stringify(G),"utf8"),F=B.size,Z=Array.from(B.values());Z.sort((I,V)=>I.originCoordinate.y-V.originCoordinate.y||I.originCoordinate.x-V.originCoordinate.x||I.originCoordinate.z-V.originCoordinate.z);let U=0;for(let I of Z)if(U+=Bt(I.originCoordinate.x),U+=Bt(I.originCoordinate.y),U+=Bt(I.originCoordinate.z),U+=c9,X){let V=Array.from(I.rotationsByBlockIndex.entries());U+=LM(V.length);for(let[H]of V)U+=LM(H),U+=1}let $=LM(W.byteLength)+W.byteLength+LM(F)+U,E=Buffer.allocUnsafe($),K=0;K=qM(E,K,W.byteLength),W.copy(E,K),K+=W.byteLength,K=qM(E,K,F);for(let I of Z)if(K=Yt(E,K,I.originCoordinate.x),K=Yt(E,K,I.originCoordinate.y),K=Yt(E,K,I.originCoordinate.z),E.set(I.blocks,K),K+=c9,X){let V=Array.from(I.rotationsByBlockIndex.entries());V.sort((H,D)=>H[0]-D[0]),K=qM(E,K,V.length);for(let[H,D]of V)K=qM(E,K,H),E.writeUInt8(D,K++)}return{encoded:E,hasRotations:X}}}import IF from"fs";import qm0 from"path";import Mm0 from"crypto";function zm0(A){let Q=Mm0.createHash("sha256");return Q.update(A),Q.digest("hex")}function Wt(A){return A!==null&&typeof A==="object"}function Xt(A){return Wt(A)&&Object.keys(A).length>0}function Gt(A){if(!A)return!1;if(Array.isArray(A))return A.length>0;if(Wt(A))return Object.keys(A).length>0;return!1}function Rm0(A){if(!IF.existsSync(A))return;try{return JSON.parse(IF.readFileSync(A,"utf-8"))}catch{return}}function USQ(A){if(eY.isCompressedWorldMap(A))return{blockTypes:A.blockTypes,entities:A.entities};if(!Wt(A))return{};return{blockTypes:A.blockTypes,entities:A.entities}}class vV{static load(A,Q={}){let B=Q.preferChunkCache??!0,Y=qm0.resolve(process.cwd(),A),J=Y.endsWith(".chunks.bin"),C=Q.warnings??"auto",X=C==="always"||C==="auto"&&process.env.NODE_ENV!=="production",G=(Z)=>{if(X)l.warning(Z)};if(B){if(J&&!IF.existsSync(Y))l.fatalError(`WorldMapFileLoader.load(): Chunk cache file not found at ${Y}.`);let Z=Y;if(Y.endsWith(".compressed.json"))Z=Y.slice(0,-16);else if(Y.endsWith(".chunks.bin"))Z=Y.slice(0,-11);else if(Y.endsWith(".json"))Z=Y.slice(0,-5);let U=Z+".chunks.bin";if(IF.existsSync(U)){let $=IF.readFileSync(U);if($.byteLength>=_V&&$.subarray(0,8).equals(kV)&&$.readUInt8(8)===NM){let K={data:$.toString("base64")};try{let I=o8.decodeMetadata(K),V=I.source?.sha256,H=!Xt(I.entities),D=!Gt(I.blockTypes),L=H||D,z,M,N,q,w=()=>{let j=H&&z,k=D&&N;if(!j&&!k)return K;if(j&&M)G(`WorldMapFileLoader.load(): Chunk cache at ${U} missing entities; using entities overlay from ${M}.`);if(k&&q)G(`WorldMapFileLoader.load(): Chunk cache at ${U} missing blockTypes; using blockTypes overlay from ${q}.`);return{...K,...j?{entities:z}:{},...k?{blockTypes:N}:{}}},P=(j)=>{if(!L)return;let k=Rm0(j);if(!k)return;let T=USQ(k);if(!z&&Xt(T.entities))z=T.entities,M=j;if(!N&&Gt(T.blockTypes))N=T.blockTypes,q=j},_=(j,k)=>{if(!L)return;try{let T=JSON.parse(j),S=USQ(T);if(!z&&Xt(S.entities))z=S.entities,M=k;if(!N&&Gt(S.blockTypes))N=S.blockTypes,q=k}catch{}};if(V){let j=Y.endsWith(".compressed.json")?Y:Z+".compressed.json";if(IF.existsSync(j)){let k=IF.readFileSync(j,"utf-8");if(zm0(k)===V)return _(k,j),w();G(`WorldMapFileLoader.load(): Chunk cache sha256 mismatch for ${U}; ignoring cache and falling back to JSON.`)}else return G(`WorldMapFileLoader.load(): Chunk cache has source sha256, but ${j} is missing; using cache without validation.`),P(Z+".compressed.json"),P(Z+".json"),w()}else return P(Z+".compressed.json"),P(Z+".json"),w()}catch{if(J)l.fatalError(`WorldMapFileLoader.load(): Failed to decode chunk cache metadata for ${U}.`);G(`WorldMapFileLoader.load(): Failed to decode chunk cache metadata for ${U}; ignoring cache and falling back to JSON.`)}}else if(J)l.fatalError(`WorldMapFileLoader.load(): Invalid chunk cache at ${U}.`)}}if(J)l.fatalError(`WorldMapFileLoader.load(): Failed to load chunk cache at ${Y}.`);let W=IF.readFileSync(Y,"utf-8"),F=JSON.parse(W);if(o8.isWorldMapChunkCache(F))return F;if(eY.isCompressedWorldMap(F))return F;if(F&&typeof F==="object")return F;l.fatalError(`WorldMapFileLoader.load(): Unsupported map file format at ${Y}.`)}}var At;(($)=>{$.SET_AMBIENT_LIGHT_COLOR="WORLD.SET_AMBIENT_LIGHT_COLOR";$.SET_AMBIENT_LIGHT_INTENSITY="WORLD.SET_AMBIENT_LIGHT_INTENSITY";$.SET_DIRECTIONAL_LIGHT_COLOR="WORLD.SET_DIRECTIONAL_LIGHT_COLOR";$.SET_DIRECTIONAL_LIGHT_INTENSITY="WORLD.SET_DIRECTIONAL_LIGHT_INTENSITY";$.SET_DIRECTIONAL_LIGHT_POSITION="WORLD.SET_DIRECTIONAL_LIGHT_POSITION";$.SET_FOG_COLOR="WORLD.SET_FOG_COLOR";$.SET_FOG_FAR="WORLD.SET_FOG_FAR";$.SET_FOG_NEAR="WORLD.SET_FOG_NEAR";$.SET_SKYBOX_INTENSITY="WORLD.SET_SKYBOX_INTENSITY";$.SET_SKYBOX_URI="WORLD.SET_SKYBOX_URI";$.START="WORLD.START";$.STOP="WORLD.STOP"})(At||={});class zM extends BQ{_id;_ambientLightColor;_ambientLightIntensity;_audioManager;_blockTypeRegistry;_chatManager;_chunkLattice;_directionalLightColor;_directionalLightIntensity;_directionalLightPosition;_entityManager;_fogColor;_fogFar;_fogNear;_loop;_name;_networkSynchronizer;_particleEmitterManager;_sceneUIManager;_simulation;_skyboxIntensity;_skyboxUri;_tag;constructor(A){super();if(this._id=A.id,this._ambientLightColor=A.ambientLightColor??{r:255,g:255,b:255},this._ambientLightIntensity=A.ambientLightIntensity??1,this._directionalLightColor=A.directionalLightColor??{r:255,g:255,b:255},this._directionalLightIntensity=A.directionalLightIntensity??3,this._directionalLightPosition=A.directionalLightPosition??{x:100,y:150,z:100},this._fogColor=A.fogColor,this._fogFar=A.fogFar??550,this._fogNear=A.fogNear??500,this._name=A.name,this._skyboxIntensity=A.skyboxIntensity??1,this._skyboxUri=A.skyboxUri,this._tag=A.tag,this._audioManager=new UD(this),this._blockTypeRegistry=new ED(this),this._chatManager=new eD(this),this._chunkLattice=new QN(this),this._entityManager=new JN(this),this._loop=new EM(this,A.tickRate),this._networkSynchronizer=new fk(this),this._particleEmitterManager=new KM(this),this._sceneUIManager=new VM(this),this._simulation=new UM(this,A.tickRate,A.gravity),A.map)this.loadMap(A.map)}get id(){return this._id}get ambientLightColor(){return this._ambientLightColor}get ambientLightIntensity(){return this._ambientLightIntensity}get blockTypeRegistry(){return this._blockTypeRegistry}get chatManager(){return this._chatManager}get chunkLattice(){return this._chunkLattice}get directionalLightColor(){return this._directionalLightColor}get directionalLightIntensity(){return this._directionalLightIntensity}get directionalLightPosition(){return this._directionalLightPosition}get entityManager(){return this._entityManager}get fogColor(){return this._fogColor}get fogFar(){return this._fogFar}get fogNear(){return this._fogNear}get loop(){return this._loop}get name(){return this._name}get networkSynchronizer(){return this._networkSynchronizer}get particleEmitterManager(){return this._particleEmitterManager}get sceneUIManager(){return this._sceneUIManager}get simulation(){return this._simulation}get skyboxIntensity(){return this._skyboxIntensity}get skyboxUri(){return this._skyboxUri}get audioManager(){return this._audioManager}get tag(){return this._tag}loadMap(A,Q={}){if(typeof A==="string")A=vV.load(A);if((Q.preferMapArtifacts??!0)&&!eY.isCompressedWorldMap(A)&&!o8.isWorldMapChunkCache(A)&&typeof A==="object"&&A!==null&&"blocks"in A){let C=wm0.resolve(process.cwd(),"assets/map"),X=C+".chunks.bin",G=C+".compressed.json",W=C+".json";if(Ft.existsSync(W)&&(Ft.existsSync(X)||Ft.existsSync(G)))A=vV.load("assets/map.json")}if(eY.isCompressedWorldMap(A))A=eY.decompressToWorldMap(A);else if(o8.isWorldMapChunkCache(A))A=o8.decompressToWorldMap(A);this.chunkLattice.clear();let Y=Object.values(w8).sort((C,X)=>C.enumIndex-X.enumIndex);if(A.blockTypes)for(let C of A.blockTypes)this.blockTypeRegistry.registerGenericBlockType({id:C.id,isLiquid:C.isLiquid,lightLevel:C.lightLevel,name:C.name,textureUri:C.textureUri,customColliderOptions:C.customColliderOptions});if(A.blocks){let C=A.blocks,X=function*(){for(let G in C){let W=C[G],F=typeof W==="number"?W:W.i,Z=typeof W==="number"?void 0:W.r,U=G.indexOf(","),$=G.indexOf(",",U+1);yield{globalCoordinate:{x:Number(G.slice(0,U)),y:Number(G.slice(U+1,$)),z:Number(G.slice($+1))},blockTypeId:F,blockRotation:Z!==void 0?Y[Z]:void 0}}};this.chunkLattice.initializeBlockEntries(X())}if((Q.spawnEntities??!0)&&A.entities)for(let C in A.entities){let X=A.entities[C],G=C.indexOf(","),W=C.indexOf(",",G+1),F=Number(C.slice(0,G)),Z=Number(C.slice(G+1,W)),U=Number(C.slice(W+1));new X0({isEnvironmental:!0,...X}).spawn(this,{x:F,y:Z,z:U})}}setAmbientLightColor(A){this._ambientLightColor=A,this.emit("WORLD.SET_AMBIENT_LIGHT_COLOR",{world:this,color:A})}setAmbientLightIntensity(A){this._ambientLightIntensity=A,this.emit("WORLD.SET_AMBIENT_LIGHT_INTENSITY",{world:this,intensity:A})}setDirectionalLightColor(A){this._directionalLightColor=A,this.emit("WORLD.SET_DIRECTIONAL_LIGHT_COLOR",{world:this,color:A})}setDirectionalLightIntensity(A){this._directionalLightIntensity=A,this.emit("WORLD.SET_DIRECTIONAL_LIGHT_INTENSITY",{world:this,intensity:A})}setDirectionalLightPosition(A){this._directionalLightPosition=A,this.emit("WORLD.SET_DIRECTIONAL_LIGHT_POSITION",{world:this,position:A})}setFogColor(A){this._fogColor=A,this.emit("WORLD.SET_FOG_COLOR",{world:this,color:A})}setFogFar(A){this._fogFar=A,this.emit("WORLD.SET_FOG_FAR",{world:this,far:A})}setFogNear(A){this._fogNear=A,this.emit("WORLD.SET_FOG_NEAR",{world:this,near:A})}setSkyboxIntensity(A){this._skyboxIntensity=A,this.emit("WORLD.SET_SKYBOX_INTENSITY",{world:this,intensity:A})}setSkyboxUri(A){this._skyboxUri=A,this.emit("WORLD.SET_SKYBOX_URI",{world:this,uri:A})}start(){if(this._loop.isStarted)return;this._loop.start(),this.emit("WORLD.START",{world:this,startedAtMs:Date.now()})}stop(){if(!this._loop.isStarted)return;this._loop.stop(),this.emit("WORLD.STOP",{world:this,stoppedAtMs:Date.now()})}serialize(){return GQ.serializeWorld(this)}}var ESQ;((Q)=>Q.WORLD_CREATED="WORLD_MANAGER.WORLD_CREATED")(ESQ||={});class F0{static instance=new F0;_defaultWorld;_nextWorldId=1;_worlds=new Map;createWorld(A){let Q=new zM({...A,id:this._nextWorldId++});return Q.start(),this._worlds.set(Q.id,Q),BQ.globalInstance.emit("WORLD_MANAGER.WORLD_CREATED",{world:Q}),Q}getAllWorlds(){return Array.from(this._worlds.values())}getDefaultWorld(){return this._defaultWorld??=this.createWorld({name:"Default World",skyboxUri:"skyboxes/partly-cloudy"}),this._defaultWorld}getWorldsByTag(A){let Q=[];return this._worlds.forEach((B)=>{if(B.tag===A)Q.push(B)}),Q}getWorld(A){return this._worlds.get(A)}setDefaultWorld(A){this._defaultWorld=A}}function Zt(A,Q,B){return Math.max(Q,Math.min(B,Math.floor(A)))}function jm0(A,Q){if(A.blockTypeRegistry.getAllBlockTypes().some((Y)=>Y.id===Q))return;A.blockTypeRegistry.registerGenericBlockType({id:Q,name:`perf-block-${Q}`,textureUri:"blocks/stone.png"})}function Om0(A){if(typeof A==="number"){let Q=F0.instance.getWorld(Math.floor(A));if(Q)return Q}return F0.instance.getDefaultWorld()}function Pm0(A){return Math.max(1,Math.ceil(Math.sqrt(A)))}function Tm0(A,Q,B){if(B<=0)return;if(B>=c9){A.fill(Q);return}A.fill(0),A.fill(Q,0,B)}function Sm0(A,Q,B,Y){A.fill(0);let J=d9*B*d9,C=Math.max(0,Math.min(J,Y));if(C===0)return;let X=C;for(let G=0;G0;G++){let W=G<0;F++){let Z=W+(F<{if(Y+=C.length,Y>km0){mB(Q,413,{ok:!1,error:"Request body too large"}),A.destroy();return}J.push(C)}),A.on("error",()=>{mB(Q,400,{ok:!1,error:"Failed to read request body"})}),A.on("end",()=>{try{let C=Buffer.concat(J).toString("utf-8"),X=C.length>0?JSON.parse(C):{};B(X)}catch{mB(Q,400,{ok:!1,error:"Invalid JSON body"})}})}function DSQ(A){let Q=KSQ.resolve("assets"),B=A.trim().replace(/^\/+/,"").replace(/^assets[\\/]/,""),Y=KSQ.resolve(Q,B);if(!Y.startsWith(Q))return null;return Y}function ym0(A){switch((A??"").toLowerCase()){case"":case"idle":return new GE;case"random_walk":case"randomwalk":return new WD;case"chase":return new FD;case"interact":return new ZD;default:return null}}function gm0(A,Q){let B=F0.instance.getDefaultWorld(),Y=Math.max(0,Math.floor(A)),J={x:0,y:10,z:0},C=Math.ceil(Math.sqrt(Y))*2;for(let X=0;X=0&&Y0){let X=DSQ(Q);if(!X)throw Error("Invalid mapPath");if(!lk.existsSync(X))throw Error(`Map not found: ${Q}`);J=lk.readFileSync(X,"utf-8")}let C=[];for(let X=0;X0)F0.instance.setDefaultWorld(C[0]);return{created:C.length,defaultWorldId:F0.instance.getDefaultWorld().id}}function im0(A){let Q=Math.floor(A),B=F0.instance.getWorld(Q);if(!B)throw Error(`World not found: ${Q}`);return F0.instance.setDefaultWorld(B),{ok:!0,defaultWorldId:B.id}}function nm0(){let A=F0.instance.getDefaultWorld();LSQ(),G9.instance.despawnAll();for(let Q of A.entityManager.getEntitiesByTagSubstring(yV))Q.despawn();return A.chunkLattice.clear(),{ok:!0}}class RM{static enableIfConfigured(){if(!VSQ())return;try{if(!O0.instance.isEnabled)O0.instance.enable({snapshotIntervalMs:0});if(!$Y.instance.isEnabled)$Y.instance.enable()}catch(A){l.warning(`PerfHarness.enableIfConfigured(): Failed to enable perf tools. Error: ${String(A)}`)}}static handleWebRequest(A,Q){if(!VSQ())return!1;let B=A.url?.split("?")[0]??"/";if(!B.startsWith(`${dk}/`))return!1;if(!_m0(A))return mB(Q,401,{ok:!1,error:"Unauthorized"}),!0;let Y=A.method??"GET";if(Y==="GET"&&B===`${dk}/snapshot`){let J=O0.instance.getSnapshot(),C=$Y.instance.isEnabled?$Y.instance.getSnapshot():void 0,X=F0.instance.getDefaultWorld();return mB(Q,200,{...J,timestamp:Date.now(),players:dJ.instance.playerCount,bots:G9.instance.botCount,worlds:{count:F0.instance.getAllWorlds().length,defaultWorldId:X.id},world:{id:X.id,chunkCount:X.chunkLattice.chunkCount,entityCount:X.entityManager.entityCount},blockChurn:{running:Kt.isRunning},network:C}),!0}if(Y==="POST"&&B===`${dk}/reset`)return O0.instance.resetStats(),$Y.instance.reset(),mB(Q,200,{ok:!0}),!0;if(Y==="POST"&&B===`${dk}/action`)return vm0(A,Q,(J)=>{try{let C=J;switch(C.type){case"spawn_bots":{if(typeof C.count!=="number")return mB(Q,400,{ok:!1,error:'"count" is required'});let X=gm0(C.count,typeof C.behavior==="string"?C.behavior:void 0);mB(Q,200,{ok:!0,result:X});return}case"despawn_bots":{let X=xm0(typeof C.count==="number"?C.count:void 0);mB(Q,200,{ok:!0,result:X});return}case"load_map":{if(typeof C.mapPath!=="string")return mB(Q,400,{ok:!1,error:'"mapPath" is required'});let X=fm0(C.mapPath,typeof C.worldId==="number"?C.worldId:void 0);mB(Q,200,{ok:!0,result:X});return}case"generate_blocks":{if(typeof C.blockCount!=="number")return mB(Q,400,{ok:!1,error:'"blockCount" is required'});if(typeof C.blockTypeId!=="number")return mB(Q,400,{ok:!1,error:'"blockTypeId" is required'});let X=bm0(C.blockCount,C.blockTypeId,typeof C.worldId==="number"?C.worldId:void 0,C.layout==="dense"||C.layout==="slab"?C.layout:void 0,typeof C.slabHeight==="number"?C.slabHeight:void 0,Vt(C.origin),typeof C.clear==="boolean"?C.clear:void 0);mB(Q,200,{ok:!0,result:X});return}case"spawn_entities":{if(typeof C.count!=="number")return mB(Q,400,{ok:!1,error:'"count" is required'});let X=mm0(C.count,C.kind==="model"||C.kind==="block"?C.kind:void 0,typeof C.options==="object"&&C.options?C.options:void 0,typeof C.tag==="string"?C.tag:void 0);mB(Q,200,{ok:!0,result:X});return}case"despawn_entities":{let X=um0(typeof C.tag==="string"?C.tag:void 0);mB(Q,200,{ok:!0,result:X});return}case"start_block_churn":{if(typeof C.blocksPerTick!=="number")return mB(Q,400,{ok:!1,error:'"blocksPerTick" is required'});if(typeof C.blockTypeId!=="number")return mB(Q,400,{ok:!1,error:'"blockTypeId" is required'});let X=lm0(C.blocksPerTick,C.blockTypeId,C.mode,C.min,C.max);mB(Q,200,{ok:!0,result:X});return}case"stop_block_churn":{let X=LSQ();mB(Q,200,{ok:!0,result:X});return}case"create_worlds":{if(typeof C.count!=="number")return mB(Q,400,{ok:!1,error:'"count" is required'});let X=pm0(C.count,typeof C.mapPath==="string"?C.mapPath:void 0,typeof C.setDefault==="boolean"?C.setDefault:void 0);mB(Q,200,{ok:!0,result:X});return}case"set_default_world":{if(typeof C.worldId!=="number")return mB(Q,400,{ok:!1,error:'"worldId" is required'});let X=im0(C.worldId);mB(Q,200,{ok:!0,result:X});return}case"clear_world":{let X=nm0();mB(Q,200,{ok:!0,result:X});return}case"reset":{O0.instance.resetStats(),$Y.instance.reset(),mB(Q,200,{ok:!0});return}default:mB(Q,400,{ok:!1,error:`Unsupported action: ${String(C.type)}`})}}catch(C){mB(Q,500,{ok:!1,error:C.message})}}),!0;return mB(Q,404,{ok:!1,error:"Not found"}),!0}}var pk=`-----BEGIN CERTIFICATE----- MIIGBzCCBO+gAwIBAgIQA9LHaXW2UWQvBpWa4wqL9DANBgkqhkiG9w0BAQsFADA8 MQswCQYDVQQGEwJVUzEPMA0GA1UEChMGQW1hem9uMRwwGgYDVQQDExNBbWF6b24g UlNBIDIwNDggTTAxMB4XDTI1MTEyMDAwMDAwMFoXDTI2MTIxOTIzNTk1OVowIzEh @@ -400,4 +400,4 @@ wzUfQXDpZndkqxHilERgvPXLEsTTCMF/W+C8gsO9AoGAZWt+CU6zQhqMBB5MMGZf UE5WUS/oOd4jHBqwVxBTLOAPlmnQSp1uiTu2K0NrnnvZ6Zi/+tIsjbtxhomeOmnH +wsk9n+Bif4P7VTvwqc9FY4Ya79PEJK+J/xx/mldUEz3R63RiRXZAaDddO7yCQFX W8eeuIMLKU6dSq0yu22+nyU= ------END PRIVATE KEY-----`;so(new no({connections:50,pipelining:1,keepAliveTimeout:30000,keepAliveMaxTimeout:60000,connect:{timeout:1e4},headersTimeout:15000,bodyTimeout:30000}));var nk=process.env.PORT??8080,Ht="__DEV_SDK_VERSION__",Dt;((J)=>{J.READY="WEBSERVER.READY";J.STOPPED="WEBSERVER.STOPPED";J.ERROR="WEBSERVER.ERROR";J.UPGRADE="WEBSERVER.UPGRADE"})(Dt||={});var rm0={"access-control-allow-origin":"*"},am0={".html":"text/html",".css":"text/css",".js":"text/javascript",".mjs":"text/javascript",".json":"application/json",".gltf":"model/gltf+json",".glb":"model/gltf-binary",".png":"image/png",".jpg":"image/jpeg",".jpeg":"image/jpeg",".webp":"image/webp",".gif":"image/gif",".svg":"image/svg+xml",".ico":"image/x-icon",".ktx2":"image/ktx2",".mp3":"audio/mpeg",".ogg":"audio/ogg",".wav":"audio/wav",".mp4":"video/mp4",".webm":"video/webm",".woff":"font/woff",".woff2":"font/woff2",".ttf":"font/ttf",".bin":"application/octet-stream",".wasm":"application/wasm"};class gV extends BQ{static instance=new gV;_server;_assetCache=new Map;_assetDirs=[];constructor(){super();this._assetDirs.push(It.resolve("assets"));let A=PY.assetsLibraryPath;if(A)this._assetDirs.push(A)}start(){if(this._server)return l.warning("WebServer.start(): already started");RM.enableIfConfigured(),this._server=sm0.createSecureServer({key:ik,cert:pk,allowHTTP1:!0}),this._server.on("request",this._onRequest),this._server.on("upgrade",this._onUpgrade),this._server.on("error",this._onError),this._server.on("close",this._onStopped),this._server.listen(nk,this._onStarted),console.info(`WebServer.start(): Server running on port ${nk}`)}stop(){if(!this._server)return l.warning("WebServer.stop(): not started"),Promise.resolve(!1);return new Promise((A,Q)=>{this._server.close((B)=>B?Q(B):A(!0))})}_onStarted=()=>this.emitWithGlobal("WEBSERVER.READY",{});_onStopped=()=>this.emitWithGlobal("WEBSERVER.STOPPED",{});_onError=(A)=>{l.error(`WebServer._onError(): ${A.message}`),this.emitWithGlobal("WEBSERVER.ERROR",{error:A})};_onRequest=(A,Q)=>{Q.on("error",()=>{});let B=A.url||"/",J=(A.method||"GET")==="HEAD",C=(G,W={})=>{Q.writeHead(G,{...W,...rm0})};if(B==="/"){C(200,{"content-type":"application/json"}),Q.end(!J?JSON.stringify({status:"OK",version:Ht,runtime:"node",playerCount:dJ.instance.playerCount}):void 0);return}if(RM.handleWebRequest(A,Q))return;let X=decodeURIComponent(B.split("?")[0]);if(X.includes("..")){C(400),Q.end();return}for(let G of this._assetDirs){let W=It.join(G,X);if(!W.startsWith(G))continue;let F=PY.assetsLibraryPath;if(F&&W.startsWith(F)&&!B.includes("noSync"))PY.instance.syncAsset(W);let Z=this._assetCache.get(W);if(!Z)try{let E=qSQ.statSync(W);if(!E.isFile())continue;Z={size:E.size,etag:`"${E.mtimeMs.toString(36)}-${E.size.toString(36)}"`},this._assetCache.set(W,Z)}catch{continue}if(A.headers["if-none-match"]===Z.etag){C(304),Q.end();return}let U={"content-type":am0[It.extname(W).toLowerCase()]||"application/octet-stream","content-length":Z.size,etag:Z.etag,"cache-control":"public, max-age=0, must-revalidate"};if(J){C(200,U),Q.end();return}C(200,U);let $=qSQ.createReadStream(W);Q.on("close",()=>$.destroy()),$.on("error",()=>Q.destroy()),$.pipe(Q);return}C(404),Q.end()};_onUpgrade=(A,Q,B)=>{this.emitWithGlobal("WEBSERVER.UPGRADE",{req:A,socket:Q,head:B})}}var E4;((I)=>{I.BUILD_PACKETS="build_packets";I.ENTITIES_EMIT_UPDATES="entities_emit_updates";I.ENTITIES_TICK="entities_tick";I.NETWORK_SYNCHRONIZE="network_synchronize";I.NETWORK_SYNCHRONIZE_CLEANUP="network_synchronize_cleanup";I.PHYSICS_CLEANUP="physics_cleanup";I.PHYSICS_STEP="physics_step";I.SEND_ALL_PACKETS="send_all_packets";I.SEND_PACKETS="send_packets";I.SERIALIZE_FREE_BUFFERS="serialize_free_buffers";I.SERIALIZE_PACKETS="serialize_packets";I.SERIALIZE_PACKETS_ENCODE="serialize_packets_encode";I.SIMULATION_STEP="simulation_step";I.TICKER_TICK="ticker_tick";I.WORLD_TICK="world_tick"})(E4||={});class AY{static getProcessStats(A=!1){let Q=process.memoryUsage(),B={jsHeapSizeMb:{value:Q.heapUsed/1024/1024,unit:"megabyte"},jsHeapCapacityMb:{value:Q.heapTotal/1024/1024,unit:"megabyte"},jsHeapUsagePercent:{value:Q.heapUsed/Q.heapTotal,unit:"percent"},processHeapSizeMb:{value:Q.heapUsed/1024/1024,unit:"megabyte"},rssSizeMb:{value:Q.rss/1024/1024,unit:"megabyte"}};if(A)return B;return Object.fromEntries(Object.entries(B).map(([Y,J])=>[Y,J.value]))}static initializeSentry(A,Q=50){if(cZ())return;AS({dsn:A,release:Ht,environment:process.env.NODE_ENV||"development",tracesSampleRate:1,initialScope:{tags:{gameId:process.env.HYTOPIA_GAME_ID??"unknown",gameSlug:process.env.HYTOPIA_GAME_SLUG??"unknown",lobbyId:process.env.HYTOPIA_LOBBY_ID??"unknown",region:process.env.REGION??"unknown"}},beforeSend:(B)=>{return B.extra=AY.getProcessStats(),B},beforeSendTransaction:(B)=>{if(B.contexts?.trace?.op==="ticker_tick"){let J=B?.start_timestamp,C=B?.timestamp;if(!J||!C)return null;if((C-J)*1000>Q)return B.measurements=AY.getProcessStats(!0),B}return null}})}static startSpan(A,Q){let B=O0.instance;if(B.isEnabled){if(cZ())return B.measure(A.operation,()=>b8({attributes:A.attributes,name:A.operation,op:A.operation},Q));return B.measure(A.operation,()=>Q())}if(cZ())return b8({attributes:A.attributes,name:A.operation,op:A.operation},Q);return Q()}static sentry(){return Qr}}var tm0=30000;class q1 extends BQ{static _cachedPacketsSerializedBuffer=new Map;_closeTimeout=null;_isDuplicate=!1;_ws;_wsBinding=!1;_wt;_wtBinding=!1;_wtReliableReader;_wtReliableWriter;_wtUnreliableReader;_wtUnreliableWriter;id;initialConnectionParams;constructor(A,Q,B,Y){super();this.id=pHA(),this.initialConnectionParams=B,this.onPacket(gQ.PacketId.HEARTBEAT,this._onHeartbeatPacket);let J=()=>{BQ.globalInstance.emit("CONNECTION.OPENED",{connection:this,session:Y})};if(A)this.bindWs(A),J();else if(Q)this.bindWt(Q).then(J).catch((C)=>{this._onClose(),l.error(`Connection.constructor(): Failed to bind WebTransport. Error: ${C}`)})}get isDuplicate(){return this._isDuplicate}static clearCachedPacketsSerializedBuffers(){if(q1._cachedPacketsSerializedBuffer.size>0)q1._cachedPacketsSerializedBuffer.clear()}static serializePackets(A){for(let B of A)if(!gQ.isValidPacket(B))return l.error(`Connection.serializePackets(): Invalid packet payload: ${JSON.stringify(B)}`);let Q=q1._cachedPacketsSerializedBuffer.get(A);if(Q)return Q;return AY.startSpan({operation:"serialize_packets",attributes:{packets:A.length,packetIds:A.map((B)=>B[0]).join(",")}},(B)=>{let Y=$Y.instance,J=Y.isEnabled,C=J?performance.now():0,X=vu.pack(A),G=X.byteLength>65536;if(G)X=om0(X,{level:1});if(B?.setAttribute("serializedBytes",X.byteLength),q1._cachedPacketsSerializedBuffer.set(A,X),J){if(Y.recordSerialization(performance.now()-C),G)Y.recordCompression()}return X})}bindWs(A){this._wsBinding=!0;let Q=this._handleReconnect();if(this._cleanupConnections(),this._ws=A,this._ws.binaryType="nodebuffer",this._ws.onmessage=(B)=>this._onMessage(B.data),this._ws.onclose=this._onClose,this._ws.onerror=this._onError,this._wsBinding=!1,this._signalConnectionId(),Q)this.emitWithGlobal("CONNECTION.RECONNECTED",{connection:this})}async bindWt(A){this._wtBinding=!0;let Q=this._handleReconnect();this._cleanupConnections(),A.userData.onclose=this._onClose,A.closed.catch(()=>{}).finally(()=>A.userData.onclose?.()),this._wt=A;try{await A.ready;let B=A.incomingBidirectionalStreams.getReader();try{let{value:Y}=await B.read();if(Y)this._wtReliableReader=Y.readable,this._wtReliableWriter=Y.writable.getWriter()}finally{B.releaseLock()}this._wtUnreliableReader=A.datagrams.readable,this._wtUnreliableWriter=A.datagrams.createWritable().getWriter()}catch{this._wtBinding=!1;return}if(this._wtBinding=!1,this._wt!==A)return;if((async()=>{if(!this._wtReliableReader)throw Error("Connection.bindWt(): Reliable reader not found.");let B=gQ.createPacketBufferUnframer((Y)=>{this._onMessage(Y)});for await(let Y of this._wtReliableReader){if(A!==this._wt)return;B(Y)}})().catch(()=>{try{A?.close()}catch{}}),(async()=>{if(!this._wtUnreliableReader)throw Error("Connection.bindWt(): Unreliable reader not found.");for await(let B of this._wtUnreliableReader){if(A!==this._wt)return;this._onMessage(B)}})().catch(()=>{try{A?.close()}catch{}}),this._signalConnectionId(),Q)this.emitWithGlobal("CONNECTION.RECONNECTED",{connection:this})}disconnect(){try{this._ws?.close(),this._wt?.close()}catch(A){l.error(`Connection.disconnect(): Connection disconnect failed. Error: ${A}`)}}killDuplicateConnection(){this._isDuplicate=!0,this._cleanupConnections(),this.emitWithGlobal("CONNECTION.DISCONNECTED",{connection:this}),this._finalizeClose()}onPacket(A,Q){this.on("CONNECTION.PACKET_RECEIVED",({packet:B})=>{if(B[0]===A)Q(B)})}send(A,Q=!0){if(this._closeTimeout||this._wsBinding||this._wtBinding)return;if(!this._ws&&!this._wt)return;let B=this._ws&&this._ws.readyState===OE.default.OPEN,Y=this._wt&&this._wt.state==="connected";if(!B&&!Y)return;AY.startSpan({operation:"send_packets"},()=>{try{let J=q1.serializePackets(A);if(!J)return;let C=$Y.instance,X=C.isEnabled,G=J.byteLength;if(Y)if(Q||J.byteLength>1200){let W=gQ.framePacketBuffer(J);G=W.byteLength,this._wtReliableWriter?.write(W).catch(()=>{l.error("Connection.send(): WebTransport reliable write failed, connection closing?")})}else this._wtUnreliableWriter?.write(J).catch(()=>{l.error("Connection.send(): WebTransport unreliable write failed, connection closing?")});else this._ws.send(J);if(X){C.recordBytesSent(G);for(let W=0;W{this.send([gQ.createPacket(gQ.bidirectionalPackets.heartbeatPacketDefinition,null)],!0)};_onMessage=(A)=>{let Q=$Y.instance;if(Q.isEnabled)Q.recordBytesReceived(A.byteLength),Q.recordPacketReceived();try{let Y=this._deserialize(A);if(!Y)return;this.emitWithGlobal("CONNECTION.PACKET_RECEIVED",{connection:this,packet:Y})}catch(Y){l.error(`Connection._ws.onmessage(): Error: ${Y}`)}};_onClose=()=>{this.emitWithGlobal("CONNECTION.DISCONNECTED",{connection:this}),this._closeTimeout=setTimeout(()=>this._finalizeClose(),tm0)};_onError=(A)=>{this.emitWithGlobal("CONNECTION.ERROR",{connection:this,error:A})};_cleanupConnections(){if(this._ws)this._ws.onmessage=()=>{},this._ws.onclose=()=>{},this._ws.onerror=()=>{};if(this._wt)this._wt.userData.onclose=()=>{};this._signalKill();try{this._ws?.close()}catch{}let A=this._wt;if(A)setTimeout(()=>{try{A.close()}catch{}},50);this._ws=void 0,this._wt=void 0,this._wtReliableReader=void 0,this._wtReliableWriter=void 0,this._wtUnreliableReader=void 0,this._wtUnreliableWriter=void 0}_deserialize(A){let Q=vu.unpack(A);if(!Q||typeof Q!=="object"||typeof Q[0]!=="number")return l.error(`Connection._deserialize(): Invalid packet format. Packet: ${JSON.stringify(Q)}`);if(!gQ.isValidPacket(Q))return l.error(`Connection._deserialize(): Invalid packet payload. Packet: ${JSON.stringify(Q)}`);return Q}_finalizeClose(){this.emitWithGlobal("CONNECTION.CLOSED",{connection:this}),this.offAll()}_handleReconnect(){let A=!!this._ws||!!this._wt;if(A&&this._closeTimeout)clearTimeout(this._closeTimeout),this._closeTimeout=null;return A}_signalConnectionId(){this.send([gQ.createPacket(gQ.bidirectionalPackets.connectionPacketDefinition,{i:this.id})])}_signalKill(){this.send([gQ.createPacket(gQ.bidirectionalPackets.connectionPacketDefinition,{k:!0})])}}var MSQ;((Y)=>{Y.PLAYER_CONNECTED="PLAYER_MANAGER.PLAYER_CONNECTED";Y.PLAYER_DISCONNECTED="PLAYER_MANAGER.PLAYER_DISCONNECTED";Y.PLAYER_RECONNECTED="PLAYER_MANAGER.PLAYER_RECONNECTED"})(MSQ||={});class dJ{static instance=new dJ;worldSelectionHandler;_connectionPlayers=new Map;constructor(){BQ.globalInstance.on("CONNECTION.OPENED",({connection:A,session:Q})=>{this._onConnectionOpened(A,Q)}),BQ.globalInstance.on("CONNECTION.DISCONNECTED",({connection:A})=>{this._onConnectionDisconnected(A)}),BQ.globalInstance.on("CONNECTION.RECONNECTED",({connection:A})=>{this._onConnectionReconnected(A)}),BQ.globalInstance.on("CONNECTION.CLOSED",({connection:A})=>{this._onConnectionClosed(A)})}get playerCount(){return this._connectionPlayers.size}getConnectedPlayers(){return Array.from(this._connectionPlayers.values())}getConnectedPlayersByWorld(A){return this.getConnectedPlayers().filter((Q)=>Q.world===A)}getConnectedPlayerByUsername(A){return Array.from(this._connectionPlayers.values()).find((Q)=>{return Q.username.toLowerCase()===A.toLowerCase()})}async _onConnectionOpened(A,Q){let B=new TE(A,Q);await B.loadInitialPersistedData(),BQ.globalInstance.emit("PLAYER_MANAGER.PLAYER_CONNECTED",{player:B,connectionParams:A.initialConnectionParams});let Y=await this.worldSelectionHandler?.(B);B.joinWorld(Y??F0.instance.getDefaultWorld()),this._connectionPlayers.set(A,B),$Y.instance.setConnectedPlayers(this.playerCount)}_onConnectionDisconnected(A){let Q=this._connectionPlayers.get(A);if(Q)Q.resetInputs(),Q.camera.reset()}_onConnectionReconnected(A){let Q=this._connectionPlayers.get(A);if(Q)Q.reconnected(),BQ.globalInstance.emit("PLAYER_MANAGER.PLAYER_RECONNECTED",{player:Q});else l.warning(`PlayerManager._onConnectionReconnected(): Connection ${A.id} not in the PlayerManager._connectionPlayers map.`)}_onConnectionClosed(A){let Q=this._connectionPlayers.get(A);if(Q){if(Q.disconnect(),this._connectionPlayers.delete(A),!A.isDuplicate)s7.instance.unloadPlayerData(Q).catch((B)=>{l.warning(`PlayerManager._onConnectionClosed(): Failed to unload player data for player ${Q.id}. Error: ${B}`)});BQ.globalInstance.emit("PLAYER_MANAGER.PLAYER_DISCONNECTED",{player:Q}),$Y.instance.setConnectedPlayers(this.playerCount)}else l.warning(`PlayerManager._onConnectionClosed(): Connection ${A.id} not in the PlayerManager._connectionPlayers map.`)}}import{randomBytes as Au0}from"crypto";import{Http3Server as Qu0}from"@fails-components/webtransport";class wM extends BQ{static instance=new wM;_connectionIdConnections=new Map;_userIdConnections=new Map;_wss;_wts;constructor(){super();this._wss=new nm.default({noServer:!0}),this._wss.on("connection",(A,Q)=>this._onConnection(A,void 0,Q.connectionId,Q.connectionParams,Q.session)),this._wts=new Qu0({port:nk,host:"0.0.0.0",secret:Au0(32).toString("hex"),cert:pk,privKey:ik,defaultDatagramsReadableMode:"bytes",initialStreamFlowControlWindow:1048576,streamShouldAutoTuneReceiveWindow:!0,streamFlowControlWindowSizeLimit:6291456,initialSessionFlowControlWindow:2097152,sessionShouldAutoTuneReceiveWindow:!0,sessionFlowControlWindowSizeLimit:15728640}),this._wts.setRequestCallback(this._onWebTransportRequest),this._startWebTransport().catch((A)=>{l.error(`Socket: WebTransport server failed to start or crashed while listening for sessions. Error: ${A}`)}),BQ.globalInstance.on("WEBSERVER.UPGRADE",async({req:A,socket:Q,head:B})=>{Q.on("error",()=>{}),await this._authorizeAndConnectWebsocket(A,Q,B)})}async _authorizeAndConnectWebsocket(A,Q,B){let Y=await this._authorizeConnection(A.url??"");if(Y.error){Q.end();return}A.connectionId=Y.connectionId,A.connectionParams=Y.connectionParams,A.session=Y.session,Q.setNoDelay(!0),this._wss.handleUpgrade(A,Q,B,(J)=>{if(J.readyState!==OE.default.OPEN)J.once("open",()=>this._wss.emit("connection",J,A));else this._wss.emit("connection",J,A)})}async _authorizeConnection(A){let Q=A.includes("?")?A.slice(A.indexOf("?")):"",B=new URLSearchParams(Q),Y=B.get("connectionId")??void 0,J=B.get("sessionToken")??"";if(Y&&this._isValidConnectionId(Y))return{connectionId:Y,connectionParams:B};else{let C=await P5.instance.getPlayerSession(J);if(C?.error)return{error:C.error};else if(C)return{connectionParams:B,session:C}}return{connectionParams:B}}_isValidConnectionId(A){return this._connectionIdConnections.has(A)}_onConnection=(A,Q,B,Y,J)=>{let C=J?.user.id,X=B&&this._connectionIdConnections.get(B),G=C&&this._userIdConnections.get(C);if(!X&&G)G.killDuplicateConnection();if(X){if(A)X.bindWs(A);if(Q)X.bindWt(Q).catch((W)=>{l.error(`Socket._onConnection(): WebTransport binding failed. Error: ${W}`)})}else{let W=new q1(A,Q,Y,J);if(W.on("CONNECTION.CLOSED",()=>{if(this._connectionIdConnections.delete(W.id),C&&this._userIdConnections.get(C)===W)this._userIdConnections.delete(C)}),this._connectionIdConnections.set(W.id,W),C)this._userIdConnections.set(C,W)}};_onWebTransportRequest=async({header:A})=>{let{connectionId:Q,connectionParams:B,session:Y,error:J}=await this._authorizeConnection(A[":path"]??"");return{status:J?401:200,path:"/",userData:{connectionId:Q,connectionParams:B,session:Y}}};async _startWebTransport(){this._wts.startServer();for await(let A of this._wts.sessionStream("/"))try{let{connectionId:Q,connectionParams:B,session:Y}=A.userData;this._onConnection(void 0,A,Q,B,Y)}catch(Q){l.error(`Socket._startWebTransport(): WebTransport connection failed. Error: ${Q}`)}}}var zSQ;((B)=>{B.START="GAMESERVER.START";B.STOP="GAMESERVER.STOP"})(zSQ||={});function Bu0(A){WB.init().then(()=>{return HF.instance.blockTextureRegistry.preloadAtlas()}).then(()=>{return HF.instance.modelRegistry.preloadModels()}).then(()=>{let Q;if(A.length>0)Q=A(HF.instance.worldManager.getDefaultWorld());else Q=A();return Promise.resolve(Q)}).then(()=>{HF.instance.start()}).catch((Q)=>{l.fatalError(`Failed to initialize the game engine, exiting. Error: ${Q}`)})}class HF{static _instance;_blockTextureRegistry=h7.instance;_modelRegistry=yY.instance;_playerManager=dJ.instance;_socket=wM.instance;_worldManager=F0.instance;_webServer=gV.instance;constructor(){}static get instance(){if(!this._instance)this._instance=new HF;return this._instance}get blockTextureRegistry(){return this._blockTextureRegistry}get modelRegistry(){return this._modelRegistry}get playerManager(){return this._playerManager}get socket(){return this._socket}get webServer(){return this._webServer}get worldManager(){return this._worldManager}start(){if(BQ.globalInstance.emit("GAMESERVER.START",{startedAtMs:performance.now()}),this._webServer.start(),process.env.NODE_ENV!=="production")console.log("---"),console.log("\uD83D\uDFE2 Server Running: You can test & play it at: https://hytopia.com/play");l.enableCrashProtection()}}var AJ=qA(I4(),1);class H4 extends Float32Array{constructor(A,Q,B,Y){super([A,Q,B,Y])}get determinant(){return AJ.mat2.determinant(this)}get frobeniusNorm(){return AJ.mat2.frob(this)}static create(){let A=new H4(0,0,0,0);return AJ.mat2.identity(A),A}static fromRotation(A){let Q=H4.create();return AJ.mat2.fromRotation(Q,A),Q}static fromScaling(A){let Q=H4.create();return AJ.mat2.fromScaling(Q,A),Q}add(A){return AJ.mat2.add(this,this,A),this}adjoint(){return AJ.mat2.adjoint(this,this),this}clone(){return new H4(this[0],this[1],this[2],this[3])}copy(A){return AJ.mat2.copy(this,A),this}equals(A){return AJ.mat2.equals(this,A)}exactEquals(A){return AJ.mat2.exactEquals(this,A)}identity(){return AJ.mat2.identity(this),this}invert(){return AJ.mat2.invert(this,this),this}multiply(A){return AJ.mat2.mul(this,this,A),this}multiplyScalar(A){return AJ.mat2.multiplyScalar(this,this,A),this}rotate(A){return AJ.mat2.rotate(this,this,A),this}subtract(A){return AJ.mat2.sub(this,this,A),this}toString(){return`[${this[0]},${this[1]}][${this[2]},${this[3]}]`}transpose(){return AJ.mat2.transpose(this,this),this}}var QY=qA(I4(),1);class mX extends Float32Array{constructor(A,Q,B,Y,J,C,X,G,W){super([A,Q,B,Y,J,C,X,G,W])}get determinant(){return QY.mat3.determinant(this)}get frobeniusNorm(){return QY.mat3.frob(this)}static create(){let A=new mX(0,0,0,0,0,0,0,0,0);return QY.mat3.identity(A),A}static fromMatrix4(A){let Q=mX.create();return QY.mat3.fromMat4(Q,A),Q}static fromQuaternion(A){let Q=mX.create();return QY.mat3.fromQuat(Q,A),Q}static fromRotation(A){let Q=mX.create();return QY.mat3.fromRotation(Q,A),Q}static fromScaling(A){let Q=mX.create();return QY.mat3.fromScaling(Q,A),Q}static fromTranslation(A){let Q=mX.create();return QY.mat3.fromTranslation(Q,A),Q}add(A){return QY.mat3.add(this,this,A),this}adjoint(){return QY.mat3.adjoint(this,this),this}clone(){return new mX(this[0],this[1],this[2],this[3],this[4],this[5],this[6],this[7],this[8])}copy(A){return QY.mat3.copy(this,A),this}equals(A){return QY.mat3.equals(this,A)}exactEquals(A){return QY.mat3.exactEquals(this,A)}identity(){return QY.mat3.identity(this),this}invert(){return QY.mat3.invert(this,this),this}multiply(A){return QY.mat3.mul(this,this,A),this}multiplyScalar(A){return QY.mat3.multiplyScalar(this,this,A),this}transformVector(A){return A.transformMatrix3(this)}projection(A,Q){return QY.mat3.projection(this,A,Q),this}rotate(A){return QY.mat3.rotate(this,this,A),this}subtract(A){return QY.mat3.sub(this,this,A),this}toString(){return`[${this[0]},${this[1]},${this[2]}][${this[3]},${this[4]},${this[5]}][${this[6]},${this[7]},${this[8]}]`}transpose(){return QY.mat3.transpose(this,this),this}}var EB=qA(I4(),1);class O9 extends Float32Array{constructor(A,Q,B,Y,J,C,X,G,W,F,Z,U,$,E,K,I){super([A,Q,B,Y,J,C,X,G,W,F,Z,U,$,E,K,I])}get determinant(){return EB.mat4.determinant(this)}get frobeniusNorm(){return EB.mat4.frob(this)}static create(){let A=new O9(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);return EB.mat4.identity(A),A}static fromQuaternion(A){let Q=O9.create();return EB.mat4.fromQuat(Q,A),Q}static fromRotation(A,Q){let B=O9.create();return EB.mat4.fromRotation(B,A,Q),B}static fromRotationTranslation(A,Q){let B=O9.create();return EB.mat4.fromRotationTranslation(B,A,Q),B}static fromRotationTranslationScale(A,Q,B){let Y=O9.create();return EB.mat4.fromRotationTranslationScale(Y,A,Q,B),Y}static fromRotationTranslationScaleOrigin(A,Q,B,Y){let J=O9.create();return EB.mat4.fromRotationTranslationScaleOrigin(J,A,Q,B,Y),J}static fromScaling(A){let Q=O9.create();return EB.mat4.fromScaling(Q,A),Q}static fromTranslation(A){let Q=O9.create();return EB.mat4.fromTranslation(Q,A),Q}static fromXRotation(A){let Q=O9.create();return EB.mat4.fromXRotation(Q,A),Q}static fromYRotation(A){let Q=O9.create();return EB.mat4.fromYRotation(Q,A),Q}static fromZRotation(A){let Q=O9.create();return EB.mat4.fromZRotation(Q,A),Q}add(A){return EB.mat4.add(this,this,A),this}adjoint(){return EB.mat4.adjoint(this,this),this}clone(){return new O9(this[0],this[1],this[2],this[3],this[4],this[5],this[6],this[7],this[8],this[9],this[10],this[11],this[12],this[13],this[14],this[15])}copy(A){return EB.mat4.copy(this,A),this}equals(A){return EB.mat4.equals(this,A)}exactEquals(A){return EB.mat4.exactEquals(this,A)}frustrum(A,Q,B,Y,J,C){return EB.mat4.frustum(this,A,Q,B,Y,J,C),this}identity(){return EB.mat4.identity(this),this}invert(){return EB.mat4.invert(this,this),this}lookAt(A,Q,B){return EB.mat4.lookAt(this,A,Q,B),this}multiply(A){return EB.mat4.mul(this,this,A),this}multiplyScalar(A){return EB.mat4.multiplyScalar(this,this,A),this}orthographic(A,Q,B,Y,J,C){return EB.mat4.ortho(this,A,Q,B,Y,J,C),this}perspective(A,Q,B,Y){return EB.mat4.perspective(this,A,Q,B,Y),this}rotate(A,Q){return EB.mat4.rotate(this,this,A,Q),this}rotateX(A){return EB.mat4.rotateX(this,this,A),this}rotateY(A){return EB.mat4.rotateY(this,this,A),this}rotateZ(A){return EB.mat4.rotateZ(this,this,A),this}scale(A){return EB.mat4.scale(this,this,A),this}subtract(A){return EB.mat4.sub(this,this,A),this}targetTo(A,Q,B){return EB.mat4.targetTo(this,A,Q,B),this}toString(){return`[${this[0]},${this[1]},${this[2]},${this[3]}][${this[4]},${this[5]},${this[6]},${this[7]}][${this[8]},${this[9]},${this[10]},${this[11]}][${this[12]},${this[13]},${this[14]},${this[15]}]`}translate(A){return EB.mat4.translate(this,this,A),this}transpose(){return EB.mat4.transpose(this,this),this}}var J0=qA(I4(),1);class hV extends Float32Array{constructor(A,Q,B,Y){super([A,Q,B,Y])}get length(){return J0.quat.length(this)}get squaredLength(){return J0.quat.squaredLength(this)}get magnitude(){return J0.quat.length(this)}get squaredMagnitude(){return J0.quat.squaredLength(this)}get x(){return this[0]}set x(A){this[0]=A}get y(){return this[1]}set y(A){this[1]=A}get z(){return this[2]}set z(A){this[2]=A}get w(){return this[3]}set w(A){this[3]=A}static fromEuler(A,Q,B){let Y=J0.quat.fromEuler(new Float32Array(4),A,Q,B);return new hV(Y[0],Y[1],Y[2],Y[3])}static fromQuaternionLike(A){return new hV(A.x,A.y,A.z,A.w)}clone(){return new hV(this.x,this.y,this.z,this.w)}conjugate(){return J0.quat.conjugate(this,this),this}copy(A){return J0.quat.copy(this,A),this}dot(A){return J0.quat.dot(this,A)}exponential(){return J0.quat.exp(this,this),this}equals(A){return J0.quat.equals(this,A)}exactEquals(A){return J0.quat.exactEquals(this,A)}getAngle(A){return J0.quat.getAngle(this,A)}identity(){return J0.quat.identity(this),this}invert(){return J0.quat.invert(this,this),this}lerp(A,Q){return J0.quat.lerp(this,this,A,Q),this}logarithm(){return J0.quat.ln(this,this),this}multiply(A){return J0.quat.multiply(this,this,A),this}transformVector(A){return A.transformQuaternion(this)}normalize(){return J0.quat.normalize(this,this),this}power(A){return J0.quat.pow(this,this,A),this}randomize(){return J0.quat.random(this),this}rotateX(A){return J0.quat.rotateX(this,this,A),this}rotateY(A){return J0.quat.rotateY(this,this,A),this}rotateZ(A){return J0.quat.rotateZ(this,this,A),this}scale(A){return J0.quat.scale(this,this,A),this}setAxisAngle(A,Q){return J0.quat.setAxisAngle(this,A,Q),this}slerp(A,Q){return J0.quat.slerp(this,this,A,Q),this}toString(){return`${this.x},${this.y},${this.z},${this.w}`}}var vB=qA(I4(),1);class jM extends Float32Array{constructor(A,Q){super([A,Q])}get length(){return vB.vec2.length(this)}get squaredLength(){return vB.vec2.squaredLength(this)}get magnitude(){return vB.vec2.length(this)}get squaredMagnitude(){return vB.vec2.squaredLength(this)}get x(){return this[0]}set x(A){this[0]=A}get y(){return this[1]}set y(A){this[1]=A}static create(){return new jM(0,0)}add(A){return vB.vec2.add(this,this,A),this}angle(A){return vB.vec2.angle(this,A)}ceil(){return vB.vec2.ceil(this,this),this}clone(){return new jM(this.x,this.y)}copy(A){return vB.vec2.copy(this,A),this}distance(A){return vB.vec2.distance(this,A)}divide(A){return vB.vec2.divide(this,this,A),this}dot(A){return vB.vec2.dot(this,A)}equals(A){return vB.vec2.equals(this,A)}exactEquals(A){return vB.vec2.exactEquals(this,A)}floor(){return vB.vec2.floor(this,this),this}invert(){return vB.vec2.inverse(this,this),this}lerp(A,Q){return vB.vec2.lerp(this,this,A,Q),this}max(A){return vB.vec2.max(this,this,A),this}min(A){return vB.vec2.min(this,this,A),this}multiply(A){return vB.vec2.mul(this,this,A),this}negate(){return vB.vec2.negate(this,this),this}normalize(){return vB.vec2.normalize(this,this),this}randomize(A){return vB.vec2.random(this,A),this}rotate(A,Q){return vB.vec2.rotate(this,this,A,Q),this}round(){return vB.vec2.round(this,this),this}scale(A){return vB.vec2.scale(this,this,A),this}scaleAndAdd(A,Q){return vB.vec2.scaleAndAdd(this,this,A,Q),this}subtract(A){return vB.vec2.sub(this,this,A),this}toString(){return`${this.x},${this.y}`}transformMatrix2(A){return vB.vec2.transformMat2(this,this,A),this}transformMatrix3(A){return vB.vec2.transformMat3(this,this,A),this}transformMatrix4(A){return vB.vec2.transformMat4(this,this,A),this}zero(){return vB.vec2.zero(this),this}}var RB=qA(I4(),1);class xV extends Float32Array{constructor(A,Q,B){super([A,Q,B])}get length(){return RB.vec3.length(this)}get squaredLength(){return RB.vec3.squaredLength(this)}get magnitude(){return RB.vec3.length(this)}get squaredMagnitude(){return RB.vec3.squaredLength(this)}get x(){return this[0]}set x(A){this[0]=A}get y(){return this[1]}set y(A){this[1]=A}get z(){return this[2]}set z(A){this[2]=A}static create(){return new xV(0,0,0)}static fromVector3Like(A){return new xV(A.x,A.y,A.z)}add(A){return RB.vec3.add(this,this,A),this}ceil(){return RB.vec3.ceil(this,this),this}clone(){return new xV(this.x,this.y,this.z)}copy(A){return RB.vec3.copy(this,A),this}cross(A){return RB.vec3.cross(this,this,A),this}distance(A){return RB.vec3.distance(this,A)}divide(A){return RB.vec3.div(this,this,A),this}dot(A){return RB.vec3.dot(this,A)}equals(A){return RB.vec3.equals(this,A)}exactEquals(A){return RB.vec3.exactEquals(this,A)}floor(){return RB.vec3.floor(this,this),this}invert(){return RB.vec3.inverse(this,this),this}lerp(A,Q){return RB.vec3.lerp(this,this,A,Q),this}max(A){return RB.vec3.max(this,this,A),this}min(A){return RB.vec3.min(this,this,A),this}multiply(A){return RB.vec3.mul(this,this,A),this}negate(){return RB.vec3.negate(this,this),this}normalize(){return RB.vec3.normalize(this,this),this}randomize(A){return RB.vec3.random(this,A),this}rotateX(A,Q){return RB.vec3.rotateX(this,this,A,Q),this}rotateY(A,Q){return RB.vec3.rotateY(this,this,A,Q),this}rotateZ(A,Q){return RB.vec3.rotateZ(this,this,A,Q),this}round(){return RB.vec3.round(this,this),this}scale(A){return RB.vec3.scale(this,this,A),this}scaleAndAdd(A,Q){return RB.vec3.scaleAndAdd(this,this,A,Q),this}subtract(A){return RB.vec3.sub(this,this,A),this}toString(){return`${this.x},${this.y},${this.z}`}transformMatrix3(A){return RB.vec3.transformMat3(this,this,A),this}transformMatrix4(A){return RB.vec3.transformMat4(this,this,A),this}transformQuaternion(A){return RB.vec3.transformQuat(this,this,A),this}zero(){return RB.vec3.zero(this),this}}function W_Q(A){return function(Q,B,Y){let J=Y.value;if(typeof J!=="function")return Y;let C=Q.constructor?.name??"Unknown",X=A??`${C}.${String(B)}`,G=J,W=G.constructor.name==="AsyncFunction",F=function(...Z){if(W)return O0.instance.measureAsync(X,()=>G.apply(this,Z));return O0.instance.measure(X,()=>G.apply(this,Z))};return Y.value=F,Y}}function De0(A){return function(Q){let B=Q.prototype;if(!B)return Q;let Y=A??Q.name;for(let J of Object.getOwnPropertyNames(B)){if(J==="constructor")continue;let C=Object.getOwnPropertyDescriptor(B,J);if(!C)continue;if(typeof C.value!=="function")continue;let G=C;W_Q(`${Y}.${J}`)(B,J,G),Object.defineProperty(B,J,G)}return Q}}function Ne0(A,Q){return O0.instance.measure(A,Q)}async function Le0(A,Q){return O0.instance.measureAsync(A,Q)}var $_Q=qA(Z_Q(),1);class Ot extends UZ{_debug=!1;_entity;_maxFall=0;_maxJump=0;_maxOpenSetIterations=200;_onPathfindAbort;_onPathfindComplete;_onWaypointMoveComplete;_onWaypointMoveSkipped;_speed=0;_target;_verticalPenalty=0;_waypoints=[];_waypointNextIndex=0;_waypointStoppingDistance;_waypointTimeoutMs=2000;constructor(A={}){super(A)}get debug(){return this._debug}get maxFall(){return this._maxFall}get maxJump(){return this._maxJump}get maxOpenSetIterations(){return this._maxOpenSetIterations}get speed(){return this._speed}get target(){return this._target}get verticalPenalty(){return this._verticalPenalty}get waypoints(){return this._waypoints}get waypointNextIndex(){return this._waypointNextIndex}get waypointTimeoutMs(){return this._waypointTimeoutMs}pathfind(A,Q,B){if(this._target=A,this._speed=Q,this._debug=B?.debug??!1,this._maxFall=B?.maxFall?-Math.abs(B.maxFall):0,this._maxJump=B?.maxJump?Math.abs(B.maxJump):0,this._maxOpenSetIterations=B?.maxOpenSetIterations??200,this._onPathfindAbort=B?.pathfindAbortCallback,this._onPathfindComplete=B?.pathfindCompleteCallback,this._onWaypointMoveComplete=B?.waypointMoveCompleteCallback,this._onWaypointMoveSkipped=B?.waypointMoveSkippedCallback,this._verticalPenalty=B?.verticalPenalty??0,this._waypoints=[],this._waypointNextIndex=0,this._waypointStoppingDistance=B?.waypointStoppingDistance,this._waypointTimeoutMs=B?.waypointTimeoutMs??2000/Q,!this._calculatePath())return!1;return this._moveToNextWaypoint(),!0}attach(A){super.attach(A),this._entity=A}detach(A){super.detach(A),this._entity=void 0}_calculatePath(){if(!this._target||!this._entity?.world)return l.error("PathfindingEntityController._calculatePath: No target or world"),!1;let A=this._entity.height,Q=this._findGroundedStart();if(!Q){if(this._debug)l.warning(`PathfindingEntityController._calculatePath: No valid grounded start found within maxFall distance, path search aborted. Start: ${this._coordinateToKey(this._target)}, Target: ${this._coordinateToKey(this._target)}`);return!1}let B={x:Math.floor(this._target.x),y:Math.floor(this._target.y),z:Math.floor(this._target.z)},Y=Math.abs(B.x-Q.x),J=Math.abs(B.y-Q.y),C=Math.abs(B.z-Q.z);if(Y<=2&&J<=2&&C<=2&&!this._isNeighborCoordinateBlocked(Q,B,this._entity.height))return this._waypoints=[{x:Q.x+0.5,y:Q.y+A/2,z:Q.z+0.5},{x:B.x+0.5,y:B.y+A/2,z:B.z+0.5}],!0;if(Q.x===B.x&&Q.y===B.y&&Q.z===B.z)return this._waypoints=[{x:Q.x+0.5,y:Q.y+A/2,z:Q.z+0.5}],!0;let G=this._coordinateToKey(Q),W=new Map,F=new Map([[G,0]]),Z=new Map([[G,this._pathfindingHeuristic(Q,B)]]),U=new Set,$=new $_Q.Heap((L,z)=>{let M=Z.get(L[0])??1/0,N=Z.get(z[0])??1/0;return M-N});$.push([G,Q]);let E=[{x:0,y:0,z:1},{x:1,y:0,z:0},{x:0,y:0,z:-1},{x:-1,y:0,z:0},{x:1,y:0,z:1},{x:1,y:0,z:-1},{x:-1,y:0,z:1},{x:-1,y:0,z:-1}],K=[];for(let L=this._maxJump;L>=this._maxFall;L--){if(L===0)continue;let z=Math.abs(Q.y+L-B.y);K.push({y:L,distanceToTargetY:z})}K.sort((L,z)=>L.distanceToTargetY-z.distanceToTargetY);let I=[...E,...K.flatMap(({y:L})=>E.map((z)=>({...z,y:L})))],V=0,H=Math.abs(B.x-Q.x)+Math.abs(B.y-Q.y)+Math.abs(B.z-Q.z),D=Math.min(this._maxOpenSetIterations,H*20);while(!$.isEmpty()&&V({x:w.x+0.5,y:w.y+A/2,z:w.z+0.5})),this._debug)console.log(`PathfindingEntityController._calculatePath: Path found after ${V} open set iterations. Start: ${this._coordinateToKey(Q)}, Target: ${this._coordinateToKey(this._target)}`);return!0}U.add(L);let M=F.get(L),N=new Map;for(let q of I){let w=`${q.x},${q.z}`,P=q.y<0;if(P&&N.has(w))continue;let _={x:z.x+q.x,y:z.y+q.y,z:z.z+q.z};if(Math.abs(B.x-_.x)+Math.abs(B.y-_.y)+Math.abs(B.z-_.z)>H*1.5)continue;let k=this._coordinateToKey(_);if(U.has(k))continue;let T=this._isNeighborCoordinateBlocked(z,_,this._entity.height);if(P&&T){N.set(w,!0);continue}if(T)continue;let S=Math.abs(q.x),v=Math.abs(q.y),y=Math.abs(q.z),h=v===0?0:this._verticalPenalty,g=(Math.max(S,v,y)===1&&S+v+y>1?1.4:1)+h,m=M+g,n=F.get(k)??1/0;if(m>=n)continue;W.set(k,z),F.set(k,m);let i=m+this._pathfindingHeuristic(_,B);Z.set(k,i),$.push([k,_])}}if(V>=D){if(this._onPathfindAbort?.(),this._debug)l.warning(`PathfindingEntityController._calculatePath: Maximum open set iterations reached (${D}), path search aborted. Start: ${this._coordinateToKey(Q)}, Target: ${this._coordinateToKey(this._target)}`)}else if(this._debug)l.warning(`PathfindingEntityController._calculatePath: No valid path found. Start: ${this._coordinateToKey(Q)}, Target: ${this._coordinateToKey(this._target)}`);return this._target=void 0,this._waypoints=[],!1}_reconstructPath(A,Q){let B=[Q],Y=Q;while(A.has(this._coordinateToKey(Y)))Y=A.get(this._coordinateToKey(Y)),B.unshift(Y);return B}_coordinateToKey(A){return`${A.x},${A.y},${A.z}`}_moveToNextWaypoint(){let A=this._waypointNextIndex>0?this._waypoints[this._waypointNextIndex-1]:void 0,Q=this._waypoints[this._waypointNextIndex];if(!Q||!this._entity)return;let B=0;if(this._entity.isDynamic&&A&&Q.y>A.y){let Y=Q.y-A.y,J=Math.min(Y,this._maxJump)+0.75;this.jump(J);let C=Math.abs(this._entity.world.simulation.gravity.y),X=Math.sqrt(2*C*J),G=A.x+0.5,W=A.z+0.5,F=Q.x+0.5,Z=Q.z+0.5,U=F-G,$=Z-W,E=Math.sqrt(U*U+$*$),K=X/C,I=E/this._speed;B=Math.min(K*0.8,I)*1000}setTimeout(()=>{if(!this._entity)return;let Y=Date.now();this.face(Q,this._speed),this.move(Q,this._speed,{moveCompletesWhenStuck:!0,moveIgnoreAxes:{y:this._entity.isDynamic},moveStartIdleAnimationsOnCompletion:this._waypointNextIndex===this._waypoints.length-1,moveStoppingDistance:this._waypointStoppingDistance,moveCallback:()=>{if(Date.now()-Y>this._waypointTimeoutMs&&this._waypointNextIndex{if(this._waypointNextIndex{J.READY="WEBSERVER.READY";J.STOPPED="WEBSERVER.STOPPED";J.ERROR="WEBSERVER.ERROR";J.UPGRADE="WEBSERVER.UPGRADE"})(Dt||={});var rm0={"access-control-allow-origin":"*"},am0={".html":"text/html",".css":"text/css",".js":"text/javascript",".mjs":"text/javascript",".json":"application/json",".gltf":"model/gltf+json",".glb":"model/gltf-binary",".png":"image/png",".jpg":"image/jpeg",".jpeg":"image/jpeg",".webp":"image/webp",".gif":"image/gif",".svg":"image/svg+xml",".ico":"image/x-icon",".ktx2":"image/ktx2",".mp3":"audio/mpeg",".ogg":"audio/ogg",".wav":"audio/wav",".mp4":"video/mp4",".webm":"video/webm",".woff":"font/woff",".woff2":"font/woff2",".ttf":"font/ttf",".bin":"application/octet-stream",".wasm":"application/wasm"};class gV extends BQ{static instance=new gV;_server;_assetCache=new Map;_assetDirs=[];constructor(){super();this._assetDirs.push(It.resolve("assets"));let A=PY.assetsLibraryPath;if(A)this._assetDirs.push(A)}start(){if(this._server)return l.warning("WebServer.start(): already started");RM.enableIfConfigured(),this._server=sm0.createSecureServer({key:ik,cert:pk,allowHTTP1:!0}),this._server.on("request",this._onRequest),this._server.on("upgrade",this._onUpgrade),this._server.on("error",this._onError),this._server.on("close",this._onStopped),this._server.listen(nk,this._onStarted),console.info(`WebServer.start(): Server running on port ${nk}`)}stop(){if(!this._server)return l.warning("WebServer.stop(): not started"),Promise.resolve(!1);return new Promise((A,Q)=>{this._server.close((B)=>B?Q(B):A(!0))})}_onStarted=()=>this.emitWithGlobal("WEBSERVER.READY",{});_onStopped=()=>this.emitWithGlobal("WEBSERVER.STOPPED",{});_onError=(A)=>{l.error(`WebServer._onError(): ${A.message}`),this.emitWithGlobal("WEBSERVER.ERROR",{error:A})};_onRequest=(A,Q)=>{Q.on("error",()=>{});let B=A.url||"/",J=(A.method||"GET")==="HEAD",C=(G,W={})=>{Q.writeHead(G,{...W,...rm0})};if(B==="/"){C(200,{"content-type":"application/json"}),Q.end(!J?JSON.stringify({status:"OK",version:Ht,runtime:"node",playerCount:dJ.instance.playerCount}):void 0);return}if(RM.handleWebRequest(A,Q))return;let X=decodeURIComponent(B.split("?")[0]);if(X.includes("..")){C(400),Q.end();return}for(let G of this._assetDirs){let W=It.join(G,X);if(!W.startsWith(G))continue;let F=PY.assetsLibraryPath;if(F&&W.startsWith(F)&&!B.includes("noSync"))PY.instance.syncAsset(W);let Z=this._assetCache.get(W);if(!Z)try{let E=qSQ.statSync(W);if(!E.isFile())continue;Z={size:E.size,etag:`"${E.mtimeMs.toString(36)}-${E.size.toString(36)}"`},this._assetCache.set(W,Z)}catch{continue}if(A.headers["if-none-match"]===Z.etag){C(304),Q.end();return}let U={"content-type":am0[It.extname(W).toLowerCase()]||"application/octet-stream","content-length":Z.size,etag:Z.etag,"cache-control":"public, max-age=0, must-revalidate"};if(J){C(200,U),Q.end();return}C(200,U);let $=qSQ.createReadStream(W);Q.on("close",()=>$.destroy()),$.on("error",()=>Q.destroy()),$.pipe(Q);return}C(404),Q.end()};_onUpgrade=(A,Q,B)=>{this.emitWithGlobal("WEBSERVER.UPGRADE",{req:A,socket:Q,head:B})}}var K4;((I)=>{I.BUILD_PACKETS="build_packets";I.ENTITIES_EMIT_UPDATES="entities_emit_updates";I.ENTITIES_TICK="entities_tick";I.NETWORK_SYNCHRONIZE="network_synchronize";I.NETWORK_SYNCHRONIZE_CLEANUP="network_synchronize_cleanup";I.PHYSICS_CLEANUP="physics_cleanup";I.PHYSICS_STEP="physics_step";I.SEND_ALL_PACKETS="send_all_packets";I.SEND_PACKETS="send_packets";I.SERIALIZE_FREE_BUFFERS="serialize_free_buffers";I.SERIALIZE_PACKETS="serialize_packets";I.SERIALIZE_PACKETS_ENCODE="serialize_packets_encode";I.SIMULATION_STEP="simulation_step";I.TICKER_TICK="ticker_tick";I.WORLD_TICK="world_tick"})(K4||={});class AY{static getProcessStats(A=!1){let Q=process.memoryUsage(),B={jsHeapSizeMb:{value:Q.heapUsed/1024/1024,unit:"megabyte"},jsHeapCapacityMb:{value:Q.heapTotal/1024/1024,unit:"megabyte"},jsHeapUsagePercent:{value:Q.heapUsed/Q.heapTotal,unit:"percent"},processHeapSizeMb:{value:Q.heapUsed/1024/1024,unit:"megabyte"},rssSizeMb:{value:Q.rss/1024/1024,unit:"megabyte"}};if(A)return B;return Object.fromEntries(Object.entries(B).map(([Y,J])=>[Y,J.value]))}static initializeSentry(A,Q=50){if(lZ())return;AS({dsn:A,release:Ht,environment:process.env.NODE_ENV||"development",tracesSampleRate:1,initialScope:{tags:{gameId:process.env.HYTOPIA_GAME_ID??"unknown",gameSlug:process.env.HYTOPIA_GAME_SLUG??"unknown",lobbyId:process.env.HYTOPIA_LOBBY_ID??"unknown",region:process.env.REGION??"unknown"}},beforeSend:(B)=>{return B.extra=AY.getProcessStats(),B},beforeSendTransaction:(B)=>{if(B.contexts?.trace?.op==="ticker_tick"){let J=B?.start_timestamp,C=B?.timestamp;if(!J||!C)return null;if((C-J)*1000>Q)return B.measurements=AY.getProcessStats(!0),B}return null}})}static startSpan(A,Q){let B=O0.instance;if(B.isEnabled){if(lZ())return B.measure(A.operation,()=>b8({attributes:A.attributes,name:A.operation,op:A.operation},Q));return B.measure(A.operation,()=>Q())}if(lZ())return b8({attributes:A.attributes,name:A.operation,op:A.operation},Q);return Q()}static sentry(){return Qr}}var tm0=30000;class q1 extends BQ{static _cachedPacketsSerializedBuffer=new Map;_closeTimeout=null;_isDuplicate=!1;_ws;_wsBinding=!1;_wt;_wtBinding=!1;_wtReliableReader;_wtReliableWriter;_wtUnreliableReader;_wtUnreliableWriter;id;initialConnectionParams;constructor(A,Q,B,Y){super();this.id=pHA(),this.initialConnectionParams=B,this.onPacket(gQ.PacketId.HEARTBEAT,this._onHeartbeatPacket);let J=()=>{BQ.globalInstance.emit("CONNECTION.OPENED",{connection:this,session:Y})};if(A)this.bindWs(A),J();else if(Q)this.bindWt(Q).then(J).catch((C)=>{this._onClose(),l.error(`Connection.constructor(): Failed to bind WebTransport. Error: ${C}`)})}get isDuplicate(){return this._isDuplicate}static clearCachedPacketsSerializedBuffers(){if(q1._cachedPacketsSerializedBuffer.size>0)q1._cachedPacketsSerializedBuffer.clear()}static serializePackets(A){for(let B of A)if(!gQ.isValidPacket(B))return l.error(`Connection.serializePackets(): Invalid packet payload: ${JSON.stringify(B)}`);let Q=q1._cachedPacketsSerializedBuffer.get(A);if(Q)return Q;return AY.startSpan({operation:"serialize_packets",attributes:{packets:A.length,packetIds:A.map((B)=>B[0]).join(",")}},(B)=>{let Y=$Y.instance,J=Y.isEnabled,C=J?performance.now():0,X=vu.pack(A),G=X.byteLength>65536;if(G)X=om0(X,{level:1});if(B?.setAttribute("serializedBytes",X.byteLength),q1._cachedPacketsSerializedBuffer.set(A,X),J){if(Y.recordSerialization(performance.now()-C),G)Y.recordCompression()}return X})}bindWs(A){this._wsBinding=!0;let Q=this._handleReconnect();if(this._cleanupConnections(),this._ws=A,this._ws.binaryType="nodebuffer",this._ws.onmessage=(B)=>this._onMessage(B.data),this._ws.onclose=this._onClose,this._ws.onerror=this._onError,this._wsBinding=!1,this._signalConnectionId(),Q)this.emitWithGlobal("CONNECTION.RECONNECTED",{connection:this})}async bindWt(A){this._wtBinding=!0;let Q=this._handleReconnect();this._cleanupConnections(),A.userData.onclose=this._onClose,A.closed.catch(()=>{}).finally(()=>A.userData.onclose?.()),this._wt=A;try{await A.ready;let B=A.incomingBidirectionalStreams.getReader();try{let{value:Y}=await B.read();if(Y)this._wtReliableReader=Y.readable,this._wtReliableWriter=Y.writable.getWriter()}finally{B.releaseLock()}this._wtUnreliableReader=A.datagrams.readable,this._wtUnreliableWriter=A.datagrams.createWritable().getWriter()}catch{this._wtBinding=!1;return}if(this._wtBinding=!1,this._wt!==A)return;if((async()=>{if(!this._wtReliableReader)throw Error("Connection.bindWt(): Reliable reader not found.");let B=gQ.createPacketBufferUnframer((Y)=>{this._onMessage(Y)});for await(let Y of this._wtReliableReader){if(A!==this._wt)return;B(Y)}})().catch(()=>{try{A?.close()}catch{}}),(async()=>{if(!this._wtUnreliableReader)throw Error("Connection.bindWt(): Unreliable reader not found.");for await(let B of this._wtUnreliableReader){if(A!==this._wt)return;this._onMessage(B)}})().catch(()=>{try{A?.close()}catch{}}),this._signalConnectionId(),Q)this.emitWithGlobal("CONNECTION.RECONNECTED",{connection:this})}disconnect(){try{this._ws?.close(),this._wt?.close()}catch(A){l.error(`Connection.disconnect(): Connection disconnect failed. Error: ${A}`)}}killDuplicateConnection(){this._isDuplicate=!0,this._cleanupConnections(),this.emitWithGlobal("CONNECTION.DISCONNECTED",{connection:this}),this._finalizeClose()}onPacket(A,Q){this.on("CONNECTION.PACKET_RECEIVED",({packet:B})=>{if(B[0]===A)Q(B)})}send(A,Q=!0){if(this._closeTimeout||this._wsBinding||this._wtBinding)return;if(!this._ws&&!this._wt)return;let B=this._ws&&this._ws.readyState===OE.default.OPEN,Y=this._wt&&this._wt.state==="connected";if(!B&&!Y)return;AY.startSpan({operation:"send_packets"},()=>{try{let J=q1.serializePackets(A);if(!J)return;let C=$Y.instance,X=C.isEnabled,G=J.byteLength;if(Y)if(Q||J.byteLength>1200){let W=gQ.framePacketBuffer(J);G=W.byteLength,this._wtReliableWriter?.write(W).catch(()=>{l.error("Connection.send(): WebTransport reliable write failed, connection closing?")})}else this._wtUnreliableWriter?.write(J).catch(()=>{l.error("Connection.send(): WebTransport unreliable write failed, connection closing?")});else this._ws.send(J);if(X){C.recordBytesSent(G);for(let W=0;W{this.send([gQ.createPacket(gQ.bidirectionalPackets.heartbeatPacketDefinition,null)],!0)};_onMessage=(A)=>{let Q=$Y.instance;if(Q.isEnabled)Q.recordBytesReceived(A.byteLength),Q.recordPacketReceived();try{let Y=this._deserialize(A);if(!Y)return;this.emitWithGlobal("CONNECTION.PACKET_RECEIVED",{connection:this,packet:Y})}catch(Y){l.error(`Connection._ws.onmessage(): Error: ${Y}`)}};_onClose=()=>{this.emitWithGlobal("CONNECTION.DISCONNECTED",{connection:this}),this._closeTimeout=setTimeout(()=>this._finalizeClose(),tm0)};_onError=(A)=>{this.emitWithGlobal("CONNECTION.ERROR",{connection:this,error:A})};_cleanupConnections(){if(this._ws)this._ws.onmessage=()=>{},this._ws.onclose=()=>{},this._ws.onerror=()=>{};if(this._wt)this._wt.userData.onclose=()=>{};this._signalKill();try{this._ws?.close()}catch{}let A=this._wt;if(A)setTimeout(()=>{try{A.close()}catch{}},50);this._ws=void 0,this._wt=void 0,this._wtReliableReader=void 0,this._wtReliableWriter=void 0,this._wtUnreliableReader=void 0,this._wtUnreliableWriter=void 0}_deserialize(A){let Q=vu.unpack(A);if(!Q||typeof Q!=="object"||typeof Q[0]!=="number")return l.error(`Connection._deserialize(): Invalid packet format. Packet: ${JSON.stringify(Q)}`);if(!gQ.isValidPacket(Q))return l.error(`Connection._deserialize(): Invalid packet payload. Packet: ${JSON.stringify(Q)}`);return Q}_finalizeClose(){this.emitWithGlobal("CONNECTION.CLOSED",{connection:this}),this.offAll()}_handleReconnect(){let A=!!this._ws||!!this._wt;if(A&&this._closeTimeout)clearTimeout(this._closeTimeout),this._closeTimeout=null;return A}_signalConnectionId(){this.send([gQ.createPacket(gQ.bidirectionalPackets.connectionPacketDefinition,{i:this.id})])}_signalKill(){this.send([gQ.createPacket(gQ.bidirectionalPackets.connectionPacketDefinition,{k:!0})])}}var MSQ;((Y)=>{Y.PLAYER_CONNECTED="PLAYER_MANAGER.PLAYER_CONNECTED";Y.PLAYER_DISCONNECTED="PLAYER_MANAGER.PLAYER_DISCONNECTED";Y.PLAYER_RECONNECTED="PLAYER_MANAGER.PLAYER_RECONNECTED"})(MSQ||={});class dJ{static instance=new dJ;worldSelectionHandler;_connectionPlayers=new Map;constructor(){BQ.globalInstance.on("CONNECTION.OPENED",({connection:A,session:Q})=>{this._onConnectionOpened(A,Q)}),BQ.globalInstance.on("CONNECTION.DISCONNECTED",({connection:A})=>{this._onConnectionDisconnected(A)}),BQ.globalInstance.on("CONNECTION.RECONNECTED",({connection:A})=>{this._onConnectionReconnected(A)}),BQ.globalInstance.on("CONNECTION.CLOSED",({connection:A})=>{this._onConnectionClosed(A)})}get playerCount(){return this._connectionPlayers.size}getConnectedPlayers(){return Array.from(this._connectionPlayers.values())}getConnectedPlayersByWorld(A){return this.getConnectedPlayers().filter((Q)=>Q.world===A)}getConnectedPlayerByUsername(A){return Array.from(this._connectionPlayers.values()).find((Q)=>{return Q.username.toLowerCase()===A.toLowerCase()})}async _onConnectionOpened(A,Q){let B=new TE(A,Q);await B.loadInitialPersistedData(),BQ.globalInstance.emit("PLAYER_MANAGER.PLAYER_CONNECTED",{player:B,connectionParams:A.initialConnectionParams});let Y=await this.worldSelectionHandler?.(B);B.joinWorld(Y??F0.instance.getDefaultWorld()),this._connectionPlayers.set(A,B),$Y.instance.setConnectedPlayers(this.playerCount)}_onConnectionDisconnected(A){let Q=this._connectionPlayers.get(A);if(Q)Q.resetInputs(),Q.camera.reset()}_onConnectionReconnected(A){let Q=this._connectionPlayers.get(A);if(Q)Q.reconnected(),BQ.globalInstance.emit("PLAYER_MANAGER.PLAYER_RECONNECTED",{player:Q});else l.warning(`PlayerManager._onConnectionReconnected(): Connection ${A.id} not in the PlayerManager._connectionPlayers map.`)}_onConnectionClosed(A){let Q=this._connectionPlayers.get(A);if(Q){if(Q.disconnect(),this._connectionPlayers.delete(A),!A.isDuplicate)s7.instance.unloadPlayerData(Q).catch((B)=>{l.warning(`PlayerManager._onConnectionClosed(): Failed to unload player data for player ${Q.id}. Error: ${B}`)});BQ.globalInstance.emit("PLAYER_MANAGER.PLAYER_DISCONNECTED",{player:Q}),$Y.instance.setConnectedPlayers(this.playerCount)}else l.warning(`PlayerManager._onConnectionClosed(): Connection ${A.id} not in the PlayerManager._connectionPlayers map.`)}}import{randomBytes as Au0}from"crypto";import{Http3Server as Qu0}from"@fails-components/webtransport";class wM extends BQ{static instance=new wM;_connectionIdConnections=new Map;_userIdConnections=new Map;_wss;_wts;constructor(){super();this._wss=new nm.default({noServer:!0}),this._wss.on("connection",(A,Q)=>this._onConnection(A,void 0,Q.connectionId,Q.connectionParams,Q.session)),this._wts=new Qu0({port:nk,host:"0.0.0.0",secret:Au0(32).toString("hex"),cert:pk,privKey:ik,defaultDatagramsReadableMode:"bytes",initialStreamFlowControlWindow:1048576,streamShouldAutoTuneReceiveWindow:!0,streamFlowControlWindowSizeLimit:6291456,initialSessionFlowControlWindow:2097152,sessionShouldAutoTuneReceiveWindow:!0,sessionFlowControlWindowSizeLimit:15728640}),this._wts.setRequestCallback(this._onWebTransportRequest),this._startWebTransport().catch((A)=>{l.error(`Socket: WebTransport server failed to start or crashed while listening for sessions. Error: ${A}`)}),BQ.globalInstance.on("WEBSERVER.UPGRADE",async({req:A,socket:Q,head:B})=>{Q.on("error",()=>{}),await this._authorizeAndConnectWebsocket(A,Q,B)})}async _authorizeAndConnectWebsocket(A,Q,B){let Y=await this._authorizeConnection(A.url??"");if(Y.error){Q.end();return}A.connectionId=Y.connectionId,A.connectionParams=Y.connectionParams,A.session=Y.session,Q.setNoDelay(!0),this._wss.handleUpgrade(A,Q,B,(J)=>{if(J.readyState!==OE.default.OPEN)J.once("open",()=>this._wss.emit("connection",J,A));else this._wss.emit("connection",J,A)})}async _authorizeConnection(A){let Q=A.includes("?")?A.slice(A.indexOf("?")):"",B=new URLSearchParams(Q),Y=B.get("connectionId")??void 0,J=B.get("sessionToken")??"";if(Y&&this._isValidConnectionId(Y))return{connectionId:Y,connectionParams:B};else{let C=await P5.instance.getPlayerSession(J);if(C?.error)return{error:C.error};else if(C)return{connectionParams:B,session:C}}return{connectionParams:B}}_isValidConnectionId(A){return this._connectionIdConnections.has(A)}_onConnection=(A,Q,B,Y,J)=>{let C=J?.user.id,X=B&&this._connectionIdConnections.get(B),G=C&&this._userIdConnections.get(C);if(!X&&G)G.killDuplicateConnection();if(X){if(A)X.bindWs(A);if(Q)X.bindWt(Q).catch((W)=>{l.error(`Socket._onConnection(): WebTransport binding failed. Error: ${W}`)})}else{let W=new q1(A,Q,Y,J);if(W.on("CONNECTION.CLOSED",()=>{if(this._connectionIdConnections.delete(W.id),C&&this._userIdConnections.get(C)===W)this._userIdConnections.delete(C)}),this._connectionIdConnections.set(W.id,W),C)this._userIdConnections.set(C,W)}};_onWebTransportRequest=async({header:A})=>{let{connectionId:Q,connectionParams:B,session:Y,error:J}=await this._authorizeConnection(A[":path"]??"");return{status:J?401:200,path:"/",userData:{connectionId:Q,connectionParams:B,session:Y}}};async _startWebTransport(){this._wts.startServer();for await(let A of this._wts.sessionStream("/"))try{let{connectionId:Q,connectionParams:B,session:Y}=A.userData;this._onConnection(void 0,A,Q,B,Y)}catch(Q){l.error(`Socket._startWebTransport(): WebTransport connection failed. Error: ${Q}`)}}}var zSQ;((B)=>{B.START="GAMESERVER.START";B.STOP="GAMESERVER.STOP"})(zSQ||={});function Bu0(A){WB.init().then(()=>{return HF.instance.blockTextureRegistry.preloadAtlas()}).then(()=>{return HF.instance.modelRegistry.preloadModels()}).then(()=>{let Q;if(A.length>0)Q=A(HF.instance.worldManager.getDefaultWorld());else Q=A();return Promise.resolve(Q)}).then(()=>{HF.instance.start()}).catch((Q)=>{l.fatalError(`Failed to initialize the game engine, exiting. Error: ${Q}`)})}class HF{static _instance;_blockTextureRegistry=h7.instance;_modelRegistry=yY.instance;_playerManager=dJ.instance;_socket=wM.instance;_worldManager=F0.instance;_webServer=gV.instance;constructor(){}static get instance(){if(!this._instance)this._instance=new HF;return this._instance}get blockTextureRegistry(){return this._blockTextureRegistry}get modelRegistry(){return this._modelRegistry}get playerManager(){return this._playerManager}get socket(){return this._socket}get webServer(){return this._webServer}get worldManager(){return this._worldManager}start(){if(BQ.globalInstance.emit("GAMESERVER.START",{startedAtMs:performance.now()}),this._webServer.start(),process.env.NODE_ENV!=="production")console.log("---"),console.log("\uD83D\uDFE2 Server Running: You can test & play it at: https://hytopia.com/play");l.enableCrashProtection()}}var AJ=qA(H4(),1);class D4 extends Float32Array{constructor(A,Q,B,Y){super([A,Q,B,Y])}get determinant(){return AJ.mat2.determinant(this)}get frobeniusNorm(){return AJ.mat2.frob(this)}static create(){let A=new D4(0,0,0,0);return AJ.mat2.identity(A),A}static fromRotation(A){let Q=D4.create();return AJ.mat2.fromRotation(Q,A),Q}static fromScaling(A){let Q=D4.create();return AJ.mat2.fromScaling(Q,A),Q}add(A){return AJ.mat2.add(this,this,A),this}adjoint(){return AJ.mat2.adjoint(this,this),this}clone(){return new D4(this[0],this[1],this[2],this[3])}copy(A){return AJ.mat2.copy(this,A),this}equals(A){return AJ.mat2.equals(this,A)}exactEquals(A){return AJ.mat2.exactEquals(this,A)}identity(){return AJ.mat2.identity(this),this}invert(){return AJ.mat2.invert(this,this),this}multiply(A){return AJ.mat2.mul(this,this,A),this}multiplyScalar(A){return AJ.mat2.multiplyScalar(this,this,A),this}rotate(A){return AJ.mat2.rotate(this,this,A),this}subtract(A){return AJ.mat2.sub(this,this,A),this}toString(){return`[${this[0]},${this[1]}][${this[2]},${this[3]}]`}transpose(){return AJ.mat2.transpose(this,this),this}}var QY=qA(H4(),1);class mX extends Float32Array{constructor(A,Q,B,Y,J,C,X,G,W){super([A,Q,B,Y,J,C,X,G,W])}get determinant(){return QY.mat3.determinant(this)}get frobeniusNorm(){return QY.mat3.frob(this)}static create(){let A=new mX(0,0,0,0,0,0,0,0,0);return QY.mat3.identity(A),A}static fromMatrix4(A){let Q=mX.create();return QY.mat3.fromMat4(Q,A),Q}static fromQuaternion(A){let Q=mX.create();return QY.mat3.fromQuat(Q,A),Q}static fromRotation(A){let Q=mX.create();return QY.mat3.fromRotation(Q,A),Q}static fromScaling(A){let Q=mX.create();return QY.mat3.fromScaling(Q,A),Q}static fromTranslation(A){let Q=mX.create();return QY.mat3.fromTranslation(Q,A),Q}add(A){return QY.mat3.add(this,this,A),this}adjoint(){return QY.mat3.adjoint(this,this),this}clone(){return new mX(this[0],this[1],this[2],this[3],this[4],this[5],this[6],this[7],this[8])}copy(A){return QY.mat3.copy(this,A),this}equals(A){return QY.mat3.equals(this,A)}exactEquals(A){return QY.mat3.exactEquals(this,A)}identity(){return QY.mat3.identity(this),this}invert(){return QY.mat3.invert(this,this),this}multiply(A){return QY.mat3.mul(this,this,A),this}multiplyScalar(A){return QY.mat3.multiplyScalar(this,this,A),this}transformVector(A){return A.transformMatrix3(this)}projection(A,Q){return QY.mat3.projection(this,A,Q),this}rotate(A){return QY.mat3.rotate(this,this,A),this}subtract(A){return QY.mat3.sub(this,this,A),this}toString(){return`[${this[0]},${this[1]},${this[2]}][${this[3]},${this[4]},${this[5]}][${this[6]},${this[7]},${this[8]}]`}transpose(){return QY.mat3.transpose(this,this),this}}var EB=qA(H4(),1);class O9 extends Float32Array{constructor(A,Q,B,Y,J,C,X,G,W,F,Z,U,$,E,K,I){super([A,Q,B,Y,J,C,X,G,W,F,Z,U,$,E,K,I])}get determinant(){return EB.mat4.determinant(this)}get frobeniusNorm(){return EB.mat4.frob(this)}static create(){let A=new O9(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);return EB.mat4.identity(A),A}static fromQuaternion(A){let Q=O9.create();return EB.mat4.fromQuat(Q,A),Q}static fromRotation(A,Q){let B=O9.create();return EB.mat4.fromRotation(B,A,Q),B}static fromRotationTranslation(A,Q){let B=O9.create();return EB.mat4.fromRotationTranslation(B,A,Q),B}static fromRotationTranslationScale(A,Q,B){let Y=O9.create();return EB.mat4.fromRotationTranslationScale(Y,A,Q,B),Y}static fromRotationTranslationScaleOrigin(A,Q,B,Y){let J=O9.create();return EB.mat4.fromRotationTranslationScaleOrigin(J,A,Q,B,Y),J}static fromScaling(A){let Q=O9.create();return EB.mat4.fromScaling(Q,A),Q}static fromTranslation(A){let Q=O9.create();return EB.mat4.fromTranslation(Q,A),Q}static fromXRotation(A){let Q=O9.create();return EB.mat4.fromXRotation(Q,A),Q}static fromYRotation(A){let Q=O9.create();return EB.mat4.fromYRotation(Q,A),Q}static fromZRotation(A){let Q=O9.create();return EB.mat4.fromZRotation(Q,A),Q}add(A){return EB.mat4.add(this,this,A),this}adjoint(){return EB.mat4.adjoint(this,this),this}clone(){return new O9(this[0],this[1],this[2],this[3],this[4],this[5],this[6],this[7],this[8],this[9],this[10],this[11],this[12],this[13],this[14],this[15])}copy(A){return EB.mat4.copy(this,A),this}equals(A){return EB.mat4.equals(this,A)}exactEquals(A){return EB.mat4.exactEquals(this,A)}frustrum(A,Q,B,Y,J,C){return EB.mat4.frustum(this,A,Q,B,Y,J,C),this}identity(){return EB.mat4.identity(this),this}invert(){return EB.mat4.invert(this,this),this}lookAt(A,Q,B){return EB.mat4.lookAt(this,A,Q,B),this}multiply(A){return EB.mat4.mul(this,this,A),this}multiplyScalar(A){return EB.mat4.multiplyScalar(this,this,A),this}orthographic(A,Q,B,Y,J,C){return EB.mat4.ortho(this,A,Q,B,Y,J,C),this}perspective(A,Q,B,Y){return EB.mat4.perspective(this,A,Q,B,Y),this}rotate(A,Q){return EB.mat4.rotate(this,this,A,Q),this}rotateX(A){return EB.mat4.rotateX(this,this,A),this}rotateY(A){return EB.mat4.rotateY(this,this,A),this}rotateZ(A){return EB.mat4.rotateZ(this,this,A),this}scale(A){return EB.mat4.scale(this,this,A),this}subtract(A){return EB.mat4.sub(this,this,A),this}targetTo(A,Q,B){return EB.mat4.targetTo(this,A,Q,B),this}toString(){return`[${this[0]},${this[1]},${this[2]},${this[3]}][${this[4]},${this[5]},${this[6]},${this[7]}][${this[8]},${this[9]},${this[10]},${this[11]}][${this[12]},${this[13]},${this[14]},${this[15]}]`}translate(A){return EB.mat4.translate(this,this,A),this}transpose(){return EB.mat4.transpose(this,this),this}}var J0=qA(H4(),1);class hV extends Float32Array{constructor(A,Q,B,Y){super([A,Q,B,Y])}get length(){return J0.quat.length(this)}get squaredLength(){return J0.quat.squaredLength(this)}get magnitude(){return J0.quat.length(this)}get squaredMagnitude(){return J0.quat.squaredLength(this)}get x(){return this[0]}set x(A){this[0]=A}get y(){return this[1]}set y(A){this[1]=A}get z(){return this[2]}set z(A){this[2]=A}get w(){return this[3]}set w(A){this[3]=A}static fromEuler(A,Q,B){let Y=J0.quat.fromEuler(new Float32Array(4),A,Q,B);return new hV(Y[0],Y[1],Y[2],Y[3])}static fromQuaternionLike(A){return new hV(A.x,A.y,A.z,A.w)}clone(){return new hV(this.x,this.y,this.z,this.w)}conjugate(){return J0.quat.conjugate(this,this),this}copy(A){return J0.quat.copy(this,A),this}dot(A){return J0.quat.dot(this,A)}exponential(){return J0.quat.exp(this,this),this}equals(A){return J0.quat.equals(this,A)}exactEquals(A){return J0.quat.exactEquals(this,A)}getAngle(A){return J0.quat.getAngle(this,A)}identity(){return J0.quat.identity(this),this}invert(){return J0.quat.invert(this,this),this}lerp(A,Q){return J0.quat.lerp(this,this,A,Q),this}logarithm(){return J0.quat.ln(this,this),this}multiply(A){return J0.quat.multiply(this,this,A),this}transformVector(A){return A.transformQuaternion(this)}normalize(){return J0.quat.normalize(this,this),this}power(A){return J0.quat.pow(this,this,A),this}randomize(){return J0.quat.random(this),this}rotateX(A){return J0.quat.rotateX(this,this,A),this}rotateY(A){return J0.quat.rotateY(this,this,A),this}rotateZ(A){return J0.quat.rotateZ(this,this,A),this}scale(A){return J0.quat.scale(this,this,A),this}setAxisAngle(A,Q){return J0.quat.setAxisAngle(this,A,Q),this}slerp(A,Q){return J0.quat.slerp(this,this,A,Q),this}toString(){return`${this.x},${this.y},${this.z},${this.w}`}}var vB=qA(H4(),1);class jM extends Float32Array{constructor(A,Q){super([A,Q])}get length(){return vB.vec2.length(this)}get squaredLength(){return vB.vec2.squaredLength(this)}get magnitude(){return vB.vec2.length(this)}get squaredMagnitude(){return vB.vec2.squaredLength(this)}get x(){return this[0]}set x(A){this[0]=A}get y(){return this[1]}set y(A){this[1]=A}static create(){return new jM(0,0)}add(A){return vB.vec2.add(this,this,A),this}angle(A){return vB.vec2.angle(this,A)}ceil(){return vB.vec2.ceil(this,this),this}clone(){return new jM(this.x,this.y)}copy(A){return vB.vec2.copy(this,A),this}distance(A){return vB.vec2.distance(this,A)}divide(A){return vB.vec2.divide(this,this,A),this}dot(A){return vB.vec2.dot(this,A)}equals(A){return vB.vec2.equals(this,A)}exactEquals(A){return vB.vec2.exactEquals(this,A)}floor(){return vB.vec2.floor(this,this),this}invert(){return vB.vec2.inverse(this,this),this}lerp(A,Q){return vB.vec2.lerp(this,this,A,Q),this}max(A){return vB.vec2.max(this,this,A),this}min(A){return vB.vec2.min(this,this,A),this}multiply(A){return vB.vec2.mul(this,this,A),this}negate(){return vB.vec2.negate(this,this),this}normalize(){return vB.vec2.normalize(this,this),this}randomize(A){return vB.vec2.random(this,A),this}rotate(A,Q){return vB.vec2.rotate(this,this,A,Q),this}round(){return vB.vec2.round(this,this),this}scale(A){return vB.vec2.scale(this,this,A),this}scaleAndAdd(A,Q){return vB.vec2.scaleAndAdd(this,this,A,Q),this}subtract(A){return vB.vec2.sub(this,this,A),this}toString(){return`${this.x},${this.y}`}transformMatrix2(A){return vB.vec2.transformMat2(this,this,A),this}transformMatrix3(A){return vB.vec2.transformMat3(this,this,A),this}transformMatrix4(A){return vB.vec2.transformMat4(this,this,A),this}zero(){return vB.vec2.zero(this),this}}var RB=qA(H4(),1);class xV extends Float32Array{constructor(A,Q,B){super([A,Q,B])}get length(){return RB.vec3.length(this)}get squaredLength(){return RB.vec3.squaredLength(this)}get magnitude(){return RB.vec3.length(this)}get squaredMagnitude(){return RB.vec3.squaredLength(this)}get x(){return this[0]}set x(A){this[0]=A}get y(){return this[1]}set y(A){this[1]=A}get z(){return this[2]}set z(A){this[2]=A}static create(){return new xV(0,0,0)}static fromVector3Like(A){return new xV(A.x,A.y,A.z)}add(A){return RB.vec3.add(this,this,A),this}ceil(){return RB.vec3.ceil(this,this),this}clone(){return new xV(this.x,this.y,this.z)}copy(A){return RB.vec3.copy(this,A),this}cross(A){return RB.vec3.cross(this,this,A),this}distance(A){return RB.vec3.distance(this,A)}divide(A){return RB.vec3.div(this,this,A),this}dot(A){return RB.vec3.dot(this,A)}equals(A){return RB.vec3.equals(this,A)}exactEquals(A){return RB.vec3.exactEquals(this,A)}floor(){return RB.vec3.floor(this,this),this}invert(){return RB.vec3.inverse(this,this),this}lerp(A,Q){return RB.vec3.lerp(this,this,A,Q),this}max(A){return RB.vec3.max(this,this,A),this}min(A){return RB.vec3.min(this,this,A),this}multiply(A){return RB.vec3.mul(this,this,A),this}negate(){return RB.vec3.negate(this,this),this}normalize(){return RB.vec3.normalize(this,this),this}randomize(A){return RB.vec3.random(this,A),this}rotateX(A,Q){return RB.vec3.rotateX(this,this,A,Q),this}rotateY(A,Q){return RB.vec3.rotateY(this,this,A,Q),this}rotateZ(A,Q){return RB.vec3.rotateZ(this,this,A,Q),this}round(){return RB.vec3.round(this,this),this}scale(A){return RB.vec3.scale(this,this,A),this}scaleAndAdd(A,Q){return RB.vec3.scaleAndAdd(this,this,A,Q),this}subtract(A){return RB.vec3.sub(this,this,A),this}toString(){return`${this.x},${this.y},${this.z}`}transformMatrix3(A){return RB.vec3.transformMat3(this,this,A),this}transformMatrix4(A){return RB.vec3.transformMat4(this,this,A),this}transformQuaternion(A){return RB.vec3.transformQuat(this,this,A),this}zero(){return RB.vec3.zero(this),this}}function W_Q(A){return function(Q,B,Y){let J=Y.value;if(typeof J!=="function")return Y;let C=Q.constructor?.name??"Unknown",X=A??`${C}.${String(B)}`,G=J,W=G.constructor.name==="AsyncFunction",F=function(...Z){if(W)return O0.instance.measureAsync(X,()=>G.apply(this,Z));return O0.instance.measure(X,()=>G.apply(this,Z))};return Y.value=F,Y}}function De0(A){return function(Q){let B=Q.prototype;if(!B)return Q;let Y=A??Q.name;for(let J of Object.getOwnPropertyNames(B)){if(J==="constructor")continue;let C=Object.getOwnPropertyDescriptor(B,J);if(!C)continue;if(typeof C.value!=="function")continue;let G=C;W_Q(`${Y}.${J}`)(B,J,G),Object.defineProperty(B,J,G)}return Q}}function Ne0(A,Q){return O0.instance.measure(A,Q)}async function Le0(A,Q){return O0.instance.measureAsync(A,Q)}var $_Q=qA(Z_Q(),1);class Ot extends EZ{_debug=!1;_entity;_maxFall=0;_maxJump=0;_maxOpenSetIterations=200;_onPathfindAbort;_onPathfindComplete;_onWaypointMoveComplete;_onWaypointMoveSkipped;_speed=0;_target;_verticalPenalty=0;_waypoints=[];_waypointNextIndex=0;_waypointStoppingDistance;_waypointTimeoutMs=2000;constructor(A={}){super(A)}get debug(){return this._debug}get maxFall(){return this._maxFall}get maxJump(){return this._maxJump}get maxOpenSetIterations(){return this._maxOpenSetIterations}get speed(){return this._speed}get target(){return this._target}get verticalPenalty(){return this._verticalPenalty}get waypoints(){return this._waypoints}get waypointNextIndex(){return this._waypointNextIndex}get waypointTimeoutMs(){return this._waypointTimeoutMs}pathfind(A,Q,B){if(this._target=A,this._speed=Q,this._debug=B?.debug??!1,this._maxFall=B?.maxFall?-Math.abs(B.maxFall):0,this._maxJump=B?.maxJump?Math.abs(B.maxJump):0,this._maxOpenSetIterations=B?.maxOpenSetIterations??200,this._onPathfindAbort=B?.pathfindAbortCallback,this._onPathfindComplete=B?.pathfindCompleteCallback,this._onWaypointMoveComplete=B?.waypointMoveCompleteCallback,this._onWaypointMoveSkipped=B?.waypointMoveSkippedCallback,this._verticalPenalty=B?.verticalPenalty??0,this._waypoints=[],this._waypointNextIndex=0,this._waypointStoppingDistance=B?.waypointStoppingDistance,this._waypointTimeoutMs=B?.waypointTimeoutMs??2000/Q,!this._calculatePath())return!1;return this._moveToNextWaypoint(),!0}attach(A){super.attach(A),this._entity=A}detach(A){super.detach(A),this._entity=void 0}_calculatePath(){if(!this._target||!this._entity?.world)return l.error("PathfindingEntityController._calculatePath: No target or world"),!1;let A=this._entity.height,Q=this._findGroundedStart();if(!Q){if(this._debug)l.warning(`PathfindingEntityController._calculatePath: No valid grounded start found within maxFall distance, path search aborted. Start: ${this._coordinateToKey(this._target)}, Target: ${this._coordinateToKey(this._target)}`);return!1}let B={x:Math.floor(this._target.x),y:Math.floor(this._target.y),z:Math.floor(this._target.z)},Y=Math.abs(B.x-Q.x),J=Math.abs(B.y-Q.y),C=Math.abs(B.z-Q.z);if(Y<=2&&J<=2&&C<=2&&!this._isNeighborCoordinateBlocked(Q,B,this._entity.height))return this._waypoints=[{x:Q.x+0.5,y:Q.y+A/2,z:Q.z+0.5},{x:B.x+0.5,y:B.y+A/2,z:B.z+0.5}],!0;if(Q.x===B.x&&Q.y===B.y&&Q.z===B.z)return this._waypoints=[{x:Q.x+0.5,y:Q.y+A/2,z:Q.z+0.5}],!0;let G=this._coordinateToKey(Q),W=new Map,F=new Map([[G,0]]),Z=new Map([[G,this._pathfindingHeuristic(Q,B)]]),U=new Set,$=new $_Q.Heap((L,z)=>{let M=Z.get(L[0])??1/0,N=Z.get(z[0])??1/0;return M-N});$.push([G,Q]);let E=[{x:0,y:0,z:1},{x:1,y:0,z:0},{x:0,y:0,z:-1},{x:-1,y:0,z:0},{x:1,y:0,z:1},{x:1,y:0,z:-1},{x:-1,y:0,z:1},{x:-1,y:0,z:-1}],K=[];for(let L=this._maxJump;L>=this._maxFall;L--){if(L===0)continue;let z=Math.abs(Q.y+L-B.y);K.push({y:L,distanceToTargetY:z})}K.sort((L,z)=>L.distanceToTargetY-z.distanceToTargetY);let I=[...E,...K.flatMap(({y:L})=>E.map((z)=>({...z,y:L})))],V=0,H=Math.abs(B.x-Q.x)+Math.abs(B.y-Q.y)+Math.abs(B.z-Q.z),D=Math.min(this._maxOpenSetIterations,H*20);while(!$.isEmpty()&&V({x:w.x+0.5,y:w.y+A/2,z:w.z+0.5})),this._debug)console.log(`PathfindingEntityController._calculatePath: Path found after ${V} open set iterations. Start: ${this._coordinateToKey(Q)}, Target: ${this._coordinateToKey(this._target)}`);return!0}U.add(L);let M=F.get(L),N=new Map;for(let q of I){let w=`${q.x},${q.z}`,P=q.y<0;if(P&&N.has(w))continue;let _={x:z.x+q.x,y:z.y+q.y,z:z.z+q.z};if(Math.abs(B.x-_.x)+Math.abs(B.y-_.y)+Math.abs(B.z-_.z)>H*1.5)continue;let k=this._coordinateToKey(_);if(U.has(k))continue;let T=this._isNeighborCoordinateBlocked(z,_,this._entity.height);if(P&&T){N.set(w,!0);continue}if(T)continue;let S=Math.abs(q.x),v=Math.abs(q.y),y=Math.abs(q.z),h=v===0?0:this._verticalPenalty,g=(Math.max(S,v,y)===1&&S+v+y>1?1.4:1)+h,m=M+g,n=F.get(k)??1/0;if(m>=n)continue;W.set(k,z),F.set(k,m);let i=m+this._pathfindingHeuristic(_,B);Z.set(k,i),$.push([k,_])}}if(V>=D){if(this._onPathfindAbort?.(),this._debug)l.warning(`PathfindingEntityController._calculatePath: Maximum open set iterations reached (${D}), path search aborted. Start: ${this._coordinateToKey(Q)}, Target: ${this._coordinateToKey(this._target)}`)}else if(this._debug)l.warning(`PathfindingEntityController._calculatePath: No valid path found. Start: ${this._coordinateToKey(Q)}, Target: ${this._coordinateToKey(this._target)}`);return this._target=void 0,this._waypoints=[],!1}_reconstructPath(A,Q){let B=[Q],Y=Q;while(A.has(this._coordinateToKey(Y)))Y=A.get(this._coordinateToKey(Y)),B.unshift(Y);return B}_coordinateToKey(A){return`${A.x},${A.y},${A.z}`}_moveToNextWaypoint(){let A=this._waypointNextIndex>0?this._waypoints[this._waypointNextIndex-1]:void 0,Q=this._waypoints[this._waypointNextIndex];if(!Q||!this._entity)return;let B=0;if(this._entity.isDynamic&&A&&Q.y>A.y){let Y=Q.y-A.y,J=Math.min(Y,this._maxJump)+0.75;this.jump(J);let C=Math.abs(this._entity.world.simulation.gravity.y),X=Math.sqrt(2*C*J),G=A.x+0.5,W=A.z+0.5,F=Q.x+0.5,Z=Q.z+0.5,U=F-G,$=Z-W,E=Math.sqrt(U*U+$*$),K=X/C,I=E/this._speed;B=Math.min(K*0.8,I)*1000}setTimeout(()=>{if(!this._entity)return;let Y=Date.now();this.face(Q,this._speed),this.move(Q,this._speed,{moveCompletesWhenStuck:!0,moveIgnoreAxes:{y:this._entity.isDynamic},moveStartIdleAnimationsOnCompletion:this._waypointNextIndex===this._waypoints.length-1,moveStoppingDistance:this._waypointStoppingDistance,moveCallback:()=>{if(Date.now()-Y>this._waypointTimeoutMs&&this._waypointNextIndex{if(this._waypointNextIndex) => boolean): void; stopModelAnimations(modelAnimationNames: readonly string[]): void; get tag(): string | undefined; diff --git a/server/src/worlds/entities/Entity.ts b/server/src/worlds/entities/Entity.ts index f26e84f2..98041ad9 100644 --- a/server/src/worlds/entities/Entity.ts +++ b/server/src/worlds/entities/Entity.ts @@ -1,7 +1,7 @@ import protocol from '@hytopia.com/server-protocol'; import Collider, { ColliderShape } from '@/worlds/physics/Collider'; import CollisionGroupsBuilder, { CollisionGroup } from '@/worlds/physics/CollisionGroupsBuilder'; -import EntityModelAnimation from '@/worlds/entities/EntityModelAnimation'; +import EntityModelAnimation, { EntityModelAnimationLoopMode } from '@/worlds/entities/EntityModelAnimation'; import EntityModelNodeOverride from '@/worlds/entities/EntityModelNodeOverride'; import ErrorHandler from '@/errors/ErrorHandler'; import ModelRegistry from '@/models/ModelRegistry'; @@ -837,9 +837,90 @@ export default class Entity extends RigidBody implements protocol.Serializable { return modelAnimation; } + /** + * Sets the playback rate for all of the entity's model animations. + * + * @remarks + * A value of 1 is normal speed, 0.5 is half speed, 2 is double speed. + * A negative value will play the animation in reverse. + * + * @param playbackRate - The playback rate of the entity's model animations. + * + * **Category:** Entities + */ + public setModelAnimationsPlaybackRate(playbackRate: number) { + if (!this.isModelEntity) return; + + for (const animation of this._modelAnimations.values()) { + animation.setPlaybackRate(playbackRate); + } + } + + /** + * Starts looped animations by name on this entity's model. + * + * @param names - Animation names to start looping. + * + * **Category:** Entities + */ + public startModelLoopedAnimations(names: readonly string[]) { + if (!this.isModelEntity) return; + + for (const name of names) { + const anim = this.getModelAnimation(name); + if (!anim) continue; + anim.setLoopMode(EntityModelAnimationLoopMode.LOOP); + anim.play(); + } + } + + /** + * Starts one-shot animations by name on this entity's model. + * + * @param names - Animation names to play once. + * + * **Category:** Entities + */ + public startModelOneshotAnimations(names: readonly string[]) { + if (!this.isModelEntity) return; + + for (const name of names) { + const anim = this.getModelAnimation(name); + if (!anim) continue; + anim.setLoopMode(EntityModelAnimationLoopMode.ONCE); + anim.play(); + } + } + + /** + * Sets the emissive color for a model node by name. + * + * @param nodeName - The node name to target. + * @param color - The RGB color to set, or undefined to clear. + * + * **Category:** Entities + */ + public setModelNodeEmissiveColor(nodeName: string, color: RgbColor | undefined) { + const override = this.getModelNodeOverride(nodeName); + if (override) override.setEmissiveColor(color); + } + + /** + * Sets the emissive intensity for a model node by name. + * + * @param nodeName - The node name to target. + * @param intensity - The intensity value to set, or undefined to clear. + * + * **Category:** Entities + */ + public setModelNodeEmissiveIntensity(nodeName: string, intensity: number | undefined) { + const override = this.getModelNodeOverride(nodeName); + if (override) override.setEmissiveIntensity(intensity); + } + /** * Gets or lazily creates a model node override for the entity's model. - * + * * @remarks * Model entities only; returns `undefined` for block entities. * If the override does not yet exist, a new instance with default settings is created From 2f69c38f884005146e905f81ac9085a9b5a242da Mon Sep 17 00:00:00 2001 From: web3dev1337 <160291380+web3dev1337@users.noreply.github.com> Date: Fri, 6 Mar 2026 14:40:14 +1100 Subject: [PATCH 21/40] feat: add client-side performance benchmarking via Puppeteer Adds PerfBridge to the client that exposes window.__HYTOPIA_PERF__ with rich snapshots (FPS, draw calls, triangles, entities, chunks, GLTF stats, JS heap). BenchmarkRunner now optionally launches a headless browser via --with-client to collect client metrics alongside server metrics. Includes client threshold support and rich console output. Co-Authored-By: Claude Opus 4.6 --- .../progress.md | 6 ++ client/src/Game.ts | 6 ++ client/src/core/PerfBridge.ts | 63 +++++++++++++++++ packages/perf-tools/src/cli.ts | 4 ++ .../src/reporters/ConsoleReporter.ts | 59 +++++++++++++++- .../src/runners/BaselineComparer.ts | 21 ++++++ .../perf-tools/src/runners/BenchmarkRunner.ts | 69 +++++++++++++++++++ .../perf-tools/src/runners/HeadlessClient.ts | 60 +++++++++++++++- .../perf-tools/src/runners/MetricCollector.ts | 26 +++++++ .../perf-tools/src/runners/ScenarioLoader.ts | 7 ++ 10 files changed, 318 insertions(+), 3 deletions(-) create mode 100644 client/src/core/PerfBridge.ts diff --git a/ai-memory/feature/perf-external-notes-verification-20260305-2249094/progress.md b/ai-memory/feature/perf-external-notes-verification-20260305-2249094/progress.md index 3f834b71..bab1fc2b 100644 --- a/ai-memory/feature/perf-external-notes-verification-20260305-2249094/progress.md +++ b/ai-memory/feature/perf-external-notes-verification-20260305-2249094/progress.md @@ -17,3 +17,9 @@ - [x] Zoo game — added missing Entity methods (setModelAnimationsPlaybackRate, startModelLoopedAnimations, startModelOneshotAnimations, setModelNodeEmissiveColor, setModelNodeEmissiveIntensity) - [x] HyFire2 benchmark — PASS: avg tick 0.61ms, p99 1.34ms, 431MB heap, 1.2GB RSS - [x] Zoo Game benchmark (full PerfHarness) — PASS: avg tick 0.25ms, p99 0.85ms, 313MB heap, 782MB RSS +- [x] Client PerfBridge — window.__HYTOPIA_PERF__.snapshot() exposes FPS, draw calls, triangles, entities, chunks, GLTF, memory +- [x] HeadlessClient updated — snapshot(), waitForPerfReady(), Chrome flags, auto ?perf=1&join= +- [x] BenchmarkRunner — HeadlessClient lifecycle + client metrics polling +- [x] ConsoleReporter — rich client section (FPS, draw calls, triangles, entities, chunks, heap) +- [x] Client thresholds — fps_min, fps_avg, draw_calls_max, triangles_max, frame_time_ms_max +- [x] CLI — --with-client, --client-dev-url flags diff --git a/client/src/Game.ts b/client/src/Game.ts index f420af88..d0a2634c 100644 --- a/client/src/Game.ts +++ b/client/src/Game.ts @@ -23,12 +23,14 @@ import Renderer from './core/Renderer'; import SettingsManager from './settings/SettingsManager'; import UIManager from './ui/UIManager'; import ChunkWorkerClient from './workers/ChunkWorkerClient'; +import PerfBridge from './core/PerfBridge'; const DEBUG_QUERY_STRINGS = 'debug'; export default class Game { private static _instance: Game | undefined; readonly inDebugMode = new URLSearchParams(window.location.search).has(DEBUG_QUERY_STRINGS); + readonly inPerfMode = new URLSearchParams(window.location.search).get('perf') === '1'; private _arrowManager: ArrowManager; private _audioManager: AudioManager; @@ -66,6 +68,10 @@ export default class Game { this._renderer = new Renderer(this); this._chunkWorkerClient = new ChunkWorkerClient(); + if (this.inPerfMode) { + new PerfBridge(this); + } + this._arrowManager = new ArrowManager(this); this._audioManager = new AudioManager(this); this._blockTextureAtlasManager = new BlockTextureAtlasManager(this); diff --git a/client/src/core/PerfBridge.ts b/client/src/core/PerfBridge.ts new file mode 100644 index 00000000..6ec48b18 --- /dev/null +++ b/client/src/core/PerfBridge.ts @@ -0,0 +1,63 @@ +import EntityStats from '../entities/EntityStats'; +import ChunkStats from '../chunks/ChunkStats'; +import GLTFStats from '../gltf/GLTFStats'; +import type Game from '../Game'; + +export default class PerfBridge { + private _game: Game; + + constructor(game: Game) { + this._game = game; + + const self = this; + const perf: any = { + snapshot: () => self._snapshot(), + get fps() { return game.performanceMetricsManager.fps; }, + get frameTimeMs() { return game.performanceMetricsManager.deltaTime * 1000; }, + get drawCalls() { return game.renderer.webGLRenderer.info.render.calls; }, + get triangles() { return game.renderer.webGLRenderer.info.render.triangles; }, + get textureMemoryMb() { return 0; }, + }; + + (window as any).__HYTOPIA_PERF__ = perf; + } + + private _snapshot() { + const perf = this._game.performanceMetricsManager; + const info = this._game.renderer.webGLRenderer.info; + + return { + fps: perf.fps, + frameTimeMs: perf.deltaTime * 1000, + drawCalls: info.render.calls, + triangles: info.render.triangles, + geometries: info.memory.geometries, + textures: info.memory.textures, + programs: (info as any).programs?.length ?? 0, + textureMemoryMb: 0, + usedMemoryMb: perf.usedMemory / (1024 * 1024), + totalMemoryMb: perf.totalMemory / (1024 * 1024), + entities: { + count: EntityStats.count, + inViewDistance: EntityStats.inViewDistanceCount, + frustumCulled: EntityStats.frustumCulledCount, + staticEnvironment: EntityStats.staticEnvironmentCount, + }, + chunks: { + count: ChunkStats.count, + visible: ChunkStats.visibleCount, + blocks: ChunkStats.blockCount, + opaqueFaces: ChunkStats.opaqueFaceCount, + transparentFaces: ChunkStats.transparentFaceCount, + liquidFaces: ChunkStats.liquidFaceCount, + }, + gltf: { + files: GLTFStats.fileCount, + sourceMeshes: GLTFStats.sourceMeshCount, + clonedMeshes: GLTFStats.clonedMeshCount, + instancedMeshes: GLTFStats.instancedMeshCount, + drawCallsSaved: GLTFStats.drawCallsSaved, + }, + }; + } +} diff --git a/packages/perf-tools/src/cli.ts b/packages/perf-tools/src/cli.ts index 53209244..730300b4 100644 --- a/packages/perf-tools/src/cli.ts +++ b/packages/perf-tools/src/cli.ts @@ -33,6 +33,8 @@ program .option('--no-headless', 'Run browser in visible mode') .option('--no-perf-api', 'Skip PerfHarness API, use only OS-level monitoring') .option('--log-file ', 'Capture server stdout/stderr to file') + .option('--with-client', 'Launch headless browser client and collect client-side metrics') + .option('--client-dev-url ', 'URL for the Vite client dev server', 'http://localhost:5173') .option('--verbose', 'Enable verbose logging') .action(async (scenarioPath, options) => { let scenario; @@ -57,6 +59,8 @@ program serverCommand: options.serverCmd, serverCwd: options.serverCwd, clientUrl: options.clientUrl, + clientDevUrl: options.clientDevUrl, + withClient: options.withClient ?? false, headless: options.headless !== false, verbose: options.verbose, noPerfApi: options.perfApi === false, diff --git a/packages/perf-tools/src/reporters/ConsoleReporter.ts b/packages/perf-tools/src/reporters/ConsoleReporter.ts index c5159831..1b158ade 100644 --- a/packages/perf-tools/src/reporters/ConsoleReporter.ts +++ b/packages/perf-tools/src/reporters/ConsoleReporter.ts @@ -30,7 +30,21 @@ export default class ConsoleReporter { console.log(` FDs: max=${pm.maxFds}`); } - if (b.avgFps !== undefined) { + if (b.client) { + console.log(''); + console.log('Client Performance:'); + console.log(` FPS: avg=${b.client.avgFps.toFixed(1)} min=${b.client.minFps.toFixed(1)}`); + console.log(` Frame time: avg=${b.client.avgFrameTimeMs.toFixed(2)}ms`); + console.log(` Draw calls: avg=${b.client.avgDrawCalls.toFixed(0)} max=${b.client.maxDrawCalls}`); + console.log(` Triangles: avg=${this._formatK(b.client.avgTriangles)} max=${this._formatK(b.client.maxTriangles)}`); + console.log(` Geometries: avg=${b.client.avgGeometries.toFixed(0)}`); + console.log(` Entities: avg=${b.client.avgEntities.toFixed(0)}`); + console.log(` Visible chunks: avg=${b.client.avgVisibleChunks.toFixed(0)}`); + + if (b.client.avgUsedMemoryMb > 0) { + console.log(` JS Heap: avg=${b.client.avgUsedMemoryMb.toFixed(1)}MB`); + } + } else if (b.avgFps !== undefined) { console.log(`Client FPS: ${b.avgFps.toFixed(1)} avg`); } @@ -121,6 +135,45 @@ export default class ConsoleReporter { console.log(` ${pass ? 'PASS' : 'FAIL'} memory ${b.avgMemoryMb.toFixed(1)}MB <= ${t.memory_mb.max}MB`); } + if (t.client && b.client) { + const ct = t.client; + + if (ct.fps_min !== undefined) { + const pass = b.client.minFps >= ct.fps_min; + + allPass = allPass && pass; + console.log(` ${pass ? 'PASS' : 'FAIL'} client minFps ${b.client.minFps.toFixed(1)} >= ${ct.fps_min}`); + } + + if (ct.fps_avg !== undefined) { + const pass = b.client.avgFps >= ct.fps_avg; + + allPass = allPass && pass; + console.log(` ${pass ? 'PASS' : 'FAIL'} client avgFps ${b.client.avgFps.toFixed(1)} >= ${ct.fps_avg}`); + } + + if (ct.draw_calls_max !== undefined) { + const pass = b.client.maxDrawCalls <= ct.draw_calls_max; + + allPass = allPass && pass; + console.log(` ${pass ? 'PASS' : 'FAIL'} client maxDrawCalls ${b.client.maxDrawCalls} <= ${ct.draw_calls_max}`); + } + + if (ct.triangles_max !== undefined) { + const pass = b.client.maxTriangles <= ct.triangles_max; + + allPass = allPass && pass; + console.log(` ${pass ? 'PASS' : 'FAIL'} client maxTriangles ${b.client.maxTriangles} <= ${ct.triangles_max}`); + } + + if (ct.frame_time_ms_max !== undefined) { + const pass = b.client.avgFrameTimeMs <= ct.frame_time_ms_max; + + allPass = allPass && pass; + console.log(` ${pass ? 'PASS' : 'FAIL'} client avgFrameTime ${b.client.avgFrameTimeMs.toFixed(2)}ms <= ${ct.frame_time_ms_max}ms`); + } + } + if (t.network?.maxBytesPerSecond !== undefined && b.network) { const pass = b.network.maxBytesSentPerSecond <= t.network.maxBytesPerSecond; @@ -132,6 +185,10 @@ export default class ConsoleReporter { console.log(''); } + private _formatK(n: number): string { + return n >= 1000 ? `${(n / 1000).toFixed(1)}k` : n.toFixed(0); + } + private _statusIcon(status: 'pass' | 'warning' | 'fail'): string { switch (status) { case 'pass': return 'OK'; diff --git a/packages/perf-tools/src/runners/BaselineComparer.ts b/packages/perf-tools/src/runners/BaselineComparer.ts index 0ec49501..ca6ef129 100644 --- a/packages/perf-tools/src/runners/BaselineComparer.ts +++ b/packages/perf-tools/src/runners/BaselineComparer.ts @@ -8,6 +8,19 @@ export interface BaselineResult { ticksOverBudgetPct: number; avgMemoryMb: number; avgFps?: number; + client?: { + avgFps: number; + minFps: number; + avgFrameTimeMs: number; + avgDrawCalls: number; + maxDrawCalls: number; + avgTriangles: number; + maxTriangles: number; + avgGeometries: number; + avgEntities: number; + avgVisibleChunks: number; + avgUsedMemoryMb: number; + }; operations: Record; network?: { totalBytesSent: number; @@ -70,6 +83,14 @@ export default class BaselineComparer { entries.push(this._compareMetric('avgFps', baseline.avgFps, current.avgFps, true)); } + if (baseline.client && current.client) { + entries.push(this._compareMetric('client.avgFps', baseline.client.avgFps, current.client.avgFps, true)); + entries.push(this._compareMetric('client.minFps', baseline.client.minFps, current.client.minFps, true)); + entries.push(this._compareMetric('client.avgDrawCalls', baseline.client.avgDrawCalls, current.client.avgDrawCalls)); + entries.push(this._compareMetric('client.avgTriangles', baseline.client.avgTriangles, current.client.avgTriangles)); + entries.push(this._compareMetric('client.avgFrameTimeMs', baseline.client.avgFrameTimeMs, current.client.avgFrameTimeMs)); + } + if (baseline.network && current.network) { entries.push(this._compareMetric('net.maxBytesSentPerSecond', baseline.network.maxBytesSentPerSecond, current.network.maxBytesSentPerSecond)); entries.push(this._compareMetric('net.avgBytesSentPerSecond', baseline.network.avgBytesSentPerSecond, current.network.avgBytesSentPerSecond)); diff --git a/packages/perf-tools/src/runners/BenchmarkRunner.ts b/packages/perf-tools/src/runners/BenchmarkRunner.ts index c90a602e..663f25ae 100644 --- a/packages/perf-tools/src/runners/BenchmarkRunner.ts +++ b/packages/perf-tools/src/runners/BenchmarkRunner.ts @@ -2,6 +2,7 @@ import * as fs from 'node:fs'; import * as path from 'node:path'; import * as net from 'node:net'; import { spawn, type ChildProcess } from 'node:child_process'; +import HeadlessClient from './HeadlessClient.js'; import MetricCollector, { type CollectedMetrics } from './MetricCollector.js'; import ProcessMonitor, { type ProcessMetrics } from './ProcessMonitor.js'; import ServerApiClient from './ServerApiClient.js'; @@ -13,6 +14,8 @@ export interface BenchmarkRunnerOptions { serverCommand?: string; serverCwd?: string; clientUrl?: string; + clientDevUrl?: string; + withClient?: boolean; headless?: boolean; verbose?: boolean; noPerfApi?: boolean; @@ -39,6 +42,7 @@ export default class BenchmarkRunner { private _collector: MetricCollector; private _processMonitor: ProcessMonitor; private _serverProcess: ChildProcess | null = null; + private _headlessClient: HeadlessClient | null = null; private _serverApi: ServerApiClient; private _wsClients: WsClient[] = []; private _perfApiAvailable: boolean = true; @@ -50,6 +54,8 @@ export default class BenchmarkRunner { serverCommand: options?.serverCommand ?? 'npm run build:perf-harness && node src/perf-harness.mjs', serverCwd: options?.serverCwd ?? resolveDefaultServerCwd(process.cwd()), clientUrl: options?.clientUrl ?? 'https://local.hytopiahosting.com:8080', + clientDevUrl: options?.clientDevUrl ?? '', + withClient: options?.withClient ?? false, headless: options?.headless ?? true, verbose: options?.verbose ?? false, noPerfApi: options?.noPerfApi ?? false, @@ -81,6 +87,34 @@ export default class BenchmarkRunner { await this._serverApi.waitForHealthy(); + // Launch headless client if configured + if (this._options.withClient && this._options.clientDevUrl) { + this._log(`[bench] Launching headless client: ${this._options.clientDevUrl}`); + + this._headlessClient = new HeadlessClient({ + url: this._options.clientDevUrl, + headless: this._options.headless, + }); + + await this._headlessClient.launch(); + + // Navigate with ?join= and ?perf=1 (auto-appended by HeadlessClient) + const serverUrl = new URL(this._options.clientUrl); + const clientNavUrl = new URL(this._options.clientDevUrl); + + clientNavUrl.searchParams.set('join', serverUrl.host); + + await this._headlessClient.navigate(clientNavUrl.toString()); + + const perfReady = await this._headlessClient.waitForPerfReady(30000); + + if (!perfReady) { + this._log('[bench] WARNING: Client perf bridge not ready after 30s — client metrics may be unavailable'); + } else { + this._log('[bench] Client perf bridge ready'); + } + } + // probe PerfHarness availability unless explicitly disabled if (this._perfApiAvailable) { this._perfApiAvailable = await this._probePerfApi(); @@ -278,6 +312,18 @@ export default class BenchmarkRunner { this._perfApiAvailable = false; } } + + if (this._headlessClient?.isConnected) { + try { + const clientSnapshot = await this._headlessClient.collectClientMetrics(); + + if (clientSnapshot) { + this._collector.addClientSnapshot(clientSnapshot); + } + } catch { + this._log('[bench] Client metric collection failed'); + } + } } } @@ -391,6 +437,11 @@ export default class BenchmarkRunner { } private async _cleanup(): Promise { + if (this._headlessClient) { + await this._headlessClient.close(); + this._headlessClient = null; + } + for (const client of this._wsClients) { await client.close(); } @@ -457,6 +508,23 @@ export default class BenchmarkRunner { } const clientSnapshots = metrics.clientSnapshots; + + const client = clientSnapshots.length > 0 + ? { + avgFps: average(clientSnapshots, s => s.fps), + minFps: Math.min(...clientSnapshots.map(s => s.fps)), + avgFrameTimeMs: average(clientSnapshots, s => s.frameTimeMs), + avgDrawCalls: average(clientSnapshots, s => s.drawCalls), + maxDrawCalls: max(clientSnapshots, s => s.drawCalls), + avgTriangles: average(clientSnapshots, s => s.triangles), + maxTriangles: max(clientSnapshots, s => s.triangles), + avgGeometries: average(clientSnapshots, s => s.geometries ?? 0), + avgEntities: average(clientSnapshots, s => s.entities?.count ?? 0), + avgVisibleChunks: average(clientSnapshots, s => s.chunks?.visible ?? 0), + avgUsedMemoryMb: average(clientSnapshots, s => s.usedMemoryMb ?? 0), + } + : undefined; + const avgFps = clientSnapshots.length > 0 ? clientSnapshots.reduce((s, v) => s + v.fps, 0) / clientSnapshots.length : undefined; @@ -488,6 +556,7 @@ export default class BenchmarkRunner { ticksOverBudgetPct: totalTicks > 0 ? (overBudget / totalTicks) * 100 : 0, avgMemoryMb, avgFps, + client, operations, network, }; diff --git a/packages/perf-tools/src/runners/HeadlessClient.ts b/packages/perf-tools/src/runners/HeadlessClient.ts index cc1f9fa3..a28c4a9d 100644 --- a/packages/perf-tools/src/runners/HeadlessClient.ts +++ b/packages/perf-tools/src/runners/HeadlessClient.ts @@ -44,6 +44,10 @@ export default class HeadlessClient { '--no-sandbox', '--disable-setuid-sandbox', '--disable-gpu', + '--ignore-certificate-errors', + '--enable-precise-memory-info', + '--disable-notifications', + '--autoplay-policy=no-user-gesture-required', `--window-size=${this._options.width},${this._options.height}`, ], }); @@ -72,23 +76,75 @@ export default class HeadlessClient { if (!page) throw new Error('Client not launched. Call launch() first.'); - const target = url ?? this._options.url; + const target = new URL(url ?? this._options.url); - await page.goto(target, { waitUntil: 'networkidle2', timeout: 30000 }); + target.searchParams.set('perf', '1'); + + await page.goto(target.toString(), { waitUntil: 'networkidle2', timeout: 60000 }); this._connected = true; } + public async waitForPerfReady(timeoutMs: number = 30000): Promise { + const page = this._page as any; + + if (!page) return false; + + const start = Date.now(); + + while (Date.now() - start < timeoutMs) { + try { + const ready = await page.evaluate(() => { + const perf = (window as any).__HYTOPIA_PERF__; + + return perf && typeof perf.snapshot === 'function'; + }); + + if (ready) return true; + } catch { + // page not ready yet + } + + await new Promise(resolve => setTimeout(resolve, 500)); + } + + return false; + } + + public async dismissModals(): Promise { + const page = this._page as any; + + if (!page) return; + + try { + await page.evaluate(() => { + const buttons = document.querySelectorAll('.hytopia-modal-button-ok'); + + buttons.forEach((btn: any) => btn.click()); + }); + } catch { + // no modals present + } + } + public async collectClientMetrics(): Promise { const page = this._page as any; if (!page || !this._connected) return null; try { + // Dismiss any modals that might have appeared + await this.dismissModals(); + const metrics = await page.evaluate(() => { const perf = (window as any).__HYTOPIA_PERF__; if (!perf) return null; + // Prefer snapshot() method (rich data), fall back to flat properties + if (typeof perf.snapshot === 'function') { + return perf.snapshot(); + } + return { fps: perf.fps ?? 0, frameTimeMs: perf.frameTimeMs ?? 0, diff --git a/packages/perf-tools/src/runners/MetricCollector.ts b/packages/perf-tools/src/runners/MetricCollector.ts index 8aff4c81..fad15ae1 100644 --- a/packages/perf-tools/src/runners/MetricCollector.ts +++ b/packages/perf-tools/src/runners/MetricCollector.ts @@ -55,6 +55,32 @@ export interface ClientSnapshot { drawCalls: number; triangles: number; textureMemoryMb: number; + geometries?: number; + textures?: number; + programs?: number; + usedMemoryMb?: number; + totalMemoryMb?: number; + entities?: { + count: number; + inViewDistance: number; + frustumCulled: number; + staticEnvironment: number; + }; + chunks?: { + count: number; + visible: number; + blocks: number; + opaqueFaces: number; + transparentFaces: number; + liquidFaces: number; + }; + gltf?: { + files: number; + sourceMeshes: number; + clonedMeshes: number; + instancedMeshes: number; + drawCallsSaved: number; + }; } export interface TickReportEntry { diff --git a/packages/perf-tools/src/runners/ScenarioLoader.ts b/packages/perf-tools/src/runners/ScenarioLoader.ts index bef23661..353c1596 100644 --- a/packages/perf-tools/src/runners/ScenarioLoader.ts +++ b/packages/perf-tools/src/runners/ScenarioLoader.ts @@ -59,6 +59,13 @@ export interface ScenarioThresholds { memory_mb?: { max?: number }; fps?: { min?: number; avg?: number }; network?: { maxBytesPerSecond?: number }; + client?: { + fps_min?: number; + fps_avg?: number; + draw_calls_max?: number; + triangles_max?: number; + frame_time_ms_max?: number; + }; } export interface Scenario { From aac6de25ec975e6e54b6aa41f666d51843cf77d5 Mon Sep 17 00:00:00 2001 From: web3dev1337 <160291380+web3dev1337@users.noreply.github.com> Date: Fri, 6 Mar 2026 14:50:42 +1100 Subject: [PATCH 22/40] fix: HeadlessClient navigation + graceful error handling Changed waitUntil from 'networkidle2' to 'load' since the game client maintains persistent WebSocket connections that prevent network idle. Added try-catch around HeadlessClient launch in BenchmarkRunner so client failures don't crash the whole benchmark. Verified: idle benchmark with --with-client shows client metrics (FPS, draw calls, triangles, entities, chunks, JS heap). Co-Authored-By: Claude Opus 4.6 --- .../perf-tools/perf-results/client-test.json | 110 ++++++++++++++++++ .../perf-tools/src/runners/BenchmarkRunner.ts | 37 +++--- .../perf-tools/src/runners/HeadlessClient.ts | 2 +- 3 files changed, 132 insertions(+), 17 deletions(-) create mode 100644 packages/perf-tools/perf-results/client-test.json diff --git a/packages/perf-tools/perf-results/client-test.json b/packages/perf-tools/perf-results/client-test.json new file mode 100644 index 00000000..95797fe7 --- /dev/null +++ b/packages/perf-tools/perf-results/client-test.json @@ -0,0 +1,110 @@ +{ + "timestamp": "2026-03-06T03:50:19.546Z", + "scenario": "idle-baseline", + "durationMs": 38015, + "baseline": { + "avgTickMs": 0.10509636761701698, + "maxTickMs": 1.5870759999997972, + "p95TickMs": 0.19848203333367564, + "p99TickMs": 0.4574418000003789, + "ticksOverBudgetPct": 0, + "avgMemoryMb": 40.64117304484049, + "avgFps": 22.633333333333333, + "client": { + "avgFps": 22.633333333333333, + "minFps": 3, + "avgFrameTimeMs": 120.36333333353201, + "avgDrawCalls": 10.533333333333333, + "maxDrawCalls": 18, + "avgTriangles": 21.533333333333335, + "maxTriangles": 29, + "avgGeometries": 3, + "avgEntities": 0, + "avgVisibleChunks": 0, + "avgUsedMemoryMb": 22.929159450531007 + }, + "operations": { + "entities_tick": { + "avgMs": 0.002355539196527502, + "p95Ms": 0.00393376666658393 + }, + "physics_step": { + "avgMs": 0.05508578752695078, + "p95Ms": 0.10080239999982345 + }, + "physics_cleanup": { + "avgMs": 0.005681067880410075, + "p95Ms": 0.009226033332864366 + }, + "simulation_step": { + "avgMs": 0.06782869143775062, + "p95Ms": 0.12544263333335645 + }, + "entities_emit_updates": { + "avgMs": 0.0011049729863573338, + "p95Ms": 0.0015884333342304066 + }, + "world_tick": { + "avgMs": 0.10100038014902117, + "p95Ms": 0.19790933333339733 + }, + "ticker_tick": { + "avgMs": 0.16309557437579641, + "p95Ms": 0.3085689999996854 + }, + "send_all_packets": { + "avgMs": 0.009582162449672945, + "p95Ms": 0.013340566666738597 + }, + "network_synchronize_cleanup": { + "avgMs": 0.005140343541354979, + "p95Ms": 0.007651700000678829 + }, + "network_synchronize": { + "avgMs": 0.03168433978267145, + "p95Ms": 0.06539170000044882 + }, + "serialize_packets": { + "avgMs": 0.04629544951281564, + "p95Ms": 0.1200052333334194 + }, + "send_packets": { + "avgMs": 0.22306792835377331, + "p95Ms": 0.353266766666214 + } + }, + "network": { + "totalBytesSent": 863, + "totalBytesReceived": 82, + "maxConnectedPlayers": 1, + "avgBytesSentPerSecond": 24.58973985157189, + "maxBytesSentPerSecond": 49.53961423158536, + "avgBytesReceivedPerSecond": 2.313008765227393, + "maxBytesReceivedPerSecond": 6.799554894531324, + "avgPacketsSentPerSecond": 0.7066455575496745, + "maxPacketsSentPerSecond": 1.9427299698660927, + "avgPacketsReceivedPerSecond": 0.7066455575496745, + "maxPacketsReceivedPerSecond": 1.9427299698660927, + "avgSerializationMs": 0.04293827827864953, + "compressionCountTotal": 0 + } + }, + "phases": [ + { + "name": "warmup", + "durationMs": 5001, + "collected": false + }, + { + "name": "measure", + "durationMs": 29588, + "collected": true + } + ], + "metrics": { + "tickReportCount": 0, + "spikeCount": 0, + "serverSnapshotCount": 30, + "clientSnapshotCount": 30 + } +} \ No newline at end of file diff --git a/packages/perf-tools/src/runners/BenchmarkRunner.ts b/packages/perf-tools/src/runners/BenchmarkRunner.ts index 663f25ae..ae6aea66 100644 --- a/packages/perf-tools/src/runners/BenchmarkRunner.ts +++ b/packages/perf-tools/src/runners/BenchmarkRunner.ts @@ -89,29 +89,34 @@ export default class BenchmarkRunner { // Launch headless client if configured if (this._options.withClient && this._options.clientDevUrl) { - this._log(`[bench] Launching headless client: ${this._options.clientDevUrl}`); + try { + this._log(`[bench] Launching headless client: ${this._options.clientDevUrl}`); - this._headlessClient = new HeadlessClient({ - url: this._options.clientDevUrl, - headless: this._options.headless, - }); + this._headlessClient = new HeadlessClient({ + url: this._options.clientDevUrl, + headless: this._options.headless, + }); - await this._headlessClient.launch(); + await this._headlessClient.launch(); - // Navigate with ?join= and ?perf=1 (auto-appended by HeadlessClient) - const serverUrl = new URL(this._options.clientUrl); - const clientNavUrl = new URL(this._options.clientDevUrl); + // Navigate with ?join= and ?perf=1 (auto-appended by HeadlessClient) + const serverUrl = new URL(this._options.clientUrl); + const clientNavUrl = new URL(this._options.clientDevUrl); - clientNavUrl.searchParams.set('join', serverUrl.host); + clientNavUrl.searchParams.set('join', serverUrl.host); - await this._headlessClient.navigate(clientNavUrl.toString()); + await this._headlessClient.navigate(clientNavUrl.toString()); - const perfReady = await this._headlessClient.waitForPerfReady(30000); + const perfReady = await this._headlessClient.waitForPerfReady(30000); - if (!perfReady) { - this._log('[bench] WARNING: Client perf bridge not ready after 30s — client metrics may be unavailable'); - } else { - this._log('[bench] Client perf bridge ready'); + if (!perfReady) { + this._log('[bench] WARNING: Client perf bridge not ready after 30s — client metrics may be unavailable'); + } else { + this._log('[bench] Client perf bridge ready'); + } + } catch (err: any) { + this._log(`[bench] WARNING: Headless client failed to launch: ${err?.message ?? err}`); + this._headlessClient = null; } } diff --git a/packages/perf-tools/src/runners/HeadlessClient.ts b/packages/perf-tools/src/runners/HeadlessClient.ts index a28c4a9d..dee1e340 100644 --- a/packages/perf-tools/src/runners/HeadlessClient.ts +++ b/packages/perf-tools/src/runners/HeadlessClient.ts @@ -80,7 +80,7 @@ export default class HeadlessClient { target.searchParams.set('perf', '1'); - await page.goto(target.toString(), { waitUntil: 'networkidle2', timeout: 60000 }); + await page.goto(target.toString(), { waitUntil: 'load', timeout: 60000 }); this._connected = true; } From 4e716cc8645504fb2f1315a725f2007cc20110c3 Mon Sep 17 00:00:00 2001 From: web3dev1337 <160291380+web3dev1337@users.noreply.github.com> Date: Fri, 6 Mar 2026 15:28:54 +1100 Subject: [PATCH 23/40] feat: fix HeadlessClient connection + A/B benchmark PR #2 blob shadows - Fix HeadlessClient: ignoreHTTPSErrors, CDP cert bypass, SwiftShader GL - Patch fetch() to strip unsupported targetAddressSpace (Chrome PNA API) - Add warmCert step for self-signed HTTPS certs - Fix BaselineComparer: null-safe operations, nested JSON format support - Add console log forwarding from headless browser for debugging - A/B results: blob shadows add +1 draw call, +6.7% frame time, +0.9% triangles Co-Authored-By: Claude Opus 4.6 --- .../progress.md | 10 ++ .../stress-baseline-no-shadows.json | 115 ++++++++++++++++++ .../stress-with-blob-shadows.json | 115 ++++++++++++++++++ .../src/runners/BaselineComparer.ts | 12 +- .../perf-tools/src/runners/BenchmarkRunner.ts | 4 + .../perf-tools/src/runners/HeadlessClient.ts | 59 ++++++++- 6 files changed, 309 insertions(+), 6 deletions(-) create mode 100644 packages/perf-tools/perf-results/stress-baseline-no-shadows.json create mode 100644 packages/perf-tools/perf-results/stress-with-blob-shadows.json diff --git a/ai-memory/feature/perf-external-notes-verification-20260305-2249094/progress.md b/ai-memory/feature/perf-external-notes-verification-20260305-2249094/progress.md index bab1fc2b..81b78849 100644 --- a/ai-memory/feature/perf-external-notes-verification-20260305-2249094/progress.md +++ b/ai-memory/feature/perf-external-notes-verification-20260305-2249094/progress.md @@ -23,3 +23,13 @@ - [x] ConsoleReporter — rich client section (FPS, draw calls, triangles, entities, chunks, heap) - [x] Client thresholds — fps_min, fps_avg, draw_calls_max, triangles_max, frame_time_ms_max - [x] CLI — --with-client, --client-dev-url flags +- [x] HeadlessClient fix — waitUntil 'load' instead of 'networkidle2' (game keeps persistent connections) +- [x] BenchmarkRunner — graceful HeadlessClient error handling (try-catch around launch) +- [x] Verified: client metrics pipeline — FPS avg=22.6, draw calls avg=11, triangles avg=22, JS heap avg=22.9MB (idle scene, no entities/chunks in headless) +- [x] Fixed: HeadlessClient ignoreHTTPSErrors + CDP Security.setIgnoreCertificateErrors +- [x] Fixed: Patched fetch() to strip unsupported targetAddressSpace (Chrome PNA API) +- [x] Fixed: warmCert step to pre-accept self-signed HTTPS cert +- [x] Fixed: Replaced --disable-gpu with --use-gl=swiftshader for WebGL rendering +- [x] Fixed: BaselineComparer operations null-safety + loadBaseline nested format support +- [x] A/B Benchmark PR #2 (blob shadows) — COMPLETED with real client metrics +- [x] All pushed to origin diff --git a/packages/perf-tools/perf-results/stress-baseline-no-shadows.json b/packages/perf-tools/perf-results/stress-baseline-no-shadows.json new file mode 100644 index 00000000..4a7f9f46 --- /dev/null +++ b/packages/perf-tools/perf-results/stress-baseline-no-shadows.json @@ -0,0 +1,115 @@ +{ + "timestamp": "2026-03-06T04:26:31.503Z", + "scenario": "stress-test", + "durationMs": 72899, + "baseline": { + "avgTickMs": 0.8349998947705856, + "maxTickMs": 12.012511000000814, + "p95TickMs": 2.072938316667266, + "p99TickMs": 4.238928266666274, + "ticksOverBudgetPct": 0, + "avgMemoryMb": 50.96484451293945, + "avgFps": 27.766666666666666, + "client": { + "avgFps": 27.766666666666666, + "minFps": 3, + "avgFrameTimeMs": 78.53666666746139, + "avgDrawCalls": 20.55, + "maxDrawCalls": 34, + "avgTriangles": 15433.466666666667, + "maxTriangles": 15947, + "avgGeometries": 18.983333333333334, + "avgEntities": 160, + "avgVisibleChunks": 6, + "avgUsedMemoryMb": 43.06479082107544 + }, + "operations": { + "entities_tick": { + "avgMs": 0.23867919862251075, + "p95Ms": 0.5874405166665383 + }, + "physics_step": { + "avgMs": 0.17312055879655402, + "p95Ms": 0.2684500000008484 + }, + "physics_cleanup": { + "avgMs": 0.007628609808494264, + "p95Ms": 0.007743966666870013 + }, + "simulation_step": { + "avgMs": 0.18813084050636156, + "p95Ms": 0.2958727833336828 + }, + "entities_emit_updates": { + "avgMs": 0.12927259610653663, + "p95Ms": 0.20604898333376695 + }, + "world_tick": { + "avgMs": 0.8291072575136396, + "p95Ms": 2.0896416499992787 + }, + "ticker_tick": { + "avgMs": 0.8990740486842234, + "p95Ms": 2.161601066666359 + }, + "serialize_packets": { + "avgMs": 0.05005582133096542, + "p95Ms": 0.06791426666650295 + }, + "send_packets": { + "avgMs": 0.2031820219195983, + "p95Ms": 0.3274495666664734 + }, + "send_all_packets": { + "avgMs": 0.4511723627023677, + "p95Ms": 0.9337175666661399 + }, + "network_synchronize_cleanup": { + "avgMs": 0.01083250275368758, + "p95Ms": 0.010753250000016123 + }, + "network_synchronize": { + "avgMs": 0.5143490774603025, + "p95Ms": 1.066514683332995 + } + }, + "network": { + "totalBytesSent": 5032278, + "totalBytesReceived": 381, + "maxConnectedPlayers": 3, + "avgBytesSentPerSecond": 74639.01842524527, + "maxBytesSentPerSecond": 112504.69959902228, + "avgBytesReceivedPerSecond": 5.6677308601674525, + "maxBytesReceivedPerSecond": 12.614810201718903, + "avgPacketsSentPerSecond": 82.37081361141468, + "maxPacketsSentPerSecond": 99.33494328345606, + "avgPacketsReceivedPerSecond": 1.7251234329295149, + "maxPacketsReceivedPerSecond": 3.881480062067355, + "avgSerializationMs": 0.04555379460987558, + "compressionCountTotal": 2 + } + }, + "phases": [ + { + "name": "spawn-entities", + "durationMs": 283, + "collected": false + }, + { + "name": "stabilize", + "durationMs": 2079, + "collected": false + }, + { + "name": "measure", + "durationMs": 62049, + "collected": true + } + ], + "metrics": { + "tickReportCount": 0, + "spikeCount": 0, + "serverSnapshotCount": 60, + "clientSnapshotCount": 60 + } +} \ No newline at end of file diff --git a/packages/perf-tools/perf-results/stress-with-blob-shadows.json b/packages/perf-tools/perf-results/stress-with-blob-shadows.json new file mode 100644 index 00000000..aaf88f62 --- /dev/null +++ b/packages/perf-tools/perf-results/stress-with-blob-shadows.json @@ -0,0 +1,115 @@ +{ + "timestamp": "2026-03-06T04:27:59.625Z", + "scenario": "stress-test", + "durationMs": 73358, + "baseline": { + "avgTickMs": 0.7359029286488398, + "maxTickMs": 13.290815000000293, + "p95TickMs": 1.829545699999653, + "p99TickMs": 3.758559049999955, + "ticksOverBudgetPct": 0, + "avgMemoryMb": 65.29272626241048, + "avgFps": 26.133333333333333, + "client": { + "avgFps": 26.133333333333333, + "minFps": 3, + "avgFrameTimeMs": 83.7683333337307, + "avgDrawCalls": 21.933333333333334, + "maxDrawCalls": 34, + "avgTriangles": 15564.7, + "maxTriangles": 16717, + "avgGeometries": 18.983333333333334, + "avgEntities": 160, + "avgVisibleChunks": 6, + "avgUsedMemoryMb": 42.87554248174032 + }, + "operations": { + "entities_tick": { + "avgMs": 0.23253740997715816, + "p95Ms": 0.6180427999991783 + }, + "physics_step": { + "avgMs": 0.17034304841306572, + "p95Ms": 0.28114455000083277 + }, + "physics_cleanup": { + "avgMs": 0.005363463158733647, + "p95Ms": 0.007633716666593197 + }, + "simulation_step": { + "avgMs": 0.18412275955659105, + "p95Ms": 0.31188256666694847 + }, + "entities_emit_updates": { + "avgMs": 0.13922205929656295, + "p95Ms": 0.22354569999891585 + }, + "world_tick": { + "avgMs": 0.7279635695853309, + "p95Ms": 1.7226242000005791 + }, + "ticker_tick": { + "avgMs": 0.7914679062679743, + "p95Ms": 1.8152888833331418 + }, + "serialize_packets": { + "avgMs": 0.04350473671018177, + "p95Ms": 0.06910131666694118 + }, + "send_packets": { + "avgMs": 0.2378755490273082, + "p95Ms": 0.3898857000008017 + }, + "send_all_packets": { + "avgMs": 0.25720112163234377, + "p95Ms": 0.42160113333417637 + }, + "network_synchronize_cleanup": { + "avgMs": 0.007394239075581019, + "p95Ms": 0.011449733333120094 + }, + "network_synchronize": { + "avgMs": 0.3093806637599563, + "p95Ms": 0.49408704999987096 + } + }, + "network": { + "totalBytesSent": 1968736, + "totalBytesReceived": 158, + "maxConnectedPlayers": 1, + "avgBytesSentPerSecond": 28946.035070796195, + "maxBytesSentPerSecond": 39833.57688983931, + "avgBytesReceivedPerSecond": 2.3142748083937827, + "maxBytesReceivedPerSecond": 6.7732385632630665, + "avgPacketsSentPerSecond": 31.198995516308436, + "maxPacketsSentPerSecond": 33.44922483163599, + "avgPacketsReceivedPerSecond": 0.7040805818582495, + "maxPacketsReceivedPerSecond": 1.9352110180751618, + "avgSerializationMs": 0.039125146425009125, + "compressionCountTotal": 0 + } + }, + "phases": [ + { + "name": "spawn-entities", + "durationMs": 268, + "collected": false + }, + { + "name": "stabilize", + "durationMs": 2045, + "collected": false + }, + { + "name": "measure", + "durationMs": 62098, + "collected": true + } + ], + "metrics": { + "tickReportCount": 0, + "spikeCount": 0, + "serverSnapshotCount": 60, + "clientSnapshotCount": 60 + } +} \ No newline at end of file diff --git a/packages/perf-tools/src/runners/BaselineComparer.ts b/packages/perf-tools/src/runners/BaselineComparer.ts index ca6ef129..27134711 100644 --- a/packages/perf-tools/src/runners/BaselineComparer.ts +++ b/packages/perf-tools/src/runners/BaselineComparer.ts @@ -97,10 +97,10 @@ export default class BaselineComparer { entries.push(this._compareMetric('net.avgSerializationMs', baseline.network.avgSerializationMs, current.network.avgSerializationMs)); } - const allBaselineOps = new Set([...Object.keys(baseline.operations), ...Object.keys(current.operations)]); + const allBaselineOps = new Set([...Object.keys(baseline.operations ?? {}), ...Object.keys(current.operations ?? {})]); for (const op of allBaselineOps) { - if (baseline.operations[op] && current.operations[op]) { + if (baseline.operations?.[op] && current.operations?.[op]) { entries.push(this._compareMetric(`ops.${op}.avgMs`, baseline.operations[op].avgMs, current.operations[op].avgMs)); entries.push(this._compareMetric(`ops.${op}.p95Ms`, baseline.operations[op].p95Ms, current.operations[op].p95Ms)); } @@ -123,8 +123,14 @@ export default class BaselineComparer { public static loadBaseline(filePath: string): BaselineResult { const content = fs.readFileSync(filePath, 'utf-8'); + const data = JSON.parse(content); - return JSON.parse(content) as BaselineResult; + // Support both raw baseline files and full report files (which have a .baseline field) + if (data.baseline && typeof data.baseline === 'object' && 'avgTickMs' in data.baseline) { + return data.baseline as BaselineResult; + } + + return data as BaselineResult; } public static saveBaseline(filePath: string, baseline: BaselineResult): void { diff --git a/packages/perf-tools/src/runners/BenchmarkRunner.ts b/packages/perf-tools/src/runners/BenchmarkRunner.ts index ae6aea66..9d4a2cab 100644 --- a/packages/perf-tools/src/runners/BenchmarkRunner.ts +++ b/packages/perf-tools/src/runners/BenchmarkRunner.ts @@ -99,6 +99,10 @@ export default class BenchmarkRunner { await this._headlessClient.launch(); + // Warm up the self-signed HTTPS cert by visiting the server URL first + this._log('[bench] Warming up server HTTPS cert in headless browser...'); + await this._headlessClient.warmCert(this._options.clientUrl); + // Navigate with ?join= and ?perf=1 (auto-appended by HeadlessClient) const serverUrl = new URL(this._options.clientUrl); const clientNavUrl = new URL(this._options.clientDevUrl); diff --git a/packages/perf-tools/src/runners/HeadlessClient.ts b/packages/perf-tools/src/runners/HeadlessClient.ts index dee1e340..0123148a 100644 --- a/packages/perf-tools/src/runners/HeadlessClient.ts +++ b/packages/perf-tools/src/runners/HeadlessClient.ts @@ -40,14 +40,18 @@ export default class HeadlessClient { this._browser = await puppeteer.default.launch({ headless: this._options.headless ? 'new' : false, + ignoreHTTPSErrors: true, args: [ '--no-sandbox', '--disable-setuid-sandbox', - '--disable-gpu', '--ignore-certificate-errors', + '--allow-insecure-localhost', + '--disable-web-security', + '--disable-features=PrivateNetworkAccessSendPreflights', '--enable-precise-memory-info', '--disable-notifications', '--autoplay-policy=no-user-gesture-required', + '--use-gl=swiftshader', `--window-size=${this._options.width},${this._options.height}`, ], }); @@ -64,11 +68,60 @@ export default class HeadlessClient { deviceScaleFactor: this._options.deviceScaleFactor, }); - if (this._options.collectPerformance) { - const cdp = await page.createCDPSession(); + // Forward browser console to Node stdout for debugging + page.on('console', (msg: any) => { + const type = msg.type(); + const text = msg.text(); + + if (type === 'error' || type === 'warning') { + console.log(`[client:${type}] ${text}`); + } + }); + + page.on('pageerror', (err: any) => { + console.log(`[client:error] ${err.message ?? err}`); + }); + + const cdp = await page.createCDPSession(); + // Bypass certificate errors via CDP (--ignore-certificate-errors doesn't work in headless: 'new') + await cdp.send('Security.setIgnoreCertificateErrors', { ignore: true }); + + if (this._options.collectPerformance) { await cdp.send('Performance.enable'); } + + // Patch fetch() to strip unsupported targetAddressSpace option + // (Chrome's Private Network Access API is not available in all Chrome versions) + await page.evaluateOnNewDocument(() => { + const originalFetch = window.fetch.bind(window); + + (window as any).fetch = function(input: any, init?: any) { + if (init && 'targetAddressSpace' in init) { + const { targetAddressSpace: _, ...rest } = init; + + return originalFetch(input, rest); + } + + return originalFetch(input, init); + }; + }); + } + + /** + * Visit the game server URL once to warm up the self-signed HTTPS cert + * in Chrome's cert cache. Without this, in-page fetch() to the server fails. + */ + public async warmCert(serverUrl: string): Promise { + const page = this._page as any; + + if (!page) return; + + try { + await page.goto(serverUrl, { waitUntil: 'load', timeout: 15000 }); + } catch { + // Expected — self-signed cert page may fail but Chrome records the exception + } } public async navigate(url?: string): Promise { From 2b3ebf2fb78d1b362d5ddfdfcd3ebba31217c503 Mon Sep 17 00:00:00 2001 From: web3dev1337 <160291380+web3dev1337@users.noreply.github.com> Date: Fri, 6 Mar 2026 16:27:05 +1100 Subject: [PATCH 24/40] feat: deterministic A/B benchmark + headless client fixes MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Fix SwiftShader: use --enable-unsafe-swiftshader (old flag deprecated) - Fix HTTPS certs: ignoreHTTPSErrors + CDP Security.setIgnoreCertificateErrors - Fix fetch: patch targetAddressSpace (Chrome PNA API not available) - Fix warmCert: pre-accept self-signed HTTPS cert before client navigation - Add player entity spawning in perf-harness (was spectator-only) - Add set_camera, throttle_cpu, walk_player (sendMovement via network packets) - Add wait_for_entities action for entity load synchronization - Add stress-walkthrough preset: 200 idle entities, deterministic positions - Expose __HYTOPIA_GAME__ on window for headless camera/input control - Fix BaselineComparer null-safety for operations + nested format support A/B results (PR #2 blob shadows, 16 visible entities, SwiftShader): - Frame time: 83ms → 152ms (+82% FAIL) - Max draw calls: 25 → 82 (+228%) - Max triangles: 263k → 584k (+121%) - Bug found: TransparentSortData missing on shadow meshes (error spam) Co-Authored-By: Claude Opus 4.6 --- client/src/core/PerfBridge.ts | 3 + .../perf-results/walkthrough-baseline.json | 107 ++++++++++++ .../walkthrough-blob-shadows.json | 107 ++++++++++++ .../src/presets/stress-walkthrough.yaml | 78 +++++++++ .../perf-tools/src/runners/BenchmarkRunner.ts | 67 ++++++++ .../perf-tools/src/runners/HeadlessClient.ts | 159 +++++++++++++++++- .../perf-tools/src/runners/ScenarioLoader.ts | 8 + server/src/perf/perf-harness.ts | 19 +++ 8 files changed, 544 insertions(+), 4 deletions(-) create mode 100644 packages/perf-tools/perf-results/walkthrough-baseline.json create mode 100644 packages/perf-tools/perf-results/walkthrough-blob-shadows.json create mode 100644 packages/perf-tools/src/presets/stress-walkthrough.yaml diff --git a/client/src/core/PerfBridge.ts b/client/src/core/PerfBridge.ts index 6ec48b18..0d3cfe18 100644 --- a/client/src/core/PerfBridge.ts +++ b/client/src/core/PerfBridge.ts @@ -20,6 +20,9 @@ export default class PerfBridge { }; (window as any).__HYTOPIA_PERF__ = perf; + + // Expose game instance for headless client control (camera, input) + (window as any).__HYTOPIA_GAME__ = game; } private _snapshot() { diff --git a/packages/perf-tools/perf-results/walkthrough-baseline.json b/packages/perf-tools/perf-results/walkthrough-baseline.json new file mode 100644 index 00000000..f3d72081 --- /dev/null +++ b/packages/perf-tools/perf-results/walkthrough-baseline.json @@ -0,0 +1,107 @@ +{ + "timestamp": "2026-03-06T05:23:50.026Z", + "scenario": "stress-walkthrough", + "durationMs": 94602, + "baseline": { + "avgTickMs": 0.5391012166361615, + "maxTickMs": 17.94537400000263, + "p95TickMs": 1.0751982444444568, + "p99TickMs": 3.3784996888897796, + "ticksOverBudgetPct": 0.006376105191566539, + "avgMemoryMb": 66.61536475287544, + "avgFps": 12.755555555555556, + "client": { + "avgFps": 12.755555555555556, + "minFps": 8, + "avgFrameTimeMs": 83.55111111071375, + "avgDrawCalls": 25, + "maxDrawCalls": 25, + "avgTriangles": 263769, + "maxTriangles": 263769, + "avgGeometries": 68, + "avgEntities": 16, + "avgVisibleChunks": 30, + "avgUsedMemoryMb": 152.89682466718887 + }, + "operations": { + "entities_tick": { + "avgMs": 0.12939661985288534, + "p95Ms": 0.2722047333333952 + }, + "physics_step": { + "avgMs": 0.1328637783304221, + "p95Ms": 0.23616346666741367 + }, + "physics_cleanup": { + "avgMs": 0.005769868592307142, + "p95Ms": 0.007910844444510682 + }, + "simulation_step": { + "avgMs": 0.14639699397135983, + "p95Ms": 0.2683269555539785 + }, + "entities_emit_updates": { + "avgMs": 0.22037241875926325, + "p95Ms": 0.46857908888980293 + }, + "send_all_packets": { + "avgMs": 0.005150242018657108, + "p95Ms": 0.005713133334615527 + }, + "network_synchronize_cleanup": { + "avgMs": 0.002902808306821984, + "p95Ms": 0.004927022222141709 + }, + "network_synchronize": { + "avgMs": 0.02167050894632742, + "p95Ms": 0.025265599999369847 + }, + "world_tick": { + "avgMs": 0.5284478310519916, + "p95Ms": 1.256651333332411 + }, + "ticker_tick": { + "avgMs": 0.6083506673469862, + "p95Ms": 1.5245236666667754 + } + }, + "network": { + "totalBytesSent": 0, + "totalBytesReceived": 0, + "maxConnectedPlayers": 0, + "avgBytesSentPerSecond": 0, + "maxBytesSentPerSecond": 0, + "avgBytesReceivedPerSecond": 0, + "maxBytesReceivedPerSecond": 0, + "avgPacketsSentPerSecond": 0, + "maxPacketsSentPerSecond": 0, + "avgPacketsReceivedPerSecond": 0, + "maxPacketsReceivedPerSecond": 0, + "avgSerializationMs": 0, + "compressionCountTotal": 0 + } + }, + "phases": [ + { + "name": "spawn-entities", + "durationMs": 283, + "collected": false + }, + { + "name": "wait-for-world", + "durationMs": 8504, + "collected": false + }, + { + "name": "walkthrough", + "durationMs": 77149, + "collected": true + } + ], + "metrics": { + "tickReportCount": 0, + "spikeCount": 0, + "serverSnapshotCount": 45, + "clientSnapshotCount": 45 + } +} \ No newline at end of file diff --git a/packages/perf-tools/perf-results/walkthrough-blob-shadows.json b/packages/perf-tools/perf-results/walkthrough-blob-shadows.json new file mode 100644 index 00000000..570210c2 --- /dev/null +++ b/packages/perf-tools/perf-results/walkthrough-blob-shadows.json @@ -0,0 +1,107 @@ +{ + "timestamp": "2026-03-06T05:25:52.669Z", + "scenario": "stress-walkthrough", + "durationMs": 93623, + "baseline": { + "avgTickMs": 0.4463646582871844, + "maxTickMs": 9.024755000005825, + "p95TickMs": 0.920134800000071, + "p99TickMs": 1.746577422222577, + "ticksOverBudgetPct": 0, + "avgMemoryMb": 43.593108622233075, + "avgFps": 23.727272727272727, + "client": { + "avgFps": 23.727272727272727, + "minFps": 0, + "avgFrameTimeMs": 152.19772727347234, + "avgDrawCalls": 17.75, + "maxDrawCalls": 82, + "avgTriangles": 155875.47727272726, + "maxTriangles": 584747, + "avgGeometries": 63, + "avgEntities": 15.545454545454545, + "avgVisibleChunks": 64.06818181818181, + "avgUsedMemoryMb": 220.8743019104004 + }, + "operations": { + "entities_tick": { + "avgMs": 0.12082475065899774, + "p95Ms": 0.212825199998608 + }, + "physics_step": { + "avgMs": 0.12011465469852715, + "p95Ms": 0.1786375777785401 + }, + "physics_cleanup": { + "avgMs": 0.006925774357740608, + "p95Ms": 0.007451844444989951 + }, + "simulation_step": { + "avgMs": 0.13415876547377642, + "p95Ms": 0.20245715555631452 + }, + "entities_emit_updates": { + "avgMs": 0.15868798814720403, + "p95Ms": 0.2651034888884169 + }, + "world_tick": { + "avgMs": 0.44518506949526604, + "p95Ms": 0.8249018000006294 + }, + "ticker_tick": { + "avgMs": 0.5173913805869171, + "p95Ms": 0.9369601777788679 + }, + "send_all_packets": { + "avgMs": 0.0055072860737605586, + "p95Ms": 0.00635031110970077 + }, + "network_synchronize_cleanup": { + "avgMs": 0.005068940954863205, + "p95Ms": 0.0048210888887600355 + }, + "network_synchronize": { + "avgMs": 0.02610076192554791, + "p95Ms": 0.02581884444480238 + } + }, + "network": { + "totalBytesSent": 0, + "totalBytesReceived": 0, + "maxConnectedPlayers": 0, + "avgBytesSentPerSecond": 0, + "maxBytesSentPerSecond": 0, + "avgBytesReceivedPerSecond": 0, + "maxBytesReceivedPerSecond": 0, + "avgPacketsSentPerSecond": 0, + "maxPacketsSentPerSecond": 0, + "avgPacketsReceivedPerSecond": 0, + "maxPacketsReceivedPerSecond": 0, + "avgSerializationMs": 0, + "compressionCountTotal": 0 + } + }, + "phases": [ + { + "name": "spawn-entities", + "durationMs": 232, + "collected": false + }, + { + "name": "wait-for-world", + "durationMs": 5576, + "collected": false + }, + { + "name": "walkthrough", + "durationMs": 79685, + "collected": true + } + ], + "metrics": { + "tickReportCount": 0, + "spikeCount": 0, + "serverSnapshotCount": 45, + "clientSnapshotCount": 44 + } +} \ No newline at end of file diff --git a/packages/perf-tools/src/presets/stress-walkthrough.yaml b/packages/perf-tools/src/presets/stress-walkthrough.yaml new file mode 100644 index 00000000..60ba1af9 --- /dev/null +++ b/packages/perf-tools/src/presets/stress-walkthrough.yaml @@ -0,0 +1,78 @@ +name: "stress-walkthrough" +description: "Deterministic stress test: 200 idle entities at fixed positions, player walks through them on a repeatable path" +warmupMs: 5000 +phases: + - name: spawn-entities + actions: + - type: load_map + mapPath: "assets/maps/boilerplate-small.json" + # All bots use idle behavior = they stay at their deterministic spawn positions + # (circle around 0,10,0 with radius based on sqrt(count)) + - type: spawn_bots + count: 200 + behavior: idle + - name: wait-for-world + actions: + - type: wait_for_entities + count: 10 + durationMs: 30000 + # Let entities fully load and settle + - type: wait + durationMs: 5000 + - name: walkthrough + collect: true + duration: 45s + actions: + # Face toward entity cluster center (yaw=0 = looking along +Z toward origin) + - type: set_camera + yaw: 0 + pitch: 0.3 + durationMs: 500 + # Walk forward into the entity cluster + - type: walk_player + durationMs: 5000 + options: { key: w } + # Turn right 90 degrees and strafe through entities + - type: set_camera + yaw: -1.57 + pitch: 0.3 + durationMs: 300 + - type: walk_player + durationMs: 4000 + options: { key: w } + # Turn to face back through entities (180 from start) + - type: set_camera + yaw: 3.14 + pitch: 0.3 + durationMs: 300 + - type: walk_player + durationMs: 5000 + options: { key: w } + # Turn left 90 and walk through again + - type: set_camera + yaw: 1.57 + pitch: 0.3 + durationMs: 300 + - type: walk_player + durationMs: 4000 + options: { key: w } + # Face original direction, walk forward again + - type: set_camera + yaw: 0 + pitch: 0.3 + durationMs: 300 + - type: walk_player + durationMs: 5000 + options: { key: w } +thresholds: + tick_duration_ms: + avg: 12 + p95: 15 + p99: 20 + memory_mb: + max: 512 + client: + fps_avg: 15 + draw_calls_max: 200 + triangles_max: 1000000 + frame_time_ms_max: 200 diff --git a/packages/perf-tools/src/runners/BenchmarkRunner.ts b/packages/perf-tools/src/runners/BenchmarkRunner.ts index 9d4a2cab..962c8d82 100644 --- a/packages/perf-tools/src/runners/BenchmarkRunner.ts +++ b/packages/perf-tools/src/runners/BenchmarkRunner.ts @@ -278,6 +278,73 @@ export default class BenchmarkRunner { case 'disconnect_clients': await this._disconnectWsClients(action.count); break; + case 'wait_for_entities': + if (this._headlessClient) { + const minEntities = action.count ?? 1; + const timeout = action.durationMs ?? 30000; + + this._log(`[bench] Waiting for ${minEntities}+ entities (timeout ${timeout}ms)`); + + const start = Date.now(); + + while (Date.now() - start < timeout) { + const snap = await this._headlessClient.collectClientMetrics(); + + if (snap?.entities && snap.entities.count >= minEntities) { + this._log(`[bench] Got ${snap.entities.count} entities`); + break; + } + + await new Promise(r => setTimeout(r, 1000)); + } + } + break; + case 'walk_player': + if (this._headlessClient) { + const key = (action.options?.key as string) ?? 'w'; + const dur = action.durationMs ?? 3000; + + this._log(`[bench] Walking player: key=${key} for ${dur}ms`); + + try { + await this._headlessClient.sendMovement(key, dur); + } catch { + this._log('[bench] walk_player: input failed (non-fatal)'); + } + } + break; + case 'set_camera': + if (this._headlessClient) { + const yaw = action.yaw ?? 0; + const pitch = action.pitch ?? -0.3; + + this._log(`[bench] Setting camera: yaw=${yaw} pitch=${pitch}`); + + try { + if (action.position) { + await this._headlessClient.setCameraPosition(action.position.x, action.position.y, action.position.z); + } + + await this._headlessClient.lookAt(yaw, pitch); + await new Promise(r => setTimeout(r, action.durationMs ?? 500)); + } catch { + this._log('[bench] set_camera: failed (non-fatal)'); + } + } + break; + case 'throttle_cpu': + if (this._headlessClient) { + const rate = action.rate ?? 1; + + this._log(`[bench] CPU throttle: ${rate}x`); + + try { + await this._headlessClient.setCpuThrottle(rate); + } catch { + this._log('[bench] throttle_cpu: failed (non-fatal)'); + } + } + break; case 'custom': throw new Error(`Action not supported yet: ${action.type}`); } diff --git a/packages/perf-tools/src/runners/HeadlessClient.ts b/packages/perf-tools/src/runners/HeadlessClient.ts index 0123148a..2c614f30 100644 --- a/packages/perf-tools/src/runners/HeadlessClient.ts +++ b/packages/perf-tools/src/runners/HeadlessClient.ts @@ -12,6 +12,7 @@ export interface HeadlessClientOptions { export default class HeadlessClient { private _browser: unknown = null; private _page: unknown = null; + private _cdp: any = null; private _options: HeadlessClientOptions; private _performanceEntries: ClientSnapshot[] = []; private _connected: boolean = false; @@ -51,7 +52,7 @@ export default class HeadlessClient { '--enable-precise-memory-info', '--disable-notifications', '--autoplay-policy=no-user-gesture-required', - '--use-gl=swiftshader', + '--enable-unsafe-swiftshader', `--window-size=${this._options.width},${this._options.height}`, ], }); @@ -82,13 +83,13 @@ export default class HeadlessClient { console.log(`[client:error] ${err.message ?? err}`); }); - const cdp = await page.createCDPSession(); + this._cdp = await page.createCDPSession(); // Bypass certificate errors via CDP (--ignore-certificate-errors doesn't work in headless: 'new') - await cdp.send('Security.setIgnoreCertificateErrors', { ignore: true }); + await this._cdp.send('Security.setIgnoreCertificateErrors', { ignore: true }); if (this._options.collectPerformance) { - await cdp.send('Performance.enable'); + await this._cdp.send('Performance.enable'); } // Patch fetch() to strip unsupported targetAddressSpace option @@ -105,6 +106,7 @@ export default class HeadlessClient { return originalFetch(input, init); }; + }); } @@ -222,6 +224,155 @@ export default class HeadlessClient { } } + /** + * Send movement input directly via the game's network manager. + * Bypasses pointer lock / keyboard events — works in headless mode. + * Sends packets continuously at 30Hz to match InputManager behavior. + * key: 'w' | 'a' | 's' | 'd' | 'sp' (space/jump) + */ + public async sendMovement(key: string, durationMs: number): Promise { + const page = this._page as any; + + if (!page) return; + + try { + // Send start packet and then continue sending at 30Hz with camera orientation + await page.evaluate((k: string, durMs: number) => { + const game = (window as any).__HYTOPIA_GAME__; + + if (!game?.networkManager) return; + + // Send initial key-down + game.networkManager.sendInputPacket({ [k]: true }); + + // Send continuous camera+movement at 30Hz so server knows direction + const interval = setInterval(() => { + const yaw = game.camera?._gameCameraYaw ?? 0; + const pitch = game.camera?._gameCameraPitch ?? 0; + + game.networkManager.sendInputPacket({ cp: pitch, cy: yaw }); + }, 33); + + // Store cleanup for later + (window as any).__HYTOPIA_MOVEMENT_INTERVAL__ = interval; + (window as any).__HYTOPIA_MOVEMENT_KEY__ = k; + + // Auto-stop after duration + setTimeout(() => { + clearInterval(interval); + game.networkManager.sendInputPacket({ [k]: false }); + (window as any).__HYTOPIA_MOVEMENT_INTERVAL__ = null; + }, durMs); + }, key, durationMs); + + // Wait for the movement to complete + await new Promise(r => setTimeout(r, durationMs + 100)); + } catch { + // best-effort + } + } + + /** + * Simulate mouse look by injecting camera yaw/pitch directly via the game's input system. + */ + public async lookAt(yawRadians: number, pitchRadians: number): Promise { + const page = this._page as any; + + if (!page) return; + + try { + await page.evaluate((yaw: number, pitch: number) => { + const game = (window as any).__HYTOPIA_GAME__; + + if (!game) return; + + // Set camera yaw/pitch directly on the Camera object (client-side rendering) + if (game.camera) { + game.camera._gameCameraYaw = yaw; + game.camera._gameCameraPitch = pitch; + } + + // Also send to server so movement direction matches camera direction + if (game.networkManager) { + game.networkManager.sendInputPacket({ cp: pitch, cy: yaw }); + } + }, yawRadians, pitchRadians); + } catch { + // best-effort + } + } + + /** + * Teleport the camera/player to a specific world position. + * Works by directly setting the camera target position. + */ + public async setCameraPosition(x: number, y: number, z: number): Promise { + const page = this._page as any; + + if (!page) return; + + try { + await page.evaluate((px: number, py: number, pz: number) => { + const game = (window as any).__HYTOPIA_GAME__; + + if (game?.camera) { + game.camera.setTarget(px, py, pz); + } + }, x, y, z); + } catch { + // best-effort + } + } + + /** + * Simulate a player walking forward for a duration, with optional camera rotation. + * This makes the headless client behave like a real player walking around. + */ + public async simulateWalkSequence(steps: Array<{ durationMs: number; key?: string; yaw?: number; pitch?: number }>): Promise { + const page = this._page as any; + + if (!page) return; + + // Click to get pointer lock + try { + await page.mouse.click(640, 360); + await new Promise(r => setTimeout(r, 300)); + } catch { + // continue + } + + for (const step of steps) { + try { + // Set camera direction if specified + if (step.yaw !== undefined || step.pitch !== undefined) { + await this.lookAt(step.yaw ?? 0, step.pitch ?? -0.3); + } + + // Press movement key + const key = step.key ?? 'w'; + + await page.keyboard.down(key); + await new Promise(r => setTimeout(r, step.durationMs)); + await page.keyboard.up(key); + } catch { + // continue sequence + } + } + } + + /** + * Throttle CPU execution speed via CDP. rate=1 means no throttle, rate=4 means 4x slower (simulates mobile). + */ + public async setCpuThrottle(rate: number): Promise { + if (!this._cdp) return; + + try { + await this._cdp.send('Emulation.setCPUThrottlingRate', { rate: Math.max(1, rate) }); + } catch { + // best-effort + } + } + public async captureTrace(durationMs: number): Promise { const page = this._page as any; diff --git a/packages/perf-tools/src/runners/ScenarioLoader.ts b/packages/perf-tools/src/runners/ScenarioLoader.ts index 353c1596..fb6097bf 100644 --- a/packages/perf-tools/src/runners/ScenarioLoader.ts +++ b/packages/perf-tools/src/runners/ScenarioLoader.ts @@ -23,11 +23,19 @@ export interface ScenarioAction { | 'connect_clients' | 'disconnect_clients' | 'wait' + | 'walk_player' + | 'wait_for_entities' + | 'set_camera' + | 'throttle_cpu' | 'custom'; count?: number; behavior?: string; durationMs?: number; mapPath?: string; + position?: ScenarioVector3; + yaw?: number; + pitch?: number; + rate?: number; worldId?: number; kind?: 'model' | 'block'; tag?: string; diff --git a/server/src/perf/perf-harness.ts b/server/src/perf/perf-harness.ts index 3c64a6ae..73a41a99 100644 --- a/server/src/perf/perf-harness.ts +++ b/server/src/perf/perf-harness.ts @@ -1,8 +1,27 @@ import { startServer } from '@/GameServer'; +import DefaultPlayerEntity from '@/worlds/entities/DefaultPlayerEntity'; +import { PlayerEvent } from '@/players/Player'; +import type Player from '@/players/Player'; +import type World from '@/worlds/World'; import PerfHarness from '@/perf/PerfHarness'; startServer(world => { PerfHarness.enableIfConfigured(); world.simulation.enableDebugRendering(false); + + // Spawn a player entity for real players so they can walk around (needed for headless client benchmarks) + world.on(PlayerEvent.JOINED_WORLD, ({ player, world: w }: { player: Player; world: World }) => { + const playerEntity = new DefaultPlayerEntity({ + player, + name: 'PerfPlayer', + modelUri: 'models/players/player.gltf', + }); + + playerEntity.spawn(w, { x: 0, y: 10, z: -20 }); + }); + + world.on(PlayerEvent.LEFT_WORLD, ({ player, world: w }: { player: Player; world: World }) => { + w.entityManager.getPlayerEntitiesByPlayer(player).forEach(e => e.despawn()); + }); }); From b6bdca2ec99982c9aa9fdb54bb24ea87354b697c Mon Sep 17 00:00:00 2001 From: web3dev1337 <160291380+web3dev1337@users.noreply.github.com> Date: Fri, 6 Mar 2026 16:38:57 +1100 Subject: [PATCH 25/40] =?UTF-8?q?feat:=20mobile=20CPU=20throttle=20benchma?= =?UTF-8?q?rk=20(4x)=20=E2=80=94=20A/B=20blob=20shadows=20on=20simulated?= =?UTF-8?q?=20mobile?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Mobile simulation via CDP Emulation.setCPUThrottlingRate (rate=4). Desktop FPS 12.8 → Mobile FPS 11.0 (baseline), 11.8 (blob shadows). Frame time: 113ms → 123ms (+8.5% WARN) on mobile with shadows. Server metrics unaffected (throttle is client-side only). Co-Authored-By: Claude Opus 4.6 --- .../perf-results/mobile-baseline.json | 107 ++++++++++++++++++ .../perf-results/mobile-blob-shadows.json | 107 ++++++++++++++++++ .../perf-tools/src/presets/mobile-stress.yaml | 34 ++++++ 3 files changed, 248 insertions(+) create mode 100644 packages/perf-tools/perf-results/mobile-baseline.json create mode 100644 packages/perf-tools/perf-results/mobile-blob-shadows.json create mode 100644 packages/perf-tools/src/presets/mobile-stress.yaml diff --git a/packages/perf-tools/perf-results/mobile-baseline.json b/packages/perf-tools/perf-results/mobile-baseline.json new file mode 100644 index 00000000..026924cb --- /dev/null +++ b/packages/perf-tools/perf-results/mobile-baseline.json @@ -0,0 +1,107 @@ +{ + "timestamp": "2026-03-06T05:37:22.354Z", + "scenario": "mobile-stress", + "durationMs": 53540, + "baseline": { + "avgTickMs": 0.4587460180765039, + "maxTickMs": 15.124867999998969, + "p95TickMs": 0.9381503000001733, + "p99TickMs": 2.281670333333265, + "ticksOverBudgetPct": 0, + "avgMemoryMb": 44.646557871500654, + "avgFps": 11, + "client": { + "avgFps": 11, + "minFps": 2, + "avgFrameTimeMs": 113.79666666438182, + "avgDrawCalls": 29.033333333333335, + "maxDrawCalls": 82, + "avgTriangles": 288556.26666666666, + "maxTriangles": 585503, + "avgGeometries": 67.96666666666667, + "avgEntities": 16.033333333333335, + "avgVisibleChunks": 37, + "avgUsedMemoryMb": 154.76837107340495 + }, + "operations": { + "entities_tick": { + "avgMs": 0.100145550230758, + "p95Ms": 0.22139043333239292 + }, + "physics_step": { + "avgMs": 0.12324488336618562, + "p95Ms": 0.21948773333291077 + }, + "physics_cleanup": { + "avgMs": 0.006021806708011858, + "p95Ms": 0.008220166667403344 + }, + "simulation_step": { + "avgMs": 0.13603819024276229, + "p95Ms": 0.25110573333270925 + }, + "entities_emit_updates": { + "avgMs": 0.18667054487873366, + "p95Ms": 0.39165366666651 + }, + "world_tick": { + "avgMs": 0.4523834474370553, + "p95Ms": 0.923272233333167 + }, + "ticker_tick": { + "avgMs": 0.5255798218460593, + "p95Ms": 1.0511126000004878 + }, + "send_all_packets": { + "avgMs": 0.005485181556029348, + "p95Ms": 0.006105533333660181 + }, + "network_synchronize_cleanup": { + "avgMs": 0.0038300627479962318, + "p95Ms": 0.005125833333052773 + }, + "network_synchronize": { + "avgMs": 0.02166705592282186, + "p95Ms": 0.03459496666703975 + } + }, + "network": { + "totalBytesSent": 0, + "totalBytesReceived": 0, + "maxConnectedPlayers": 0, + "avgBytesSentPerSecond": 0, + "maxBytesSentPerSecond": 0, + "avgBytesReceivedPerSecond": 0, + "maxBytesReceivedPerSecond": 0, + "avgPacketsSentPerSecond": 0, + "maxPacketsSentPerSecond": 0, + "avgPacketsReceivedPerSecond": 0, + "maxPacketsReceivedPerSecond": 0, + "avgSerializationMs": 0, + "compressionCountTotal": 0 + } + }, + "phases": [ + { + "name": "setup", + "durationMs": 579, + "collected": false + }, + { + "name": "wait-for-world", + "durationMs": 8933, + "collected": false + }, + { + "name": "measure", + "durationMs": 35430, + "collected": true + } + ], + "metrics": { + "tickReportCount": 0, + "spikeCount": 0, + "serverSnapshotCount": 30, + "clientSnapshotCount": 30 + } +} \ No newline at end of file diff --git a/packages/perf-tools/perf-results/mobile-blob-shadows.json b/packages/perf-tools/perf-results/mobile-blob-shadows.json new file mode 100644 index 00000000..ce2e9c94 --- /dev/null +++ b/packages/perf-tools/perf-results/mobile-blob-shadows.json @@ -0,0 +1,107 @@ +{ + "timestamp": "2026-03-06T05:38:29.905Z", + "scenario": "mobile-stress", + "durationMs": 54150, + "baseline": { + "avgTickMs": 0.46583130939201245, + "maxTickMs": 3.803404000005685, + "p95TickMs": 0.9453849333345715, + "p99TickMs": 2.2402389666673117, + "ticksOverBudgetPct": 0, + "avgMemoryMb": 44.757807922363284, + "avgFps": 11.8, + "client": { + "avgFps": 11.8, + "minFps": 4, + "avgFrameTimeMs": 123.43000000069539, + "avgDrawCalls": 22.366666666666667, + "maxDrawCalls": 46, + "avgTriangles": 235624, + "maxTriangles": 474495, + "avgGeometries": 68.86666666666666, + "avgEntities": 16.133333333333333, + "avgVisibleChunks": 41.733333333333334, + "avgUsedMemoryMb": 163.46395737330118 + }, + "operations": { + "entities_tick": { + "avgMs": 0.12282506250936144, + "p95Ms": 0.22073986666740286 + }, + "physics_step": { + "avgMs": 0.12221092788338694, + "p95Ms": 0.2147771333332154 + }, + "physics_cleanup": { + "avgMs": 0.0059001934679510605, + "p95Ms": 0.00745206666639812 + }, + "simulation_step": { + "avgMs": 0.13515172358959354, + "p95Ms": 0.2382533333326137 + }, + "entities_emit_updates": { + "avgMs": 0.1728750027192132, + "p95Ms": 0.3198051000001821 + }, + "world_tick": { + "avgMs": 0.4596198044790182, + "p95Ms": 0.9313487666674821 + }, + "ticker_tick": { + "avgMs": 0.5311698951797701, + "p95Ms": 1.063469966667132 + }, + "send_all_packets": { + "avgMs": 0.004984616450122214, + "p95Ms": 0.006341833333378114 + }, + "network_synchronize_cleanup": { + "avgMs": 0.004518206802690285, + "p95Ms": 0.005636066665829276 + }, + "network_synchronize": { + "avgMs": 0.02275348790528069, + "p95Ms": 0.03206923333236773 + } + }, + "network": { + "totalBytesSent": 0, + "totalBytesReceived": 0, + "maxConnectedPlayers": 0, + "avgBytesSentPerSecond": 0, + "maxBytesSentPerSecond": 0, + "avgBytesReceivedPerSecond": 0, + "maxBytesReceivedPerSecond": 0, + "avgPacketsSentPerSecond": 0, + "maxPacketsSentPerSecond": 0, + "avgPacketsReceivedPerSecond": 0, + "maxPacketsReceivedPerSecond": 0, + "avgSerializationMs": 0, + "compressionCountTotal": 0 + } + }, + "phases": [ + { + "name": "setup", + "durationMs": 467, + "collected": false + }, + { + "name": "wait-for-world", + "durationMs": 10980, + "collected": false + }, + { + "name": "measure", + "durationMs": 34670, + "collected": true + } + ], + "metrics": { + "tickReportCount": 0, + "spikeCount": 0, + "serverSnapshotCount": 30, + "clientSnapshotCount": 30 + } +} \ No newline at end of file diff --git a/packages/perf-tools/src/presets/mobile-stress.yaml b/packages/perf-tools/src/presets/mobile-stress.yaml new file mode 100644 index 00000000..d9197fee --- /dev/null +++ b/packages/perf-tools/src/presets/mobile-stress.yaml @@ -0,0 +1,34 @@ +name: "mobile-stress" +description: "Simulate mobile device: 4x CPU throttle + 200 idle entities. Measures client rendering under constrained CPU." +warmupMs: 5000 +phases: + - name: setup + actions: + - type: load_map + mapPath: "assets/maps/boilerplate-small.json" + - type: spawn_bots + count: 200 + behavior: idle + - type: throttle_cpu + rate: 4 + - name: wait-for-world + actions: + - type: wait_for_entities + count: 10 + durationMs: 30000 + - type: wait + durationMs: 8000 + - name: measure + collect: true + duration: 30s +thresholds: + tick_duration_ms: + avg: 12 + p99: 20 + memory_mb: + max: 512 + client: + fps_avg: 5 + draw_calls_max: 200 + triangles_max: 1000000 + frame_time_ms_max: 500 From 8f4ddc3565ee2ae9fefd3fdc2637ac23274dcc48 Mon Sep 17 00:00:00 2001 From: web3dev1337 <160291380+web3dev1337@users.noreply.github.com> Date: Fri, 6 Mar 2026 23:30:38 +1100 Subject: [PATCH 26/40] feat: clean up perf framework state --- CODEBASE_DOCUMENTATION.md | 2 +- .../perf-branch-state-2026-03-06/FINAL.md | 324 ++++++++++++++++++ packages/perf-tools/src/cli.ts | 8 +- .../perf-tools/src/presets/zoo-game-full.yaml | 66 ++++ .../perf-tools/src/runners/BenchmarkRunner.ts | 75 +++- .../perf-tools/src/runners/HeadlessClient.ts | 22 ++ .../perf-tools/src/runners/ScenarioLoader.ts | 2 + .../perf-tools/src/runners/ServerApiClient.ts | 78 ++++- 8 files changed, 551 insertions(+), 26 deletions(-) create mode 100644 ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md create mode 100644 packages/perf-tools/src/presets/zoo-game-full.yaml diff --git a/CODEBASE_DOCUMENTATION.md b/CODEBASE_DOCUMENTATION.md index 331c7218..8f0d77e3 100644 --- a/CODEBASE_DOCUMENTATION.md +++ b/CODEBASE_DOCUMENTATION.md @@ -16,7 +16,7 @@ PROTOCOL: protocol/ - Packet schemas + definitions (@hytopia.com/server-protocol SDK: sdk/ - Git submodule → hytopiagg/sdk (build output lands here) EXAMPLES: sdk-examples/ - Reference games built with the SDK ASSETS: assets/release/ - Default game assets (audio, blocks, maps, models, particles, skyboxes, ui) -PERF: packages/perf-tools/ - Benchmark CLI + trace analysis (`hytopia-bench`) +PERF: packages/perf-tools/ - Benchmark CLI + trace analysis (`hytopia-bench`), headless client metrics, synthetic + real-game presets CONFIG: package.json - Monorepo root (npm workspaces) server/package.json - Server deps + build scripts server/tsconfig.json - Strict TS, path alias @/* → ./src/* diff --git a/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md b/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md new file mode 100644 index 00000000..b96ef943 --- /dev/null +++ b/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md @@ -0,0 +1,324 @@ +# HYTOPIA Performance Framework State Report + +**Date:** 2026-03-06 +**Repo:** `web3dev1337/hytopia-source` +**Branch:** `feature/perf-external-notes-verification-20260305` + +## Executive Summary + +The original idea for this branch was correct: + +Build a reusable performance framework for HYTOPIA engine work so future SDK/client changes can be measured against repeatable synthetic scenarios and real games such as HyFire2 and Zoo Game. + +That framework now exists. + +What happened after that is also clear: + +- the branch built the real framework +- the framework was verified against synthetic and real-game scenarios +- the branch then got mixed with a local blob-shadow investigation +- this cleanup separates those concerns again + +After this cleanup, the branch should be understood as: + +- **permanent framework code** kept +- **real-game benchmark glue** kept when it is broadly useful +- **feature-under-test monkey patches** removed +- **raw local experiment output** removed from the working tree +- **findings** preserved in this report + +## Original Goal + +The intended outcome was a benchmark system that can answer: + +- did this server-side change hurt tick time or memory? +- did this client-side change hurt FPS, frame time, draw calls, or triangles? +- does a change regress only desktop, or also throttled/mobile conditions? +- can we replay the same game situations over time rather than inventing ad hoc tests? + +That goal is reflected in: + +- [init.md](/home/ab/GitHub/hytopia/work1/ai-memory/feature/perf-external-notes-verification-20260305-2249094/init.md) +- [plan.md](/home/ab/GitHub/hytopia/work1/ai-memory/feature/perf-external-notes-verification-20260305-2249094/plan.md) +- [progress.md](/home/ab/GitHub/hytopia/work1/ai-memory/feature/perf-external-notes-verification-20260305-2249094/progress.md) +- [perf-final-2026-03-05/FINAL.md](/home/ab/GitHub/hytopia/work1/ai-memory/docs/perf-final-2026-03-05/FINAL.md) + +## What We Actually Built + +### Server-Side Perf Instrumentation + +Core files: + +- [PerformanceMonitor.ts](/home/ab/GitHub/hytopia/work1/server/src/metrics/PerformanceMonitor.ts) +- [NetworkMetrics.ts](/home/ab/GitHub/hytopia/work1/server/src/metrics/NetworkMetrics.ts) +- [CpuProfiler.ts](/home/ab/GitHub/hytopia/work1/server/src/metrics/CpuProfiler.ts) +- [PerfHarness.ts](/home/ab/GitHub/hytopia/work1/server/src/perf/PerfHarness.ts) +- [PerfWorldGenerator.ts](/home/ab/GitHub/hytopia/work1/server/src/perf/PerfWorldGenerator.ts) +- [PerfBlockChurner.ts](/home/ab/GitHub/hytopia/work1/server/src/perf/PerfBlockChurner.ts) + +Capabilities: + +- tick timing snapshots +- operation-level timings +- heap and RSS reporting +- network metrics +- perf endpoints for automated runs +- synthetic world generation +- block churn stressors + +### Benchmark Runner and CLI + +Core files: + +- [cli.ts](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/cli.ts) +- [BenchmarkRunner.ts](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/runners/BenchmarkRunner.ts) +- [MetricCollector.ts](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/runners/MetricCollector.ts) +- [ProcessMonitor.ts](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/runners/ProcessMonitor.ts) +- [ServerApiClient.ts](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/runners/ServerApiClient.ts) +- [BaselineComparer.ts](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/runners/BaselineComparer.ts) +- [ConsoleReporter.ts](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/reporters/ConsoleReporter.ts) +- [JsonReporter.ts](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/reporters/JsonReporter.ts) + +Capabilities: + +- scenario-based benchmark execution +- JSON report output +- baseline comparisons +- regression thresholds +- OS-level process monitoring +- log capture +- external-server mode + +### Client-Side Perf Metrics + +Core files: + +- [PerfBridge.ts](/home/ab/GitHub/hytopia/work1/client/src/core/PerfBridge.ts) +- [HeadlessClient.ts](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/runners/HeadlessClient.ts) + +Capabilities: + +- FPS +- frame time +- draw calls +- triangles +- entities +- chunks +- GLTF stats +- JS heap +- browser CPU throttling + +This is what made client feature benchmarking real instead of only measuring server tick time. + +### Scenario and Preset System + +Representative presets: + +- [idle.yaml](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/presets/idle.yaml) +- [stress.yaml](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/presets/stress.yaml) +- [join-storm.yaml](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/presets/join-storm.yaml) +- [block-churn.yaml](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/presets/block-churn.yaml) +- [entity-density.yaml](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/presets/entity-density.yaml) +- [multi-world.yaml](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/presets/multi-world.yaml) +- [blocks-10m-dense.yaml](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/presets/blocks-10m-dense.yaml) +- [hyfire2-bots.yaml](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/presets/hyfire2-bots.yaml) +- [zoo-game-bots.yaml](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/presets/zoo-game-bots.yaml) +- [zoo-game-full.yaml](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/presets/zoo-game-full.yaml) + +`zoo-game-full.yaml` is the cleaned real-game walkthrough preset retained from the local investigation. CPU throttling is no longer hardcoded in the preset; it is now a runner option. + +### Real Game Integration + +Core files: + +- [link-sdk.sh](/home/ab/GitHub/hytopia/work1/packages/perf-tools/scripts/link-sdk.sh) +- [setup-game.sh](/home/ab/GitHub/hytopia/work1/packages/perf-tools/scripts/setup-game.sh) + +What these do: + +- build the local SDK from this repo +- link it into external game repos +- let HyFire2 or Zoo Game run against local engine changes + +Important clarification: + +HyFire2 and Zoo Game are not first-class game source trees inside this repo. This repo provides the engine plus the tooling to benchmark those games from their own directories. + +### CI Automation + +Core files: + +- [perf-gate.yml](/home/ab/GitHub/hytopia/work1/.github/workflows/perf-gate.yml) +- [perf-baseline-update.yml](/home/ab/GitHub/hytopia/work1/.github/workflows/perf-baseline-update.yml) + +Current CI state: + +- baseline capture exists +- PR perf gating exists +- current CI is still oriented around lightweight scenarios like `idle` and `stress` +- full external-game runs remain more manual + +## What Was Verified + +The branch progress log says the following were completed: + +- OS-level monitoring +- PerfHarness fallback mode +- log capture +- HyFire2 runs +- Zoo Game runs +- client PerfBridge metrics +- headless client automation +- blob-shadow A/B investigation using real client metrics + +Representative result files already in the repo: + +| Scenario | Source | Summary | +|---|---|---| +| HyFire2 bots | [hyfire2-bots.json](/home/ab/GitHub/hytopia/work1/packages/perf-tools/perf-results/hyfire2-bots.json) | avg tick `0.61ms`, p99 `1.34ms`, avg memory `431MB` | +| Zoo Game full PerfHarness | [zoo-game-bots-full.json](/home/ab/GitHub/hytopia/work1/packages/perf-tools/perf-results/zoo-game-bots-full.json) | avg tick `0.25ms`, p99 `0.85ms`, avg memory `313MB` | +| Stress A/B baseline | [stress-baseline-no-shadows.json](/home/ab/GitHub/hytopia/work1/packages/perf-tools/perf-results/stress-baseline-no-shadows.json) | client avg FPS about `27.8` | +| Stress A/B blob shadows | [stress-with-blob-shadows.json](/home/ab/GitHub/hytopia/work1/packages/perf-tools/perf-results/stress-with-blob-shadows.json) | client avg FPS about `26.1` | +| Mobile stress baseline | [mobile-baseline.json](/home/ab/GitHub/hytopia/work1/packages/perf-tools/perf-results/mobile-baseline.json) | client avg FPS about `11.0` | +| Mobile stress blob shadows | [mobile-blob-shadows.json](/home/ab/GitHub/hytopia/work1/packages/perf-tools/perf-results/mobile-blob-shadows.json) | client avg FPS about `11.8` | + +Bottom line: + +- the framework was exercised end-to-end +- it produced usable data +- it reached both synthetic and real-game scenarios + +## Branch Timeline + +| Commit | Meaning | +|---|---| +| `e518ad3` | imported external perf notes and verification material | +| `8581645` | broad perf framework research pass | +| `0e7f689` | initial framework implementation | +| `adb7561` | wired perf-tools end to end | +| `6ec796d` | expanded perf harness and more scenarios | +| `0793124` | added process monitoring and real-game presets | +| `b757df9` | restored map compression codecs and captured real-game results | +| `0ed330d` | added missing entity APIs and Zoo Game full PerfHarness benchmark | +| `2f69c38` | added client-side PerfBridge and Puppeteer benchmarking | +| `aac6de2` | fixed headless navigation and error handling | +| `4e716cc` | improved headless connection and earlier PR #2 blob-shadow A/B work | +| `2b3ebf2` | made A/B flow more deterministic | +| `b6bdca2` | added mobile CPU throttle benchmark flow | + +## What This Cleanup Kept + +This cleanup retains the broadly reusable framework improvements that were still only local: + +- `--external-server` support in [cli.ts](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/cli.ts) +- `send_chat` scenario action in [ScenarioLoader.ts](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/runners/ScenarioLoader.ts) +- chat-triggered setup support in [HeadlessClient.ts](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/runners/HeadlessClient.ts) +- external-server handling and client-only baseline generation in [BenchmarkRunner.ts](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/runners/BenchmarkRunner.ts) +- a cleaned [zoo-game-full.yaml](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/presets/zoo-game-full.yaml) preset +- runner-level `--cpu-throttle` support so desktop/mobile/low-end comparisons no longer require editing YAML +- scoped local HTTPS handling in [ServerApiClient.ts](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/runners/ServerApiClient.ts) instead of a global TLS-disable environment hack + +These are deliberate framework improvements, not feature-under-test patches. + +## What This Cleanup Removed + +### Removed from the Working Tree + +- local blob-shadow changes in `client/src/entities/Entity.ts` +- local blob-shadow quality toggles in `client/src/settings/SettingsManager.ts` +- local transparent-sort fallback in `client/src/three/utils.ts` +- incidental `client/package-lock.json` churn +- raw local Zoo Game desktop/4x/16x JSON outputs +- the loose `zoo-game-blob-shadows-report.md` experiment file + +### Why Those Were Removed + +They were not framework code. They were a mixture of: + +- feature-under-test code copied from upstream PR #2 +- local monkey patches needed to make that feature benchmarkable +- ad hoc raw output from one investigation session + +That material belongs in a focused feature-evaluation branch or report, not in the core framework state. + +## Blob-Shadow Investigation Findings + +The raw local files were removed from the working tree during cleanup, but the results are preserved here. + +### Correctness Finding + +PR #2 blob-shadow meshes did not populate the transparent sort metadata expected by `getTransparentSortKey()`. Without a fallback, rendering crashed during benchmarking. + +That means the feature under test was not benchmarkable as-is. + +### Performance Summary from the Local Zoo Game Run + +| Tier | Baseline FPS | Blob Shadows FPS | Change | Verdict | +|---|---|---|---|---| +| Desktop | `25.1` | `21.0` | `-16.4%` | real regression | +| 4x CPU throttle | `14.1` | `16.1` | `+14.4%` | likely variance / neutral | +| 16x CPU throttle | `7.6` | `7.5` | `-1.5%` | roughly neutral on average | + +Other relevant findings: + +- desktop min FPS dropped from `17` to `7` +- frame time rose from `41.8ms` to `52.8ms` on desktop +- draw calls and triangles barely changed +- likely cost was not geometry count but shadow update/lifecycle overhead + +Interpretation: + +- the framework successfully surfaced a concrete correctness bug +- it also surfaced a likely desktop performance regression +- that work was real analysis, but it was not permanent framework code + +## Current Assessment + +If the question is: + +“Did we actually build the performance framework I asked for?” + +The answer is **yes**. + +If the question is: + +“Were we also mixing in local one-off patching while investigating a feature?” + +The answer is **yes**. + +If the question is: + +“Has that now been separated?” + +The answer should now be **yes**: + +- reusable framework additions retained +- temporary feature-under-test patches removed +- experiment findings documented here +- raw local experiment output removed from the tree + +## Remaining Gaps + +1. Full external-game benchmarking is still more manual than synthetic presets. +2. CI is still centered on lightweight built-in scenarios rather than full game walkthroughs. +3. HyFire2/Zoo Game benchmarking still depends on local setup and linked SDK flows. +4. The branch still needs a clean final commit/PR state to lock this cleanup in. + +## Read This First Tomorrow + +If you only read a few files, read these: + +1. [this report](/home/ab/GitHub/hytopia/work1/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md) +2. [perf-final-2026-03-05/FINAL.md](/home/ab/GitHub/hytopia/work1/ai-memory/docs/perf-final-2026-03-05/FINAL.md) +3. [progress.md](/home/ab/GitHub/hytopia/work1/ai-memory/feature/perf-external-notes-verification-20260305-2249094/progress.md) +4. [BenchmarkRunner.ts](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/runners/BenchmarkRunner.ts) +5. [PerfBridge.ts](/home/ab/GitHub/hytopia/work1/client/src/core/PerfBridge.ts) +6. [zoo-game-full.yaml](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/presets/zoo-game-full.yaml) + +## Bottom Line + +The framework is real. + +The branch was doing the right thing conceptually. + +What was wrong was that a useful framework branch had become mixed with a local feature investigation. This cleanup keeps the framework, removes the monkey patches, and leaves one report that explains the whole state without needing to reconstruct it from scattered files. diff --git a/packages/perf-tools/src/cli.ts b/packages/perf-tools/src/cli.ts index 730300b4..f5004b16 100644 --- a/packages/perf-tools/src/cli.ts +++ b/packages/perf-tools/src/cli.ts @@ -23,7 +23,7 @@ program .command('run') .description('Run a benchmark scenario') .argument('[scenario]', 'Path to scenario YAML/JSON file') - .option('--preset ', 'Use a built-in preset (idle, stress, large-world, many-players, combined, join-storm, block-churn, entity-density, multi-world, blocks-10k-dense, blocks-500k-dense, blocks-1m-dense, blocks-10m-dense, blocks-1m-multi-world, hyfire2-bots, zoo-game-bots)') + .option('--preset ', 'Use a built-in preset (idle, stress, large-world, many-players, combined, join-storm, block-churn, entity-density, multi-world, blocks-10k-dense, blocks-500k-dense, blocks-1m-dense, blocks-10m-dense, blocks-1m-multi-world, hyfire2-bots, zoo-game-bots, zoo-game-full)') .option('--output ', 'Write results to JSON file') .option('--full-data', 'Include raw metric data in output') .option('--baseline ', 'Compare results against a baseline JSON') @@ -35,6 +35,8 @@ program .option('--log-file ', 'Capture server stdout/stderr to file') .option('--with-client', 'Launch headless browser client and collect client-side metrics') .option('--client-dev-url ', 'URL for the Vite client dev server', 'http://localhost:5173') + .option('--cpu-throttle ', 'Apply browser CPU throttle rate (1=no throttle, 4=mid mobile, 16=low-end)', parseFloat) + .option('--external-server ', 'Use an already-running external server (skip server startup)') .option('--verbose', 'Enable verbose logging') .action(async (scenarioPath, options) => { let scenario; @@ -43,7 +45,7 @@ program const presetPath = path.join(__dirname, 'presets', `${options.preset}.yaml`); if (!fs.existsSync(presetPath)) { - console.error('Unknown preset: %s. Available: idle, stress, large-world, many-players, combined, join-storm, block-churn, entity-density, multi-world, blocks-10k-dense, blocks-500k-dense, blocks-1m-dense, blocks-10m-dense, blocks-1m-multi-world, hyfire2-bots, zoo-game-bots', options.preset); + console.error('Unknown preset: %s. Available: idle, stress, large-world, many-players, combined, join-storm, block-churn, entity-density, multi-world, blocks-10k-dense, blocks-500k-dense, blocks-1m-dense, blocks-10m-dense, blocks-1m-multi-world, hyfire2-bots, zoo-game-bots, zoo-game-full', options.preset); process.exit(1); } @@ -60,11 +62,13 @@ program serverCwd: options.serverCwd, clientUrl: options.clientUrl, clientDevUrl: options.clientDevUrl, + cpuThrottle: options.cpuThrottle, withClient: options.withClient ?? false, headless: options.headless !== false, verbose: options.verbose, noPerfApi: options.perfApi === false, logFile: options.logFile, + externalServerUrl: options.externalServer, }); console.log(`Running benchmark: ${scenario.name}`); diff --git a/packages/perf-tools/src/presets/zoo-game-full.yaml b/packages/perf-tools/src/presets/zoo-game-full.yaml new file mode 100644 index 00000000..90185e92 --- /dev/null +++ b/packages/perf-tools/src/presets/zoo-game-full.yaml @@ -0,0 +1,66 @@ +name: "zoo-game-full" +description: "Zoo Game walkthrough using /fillzoo on an external game server, with client rendering metrics" +warmupMs: 5000 +phases: + - name: setup-zoo + actions: + - type: send_chat + message: "/fillzoo" + durationMs: 3000 + - name: wait-for-animals + actions: + - type: wait_for_entities + count: 20 + durationMs: 45000 + - type: wait + durationMs: 5000 + - name: walkthrough + collect: true + duration: 45s + actions: + - type: set_camera + yaw: 0 + pitch: 0.3 + durationMs: 500 + - type: walk_player + durationMs: 5000 + options: { key: w } + - type: set_camera + yaw: -1.57 + pitch: 0.3 + durationMs: 300 + - type: walk_player + durationMs: 4000 + options: { key: w } + - type: set_camera + yaw: 3.14 + pitch: 0.3 + durationMs: 300 + - type: walk_player + durationMs: 5000 + options: { key: w } + - type: set_camera + yaw: 1.57 + pitch: 0.3 + durationMs: 300 + - type: walk_player + durationMs: 4000 + options: { key: w } + - type: set_camera + yaw: 0 + pitch: 0.3 + durationMs: 300 + - type: walk_player + durationMs: 5000 + options: { key: w } +thresholds: + tick_duration_ms: + avg: 16 + p99: 30 + memory_mb: + max: 768 + client: + fps_avg: 10 + draw_calls_max: 500 + triangles_max: 3000000 + frame_time_ms_max: 300 diff --git a/packages/perf-tools/src/runners/BenchmarkRunner.ts b/packages/perf-tools/src/runners/BenchmarkRunner.ts index 962c8d82..64472905 100644 --- a/packages/perf-tools/src/runners/BenchmarkRunner.ts +++ b/packages/perf-tools/src/runners/BenchmarkRunner.ts @@ -15,11 +15,14 @@ export interface BenchmarkRunnerOptions { serverCwd?: string; clientUrl?: string; clientDevUrl?: string; + cpuThrottle?: number; withClient?: boolean; headless?: boolean; verbose?: boolean; noPerfApi?: boolean; logFile?: string; + /** Skip server startup and connect to an already-running server at this URL */ + externalServerUrl?: string; } export interface BenchmarkResult { @@ -55,11 +58,13 @@ export default class BenchmarkRunner { serverCwd: options?.serverCwd ?? resolveDefaultServerCwd(process.cwd()), clientUrl: options?.clientUrl ?? 'https://local.hytopiahosting.com:8080', clientDevUrl: options?.clientDevUrl ?? '', + cpuThrottle: options?.cpuThrottle ?? 1, withClient: options?.withClient ?? false, headless: options?.headless ?? true, verbose: options?.verbose ?? false, noPerfApi: options?.noPerfApi ?? false, logFile: options?.logFile ?? '', + externalServerUrl: options?.externalServerUrl ?? '', }; this._collector = new MetricCollector(); this._processMonitor = new ProcessMonitor(); @@ -77,12 +82,19 @@ export default class BenchmarkRunner { let processMetrics: ProcessMetrics | undefined; try { - await this._startServer(); - - // start process monitor as soon as server PID is available - if (this._serverProcess?.pid) { - this._log(`[bench] Starting process monitor (pid=${this._serverProcess.pid})`); - this._processMonitor.start(this._serverProcess.pid); + if (this._options.externalServerUrl) { + // Use external server — skip startup, just set the URL + this._options.clientUrl = this._options.externalServerUrl; + this._serverApi = new ServerApiClient(this._options.externalServerUrl); + this._log(`[bench] Using external server: ${this._options.externalServerUrl}`); + } else { + await this._startServer(); + + // start process monitor as soon as server PID is available + if (this._serverProcess?.pid) { + this._log(`[bench] Starting process monitor (pid=${this._serverProcess.pid})`); + this._processMonitor.start(this._serverProcess.pid); + } } await this._serverApi.waitForHealthy(); @@ -118,6 +130,11 @@ export default class BenchmarkRunner { } else { this._log('[bench] Client perf bridge ready'); } + + if (this._options.cpuThrottle > 1) { + this._log(`[bench] Applying startup CPU throttle: ${this._options.cpuThrottle}x`); + await this._headlessClient.setCpuThrottle(this._options.cpuThrottle); + } } catch (err: any) { this._log(`[bench] WARNING: Headless client failed to launch: ${err?.message ?? err}`); this._headlessClient = null; @@ -345,6 +362,18 @@ export default class BenchmarkRunner { } } break; + case 'send_chat': + if (this._headlessClient && action.message) { + this._log(`[bench] Sending chat: ${action.message}`); + + try { + await this._headlessClient.sendChatMessage(action.message); + await new Promise(r => setTimeout(r, action.durationMs ?? 500)); + } catch { + this._log('[bench] send_chat: failed (non-fatal)'); + } + } + break; case 'custom': throw new Error(`Action not supported yet: ${action.type}`); } @@ -548,8 +577,38 @@ export default class BenchmarkRunner { private _buildBaseline(metrics: CollectedMetrics): BaselineResult { const snapshots = metrics.serverSnapshots; + const clientSnapshots = metrics.clientSnapshots; + + if (snapshots.length === 0 && clientSnapshots.length === 0) { + return { + avgTickMs: 0, + maxTickMs: 0, + p95TickMs: 0, + p99TickMs: 0, + ticksOverBudgetPct: 0, + avgMemoryMb: 0, + operations: {}, + }; + } if (snapshots.length === 0) { + // No server snapshots (e.g. external server without PerfHarness) — build client-only baseline + const client = clientSnapshots.length > 0 + ? { + avgFps: average(clientSnapshots, s => s.fps), + minFps: Math.min(...clientSnapshots.map(s => s.fps)), + avgFrameTimeMs: average(clientSnapshots, s => s.frameTimeMs), + avgDrawCalls: average(clientSnapshots, s => s.drawCalls), + maxDrawCalls: max(clientSnapshots, s => s.drawCalls), + avgTriangles: average(clientSnapshots, s => s.triangles), + maxTriangles: max(clientSnapshots, s => s.triangles), + avgGeometries: average(clientSnapshots, s => s.geometries ?? 0), + avgEntities: average(clientSnapshots, s => s.entities?.count ?? 0), + avgVisibleChunks: average(clientSnapshots, s => s.chunks?.visible ?? 0), + avgUsedMemoryMb: average(clientSnapshots, s => s.usedMemoryMb ?? 0), + } + : undefined; + return { avgTickMs: 0, maxTickMs: 0, @@ -557,6 +616,8 @@ export default class BenchmarkRunner { p99TickMs: 0, ticksOverBudgetPct: 0, avgMemoryMb: 0, + avgFps: client?.avgFps, + client, operations: {}, }; } @@ -583,8 +644,6 @@ export default class BenchmarkRunner { } } - const clientSnapshots = metrics.clientSnapshots; - const client = clientSnapshots.length > 0 ? { avgFps: average(clientSnapshots, s => s.fps), diff --git a/packages/perf-tools/src/runners/HeadlessClient.ts b/packages/perf-tools/src/runners/HeadlessClient.ts index 2c614f30..4e7e29c3 100644 --- a/packages/perf-tools/src/runners/HeadlessClient.ts +++ b/packages/perf-tools/src/runners/HeadlessClient.ts @@ -373,6 +373,28 @@ export default class HeadlessClient { } } + /** + * Send a chat message via the game's network manager. + * Used to trigger server-side debug commands like /fillzoo. + */ + public async sendChatMessage(message: string): Promise { + const page = this._page as any; + + if (!page || !this._connected) return; + + try { + await page.evaluate((msg: string) => { + const game = (window as any).__HYTOPIA_GAME__; + + if (game?.networkManager?.sendChatMessagePacket) { + game.networkManager.sendChatMessagePacket(msg); + } + }, message); + } catch { + // best-effort + } + } + public async captureTrace(durationMs: number): Promise { const page = this._page as any; diff --git a/packages/perf-tools/src/runners/ScenarioLoader.ts b/packages/perf-tools/src/runners/ScenarioLoader.ts index fb6097bf..04708df2 100644 --- a/packages/perf-tools/src/runners/ScenarioLoader.ts +++ b/packages/perf-tools/src/runners/ScenarioLoader.ts @@ -27,6 +27,7 @@ export interface ScenarioAction { | 'wait_for_entities' | 'set_camera' | 'throttle_cpu' + | 'send_chat' | 'custom'; count?: number; behavior?: string; @@ -36,6 +37,7 @@ export interface ScenarioAction { yaw?: number; pitch?: number; rate?: number; + message?: string; worldId?: number; kind?: 'model' | 'block'; tag?: string; diff --git a/packages/perf-tools/src/runners/ServerApiClient.ts b/packages/perf-tools/src/runners/ServerApiClient.ts index 8120ae91..34cac2ea 100644 --- a/packages/perf-tools/src/runners/ServerApiClient.ts +++ b/packages/perf-tools/src/runners/ServerApiClient.ts @@ -1,3 +1,5 @@ +import * as http from 'node:http'; +import * as https from 'node:https'; import type { ServerSnapshot } from './MetricCollector.js'; interface HealthResponse { @@ -86,30 +88,30 @@ export default class ServerApiClient { public async health(): Promise { const url = new URL('/', this._baseUrl); - const res = await fetch(url, { method: 'GET' }); + const res = await this._request(url, { method: 'GET' }); - if (!res.ok) { - throw new Error(`Health check failed: ${res.status} ${res.statusText}`); + if (res.statusCode < 200 || res.statusCode >= 300) { + throw new Error(`Health check failed: ${res.statusCode} ${res.statusMessage}`); } - return await res.json() as HealthResponse; + return JSON.parse(res.body) as HealthResponse; } public async reset(): Promise { const url = new URL('/__perf/reset', this._baseUrl); - const res = await fetch(url, { + const res = await this._request(url, { method: 'POST', headers: this._headers(), }); - if (!res.ok) { - throw new Error(`Reset failed: ${res.status} ${res.statusText}`); + if (res.statusCode < 200 || res.statusCode >= 300) { + throw new Error(`Reset failed: ${res.statusCode} ${res.statusMessage}`); } } public async action(action: ServerAction): Promise { const url = new URL('/__perf/action', this._baseUrl); - const res = await fetch(url, { + const res = await this._request(url, { method: 'POST', headers: { ...this._headers(), @@ -118,21 +120,20 @@ export default class ServerApiClient { body: JSON.stringify(action), }); - if (!res.ok) { - const text = await res.text().catch(() => ''); - throw new Error(`Action failed: ${res.status} ${res.statusText}${text ? ` - ${text}` : ''}`); + if (res.statusCode < 200 || res.statusCode >= 300) { + throw new Error(`Action failed: ${res.statusCode} ${res.statusMessage}${res.body ? ` - ${res.body}` : ''}`); } } public async snapshot(): Promise { const url = new URL('/__perf/snapshot', this._baseUrl); - const res = await fetch(url, { method: 'GET', headers: this._headers() }); + const res = await this._request(url, { method: 'GET', headers: this._headers() }); - if (!res.ok) { - throw new Error(`Snapshot failed: ${res.status} ${res.statusText}`); + if (res.statusCode < 200 || res.statusCode >= 300) { + throw new Error(`Snapshot failed: ${res.statusCode} ${res.statusMessage}`); } - const data = await res.json() as PerfSnapshotResponse; + const data = JSON.parse(res.body) as PerfSnapshotResponse; return { timestamp: data.timestamp, @@ -156,4 +157,51 @@ export default class ServerApiClient { 'x-hytopia-perf-token': this._token, }; } + + private async _request( + url: URL, + options: { method: string; headers?: Record; body?: string }, + ): Promise<{ statusCode: number; statusMessage: string; body: string }> { + const transport = url.protocol === 'https:' ? https : http; + + return await new Promise((resolve, reject) => { + const req = transport.request(url, { + method: options.method, + headers: options.headers, + rejectUnauthorized: !this._shouldAllowInsecureTls(url), + }, res => { + const chunks: Buffer[] = []; + + res.on('data', chunk => { + chunks.push(Buffer.isBuffer(chunk) ? chunk : Buffer.from(chunk)); + }); + res.on('end', () => { + resolve({ + statusCode: res.statusCode ?? 0, + statusMessage: res.statusMessage ?? 'Unknown Error', + body: Buffer.concat(chunks).toString('utf8'), + }); + }); + }); + + req.on('error', reject); + + if (options.body) { + req.write(options.body); + } + + req.end(); + }); + } + + private _shouldAllowInsecureTls(url: URL): boolean { + if (url.protocol !== 'https:') { + return false; + } + + return url.hostname === 'localhost' + || url.hostname === '127.0.0.1' + || url.hostname === '::1' + || url.hostname === 'local.hytopiahosting.com'; + } } From 52a78d853ab8e0784551949f6f46df9154eec0ab Mon Sep 17 00:00:00 2001 From: web3dev1337 <160291380+web3dev1337@users.noreply.github.com> Date: Sat, 7 Mar 2026 13:02:22 +1100 Subject: [PATCH 27/40] docs: record real game benchmark paths --- .../perf-branch-state-2026-03-06/FINAL.md | 9 +++++++ packages/perf-tools/scripts/setup-game.sh | 25 +++++++++++++++++-- 2 files changed, 32 insertions(+), 2 deletions(-) diff --git a/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md b/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md index b96ef943..e4e272ab 100644 --- a/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md +++ b/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md @@ -144,6 +144,15 @@ Important clarification: HyFire2 and Zoo Game are not first-class game source trees inside this repo. This repo provides the engine plus the tooling to benchmark those games from their own directories. +### Local Paths Used On This Machine + +The concrete local game paths that were actually discovered and used during verification on this machine are: + +- HyFire2: `/home/ab/GitHub/games/hyfire2` +- Zoo Game: `/home/ab/GitHub/games/hytopia/zoo-game/work1` + +These paths are machine-specific and do not belong in the repo-wide codebase inventory, but they do belong in this perf state/runbook so the next real-game benchmark does not require rediscovery. + ### CI Automation Core files: diff --git a/packages/perf-tools/scripts/setup-game.sh b/packages/perf-tools/scripts/setup-game.sh index d1652bca..5515e343 100755 --- a/packages/perf-tools/scripts/setup-game.sh +++ b/packages/perf-tools/scripts/setup-game.sh @@ -5,7 +5,9 @@ set -e if [ -z "$1" ]; then echo "Usage: $0 " - echo "Example: $0 ~/GitHub/games/hytopia/games/HyFire2/work1" + echo "Examples:" + echo " $0 /home/ab/GitHub/games/hyfire2" + echo " $0 /home/ab/GitHub/games/hytopia/zoo-game/work1" exit 1 fi @@ -20,7 +22,26 @@ echo "Linking hytopia SDK into $GAME_DIR ..." cd "$GAME_DIR" npm link hytopia -SDK_VERSION=$(node -e "console.log(require('hytopia/package.json').version)") +SDK_VERSION=$(node - <<'NODE' +const fs = require('node:fs'); +const path = require('node:path'); + +let dir = path.dirname(require.resolve('hytopia')); + +while (dir !== path.dirname(dir)) { + const pkgPath = path.join(dir, 'package.json'); + + if (fs.existsSync(pkgPath)) { + console.log(JSON.parse(fs.readFileSync(pkgPath, 'utf8')).version); + process.exit(0); + } + + dir = path.dirname(dir); +} + +process.exit(1); +NODE +) echo "" echo "Game at $GAME_DIR now using local SDK v${SDK_VERSION}" echo "" From d47015d1912ec8a110abadc231d8a754994c69c1 Mon Sep 17 00:00:00 2001 From: web3dev1337 <160291380+web3dev1337@users.noreply.github.com> Date: Sat, 7 Mar 2026 14:13:02 +1100 Subject: [PATCH 28/40] feat: add zoo observation preset --- CODEBASE_DOCUMENTATION.md | 2 +- .../perf-branch-state-2026-03-06/FINAL.md | 7 +- packages/perf-tools/src/cli.ts | 4 +- .../src/presets/zoo-game-observe.yaml | 71 +++++++++++++++++++ .../perf-tools/src/runners/BenchmarkRunner.ts | 1 + .../perf-tools/src/runners/ServerApiClient.ts | 2 +- sdk/server.mjs | 2 +- server/src/perf/PerfHarness.ts | 22 ++++-- 8 files changed, 98 insertions(+), 13 deletions(-) create mode 100644 packages/perf-tools/src/presets/zoo-game-observe.yaml diff --git a/CODEBASE_DOCUMENTATION.md b/CODEBASE_DOCUMENTATION.md index 8f0d77e3..881789d6 100644 --- a/CODEBASE_DOCUMENTATION.md +++ b/CODEBASE_DOCUMENTATION.md @@ -16,7 +16,7 @@ PROTOCOL: protocol/ - Packet schemas + definitions (@hytopia.com/server-protocol SDK: sdk/ - Git submodule → hytopiagg/sdk (build output lands here) EXAMPLES: sdk-examples/ - Reference games built with the SDK ASSETS: assets/release/ - Default game assets (audio, blocks, maps, models, particles, skyboxes, ui) -PERF: packages/perf-tools/ - Benchmark CLI + trace analysis (`hytopia-bench`), headless client metrics, synthetic + real-game presets +PERF: packages/perf-tools/ - Benchmark CLI + trace analysis (`hytopia-bench`), headless client metrics, synthetic + real-game presets (`zoo-game-full` benchmark, `zoo-game-observe` joinable observation run) CONFIG: package.json - Monorepo root (npm workspaces) server/package.json - Server deps + build scripts server/tsconfig.json - Strict TS, path alias @/* → ./src/* diff --git a/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md b/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md index e4e272ab..9347592e 100644 --- a/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md +++ b/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md @@ -124,8 +124,11 @@ Representative presets: - [hyfire2-bots.yaml](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/presets/hyfire2-bots.yaml) - [zoo-game-bots.yaml](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/presets/zoo-game-bots.yaml) - [zoo-game-full.yaml](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/presets/zoo-game-full.yaml) +- [zoo-game-observe.yaml](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/presets/zoo-game-observe.yaml) -`zoo-game-full.yaml` is the cleaned real-game walkthrough preset retained from the local investigation. CPU throttling is no longer hardcoded in the preset; it is now a runner option. +`zoo-game-full.yaml` is the cleaned real-game walkthrough benchmark retained from the local investigation. It is intentionally single-client: one benchmark browser joins, sends `/fillzoo`, and walks the route while client metrics are collected. It is not the “human joins a world with 5 other movers” observation mode. + +`zoo-game-observe.yaml` is the joinable observation preset. It keeps the same Zoo setup but also spawns 5 moving perf bots near the zoo entrance so a human observer sees a busier scene without editing the benchmark by hand. CPU throttling is still a runner option, not hardcoded in either preset. ### Real Game Integration @@ -224,6 +227,7 @@ This cleanup retains the broadly reusable framework improvements that were still - chat-triggered setup support in [HeadlessClient.ts](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/runners/HeadlessClient.ts) - external-server handling and client-only baseline generation in [BenchmarkRunner.ts](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/runners/BenchmarkRunner.ts) - a cleaned [zoo-game-full.yaml](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/presets/zoo-game-full.yaml) preset +- a documented [zoo-game-observe.yaml](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/presets/zoo-game-observe.yaml) preset for live join/observation runs - runner-level `--cpu-throttle` support so desktop/mobile/low-end comparisons no longer require editing YAML - scoped local HTTPS handling in [ServerApiClient.ts](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/runners/ServerApiClient.ts) instead of a global TLS-disable environment hack @@ -323,6 +327,7 @@ If you only read a few files, read these: 4. [BenchmarkRunner.ts](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/runners/BenchmarkRunner.ts) 5. [PerfBridge.ts](/home/ab/GitHub/hytopia/work1/client/src/core/PerfBridge.ts) 6. [zoo-game-full.yaml](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/presets/zoo-game-full.yaml) +7. [zoo-game-observe.yaml](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/presets/zoo-game-observe.yaml) ## Bottom Line diff --git a/packages/perf-tools/src/cli.ts b/packages/perf-tools/src/cli.ts index f5004b16..64814c03 100644 --- a/packages/perf-tools/src/cli.ts +++ b/packages/perf-tools/src/cli.ts @@ -23,7 +23,7 @@ program .command('run') .description('Run a benchmark scenario') .argument('[scenario]', 'Path to scenario YAML/JSON file') - .option('--preset ', 'Use a built-in preset (idle, stress, large-world, many-players, combined, join-storm, block-churn, entity-density, multi-world, blocks-10k-dense, blocks-500k-dense, blocks-1m-dense, blocks-10m-dense, blocks-1m-multi-world, hyfire2-bots, zoo-game-bots, zoo-game-full)') + .option('--preset ', 'Use a built-in preset (idle, stress, large-world, many-players, combined, join-storm, block-churn, entity-density, multi-world, blocks-10k-dense, blocks-500k-dense, blocks-1m-dense, blocks-10m-dense, blocks-1m-multi-world, hyfire2-bots, zoo-game-bots, zoo-game-full, zoo-game-observe)') .option('--output ', 'Write results to JSON file') .option('--full-data', 'Include raw metric data in output') .option('--baseline ', 'Compare results against a baseline JSON') @@ -45,7 +45,7 @@ program const presetPath = path.join(__dirname, 'presets', `${options.preset}.yaml`); if (!fs.existsSync(presetPath)) { - console.error('Unknown preset: %s. Available: idle, stress, large-world, many-players, combined, join-storm, block-churn, entity-density, multi-world, blocks-10k-dense, blocks-500k-dense, blocks-1m-dense, blocks-10m-dense, blocks-1m-multi-world, hyfire2-bots, zoo-game-bots, zoo-game-full', options.preset); + console.error('Unknown preset: %s. Available: idle, stress, large-world, many-players, combined, join-storm, block-churn, entity-density, multi-world, blocks-10k-dense, blocks-500k-dense, blocks-1m-dense, blocks-10m-dense, blocks-1m-multi-world, hyfire2-bots, zoo-game-bots, zoo-game-full, zoo-game-observe', options.preset); process.exit(1); } diff --git a/packages/perf-tools/src/presets/zoo-game-observe.yaml b/packages/perf-tools/src/presets/zoo-game-observe.yaml new file mode 100644 index 00000000..d2a55894 --- /dev/null +++ b/packages/perf-tools/src/presets/zoo-game-observe.yaml @@ -0,0 +1,71 @@ +name: "zoo-game-observe" +description: "Zoo Game observation run: /fillzoo, 5 moving perf bots near the zoo entrance, plus the benchmark walkthrough client" +warmupMs: 5000 +phases: + - name: setup-zoo + actions: + - type: despawn_bots + - type: send_chat + message: "/fillzoo" + durationMs: 3000 + - type: spawn_bots + count: 5 + behavior: random_walk + origin: { x: 0, y: 2, z: 25 } + - name: wait-for-world + actions: + - type: wait_for_entities + count: 25 + durationMs: 45000 + - type: wait + durationMs: 5000 + - name: walkthrough + collect: true + duration: 5m + actions: + - type: set_camera + yaw: 0 + pitch: 0.3 + durationMs: 500 + - type: walk_player + durationMs: 5000 + options: { key: w } + - type: set_camera + yaw: -1.57 + pitch: 0.3 + durationMs: 300 + - type: walk_player + durationMs: 4000 + options: { key: w } + - type: set_camera + yaw: 3.14 + pitch: 0.3 + durationMs: 300 + - type: walk_player + durationMs: 5000 + options: { key: w } + - type: set_camera + yaw: 1.57 + pitch: 0.3 + durationMs: 300 + - type: walk_player + durationMs: 4000 + options: { key: w } + - type: set_camera + yaw: 0 + pitch: 0.3 + durationMs: 300 + - type: walk_player + durationMs: 5000 + options: { key: w } +thresholds: + tick_duration_ms: + avg: 16 + p99: 30 + memory_mb: + max: 768 + client: + fps_avg: 10 + draw_calls_max: 500 + triangles_max: 3000000 + frame_time_ms_max: 300 diff --git a/packages/perf-tools/src/runners/BenchmarkRunner.ts b/packages/perf-tools/src/runners/BenchmarkRunner.ts index 64472905..a71538c5 100644 --- a/packages/perf-tools/src/runners/BenchmarkRunner.ts +++ b/packages/perf-tools/src/runners/BenchmarkRunner.ts @@ -213,6 +213,7 @@ export default class BenchmarkRunner { type: 'spawn_bots', count: action.count ?? 0, behavior: action.behavior, + origin: action.origin, }); break; case 'despawn_bots': diff --git a/packages/perf-tools/src/runners/ServerApiClient.ts b/packages/perf-tools/src/runners/ServerApiClient.ts index 34cac2ea..62f4dc94 100644 --- a/packages/perf-tools/src/runners/ServerApiClient.ts +++ b/packages/perf-tools/src/runners/ServerApiClient.ts @@ -42,7 +42,7 @@ interface PerfSnapshotResponse { } export type ServerAction = - | { type: 'spawn_bots'; count: number; behavior?: string } + | { type: 'spawn_bots'; count: number; behavior?: string; origin?: { x: number; y: number; z: number } } | { type: 'despawn_bots'; count?: number } | { type: 'load_map'; mapPath: string; worldId?: number } | { type: 'generate_blocks'; blockCount: number; blockTypeId: number; worldId?: number; layout?: 'dense' | 'slab'; slabHeight?: number; origin?: { x: number; y: number; z: number }; clear?: boolean } diff --git a/sdk/server.mjs b/sdk/server.mjs index 2cb4d313..862813d3 100644 --- a/sdk/server.mjs +++ b/sdk/server.mjs @@ -286,7 +286,7 @@ ${J.stack}`:"unknown"}}}}}var PUB=(A={})=>{let Q=A.limit??qUB;return{name:MUB,pr `),K=E.shift();if(!K)return A.destroy(),B(Error("No header received from proxy CONNECT response"));let I=K.split(" "),V=+(I[1]||0),H=I.slice(2).join(" "),D={};for(let L of E){if(!L)continue;let z=L.indexOf(":");if(z===-1)return A.destroy(),B(Error(`Invalid header from proxy CONNECT response: "${L}"`));let M=L.slice(0,z).toLowerCase(),N=L.slice(z+1).trimStart(),q=D[M];if(typeof q==="string")D[M]=[q,N];else if(Array.isArray(q))q.push(N);else D[M]=N}iT("got proxy server response: %o %o",K,D),X(),Q({connect:{statusCode:V,statusText:H,headers:D},buffered:U})}A.on("error",W),A.on("end",G),C()})}function Xq(...A){e.log("[https-proxy-agent]",...A)}class nT extends ss{static __initStatic(){this.protocols=["http","https"]}constructor(A,Q){super(Q);this.options={},this.proxy=typeof A==="string"?new URL(A):A,this.proxyHeaders=Q?.headers??{},Xq("Creating new HttpsProxyAgent instance: %o",this.proxy.href);let B=(this.proxy.hostname||this.proxy.host).replace(/^\[|\]$/g,""),Y=this.proxy.port?parseInt(this.proxy.port,10):this.proxy.protocol==="https:"?443:80;this.connectOpts={ALPNProtocols:["http/1.1"],...Q?OqQ(Q,"headers"):null,host:B,port:Y}}async connect(A,Q){let{proxy:B}=this;if(!Q.host)throw TypeError('No "host" provided');let Y;if(B.protocol==="https:"){Xq("Creating `tls.Socket`: %o",this.connectOpts);let U=this.connectOpts.servername||this.connectOpts.host;Y=rs.connect({...this.connectOpts,servername:U&&SG.isIP(U)?void 0:U})}else Xq("Creating `net.Socket`: %o",this.connectOpts),Y=SG.connect(this.connectOpts);let J=typeof this.proxyHeaders==="function"?this.proxyHeaders():{...this.proxyHeaders},C=SG.isIPv6(Q.host)?`[${Q.host}]`:Q.host,X=`CONNECT ${C}:${Q.port} HTTP/1.1\r `;if(B.username||B.password){let U=`${decodeURIComponent(B.username)}:${decodeURIComponent(B.password)}`;J["Proxy-Authorization"]=`Basic ${Buffer.from(U).toString("base64")}`}if(J.Host=`${C}:${Q.port}`,!J["Proxy-Connection"])J["Proxy-Connection"]=this.keepAlive?"Keep-Alive":"close";for(let U of Object.keys(J))X+=`${U}: ${J[U]}\r `;let G=jqQ(Y);Y.write(`${X}\r -`);let{connect:W,buffered:F}=await G;if(A.emit("proxyConnect",W),this.emit("proxyConnect",W,A),W.statusCode===200){if(A.once("socket",aR0),Q.secureEndpoint){Xq("Upgrading socket connection to TLS");let U=Q.servername||Q.host;return rs.connect({...OqQ(Q,"host","path","port"),socket:Y,servername:SG.isIP(U)?void 0:U})}return Y}Y.destroy();let Z=new SG.Socket({writable:!1});return Z.readable=!0,A.once("socket",(U)=>{Xq("Replaying proxy buffer for failed request"),U.push(F),U.push(null)}),Z}}nT.__initStatic();function aR0(A){A.resume()}function OqQ(A,...Q){let B={},Y;for(Y in A)if(!Q.includes(Y))B[Y]=A[Y];return B}var Qw0=32768;function Bw0(A){return new eR0({read(){this.push(A),this.push(null)}})}function sT(A){let Q;try{Q=new URL(A.url)}catch(W){return f0(()=>{console.warn("[@sentry/node]: Invalid dsn or tunnel option, will not send any events. The tunnel option must be a full URL when used.")}),nE(A,()=>Promise.resolve({}))}let B=Q.protocol==="https:",Y=Yw0(Q,A.proxy||(B?process.env.https_proxy:void 0)||process.env.http_proxy),J=B?tR0:oR0,C=A.keepAlive===void 0?!1:A.keepAlive,X=Y?new nT(Y):new J.Agent({keepAlive:C,maxSockets:30,timeout:2000}),G=Jw0(A,A.httpModule??J,X);return nE(A,G)}function Yw0(A,Q){let{no_proxy:B}=process.env;if(B?.split(",").some((J)=>A.host.endsWith(J)||A.hostname.endsWith(J)))return;else return Q}function Jw0(A,Q,B){let{hostname:Y,pathname:J,port:C,protocol:X,search:G}=new URL(A.url);return function(F){return new Promise((Z,U)=>{ON(()=>{let $=Bw0(F.body),E={...A.headers};if(F.body.length>Qw0)E["content-encoding"]="gzip",$=$.pipe(Aw0());let K=Q.request({method:"POST",agent:B,headers:E,hostname:Y,path:`${J}${G}`,port:C,protocol:X,ca:A.caCerts},(I)=>{I.on("data",()=>{}),I.on("end",()=>{}),I.setEncoding("utf8");let V=I.headers["retry-after"]??null,H=I.headers["x-sentry-rate-limits"]??null;Z({statusCode:I.statusCode,headers:{"retry-after":V,"x-sentry-rate-limits":Array.isArray(H)?H[0]||null:H}})});K.on("error",U),$.pipe(K)})})}}var Cw0=new Set(["false","f","n","no","off","0"]),Xw0=new Set(["true","t","y","yes","on","1"]);function rT(A,Q){let B=String(A).toLowerCase();if(Cw0.has(B))return!1;if(Xw0.has(B))return!0;return Q?.strict?null:Boolean(A)}import{posix as Gw0,sep as Ww0}from"node:path";function PqQ(A){return A.replace(/^[A-Z]:/,"").replace(/\\/g,"/")}function aT(A=process.argv[1]?od(process.argv[1]):process.cwd(),Q=Ww0==="\\"){let B=Q?PqQ(A):A;return(Y)=>{if(!Y)return;let J=Q?PqQ(Y):Y,{dir:C,base:X,ext:G}=Gw0.parse(J);if(G===".js"||G===".mjs"||G===".cjs")X=X.slice(0,G.length*-1);let W=decodeURIComponent(X);if(!C)C=".";let F=C.lastIndexOf("/node_modules");if(F>-1)return`${C.slice(F+14).replace(/\//g,".")}:${W}`;if(C.startsWith(B)){let Z=C.slice(B.length+1).replace(/\//g,".");return Z?`${Z}:${W}`:W}return W}}function oT(A){if(process.env.SENTRY_RELEASE)return process.env.SENTRY_RELEASE;if(AQ.SENTRY_RELEASE?.id)return AQ.SENTRY_RELEASE.id;let Q=process.env.GITHUB_SHA||process.env.CI_MERGE_REQUEST_SOURCE_BRANCH_SHA||process.env.CI_BUILD_REF||process.env.CI_COMMIT_SHA||process.env.BITBUCKET_COMMIT,B=process.env.APPVEYOR_PULL_REQUEST_HEAD_COMMIT||process.env.APPVEYOR_REPO_COMMIT||process.env.CODEBUILD_RESOLVED_SOURCE_VERSION||process.env.AWS_COMMIT_ID||process.env.BUILD_SOURCEVERSION||process.env.GIT_CLONE_COMMIT_HASH||process.env.BUDDY_EXECUTION_REVISION||process.env.BUILDKITE_COMMIT||process.env.CIRCLE_SHA1||process.env.CIRRUS_CHANGE_IN_REPO||process.env.CF_REVISION||process.env.CM_COMMIT||process.env.CF_PAGES_COMMIT_SHA||process.env.DRONE_COMMIT_SHA||process.env.FC_GIT_COMMIT_SHA||process.env.HEROKU_TEST_RUN_COMMIT_VERSION||process.env.HEROKU_SLUG_COMMIT||process.env.RAILWAY_GIT_COMMIT_SHA||process.env.RENDER_GIT_COMMIT||process.env.SEMAPHORE_GIT_SHA||process.env.TRAVIS_PULL_REQUEST_SHA||process.env.VERCEL_GIT_COMMIT_SHA||process.env.VERCEL_GITHUB_COMMIT_SHA||process.env.VERCEL_GITLAB_COMMIT_SHA||process.env.VERCEL_BITBUCKET_COMMIT_SHA||process.env.ZEIT_GITHUB_COMMIT_SHA||process.env.ZEIT_GITLAB_COMMIT_SHA||process.env.ZEIT_BITBUCKET_COMMIT_SHA,Y=process.env.CI_COMMIT_ID||process.env.SOURCE_COMMIT||process.env.SOURCE_VERSION||process.env.GIT_COMMIT||process.env.COMMIT_REF||process.env.BUILD_VCS_NUMBER||process.env.CI_COMMIT_SHA;return Q||B||Y||A}var tT=jj(Fc(aT()));var SqQ=qA(yA(),1),kqQ=qA(NB(),1);import*as TqQ from"node:os";import{threadId as Fw0,isMainThread as Zw0}from"worker_threads";var $w0=60000;class Gq extends uj{constructor(A){let Q=A.serverName||global.process.env.SENTRY_NAME||TqQ.hostname(),B={...A,platform:"node",runtime:{name:"node",version:global.process.version},serverName:Q};if(A.openTelemetryInstrumentations)kqQ.registerInstrumentations({instrumentations:A.openTelemetryInstrumentations});dd(B,"node"),e.log(`Initializing Sentry: process: ${process.pid}, thread: ${Zw0?"main":`worker-${Fw0}`}.`);super(B);if(this.getOptions()._experiments?.enableLogs){if(this._logOnExitFlushListener=()=>{WW(this)},Q)this.on("beforeCaptureLog",(Y)=>{Y.attributes={...Y.attributes,"server.address":Q}});process.on("beforeExit",this._logOnExitFlushListener)}}get tracer(){if(this._tracer)return this._tracer;let A="@sentry/node",Q=l0,B=SqQ.trace.getTracer(A,Q);return this._tracer=B,B}async flush(A){let B=this.traceProvider?.activeSpanProcessor;if(B)await B.forceFlush();if(this.getOptions().sendClientReports)this._flushOutcomes();return super.flush(A)}close(A){if(this._clientReportInterval)clearInterval(this._clientReportInterval);if(this._clientReportOnExitFlushListener)process.off("beforeExit",this._clientReportOnExitFlushListener);if(this._logOnExitFlushListener)process.off("beforeExit",this._logOnExitFlushListener);return super.close(A)}startClientReportTracking(){let A=this.getOptions();if(A.sendClientReports)this._clientReportOnExitFlushListener=()=>{this._flushOutcomes()},this._clientReportInterval=setInterval(()=>{fQ&&e.log("Flushing client reports based on interval."),this._flushOutcomes()},A.clientReportFlushInterval??$w0).unref(),process.on("beforeExit",this._clientReportOnExitFlushListener)}_getTraceInfoFromScope(A){if(!A)return[void 0,void 0];return o$Q(this,A)}}var V1=qA(yA(),1),_qQ=qA(Ti(),1),vqQ=qA(_i(),1),dK=qA(dB(),1);var yqQ=qA(up(),1);import Uw0 from"module";var as=1e6;function eT(A,Q={}){if(A.getOptions().debug)hqQ();let B=Kw0(A,Q);A.traceProvider=B}function os(){let[A=0,Q=0]=process.versions.node.split(".").map(Number);if(A>=21||A===20&&Q>=6||A===18&&Q>=19){if(!AQ._sentryEsmLoaderHookRegistered)try{let{addHookMessagePort:B}=yqQ.createAddHookMessageChannel();Uw0.register("import-in-the-middle/hook.mjs",import.meta.url,{data:{addHookMessagePort:B,include:[]},transferList:[B]})}catch(B){e.warn("Failed to register ESM hook",B)}}else f0(()=>{console.warn(`[Sentry] You are using Node.js v${process.versions.node} in ESM mode ("import syntax"). The Sentry Node.js SDK is not compatible with ESM in Node.js versions before 18.19.0 or before 20.6.0. Please either build your application with CommonJS ("require() syntax"), or upgrade your Node.js version.`)})}function gqQ(A={}){let{debug:Q}=A;if(Q)e.enable(),hqQ();if(!a5())os();Ew0(A.integrations).forEach((B)=>{if(B(),Q)e.log(`[Sentry] Preloaded ${B.id} instrumentation`)})}function Ew0(A){let Q=wqQ();if(!A)return Q;return Q.filter((B)=>A.includes(B.id))}function Kw0(A,Q={}){let B=new vqQ.BasicTracerProvider({sampler:new ti(A),resource:new _qQ.Resource({[dK.ATTR_SERVICE_NAME]:"node",[dK.SEMRESATTRS_SERVICE_NAMESPACE]:"sentry",[dK.ATTR_SERVICE_VERSION]:l0}),forceFlushTimeoutMillis:500,spanProcessors:[new oi({timeout:Vw0(A.getOptions().maxSpanWaitDuration)}),...Q.spanProcessors||[]]});return V1.trace.setGlobalTracerProvider(B),V1.propagation.setGlobalPropagator(new ii),V1.context.setGlobalContextManager(new lT),B}function Vw0(A){if(A==null)return;if(A>as)return fQ&&e.warn(`\`maxSpanWaitDuration\` is too high, using the maximum value of ${as}`),as;else if(A<=0||Number.isNaN(A)){fQ&&e.warn("`maxSpanWaitDuration` must be a positive number, using default value instead.");return}return A}function hqQ(){let A=new Proxy(e,{get(Q,B,Y){return Reflect.get(Q,B==="verbose"?"debug":B,Y)}});V1.diag.disable(),V1.diag.setLogger(A,V1.DiagLogLevel.DEBUG)}function Iw0(){return a5()?[hP()]:[]}function ts(){return[gN(),yN(),hN(),xN(),fN(),RP(),PP(),xP(),fP(),_P(),gP(),kP(),dT(),RqQ(),...Iw0()]}function es(A){return[...ts(),...U9(A)?pT():[]]}function AS(A={}){return fqQ(A,es)}function xqQ(A={}){return fqQ(A,()=>[])}function fqQ(A={},Q){let B=Hw0(A,Q);if(B.debug===!0)if(fQ)e.enable();else f0(()=>{console.warn("[Sentry] Cannot initialize SDK with `debug` option using a non-debug bundle.")});if(!a5()&&B.registerEsmLoaderHooks!==!1)os();if(LP(),sQ().update(B.initialScope),B.spotlight&&!B.integrations.some(({name:C})=>C===ys))B.integrations.push(ST({sidecarUrl:typeof B.spotlight==="string"?B.spotlight:void 0}));let J=new Gq(B);if(sQ().setClient(J),J.init(),e.log(`Running in ${a5()?"CommonJS":"ESM"} mode.`),J.startClientReportTracking(),Lw0(),!B.skipOpenTelemetrySetup)eT(J,{spanProcessors:B.openTelemetrySpanProcessors}),Ar();return d$Q(J),t$Q(J),J}function Ar(){if(!fQ)return;let A=i$Q(),Q=["SentryContextManager","SentryPropagator"];if(U9())Q.push("SentrySpanProcessor");for(let B of Q)if(!A.includes(B))e.error(`You have to set up the ${B}. Without this, the OpenTelemetry & Sentry integration will not work properly.`);if(!A.includes("SentrySampler"))e.warn("You have to set up the SentrySampler. Without this, the OpenTelemetry & Sentry integration may still work, but sample rates set for the Sentry SDK will not be respected. If you use a custom sampler, make sure to use `wrapSamplingDecision`.")}function Hw0(A,Q){let B=Dw0(A.release),Y=A.spotlight??rT(process.env.SENTRY_SPOTLIGHT,{strict:!0})??process.env.SENTRY_SPOTLIGHT,J=Nw0(A.tracesSampleRate),C={...A,dsn:A.dsn??process.env.SENTRY_DSN,environment:A.environment??process.env.SENTRY_ENVIRONMENT,sendClientReports:A.sendClientReports??!0,transport:A.transport??sT,stackParser:tu(A.stackParser||tT),release:B,tracesSampleRate:J,spotlight:Y,debug:rT(A.debug??process.env.SENTRY_DEBUG)},X=A.integrations,G=A.defaultIntegrations??Q(C);return{...C,integrations:kd({defaultIntegrations:G,integrations:X})}}function Dw0(A){if(A!==void 0)return A;let Q=oT();if(Q!==void 0)return Q;return}function Nw0(A){if(A!==void 0)return A;let Q=process.env.SENTRY_TRACES_SAMPLE_RATE;if(!Q)return;let B=parseFloat(Q);return isFinite(B)?B:void 0}function Lw0(){if(rT(process.env.SENTRY_USE_ENVIRONMENT)!==!1){let A=process.env.SENTRY_TRACE,Q=process.env.SENTRY_BAGGAGE,B=xZ(A,Q);sQ().setPropagationContext(B)}}var qw0=[["january","1"],["february","2"],["march","3"],["april","4"],["may","5"],["june","6"],["july","7"],["august","8"],["september","9"],["october","10"],["november","11"],["december","12"],["jan","1"],["feb","2"],["mar","3"],["apr","4"],["may","5"],["jun","6"],["jul","7"],["aug","8"],["sep","9"],["oct","10"],["nov","11"],["dec","12"],["sunday","0"],["monday","1"],["tuesday","2"],["wednesday","3"],["thursday","4"],["friday","5"],["saturday","6"],["sun","0"],["mon","1"],["tue","2"],["wed","3"],["thu","4"],["fri","5"],["sat","6"]];function h$(A){return qw0.reduce((Q,[B,Y])=>Q.replace(new RegExp(B,"gi"),Y),A)}var bqQ="Automatic instrumentation of CronJob only supports crontab string";function mqQ(A,Q){let B=!1;return new Proxy(A,{construct(Y,J){let[C,X,G,W,F,...Z]=J;if(typeof C!=="string")throw Error(bqQ);if(B)throw Error(`A job named '${Q}' has already been scheduled`);B=!0;let U=h$(C);async function $(E,K){return GX(Q,async()=>{try{await X(E,K)}catch(I){throw jB(I),I}},{schedule:{type:"crontab",value:U},timezone:F||void 0})}return new Y(C,$,G,W,F,...Z)},get(Y,J){if(J==="from")return(C)=>{let{cronTime:X,onTick:G,timeZone:W}=C;if(typeof X!=="string")throw Error(bqQ);if(B)throw Error(`A job named '${Q}' has already been scheduled`);B=!0;let F=h$(X);return C.onTick=async(Z,U)=>{return GX(Q,async()=>{try{await G(Z,U)}catch($){throw jB($),$}},{schedule:{type:"crontab",value:F},timezone:W||void 0})},Y.from(C)};else return Y[J]}})}function uqQ(A){return new Proxy(A,{get(Q,B){if(B==="schedule"&&Q.schedule)return new Proxy(Q.schedule,{apply(Y,J,C){let[X,G,W]=C,F=W?.name,Z=W?.timezone;if(!F)throw Error('Missing "name" for scheduled job. A name is required for Sentry check-in monitoring.');let U=async()=>{return GX(F,async()=>{try{return await G()}catch($){throw jB($),$}},{schedule:{type:"crontab",value:h$(X)},timezone:Z})};return Y.apply(J,[X,U,W])}});else return Q[B]}})}function dqQ(A){return new Proxy(A,{get(Q,B){if(B==="scheduleJob")return new Proxy(Q.scheduleJob,{apply(Y,J,C){let[X,G,W]=C;if(typeof X!=="string"||typeof G!=="string"||typeof W!=="function")throw Error("Automatic instrumentation of 'node-schedule' requires the first parameter of 'scheduleJob' to be a job name string and the second parameter to be a crontab string");let F=X,Z=G;async function U(){return GX(F,async()=>{await W?.()},{schedule:{type:"crontab",value:h$(Z)}})}return Y.apply(J,[F,Z,U])}});return Q[B]}})}var cqQ={instrumentCron:mqQ,instrumentNodeCron:uqQ,instrumentNodeSchedule:dqQ};import qSQ from"fs";import sm0 from"http2";import It from"path";var EaY=r$(),kb0=$q(),KaY=JV(),VaY=YRQ(),_b0=t$(),IaY=Ka(),HaY=SRQ(),DaY=xRQ(),NaY=uRQ(),vb0=QB(),hk=lQ(),{InvalidArgumentError:gk}=vb0,SV=TwQ(),LaY=Eq(),qaY=ma(),{MockCallHistory:MaY,MockCallHistoryLog:zaY}=ca(),RaY=aa(),waY=ia(),jaY=yjQ(),OaY=ja(),PaY=uS(),{getGlobalDispatcher:yb0,setGlobalDispatcher:gb0}=Ak(),TaY=KV(),SaY=Co();Object.assign(kb0.prototype,SV);var no=_b0;var bb0={redirect:pjQ(),responseError:sjQ(),retry:ajQ(),dump:ejQ(),dns:YOQ(),cache:zOQ(),decompress:SOQ()},JSQ={MemoryCacheStore:Go()};var hb0=_OQ();JSQ.SqliteCacheStore=hb0;var mb0={parseHeaders:hk.parseHeaders,headerNameToString:hk.headerNameToString};function FM(A){return(Q,B,Y)=>{if(typeof B==="function")Y=B,B=null;if(!Q||typeof Q!=="string"&&typeof Q!=="object"&&!(Q instanceof URL))throw new gk("invalid url");if(B!=null&&typeof B!=="object")throw new gk("invalid opts");if(B&&B.path!=null){if(typeof B.path!=="string")throw new gk("invalid opts.path");let X=B.path;if(!B.path.startsWith("/"))X=`/${X}`;Q=new URL(hk.parseOrigin(Q).origin+X)}else{if(!B)B=typeof Q==="object"?Q:{};Q=hk.parseURL(Q)}let{agent:J,dispatcher:C=yb0()}=B;if(J)throw new gk("unsupported opts.agent. Did you mean opts.client?");return A.call(C,{...B,origin:Q.origin,path:Q.search?`${Q.pathname}${Q.search}`:Q.pathname,method:B.method||(B.body?"PUT":"GET")},Y)}}var so=gb0;var kaY=QM().fetch;var ub0=J4().Headers,db0=eq().Response,cb0=NV().Request,lb0=HS().FormData;var{setGlobalOrigin:_aY,getGlobalOrigin:vaY}=Sr();var{CacheStorage:xb0}=mPQ(),{kConstruct:fb0}=B0();var pb0=new xb0(fb0);var{deleteCookie:yaY,getCookies:gaY,getSetCookies:haY,setCookie:xaY,parseCookie:faY}=ePQ();var{parseMIMEType:baY,serializeAMimeType:maY}=l8();var{CloseEvent:uaY,ErrorEvent:daY,MessageEvent:caY}=Rk(),{WebSocket:laY,ping:paY}=yTQ();var ib0=dTQ().WebSocketStream,nb0=uo().WebSocketError,sb0=FM(SV.request),rb0=FM(SV.stream),ab0=FM(SV.pipeline),ob0=FM(SV.connect),tb0=FM(SV.upgrade);var{EventSource:iaY}=YSQ();import lk from"fs";import KSQ from"path";var eb0=2,Am0=3;class ZM{_accumulatorMs=0;_targetTicksPerSecond;_fixedTimestepMs;_fixedTimestepS;_maxAccumulatorMs;_nextTickMs=0;_lastLoopTimeMs=0;_tickFunction;_tickErrorCallback;_tickHandle=null;constructor(A,Q,B){this._targetTicksPerSecond=A,this._fixedTimestepS=Math.fround(1/A),this._fixedTimestepMs=Math.fround(this._fixedTimestepS*1000),this._maxAccumulatorMs=this._fixedTimestepMs*Am0,this._tickFunction=Q,this._tickErrorCallback=B}get targetTicksPerSecond(){return this._targetTicksPerSecond}get fixedTimestepMs(){return this._fixedTimestepMs}get fixedTimestepS(){return this._fixedTimestepS}get isStarted(){return!!this._tickHandle}get nextTickMs(){return this._nextTickMs}start(){if(this._tickHandle)return;this._lastLoopTimeMs=performance.now();let A=()=>{let Q=performance.now(),B=Q-this._lastLoopTimeMs;if(this._lastLoopTimeMs=Q,this._accumulatorMs+=B,this._accumulatorMs>this._maxAccumulatorMs)this._accumulatorMs=this._maxAccumulatorMs;if(this._accumulatorMs>=this._fixedTimestepMs)AY.startSpan({operation:"ticker_tick"},()=>{let Y=0;while(this._accumulatorMs>=this._fixedTimestepMs&&Y{J.STEP_START="SIMULATION.STEP_START";J.STEP_END="SIMULATION.STEP_END";J.DEBUG_RAYCAST="SIMULATION.DEBUG_RAYCAST";J.DEBUG_RENDER="SIMULATION.DEBUG_RENDER"})(ro||={});class UM extends BQ{_colliderMap=new BN;_debugRaycastingEnabled=!1;_debugRenderingEnabled=!1;_debugRenderingFilterFlags;_rapierEventQueue;_rapierSimulation;_world;constructor(A,Q=$M,B=Qm0){super();this._rapierEventQueue=new WB.EventQueue(!0),this._rapierSimulation=new WB.World(B),this._rapierSimulation.timestep=Math.fround(1/Q),this._world=A}get colliderMap(){return this._colliderMap}get isDebugRaycastingEnabled(){return this._debugRaycastingEnabled}get isDebugRenderingEnabled(){return this._debugRenderingEnabled}get gravity(){return this._rapierSimulation.gravity}get timestepS(){return this._rapierSimulation.timestep}get world(){return this._world}createRawCollider(A,Q){return this._rapierSimulation.createCollider(A,Q)}createRawRigidBody(A){return this._rapierSimulation.createRigidBody(A)}enableDebugRaycasting(A){this._debugRaycastingEnabled=A}enableDebugRendering(A,Q=WB.QueryFilterFlags.EXCLUDE_FIXED){this._debugRenderingEnabled=A,this._debugRenderingFilterFlags=Q}getContactManifolds(A,Q){let B=[];return this._rapierSimulation.narrowPhase.contactPair(A,Q,(Y,J)=>{if(Y.numContacts()===0)return;let C=Y.normal(),X=[];for(let G=0;G{let G=this._colliderMap.getColliderHandleBlockType(X.handle);if(G&&!J.has(G))return J.add(G),C.push({intersectedBlockType:G}),!0;let W=this._colliderMap.getColliderHandleEntity(X.handle);if(W&&!J.has(W))return J.add(W),C.push({intersectedEntity:W}),!0;return!0},Y.filterFlags,Y.filterGroups,Y.filterExcludeCollider,Y.filterExcludeRigidBody,Y.filterPredicate),C}raycast(A,Q,B,Y={}){let J=new WB.Ray(A,Q),C=this._rapierSimulation.castRay(J,B,Y.solidMode??!0,Y.filterFlags,Y.filterGroups,Y.filterExcludeCollider,Y.filterExcludeRigidBody,Y.filterPredicate);if(this._debugRaycastingEnabled)this.emitWithWorld(this._world,"SIMULATION.DEBUG_RAYCAST",{simulation:this,origin:A,direction:Q,length:B,hit:!!C});if(!C)return null;let X=J.pointAt(C.timeOfImpact),G=C.timeOfImpact,W=C.collider,F=this._colliderMap.getColliderHandleBlockType(W.handle);if(F)return{hitBlock:WE.fromGlobalCoordinate({x:Math.floor(X.x-(J.dir.x<0?0.0001:-0.0001)),y:Math.floor(X.y-(J.dir.y<0?0.0001:-0.0001)),z:Math.floor(X.z-(J.dir.z<0?0.0001:-0.0001))},F),hitPoint:X,hitDistance:G,origin:A,originDirection:Q};let Z=this._colliderMap.getColliderHandleEntity(W.handle);if(Z)return{hitEntity:Z,hitPoint:X,hitDistance:G,origin:A,originDirection:Q};return null}removeRawCollider(A){this._colliderMap.queueColliderHandleForCleanup(A.handle),this._rapierSimulation.removeCollider(A,!1)}removeRawRigidBody(A){this._rapierSimulation.removeRigidBody(A)}setGravity(A){this._rapierSimulation.gravity=A}step=(A)=>{this.emitWithWorld(this._world,"SIMULATION.STEP_START",{simulation:this,tickDeltaMs:A});let Q=performance.now();if(AY.startSpan({operation:"physics_step"},()=>{this._rapierSimulation.step(this._rapierEventQueue)}),AY.startSpan({operation:"physics_cleanup"},()=>{this._rapierEventQueue.drainContactForceEvents(this._onContactForceEvent),this._rapierEventQueue.drainCollisionEvents(this._onCollisionEvent),this._colliderMap.cleanup()}),this.emitWithWorld(this._world,"SIMULATION.STEP_END",{simulation:this,stepDurationMs:performance.now()-Q}),this._debugRenderingEnabled)this.emitWithWorld(this._world,"SIMULATION.DEBUG_RENDER",{simulation:this,...this._rapierSimulation.debugRender(this._debugRenderingFilterFlags)})};_onCollisionEvent=(A,Q,B)=>{let[Y,J]=this._getCollisionObjects(A,Q);if(!Y||!J)return;let C=(X,G)=>{if(X instanceof O8&&G instanceof X0&&X.hasListeners("BLOCK_TYPE.ENTITY_COLLISION"))X.emit("BLOCK_TYPE.ENTITY_COLLISION",{blockType:X,entity:G,started:B,colliderHandleA:A,colliderHandleB:Q});else if(X instanceof X0&&G instanceof O8&&X.hasListeners("ENTITY.BLOCK_COLLISION"))X.emit("ENTITY.BLOCK_COLLISION",{entity:X,blockType:G,started:B,colliderHandleA:A,colliderHandleB:Q});else if(X instanceof X0&&G instanceof X0&&X.hasListeners("ENTITY.ENTITY_COLLISION"))X.emit("ENTITY.ENTITY_COLLISION",{entity:X,otherEntity:G,started:B,colliderHandleA:A,colliderHandleB:Q});else if(typeof X==="function"&&(G instanceof X0||G instanceof O8))X(G,B,A,Q)};C(Y,J),C(J,Y)};_onContactForceEvent=(A)=>{let[Q,B]=this._getCollisionObjects(A.collider1(),A.collider2());if(!Q||typeof Q==="function"||!B||typeof B==="function")return;let Y={totalForce:A.totalForce(),totalForceMagnitude:A.totalForceMagnitude(),maxForceDirection:A.maxForceDirection(),maxForceMagnitude:A.maxForceMagnitude()},J=(C,X)=>{if(C instanceof O8&&X instanceof X0&&C.hasListeners("BLOCK_TYPE.ENTITY_CONTACT_FORCE"))C.emit("BLOCK_TYPE.ENTITY_CONTACT_FORCE",{blockType:C,entity:X,contactForceData:Y});else if(C instanceof X0&&X instanceof O8&&C.hasListeners("ENTITY.BLOCK_CONTACT_FORCE"))C.emit("ENTITY.BLOCK_CONTACT_FORCE",{entity:C,blockType:X,contactForceData:Y});else if(C instanceof X0&&X instanceof X0&&C.hasListeners("ENTITY.ENTITY_CONTACT_FORCE"))C.emit("ENTITY.ENTITY_CONTACT_FORCE",{entity:C,otherEntity:X,contactForceData:Y})};J(Q,B),J(B,Q)};_getCollisionObjects(A,Q){let B=this._colliderMap.getColliderHandleBlockType(A)??this._colliderMap.getColliderHandleCollisionCallback(A)??this._colliderMap.getColliderHandleEntity(A),Y=this._colliderMap.getColliderHandleBlockType(Q)??this._colliderMap.getColliderHandleCollisionCallback(Q)??this._colliderMap.getColliderHandleEntity(Q);return[B,Y]}}var ao;((C)=>{C.START="WORLD_LOOP.START";C.STOP="WORLD_LOOP.STOP";C.TICK_START="WORLD_LOOP.TICK_START";C.TICK_END="WORLD_LOOP.TICK_END";C.TICK_ERROR="WORLD_LOOP.TICK_ERROR"})(ao||={});class EM extends BQ{_currentTick=0;_ticker;_world;constructor(A,Q=$M){super();this._ticker=new ZM(Q,this._tick,this._onTickError),this._world=A}get currentTick(){return this._currentTick}get isStarted(){return this._ticker.isStarted}get nextTickMs(){return this._ticker.nextTickMs}get timestepS(){return this._ticker.fixedTimestepS}get world(){return this._world}start(){this._ticker.start(),this.emitWithWorld(this._world,"WORLD_LOOP.START",{worldLoop:this})}stop(){this._ticker.stop(),this.emitWithWorld(this._world,"WORLD_LOOP.STOP",{worldLoop:this})}_tick=(A)=>{this.emitWithWorld(this._world,"WORLD_LOOP.TICK_START",{worldLoop:this,tickDeltaMs:A});let Q=performance.now(),B=O0.instance,Y=B.isEnabled;if(Y)B.beginTick(this._currentTick,this._world.entityManager.entityCount,dJ.instance.playerCount,this._world.id);if(AY.startSpan({operation:"world_tick",attributes:{serverPlayerCount:dJ.instance.playerCount,targetTickRate:this._ticker.targetTicksPerSecond,targetTickRateMs:this._ticker.fixedTimestepMs,worldId:this._world.id,worldName:this._world.name,worldChunkCount:this._world.chunkLattice.chunkCount,worldEntityCount:this._world.entityManager.entityCount,worldLoopTick:this._currentTick}},()=>{let J;if(J=Y?performance.now():0,AY.startSpan({operation:"entities_tick"},()=>this._world.entityManager.tickEntities(A)),Y)B.recordPhase("entities_tick",performance.now()-J,this._world.id);if(J=Y?performance.now():0,AY.startSpan({operation:"simulation_step"},()=>this._world.simulation.step(A)),Y)B.recordPhase("simulation_step",performance.now()-J,this._world.id);if(J=Y?performance.now():0,AY.startSpan({operation:"entities_emit_updates"},()=>this._world.entityManager.checkAndEmitUpdates()),Y)B.recordPhase("entities_emit_updates",performance.now()-J,this._world.id);if(this._world.networkSynchronizer.shouldSynchronize()){if(J=Y?performance.now():0,AY.startSpan({operation:"network_synchronize"},()=>this._world.networkSynchronizer.synchronize()),Y)B.recordPhase("network_synchronize",performance.now()-J,this._world.id)}}),Y)B.endTick(this._world.id);this._currentTick++,this.emitWithWorld(this._world,"WORLD_LOOP.TICK_END",{worldLoop:this,tickDurationMs:performance.now()-Q})};_onTickError=(A)=>{l.error(`WorldLoop._onTickError(): Error: ${A}`),this.emitWithWorld(this._world,"WORLD_LOOP.TICK_ERROR",{worldLoop:this,error:A})}}class xk{_world=null;_options=null;_tickFn=null;_toggleParity=!1;get isRunning(){return!!this._tickFn}start(A,Q){this.stop();let B=Math.max(0,Math.floor(Q.blocksPerTick)),Y=Math.max(0,Math.floor(Q.blockTypeId)),J=Q.min??{x:-32,y:0,z:-32},C=Q.max??{x:32,y:16,z:32},X=Bm0(J,C),G=Q.mode??"toggle";this._world=A,this._options={blocksPerTick:B,blockTypeId:Y,mode:G,min:X.min,max:X.max},this._toggleParity=!1,this._tickFn=()=>{this._tick()},A.loop.on("WORLD_LOOP.TICK_START",this._tickFn)}stop(){if(this._world&&this._tickFn)this._world.loop.off("WORLD_LOOP.TICK_START",this._tickFn);this._world=null,this._options=null,this._tickFn=null,this._toggleParity=!1}_tick(){if(!this._world||!this._options)return;let{blocksPerTick:A,blockTypeId:Q,min:B,max:Y,mode:J}=this._options;if(!B||!Y)return;let C=Y.x-B.x+1,X=Y.y-B.y+1,G=Y.z-B.z+1;if(C<=0||X<=0||G<=0)return;let W=this._toggleParity;this._toggleParity=!this._toggleParity;for(let F=0;F{A.call(Q,B,Y,this)})}keys(){return this._map.keys()}values(){return this._map.values()}entries(){return this._map.entries()}[Symbol.iterator](){return this._map[Symbol.iterator]()}_syncArray(){this._values.length=0;for(let A of this._map.values())this._values.push(A);this._isDirty=!1}}var to;((p)=>{p.BURST="PARTICLE_EMITTER.BURST";p.DESPAWN="PARTICLE_EMITTER.DESPAWN";p.SET_ALPHA_TEST="PARTICLE_EMITTER.SET_ALPHA_TEST";p.SET_ATTACHED_TO_ENTITY="PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY";p.SET_ATTACHED_TO_ENTITY_NODE_NAME="PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY_NODE_NAME";p.SET_COLOR_END="PARTICLE_EMITTER.SET_COLOR_END";p.SET_COLOR_END_VARIANCE="PARTICLE_EMITTER.SET_COLOR_END_VARIANCE";p.SET_COLOR_INTENSITY_END="PARTICLE_EMITTER.SET_COLOR_INTENSITY_END";p.SET_COLOR_INTENSITY_END_VARIANCE="PARTICLE_EMITTER.SET_COLOR_INTENSITY_END_VARIANCE";p.SET_COLOR_INTENSITY_START="PARTICLE_EMITTER.SET_COLOR_INTENSITY_START";p.SET_COLOR_INTENSITY_START_VARIANCE="PARTICLE_EMITTER.SET_COLOR_INTENSITY_START_VARIANCE";p.SET_COLOR_START="PARTICLE_EMITTER.SET_COLOR_START";p.SET_COLOR_START_VARIANCE="PARTICLE_EMITTER.SET_COLOR_START_VARIANCE";p.SET_GRAVITY="PARTICLE_EMITTER.SET_GRAVITY";p.SET_LIFETIME="PARTICLE_EMITTER.SET_LIFETIME";p.SET_LIFETIME_VARIANCE="PARTICLE_EMITTER.SET_LIFETIME_VARIANCE";p.SET_MAX_PARTICLES="PARTICLE_EMITTER.SET_MAX_PARTICLES";p.SET_OFFSET="PARTICLE_EMITTER.SET_OFFSET";p.SET_ORIENTATION="PARTICLE_EMITTER.SET_ORIENTATION";p.SET_ORIENTATION_FIXED_ROTATION="PARTICLE_EMITTER.SET_ORIENTATION_FIXED_ROTATION";p.SET_OPACITY_END="PARTICLE_EMITTER.SET_OPACITY_END";p.SET_OPACITY_END_VARIANCE="PARTICLE_EMITTER.SET_OPACITY_END_VARIANCE";p.SET_OPACITY_START="PARTICLE_EMITTER.SET_OPACITY_START";p.SET_OPACITY_START_VARIANCE="PARTICLE_EMITTER.SET_OPACITY_START_VARIANCE";p.SET_PAUSED="PARTICLE_EMITTER.SET_PAUSED";p.SET_POSITION="PARTICLE_EMITTER.SET_POSITION";p.SET_POSITION_VARIANCE="PARTICLE_EMITTER.SET_POSITION_VARIANCE";p.SET_RATE="PARTICLE_EMITTER.SET_RATE";p.SET_RATE_VARIANCE="PARTICLE_EMITTER.SET_RATE_VARIANCE";p.SET_SIZE_END="PARTICLE_EMITTER.SET_SIZE_END";p.SET_SIZE_END_VARIANCE="PARTICLE_EMITTER.SET_SIZE_END_VARIANCE";p.SET_SIZE_START="PARTICLE_EMITTER.SET_SIZE_START";p.SET_SIZE_START_VARIANCE="PARTICLE_EMITTER.SET_SIZE_START_VARIANCE";p.SET_TEXTURE_URI="PARTICLE_EMITTER.SET_TEXTURE_URI";p.SET_TRANSPARENT="PARTICLE_EMITTER.SET_TRANSPARENT";p.SET_VELOCITY="PARTICLE_EMITTER.SET_VELOCITY";p.SET_VELOCITY_VARIANCE="PARTICLE_EMITTER.SET_VELOCITY_VARIANCE";p.SPAWN="PARTICLE_EMITTER.SPAWN"})(to||={});class eo extends BQ{_id;_alphaTest;_attachedToEntity;_attachedToEntityNodeName;_colorEnd;_colorEndVariance;_colorIntensityEnd;_colorIntensityEndVariance;_colorIntensityStart;_colorIntensityStartVariance;_colorStart;_colorStartVariance;_gravity;_lifetime;_lifetimeVariance;_lockToEmitter;_maxParticles;_offset;_orientation;_orientationFixedRotation;_opacityEnd;_opacityEndVariance;_opacityStart;_opacityStartVariance;_paused;_position;_positionVariance;_rate;_rateVariance;_sizeEnd;_sizeEndVariance;_sizeStart;_sizeStartVariance;_sizeVariance;_textureUri;_transparent;_velocity;_velocityVariance;_world;constructor(A){if(!!A.attachedToEntity===!!A.position)l.fatalError("Either attachedToEntity or position must be set, but not both.");if(!A.textureUri)l.fatalError("ParticleEmitter.constructor(): textureUri must be provided.");super();this._alphaTest=A.alphaTest??0.05,this._attachedToEntity=A.attachedToEntity,this._attachedToEntityNodeName=A.attachedToEntityNodeName,this._colorEnd=A.colorEnd,this._colorEndVariance=A.colorEndVariance,this._colorIntensityEnd=A.colorIntensityEnd,this._colorIntensityEndVariance=A.colorIntensityEndVariance,this._colorIntensityStart=A.colorIntensityStart,this._colorIntensityStartVariance=A.colorIntensityStartVariance,this._colorStart=A.colorStart,this._colorStartVariance=A.colorStartVariance,this._gravity=A.gravity,this._lifetime=A.lifetime,this._lifetimeVariance=A.lifetimeVariance,this._lockToEmitter=A.lockToEmitter??!1,this._maxParticles=A.maxParticles,this._offset=A.offset,this._orientation=A.orientation,this._orientationFixedRotation=A.orientationFixedRotation,this._opacityEnd=A.opacityEnd,this._opacityEndVariance=A.opacityEndVariance,this._opacityStart=A.opacityStart,this._opacityStartVariance=A.opacityStartVariance,this._paused=!1,this._position=A.position,this._positionVariance=A.positionVariance,this._rate=A.rate,this._rateVariance=A.rateVariance,this._sizeEnd=A.sizeEnd,this._sizeEndVariance=A.sizeEndVariance,this._sizeStart=A.sizeStart,this._sizeStartVariance=A.sizeStartVariance,this._textureUri=A.textureUri,this._transparent=A.transparent,this._velocity=A.velocity,this._velocityVariance=A.velocityVariance}get id(){return this._id}get alphaTest(){return this._alphaTest}get attachedToEntity(){return this._attachedToEntity}get attachedToEntityNodeName(){return this._attachedToEntityNodeName}get colorEnd(){return this._colorEnd}get colorEndVariance(){return this._colorEndVariance}get colorIntensityEnd(){return this._colorIntensityEnd}get colorIntensityEndVariance(){return this._colorIntensityEndVariance}get colorIntensityStart(){return this._colorIntensityStart}get colorIntensityStartVariance(){return this._colorIntensityStartVariance}get colorStart(){return this._colorStart}get colorStartVariance(){return this._colorStartVariance}get gravity(){return this._gravity}get isSpawned(){return this._id!==void 0}get lifetime(){return this._lifetime}get lifetimeVariance(){return this._lifetimeVariance}get lockToEmitter(){return this._lockToEmitter}get maxParticles(){return this._maxParticles}get offset(){return this._offset}get orientation(){return this._orientation}get orientationFixedRotation(){return this._orientationFixedRotation}get opacityEnd(){return this._opacityEnd}get opacityEndVariance(){return this._opacityEndVariance}get opacityStart(){return this._opacityStart}get opacityStartVariance(){return this._opacityStartVariance}get paused(){return this._paused}get position(){return this._position}get positionVariance(){return this._positionVariance}get rate(){return this._rate}get rateVariance(){return this._rateVariance}get sizeEnd(){return this._sizeEnd}get sizeEndVariance(){return this._sizeEndVariance}get sizeStart(){return this._sizeStart}get sizeStartVariance(){return this._sizeStartVariance}get sizeVariance(){return this._sizeVariance}get textureUri(){return this._textureUri}get transparent(){return this._transparent}get velocity(){return this._velocity}get velocityVariance(){return this._velocityVariance}get world(){return this._world}setAlphaTest(A){if(this._alphaTest===A)return;if(this._alphaTest=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_ALPHA_TEST",{particleEmitter:this,alphaTest:A})}setAttachedToEntity(A){if(!A.isSpawned)return l.error(`ParticleEmitter.setAttachedToEntity(): Entity ${A.id} is not spawned!`);if(this._attachedToEntity===A)return;if(this._attachedToEntity=A,this._position=void 0,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY",{particleEmitter:this,entity:A})}setAttachedToEntityNodeName(A){if(this._attachedToEntityNodeName===A)return;if(this._attachedToEntityNodeName=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY_NODE_NAME",{particleEmitter:this,attachedToEntityNodeName:A})}setColorEnd(A){if(this._colorEnd&&this._colorEnd.r===A.r&&this._colorEnd.g===A.g&&this._colorEnd.b===A.b)return;if(this._colorEnd=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_END",{particleEmitter:this,colorEnd:A})}setColorEndVariance(A){if(this._colorEndVariance&&this._colorEndVariance.r===A.r&&this._colorEndVariance.g===A.g&&this._colorEndVariance.b===A.b)return;if(this._colorEndVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_END_VARIANCE",{particleEmitter:this,colorEndVariance:A})}setColorIntensityEnd(A){if(this._colorIntensityEnd===A)return;if(this._colorIntensityEnd=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_INTENSITY_END",{particleEmitter:this,colorIntensityEnd:A})}setColorIntensityEndVariance(A){if(this._colorIntensityEndVariance===A)return;if(this._colorIntensityEndVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_INTENSITY_END_VARIANCE",{particleEmitter:this,colorIntensityEndVariance:A})}setColorIntensityStart(A){if(this._colorIntensityStart===A)return;if(this._colorIntensityStart=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_INTENSITY_START",{particleEmitter:this,colorIntensityStart:A})}setColorIntensityStartVariance(A){if(this._colorIntensityStartVariance===A)return;if(this._colorIntensityStartVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_INTENSITY_START_VARIANCE",{particleEmitter:this,colorIntensityStartVariance:A})}setColorStart(A){if(this._colorStart&&this._colorStart.r===A.r&&this._colorStart.g===A.g&&this._colorStart.b===A.b)return;if(this._colorStart=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_START",{particleEmitter:this,colorStart:A})}setColorStartVariance(A){if(this._colorStartVariance&&this._colorStartVariance.r===A.r&&this._colorStartVariance.g===A.g&&this._colorStartVariance.b===A.b)return;if(this._colorStartVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_START_VARIANCE",{particleEmitter:this,colorStartVariance:A})}setGravity(A){if(this._gravity&&this._gravity.x===A.x&&this._gravity.y===A.y&&this._gravity.z===A.z)return;if(this._gravity=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_GRAVITY",{particleEmitter:this,gravity:A})}setLifetime(A){if(this._lifetime===A)return;if(this._lifetime=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_LIFETIME",{particleEmitter:this,lifetime:A})}setLifetimeVariance(A){if(this._lifetimeVariance===A)return;if(this._lifetimeVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_LIFETIME_VARIANCE",{particleEmitter:this,lifetimeVariance:A})}setMaxParticles(A){if(this._maxParticles===A)return;if(this._maxParticles=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_MAX_PARTICLES",{particleEmitter:this,maxParticles:A})}setOffset(A){if(this._offset&&this._offset.x===A.x&&this._offset.y===A.y&&this._offset.z===A.z)return;if(this._offset=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_OFFSET",{particleEmitter:this,offset:A})}setOrientation(A){if(this._orientation===A)return;if(this._orientation=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_ORIENTATION",{particleEmitter:this,orientation:A})}setOrientationFixedRotation(A){if(this._orientationFixedRotation&&this._orientationFixedRotation.x===A.x&&this._orientationFixedRotation.y===A.y&&this._orientationFixedRotation.z===A.z)return;if(this._orientationFixedRotation=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_ORIENTATION_FIXED_ROTATION",{particleEmitter:this,orientationFixedRotation:A})}setOpacityEnd(A){if(this._opacityEnd===A)return;if(this._opacityEnd=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_OPACITY_END",{particleEmitter:this,opacityEnd:A})}setOpacityEndVariance(A){if(this._opacityEndVariance===A)return;if(this._opacityEndVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_OPACITY_END_VARIANCE",{particleEmitter:this,opacityEndVariance:A})}setOpacityStart(A){if(this._opacityStart===A)return;if(this._opacityStart=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_OPACITY_START",{particleEmitter:this,opacityStart:A})}setOpacityStartVariance(A){if(this._opacityStartVariance===A)return;if(this._opacityStartVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_OPACITY_START_VARIANCE",{particleEmitter:this,opacityStartVariance:A})}setPosition(A){if(this._position&&this._position.x===A.x&&this._position.y===A.y&&this._position.z===A.z)return;if(this._position=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_POSITION",{particleEmitter:this,position:A})}setPositionVariance(A){if(this._positionVariance&&this._positionVariance.x===A.x&&this._positionVariance.y===A.y&&this._positionVariance.z===A.z)return;if(this._positionVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_POSITION_VARIANCE",{particleEmitter:this,positionVariance:A})}setRate(A){if(this._rate===A)return;if(this._rate=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_RATE",{particleEmitter:this,rate:A})}setRateVariance(A){if(this._rateVariance===A)return;if(this._rateVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_RATE_VARIANCE",{particleEmitter:this,rateVariance:A})}setSizeEnd(A){if(this._sizeEnd===A)return;if(this._sizeEnd=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_SIZE_END",{particleEmitter:this,sizeEnd:A})}setSizeEndVariance(A){if(this._sizeEndVariance===A)return;if(this._sizeEndVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_SIZE_END_VARIANCE",{particleEmitter:this,sizeEndVariance:A})}setSizeStart(A){if(this._sizeStart===A)return;if(this._sizeStart=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_SIZE_START",{particleEmitter:this,sizeStart:A})}setSizeStartVariance(A){if(this._sizeStartVariance===A)return;if(this._sizeStartVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_SIZE_START_VARIANCE",{particleEmitter:this,sizeStartVariance:A})}setTextureUri(A){if(this._textureUri===A)return;if(this._textureUri=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_TEXTURE_URI",{particleEmitter:this,textureUri:A})}setTransparent(A){if(this._transparent===A)return;if(this._transparent=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_TRANSPARENT",{particleEmitter:this,transparent:A})}setVelocity(A){if(this._velocity&&this._velocity.x===A.x&&this._velocity.y===A.y&&this._velocity.z===A.z)return;if(this._velocity=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_VELOCITY",{particleEmitter:this,velocity:A})}setVelocityVariance(A){if(this._velocityVariance&&this._velocityVariance.x===A.x&&this._velocityVariance.y===A.y&&this._velocityVariance.z===A.z)return;if(this._velocityVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_VELOCITY_VARIANCE",{particleEmitter:this,velocityVariance:A})}burst(A){if(this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.BURST",{particleEmitter:this,count:A})}despawn(){if(!this.isSpawned||!this._world)return;this._world.particleEmitterManager.unregisterParticleEmitter(this),this.emitWithWorld(this._world,"PARTICLE_EMITTER.DESPAWN",{particleEmitter:this}),this._id=void 0,this._world=void 0}restart(){if(!this._paused)return;if(this._paused=!1,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_PAUSED",{particleEmitter:this,paused:this._paused})}stop(){if(this._paused)return;if(this._paused=!0,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_PAUSED",{particleEmitter:this,paused:this._paused})}spawn(A){if(this.isSpawned)return;if(this._attachedToEntity&&!this._attachedToEntity.isSpawned)return l.error(`ParticleEmitter.spawn(): Attached entity ${this._attachedToEntity.id} must be spawned before spawning ParticleEmitter!`);this._id=A.particleEmitterManager.registerParticleEmitter(this),this._world=A,this.emitWithWorld(A,"PARTICLE_EMITTER.SPAWN",{particleEmitter:this})}serialize(){return GQ.serializeParticleEmitter(this)}}var Ym0=30,Jm0=Math.round($M/Ym0);class fk{_outboundPerPlayerReliablePackets=new bB;_outboundSharedReliablePackets=[];_outboundSharedUnreliablePackets=[];_queuedAudioSyncs={broadcast:new bB,perPlayer:new bB};_queuedBlockSyncs={broadcast:new bB,perPlayer:new bB};_queuedBlockTypeSyncs={broadcast:new bB,perPlayer:new bB};_queuedChunkSyncs={broadcast:new bB,perPlayer:new bB};_queuedEntitySyncs={broadcast:new bB,perPlayer:new bB};_queuedParticleEmitterSyncs={broadcast:new bB,perPlayer:new bB};_queuedPlayerSyncs={broadcast:new bB,perPlayer:new bB};_queuedSceneUISyncs={broadcast:new bB,perPlayer:new bB};_queuedCameraSyncs={broadcast:void 0,perPlayer:new bB};_queuedChatMessagesSyncs={broadcast:void 0,perPlayer:new bB};_queuedDebugRaycastsSyncs={broadcast:void 0,perPlayer:new bB};_queuedDebugRenderSyncs={broadcast:void 0,perPlayer:new bB};_queuedNotificationPermissionRequestSyncs={broadcast:void 0,perPlayer:new bB};_queuedUISyncs={broadcast:void 0,perPlayer:new bB};_queuedUIDatasSyncs={broadcast:void 0,perPlayer:new bB};_queuedWorldSyncs={broadcast:void 0,perPlayer:new bB};_loadedSceneUIs=new Set;_spawnedChunks=new Set;_spawnedEntities=new Set;_playersInWorld=new Set;_world;constructor(A){this._world=A,this._subscribeToAudioEvents(),this._subscribeToBlockTypeRegistryEvents(),this._subscribeToChatEvents(),this._subscribeToChunkLatticeEvents(),this._subscribeToEntityEvents(),this._subscribeToEntityModelAnimationEvents(),this._subscribeToEntityModelNodeOverrideEvents(),this._subscribeToParticleEmitterEvents(),this._subscribeToPlayerEvents(),this._subscribeToPlayerCameraEvents(),this._subscribeToPlayerUIEvents(),this._subscribeToSceneUIEvents(),this._subscribeToSimulationEvents(),this._subscribeToWorldEvents()}shouldSynchronize(){return this._world.loop.currentTick%Jm0===0}synchronize(){let A=this._world.loop.currentTick;if(this._queuedEntitySyncs.broadcast.size>0){let Q=[],B=[];for(let Y of this._queuedEntitySyncs.broadcast.valuesArray){let J=!1;for(let C in Y)if(J=C!=="i"&&C!=="p"&&C!=="r",J)break;(J?Q:B).push(Y)}if(B.length>0){let Y=gQ.createPacket(gQ.outboundPackets.entitiesPacketDefinition,B,A);this._outboundSharedUnreliablePackets.push(Y)}if(Q.length>0){let Y=gQ.createPacket(gQ.outboundPackets.entitiesPacketDefinition,Q,A);this._outboundSharedReliablePackets.push(Y);for(let J of this._outboundPerPlayerReliablePackets.valuesArray)J.push(Y)}}if(this._queuedEntitySyncs.perPlayer.size>0)for(let[Q,B]of this._queuedEntitySyncs.perPlayer.entries())this._outboundPerPlayerReliablePackets.get(Q)?.push(gQ.createPacket(gQ.outboundPackets.entitiesPacketDefinition,B.valuesArray,A));this._collectSingletonSyncToOutboundPackets(this._queuedCameraSyncs,gQ.outboundPackets.cameraPacketDefinition),this._collectSyncToOutboundPackets(this._queuedAudioSyncs,gQ.outboundPackets.audiosPacketDefinition),this._collectSyncToOutboundPackets(this._queuedBlockTypeSyncs,gQ.outboundPackets.blockTypesPacketDefinition),this._collectSyncToOutboundPackets(this._queuedChunkSyncs,gQ.outboundPackets.chunksPacketDefinition),this._collectSyncToOutboundPackets(this._queuedBlockSyncs,gQ.outboundPackets.blocksPacketDefinition),this._collectSyncToOutboundPackets(this._queuedParticleEmitterSyncs,gQ.outboundPackets.particleEmittersPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedUISyncs,gQ.outboundPackets.uiPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedUIDatasSyncs,gQ.outboundPackets.uiDatasPacketDefinition),this._collectSyncToOutboundPackets(this._queuedSceneUISyncs,gQ.outboundPackets.sceneUIsPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedWorldSyncs,gQ.outboundPackets.worldPacketDefinition),this._collectSyncToOutboundPackets(this._queuedPlayerSyncs,gQ.outboundPackets.playersPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedChatMessagesSyncs,gQ.outboundPackets.chatMessagesPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedNotificationPermissionRequestSyncs,gQ.outboundPackets.notificationPermissionRequestPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedDebugRenderSyncs,gQ.outboundPackets.physicsDebugRenderPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedDebugRaycastsSyncs,gQ.outboundPackets.physicsDebugRaycastsPacketDefinition),AY.startSpan({operation:"send_all_packets"},()=>{for(let Q of dJ.instance.getConnectedPlayersByWorld(this._world)){let B=this._outboundPerPlayerReliablePackets.get(Q)??this._outboundSharedReliablePackets;if(B.length>0)Q.connection.send(B);if(this._outboundSharedUnreliablePackets.length>0)Q.connection.send(this._outboundSharedUnreliablePackets,!1)}}),AY.startSpan({operation:"network_synchronize_cleanup"},()=>{if(this._outboundPerPlayerReliablePackets.size>0)this._outboundPerPlayerReliablePackets.clear();if(this._outboundSharedReliablePackets.length>0)this._outboundSharedReliablePackets.length=0;if(this._outboundSharedUnreliablePackets.length>0)this._outboundSharedUnreliablePackets.length=0;if(this._loadedSceneUIs.size>0)this._loadedSceneUIs.clear();if(this._spawnedChunks.size>0)this._spawnedChunks.clear();if(this._spawnedEntities.size>0)this._spawnedEntities.clear();this._clearSyncQueue(this._queuedAudioSyncs),this._clearSyncQueue(this._queuedBlockSyncs),this._clearSyncQueue(this._queuedBlockTypeSyncs),this._clearSyncQueue(this._queuedChunkSyncs),this._clearSyncQueue(this._queuedEntitySyncs),this._clearSyncQueue(this._queuedParticleEmitterSyncs),this._clearSyncQueue(this._queuedPlayerSyncs),this._clearSyncQueue(this._queuedSceneUISyncs),this._clearSingletonSyncQueue(this._queuedCameraSyncs),this._clearSingletonSyncQueue(this._queuedChatMessagesSyncs),this._clearSingletonSyncQueue(this._queuedDebugRaycastsSyncs),this._clearSingletonSyncQueue(this._queuedDebugRenderSyncs),this._clearSingletonSyncQueue(this._queuedNotificationPermissionRequestSyncs),this._clearSingletonSyncQueue(this._queuedUISyncs),this._clearSingletonSyncQueue(this._queuedUIDatasSyncs),this._clearSingletonSyncQueue(this._queuedWorldSyncs),q1.clearCachedPacketsSerializedBuffers()})}_subscribeToAudioEvents(){this._world.final("AUDIO.PAUSE",this._onAudioPause),this._world.final("AUDIO.PLAY",this._onAudioPlay),this._world.final("AUDIO.PLAY_RESTART",this._onAudioPlayRestart),this._world.final("AUDIO.SET_ATTACHED_TO_ENTITY",this._onAudioSetAttachedToEntity),this._world.final("AUDIO.SET_CUTOFF_DISTANCE",this._onAudioSetCutoffDistance),this._world.final("AUDIO.SET_DETUNE",this._onAudioSetDetune),this._world.final("AUDIO.SET_DISTORTION",this._onAudioSetDistortion),this._world.final("AUDIO.SET_POSITION",this._onAudioSetPosition),this._world.final("AUDIO.SET_PLAYBACK_RATE",this._onAudioSetPlaybackRate),this._world.final("AUDIO.SET_REFERENCE_DISTANCE",this._onAudioSetReferenceDistance),this._world.final("AUDIO.SET_VOLUME",this._onAudioSetVolume)}_subscribeToBlockTypeRegistryEvents(){this._world.final("BLOCK_TYPE_REGISTRY.REGISTER_BLOCK_TYPE",this._onBlockTypeRegistryRegisterBlockType)}_subscribeToChatEvents(){this._world.final("CHAT.BROADCAST_MESSAGE",this._onChatSendBroadcastMessage),this._world.final("CHAT.PLAYER_MESSAGE",this._onChatSendPlayerMessage)}_subscribeToChunkLatticeEvents(){this._world.final("CHUNK_LATTICE.ADD_CHUNK",this._onChunkLatticeAddChunk),this._world.final("CHUNK_LATTICE.REMOVE_CHUNK",this._onChunkLatticeRemoveChunk),this._world.final("CHUNK_LATTICE.SET_BLOCK",this._onChunkLatticeSetBlock)}_subscribeToEntityEvents(){this._world.final("ENTITY.SPAWN",this._onEntitySpawn),this._world.final("ENTITY.DESPAWN",this._onEntityDespawn),this._world.final("ENTITY.REMOVE_MODEL_NODE_OVERRIDE",this._onEntityRemoveModelNodeOverride),this._world.final("ENTITY.SET_BLOCK_TEXTURE_URI",this._onEntitySetBlockTextureUri),this._world.final("ENTITY.SET_EMISSIVE_COLOR",this._onEntitySetEmissiveColor),this._world.final("ENTITY.SET_EMISSIVE_INTENSITY",this._onEntitySetEmissiveIntensity),this._world.final("ENTITY.SET_MODEL_SCALE",this._onEntitySetModelScale),this._world.final("ENTITY.SET_MODEL_SCALE_INTERPOLATION_MS",this._onEntitySetModelScaleInterpolationMs),this._world.final("ENTITY.SET_MODEL_TEXTURE_URI",this._onEntitySetModelTextureUri),this._world.final("ENTITY.SET_OPACITY",this._onEntitySetOpacity),this._world.final("ENTITY.SET_OUTLINE",this._onEntitySetOutline),this._world.final("ENTITY.SET_PARENT",this._onEntitySetParent),this._world.final("ENTITY.SET_POSITION_INTERPOLATION_MS",this._onEntitySetPositionInterpolationMs),this._world.final("ENTITY.SET_ROTATION_INTERPOLATION_MS",this._onEntitySetRotationInterpolationMs),this._world.final("ENTITY.SET_TINT_COLOR",this._onEntitySetTintColor),this._world.final("ENTITY.UPDATE_POSITION",this._onEntityUpdatePosition),this._world.final("ENTITY.UPDATE_ROTATION",this._onEntityUpdateRotation)}_subscribeToEntityModelAnimationEvents(){this._world.final("ENTITY_MODEL_ANIMATION.PAUSE",this._onEntityModelAnimationPause),this._world.final("ENTITY_MODEL_ANIMATION.PLAY",this._onEntityModelAnimationPlay),this._world.final("ENTITY_MODEL_ANIMATION.RESTART",this._onEntityModelAnimationRestart),this._world.final("ENTITY_MODEL_ANIMATION.SET_BLEND_MODE",this._onEntityModelAnimationSetBlendMode),this._world.final("ENTITY_MODEL_ANIMATION.SET_CLAMP_WHEN_FINISHED",this._onEntityModelAnimationSetClampWhenFinished),this._world.final("ENTITY_MODEL_ANIMATION.SET_FADES_IN",this._onEntityModelAnimationSetFadesIn),this._world.final("ENTITY_MODEL_ANIMATION.SET_FADES_OUT",this._onEntityModelAnimationSetFadesOut),this._world.final("ENTITY_MODEL_ANIMATION.SET_LOOP_MODE",this._onEntityModelAnimationSetLoopMode),this._world.final("ENTITY_MODEL_ANIMATION.SET_PLAYBACK_RATE",this._onEntityModelAnimationSetPlaybackRate),this._world.final("ENTITY_MODEL_ANIMATION.SET_WEIGHT",this._onEntityModelAnimationSetWeight),this._world.final("ENTITY_MODEL_ANIMATION.STOP",this._onEntityModelAnimationStop)}_subscribeToEntityModelNodeOverrideEvents(){this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_COLOR",this._onEntityModelNodeOverrideSetEmissiveColor),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_INTENSITY",this._onEntityModelNodeOverrideSetEmissiveIntensity),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_HIDDEN",this._onEntityModelNodeOverrideSetHidden),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION",this._onEntityModelNodeOverrideSetLocalPosition),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION_INTERPOLATION_MS",this._onEntityModelNodeOverrideSetLocalPositionInterpolationMs),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION",this._onEntityModelNodeOverrideSetLocalRotation),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION_INTERPOLATION_MS",this._onEntityModelNodeOverrideSetLocalRotationInterpolationMs),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE",this._onEntityModelNodeOverrideSetLocalScale),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE_INTERPOLATION_MS",this._onEntityModelNodeOverrideSetLocalScaleInterpolationMs)}_subscribeToParticleEmitterEvents(){this._world.final("PARTICLE_EMITTER.DESPAWN",this._onParticleEmitterDespawn),this._world.final("PARTICLE_EMITTER.BURST",this._onParticleEmitterBurst),this._world.final("PARTICLE_EMITTER.SET_ALPHA_TEST",this._onParticleEmitterSetAlphaTest),this._world.final("PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY",this._onParticleEmitterSetAttachedToEntity),this._world.final("PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY_NODE_NAME",this._onParticleEmitterSetAttachedToEntityNodeName),this._world.final("PARTICLE_EMITTER.SET_COLOR_END",this._onParticleEmitterSetColorEnd),this._world.final("PARTICLE_EMITTER.SET_COLOR_END_VARIANCE",this._onParticleEmitterSetColorEndVariance),this._world.final("PARTICLE_EMITTER.SET_COLOR_INTENSITY_END",this._onParticleEmitterSetColorIntensityEnd),this._world.final("PARTICLE_EMITTER.SET_COLOR_INTENSITY_END_VARIANCE",this._onParticleEmitterSetColorIntensityEndVariance),this._world.final("PARTICLE_EMITTER.SET_COLOR_INTENSITY_START",this._onParticleEmitterSetColorIntensityStart),this._world.final("PARTICLE_EMITTER.SET_COLOR_INTENSITY_START_VARIANCE",this._onParticleEmitterSetColorIntensityStartVariance),this._world.final("PARTICLE_EMITTER.SET_COLOR_START",this._onParticleEmitterSetColorStart),this._world.final("PARTICLE_EMITTER.SET_COLOR_START_VARIANCE",this._onParticleEmitterSetColorStartVariance),this._world.final("PARTICLE_EMITTER.SET_GRAVITY",this._onParticleEmitterSetGravity),this._world.final("PARTICLE_EMITTER.SET_LIFETIME",this._onParticleEmitterSetLifetime),this._world.final("PARTICLE_EMITTER.SET_LIFETIME_VARIANCE",this._onParticleEmitterSetLifetimeVariance),this._world.final("PARTICLE_EMITTER.SET_MAX_PARTICLES",this._onParticleEmitterSetMaxParticles),this._world.final("PARTICLE_EMITTER.SET_OFFSET",this._onParticleEmitterSetOffset),this._world.final("PARTICLE_EMITTER.SET_OPACITY_END",this._onParticleEmitterSetOpacityEnd),this._world.final("PARTICLE_EMITTER.SET_OPACITY_END_VARIANCE",this._onParticleEmitterSetOpacityEndVariance),this._world.final("PARTICLE_EMITTER.SET_OPACITY_START",this._onParticleEmitterSetOpacityStart),this._world.final("PARTICLE_EMITTER.SET_OPACITY_START_VARIANCE",this._onParticleEmitterSetOpacityStartVariance),this._world.final("PARTICLE_EMITTER.SET_PAUSED",this._onParticleEmitterSetPaused),this._world.final("PARTICLE_EMITTER.SET_POSITION",this._onParticleEmitterSetPosition),this._world.final("PARTICLE_EMITTER.SET_POSITION_VARIANCE",this._onParticleEmitterSetPositionVariance),this._world.final("PARTICLE_EMITTER.SET_RATE",this._onParticleEmitterSetRate),this._world.final("PARTICLE_EMITTER.SET_RATE_VARIANCE",this._onParticleEmitterSetRateVariance),this._world.final("PARTICLE_EMITTER.SET_SIZE_END",this._onParticleEmitterSetSizeEnd),this._world.final("PARTICLE_EMITTER.SET_SIZE_END_VARIANCE",this._onParticleEmitterSetSizeEndVariance),this._world.final("PARTICLE_EMITTER.SET_SIZE_START",this._onParticleEmitterSetSizeStart),this._world.final("PARTICLE_EMITTER.SET_SIZE_START_VARIANCE",this._onParticleEmitterSetSizeStartVariance),this._world.final("PARTICLE_EMITTER.SET_TEXTURE_URI",this._onParticleEmitterSetTextureUri),this._world.final("PARTICLE_EMITTER.SET_TRANSPARENT",this._onParticleEmitterSetTransparent),this._world.final("PARTICLE_EMITTER.SET_VELOCITY",this._onParticleEmitterSetVelocity),this._world.final("PARTICLE_EMITTER.SET_VELOCITY_VARIANCE",this._onParticleEmitterSetVelocityVariance),this._world.final("PARTICLE_EMITTER.SPAWN",this._onParticleEmitterSpawn)}_subscribeToPlayerEvents(){this._world.final("PLAYER.JOINED_WORLD",this._onPlayerJoinedWorld),this._world.final("PLAYER.LEFT_WORLD",this._onPlayerLeftWorld),this._world.final("PLAYER.RECONNECTED_WORLD",this._onPlayerReconnectedWorld),this._world.final("PLAYER.REQUEST_NOTIFICATION_PERMISSION",this._onPlayerRequestNotificationPermission),this._world.final("PLAYER.REQUEST_SYNC",this._onPlayerRequestSync)}_subscribeToPlayerCameraEvents(){this._world.final("PLAYER_CAMERA.FACE_ENTITY",this._onPlayerCameraFaceEntity),this._world.final("PLAYER_CAMERA.FACE_POSITION",this._onPlayerCameraFacePosition),this._world.final("PLAYER_CAMERA.SET_ATTACHED_TO_ENTITY",this._onPlayerCameraSetAttachedToEntity),this._world.final("PLAYER_CAMERA.SET_ATTACHED_TO_POSITION",this._onPlayerCameraSetAttachedToPosition),this._world.final("PLAYER_CAMERA.SET_COLLIDES_WITH_BLOCKS",this._onPlayerCameraSetCollidesWithBlocks),this._world.final("PLAYER_CAMERA.SET_FILM_OFFSET",this._onPlayerCameraSetFilmOffset),this._world.final("PLAYER_CAMERA.SET_FORWARD_OFFSET",this._onPlayerCameraSetForwardOffset),this._world.final("PLAYER_CAMERA.SET_FOV",this._onPlayerCameraSetFov),this._world.final("PLAYER_CAMERA.SET_MODE",this._onPlayerCameraSetMode),this._world.final("PLAYER_CAMERA.SET_OFFSET",this._onPlayerCameraSetOffset),this._world.final("PLAYER_CAMERA.SET_SHOULDER_ANGLE",this._onPlayerCameraSetShoulderAngle),this._world.final("PLAYER_CAMERA.SET_TARGET_ENTITY",this._onPlayerCameraSetTargetEntity),this._world.final("PLAYER_CAMERA.SET_TARGET_POSITION",this._onPlayerCameraSetTargetPosition),this._world.final("PLAYER_CAMERA.SET_VIEW_MODEL",this._onPlayerCameraSetViewModel),this._world.final("PLAYER_CAMERA.SET_VIEW_MODEL_HIDDEN_NODES",this._onPlayerCameraSetViewModelHiddenNodes),this._world.final("PLAYER_CAMERA.SET_VIEW_MODEL_PITCHES_WITH_CAMERA",this._onPlayerCameraSetViewModelPitchesWithCamera),this._world.final("PLAYER_CAMERA.SET_VIEW_MODEL_SHOWN_NODES",this._onPlayerCameraSetViewModelShownNodes),this._world.final("PLAYER_CAMERA.SET_VIEW_MODEL_YAWS_WITH_CAMERA",this._onPlayerCameraSetViewModelYawsWithCamera),this._world.final("PLAYER_CAMERA.SET_ZOOM",this._onPlayerCameraSetZoom)}_subscribeToPlayerUIEvents(){this._world.final("PLAYER_UI.APPEND",this._onPlayerUIAppend),this._world.final("PLAYER_UI.FREEZE_POINTER_LOCK",this._onPlayerUIFreezePointerLock),this._world.final("PLAYER_UI.LOAD",this._onPlayerUILoad),this._world.final("PLAYER_UI.LOCK_POINTER",this._onPlayerUILockPointer),this._world.final("PLAYER_UI.SEND_DATA",this._onPlayerUISendData)}_subscribeToSceneUIEvents(){this._world.final("SCENE_UI.LOAD",this._onSceneUILoad),this._world.final("SCENE_UI.SET_ATTACHED_TO_ENTITY",this._onSceneUISetAttachedToEntity),this._world.final("SCENE_UI.SET_OFFSET",this._onSceneUISetOffset),this._world.final("SCENE_UI.SET_POSITION",this._onSceneUISetPosition),this._world.final("SCENE_UI.SET_STATE",this._onSceneUISetState),this._world.final("SCENE_UI.SET_VIEW_DISTANCE",this._onSceneUISetViewDistance),this._world.final("SCENE_UI.UNLOAD",this._onSceneUIUnload)}_subscribeToSimulationEvents(){this._world.final("SIMULATION.DEBUG_RAYCAST",this._onSimulationDebugRaycast),this._world.final("SIMULATION.DEBUG_RENDER",this._onSimulationDebugRender)}_subscribeToWorldEvents(){this._world.final("WORLD.SET_AMBIENT_LIGHT_COLOR",this._onWorldSetAmbientLightColor),this._world.final("WORLD.SET_AMBIENT_LIGHT_INTENSITY",this._onWorldSetAmbientLightIntensity),this._world.final("WORLD.SET_DIRECTIONAL_LIGHT_COLOR",this._onWorldSetDirectionalLightColor),this._world.final("WORLD.SET_DIRECTIONAL_LIGHT_INTENSITY",this._onWorldSetDirectionalLightIntensity),this._world.final("WORLD.SET_DIRECTIONAL_LIGHT_POSITION",this._onWorldSetDirectionalLightPosition),this._world.final("WORLD.SET_FOG_COLOR",this._onWorldSetFogColor),this._world.final("WORLD.SET_FOG_FAR",this._onWorldSetFogFar),this._world.final("WORLD.SET_FOG_NEAR",this._onWorldSetFogNear),this._world.final("WORLD.SET_SKYBOX_INTENSITY",this._onWorldSetSkyboxIntensity),this._world.final("WORLD.SET_SKYBOX_URI",this._onWorldSetSkyboxUri)}_onAudioPause=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.pa=!0,delete Q.pl,delete Q.r};_onAudioPlay=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Object.assign(Q,A.audio.serialize()),Q.pl=!0,delete Q.pa,delete Q.r};_onAudioPlayRestart=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Object.assign(Q,A.audio.serialize()),Q.r=!0,delete Q.pa,delete Q.pl};_onAudioSetAttachedToEntity=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.e=A.entity?A.entity.id:void 0,Q.p=A.entity?void 0:Q.p};_onAudioSetCutoffDistance=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.cd=A.cutoffDistance};_onAudioSetDetune=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.de=A.detune};_onAudioSetDistortion=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.di=A.distortion};_onAudioSetPosition=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.e=A.position?void 0:Q.e,Q.p=A.position?GQ.serializeVector(A.position):void 0};_onAudioSetPlaybackRate=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.pr=A.playbackRate};_onAudioSetReferenceDistance=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.rd=A.referenceDistance};_onAudioSetVolume=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.v=A.volume};_onBlockTypeRegistryRegisterBlockType=(A)=>{if(this._playersInWorld.size===0)return;let Q=this._createOrGetQueuedBlockTypeSync(A.blockType);Object.assign(Q,A.blockType.serialize())};_onChatSendBroadcastMessage=(A)=>{this._createOrGetQueuedChatMessagesSync().push({m:A.message,c:A.color,p:A.player?.id})};_onChatSendPlayerMessage=(A)=>{this._createOrGetQueuedChatMessagesSync(A.player).push({m:A.message,c:A.color})};_onChunkLatticeAddChunk=(A)=>{if(this._playersInWorld.size===0)return;let Q=this._createOrGetQueuedChunkSync(A.chunk);Object.assign(Q,A.chunk.serialize()),Q.rm=void 0,this._spawnedChunks.add(Q.c.join(","))};_onChunkLatticeRemoveChunk=(A)=>{if(this._playersInWorld.size===0)return;let Q=this._createOrGetQueuedChunkSync(A.chunk),B=Q.c.join(",");if(this._spawnedChunks.has(B))this._queuedChunkSyncs.broadcast.delete(B),this._spawnedChunks.delete(B);else Q.rm=!0};_onChunkLatticeSetBlock=(A)=>{if(this._playersInWorld.size===0)return;let Q=this._createOrGetQueuedBlockSync(A.globalCoordinate);Q.i=A.blockTypeId,Q.r=A.blockRotation?.enumIndex};_onEntitySpawn=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Object.assign(Q,A.entity.serialize()),this._spawnedEntities.add(Q.i)};_onEntityDespawn=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);if(this._spawnedEntities.has(Q.i))this._queuedEntitySyncs.broadcast.delete(Q.i),this._spawnedEntities.delete(Q.i);else Q.rm=!0};_onEntityRemoveModelNodeOverride=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.rm=!0};_onEntitySetBlockTextureUri=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.bt=A.blockTextureUri};_onEntitySetEmissiveColor=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.ec=A.emissiveColor?GQ.serializeRgbColor(A.emissiveColor):void 0};_onEntitySetEmissiveIntensity=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.ei=A.emissiveIntensity};_onEntitySetModelScale=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.sv=A.modelScale?GQ.serializeVector(A.modelScale):void 0};_onEntitySetModelScaleInterpolationMs=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.si=A.interpolationMs};_onEntitySetModelTextureUri=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.mt=A.modelTextureUri};_onEntitySetOpacity=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.o=A.opacity};_onEntitySetOutline=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity,A.forPlayer);Q.ol=A.outline?GQ.serializeOutline(A.outline):void 0};_onEntitySetParent=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.pe=A.parent?A.parent.id:void 0,Q.pn=A.parentNodeName};_onEntitySetPositionInterpolationMs=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.pi=A.interpolationMs};_onEntitySetRotationInterpolationMs=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.ri=A.interpolationMs};_onEntitySetTintColor=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.t=A.tintColor?GQ.serializeRgbColor(A.tintColor):void 0};_onEntityUpdatePosition=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.p=[A.position.x,A.position.y,A.position.z]};_onEntityUpdateRotation=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.r=[A.rotation.x,A.rotation.y,A.rotation.z,A.rotation.w]};_onEntityModelAnimationPause=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.pa=!0,delete Q.p,delete Q.r,delete Q.s};_onEntityModelAnimationPlay=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.p=!0,delete Q.pa,delete Q.r,delete Q.s};_onEntityModelAnimationRestart=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.r=!0,delete Q.pa,delete Q.p,delete Q.s};_onEntityModelAnimationSetBlendMode=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.b=A.blendMode};_onEntityModelAnimationSetClampWhenFinished=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.c=A.clampWhenFinished};_onEntityModelAnimationSetFadesIn=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.fi=A.fadesIn};_onEntityModelAnimationSetFadesOut=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.fo=A.fadesOut};_onEntityModelAnimationSetLoopMode=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.l=A.loopMode};_onEntityModelAnimationSetPlaybackRate=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.pr=A.playbackRate};_onEntityModelAnimationSetWeight=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.w=A.weight};_onEntityModelAnimationStop=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.s=!0,delete Q.p,delete Q.pa,delete Q.r};_onEntityModelNodeOverrideSetEmissiveColor=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.ec=A.emissiveColor?GQ.serializeRgbColor(A.emissiveColor):void 0,delete Q.rm};_onEntityModelNodeOverrideSetEmissiveIntensity=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.ei=A.emissiveIntensity,delete Q.rm};_onEntityModelNodeOverrideSetHidden=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.h=A.hidden,delete Q.rm};_onEntityModelNodeOverrideSetLocalPosition=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.p=A.localPosition?GQ.serializeVector(A.localPosition):void 0,delete Q.rm};_onEntityModelNodeOverrideSetLocalPositionInterpolationMs=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.pi=A.interpolationMs,delete Q.rm};_onEntityModelNodeOverrideSetLocalRotation=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.r=A.localRotation?GQ.serializeQuaternion(A.localRotation):void 0,delete Q.rm};_onEntityModelNodeOverrideSetLocalRotationInterpolationMs=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.ri=A.interpolationMs,delete Q.rm};_onEntityModelNodeOverrideSetLocalScale=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.s=A.localScale?GQ.serializeVector(A.localScale):void 0,delete Q.rm};_onEntityModelNodeOverrideSetLocalScaleInterpolationMs=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.si=A.interpolationMs,delete Q.rm};_onParticleEmitterBurst=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.b=A.count};_onParticleEmitterDespawn=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.rm=!0};_onParticleEmitterSetAlphaTest=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.at=A.alphaTest};_onParticleEmitterSetAttachedToEntity=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.e=A.entity?A.entity.id:void 0,Q.p=A.entity?void 0:Q.p};_onParticleEmitterSetAttachedToEntityNodeName=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.en=A.attachedToEntityNodeName};_onParticleEmitterSetColorEnd=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.ce=A.colorEnd?GQ.serializeRgbColor(A.colorEnd):void 0};_onParticleEmitterSetColorEndVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.cev=A.colorEndVariance?GQ.serializeRgbColor(A.colorEndVariance):void 0};_onParticleEmitterSetColorIntensityEnd=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.cie=A.colorIntensityEnd};_onParticleEmitterSetColorIntensityEndVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.ciev=A.colorIntensityEndVariance};_onParticleEmitterSetColorIntensityStart=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.cis=A.colorIntensityStart};_onParticleEmitterSetColorIntensityStartVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.cisv=A.colorIntensityStartVariance};_onParticleEmitterSetColorStart=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.cs=A.colorStart?GQ.serializeRgbColor(A.colorStart):void 0};_onParticleEmitterSetColorStartVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.csv=A.colorStartVariance?GQ.serializeRgbColor(A.colorStartVariance):void 0};_onParticleEmitterSetGravity=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.g=A.gravity?GQ.serializeVector(A.gravity):void 0};_onParticleEmitterSetLifetime=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.l=A.lifetime};_onParticleEmitterSetLifetimeVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.lv=A.lifetimeVariance};_onParticleEmitterSetMaxParticles=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.mp=A.maxParticles};_onParticleEmitterSetOffset=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.o=A.offset?GQ.serializeVector(A.offset):void 0};_onParticleEmitterSetOpacityEnd=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.oe=A.opacityEnd};_onParticleEmitterSetOpacityEndVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.oev=A.opacityEndVariance};_onParticleEmitterSetOpacityStart=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.os=A.opacityStart};_onParticleEmitterSetOpacityStartVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.osv=A.opacityStartVariance};_onParticleEmitterSetPaused=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.pa=A.paused};_onParticleEmitterSetPosition=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.p=A.position?GQ.serializeVector(A.position):void 0,Q.e=A.position?void 0:Q.e,Q.en=A.position?void 0:Q.en};_onParticleEmitterSetPositionVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.pv=A.positionVariance?GQ.serializeVector(A.positionVariance):void 0};_onParticleEmitterSetRate=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.r=A.rate};_onParticleEmitterSetRateVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.rv=A.rateVariance};_onParticleEmitterSetSizeEnd=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.se=A.sizeEnd};_onParticleEmitterSetSizeEndVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.sev=A.sizeEndVariance};_onParticleEmitterSetSizeStart=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.ss=A.sizeStart};_onParticleEmitterSetSizeStartVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.ssv=A.sizeStartVariance};_onParticleEmitterSetTextureUri=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.tu=A.textureUri};_onParticleEmitterSetTransparent=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.t=A.transparent};_onParticleEmitterSetVelocity=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.v=A.velocity?GQ.serializeVector(A.velocity):void 0};_onParticleEmitterSetVelocityVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.vv=A.velocityVariance?GQ.serializeVector(A.velocityVariance):void 0};_onParticleEmitterSpawn=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Object.assign(Q,A.particleEmitter.serialize())};_onPlayerCameraFaceEntity=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.pl=GQ.serializeVector(A.entity.position),delete Q.et,delete Q.pt};_onPlayerCameraFacePosition=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.pl=A.position?GQ.serializeVector(A.position):void 0,delete Q.et,delete Q.pt};_onPlayerCameraSetAttachedToEntity=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.e=A.entity.id,delete Q.p,this._syncPlayerCameraAttachedEntityModel(A.playerCamera)};_onPlayerCameraSetAttachedToPosition=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.p=A.position?GQ.serializeVector(A.position):void 0,delete Q.e};_onPlayerCameraSetCollidesWithBlocks=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.cb=A.collidesWithBlocks};_onPlayerCameraSetFilmOffset=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.fo=A.filmOffset};_onPlayerCameraSetForwardOffset=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.ffo=A.forwardOffset};_onPlayerCameraSetFov=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.fv=A.fov};_onPlayerCameraSetMode=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.m=A.mode,this._syncPlayerCameraAttachedEntityModel(A.playerCamera)};_onPlayerCameraSetOffset=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.o=A.offset?GQ.serializeVector(A.offset):void 0};_onPlayerCameraSetShoulderAngle=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.sa=A.shoulderAngle};_onPlayerCameraSetTargetEntity=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.et=A.entity?A.entity.id:void 0,delete Q.pl,delete Q.pt};_onPlayerCameraSetTargetPosition=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.pt=A.position?GQ.serializeVector(A.position):void 0,delete Q.et,delete Q.pl};_onPlayerCameraSetZoom=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.z=A.zoom};_onPlayerCameraSetViewModel=(A)=>{this._syncPlayerCameraAttachedEntityModel(A.playerCamera)};_onPlayerCameraSetViewModelHiddenNodes=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.h=Array.from(A.viewModelHiddenNodes)};_onPlayerCameraSetViewModelPitchesWithCamera=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.mp=A.viewModelPitchesWithCamera};_onPlayerCameraSetViewModelShownNodes=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.s=Array.from(A.viewModelShownNodes)};_onPlayerCameraSetViewModelYawsWithCamera=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.my=A.viewModelYawsWithCamera};_onPlayerJoinedWorld=(A)=>{let{player:Q}=A;this._playersInWorld.add(Q);for(let C of this._world.audioManager.getAllAudios()){let X=this._createOrGetQueuedAudioSync(C,Q);this._assignUndefined(X,C.serialize())}for(let C of this._world.blockTypeRegistry.getAllBlockTypes()){let X=this._createOrGetQueuedBlockTypeSync(C,Q);this._assignUndefined(X,C.serialize())}let B=this._createOrGetQueuedCameraSync(Q);this._assignUndefined(B,Q.camera.serialize());for(let C of this._world.chunkLattice.getAllChunks()){let X=this._createOrGetQueuedChunkSync(C,Q);this._assignUndefined(X,C.serialize())}for(let C of this._world.entityManager.getAllEntities()){if(Q.camera.attachedToEntity===void 0&&C instanceof BX&&C.player===Q)Q.camera.setAttachedToEntity(C);let X=this._createOrGetQueuedEntitySync(C,Q);this._assignUndefined(X,C.serialize())}this._syncPlayerCameraAttachedEntityModel(Q.camera);for(let C of this._world.particleEmitterManager.getAllParticleEmitters()){let X=this._createOrGetQueuedParticleEmitterSync(C,Q);this._assignUndefined(X,C.serialize())}for(let C of dJ.instance.getConnectedPlayers()){let X=this._createOrGetQueuedPlayerSync(C,Q);this._assignUndefined(X,C.serialize())}for(let C of this._world.sceneUIManager.getAllSceneUIs()){let X=this._createOrGetQueuedSceneUISync(C,Q);this._assignUndefined(X,C.serialize())}let Y=this._createOrGetQueuedWorldSync(this._world,Q);this._assignUndefined(Y,this._world.serialize());let J=this._createOrGetQueuedPlayerSync(Q);this._assignUndefined(J,Q.serialize())};_onPlayerLeftWorld=(A)=>{this._playersInWorld.delete(A.player);let Q=this._createOrGetQueuedPlayerSync(A.player);Q.rm=!0};_onPlayerReconnectedWorld=(A)=>{this._onPlayerJoinedWorld(A)};_onPlayerRequestNotificationPermission=(A)=>{this._createOrGetQueuedNotificationPermissionRequestSync(A.player)};_onPlayerRequestSync=(A)=>{A.player.connection.send([gQ.createPacket(gQ.outboundPackets.syncResponsePacketDefinition,{r:A.receivedAt,s:Date.now(),p:performance.now()-A.receivedAtMs,n:this._world.loop.nextTickMs},this._world.loop.currentTick)])};_onPlayerUIAppend=(A)=>{let Q=this._createOrGetQueuedUISync(A.playerUI.player);Q.ua??=[],Q.ua.push(A.htmlUri)};_onPlayerUIFreezePointerLock=(A)=>{let Q=this._createOrGetQueuedUISync(A.playerUI.player);Q.pf=A.freeze};_onPlayerUILoad=(A)=>{let Q=this._createOrGetQueuedUISync(A.playerUI.player);Q.u=A.htmlUri};_onPlayerUILockPointer=(A)=>{let Q=this._createOrGetQueuedUISync(A.playerUI.player);Q.p=A.lock};_onPlayerUISendData=(A)=>{this._createOrGetQueuedUIDatasSync(A.playerUI.player).push(A.data)};_onSceneUILoad=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);Object.assign(Q,A.sceneUI.serialize()),this._loadedSceneUIs.add(Q.i)};_onSceneUISetAttachedToEntity=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);Q.e=A.entity?A.entity.id:void 0,Q.p=A.entity?void 0:Q.p};_onSceneUISetOffset=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);Q.o=A.offset?GQ.serializeVector(A.offset):void 0};_onSceneUISetPosition=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);Q.p=A.position?GQ.serializeVector(A.position):void 0,Q.e=A.position?void 0:Q.e};_onSceneUISetState=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);Q.s=A.state};_onSceneUISetViewDistance=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);Q.v=A.viewDistance};_onSceneUIUnload=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);if(this._loadedSceneUIs.has(Q.i))this._queuedSceneUISyncs.broadcast.delete(Q.i),this._loadedSceneUIs.delete(Q.i);else Q.rm=!0};_onSimulationDebugRaycast=(A)=>{this._createOrGetDebugRaycastsSync().push(GQ.serializePhysicsDebugRaycast(A))};_onSimulationDebugRender=(A)=>{let Q=this._createOrGetDebugRenderSync();Q.v=Array.from(A.vertices),Q.c=Array.from(A.colors)};_onWorldSetAmbientLightColor=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.ac=GQ.serializeRgbColor(A.color)};_onWorldSetAmbientLightIntensity=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.ai=A.intensity};_onWorldSetDirectionalLightColor=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.dc=GQ.serializeRgbColor(A.color)};_onWorldSetDirectionalLightIntensity=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.di=A.intensity};_onWorldSetDirectionalLightPosition=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.dp=GQ.serializeVector(A.position)};_onWorldSetFogColor=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.fc=GQ.serializeRgbColor(A.color)};_onWorldSetFogFar=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.ff=A.far};_onWorldSetFogNear=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.fn=A.near};_onWorldSetSkyboxIntensity=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.si=A.intensity};_onWorldSetSkyboxUri=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.s=A.uri};_assignUndefined(A,Q){for(let B in Q)if(A[B]===void 0)A[B]=Q[B];return A}_createAudioSync=(A)=>({i:A.id});_createOrGetQueuedAudioSync(A,Q){if(A.id===void 0)l.fatalError("NetworkSynchronizer._createOrGetQueuedAudioSync(): Audio has no id!");return this._createOrGetQueuedSync(this._queuedAudioSyncs,A.id,this._createAudioSync,A,Q)}_createBlockSync=(A)=>({i:0,c:[A.x,A.y,A.z]});_createOrGetQueuedBlockSync(A,Q){let B=`${A.x},${A.y},${A.z}`;return this._createOrGetQueuedSync(this._queuedBlockSyncs,B,this._createBlockSync,A,Q)}_createBlockTypeSync=(A)=>({i:A.id});_createOrGetQueuedBlockTypeSync(A,Q){return this._createOrGetQueuedSync(this._queuedBlockTypeSyncs,A.id,this._createBlockTypeSync,A,Q)}_createCameraSync=()=>({});_createOrGetQueuedCameraSync(A){return this._createOrGetQueuedSingletonSync(this._queuedCameraSyncs,this._createCameraSync,void 0,A)}_createChatMessagesSync=()=>[];_createOrGetQueuedChatMessagesSync(A){return this._createOrGetQueuedSingletonSync(this._queuedChatMessagesSyncs,this._createChatMessagesSync,void 0,A)}_createChunkSync=(A)=>({c:[A.originCoordinate.x,A.originCoordinate.y,A.originCoordinate.z]});_createOrGetQueuedChunkSync(A,Q){if(!A.originCoordinate)l.fatalError("NetworkSynchronizer._createOrGetQueuedChunkSync(): Chunk has no origin coordinate!");let B=`${A.originCoordinate.x},${A.originCoordinate.y},${A.originCoordinate.z}`;return this._createOrGetQueuedSync(this._queuedChunkSyncs,B,this._createChunkSync,A,Q)}_createDebugRaycastsSync=()=>[];_createOrGetDebugRaycastsSync(A){return this._createOrGetQueuedSingletonSync(this._queuedDebugRaycastsSyncs,this._createDebugRaycastsSync,void 0,A)}_createDebugRenderSync=()=>({v:[],c:[]});_createOrGetDebugRenderSync(A){return this._createOrGetQueuedSingletonSync(this._queuedDebugRenderSyncs,this._createDebugRenderSync,void 0,A)}_createEntitySync=(A)=>({i:A.id});_createOrGetQueuedEntitySync(A,Q){if(A.id===void 0)l.fatalError("NetworkSynchronizer._createOrGetQueuedEntitySync(): Entity has no id!");return this._createOrGetQueuedSync(this._queuedEntitySyncs,A.id,this._createEntitySync,A,Q)}_createEntityModelAnimationSync=(A)=>({n:A.name});_createOrGetQueuedEntityModelAnimationSync(A,Q){if(A.entity.id===void 0)l.fatalError("NetworkSynchronizer._createOrGetQueuedEntityModelAnimationSync(): EntityModelAnimation entity has no id!");let B=this._createOrGetQueuedEntitySync(A.entity,Q);B.ma??=[];let Y=B.ma.find((J)=>J.n===A.name);if(!Y)Y=this._createEntityModelAnimationSync(A),B.ma.push(Y);return Y}_createEntityModelNodeOverrideSync=(A)=>({n:A.nameMatch});_createOrGetQueuedEntityModelNodeOverrideSync(A,Q){if(A.entity.id===void 0)l.fatalError("NetworkSynchronizer._createOrGetQueuedEntityModelNodeOverrideSync(): EntityModelNodeOverride entity has no id!");let B=this._createOrGetQueuedEntitySync(A.entity,Q);B.mo??=[];let Y=B.mo.find((J)=>J.n===A.nameMatch);if(!Y)Y=this._createEntityModelNodeOverrideSync(A),B.mo.push(Y);return Y}_createNotificationPermissionRequestSync=()=>null;_createOrGetQueuedNotificationPermissionRequestSync(A){return this._createOrGetQueuedSingletonSync(this._queuedNotificationPermissionRequestSyncs,this._createNotificationPermissionRequestSync,void 0,A)}_createParticleEmitterSync=(A)=>({i:A.id});_createOrGetQueuedParticleEmitterSync(A,Q){if(A.id===void 0)l.fatalError("NetworkSynchronizer._createOrGetQueuedParticleEmitterSync(): ParticleEmitter has no id!");return this._createOrGetQueuedSync(this._queuedParticleEmitterSyncs,A.id,this._createParticleEmitterSync,A,Q)}_createPlayerSync=(A)=>({i:A.id});_createOrGetQueuedPlayerSync(A,Q){return this._createOrGetQueuedSync(this._queuedPlayerSyncs,A.id,this._createPlayerSync,A,Q)}_createSceneUISync=(A)=>({i:A.id});_createOrGetQueuedSceneUISync(A,Q){if(A.id===void 0)l.fatalError("NetworkSynchronizer._createOrGetQueuedSceneUISync(): SceneUI has no id!");return this._createOrGetQueuedSync(this._queuedSceneUISyncs,A.id,this._createSceneUISync,A,Q)}_createUISync=()=>({});_createOrGetQueuedUISync(A){return this._createOrGetQueuedSingletonSync(this._queuedUISyncs,this._createUISync,void 0,A)}_createUIDatasSync=()=>[];_createOrGetQueuedUIDatasSync(A){return this._createOrGetQueuedSingletonSync(this._queuedUIDatasSyncs,this._createUIDatasSync,void 0,A)}_createWorldSync=(A)=>({i:A.id});_createOrGetQueuedWorldSync(A,Q){if(A.id!==this._world.id)l.fatalError("NetworkSynchronizer._createOrGetQueuedWorldSync(): World does not match this network synchronizer world!");return this._createOrGetQueuedSingletonSync(this._queuedWorldSyncs,this._createWorldSync,A,Q)}_createOrGetQueuedSync(A,Q,B,Y,J){let C,X;if(J){if(X=A.perPlayer.get(J),!X)X=new bB,A.perPlayer.set(J,X);if(!this._outboundPerPlayerReliablePackets.has(J))this._outboundPerPlayerReliablePackets.set(J,[])}else X=A.broadcast;if(C=X.get(Q),C===void 0)C=B(Y),X.set(Q,C);return C}_createOrGetQueuedSingletonSync(A,Q,B,Y){let J=Y?A.perPlayer.get(Y):A.broadcast;if(J===void 0)if(J=Q(B),Y){if(A.perPlayer.set(Y,J),!this._outboundPerPlayerReliablePackets.has(Y))this._outboundPerPlayerReliablePackets.set(Y,[])}else A.broadcast=J;return J}_clearSyncQueue(A){if(A.broadcast.size>0)A.broadcast.clear();if(A.perPlayer.size>0)A.perPlayer.clear()}_clearSingletonSyncQueue(A){if(A.broadcast!==void 0)A.broadcast=void 0;if(A.perPlayer.size>0)A.perPlayer.clear()}_collectSingletonSyncToOutboundPackets(A,Q){if(A.broadcast!==void 0){let B=gQ.createPacket(Q,A.broadcast,this._world.loop.currentTick);this._outboundSharedReliablePackets.push(B);for(let Y of this._outboundPerPlayerReliablePackets.valuesArray)Y.push(B)}if(A.perPlayer.size>0)for(let[B,Y]of A.perPlayer.entries())this._outboundPerPlayerReliablePackets.get(B)?.push(gQ.createPacket(Q,Y,this._world.loop.currentTick))}_collectSyncToOutboundPackets(A,Q){if(A.broadcast.size>0){let B=gQ.createPacket(Q,A.broadcast.valuesArray,this._world.loop.currentTick);this._outboundSharedReliablePackets.push(B);for(let Y of this._outboundPerPlayerReliablePackets.valuesArray)Y.push(B)}if(A.perPlayer.size>0)for(let[B,Y]of A.perPlayer.entries())this._outboundPerPlayerReliablePackets.get(B)?.push(gQ.createPacket(Q,Y.valuesArray,this._world.loop.currentTick))}_syncPlayerCameraAttachedEntityModel(A){let Q=A.attachedToEntity,B=Q&&(A.mode===0?A.viewModelUri:Q.modelUri);if(Q&&B)this._createOrGetQueuedEntitySync(Q,A.player).m=B}}class KM{_particleEmitters=new Map;_nextParticleEmitterId=1;_world;constructor(A){this._world=A}get world(){return this._world}despawnEntityAttachedParticleEmitters(A){this.getAllEntityAttachedParticleEmitters(A).forEach((Q)=>{Q.despawn()})}getAllParticleEmitters(){return Array.from(this._particleEmitters.values())}getAllEntityAttachedParticleEmitters(A){return this.getAllParticleEmitters().filter((Q)=>Q.attachedToEntity===A)}registerParticleEmitter(A){if(A.id!==void 0)return A.id;let Q=this._nextParticleEmitterId;return this._particleEmitters.set(Q,A),this._nextParticleEmitterId++,Q}unregisterParticleEmitter(A){if(A.id===void 0)return;this._particleEmitters.delete(A.id)}}class VM{_sceneUIs=new Map;_nextSceneUIId=1;_world;constructor(A){this._world=A}get world(){return this._world}getAllSceneUIs(){return Array.from(this._sceneUIs.values())}getAllEntityAttachedSceneUIs(A){return this.getAllSceneUIs().filter((Q)=>Q.attachedToEntity===A)}getSceneUIById(A){return this._sceneUIs.get(A)}registerSceneUI(A){if(A.id!==void 0)return A.id;let Q=this._nextSceneUIId;return this._sceneUIs.set(Q,A),this._nextSceneUIId++,Q}unloadEntityAttachedSceneUIs(A){this.getAllEntityAttachedSceneUIs(A).forEach((Q)=>{Q.unload()})}unregisterSceneUI(A){if(A.id===void 0)return;this._sceneUIs.delete(A.id)}}import Ft from"fs";import wm0 from"path";import{brotliCompressSync as Cm0,brotliDecompressSync as Xm0,constants as bk,gunzipSync as Gm0,gzipSync as Wm0}from"zlib";var Qt=Object.values(w8).sort((A,Q)=>A.enumIndex-Q.enumIndex);function Fm0(A){return A<<1^A>>31}function IM(A){return A>>>1^-(A&1)}function Zm0(A,Q,B){let Y=B>>>0;while(Y>127)A[Q++]=Y&127|128,Y>>>=7;return A[Q++]=Y,Q}function HM(A,Q,B){return Zm0(A,Q,Fm0(B))}function DM(A,Q){let B=0,Y=0,J=0;do J=A[Q++],B|=(J&127)<>>0,offset:Q}}function $m0(A,Q){if(A==="none")return Q;if(A==="gzip")return Gm0(Q);return Xm0(Q)}function CSQ(A,Q,B){if(A==="none")return Q;if(A==="gzip")return Wm0(Q,{level:Math.min(9,Math.max(0,B))});return Cm0(Q,{params:{[bk.BROTLI_PARAM_MODE]:bk.BROTLI_MODE_GENERIC,[bk.BROTLI_PARAM_QUALITY]:Math.min(11,Math.max(0,B)),[bk.BROTLI_PARAM_SIZE_HINT]:Q.byteLength}})}function XSQ(A){return A!==null&&typeof A==="object"}function Um0(A){if(!A)return;if(Array.isArray(A))return A;return Object.values(A)}class eY{static isCompressedWorldMap(A){if(!XSQ(A))return!1;if(typeof A.data!=="string")return!1;if(!XSQ(A.bounds))return!1;let Q=A.bounds;return typeof Q.minX==="number"&&typeof Q.minY==="number"&&typeof Q.minZ==="number"&&typeof Q.maxX==="number"&&typeof Q.maxY==="number"&&typeof Q.maxZ==="number"}static compress(A,Q={}){let B=A.blocks??{},Y=[],J=1/0,C=1/0,X=1/0,G=-1/0,W=-1/0,F=-1/0,Z=!1;for(let N in B){let q=B[N],w=typeof q==="number"?q:q.i,P=typeof q==="number"?0:q.r??0;if(!Number.isInteger(w)||w<0||w>255)l.fatalError(`WorldMapCodec.compress(): Invalid block type id ${w} at ${N} (expected 0-255).`);if(!Number.isInteger(P)||P<0||P>=Qt.length)l.fatalError(`WorldMapCodec.compress(): Invalid block rotation index ${P} at ${N}.`);if(P!==0)Z=!0;let _=N.indexOf(","),j=N.indexOf(",",_+1),k=Number(N.slice(0,_)),T=Number(N.slice(_+1,j)),S=Number(N.slice(j+1));J=Math.min(J,k),C=Math.min(C,T),X=Math.min(X,S),G=Math.max(G,k),W=Math.max(W,T),F=Math.max(F,S),Y.push({x:k,y:T,z:S,id:w,r:P})}if(Y.length===0){let N=Buffer.allocUnsafe(4);N.writeUInt32LE(0,0);let q=Q.algorithm??"brotli",w=Q.level??9,P=CSQ(q,N,w).toString("base64");return{format:"hytopia.worldmap.compressed",codecVersion:1,version:"1.0.0",algorithm:q,data:P,bounds:{minX:0,minY:0,minZ:0,maxX:0,maxY:0,maxZ:0},blockTypes:A.blockTypes,entities:A.entities,options:{rotations:!1,useDelta:!0,useVarint:!0}}}let U=Q.includeRotations??Z;if(!U&&Z)l.fatalError("WorldMapCodec.compress(): Map contains rotated blocks but includeRotations is false.");for(let N=0;NN.y-q.y||N.x-q.x||N.z-q.z);let $=U?25:20,E=Buffer.allocUnsafe(4+Y.length*$),K=0;E.writeUInt32LE(Y.length,K),K+=4;let I=0,V=0,H=0;for(let N=0;N=Qt.length)l.fatalError(`WorldMapCodec.decodeBlockEntries(): Invalid rotation index ${I} at block ${$}.`);if(K<0||K>255)l.fatalError(`WorldMapCodec.decodeBlockEntries(): Invalid block type id ${K} at block ${$} (expected 0-255).`);let V=F+C.minX,H=Z+C.minY,D=U+C.minZ;yield{globalCoordinate:{x:V,y:H,z:D},blockTypeId:K,blockRotation:I!==0?Qt[I]:void 0}}}return W()}static decompressToWorldMap(A){let Q=Um0(A.blockTypes),B=A.entities,Y={},J=A.options?.rotations===!0;for(let C of this.decodeBlockEntries(A)){let X=`${C.globalCoordinate.x},${C.globalCoordinate.y},${C.globalCoordinate.z}`;if(!J||!C.blockRotation||C.blockRotation.enumIndex===0)Y[X]=C.blockTypeId;else Y[X]={i:C.blockTypeId,r:C.blockRotation.enumIndex}}return{blockTypes:Q,blocks:Y,entities:B}}}import{brotliCompressSync as Em0,brotliDecompressSync as Km0,constants as mk,gunzipSync as Vm0,gzipSync as Im0}from"zlib";var kV=Buffer.from("HYTCHUNK"),NM=1,_V=12;function GSQ(A){if(A==="none")return 0;if(A==="gzip")return 2;return 1}function WSQ(A){if(A===0)return"none";if(A===2)return"gzip";return"brotli"}var Hm0=Object.values(w8).sort((A,Q)=>A.enumIndex-Q.enumIndex);function ZSQ(A){return A!==null&&typeof A==="object"}function $SQ(A){return A<<1^A>>31}function Dm0(A){return A>>>1^-(A&1)}function LM(A){let Q=A>>>0,B=1;while(Q>127)B++,Q>>>=7;return B}function Bt(A){return LM($SQ(A))}function qM(A,Q,B){let Y=B>>>0;while(Y>127)A[Q++]=Y&127|128,Y>>>=7;return A[Q++]=Y,Q}function Yt(A,Q,B){return qM(A,Q,$SQ(B))}function MM(A,Q){let B=0,Y=0,J=0;do J=A[Q++],B|=(J&127)<>>0,offset:Q}}function Jt(A,Q){let B=MM(A,Q);return{value:Dm0(B.value),offset:B.offset}}function Nm0(A,Q,B){if(A==="none")return Q;if(A==="gzip")return Im0(Q,{level:Math.min(9,Math.max(0,B))});return Em0(Q,{params:{[mk.BROTLI_PARAM_MODE]:mk.BROTLI_MODE_GENERIC,[mk.BROTLI_PARAM_QUALITY]:Math.min(11,Math.max(0,B)),[mk.BROTLI_PARAM_SIZE_HINT]:Q.byteLength}})}function Lm0(A,Q){if(A==="none")return Q;if(A==="gzip")return Vm0(Q);return Km0(Q)}function Ct(A,Q){if(!Number.isSafeInteger(A))l.fatalError(`WorldMapChunkCacheCodec: ${Q} must be a safe integer.`)}function FSQ(A){if(!A)return;if(Array.isArray(A))return A;if(ZSQ(A))return Object.values(A);return}class o8{static _writeHeader(A){let Q=Buffer.allocUnsafe(_V);return kV.copy(Q,0),Q.writeUInt8(NM,8),Q.writeUInt8(GSQ(A),9),Q.writeUInt16LE(0,10),Q}static isWorldMapChunkCache(A){if(!ZSQ(A))return!1;if(typeof A.data!=="string")return!1;if(A.format==="hytopia.worldmap.chunk-cache")return!0;try{let Q=Buffer.from(A.data.slice(0,24),"base64");if(Q.byteLength<8)return!1;return Q.subarray(0,8).equals(kV)}catch{return!1}}static create(A,Q={}){let B=Q.algorithm??"brotli",Y=Q.level??6,{encoded:J}=this._encodeBody(A,{includeRotations:Q.includeRotations,sourceSha256:Q.sourceSha256}),C=this._writeHeader(B),X=Nm0(B,J,Y),G=Buffer.concat([C,X]);return{format:"hytopia.worldmap.chunk-cache",codecVersion:1,version:"1.0.0",algorithm:B,data:G.toString("base64")}}static decode(A){let Q=this._decodeFile(A),B=this._decodeMetadata(Q.body),Y=B.metadata.options?.rotations===!0,J=B.chunkCount,C=B.offset,X=this._decodeChunks(Q.body,C,J,Y);return{metadata:B.metadata,chunks:X}}static decodeMetadata(A){let Q=this._decodeFile(A);return this._decodeMetadata(Q.body).metadata}static decodeChunks(A){let Q=this._decodeFile(A),B=this._decodeMetadata(Q.body),Y=B.metadata.options?.rotations===!0;return this._decodeChunks(Q.body,B.offset,B.chunkCount,Y)}static decompressToWorldMap(A){let{metadata:Q,chunks:B}=this.decode(A),Y={},J=Q.options?.rotations===!0;for(let C of B){let X=C.originCoordinate;for(let G=0;G=c9)l.fatalError(`WorldMapChunkCacheCodec.decode(): Invalid block index ${L} (expected 0-${c9-1}).`);let z=A.readUInt8(J++),M=Hm0[z];if(!M)l.fatalError(`WorldMapChunkCacheCodec.decode(): Invalid rotation enumIndex ${z}.`);K.set(L,M)}}yield{originCoordinate:{x:W,y:F,z:Z},blocks:E,blockRotations:K}}}return C()}static _encodeBody(A,Q){let B=new Map,Y=!1,J=(I,V,H)=>{if(Ct(I.x,"block x"),Ct(I.y,"block y"),Ct(I.z,"block z"),!Number.isInteger(V)||V<0||V>255)l.fatalError(`WorldMapChunkCacheCodec: Invalid block type id ${V} (expected 0-255).`);if(!Number.isInteger(H)||H<0||H>255)l.fatalError(`WorldMapChunkCacheCodec: Invalid rotation enumIndex ${H} (expected 0-255).`);let D=MY.globalCoordinateToOriginCoordinate(I),L=`${D.x},${D.y},${D.z}`,z=B.get(L);if(!z)z={originCoordinate:D,blocks:new Uint8Array(c9),rotationsByBlockIndex:new Map},B.set(L,z);let M=MY.globalCoordinateToLocalCoordinate(I),N=MY.localCoordinateToBlockIndex(M);if(z.blocks[N]=V,H!==0)z.rotationsByBlockIndex.set(N,H),Y=!0};if(eY.isCompressedWorldMap(A))for(let I of eY.decodeBlockEntries(A))J(I.globalCoordinate,I.blockTypeId,I.blockRotation?.enumIndex??0);else if(A.blocks)for(let I in A.blocks){let V=A.blocks[I],H=typeof V==="number"?V:V.i,D=typeof V==="number"?0:V.r??0,L=I.indexOf(","),z=I.indexOf(",",L+1),M=Number(I.slice(0,L)),N=Number(I.slice(L+1,z)),q=Number(I.slice(z+1));J({x:M,y:N,z:q},H,D)}let C=Q.includeRotations??Y;if(!C&&Y)l.fatalError("WorldMapChunkCacheCodec: Map contains rotated blocks but includeRotations is false.");let X=C&&Y,G={blockTypes:FSQ(A.blockTypes),entities:A.entities,options:{rotations:X},source:Q.sourceSha256?{sha256:Q.sourceSha256}:void 0,metadata:eY.isCompressedWorldMap(A)?A.metadata:void 0,mapVersion:eY.isCompressedWorldMap(A)?A.mapVersion:void 0},W=Buffer.from(JSON.stringify(G),"utf8"),F=B.size,Z=Array.from(B.values());Z.sort((I,V)=>I.originCoordinate.y-V.originCoordinate.y||I.originCoordinate.x-V.originCoordinate.x||I.originCoordinate.z-V.originCoordinate.z);let U=0;for(let I of Z)if(U+=Bt(I.originCoordinate.x),U+=Bt(I.originCoordinate.y),U+=Bt(I.originCoordinate.z),U+=c9,X){let V=Array.from(I.rotationsByBlockIndex.entries());U+=LM(V.length);for(let[H]of V)U+=LM(H),U+=1}let $=LM(W.byteLength)+W.byteLength+LM(F)+U,E=Buffer.allocUnsafe($),K=0;K=qM(E,K,W.byteLength),W.copy(E,K),K+=W.byteLength,K=qM(E,K,F);for(let I of Z)if(K=Yt(E,K,I.originCoordinate.x),K=Yt(E,K,I.originCoordinate.y),K=Yt(E,K,I.originCoordinate.z),E.set(I.blocks,K),K+=c9,X){let V=Array.from(I.rotationsByBlockIndex.entries());V.sort((H,D)=>H[0]-D[0]),K=qM(E,K,V.length);for(let[H,D]of V)K=qM(E,K,H),E.writeUInt8(D,K++)}return{encoded:E,hasRotations:X}}}import IF from"fs";import qm0 from"path";import Mm0 from"crypto";function zm0(A){let Q=Mm0.createHash("sha256");return Q.update(A),Q.digest("hex")}function Wt(A){return A!==null&&typeof A==="object"}function Xt(A){return Wt(A)&&Object.keys(A).length>0}function Gt(A){if(!A)return!1;if(Array.isArray(A))return A.length>0;if(Wt(A))return Object.keys(A).length>0;return!1}function Rm0(A){if(!IF.existsSync(A))return;try{return JSON.parse(IF.readFileSync(A,"utf-8"))}catch{return}}function USQ(A){if(eY.isCompressedWorldMap(A))return{blockTypes:A.blockTypes,entities:A.entities};if(!Wt(A))return{};return{blockTypes:A.blockTypes,entities:A.entities}}class vV{static load(A,Q={}){let B=Q.preferChunkCache??!0,Y=qm0.resolve(process.cwd(),A),J=Y.endsWith(".chunks.bin"),C=Q.warnings??"auto",X=C==="always"||C==="auto"&&process.env.NODE_ENV!=="production",G=(Z)=>{if(X)l.warning(Z)};if(B){if(J&&!IF.existsSync(Y))l.fatalError(`WorldMapFileLoader.load(): Chunk cache file not found at ${Y}.`);let Z=Y;if(Y.endsWith(".compressed.json"))Z=Y.slice(0,-16);else if(Y.endsWith(".chunks.bin"))Z=Y.slice(0,-11);else if(Y.endsWith(".json"))Z=Y.slice(0,-5);let U=Z+".chunks.bin";if(IF.existsSync(U)){let $=IF.readFileSync(U);if($.byteLength>=_V&&$.subarray(0,8).equals(kV)&&$.readUInt8(8)===NM){let K={data:$.toString("base64")};try{let I=o8.decodeMetadata(K),V=I.source?.sha256,H=!Xt(I.entities),D=!Gt(I.blockTypes),L=H||D,z,M,N,q,w=()=>{let j=H&&z,k=D&&N;if(!j&&!k)return K;if(j&&M)G(`WorldMapFileLoader.load(): Chunk cache at ${U} missing entities; using entities overlay from ${M}.`);if(k&&q)G(`WorldMapFileLoader.load(): Chunk cache at ${U} missing blockTypes; using blockTypes overlay from ${q}.`);return{...K,...j?{entities:z}:{},...k?{blockTypes:N}:{}}},P=(j)=>{if(!L)return;let k=Rm0(j);if(!k)return;let T=USQ(k);if(!z&&Xt(T.entities))z=T.entities,M=j;if(!N&&Gt(T.blockTypes))N=T.blockTypes,q=j},_=(j,k)=>{if(!L)return;try{let T=JSON.parse(j),S=USQ(T);if(!z&&Xt(S.entities))z=S.entities,M=k;if(!N&&Gt(S.blockTypes))N=S.blockTypes,q=k}catch{}};if(V){let j=Y.endsWith(".compressed.json")?Y:Z+".compressed.json";if(IF.existsSync(j)){let k=IF.readFileSync(j,"utf-8");if(zm0(k)===V)return _(k,j),w();G(`WorldMapFileLoader.load(): Chunk cache sha256 mismatch for ${U}; ignoring cache and falling back to JSON.`)}else return G(`WorldMapFileLoader.load(): Chunk cache has source sha256, but ${j} is missing; using cache without validation.`),P(Z+".compressed.json"),P(Z+".json"),w()}else return P(Z+".compressed.json"),P(Z+".json"),w()}catch{if(J)l.fatalError(`WorldMapFileLoader.load(): Failed to decode chunk cache metadata for ${U}.`);G(`WorldMapFileLoader.load(): Failed to decode chunk cache metadata for ${U}; ignoring cache and falling back to JSON.`)}}else if(J)l.fatalError(`WorldMapFileLoader.load(): Invalid chunk cache at ${U}.`)}}if(J)l.fatalError(`WorldMapFileLoader.load(): Failed to load chunk cache at ${Y}.`);let W=IF.readFileSync(Y,"utf-8"),F=JSON.parse(W);if(o8.isWorldMapChunkCache(F))return F;if(eY.isCompressedWorldMap(F))return F;if(F&&typeof F==="object")return F;l.fatalError(`WorldMapFileLoader.load(): Unsupported map file format at ${Y}.`)}}var At;(($)=>{$.SET_AMBIENT_LIGHT_COLOR="WORLD.SET_AMBIENT_LIGHT_COLOR";$.SET_AMBIENT_LIGHT_INTENSITY="WORLD.SET_AMBIENT_LIGHT_INTENSITY";$.SET_DIRECTIONAL_LIGHT_COLOR="WORLD.SET_DIRECTIONAL_LIGHT_COLOR";$.SET_DIRECTIONAL_LIGHT_INTENSITY="WORLD.SET_DIRECTIONAL_LIGHT_INTENSITY";$.SET_DIRECTIONAL_LIGHT_POSITION="WORLD.SET_DIRECTIONAL_LIGHT_POSITION";$.SET_FOG_COLOR="WORLD.SET_FOG_COLOR";$.SET_FOG_FAR="WORLD.SET_FOG_FAR";$.SET_FOG_NEAR="WORLD.SET_FOG_NEAR";$.SET_SKYBOX_INTENSITY="WORLD.SET_SKYBOX_INTENSITY";$.SET_SKYBOX_URI="WORLD.SET_SKYBOX_URI";$.START="WORLD.START";$.STOP="WORLD.STOP"})(At||={});class zM extends BQ{_id;_ambientLightColor;_ambientLightIntensity;_audioManager;_blockTypeRegistry;_chatManager;_chunkLattice;_directionalLightColor;_directionalLightIntensity;_directionalLightPosition;_entityManager;_fogColor;_fogFar;_fogNear;_loop;_name;_networkSynchronizer;_particleEmitterManager;_sceneUIManager;_simulation;_skyboxIntensity;_skyboxUri;_tag;constructor(A){super();if(this._id=A.id,this._ambientLightColor=A.ambientLightColor??{r:255,g:255,b:255},this._ambientLightIntensity=A.ambientLightIntensity??1,this._directionalLightColor=A.directionalLightColor??{r:255,g:255,b:255},this._directionalLightIntensity=A.directionalLightIntensity??3,this._directionalLightPosition=A.directionalLightPosition??{x:100,y:150,z:100},this._fogColor=A.fogColor,this._fogFar=A.fogFar??550,this._fogNear=A.fogNear??500,this._name=A.name,this._skyboxIntensity=A.skyboxIntensity??1,this._skyboxUri=A.skyboxUri,this._tag=A.tag,this._audioManager=new UD(this),this._blockTypeRegistry=new ED(this),this._chatManager=new eD(this),this._chunkLattice=new QN(this),this._entityManager=new JN(this),this._loop=new EM(this,A.tickRate),this._networkSynchronizer=new fk(this),this._particleEmitterManager=new KM(this),this._sceneUIManager=new VM(this),this._simulation=new UM(this,A.tickRate,A.gravity),A.map)this.loadMap(A.map)}get id(){return this._id}get ambientLightColor(){return this._ambientLightColor}get ambientLightIntensity(){return this._ambientLightIntensity}get blockTypeRegistry(){return this._blockTypeRegistry}get chatManager(){return this._chatManager}get chunkLattice(){return this._chunkLattice}get directionalLightColor(){return this._directionalLightColor}get directionalLightIntensity(){return this._directionalLightIntensity}get directionalLightPosition(){return this._directionalLightPosition}get entityManager(){return this._entityManager}get fogColor(){return this._fogColor}get fogFar(){return this._fogFar}get fogNear(){return this._fogNear}get loop(){return this._loop}get name(){return this._name}get networkSynchronizer(){return this._networkSynchronizer}get particleEmitterManager(){return this._particleEmitterManager}get sceneUIManager(){return this._sceneUIManager}get simulation(){return this._simulation}get skyboxIntensity(){return this._skyboxIntensity}get skyboxUri(){return this._skyboxUri}get audioManager(){return this._audioManager}get tag(){return this._tag}loadMap(A,Q={}){if(typeof A==="string")A=vV.load(A);if((Q.preferMapArtifacts??!0)&&!eY.isCompressedWorldMap(A)&&!o8.isWorldMapChunkCache(A)&&typeof A==="object"&&A!==null&&"blocks"in A){let C=wm0.resolve(process.cwd(),"assets/map"),X=C+".chunks.bin",G=C+".compressed.json",W=C+".json";if(Ft.existsSync(W)&&(Ft.existsSync(X)||Ft.existsSync(G)))A=vV.load("assets/map.json")}if(eY.isCompressedWorldMap(A))A=eY.decompressToWorldMap(A);else if(o8.isWorldMapChunkCache(A))A=o8.decompressToWorldMap(A);this.chunkLattice.clear();let Y=Object.values(w8).sort((C,X)=>C.enumIndex-X.enumIndex);if(A.blockTypes)for(let C of A.blockTypes)this.blockTypeRegistry.registerGenericBlockType({id:C.id,isLiquid:C.isLiquid,lightLevel:C.lightLevel,name:C.name,textureUri:C.textureUri,customColliderOptions:C.customColliderOptions});if(A.blocks){let C=A.blocks,X=function*(){for(let G in C){let W=C[G],F=typeof W==="number"?W:W.i,Z=typeof W==="number"?void 0:W.r,U=G.indexOf(","),$=G.indexOf(",",U+1);yield{globalCoordinate:{x:Number(G.slice(0,U)),y:Number(G.slice(U+1,$)),z:Number(G.slice($+1))},blockTypeId:F,blockRotation:Z!==void 0?Y[Z]:void 0}}};this.chunkLattice.initializeBlockEntries(X())}if((Q.spawnEntities??!0)&&A.entities)for(let C in A.entities){let X=A.entities[C],G=C.indexOf(","),W=C.indexOf(",",G+1),F=Number(C.slice(0,G)),Z=Number(C.slice(G+1,W)),U=Number(C.slice(W+1));new X0({isEnvironmental:!0,...X}).spawn(this,{x:F,y:Z,z:U})}}setAmbientLightColor(A){this._ambientLightColor=A,this.emit("WORLD.SET_AMBIENT_LIGHT_COLOR",{world:this,color:A})}setAmbientLightIntensity(A){this._ambientLightIntensity=A,this.emit("WORLD.SET_AMBIENT_LIGHT_INTENSITY",{world:this,intensity:A})}setDirectionalLightColor(A){this._directionalLightColor=A,this.emit("WORLD.SET_DIRECTIONAL_LIGHT_COLOR",{world:this,color:A})}setDirectionalLightIntensity(A){this._directionalLightIntensity=A,this.emit("WORLD.SET_DIRECTIONAL_LIGHT_INTENSITY",{world:this,intensity:A})}setDirectionalLightPosition(A){this._directionalLightPosition=A,this.emit("WORLD.SET_DIRECTIONAL_LIGHT_POSITION",{world:this,position:A})}setFogColor(A){this._fogColor=A,this.emit("WORLD.SET_FOG_COLOR",{world:this,color:A})}setFogFar(A){this._fogFar=A,this.emit("WORLD.SET_FOG_FAR",{world:this,far:A})}setFogNear(A){this._fogNear=A,this.emit("WORLD.SET_FOG_NEAR",{world:this,near:A})}setSkyboxIntensity(A){this._skyboxIntensity=A,this.emit("WORLD.SET_SKYBOX_INTENSITY",{world:this,intensity:A})}setSkyboxUri(A){this._skyboxUri=A,this.emit("WORLD.SET_SKYBOX_URI",{world:this,uri:A})}start(){if(this._loop.isStarted)return;this._loop.start(),this.emit("WORLD.START",{world:this,startedAtMs:Date.now()})}stop(){if(!this._loop.isStarted)return;this._loop.stop(),this.emit("WORLD.STOP",{world:this,stoppedAtMs:Date.now()})}serialize(){return GQ.serializeWorld(this)}}var ESQ;((Q)=>Q.WORLD_CREATED="WORLD_MANAGER.WORLD_CREATED")(ESQ||={});class F0{static instance=new F0;_defaultWorld;_nextWorldId=1;_worlds=new Map;createWorld(A){let Q=new zM({...A,id:this._nextWorldId++});return Q.start(),this._worlds.set(Q.id,Q),BQ.globalInstance.emit("WORLD_MANAGER.WORLD_CREATED",{world:Q}),Q}getAllWorlds(){return Array.from(this._worlds.values())}getDefaultWorld(){return this._defaultWorld??=this.createWorld({name:"Default World",skyboxUri:"skyboxes/partly-cloudy"}),this._defaultWorld}getWorldsByTag(A){let Q=[];return this._worlds.forEach((B)=>{if(B.tag===A)Q.push(B)}),Q}getWorld(A){return this._worlds.get(A)}setDefaultWorld(A){this._defaultWorld=A}}function Zt(A,Q,B){return Math.max(Q,Math.min(B,Math.floor(A)))}function jm0(A,Q){if(A.blockTypeRegistry.getAllBlockTypes().some((Y)=>Y.id===Q))return;A.blockTypeRegistry.registerGenericBlockType({id:Q,name:`perf-block-${Q}`,textureUri:"blocks/stone.png"})}function Om0(A){if(typeof A==="number"){let Q=F0.instance.getWorld(Math.floor(A));if(Q)return Q}return F0.instance.getDefaultWorld()}function Pm0(A){return Math.max(1,Math.ceil(Math.sqrt(A)))}function Tm0(A,Q,B){if(B<=0)return;if(B>=c9){A.fill(Q);return}A.fill(0),A.fill(Q,0,B)}function Sm0(A,Q,B,Y){A.fill(0);let J=d9*B*d9,C=Math.max(0,Math.min(J,Y));if(C===0)return;let X=C;for(let G=0;G0;G++){let W=G<0;F++){let Z=W+(F<{if(Y+=C.length,Y>km0){mB(Q,413,{ok:!1,error:"Request body too large"}),A.destroy();return}J.push(C)}),A.on("error",()=>{mB(Q,400,{ok:!1,error:"Failed to read request body"})}),A.on("end",()=>{try{let C=Buffer.concat(J).toString("utf-8"),X=C.length>0?JSON.parse(C):{};B(X)}catch{mB(Q,400,{ok:!1,error:"Invalid JSON body"})}})}function DSQ(A){let Q=KSQ.resolve("assets"),B=A.trim().replace(/^\/+/,"").replace(/^assets[\\/]/,""),Y=KSQ.resolve(Q,B);if(!Y.startsWith(Q))return null;return Y}function ym0(A){switch((A??"").toLowerCase()){case"":case"idle":return new GE;case"random_walk":case"randomwalk":return new WD;case"chase":return new FD;case"interact":return new ZD;default:return null}}function gm0(A,Q){let B=F0.instance.getDefaultWorld(),Y=Math.max(0,Math.floor(A)),J={x:0,y:10,z:0},C=Math.ceil(Math.sqrt(Y))*2;for(let X=0;X=0&&Y0){let X=DSQ(Q);if(!X)throw Error("Invalid mapPath");if(!lk.existsSync(X))throw Error(`Map not found: ${Q}`);J=lk.readFileSync(X,"utf-8")}let C=[];for(let X=0;X0)F0.instance.setDefaultWorld(C[0]);return{created:C.length,defaultWorldId:F0.instance.getDefaultWorld().id}}function im0(A){let Q=Math.floor(A),B=F0.instance.getWorld(Q);if(!B)throw Error(`World not found: ${Q}`);return F0.instance.setDefaultWorld(B),{ok:!0,defaultWorldId:B.id}}function nm0(){let A=F0.instance.getDefaultWorld();LSQ(),G9.instance.despawnAll();for(let Q of A.entityManager.getEntitiesByTagSubstring(yV))Q.despawn();return A.chunkLattice.clear(),{ok:!0}}class RM{static enableIfConfigured(){if(!VSQ())return;try{if(!O0.instance.isEnabled)O0.instance.enable({snapshotIntervalMs:0});if(!$Y.instance.isEnabled)$Y.instance.enable()}catch(A){l.warning(`PerfHarness.enableIfConfigured(): Failed to enable perf tools. Error: ${String(A)}`)}}static handleWebRequest(A,Q){if(!VSQ())return!1;let B=A.url?.split("?")[0]??"/";if(!B.startsWith(`${dk}/`))return!1;if(!_m0(A))return mB(Q,401,{ok:!1,error:"Unauthorized"}),!0;let Y=A.method??"GET";if(Y==="GET"&&B===`${dk}/snapshot`){let J=O0.instance.getSnapshot(),C=$Y.instance.isEnabled?$Y.instance.getSnapshot():void 0,X=F0.instance.getDefaultWorld();return mB(Q,200,{...J,timestamp:Date.now(),players:dJ.instance.playerCount,bots:G9.instance.botCount,worlds:{count:F0.instance.getAllWorlds().length,defaultWorldId:X.id},world:{id:X.id,chunkCount:X.chunkLattice.chunkCount,entityCount:X.entityManager.entityCount},blockChurn:{running:Kt.isRunning},network:C}),!0}if(Y==="POST"&&B===`${dk}/reset`)return O0.instance.resetStats(),$Y.instance.reset(),mB(Q,200,{ok:!0}),!0;if(Y==="POST"&&B===`${dk}/action`)return vm0(A,Q,(J)=>{try{let C=J;switch(C.type){case"spawn_bots":{if(typeof C.count!=="number")return mB(Q,400,{ok:!1,error:'"count" is required'});let X=gm0(C.count,typeof C.behavior==="string"?C.behavior:void 0);mB(Q,200,{ok:!0,result:X});return}case"despawn_bots":{let X=xm0(typeof C.count==="number"?C.count:void 0);mB(Q,200,{ok:!0,result:X});return}case"load_map":{if(typeof C.mapPath!=="string")return mB(Q,400,{ok:!1,error:'"mapPath" is required'});let X=fm0(C.mapPath,typeof C.worldId==="number"?C.worldId:void 0);mB(Q,200,{ok:!0,result:X});return}case"generate_blocks":{if(typeof C.blockCount!=="number")return mB(Q,400,{ok:!1,error:'"blockCount" is required'});if(typeof C.blockTypeId!=="number")return mB(Q,400,{ok:!1,error:'"blockTypeId" is required'});let X=bm0(C.blockCount,C.blockTypeId,typeof C.worldId==="number"?C.worldId:void 0,C.layout==="dense"||C.layout==="slab"?C.layout:void 0,typeof C.slabHeight==="number"?C.slabHeight:void 0,Vt(C.origin),typeof C.clear==="boolean"?C.clear:void 0);mB(Q,200,{ok:!0,result:X});return}case"spawn_entities":{if(typeof C.count!=="number")return mB(Q,400,{ok:!1,error:'"count" is required'});let X=mm0(C.count,C.kind==="model"||C.kind==="block"?C.kind:void 0,typeof C.options==="object"&&C.options?C.options:void 0,typeof C.tag==="string"?C.tag:void 0);mB(Q,200,{ok:!0,result:X});return}case"despawn_entities":{let X=um0(typeof C.tag==="string"?C.tag:void 0);mB(Q,200,{ok:!0,result:X});return}case"start_block_churn":{if(typeof C.blocksPerTick!=="number")return mB(Q,400,{ok:!1,error:'"blocksPerTick" is required'});if(typeof C.blockTypeId!=="number")return mB(Q,400,{ok:!1,error:'"blockTypeId" is required'});let X=lm0(C.blocksPerTick,C.blockTypeId,C.mode,C.min,C.max);mB(Q,200,{ok:!0,result:X});return}case"stop_block_churn":{let X=LSQ();mB(Q,200,{ok:!0,result:X});return}case"create_worlds":{if(typeof C.count!=="number")return mB(Q,400,{ok:!1,error:'"count" is required'});let X=pm0(C.count,typeof C.mapPath==="string"?C.mapPath:void 0,typeof C.setDefault==="boolean"?C.setDefault:void 0);mB(Q,200,{ok:!0,result:X});return}case"set_default_world":{if(typeof C.worldId!=="number")return mB(Q,400,{ok:!1,error:'"worldId" is required'});let X=im0(C.worldId);mB(Q,200,{ok:!0,result:X});return}case"clear_world":{let X=nm0();mB(Q,200,{ok:!0,result:X});return}case"reset":{O0.instance.resetStats(),$Y.instance.reset(),mB(Q,200,{ok:!0});return}default:mB(Q,400,{ok:!1,error:`Unsupported action: ${String(C.type)}`})}}catch(C){mB(Q,500,{ok:!1,error:C.message})}}),!0;return mB(Q,404,{ok:!1,error:"Not found"}),!0}}var pk=`-----BEGIN CERTIFICATE----- +`);let{connect:W,buffered:F}=await G;if(A.emit("proxyConnect",W),this.emit("proxyConnect",W,A),W.statusCode===200){if(A.once("socket",aR0),Q.secureEndpoint){Xq("Upgrading socket connection to TLS");let U=Q.servername||Q.host;return rs.connect({...OqQ(Q,"host","path","port"),socket:Y,servername:SG.isIP(U)?void 0:U})}return Y}Y.destroy();let Z=new SG.Socket({writable:!1});return Z.readable=!0,A.once("socket",(U)=>{Xq("Replaying proxy buffer for failed request"),U.push(F),U.push(null)}),Z}}nT.__initStatic();function aR0(A){A.resume()}function OqQ(A,...Q){let B={},Y;for(Y in A)if(!Q.includes(Y))B[Y]=A[Y];return B}var Qw0=32768;function Bw0(A){return new eR0({read(){this.push(A),this.push(null)}})}function sT(A){let Q;try{Q=new URL(A.url)}catch(W){return f0(()=>{console.warn("[@sentry/node]: Invalid dsn or tunnel option, will not send any events. The tunnel option must be a full URL when used.")}),nE(A,()=>Promise.resolve({}))}let B=Q.protocol==="https:",Y=Yw0(Q,A.proxy||(B?process.env.https_proxy:void 0)||process.env.http_proxy),J=B?tR0:oR0,C=A.keepAlive===void 0?!1:A.keepAlive,X=Y?new nT(Y):new J.Agent({keepAlive:C,maxSockets:30,timeout:2000}),G=Jw0(A,A.httpModule??J,X);return nE(A,G)}function Yw0(A,Q){let{no_proxy:B}=process.env;if(B?.split(",").some((J)=>A.host.endsWith(J)||A.hostname.endsWith(J)))return;else return Q}function Jw0(A,Q,B){let{hostname:Y,pathname:J,port:C,protocol:X,search:G}=new URL(A.url);return function(F){return new Promise((Z,U)=>{ON(()=>{let $=Bw0(F.body),E={...A.headers};if(F.body.length>Qw0)E["content-encoding"]="gzip",$=$.pipe(Aw0());let K=Q.request({method:"POST",agent:B,headers:E,hostname:Y,path:`${J}${G}`,port:C,protocol:X,ca:A.caCerts},(I)=>{I.on("data",()=>{}),I.on("end",()=>{}),I.setEncoding("utf8");let V=I.headers["retry-after"]??null,H=I.headers["x-sentry-rate-limits"]??null;Z({statusCode:I.statusCode,headers:{"retry-after":V,"x-sentry-rate-limits":Array.isArray(H)?H[0]||null:H}})});K.on("error",U),$.pipe(K)})})}}var Cw0=new Set(["false","f","n","no","off","0"]),Xw0=new Set(["true","t","y","yes","on","1"]);function rT(A,Q){let B=String(A).toLowerCase();if(Cw0.has(B))return!1;if(Xw0.has(B))return!0;return Q?.strict?null:Boolean(A)}import{posix as Gw0,sep as Ww0}from"node:path";function PqQ(A){return A.replace(/^[A-Z]:/,"").replace(/\\/g,"/")}function aT(A=process.argv[1]?od(process.argv[1]):process.cwd(),Q=Ww0==="\\"){let B=Q?PqQ(A):A;return(Y)=>{if(!Y)return;let J=Q?PqQ(Y):Y,{dir:C,base:X,ext:G}=Gw0.parse(J);if(G===".js"||G===".mjs"||G===".cjs")X=X.slice(0,G.length*-1);let W=decodeURIComponent(X);if(!C)C=".";let F=C.lastIndexOf("/node_modules");if(F>-1)return`${C.slice(F+14).replace(/\//g,".")}:${W}`;if(C.startsWith(B)){let Z=C.slice(B.length+1).replace(/\//g,".");return Z?`${Z}:${W}`:W}return W}}function oT(A){if(process.env.SENTRY_RELEASE)return process.env.SENTRY_RELEASE;if(AQ.SENTRY_RELEASE?.id)return AQ.SENTRY_RELEASE.id;let Q=process.env.GITHUB_SHA||process.env.CI_MERGE_REQUEST_SOURCE_BRANCH_SHA||process.env.CI_BUILD_REF||process.env.CI_COMMIT_SHA||process.env.BITBUCKET_COMMIT,B=process.env.APPVEYOR_PULL_REQUEST_HEAD_COMMIT||process.env.APPVEYOR_REPO_COMMIT||process.env.CODEBUILD_RESOLVED_SOURCE_VERSION||process.env.AWS_COMMIT_ID||process.env.BUILD_SOURCEVERSION||process.env.GIT_CLONE_COMMIT_HASH||process.env.BUDDY_EXECUTION_REVISION||process.env.BUILDKITE_COMMIT||process.env.CIRCLE_SHA1||process.env.CIRRUS_CHANGE_IN_REPO||process.env.CF_REVISION||process.env.CM_COMMIT||process.env.CF_PAGES_COMMIT_SHA||process.env.DRONE_COMMIT_SHA||process.env.FC_GIT_COMMIT_SHA||process.env.HEROKU_TEST_RUN_COMMIT_VERSION||process.env.HEROKU_SLUG_COMMIT||process.env.RAILWAY_GIT_COMMIT_SHA||process.env.RENDER_GIT_COMMIT||process.env.SEMAPHORE_GIT_SHA||process.env.TRAVIS_PULL_REQUEST_SHA||process.env.VERCEL_GIT_COMMIT_SHA||process.env.VERCEL_GITHUB_COMMIT_SHA||process.env.VERCEL_GITLAB_COMMIT_SHA||process.env.VERCEL_BITBUCKET_COMMIT_SHA||process.env.ZEIT_GITHUB_COMMIT_SHA||process.env.ZEIT_GITLAB_COMMIT_SHA||process.env.ZEIT_BITBUCKET_COMMIT_SHA,Y=process.env.CI_COMMIT_ID||process.env.SOURCE_COMMIT||process.env.SOURCE_VERSION||process.env.GIT_COMMIT||process.env.COMMIT_REF||process.env.BUILD_VCS_NUMBER||process.env.CI_COMMIT_SHA;return Q||B||Y||A}var tT=jj(Fc(aT()));var SqQ=qA(yA(),1),kqQ=qA(NB(),1);import*as TqQ from"node:os";import{threadId as Fw0,isMainThread as Zw0}from"worker_threads";var $w0=60000;class Gq extends uj{constructor(A){let Q=A.serverName||global.process.env.SENTRY_NAME||TqQ.hostname(),B={...A,platform:"node",runtime:{name:"node",version:global.process.version},serverName:Q};if(A.openTelemetryInstrumentations)kqQ.registerInstrumentations({instrumentations:A.openTelemetryInstrumentations});dd(B,"node"),e.log(`Initializing Sentry: process: ${process.pid}, thread: ${Zw0?"main":`worker-${Fw0}`}.`);super(B);if(this.getOptions()._experiments?.enableLogs){if(this._logOnExitFlushListener=()=>{WW(this)},Q)this.on("beforeCaptureLog",(Y)=>{Y.attributes={...Y.attributes,"server.address":Q}});process.on("beforeExit",this._logOnExitFlushListener)}}get tracer(){if(this._tracer)return this._tracer;let A="@sentry/node",Q=l0,B=SqQ.trace.getTracer(A,Q);return this._tracer=B,B}async flush(A){let B=this.traceProvider?.activeSpanProcessor;if(B)await B.forceFlush();if(this.getOptions().sendClientReports)this._flushOutcomes();return super.flush(A)}close(A){if(this._clientReportInterval)clearInterval(this._clientReportInterval);if(this._clientReportOnExitFlushListener)process.off("beforeExit",this._clientReportOnExitFlushListener);if(this._logOnExitFlushListener)process.off("beforeExit",this._logOnExitFlushListener);return super.close(A)}startClientReportTracking(){let A=this.getOptions();if(A.sendClientReports)this._clientReportOnExitFlushListener=()=>{this._flushOutcomes()},this._clientReportInterval=setInterval(()=>{fQ&&e.log("Flushing client reports based on interval."),this._flushOutcomes()},A.clientReportFlushInterval??$w0).unref(),process.on("beforeExit",this._clientReportOnExitFlushListener)}_getTraceInfoFromScope(A){if(!A)return[void 0,void 0];return o$Q(this,A)}}var V1=qA(yA(),1),_qQ=qA(Ti(),1),vqQ=qA(_i(),1),dK=qA(dB(),1);var yqQ=qA(up(),1);import Uw0 from"module";var as=1e6;function eT(A,Q={}){if(A.getOptions().debug)hqQ();let B=Kw0(A,Q);A.traceProvider=B}function os(){let[A=0,Q=0]=process.versions.node.split(".").map(Number);if(A>=21||A===20&&Q>=6||A===18&&Q>=19){if(!AQ._sentryEsmLoaderHookRegistered)try{let{addHookMessagePort:B}=yqQ.createAddHookMessageChannel();Uw0.register("import-in-the-middle/hook.mjs",import.meta.url,{data:{addHookMessagePort:B,include:[]},transferList:[B]})}catch(B){e.warn("Failed to register ESM hook",B)}}else f0(()=>{console.warn(`[Sentry] You are using Node.js v${process.versions.node} in ESM mode ("import syntax"). The Sentry Node.js SDK is not compatible with ESM in Node.js versions before 18.19.0 or before 20.6.0. Please either build your application with CommonJS ("require() syntax"), or upgrade your Node.js version.`)})}function gqQ(A={}){let{debug:Q}=A;if(Q)e.enable(),hqQ();if(!a5())os();Ew0(A.integrations).forEach((B)=>{if(B(),Q)e.log(`[Sentry] Preloaded ${B.id} instrumentation`)})}function Ew0(A){let Q=wqQ();if(!A)return Q;return Q.filter((B)=>A.includes(B.id))}function Kw0(A,Q={}){let B=new vqQ.BasicTracerProvider({sampler:new ti(A),resource:new _qQ.Resource({[dK.ATTR_SERVICE_NAME]:"node",[dK.SEMRESATTRS_SERVICE_NAMESPACE]:"sentry",[dK.ATTR_SERVICE_VERSION]:l0}),forceFlushTimeoutMillis:500,spanProcessors:[new oi({timeout:Vw0(A.getOptions().maxSpanWaitDuration)}),...Q.spanProcessors||[]]});return V1.trace.setGlobalTracerProvider(B),V1.propagation.setGlobalPropagator(new ii),V1.context.setGlobalContextManager(new lT),B}function Vw0(A){if(A==null)return;if(A>as)return fQ&&e.warn(`\`maxSpanWaitDuration\` is too high, using the maximum value of ${as}`),as;else if(A<=0||Number.isNaN(A)){fQ&&e.warn("`maxSpanWaitDuration` must be a positive number, using default value instead.");return}return A}function hqQ(){let A=new Proxy(e,{get(Q,B,Y){return Reflect.get(Q,B==="verbose"?"debug":B,Y)}});V1.diag.disable(),V1.diag.setLogger(A,V1.DiagLogLevel.DEBUG)}function Iw0(){return a5()?[hP()]:[]}function ts(){return[gN(),yN(),hN(),xN(),fN(),RP(),PP(),xP(),fP(),_P(),gP(),kP(),dT(),RqQ(),...Iw0()]}function es(A){return[...ts(),...U9(A)?pT():[]]}function AS(A={}){return fqQ(A,es)}function xqQ(A={}){return fqQ(A,()=>[])}function fqQ(A={},Q){let B=Hw0(A,Q);if(B.debug===!0)if(fQ)e.enable();else f0(()=>{console.warn("[Sentry] Cannot initialize SDK with `debug` option using a non-debug bundle.")});if(!a5()&&B.registerEsmLoaderHooks!==!1)os();if(LP(),sQ().update(B.initialScope),B.spotlight&&!B.integrations.some(({name:C})=>C===ys))B.integrations.push(ST({sidecarUrl:typeof B.spotlight==="string"?B.spotlight:void 0}));let J=new Gq(B);if(sQ().setClient(J),J.init(),e.log(`Running in ${a5()?"CommonJS":"ESM"} mode.`),J.startClientReportTracking(),Lw0(),!B.skipOpenTelemetrySetup)eT(J,{spanProcessors:B.openTelemetrySpanProcessors}),Ar();return d$Q(J),t$Q(J),J}function Ar(){if(!fQ)return;let A=i$Q(),Q=["SentryContextManager","SentryPropagator"];if(U9())Q.push("SentrySpanProcessor");for(let B of Q)if(!A.includes(B))e.error(`You have to set up the ${B}. Without this, the OpenTelemetry & Sentry integration will not work properly.`);if(!A.includes("SentrySampler"))e.warn("You have to set up the SentrySampler. Without this, the OpenTelemetry & Sentry integration may still work, but sample rates set for the Sentry SDK will not be respected. If you use a custom sampler, make sure to use `wrapSamplingDecision`.")}function Hw0(A,Q){let B=Dw0(A.release),Y=A.spotlight??rT(process.env.SENTRY_SPOTLIGHT,{strict:!0})??process.env.SENTRY_SPOTLIGHT,J=Nw0(A.tracesSampleRate),C={...A,dsn:A.dsn??process.env.SENTRY_DSN,environment:A.environment??process.env.SENTRY_ENVIRONMENT,sendClientReports:A.sendClientReports??!0,transport:A.transport??sT,stackParser:tu(A.stackParser||tT),release:B,tracesSampleRate:J,spotlight:Y,debug:rT(A.debug??process.env.SENTRY_DEBUG)},X=A.integrations,G=A.defaultIntegrations??Q(C);return{...C,integrations:kd({defaultIntegrations:G,integrations:X})}}function Dw0(A){if(A!==void 0)return A;let Q=oT();if(Q!==void 0)return Q;return}function Nw0(A){if(A!==void 0)return A;let Q=process.env.SENTRY_TRACES_SAMPLE_RATE;if(!Q)return;let B=parseFloat(Q);return isFinite(B)?B:void 0}function Lw0(){if(rT(process.env.SENTRY_USE_ENVIRONMENT)!==!1){let A=process.env.SENTRY_TRACE,Q=process.env.SENTRY_BAGGAGE,B=xZ(A,Q);sQ().setPropagationContext(B)}}var qw0=[["january","1"],["february","2"],["march","3"],["april","4"],["may","5"],["june","6"],["july","7"],["august","8"],["september","9"],["october","10"],["november","11"],["december","12"],["jan","1"],["feb","2"],["mar","3"],["apr","4"],["may","5"],["jun","6"],["jul","7"],["aug","8"],["sep","9"],["oct","10"],["nov","11"],["dec","12"],["sunday","0"],["monday","1"],["tuesday","2"],["wednesday","3"],["thursday","4"],["friday","5"],["saturday","6"],["sun","0"],["mon","1"],["tue","2"],["wed","3"],["thu","4"],["fri","5"],["sat","6"]];function h$(A){return qw0.reduce((Q,[B,Y])=>Q.replace(new RegExp(B,"gi"),Y),A)}var bqQ="Automatic instrumentation of CronJob only supports crontab string";function mqQ(A,Q){let B=!1;return new Proxy(A,{construct(Y,J){let[C,X,G,W,F,...Z]=J;if(typeof C!=="string")throw Error(bqQ);if(B)throw Error(`A job named '${Q}' has already been scheduled`);B=!0;let U=h$(C);async function $(E,K){return GX(Q,async()=>{try{await X(E,K)}catch(I){throw jB(I),I}},{schedule:{type:"crontab",value:U},timezone:F||void 0})}return new Y(C,$,G,W,F,...Z)},get(Y,J){if(J==="from")return(C)=>{let{cronTime:X,onTick:G,timeZone:W}=C;if(typeof X!=="string")throw Error(bqQ);if(B)throw Error(`A job named '${Q}' has already been scheduled`);B=!0;let F=h$(X);return C.onTick=async(Z,U)=>{return GX(Q,async()=>{try{await G(Z,U)}catch($){throw jB($),$}},{schedule:{type:"crontab",value:F},timezone:W||void 0})},Y.from(C)};else return Y[J]}})}function uqQ(A){return new Proxy(A,{get(Q,B){if(B==="schedule"&&Q.schedule)return new Proxy(Q.schedule,{apply(Y,J,C){let[X,G,W]=C,F=W?.name,Z=W?.timezone;if(!F)throw Error('Missing "name" for scheduled job. A name is required for Sentry check-in monitoring.');let U=async()=>{return GX(F,async()=>{try{return await G()}catch($){throw jB($),$}},{schedule:{type:"crontab",value:h$(X)},timezone:Z})};return Y.apply(J,[X,U,W])}});else return Q[B]}})}function dqQ(A){return new Proxy(A,{get(Q,B){if(B==="scheduleJob")return new Proxy(Q.scheduleJob,{apply(Y,J,C){let[X,G,W]=C;if(typeof X!=="string"||typeof G!=="string"||typeof W!=="function")throw Error("Automatic instrumentation of 'node-schedule' requires the first parameter of 'scheduleJob' to be a job name string and the second parameter to be a crontab string");let F=X,Z=G;async function U(){return GX(F,async()=>{await W?.()},{schedule:{type:"crontab",value:h$(Z)}})}return Y.apply(J,[F,Z,U])}});return Q[B]}})}var cqQ={instrumentCron:mqQ,instrumentNodeCron:uqQ,instrumentNodeSchedule:dqQ};import qSQ from"fs";import sm0 from"http2";import It from"path";var EaY=r$(),kb0=$q(),KaY=JV(),VaY=YRQ(),_b0=t$(),IaY=Ka(),HaY=SRQ(),DaY=xRQ(),NaY=uRQ(),vb0=QB(),hk=lQ(),{InvalidArgumentError:gk}=vb0,SV=TwQ(),LaY=Eq(),qaY=ma(),{MockCallHistory:MaY,MockCallHistoryLog:zaY}=ca(),RaY=aa(),waY=ia(),jaY=yjQ(),OaY=ja(),PaY=uS(),{getGlobalDispatcher:yb0,setGlobalDispatcher:gb0}=Ak(),TaY=KV(),SaY=Co();Object.assign(kb0.prototype,SV);var no=_b0;var bb0={redirect:pjQ(),responseError:sjQ(),retry:ajQ(),dump:ejQ(),dns:YOQ(),cache:zOQ(),decompress:SOQ()},JSQ={MemoryCacheStore:Go()};var hb0=_OQ();JSQ.SqliteCacheStore=hb0;var mb0={parseHeaders:hk.parseHeaders,headerNameToString:hk.headerNameToString};function FM(A){return(Q,B,Y)=>{if(typeof B==="function")Y=B,B=null;if(!Q||typeof Q!=="string"&&typeof Q!=="object"&&!(Q instanceof URL))throw new gk("invalid url");if(B!=null&&typeof B!=="object")throw new gk("invalid opts");if(B&&B.path!=null){if(typeof B.path!=="string")throw new gk("invalid opts.path");let X=B.path;if(!B.path.startsWith("/"))X=`/${X}`;Q=new URL(hk.parseOrigin(Q).origin+X)}else{if(!B)B=typeof Q==="object"?Q:{};Q=hk.parseURL(Q)}let{agent:J,dispatcher:C=yb0()}=B;if(J)throw new gk("unsupported opts.agent. Did you mean opts.client?");return A.call(C,{...B,origin:Q.origin,path:Q.search?`${Q.pathname}${Q.search}`:Q.pathname,method:B.method||(B.body?"PUT":"GET")},Y)}}var so=gb0;var kaY=QM().fetch;var ub0=J4().Headers,db0=eq().Response,cb0=NV().Request,lb0=HS().FormData;var{setGlobalOrigin:_aY,getGlobalOrigin:vaY}=Sr();var{CacheStorage:xb0}=mPQ(),{kConstruct:fb0}=B0();var pb0=new xb0(fb0);var{deleteCookie:yaY,getCookies:gaY,getSetCookies:haY,setCookie:xaY,parseCookie:faY}=ePQ();var{parseMIMEType:baY,serializeAMimeType:maY}=l8();var{CloseEvent:uaY,ErrorEvent:daY,MessageEvent:caY}=Rk(),{WebSocket:laY,ping:paY}=yTQ();var ib0=dTQ().WebSocketStream,nb0=uo().WebSocketError,sb0=FM(SV.request),rb0=FM(SV.stream),ab0=FM(SV.pipeline),ob0=FM(SV.connect),tb0=FM(SV.upgrade);var{EventSource:iaY}=YSQ();import lk from"fs";import KSQ from"path";var eb0=2,Am0=3;class ZM{_accumulatorMs=0;_targetTicksPerSecond;_fixedTimestepMs;_fixedTimestepS;_maxAccumulatorMs;_nextTickMs=0;_lastLoopTimeMs=0;_tickFunction;_tickErrorCallback;_tickHandle=null;constructor(A,Q,B){this._targetTicksPerSecond=A,this._fixedTimestepS=Math.fround(1/A),this._fixedTimestepMs=Math.fround(this._fixedTimestepS*1000),this._maxAccumulatorMs=this._fixedTimestepMs*Am0,this._tickFunction=Q,this._tickErrorCallback=B}get targetTicksPerSecond(){return this._targetTicksPerSecond}get fixedTimestepMs(){return this._fixedTimestepMs}get fixedTimestepS(){return this._fixedTimestepS}get isStarted(){return!!this._tickHandle}get nextTickMs(){return this._nextTickMs}start(){if(this._tickHandle)return;this._lastLoopTimeMs=performance.now();let A=()=>{let Q=performance.now(),B=Q-this._lastLoopTimeMs;if(this._lastLoopTimeMs=Q,this._accumulatorMs+=B,this._accumulatorMs>this._maxAccumulatorMs)this._accumulatorMs=this._maxAccumulatorMs;if(this._accumulatorMs>=this._fixedTimestepMs)AY.startSpan({operation:"ticker_tick"},()=>{let Y=0;while(this._accumulatorMs>=this._fixedTimestepMs&&Y{J.STEP_START="SIMULATION.STEP_START";J.STEP_END="SIMULATION.STEP_END";J.DEBUG_RAYCAST="SIMULATION.DEBUG_RAYCAST";J.DEBUG_RENDER="SIMULATION.DEBUG_RENDER"})(ro||={});class UM extends BQ{_colliderMap=new BN;_debugRaycastingEnabled=!1;_debugRenderingEnabled=!1;_debugRenderingFilterFlags;_rapierEventQueue;_rapierSimulation;_world;constructor(A,Q=$M,B=Qm0){super();this._rapierEventQueue=new WB.EventQueue(!0),this._rapierSimulation=new WB.World(B),this._rapierSimulation.timestep=Math.fround(1/Q),this._world=A}get colliderMap(){return this._colliderMap}get isDebugRaycastingEnabled(){return this._debugRaycastingEnabled}get isDebugRenderingEnabled(){return this._debugRenderingEnabled}get gravity(){return this._rapierSimulation.gravity}get timestepS(){return this._rapierSimulation.timestep}get world(){return this._world}createRawCollider(A,Q){return this._rapierSimulation.createCollider(A,Q)}createRawRigidBody(A){return this._rapierSimulation.createRigidBody(A)}enableDebugRaycasting(A){this._debugRaycastingEnabled=A}enableDebugRendering(A,Q=WB.QueryFilterFlags.EXCLUDE_FIXED){this._debugRenderingEnabled=A,this._debugRenderingFilterFlags=Q}getContactManifolds(A,Q){let B=[];return this._rapierSimulation.narrowPhase.contactPair(A,Q,(Y,J)=>{if(Y.numContacts()===0)return;let C=Y.normal(),X=[];for(let G=0;G{let G=this._colliderMap.getColliderHandleBlockType(X.handle);if(G&&!J.has(G))return J.add(G),C.push({intersectedBlockType:G}),!0;let W=this._colliderMap.getColliderHandleEntity(X.handle);if(W&&!J.has(W))return J.add(W),C.push({intersectedEntity:W}),!0;return!0},Y.filterFlags,Y.filterGroups,Y.filterExcludeCollider,Y.filterExcludeRigidBody,Y.filterPredicate),C}raycast(A,Q,B,Y={}){let J=new WB.Ray(A,Q),C=this._rapierSimulation.castRay(J,B,Y.solidMode??!0,Y.filterFlags,Y.filterGroups,Y.filterExcludeCollider,Y.filterExcludeRigidBody,Y.filterPredicate);if(this._debugRaycastingEnabled)this.emitWithWorld(this._world,"SIMULATION.DEBUG_RAYCAST",{simulation:this,origin:A,direction:Q,length:B,hit:!!C});if(!C)return null;let X=J.pointAt(C.timeOfImpact),G=C.timeOfImpact,W=C.collider,F=this._colliderMap.getColliderHandleBlockType(W.handle);if(F)return{hitBlock:WE.fromGlobalCoordinate({x:Math.floor(X.x-(J.dir.x<0?0.0001:-0.0001)),y:Math.floor(X.y-(J.dir.y<0?0.0001:-0.0001)),z:Math.floor(X.z-(J.dir.z<0?0.0001:-0.0001))},F),hitPoint:X,hitDistance:G,origin:A,originDirection:Q};let Z=this._colliderMap.getColliderHandleEntity(W.handle);if(Z)return{hitEntity:Z,hitPoint:X,hitDistance:G,origin:A,originDirection:Q};return null}removeRawCollider(A){this._colliderMap.queueColliderHandleForCleanup(A.handle),this._rapierSimulation.removeCollider(A,!1)}removeRawRigidBody(A){this._rapierSimulation.removeRigidBody(A)}setGravity(A){this._rapierSimulation.gravity=A}step=(A)=>{this.emitWithWorld(this._world,"SIMULATION.STEP_START",{simulation:this,tickDeltaMs:A});let Q=performance.now();if(AY.startSpan({operation:"physics_step"},()=>{this._rapierSimulation.step(this._rapierEventQueue)}),AY.startSpan({operation:"physics_cleanup"},()=>{this._rapierEventQueue.drainContactForceEvents(this._onContactForceEvent),this._rapierEventQueue.drainCollisionEvents(this._onCollisionEvent),this._colliderMap.cleanup()}),this.emitWithWorld(this._world,"SIMULATION.STEP_END",{simulation:this,stepDurationMs:performance.now()-Q}),this._debugRenderingEnabled)this.emitWithWorld(this._world,"SIMULATION.DEBUG_RENDER",{simulation:this,...this._rapierSimulation.debugRender(this._debugRenderingFilterFlags)})};_onCollisionEvent=(A,Q,B)=>{let[Y,J]=this._getCollisionObjects(A,Q);if(!Y||!J)return;let C=(X,G)=>{if(X instanceof O8&&G instanceof X0&&X.hasListeners("BLOCK_TYPE.ENTITY_COLLISION"))X.emit("BLOCK_TYPE.ENTITY_COLLISION",{blockType:X,entity:G,started:B,colliderHandleA:A,colliderHandleB:Q});else if(X instanceof X0&&G instanceof O8&&X.hasListeners("ENTITY.BLOCK_COLLISION"))X.emit("ENTITY.BLOCK_COLLISION",{entity:X,blockType:G,started:B,colliderHandleA:A,colliderHandleB:Q});else if(X instanceof X0&&G instanceof X0&&X.hasListeners("ENTITY.ENTITY_COLLISION"))X.emit("ENTITY.ENTITY_COLLISION",{entity:X,otherEntity:G,started:B,colliderHandleA:A,colliderHandleB:Q});else if(typeof X==="function"&&(G instanceof X0||G instanceof O8))X(G,B,A,Q)};C(Y,J),C(J,Y)};_onContactForceEvent=(A)=>{let[Q,B]=this._getCollisionObjects(A.collider1(),A.collider2());if(!Q||typeof Q==="function"||!B||typeof B==="function")return;let Y={totalForce:A.totalForce(),totalForceMagnitude:A.totalForceMagnitude(),maxForceDirection:A.maxForceDirection(),maxForceMagnitude:A.maxForceMagnitude()},J=(C,X)=>{if(C instanceof O8&&X instanceof X0&&C.hasListeners("BLOCK_TYPE.ENTITY_CONTACT_FORCE"))C.emit("BLOCK_TYPE.ENTITY_CONTACT_FORCE",{blockType:C,entity:X,contactForceData:Y});else if(C instanceof X0&&X instanceof O8&&C.hasListeners("ENTITY.BLOCK_CONTACT_FORCE"))C.emit("ENTITY.BLOCK_CONTACT_FORCE",{entity:C,blockType:X,contactForceData:Y});else if(C instanceof X0&&X instanceof X0&&C.hasListeners("ENTITY.ENTITY_CONTACT_FORCE"))C.emit("ENTITY.ENTITY_CONTACT_FORCE",{entity:C,otherEntity:X,contactForceData:Y})};J(Q,B),J(B,Q)};_getCollisionObjects(A,Q){let B=this._colliderMap.getColliderHandleBlockType(A)??this._colliderMap.getColliderHandleCollisionCallback(A)??this._colliderMap.getColliderHandleEntity(A),Y=this._colliderMap.getColliderHandleBlockType(Q)??this._colliderMap.getColliderHandleCollisionCallback(Q)??this._colliderMap.getColliderHandleEntity(Q);return[B,Y]}}var ao;((C)=>{C.START="WORLD_LOOP.START";C.STOP="WORLD_LOOP.STOP";C.TICK_START="WORLD_LOOP.TICK_START";C.TICK_END="WORLD_LOOP.TICK_END";C.TICK_ERROR="WORLD_LOOP.TICK_ERROR"})(ao||={});class EM extends BQ{_currentTick=0;_ticker;_world;constructor(A,Q=$M){super();this._ticker=new ZM(Q,this._tick,this._onTickError),this._world=A}get currentTick(){return this._currentTick}get isStarted(){return this._ticker.isStarted}get nextTickMs(){return this._ticker.nextTickMs}get timestepS(){return this._ticker.fixedTimestepS}get world(){return this._world}start(){this._ticker.start(),this.emitWithWorld(this._world,"WORLD_LOOP.START",{worldLoop:this})}stop(){this._ticker.stop(),this.emitWithWorld(this._world,"WORLD_LOOP.STOP",{worldLoop:this})}_tick=(A)=>{this.emitWithWorld(this._world,"WORLD_LOOP.TICK_START",{worldLoop:this,tickDeltaMs:A});let Q=performance.now(),B=O0.instance,Y=B.isEnabled;if(Y)B.beginTick(this._currentTick,this._world.entityManager.entityCount,dJ.instance.playerCount,this._world.id);if(AY.startSpan({operation:"world_tick",attributes:{serverPlayerCount:dJ.instance.playerCount,targetTickRate:this._ticker.targetTicksPerSecond,targetTickRateMs:this._ticker.fixedTimestepMs,worldId:this._world.id,worldName:this._world.name,worldChunkCount:this._world.chunkLattice.chunkCount,worldEntityCount:this._world.entityManager.entityCount,worldLoopTick:this._currentTick}},()=>{let J;if(J=Y?performance.now():0,AY.startSpan({operation:"entities_tick"},()=>this._world.entityManager.tickEntities(A)),Y)B.recordPhase("entities_tick",performance.now()-J,this._world.id);if(J=Y?performance.now():0,AY.startSpan({operation:"simulation_step"},()=>this._world.simulation.step(A)),Y)B.recordPhase("simulation_step",performance.now()-J,this._world.id);if(J=Y?performance.now():0,AY.startSpan({operation:"entities_emit_updates"},()=>this._world.entityManager.checkAndEmitUpdates()),Y)B.recordPhase("entities_emit_updates",performance.now()-J,this._world.id);if(this._world.networkSynchronizer.shouldSynchronize()){if(J=Y?performance.now():0,AY.startSpan({operation:"network_synchronize"},()=>this._world.networkSynchronizer.synchronize()),Y)B.recordPhase("network_synchronize",performance.now()-J,this._world.id)}}),Y)B.endTick(this._world.id);this._currentTick++,this.emitWithWorld(this._world,"WORLD_LOOP.TICK_END",{worldLoop:this,tickDurationMs:performance.now()-Q})};_onTickError=(A)=>{l.error(`WorldLoop._onTickError(): Error: ${A}`),this.emitWithWorld(this._world,"WORLD_LOOP.TICK_ERROR",{worldLoop:this,error:A})}}class xk{_world=null;_options=null;_tickFn=null;_toggleParity=!1;get isRunning(){return!!this._tickFn}start(A,Q){this.stop();let B=Math.max(0,Math.floor(Q.blocksPerTick)),Y=Math.max(0,Math.floor(Q.blockTypeId)),J=Q.min??{x:-32,y:0,z:-32},C=Q.max??{x:32,y:16,z:32},X=Bm0(J,C),G=Q.mode??"toggle";this._world=A,this._options={blocksPerTick:B,blockTypeId:Y,mode:G,min:X.min,max:X.max},this._toggleParity=!1,this._tickFn=()=>{this._tick()},A.loop.on("WORLD_LOOP.TICK_START",this._tickFn)}stop(){if(this._world&&this._tickFn)this._world.loop.off("WORLD_LOOP.TICK_START",this._tickFn);this._world=null,this._options=null,this._tickFn=null,this._toggleParity=!1}_tick(){if(!this._world||!this._options)return;let{blocksPerTick:A,blockTypeId:Q,min:B,max:Y,mode:J}=this._options;if(!B||!Y)return;let C=Y.x-B.x+1,X=Y.y-B.y+1,G=Y.z-B.z+1;if(C<=0||X<=0||G<=0)return;let W=this._toggleParity;this._toggleParity=!this._toggleParity;for(let F=0;F{A.call(Q,B,Y,this)})}keys(){return this._map.keys()}values(){return this._map.values()}entries(){return this._map.entries()}[Symbol.iterator](){return this._map[Symbol.iterator]()}_syncArray(){this._values.length=0;for(let A of this._map.values())this._values.push(A);this._isDirty=!1}}var to;((p)=>{p.BURST="PARTICLE_EMITTER.BURST";p.DESPAWN="PARTICLE_EMITTER.DESPAWN";p.SET_ALPHA_TEST="PARTICLE_EMITTER.SET_ALPHA_TEST";p.SET_ATTACHED_TO_ENTITY="PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY";p.SET_ATTACHED_TO_ENTITY_NODE_NAME="PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY_NODE_NAME";p.SET_COLOR_END="PARTICLE_EMITTER.SET_COLOR_END";p.SET_COLOR_END_VARIANCE="PARTICLE_EMITTER.SET_COLOR_END_VARIANCE";p.SET_COLOR_INTENSITY_END="PARTICLE_EMITTER.SET_COLOR_INTENSITY_END";p.SET_COLOR_INTENSITY_END_VARIANCE="PARTICLE_EMITTER.SET_COLOR_INTENSITY_END_VARIANCE";p.SET_COLOR_INTENSITY_START="PARTICLE_EMITTER.SET_COLOR_INTENSITY_START";p.SET_COLOR_INTENSITY_START_VARIANCE="PARTICLE_EMITTER.SET_COLOR_INTENSITY_START_VARIANCE";p.SET_COLOR_START="PARTICLE_EMITTER.SET_COLOR_START";p.SET_COLOR_START_VARIANCE="PARTICLE_EMITTER.SET_COLOR_START_VARIANCE";p.SET_GRAVITY="PARTICLE_EMITTER.SET_GRAVITY";p.SET_LIFETIME="PARTICLE_EMITTER.SET_LIFETIME";p.SET_LIFETIME_VARIANCE="PARTICLE_EMITTER.SET_LIFETIME_VARIANCE";p.SET_MAX_PARTICLES="PARTICLE_EMITTER.SET_MAX_PARTICLES";p.SET_OFFSET="PARTICLE_EMITTER.SET_OFFSET";p.SET_ORIENTATION="PARTICLE_EMITTER.SET_ORIENTATION";p.SET_ORIENTATION_FIXED_ROTATION="PARTICLE_EMITTER.SET_ORIENTATION_FIXED_ROTATION";p.SET_OPACITY_END="PARTICLE_EMITTER.SET_OPACITY_END";p.SET_OPACITY_END_VARIANCE="PARTICLE_EMITTER.SET_OPACITY_END_VARIANCE";p.SET_OPACITY_START="PARTICLE_EMITTER.SET_OPACITY_START";p.SET_OPACITY_START_VARIANCE="PARTICLE_EMITTER.SET_OPACITY_START_VARIANCE";p.SET_PAUSED="PARTICLE_EMITTER.SET_PAUSED";p.SET_POSITION="PARTICLE_EMITTER.SET_POSITION";p.SET_POSITION_VARIANCE="PARTICLE_EMITTER.SET_POSITION_VARIANCE";p.SET_RATE="PARTICLE_EMITTER.SET_RATE";p.SET_RATE_VARIANCE="PARTICLE_EMITTER.SET_RATE_VARIANCE";p.SET_SIZE_END="PARTICLE_EMITTER.SET_SIZE_END";p.SET_SIZE_END_VARIANCE="PARTICLE_EMITTER.SET_SIZE_END_VARIANCE";p.SET_SIZE_START="PARTICLE_EMITTER.SET_SIZE_START";p.SET_SIZE_START_VARIANCE="PARTICLE_EMITTER.SET_SIZE_START_VARIANCE";p.SET_TEXTURE_URI="PARTICLE_EMITTER.SET_TEXTURE_URI";p.SET_TRANSPARENT="PARTICLE_EMITTER.SET_TRANSPARENT";p.SET_VELOCITY="PARTICLE_EMITTER.SET_VELOCITY";p.SET_VELOCITY_VARIANCE="PARTICLE_EMITTER.SET_VELOCITY_VARIANCE";p.SPAWN="PARTICLE_EMITTER.SPAWN"})(to||={});class eo extends BQ{_id;_alphaTest;_attachedToEntity;_attachedToEntityNodeName;_colorEnd;_colorEndVariance;_colorIntensityEnd;_colorIntensityEndVariance;_colorIntensityStart;_colorIntensityStartVariance;_colorStart;_colorStartVariance;_gravity;_lifetime;_lifetimeVariance;_lockToEmitter;_maxParticles;_offset;_orientation;_orientationFixedRotation;_opacityEnd;_opacityEndVariance;_opacityStart;_opacityStartVariance;_paused;_position;_positionVariance;_rate;_rateVariance;_sizeEnd;_sizeEndVariance;_sizeStart;_sizeStartVariance;_sizeVariance;_textureUri;_transparent;_velocity;_velocityVariance;_world;constructor(A){if(!!A.attachedToEntity===!!A.position)l.fatalError("Either attachedToEntity or position must be set, but not both.");if(!A.textureUri)l.fatalError("ParticleEmitter.constructor(): textureUri must be provided.");super();this._alphaTest=A.alphaTest??0.05,this._attachedToEntity=A.attachedToEntity,this._attachedToEntityNodeName=A.attachedToEntityNodeName,this._colorEnd=A.colorEnd,this._colorEndVariance=A.colorEndVariance,this._colorIntensityEnd=A.colorIntensityEnd,this._colorIntensityEndVariance=A.colorIntensityEndVariance,this._colorIntensityStart=A.colorIntensityStart,this._colorIntensityStartVariance=A.colorIntensityStartVariance,this._colorStart=A.colorStart,this._colorStartVariance=A.colorStartVariance,this._gravity=A.gravity,this._lifetime=A.lifetime,this._lifetimeVariance=A.lifetimeVariance,this._lockToEmitter=A.lockToEmitter??!1,this._maxParticles=A.maxParticles,this._offset=A.offset,this._orientation=A.orientation,this._orientationFixedRotation=A.orientationFixedRotation,this._opacityEnd=A.opacityEnd,this._opacityEndVariance=A.opacityEndVariance,this._opacityStart=A.opacityStart,this._opacityStartVariance=A.opacityStartVariance,this._paused=!1,this._position=A.position,this._positionVariance=A.positionVariance,this._rate=A.rate,this._rateVariance=A.rateVariance,this._sizeEnd=A.sizeEnd,this._sizeEndVariance=A.sizeEndVariance,this._sizeStart=A.sizeStart,this._sizeStartVariance=A.sizeStartVariance,this._textureUri=A.textureUri,this._transparent=A.transparent,this._velocity=A.velocity,this._velocityVariance=A.velocityVariance}get id(){return this._id}get alphaTest(){return this._alphaTest}get attachedToEntity(){return this._attachedToEntity}get attachedToEntityNodeName(){return this._attachedToEntityNodeName}get colorEnd(){return this._colorEnd}get colorEndVariance(){return this._colorEndVariance}get colorIntensityEnd(){return this._colorIntensityEnd}get colorIntensityEndVariance(){return this._colorIntensityEndVariance}get colorIntensityStart(){return this._colorIntensityStart}get colorIntensityStartVariance(){return this._colorIntensityStartVariance}get colorStart(){return this._colorStart}get colorStartVariance(){return this._colorStartVariance}get gravity(){return this._gravity}get isSpawned(){return this._id!==void 0}get lifetime(){return this._lifetime}get lifetimeVariance(){return this._lifetimeVariance}get lockToEmitter(){return this._lockToEmitter}get maxParticles(){return this._maxParticles}get offset(){return this._offset}get orientation(){return this._orientation}get orientationFixedRotation(){return this._orientationFixedRotation}get opacityEnd(){return this._opacityEnd}get opacityEndVariance(){return this._opacityEndVariance}get opacityStart(){return this._opacityStart}get opacityStartVariance(){return this._opacityStartVariance}get paused(){return this._paused}get position(){return this._position}get positionVariance(){return this._positionVariance}get rate(){return this._rate}get rateVariance(){return this._rateVariance}get sizeEnd(){return this._sizeEnd}get sizeEndVariance(){return this._sizeEndVariance}get sizeStart(){return this._sizeStart}get sizeStartVariance(){return this._sizeStartVariance}get sizeVariance(){return this._sizeVariance}get textureUri(){return this._textureUri}get transparent(){return this._transparent}get velocity(){return this._velocity}get velocityVariance(){return this._velocityVariance}get world(){return this._world}setAlphaTest(A){if(this._alphaTest===A)return;if(this._alphaTest=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_ALPHA_TEST",{particleEmitter:this,alphaTest:A})}setAttachedToEntity(A){if(!A.isSpawned)return l.error(`ParticleEmitter.setAttachedToEntity(): Entity ${A.id} is not spawned!`);if(this._attachedToEntity===A)return;if(this._attachedToEntity=A,this._position=void 0,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY",{particleEmitter:this,entity:A})}setAttachedToEntityNodeName(A){if(this._attachedToEntityNodeName===A)return;if(this._attachedToEntityNodeName=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY_NODE_NAME",{particleEmitter:this,attachedToEntityNodeName:A})}setColorEnd(A){if(this._colorEnd&&this._colorEnd.r===A.r&&this._colorEnd.g===A.g&&this._colorEnd.b===A.b)return;if(this._colorEnd=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_END",{particleEmitter:this,colorEnd:A})}setColorEndVariance(A){if(this._colorEndVariance&&this._colorEndVariance.r===A.r&&this._colorEndVariance.g===A.g&&this._colorEndVariance.b===A.b)return;if(this._colorEndVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_END_VARIANCE",{particleEmitter:this,colorEndVariance:A})}setColorIntensityEnd(A){if(this._colorIntensityEnd===A)return;if(this._colorIntensityEnd=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_INTENSITY_END",{particleEmitter:this,colorIntensityEnd:A})}setColorIntensityEndVariance(A){if(this._colorIntensityEndVariance===A)return;if(this._colorIntensityEndVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_INTENSITY_END_VARIANCE",{particleEmitter:this,colorIntensityEndVariance:A})}setColorIntensityStart(A){if(this._colorIntensityStart===A)return;if(this._colorIntensityStart=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_INTENSITY_START",{particleEmitter:this,colorIntensityStart:A})}setColorIntensityStartVariance(A){if(this._colorIntensityStartVariance===A)return;if(this._colorIntensityStartVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_INTENSITY_START_VARIANCE",{particleEmitter:this,colorIntensityStartVariance:A})}setColorStart(A){if(this._colorStart&&this._colorStart.r===A.r&&this._colorStart.g===A.g&&this._colorStart.b===A.b)return;if(this._colorStart=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_START",{particleEmitter:this,colorStart:A})}setColorStartVariance(A){if(this._colorStartVariance&&this._colorStartVariance.r===A.r&&this._colorStartVariance.g===A.g&&this._colorStartVariance.b===A.b)return;if(this._colorStartVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_COLOR_START_VARIANCE",{particleEmitter:this,colorStartVariance:A})}setGravity(A){if(this._gravity&&this._gravity.x===A.x&&this._gravity.y===A.y&&this._gravity.z===A.z)return;if(this._gravity=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_GRAVITY",{particleEmitter:this,gravity:A})}setLifetime(A){if(this._lifetime===A)return;if(this._lifetime=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_LIFETIME",{particleEmitter:this,lifetime:A})}setLifetimeVariance(A){if(this._lifetimeVariance===A)return;if(this._lifetimeVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_LIFETIME_VARIANCE",{particleEmitter:this,lifetimeVariance:A})}setMaxParticles(A){if(this._maxParticles===A)return;if(this._maxParticles=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_MAX_PARTICLES",{particleEmitter:this,maxParticles:A})}setOffset(A){if(this._offset&&this._offset.x===A.x&&this._offset.y===A.y&&this._offset.z===A.z)return;if(this._offset=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_OFFSET",{particleEmitter:this,offset:A})}setOrientation(A){if(this._orientation===A)return;if(this._orientation=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_ORIENTATION",{particleEmitter:this,orientation:A})}setOrientationFixedRotation(A){if(this._orientationFixedRotation&&this._orientationFixedRotation.x===A.x&&this._orientationFixedRotation.y===A.y&&this._orientationFixedRotation.z===A.z)return;if(this._orientationFixedRotation=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_ORIENTATION_FIXED_ROTATION",{particleEmitter:this,orientationFixedRotation:A})}setOpacityEnd(A){if(this._opacityEnd===A)return;if(this._opacityEnd=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_OPACITY_END",{particleEmitter:this,opacityEnd:A})}setOpacityEndVariance(A){if(this._opacityEndVariance===A)return;if(this._opacityEndVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_OPACITY_END_VARIANCE",{particleEmitter:this,opacityEndVariance:A})}setOpacityStart(A){if(this._opacityStart===A)return;if(this._opacityStart=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_OPACITY_START",{particleEmitter:this,opacityStart:A})}setOpacityStartVariance(A){if(this._opacityStartVariance===A)return;if(this._opacityStartVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_OPACITY_START_VARIANCE",{particleEmitter:this,opacityStartVariance:A})}setPosition(A){if(this._position&&this._position.x===A.x&&this._position.y===A.y&&this._position.z===A.z)return;if(this._position=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_POSITION",{particleEmitter:this,position:A})}setPositionVariance(A){if(this._positionVariance&&this._positionVariance.x===A.x&&this._positionVariance.y===A.y&&this._positionVariance.z===A.z)return;if(this._positionVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_POSITION_VARIANCE",{particleEmitter:this,positionVariance:A})}setRate(A){if(this._rate===A)return;if(this._rate=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_RATE",{particleEmitter:this,rate:A})}setRateVariance(A){if(this._rateVariance===A)return;if(this._rateVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_RATE_VARIANCE",{particleEmitter:this,rateVariance:A})}setSizeEnd(A){if(this._sizeEnd===A)return;if(this._sizeEnd=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_SIZE_END",{particleEmitter:this,sizeEnd:A})}setSizeEndVariance(A){if(this._sizeEndVariance===A)return;if(this._sizeEndVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_SIZE_END_VARIANCE",{particleEmitter:this,sizeEndVariance:A})}setSizeStart(A){if(this._sizeStart===A)return;if(this._sizeStart=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_SIZE_START",{particleEmitter:this,sizeStart:A})}setSizeStartVariance(A){if(this._sizeStartVariance===A)return;if(this._sizeStartVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_SIZE_START_VARIANCE",{particleEmitter:this,sizeStartVariance:A})}setTextureUri(A){if(this._textureUri===A)return;if(this._textureUri=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_TEXTURE_URI",{particleEmitter:this,textureUri:A})}setTransparent(A){if(this._transparent===A)return;if(this._transparent=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_TRANSPARENT",{particleEmitter:this,transparent:A})}setVelocity(A){if(this._velocity&&this._velocity.x===A.x&&this._velocity.y===A.y&&this._velocity.z===A.z)return;if(this._velocity=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_VELOCITY",{particleEmitter:this,velocity:A})}setVelocityVariance(A){if(this._velocityVariance&&this._velocityVariance.x===A.x&&this._velocityVariance.y===A.y&&this._velocityVariance.z===A.z)return;if(this._velocityVariance=A,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_VELOCITY_VARIANCE",{particleEmitter:this,velocityVariance:A})}burst(A){if(this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.BURST",{particleEmitter:this,count:A})}despawn(){if(!this.isSpawned||!this._world)return;this._world.particleEmitterManager.unregisterParticleEmitter(this),this.emitWithWorld(this._world,"PARTICLE_EMITTER.DESPAWN",{particleEmitter:this}),this._id=void 0,this._world=void 0}restart(){if(!this._paused)return;if(this._paused=!1,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_PAUSED",{particleEmitter:this,paused:this._paused})}stop(){if(this._paused)return;if(this._paused=!0,this.isSpawned)this.emitWithWorld(this._world,"PARTICLE_EMITTER.SET_PAUSED",{particleEmitter:this,paused:this._paused})}spawn(A){if(this.isSpawned)return;if(this._attachedToEntity&&!this._attachedToEntity.isSpawned)return l.error(`ParticleEmitter.spawn(): Attached entity ${this._attachedToEntity.id} must be spawned before spawning ParticleEmitter!`);this._id=A.particleEmitterManager.registerParticleEmitter(this),this._world=A,this.emitWithWorld(A,"PARTICLE_EMITTER.SPAWN",{particleEmitter:this})}serialize(){return GQ.serializeParticleEmitter(this)}}var Ym0=30,Jm0=Math.round($M/Ym0);class fk{_outboundPerPlayerReliablePackets=new bB;_outboundSharedReliablePackets=[];_outboundSharedUnreliablePackets=[];_queuedAudioSyncs={broadcast:new bB,perPlayer:new bB};_queuedBlockSyncs={broadcast:new bB,perPlayer:new bB};_queuedBlockTypeSyncs={broadcast:new bB,perPlayer:new bB};_queuedChunkSyncs={broadcast:new bB,perPlayer:new bB};_queuedEntitySyncs={broadcast:new bB,perPlayer:new bB};_queuedParticleEmitterSyncs={broadcast:new bB,perPlayer:new bB};_queuedPlayerSyncs={broadcast:new bB,perPlayer:new bB};_queuedSceneUISyncs={broadcast:new bB,perPlayer:new bB};_queuedCameraSyncs={broadcast:void 0,perPlayer:new bB};_queuedChatMessagesSyncs={broadcast:void 0,perPlayer:new bB};_queuedDebugRaycastsSyncs={broadcast:void 0,perPlayer:new bB};_queuedDebugRenderSyncs={broadcast:void 0,perPlayer:new bB};_queuedNotificationPermissionRequestSyncs={broadcast:void 0,perPlayer:new bB};_queuedUISyncs={broadcast:void 0,perPlayer:new bB};_queuedUIDatasSyncs={broadcast:void 0,perPlayer:new bB};_queuedWorldSyncs={broadcast:void 0,perPlayer:new bB};_loadedSceneUIs=new Set;_spawnedChunks=new Set;_spawnedEntities=new Set;_playersInWorld=new Set;_world;constructor(A){this._world=A,this._subscribeToAudioEvents(),this._subscribeToBlockTypeRegistryEvents(),this._subscribeToChatEvents(),this._subscribeToChunkLatticeEvents(),this._subscribeToEntityEvents(),this._subscribeToEntityModelAnimationEvents(),this._subscribeToEntityModelNodeOverrideEvents(),this._subscribeToParticleEmitterEvents(),this._subscribeToPlayerEvents(),this._subscribeToPlayerCameraEvents(),this._subscribeToPlayerUIEvents(),this._subscribeToSceneUIEvents(),this._subscribeToSimulationEvents(),this._subscribeToWorldEvents()}shouldSynchronize(){return this._world.loop.currentTick%Jm0===0}synchronize(){let A=this._world.loop.currentTick;if(this._queuedEntitySyncs.broadcast.size>0){let Q=[],B=[];for(let Y of this._queuedEntitySyncs.broadcast.valuesArray){let J=!1;for(let C in Y)if(J=C!=="i"&&C!=="p"&&C!=="r",J)break;(J?Q:B).push(Y)}if(B.length>0){let Y=gQ.createPacket(gQ.outboundPackets.entitiesPacketDefinition,B,A);this._outboundSharedUnreliablePackets.push(Y)}if(Q.length>0){let Y=gQ.createPacket(gQ.outboundPackets.entitiesPacketDefinition,Q,A);this._outboundSharedReliablePackets.push(Y);for(let J of this._outboundPerPlayerReliablePackets.valuesArray)J.push(Y)}}if(this._queuedEntitySyncs.perPlayer.size>0)for(let[Q,B]of this._queuedEntitySyncs.perPlayer.entries())this._outboundPerPlayerReliablePackets.get(Q)?.push(gQ.createPacket(gQ.outboundPackets.entitiesPacketDefinition,B.valuesArray,A));this._collectSingletonSyncToOutboundPackets(this._queuedCameraSyncs,gQ.outboundPackets.cameraPacketDefinition),this._collectSyncToOutboundPackets(this._queuedAudioSyncs,gQ.outboundPackets.audiosPacketDefinition),this._collectSyncToOutboundPackets(this._queuedBlockTypeSyncs,gQ.outboundPackets.blockTypesPacketDefinition),this._collectSyncToOutboundPackets(this._queuedChunkSyncs,gQ.outboundPackets.chunksPacketDefinition),this._collectSyncToOutboundPackets(this._queuedBlockSyncs,gQ.outboundPackets.blocksPacketDefinition),this._collectSyncToOutboundPackets(this._queuedParticleEmitterSyncs,gQ.outboundPackets.particleEmittersPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedUISyncs,gQ.outboundPackets.uiPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedUIDatasSyncs,gQ.outboundPackets.uiDatasPacketDefinition),this._collectSyncToOutboundPackets(this._queuedSceneUISyncs,gQ.outboundPackets.sceneUIsPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedWorldSyncs,gQ.outboundPackets.worldPacketDefinition),this._collectSyncToOutboundPackets(this._queuedPlayerSyncs,gQ.outboundPackets.playersPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedChatMessagesSyncs,gQ.outboundPackets.chatMessagesPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedNotificationPermissionRequestSyncs,gQ.outboundPackets.notificationPermissionRequestPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedDebugRenderSyncs,gQ.outboundPackets.physicsDebugRenderPacketDefinition),this._collectSingletonSyncToOutboundPackets(this._queuedDebugRaycastsSyncs,gQ.outboundPackets.physicsDebugRaycastsPacketDefinition),AY.startSpan({operation:"send_all_packets"},()=>{for(let Q of dJ.instance.getConnectedPlayersByWorld(this._world)){let B=this._outboundPerPlayerReliablePackets.get(Q)??this._outboundSharedReliablePackets;if(B.length>0)Q.connection.send(B);if(this._outboundSharedUnreliablePackets.length>0)Q.connection.send(this._outboundSharedUnreliablePackets,!1)}}),AY.startSpan({operation:"network_synchronize_cleanup"},()=>{if(this._outboundPerPlayerReliablePackets.size>0)this._outboundPerPlayerReliablePackets.clear();if(this._outboundSharedReliablePackets.length>0)this._outboundSharedReliablePackets.length=0;if(this._outboundSharedUnreliablePackets.length>0)this._outboundSharedUnreliablePackets.length=0;if(this._loadedSceneUIs.size>0)this._loadedSceneUIs.clear();if(this._spawnedChunks.size>0)this._spawnedChunks.clear();if(this._spawnedEntities.size>0)this._spawnedEntities.clear();this._clearSyncQueue(this._queuedAudioSyncs),this._clearSyncQueue(this._queuedBlockSyncs),this._clearSyncQueue(this._queuedBlockTypeSyncs),this._clearSyncQueue(this._queuedChunkSyncs),this._clearSyncQueue(this._queuedEntitySyncs),this._clearSyncQueue(this._queuedParticleEmitterSyncs),this._clearSyncQueue(this._queuedPlayerSyncs),this._clearSyncQueue(this._queuedSceneUISyncs),this._clearSingletonSyncQueue(this._queuedCameraSyncs),this._clearSingletonSyncQueue(this._queuedChatMessagesSyncs),this._clearSingletonSyncQueue(this._queuedDebugRaycastsSyncs),this._clearSingletonSyncQueue(this._queuedDebugRenderSyncs),this._clearSingletonSyncQueue(this._queuedNotificationPermissionRequestSyncs),this._clearSingletonSyncQueue(this._queuedUISyncs),this._clearSingletonSyncQueue(this._queuedUIDatasSyncs),this._clearSingletonSyncQueue(this._queuedWorldSyncs),q1.clearCachedPacketsSerializedBuffers()})}_subscribeToAudioEvents(){this._world.final("AUDIO.PAUSE",this._onAudioPause),this._world.final("AUDIO.PLAY",this._onAudioPlay),this._world.final("AUDIO.PLAY_RESTART",this._onAudioPlayRestart),this._world.final("AUDIO.SET_ATTACHED_TO_ENTITY",this._onAudioSetAttachedToEntity),this._world.final("AUDIO.SET_CUTOFF_DISTANCE",this._onAudioSetCutoffDistance),this._world.final("AUDIO.SET_DETUNE",this._onAudioSetDetune),this._world.final("AUDIO.SET_DISTORTION",this._onAudioSetDistortion),this._world.final("AUDIO.SET_POSITION",this._onAudioSetPosition),this._world.final("AUDIO.SET_PLAYBACK_RATE",this._onAudioSetPlaybackRate),this._world.final("AUDIO.SET_REFERENCE_DISTANCE",this._onAudioSetReferenceDistance),this._world.final("AUDIO.SET_VOLUME",this._onAudioSetVolume)}_subscribeToBlockTypeRegistryEvents(){this._world.final("BLOCK_TYPE_REGISTRY.REGISTER_BLOCK_TYPE",this._onBlockTypeRegistryRegisterBlockType)}_subscribeToChatEvents(){this._world.final("CHAT.BROADCAST_MESSAGE",this._onChatSendBroadcastMessage),this._world.final("CHAT.PLAYER_MESSAGE",this._onChatSendPlayerMessage)}_subscribeToChunkLatticeEvents(){this._world.final("CHUNK_LATTICE.ADD_CHUNK",this._onChunkLatticeAddChunk),this._world.final("CHUNK_LATTICE.REMOVE_CHUNK",this._onChunkLatticeRemoveChunk),this._world.final("CHUNK_LATTICE.SET_BLOCK",this._onChunkLatticeSetBlock)}_subscribeToEntityEvents(){this._world.final("ENTITY.SPAWN",this._onEntitySpawn),this._world.final("ENTITY.DESPAWN",this._onEntityDespawn),this._world.final("ENTITY.REMOVE_MODEL_NODE_OVERRIDE",this._onEntityRemoveModelNodeOverride),this._world.final("ENTITY.SET_BLOCK_TEXTURE_URI",this._onEntitySetBlockTextureUri),this._world.final("ENTITY.SET_EMISSIVE_COLOR",this._onEntitySetEmissiveColor),this._world.final("ENTITY.SET_EMISSIVE_INTENSITY",this._onEntitySetEmissiveIntensity),this._world.final("ENTITY.SET_MODEL_SCALE",this._onEntitySetModelScale),this._world.final("ENTITY.SET_MODEL_SCALE_INTERPOLATION_MS",this._onEntitySetModelScaleInterpolationMs),this._world.final("ENTITY.SET_MODEL_TEXTURE_URI",this._onEntitySetModelTextureUri),this._world.final("ENTITY.SET_OPACITY",this._onEntitySetOpacity),this._world.final("ENTITY.SET_OUTLINE",this._onEntitySetOutline),this._world.final("ENTITY.SET_PARENT",this._onEntitySetParent),this._world.final("ENTITY.SET_POSITION_INTERPOLATION_MS",this._onEntitySetPositionInterpolationMs),this._world.final("ENTITY.SET_ROTATION_INTERPOLATION_MS",this._onEntitySetRotationInterpolationMs),this._world.final("ENTITY.SET_TINT_COLOR",this._onEntitySetTintColor),this._world.final("ENTITY.UPDATE_POSITION",this._onEntityUpdatePosition),this._world.final("ENTITY.UPDATE_ROTATION",this._onEntityUpdateRotation)}_subscribeToEntityModelAnimationEvents(){this._world.final("ENTITY_MODEL_ANIMATION.PAUSE",this._onEntityModelAnimationPause),this._world.final("ENTITY_MODEL_ANIMATION.PLAY",this._onEntityModelAnimationPlay),this._world.final("ENTITY_MODEL_ANIMATION.RESTART",this._onEntityModelAnimationRestart),this._world.final("ENTITY_MODEL_ANIMATION.SET_BLEND_MODE",this._onEntityModelAnimationSetBlendMode),this._world.final("ENTITY_MODEL_ANIMATION.SET_CLAMP_WHEN_FINISHED",this._onEntityModelAnimationSetClampWhenFinished),this._world.final("ENTITY_MODEL_ANIMATION.SET_FADES_IN",this._onEntityModelAnimationSetFadesIn),this._world.final("ENTITY_MODEL_ANIMATION.SET_FADES_OUT",this._onEntityModelAnimationSetFadesOut),this._world.final("ENTITY_MODEL_ANIMATION.SET_LOOP_MODE",this._onEntityModelAnimationSetLoopMode),this._world.final("ENTITY_MODEL_ANIMATION.SET_PLAYBACK_RATE",this._onEntityModelAnimationSetPlaybackRate),this._world.final("ENTITY_MODEL_ANIMATION.SET_WEIGHT",this._onEntityModelAnimationSetWeight),this._world.final("ENTITY_MODEL_ANIMATION.STOP",this._onEntityModelAnimationStop)}_subscribeToEntityModelNodeOverrideEvents(){this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_COLOR",this._onEntityModelNodeOverrideSetEmissiveColor),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_INTENSITY",this._onEntityModelNodeOverrideSetEmissiveIntensity),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_HIDDEN",this._onEntityModelNodeOverrideSetHidden),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION",this._onEntityModelNodeOverrideSetLocalPosition),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION_INTERPOLATION_MS",this._onEntityModelNodeOverrideSetLocalPositionInterpolationMs),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION",this._onEntityModelNodeOverrideSetLocalRotation),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION_INTERPOLATION_MS",this._onEntityModelNodeOverrideSetLocalRotationInterpolationMs),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE",this._onEntityModelNodeOverrideSetLocalScale),this._world.final("ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE_INTERPOLATION_MS",this._onEntityModelNodeOverrideSetLocalScaleInterpolationMs)}_subscribeToParticleEmitterEvents(){this._world.final("PARTICLE_EMITTER.DESPAWN",this._onParticleEmitterDespawn),this._world.final("PARTICLE_EMITTER.BURST",this._onParticleEmitterBurst),this._world.final("PARTICLE_EMITTER.SET_ALPHA_TEST",this._onParticleEmitterSetAlphaTest),this._world.final("PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY",this._onParticleEmitterSetAttachedToEntity),this._world.final("PARTICLE_EMITTER.SET_ATTACHED_TO_ENTITY_NODE_NAME",this._onParticleEmitterSetAttachedToEntityNodeName),this._world.final("PARTICLE_EMITTER.SET_COLOR_END",this._onParticleEmitterSetColorEnd),this._world.final("PARTICLE_EMITTER.SET_COLOR_END_VARIANCE",this._onParticleEmitterSetColorEndVariance),this._world.final("PARTICLE_EMITTER.SET_COLOR_INTENSITY_END",this._onParticleEmitterSetColorIntensityEnd),this._world.final("PARTICLE_EMITTER.SET_COLOR_INTENSITY_END_VARIANCE",this._onParticleEmitterSetColorIntensityEndVariance),this._world.final("PARTICLE_EMITTER.SET_COLOR_INTENSITY_START",this._onParticleEmitterSetColorIntensityStart),this._world.final("PARTICLE_EMITTER.SET_COLOR_INTENSITY_START_VARIANCE",this._onParticleEmitterSetColorIntensityStartVariance),this._world.final("PARTICLE_EMITTER.SET_COLOR_START",this._onParticleEmitterSetColorStart),this._world.final("PARTICLE_EMITTER.SET_COLOR_START_VARIANCE",this._onParticleEmitterSetColorStartVariance),this._world.final("PARTICLE_EMITTER.SET_GRAVITY",this._onParticleEmitterSetGravity),this._world.final("PARTICLE_EMITTER.SET_LIFETIME",this._onParticleEmitterSetLifetime),this._world.final("PARTICLE_EMITTER.SET_LIFETIME_VARIANCE",this._onParticleEmitterSetLifetimeVariance),this._world.final("PARTICLE_EMITTER.SET_MAX_PARTICLES",this._onParticleEmitterSetMaxParticles),this._world.final("PARTICLE_EMITTER.SET_OFFSET",this._onParticleEmitterSetOffset),this._world.final("PARTICLE_EMITTER.SET_OPACITY_END",this._onParticleEmitterSetOpacityEnd),this._world.final("PARTICLE_EMITTER.SET_OPACITY_END_VARIANCE",this._onParticleEmitterSetOpacityEndVariance),this._world.final("PARTICLE_EMITTER.SET_OPACITY_START",this._onParticleEmitterSetOpacityStart),this._world.final("PARTICLE_EMITTER.SET_OPACITY_START_VARIANCE",this._onParticleEmitterSetOpacityStartVariance),this._world.final("PARTICLE_EMITTER.SET_PAUSED",this._onParticleEmitterSetPaused),this._world.final("PARTICLE_EMITTER.SET_POSITION",this._onParticleEmitterSetPosition),this._world.final("PARTICLE_EMITTER.SET_POSITION_VARIANCE",this._onParticleEmitterSetPositionVariance),this._world.final("PARTICLE_EMITTER.SET_RATE",this._onParticleEmitterSetRate),this._world.final("PARTICLE_EMITTER.SET_RATE_VARIANCE",this._onParticleEmitterSetRateVariance),this._world.final("PARTICLE_EMITTER.SET_SIZE_END",this._onParticleEmitterSetSizeEnd),this._world.final("PARTICLE_EMITTER.SET_SIZE_END_VARIANCE",this._onParticleEmitterSetSizeEndVariance),this._world.final("PARTICLE_EMITTER.SET_SIZE_START",this._onParticleEmitterSetSizeStart),this._world.final("PARTICLE_EMITTER.SET_SIZE_START_VARIANCE",this._onParticleEmitterSetSizeStartVariance),this._world.final("PARTICLE_EMITTER.SET_TEXTURE_URI",this._onParticleEmitterSetTextureUri),this._world.final("PARTICLE_EMITTER.SET_TRANSPARENT",this._onParticleEmitterSetTransparent),this._world.final("PARTICLE_EMITTER.SET_VELOCITY",this._onParticleEmitterSetVelocity),this._world.final("PARTICLE_EMITTER.SET_VELOCITY_VARIANCE",this._onParticleEmitterSetVelocityVariance),this._world.final("PARTICLE_EMITTER.SPAWN",this._onParticleEmitterSpawn)}_subscribeToPlayerEvents(){this._world.final("PLAYER.JOINED_WORLD",this._onPlayerJoinedWorld),this._world.final("PLAYER.LEFT_WORLD",this._onPlayerLeftWorld),this._world.final("PLAYER.RECONNECTED_WORLD",this._onPlayerReconnectedWorld),this._world.final("PLAYER.REQUEST_NOTIFICATION_PERMISSION",this._onPlayerRequestNotificationPermission),this._world.final("PLAYER.REQUEST_SYNC",this._onPlayerRequestSync)}_subscribeToPlayerCameraEvents(){this._world.final("PLAYER_CAMERA.FACE_ENTITY",this._onPlayerCameraFaceEntity),this._world.final("PLAYER_CAMERA.FACE_POSITION",this._onPlayerCameraFacePosition),this._world.final("PLAYER_CAMERA.SET_ATTACHED_TO_ENTITY",this._onPlayerCameraSetAttachedToEntity),this._world.final("PLAYER_CAMERA.SET_ATTACHED_TO_POSITION",this._onPlayerCameraSetAttachedToPosition),this._world.final("PLAYER_CAMERA.SET_COLLIDES_WITH_BLOCKS",this._onPlayerCameraSetCollidesWithBlocks),this._world.final("PLAYER_CAMERA.SET_FILM_OFFSET",this._onPlayerCameraSetFilmOffset),this._world.final("PLAYER_CAMERA.SET_FORWARD_OFFSET",this._onPlayerCameraSetForwardOffset),this._world.final("PLAYER_CAMERA.SET_FOV",this._onPlayerCameraSetFov),this._world.final("PLAYER_CAMERA.SET_MODE",this._onPlayerCameraSetMode),this._world.final("PLAYER_CAMERA.SET_OFFSET",this._onPlayerCameraSetOffset),this._world.final("PLAYER_CAMERA.SET_SHOULDER_ANGLE",this._onPlayerCameraSetShoulderAngle),this._world.final("PLAYER_CAMERA.SET_TARGET_ENTITY",this._onPlayerCameraSetTargetEntity),this._world.final("PLAYER_CAMERA.SET_TARGET_POSITION",this._onPlayerCameraSetTargetPosition),this._world.final("PLAYER_CAMERA.SET_VIEW_MODEL",this._onPlayerCameraSetViewModel),this._world.final("PLAYER_CAMERA.SET_VIEW_MODEL_HIDDEN_NODES",this._onPlayerCameraSetViewModelHiddenNodes),this._world.final("PLAYER_CAMERA.SET_VIEW_MODEL_PITCHES_WITH_CAMERA",this._onPlayerCameraSetViewModelPitchesWithCamera),this._world.final("PLAYER_CAMERA.SET_VIEW_MODEL_SHOWN_NODES",this._onPlayerCameraSetViewModelShownNodes),this._world.final("PLAYER_CAMERA.SET_VIEW_MODEL_YAWS_WITH_CAMERA",this._onPlayerCameraSetViewModelYawsWithCamera),this._world.final("PLAYER_CAMERA.SET_ZOOM",this._onPlayerCameraSetZoom)}_subscribeToPlayerUIEvents(){this._world.final("PLAYER_UI.APPEND",this._onPlayerUIAppend),this._world.final("PLAYER_UI.FREEZE_POINTER_LOCK",this._onPlayerUIFreezePointerLock),this._world.final("PLAYER_UI.LOAD",this._onPlayerUILoad),this._world.final("PLAYER_UI.LOCK_POINTER",this._onPlayerUILockPointer),this._world.final("PLAYER_UI.SEND_DATA",this._onPlayerUISendData)}_subscribeToSceneUIEvents(){this._world.final("SCENE_UI.LOAD",this._onSceneUILoad),this._world.final("SCENE_UI.SET_ATTACHED_TO_ENTITY",this._onSceneUISetAttachedToEntity),this._world.final("SCENE_UI.SET_OFFSET",this._onSceneUISetOffset),this._world.final("SCENE_UI.SET_POSITION",this._onSceneUISetPosition),this._world.final("SCENE_UI.SET_STATE",this._onSceneUISetState),this._world.final("SCENE_UI.SET_VIEW_DISTANCE",this._onSceneUISetViewDistance),this._world.final("SCENE_UI.UNLOAD",this._onSceneUIUnload)}_subscribeToSimulationEvents(){this._world.final("SIMULATION.DEBUG_RAYCAST",this._onSimulationDebugRaycast),this._world.final("SIMULATION.DEBUG_RENDER",this._onSimulationDebugRender)}_subscribeToWorldEvents(){this._world.final("WORLD.SET_AMBIENT_LIGHT_COLOR",this._onWorldSetAmbientLightColor),this._world.final("WORLD.SET_AMBIENT_LIGHT_INTENSITY",this._onWorldSetAmbientLightIntensity),this._world.final("WORLD.SET_DIRECTIONAL_LIGHT_COLOR",this._onWorldSetDirectionalLightColor),this._world.final("WORLD.SET_DIRECTIONAL_LIGHT_INTENSITY",this._onWorldSetDirectionalLightIntensity),this._world.final("WORLD.SET_DIRECTIONAL_LIGHT_POSITION",this._onWorldSetDirectionalLightPosition),this._world.final("WORLD.SET_FOG_COLOR",this._onWorldSetFogColor),this._world.final("WORLD.SET_FOG_FAR",this._onWorldSetFogFar),this._world.final("WORLD.SET_FOG_NEAR",this._onWorldSetFogNear),this._world.final("WORLD.SET_SKYBOX_INTENSITY",this._onWorldSetSkyboxIntensity),this._world.final("WORLD.SET_SKYBOX_URI",this._onWorldSetSkyboxUri)}_onAudioPause=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.pa=!0,delete Q.pl,delete Q.r};_onAudioPlay=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Object.assign(Q,A.audio.serialize()),Q.pl=!0,delete Q.pa,delete Q.r};_onAudioPlayRestart=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Object.assign(Q,A.audio.serialize()),Q.r=!0,delete Q.pa,delete Q.pl};_onAudioSetAttachedToEntity=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.e=A.entity?A.entity.id:void 0,Q.p=A.entity?void 0:Q.p};_onAudioSetCutoffDistance=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.cd=A.cutoffDistance};_onAudioSetDetune=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.de=A.detune};_onAudioSetDistortion=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.di=A.distortion};_onAudioSetPosition=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.e=A.position?void 0:Q.e,Q.p=A.position?GQ.serializeVector(A.position):void 0};_onAudioSetPlaybackRate=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.pr=A.playbackRate};_onAudioSetReferenceDistance=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.rd=A.referenceDistance};_onAudioSetVolume=(A)=>{let Q=this._createOrGetQueuedAudioSync(A.audio);Q.v=A.volume};_onBlockTypeRegistryRegisterBlockType=(A)=>{if(this._playersInWorld.size===0)return;let Q=this._createOrGetQueuedBlockTypeSync(A.blockType);Object.assign(Q,A.blockType.serialize())};_onChatSendBroadcastMessage=(A)=>{this._createOrGetQueuedChatMessagesSync().push({m:A.message,c:A.color,p:A.player?.id})};_onChatSendPlayerMessage=(A)=>{this._createOrGetQueuedChatMessagesSync(A.player).push({m:A.message,c:A.color})};_onChunkLatticeAddChunk=(A)=>{if(this._playersInWorld.size===0)return;let Q=this._createOrGetQueuedChunkSync(A.chunk);Object.assign(Q,A.chunk.serialize()),Q.rm=void 0,this._spawnedChunks.add(Q.c.join(","))};_onChunkLatticeRemoveChunk=(A)=>{if(this._playersInWorld.size===0)return;let Q=this._createOrGetQueuedChunkSync(A.chunk),B=Q.c.join(",");if(this._spawnedChunks.has(B))this._queuedChunkSyncs.broadcast.delete(B),this._spawnedChunks.delete(B);else Q.rm=!0};_onChunkLatticeSetBlock=(A)=>{if(this._playersInWorld.size===0)return;let Q=this._createOrGetQueuedBlockSync(A.globalCoordinate);Q.i=A.blockTypeId,Q.r=A.blockRotation?.enumIndex};_onEntitySpawn=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Object.assign(Q,A.entity.serialize()),this._spawnedEntities.add(Q.i)};_onEntityDespawn=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);if(this._spawnedEntities.has(Q.i))this._queuedEntitySyncs.broadcast.delete(Q.i),this._spawnedEntities.delete(Q.i);else Q.rm=!0};_onEntityRemoveModelNodeOverride=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.rm=!0};_onEntitySetBlockTextureUri=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.bt=A.blockTextureUri};_onEntitySetEmissiveColor=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.ec=A.emissiveColor?GQ.serializeRgbColor(A.emissiveColor):void 0};_onEntitySetEmissiveIntensity=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.ei=A.emissiveIntensity};_onEntitySetModelScale=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.sv=A.modelScale?GQ.serializeVector(A.modelScale):void 0};_onEntitySetModelScaleInterpolationMs=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.si=A.interpolationMs};_onEntitySetModelTextureUri=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.mt=A.modelTextureUri};_onEntitySetOpacity=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.o=A.opacity};_onEntitySetOutline=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity,A.forPlayer);Q.ol=A.outline?GQ.serializeOutline(A.outline):void 0};_onEntitySetParent=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.pe=A.parent?A.parent.id:void 0,Q.pn=A.parentNodeName};_onEntitySetPositionInterpolationMs=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.pi=A.interpolationMs};_onEntitySetRotationInterpolationMs=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.ri=A.interpolationMs};_onEntitySetTintColor=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.t=A.tintColor?GQ.serializeRgbColor(A.tintColor):void 0};_onEntityUpdatePosition=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.p=[A.position.x,A.position.y,A.position.z]};_onEntityUpdateRotation=(A)=>{let Q=this._createOrGetQueuedEntitySync(A.entity);Q.r=[A.rotation.x,A.rotation.y,A.rotation.z,A.rotation.w]};_onEntityModelAnimationPause=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.pa=!0,delete Q.p,delete Q.r,delete Q.s};_onEntityModelAnimationPlay=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.p=!0,delete Q.pa,delete Q.r,delete Q.s};_onEntityModelAnimationRestart=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.r=!0,delete Q.pa,delete Q.p,delete Q.s};_onEntityModelAnimationSetBlendMode=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.b=A.blendMode};_onEntityModelAnimationSetClampWhenFinished=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.c=A.clampWhenFinished};_onEntityModelAnimationSetFadesIn=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.fi=A.fadesIn};_onEntityModelAnimationSetFadesOut=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.fo=A.fadesOut};_onEntityModelAnimationSetLoopMode=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.l=A.loopMode};_onEntityModelAnimationSetPlaybackRate=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.pr=A.playbackRate};_onEntityModelAnimationSetWeight=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.w=A.weight};_onEntityModelAnimationStop=(A)=>{let Q=this._createOrGetQueuedEntityModelAnimationSync(A.entityModelAnimation);Q.s=!0,delete Q.p,delete Q.pa,delete Q.r};_onEntityModelNodeOverrideSetEmissiveColor=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.ec=A.emissiveColor?GQ.serializeRgbColor(A.emissiveColor):void 0,delete Q.rm};_onEntityModelNodeOverrideSetEmissiveIntensity=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.ei=A.emissiveIntensity,delete Q.rm};_onEntityModelNodeOverrideSetHidden=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.h=A.hidden,delete Q.rm};_onEntityModelNodeOverrideSetLocalPosition=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.p=A.localPosition?GQ.serializeVector(A.localPosition):void 0,delete Q.rm};_onEntityModelNodeOverrideSetLocalPositionInterpolationMs=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.pi=A.interpolationMs,delete Q.rm};_onEntityModelNodeOverrideSetLocalRotation=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.r=A.localRotation?GQ.serializeQuaternion(A.localRotation):void 0,delete Q.rm};_onEntityModelNodeOverrideSetLocalRotationInterpolationMs=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.ri=A.interpolationMs,delete Q.rm};_onEntityModelNodeOverrideSetLocalScale=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.s=A.localScale?GQ.serializeVector(A.localScale):void 0,delete Q.rm};_onEntityModelNodeOverrideSetLocalScaleInterpolationMs=(A)=>{let Q=this._createOrGetQueuedEntityModelNodeOverrideSync(A.entityModelNodeOverride);Q.si=A.interpolationMs,delete Q.rm};_onParticleEmitterBurst=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.b=A.count};_onParticleEmitterDespawn=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.rm=!0};_onParticleEmitterSetAlphaTest=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.at=A.alphaTest};_onParticleEmitterSetAttachedToEntity=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.e=A.entity?A.entity.id:void 0,Q.p=A.entity?void 0:Q.p};_onParticleEmitterSetAttachedToEntityNodeName=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.en=A.attachedToEntityNodeName};_onParticleEmitterSetColorEnd=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.ce=A.colorEnd?GQ.serializeRgbColor(A.colorEnd):void 0};_onParticleEmitterSetColorEndVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.cev=A.colorEndVariance?GQ.serializeRgbColor(A.colorEndVariance):void 0};_onParticleEmitterSetColorIntensityEnd=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.cie=A.colorIntensityEnd};_onParticleEmitterSetColorIntensityEndVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.ciev=A.colorIntensityEndVariance};_onParticleEmitterSetColorIntensityStart=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.cis=A.colorIntensityStart};_onParticleEmitterSetColorIntensityStartVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.cisv=A.colorIntensityStartVariance};_onParticleEmitterSetColorStart=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.cs=A.colorStart?GQ.serializeRgbColor(A.colorStart):void 0};_onParticleEmitterSetColorStartVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.csv=A.colorStartVariance?GQ.serializeRgbColor(A.colorStartVariance):void 0};_onParticleEmitterSetGravity=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.g=A.gravity?GQ.serializeVector(A.gravity):void 0};_onParticleEmitterSetLifetime=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.l=A.lifetime};_onParticleEmitterSetLifetimeVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.lv=A.lifetimeVariance};_onParticleEmitterSetMaxParticles=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.mp=A.maxParticles};_onParticleEmitterSetOffset=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.o=A.offset?GQ.serializeVector(A.offset):void 0};_onParticleEmitterSetOpacityEnd=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.oe=A.opacityEnd};_onParticleEmitterSetOpacityEndVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.oev=A.opacityEndVariance};_onParticleEmitterSetOpacityStart=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.os=A.opacityStart};_onParticleEmitterSetOpacityStartVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.osv=A.opacityStartVariance};_onParticleEmitterSetPaused=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.pa=A.paused};_onParticleEmitterSetPosition=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.p=A.position?GQ.serializeVector(A.position):void 0,Q.e=A.position?void 0:Q.e,Q.en=A.position?void 0:Q.en};_onParticleEmitterSetPositionVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.pv=A.positionVariance?GQ.serializeVector(A.positionVariance):void 0};_onParticleEmitterSetRate=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.r=A.rate};_onParticleEmitterSetRateVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.rv=A.rateVariance};_onParticleEmitterSetSizeEnd=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.se=A.sizeEnd};_onParticleEmitterSetSizeEndVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.sev=A.sizeEndVariance};_onParticleEmitterSetSizeStart=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.ss=A.sizeStart};_onParticleEmitterSetSizeStartVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.ssv=A.sizeStartVariance};_onParticleEmitterSetTextureUri=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.tu=A.textureUri};_onParticleEmitterSetTransparent=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.t=A.transparent};_onParticleEmitterSetVelocity=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.v=A.velocity?GQ.serializeVector(A.velocity):void 0};_onParticleEmitterSetVelocityVariance=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Q.vv=A.velocityVariance?GQ.serializeVector(A.velocityVariance):void 0};_onParticleEmitterSpawn=(A)=>{let Q=this._createOrGetQueuedParticleEmitterSync(A.particleEmitter);Object.assign(Q,A.particleEmitter.serialize())};_onPlayerCameraFaceEntity=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.pl=GQ.serializeVector(A.entity.position),delete Q.et,delete Q.pt};_onPlayerCameraFacePosition=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.pl=A.position?GQ.serializeVector(A.position):void 0,delete Q.et,delete Q.pt};_onPlayerCameraSetAttachedToEntity=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.e=A.entity.id,delete Q.p,this._syncPlayerCameraAttachedEntityModel(A.playerCamera)};_onPlayerCameraSetAttachedToPosition=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.p=A.position?GQ.serializeVector(A.position):void 0,delete Q.e};_onPlayerCameraSetCollidesWithBlocks=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.cb=A.collidesWithBlocks};_onPlayerCameraSetFilmOffset=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.fo=A.filmOffset};_onPlayerCameraSetForwardOffset=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.ffo=A.forwardOffset};_onPlayerCameraSetFov=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.fv=A.fov};_onPlayerCameraSetMode=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.m=A.mode,this._syncPlayerCameraAttachedEntityModel(A.playerCamera)};_onPlayerCameraSetOffset=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.o=A.offset?GQ.serializeVector(A.offset):void 0};_onPlayerCameraSetShoulderAngle=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.sa=A.shoulderAngle};_onPlayerCameraSetTargetEntity=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.et=A.entity?A.entity.id:void 0,delete Q.pl,delete Q.pt};_onPlayerCameraSetTargetPosition=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.pt=A.position?GQ.serializeVector(A.position):void 0,delete Q.et,delete Q.pl};_onPlayerCameraSetZoom=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.z=A.zoom};_onPlayerCameraSetViewModel=(A)=>{this._syncPlayerCameraAttachedEntityModel(A.playerCamera)};_onPlayerCameraSetViewModelHiddenNodes=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.h=Array.from(A.viewModelHiddenNodes)};_onPlayerCameraSetViewModelPitchesWithCamera=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.mp=A.viewModelPitchesWithCamera};_onPlayerCameraSetViewModelShownNodes=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.s=Array.from(A.viewModelShownNodes)};_onPlayerCameraSetViewModelYawsWithCamera=(A)=>{let Q=this._createOrGetQueuedCameraSync(A.playerCamera.player);Q.my=A.viewModelYawsWithCamera};_onPlayerJoinedWorld=(A)=>{let{player:Q}=A;this._playersInWorld.add(Q);for(let C of this._world.audioManager.getAllAudios()){let X=this._createOrGetQueuedAudioSync(C,Q);this._assignUndefined(X,C.serialize())}for(let C of this._world.blockTypeRegistry.getAllBlockTypes()){let X=this._createOrGetQueuedBlockTypeSync(C,Q);this._assignUndefined(X,C.serialize())}let B=this._createOrGetQueuedCameraSync(Q);this._assignUndefined(B,Q.camera.serialize());for(let C of this._world.chunkLattice.getAllChunks()){let X=this._createOrGetQueuedChunkSync(C,Q);this._assignUndefined(X,C.serialize())}for(let C of this._world.entityManager.getAllEntities()){if(Q.camera.attachedToEntity===void 0&&C instanceof BX&&C.player===Q)Q.camera.setAttachedToEntity(C);let X=this._createOrGetQueuedEntitySync(C,Q);this._assignUndefined(X,C.serialize())}this._syncPlayerCameraAttachedEntityModel(Q.camera);for(let C of this._world.particleEmitterManager.getAllParticleEmitters()){let X=this._createOrGetQueuedParticleEmitterSync(C,Q);this._assignUndefined(X,C.serialize())}for(let C of dJ.instance.getConnectedPlayers()){let X=this._createOrGetQueuedPlayerSync(C,Q);this._assignUndefined(X,C.serialize())}for(let C of this._world.sceneUIManager.getAllSceneUIs()){let X=this._createOrGetQueuedSceneUISync(C,Q);this._assignUndefined(X,C.serialize())}let Y=this._createOrGetQueuedWorldSync(this._world,Q);this._assignUndefined(Y,this._world.serialize());let J=this._createOrGetQueuedPlayerSync(Q);this._assignUndefined(J,Q.serialize())};_onPlayerLeftWorld=(A)=>{this._playersInWorld.delete(A.player);let Q=this._createOrGetQueuedPlayerSync(A.player);Q.rm=!0};_onPlayerReconnectedWorld=(A)=>{this._onPlayerJoinedWorld(A)};_onPlayerRequestNotificationPermission=(A)=>{this._createOrGetQueuedNotificationPermissionRequestSync(A.player)};_onPlayerRequestSync=(A)=>{A.player.connection.send([gQ.createPacket(gQ.outboundPackets.syncResponsePacketDefinition,{r:A.receivedAt,s:Date.now(),p:performance.now()-A.receivedAtMs,n:this._world.loop.nextTickMs},this._world.loop.currentTick)])};_onPlayerUIAppend=(A)=>{let Q=this._createOrGetQueuedUISync(A.playerUI.player);Q.ua??=[],Q.ua.push(A.htmlUri)};_onPlayerUIFreezePointerLock=(A)=>{let Q=this._createOrGetQueuedUISync(A.playerUI.player);Q.pf=A.freeze};_onPlayerUILoad=(A)=>{let Q=this._createOrGetQueuedUISync(A.playerUI.player);Q.u=A.htmlUri};_onPlayerUILockPointer=(A)=>{let Q=this._createOrGetQueuedUISync(A.playerUI.player);Q.p=A.lock};_onPlayerUISendData=(A)=>{this._createOrGetQueuedUIDatasSync(A.playerUI.player).push(A.data)};_onSceneUILoad=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);Object.assign(Q,A.sceneUI.serialize()),this._loadedSceneUIs.add(Q.i)};_onSceneUISetAttachedToEntity=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);Q.e=A.entity?A.entity.id:void 0,Q.p=A.entity?void 0:Q.p};_onSceneUISetOffset=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);Q.o=A.offset?GQ.serializeVector(A.offset):void 0};_onSceneUISetPosition=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);Q.p=A.position?GQ.serializeVector(A.position):void 0,Q.e=A.position?void 0:Q.e};_onSceneUISetState=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);Q.s=A.state};_onSceneUISetViewDistance=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);Q.v=A.viewDistance};_onSceneUIUnload=(A)=>{let Q=this._createOrGetQueuedSceneUISync(A.sceneUI);if(this._loadedSceneUIs.has(Q.i))this._queuedSceneUISyncs.broadcast.delete(Q.i),this._loadedSceneUIs.delete(Q.i);else Q.rm=!0};_onSimulationDebugRaycast=(A)=>{this._createOrGetDebugRaycastsSync().push(GQ.serializePhysicsDebugRaycast(A))};_onSimulationDebugRender=(A)=>{let Q=this._createOrGetDebugRenderSync();Q.v=Array.from(A.vertices),Q.c=Array.from(A.colors)};_onWorldSetAmbientLightColor=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.ac=GQ.serializeRgbColor(A.color)};_onWorldSetAmbientLightIntensity=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.ai=A.intensity};_onWorldSetDirectionalLightColor=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.dc=GQ.serializeRgbColor(A.color)};_onWorldSetDirectionalLightIntensity=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.di=A.intensity};_onWorldSetDirectionalLightPosition=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.dp=GQ.serializeVector(A.position)};_onWorldSetFogColor=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.fc=GQ.serializeRgbColor(A.color)};_onWorldSetFogFar=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.ff=A.far};_onWorldSetFogNear=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.fn=A.near};_onWorldSetSkyboxIntensity=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.si=A.intensity};_onWorldSetSkyboxUri=(A)=>{let Q=this._createOrGetQueuedWorldSync(A.world);Q.s=A.uri};_assignUndefined(A,Q){for(let B in Q)if(A[B]===void 0)A[B]=Q[B];return A}_createAudioSync=(A)=>({i:A.id});_createOrGetQueuedAudioSync(A,Q){if(A.id===void 0)l.fatalError("NetworkSynchronizer._createOrGetQueuedAudioSync(): Audio has no id!");return this._createOrGetQueuedSync(this._queuedAudioSyncs,A.id,this._createAudioSync,A,Q)}_createBlockSync=(A)=>({i:0,c:[A.x,A.y,A.z]});_createOrGetQueuedBlockSync(A,Q){let B=`${A.x},${A.y},${A.z}`;return this._createOrGetQueuedSync(this._queuedBlockSyncs,B,this._createBlockSync,A,Q)}_createBlockTypeSync=(A)=>({i:A.id});_createOrGetQueuedBlockTypeSync(A,Q){return this._createOrGetQueuedSync(this._queuedBlockTypeSyncs,A.id,this._createBlockTypeSync,A,Q)}_createCameraSync=()=>({});_createOrGetQueuedCameraSync(A){return this._createOrGetQueuedSingletonSync(this._queuedCameraSyncs,this._createCameraSync,void 0,A)}_createChatMessagesSync=()=>[];_createOrGetQueuedChatMessagesSync(A){return this._createOrGetQueuedSingletonSync(this._queuedChatMessagesSyncs,this._createChatMessagesSync,void 0,A)}_createChunkSync=(A)=>({c:[A.originCoordinate.x,A.originCoordinate.y,A.originCoordinate.z]});_createOrGetQueuedChunkSync(A,Q){if(!A.originCoordinate)l.fatalError("NetworkSynchronizer._createOrGetQueuedChunkSync(): Chunk has no origin coordinate!");let B=`${A.originCoordinate.x},${A.originCoordinate.y},${A.originCoordinate.z}`;return this._createOrGetQueuedSync(this._queuedChunkSyncs,B,this._createChunkSync,A,Q)}_createDebugRaycastsSync=()=>[];_createOrGetDebugRaycastsSync(A){return this._createOrGetQueuedSingletonSync(this._queuedDebugRaycastsSyncs,this._createDebugRaycastsSync,void 0,A)}_createDebugRenderSync=()=>({v:[],c:[]});_createOrGetDebugRenderSync(A){return this._createOrGetQueuedSingletonSync(this._queuedDebugRenderSyncs,this._createDebugRenderSync,void 0,A)}_createEntitySync=(A)=>({i:A.id});_createOrGetQueuedEntitySync(A,Q){if(A.id===void 0)l.fatalError("NetworkSynchronizer._createOrGetQueuedEntitySync(): Entity has no id!");return this._createOrGetQueuedSync(this._queuedEntitySyncs,A.id,this._createEntitySync,A,Q)}_createEntityModelAnimationSync=(A)=>({n:A.name});_createOrGetQueuedEntityModelAnimationSync(A,Q){if(A.entity.id===void 0)l.fatalError("NetworkSynchronizer._createOrGetQueuedEntityModelAnimationSync(): EntityModelAnimation entity has no id!");let B=this._createOrGetQueuedEntitySync(A.entity,Q);B.ma??=[];let Y=B.ma.find((J)=>J.n===A.name);if(!Y)Y=this._createEntityModelAnimationSync(A),B.ma.push(Y);return Y}_createEntityModelNodeOverrideSync=(A)=>({n:A.nameMatch});_createOrGetQueuedEntityModelNodeOverrideSync(A,Q){if(A.entity.id===void 0)l.fatalError("NetworkSynchronizer._createOrGetQueuedEntityModelNodeOverrideSync(): EntityModelNodeOverride entity has no id!");let B=this._createOrGetQueuedEntitySync(A.entity,Q);B.mo??=[];let Y=B.mo.find((J)=>J.n===A.nameMatch);if(!Y)Y=this._createEntityModelNodeOverrideSync(A),B.mo.push(Y);return Y}_createNotificationPermissionRequestSync=()=>null;_createOrGetQueuedNotificationPermissionRequestSync(A){return this._createOrGetQueuedSingletonSync(this._queuedNotificationPermissionRequestSyncs,this._createNotificationPermissionRequestSync,void 0,A)}_createParticleEmitterSync=(A)=>({i:A.id});_createOrGetQueuedParticleEmitterSync(A,Q){if(A.id===void 0)l.fatalError("NetworkSynchronizer._createOrGetQueuedParticleEmitterSync(): ParticleEmitter has no id!");return this._createOrGetQueuedSync(this._queuedParticleEmitterSyncs,A.id,this._createParticleEmitterSync,A,Q)}_createPlayerSync=(A)=>({i:A.id});_createOrGetQueuedPlayerSync(A,Q){return this._createOrGetQueuedSync(this._queuedPlayerSyncs,A.id,this._createPlayerSync,A,Q)}_createSceneUISync=(A)=>({i:A.id});_createOrGetQueuedSceneUISync(A,Q){if(A.id===void 0)l.fatalError("NetworkSynchronizer._createOrGetQueuedSceneUISync(): SceneUI has no id!");return this._createOrGetQueuedSync(this._queuedSceneUISyncs,A.id,this._createSceneUISync,A,Q)}_createUISync=()=>({});_createOrGetQueuedUISync(A){return this._createOrGetQueuedSingletonSync(this._queuedUISyncs,this._createUISync,void 0,A)}_createUIDatasSync=()=>[];_createOrGetQueuedUIDatasSync(A){return this._createOrGetQueuedSingletonSync(this._queuedUIDatasSyncs,this._createUIDatasSync,void 0,A)}_createWorldSync=(A)=>({i:A.id});_createOrGetQueuedWorldSync(A,Q){if(A.id!==this._world.id)l.fatalError("NetworkSynchronizer._createOrGetQueuedWorldSync(): World does not match this network synchronizer world!");return this._createOrGetQueuedSingletonSync(this._queuedWorldSyncs,this._createWorldSync,A,Q)}_createOrGetQueuedSync(A,Q,B,Y,J){let C,X;if(J){if(X=A.perPlayer.get(J),!X)X=new bB,A.perPlayer.set(J,X);if(!this._outboundPerPlayerReliablePackets.has(J))this._outboundPerPlayerReliablePackets.set(J,[])}else X=A.broadcast;if(C=X.get(Q),C===void 0)C=B(Y),X.set(Q,C);return C}_createOrGetQueuedSingletonSync(A,Q,B,Y){let J=Y?A.perPlayer.get(Y):A.broadcast;if(J===void 0)if(J=Q(B),Y){if(A.perPlayer.set(Y,J),!this._outboundPerPlayerReliablePackets.has(Y))this._outboundPerPlayerReliablePackets.set(Y,[])}else A.broadcast=J;return J}_clearSyncQueue(A){if(A.broadcast.size>0)A.broadcast.clear();if(A.perPlayer.size>0)A.perPlayer.clear()}_clearSingletonSyncQueue(A){if(A.broadcast!==void 0)A.broadcast=void 0;if(A.perPlayer.size>0)A.perPlayer.clear()}_collectSingletonSyncToOutboundPackets(A,Q){if(A.broadcast!==void 0){let B=gQ.createPacket(Q,A.broadcast,this._world.loop.currentTick);this._outboundSharedReliablePackets.push(B);for(let Y of this._outboundPerPlayerReliablePackets.valuesArray)Y.push(B)}if(A.perPlayer.size>0)for(let[B,Y]of A.perPlayer.entries())this._outboundPerPlayerReliablePackets.get(B)?.push(gQ.createPacket(Q,Y,this._world.loop.currentTick))}_collectSyncToOutboundPackets(A,Q){if(A.broadcast.size>0){let B=gQ.createPacket(Q,A.broadcast.valuesArray,this._world.loop.currentTick);this._outboundSharedReliablePackets.push(B);for(let Y of this._outboundPerPlayerReliablePackets.valuesArray)Y.push(B)}if(A.perPlayer.size>0)for(let[B,Y]of A.perPlayer.entries())this._outboundPerPlayerReliablePackets.get(B)?.push(gQ.createPacket(Q,Y.valuesArray,this._world.loop.currentTick))}_syncPlayerCameraAttachedEntityModel(A){let Q=A.attachedToEntity,B=Q&&(A.mode===0?A.viewModelUri:Q.modelUri);if(Q&&B)this._createOrGetQueuedEntitySync(Q,A.player).m=B}}class KM{_particleEmitters=new Map;_nextParticleEmitterId=1;_world;constructor(A){this._world=A}get world(){return this._world}despawnEntityAttachedParticleEmitters(A){this.getAllEntityAttachedParticleEmitters(A).forEach((Q)=>{Q.despawn()})}getAllParticleEmitters(){return Array.from(this._particleEmitters.values())}getAllEntityAttachedParticleEmitters(A){return this.getAllParticleEmitters().filter((Q)=>Q.attachedToEntity===A)}registerParticleEmitter(A){if(A.id!==void 0)return A.id;let Q=this._nextParticleEmitterId;return this._particleEmitters.set(Q,A),this._nextParticleEmitterId++,Q}unregisterParticleEmitter(A){if(A.id===void 0)return;this._particleEmitters.delete(A.id)}}class VM{_sceneUIs=new Map;_nextSceneUIId=1;_world;constructor(A){this._world=A}get world(){return this._world}getAllSceneUIs(){return Array.from(this._sceneUIs.values())}getAllEntityAttachedSceneUIs(A){return this.getAllSceneUIs().filter((Q)=>Q.attachedToEntity===A)}getSceneUIById(A){return this._sceneUIs.get(A)}registerSceneUI(A){if(A.id!==void 0)return A.id;let Q=this._nextSceneUIId;return this._sceneUIs.set(Q,A),this._nextSceneUIId++,Q}unloadEntityAttachedSceneUIs(A){this.getAllEntityAttachedSceneUIs(A).forEach((Q)=>{Q.unload()})}unregisterSceneUI(A){if(A.id===void 0)return;this._sceneUIs.delete(A.id)}}import Ft from"fs";import wm0 from"path";import{brotliCompressSync as Cm0,brotliDecompressSync as Xm0,constants as bk,gunzipSync as Gm0,gzipSync as Wm0}from"zlib";var Qt=Object.values(w8).sort((A,Q)=>A.enumIndex-Q.enumIndex);function Fm0(A){return A<<1^A>>31}function IM(A){return A>>>1^-(A&1)}function Zm0(A,Q,B){let Y=B>>>0;while(Y>127)A[Q++]=Y&127|128,Y>>>=7;return A[Q++]=Y,Q}function HM(A,Q,B){return Zm0(A,Q,Fm0(B))}function DM(A,Q){let B=0,Y=0,J=0;do J=A[Q++],B|=(J&127)<>>0,offset:Q}}function $m0(A,Q){if(A==="none")return Q;if(A==="gzip")return Gm0(Q);return Xm0(Q)}function CSQ(A,Q,B){if(A==="none")return Q;if(A==="gzip")return Wm0(Q,{level:Math.min(9,Math.max(0,B))});return Cm0(Q,{params:{[bk.BROTLI_PARAM_MODE]:bk.BROTLI_MODE_GENERIC,[bk.BROTLI_PARAM_QUALITY]:Math.min(11,Math.max(0,B)),[bk.BROTLI_PARAM_SIZE_HINT]:Q.byteLength}})}function XSQ(A){return A!==null&&typeof A==="object"}function Um0(A){if(!A)return;if(Array.isArray(A))return A;return Object.values(A)}class eY{static isCompressedWorldMap(A){if(!XSQ(A))return!1;if(typeof A.data!=="string")return!1;if(!XSQ(A.bounds))return!1;let Q=A.bounds;return typeof Q.minX==="number"&&typeof Q.minY==="number"&&typeof Q.minZ==="number"&&typeof Q.maxX==="number"&&typeof Q.maxY==="number"&&typeof Q.maxZ==="number"}static compress(A,Q={}){let B=A.blocks??{},Y=[],J=1/0,C=1/0,X=1/0,G=-1/0,W=-1/0,F=-1/0,Z=!1;for(let N in B){let q=B[N],w=typeof q==="number"?q:q.i,P=typeof q==="number"?0:q.r??0;if(!Number.isInteger(w)||w<0||w>255)l.fatalError(`WorldMapCodec.compress(): Invalid block type id ${w} at ${N} (expected 0-255).`);if(!Number.isInteger(P)||P<0||P>=Qt.length)l.fatalError(`WorldMapCodec.compress(): Invalid block rotation index ${P} at ${N}.`);if(P!==0)Z=!0;let _=N.indexOf(","),j=N.indexOf(",",_+1),k=Number(N.slice(0,_)),T=Number(N.slice(_+1,j)),S=Number(N.slice(j+1));J=Math.min(J,k),C=Math.min(C,T),X=Math.min(X,S),G=Math.max(G,k),W=Math.max(W,T),F=Math.max(F,S),Y.push({x:k,y:T,z:S,id:w,r:P})}if(Y.length===0){let N=Buffer.allocUnsafe(4);N.writeUInt32LE(0,0);let q=Q.algorithm??"brotli",w=Q.level??9,P=CSQ(q,N,w).toString("base64");return{format:"hytopia.worldmap.compressed",codecVersion:1,version:"1.0.0",algorithm:q,data:P,bounds:{minX:0,minY:0,minZ:0,maxX:0,maxY:0,maxZ:0},blockTypes:A.blockTypes,entities:A.entities,options:{rotations:!1,useDelta:!0,useVarint:!0}}}let U=Q.includeRotations??Z;if(!U&&Z)l.fatalError("WorldMapCodec.compress(): Map contains rotated blocks but includeRotations is false.");for(let N=0;NN.y-q.y||N.x-q.x||N.z-q.z);let $=U?25:20,E=Buffer.allocUnsafe(4+Y.length*$),K=0;E.writeUInt32LE(Y.length,K),K+=4;let I=0,V=0,H=0;for(let N=0;N=Qt.length)l.fatalError(`WorldMapCodec.decodeBlockEntries(): Invalid rotation index ${I} at block ${$}.`);if(K<0||K>255)l.fatalError(`WorldMapCodec.decodeBlockEntries(): Invalid block type id ${K} at block ${$} (expected 0-255).`);let V=F+C.minX,H=Z+C.minY,D=U+C.minZ;yield{globalCoordinate:{x:V,y:H,z:D},blockTypeId:K,blockRotation:I!==0?Qt[I]:void 0}}}return W()}static decompressToWorldMap(A){let Q=Um0(A.blockTypes),B=A.entities,Y={},J=A.options?.rotations===!0;for(let C of this.decodeBlockEntries(A)){let X=`${C.globalCoordinate.x},${C.globalCoordinate.y},${C.globalCoordinate.z}`;if(!J||!C.blockRotation||C.blockRotation.enumIndex===0)Y[X]=C.blockTypeId;else Y[X]={i:C.blockTypeId,r:C.blockRotation.enumIndex}}return{blockTypes:Q,blocks:Y,entities:B}}}import{brotliCompressSync as Em0,brotliDecompressSync as Km0,constants as mk,gunzipSync as Vm0,gzipSync as Im0}from"zlib";var kV=Buffer.from("HYTCHUNK"),NM=1,_V=12;function GSQ(A){if(A==="none")return 0;if(A==="gzip")return 2;return 1}function WSQ(A){if(A===0)return"none";if(A===2)return"gzip";return"brotli"}var Hm0=Object.values(w8).sort((A,Q)=>A.enumIndex-Q.enumIndex);function ZSQ(A){return A!==null&&typeof A==="object"}function $SQ(A){return A<<1^A>>31}function Dm0(A){return A>>>1^-(A&1)}function LM(A){let Q=A>>>0,B=1;while(Q>127)B++,Q>>>=7;return B}function Bt(A){return LM($SQ(A))}function qM(A,Q,B){let Y=B>>>0;while(Y>127)A[Q++]=Y&127|128,Y>>>=7;return A[Q++]=Y,Q}function Yt(A,Q,B){return qM(A,Q,$SQ(B))}function MM(A,Q){let B=0,Y=0,J=0;do J=A[Q++],B|=(J&127)<>>0,offset:Q}}function Jt(A,Q){let B=MM(A,Q);return{value:Dm0(B.value),offset:B.offset}}function Nm0(A,Q,B){if(A==="none")return Q;if(A==="gzip")return Im0(Q,{level:Math.min(9,Math.max(0,B))});return Em0(Q,{params:{[mk.BROTLI_PARAM_MODE]:mk.BROTLI_MODE_GENERIC,[mk.BROTLI_PARAM_QUALITY]:Math.min(11,Math.max(0,B)),[mk.BROTLI_PARAM_SIZE_HINT]:Q.byteLength}})}function Lm0(A,Q){if(A==="none")return Q;if(A==="gzip")return Vm0(Q);return Km0(Q)}function Ct(A,Q){if(!Number.isSafeInteger(A))l.fatalError(`WorldMapChunkCacheCodec: ${Q} must be a safe integer.`)}function FSQ(A){if(!A)return;if(Array.isArray(A))return A;if(ZSQ(A))return Object.values(A);return}class o8{static _writeHeader(A){let Q=Buffer.allocUnsafe(_V);return kV.copy(Q,0),Q.writeUInt8(NM,8),Q.writeUInt8(GSQ(A),9),Q.writeUInt16LE(0,10),Q}static isWorldMapChunkCache(A){if(!ZSQ(A))return!1;if(typeof A.data!=="string")return!1;if(A.format==="hytopia.worldmap.chunk-cache")return!0;try{let Q=Buffer.from(A.data.slice(0,24),"base64");if(Q.byteLength<8)return!1;return Q.subarray(0,8).equals(kV)}catch{return!1}}static create(A,Q={}){let B=Q.algorithm??"brotli",Y=Q.level??6,{encoded:J}=this._encodeBody(A,{includeRotations:Q.includeRotations,sourceSha256:Q.sourceSha256}),C=this._writeHeader(B),X=Nm0(B,J,Y),G=Buffer.concat([C,X]);return{format:"hytopia.worldmap.chunk-cache",codecVersion:1,version:"1.0.0",algorithm:B,data:G.toString("base64")}}static decode(A){let Q=this._decodeFile(A),B=this._decodeMetadata(Q.body),Y=B.metadata.options?.rotations===!0,J=B.chunkCount,C=B.offset,X=this._decodeChunks(Q.body,C,J,Y);return{metadata:B.metadata,chunks:X}}static decodeMetadata(A){let Q=this._decodeFile(A);return this._decodeMetadata(Q.body).metadata}static decodeChunks(A){let Q=this._decodeFile(A),B=this._decodeMetadata(Q.body),Y=B.metadata.options?.rotations===!0;return this._decodeChunks(Q.body,B.offset,B.chunkCount,Y)}static decompressToWorldMap(A){let{metadata:Q,chunks:B}=this.decode(A),Y={},J=Q.options?.rotations===!0;for(let C of B){let X=C.originCoordinate;for(let G=0;G=c9)l.fatalError(`WorldMapChunkCacheCodec.decode(): Invalid block index ${L} (expected 0-${c9-1}).`);let z=A.readUInt8(J++),M=Hm0[z];if(!M)l.fatalError(`WorldMapChunkCacheCodec.decode(): Invalid rotation enumIndex ${z}.`);K.set(L,M)}}yield{originCoordinate:{x:W,y:F,z:Z},blocks:E,blockRotations:K}}}return C()}static _encodeBody(A,Q){let B=new Map,Y=!1,J=(I,V,H)=>{if(Ct(I.x,"block x"),Ct(I.y,"block y"),Ct(I.z,"block z"),!Number.isInteger(V)||V<0||V>255)l.fatalError(`WorldMapChunkCacheCodec: Invalid block type id ${V} (expected 0-255).`);if(!Number.isInteger(H)||H<0||H>255)l.fatalError(`WorldMapChunkCacheCodec: Invalid rotation enumIndex ${H} (expected 0-255).`);let D=MY.globalCoordinateToOriginCoordinate(I),L=`${D.x},${D.y},${D.z}`,z=B.get(L);if(!z)z={originCoordinate:D,blocks:new Uint8Array(c9),rotationsByBlockIndex:new Map},B.set(L,z);let M=MY.globalCoordinateToLocalCoordinate(I),N=MY.localCoordinateToBlockIndex(M);if(z.blocks[N]=V,H!==0)z.rotationsByBlockIndex.set(N,H),Y=!0};if(eY.isCompressedWorldMap(A))for(let I of eY.decodeBlockEntries(A))J(I.globalCoordinate,I.blockTypeId,I.blockRotation?.enumIndex??0);else if(A.blocks)for(let I in A.blocks){let V=A.blocks[I],H=typeof V==="number"?V:V.i,D=typeof V==="number"?0:V.r??0,L=I.indexOf(","),z=I.indexOf(",",L+1),M=Number(I.slice(0,L)),N=Number(I.slice(L+1,z)),q=Number(I.slice(z+1));J({x:M,y:N,z:q},H,D)}let C=Q.includeRotations??Y;if(!C&&Y)l.fatalError("WorldMapChunkCacheCodec: Map contains rotated blocks but includeRotations is false.");let X=C&&Y,G={blockTypes:FSQ(A.blockTypes),entities:A.entities,options:{rotations:X},source:Q.sourceSha256?{sha256:Q.sourceSha256}:void 0,metadata:eY.isCompressedWorldMap(A)?A.metadata:void 0,mapVersion:eY.isCompressedWorldMap(A)?A.mapVersion:void 0},W=Buffer.from(JSON.stringify(G),"utf8"),F=B.size,Z=Array.from(B.values());Z.sort((I,V)=>I.originCoordinate.y-V.originCoordinate.y||I.originCoordinate.x-V.originCoordinate.x||I.originCoordinate.z-V.originCoordinate.z);let U=0;for(let I of Z)if(U+=Bt(I.originCoordinate.x),U+=Bt(I.originCoordinate.y),U+=Bt(I.originCoordinate.z),U+=c9,X){let V=Array.from(I.rotationsByBlockIndex.entries());U+=LM(V.length);for(let[H]of V)U+=LM(H),U+=1}let $=LM(W.byteLength)+W.byteLength+LM(F)+U,E=Buffer.allocUnsafe($),K=0;K=qM(E,K,W.byteLength),W.copy(E,K),K+=W.byteLength,K=qM(E,K,F);for(let I of Z)if(K=Yt(E,K,I.originCoordinate.x),K=Yt(E,K,I.originCoordinate.y),K=Yt(E,K,I.originCoordinate.z),E.set(I.blocks,K),K+=c9,X){let V=Array.from(I.rotationsByBlockIndex.entries());V.sort((H,D)=>H[0]-D[0]),K=qM(E,K,V.length);for(let[H,D]of V)K=qM(E,K,H),E.writeUInt8(D,K++)}return{encoded:E,hasRotations:X}}}import IF from"fs";import qm0 from"path";import Mm0 from"crypto";function zm0(A){let Q=Mm0.createHash("sha256");return Q.update(A),Q.digest("hex")}function Wt(A){return A!==null&&typeof A==="object"}function Xt(A){return Wt(A)&&Object.keys(A).length>0}function Gt(A){if(!A)return!1;if(Array.isArray(A))return A.length>0;if(Wt(A))return Object.keys(A).length>0;return!1}function Rm0(A){if(!IF.existsSync(A))return;try{return JSON.parse(IF.readFileSync(A,"utf-8"))}catch{return}}function USQ(A){if(eY.isCompressedWorldMap(A))return{blockTypes:A.blockTypes,entities:A.entities};if(!Wt(A))return{};return{blockTypes:A.blockTypes,entities:A.entities}}class vV{static load(A,Q={}){let B=Q.preferChunkCache??!0,Y=qm0.resolve(process.cwd(),A),J=Y.endsWith(".chunks.bin"),C=Q.warnings??"auto",X=C==="always"||C==="auto"&&process.env.NODE_ENV!=="production",G=(Z)=>{if(X)l.warning(Z)};if(B){if(J&&!IF.existsSync(Y))l.fatalError(`WorldMapFileLoader.load(): Chunk cache file not found at ${Y}.`);let Z=Y;if(Y.endsWith(".compressed.json"))Z=Y.slice(0,-16);else if(Y.endsWith(".chunks.bin"))Z=Y.slice(0,-11);else if(Y.endsWith(".json"))Z=Y.slice(0,-5);let U=Z+".chunks.bin";if(IF.existsSync(U)){let $=IF.readFileSync(U);if($.byteLength>=_V&&$.subarray(0,8).equals(kV)&&$.readUInt8(8)===NM){let K={data:$.toString("base64")};try{let I=o8.decodeMetadata(K),V=I.source?.sha256,H=!Xt(I.entities),D=!Gt(I.blockTypes),L=H||D,z,M,N,q,w=()=>{let j=H&&z,k=D&&N;if(!j&&!k)return K;if(j&&M)G(`WorldMapFileLoader.load(): Chunk cache at ${U} missing entities; using entities overlay from ${M}.`);if(k&&q)G(`WorldMapFileLoader.load(): Chunk cache at ${U} missing blockTypes; using blockTypes overlay from ${q}.`);return{...K,...j?{entities:z}:{},...k?{blockTypes:N}:{}}},P=(j)=>{if(!L)return;let k=Rm0(j);if(!k)return;let T=USQ(k);if(!z&&Xt(T.entities))z=T.entities,M=j;if(!N&&Gt(T.blockTypes))N=T.blockTypes,q=j},_=(j,k)=>{if(!L)return;try{let T=JSON.parse(j),S=USQ(T);if(!z&&Xt(S.entities))z=S.entities,M=k;if(!N&&Gt(S.blockTypes))N=S.blockTypes,q=k}catch{}};if(V){let j=Y.endsWith(".compressed.json")?Y:Z+".compressed.json";if(IF.existsSync(j)){let k=IF.readFileSync(j,"utf-8");if(zm0(k)===V)return _(k,j),w();G(`WorldMapFileLoader.load(): Chunk cache sha256 mismatch for ${U}; ignoring cache and falling back to JSON.`)}else return G(`WorldMapFileLoader.load(): Chunk cache has source sha256, but ${j} is missing; using cache without validation.`),P(Z+".compressed.json"),P(Z+".json"),w()}else return P(Z+".compressed.json"),P(Z+".json"),w()}catch{if(J)l.fatalError(`WorldMapFileLoader.load(): Failed to decode chunk cache metadata for ${U}.`);G(`WorldMapFileLoader.load(): Failed to decode chunk cache metadata for ${U}; ignoring cache and falling back to JSON.`)}}else if(J)l.fatalError(`WorldMapFileLoader.load(): Invalid chunk cache at ${U}.`)}}if(J)l.fatalError(`WorldMapFileLoader.load(): Failed to load chunk cache at ${Y}.`);let W=IF.readFileSync(Y,"utf-8"),F=JSON.parse(W);if(o8.isWorldMapChunkCache(F))return F;if(eY.isCompressedWorldMap(F))return F;if(F&&typeof F==="object")return F;l.fatalError(`WorldMapFileLoader.load(): Unsupported map file format at ${Y}.`)}}var At;(($)=>{$.SET_AMBIENT_LIGHT_COLOR="WORLD.SET_AMBIENT_LIGHT_COLOR";$.SET_AMBIENT_LIGHT_INTENSITY="WORLD.SET_AMBIENT_LIGHT_INTENSITY";$.SET_DIRECTIONAL_LIGHT_COLOR="WORLD.SET_DIRECTIONAL_LIGHT_COLOR";$.SET_DIRECTIONAL_LIGHT_INTENSITY="WORLD.SET_DIRECTIONAL_LIGHT_INTENSITY";$.SET_DIRECTIONAL_LIGHT_POSITION="WORLD.SET_DIRECTIONAL_LIGHT_POSITION";$.SET_FOG_COLOR="WORLD.SET_FOG_COLOR";$.SET_FOG_FAR="WORLD.SET_FOG_FAR";$.SET_FOG_NEAR="WORLD.SET_FOG_NEAR";$.SET_SKYBOX_INTENSITY="WORLD.SET_SKYBOX_INTENSITY";$.SET_SKYBOX_URI="WORLD.SET_SKYBOX_URI";$.START="WORLD.START";$.STOP="WORLD.STOP"})(At||={});class zM extends BQ{_id;_ambientLightColor;_ambientLightIntensity;_audioManager;_blockTypeRegistry;_chatManager;_chunkLattice;_directionalLightColor;_directionalLightIntensity;_directionalLightPosition;_entityManager;_fogColor;_fogFar;_fogNear;_loop;_name;_networkSynchronizer;_particleEmitterManager;_sceneUIManager;_simulation;_skyboxIntensity;_skyboxUri;_tag;constructor(A){super();if(this._id=A.id,this._ambientLightColor=A.ambientLightColor??{r:255,g:255,b:255},this._ambientLightIntensity=A.ambientLightIntensity??1,this._directionalLightColor=A.directionalLightColor??{r:255,g:255,b:255},this._directionalLightIntensity=A.directionalLightIntensity??3,this._directionalLightPosition=A.directionalLightPosition??{x:100,y:150,z:100},this._fogColor=A.fogColor,this._fogFar=A.fogFar??550,this._fogNear=A.fogNear??500,this._name=A.name,this._skyboxIntensity=A.skyboxIntensity??1,this._skyboxUri=A.skyboxUri,this._tag=A.tag,this._audioManager=new UD(this),this._blockTypeRegistry=new ED(this),this._chatManager=new eD(this),this._chunkLattice=new QN(this),this._entityManager=new JN(this),this._loop=new EM(this,A.tickRate),this._networkSynchronizer=new fk(this),this._particleEmitterManager=new KM(this),this._sceneUIManager=new VM(this),this._simulation=new UM(this,A.tickRate,A.gravity),A.map)this.loadMap(A.map)}get id(){return this._id}get ambientLightColor(){return this._ambientLightColor}get ambientLightIntensity(){return this._ambientLightIntensity}get blockTypeRegistry(){return this._blockTypeRegistry}get chatManager(){return this._chatManager}get chunkLattice(){return this._chunkLattice}get directionalLightColor(){return this._directionalLightColor}get directionalLightIntensity(){return this._directionalLightIntensity}get directionalLightPosition(){return this._directionalLightPosition}get entityManager(){return this._entityManager}get fogColor(){return this._fogColor}get fogFar(){return this._fogFar}get fogNear(){return this._fogNear}get loop(){return this._loop}get name(){return this._name}get networkSynchronizer(){return this._networkSynchronizer}get particleEmitterManager(){return this._particleEmitterManager}get sceneUIManager(){return this._sceneUIManager}get simulation(){return this._simulation}get skyboxIntensity(){return this._skyboxIntensity}get skyboxUri(){return this._skyboxUri}get audioManager(){return this._audioManager}get tag(){return this._tag}loadMap(A,Q={}){if(typeof A==="string")A=vV.load(A);if((Q.preferMapArtifacts??!0)&&!eY.isCompressedWorldMap(A)&&!o8.isWorldMapChunkCache(A)&&typeof A==="object"&&A!==null&&"blocks"in A){let C=wm0.resolve(process.cwd(),"assets/map"),X=C+".chunks.bin",G=C+".compressed.json",W=C+".json";if(Ft.existsSync(W)&&(Ft.existsSync(X)||Ft.existsSync(G)))A=vV.load("assets/map.json")}if(eY.isCompressedWorldMap(A))A=eY.decompressToWorldMap(A);else if(o8.isWorldMapChunkCache(A))A=o8.decompressToWorldMap(A);this.chunkLattice.clear();let Y=Object.values(w8).sort((C,X)=>C.enumIndex-X.enumIndex);if(A.blockTypes)for(let C of A.blockTypes)this.blockTypeRegistry.registerGenericBlockType({id:C.id,isLiquid:C.isLiquid,lightLevel:C.lightLevel,name:C.name,textureUri:C.textureUri,customColliderOptions:C.customColliderOptions});if(A.blocks){let C=A.blocks,X=function*(){for(let G in C){let W=C[G],F=typeof W==="number"?W:W.i,Z=typeof W==="number"?void 0:W.r,U=G.indexOf(","),$=G.indexOf(",",U+1);yield{globalCoordinate:{x:Number(G.slice(0,U)),y:Number(G.slice(U+1,$)),z:Number(G.slice($+1))},blockTypeId:F,blockRotation:Z!==void 0?Y[Z]:void 0}}};this.chunkLattice.initializeBlockEntries(X())}if((Q.spawnEntities??!0)&&A.entities)for(let C in A.entities){let X=A.entities[C],G=C.indexOf(","),W=C.indexOf(",",G+1),F=Number(C.slice(0,G)),Z=Number(C.slice(G+1,W)),U=Number(C.slice(W+1));new X0({isEnvironmental:!0,...X}).spawn(this,{x:F,y:Z,z:U})}}setAmbientLightColor(A){this._ambientLightColor=A,this.emit("WORLD.SET_AMBIENT_LIGHT_COLOR",{world:this,color:A})}setAmbientLightIntensity(A){this._ambientLightIntensity=A,this.emit("WORLD.SET_AMBIENT_LIGHT_INTENSITY",{world:this,intensity:A})}setDirectionalLightColor(A){this._directionalLightColor=A,this.emit("WORLD.SET_DIRECTIONAL_LIGHT_COLOR",{world:this,color:A})}setDirectionalLightIntensity(A){this._directionalLightIntensity=A,this.emit("WORLD.SET_DIRECTIONAL_LIGHT_INTENSITY",{world:this,intensity:A})}setDirectionalLightPosition(A){this._directionalLightPosition=A,this.emit("WORLD.SET_DIRECTIONAL_LIGHT_POSITION",{world:this,position:A})}setFogColor(A){this._fogColor=A,this.emit("WORLD.SET_FOG_COLOR",{world:this,color:A})}setFogFar(A){this._fogFar=A,this.emit("WORLD.SET_FOG_FAR",{world:this,far:A})}setFogNear(A){this._fogNear=A,this.emit("WORLD.SET_FOG_NEAR",{world:this,near:A})}setSkyboxIntensity(A){this._skyboxIntensity=A,this.emit("WORLD.SET_SKYBOX_INTENSITY",{world:this,intensity:A})}setSkyboxUri(A){this._skyboxUri=A,this.emit("WORLD.SET_SKYBOX_URI",{world:this,uri:A})}start(){if(this._loop.isStarted)return;this._loop.start(),this.emit("WORLD.START",{world:this,startedAtMs:Date.now()})}stop(){if(!this._loop.isStarted)return;this._loop.stop(),this.emit("WORLD.STOP",{world:this,stoppedAtMs:Date.now()})}serialize(){return GQ.serializeWorld(this)}}var ESQ;((Q)=>Q.WORLD_CREATED="WORLD_MANAGER.WORLD_CREATED")(ESQ||={});class F0{static instance=new F0;_defaultWorld;_nextWorldId=1;_worlds=new Map;createWorld(A){let Q=new zM({...A,id:this._nextWorldId++});return Q.start(),this._worlds.set(Q.id,Q),BQ.globalInstance.emit("WORLD_MANAGER.WORLD_CREATED",{world:Q}),Q}getAllWorlds(){return Array.from(this._worlds.values())}getDefaultWorld(){return this._defaultWorld??=this.createWorld({name:"Default World",skyboxUri:"skyboxes/partly-cloudy"}),this._defaultWorld}getWorldsByTag(A){let Q=[];return this._worlds.forEach((B)=>{if(B.tag===A)Q.push(B)}),Q}getWorld(A){return this._worlds.get(A)}setDefaultWorld(A){this._defaultWorld=A}}function Zt(A,Q,B){return Math.max(Q,Math.min(B,Math.floor(A)))}function jm0(A,Q){if(A.blockTypeRegistry.getAllBlockTypes().some((Y)=>Y.id===Q))return;A.blockTypeRegistry.registerGenericBlockType({id:Q,name:`perf-block-${Q}`,textureUri:"blocks/stone.png"})}function Om0(A){if(typeof A==="number"){let Q=F0.instance.getWorld(Math.floor(A));if(Q)return Q}return F0.instance.getDefaultWorld()}function Pm0(A){return Math.max(1,Math.ceil(Math.sqrt(A)))}function Tm0(A,Q,B){if(B<=0)return;if(B>=c9){A.fill(Q);return}A.fill(0),A.fill(Q,0,B)}function Sm0(A,Q,B,Y){A.fill(0);let J=d9*B*d9,C=Math.max(0,Math.min(J,Y));if(C===0)return;let X=C;for(let G=0;G0;G++){let W=G<0;F++){let Z=W+(F<{if(Y+=C.length,Y>km0){mB(Q,413,{ok:!1,error:"Request body too large"}),A.destroy();return}J.push(C)}),A.on("error",()=>{mB(Q,400,{ok:!1,error:"Failed to read request body"})}),A.on("end",()=>{try{let C=Buffer.concat(J).toString("utf-8"),X=C.length>0?JSON.parse(C):{};B(X)}catch{mB(Q,400,{ok:!1,error:"Invalid JSON body"})}})}function DSQ(A){let Q=KSQ.resolve("assets"),B=A.trim().replace(/^\/+/,"").replace(/^assets[\\/]/,""),Y=KSQ.resolve(Q,B);if(!Y.startsWith(Q))return null;return Y}function ym0(A){switch((A??"").toLowerCase()){case"":case"idle":return new GE;case"random_walk":case"randomwalk":return new WD;case"chase":return new FD;case"interact":return new ZD;default:return null}}function gm0(A,Q,B){let Y=F0.instance.getDefaultWorld(),J=Math.max(0,Math.floor(A)),C=B??{x:0,y:10,z:0},X=Math.ceil(Math.sqrt(J))*2;for(let G=0;G=0&&Y0){let X=DSQ(Q);if(!X)throw Error("Invalid mapPath");if(!lk.existsSync(X))throw Error(`Map not found: ${Q}`);J=lk.readFileSync(X,"utf-8")}let C=[];for(let X=0;X0)F0.instance.setDefaultWorld(C[0]);return{created:C.length,defaultWorldId:F0.instance.getDefaultWorld().id}}function im0(A){let Q=Math.floor(A),B=F0.instance.getWorld(Q);if(!B)throw Error(`World not found: ${Q}`);return F0.instance.setDefaultWorld(B),{ok:!0,defaultWorldId:B.id}}function nm0(){let A=F0.instance.getDefaultWorld();LSQ(),G9.instance.despawnAll();for(let Q of A.entityManager.getEntitiesByTagSubstring(yV))Q.despawn();return A.chunkLattice.clear(),{ok:!0}}class RM{static enableIfConfigured(){if(!VSQ())return;try{if(!O0.instance.isEnabled)O0.instance.enable({snapshotIntervalMs:0});if(!$Y.instance.isEnabled)$Y.instance.enable()}catch(A){l.warning(`PerfHarness.enableIfConfigured(): Failed to enable perf tools. Error: ${String(A)}`)}}static handleWebRequest(A,Q){if(!VSQ())return!1;let B=A.url?.split("?")[0]??"/";if(!B.startsWith(`${dk}/`))return!1;if(!_m0(A))return mB(Q,401,{ok:!1,error:"Unauthorized"}),!0;let Y=A.method??"GET";if(Y==="GET"&&B===`${dk}/snapshot`){let J=O0.instance.getSnapshot(),C=$Y.instance.isEnabled?$Y.instance.getSnapshot():void 0,X=F0.instance.getDefaultWorld();return mB(Q,200,{...J,timestamp:Date.now(),players:dJ.instance.playerCount,bots:G9.instance.botCount,worlds:{count:F0.instance.getAllWorlds().length,defaultWorldId:X.id},world:{id:X.id,chunkCount:X.chunkLattice.chunkCount,entityCount:X.entityManager.entityCount},blockChurn:{running:Kt.isRunning},network:C}),!0}if(Y==="POST"&&B===`${dk}/reset`)return O0.instance.resetStats(),$Y.instance.reset(),mB(Q,200,{ok:!0}),!0;if(Y==="POST"&&B===`${dk}/action`)return vm0(A,Q,(J)=>{try{let C=J;switch(C.type){case"spawn_bots":{if(typeof C.count!=="number")return mB(Q,400,{ok:!1,error:'"count" is required'});let X=gm0(C.count,typeof C.behavior==="string"?C.behavior:void 0,C.origin);mB(Q,200,{ok:!0,result:X});return}case"despawn_bots":{let X=xm0(typeof C.count==="number"?C.count:void 0);mB(Q,200,{ok:!0,result:X});return}case"load_map":{if(typeof C.mapPath!=="string")return mB(Q,400,{ok:!1,error:'"mapPath" is required'});let X=fm0(C.mapPath,typeof C.worldId==="number"?C.worldId:void 0);mB(Q,200,{ok:!0,result:X});return}case"generate_blocks":{if(typeof C.blockCount!=="number")return mB(Q,400,{ok:!1,error:'"blockCount" is required'});if(typeof C.blockTypeId!=="number")return mB(Q,400,{ok:!1,error:'"blockTypeId" is required'});let X=bm0(C.blockCount,C.blockTypeId,typeof C.worldId==="number"?C.worldId:void 0,C.layout==="dense"||C.layout==="slab"?C.layout:void 0,typeof C.slabHeight==="number"?C.slabHeight:void 0,Vt(C.origin),typeof C.clear==="boolean"?C.clear:void 0);mB(Q,200,{ok:!0,result:X});return}case"spawn_entities":{if(typeof C.count!=="number")return mB(Q,400,{ok:!1,error:'"count" is required'});let X=mm0(C.count,C.kind==="model"||C.kind==="block"?C.kind:void 0,typeof C.options==="object"&&C.options?C.options:void 0,typeof C.tag==="string"?C.tag:void 0);mB(Q,200,{ok:!0,result:X});return}case"despawn_entities":{let X=um0(typeof C.tag==="string"?C.tag:void 0);mB(Q,200,{ok:!0,result:X});return}case"start_block_churn":{if(typeof C.blocksPerTick!=="number")return mB(Q,400,{ok:!1,error:'"blocksPerTick" is required'});if(typeof C.blockTypeId!=="number")return mB(Q,400,{ok:!1,error:'"blockTypeId" is required'});let X=lm0(C.blocksPerTick,C.blockTypeId,C.mode,C.min,C.max);mB(Q,200,{ok:!0,result:X});return}case"stop_block_churn":{let X=LSQ();mB(Q,200,{ok:!0,result:X});return}case"create_worlds":{if(typeof C.count!=="number")return mB(Q,400,{ok:!1,error:'"count" is required'});let X=pm0(C.count,typeof C.mapPath==="string"?C.mapPath:void 0,typeof C.setDefault==="boolean"?C.setDefault:void 0);mB(Q,200,{ok:!0,result:X});return}case"set_default_world":{if(typeof C.worldId!=="number")return mB(Q,400,{ok:!1,error:'"worldId" is required'});let X=im0(C.worldId);mB(Q,200,{ok:!0,result:X});return}case"clear_world":{let X=nm0();mB(Q,200,{ok:!0,result:X});return}case"reset":{O0.instance.resetStats(),$Y.instance.reset(),mB(Q,200,{ok:!0});return}default:mB(Q,400,{ok:!1,error:`Unsupported action: ${String(C.type)}`})}}catch(C){mB(Q,500,{ok:!1,error:C.message})}}),!0;return mB(Q,404,{ok:!1,error:"Not found"}),!0}}var pk=`-----BEGIN CERTIFICATE----- MIIGBzCCBO+gAwIBAgIQA9LHaXW2UWQvBpWa4wqL9DANBgkqhkiG9w0BAQsFADA8 MQswCQYDVQQGEwJVUzEPMA0GA1UEChMGQW1hem9uMRwwGgYDVQQDExNBbWF6b24g UlNBIDIwNDggTTAxMB4XDTI1MTEyMDAwMDAwMFoXDTI2MTIxOTIzNTk1OVowIzEh diff --git a/server/src/perf/PerfHarness.ts b/server/src/perf/PerfHarness.ts index 340d4ce2..a8726c70 100644 --- a/server/src/perf/PerfHarness.ts +++ b/server/src/perf/PerfHarness.ts @@ -28,7 +28,7 @@ const MAX_BODY_BYTES = 1024 * 1024; const DEFAULT_PERF_ENTITY_TAG = 'perf-tools'; type PerfAction = - | { type: 'spawn_bots'; count: number; behavior?: string } + | { type: 'spawn_bots'; count: number; behavior?: string; origin?: Vector3Like } | { type: 'despawn_bots'; count?: number } | { type: 'load_map'; mapPath: string; worldId?: number } | { type: 'generate_blocks'; blockCount: number; blockTypeId: number; worldId?: number; layout?: 'dense' | 'slab'; slabHeight?: number; origin?: Vector3Like; clear?: boolean } @@ -139,10 +139,14 @@ function createBehavior(name: string | undefined): BotBehavior | null { } } -function spawnBots(count: number, behaviorName: string | undefined): { spawned: number } { +function spawnBots( + count: number, + behaviorName: string | undefined, + origin: Vector3Like | undefined, +): { spawned: number } { const world = WorldManager.instance.getDefaultWorld(); const spawnedBots = Math.max(0, Math.floor(count)); - const origin = { x: 0, y: 10, z: 0 }; + const spawnOrigin = origin ?? { x: 0, y: 10, z: 0 }; const radius = Math.ceil(Math.sqrt(spawnedBots)) * 2; for (let i = 0; i < spawnedBots; i++) { @@ -153,9 +157,9 @@ function spawnBots(count: number, behaviorName: string | undefined): { spawned: BotManager.instance.spawnBot(world, { behavior, spawnPosition: { - x: origin.x + Math.cos(angle) * dist, - y: origin.y, - z: origin.z + Math.sin(angle) * dist, + x: spawnOrigin.x + Math.cos(angle) * dist, + y: spawnOrigin.y, + z: spawnOrigin.z + Math.sin(angle) * dist, }, }); } @@ -568,7 +572,11 @@ export default class PerfHarness { return respondJson(res, 400, { ok: false, error: '"count" is required' }); } - const result = spawnBots(action.count, typeof action.behavior === 'string' ? action.behavior : undefined); + const result = spawnBots( + action.count, + typeof action.behavior === 'string' ? action.behavior : undefined, + action.origin, + ); respondJson(res, 200, { ok: true, result }); return; From d8a291749cfecd44c4e5e2cb0ed8671ed1b941ac Mon Sep 17 00:00:00 2001 From: web3dev1337 <160291380+web3dev1337@users.noreply.github.com> Date: Sat, 7 Mar 2026 15:09:10 +1100 Subject: [PATCH 29/40] feat: support multi-client zoo observation --- CODEBASE_DOCUMENTATION.md | 2 +- .../perf-branch-state-2026-03-06/FINAL.md | 2 +- .../src/presets/zoo-game-observe.yaml | 29 +++- .../perf-tools/src/runners/BenchmarkRunner.ts | 155 ++++++++++++------ .../perf-tools/src/runners/ScenarioLoader.ts | 5 + 5 files changed, 133 insertions(+), 60 deletions(-) diff --git a/CODEBASE_DOCUMENTATION.md b/CODEBASE_DOCUMENTATION.md index 881789d6..3b1c7839 100644 --- a/CODEBASE_DOCUMENTATION.md +++ b/CODEBASE_DOCUMENTATION.md @@ -16,7 +16,7 @@ PROTOCOL: protocol/ - Packet schemas + definitions (@hytopia.com/server-protocol SDK: sdk/ - Git submodule → hytopiagg/sdk (build output lands here) EXAMPLES: sdk-examples/ - Reference games built with the SDK ASSETS: assets/release/ - Default game assets (audio, blocks, maps, models, particles, skyboxes, ui) -PERF: packages/perf-tools/ - Benchmark CLI + trace analysis (`hytopia-bench`), headless client metrics, synthetic + real-game presets (`zoo-game-full` benchmark, `zoo-game-observe` joinable observation run) +PERF: packages/perf-tools/ - Benchmark CLI + trace analysis (`hytopia-bench`), headless client metrics, synthetic + real-game presets (`zoo-game-full` single-client benchmark, `zoo-game-observe` 5-client joinable Zoo run) CONFIG: package.json - Monorepo root (npm workspaces) server/package.json - Server deps + build scripts server/tsconfig.json - Strict TS, path alias @/* → ./src/* diff --git a/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md b/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md index 9347592e..347de168 100644 --- a/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md +++ b/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md @@ -128,7 +128,7 @@ Representative presets: `zoo-game-full.yaml` is the cleaned real-game walkthrough benchmark retained from the local investigation. It is intentionally single-client: one benchmark browser joins, sends `/fillzoo`, and walks the route while client metrics are collected. It is not the “human joins a world with 5 other movers” observation mode. -`zoo-game-observe.yaml` is the joinable observation preset. It keeps the same Zoo setup but also spawns 5 moving perf bots near the zoo entrance so a human observer sees a busier scene without editing the benchmark by hand. CPU throttling is still a runner option, not hardcoded in either preset. +`zoo-game-observe.yaml` is the joinable observation preset. It launches 5 real benchmark browser clients, has each one send `/fillzoo` to populate its own zoo, and then moves them during the measured phase so a human observer joins a genuinely busy 6-slot Zoo world. CPU throttling is still a runner option, not hardcoded in either preset. ### Real Game Integration diff --git a/packages/perf-tools/src/presets/zoo-game-observe.yaml b/packages/perf-tools/src/presets/zoo-game-observe.yaml index d2a55894..2b6c795c 100644 --- a/packages/perf-tools/src/presets/zoo-game-observe.yaml +++ b/packages/perf-tools/src/presets/zoo-game-observe.yaml @@ -1,5 +1,6 @@ name: "zoo-game-observe" -description: "Zoo Game observation run: /fillzoo, 5 moving perf bots near the zoo entrance, plus the benchmark walkthrough client" +description: "Zoo Game observation run: 5 real benchmark clients join, each /fillzoo their own zoo, then move during a long measured phase" +browserClients: 5 warmupMs: 5000 phases: - name: setup-zoo @@ -8,10 +9,8 @@ phases: - type: send_chat message: "/fillzoo" durationMs: 3000 - - type: spawn_bots - count: 5 - behavior: random_walk - origin: { x: 0, y: 2, z: 25 } + target: all + staggerMs: 750 - name: wait-for-world actions: - type: wait_for_entities @@ -27,37 +26,57 @@ phases: yaw: 0 pitch: 0.3 durationMs: 500 + target: all + staggerMs: 500 - type: walk_player durationMs: 5000 options: { key: w } + target: all + staggerMs: 500 - type: set_camera yaw: -1.57 pitch: 0.3 durationMs: 300 + target: all + staggerMs: 500 - type: walk_player durationMs: 4000 options: { key: w } + target: all + staggerMs: 500 - type: set_camera yaw: 3.14 pitch: 0.3 durationMs: 300 + target: all + staggerMs: 500 - type: walk_player durationMs: 5000 options: { key: w } + target: all + staggerMs: 500 - type: set_camera yaw: 1.57 pitch: 0.3 durationMs: 300 + target: all + staggerMs: 500 - type: walk_player durationMs: 4000 options: { key: w } + target: all + staggerMs: 500 - type: set_camera yaw: 0 pitch: 0.3 durationMs: 300 + target: all + staggerMs: 500 - type: walk_player durationMs: 5000 options: { key: w } + target: all + staggerMs: 500 thresholds: tick_duration_ms: avg: 16 diff --git a/packages/perf-tools/src/runners/BenchmarkRunner.ts b/packages/perf-tools/src/runners/BenchmarkRunner.ts index a71538c5..62011821 100644 --- a/packages/perf-tools/src/runners/BenchmarkRunner.ts +++ b/packages/perf-tools/src/runners/BenchmarkRunner.ts @@ -7,7 +7,7 @@ import MetricCollector, { type CollectedMetrics } from './MetricCollector.js'; import ProcessMonitor, { type ProcessMetrics } from './ProcessMonitor.js'; import ServerApiClient from './ServerApiClient.js'; import WsClient from './WsClient.js'; -import { type Scenario, type ScenarioPhase, parseDuration } from './ScenarioLoader.js'; +import { type Scenario, type ScenarioAction, type ScenarioClientTarget, type ScenarioPhase, parseDuration } from './ScenarioLoader.js'; import type { BaselineResult } from './BaselineComparer.js'; export interface BenchmarkRunnerOptions { @@ -45,7 +45,7 @@ export default class BenchmarkRunner { private _collector: MetricCollector; private _processMonitor: ProcessMonitor; private _serverProcess: ChildProcess | null = null; - private _headlessClient: HeadlessClient | null = null; + private _headlessClients: HeadlessClient[] = []; private _serverApi: ServerApiClient; private _wsClients: WsClient[] = []; private _perfApiAvailable: boolean = true; @@ -99,45 +99,48 @@ export default class BenchmarkRunner { await this._serverApi.waitForHealthy(); - // Launch headless client if configured + // Launch headless browser clients if configured if (this._options.withClient && this._options.clientDevUrl) { try { - this._log(`[bench] Launching headless client: ${this._options.clientDevUrl}`); + const serverUrl = new URL(this._options.clientUrl); + const clientCount = Math.max(1, Math.floor(scenario.browserClients ?? 1)); - this._headlessClient = new HeadlessClient({ - url: this._options.clientDevUrl, - headless: this._options.headless, - }); + this._log(`[bench] Launching ${clientCount} headless client(s): ${this._options.clientDevUrl}`); - await this._headlessClient.launch(); + for (let i = 0; i < clientCount; i++) { + const client = new HeadlessClient({ + url: this._options.clientDevUrl, + headless: this._options.headless, + }); - // Warm up the self-signed HTTPS cert by visiting the server URL first - this._log('[bench] Warming up server HTTPS cert in headless browser...'); - await this._headlessClient.warmCert(this._options.clientUrl); + this._headlessClients.push(client); + await client.launch(); - // Navigate with ?join= and ?perf=1 (auto-appended by HeadlessClient) - const serverUrl = new URL(this._options.clientUrl); - const clientNavUrl = new URL(this._options.clientDevUrl); + this._log(`[bench] Warming up server HTTPS cert in headless browser ${i + 1}/${clientCount}...`); + await client.warmCert(this._options.clientUrl); - clientNavUrl.searchParams.set('join', serverUrl.host); + const clientNavUrl = new URL(this._options.clientDevUrl); - await this._headlessClient.navigate(clientNavUrl.toString()); + clientNavUrl.searchParams.set('join', serverUrl.host); - const perfReady = await this._headlessClient.waitForPerfReady(30000); + await client.navigate(clientNavUrl.toString()); - if (!perfReady) { - this._log('[bench] WARNING: Client perf bridge not ready after 30s — client metrics may be unavailable'); - } else { - this._log('[bench] Client perf bridge ready'); - } + const perfReady = await client.waitForPerfReady(30000); - if (this._options.cpuThrottle > 1) { - this._log(`[bench] Applying startup CPU throttle: ${this._options.cpuThrottle}x`); - await this._headlessClient.setCpuThrottle(this._options.cpuThrottle); + if (!perfReady && i === 0) { + this._log('[bench] WARNING: Client perf bridge not ready after 30s — client metrics may be unavailable'); + } else if (perfReady && i === 0) { + this._log('[bench] Client perf bridge ready'); + } + + if (this._options.cpuThrottle > 1) { + this._log(`[bench] Applying startup CPU throttle: ${this._options.cpuThrottle}x to client ${i + 1}/${clientCount}`); + await client.setCpuThrottle(this._options.cpuThrottle); + } } } catch (err: any) { this._log(`[bench] WARNING: Headless client failed to launch: ${err?.message ?? err}`); - this._headlessClient = null; + await this._closeHeadlessClients(); } } @@ -297,7 +300,7 @@ export default class BenchmarkRunner { await this._disconnectWsClients(action.count); break; case 'wait_for_entities': - if (this._headlessClient) { + if (this._primaryHeadlessClient) { const minEntities = action.count ?? 1; const timeout = action.durationMs ?? 30000; @@ -306,7 +309,7 @@ export default class BenchmarkRunner { const start = Date.now(); while (Date.now() - start < timeout) { - const snap = await this._headlessClient.collectClientMetrics(); + const snap = await this._primaryHeadlessClient.collectClientMetrics(); if (snap?.entities && snap.entities.count >= minEntities) { this._log(`[bench] Got ${snap.entities.count} entities`); @@ -318,58 +321,62 @@ export default class BenchmarkRunner { } break; case 'walk_player': - if (this._headlessClient) { + if (this._headlessClients.length > 0) { const key = (action.options?.key as string) ?? 'w'; const dur = action.durationMs ?? 3000; - this._log(`[bench] Walking player: key=${key} for ${dur}ms`); + this._log(`[bench] Walking player(s): target=${action.target ?? 'primary'} key=${key} for ${dur}ms`); try { - await this._headlessClient.sendMovement(key, dur); + await this._runOnHeadlessClients(action, client => client.sendMovement(key, dur)); } catch { this._log('[bench] walk_player: input failed (non-fatal)'); } } break; case 'set_camera': - if (this._headlessClient) { + if (this._headlessClients.length > 0) { const yaw = action.yaw ?? 0; const pitch = action.pitch ?? -0.3; - this._log(`[bench] Setting camera: yaw=${yaw} pitch=${pitch}`); + this._log(`[bench] Setting camera(s): target=${action.target ?? 'primary'} yaw=${yaw} pitch=${pitch}`); try { - if (action.position) { - await this._headlessClient.setCameraPosition(action.position.x, action.position.y, action.position.z); - } - - await this._headlessClient.lookAt(yaw, pitch); - await new Promise(r => setTimeout(r, action.durationMs ?? 500)); + await this._runOnHeadlessClients(action, async client => { + if (action.position) { + await client.setCameraPosition(action.position.x, action.position.y, action.position.z); + } + + await client.lookAt(yaw, pitch); + await new Promise(r => setTimeout(r, action.durationMs ?? 500)); + }); } catch { this._log('[bench] set_camera: failed (non-fatal)'); } } break; case 'throttle_cpu': - if (this._headlessClient) { + if (this._headlessClients.length > 0) { const rate = action.rate ?? 1; - this._log(`[bench] CPU throttle: ${rate}x`); + this._log(`[bench] CPU throttle: target=${action.target ?? 'primary'} ${rate}x`); try { - await this._headlessClient.setCpuThrottle(rate); + await this._runOnHeadlessClients(action, client => client.setCpuThrottle(rate)); } catch { this._log('[bench] throttle_cpu: failed (non-fatal)'); } } break; case 'send_chat': - if (this._headlessClient && action.message) { - this._log(`[bench] Sending chat: ${action.message}`); + if (this._headlessClients.length > 0 && action.message) { + this._log(`[bench] Sending chat: target=${action.target ?? 'primary'} ${action.message}`); try { - await this._headlessClient.sendChatMessage(action.message); - await new Promise(r => setTimeout(r, action.durationMs ?? 500)); + await this._runOnHeadlessClients(action, async client => { + await client.sendChatMessage(action.message!); + await new Promise(r => setTimeout(r, action.durationMs ?? 500)); + }); } catch { this._log('[bench] send_chat: failed (non-fatal)'); } @@ -419,9 +426,9 @@ export default class BenchmarkRunner { } } - if (this._headlessClient?.isConnected) { + if (this._primaryHeadlessClient?.isConnected) { try { - const clientSnapshot = await this._headlessClient.collectClientMetrics(); + const clientSnapshot = await this._primaryHeadlessClient.collectClientMetrics(); if (clientSnapshot) { this._collector.addClientSnapshot(clientSnapshot); @@ -542,11 +549,53 @@ export default class BenchmarkRunner { } } - private async _cleanup(): Promise { - if (this._headlessClient) { - await this._headlessClient.close(); - this._headlessClient = null; + private get _primaryHeadlessClient(): HeadlessClient | null { + return this._headlessClients[0] ?? null; + } + + private _getTargetHeadlessClients(target: ScenarioClientTarget | undefined): HeadlessClient[] { + switch (target) { + case 'all': + return [...this._headlessClients]; + case 'extras': + return this._headlessClients.slice(1); + case 'primary': + default: + return this._headlessClients.slice(0, 1); } + } + + private async _runOnHeadlessClients( + action: Pick, + run: (client: HeadlessClient, index: number) => Promise, + ): Promise { + const clients = this._getTargetHeadlessClients(action.target); + + if (clients.length === 0) { + return; + } + + const delayMs = typeof action.staggerMs === 'number' ? Math.max(0, Math.floor(action.staggerMs)) : 0; + + await Promise.all(clients.map(async (client, index) => { + if (delayMs > 0 && index > 0) { + await this._wait(delayMs * index); + } + + await run(client, index); + })); + } + + private async _closeHeadlessClients(): Promise { + for (const client of this._headlessClients) { + await client.close(); + } + + this._headlessClients = []; + } + + private async _cleanup(): Promise { + await this._closeHeadlessClients(); for (const client of this._wsClients) { await client.close(); diff --git a/packages/perf-tools/src/runners/ScenarioLoader.ts b/packages/perf-tools/src/runners/ScenarioLoader.ts index 04708df2..1b449ded 100644 --- a/packages/perf-tools/src/runners/ScenarioLoader.ts +++ b/packages/perf-tools/src/runners/ScenarioLoader.ts @@ -7,6 +7,8 @@ export interface ScenarioVector3 { z: number; } +export type ScenarioClientTarget = 'primary' | 'all' | 'extras'; + export interface ScenarioAction { type: | 'spawn_bots' @@ -54,6 +56,7 @@ export interface ScenarioAction { max?: ScenarioVector3; setDefault?: boolean; staggerMs?: number; + target?: ScenarioClientTarget; script?: string; } @@ -85,6 +88,7 @@ export interface Scenario { phases: ScenarioPhase[]; thresholds?: ScenarioThresholds; clients?: number; + browserClients?: number; warmupMs?: number; } @@ -143,6 +147,7 @@ function validateScenario(raw: unknown): Scenario { phases: obj.phases.map(validatePhase), thresholds: obj.thresholds as ScenarioThresholds | undefined, clients: typeof obj.clients === 'number' ? obj.clients : undefined, + browserClients: typeof obj.browserClients === 'number' ? obj.browserClients : undefined, warmupMs: typeof obj.warmupMs === 'number' ? obj.warmupMs : undefined, }; } From c37abfd823e896496f3413a20eb3b1552d6a91f6 Mon Sep 17 00:00:00 2001 From: web3dev1337 <160291380+web3dev1337@users.noreply.github.com> Date: Sat, 7 Mar 2026 15:33:44 +1100 Subject: [PATCH 30/40] feat: add external game benchmark wrapper --- CODEBASE_DOCUMENTATION.md | 2 +- .../perf-branch-state-2026-03-06/FINAL.md | 2 + .../scripts/run-external-game-benchmark.sh | 174 ++++++++++++++++++ 3 files changed, 177 insertions(+), 1 deletion(-) create mode 100755 packages/perf-tools/scripts/run-external-game-benchmark.sh diff --git a/CODEBASE_DOCUMENTATION.md b/CODEBASE_DOCUMENTATION.md index 3b1c7839..88330ab0 100644 --- a/CODEBASE_DOCUMENTATION.md +++ b/CODEBASE_DOCUMENTATION.md @@ -16,7 +16,7 @@ PROTOCOL: protocol/ - Packet schemas + definitions (@hytopia.com/server-protocol SDK: sdk/ - Git submodule → hytopiagg/sdk (build output lands here) EXAMPLES: sdk-examples/ - Reference games built with the SDK ASSETS: assets/release/ - Default game assets (audio, blocks, maps, models, particles, skyboxes, ui) -PERF: packages/perf-tools/ - Benchmark CLI + trace analysis (`hytopia-bench`), headless client metrics, synthetic + real-game presets (`zoo-game-full` single-client benchmark, `zoo-game-observe` 5-client joinable Zoo run) +PERF: packages/perf-tools/ - Benchmark CLI + trace analysis (`hytopia-bench`), headless client metrics, synthetic + real-game presets (`zoo-game-full` single-client benchmark, `zoo-game-observe` 5-client joinable Zoo run), helper scripts for linking/running external games CONFIG: package.json - Monorepo root (npm workspaces) server/package.json - Server deps + build scripts server/tsconfig.json - Strict TS, path alias @/* → ./src/* diff --git a/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md b/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md index 347de168..49d9d31c 100644 --- a/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md +++ b/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md @@ -136,11 +136,13 @@ Core files: - [link-sdk.sh](/home/ab/GitHub/hytopia/work1/packages/perf-tools/scripts/link-sdk.sh) - [setup-game.sh](/home/ab/GitHub/hytopia/work1/packages/perf-tools/scripts/setup-game.sh) +- [run-external-game-benchmark.sh](/home/ab/GitHub/hytopia/work1/packages/perf-tools/scripts/run-external-game-benchmark.sh) What these do: - build the local SDK from this repo - link it into external game repos +- run a real-game preset end-to-end against an external game using the current source checkout under test - let HyFire2 or Zoo Game run against local engine changes Important clarification: diff --git a/packages/perf-tools/scripts/run-external-game-benchmark.sh b/packages/perf-tools/scripts/run-external-game-benchmark.sh new file mode 100755 index 00000000..4d0acc38 --- /dev/null +++ b/packages/perf-tools/scripts/run-external-game-benchmark.sh @@ -0,0 +1,174 @@ +#!/bin/bash +set -euo pipefail + +SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)" +REPO_ROOT="$(cd "$SCRIPT_DIR/../../.." && pwd)" + +GAME_DIR="" +PRESET="" +CLIENT_URL="" +SERVER_CMD="npm start" +PORT="9091" +CPU_THROTTLE="" +OUTPUT="" +VERBOSE="false" + +usage() { + cat <<'EOF' +Usage: + run-external-game-benchmark.sh --game-dir --preset --client-url [options] + +Required: + --game-dir External game repo/worktree to benchmark + --preset Built-in perf preset to run + --client-url Client dev/prod URL used by the benchmark browser + +Options: + --server-cmd Command used to start the external game server (default: npm start) + --port HTTPS port for the external game server (default: 9091) + --cpu-throttle Browser CPU throttle rate (example: 4, 16) + --output Write benchmark JSON to this path + --verbose Enable verbose benchmark logging + +Examples: + bash packages/perf-tools/scripts/run-external-game-benchmark.sh \ + --game-dir /home/ab/GitHub/games/hytopia/zoo-game/work1 \ + --preset zoo-game-full \ + --client-url http://localhost:4173 \ + --output perf-results/zoo-pr2.json + + bash packages/perf-tools/scripts/run-external-game-benchmark.sh \ + --game-dir /home/ab/GitHub/games/hytopia/zoo-game/work1 \ + --preset zoo-game-observe \ + --client-url http://localhost:4173 \ + --cpu-throttle 4 \ + --verbose +EOF +} + +while [[ $# -gt 0 ]]; do + case "$1" in + --game-dir) + GAME_DIR="$(cd "$2" && pwd)" + shift 2 + ;; + --preset) + PRESET="$2" + shift 2 + ;; + --client-url) + CLIENT_URL="$2" + shift 2 + ;; + --server-cmd) + SERVER_CMD="$2" + shift 2 + ;; + --port) + PORT="$2" + shift 2 + ;; + --cpu-throttle) + CPU_THROTTLE="$2" + shift 2 + ;; + --output) + OUTPUT="$2" + shift 2 + ;; + --verbose) + VERBOSE="true" + shift + ;; + -h|--help) + usage + exit 0 + ;; + *) + echo "Unknown argument: $1" >&2 + echo "" >&2 + usage >&2 + exit 1 + ;; + esac +done + +if [[ -z "$GAME_DIR" || -z "$PRESET" || -z "$CLIENT_URL" ]]; then + usage >&2 + exit 1 +fi + +if [[ ! -f "$GAME_DIR/package.json" ]]; then + echo "Error: no package.json found in $GAME_DIR" >&2 + exit 1 +fi + +SERVER_PID="" + +cleanup() { + if [[ -n "$SERVER_PID" ]]; then + kill -TERM "-$SERVER_PID" >/dev/null 2>&1 || true + wait "$SERVER_PID" >/dev/null 2>&1 || true + fi +} + +trap cleanup EXIT INT TERM + +echo "==> Linking current SDK checkout into external game" +bash "$SCRIPT_DIR/link-sdk.sh" +bash "$SCRIPT_DIR/setup-game.sh" "$GAME_DIR" + +echo "" +echo "==> Starting external game server" +echo "Game dir: $GAME_DIR" +echo "Server cmd: $SERVER_CMD" +echo "Port: $PORT" + +( + cd "$GAME_DIR" + exec setsid bash -lc "PORT=$PORT HYTOPIA_PERF_TOOLS=1 $SERVER_CMD" +) & +SERVER_PID=$! + +echo "" +echo "==> Waiting for https://localhost:$PORT to become healthy" +READY="false" +for _ in $(seq 1 180); do + if curl -skf "https://localhost:$PORT/" >/dev/null 2>&1; then + READY="true" + break + fi + + sleep 1 +done + +if [[ "$READY" != "true" ]]; then + echo "Error: external game server did not become healthy on port $PORT" >&2 + exit 1 +fi + +echo "" +echo "==> Running preset $PRESET against https://localhost:$PORT" +cd "$REPO_ROOT/packages/perf-tools" + +BENCH_CMD=( + npx tsx src/cli.ts run + --preset "$PRESET" + --external-server "https://localhost:$PORT" + --with-client + --client-dev-url "$CLIENT_URL" +) + +if [[ -n "$CPU_THROTTLE" ]]; then + BENCH_CMD+=(--cpu-throttle "$CPU_THROTTLE") +fi + +if [[ -n "$OUTPUT" ]]; then + BENCH_CMD+=(--output "$OUTPUT") +fi + +if [[ "$VERBOSE" == "true" ]]; then + BENCH_CMD+=(--verbose) +fi + +"${BENCH_CMD[@]}" From 1c9e5db12f2ebc35f2bc220cdb5611b640346fbf Mon Sep 17 00:00:00 2001 From: web3dev1337 <160291380+web3dev1337@users.noreply.github.com> Date: Sat, 7 Mar 2026 17:13:11 +1100 Subject: [PATCH 31/40] fix: support linked sdk runtime deps for external games --- CODEBASE_DOCUMENTATION.md | 2 +- .../perf-branch-state-2026-03-06/FINAL.md | 5 ++-- packages/perf-tools/scripts/setup-game.sh | 24 +++++++++++++++++++ 3 files changed, 28 insertions(+), 3 deletions(-) diff --git a/CODEBASE_DOCUMENTATION.md b/CODEBASE_DOCUMENTATION.md index 88330ab0..6be6c71c 100644 --- a/CODEBASE_DOCUMENTATION.md +++ b/CODEBASE_DOCUMENTATION.md @@ -16,7 +16,7 @@ PROTOCOL: protocol/ - Packet schemas + definitions (@hytopia.com/server-protocol SDK: sdk/ - Git submodule → hytopiagg/sdk (build output lands here) EXAMPLES: sdk-examples/ - Reference games built with the SDK ASSETS: assets/release/ - Default game assets (audio, blocks, maps, models, particles, skyboxes, ui) -PERF: packages/perf-tools/ - Benchmark CLI + trace analysis (`hytopia-bench`), headless client metrics, synthetic + real-game presets (`zoo-game-full` single-client benchmark, `zoo-game-observe` 5-client joinable Zoo run), helper scripts for linking/running external games +PERF: packages/perf-tools/ - Benchmark CLI + trace analysis (`hytopia-bench`), headless client metrics, synthetic + real-game presets (`zoo-game-full` single-client benchmark, `zoo-game-observe` 5-client joinable Zoo run), helper scripts for linking/running external games (including linked SDK runtime deps) CONFIG: package.json - Monorepo root (npm workspaces) server/package.json - Server deps + build scripts server/tsconfig.json - Strict TS, path alias @/* → ./src/* diff --git a/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md b/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md index 49d9d31c..d1f32a9f 100644 --- a/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md +++ b/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md @@ -141,7 +141,7 @@ Core files: What these do: - build the local SDK from this repo -- link it into external game repos +- link it into external game repos and install the linked SDK's external runtime deps - run a real-game preset end-to-end against an external game using the current source checkout under test - let HyFire2 or Zoo Game run against local engine changes @@ -317,7 +317,8 @@ The answer should now be **yes**: 1. Full external-game benchmarking is still more manual than synthetic presets. 2. CI is still centered on lightweight built-in scenarios rather than full game walkthroughs. 3. HyFire2/Zoo Game benchmarking still depends on local setup and linked SDK flows. -4. The branch still needs a clean final commit/PR state to lock this cleanup in. +4. Some external-game compatibility fixes belong in the game repos, not here. HyFire2 now needs its own latest-SDK compatibility patch set for removed server light APIs, controller setup changes, animation-stop API changes, and one bad `SiteMarker` asset path. +5. The branch still needs a clean final commit/PR state to lock this cleanup in. ## Read This First Tomorrow diff --git a/packages/perf-tools/scripts/setup-game.sh b/packages/perf-tools/scripts/setup-game.sh index 5515e343..d17f5689 100755 --- a/packages/perf-tools/scripts/setup-game.sh +++ b/packages/perf-tools/scripts/setup-game.sh @@ -3,6 +3,9 @@ # Links our modified SDK into a game directory set -e +SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)" +REPO_ROOT="$(cd "$SCRIPT_DIR/../../.." && pwd)" + if [ -z "$1" ]; then echo "Usage: $0 " echo "Examples:" @@ -20,8 +23,29 @@ fi echo "Linking hytopia SDK into $GAME_DIR ..." cd "$GAME_DIR" + npm link hytopia +for SDK_RUNTIME_DEP in \ + "@fails-components/webtransport" \ + "@fails-components/webtransport-transport-http3-quiche" +do + SDK_RUNTIME_SOURCE="$REPO_ROOT/node_modules/$SDK_RUNTIME_DEP" + + if [ ! -e "$SDK_RUNTIME_SOURCE" ]; then + SDK_RUNTIME_SOURCE="$REPO_ROOT/server/node_modules/$SDK_RUNTIME_DEP" + fi + + if [ ! -e "$SDK_RUNTIME_SOURCE" ]; then + echo "Error: runtime dependency $SDK_RUNTIME_DEP is missing from local SDK workspace" + exit 1 + fi + + mkdir -p "$GAME_DIR/node_modules/$(dirname "$SDK_RUNTIME_DEP")" + rm -rf "$GAME_DIR/node_modules/$SDK_RUNTIME_DEP" + ln -s "$SDK_RUNTIME_SOURCE" "$GAME_DIR/node_modules/$SDK_RUNTIME_DEP" +done + SDK_VERSION=$(node - <<'NODE' const fs = require('node:fs'); const path = require('node:path'); From db43bd87a468544f74c2937d88fa9f96e44f18ac Mon Sep 17 00:00:00 2001 From: web3dev1337 <160291380+web3dev1337@users.noreply.github.com> Date: Sat, 7 Mar 2026 18:03:03 +1100 Subject: [PATCH 32/40] fix: skip live cosmetics fetch for local players --- .../docs/perf-branch-state-2026-03-06/FINAL.md | 14 +++++++++++++- sdk/server.mjs | 6 +++--- server/src/networking/PlatformGateway.ts | 15 +++++++++------ server/src/players/Player.ts | 4 +++- 4 files changed, 28 insertions(+), 11 deletions(-) diff --git a/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md b/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md index d1f32a9f..29a4115b 100644 --- a/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md +++ b/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md @@ -19,6 +19,12 @@ What happened after that is also clear: - the branch then got mixed with a local blob-shadow investigation - this cleanup separates those concerns again +Follow-up update from local real-game verification: + +- joinable external-game runs exposed a local-dev crash path where sessionless local players still attempted live platform cosmetics lookup +- that engine-side issue is now fixed in [PlatformGateway.ts](/home/ab/GitHub/hytopia/work1/server/src/networking/PlatformGateway.ts) and [Player.ts](/home/ab/GitHub/hytopia/work1/server/src/players/Player.ts) +- result: local HyFire2 observation runs no longer fall over on human join just because the production GraphQL cosmetics websocket rejects the request + After this cleanup, the branch should be understood as: - **permanent framework code** kept @@ -235,6 +241,12 @@ This cleanup retains the broadly reusable framework improvements that were still These are deliberate framework improvements, not feature-under-test patches. +There is also one engine stability fix that came out of the real-game validation itself: + +- local sessionless dev players no longer trigger live platform cosmetics fetches on join +- `PlatformGateway` now skips GraphQL cosmetics access when the platform gateway is unavailable in local development +- `Player` now only requests cosmetics for real platform-backed sessions + ## What This Cleanup Removed ### Removed from the Working Tree @@ -318,7 +330,7 @@ The answer should now be **yes**: 2. CI is still centered on lightweight built-in scenarios rather than full game walkthroughs. 3. HyFire2/Zoo Game benchmarking still depends on local setup and linked SDK flows. 4. Some external-game compatibility fixes belong in the game repos, not here. HyFire2 now needs its own latest-SDK compatibility patch set for removed server light APIs, controller setup changes, animation-stop API changes, and one bad `SiteMarker` asset path. -5. The branch still needs a clean final commit/PR state to lock this cleanup in. +5. Observation-mode external-game runs are now stable for local human joins, but extreme low-end throttled browser clients can still churn or reconnect under heavy load. ## Read This First Tomorrow diff --git a/sdk/server.mjs b/sdk/server.mjs index 862813d3..2f998b04 100644 --- a/sdk/server.mjs +++ b/sdk/server.mjs @@ -230,8 +230,8 @@ globstar while`,A,U,Q,$,E),this.matchOne(A.slice(U),Q.slice($),B))return this.de >>> no match, partial?`,A,U,Q,$),U===G)return!0}return!1}let K;if(typeof F==="string")K=Z===F,this.debug("string match",F,Z,K);else K=F.test(Z),this.debug("pattern match",F,Z,K);if(!K)return!1}if(C===G&&X===W)return!0;else if(C===G)return B;else if(X===W)return C===G-1&&A[C]==="";else throw Error("wtf?")}braceExpand(){return eYA(this.pattern,this.options)}parse(A){zI(A);let Q=this.options;if(A==="**")return JJ;if(A==="")return"";let B,Y=null;if(B=A.match(RmQ))Y=Q.dot?jmQ:wmQ;else if(B=A.match(KmQ))Y=(Q.nocase?Q.dot?DmQ:HmQ:Q.dot?ImQ:VmQ)(B[1]);else if(B=A.match(OmQ))Y=(Q.nocase?Q.dot?TmQ:PmQ:Q.dot?SmQ:kmQ)(B);else if(B=A.match(NmQ))Y=Q.dot?qmQ:LmQ;else if(B=A.match(MmQ))Y=zmQ;let J=YJ.fromGlob(A,this.options).toMMPattern();if(Y&&typeof J==="object")Reflect.defineProperty(J,"test",{value:Y});return J}makeRe(){if(this.regexp||this.regexp===!1)return this.regexp;let A=this.set;if(!A.length)return this.regexp=!1,this.regexp;let Q=this.options,B=Q.noglobstar?ymQ:Q.dot?gmQ:hmQ,Y=new Set(Q.nocase?["i"]:[]),J=A.map((G)=>{let W=G.map((F)=>{if(F instanceof RegExp)for(let Z of F.flags.split(""))Y.add(Z);return typeof F==="string"?umQ(F):F===JJ?JJ:F._src});return W.forEach((F,Z)=>{let U=W[Z+1],$=W[Z-1];if(F!==JJ||$===JJ)return;if($===void 0)if(U!==void 0&&U!==JJ)W[Z+1]="(?:\\/|"+B+"\\/)?"+U;else W[Z]=B;else if(U===void 0)W[Z-1]=$+"(?:\\/|"+B+")?";else if(U!==JJ)W[Z-1]=$+"(?:\\/|\\/"+B+"\\/)"+U,W[Z+1]=JJ}),W.filter((F)=>F!==JJ).join("/")}).join("|"),[C,X]=A.length>1?["(?:",")"]:["",""];if(J="^"+C+J+X+"$",this.negate)J="^(?!"+J+").+$";try{this.regexp=new RegExp(J,[...Y].join(""))}catch(G){this.regexp=!1}return this.regexp}slashSplit(A){if(this.preserveMultipleSlashes)return A.split("/");else if(this.isWindows&&/^\/\/[^\/]+/.test(A))return["",...A.split(/\/+/)];else return A.split(/\/+/)}match(A,Q=this.partial){if(this.debug("match",A,this.pattern),this.comment)return!1;if(this.empty)return A==="";if(A==="/"&&Q)return!0;let B=this.options;if(this.isWindows)A=A.split("\\").join("/");let Y=this.slashSplit(A);this.debug(this.pattern,"split",Y);let J=this.set;this.debug(this.pattern,"set",J);let C=Y[Y.length-1];if(!C)for(let X=Y.length-2;!C&&X>=0;X--)C=Y[X];for(let X=0;X{typeof ry.emitWarning==="function"?ry.emitWarning(A,Q,B,Y):console.error(`[${B}] ${Q}: ${A}`)},w2=globalThis.AbortController,AJA=globalThis.AbortSignal;if(typeof w2>"u"){AJA=class{onabort;_onabort=[];reason;aborted=!1;addEventListener(Y,J){this._onabort.push(J)}},w2=class{constructor(){Q()}signal=new AJA;abort(Y){if(this.signal.aborted)return;this.signal.reason=Y,this.signal.aborted=!0;for(let J of this.signal._onabort)J(Y);this.signal.onabort?.(Y)}};let A=ry.env?.LRU_CACHE_IGNORE_AC_WARNING!=="1",Q=()=>{if(!A)return;A=!1,BJA("AbortController is not defined. If using lru-cache in node 14, load an AbortController polyfill from the `node-abort-controller` package. A minimal polyfill is provided for use by LRUCache.fetch(), but it should not be relied upon in other contexts (eg, passing it to other APIs that use AbortController/AbortSignal might have undesirable effects). You may disable this with LRU_CACHE_IGNORE_AC_WARNING=1 in the env.","NO_ABORT_CONTROLLER","ENOTSUP",Q)}}var dmQ=(A)=>!QJA.has(A),QXY=Symbol("type"),A7=(A)=>A&&A===Math.floor(A)&&A>0&&isFinite(A),YJA=(A)=>!A7(A)?null:A<=Math.pow(2,8)?Uint8Array:A<=Math.pow(2,16)?Uint16Array:A<=Math.pow(2,32)?Uint32Array:A<=Number.MAX_SAFE_INTEGER?wI:null;class wI extends Array{constructor(A){super(A);this.fill(0)}}class m4{heap;length;static#A=!1;static create(A){let Q=YJA(A);if(!Q)return[];m4.#A=!0;let B=new m4(A,Q);return m4.#A=!1,B}constructor(A,Q){if(!m4.#A)throw TypeError("instantiate Stack using Stack.create(n)");this.heap=new Q(A),this.length=0}push(A){this.heap[this.length++]=A}pop(){return this.heap[--this.length]}}class jI{#A;#Q;#B;#Y;#J;#C;#W;ttl;ttlResolution;ttlAutopurge;updateAgeOnGet;updateAgeOnHas;allowStale;noDisposeOnSet;noUpdateTTL;maxEntrySize;sizeCalculation;noDeleteOnFetchRejection;noDeleteOnStaleGet;allowStaleOnFetchAbort;allowStaleOnFetchRejection;ignoreFetchAbort;#X;#G;#Z;#U;#F;#E;#V;#I;#D;#O;#N;#P;#M;#q;#L;#w;#H;#S;static unsafeExposeInternals(A){return{starts:A.#M,ttls:A.#q,sizes:A.#P,keyMap:A.#Z,keyList:A.#U,valList:A.#F,next:A.#E,prev:A.#V,get head(){return A.#I},get tail(){return A.#D},free:A.#O,isBackgroundFetch:(Q)=>A.#K(Q),backgroundFetch:(Q,B,Y,J)=>A.#g(Q,B,Y,J),moveToTail:(Q)=>A.#f(Q),indexes:(Q)=>A.#j(Q),rindexes:(Q)=>A.#T(Q),isStale:(Q)=>A.#R(Q)}}get max(){return this.#A}get maxSize(){return this.#Q}get calculatedSize(){return this.#G}get size(){return this.#X}get fetchMethod(){return this.#C}get memoMethod(){return this.#W}get dispose(){return this.#B}get onInsert(){return this.#Y}get disposeAfter(){return this.#J}constructor(A){let{max:Q=0,ttl:B,ttlResolution:Y=1,ttlAutopurge:J,updateAgeOnGet:C,updateAgeOnHas:X,allowStale:G,dispose:W,onInsert:F,disposeAfter:Z,noDisposeOnSet:U,noUpdateTTL:$,maxSize:E=0,maxEntrySize:K=0,sizeCalculation:I,fetchMethod:V,memoMethod:H,noDeleteOnFetchRejection:D,noDeleteOnStaleGet:L,allowStaleOnFetchRejection:z,allowStaleOnFetchAbort:M,ignoreFetchAbort:N}=A;if(Q!==0&&!A7(Q))throw TypeError("max option must be a nonnegative integer");let q=Q?YJA(Q):Array;if(!q)throw Error("invalid max value: "+Q);if(this.#A=Q,this.#Q=E,this.maxEntrySize=K||this.#Q,this.sizeCalculation=I,this.sizeCalculation){if(!this.#Q&&!this.maxEntrySize)throw TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");if(typeof this.sizeCalculation!=="function")throw TypeError("sizeCalculation set to non-function")}if(H!==void 0&&typeof H!=="function")throw TypeError("memoMethod must be a function if defined");if(this.#W=H,V!==void 0&&typeof V!=="function")throw TypeError("fetchMethod must be a function if specified");if(this.#C=V,this.#w=!!V,this.#Z=new Map,this.#U=Array(Q).fill(void 0),this.#F=Array(Q).fill(void 0),this.#E=new q(Q),this.#V=new q(Q),this.#I=0,this.#D=0,this.#O=m4.create(Q),this.#X=0,this.#G=0,typeof W==="function")this.#B=W;if(typeof F==="function")this.#Y=F;if(typeof Z==="function")this.#J=Z,this.#N=[];else this.#J=void 0,this.#N=void 0;if(this.#L=!!this.#B,this.#S=!!this.#Y,this.#H=!!this.#J,this.noDisposeOnSet=!!U,this.noUpdateTTL=!!$,this.noDeleteOnFetchRejection=!!D,this.allowStaleOnFetchRejection=!!z,this.allowStaleOnFetchAbort=!!M,this.ignoreFetchAbort=!!N,this.maxEntrySize!==0){if(this.#Q!==0){if(!A7(this.#Q))throw TypeError("maxSize must be a positive integer if specified")}if(!A7(this.maxEntrySize))throw TypeError("maxEntrySize must be a positive integer if specified");this.#m()}if(this.allowStale=!!G,this.noDeleteOnStaleGet=!!L,this.updateAgeOnGet=!!C,this.updateAgeOnHas=!!X,this.ttlResolution=A7(Y)||Y===0?Y:1,this.ttlAutopurge=!!J,this.ttl=B||0,this.ttl){if(!A7(this.ttl))throw TypeError("ttl must be a positive integer if specified");this.#$()}if(this.#A===0&&this.ttl===0&&this.#Q===0)throw TypeError("At least one of max, maxSize, or ttl is required");if(!this.ttlAutopurge&&!this.#A&&!this.#Q){if(dmQ("LRU_CACHE_UNBOUNDED"))QJA.add("LRU_CACHE_UNBOUNDED"),BJA("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning","LRU_CACHE_UNBOUNDED",jI)}}getRemainingTTL(A){return this.#Z.has(A)?1/0:0}#$(){let A=new wI(this.#A),Q=new wI(this.#A);this.#q=A,this.#M=Q,this.#k=(J,C,X=b4.now())=>{if(Q[J]=C!==0?X:0,A[J]=C,C!==0&&this.ttlAutopurge){let G=setTimeout(()=>{if(this.#R(J))this.#_(this.#U[J],"expire")},C+1);if(G.unref)G.unref()}},this.#v=(J)=>{Q[J]=A[J]!==0?b4.now():0},this.#z=(J,C)=>{if(A[C]){let X=A[C],G=Q[C];if(!X||!G)return;J.ttl=X,J.start=G,J.now=B||Y();let W=J.now-G;J.remainingTTL=X-W}};let B=0,Y=()=>{let J=b4.now();if(this.ttlResolution>0){B=J;let C=setTimeout(()=>B=0,this.ttlResolution);if(C.unref)C.unref()}return J};this.getRemainingTTL=(J)=>{let C=this.#Z.get(J);if(C===void 0)return 0;let X=A[C],G=Q[C];if(!X||!G)return 1/0;let W=(B||Y())-G;return X-W},this.#R=(J)=>{let C=Q[J],X=A[J];return!!X&&!!C&&(B||Y())-C>X}}#v=()=>{};#z=()=>{};#k=()=>{};#R=()=>!1;#m(){let A=new wI(this.#A);this.#G=0,this.#P=A,this.#y=(Q)=>{this.#G-=A[Q],A[Q]=0},this.#u=(Q,B,Y,J)=>{if(this.#K(B))return 0;if(!A7(Y))if(J){if(typeof J!=="function")throw TypeError("sizeCalculation must be a function");if(Y=J(B,Q),!A7(Y))throw TypeError("sizeCalculation return invalid (expect positive integer)")}else throw TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");return Y},this.#h=(Q,B,Y)=>{if(A[Q]=B,this.#Q){let J=this.#Q-A[Q];while(this.#G>J)this.#x(!0)}if(this.#G+=A[Q],Y)Y.entrySize=B,Y.totalCalculatedSize=this.#G}}#y=(A)=>{};#h=(A,Q,B)=>{};#u=(A,Q,B,Y)=>{if(B||Y)throw TypeError("cannot set size without setting maxSize or maxEntrySize on cache");return 0};*#j({allowStale:A=this.allowStale}={}){if(this.#X)for(let Q=this.#D;;){if(!this.#d(Q))break;if(A||!this.#R(Q))yield Q;if(Q===this.#I)break;else Q=this.#V[Q]}}*#T({allowStale:A=this.allowStale}={}){if(this.#X)for(let Q=this.#I;;){if(!this.#d(Q))break;if(A||!this.#R(Q))yield Q;if(Q===this.#D)break;else Q=this.#E[Q]}}#d(A){return A!==void 0&&this.#Z.get(this.#U[A])===A}*entries(){for(let A of this.#j())if(this.#F[A]!==void 0&&this.#U[A]!==void 0&&!this.#K(this.#F[A]))yield[this.#U[A],this.#F[A]]}*rentries(){for(let A of this.#T())if(this.#F[A]!==void 0&&this.#U[A]!==void 0&&!this.#K(this.#F[A]))yield[this.#U[A],this.#F[A]]}*keys(){for(let A of this.#j()){let Q=this.#U[A];if(Q!==void 0&&!this.#K(this.#F[A]))yield Q}}*rkeys(){for(let A of this.#T()){let Q=this.#U[A];if(Q!==void 0&&!this.#K(this.#F[A]))yield Q}}*values(){for(let A of this.#j())if(this.#F[A]!==void 0&&!this.#K(this.#F[A]))yield this.#F[A]}*rvalues(){for(let A of this.#T())if(this.#F[A]!==void 0&&!this.#K(this.#F[A]))yield this.#F[A]}[Symbol.iterator](){return this.entries()}[Symbol.toStringTag]="LRUCache";find(A,Q={}){for(let B of this.#j()){let Y=this.#F[B],J=this.#K(Y)?Y.__staleWhileFetching:Y;if(J===void 0)continue;if(A(J,this.#U[B],this))return this.get(this.#U[B],Q)}}forEach(A,Q=this){for(let B of this.#j()){let Y=this.#F[B],J=this.#K(Y)?Y.__staleWhileFetching:Y;if(J===void 0)continue;A.call(Q,J,this.#U[B],this)}}rforEach(A,Q=this){for(let B of this.#T()){let Y=this.#F[B],J=this.#K(Y)?Y.__staleWhileFetching:Y;if(J===void 0)continue;A.call(Q,J,this.#U[B],this)}}purgeStale(){let A=!1;for(let Q of this.#T({allowStale:!0}))if(this.#R(Q))this.#_(this.#U[Q],"expire"),A=!0;return A}info(A){let Q=this.#Z.get(A);if(Q===void 0)return;let B=this.#F[Q],Y=this.#K(B)?B.__staleWhileFetching:B;if(Y===void 0)return;let J={value:Y};if(this.#q&&this.#M){let C=this.#q[Q],X=this.#M[Q];if(C&&X){let G=C-(b4.now()-X);J.ttl=G,J.start=Date.now()}}if(this.#P)J.size=this.#P[Q];return J}dump(){let A=[];for(let Q of this.#j({allowStale:!0})){let B=this.#U[Q],Y=this.#F[Q],J=this.#K(Y)?Y.__staleWhileFetching:Y;if(J===void 0||B===void 0)continue;let C={value:J};if(this.#q&&this.#M){C.ttl=this.#q[Q];let X=b4.now()-this.#M[Q];C.start=Math.floor(Date.now()-X)}if(this.#P)C.size=this.#P[Q];A.unshift([B,C])}return A}load(A){this.clear();for(let[Q,B]of A){if(B.start){let Y=Date.now()-B.start;B.start=b4.now()-Y}this.set(Q,B.value,B)}}set(A,Q,B={}){if(Q===void 0)return this.delete(A),this;let{ttl:Y=this.ttl,start:J,noDisposeOnSet:C=this.noDisposeOnSet,sizeCalculation:X=this.sizeCalculation,status:G}=B,{noUpdateTTL:W=this.noUpdateTTL}=B,F=this.#u(A,Q,B.size||0,X);if(this.maxEntrySize&&F>this.maxEntrySize){if(G)G.set="miss",G.maxEntrySizeExceeded=!0;return this.#_(A,"set"),this}let Z=this.#X===0?void 0:this.#Z.get(A);if(Z===void 0){if(Z=this.#X===0?this.#D:this.#O.length!==0?this.#O.pop():this.#X===this.#A?this.#x(!1):this.#X,this.#U[Z]=A,this.#F[Z]=Q,this.#Z.set(A,Z),this.#E[this.#D]=Z,this.#V[Z]=this.#D,this.#D=Z,this.#X++,this.#h(Z,F,G),G)G.set="add";if(W=!1,this.#S)this.#Y?.(Q,A,"add")}else{this.#f(Z);let U=this.#F[Z];if(Q!==U){if(this.#w&&this.#K(U)){U.__abortController.abort(Error("replaced"));let{__staleWhileFetching:$}=U;if($!==void 0&&!C){if(this.#L)this.#B?.($,A,"set");if(this.#H)this.#N?.push([$,A,"set"])}}else if(!C){if(this.#L)this.#B?.(U,A,"set");if(this.#H)this.#N?.push([U,A,"set"])}if(this.#y(Z),this.#h(Z,F,G),this.#F[Z]=Q,G){G.set="replace";let $=U&&this.#K(U)?U.__staleWhileFetching:U;if($!==void 0)G.oldValue=$}}else if(G)G.set="update";if(this.#S)this.onInsert?.(Q,A,Q===U?"update":"replace")}if(Y!==0&&!this.#q)this.#$();if(this.#q){if(!W)this.#k(Z,Y,J);if(G)this.#z(G,Z)}if(!C&&this.#H&&this.#N){let U=this.#N,$;while($=U?.shift())this.#J?.(...$)}return this}pop(){try{while(this.#X){let A=this.#F[this.#I];if(this.#x(!0),this.#K(A)){if(A.__staleWhileFetching)return A.__staleWhileFetching}else if(A!==void 0)return A}}finally{if(this.#H&&this.#N){let A=this.#N,Q;while(Q=A?.shift())this.#J?.(...Q)}}}#x(A){let Q=this.#I,B=this.#U[Q],Y=this.#F[Q];if(this.#w&&this.#K(Y))Y.__abortController.abort(Error("evicted"));else if(this.#L||this.#H){if(this.#L)this.#B?.(Y,B,"evict");if(this.#H)this.#N?.push([Y,B,"evict"])}if(this.#y(Q),A)this.#U[Q]=void 0,this.#F[Q]=void 0,this.#O.push(Q);if(this.#X===1)this.#I=this.#D=0,this.#O.length=0;else this.#I=this.#E[Q];return this.#Z.delete(B),this.#X--,Q}has(A,Q={}){let{updateAgeOnHas:B=this.updateAgeOnHas,status:Y}=Q,J=this.#Z.get(A);if(J!==void 0){let C=this.#F[J];if(this.#K(C)&&C.__staleWhileFetching===void 0)return!1;if(!this.#R(J)){if(B)this.#v(J);if(Y)Y.has="hit",this.#z(Y,J);return!0}else if(Y)Y.has="stale",this.#z(Y,J)}else if(Y)Y.has="miss";return!1}peek(A,Q={}){let{allowStale:B=this.allowStale}=Q,Y=this.#Z.get(A);if(Y===void 0||!B&&this.#R(Y))return;let J=this.#F[Y];return this.#K(J)?J.__staleWhileFetching:J}#g(A,Q,B,Y){let J=Q===void 0?void 0:this.#F[Q];if(this.#K(J))return J;let C=new w2,{signal:X}=B;X?.addEventListener("abort",()=>C.abort(X.reason),{signal:C.signal});let G={signal:C.signal,options:B,context:Y},W=(K,I=!1)=>{let{aborted:V}=C.signal,H=B.ignoreFetchAbort&&K!==void 0;if(B.status)if(V&&!I){if(B.status.fetchAborted=!0,B.status.fetchError=C.signal.reason,H)B.status.fetchAbortIgnored=!0}else B.status.fetchResolved=!0;if(V&&!H&&!I)return Z(C.signal.reason);let D=$;if(this.#F[Q]===$)if(K===void 0)if(D.__staleWhileFetching)this.#F[Q]=D.__staleWhileFetching;else this.#_(A,"fetch");else{if(B.status)B.status.fetchUpdated=!0;this.set(A,K,G.options)}return K},F=(K)=>{if(B.status)B.status.fetchRejected=!0,B.status.fetchError=K;return Z(K)},Z=(K)=>{let{aborted:I}=C.signal,V=I&&B.allowStaleOnFetchAbort,H=V||B.allowStaleOnFetchRejection,D=H||B.noDeleteOnFetchRejection,L=$;if(this.#F[Q]===$){if(!D||L.__staleWhileFetching===void 0)this.#_(A,"fetch");else if(!V)this.#F[Q]=L.__staleWhileFetching}if(H){if(B.status&&L.__staleWhileFetching!==void 0)B.status.returnedStale=!0;return L.__staleWhileFetching}else if(L.__returned===L)throw K},U=(K,I)=>{let V=this.#C?.(A,J,G);if(V&&V instanceof Promise)V.then((H)=>K(H===void 0?void 0:H),I);C.signal.addEventListener("abort",()=>{if(!B.ignoreFetchAbort||B.allowStaleOnFetchAbort){if(K(void 0),B.allowStaleOnFetchAbort)K=(H)=>W(H,!0)}})};if(B.status)B.status.fetchDispatched=!0;let $=new Promise(U).then(W,F),E=Object.assign($,{__abortController:C,__staleWhileFetching:J,__returned:void 0});if(Q===void 0)this.set(A,E,{...G.options,status:void 0}),Q=this.#Z.get(A);else this.#F[Q]=E;return E}#K(A){if(!this.#w)return!1;let Q=A;return!!Q&&Q instanceof Promise&&Q.hasOwnProperty("__staleWhileFetching")&&Q.__abortController instanceof w2}async fetch(A,Q={}){let{allowStale:B=this.allowStale,updateAgeOnGet:Y=this.updateAgeOnGet,noDeleteOnStaleGet:J=this.noDeleteOnStaleGet,ttl:C=this.ttl,noDisposeOnSet:X=this.noDisposeOnSet,size:G=0,sizeCalculation:W=this.sizeCalculation,noUpdateTTL:F=this.noUpdateTTL,noDeleteOnFetchRejection:Z=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:U=this.allowStaleOnFetchRejection,ignoreFetchAbort:$=this.ignoreFetchAbort,allowStaleOnFetchAbort:E=this.allowStaleOnFetchAbort,context:K,forceRefresh:I=!1,status:V,signal:H}=Q;if(!this.#w){if(V)V.fetch="get";return this.get(A,{allowStale:B,updateAgeOnGet:Y,noDeleteOnStaleGet:J,status:V})}let D={allowStale:B,updateAgeOnGet:Y,noDeleteOnStaleGet:J,ttl:C,noDisposeOnSet:X,size:G,sizeCalculation:W,noUpdateTTL:F,noDeleteOnFetchRejection:Z,allowStaleOnFetchRejection:U,allowStaleOnFetchAbort:E,ignoreFetchAbort:$,status:V,signal:H},L=this.#Z.get(A);if(L===void 0){if(V)V.fetch="miss";let z=this.#g(A,L,D,K);return z.__returned=z}else{let z=this.#F[L];if(this.#K(z)){let P=B&&z.__staleWhileFetching!==void 0;if(V){if(V.fetch="inflight",P)V.returnedStale=!0}return P?z.__staleWhileFetching:z.__returned=z}let M=this.#R(L);if(!I&&!M){if(V)V.fetch="hit";if(this.#f(L),Y)this.#v(L);if(V)this.#z(V,L);return z}let N=this.#g(A,L,D,K),w=N.__staleWhileFetching!==void 0&&B;if(V){if(V.fetch=M?"stale":"refresh",w&&M)V.returnedStale=!0}return w?N.__staleWhileFetching:N.__returned=N}}async forceFetch(A,Q={}){let B=await this.fetch(A,Q);if(B===void 0)throw Error("fetch() returned undefined");return B}memo(A,Q={}){let B=this.#W;if(!B)throw Error("no memoMethod provided to constructor");let{context:Y,forceRefresh:J,...C}=Q,X=this.get(A,C);if(!J&&X!==void 0)return X;let G=B(A,X,{options:C,context:Y});return this.set(A,G,C),G}get(A,Q={}){let{allowStale:B=this.allowStale,updateAgeOnGet:Y=this.updateAgeOnGet,noDeleteOnStaleGet:J=this.noDeleteOnStaleGet,status:C}=Q,X=this.#Z.get(A);if(X!==void 0){let G=this.#F[X],W=this.#K(G);if(C)this.#z(C,X);if(this.#R(X)){if(C)C.get="stale";if(!W){if(!J)this.#_(A,"expire");if(C&&B)C.returnedStale=!0;return B?G:void 0}else{if(C&&B&&G.__staleWhileFetching!==void 0)C.returnedStale=!0;return B?G.__staleWhileFetching:void 0}}else{if(C)C.get="hit";if(W)return G.__staleWhileFetching;if(this.#f(X),Y)this.#v(X);return G}}else if(C)C.get="miss"}#c(A,Q){this.#V[Q]=A,this.#E[A]=Q}#f(A){if(A!==this.#D){if(A===this.#I)this.#I=this.#E[A];else this.#c(this.#V[A],this.#E[A]);this.#c(this.#D,A),this.#D=A}}delete(A){return this.#_(A,"delete")}#_(A,Q){let B=!1;if(this.#X!==0){let Y=this.#Z.get(A);if(Y!==void 0)if(B=!0,this.#X===1)this.#b(Q);else{this.#y(Y);let J=this.#F[Y];if(this.#K(J))J.__abortController.abort(Error("deleted"));else if(this.#L||this.#H){if(this.#L)this.#B?.(J,A,Q);if(this.#H)this.#N?.push([J,A,Q])}if(this.#Z.delete(A),this.#U[Y]=void 0,this.#F[Y]=void 0,Y===this.#D)this.#D=this.#V[Y];else if(Y===this.#I)this.#I=this.#E[Y];else{let C=this.#V[Y];this.#E[C]=this.#E[Y];let X=this.#E[Y];this.#V[X]=this.#V[Y]}this.#X--,this.#O.push(Y)}}if(this.#H&&this.#N?.length){let Y=this.#N,J;while(J=Y?.shift())this.#J?.(...J)}return B}clear(){return this.#b("delete")}#b(A){for(let Q of this.#T({allowStale:!0})){let B=this.#F[Q];if(this.#K(B))B.__abortController.abort(Error("deleted"));else{let Y=this.#U[Q];if(this.#L)this.#B?.(B,Y,A);if(this.#H)this.#N?.push([B,Y,A])}}if(this.#Z.clear(),this.#F.fill(void 0),this.#U.fill(void 0),this.#q&&this.#M)this.#q.fill(0),this.#M.fill(0);if(this.#P)this.#P.fill(0);if(this.#I=0,this.#D=0,this.#O.length=0,this.#G=0,this.#X=0,this.#H&&this.#N){let Q=this.#N,B;while(B=Q?.shift())this.#J?.(...B)}}}import{posix as emQ,win32 as Cg}from"node:path";import{fileURLToPath as AuQ}from"node:url";import{lstatSync as QuQ,readdir as BuQ,readdirSync as YuQ,readlinkSync as JuQ,realpathSync as CuQ}from"fs";import*as XuQ from"node:fs";import{lstat as WuQ,readdir as FuQ,readlink as ZuQ,realpath as $uQ}from"node:fs/promises";import{EventEmitter as Qg}from"node:events";import WJA from"node:stream";import{StringDecoder as cmQ}from"node:string_decoder";var JJA=typeof process==="object"&&process?process:{stdout:null,stderr:null},lmQ=(A)=>!!A&&typeof A==="object"&&(A instanceof gF||A instanceof WJA||pmQ(A)||imQ(A)),pmQ=(A)=>!!A&&typeof A==="object"&&A instanceof Qg&&typeof A.pipe==="function"&&A.pipe!==WJA.Writable.prototype.pipe,imQ=(A)=>!!A&&typeof A==="object"&&A instanceof Qg&&typeof A.write==="function"&&typeof A.end==="function",A6=Symbol("EOF"),Q6=Symbol("maybeEmitEnd"),Q7=Symbol("emittedEnd"),j2=Symbol("emittingEnd"),OI=Symbol("emittedError"),O2=Symbol("closed"),CJA=Symbol("read"),P2=Symbol("flush"),XJA=Symbol("flushChunk"),wC=Symbol("encoding"),u4=Symbol("decoder"),dY=Symbol("flowing"),PI=Symbol("paused"),d4=Symbol("resume"),cY=Symbol("buffer"),nJ=Symbol("pipes"),lY=Symbol("bufferLength"),ay=Symbol("bufferPush"),T2=Symbol("bufferShift"),NJ=Symbol("objectMode"),XY=Symbol("destroyed"),oy=Symbol("error"),ty=Symbol("emitData"),GJA=Symbol("emitEnd"),ey=Symbol("emitEnd2"),k1=Symbol("async"),Ag=Symbol("abort"),S2=Symbol("aborted"),TI=Symbol("signal"),yF=Symbol("dataListeners"),W8=Symbol("discarded"),SI=(A)=>Promise.resolve().then(A),nmQ=(A)=>A(),smQ=(A)=>A==="end"||A==="finish"||A==="prefinish",rmQ=(A)=>A instanceof ArrayBuffer||!!A&&typeof A==="object"&&A.constructor&&A.constructor.name==="ArrayBuffer"&&A.byteLength>=0,amQ=(A)=>!Buffer.isBuffer(A)&&ArrayBuffer.isView(A);class Bg{src;dest;opts;ondrain;constructor(A,Q,B){this.src=A,this.dest=Q,this.opts=B,this.ondrain=()=>A[d4](),this.dest.on("drain",this.ondrain)}unpipe(){this.dest.removeListener("drain",this.ondrain)}proxyErrors(A){}end(){if(this.unpipe(),this.opts.end)this.dest.end()}}class FJA extends Bg{unpipe(){this.src.removeListener("error",this.proxyErrors),super.unpipe()}constructor(A,Q,B){super(A,Q,B);this.proxyErrors=(Y)=>Q.emit("error",Y),A.on("error",this.proxyErrors)}}var omQ=(A)=>!!A.objectMode,tmQ=(A)=>!A.objectMode&&!!A.encoding&&A.encoding!=="buffer";class gF extends Qg{[dY]=!1;[PI]=!1;[nJ]=[];[cY]=[];[NJ];[wC];[k1];[u4];[A6]=!1;[Q7]=!1;[j2]=!1;[O2]=!1;[OI]=null;[lY]=0;[XY]=!1;[TI];[S2]=!1;[yF]=0;[W8]=!1;writable=!0;readable=!0;constructor(...A){let Q=A[0]||{};super();if(Q.objectMode&&typeof Q.encoding==="string")throw TypeError("Encoding and objectMode may not be used together");if(omQ(Q))this[NJ]=!0,this[wC]=null;else if(tmQ(Q))this[wC]=Q.encoding,this[NJ]=!1;else this[NJ]=!1,this[wC]=null;if(this[k1]=!!Q.async,this[u4]=this[wC]?new cmQ(this[wC]):null,Q&&Q.debugExposeBuffer===!0)Object.defineProperty(this,"buffer",{get:()=>this[cY]});if(Q&&Q.debugExposePipes===!0)Object.defineProperty(this,"pipes",{get:()=>this[nJ]});let{signal:B}=Q;if(B)if(this[TI]=B,B.aborted)this[Ag]();else B.addEventListener("abort",()=>this[Ag]())}get bufferLength(){return this[lY]}get encoding(){return this[wC]}set encoding(A){throw Error("Encoding must be set at instantiation time")}setEncoding(A){throw Error("Encoding must be set at instantiation time")}get objectMode(){return this[NJ]}set objectMode(A){throw Error("objectMode must be set at instantiation time")}get["async"](){return this[k1]}set["async"](A){this[k1]=this[k1]||!!A}[Ag](){this[S2]=!0,this.emit("abort",this[TI]?.reason),this.destroy(this[TI]?.reason)}get aborted(){return this[S2]}set aborted(A){}write(A,Q,B){if(this[S2])return!1;if(this[A6])throw Error("write after end");if(this[XY])return this.emit("error",Object.assign(Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),!0;if(typeof Q==="function")B=Q,Q="utf8";if(!Q)Q="utf8";let Y=this[k1]?SI:nmQ;if(!this[NJ]&&!Buffer.isBuffer(A)){if(amQ(A))A=Buffer.from(A.buffer,A.byteOffset,A.byteLength);else if(rmQ(A))A=Buffer.from(A);else if(typeof A!=="string")throw Error("Non-contiguous data written to non-objectMode stream")}if(this[NJ]){if(this[dY]&&this[lY]!==0)this[P2](!0);if(this[dY])this.emit("data",A);else this[ay](A);if(this[lY]!==0)this.emit("readable");if(B)Y(B);return this[dY]}if(!A.length){if(this[lY]!==0)this.emit("readable");if(B)Y(B);return this[dY]}if(typeof A==="string"&&!(Q===this[wC]&&!this[u4]?.lastNeed))A=Buffer.from(A,Q);if(Buffer.isBuffer(A)&&this[wC])A=this[u4].write(A);if(this[dY]&&this[lY]!==0)this[P2](!0);if(this[dY])this.emit("data",A);else this[ay](A);if(this[lY]!==0)this.emit("readable");if(B)Y(B);return this[dY]}read(A){if(this[XY])return null;if(this[W8]=!1,this[lY]===0||A===0||A&&A>this[lY])return this[Q6](),null;if(this[NJ])A=null;if(this[cY].length>1&&!this[NJ])this[cY]=[this[wC]?this[cY].join(""):Buffer.concat(this[cY],this[lY])];let Q=this[CJA](A||null,this[cY][0]);return this[Q6](),Q}[CJA](A,Q){if(this[NJ])this[T2]();else{let B=Q;if(A===B.length||A===null)this[T2]();else if(typeof B==="string")this[cY][0]=B.slice(A),Q=B.slice(0,A),this[lY]-=A;else this[cY][0]=B.subarray(A),Q=B.subarray(0,A),this[lY]-=A}if(this.emit("data",Q),!this[cY].length&&!this[A6])this.emit("drain");return Q}end(A,Q,B){if(typeof A==="function")B=A,A=void 0;if(typeof Q==="function")B=Q,Q="utf8";if(A!==void 0)this.write(A,Q);if(B)this.once("end",B);if(this[A6]=!0,this.writable=!1,this[dY]||!this[PI])this[Q6]();return this}[d4](){if(this[XY])return;if(!this[yF]&&!this[nJ].length)this[W8]=!0;if(this[PI]=!1,this[dY]=!0,this.emit("resume"),this[cY].length)this[P2]();else if(this[A6])this[Q6]();else this.emit("drain")}resume(){return this[d4]()}pause(){this[dY]=!1,this[PI]=!0,this[W8]=!1}get destroyed(){return this[XY]}get flowing(){return this[dY]}get paused(){return this[PI]}[ay](A){if(this[NJ])this[lY]+=1;else this[lY]+=A.length;this[cY].push(A)}[T2](){if(this[NJ])this[lY]-=1;else this[lY]-=this[cY][0].length;return this[cY].shift()}[P2](A=!1){do;while(this[XJA](this[T2]())&&this[cY].length);if(!A&&!this[cY].length&&!this[A6])this.emit("drain")}[XJA](A){return this.emit("data",A),this[dY]}pipe(A,Q){if(this[XY])return A;this[W8]=!1;let B=this[Q7];if(Q=Q||{},A===JJA.stdout||A===JJA.stderr)Q.end=!1;else Q.end=Q.end!==!1;if(Q.proxyErrors=!!Q.proxyErrors,B){if(Q.end)A.end()}else if(this[nJ].push(!Q.proxyErrors?new Bg(this,A,Q):new FJA(this,A,Q)),this[k1])SI(()=>this[d4]());else this[d4]();return A}unpipe(A){let Q=this[nJ].find((B)=>B.dest===A);if(Q){if(this[nJ].length===1){if(this[dY]&&this[yF]===0)this[dY]=!1;this[nJ]=[]}else this[nJ].splice(this[nJ].indexOf(Q),1);Q.unpipe()}}addListener(A,Q){return this.on(A,Q)}on(A,Q){let B=super.on(A,Q);if(A==="data"){if(this[W8]=!1,this[yF]++,!this[nJ].length&&!this[dY])this[d4]()}else if(A==="readable"&&this[lY]!==0)super.emit("readable");else if(smQ(A)&&this[Q7])super.emit(A),this.removeAllListeners(A);else if(A==="error"&&this[OI]){let Y=Q;if(this[k1])SI(()=>Y.call(this,this[OI]));else Y.call(this,this[OI])}return B}removeListener(A,Q){return this.off(A,Q)}off(A,Q){let B=super.off(A,Q);if(A==="data"){if(this[yF]=this.listeners("data").length,this[yF]===0&&!this[W8]&&!this[nJ].length)this[dY]=!1}return B}removeAllListeners(A){let Q=super.removeAllListeners(A);if(A==="data"||A===void 0){if(this[yF]=0,!this[W8]&&!this[nJ].length)this[dY]=!1}return Q}get emittedEnd(){return this[Q7]}[Q6](){if(!this[j2]&&!this[Q7]&&!this[XY]&&this[cY].length===0&&this[A6]){if(this[j2]=!0,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[O2])this.emit("close");this[j2]=!1}}emit(A,...Q){let B=Q[0];if(A!=="error"&&A!=="close"&&A!==XY&&this[XY])return!1;else if(A==="data")return!this[NJ]&&!B?!1:this[k1]?(SI(()=>this[ty](B)),!0):this[ty](B);else if(A==="end")return this[GJA]();else if(A==="close"){if(this[O2]=!0,!this[Q7]&&!this[XY])return!1;let J=super.emit("close");return this.removeAllListeners("close"),J}else if(A==="error"){this[OI]=B,super.emit(oy,B);let J=!this[TI]||this.listeners("error").length?super.emit("error",B):!1;return this[Q6](),J}else if(A==="resume"){let J=super.emit("resume");return this[Q6](),J}else if(A==="finish"||A==="prefinish"){let J=super.emit(A);return this.removeAllListeners(A),J}let Y=super.emit(A,...Q);return this[Q6](),Y}[ty](A){for(let B of this[nJ])if(B.dest.write(A)===!1)this.pause();let Q=this[W8]?!1:super.emit("data",A);return this[Q6](),Q}[GJA](){if(this[Q7])return!1;return this[Q7]=!0,this.readable=!1,this[k1]?(SI(()=>this[ey]()),!0):this[ey]()}[ey](){if(this[u4]){let Q=this[u4].end();if(Q){for(let B of this[nJ])B.dest.write(Q);if(!this[W8])super.emit("data",Q)}}for(let Q of this[nJ])Q.end();let A=super.emit("end");return this.removeAllListeners("end"),A}async collect(){let A=Object.assign([],{dataLength:0});if(!this[NJ])A.dataLength=0;let Q=this.promise();return this.on("data",(B)=>{if(A.push(B),!this[NJ])A.dataLength+=B.length}),await Q,A}async concat(){if(this[NJ])throw Error("cannot concat in objectMode");let A=await this.collect();return this[wC]?A.join(""):Buffer.concat(A,A.dataLength)}async promise(){return new Promise((A,Q)=>{this.on(XY,()=>Q(Error("stream destroyed"))),this.on("error",(B)=>Q(B)),this.on("end",()=>A())})}[Symbol.asyncIterator](){this[W8]=!1;let A=!1,Q=async()=>{return this.pause(),A=!0,{value:void 0,done:!0}};return{next:()=>{if(A)return Q();let Y=this.read();if(Y!==null)return Promise.resolve({done:!1,value:Y});if(this[A6])return Q();let J,C,X=(Z)=>{this.off("data",G),this.off("end",W),this.off(XY,F),Q(),C(Z)},G=(Z)=>{this.off("error",X),this.off("end",W),this.off(XY,F),this.pause(),J({value:Z,done:!!this[A6]})},W=()=>{this.off("error",X),this.off("data",G),this.off(XY,F),Q(),J({done:!0,value:void 0})},F=()=>X(Error("stream destroyed"));return new Promise((Z,U)=>{C=U,J=Z,this.once(XY,F),this.once("error",X),this.once("end",W),this.once("data",G)})},throw:Q,return:Q,[Symbol.asyncIterator](){return this}}}[Symbol.iterator](){this[W8]=!1;let A=!1,Q=()=>{return this.pause(),this.off(oy,Q),this.off(XY,Q),this.off("end",Q),A=!0,{done:!0,value:void 0}},B=()=>{if(A)return Q();let Y=this.read();return Y===null?Q():{done:!1,value:Y}};return this.once("end",Q),this.once(oy,Q),this.once(XY,Q),{next:B,throw:Q,return:Q,[Symbol.iterator](){return this}}}destroy(A){if(this[XY]){if(A)this.emit("error",A);else this.emit(XY);return this}this[XY]=!0,this[W8]=!0,this[cY].length=0,this[lY]=0;let Q=this;if(typeof Q.close==="function"&&!this[O2])Q.close();if(A)this.emit("error",A);else this.emit(XY);return this}static get isStream(){return lmQ}}var GuQ=CuQ.native,_I={lstatSync:QuQ,readdir:BuQ,readdirSync:YuQ,readlinkSync:JuQ,realpathSync:GuQ,promises:{lstat:WuQ,readdir:FuQ,readlink:ZuQ,realpath:$uQ}},KJA=(A)=>!A||A===_I||A===XuQ?_I:{..._I,...A,promises:{..._I.promises,...A.promises||{}}},VJA=/^\\\\\?\\([a-z]:)\\?$/i,UuQ=(A)=>A.replace(/\//g,"\\").replace(VJA,"$1\\"),EuQ=/[\\\/]/,X5=0,IJA=1,HJA=2,_1=4,DJA=6,NJA=8,hF=10,LJA=12,C5=15,kI=~C5,Yg=16,ZJA=32,vI=64,jC=128,k2=256,v2=512,$JA=vI|jC|v2,KuQ=1023,Jg=(A)=>A.isFile()?NJA:A.isDirectory()?_1:A.isSymbolicLink()?hF:A.isCharacterDevice()?HJA:A.isBlockDevice()?DJA:A.isSocket()?LJA:A.isFIFO()?IJA:X5,UJA=new Map,yI=(A)=>{let Q=UJA.get(A);if(Q)return Q;let B=A.normalize("NFKD");return UJA.set(A,B),B},EJA=new Map,_2=(A)=>{let Q=EJA.get(A);if(Q)return Q;let B=yI(A.toLowerCase());return EJA.set(A,B),B};class Xg extends jI{constructor(){super({max:256})}}class qJA extends jI{constructor(A=16384){super({maxSize:A,sizeCalculation:(Q)=>Q.length+1})}}var MJA=Symbol("PathScurry setAsCwd");class sJ{name;root;roots;parent;nocase;isCWD=!1;#A;#Q;get dev(){return this.#Q}#B;get mode(){return this.#B}#Y;get nlink(){return this.#Y}#J;get uid(){return this.#J}#C;get gid(){return this.#C}#W;get rdev(){return this.#W}#X;get blksize(){return this.#X}#G;get ino(){return this.#G}#Z;get size(){return this.#Z}#U;get blocks(){return this.#U}#F;get atimeMs(){return this.#F}#E;get mtimeMs(){return this.#E}#V;get ctimeMs(){return this.#V}#I;get birthtimeMs(){return this.#I}#D;get atime(){return this.#D}#O;get mtime(){return this.#O}#N;get ctime(){return this.#N}#P;get birthtime(){return this.#P}#M;#q;#L;#w;#H;#S;#$;#v;#z;#k;get parentPath(){return(this.parent||this).fullpath()}get path(){return this.parentPath}constructor(A,Q=X5,B,Y,J,C,X){if(this.name=A,this.#M=J?_2(A):yI(A),this.#$=Q&KuQ,this.nocase=J,this.roots=Y,this.root=B||this,this.#v=C,this.#L=X.fullpath,this.#H=X.relative,this.#S=X.relativePosix,this.parent=X.parent,this.parent)this.#A=this.parent.#A;else this.#A=KJA(X.fs)}depth(){if(this.#q!==void 0)return this.#q;if(!this.parent)return this.#q=0;return this.#q=this.parent.depth()+1}childrenCache(){return this.#v}resolve(A){if(!A)return this;let Q=this.getRootString(A),Y=A.substring(Q.length).split(this.splitSep);return Q?this.getRoot(Q).#R(Y):this.#R(Y)}#R(A){let Q=this;for(let B of A)Q=Q.child(B);return Q}children(){let A=this.#v.get(this);if(A)return A;let Q=Object.assign([],{provisional:0});return this.#v.set(this,Q),this.#$&=~Yg,Q}child(A,Q){if(A===""||A===".")return this;if(A==="..")return this.parent||this;let B=this.children(),Y=this.nocase?_2(A):yI(A);for(let G of B)if(G.#M===Y)return G;let J=this.parent?this.sep:"",C=this.#L?this.#L+J+A:void 0,X=this.newChild(A,X5,{...Q,parent:this,fullpath:C});if(!this.canReaddir())X.#$|=jC;return B.push(X),X}relative(){if(this.isCWD)return"";if(this.#H!==void 0)return this.#H;let A=this.name,Q=this.parent;if(!Q)return this.#H=this.name;let B=Q.relative();return B+(!B||!Q.parent?"":this.sep)+A}relativePosix(){if(this.sep==="/")return this.relative();if(this.isCWD)return"";if(this.#S!==void 0)return this.#S;let A=this.name,Q=this.parent;if(!Q)return this.#S=this.fullpathPosix();let B=Q.relativePosix();return B+(!B||!Q.parent?"":"/")+A}fullpath(){if(this.#L!==void 0)return this.#L;let A=this.name,Q=this.parent;if(!Q)return this.#L=this.name;let Y=Q.fullpath()+(!Q.parent?"":this.sep)+A;return this.#L=Y}fullpathPosix(){if(this.#w!==void 0)return this.#w;if(this.sep==="/")return this.#w=this.fullpath();if(!this.parent){let Y=this.fullpath().replace(/\\/g,"/");if(/^[a-z]:\//i.test(Y))return this.#w=`//?/${Y}`;else return this.#w=Y}let A=this.parent,Q=A.fullpathPosix(),B=Q+(!Q||!A.parent?"":"/")+this.name;return this.#w=B}isUnknown(){return(this.#$&C5)===X5}isType(A){return this[`is${A}`]()}getType(){return this.isUnknown()?"Unknown":this.isDirectory()?"Directory":this.isFile()?"File":this.isSymbolicLink()?"SymbolicLink":this.isFIFO()?"FIFO":this.isCharacterDevice()?"CharacterDevice":this.isBlockDevice()?"BlockDevice":this.isSocket()?"Socket":"Unknown"}isFile(){return(this.#$&C5)===NJA}isDirectory(){return(this.#$&C5)===_1}isCharacterDevice(){return(this.#$&C5)===HJA}isBlockDevice(){return(this.#$&C5)===DJA}isFIFO(){return(this.#$&C5)===IJA}isSocket(){return(this.#$&C5)===LJA}isSymbolicLink(){return(this.#$&hF)===hF}lstatCached(){return this.#$&ZJA?this:void 0}readlinkCached(){return this.#z}realpathCached(){return this.#k}readdirCached(){let A=this.children();return A.slice(0,A.provisional)}canReadlink(){if(this.#z)return!0;if(!this.parent)return!1;let A=this.#$&C5;return!(A!==X5&&A!==hF||this.#$&k2||this.#$&jC)}calledReaddir(){return!!(this.#$&Yg)}isENOENT(){return!!(this.#$&jC)}isNamed(A){return!this.nocase?this.#M===yI(A):this.#M===_2(A)}async readlink(){let A=this.#z;if(A)return A;if(!this.canReadlink())return;if(!this.parent)return;try{let Q=await this.#A.promises.readlink(this.fullpath()),B=(await this.parent.realpath())?.resolve(Q);if(B)return this.#z=B}catch(Q){this.#x(Q.code);return}}readlinkSync(){let A=this.#z;if(A)return A;if(!this.canReadlink())return;if(!this.parent)return;try{let Q=this.#A.readlinkSync(this.fullpath()),B=this.parent.realpathSync()?.resolve(Q);if(B)return this.#z=B}catch(Q){this.#x(Q.code);return}}#m(A){this.#$|=Yg;for(let Q=A.provisional;QB(null,A))}readdirCB(A,Q=!1){if(!this.canReaddir()){if(Q)A(null,[]);else queueMicrotask(()=>A(null,[]));return}let B=this.children();if(this.calledReaddir()){let J=B.slice(0,B.provisional);if(Q)A(null,J);else queueMicrotask(()=>A(null,J));return}if(this.#b.push(A),this.#p)return;this.#p=!0;let Y=this.fullpath();this.#A.readdir(Y,{withFileTypes:!0},(J,C)=>{if(J)this.#T(J.code),B.provisional=0;else{for(let X of C)this.#g(X,B);this.#m(B)}this.#i(B.slice(0,B.provisional));return})}#l;async readdir(){if(!this.canReaddir())return[];let A=this.children();if(this.calledReaddir())return A.slice(0,A.provisional);let Q=this.fullpath();if(this.#l)await this.#l;else{let B=()=>{};this.#l=new Promise((Y)=>B=Y);try{for(let Y of await this.#A.promises.readdir(Q,{withFileTypes:!0}))this.#g(Y,A);this.#m(A)}catch(Y){this.#T(Y.code),A.provisional=0}this.#l=void 0,B()}return A.slice(0,A.provisional)}readdirSync(){if(!this.canReaddir())return[];let A=this.children();if(this.calledReaddir())return A.slice(0,A.provisional);let Q=this.fullpath();try{for(let B of this.#A.readdirSync(Q,{withFileTypes:!0}))this.#g(B,A);this.#m(A)}catch(B){this.#T(B.code),A.provisional=0}return A.slice(0,A.provisional)}canReaddir(){if(this.#$&$JA)return!1;let A=C5&this.#$;if(!(A===X5||A===_1||A===hF))return!1;return!0}shouldWalk(A,Q){return(this.#$&_1)===_1&&!(this.#$&$JA)&&!A.has(this)&&(!Q||Q(this))}async realpath(){if(this.#k)return this.#k;if((v2|k2|jC)&this.#$)return;try{let A=await this.#A.promises.realpath(this.fullpath());return this.#k=this.resolve(A)}catch(A){this.#u()}}realpathSync(){if(this.#k)return this.#k;if((v2|k2|jC)&this.#$)return;try{let A=this.#A.realpathSync(this.fullpath());return this.#k=this.resolve(A)}catch(A){this.#u()}}[MJA](A){if(A===this)return;A.isCWD=!1,this.isCWD=!0;let Q=new Set([]),B=[],Y=this;while(Y&&Y.parent)Q.add(Y),Y.#H=B.join(this.sep),Y.#S=B.join("/"),Y=Y.parent,B.push("..");Y=A;while(Y&&Y.parent&&!Q.has(Y))Y.#H=void 0,Y.#S=void 0,Y=Y.parent}}class y2 extends sJ{sep="\\";splitSep=EuQ;constructor(A,Q=X5,B,Y,J,C,X){super(A,Q,B,Y,J,C,X)}newChild(A,Q=X5,B={}){return new y2(A,Q,this.root,this.roots,this.nocase,this.childrenCache(),B)}getRootString(A){return Cg.parse(A).root}getRoot(A){if(A=UuQ(A.toUpperCase()),A===this.root.name)return this.root;for(let[Q,B]of Object.entries(this.roots))if(this.sameRoot(A,Q))return this.roots[A]=B;return this.roots[A]=new gI(A,this).root}sameRoot(A,Q=this.root.name){return A=A.toUpperCase().replace(/\//g,"\\").replace(VJA,"$1\\"),A===Q}}class g2 extends sJ{splitSep="/";sep="/";constructor(A,Q=X5,B,Y,J,C,X){super(A,Q,B,Y,J,C,X)}getRootString(A){return A.startsWith("/")?"/":""}getRoot(A){return this.root}newChild(A,Q=X5,B={}){return new g2(A,Q,this.root,this.roots,this.nocase,this.childrenCache(),B)}}class Gg{root;rootPath;roots;cwd;#A;#Q;#B;nocase;#Y;constructor(A=process.cwd(),Q,B,{nocase:Y,childrenCacheSize:J=16384,fs:C=_I}={}){if(this.#Y=KJA(C),A instanceof URL||A.startsWith("file://"))A=AuQ(A);let X=Q.resolve(A);this.roots=Object.create(null),this.rootPath=this.parseRootPath(X),this.#A=new Xg,this.#Q=new Xg,this.#B=new qJA(J);let G=X.substring(this.rootPath.length).split(B);if(G.length===1&&!G[0])G.pop();if(Y===void 0)throw TypeError("must provide nocase setting to PathScurryBase ctor");this.nocase=Y,this.root=this.newRoot(this.#Y),this.roots[this.rootPath]=this.root;let W=this.root,F=G.length-1,Z=Q.sep,U=this.rootPath,$=!1;for(let E of G){let K=F--;W=W.child(E,{relative:Array(K).fill("..").join(Z),relativePosix:Array(K).fill("..").join("/"),fullpath:U+=($?"":Z)+E}),$=!0}this.cwd=W}depth(A=this.cwd){if(typeof A==="string")A=this.cwd.resolve(A);return A.depth()}childrenCache(){return this.#B}resolve(...A){let Q="";for(let J=A.length-1;J>=0;J--){let C=A[J];if(!C||C===".")continue;if(Q=Q?`${C}/${Q}`:C,this.isAbsolute(C))break}let B=this.#A.get(Q);if(B!==void 0)return B;let Y=this.cwd.resolve(Q).fullpath();return this.#A.set(Q,Y),Y}resolvePosix(...A){let Q="";for(let J=A.length-1;J>=0;J--){let C=A[J];if(!C||C===".")continue;if(Q=Q?`${C}/${Q}`:C,this.isAbsolute(C))break}let B=this.#Q.get(Q);if(B!==void 0)return B;let Y=this.cwd.resolve(Q).fullpathPosix();return this.#Q.set(Q,Y),Y}relative(A=this.cwd){if(typeof A==="string")A=this.cwd.resolve(A);return A.relative()}relativePosix(A=this.cwd){if(typeof A==="string")A=this.cwd.resolve(A);return A.relativePosix()}basename(A=this.cwd){if(typeof A==="string")A=this.cwd.resolve(A);return A.name}dirname(A=this.cwd){if(typeof A==="string")A=this.cwd.resolve(A);return(A.parent||A).fullpath()}async readdir(A=this.cwd,Q={withFileTypes:!0}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof sJ))Q=A,A=this.cwd;let{withFileTypes:B}=Q;if(!A.canReaddir())return[];else{let Y=await A.readdir();return B?Y:Y.map((J)=>J.name)}}readdirSync(A=this.cwd,Q={withFileTypes:!0}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof sJ))Q=A,A=this.cwd;let{withFileTypes:B=!0}=Q;if(!A.canReaddir())return[];else if(B)return A.readdirSync();else return A.readdirSync().map((Y)=>Y.name)}async lstat(A=this.cwd){if(typeof A==="string")A=this.cwd.resolve(A);return A.lstat()}lstatSync(A=this.cwd){if(typeof A==="string")A=this.cwd.resolve(A);return A.lstatSync()}async readlink(A=this.cwd,{withFileTypes:Q}={withFileTypes:!1}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof sJ))Q=A.withFileTypes,A=this.cwd;let B=await A.readlink();return Q?B:B?.fullpath()}readlinkSync(A=this.cwd,{withFileTypes:Q}={withFileTypes:!1}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof sJ))Q=A.withFileTypes,A=this.cwd;let B=A.readlinkSync();return Q?B:B?.fullpath()}async realpath(A=this.cwd,{withFileTypes:Q}={withFileTypes:!1}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof sJ))Q=A.withFileTypes,A=this.cwd;let B=await A.realpath();return Q?B:B?.fullpath()}realpathSync(A=this.cwd,{withFileTypes:Q}={withFileTypes:!1}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof sJ))Q=A.withFileTypes,A=this.cwd;let B=A.realpathSync();return Q?B:B?.fullpath()}async walk(A=this.cwd,Q={}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof sJ))Q=A,A=this.cwd;let{withFileTypes:B=!0,follow:Y=!1,filter:J,walkFilter:C}=Q,X=[];if(!J||J(A))X.push(B?A:A.fullpath());let G=new Set,W=(Z,U)=>{G.add(Z),Z.readdirCB(($,E)=>{if($)return U($);let K=E.length;if(!K)return U();let I=()=>{if(--K===0)U()};for(let V of E){if(!J||J(V))X.push(B?V:V.fullpath());if(Y&&V.isSymbolicLink())V.realpath().then((H)=>H?.isUnknown()?H.lstat():H).then((H)=>H?.shouldWalk(G,C)?W(H,I):I());else if(V.shouldWalk(G,C))W(V,I);else I()}},!0)},F=A;return new Promise((Z,U)=>{W(F,($)=>{if($)return U($);Z(X)})})}walkSync(A=this.cwd,Q={}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof sJ))Q=A,A=this.cwd;let{withFileTypes:B=!0,follow:Y=!1,filter:J,walkFilter:C}=Q,X=[];if(!J||J(A))X.push(B?A:A.fullpath());let G=new Set([A]);for(let W of G){let F=W.readdirSync();for(let Z of F){if(!J||J(Z))X.push(B?Z:Z.fullpath());let U=Z;if(Z.isSymbolicLink()){if(!(Y&&(U=Z.realpathSync())))continue;if(U.isUnknown())U.lstatSync()}if(U.shouldWalk(G,C))G.add(U)}}return X}[Symbol.asyncIterator](){return this.iterate()}iterate(A=this.cwd,Q={}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof sJ))Q=A,A=this.cwd;return this.stream(A,Q)[Symbol.asyncIterator]()}[Symbol.iterator](){return this.iterateSync()}*iterateSync(A=this.cwd,Q={}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof sJ))Q=A,A=this.cwd;let{withFileTypes:B=!0,follow:Y=!1,filter:J,walkFilter:C}=Q;if(!J||J(A))yield B?A:A.fullpath();let X=new Set([A]);for(let G of X){let W=G.readdirSync();for(let F of W){if(!J||J(F))yield B?F:F.fullpath();let Z=F;if(F.isSymbolicLink()){if(!(Y&&(Z=F.realpathSync())))continue;if(Z.isUnknown())Z.lstatSync()}if(Z.shouldWalk(X,C))X.add(Z)}}}stream(A=this.cwd,Q={}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof sJ))Q=A,A=this.cwd;let{withFileTypes:B=!0,follow:Y=!1,filter:J,walkFilter:C}=Q,X=new gF({objectMode:!0});if(!J||J(A))X.write(B?A:A.fullpath());let G=new Set,W=[A],F=0,Z=()=>{let U=!1;while(!U){let $=W.shift();if(!$){if(F===0)X.end();return}F++,G.add($);let E=(I,V,H=!1)=>{if(I)return X.emit("error",I);if(Y&&!H){let D=[];for(let L of V)if(L.isSymbolicLink())D.push(L.realpath().then((z)=>z?.isUnknown()?z.lstat():z));if(D.length){Promise.all(D).then(()=>E(null,V,!0));return}}for(let D of V)if(D&&(!J||J(D))){if(!X.write(B?D:D.fullpath()))U=!0}F--;for(let D of V){let L=D.realpathCached()||D;if(L.shouldWalk(G,C))W.push(L)}if(U&&!X.flowing)X.once("drain",Z);else if(!K)Z()},K=!0;$.readdirCB(E,!0),K=!1}};return Z(),X}streamSync(A=this.cwd,Q={}){if(typeof A==="string")A=this.cwd.resolve(A);else if(!(A instanceof sJ))Q=A,A=this.cwd;let{withFileTypes:B=!0,follow:Y=!1,filter:J,walkFilter:C}=Q,X=new gF({objectMode:!0}),G=new Set;if(!J||J(A))X.write(B?A:A.fullpath());let W=[A],F=0,Z=()=>{let U=!1;while(!U){let $=W.shift();if(!$){if(F===0)X.end();return}F++,G.add($);let E=$.readdirSync();for(let K of E)if(!J||J(K)){if(!X.write(B?K:K.fullpath()))U=!0}F--;for(let K of E){let I=K;if(K.isSymbolicLink()){if(!(Y&&(I=K.realpathSync())))continue;if(I.isUnknown())I.lstatSync()}if(I.shouldWalk(G,C))W.push(I)}}if(U&&!X.flowing)X.once("drain",Z)};return Z(),X}chdir(A=this.cwd){let Q=this.cwd;this.cwd=typeof A==="string"?this.cwd.resolve(A):A,this.cwd[MJA](Q)}}class gI extends Gg{sep="\\";constructor(A=process.cwd(),Q={}){let{nocase:B=!0}=Q;super(A,Cg,"\\",{...Q,nocase:B});this.nocase=B;for(let Y=this.cwd;Y;Y=Y.parent)Y.nocase=this.nocase}parseRootPath(A){return Cg.parse(A).root.toUpperCase()}newRoot(A){return new y2(this.rootPath,_1,void 0,this.roots,this.nocase,this.childrenCache(),{fs:A})}isAbsolute(A){return A.startsWith("/")||A.startsWith("\\")||/^[a-z]:(\/|\\)/i.test(A)}}class hI extends Gg{sep="/";constructor(A=process.cwd(),Q={}){let{nocase:B=!1}=Q;super(A,emQ,"/",{...Q,nocase:B});this.nocase=B}parseRootPath(A){return"/"}newRoot(A){return new g2(this.rootPath,_1,void 0,this.roots,this.nocase,this.childrenCache(),{fs:A})}isAbsolute(A){return A.startsWith("/")}}class h2 extends hI{constructor(A=process.cwd(),Q={}){let{nocase:B=!0}=Q;super(A,{...Q,nocase:B})}}var EXY=process.platform==="win32"?y2:g2,zJA=process.platform==="win32"?gI:process.platform==="darwin"?h2:hI;var VuQ=(A)=>A.length>=1,IuQ=(A)=>A.length>=1;class c4{#A;#Q;#B;length;#Y;#J;#C;#W;#X;#G;#Z=!0;constructor(A,Q,B,Y){if(!VuQ(A))throw TypeError("empty pattern list");if(!IuQ(Q))throw TypeError("empty glob list");if(Q.length!==A.length)throw TypeError("mismatched pattern list and glob list lengths");if(this.length=A.length,B<0||B>=this.length)throw TypeError("index out of range");if(this.#A=A,this.#Q=Q,this.#B=B,this.#Y=Y,this.#B===0){if(this.isUNC()){let[J,C,X,G,...W]=this.#A,[F,Z,U,$,...E]=this.#Q;if(W[0]==="")W.shift(),E.shift();let K=[J,C,X,G,""].join("/"),I=[F,Z,U,$,""].join("/");this.#A=[K,...W],this.#Q=[I,...E],this.length=this.#A.length}else if(this.isDrive()||this.isAbsolute()){let[J,...C]=this.#A,[X,...G]=this.#Q;if(C[0]==="")C.shift(),G.shift();let W=J+"/",F=X+"/";this.#A=[W,...C],this.#Q=[F,...G],this.length=this.#A.length}}}pattern(){return this.#A[this.#B]}isString(){return typeof this.#A[this.#B]==="string"}isGlobstar(){return this.#A[this.#B]===JJ}isRegExp(){return this.#A[this.#B]instanceof RegExp}globString(){return this.#C=this.#C||(this.#B===0?this.isAbsolute()?this.#Q[0]+this.#Q.slice(1).join("/"):this.#Q.join("/"):this.#Q.slice(this.#B).join("/"))}hasMore(){return this.length>this.#B+1}rest(){if(this.#J!==void 0)return this.#J;if(!this.hasMore())return this.#J=null;return this.#J=new c4(this.#A,this.#Q,this.#B+1,this.#Y),this.#J.#G=this.#G,this.#J.#X=this.#X,this.#J.#W=this.#W,this.#J}isUNC(){let A=this.#A;return this.#X!==void 0?this.#X:this.#X=this.#Y==="win32"&&this.#B===0&&A[0]===""&&A[1]===""&&typeof A[2]==="string"&&!!A[2]&&typeof A[3]==="string"&&!!A[3]}isDrive(){let A=this.#A;return this.#W!==void 0?this.#W:this.#W=this.#Y==="win32"&&this.#B===0&&this.length>1&&typeof A[0]==="string"&&/^[a-z]:$/i.test(A[0])}isAbsolute(){let A=this.#A;return this.#G!==void 0?this.#G:this.#G=A[0]===""&&A.length>1||this.isDrive()||this.isUNC()}root(){let A=this.#A[0];return typeof A==="string"&&this.isAbsolute()&&this.#B===0?A:""}checkFollowGlobstar(){return!(this.#B===0||!this.isGlobstar()||!this.#Z)}markFollowGlobstar(){if(this.#B===0||!this.isGlobstar()||!this.#Z)return!1;return this.#Z=!1,!0}}var HuQ=typeof process==="object"&&process&&typeof process.platform==="string"?process.platform:"linux";class xI{relative;relativeChildren;absolute;absoluteChildren;platform;mmopts;constructor(A,{nobrace:Q,nocase:B,noext:Y,noglobstar:J,platform:C=HuQ}){this.relative=[],this.absolute=[],this.relativeChildren=[],this.absoluteChildren=[],this.platform=C,this.mmopts={dot:!0,nobrace:Q,nocase:B,noext:Y,noglobstar:J,optimizationLevel:2,platform:C,nocomment:!0,nonegate:!0};for(let X of A)this.add(X)}add(A){let Q=new J5(A,this.mmopts);for(let B=0;B[A,!!(Q&2),!!(Q&1)])}}class wJA{store=new Map;add(A,Q){if(!A.canReaddir())return;let B=this.store.get(A);if(B){if(!B.find((Y)=>Y.globString()===Q.globString()))B.push(Q)}else this.store.set(A,[Q])}get(A){let Q=this.store.get(A);if(!Q)throw Error("attempting to walk unknown path");return Q}entries(){return this.keys().map((A)=>[A,this.store.get(A)])}keys(){return[...this.store.keys()].filter((A)=>A.canReaddir())}}class fI{hasWalkedCache;matches=new RJA;subwalks=new wJA;patterns;follow;dot;opts;constructor(A,Q){this.opts=A,this.follow=!!A.follow,this.dot=!!A.dot,this.hasWalkedCache=Q?Q.copy():new Wg}processPatterns(A,Q){this.patterns=Q;let B=Q.map((Y)=>[A,Y]);for(let[Y,J]of B){this.hasWalkedCache.storeWalked(Y,J);let C=J.root(),X=J.isAbsolute()&&this.opts.absolute!==!1;if(C){Y=Y.resolve(C==="/"&&this.opts.root!==void 0?this.opts.root:C);let Z=J.rest();if(!Z){this.matches.add(Y,!0,!1);continue}else J=Z}if(Y.isENOENT())continue;let G,W,F=!1;while(typeof(G=J.pattern())==="string"&&(W=J.rest()))Y=Y.resolve(G),J=W,F=!0;if(G=J.pattern(),W=J.rest(),F){if(this.hasWalkedCache.hasWalked(Y,J))continue;this.hasWalkedCache.storeWalked(Y,J)}if(typeof G==="string"){let Z=G===".."||G===""||G===".";this.matches.add(Y.resolve(G),X,Z);continue}else if(G===JJ){if(!Y.isSymbolicLink()||this.follow||J.checkFollowGlobstar())this.subwalks.add(Y,J);let Z=W?.pattern(),U=W?.rest();if(!W||(Z===""||Z===".")&&!U)this.matches.add(Y,X,Z===""||Z===".");else if(Z===".."){let $=Y.parent||Y;if(!U)this.matches.add($,X,!0);else if(!this.hasWalkedCache.hasWalked($,U))this.subwalks.add($,U)}}else if(G instanceof RegExp)this.subwalks.add(Y,J)}return this}subwalkTargets(){return this.subwalks.keys()}child(){return new fI(this.opts,this.hasWalkedCache)}filterEntries(A,Q){let B=this.subwalks.get(A),Y=this.child();for(let J of Q)for(let C of B){let X=C.isAbsolute(),G=C.pattern(),W=C.rest();if(G===JJ)Y.testGlobstar(J,C,W,X);else if(G instanceof RegExp)Y.testRegExp(J,G,W,X);else Y.testString(J,G,W,X)}return Y}testGlobstar(A,Q,B,Y){if(this.dot||!A.name.startsWith(".")){if(!Q.hasMore())this.matches.add(A,Y,!1);if(A.canReaddir()){if(this.follow||!A.isSymbolicLink())this.subwalks.add(A,Q);else if(A.isSymbolicLink()){if(B&&Q.checkFollowGlobstar())this.subwalks.add(A,B);else if(Q.markFollowGlobstar())this.subwalks.add(A,Q)}}}if(B){let J=B.pattern();if(typeof J==="string"&&J!==".."&&J!==""&&J!==".")this.testString(A,J,B.rest(),Y);else if(J===".."){let C=A.parent||A;this.subwalks.add(C,B)}else if(J instanceof RegExp)this.testRegExp(A,J,B.rest(),Y)}}testRegExp(A,Q,B,Y){if(!Q.test(A.name))return;if(!B)this.matches.add(A,Y,!1);else this.subwalks.add(A,B)}testString(A,Q,B,Y){if(!A.isNamed(Q))return;if(!B)this.matches.add(A,Y,!1);else this.subwalks.add(A,B)}}var DuQ=(A,Q)=>typeof A==="string"?new xI([A],Q):Array.isArray(A)?new xI(A,Q):A;class Fg{path;patterns;opts;seen=new Set;paused=!1;aborted=!1;#A=[];#Q;#B;signal;maxDepth;includeChildMatches;constructor(A,Q,B){if(this.patterns=A,this.path=Q,this.opts=B,this.#B=!B.posix&&B.platform==="win32"?"\\":"/",this.includeChildMatches=B.includeChildMatches!==!1,B.ignore||!this.includeChildMatches){if(this.#Q=DuQ(B.ignore??[],B),!this.includeChildMatches&&typeof this.#Q.add!=="function")throw Error("cannot ignore child matches, ignore lacks add() method.")}if(this.maxDepth=B.maxDepth||1/0,B.signal)this.signal=B.signal,this.signal.addEventListener("abort",()=>{this.#A.length=0})}#Y(A){return this.seen.has(A)||!!this.#Q?.ignored?.(A)}#J(A){return!!this.#Q?.childrenIgnored?.(A)}pause(){this.paused=!0}resume(){if(this.signal?.aborted)return;this.paused=!1;let A=void 0;while(!this.paused&&(A=this.#A.shift()))A()}onResume(A){if(this.signal?.aborted)return;if(!this.paused)A();else this.#A.push(A)}async matchCheck(A,Q){if(Q&&this.opts.nodir)return;let B;if(this.opts.realpath){if(B=A.realpathCached()||await A.realpath(),!B)return;A=B}let J=A.isUnknown()||this.opts.stat?await A.lstat():A;if(this.opts.follow&&this.opts.nodir&&J?.isSymbolicLink()){let C=await J.realpath();if(C&&(C.isUnknown()||this.opts.stat))await C.lstat()}return this.matchCheckTest(J,Q)}matchCheckTest(A,Q){return A&&(this.maxDepth===1/0||A.depth()<=this.maxDepth)&&(!Q||A.canReaddir())&&(!this.opts.nodir||!A.isDirectory())&&(!this.opts.nodir||!this.opts.follow||!A.isSymbolicLink()||!A.realpathCached()?.isDirectory())&&!this.#Y(A)?A:void 0}matchCheckSync(A,Q){if(Q&&this.opts.nodir)return;let B;if(this.opts.realpath){if(B=A.realpathCached()||A.realpathSync(),!B)return;A=B}let J=A.isUnknown()||this.opts.stat?A.lstatSync():A;if(this.opts.follow&&this.opts.nodir&&J?.isSymbolicLink()){let C=J.realpathSync();if(C&&(C?.isUnknown()||this.opts.stat))C.lstatSync()}return this.matchCheckTest(J,Q)}matchFinish(A,Q){if(this.#Y(A))return;if(!this.includeChildMatches&&this.#Q?.add){let J=`${A.relativePosix()}/**`;this.#Q.add(J)}let B=this.opts.absolute===void 0?Q:this.opts.absolute;this.seen.add(A);let Y=this.opts.mark&&A.isDirectory()?this.#B:"";if(this.opts.withFileTypes)this.matchEmit(A);else if(B){let J=this.opts.posix?A.fullpathPosix():A.fullpath();this.matchEmit(J+Y)}else{let J=this.opts.posix?A.relativePosix():A.relative(),C=this.opts.dotRelative&&!J.startsWith(".."+this.#B)?"."+this.#B:"";this.matchEmit(!J?"."+Y:C+J+Y)}}async match(A,Q,B){let Y=await this.matchCheck(A,B);if(Y)this.matchFinish(Y,Q)}matchSync(A,Q,B){let Y=this.matchCheckSync(A,B);if(Y)this.matchFinish(Y,Q)}walkCB(A,Q,B){if(this.signal?.aborted)B();this.walkCB2(A,Q,new fI(this.opts),B)}walkCB2(A,Q,B,Y){if(this.#J(A))return Y();if(this.signal?.aborted)Y();if(this.paused){this.onResume(()=>this.walkCB2(A,Q,B,Y));return}B.processPatterns(A,Q);let J=1,C=()=>{if(--J===0)Y()};for(let[X,G,W]of B.matches.entries()){if(this.#Y(X))continue;J++,this.match(X,G,W).then(()=>C())}for(let X of B.subwalkTargets()){if(this.maxDepth!==1/0&&X.depth()>=this.maxDepth)continue;J++;let G=X.readdirCached();if(X.calledReaddir())this.walkCB3(X,G,B,C);else X.readdirCB((W,F)=>this.walkCB3(X,F,B,C),!0)}C()}walkCB3(A,Q,B,Y){B=B.filterEntries(A,Q);let J=1,C=()=>{if(--J===0)Y()};for(let[X,G,W]of B.matches.entries()){if(this.#Y(X))continue;J++,this.match(X,G,W).then(()=>C())}for(let[X,G]of B.subwalks.entries())J++,this.walkCB2(X,G,B.child(),C);C()}walkCBSync(A,Q,B){if(this.signal?.aborted)B();this.walkCB2Sync(A,Q,new fI(this.opts),B)}walkCB2Sync(A,Q,B,Y){if(this.#J(A))return Y();if(this.signal?.aborted)Y();if(this.paused){this.onResume(()=>this.walkCB2Sync(A,Q,B,Y));return}B.processPatterns(A,Q);let J=1,C=()=>{if(--J===0)Y()};for(let[X,G,W]of B.matches.entries()){if(this.#Y(X))continue;this.matchSync(X,G,W)}for(let X of B.subwalkTargets()){if(this.maxDepth!==1/0&&X.depth()>=this.maxDepth)continue;J++;let G=X.readdirSync();this.walkCB3Sync(X,G,B,C)}C()}walkCB3Sync(A,Q,B,Y){B=B.filterEntries(A,Q);let J=1,C=()=>{if(--J===0)Y()};for(let[X,G,W]of B.matches.entries()){if(this.#Y(X))continue;this.matchSync(X,G,W)}for(let[X,G]of B.subwalks.entries())J++,this.walkCB2Sync(X,G,B.child(),C);C()}}class x2 extends Fg{matches=new Set;constructor(A,Q,B){super(A,Q,B)}matchEmit(A){this.matches.add(A)}async walk(){if(this.signal?.aborted)throw this.signal.reason;if(this.path.isUnknown())await this.path.lstat();return await new Promise((A,Q)=>{this.walkCB(this.path,this.patterns,()=>{if(this.signal?.aborted)Q(this.signal.reason);else A(this.matches)})}),this.matches}walkSync(){if(this.signal?.aborted)throw this.signal.reason;if(this.path.isUnknown())this.path.lstatSync();return this.walkCBSync(this.path,this.patterns,()=>{if(this.signal?.aborted)throw this.signal.reason}),this.matches}}class f2 extends Fg{results;constructor(A,Q,B){super(A,Q,B);this.results=new gF({signal:this.signal,objectMode:!0}),this.results.on("drain",()=>this.resume()),this.results.on("resume",()=>this.resume())}matchEmit(A){if(this.results.write(A),!this.results.flowing)this.pause()}stream(){let A=this.path;if(A.isUnknown())A.lstat().then(()=>{this.walkCB(A,this.patterns,()=>this.results.end())});else this.walkCB(A,this.patterns,()=>this.results.end());return this.results}streamSync(){if(this.path.isUnknown())this.path.lstatSync();return this.walkCBSync(this.path,this.patterns,()=>this.results.end()),this.results}}var LuQ=typeof process==="object"&&process&&typeof process.platform==="string"?process.platform:"linux";class v1{absolute;cwd;root;dot;dotRelative;follow;ignore;magicalBraces;mark;matchBase;maxDepth;nobrace;nocase;nodir;noext;noglobstar;pattern;platform;realpath;scurry;stat;signal;windowsPathsNoEscape;withFileTypes;includeChildMatches;opts;patterns;constructor(A,Q){if(!Q)throw TypeError("glob options required");if(this.withFileTypes=!!Q.withFileTypes,this.signal=Q.signal,this.follow=!!Q.follow,this.dot=!!Q.dot,this.dotRelative=!!Q.dotRelative,this.nodir=!!Q.nodir,this.mark=!!Q.mark,!Q.cwd)this.cwd="";else if(Q.cwd instanceof URL||Q.cwd.startsWith("file://"))Q.cwd=NuQ(Q.cwd);if(this.cwd=Q.cwd||"",this.root=Q.root,this.magicalBraces=!!Q.magicalBraces,this.nobrace=!!Q.nobrace,this.noext=!!Q.noext,this.realpath=!!Q.realpath,this.absolute=Q.absolute,this.includeChildMatches=Q.includeChildMatches!==!1,this.noglobstar=!!Q.noglobstar,this.matchBase=!!Q.matchBase,this.maxDepth=typeof Q.maxDepth==="number"?Q.maxDepth:1/0,this.stat=!!Q.stat,this.ignore=Q.ignore,this.withFileTypes&&this.absolute!==void 0)throw Error("cannot set absolute and withFileTypes:true");if(typeof A==="string")A=[A];if(this.windowsPathsNoEscape=!!Q.windowsPathsNoEscape||Q.allowWindowsEscape===!1,this.windowsPathsNoEscape)A=A.map((G)=>G.replace(/\\/g,"/"));if(this.matchBase){if(Q.noglobstar)throw TypeError("base matching requires globstar");A=A.map((G)=>G.includes("/")?G:`./**/${G}`)}if(this.pattern=A,this.platform=Q.platform||LuQ,this.opts={...Q,platform:this.platform},Q.scurry){if(this.scurry=Q.scurry,Q.nocase!==void 0&&Q.nocase!==Q.scurry.nocase)throw Error("nocase option contradicts provided scurry option")}else{let G=Q.platform==="win32"?gI:Q.platform==="darwin"?h2:Q.platform?hI:zJA;this.scurry=new G(this.cwd,{nocase:Q.nocase,fs:Q.fs})}this.nocase=this.scurry.nocase;let B=this.platform==="darwin"||this.platform==="win32",Y={...Q,dot:this.dot,matchBase:this.matchBase,nobrace:this.nobrace,nocase:this.nocase,nocaseMagicOnly:B,nocomment:!0,noext:this.noext,nonegate:!0,optimizationLevel:2,platform:this.platform,windowsPathsNoEscape:this.windowsPathsNoEscape,debug:!!this.opts.debug},J=this.pattern.map((G)=>new J5(G,Y)),[C,X]=J.reduce((G,W)=>{return G[0].push(...W.set),G[1].push(...W.globParts),G},[[],[]]);this.patterns=C.map((G,W)=>{let F=X[W];if(!F)throw Error("invalid pattern object");return new c4(G,F,0,this.platform)})}async walk(){return[...await new x2(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walk()]}walkSync(){return[...new x2(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walkSync()]}stream(){return new f2(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).stream()}streamSync(){return new f2(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).streamSync()}iterateSync(){return this.streamSync()[Symbol.iterator]()}[Symbol.iterator](){return this.iterateSync()}iterate(){return this.stream()[Symbol.asyncIterator]()}[Symbol.asyncIterator](){return this.iterate()}}var Zg=(A,Q={})=>{if(!Array.isArray(A))A=[A];for(let B of A)if(new J5(B,Q).hasMagic())return!0;return!1};function b2(A,Q={}){return new v1(A,Q).streamSync()}function OJA(A,Q={}){return new v1(A,Q).stream()}function PJA(A,Q={}){return new v1(A,Q).walkSync()}async function jJA(A,Q={}){return new v1(A,Q).walk()}function m2(A,Q={}){return new v1(A,Q).iterateSync()}function TJA(A,Q={}){return new v1(A,Q).iterate()}var quQ=b2,MuQ=Object.assign(OJA,{sync:b2}),zuQ=m2,RuQ=Object.assign(TJA,{sync:m2}),wuQ=Object.assign(PJA,{stream:b2,iterate:m2}),l4=Object.assign(jJA,{glob:jJA,globSync:PJA,sync:wuQ,globStream:OJA,stream:MuQ,globStreamSync:b2,streamSync:quQ,globIterate:TJA,iterate:RuQ,globIterateSync:m2,iterateSync:zuQ,Glob:v1,hasMagic:Zg,escape:f4,unescape:RC});l4.glob=l4;class $g{constructor(){this._listeners={}}addEventListener(A,Q){let B=this._listeners;if(B[A]===void 0)B[A]=[];if(B[A].indexOf(Q)===-1)B[A].push(Q);return this}removeEventListener(A,Q){let Y=this._listeners[A];if(Y!==void 0){let J=Y.indexOf(Q);if(J!==-1)Y.splice(J,1)}return this}dispatchEvent(A){let B=this._listeners[A.type];if(B!==void 0){let Y=B.slice(0);for(let J=0,C=Y.length;J=0)this.list.splice(Q,1)}removeChild(A){let Q=[];for(let B of this.list)if(B.getChild()===A)Q.push(B);for(let B of Q)this.remove(B);return Q}listRefsByChild(A){let Q=[];for(let B of this.list)if(B.getChild()===A)Q.push(B);return Q}values(){return this.list}}class xB{constructor(A){if(this.set=new Set,this.map=new Map,A)for(let Q of A)this.add(Q)}add(A){let Q=A.getChild();this.removeChild(Q),this.set.add(A),this.map.set(Q,A)}remove(A){this.set.delete(A),this.map.delete(A.getChild())}removeChild(A){let Q=this.map.get(A)||null;if(Q)this.remove(Q);return Q}getRefByChild(A){return this.map.get(A)||null}values(){return Array.from(this.set)}}class rJ{constructor(A){if(this.map={},A)Object.assign(this.map,A)}set(A,Q){this.map[A]=Q}delete(A){delete this.map[A]}get(A){return this.map[A]||null}keys(){return Object.keys(this.map)}values(){return Object.values(this.map)}}var PB=Symbol("attributes"),B7=Symbol("immutableKeys");class d2 extends $g{constructor(A){super();this._disposed=!1,this.graph=void 0,this[PB]=void 0,this[B7]=void 0,this.graph=A,this[B7]=new Set,this[PB]=this._createAttributes()}getDefaults(){return{}}_createAttributes(){let A=this.getDefaults(),Q={};for(let B in A){let Y=A[B];if(Y instanceof d2){let J=this.graph._createEdge(B,this,Y);this[B7].add(B),Q[B]=J}else Q[B]=Y}return Q}isOnGraph(A){return this.graph===A.graph}isDisposed(){return this._disposed}dispose(){if(this._disposed)return;this.graph.listChildEdges(this).forEach((A)=>A.dispose()),this.graph.disconnectParents(this),this._disposed=!0,this.dispatchEvent({type:"dispose"})}detach(){return this.graph.disconnectParents(this),this}swap(A,Q){for(let B in this[PB]){let Y=this[PB][B];if(Y instanceof B6){let J=Y;if(J.getChild()===A)this.setRef(B,Q,J.getAttributes())}else if(Y instanceof OC)for(let J of Y.listRefsByChild(A)){let C=J.getAttributes();this.removeRef(B,A),this.addRef(B,Q,C)}else if(Y instanceof xB){let J=Y.getRefByChild(A);if(J){let C=J.getAttributes();this.removeRef(B,A),this.addRef(B,Q,C)}}else if(Y instanceof rJ)for(let J of Y.keys()){let C=Y.get(J);if(C.getChild()===A)this.setRefMap(B,J,Q,C.getAttributes())}}return this}get(A){return this[PB][A]}set(A,Q){return this[PB][A]=Q,this.dispatchEvent({type:"change",attribute:A})}getRef(A){let Q=this[PB][A];return Q?Q.getChild():null}setRef(A,Q,B){if(this[B7].has(A))throw Error(`Cannot overwrite immutable attribute, "${A}".`);let Y=this[PB][A];if(Y)Y.dispose();if(!Q)return this;let J=this.graph._createEdge(A,this,Q,B);return this[PB][A]=J,this.dispatchEvent({type:"change",attribute:A})}listRefs(A){return this.assertRefList(A).values().map((B)=>B.getChild())}addRef(A,Q,B){let Y=this.graph._createEdge(A,this,Q,B);return this.assertRefList(A).add(Y),this.dispatchEvent({type:"change",attribute:A})}removeRef(A,Q){let B=this.assertRefList(A);if(B instanceof OC)for(let Y of B.listRefsByChild(Q))Y.dispose();else{let Y=B.getRefByChild(Q);if(Y)Y.dispose()}return this}assertRefList(A){let Q=this[PB][A];if(Q instanceof OC||Q instanceof xB)return Q;throw Error(`Expected RefList or RefSet for attribute "${A}"`)}listRefMapKeys(A){return this.assertRefMap(A).keys()}listRefMapValues(A){return this.assertRefMap(A).values().map((Q)=>Q.getChild())}getRefMap(A,Q){let Y=this.assertRefMap(A).get(Q);return Y?Y.getChild():null}setRefMap(A,Q,B,Y){let J=this.assertRefMap(A),C=J.get(Q);if(C)C.dispose();if(!B)return this;Y=Object.assign(Y||{},{key:Q});let X=this.graph._createEdge(A,this,B,bI({},Y,{key:Q}));return J.set(Q,X),this.dispatchEvent({type:"change",attribute:A,key:Q})}assertRefMap(A){let Q=this[PB][A];if(Q instanceof rJ)return Q;throw Error(`Expected RefMap for attribute "${A}"`)}dispatchEvent(A){return super.dispatchEvent(bI({},A,{target:this})),this.graph.dispatchEvent(bI({},A,{target:this,type:`node:${A.type}`})),this}_destroyRef(A){let Q=A.getName();if(this[PB][Q]===A){if(this[PB][Q]=null,this[B7].has(Q))A.getChild().dispose()}else if(this[PB][Q]instanceof OC)this[PB][Q].remove(A);else if(this[PB][Q]instanceof xB)this[PB][Q].remove(A);else if(this[PB][Q]instanceof rJ){let B=this[PB][Q];for(let Y of B.keys())if(B.get(Y)===A)B.delete(Y)}else return;this.graph._destroyEdge(A),this.dispatchEvent({type:"change",attribute:Q})}}var hJA="v4.2.1",fF="@glb.bin",YA;(function(A){A.ACCESSOR="Accessor",A.ANIMATION="Animation",A.ANIMATION_CHANNEL="AnimationChannel",A.ANIMATION_SAMPLER="AnimationSampler",A.BUFFER="Buffer",A.CAMERA="Camera",A.MATERIAL="Material",A.MESH="Mesh",A.PRIMITIVE="Primitive",A.PRIMITIVE_TARGET="PrimitiveTarget",A.NODE="Node",A.ROOT="Root",A.SCENE="Scene",A.SKIN="Skin",A.TEXTURE="Texture",A.TEXTURE_INFO="TextureInfo"})(YA||(YA={}));var s2;(function(A){A.INTERLEAVED="interleaved",A.SEPARATE="separate"})(s2||(s2={}));var Z8;(function(A){A.ARRAY_BUFFER="ARRAY_BUFFER",A.ELEMENT_ARRAY_BUFFER="ELEMENT_ARRAY_BUFFER",A.INVERSE_BIND_MATRICES="INVERSE_BIND_MATRICES",A.OTHER="OTHER",A.SPARSE="SPARSE"})(Z8||(Z8={}));var k9;(function(A){A[A.R=4096]="R",A[A.G=256]="G",A[A.B=16]="B",A[A.A=1]="A"})(k9||(k9={}));var Y6;(function(A){A.GLTF="GLTF",A.GLB="GLB"})(Y6||(Y6={}));var J7={"5120":Int8Array,"5121":Uint8Array,"5122":Int16Array,"5123":Uint16Array,"5125":Uint32Array,"5126":Float32Array};class jQ{static createBufferFromDataURI(A){if(typeof Buffer>"u"){let Q=atob(A.split(",")[1]),B=new Uint8Array(Q.length);for(let Y=0;Y=0;return Buffer.from(Q,B?"base64":"utf8")}}static encodeText(A){return new TextEncoder().encode(A)}static decodeText(A){return new TextDecoder().decode(A)}static concat(A){let Q=0;for(let J of A)Q+=J.byteLength;let B=new Uint8Array(Q),Y=0;for(let J of A)B.set(J,Y),Y+=J.byteLength;return B}static pad(A,Q=0){let B=this.padNumber(A.byteLength);if(B===A.byteLength)return A;let Y=new Uint8Array(B);if(Y.set(A),Q!==0)for(let J=A.byteLength;J>16&255)/255,B[1]=(A>>8&255)/255,B[2]=(A&255)/255,this.convertSRGBToLinear(Q,Q)}static factorToHex(A){let Q=[...A],[B,Y,J]=this.convertLinearToSRGB(A,Q);return B*255<<16^Y*255<<8^J*255<<0}static convertSRGBToLinear(A,Q){let B=A,Y=Q;for(let J=0;J<3;J++)Y[J]=B[J]<0.04045?B[J]*0.0773993808:Math.pow(B[J]*0.9478672986+0.0521327014,2.4);return Q}static convertLinearToSRGB(A,Q){let B=A,Y=Q;for(let J=0;J<3;J++)Y[J]=B[J]<0.0031308?B[J]*12.92:1.055*Math.pow(B[J],0.41666)-0.055;return Q}}class xJA{match(A){return A.length>=3&&A[0]===255&&A[1]===216&&A[2]===255}getSize(A){let Q=new DataView(A.buffer,A.byteOffset+4),B,Y;while(Q.byteLength){if(B=Q.getUint16(0,!1),juQ(Q,B),Y=Q.getUint8(B+1),Y===192||Y===193||Y===194)return[Q.getUint16(B+7,!1),Q.getUint16(B+5,!1)];Q=new DataView(A.buffer,Q.byteOffset+B+2)}throw TypeError("Invalid JPG, no size found")}getChannels(A){return 3}}class o2{match(A){return A.length>=8&&A[0]===137&&A[1]===80&&A[2]===78&&A[3]===71&&A[4]===13&&A[5]===10&&A[6]===26&&A[7]===10}getSize(A){let Q=new DataView(A.buffer,A.byteOffset);if(jQ.decodeText(A.slice(12,16))===o2.PNG_FRIED_CHUNK_NAME)return[Q.getUint32(32,!1),Q.getUint32(36,!1)];return[Q.getUint32(16,!1),Q.getUint32(20,!1)]}getChannels(A){return 4}}o2.PNG_FRIED_CHUNK_NAME="CgBI";class F8{static registerFormat(A,Q){this.impls[A]=Q}static getMimeType(A){for(let Q in this.impls)if(this.impls[Q].match(A))return Q;return null}static getSize(A,Q){if(!this.impls[Q])return null;return this.impls[Q].getSize(A)}static getChannels(A,Q){if(!this.impls[Q])return null;return this.impls[Q].getChannels(A)}static getVRAMByteLength(A,Q){if(!this.impls[Q])return null;if(this.impls[Q].getVRAMByteLength)return this.impls[Q].getVRAMByteLength(A);let B=0,Y=4,J=this.getSize(A,Q);if(!J)return null;while(J[0]>1||J[1]>1)B+=J[0]*J[1]*Y,J[0]=Math.max(Math.floor(J[0]/2),1),J[1]=Math.max(Math.floor(J[1]/2),1);return B+=1*Y,B}static mimeTypeToExtension(A){if(A==="image/jpeg")return"jpg";return A.split("/").pop()}static extensionToMimeType(A){if(A==="jpg")return"image/jpeg";if(!A)return"";return`image/${A}`}}F8.impls={"image/jpeg":new xJA,"image/png":new o2};function juQ(A,Q){if(Q>A.byteLength)throw TypeError("Corrupt JPG, exceeded buffer limits");if(A.getUint8(Q)!==255)throw TypeError("Invalid JPG, marker table corrupted");return A}class J6{static basename(A){let Q=A.split(/[\\/]/).pop();return Q.substring(0,Q.lastIndexOf("."))}static extension(A){if(A.startsWith("data:image/")){let Q=A.match(/data:(image\/\w+)/)[1];return F8.mimeTypeToExtension(Q)}else if(A.startsWith("data:model/gltf+json"))return"gltf";else if(A.startsWith("data:model/gltf-binary"))return"glb";else if(A.startsWith("data:application/"))return"bin";return A.split(/[\\/]/).pop().split(/[.]/).pop()}}var Eg=typeof Float32Array<"u"?Float32Array:Array;if(!Math.hypot)Math.hypot=function(){var A=0,Q=arguments.length;while(Q--)A+=arguments[Q]*arguments[Q];return Math.sqrt(A)};function OuQ(){var A=new Eg(3);if(Eg!=Float32Array)A[0]=0,A[1]=0,A[2]=0;return A}function Ug(A){var Q=A[0],B=A[1],Y=A[2];return Math.hypot(Q,B,Y)}function PuQ(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=B[3]*Y+B[7]*J+B[11]*C+B[15];return X=X||1,A[0]=(B[0]*Y+B[4]*J+B[8]*C+B[12])/X,A[1]=(B[1]*Y+B[5]*J+B[9]*C+B[13])/X,A[2]=(B[2]*Y+B[6]*J+B[10]*C+B[14])/X,A}(function(){var A=OuQ();return function(Q,B,Y,J,C,X){var G,W;if(!B)B=3;if(!Y)Y=0;if(J)W=Math.min(J*B+Y,Q.length);else W=Q.length;for(G=Y;G{let C=J.getMesh();if(!C)return;let X=TuQ(C,J.getWorldMatrix());if(X.min.every(isFinite)&&X.max.every(isFinite))Kg(X.min,Q),Kg(X.max,Q)});return Q}function TuQ(A,Q){let B=fJA();for(let Y of A.listPrimitives()){let J=Y.getAttribute("POSITION"),C=Y.getIndices();if(!J)continue;let X=[0,0,0],G=[0,0,0];for(let W=0,F=C?C.getCount():J.getCount();W0)V=Math.sqrt(I+1)*2,A[3]=0.25*V,A[0]=(U-E)/V,A[1]=($-W)/V,A[2]=(G-F)/V;else if(X>Z&&X>K)V=Math.sqrt(1+X-Z-K)*2,A[3]=(U-E)/V,A[0]=0.25*V,A[1]=(G+F)/V,A[2]=($+W)/V;else if(Z>K)V=Math.sqrt(1+Z-X-K)*2,A[3]=($-W)/V,A[0]=(G+F)/V,A[1]=0.25*V,A[2]=(U+E)/V;else V=Math.sqrt(1+K-X-Z)*2,A[3]=(G-F)/V,A[0]=($+W)/V,A[1]=(U+E)/V,A[2]=0.25*V;return A}class kQ{static identity(A){return A}static eq(A,Q,B=0.00001){if(A.length!==Q.length)return!1;for(let Y=0;YB)return!1;return!0}static clamp(A,Q,B){if(AB)return B;return A}static decodeNormalizedInt(A,Q){switch(Q){case 5126:return A;case 5123:return A/65535;case 5121:return A/255;case 5122:return Math.max(A/32767,-1);case 5120:return Math.max(A/127,-1);default:throw Error("Invalid component type.")}}static encodeNormalizedInt(A,Q){switch(Q){case 5126:return A;case 5123:return Math.round(kQ.clamp(A,0,1)*65535);case 5121:return Math.round(kQ.clamp(A,0,1)*255);case 5122:return Math.round(kQ.clamp(A,-1,1)*32767);case 5120:return Math.round(kQ.clamp(A,-1,1)*127);default:throw Error("Invalid component type.")}}static decompose(A,Q,B,Y){let J=Ug([A[0],A[1],A[2]]),C=Ug([A[4],A[5],A[6]]),X=Ug([A[8],A[9],A[10]]);if(SuQ(A)<0)J=-J;Q[0]=A[12],Q[1]=A[13],Q[2]=A[14];let W=A.slice(),F=1/J,Z=1/C,U=1/X;W[0]*=F,W[1]*=F,W[2]*=F,W[4]*=Z,W[5]*=Z,W[6]*=Z,W[8]*=U,W[9]*=U,W[10]*=U,vuQ(B,W),Y[0]=J,Y[1]=C,Y[2]=X}static compose(A,Q,B,Y){let J=Y,C=Q[0],X=Q[1],G=Q[2],W=Q[3],F=C+C,Z=X+X,U=G+G,$=C*F,E=C*Z,K=C*U,I=X*Z,V=X*U,H=G*U,D=W*F,L=W*Z,z=W*U,M=B[0],N=B[1],q=B[2];return J[0]=(1-(I+H))*M,J[1]=(E+z)*M,J[2]=(K-L)*M,J[3]=0,J[4]=(E-z)*N,J[5]=(1-($+H))*N,J[6]=(V+D)*N,J[7]=0,J[8]=(K+L)*q,J[9]=(V-D)*q,J[10]=(1-($+I))*q,J[11]=0,J[12]=A[0],J[13]=A[1],J[14]=A[2],J[15]=1,J}}function yuQ(A,Q){if(!!A!==!!Q)return!1;let B=A.getChild(),Y=Q.getChild();return B===Y||B.equals(Y)}function guQ(A,Q){if(!!A!==!!Q)return!1;let B=A.values(),Y=Q.values();if(B.length!==Y.length)return!1;for(let J=0;JA,muQ=new Set;class t2 extends d2{constructor(A,Q=""){super(A);this[PB].name=Q,this.init(),this.dispatchEvent({type:"create"})}getGraph(){return this.graph}getDefaults(){return Object.assign(super.getDefaults(),{name:"",extras:{}})}set(A,Q){if(Array.isArray(Q))Q=Q.slice();return super.set(A,Q)}getName(){return this.get("name")}setName(A){return this.set("name",A)}getExtras(){return this.get("extras")}setExtras(A){return this.set("extras",A)}clone(){return new this.constructor(this.graph).copy(this,Y7)}copy(A,Q=Y7){for(let B in this[PB]){let Y=this[PB][B];if(Y instanceof B6){if(!this[B7].has(B))Y.dispose()}else if(Y instanceof OC||Y instanceof xB)for(let J of Y.values())J.dispose();else if(Y instanceof rJ)for(let J of Y.values())J.dispose()}for(let B in A[PB]){let Y=this[PB][B],J=A[PB][B];if(J instanceof B6)if(this[B7].has(B))Y.getChild().copy(Q(J.getChild()),Q);else this.setRef(B,Q(J.getChild()),J.getAttributes());else if(J instanceof xB||J instanceof OC)for(let C of J.values())this.addRef(B,Q(C.getChild()),C.getAttributes());else if(J instanceof rJ)for(let C of J.keys()){let X=J.get(C);this.setRefMap(B,C,Q(X.getChild()),X.getAttributes())}else if(xF(J))this[PB][B]=JSON.parse(JSON.stringify(J));else if(Array.isArray(J)||J instanceof ArrayBuffer||ArrayBuffer.isView(J))this[PB][B]=J.slice();else this[PB][B]=J}return this}equals(A,Q=muQ){if(this===A)return!0;if(this.propertyType!==A.propertyType)return!1;for(let B in this[PB]){if(Q.has(B))continue;let Y=this[PB][B],J=A[PB][B];if(Y instanceof B6||J instanceof B6){if(!yuQ(Y,J))return!1}else if(Y instanceof xB||J instanceof xB||Y instanceof OC||J instanceof OC){if(!guQ(Y,J))return!1}else if(Y instanceof rJ||J instanceof rJ){if(!huQ(Y,J))return!1}else if(xF(Y)||xF(J)){if(!mJA(Y,J))return!1}else if(r2(Y)||r2(J)){if(!bJA(Y,J))return!1}else if(Y!==J)return!1}return!0}detach(){return this.graph.disconnectParents(this,(A)=>A.propertyType!=="Root"),this}listParents(){return this.graph.listParents(this)}}class qJ extends t2{getDefaults(){return Object.assign(super.getDefaults(),{extensions:new rJ})}getExtension(A){return this.getRefMap("extensions",A)}setExtension(A,Q){if(Q)Q._validateParent(this);return this.setRefMap("extensions",A,Q)}listExtensions(){return this.listRefMapValues("extensions")}}class fA extends qJ{init(){this.propertyType=YA.ACCESSOR}getDefaults(){return Object.assign(super.getDefaults(),{array:null,type:fA.Type.SCALAR,componentType:fA.ComponentType.FLOAT,normalized:!1,sparse:!1,buffer:null})}static getElementSize(A){switch(A){case fA.Type.SCALAR:return 1;case fA.Type.VEC2:return 2;case fA.Type.VEC3:return 3;case fA.Type.VEC4:return 4;case fA.Type.MAT2:return 4;case fA.Type.MAT3:return 9;case fA.Type.MAT4:return 16;default:throw Error("Unexpected type: "+A)}}static getComponentSize(A){switch(A){case fA.ComponentType.BYTE:return 1;case fA.ComponentType.UNSIGNED_BYTE:return 1;case fA.ComponentType.SHORT:return 2;case fA.ComponentType.UNSIGNED_SHORT:return 2;case fA.ComponentType.UNSIGNED_INT:return 4;case fA.ComponentType.FLOAT:return 4;default:throw Error("Unexpected component type: "+A)}}getMinNormalized(A){let Q=this.getNormalized(),B=this.getElementSize(),Y=this.getComponentType();if(this.getMin(A),Q)for(let J=0;J{this._addChildOfRoot(Q.target)})}clone(){throw Error("Root cannot be cloned.")}copy(A,Q=Y7){if(Q===Y7)throw Error("Root cannot be copied.");this.set("asset",aJ({},A.get("asset"))),this.setName(A.getName()),this.setExtras(aJ({},A.getExtras())),this.setDefaultScene(A.getDefaultScene()?Q(A.getDefaultScene()):null);for(let B of A.listRefMapKeys("extensions")){let Y=A.getExtension(B);this.setExtension(B,Q(Y))}return this}_addChildOfRoot(A){if(A instanceof p4)this.addRef("scenes",A);else if(A instanceof e2)this.addRef("nodes",A);else if(A instanceof bF)this.addRef("cameras",A);else if(A instanceof qg)this.addRef("skins",A);else if(A instanceof cI)this.addRef("meshes",A);else if(A instanceof y1)this.addRef("materials",A);else if(A instanceof mF)this.addRef("textures",A);else if(A instanceof Dg)this.addRef("animations",A);else if(A instanceof fA)this.addRef("accessors",A);else if(A instanceof Ng)this.addRef("buffers",A);return this}getAsset(){return this.get("asset")}listExtensionsUsed(){return Array.from(this._extensions)}listExtensionsRequired(){return this.listExtensionsUsed().filter((A)=>A.isRequired())}_enableExtension(A){return this._extensions.add(A),this}_disableExtension(A){return this._extensions.delete(A),this}listScenes(){return this.listRefs("scenes")}setDefaultScene(A){return this.setRef("defaultScene",A)}getDefaultScene(){return this.getRef("defaultScene")}listNodes(){return this.listRefs("nodes")}listCameras(){return this.listRefs("cameras")}listSkins(){return this.listRefs("skins")}listMeshes(){return this.listRefs("meshes")}listMaterials(){return this.listRefs("materials")}listTextures(){return this.listRefs("textures")}listAnimations(){return this.listRefs("animations")}listAccessors(){return this.listRefs("accessors")}listBuffers(){return this.listRefs("buffers")}}class LJ{static fromGraph(A){return LJ._GRAPH_DOCUMENTS.get(A)||null}constructor(){this._graph=new u2,this._root=new i4(this._graph),this._logger=S9.DEFAULT_INSTANCE,LJ._GRAPH_DOCUMENTS.set(this._graph,this)}getRoot(){return this._root}getGraph(){return this._graph}getLogger(){return this._logger}setLogger(A){return this._logger=A,this}clone(){throw Error("Use 'cloneDocument(source)' from '@gltf-transform/functions'.")}merge(A){throw Error("Use 'mergeDocuments(target, source)' from '@gltf-transform/functions'.")}async transform(...A){let Q=A.map((B)=>B.name);for(let B of A)await B(this,{stack:Q});return this}createExtension(A){let Q=A.EXTENSION_NAME;return this.getRoot().listExtensionsUsed().find((Y)=>Y.extensionName===Q)||new A(this)}createScene(A=""){return new p4(this._graph,A)}createNode(A=""){return new e2(this._graph,A)}createCamera(A=""){return new bF(this._graph,A)}createSkin(A=""){return new qg(this._graph,A)}createMesh(A=""){return new cI(this._graph,A)}createPrimitive(){return new q0(this._graph)}createPrimitiveTarget(A=""){return new Lg(this._graph,A)}createMaterial(A=""){return new y1(this._graph,A)}createTexture(A=""){return new mF(this._graph,A)}createAnimation(A=""){return new Dg(this._graph,A)}createAnimationChannel(A=""){return new C6(this._graph,A)}createAnimationSampler(A=""){return new C7(this._graph,A)}createAccessor(A="",Q=null){if(!Q)Q=this.getRoot().listBuffers()[0];return new fA(this._graph,A).setBuffer(Q)}createBuffer(A=""){return new Ng(this._graph,A)}}LJ._GRAPH_DOCUMENTS=new WeakMap;class tB{constructor(A){this.extensionName="",this.prereadTypes=[],this.prewriteTypes=[],this.readDependencies=[],this.writeDependencies=[],this.document=void 0,this.required=!1,this.properties=new Set,this._listener=void 0,this.document=A,A.getRoot()._enableExtension(this),this._listener=(B)=>{let Y=B,J=Y.target;if(J instanceof oB&&J.extensionName===this.extensionName){if(Y.type==="node:create")this._addExtensionProperty(J);if(Y.type==="node:dispose")this._removeExtensionProperty(J)}};let Q=A.getGraph();Q.addEventListener("node:create",this._listener),Q.addEventListener("node:dispose",this._listener)}dispose(){this.document.getRoot()._disableExtension(this);let A=this.document.getGraph();A.removeEventListener("node:create",this._listener),A.removeEventListener("node:dispose",this._listener);for(let Q of this.properties)Q.dispose()}static register(){}isRequired(){return this.required}setRequired(A){return this.required=A,this}listProperties(){return Array.from(this.properties)}_addExtensionProperty(A){return this.properties.add(A),this}_removeExtensionProperty(A){return this.properties.delete(A),this}install(A,Q){return this}preread(A,Q){return this}prewrite(A,Q){return this}}tB.EXTENSION_NAME=void 0;class dJA{constructor(A){this.jsonDoc=void 0,this.buffers=[],this.bufferViews=[],this.bufferViewBuffers=[],this.accessors=[],this.textures=[],this.textureInfos=new Map,this.materials=[],this.meshes=[],this.cameras=[],this.nodes=[],this.skins=[],this.animations=[],this.scenes=[],this.jsonDoc=A}setTextureInfo(A,Q){if(this.textureInfos.set(A,Q),Q.texCoord!==void 0)A.setTexCoord(Q.texCoord);if(Q.extras!==void 0)A.setExtras(Q.extras);let B=this.jsonDoc.json.textures[Q.index];if(B.sampler===void 0)return;let Y=this.jsonDoc.json.samplers[B.sampler];if(Y.magFilter!==void 0)A.setMagFilter(Y.magFilter);if(Y.minFilter!==void 0)A.setMinFilter(Y.minFilter);if(Y.wrapS!==void 0)A.setWrapS(Y.wrapS);if(Y.wrapT!==void 0)A.setWrapT(Y.wrapT)}}var yJA={logger:S9.DEFAULT_INSTANCE,extensions:[],dependencies:{}},cuQ=new Set([YA.BUFFER,YA.TEXTURE,YA.MATERIAL,YA.MESH,YA.PRIMITIVE,YA.NODE,YA.SCENE]);class cJA{static read(A,Q=yJA){let B=aJ({},yJA,Q),{json:Y}=A,J=new LJ().setLogger(B.logger);this.validate(A,B);let C=new dJA(A),X=Y.asset,G=J.getRoot().getAsset();if(X.copyright)G.copyright=X.copyright;if(X.extras)G.extras=X.extras;if(Y.extras!==void 0)J.getRoot().setExtras(aJ({},Y.extras));let W=Y.extensionsUsed||[],F=Y.extensionsRequired||[];B.extensions.sort((N,q)=>N.EXTENSION_NAME>q.EXTENSION_NAME?1:-1);for(let N of B.extensions)if(W.includes(N.EXTENSION_NAME)){let q=J.createExtension(N).setRequired(F.includes(N.EXTENSION_NAME)),w=q.prereadTypes.filter((P)=>!cuQ.has(P));if(w.length)B.logger.warn(`Preread hooks for some types (${w.join()}), requested by extension ${q.extensionName}, are unsupported. Please file an issue or a PR.`);for(let P of q.readDependencies)q.install(P,B.dependencies[P])}let Z=Y.buffers||[];J.getRoot().listExtensionsUsed().filter((N)=>N.prereadTypes.includes(YA.BUFFER)).forEach((N)=>N.preread(C,YA.BUFFER)),C.buffers=Z.map((N)=>{let q=J.createBuffer(N.name);if(N.extras)q.setExtras(N.extras);if(N.uri&&N.uri.indexOf("__")!==0)q.setURI(N.uri);return q});let U=Y.bufferViews||[];C.bufferViewBuffers=U.map((N,q)=>{if(!C.bufferViews[q]){let w=A.json.buffers[N.buffer],P=w.uri?A.resources[w.uri]:A.resources[fF],_=N.byteOffset||0;C.bufferViews[q]=jQ.toView(P,_,N.byteLength)}return C.buffers[N.buffer]});let $=Y.accessors||[];C.accessors=$.map((N)=>{let q=C.bufferViewBuffers[N.bufferView],w=J.createAccessor(N.name,q).setType(N.type);if(N.extras)w.setExtras(N.extras);if(N.normalized!==void 0)w.setNormalized(N.normalized);if(N.bufferView===void 0)return w;return w.setArray(n2(N,C)),w});let E=Y.images||[],K=Y.textures||[];J.getRoot().listExtensionsUsed().filter((N)=>N.prereadTypes.includes(YA.TEXTURE)).forEach((N)=>N.preread(C,YA.TEXTURE)),C.textures=E.map((N)=>{let q=J.createTexture(N.name);if(N.extras)q.setExtras(N.extras);if(N.bufferView!==void 0){let w=Y.bufferViews[N.bufferView],P=A.json.buffers[w.buffer],_=P.uri?A.resources[P.uri]:A.resources[fF],j=w.byteOffset||0,k=w.byteLength,T=_.slice(j,j+k);q.setImage(T)}else if(N.uri!==void 0){if(q.setImage(A.resources[N.uri]),N.uri.indexOf("__")!==0)q.setURI(N.uri)}if(N.mimeType!==void 0)q.setMimeType(N.mimeType);else if(N.uri){let w=J6.extension(N.uri);q.setMimeType(F8.extensionToMimeType(w))}return q}),J.getRoot().listExtensionsUsed().filter((N)=>N.prereadTypes.includes(YA.MATERIAL)).forEach((N)=>N.preread(C,YA.MATERIAL));let I=Y.materials||[];C.materials=I.map((N)=>{let q=J.createMaterial(N.name);if(N.extras)q.setExtras(N.extras);if(N.alphaMode!==void 0)q.setAlphaMode(N.alphaMode);if(N.alphaCutoff!==void 0)q.setAlphaCutoff(N.alphaCutoff);if(N.doubleSided!==void 0)q.setDoubleSided(N.doubleSided);let w=N.pbrMetallicRoughness||{};if(w.baseColorFactor!==void 0)q.setBaseColorFactor(w.baseColorFactor);if(N.emissiveFactor!==void 0)q.setEmissiveFactor(N.emissiveFactor);if(w.metallicFactor!==void 0)q.setMetallicFactor(w.metallicFactor);if(w.roughnessFactor!==void 0)q.setRoughnessFactor(w.roughnessFactor);if(w.baseColorTexture!==void 0){let P=w.baseColorTexture,_=C.textures[K[P.index].source];q.setBaseColorTexture(_),C.setTextureInfo(q.getBaseColorTextureInfo(),P)}if(N.emissiveTexture!==void 0){let P=N.emissiveTexture,_=C.textures[K[P.index].source];q.setEmissiveTexture(_),C.setTextureInfo(q.getEmissiveTextureInfo(),P)}if(N.normalTexture!==void 0){let P=N.normalTexture,_=C.textures[K[P.index].source];if(q.setNormalTexture(_),C.setTextureInfo(q.getNormalTextureInfo(),P),N.normalTexture.scale!==void 0)q.setNormalScale(N.normalTexture.scale)}if(N.occlusionTexture!==void 0){let P=N.occlusionTexture,_=C.textures[K[P.index].source];if(q.setOcclusionTexture(_),C.setTextureInfo(q.getOcclusionTextureInfo(),P),N.occlusionTexture.strength!==void 0)q.setOcclusionStrength(N.occlusionTexture.strength)}if(w.metallicRoughnessTexture!==void 0){let P=w.metallicRoughnessTexture,_=C.textures[K[P.index].source];q.setMetallicRoughnessTexture(_),C.setTextureInfo(q.getMetallicRoughnessTextureInfo(),P)}return q}),J.getRoot().listExtensionsUsed().filter((N)=>N.prereadTypes.includes(YA.MESH)).forEach((N)=>N.preread(C,YA.MESH));let V=Y.meshes||[];J.getRoot().listExtensionsUsed().filter((N)=>N.prereadTypes.includes(YA.PRIMITIVE)).forEach((N)=>N.preread(C,YA.PRIMITIVE)),C.meshes=V.map((N)=>{let q=J.createMesh(N.name);if(N.extras)q.setExtras(N.extras);if(N.weights!==void 0)q.setWeights(N.weights);return(N.primitives||[]).forEach((P)=>{let _=J.createPrimitive();if(P.extras)_.setExtras(P.extras);if(P.material!==void 0)_.setMaterial(C.materials[P.material]);if(P.mode!==void 0)_.setMode(P.mode);for(let[T,S]of Object.entries(P.attributes||{}))_.setAttribute(T,C.accessors[S]);if(P.indices!==void 0)_.setIndices(C.accessors[P.indices]);let j=N.extras&&N.extras.targetNames||[];(P.targets||[]).forEach((T,S)=>{let v=j[S]||S.toString(),y=J.createPrimitiveTarget(v);for(let[h,g]of Object.entries(T))y.setAttribute(h,C.accessors[g]);_.addTarget(y)}),q.addPrimitive(_)}),q});let H=Y.cameras||[];C.cameras=H.map((N)=>{let q=J.createCamera(N.name).setType(N.type);if(N.extras)q.setExtras(N.extras);if(N.type===bF.Type.PERSPECTIVE){let w=N.perspective;if(q.setYFov(w.yfov),q.setZNear(w.znear),w.zfar!==void 0)q.setZFar(w.zfar);if(w.aspectRatio!==void 0)q.setAspectRatio(w.aspectRatio)}else{let w=N.orthographic;q.setZNear(w.znear).setZFar(w.zfar).setXMag(w.xmag).setYMag(w.ymag)}return q});let D=Y.nodes||[];J.getRoot().listExtensionsUsed().filter((N)=>N.prereadTypes.includes(YA.NODE)).forEach((N)=>N.preread(C,YA.NODE)),C.nodes=D.map((N)=>{let q=J.createNode(N.name);if(N.extras)q.setExtras(N.extras);if(N.translation!==void 0)q.setTranslation(N.translation);if(N.rotation!==void 0)q.setRotation(N.rotation);if(N.scale!==void 0)q.setScale(N.scale);if(N.matrix!==void 0){let w=[0,0,0],P=[0,0,0,1],_=[1,1,1];kQ.decompose(N.matrix,w,P,_),q.setTranslation(w),q.setRotation(P),q.setScale(_)}if(N.weights!==void 0)q.setWeights(N.weights);return q});let L=Y.skins||[];C.skins=L.map((N)=>{let q=J.createSkin(N.name);if(N.extras)q.setExtras(N.extras);if(N.inverseBindMatrices!==void 0)q.setInverseBindMatrices(C.accessors[N.inverseBindMatrices]);if(N.skeleton!==void 0)q.setSkeleton(C.nodes[N.skeleton]);for(let w of N.joints)q.addJoint(C.nodes[w]);return q}),D.map((N,q)=>{let w=C.nodes[q];if((N.children||[]).forEach((_)=>w.addChild(C.nodes[_])),N.mesh!==void 0)w.setMesh(C.meshes[N.mesh]);if(N.camera!==void 0)w.setCamera(C.cameras[N.camera]);if(N.skin!==void 0)w.setSkin(C.skins[N.skin])});let z=Y.animations||[];C.animations=z.map((N)=>{let q=J.createAnimation(N.name);if(N.extras)q.setExtras(N.extras);let P=(N.samplers||[]).map((j)=>{let k=J.createAnimationSampler().setInput(C.accessors[j.input]).setOutput(C.accessors[j.output]).setInterpolation(j.interpolation||C7.Interpolation.LINEAR);if(j.extras)k.setExtras(j.extras);return q.addSampler(k),k});return(N.channels||[]).forEach((j)=>{let k=J.createAnimationChannel().setSampler(P[j.sampler]).setTargetPath(j.target.path);if(j.target.node!==void 0)k.setTargetNode(C.nodes[j.target.node]);if(j.extras)k.setExtras(j.extras);q.addChannel(k)}),q});let M=Y.scenes||[];if(J.getRoot().listExtensionsUsed().filter((N)=>N.prereadTypes.includes(YA.SCENE)).forEach((N)=>N.preread(C,YA.SCENE)),C.scenes=M.map((N)=>{let q=J.createScene(N.name);if(N.extras)q.setExtras(N.extras);return(N.nodes||[]).map((P)=>C.nodes[P]).forEach((P)=>q.addChild(P)),q}),Y.scene!==void 0)J.getRoot().setDefaultScene(C.scenes[Y.scene]);return J.getRoot().listExtensionsUsed().forEach((N)=>N.read(C)),$.forEach((N,q)=>{let w=C.accessors[q],P=!!N.sparse,_=!N.bufferView&&!w.getArray();if(P||_)w.setSparse(!0).setArray(puQ(N,C))}),J}static validate(A,Q){let B=A.json;if(B.asset.version!=="2.0")throw Error(`Unsupported glTF version, "${B.asset.version}".`);if(B.extensionsRequired){for(let Y of B.extensionsRequired)if(!Q.extensions.find((J)=>J.EXTENSION_NAME===Y))throw Error(`Missing required extension, "${Y}".`)}if(B.extensionsUsed){for(let Y of B.extensionsUsed)if(!Q.extensions.find((J)=>J.EXTENSION_NAME===Y))Q.logger.warn(`Missing optional extension, "${Y}".`)}}}function luQ(A,Q){let B=Q.jsonDoc,Y=Q.bufferViews[A.bufferView],J=B.json.bufferViews[A.bufferView],C=J7[A.componentType],X=fA.getElementSize(A.type),G=C.BYTES_PER_ELEMENT,W=A.byteOffset||0,F=new C(A.count*X),Z=new DataView(Y.buffer,Y.byteOffset,Y.byteLength),U=J.byteStride;for(let $=0;$1,()=>B.basename||"buffer"),this.imageURIGenerator=new Ig(C>1,(X)=>iuQ(A,X)||B.basename||"texture"),this.logger=A.getLogger()}createTextureInfoDef(A,Q){let B={magFilter:Q.getMagFilter()||void 0,minFilter:Q.getMinFilter()||void 0,wrapS:Q.getWrapS(),wrapT:Q.getWrapT()},Y=JSON.stringify(B);if(!this.samplerDefIndexMap.has(Y))this.samplerDefIndexMap.set(Y,this.jsonDoc.json.samplers.length),this.jsonDoc.json.samplers.push(B);let J={source:this.imageIndexMap.get(A),sampler:this.samplerDefIndexMap.get(Y)},C=JSON.stringify(J);if(!this.textureDefIndexMap.has(C))this.textureDefIndexMap.set(C,this.jsonDoc.json.textures.length),this.jsonDoc.json.textures.push(J);let X={index:this.textureDefIndexMap.get(C)};if(Q.getTexCoord()!==0)X.texCoord=Q.getTexCoord();if(Object.keys(Q.getExtras()).length>0)X.extras=Q.getExtras();return this.textureInfoDefMap.set(Q,X),X}createPropertyDef(A){let Q={};if(A.getName())Q.name=A.getName();if(Object.keys(A.getExtras()).length>0)Q.extras=A.getExtras();return Q}createAccessorDef(A){let Q=this.createPropertyDef(A);if(Q.type=A.getType(),Q.componentType=A.getComponentType(),Q.count=A.getCount(),this._doc.getGraph().listParentEdges(A).some((Y)=>Y.getName()==="attributes"&&Y.getAttributes().key==="POSITION"||Y.getName()==="input"))Q.max=A.getMax([]).map(Math.fround),Q.min=A.getMin([]).map(Math.fround);if(A.getNormalized())Q.normalized=A.getNormalized();return Q}createImageData(A,Q,B){if(this.options.format===Y6.GLB)this.imageBufferViews.push(Q),A.bufferView=this.jsonDoc.json.bufferViews.length,this.jsonDoc.json.bufferViews.push({buffer:0,byteOffset:-1,byteLength:Q.byteLength});else{let Y=F8.mimeTypeToExtension(B.getMimeType());A.uri=this.imageURIGenerator.createURI(B,Y),this.assignResourceURI(A.uri,Q,!1)}}assignResourceURI(A,Q,B){let Y=this.jsonDoc.resources;if(!(A in Y)){Y[A]=Q;return}if(Q===Y[A]){this.logger.warn(`Duplicate resource URI, "${A}".`);return}let J=`Resource URI "${A}" already assigned to different data.`;if(!B){this.logger.warn(J);return}throw Error(J)}getAccessorUsage(A){let Q=this._accessorUsageMap.get(A);if(Q)return Q;if(A.getSparse())return Z8.SPARSE;for(let B of this._doc.getGraph().listParentEdges(A)){let{usage:Y}=B.getAttributes();if(Y)return Y;if(B.getParent().propertyType!==YA.ROOT)this.logger.warn(`Missing attribute ".usage" on edge, "${B.getName()}".`)}return Z8.OTHER}addAccessorToUsageGroup(A,Q){let B=this._accessorUsageMap.get(A);if(B&&B!==Q)throw Error(`Accessor with usage "${B}" cannot be reused as "${Q}".`);return this._accessorUsageMap.set(A,Q),this}}W5.BufferViewTarget=uI;W5.BufferViewUsage=Z8;W5.USAGE_TO_TARGET={[Z8.ARRAY_BUFFER]:uI.ARRAY_BUFFER,[Z8.ELEMENT_ARRAY_BUFFER]:uI.ELEMENT_ARRAY_BUFFER};class Ig{constructor(A,Q){this.multiple=void 0,this.basename=void 0,this.counter={},this.multiple=A,this.basename=Q}createURI(A,Q){if(A.getURI())return A.getURI();else if(!this.multiple)return`${this.basename(A)}.${Q}`;else{let B=this.basename(A);return this.counter[B]=this.counter[B]||1,`${B}_${this.counter[B]++}.${Q}`}}}function iuQ(A,Q){let B=A.getGraph().listParentEdges(Q).find((Y)=>Y.getParent()!==A.getRoot());return B?B.getName().replace(/texture$/i,""):""}var{BufferViewUsage:i2}=W5,{UNSIGNED_INT:nuQ,UNSIGNED_SHORT:suQ,UNSIGNED_BYTE:ruQ}=fA.ComponentType,auQ=new Set([YA.ACCESSOR,YA.BUFFER,YA.MATERIAL,YA.MESH]);class lJA{static write(A,Q){let B=A.getGraph(),Y=A.getRoot(),J={asset:aJ({generator:`glTF-Transform ${hJA}`},Y.getAsset()),extras:aJ({},Y.getExtras())},C={json:J,resources:{}},X=new W5(A,C,Q),G=Q.logger||S9.DEFAULT_INSTANCE,W=new Set(Q.extensions.map((V)=>V.EXTENSION_NAME)),F=A.getRoot().listExtensionsUsed().filter((V)=>W.has(V.extensionName)).sort((V,H)=>V.extensionName>H.extensionName?1:-1),Z=A.getRoot().listExtensionsRequired().filter((V)=>W.has(V.extensionName)).sort((V,H)=>V.extensionName>H.extensionName?1:-1);if(F.length!auQ.has(D));if(H.length)G.warn(`Prewrite hooks for some types (${H.join()}), requested by extension ${V.extensionName}, are unsupported. Please file an issue or a PR.`);for(let D of V.writeDependencies)V.install(D,Q.dependencies[D])}function U(V,H,D,L){let z=[],M=0;for(let w of V){let P=X.createAccessorDef(w);P.bufferView=J.bufferViews.length;let _=w.getArray(),j=jQ.pad(jQ.toView(_));P.byteOffset=M,M+=j.byteLength,z.push(j),X.accessorIndexMap.set(w,J.accessors.length),J.accessors.push(P)}let N=jQ.concat(z),q={buffer:H,byteOffset:D,byteLength:N.byteLength};if(L)q.target=L;return J.bufferViews.push(q),{buffers:z,byteLength:M}}function $(V,H,D){let L=V[0].getCount(),z=0;for(let P of V){let _=X.createAccessorDef(P);_.bufferView=J.bufferViews.length,_.byteOffset=z;let j=P.getElementSize(),k=P.getComponentSize();z+=jQ.padNumber(j*k),X.accessorIndexMap.set(P,J.accessors.length),J.accessors.push(_)}let M=L*z,N=new ArrayBuffer(M),q=new DataView(N);for(let P=0;PS.getCount()/2)q=!0;let p=J7[S.getComponentType()];i.indices=y,i.values=new p(h)}if(!Number.isFinite(N))return{buffers:L,byteLength:z};if(q)G.warn("Some sparse accessors have >50% non-zero elements, which may increase file size.");let w=N<255?Uint8Array:N<65535?Uint16Array:Uint32Array,P=N<255?ruQ:N<65535?suQ:nuQ,_={buffer:H,byteOffset:D+z,byteLength:0};for(let S of V){let v=M.get(S);if(v.count===0)continue;v.indicesByteOffset=_.byteLength;let y=jQ.pad(jQ.toView(new w(v.indices)));L.push(y),z+=y.byteLength,_.byteLength+=y.byteLength}J.bufferViews.push(_);let j=J.bufferViews.length-1,k={buffer:H,byteOffset:D+z,byteLength:0};for(let S of V){let v=M.get(S);if(v.count===0)continue;v.valuesByteOffset=k.byteLength;let y=jQ.pad(jQ.toView(v.values));L.push(y),z+=y.byteLength,k.byteLength+=y.byteLength}J.bufferViews.push(k);let T=J.bufferViews.length-1;for(let S of V){let v=M.get(S);if(v.count===0)continue;v.accessorDef.sparse={count:v.count,indices:{bufferView:j,byteOffset:v.indicesByteOffset,componentType:P},values:{bufferView:T,byteOffset:v.valuesByteOffset}}}return{buffers:L,byteLength:z}}if(J.accessors=[],J.bufferViews=[],J.samplers=[],J.textures=[],J.images=Y.listTextures().map((V,H)=>{let D=X.createPropertyDef(V);if(V.getMimeType())D.mimeType=V.getMimeType();let L=V.getImage();if(L)X.createImageData(D,L,V);return X.imageIndexMap.set(V,H),D}),F.filter((V)=>V.prewriteTypes.includes(YA.ACCESSOR)).forEach((V)=>V.prewrite(X,YA.ACCESSOR)),Y.listAccessors().forEach((V)=>{let{accessorUsageGroupedByParent:H,accessorParents:D}=X;if(X.accessorIndexMap.has(V))return;let L=X.getAccessorUsage(V);if(X.addAccessorToUsageGroup(V,L),H.has(L)){let z=B.listParents(V).find((M)=>M.propertyType!==YA.ROOT);D.set(V,z)}}),F.filter((V)=>V.prewriteTypes.includes(YA.BUFFER)).forEach((V)=>V.prewrite(X,YA.BUFFER)),(Y.listAccessors().length>0||X.otherBufferViews.size>0||Y.listTextures().length>0&&Q.format===Y6.GLB)&&Y.listBuffers().length===0)throw Error("Buffer required for Document resources, but none was found.");if(J.buffers=[],Y.listBuffers().forEach((V,H)=>{let D=X.createPropertyDef(V),L=X.accessorUsageGroupedByParent,z=V.listParents().filter((k)=>k instanceof fA),M=new Set(z.map((k)=>X.accessorParents.get(k))),N=new Map(Array.from(M).map((k,T)=>[k,T])),q={};for(let k of z){var w;if(X.accessorIndexMap.has(k))continue;let T=X.getAccessorUsage(k),S=T;if(L.has(T)){let v=X.accessorParents.get(k);S+=`:${N.get(v)}`}q[w=S]||(q[w]={usage:T,accessors:[]}),q[S].accessors.push(k)}let P=[],_=J.buffers.length,j=0;for(let{usage:k,accessors:T}of Object.values(q))if(k===i2.ARRAY_BUFFER&&Q.vertexLayout===s2.INTERLEAVED){let S=$(T,_,j);j+=S.byteLength;for(let v of S.buffers)P.push(v)}else if(k===i2.ARRAY_BUFFER)for(let S of T){let v=$([S],_,j);j+=v.byteLength;for(let y of v.buffers)P.push(y)}else if(k===i2.SPARSE){let S=E(T,_,j);j+=S.byteLength;for(let v of S.buffers)P.push(v)}else if(k===i2.ELEMENT_ARRAY_BUFFER){let S=W5.BufferViewTarget.ELEMENT_ARRAY_BUFFER,v=U(T,_,j,S);j+=v.byteLength;for(let y of v.buffers)P.push(y)}else{let S=U(T,_,j);j+=S.byteLength;for(let v of S.buffers)P.push(v)}if(X.imageBufferViews.length&&H===0){for(let k=0;k!V.getBuffer()))G.warn("Skipped writing one or more Accessors: no Buffer assigned.");F.filter((V)=>V.prewriteTypes.includes(YA.MATERIAL)).forEach((V)=>V.prewrite(X,YA.MATERIAL)),J.materials=Y.listMaterials().map((V,H)=>{let D=X.createPropertyDef(V);if(V.getAlphaMode()!==y1.AlphaMode.OPAQUE)D.alphaMode=V.getAlphaMode();if(V.getAlphaMode()===y1.AlphaMode.MASK)D.alphaCutoff=V.getAlphaCutoff();if(V.getDoubleSided())D.doubleSided=!0;if(D.pbrMetallicRoughness={},!kQ.eq(V.getBaseColorFactor(),[1,1,1,1]))D.pbrMetallicRoughness.baseColorFactor=V.getBaseColorFactor();if(!kQ.eq(V.getEmissiveFactor(),[0,0,0]))D.emissiveFactor=V.getEmissiveFactor();if(V.getRoughnessFactor()!==1)D.pbrMetallicRoughness.roughnessFactor=V.getRoughnessFactor();if(V.getMetallicFactor()!==1)D.pbrMetallicRoughness.metallicFactor=V.getMetallicFactor();if(V.getBaseColorTexture()){let L=V.getBaseColorTexture(),z=V.getBaseColorTextureInfo();D.pbrMetallicRoughness.baseColorTexture=X.createTextureInfoDef(L,z)}if(V.getEmissiveTexture()){let L=V.getEmissiveTexture(),z=V.getEmissiveTextureInfo();D.emissiveTexture=X.createTextureInfoDef(L,z)}if(V.getNormalTexture()){let L=V.getNormalTexture(),z=V.getNormalTextureInfo(),M=X.createTextureInfoDef(L,z);if(V.getNormalScale()!==1)M.scale=V.getNormalScale();D.normalTexture=M}if(V.getOcclusionTexture()){let L=V.getOcclusionTexture(),z=V.getOcclusionTextureInfo(),M=X.createTextureInfoDef(L,z);if(V.getOcclusionStrength()!==1)M.strength=V.getOcclusionStrength();D.occlusionTexture=M}if(V.getMetallicRoughnessTexture()){let L=V.getMetallicRoughnessTexture(),z=V.getMetallicRoughnessTextureInfo();D.pbrMetallicRoughness.metallicRoughnessTexture=X.createTextureInfoDef(L,z)}return X.materialIndexMap.set(V,H),D}),F.filter((V)=>V.prewriteTypes.includes(YA.MESH)).forEach((V)=>V.prewrite(X,YA.MESH)),J.meshes=Y.listMeshes().map((V,H)=>{let D=X.createPropertyDef(V),L=null;if(D.primitives=V.listPrimitives().map((z)=>{let M={attributes:{}};M.mode=z.getMode();let N=z.getMaterial();if(N)M.material=X.materialIndexMap.get(N);if(Object.keys(z.getExtras()).length)M.extras=z.getExtras();let q=z.getIndices();if(q)M.indices=X.accessorIndexMap.get(q);for(let w of z.listSemantics())M.attributes[w]=X.accessorIndexMap.get(z.getAttribute(w));for(let w of z.listTargets()){let P={};for(let _ of w.listSemantics())P[_]=X.accessorIndexMap.get(w.getAttribute(_));M.targets=M.targets||[],M.targets.push(P)}if(z.listTargets().length&&!L)L=z.listTargets().map((w)=>w.getName());return M}),V.getWeights().length)D.weights=V.getWeights();if(L)D.extras=D.extras||{},D.extras.targetNames=L;return X.meshIndexMap.set(V,H),D}),J.cameras=Y.listCameras().map((V,H)=>{let D=X.createPropertyDef(V);if(D.type=V.getType(),D.type===bF.Type.PERSPECTIVE){D.perspective={znear:V.getZNear(),zfar:V.getZFar(),yfov:V.getYFov()};let L=V.getAspectRatio();if(L!==null)D.perspective.aspectRatio=L}else D.orthographic={znear:V.getZNear(),zfar:V.getZFar(),xmag:V.getXMag(),ymag:V.getYMag()};return X.cameraIndexMap.set(V,H),D}),J.nodes=Y.listNodes().map((V,H)=>{let D=X.createPropertyDef(V);if(!kQ.eq(V.getTranslation(),[0,0,0]))D.translation=V.getTranslation();if(!kQ.eq(V.getRotation(),[0,0,0,1]))D.rotation=V.getRotation();if(!kQ.eq(V.getScale(),[1,1,1]))D.scale=V.getScale();if(V.getWeights().length)D.weights=V.getWeights();return X.nodeIndexMap.set(V,H),D}),J.skins=Y.listSkins().map((V,H)=>{let D=X.createPropertyDef(V),L=V.getInverseBindMatrices();if(L)D.inverseBindMatrices=X.accessorIndexMap.get(L);let z=V.getSkeleton();if(z)D.skeleton=X.nodeIndexMap.get(z);return D.joints=V.listJoints().map((M)=>X.nodeIndexMap.get(M)),X.skinIndexMap.set(V,H),D}),Y.listNodes().forEach((V,H)=>{let D=J.nodes[H],L=V.getMesh();if(L)D.mesh=X.meshIndexMap.get(L);let z=V.getCamera();if(z)D.camera=X.cameraIndexMap.get(z);let M=V.getSkin();if(M)D.skin=X.skinIndexMap.get(M);if(V.listChildren().length>0)D.children=V.listChildren().map((N)=>X.nodeIndexMap.get(N))}),J.animations=Y.listAnimations().map((V,H)=>{let D=X.createPropertyDef(V),L=new Map;return D.samplers=V.listSamplers().map((z,M)=>{let N=X.createPropertyDef(z);return N.input=X.accessorIndexMap.get(z.getInput()),N.output=X.accessorIndexMap.get(z.getOutput()),N.interpolation=z.getInterpolation(),L.set(z,M),N}),D.channels=V.listChannels().map((z)=>{let M=X.createPropertyDef(z);return M.sampler=L.get(z.getSampler()),M.target={node:X.nodeIndexMap.get(z.getTargetNode()),path:z.getTargetPath()},M}),X.animationIndexMap.set(V,H),D}),J.scenes=Y.listScenes().map((V,H)=>{let D=X.createPropertyDef(V);return D.nodes=V.listChildren().map((L)=>X.nodeIndexMap.get(L)),X.sceneIndexMap.set(V,H),D});let I=Y.getDefaultScene();if(I)J.scene=Y.listScenes().indexOf(I);return J.extensionsUsed=F.map((V)=>V.extensionName),J.extensionsRequired=Z.map((V)=>V.extensionName),F.forEach((V)=>V.write(X)),ouQ(J),C}}function ouQ(A){let Q=[];for(let B in A){let Y=A[B];if(Array.isArray(Y)&&Y.length===0)Q.push(B);else if(Y===null||Y==="")Q.push(B);else if(Y&&typeof Y==="object"&&Object.keys(Y).length===0)Q.push(B)}for(let B of Q)delete A[B]}var a2;(function(A){A[A.JSON=1313821514]="JSON",A[A.BIN=5130562]="BIN"})(a2||(a2={}));class pJA{constructor(){this._logger=S9.DEFAULT_INSTANCE,this._extensions=new Set,this._dependencies={},this._vertexLayout=s2.INTERLEAVED,this.lastReadBytes=0,this.lastWriteBytes=0}setLogger(A){return this._logger=A,this}registerExtensions(A){for(let Q of A)this._extensions.add(Q),Q.register();return this}registerDependencies(A){return Object.assign(this._dependencies,A),this}setVertexLayout(A){return this._vertexLayout=A,this}async read(A){return await this.readJSON(await this.readAsJSON(A))}async readAsJSON(A){let Q=await this.readURI(A,"view");this.lastReadBytes=Q.byteLength;let B=gJA(Q)?this._binaryToJSON(Q):{json:JSON.parse(jQ.decodeText(Q)),resources:{}};return await this._readResourcesExternal(B,this.dirname(A)),this._readResourcesInternal(B),B}async readJSON(A){return A=this._copyJSON(A),this._readResourcesInternal(A),cJA.read(A,{extensions:Array.from(this._extensions),dependencies:this._dependencies,logger:this._logger})}async binaryToJSON(A){let Q=this._binaryToJSON(jQ.assertView(A));this._readResourcesInternal(Q);let B=Q.json;if(B.buffers&&B.buffers.some((Y)=>tuQ(Q,Y)))throw Error("Cannot resolve external buffers with binaryToJSON().");else if(B.images&&B.images.some((Y)=>euQ(Q,Y)))throw Error("Cannot resolve external images with binaryToJSON().");return Q}async readBinary(A){return this.readJSON(await this.binaryToJSON(jQ.assertView(A)))}async writeJSON(A,Q={}){if(Q.format===Y6.GLB&&A.getRoot().listBuffers().length>1)throw Error("GLB must have 0–1 buffers.");return lJA.write(A,{format:Q.format||Y6.GLTF,basename:Q.basename||"",logger:this._logger,vertexLayout:this._vertexLayout,dependencies:aJ({},this._dependencies),extensions:Array.from(this._extensions)})}async writeBinary(A){let{json:Q,resources:B}=await this.writeJSON(A,{format:Y6.GLB}),Y=new Uint32Array([1179937895,2,12]),J=JSON.stringify(Q),C=jQ.pad(jQ.encodeText(J),32),X=jQ.toView(new Uint32Array([C.byteLength,1313821514])),G=jQ.concat([X,C]);Y[Y.length-1]+=G.byteLength;let W=Object.values(B)[0];if(!W||!W.byteLength)return jQ.concat([jQ.toView(Y),G]);let F=jQ.pad(W,0),Z=jQ.toView(new Uint32Array([F.byteLength,5130562])),U=jQ.concat([Z,F]);return Y[Y.length-1]+=U.byteLength,jQ.concat([jQ.toView(Y),G,U])}async _readResourcesExternal(A,Q){var B=this;let Y=A.json.images||[],J=A.json.buffers||[],C=[...Y,...J].map(async function(X){let G=X.uri;if(!G||G.match(/data:/))return Promise.resolve();A.resources[G]=await B.readURI(B.resolve(Q,G),"view"),B.lastReadBytes+=A.resources[G].byteLength});await Promise.all(C)}_readResourcesInternal(A){function Q(J){if(!J.uri)return;if(J.uri in A.resources){jQ.assertView(A.resources[J.uri]);return}if(J.uri.match(/data:/)){let C=`__${uJA()}.${J6.extension(J.uri)}`;A.resources[C]=jQ.createBufferFromDataURI(J.uri),J.uri=C}}(A.json.images||[]).forEach((J)=>{if(J.bufferView===void 0&&J.uri===void 0)throw Error("Missing resource URI or buffer view.");Q(J)}),(A.json.buffers||[]).forEach(Q)}_copyJSON(A){let{images:Q,buffers:B}=A.json;if(A={json:aJ({},A.json),resources:aJ({},A.resources)},Q)A.json.images=Q.map((Y)=>aJ({},Y));if(B)A.json.buffers=B.map((Y)=>aJ({},Y));return A}_binaryToJSON(A){if(!gJA(A))throw Error("Invalid glTF 2.0 binary.");let Q=new Uint32Array(A.buffer,A.byteOffset+12,2);if(Q[1]!==a2.JSON)throw Error("Missing required GLB JSON chunk.");let B=20,Y=Q[0],J=jQ.decodeText(jQ.toView(A,B,Y)),C=JSON.parse(J),X=B+Y;if(A.byteLength<=X)return{json:C,resources:{}};let G=new Uint32Array(A.buffer,A.byteOffset+X,2);if(G[1]!==a2.BIN)return{json:C,resources:{}};let W=G[0],F=jQ.toView(A,X+8,W);return{json:C,resources:{[fF]:F}}}}function tuQ(A,Q){return Q.uri!==void 0&&!(Q.uri in A.resources)}function euQ(A,Q){return Q.uri!==void 0&&!(Q.uri in A.resources)&&Q.bufferView===void 0}function gJA(A){if(A.byteLength<3*Uint32Array.BYTES_PER_ELEMENT)return!1;let Q=new Uint32Array(A.buffer,A.byteOffset,3);return Q[0]===1179937895&&Q[1]===2}class n4 extends pJA{constructor(A=null,Q=G5.DEFAULT_INIT){super();this._fetch=void 0,this._fetchConfig=void 0,this._init=void 0,this._fetchEnabled=!1,this._fetch=A,this._fetchConfig=Q,this._init=this.init()}async init(){if(this._init)return this._init;return Promise.all([import("fs"),import("path")]).then(([A,Q])=>{this._fs=A.promises,this._path=Q})}setAllowNetwork(A){if(A&&!this._fetch)throw Error("NodeIO requires a Fetch API implementation for HTTP requests.");return this._fetchEnabled=A,this}async readURI(A,Q){if(await this.init(),G5.isAbsoluteURL(A)){if(!this._fetchEnabled||!this._fetch)throw Error("Network request blocked. Allow HTTP requests explicitly, if needed.");let B=await this._fetch(A,this._fetchConfig);switch(Q){case"view":return new Uint8Array(await B.arrayBuffer());case"text":return B.text()}}else switch(Q){case"view":return this._fs.readFile(A);case"text":return this._fs.readFile(A,"utf8")}}resolve(A,Q){if(G5.isAbsoluteURL(A)||G5.isAbsoluteURL(Q))return G5.resolve(A,Q);return this._path.resolve(A,decodeURIComponent(Q))}dirname(A){if(G5.isAbsoluteURL(A))return G5.dirname(A);return this._path.dirname(A)}async write(A,Q){await this.init(),await(!!A.match(/\.glb$/)?this._writeGLB(A,Q):this._writeGLTF(A,Q))}async _writeGLTF(A,Q){var B=this;this.lastWriteBytes=0;let{json:Y,resources:J}=await this.writeJSON(Q,{format:Y6.GLTF,basename:J6.basename(A)}),{_fs:C,_path:X}=this,G=X.dirname(A),W=JSON.stringify(Y,null,2);await C.writeFile(A,W),this.lastWriteBytes+=W.length;for(let F of AdQ(Object.keys(J),10))await Promise.all(F.map(async function(Z){if(G5.isAbsoluteURL(Z)){if(G5.extension(Z)==="bin")throw Error(`Cannot write buffer to path "${Z}".`);return}let U=X.join(G,decodeURIComponent(Z));await C.mkdir(X.dirname(U),{recursive:!0}),await C.writeFile(U,J[Z]),B.lastWriteBytes+=J[Z].byteLength}))}async _writeGLB(A,Q){let B=await this.writeBinary(Q);await this._fs.writeFile(A,B),this.lastWriteBytes=B.byteLength}}function AdQ(A,Q){let B=[];for(let Y=0,J=A.length;Y{if(!Y.extensions||!Y.extensions[X6])return;let C=Y.extensions[X6],X=this.createInstancedMesh();for(let G in C.attributes)X.setAttribute(G,A.accessors[C.attributes[G]]);A.nodes[J].setExtension(X6,X)}),this}prewrite(A){A.accessorUsageGroupedByParent.add(zg);for(let Q of this.properties)for(let B of Q.listAttributes())A.addAccessorToUsageGroup(B,zg);return this}write(A){let Q=A.jsonDoc;return this.document.getRoot().listNodes().forEach((B)=>{let Y=B.getExtension(X6);if(Y){let J=A.nodeIndexMap.get(B),C=Q.json.nodes[J],X={attributes:{}};Y.listSemantics().forEach((G)=>{let W=Y.getAttribute(G);X.attributes[G]=A.accessorIndexMap.get(W)}),C.extensions=C.extensions||{},C.extensions[X6]=X}}),this}}Y3.EXTENSION_NAME=X6;function L6(){return L6=Object.assign?Object.assign.bind():function(A){for(var Q=1;Q8?8:4,X.componentType=C>8?rJA:YdQ,X.normalized=!0,G=A.getElementSize()===3?WdQ(G):G,X.array=Q.encodeFilterOct(G,A.getCount(),X.byteStride,C);break;case d0.QUATERNION:X.byteStride=8,X.componentType=rJA,X.normalized=!0,X.array=Q.encodeFilterQuat(G,A.getCount(),X.byteStride,C);break;default:throw Error("Invalid filter.")}if(X.min=A.getMin([]),X.max=A.getMax([]),A.getNormalized())X.min=X.min.map((W)=>Rg(W,A.getComponentType())),X.max=X.max.map((W)=>Rg(W,A.getComponentType()));if(X.normalized)X.min=X.min.map((W)=>aJA(W,X.componentType)),X.max=X.max.map((W)=>aJA(W,X.componentType))}else if(X.byteStride%4)X.array=GdQ(X.array,A.getElementSize()),X.byteStride=X.array.byteLength/A.getCount();return X}function XdQ(A){let Q=A.getComponentType(),B=A.getArray(),Y=new Float32Array(B.length);for(let J=0;J{return Y instanceof q0&&Y.getMode()===q0.Mode.TRIANGLES})?r4.TRIANGLES:r4.INDICES;return r4.ATTRIBUTES}function ZdQ(A,Q){let B=Q.getGraph().listParentEdges(A).filter((Y)=>!(Y.getParent()instanceof i4));for(let Y of B){let J=Y.getName(),C=Y.getAttributes().key||"",X=Y.getParent().propertyType===YA.PRIMITIVE_TARGET;if(J==="indices")return{filter:d0.NONE};if(J==="attributes"){if(C==="POSITION")return{filter:d0.NONE};if(C==="TEXCOORD_0")return{filter:d0.NONE};if(C.startsWith("JOINTS_"))return{filter:d0.NONE};if(C.startsWith("WEIGHTS_"))return{filter:d0.NONE};if(C==="NORMAL"||C==="TANGENT")return X?{filter:d0.NONE}:{filter:d0.OCTAHEDRAL,bits:8}}if(J==="output"){let G=W9A(A);if(G==="rotation")return{filter:d0.QUATERNION,bits:16};if(G==="translation")return{filter:d0.EXPONENTIAL,bits:12};if(G==="scale")return{filter:d0.EXPONENTIAL,bits:12};return{filter:d0.NONE}}if(J==="input")return{filter:d0.NONE};if(J==="inverseBindMatrices")return{filter:d0.NONE}}return{filter:d0.NONE}}function W9A(A){for(let Q of A.listParents()){if(!(Q instanceof C7))continue;for(let B of Q.listParents()){if(!(B instanceof C6))continue;return B.getTargetPath()}}return null}var oJA={method:nI.QUANTIZE};class rI extends tB{constructor(...A){super(...A);this.extensionName=CJ,this.prereadTypes=[YA.BUFFER,YA.PRIMITIVE],this.prewriteTypes=[YA.BUFFER,YA.ACCESSOR],this.readDependencies=["meshopt.decoder"],this.writeDependencies=["meshopt.encoder"],this._decoder=null,this._decoderFallbackBufferMap=new Map,this._encoder=null,this._encoderOptions=oJA,this._encoderFallbackBuffer=null,this._encoderBufferViews={},this._encoderBufferViewData={},this._encoderBufferViewAccessors={}}install(A,Q){if(A==="meshopt.decoder")this._decoder=Q;if(A==="meshopt.encoder")this._encoder=Q;return this}setEncoderOptions(A){return this._encoderOptions=L6({},oJA,A),this}preread(A,Q){if(!this._decoder){if(!this.isRequired())return this;throw Error(`[${CJ}] Please install extension dependency, "meshopt.decoder".`)}if(!this._decoder.supported){if(!this.isRequired())return this;throw Error(`[${CJ}]: Missing WASM support.`)}if(Q===YA.BUFFER)this._prereadBuffers(A);else if(Q===YA.PRIMITIVE)this._prereadPrimitives(A);return this}_prereadBuffers(A){let Q=A.jsonDoc;(Q.json.bufferViews||[]).forEach((Y,J)=>{if(!Y.extensions||!Y.extensions[CJ])return;let C=Y.extensions[CJ],X=C.byteOffset||0,G=C.byteLength||0,W=C.count,F=C.byteStride,Z=new Uint8Array(W*F),U=Q.json.buffers[C.buffer],$=U.uri?Q.resources[U.uri]:Q.resources[fF],E=jQ.toView($,X,G);this._decoder.decodeGltfBuffer(Z,W,F,E,C.mode,C.filter),A.bufferViews[J]=Z})}_prereadPrimitives(A){let Q=A.jsonDoc;(Q.json.bufferViews||[]).forEach((Y)=>{if(!Y.extensions||!Y.extensions[CJ])return;let J=Y.extensions[CJ],C=A.buffers[J.buffer],X=A.buffers[Y.buffer],G=Q.json.buffers[Y.buffer];if(BdQ(G))this._decoderFallbackBufferMap.set(X,C)})}read(A){if(!this.isRequired())return this;for(let[Q,B]of this._decoderFallbackBufferMap){for(let Y of Q.listParents())if(Y instanceof fA)Y.swap(Q,B);Q.dispose()}return this}prewrite(A,Q){if(Q===YA.ACCESSOR)this._prewriteAccessors(A);else if(Q===YA.BUFFER)this._prewriteBuffers(A);return this}_prewriteAccessors(A){let Q=A.jsonDoc.json,B=this._encoder,Y=this._encoderOptions,J=this.document.getGraph(),C=this.document.createBuffer(),X=this.document.getRoot().listBuffers().indexOf(C),G=1,W=new Map,F=(Z)=>{for(let U of J.listParents(Z)){if(U.propertyType===YA.ROOT)continue;let $=W.get(Z);if($===void 0)W.set(Z,$=G++);return $}return-1};this._encoderFallbackBuffer=C,this._encoderBufferViews={},this._encoderBufferViewData={},this._encoderBufferViewAccessors={};for(let Z of this.document.getRoot().listAccessors()){if(W9A(Z)==="weights")continue;if(Z.getSparse())continue;let U=A.getAccessorUsage(Z),$=A.accessorUsageGroupedByParent.has(U)?F(Z):null,E=FdQ(Z,U),K=Y.method===nI.FILTER?ZdQ(Z,this.document):{filter:d0.NONE},I=CdQ(Z,B,E,K),{array:V,byteStride:H}=I,D=Z.getBuffer();if(!D)throw Error(`${CJ}: Missing buffer for accessor.`);let L=this.document.getRoot().listBuffers().indexOf(D),z=[U,$,E,K.filter,H,L].join(":"),M=this._encoderBufferViews[z],N=this._encoderBufferViewData[z],q=this._encoderBufferViewAccessors[z];if(!M||!N)q=this._encoderBufferViewAccessors[z]=[],N=this._encoderBufferViewData[z]=[],M=this._encoderBufferViews[z]={buffer:X,target:W5.USAGE_TO_TARGET[U],byteOffset:0,byteLength:0,byteStride:U===W5.BufferViewUsage.ARRAY_BUFFER?H:void 0,extensions:{[CJ]:{buffer:L,byteOffset:0,byteLength:0,mode:E,filter:K.filter!==d0.NONE?K.filter:void 0,byteStride:H,count:0}}};let w=A.createAccessorDef(Z);if(w.componentType=I.componentType,w.normalized=I.normalized,w.byteOffset=M.byteLength,w.min&&I.min)w.min=I.min;if(w.max&&I.max)w.max=I.max;A.accessorIndexMap.set(Z,Q.accessors.length),Q.accessors.push(w),q.push(w),N.push(new Uint8Array(V.buffer,V.byteOffset,V.byteLength)),M.byteLength+=V.byteLength,M.extensions.EXT_meshopt_compression.count+=Z.getCount()}}_prewriteBuffers(A){let Q=this._encoder;for(let B in this._encoderBufferViews){let Y=this._encoderBufferViews[B],J=this._encoderBufferViewData[B],C=this.document.getRoot().listBuffers()[Y.extensions[CJ].buffer],X=A.otherBufferViews.get(C)||[],{count:G,byteStride:W,mode:F}=Y.extensions[CJ],Z=jQ.concat(J),U=Q.encodeGltfBuffer(Z,G,W,F),$=jQ.pad(U);Y.extensions[CJ].byteLength=U.byteLength,J.length=0,J.push($),X.push($),A.otherBufferViews.set(C,X)}}write(A){let Q=0;for(let C in this._encoderBufferViews){let X=this._encoderBufferViews[C],G=this._encoderBufferViewData[C][0],W=A.otherBufferViewsIndexMap.get(G),F=this._encoderBufferViewAccessors[C];for(let E of F)E.bufferView=W;let Z=A.jsonDoc.json.bufferViews[W],U=Z.byteOffset||0;Object.assign(Z,X),Z.byteOffset=Q;let $=Z.extensions[CJ];$.byteOffset=U,Q+=jQ.padNumber(X.byteLength)}let B=this._encoderFallbackBuffer,Y=A.bufferIndexMap.get(B),J=A.jsonDoc.json.buffers[Y];return J.byteLength=Q,J.extensions={[CJ]:{fallback:!0}},B.dispose(),this}}rI.EXTENSION_NAME=CJ;rI.EncoderMethod=nI;class F9A{match(A){return A.length>=12&&jQ.decodeText(A.slice(4,12))==="ftypavif"}getSize(A){if(!this.match(A))return null;let Q=new DataView(A.buffer,A.byteOffset,A.byteLength),B=tJA(Q,0);if(!B)return null;let Y=B.end;while(B=tJA(Q,Y))if(B.type==="meta")Y=B.start+4;else if(B.type==="iprp"||B.type==="ipco")Y=B.start;else if(B.type==="ispe")return[Q.getUint32(B.start+4),Q.getUint32(B.start+8)];else if(B.type==="mdat")break;else Y=B.end;return null}getChannels(A){return 4}}class J3 extends tB{constructor(...A){super(...A);this.extensionName=pI,this.prereadTypes=[YA.TEXTURE]}static register(){F8.registerFormat("image/avif",new F9A)}preread(A){return(A.jsonDoc.json.textures||[]).forEach((B)=>{if(B.extensions&&B.extensions[pI])B.source=B.extensions[pI].source}),this}read(A){return this}write(A){let Q=A.jsonDoc;return this.document.getRoot().listTextures().forEach((B)=>{if(B.getMimeType()==="image/avif"){let Y=A.imageIndexMap.get(B);(Q.json.textures||[]).forEach((C)=>{if(C.source===Y)C.extensions=C.extensions||{},C.extensions[pI]={source:C.source},delete C.source})}}),this}}J3.EXTENSION_NAME=pI;function tJA(A,Q){if(A.byteLength<4+Q)return null;let B=A.getUint32(Q);if(A.byteLength=12&&A[8]===87&&A[9]===69&&A[10]===66&&A[11]===80}getSize(A){let Q=jQ.decodeText(A.slice(0,4)),B=jQ.decodeText(A.slice(8,12));if(Q!=="RIFF"||B!=="WEBP")return null;let Y=new DataView(A.buffer,A.byteOffset),J=12;while(J>6);return[U,$]}J+=8+X+X%2}return null}getChannels(A){return 4}}class C3 extends tB{constructor(...A){super(...A);this.extensionName=lI,this.prereadTypes=[YA.TEXTURE]}static register(){F8.registerFormat("image/webp",new Z9A)}preread(A){return(A.jsonDoc.json.textures||[]).forEach((B)=>{if(B.extensions&&B.extensions[lI])B.source=B.extensions[lI].source}),this}read(A){return this}write(A){let Q=A.jsonDoc;return this.document.getRoot().listTextures().forEach((B)=>{if(B.getMimeType()==="image/webp"){let Y=A.imageIndexMap.get(B);(Q.json.textures||[]).forEach((C)=>{if(C.source===Y)C.extensions=C.extensions||{},C.extensions[lI]={source:C.source},delete C.source})}}),this}}C3.EXTENSION_NAME=lI;var SY,$9A,U9A;function $dQ(A,Q){let B=new SY.DecoderBuffer;try{if(B.Init(Q,Q.length),A.GetEncodedGeometryType(B)!==SY.TRIANGULAR_MESH)throw Error(`[${S0}] Unknown geometry type.`);let J=new SY.Mesh;if(!A.DecodeBufferToMesh(B,J).ok()||J.ptr===0)throw Error(`[${S0}] Decoding failure.`);return J}finally{SY.destroy(B)}}function UdQ(A,Q){let Y=Q.num_faces()*3,J,C;if(Q.num_points()<=65534){let X=Y*Uint16Array.BYTES_PER_ELEMENT;J=SY._malloc(X),A.GetTrianglesUInt16Array(Q,X,J),C=new Uint16Array(SY.HEAPU16.buffer,J,Y).slice()}else{let X=Y*Uint32Array.BYTES_PER_ELEMENT;J=SY._malloc(X),A.GetTrianglesUInt32Array(Q,X,J),C=new Uint32Array(SY.HEAPU32.buffer,J,Y).slice()}return SY._free(J),C}function EdQ(A,Q,B,Y){let J=U9A[Y.componentType],C=$9A[Y.componentType],X=B.num_components(),W=Q.num_points()*X,F=W*C.BYTES_PER_ELEMENT,Z=SY._malloc(F);A.GetAttributeDataArrayForAllPoints(Q,B,J,F,Z);let U=new C(SY.HEAPF32.buffer,Z,W).slice();return SY._free(Z),U}function KdQ(A){SY=A,$9A={[fA.ComponentType.FLOAT]:Float32Array,[fA.ComponentType.UNSIGNED_INT]:Uint32Array,[fA.ComponentType.UNSIGNED_SHORT]:Uint16Array,[fA.ComponentType.UNSIGNED_BYTE]:Uint8Array,[fA.ComponentType.SHORT]:Int16Array,[fA.ComponentType.BYTE]:Int8Array},U9A={[fA.ComponentType.FLOAT]:SY.DT_FLOAT32,[fA.ComponentType.UNSIGNED_INT]:SY.DT_UINT32,[fA.ComponentType.UNSIGNED_SHORT]:SY.DT_UINT16,[fA.ComponentType.UNSIGNED_BYTE]:SY.DT_UINT8,[fA.ComponentType.SHORT]:SY.DT_INT16,[fA.ComponentType.BYTE]:SY.DT_INT8}}var F5,sI;(function(A){A[A.EDGEBREAKER=1]="EDGEBREAKER",A[A.SEQUENTIAL=0]="SEQUENTIAL"})(sI||(sI={}));var U5;(function(A){A.POSITION="POSITION",A.NORMAL="NORMAL",A.COLOR="COLOR",A.TEX_COORD="TEX_COORD",A.GENERIC="GENERIC"})(U5||(U5={}));var E9A={[U5.POSITION]:14,[U5.NORMAL]:10,[U5.COLOR]:8,[U5.TEX_COORD]:12,[U5.GENERIC]:12},eJA={decodeSpeed:5,encodeSpeed:5,method:sI.EDGEBREAKER,quantizationBits:E9A,quantizationVolume:"mesh"};function VdQ(A){F5=A}function IdQ(A,Q=eJA){let B=L6({},eJA,Q);B.quantizationBits=L6({},E9A,Q.quantizationBits);let Y=new F5.MeshBuilder,J=new F5.Mesh,C=new F5.ExpertEncoder(J),X={},G=new F5.DracoInt8Array,W=A.listTargets().length>0,F=!1;for(let I of A.listSemantics()){let V=A.getAttribute(I);if(V.getSparse()){F=!0;continue}let H=HdQ(I),D=DdQ(Y,V.getComponentType(),J,F5[H],V.getCount(),V.getElementSize(),V.getArray());if(D===-1)throw Error(`Error compressing "${I}" attribute.`);if(X[I]=D,B.quantizationVolume==="mesh"||I!=="POSITION")C.SetAttributeQuantization(D,B.quantizationBits[H]);else if(typeof B.quantizationVolume==="object"){let{quantizationVolume:L}=B,z=Math.max(L.max[0]-L.min[0],L.max[1]-L.min[1],L.max[2]-L.min[2]);C.SetAttributeExplicitQuantization(D,B.quantizationBits[H],V.getElementSize(),L.min,z)}else throw Error("Invalid quantization volume state.")}let Z=A.getIndices();if(!Z)throw new Q3("Primitive must have indices.");if(Y.AddFacesToMesh(J,Z.getCount()/3,Z.getArray()),C.SetSpeedOptions(B.encodeSpeed,B.decodeSpeed),C.SetTrackEncodedProperties(!0),B.method===sI.SEQUENTIAL||W||F)C.SetEncodingMethod(F5.MESH_SEQUENTIAL_ENCODING);else C.SetEncodingMethod(F5.MESH_EDGEBREAKER_ENCODING);let U=C.EncodeToDracoBuffer(!(W||F),G);if(U<=0)throw new Q3("Error applying Draco compression.");let $=new Uint8Array(U);for(let I=0;I65534&&fA.getComponentSize(U.componentType)<=2)U.componentType=fA.ComponentType.UNSIGNED_INT;else if(Z.numVertices>254&&fA.getComponentSize(U.componentType)<=1)U.componentType=fA.ComponentType.UNSIGNED_SHORT;for(let E of X.listSemantics()){let K=X.getAttribute(E);if(Z.attributeIDs[E]===void 0)continue;let I=A.createAccessorDef(K);I.count=Z.numVertices,A.accessorIndexMap.set(K,F.length),F.push(I)}let $=X.getAttribute("POSITION").getBuffer()||this.document.getRoot().listBuffers()[0];if(!A.otherBufferViews.has($))A.otherBufferViews.set($,[]);A.otherBufferViews.get($).push(Z.data)}return B.debug(`[${S0}] Compressed ${Y.size} primitives.`),A.extensionData[S0]={primitiveHashMap:Y,primitiveEncodingMap:J},this}write(A){let Q=A.extensionData[S0];for(let B of this.document.getRoot().listMeshes()){let Y=A.jsonDoc.json.meshes[A.meshIndexMap.get(B)];for(let J=0;JY!==S0),B.extensionsRequired=(B.extensionsRequired||[]).filter((Y)=>Y!==S0)}return this}}aI.EXTENSION_NAME=S0;aI.EncoderMethod=sI;function NdQ(A){let Q=A.getLogger(),B=new Set,Y=new Set,J=0,C=0;for(let U of A.getRoot().listMeshes())for(let $ of U.listPrimitives())if(!$.getIndices())Y.add($),J++;else if($.getMode()!==q0.Mode.TRIANGLES)Y.add($),C++;else B.add($);if(J>0)Q.warn(`[${S0}] Skipping Draco compression of ${J} non-indexed primitives.`);if(C>0)Q.warn(`[${S0}] Skipping Draco compression of ${C} non-TRIANGLES primitives.`);let X=A.getRoot().listAccessors(),G=new Map;for(let U=0;UE.propertyType));if($.size!==2||!$.has(YA.PRIMITIVE)||!$.has(YA.ROOT))throw Error(`[${S0}] Compressed accessors must only be used as indices or vertex attributes.`)}for(let U of Array.from(B)){let $=Z.get(U),E=U.getIndices();if(W.get(E)!==$||U.listAttributes().some((K)=>W.get(K)!==$))throw Error(`[${S0}] Draco primitives must share all, or no, accessors.`)}for(let U of Array.from(Y)){let $=U.getIndices();if(W.has($)||U.listAttributes().some((E)=>W.has(E)))throw Error(`[${S0}] Accessor cannot be shared by compressed and uncompressed primitives.`)}return Z}function A9A(A,Q){let B=[],Y=A.getIndices();B.push(Q.get(Y));for(let J of A.listAttributes())B.push(Q.get(J));return B.sort().join("|")}class a4 extends oB{init(){this.extensionName=Z5,this.propertyType="Light",this.parentTypes=[YA.NODE]}getDefaults(){return Object.assign(super.getDefaults(),{color:[1,1,1],intensity:1,type:a4.Type.POINT,range:null,innerConeAngle:0,outerConeAngle:Math.PI/4})}getColor(){return this.get("color")}setColor(A){return this.set("color",A)}getIntensity(){return this.get("intensity")}setIntensity(A){return this.set("intensity",A)}getType(){return this.get("type")}setType(A){return this.set("type",A)}getRange(){return this.get("range")}setRange(A){return this.set("range",A)}getInnerConeAngle(){return this.get("innerConeAngle")}setInnerConeAngle(A){return this.set("innerConeAngle",A)}getOuterConeAngle(){return this.get("outerConeAngle")}setOuterConeAngle(A){return this.set("outerConeAngle",A)}}a4.EXTENSION_NAME=Z5;a4.Type={POINT:"point",SPOT:"spot",DIRECTIONAL:"directional"};class jg extends tB{constructor(...A){super(...A);this.extensionName=Z5}createLight(A=""){return new a4(this.document.getGraph(),A)}read(A){let Q=A.jsonDoc;if(!Q.json.extensions||!Q.json.extensions[Z5])return this;let J=(Q.json.extensions[Z5].lights||[]).map((C)=>{var X,G;let W=this.createLight().setName(C.name||"").setType(C.type);if(C.color!==void 0)W.setColor(C.color);if(C.intensity!==void 0)W.setIntensity(C.intensity);if(C.range!==void 0)W.setRange(C.range);if(((X=C.spot)==null?void 0:X.innerConeAngle)!==void 0)W.setInnerConeAngle(C.spot.innerConeAngle);if(((G=C.spot)==null?void 0:G.outerConeAngle)!==void 0)W.setOuterConeAngle(C.spot.outerConeAngle);return W});return Q.json.nodes.forEach((C,X)=>{if(!C.extensions||!C.extensions[Z5])return;let G=C.extensions[Z5];A.nodes[X].setExtension(Z5,J[G.light])}),this}write(A){let Q=A.jsonDoc;if(this.properties.size===0)return this;let B=[],Y=new Map;for(let J of this.properties){let C=J,X={type:C.getType()};if(!kQ.eq(C.getColor(),[1,1,1]))X.color=C.getColor();if(C.getIntensity()!==1)X.intensity=C.getIntensity();if(C.getRange()!=null)X.range=C.getRange();if(C.getName())X.name=C.getName();if(C.getType()===a4.Type.SPOT)X.spot={innerConeAngle:C.getInnerConeAngle(),outerConeAngle:C.getOuterConeAngle()};B.push(X),Y.set(C,B.length-1)}return this.document.getRoot().listNodes().forEach((J)=>{let C=J.getExtension(Z5);if(C){let X=A.nodeIndexMap.get(J),G=Q.json.nodes[X];G.extensions=G.extensions||{},G.extensions[Z5]={light:Y.get(C)}}}),Q.json.extensions=Q.json.extensions||{},Q.json.extensions[Z5]={lights:B},this}}jg.EXTENSION_NAME=Z5;var{R:LdQ,G:qdQ,B:MdQ}=k9;class Og extends oB{init(){this.extensionName=G6,this.propertyType="Anisotropy",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{anisotropyStrength:0,anisotropyRotation:0,anisotropyTexture:null,anisotropyTextureInfo:new gB(this.graph,"anisotropyTextureInfo")})}getAnisotropyStrength(){return this.get("anisotropyStrength")}setAnisotropyStrength(A){return this.set("anisotropyStrength",A)}getAnisotropyRotation(){return this.get("anisotropyRotation")}setAnisotropyRotation(A){return this.set("anisotropyRotation",A)}getAnisotropyTexture(){return this.getRef("anisotropyTexture")}getAnisotropyTextureInfo(){return this.getRef("anisotropyTexture")?this.getRef("anisotropyTextureInfo"):null}setAnisotropyTexture(A){return this.setRef("anisotropyTexture",A,{channels:LdQ|qdQ|MdQ})}}Og.EXTENSION_NAME=G6;class Pg extends tB{constructor(...A){super(...A);this.extensionName=G6,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createAnisotropy(){return new Og(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[G6]){let X=this.createAnisotropy();A.materials[C].setExtension(G6,X);let G=J.extensions[G6];if(G.anisotropyStrength!==void 0)X.setAnisotropyStrength(G.anisotropyStrength);if(G.anisotropyRotation!==void 0)X.setAnisotropyRotation(G.anisotropyRotation);if(G.anisotropyTexture!==void 0){let W=G.anisotropyTexture,F=A.textures[Y[W.index].source];X.setAnisotropyTexture(F),A.setTextureInfo(X.getAnisotropyTextureInfo(),W)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(G6);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[G6]={};if(Y.getAnisotropyStrength()>0)X.anisotropyStrength=Y.getAnisotropyStrength();if(Y.getAnisotropyRotation()!==0)X.anisotropyRotation=Y.getAnisotropyRotation();if(Y.getAnisotropyTexture()){let G=Y.getAnisotropyTexture(),W=Y.getAnisotropyTextureInfo();X.anisotropyTexture=A.createTextureInfoDef(G,W)}}}),this}}Pg.EXTENSION_NAME=G6;var{R:Q9A,G:B9A,B:zdQ}=k9;class Tg extends oB{init(){this.extensionName=W6,this.propertyType="Clearcoat",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{clearcoatFactor:0,clearcoatTexture:null,clearcoatTextureInfo:new gB(this.graph,"clearcoatTextureInfo"),clearcoatRoughnessFactor:0,clearcoatRoughnessTexture:null,clearcoatRoughnessTextureInfo:new gB(this.graph,"clearcoatRoughnessTextureInfo"),clearcoatNormalScale:1,clearcoatNormalTexture:null,clearcoatNormalTextureInfo:new gB(this.graph,"clearcoatNormalTextureInfo")})}getClearcoatFactor(){return this.get("clearcoatFactor")}setClearcoatFactor(A){return this.set("clearcoatFactor",A)}getClearcoatTexture(){return this.getRef("clearcoatTexture")}getClearcoatTextureInfo(){return this.getRef("clearcoatTexture")?this.getRef("clearcoatTextureInfo"):null}setClearcoatTexture(A){return this.setRef("clearcoatTexture",A,{channels:Q9A})}getClearcoatRoughnessFactor(){return this.get("clearcoatRoughnessFactor")}setClearcoatRoughnessFactor(A){return this.set("clearcoatRoughnessFactor",A)}getClearcoatRoughnessTexture(){return this.getRef("clearcoatRoughnessTexture")}getClearcoatRoughnessTextureInfo(){return this.getRef("clearcoatRoughnessTexture")?this.getRef("clearcoatRoughnessTextureInfo"):null}setClearcoatRoughnessTexture(A){return this.setRef("clearcoatRoughnessTexture",A,{channels:B9A})}getClearcoatNormalScale(){return this.get("clearcoatNormalScale")}setClearcoatNormalScale(A){return this.set("clearcoatNormalScale",A)}getClearcoatNormalTexture(){return this.getRef("clearcoatNormalTexture")}getClearcoatNormalTextureInfo(){return this.getRef("clearcoatNormalTexture")?this.getRef("clearcoatNormalTextureInfo"):null}setClearcoatNormalTexture(A){return this.setRef("clearcoatNormalTexture",A,{channels:Q9A|B9A|zdQ})}}Tg.EXTENSION_NAME=W6;class Sg extends tB{constructor(...A){super(...A);this.extensionName=W6,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createClearcoat(){return new Tg(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[W6]){let X=this.createClearcoat();A.materials[C].setExtension(W6,X);let G=J.extensions[W6];if(G.clearcoatFactor!==void 0)X.setClearcoatFactor(G.clearcoatFactor);if(G.clearcoatRoughnessFactor!==void 0)X.setClearcoatRoughnessFactor(G.clearcoatRoughnessFactor);if(G.clearcoatTexture!==void 0){let W=G.clearcoatTexture,F=A.textures[Y[W.index].source];X.setClearcoatTexture(F),A.setTextureInfo(X.getClearcoatTextureInfo(),W)}if(G.clearcoatRoughnessTexture!==void 0){let W=G.clearcoatRoughnessTexture,F=A.textures[Y[W.index].source];X.setClearcoatRoughnessTexture(F),A.setTextureInfo(X.getClearcoatRoughnessTextureInfo(),W)}if(G.clearcoatNormalTexture!==void 0){let W=G.clearcoatNormalTexture,F=A.textures[Y[W.index].source];if(X.setClearcoatNormalTexture(F),A.setTextureInfo(X.getClearcoatNormalTextureInfo(),W),W.scale!==void 0)X.setClearcoatNormalScale(W.scale)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(W6);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[W6]={clearcoatFactor:Y.getClearcoatFactor(),clearcoatRoughnessFactor:Y.getClearcoatRoughnessFactor()};if(Y.getClearcoatTexture()){let G=Y.getClearcoatTexture(),W=Y.getClearcoatTextureInfo();X.clearcoatTexture=A.createTextureInfoDef(G,W)}if(Y.getClearcoatRoughnessTexture()){let G=Y.getClearcoatRoughnessTexture(),W=Y.getClearcoatRoughnessTextureInfo();X.clearcoatRoughnessTexture=A.createTextureInfoDef(G,W)}if(Y.getClearcoatNormalTexture()){let G=Y.getClearcoatNormalTexture(),W=Y.getClearcoatNormalTextureInfo();if(X.clearcoatNormalTexture=A.createTextureInfoDef(G,W),Y.getClearcoatNormalScale()!==1)X.clearcoatNormalTexture.scale=Y.getClearcoatNormalScale()}}}),this}}Sg.EXTENSION_NAME=W6;var{R:RdQ,G:wdQ,B:jdQ,A:OdQ}=k9;class kg extends oB{init(){this.extensionName=F6,this.propertyType="DiffuseTransmission",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{diffuseTransmissionFactor:0,diffuseTransmissionTexture:null,diffuseTransmissionTextureInfo:new gB(this.graph,"diffuseTransmissionTextureInfo"),diffuseTransmissionColorFactor:[1,1,1],diffuseTransmissionColorTexture:null,diffuseTransmissionColorTextureInfo:new gB(this.graph,"diffuseTransmissionColorTextureInfo")})}getDiffuseTransmissionFactor(){return this.get("diffuseTransmissionFactor")}setDiffuseTransmissionFactor(A){return this.set("diffuseTransmissionFactor",A)}getDiffuseTransmissionTexture(){return this.getRef("diffuseTransmissionTexture")}getDiffuseTransmissionTextureInfo(){return this.getRef("diffuseTransmissionTexture")?this.getRef("diffuseTransmissionTextureInfo"):null}setDiffuseTransmissionTexture(A){return this.setRef("diffuseTransmissionTexture",A,{channels:OdQ})}getDiffuseTransmissionColorFactor(){return this.get("diffuseTransmissionColorFactor")}setDiffuseTransmissionColorFactor(A){return this.set("diffuseTransmissionColorFactor",A)}getDiffuseTransmissionColorTexture(){return this.getRef("diffuseTransmissionColorTexture")}getDiffuseTransmissionColorTextureInfo(){return this.getRef("diffuseTransmissionColorTexture")?this.getRef("diffuseTransmissionColorTextureInfo"):null}setDiffuseTransmissionColorTexture(A){return this.setRef("diffuseTransmissionColorTexture",A,{channels:RdQ|wdQ|jdQ})}}kg.EXTENSION_NAME=F6;class _g extends tB{constructor(...A){super(...A);this.extensionName=F6}createDiffuseTransmission(){return new kg(this.document.getGraph())}read(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[F6]){let X=this.createDiffuseTransmission();A.materials[C].setExtension(F6,X);let G=J.extensions[F6];if(G.diffuseTransmissionFactor!==void 0)X.setDiffuseTransmissionFactor(G.diffuseTransmissionFactor);if(G.diffuseTransmissionColorFactor!==void 0)X.setDiffuseTransmissionColorFactor(G.diffuseTransmissionColorFactor);if(G.diffuseTransmissionTexture!==void 0){let W=G.diffuseTransmissionTexture,F=A.textures[Y[W.index].source];X.setDiffuseTransmissionTexture(F),A.setTextureInfo(X.getDiffuseTransmissionTextureInfo(),W)}if(G.diffuseTransmissionColorTexture!==void 0){let W=G.diffuseTransmissionColorTexture,F=A.textures[Y[W.index].source];X.setDiffuseTransmissionColorTexture(F),A.setTextureInfo(X.getDiffuseTransmissionColorTextureInfo(),W)}}}),this}write(A){let Q=A.jsonDoc;for(let B of this.document.getRoot().listMaterials()){let Y=B.getExtension(F6);if(!Y)continue;let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[F6]={diffuseTransmissionFactor:Y.getDiffuseTransmissionFactor(),diffuseTransmissionColorFactor:Y.getDiffuseTransmissionColorFactor()};if(Y.getDiffuseTransmissionTexture()){let G=Y.getDiffuseTransmissionTexture(),W=Y.getDiffuseTransmissionTextureInfo();X.diffuseTransmissionTexture=A.createTextureInfoDef(G,W)}if(Y.getDiffuseTransmissionColorTexture()){let G=Y.getDiffuseTransmissionColorTexture(),W=Y.getDiffuseTransmissionColorTextureInfo();X.diffuseTransmissionColorTexture=A.createTextureInfoDef(G,W)}}return this}}_g.EXTENSION_NAME=F6;class vg extends oB{init(){this.extensionName=Z6,this.propertyType="Dispersion",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{dispersion:0})}getDispersion(){return this.get("dispersion")}setDispersion(A){return this.set("dispersion",A)}}vg.EXTENSION_NAME=Z6;class yg extends tB{constructor(...A){super(...A);this.extensionName=Z6,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createDispersion(){return new vg(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){return(A.jsonDoc.json.materials||[]).forEach((Y,J)=>{if(Y.extensions&&Y.extensions[Z6]){let C=this.createDispersion();A.materials[J].setExtension(Z6,C);let X=Y.extensions[Z6];if(X.dispersion!==void 0)C.setDispersion(X.dispersion)}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(Z6);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{},C.extensions[Z6]={dispersion:Y.getDispersion()}}}),this}}yg.EXTENSION_NAME=Z6;class gg extends oB{init(){this.extensionName=$6,this.propertyType="EmissiveStrength",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{emissiveStrength:1})}getEmissiveStrength(){return this.get("emissiveStrength")}setEmissiveStrength(A){return this.set("emissiveStrength",A)}}gg.EXTENSION_NAME=$6;class oI extends tB{constructor(...A){super(...A);this.extensionName=$6,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createEmissiveStrength(){return new gg(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){return(A.jsonDoc.json.materials||[]).forEach((Y,J)=>{if(Y.extensions&&Y.extensions[$6]){let C=this.createEmissiveStrength();A.materials[J].setExtension($6,C);let X=Y.extensions[$6];if(X.emissiveStrength!==void 0)C.setEmissiveStrength(X.emissiveStrength)}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension($6);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{},C.extensions[$6]={emissiveStrength:Y.getEmissiveStrength()}}}),this}}oI.EXTENSION_NAME=$6;class hg extends oB{init(){this.extensionName=U6,this.propertyType="IOR",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{ior:1.5})}getIOR(){return this.get("ior")}setIOR(A){return this.set("ior",A)}}hg.EXTENSION_NAME=U6;class X3 extends tB{constructor(...A){super(...A);this.extensionName=U6,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createIOR(){return new hg(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){return(A.jsonDoc.json.materials||[]).forEach((Y,J)=>{if(Y.extensions&&Y.extensions[U6]){let C=this.createIOR();A.materials[J].setExtension(U6,C);let X=Y.extensions[U6];if(X.ior!==void 0)C.setIOR(X.ior)}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(U6);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{},C.extensions[U6]={ior:Y.getIOR()}}}),this}}X3.EXTENSION_NAME=U6;var{R:PdQ,G:TdQ}=k9;class xg extends oB{init(){this.extensionName=E6,this.propertyType="Iridescence",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{iridescenceFactor:0,iridescenceTexture:null,iridescenceTextureInfo:new gB(this.graph,"iridescenceTextureInfo"),iridescenceIOR:1.3,iridescenceThicknessMinimum:100,iridescenceThicknessMaximum:400,iridescenceThicknessTexture:null,iridescenceThicknessTextureInfo:new gB(this.graph,"iridescenceThicknessTextureInfo")})}getIridescenceFactor(){return this.get("iridescenceFactor")}setIridescenceFactor(A){return this.set("iridescenceFactor",A)}getIridescenceTexture(){return this.getRef("iridescenceTexture")}getIridescenceTextureInfo(){return this.getRef("iridescenceTexture")?this.getRef("iridescenceTextureInfo"):null}setIridescenceTexture(A){return this.setRef("iridescenceTexture",A,{channels:PdQ})}getIridescenceIOR(){return this.get("iridescenceIOR")}setIridescenceIOR(A){return this.set("iridescenceIOR",A)}getIridescenceThicknessMinimum(){return this.get("iridescenceThicknessMinimum")}setIridescenceThicknessMinimum(A){return this.set("iridescenceThicknessMinimum",A)}getIridescenceThicknessMaximum(){return this.get("iridescenceThicknessMaximum")}setIridescenceThicknessMaximum(A){return this.set("iridescenceThicknessMaximum",A)}getIridescenceThicknessTexture(){return this.getRef("iridescenceThicknessTexture")}getIridescenceThicknessTextureInfo(){return this.getRef("iridescenceThicknessTexture")?this.getRef("iridescenceThicknessTextureInfo"):null}setIridescenceThicknessTexture(A){return this.setRef("iridescenceThicknessTexture",A,{channels:TdQ})}}xg.EXTENSION_NAME=E6;class fg extends tB{constructor(...A){super(...A);this.extensionName=E6,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createIridescence(){return new xg(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[E6]){let X=this.createIridescence();A.materials[C].setExtension(E6,X);let G=J.extensions[E6];if(G.iridescenceFactor!==void 0)X.setIridescenceFactor(G.iridescenceFactor);if(G.iridescenceIor!==void 0)X.setIridescenceIOR(G.iridescenceIor);if(G.iridescenceThicknessMinimum!==void 0)X.setIridescenceThicknessMinimum(G.iridescenceThicknessMinimum);if(G.iridescenceThicknessMaximum!==void 0)X.setIridescenceThicknessMaximum(G.iridescenceThicknessMaximum);if(G.iridescenceTexture!==void 0){let W=G.iridescenceTexture,F=A.textures[Y[W.index].source];X.setIridescenceTexture(F),A.setTextureInfo(X.getIridescenceTextureInfo(),W)}if(G.iridescenceThicknessTexture!==void 0){let W=G.iridescenceThicknessTexture,F=A.textures[Y[W.index].source];X.setIridescenceThicknessTexture(F),A.setTextureInfo(X.getIridescenceThicknessTextureInfo(),W)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(E6);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[E6]={};if(Y.getIridescenceFactor()>0)X.iridescenceFactor=Y.getIridescenceFactor();if(Y.getIridescenceIOR()!==1.3)X.iridescenceIor=Y.getIridescenceIOR();if(Y.getIridescenceThicknessMinimum()!==100)X.iridescenceThicknessMinimum=Y.getIridescenceThicknessMinimum();if(Y.getIridescenceThicknessMaximum()!==400)X.iridescenceThicknessMaximum=Y.getIridescenceThicknessMaximum();if(Y.getIridescenceTexture()){let G=Y.getIridescenceTexture(),W=Y.getIridescenceTextureInfo();X.iridescenceTexture=A.createTextureInfoDef(G,W)}if(Y.getIridescenceThicknessTexture()){let G=Y.getIridescenceThicknessTexture(),W=Y.getIridescenceThicknessTextureInfo();X.iridescenceThicknessTexture=A.createTextureInfoDef(G,W)}}}),this}}fg.EXTENSION_NAME=E6;var{R:Y9A,G:J9A,B:C9A,A:X9A}=k9;class bg extends oB{init(){this.extensionName=K6,this.propertyType="PBRSpecularGlossiness",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{diffuseFactor:[1,1,1,1],diffuseTexture:null,diffuseTextureInfo:new gB(this.graph,"diffuseTextureInfo"),specularFactor:[1,1,1],glossinessFactor:1,specularGlossinessTexture:null,specularGlossinessTextureInfo:new gB(this.graph,"specularGlossinessTextureInfo")})}getDiffuseFactor(){return this.get("diffuseFactor")}setDiffuseFactor(A){return this.set("diffuseFactor",A)}getDiffuseTexture(){return this.getRef("diffuseTexture")}getDiffuseTextureInfo(){return this.getRef("diffuseTexture")?this.getRef("diffuseTextureInfo"):null}setDiffuseTexture(A){return this.setRef("diffuseTexture",A,{channels:Y9A|J9A|C9A|X9A,isColor:!0})}getSpecularFactor(){return this.get("specularFactor")}setSpecularFactor(A){return this.set("specularFactor",A)}getGlossinessFactor(){return this.get("glossinessFactor")}setGlossinessFactor(A){return this.set("glossinessFactor",A)}getSpecularGlossinessTexture(){return this.getRef("specularGlossinessTexture")}getSpecularGlossinessTextureInfo(){return this.getRef("specularGlossinessTexture")?this.getRef("specularGlossinessTextureInfo"):null}setSpecularGlossinessTexture(A){return this.setRef("specularGlossinessTexture",A,{channels:Y9A|J9A|C9A|X9A})}}bg.EXTENSION_NAME=K6;class G3 extends tB{constructor(...A){super(...A);this.extensionName=K6,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createPBRSpecularGlossiness(){return new bg(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[K6]){let X=this.createPBRSpecularGlossiness();A.materials[C].setExtension(K6,X);let G=J.extensions[K6];if(G.diffuseFactor!==void 0)X.setDiffuseFactor(G.diffuseFactor);if(G.specularFactor!==void 0)X.setSpecularFactor(G.specularFactor);if(G.glossinessFactor!==void 0)X.setGlossinessFactor(G.glossinessFactor);if(G.diffuseTexture!==void 0){let W=G.diffuseTexture,F=A.textures[Y[W.index].source];X.setDiffuseTexture(F),A.setTextureInfo(X.getDiffuseTextureInfo(),W)}if(G.specularGlossinessTexture!==void 0){let W=G.specularGlossinessTexture,F=A.textures[Y[W.index].source];X.setSpecularGlossinessTexture(F),A.setTextureInfo(X.getSpecularGlossinessTextureInfo(),W)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(K6);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[K6]={diffuseFactor:Y.getDiffuseFactor(),specularFactor:Y.getSpecularFactor(),glossinessFactor:Y.getGlossinessFactor()};if(Y.getDiffuseTexture()){let G=Y.getDiffuseTexture(),W=Y.getDiffuseTextureInfo();X.diffuseTexture=A.createTextureInfoDef(G,W)}if(Y.getSpecularGlossinessTexture()){let G=Y.getSpecularGlossinessTexture(),W=Y.getSpecularGlossinessTextureInfo();X.specularGlossinessTexture=A.createTextureInfoDef(G,W)}}}),this}}G3.EXTENSION_NAME=K6;var{R:SdQ,G:kdQ,B:_dQ,A:vdQ}=k9;class mg extends oB{init(){this.extensionName=V6,this.propertyType="Sheen",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{sheenColorFactor:[0,0,0],sheenColorTexture:null,sheenColorTextureInfo:new gB(this.graph,"sheenColorTextureInfo"),sheenRoughnessFactor:0,sheenRoughnessTexture:null,sheenRoughnessTextureInfo:new gB(this.graph,"sheenRoughnessTextureInfo")})}getSheenColorFactor(){return this.get("sheenColorFactor")}setSheenColorFactor(A){return this.set("sheenColorFactor",A)}getSheenColorTexture(){return this.getRef("sheenColorTexture")}getSheenColorTextureInfo(){return this.getRef("sheenColorTexture")?this.getRef("sheenColorTextureInfo"):null}setSheenColorTexture(A){return this.setRef("sheenColorTexture",A,{channels:SdQ|kdQ|_dQ,isColor:!0})}getSheenRoughnessFactor(){return this.get("sheenRoughnessFactor")}setSheenRoughnessFactor(A){return this.set("sheenRoughnessFactor",A)}getSheenRoughnessTexture(){return this.getRef("sheenRoughnessTexture")}getSheenRoughnessTextureInfo(){return this.getRef("sheenRoughnessTexture")?this.getRef("sheenRoughnessTextureInfo"):null}setSheenRoughnessTexture(A){return this.setRef("sheenRoughnessTexture",A,{channels:vdQ})}}mg.EXTENSION_NAME=V6;class ug extends tB{constructor(...A){super(...A);this.extensionName=V6,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createSheen(){return new mg(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[V6]){let X=this.createSheen();A.materials[C].setExtension(V6,X);let G=J.extensions[V6];if(G.sheenColorFactor!==void 0)X.setSheenColorFactor(G.sheenColorFactor);if(G.sheenRoughnessFactor!==void 0)X.setSheenRoughnessFactor(G.sheenRoughnessFactor);if(G.sheenColorTexture!==void 0){let W=G.sheenColorTexture,F=A.textures[Y[W.index].source];X.setSheenColorTexture(F),A.setTextureInfo(X.getSheenColorTextureInfo(),W)}if(G.sheenRoughnessTexture!==void 0){let W=G.sheenRoughnessTexture,F=A.textures[Y[W.index].source];X.setSheenRoughnessTexture(F),A.setTextureInfo(X.getSheenRoughnessTextureInfo(),W)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(V6);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[V6]={sheenColorFactor:Y.getSheenColorFactor(),sheenRoughnessFactor:Y.getSheenRoughnessFactor()};if(Y.getSheenColorTexture()){let G=Y.getSheenColorTexture(),W=Y.getSheenColorTextureInfo();X.sheenColorTexture=A.createTextureInfoDef(G,W)}if(Y.getSheenRoughnessTexture()){let G=Y.getSheenRoughnessTexture(),W=Y.getSheenRoughnessTextureInfo();X.sheenRoughnessTexture=A.createTextureInfoDef(G,W)}}}),this}}ug.EXTENSION_NAME=V6;var{R:ydQ,G:gdQ,B:hdQ,A:xdQ}=k9;class dg extends oB{init(){this.extensionName=I6,this.propertyType="Specular",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{specularFactor:1,specularTexture:null,specularTextureInfo:new gB(this.graph,"specularTextureInfo"),specularColorFactor:[1,1,1],specularColorTexture:null,specularColorTextureInfo:new gB(this.graph,"specularColorTextureInfo")})}getSpecularFactor(){return this.get("specularFactor")}setSpecularFactor(A){return this.set("specularFactor",A)}getSpecularColorFactor(){return this.get("specularColorFactor")}setSpecularColorFactor(A){return this.set("specularColorFactor",A)}getSpecularTexture(){return this.getRef("specularTexture")}getSpecularTextureInfo(){return this.getRef("specularTexture")?this.getRef("specularTextureInfo"):null}setSpecularTexture(A){return this.setRef("specularTexture",A,{channels:xdQ})}getSpecularColorTexture(){return this.getRef("specularColorTexture")}getSpecularColorTextureInfo(){return this.getRef("specularColorTexture")?this.getRef("specularColorTextureInfo"):null}setSpecularColorTexture(A){return this.setRef("specularColorTexture",A,{channels:ydQ|gdQ|hdQ,isColor:!0})}}dg.EXTENSION_NAME=I6;class W3 extends tB{constructor(...A){super(...A);this.extensionName=I6,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createSpecular(){return new dg(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[I6]){let X=this.createSpecular();A.materials[C].setExtension(I6,X);let G=J.extensions[I6];if(G.specularFactor!==void 0)X.setSpecularFactor(G.specularFactor);if(G.specularColorFactor!==void 0)X.setSpecularColorFactor(G.specularColorFactor);if(G.specularTexture!==void 0){let W=G.specularTexture,F=A.textures[Y[W.index].source];X.setSpecularTexture(F),A.setTextureInfo(X.getSpecularTextureInfo(),W)}if(G.specularColorTexture!==void 0){let W=G.specularColorTexture,F=A.textures[Y[W.index].source];X.setSpecularColorTexture(F),A.setTextureInfo(X.getSpecularColorTextureInfo(),W)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(I6);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[I6]={};if(Y.getSpecularFactor()!==1)X.specularFactor=Y.getSpecularFactor();if(!kQ.eq(Y.getSpecularColorFactor(),[1,1,1]))X.specularColorFactor=Y.getSpecularColorFactor();if(Y.getSpecularTexture()){let G=Y.getSpecularTexture(),W=Y.getSpecularTextureInfo();X.specularTexture=A.createTextureInfoDef(G,W)}if(Y.getSpecularColorTexture()){let G=Y.getSpecularColorTexture(),W=Y.getSpecularColorTextureInfo();X.specularColorTexture=A.createTextureInfoDef(G,W)}}}),this}}W3.EXTENSION_NAME=I6;var{R:fdQ}=k9;class cg extends oB{init(){this.extensionName=H6,this.propertyType="Transmission",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{transmissionFactor:0,transmissionTexture:null,transmissionTextureInfo:new gB(this.graph,"transmissionTextureInfo")})}getTransmissionFactor(){return this.get("transmissionFactor")}setTransmissionFactor(A){return this.set("transmissionFactor",A)}getTransmissionTexture(){return this.getRef("transmissionTexture")}getTransmissionTextureInfo(){return this.getRef("transmissionTexture")?this.getRef("transmissionTextureInfo"):null}setTransmissionTexture(A){return this.setRef("transmissionTexture",A,{channels:fdQ})}}cg.EXTENSION_NAME=H6;class lg extends tB{constructor(...A){super(...A);this.extensionName=H6,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createTransmission(){return new cg(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[H6]){let X=this.createTransmission();A.materials[C].setExtension(H6,X);let G=J.extensions[H6];if(G.transmissionFactor!==void 0)X.setTransmissionFactor(G.transmissionFactor);if(G.transmissionTexture!==void 0){let W=G.transmissionTexture,F=A.textures[Y[W.index].source];X.setTransmissionTexture(F),A.setTextureInfo(X.getTransmissionTextureInfo(),W)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(H6);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[H6]={transmissionFactor:Y.getTransmissionFactor()};if(Y.getTransmissionTexture()){let G=Y.getTransmissionTexture(),W=Y.getTransmissionTextureInfo();X.transmissionTexture=A.createTextureInfoDef(G,W)}}}),this}}lg.EXTENSION_NAME=H6;class pg extends oB{init(){this.extensionName=X7,this.propertyType="Unlit",this.parentTypes=[YA.MATERIAL]}}pg.EXTENSION_NAME=X7;class F3 extends tB{constructor(...A){super(...A);this.extensionName=X7,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createUnlit(){return new pg(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){return(A.jsonDoc.json.materials||[]).forEach((B,Y)=>{if(B.extensions&&B.extensions[X7])A.materials[Y].setExtension(X7,this.createUnlit())}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{if(B.getExtension(X7)){let Y=A.materialIndexMap.get(B),J=Q.json.materials[Y];J.extensions=J.extensions||{},J.extensions[X7]={}}}),this}}F3.EXTENSION_NAME=X7;class ig extends oB{init(){this.extensionName=MJ,this.propertyType="Mapping",this.parentTypes=["MappingList"]}getDefaults(){return Object.assign(super.getDefaults(),{material:null,variants:new xB})}getMaterial(){return this.getRef("material")}setMaterial(A){return this.setRef("material",A)}addVariant(A){return this.addRef("variants",A)}removeVariant(A){return this.removeRef("variants",A)}listVariants(){return this.listRefs("variants")}}ig.EXTENSION_NAME=MJ;class ng extends oB{init(){this.extensionName=MJ,this.propertyType="MappingList",this.parentTypes=[YA.PRIMITIVE]}getDefaults(){return Object.assign(super.getDefaults(),{mappings:new xB})}addMapping(A){return this.addRef("mappings",A)}removeMapping(A){return this.removeRef("mappings",A)}listMappings(){return this.listRefs("mappings")}}ng.EXTENSION_NAME=MJ;class B3 extends oB{init(){this.extensionName=MJ,this.propertyType="Variant",this.parentTypes=["MappingList"]}}B3.EXTENSION_NAME=MJ;class sg extends tB{constructor(...A){super(...A);this.extensionName=MJ}createMappingList(){return new ng(this.document.getGraph())}createVariant(A=""){return new B3(this.document.getGraph(),A)}createMapping(){return new ig(this.document.getGraph())}listVariants(){return Array.from(this.properties).filter((A)=>A instanceof B3)}read(A){let Q=A.jsonDoc;if(!Q.json.extensions||!Q.json.extensions[MJ])return this;let J=(Q.json.extensions[MJ].variants||[]).map((X)=>this.createVariant().setName(X.name||""));return(Q.json.meshes||[]).forEach((X,G)=>{let W=A.meshes[G];(X.primitives||[]).forEach((Z,U)=>{if(!Z.extensions||!Z.extensions[MJ])return;let $=this.createMappingList(),E=Z.extensions[MJ];for(let K of E.mappings){let I=this.createMapping();if(K.material!==void 0)I.setMaterial(A.materials[K.material]);for(let V of K.variants||[])I.addVariant(J[V]);$.addMapping(I)}W.listPrimitives()[U].setExtension(MJ,$)})}),this}write(A){let Q=A.jsonDoc,B=this.listVariants();if(!B.length)return this;let Y=[],J=new Map;for(let C of B)J.set(C,Y.length),Y.push(A.createPropertyDef(C));for(let C of this.document.getRoot().listMeshes()){let X=A.meshIndexMap.get(C);C.listPrimitives().forEach((G,W)=>{let F=G.getExtension(MJ);if(!F)return;let Z=A.jsonDoc.json.meshes[X].primitives[W],U=F.listMappings().map(($)=>{let E=A.createPropertyDef($),K=$.getMaterial();if(K)E.material=A.materialIndexMap.get(K);return E.variants=$.listVariants().map((I)=>J.get(I)),E});Z.extensions=Z.extensions||{},Z.extensions[MJ]={mappings:U}})}return Q.json.extensions=Q.json.extensions||{},Q.json.extensions[MJ]={variants:Y},this}}sg.EXTENSION_NAME=MJ;var{G:bdQ}=k9;class rg extends oB{init(){this.extensionName=D6,this.propertyType="Volume",this.parentTypes=[YA.MATERIAL]}getDefaults(){return Object.assign(super.getDefaults(),{thicknessFactor:0,thicknessTexture:null,thicknessTextureInfo:new gB(this.graph,"thicknessTexture"),attenuationDistance:1/0,attenuationColor:[1,1,1]})}getThicknessFactor(){return this.get("thicknessFactor")}setThicknessFactor(A){return this.set("thicknessFactor",A)}getThicknessTexture(){return this.getRef("thicknessTexture")}getThicknessTextureInfo(){return this.getRef("thicknessTexture")?this.getRef("thicknessTextureInfo"):null}setThicknessTexture(A){return this.setRef("thicknessTexture",A,{channels:bdQ})}getAttenuationDistance(){return this.get("attenuationDistance")}setAttenuationDistance(A){return this.set("attenuationDistance",A)}getAttenuationColor(){return this.get("attenuationColor")}setAttenuationColor(A){return this.set("attenuationColor",A)}}rg.EXTENSION_NAME=D6;class ag extends tB{constructor(...A){super(...A);this.extensionName=D6,this.prereadTypes=[YA.MESH],this.prewriteTypes=[YA.MESH]}createVolume(){return new rg(this.document.getGraph())}read(A){return this}write(A){return this}preread(A){let Q=A.jsonDoc,B=Q.json.materials||[],Y=Q.json.textures||[];return B.forEach((J,C)=>{if(J.extensions&&J.extensions[D6]){let X=this.createVolume();A.materials[C].setExtension(D6,X);let G=J.extensions[D6];if(G.thicknessFactor!==void 0)X.setThicknessFactor(G.thicknessFactor);if(G.attenuationDistance!==void 0)X.setAttenuationDistance(G.attenuationDistance);if(G.attenuationColor!==void 0)X.setAttenuationColor(G.attenuationColor);if(G.thicknessTexture!==void 0){let W=G.thicknessTexture,F=A.textures[Y[W.index].source];X.setThicknessTexture(F),A.setTextureInfo(X.getThicknessTextureInfo(),W)}}}),this}prewrite(A){let Q=A.jsonDoc;return this.document.getRoot().listMaterials().forEach((B)=>{let Y=B.getExtension(D6);if(Y){let J=A.materialIndexMap.get(B),C=Q.json.materials[J];C.extensions=C.extensions||{};let X=C.extensions[D6]={};if(Y.getThicknessFactor()>0)X.thicknessFactor=Y.getThicknessFactor();if(Number.isFinite(Y.getAttenuationDistance()))X.attenuationDistance=Y.getAttenuationDistance();if(!kQ.eq(Y.getAttenuationColor(),[1,1,1]))X.attenuationColor=Y.getAttenuationColor();if(Y.getThicknessTexture()){let G=Y.getThicknessTexture(),W=Y.getThicknessTextureInfo();X.thicknessTexture=A.createTextureInfoDef(G,W)}}}),this}}ag.EXTENSION_NAME=D6;class tI extends tB{constructor(...A){super(...A);this.extensionName=G9A}read(A){return this}write(A){return this}}tI.EXTENSION_NAME=G9A;class K9A{match(A){return A[0]===171&&A[1]===75&&A[2]===84&&A[3]===88&&A[4]===32&&A[5]===50&&A[6]===48&&A[7]===187&&A[8]===13&&A[9]===10&&A[10]===26&&A[11]===10}getSize(A){let Q=A3(A);return[Q.pixelWidth,Q.pixelHeight]}getChannels(A){let B=A3(A).dataFormatDescriptor[0];if(B.colorModel===nJA)return B.samples.length===2&&(B.samples[1].channelType&15)===15?4:3;else if(B.colorModel===sJA)return(B.samples[0].channelType&15)===3?4:3;throw Error(`Unexpected KTX2 colorModel, "${B.colorModel}".`)}getVRAMByteLength(A){let Q=A3(A),B=this.getChannels(A)>3,Y=0;for(let J=0;J{if(Q.extensions&&Q.extensions[iI]){let B=Q.extensions[iI];Q.source=B.source}}),this}read(A){return this}write(A){let Q=A.jsonDoc;return this.document.getRoot().listTextures().forEach((B)=>{if(B.getMimeType()==="image/ktx2"){let Y=A.imageIndexMap.get(B);Q.json.textures.forEach((J)=>{if(J.source===Y)J.extensions=J.extensions||{},J.extensions[iI]={source:J.source},delete J.source})}}),this}}eI.EXTENSION_NAME=iI;class og extends oB{init(){this.extensionName=N6,this.propertyType="Transform",this.parentTypes=[YA.TEXTURE_INFO]}getDefaults(){return Object.assign(super.getDefaults(),{offset:[0,0],rotation:0,scale:[1,1],texCoord:null})}getOffset(){return this.get("offset")}setOffset(A){return this.set("offset",A)}getRotation(){return this.get("rotation")}setRotation(A){return this.set("rotation",A)}getScale(){return this.get("scale")}setScale(A){return this.set("scale",A)}getTexCoord(){return this.get("texCoord")}setTexCoord(A){return this.set("texCoord",A)}}og.EXTENSION_NAME=N6;class tg extends tB{constructor(...A){super(...A);this.extensionName=N6}createTransform(){return new og(this.document.getGraph())}read(A){for(let[Q,B]of Array.from(A.textureInfos.entries())){if(!B.extensions||!B.extensions[N6])continue;let Y=this.createTransform(),J=B.extensions[N6];if(J.offset!==void 0)Y.setOffset(J.offset);if(J.rotation!==void 0)Y.setRotation(J.rotation);if(J.scale!==void 0)Y.setScale(J.scale);if(J.texCoord!==void 0)Y.setTexCoord(J.texCoord);Q.setExtension(N6,Y)}return this}write(A){let Q=Array.from(A.textureInfoDefMap.entries());for(let[B,Y]of Q){let J=B.getExtension(N6);if(!J)continue;Y.extensions=Y.extensions||{};let C={},X=kQ.eq;if(!X(J.getOffset(),[0,0]))C.offset=J.getOffset();if(J.getRotation()!==0)C.rotation=J.getRotation();if(!X(J.getScale(),[1,1]))C.scale=J.getScale();if(J.getTexCoord()!=null)C.texCoord=J.getTexCoord();Y.extensions[N6]=C}return this}}tg.EXTENSION_NAME=N6;var mdQ=[YA.ROOT,YA.SCENE,YA.NODE,YA.MESH,YA.MATERIAL,YA.TEXTURE,YA.ANIMATION];class eg extends oB{init(){this.extensionName=$5,this.propertyType="Packet",this.parentTypes=mdQ}getDefaults(){return Object.assign(super.getDefaults(),{context:{},properties:{}})}getContext(){return this.get("context")}setContext(A){return this.set("context",L6({},A))}listProperties(){return Object.keys(this.get("properties"))}getProperty(A){let Q=this.get("properties");return A in Q?Q[A]:null}setProperty(A,Q){this._assertContext(A);let B=L6({},this.get("properties"));if(Q)B[A]=Q;else delete B[A];return this.set("properties",B)}toJSONLD(){let A=Mg(this.get("context")),Q=Mg(this.get("properties"));return L6({"@context":A},Q)}fromJSONLD(A){A=Mg(A);let Q=A["@context"];if(Q)this.set("context",Q);return delete A["@context"],this.set("properties",A)}_assertContext(A){if(!(A.split(":")[0]in this.get("context")))throw Error(`${$5}: Missing context for term, "${A}".`)}}eg.EXTENSION_NAME=$5;function Mg(A){return JSON.parse(JSON.stringify(A))}class Ah extends tB{constructor(...A){super(...A);this.extensionName=$5}createPacket(){return new eg(this.document.getGraph())}listPackets(){return Array.from(this.properties)}read(A){var Q;let B=(Q=A.jsonDoc.json.extensions)==null?void 0:Q[$5];if(!B||!B.packets)return this;let Y=A.jsonDoc.json,J=this.document.getRoot(),C=B.packets.map((W)=>this.createPacket().fromJSONLD(W)),X=[[Y.asset],Y.scenes,Y.nodes,Y.meshes,Y.materials,Y.images,Y.animations],G=[[J],J.listScenes(),J.listNodes(),J.listMeshes(),J.listMaterials(),J.listTextures(),J.listAnimations()];for(let W=0;W0)Q.extensions=Q.extensions||{},Q.extensions[$5]={packets:B};return this}}Ah.EXTENSION_NAME=$5;var udQ=[aI,jg,Pg,Sg,_g,yg,oI,X3,fg,G3,W3,ug,lg,F3,sg,ag,tI,eI,tg,Ah],aXY=[Y3,rI,J3,C3,...udQ];var $CA=qA(Qh(),1),UCA=qA(s5A(),1),ynQ=qA(ZCA(),1);async function gnQ(A,Q){if(!(A instanceof Uint8Array))throw Error("[ndarray-pixels] Input must be Uint8Array or Buffer.");let{data:B,info:Y}=await UCA.default(A).ensureAlpha().raw().toBuffer({resolveWithObject:!0});return $CA.default(new Uint8Array(B),[Y.width,Y.height,4],[4,4*Y.width|0,1],0)}async function ECA(A,Q){return gnQ(A)}var hnQ=qA(Qh(),1);function FU(){return FU=Object.assign?Object.assign.bind():function(A){for(var Q=1;QQ?"–":"+",J="%";return Y+(Math.abs(A-Q)/A*100).toFixed(B)+"%"}function h3(A,Q){return`${Th(A)} → ${Th(Q)} (${dnQ(A,Q)})`}function x3(A){let Q=[];for(let B of A.listAttributes())Q.push(B);for(let B of A.listTargets())for(let Y of B.listAttributes())Q.push(Y);return Array.from(new Set(Q))}function cnQ(A,Q,B){A.swap(Q,B);for(let Y of A.listTargets())Y.swap(Q,B)}function vCA(A){let Q=A.getIndices(),B=x3(A);if(A.dispose(),Q&&!Sh(Q))Q.dispose();for(let Y of B)if(!Sh(Y))Y.dispose()}function z6(A,Q){return A.createAccessor(Q.getName()).setArray(Q.getArray()).setType(Q.getType()).setBuffer(Q.getBuffer()).setNormalized(Q.getNormalized()).setSparse(Q.getSparse())}function lnQ(A,Q=A){let B=xh(A,Q);for(let Y=0;YQ.propertyType!==YA.ROOT)}function yCA(A){for(let Q in A)return!1;return!0}function gCA(A){let Q=LJ.fromGraph(A.getGraph()),B=A.getMaterial(),Y=Q.getRoot().listMaterials().indexOf(B),J=inQ[A.getMode()],C=!!A.getIndices(),X=A.listSemantics().sort().map((W)=>{let F=A.getAttribute(W),Z=F.getElementSize(),U=F.getComponentType();return`${W}:${Z}:${U}`}).join("+"),G=A.listTargets().map((W)=>{return W.listSemantics().sort().map((F)=>{let Z=A.getAttribute(F),U=Z.getElementSize(),$=Z.getComponentType();return`${F}:${U}:${$}`}).join("+")}).join("~");return`${Y}|${J}|${C}|${X}|${G}`}function pnQ(A){return Math.pow(2,Math.ceil(Math.log(A)/Math.LN2))}var inQ={[KCA]:KCA,[S3]:S3,[xnQ]:S3,[fnQ]:S3,[k3]:k3,[bnQ]:k3,[mnQ]:k3},GU="center",VCA={pivot:"center"};function hCA(A=VCA){let Q=R6(VCA,A);return iF(GU,(B)=>{let Y=B.getLogger(),J=B.getRoot(),C=J.listAnimations().length>0||J.listSkins().length>0;B.getRoot().listScenes().forEach((X,G)=>{Y.debug(`${GU}: Scene ${G+1} / ${J.listScenes().length}.`);let W;if(typeof Q.pivot==="string"){let Z=dI(X);if(W=[(Z.max[0]-Z.min[0])/2+Z.min[0],(Z.max[1]-Z.min[1])/2+Z.min[1],(Z.max[2]-Z.min[2])/2+Z.min[2]],Q.pivot==="above")W[1]=Z.max[1];if(Q.pivot==="below")W[1]=Z.min[1]}else W=Q.pivot;Y.debug(`${GU}: Pivot "${W.join(", ")}".`);let F=[-1*W[0],-1*W[1],-1*W[2]];if(C){Y.debug(`${GU}: Model contains animation or skin. Adding a wrapper node.`);let Z=B.createNode("Pivot").setTranslation(F);X.listChildren().forEach((U)=>Z.addChild(U)),X.addChild(Z)}else Y.debug(`${GU}: Skipping wrapper, offsetting all root nodes.`),X.listChildren().forEach((Z)=>{let U=Z.getTranslation();Z.setTranslation([U[0]+F[0],U[1]+F[1],U[2]+F[2]])})}),Y.debug(`${GU}: Complete.`)})}function nnQ(A){let Q=new Set,B=A,Y;while(Y=B.getParentNode()){if(Q.has(Y))throw Error("Circular dependency in scene graph.");Q.add(Y),B=Y}return B.listParents().filter((J)=>J instanceof p4)}function snQ(A){let Q=nnQ(A),B=A.getParentNode();if(!B)return A;A.setMatrix(A.getWorldMatrix()),B.removeChild(A);for(let Y of Q)Y.addChild(A);return A}var ZU=typeof Float32Array<"u"?Float32Array:Array;if(!Math.hypot)Math.hypot=function(){var A=0,Q=arguments.length;while(Q--)A+=arguments[Q]*arguments[Q];return Math.sqrt(A)};function rnQ(A,Q){var B=Q[0],Y=Q[1],J=Q[2],C=Q[3],X=Q[4],G=Q[5],W=Q[6],F=Q[7],Z=Q[8],U=Q[9],$=Q[10],E=Q[11],K=Q[12],I=Q[13],V=Q[14],H=Q[15],D=B*G-Y*X,L=B*W-J*X,z=B*F-C*X,M=Y*W-J*G,N=Y*F-C*G,q=J*F-C*W,w=Z*I-U*K,P=Z*V-$*K,_=Z*H-E*K,j=U*V-$*I,k=U*H-E*I,T=$*H-E*V,S=D*T-L*k+z*j+M*_-N*P+q*w;if(!S)return null;return S=1/S,A[0]=(G*T-W*k+F*j)*S,A[1]=(J*k-Y*T-C*j)*S,A[2]=(I*q-V*N+H*M)*S,A[3]=($*N-U*q-E*M)*S,A[4]=(W*_-X*T-F*P)*S,A[5]=(B*T-J*_+C*P)*S,A[6]=(V*z-K*q-H*L)*S,A[7]=(Z*q-$*z+E*L)*S,A[8]=(X*k-G*_+F*w)*S,A[9]=(Y*_-B*k-C*w)*S,A[10]=(K*N-I*z+H*D)*S,A[11]=(U*z-Z*N-E*D)*S,A[12]=(G*P-X*j-W*w)*S,A[13]=(B*j-Y*P+J*w)*S,A[14]=(I*L-K*M-V*D)*S,A[15]=(Z*M-U*L+$*D)*S,A}function anQ(A){var Q=A[0],B=A[1],Y=A[2],J=A[3],C=A[4],X=A[5],G=A[6],W=A[7],F=A[8],Z=A[9],U=A[10],$=A[11],E=A[12],K=A[13],I=A[14],V=A[15],H=Q*X-B*C,D=Q*G-Y*C,L=Q*W-J*C,z=B*G-Y*X,M=B*W-J*X,N=Y*W-J*G,q=F*K-Z*E,w=F*I-U*E,P=F*V-$*E,_=Z*I-U*K,j=Z*V-$*K,k=U*V-$*I;return H*k-D*j+L*_+z*P-M*w+N*q}function xCA(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=Q[3],G=Q[4],W=Q[5],F=Q[6],Z=Q[7],U=Q[8],$=Q[9],E=Q[10],K=Q[11],I=Q[12],V=Q[13],H=Q[14],D=Q[15],L=B[0],z=B[1],M=B[2],N=B[3];return A[0]=L*Y+z*G+M*U+N*I,A[1]=L*J+z*W+M*$+N*V,A[2]=L*C+z*F+M*E+N*H,A[3]=L*X+z*Z+M*K+N*D,L=B[4],z=B[5],M=B[6],N=B[7],A[4]=L*Y+z*G+M*U+N*I,A[5]=L*J+z*W+M*$+N*V,A[6]=L*C+z*F+M*E+N*H,A[7]=L*X+z*Z+M*K+N*D,L=B[8],z=B[9],M=B[10],N=B[11],A[8]=L*Y+z*G+M*U+N*I,A[9]=L*J+z*W+M*$+N*V,A[10]=L*C+z*F+M*E+N*H,A[11]=L*X+z*Z+M*K+N*D,L=B[12],z=B[13],M=B[14],N=B[15],A[12]=L*Y+z*G+M*U+N*I,A[13]=L*J+z*W+M*$+N*V,A[14]=L*C+z*F+M*E+N*H,A[15]=L*X+z*Z+M*K+N*D,A}var zJ;(function(A){A.RENDER="render",A.RENDER_CACHED="render-cached",A.UPLOAD="upload",A.UPLOAD_NAIVE="upload-naive",A.DISTINCT="distinct",A.DISTINCT_POSITION="distinct-position",A.UNUSED="unused"})(zJ||(zJ={}));function pF(A,Q){let B=A.getAttribute("POSITION"),Y=A.getIndices();switch(Q){case zJ.RENDER:return Y?Y.getCount():B.getCount();case zJ.RENDER_CACHED:return Y?new Set(Y.getArray()).size:B.getCount();case zJ.UPLOAD_NAIVE:case zJ.UPLOAD:return B.getCount();case zJ.DISTINCT:case zJ.DISTINCT_POSITION:return onQ(Q);case zJ.UNUSED:return Y?B.getCount()-new Set(Y.getArray()).size:0;default:return tnQ(Q)}}function onQ(A){throw Error(`Not implemented: ${A}`)}function tnQ(A){throw Error(`Unexpected value: ${A}`)}var U7=4294967295;class fCA{constructor(A){this.attributes=[],this.u8=void 0,this.u32=void 0;let Q=0;for(let B of x3(A))Q+=this._initAttribute(B);this.u8=new Uint8Array(Q),this.u32=new Uint32Array(this.u8.buffer)}_initAttribute(A){let Q=A.getArray(),B=new Uint8Array(Q.buffer,Q.byteOffset,Q.byteLength),Y=A.getElementSize()*A.getComponentSize(),J=jQ.padNumber(Y);return this.attributes.push({u8:B,byteStride:Y,paddedByteStride:J}),J}hash(A){let Q=0;for(let{u8:B,byteStride:Y,paddedByteStride:J}of this.attributes){for(let C=0;C>>0,X=(X^X>>24)>>>0,X=Math.imul(X,1540483477)>>>0,A=Math.imul(A,1540483477)>>>0,A=(A^X)>>>0}return A}function AsQ(A,Q,B,Y,J=U7){let C=Q-1,G=B.hash(Y)&C;for(let W=0;W<=C;W++){let F=A[G];if(F===J||B.equal(F,Y))return G;G=G+W+1&C}throw Error("Hash table full.")}function UH(A,Q,B){let Y=LJ.fromGraph(A.getGraph());if(!Q||!B)[Q,B]=QsQ(A);let J=A.getIndices(),C=J?J.getArray():null,X=pF(A,zJ.RENDER),G=Y.createAccessor(),W=X,F=xh(W,B);for(let U=0;U0)C=1/Math.sqrt(C);return A[0]=Q[0]*C,A[1]=Q[1]*C,A[2]=Q[2]*C,A}function GsQ(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2],X=B[3]*Y+B[7]*J+B[11]*C+B[15];return X=X||1,A[0]=(B[0]*Y+B[4]*J+B[8]*C+B[12])/X,A[1]=(B[1]*Y+B[5]*J+B[9]*C+B[13])/X,A[2]=(B[2]*Y+B[6]*J+B[10]*C+B[14])/X,A}function WsQ(A,Q,B){var Y=Q[0],J=Q[1],C=Q[2];return A[0]=Y*B[0]+J*B[3]+C*B[6],A[1]=Y*B[1]+J*B[4]+C*B[7],A[2]=Y*B[2]+J*B[5]+C*B[8],A}var FsQ=XsQ;(function(){var A=f3();return function(Q,B,Y,J,C,X){var G,W;if(!B)B=3;if(!Y)Y=0;if(J)W=Math.min(J*B+Y,Q.length);else W=Q.length;for(G=Y;G{let Y=B.getLogger();for(let J of B.getRoot().listMeshes()){for(let C of J.listPrimitives())if(b3(C,Q),pF(C,zJ.RENDER)===0)vCA(C);if(J.listPrimitives().length===0)J.dispose()}Y.debug(`${_h}: Complete.`)})}function b3(A,Q=v3){let B=A.getGraph(),J=LJ.fromGraph(B).getLogger(),C=FU({},v3,Q);if(A.getIndices()&&!C.overwrite)return;if(A.getMode()===q0.Mode.POINTS)return;let X=A.getAttribute("POSITION").getCount(),G=A.getIndices(),W=G==null?void 0:G.getArray(),F=G?G.getCount():X,Z=new fCA(A),U=pnQ(X+X/4),$=new Uint32Array(U).fill(U7),E=new Uint32Array(X).fill(U7),K=0;for(let I=0;IY instanceof cI&&Y!==Q))A=A.clone();for(let Y of A.listTargets())if(Y.listParents().some((C)=>C instanceof q0&&C!==A))A.removeTarget(Y).addTarget(Y.clone());return A}var NCA=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function uCA(A){let Q=A.getMesh(),B=A.getMatrix();if(Q&&!kQ.eq(B,NCA))UsQ(Q,B);for(let Y of A.listChildren()){let J=Y.getMatrix();xCA(J,J,B),Y.setMatrix(J)}return A.setMatrix(NCA)}var{LINES:KsQ,LINE_STRIP:VsQ,LINE_LOOP:IsQ,TRIANGLES:HsQ,TRIANGLE_STRIP:DsQ,TRIANGLE_FAN:NsQ}=q0.Mode;function LsQ(A){let Q=A.getGraph(),B=LJ.fromGraph(Q);if(!A.getIndices())b3(A);let Y=A.getIndices(),J=Y.getArray(),C=_CA(A),G=new J7[Y.getComponentType()](C*2),W=A.getMode();if(W===VsQ)for(let Z=0;ZZ!==F&&Z!==A))A.setIndices(z6(B,Y).setArray(G));else Y.setArray(G)}function dCA(A){let Q=A.getGraph(),B=LJ.fromGraph(Q);if(!A.getIndices())b3(A);let Y=A.getIndices(),J=Y.getArray(),C=_CA(A),G=new J7[Y.getComponentType()](C*3),W=A.getMode();if(W===DsQ)for(let Z=0,U=J.length;ZZ!==F&&Z!==A))A.setIndices(z6(B,Y).setArray(G));else Y.setArray(G)}var JGY={keepUniqueNames:!1,propertyTypes:[YA.ACCESSOR,YA.MESH,YA.TEXTURE,YA.MATERIAL,YA.SKIN]};var LCA="dequantize",y3={pattern:/^((?!JOINTS_).)*$/};function cCA(A=y3){let Q=R6(y3,A);return iF(LCA,(B)=>{let Y=B.getLogger();for(let J of B.getRoot().listMeshes())for(let C of J.listPrimitives())qsQ(C,Q);B.createExtension(tI).dispose(),Y.debug(`${LCA}: Complete.`)})}function qsQ(A,Q=y3){let B=R6(y3,Q);for(let Y of A.listSemantics())if(B.pattern.test(Y))vh(A.getAttribute(Y));for(let Y of A.listTargets())for(let J of Y.listSemantics())if(B.pattern.test(J))vh(Y.getAttribute(J))}function vh(A){let Q=A.getArray();if(!Q)return;let B=g3(Q,A.getComponentType(),A.getNormalized());A.setArray(B).setNormalized(!1)}function g3(A,Q,B){let Y=new Float32Array(A.length);for(let J=0,C=A.length;J{if(Y.propertyType===lCA)return Y;let J=B.get(Y);if(!J)J=new Y.constructor(A.getGraph()),B.set(Y,J);return J}}function RsQ(A){let Q=new Set;for(let B of A.getGraph().listEdges())Q.add(B.getChild());return Array.from(Q)}function iCA(){var A=new ZU(4);if(ZU!=Float32Array)A[0]=0,A[1]=0,A[2]=0,A[3]=0;return A}function wsQ(A,Q,B){return A[0]=Q[0]+B[0],A[1]=Q[1]+B[1],A[2]=Q[2]+B[2],A[3]=Q[3]+B[3],A}function jsQ(A,Q,B){return A[0]=Q[0]-B[0],A[1]=Q[1]-B[1],A[2]=Q[2]-B[2],A[3]=Q[3]-B[3],A}function OsQ(A,Q,B){return A[0]=Q[0]*B[0],A[1]=Q[1]*B[1],A[2]=Q[2]*B[2],A[3]=Q[3]*B[3],A}function PsQ(A,Q,B){return A[0]=Q[0]*B,A[1]=Q[1]*B,A[2]=Q[2]*B,A[3]=Q[3]*B,A}function TsQ(A){var Q=A[0],B=A[1],Y=A[2],J=A[3];return Math.hypot(Q,B,Y,J)}var nCA=jsQ,SsQ=OsQ,sCA=TsQ;(function(){var A=iCA();return function(Q,B,Y,J,C,X){var G,W;if(!B)B=4;if(!Y)Y=0;if(J)W=Math.min(J*B+Y,Q.length);else W=Q.length;for(G=Y;G{return J.getAttributes().isColor||ksQ.test(J.getName())})?"srgb":null}function vsQ(A){let Q=A.getGraph(),B=new Set,Y=new Set;function J(C){let X=new Set;for(let G of Q.listChildEdges(C))if(G.getChild()instanceof mF)X.add(G.getName()+"Info");for(let G of Q.listChildEdges(C)){let W=G.getChild();if(B.has(W))continue;if(B.add(W),W instanceof gB&&X.has(G.getName()))Y.add(W);else if(W instanceof oB)J(W)}}return J(A),Array.from(Y)}function ysQ(A){let B=LJ.fromGraph(A.getGraph()).getRoot(),Y=A.getGraph().listParentEdges(A).filter((J)=>J.getParent()!==B).map((J)=>J.getName());return Array.from(new Set(Y))}var WU="prune",yh=0.011764705882352941,qCA={propertyTypes:[YA.NODE,YA.SKIN,YA.MESH,YA.CAMERA,YA.PRIMITIVE,YA.PRIMITIVE_TARGET,YA.ANIMATION,YA.MATERIAL,YA.TEXTURE,YA.ACCESSOR,YA.BUFFER],keepLeaves:!1,keepAttributes:!1,keepIndices:!1,keepSolidTextures:!1,keepExtras:!1};function m3(A=qCA){let Q=R6(qCA,A),B=new Set(Q.propertyTypes),Y=Q.keepExtras;return iF(WU,async(J)=>{let C=J.getLogger(),X=J.getRoot(),G=J.getGraph(),W=new rCA,F=(Z)=>W.dispose(Z.target);if(G.addEventListener("node:dispose",F),B.has(YA.MESH))for(let Z of X.listMeshes()){if(Z.listPrimitives().length>0)continue;Z.dispose()}if(B.has(YA.NODE)){if(!Q.keepLeaves)for(let Z of X.listScenes())aCA(G,Z,Y);for(let Z of X.listNodes())K5(Z,Y)}if(B.has(YA.SKIN))for(let Z of X.listSkins())K5(Z,Y);if(B.has(YA.MESH))for(let Z of X.listMeshes())K5(Z,Y);if(B.has(YA.CAMERA))for(let Z of X.listCameras())K5(Z,Y);if(B.has(YA.PRIMITIVE))MCA(G,YA.PRIMITIVE,Y);if(B.has(YA.PRIMITIVE_TARGET))MCA(G,YA.PRIMITIVE_TARGET,Y);if(!Q.keepAttributes&&B.has(YA.ACCESSOR)){let Z=new Map;for(let U of X.listMeshes())for(let $ of U.listPrimitives()){let E=$.getMaterial();if(!E)continue;let K=oCA(J,$,E),I=gsQ($,K);zCA($,I),$.listTargets().forEach((V)=>zCA(V,I)),Z.has(E)?Z.get(E).add($):Z.set(E,new Set([$]))}for(let[U,$]of Z)hsQ(U,Array.from($))}if(B.has(YA.ANIMATION))for(let Z of X.listAnimations()){for(let U of Z.listChannels())if(!U.getTargetNode())U.dispose();if(!Z.listChannels().length){let U=Z.listSamplers();K5(Z,Y),U.forEach(($)=>K5($,Y))}else Z.listSamplers().forEach((U)=>K5(U,Y))}if(B.has(YA.MATERIAL))X.listMaterials().forEach((Z)=>K5(Z,Y));if(B.has(YA.TEXTURE)){if(X.listTextures().forEach((Z)=>K5(Z,Y)),!Q.keepSolidTextures)await xsQ(J)}if(B.has(YA.ACCESSOR))X.listAccessors().forEach((Z)=>K5(Z,Y));if(B.has(YA.BUFFER))X.listBuffers().forEach((Z)=>K5(Z,Y));if(G.removeEventListener("node:dispose",F),!W.empty()){let Z=W.entries().map(([U,$])=>`${U} (${$})`).join(", ");C.info(`${WU}: Removed types... ${Z}`)}else C.debug(`${WU}: No unused properties found.`);C.debug(`${WU}: Complete.`)})}class rCA{constructor(){this.disposed={}}empty(){for(let A in this.disposed)return!1;return!0}entries(){return Object.entries(this.disposed)}dispose(A){this.disposed[A.propertyType]=this.disposed[A.propertyType]||0,this.disposed[A.propertyType]++}}function K5(A,Q){let B=A.listParents().filter((J)=>!(J instanceof i4||J instanceof C6)),Y=Q&&!yCA(A.getExtras());if(!B.length&&!Y)A.dispose()}function MCA(A,Q,B){for(let Y of A.listEdges()){let J=Y.getParent();if(J.propertyType===Q)K5(J,B)}}function aCA(A,Q,B){if(Q.listChildren().forEach((X)=>aCA(A,X,B)),Q instanceof p4)return;let Y=A.listParentEdges(Q).some((X)=>{let G=X.getParent().propertyType;return G!==YA.ROOT&&G!==YA.SCENE&&G!==YA.NODE}),J=A.listChildren(Q).length===0,C=B&&!yCA(Q.getExtras());if(J&&!Y&&!C)Q.dispose()}function zCA(A,Q){for(let B of Q)A.setAttribute(B,null)}function gsQ(A,Q){let B=[];for(let Y of A.listSemantics())if(Y==="NORMAL"&&!Q.has(Y))B.push(Y);else if(Y==="TANGENT"&&!Q.has(Y))B.push(Y);else if(Y.startsWith("TEXCOORD_")&&!Q.has(Y))B.push(Y);else if(Y.startsWith("COLOR_")&&Y!=="COLOR_0")B.push(Y);return B}function oCA(A,Q,B,Y=new Set){let C=A.getGraph().listChildEdges(B),X=new Set;for(let F of C)if(F.getChild()instanceof mF)X.add(F.getName());for(let F of C){let Z=F.getName(),U=F.getChild();if(U instanceof gB){if(X.has(Z.replace(/Info$/,"")))Y.add(`TEXCOORD_${U.getTexCoord()}`)}if(U instanceof mF&&Z.match(/normalTexture/i))Y.add("TANGENT");if(U instanceof oB)oCA(A,Q,U,Y)}let G=B instanceof y1&&!B.getExtension("KHR_materials_unlit"),W=Q.getMode()===q0.Mode.POINTS;if(G&&!W)Y.add("NORMAL");return Y}function hsQ(A,Q){let B=vsQ(A),Y=new Set(B.map((W)=>W.getTexCoord())),J=Array.from(Y).sort(),C=new Map(J.map((W,F)=>[W,F])),X=new Map(J.map((W,F)=>[`TEXCOORD_${W}`,`TEXCOORD_${F}`]));for(let W of B){let F=W.getTexCoord();W.setTexCoord(C.get(F))}for(let W of Q){let F=W.listSemantics().filter((Z)=>Z.startsWith("TEXCOORD_")).sort();G(W,F),W.listTargets().forEach((Z)=>G(Z,F))}function G(W,F){for(let Z of F){let U=W.getAttribute(Z);if(!U)continue;let $=X.get(Z);if($===Z)continue;W.setAttribute($,U),W.setAttribute(Z,null)}}}async function xsQ(A){let Q=A.getRoot(),B=A.getGraph(),Y=A.getLogger(),C=Q.listTextures().map(async(X)=>{var G;let W=await bsQ(X);if(!W)return;if(_sQ(X)==="srgb")Hg.convertSRGBToLinear(W,W);let F=X.getName()||X.getURI(),Z=(G=X.getSize())==null?void 0:G.join("x"),U=ysQ(X);for(let $ of B.listParentEdges(X)){let E=$.getParent();if(E!==Q&&fsQ(E,W,$.getName(),Y))$.dispose()}if(X.listParents().length===1)X.dispose(),Y.debug(`${WU}: Removed solid-color texture "${F}" (${Z}px ${U.join(", ")})`)});await Promise.all(C)}function fsQ(A,Q,B,Y){if(A instanceof y1)switch(B){case"baseColorTexture":return A.setBaseColorFactor(SsQ(Q,Q,A.getBaseColorFactor())),!0;case"emissiveTexture":return A.setEmissiveFactor(FsQ([0,0,0],Q.slice(0,3),A.getEmissiveFactor())),!0;case"occlusionTexture":return Math.abs(Q[0]-1)<=yh;case"metallicRoughnessTexture":return A.setRoughnessFactor(Q[1]*A.getRoughnessFactor()),A.setMetallicFactor(Q[2]*A.getMetallicFactor()),!0;case"normalTexture":return sCA(nCA(iCA(),Q,[0.5,0.5,1,1]))<=yh}return Y.warn(`${WU}: Detected single-color ${B} texture. Pruning ${B} not yet supported.`),!1}async function bsQ(A){let Q=await msQ(A);if(!Q)return null;let B=[1/0,1/0,1/0,1/0],Y=[-1/0,-1/0,-1/0,-1/0],J=[0,0,0,0],[C,X]=Q.shape;for(let G=0;Gyh)return null}return PsQ(J,wsQ(J,Y,B),0.00196078431372549)}async function msQ(A){try{return await ECA(A.getImage(),A.getMimeType())}catch(Q){return null}}var Oh="flatten",RCA={cleanup:!0};function mh(A=RCA){let Q=R6(RCA,A);return iF(Oh,async(B)=>{let Y=B.getRoot(),J=B.getLogger(),C=new Set;for(let F of Y.listSkins())for(let Z of F.listJoints())C.add(Z);let X=new Set;for(let F of Y.listAnimations())for(let Z of F.listChannels()){let U=Z.getTargetNode();if(U&&Z.getTargetPath()!=="weights")X.add(U)}let G=new Set,W=new Set;for(let F of Y.listScenes())F.traverse((Z)=>{let U=Z.getParentNode();if(!U)return;if(C.has(U)||G.has(U))G.add(Z);if(X.has(U)||W.has(U))W.add(Z)});for(let F of Y.listScenes())F.traverse((Z)=>{if(X.has(Z))return;if(G.has(Z))return;if(W.has(Z))return;snQ(Z)});if(X.size)J.debug(`${Oh}: Flattening node hierarchies with TRS animation not yet supported.`);if(Q.cleanup)await B.transform(m3({propertyTypes:[YA.NODE],keepLeaves:!1}));J.debug(`${Oh}: Complete.`)})}function tCA(A){return dI(A)}var usQ={skipValidation:!1},wCA=4294967295,{LINE_STRIP:dsQ,LINE_LOOP:csQ,TRIANGLE_STRIP:lsQ,TRIANGLE_FAN:psQ}=q0.Mode;function isQ(A,Q={}){let B=R6(usQ,Q),Y=A[0],J=LJ.fromGraph(Y.getGraph());if(!B.skipValidation&&new Set(A.map(gCA)).size>1)throw Error("Requires >=2 Primitives, sharing the same Material and Mode, with compatible vertex attributes and indices.");for(let E of A)switch(E.getMode()){case dsQ:case csQ:LsQ(E);break;case lsQ:case psQ:dCA(E);break}let C=[],X=new Uint32Array(A.length),G=0,W=0;for(let E=0;E!0};function uh(A=jCA){let Q=R6(jCA,A);return iF(gh,async(B)=>{let Y=B.getRoot(),J=B.getLogger();for(let C of Y.listScenes())OCA(B,C,Q),C.traverse((X)=>OCA(B,X,Q));if(Q.cleanup)await B.transform(m3({propertyTypes:[asQ,osQ,tsQ,esQ],keepAttributes:!0,keepIndices:!0,keepLeaves:!1}));J.debug(`${gh}: Complete.`)})}function OCA(A,Q,B){let Y=A.getLogger(),J={},C=Q.listChildren();for(let W=0;W$ instanceof C6))continue;let U=F.getMesh();if(!U)continue;if(F.getExtension("EXT_mesh_gpu_instancing"))continue;if(F.getSkin())continue;for(let $ of U.listPrimitives()){if($.listTargets().length>0)continue;let E=$.getMaterial();if(E&&E.getExtension("KHR_materials_volume"))continue;UH($),QrQ($);let K=gCA($),I=U.getName()||F.getName();if(B.keepMeshes||B.keepNamed&&I)K+=`|${W}`;if(!(K in J))J[K]={prims:[],primMeshes:[],primNodes:[],dstNode:F,dstMesh:void 0};let V=J[K];V.prims.push($),V.primNodes.push(F)}}let X=Object.values(J).filter(({prims:W})=>W.length>1),G=new Set(X.flatMap((W)=>W.primNodes));for(let W of G){let F=W.getMesh();if(F.listParents().some((U)=>{return U.propertyType!==rsQ&&W!==U}))W.setMesh(F.clone())}for(let W of X){let{dstNode:F,primNodes:Z}=W;W.dstMesh=F.getMesh(),W.primMeshes=Z.map((U)=>U.getMesh())}for(let W of X){let{prims:F,primNodes:Z,primMeshes:U,dstNode:$,dstMesh:E}=W,K=$.getMatrix();for(let H=0;H=Math.PI}else if(B==="lerp"){let H=WrQ(C,W,G,I);V=!_3(X,H,Y)}else if(B==="step")V=!_3(X,W)||!_3(X,G)}if(V){if(U!==Z)A[Z]=A[U],SCA(Q,Z,$H(Q,U,C));Z++}}if(F>0)A[Z]=A[F],SCA(Q,Z,$H(Q,F,C)),Z++;return Z}function $H(A,Q,B){for(let Y=0,J=B.length;YB)return!1;return!0}function GrQ(A,Q,B){return A*(1-B)+Q*B}function WrQ(A,Q,B,Y){for(let J=0;JCrQ)$=Math.acos(E),K=Math.sin($),I=Math.sin((1-Y)*$)/K,V=Math.sin(Y*$)/K;else I=1-Y,V=Y;return A[0]=I*J+V*W,A[1]=I*C+V*F,A[2]=I*X+V*Z,A[3]=I*G+V*U,A}function kCA(A,Q){let B=ZrQ(A,Q);return Math.acos(2*B*B-1)}function ZrQ(A,Q){return A[0]*Q[0]+A[1]*Q[1]+A[2]*Q[2]+A[3]*Q[3]}var $GY=new Float32Array(0),UGY={ready:Promise.resolve(),resample:XrQ,tolerance:0.0001,cleanup:!0};var lF="simplify",{POINTS:eCA,LINES:$rQ,LINE_STRIP:UrQ,LINE_LOOP:ErQ,TRIANGLES:KrQ,TRIANGLE_STRIP:A1A,TRIANGLE_FAN:Q1A}=q0.Mode,B1A={ratio:0,error:0.0001,lockBorder:!1};function Y1A(A){let Q=R6(B1A,A),B=Q.simplifier;if(!B)throw Error(`${lF}: simplifier dependency required — install "meshoptimizer".`);return iF(lF,async(Y)=>{let J=Y.getLogger();await B.ready,await Y.transform(fh({overwrite:!1}));let C=0;for(let X of Y.getRoot().listMeshes()){for(let G of X.listPrimitives()){let W=G.getMode();if(W!==KrQ&&W!==A1A&&W!==Q1A&&W!==eCA){C++;continue}if(VrQ(G,Q),pF(G,zJ.RENDER)===0)vCA(G)}if(X.listPrimitives().length===0)X.dispose()}if(C>0)J.warn(`${lF}: Skipped ${C} primitives: Unsupported draw mode.`);J.debug(`${lF}: Complete.`)})}function VrQ(A,Q){let B=FU({},B1A,Q),Y=B.simplifier,J=A.getGraph(),C=LJ.fromGraph(J),X=C.getLogger();switch(A.getMode()){case eCA:return IrQ(C,A,B);case $rQ:case UrQ:case ErQ:return X.warn(`${lF}: Skipping primitive simplification: Unsupported draw mode.`),A;case A1A:case Q1A:dCA(A);break}let G=pF(A,zJ.UPLOAD),W=pF(A,zJ.RENDER);if(W($&A)/J*256/W,shiftGreen:($)=>($&Q)/C*256/F,shiftBlue:($)=>($&B)/X*256/Z,shiftAlpha:Y!==0?($)=>($&Y)/G*256/U:()=>255}}var w6;(function(A){A[A.NONE=0]="NONE",A[A.BI_RLE8=1]="BI_RLE8",A[A.BI_RLE4=2]="BI_RLE4",A[A.BI_BIT_FIELDS=3]="BI_BIT_FIELDS",A[A.BI_ALPHA_BIT_FIELDS=6]="BI_ALPHA_BIT_FIELDS"})(w6||(w6={}));class p3{flag;fileSize;reserved1;reserved2;offset;headerSize;width;height;planes;bitPP;compression;rawSize;hr;vr;colors;importantColors;palette;data;maskRed;maskGreen;maskBlue;maskAlpha;toRGBA;pos;bottomUp;buffer;locRed;locGreen;locBlue;locAlpha;shiftRed;shiftGreen;shiftBlue;shiftAlpha;constructor(A,{toRGBA:Q}={toRGBA:!1}){if(this.buffer=A,this.toRGBA=!!Q,this.pos=0,this.bottomUp=!0,this.flag=this.buffer.toString("utf-8",0,this.pos+=2),this.flag!=="BM")throw Error("Invalid BMP File");this.locRed=this.toRGBA?0:3,this.locGreen=this.toRGBA?1:2,this.locBlue=this.toRGBA?2:1,this.locAlpha=this.toRGBA?3:0,this.parseHeader(),this.parseRGBA()}parseHeader(){if(this.fileSize=this.readUInt32LE(),this.reserved1=this.buffer.readUInt16LE(this.pos),this.pos+=2,this.reserved2=this.buffer.readUInt16LE(this.pos),this.pos+=2,this.offset=this.readUInt32LE(),this.headerSize=this.readUInt32LE(),!(this.headerSize in V5))throw Error(`Unsupported BMP header size ${this.headerSize}`);if(this.width=this.readUInt32LE(),this.height=this.readUInt32LE(),this.height=this.height>2147483647?this.height-4294967296:this.height,this.planes=this.buffer.readUInt16LE(this.pos),this.pos+=2,this.bitPP=this.buffer.readUInt16LE(this.pos),this.pos+=2,this.compression=this.readUInt32LE(),this.rawSize=this.readUInt32LE(),this.hr=this.readUInt32LE(),this.vr=this.readUInt32LE(),this.colors=this.readUInt32LE(),this.importantColors=this.readUInt32LE(),this.bitPP===32)this.maskAlpha=0,this.maskRed=16711680,this.maskGreen=65280,this.maskBlue=255;else if(this.bitPP===16)this.maskAlpha=0,this.maskRed=31744,this.maskGreen=992,this.maskBlue=31;if(this.headerSize>V5.BITMAP_INFO_HEADER||this.compression===w6.BI_BIT_FIELDS||this.compression===w6.BI_ALPHA_BIT_FIELDS)this.maskRed=this.readUInt32LE(),this.maskGreen=this.readUInt32LE(),this.maskBlue=this.readUInt32LE();if(this.headerSize>V5.BITMAP_V2_INFO_HEADER||this.compression===w6.BI_ALPHA_BIT_FIELDS)this.maskAlpha=this.readUInt32LE();if(this.headerSize>V5.BITMAP_V3_INFO_HEADER)this.pos+=V5.BITMAP_V4_HEADER-V5.BITMAP_V3_INFO_HEADER;if(this.headerSize>V5.BITMAP_V4_HEADER)this.pos+=V5.BITMAP_V5_HEADER-V5.BITMAP_V4_HEADER;if(this.bitPP<=8||this.colors>0){let Q=this.colors===0?1<{if(C!==Y)Y=C;let X=this.buffer.readUInt8(this.pos++),G=C*this.width*4+J*8*4;for(let W=0;W<8;W++)if(J*8+W>7-W&1];this.data[G+W*this.locAlpha]=0,this.data[G+W*4+this.locBlue]=F.blue,this.data[G+W*4+this.locGreen]=F.green,this.data[G+W*4+this.locRed]=F.red}else break})}bit4(){if(this.compression===w6.BI_RLE4){this.data.fill(0);let A=!1,Q=this.bottomUp?this.height-1:0,B=0;while(B>4),X&1&&X+1>1&1)===1)this.pos++}}else for(let C=0;C>4),A=!A}}else{let A=Math.ceil(this.width/2),Q=A%4,B=Q!==0?4-Q:0;this.scanImage(B,A,(Y,J)=>{let C=this.buffer.readUInt8(this.pos++),X=J*this.width*4+Y*2*4,G=C>>4,W=this.palette[G];if(this.data[X]=0,this.data[X+1]=W.blue,this.data[X+2]=W.green,this.data[X+3]=W.red,Y*2+1>=this.width)return!1;let F=C&15;W=this.palette[F],this.data[X+4]=0,this.data[X+4+1]=W.blue,this.data[X+4+2]=W.green,this.data[X+4+3]=W.red})}}bit8(){if(this.compression===w6.BI_RLE8){this.data.fill(0);let A=this.bottomUp?this.height-1:0,Q=0;while(Q{let J=this.buffer.readUInt8(this.pos++),C=Y*this.width*4+B*4;if(J{let Y=B*this.width*4+Q*4,J=this.buffer.readUInt16LE(this.pos);this.pos+=2,this.data[Y+this.locRed]=this.shiftRed(J),this.data[Y+this.locGreen]=this.shiftGreen(J),this.data[Y+this.locBlue]=this.shiftBlue(J),this.data[Y+this.locAlpha]=this.shiftAlpha(J)})}bit24(){let A=this.width%4;this.scanImage(A,this.width,(Q,B)=>{let Y=B*this.width*4+Q*4,J=this.buffer.readUInt8(this.pos++),C=this.buffer.readUInt8(this.pos++),X=this.buffer.readUInt8(this.pos++);this.data[Y+this.locRed]=X,this.data[Y+this.locGreen]=C,this.data[Y+this.locBlue]=J,this.data[Y+this.locAlpha]=0})}bit32(){this.scanImage(0,this.width,(A,Q)=>{let B=Q*this.width*4+A*4,Y=this.readUInt32LE();this.data[B+this.locRed]=this.shiftRed(Y),this.data[B+this.locGreen]=this.shiftGreen(Y),this.data[B+this.locBlue]=this.shiftBlue(Y),this.data[B+this.locAlpha]=this.shiftAlpha(Y)})}scanImage(A=0,Q=this.width,B){for(let Y=this.height-1;Y>=0;Y--){let J=this.bottomUp?Y:this.height-1-Y;for(let C=0;CQ<<1|B,0)}function sh(A){return A.quad<<24|A.red<<16|A.green<<8|A.blue}class i3{fileSize;reserved1;reserved2;offset;width;flag;height;planes;bitPP;compress;hr;vr;colors;importantColors;rawSize;headerSize;data;palette;extraBytes;buffer;bytesInColor;pos;constructor(A){if(this.buffer=A.data,this.width=A.width,this.height=A.height,this.headerSize=V5.BITMAP_INFO_HEADER,this.flag="BM",this.bitPP=A.bitPP||24,this.offset=54,this.reserved1=A.reserved1||0,this.reserved2=A.reserved2||0,this.planes=1,this.compress=0,this.hr=A.hr||0,this.vr=A.vr||0,this.importantColors=A.importantColors||0,this.colors=Math.min(2**(this.bitPP-1||1),A.colors||1/0),this.palette=A.palette||[],this.colors&&this.bitPP<16)this.offset+=this.colors*4;else this.colors=0;switch(this.bitPP){case 32:this.bytesInColor=4;break;case 16:this.bytesInColor=2;break;case 8:this.bytesInColor=1;break;case 4:this.bytesInColor=0.5;break;case 1:this.bytesInColor=0.125;break;default:this.bytesInColor=3,this.bitPP=24}let Q=this.width*this.bitPP/32,B=Math.ceil(Q);this.extraBytes=(B-Q)*4,this.rawSize=this.height*B*4+2,this.fileSize=this.rawSize+this.offset,this.data=Buffer.alloc(this.fileSize,1),this.pos=0,this.encode()}encode(){switch(this.pos=0,this.writeHeader(),this.bitPP){case 32:this.bit32();break;case 16:this.bit16();break;case 8:this.bit8();break;case 4:this.bit4();break;case 1:this.bit1();break;default:this.bit24()}}writeHeader(){this.data.write(this.flag,this.pos,2),this.pos+=2,this.writeUInt32LE(this.fileSize),this.writeUInt32LE(this.reserved1<<16|this.reserved2),this.writeUInt32LE(this.offset),this.writeUInt32LE(this.headerSize),this.writeUInt32LE(this.width),this.writeUInt32LE(this.height),this.data.writeUInt16LE(this.planes,this.pos),this.pos+=2,this.data.writeUInt16LE(this.bitPP,this.pos),this.pos+=2,this.writeUInt32LE(this.compress),this.writeUInt32LE(this.rawSize),this.writeUInt32LE(this.hr),this.writeUInt32LE(this.vr),this.writeUInt32LE(this.colors),this.writeUInt32LE(this.importantColors)}bit1(){if(this.palette.length&&this.colors===2)this.initColors(1);else this.writeUInt32LE(16777215),this.writeUInt32LE(0);this.pos+=1;let A=[];this.writeImage((Q,B,Y)=>{let J=B;J++;let C=this.buffer[J++],X=this.buffer[J++],W=this.buffer[J++]*0.2126+X*0.7152+C*0.0722;if(A.push(W>127?0:1),(Y+1)%8===0)this.data[Q-1]=Z1A(A),A=[];else if(Y===this.width-1&&A.length>0)this.data[Q-1]=Z1A(A)<<4,A=[];return J})}bit4(){let A=this.initColors(4),Q=[];this.writeImage((B,Y,J)=>{let C=Y,X=sh({quad:this.buffer[C++],blue:this.buffer[C++],green:this.buffer[C++],red:this.buffer[C++]}),G=A.findIndex((W)=>W===X);if(G!==-1)Q.push(G);else Q.push(0);if((J+1)%2===0)this.data[B]=Q[0]<<4|Q[1],Q=[];return C})}bit8(){let A=this.initColors(8);this.writeImage((Q,B)=>{let Y=B,J=sh({quad:this.buffer[Y++],blue:this.buffer[Y++],green:this.buffer[Y++],red:this.buffer[Y++]}),C=A.findIndex((X)=>X===J);if(C!==-1)this.data[Q]=C;else this.data[Q]=0;return Y})}bit16(){this.writeImage((A,Q)=>{let B=Q+1,Y=this.buffer[B++]/8,J=this.buffer[B++]/8,X=this.buffer[B++]/8<<10|J<<5|Y;return this.data[A]=X&255,this.data[A+1]=(X&65280)>>8,B})}bit24(){this.writeImage((A,Q)=>{let B=Q+1;return this.data[A]=this.buffer[B++],this.data[A+1]=this.buffer[B++],this.data[A+2]=this.buffer[B++],B})}bit32(){this.writeImage((A,Q)=>{let B=Q;return this.data[A+3]=this.buffer[B++],this.data[A]=this.buffer[B++],this.data[A+1]=this.buffer[B++],this.data[A+2]=this.buffer[B++],B})}writeImage(A){let Q=this.extraBytes+this.width*this.bytesInColor,B=0;for(let Y=0;Y=0,C=!B&&J&&(Q==="hex"||Q==="hex6"||Q==="hex3"||Q==="hex4"||Q==="hex8"||Q==="name");if(C){if(Q==="name"&&this._a===0)return this.toName();return this.toRgbString()}if(Q==="rgb")Y=this.toRgbString();if(Q==="prgb")Y=this.toPercentageRgbString();if(Q==="hex"||Q==="hex6")Y=this.toHexString();if(Q==="hex3")Y=this.toHexString(!0);if(Q==="hex4")Y=this.toHex8String(!0);if(Q==="hex8")Y=this.toHex8String();if(Q==="name")Y=this.toName();if(Q==="hsl")Y=this.toHslString();if(Q==="hsv")Y=this.toHsvString();return Y||this.toHexString()},clone:function(){return oA(this.toString())},_applyModification:function(Q,B){var Y=Q.apply(null,[this].concat([].slice.call(B)));return this._r=Y._r,this._g=Y._g,this._b=Y._b,this.setAlpha(Y._a),this},lighten:function(){return this._applyModification(_rQ,arguments)},brighten:function(){return this._applyModification(vrQ,arguments)},darken:function(){return this._applyModification(yrQ,arguments)},desaturate:function(){return this._applyModification(TrQ,arguments)},saturate:function(){return this._applyModification(SrQ,arguments)},greyscale:function(){return this._applyModification(krQ,arguments)},spin:function(){return this._applyModification(grQ,arguments)},_applyCombination:function(Q,B){return Q.apply(null,[this].concat([].slice.call(B)))},analogous:function(){return this._applyCombination(frQ,arguments)},complement:function(){return this._applyCombination(hrQ,arguments)},monochromatic:function(){return this._applyCombination(brQ,arguments)},splitcomplement:function(){return this._applyCombination(xrQ,arguments)},triad:function(){return this._applyCombination(H1A,[3])},tetrad:function(){return this._applyCombination(H1A,[4])}};oA.fromRatio=function(A,Q){if(n3(A)=="object"){var B={};for(var Y in A)if(A.hasOwnProperty(Y))if(Y==="a")B[Y]=A[Y];else B[Y]=HH(A[Y]);A=B}return oA(A,Q)};function RrQ(A){var Q={r:0,g:0,b:0},B=1,Y=null,J=null,C=null,X=!1,G=!1;if(typeof A=="string")A=lrQ(A);if(n3(A)=="object"){if(j6(A.r)&&j6(A.g)&&j6(A.b))Q=wrQ(A.r,A.g,A.b),X=!0,G=String(A.r).substr(-1)==="%"?"prgb":"rgb";else if(j6(A.h)&&j6(A.s)&&j6(A.v))Y=HH(A.s),J=HH(A.v),Q=OrQ(A.h,Y,J),X=!0,G="hsv";else if(j6(A.h)&&j6(A.s)&&j6(A.l))Y=HH(A.s),C=HH(A.l),Q=jrQ(A.h,Y,C),X=!0,G="hsl";if(A.hasOwnProperty("a"))B=A.a}return B=N1A(B),{ok:X,format:A.format||G,r:Math.min(255,Math.max(Q.r,0)),g:Math.min(255,Math.max(Q.g,0)),b:Math.min(255,Math.max(Q.b,0)),a:B}}function wrQ(A,Q,B){return{r:M0(A,255)*255,g:M0(Q,255)*255,b:M0(B,255)*255}}function E1A(A,Q,B){A=M0(A,255),Q=M0(Q,255),B=M0(B,255);var Y=Math.max(A,Q,B),J=Math.min(A,Q,B),C,X,G=(Y+J)/2;if(Y==J)C=X=0;else{var W=Y-J;switch(X=G>0.5?W/(2-Y-J):W/(Y+J),Y){case A:C=(Q-B)/W+(Q1)U-=1;if(U<0.16666666666666666)return F+(Z-F)*6*U;if(U<0.5)return Z;if(U<0.6666666666666666)return F+(Z-F)*(0.6666666666666666-U)*6;return F}if(Q===0)Y=J=C=B;else{var G=B<0.5?B*(1+Q):B+Q-B*Q,W=2*B-G;Y=X(W,G,A+0.3333333333333333),J=X(W,G,A),C=X(W,G,A-0.3333333333333333)}return{r:Y*255,g:J*255,b:C*255}}function K1A(A,Q,B){A=M0(A,255),Q=M0(Q,255),B=M0(B,255);var Y=Math.max(A,Q,B),J=Math.min(A,Q,B),C,X,G=Y,W=Y-J;if(X=Y===0?0:W/Y,Y==J)C=0;else{switch(Y){case A:C=(Q-B)/W+(Q>1)+720)%360;--Q;)Y.h=(Y.h+J)%360,C.push(oA(Y));return C}function brQ(A,Q){Q=Q||6;var B=oA(A).toHsv(),Y=B.h,J=B.s,C=B.v,X=[],G=1/Q;while(Q--)X.push(oA({h:Y,s:J,v:C})),C=(C+G)%1;return X}oA.mix=function(A,Q,B){B=B===0?0:B||50;var Y=oA(A).toRgb(),J=oA(Q).toRgb(),C=B/100,X={r:(J.r-Y.r)*C+Y.r,g:(J.g-Y.g)*C+Y.g,b:(J.b-Y.b)*C+Y.b,a:(J.a-Y.a)*C+Y.a};return oA(X)};oA.readability=function(A,Q){var B=oA(A),Y=oA(Q);return(Math.max(B.getLuminance(),Y.getLuminance())+0.05)/(Math.min(B.getLuminance(),Y.getLuminance())+0.05)};oA.isReadable=function(A,Q,B){var Y=oA.readability(A,Q),J,C;switch(C=!1,J=prQ(B),J.level+J.size){case"AAsmall":case"AAAlarge":C=Y>=4.5;break;case"AAlarge":C=Y>=3;break;case"AAAsmall":C=Y>=7;break}return C};oA.mostReadable=function(A,Q,B){var Y=null,J=0,C,X,G,W;B=B||{},X=B.includeFallbackColors,G=B.level,W=B.size;for(var F=0;FJ)J=C,Y=oA(Q[F]);if(oA.isReadable(A,Y,{level:G,size:W})||!X)return Y;else return B.includeFallbackColors=!1,oA.mostReadable(A,["#fff","#000"],B)};var rh=oA.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},mrQ=oA.hexNames=urQ(rh);function urQ(A){var Q={};for(var B in A)if(A.hasOwnProperty(B))Q[A[B]]=B;return Q}function N1A(A){if(A=parseFloat(A),isNaN(A)||A<0||A>1)A=1;return A}function M0(A,Q){if(drQ(A))A="100%";var B=crQ(A);if(A=Math.min(Q,Math.max(0,parseFloat(A))),B)A=parseInt(A*Q,10)/100;if(Math.abs(A-Q)<0.000001)return 1;return A%Q/parseFloat(Q)}function s3(A){return Math.min(1,Math.max(0,A))}function E8(A){return parseInt(A,16)}function drQ(A){return typeof A=="string"&&A.indexOf(".")!=-1&&parseFloat(A)===1}function crQ(A){return typeof A==="string"&&A.indexOf("%")!=-1}function SC(A){return A.length==1?"0"+A:""+A}function HH(A){if(A<=1)A=A*100+"%";return A}function L1A(A){return Math.round(parseFloat(A)*255).toString(16)}function D1A(A){return E8(A)/255}var TC=function(){var A="[-\\+]?\\d+%?",Q="[-\\+]?\\d*\\.\\d+%?",B="(?:"+Q+")|(?:"+A+")",Y="[\\s|\\(]+("+B+")[,|\\s]+("+B+")[,|\\s]+("+B+")\\s*\\)?",J="[\\s|\\(]+("+B+")[,|\\s]+("+B+")[,|\\s]+("+B+")[,|\\s]+("+B+")\\s*\\)?";return{CSS_UNIT:new RegExp(B),rgb:new RegExp("rgb"+Y),rgba:new RegExp("rgba"+J),hsl:new RegExp("hsl"+Y),hsla:new RegExp("hsla"+J),hsv:new RegExp("hsv"+Y),hsva:new RegExp("hsva"+J),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/}}();function j6(A){return!!TC.CSS_UNIT.exec(A)}function lrQ(A){A=A.replace(MrQ,"").replace(zrQ,"").toLowerCase();var Q=!1;if(rh[A])A=rh[A],Q=!0;else if(A=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var B;if(B=TC.rgb.exec(A))return{r:B[1],g:B[2],b:B[3]};if(B=TC.rgba.exec(A))return{r:B[1],g:B[2],b:B[3],a:B[4]};if(B=TC.hsl.exec(A))return{h:B[1],s:B[2],l:B[3]};if(B=TC.hsla.exec(A))return{h:B[1],s:B[2],l:B[3],a:B[4]};if(B=TC.hsv.exec(A))return{h:B[1],s:B[2],v:B[3]};if(B=TC.hsva.exec(A))return{h:B[1],s:B[2],v:B[3],a:B[4]};if(B=TC.hex8.exec(A))return{r:E8(B[1]),g:E8(B[2]),b:E8(B[3]),a:D1A(B[4]),format:Q?"name":"hex8"};if(B=TC.hex6.exec(A))return{r:E8(B[1]),g:E8(B[2]),b:E8(B[3]),format:Q?"name":"hex"};if(B=TC.hex4.exec(A))return{r:E8(B[1]+""+B[1]),g:E8(B[2]+""+B[2]),b:E8(B[3]+""+B[3]),a:D1A(B[4]+""+B[4]),format:Q?"name":"hex8"};if(B=TC.hex3.exec(A))return{r:E8(B[1]+""+B[1]),g:E8(B[2]+""+B[2]),b:E8(B[3]+""+B[3]),format:Q?"name":"hex"};return!1}function prQ(A){var Q,B;if(A=A||{level:"AA",size:"small"},Q=(A.level||"AA").toUpperCase(),B=(A.size||"small").toLowerCase(),Q!=="AA"&&Q!=="AAA")Q="AA";if(B!=="small"&&B!=="large")B="small";return{level:Q,size:B}}function K8(A){let Q={width:A.bitmap.width,height:A.bitmap.height,data:Buffer.from(A.bitmap.data)};return new A.constructor(Q)}function I5(A,Q,B,Y,J,C){let X,G,W,F,Z;if(typeof Q==="function")Z=Q,X=0,G=0,W=A.bitmap.width,F=A.bitmap.height;else{if(X=Q,typeof B!=="number")throw Error("y must be a number");if(G=B,typeof Y!=="number")throw Error("w must be a number");if(W=Y,typeof J!=="number")throw Error("h must be a number");if(F=J,typeof C!=="function")throw Error("cb must be a function");Z=C}X=Math.round(X),G=Math.round(G),W=Math.round(W),F=Math.round(F);let U=Z.bind(A);for(let $=G;$Math.pow(G,2),{max:Y}=Math,J=195075,C="a"in A?A.a:255,X="a"in Q?Q.a:255;return(Y(B(A.r-Q.r),B(A.r-Q.r-C+X))+Y(B(A.g-Q.g),B(A.g-Q.g-C+X))+Y(B(A.b-Q.b),B(A.b-Q.b-C+X)))/195075}function z0(A){return A=Math.max(A,0),A=Math.min(A,255),A}function M1A(A){if(typeof A==="number")return A;return parseInt(oA(A).toHex8(),16)}function z1A(A,Q={}){return I5({bitmap:A},0,0,A.width,A.height,function(B,Y,J){let C=A.data[J+0],X=A.data[J+1],G=A.data[J+2],W=A.data[J+3];A.data[J+0]=W,A.data[J+1]=G,A.data[J+2]=X,A.data[J+3]=C}),U1A({...A,...Q}).data}function R1A(A,Q){let B=$1A(A,Q);return I5({bitmap:B},0,0,B.width,B.height,function(Y,J,C){let X=B.data[C+1],G=B.data[C+2],W=B.data[C+3];B.data[C+0]=W,B.data[C+1]=G,B.data[C+2]=X,B.data[C+3]=255}),B}function w1A(){return{mime:"image/x-ms-bmp",encode:z1A,decode:R1A}}function r3(){return{mime:"image/bmp",encode:z1A,decode:R1A}}var TXA=qA(ah(),1),I7=qA(PXA(),1);function XR(){return{mime:"image/gif",encode:async(A)=>{let Q=new I7.BitmapImage(A);I7.GifUtil.quantizeDekker(Q,256);let B=new I7.GifFrame(A);return(await new I7.GifCodec().encodeGif([B],{})).buffer},decode:(A)=>{let Q=new TXA.default.GifReader(A),B=Buffer.alloc(Q.width*Q.height*4);return Q.decodeAndBlitFrameRGBA(0,B),{data:B,width:Q.width,height:Q.height}}}}var Zx=qA(hXA(),1);function WR(){return{mime:"image/jpeg",encode:(A,{quality:Q=100}={})=>Zx.default.encode(A,Q).data,decode:(A,Q)=>Zx.default.decode(A,Q)}}var ZR=qA(P6A(),1);var FR;(function(A){A[A.AUTO=-1]="AUTO",A[A.NONE=0]="NONE",A[A.SUB=1]="SUB",A[A.UP=2]="UP",A[A.AVERAGE=3]="AVERAGE",A[A.PATH=4]="PATH"})(FR||(FR={}));var PH;(function(A){A[A.GRAYSCALE=0]="GRAYSCALE",A[A.COLOR=2]="COLOR",A[A.GRAYSCALE_ALPHA=4]="GRAYSCALE_ALPHA",A[A.COLOR_ALPHA=6]="COLOR_ALPHA"})(PH||(PH={}));function $R(){return{mime:"image/png",hasAlpha:!0,encode:(A,{deflateLevel:Q=9,deflateStrategy:B=3,filterType:Y=FR.AUTO,colorType:J,inputHasAlpha:C=!0,...X}={})=>{let G=new ZR.PNG({width:A.width,height:A.height});return G.data=A.data,ZR.PNG.sync.write(G,{...X,deflateLevel:Q,deflateStrategy:B,filterType:Y,colorType:typeof J<"u"?J:C?PH.COLOR_ALPHA:PH.COLOR,inputHasAlpha:C})},decode:(A,Q)=>{let B=ZR.PNG.sync.read(A,Q);return{data:B.data,width:B.width,height:B.height}}}}var cH=qA(H7A(),1);function D7A(A){if(typeof A==="number")return A;if(A instanceof Uint8Array)return A[0];if(typeof A[0]==="string")return parseInt(A[0]);return A[0]}function PR(){return{mime:"image/tiff",encode:(A)=>{let Q=cH.default.encodeImage(A.data,A.width,A.height);return Buffer.from(Q)},decode:(A)=>{let Q=cH.default.decode(A),B=Q[0];if(!B)throw Error("No page found in TIFF");if(!B.t256)throw Error("No image width found in TIFF");if(!B.t257)throw Error("No image height found in TIFF");Q.forEach((J)=>{cH.default.decodeImage(A,J)});let Y=cH.default.toRGBA8(B);return{data:Buffer.from(Y),width:D7A(B.t256),height:D7A(B.t257)}}}}var s={};iG(s,{void:()=>sQB,util:()=>FB,unknown:()=>iQB,union:()=>tQB,undefined:()=>cQB,tuple:()=>QBB,transformer:()=>$BB,symbol:()=>dQB,string:()=>O7A,strictObject:()=>oQB,setErrorMap:()=>EQB,set:()=>JBB,record:()=>BBB,quotelessJson:()=>$QB,promise:()=>ZBB,preprocess:()=>KBB,pipeline:()=>VBB,ostring:()=>IBB,optional:()=>UBB,onumber:()=>HBB,oboolean:()=>DBB,objectUtil:()=>Gf,object:()=>aQB,number:()=>P7A,nullable:()=>EBB,null:()=>lQB,never:()=>nQB,nativeEnum:()=>FBB,nan:()=>bQB,map:()=>YBB,makeIssue:()=>lH,literal:()=>GBB,lazy:()=>XBB,late:()=>xQB,isValid:()=>w7,isDirty:()=>SR,isAsync:()=>kU,isAborted:()=>TR,intersection:()=>ABB,instanceof:()=>fQB,getParsedType:()=>s1,getErrorMap:()=>SU,function:()=>CBB,enum:()=>WBB,effect:()=>$BB,discriminatedUnion:()=>eQB,defaultErrorMap:()=>v6,datetimeRegex:()=>R7A,date:()=>uQB,custom:()=>j7A,coerce:()=>NBB,boolean:()=>T7A,bigint:()=>mQB,array:()=>rQB,any:()=>pQB,addIssueToContext:()=>xA,ZodVoid:()=>iH,ZodUnknown:()=>j7,ZodUnion:()=>xU,ZodUndefined:()=>gU,ZodType:()=>JB,ZodTuple:()=>a1,ZodTransformer:()=>fC,ZodSymbol:()=>pH,ZodString:()=>yC,ZodSet:()=>XZ,ZodSchema:()=>JB,ZodRecord:()=>nH,ZodReadonly:()=>lU,ZodPromise:()=>GZ,ZodPipeline:()=>aH,ZodParsedType:()=>kA,ZodOptional:()=>hC,ZodObject:()=>y0,ZodNumber:()=>O7,ZodNullable:()=>g6,ZodNull:()=>hU,ZodNever:()=>r1,ZodNativeEnum:()=>uU,ZodNaN:()=>rH,ZodMap:()=>sH,ZodLiteral:()=>mU,ZodLazy:()=>bU,ZodIssueCode:()=>RA,ZodIntersection:()=>fU,ZodFunction:()=>vU,ZodFirstPartyTypeKind:()=>zQ,ZodError:()=>g9,ZodEnum:()=>T7,ZodEffects:()=>fC,ZodDiscriminatedUnion:()=>kR,ZodDefault:()=>dU,ZodDate:()=>JZ,ZodCatch:()=>cU,ZodBranded:()=>_R,ZodBoolean:()=>yU,ZodBigInt:()=>P7,ZodArray:()=>gC,ZodAny:()=>CZ,Schema:()=>JB,ParseStatus:()=>WJ,OK:()=>wJ,NEVER:()=>LBB,INVALID:()=>LQ,EMPTY_PATH:()=>KQB,DIRTY:()=>YZ,BRAND:()=>hQB});var FB;(function(A){A.assertEqual=(J)=>{};function Q(J){}A.assertIs=Q;function B(J){throw Error()}A.assertNever=B,A.arrayToEnum=(J)=>{let C={};for(let X of J)C[X]=X;return C},A.getValidEnumValues=(J)=>{let C=A.objectKeys(J).filter((G)=>typeof J[J[G]]!=="number"),X={};for(let G of C)X[G]=J[G];return A.objectValues(X)},A.objectValues=(J)=>{return A.objectKeys(J).map(function(C){return J[C]})},A.objectKeys=typeof Object.keys==="function"?(J)=>Object.keys(J):(J)=>{let C=[];for(let X in J)if(Object.prototype.hasOwnProperty.call(J,X))C.push(X);return C},A.find=(J,C)=>{for(let X of J)if(C(X))return X;return},A.isInteger=typeof Number.isInteger==="function"?(J)=>Number.isInteger(J):(J)=>typeof J==="number"&&Number.isFinite(J)&&Math.floor(J)===J;function Y(J,C=" | "){return J.map((X)=>typeof X==="string"?`'${X}'`:X).join(C)}A.joinValues=Y,A.jsonStringifyReplacer=(J,C)=>{if(typeof C==="bigint")return C.toString();return C}})(FB||(FB={}));var Gf;(function(A){A.mergeShapes=(Q,B)=>{return{...Q,...B}}})(Gf||(Gf={}));var kA=FB.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),s1=(A)=>{switch(typeof A){case"undefined":return kA.undefined;case"string":return kA.string;case"number":return Number.isNaN(A)?kA.nan:kA.number;case"boolean":return kA.boolean;case"function":return kA.function;case"bigint":return kA.bigint;case"symbol":return kA.symbol;case"object":if(Array.isArray(A))return kA.array;if(A===null)return kA.null;if(A.then&&typeof A.then==="function"&&A.catch&&typeof A.catch==="function")return kA.promise;if(typeof Map<"u"&&A instanceof Map)return kA.map;if(typeof Set<"u"&&A instanceof Set)return kA.set;if(typeof Date<"u"&&A instanceof Date)return kA.date;return kA.object;default:return kA.unknown}};var RA=FB.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),$QB=(A)=>{return JSON.stringify(A,null,2).replace(/"([^"]+)":/g,"$1:")};class g9 extends Error{get errors(){return this.issues}constructor(A){super();this.issues=[],this.addIssue=(B)=>{this.issues=[...this.issues,B]},this.addIssues=(B=[])=>{this.issues=[...this.issues,...B]};let Q=new.target.prototype;if(Object.setPrototypeOf)Object.setPrototypeOf(this,Q);else this.__proto__=Q;this.name="ZodError",this.issues=A}format(A){let Q=A||function(J){return J.message},B={_errors:[]},Y=(J)=>{for(let C of J.issues)if(C.code==="invalid_union")C.unionErrors.map(Y);else if(C.code==="invalid_return_type")Y(C.returnTypeError);else if(C.code==="invalid_arguments")Y(C.argumentsError);else if(C.path.length===0)B._errors.push(Q(C));else{let X=B,G=0;while(GQ.message){let Q={},B=[];for(let Y of this.issues)if(Y.path.length>0){let J=Y.path[0];Q[J]=Q[J]||[],Q[J].push(A(Y))}else B.push(A(Y));return{formErrors:B,fieldErrors:Q}}get formErrors(){return this.flatten()}}g9.create=(A)=>{return new g9(A)};var UQB=(A,Q)=>{let B;switch(A.code){case RA.invalid_type:if(A.received===kA.undefined)B="Required";else B=`Expected ${A.expected}, received ${A.received}`;break;case RA.invalid_literal:B=`Invalid literal value, expected ${JSON.stringify(A.expected,FB.jsonStringifyReplacer)}`;break;case RA.unrecognized_keys:B=`Unrecognized key(s) in object: ${FB.joinValues(A.keys,", ")}`;break;case RA.invalid_union:B="Invalid input";break;case RA.invalid_union_discriminator:B=`Invalid discriminator value. Expected ${FB.joinValues(A.options)}`;break;case RA.invalid_enum_value:B=`Invalid enum value. Expected ${FB.joinValues(A.options)}, received '${A.received}'`;break;case RA.invalid_arguments:B="Invalid function arguments";break;case RA.invalid_return_type:B="Invalid function return type";break;case RA.invalid_date:B="Invalid date";break;case RA.invalid_string:if(typeof A.validation==="object")if("includes"in A.validation){if(B=`Invalid input: must include "${A.validation.includes}"`,typeof A.validation.position==="number")B=`${B} at one or more positions greater than or equal to ${A.validation.position}`}else if("startsWith"in A.validation)B=`Invalid input: must start with "${A.validation.startsWith}"`;else if("endsWith"in A.validation)B=`Invalid input: must end with "${A.validation.endsWith}"`;else FB.assertNever(A.validation);else if(A.validation!=="regex")B=`Invalid ${A.validation}`;else B="Invalid";break;case RA.too_small:if(A.type==="array")B=`Array must contain ${A.exact?"exactly":A.inclusive?"at least":"more than"} ${A.minimum} element(s)`;else if(A.type==="string")B=`String must contain ${A.exact?"exactly":A.inclusive?"at least":"over"} ${A.minimum} character(s)`;else if(A.type==="number")B=`Number must be ${A.exact?"exactly equal to ":A.inclusive?"greater than or equal to ":"greater than "}${A.minimum}`;else if(A.type==="bigint")B=`Number must be ${A.exact?"exactly equal to ":A.inclusive?"greater than or equal to ":"greater than "}${A.minimum}`;else if(A.type==="date")B=`Date must be ${A.exact?"exactly equal to ":A.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(A.minimum))}`;else B="Invalid input";break;case RA.too_big:if(A.type==="array")B=`Array must contain ${A.exact?"exactly":A.inclusive?"at most":"less than"} ${A.maximum} element(s)`;else if(A.type==="string")B=`String must contain ${A.exact?"exactly":A.inclusive?"at most":"under"} ${A.maximum} character(s)`;else if(A.type==="number")B=`Number must be ${A.exact?"exactly":A.inclusive?"less than or equal to":"less than"} ${A.maximum}`;else if(A.type==="bigint")B=`BigInt must be ${A.exact?"exactly":A.inclusive?"less than or equal to":"less than"} ${A.maximum}`;else if(A.type==="date")B=`Date must be ${A.exact?"exactly":A.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(A.maximum))}`;else B="Invalid input";break;case RA.custom:B="Invalid input";break;case RA.invalid_intersection_types:B="Intersection results could not be merged";break;case RA.not_multiple_of:B=`Number must be a multiple of ${A.multipleOf}`;break;case RA.not_finite:B="Number must be finite";break;default:B=Q.defaultError,FB.assertNever(A)}return{message:B}},v6=UQB;var N7A=v6;function EQB(A){N7A=A}function SU(){return N7A}var lH=(A)=>{let{data:Q,path:B,errorMaps:Y,issueData:J}=A,C=[...B,...J.path||[]],X={...J,path:C};if(J.message!==void 0)return{...J,path:C,message:J.message};let G="",W=Y.filter((F)=>!!F).slice().reverse();for(let F of W)G=F(X,{data:Q,defaultError:G}).message;return{...J,path:C,message:G}},KQB=[];function xA(A,Q){let B=SU(),Y=lH({issueData:Q,data:A.data,path:A.path,errorMaps:[A.common.contextualErrorMap,A.schemaErrorMap,B,B===v6?void 0:v6].filter((J)=>!!J)});A.common.issues.push(Y)}class WJ{constructor(){this.value="valid"}dirty(){if(this.value==="valid")this.value="dirty"}abort(){if(this.value!=="aborted")this.value="aborted"}static mergeArray(A,Q){let B=[];for(let Y of Q){if(Y.status==="aborted")return LQ;if(Y.status==="dirty")A.dirty();B.push(Y.value)}return{status:A.value,value:B}}static async mergeObjectAsync(A,Q){let B=[];for(let Y of Q){let J=await Y.key,C=await Y.value;B.push({key:J,value:C})}return WJ.mergeObjectSync(A,B)}static mergeObjectSync(A,Q){let B={};for(let Y of Q){let{key:J,value:C}=Y;if(J.status==="aborted")return LQ;if(C.status==="aborted")return LQ;if(J.status==="dirty")A.dirty();if(C.status==="dirty")A.dirty();if(J.value!=="__proto__"&&(typeof C.value<"u"||Y.alwaysSet))B[J.value]=C.value}return{status:A.value,value:B}}}var LQ=Object.freeze({status:"aborted"}),YZ=(A)=>({status:"dirty",value:A}),wJ=(A)=>({status:"valid",value:A}),TR=(A)=>A.status==="aborted",SR=(A)=>A.status==="dirty",w7=(A)=>A.status==="valid",kU=(A)=>typeof Promise<"u"&&A instanceof Promise;var tA;(function(A){A.errToObj=(Q)=>typeof Q==="string"?{message:Q}:Q||{},A.toString=(Q)=>typeof Q==="string"?Q:Q?.message})(tA||(tA={}));class xC{constructor(A,Q,B,Y){this._cachedPath=[],this.parent=A,this.data=Q,this._path=B,this._key=Y}get path(){if(!this._cachedPath.length)if(Array.isArray(this._key))this._cachedPath.push(...this._path,...this._key);else this._cachedPath.push(...this._path,this._key);return this._cachedPath}}var L7A=(A,Q)=>{if(w7(Q))return{success:!0,data:Q.value};else{if(!A.common.issues.length)throw Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let B=new g9(A.common.issues);return this._error=B,this._error}}}};function pQ(A){if(!A)return{};let{errorMap:Q,invalid_type_error:B,required_error:Y,description:J}=A;if(Q&&(B||Y))throw Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);if(Q)return{errorMap:Q,description:J};return{errorMap:(X,G)=>{let{message:W}=A;if(X.code==="invalid_enum_value")return{message:W??G.defaultError};if(typeof G.data>"u")return{message:W??Y??G.defaultError};if(X.code!=="invalid_type")return{message:G.defaultError};return{message:W??B??G.defaultError}},description:J}}class JB{get description(){return this._def.description}_getType(A){return s1(A.data)}_getOrReturnCtx(A,Q){return Q||{common:A.parent.common,data:A.data,parsedType:s1(A.data),schemaErrorMap:this._def.errorMap,path:A.path,parent:A.parent}}_processInputParams(A){return{status:new WJ,ctx:{common:A.parent.common,data:A.data,parsedType:s1(A.data),schemaErrorMap:this._def.errorMap,path:A.path,parent:A.parent}}}_parseSync(A){let Q=this._parse(A);if(kU(Q))throw Error("Synchronous parse encountered promise.");return Q}_parseAsync(A){let Q=this._parse(A);return Promise.resolve(Q)}parse(A,Q){let B=this.safeParse(A,Q);if(B.success)return B.data;throw B.error}safeParse(A,Q){let B={common:{issues:[],async:Q?.async??!1,contextualErrorMap:Q?.errorMap},path:Q?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:A,parsedType:s1(A)},Y=this._parseSync({data:A,path:B.path,parent:B});return L7A(B,Y)}"~validate"(A){let Q={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:A,parsedType:s1(A)};if(!this["~standard"].async)try{let B=this._parseSync({data:A,path:[],parent:Q});return w7(B)?{value:B.value}:{issues:Q.common.issues}}catch(B){if(B?.message?.toLowerCase()?.includes("encountered"))this["~standard"].async=!0;Q.common={issues:[],async:!0}}return this._parseAsync({data:A,path:[],parent:Q}).then((B)=>w7(B)?{value:B.value}:{issues:Q.common.issues})}async parseAsync(A,Q){let B=await this.safeParseAsync(A,Q);if(B.success)return B.data;throw B.error}async safeParseAsync(A,Q){let B={common:{issues:[],contextualErrorMap:Q?.errorMap,async:!0},path:Q?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:A,parsedType:s1(A)},Y=this._parse({data:A,path:B.path,parent:B}),J=await(kU(Y)?Y:Promise.resolve(Y));return L7A(B,J)}refine(A,Q){let B=(Y)=>{if(typeof Q==="string"||typeof Q>"u")return{message:Q};else if(typeof Q==="function")return Q(Y);else return Q};return this._refinement((Y,J)=>{let C=A(Y),X=()=>J.addIssue({code:RA.custom,...B(Y)});if(typeof Promise<"u"&&C instanceof Promise)return C.then((G)=>{if(!G)return X(),!1;else return!0});if(!C)return X(),!1;else return!0})}refinement(A,Q){return this._refinement((B,Y)=>{if(!A(B))return Y.addIssue(typeof Q==="function"?Q(B,Y):Q),!1;else return!0})}_refinement(A){return new fC({schema:this,typeName:zQ.ZodEffects,effect:{type:"refinement",refinement:A}})}superRefine(A){return this._refinement(A)}constructor(A){this.spa=this.safeParseAsync,this._def=A,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:(Q)=>this["~validate"](Q)}}optional(){return hC.create(this,this._def)}nullable(){return g6.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return gC.create(this)}promise(){return GZ.create(this,this._def)}or(A){return xU.create([this,A],this._def)}and(A){return fU.create(this,A,this._def)}transform(A){return new fC({...pQ(this._def),schema:this,typeName:zQ.ZodEffects,effect:{type:"transform",transform:A}})}default(A){let Q=typeof A==="function"?A:()=>A;return new dU({...pQ(this._def),innerType:this,defaultValue:Q,typeName:zQ.ZodDefault})}brand(){return new _R({typeName:zQ.ZodBranded,type:this,...pQ(this._def)})}catch(A){let Q=typeof A==="function"?A:()=>A;return new cU({...pQ(this._def),innerType:this,catchValue:Q,typeName:zQ.ZodCatch})}describe(A){return new this.constructor({...this._def,description:A})}pipe(A){return aH.create(this,A)}readonly(){return lU.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}var VQB=/^c[^\s-]{8,}$/i,IQB=/^[0-9a-z]+$/,HQB=/^[0-9A-HJKMNP-TV-Z]{26}$/i,DQB=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,NQB=/^[a-z0-9_-]{21}$/i,LQB=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,qQB=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,MQB=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,zQB="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Wf,RQB=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,wQB=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,jQB=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,OQB=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,PQB=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,TQB=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,M7A="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",SQB=new RegExp(`^${M7A}$`);function z7A(A){let Q="[0-5]\\d";if(A.precision)Q=`${Q}\\.\\d{${A.precision}}`;else if(A.precision==null)Q=`${Q}(\\.\\d+)?`;let B=A.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${Q})${B}`}function kQB(A){return new RegExp(`^${z7A(A)}$`)}function R7A(A){let Q=`${M7A}T${z7A(A)}`,B=[];if(B.push(A.local?"Z?":"Z"),A.offset)B.push("([+-]\\d{2}:?\\d{2})");return Q=`${Q}(${B.join("|")})`,new RegExp(`^${Q}$`)}function _QB(A,Q){if((Q==="v4"||!Q)&&RQB.test(A))return!0;if((Q==="v6"||!Q)&&jQB.test(A))return!0;return!1}function vQB(A,Q){if(!LQB.test(A))return!1;try{let[B]=A.split(".");if(!B)return!1;let Y=B.replace(/-/g,"+").replace(/_/g,"/").padEnd(B.length+(4-B.length%4)%4,"="),J=JSON.parse(atob(Y));if(typeof J!=="object"||J===null)return!1;if("typ"in J&&J?.typ!=="JWT")return!1;if(!J.alg)return!1;if(Q&&J.alg!==Q)return!1;return!0}catch{return!1}}function yQB(A,Q){if((Q==="v4"||!Q)&&wQB.test(A))return!0;if((Q==="v6"||!Q)&&OQB.test(A))return!0;return!1}class yC extends JB{_parse(A){if(this._def.coerce)A.data=String(A.data);if(this._getType(A)!==kA.string){let J=this._getOrReturnCtx(A);return xA(J,{code:RA.invalid_type,expected:kA.string,received:J.parsedType}),LQ}let B=new WJ,Y=void 0;for(let J of this._def.checks)if(J.kind==="min"){if(A.data.lengthJ.value)Y=this._getOrReturnCtx(A,Y),xA(Y,{code:RA.too_big,maximum:J.value,type:"string",inclusive:!0,exact:!1,message:J.message}),B.dirty()}else if(J.kind==="length"){let C=A.data.length>J.value,X=A.data.lengthA.test(Y),{validation:Q,code:RA.invalid_string,...tA.errToObj(B)})}_addCheck(A){return new yC({...this._def,checks:[...this._def.checks,A]})}email(A){return this._addCheck({kind:"email",...tA.errToObj(A)})}url(A){return this._addCheck({kind:"url",...tA.errToObj(A)})}emoji(A){return this._addCheck({kind:"emoji",...tA.errToObj(A)})}uuid(A){return this._addCheck({kind:"uuid",...tA.errToObj(A)})}nanoid(A){return this._addCheck({kind:"nanoid",...tA.errToObj(A)})}cuid(A){return this._addCheck({kind:"cuid",...tA.errToObj(A)})}cuid2(A){return this._addCheck({kind:"cuid2",...tA.errToObj(A)})}ulid(A){return this._addCheck({kind:"ulid",...tA.errToObj(A)})}base64(A){return this._addCheck({kind:"base64",...tA.errToObj(A)})}base64url(A){return this._addCheck({kind:"base64url",...tA.errToObj(A)})}jwt(A){return this._addCheck({kind:"jwt",...tA.errToObj(A)})}ip(A){return this._addCheck({kind:"ip",...tA.errToObj(A)})}cidr(A){return this._addCheck({kind:"cidr",...tA.errToObj(A)})}datetime(A){if(typeof A==="string")return this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:A});return this._addCheck({kind:"datetime",precision:typeof A?.precision>"u"?null:A?.precision,offset:A?.offset??!1,local:A?.local??!1,...tA.errToObj(A?.message)})}date(A){return this._addCheck({kind:"date",message:A})}time(A){if(typeof A==="string")return this._addCheck({kind:"time",precision:null,message:A});return this._addCheck({kind:"time",precision:typeof A?.precision>"u"?null:A?.precision,...tA.errToObj(A?.message)})}duration(A){return this._addCheck({kind:"duration",...tA.errToObj(A)})}regex(A,Q){return this._addCheck({kind:"regex",regex:A,...tA.errToObj(Q)})}includes(A,Q){return this._addCheck({kind:"includes",value:A,position:Q?.position,...tA.errToObj(Q?.message)})}startsWith(A,Q){return this._addCheck({kind:"startsWith",value:A,...tA.errToObj(Q)})}endsWith(A,Q){return this._addCheck({kind:"endsWith",value:A,...tA.errToObj(Q)})}min(A,Q){return this._addCheck({kind:"min",value:A,...tA.errToObj(Q)})}max(A,Q){return this._addCheck({kind:"max",value:A,...tA.errToObj(Q)})}length(A,Q){return this._addCheck({kind:"length",value:A,...tA.errToObj(Q)})}nonempty(A){return this.min(1,tA.errToObj(A))}trim(){return new yC({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new yC({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new yC({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find((A)=>A.kind==="datetime")}get isDate(){return!!this._def.checks.find((A)=>A.kind==="date")}get isTime(){return!!this._def.checks.find((A)=>A.kind==="time")}get isDuration(){return!!this._def.checks.find((A)=>A.kind==="duration")}get isEmail(){return!!this._def.checks.find((A)=>A.kind==="email")}get isURL(){return!!this._def.checks.find((A)=>A.kind==="url")}get isEmoji(){return!!this._def.checks.find((A)=>A.kind==="emoji")}get isUUID(){return!!this._def.checks.find((A)=>A.kind==="uuid")}get isNANOID(){return!!this._def.checks.find((A)=>A.kind==="nanoid")}get isCUID(){return!!this._def.checks.find((A)=>A.kind==="cuid")}get isCUID2(){return!!this._def.checks.find((A)=>A.kind==="cuid2")}get isULID(){return!!this._def.checks.find((A)=>A.kind==="ulid")}get isIP(){return!!this._def.checks.find((A)=>A.kind==="ip")}get isCIDR(){return!!this._def.checks.find((A)=>A.kind==="cidr")}get isBase64(){return!!this._def.checks.find((A)=>A.kind==="base64")}get isBase64url(){return!!this._def.checks.find((A)=>A.kind==="base64url")}get minLength(){let A=null;for(let Q of this._def.checks)if(Q.kind==="min"){if(A===null||Q.value>A)A=Q.value}return A}get maxLength(){let A=null;for(let Q of this._def.checks)if(Q.kind==="max"){if(A===null||Q.value{return new yC({checks:[],typeName:zQ.ZodString,coerce:A?.coerce??!1,...pQ(A)})};function gQB(A,Q){let B=(A.toString().split(".")[1]||"").length,Y=(Q.toString().split(".")[1]||"").length,J=B>Y?B:Y,C=Number.parseInt(A.toFixed(J).replace(".","")),X=Number.parseInt(Q.toFixed(J).replace(".",""));return C%X/10**J}class O7 extends JB{constructor(){super(...arguments);this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(A){if(this._def.coerce)A.data=Number(A.data);if(this._getType(A)!==kA.number){let J=this._getOrReturnCtx(A);return xA(J,{code:RA.invalid_type,expected:kA.number,received:J.parsedType}),LQ}let B=void 0,Y=new WJ;for(let J of this._def.checks)if(J.kind==="int"){if(!FB.isInteger(A.data))B=this._getOrReturnCtx(A,B),xA(B,{code:RA.invalid_type,expected:"integer",received:"float",message:J.message}),Y.dirty()}else if(J.kind==="min"){if(J.inclusive?A.dataJ.value:A.data>=J.value)B=this._getOrReturnCtx(A,B),xA(B,{code:RA.too_big,maximum:J.value,type:"number",inclusive:J.inclusive,exact:!1,message:J.message}),Y.dirty()}else if(J.kind==="multipleOf"){if(gQB(A.data,J.value)!==0)B=this._getOrReturnCtx(A,B),xA(B,{code:RA.not_multiple_of,multipleOf:J.value,message:J.message}),Y.dirty()}else if(J.kind==="finite"){if(!Number.isFinite(A.data))B=this._getOrReturnCtx(A,B),xA(B,{code:RA.not_finite,message:J.message}),Y.dirty()}else FB.assertNever(J);return{status:Y.value,value:A.data}}gte(A,Q){return this.setLimit("min",A,!0,tA.toString(Q))}gt(A,Q){return this.setLimit("min",A,!1,tA.toString(Q))}lte(A,Q){return this.setLimit("max",A,!0,tA.toString(Q))}lt(A,Q){return this.setLimit("max",A,!1,tA.toString(Q))}setLimit(A,Q,B,Y){return new O7({...this._def,checks:[...this._def.checks,{kind:A,value:Q,inclusive:B,message:tA.toString(Y)}]})}_addCheck(A){return new O7({...this._def,checks:[...this._def.checks,A]})}int(A){return this._addCheck({kind:"int",message:tA.toString(A)})}positive(A){return this._addCheck({kind:"min",value:0,inclusive:!1,message:tA.toString(A)})}negative(A){return this._addCheck({kind:"max",value:0,inclusive:!1,message:tA.toString(A)})}nonpositive(A){return this._addCheck({kind:"max",value:0,inclusive:!0,message:tA.toString(A)})}nonnegative(A){return this._addCheck({kind:"min",value:0,inclusive:!0,message:tA.toString(A)})}multipleOf(A,Q){return this._addCheck({kind:"multipleOf",value:A,message:tA.toString(Q)})}finite(A){return this._addCheck({kind:"finite",message:tA.toString(A)})}safe(A){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:tA.toString(A)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:tA.toString(A)})}get minValue(){let A=null;for(let Q of this._def.checks)if(Q.kind==="min"){if(A===null||Q.value>A)A=Q.value}return A}get maxValue(){let A=null;for(let Q of this._def.checks)if(Q.kind==="max"){if(A===null||Q.valueA.kind==="int"||A.kind==="multipleOf"&&FB.isInteger(A.value))}get isFinite(){let A=null,Q=null;for(let B of this._def.checks)if(B.kind==="finite"||B.kind==="int"||B.kind==="multipleOf")return!0;else if(B.kind==="min"){if(Q===null||B.value>Q)Q=B.value}else if(B.kind==="max"){if(A===null||B.value{return new O7({checks:[],typeName:zQ.ZodNumber,coerce:A?.coerce||!1,...pQ(A)})};class P7 extends JB{constructor(){super(...arguments);this.min=this.gte,this.max=this.lte}_parse(A){if(this._def.coerce)try{A.data=BigInt(A.data)}catch{return this._getInvalidInput(A)}if(this._getType(A)!==kA.bigint)return this._getInvalidInput(A);let B=void 0,Y=new WJ;for(let J of this._def.checks)if(J.kind==="min"){if(J.inclusive?A.dataJ.value:A.data>=J.value)B=this._getOrReturnCtx(A,B),xA(B,{code:RA.too_big,type:"bigint",maximum:J.value,inclusive:J.inclusive,message:J.message}),Y.dirty()}else if(J.kind==="multipleOf"){if(A.data%J.value!==BigInt(0))B=this._getOrReturnCtx(A,B),xA(B,{code:RA.not_multiple_of,multipleOf:J.value,message:J.message}),Y.dirty()}else FB.assertNever(J);return{status:Y.value,value:A.data}}_getInvalidInput(A){let Q=this._getOrReturnCtx(A);return xA(Q,{code:RA.invalid_type,expected:kA.bigint,received:Q.parsedType}),LQ}gte(A,Q){return this.setLimit("min",A,!0,tA.toString(Q))}gt(A,Q){return this.setLimit("min",A,!1,tA.toString(Q))}lte(A,Q){return this.setLimit("max",A,!0,tA.toString(Q))}lt(A,Q){return this.setLimit("max",A,!1,tA.toString(Q))}setLimit(A,Q,B,Y){return new P7({...this._def,checks:[...this._def.checks,{kind:A,value:Q,inclusive:B,message:tA.toString(Y)}]})}_addCheck(A){return new P7({...this._def,checks:[...this._def.checks,A]})}positive(A){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:tA.toString(A)})}negative(A){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:tA.toString(A)})}nonpositive(A){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:tA.toString(A)})}nonnegative(A){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:tA.toString(A)})}multipleOf(A,Q){return this._addCheck({kind:"multipleOf",value:A,message:tA.toString(Q)})}get minValue(){let A=null;for(let Q of this._def.checks)if(Q.kind==="min"){if(A===null||Q.value>A)A=Q.value}return A}get maxValue(){let A=null;for(let Q of this._def.checks)if(Q.kind==="max"){if(A===null||Q.value{return new P7({checks:[],typeName:zQ.ZodBigInt,coerce:A?.coerce??!1,...pQ(A)})};class yU extends JB{_parse(A){if(this._def.coerce)A.data=Boolean(A.data);if(this._getType(A)!==kA.boolean){let B=this._getOrReturnCtx(A);return xA(B,{code:RA.invalid_type,expected:kA.boolean,received:B.parsedType}),LQ}return wJ(A.data)}}yU.create=(A)=>{return new yU({typeName:zQ.ZodBoolean,coerce:A?.coerce||!1,...pQ(A)})};class JZ extends JB{_parse(A){if(this._def.coerce)A.data=new Date(A.data);if(this._getType(A)!==kA.date){let J=this._getOrReturnCtx(A);return xA(J,{code:RA.invalid_type,expected:kA.date,received:J.parsedType}),LQ}if(Number.isNaN(A.data.getTime())){let J=this._getOrReturnCtx(A);return xA(J,{code:RA.invalid_date}),LQ}let B=new WJ,Y=void 0;for(let J of this._def.checks)if(J.kind==="min"){if(A.data.getTime()J.value)Y=this._getOrReturnCtx(A,Y),xA(Y,{code:RA.too_big,message:J.message,inclusive:!0,exact:!1,maximum:J.value,type:"date"}),B.dirty()}else FB.assertNever(J);return{status:B.value,value:new Date(A.data.getTime())}}_addCheck(A){return new JZ({...this._def,checks:[...this._def.checks,A]})}min(A,Q){return this._addCheck({kind:"min",value:A.getTime(),message:tA.toString(Q)})}max(A,Q){return this._addCheck({kind:"max",value:A.getTime(),message:tA.toString(Q)})}get minDate(){let A=null;for(let Q of this._def.checks)if(Q.kind==="min"){if(A===null||Q.value>A)A=Q.value}return A!=null?new Date(A):null}get maxDate(){let A=null;for(let Q of this._def.checks)if(Q.kind==="max"){if(A===null||Q.value{return new JZ({checks:[],coerce:A?.coerce||!1,typeName:zQ.ZodDate,...pQ(A)})};class pH extends JB{_parse(A){if(this._getType(A)!==kA.symbol){let B=this._getOrReturnCtx(A);return xA(B,{code:RA.invalid_type,expected:kA.symbol,received:B.parsedType}),LQ}return wJ(A.data)}}pH.create=(A)=>{return new pH({typeName:zQ.ZodSymbol,...pQ(A)})};class gU extends JB{_parse(A){if(this._getType(A)!==kA.undefined){let B=this._getOrReturnCtx(A);return xA(B,{code:RA.invalid_type,expected:kA.undefined,received:B.parsedType}),LQ}return wJ(A.data)}}gU.create=(A)=>{return new gU({typeName:zQ.ZodUndefined,...pQ(A)})};class hU extends JB{_parse(A){if(this._getType(A)!==kA.null){let B=this._getOrReturnCtx(A);return xA(B,{code:RA.invalid_type,expected:kA.null,received:B.parsedType}),LQ}return wJ(A.data)}}hU.create=(A)=>{return new hU({typeName:zQ.ZodNull,...pQ(A)})};class CZ extends JB{constructor(){super(...arguments);this._any=!0}_parse(A){return wJ(A.data)}}CZ.create=(A)=>{return new CZ({typeName:zQ.ZodAny,...pQ(A)})};class j7 extends JB{constructor(){super(...arguments);this._unknown=!0}_parse(A){return wJ(A.data)}}j7.create=(A)=>{return new j7({typeName:zQ.ZodUnknown,...pQ(A)})};class r1 extends JB{_parse(A){let Q=this._getOrReturnCtx(A);return xA(Q,{code:RA.invalid_type,expected:kA.never,received:Q.parsedType}),LQ}}r1.create=(A)=>{return new r1({typeName:zQ.ZodNever,...pQ(A)})};class iH extends JB{_parse(A){if(this._getType(A)!==kA.undefined){let B=this._getOrReturnCtx(A);return xA(B,{code:RA.invalid_type,expected:kA.void,received:B.parsedType}),LQ}return wJ(A.data)}}iH.create=(A)=>{return new iH({typeName:zQ.ZodVoid,...pQ(A)})};class gC extends JB{_parse(A){let{ctx:Q,status:B}=this._processInputParams(A),Y=this._def;if(Q.parsedType!==kA.array)return xA(Q,{code:RA.invalid_type,expected:kA.array,received:Q.parsedType}),LQ;if(Y.exactLength!==null){let C=Q.data.length>Y.exactLength.value,X=Q.data.lengthY.maxLength.value)xA(Q,{code:RA.too_big,maximum:Y.maxLength.value,type:"array",inclusive:!0,exact:!1,message:Y.maxLength.message}),B.dirty()}if(Q.common.async)return Promise.all([...Q.data].map((C,X)=>{return Y.type._parseAsync(new xC(Q,C,Q.path,X))})).then((C)=>{return WJ.mergeArray(B,C)});let J=[...Q.data].map((C,X)=>{return Y.type._parseSync(new xC(Q,C,Q.path,X))});return WJ.mergeArray(B,J)}get element(){return this._def.type}min(A,Q){return new gC({...this._def,minLength:{value:A,message:tA.toString(Q)}})}max(A,Q){return new gC({...this._def,maxLength:{value:A,message:tA.toString(Q)}})}length(A,Q){return new gC({...this._def,exactLength:{value:A,message:tA.toString(Q)}})}nonempty(A){return this.min(1,A)}}gC.create=(A,Q)=>{return new gC({type:A,minLength:null,maxLength:null,exactLength:null,typeName:zQ.ZodArray,...pQ(Q)})};function _U(A){if(A instanceof y0){let Q={};for(let B in A.shape){let Y=A.shape[B];Q[B]=hC.create(_U(Y))}return new y0({...A._def,shape:()=>Q})}else if(A instanceof gC)return new gC({...A._def,type:_U(A.element)});else if(A instanceof hC)return hC.create(_U(A.unwrap()));else if(A instanceof g6)return g6.create(_U(A.unwrap()));else if(A instanceof a1)return a1.create(A.items.map((Q)=>_U(Q)));else return A}class y0 extends JB{constructor(){super(...arguments);this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let A=this._def.shape(),Q=FB.objectKeys(A);return this._cached={shape:A,keys:Q},this._cached}_parse(A){if(this._getType(A)!==kA.object){let W=this._getOrReturnCtx(A);return xA(W,{code:RA.invalid_type,expected:kA.object,received:W.parsedType}),LQ}let{status:B,ctx:Y}=this._processInputParams(A),{shape:J,keys:C}=this._getCached(),X=[];if(!(this._def.catchall instanceof r1&&this._def.unknownKeys==="strip")){for(let W in Y.data)if(!C.includes(W))X.push(W)}let G=[];for(let W of C){let F=J[W],Z=Y.data[W];G.push({key:{status:"valid",value:W},value:F._parse(new xC(Y,Z,Y.path,W)),alwaysSet:W in Y.data})}if(this._def.catchall instanceof r1){let W=this._def.unknownKeys;if(W==="passthrough")for(let F of X)G.push({key:{status:"valid",value:F},value:{status:"valid",value:Y.data[F]}});else if(W==="strict"){if(X.length>0)xA(Y,{code:RA.unrecognized_keys,keys:X}),B.dirty()}else if(W==="strip");else throw Error("Internal ZodObject error: invalid unknownKeys value.")}else{let W=this._def.catchall;for(let F of X){let Z=Y.data[F];G.push({key:{status:"valid",value:F},value:W._parse(new xC(Y,Z,Y.path,F)),alwaysSet:F in Y.data})}}if(Y.common.async)return Promise.resolve().then(async()=>{let W=[];for(let F of G){let Z=await F.key,U=await F.value;W.push({key:Z,value:U,alwaysSet:F.alwaysSet})}return W}).then((W)=>{return WJ.mergeObjectSync(B,W)});else return WJ.mergeObjectSync(B,G)}get shape(){return this._def.shape()}strict(A){return tA.errToObj,new y0({...this._def,unknownKeys:"strict",...A!==void 0?{errorMap:(Q,B)=>{let Y=this._def.errorMap?.(Q,B).message??B.defaultError;if(Q.code==="unrecognized_keys")return{message:tA.errToObj(A).message??Y};return{message:Y}}}:{}})}strip(){return new y0({...this._def,unknownKeys:"strip"})}passthrough(){return new y0({...this._def,unknownKeys:"passthrough"})}extend(A){return new y0({...this._def,shape:()=>({...this._def.shape(),...A})})}merge(A){return new y0({unknownKeys:A._def.unknownKeys,catchall:A._def.catchall,shape:()=>({...this._def.shape(),...A._def.shape()}),typeName:zQ.ZodObject})}setKey(A,Q){return this.augment({[A]:Q})}catchall(A){return new y0({...this._def,catchall:A})}pick(A){let Q={};for(let B of FB.objectKeys(A))if(A[B]&&this.shape[B])Q[B]=this.shape[B];return new y0({...this._def,shape:()=>Q})}omit(A){let Q={};for(let B of FB.objectKeys(this.shape))if(!A[B])Q[B]=this.shape[B];return new y0({...this._def,shape:()=>Q})}deepPartial(){return _U(this)}partial(A){let Q={};for(let B of FB.objectKeys(this.shape)){let Y=this.shape[B];if(A&&!A[B])Q[B]=Y;else Q[B]=Y.optional()}return new y0({...this._def,shape:()=>Q})}required(A){let Q={};for(let B of FB.objectKeys(this.shape))if(A&&!A[B])Q[B]=this.shape[B];else{let J=this.shape[B];while(J instanceof hC)J=J._def.innerType;Q[B]=J}return new y0({...this._def,shape:()=>Q})}keyof(){return w7A(FB.objectKeys(this.shape))}}y0.create=(A,Q)=>{return new y0({shape:()=>A,unknownKeys:"strip",catchall:r1.create(),typeName:zQ.ZodObject,...pQ(Q)})};y0.strictCreate=(A,Q)=>{return new y0({shape:()=>A,unknownKeys:"strict",catchall:r1.create(),typeName:zQ.ZodObject,...pQ(Q)})};y0.lazycreate=(A,Q)=>{return new y0({shape:A,unknownKeys:"strip",catchall:r1.create(),typeName:zQ.ZodObject,...pQ(Q)})};class xU extends JB{_parse(A){let{ctx:Q}=this._processInputParams(A),B=this._def.options;function Y(J){for(let X of J)if(X.result.status==="valid")return X.result;for(let X of J)if(X.result.status==="dirty")return Q.common.issues.push(...X.ctx.common.issues),X.result;let C=J.map((X)=>new g9(X.ctx.common.issues));return xA(Q,{code:RA.invalid_union,unionErrors:C}),LQ}if(Q.common.async)return Promise.all(B.map(async(J)=>{let C={...Q,common:{...Q.common,issues:[]},parent:null};return{result:await J._parseAsync({data:Q.data,path:Q.path,parent:C}),ctx:C}})).then(Y);else{let J=void 0,C=[];for(let G of B){let W={...Q,common:{...Q.common,issues:[]},parent:null},F=G._parseSync({data:Q.data,path:Q.path,parent:W});if(F.status==="valid")return F;else if(F.status==="dirty"&&!J)J={result:F,ctx:W};if(W.common.issues.length)C.push(W.common.issues)}if(J)return Q.common.issues.push(...J.ctx.common.issues),J.result;let X=C.map((G)=>new g9(G));return xA(Q,{code:RA.invalid_union,unionErrors:X}),LQ}}get options(){return this._def.options}}xU.create=(A,Q)=>{return new xU({options:A,typeName:zQ.ZodUnion,...pQ(Q)})};var y6=(A)=>{if(A instanceof bU)return y6(A.schema);else if(A instanceof fC)return y6(A.innerType());else if(A instanceof mU)return[A.value];else if(A instanceof T7)return A.options;else if(A instanceof uU)return FB.objectValues(A.enum);else if(A instanceof dU)return y6(A._def.innerType);else if(A instanceof gU)return[void 0];else if(A instanceof hU)return[null];else if(A instanceof hC)return[void 0,...y6(A.unwrap())];else if(A instanceof g6)return[null,...y6(A.unwrap())];else if(A instanceof _R)return y6(A.unwrap());else if(A instanceof lU)return y6(A.unwrap());else if(A instanceof cU)return y6(A._def.innerType);else return[]};class kR extends JB{_parse(A){let{ctx:Q}=this._processInputParams(A);if(Q.parsedType!==kA.object)return xA(Q,{code:RA.invalid_type,expected:kA.object,received:Q.parsedType}),LQ;let B=this.discriminator,Y=Q.data[B],J=this.optionsMap.get(Y);if(!J)return xA(Q,{code:RA.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[B]}),LQ;if(Q.common.async)return J._parseAsync({data:Q.data,path:Q.path,parent:Q});else return J._parseSync({data:Q.data,path:Q.path,parent:Q})}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(A,Q,B){let Y=new Map;for(let J of Q){let C=y6(J.shape[A]);if(!C.length)throw Error(`A discriminator value for key \`${A}\` could not be extracted from all schema options`);for(let X of C){if(Y.has(X))throw Error(`Discriminator property ${String(A)} has duplicate value ${String(X)}`);Y.set(X,J)}}return new kR({typeName:zQ.ZodDiscriminatedUnion,discriminator:A,options:Q,optionsMap:Y,...pQ(B)})}}function Ff(A,Q){let B=s1(A),Y=s1(Q);if(A===Q)return{valid:!0,data:A};else if(B===kA.object&&Y===kA.object){let J=FB.objectKeys(Q),C=FB.objectKeys(A).filter((G)=>J.indexOf(G)!==-1),X={...A,...Q};for(let G of C){let W=Ff(A[G],Q[G]);if(!W.valid)return{valid:!1};X[G]=W.data}return{valid:!0,data:X}}else if(B===kA.array&&Y===kA.array){if(A.length!==Q.length)return{valid:!1};let J=[];for(let C=0;C{if(TR(J)||TR(C))return LQ;let X=Ff(J.value,C.value);if(!X.valid)return xA(B,{code:RA.invalid_intersection_types}),LQ;if(SR(J)||SR(C))Q.dirty();return{status:Q.value,value:X.data}};if(B.common.async)return Promise.all([this._def.left._parseAsync({data:B.data,path:B.path,parent:B}),this._def.right._parseAsync({data:B.data,path:B.path,parent:B})]).then(([J,C])=>Y(J,C));else return Y(this._def.left._parseSync({data:B.data,path:B.path,parent:B}),this._def.right._parseSync({data:B.data,path:B.path,parent:B}))}}fU.create=(A,Q,B)=>{return new fU({left:A,right:Q,typeName:zQ.ZodIntersection,...pQ(B)})};class a1 extends JB{_parse(A){let{status:Q,ctx:B}=this._processInputParams(A);if(B.parsedType!==kA.array)return xA(B,{code:RA.invalid_type,expected:kA.array,received:B.parsedType}),LQ;if(B.data.lengththis._def.items.length)xA(B,{code:RA.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),Q.dirty();let J=[...B.data].map((C,X)=>{let G=this._def.items[X]||this._def.rest;if(!G)return null;return G._parse(new xC(B,C,B.path,X))}).filter((C)=>!!C);if(B.common.async)return Promise.all(J).then((C)=>{return WJ.mergeArray(Q,C)});else return WJ.mergeArray(Q,J)}get items(){return this._def.items}rest(A){return new a1({...this._def,rest:A})}}a1.create=(A,Q)=>{if(!Array.isArray(A))throw Error("You must pass an array of schemas to z.tuple([ ... ])");return new a1({items:A,typeName:zQ.ZodTuple,rest:null,...pQ(Q)})};class nH extends JB{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(A){let{status:Q,ctx:B}=this._processInputParams(A);if(B.parsedType!==kA.object)return xA(B,{code:RA.invalid_type,expected:kA.object,received:B.parsedType}),LQ;let Y=[],J=this._def.keyType,C=this._def.valueType;for(let X in B.data)Y.push({key:J._parse(new xC(B,X,B.path,X)),value:C._parse(new xC(B,B.data[X],B.path,X)),alwaysSet:X in B.data});if(B.common.async)return WJ.mergeObjectAsync(Q,Y);else return WJ.mergeObjectSync(Q,Y)}get element(){return this._def.valueType}static create(A,Q,B){if(Q instanceof JB)return new nH({keyType:A,valueType:Q,typeName:zQ.ZodRecord,...pQ(B)});return new nH({keyType:yC.create(),valueType:A,typeName:zQ.ZodRecord,...pQ(Q)})}}class sH extends JB{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(A){let{status:Q,ctx:B}=this._processInputParams(A);if(B.parsedType!==kA.map)return xA(B,{code:RA.invalid_type,expected:kA.map,received:B.parsedType}),LQ;let Y=this._def.keyType,J=this._def.valueType,C=[...B.data.entries()].map(([X,G],W)=>{return{key:Y._parse(new xC(B,X,B.path,[W,"key"])),value:J._parse(new xC(B,G,B.path,[W,"value"]))}});if(B.common.async){let X=new Map;return Promise.resolve().then(async()=>{for(let G of C){let W=await G.key,F=await G.value;if(W.status==="aborted"||F.status==="aborted")return LQ;if(W.status==="dirty"||F.status==="dirty")Q.dirty();X.set(W.value,F.value)}return{status:Q.value,value:X}})}else{let X=new Map;for(let G of C){let{key:W,value:F}=G;if(W.status==="aborted"||F.status==="aborted")return LQ;if(W.status==="dirty"||F.status==="dirty")Q.dirty();X.set(W.value,F.value)}return{status:Q.value,value:X}}}}sH.create=(A,Q,B)=>{return new sH({valueType:Q,keyType:A,typeName:zQ.ZodMap,...pQ(B)})};class XZ extends JB{_parse(A){let{status:Q,ctx:B}=this._processInputParams(A);if(B.parsedType!==kA.set)return xA(B,{code:RA.invalid_type,expected:kA.set,received:B.parsedType}),LQ;let Y=this._def;if(Y.minSize!==null){if(B.data.sizeY.maxSize.value)xA(B,{code:RA.too_big,maximum:Y.maxSize.value,type:"set",inclusive:!0,exact:!1,message:Y.maxSize.message}),Q.dirty()}let J=this._def.valueType;function C(G){let W=new Set;for(let F of G){if(F.status==="aborted")return LQ;if(F.status==="dirty")Q.dirty();W.add(F.value)}return{status:Q.value,value:W}}let X=[...B.data.values()].map((G,W)=>J._parse(new xC(B,G,B.path,W)));if(B.common.async)return Promise.all(X).then((G)=>C(G));else return C(X)}min(A,Q){return new XZ({...this._def,minSize:{value:A,message:tA.toString(Q)}})}max(A,Q){return new XZ({...this._def,maxSize:{value:A,message:tA.toString(Q)}})}size(A,Q){return this.min(A,Q).max(A,Q)}nonempty(A){return this.min(1,A)}}XZ.create=(A,Q)=>{return new XZ({valueType:A,minSize:null,maxSize:null,typeName:zQ.ZodSet,...pQ(Q)})};class vU extends JB{constructor(){super(...arguments);this.validate=this.implement}_parse(A){let{ctx:Q}=this._processInputParams(A);if(Q.parsedType!==kA.function)return xA(Q,{code:RA.invalid_type,expected:kA.function,received:Q.parsedType}),LQ;function B(X,G){return lH({data:X,path:Q.path,errorMaps:[Q.common.contextualErrorMap,Q.schemaErrorMap,SU(),v6].filter((W)=>!!W),issueData:{code:RA.invalid_arguments,argumentsError:G}})}function Y(X,G){return lH({data:X,path:Q.path,errorMaps:[Q.common.contextualErrorMap,Q.schemaErrorMap,SU(),v6].filter((W)=>!!W),issueData:{code:RA.invalid_return_type,returnTypeError:G}})}let J={errorMap:Q.common.contextualErrorMap},C=Q.data;if(this._def.returns instanceof GZ){let X=this;return wJ(async function(...G){let W=new g9([]),F=await X._def.args.parseAsync(G,J).catch(($)=>{throw W.addIssue(B(G,$)),W}),Z=await Reflect.apply(C,this,F);return await X._def.returns._def.type.parseAsync(Z,J).catch(($)=>{throw W.addIssue(Y(Z,$)),W})})}else{let X=this;return wJ(function(...G){let W=X._def.args.safeParse(G,J);if(!W.success)throw new g9([B(G,W.error)]);let F=Reflect.apply(C,this,W.data),Z=X._def.returns.safeParse(F,J);if(!Z.success)throw new g9([Y(F,Z.error)]);return Z.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...A){return new vU({...this._def,args:a1.create(A).rest(j7.create())})}returns(A){return new vU({...this._def,returns:A})}implement(A){return this.parse(A)}strictImplement(A){return this.parse(A)}static create(A,Q,B){return new vU({args:A?A:a1.create([]).rest(j7.create()),returns:Q||j7.create(),typeName:zQ.ZodFunction,...pQ(B)})}}class bU extends JB{get schema(){return this._def.getter()}_parse(A){let{ctx:Q}=this._processInputParams(A);return this._def.getter()._parse({data:Q.data,path:Q.path,parent:Q})}}bU.create=(A,Q)=>{return new bU({getter:A,typeName:zQ.ZodLazy,...pQ(Q)})};class mU extends JB{_parse(A){if(A.data!==this._def.value){let Q=this._getOrReturnCtx(A);return xA(Q,{received:Q.data,code:RA.invalid_literal,expected:this._def.value}),LQ}return{status:"valid",value:A.data}}get value(){return this._def.value}}mU.create=(A,Q)=>{return new mU({value:A,typeName:zQ.ZodLiteral,...pQ(Q)})};function w7A(A,Q){return new T7({values:A,typeName:zQ.ZodEnum,...pQ(Q)})}class T7 extends JB{_parse(A){if(typeof A.data!=="string"){let Q=this._getOrReturnCtx(A),B=this._def.values;return xA(Q,{expected:FB.joinValues(B),received:Q.parsedType,code:RA.invalid_type}),LQ}if(!this._cache)this._cache=new Set(this._def.values);if(!this._cache.has(A.data)){let Q=this._getOrReturnCtx(A),B=this._def.values;return xA(Q,{received:Q.data,code:RA.invalid_enum_value,options:B}),LQ}return wJ(A.data)}get options(){return this._def.values}get enum(){let A={};for(let Q of this._def.values)A[Q]=Q;return A}get Values(){let A={};for(let Q of this._def.values)A[Q]=Q;return A}get Enum(){let A={};for(let Q of this._def.values)A[Q]=Q;return A}extract(A,Q=this._def){return T7.create(A,{...this._def,...Q})}exclude(A,Q=this._def){return T7.create(this.options.filter((B)=>!A.includes(B)),{...this._def,...Q})}}T7.create=w7A;class uU extends JB{_parse(A){let Q=FB.getValidEnumValues(this._def.values),B=this._getOrReturnCtx(A);if(B.parsedType!==kA.string&&B.parsedType!==kA.number){let Y=FB.objectValues(Q);return xA(B,{expected:FB.joinValues(Y),received:B.parsedType,code:RA.invalid_type}),LQ}if(!this._cache)this._cache=new Set(FB.getValidEnumValues(this._def.values));if(!this._cache.has(A.data)){let Y=FB.objectValues(Q);return xA(B,{received:B.data,code:RA.invalid_enum_value,options:Y}),LQ}return wJ(A.data)}get enum(){return this._def.values}}uU.create=(A,Q)=>{return new uU({values:A,typeName:zQ.ZodNativeEnum,...pQ(Q)})};class GZ extends JB{unwrap(){return this._def.type}_parse(A){let{ctx:Q}=this._processInputParams(A);if(Q.parsedType!==kA.promise&&Q.common.async===!1)return xA(Q,{code:RA.invalid_type,expected:kA.promise,received:Q.parsedType}),LQ;let B=Q.parsedType===kA.promise?Q.data:Promise.resolve(Q.data);return wJ(B.then((Y)=>{return this._def.type.parseAsync(Y,{path:Q.path,errorMap:Q.common.contextualErrorMap})}))}}GZ.create=(A,Q)=>{return new GZ({type:A,typeName:zQ.ZodPromise,...pQ(Q)})};class fC extends JB{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===zQ.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(A){let{status:Q,ctx:B}=this._processInputParams(A),Y=this._def.effect||null,J={addIssue:(C)=>{if(xA(B,C),C.fatal)Q.abort();else Q.dirty()},get path(){return B.path}};if(J.addIssue=J.addIssue.bind(J),Y.type==="preprocess"){let C=Y.transform(B.data,J);if(B.common.async)return Promise.resolve(C).then(async(X)=>{if(Q.value==="aborted")return LQ;let G=await this._def.schema._parseAsync({data:X,path:B.path,parent:B});if(G.status==="aborted")return LQ;if(G.status==="dirty")return YZ(G.value);if(Q.value==="dirty")return YZ(G.value);return G});else{if(Q.value==="aborted")return LQ;let X=this._def.schema._parseSync({data:C,path:B.path,parent:B});if(X.status==="aborted")return LQ;if(X.status==="dirty")return YZ(X.value);if(Q.value==="dirty")return YZ(X.value);return X}}if(Y.type==="refinement"){let C=(X)=>{let G=Y.refinement(X,J);if(B.common.async)return Promise.resolve(G);if(G instanceof Promise)throw Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return X};if(B.common.async===!1){let X=this._def.schema._parseSync({data:B.data,path:B.path,parent:B});if(X.status==="aborted")return LQ;if(X.status==="dirty")Q.dirty();return C(X.value),{status:Q.value,value:X.value}}else return this._def.schema._parseAsync({data:B.data,path:B.path,parent:B}).then((X)=>{if(X.status==="aborted")return LQ;if(X.status==="dirty")Q.dirty();return C(X.value).then(()=>{return{status:Q.value,value:X.value}})})}if(Y.type==="transform")if(B.common.async===!1){let C=this._def.schema._parseSync({data:B.data,path:B.path,parent:B});if(!w7(C))return LQ;let X=Y.transform(C.value,J);if(X instanceof Promise)throw Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:Q.value,value:X}}else return this._def.schema._parseAsync({data:B.data,path:B.path,parent:B}).then((C)=>{if(!w7(C))return LQ;return Promise.resolve(Y.transform(C.value,J)).then((X)=>({status:Q.value,value:X}))});FB.assertNever(Y)}}fC.create=(A,Q,B)=>{return new fC({schema:A,typeName:zQ.ZodEffects,effect:Q,...pQ(B)})};fC.createWithPreprocess=(A,Q,B)=>{return new fC({schema:Q,effect:{type:"preprocess",transform:A},typeName:zQ.ZodEffects,...pQ(B)})};class hC extends JB{_parse(A){if(this._getType(A)===kA.undefined)return wJ(void 0);return this._def.innerType._parse(A)}unwrap(){return this._def.innerType}}hC.create=(A,Q)=>{return new hC({innerType:A,typeName:zQ.ZodOptional,...pQ(Q)})};class g6 extends JB{_parse(A){if(this._getType(A)===kA.null)return wJ(null);return this._def.innerType._parse(A)}unwrap(){return this._def.innerType}}g6.create=(A,Q)=>{return new g6({innerType:A,typeName:zQ.ZodNullable,...pQ(Q)})};class dU extends JB{_parse(A){let{ctx:Q}=this._processInputParams(A),B=Q.data;if(Q.parsedType===kA.undefined)B=this._def.defaultValue();return this._def.innerType._parse({data:B,path:Q.path,parent:Q})}removeDefault(){return this._def.innerType}}dU.create=(A,Q)=>{return new dU({innerType:A,typeName:zQ.ZodDefault,defaultValue:typeof Q.default==="function"?Q.default:()=>Q.default,...pQ(Q)})};class cU extends JB{_parse(A){let{ctx:Q}=this._processInputParams(A),B={...Q,common:{...Q.common,issues:[]}},Y=this._def.innerType._parse({data:B.data,path:B.path,parent:{...B}});if(kU(Y))return Y.then((J)=>{return{status:"valid",value:J.status==="valid"?J.value:this._def.catchValue({get error(){return new g9(B.common.issues)},input:B.data})}});else return{status:"valid",value:Y.status==="valid"?Y.value:this._def.catchValue({get error(){return new g9(B.common.issues)},input:B.data})}}removeCatch(){return this._def.innerType}}cU.create=(A,Q)=>{return new cU({innerType:A,typeName:zQ.ZodCatch,catchValue:typeof Q.catch==="function"?Q.catch:()=>Q.catch,...pQ(Q)})};class rH extends JB{_parse(A){if(this._getType(A)!==kA.nan){let B=this._getOrReturnCtx(A);return xA(B,{code:RA.invalid_type,expected:kA.nan,received:B.parsedType}),LQ}return{status:"valid",value:A.data}}}rH.create=(A)=>{return new rH({typeName:zQ.ZodNaN,...pQ(A)})};var hQB=Symbol("zod_brand");class _R extends JB{_parse(A){let{ctx:Q}=this._processInputParams(A),B=Q.data;return this._def.type._parse({data:B,path:Q.path,parent:Q})}unwrap(){return this._def.type}}class aH extends JB{_parse(A){let{status:Q,ctx:B}=this._processInputParams(A);if(B.common.async)return(async()=>{let J=await this._def.in._parseAsync({data:B.data,path:B.path,parent:B});if(J.status==="aborted")return LQ;if(J.status==="dirty")return Q.dirty(),YZ(J.value);else return this._def.out._parseAsync({data:J.value,path:B.path,parent:B})})();else{let Y=this._def.in._parseSync({data:B.data,path:B.path,parent:B});if(Y.status==="aborted")return LQ;if(Y.status==="dirty")return Q.dirty(),{status:"dirty",value:Y.value};else return this._def.out._parseSync({data:Y.value,path:B.path,parent:B})}}static create(A,Q){return new aH({in:A,out:Q,typeName:zQ.ZodPipeline})}}class lU extends JB{_parse(A){let Q=this._def.innerType._parse(A),B=(Y)=>{if(w7(Y))Y.value=Object.freeze(Y.value);return Y};return kU(Q)?Q.then((Y)=>B(Y)):B(Q)}unwrap(){return this._def.innerType}}lU.create=(A,Q)=>{return new lU({innerType:A,typeName:zQ.ZodReadonly,...pQ(Q)})};function q7A(A,Q){let B=typeof A==="function"?A(Q):typeof A==="string"?{message:A}:A;return typeof B==="string"?{message:B}:B}function j7A(A,Q={},B){if(A)return CZ.create().superRefine((Y,J)=>{let C=A(Y);if(C instanceof Promise)return C.then((X)=>{if(!X){let G=q7A(Q,Y),W=G.fatal??B??!0;J.addIssue({code:"custom",...G,fatal:W})}});if(!C){let X=q7A(Q,Y),G=X.fatal??B??!0;J.addIssue({code:"custom",...X,fatal:G})}return});return CZ.create()}var xQB={object:y0.lazycreate},zQ;(function(A){A.ZodString="ZodString",A.ZodNumber="ZodNumber",A.ZodNaN="ZodNaN",A.ZodBigInt="ZodBigInt",A.ZodBoolean="ZodBoolean",A.ZodDate="ZodDate",A.ZodSymbol="ZodSymbol",A.ZodUndefined="ZodUndefined",A.ZodNull="ZodNull",A.ZodAny="ZodAny",A.ZodUnknown="ZodUnknown",A.ZodNever="ZodNever",A.ZodVoid="ZodVoid",A.ZodArray="ZodArray",A.ZodObject="ZodObject",A.ZodUnion="ZodUnion",A.ZodDiscriminatedUnion="ZodDiscriminatedUnion",A.ZodIntersection="ZodIntersection",A.ZodTuple="ZodTuple",A.ZodRecord="ZodRecord",A.ZodMap="ZodMap",A.ZodSet="ZodSet",A.ZodFunction="ZodFunction",A.ZodLazy="ZodLazy",A.ZodLiteral="ZodLiteral",A.ZodEnum="ZodEnum",A.ZodEffects="ZodEffects",A.ZodNativeEnum="ZodNativeEnum",A.ZodOptional="ZodOptional",A.ZodNullable="ZodNullable",A.ZodDefault="ZodDefault",A.ZodCatch="ZodCatch",A.ZodPromise="ZodPromise",A.ZodBranded="ZodBranded",A.ZodPipeline="ZodPipeline",A.ZodReadonly="ZodReadonly"})(zQ||(zQ={}));var fQB=(A,Q={message:`Input not instance of ${A.name}`})=>j7A((B)=>B instanceof A,Q),O7A=yC.create,P7A=O7.create,bQB=rH.create,mQB=P7.create,T7A=yU.create,uQB=JZ.create,dQB=pH.create,cQB=gU.create,lQB=hU.create,pQB=CZ.create,iQB=j7.create,nQB=r1.create,sQB=iH.create,rQB=gC.create,aQB=y0.create,oQB=y0.strictCreate,tQB=xU.create,eQB=kR.create,ABB=fU.create,QBB=a1.create,BBB=nH.create,YBB=sH.create,JBB=XZ.create,CBB=vU.create,XBB=bU.create,GBB=mU.create,WBB=T7.create,FBB=uU.create,ZBB=GZ.create,$BB=fC.create,UBB=hC.create,EBB=g6.create,KBB=fC.createWithPreprocess,VBB=aH.create,IBB=()=>O7A().optional(),HBB=()=>P7A().optional(),DBB=()=>T7A().optional(),NBB={string:(A)=>yC.create({...A,coerce:!0}),number:(A)=>O7.create({...A,coerce:!0}),boolean:(A)=>yU.create({...A,coerce:!0}),bigint:(A)=>P7.create({...A,coerce:!0}),date:(A)=>JZ.create({...A,coerce:!0})};var LBB=LQ;var SB=s;var bC;(function(A){A[A.EXTEND=1]="EXTEND",A[A.WRAP=2]="WRAP",A[A.CROP=3]="CROP"})(bC||(bC={}));var S7=s.object({bitmap:s.object({data:s.union([s.instanceof(Buffer),s.instanceof(Uint8Array)]),width:s.number(),height:s.number()})});var qBB=s.object({src:S7,x:s.number().optional(),y:s.number().optional(),srcX:s.number().optional(),srcY:s.number().optional(),srcW:s.number().optional(),srcH:s.number().optional()}),MBB=s.union([S7,qBB]),pU={blit(A,Q){let B=MBB.parse(Q),{src:Y,x:J=0,y:C=0,srcX:X=0,srcY:G=0,srcW:W=Y.bitmap.width,srcH:F=Y.bitmap.height}="bitmap"in B?{src:B}:B;if(!("bitmap"in Y))throw Error("The source must be a Jimp image");if(typeof J!=="number"||typeof C!=="number")throw Error("x and y must be numbers");J=Math.round(J),C=Math.round(C),X=Math.round(X),G=Math.round(G),W=Math.round(W),F=Math.round(F);let Z=A.bitmap.width,U=A.bitmap.height;return I5(Y,X,G,W,F,function($,E,K){let I=J+$-X,V=C+E-G;if(I>=0&&V>=0&&Z-I>0&&U-V>0){let H=A.getPixelIndex(I,V),D={r:Y.bitmap.data[K]||0,g:Y.bitmap.data[K+1]||0,b:Y.bitmap.data[K+2]||0,a:Y.bitmap.data[K+3]||0},L={r:A.bitmap.data[H]||0,g:A.bitmap.data[H+1]||0,b:A.bitmap.data[H+2]||0,a:A.bitmap.data[H+3]||0};A.bitmap.data[H]=(D.a*(D.r-L.r)-L.r+255>>8)+L.r,A.bitmap.data[H+1]=(D.a*(D.g-L.g)-L.g+255>>8)+L.g,A.bitmap.data[H+2]=(D.a*(D.b-L.b)-L.b+255>>8)+L.b,A.bitmap.data[H+3]=z0(L.a+D.a)}}),A}};var S7A=[1,57,41,21,203,34,97,73,227,91,149,62,105,45,39,137,241,107,3,173,39,71,65,238,219,101,187,87,81,151,141,133,249,117,221,209,197,187,177,169,5,153,73,139,133,127,243,233,223,107,103,99,191,23,177,171,165,159,77,149,9,139,135,131,253,245,119,231,224,109,211,103,25,195,189,23,45,175,171,83,81,79,155,151,147,9,141,137,67,131,129,251,123,30,235,115,113,221,217,53,13,51,50,49,193,189,185,91,179,175,43,169,83,163,5,79,155,19,75,147,145,143,35,69,17,67,33,65,255,251,247,243,239,59,29,229,113,111,219,27,213,105,207,51,201,199,49,193,191,47,93,183,181,179,11,87,43,85,167,165,163,161,159,157,155,77,19,75,37,73,145,143,141,35,138,137,135,67,33,131,129,255,63,250,247,61,121,239,237,117,29,229,227,225,111,55,109,216,213,211,209,207,205,203,201,199,197,195,193,48,190,47,93,185,183,181,179,178,176,175,173,171,85,21,167,165,41,163,161,5,79,157,78,154,153,19,75,149,74,147,73,144,143,71,141,140,139,137,17,135,134,133,66,131,65,129,1],k7A=[0,9,10,10,14,12,14,14,16,15,16,15,16,15,15,17,18,17,12,18,16,17,17,19,19,18,19,18,18,19,19,19,20,19,20,20,20,20,20,20,15,20,19,20,20,20,21,21,21,20,20,20,21,18,21,21,21,21,20,21,17,21,21,21,22,22,21,22,22,21,22,21,19,22,22,19,20,22,22,21,21,21,22,22,22,18,22,22,21,22,22,23,22,20,23,22,22,23,23,21,19,21,21,21,23,23,23,22,23,23,21,23,22,23,18,22,23,20,22,23,23,23,21,22,20,22,21,22,24,24,24,24,24,22,21,24,23,23,24,21,24,23,24,22,24,24,22,24,24,22,23,24,24,24,20,23,22,23,24,24,24,24,24,24,24,23,21,23,22,23,24,24,24,22,24,24,24,23,22,24,24,25,23,25,25,23,24,25,25,24,22,25,25,25,24,23,24,25,25,25,25,25,25,25,25,25,25,25,25,23,25,23,24,25,25,25,25,25,25,25,25,25,24,22,25,25,23,25,25,20,24,25,24,25,25,22,24,25,24,25,24,25,25,24,25,25,25,25,22,25,25,25,24,25,24,25,18];var _7A={blur(A,Q){if(typeof Q!=="number")throw Error("r must be a number");if(Q<1)throw Error("r must be greater than 0");let B,Y,J,C,X,G,W,F,Z,U,$,E,K,I=A.bitmap.width-1,V=A.bitmap.height-1,H=Q+1,D=S7A[Q],L=k7A[Q],z=[],M=[],N=[],q=[],w=[],P=[],_=2;while(_-- >0){E=0,K=0;for(G=0;GI?I:W)<<2),B+=A.bitmap.data[F++],Y+=A.bitmap.data[F++],J+=A.bitmap.data[F++],C+=A.bitmap.data[F];for(X=0;X0?F<<2:0;Z=K+w[X],U=K+P[X],B+=A.bitmap.data[Z++]-A.bitmap.data[U++],Y+=A.bitmap.data[Z++]-A.bitmap.data[U++],J+=A.bitmap.data[Z++]-A.bitmap.data[U++],C+=A.bitmap.data[Z]-A.bitmap.data[U++],E++}K+=A.bitmap.width<<2}for(X=0;XV?0:A.bitmap.width,B+=z[$],Y+=M[$],J+=N[$],C+=q[$];E=X<<2;for(G=0;G>>L),A.bitmap.data[E+1]=z0(Y*D>>>L),A.bitmap.data[E+2]=z0(J*D>>>L),A.bitmap.data[E+3]=z0(C*D>>>L),X===0)w[G]=((F=G+H)0?F*A.bitmap.width:0;Z=X+w[G],U=X+P[G],B+=z[Z]-z[U],Y+=M[Z]-M[U],J+=N[Z]-N[U],C+=q[Z]-q[U],E+=A.bitmap.width<<2}}}return A},gaussian(A,Q){if(typeof Q!=="number")throw Error("r must be a number");if(Q<1)throw Error("r must be greater than 0");let B=Math.ceil(Q*2.57),Y=B*2+1,J=Q*Q*2,C=J*Math.PI,X=[];for(let G=0;GA.bitmap.height?A.bitmap.height:A.bitmap.width)/2,J={x:typeof B.x==="number"?B.x:A.bitmap.width/2,y:typeof B.y==="number"?B.y:A.bitmap.height/2};return A.scan((C,X,G)=>{let W=Math.sqrt(Math.pow(C-J.x,2)+Math.pow(X-J.y,2));if(Y-W<=0)A.bitmap.data[G+3]=0;else if(Y-W<1)A.bitmap.data[G+3]=255*(Y-W)}),A}};var vR=s.array(s.number()).min(1).array(),OBB=s.object({kernel:vR,edgeHandling:s.nativeEnum(bC).optional()}),PBB=s.union([vR,OBB]),TBB=s.object({kernel:vR,x:s.number().optional(),y:s.number().optional(),w:s.number().optional(),h:s.number().optional()}),SBB=s.union([vR,TBB]),g7A=s.number().min(1).max(1/0),kBB=s.object({size:g7A,x:s.number().optional(),y:s.number().optional(),w:s.number().optional(),h:s.number().optional()}),_BB=s.union([g7A,kBB]);function y7A(A,Q,B,Y){let J=[0,0,0,0],C=(Q.length-1)/2;for(let X=0;X{Q.r[A.bitmap.data[J+0]]++,Q.g[A.bitmap.data[J+1]]++,Q.b[A.bitmap.data[J+2]]++}),Q}var $f=function(A,Q,B){return(A-Q)*255/(B-Q)},Uf=function(A){return[A.findIndex((Q)=>Q>0),255-A.slice().reverse().findIndex((Q)=>Q>0)]},iU={normalize(A){let Q=rBB(A),B={r:Uf(Q.r),g:Uf(Q.g),b:Uf(Q.b)};return A.scan((Y,J,C)=>{let X=A.bitmap.data[C+0],G=A.bitmap.data[C+1],W=A.bitmap.data[C+2];A.bitmap.data[C+0]=$f(X,B.r[0],B.r[1]),A.bitmap.data[C+1]=$f(G,B.g[0],B.g[1]),A.bitmap.data[C+2]=$f(W,B.b[0],B.b[1])}),A},invert(A){return A.scan((Q,B,Y)=>{A.bitmap.data[Y]=255-A.bitmap.data[Y],A.bitmap.data[Y+1]=255-A.bitmap.data[Y+1],A.bitmap.data[Y+2]=255-A.bitmap.data[Y+2]}),A},brightness(A,Q){if(typeof Q!=="number")throw Error("val must be numbers");return A.scan((B,Y,J)=>{A.bitmap.data[J]=z0(A.bitmap.data[J]*Q),A.bitmap.data[J+1]=z0(A.bitmap.data[J+1]*Q),A.bitmap.data[J+2]=z0(A.bitmap.data[J+2]*Q)}),A},contrast(A,Q){if(typeof Q!=="number")throw Error("val must be numbers");if(Q<-1||Q>1)throw Error("val must be a number between -1 and +1");let B=(Q+1)/(1-Q);function Y(J){return J=Math.floor(B*(J-127)+127),J<0?0:J>255?255:J}return A.scan((J,C,X)=>{A.bitmap.data[X]=Y(A.bitmap.data[X]),A.bitmap.data[X+1]=Y(A.bitmap.data[X+1]),A.bitmap.data[X+2]=Y(A.bitmap.data[X+2])}),A},posterize(A,Q){if(typeof Q!=="number")throw Error("n must be numbers");if(Q<2)Q=2;return A.scan((B,Y,J)=>{let C=A.bitmap.data[J],X=A.bitmap.data[J+1],G=A.bitmap.data[J+2];A.bitmap.data[J]=Math.floor(C/255*(Q-1))/(Q-1)*255,A.bitmap.data[J+1]=Math.floor(X/255*(Q-1))/(Q-1)*255,A.bitmap.data[J+2]=Math.floor(G/255*(Q-1))/(Q-1)*255}),A},greyscale(A){return A.scan((Q,B,Y)=>{let J=0.2126*A.bitmap.data[Y]+0.7152*A.bitmap.data[Y+1]+0.0722*A.bitmap.data[Y+2];A.bitmap.data[Y]=J,A.bitmap.data[Y+1]=J,A.bitmap.data[Y+2]=J}),A},opacity(A,Q){if(typeof Q!=="number")throw Error("f must be a number");if(Q<0||Q>1)throw Error("f must be a number from 0 to 1");return A.scan((B,Y,J)=>{let C=A.bitmap.data[J+3]*Q;A.bitmap.data[J+3]=C}),A},sepia(A){return A.scan((Q,B,Y)=>{let J=A.bitmap.data[Y],C=A.bitmap.data[Y+1],X=A.bitmap.data[Y+2];J=J*0.393+C*0.769+X*0.189,C=J*0.349+C*0.686+X*0.168,X=J*0.272+C*0.534+X*0.131,A.bitmap.data[Y]=J<255?J:255,A.bitmap.data[Y+1]=C<255?C:255,A.bitmap.data[Y+2]=X<255?X:255}),A},fade(A,Q){if(typeof Q!=="number")throw Error("f must be a number");if(Q<0||Q>1)throw Error("f must be a number from 0 to 1");return this.opacity(A,1-Q)},convolution(A,Q){let B=PBB.parse(Q),{kernel:Y,edgeHandling:J=bC.EXTEND}="kernel"in B?B:{kernel:B,edgeHandling:void 0};if(!Y[0])throw Error("kernel must be a matrix");let C=Buffer.from(A.bitmap.data),X=Y.length,G=Y[0].length,W=Math.floor(X/2),F=Math.floor(G/2),Z=-W,U=-F,$,E,K,I,V,H,D,L,z,M;return A.scan((N,q,w)=>{I=0,K=0,E=0;for(let P=Z;P<=W;P++)for(let _=U;_<=F;_++){if(L=N+_,z=q+P,$=Y[P+W][_+F],M=A.getPixelIndex(L,z,J),M===-1)D=0,H=0,V=0;else V=A.bitmap.data[M+0],H=A.bitmap.data[M+1],D=A.bitmap.data[M+2];E+=$*V,K+=$*H,I+=$*D}if(E<0)E=0;if(K<0)K=0;if(I<0)I=0;if(E>255)E=255;if(K>255)K=255;if(I>255)I=255;C[w+0]=E,C[w+1]=K,C[w+2]=I}),A.bitmap.data=C,A},opaque(A){return A.scan((Q,B,Y)=>{A.bitmap.data[Y+3]=255}),A},pixelate(A,Q){let B=_BB.parse(Q),{size:Y,x:J=0,y:C=0,w:X=A.bitmap.width-J,h:G=A.bitmap.height-C}=typeof B==="number"?{size:B}:B,W=[[0.0625,0.125,0.0625],[0.125,0.25,0.125],[0.0625,0.125,0.0625]],F=K8(A);return I5(F,J,C,X,G,(Z,U,$)=>{Z=Y*Math.floor(Z/Y),U=Y*Math.floor(U/Y);let E=y7A(F,W,Z,U);A.bitmap.data[$]=E[0],A.bitmap.data[$+1]=E[1],A.bitmap.data[$+2]=E[2],A.bitmap.data[$+3]=E[3]}),A},convolute(A,Q){let B=SBB.parse(Q),{kernel:Y,x:J=0,y:C=0,w:X=A.bitmap.width-J,h:G=A.bitmap.height-C}="kernel"in B?B:{kernel:B},W=K8(A);return I5(W,J,C,X,G,(F,Z,U)=>{let $=y7A(W,Y,F,Z);A.bitmap.data[U]=z0($[0]),A.bitmap.data[U+1]=z0($[1]),A.bitmap.data[U+2]=z0($[2]),A.bitmap.data[U+3]=z0($[3])}),A},color(A,Q){if(!Q||!Array.isArray(Q))throw Error("actions must be an array");return Q.forEach((B)=>sBB.parse(B)),Q=Q.map((B)=>{if(B.apply==="xor"||B.apply==="mix")B.params[0]=oA(B.params[0]).toRgb();return B}),A.scan((B,Y,J)=>{let C={r:A.bitmap.data[J],g:A.bitmap.data[J+1],b:A.bitmap.data[J+2]},X=(G,W)=>z0(C[G]+W);Q.forEach((G)=>{if(G.apply==="mix")C=Zf(C,G.params[0],G.params[1]);else if(G.apply==="tint")C=Zf(C,{r:255,g:255,b:255},G.params?.[0]);else if(G.apply==="shade")C=Zf(C,{r:0,g:0,b:0},G.params?.[0]);else if(G.apply==="xor")C={r:C.r^G.params[0].r,g:C.g^G.params[0].g,b:C.b^G.params[0].b};else if(G.apply==="red")C.r=X("r",G.params[0]);else if(G.apply==="green")C.g=X("g",G.params[0]);else if(G.apply==="blue")C.b=X("b",G.params[0]);else{if(G.apply==="hue")G.apply="spin";let W=oA(C),F=W[G.apply].bind(W);if(!F)throw Error("action "+G.apply+" not supported");C=F(...G.params||[]).toRgb()}}),A.bitmap.data[J]=C.r,A.bitmap.data[J+1]=C.g,A.bitmap.data[J+2]=C.b}),A}};var LFA=qA(zWA(),1),wf=qA(wWA(),1);import{promises as jWA}from"fs";import{existsSync as TWA}from"fs";var OWA=jWA.readFile,PWA=jWA.writeFile;var qFA=qA(gWA(),1);var M5;(function(A){A[A.LEFT=1]="LEFT",A[A.CENTER=2]="CENTER",A[A.RIGHT=4]="RIGHT"})(M5||(M5={}));var z5;(function(A){A[A.TOP=8]="TOP",A[A.MIDDLE=16]="MIDDLE",A[A.BOTTOM=32]="BOTTOM"})(z5||(z5={}));var dR;(function(A){A.SRC_OVER="srcOver",A.DST_OVER="dstOver",A.MULTIPLY="multiply",A.ADD="add",A.SCREEN="screen",A.OVERLAY="overlay",A.DARKEN="darken",A.LIGHTEN="lighten",A.HARD_LIGHT="hardLight",A.DIFFERENCE="difference",A.EXCLUSION="exclusion"})(dR||(dR={}));var Nf={};iG(Nf,{srcOver:()=>hWA,screen:()=>mWA,overlay:()=>uWA,names:()=>QYB,multiply:()=>fWA,lighten:()=>cWA,hardLight:()=>lWA,exclusion:()=>iWA,dstOver:()=>xWA,difference:()=>pWA,darken:()=>dWA,add:()=>bWA});function hWA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=(A.r*A.a+Q.r*Q.a*(1-A.a))/Y,C=(A.g*A.a+Q.g*Q.a*(1-A.a))/Y,X=(A.b*A.a+Q.b*Q.a*(1-A.a))/Y;return{r:J,g:C,b:X,a:Y}}function xWA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=(Q.r*Q.a+A.r*A.a*(1-Q.a))/Y,C=(Q.g*Q.a+A.g*A.a*(1-Q.a))/Y,X=(Q.b*Q.a+A.b*A.a*(1-Q.a))/Y;return{r:J,g:C,b:X,a:Y}}function fWA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,W=Q.g*Q.a,F=Q.b*Q.a,Z=(J*G+J*(1-Q.a)+G*(1-A.a))/Y,U=(C*W+C*(1-Q.a)+W*(1-A.a))/Y,$=(X*F+X*(1-Q.a)+F*(1-A.a))/Y;return{r:Z,g:U,b:$,a:Y}}function bWA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,W=Q.g*Q.a,F=Q.b*Q.a,Z=(J+G)/Y,U=(C+W)/Y,$=(X+F)/Y;return{r:Z,g:U,b:$,a:Y}}function mWA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,W=Q.g*Q.a,F=Q.b*Q.a,Z=(J*Q.a+G*A.a-J*G+J*(1-Q.a)+G*(1-A.a))/Y,U=(C*Q.a+W*A.a-C*W+C*(1-Q.a)+W*(1-A.a))/Y,$=(X*Q.a+F*A.a-X*F+X*(1-Q.a)+F*(1-A.a))/Y;return{r:Z,g:U,b:$,a:Y}}function uWA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,W=Q.g*Q.a,F=Q.b*Q.a,Z=(2*G<=Q.a?2*J*G+J*(1-Q.a)+G*(1-A.a):J*(1+Q.a)+G*(1+A.a)-2*G*J-Q.a*A.a)/Y,U=(2*W<=Q.a?2*C*W+C*(1-Q.a)+W*(1-A.a):C*(1+Q.a)+W*(1+A.a)-2*W*C-Q.a*A.a)/Y,$=(2*F<=Q.a?2*X*F+X*(1-Q.a)+F*(1-A.a):X*(1+Q.a)+F*(1+A.a)-2*F*X-Q.a*A.a)/Y;return{r:Z,g:U,b:$,a:Y}}function dWA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,W=Q.g*Q.a,F=Q.b*Q.a,Z=(Math.min(J*Q.a,G*A.a)+J*(1-Q.a)+G*(1-A.a))/Y,U=(Math.min(C*Q.a,W*A.a)+C*(1-Q.a)+W*(1-A.a))/Y,$=(Math.min(X*Q.a,F*A.a)+X*(1-Q.a)+F*(1-A.a))/Y;return{r:Z,g:U,b:$,a:Y}}function cWA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,W=Q.g*Q.a,F=Q.b*Q.a,Z=(Math.max(J*Q.a,G*A.a)+J*(1-Q.a)+G*(1-A.a))/Y,U=(Math.max(C*Q.a,W*A.a)+C*(1-Q.a)+W*(1-A.a))/Y,$=(Math.max(X*Q.a,F*A.a)+X*(1-Q.a)+F*(1-A.a))/Y;return{r:Z,g:U,b:$,a:Y}}function lWA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,W=Q.g*Q.a,F=Q.b*Q.a,Z=(2*J<=A.a?2*J*G+J*(1-Q.a)+G*(1-A.a):J*(1+Q.a)+G*(1+A.a)-2*G*J-Q.a*A.a)/Y,U=(2*C<=A.a?2*C*W+C*(1-Q.a)+W*(1-A.a):C*(1+Q.a)+W*(1+A.a)-2*W*C-Q.a*A.a)/Y,$=(2*X<=A.a?2*X*F+X*(1-Q.a)+F*(1-A.a):X*(1+Q.a)+F*(1+A.a)-2*F*X-Q.a*A.a)/Y;return{r:Z,g:U,b:$,a:Y}}function pWA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,W=Q.g*Q.a,F=Q.b*Q.a,Z=(J+G-2*Math.min(J*Q.a,G*A.a))/Y,U=(C+W-2*Math.min(C*Q.a,W*A.a))/Y,$=(X+F-2*Math.min(X*Q.a,F*A.a))/Y;return{r:Z,g:U,b:$,a:Y}}function iWA(A,Q,B=1){A.a*=B;let Y=Q.a+A.a-Q.a*A.a,J=A.r*A.a,C=A.g*A.a,X=A.b*A.a,G=Q.r*Q.a,W=Q.g*Q.a,F=Q.b*Q.a,Z=(J*Q.a+G*A.a-2*J*G+J*(1-Q.a)+G*(1-A.a))/Y,U=(C*Q.a+W*A.a-2*C*W+C*(1-Q.a)+W*(1-A.a))/Y,$=(X*Q.a+F*A.a-2*X*F+X*(1-Q.a)+F*(1-A.a))/Y;return{r:Z,g:U,b:$,a:Y}}var QYB=[hWA,xWA,fWA,bWA,mWA,uWA,dWA,cWA,lWA,pWA,iWA];function nU(A,Q,B=0,Y=0,J={}){if(!(Q instanceof A.constructor))throw Error("The source must be a Jimp image");if(typeof B!=="number"||typeof Y!=="number")throw Error("x and y must be numbers");let{mode:C=dR.SRC_OVER}=J,{opacitySource:X=1,opacityDest:G=1}=J;if(typeof X!=="number"||X<0||X>1)X=1;if(typeof G!=="number"||G<0||G>1)G=1;let W=Nf[C];if(B=Math.round(B),Y=Math.round(Y),G!==1)A.scan((F,Z,U)=>{let $=A.bitmap.data[U+3]*G;A.bitmap.data[U+3]=$});return Q.scan((F,Z,U)=>{let $=A.getPixelIndex(B+F,Y+Z,bC.CROP);if($===-1)return;let E=W({r:Q.bitmap.data[U+0]/255,g:Q.bitmap.data[U+1]/255,b:Q.bitmap.data[U+2]/255,a:Q.bitmap.data[U+3]/255},{r:A.bitmap.data[$+0]/255,g:A.bitmap.data[$+1]/255,b:A.bitmap.data[$+2]/255,a:A.bitmap.data[$+3]/255},X);A.bitmap.data[$+0]=z0(E.r*255),A.bitmap.data[$+1]=z0(E.g*255),A.bitmap.data[$+2]=z0(E.b*255),A.bitmap.data[$+3]=z0(E.a*255)}),A}var HFA=qA(IFA(),1);function zf(A){let Q=A._exif;return Q&&Q.tags&&Q.tags.Orientation||1}function EYB(A){let Q=A.bitmap.width,B=A.bitmap.height;switch(zf(A)){case 1:return null;case 2:return function(Y,J){return[Q-Y-1,J]};case 3:return function(Y,J){return[Q-Y-1,B-J-1]};case 4:return function(Y,J){return[Y,B-J-1]};case 5:return function(Y,J){return[J,Y]};case 6:return function(Y,J){return[J,B-Y-1]};case 7:return function(Y,J){return[Q-J-1,B-Y-1]};case 8:return function(Y,J){return[Q-J-1,Y]};default:return null}}function KYB(A,Q,B,Y){let J=A.bitmap.data,C=A.bitmap.width,X=Buffer.alloc(J.length);for(let G=0;G4,Y=B?A.bitmap.height:A.bitmap.width,J=B?A.bitmap.width:A.bitmap.height;if(Q)KYB(A,Y,J,Q)}async function DFA(A,Q){try{A._exif=HFA.default.create(Q).parse(),VYB(A)}catch{}}var Rf={data:Buffer.alloc(0),width:0,height:0};function NFA(A){let Q=Buffer.alloc(A.byteLength),B=new Uint8Array(A);for(let Y=0;YC()),J=class{bitmap=Rf;background=0;formats=[];mime;constructor(X=Rf){if(this.formats=Y,"data"in X)this.bitmap=X;else if(this.bitmap={data:Buffer.alloc(X.width*X.height*4),width:X.width,height:X.height},X.color){this.background=typeof X.color==="string"?M1A(X.color):X.color;for(let G=0;G{let Z=G[W]?.(this,...F);if(typeof Z==="object"&&"bitmap"in Z)return this.bitmap=Z.bitmap,this;return Z}}static async read(X,G){if(Buffer.isBuffer(X)||X instanceof ArrayBuffer)return this.fromBuffer(X);if(TWA(X))return this.fromBuffer(await OWA(X));let[W,F]=await wf.to(fetch(X));if(W)throw Error(`Could not load Buffer from URL: ${X}`);if(!F.ok)throw Error(`HTTP Status ${F.status} for url ${X}`);let[Z,U]=await wf.to(F.arrayBuffer());if(Z)throw Error(`Could not load Buffer from ${X}`);let $=NFA(U);return this.fromBuffer($,G)}static fromBitmap(X){let G;if(X.data instanceof Buffer)G=Buffer.from(X.data);if(X.data instanceof Uint8Array||X.data instanceof Uint8ClampedArray)G=Buffer.from(X.data.buffer);if(Array.isArray(X.data))G=Buffer.concat(X.data.map((W)=>Buffer.from(W.toString(16).padStart(8,"0"),"hex")));if(!G)throw Error("data must be a Buffer");if(typeof X.height!=="number"||typeof X.width!=="number")throw Error("bitmap must have width and height");return new J({height:X.height,width:X.width,data:G})}static async fromBuffer(X,G){let W=X instanceof ArrayBuffer?NFA(X):X,F=await LFA.default.fromBuffer(W);if(!F||!F.mime)throw Error("Could not find MIME for Buffer");let Z=Y.find(($)=>$.mime===F.mime);if(!Z||!Z.decode)throw Error(`Mime type ${F.mime} does not support decoding`);let U=new J(await Z.decode(W,G?.[Z.mime]));return U.mime=F.mime,DFA(U,W),U}inspect(){return""}toString(){return"[object Jimp]"}get width(){return this.bitmap.width}get height(){return this.bitmap.height}async getBuffer(X,G){let W=this.formats.find((Z)=>Z.mime===X);if(!W||!W.encode)throw Error(`Unsupported MIME type: ${X}`);let F;if(W.hasAlpha)F=this;else F=new J({width:this.bitmap.width,height:this.bitmap.height,color:this.background}),nU(F,this);return W.encode(F.bitmap,G)}async getBase64(X,G){let W=await this.getBuffer(X,G);return"data:"+X+";base64,"+W.toString("base64")}async write(X,G){let W=qFA.default.getType(X);await PWA(X,await this.getBuffer(W,G))}clone(){return new J({...this.bitmap,data:Buffer.from(this.bitmap.data)})}getPixelIndex(X,G,W){let F,Z;if(!W)W=bC.EXTEND;if(typeof X!=="number"||typeof G!=="number")throw Error("x and y must be numbers");if(X=Math.round(X),G=Math.round(G),F=X,Z=G,W===bC.EXTEND){if(X<0)F=0;if(X>=this.bitmap.width)F=this.bitmap.width-1;if(G<0)Z=0;if(G>=this.bitmap.height)Z=this.bitmap.height-1}if(W===bC.WRAP){if(X<0)F=this.bitmap.width+X;if(X>=this.bitmap.width)F=X%this.bitmap.width;if(G<0)Z=this.bitmap.height+G;if(G>=this.bitmap.height)Z=G%this.bitmap.height}let U=this.bitmap.width*Z+F<<2;if(F<0||F>=this.bitmap.width)U=-1;if(Z<0||Z>=this.bitmap.height)U=-1;return U}getPixelColor(X,G){if(typeof X!=="number"||typeof G!=="number")throw Error("x and y must be numbers");let W=this.getPixelIndex(X,G);return this.bitmap.data.readUInt32BE(W)}setPixelColor(X,G,W){if(typeof X!=="number"||typeof G!=="number"||typeof W!=="number")throw Error("hex, x and y must be numbers");let F=this.getPixelIndex(G,W);return this.bitmap.data.writeUInt32BE(X,F),this}hasAlpha(){let{width:X,height:G,data:W}=this.bitmap,F=X*G<<2;for(let Z=3;Z0&&this.heightOriginal>0&&this.targetWidth>0&&this.targetHeight>0)this.configurePasses();else throw console.log(this),Error("Invalid settings specified for the resizer.")};qY.prototype.configurePasses=function(){if(this.widthOriginal===this.targetWidth)this.resizeWidth=this.bypassResizer;else if(this.ratioWeightWidthPass=this.widthOriginal/this.targetWidth,this.ratioWeightWidthPass<1&&this.interpolationPass)this.initializeFirstPassBuffers(!0),this.resizeWidth=this.colorChannels===4?this.resizeWidthInterpolatedRGBA:this.resizeWidthInterpolatedRGB;else this.initializeFirstPassBuffers(!1),this.resizeWidth=this.colorChannels===4?this.resizeWidthRGBA:this.resizeWidthRGB;if(this.heightOriginal===this.targetHeight)this.resizeHeight=this.bypassResizer;else if(this.ratioWeightHeightPass=this.heightOriginal/this.targetHeight,this.ratioWeightHeightPass<1&&this.interpolationPass)this.initializeSecondPassBuffers(!0),this.resizeHeight=this.resizeHeightInterpolated;else this.initializeSecondPassBuffers(!1),this.resizeHeight=this.colorChannels===4?this.resizeHeightRGBA:this.resizeHeightRGB};qY.prototype._resizeWidthInterpolatedRGBChannels=function(A,Q){let B=Q?4:3,Y=this.ratioWeightWidthPass,J=this.widthBuffer,C=0,X=0,G=0,W=0,F=0,Z;for(Z=0;C<0.3333333333333333;Z+=B,C+=Y)for(X=Z,G=0;X=U)$+=B,E=$,Z-=U;else{E+=Z;break}}while(Z>0&&$=W)F=E,Z=F,G-=W;else{Z+=G;break}}while(G>0&&F3)this.outputWidthWorkBenchOpaquePixelsCount=this.generateFloat64Buffer(this.heightOriginal)}};qY.prototype.initializeSecondPassBuffers=function(A){if(this.heightBuffer=this.generateUint8Buffer(this.finalResultSize),!A){if(this.outputHeightWorkBench=this.generateFloatBuffer(this.targetWidthMultipliedByChannels),this.colorChannels>3)this.outputHeightWorkBenchOpaquePixelsCount=this.generateFloat64Buffer(this.targetWidth)}};qY.prototype.generateFloatBuffer=function(A){try{return new Float32Array(A)}catch(Q){return console.error(Q),[]}};qY.prototype.generateFloat64Buffer=function(A){try{return new Float64Array(A)}catch(Q){return console.error(Q),[]}};qY.prototype.generateUint8Buffer=function(A){try{return new Uint8Array(A)}catch(Q){return console.error(Q),[]}};var zFA=qY;var jf={nearestNeighbor(A,Q){let{width:B,height:Y}=A,J=Q.width,C=Q.height,X=A.data,G=Q.data;for(let W=0;W0?J[P-4]:2*J[P]-J[P+4],j=J[P],k=J[P+4],T=z0?K[P-U*4]:2*K[P]-K[P+U*4],j=K[P],k=K[P+U*4],T=z1)for(let H=0;H{A.bitmap.data=Buffer.from(X),A.bitmap.width=Y,A.bitmap.height=J}).resize(A.bitmap.data);return A},scale(A,Q){let{f:B,mode:Y}=typeof Q==="number"?{f:Q}:DYB.parse(Q),J=A.bitmap.width*B,C=A.bitmap.height*B;return this.resize(A,{w:J,h:C,mode:Y})},scaleToFit(A,Q){let{h:B,w:Y,mode:J}=HYB.parse(Q),C=Y/B>A.bitmap.width/A.bitmap.height?B/A.bitmap.height:Y/A.bitmap.width;return this.scale(A,{f:C,mode:J})}};var LYB=s.object({w:s.number(),h:s.number(),align:s.number().optional(),mode:s.nativeEnum(N8).optional()}),RFA={contain(A,Q){let{w:B,h:Y,align:J=M5.CENTER|z5.MIDDLE,mode:C}=LYB.parse(Q),X=J&7,G=J>>3;if(!(X!==0&&!(X&X-1)||G!==0&&!(G&G-1)))throw Error("only use one flag per alignment direction");let W=X>>1,F=G>>1,Z=B/Y>A.bitmap.width/A.bitmap.height?Y/A.bitmap.height:B/A.bitmap.width,U=mC.scale(K8(A),{f:Z,mode:C});return A=mC.resize(A,{w:B,h:Y,mode:C}),A.scan(($,E,K)=>{A.bitmap.data.writeUInt32BE(A.background,K)}),A=pU.blit(A,{src:U,x:(A.bitmap.width-U.bitmap.width)/2*W,y:(A.bitmap.height-U.bitmap.height)/2*F}),A}};var MYB=s.object({x:s.number(),y:s.number(),w:s.number(),h:s.number()}),zYB=s.object({tolerance:s.number().min(0).max(1).optional(),cropOnlyFrames:s.boolean().optional(),cropSymmetric:s.boolean().optional(),leaveBorder:s.number().optional(),ignoreSides:s.object({north:s.boolean().optional(),south:s.boolean().optional(),east:s.boolean().optional(),west:s.boolean().optional()}).optional()}),aU={crop(A,Q){let{x:B,y:Y,w:J,h:C}=MYB.parse(Q);if(B=Math.round(B),Y=Math.round(Y),J=Math.round(J),C=Math.round(C),B===0&&J===A.bitmap.width){let X=J*Y+B<<2,G=X+(C*J<<2);A.bitmap.data=A.bitmap.data.slice(X,G)}else{let X=Buffer.allocUnsafe(J*C*4),G=0;I5(A,B,Y,J,C,function(W,F,Z){let U=A.bitmap.data.readUInt32BE(Z);X.writeUInt32BE(U,G),G+=4}),A.bitmap.data=X}return A.bitmap.width=J,A.bitmap.height=C,A},autocrop(A,Q={}){let{tolerance:B=0.0002,cropOnlyFrames:Y=!0,cropSymmetric:J=!1,leaveBorder:C=0,ignoreSides:X}=typeof Q==="number"?{tolerance:Q}:zYB.parse(Q),G=A.bitmap.width,W=A.bitmap.height,F=1,Z={north:!1,south:!1,east:!1,west:!1,...X},U=A.getPixelColor(0,0),$=$U(U),E=0,K=0,I=0,V=0;if(U=A.getPixelColor(0,0),!Z.north)A:for(let z=0;zB)break A}E++}if(U=A.getPixelColor(G,0),!Z.west)A:for(let z=0;zB)break A}V++}if(U=A.getPixelColor(0,W),!Z.south)A:for(let z=W-1;z>=E+1;z--){for(let M=G-K-1;M>=0;M--){let N=A.getPixelColor(M,z),q=$U(N);if(DH($,q)>B)break A}I++}if(U=A.getPixelColor(G,W),!Z.east)A:for(let z=G-1;z>=0+V+1;z--){for(let M=W-1;M>=0+E;M--){let N=A.getPixelColor(z,M),q=$U(N);if(DH($,q)>B)break A}K++}let H=!1;if(V-=C,K-=C,E-=C,I-=C,J){let z=Math.min(K,V),M=Math.min(E,I);V=z,K=z,E=M,I=M}V=V>=0?V:0,K=K>=0?K:0,E=E>=0?E:0,I=I>=0?I:0;let D=G-(V+K),L=W-(I+E);if(Y)H=K!==0&&E!==0&&V!==0&&I!==0;else H=K!==0||E!==0||V!==0||I!==0;if(H)this.crop(A,{x:V,y:E,w:D,h:L});return A}};var wYB=s.object({w:s.number(),h:s.number(),align:s.number().optional(),mode:s.nativeEnum(N8).optional()}),wFA={cover(A,Q){let{w:B,h:Y,align:J=M5.CENTER|z5.MIDDLE,mode:C}=wYB.parse(Q),X=J&7,G=J>>3;if(!(X!==0&&!(X&X-1)||G!==0&&!(G&G-1)))throw Error("only use one flag per alignment direction");let W=X>>1,F=G>>1,Z=B/Y>A.bitmap.width/A.bitmap.height?B/A.bitmap.width:Y/A.bitmap.height;return A=mC.scale(A,{f:Z,mode:C}),A=aU.crop(A,{x:(A.bitmap.width-B)/2*W,y:(A.bitmap.height-Y)/2*F,w:B,h:Y}),A}};var OYB=s.object({map:S7,offset:s.number()}),jFA={displace(A,Q){let{map:B,offset:Y}=OYB.parse(Q),J=K8(A);return A.scan((C,X,G)=>{let W=B.bitmap.data[G]/256*Y;W=Math.round(W);let F=A.getPixelIndex(C+W,X);A.bitmap.data[F]=J.bitmap.data[G],A.bitmap.data[F+1]=J.bitmap.data[G+1],A.bitmap.data[F+2]=J.bitmap.data[G+2]}),A}};var OFA={dither(A){let Q=[1,9,3,11,13,5,15,7,4,12,2,10,16,8,14,6];return A.scan((B,Y,J)=>{let C=((Y&3)<<2)+B%4,X=Q[C];A.bitmap.data[J]=Math.min(A.bitmap.data[J]+X,255),A.bitmap.data[J+1]=Math.min(A.bitmap.data[J+1]+X,255),A.bitmap.data[J+2]=Math.min(A.bitmap.data[J+2]+X,255)}),A}};var SYB=s.object({radius:s.number().min(0).optional()}),PFA={fisheye(A,Q={}){let{radius:B=2.5}=SYB.parse(Q),Y=K8(A),{width:J,height:C}=Y.bitmap;return Y.scan((X,G)=>{let W=X/J,F=G/C,Z=Math.sqrt(Math.pow(W-0.5,2)+Math.pow(F-0.5,2)),U=2*Math.pow(Z,B),$=(W-0.5)/Z,E=(F-0.5)/Z,K=Math.round((U*$+0.5)*J),I=Math.round((U*E+0.5)*C),V=Y.getPixelColor(K,I);A.setPixelColor(V,X,G)}),A.setPixelColor(Y.getPixelColor(J/2,C/2),J/2,C/2),A}};var _YB=s.object({horizontal:s.boolean().optional(),vertical:s.boolean().optional()}),TFA={flip(A,Q){let{horizontal:B,vertical:Y}=_YB.parse(Q),J=Buffer.alloc(A.bitmap.data.length);return A.scan((C,X,G)=>{let W=B?A.bitmap.width-1-C:C,F=Y?A.bitmap.height-1-X:X,Z=A.bitmap.width*F+W<<2,U=A.bitmap.data.readUInt32BE(G);J.writeUInt32BE(U,Z)}),A.bitmap.data=Buffer.from(J),A}};var AD=qA(vFA(),1);class yFA{size;smallerSize;constructor(A,Q){this.size=A||32,this.smallerSize=Q||8,hYB(this.size)}distance(A,Q){let B=0;for(let Y=0;YJ?"1":"0";return C}}function gYB(A){let Q=A&255;A>>>=8;let B=A&255;A>>>=8;let Y=A&255;return A>>>=8,{r:A&255,g:Y,b:B,a:Q}}var pR=[];function hYB(A){for(let Q=1;Q64)throw Error("base must be a number between 2 and 64");let B=gFA.slice(0,Q),Y=this.pHash(A),J=hFA[Q];return AD.default(AD.default.BIN,B)(Y).padStart(J,"0")},distanceFromHash(A,Q){let B=new Pf,Y=B.getHash(A);return B.distance(Y,Q)}};var bYB=s.object({src:S7,x:s.number().optional(),y:s.number().optional()}),mYB=s.union([S7,bYB]),fFA={mask(A,Q){mYB.parse(Q);let B,Y,J;if("bitmap"in Q)B=Q,Y=0,J=0;else B=Q.src,Y=Q.x??0,J=Q.y??0;Y=Math.round(Y),J=Math.round(J);let C=A.bitmap.width,X=A.bitmap.height;return B.scan(function(G,W,F){let Z=Y+G,U=J+W;if(Z>=0&&U>=0&&Z{if(oU(A,G+(Y.length>1?" ":""))>B){let U=G[Symbol.iterator](),$="";for(let E of U){let K=[...C,$+E].join(" "),I=oU(A,K);if(IB)J.push([...C,$]),C=[],$=E;else J.push([...C,$+E]),C=[],$=""}return}let F=[...C,G].join(" "),Z=oU(A,F);if(Z<=B&&!G.includes(` `)){if(Z>X)X=Z;C.push(G)}else J.push(C),C=[G.replace(` -`,"")]}),J.push(C),{lines:J,longestLine:X}}function Sf(A,Q,B){let{lines:Y}=Tf(A,Q,B);return Y.length*A.common.lineHeight}var dYB=s.object({x:s.number(),y:s.number(),text:s.union([s.union([s.string(),s.number()]),s.object({text:s.union([s.string(),s.number()]),alignmentX:s.nativeEnum(M5).optional(),alignmentY:s.nativeEnum(z5).optional()})]),maxWidth:s.number().optional(),maxHeight:s.number().optional(),cb:s.function(s.tuple([s.object({x:s.number(),y:s.number()})])).optional()});function cYB(A,Q,B,Y){if(Y===M5.LEFT)return 0;if(Y===M5.CENTER)return(B-oU(A,Q))/2;return B-oU(A,Q)}function lYB(A,Q,B,Y,J){if(J.width>0&&J.height>0){let C=Q.pages[J.page];if(C)A=pU.blit(A,{src:C,x:B+J.xoffset,y:Y+J.yoffset,srcX:J.x,srcY:J.y,srcW:J.width,srcH:J.height})}return A}function pYB(A,Q,B,Y,J,C){for(let X=0;X{}}=dYB.parse(B),F,Z;if(typeof C==="object"&&C.text!==null&&C.text!==void 0)F=C.alignmentX||M5.LEFT,Z=C.alignmentY||z5.TOP,{text:C}=C;else F=M5.LEFT,Z=z5.TOP,C=C.toString();if(typeof C==="number")C=C.toString();if(G!==1/0&&Z===z5.BOTTOM)J+=G-Sf(Q,C,X);else if(G!==1/0&&Z===z5.MIDDLE)J+=G/2-Sf(Q,C,X)/2;let U=Object.entries(Q.chars).find((K)=>K[1].xadvance)?.[1].xadvance;if(typeof U!=="number")throw Error("Could not find default character width");let{lines:$,longestLine:E}=Tf(Q,C,X);return $.forEach((K)=>{let I=K.join(" "),V=cYB(Q,I,X,F);pYB(A,Q,Y+V,J,I,U),J+=Q.common.lineHeight}),W.bind(A)({x:Y+E,y:J}),A}};var nYB=s.union([s.number(),s.object({deg:s.number(),mode:s.union([s.boolean(),s.nativeEnum(N8)]).optional()})]);function mFA(A){return function(Q,B){return B*A+Q<<2}}function sYB(A,Q){if(Math.abs(Q)%90!==0)throw Error("Unsupported matrix rotation degree");let B=A.bitmap.width,Y=A.bitmap.height,J;switch(Q){case 90:case-270:J=90;break;case 180:case-180:J=180;break;case 270:case-90:J=-90;break;default:throw Error("Unsupported matrix rotation degree")}let C=J===180?B:Y,X=J===180?Y:B,G=Buffer.alloc(A.bitmap.data.length),W=mFA(B),F=mFA(C);for(let Z=0;Z{A.bitmap.data.writeUInt32BE(A.background,H)});let K=Math.max(X,G,A.bitmap.width,A.bitmap.height);A=mC.resize(A,{h:K,w:K,mode:B===!0?void 0:B}),A=nU(A,E,A.bitmap.width/2-E.bitmap.width/2,A.bitmap.height/2-E.bitmap.height/2)}let W=A.bitmap.width,F=A.bitmap.height,Z=Buffer.alloc(A.bitmap.data.length),U=uFA(-(W/2),-(F/2)),$=uFA(W/2+0.5,F/2+0.5);for(let E=1;E<=F;E++)for(let K=1;K<=W;K++){let I=U(K,E),V=$(J*I.x-C*I.y,J*I.y+C*I.x),H=W*(E-1)+K-1<<2;if(V.x>=0&&V.x=0&&V.y{let W=A.bitmap.data[G](Q in A)?nFA(A,Q,{enumerable:!0,configurable:!0,writable:!0,value:B}):A[Q]=B,f6=(A,Q)=>{for(var B in Q)nFA(A,B,{get:Q[B],enumerable:!0})},ZA=(A,Q,B)=>{return eYB(A,typeof Q!=="symbol"?Q+"":Q,B),B},AJB={};f6(AJB,{bt709:()=>sFA});var sFA={};f6(sFA,{Y:()=>rFA,x:()=>aFA,y:()=>oFA});var rFA=((A)=>{return A[A.RED=0.2126]="RED",A[A.GREEN=0.7152]="GREEN",A[A.BLUE=0.0722]="BLUE",A[A.WHITE=1]="WHITE",A})(rFA||{}),aFA=((A)=>{return A[A.RED=0.64]="RED",A[A.GREEN=0.3]="GREEN",A[A.BLUE=0.15]="BLUE",A[A.WHITE=0.3127]="WHITE",A})(aFA||{}),oFA=((A)=>{return A[A.RED=0.33]="RED",A[A.GREEN=0.6]="GREEN",A[A.BLUE=0.06]="BLUE",A[A.WHITE=0.329]="WHITE",A})(oFA||{}),QJB={};f6(QJB,{lab2rgb:()=>FJB,lab2xyz:()=>YZA,rgb2hsl:()=>iR,rgb2lab:()=>BD,rgb2xyz:()=>tFA,xyz2lab:()=>BZA,xyz2rgb:()=>JZA});function kf(A){return A>0.04045?((A+0.055)/1.055)**2.4:A/12.92}function tFA(A,Q,B){return A=kf(A/255),Q=kf(Q/255),B=kf(B/255),{x:A*0.4124+Q*0.3576+B*0.1805,y:A*0.2126+Q*0.7152+B*0.0722,z:A*0.0193+Q*0.1192+B*0.9505}}var eFA={};f6(eFA,{degrees2radians:()=>v7,inRange0to255:()=>q8,inRange0to255Rounded:()=>R5,intInRange:()=>BJB,max3:()=>AZA,min3:()=>QZA,stableSort:()=>hf});function v7(A){return A*(Math.PI/180)}function AZA(A,Q,B){let Y=A;if(YQ)Y=Q;if(Y>B)Y=B;return Y}function BJB(A,Q,B){if(A>B)A=B;if(A255)A=255;else if(A<0)A=0;return A}function q8(A){if(A>255)A=255;else if(A<0)A=0;return A}function hf(A,Q){let B=typeof A[0],Y;if(B==="number"||B==="string"){let J=Object.create(null);for(let C=0,X=A.length;CQ(C,X)||J[C]-J[X])}else{let J=A.slice(0);Y=A.sort((C,X)=>Q(C,X)||J.indexOf(C)-J.indexOf(X))}return Y}function iR(A,Q,B){let Y=QZA(A,Q,B),J=AZA(A,Q,B),C=J-Y,X=(Y+J)/510,G=0;if(X>0&&X<1)G=C/(X<0.5?J+Y:510-J-Y);let W=0;if(C>0){if(J===A)W=(Q-B)/C;else if(J===Q)W=2+(B-A)/C;else W=4+(A-Q)/C;if(W*=60,W<0)W+=360}return{h:W,s:G,l:X}}var YJB=0.95047,JJB=1,CJB=1.08883;function _f(A){return A>0.008856?A**0.3333333333333333:7.787*A+0.13793103448275862}function BZA(A,Q,B){if(A=_f(A/YJB),Q=_f(Q/JJB),B=_f(B/CJB),116*Q-16<0)throw Error("xxx");return{L:Math.max(0,116*Q-16),a:500*(A-Q),b:200*(Q-B)}}function BD(A,Q,B){let Y=tFA(A,Q,B);return BZA(Y.x,Y.y,Y.z)}var XJB=0.95047,GJB=1,WJB=1.08883;function vf(A){return A>0.206893034?A**3:(A-0.13793103448275862)/7.787}function YZA(A,Q,B){let Y=(A+16)/116,J=Q/500+Y,C=Y-B/200;return{x:XJB*vf(J),y:GJB*vf(Y),z:WJB*vf(C)}}function yf(A){return A>0.0031308?1.055*A**0.4166666666666667-0.055:12.92*A}function JZA(A,Q,B){let Y=yf(A*3.2406+Q*-1.5372+B*-0.4986),J=yf(A*-0.9689+Q*1.8758+B*0.0415),C=yf(A*0.0557+Q*-0.204+B*1.057);return{r:R5(Y*255),g:R5(J*255),b:R5(C*255)}}function FJB(A,Q,B){let Y=YZA(A,Q,B);return JZA(Y.x,Y.y,Y.z)}var ZJB={};f6(ZJB,{AbstractDistanceCalculator:()=>WZ,AbstractEuclidean:()=>nR,AbstractManhattan:()=>sR,CIE94GraphicArts:()=>GZA,CIE94Textiles:()=>XZA,CIEDE2000:()=>uC,CMetric:()=>WZA,Euclidean:()=>FZA,EuclideanBT709:()=>ZZA,EuclideanBT709NoAlpha:()=>$ZA,Manhattan:()=>UZA,ManhattanBT709:()=>KZA,ManhattanNommyde:()=>EZA,PNGQuant:()=>VZA});var WZ=class{constructor(){ZA(this,"_maxDistance"),ZA(this,"_whitePoint"),this._setDefaults(),this.setWhitePoint(255,255,255,255)}setWhitePoint(A,Q,B,Y){this._whitePoint={r:A>0?255/A:0,g:Q>0?255/Q:0,b:B>0?255/B:0,a:Y>0?255/Y:0},this._maxDistance=this.calculateRaw(A,Q,B,Y,0,0,0,0)}calculateNormalized(A,Q){return this.calculateRaw(A.r,A.g,A.b,A.a,Q.r,Q.g,Q.b,Q.a)/this._maxDistance}},CZA=class extends WZ{calculateRaw(A,Q,B,Y,J,C,X,G){let W=BD(q8(A*this._whitePoint.r),q8(Q*this._whitePoint.g),q8(B*this._whitePoint.b)),F=BD(q8(J*this._whitePoint.r),q8(C*this._whitePoint.g),q8(X*this._whitePoint.b)),Z=W.L-F.L,U=W.a-F.a,$=W.b-F.b,E=Math.sqrt(W.a*W.a+W.b*W.b),K=Math.sqrt(F.a*F.a+F.b*F.b),I=E-K,V=U*U+$*$-I*I;V=V<0?0:Math.sqrt(V);let H=(G-Y)*this._whitePoint.a*this._kA;return Math.sqrt((Z/this._Kl)**2+(I/(1+this._K1*E))**2+(V/(1+this._K2*E))**2+H**2)}},XZA=class extends CZA{_setDefaults(){this._Kl=2,this._K1=0.048,this._K2=0.014,this._kA=0.049019607843137254}},GZA=class extends CZA{_setDefaults(){this._Kl=1,this._K1=0.045,this._K2=0.015,this._kA=0.09803921568627451}},j0=class extends WZ{_setDefaults(){}static _calculatehp(A,Q){let B=Math.atan2(A,Q);if(B>=0)return B;return B+j0._deg360InRad}static _calculateRT(A,Q){let B=Q**7,Y=2*Math.sqrt(B/(B+j0._pow25to7)),J=j0._deg30InRad*Math.exp(-(((A-j0._deg275InRad)/j0._deg25InRad)**2));return-Math.sin(2*J)*Y}static _calculateT(A){return 1-0.17*Math.cos(A-j0._deg30InRad)+0.24*Math.cos(A*2)+0.32*Math.cos(A*3+j0._deg6InRad)-0.2*Math.cos(A*4-j0._deg63InRad)}static _calculate_ahp(A,Q,B,Y){let J=B+Y;if(A===0)return J;if(Q<=j0._deg180InRad)return J/2;if(J>8)+4*Z*Z+((767-W)*U*U>>8),E=(G-Y)*this._whitePoint.a;return Math.sqrt($+E*E)}_setDefaults(){}},nR=class extends WZ{calculateRaw(A,Q,B,Y,J,C,X,G){let W=J-A,F=C-Q,Z=X-B,U=G-Y;return Math.sqrt(this._kR*W*W+this._kG*F*F+this._kB*Z*Z+this._kA*U*U)}},FZA=class extends nR{_setDefaults(){this._kR=1,this._kG=1,this._kB=1,this._kA=1}},ZZA=class extends nR{_setDefaults(){this._kR=0.2126,this._kG=0.7152,this._kB=0.0722,this._kA=1}},$ZA=class extends nR{_setDefaults(){this._kR=0.2126,this._kG=0.7152,this._kB=0.0722,this._kA=0}},sR=class extends WZ{calculateRaw(A,Q,B,Y,J,C,X,G){let W=J-A,F=C-Q,Z=X-B,U=G-Y;if(W<0)W=0-W;if(F<0)F=0-F;if(Z<0)Z=0-Z;if(U<0)U=0-U;return this._kR*W+this._kG*F+this._kB*Z+this._kA*U}},UZA=class extends sR{_setDefaults(){this._kR=1,this._kG=1,this._kB=1,this._kA=1}},EZA=class extends sR{_setDefaults(){this._kR=0.4984,this._kG=0.8625,this._kB=0.2979,this._kA=1}},KZA=class extends sR{_setDefaults(){this._kR=0.2126,this._kG=0.7152,this._kB=0.0722,this._kA=1}},VZA=class extends WZ{calculateRaw(A,Q,B,Y,J,C,X,G){let W=(G-Y)*this._whitePoint.a;return this._colordifferenceCh(A*this._whitePoint.r,J*this._whitePoint.r,W)+this._colordifferenceCh(Q*this._whitePoint.g,C*this._whitePoint.g,W)+this._colordifferenceCh(B*this._whitePoint.b,X*this._whitePoint.b,W)}_colordifferenceCh(A,Q,B){let Y=A-Q,J=Y+B;return Y*Y+J*J}_setDefaults(){}},$JB={};f6($JB,{AbstractPaletteQuantizer:()=>YD,ColorHistogram:()=>CD,NeuQuant:()=>g0,NeuQuantFloat:()=>h0,RGBQuant:()=>DZA,WuColorCube:()=>NZA,WuQuant:()=>YE});var YD=class{quantizeSync(){for(let A of this.quantize())if(A.palette)return A.palette;throw Error("unreachable")}},M8=class{constructor(){ZA(this,"r"),ZA(this,"g"),ZA(this,"b"),ZA(this,"a"),ZA(this,"uint32"),ZA(this,"rgba"),this.uint32=4294967295,this.r=this.g=this.b=this.a=0,this.rgba=[,,,,],this.rgba[0]=0,this.rgba[1]=0,this.rgba[2]=0,this.rgba[3]=0}static createByQuadruplet(A){let Q=new M8;return Q.r=A[0]|0,Q.g=A[1]|0,Q.b=A[2]|0,Q.a=A[3]|0,Q._loadUINT32(),Q._loadQuadruplet(),Q}static createByRGBA(A,Q,B,Y){let J=new M8;return J.r=A|0,J.g=Q|0,J.b=B|0,J.a=Y|0,J._loadUINT32(),J._loadQuadruplet(),J}static createByUint32(A){let Q=new M8;return Q.uint32=A>>>0,Q._loadRGBA(),Q._loadQuadruplet(),Q}from(A){this.r=A.r,this.g=A.g,this.b=A.b,this.a=A.a,this.uint32=A.uint32,this.rgba[0]=A.r,this.rgba[1]=A.g,this.rgba[2]=A.b,this.rgba[3]=A.a}getLuminosity(A){let Q=this.r,B=this.g,Y=this.b;if(A)Q=Math.min(255,255-this.a+this.a*Q/255),B=Math.min(255,255-this.a+this.a*B/255),Y=Math.min(255,255-this.a+this.a*Y/255);return Q*0.2126+B*0.7152+Y*0.0722}_loadUINT32(){this.uint32=(this.a<<24|this.b<<16|this.g<<8|this.r)>>>0}_loadRGBA(){this.r=this.uint32&255,this.g=this.uint32>>>8&255,this.b=this.uint32>>>16&255,this.a=this.uint32>>>24&255}_loadQuadruplet(){this.rgba[0]=this.r,this.rgba[1]=this.g,this.rgba[2]=this.b,this.rgba[3]=this.a}},x6=class{constructor(){ZA(this,"_pointArray"),ZA(this,"_width"),ZA(this,"_height"),this._width=0,this._height=0,this._pointArray=[]}getWidth(){return this._width}getHeight(){return this._height}setWidth(A){this._width=A}setHeight(A){this._height=A}getPointArray(){return this._pointArray}clone(){let A=new x6;A._width=this._width,A._height=this._height;for(let Q=0,B=this._pointArray.length;Q=X&&A=0;Q--)if(A.uint32===this._pointArray[Q].uint32)return!0;return!1}getNearestColor(A,Q){return this._pointArray[this._getNearestIndex(A,Q)|0]}getPointContainer(){return this._pointContainer}_nearestPointFromCache(A){return typeof this._i32idx[A]==="number"?this._i32idx[A]:-1}_getNearestIndex(A,Q){let B=this._nearestPointFromCache(""+Q.uint32);if(B>=0)return B;let Y=Number.MAX_VALUE;B=0;for(let J=0,C=this._pointArray.length;J{let B=iR(A.r,A.g,A.b),Y=iR(Q.r,Q.g,Q.b),J=A.r===A.g&&A.g===A.b?0:1+gf(B.h,lFA),X=(Q.r===Q.g&&Q.g===Q.b?0:1+gf(Y.h,lFA))-J;if(X)return-X;let G=A.getLuminosity(!0),W=Q.getLuminosity(!0);if(W-G!==0)return W-G;let F=(Y.s*100|0)-(B.s*100|0);if(F)return-F;return 0})}},xf={};f6(xf,{HueStatistics:()=>IZA,Palette:()=>JD,Point:()=>M8,PointContainer:()=>x6,ProgressTracker:()=>b6,arithmetic:()=>eFA});var UJB=class{constructor(){ZA(this,"num",0),ZA(this,"cols",[])}},IZA=class{constructor(A,Q){ZA(this,"_numGroups"),ZA(this,"_minCols"),ZA(this,"_stats"),ZA(this,"_groupsFull"),this._numGroups=A,this._minCols=Q,this._stats=[];for(let B=0;B<=A;B++)this._stats[B]=new UJB;this._groupsFull=0}check(A){if(this._groupsFull===this._numGroups+1)this.check=()=>{};let Q=A&255,B=A>>>8&255,Y=A>>>16&255,J=Q===B&&B===Y?0:1+gf(iR(Q,B,Y).h,this._numGroups),C=this._stats[J],X=this._minCols;if(C.num++,C.num>X)return;if(C.num===X)this._groupsFull++;if(C.num<=X)this._stats[J].cols.push(A)}injectIntoDictionary(A){for(let Q=0;Q<=this._numGroups;Q++)if(this._stats[Q].num<=this._minCols)this._stats[Q].cols.forEach((B)=>{if(!A[B])A[B]=1;else A[B]++})}injectIntoArray(A){for(let Q=0;Q<=this._numGroups;Q++)if(this._stats[Q].num<=this._minCols)this._stats[Q].cols.forEach((B)=>{if(A.indexOf(B)===-1)A.push(B)})}},HZA=class{constructor(A,Q){ZA(this,"progress"),ZA(this,"_step"),ZA(this,"_range"),ZA(this,"_last"),ZA(this,"_progressRange"),this._range=A,this._progressRange=Q,this._step=Math.max(1,this._range/(HZA.steps+1)|0),this._last=-this._step,this.progress=0}shouldNotify(A){if(A-this._last>=this._step)return this._last=A,this.progress=Math.min(this._progressRange*this._last/this._range,this._progressRange),!0;return!1}},b6=HZA;ZA(b6,"steps",100);var C9=3,EJB=class{constructor(A){ZA(this,"r"),ZA(this,"g"),ZA(this,"b"),ZA(this,"a"),this.r=this.g=this.b=this.a=A}toPoint(){return M8.createByRGBA(this.r>>C9,this.g>>C9,this.b>>C9,this.a>>C9)}subtract(A,Q,B,Y){this.r-=A|0,this.g-=Q|0,this.b-=B|0,this.a-=Y|0}},CB=class extends YD{constructor(A,Q=256){super();ZA(this,"_pointArray"),ZA(this,"_networkSize"),ZA(this,"_network"),ZA(this,"_sampleFactor"),ZA(this,"_radPower"),ZA(this,"_freq"),ZA(this,"_bias"),ZA(this,"_distance"),this._distance=A,this._pointArray=[],this._sampleFactor=1,this._networkSize=Q,this._distance.setWhitePoint(255<>3)*CB._radiusBias,G=X>>CB._radiusBiasShift;if(G<=1)G=0;for(let Z=0;Z>>0;let W;if(Q=Q)U-=Q;if(Z++,J===0)J=1;if(Z%J===0){if(C-=C/B|0,X-=X/CB._radiusDecrease|0,G=X>>CB._radiusBiasShift,G<=1)G=0;for(let D=0;D>>0}}}_buildPalette(){let A=new JD;return this._network.forEach((Q)=>{A.add(Q.toPoint())}),A.sort(),A}_alterNeighbour(A,Q,B,Y,J,C){let X=Q-A;if(X<-1)X=-1;let G=Q+A;if(G>this._networkSize)G=this._networkSize;let W=Q+1,F=Q-1,Z=1;while(WX){let U=this._radPower[Z++]/CB._alphaRadBias;if(WX){let $=this._network[F--];$.subtract(U*($.r-J),U*($.g-Y),U*($.b-B),U*($.a-C))}}}_alterSingle(A,Q,B,Y,J,C){A/=CB._initAlpha;let X=this._network[Q];X.subtract(A*(X.r-J),A*(X.g-Y),A*(X.b-B),A*(X.a-C))}_contest(A,Q,B,Y){let J=1020<>CB._initialBiasShift-C9);if($>CB._betaShift;this._freq[F]-=E,this._bias[F]+=E<>CB._betaShift);ZA(g0,"_betaGamma",CB._initialBias<>X9,this.g>>X9,this.b>>X9,this.a>>X9)}subtract(A,Q,B,Y){this.r-=A,this.g-=Q,this.b-=B,this.a-=Y}},XB=class extends YD{constructor(A,Q=256){super();ZA(this,"_pointArray"),ZA(this,"_networkSize"),ZA(this,"_network"),ZA(this,"_sampleFactor"),ZA(this,"_radPower"),ZA(this,"_freq"),ZA(this,"_bias"),ZA(this,"_distance"),this._distance=A,this._pointArray=[],this._sampleFactor=1,this._networkSize=Q,this._distance.setWhitePoint(255<>3)*XB._radiusBias,G=X>>XB._radiusBiasShift;if(G<=1)G=0;for(let Z=0;Z=Q)U-=Q;if(Z++,J===0)J=1;if(Z%J===0){if(C-=C/B,X-=X/XB._radiusDecrease,G=X>>XB._radiusBiasShift,G<=1)G=0;for(let D=0;D{A.add(Q.toPoint())}),A.sort(),A}_alterNeighbour(A,Q,B,Y,J,C){let X=Q-A;if(X<-1)X=-1;let G=Q+A;if(G>this._networkSize)G=this._networkSize;let W=Q+1,F=Q-1,Z=1;while(WX){let U=this._radPower[Z++]/XB._alphaRadBias;if(WX){let $=this._network[F--];$.subtract(U*($.r-J),U*($.g-Y),U*($.b-B),U*($.a-C))}}}_alterSingle(A,Q,B,Y,J,C){A/=XB._initAlpha;let X=this._network[Q];X.subtract(A*(X.r-J),A*(X.g-Y),A*(X.b-B),A*(X.a-C))}_contest(A,Q,B,Y){let J=1020<>XB._initialBiasShift-X9);if($>XB._betaShift;this._freq[F]-=E,this._bias[F]+=E<>XB._betaShift);ZA(h0,"_betaGamma",XB._initialBias<this._histogram[Y]-this._histogram[B]);if(A.length===0)return[];let Q;switch(this._method){case 1:let B=Math.min(A.length,this._initColors),Y=A[B-1],J=this._histogram[Y];Q=A.slice(0,B);let C=B,X=A.length;while(C+B)}_colorStats1D(A){let Q=this._histogram,B=A.getPointArray(),Y=B.length;for(let J=0;J{let Z=Math.round(F.w*F.h/X)*QD._boxPixels;if(Z<2)Z=2;let U={};this._iterateBox(F,Q,($)=>{let E=Y[$].uint32;if(this._hueStats.check(E),E in W)W[E]++;else if(E in U){if(++U[E]>=Z)W[E]=U[E]}else U[E]=1})}),this._hueStats.injectIntoDictionary(W)}_iterateBox(A,Q,B){let Y=A,J=Y.y*Q+Y.x,C=(Y.y+Y.h-1)*Q+(Y.x+Y.w-1),X=Q-Y.w+1,G=0,W=J;do B.call(this,W),W+=++G%Y.w===0?X:1;while(W<=C)}_makeBoxes(A,Q,B,Y){let J=A%B,C=Q%Y,X=A-J,G=Q-C,W=[];for(let F=0;Fthis._colors){C.length=0;for(let Z=0;Zthis._colors*3?this._initialDistance:this._distanceIncrement}if(X$.distance-U.distance);let Z=0;while(X=0;Z--)if(Y[Z]===0){if(Z!==F-1)B[Z]=B[F-1];--F}B.length=F,Q.sort(),yield{palette:Q,progress:100}}};function tU(A){let Q=[];for(let B=0;B0){let B=this._sums[Q],Y=this._reds[Q]/B,J=this._greens[Q]/B,C=this._blues[Q]/B,X=this._alphas[Q]/B,G=M8.createByRGBA(Y|0,J|0,C|0,X|0);A.add(G)}A.sort(),yield{palette:A,progress:100}}*_preparePalette(){yield*this._calculateMoments();let A=0,Q=tU(this._colors);for(let X=1;X1?this._calculateVariance(this._cubes[A]):0,Q[X]=this._cubes[X].volume>1?this._calculateVariance(this._cubes[X]):0;else Q[A]=0,X--;A=0;let G=Q[0];for(let W=1;W<=X;++W)if(Q[W]>G)G=Q[W],A=W;if(G<=0){this._colors=X+1;break}}let B=[],Y=[],J=[],C=[];for(let X=0;X0)B[X]=PQ._volume(this._cubes[X],this._momentsRed)/G|0,Y[X]=PQ._volume(this._cubes[X],this._momentsGreen)/G|0,J[X]=PQ._volume(this._cubes[X],this._momentsBlue)/G|0,C[X]=PQ._volume(this._cubes[X],this._momentsAlpha)/G|0;else B[X]=0,Y[X]=0,J[X]=0,C[X]=0}this._reds=tU(this._colors+1),this._greens=tU(this._colors+1),this._blues=tU(this._colors+1),this._alphas=tU(this._colors+1),this._sums=tU(this._colors+1);for(let X=0,G=this._pixels.length;X>Q)+1,Y=(A.g>>Q)+1,J=(A.b>>Q)+1,C=(A.a>>Q)+1;this._weights[C][B][Y][J]++,this._momentsRed[C][B][Y][J]+=A.r,this._momentsGreen[C][B][Y][J]+=A.g,this._momentsBlue[C][B][Y][J]+=A.b,this._momentsAlpha[C][B][Y][J]+=A.a,this._moments[C][B][Y][J]+=this._table[A.r]+this._table[A.g]+this._table[A.b]+this._table[A.a]}*_calculateMoments(){let A=[],Q=[],B=[],Y=[],J=[],C=[],X=AE(this._sideSize,this._sideSize,this._sideSize),G=AE(this._sideSize,this._sideSize,this._sideSize),W=AE(this._sideSize,this._sideSize,this._sideSize),F=AE(this._sideSize,this._sideSize,this._sideSize),Z=AE(this._sideSize,this._sideSize,this._sideSize),U=AE(this._sideSize,this._sideSize,this._sideSize),$=0,E=new b6(this._alphaMaxSideIndex*this._maxSideIndex,99);for(let K=1;K<=this._alphaMaxSideIndex;++K){QE(X,this._sideSize,this._sideSize,this._sideSize,0),QE(G,this._sideSize,this._sideSize,this._sideSize,0),QE(W,this._sideSize,this._sideSize,this._sideSize,0),QE(F,this._sideSize,this._sideSize,this._sideSize,0),QE(Z,this._sideSize,this._sideSize,this._sideSize,0),QE(U,this._sideSize,this._sideSize,this._sideSize,0);for(let I=1;I<=this._maxSideIndex;++I,++$){if(E.shouldNotify($))yield{progress:E.progress};BE(A,this._sideSize,0),BE(Q,this._sideSize,0),BE(B,this._sideSize,0),BE(Y,this._sideSize,0),BE(J,this._sideSize,0),BE(C,this._sideSize,0);for(let V=1;V<=this._maxSideIndex;++V){let H=0,D=0,L=0,z=0,M=0,N=0;for(let q=1;q<=this._maxSideIndex;++q)H+=this._weights[K][I][V][q],D+=this._momentsRed[K][I][V][q],L+=this._momentsGreen[K][I][V][q],z+=this._momentsBlue[K][I][V][q],M+=this._momentsAlpha[K][I][V][q],N+=this._moments[K][I][V][q],A[q]+=H,Q[q]+=D,B[q]+=L,Y[q]+=z,J[q]+=M,C[q]+=N,X[I][V][q]=X[I-1][V][q]+A[q],G[I][V][q]=G[I-1][V][q]+Q[q],W[I][V][q]=W[I-1][V][q]+B[q],F[I][V][q]=F[I-1][V][q]+Y[q],Z[I][V][q]=Z[I-1][V][q]+J[q],U[I][V][q]=U[I-1][V][q]+C[q],this._weights[K][I][V][q]=this._weights[K-1][I][V][q]+X[I][V][q],this._momentsRed[K][I][V][q]=this._momentsRed[K-1][I][V][q]+G[I][V][q],this._momentsGreen[K][I][V][q]=this._momentsGreen[K-1][I][V][q]+W[I][V][q],this._momentsBlue[K][I][V][q]=this._momentsBlue[K-1][I][V][q]+F[I][V][q],this._momentsAlpha[K][I][V][q]=this._momentsAlpha[K-1][I][V][q]+Z[I][V][q],this._moments[K][I][V][q]=this._moments[K-1][I][V][q]+U[I][V][q]}}}}static _volumeFloat(A,Q){return Q[A.alphaMaximum][A.redMaximum][A.greenMaximum][A.blueMaximum]-Q[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMaximum]-Q[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMaximum]+Q[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMaximum]-Q[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMaximum]+Q[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMaximum]+Q[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMaximum]-Q[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(Q[A.alphaMaximum][A.redMaximum][A.greenMaximum][A.blueMinimum]-Q[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMinimum]-Q[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMinimum]+Q[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]-Q[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMinimum]+Q[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]+Q[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]-Q[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum])}static _volume(A,Q){return PQ._volumeFloat(A,Q)|0}static _top(A,Q,B,Y){let J;switch(Q){case PQ._alpha:J=Y[B][A.redMaximum][A.greenMaximum][A.blueMaximum]-Y[B][A.redMaximum][A.greenMinimum][A.blueMaximum]-Y[B][A.redMinimum][A.greenMaximum][A.blueMaximum]+Y[B][A.redMinimum][A.greenMinimum][A.blueMaximum]-(Y[B][A.redMaximum][A.greenMaximum][A.blueMinimum]-Y[B][A.redMaximum][A.greenMinimum][A.blueMinimum]-Y[B][A.redMinimum][A.greenMaximum][A.blueMinimum]+Y[B][A.redMinimum][A.greenMinimum][A.blueMinimum]);break;case PQ._red:J=Y[A.alphaMaximum][B][A.greenMaximum][A.blueMaximum]-Y[A.alphaMaximum][B][A.greenMinimum][A.blueMaximum]-Y[A.alphaMinimum][B][A.greenMaximum][A.blueMaximum]+Y[A.alphaMinimum][B][A.greenMinimum][A.blueMaximum]-(Y[A.alphaMaximum][B][A.greenMaximum][A.blueMinimum]-Y[A.alphaMaximum][B][A.greenMinimum][A.blueMinimum]-Y[A.alphaMinimum][B][A.greenMaximum][A.blueMinimum]+Y[A.alphaMinimum][B][A.greenMinimum][A.blueMinimum]);break;case PQ._green:J=Y[A.alphaMaximum][A.redMaximum][B][A.blueMaximum]-Y[A.alphaMaximum][A.redMinimum][B][A.blueMaximum]-Y[A.alphaMinimum][A.redMaximum][B][A.blueMaximum]+Y[A.alphaMinimum][A.redMinimum][B][A.blueMaximum]-(Y[A.alphaMaximum][A.redMaximum][B][A.blueMinimum]-Y[A.alphaMaximum][A.redMinimum][B][A.blueMinimum]-Y[A.alphaMinimum][A.redMaximum][B][A.blueMinimum]+Y[A.alphaMinimum][A.redMinimum][B][A.blueMinimum]);break;case PQ._blue:J=Y[A.alphaMaximum][A.redMaximum][A.greenMaximum][B]-Y[A.alphaMaximum][A.redMaximum][A.greenMinimum][B]-Y[A.alphaMaximum][A.redMinimum][A.greenMaximum][B]+Y[A.alphaMaximum][A.redMinimum][A.greenMinimum][B]-(Y[A.alphaMinimum][A.redMaximum][A.greenMaximum][B]-Y[A.alphaMinimum][A.redMaximum][A.greenMinimum][B]-Y[A.alphaMinimum][A.redMinimum][A.greenMaximum][B]+Y[A.alphaMinimum][A.redMinimum][A.greenMinimum][B]);break;default:throw Error("impossible")}return J|0}static _bottom(A,Q,B){switch(Q){case PQ._alpha:return-B[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMaximum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMaximum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMaximum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(-B[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMinimum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);case PQ._red:return-B[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMaximum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMaximum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMaximum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(-B[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMinimum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);case PQ._green:return-B[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMaximum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMaximum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMaximum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(-B[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);case PQ._blue:return-B[A.alphaMaximum][A.redMaximum][A.greenMaximum][A.blueMinimum]+B[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]-(-B[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMinimum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);default:return 0}}_calculateVariance(A){let Q=PQ._volume(A,this._momentsRed),B=PQ._volume(A,this._momentsGreen),Y=PQ._volume(A,this._momentsBlue),J=PQ._volume(A,this._momentsAlpha),C=PQ._volumeFloat(A,this._moments),X=PQ._volume(A,this._weights),G=Q*Q+B*B+Y*Y+J*J;return C-G/X}_maximize(A,Q,B,Y,J,C,X,G,W){let F=PQ._bottom(A,Q,this._momentsRed)|0,Z=PQ._bottom(A,Q,this._momentsGreen)|0,U=PQ._bottom(A,Q,this._momentsBlue)|0,$=PQ._bottom(A,Q,this._momentsAlpha)|0,E=PQ._bottom(A,Q,this._weights)|0,K=0,I=-1;for(let V=B;VK)K=q,I=V}}}return{max:K,position:I}}_cut(A,Q){let B,Y=PQ._volume(A,this._momentsRed),J=PQ._volume(A,this._momentsGreen),C=PQ._volume(A,this._momentsBlue),X=PQ._volume(A,this._momentsAlpha),G=PQ._volume(A,this._weights),W=this._maximize(A,PQ._red,A.redMinimum+1,A.redMaximum,Y,J,C,X,G),F=this._maximize(A,PQ._green,A.greenMinimum+1,A.greenMaximum,Y,J,C,X,G),Z=this._maximize(A,PQ._blue,A.blueMinimum+1,A.blueMaximum,Y,J,C,X,G),U=this._maximize(A,PQ._alpha,A.alphaMinimum+1,A.alphaMaximum,Y,J,C,X,G);if(U.max>=W.max&&U.max>=F.max&&U.max>=Z.max){if(B=PQ._alpha,U.position<0)return!1}else if(W.max>=U.max&&W.max>=F.max&&W.max>=Z.max)B=PQ._red;else if(F.max>=U.max&&F.max>=W.max&&F.max>=Z.max)B=PQ._green;else B=PQ._blue;switch(Q.redMaximum=A.redMaximum,Q.greenMaximum=A.greenMaximum,Q.blueMaximum=A.blueMaximum,Q.alphaMaximum=A.alphaMaximum,B){case PQ._red:Q.redMinimum=A.redMaximum=W.position,Q.greenMinimum=A.greenMinimum,Q.blueMinimum=A.blueMinimum,Q.alphaMinimum=A.alphaMinimum;break;case PQ._green:Q.greenMinimum=A.greenMaximum=F.position,Q.redMinimum=A.redMinimum,Q.blueMinimum=A.blueMinimum,Q.alphaMinimum=A.alphaMinimum;break;case PQ._blue:Q.blueMinimum=A.blueMaximum=Z.position,Q.redMinimum=A.redMinimum,Q.greenMinimum=A.greenMinimum,Q.alphaMinimum=A.alphaMinimum;break;case PQ._alpha:Q.alphaMinimum=A.alphaMaximum=U.position,Q.blueMinimum=A.blueMinimum,Q.redMinimum=A.redMinimum,Q.greenMinimum=A.greenMinimum;break}return A.volume=(A.redMaximum-A.redMinimum)*(A.greenMaximum-A.greenMinimum)*(A.blueMaximum-A.blueMinimum)*(A.alphaMaximum-A.alphaMinimum),Q.volume=(Q.redMaximum-Q.redMinimum)*(Q.greenMaximum-Q.greenMinimum)*(Q.blueMaximum-Q.blueMinimum)*(Q.alphaMaximum-Q.alphaMinimum),!0}_initialize(A){this._colors=A,this._cubes=[];for(let Q=0;QrR,ErrorDiffusionArray:()=>t1,ErrorDiffusionArrayKernel:()=>qZA,ErrorDiffusionRiemersma:()=>ff,NearestColor:()=>LZA});var rR=class{quantizeSync(A,Q){for(let B of this.quantize(A,Q))if(B.pointContainer)return B.pointContainer;throw Error("unreachable")}},LZA=class extends rR{constructor(A){super();ZA(this,"_distance"),this._distance=A}*quantize(A,Q){let B=A.getPointArray(),Y=A.getWidth(),J=A.getHeight(),C=new b6(J,99);for(let X=0;X{return A[A.FloydSteinberg=0]="FloydSteinberg",A[A.FalseFloydSteinberg=1]="FalseFloydSteinberg",A[A.Stucki=2]="Stucki",A[A.Atkinson=3]="Atkinson",A[A.Jarvis=4]="Jarvis",A[A.Burkes=5]="Burkes",A[A.Sierra=6]="Sierra",A[A.TwoSierra=7]="TwoSierra",A[A.SierraLite=8]="SierraLite",A})(qZA||{}),t1=class extends rR{constructor(A,Q,B=!0,Y=0,J=!1){super();ZA(this,"_minColorDistance"),ZA(this,"_serpentine"),ZA(this,"_kernel"),ZA(this,"_calculateErrorLikeGIMP"),ZA(this,"_distance"),this._setKernel(Q),this._distance=A,this._minColorDistance=Y,this._serpentine=B,this._calculateErrorLikeGIMP=J}*quantize(A,Q){let B=A.getPointArray(),Y=new M8,J=A.getWidth(),C=A.getHeight(),X=[],G=1,W=1;for(let Z of this._kernel){let U=Z[2]+1;if(W=0&&k+I=0&&T+ZQ)A.length=Q;let B=A.length;for(let Y=0;Y=0&&A.x=0&&A.y{let F=B[G+W*Y],{r:Z,g:U,b:$,a:E}=F;for(let H=0;HqJB});var NJB=0.01,LJB=0.03;function qJB(A,Q){if(A.getHeight()!==Q.getHeight()||A.getWidth()!==Q.getWidth())throw Error("Images have different sizes!");let Y=255,J=(NJB*Y)**2,C=(LJB*Y)**2,X=0,G=0;return MJB(A,Q,(W,F,Z,U)=>{let $=0,E=0,K=0;for(let L=0;Lprocess.nextTick(A):(A)=>setTimeout(A,0);function MZA(A,{colorDistanceFormula:Q,paletteQuantization:B,colors:Y}={}){let J=RZA(Q),C=RJB(J,B,Y);return A.forEach((X)=>C.sample(X)),C.quantizeSync()}function zZA(A,Q,{colorDistanceFormula:B,imageQuantization:Y}={}){let J=RZA(B);return zJB(J,Y).quantizeSync(A,Q)}function RZA(A="euclidean-bt709"){switch(A){case"cie94-graphic-arts":return new GZA;case"cie94-textiles":return new XZA;case"ciede2000":return new uC;case"color-metric":return new WZA;case"euclidean":return new FZA;case"euclidean-bt709":return new ZZA;case"euclidean-bt709-noalpha":return new $ZA;case"manhattan":return new UZA;case"manhattan-bt709":return new KZA;case"manhattan-nommyde":return new EZA;case"pngquant":return new VZA;default:throw Error(`Unknown colorDistanceFormula ${A}`)}}function zJB(A,Q="floyd-steinberg"){switch(Q){case"nearest":return new LZA(A);case"riemersma":return new ff(A);case"floyd-steinberg":return new t1(A,0);case"false-floyd-steinberg":return new t1(A,1);case"stucki":return new t1(A,2);case"atkinson":return new t1(A,3);case"jarvis":return new t1(A,4);case"burkes":return new t1(A,5);case"sierra":return new t1(A,6);case"two-sierra":return new t1(A,7);case"sierra-lite":return new t1(A,8);default:throw Error(`Unknown imageQuantization ${Q}`)}}function RJB(A,Q="wuquant",B=256){switch(Q){case"neuquant":return new g0(A,B);case"rgbquant":return new DZA(A,B);case"wuquant":return new YE(A,B);case"neuquant-float":return new h0(A,B);default:throw Error(`Unknown paletteQuantization ${Q}`)}}var wJB=SB.object({colors:SB.number().optional(),colorDistanceFormula:SB.union([SB.literal("cie94-textiles"),SB.literal("cie94-graphic-arts"),SB.literal("ciede2000"),SB.literal("color-metric"),SB.literal("euclidean"),SB.literal("euclidean-bt709-noalpha"),SB.literal("euclidean-bt709"),SB.literal("manhattan"),SB.literal("manhattan-bt709"),SB.literal("manhattan-nommyde"),SB.literal("pngquant")]).optional(),paletteQuantization:SB.union([SB.literal("neuquant"),SB.literal("neuquant-float"),SB.literal("rgbquant"),SB.literal("wuquant")]).optional(),imageQuantization:SB.union([SB.literal("nearest"),SB.literal("riemersma"),SB.literal("floyd-steinberg"),SB.literal("false-floyd-steinberg"),SB.literal("stucki"),SB.literal("atkinson"),SB.literal("jarvis"),SB.literal("burkes"),SB.literal("sierra"),SB.literal("two-sierra"),SB.literal("sierra-lite")]).optional()}),wZA={quantize(A,Q){let{colors:B,colorDistanceFormula:Y,paletteQuantization:J,imageQuantization:C}=wJB.parse(Q),X=xf.PointContainer.fromUint8Array(A.bitmap.data,A.bitmap.width,A.bitmap.height),G=MZA([X],{colors:B,colorDistanceFormula:Y,paletteQuantization:J}),W=zZA(X,G,{colorDistanceFormula:Y,imageQuantization:C});return A.bitmap.data=Buffer.from(W.toUint8Array()),A}};var OJB=[pU,_7A,v7A,iU,RFA,wFA,aU,jFA,OFA,PFA,TFA,xFA,fFA,bFA,mC,dFA,cFA,wZA],PJB=[r3,w1A,XR,WR,$R,PR],f$Y={bmp:r3().mime,gif:XR().mime,jpeg:WR().mime,png:$R().mime,tiff:PR().mime},JE=MFA({formats:PJB,plugins:OJB});var R8={OPTIMIZED_DIR:".optimized",TEMP_DIR:"hytopia-models-temp",CHECKSUM_EXT:".md5",VERSION:4,DATA_EXT:".data.json",DIRECTORIES:[PY.assetsLibraryPath,jJ.resolve(process.cwd(),"assets")].filter(Boolean),OPTIMIZER_RUNS:[{suffix:"",options:["--compress","false","--instance","false","--simplify","false","--texture-compress","false"],stripAnimations:!1,optimalMaxMeshCount:10,optimalMaxMeshHint:"Reduce nodes/meshes in your source model, or use fewer unique materials so primitives can be merged in the generated optimized model.",keepEmptyNamedNodes:!1},{suffix:"-named-nodes",options:["--compress","false","--flatten","false","--instance","false","--simplify","false","--join","false","--prune","false","--texture-compress","false"],stripAnimations:!1,optimalMaxMeshCount:20,optimalMaxMeshHint:"Use fewer unique materials in your source model so primitives sharing the same material can be joined in the generated optimized model. Named nodes are preserved, reduce unnecessary named nodes to further reduce mesh count.",keepEmptyNamedNodes:!0},{suffix:"-no-animations",options:["--compress","false","--instance","false","--simplify","false","--texture-compress","false"],stripAnimations:!0,optimalMaxMeshCount:1,optimalMaxMeshHint:"Use a single material/texture atlas in your source model so all primitives can merge into one mesh in the generated optimized model.",keepEmptyNamedNodes:!1}]},aR=[oI,eI];class yY{static instance=new yY;optimize=process.env.NODE_ENV!=="production";_modelUriAnimationNames=new Map;_modelUriBoundingBoxes=new Map;_modelUriNodeNames=new Map;_modelUriTrimeshes=new Map;constructor(){}async preloadModels(){let A=await this._getAbsoluteModelPaths();console.info(`ModelRegistry.preloadModels(): Preloading ${A.length} models...`);let Q=performance.now();for(let Y of A){if(this.optimize)await this._resolveOptimizedModelPath(Y);await this._loadModelData(Y)}let B=performance.now();console.info(`ModelRegistry.preloadModels(): Preloaded ${A.length} models in ${B-Q}ms!`)}getAllModelUris(){return Array.from(this._modelUriBoundingBoxes.keys())}getAnimationNames(A){let Q=this._modelUriAnimationNames.get(A);if(!Q)return l.error(`ModelRegistry.getAnimationNames(): Model ${A} not found!`),[];return Q}getBoundingBox(A){let Q=this._modelUriBoundingBoxes.get(A);if(!Q)return l.error(`ModelRegistry.getBoundingBox(): Model ${A} not found!`),{min:{x:0,y:0,z:0},max:{x:1,y:1,z:1}};return Q}getDepth(A){let Q=this.getBoundingBox(A);return Q.max.z-Q.min.z}getHeight(A){let Q=this.getBoundingBox(A);return Q.max.y-Q.min.y}getNodeNames(A){let Q=this._modelUriNodeNames.get(A);if(!Q)return l.error(`ModelRegistry.getNodeNames(): Model ${A} not found!`),[];return Q}getTrimesh(A,Q={x:1,y:1,z:1}){let B=this._modelUriTrimeshes.get(A);if(!B){l.error(`ModelRegistry.getTrimesh(): Model ${A} not found!`);return}let Y=B.vertices;if(Q.x!==1||Q.y!==1||Q.z!==1){Y=new Float32Array(Y.length);for(let J=0;JK.getName()),Z=G.getRoot().listAnimations().map((K)=>K.getName()),U=await this._buildTrimesh(G),$={},E=new n4().registerExtensions(aR);for(let K of R8.OPTIMIZER_RUNS){let I=this._buildOptimizedModelPath(A),V=this._buildOptimizedSuffixedModelPath(I,K.suffix);$[K.suffix]={meshCount:(await E.read(V)).getRoot().listMeshes().length}}X={schemaVersion:R8.VERSION,source:{uri:Y,sha256:J},animationNames:Z,boundingBox:{min:{x:W.min[0],y:W.min[1],z:W.min[2]},max:{x:W.max[0],y:W.max[1],z:W.max[2]}},nodeNames:F,trimesh:U?{vertices:Array.from(U.vertices),indices:Array.from(U.indices)}:void 0,optimizedModelData:$};try{let K=jJ.dirname(B);z8.mkdirSync(K,{recursive:!0}),z8.writeFileSync(B,JSON.stringify(X))}catch(K){l.warning(`ModelRegistry._loadModelData(): Failed to write data file for ${Y}. Error: ${String(K)}`)}}if(process.env.NODE_ENV!=="production"&&!C)for(let G of R8.OPTIMIZER_RUNS){let W=X.optimizedModelData[G.suffix].meshCount;if(W>G.optimalMaxMeshCount)l.warning(`Model "${Y}" (${G.suffix}) has ${W} meshes (less is better, try not to exceed: ${G.optimalMaxMeshCount}). This may impact FPS if this model is used in a game. ${G.optimalMaxMeshHint}`)}this._modelUriAnimationNames.set(Y,X.animationNames),this._modelUriBoundingBoxes.set(Y,X.boundingBox),this._modelUriNodeNames.set(Y,X.nodeNames),this._modelUriTrimeshes.set(Y,X.trimesh?{vertices:new Float32Array(X.trimesh.vertices),indices:new Uint32Array(X.trimesh.indices)}:void 0)}async _resolveOptimizedModelPath(A){let Q=this._buildOptimizedModelPath(A);if(this._isOptimizedVersionValid(A))return Q;return await this._optimizeModel(A,Q)}_isOptimizedVersionValid(A){let Q=`${this._buildOptimizedModelPath(A)}${R8.CHECKSUM_EXT}`;if(!z8.existsSync(Q))return!1;let B=this._calculateChecksum(A),Y=z8.readFileSync(Q,"utf8");return B===Y}_calculateChecksum(A){if(!z8.existsSync(A))return"";let Q=z8.readFileSync(A);return TJB.createHash("sha256").update(Q.toString("base64")).update(R8.VERSION.toString()).digest("hex")}_buildOptimizedModelPath(A){let Q=jJ.basename(A),B=Q.replace(/\.[^/.]+$/,""),Y=jJ.dirname(A),J=jJ.join(Y,R8.OPTIMIZED_DIR,B);return jJ.join(J,Q)}_buildOptimizedSuffixedModelPath(A,Q){return A.replace(/(\.[^/.]+)$/,`${Q}.glb`)}async _buildTrimesh(A,Q=1,B=0.001){let Y=pCA(A);Y.setLogger(new S9(mI.WARN)),await Y.transform(hCA({pivot:"center"}),mh(),uh(),fh(),Y1A({simplifier:jZA.MeshoptSimplifier,ratio:Q,error:B}),cCA());for(let $ of Y.getRoot().listScenes())for(let E of $.listChildren())uCA(E);let J=[],C=0,X=0;for(let $ of Y.getRoot().listMeshes())for(let E of $.listPrimitives()){let K=E.getAttribute("POSITION"),I=E.getIndices();if(!K||!I)continue;let V=K.getArray(),H=I.getArray(),D=H instanceof Uint32Array?H:new Uint32Array(H);if(V.length===0||D.length===0)continue;J.push({vertices:V,indices:D}),C+=V.length,X+=D.length}if(J.length===0){l.error("ModelRegistry._buildTrimesh(): Model has no primitives with POSITION and INDICES!");return}let G=new Float32Array(C),W=new Uint32Array(X),F=0,Z=0,U=0;for(let $ of J){G.set($.vertices,F);let E=$.vertices.length/3;for(let K=0;K<$.indices.length;K++)W[U+K]=$.indices[K]+Z;F+=$.vertices.length,U+=$.indices.length,Z+=E}return{vertices:G,indices:W}}async _optimizeModel(A,Q){let B=jJ.dirname(Q);z8.rmSync(B,{recursive:!0,force:!0}),z8.mkdirSync(B,{recursive:!0}),console.info(`ModelRegistry: Optimizing model ${this._absoluteModelPathToModelUri(A)}...`);for(let Y of R8.OPTIMIZER_RUNS){let J=this._buildOptimizedSuffixedModelPath(Q,Y.suffix),C=await this._preprocessOptimizableModel(A,Y),X=await qI("npx",["@gltf-transform/cli","optimize",C,J,...Y.options]);if(X.stderr)return l.warning(`ModelRegistry._optimizeModel(): Error optimizing model ${this._absoluteModelPathToModelUri(A)}, defaulting to unoptimized model. Error: ${X.stderr}`),A;await this._embedModelMetadata(J);let G=await qI("npx",["@gltf-transform/cli","uastc",J,J,"--level","4","--zstd","10"]);if(G.stderr)l.warning(`ModelRegistry._optimizeModel(): Error compressing textures for model ${this._absoluteModelPathToModelUri(A)}, continuing without compression. Error: ${G.stderr}`)}return z8.writeFileSync(`${Q}${R8.CHECKSUM_EXT}`,this._calculateChecksum(A)),Q}async _embedModelMetadata(A){try{let Q=new n4().registerExtensions(aR),B=await Q.read(A);for(let Y of B.getRoot().listMaterials()){let C=Y.getBaseColorTexture()?.getImage(),X=!1;if(C)try{let G=Y.getAlphaMode()==="MASK"?Y.getAlphaCutoff()??0.5:0,W=Y.getAlpha(),F=G/W*255,{data:Z}=(await JE.read(Buffer.from(C))).bitmap;for(let U=3;U=F&&Z[U]<255){X=!0;break}}catch{}Y.setExtras({...Y.getExtras(),hasTransparency:X})}await Q.write(A,B)}catch(Q){l.warning(`ModelRegistry._embedModelMetadata(): Failed to embed metadata for ${A}. Error: ${String(Q)}`)}}async _preprocessOptimizableModel(A,Q){let B=new n4().registerExtensions(aR),Y=await B.read(A),J=!1;if(Q.stripAnimations){let C=Y.getRoot().listAnimations();if(C.length>0)C.forEach((X)=>X.dispose()),J=!0}if(Q.keepEmptyNamedNodes)await Y.transform(mh({cleanup:!1}),uh({cleanup:!1,keepNamed:!0}),m3({keepLeaves:!0})),J=!0;if(J){let C=jJ.join(SJB.tmpdir(),R8.TEMP_DIR);z8.mkdirSync(C,{recursive:!0});let X=jJ.join(C,jJ.basename(A));return await B.write(X,Y),X}return A}}var FZ;((J)=>{J.DYNAMIC="dynamic";J.FIXED="fixed";J.KINEMATIC_POSITION="kinematic_position";J.KINEMATIC_VELOCITY="kinematic_velocity"})(FZ||={});var bf=0.001,OZA="dynamic";class y7 extends BQ{_additionalMass=0;_colliders=new Set;_explicitSleep=!1;_enabledPositions={x:!0,y:!0,z:!0};_enabledRotations={x:!0,y:!0,z:!0};_rigidBody;_rigidBodyDesc;_rigidBodyType;_simulation;constructor(A){super();A.type??=OZA,this._rigidBodyDesc=this._createRigidBodyDesc(A),this._rigidBodyType=A.type,this._applyRigidBodyOptions(A),this._autoAddToSimulation(A)}get additionalMass(){if(!this._requireNotRemoved("additionalMass"))return 0;return this._additionalMass}get additionalSolverIterations(){if(!this._requireNotRemoved("additionalSolverIterations"))return 0;return this._rigidBody?this._rigidBody.additionalSolverIterations():this._rigidBodyDesc.additionalSolverIterations}get angularDamping(){if(!this._requireNotRemoved("angularDamping"))return 0;return this._rigidBody?this._rigidBody.angularDamping():this._rigidBodyDesc.angularDamping}get angularVelocity(){if(!this._requireNotRemoved("angularVelocity"))return{x:0,y:0,z:0};return this._rigidBody?this._rigidBody.angvel():this._rigidBodyDesc.angvel}get colliders(){return this._colliders}get dominanceGroup(){if(!this._requireNotRemoved("dominanceGroup"))return 0;return this._rigidBody?this._rigidBody.dominanceGroup():this._rigidBodyDesc.dominanceGroup}get directionFromRotation(){let{x:A,y:Q,z:B,w:Y}=this.rotation;return{x:-2*(A*B+Y*Q),y:-2*(Q*B-Y*A),z:-(1-2*(A*A+Q*Q))}}get effectiveAngularInertia(){if(!this._requireNotRemoved("effectiveAngularInertia"))return;return this._rigidBody?this._rigidBody.effectiveAngularInertia():void 0}get effectiveInverseMass(){if(!this._requireNotRemoved("effectiveInverseMass"))return;return this._rigidBody?this._rigidBody.effectiveInvMass():void 0}get enabledRotations(){if(!this._requireNotRemoved("enabledRotations"))return{x:!0,y:!0,z:!0};return this._enabledRotations}get enabledPositions(){if(!this._requireNotRemoved("enabledPositions"))return{x:!0,y:!0,z:!0};return this._enabledPositions}get gravityScale(){if(!this._requireNotRemoved("gravityScale"))return 0;return this._rigidBody?this._rigidBody.gravityScale():this._rigidBodyDesc.gravityScale}get inverseMass(){if(!this._requireNotRemoved("inverseMass"))return;return this._rigidBody?this._rigidBody.invMass():void 0}get isCcdEnabled(){if(!this._requireNotRemoved("isCcdEnabled"))return!1;return this._rigidBody?this._rigidBody.isCcdEnabled():this._rigidBodyDesc.ccdEnabled}get isDynamic(){if(!this._requireNotRemoved("isDynamic"))return!1;return this._rigidBodyType==="dynamic"}get isEnabled(){if(!this._requireNotRemoved("isEnabled"))return!1;return this._rigidBody?this._rigidBody.isEnabled():this._rigidBodyDesc.enabled}get isFixed(){if(!this._requireNotRemoved("isFixed"))return!1;return this._rigidBodyType==="fixed"}get isKinematic(){if(!this._requireNotRemoved("isKinematic"))return!1;return["kinematic_position","kinematic_velocity"].includes(this._rigidBodyType)}get isKinematicPositionBased(){if(!this._requireNotRemoved("isKinematicPositionBased"))return!1;return this._rigidBodyType==="kinematic_position"}get isKinematicVelocityBased(){if(!this._requireNotRemoved("isKinematicVelocityBased"))return!1;return this._rigidBodyType==="kinematic_velocity"}get isMoving(){if(!this._requireNotRemoved("isMoving"))return!1;return this._rigidBody?this._rigidBody.isMoving():!1}get isRemoved(){return!this._rigidBody&&!this._rigidBodyDesc}get isSimulated(){if(!this._requireNotRemoved("isSimulated"))return!1;return this._rigidBody?!0:!1}get isSleeping(){if(!this._requireNotRemoved("isSleeping"))return!1;return this._rigidBody?this._rigidBody.isSleeping():this._rigidBodyDesc.sleeping}get linearDamping(){if(!this._requireNotRemoved("linearDamping"))return 0;return this._rigidBody?this._rigidBody.linearDamping():this._rigidBodyDesc.linearDamping}get linearVelocity(){if(!this._requireNotRemoved("linearVelocity"))return{x:0,y:0,z:0};return this._rigidBody?this._rigidBody.linvel():this._rigidBodyDesc.linvel}get localCenterOfMass(){if(!this._requireNotRemoved("localCenterOfMass"))return{x:0,y:0,z:0};return this._rigidBody?this._rigidBody.localCom():this._rigidBodyDesc.centerOfMass}get mass(){if(!this._requireNotRemoved("mass"))return 0;return this._rigidBody?this._rigidBody.mass():this._rigidBodyDesc.mass}get nextKinematicRotation(){if(!this._requireNotRemoved("nextKinematicRotation"))return{x:0,y:0,z:0,w:1};return this._rigidBody?this._rigidBody.nextRotation():this._rigidBodyDesc.rotation}get nextKinematicPosition(){if(!this._requireNotRemoved("nextKinematicPosition"))return{x:0,y:0,z:0};return this._rigidBody?this._rigidBody.nextTranslation():this._rigidBodyDesc.translation}get numColliders(){return this._colliders.size}get principalAngularInertia(){if(!this._requireNotRemoved("principalAngularInertia"))return{x:0,y:0,z:0};return this._rigidBody?this._rigidBody.principalInertia():this._rigidBodyDesc.principalAngularInertia}get principalAngularInertiaLocalFrame(){if(!this._requireNotRemoved("principalAngularInertiaLocalFrame"))return;return this._rigidBody?this._rigidBody.principalInertiaLocalFrame():void 0}get position(){if(!this._requireNotRemoved("position"))return{x:0,y:0,z:0};return this._rigidBody?this._rigidBody.translation():this._rigidBodyDesc.translation}get rawRigidBody(){if(!this._requireNotRemoved("rawRigidBody"))return;return this._rigidBody}get rotation(){if(!this._requireNotRemoved("rotation"))return{x:0,y:0,z:0,w:1};return this._rigidBody?this._rigidBody.rotation():this._rigidBodyDesc.rotation}get softCcdPrediction(){if(!this._requireNotRemoved("softCcdPrediction"))return 0;return this._rigidBody?this._rigidBody.softCcdPrediction():this._rigidBodyDesc.softCcdPrediction}get type(){if(!this._requireNotRemoved("type"))return"dynamic";return this._rigidBodyType}get worldCenterOfMass(){if(!this._requireNotRemoved("worldCenterOfMass"))return;return this._rigidBody?this._rigidBody.worldCom():void 0}setAdditionalMass(A){if(!this._requireDynamic("setAdditionalMass"))return;if(!this._requireNotRemoved("setAdditionalMass"))return;this._rigidBody?this._rigidBody.setAdditionalMass(A,!this._explicitSleep):this._rigidBodyDesc.setAdditionalMass(A)}setAdditionalMassProperties(A){if(!this._requireDynamic("setAdditionalMassProperties"))return;if(!this._requireNotRemoved("setAdditionalMassProperties"))return;let{additionalMass:Q,centerOfMass:B,principalAngularInertia:Y,principalAngularInertiaLocalFrame:J}=A;this._rigidBody?this._rigidBody.setAdditionalMassProperties(Q,B,Y,J,!this._explicitSleep):this._rigidBodyDesc.setAdditionalMassProperties(Q,B,Y,J)}setAdditionalSolverIterations(A){if(!this._requireDynamic("setAdditionalSolverIterations"))return;if(!this._requireNotRemoved("setAdditionalSolverIterations"))return;this._rigidBody?this._rigidBody.setAdditionalSolverIterations(A):this._rigidBodyDesc.setAdditionalSolverIterations(A)}setAngularDamping(A){if(!this._requireDynamic("setAngularDamping"))return;if(!this._requireNotRemoved("setAngularDamping"))return;this._rigidBody?this._rigidBody.setAngularDamping(A):this._rigidBodyDesc.setAngularDamping(A)}setAngularVelocity(A){if(!this._requireNotKinematicPositionBased("setAngularVelocity"))return;if(!this._requireNotRemoved("setAngularVelocity"))return;this._rigidBody?this._rigidBody.setAngvel(A,!this._explicitSleep):this._rigidBodyDesc.setAngvel(A)}setCcdEnabled(A){if(!this._requireDynamic("setCcdEnabled"))return;if(!this._requireNotRemoved("setCcdEnabled"))return;this._rigidBody?this._rigidBody.enableCcd(A):this._rigidBodyDesc.setCcdEnabled(A)}setDominanceGroup(A){if(!this._requireDynamic("setDominanceGroup"))return;if(!this._requireNotRemoved("setDominanceGroup"))return;this._rigidBody?this._rigidBody.setDominanceGroup(A):this._rigidBodyDesc.setDominanceGroup(A)}setEnabled(A){if(!this._requireNotRemoved("setEnabled"))return;this._rigidBody?this._rigidBody.setEnabled(A):this._rigidBodyDesc.setEnabled(A)}setEnabledPositions(A){if(!this._requireDynamic("setEnabledPositions"))return;if(!this._requireNotRemoved("setEnabledPositions"))return;this._rigidBody?this._rigidBody.setEnabledTranslations(A.x,A.y,A.z,!this._explicitSleep):this._rigidBodyDesc.enabledTranslations(A.x,A.y,A.z),this._enabledPositions=A}setEnabledRotations(A){if(!this._requireDynamic("setEnabledRotations"))return;if(!this._requireNotRemoved("setEnabledRotations"))return;this._rigidBody?this._rigidBody.setEnabledRotations(A.x,A.y,A.z,!this._explicitSleep):this._rigidBodyDesc.enabledRotations(A.x,A.y,A.z),this._enabledRotations=A}setGravityScale(A){if(!this._requireDynamic("setGravityScale"))return;if(!this._requireNotRemoved("setGravityScale"))return;this._rigidBody?this._rigidBody.setGravityScale(A,!this._explicitSleep):this._rigidBodyDesc.setGravityScale(A)}setLinearDamping(A){if(!this._requireDynamic("setLinearDamping"))return;if(!this._requireNotRemoved("setLinearDamping"))return;this._rigidBody?this._rigidBody.setLinearDamping(A):this._rigidBodyDesc.setLinearDamping(A)}setLinearVelocity(A){if(!this._requireNotKinematicPositionBased("setLinearVelocity"))return;if(!this._requireNotRemoved("setLinearVelocity"))return;this._rigidBody?this._rigidBody.setLinvel(A,!this._explicitSleep):this._rigidBodyDesc.setLinvel(A.x,A.y,A.z)}setNextKinematicRotation(A){if(!this._requireKinematic("setNextKinematicRotation"))return;if(!this._requireNotRemoved("setNextKinematicRotation"))return;this._rigidBody?this._rigidBody.setNextKinematicRotation(A):this._rigidBodyDesc.setRotation(A)}setNextKinematicPosition(A){if(!this._requireKinematic("setNextKinematicPosition"))return;if(!this._requireNotRemoved("setNextKinematicPosition"))return;this._rigidBody?this._rigidBody.setNextKinematicTranslation(A):this._rigidBodyDesc.setTranslation(A.x,A.y,A.z)}setPosition(A){if(!this._requireNotRemoved("setPosition"))return;this._rigidBody?this._rigidBody.setTranslation(A,!this._explicitSleep):this._rigidBodyDesc.setTranslation(A.x,A.y,A.z)}setRotation(A){if(!this._requireNotRemoved("setRotation"))return;this._rigidBody?this._rigidBody.setRotation(A,!this._explicitSleep):this._rigidBodyDesc.setRotation(A)}setSleeping(A){if(!this._requireDynamic("setSleeping"))return;if(!this._requireNotRemoved("setSleeping"))return;this._rigidBody?A?this._rigidBody.sleep():this._rigidBody.wakeUp():this._rigidBodyDesc.sleeping=A,this._explicitSleep=A}setSoftCcdPrediction(A){if(!this._requireDynamic("setSoftCcdPrediction"))return;if(!this._requireNotRemoved("setSoftCcdPrediction"))return;this._rigidBody?this._rigidBody.setSoftCcdPrediction(A):this._rigidBodyDesc.setSoftCcdPrediction(A)}setCollisionGroupsForSolidColliders(A){if(!this._requireNotRemoved("setCollisionGroupsForSolidColliders"))return;this._colliders.forEach((Q)=>{if(Q.isSensor)return;Q.setCollisionGroups(A)})}setCollisionGroupsForSensorColliders(A){if(!this._requireNotRemoved("setCollisionGroupsForSensorColliders"))return;this._colliders.forEach((Q)=>{if(!Q.isSensor)return;Q.setCollisionGroups(A)})}setType(A){if(!this._requireNotRemoved("setType"))return;let B={["dynamic"]:WB.RigidBodyType.Dynamic,["fixed"]:WB.RigidBodyType.Fixed,["kinematic_position"]:WB.RigidBodyType.KinematicPositionBased,["kinematic_velocity"]:WB.RigidBodyType.KinematicVelocityBased}[A];if(B===void 0)return l.error(`Invalid RigidBodyType: ${A}`);this._rigidBody?this._rigidBody.setBodyType(B,!this._explicitSleep):this._rigidBodyDesc.status=B,this._rigidBodyType=A}addForce(A){if(!this._requireNotRemoved("addForce"))return;if(!this._requireCreated("addForce"))return;if(!this._requireDynamic("addForce"))return;if(this._isNegligibleVector(A))return;this._rigidBody.addForce(A,!this._explicitSleep)}addTorque(A){if(!this._requireNotRemoved("addTorque"))return;if(!this._requireCreated("addTorque"))return;if(!this._requireDynamic("addTorque"))return;if(this._isNegligibleVector(A))return;this._rigidBody.addTorque(A,!this._explicitSleep)}addChildColliderToSimulation(A){if(!this._requireNotRemoved("addChildColliderToSimulation"))return;if(!this._requireCreated("addChildColliderToSimulation"))return;A.addToSimulation(this._simulation,this)}addToSimulation(A){if(!this._requireNotRemoved("addToSimulation"))return;if(this._rigidBody)return l.error("RigidBody.addToSimulation(): Rigid body already exists in the simulation!");this._simulation=A,this._rigidBody=this._simulation.createRawRigidBody(this._rigidBodyDesc),this._colliders.forEach((Q)=>{if(!Q.isSimulated)Q.addToSimulation(A,this)})}applyImpulse(A){if(!this._requireNotRemoved("applyImpulse"))return;if(!this._requireCreated("applyImpulse"))return;if(!this._requireDynamic("applyImpulse"))return;if(this._isNegligibleVector(A))return;this._rigidBody.applyImpulse(A,!this._explicitSleep)}applyImpulseAtPoint(A,Q){if(!this._requireNotRemoved("applyImpulseAtPoint"))return;if(!this._requireCreated("applyImpulseAtPoint"))return;if(!this._requireDynamic("applyImpulseAtPoint"))return;if(this._isNegligibleVector(A))return;this._rigidBody.applyImpulseAtPoint(A,Q,!this._explicitSleep)}applyTorqueImpulse(A){if(!this._requireNotRemoved("applyTorqueImpulse"))return;if(!this._requireCreated("applyTorqueImpulse"))return;if(!this._requireDynamic("applyTorqueImpulse"))return;this._rigidBody.applyTorqueImpulse(A,!this._explicitSleep)}createAndAddChildCollider(A){if(!this._requireNotRemoved("createAndAddChildCollider"))return null;return this._simulation?new h9({...A,parentRigidBody:this,simulation:this._simulation}):this._createAndAddPendingChildCollider(A)}createAndAddChildColliders(A){let Q=[];return A.forEach((B)=>{let Y=this.createAndAddChildCollider(B);if(Y)Q.push(Y)}),Q}getCollidersByTag(A){let Q=[];for(let B of this._colliders)if(B.tag===A)Q.push(B);return Q}linkCollider(A){if(!this._requireNotRemoved("linkCollider"))return;if(A.parentRigidBody!==this)return l.error("RigidBody.linkCollider(): Collider cannot be linked because it is not a child of this rigid body!");this._colliders.add(A)}lockAllRotations(){if(!this._requireNotRemoved("lockAllRotations"))return;this.setEnabledRotations({x:!1,y:!1,z:!1})}lockAllPositions(){if(!this._requireNotRemoved("lockAllPositions"))return;this.setEnabledPositions({x:!1,y:!1,z:!1})}removeFromSimulation(){if(!this._requireNotRemoved("removeFromSimulation"))return;if(!this._rigidBody)return l.error("RigidBody.removeFromSimulation(): Rigid body does not exist in the simulation!");this._colliders.forEach((A)=>{A.removeFromSimulation()}),this._simulation.removeRawRigidBody(this._rigidBody),this._simulation=void 0,this._rigidBody=void 0}unlinkCollider(A){if(!this._requireNotRemoved("unlinkCollider"))return;if(!A.isRemoved)return l.error("RigidBody.unlinkCollider(): Collider is still simulated and therefore cannot be unlinked from this rigid body!");this._colliders.delete(A)}resetAngularVelocity(){if(!this._requireNotRemoved("resetAngularVelocity"))return;if(!this._requireCreated("resetAngularVelocity"))return;this.setAngularVelocity({x:0,y:0,z:0})}resetForces(){if(!this._requireNotRemoved("resetForces"))return;if(!this._requireCreated("resetForces"))return;this._rigidBody.resetForces(!this._explicitSleep)}resetLinearVelocity(){if(!this._requireNotRemoved("resetLinearVelocity"))return;if(!this._requireCreated("resetLinearVelocity"))return;this.setLinearVelocity({x:0,y:0,z:0})}resetTorques(){if(!this._requireNotRemoved("resetTorques"))return;if(!this._requireCreated("resetTorques"))return;this._rigidBody.resetTorques(!this._explicitSleep)}sleep(){if(!this._requireNotRemoved("sleep"))return;this.setSleeping(!0)}wakeUp(){if(!this._requireNotRemoved("wakeUp"))return;this.setSleeping(!1)}_applyRigidBodyOptions(A){[["additionalMass",this.setAdditionalMass.bind(this)],["additionalMassProperties",this.setAdditionalMassProperties.bind(this)],["additionalSolverIterations",this.setAdditionalSolverIterations.bind(this)],["angularDamping",this.setAngularDamping.bind(this)],["angularVelocity",this.setAngularVelocity.bind(this)],["dominanceGroup",this.setDominanceGroup.bind(this)],["ccdEnabled",this.setCcdEnabled.bind(this)],["enabled",this.setEnabled.bind(this)],["enabledPositions",this.setEnabledPositions.bind(this)],["enabledRotations",this.setEnabledRotations.bind(this)],["gravityScale",this.setGravityScale.bind(this)],["linearDamping",this.setLinearDamping.bind(this)],["linearVelocity",this.setLinearVelocity.bind(this)],["position",this.setPosition.bind(this)],["rotation",this.setRotation.bind(this)],["sleeping",this.setSleeping.bind(this)],["softCcdPrediction",this.setSoftCcdPrediction.bind(this)]].forEach(([B,Y])=>{if(B in A)Y(A[B])})}_autoAddToSimulation(A){if(A.colliders)this._createAndAddPendingChildColliders(A.colliders);if(A.simulation)this.addToSimulation(A.simulation)}_createAndAddPendingChildCollider(A){if(!this._requireNotRemoved("createAndAddPendingChildCollider"))return null;if(!this._requireNotSimulated("createAndAddPendingChildCollider"))return null;let Q=new h9(A);return this._colliders.add(Q),Q}_createAndAddPendingChildColliders(A){let Q=[];return A.forEach((B)=>{let Y=this._createAndAddPendingChildCollider(B);if(Y)Q.push(Y)}),Q}_createRigidBodyDesc(A){let Q=A.type??OZA;return{["dynamic"]:()=>WB.RigidBodyDesc.dynamic(),["fixed"]:()=>WB.RigidBodyDesc.fixed(),["kinematic_position"]:()=>WB.RigidBodyDesc.kinematicPositionBased(),["kinematic_velocity"]:()=>WB.RigidBodyDesc.kinematicVelocityBased()}[Q]()}_requireCreated(A){if(!this._rigidBody||!this._simulation)l.error(`RigidBody._requireCreated(): Rigid body has not been created and therefore does not support the invoked method: ${A}()`);return!!this._rigidBody&&!!this._simulation}_requireDynamic(A){if(!this.isDynamic)l.error(`RigidBody._requireDynamic(): Rigid body is not dynamic and therefore does not support the invoked method: ${A}()`);return this.isDynamic}_requireKinematic(A){if(!this.isKinematic)l.error(`RigidBody._requireKinematic(): Rigid body is not kinematic and therefore does not support the invoked method: ${A}()`);return this.isKinematic}_requireNotKinematicPositionBased(A){if(this.isKinematicPositionBased)l.error(`RigidBody._requireNotKinematicPositionBased(): Rigid body is kinematic position based and therefore does not support the invoked method: ${A}()`);return!this.isKinematicPositionBased}_requireNotRemoved(A){if(!this._rigidBody&&!this._rigidBodyDesc)l.error(`RigidBody._requireNotRemoved(): Rigid body has been removed and therefore does not support the invoked method: ${A}()`);return!!this._rigidBody||!!this._rigidBodyDesc}_requireNotSimulated(A){if(this.isSimulated)l.error(`RigidBody._requireNotSimulated(): Rigid body is simulated and therefore does not support the invoked method: ${A}()`);return!this.isSimulated}_isNegligibleVector(A){return Math.abs(A.x){J[J.Average=0]="Average";J[J.Min=1]="Min";J[J.Multiply=2]="Multiply";J[J.Max=3]="Max"})(mf||={});var ZZ;((Z)=>{Z.NONE="none";Z.BALL="ball";Z.BLOCK="block";Z.CAPSULE="capsule";Z.CONE="cone";Z.CYLINDER="cylinder";Z.ROUND_CYLINDER="round-cylinder";Z.TRIMESH="trimesh";Z.VOXELS="voxels";Z.WEDGE="wedge"})(ZZ||={});class h9 extends BQ{_collider;_colliderDesc;_onCollision;_parentRigidBody;_relativePosition={x:0,y:0,z:0};_relativeRotation={x:0,y:0,z:0,w:1};_scale={x:1,y:1,z:1};_shape;_simulation;_tag;constructor(A){super();this._colliderDesc=this._createColliderDesc(A),this._shape=A.shape,this._applyColliderOptions(A),this._autoAddToSimulation(A)}static optionsFromBlockHalfExtents(A){return{shape:"block",halfExtents:A}}static optionsFromModelUri(A,Q=1,B){Q=typeof Q==="number"?{x:Q,y:Q,z:Q}:Q;let Y=yY.instance.getBoundingBox(A),J=Y.max.x-Y.min.x,C=Y.max.y-Y.min.y,X=Y.max.z-Y.min.z,G=J*Q.x,W=C*Q.y,F=X*Q.z,Z=Math.max(G,F),U=Math.min(G,F),$=Z/U,E=Z/W,K=Z/2,I=(M)=>Math.max(0.01,M),V=()=>({shape:"block",halfExtents:{x:I(G/2),y:I(W/2),z:I(F/2)}}),H=()=>({shape:"round-cylinder",radius:I(K),halfHeight:I(W/2),borderRadius:I(K*0.1)}),D=()=>{let M=yY.instance.getTrimesh(A,Q);if(!M)return;return{shape:"trimesh",vertices:M.vertices,indices:M.indices}},L=()=>({shape:"wedge",extents:{x:G,y:W,z:F}}),z=()=>({shape:"capsule",radius:I(K),halfHeight:I(W/2-K)});if(B)switch(B){case"block":return V();case"capsule":return z();case"round-cylinder":return H();case"trimesh":{let M=D();if(!M){l.error(`Collider.optionsFromModelUri(): Failed to create trimesh options for model ${A}, falling back to generic shape!`);break}return M}case"wedge":return L();default:l.warning(`Collider.optionsFromModelUri(): Preferred shape ${B} is not yet supported with Collider.optionsFromModelUri(), defaulting to generic shape!`)}if($>2)return V();if(E>1.5)return H();return z()}get bounciness(){if(!this._requireNotRemoved("bounciness"))return 0;return this._collider?this._collider.restitution():this._colliderDesc.restitution}get bouncinessCombineRule(){if(!this._requireNotRemoved("bouncinessCombineRule"))return 0;return this._collider?this._collider.restitutionCombineRule():this._colliderDesc.restitutionCombineRule}get collisionGroups(){if(!this._requireNotRemoved("collisionGroups"))return{belongsTo:[],collidesWith:[]};return this._collider?LC.decodeRawCollisionGroups(this._collider.collisionGroups()):LC.decodeRawCollisionGroups(this._colliderDesc.collisionGroups)}get friction(){if(!this._requireNotRemoved("friction"))return 0;return this._collider?this._collider.friction():this._colliderDesc.friction}get frictionCombineRule(){if(!this._requireNotRemoved("frictionCombineRule"))return 0;return this._collider?this._collider.frictionCombineRule():this._colliderDesc.frictionCombineRule}get isEnabled(){if(!this._requireNotRemoved("isEnabled"))return!1;return this._collider?this._collider.isEnabled():this._colliderDesc.enabled}get isRemoved(){return!this._collider&&!this._colliderDesc}get isSensor(){if(!this._requireNotRemoved("isSensor"))return!1;return this._collider?this._collider.isSensor():this._colliderDesc.isSensor}get isSimulated(){if(!this._requireNotRemoved("isSimulated"))return!1;return!!this._collider}get isBall(){return this.shape==="ball"}get isBlock(){return this.shape==="block"}get isCapsule(){return this.shape==="capsule"}get isCone(){return this.shape==="cone"}get isCylinder(){return this.shape==="cylinder"}get isNone(){return this.shape==="none"}get isRoundCylinder(){return this.shape==="round-cylinder"}get isTrimesh(){return this.shape==="trimesh"}get isVoxel(){return this.shape==="voxels"}get isWedge(){return this.shape==="wedge"}get parentRigidBody(){if(!this._requireNotRemoved("parentRigidBody"))return;return this._parentRigidBody}get rawCollider(){if(!this._requireNotRemoved("rawCollider"))return;return this._collider}get rawShape(){if(!this._requireNotRemoved("rawShape"))return;return this._collider?this._collider.shape:this._colliderDesc.shape}get relativePosition(){if(!this._requireNotRemoved("relativePosition"))return{x:0,y:0,z:0};return this._relativePosition}get relativeRotation(){if(!this._requireNotRemoved("relativeRotation"))return{x:0,y:0,z:0,w:1};return this._relativeRotation}get scale(){if(!this._requireNotRemoved("scale"))return{x:1,y:1,z:1};return this._scale}get shape(){if(!this._requireNotRemoved("shape"))return"none";return this._shape}get tag(){if(!this._requireNotRemoved("tag"))return;return this._tag}setBounciness(A){if(!this._requireNotRemoved("setBounciness"))return;this._collider?this._collider.setRestitution(A):this._colliderDesc.setRestitution(A)}setBouncinessCombineRule(A){if(!this._requireNotRemoved("setBouncinessCombineRule"))return;this._collider?this._collider.setRestitutionCombineRule(A):this._colliderDesc.setRestitutionCombineRule(A)}setCollisionGroups(A){if(!this._requireNotRemoved("setCollisionGroups"))return;let Q=LC.buildRawCollisionGroups(A);this._collider?this._collider.setCollisionGroups(Q):this._colliderDesc.setCollisionGroups(Q)}setEnabled(A){if(!this._requireNotRemoved("setEnabled"))return;this._collider?this._collider.setEnabled(A):this._colliderDesc.setEnabled(A)}setFriction(A){if(!this._requireNotRemoved("setFriction"))return;this._collider?this._collider.setFriction(A):this._colliderDesc.setFriction(A)}setFrictionCombineRule(A){if(!this._requireNotRemoved("setFrictionCombineRule"))return;this._collider?this._collider.setFrictionCombineRule(A):this._colliderDesc.setFrictionCombineRule(A)}setHalfExtents(A){if(!this._requireSimulated("setHalfExtents"))return;if(!this._requireNotRemoved("setHalfExtents"))return;if(this.shape!=="block")return l.error("Collider.setHalfExtents(): Collider is not a block collider!");this._collider.setHalfExtents(A)}setHalfHeight(A){if(!this._requireSimulated("setHalfHeight"))return;if(!this._requireNotRemoved("setHalfHeight"))return;if(this.shape!=="capsule"&&this.shape!=="cone"&&this.shape!=="cylinder"&&this.shape!=="round-cylinder")return l.error("Collider.setHalfHeight(): Collider is not a capsule, cone, cylinder, or round cylinder collider!");this._collider.setHalfHeight(A)}setMass(A){if(!this._requireNotRemoved("setMass"))return;this._collider?this._collider.setMass(A):this._colliderDesc.setMass(A)}setOnCollision(A){if(!this._requireNotRemoved("setOnCollision"))return;if(this._onCollision=A,this.isSimulated)if(this.enableCollisionEvents(!!A),A)this._simulation.colliderMap.setColliderCollisionCallback(this,A);else this._simulation.colliderMap.removeColliderCollisionCallback(this)}setRadius(A){if(!this._requireSimulated("setRadius"))return;if(!this._requireNotRemoved("setRadius"))return;if(this.shape!=="ball"&&this.shape!=="capsule"&&this.shape!=="cylinder"&&this.shape!=="round-cylinder")return l.error("Collider.setRadius(): Collider is not a ball, capsule, cylinder, or round cylinder collider!");this._collider.setRadius(A)}setRelativeRotation(A){if(!this._requireNotRemoved("setRelativeRotation"))return;this._relativeRotation=A,this._collider?this._collider.parent()?this._collider.setRotationWrtParent(A):this._collider.setRotation(A):this._colliderDesc.setRotation(A)}setRelativePosition(A){if(!this._requireNotRemoved("setRelativePosition"))return;this._relativePosition=A,this._collider?this._collider.parent()?this._collider.setTranslationWrtParent(A):this._collider.setTranslation(A):this._colliderDesc.setTranslation(A.x,A.y,A.z)}setSensor(A){if(!this._requireNotRemoved("setSensor"))return;this._collider?this._collider.setSensor(A):this._colliderDesc.setSensor(A)}setTag(A){if(!this._requireNotRemoved("setTag"))return;this._tag=A}setVoxel(A,Q){if(!this._requireNotRemoved("setVoxel"))return;if(!this._requireSimulated("setVoxel"))return;if(this.shape!=="voxels")return l.error("Collider.setVoxel(): Collider is not a voxels collider!");this._collider.setVoxel(A.x,A.y,A.z,Q)}addToSimulation(A,Q){if(!this._requireNotRemoved("addToSimulation"))return;if(!this._requireUnsimulated("addToSimulation"))return;if(Q){if(!Q.isSimulated)return l.error("Collider.addToSimulation(): Rigid body must be simulated before adding a collider to it!");if(Q.type==="dynamic"&&this.shape==="trimesh")l.warning("Collider.addToSimulation(): Trimesh colliders are strongly discouraged to be used with dynamic rigid bodies, they will not contribute any mass!")}if(this._simulation=A,this._parentRigidBody=Q,this._collider=this._simulation.createRawCollider(this._colliderDesc,Q?.rawRigidBody),this._colliderDesc=void 0,Q)Q.linkCollider(this);if(this._onCollision)this.setOnCollision(this._onCollision)}combineVoxelStates(A){if(!this._requireNotRemoved("combineVoxelStates"))return;if(!this._requireSimulated("combineVoxelStates"))return;if(!A.isSimulated)return l.error("Collider.combineVoxelStates(): Other collider is not simulated!");if(this.shape!=="voxels")return l.error("Collider.combineVoxelStates(): Collider is not a voxels collider!");if(A.shape!=="voxels")return l.error("Collider.combineVoxelStates(): Other collider is not a voxels collider!");this._collider.combineVoxelStates(A.rawCollider,0,0,0)}enableCollisionEvents(A){if(!this._requireNotRemoved("enableCollisionEvents"))return;let Q=this._collider?this._collider.activeEvents():this._colliderDesc.activeEvents,B=A?Q|WB.ActiveEvents.COLLISION_EVENTS:Q&~WB.ActiveEvents.COLLISION_EVENTS;(this._collider??this._colliderDesc).setActiveEvents(B),this._setActiveCollisionTypes()}enableContactForceEvents(A){if(!this._requireNotRemoved("enableContactForceEvents"))return;let Q=this._collider?this._collider.activeEvents():this._colliderDesc.activeEvents,B=A?Q|WB.ActiveEvents.CONTACT_FORCE_EVENTS:Q&~WB.ActiveEvents.CONTACT_FORCE_EVENTS;(this._collider??this._colliderDesc).setActiveEvents(B),this._setActiveCollisionTypes()}propagateVoxelChange(A,Q){if(!this._requireNotRemoved("propagateVoxelChange"))return;if(!this._requireSimulated("propagateVoxelChange"))return;if(!A.isSimulated)return l.error("Collider.propagateVoxelChange(): Other collider is not simulated!");if(this.shape!=="voxels")return l.error("Collider.propagateVoxelChange(): Collider is not a voxels collider!");if(A.shape!=="voxels")return l.error("Collider.propagateVoxelChange(): Other collider is not a voxels collider!");this._collider.propagateVoxelChange(A.rawCollider,Q.x,Q.y,Q.z,0,0,0)}removeFromSimulation(){if(!this._requireNotRemoved("removeFromSimulation"))return;if(!this._requireSimulated("removeFromSimulation"))return;if(this._simulation.removeRawCollider(this._collider),this._simulation=void 0,this._collider=void 0,this._parentRigidBody)this._parentRigidBody.unlinkCollider(this);this._parentRigidBody=void 0}setScale(A){if(!this._requireNotRemoved("scale"))return;let Q={x:A.x/this._scale.x,y:A.y/this._scale.y,z:A.z/this._scale.z};this.setRelativePosition({x:this.relativePosition.x*Q.x,y:this.relativePosition.y*Q.y,z:this.relativePosition.z*Q.z});let B=Math.max(this._scale.x,this._scale.z),J=Math.max(A.x,A.z)/B;switch(this._scale=A,this._shape){case"ball":{if(this._collider)this._collider.setRadius(this._collider.radius()*J);else this._colliderDesc.shape.radius*=J;return}case"block":{if(this._collider){let C=this._collider.halfExtents();this._collider.setHalfExtents({x:C.x*Q.x,y:C.y*Q.y,z:C.z*Q.z})}else this._colliderDesc.shape.halfExtents.x*=Q.x,this._colliderDesc.shape.halfExtents.y*=Q.y,this._colliderDesc.shape.halfExtents.z*=Q.z;return}case"capsule":{if(this._collider)this._collider.setHalfHeight(this._collider.halfHeight()*Q.y),this._collider.setRadius(this._collider.radius()*J);else this._colliderDesc.shape.halfHeight*=Q.y,this._colliderDesc.shape.radius*=J;return}case"cone":{if(this._collider)this._collider.setHalfHeight(this._collider.halfHeight()*Q.y),this._collider.setRadius(this._collider.radius()*J);else this._colliderDesc.shape.halfHeight*=Q.y,this._colliderDesc.shape.radius*=J;return}case"cylinder":{if(this._collider)this._collider.setHalfHeight(this._collider.halfHeight()*Q.y),this._collider.setRadius(this._collider.radius()*J);else this._colliderDesc.shape.halfHeight*=Q.y,this._colliderDesc.shape.radius*=J;return}case"round-cylinder":{if(this._collider)this._collider.setHalfHeight(this._collider.halfHeight()*Q.y),this._collider.setRoundRadius(this._collider.roundRadius()*J),this._collider.setRadius(this._collider.radius()*J);else this._colliderDesc.shape.halfHeight=this._colliderDesc.shape.halfHeight*Q.y,this._colliderDesc.shape.borderRadius=this._colliderDesc.shape.borderRadius*J,this._colliderDesc.shape.radius=this._colliderDesc.shape.radius*J;return}case"trimesh":{l.error("Collider.setScale(): Trimesh colliders cannot be scaled at runtime!");return}case"voxels":{l.error("Collider.setScale(): Voxels colliders cannot be scaled!");return}case"wedge":{l.error("Collider.setScale(): Wedge colliders cannot be scaled!");return}default:l.fatalError(`Collider.setScale(): ${this._shape} is not a valid collider shape!`)}}_applyColliderOptions(A){[["bounciness",this.setBounciness.bind(this)],["bouncinessCombineRule",this.setBouncinessCombineRule.bind(this)],["collisionGroups",this.setCollisionGroups.bind(this)],["enabled",this.setEnabled.bind(this)],["friction",this.setFriction.bind(this)],["frictionCombineRule",this.setFrictionCombineRule.bind(this)],["isSensor",this.setSensor.bind(this)],["mass",this.setMass.bind(this)],["onCollision",this.setOnCollision.bind(this)],["relativePosition",this.setRelativePosition.bind(this)],["relativeRotation",this.setRelativeRotation.bind(this)],["tag",this.setTag.bind(this)]].forEach(([B,Y])=>{if(A[B]!==void 0)Y.call(this,A[B])})}_autoAddToSimulation(A){if(A.simulation)this.addToSimulation(A.simulation,A.parentRigidBody)}_buildWedgeConvexHullVertices(A){let{x:Q,y:B,z:Y}=A,J=Q/2,C=Y/2,X=B/2;return new Float32Array([-J,0-X,-C,J,0-X,-C,J,0-X,C,-J,0-X,C,-J,B-X,-C,J,B-X,-C])}_createColliderDesc(A){let{shape:Q,flags:B}=A;switch(Q){case"ball":{if(!A.radius)l.fatalError("Ball collider must have a radius!");return WB.ColliderDesc.ball(A.radius)}case"block":{if(!A.halfExtents)l.fatalError("Block collider must have halfExtents!");return WB.ColliderDesc.cuboid(A.halfExtents.x,A.halfExtents.y,A.halfExtents.z)}case"capsule":{if(!A.halfHeight||!A.radius)l.fatalError("Capsule collider must have halfHeight and radius!");return WB.ColliderDesc.capsule(A.halfHeight,A.radius)}case"cone":{if(!A.radius||!A.halfHeight)l.fatalError("Cone collider must have radius and halfHeight!");return WB.ColliderDesc.cone(A.halfHeight,A.radius)}case"cylinder":{if(!A.radius||!A.halfHeight)l.fatalError("Cylinder collider must have radius and halfHeight!");return WB.ColliderDesc.cylinder(A.halfHeight,A.radius)}case"round-cylinder":{if(!A.radius||!A.halfHeight||!A.borderRadius)l.fatalError("Round cylinder collider must have radius, halfHeight, and borderRadius!");return WB.ColliderDesc.roundCylinder(A.halfHeight,A.radius,A.borderRadius)}case"trimesh":{if(!A.indices||!A.vertices)l.fatalError("Trimesh collider must have vertices and indices!");return WB.ColliderDesc.trimesh(A.vertices,A.indices,B)}case"voxels":{if(!A.coordinates||!A.size)l.fatalError("Voxels collider must have coordinates and size!");return WB.ColliderDesc.voxels(this._coordinatesToInt32Array(A.coordinates),A.size)}case"wedge":{if(!A.extents)l.fatalError("Wedge collider must have extents!");let Y=this._buildWedgeConvexHullVertices(A.extents),J=WB.ColliderDesc.convexHull(Y);if(!J)throw l.fatalError("Failed to create convex hull for wedge collider!"),Error("Convex hull creation failed");return J}default:l.fatalError(`Collider._createColliderDesc(): ${Q} is not a valid collider shape!`)}}_requireSimulated(A){if(!this.isSimulated)l.error(`Collider._requireSimulated(): Collider is not simulated, invoked method: ${A}()`);return this.isSimulated}_requireUnsimulated(A){if(this.isSimulated)l.error(`Collider._requireUnsimulated(): Collider is already simulated, invoked method: ${A}()`);return!this.isSimulated}_requireNotRemoved(A){if(this.isRemoved)l.error(`Collider._requireNotRemoved(): Collider is removed, invoked method: ${A}()`);return!this.isRemoved}_setActiveCollisionTypes(){(this._collider??this._colliderDesc).setActiveCollisionTypes(WB.ActiveCollisionTypes.DYNAMIC_DYNAMIC|WB.ActiveCollisionTypes.DYNAMIC_KINEMATIC|WB.ActiveCollisionTypes.DYNAMIC_FIXED|WB.ActiveCollisionTypes.KINEMATIC_KINEMATIC|WB.ActiveCollisionTypes.KINEMATIC_FIXED)}_coordinatesToInt32Array(A){let Q=new Int32Array(A.length*3);for(let B=0;Bthis.serializeBlockType(Q))}static serializeChunk(A){return{c:this.serializeVector(A.originCoordinate),b:Array.from(A.blocks),r:Array.from(A.blockRotations).flatMap(([Q,B])=>[Q,B.enumIndex])}}static serializeEntity(A){if(!A.world||A.id===void 0)l.fatalError("Serializer.serializeEntity(): Entity is not in a world");return{i:A.id,bt:A.blockTextureUri,bh:A.blockHalfExtents?this.serializeVector(A.blockHalfExtents):void 0,e:A.isEnvironmental,ec:A.emissiveColor?this.serializeRgbColor(A.emissiveColor):void 0,ei:A.emissiveIntensity,m:A.modelUri,ma:A.modelAnimations.map((Q)=>this.serializeEntityModelAnimation(Q)),mo:A.modelNodeOverrides.map((Q)=>this.serializeEntityModelNodeOverride(Q)),mt:A.modelTextureUri,n:A.name,o:A.opacity,ol:A.outline?this.serializeOutline(A.outline):void 0,p:this.serializeVector(A.position),pi:A.positionInterpolationMs,pe:A.parent?A.parent.id:void 0,pn:A.parentNodeName,r:this.serializeQuaternion(A.rotation),ri:A.rotationInterpolationMs,si:A.modelScaleInterpolationMs,sv:A.modelScale?this.serializeVector(A.modelScale):void 0,t:A.tintColor?this.serializeRgbColor(A.tintColor):void 0}}static serializeEntityModelAnimation(A){return{n:A.name,b:A.blendMode,c:A.clampWhenFinished,fi:A.fadesIn,fo:A.fadesOut,l:A.loopMode,p:A.isPlaying&&A.loopMode!==0,pr:A.playbackRate,w:A.weight}}static serializeEntityModelNodeOverride(A){return{n:A.nameMatch,ec:A.emissiveColor?this.serializeRgbColor(A.emissiveColor):void 0,ei:A.emissiveIntensity,h:A.isHidden,p:A.localPosition?this.serializeVector(A.localPosition):void 0,pi:A.localPositionInterpolationMs,r:A.localRotation?this.serializeQuaternion(A.localRotation):void 0,ri:A.localRotationInterpolationMs,s:A.localScale?this.serializeVector(A.localScale):void 0,si:A.localScaleInterpolationMs}}static serializeOutline(A){return{c:A.color?this.serializeRgbColor(A.color):void 0,ci:A.colorIntensity,th:A.thickness,o:A.opacity,oc:A.occluded}}static serializeParticleEmitter(A){if(!A.world||A.id===void 0)l.fatalError("Serializer.serializeParticleEmitter(): ParticleEmitter is not in a world");return{i:A.id,at:A.alphaTest,ce:A.colorEnd?this.serializeRgbColor(A.colorEnd):void 0,cev:A.colorEndVariance?this.serializeRgbColor(A.colorEndVariance):void 0,cs:A.colorStart?this.serializeRgbColor(A.colorStart):void 0,csv:A.colorStartVariance?this.serializeRgbColor(A.colorStartVariance):void 0,cie:A.colorIntensityEnd,ciev:A.colorIntensityEndVariance,cis:A.colorIntensityStart,cisv:A.colorIntensityStartVariance,e:A.attachedToEntity?.isSpawned?A.attachedToEntity.id:void 0,en:A.attachedToEntityNodeName,g:A.gravity?this.serializeVector(A.gravity):void 0,l:A.lifetime,le:A.lockToEmitter,lv:A.lifetimeVariance,mp:A.maxParticles,o:A.offset?this.serializeVector(A.offset):void 0,or:A.orientation?this.serializeParticleEmitterOrientation(A.orientation):void 0,ofr:A.orientationFixedRotation?this.serializeVector(A.orientationFixedRotation):void 0,oe:A.opacityEnd,oev:A.opacityEndVariance,os:A.opacityStart,osv:A.opacityStartVariance,p:A.position?this.serializeVector(A.position):void 0,pa:A.paused,pv:A.positionVariance?this.serializeVector(A.positionVariance):void 0,r:A.rate,rv:A.rateVariance,se:A.sizeEnd,sev:A.sizeEndVariance,ss:A.sizeStart,ssv:A.sizeStartVariance,t:A.transparent,tu:A.textureUri,v:A.velocity?this.serializeVector(A.velocity):void 0,vv:A.velocityVariance?this.serializeVector(A.velocityVariance):void 0}}static serializeParticleEmitterOrientation(A){switch(A){case"billboard":return 0;case"billboardY":return 1;case"fixed":return 2;case"velocity":return 3;default:return 0}}static serializePhysicsDebugRaycast(A){return{o:this.serializeVector(A.origin),d:this.serializeVector(A.direction),l:A.length,h:A.hit}}static serializePlayer(A){return{i:A.id,u:A.username,p:A.profilePictureUrl}}static serializePlayerCamera(A){return{cb:A.collidesWithBlocks,m:A.mode,e:A.attachedToEntity?.isSpawned?A.attachedToEntity.id:void 0,et:A.targetEntity?.isSpawned?A.targetEntity.id:void 0,fo:A.filmOffset,ffo:A.forwardOffset,fv:A.fov,h:Array.from(A.viewModelHiddenNodes),mp:A.viewModelPitchesWithCamera,my:A.viewModelYawsWithCamera,o:A.offset?this.serializeVector(A.offset):void 0,p:A.attachedToPosition?this.serializeVector(A.attachedToPosition):void 0,pt:A.targetPosition?this.serializeVector(A.targetPosition):void 0,s:Array.from(A.viewModelShownNodes),sa:A.shoulderAngle,z:A.zoom}}static serializeQuaternion(A){return[A.x,A.y,A.z,A.w]}static serializeRgbColor(A){return[A.r,A.g,A.b]}static serializeSceneUI(A){if(A.id===void 0)l.fatalError("Serializer.serializeSceneUI(): SceneUI is not loaded!");return{i:A.id,e:A.attachedToEntity?.isSpawned?A.attachedToEntity.id:void 0,o:A.offset?this.serializeVector(A.offset):void 0,p:A.position?this.serializeVector(A.position):void 0,s:A.state,t:A.templateId,v:A.viewDistance}}static serializeVector(A){return[A.x,A.y,A.z]}static serializeVectorBoolean(A){return[A.x,A.y,A.z]}static serializeWorld(A){return{i:A.id,ac:this.serializeRgbColor(A.ambientLightColor),ai:A.ambientLightIntensity,dc:this.serializeRgbColor(A.directionalLightColor),di:A.directionalLightIntensity,dp:this.serializeVector(A.directionalLightPosition),fc:A.fogColor?this.serializeRgbColor(A.fogColor):void 0,ff:A.fogFar,fn:A.fogNear,n:A.name,s:A.skyboxUri,si:A.skyboxIntensity,t:A.loop.timestepS}}}var PZA;((Y)=>{Y[Y.PLAYING=0]="PLAYING";Y[Y.PAUSED=1]="PAUSED";Y[Y.STOPPED=2]="STOPPED"})(PZA||={});var uf;((B)=>{B[B.ADDITIVE=0]="ADDITIVE";B[B.NORMAL=1]="NORMAL"})(uf||={});var $Z;((Y)=>{Y[Y.ONCE=0]="ONCE";Y[Y.LOOP=1]="LOOP";Y[Y.PING_PONG=2]="PING_PONG"})($Z||={});var df;((U)=>{U.PAUSE="ENTITY_MODEL_ANIMATION.PAUSE";U.PLAY="ENTITY_MODEL_ANIMATION.PLAY";U.RESTART="ENTITY_MODEL_ANIMATION.RESTART";U.SET_BLEND_MODE="ENTITY_MODEL_ANIMATION.SET_BLEND_MODE";U.SET_CLAMP_WHEN_FINISHED="ENTITY_MODEL_ANIMATION.SET_CLAMP_WHEN_FINISHED";U.SET_FADES_IN="ENTITY_MODEL_ANIMATION.SET_FADES_IN";U.SET_FADES_OUT="ENTITY_MODEL_ANIMATION.SET_FADES_OUT";U.SET_LOOP_MODE="ENTITY_MODEL_ANIMATION.SET_LOOP_MODE";U.SET_PLAYBACK_RATE="ENTITY_MODEL_ANIMATION.SET_PLAYBACK_RATE";U.SET_WEIGHT="ENTITY_MODEL_ANIMATION.SET_WEIGHT";U.STOP="ENTITY_MODEL_ANIMATION.STOP"})(df||={});class CE{_name;_blendMode=1;_clampWhenFinished=!1;_entity;_fadesIn=!0;_fadesOut=!0;_loopMode=0;_state=2;_playbackRate=1;_weight=1;constructor(A){this._name=A.name,this._entity=A.entity,this._blendMode=A.blendMode??this._blendMode,this._clampWhenFinished=A.clampWhenFinished??this._clampWhenFinished,this._fadesIn=A.fadesIn??this._fadesIn,this._fadesOut=A.fadesOut??this._fadesOut,this._loopMode=A.loopMode??this._loopMode,this._state=A.play?0:this._state,this._playbackRate=A.playbackRate??this._playbackRate,this._weight=A.weight??this._weight}get name(){return this._name}get blendMode(){return this._blendMode}get clampWhenFinished(){return this._clampWhenFinished}get entity(){return this._entity}get fadesIn(){return this._fadesIn}get fadesOut(){return this._fadesOut}get isPlaying(){return this._state===0}get isPaused(){return this._state===1}get isStopped(){return this._state===2}get loopMode(){return this._loopMode}get playbackRate(){return this._playbackRate}get weight(){return this._weight}pause(){if(this._state===1)return;if(this._state=1,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.PAUSE",{entityModelAnimation:this})}play(){if(this._state===0)return;if(this._state=0,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.PLAY",{entityModelAnimation:this})}restart(){if(this._state=0,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.RESTART",{entityModelAnimation:this})}setBlendMode(A){if(this._blendMode===A)return;if(this._blendMode=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_BLEND_MODE",{entityModelAnimation:this,blendMode:A})}setClampWhenFinished(A){if(this._clampWhenFinished===A)return;if(this._clampWhenFinished=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_CLAMP_WHEN_FINISHED",{entityModelAnimation:this,clampWhenFinished:A})}setFadesIn(A){if(this._fadesIn===A)return;if(this._fadesIn=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_FADES_IN",{entityModelAnimation:this,fadesIn:A})}setFadesOut(A){if(this._fadesOut===A)return;if(this._fadesOut=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_FADES_OUT",{entityModelAnimation:this,fadesOut:A})}setLoopMode(A){if(this._loopMode===A)return;if(this._loopMode=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_LOOP_MODE",{entityModelAnimation:this,loopMode:A})}setPlaybackRate(A){if(this._playbackRate===A)return;if(this._playbackRate=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_PLAYBACK_RATE",{entityModelAnimation:this,playbackRate:A})}setWeight(A){if(this._weight===A)return;if(this._weight=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_WEIGHT",{entityModelAnimation:this,weight:A})}stop(){if(this._state===2)return;if(this._state=2,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.STOP",{entityModelAnimation:this})}serialize(){return GQ.serializeEntityModelAnimation(this)}}var cf;((F)=>{F.SET_EMISSIVE_COLOR="ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_COLOR";F.SET_EMISSIVE_INTENSITY="ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_INTENSITY";F.SET_HIDDEN="ENTITY_MODEL_NODE_OVERRIDE.SET_HIDDEN";F.SET_LOCAL_POSITION="ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION";F.SET_LOCAL_POSITION_INTERPOLATION_MS="ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION_INTERPOLATION_MS";F.SET_LOCAL_ROTATION="ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION";F.SET_LOCAL_ROTATION_INTERPOLATION_MS="ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION_INTERPOLATION_MS";F.SET_LOCAL_SCALE="ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE";F.SET_LOCAL_SCALE_INTERPOLATION_MS="ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE_INTERPOLATION_MS"})(cf||={});class XE{_nameMatch;_entity;_emissiveColor;_emissiveIntensity;_hidden=!1;_isRemoved=!1;_localPosition;_localPositionInterpolationMs;_localRotation;_localRotationInterpolationMs;_localScale;_localScaleInterpolationMs;constructor(A){this._nameMatch=A.nameMatch.toLowerCase(),this._entity=A.entity,this._emissiveColor=A.emissiveColor,this._emissiveIntensity=A.emissiveIntensity,this._hidden=A.hidden??this._hidden,this._localPosition=A.localPosition,this._localPositionInterpolationMs=A.localPositionInterpolationMs,this._localRotation=A.localRotation,this._localRotationInterpolationMs=A.localRotationInterpolationMs,this._localScale=typeof A.localScale==="number"?{x:A.localScale,y:A.localScale,z:A.localScale}:A.localScale,this._localScaleInterpolationMs=A.localScaleInterpolationMs}get nameMatch(){return this._nameMatch}get name(){return this._nameMatch}get entity(){return this._entity}get emissiveColor(){return this._emissiveColor}get emissiveIntensity(){return this._emissiveIntensity}get isHidden(){return this._hidden}get localPosition(){return this._localPosition}get localPositionInterpolationMs(){return this._localPositionInterpolationMs}get localRotation(){return this._localRotation}get localRotationInterpolationMs(){return this._localRotationInterpolationMs}get localScale(){return this._localScale}get localScaleInterpolationMs(){return this._localScaleInterpolationMs}remove(){this._entity.removeModelNodeOverride(this.nameMatch)}setEmissiveColor(A){if(this._isRemoved)return;if(!A&&!this._emissiveColor||A&&this._emissiveColor&&A.r===this._emissiveColor.r&&A.g===this._emissiveColor.g&&A.b===this._emissiveColor.b)return;if(this._emissiveColor=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_COLOR",{entityModelNodeOverride:this,emissiveColor:A})}setEmissiveIntensity(A){if(this._isRemoved)return;if(this._emissiveIntensity===A)return;if(this._emissiveIntensity=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_INTENSITY",{entityModelNodeOverride:this,emissiveIntensity:A})}setHidden(A){if(this._isRemoved)return;if(this._hidden===A)return;if(this._hidden=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_HIDDEN",{entityModelNodeOverride:this,hidden:A})}setLocalPosition(A){if(this._isRemoved)return;if(A===this._localPosition)return;if(A&&this._localPosition&&this._localPosition.x===A.x&&this._localPosition.y===A.y&&this._localPosition.z===A.z)return;if(this._localPosition=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION",{entityModelNodeOverride:this,localPosition:A})}setLocalPositionInterpolationMs(A){if(this._isRemoved)return;if(A===this._localPositionInterpolationMs)return;if(this._localPositionInterpolationMs=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION_INTERPOLATION_MS",{entityModelNodeOverride:this,interpolationMs:A})}setLocalRotation(A){if(this._isRemoved)return;if(A===this._localRotation)return;if(A&&this._localRotation&&this._localRotation.x===A.x&&this._localRotation.y===A.y&&this._localRotation.z===A.z&&this._localRotation.w===A.w)return;if(this._localRotation=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION",{entityModelNodeOverride:this,localRotation:A})}setLocalRotationInterpolationMs(A){if(this._isRemoved)return;if(A===this._localRotationInterpolationMs)return;if(this._localRotationInterpolationMs=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION_INTERPOLATION_MS",{entityModelNodeOverride:this,interpolationMs:A})}setLocalScale(A){if(this._isRemoved)return;if(A===this._localScale)return;if(typeof A==="number")A={x:A,y:A,z:A};if(A&&this._localScale&&this._localScale.x===A.x&&this._localScale.y===A.y&&this._localScale.z===A.z)return;if(this._localScale=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE",{entityModelNodeOverride:this,localScale:A})}setLocalScaleInterpolationMs(A){if(this._isRemoved)return;if(A===this._localScaleInterpolationMs)return;if(this._localScaleInterpolationMs=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE_INTERPOLATION_MS",{entityModelNodeOverride:this,interpolationMs:A})}serialize(){return GQ.serializeEntityModelNodeOverride(this)}markRemoved(){this._isRemoved=!0}}var TZA={type:"dynamic",softCcdPrediction:1},SZA=0.0016,kZA=Math.cos(0.026),XD;((q)=>{q.BLOCK_COLLISION="ENTITY.BLOCK_COLLISION";q.BLOCK_CONTACT_FORCE="ENTITY.BLOCK_CONTACT_FORCE";q.DESPAWN="ENTITY.DESPAWN";q.ENTITY_COLLISION="ENTITY.ENTITY_COLLISION";q.ENTITY_CONTACT_FORCE="ENTITY.ENTITY_CONTACT_FORCE";q.INTERACT="ENTITY.INTERACT";q.REMOVE_MODEL_NODE_OVERRIDE="ENTITY.REMOVE_MODEL_NODE_OVERRIDE";q.SET_BLOCK_TEXTURE_URI="ENTITY.SET_BLOCK_TEXTURE_URI";q.SET_EMISSIVE_COLOR="ENTITY.SET_EMISSIVE_COLOR";q.SET_EMISSIVE_INTENSITY="ENTITY.SET_EMISSIVE_INTENSITY";q.SET_MODEL_SCALE="ENTITY.SET_MODEL_SCALE";q.SET_MODEL_SCALE_INTERPOLATION_MS="ENTITY.SET_MODEL_SCALE_INTERPOLATION_MS";q.SET_MODEL_TEXTURE_URI="ENTITY.SET_MODEL_TEXTURE_URI";q.SET_OPACITY="ENTITY.SET_OPACITY";q.SET_OUTLINE="ENTITY.SET_OUTLINE";q.SET_PARENT="ENTITY.SET_PARENT";q.SET_POSITION_INTERPOLATION_MS="ENTITY.SET_POSITION_INTERPOLATION_MS";q.SET_ROTATION_INTERPOLATION_MS="ENTITY.SET_ROTATION_INTERPOLATION_MS";q.SET_TINT_COLOR="ENTITY.SET_TINT_COLOR";q.SPAWN="ENTITY.SPAWN";q.TICK="ENTITY.TICK";q.UPDATE_POSITION="ENTITY.UPDATE_POSITION";q.UPDATE_ROTATION="ENTITY.UPDATE_ROTATION"})(XD||={});class X0 extends y7{_id;_blockHalfExtents;_blockTextureUri;_controller;_isEnvironmental=!1;_modelAnimations=new Map;_modelNodeOverrides=new Map;_modelPreferredShape;_modelScale={x:1,y:1,z:1};_modelScaleInterpolationMs;_modelTextureUri;_modelUri;_name;_opacity;_outline;_parent;_parentNodeName;_positionInterpolationMs;_rotationInterpolationMs;_tag;_tintColor;_emissiveColor;_emissiveIntensity;_lastUpdatedPosition={x:0,y:0,z:0};_lastUpdatedRotation={x:0,y:0,z:0,w:1};_lastParentlessType="dynamic";_world;_positionUpdateThresholdSq;_rotationUpdateThreshold;constructor(A){let Q="blockTextureUri"in A,B="modelUri"in A;if(!Q===!B)l.fatalError("Entity.constructor(): Entity data must include a blockTextureUri or modelUri, but not both.");if(Q&&!A.blockHalfExtents)l.fatalError("Entity.constructor(): Block entity must have blockHalfExtents!");if(A.parent&&!A.parent.isSpawned)l.fatalError("Entity.constructor(): Parent entity must be spawned before child entity!");if(A.parent?.modelUri&&A.parentNodeName&&!yY.instance.modelHasNode(A.parent.modelUri,A.parentNodeName))l.fatalError(`Entity.constructor(): Parent node name ${A.parentNodeName} not found in parent model ${A.parent.modelUri}!`);super(A.rigidBodyOptions??TZA);if(Q)this._blockHalfExtents=A.blockHalfExtents,this._blockTextureUri=A.blockTextureUri;if(B){let Y=this._modelScale=typeof A.modelScale==="number"?{x:A.modelScale,y:A.modelScale,z:A.modelScale}:A.modelScale??{x:1,y:1,z:1};if(this._modelPreferredShape=A.modelPreferredShape,this._modelScale=Y,this._modelScaleInterpolationMs=A.modelScaleInterpolationMs,this._modelTextureUri=A.modelTextureUri,this._modelUri=A.modelUri,!this._modelUri.startsWith("http"))if(yY.instance.hasModel(this._modelUri))A.modelAnimations?.forEach((J)=>{this._modelAnimations.set(J.name,new CE({...J,entity:this}))});else l.error(`Entity.constructor(): Model ${this._modelUri} does not exist!`);A.modelNodeOverrides?.forEach((J)=>{this._modelNodeOverrides.set(J.nameMatch.toLowerCase(),new XE({...J,entity:this}))})}if(this._emissiveColor=A.emissiveColor,this._emissiveIntensity=A.emissiveIntensity,this._isEnvironmental=A.isEnvironmental??!1,this._name=A.name??"Nameless",this._opacity=A.opacity??1,this._outline=A.outline,this._parent=A.parent,this._parentNodeName=A.parentNodeName,this._positionInterpolationMs=A.positionInterpolationMs,this._rotationInterpolationMs=A.rotationInterpolationMs,this._tag=A.tag,this._tintColor=A.tintColor,this._positionUpdateThresholdSq=SZA,this._rotationUpdateThreshold=kZA,A.controller)this._controller=A.controller,this._controller.attach(this)}get id(){return this._id}get availableModelAnimationNames(){return this.isModelEntity?yY.instance.getAnimationNames(this._modelUri):[]}get availableModelNodeNames(){return this.isModelEntity?yY.instance.getNodeNames(this._modelUri):[]}get blockHalfExtents(){return this._blockHalfExtents}get blockTextureUri(){return this._blockTextureUri}get controller(){return this._controller}get emissiveColor(){return this._emissiveColor}get emissiveIntensity(){return this._emissiveIntensity}get depth(){return this.isModelEntity?yY.instance.getDepth(this._modelUri)*this._modelScale.z:this._blockHalfExtents.z*2}get height(){return this.isModelEntity?yY.instance.getHeight(this._modelUri)*this._modelScale.y:this._blockHalfExtents.y*2}get modelAnimations(){return Array.from(this._modelAnimations.values())}get modelNodeOverrides(){return Array.from(this._modelNodeOverrides.values())}get modelPreferredShape(){return this._modelPreferredShape}get modelScale(){return this._modelScale}get modelScaleInterpolationMs(){return this._modelScaleInterpolationMs}get modelTextureUri(){return this._modelTextureUri}get modelUri(){return this._modelUri}get name(){return this._name}get opacity(){return this._opacity}get outline(){return this._outline}get parent(){return this._parent}get parentNodeName(){return this._parentNodeName}get positionInterpolationMs(){return this._positionInterpolationMs}get rotationInterpolationMs(){return this._rotationInterpolationMs}get tag(){return this._tag}get tintColor(){return this._tintColor}get isBlockEntity(){return!!this._blockTextureUri}get isEnvironmental(){return this._isEnvironmental}get isModelEntity(){return!!this._modelUri}get isSpawned(){return!!this._world}get width(){return this.isModelEntity?yY.instance.getWidth(this._modelUri)*this._modelScale.x:this._blockHalfExtents.x*2}get world(){return this._world}clearModelNodeOverrides(){if(!this.isModelEntity)return;this.removeModelNodeOverrides(Array.from(this._modelNodeOverrides.keys()))}despawn(){if(!this._requireSpawned("despawn"))return;if(this._world.entityManager.getEntityChildren(this).forEach((A)=>{A.despawn()}),this._controller)this._controller.detach(this),this._controller.despawn(this);if(this.emitWithWorld(this._world,"ENTITY.DESPAWN",{entity:this}),this.isSimulated)this.removeFromSimulation();this._world.entityManager.unregisterEntity(this),this._world.audioManager.unregisterEntityAttachedAudios(this),this._world.particleEmitterManager.despawnEntityAttachedParticleEmitters(this),this._world.sceneUIManager.unloadEntityAttachedSceneUIs(this),this._id=void 0,this._world=void 0}getModelAnimation(A){if(!this.isModelEntity)return;let Q=this._modelAnimations.get(A);if(!Q)Q=new CE({name:A,entity:this}),this._modelAnimations.set(A,Q);return Q}setModelAnimationsPlaybackRate(A){if(!this.isModelEntity)return;for(let Q of this._modelAnimations.values())Q.setPlaybackRate(A)}startModelLoopedAnimations(A){if(!this.isModelEntity)return;for(let Q of A){let B=this.getModelAnimation(Q);if(!B)continue;B.setLoopMode(1),B.play()}}startModelOneshotAnimations(A){if(!this.isModelEntity)return;for(let Q of A){let B=this.getModelAnimation(Q);if(!B)continue;B.setLoopMode(0),B.play()}}setModelNodeEmissiveColor(A,Q){let B=this.getModelNodeOverride(A);if(B)B.setEmissiveColor(Q)}setModelNodeEmissiveIntensity(A,Q){let B=this.getModelNodeOverride(A);if(B)B.setEmissiveIntensity(Q)}getModelNodeOverride(A){if(!this.isModelEntity)return;A=A.toLowerCase();let Q=this._modelNodeOverrides.get(A);if(!Q)Q=new XE({nameMatch:A,entity:this}),this._modelNodeOverrides.set(A,Q);return Q}interact(A,Q){if(!this._requireSpawned("interact"))return;this.emitWithWorld(this._world,"ENTITY.INTERACT",{entity:this,player:A,raycastHit:Q})}setBlockTextureUri(A){if(this._blockTextureUri===A)return;if(this._blockTextureUri=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_BLOCK_TEXTURE_URI",{entity:this,blockTextureUri:A})}removeModelNodeOverride(A){if(!this.isModelEntity)return;A=A.toLowerCase();let Q=this._modelNodeOverrides.get(A);if(!Q)return;if(Q.markRemoved(),this._modelNodeOverrides.delete(A),this.isSpawned)this.emitWithWorld(this._world,"ENTITY.REMOVE_MODEL_NODE_OVERRIDE",{entity:this,entityModelNodeOverride:Q})}removeModelNodeOverrides(A){if(!this.isModelEntity)return;for(let Q of A)this.removeModelNodeOverride(Q)}setEmissiveColor(A){if(!A&&!this._emissiveColor||A&&this._emissiveColor&&A.r===this._emissiveColor.r&&A.g===this._emissiveColor.g&&A.b===this._emissiveColor.b)return;if(this._emissiveColor=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_EMISSIVE_COLOR",{entity:this,emissiveColor:A})}setEmissiveIntensity(A){if(this._emissiveIntensity===A)return;if(this._emissiveIntensity=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_EMISSIVE_INTENSITY",{entity:this,emissiveIntensity:A})}setModelScale(A){if(!this.isModelEntity)return;if(typeof A==="number")A={x:A,y:A,z:A};if(this._modelScale===A)return;let Q={x:A.x/this._modelScale.x,y:A.y/this._modelScale.y,z:A.z/this._modelScale.z};if(this._modelScale=A,this.colliders.forEach((B)=>B.setScale(Q)),this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_MODEL_SCALE",{entity:this,modelScale:A})}setModelScaleInterpolationMs(A){if(!this.isModelEntity)return;if(this._modelScaleInterpolationMs===A)return;if(this._modelScaleInterpolationMs=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_MODEL_SCALE_INTERPOLATION_MS",{entity:this,interpolationMs:A})}setModelTextureUri(A){if(!this.isModelEntity||this._modelTextureUri===A)return;if(this._modelTextureUri=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_MODEL_TEXTURE_URI",{entity:this,modelTextureUri:A})}setOpacity(A){if(this._opacity===A)return;if(this._opacity=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_OPACITY",{entity:this,opacity:A})}setOutline(A,Q){if(this._outline=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_OUTLINE",{entity:this,forPlayer:Q,outline:A})}setParent(A,Q,B,Y){if(A&&!A.isSpawned)return l.error("Entity.setParent(): Parent entity is not spawned, cannot set parent!");if(!this._parent&&A)this._lastParentlessType=this.type;if(this._parent=A,this._parentNodeName=Q,!this.isSpawned)return;if(this.colliders.forEach((J)=>J.setEnabled(!A)),this.setType(!A?this._lastParentlessType:"kinematic_velocity"),this.setPosition(B??{x:0,y:0,z:0}),this.setRotation(Y??{x:0,y:0,z:0,w:1}),!this.isKinematicPositionBased)this.resetAngularVelocity(),this.resetForces(),this.resetLinearVelocity(),this.resetTorques();this.emitWithWorld(this._world,"ENTITY.SET_PARENT",{entity:this,parent:A,parentNodeName:Q})}setPositionInterpolationMs(A){if(this._positionInterpolationMs===A)return;if(this._positionInterpolationMs=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_POSITION_INTERPOLATION_MS",{entity:this,interpolationMs:A})}setRotationInterpolationMs(A){if(this._rotationInterpolationMs===A)return;if(this._rotationInterpolationMs=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_ROTATION_INTERPOLATION_MS",{entity:this,interpolationMs:A})}setTintColor(A){if(!A&&!this._tintColor||A&&this._tintColor&&A.r===this._tintColor.r&&A.g===this._tintColor.g&&A.b===this._tintColor.b)return;if(this._tintColor=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_TINT_COLOR",{entity:this,tintColor:A})}spawn(A,Q,B){if(this.isSpawned)return l.error(`Entity.spawn(): Entity ${this._name} is already spawned with id ${this._id}!`);if(!this.isSimulated)this.addToSimulation(A.simulation);if(this._blockTextureUri&&this._blockHalfExtents&&this.numColliders===0)this.addChildColliderToSimulation(new h9(h9.optionsFromBlockHalfExtents(this._blockHalfExtents)));if(this._modelUri&&this.numColliders===0&&this._modelPreferredShape!=="none")this.addChildColliderToSimulation(new h9(h9.optionsFromModelUri(this._modelUri,this._modelScale,this._modelPreferredShape)));if(this.colliders.forEach((Y)=>{if(this.hasListeners("ENTITY.BLOCK_COLLISION")||this.hasListeners("ENTITY.ENTITY_COLLISION"))Y.enableCollisionEvents(!0);if(this.hasListeners("ENTITY.BLOCK_CONTACT_FORCE")||this.hasListeners("ENTITY.ENTITY_CONTACT_FORCE"))Y.enableContactForceEvents(!0);if(LC.isDefaultCollisionGroups(Y.collisionGroups)){let J=this.isEnvironmental?[8]:[Y.isSensor?4:2],C=this.isEnvironmental?[65535&~8&~1]:[65535];Y.setCollisionGroups({belongsTo:J,collidesWith:C})}}),this.setPosition(Q),B)this.setRotation(B);if(this._id=A.entityManager.registerEntity(this),this._world=A,this._controller)this._controller.spawn(this);if(this._parent)this.setParent(this._parent,this._parentNodeName,Q,B);this.colliders.forEach((Y)=>{A.simulation.colliderMap.setColliderEntity(Y,this)}),this.emitWithWorld(A,"ENTITY.SPAWN",{entity:this})}stopAllModelAnimations(A){for(let Q of this._modelAnimations.values()){if(A?.(Q))continue;Q.stop()}}stopModelAnimations(A){for(let Q of A){let B=this._modelAnimations.get(Q);if(!B)continue;B.stop()}}checkAndEmitUpdates(){if(!this._requireSpawned("checkAndEmitUpdates"))return;let A=this.position,Q=this.rotation;if(this._rotationExceedsThreshold(Q,this._lastUpdatedRotation))this._lastUpdatedRotation=Q,this.emitWithWorld(this._world,"ENTITY.UPDATE_ROTATION",{entity:this,rotation:Q});if(this._positionExceedsThreshold(A,this._lastUpdatedPosition))this._lastUpdatedPosition=A,this.emitWithWorld(this._world,"ENTITY.UPDATE_POSITION",{entity:this,position:A})}serialize(){return GQ.serializeEntity(this)}tick(A){if(this.emit("ENTITY.TICK",{entity:this,tickDeltaMs:A}),this._controller)this._controller.tick(this,A)}_positionExceedsThreshold(A,Q){let B=A.x-Q.x,Y=A.y-Q.y,J=A.z-Q.z;return B*B+Y*Y+J*J>this._positionUpdateThresholdSq}_requireSpawned(A){if(!this.isSpawned)l.error(`Entity._requireSpawned(): Entity ${this._name} is not spawned, cannot invoke ${A}()!`);return this.isSpawned}_rotationExceedsThreshold(A,Q){return Math.abs(A.x*Q.x+A.y*Q.y+A.z*Q.z+A.w*Q.w){X.ATTACH="BASE_ENTITY_CONTROLLER.ATTACH";X.DESPAWN="BASE_ENTITY_CONTROLLER.DESPAWN";X.DETACH="BASE_ENTITY_CONTROLLER.DETACH";X.SPAWN="BASE_ENTITY_CONTROLLER.SPAWN";X.TICK="BASE_ENTITY_CONTROLLER.TICK";X.TICK_WITH_PLAYER_INPUT="BASE_ENTITY_CONTROLLER.TICK_WITH_PLAYER_INPUT"})(_ZA||={});class UZ extends BQ{attach(A){this.emit("BASE_ENTITY_CONTROLLER.ATTACH",{entity:A})}despawn(A){this.emit("BASE_ENTITY_CONTROLLER.DESPAWN",{entity:A})}detach(A){this.emit("BASE_ENTITY_CONTROLLER.DETACH",{entity:A})}spawn(A){this.emit("BASE_ENTITY_CONTROLLER.SPAWN",{entity:A})}tickWithPlayerInput(A,Q,B,Y){this.emit("BASE_ENTITY_CONTROLLER.TICK_WITH_PLAYER_INPUT",{entity:A,input:Q,cameraOrientation:B,deltaTimeMs:Y})}tick(A,Q){this.emit("BASE_ENTITY_CONTROLLER.TICK",{entity:A,deltaTimeMs:Q})}}var vZA=0.099856;class EZ extends UZ{faceSpeed=0;idleLoopedAnimations=[];idleLoopedAnimationsSpeed;jumpOneshotAnimations=[];moveLoopedAnimations=[];moveLoopedAnimationsSpeed;moveSpeed=0;_faceTarget;_jumpHeight=0;_moveCompletesWhenStuck=!1;_moveIgnoreAxes={};_moveStartMoveAnimations=!1;_moveStartIdleAnimationsOnCompletion=!0;_moveStoppingDistanceSquared=vZA;_moveStuckAccumulatorMs=0;_moveStuckLastPosition;_moveTarget;_onFace;_onFaceComplete;_onMove;_onMoveComplete;_stopFaceRequested=!1;_stopMoveRequested=!1;constructor(A={}){super();this.idleLoopedAnimations=A.idleLoopedAnimations??this.idleLoopedAnimations,this.idleLoopedAnimationsSpeed=A.idleLoopedAnimationsSpeed??this.idleLoopedAnimationsSpeed,this.jumpOneshotAnimations=A.jumpOneshotAnimations??this.jumpOneshotAnimations,this.moveLoopedAnimations=A.moveLoopedAnimations??this.moveLoopedAnimations,this.moveLoopedAnimationsSpeed=A.moveLoopedAnimationsSpeed??this.moveLoopedAnimationsSpeed}spawn(A){super.spawn(A),this._startIdleAnimations(A)}face(A,Q,B){this._faceTarget=A,this.faceSpeed=Q,this._onFace=B?.faceCallback,this._onFaceComplete=B?.faceCompleteCallback}jump(A){this._jumpHeight=A}move(A,Q,B){this.moveSpeed=Q,this._moveCompletesWhenStuck=B?.moveCompletesWhenStuck??!1,this._moveIgnoreAxes=B?.moveIgnoreAxes??{},this._moveStartIdleAnimationsOnCompletion=B?.moveStartIdleAnimationsOnCompletion??!0,this._moveStartMoveAnimations=!0,this._moveStoppingDistanceSquared=B?.moveStoppingDistance?B.moveStoppingDistance**2:vZA,this._moveTarget=A,this._onMove=B?.moveCallback,this._onMoveComplete=B?.moveCompleteCallback,this._moveStuckAccumulatorMs=0,this._moveStuckLastPosition=void 0}stopFace(){this._stopFaceRequested=!0}stopMove(){this._stopMoveRequested=!0}tick(A,Q){if(super.tick(A,Q),!this._moveTarget&&!this._faceTarget&&!this._jumpHeight)return;if(this._moveStartMoveAnimations)this._startMoveAnimations(A),this._moveStartMoveAnimations=!1;let B=Q/1000,Y=A.position;if(A.isDynamic&&this._jumpHeight>0){let J=Math.abs(A.world.simulation.gravity.y),C=Math.sqrt(2*J*this._jumpHeight);A.applyImpulse({x:0,y:C*A.mass,z:0}),this._jumpHeight=0,this._startJumpAnimations(A)}if(this._moveTarget){let J={x:this._moveIgnoreAxes.x?0:this._moveTarget.x-Y.x,y:this._moveIgnoreAxes.y?0:this._moveTarget.y-Y.y,z:this._moveIgnoreAxes.z?0:this._moveTarget.z-Y.z},C=J.x*J.x+J.y*J.y+J.z*J.z,X=!1;if(this._moveCompletesWhenStuck){if(this._moveStuckAccumulatorMs+=Q,this._moveStuckAccumulatorMs>=500){if(this._moveStuckLastPosition){let G=Y.x-this._moveStuckLastPosition.x,W=Y.y-this._moveStuckLastPosition.y,F=Y.z-this._moveStuckLastPosition.z;X=Math.sqrt(G*G+W*W+F*F)this._moveStoppingDistanceSquared&&!this._stopMoveRequested&&!X){let G=Math.sqrt(C),W=this.moveSpeed*B,Z=Math.min(G,W)/G,U={x:Y.x+J.x*Z,y:Y.y+J.y*Z,z:Y.z+J.z*Z};if(A.setPosition(U),this._onMove)this._onMove(U,this._moveTarget)}else{if(this._moveStuckAccumulatorMs=0,this._moveStuckLastPosition=void 0,this._moveTarget=void 0,this._stopMoveRequested=!1,this._moveStartIdleAnimationsOnCompletion)this._startIdleAnimations(A);if(this._onMoveComplete){let G=this._onMoveComplete;this._onMove=void 0,this._onMoveComplete=void 0,G(Y)}}}if(this._faceTarget){let J={x:this._faceTarget.x-Y.x,z:this._faceTarget.z-Y.z},C=Math.atan2(-J.x,-J.z),X=A.rotation,G=Math.atan2(2*(X.w*X.y),1-2*(X.y*X.y)),W=C-G;while(W>Math.PI)W-=2*Math.PI;while(W<-Math.PI)W+=2*Math.PI;if(Math.abs(W)>0.01&&!this._stopFaceRequested){let F=this.faceSpeed*B,Z=Math.abs(W){if(this._behavior)this._behavior.tick(this,this._world,J)})}get isSpawned(){return this._spawned}get world(){return this._world}get controller(){return this.entity.controller}setBehavior(A){this._behavior=A}spawn(A){if(this._spawned)return;let Q=A??{x:0,y:10,z:0};this.entity.spawn(this._world,Q),this._spawned=!0}teleport(A){if(!this._spawned)return;this.entity.setPosition(A)}despawn(){if(!this._spawned)return;this.entity.despawn(),this._spawned=!1}}class G9{static _instance;static get instance(){if(!G9._instance)G9._instance=new G9;return G9._instance}_bots=new Map;get botCount(){return this._bots.size}spawnBot(A,Q){let B=new GD(A,Q);return B.spawn(Q?.spawnPosition),this._bots.set(B.id,B),B}spawnBots(A,Q,B){let Y=[];for(let J=0;J=this._changeIntervalMs)this._elapsed=0,this._pickNewTarget(A)}_pickNewTarget(A){let Q=Math.random()*Math.PI*2,B=Math.random()*this._moveRadius,Y=this._originX+Math.cos(Q)*B,J=this._originZ+Math.sin(Q)*B,C=A.entity.position;A.controller.move({x:Y,y:C.y,z:J},this._moveSpeed),A.controller.face({x:Y,y:C.y,z:J},5)}}class FD{name="chase";_chaseSpeed;_detectionRadius;_updateIntervalMs;_elapsed=0;constructor(A){this._chaseSpeed=A?.chaseSpeed??5,this._detectionRadius=A?.detectionRadius??50,this._updateIntervalMs=A?.updateIntervalMs??500}tick(A,Q,B){if(!A.isSpawned)return;if(this._elapsed+=B,this._elapsed=3000)this._moveElapsed=0,this._moveToRandom(A);if(this._elapsed+=B,this._elapsed{Y.post("Profiler.enable",()=>{Y.post("Profiler.start",()=>{setTimeout(()=>{Y.post("Profiler.stop",(X,{profile:G})=>{if(Y.post("Profiler.disable"),Y.disconnect(),X){C(X);return}if(Q)yZA(Q,JSON.stringify(G));J(G)})},A)})})})}static async captureHeapSnapshot(A){let Q=await gZA();if(!Q)return console.warn("CpuProfiler: node:inspector not available in this runtime"),"";let B=new Q.Session;B.connect();let Y="";return B.on("HeapProfiler.addHeapSnapshotChunk",(J)=>{let C=J.params?.chunk;if(typeof C==="string")Y+=C}),new Promise((J,C)=>{B.post("HeapProfiler.takeHeapSnapshot",void 0,(X)=>{if(B.disconnect(),X){C(X);return}if(A)yZA(A,Y);J(Y)})})}}var hZA=5,pf;((U)=>{U.PAUSE="AUDIO.PAUSE";U.PLAY="AUDIO.PLAY";U.PLAY_RESTART="AUDIO.PLAY_RESTART";U.SET_ATTACHED_TO_ENTITY="AUDIO.SET_ATTACHED_TO_ENTITY";U.SET_CUTOFF_DISTANCE="AUDIO.SET_CUTOFF_DISTANCE";U.SET_DETUNE="AUDIO.SET_DETUNE";U.SET_DISTORTION="AUDIO.SET_DISTORTION";U.SET_POSITION="AUDIO.SET_POSITION";U.SET_PLAYBACK_RATE="AUDIO.SET_PLAYBACK_RATE";U.SET_REFERENCE_DISTANCE="AUDIO.SET_REFERENCE_DISTANCE";U.SET_VOLUME="AUDIO.SET_VOLUME"})(pf||={});class $D extends BQ{_id;_attachedToEntity;_cutoffDistance;_duration;_detune;_distortion;_loop;_offset;_position;_playbackRate;_playing;_referenceDistance;_startTick;_uri;_volume;_world;constructor(A){super();this._attachedToEntity=A.attachedToEntity,this._cutoffDistance=A.cutoffDistance??(this.isPositional?(A.referenceDistance??hZA)+10:0),this._duration=A.duration,this._detune=A.detune??0,this._distortion=A.distortion??0,this._loop=A.loop??!1,this._offset=A.offset??0,this._position=A.position,this._playing=!1,this._playbackRate=A.playbackRate??1,this._referenceDistance=A.referenceDistance??(this.isPositional?hZA:0),this._uri=A.uri,this._volume=A.volume??0.5}get id(){return this._id}get attachedToEntity(){return this._attachedToEntity}get cutoffDistance(){return this._cutoffDistance}get duration(){return this._duration}get detune(){return this._detune}get distortion(){return this._distortion}get loop(){return this._loop}get offset(){return this._offset}get isLoaded(){return this._id!==void 0}get isPlaying(){return this._playing}get isPositional(){return this._attachedToEntity!==void 0||this._position!==void 0}get position(){return this._position}get playbackRate(){return this._playbackRate}get referenceDistance(){return this._referenceDistance}get startTick(){return this._startTick}get uri(){return this._uri}get volume(){return this._volume}get world(){return this._world}play(A,Q=!1){if(this.isPlaying&&!Q)return;if(this._attachedToEntity&&!this._attachedToEntity.isSpawned)return l.error(`Audio.play(): Attached entity ${this._attachedToEntity.id} is not spawned!`);let B=Q&&this._id!==void 0?"AUDIO.PLAY_RESTART":"AUDIO.PLAY";this._id??=A.audioManager.registerAudio(this),this._playing=!0,this._startTick=A.loop.currentTick,this._world=this._world??A,this.emitWithWorld(A,B,{audio:this})}pause(){if(!this.isPlaying||!this._world)return;this._playing=!1,this.emitWithWorld(this._world,"AUDIO.PAUSE",{audio:this})}setAttachedToEntity(A){if(!this._requirePositional())return;if(!A.isSpawned)return l.error(`Audio.setAttachedToEntity(): Entity ${A.id} is not spawned!`);if(this._attachedToEntity===A)return;if(this._attachedToEntity=A,this._position=void 0,this.isLoaded&&this._world)this.emitWithWorld(this._world,"AUDIO.SET_ATTACHED_TO_ENTITY",{audio:this,entity:A})}setCutoffDistance(A){if(!this._requirePositional())return;if(A<=0||A1)return l.error("Volume must be between 0 and 1");if(this._volume===A)return;if(this._volume=A,this.isLoaded&&this._world)this.emitWithWorld(this._world,"AUDIO.SET_VOLUME",{audio:this,volume:A})}serialize(){return GQ.serializeAudio(this)}_requirePositional(){if(!this.isPositional)l.error("Audio._requirePositional(): Audio is not positional. and therefor does not support the invoked method.");return this.isPositional}}class UD{_audios=new Map;_nextAudioId=1;_world;constructor(A){this._world=A}get world(){return this._world}getAllAudios(){return Array.from(this._audios.values())}getAllEntityAttachedAudios(A){return this.getAllAudios().filter((Q)=>Q.attachedToEntity===A)}getAllLoopedAudios(){return this.getAllAudios().filter((A)=>A.loop)}getAllOneshotAudios(){return this.getAllAudios().filter((A)=>!A.loop)}registerAudio(A){if(A.id!==void 0)l.fatalError(`AudioManager.registerAudio(): Provided audio instance with uri ${A.uri} is already assigned the id ${A.id}!`);let Q=this._nextAudioId;return this._audios.set(Q,A),this._nextAudioId++,Q}unregisterAudio(A){if(A.id===void 0)return l.error(`AudioManager.unregisterAudio(): Provided audio instance with uri ${A.uri} is not assigned an id!`);A.pause(),this._audios.delete(A.id)}unregisterEntityAttachedAudios(A){this.getAllEntityAttachedAudios(A).forEach((Q)=>{this.unregisterAudio(Q)})}}var w8={Y_0:{enumIndex:0,matrix:[1,0,0,0,1,0,0,0,1]},Y_90:{enumIndex:1,matrix:[0,0,-1,0,1,0,1,0,0]},Y_180:{enumIndex:2,matrix:[-1,0,0,0,1,0,0,0,-1]},Y_270:{enumIndex:3,matrix:[0,0,1,0,1,0,-1,0,0]},NY_0:{enumIndex:4,matrix:[-1,0,0,0,-1,0,0,0,1]},NY_90:{enumIndex:5,matrix:[0,0,-1,0,-1,0,-1,0,0]},NY_180:{enumIndex:6,matrix:[1,0,0,0,-1,0,0,0,-1]},NY_270:{enumIndex:7,matrix:[0,0,1,0,-1,0,1,0,0]},X_0:{enumIndex:8,matrix:[0,-1,0,1,0,0,0,0,1]},X_90:{enumIndex:9,matrix:[0,0,-1,1,0,0,0,-1,0]},X_180:{enumIndex:10,matrix:[0,1,0,1,0,0,0,0,-1]},X_270:{enumIndex:11,matrix:[0,0,1,1,0,0,0,1,0]},NX_0:{enumIndex:12,matrix:[0,1,0,-1,0,0,0,0,1]},NX_90:{enumIndex:13,matrix:[0,0,-1,-1,0,0,0,1,0]},NX_180:{enumIndex:14,matrix:[0,-1,0,-1,0,0,0,0,-1]},NX_270:{enumIndex:15,matrix:[0,0,1,-1,0,0,0,-1,0]},Z_0:{enumIndex:16,matrix:[1,0,0,0,0,1,0,-1,0]},Z_90:{enumIndex:17,matrix:[0,1,0,0,0,1,1,0,0]},Z_180:{enumIndex:18,matrix:[-1,0,0,0,0,1,0,1,0]},Z_270:{enumIndex:19,matrix:[0,-1,0,0,0,1,-1,0,0]},NZ_0:{enumIndex:20,matrix:[1,0,0,0,0,-1,0,1,0]},NZ_90:{enumIndex:21,matrix:[0,-1,0,0,0,-1,1,0,0]},NZ_180:{enumIndex:22,matrix:[-1,0,0,0,0,-1,0,-1,0]},NZ_270:{enumIndex:23,matrix:[0,1,0,0,0,-1,-1,0,0]}};class WE{globalCoordinate;blockType;constructor(A,Q){this.globalCoordinate=A,this.blockType=Q}static fromGlobalCoordinate(A,Q){return new WE(A,Q)}getNeighborGlobalCoordinateFromHitPoint(A){let Q={x:A.x-(this.globalCoordinate.x+0.5),y:A.y-(this.globalCoordinate.y+0.5),z:A.z-(this.globalCoordinate.z+0.5)},B="x",Y=Math.abs(Q.x);for(let[J,C]of Object.entries(Q))if(Math.abs(C)>Y)B=J,Y=Math.abs(C);return{x:this.globalCoordinate.x+(B==="x"?Math.sign(Q.x):0),y:this.globalCoordinate.y+(B==="y"?Math.sign(Q.y):0),z:this.globalCoordinate.z+(B==="z"?Math.sign(Q.z):0)}}}import _JB from"crypto";import g7 from"fs";import j8 from"path";var U0={ATLAS_DIR:".atlas",ATLAS_PNG_FILE:"atlas.png",ATLAS_KTX2_FILE:"atlas.ktx2",ATLAS_MANIFEST_FILE:"atlas.json",TEXTURE_SIZE:24,TEXTURE_PADDING:20,ALPHA_TEST_THRESHOLD:0.05,DATA_SCHEMA_VERSION:1,DIRECTORIES:[PY.assetsLibraryPath&&j8.join(PY.assetsLibraryPath,"blocks"),j8.resolve(process.cwd(),"assets","blocks")].filter(Boolean)};class h7{static instance=new h7;generate=process.env.NODE_ENV!=="production";_textureUriMetadata=new Map;constructor(){}hasBlockTexture(A){return this._textureUriMetadata.has(A)||["+x","-x","+y","-y","+z","-z"].every((Q)=>this._textureUriMetadata.has(`${A}/${Q}.png`))}getBlockTextureMetadata(A){let Q=this._textureUriMetadata.get(A);if(Q)return[Q];let B=["+x","-x","+y","-y","+z","-z"].map((Y)=>this._textureUriMetadata.get(`${A}/${Y}.png`)).filter(Boolean);return B.length===6?B:void 0}async preloadAtlas(){let A=await this._getAbsoluteTexturePaths(),Q=j8.resolve(process.cwd(),"assets/blocks",U0.ATLAS_DIR);if(this._loadCachedAtlasManifest(A,Q))return console.info(`BlockTextureRegistry.preloadAtlas(): Using cached atlas for ${A.length} block textures`);if(!this.generate)l.fatalError("BlockTextureRegistry.preloadAtlas(): No cached atlas found in production. Run development server to generate atlas.");console.info(`BlockTextureRegistry.preloadAtlas(): Generating atlas for ${A.length} block textures...`);let B=await Promise.all(A.map(async(U)=>{let $=await JE.read(U),E=this._absoluteTexturePathToTextureUri(U);if($.width!==U0.TEXTURE_SIZE||$.height!==U0.TEXTURE_SIZE)$.resize({w:U0.TEXTURE_SIZE,h:U0.TEXTURE_SIZE});return{textureUri:E,image:$,metadata:this._analyzeTexture($.bitmap)}})),Y=U0.TEXTURE_SIZE+U0.TEXTURE_PADDING*2,{cols:J,rows:C}=this._calculateGridLayout(B.length),X=J*Y,G=C*Y,W=new JE({width:X,height:G,color:0});for(let U=0;U{let U=(W*C+G)*4,$=(Z*C+F)*4;J[$]=J[U],J[$+1]=J[U+1],J[$+2]=J[U+2],J[$+3]=J[U+3]};for(let G=0;G=B+Q||W=B+Q){let F=Math.max(B,Math.min(B+Q-1,W)),Z=Math.max(B,Math.min(B+Q-1,G));X(F,Z,W,G)}return Y}_analyzeTexture(A){let{width:Q,height:B,data:Y}=A,J=Q*B,C=[0,0,0],X=255*U0.ALPHA_TEST_THRESHOLD,G=!1,W=!1,F=0;for(let Z=0;Z=X,W||=UZ/J/255),isTransparent:G,needsAlphaTest:W,transparencyRatio:F/J}}_calculateGridLayout(A){let Q=(C)=>2**Math.ceil(Math.log2(C)),B=Math.ceil(Math.sqrt(A)),Y=Q(B),J=Q(Math.ceil(A/Y));return{cols:Y,rows:J}}async _getAbsoluteTexturePaths(){let A=new Map;for(let B of U0.DIRECTORIES){if(!g7.existsSync(B))continue;let Y=await l4("**/*.png",{cwd:B,follow:!0});for(let J of Y){let C=j8.join(B,J),X=this._absoluteTexturePathToTextureUri(C);A.set(X,C)}}return Array.from(A.keys()).sort().map((B)=>A.get(B))}}var nf;((Y)=>{Y.ENTITY_COLLISION="BLOCK_TYPE.ENTITY_COLLISION";Y.ENTITY_CONTACT_FORCE="BLOCK_TYPE.ENTITY_CONTACT_FORCE";Y.INTERACT="BLOCK_TYPE.INTERACT"})(nf||={});class O8 extends BQ{_id;_customColliderOptions;_isLiquid;_lightLevel;_name;_textureUri;constructor(A={id:-1,textureUri:"textures/missing.png",name:"Unknown"}){if(A.id<0)l.fatalError("BlockType.constructor(): BlockType id not set.");if(!h7.instance.hasBlockTexture(A.textureUri))l.fatalError(`BlockType.constructor(): Block texture ${A.textureUri} not found. If it is a cubemap texture, make sure every face is present in the folder (+x.png, -x.png, +y.png, -y.png, +z.png, -z.png).`);super();this._id=A.id,this._customColliderOptions=A.customColliderOptions,this._isLiquid=A.isLiquid??!1,this._name=A.name,this._textureUri=A.textureUri,this._lightLevel=Math.min(A.lightLevel??0,15)}get id(){return this._id}get colliderOptions(){return this._customColliderOptions??{shape:"voxels"}}get isLiquid(){return this._isLiquid}get isMeshable(){return!this._customColliderOptions}get isTrimesh(){return this.colliderOptions.shape==="trimesh"}get isVoxel(){return this.colliderOptions.shape==="voxels"}get lightLevel(){return this._lightLevel}get name(){return this._name}get textureUri(){return this._textureUri}createCollider(A){let Q=this.colliderOptions.shape==="voxels"?new h9({...this.colliderOptions,coordinates:A.map((B)=>B.globalCoordinate),size:{x:1,y:1,z:1}}):new h9({...this.colliderOptions,...this._buildTrimeshFromBlockPlacements(A)});if(this.isLiquid)Q.setSensor(!0);if(this.hasListeners("BLOCK_TYPE.ENTITY_COLLISION")||this.isLiquid)Q.enableCollisionEvents(!0);if(this.hasListeners("BLOCK_TYPE.ENTITY_CONTACT_FORCE"))Q.enableContactForceEvents(!0);if(LC.isDefaultCollisionGroups(Q.collisionGroups))Q.setCollisionGroups({belongsTo:[1],collidesWith:[65535&~1]});return Q}interact(A,Q){if(!A.world)return;this.emitWithWorld(A.world,"BLOCK_TYPE.INTERACT",{blockType:this,player:A,raycastHit:Q})}serialize(){return GQ.serializeBlockType(this)}_buildTrimeshFromBlockPlacements(A){let Q=this.colliderOptions,B=Q.vertices,Y=Q.indices;if(!B||!Y)l.fatalError(`BlockType._buildTrimeshFromCoordinates(): Block type id ${this.id} (${this.name}) is a trimesh but is missing vertices or indices!`);if(B.length%3!==0||Y.length%3!==0)l.fatalError(`BlockType._buildTrimeshFromCoordinates(): Block type id ${this.id} (${this.name}) has an invalid number of vertices or indices! Expected a multiple of 3, got ${B.length} and ${Y.length}.`);let J=B.length/3,C=A.length,X=new Float32Array(B.length*C),G=new Uint32Array(Y.length*C);for(let W=0;WQ.REGISTER_BLOCK_TYPE="BLOCK_TYPE_REGISTRY.REGISTER_BLOCK_TYPE")(sf||={});class ED extends BQ{_blockTypes=new Map;_world;constructor(A){super();this._world=A}get world(){return this._world}getAllBlockTypes(){return Array.from(this._blockTypes.values())}getBlockType(A){let Q=this._blockTypes.get(A);if(!Q)l.fatalError(`BlockTypeRegistry.getBlockType(): BlockType with id ${A} not found.`);return Q}registerGenericBlockType(A){let B=new class extends O8{constructor(Y=A){super(Y)}};return this.registerBlockType(B),B}registerBlockType(A){this._blockTypes.set(A.id,A),this.emitWithWorld(this._world,"BLOCK_TYPE_REGISTRY.REGISTER_BLOCK_TYPE",{blockTypeRegistry:this,id:A.id,blockType:A})}serialize(){return GQ.serializeBlockTypeRegistry(this)}}var Om={};iG(Om,{worldSchema:()=>jm,worldPacketDefinition:()=>SKA,vectorSchema:()=>nQ,vectorBooleanSchema:()=>zGB,uiSchema:()=>Rm,uiPacketDefinition:()=>PKA,uiDatasSchema:()=>wm,uiDatasPacketDefinition:()=>TKA,uiDataSendPacketDefinition:()=>UKA,uiDataSchema:()=>fD,syncResponseSchema:()=>zm,syncResponsePacketDefinition:()=>OKA,syncRequestSchema:()=>rb,syncRequestPacketDefinition:()=>$KA,stateRequestSchema:()=>sb,stateRequestPacketDefinition:()=>ZKA,sceneUIsSchema:()=>Mm,sceneUIsPacketDefinition:()=>jKA,sceneUISchema:()=>qm,rgbColorSchema:()=>gY,registeredPackets:()=>xw,quaternionSchema:()=>bD,playersSchema:()=>Lm,playersPacketDefinition:()=>wKA,playerSchema:()=>Nm,physicsDebugRenderSchema:()=>Dm,physicsDebugRenderPacketDefinition:()=>zKA,physicsDebugRaycastsSchema:()=>Hm,physicsDebugRaycastsPacketDefinition:()=>RKA,physicsDebugRaycastSchema:()=>Im,particleEmittersSchema:()=>Vm,particleEmittersPacketDefinition:()=>MKA,particleEmitterSchema:()=>Km,outlineSchema:()=>Wm,outboundPackets:()=>hw,notificationPermissionRequestSchema:()=>Em,notificationPermissionRequestPacketDefinition:()=>qKA,modelNodeOverrideSchema:()=>Gm,modelAnimationSchema:()=>Xm,lightsSchema:()=>Um,lightsPacketDefinition:()=>LKA,lightSchema:()=>$m,isValidPacket:()=>wGB,inputSchema:()=>nb,inputPacketDefinition:()=>FKA,inboundPackets:()=>gw,hexColorSchema:()=>pb,heartbeatSchema:()=>lb,heartbeatPacketDefinition:()=>XKA,framePacketBuffer:()=>MGB,entitySchema:()=>Fm,entitiesSchema:()=>Zm,entitiesPacketDefinition:()=>NKA,definePacket:()=>HQ,debugConfigSchema:()=>ib,debugConfigPacketDefinition:()=>WKA,createPacketBufferUnframer:()=>qGB,createPacket:()=>LGB,connectionSchema:()=>cb,connectionPacketDefinition:()=>CKA,chunksSchema:()=>Cm,chunksPacketDefinition:()=>DKA,chunkSchema:()=>Jm,chatMessagesSchema:()=>Ym,chatMessagesPacketDefinition:()=>HKA,chatMessageSendPacketDefinition:()=>GKA,chatMessageSchema:()=>xD,cameraSchema:()=>Bm,cameraPacketDefinition:()=>IKA,blocksSchema:()=>eb,blocksPacketDefinition:()=>KKA,blockTypesSchema:()=>Qm,blockTypesPacketDefinition:()=>VKA,blockTypeSchema:()=>Am,blockSchema:()=>tb,bidirectionalPackets:()=>yw,audiosSchema:()=>ob,audiosPacketDefinition:()=>EKA,audioSchema:()=>ab,PacketId:()=>sB});var yw={};iG(yw,{heartbeatPacketDefinition:()=>XKA,connectionPacketDefinition:()=>CKA});var ub=qA(YKA(),1);class db extends ub.default{static instance=new ub.default}var hD=4,JKA=33554432,sB;((_)=>{_[_.SYNC_REQUEST=0]="SYNC_REQUEST";_[_.INPUT=1]="INPUT";_[_.STATE_REQUEST=2]="STATE_REQUEST";_[_.CHAT_MESSAGE_SEND=3]="CHAT_MESSAGE_SEND";_[_.UI_DATA_SEND=4]="UI_DATA_SEND";_[_.SYNC_RESPONSE=32]="SYNC_RESPONSE";_[_.AUDIOS=33]="AUDIOS";_[_.BLOCKS=34]="BLOCKS";_[_.BLOCK_TYPES=35]="BLOCK_TYPES";_[_.CHAT_MESSAGES=36]="CHAT_MESSAGES";_[_.CHUNKS=37]="CHUNKS";_[_.ENTITIES=38]="ENTITIES";_[_.WORLD=39]="WORLD";_[_.CAMERA=40]="CAMERA";_[_.UI=41]="UI";_[_.UI_DATAS=42]="UI_DATAS";_[_.SCENE_UIS=43]="SCENE_UIS";_[_.LIGHTS=44]="LIGHTS";_[_.PLAYERS=45]="PLAYERS";_[_.PARTICLE_EMITTERS=46]="PARTICLE_EMITTERS";_[_.NOTIFICATION_PERMISSION_REQUEST=47]="NOTIFICATION_PERMISSION_REQUEST";_[_.CONNECTION=116]="CONNECTION";_[_.HEARTBEAT=117]="HEARTBEAT";_[_.DEBUG_CONFIG=128]="DEBUG_CONFIG";_[_.PHYSICS_DEBUG_RENDER=192]="PHYSICS_DEBUG_RENDER";_[_.PHYSICS_DEBUG_RAYCASTS=193]="PHYSICS_DEBUG_RAYCASTS"})(sB||={});function LGB(A,Q,B){if(!A.validate(Q))throw Error(`Invalid payload for packet with id ${A.id}. Error: ${db.instance.errorsText(A.validate.errors)}`);let Y=[A.id,Q];if(typeof B==="number")Y.push(B);return Y}function qGB(A){let Q=new Uint8Array(524288),B=new DataView(Q.buffer,Q.byteOffset,Q.byteLength),Y=0;return(J)=>{if(Y+J.length>Q.length){let X=Math.max(Q.length*2,Y+J.length);if(X>JKA){console.error(`Unframer packet buffer exceeded maximum size of ${JKA} bytes, discarding packet...`),Y=0;return}let G=new Uint8Array(X);G.set(Q.subarray(0,Y)),Q=G,B=new DataView(Q.buffer,Q.byteOffset,Q.byteLength)}Q.set(J,Y),Y+=J.length;let C=0;while(Y-C>=hD){let X=B.getUint32(C,!1),G=hD+X;if(Y-C0){if(Y>C)Q.copyWithin(0,C,Y);Y-=C}}}function HQ(A,Q){return{id:A,schema:Q,validate:db.instance.compile(Q)}}function MGB(A){let Q=new Uint8Array(hD+A.length);return new DataView(Q.buffer).setUint32(0,A.length,!1),Q.set(A,hD),Q}var cb={type:"object",properties:{i:{type:"string",nullable:!0},k:{type:"boolean",nullable:!0}},additionalProperties:!1};var CKA=HQ(116,cb);var lb={type:"null",nullable:!0};var XKA=HQ(117,lb);var gw={};iG(gw,{uiDataSendPacketDefinition:()=>UKA,syncRequestPacketDefinition:()=>$KA,stateRequestPacketDefinition:()=>ZKA,inputPacketDefinition:()=>FKA,debugConfigPacketDefinition:()=>WKA,chatMessageSendPacketDefinition:()=>GKA});var pb={type:"string",pattern:"^[0-9A-Fa-f]{6}$"};var xD={type:"object",properties:{m:{type:"string"},c:{...pb,nullable:!0},p:{type:"string",nullable:!0}},required:["m"],additionalProperties:!1};var GKA=HQ(3,xD);var ib={type:"object",properties:{pdr:{type:"boolean",nullable:!0}},additionalProperties:!1};var WKA=HQ(128,ib);var nQ={type:"array",items:[{type:"number"},{type:"number"},{type:"number"}],minItems:3,maxItems:3};var nb={type:"object",properties:{"1":{type:"boolean",nullable:!0},"2":{type:"boolean",nullable:!0},"3":{type:"boolean",nullable:!0},"4":{type:"boolean",nullable:!0},"5":{type:"boolean",nullable:!0},"6":{type:"boolean",nullable:!0},"7":{type:"boolean",nullable:!0},"8":{type:"boolean",nullable:!0},"9":{type:"boolean",nullable:!0},"0":{type:"boolean",nullable:!0},w:{type:"boolean",nullable:!0},a:{type:"boolean",nullable:!0},s:{type:"boolean",nullable:!0},d:{type:"boolean",nullable:!0},q:{type:"boolean",nullable:!0},e:{type:"boolean",nullable:!0},r:{type:"boolean",nullable:!0},f:{type:"boolean",nullable:!0},z:{type:"boolean",nullable:!0},x:{type:"boolean",nullable:!0},c:{type:"boolean",nullable:!0},v:{type:"boolean",nullable:!0},u:{type:"boolean",nullable:!0},i:{type:"boolean",nullable:!0},o:{type:"boolean",nullable:!0},j:{type:"boolean",nullable:!0},k:{type:"boolean",nullable:!0},l:{type:"boolean",nullable:!0},n:{type:"boolean",nullable:!0},m:{type:"boolean",nullable:!0},sp:{type:"boolean",nullable:!0},sh:{type:"boolean",nullable:!0},tb:{type:"boolean",nullable:!0},ml:{type:"boolean",nullable:!0},mr:{type:"boolean",nullable:!0},cp:{type:"number",nullable:!0},cy:{type:"number",nullable:!0},ird:{...nQ,nullable:!0},iro:{...nQ,nullable:!0},jd:{type:"number",nullable:!0},sq:{type:"number",nullable:!0}},additionalProperties:!1};var FKA=HQ(1,nb);var sb={type:"object",properties:{},additionalProperties:!1};var ZKA=HQ(2,sb);var rb={type:"null",nullable:!0};var $KA=HQ(0,rb);var fD={type:"object",properties:{},additionalProperties:!0};var UKA=HQ(4,fD);var hw={};iG(hw,{worldPacketDefinition:()=>SKA,uiPacketDefinition:()=>PKA,uiDatasPacketDefinition:()=>TKA,syncResponsePacketDefinition:()=>OKA,sceneUIsPacketDefinition:()=>jKA,playersPacketDefinition:()=>wKA,physicsDebugRenderPacketDefinition:()=>zKA,physicsDebugRaycastsPacketDefinition:()=>RKA,particleEmittersPacketDefinition:()=>MKA,notificationPermissionRequestPacketDefinition:()=>qKA,lightsPacketDefinition:()=>LKA,entitiesPacketDefinition:()=>NKA,chunksPacketDefinition:()=>DKA,chatMessagesPacketDefinition:()=>HKA,cameraPacketDefinition:()=>IKA,blocksPacketDefinition:()=>KKA,blockTypesPacketDefinition:()=>VKA,audiosPacketDefinition:()=>EKA});var ab={type:"object",properties:{i:{type:"number"},a:{type:"string",nullable:!0},cd:{type:"number",nullable:!0},d:{type:"number",nullable:!0},de:{type:"number",nullable:!0},di:{type:"number",minimum:0,nullable:!0},e:{type:"number",nullable:!0},l:{type:"boolean",nullable:!0},o:{type:"number",nullable:!0},p:{...nQ,nullable:!0},pa:{type:"boolean",nullable:!0},pl:{type:"boolean",nullable:!0},pr:{type:"number",minimum:0,nullable:!0},r:{type:"boolean",nullable:!0},rd:{type:"number",nullable:!0},s:{type:"number",nullable:!0},v:{type:"number",minimum:0,maximum:1,nullable:!0}},required:["i"],additionalProperties:!1};var ob={type:"array",items:{...ab}};var EKA=HQ(33,ob);var tb={type:"object",properties:{i:{type:"number"},c:nQ,r:{type:"number",nullable:!0}},required:["i","c"],additionalProperties:!1};var eb={type:"array",items:{...tb}};var KKA=HQ(34,eb);var Am={type:"object",properties:{i:{type:"number"},l:{type:"boolean",nullable:!0},ll:{type:"number",nullable:!0},n:{type:"string",nullable:!0},t:{type:"string",nullable:!0},ti:{type:"array",items:{type:"number"},nullable:!0},tv:{type:"array",items:{type:"number"},nullable:!0}},required:["i"],additionalProperties:!1};var Qm={type:"array",items:{...Am}};var VKA=HQ(35,Qm);var Bm={type:"object",properties:{cb:{type:"boolean",nullable:!0},m:{type:"number",nullable:!0},e:{type:"number",nullable:!0},et:{type:"number",nullable:!0},fo:{type:"number",nullable:!0},ffo:{type:"number",nullable:!0},fv:{type:"number",nullable:!0},h:{type:"array",items:{type:"string"},nullable:!0},mp:{type:"boolean",nullable:!0},my:{type:"boolean",nullable:!0},o:{...nQ,nullable:!0},p:{...nQ,nullable:!0},pt:{...nQ,nullable:!0},pl:{...nQ,nullable:!0},s:{type:"array",items:{type:"string"},nullable:!0},sa:{type:"number",nullable:!0},z:{type:"number",nullable:!0}},additionalProperties:!1};var Ym={type:"array",items:{...xD}};var Jm={type:"object",properties:{c:nQ,b:{type:"array",items:{type:"number",minimum:0,maximum:255},minItems:4096,maxItems:4096,nullable:!0},r:{type:"array",items:{type:"number"},minItems:0,maxItems:8192,nullable:!0},rm:{type:"boolean",nullable:!0}},required:["c"],additionalProperties:!1};var Cm={type:"array",items:{...Jm}};var gY={type:"array",items:[{type:"number",minimum:0,maximum:255},{type:"number",minimum:0,maximum:255},{type:"number",minimum:0,maximum:255}],minItems:3,maxItems:3};var Xm={type:"object",properties:{n:{type:"string"},b:{type:"number",nullable:!0},c:{type:"boolean",nullable:!0},fi:{type:"boolean",nullable:!0},fo:{type:"boolean",nullable:!0},l:{type:"number",nullable:!0},p:{type:"boolean",nullable:!0},pa:{type:"boolean",nullable:!0},pr:{type:"number",nullable:!0},r:{type:"boolean",nullable:!0},s:{type:"boolean",nullable:!0},w:{type:"number",nullable:!0}},required:["n"],additionalProperties:!1};var bD={type:"array",items:[{type:"number"},{type:"number"},{type:"number"},{type:"number"}],minItems:4,maxItems:4};var Gm={type:"object",properties:{n:{type:"string"},ec:{...gY,nullable:!0},ei:{type:"number",nullable:!0},h:{type:"boolean",nullable:!0},p:{...nQ,nullable:!0},pi:{type:"number",nullable:!0},r:{...bD,nullable:!0},ri:{type:"number",nullable:!0},rm:{type:"boolean",nullable:!0},s:{...nQ,nullable:!0},si:{type:"number",nullable:!0}},required:["n"],additionalProperties:!1};var Wm={type:"object",properties:{c:{...gY,nullable:!0},ci:{type:"number",nullable:!0},th:{type:"number",nullable:!0},o:{type:"number",nullable:!0},oc:{type:"boolean",nullable:!0}},required:[],additionalProperties:!1};var Fm={type:"object",properties:{i:{type:"number"},bh:{...nQ,nullable:!0},bt:{type:"string",nullable:!0},e:{type:"boolean",nullable:!0},ec:{...gY,nullable:!0},ei:{type:"number",nullable:!0},m:{type:"string",nullable:!0},ma:{type:"array",items:{...Xm},nullable:!0},mo:{type:"array",items:{...Gm},nullable:!0},mt:{type:"string",nullable:!0},n:{type:"string",nullable:!0},o:{type:"number",nullable:!0},ol:{...Wm,nullable:!0},p:{...nQ,nullable:!0},pi:{type:"number",nullable:!0},pe:{type:"number",nullable:!0},pn:{type:"string",nullable:!0},r:{...bD,nullable:!0},ri:{type:"number",nullable:!0},rm:{type:"boolean",nullable:!0},si:{type:"number",nullable:!0},sv:{...nQ,nullable:!0},t:{...gY,nullable:!0}},required:["i"],additionalProperties:!1};var Zm={type:"array",items:{...Fm}};var $m={type:"object",properties:{i:{type:"number"},a:{type:"number",nullable:!0},e:{type:"number",nullable:!0},c:{...gY,nullable:!0},d:{type:"number",nullable:!0},n:{type:"number",nullable:!0},o:{...nQ,nullable:!0},p:{...nQ,nullable:!0},pe:{type:"number",minimum:0,maximum:1,nullable:!0},rm:{type:"boolean",nullable:!0},t:{type:"number",nullable:!0},te:{type:"number",nullable:!0},tp:{...nQ,nullable:!0}},required:["i"],additionalProperties:!1};var Um={type:"array",items:{...$m}};var Em={type:"null",nullable:!0};var Km={type:"object",properties:{i:{type:"number"},at:{type:"number",nullable:!0},b:{type:"number",nullable:!0},ce:{...gY,nullable:!0},cev:{...gY,nullable:!0},cs:{...gY,nullable:!0},csv:{...gY,nullable:!0},cie:{type:"number",nullable:!0},ciev:{type:"number",nullable:!0},cis:{type:"number",nullable:!0},cisv:{type:"number",nullable:!0},e:{type:"number",nullable:!0},en:{type:"string",nullable:!0},g:{...nQ,nullable:!0},l:{type:"number",nullable:!0},le:{type:"boolean",nullable:!0},lv:{type:"number",nullable:!0},mp:{type:"number",nullable:!0},o:{...nQ,nullable:!0},oe:{type:"number",nullable:!0},oev:{type:"number",nullable:!0},or:{type:"number",nullable:!0},ofr:{...nQ,nullable:!0},os:{type:"number",nullable:!0},osv:{type:"number",nullable:!0},p:{...nQ,nullable:!0},pa:{type:"boolean",nullable:!0},pv:{...nQ,nullable:!0},r:{type:"number",nullable:!0},rv:{type:"number",nullable:!0},rm:{type:"boolean",nullable:!0},se:{type:"number",nullable:!0},sev:{type:"number",nullable:!0},ss:{type:"number",nullable:!0},ssv:{type:"number",nullable:!0},t:{type:"boolean",nullable:!0},tu:{type:"string",nullable:!0},v:{...nQ,nullable:!0},vv:{...nQ,nullable:!0}},required:["i"],additionalProperties:!1};var Vm={type:"array",items:{...Km}};var Im={type:"object",properties:{o:{...nQ},d:{...nQ},l:{type:"number"},h:{type:"boolean"}},required:["o","d","l","h"],additionalProperties:!1};var Hm={type:"array",items:{...Im}};var Dm={type:"object",properties:{v:{type:"array",items:{type:"number"}},c:{type:"array",items:{type:"number"}}},required:["v","c"],additionalProperties:!1};var Nm={type:"object",properties:{i:{type:"string"},p:{type:"string",nullable:!0},rm:{type:"boolean",nullable:!0},u:{type:"string",nullable:!0}},required:["i"],additionalProperties:!1};var Lm={type:"array",items:{...Nm}};var qm={type:"object",properties:{i:{type:"number"},e:{type:"number",nullable:!0},o:{...nQ,nullable:!0},p:{...nQ,nullable:!0},rm:{type:"boolean",nullable:!0},s:{type:"object",nullable:!0},t:{type:"string",nullable:!0},v:{type:"number",nullable:!0}},required:["i"],additionalProperties:!1};var Mm={type:"array",items:{...qm}};var zm={type:"object",properties:{r:{type:"number"},s:{type:"number"},p:{type:"number"},n:{type:"number"}},required:["r","s","p","n"],additionalProperties:!1};var Rm={type:"object",properties:{p:{type:"boolean",nullable:!0},pf:{type:"boolean",nullable:!0},u:{type:"string",nullable:!0},ua:{type:"array",items:{type:"string"},nullable:!0}},additionalProperties:!1};var wm={type:"array",items:{...fD}};var zGB={type:"array",items:[{type:"boolean"},{type:"boolean"},{type:"boolean"}],minItems:3,maxItems:3};var jm={type:"object",properties:{i:{type:"number"},ac:{...gY,nullable:!0},ai:{type:"number",nullable:!0},dc:{...gY,nullable:!0},di:{type:"number",nullable:!0},dp:{...nQ,nullable:!0},fc:{...gY,nullable:!0},ff:{type:"number",nullable:!0},fn:{type:"number",nullable:!0},n:{type:"string",nullable:!0},s:{type:"string",nullable:!0},si:{type:"number",nullable:!0},t:{type:"number",nullable:!0}},required:["i"],additionalProperties:!1};var IKA=HQ(40,Bm);var HKA=HQ(36,Ym);var DKA=HQ(37,Cm);var NKA=HQ(38,Zm);var LKA=HQ(44,Um);var qKA=HQ(47,Em);var MKA=HQ(46,Vm);var zKA=HQ(192,Dm);var RKA=HQ(193,Hm);var wKA=HQ(45,Lm);var jKA=HQ(43,Mm);var OKA=HQ(32,zm);var PKA=HQ(41,Rm);var TKA=HQ(42,wm);var SKA=HQ(39,jm);var xw=new Map,RGB={...yw,...gw,...hw};for(let A of Object.values(RGB))if("id"in A&&"schema"in A){let Q=A;if(xw.has(Q.id))throw Error(`Packet with id ${Q.id} is already registered.`);xw.set(Q.id,Q)}function wGB(A){if(typeof A!=="object"||A===null||typeof A[0]!=="number"||A[0]<0||A[1]===void 0||A[2]!==void 0&&(typeof A[2]!=="number"||A[2]<0))return!1;let Q=xw.get(A[0]);return!!Q&&Q.validate(A[1])}var gQ=Om;var hIA=qA(JVA(),1);import RZ from"fs";import yIA from"path";var EWB=qA(eVA(),1),KWB=qA(fm(),1),VWB=qA(mm(),1),OE=qA(sw(),1),nm=qA(XIA(),1);var GIA=OE.default;function u9(A){if(A===null)return"null";if(Array.isArray(A))return"array";return typeof A}function n7(A){return u9(A)==="object"}function IWB(A){return Array.isArray(A)&&A.length>0&&A.every((Q)=>("message"in Q))}function sm(A,Q){return A.length<124?A:Q}var WIA="graphql-transport-ws";var T8=((A)=>{return A[A.InternalServerError=4500]="InternalServerError",A[A.InternalClientError=4005]="InternalClientError",A[A.BadRequest=4400]="BadRequest",A[A.BadResponse=4004]="BadResponse",A[A.Unauthorized=4401]="Unauthorized",A[A.Forbidden=4403]="Forbidden",A[A.SubprotocolNotAcceptable=4406]="SubprotocolNotAcceptable",A[A.ConnectionInitialisationTimeout=4408]="ConnectionInitialisationTimeout",A[A.ConnectionAcknowledgementTimeout=4504]="ConnectionAcknowledgementTimeout",A[A.SubscriberAlreadyExists=4409]="SubscriberAlreadyExists",A[A.TooManyInitialisationRequests=4429]="TooManyInitialisationRequests",A})(T8||{}),S8=((A)=>{return A.ConnectionInit="connection_init",A.ConnectionAck="connection_ack",A.Ping="ping",A.Pong="pong",A.Subscribe="subscribe",A.Next="next",A.Error="error",A.Complete="complete",A})(S8||{});function FIA(A){if(!n7(A))throw Error(`Message is expected to be an object, but got ${u9(A)}`);if(!A.type)throw Error("Message is missing the 'type' property");if(typeof A.type!=="string")throw Error(`Message is expects the 'type' property to be a string, but got ${u9(A.type)}`);switch(A.type){case"connection_init":case"connection_ack":case"ping":case"pong":{if(A.payload!=null&&!n7(A.payload))throw Error(`"${A.type}" message expects the 'payload' property to be an object or nullish or missing, but got "${A.payload}"`);break}case"subscribe":{if(typeof A.id!=="string")throw Error(`"${A.type}" message expects the 'id' property to be a string, but got ${u9(A.id)}`);if(!A.id)throw Error(`"${A.type}" message requires a non-empty 'id' property`);if(!n7(A.payload))throw Error(`"${A.type}" message expects the 'payload' property to be an object, but got ${u9(A.payload)}`);if(typeof A.payload.query!=="string")throw Error(`"${A.type}" message payload expects the 'query' property to be a string, but got ${u9(A.payload.query)}`);if(A.payload.variables!=null&&!n7(A.payload.variables))throw Error(`"${A.type}" message payload expects the 'variables' property to be a an object or nullish or missing, but got ${u9(A.payload.variables)}`);if(A.payload.operationName!=null&&u9(A.payload.operationName)!=="string")throw Error(`"${A.type}" message payload expects the 'operationName' property to be a string or nullish or missing, but got ${u9(A.payload.operationName)}`);if(A.payload.extensions!=null&&!n7(A.payload.extensions))throw Error(`"${A.type}" message payload expects the 'extensions' property to be a an object or nullish or missing, but got ${u9(A.payload.extensions)}`);break}case"next":{if(typeof A.id!=="string")throw Error(`"${A.type}" message expects the 'id' property to be a string, but got ${u9(A.id)}`);if(!A.id)throw Error(`"${A.type}" message requires a non-empty 'id' property`);if(!n7(A.payload))throw Error(`"${A.type}" message expects the 'payload' property to be an object, but got ${u9(A.payload)}`);break}case"error":{if(typeof A.id!=="string")throw Error(`"${A.type}" message expects the 'id' property to be a string, but got ${u9(A.id)}`);if(!A.id)throw Error(`"${A.type}" message requires a non-empty 'id' property`);if(!IWB(A.payload))throw Error(`"${A.type}" message expects the 'payload' property to be an array of GraphQL errors, but got ${JSON.stringify(A.payload)}`);break}case"complete":{if(typeof A.id!=="string")throw Error(`"${A.type}" message expects the 'id' property to be a string, but got ${u9(A.id)}`);if(!A.id)throw Error(`"${A.type}" message requires a non-empty 'id' property`);break}default:throw Error(`Invalid message 'type' property "${A.type}"`)}return A}function ZIA(A,Q){return FIA(typeof A==="string"?JSON.parse(A,Q):A)}function PE(A,Q){return FIA(A),JSON.stringify(A,Q)}function am(A){let{url:Q,connectionParams:B,lazy:Y=!0,onNonLazyError:J=console.error,lazyCloseTimeout:C=0,keepAlive:X=0,disablePong:G,connectionAckWaitTimeout:W=0,retryAttempts:F=5,retryWait:Z=async function(v){let y=Math.pow(2,v);await new Promise((h)=>setTimeout(h,y*1000+Math.floor(Math.random()*2700+300)))},shouldRetry:U=rm,on:$,webSocketImpl:E,generateID:K=function(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(v)=>{let y=Math.random()*16|0;return(v=="x"?y:y&3|8).toString(16)})},jsonMessageReplacer:I,jsonMessageReviver:V}=A,H;if(E){if(!DWB(E))throw Error("Invalid WebSocket implementation provided");H=E}else if(typeof WebSocket<"u")H=WebSocket;else if(typeof global<"u")H=global.WebSocket||global.MozWebSocket;else if(typeof window<"u")H=window.WebSocket||window.MozWebSocket;if(!H)throw Error("WebSocket implementation missing; on Node you can `import WebSocket from 'ws';` and pass `webSocketImpl: WebSocket` to `createClient`");let D=H,L=(()=>{let S=(()=>{let y={};return{on(h,g){return y[h]=g,()=>{delete y[h]}},emit(h){if("id"in h)y[h.id]?.(h)}}})(),v={connecting:$?.connecting?[$.connecting]:[],opened:$?.opened?[$.opened]:[],connected:$?.connected?[$.connected]:[],ping:$?.ping?[$.ping]:[],pong:$?.pong?[$.pong]:[],message:$?.message?[S.emit,$.message]:[S.emit],closed:$?.closed?[$.closed]:[],error:$?.error?[$.error]:[]};return{onMessage:S.on,on(y,h){let g=v[y];return g.push(h),()=>{g.splice(g.indexOf(h),1)}},emit(y,...h){for(let g of[...v[y]])g(...h)}}})();function z(S){let v=[L.on("error",(y)=>{v.forEach((h)=>h()),S(y)}),L.on("closed",(y)=>{v.forEach((h)=>h()),S(y)})]}let M,N=0,q,w=!1,P=0,_=!1;async function j(){clearTimeout(q);let[S,v]=await(M??(M=new Promise((g,m)=>(async()=>{if(w){if(await Z(P),!N)return M=void 0,m({code:1000,reason:"All Subscriptions Gone"});P++}L.emit("connecting",w);let n=new D(typeof Q==="function"?await Q():Q,WIA),i,p;function d(){if(isFinite(X)&&X>0)clearTimeout(p),p=setTimeout(()=>{if(n.readyState===D.OPEN)n.send(PE({type:S8.Ping})),L.emit("ping",!1,void 0)},X)}z((b)=>{if(M=void 0,clearTimeout(i),clearTimeout(p),m(b),b instanceof aw)n.close(4499,"Terminated"),n.onerror=null,n.onclose=null}),n.onerror=(b)=>L.emit("error",b),n.onclose=(b)=>L.emit("closed",b),n.onopen=async()=>{try{L.emit("opened",n);let b=typeof B==="function"?await B():B;if(n.readyState!==D.OPEN)return;if(n.send(PE(b?{type:S8.ConnectionInit,payload:b}:{type:S8.ConnectionInit},I)),isFinite(W)&&W>0)i=setTimeout(()=>{n.close(T8.ConnectionAcknowledgementTimeout,"Connection acknowledgement timeout")},W);d()}catch(b){L.emit("error",b),n.close(T8.InternalClientError,sm(b instanceof Error?b.message:String(b),"Internal client error"))}};let x=!1;n.onmessage=({data:b})=>{try{let o=ZIA(b,V);if(L.emit("message",o),o.type==="ping"||o.type==="pong"){if(L.emit(o.type,!0,o.payload),o.type==="pong")d();else if(!G)n.send(PE(o.payload?{type:S8.Pong,payload:o.payload}:{type:S8.Pong})),L.emit("pong",!1,o.payload);return}if(x)return;if(o.type!==S8.ConnectionAck)throw Error(`First message cannot be of type ${o.type}`);clearTimeout(i),x=!0,L.emit("connected",n,o.payload,w),w=!1,P=0,g([n,new Promise((GA,VA)=>z(VA))])}catch(o){n.onmessage=null,L.emit("error",o),n.close(T8.BadResponse,sm(o instanceof Error?o.message:String(o),"Bad response"))}}})())));if(S.readyState===D.CLOSING)await v;let y=()=>{},h=new Promise((g)=>y=g);return[S,y,Promise.race([h.then(()=>{if(!N){let g=()=>S.close(1000,"Normal Closure");if(isFinite(C)&&C>0)q=setTimeout(()=>{if(S.readyState===D.OPEN)g()},C);else g()}}),v])]}function k(S){if(rm(S)&&(HWB(S.code)||[T8.InternalServerError,T8.InternalClientError,T8.BadRequest,T8.BadResponse,T8.Unauthorized,T8.SubprotocolNotAcceptable,T8.SubscriberAlreadyExists,T8.TooManyInitialisationRequests].includes(S.code)))throw S;if(_)return!1;if(rm(S)&&S.code===1000)return N>0;if(!F||P>=F)throw S;if(!U(S))throw S;return w=!0}if(!Y)(async()=>{N++;for(;;)try{let[,,S]=await j();await S}catch(S){try{if(!k(S))return}catch(v){return J?.(v)}}})();function T(S,v){let y=K(S),h=!1,g=!1,m=()=>{N--,h=!0};return(async()=>{N++;for(;;)try{let[n,i,p]=await j();if(h)return i();let d=L.onMessage(y,(x)=>{switch(x.type){case S8.Next:{v.next(x.payload);return}case S8.Error:{g=!0,h=!0,v.error(x.payload),m();return}case S8.Complete:{h=!0,m();return}}});n.send(PE({id:y,type:S8.Subscribe,payload:S},I)),m=()=>{if(!h&&n.readyState===D.OPEN)n.send(PE({id:y,type:S8.Complete},I));N--,h=!0,i()},await p.finally(d);return}catch(n){if(!k(n))return}})().then(()=>{if(!g)v.complete()}).catch((n)=>{v.error(n)}),()=>{if(!h)m()}}return{on:L.on,subscribe:T,iterate(S){let v=[],y={done:!1,error:null,resolve:()=>{}},h=T(S,{next(m){v.push(m),y.resolve()},error(m){y.done=!0,y.error=m,y.resolve()},complete(){y.done=!0,y.resolve()}}),g=async function*(){for(;;){if(!v.length)await new Promise((n)=>y.resolve=n);while(v.length)yield v.shift();if(y.error)throw y.error;if(y.done)return}}();return g.throw=async(m)=>{if(!y.done)y.done=!0,y.error=m,y.resolve();return{done:!0,value:void 0}},g.return=async()=>{return h(),{done:!0,value:void 0}},g},async dispose(){if(_=!0,M){let[S]=await M;S.close(1000,"Normal Closure")}},terminate(){if(M)L.emit("closed",new aw)}}}class aw extends Error{name="TerminatedCloseEvent";message="4499: Terminated";code=4499;reason="Terminated";wasClean=!1}function rm(A){return n7(A)&&"code"in A&&"reason"in A}function HWB(A){if([1000,1001,1006,1005,1012,1013,1014].includes(A))return!1;return A>=1000&&A<=1999}function DWB(A){return typeof A==="function"&&"constructor"in A&&"CLOSED"in A&&"CLOSING"in A&&"CONNECTING"in A&&"OPEN"in A}var gIA=qA(vIA(),1);var rD="./dev/persistence",tw=process.env.HYTOPIA_NOTIFICATION_SERVICE_URL||"https://prod.notifications.hytopia.com";class P5{static instance=new P5;creatorApiKey=process.env.HYTOPIA_API_KEY;gameId=process.env.HYTOPIA_GAME_ID;lobbyId=process.env.HYTOPIA_LOBBY_ID;_creativeGateway;_gqlWs;constructor(){this._gqlWs=am({url:"wss://prod.gql.hytopia.com/graphql",webSocketImpl:GIA});try{this._creativeGateway=new gIA.CreativeGateway}catch{console.warn(["━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━","\uD83D\uDEA8 HYTOPIA PLATFORM GATEWAY IS NOT INITIALIZED \uD83D\uDEA8","","\uD83D\uDD27 Local development is still possible, but these features will be disabled:"," • \uD83D\uDC64 Live Player Accounts"," • \uD83C\uDFAD Live Player Cosmetics"," • \uD83D\uDD14 Scheduled Notifications"," • \uD83D\uDC1B Crash Analytics & Debug Logs","","\uD83D\uDCA1 These features will be enabled but modified:"," • \uD83D\uDCBE Player & Global Persisted Data - Data will be persisted"," locally in the ./dev/persistence directory of your project."," Player ids for data persistence will begin at 1 for the first "," player to join your local server, and increments for each"," additional player. This means that if you restart your"," server, the first player id will be 1 again. This is to ensure"," that data persistence across server restarts can be easily"," tested and debugged in local development.","","To enable the HYTOPIA Platform Gateway locally:"," 1. Set these environment variables:"," HYTOPIA_API_KEY, HYTOPIA_GAME_ID, HYTOPIA_LOBBY_ID"," 2. You can find these values at: https://create.hytopia.com","","Note: In production, these environment variables will be auto-populated ","& the HYTOPIA Platform Gateway will automatically be initialized \uD83D\uDE80","━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━",""].join(` -`))}}get isGatewayAvailable(){return!!this._creativeGateway}async getGlobalData(A){if(!this._creativeGateway&&process.env.NODE_ENV==="production")return l.warning("PlatformGateway.getGlobalData(): You are running in production mode, but the Platform Gateway is not initialized! No data will be returned."),{error:{code:"gatewayError",message:"Platform Gateway is not initialized."}};return this._creativeGateway?await this._creativeGateway.kv.get(A):this._readDevGlobalDataLocally(A)}async getPlayerCosmetics(A){let Q=this._gqlWs.iterate({query:`{ +`,"")]}),J.push(C),{lines:J,longestLine:X}}function Sf(A,Q,B){let{lines:Y}=Tf(A,Q,B);return Y.length*A.common.lineHeight}var dYB=s.object({x:s.number(),y:s.number(),text:s.union([s.union([s.string(),s.number()]),s.object({text:s.union([s.string(),s.number()]),alignmentX:s.nativeEnum(M5).optional(),alignmentY:s.nativeEnum(z5).optional()})]),maxWidth:s.number().optional(),maxHeight:s.number().optional(),cb:s.function(s.tuple([s.object({x:s.number(),y:s.number()})])).optional()});function cYB(A,Q,B,Y){if(Y===M5.LEFT)return 0;if(Y===M5.CENTER)return(B-oU(A,Q))/2;return B-oU(A,Q)}function lYB(A,Q,B,Y,J){if(J.width>0&&J.height>0){let C=Q.pages[J.page];if(C)A=pU.blit(A,{src:C,x:B+J.xoffset,y:Y+J.yoffset,srcX:J.x,srcY:J.y,srcW:J.width,srcH:J.height})}return A}function pYB(A,Q,B,Y,J,C){for(let X=0;X{}}=dYB.parse(B),F,Z;if(typeof C==="object"&&C.text!==null&&C.text!==void 0)F=C.alignmentX||M5.LEFT,Z=C.alignmentY||z5.TOP,{text:C}=C;else F=M5.LEFT,Z=z5.TOP,C=C.toString();if(typeof C==="number")C=C.toString();if(G!==1/0&&Z===z5.BOTTOM)J+=G-Sf(Q,C,X);else if(G!==1/0&&Z===z5.MIDDLE)J+=G/2-Sf(Q,C,X)/2;let U=Object.entries(Q.chars).find((K)=>K[1].xadvance)?.[1].xadvance;if(typeof U!=="number")throw Error("Could not find default character width");let{lines:$,longestLine:E}=Tf(Q,C,X);return $.forEach((K)=>{let I=K.join(" "),V=cYB(Q,I,X,F);pYB(A,Q,Y+V,J,I,U),J+=Q.common.lineHeight}),W.bind(A)({x:Y+E,y:J}),A}};var nYB=s.union([s.number(),s.object({deg:s.number(),mode:s.union([s.boolean(),s.nativeEnum(N8)]).optional()})]);function mFA(A){return function(Q,B){return B*A+Q<<2}}function sYB(A,Q){if(Math.abs(Q)%90!==0)throw Error("Unsupported matrix rotation degree");let B=A.bitmap.width,Y=A.bitmap.height,J;switch(Q){case 90:case-270:J=90;break;case 180:case-180:J=180;break;case 270:case-90:J=-90;break;default:throw Error("Unsupported matrix rotation degree")}let C=J===180?B:Y,X=J===180?Y:B,G=Buffer.alloc(A.bitmap.data.length),W=mFA(B),F=mFA(C);for(let Z=0;Z{A.bitmap.data.writeUInt32BE(A.background,H)});let K=Math.max(X,G,A.bitmap.width,A.bitmap.height);A=mC.resize(A,{h:K,w:K,mode:B===!0?void 0:B}),A=nU(A,E,A.bitmap.width/2-E.bitmap.width/2,A.bitmap.height/2-E.bitmap.height/2)}let W=A.bitmap.width,F=A.bitmap.height,Z=Buffer.alloc(A.bitmap.data.length),U=uFA(-(W/2),-(F/2)),$=uFA(W/2+0.5,F/2+0.5);for(let E=1;E<=F;E++)for(let K=1;K<=W;K++){let I=U(K,E),V=$(J*I.x-C*I.y,J*I.y+C*I.x),H=W*(E-1)+K-1<<2;if(V.x>=0&&V.x=0&&V.y{let W=A.bitmap.data[G](Q in A)?nFA(A,Q,{enumerable:!0,configurable:!0,writable:!0,value:B}):A[Q]=B,f6=(A,Q)=>{for(var B in Q)nFA(A,B,{get:Q[B],enumerable:!0})},ZA=(A,Q,B)=>{return eYB(A,typeof Q!=="symbol"?Q+"":Q,B),B},AJB={};f6(AJB,{bt709:()=>sFA});var sFA={};f6(sFA,{Y:()=>rFA,x:()=>aFA,y:()=>oFA});var rFA=((A)=>{return A[A.RED=0.2126]="RED",A[A.GREEN=0.7152]="GREEN",A[A.BLUE=0.0722]="BLUE",A[A.WHITE=1]="WHITE",A})(rFA||{}),aFA=((A)=>{return A[A.RED=0.64]="RED",A[A.GREEN=0.3]="GREEN",A[A.BLUE=0.15]="BLUE",A[A.WHITE=0.3127]="WHITE",A})(aFA||{}),oFA=((A)=>{return A[A.RED=0.33]="RED",A[A.GREEN=0.6]="GREEN",A[A.BLUE=0.06]="BLUE",A[A.WHITE=0.329]="WHITE",A})(oFA||{}),QJB={};f6(QJB,{lab2rgb:()=>FJB,lab2xyz:()=>YZA,rgb2hsl:()=>iR,rgb2lab:()=>BD,rgb2xyz:()=>tFA,xyz2lab:()=>BZA,xyz2rgb:()=>JZA});function kf(A){return A>0.04045?((A+0.055)/1.055)**2.4:A/12.92}function tFA(A,Q,B){return A=kf(A/255),Q=kf(Q/255),B=kf(B/255),{x:A*0.4124+Q*0.3576+B*0.1805,y:A*0.2126+Q*0.7152+B*0.0722,z:A*0.0193+Q*0.1192+B*0.9505}}var eFA={};f6(eFA,{degrees2radians:()=>v7,inRange0to255:()=>q8,inRange0to255Rounded:()=>R5,intInRange:()=>BJB,max3:()=>AZA,min3:()=>QZA,stableSort:()=>hf});function v7(A){return A*(Math.PI/180)}function AZA(A,Q,B){let Y=A;if(YQ)Y=Q;if(Y>B)Y=B;return Y}function BJB(A,Q,B){if(A>B)A=B;if(A255)A=255;else if(A<0)A=0;return A}function q8(A){if(A>255)A=255;else if(A<0)A=0;return A}function hf(A,Q){let B=typeof A[0],Y;if(B==="number"||B==="string"){let J=Object.create(null);for(let C=0,X=A.length;CQ(C,X)||J[C]-J[X])}else{let J=A.slice(0);Y=A.sort((C,X)=>Q(C,X)||J.indexOf(C)-J.indexOf(X))}return Y}function iR(A,Q,B){let Y=QZA(A,Q,B),J=AZA(A,Q,B),C=J-Y,X=(Y+J)/510,G=0;if(X>0&&X<1)G=C/(X<0.5?J+Y:510-J-Y);let W=0;if(C>0){if(J===A)W=(Q-B)/C;else if(J===Q)W=2+(B-A)/C;else W=4+(A-Q)/C;if(W*=60,W<0)W+=360}return{h:W,s:G,l:X}}var YJB=0.95047,JJB=1,CJB=1.08883;function _f(A){return A>0.008856?A**0.3333333333333333:7.787*A+0.13793103448275862}function BZA(A,Q,B){if(A=_f(A/YJB),Q=_f(Q/JJB),B=_f(B/CJB),116*Q-16<0)throw Error("xxx");return{L:Math.max(0,116*Q-16),a:500*(A-Q),b:200*(Q-B)}}function BD(A,Q,B){let Y=tFA(A,Q,B);return BZA(Y.x,Y.y,Y.z)}var XJB=0.95047,GJB=1,WJB=1.08883;function vf(A){return A>0.206893034?A**3:(A-0.13793103448275862)/7.787}function YZA(A,Q,B){let Y=(A+16)/116,J=Q/500+Y,C=Y-B/200;return{x:XJB*vf(J),y:GJB*vf(Y),z:WJB*vf(C)}}function yf(A){return A>0.0031308?1.055*A**0.4166666666666667-0.055:12.92*A}function JZA(A,Q,B){let Y=yf(A*3.2406+Q*-1.5372+B*-0.4986),J=yf(A*-0.9689+Q*1.8758+B*0.0415),C=yf(A*0.0557+Q*-0.204+B*1.057);return{r:R5(Y*255),g:R5(J*255),b:R5(C*255)}}function FJB(A,Q,B){let Y=YZA(A,Q,B);return JZA(Y.x,Y.y,Y.z)}var ZJB={};f6(ZJB,{AbstractDistanceCalculator:()=>WZ,AbstractEuclidean:()=>nR,AbstractManhattan:()=>sR,CIE94GraphicArts:()=>GZA,CIE94Textiles:()=>XZA,CIEDE2000:()=>uC,CMetric:()=>WZA,Euclidean:()=>FZA,EuclideanBT709:()=>ZZA,EuclideanBT709NoAlpha:()=>$ZA,Manhattan:()=>UZA,ManhattanBT709:()=>KZA,ManhattanNommyde:()=>EZA,PNGQuant:()=>VZA});var WZ=class{constructor(){ZA(this,"_maxDistance"),ZA(this,"_whitePoint"),this._setDefaults(),this.setWhitePoint(255,255,255,255)}setWhitePoint(A,Q,B,Y){this._whitePoint={r:A>0?255/A:0,g:Q>0?255/Q:0,b:B>0?255/B:0,a:Y>0?255/Y:0},this._maxDistance=this.calculateRaw(A,Q,B,Y,0,0,0,0)}calculateNormalized(A,Q){return this.calculateRaw(A.r,A.g,A.b,A.a,Q.r,Q.g,Q.b,Q.a)/this._maxDistance}},CZA=class extends WZ{calculateRaw(A,Q,B,Y,J,C,X,G){let W=BD(q8(A*this._whitePoint.r),q8(Q*this._whitePoint.g),q8(B*this._whitePoint.b)),F=BD(q8(J*this._whitePoint.r),q8(C*this._whitePoint.g),q8(X*this._whitePoint.b)),Z=W.L-F.L,U=W.a-F.a,$=W.b-F.b,E=Math.sqrt(W.a*W.a+W.b*W.b),K=Math.sqrt(F.a*F.a+F.b*F.b),I=E-K,V=U*U+$*$-I*I;V=V<0?0:Math.sqrt(V);let H=(G-Y)*this._whitePoint.a*this._kA;return Math.sqrt((Z/this._Kl)**2+(I/(1+this._K1*E))**2+(V/(1+this._K2*E))**2+H**2)}},XZA=class extends CZA{_setDefaults(){this._Kl=2,this._K1=0.048,this._K2=0.014,this._kA=0.049019607843137254}},GZA=class extends CZA{_setDefaults(){this._Kl=1,this._K1=0.045,this._K2=0.015,this._kA=0.09803921568627451}},j0=class extends WZ{_setDefaults(){}static _calculatehp(A,Q){let B=Math.atan2(A,Q);if(B>=0)return B;return B+j0._deg360InRad}static _calculateRT(A,Q){let B=Q**7,Y=2*Math.sqrt(B/(B+j0._pow25to7)),J=j0._deg30InRad*Math.exp(-(((A-j0._deg275InRad)/j0._deg25InRad)**2));return-Math.sin(2*J)*Y}static _calculateT(A){return 1-0.17*Math.cos(A-j0._deg30InRad)+0.24*Math.cos(A*2)+0.32*Math.cos(A*3+j0._deg6InRad)-0.2*Math.cos(A*4-j0._deg63InRad)}static _calculate_ahp(A,Q,B,Y){let J=B+Y;if(A===0)return J;if(Q<=j0._deg180InRad)return J/2;if(J>8)+4*Z*Z+((767-W)*U*U>>8),E=(G-Y)*this._whitePoint.a;return Math.sqrt($+E*E)}_setDefaults(){}},nR=class extends WZ{calculateRaw(A,Q,B,Y,J,C,X,G){let W=J-A,F=C-Q,Z=X-B,U=G-Y;return Math.sqrt(this._kR*W*W+this._kG*F*F+this._kB*Z*Z+this._kA*U*U)}},FZA=class extends nR{_setDefaults(){this._kR=1,this._kG=1,this._kB=1,this._kA=1}},ZZA=class extends nR{_setDefaults(){this._kR=0.2126,this._kG=0.7152,this._kB=0.0722,this._kA=1}},$ZA=class extends nR{_setDefaults(){this._kR=0.2126,this._kG=0.7152,this._kB=0.0722,this._kA=0}},sR=class extends WZ{calculateRaw(A,Q,B,Y,J,C,X,G){let W=J-A,F=C-Q,Z=X-B,U=G-Y;if(W<0)W=0-W;if(F<0)F=0-F;if(Z<0)Z=0-Z;if(U<0)U=0-U;return this._kR*W+this._kG*F+this._kB*Z+this._kA*U}},UZA=class extends sR{_setDefaults(){this._kR=1,this._kG=1,this._kB=1,this._kA=1}},EZA=class extends sR{_setDefaults(){this._kR=0.4984,this._kG=0.8625,this._kB=0.2979,this._kA=1}},KZA=class extends sR{_setDefaults(){this._kR=0.2126,this._kG=0.7152,this._kB=0.0722,this._kA=1}},VZA=class extends WZ{calculateRaw(A,Q,B,Y,J,C,X,G){let W=(G-Y)*this._whitePoint.a;return this._colordifferenceCh(A*this._whitePoint.r,J*this._whitePoint.r,W)+this._colordifferenceCh(Q*this._whitePoint.g,C*this._whitePoint.g,W)+this._colordifferenceCh(B*this._whitePoint.b,X*this._whitePoint.b,W)}_colordifferenceCh(A,Q,B){let Y=A-Q,J=Y+B;return Y*Y+J*J}_setDefaults(){}},$JB={};f6($JB,{AbstractPaletteQuantizer:()=>YD,ColorHistogram:()=>CD,NeuQuant:()=>g0,NeuQuantFloat:()=>h0,RGBQuant:()=>DZA,WuColorCube:()=>NZA,WuQuant:()=>YE});var YD=class{quantizeSync(){for(let A of this.quantize())if(A.palette)return A.palette;throw Error("unreachable")}},M8=class{constructor(){ZA(this,"r"),ZA(this,"g"),ZA(this,"b"),ZA(this,"a"),ZA(this,"uint32"),ZA(this,"rgba"),this.uint32=4294967295,this.r=this.g=this.b=this.a=0,this.rgba=[,,,,],this.rgba[0]=0,this.rgba[1]=0,this.rgba[2]=0,this.rgba[3]=0}static createByQuadruplet(A){let Q=new M8;return Q.r=A[0]|0,Q.g=A[1]|0,Q.b=A[2]|0,Q.a=A[3]|0,Q._loadUINT32(),Q._loadQuadruplet(),Q}static createByRGBA(A,Q,B,Y){let J=new M8;return J.r=A|0,J.g=Q|0,J.b=B|0,J.a=Y|0,J._loadUINT32(),J._loadQuadruplet(),J}static createByUint32(A){let Q=new M8;return Q.uint32=A>>>0,Q._loadRGBA(),Q._loadQuadruplet(),Q}from(A){this.r=A.r,this.g=A.g,this.b=A.b,this.a=A.a,this.uint32=A.uint32,this.rgba[0]=A.r,this.rgba[1]=A.g,this.rgba[2]=A.b,this.rgba[3]=A.a}getLuminosity(A){let Q=this.r,B=this.g,Y=this.b;if(A)Q=Math.min(255,255-this.a+this.a*Q/255),B=Math.min(255,255-this.a+this.a*B/255),Y=Math.min(255,255-this.a+this.a*Y/255);return Q*0.2126+B*0.7152+Y*0.0722}_loadUINT32(){this.uint32=(this.a<<24|this.b<<16|this.g<<8|this.r)>>>0}_loadRGBA(){this.r=this.uint32&255,this.g=this.uint32>>>8&255,this.b=this.uint32>>>16&255,this.a=this.uint32>>>24&255}_loadQuadruplet(){this.rgba[0]=this.r,this.rgba[1]=this.g,this.rgba[2]=this.b,this.rgba[3]=this.a}},x6=class{constructor(){ZA(this,"_pointArray"),ZA(this,"_width"),ZA(this,"_height"),this._width=0,this._height=0,this._pointArray=[]}getWidth(){return this._width}getHeight(){return this._height}setWidth(A){this._width=A}setHeight(A){this._height=A}getPointArray(){return this._pointArray}clone(){let A=new x6;A._width=this._width,A._height=this._height;for(let Q=0,B=this._pointArray.length;Q=X&&A=0;Q--)if(A.uint32===this._pointArray[Q].uint32)return!0;return!1}getNearestColor(A,Q){return this._pointArray[this._getNearestIndex(A,Q)|0]}getPointContainer(){return this._pointContainer}_nearestPointFromCache(A){return typeof this._i32idx[A]==="number"?this._i32idx[A]:-1}_getNearestIndex(A,Q){let B=this._nearestPointFromCache(""+Q.uint32);if(B>=0)return B;let Y=Number.MAX_VALUE;B=0;for(let J=0,C=this._pointArray.length;J{let B=iR(A.r,A.g,A.b),Y=iR(Q.r,Q.g,Q.b),J=A.r===A.g&&A.g===A.b?0:1+gf(B.h,lFA),X=(Q.r===Q.g&&Q.g===Q.b?0:1+gf(Y.h,lFA))-J;if(X)return-X;let G=A.getLuminosity(!0),W=Q.getLuminosity(!0);if(W-G!==0)return W-G;let F=(Y.s*100|0)-(B.s*100|0);if(F)return-F;return 0})}},xf={};f6(xf,{HueStatistics:()=>IZA,Palette:()=>JD,Point:()=>M8,PointContainer:()=>x6,ProgressTracker:()=>b6,arithmetic:()=>eFA});var UJB=class{constructor(){ZA(this,"num",0),ZA(this,"cols",[])}},IZA=class{constructor(A,Q){ZA(this,"_numGroups"),ZA(this,"_minCols"),ZA(this,"_stats"),ZA(this,"_groupsFull"),this._numGroups=A,this._minCols=Q,this._stats=[];for(let B=0;B<=A;B++)this._stats[B]=new UJB;this._groupsFull=0}check(A){if(this._groupsFull===this._numGroups+1)this.check=()=>{};let Q=A&255,B=A>>>8&255,Y=A>>>16&255,J=Q===B&&B===Y?0:1+gf(iR(Q,B,Y).h,this._numGroups),C=this._stats[J],X=this._minCols;if(C.num++,C.num>X)return;if(C.num===X)this._groupsFull++;if(C.num<=X)this._stats[J].cols.push(A)}injectIntoDictionary(A){for(let Q=0;Q<=this._numGroups;Q++)if(this._stats[Q].num<=this._minCols)this._stats[Q].cols.forEach((B)=>{if(!A[B])A[B]=1;else A[B]++})}injectIntoArray(A){for(let Q=0;Q<=this._numGroups;Q++)if(this._stats[Q].num<=this._minCols)this._stats[Q].cols.forEach((B)=>{if(A.indexOf(B)===-1)A.push(B)})}},HZA=class{constructor(A,Q){ZA(this,"progress"),ZA(this,"_step"),ZA(this,"_range"),ZA(this,"_last"),ZA(this,"_progressRange"),this._range=A,this._progressRange=Q,this._step=Math.max(1,this._range/(HZA.steps+1)|0),this._last=-this._step,this.progress=0}shouldNotify(A){if(A-this._last>=this._step)return this._last=A,this.progress=Math.min(this._progressRange*this._last/this._range,this._progressRange),!0;return!1}},b6=HZA;ZA(b6,"steps",100);var C9=3,EJB=class{constructor(A){ZA(this,"r"),ZA(this,"g"),ZA(this,"b"),ZA(this,"a"),this.r=this.g=this.b=this.a=A}toPoint(){return M8.createByRGBA(this.r>>C9,this.g>>C9,this.b>>C9,this.a>>C9)}subtract(A,Q,B,Y){this.r-=A|0,this.g-=Q|0,this.b-=B|0,this.a-=Y|0}},CB=class extends YD{constructor(A,Q=256){super();ZA(this,"_pointArray"),ZA(this,"_networkSize"),ZA(this,"_network"),ZA(this,"_sampleFactor"),ZA(this,"_radPower"),ZA(this,"_freq"),ZA(this,"_bias"),ZA(this,"_distance"),this._distance=A,this._pointArray=[],this._sampleFactor=1,this._networkSize=Q,this._distance.setWhitePoint(255<>3)*CB._radiusBias,G=X>>CB._radiusBiasShift;if(G<=1)G=0;for(let Z=0;Z>>0;let W;if(Q=Q)U-=Q;if(Z++,J===0)J=1;if(Z%J===0){if(C-=C/B|0,X-=X/CB._radiusDecrease|0,G=X>>CB._radiusBiasShift,G<=1)G=0;for(let D=0;D>>0}}}_buildPalette(){let A=new JD;return this._network.forEach((Q)=>{A.add(Q.toPoint())}),A.sort(),A}_alterNeighbour(A,Q,B,Y,J,C){let X=Q-A;if(X<-1)X=-1;let G=Q+A;if(G>this._networkSize)G=this._networkSize;let W=Q+1,F=Q-1,Z=1;while(WX){let U=this._radPower[Z++]/CB._alphaRadBias;if(WX){let $=this._network[F--];$.subtract(U*($.r-J),U*($.g-Y),U*($.b-B),U*($.a-C))}}}_alterSingle(A,Q,B,Y,J,C){A/=CB._initAlpha;let X=this._network[Q];X.subtract(A*(X.r-J),A*(X.g-Y),A*(X.b-B),A*(X.a-C))}_contest(A,Q,B,Y){let J=1020<>CB._initialBiasShift-C9);if($>CB._betaShift;this._freq[F]-=E,this._bias[F]+=E<>CB._betaShift);ZA(g0,"_betaGamma",CB._initialBias<>X9,this.g>>X9,this.b>>X9,this.a>>X9)}subtract(A,Q,B,Y){this.r-=A,this.g-=Q,this.b-=B,this.a-=Y}},XB=class extends YD{constructor(A,Q=256){super();ZA(this,"_pointArray"),ZA(this,"_networkSize"),ZA(this,"_network"),ZA(this,"_sampleFactor"),ZA(this,"_radPower"),ZA(this,"_freq"),ZA(this,"_bias"),ZA(this,"_distance"),this._distance=A,this._pointArray=[],this._sampleFactor=1,this._networkSize=Q,this._distance.setWhitePoint(255<>3)*XB._radiusBias,G=X>>XB._radiusBiasShift;if(G<=1)G=0;for(let Z=0;Z=Q)U-=Q;if(Z++,J===0)J=1;if(Z%J===0){if(C-=C/B,X-=X/XB._radiusDecrease,G=X>>XB._radiusBiasShift,G<=1)G=0;for(let D=0;D{A.add(Q.toPoint())}),A.sort(),A}_alterNeighbour(A,Q,B,Y,J,C){let X=Q-A;if(X<-1)X=-1;let G=Q+A;if(G>this._networkSize)G=this._networkSize;let W=Q+1,F=Q-1,Z=1;while(WX){let U=this._radPower[Z++]/XB._alphaRadBias;if(WX){let $=this._network[F--];$.subtract(U*($.r-J),U*($.g-Y),U*($.b-B),U*($.a-C))}}}_alterSingle(A,Q,B,Y,J,C){A/=XB._initAlpha;let X=this._network[Q];X.subtract(A*(X.r-J),A*(X.g-Y),A*(X.b-B),A*(X.a-C))}_contest(A,Q,B,Y){let J=1020<>XB._initialBiasShift-X9);if($>XB._betaShift;this._freq[F]-=E,this._bias[F]+=E<>XB._betaShift);ZA(h0,"_betaGamma",XB._initialBias<this._histogram[Y]-this._histogram[B]);if(A.length===0)return[];let Q;switch(this._method){case 1:let B=Math.min(A.length,this._initColors),Y=A[B-1],J=this._histogram[Y];Q=A.slice(0,B);let C=B,X=A.length;while(C+B)}_colorStats1D(A){let Q=this._histogram,B=A.getPointArray(),Y=B.length;for(let J=0;J{let Z=Math.round(F.w*F.h/X)*QD._boxPixels;if(Z<2)Z=2;let U={};this._iterateBox(F,Q,($)=>{let E=Y[$].uint32;if(this._hueStats.check(E),E in W)W[E]++;else if(E in U){if(++U[E]>=Z)W[E]=U[E]}else U[E]=1})}),this._hueStats.injectIntoDictionary(W)}_iterateBox(A,Q,B){let Y=A,J=Y.y*Q+Y.x,C=(Y.y+Y.h-1)*Q+(Y.x+Y.w-1),X=Q-Y.w+1,G=0,W=J;do B.call(this,W),W+=++G%Y.w===0?X:1;while(W<=C)}_makeBoxes(A,Q,B,Y){let J=A%B,C=Q%Y,X=A-J,G=Q-C,W=[];for(let F=0;Fthis._colors){C.length=0;for(let Z=0;Zthis._colors*3?this._initialDistance:this._distanceIncrement}if(X$.distance-U.distance);let Z=0;while(X=0;Z--)if(Y[Z]===0){if(Z!==F-1)B[Z]=B[F-1];--F}B.length=F,Q.sort(),yield{palette:Q,progress:100}}};function tU(A){let Q=[];for(let B=0;B0){let B=this._sums[Q],Y=this._reds[Q]/B,J=this._greens[Q]/B,C=this._blues[Q]/B,X=this._alphas[Q]/B,G=M8.createByRGBA(Y|0,J|0,C|0,X|0);A.add(G)}A.sort(),yield{palette:A,progress:100}}*_preparePalette(){yield*this._calculateMoments();let A=0,Q=tU(this._colors);for(let X=1;X1?this._calculateVariance(this._cubes[A]):0,Q[X]=this._cubes[X].volume>1?this._calculateVariance(this._cubes[X]):0;else Q[A]=0,X--;A=0;let G=Q[0];for(let W=1;W<=X;++W)if(Q[W]>G)G=Q[W],A=W;if(G<=0){this._colors=X+1;break}}let B=[],Y=[],J=[],C=[];for(let X=0;X0)B[X]=PQ._volume(this._cubes[X],this._momentsRed)/G|0,Y[X]=PQ._volume(this._cubes[X],this._momentsGreen)/G|0,J[X]=PQ._volume(this._cubes[X],this._momentsBlue)/G|0,C[X]=PQ._volume(this._cubes[X],this._momentsAlpha)/G|0;else B[X]=0,Y[X]=0,J[X]=0,C[X]=0}this._reds=tU(this._colors+1),this._greens=tU(this._colors+1),this._blues=tU(this._colors+1),this._alphas=tU(this._colors+1),this._sums=tU(this._colors+1);for(let X=0,G=this._pixels.length;X>Q)+1,Y=(A.g>>Q)+1,J=(A.b>>Q)+1,C=(A.a>>Q)+1;this._weights[C][B][Y][J]++,this._momentsRed[C][B][Y][J]+=A.r,this._momentsGreen[C][B][Y][J]+=A.g,this._momentsBlue[C][B][Y][J]+=A.b,this._momentsAlpha[C][B][Y][J]+=A.a,this._moments[C][B][Y][J]+=this._table[A.r]+this._table[A.g]+this._table[A.b]+this._table[A.a]}*_calculateMoments(){let A=[],Q=[],B=[],Y=[],J=[],C=[],X=AE(this._sideSize,this._sideSize,this._sideSize),G=AE(this._sideSize,this._sideSize,this._sideSize),W=AE(this._sideSize,this._sideSize,this._sideSize),F=AE(this._sideSize,this._sideSize,this._sideSize),Z=AE(this._sideSize,this._sideSize,this._sideSize),U=AE(this._sideSize,this._sideSize,this._sideSize),$=0,E=new b6(this._alphaMaxSideIndex*this._maxSideIndex,99);for(let K=1;K<=this._alphaMaxSideIndex;++K){QE(X,this._sideSize,this._sideSize,this._sideSize,0),QE(G,this._sideSize,this._sideSize,this._sideSize,0),QE(W,this._sideSize,this._sideSize,this._sideSize,0),QE(F,this._sideSize,this._sideSize,this._sideSize,0),QE(Z,this._sideSize,this._sideSize,this._sideSize,0),QE(U,this._sideSize,this._sideSize,this._sideSize,0);for(let I=1;I<=this._maxSideIndex;++I,++$){if(E.shouldNotify($))yield{progress:E.progress};BE(A,this._sideSize,0),BE(Q,this._sideSize,0),BE(B,this._sideSize,0),BE(Y,this._sideSize,0),BE(J,this._sideSize,0),BE(C,this._sideSize,0);for(let V=1;V<=this._maxSideIndex;++V){let H=0,D=0,L=0,z=0,M=0,N=0;for(let q=1;q<=this._maxSideIndex;++q)H+=this._weights[K][I][V][q],D+=this._momentsRed[K][I][V][q],L+=this._momentsGreen[K][I][V][q],z+=this._momentsBlue[K][I][V][q],M+=this._momentsAlpha[K][I][V][q],N+=this._moments[K][I][V][q],A[q]+=H,Q[q]+=D,B[q]+=L,Y[q]+=z,J[q]+=M,C[q]+=N,X[I][V][q]=X[I-1][V][q]+A[q],G[I][V][q]=G[I-1][V][q]+Q[q],W[I][V][q]=W[I-1][V][q]+B[q],F[I][V][q]=F[I-1][V][q]+Y[q],Z[I][V][q]=Z[I-1][V][q]+J[q],U[I][V][q]=U[I-1][V][q]+C[q],this._weights[K][I][V][q]=this._weights[K-1][I][V][q]+X[I][V][q],this._momentsRed[K][I][V][q]=this._momentsRed[K-1][I][V][q]+G[I][V][q],this._momentsGreen[K][I][V][q]=this._momentsGreen[K-1][I][V][q]+W[I][V][q],this._momentsBlue[K][I][V][q]=this._momentsBlue[K-1][I][V][q]+F[I][V][q],this._momentsAlpha[K][I][V][q]=this._momentsAlpha[K-1][I][V][q]+Z[I][V][q],this._moments[K][I][V][q]=this._moments[K-1][I][V][q]+U[I][V][q]}}}}static _volumeFloat(A,Q){return Q[A.alphaMaximum][A.redMaximum][A.greenMaximum][A.blueMaximum]-Q[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMaximum]-Q[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMaximum]+Q[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMaximum]-Q[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMaximum]+Q[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMaximum]+Q[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMaximum]-Q[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(Q[A.alphaMaximum][A.redMaximum][A.greenMaximum][A.blueMinimum]-Q[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMinimum]-Q[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMinimum]+Q[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]-Q[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMinimum]+Q[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]+Q[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]-Q[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum])}static _volume(A,Q){return PQ._volumeFloat(A,Q)|0}static _top(A,Q,B,Y){let J;switch(Q){case PQ._alpha:J=Y[B][A.redMaximum][A.greenMaximum][A.blueMaximum]-Y[B][A.redMaximum][A.greenMinimum][A.blueMaximum]-Y[B][A.redMinimum][A.greenMaximum][A.blueMaximum]+Y[B][A.redMinimum][A.greenMinimum][A.blueMaximum]-(Y[B][A.redMaximum][A.greenMaximum][A.blueMinimum]-Y[B][A.redMaximum][A.greenMinimum][A.blueMinimum]-Y[B][A.redMinimum][A.greenMaximum][A.blueMinimum]+Y[B][A.redMinimum][A.greenMinimum][A.blueMinimum]);break;case PQ._red:J=Y[A.alphaMaximum][B][A.greenMaximum][A.blueMaximum]-Y[A.alphaMaximum][B][A.greenMinimum][A.blueMaximum]-Y[A.alphaMinimum][B][A.greenMaximum][A.blueMaximum]+Y[A.alphaMinimum][B][A.greenMinimum][A.blueMaximum]-(Y[A.alphaMaximum][B][A.greenMaximum][A.blueMinimum]-Y[A.alphaMaximum][B][A.greenMinimum][A.blueMinimum]-Y[A.alphaMinimum][B][A.greenMaximum][A.blueMinimum]+Y[A.alphaMinimum][B][A.greenMinimum][A.blueMinimum]);break;case PQ._green:J=Y[A.alphaMaximum][A.redMaximum][B][A.blueMaximum]-Y[A.alphaMaximum][A.redMinimum][B][A.blueMaximum]-Y[A.alphaMinimum][A.redMaximum][B][A.blueMaximum]+Y[A.alphaMinimum][A.redMinimum][B][A.blueMaximum]-(Y[A.alphaMaximum][A.redMaximum][B][A.blueMinimum]-Y[A.alphaMaximum][A.redMinimum][B][A.blueMinimum]-Y[A.alphaMinimum][A.redMaximum][B][A.blueMinimum]+Y[A.alphaMinimum][A.redMinimum][B][A.blueMinimum]);break;case PQ._blue:J=Y[A.alphaMaximum][A.redMaximum][A.greenMaximum][B]-Y[A.alphaMaximum][A.redMaximum][A.greenMinimum][B]-Y[A.alphaMaximum][A.redMinimum][A.greenMaximum][B]+Y[A.alphaMaximum][A.redMinimum][A.greenMinimum][B]-(Y[A.alphaMinimum][A.redMaximum][A.greenMaximum][B]-Y[A.alphaMinimum][A.redMaximum][A.greenMinimum][B]-Y[A.alphaMinimum][A.redMinimum][A.greenMaximum][B]+Y[A.alphaMinimum][A.redMinimum][A.greenMinimum][B]);break;default:throw Error("impossible")}return J|0}static _bottom(A,Q,B){switch(Q){case PQ._alpha:return-B[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMaximum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMaximum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMaximum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(-B[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMinimum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);case PQ._red:return-B[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMaximum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMaximum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMaximum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(-B[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMinimum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);case PQ._green:return-B[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMaximum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMaximum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMaximum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMaximum]-(-B[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);case PQ._blue:return-B[A.alphaMaximum][A.redMaximum][A.greenMaximum][A.blueMinimum]+B[A.alphaMaximum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMaximum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMaximum][A.redMinimum][A.greenMinimum][A.blueMinimum]-(-B[A.alphaMinimum][A.redMaximum][A.greenMaximum][A.blueMinimum]+B[A.alphaMinimum][A.redMaximum][A.greenMinimum][A.blueMinimum]+B[A.alphaMinimum][A.redMinimum][A.greenMaximum][A.blueMinimum]-B[A.alphaMinimum][A.redMinimum][A.greenMinimum][A.blueMinimum]);default:return 0}}_calculateVariance(A){let Q=PQ._volume(A,this._momentsRed),B=PQ._volume(A,this._momentsGreen),Y=PQ._volume(A,this._momentsBlue),J=PQ._volume(A,this._momentsAlpha),C=PQ._volumeFloat(A,this._moments),X=PQ._volume(A,this._weights),G=Q*Q+B*B+Y*Y+J*J;return C-G/X}_maximize(A,Q,B,Y,J,C,X,G,W){let F=PQ._bottom(A,Q,this._momentsRed)|0,Z=PQ._bottom(A,Q,this._momentsGreen)|0,U=PQ._bottom(A,Q,this._momentsBlue)|0,$=PQ._bottom(A,Q,this._momentsAlpha)|0,E=PQ._bottom(A,Q,this._weights)|0,K=0,I=-1;for(let V=B;VK)K=q,I=V}}}return{max:K,position:I}}_cut(A,Q){let B,Y=PQ._volume(A,this._momentsRed),J=PQ._volume(A,this._momentsGreen),C=PQ._volume(A,this._momentsBlue),X=PQ._volume(A,this._momentsAlpha),G=PQ._volume(A,this._weights),W=this._maximize(A,PQ._red,A.redMinimum+1,A.redMaximum,Y,J,C,X,G),F=this._maximize(A,PQ._green,A.greenMinimum+1,A.greenMaximum,Y,J,C,X,G),Z=this._maximize(A,PQ._blue,A.blueMinimum+1,A.blueMaximum,Y,J,C,X,G),U=this._maximize(A,PQ._alpha,A.alphaMinimum+1,A.alphaMaximum,Y,J,C,X,G);if(U.max>=W.max&&U.max>=F.max&&U.max>=Z.max){if(B=PQ._alpha,U.position<0)return!1}else if(W.max>=U.max&&W.max>=F.max&&W.max>=Z.max)B=PQ._red;else if(F.max>=U.max&&F.max>=W.max&&F.max>=Z.max)B=PQ._green;else B=PQ._blue;switch(Q.redMaximum=A.redMaximum,Q.greenMaximum=A.greenMaximum,Q.blueMaximum=A.blueMaximum,Q.alphaMaximum=A.alphaMaximum,B){case PQ._red:Q.redMinimum=A.redMaximum=W.position,Q.greenMinimum=A.greenMinimum,Q.blueMinimum=A.blueMinimum,Q.alphaMinimum=A.alphaMinimum;break;case PQ._green:Q.greenMinimum=A.greenMaximum=F.position,Q.redMinimum=A.redMinimum,Q.blueMinimum=A.blueMinimum,Q.alphaMinimum=A.alphaMinimum;break;case PQ._blue:Q.blueMinimum=A.blueMaximum=Z.position,Q.redMinimum=A.redMinimum,Q.greenMinimum=A.greenMinimum,Q.alphaMinimum=A.alphaMinimum;break;case PQ._alpha:Q.alphaMinimum=A.alphaMaximum=U.position,Q.blueMinimum=A.blueMinimum,Q.redMinimum=A.redMinimum,Q.greenMinimum=A.greenMinimum;break}return A.volume=(A.redMaximum-A.redMinimum)*(A.greenMaximum-A.greenMinimum)*(A.blueMaximum-A.blueMinimum)*(A.alphaMaximum-A.alphaMinimum),Q.volume=(Q.redMaximum-Q.redMinimum)*(Q.greenMaximum-Q.greenMinimum)*(Q.blueMaximum-Q.blueMinimum)*(Q.alphaMaximum-Q.alphaMinimum),!0}_initialize(A){this._colors=A,this._cubes=[];for(let Q=0;QrR,ErrorDiffusionArray:()=>t1,ErrorDiffusionArrayKernel:()=>qZA,ErrorDiffusionRiemersma:()=>ff,NearestColor:()=>LZA});var rR=class{quantizeSync(A,Q){for(let B of this.quantize(A,Q))if(B.pointContainer)return B.pointContainer;throw Error("unreachable")}},LZA=class extends rR{constructor(A){super();ZA(this,"_distance"),this._distance=A}*quantize(A,Q){let B=A.getPointArray(),Y=A.getWidth(),J=A.getHeight(),C=new b6(J,99);for(let X=0;X{return A[A.FloydSteinberg=0]="FloydSteinberg",A[A.FalseFloydSteinberg=1]="FalseFloydSteinberg",A[A.Stucki=2]="Stucki",A[A.Atkinson=3]="Atkinson",A[A.Jarvis=4]="Jarvis",A[A.Burkes=5]="Burkes",A[A.Sierra=6]="Sierra",A[A.TwoSierra=7]="TwoSierra",A[A.SierraLite=8]="SierraLite",A})(qZA||{}),t1=class extends rR{constructor(A,Q,B=!0,Y=0,J=!1){super();ZA(this,"_minColorDistance"),ZA(this,"_serpentine"),ZA(this,"_kernel"),ZA(this,"_calculateErrorLikeGIMP"),ZA(this,"_distance"),this._setKernel(Q),this._distance=A,this._minColorDistance=Y,this._serpentine=B,this._calculateErrorLikeGIMP=J}*quantize(A,Q){let B=A.getPointArray(),Y=new M8,J=A.getWidth(),C=A.getHeight(),X=[],G=1,W=1;for(let Z of this._kernel){let U=Z[2]+1;if(W=0&&k+I=0&&T+ZQ)A.length=Q;let B=A.length;for(let Y=0;Y=0&&A.x=0&&A.y{let F=B[G+W*Y],{r:Z,g:U,b:$,a:E}=F;for(let H=0;HqJB});var NJB=0.01,LJB=0.03;function qJB(A,Q){if(A.getHeight()!==Q.getHeight()||A.getWidth()!==Q.getWidth())throw Error("Images have different sizes!");let Y=255,J=(NJB*Y)**2,C=(LJB*Y)**2,X=0,G=0;return MJB(A,Q,(W,F,Z,U)=>{let $=0,E=0,K=0;for(let L=0;Lprocess.nextTick(A):(A)=>setTimeout(A,0);function MZA(A,{colorDistanceFormula:Q,paletteQuantization:B,colors:Y}={}){let J=RZA(Q),C=RJB(J,B,Y);return A.forEach((X)=>C.sample(X)),C.quantizeSync()}function zZA(A,Q,{colorDistanceFormula:B,imageQuantization:Y}={}){let J=RZA(B);return zJB(J,Y).quantizeSync(A,Q)}function RZA(A="euclidean-bt709"){switch(A){case"cie94-graphic-arts":return new GZA;case"cie94-textiles":return new XZA;case"ciede2000":return new uC;case"color-metric":return new WZA;case"euclidean":return new FZA;case"euclidean-bt709":return new ZZA;case"euclidean-bt709-noalpha":return new $ZA;case"manhattan":return new UZA;case"manhattan-bt709":return new KZA;case"manhattan-nommyde":return new EZA;case"pngquant":return new VZA;default:throw Error(`Unknown colorDistanceFormula ${A}`)}}function zJB(A,Q="floyd-steinberg"){switch(Q){case"nearest":return new LZA(A);case"riemersma":return new ff(A);case"floyd-steinberg":return new t1(A,0);case"false-floyd-steinberg":return new t1(A,1);case"stucki":return new t1(A,2);case"atkinson":return new t1(A,3);case"jarvis":return new t1(A,4);case"burkes":return new t1(A,5);case"sierra":return new t1(A,6);case"two-sierra":return new t1(A,7);case"sierra-lite":return new t1(A,8);default:throw Error(`Unknown imageQuantization ${Q}`)}}function RJB(A,Q="wuquant",B=256){switch(Q){case"neuquant":return new g0(A,B);case"rgbquant":return new DZA(A,B);case"wuquant":return new YE(A,B);case"neuquant-float":return new h0(A,B);default:throw Error(`Unknown paletteQuantization ${Q}`)}}var wJB=SB.object({colors:SB.number().optional(),colorDistanceFormula:SB.union([SB.literal("cie94-textiles"),SB.literal("cie94-graphic-arts"),SB.literal("ciede2000"),SB.literal("color-metric"),SB.literal("euclidean"),SB.literal("euclidean-bt709-noalpha"),SB.literal("euclidean-bt709"),SB.literal("manhattan"),SB.literal("manhattan-bt709"),SB.literal("manhattan-nommyde"),SB.literal("pngquant")]).optional(),paletteQuantization:SB.union([SB.literal("neuquant"),SB.literal("neuquant-float"),SB.literal("rgbquant"),SB.literal("wuquant")]).optional(),imageQuantization:SB.union([SB.literal("nearest"),SB.literal("riemersma"),SB.literal("floyd-steinberg"),SB.literal("false-floyd-steinberg"),SB.literal("stucki"),SB.literal("atkinson"),SB.literal("jarvis"),SB.literal("burkes"),SB.literal("sierra"),SB.literal("two-sierra"),SB.literal("sierra-lite")]).optional()}),wZA={quantize(A,Q){let{colors:B,colorDistanceFormula:Y,paletteQuantization:J,imageQuantization:C}=wJB.parse(Q),X=xf.PointContainer.fromUint8Array(A.bitmap.data,A.bitmap.width,A.bitmap.height),G=MZA([X],{colors:B,colorDistanceFormula:Y,paletteQuantization:J}),W=zZA(X,G,{colorDistanceFormula:Y,imageQuantization:C});return A.bitmap.data=Buffer.from(W.toUint8Array()),A}};var OJB=[pU,_7A,v7A,iU,RFA,wFA,aU,jFA,OFA,PFA,TFA,xFA,fFA,bFA,mC,dFA,cFA,wZA],PJB=[r3,w1A,XR,WR,$R,PR],f$Y={bmp:r3().mime,gif:XR().mime,jpeg:WR().mime,png:$R().mime,tiff:PR().mime},JE=MFA({formats:PJB,plugins:OJB});var R8={OPTIMIZED_DIR:".optimized",TEMP_DIR:"hytopia-models-temp",CHECKSUM_EXT:".md5",VERSION:4,DATA_EXT:".data.json",DIRECTORIES:[PY.assetsLibraryPath,jJ.resolve(process.cwd(),"assets")].filter(Boolean),OPTIMIZER_RUNS:[{suffix:"",options:["--compress","false","--instance","false","--simplify","false","--texture-compress","false"],stripAnimations:!1,optimalMaxMeshCount:10,optimalMaxMeshHint:"Reduce nodes/meshes in your source model, or use fewer unique materials so primitives can be merged in the generated optimized model.",keepEmptyNamedNodes:!1},{suffix:"-named-nodes",options:["--compress","false","--flatten","false","--instance","false","--simplify","false","--join","false","--prune","false","--texture-compress","false"],stripAnimations:!1,optimalMaxMeshCount:20,optimalMaxMeshHint:"Use fewer unique materials in your source model so primitives sharing the same material can be joined in the generated optimized model. Named nodes are preserved, reduce unnecessary named nodes to further reduce mesh count.",keepEmptyNamedNodes:!0},{suffix:"-no-animations",options:["--compress","false","--instance","false","--simplify","false","--texture-compress","false"],stripAnimations:!0,optimalMaxMeshCount:1,optimalMaxMeshHint:"Use a single material/texture atlas in your source model so all primitives can merge into one mesh in the generated optimized model.",keepEmptyNamedNodes:!1}]},aR=[oI,eI];class yY{static instance=new yY;optimize=process.env.NODE_ENV!=="production";_modelUriAnimationNames=new Map;_modelUriBoundingBoxes=new Map;_modelUriNodeNames=new Map;_modelUriTrimeshes=new Map;constructor(){}async preloadModels(){let A=await this._getAbsoluteModelPaths();console.info(`ModelRegistry.preloadModels(): Preloading ${A.length} models...`);let Q=performance.now();for(let Y of A){if(this.optimize)await this._resolveOptimizedModelPath(Y);await this._loadModelData(Y)}let B=performance.now();console.info(`ModelRegistry.preloadModels(): Preloaded ${A.length} models in ${B-Q}ms!`)}getAllModelUris(){return Array.from(this._modelUriBoundingBoxes.keys())}getAnimationNames(A){let Q=this._modelUriAnimationNames.get(A);if(!Q)return l.error(`ModelRegistry.getAnimationNames(): Model ${A} not found!`),[];return Q}getBoundingBox(A){let Q=this._modelUriBoundingBoxes.get(A);if(!Q)return l.error(`ModelRegistry.getBoundingBox(): Model ${A} not found!`),{min:{x:0,y:0,z:0},max:{x:1,y:1,z:1}};return Q}getDepth(A){let Q=this.getBoundingBox(A);return Q.max.z-Q.min.z}getHeight(A){let Q=this.getBoundingBox(A);return Q.max.y-Q.min.y}getNodeNames(A){let Q=this._modelUriNodeNames.get(A);if(!Q)return l.error(`ModelRegistry.getNodeNames(): Model ${A} not found!`),[];return Q}getTrimesh(A,Q={x:1,y:1,z:1}){let B=this._modelUriTrimeshes.get(A);if(!B){l.error(`ModelRegistry.getTrimesh(): Model ${A} not found!`);return}let Y=B.vertices;if(Q.x!==1||Q.y!==1||Q.z!==1){Y=new Float32Array(Y.length);for(let J=0;JK.getName()),Z=G.getRoot().listAnimations().map((K)=>K.getName()),U=await this._buildTrimesh(G),$={},E=new n4().registerExtensions(aR);for(let K of R8.OPTIMIZER_RUNS){let I=this._buildOptimizedModelPath(A),V=this._buildOptimizedSuffixedModelPath(I,K.suffix);$[K.suffix]={meshCount:(await E.read(V)).getRoot().listMeshes().length}}X={schemaVersion:R8.VERSION,source:{uri:Y,sha256:J},animationNames:Z,boundingBox:{min:{x:W.min[0],y:W.min[1],z:W.min[2]},max:{x:W.max[0],y:W.max[1],z:W.max[2]}},nodeNames:F,trimesh:U?{vertices:Array.from(U.vertices),indices:Array.from(U.indices)}:void 0,optimizedModelData:$};try{let K=jJ.dirname(B);z8.mkdirSync(K,{recursive:!0}),z8.writeFileSync(B,JSON.stringify(X))}catch(K){l.warning(`ModelRegistry._loadModelData(): Failed to write data file for ${Y}. Error: ${String(K)}`)}}if(process.env.NODE_ENV!=="production"&&!C)for(let G of R8.OPTIMIZER_RUNS){let W=X.optimizedModelData[G.suffix].meshCount;if(W>G.optimalMaxMeshCount)l.warning(`Model "${Y}" (${G.suffix}) has ${W} meshes (less is better, try not to exceed: ${G.optimalMaxMeshCount}). This may impact FPS if this model is used in a game. ${G.optimalMaxMeshHint}`)}this._modelUriAnimationNames.set(Y,X.animationNames),this._modelUriBoundingBoxes.set(Y,X.boundingBox),this._modelUriNodeNames.set(Y,X.nodeNames),this._modelUriTrimeshes.set(Y,X.trimesh?{vertices:new Float32Array(X.trimesh.vertices),indices:new Uint32Array(X.trimesh.indices)}:void 0)}async _resolveOptimizedModelPath(A){let Q=this._buildOptimizedModelPath(A);if(this._isOptimizedVersionValid(A))return Q;return await this._optimizeModel(A,Q)}_isOptimizedVersionValid(A){let Q=`${this._buildOptimizedModelPath(A)}${R8.CHECKSUM_EXT}`;if(!z8.existsSync(Q))return!1;let B=this._calculateChecksum(A),Y=z8.readFileSync(Q,"utf8");return B===Y}_calculateChecksum(A){if(!z8.existsSync(A))return"";let Q=z8.readFileSync(A);return TJB.createHash("sha256").update(Q.toString("base64")).update(R8.VERSION.toString()).digest("hex")}_buildOptimizedModelPath(A){let Q=jJ.basename(A),B=Q.replace(/\.[^/.]+$/,""),Y=jJ.dirname(A),J=jJ.join(Y,R8.OPTIMIZED_DIR,B);return jJ.join(J,Q)}_buildOptimizedSuffixedModelPath(A,Q){return A.replace(/(\.[^/.]+)$/,`${Q}.glb`)}async _buildTrimesh(A,Q=1,B=0.001){let Y=pCA(A);Y.setLogger(new S9(mI.WARN)),await Y.transform(hCA({pivot:"center"}),mh(),uh(),fh(),Y1A({simplifier:jZA.MeshoptSimplifier,ratio:Q,error:B}),cCA());for(let $ of Y.getRoot().listScenes())for(let E of $.listChildren())uCA(E);let J=[],C=0,X=0;for(let $ of Y.getRoot().listMeshes())for(let E of $.listPrimitives()){let K=E.getAttribute("POSITION"),I=E.getIndices();if(!K||!I)continue;let V=K.getArray(),H=I.getArray(),D=H instanceof Uint32Array?H:new Uint32Array(H);if(V.length===0||D.length===0)continue;J.push({vertices:V,indices:D}),C+=V.length,X+=D.length}if(J.length===0){l.error("ModelRegistry._buildTrimesh(): Model has no primitives with POSITION and INDICES!");return}let G=new Float32Array(C),W=new Uint32Array(X),F=0,Z=0,U=0;for(let $ of J){G.set($.vertices,F);let E=$.vertices.length/3;for(let K=0;K<$.indices.length;K++)W[U+K]=$.indices[K]+Z;F+=$.vertices.length,U+=$.indices.length,Z+=E}return{vertices:G,indices:W}}async _optimizeModel(A,Q){let B=jJ.dirname(Q);z8.rmSync(B,{recursive:!0,force:!0}),z8.mkdirSync(B,{recursive:!0}),console.info(`ModelRegistry: Optimizing model ${this._absoluteModelPathToModelUri(A)}...`);for(let Y of R8.OPTIMIZER_RUNS){let J=this._buildOptimizedSuffixedModelPath(Q,Y.suffix),C=await this._preprocessOptimizableModel(A,Y),X=await qI("npx",["@gltf-transform/cli","optimize",C,J,...Y.options]);if(X.stderr)return l.warning(`ModelRegistry._optimizeModel(): Error optimizing model ${this._absoluteModelPathToModelUri(A)}, defaulting to unoptimized model. Error: ${X.stderr}`),A;await this._embedModelMetadata(J);let G=await qI("npx",["@gltf-transform/cli","uastc",J,J,"--level","4","--zstd","10"]);if(G.stderr)l.warning(`ModelRegistry._optimizeModel(): Error compressing textures for model ${this._absoluteModelPathToModelUri(A)}, continuing without compression. Error: ${G.stderr}`)}return z8.writeFileSync(`${Q}${R8.CHECKSUM_EXT}`,this._calculateChecksum(A)),Q}async _embedModelMetadata(A){try{let Q=new n4().registerExtensions(aR),B=await Q.read(A);for(let Y of B.getRoot().listMaterials()){let C=Y.getBaseColorTexture()?.getImage(),X=!1;if(C)try{let G=Y.getAlphaMode()==="MASK"?Y.getAlphaCutoff()??0.5:0,W=Y.getAlpha(),F=G/W*255,{data:Z}=(await JE.read(Buffer.from(C))).bitmap;for(let U=3;U=F&&Z[U]<255){X=!0;break}}catch{}Y.setExtras({...Y.getExtras(),hasTransparency:X})}await Q.write(A,B)}catch(Q){l.warning(`ModelRegistry._embedModelMetadata(): Failed to embed metadata for ${A}. Error: ${String(Q)}`)}}async _preprocessOptimizableModel(A,Q){let B=new n4().registerExtensions(aR),Y=await B.read(A),J=!1;if(Q.stripAnimations){let C=Y.getRoot().listAnimations();if(C.length>0)C.forEach((X)=>X.dispose()),J=!0}if(Q.keepEmptyNamedNodes)await Y.transform(mh({cleanup:!1}),uh({cleanup:!1,keepNamed:!0}),m3({keepLeaves:!0})),J=!0;if(J){let C=jJ.join(SJB.tmpdir(),R8.TEMP_DIR);z8.mkdirSync(C,{recursive:!0});let X=jJ.join(C,jJ.basename(A));return await B.write(X,Y),X}return A}}var FZ;((J)=>{J.DYNAMIC="dynamic";J.FIXED="fixed";J.KINEMATIC_POSITION="kinematic_position";J.KINEMATIC_VELOCITY="kinematic_velocity"})(FZ||={});var bf=0.001,OZA="dynamic";class y7 extends BQ{_additionalMass=0;_colliders=new Set;_explicitSleep=!1;_enabledPositions={x:!0,y:!0,z:!0};_enabledRotations={x:!0,y:!0,z:!0};_rigidBody;_rigidBodyDesc;_rigidBodyType;_simulation;constructor(A){super();A.type??=OZA,this._rigidBodyDesc=this._createRigidBodyDesc(A),this._rigidBodyType=A.type,this._applyRigidBodyOptions(A),this._autoAddToSimulation(A)}get additionalMass(){if(!this._requireNotRemoved("additionalMass"))return 0;return this._additionalMass}get additionalSolverIterations(){if(!this._requireNotRemoved("additionalSolverIterations"))return 0;return this._rigidBody?this._rigidBody.additionalSolverIterations():this._rigidBodyDesc.additionalSolverIterations}get angularDamping(){if(!this._requireNotRemoved("angularDamping"))return 0;return this._rigidBody?this._rigidBody.angularDamping():this._rigidBodyDesc.angularDamping}get angularVelocity(){if(!this._requireNotRemoved("angularVelocity"))return{x:0,y:0,z:0};return this._rigidBody?this._rigidBody.angvel():this._rigidBodyDesc.angvel}get colliders(){return this._colliders}get dominanceGroup(){if(!this._requireNotRemoved("dominanceGroup"))return 0;return this._rigidBody?this._rigidBody.dominanceGroup():this._rigidBodyDesc.dominanceGroup}get directionFromRotation(){let{x:A,y:Q,z:B,w:Y}=this.rotation;return{x:-2*(A*B+Y*Q),y:-2*(Q*B-Y*A),z:-(1-2*(A*A+Q*Q))}}get effectiveAngularInertia(){if(!this._requireNotRemoved("effectiveAngularInertia"))return;return this._rigidBody?this._rigidBody.effectiveAngularInertia():void 0}get effectiveInverseMass(){if(!this._requireNotRemoved("effectiveInverseMass"))return;return this._rigidBody?this._rigidBody.effectiveInvMass():void 0}get enabledRotations(){if(!this._requireNotRemoved("enabledRotations"))return{x:!0,y:!0,z:!0};return this._enabledRotations}get enabledPositions(){if(!this._requireNotRemoved("enabledPositions"))return{x:!0,y:!0,z:!0};return this._enabledPositions}get gravityScale(){if(!this._requireNotRemoved("gravityScale"))return 0;return this._rigidBody?this._rigidBody.gravityScale():this._rigidBodyDesc.gravityScale}get inverseMass(){if(!this._requireNotRemoved("inverseMass"))return;return this._rigidBody?this._rigidBody.invMass():void 0}get isCcdEnabled(){if(!this._requireNotRemoved("isCcdEnabled"))return!1;return this._rigidBody?this._rigidBody.isCcdEnabled():this._rigidBodyDesc.ccdEnabled}get isDynamic(){if(!this._requireNotRemoved("isDynamic"))return!1;return this._rigidBodyType==="dynamic"}get isEnabled(){if(!this._requireNotRemoved("isEnabled"))return!1;return this._rigidBody?this._rigidBody.isEnabled():this._rigidBodyDesc.enabled}get isFixed(){if(!this._requireNotRemoved("isFixed"))return!1;return this._rigidBodyType==="fixed"}get isKinematic(){if(!this._requireNotRemoved("isKinematic"))return!1;return["kinematic_position","kinematic_velocity"].includes(this._rigidBodyType)}get isKinematicPositionBased(){if(!this._requireNotRemoved("isKinematicPositionBased"))return!1;return this._rigidBodyType==="kinematic_position"}get isKinematicVelocityBased(){if(!this._requireNotRemoved("isKinematicVelocityBased"))return!1;return this._rigidBodyType==="kinematic_velocity"}get isMoving(){if(!this._requireNotRemoved("isMoving"))return!1;return this._rigidBody?this._rigidBody.isMoving():!1}get isRemoved(){return!this._rigidBody&&!this._rigidBodyDesc}get isSimulated(){if(!this._requireNotRemoved("isSimulated"))return!1;return this._rigidBody?!0:!1}get isSleeping(){if(!this._requireNotRemoved("isSleeping"))return!1;return this._rigidBody?this._rigidBody.isSleeping():this._rigidBodyDesc.sleeping}get linearDamping(){if(!this._requireNotRemoved("linearDamping"))return 0;return this._rigidBody?this._rigidBody.linearDamping():this._rigidBodyDesc.linearDamping}get linearVelocity(){if(!this._requireNotRemoved("linearVelocity"))return{x:0,y:0,z:0};return this._rigidBody?this._rigidBody.linvel():this._rigidBodyDesc.linvel}get localCenterOfMass(){if(!this._requireNotRemoved("localCenterOfMass"))return{x:0,y:0,z:0};return this._rigidBody?this._rigidBody.localCom():this._rigidBodyDesc.centerOfMass}get mass(){if(!this._requireNotRemoved("mass"))return 0;return this._rigidBody?this._rigidBody.mass():this._rigidBodyDesc.mass}get nextKinematicRotation(){if(!this._requireNotRemoved("nextKinematicRotation"))return{x:0,y:0,z:0,w:1};return this._rigidBody?this._rigidBody.nextRotation():this._rigidBodyDesc.rotation}get nextKinematicPosition(){if(!this._requireNotRemoved("nextKinematicPosition"))return{x:0,y:0,z:0};return this._rigidBody?this._rigidBody.nextTranslation():this._rigidBodyDesc.translation}get numColliders(){return this._colliders.size}get principalAngularInertia(){if(!this._requireNotRemoved("principalAngularInertia"))return{x:0,y:0,z:0};return this._rigidBody?this._rigidBody.principalInertia():this._rigidBodyDesc.principalAngularInertia}get principalAngularInertiaLocalFrame(){if(!this._requireNotRemoved("principalAngularInertiaLocalFrame"))return;return this._rigidBody?this._rigidBody.principalInertiaLocalFrame():void 0}get position(){if(!this._requireNotRemoved("position"))return{x:0,y:0,z:0};return this._rigidBody?this._rigidBody.translation():this._rigidBodyDesc.translation}get rawRigidBody(){if(!this._requireNotRemoved("rawRigidBody"))return;return this._rigidBody}get rotation(){if(!this._requireNotRemoved("rotation"))return{x:0,y:0,z:0,w:1};return this._rigidBody?this._rigidBody.rotation():this._rigidBodyDesc.rotation}get softCcdPrediction(){if(!this._requireNotRemoved("softCcdPrediction"))return 0;return this._rigidBody?this._rigidBody.softCcdPrediction():this._rigidBodyDesc.softCcdPrediction}get type(){if(!this._requireNotRemoved("type"))return"dynamic";return this._rigidBodyType}get worldCenterOfMass(){if(!this._requireNotRemoved("worldCenterOfMass"))return;return this._rigidBody?this._rigidBody.worldCom():void 0}setAdditionalMass(A){if(!this._requireDynamic("setAdditionalMass"))return;if(!this._requireNotRemoved("setAdditionalMass"))return;this._rigidBody?this._rigidBody.setAdditionalMass(A,!this._explicitSleep):this._rigidBodyDesc.setAdditionalMass(A)}setAdditionalMassProperties(A){if(!this._requireDynamic("setAdditionalMassProperties"))return;if(!this._requireNotRemoved("setAdditionalMassProperties"))return;let{additionalMass:Q,centerOfMass:B,principalAngularInertia:Y,principalAngularInertiaLocalFrame:J}=A;this._rigidBody?this._rigidBody.setAdditionalMassProperties(Q,B,Y,J,!this._explicitSleep):this._rigidBodyDesc.setAdditionalMassProperties(Q,B,Y,J)}setAdditionalSolverIterations(A){if(!this._requireDynamic("setAdditionalSolverIterations"))return;if(!this._requireNotRemoved("setAdditionalSolverIterations"))return;this._rigidBody?this._rigidBody.setAdditionalSolverIterations(A):this._rigidBodyDesc.setAdditionalSolverIterations(A)}setAngularDamping(A){if(!this._requireDynamic("setAngularDamping"))return;if(!this._requireNotRemoved("setAngularDamping"))return;this._rigidBody?this._rigidBody.setAngularDamping(A):this._rigidBodyDesc.setAngularDamping(A)}setAngularVelocity(A){if(!this._requireNotKinematicPositionBased("setAngularVelocity"))return;if(!this._requireNotRemoved("setAngularVelocity"))return;this._rigidBody?this._rigidBody.setAngvel(A,!this._explicitSleep):this._rigidBodyDesc.setAngvel(A)}setCcdEnabled(A){if(!this._requireDynamic("setCcdEnabled"))return;if(!this._requireNotRemoved("setCcdEnabled"))return;this._rigidBody?this._rigidBody.enableCcd(A):this._rigidBodyDesc.setCcdEnabled(A)}setDominanceGroup(A){if(!this._requireDynamic("setDominanceGroup"))return;if(!this._requireNotRemoved("setDominanceGroup"))return;this._rigidBody?this._rigidBody.setDominanceGroup(A):this._rigidBodyDesc.setDominanceGroup(A)}setEnabled(A){if(!this._requireNotRemoved("setEnabled"))return;this._rigidBody?this._rigidBody.setEnabled(A):this._rigidBodyDesc.setEnabled(A)}setEnabledPositions(A){if(!this._requireDynamic("setEnabledPositions"))return;if(!this._requireNotRemoved("setEnabledPositions"))return;this._rigidBody?this._rigidBody.setEnabledTranslations(A.x,A.y,A.z,!this._explicitSleep):this._rigidBodyDesc.enabledTranslations(A.x,A.y,A.z),this._enabledPositions=A}setEnabledRotations(A){if(!this._requireDynamic("setEnabledRotations"))return;if(!this._requireNotRemoved("setEnabledRotations"))return;this._rigidBody?this._rigidBody.setEnabledRotations(A.x,A.y,A.z,!this._explicitSleep):this._rigidBodyDesc.enabledRotations(A.x,A.y,A.z),this._enabledRotations=A}setGravityScale(A){if(!this._requireDynamic("setGravityScale"))return;if(!this._requireNotRemoved("setGravityScale"))return;this._rigidBody?this._rigidBody.setGravityScale(A,!this._explicitSleep):this._rigidBodyDesc.setGravityScale(A)}setLinearDamping(A){if(!this._requireDynamic("setLinearDamping"))return;if(!this._requireNotRemoved("setLinearDamping"))return;this._rigidBody?this._rigidBody.setLinearDamping(A):this._rigidBodyDesc.setLinearDamping(A)}setLinearVelocity(A){if(!this._requireNotKinematicPositionBased("setLinearVelocity"))return;if(!this._requireNotRemoved("setLinearVelocity"))return;this._rigidBody?this._rigidBody.setLinvel(A,!this._explicitSleep):this._rigidBodyDesc.setLinvel(A.x,A.y,A.z)}setNextKinematicRotation(A){if(!this._requireKinematic("setNextKinematicRotation"))return;if(!this._requireNotRemoved("setNextKinematicRotation"))return;this._rigidBody?this._rigidBody.setNextKinematicRotation(A):this._rigidBodyDesc.setRotation(A)}setNextKinematicPosition(A){if(!this._requireKinematic("setNextKinematicPosition"))return;if(!this._requireNotRemoved("setNextKinematicPosition"))return;this._rigidBody?this._rigidBody.setNextKinematicTranslation(A):this._rigidBodyDesc.setTranslation(A.x,A.y,A.z)}setPosition(A){if(!this._requireNotRemoved("setPosition"))return;this._rigidBody?this._rigidBody.setTranslation(A,!this._explicitSleep):this._rigidBodyDesc.setTranslation(A.x,A.y,A.z)}setRotation(A){if(!this._requireNotRemoved("setRotation"))return;this._rigidBody?this._rigidBody.setRotation(A,!this._explicitSleep):this._rigidBodyDesc.setRotation(A)}setSleeping(A){if(!this._requireDynamic("setSleeping"))return;if(!this._requireNotRemoved("setSleeping"))return;this._rigidBody?A?this._rigidBody.sleep():this._rigidBody.wakeUp():this._rigidBodyDesc.sleeping=A,this._explicitSleep=A}setSoftCcdPrediction(A){if(!this._requireDynamic("setSoftCcdPrediction"))return;if(!this._requireNotRemoved("setSoftCcdPrediction"))return;this._rigidBody?this._rigidBody.setSoftCcdPrediction(A):this._rigidBodyDesc.setSoftCcdPrediction(A)}setCollisionGroupsForSolidColliders(A){if(!this._requireNotRemoved("setCollisionGroupsForSolidColliders"))return;this._colliders.forEach((Q)=>{if(Q.isSensor)return;Q.setCollisionGroups(A)})}setCollisionGroupsForSensorColliders(A){if(!this._requireNotRemoved("setCollisionGroupsForSensorColliders"))return;this._colliders.forEach((Q)=>{if(!Q.isSensor)return;Q.setCollisionGroups(A)})}setType(A){if(!this._requireNotRemoved("setType"))return;let B={["dynamic"]:WB.RigidBodyType.Dynamic,["fixed"]:WB.RigidBodyType.Fixed,["kinematic_position"]:WB.RigidBodyType.KinematicPositionBased,["kinematic_velocity"]:WB.RigidBodyType.KinematicVelocityBased}[A];if(B===void 0)return l.error(`Invalid RigidBodyType: ${A}`);this._rigidBody?this._rigidBody.setBodyType(B,!this._explicitSleep):this._rigidBodyDesc.status=B,this._rigidBodyType=A}addForce(A){if(!this._requireNotRemoved("addForce"))return;if(!this._requireCreated("addForce"))return;if(!this._requireDynamic("addForce"))return;if(this._isNegligibleVector(A))return;this._rigidBody.addForce(A,!this._explicitSleep)}addTorque(A){if(!this._requireNotRemoved("addTorque"))return;if(!this._requireCreated("addTorque"))return;if(!this._requireDynamic("addTorque"))return;if(this._isNegligibleVector(A))return;this._rigidBody.addTorque(A,!this._explicitSleep)}addChildColliderToSimulation(A){if(!this._requireNotRemoved("addChildColliderToSimulation"))return;if(!this._requireCreated("addChildColliderToSimulation"))return;A.addToSimulation(this._simulation,this)}addToSimulation(A){if(!this._requireNotRemoved("addToSimulation"))return;if(this._rigidBody)return l.error("RigidBody.addToSimulation(): Rigid body already exists in the simulation!");this._simulation=A,this._rigidBody=this._simulation.createRawRigidBody(this._rigidBodyDesc),this._colliders.forEach((Q)=>{if(!Q.isSimulated)Q.addToSimulation(A,this)})}applyImpulse(A){if(!this._requireNotRemoved("applyImpulse"))return;if(!this._requireCreated("applyImpulse"))return;if(!this._requireDynamic("applyImpulse"))return;if(this._isNegligibleVector(A))return;this._rigidBody.applyImpulse(A,!this._explicitSleep)}applyImpulseAtPoint(A,Q){if(!this._requireNotRemoved("applyImpulseAtPoint"))return;if(!this._requireCreated("applyImpulseAtPoint"))return;if(!this._requireDynamic("applyImpulseAtPoint"))return;if(this._isNegligibleVector(A))return;this._rigidBody.applyImpulseAtPoint(A,Q,!this._explicitSleep)}applyTorqueImpulse(A){if(!this._requireNotRemoved("applyTorqueImpulse"))return;if(!this._requireCreated("applyTorqueImpulse"))return;if(!this._requireDynamic("applyTorqueImpulse"))return;this._rigidBody.applyTorqueImpulse(A,!this._explicitSleep)}createAndAddChildCollider(A){if(!this._requireNotRemoved("createAndAddChildCollider"))return null;return this._simulation?new h9({...A,parentRigidBody:this,simulation:this._simulation}):this._createAndAddPendingChildCollider(A)}createAndAddChildColliders(A){let Q=[];return A.forEach((B)=>{let Y=this.createAndAddChildCollider(B);if(Y)Q.push(Y)}),Q}getCollidersByTag(A){let Q=[];for(let B of this._colliders)if(B.tag===A)Q.push(B);return Q}linkCollider(A){if(!this._requireNotRemoved("linkCollider"))return;if(A.parentRigidBody!==this)return l.error("RigidBody.linkCollider(): Collider cannot be linked because it is not a child of this rigid body!");this._colliders.add(A)}lockAllRotations(){if(!this._requireNotRemoved("lockAllRotations"))return;this.setEnabledRotations({x:!1,y:!1,z:!1})}lockAllPositions(){if(!this._requireNotRemoved("lockAllPositions"))return;this.setEnabledPositions({x:!1,y:!1,z:!1})}removeFromSimulation(){if(!this._requireNotRemoved("removeFromSimulation"))return;if(!this._rigidBody)return l.error("RigidBody.removeFromSimulation(): Rigid body does not exist in the simulation!");this._colliders.forEach((A)=>{A.removeFromSimulation()}),this._simulation.removeRawRigidBody(this._rigidBody),this._simulation=void 0,this._rigidBody=void 0}unlinkCollider(A){if(!this._requireNotRemoved("unlinkCollider"))return;if(!A.isRemoved)return l.error("RigidBody.unlinkCollider(): Collider is still simulated and therefore cannot be unlinked from this rigid body!");this._colliders.delete(A)}resetAngularVelocity(){if(!this._requireNotRemoved("resetAngularVelocity"))return;if(!this._requireCreated("resetAngularVelocity"))return;this.setAngularVelocity({x:0,y:0,z:0})}resetForces(){if(!this._requireNotRemoved("resetForces"))return;if(!this._requireCreated("resetForces"))return;this._rigidBody.resetForces(!this._explicitSleep)}resetLinearVelocity(){if(!this._requireNotRemoved("resetLinearVelocity"))return;if(!this._requireCreated("resetLinearVelocity"))return;this.setLinearVelocity({x:0,y:0,z:0})}resetTorques(){if(!this._requireNotRemoved("resetTorques"))return;if(!this._requireCreated("resetTorques"))return;this._rigidBody.resetTorques(!this._explicitSleep)}sleep(){if(!this._requireNotRemoved("sleep"))return;this.setSleeping(!0)}wakeUp(){if(!this._requireNotRemoved("wakeUp"))return;this.setSleeping(!1)}_applyRigidBodyOptions(A){[["additionalMass",this.setAdditionalMass.bind(this)],["additionalMassProperties",this.setAdditionalMassProperties.bind(this)],["additionalSolverIterations",this.setAdditionalSolverIterations.bind(this)],["angularDamping",this.setAngularDamping.bind(this)],["angularVelocity",this.setAngularVelocity.bind(this)],["dominanceGroup",this.setDominanceGroup.bind(this)],["ccdEnabled",this.setCcdEnabled.bind(this)],["enabled",this.setEnabled.bind(this)],["enabledPositions",this.setEnabledPositions.bind(this)],["enabledRotations",this.setEnabledRotations.bind(this)],["gravityScale",this.setGravityScale.bind(this)],["linearDamping",this.setLinearDamping.bind(this)],["linearVelocity",this.setLinearVelocity.bind(this)],["position",this.setPosition.bind(this)],["rotation",this.setRotation.bind(this)],["sleeping",this.setSleeping.bind(this)],["softCcdPrediction",this.setSoftCcdPrediction.bind(this)]].forEach(([B,Y])=>{if(B in A)Y(A[B])})}_autoAddToSimulation(A){if(A.colliders)this._createAndAddPendingChildColliders(A.colliders);if(A.simulation)this.addToSimulation(A.simulation)}_createAndAddPendingChildCollider(A){if(!this._requireNotRemoved("createAndAddPendingChildCollider"))return null;if(!this._requireNotSimulated("createAndAddPendingChildCollider"))return null;let Q=new h9(A);return this._colliders.add(Q),Q}_createAndAddPendingChildColliders(A){let Q=[];return A.forEach((B)=>{let Y=this._createAndAddPendingChildCollider(B);if(Y)Q.push(Y)}),Q}_createRigidBodyDesc(A){let Q=A.type??OZA;return{["dynamic"]:()=>WB.RigidBodyDesc.dynamic(),["fixed"]:()=>WB.RigidBodyDesc.fixed(),["kinematic_position"]:()=>WB.RigidBodyDesc.kinematicPositionBased(),["kinematic_velocity"]:()=>WB.RigidBodyDesc.kinematicVelocityBased()}[Q]()}_requireCreated(A){if(!this._rigidBody||!this._simulation)l.error(`RigidBody._requireCreated(): Rigid body has not been created and therefore does not support the invoked method: ${A}()`);return!!this._rigidBody&&!!this._simulation}_requireDynamic(A){if(!this.isDynamic)l.error(`RigidBody._requireDynamic(): Rigid body is not dynamic and therefore does not support the invoked method: ${A}()`);return this.isDynamic}_requireKinematic(A){if(!this.isKinematic)l.error(`RigidBody._requireKinematic(): Rigid body is not kinematic and therefore does not support the invoked method: ${A}()`);return this.isKinematic}_requireNotKinematicPositionBased(A){if(this.isKinematicPositionBased)l.error(`RigidBody._requireNotKinematicPositionBased(): Rigid body is kinematic position based and therefore does not support the invoked method: ${A}()`);return!this.isKinematicPositionBased}_requireNotRemoved(A){if(!this._rigidBody&&!this._rigidBodyDesc)l.error(`RigidBody._requireNotRemoved(): Rigid body has been removed and therefore does not support the invoked method: ${A}()`);return!!this._rigidBody||!!this._rigidBodyDesc}_requireNotSimulated(A){if(this.isSimulated)l.error(`RigidBody._requireNotSimulated(): Rigid body is simulated and therefore does not support the invoked method: ${A}()`);return!this.isSimulated}_isNegligibleVector(A){return Math.abs(A.x){J[J.Average=0]="Average";J[J.Min=1]="Min";J[J.Multiply=2]="Multiply";J[J.Max=3]="Max"})(mf||={});var ZZ;((Z)=>{Z.NONE="none";Z.BALL="ball";Z.BLOCK="block";Z.CAPSULE="capsule";Z.CONE="cone";Z.CYLINDER="cylinder";Z.ROUND_CYLINDER="round-cylinder";Z.TRIMESH="trimesh";Z.VOXELS="voxels";Z.WEDGE="wedge"})(ZZ||={});class h9 extends BQ{_collider;_colliderDesc;_onCollision;_parentRigidBody;_relativePosition={x:0,y:0,z:0};_relativeRotation={x:0,y:0,z:0,w:1};_scale={x:1,y:1,z:1};_shape;_simulation;_tag;constructor(A){super();this._colliderDesc=this._createColliderDesc(A),this._shape=A.shape,this._applyColliderOptions(A),this._autoAddToSimulation(A)}static optionsFromBlockHalfExtents(A){return{shape:"block",halfExtents:A}}static optionsFromModelUri(A,Q=1,B){Q=typeof Q==="number"?{x:Q,y:Q,z:Q}:Q;let Y=yY.instance.getBoundingBox(A),J=Y.max.x-Y.min.x,C=Y.max.y-Y.min.y,X=Y.max.z-Y.min.z,G=J*Q.x,W=C*Q.y,F=X*Q.z,Z=Math.max(G,F),U=Math.min(G,F),$=Z/U,E=Z/W,K=Z/2,I=(M)=>Math.max(0.01,M),V=()=>({shape:"block",halfExtents:{x:I(G/2),y:I(W/2),z:I(F/2)}}),H=()=>({shape:"round-cylinder",radius:I(K),halfHeight:I(W/2),borderRadius:I(K*0.1)}),D=()=>{let M=yY.instance.getTrimesh(A,Q);if(!M)return;return{shape:"trimesh",vertices:M.vertices,indices:M.indices}},L=()=>({shape:"wedge",extents:{x:G,y:W,z:F}}),z=()=>({shape:"capsule",radius:I(K),halfHeight:I(W/2-K)});if(B)switch(B){case"block":return V();case"capsule":return z();case"round-cylinder":return H();case"trimesh":{let M=D();if(!M){l.error(`Collider.optionsFromModelUri(): Failed to create trimesh options for model ${A}, falling back to generic shape!`);break}return M}case"wedge":return L();default:l.warning(`Collider.optionsFromModelUri(): Preferred shape ${B} is not yet supported with Collider.optionsFromModelUri(), defaulting to generic shape!`)}if($>2)return V();if(E>1.5)return H();return z()}get bounciness(){if(!this._requireNotRemoved("bounciness"))return 0;return this._collider?this._collider.restitution():this._colliderDesc.restitution}get bouncinessCombineRule(){if(!this._requireNotRemoved("bouncinessCombineRule"))return 0;return this._collider?this._collider.restitutionCombineRule():this._colliderDesc.restitutionCombineRule}get collisionGroups(){if(!this._requireNotRemoved("collisionGroups"))return{belongsTo:[],collidesWith:[]};return this._collider?LC.decodeRawCollisionGroups(this._collider.collisionGroups()):LC.decodeRawCollisionGroups(this._colliderDesc.collisionGroups)}get friction(){if(!this._requireNotRemoved("friction"))return 0;return this._collider?this._collider.friction():this._colliderDesc.friction}get frictionCombineRule(){if(!this._requireNotRemoved("frictionCombineRule"))return 0;return this._collider?this._collider.frictionCombineRule():this._colliderDesc.frictionCombineRule}get isEnabled(){if(!this._requireNotRemoved("isEnabled"))return!1;return this._collider?this._collider.isEnabled():this._colliderDesc.enabled}get isRemoved(){return!this._collider&&!this._colliderDesc}get isSensor(){if(!this._requireNotRemoved("isSensor"))return!1;return this._collider?this._collider.isSensor():this._colliderDesc.isSensor}get isSimulated(){if(!this._requireNotRemoved("isSimulated"))return!1;return!!this._collider}get isBall(){return this.shape==="ball"}get isBlock(){return this.shape==="block"}get isCapsule(){return this.shape==="capsule"}get isCone(){return this.shape==="cone"}get isCylinder(){return this.shape==="cylinder"}get isNone(){return this.shape==="none"}get isRoundCylinder(){return this.shape==="round-cylinder"}get isTrimesh(){return this.shape==="trimesh"}get isVoxel(){return this.shape==="voxels"}get isWedge(){return this.shape==="wedge"}get parentRigidBody(){if(!this._requireNotRemoved("parentRigidBody"))return;return this._parentRigidBody}get rawCollider(){if(!this._requireNotRemoved("rawCollider"))return;return this._collider}get rawShape(){if(!this._requireNotRemoved("rawShape"))return;return this._collider?this._collider.shape:this._colliderDesc.shape}get relativePosition(){if(!this._requireNotRemoved("relativePosition"))return{x:0,y:0,z:0};return this._relativePosition}get relativeRotation(){if(!this._requireNotRemoved("relativeRotation"))return{x:0,y:0,z:0,w:1};return this._relativeRotation}get scale(){if(!this._requireNotRemoved("scale"))return{x:1,y:1,z:1};return this._scale}get shape(){if(!this._requireNotRemoved("shape"))return"none";return this._shape}get tag(){if(!this._requireNotRemoved("tag"))return;return this._tag}setBounciness(A){if(!this._requireNotRemoved("setBounciness"))return;this._collider?this._collider.setRestitution(A):this._colliderDesc.setRestitution(A)}setBouncinessCombineRule(A){if(!this._requireNotRemoved("setBouncinessCombineRule"))return;this._collider?this._collider.setRestitutionCombineRule(A):this._colliderDesc.setRestitutionCombineRule(A)}setCollisionGroups(A){if(!this._requireNotRemoved("setCollisionGroups"))return;let Q=LC.buildRawCollisionGroups(A);this._collider?this._collider.setCollisionGroups(Q):this._colliderDesc.setCollisionGroups(Q)}setEnabled(A){if(!this._requireNotRemoved("setEnabled"))return;this._collider?this._collider.setEnabled(A):this._colliderDesc.setEnabled(A)}setFriction(A){if(!this._requireNotRemoved("setFriction"))return;this._collider?this._collider.setFriction(A):this._colliderDesc.setFriction(A)}setFrictionCombineRule(A){if(!this._requireNotRemoved("setFrictionCombineRule"))return;this._collider?this._collider.setFrictionCombineRule(A):this._colliderDesc.setFrictionCombineRule(A)}setHalfExtents(A){if(!this._requireSimulated("setHalfExtents"))return;if(!this._requireNotRemoved("setHalfExtents"))return;if(this.shape!=="block")return l.error("Collider.setHalfExtents(): Collider is not a block collider!");this._collider.setHalfExtents(A)}setHalfHeight(A){if(!this._requireSimulated("setHalfHeight"))return;if(!this._requireNotRemoved("setHalfHeight"))return;if(this.shape!=="capsule"&&this.shape!=="cone"&&this.shape!=="cylinder"&&this.shape!=="round-cylinder")return l.error("Collider.setHalfHeight(): Collider is not a capsule, cone, cylinder, or round cylinder collider!");this._collider.setHalfHeight(A)}setMass(A){if(!this._requireNotRemoved("setMass"))return;this._collider?this._collider.setMass(A):this._colliderDesc.setMass(A)}setOnCollision(A){if(!this._requireNotRemoved("setOnCollision"))return;if(this._onCollision=A,this.isSimulated)if(this.enableCollisionEvents(!!A),A)this._simulation.colliderMap.setColliderCollisionCallback(this,A);else this._simulation.colliderMap.removeColliderCollisionCallback(this)}setRadius(A){if(!this._requireSimulated("setRadius"))return;if(!this._requireNotRemoved("setRadius"))return;if(this.shape!=="ball"&&this.shape!=="capsule"&&this.shape!=="cylinder"&&this.shape!=="round-cylinder")return l.error("Collider.setRadius(): Collider is not a ball, capsule, cylinder, or round cylinder collider!");this._collider.setRadius(A)}setRelativeRotation(A){if(!this._requireNotRemoved("setRelativeRotation"))return;this._relativeRotation=A,this._collider?this._collider.parent()?this._collider.setRotationWrtParent(A):this._collider.setRotation(A):this._colliderDesc.setRotation(A)}setRelativePosition(A){if(!this._requireNotRemoved("setRelativePosition"))return;this._relativePosition=A,this._collider?this._collider.parent()?this._collider.setTranslationWrtParent(A):this._collider.setTranslation(A):this._colliderDesc.setTranslation(A.x,A.y,A.z)}setSensor(A){if(!this._requireNotRemoved("setSensor"))return;this._collider?this._collider.setSensor(A):this._colliderDesc.setSensor(A)}setTag(A){if(!this._requireNotRemoved("setTag"))return;this._tag=A}setVoxel(A,Q){if(!this._requireNotRemoved("setVoxel"))return;if(!this._requireSimulated("setVoxel"))return;if(this.shape!=="voxels")return l.error("Collider.setVoxel(): Collider is not a voxels collider!");this._collider.setVoxel(A.x,A.y,A.z,Q)}addToSimulation(A,Q){if(!this._requireNotRemoved("addToSimulation"))return;if(!this._requireUnsimulated("addToSimulation"))return;if(Q){if(!Q.isSimulated)return l.error("Collider.addToSimulation(): Rigid body must be simulated before adding a collider to it!");if(Q.type==="dynamic"&&this.shape==="trimesh")l.warning("Collider.addToSimulation(): Trimesh colliders are strongly discouraged to be used with dynamic rigid bodies, they will not contribute any mass!")}if(this._simulation=A,this._parentRigidBody=Q,this._collider=this._simulation.createRawCollider(this._colliderDesc,Q?.rawRigidBody),this._colliderDesc=void 0,Q)Q.linkCollider(this);if(this._onCollision)this.setOnCollision(this._onCollision)}combineVoxelStates(A){if(!this._requireNotRemoved("combineVoxelStates"))return;if(!this._requireSimulated("combineVoxelStates"))return;if(!A.isSimulated)return l.error("Collider.combineVoxelStates(): Other collider is not simulated!");if(this.shape!=="voxels")return l.error("Collider.combineVoxelStates(): Collider is not a voxels collider!");if(A.shape!=="voxels")return l.error("Collider.combineVoxelStates(): Other collider is not a voxels collider!");this._collider.combineVoxelStates(A.rawCollider,0,0,0)}enableCollisionEvents(A){if(!this._requireNotRemoved("enableCollisionEvents"))return;let Q=this._collider?this._collider.activeEvents():this._colliderDesc.activeEvents,B=A?Q|WB.ActiveEvents.COLLISION_EVENTS:Q&~WB.ActiveEvents.COLLISION_EVENTS;(this._collider??this._colliderDesc).setActiveEvents(B),this._setActiveCollisionTypes()}enableContactForceEvents(A){if(!this._requireNotRemoved("enableContactForceEvents"))return;let Q=this._collider?this._collider.activeEvents():this._colliderDesc.activeEvents,B=A?Q|WB.ActiveEvents.CONTACT_FORCE_EVENTS:Q&~WB.ActiveEvents.CONTACT_FORCE_EVENTS;(this._collider??this._colliderDesc).setActiveEvents(B),this._setActiveCollisionTypes()}propagateVoxelChange(A,Q){if(!this._requireNotRemoved("propagateVoxelChange"))return;if(!this._requireSimulated("propagateVoxelChange"))return;if(!A.isSimulated)return l.error("Collider.propagateVoxelChange(): Other collider is not simulated!");if(this.shape!=="voxels")return l.error("Collider.propagateVoxelChange(): Collider is not a voxels collider!");if(A.shape!=="voxels")return l.error("Collider.propagateVoxelChange(): Other collider is not a voxels collider!");this._collider.propagateVoxelChange(A.rawCollider,Q.x,Q.y,Q.z,0,0,0)}removeFromSimulation(){if(!this._requireNotRemoved("removeFromSimulation"))return;if(!this._requireSimulated("removeFromSimulation"))return;if(this._simulation.removeRawCollider(this._collider),this._simulation=void 0,this._collider=void 0,this._parentRigidBody)this._parentRigidBody.unlinkCollider(this);this._parentRigidBody=void 0}setScale(A){if(!this._requireNotRemoved("scale"))return;let Q={x:A.x/this._scale.x,y:A.y/this._scale.y,z:A.z/this._scale.z};this.setRelativePosition({x:this.relativePosition.x*Q.x,y:this.relativePosition.y*Q.y,z:this.relativePosition.z*Q.z});let B=Math.max(this._scale.x,this._scale.z),J=Math.max(A.x,A.z)/B;switch(this._scale=A,this._shape){case"ball":{if(this._collider)this._collider.setRadius(this._collider.radius()*J);else this._colliderDesc.shape.radius*=J;return}case"block":{if(this._collider){let C=this._collider.halfExtents();this._collider.setHalfExtents({x:C.x*Q.x,y:C.y*Q.y,z:C.z*Q.z})}else this._colliderDesc.shape.halfExtents.x*=Q.x,this._colliderDesc.shape.halfExtents.y*=Q.y,this._colliderDesc.shape.halfExtents.z*=Q.z;return}case"capsule":{if(this._collider)this._collider.setHalfHeight(this._collider.halfHeight()*Q.y),this._collider.setRadius(this._collider.radius()*J);else this._colliderDesc.shape.halfHeight*=Q.y,this._colliderDesc.shape.radius*=J;return}case"cone":{if(this._collider)this._collider.setHalfHeight(this._collider.halfHeight()*Q.y),this._collider.setRadius(this._collider.radius()*J);else this._colliderDesc.shape.halfHeight*=Q.y,this._colliderDesc.shape.radius*=J;return}case"cylinder":{if(this._collider)this._collider.setHalfHeight(this._collider.halfHeight()*Q.y),this._collider.setRadius(this._collider.radius()*J);else this._colliderDesc.shape.halfHeight*=Q.y,this._colliderDesc.shape.radius*=J;return}case"round-cylinder":{if(this._collider)this._collider.setHalfHeight(this._collider.halfHeight()*Q.y),this._collider.setRoundRadius(this._collider.roundRadius()*J),this._collider.setRadius(this._collider.radius()*J);else this._colliderDesc.shape.halfHeight=this._colliderDesc.shape.halfHeight*Q.y,this._colliderDesc.shape.borderRadius=this._colliderDesc.shape.borderRadius*J,this._colliderDesc.shape.radius=this._colliderDesc.shape.radius*J;return}case"trimesh":{l.error("Collider.setScale(): Trimesh colliders cannot be scaled at runtime!");return}case"voxels":{l.error("Collider.setScale(): Voxels colliders cannot be scaled!");return}case"wedge":{l.error("Collider.setScale(): Wedge colliders cannot be scaled!");return}default:l.fatalError(`Collider.setScale(): ${this._shape} is not a valid collider shape!`)}}_applyColliderOptions(A){[["bounciness",this.setBounciness.bind(this)],["bouncinessCombineRule",this.setBouncinessCombineRule.bind(this)],["collisionGroups",this.setCollisionGroups.bind(this)],["enabled",this.setEnabled.bind(this)],["friction",this.setFriction.bind(this)],["frictionCombineRule",this.setFrictionCombineRule.bind(this)],["isSensor",this.setSensor.bind(this)],["mass",this.setMass.bind(this)],["onCollision",this.setOnCollision.bind(this)],["relativePosition",this.setRelativePosition.bind(this)],["relativeRotation",this.setRelativeRotation.bind(this)],["tag",this.setTag.bind(this)]].forEach(([B,Y])=>{if(A[B]!==void 0)Y.call(this,A[B])})}_autoAddToSimulation(A){if(A.simulation)this.addToSimulation(A.simulation,A.parentRigidBody)}_buildWedgeConvexHullVertices(A){let{x:Q,y:B,z:Y}=A,J=Q/2,C=Y/2,X=B/2;return new Float32Array([-J,0-X,-C,J,0-X,-C,J,0-X,C,-J,0-X,C,-J,B-X,-C,J,B-X,-C])}_createColliderDesc(A){let{shape:Q,flags:B}=A;switch(Q){case"ball":{if(!A.radius)l.fatalError("Ball collider must have a radius!");return WB.ColliderDesc.ball(A.radius)}case"block":{if(!A.halfExtents)l.fatalError("Block collider must have halfExtents!");return WB.ColliderDesc.cuboid(A.halfExtents.x,A.halfExtents.y,A.halfExtents.z)}case"capsule":{if(!A.halfHeight||!A.radius)l.fatalError("Capsule collider must have halfHeight and radius!");return WB.ColliderDesc.capsule(A.halfHeight,A.radius)}case"cone":{if(!A.radius||!A.halfHeight)l.fatalError("Cone collider must have radius and halfHeight!");return WB.ColliderDesc.cone(A.halfHeight,A.radius)}case"cylinder":{if(!A.radius||!A.halfHeight)l.fatalError("Cylinder collider must have radius and halfHeight!");return WB.ColliderDesc.cylinder(A.halfHeight,A.radius)}case"round-cylinder":{if(!A.radius||!A.halfHeight||!A.borderRadius)l.fatalError("Round cylinder collider must have radius, halfHeight, and borderRadius!");return WB.ColliderDesc.roundCylinder(A.halfHeight,A.radius,A.borderRadius)}case"trimesh":{if(!A.indices||!A.vertices)l.fatalError("Trimesh collider must have vertices and indices!");return WB.ColliderDesc.trimesh(A.vertices,A.indices,B)}case"voxels":{if(!A.coordinates||!A.size)l.fatalError("Voxels collider must have coordinates and size!");return WB.ColliderDesc.voxels(this._coordinatesToInt32Array(A.coordinates),A.size)}case"wedge":{if(!A.extents)l.fatalError("Wedge collider must have extents!");let Y=this._buildWedgeConvexHullVertices(A.extents),J=WB.ColliderDesc.convexHull(Y);if(!J)throw l.fatalError("Failed to create convex hull for wedge collider!"),Error("Convex hull creation failed");return J}default:l.fatalError(`Collider._createColliderDesc(): ${Q} is not a valid collider shape!`)}}_requireSimulated(A){if(!this.isSimulated)l.error(`Collider._requireSimulated(): Collider is not simulated, invoked method: ${A}()`);return this.isSimulated}_requireUnsimulated(A){if(this.isSimulated)l.error(`Collider._requireUnsimulated(): Collider is already simulated, invoked method: ${A}()`);return!this.isSimulated}_requireNotRemoved(A){if(this.isRemoved)l.error(`Collider._requireNotRemoved(): Collider is removed, invoked method: ${A}()`);return!this.isRemoved}_setActiveCollisionTypes(){(this._collider??this._colliderDesc).setActiveCollisionTypes(WB.ActiveCollisionTypes.DYNAMIC_DYNAMIC|WB.ActiveCollisionTypes.DYNAMIC_KINEMATIC|WB.ActiveCollisionTypes.DYNAMIC_FIXED|WB.ActiveCollisionTypes.KINEMATIC_KINEMATIC|WB.ActiveCollisionTypes.KINEMATIC_FIXED)}_coordinatesToInt32Array(A){let Q=new Int32Array(A.length*3);for(let B=0;Bthis.serializeBlockType(Q))}static serializeChunk(A){return{c:this.serializeVector(A.originCoordinate),b:Array.from(A.blocks),r:Array.from(A.blockRotations).flatMap(([Q,B])=>[Q,B.enumIndex])}}static serializeEntity(A){if(!A.world||A.id===void 0)l.fatalError("Serializer.serializeEntity(): Entity is not in a world");return{i:A.id,bt:A.blockTextureUri,bh:A.blockHalfExtents?this.serializeVector(A.blockHalfExtents):void 0,e:A.isEnvironmental,ec:A.emissiveColor?this.serializeRgbColor(A.emissiveColor):void 0,ei:A.emissiveIntensity,m:A.modelUri,ma:A.modelAnimations.map((Q)=>this.serializeEntityModelAnimation(Q)),mo:A.modelNodeOverrides.map((Q)=>this.serializeEntityModelNodeOverride(Q)),mt:A.modelTextureUri,n:A.name,o:A.opacity,ol:A.outline?this.serializeOutline(A.outline):void 0,p:this.serializeVector(A.position),pi:A.positionInterpolationMs,pe:A.parent?A.parent.id:void 0,pn:A.parentNodeName,r:this.serializeQuaternion(A.rotation),ri:A.rotationInterpolationMs,si:A.modelScaleInterpolationMs,sv:A.modelScale?this.serializeVector(A.modelScale):void 0,t:A.tintColor?this.serializeRgbColor(A.tintColor):void 0}}static serializeEntityModelAnimation(A){return{n:A.name,b:A.blendMode,c:A.clampWhenFinished,fi:A.fadesIn,fo:A.fadesOut,l:A.loopMode,p:A.isPlaying&&A.loopMode!==0,pr:A.playbackRate,w:A.weight}}static serializeEntityModelNodeOverride(A){return{n:A.nameMatch,ec:A.emissiveColor?this.serializeRgbColor(A.emissiveColor):void 0,ei:A.emissiveIntensity,h:A.isHidden,p:A.localPosition?this.serializeVector(A.localPosition):void 0,pi:A.localPositionInterpolationMs,r:A.localRotation?this.serializeQuaternion(A.localRotation):void 0,ri:A.localRotationInterpolationMs,s:A.localScale?this.serializeVector(A.localScale):void 0,si:A.localScaleInterpolationMs}}static serializeOutline(A){return{c:A.color?this.serializeRgbColor(A.color):void 0,ci:A.colorIntensity,th:A.thickness,o:A.opacity,oc:A.occluded}}static serializeParticleEmitter(A){if(!A.world||A.id===void 0)l.fatalError("Serializer.serializeParticleEmitter(): ParticleEmitter is not in a world");return{i:A.id,at:A.alphaTest,ce:A.colorEnd?this.serializeRgbColor(A.colorEnd):void 0,cev:A.colorEndVariance?this.serializeRgbColor(A.colorEndVariance):void 0,cs:A.colorStart?this.serializeRgbColor(A.colorStart):void 0,csv:A.colorStartVariance?this.serializeRgbColor(A.colorStartVariance):void 0,cie:A.colorIntensityEnd,ciev:A.colorIntensityEndVariance,cis:A.colorIntensityStart,cisv:A.colorIntensityStartVariance,e:A.attachedToEntity?.isSpawned?A.attachedToEntity.id:void 0,en:A.attachedToEntityNodeName,g:A.gravity?this.serializeVector(A.gravity):void 0,l:A.lifetime,le:A.lockToEmitter,lv:A.lifetimeVariance,mp:A.maxParticles,o:A.offset?this.serializeVector(A.offset):void 0,or:A.orientation?this.serializeParticleEmitterOrientation(A.orientation):void 0,ofr:A.orientationFixedRotation?this.serializeVector(A.orientationFixedRotation):void 0,oe:A.opacityEnd,oev:A.opacityEndVariance,os:A.opacityStart,osv:A.opacityStartVariance,p:A.position?this.serializeVector(A.position):void 0,pa:A.paused,pv:A.positionVariance?this.serializeVector(A.positionVariance):void 0,r:A.rate,rv:A.rateVariance,se:A.sizeEnd,sev:A.sizeEndVariance,ss:A.sizeStart,ssv:A.sizeStartVariance,t:A.transparent,tu:A.textureUri,v:A.velocity?this.serializeVector(A.velocity):void 0,vv:A.velocityVariance?this.serializeVector(A.velocityVariance):void 0}}static serializeParticleEmitterOrientation(A){switch(A){case"billboard":return 0;case"billboardY":return 1;case"fixed":return 2;case"velocity":return 3;default:return 0}}static serializePhysicsDebugRaycast(A){return{o:this.serializeVector(A.origin),d:this.serializeVector(A.direction),l:A.length,h:A.hit}}static serializePlayer(A){return{i:A.id,u:A.username,p:A.profilePictureUrl}}static serializePlayerCamera(A){return{cb:A.collidesWithBlocks,m:A.mode,e:A.attachedToEntity?.isSpawned?A.attachedToEntity.id:void 0,et:A.targetEntity?.isSpawned?A.targetEntity.id:void 0,fo:A.filmOffset,ffo:A.forwardOffset,fv:A.fov,h:Array.from(A.viewModelHiddenNodes),mp:A.viewModelPitchesWithCamera,my:A.viewModelYawsWithCamera,o:A.offset?this.serializeVector(A.offset):void 0,p:A.attachedToPosition?this.serializeVector(A.attachedToPosition):void 0,pt:A.targetPosition?this.serializeVector(A.targetPosition):void 0,s:Array.from(A.viewModelShownNodes),sa:A.shoulderAngle,z:A.zoom}}static serializeQuaternion(A){return[A.x,A.y,A.z,A.w]}static serializeRgbColor(A){return[A.r,A.g,A.b]}static serializeSceneUI(A){if(A.id===void 0)l.fatalError("Serializer.serializeSceneUI(): SceneUI is not loaded!");return{i:A.id,e:A.attachedToEntity?.isSpawned?A.attachedToEntity.id:void 0,o:A.offset?this.serializeVector(A.offset):void 0,p:A.position?this.serializeVector(A.position):void 0,s:A.state,t:A.templateId,v:A.viewDistance}}static serializeVector(A){return[A.x,A.y,A.z]}static serializeVectorBoolean(A){return[A.x,A.y,A.z]}static serializeWorld(A){return{i:A.id,ac:this.serializeRgbColor(A.ambientLightColor),ai:A.ambientLightIntensity,dc:this.serializeRgbColor(A.directionalLightColor),di:A.directionalLightIntensity,dp:this.serializeVector(A.directionalLightPosition),fc:A.fogColor?this.serializeRgbColor(A.fogColor):void 0,ff:A.fogFar,fn:A.fogNear,n:A.name,s:A.skyboxUri,si:A.skyboxIntensity,t:A.loop.timestepS}}}var PZA;((Y)=>{Y[Y.PLAYING=0]="PLAYING";Y[Y.PAUSED=1]="PAUSED";Y[Y.STOPPED=2]="STOPPED"})(PZA||={});var uf;((B)=>{B[B.ADDITIVE=0]="ADDITIVE";B[B.NORMAL=1]="NORMAL"})(uf||={});var $Z;((Y)=>{Y[Y.ONCE=0]="ONCE";Y[Y.LOOP=1]="LOOP";Y[Y.PING_PONG=2]="PING_PONG"})($Z||={});var df;((U)=>{U.PAUSE="ENTITY_MODEL_ANIMATION.PAUSE";U.PLAY="ENTITY_MODEL_ANIMATION.PLAY";U.RESTART="ENTITY_MODEL_ANIMATION.RESTART";U.SET_BLEND_MODE="ENTITY_MODEL_ANIMATION.SET_BLEND_MODE";U.SET_CLAMP_WHEN_FINISHED="ENTITY_MODEL_ANIMATION.SET_CLAMP_WHEN_FINISHED";U.SET_FADES_IN="ENTITY_MODEL_ANIMATION.SET_FADES_IN";U.SET_FADES_OUT="ENTITY_MODEL_ANIMATION.SET_FADES_OUT";U.SET_LOOP_MODE="ENTITY_MODEL_ANIMATION.SET_LOOP_MODE";U.SET_PLAYBACK_RATE="ENTITY_MODEL_ANIMATION.SET_PLAYBACK_RATE";U.SET_WEIGHT="ENTITY_MODEL_ANIMATION.SET_WEIGHT";U.STOP="ENTITY_MODEL_ANIMATION.STOP"})(df||={});class CE{_name;_blendMode=1;_clampWhenFinished=!1;_entity;_fadesIn=!0;_fadesOut=!0;_loopMode=0;_state=2;_playbackRate=1;_weight=1;constructor(A){this._name=A.name,this._entity=A.entity,this._blendMode=A.blendMode??this._blendMode,this._clampWhenFinished=A.clampWhenFinished??this._clampWhenFinished,this._fadesIn=A.fadesIn??this._fadesIn,this._fadesOut=A.fadesOut??this._fadesOut,this._loopMode=A.loopMode??this._loopMode,this._state=A.play?0:this._state,this._playbackRate=A.playbackRate??this._playbackRate,this._weight=A.weight??this._weight}get name(){return this._name}get blendMode(){return this._blendMode}get clampWhenFinished(){return this._clampWhenFinished}get entity(){return this._entity}get fadesIn(){return this._fadesIn}get fadesOut(){return this._fadesOut}get isPlaying(){return this._state===0}get isPaused(){return this._state===1}get isStopped(){return this._state===2}get loopMode(){return this._loopMode}get playbackRate(){return this._playbackRate}get weight(){return this._weight}pause(){if(this._state===1)return;if(this._state=1,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.PAUSE",{entityModelAnimation:this})}play(){if(this._state===0)return;if(this._state=0,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.PLAY",{entityModelAnimation:this})}restart(){if(this._state=0,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.RESTART",{entityModelAnimation:this})}setBlendMode(A){if(this._blendMode===A)return;if(this._blendMode=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_BLEND_MODE",{entityModelAnimation:this,blendMode:A})}setClampWhenFinished(A){if(this._clampWhenFinished===A)return;if(this._clampWhenFinished=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_CLAMP_WHEN_FINISHED",{entityModelAnimation:this,clampWhenFinished:A})}setFadesIn(A){if(this._fadesIn===A)return;if(this._fadesIn=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_FADES_IN",{entityModelAnimation:this,fadesIn:A})}setFadesOut(A){if(this._fadesOut===A)return;if(this._fadesOut=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_FADES_OUT",{entityModelAnimation:this,fadesOut:A})}setLoopMode(A){if(this._loopMode===A)return;if(this._loopMode=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_LOOP_MODE",{entityModelAnimation:this,loopMode:A})}setPlaybackRate(A){if(this._playbackRate===A)return;if(this._playbackRate=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_PLAYBACK_RATE",{entityModelAnimation:this,playbackRate:A})}setWeight(A){if(this._weight===A)return;if(this._weight=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.SET_WEIGHT",{entityModelAnimation:this,weight:A})}stop(){if(this._state===2)return;if(this._state=2,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_ANIMATION.STOP",{entityModelAnimation:this})}serialize(){return GQ.serializeEntityModelAnimation(this)}}var cf;((F)=>{F.SET_EMISSIVE_COLOR="ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_COLOR";F.SET_EMISSIVE_INTENSITY="ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_INTENSITY";F.SET_HIDDEN="ENTITY_MODEL_NODE_OVERRIDE.SET_HIDDEN";F.SET_LOCAL_POSITION="ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION";F.SET_LOCAL_POSITION_INTERPOLATION_MS="ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION_INTERPOLATION_MS";F.SET_LOCAL_ROTATION="ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION";F.SET_LOCAL_ROTATION_INTERPOLATION_MS="ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION_INTERPOLATION_MS";F.SET_LOCAL_SCALE="ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE";F.SET_LOCAL_SCALE_INTERPOLATION_MS="ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE_INTERPOLATION_MS"})(cf||={});class XE{_nameMatch;_entity;_emissiveColor;_emissiveIntensity;_hidden=!1;_isRemoved=!1;_localPosition;_localPositionInterpolationMs;_localRotation;_localRotationInterpolationMs;_localScale;_localScaleInterpolationMs;constructor(A){this._nameMatch=A.nameMatch.toLowerCase(),this._entity=A.entity,this._emissiveColor=A.emissiveColor,this._emissiveIntensity=A.emissiveIntensity,this._hidden=A.hidden??this._hidden,this._localPosition=A.localPosition,this._localPositionInterpolationMs=A.localPositionInterpolationMs,this._localRotation=A.localRotation,this._localRotationInterpolationMs=A.localRotationInterpolationMs,this._localScale=typeof A.localScale==="number"?{x:A.localScale,y:A.localScale,z:A.localScale}:A.localScale,this._localScaleInterpolationMs=A.localScaleInterpolationMs}get nameMatch(){return this._nameMatch}get name(){return this._nameMatch}get entity(){return this._entity}get emissiveColor(){return this._emissiveColor}get emissiveIntensity(){return this._emissiveIntensity}get isHidden(){return this._hidden}get localPosition(){return this._localPosition}get localPositionInterpolationMs(){return this._localPositionInterpolationMs}get localRotation(){return this._localRotation}get localRotationInterpolationMs(){return this._localRotationInterpolationMs}get localScale(){return this._localScale}get localScaleInterpolationMs(){return this._localScaleInterpolationMs}remove(){this._entity.removeModelNodeOverride(this.nameMatch)}setEmissiveColor(A){if(this._isRemoved)return;if(!A&&!this._emissiveColor||A&&this._emissiveColor&&A.r===this._emissiveColor.r&&A.g===this._emissiveColor.g&&A.b===this._emissiveColor.b)return;if(this._emissiveColor=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_COLOR",{entityModelNodeOverride:this,emissiveColor:A})}setEmissiveIntensity(A){if(this._isRemoved)return;if(this._emissiveIntensity===A)return;if(this._emissiveIntensity=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_EMISSIVE_INTENSITY",{entityModelNodeOverride:this,emissiveIntensity:A})}setHidden(A){if(this._isRemoved)return;if(this._hidden===A)return;if(this._hidden=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_HIDDEN",{entityModelNodeOverride:this,hidden:A})}setLocalPosition(A){if(this._isRemoved)return;if(A===this._localPosition)return;if(A&&this._localPosition&&this._localPosition.x===A.x&&this._localPosition.y===A.y&&this._localPosition.z===A.z)return;if(this._localPosition=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION",{entityModelNodeOverride:this,localPosition:A})}setLocalPositionInterpolationMs(A){if(this._isRemoved)return;if(A===this._localPositionInterpolationMs)return;if(this._localPositionInterpolationMs=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_POSITION_INTERPOLATION_MS",{entityModelNodeOverride:this,interpolationMs:A})}setLocalRotation(A){if(this._isRemoved)return;if(A===this._localRotation)return;if(A&&this._localRotation&&this._localRotation.x===A.x&&this._localRotation.y===A.y&&this._localRotation.z===A.z&&this._localRotation.w===A.w)return;if(this._localRotation=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION",{entityModelNodeOverride:this,localRotation:A})}setLocalRotationInterpolationMs(A){if(this._isRemoved)return;if(A===this._localRotationInterpolationMs)return;if(this._localRotationInterpolationMs=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_ROTATION_INTERPOLATION_MS",{entityModelNodeOverride:this,interpolationMs:A})}setLocalScale(A){if(this._isRemoved)return;if(A===this._localScale)return;if(typeof A==="number")A={x:A,y:A,z:A};if(A&&this._localScale&&this._localScale.x===A.x&&this._localScale.y===A.y&&this._localScale.z===A.z)return;if(this._localScale=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE",{entityModelNodeOverride:this,localScale:A})}setLocalScaleInterpolationMs(A){if(this._isRemoved)return;if(A===this._localScaleInterpolationMs)return;if(this._localScaleInterpolationMs=A,this._entity.isSpawned)this._entity.emitWithWorld(this._entity.world,"ENTITY_MODEL_NODE_OVERRIDE.SET_LOCAL_SCALE_INTERPOLATION_MS",{entityModelNodeOverride:this,interpolationMs:A})}serialize(){return GQ.serializeEntityModelNodeOverride(this)}markRemoved(){this._isRemoved=!0}}var TZA={type:"dynamic",softCcdPrediction:1},SZA=0.0016,kZA=Math.cos(0.026),XD;((q)=>{q.BLOCK_COLLISION="ENTITY.BLOCK_COLLISION";q.BLOCK_CONTACT_FORCE="ENTITY.BLOCK_CONTACT_FORCE";q.DESPAWN="ENTITY.DESPAWN";q.ENTITY_COLLISION="ENTITY.ENTITY_COLLISION";q.ENTITY_CONTACT_FORCE="ENTITY.ENTITY_CONTACT_FORCE";q.INTERACT="ENTITY.INTERACT";q.REMOVE_MODEL_NODE_OVERRIDE="ENTITY.REMOVE_MODEL_NODE_OVERRIDE";q.SET_BLOCK_TEXTURE_URI="ENTITY.SET_BLOCK_TEXTURE_URI";q.SET_EMISSIVE_COLOR="ENTITY.SET_EMISSIVE_COLOR";q.SET_EMISSIVE_INTENSITY="ENTITY.SET_EMISSIVE_INTENSITY";q.SET_MODEL_SCALE="ENTITY.SET_MODEL_SCALE";q.SET_MODEL_SCALE_INTERPOLATION_MS="ENTITY.SET_MODEL_SCALE_INTERPOLATION_MS";q.SET_MODEL_TEXTURE_URI="ENTITY.SET_MODEL_TEXTURE_URI";q.SET_OPACITY="ENTITY.SET_OPACITY";q.SET_OUTLINE="ENTITY.SET_OUTLINE";q.SET_PARENT="ENTITY.SET_PARENT";q.SET_POSITION_INTERPOLATION_MS="ENTITY.SET_POSITION_INTERPOLATION_MS";q.SET_ROTATION_INTERPOLATION_MS="ENTITY.SET_ROTATION_INTERPOLATION_MS";q.SET_TINT_COLOR="ENTITY.SET_TINT_COLOR";q.SPAWN="ENTITY.SPAWN";q.TICK="ENTITY.TICK";q.UPDATE_POSITION="ENTITY.UPDATE_POSITION";q.UPDATE_ROTATION="ENTITY.UPDATE_ROTATION"})(XD||={});class X0 extends y7{_id;_blockHalfExtents;_blockTextureUri;_controller;_isEnvironmental=!1;_modelAnimations=new Map;_modelNodeOverrides=new Map;_modelPreferredShape;_modelScale={x:1,y:1,z:1};_modelScaleInterpolationMs;_modelTextureUri;_modelUri;_name;_opacity;_outline;_parent;_parentNodeName;_positionInterpolationMs;_rotationInterpolationMs;_tag;_tintColor;_emissiveColor;_emissiveIntensity;_lastUpdatedPosition={x:0,y:0,z:0};_lastUpdatedRotation={x:0,y:0,z:0,w:1};_lastParentlessType="dynamic";_world;_positionUpdateThresholdSq;_rotationUpdateThreshold;constructor(A){let Q="blockTextureUri"in A,B="modelUri"in A;if(!Q===!B)l.fatalError("Entity.constructor(): Entity data must include a blockTextureUri or modelUri, but not both.");if(Q&&!A.blockHalfExtents)l.fatalError("Entity.constructor(): Block entity must have blockHalfExtents!");if(A.parent&&!A.parent.isSpawned)l.fatalError("Entity.constructor(): Parent entity must be spawned before child entity!");if(A.parent?.modelUri&&A.parentNodeName&&!yY.instance.modelHasNode(A.parent.modelUri,A.parentNodeName))l.fatalError(`Entity.constructor(): Parent node name ${A.parentNodeName} not found in parent model ${A.parent.modelUri}!`);super(A.rigidBodyOptions??TZA);if(Q)this._blockHalfExtents=A.blockHalfExtents,this._blockTextureUri=A.blockTextureUri;if(B){let Y=this._modelScale=typeof A.modelScale==="number"?{x:A.modelScale,y:A.modelScale,z:A.modelScale}:A.modelScale??{x:1,y:1,z:1};if(this._modelPreferredShape=A.modelPreferredShape,this._modelScale=Y,this._modelScaleInterpolationMs=A.modelScaleInterpolationMs,this._modelTextureUri=A.modelTextureUri,this._modelUri=A.modelUri,!this._modelUri.startsWith("http"))if(yY.instance.hasModel(this._modelUri))A.modelAnimations?.forEach((J)=>{this._modelAnimations.set(J.name,new CE({...J,entity:this}))});else l.error(`Entity.constructor(): Model ${this._modelUri} does not exist!`);A.modelNodeOverrides?.forEach((J)=>{this._modelNodeOverrides.set(J.nameMatch.toLowerCase(),new XE({...J,entity:this}))})}if(this._emissiveColor=A.emissiveColor,this._emissiveIntensity=A.emissiveIntensity,this._isEnvironmental=A.isEnvironmental??!1,this._name=A.name??"Nameless",this._opacity=A.opacity??1,this._outline=A.outline,this._parent=A.parent,this._parentNodeName=A.parentNodeName,this._positionInterpolationMs=A.positionInterpolationMs,this._rotationInterpolationMs=A.rotationInterpolationMs,this._tag=A.tag,this._tintColor=A.tintColor,this._positionUpdateThresholdSq=SZA,this._rotationUpdateThreshold=kZA,A.controller)this._controller=A.controller,this._controller.attach(this)}get id(){return this._id}get availableModelAnimationNames(){return this.isModelEntity?yY.instance.getAnimationNames(this._modelUri):[]}get availableModelNodeNames(){return this.isModelEntity?yY.instance.getNodeNames(this._modelUri):[]}get blockHalfExtents(){return this._blockHalfExtents}get blockTextureUri(){return this._blockTextureUri}get controller(){return this._controller}get emissiveColor(){return this._emissiveColor}get emissiveIntensity(){return this._emissiveIntensity}get depth(){return this.isModelEntity?yY.instance.getDepth(this._modelUri)*this._modelScale.z:this._blockHalfExtents.z*2}get height(){return this.isModelEntity?yY.instance.getHeight(this._modelUri)*this._modelScale.y:this._blockHalfExtents.y*2}get modelAnimations(){return Array.from(this._modelAnimations.values())}get modelNodeOverrides(){return Array.from(this._modelNodeOverrides.values())}get modelPreferredShape(){return this._modelPreferredShape}get modelScale(){return this._modelScale}get modelScaleInterpolationMs(){return this._modelScaleInterpolationMs}get modelTextureUri(){return this._modelTextureUri}get modelUri(){return this._modelUri}get name(){return this._name}get opacity(){return this._opacity}get outline(){return this._outline}get parent(){return this._parent}get parentNodeName(){return this._parentNodeName}get positionInterpolationMs(){return this._positionInterpolationMs}get rotationInterpolationMs(){return this._rotationInterpolationMs}get tag(){return this._tag}get tintColor(){return this._tintColor}get isBlockEntity(){return!!this._blockTextureUri}get isEnvironmental(){return this._isEnvironmental}get isModelEntity(){return!!this._modelUri}get isSpawned(){return!!this._world}get width(){return this.isModelEntity?yY.instance.getWidth(this._modelUri)*this._modelScale.x:this._blockHalfExtents.x*2}get world(){return this._world}clearModelNodeOverrides(){if(!this.isModelEntity)return;this.removeModelNodeOverrides(Array.from(this._modelNodeOverrides.keys()))}despawn(){if(!this._requireSpawned("despawn"))return;if(this._world.entityManager.getEntityChildren(this).forEach((A)=>{A.despawn()}),this._controller)this._controller.detach(this),this._controller.despawn(this);if(this.emitWithWorld(this._world,"ENTITY.DESPAWN",{entity:this}),this.isSimulated)this.removeFromSimulation();this._world.entityManager.unregisterEntity(this),this._world.audioManager.unregisterEntityAttachedAudios(this),this._world.particleEmitterManager.despawnEntityAttachedParticleEmitters(this),this._world.sceneUIManager.unloadEntityAttachedSceneUIs(this),this._id=void 0,this._world=void 0}getModelAnimation(A){if(!this.isModelEntity)return;let Q=this._modelAnimations.get(A);if(!Q)Q=new CE({name:A,entity:this}),this._modelAnimations.set(A,Q);return Q}setModelAnimationsPlaybackRate(A){if(!this.isModelEntity)return;for(let Q of this._modelAnimations.values())Q.setPlaybackRate(A)}startModelLoopedAnimations(A){if(!this.isModelEntity)return;for(let Q of A){let B=this.getModelAnimation(Q);if(!B)continue;B.setLoopMode(1),B.play()}}startModelOneshotAnimations(A){if(!this.isModelEntity)return;for(let Q of A){let B=this.getModelAnimation(Q);if(!B)continue;B.setLoopMode(0),B.play()}}setModelNodeEmissiveColor(A,Q){let B=this.getModelNodeOverride(A);if(B)B.setEmissiveColor(Q)}setModelNodeEmissiveIntensity(A,Q){let B=this.getModelNodeOverride(A);if(B)B.setEmissiveIntensity(Q)}getModelNodeOverride(A){if(!this.isModelEntity)return;A=A.toLowerCase();let Q=this._modelNodeOverrides.get(A);if(!Q)Q=new XE({nameMatch:A,entity:this}),this._modelNodeOverrides.set(A,Q);return Q}interact(A,Q){if(!this._requireSpawned("interact"))return;this.emitWithWorld(this._world,"ENTITY.INTERACT",{entity:this,player:A,raycastHit:Q})}setBlockTextureUri(A){if(this._blockTextureUri===A)return;if(this._blockTextureUri=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_BLOCK_TEXTURE_URI",{entity:this,blockTextureUri:A})}removeModelNodeOverride(A){if(!this.isModelEntity)return;A=A.toLowerCase();let Q=this._modelNodeOverrides.get(A);if(!Q)return;if(Q.markRemoved(),this._modelNodeOverrides.delete(A),this.isSpawned)this.emitWithWorld(this._world,"ENTITY.REMOVE_MODEL_NODE_OVERRIDE",{entity:this,entityModelNodeOverride:Q})}removeModelNodeOverrides(A){if(!this.isModelEntity)return;for(let Q of A)this.removeModelNodeOverride(Q)}setEmissiveColor(A){if(!A&&!this._emissiveColor||A&&this._emissiveColor&&A.r===this._emissiveColor.r&&A.g===this._emissiveColor.g&&A.b===this._emissiveColor.b)return;if(this._emissiveColor=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_EMISSIVE_COLOR",{entity:this,emissiveColor:A})}setEmissiveIntensity(A){if(this._emissiveIntensity===A)return;if(this._emissiveIntensity=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_EMISSIVE_INTENSITY",{entity:this,emissiveIntensity:A})}setModelScale(A){if(!this.isModelEntity)return;if(typeof A==="number")A={x:A,y:A,z:A};if(this._modelScale===A)return;let Q={x:A.x/this._modelScale.x,y:A.y/this._modelScale.y,z:A.z/this._modelScale.z};if(this._modelScale=A,this.colliders.forEach((B)=>B.setScale(Q)),this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_MODEL_SCALE",{entity:this,modelScale:A})}setModelScaleInterpolationMs(A){if(!this.isModelEntity)return;if(this._modelScaleInterpolationMs===A)return;if(this._modelScaleInterpolationMs=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_MODEL_SCALE_INTERPOLATION_MS",{entity:this,interpolationMs:A})}setModelTextureUri(A){if(!this.isModelEntity||this._modelTextureUri===A)return;if(this._modelTextureUri=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_MODEL_TEXTURE_URI",{entity:this,modelTextureUri:A})}setOpacity(A){if(this._opacity===A)return;if(this._opacity=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_OPACITY",{entity:this,opacity:A})}setOutline(A,Q){if(this._outline=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_OUTLINE",{entity:this,forPlayer:Q,outline:A})}setParent(A,Q,B,Y){if(A&&!A.isSpawned)return l.error("Entity.setParent(): Parent entity is not spawned, cannot set parent!");if(!this._parent&&A)this._lastParentlessType=this.type;if(this._parent=A,this._parentNodeName=Q,!this.isSpawned)return;if(this.colliders.forEach((J)=>J.setEnabled(!A)),this.setType(!A?this._lastParentlessType:"kinematic_velocity"),this.setPosition(B??{x:0,y:0,z:0}),this.setRotation(Y??{x:0,y:0,z:0,w:1}),!this.isKinematicPositionBased)this.resetAngularVelocity(),this.resetForces(),this.resetLinearVelocity(),this.resetTorques();this.emitWithWorld(this._world,"ENTITY.SET_PARENT",{entity:this,parent:A,parentNodeName:Q})}setPositionInterpolationMs(A){if(this._positionInterpolationMs===A)return;if(this._positionInterpolationMs=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_POSITION_INTERPOLATION_MS",{entity:this,interpolationMs:A})}setRotationInterpolationMs(A){if(this._rotationInterpolationMs===A)return;if(this._rotationInterpolationMs=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_ROTATION_INTERPOLATION_MS",{entity:this,interpolationMs:A})}setTintColor(A){if(!A&&!this._tintColor||A&&this._tintColor&&A.r===this._tintColor.r&&A.g===this._tintColor.g&&A.b===this._tintColor.b)return;if(this._tintColor=A,this.isSpawned)this.emitWithWorld(this._world,"ENTITY.SET_TINT_COLOR",{entity:this,tintColor:A})}spawn(A,Q,B){if(this.isSpawned)return l.error(`Entity.spawn(): Entity ${this._name} is already spawned with id ${this._id}!`);if(!this.isSimulated)this.addToSimulation(A.simulation);if(this._blockTextureUri&&this._blockHalfExtents&&this.numColliders===0)this.addChildColliderToSimulation(new h9(h9.optionsFromBlockHalfExtents(this._blockHalfExtents)));if(this._modelUri&&this.numColliders===0&&this._modelPreferredShape!=="none")this.addChildColliderToSimulation(new h9(h9.optionsFromModelUri(this._modelUri,this._modelScale,this._modelPreferredShape)));if(this.colliders.forEach((Y)=>{if(this.hasListeners("ENTITY.BLOCK_COLLISION")||this.hasListeners("ENTITY.ENTITY_COLLISION"))Y.enableCollisionEvents(!0);if(this.hasListeners("ENTITY.BLOCK_CONTACT_FORCE")||this.hasListeners("ENTITY.ENTITY_CONTACT_FORCE"))Y.enableContactForceEvents(!0);if(LC.isDefaultCollisionGroups(Y.collisionGroups)){let J=this.isEnvironmental?[8]:[Y.isSensor?4:2],C=this.isEnvironmental?[65535&~8&~1]:[65535];Y.setCollisionGroups({belongsTo:J,collidesWith:C})}}),this.setPosition(Q),B)this.setRotation(B);if(this._id=A.entityManager.registerEntity(this),this._world=A,this._controller)this._controller.spawn(this);if(this._parent)this.setParent(this._parent,this._parentNodeName,Q,B);this.colliders.forEach((Y)=>{A.simulation.colliderMap.setColliderEntity(Y,this)}),this.emitWithWorld(A,"ENTITY.SPAWN",{entity:this})}stopAllModelAnimations(A){for(let Q of this._modelAnimations.values()){if(A?.(Q))continue;Q.stop()}}stopModelAnimations(A){for(let Q of A){let B=this._modelAnimations.get(Q);if(!B)continue;B.stop()}}checkAndEmitUpdates(){if(!this._requireSpawned("checkAndEmitUpdates"))return;let A=this.position,Q=this.rotation;if(this._rotationExceedsThreshold(Q,this._lastUpdatedRotation))this._lastUpdatedRotation=Q,this.emitWithWorld(this._world,"ENTITY.UPDATE_ROTATION",{entity:this,rotation:Q});if(this._positionExceedsThreshold(A,this._lastUpdatedPosition))this._lastUpdatedPosition=A,this.emitWithWorld(this._world,"ENTITY.UPDATE_POSITION",{entity:this,position:A})}serialize(){return GQ.serializeEntity(this)}tick(A){if(this.emit("ENTITY.TICK",{entity:this,tickDeltaMs:A}),this._controller)this._controller.tick(this,A)}_positionExceedsThreshold(A,Q){let B=A.x-Q.x,Y=A.y-Q.y,J=A.z-Q.z;return B*B+Y*Y+J*J>this._positionUpdateThresholdSq}_requireSpawned(A){if(!this.isSpawned)l.error(`Entity._requireSpawned(): Entity ${this._name} is not spawned, cannot invoke ${A}()!`);return this.isSpawned}_rotationExceedsThreshold(A,Q){return Math.abs(A.x*Q.x+A.y*Q.y+A.z*Q.z+A.w*Q.w){X.ATTACH="BASE_ENTITY_CONTROLLER.ATTACH";X.DESPAWN="BASE_ENTITY_CONTROLLER.DESPAWN";X.DETACH="BASE_ENTITY_CONTROLLER.DETACH";X.SPAWN="BASE_ENTITY_CONTROLLER.SPAWN";X.TICK="BASE_ENTITY_CONTROLLER.TICK";X.TICK_WITH_PLAYER_INPUT="BASE_ENTITY_CONTROLLER.TICK_WITH_PLAYER_INPUT"})(_ZA||={});class UZ extends BQ{attach(A){this.emit("BASE_ENTITY_CONTROLLER.ATTACH",{entity:A})}despawn(A){this.emit("BASE_ENTITY_CONTROLLER.DESPAWN",{entity:A})}detach(A){this.emit("BASE_ENTITY_CONTROLLER.DETACH",{entity:A})}spawn(A){this.emit("BASE_ENTITY_CONTROLLER.SPAWN",{entity:A})}tickWithPlayerInput(A,Q,B,Y){this.emit("BASE_ENTITY_CONTROLLER.TICK_WITH_PLAYER_INPUT",{entity:A,input:Q,cameraOrientation:B,deltaTimeMs:Y})}tick(A,Q){this.emit("BASE_ENTITY_CONTROLLER.TICK",{entity:A,deltaTimeMs:Q})}}var vZA=0.099856;class EZ extends UZ{faceSpeed=0;idleLoopedAnimations=[];idleLoopedAnimationsSpeed;jumpOneshotAnimations=[];moveLoopedAnimations=[];moveLoopedAnimationsSpeed;moveSpeed=0;_faceTarget;_jumpHeight=0;_moveCompletesWhenStuck=!1;_moveIgnoreAxes={};_moveStartMoveAnimations=!1;_moveStartIdleAnimationsOnCompletion=!0;_moveStoppingDistanceSquared=vZA;_moveStuckAccumulatorMs=0;_moveStuckLastPosition;_moveTarget;_onFace;_onFaceComplete;_onMove;_onMoveComplete;_stopFaceRequested=!1;_stopMoveRequested=!1;constructor(A={}){super();this.idleLoopedAnimations=A.idleLoopedAnimations??this.idleLoopedAnimations,this.idleLoopedAnimationsSpeed=A.idleLoopedAnimationsSpeed??this.idleLoopedAnimationsSpeed,this.jumpOneshotAnimations=A.jumpOneshotAnimations??this.jumpOneshotAnimations,this.moveLoopedAnimations=A.moveLoopedAnimations??this.moveLoopedAnimations,this.moveLoopedAnimationsSpeed=A.moveLoopedAnimationsSpeed??this.moveLoopedAnimationsSpeed}spawn(A){super.spawn(A),this._startIdleAnimations(A)}face(A,Q,B){this._faceTarget=A,this.faceSpeed=Q,this._onFace=B?.faceCallback,this._onFaceComplete=B?.faceCompleteCallback}jump(A){this._jumpHeight=A}move(A,Q,B){this.moveSpeed=Q,this._moveCompletesWhenStuck=B?.moveCompletesWhenStuck??!1,this._moveIgnoreAxes=B?.moveIgnoreAxes??{},this._moveStartIdleAnimationsOnCompletion=B?.moveStartIdleAnimationsOnCompletion??!0,this._moveStartMoveAnimations=!0,this._moveStoppingDistanceSquared=B?.moveStoppingDistance?B.moveStoppingDistance**2:vZA,this._moveTarget=A,this._onMove=B?.moveCallback,this._onMoveComplete=B?.moveCompleteCallback,this._moveStuckAccumulatorMs=0,this._moveStuckLastPosition=void 0}stopFace(){this._stopFaceRequested=!0}stopMove(){this._stopMoveRequested=!0}tick(A,Q){if(super.tick(A,Q),!this._moveTarget&&!this._faceTarget&&!this._jumpHeight)return;if(this._moveStartMoveAnimations)this._startMoveAnimations(A),this._moveStartMoveAnimations=!1;let B=Q/1000,Y=A.position;if(A.isDynamic&&this._jumpHeight>0){let J=Math.abs(A.world.simulation.gravity.y),C=Math.sqrt(2*J*this._jumpHeight);A.applyImpulse({x:0,y:C*A.mass,z:0}),this._jumpHeight=0,this._startJumpAnimations(A)}if(this._moveTarget){let J={x:this._moveIgnoreAxes.x?0:this._moveTarget.x-Y.x,y:this._moveIgnoreAxes.y?0:this._moveTarget.y-Y.y,z:this._moveIgnoreAxes.z?0:this._moveTarget.z-Y.z},C=J.x*J.x+J.y*J.y+J.z*J.z,X=!1;if(this._moveCompletesWhenStuck){if(this._moveStuckAccumulatorMs+=Q,this._moveStuckAccumulatorMs>=500){if(this._moveStuckLastPosition){let G=Y.x-this._moveStuckLastPosition.x,W=Y.y-this._moveStuckLastPosition.y,F=Y.z-this._moveStuckLastPosition.z;X=Math.sqrt(G*G+W*W+F*F)this._moveStoppingDistanceSquared&&!this._stopMoveRequested&&!X){let G=Math.sqrt(C),W=this.moveSpeed*B,Z=Math.min(G,W)/G,U={x:Y.x+J.x*Z,y:Y.y+J.y*Z,z:Y.z+J.z*Z};if(A.setPosition(U),this._onMove)this._onMove(U,this._moveTarget)}else{if(this._moveStuckAccumulatorMs=0,this._moveStuckLastPosition=void 0,this._moveTarget=void 0,this._stopMoveRequested=!1,this._moveStartIdleAnimationsOnCompletion)this._startIdleAnimations(A);if(this._onMoveComplete){let G=this._onMoveComplete;this._onMove=void 0,this._onMoveComplete=void 0,G(Y)}}}if(this._faceTarget){let J={x:this._faceTarget.x-Y.x,z:this._faceTarget.z-Y.z},C=Math.atan2(-J.x,-J.z),X=A.rotation,G=Math.atan2(2*(X.w*X.y),1-2*(X.y*X.y)),W=C-G;while(W>Math.PI)W-=2*Math.PI;while(W<-Math.PI)W+=2*Math.PI;if(Math.abs(W)>0.01&&!this._stopFaceRequested){let F=this.faceSpeed*B,Z=Math.abs(W){if(this._behavior)this._behavior.tick(this,this._world,J)})}get isSpawned(){return this._spawned}get world(){return this._world}get controller(){return this.entity.controller}setBehavior(A){this._behavior=A}spawn(A){if(this._spawned)return;let Q=A??{x:0,y:10,z:0};this.entity.spawn(this._world,Q),this._spawned=!0}teleport(A){if(!this._spawned)return;this.entity.setPosition(A)}despawn(){if(!this._spawned)return;this.entity.despawn(),this._spawned=!1}}class G9{static _instance;static get instance(){if(!G9._instance)G9._instance=new G9;return G9._instance}_bots=new Map;get botCount(){return this._bots.size}spawnBot(A,Q){let B=new GD(A,Q);return B.spawn(Q?.spawnPosition),this._bots.set(B.id,B),B}spawnBots(A,Q,B){let Y=[];for(let J=0;J=this._changeIntervalMs)this._elapsed=0,this._pickNewTarget(A)}_pickNewTarget(A){let Q=Math.random()*Math.PI*2,B=Math.random()*this._moveRadius,Y=this._originX+Math.cos(Q)*B,J=this._originZ+Math.sin(Q)*B,C=A.entity.position;A.controller.move({x:Y,y:C.y,z:J},this._moveSpeed),A.controller.face({x:Y,y:C.y,z:J},5)}}class FD{name="chase";_chaseSpeed;_detectionRadius;_updateIntervalMs;_elapsed=0;constructor(A){this._chaseSpeed=A?.chaseSpeed??5,this._detectionRadius=A?.detectionRadius??50,this._updateIntervalMs=A?.updateIntervalMs??500}tick(A,Q,B){if(!A.isSpawned)return;if(this._elapsed+=B,this._elapsed=3000)this._moveElapsed=0,this._moveToRandom(A);if(this._elapsed+=B,this._elapsed{Y.post("Profiler.enable",()=>{Y.post("Profiler.start",()=>{setTimeout(()=>{Y.post("Profiler.stop",(X,{profile:G})=>{if(Y.post("Profiler.disable"),Y.disconnect(),X){C(X);return}if(Q)yZA(Q,JSON.stringify(G));J(G)})},A)})})})}static async captureHeapSnapshot(A){let Q=await gZA();if(!Q)return console.warn("CpuProfiler: node:inspector not available in this runtime"),"";let B=new Q.Session;B.connect();let Y="";return B.on("HeapProfiler.addHeapSnapshotChunk",(J)=>{let C=J.params?.chunk;if(typeof C==="string")Y+=C}),new Promise((J,C)=>{B.post("HeapProfiler.takeHeapSnapshot",void 0,(X)=>{if(B.disconnect(),X){C(X);return}if(A)yZA(A,Y);J(Y)})})}}var hZA=5,pf;((U)=>{U.PAUSE="AUDIO.PAUSE";U.PLAY="AUDIO.PLAY";U.PLAY_RESTART="AUDIO.PLAY_RESTART";U.SET_ATTACHED_TO_ENTITY="AUDIO.SET_ATTACHED_TO_ENTITY";U.SET_CUTOFF_DISTANCE="AUDIO.SET_CUTOFF_DISTANCE";U.SET_DETUNE="AUDIO.SET_DETUNE";U.SET_DISTORTION="AUDIO.SET_DISTORTION";U.SET_POSITION="AUDIO.SET_POSITION";U.SET_PLAYBACK_RATE="AUDIO.SET_PLAYBACK_RATE";U.SET_REFERENCE_DISTANCE="AUDIO.SET_REFERENCE_DISTANCE";U.SET_VOLUME="AUDIO.SET_VOLUME"})(pf||={});class $D extends BQ{_id;_attachedToEntity;_cutoffDistance;_duration;_detune;_distortion;_loop;_offset;_position;_playbackRate;_playing;_referenceDistance;_startTick;_uri;_volume;_world;constructor(A){super();this._attachedToEntity=A.attachedToEntity,this._cutoffDistance=A.cutoffDistance??(this.isPositional?(A.referenceDistance??hZA)+10:0),this._duration=A.duration,this._detune=A.detune??0,this._distortion=A.distortion??0,this._loop=A.loop??!1,this._offset=A.offset??0,this._position=A.position,this._playing=!1,this._playbackRate=A.playbackRate??1,this._referenceDistance=A.referenceDistance??(this.isPositional?hZA:0),this._uri=A.uri,this._volume=A.volume??0.5}get id(){return this._id}get attachedToEntity(){return this._attachedToEntity}get cutoffDistance(){return this._cutoffDistance}get duration(){return this._duration}get detune(){return this._detune}get distortion(){return this._distortion}get loop(){return this._loop}get offset(){return this._offset}get isLoaded(){return this._id!==void 0}get isPlaying(){return this._playing}get isPositional(){return this._attachedToEntity!==void 0||this._position!==void 0}get position(){return this._position}get playbackRate(){return this._playbackRate}get referenceDistance(){return this._referenceDistance}get startTick(){return this._startTick}get uri(){return this._uri}get volume(){return this._volume}get world(){return this._world}play(A,Q=!1){if(this.isPlaying&&!Q)return;if(this._attachedToEntity&&!this._attachedToEntity.isSpawned)return l.error(`Audio.play(): Attached entity ${this._attachedToEntity.id} is not spawned!`);let B=Q&&this._id!==void 0?"AUDIO.PLAY_RESTART":"AUDIO.PLAY";this._id??=A.audioManager.registerAudio(this),this._playing=!0,this._startTick=A.loop.currentTick,this._world=this._world??A,this.emitWithWorld(A,B,{audio:this})}pause(){if(!this.isPlaying||!this._world)return;this._playing=!1,this.emitWithWorld(this._world,"AUDIO.PAUSE",{audio:this})}setAttachedToEntity(A){if(!this._requirePositional())return;if(!A.isSpawned)return l.error(`Audio.setAttachedToEntity(): Entity ${A.id} is not spawned!`);if(this._attachedToEntity===A)return;if(this._attachedToEntity=A,this._position=void 0,this.isLoaded&&this._world)this.emitWithWorld(this._world,"AUDIO.SET_ATTACHED_TO_ENTITY",{audio:this,entity:A})}setCutoffDistance(A){if(!this._requirePositional())return;if(A<=0||A1)return l.error("Volume must be between 0 and 1");if(this._volume===A)return;if(this._volume=A,this.isLoaded&&this._world)this.emitWithWorld(this._world,"AUDIO.SET_VOLUME",{audio:this,volume:A})}serialize(){return GQ.serializeAudio(this)}_requirePositional(){if(!this.isPositional)l.error("Audio._requirePositional(): Audio is not positional. and therefor does not support the invoked method.");return this.isPositional}}class UD{_audios=new Map;_nextAudioId=1;_world;constructor(A){this._world=A}get world(){return this._world}getAllAudios(){return Array.from(this._audios.values())}getAllEntityAttachedAudios(A){return this.getAllAudios().filter((Q)=>Q.attachedToEntity===A)}getAllLoopedAudios(){return this.getAllAudios().filter((A)=>A.loop)}getAllOneshotAudios(){return this.getAllAudios().filter((A)=>!A.loop)}registerAudio(A){if(A.id!==void 0)l.fatalError(`AudioManager.registerAudio(): Provided audio instance with uri ${A.uri} is already assigned the id ${A.id}!`);let Q=this._nextAudioId;return this._audios.set(Q,A),this._nextAudioId++,Q}unregisterAudio(A){if(A.id===void 0)return l.error(`AudioManager.unregisterAudio(): Provided audio instance with uri ${A.uri} is not assigned an id!`);A.pause(),this._audios.delete(A.id)}unregisterEntityAttachedAudios(A){this.getAllEntityAttachedAudios(A).forEach((Q)=>{this.unregisterAudio(Q)})}}var w8={Y_0:{enumIndex:0,matrix:[1,0,0,0,1,0,0,0,1]},Y_90:{enumIndex:1,matrix:[0,0,-1,0,1,0,1,0,0]},Y_180:{enumIndex:2,matrix:[-1,0,0,0,1,0,0,0,-1]},Y_270:{enumIndex:3,matrix:[0,0,1,0,1,0,-1,0,0]},NY_0:{enumIndex:4,matrix:[-1,0,0,0,-1,0,0,0,1]},NY_90:{enumIndex:5,matrix:[0,0,-1,0,-1,0,-1,0,0]},NY_180:{enumIndex:6,matrix:[1,0,0,0,-1,0,0,0,-1]},NY_270:{enumIndex:7,matrix:[0,0,1,0,-1,0,1,0,0]},X_0:{enumIndex:8,matrix:[0,-1,0,1,0,0,0,0,1]},X_90:{enumIndex:9,matrix:[0,0,-1,1,0,0,0,-1,0]},X_180:{enumIndex:10,matrix:[0,1,0,1,0,0,0,0,-1]},X_270:{enumIndex:11,matrix:[0,0,1,1,0,0,0,1,0]},NX_0:{enumIndex:12,matrix:[0,1,0,-1,0,0,0,0,1]},NX_90:{enumIndex:13,matrix:[0,0,-1,-1,0,0,0,1,0]},NX_180:{enumIndex:14,matrix:[0,-1,0,-1,0,0,0,0,-1]},NX_270:{enumIndex:15,matrix:[0,0,1,-1,0,0,0,-1,0]},Z_0:{enumIndex:16,matrix:[1,0,0,0,0,1,0,-1,0]},Z_90:{enumIndex:17,matrix:[0,1,0,0,0,1,1,0,0]},Z_180:{enumIndex:18,matrix:[-1,0,0,0,0,1,0,1,0]},Z_270:{enumIndex:19,matrix:[0,-1,0,0,0,1,-1,0,0]},NZ_0:{enumIndex:20,matrix:[1,0,0,0,0,-1,0,1,0]},NZ_90:{enumIndex:21,matrix:[0,-1,0,0,0,-1,1,0,0]},NZ_180:{enumIndex:22,matrix:[-1,0,0,0,0,-1,0,-1,0]},NZ_270:{enumIndex:23,matrix:[0,1,0,0,0,-1,-1,0,0]}};class WE{globalCoordinate;blockType;constructor(A,Q){this.globalCoordinate=A,this.blockType=Q}static fromGlobalCoordinate(A,Q){return new WE(A,Q)}getNeighborGlobalCoordinateFromHitPoint(A){let Q={x:A.x-(this.globalCoordinate.x+0.5),y:A.y-(this.globalCoordinate.y+0.5),z:A.z-(this.globalCoordinate.z+0.5)},B="x",Y=Math.abs(Q.x);for(let[J,C]of Object.entries(Q))if(Math.abs(C)>Y)B=J,Y=Math.abs(C);return{x:this.globalCoordinate.x+(B==="x"?Math.sign(Q.x):0),y:this.globalCoordinate.y+(B==="y"?Math.sign(Q.y):0),z:this.globalCoordinate.z+(B==="z"?Math.sign(Q.z):0)}}}import _JB from"crypto";import g7 from"fs";import j8 from"path";var U0={ATLAS_DIR:".atlas",ATLAS_PNG_FILE:"atlas.png",ATLAS_KTX2_FILE:"atlas.ktx2",ATLAS_MANIFEST_FILE:"atlas.json",TEXTURE_SIZE:24,TEXTURE_PADDING:20,ALPHA_TEST_THRESHOLD:0.05,DATA_SCHEMA_VERSION:1,DIRECTORIES:[PY.assetsLibraryPath&&j8.join(PY.assetsLibraryPath,"blocks"),j8.resolve(process.cwd(),"assets","blocks")].filter(Boolean)};class h7{static instance=new h7;generate=process.env.NODE_ENV!=="production";_textureUriMetadata=new Map;constructor(){}hasBlockTexture(A){return this._textureUriMetadata.has(A)||["+x","-x","+y","-y","+z","-z"].every((Q)=>this._textureUriMetadata.has(`${A}/${Q}.png`))}getBlockTextureMetadata(A){let Q=this._textureUriMetadata.get(A);if(Q)return[Q];let B=["+x","-x","+y","-y","+z","-z"].map((Y)=>this._textureUriMetadata.get(`${A}/${Y}.png`)).filter(Boolean);return B.length===6?B:void 0}async preloadAtlas(){let A=await this._getAbsoluteTexturePaths(),Q=j8.resolve(process.cwd(),"assets/blocks",U0.ATLAS_DIR);if(this._loadCachedAtlasManifest(A,Q))return console.info(`BlockTextureRegistry.preloadAtlas(): Using cached atlas for ${A.length} block textures`);if(!this.generate)l.fatalError("BlockTextureRegistry.preloadAtlas(): No cached atlas found in production. Run development server to generate atlas.");console.info(`BlockTextureRegistry.preloadAtlas(): Generating atlas for ${A.length} block textures...`);let B=await Promise.all(A.map(async(U)=>{let $=await JE.read(U),E=this._absoluteTexturePathToTextureUri(U);if($.width!==U0.TEXTURE_SIZE||$.height!==U0.TEXTURE_SIZE)$.resize({w:U0.TEXTURE_SIZE,h:U0.TEXTURE_SIZE});return{textureUri:E,image:$,metadata:this._analyzeTexture($.bitmap)}})),Y=U0.TEXTURE_SIZE+U0.TEXTURE_PADDING*2,{cols:J,rows:C}=this._calculateGridLayout(B.length),X=J*Y,G=C*Y,W=new JE({width:X,height:G,color:0});for(let U=0;U{let U=(W*C+G)*4,$=(Z*C+F)*4;J[$]=J[U],J[$+1]=J[U+1],J[$+2]=J[U+2],J[$+3]=J[U+3]};for(let G=0;G=B+Q||W=B+Q){let F=Math.max(B,Math.min(B+Q-1,W)),Z=Math.max(B,Math.min(B+Q-1,G));X(F,Z,W,G)}return Y}_analyzeTexture(A){let{width:Q,height:B,data:Y}=A,J=Q*B,C=[0,0,0],X=255*U0.ALPHA_TEST_THRESHOLD,G=!1,W=!1,F=0;for(let Z=0;Z=X,W||=UZ/J/255),isTransparent:G,needsAlphaTest:W,transparencyRatio:F/J}}_calculateGridLayout(A){let Q=(C)=>2**Math.ceil(Math.log2(C)),B=Math.ceil(Math.sqrt(A)),Y=Q(B),J=Q(Math.ceil(A/Y));return{cols:Y,rows:J}}async _getAbsoluteTexturePaths(){let A=new Map;for(let B of U0.DIRECTORIES){if(!g7.existsSync(B))continue;let Y=await l4("**/*.png",{cwd:B,follow:!0});for(let J of Y){let C=j8.join(B,J),X=this._absoluteTexturePathToTextureUri(C);A.set(X,C)}}return Array.from(A.keys()).sort().map((B)=>A.get(B))}}var nf;((Y)=>{Y.ENTITY_COLLISION="BLOCK_TYPE.ENTITY_COLLISION";Y.ENTITY_CONTACT_FORCE="BLOCK_TYPE.ENTITY_CONTACT_FORCE";Y.INTERACT="BLOCK_TYPE.INTERACT"})(nf||={});class O8 extends BQ{_id;_customColliderOptions;_isLiquid;_lightLevel;_name;_textureUri;constructor(A={id:-1,textureUri:"textures/missing.png",name:"Unknown"}){if(A.id<0)l.fatalError("BlockType.constructor(): BlockType id not set.");if(!h7.instance.hasBlockTexture(A.textureUri))l.fatalError(`BlockType.constructor(): Block texture ${A.textureUri} not found. If it is a cubemap texture, make sure every face is present in the folder (+x.png, -x.png, +y.png, -y.png, +z.png, -z.png).`);super();this._id=A.id,this._customColliderOptions=A.customColliderOptions,this._isLiquid=A.isLiquid??!1,this._name=A.name,this._textureUri=A.textureUri,this._lightLevel=Math.min(A.lightLevel??0,15)}get id(){return this._id}get colliderOptions(){return this._customColliderOptions??{shape:"voxels"}}get isLiquid(){return this._isLiquid}get isMeshable(){return!this._customColliderOptions}get isTrimesh(){return this.colliderOptions.shape==="trimesh"}get isVoxel(){return this.colliderOptions.shape==="voxels"}get lightLevel(){return this._lightLevel}get name(){return this._name}get textureUri(){return this._textureUri}createCollider(A){let Q=this.colliderOptions.shape==="voxels"?new h9({...this.colliderOptions,coordinates:A.map((B)=>B.globalCoordinate),size:{x:1,y:1,z:1}}):new h9({...this.colliderOptions,...this._buildTrimeshFromBlockPlacements(A)});if(this.isLiquid)Q.setSensor(!0);if(this.hasListeners("BLOCK_TYPE.ENTITY_COLLISION")||this.isLiquid)Q.enableCollisionEvents(!0);if(this.hasListeners("BLOCK_TYPE.ENTITY_CONTACT_FORCE"))Q.enableContactForceEvents(!0);if(LC.isDefaultCollisionGroups(Q.collisionGroups))Q.setCollisionGroups({belongsTo:[1],collidesWith:[65535&~1]});return Q}interact(A,Q){if(!A.world)return;this.emitWithWorld(A.world,"BLOCK_TYPE.INTERACT",{blockType:this,player:A,raycastHit:Q})}serialize(){return GQ.serializeBlockType(this)}_buildTrimeshFromBlockPlacements(A){let Q=this.colliderOptions,B=Q.vertices,Y=Q.indices;if(!B||!Y)l.fatalError(`BlockType._buildTrimeshFromCoordinates(): Block type id ${this.id} (${this.name}) is a trimesh but is missing vertices or indices!`);if(B.length%3!==0||Y.length%3!==0)l.fatalError(`BlockType._buildTrimeshFromCoordinates(): Block type id ${this.id} (${this.name}) has an invalid number of vertices or indices! Expected a multiple of 3, got ${B.length} and ${Y.length}.`);let J=B.length/3,C=A.length,X=new Float32Array(B.length*C),G=new Uint32Array(Y.length*C);for(let W=0;WQ.REGISTER_BLOCK_TYPE="BLOCK_TYPE_REGISTRY.REGISTER_BLOCK_TYPE")(sf||={});class ED extends BQ{_blockTypes=new Map;_world;constructor(A){super();this._world=A}get world(){return this._world}getAllBlockTypes(){return Array.from(this._blockTypes.values())}getBlockType(A){let Q=this._blockTypes.get(A);if(!Q)l.fatalError(`BlockTypeRegistry.getBlockType(): BlockType with id ${A} not found.`);return Q}registerGenericBlockType(A){let B=new class extends O8{constructor(Y=A){super(Y)}};return this.registerBlockType(B),B}registerBlockType(A){this._blockTypes.set(A.id,A),this.emitWithWorld(this._world,"BLOCK_TYPE_REGISTRY.REGISTER_BLOCK_TYPE",{blockTypeRegistry:this,id:A.id,blockType:A})}serialize(){return GQ.serializeBlockTypeRegistry(this)}}var Om={};iG(Om,{worldSchema:()=>jm,worldPacketDefinition:()=>SKA,vectorSchema:()=>nQ,vectorBooleanSchema:()=>zGB,uiSchema:()=>Rm,uiPacketDefinition:()=>PKA,uiDatasSchema:()=>wm,uiDatasPacketDefinition:()=>TKA,uiDataSendPacketDefinition:()=>UKA,uiDataSchema:()=>fD,syncResponseSchema:()=>zm,syncResponsePacketDefinition:()=>OKA,syncRequestSchema:()=>rb,syncRequestPacketDefinition:()=>$KA,stateRequestSchema:()=>sb,stateRequestPacketDefinition:()=>ZKA,sceneUIsSchema:()=>Mm,sceneUIsPacketDefinition:()=>jKA,sceneUISchema:()=>qm,rgbColorSchema:()=>gY,registeredPackets:()=>xw,quaternionSchema:()=>bD,playersSchema:()=>Lm,playersPacketDefinition:()=>wKA,playerSchema:()=>Nm,physicsDebugRenderSchema:()=>Dm,physicsDebugRenderPacketDefinition:()=>zKA,physicsDebugRaycastsSchema:()=>Hm,physicsDebugRaycastsPacketDefinition:()=>RKA,physicsDebugRaycastSchema:()=>Im,particleEmittersSchema:()=>Vm,particleEmittersPacketDefinition:()=>MKA,particleEmitterSchema:()=>Km,outlineSchema:()=>Wm,outboundPackets:()=>hw,notificationPermissionRequestSchema:()=>Em,notificationPermissionRequestPacketDefinition:()=>qKA,modelNodeOverrideSchema:()=>Gm,modelAnimationSchema:()=>Xm,lightsSchema:()=>Um,lightsPacketDefinition:()=>LKA,lightSchema:()=>$m,isValidPacket:()=>wGB,inputSchema:()=>nb,inputPacketDefinition:()=>FKA,inboundPackets:()=>gw,hexColorSchema:()=>pb,heartbeatSchema:()=>lb,heartbeatPacketDefinition:()=>XKA,framePacketBuffer:()=>MGB,entitySchema:()=>Fm,entitiesSchema:()=>Zm,entitiesPacketDefinition:()=>NKA,definePacket:()=>HQ,debugConfigSchema:()=>ib,debugConfigPacketDefinition:()=>WKA,createPacketBufferUnframer:()=>qGB,createPacket:()=>LGB,connectionSchema:()=>cb,connectionPacketDefinition:()=>CKA,chunksSchema:()=>Cm,chunksPacketDefinition:()=>DKA,chunkSchema:()=>Jm,chatMessagesSchema:()=>Ym,chatMessagesPacketDefinition:()=>HKA,chatMessageSendPacketDefinition:()=>GKA,chatMessageSchema:()=>xD,cameraSchema:()=>Bm,cameraPacketDefinition:()=>IKA,blocksSchema:()=>eb,blocksPacketDefinition:()=>KKA,blockTypesSchema:()=>Qm,blockTypesPacketDefinition:()=>VKA,blockTypeSchema:()=>Am,blockSchema:()=>tb,bidirectionalPackets:()=>yw,audiosSchema:()=>ob,audiosPacketDefinition:()=>EKA,audioSchema:()=>ab,PacketId:()=>sB});var yw={};iG(yw,{heartbeatPacketDefinition:()=>XKA,connectionPacketDefinition:()=>CKA});var ub=qA(YKA(),1);class db extends ub.default{static instance=new ub.default}var hD=4,JKA=33554432,sB;((_)=>{_[_.SYNC_REQUEST=0]="SYNC_REQUEST";_[_.INPUT=1]="INPUT";_[_.STATE_REQUEST=2]="STATE_REQUEST";_[_.CHAT_MESSAGE_SEND=3]="CHAT_MESSAGE_SEND";_[_.UI_DATA_SEND=4]="UI_DATA_SEND";_[_.SYNC_RESPONSE=32]="SYNC_RESPONSE";_[_.AUDIOS=33]="AUDIOS";_[_.BLOCKS=34]="BLOCKS";_[_.BLOCK_TYPES=35]="BLOCK_TYPES";_[_.CHAT_MESSAGES=36]="CHAT_MESSAGES";_[_.CHUNKS=37]="CHUNKS";_[_.ENTITIES=38]="ENTITIES";_[_.WORLD=39]="WORLD";_[_.CAMERA=40]="CAMERA";_[_.UI=41]="UI";_[_.UI_DATAS=42]="UI_DATAS";_[_.SCENE_UIS=43]="SCENE_UIS";_[_.LIGHTS=44]="LIGHTS";_[_.PLAYERS=45]="PLAYERS";_[_.PARTICLE_EMITTERS=46]="PARTICLE_EMITTERS";_[_.NOTIFICATION_PERMISSION_REQUEST=47]="NOTIFICATION_PERMISSION_REQUEST";_[_.CONNECTION=116]="CONNECTION";_[_.HEARTBEAT=117]="HEARTBEAT";_[_.DEBUG_CONFIG=128]="DEBUG_CONFIG";_[_.PHYSICS_DEBUG_RENDER=192]="PHYSICS_DEBUG_RENDER";_[_.PHYSICS_DEBUG_RAYCASTS=193]="PHYSICS_DEBUG_RAYCASTS"})(sB||={});function LGB(A,Q,B){if(!A.validate(Q))throw Error(`Invalid payload for packet with id ${A.id}. Error: ${db.instance.errorsText(A.validate.errors)}`);let Y=[A.id,Q];if(typeof B==="number")Y.push(B);return Y}function qGB(A){let Q=new Uint8Array(524288),B=new DataView(Q.buffer,Q.byteOffset,Q.byteLength),Y=0;return(J)=>{if(Y+J.length>Q.length){let X=Math.max(Q.length*2,Y+J.length);if(X>JKA){console.error(`Unframer packet buffer exceeded maximum size of ${JKA} bytes, discarding packet...`),Y=0;return}let G=new Uint8Array(X);G.set(Q.subarray(0,Y)),Q=G,B=new DataView(Q.buffer,Q.byteOffset,Q.byteLength)}Q.set(J,Y),Y+=J.length;let C=0;while(Y-C>=hD){let X=B.getUint32(C,!1),G=hD+X;if(Y-C0){if(Y>C)Q.copyWithin(0,C,Y);Y-=C}}}function HQ(A,Q){return{id:A,schema:Q,validate:db.instance.compile(Q)}}function MGB(A){let Q=new Uint8Array(hD+A.length);return new DataView(Q.buffer).setUint32(0,A.length,!1),Q.set(A,hD),Q}var cb={type:"object",properties:{i:{type:"string",nullable:!0},k:{type:"boolean",nullable:!0}},additionalProperties:!1};var CKA=HQ(116,cb);var lb={type:"null",nullable:!0};var XKA=HQ(117,lb);var gw={};iG(gw,{uiDataSendPacketDefinition:()=>UKA,syncRequestPacketDefinition:()=>$KA,stateRequestPacketDefinition:()=>ZKA,inputPacketDefinition:()=>FKA,debugConfigPacketDefinition:()=>WKA,chatMessageSendPacketDefinition:()=>GKA});var pb={type:"string",pattern:"^[0-9A-Fa-f]{6}$"};var xD={type:"object",properties:{m:{type:"string"},c:{...pb,nullable:!0},p:{type:"string",nullable:!0}},required:["m"],additionalProperties:!1};var GKA=HQ(3,xD);var ib={type:"object",properties:{pdr:{type:"boolean",nullable:!0}},additionalProperties:!1};var WKA=HQ(128,ib);var nQ={type:"array",items:[{type:"number"},{type:"number"},{type:"number"}],minItems:3,maxItems:3};var nb={type:"object",properties:{"1":{type:"boolean",nullable:!0},"2":{type:"boolean",nullable:!0},"3":{type:"boolean",nullable:!0},"4":{type:"boolean",nullable:!0},"5":{type:"boolean",nullable:!0},"6":{type:"boolean",nullable:!0},"7":{type:"boolean",nullable:!0},"8":{type:"boolean",nullable:!0},"9":{type:"boolean",nullable:!0},"0":{type:"boolean",nullable:!0},w:{type:"boolean",nullable:!0},a:{type:"boolean",nullable:!0},s:{type:"boolean",nullable:!0},d:{type:"boolean",nullable:!0},q:{type:"boolean",nullable:!0},e:{type:"boolean",nullable:!0},r:{type:"boolean",nullable:!0},f:{type:"boolean",nullable:!0},z:{type:"boolean",nullable:!0},x:{type:"boolean",nullable:!0},c:{type:"boolean",nullable:!0},v:{type:"boolean",nullable:!0},u:{type:"boolean",nullable:!0},i:{type:"boolean",nullable:!0},o:{type:"boolean",nullable:!0},j:{type:"boolean",nullable:!0},k:{type:"boolean",nullable:!0},l:{type:"boolean",nullable:!0},n:{type:"boolean",nullable:!0},m:{type:"boolean",nullable:!0},sp:{type:"boolean",nullable:!0},sh:{type:"boolean",nullable:!0},tb:{type:"boolean",nullable:!0},ml:{type:"boolean",nullable:!0},mr:{type:"boolean",nullable:!0},cp:{type:"number",nullable:!0},cy:{type:"number",nullable:!0},ird:{...nQ,nullable:!0},iro:{...nQ,nullable:!0},jd:{type:"number",nullable:!0},sq:{type:"number",nullable:!0}},additionalProperties:!1};var FKA=HQ(1,nb);var sb={type:"object",properties:{},additionalProperties:!1};var ZKA=HQ(2,sb);var rb={type:"null",nullable:!0};var $KA=HQ(0,rb);var fD={type:"object",properties:{},additionalProperties:!0};var UKA=HQ(4,fD);var hw={};iG(hw,{worldPacketDefinition:()=>SKA,uiPacketDefinition:()=>PKA,uiDatasPacketDefinition:()=>TKA,syncResponsePacketDefinition:()=>OKA,sceneUIsPacketDefinition:()=>jKA,playersPacketDefinition:()=>wKA,physicsDebugRenderPacketDefinition:()=>zKA,physicsDebugRaycastsPacketDefinition:()=>RKA,particleEmittersPacketDefinition:()=>MKA,notificationPermissionRequestPacketDefinition:()=>qKA,lightsPacketDefinition:()=>LKA,entitiesPacketDefinition:()=>NKA,chunksPacketDefinition:()=>DKA,chatMessagesPacketDefinition:()=>HKA,cameraPacketDefinition:()=>IKA,blocksPacketDefinition:()=>KKA,blockTypesPacketDefinition:()=>VKA,audiosPacketDefinition:()=>EKA});var ab={type:"object",properties:{i:{type:"number"},a:{type:"string",nullable:!0},cd:{type:"number",nullable:!0},d:{type:"number",nullable:!0},de:{type:"number",nullable:!0},di:{type:"number",minimum:0,nullable:!0},e:{type:"number",nullable:!0},l:{type:"boolean",nullable:!0},o:{type:"number",nullable:!0},p:{...nQ,nullable:!0},pa:{type:"boolean",nullable:!0},pl:{type:"boolean",nullable:!0},pr:{type:"number",minimum:0,nullable:!0},r:{type:"boolean",nullable:!0},rd:{type:"number",nullable:!0},s:{type:"number",nullable:!0},v:{type:"number",minimum:0,maximum:1,nullable:!0}},required:["i"],additionalProperties:!1};var ob={type:"array",items:{...ab}};var EKA=HQ(33,ob);var tb={type:"object",properties:{i:{type:"number"},c:nQ,r:{type:"number",nullable:!0}},required:["i","c"],additionalProperties:!1};var eb={type:"array",items:{...tb}};var KKA=HQ(34,eb);var Am={type:"object",properties:{i:{type:"number"},l:{type:"boolean",nullable:!0},ll:{type:"number",nullable:!0},n:{type:"string",nullable:!0},t:{type:"string",nullable:!0},ti:{type:"array",items:{type:"number"},nullable:!0},tv:{type:"array",items:{type:"number"},nullable:!0}},required:["i"],additionalProperties:!1};var Qm={type:"array",items:{...Am}};var VKA=HQ(35,Qm);var Bm={type:"object",properties:{cb:{type:"boolean",nullable:!0},m:{type:"number",nullable:!0},e:{type:"number",nullable:!0},et:{type:"number",nullable:!0},fo:{type:"number",nullable:!0},ffo:{type:"number",nullable:!0},fv:{type:"number",nullable:!0},h:{type:"array",items:{type:"string"},nullable:!0},mp:{type:"boolean",nullable:!0},my:{type:"boolean",nullable:!0},o:{...nQ,nullable:!0},p:{...nQ,nullable:!0},pt:{...nQ,nullable:!0},pl:{...nQ,nullable:!0},s:{type:"array",items:{type:"string"},nullable:!0},sa:{type:"number",nullable:!0},z:{type:"number",nullable:!0}},additionalProperties:!1};var Ym={type:"array",items:{...xD}};var Jm={type:"object",properties:{c:nQ,b:{type:"array",items:{type:"number",minimum:0,maximum:255},minItems:4096,maxItems:4096,nullable:!0},r:{type:"array",items:{type:"number"},minItems:0,maxItems:8192,nullable:!0},rm:{type:"boolean",nullable:!0}},required:["c"],additionalProperties:!1};var Cm={type:"array",items:{...Jm}};var gY={type:"array",items:[{type:"number",minimum:0,maximum:255},{type:"number",minimum:0,maximum:255},{type:"number",minimum:0,maximum:255}],minItems:3,maxItems:3};var Xm={type:"object",properties:{n:{type:"string"},b:{type:"number",nullable:!0},c:{type:"boolean",nullable:!0},fi:{type:"boolean",nullable:!0},fo:{type:"boolean",nullable:!0},l:{type:"number",nullable:!0},p:{type:"boolean",nullable:!0},pa:{type:"boolean",nullable:!0},pr:{type:"number",nullable:!0},r:{type:"boolean",nullable:!0},s:{type:"boolean",nullable:!0},w:{type:"number",nullable:!0}},required:["n"],additionalProperties:!1};var bD={type:"array",items:[{type:"number"},{type:"number"},{type:"number"},{type:"number"}],minItems:4,maxItems:4};var Gm={type:"object",properties:{n:{type:"string"},ec:{...gY,nullable:!0},ei:{type:"number",nullable:!0},h:{type:"boolean",nullable:!0},p:{...nQ,nullable:!0},pi:{type:"number",nullable:!0},r:{...bD,nullable:!0},ri:{type:"number",nullable:!0},rm:{type:"boolean",nullable:!0},s:{...nQ,nullable:!0},si:{type:"number",nullable:!0}},required:["n"],additionalProperties:!1};var Wm={type:"object",properties:{c:{...gY,nullable:!0},ci:{type:"number",nullable:!0},th:{type:"number",nullable:!0},o:{type:"number",nullable:!0},oc:{type:"boolean",nullable:!0}},required:[],additionalProperties:!1};var Fm={type:"object",properties:{i:{type:"number"},bh:{...nQ,nullable:!0},bt:{type:"string",nullable:!0},e:{type:"boolean",nullable:!0},ec:{...gY,nullable:!0},ei:{type:"number",nullable:!0},m:{type:"string",nullable:!0},ma:{type:"array",items:{...Xm},nullable:!0},mo:{type:"array",items:{...Gm},nullable:!0},mt:{type:"string",nullable:!0},n:{type:"string",nullable:!0},o:{type:"number",nullable:!0},ol:{...Wm,nullable:!0},p:{...nQ,nullable:!0},pi:{type:"number",nullable:!0},pe:{type:"number",nullable:!0},pn:{type:"string",nullable:!0},r:{...bD,nullable:!0},ri:{type:"number",nullable:!0},rm:{type:"boolean",nullable:!0},si:{type:"number",nullable:!0},sv:{...nQ,nullable:!0},t:{...gY,nullable:!0}},required:["i"],additionalProperties:!1};var Zm={type:"array",items:{...Fm}};var $m={type:"object",properties:{i:{type:"number"},a:{type:"number",nullable:!0},e:{type:"number",nullable:!0},c:{...gY,nullable:!0},d:{type:"number",nullable:!0},n:{type:"number",nullable:!0},o:{...nQ,nullable:!0},p:{...nQ,nullable:!0},pe:{type:"number",minimum:0,maximum:1,nullable:!0},rm:{type:"boolean",nullable:!0},t:{type:"number",nullable:!0},te:{type:"number",nullable:!0},tp:{...nQ,nullable:!0}},required:["i"],additionalProperties:!1};var Um={type:"array",items:{...$m}};var Em={type:"null",nullable:!0};var Km={type:"object",properties:{i:{type:"number"},at:{type:"number",nullable:!0},b:{type:"number",nullable:!0},ce:{...gY,nullable:!0},cev:{...gY,nullable:!0},cs:{...gY,nullable:!0},csv:{...gY,nullable:!0},cie:{type:"number",nullable:!0},ciev:{type:"number",nullable:!0},cis:{type:"number",nullable:!0},cisv:{type:"number",nullable:!0},e:{type:"number",nullable:!0},en:{type:"string",nullable:!0},g:{...nQ,nullable:!0},l:{type:"number",nullable:!0},le:{type:"boolean",nullable:!0},lv:{type:"number",nullable:!0},mp:{type:"number",nullable:!0},o:{...nQ,nullable:!0},oe:{type:"number",nullable:!0},oev:{type:"number",nullable:!0},or:{type:"number",nullable:!0},ofr:{...nQ,nullable:!0},os:{type:"number",nullable:!0},osv:{type:"number",nullable:!0},p:{...nQ,nullable:!0},pa:{type:"boolean",nullable:!0},pv:{...nQ,nullable:!0},r:{type:"number",nullable:!0},rv:{type:"number",nullable:!0},rm:{type:"boolean",nullable:!0},se:{type:"number",nullable:!0},sev:{type:"number",nullable:!0},ss:{type:"number",nullable:!0},ssv:{type:"number",nullable:!0},t:{type:"boolean",nullable:!0},tu:{type:"string",nullable:!0},v:{...nQ,nullable:!0},vv:{...nQ,nullable:!0}},required:["i"],additionalProperties:!1};var Vm={type:"array",items:{...Km}};var Im={type:"object",properties:{o:{...nQ},d:{...nQ},l:{type:"number"},h:{type:"boolean"}},required:["o","d","l","h"],additionalProperties:!1};var Hm={type:"array",items:{...Im}};var Dm={type:"object",properties:{v:{type:"array",items:{type:"number"}},c:{type:"array",items:{type:"number"}}},required:["v","c"],additionalProperties:!1};var Nm={type:"object",properties:{i:{type:"string"},p:{type:"string",nullable:!0},rm:{type:"boolean",nullable:!0},u:{type:"string",nullable:!0}},required:["i"],additionalProperties:!1};var Lm={type:"array",items:{...Nm}};var qm={type:"object",properties:{i:{type:"number"},e:{type:"number",nullable:!0},o:{...nQ,nullable:!0},p:{...nQ,nullable:!0},rm:{type:"boolean",nullable:!0},s:{type:"object",nullable:!0},t:{type:"string",nullable:!0},v:{type:"number",nullable:!0}},required:["i"],additionalProperties:!1};var Mm={type:"array",items:{...qm}};var zm={type:"object",properties:{r:{type:"number"},s:{type:"number"},p:{type:"number"},n:{type:"number"}},required:["r","s","p","n"],additionalProperties:!1};var Rm={type:"object",properties:{p:{type:"boolean",nullable:!0},pf:{type:"boolean",nullable:!0},u:{type:"string",nullable:!0},ua:{type:"array",items:{type:"string"},nullable:!0}},additionalProperties:!1};var wm={type:"array",items:{...fD}};var zGB={type:"array",items:[{type:"boolean"},{type:"boolean"},{type:"boolean"}],minItems:3,maxItems:3};var jm={type:"object",properties:{i:{type:"number"},ac:{...gY,nullable:!0},ai:{type:"number",nullable:!0},dc:{...gY,nullable:!0},di:{type:"number",nullable:!0},dp:{...nQ,nullable:!0},fc:{...gY,nullable:!0},ff:{type:"number",nullable:!0},fn:{type:"number",nullable:!0},n:{type:"string",nullable:!0},s:{type:"string",nullable:!0},si:{type:"number",nullable:!0},t:{type:"number",nullable:!0}},required:["i"],additionalProperties:!1};var IKA=HQ(40,Bm);var HKA=HQ(36,Ym);var DKA=HQ(37,Cm);var NKA=HQ(38,Zm);var LKA=HQ(44,Um);var qKA=HQ(47,Em);var MKA=HQ(46,Vm);var zKA=HQ(192,Dm);var RKA=HQ(193,Hm);var wKA=HQ(45,Lm);var jKA=HQ(43,Mm);var OKA=HQ(32,zm);var PKA=HQ(41,Rm);var TKA=HQ(42,wm);var SKA=HQ(39,jm);var xw=new Map,RGB={...yw,...gw,...hw};for(let A of Object.values(RGB))if("id"in A&&"schema"in A){let Q=A;if(xw.has(Q.id))throw Error(`Packet with id ${Q.id} is already registered.`);xw.set(Q.id,Q)}function wGB(A){if(typeof A!=="object"||A===null||typeof A[0]!=="number"||A[0]<0||A[1]===void 0||A[2]!==void 0&&(typeof A[2]!=="number"||A[2]<0))return!1;let Q=xw.get(A[0]);return!!Q&&Q.validate(A[1])}var gQ=Om;var hIA=qA(JVA(),1);import RZ from"fs";import yIA from"path";var EWB=qA(eVA(),1),KWB=qA(fm(),1),VWB=qA(mm(),1),OE=qA(sw(),1),nm=qA(XIA(),1);var GIA=OE.default;function u9(A){if(A===null)return"null";if(Array.isArray(A))return"array";return typeof A}function n7(A){return u9(A)==="object"}function IWB(A){return Array.isArray(A)&&A.length>0&&A.every((Q)=>("message"in Q))}function sm(A,Q){return A.length<124?A:Q}var WIA="graphql-transport-ws";var T8=((A)=>{return A[A.InternalServerError=4500]="InternalServerError",A[A.InternalClientError=4005]="InternalClientError",A[A.BadRequest=4400]="BadRequest",A[A.BadResponse=4004]="BadResponse",A[A.Unauthorized=4401]="Unauthorized",A[A.Forbidden=4403]="Forbidden",A[A.SubprotocolNotAcceptable=4406]="SubprotocolNotAcceptable",A[A.ConnectionInitialisationTimeout=4408]="ConnectionInitialisationTimeout",A[A.ConnectionAcknowledgementTimeout=4504]="ConnectionAcknowledgementTimeout",A[A.SubscriberAlreadyExists=4409]="SubscriberAlreadyExists",A[A.TooManyInitialisationRequests=4429]="TooManyInitialisationRequests",A})(T8||{}),S8=((A)=>{return A.ConnectionInit="connection_init",A.ConnectionAck="connection_ack",A.Ping="ping",A.Pong="pong",A.Subscribe="subscribe",A.Next="next",A.Error="error",A.Complete="complete",A})(S8||{});function FIA(A){if(!n7(A))throw Error(`Message is expected to be an object, but got ${u9(A)}`);if(!A.type)throw Error("Message is missing the 'type' property");if(typeof A.type!=="string")throw Error(`Message is expects the 'type' property to be a string, but got ${u9(A.type)}`);switch(A.type){case"connection_init":case"connection_ack":case"ping":case"pong":{if(A.payload!=null&&!n7(A.payload))throw Error(`"${A.type}" message expects the 'payload' property to be an object or nullish or missing, but got "${A.payload}"`);break}case"subscribe":{if(typeof A.id!=="string")throw Error(`"${A.type}" message expects the 'id' property to be a string, but got ${u9(A.id)}`);if(!A.id)throw Error(`"${A.type}" message requires a non-empty 'id' property`);if(!n7(A.payload))throw Error(`"${A.type}" message expects the 'payload' property to be an object, but got ${u9(A.payload)}`);if(typeof A.payload.query!=="string")throw Error(`"${A.type}" message payload expects the 'query' property to be a string, but got ${u9(A.payload.query)}`);if(A.payload.variables!=null&&!n7(A.payload.variables))throw Error(`"${A.type}" message payload expects the 'variables' property to be a an object or nullish or missing, but got ${u9(A.payload.variables)}`);if(A.payload.operationName!=null&&u9(A.payload.operationName)!=="string")throw Error(`"${A.type}" message payload expects the 'operationName' property to be a string or nullish or missing, but got ${u9(A.payload.operationName)}`);if(A.payload.extensions!=null&&!n7(A.payload.extensions))throw Error(`"${A.type}" message payload expects the 'extensions' property to be a an object or nullish or missing, but got ${u9(A.payload.extensions)}`);break}case"next":{if(typeof A.id!=="string")throw Error(`"${A.type}" message expects the 'id' property to be a string, but got ${u9(A.id)}`);if(!A.id)throw Error(`"${A.type}" message requires a non-empty 'id' property`);if(!n7(A.payload))throw Error(`"${A.type}" message expects the 'payload' property to be an object, but got ${u9(A.payload)}`);break}case"error":{if(typeof A.id!=="string")throw Error(`"${A.type}" message expects the 'id' property to be a string, but got ${u9(A.id)}`);if(!A.id)throw Error(`"${A.type}" message requires a non-empty 'id' property`);if(!IWB(A.payload))throw Error(`"${A.type}" message expects the 'payload' property to be an array of GraphQL errors, but got ${JSON.stringify(A.payload)}`);break}case"complete":{if(typeof A.id!=="string")throw Error(`"${A.type}" message expects the 'id' property to be a string, but got ${u9(A.id)}`);if(!A.id)throw Error(`"${A.type}" message requires a non-empty 'id' property`);break}default:throw Error(`Invalid message 'type' property "${A.type}"`)}return A}function ZIA(A,Q){return FIA(typeof A==="string"?JSON.parse(A,Q):A)}function PE(A,Q){return FIA(A),JSON.stringify(A,Q)}function am(A){let{url:Q,connectionParams:B,lazy:Y=!0,onNonLazyError:J=console.error,lazyCloseTimeout:C=0,keepAlive:X=0,disablePong:G,connectionAckWaitTimeout:W=0,retryAttempts:F=5,retryWait:Z=async function(v){let y=Math.pow(2,v);await new Promise((h)=>setTimeout(h,y*1000+Math.floor(Math.random()*2700+300)))},shouldRetry:U=rm,on:$,webSocketImpl:E,generateID:K=function(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(v)=>{let y=Math.random()*16|0;return(v=="x"?y:y&3|8).toString(16)})},jsonMessageReplacer:I,jsonMessageReviver:V}=A,H;if(E){if(!DWB(E))throw Error("Invalid WebSocket implementation provided");H=E}else if(typeof WebSocket<"u")H=WebSocket;else if(typeof global<"u")H=global.WebSocket||global.MozWebSocket;else if(typeof window<"u")H=window.WebSocket||window.MozWebSocket;if(!H)throw Error("WebSocket implementation missing; on Node you can `import WebSocket from 'ws';` and pass `webSocketImpl: WebSocket` to `createClient`");let D=H,L=(()=>{let S=(()=>{let y={};return{on(h,g){return y[h]=g,()=>{delete y[h]}},emit(h){if("id"in h)y[h.id]?.(h)}}})(),v={connecting:$?.connecting?[$.connecting]:[],opened:$?.opened?[$.opened]:[],connected:$?.connected?[$.connected]:[],ping:$?.ping?[$.ping]:[],pong:$?.pong?[$.pong]:[],message:$?.message?[S.emit,$.message]:[S.emit],closed:$?.closed?[$.closed]:[],error:$?.error?[$.error]:[]};return{onMessage:S.on,on(y,h){let g=v[y];return g.push(h),()=>{g.splice(g.indexOf(h),1)}},emit(y,...h){for(let g of[...v[y]])g(...h)}}})();function z(S){let v=[L.on("error",(y)=>{v.forEach((h)=>h()),S(y)}),L.on("closed",(y)=>{v.forEach((h)=>h()),S(y)})]}let M,N=0,q,w=!1,P=0,_=!1;async function j(){clearTimeout(q);let[S,v]=await(M??(M=new Promise((g,m)=>(async()=>{if(w){if(await Z(P),!N)return M=void 0,m({code:1000,reason:"All Subscriptions Gone"});P++}L.emit("connecting",w);let n=new D(typeof Q==="function"?await Q():Q,WIA),i,p;function d(){if(isFinite(X)&&X>0)clearTimeout(p),p=setTimeout(()=>{if(n.readyState===D.OPEN)n.send(PE({type:S8.Ping})),L.emit("ping",!1,void 0)},X)}z((b)=>{if(M=void 0,clearTimeout(i),clearTimeout(p),m(b),b instanceof aw)n.close(4499,"Terminated"),n.onerror=null,n.onclose=null}),n.onerror=(b)=>L.emit("error",b),n.onclose=(b)=>L.emit("closed",b),n.onopen=async()=>{try{L.emit("opened",n);let b=typeof B==="function"?await B():B;if(n.readyState!==D.OPEN)return;if(n.send(PE(b?{type:S8.ConnectionInit,payload:b}:{type:S8.ConnectionInit},I)),isFinite(W)&&W>0)i=setTimeout(()=>{n.close(T8.ConnectionAcknowledgementTimeout,"Connection acknowledgement timeout")},W);d()}catch(b){L.emit("error",b),n.close(T8.InternalClientError,sm(b instanceof Error?b.message:String(b),"Internal client error"))}};let x=!1;n.onmessage=({data:b})=>{try{let o=ZIA(b,V);if(L.emit("message",o),o.type==="ping"||o.type==="pong"){if(L.emit(o.type,!0,o.payload),o.type==="pong")d();else if(!G)n.send(PE(o.payload?{type:S8.Pong,payload:o.payload}:{type:S8.Pong})),L.emit("pong",!1,o.payload);return}if(x)return;if(o.type!==S8.ConnectionAck)throw Error(`First message cannot be of type ${o.type}`);clearTimeout(i),x=!0,L.emit("connected",n,o.payload,w),w=!1,P=0,g([n,new Promise((GA,VA)=>z(VA))])}catch(o){n.onmessage=null,L.emit("error",o),n.close(T8.BadResponse,sm(o instanceof Error?o.message:String(o),"Bad response"))}}})())));if(S.readyState===D.CLOSING)await v;let y=()=>{},h=new Promise((g)=>y=g);return[S,y,Promise.race([h.then(()=>{if(!N){let g=()=>S.close(1000,"Normal Closure");if(isFinite(C)&&C>0)q=setTimeout(()=>{if(S.readyState===D.OPEN)g()},C);else g()}}),v])]}function k(S){if(rm(S)&&(HWB(S.code)||[T8.InternalServerError,T8.InternalClientError,T8.BadRequest,T8.BadResponse,T8.Unauthorized,T8.SubprotocolNotAcceptable,T8.SubscriberAlreadyExists,T8.TooManyInitialisationRequests].includes(S.code)))throw S;if(_)return!1;if(rm(S)&&S.code===1000)return N>0;if(!F||P>=F)throw S;if(!U(S))throw S;return w=!0}if(!Y)(async()=>{N++;for(;;)try{let[,,S]=await j();await S}catch(S){try{if(!k(S))return}catch(v){return J?.(v)}}})();function T(S,v){let y=K(S),h=!1,g=!1,m=()=>{N--,h=!0};return(async()=>{N++;for(;;)try{let[n,i,p]=await j();if(h)return i();let d=L.onMessage(y,(x)=>{switch(x.type){case S8.Next:{v.next(x.payload);return}case S8.Error:{g=!0,h=!0,v.error(x.payload),m();return}case S8.Complete:{h=!0,m();return}}});n.send(PE({id:y,type:S8.Subscribe,payload:S},I)),m=()=>{if(!h&&n.readyState===D.OPEN)n.send(PE({id:y,type:S8.Complete},I));N--,h=!0,i()},await p.finally(d);return}catch(n){if(!k(n))return}})().then(()=>{if(!g)v.complete()}).catch((n)=>{v.error(n)}),()=>{if(!h)m()}}return{on:L.on,subscribe:T,iterate(S){let v=[],y={done:!1,error:null,resolve:()=>{}},h=T(S,{next(m){v.push(m),y.resolve()},error(m){y.done=!0,y.error=m,y.resolve()},complete(){y.done=!0,y.resolve()}}),g=async function*(){for(;;){if(!v.length)await new Promise((n)=>y.resolve=n);while(v.length)yield v.shift();if(y.error)throw y.error;if(y.done)return}}();return g.throw=async(m)=>{if(!y.done)y.done=!0,y.error=m,y.resolve();return{done:!0,value:void 0}},g.return=async()=>{return h(),{done:!0,value:void 0}},g},async dispose(){if(_=!0,M){let[S]=await M;S.close(1000,"Normal Closure")}},terminate(){if(M)L.emit("closed",new aw)}}}class aw extends Error{name="TerminatedCloseEvent";message="4499: Terminated";code=4499;reason="Terminated";wasClean=!1}function rm(A){return n7(A)&&"code"in A&&"reason"in A}function HWB(A){if([1000,1001,1006,1005,1012,1013,1014].includes(A))return!1;return A>=1000&&A<=1999}function DWB(A){return typeof A==="function"&&"constructor"in A&&"CLOSED"in A&&"CLOSING"in A&&"CONNECTING"in A&&"OPEN"in A}var gIA=qA(vIA(),1);var rD="./dev/persistence",tw=process.env.HYTOPIA_NOTIFICATION_SERVICE_URL||"https://prod.notifications.hytopia.com";class P5{static instance=new P5;creatorApiKey=process.env.HYTOPIA_API_KEY;gameId=process.env.HYTOPIA_GAME_ID;lobbyId=process.env.HYTOPIA_LOBBY_ID;_creativeGateway;_gqlWs;constructor(){try{this._creativeGateway=new gIA.CreativeGateway,this._gqlWs=am({url:"wss://prod.gql.hytopia.com/graphql",webSocketImpl:GIA})}catch{console.warn(["━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━","\uD83D\uDEA8 HYTOPIA PLATFORM GATEWAY IS NOT INITIALIZED \uD83D\uDEA8","","\uD83D\uDD27 Local development is still possible, but these features will be disabled:"," • \uD83D\uDC64 Live Player Accounts"," • \uD83C\uDFAD Live Player Cosmetics"," • \uD83D\uDD14 Scheduled Notifications"," • \uD83D\uDC1B Crash Analytics & Debug Logs","","\uD83D\uDCA1 These features will be enabled but modified:"," • \uD83D\uDCBE Player & Global Persisted Data - Data will be persisted"," locally in the ./dev/persistence directory of your project."," Player ids for data persistence will begin at 1 for the first "," player to join your local server, and increments for each"," additional player. This means that if you restart your"," server, the first player id will be 1 again. This is to ensure"," that data persistence across server restarts can be easily"," tested and debugged in local development.","","To enable the HYTOPIA Platform Gateway locally:"," 1. Set these environment variables:"," HYTOPIA_API_KEY, HYTOPIA_GAME_ID, HYTOPIA_LOBBY_ID"," 2. You can find these values at: https://create.hytopia.com","","Note: In production, these environment variables will be auto-populated ","& the HYTOPIA Platform Gateway will automatically be initialized \uD83D\uDE80","━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━",""].join(` +`))}}get isGatewayAvailable(){return!!this._creativeGateway}async getGlobalData(A){if(!this._creativeGateway&&process.env.NODE_ENV==="production")return l.warning("PlatformGateway.getGlobalData(): You are running in production mode, but the Platform Gateway is not initialized! No data will be returned."),{error:{code:"gatewayError",message:"Platform Gateway is not initialized."}};return this._creativeGateway?await this._creativeGateway.kv.get(A):this._readDevGlobalDataLocally(A)}async getPlayerCosmetics(A){if(!this._creativeGateway||!this._gqlWs)return;let Q=this._gqlWs.iterate({query:`{ userById(id: "${A}") { characterSettings { clothing @@ -258,7 +258,7 @@ globstar while`,A,U,Q,$,E),this.matchOne(A.slice(U),Q.slice($),B))return this.de } } } - }`});try{let Y=(await Q.next()).value?.data?.userById;if(!Y)return l.warning(`PlatformGateway.getPlayerCosmetics(): No cosmetic data returned for user id "${A}".`);let J=Y.equippedItems?Y.equippedItems.map((W)=>({slot:W.slot,item:W.itemInstance.item.slots.find((F)=>F.type===W.slot)})).filter((W)=>!!W.item):[],C=Y.characterSettings?.hair?.modelUrl,X=Y.characterSettings?.hair?.textureUrl,G=`https://d3qkovarww0lj1.cloudfront.net/?skin_tone=${Y.characterSettings?.skinTone||"SKIN_COLOR_1"}&clothing=${Y.characterSettings?.clothing||"CLOTHING_1"}&hair_style=${Y.characterSettings?.hairStyle||"HAIR_STYLE_1"}&hair_color=${Y.characterSettings?.hairColor||"HAIR_COLOR_1"}&eye_color=${Y.characterSettings?.eyeColor||"00FF00"}`;return{equippedItems:J,hairModelUri:C,hairTextureUri:X,skinTextureUri:G}}finally{await Q.return?.()}}async getPlayerSession(A){if(!this._creativeGateway)return;return await this._creativeGateway.getSession(A)}async scheduleNotification(A,Q,B){if(!tw)return l.warning("PlatformGateway.scheduleNotification(): HYTOPIA_NOTIFICATION_SERVICE_URL is not set. Unable to schedule notification.");if(!this.gameId||!this.creatorApiKey)return l.warning("PlatformGateway.scheduleNotification(): HYTOPIA_GAME_ID or HYTOPIA_API_KEY is not set. Unable to schedule notification.");if(BsetTimeout(J,500))}l.warning(`PersistenceManager.getGlobalData(): Failed to get global data after ${Q} attempts.`);return}async getPlayerData(A){let Q=await this._saveStatesClient.load(this._getPlayerKey(A));if(!Q)return l.warning(`PersistenceManager.getPlayerData(): Failed to get player data for player ${A.id}. Persistence service may be down.`),{};return Q}async setGlobalData(A,Q){let B=await P5.instance.setGlobalData(A,Q);if(!B||B.error){if(B?.error)l.warning(`PersistenceManager.setGlobalData(): ${B.error.message}`)}}async setPlayerData(A,Q){let B=await this.getPlayerData(A);for(let[Y,J]of Object.entries(Q))B[Y]=J}async unloadPlayerData(A){await this._saveStatesClient.unload(this._getPlayerKey(A))}_getPlayerKey(A){return`player-${A.id}`}}var tm;((Y)=>{Y[Y.FIRST_PERSON=0]="FIRST_PERSON";Y[Y.THIRD_PERSON=1]="THIRD_PERSON";Y[Y.SPECTATOR=2]="SPECTATOR"})(tm||={});var em;((L)=>{L.FACE_ENTITY="PLAYER_CAMERA.FACE_ENTITY";L.FACE_POSITION="PLAYER_CAMERA.FACE_POSITION";L.SET_ATTACHED_TO_ENTITY="PLAYER_CAMERA.SET_ATTACHED_TO_ENTITY";L.SET_ATTACHED_TO_POSITION="PLAYER_CAMERA.SET_ATTACHED_TO_POSITION";L.SET_COLLIDES_WITH_BLOCKS="PLAYER_CAMERA.SET_COLLIDES_WITH_BLOCKS";L.SET_FILM_OFFSET="PLAYER_CAMERA.SET_FILM_OFFSET";L.SET_FORWARD_OFFSET="PLAYER_CAMERA.SET_FORWARD_OFFSET";L.SET_FOV="PLAYER_CAMERA.SET_FOV";L.SET_MODE="PLAYER_CAMERA.SET_MODE";L.SET_OFFSET="PLAYER_CAMERA.SET_OFFSET";L.SET_SHOULDER_ANGLE="PLAYER_CAMERA.SET_SHOULDER_ANGLE";L.SET_TARGET_ENTITY="PLAYER_CAMERA.SET_TARGET_ENTITY";L.SET_TARGET_POSITION="PLAYER_CAMERA.SET_TARGET_POSITION";L.SET_VIEW_MODEL="PLAYER_CAMERA.SET_VIEW_MODEL";L.SET_VIEW_MODEL_HIDDEN_NODES="PLAYER_CAMERA.SET_VIEW_MODEL_HIDDEN_NODES";L.SET_VIEW_MODEL_PITCHES_WITH_CAMERA="PLAYER_CAMERA.SET_VIEW_MODEL_PITCHES_WITH_CAMERA";L.SET_VIEW_MODEL_SHOWN_NODES="PLAYER_CAMERA.SET_VIEW_MODEL_SHOWN_NODES";L.SET_VIEW_MODEL_YAWS_WITH_CAMERA="PLAYER_CAMERA.SET_VIEW_MODEL_YAWS_WITH_CAMERA";L.SET_ZOOM="PLAYER_CAMERA.SET_ZOOM"})(em||={});class aD extends BQ{player;_attachedToEntity;_attachedToPosition;_collidesWithBlocks=!0;_filmOffset=0;_forwardOffset=0;_fov=75;_mode=1;_offset={x:0,y:0,z:0};_orientation={pitch:0,yaw:0};_shoulderAngle=0;_targetEntity;_targetPosition;_viewModelUri;_viewModelHiddenNodes=new Set;_viewModelPitchesWithCamera=!1;_viewModelShownNodes=new Set;_viewModelYawsWithCamera=!1;_zoom=1;constructor(A){super();this.player=A}get attachedToEntity(){return this._attachedToEntity}get attachedToPosition(){return this._attachedToPosition}get collidesWithBlocks(){return this._collidesWithBlocks}get facingDirection(){return{x:-Math.sin(this._orientation.yaw)*Math.cos(this._orientation.pitch),y:Math.sin(this._orientation.pitch),z:-Math.cos(this._orientation.yaw)*Math.cos(this._orientation.pitch)}}get facingQuaternion(){let A=this._orientation.pitch*0.5,Q=this._orientation.yaw*0.5,B=Math.cos(A),Y=Math.sin(A),J=Math.cos(Q),C=Math.sin(Q);return{x:Y*J,y:B*C,z:-Y*C,w:B*J}}get filmOffset(){return this._filmOffset}get forwardOffset(){return this._forwardOffset}get fov(){return this._fov}get modelHiddenNodes(){return this._viewModelHiddenNodes}get modelShownNodes(){return this._viewModelShownNodes}get mode(){return this._mode}get offset(){return this._offset}get orientation(){return this._orientation}get shoulderAngle(){return this._shoulderAngle}get targetEntity(){return this._targetEntity}get targetPosition(){return this._targetPosition}get viewModelUri(){return this._viewModelUri??this._attachedToEntity?.modelUri}get viewModelHiddenNodes(){return this._viewModelHiddenNodes}get viewModelPitchesWithCamera(){return this._viewModelPitchesWithCamera}get viewModelShownNodes(){return this._viewModelShownNodes}get viewModelYawsWithCamera(){return this._viewModelYawsWithCamera}get zoom(){return this._zoom}faceEntity(A){if(!this._requirePlayerWorld("faceEntity"))return;this._targetEntity=void 0,this._targetPosition=void 0,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.FACE_ENTITY",{playerCamera:this,entity:A})}facePosition(A){if(!this._requirePlayerWorld("facePosition"))return;this._targetEntity=void 0,this._targetPosition=void 0,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.FACE_POSITION",{playerCamera:this,position:A})}reset(){this._attachedToEntity=void 0,this._attachedToPosition=void 0,this._orientation={pitch:0,yaw:0},this._targetEntity=void 0,this._targetPosition=void 0}setAttachedToEntity(A){if(!this._requirePlayerWorld("setAttachedToEntity"))return;if(!A.isSpawned)return l.error(`PlayerCamera.setAttachedToEntity(): Entity ${A.id} is not spawned!`);if(this._targetEntity===A)return l.error(`PlayerCamera.setAttachedToEntity(): Entity ${A.id} is already set as the target. Attachment and target cannot be the same!`);this._attachedToEntity=A,this._attachedToPosition=void 0,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_ATTACHED_TO_ENTITY",{playerCamera:this,entity:A})}setAttachedToPosition(A){if(!this._requirePlayerWorld("setAttachedToPosition"))return;if(A&&this._targetPosition?.x===A.x&&this._targetPosition?.y===A.y&&this._targetPosition?.z===A.z)return l.error(`PlayerCamera.setAttachedToPosition(): Position ${A.x}, ${A.y}, ${A.z} is already set as the target. Attachment and target cannot be the same!`);this._attachedToPosition=A,this._attachedToEntity=void 0,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_ATTACHED_TO_POSITION",{playerCamera:this,position:A})}setCollidesWithBlocks(A){if(!this._requirePlayerWorld("setCollidesWithBlocks"))return;this._collidesWithBlocks=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_COLLIDES_WITH_BLOCKS",{playerCamera:this,collidesWithBlocks:A})}setFilmOffset(A){if(!this._requirePlayerWorld("setFilmOffset"))return;this._filmOffset=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_FILM_OFFSET",{playerCamera:this,filmOffset:A})}setForwardOffset(A){if(!this._requirePlayerWorld("setForwardOffset"))return;this._forwardOffset=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_FORWARD_OFFSET",{playerCamera:this,forwardOffset:A})}setFov(A){if(!this._requirePlayerWorld("setFov"))return;this._fov=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_FOV",{playerCamera:this,fov:A})}setMode(A){if(!this._requirePlayerWorld("setMode"))return;this._mode=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_MODE",{playerCamera:this,mode:A})}setOffset(A){if(!this._requirePlayerWorld("setOffset"))return;this._offset=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_OFFSET",{playerCamera:this,offset:A})}setOrientationPitch(A){this._orientation.pitch=A}setOrientationYaw(A){this._orientation.yaw=A}setShoulderAngle(A){if(!this._requirePlayerWorld("setShoulderAngle"))return;this._shoulderAngle=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_SHOULDER_ANGLE",{playerCamera:this,shoulderAngle:A})}setTargetEntity(A){if(!this._requirePlayerWorld("setTargetEntity"))return;if(A&&this._attachedToEntity===A)return l.error(`PlayerCamera.setTargetEntity(): Entity ${A.id} is already set as the attachment. Attachment and target cannot be the same!`);if(this._targetEntity=A,A)this._targetPosition=void 0;this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_TARGET_ENTITY",{playerCamera:this,entity:A})}setTargetPosition(A){if(!this._requirePlayerWorld("setTargetPosition"))return;if(A&&this._attachedToPosition?.x===A.x&&this._attachedToPosition?.y===A.y&&this._attachedToPosition?.z===A.z)return l.error(`PlayerCamera.setTargetPosition(): Position ${A.x}, ${A.y}, ${A.z} is already set as the attachment. Attachment and target cannot be the same!`);if(this._targetPosition=A,A)this._targetEntity=void 0;this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_TARGET_POSITION",{playerCamera:this,position:A})}setViewModel(A){if(!this._requirePlayerWorld("setViewModel"))return;if(!this._attachedToEntity)return l.error("PlayerCamera.setViewModel(): Camera is not attached to an entity, cannot set view model! Use camera.setAttachedToEntity() first.");this._viewModelUri=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_VIEW_MODEL",{playerCamera:this,viewModelUri:A})}setViewModelHiddenNodes(A){if(!this._requirePlayerWorld("setViewModelHiddenNodes"))return;this._viewModelHiddenNodes=new Set(A.map((Q)=>Q.toLowerCase())),this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_VIEW_MODEL_HIDDEN_NODES",{playerCamera:this,viewModelHiddenNodes:this._viewModelHiddenNodes})}setViewModelPitchesWithCamera(A){if(!this._requirePlayerWorld("setViewModelPitchesWithCamera"))return;this._viewModelPitchesWithCamera=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_VIEW_MODEL_PITCHES_WITH_CAMERA",{playerCamera:this,viewModelPitchesWithCamera:A})}setViewModelShownNodes(A){if(!this._requirePlayerWorld("setViewModelShownNodes"))return;this._viewModelShownNodes=new Set(A.map((Q)=>Q.toLowerCase())),this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_VIEW_MODEL_SHOWN_NODES",{playerCamera:this,viewModelShownNodes:this._viewModelShownNodes})}setViewModelYawsWithCamera(A){if(!this._requirePlayerWorld("setViewModelYawsWithCamera"))return;this._viewModelYawsWithCamera=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_VIEW_MODEL_YAWS_WITH_CAMERA",{playerCamera:this,viewModelYawsWithCamera:A})}setZoom(A){if(!this._requirePlayerWorld("setZoom"))return;this._zoom=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_ZOOM",{playerCamera:this,zoom:A})}serialize(){return GQ.serializePlayerCamera(this)}_requirePlayerWorld(A){if(!this.player.world)l.error(`PlayerCamera._requirePlayerWorld(): Player ${this.player.id} is not in a world, invoked method: ${A}()`);return!!this.player.world}}var ew;((X)=>{X.APPEND="PLAYER_UI.APPEND";X.DATA="PLAYER_UI.DATA";X.FREEZE_POINTER_LOCK="PLAYER_UI.FREEZE_POINTER_LOCK";X.LOAD="PLAYER_UI.LOAD";X.LOCK_POINTER="PLAYER_UI.LOCK_POINTER";X.SEND_DATA="PLAYER_UI.SEND_DATA"})(ew||={});class oD extends BQ{player;constructor(A){super();this.player=A}append(A){if(!this.player.world)return;this.emitWithWorld(this.player.world,"PLAYER_UI.APPEND",{playerUI:this,htmlUri:A})}freezePointerLock(A){if(!this.player.world)return;this.emitWithWorld(this.player.world,"PLAYER_UI.FREEZE_POINTER_LOCK",{playerUI:this,freeze:A})}load(A){if(!this.player.world)return;this.emitWithWorld(this.player.world,"PLAYER_UI.LOAD",{playerUI:this,htmlUri:A})}lockPointer(A){if(!this.player.world)return;this.emitWithWorld(this.player.world,"PLAYER_UI.LOCK_POINTER",{playerUI:this,lock:A})}sendData(A){if(!this.player.world)return;this.emitWithWorld(this.player.world,"PLAYER_UI.SEND_DATA",{playerUI:this,data:A})}}var lWB=["w","a","s","d","sp","sh","tb","ml","mr","q","e","r","f","z","x","c","v","u","i","o","j","k","l","n","m","1","2","3","4","5","6","7","8","9","0","cp","cy","iro","ird","jd"],tD;((G)=>{G.CHAT_MESSAGE_SEND="PLAYER.CHAT_MESSAGE_SEND";G.INTERACT="PLAYER.INTERACT";G.JOINED_WORLD="PLAYER.JOINED_WORLD";G.LEFT_WORLD="PLAYER.LEFT_WORLD";G.RECONNECTED_WORLD="PLAYER.RECONNECTED_WORLD";G.REQUEST_NOTIFICATION_PERMISSION="PLAYER.REQUEST_NOTIFICATION_PERMISSION";G.REQUEST_SYNC="PLAYER.REQUEST_SYNC"})(tD||={});class TE extends BQ{static _devNextPlayerId=1;id;username;profilePictureUrl;camera;connection;cosmetics;ui;_input={};_interactEnabled=!0;_lastUnreliableInputSequenceNumber=0;_maxInteractDistance=20;_persistedData;_world;_worldSwitched=!1;constructor(A,Q){super();this.id=Q?.user.id??`player-${TE._devNextPlayerId++}`,this.username=Q?.user.username??this.id,this.profilePictureUrl=Q?.user.profilePictureURL??void 0,this.camera=new aD(this),this.connection=A,this.cosmetics=P5.instance.getPlayerCosmetics(this.id),this.ui=new oD(this),A.onPacket(gQ.PacketId.CHAT_MESSAGE_SEND,this._onChatMessageSendPacket),A.onPacket(gQ.PacketId.DEBUG_CONFIG,this._onDebugConfigPacket),A.onPacket(gQ.PacketId.INPUT,this._onInputPacket),A.onPacket(gQ.PacketId.SYNC_REQUEST,this._onSyncRequestPacket),A.onPacket(gQ.PacketId.UI_DATA_SEND,this._onUIDataSendPacket)}get input(){return this._input}get isInteractEnabled(){return this._interactEnabled}get maxInteractDistance(){return this._maxInteractDistance}get world(){return this._world}disconnect(){this._leaveWorld(),this.connection.disconnect()}getPersistedData(){if(!this._persistedData)return;let A=Object.keys(this._persistedData);if(A.length===0||A.length===1&&A[0]==="__version")return;return this._persistedData}joinWorld(A){if(this._world===A)return;if(!this._world)this._world=A,this.emitWithWorld(this._world,"PLAYER.JOINED_WORLD",{player:this,world:this._world});else{for(let Q of this._world.entityManager.getPlayerEntitiesByPlayer(this))if(Q.isSpawned)Q.despawn();this.disconnect(),this._world=A,this._worldSwitched=!0}}async scheduleNotification(A,Q){if(!this._world)return l.warning("Player.scheduleNotification(): Player must be in a world to schedule a notification.");return this.emitWithWorld(this._world,"PLAYER.REQUEST_NOTIFICATION_PERMISSION",{player:this}),P5.instance.scheduleNotification(this.id,A,Q)}async unscheduleNotification(A){if(!A)return!1;return P5.instance.unscheduleNotification(A)}async loadInitialPersistedData(){if(this._persistedData)return;this._persistedData=await s7.instance.getPlayerData(this)}reconnected(){if(!this._world)return;if(this._lastUnreliableInputSequenceNumber=0,!this._worldSwitched)this.emitWithWorld(this._world,"PLAYER.RECONNECTED_WORLD",{player:this,world:this._world});else this._worldSwitched=!1,this.emitWithWorld(this._world,"PLAYER.JOINED_WORLD",{player:this,world:this._world})}resetInputs(){this._input={}}setInteractEnabled(A){this._interactEnabled=A}setMaxInteractDistance(A){this._maxInteractDistance=A}setPersistedData(A){if(!this._persistedData){l.warning(`Player.setPersistedData(): Persisted data not found for player ${this.id}`);return}for(let[Q,B]of Object.entries(A))this._persistedData[Q]=B}serialize(){return GQ.serializePlayer(this)}_leaveWorld(){if(!this._world)return;this.emitWithWorld(this._world,"PLAYER.LEFT_WORLD",{player:this,world:this._world}),this._world=void 0}_onChatMessageSendPacket=(A)=>{if(!this._world)return;let Q=A[1].m;if(this._world.chatManager.handleCommand(this,Q)){this._world.chatManager.sendPlayerMessage(this,`Command Entered: ${Q}`,"CCCCCC");return}this.emitWithWorld(this._world,"PLAYER.CHAT_MESSAGE_SEND",{player:this,message:Q})};_onDebugConfigPacket=(A)=>{console.log(A)};_onInputPacket=(A)=>{let Q=A[1];if(Q.sq!==void 0){if(Q.sq{if(!this.world||!this._input.ird||!this._input.iro)return;if(this._interactEnabled){let A={x:this._input.iro[0],y:this._input.iro[1],z:this._input.iro[2]},Q={x:this._input.ird[0],y:this._input.ird[1],z:this._input.ird[2]},B=this.world.entityManager.getPlayerEntitiesByPlayer(this)[0],Y=this.world.simulation.raycast(A,Q,this._maxInteractDistance,{filterExcludeRigidBody:B?.rawRigidBody,filterFlags:WB.QueryFilterFlags.EXCLUDE_SENSORS});if(this.emitWithWorld(this.world,"PLAYER.INTERACT",{player:this,interactOrigin:A,interactDirection:Q,raycastHit:Y}),Y?.hitEntity)Y.hitEntity.interact(this,Y);if(Y?.hitBlock)Y.hitBlock.blockType.interact(this,Y)}};_onSyncRequestPacket=()=>{if(this._world)this.emitWithWorld(this._world,"PLAYER.REQUEST_SYNC",{player:this,receivedAt:Date.now(),receivedAtMs:performance.now()})};_onUIDataSendPacket=(A)=>{this.ui.emit("PLAYER_UI.DATA",{playerUI:this.ui,data:A[1]})}}var Au;((B)=>{B.BROADCAST_MESSAGE="CHAT.BROADCAST_MESSAGE";B.PLAYER_MESSAGE="CHAT.PLAYER_MESSAGE"})(Au||={});class eD extends BQ{_commandCallbacks={};_world;constructor(A){super();this._world=A,this._subscribeToPlayerEvents()}registerCommand(A,Q){this._commandCallbacks[A]=Q}unregisterCommand(A){delete this._commandCallbacks[A]}sendBroadcastMessage(A,Q){this._sendBroadcastMessage(void 0,A,Q)}handleCommand(A,Q){let[B,...Y]=Q.split(" "),J=this._commandCallbacks[B];if(J)return J(A,Y,Q),!0;return!1}sendPlayerMessage(A,Q,B){this.emitWithWorld(this._world,"CHAT.PLAYER_MESSAGE",{player:A,message:Q,color:B})}_subscribeToPlayerEvents(){this._world.on("PLAYER.CHAT_MESSAGE_SEND",(A)=>{let{player:Q,message:B}=A;this._sendBroadcastMessage(Q,B)})}_sendBroadcastMessage(A,Q,B){this.emitWithWorld(this._world,"CHAT.BROADCAST_MESSAGE",{player:A,message:Q,color:B})}}var d9=16,T5=d9-1,wZ=Math.log2(d9),c9=d9**3,SE=255;class MY{_blocks;_blockRotations=new Map;_originCoordinate;constructor(A){this._blocks=new Uint8Array(c9),this._originCoordinate=A}get blocks(){return this._blocks}get blockRotations(){return this._blockRotations}get originCoordinate(){return this._originCoordinate}static blockIndexToLocalCoordinate(A){return{x:A&T5,y:A>>wZ&T5,z:A>>wZ*2&T5}}static localCoordinateToBlockIndex(A){return A.x+(A.y<SE)return l.error(`Chunk.setBlock(): Block type id ${Q} is out of bounds (expected 0-${SE}).`);let Y=this._getIndex(A);if(this._blocks[Y]=Q,this._blockRotations.delete(Y),B&&B!==w8.Y_0)this._blockRotations.set(Y,B)}serialize(){return GQ.serializeChunk(this)}_getIndex(A){return MY.localCoordinateToBlockIndex(A)}_isValidLocalCoordinate(A){return A.x>=0&&A.x<=T5&&A.y>=0&&A.y<=T5&&A.z>=0&&A.z<=T5}}var pWB=32,iWB=c9/pWB,AN=54,nWB=BigInt(AN),sWB=BigInt(AN*2),Qu;((Y)=>{Y.ADD_CHUNK="CHUNK_LATTICE.ADD_CHUNK";Y.REMOVE_CHUNK="CHUNK_LATTICE.REMOVE_CHUNK";Y.SET_BLOCK="CHUNK_LATTICE.SET_BLOCK"})(Qu||={});class QN extends BQ{_blockTypeColliders=new Map;_blockTypeChunkMasks=new Map;_blockTypeCounts=new Map;_chunks=new Map;_rigidBody;_world;constructor(A){super();this._world=A}get chunkCount(){return this._chunks.size}clear(){for(let A of this._blockTypeColliders.values())A.removeFromSimulation();this._chunks.forEach((A)=>{this.emitWithWorld(this._world,"CHUNK_LATTICE.REMOVE_CHUNK",{chunkLattice:this,chunk:A})}),this._blockTypeColliders.clear(),this._blockTypeChunkMasks.clear(),this._blockTypeCounts.clear(),this._chunks.clear()}getBlockId(A){let Q=this.getChunk(A);if(!Q)return 0;return Q.getBlockId(MY.globalCoordinateToLocalCoordinate(A))}getBlockTypeCollider(A){return this._blockTypeColliders.get(A)}getBlockType(A){let Q=this.getBlockId(A);return Q?this._world.blockTypeRegistry.getBlockType(Q):null}getBlockTypeCount(A){if(!this._isValidBlockTypeId(A))return 0;return this._blockTypeCounts.get(A)??0}getChunk(A){return this._chunks.get(this._getChunkKey(A))}getOrCreateBlockTypeCollider(A,Q){let B=this._blockTypeColliders.get(A);if(B)return B;let J=this._world.blockTypeRegistry.getBlockType(A).createCollider(Q);return this._blockTypeColliders.set(A,J),J}getOrCreateChunk(A){let Q=MY.globalCoordinateToOriginCoordinate(A),B=this._packCoordinate(Q),Y=this._chunks.get(B);if(Y)return Y;return Y=new MY(Q),this._chunks.set(B,Y),this.emitWithWorld(this._world,"CHUNK_LATTICE.ADD_CHUNK",{chunkLattice:this,chunk:Y}),Y}getAllChunks(){return Array.from(this._chunks.values())}hasBlock(A){let Q=this.getChunk(A);if(!Q)return!1;return Q.hasBlock(MY.globalCoordinateToLocalCoordinate(A))}hasChunk(A){return this._chunks.has(this._getChunkKey(A))}initializeBlocks(A){let Q=function*(){for(let B in A){let Y=Number(B),J=A[Y];for(let C=0;C>>0;if(G===0)continue;let W=G;while(W!==0){let F=W&-W,Z=31-Math.clz32(F),U=(X<<5)+Z,$=MY.blockIndexToLocalCoordinate(U),E=C.getBlockRotation($);Q.push({globalCoordinate:{x:C.originCoordinate.x+$.x,y:C.originCoordinate.y+$.y,z:C.originCoordinate.z+$.z},blockRotation:E===w8.Y_0?void 0:E}),W=(W&W-1)>>>0}}}return Q}_isChunkMaskEmpty(A){for(let Q=0;Q=0&&A<=SE;if(!Q)l.error(`ChunkLattice._isValidBlockTypeId(): Block type id ${A} is out of bounds (expected 0-${SE}).`);return Q}_setBlockTypePlacement(A,Q,B){let Y=this._blockTypeChunkMasks.get(A);if(!Y){if(!B)return;Y=new Map,this._blockTypeChunkMasks.set(A,Y)}let J=this._getChunkKey(Q),C=MY.globalCoordinateToLocalCoordinate(Q),X=MY.localCoordinateToBlockIndex(C),G=X>>>5,W=1<<(X&31)>>>0,F=Y.get(J);if(!F){if(!B)return;F=new Uint32Array(iWB),Y.set(J,F)}let Z=(F[G]&W)!==0;if(B){if(Z)return;F[G]|=W,this._blockTypeCounts.set(A,(this._blockTypeCounts.get(A)??0)+1);return}if(!Z)return;F[G]&=~W;let U=Math.max(0,(this._blockTypeCounts.get(A)??0)-1);if(U>0)this._blockTypeCounts.set(A,U);else this._blockTypeCounts.delete(A),this._blockTypeChunkMasks.delete(A);if(this._blockTypeChunkMasks.has(A)&&this._isChunkMaskEmpty(F))Y.delete(J)}}class BN{_colliderHandleBlockTypeMap=new Map;_colliderHandleCollisionCallbackMap=new Map;_colliderHandleEntityMap=new Map;_cleanupBlockTypeColliderHandles=new Set;_pendingCleanupBlockTypeColliderHandles=new Set;_cleanupCollisionCallbackColliderHandles=new Set;_pendingCleanupCollisionCallbackColliderHandles=new Set;_cleanupEntityColliderHandles=new Set;_pendingCleanupEntityColliderHandles=new Set;getColliderBlockType(A){if(!this._requireSimulatedCollider(A))return;return this._colliderHandleBlockTypeMap.get(A.rawCollider.handle)}getColliderCollisionCallback(A){if(!this._requireSimulatedCollider(A))return;return this._colliderHandleCollisionCallbackMap.get(A.rawCollider.handle)}getColliderEntity(A){if(!this._requireSimulatedCollider(A))return;return this._colliderHandleEntityMap.get(A.rawCollider.handle)}getColliderHandleBlockType(A){return this._colliderHandleBlockTypeMap.get(A)}getColliderHandleCollisionCallback(A){return this._colliderHandleCollisionCallbackMap.get(A)}getColliderHandleEntity(A){return this._colliderHandleEntityMap.get(A)}removeColliderBlockType(A){if(!this._requireSimulatedCollider(A))return;this.removeColliderHandleBlockType(A.rawCollider.handle)}removeColliderCollisionCallback(A){if(!this._requireSimulatedCollider(A))return;this.removeColliderHandleCollisionCallback(A.rawCollider.handle)}removeColliderEntity(A){if(!this._requireSimulatedCollider(A))return;this.removeColliderHandleEntity(A.rawCollider.handle)}removeColliderHandleBlockType(A){this._colliderHandleBlockTypeMap.delete(A)}removeColliderHandleCollisionCallback(A){this._colliderHandleCollisionCallbackMap.delete(A)}removeColliderHandleEntity(A){this._colliderHandleEntityMap.delete(A)}setColliderBlockType(A,Q){if(!this._requireSimulatedCollider(A))return;this.setColliderHandleBlockType(A.rawCollider.handle,Q)}setColliderCollisionCallback(A,Q){if(!this._requireSimulatedCollider(A))return;this.setColliderHandleCollisionCallback(A.rawCollider.handle,Q)}setColliderEntity(A,Q){if(!this._requireSimulatedCollider(A))return;this.setColliderHandleEntity(A.rawCollider.handle,Q)}setColliderHandleBlockType(A,Q){this._colliderHandleBlockTypeMap.set(A,Q),this._cleanupBlockTypeColliderHandles.delete(A),this._pendingCleanupBlockTypeColliderHandles.delete(A)}setColliderHandleCollisionCallback(A,Q){this._colliderHandleCollisionCallbackMap.set(A,Q),this._cleanupCollisionCallbackColliderHandles.delete(A),this._pendingCleanupCollisionCallbackColliderHandles.delete(A)}setColliderHandleEntity(A,Q){this._colliderHandleEntityMap.set(A,Q),this._cleanupEntityColliderHandles.delete(A),this._pendingCleanupEntityColliderHandles.delete(A)}queueColliderHandleForCleanup(A){if(this._colliderHandleBlockTypeMap.has(A))this._pendingCleanupBlockTypeColliderHandles.add(A);if(this._colliderHandleCollisionCallbackMap.has(A))this._pendingCleanupCollisionCallbackColliderHandles.add(A);if(this._colliderHandleEntityMap.has(A))this._pendingCleanupEntityColliderHandles.add(A)}cleanup(){for(let A of this._cleanupBlockTypeColliderHandles)this._colliderHandleBlockTypeMap.delete(A);if(this._cleanupBlockTypeColliderHandles.size>0)this._cleanupBlockTypeColliderHandles.clear();for(let A of this._cleanupCollisionCallbackColliderHandles)this._colliderHandleCollisionCallbackMap.delete(A);if(this._cleanupCollisionCallbackColliderHandles.size>0)this._cleanupCollisionCallbackColliderHandles.clear();for(let A of this._cleanupEntityColliderHandles)this._colliderHandleEntityMap.delete(A);if(this._cleanupEntityColliderHandles.size>0)this._cleanupEntityColliderHandles.clear();for(let A of this._pendingCleanupBlockTypeColliderHandles)this._cleanupBlockTypeColliderHandles.add(A);if(this._pendingCleanupBlockTypeColliderHandles.size>0)this._pendingCleanupBlockTypeColliderHandles.clear();for(let A of this._pendingCleanupCollisionCallbackColliderHandles)this._cleanupCollisionCallbackColliderHandles.add(A);if(this._pendingCleanupCollisionCallbackColliderHandles.size>0)this._pendingCleanupCollisionCallbackColliderHandles.clear();for(let A of this._pendingCleanupEntityColliderHandles)this._cleanupEntityColliderHandles.add(A);if(this._pendingCleanupEntityColliderHandles.size>0)this._pendingCleanupEntityColliderHandles.clear()}_requireSimulatedCollider(A){if(!A.rawCollider)l.error("ColliderMap._requireSimulatedCollider(): Collider is not in the simulation.");return!!A.rawCollider}}class G0 extends UZ{static BASE_ENTITY_HEIGHT=1.5;static GROUND_SENSOR_HEIGHT_SCALE=0.125;static GROUND_SENSOR_RADIUS_SCALE=0.23;static JUMP_LAND_HEAVY_VELOCITY_THRESHOLD=-12;static WALL_COLLIDER_HEIGHT_SCALE=0.33;static WALL_COLLIDER_RADIUS_SCALE=0.4;static MOVEMENT_ROTATIONS={wa:Math.PI/4,wd:-Math.PI/4,sa:Math.PI-Math.PI/4,sd:Math.PI+Math.PI/4,s:Math.PI,asd:Math.PI,a:Math.PI/2,d:-Math.PI/2};static EXTERNAL_IMPULSE_DECAY_RATE=0.253;static SWIM_UPWARD_COOLDOWN_MS=600;static SWIMMING_DRAG_FACTOR=0.05;static WATER_ENTRY_SINKING_FACTOR=0.8;static WATER_ENTRY_SINKING_MS=250;applyDirectionalMovementRotations=!0;autoCancelMouseLeftClick=!0;canJump=()=>!0;canRun=()=>!0;canSwim=()=>!0;canWalk=()=>!0;facesCameraWhenIdle=!1;idleLoopedAnimations=["idle-upper","idle-lower"];interactOneshotAnimations=["simple-interact"];jumpLandHeavyOneshotAnimations=["jump-post-heavy"];jumpLandLightOneshotAnimations=["jump-post-light"];jumpOneshotAnimations=["jump-loop"];jumpVelocity=10;runLoopedAnimations=["run-upper","run-lower"];runVelocity=8;sticksToPlatforms=!0;swimFastVelocity=5;swimGravity=0;swimIdleLoopedAnimations=["swim-idle"];swimLoopedAnimations=["swim-forward"];swimMaxGravityVelocity=-1;swimSlowVelocity=3;swimUpwardVelocity=2;walkLoopedAnimations=["walk-upper","walk-lower"];walkVelocity=4;_externalVelocity={x:0,y:0,z:0};_magnitudeYTracker=0;_groundContactCount=0;_internalApplyImpulse=()=>{};_isActivelyMoving=!1;_isFullySubmerged=!1;_justSubmergedUntil=0;_liquidContactCount=0;_platform;_reusableImpulse={x:0,y:0,z:0};_reusablePlatformVelocity={x:0,y:0,z:0};_reusableTargetVelocities={x:0,y:0,z:0};_reusableVelocityClamp={x:0,y:0,z:0};_stepAudio;_swimUpwardCooldownAt=0;constructor(A={}){super();this.applyDirectionalMovementRotations=A.applyDirectionalMovementRotations??this.applyDirectionalMovementRotations,this.autoCancelMouseLeftClick=A.autoCancelMouseLeftClick??this.autoCancelMouseLeftClick,this.facesCameraWhenIdle=A.facesCameraWhenIdle??this.facesCameraWhenIdle,this.sticksToPlatforms=A.sticksToPlatforms??this.sticksToPlatforms,this.canJump=A.canJump??this.canJump,this.canRun=A.canRun??this.canRun,this.canSwim=A.canSwim??this.canSwim,this.canWalk=A.canWalk??this.canWalk,this.jumpVelocity=A.jumpVelocity??this.jumpVelocity,this.runVelocity=A.runVelocity??this.runVelocity,this.walkVelocity=A.walkVelocity??this.walkVelocity,this.swimFastVelocity=A.swimFastVelocity??this.swimFastVelocity,this.swimSlowVelocity=A.swimSlowVelocity??this.swimSlowVelocity,this.swimUpwardVelocity=A.swimUpwardVelocity??this.swimUpwardVelocity,this.swimGravity=A.swimGravity??this.swimGravity,this.swimMaxGravityVelocity=A.swimMaxGravityVelocity??this.swimMaxGravityVelocity,this.idleLoopedAnimations=A.idleLoopedAnimations??this.idleLoopedAnimations,this.interactOneshotAnimations=A.interactOneshotAnimations??this.interactOneshotAnimations,this.jumpOneshotAnimations=A.jumpOneshotAnimations??this.jumpOneshotAnimations,this.jumpLandHeavyOneshotAnimations=A.jumpLandHeavyOneshotAnimations??this.jumpLandHeavyOneshotAnimations,this.jumpLandLightOneshotAnimations=A.jumpLandLightOneshotAnimations??this.jumpLandLightOneshotAnimations,this.runLoopedAnimations=A.runLoopedAnimations??this.runLoopedAnimations,this.swimLoopedAnimations=A.swimLoopedAnimations??this.swimLoopedAnimations,this.swimIdleLoopedAnimations=A.swimIdleLoopedAnimations??this.swimIdleLoopedAnimations,this.walkLoopedAnimations=A.walkLoopedAnimations??this.walkLoopedAnimations}get isActivelyMoving(){return this._isActivelyMoving}get isGrounded(){return this._groundContactCount>0}get isOnPlatform(){return!!this._platform}get isSwimming(){return this._liquidContactCount>0}get platform(){return this._platform}attach(A){super.attach(A),this._internalApplyImpulse=A.applyImpulse.bind(A),A.applyImpulse=(Q)=>{let B=A.mass||1;this._externalVelocity.x+=Q.x/B,this._externalVelocity.y+=Q.y/B,this._externalVelocity.z+=Q.z/B},this._stepAudio=new $D({uri:"audio/sfx/step/stone/stone-step-04.mp3",loop:!0,volume:0.1,referenceDistance:2,cutoffDistance:15,attachedToEntity:A}),A.setCcdEnabled(!0),A.lockAllRotations(),A.on("ENTITY.BLOCK_COLLISION",({blockType:Q,started:B})=>{if(!Q.isLiquid||!this.canSwim(this))return;if(this._liquidContactCount<=0&&B){let Y=A.linearVelocity;A.setLinearVelocity({x:Y.x*this.swimGravity,y:Y.y*this.swimGravity,z:Y.z*this.swimGravity})}if(this._liquidContactCount+=B?1:-1,this._liquidContactCount>0)A.setGravityScale(this.swimGravity),A.stopAllModelAnimations((Y)=>this.swimLoopedAnimations.includes(Y.name)),this._swimUpwardCooldownAt=performance.now()+G0.SWIM_UPWARD_COOLDOWN_MS;else A.setGravityScale(1),A.stopModelAnimations(this.swimLoopedAnimations)})}spawn(A){if(!A.isSpawned)return l.error("DefaultPlayerEntityController.spawn(): Entity is not spawned!");A.createAndAddChildCollider({shape:"cylinder",radius:G0.GROUND_SENSOR_RADIUS_SCALE*(A.height/G0.BASE_ENTITY_HEIGHT),halfHeight:G0.GROUND_SENSOR_HEIGHT_SCALE*(A.height/G0.BASE_ENTITY_HEIGHT),collisionGroups:{belongsTo:[4],collidesWith:[1,2,8]},isSensor:!0,relativePosition:{x:0,y:-A.height/2,z:0},tag:"groundSensor",onCollision:(Q,B)=>{if(!A.isSpawned)return;if(!(Q instanceof O8)||!Q.isLiquid){if(B&&this._groundContactCount===0&&A.linearVelocity.y<-1)if(A.linearVelocity.yw.includes(P.name)||P.loopMode===0);for(let P of w)A.getModelAnimation(P)?.setLoopMode(1),A.getModelAnimation(P)?.play();this._stepAudio?.setPlaybackRate(V?0.75:0.51),this._stepAudio?.play(A.world,!this._stepAudio?.isPlaying)}else if(this._isFullySubmerged&&this.canSwim(this))if(this._stepAudio?.pause(),this._isActivelyMoving){A.stopAllModelAnimations((w)=>this.swimLoopedAnimations.includes(w.name)||w.loopMode===0);for(let w of this.swimLoopedAnimations)A.getModelAnimation(w)?.setLoopMode(1),A.getModelAnimation(w)?.play()}else{A.stopAllModelAnimations((w)=>this.swimIdleLoopedAnimations.includes(w.name)||w.loopMode===0);for(let w of this.swimIdleLoopedAnimations)A.getModelAnimation(w)?.setLoopMode(1),A.getModelAnimation(w)?.play()}else{this._stepAudio?.pause(),A.stopAllModelAnimations((w)=>this.idleLoopedAnimations.includes(w.name)||w.loopMode===0);for(let w of this.idleLoopedAnimations)A.getModelAnimation(w)?.setLoopMode(1),A.getModelAnimation(w)?.play()}let L;if(this.applyDirectionalMovementRotations&&D){if(I)L=$;else if(J&&C&&!G&&!X)L=G0.MOVEMENT_ROTATIONS.wa;else if(J&&G&&!C&&!X)L=G0.MOVEMENT_ROTATIONS.wd;else if(X&&C&&!J&&!G)L=G0.MOVEMENT_ROTATIONS.sa;else if(X&&G&&!J&&!C)L=G0.MOVEMENT_ROTATIONS.sd;else if(X&&!J&&!C&&!G||C&&X&&G&&!J)L=G0.MOVEMENT_ROTATIONS.s;else if(C&&!J&&!X&&!G)L=G0.MOVEMENT_ROTATIONS.a;else if(G&&!J&&!C&&!X)L=G0.MOVEMENT_ROTATIONS.d}if(U){for(let w of this.interactOneshotAnimations)A.getModelAnimation(w)?.setBlendMode(0),A.getModelAnimation(w)?.restart();Q.ml=!this.autoCancelMouseLeftClick}if(D){let w=!this.isSwimming?V?this.runVelocity:this.walkVelocity:V?this.swimFastVelocity:this.swimSlowVelocity;if(I){let P=E+$;this._reusableTargetVelocities.x=-w*Math.sin(P),this._reusableTargetVelocities.z=-w*Math.cos(P)}else{let P=Math.sin(E),_=Math.cos(E);if(J)this._reusableTargetVelocities.x-=w*P,this._reusableTargetVelocities.z-=w*_;if(X)this._reusableTargetVelocities.x+=w*P,this._reusableTargetVelocities.z+=w*_;if(C)this._reusableTargetVelocities.x-=w*_,this._reusableTargetVelocities.z+=w*P;if(G)this._reusableTargetVelocities.x+=w*_,this._reusableTargetVelocities.z-=w*P;let j=Math.sqrt(this._reusableTargetVelocities.x*this._reusableTargetVelocities.x+this._reusableTargetVelocities.z*this._reusableTargetVelocities.z);if(j>w){let k=w/j;this._reusableTargetVelocities.x*=k,this._reusableTargetVelocities.z*=k}}}if(this.isSwimming){if(K.ythis.swimUpwardVelocity*2)this._reusableVelocityClamp.x=K.x,this._reusableVelocityClamp.y=this.swimUpwardVelocity*2,this._reusableVelocityClamp.z=K.z,A.setLinearVelocity(this._reusableVelocityClamp);if(W)this._reusableTargetVelocities.y=-this.swimUpwardVelocity;else if(performance.now()-0.001&&K.y<=3)this._reusableTargetVelocities.y=this.jumpVelocity;else if(this.isSwimming&&performance.now()>this._swimUpwardCooldownAt)this._reusableTargetVelocities.y=this.swimUpwardVelocity}let z=this._platform?.linearVelocity??this._reusablePlatformVelocity;if(this._externalVelocity.y!==0)this._magnitudeYTracker+=this._externalVelocity.y;if(this._externalVelocity.x!==0||this._externalVelocity.y!==0||this._externalVelocity.z!==0){if(this.isGrounded){let w=Math.sqrt(this._externalVelocity.x*this._externalVelocity.x+this._magnitudeYTracker*this._magnitudeYTracker+this._externalVelocity.z*this._externalVelocity.z);if(w>0.01){let _=Math.max(0,w-G0.EXTERNAL_IMPULSE_DECAY_RATE)/w;this._externalVelocity.x*=_,this._magnitudeYTracker*=_,this._externalVelocity.z*=_}else this._externalVelocity.x=0,this._externalVelocity.y=0,this._magnitudeYTracker=0,this._externalVelocity.z=0}}let M=this._reusableTargetVelocities.x+this._externalVelocity.x-K.x+z.x,N=this._reusableTargetVelocities.y+this._externalVelocity.y+z.y,q=this._reusableTargetVelocities.z+this._externalVelocity.z-K.z+z.z;if(this._externalVelocity.y=0,M!==0||N!==0||q!==0){let w=A.mass;this._reusableImpulse.x=M*w,this._reusableImpulse.y=N*w,this._reusableImpulse.z=q*w,this._internalApplyImpulse(this._reusableImpulse)}if(E!==void 0&&(this.facesCameraWhenIdle||this.isActivelyMoving)){let P=(L!==void 0?E+L:E)*0.5;A.setRotation({x:0,y:Math.sin(P),z:0,w:Math.cos(P)})}}}var Bu;((G)=>{G.LOAD="SCENE_UI.LOAD";G.SET_ATTACHED_TO_ENTITY="SCENE_UI.SET_ATTACHED_TO_ENTITY";G.SET_OFFSET="SCENE_UI.SET_OFFSET";G.SET_POSITION="SCENE_UI.SET_POSITION";G.SET_STATE="SCENE_UI.SET_STATE";G.SET_VIEW_DISTANCE="SCENE_UI.SET_VIEW_DISTANCE";G.UNLOAD="SCENE_UI.UNLOAD"})(Bu||={});class YN extends BQ{_id;_attachedToEntity;_offset;_position;_state={};_templateId;_viewDistance;_world;constructor(A){if(!!A.attachedToEntity===!!A.position)l.fatalError("Either attachedToEntity or position must be set, but not both");super();this._attachedToEntity=A.attachedToEntity,this._offset=A.offset,this._position=A.position,this._state=A.state??{},this._templateId=A.templateId,this._viewDistance=A.viewDistance}get id(){return this._id}get attachedToEntity(){return this._attachedToEntity}get isLoaded(){return this._id!==void 0}get offset(){return this._offset}get position(){return this._position}get state(){return this._state}get templateId(){return this._templateId}get viewDistance(){return this._viewDistance}get world(){return this._world}load(A){if(this.isLoaded)return;if(this._attachedToEntity&&!this._attachedToEntity.isSpawned)return l.error(`SceneUI.load(): Attached entity ${this._attachedToEntity.id} must be spawned before loading SceneUI!`);this._id=A.sceneUIManager.registerSceneUI(this),this._world=A,this.emitWithWorld(A,"SCENE_UI.LOAD",{sceneUI:this})}setAttachedToEntity(A){if(!A.isSpawned)return l.error(`SceneUI.setAttachedToEntity(): Entity ${A.id} is not spawned!`);if(this._attachedToEntity===A)return;if(this._attachedToEntity=A,this._position=void 0,this.isLoaded)this.emitWithWorld(this._world,"SCENE_UI.SET_ATTACHED_TO_ENTITY",{sceneUI:this,entity:A})}setOffset(A){if(this._offset===A)return;if(this._offset=A,this.isLoaded)this.emitWithWorld(this._world,"SCENE_UI.SET_OFFSET",{sceneUI:this,offset:A})}setPosition(A){if(this._position===A)return;if(this._attachedToEntity=void 0,this._position=A,this.isLoaded)this.emitWithWorld(this._world,"SCENE_UI.SET_POSITION",{sceneUI:this,position:A})}setState(A){if(this._state={...this._state,...A},this.isLoaded)this.emitWithWorld(this._world,"SCENE_UI.SET_STATE",{sceneUI:this,state:this._state})}setViewDistance(A){if(this._viewDistance=A,this.isLoaded)this.emitWithWorld(this._world,"SCENE_UI.SET_VIEW_DISTANCE",{sceneUI:this,viewDistance:A})}unload(){if(!this.isLoaded||!this._world)return;this._world.sceneUIManager.unregisterSceneUI(this),this.emitWithWorld(this._world,"SCENE_UI.UNLOAD",{sceneUI:this}),this._id=void 0,this._world=void 0}serialize(){return GQ.serializeSceneUI(this)}}var xIA=0.010000000000000002,fIA=Math.cos(0.026);class BX extends X0{player;nametagSceneUI;_tickWithPlayerInputEnabled=!0;constructor(A){super(A);this._positionUpdateThresholdSq=xIA,this._rotationUpdateThreshold=fIA,this.player=A.player,this.nametagSceneUI=new YN({templateId:"hytopia:nametag",attachedToEntity:this,offset:{x:0,y:1,z:0},viewDistance:15,state:{username:this.player.username,profilePictureUrl:this.player.profilePictureUrl}})}get isTickWithPlayerInputEnabled(){return this._tickWithPlayerInputEnabled}setTickWithPlayerInputEnabled(A){this._tickWithPlayerInputEnabled=A}spawn(A,Q,B){super.spawn(A,Q,B),this.nametagSceneUI.load(A),this.player.on("PLAYER.CHAT_MESSAGE_SEND",({message:Y})=>{this.nametagSceneUI.setState({chat:Y})})}tick(A){if(!this.isSpawned||!this.world)return;if(!this.controller)return l.error(`PlayerEntity.tick(): PlayerEntity "${this.name}" must have a controller.`);if(this._tickWithPlayerInputEnabled){let{input:Q,camera:B}=this.player;this.controller.tickWithPlayerInput(this,Q,B.orientation,A)}super.tick(A)}}var bIA="models/players/player.gltf",rWB={BACK:"back-anchor",HEAD:"head-anchor",LEFT_ARM:"arm-left-anchor",LEFT_FOOT:"foot-left-anchor",LEFT_HAND:"hand-left-anchor",LEFT_ITEM:"hand-left-anchor",LEFT_LEG:"leg-left-anchor",RIGHT_ARM:"arm-right-anchor",RIGHT_FOOT:"foot-right-anchor",RIGHT_HAND:"hand-right-anchor",RIGHT_ITEM:"hand-right-anchor",RIGHT_LEG:"leg-right-anchor",TORSO:"torso-anchor"};class Yu extends BX{_cosmeticHiddenSlots;constructor(A){super({controller:new G0,modelAnimations:[{name:"idle-lower",loopMode:1,play:!0},{name:"idle-upper",loopMode:1,play:!0}],modelUri:bIA,...A});this._cosmeticHiddenSlots=A.cosmeticHiddenSlots??[]}get cosmeticHiddenSlots(){return this._cosmeticHiddenSlots}spawn(A,Q,B){super.spawn(A,Q,B),this.player.cosmetics.then((Y)=>{if(!Y||!this.modelUri)return;if(!(Y.equippedItems.some((C)=>C.item.flags.includes("HIDES_HAIR"))&&!this._cosmeticHiddenSlots.includes("ALL")&&!this._cosmeticHiddenSlots.includes("HEAD"))&&Y.hairModelUri)new X0({modelUri:Y.hairModelUri,modelPreferredShape:"none",modelTextureUri:Y.hairTextureUri,parent:this,parentNodeName:"head-anchor"}).spawn(A,{x:0,y:0,z:0});if(this.modelUri===bIA)this.setModelTextureUri(Y.skinTextureUri);if(this._cosmeticHiddenSlots.includes("ALL"))return;for(let C of Y.equippedItems){let{item:X,slot:G}=C;if(this._cosmeticHiddenSlots.includes(G))continue;let W=rWB[G];if(!W||!yY.instance.modelHasNode(this.modelUri,W))continue;new X0({modelUri:X.modelUrl,modelPreferredShape:"none",parent:this,parentNodeName:W}).spawn(A,{x:0,y:0,z:0})}}).catch((Y)=>l.warning(`DefaultPlayerEntity.spawn(): Failed to get player cosmetics: ${Y}`))}}var mIA;((Y)=>{Y.TICK_REPORT="PERFORMANCE_MONITOR.TICK_REPORT";Y.SPIKE_DETECTED="PERFORMANCE_MONITOR.SPIKE_DETECTED";Y.SNAPSHOT="PERFORMANCE_MONITOR.SNAPSHOT"})(mIA||={});class O0 extends BQ{static _instance;static get instance(){if(!O0._instance)O0._instance=new O0;return O0._instance}_enabled=!1;_entityProfilingEnabled=!1;_spikeThresholdMs=50;_tickBudgetMs=16.67;_snapshotIntervalMs=5000;_historySize=3600;_startTime=0;_operations=new Map;_worldTicks=new Map;_entityCosts=new Map;_snapshotTimer=null;constructor(){super()}get isEnabled(){return this._enabled}get isEntityProfilingEnabled(){return this._enabled&&this._entityProfilingEnabled}enable(A){if(this._enabled)return;if(this._enabled=!0,this._startTime=performance.now(),this._spikeThresholdMs=A?.spikeThresholdMs??50,this._tickBudgetMs=A?.tickBudgetMs??16.67,this._snapshotIntervalMs=A?.snapshotIntervalMs??5000,this._historySize=A?.historySize??3600,this._worldTicks.clear(),this._operations.clear(),this._entityCosts.clear(),this._snapshotIntervalMs>0)this._snapshotTimer=setInterval(()=>{let Q=this.getSnapshot();this.emit("PERFORMANCE_MONITOR.SNAPSHOT",Q)},this._snapshotIntervalMs)}disable(){if(this._enabled=!1,this._entityProfilingEnabled=!1,this._snapshotTimer)clearInterval(this._snapshotTimer),this._snapshotTimer=null}enableEntityProfiling(A){if(this._entityProfilingEnabled=A,!A)this._entityCosts.clear()}measure(A,Q){if(!this._enabled)return Q();let B=performance.now(),Y=Q(),J=performance.now()-B;return this._recordOperation(A,J),Y}async measureAsync(A,Q){if(!this._enabled)return Q();let B=performance.now(),Y=await Q(),J=performance.now()-B;return this._recordOperation(A,J),Y}startTiming(A){if(!this._enabled)return()=>{};let Q=performance.now();return()=>{this._recordOperation(A,performance.now()-Q)}}beginTick(A,Q,B,Y=0){let J=this._getOrCreateWorldTickState(Y);J.currentTick=A,J.currentTickStart=performance.now(),J.currentPhases={},J.currentEntityCount=Q,J.currentPlayerCount=B}recordPhase(A,Q,B=0){let Y=this._worldTicks.get(B);if(!Y)return;Y.currentPhases[A]=Q}endTick(A=0){let Q=this._worldTicks.get(A);if(!Q)return;let B=performance.now()-Q.currentTickStart;if(Q.tickDurations[Q.tickIndex]=B,Q.tickIndex=(Q.tickIndex+1)%Q.tickDurations.length,Q.tickCount=Math.min(Q.tickCount+1,Q.tickDurations.length),Q.totalTicks++,B>Q.maxTickMs)Q.maxTickMs=B;if(B>this._tickBudgetMs)Q.ticksOverBudget++;let Y=process.memoryUsage().heapUsed/1048576,J={worldId:A,tick:Q.currentTick,durationMs:B,budgetMs:this._tickBudgetMs,budgetPercent:B/this._tickBudgetMs*100,phases:{...Q.currentPhases},entityCount:Q.currentEntityCount,playerCount:Q.currentPlayerCount,heapUsedMb:Y};if(this.emit("PERFORMANCE_MONITOR.TICK_REPORT",J),B>this._spikeThresholdMs)this.emit("PERFORMANCE_MONITOR.SPIKE_DETECTED",J)}recordEntityCost(A,Q,B){this._entityCosts.set(A,{tickMs:B,name:Q})}getEntityCosts(){return new Map(this._entityCosts)}getSnapshot(A){let Q=process.memoryUsage(),Y=(typeof A==="number"?this._getTickSamples(A):this._getAllTickSamples()).slice().sort((C,X)=>C-X),J=typeof A==="number"?this._getRollup(A):this._getGlobalRollup();return{uptimeMs:performance.now()-this._startTime,tickRate:60,avgTickMs:Y.length>0?Y.reduce((C,X)=>C+X,0)/Y.length:0,maxTickMs:J.maxTickMs,p95TickMs:Y.length>0?Y[Math.floor(Y.length*0.95)]:0,p99TickMs:Y.length>0?Y[Math.floor(Y.length*0.99)]:0,ticksOverBudget:J.ticksOverBudget,totalTicks:J.totalTicks,budgetMs:this._tickBudgetMs,operations:this._getOperationStats(),memory:{heapUsedMb:Q.heapUsed/1048576,heapTotalMb:Q.heapTotal/1048576,rssMb:Q.rss/1048576}}}resetStats(){this._worldTicks.clear(),this._operations.clear(),this._entityCosts.clear()}_recordOperation(A,Q){let B=this._operations.get(A);if(!B)B={count:0,totalMs:0,minMs:1/0,maxMs:0,lastMs:0,samples:new Float64Array(1000),sampleIndex:0,sampleCount:0},this._operations.set(A,B);if(B.count++,B.totalMs+=Q,B.lastMs=Q,QB.maxMs)B.maxMs=Q;B.samples[B.sampleIndex]=Q,B.sampleIndex=(B.sampleIndex+1)%B.samples.length,B.sampleCount=Math.min(B.sampleCount+1,B.samples.length)}_getOrCreateWorldTickState(A){let Q=Math.floor(A),B=this._worldTicks.get(Q);if(!B)B={tickDurations:new Float64Array(this._historySize),tickIndex:0,tickCount:0,ticksOverBudget:0,maxTickMs:0,totalTicks:0,currentTick:0,currentTickStart:0,currentPhases:{},currentEntityCount:0,currentPlayerCount:0},this._worldTicks.set(Q,B);return B}_getTickSamples(A){let Q=this._worldTicks.get(Math.floor(A));if(!Q||Q.tickCount===0)return[];let B=[];for(let Y=0;YJ-C),A[Q]={count:B.count,totalMs:B.totalMs,avgMs:B.count>0?B.totalMs/B.count:0,minMs:B.minMs===1/0?0:B.minMs,maxMs:B.maxMs,lastMs:B.lastMs,p50Ms:Y.length>0?Y[Math.floor(Y.length*0.5)]:0,p95Ms:Y.length>0?Y[Math.floor(Y.length*0.95)]:0,p99Ms:Y.length>0?Y[Math.floor(Y.length*0.99)]:0}}return A}}class JN{_activeEntities=new Set;_entities=new Map;_nextEntityId=1;_world;constructor(A){this._world=A}get entityCount(){return this._entities.size}get world(){return this._world}registerEntity(A){if(A.id!==void 0)l.fatalError(`EntityManager.registerEntity(): Entity ${A.name} is already assigned the id ${A.id}!`);let Q=this._nextEntityId;if(this._entities.set(Q,A),this._nextEntityId++,!A.isEnvironmental)this._activeEntities.add(A);return Q}unregisterEntity(A){if(A.id===void 0)return l.error(`EntityManager.unregisterEntity(): Entity ${A.name} is not assigned an id!`);if(this._entities.delete(A.id),!A.isEnvironmental)this._activeEntities.delete(A)}getAllEntities(){return Array.from(this._entities.values())}getAllPlayerEntities(){let A=[];return this._entities.forEach((Q)=>{if(Q instanceof BX)A.push(Q)}),A}getPlayerEntitiesByPlayer(A){let Q=[];return this._entities.forEach((B)=>{if(B instanceof BX&&B.player===A)Q.push(B)}),Q}getEntity(A){return this._entities.get(A)}getEntitiesByTag(A){let Q=[];return this._entities.forEach((B)=>{if(B.tag===A)Q.push(B)}),Q}getEntitiesByTagSubstring(A){let Q=[];return this._entities.forEach((B)=>{if(B.tag?.includes(A))Q.push(B)}),Q}getEntityChildren(A){let Q=[];return this._entities.forEach((B)=>{if(B.parent===A)Q.push(B)}),Q}tickEntities(A){let Q=O0.instance,B=Q.isEntityProfilingEnabled;for(let Y of this._activeEntities)if(B){let J=performance.now();Y.tick(A),Q.recordEntityCost(Y.id??0,Y.name,performance.now()-J)}else Y.tick(A)}checkAndEmitUpdates(){for(let A of this._activeEntities)A.checkAndEmitUpdates()}}import{gzipSync as om0}from"zlib";var Z9=qA(lHA(),1),qqY=Z9.default.v1,MqY=Z9.default.v1ToV6,zqY=Z9.default.v3,pHA=Z9.default.v4,RqY=Z9.default.v5,wqY=Z9.default.v6,jqY=Z9.default.v6ToV1,OqY=Z9.default.v7,PqY=Z9.default.NIL,TqY=Z9.default.MAX,SqY=Z9.default.version,kqY=Z9.default.validate,_qY=Z9.default.stringify,vqY=Z9.default.parse;var $u;try{$u=new TextDecoder}catch(A){}var _A,_8,t=0;var Vu=[],OZ=Vu,GN=0,A0={},DB,r6,k8=0,S5=0,hY,a6,p9=[],UB,iHA={useRecords:!1,mapsAsObjects:!0};class Gj{}var Iu=new Gj;Iu.name="MessagePack 0xC1";var r7=!1,ADA=2,Uu,Eu,Ku;try{Function("")}catch(A){ADA=1/0}class o6{constructor(A){if(A){if(A.useRecords===!1&&A.mapsAsObjects===void 0)A.mapsAsObjects=!0;if(A.sequential&&A.trusted!==!1){if(A.trusted=!0,!A.structures&&A.useRecords!=!1){if(A.structures=[],!A.maxSharedStructures)A.maxSharedStructures=0}}if(A.structures)A.structures.sharedLength=A.structures.length;else if(A.getStructures)(A.structures=[]).uninitialized=!0,A.structures.sharedLength=0;if(A.int64AsNumber)A.int64AsType="number"}Object.assign(this,A)}unpack(A,Q){if(_A)return ZDA(()=>{return Xj(),this?this.unpack(A,Q):o6.prototype.unpack.call(iHA,A,Q)});if(!A.buffer&&A.constructor===ArrayBuffer)A=typeof Buffer<"u"?Buffer.from(A):new Uint8Array(A);if(typeof Q==="object")_8=Q.end||A.length,t=Q.start||0;else t=0,_8=Q>-1?Q:A.length;GN=0,S5=0,r6=null,OZ=Vu,hY=null,_A=A;try{UB=A.dataView||(A.dataView=new DataView(A.buffer,A.byteOffset,A.byteLength))}catch(B){if(_A=null,A instanceof Uint8Array)throw B;throw Error("Source must be a Uint8Array or Buffer but was a "+(A&&typeof A=="object"?A.constructor.name:typeof A))}if(this instanceof o6){if(A0=this,this.structures)return DB=this.structures,Jj(Q);else if(!DB||DB.length>0)DB=[]}else if(A0=iHA,!DB||DB.length>0)DB=[];return Jj(Q)}unpackMultiple(A,Q){let B,Y=0;try{r7=!0;let J=A.length,C=this?this.unpack(A,J):Fj.unpack(A,J);if(Q){if(Q(C,Y,t)===!1)return;while(tB.slice(0));for(let B=0,Y=A.length;B=32)J.highByte=B-32>>5}}A.sharedLength=A.length;for(let B in Q||[])if(B>=0){let Y=A[B],J=Q[B];if(J){if(Y)(A.restoreStructures||(A.restoreStructures=[]))[B]=Y;A[B]=J}}return this.structures=A}decode(A,Q){return this.unpack(A,Q)}}function Jj(A){try{if(!A0.trusted&&!r7){let B=DB.sharedLength||0;if(B=32&&Uu){if(Q=Uu(_A,t,_8,A0),_A=null,!(A&&A.lazy)&&Q)Q=Q.toJSON();t=_8}else Q=ZY();if(hY)t=hY.postBundlePosition,hY=null;if(r7)DB.restoreStructures=null;if(t==_8){if(DB&&DB.restoreStructures)nHA();if(DB=null,_A=null,a6)a6=null}else if(t>_8)throw Error("Unexpected end of MessagePack data");else if(!r7){let B;try{B=JSON.stringify(Q,(Y,J)=>typeof J==="bigint"?`${J}n`:J).slice(0,100)}catch(Y){B="(JSON view not available "+Y+")"}throw Error("Data read, but end of buffer not reached "+B)}return Q}catch(Q){if(DB&&DB.restoreStructures)nHA();if(Xj(),Q instanceof RangeError||Q.message.startsWith("Unexpected end of buffer")||t>_8)Q.incomplete=!0;throw Q}}function nHA(){for(let A in DB.restoreStructures)DB[A]=DB.restoreStructures[A];DB.restoreStructures=null}function ZY(){let A=_A[t++];if(A<160)if(A<128)if(A<64)return A;else{let Q=DB[A&63]||A0.getStructures&&QDA()[A&63];if(Q){if(!Q.read)Q.read=Hu(Q,A&63);return Q.read()}else return A}else if(A<144)if(A-=128,A0.mapsAsObjects){let Q={};for(let B=0;B=t)return r6.slice(t-k8,(t+=Q)-k8);if(S5==0&&_8<140){let B=Q<16?Du(Q):GDA(Q);if(B!=null)return B}return Cj(Q)}else{let Q;switch(A){case 192:return null;case 193:if(hY)if(Q=ZY(),Q>0)return hY[1].slice(hY.position1,hY.position1+=Q);else return hY[0].slice(hY.position0,hY.position0-=Q);return Iu;case 194:return!1;case 195:return!0;case 196:if(Q=_A[t++],Q===void 0)throw Error("Unexpected end of buffer");return Zu(Q);case 197:return Q=UB.getUint16(t),t+=2,Zu(Q);case 198:return Q=UB.getUint32(t),t+=4,Zu(Q);case 199:return jZ(_A[t++]);case 200:return Q=UB.getUint16(t),t+=2,jZ(Q);case 201:return Q=UB.getUint32(t),t+=4,jZ(Q);case 202:if(Q=UB.getFloat32(t),A0.useFloat32>2){let B=TZ[(_A[t]&127)<<1|_A[t+1]>>7];return t+=4,(B*Q+(Q>0?0.5:-0.5)>>0)/B}return t+=4,Q;case 203:return Q=UB.getFloat64(t),t+=8,Q;case 204:return _A[t++];case 205:return Q=UB.getUint16(t),t+=2,Q;case 206:return Q=UB.getUint32(t),t+=4,Q;case 207:if(A0.int64AsType==="number")Q=UB.getUint32(t)*4294967296,Q+=UB.getUint32(t+4);else if(A0.int64AsType==="string")Q=UB.getBigUint64(t).toString();else if(A0.int64AsType==="auto"){if(Q=UB.getBigUint64(t),Q<=BigInt(2)<=BigInt(-2)<=t)return r6.slice(t-k8,(t+=Q)-k8);return BDA(Q);case 218:if(Q=UB.getUint16(t),t+=2,S5>=t)return r6.slice(t-k8,(t+=Q)-k8);return YDA(Q);case 219:if(Q=UB.getUint32(t),t+=4,S5>=t)return r6.slice(t-k8,(t+=Q)-k8);return JDA(Q);case 220:return Q=UB.getUint16(t),t+=2,rHA(Q);case 221:return Q=UB.getUint32(t),t+=4,rHA(Q);case 222:return Q=UB.getUint16(t),t+=2,aHA(Q);case 223:return Q=UB.getUint32(t),t+=4,aHA(Q);default:if(A>=224)return A-256;if(A===void 0){let B=Error("Unexpected end of MessagePack data");throw B.incomplete=!0,B}throw Error("Unknown MessagePack token "+A)}}}var RZB=/^[a-zA-Z_$][a-zA-Z\d_$]*$/;function Hu(A,Q){function B(){if(B.count++>ADA){let J=A.read=Function("r","return function(){return "+(A0.freezeData?"Object.freeze":"")+"({"+A.map((C)=>C==="__proto__"?"__proto_:r()":RZB.test(C)?C+":r()":"["+JSON.stringify(C)+"]:r()").join(",")+"})}")(ZY);if(A.highByte===0)A.read=sHA(Q,A.read);return J()}let Y={};for(let J=0,C=A.length;J{return function(){let B=_A[t++];if(B===0)return Q();let Y=A<32?-(A+(B<<5)):A+(B<<5),J=DB[Y]||QDA()[Y];if(!J)throw Error("Record id is not defined for "+Y);if(!J.read)J.read=Hu(J,A);return J.read()}};function QDA(){let A=ZDA(()=>{return _A=null,A0.getStructures()});return DB=A0._mergeStructures(A,DB)}var Cj=PZ,BDA=PZ,YDA=PZ,JDA=PZ,Wj=!1;function CDA(A){Wj=!0,Cj=Q(1),BDA=Q(2),YDA=Q(3),JDA=Q(5);function Q(B){return function(J){let C=OZ[GN++];if(C==null){if(hY)return PZ(J);let G=_A.byteOffset,W=A(t-B+G,_8+G,_A.buffer);if(typeof W=="string")C=W,OZ=Vu;else if(OZ=W,GN=1,S5=1,C=OZ[0],C===void 0)throw Error("Unexpected end of buffer")}let X=C.length;if(X<=J)return t+=J,C;return r6=C,k8=t,S5=t+X,t+=J,C.slice(0,J)}}}function PZ(A){let Q;if(A<16){if(Q=Du(A))return Q}if(A>64&&$u)return $u.decode(_A.subarray(t,t+=A));let B=t+A,Y=[];Q="";while(t65535)W-=65536,Y.push(W>>>10&1023|55296),W=56320|W&1023;Y.push(W)}else Y.push(J);if(Y.length>=4096)Q+=sY.apply(String,Y),Y.length=0}if(Y.length>0)Q+=sY.apply(String,Y);return Q}function XDA(A,Q,B){let Y=_A;_A=A,t=Q;try{return PZ(B)}finally{_A=Y}}function rHA(A){let Q=Array(A);for(let B=0;B0){t=Q;return}B[Y]=J}return sY.apply(String,B)}function Du(A){if(A<4)if(A<2)if(A===0)return"";else{let Q=_A[t++];if((Q&128)>1){t-=1;return}return sY(Q)}else{let Q=_A[t++],B=_A[t++];if((Q&128)>0||(B&128)>0){t-=2;return}if(A<3)return sY(Q,B);let Y=_A[t++];if((Y&128)>0){t-=3;return}return sY(Q,B,Y)}else{let Q=_A[t++],B=_A[t++],Y=_A[t++],J=_A[t++];if((Q&128)>0||(B&128)>0||(Y&128)>0||(J&128)>0){t-=4;return}if(A<6)if(A===4)return sY(Q,B,Y,J);else{let C=_A[t++];if((C&128)>0){t-=5;return}return sY(Q,B,Y,J,C)}else if(A<8){let C=_A[t++],X=_A[t++];if((C&128)>0||(X&128)>0){t-=6;return}if(A<7)return sY(Q,B,Y,J,C,X);let G=_A[t++];if((G&128)>0){t-=7;return}return sY(Q,B,Y,J,C,X,G)}else{let C=_A[t++],X=_A[t++],G=_A[t++],W=_A[t++];if((C&128)>0||(X&128)>0||(G&128)>0||(W&128)>0){t-=8;return}if(A<10)if(A===8)return sY(Q,B,Y,J,C,X,G,W);else{let F=_A[t++];if((F&128)>0){t-=9;return}return sY(Q,B,Y,J,C,X,G,W,F)}else if(A<12){let F=_A[t++],Z=_A[t++];if((F&128)>0||(Z&128)>0){t-=10;return}if(A<11)return sY(Q,B,Y,J,C,X,G,W,F,Z);let U=_A[t++];if((U&128)>0){t-=11;return}return sY(Q,B,Y,J,C,X,G,W,F,Z,U)}else{let F=_A[t++],Z=_A[t++],U=_A[t++],$=_A[t++];if((F&128)>0||(Z&128)>0||(U&128)>0||($&128)>0){t-=12;return}if(A<14)if(A===12)return sY(Q,B,Y,J,C,X,G,W,F,Z,U,$);else{let E=_A[t++];if((E&128)>0){t-=13;return}return sY(Q,B,Y,J,C,X,G,W,F,Z,U,$,E)}else{let E=_A[t++],K=_A[t++];if((E&128)>0||(K&128)>0){t-=14;return}if(A<15)return sY(Q,B,Y,J,C,X,G,W,F,Z,U,$,E,K);let I=_A[t++];if((I&128)>0){t-=15;return}return sY(Q,B,Y,J,C,X,G,W,F,Z,U,$,E,K,I)}}}}}function oHA(){let A=_A[t++],Q;if(A<192)Q=A-160;else switch(A){case 217:Q=_A[t++];break;case 218:Q=UB.getUint16(t),t+=2;break;case 219:Q=UB.getUint32(t),t+=4;break;default:throw Error("Expected string")}return PZ(Q)}function Zu(A){return A0.copyBuffers?Uint8Array.prototype.slice.call(_A,t,t+=A):_A.subarray(t,t+=A)}function jZ(A){let Q=_A[t++];if(p9[Q]){let B;return p9[Q](_A.subarray(t,B=t+=A),(Y)=>{t=Y;try{return ZY()}finally{t=B}})}else throw Error("Unknown extension type "+Q)}var tHA=Array(4096);function WDA(){let A=_A[t++];if(A>=160&&A<192){if(A=A-160,S5>=t)return r6.slice(t-k8,(t+=A)-k8);else if(!(S5==0&&_8<180))return Cj(A)}else return t--,FDA(ZY());let Q=(A<<5^(A>1?UB.getUint16(t):A>0?_A[t]:0))&4095,B=tHA[Q],Y=t,J=t+A-3,C,X=0;if(B&&B.bytes==A){while(Y["string","number","boolean","bigint"].includes(typeof Q)))return A.flat().toString();throw Error(`Invalid property type for record: ${typeof A}`)}var eHA=(A,Q)=>{let B=ZY().map(FDA),Y=A;if(Q!==void 0)A=A<32?-((Q<<5)+A):(Q<<5)+A,B.highByte=Q;let J=DB[A];if(J&&(J.isShared||r7))(DB.restoreStructures||(DB.restoreStructures=[]))[A]=J;return DB[A]=B,B.read=Hu(B,Y),B.read()};p9[0]=()=>{};p9[0].noBuffer=!0;p9[66]=(A)=>{let Q=A.length,B=BigInt(A[0]&128?A[0]-256:A[0]);for(let Y=1;Y{let A=ZY();return(wZB[A[0]]||Error)(A[1],{cause:A[2]})};p9[105]=(A)=>{if(A0.structuredClone===!1)throw Error("Structured clone extension is disabled");let Q=UB.getUint32(t-4);if(!a6)a6=new Map;let B=_A[t],Y;if(B>=144&&B<160||B==220||B==221)Y=[];else if(B>=128&&B<144||B==222||B==223)Y=new Map;else if((B>=199&&B<=201||B>=212&&B<=216)&&_A[t+1]===115)Y=new Set;else Y={};let J={target:Y};a6.set(Q,J);let C=ZY();if(!J.used)return J.target=C;else Object.assign(Y,C);if(Y instanceof Map)for(let[X,G]of C.entries())Y.set(X,G);if(Y instanceof Set)for(let X of Array.from(C))Y.add(X);return Y};p9[112]=(A)=>{if(A0.structuredClone===!1)throw Error("Structured clone extension is disabled");let Q=UB.getUint32(t-4),B=a6.get(Q);return B.used=!0,B.target};p9[115]=()=>new Set(ZY());var Nu=["Int8","Uint8","Uint8Clamped","Int16","Uint16","Int32","Uint32","Float32","Float64","BigInt64","BigUint64"].map((A)=>A+"Array"),jZB=typeof globalThis==="object"?globalThis:window;p9[116]=(A)=>{let Q=A[0],B=Uint8Array.prototype.slice.call(A,1).buffer,Y=Nu[Q];if(!Y){if(Q===16)return B;if(Q===17)return new DataView(B);throw Error("Could not find typed array for code "+Q)}return new jZB[Y](B)};p9[120]=()=>{let A=ZY();return new RegExp(A[0],A[1])};var OZB=[];p9[98]=(A)=>{let Q=(A[0]<<24)+(A[1]<<16)+(A[2]<<8)+A[3],B=t;return t+=Q-A.length,hY=OZB,hY=[oHA(),oHA()],hY.position0=0,hY.position1=0,hY.postBundlePosition=t,t=B,ZY()};p9[255]=(A)=>{if(A.length==4)return new Date((A[0]*16777216+(A[1]<<16)+(A[2]<<8)+A[3])*1000);else if(A.length==8)return new Date(((A[0]<<22)+(A[1]<<14)+(A[2]<<6)+(A[3]>>2))/1e6+((A[3]&3)*4294967296+A[4]*16777216+(A[5]<<16)+(A[6]<<8)+A[7])*1000);else if(A.length==12)return new Date(((A[0]<<24)+(A[1]<<16)+(A[2]<<8)+A[3])/1e6+((A[4]&128?-281474976710656:0)+A[6]*1099511627776+A[7]*4294967296+A[8]*16777216+(A[9]<<16)+(A[10]<<8)+A[11])*1000);else return new Date("invalid")};function ZDA(A){if(Ku)Ku();let Q=_8,B=t,Y=GN,J=k8,C=S5,X=r6,G=OZ,W=a6,F=hY,Z=new Uint8Array(_A.slice(0,_8)),U=DB,$=DB.slice(0,DB.length),E=A0,K=r7,I=A();return _8=Q,t=B,GN=Y,k8=J,S5=C,r6=X,OZ=G,a6=W,hY=F,_A=Z,r7=K,DB=U,DB.splice(0,DB.length,...$),A0=E,UB=new DataView(_A.buffer,_A.byteOffset,_A.byteLength),I}function Xj(){_A=null,a6=null,DB=null}var TZ=Array(147);for(let A=0;A<256;A++)TZ[A]=+("1e"+Math.floor(45.15-A*0.30103));var Fj=new o6({useRecords:!1}),PZB=Fj.unpack,TZB=Fj.unpackMultiple,SZB=Fj.unpack,WN={NEVER:0,ALWAYS:1,DECIMAL_ROUND:3,DECIMAL_FIT:4},kZB=new Float32Array(1),gqY=new Uint8Array(kZB.buffer,0,4);function $DA(A,Q,B){Uu=A,Eu=Q,Ku=B}var $j;try{$j=new TextEncoder}catch(A){}var Mu,KDA,ZN=typeof Buffer<"u",Zj=ZN?function(A){return Buffer.allocUnsafeSlow(A)}:Uint8Array,VDA=ZN?Buffer:Uint8Array,UDA=ZN?4294967296:2144337920,$A,FN,W0,BA=0,$9,x0=null,IDA,_ZB=21760,vZB=/[\u0080-\uFFFF]/,YX=Symbol("record-id");class SZ extends o6{constructor(A){super(A);this.offset=0;let Q,B,Y,J,C,X=VDA.prototype.utf8Write?function(T,S){return $A.utf8Write(T,S,$A.byteLength-S)}:$j&&$j.encodeInto?function(T,S){return $j.encodeInto(T,$A.subarray(S)).written}:!1,G=this;if(!A)A={};let W=A&&A.sequential,F=A.structures||A.saveStructures,Z=A.maxSharedStructures;if(Z==null)Z=F?32:0;if(Z>8160)throw Error("Maximum maxSharedStructure is 8160");if(A.structuredClone&&A.moreTypes==null)this.moreTypes=!0;let U=A.maxOwnStructures;if(U==null)U=F?32:64;if(!this.structures&&A.useRecords!=!1)this.structures=[];let $=Z>32||U+Z>64,E=Z+64,K=Z+U+64;if(K>8256)throw Error("Maximum maxSharedStructure + maxOwnStructure is 8192");let I=[],V=0,H=0;this.pack=this.encode=function(T,S){if(!$A)$A=new Zj(8192),W0=$A.dataView||($A.dataView=new DataView($A.buffer,0,8192)),BA=0;if($9=$A.length-10,$9-BA<2048)$A=new Zj($A.length),W0=$A.dataView||($A.dataView=new DataView($A.buffer,0,$A.length)),$9=$A.length-10,BA=0;else BA=BA+7&2147483640;if(B=BA,S&mZB)BA+=S&255;if(C=G.structuredClone?new Map:null,G.bundleStrings&&typeof T!=="string")x0=[],x0.size=1/0;else x0=null;if(J=G.structures,J){if(J.uninitialized)J=G._mergeStructures(G.getStructures());let y=J.sharedLength||0;if(y>Z)throw Error("Shared structures is larger than maximum shared structures, try increasing maxSharedStructures to "+J.sharedLength);if(!J.transitions){J.transitions=Object.create(null);for(let h=0;hi.offset>p.offset?1:-1),g=h.length,m=-1;while(y&&g>0){let i=h[--g].offset+B;if(iy.position+B){if(m>=0)m+=6}else{if(m>=0)W0.setUint32(y.position+B,W0.getUint32(y.position+B)+m),m=-1;y=y.previous,g++}}if(m>=0&&y)W0.setUint32(y.position+B,W0.getUint32(y.position+B)+m);if(BA+=h.length*6,BA>$9)P(BA);G.offset=BA;let n=gZB($A.subarray(B,BA),h);return C=null,n}if(G.offset=BA,S&fZB)return $A.start=B,$A.end=BA,$A;return $A.subarray(B,BA)}catch(y){throw v=y,y}finally{if(J){if(D(),Y&&G.saveStructures){let y=J.sharedLength||0,h=$A.subarray(B,BA),g=HDA(J,G);if(!v){if(G.saveStructures(g,g.isCompatible)===!1)return G.pack(T,S);if(G.lastNamedStructuresLength=y,$A.length>1073741824)$A=null;return h}}}if($A.length>1073741824)$A=null;if(S&bZB)BA=B}};let D=()=>{if(H<10)H++;let T=J.sharedLength||0;if(J.length>T&&!W)J.length=T;if(V>1e4){if(J.transitions=null,H=0,V=0,I.length>0)I=[]}else if(I.length>0&&!W){for(let S=0,v=I.length;S{var S=T.length;if(S<16)$A[BA++]=144|S;else if(S<65536)$A[BA++]=220,$A[BA++]=S>>8,$A[BA++]=S&255;else $A[BA++]=221,W0.setUint32(BA,S),BA+=4;for(let v=0;v{if(BA>$9)$A=P(BA);var S=typeof T,v;if(S==="string"){let y=T.length;if(x0&&y>=4&&y<4096){if((x0.size+=y)>_ZB){let n,i=(x0[0]?x0[0].length*3+x0[1].length:0)+10;if(BA+i>$9)$A=P(BA+i);let p;if(x0.position)p=x0,$A[BA]=200,BA+=3,$A[BA++]=98,n=BA-B,BA+=4,EDA(B,z,0),W0.setUint16(n+B-3,BA-B-n);else $A[BA++]=214,$A[BA++]=98,n=BA-B,BA+=4;x0=["",""],x0.previous=p,x0.size=0,x0.position=n}let m=vZB.test(T);x0[m?0:1]+=T,$A[BA++]=193,z(m?-y:y);return}let h;if(y<32)h=1;else if(y<256)h=2;else if(y<65536)h=3;else h=5;let g=y*3;if(BA+g>$9)$A=P(BA+g);if(y<64||!X){let m,n,i,p=BA+h;for(m=0;m>6|192,$A[p++]=n&63|128;else if((n&64512)===55296&&((i=T.charCodeAt(m+1))&64512)===56320)n=65536+((n&1023)<<10)+(i&1023),m++,$A[p++]=n>>18|240,$A[p++]=n>>12&63|128,$A[p++]=n>>6&63|128,$A[p++]=n&63|128;else $A[p++]=n>>12|224,$A[p++]=n>>6&63|128,$A[p++]=n&63|128;v=p-BA-h}else v=X(T,BA+h);if(v<32)$A[BA++]=160|v;else if(v<256){if(h<2)$A.copyWithin(BA+2,BA+1,BA+1+v);$A[BA++]=217,$A[BA++]=v}else if(v<65536){if(h<3)$A.copyWithin(BA+3,BA+2,BA+2+v);$A[BA++]=218,$A[BA++]=v>>8,$A[BA++]=v&255}else{if(h<5)$A.copyWithin(BA+5,BA+3,BA+3+v);$A[BA++]=219,W0.setUint32(BA,v),BA+=4}BA+=v}else if(S==="number")if(T>>>0===T)if(T<32||T<128&&this.useRecords===!1||T<64&&!this.randomAccessStructure)$A[BA++]=T;else if(T<256)$A[BA++]=204,$A[BA++]=T;else if(T<65536)$A[BA++]=205,$A[BA++]=T>>8,$A[BA++]=T&255;else $A[BA++]=206,W0.setUint32(BA,T),BA+=4;else if(T>>0===T)if(T>=-32)$A[BA++]=256+T;else if(T>=-128)$A[BA++]=208,$A[BA++]=T+256;else if(T>=-32768)$A[BA++]=209,W0.setInt16(BA,T),BA+=2;else $A[BA++]=210,W0.setInt32(BA,T),BA+=4;else{let y;if((y=this.useFloat32)>0&&T<4294967296&&T>=-2147483648){$A[BA++]=202,W0.setFloat32(BA,T);let h;if(y<4||(h=T*TZ[($A[BA]&127)<<1|$A[BA+1]>>7])>>0===h){BA+=4;return}else BA--}$A[BA++]=203,W0.setFloat64(BA,T),BA+=8}else if(S==="object"||S==="function")if(!T)$A[BA++]=192;else{if(C){let h=C.get(T);if(h){if(!h.id){let g=C.idsToInsert||(C.idsToInsert=[]);h.id=g.push(h)}$A[BA++]=214,$A[BA++]=112,W0.setUint32(BA,h.id),BA+=4;return}else C.set(T,{offset:BA-B})}let y=T.constructor;if(y===Object)w(T);else if(y===Array)L(T);else if(y===Map)if(this.mapAsEmptyObject)$A[BA++]=128;else{if(v=T.size,v<16)$A[BA++]=128|v;else if(v<65536)$A[BA++]=222,$A[BA++]=v>>8,$A[BA++]=v&255;else $A[BA++]=223,W0.setUint32(BA,v),BA+=4;for(let[h,g]of T)z(h),z(g)}else{for(let h=0,g=Mu.length;h{if($A=i,i=null,BA+=b,BA>$9)P(BA);return{target:$A,targetView:W0,position:BA-b}},z)}finally{if(i)$A=i,W0=p,BA=d,$9=$A.length-10}if(x){if(x.length+BA>$9)P(x.length+BA);BA=yZB(x,$A,BA,n.type)}return}}if(Array.isArray(T))L(T);else{if(T.toJSON){let h=T.toJSON();if(h!==T)return z(h)}if(S==="function")return z(this.writeFunction&&this.writeFunction(T));w(T)}}}else if(S==="boolean")$A[BA++]=T?195:194;else if(S==="bigint"){if(T<9223372036854776000&&T>=-9223372036854776000)$A[BA++]=211,W0.setBigInt64(BA,T);else if(T<18446744073709552000&&T>0)$A[BA++]=207,W0.setBigUint64(BA,T);else if(this.largeBigIntToFloat)$A[BA++]=203,W0.setFloat64(BA,Number(T));else if(this.largeBigIntToString)return z(T.toString());else if((this.useBigIntExtension||this.moreTypes)&&T-(BigInt(2)**BigInt(1023))){$A[BA++]=199,BA++,$A[BA++]=66;let y=[],h;do{let g=T&BigInt(255);h=(g&BigInt(128))===(T>=BigInt(8)}while(!((T===BigInt(0)||T===BigInt(-1))&&h));$A[BA-2]=y.length;for(let g=y.length;g>0;)$A[BA++]=Number(y[--g]);return}else throw RangeError(T+" was too large to fit in MessagePack 64-bit integer format, use useBigIntExtension, or set largeBigIntToFloat to convert to float-64, or set largeBigIntToString to convert to string");BA+=8}else if(S==="undefined")if(this.encodeUndefinedAsNil)$A[BA++]=192;else $A[BA++]=212,$A[BA++]=0,$A[BA++]=0;else throw Error("Unknown type: "+S)},M=this.variableMapSize||this.coercibleKeyAsNumber||this.skipValues?(T)=>{let S;if(this.skipValues){S=[];for(let h in T)if((typeof T.hasOwnProperty!=="function"||T.hasOwnProperty(h))&&!this.skipValues.includes(T[h]))S.push(h)}else S=Object.keys(T);let v=S.length;if(v<16)$A[BA++]=128|v;else if(v<65536)$A[BA++]=222,$A[BA++]=v>>8,$A[BA++]=v&255;else $A[BA++]=223,W0.setUint32(BA,v),BA+=4;let y;if(this.coercibleKeyAsNumber)for(let h=0;h{$A[BA++]=222;let S=BA-B;BA+=2;let v=0;for(let y in T)if(typeof T.hasOwnProperty!=="function"||T.hasOwnProperty(y))z(y),z(T[y]),v++;if(v>65535)throw Error('Object is too large to serialize with fast 16-bit map size, use the "variableMapSize" option to serialize this object');$A[S+++B]=v>>8,$A[S+B]=v&255},N=this.useRecords===!1?M:A.progressiveRecords&&!$?(T)=>{let S,v=J.transitions||(J.transitions=Object.create(null)),y=BA++-B,h;for(let g in T)if(typeof T.hasOwnProperty!=="function"||T.hasOwnProperty(g)){if(S=v[g],S)v=S;else{let m=Object.keys(T),n=v;v=J.transitions;let i=0;for(let p=0,d=m.length;p{let S,v=J.transitions||(J.transitions=Object.create(null)),y=0;for(let g in T)if(typeof T.hasOwnProperty!=="function"||T.hasOwnProperty(g)){if(S=v[g],!S)S=v[g]=Object.create(null),y++;v=S}let h=v[YX];if(h)if(h>=96&&$)$A[BA++]=((h-=96)&31)+96,$A[BA++]=h>>5;else $A[BA++]=h;else _(v,v.__keys__||Object.keys(T),y);for(let g in T)if(typeof T.hasOwnProperty!=="function"||T.hasOwnProperty(g))z(T[g])},q=typeof this.useRecords=="function"&&this.useRecords,w=q?(T)=>{q(T)?N(T):M(T)}:N,P=(T)=>{let S;if(T>16777216){if(T-B>UDA)throw Error("Packed buffer would be larger than maximum buffer size");S=Math.min(UDA,Math.round(Math.max((T-B)*(T>67108864?1.25:2),4194304)/4096)*4096)}else S=(Math.max(T-B<<2,$A.length-1)>>12)+1<<12;let v=new Zj(S);if(W0=v.dataView||(v.dataView=new DataView(v.buffer,0,S)),T=Math.min(T,$A.length),$A.copy)$A.copy(v,0,B,T);else v.set($A.slice(B,T));return BA-=B,B=0,$9=v.length-10,$A=v},_=(T,S,v)=>{let y=J.nextId;if(!y)y=64;if(y=K)y=E;J.nextId=y+1}let h=S.highByte=y>=96&&$?y-96>>5:-1;if(T[YX]=y,T.__keys__=S,J[y-64]=S,y=0)$A[BA++]=(y&31)+96,$A[BA++]=h;else $A[BA++]=y;else{if(h>=0)$A[BA++]=213,$A[BA++]=114,$A[BA++]=(y&31)+96,$A[BA++]=h;else $A[BA++]=212,$A[BA++]=114,$A[BA++]=y;if(v)V+=H*v;if(I.length>=U)I.shift()[YX]=0;I.push(T),z(S)}},j=(T,S,v,y)=>{let h=$A,g=BA,m=$9,n=B;if($A=FN,BA=0,B=0,!$A)FN=$A=new Zj(8192);$9=$A.length-10,_(T,S,y),FN=$A;let i=BA;if($A=h,BA=g,$9=m,B=n,i>1){let p=BA+i-1;if(p>$9)P(p);let d=v+B;$A.copyWithin(d+i,d+1,BA),$A.set(FN.slice(0,i),d),BA=p}else $A[v+B]=FN[0]},k=(T)=>{let S=IDA(T,$A,B,BA,J,P,(v,y,h)=>{if(h)return Y=!0;BA=y;let g=$A;if(z(v),D(),g!==$A)return{position:BA,targetView:W0,target:$A};return BA},this);if(S===0)return w(T);BA=S}}useBuffer(A){$A=A,$A.dataView||($A.dataView=new DataView($A.buffer,$A.byteOffset,$A.byteLength)),BA=0}set position(A){BA=A}get position(){return BA}clearSharedData(){if(this.structures)this.structures=[];if(this.typedStructs)this.typedStructs=[]}}KDA=[Date,Set,Error,RegExp,ArrayBuffer,Object.getPrototypeOf(Uint8Array.prototype).constructor,DataView,Gj];Mu=[{pack(A,Q,B){let Y=A.getTime()/1000;if((this.useTimestamp32||A.getMilliseconds()===0)&&Y>=0&&Y<4294967296){let{target:J,targetView:C,position:X}=Q(6);J[X++]=214,J[X++]=255,C.setUint32(X,Y)}else if(Y>0&&Y<4294967296){let{target:J,targetView:C,position:X}=Q(10);J[X++]=215,J[X++]=255,C.setUint32(X,A.getMilliseconds()*4000000+(Y/1000/4294967296>>0)),C.setUint32(X+4,Y)}else if(isNaN(Y)){if(this.onInvalidDate)return Q(0),B(this.onInvalidDate());let{target:J,targetView:C,position:X}=Q(3);J[X++]=212,J[X++]=255,J[X++]=255}else{let{target:J,targetView:C,position:X}=Q(15);J[X++]=199,J[X++]=12,J[X++]=255,C.setUint32(X,A.getMilliseconds()*1e6),C.setBigInt64(X+4,BigInt(Math.floor(Y)))}}},{pack(A,Q,B){if(this.setAsEmptyObject)return Q(0),B({});let Y=Array.from(A),{target:J,position:C}=Q(this.moreTypes?3:0);if(this.moreTypes)J[C++]=212,J[C++]=115,J[C++]=0;B(Y)}},{pack(A,Q,B){let{target:Y,position:J}=Q(this.moreTypes?3:0);if(this.moreTypes)Y[J++]=212,Y[J++]=101,Y[J++]=0;B([A.name,A.message,A.cause])}},{pack(A,Q,B){let{target:Y,position:J}=Q(this.moreTypes?3:0);if(this.moreTypes)Y[J++]=212,Y[J++]=120,Y[J++]=0;B([A.source,A.flags])}},{pack(A,Q){if(this.moreTypes)Lu(A,16,Q);else qu(ZN?Buffer.from(A):new Uint8Array(A),Q)}},{pack(A,Q){let B=A.constructor;if(B!==VDA&&this.moreTypes)Lu(A,Nu.indexOf(B.name),Q);else qu(A,Q)}},{pack(A,Q){if(this.moreTypes)Lu(A,17,Q);else qu(ZN?Buffer.from(A):new Uint8Array(A),Q)}},{pack(A,Q){let{target:B,position:Y}=Q(1);B[Y]=193}}];function Lu(A,Q,B,Y){let J=A.byteLength;if(J+1<256){var{target:C,position:X}=B(4+J);C[X++]=199,C[X++]=J+1}else if(J+1<65536){var{target:C,position:X}=B(5+J);C[X++]=200,C[X++]=J+1>>8,C[X++]=J+1&255}else{var{target:C,position:X,targetView:G}=B(7+J);C[X++]=201,G.setUint32(X,J+1),X+=4}if(C[X++]=116,C[X++]=Q,!A.buffer)A=new Uint8Array(A);C.set(new Uint8Array(A.buffer,A.byteOffset,A.byteLength),X)}function qu(A,Q){let B=A.byteLength;var Y,J;if(B<256){var{target:Y,position:J}=Q(B+2);Y[J++]=196,Y[J++]=B}else if(B<65536){var{target:Y,position:J}=Q(B+3);Y[J++]=197,Y[J++]=B>>8,Y[J++]=B&255}else{var{target:Y,position:J,targetView:C}=Q(B+5);Y[J++]=198,C.setUint32(J,B),J+=4}Y.set(A,J)}function yZB(A,Q,B,Y){let J=A.length;switch(J){case 1:Q[B++]=212;break;case 2:Q[B++]=213;break;case 4:Q[B++]=214;break;case 8:Q[B++]=215;break;case 16:Q[B++]=216;break;default:if(J<256)Q[B++]=199,Q[B++]=J;else if(J<65536)Q[B++]=200,Q[B++]=J>>8,Q[B++]=J&255;else Q[B++]=201,Q[B++]=J>>24,Q[B++]=J>>16&255,Q[B++]=J>>8&255,Q[B++]=J&255}return Q[B++]=Y,Q.set(A,B),B+=J,B}function gZB(A,Q){let B,Y=Q.length*6,J=A.length-Y;while(B=Q.pop()){let{offset:C,id:X}=B;A.copyWithin(C+Y,C,J),Y-=6;let G=C+Y;A[G++]=214,A[G++]=105,A[G++]=X>>24,A[G++]=X>>16&255,A[G++]=X>>8&255,A[G++]=X&255,J=C}return A}function EDA(A,Q,B){if(x0.length>0){W0.setUint32(x0.position+A,BA+B-x0.position-A),x0.stringsPosition=BA-A;let Y=x0;x0=null,Q(Y[0]),Q(Y[1])}}function HDA(A,Q){return A.isCompatible=(B)=>{let Y=!B||(Q.lastNamedStructuresLength||0)===B.length;if(!Y)Q._mergeStructures(B);return Y},A}function DDA(A,Q){IDA=A,HDA=Q}var NDA=new SZ({useRecords:!1}),hZB=NDA.pack,xZB=NDA.pack;var fZB=512,bZB=1024,mZB=2048;var zu=3,_E=0,$N=2,Uj=1,wu=16,qDA=["num","object","string","ascii"];qDA[wu]="date";var dZB=[!1,!0,!0,!1,!1,!0,!0,!1],MDA;try{Function(""),MDA=!0}catch(A){}var kZ,cZB=typeof Buffer<"u",Ej,JX;try{Ej=new TextEncoder}catch(A){}var lZB=cZB?function(A,Q,B){return A.utf8Write(Q,B,A.byteLength-B)}:Ej&&Ej.encodeInto?function(A,Q,B){return Ej.encodeInto(Q,A.subarray(B)).written}:!1,lqY=Symbol("type"),pqY=Symbol("parent");DDA(zDA,rZB);function zDA(A,Q,B,Y,J,C,X,G){let W=G.typedStructs||(G.typedStructs=[]),F=Q.dataView,Z=(W.lastStringStart||100)+Y,U=Q.length-10,$=Y;if(Y>U)Q=C(Y),F=Q.dataView,Y-=B,$-=B,Z-=B,B=0,U=Q.length-10;let E,K=Z,I=W.transitions||(W.transitions=Object.create(null)),V=W.nextId||W.length,H=V<15?1:V<240?2:V<61440?3:V<15728640?4:0;if(H===0)return 0;Y+=H;let D=[],L,z=0;for(let N in A){let q=A[N],w=I[N];if(!w)I[N]=w={key:N,parent:I,enumerationOffset:0,ascii0:null,ascii8:null,num8:null,string16:null,object16:null,num32:null,float64:null,date64:null};if(Y>U)Q=C(Y),F=Q.dataView,Y-=B,$-=B,Z-=B,K-=B,B=0,U=Q.length-10;switch(typeof q){case"number":let P=q;if(V<200||!w.num64){if(P>>0===P&&P<536870912&&P>-520093696){if(P<246&&P>=0&&(w.num8&&!(V>200&&w.num32)||P<32&&!w.num32))I=w.num8||i9(w,_E,1),Q[Y++]=P;else I=w.num32||i9(w,_E,4),F.setUint32(Y,P,!0),Y+=4;break}else if(P<4294967296&&P>=-2147483648){if(F.setFloat32(Y,P,!0),dZB[Q[Y+3]>>>5]){let T;if((T=P*TZ[(Q[Y+3]&127)<<1|Q[Y+2]>>7])>>0===T){I=w.num32||i9(w,_E,4),Y+=4;break}}}}I=w.num64||i9(w,_E,8),F.setFloat64(Y,P,!0),Y+=8;break;case"string":let _=q.length;if(E=K-Z,(_<<2)+K>U)Q=C((_<<2)+K),F=Q.dataView,Y-=B,$-=B,Z-=B,K-=B,B=0,U=Q.length-10;if(_>65280+E>>2){D.push(N,q,Y-$);break}let j,k=K;if(_<64){let T,S,v;for(T=0;T<_;T++)if(S=q.charCodeAt(T),S<128)Q[K++]=S;else if(S<2048)j=!0,Q[K++]=S>>6|192,Q[K++]=S&63|128;else if((S&64512)===55296&&((v=q.charCodeAt(T+1))&64512)===56320)j=!0,S=65536+((S&1023)<<10)+(v&1023),T++,Q[K++]=S>>18|240,Q[K++]=S>>12&63|128,Q[K++]=S>>6&63|128,Q[K++]=S&63|128;else j=!0,Q[K++]=S>>12|224,Q[K++]=S>>6&63|128,Q[K++]=S&63|128}else K+=lZB(Q,q,K),j=K-k>_;if(E<160||E<246&&(w.ascii8||w.string8)){if(j){if(!(I=w.string8))if(W.length>10&&(I=w.ascii8))I.__type=$N,w.ascii8=null,w.string8=I,X(null,0,!0);else I=i9(w,$N,1)}else if(E===0&&!L){L=!0,I=w.ascii0||i9(w,zu,0);break}else if(!(I=w.ascii8)&&!(W.length>10&&(I=w.string8)))I=i9(w,zu,1);Q[Y++]=E}else I=w.string16||i9(w,$N,2),F.setUint16(Y,E,!0),Y+=2;break;case"object":if(q){if(q.constructor===Date)I=w.date64||i9(w,wu,8),F.setFloat64(Y,q.getTime(),!0),Y+=8;else D.push(N,q,z);break}else if(w=LDA(w,Y,F,-10),w)I=w,Y=kZ;else D.push(N,q,z);break;case"boolean":I=w.num8||w.ascii8||i9(w,_E,1),Q[Y++]=q?249:248;break;case"undefined":if(w=LDA(w,Y,F,-9),w)I=w,Y=kZ;else D.push(N,q,z);break;default:D.push(N,q,z)}z++}for(let N=0,q=D.length;N=16)return 0;Q[$]=M+32;break;case 2:if(M>=256)return 0;Q[$]=56,Q[$+1]=M;break;case 3:if(M>=65536)return 0;Q[$]=57,F.setUint16($+1,M,!0);break;case 4:if(M>=16777216)return 0;F.setUint32($,(M<<8)+58,!0);break}if(YZ){if(Z===K)return Y;return W.lastStringStart=Y-$,zDA(A,Q,B,$,J,C,X,G)}return K}function LDA(A,Q,B,Y){let J;if(J=A.ascii8||A.num8)return B.setInt8(Q,Y,!0),kZ=Q+1,J;if(J=A.string16||A.object16)return B.setInt16(Q,Y,!0),kZ=Q+2,J;if(J=A.num32)return B.setUint32(Q,3758096640+Y,!0),kZ=Q+4,J;if(J=A.num64)return B.setFloat64(Q,NaN,!0),B.setInt8(Q,Y),kZ=Q+8,J;kZ=Q;return}function i9(A,Q,B){let Y=qDA[Q]+(B<<3),J=A[Y]||(A[Y]=Object.create(null));return J.__type=Q,J.__size=B,J.__parent=A,J}function pZB(A){if(!(A instanceof Map))return A;let Q=A.get("typed")||[];if(Object.isFrozen(Q))Q=Q.map((J)=>J.slice(0));let B=A.get("named"),Y=Object.create(null);for(let J=0,C=Q.length;J=24)switch(J){case 24:J=A[Q++];break;case 25:J=A[Q++]+(A[Q++]<<8);break;case 26:J=A[Q++]+(A[Q++]<<8)+(A[Q++]<<16);break;case 27:J=A[Q++]+(A[Q++]<<8)+(A[Q++]<<16)+(A[Q++]<<24);break}let C=Y.typedStructs&&Y.typedStructs[J];if(!C){if(A=Uint8Array.prototype.slice.call(A,Q,B),B-=Q,Q=0,!Y.getStructures)throw Error(`Reference to shared structure ${J} without getStructures method`);if(Y._mergeStructures(Y.getStructures()),!Y.typedStructs)throw Error("Could not find any shared typed structures");if(Y.lastTypedStructuresLength=Y.typedStructs.length,C=Y.typedStructs[J],!C)throw Error("Could not find typed structure "+J)}var{construct:X,fullConstruct:G}=C;if(!X){X=C.construct=function(){},G=C.fullConstruct=function(){},G.prototype=Y.structPrototype??{};var W=X.prototype=Y.structPrototype?Object.create(Y.structPrototype):{};let Z=[],U=0,$;for(let E=0,K=C.length;E0;break;case 1:M=(q,w)=>{let P=q.bytes[w+z.offset];return P>=246?kE(P):P};break;case 2:M=(q,w)=>{let P=q.bytes,j=(P.dataView||(P.dataView=new DataView(P.buffer,P.byteOffset,P.byteLength))).getUint16(w+z.offset,!0);return j>=65280?kE(j&255):j};break;case 4:M=(q,w)=>{let P=q.bytes,j=(P.dataView||(P.dataView=new DataView(P.buffer,P.byteOffset,P.byteLength))).getUint32(w+z.offset,!0);return j>=4294967040?kE(j&255):j};break}z.getRef=M,U+=H;let N;switch(V){case zu:if($&&!$.next)$.next=z;$=z,z.multiGetCount=0,N=function(q){let{bytes:w,position:P}=q,_=U+P,j=M(q,P);if(typeof j!=="number")return j;let k,T=z.next;while(T){if(k=T.getRef(q,P),typeof k==="number")break;else k=null;T=T.next}if(k==null)k=q.bytesEnd-_;if(q.srcString)return q.srcString.slice(j,k);return XDA(w,j+_,k-j)};break;case $N:case Uj:if($&&!$.next)$.next=z;$=z,N=function(q){let w=q.position,P=U+w,_=M(q,w);if(typeof _!=="number")return _;let j=q.bytes,k,T=z.next;while(T){if(k=T.getRef(q,w),typeof k==="number")break;else k=null;T=T.next}if(k==null)k=q.bytesEnd-P;if(V===$N)return j.toString("utf8",_+P,k+P);else{JX=q;try{return Y.unpack(j,{start:_+P,end:k+P})}finally{JX=null}}};break;case _E:switch(H){case 4:N=function(q){let w=q.bytes,P=w.dataView||(w.dataView=new DataView(w.buffer,w.byteOffset,w.byteLength)),_=q.position+z.offset,j=P.getInt32(_,!0);if(j<536870912){if(j>-520093696)return j;if(j>-536870912)return kE(j&255)}let k=P.getFloat32(_,!0),T=TZ[(w[_+3]&127)<<1|w[_+2]>>7];return(T*k+(k>0?0.5:-0.5)>>0)/T};break;case 8:N=function(q){let w=q.bytes,_=(w.dataView||(w.dataView=new DataView(w.buffer,w.byteOffset,w.byteLength))).getFloat64(q.position+z.offset,!0);if(isNaN(_)){let j=w[q.position+z.offset];if(j>=246)return kE(j)}return _};break;case 1:N=function(q){let P=q.bytes[q.position+z.offset];return P<246?P:kE(P)};break}break;case wu:N=function(q){let w=q.bytes,P=w.dataView||(w.dataView=new DataView(w.buffer,w.byteOffset,w.byteLength));return new Date(P.getFloat64(q.position+z.offset,!0))};break}z.get=N}if(MDA){let E=[],K=[],I=0,V;for(let D of Z){if(Y.alwaysLazyProperty&&Y.alwaysLazyProperty(D.key)){V=!0;continue}Object.defineProperty(W,D.key,{get:nZB(D.get),enumerable:!0});let L="v"+I++;K.push(L),E.push("o["+JSON.stringify(D.key)+"]="+L+"(s)")}if(V)E.push("__proto__:this");let H=Function(...K,"var c=this;return function(s){var o=new c();"+E.join(";")+";return o;}").apply(G,Z.map((D)=>D.get));Object.defineProperty(W,"toJSON",{value(D){return H.call(this,this[Ru])}})}else Object.defineProperty(W,"toJSON",{value(E){let K={};for(let I=0,V=Z.length;I{let J=!0;if(Y instanceof Map){if((Y.get("named")||[]).length!==(Q.lastNamedStructuresLength||0))J=!1;if((Y.get("typed")||[]).length!==B)J=!1}else if(Y instanceof Array||Array.isArray(Y)){if(Y.length!==(Q.lastNamedStructuresLength||0))J=!1}if(!J)Q._mergeStructures(Y);return J},Q.lastTypedStructuresLength=Q.typedStructs&&Q.typedStructs.length,A}$DA(iZB,pZB,sZB);var X$B=process.env.MSGPACKR_NATIVE_ACCELERATION_DISABLED!==void 0&&process.env.MSGPACKR_NATIVE_ACCELERATION_DISABLED.toLowerCase()==="true";if(!X$B){let A;try{if(A=mDA(),A)CDA(A.extractStrings)}catch(Q){}}if(!Wj)console.warn("Msgpackr: msgpackr native acceleration is not enabled, using fallback implementation.");var vu=new SZ({useFloat32:WN.ALWAYS});class $Y{static _instance;static get instance(){if(!$Y._instance)$Y._instance=new $Y;return $Y._instance}_enabled=!1;_bytesSentTotal=0;_bytesReceivedTotal=0;_packetsSentTotal=0;_packetsReceivedTotal=0;_compressionCount=0;_serializationTotalMs=0;_serializationCount=0;_lastSnapshotTime=0;_lastBytesSent=0;_lastBytesReceived=0;_lastPacketsSent=0;_lastPacketsReceived=0;_connectedPlayers=0;get isEnabled(){return this._enabled}enable(){this._enabled=!0,this._lastSnapshotTime=performance.now(),this._reset()}disable(){this._enabled=!1}reset(){this._lastSnapshotTime=performance.now(),this._reset()}setConnectedPlayers(A){this._connectedPlayers=A}recordBytesSent(A){if(!this._enabled)return;this._bytesSentTotal+=A}recordBytesReceived(A){if(!this._enabled)return;this._bytesReceivedTotal+=A}recordPacketSent(){if(!this._enabled)return;this._packetsSentTotal++}recordPacketReceived(){if(!this._enabled)return;this._packetsReceivedTotal++}recordSerialization(A){if(!this._enabled)return;this._serializationTotalMs+=A,this._serializationCount++}recordCompression(){if(!this._enabled)return;this._compressionCount++}getSnapshot(){let A=performance.now(),Q=Math.max((A-this._lastSnapshotTime)/1000,0.001),B={connectedPlayers:this._connectedPlayers,bytesSentTotal:this._bytesSentTotal,bytesReceivedTotal:this._bytesReceivedTotal,bytesSentPerSecond:(this._bytesSentTotal-this._lastBytesSent)/Q,bytesReceivedPerSecond:(this._bytesReceivedTotal-this._lastBytesReceived)/Q,packetsSentPerSecond:(this._packetsSentTotal-this._lastPacketsSent)/Q,packetsReceivedPerSecond:(this._packetsReceivedTotal-this._lastPacketsReceived)/Q,avgSerializationMs:this._serializationCount>0?this._serializationTotalMs/this._serializationCount:0,compressionCount:this._compressionCount};return this._lastSnapshotTime=A,this._lastBytesSent=this._bytesSentTotal,this._lastBytesReceived=this._bytesReceivedTotal,this._lastPacketsSent=this._packetsSentTotal,this._lastPacketsReceived=this._packetsReceivedTotal,B}_reset(){this._bytesSentTotal=0,this._bytesReceivedTotal=0,this._packetsSentTotal=0,this._packetsReceivedTotal=0,this._compressionCount=0,this._serializationTotalMs=0,this._serializationCount=0,this._lastBytesSent=0,this._lastBytesReceived=0,this._lastPacketsSent=0,this._lastPacketsReceived=0}}var Qr={};iG(Qr,{zodErrorsIntegration:()=>Qc,wrapMcpServerWithSentry:()=>Xc,withScope:()=>h8,withMonitor:()=>GX,withIsolationScope:()=>BG,withActiveSpan:()=>GW,vercelAIIntegration:()=>uT,validateOpenTelemetrySetup:()=>Ar,updateSpanName:()=>ru,trpcMiddleware:()=>Yc,tediousIntegration:()=>gT,suppressTracing:()=>ON,supabaseIntegration:()=>Ac,startSpanManual:()=>jN,startSpan:()=>b8,startSession:()=>vN,startNewTrace:()=>Vd,startInactiveSpan:()=>Ed,spotlightIntegration:()=>ST,spanToTraceHeader:()=>HN,spanToJSON:()=>eA,spanToBaggageHeader:()=>Yd,setupKoaErrorHandler:()=>BNQ,setupHapiErrorHandler:()=>SDQ,setupFastifyErrorHandler:()=>cEQ,setupExpressErrorHandler:()=>oUQ,setupConnectErrorHandler:()=>wNQ,setUser:()=>wd,setTags:()=>zd,setTag:()=>Rd,setNodeAsyncContextStrategy:()=>LP,setMeasurement:()=>$d,setHttpStatus:()=>mE,setExtras:()=>qd,setExtra:()=>Md,setCurrentClient:()=>bd,setContext:()=>Ld,rewriteFramesIntegration:()=>ed,requestDataIntegration:()=>xN,redisIntegration:()=>KT,profiler:()=>Bc,prismaIntegration:()=>LT,preloadOpenTelemetry:()=>gqQ,postgresIntegration:()=>DT,parameterize:()=>dj,onUnhandledRejectionIntegration:()=>fP,onUncaughtExceptionIntegration:()=>xP,nodeContextIntegration:()=>kP,nativeNodeFetchIntegration:()=>PP,mysqlIntegration:()=>ZT,mysql2Integration:()=>UT,mongooseIntegration:()=>WT,mongoIntegration:()=>XT,modulesIntegration:()=>hP,makeNodeTransport:()=>sT,lruMemoizerIntegration:()=>CT,logger:()=>Zc,localVariablesIntegration:()=>gP,linkedErrorsIntegration:()=>hN,lastEventId:()=>jd,koaIntegration:()=>OT,knexIntegration:()=>sNQ,kafkaIntegration:()=>JT,isInitialized:()=>lZ,instrumentSupabaseClient:()=>sj,initWithoutDefaultIntegrations:()=>xqQ,initOpenTelemetry:()=>eT,init:()=>AS,inboundFiltersIntegration:()=>gN,httpIntegration:()=>RP,hapiIntegration:()=>RT,graphqlIntegration:()=>YT,getTraceMetaTags:()=>cd,getTraceData:()=>CG,getSpanStatusFromHttpCode:()=>bE,getSpanDescendants:()=>DN,getSentryRelease:()=>oT,getRootSpan:()=>K0,getIsolationScope:()=>RQ,getGlobalScope:()=>QG,getDefaultIntegrationsWithoutPerformance:()=>ts,getDefaultIntegrations:()=>es,getCurrentScope:()=>sQ,getClient:()=>gA,getAutoPerformanceIntegrations:()=>pT,getActiveSpan:()=>Q1,genericPoolIntegration:()=>hT,generateInstrumentOnce:()=>EQ,functionToStringIntegration:()=>yN,fsIntegration:()=>o4Q,flush:()=>Od,fastifyIntegration:()=>eP,extraErrorDataIntegration:()=>sd,expressIntegration:()=>lP,expressErrorHandler:()=>qn,eventFiltersIntegration:()=>lj,endSession:()=>pZ,disableAnrDetectionForCallback:()=>IUQ,defaultStackParser:()=>tT,dedupeIntegration:()=>nd,dataloaderIntegration:()=>bLQ,cron:()=>cqQ,createTransport:()=>nE,createSentryWinstonTransport:()=>ZqQ,createGetModuleFromFilename:()=>aT,continueTrace:()=>Kd,contextLinesIntegration:()=>_P,consoleLoggingIntegration:()=>Wc,consoleIntegration:()=>fN,connectIntegration:()=>TT,close:()=>Pd,childProcessIntegration:()=>dT,captureSession:()=>Sd,captureMessage:()=>iE,captureFeedback:()=>Gc,captureException:()=>jB,captureEvent:()=>kN,captureConsoleIntegration:()=>id,captureCheckIn:()=>SN,anrIntegration:()=>VUQ,amqplibIntegration:()=>bT,addIntegration:()=>yd,addEventProcessor:()=>Td,addBreadcrumb:()=>E9,SentryContextManager:()=>lT,Scope:()=>UJ,SEMANTIC_ATTRIBUTE_SENTRY_SOURCE:()=>Q0,SEMANTIC_ATTRIBUTE_SENTRY_SAMPLE_RATE:()=>g5,SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN:()=>DQ,SEMANTIC_ATTRIBUTE_SENTRY_OP:()=>YQ,SDK_VERSION:()=>l0,NodeClient:()=>Gq});var Zc={};iG(Zc,{warn:()=>uUB,trace:()=>fUB,info:()=>mUB,fmt:()=>ud,fatal:()=>cUB,error:()=>dUB,debug:()=>bUB});import{format as xUB}from"node:util";var OA=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__;var l0="9.22.0";var AQ=globalThis;function TJ(){return a7(AQ),AQ}function a7(A){let Q=A.__SENTRY__=A.__SENTRY__||{};return Q.version=Q.version||l0,Q[l0]=Q[l0]||{}}function _Z(A,Q,B=AQ){let Y=B.__SENTRY__=B.__SENTRY__||{},J=Y[l0]=Y[l0]||{};return J[A]||(J[A]=Q())}var uDA=Object.prototype.toString;function aC(A){switch(uDA.call(A)){case"[object Error]":case"[object Exception]":case"[object DOMException]":case"[object WebAssembly.Exception]":return!0;default:return t6(A,Error)}}function Ij(A,Q){return uDA.call(A)===`[object ${Q}]`}function dDA(A){return Ij(A,"ErrorEvent")}function vZ(A){return Ij(A,"String")}function yZ(A){return typeof A==="object"&&A!==null&&"__sentry_template_string__"in A&&"__sentry_template_values__"in A}function UN(A){return A===null||yZ(A)||typeof A!=="object"&&typeof A!=="function"}function k5(A){return Ij(A,"Object")}function cDA(A){return typeof Event<"u"&&t6(A,Event)}function lDA(A){return typeof Element<"u"&&t6(A,Element)}function pDA(A){return Ij(A,"RegExp")}function _5(A){return Boolean(A?.then&&typeof A.then==="function")}function iDA(A){return k5(A)&&"nativeEvent"in A&&"preventDefault"in A&&"stopPropagation"in A}function t6(A,Q){try{return A instanceof Q}catch(B){return!1}}function Hj(A){return!!(typeof A==="object"&&A!==null&&(A.__isVue||A._isVue))}var G$B=AQ,W$B=80;function nDA(A,Q={}){if(!A)return"";try{let B=A,Y=5,J=[],C=0,X=0,G=" > ",W=G.length,F,Z=Array.isArray(Q)?Q:Q.keyAttrs,U=!Array.isArray(Q)&&Q.maxStringLength||W$B;while(B&&C++1&&X+J.length*W+F.length>=U)break;J.push(F),X+=F.length,B=B.parentNode}return J.reverse().join(G)}catch(B){return""}}function F$B(A,Q){let B=A,Y=[];if(!B?.tagName)return"";if(G$B.HTMLElement){if(B instanceof HTMLElement&&B.dataset){if(B.dataset.sentryComponent)return B.dataset.sentryComponent;if(B.dataset.sentryElement)return B.dataset.sentryElement}}Y.push(B.tagName.toLowerCase());let J=Q?.length?Q.filter((X)=>B.getAttribute(X)).map((X)=>[X,B.getAttribute(X)]):null;if(J?.length)J.forEach((X)=>{Y.push(`[${X[0]}="${X[1]}"]`)});else{if(B.id)Y.push(`#${B.id}`);let X=B.className;if(X&&vZ(X)){let G=X.split(/\s+/);for(let W of G)Y.push(`.${W}`)}}let C=["aria-label","type","name","title","alt"];for(let X of C){let G=B.getAttribute(X);if(G)Y.push(`[${X}="${G}"]`)}return Y.join("")}var Z$B="Sentry Logger ",oC=["debug","info","warn","error","log","assert","trace"],vE={};function f0(A){if(!("console"in AQ))return A();let Q=AQ.console,B={},Y=Object.keys(vE);Y.forEach((J)=>{let C=vE[J];B[J]=Q[J],Q[J]=C});try{return A()}finally{Y.forEach((J)=>{Q[J]=B[J]})}}function $$B(){let A=!1,Q={enable:()=>{A=!0},disable:()=>{A=!1},isEnabled:()=>A};if(OA)oC.forEach((B)=>{Q[B]=(...Y)=>{if(A)f0(()=>{AQ.console[B](`${Z$B}[${B}]:`,...Y)})}});else oC.forEach((B)=>{Q[B]=()=>{return}});return Q}var e=_Z("logger",$$B);function n9(A,Q=0){if(typeof A!=="string"||Q===0)return A;return A.length<=Q?A:`${A.slice(0,Q)}...`}function yu(A,Q){let B=A,Y=B.length;if(Y<=150)return B;if(Q>Y)Q=Y;let J=Math.max(Q-60,0);if(J<5)J=0;let C=Math.min(J+140,Y);if(C>Y-5)C=Y;if(C===Y)J=Math.max(C-140,0);if(B=B.slice(J,C),J>0)B=`'{snip} ${B}`;if(CsDA(A,Y,B))}function gu(A,Q,B){if(!(Q in A))return;let Y=A[Q];if(typeof Y!=="function")return;let J=B(Y);if(typeof J==="function")oDA(J,Y);try{A[Q]=J}catch{OA&&e.log(`Failed to replace method "${Q}" in object`,A)}}function p0(A,Q,B){try{Object.defineProperty(A,Q,{value:B,writable:!0,configurable:!0})}catch(Y){OA&&e.log(`Failed to add non-enumerable property "${Q}" to object`,A)}}function oDA(A,Q){try{let B=Q.prototype||{};A.prototype=Q.prototype=B,p0(A,"__sentry_original__",Q)}catch(B){}}function hu(A){return A.__sentry_original__}function Dj(A){if(aC(A))return{message:A.message,name:A.name,stack:A.stack,...aDA(A)};else if(cDA(A)){let Q={type:A.type,target:rDA(A.target),currentTarget:rDA(A.currentTarget),...aDA(A)};if(typeof CustomEvent<"u"&&t6(A,CustomEvent))Q.detail=A.detail;return Q}else return A}function rDA(A){try{return lDA(A)?nDA(A):Object.prototype.toString.call(A)}catch(Q){return""}}function aDA(A){if(typeof A==="object"&&A!==null){let Q={};for(let B in A)if(Object.prototype.hasOwnProperty.call(A,B))Q[B]=A[B];return Q}else return{}}function xu(A,Q=40){let B=Object.keys(Dj(A));B.sort();let Y=B[0];if(!Y)return"[object has no keys]";if(Y.length>=Q)return n9(Y,Q);for(let J=B.length;J>0;J--){let C=B.slice(0,J).join(", ");if(C.length>Q)continue;if(J===B.length)return C;return n9(C,Q)}return""}function U$B(){let A=AQ;return A.crypto||A.msCrypto}function UY(A=U$B()){let Q=()=>Math.random()*16;try{if(A?.randomUUID)return A.randomUUID().replace(/-/g,"");if(A?.getRandomValues)Q=()=>{let B=new Uint8Array(1);return A.getRandomValues(B),B[0]}}catch(B){}return([1e7]+1000+4000+8000+100000000000).replace(/[018]/g,(B)=>(B^(Q()&15)>>B/4).toString(16))}function tDA(A){return A.exception?.values?.[0]}function e7(A){let{message:Q,event_id:B}=A;if(Q)return Q;let Y=tDA(A);if(Y){if(Y.type&&Y.value)return`${Y.type}: ${Y.value}`;return Y.type||Y.value||B||""}return B||""}function bu(A,Q,B){let Y=A.exception=A.exception||{},J=Y.values=Y.values||[],C=J[0]=J[0]||{};if(!C.value)C.value=Q||"";if(!C.type)C.type=B||"Error"}function AW(A,Q){let B=tDA(A);if(!B)return;let Y={type:"generic",handled:!0},J=B.mechanism;if(B.mechanism={...Y,...J,...Q},Q&&"data"in Q){let C={...J?.data,...Q.data};B.mechanism.data=C}}var E$B=/^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/;function fu(A){return parseInt(A||"",10)}function mu(A){let Q=A.match(E$B)||[],B=fu(Q[1]),Y=fu(Q[2]),J=fu(Q[3]);return{buildmetadata:Q[5],major:isNaN(B)?void 0:B,minor:isNaN(Y)?void 0:Y,patch:isNaN(J)?void 0:J,prerelease:Q[4]}}function Nj(A){if(K$B(A))return!0;try{p0(A,"__sentry_captured__",!0)}catch(Q){}return!1}function K$B(A){try{return A.__sentry_captured__}catch{}}var eDA=1000;function e6(){return Date.now()/eDA}function V$B(){let{performance:A}=AQ;if(!A?.now)return e6;let Q=Date.now()-A.now(),B=A.timeOrigin==null?Q:A.timeOrigin;return()=>{return(B+A.now())/eDA}}var v8=V$B();function ANA(A){let Q=v8(),B={sid:UY(),init:!0,timestamp:Q,started:Q,duration:0,status:"ok",errors:0,ignoreDuration:!1,toJSON:()=>I$B(B)};if(A)AG(B,A);return B}function AG(A,Q={}){if(Q.user){if(!A.ipAddress&&Q.user.ip_address)A.ipAddress=Q.user.ip_address;if(!A.did&&!Q.did)A.did=Q.user.id||Q.user.email||Q.user.username}if(A.timestamp=Q.timestamp||v8(),Q.abnormal_mechanism)A.abnormal_mechanism=Q.abnormal_mechanism;if(Q.ignoreDuration)A.ignoreDuration=Q.ignoreDuration;if(Q.sid)A.sid=Q.sid.length===32?Q.sid:UY();if(Q.init!==void 0)A.init=Q.init;if(!A.did&&Q.did)A.did=`${Q.did}`;if(typeof Q.started==="number")A.started=Q.started;if(A.ignoreDuration)A.duration=void 0;else if(typeof Q.duration==="number")A.duration=Q.duration;else{let B=A.timestamp-A.started;A.duration=B>=0?B:0}if(Q.release)A.release=Q.release;if(Q.environment)A.environment=Q.environment;if(!A.ipAddress&&Q.ipAddress)A.ipAddress=Q.ipAddress;if(!A.userAgent&&Q.userAgent)A.userAgent=Q.userAgent;if(typeof Q.errors==="number")A.errors=Q.errors;if(Q.status)A.status=Q.status}function QNA(A,Q){let B={};if(Q)B={status:Q};else if(A.status==="ok")B={status:"exited"};AG(A,B)}function I$B(A){return{sid:`${A.sid}`,init:A.init,started:new Date(A.started*1000).toISOString(),timestamp:new Date(A.timestamp*1000).toISOString(),status:A.status,errors:A.errors,did:typeof A.did==="number"||typeof A.did==="string"?`${A.did}`:void 0,duration:A.duration,abnormal_mechanism:A.abnormal_mechanism,attrs:{release:A.release,environment:A.environment,ip_address:A.ipAddress,user_agent:A.userAgent}}}function QW(A,Q,B=2){if(!Q||typeof Q!=="object"||B<=0)return Q;if(A&&Object.keys(Q).length===0)return A;let Y={...A};for(let J in Q)if(Object.prototype.hasOwnProperty.call(Q,J))Y[J]=QW(Y[J],Q[J],B-1);return Y}var uu="_sentrySpan";function gZ(A,Q){if(Q)p0(A,uu,Q);else delete A[uu]}function tC(A){return A[uu]}function y8(){return UY()}function g8(){return UY().substring(16)}var H$B=100;class UJ{constructor(){this._notifyingListeners=!1,this._scopeListeners=[],this._eventProcessors=[],this._breadcrumbs=[],this._attachments=[],this._user={},this._tags={},this._extra={},this._contexts={},this._sdkProcessingMetadata={},this._propagationContext={traceId:y8(),sampleRand:Math.random()}}clone(){let A=new UJ;if(A._breadcrumbs=[...this._breadcrumbs],A._tags={...this._tags},A._extra={...this._extra},A._contexts={...this._contexts},this._contexts.flags)A._contexts.flags={values:[...this._contexts.flags.values]};return A._user=this._user,A._level=this._level,A._session=this._session,A._transactionName=this._transactionName,A._fingerprint=this._fingerprint,A._eventProcessors=[...this._eventProcessors],A._attachments=[...this._attachments],A._sdkProcessingMetadata={...this._sdkProcessingMetadata},A._propagationContext={...this._propagationContext},A._client=this._client,A._lastEventId=this._lastEventId,gZ(A,tC(this)),A}setClient(A){this._client=A}setLastEventId(A){this._lastEventId=A}getClient(){return this._client}lastEventId(){return this._lastEventId}addScopeListener(A){this._scopeListeners.push(A)}addEventProcessor(A){return this._eventProcessors.push(A),this}setUser(A){if(this._user=A||{email:void 0,id:void 0,ip_address:void 0,username:void 0},this._session)AG(this._session,{user:A});return this._notifyScopeListeners(),this}getUser(){return this._user}setTags(A){return this._tags={...this._tags,...A},this._notifyScopeListeners(),this}setTag(A,Q){return this._tags={...this._tags,[A]:Q},this._notifyScopeListeners(),this}setExtras(A){return this._extra={...this._extra,...A},this._notifyScopeListeners(),this}setExtra(A,Q){return this._extra={...this._extra,[A]:Q},this._notifyScopeListeners(),this}setFingerprint(A){return this._fingerprint=A,this._notifyScopeListeners(),this}setLevel(A){return this._level=A,this._notifyScopeListeners(),this}setTransactionName(A){return this._transactionName=A,this._notifyScopeListeners(),this}setContext(A,Q){if(Q===null)delete this._contexts[A];else this._contexts[A]=Q;return this._notifyScopeListeners(),this}setSession(A){if(!A)delete this._session;else this._session=A;return this._notifyScopeListeners(),this}getSession(){return this._session}update(A){if(!A)return this;let Q=typeof A==="function"?A(this):A,B=Q instanceof UJ?Q.getScopeData():k5(Q)?A:void 0,{tags:Y,extra:J,user:C,contexts:X,level:G,fingerprint:W=[],propagationContext:F}=B||{};if(this._tags={...this._tags,...Y},this._extra={...this._extra,...J},this._contexts={...this._contexts,...X},C&&Object.keys(C).length)this._user=C;if(G)this._level=G;if(W.length)this._fingerprint=W;if(F)this._propagationContext=F;return this}clear(){return this._breadcrumbs=[],this._tags={},this._extra={},this._user={},this._contexts={},this._level=void 0,this._transactionName=void 0,this._fingerprint=void 0,this._session=void 0,gZ(this,void 0),this._attachments=[],this.setPropagationContext({traceId:y8(),sampleRand:Math.random()}),this._notifyScopeListeners(),this}addBreadcrumb(A,Q){let B=typeof Q==="number"?Q:H$B;if(B<=0)return this;let Y={timestamp:e6(),...A,message:A.message?n9(A.message,2048):A.message};if(this._breadcrumbs.push(Y),this._breadcrumbs.length>B)this._breadcrumbs=this._breadcrumbs.slice(-B),this._client?.recordDroppedEvent("buffer_overflow","log_item");return this._notifyScopeListeners(),this}getLastBreadcrumb(){return this._breadcrumbs[this._breadcrumbs.length-1]}clearBreadcrumbs(){return this._breadcrumbs=[],this._notifyScopeListeners(),this}addAttachment(A){return this._attachments.push(A),this}clearAttachments(){return this._attachments=[],this}getScopeData(){return{breadcrumbs:this._breadcrumbs,attachments:this._attachments,contexts:this._contexts,tags:this._tags,extra:this._extra,user:this._user,level:this._level,fingerprint:this._fingerprint||[],eventProcessors:this._eventProcessors,propagationContext:this._propagationContext,sdkProcessingMetadata:this._sdkProcessingMetadata,transactionName:this._transactionName,span:tC(this)}}setSDKProcessingMetadata(A){return this._sdkProcessingMetadata=QW(this._sdkProcessingMetadata,A,2),this}setPropagationContext(A){return this._propagationContext=A,this}getPropagationContext(){return this._propagationContext}captureException(A,Q){let B=Q?.event_id||UY();if(!this._client)return e.warn("No client configured on scope - will not capture exception!"),B;let Y=Error("Sentry syntheticException");return this._client.captureException(A,{originalException:A,syntheticException:Y,...Q,event_id:B},this),B}captureMessage(A,Q,B){let Y=B?.event_id||UY();if(!this._client)return e.warn("No client configured on scope - will not capture message!"),Y;let J=Error(A);return this._client.captureMessage(A,Q,{originalException:A,syntheticException:J,...B,event_id:Y},this),Y}captureEvent(A,Q){let B=Q?.event_id||UY();if(!this._client)return e.warn("No client configured on scope - will not capture event!"),B;return this._client.captureEvent(A,{...Q,event_id:B},this),B}_notifyScopeListeners(){if(!this._notifyingListeners)this._notifyingListeners=!0,this._scopeListeners.forEach((A)=>{A(this)}),this._notifyingListeners=!1}}function yE(){return _Z("defaultCurrentScope",()=>new UJ)}function v5(){return _Z("defaultIsolationScope",()=>new UJ)}class YNA{constructor(A,Q){let B;if(!A)B=new UJ;else B=A;let Y;if(!Q)Y=new UJ;else Y=Q;this._stack=[{scope:B}],this._isolationScope=Y}withScope(A){let Q=this._pushScope(),B;try{B=A(Q)}catch(Y){throw this._popScope(),Y}if(_5(B))return B.then((Y)=>{return this._popScope(),Y},(Y)=>{throw this._popScope(),Y});return this._popScope(),B}getClient(){return this.getStackTop().client}getScope(){return this.getStackTop().scope}getIsolationScope(){return this._isolationScope}getStackTop(){return this._stack[this._stack.length-1]}_pushScope(){let A=this.getScope().clone();return this._stack.push({client:this.getClient(),scope:A}),A}_popScope(){if(this._stack.length<=1)return!1;return!!this._stack.pop()}}function gE(){let A=TJ(),Q=a7(A);return Q.stack=Q.stack||new YNA(yE(),v5())}function D$B(A){return gE().withScope(A)}function N$B(A,Q){let B=gE();return B.withScope(()=>{return B.getStackTop().scope=A,Q(A)})}function BNA(A){return gE().withScope(()=>{return A(gE().getIsolationScope())})}function JNA(){return{withIsolationScope:BNA,withScope:D$B,withSetScope:N$B,withSetIsolationScope:(A,Q)=>{return BNA(Q)},getCurrentScope:()=>gE().getScope(),getIsolationScope:()=>gE().getIsolationScope()}}function du(A){let Q=TJ(),B=a7(Q);B.acs=A}function y5(A){let Q=a7(A);if(Q.acs)return Q.acs;return JNA()}function sQ(){let A=TJ();return y5(A).getCurrentScope()}function RQ(){let A=TJ();return y5(A).getIsolationScope()}function QG(){return _Z("globalScope",()=>new UJ)}function h8(...A){let Q=TJ(),B=y5(Q);if(A.length===2){let[Y,J]=A;if(!Y)return B.withScope(J);return B.withSetScope(Y,J)}return B.withScope(A[0])}function BG(...A){let Q=TJ(),B=y5(Q);if(A.length===2){let[Y,J]=A;if(!Y)return B.withIsolationScope(J);return B.withSetIsolationScope(Y,J)}return B.withIsolationScope(A[0])}function gA(){return sQ().getClient()}function hE(A){let Q=A.getPropagationContext(),{traceId:B,parentSpanId:Y,propagationSpanId:J}=Q,C={trace_id:B,span_id:J||g8()};if(Y)C.parent_span_id=Y;return C}var Q0="sentry.source",g5="sentry.sample_rate",cu="sentry.previous_trace_sample_rate",YQ="sentry.op",DQ="sentry.origin";var Lj="sentry.measurement_unit",qj="sentry.measurement_value",eC="sentry.custom_span_name",xE="sentry.profile_id",fE="sentry.exclusive_time",lu="cache.hit",pu="cache.key",iu="cache.item_size";var nu=0,BW=1,s9=2;function bE(A){if(A<400&&A>=100)return{code:1};if(A>=400&&A<500)switch(A){case 401:return{code:2,message:"unauthenticated"};case 403:return{code:2,message:"permission_denied"};case 404:return{code:2,message:"not_found"};case 409:return{code:2,message:"already_exists"};case 413:return{code:2,message:"failed_precondition"};case 429:return{code:2,message:"resource_exhausted"};case 499:return{code:2,message:"cancelled"};default:return{code:2,message:"invalid_argument"}}if(A>=500&&A<600)switch(A){case 501:return{code:2,message:"unimplemented"};case 503:return{code:2,message:"unavailable"};case 504:return{code:2,message:"deadline_exceeded"};default:return{code:2,message:"internal_error"}}return{code:2,message:"unknown_error"}}function mE(A,Q){A.setAttribute("http.response.status_code",Q);let B=bE(Q);if(B.message!=="unknown_error")A.setStatus(B)}var CNA="_sentryScope",XNA="_sentryIsolationScope";function EN(A,Q,B){if(A)p0(A,XNA,B),p0(A,CNA,Q)}function A1(A){return{scope:A[CNA],isolationScope:A[XNA]}}function x8(A){if(typeof A==="boolean")return Number(A);let Q=typeof A==="string"?parseFloat(A):A;if(typeof Q!=="number"||isNaN(Q)||Q<0||Q>1)return;return Q}var KN="sentry-",WNA=/^sentry-/,FNA=8192;function YW(A){let Q=hZ(A);if(!Q)return;let B=Object.entries(Q).reduce((Y,[J,C])=>{if(J.match(WNA)){let X=J.slice(KN.length);Y[X]=C}return Y},{});if(Object.keys(B).length>0)return B;else return}function JW(A){if(!A)return;let Q=Object.entries(A).reduce((B,[Y,J])=>{if(J)B[`${KN}${Y}`]=J;return B},{});return Mj(Q)}function hZ(A){if(!A||!vZ(A)&&!Array.isArray(A))return;if(Array.isArray(A))return A.reduce((Q,B)=>{let Y=GNA(B);return Object.entries(Y).forEach(([J,C])=>{Q[J]=C}),Q},{});return GNA(A)}function GNA(A){return A.split(",").map((Q)=>Q.split("=").map((B)=>{try{return decodeURIComponent(B.trim())}catch{return}})).reduce((Q,[B,Y])=>{if(B&&Y)Q[B]=Y;return Q},{})}function Mj(A){if(Object.keys(A).length===0)return;return Object.entries(A).reduce((Q,[B,Y],J)=>{let C=`${encodeURIComponent(B)}=${encodeURIComponent(Y)}`,X=J===0?C:`${Q},${C}`;if(X.length>FNA)return OA&&e.warn(`Not adding key: ${B} with val: ${Y} to baggage header due to exceeding baggage size limits.`),Q;else return X},"")}var VN=new RegExp("^[ \\t]*([0-9a-f]{32})?-?([0-9a-f]{16})?-?([01])?[ \\t]*$");function ZNA(A){if(!A)return;let Q=A.match(VN);if(!Q)return;let B;if(Q[3]==="1")B=!0;else if(Q[3]==="0")B=!1;return{traceId:Q[1],parentSampled:B,parentSpanId:Q[2]}}function xZ(A,Q){let B=ZNA(A),Y=YW(Q);if(!B?.traceId)return{traceId:y8(),sampleRand:Math.random()};let J=L$B(B,Y);if(Y)Y.sample_rand=J.toString();let{traceId:C,parentSpanId:X,parentSampled:G}=B;return{traceId:C,parentSpanId:X,sampled:G,dsc:Y||{},sampleRand:J}}function CW(A=y8(),Q=g8(),B){let Y="";if(B!==void 0)Y=B?"-1":"-0";return`${A}-${Q}${Y}`}function L$B(A,Q){let B=x8(Q?.sample_rand);if(B!==void 0)return B;let Y=x8(Q?.sample_rate);if(Y&&A?.parentSampled!==void 0)return A.parentSampled?Math.random()*Y:Y+Math.random()*(1-Y);else return Math.random()}var zj=0,Rj=1,$NA=!1;function ENA(A){let{spanId:Q,traceId:B}=A.spanContext(),{data:Y,op:J,parent_span_id:C,status:X,origin:G,links:W}=eA(A);return{parent_span_id:C,span_id:Q,trace_id:B,data:Y,op:J,status:X,origin:G,links:W}}function XW(A){let{spanId:Q,traceId:B,isRemote:Y}=A.spanContext(),J=Y?Q:eA(A).parent_span_id,C=A1(A).scope,X=Y?C?.getPropagationContext().propagationSpanId||g8():Q;return{parent_span_id:J,span_id:X,trace_id:B}}function HN(A){let{traceId:Q,spanId:B}=A.spanContext(),Y=XX(A);return CW(Q,B,Y)}function fZ(A){if(A&&A.length>0)return A.map(({context:{spanId:Q,traceId:B,traceFlags:Y,...J},attributes:C})=>({span_id:Q,trace_id:B,sampled:Y===Rj,attributes:C,...J}));else return}function r9(A){if(typeof A==="number")return UNA(A);if(Array.isArray(A))return A[0]+A[1]/1e9;if(A instanceof Date)return UNA(A.getTime());return v8()}function UNA(A){return A>9999999999?A/1000:A}function eA(A){if(M$B(A))return A.getSpanJSON();let{spanId:Q,traceId:B}=A.spanContext();if(q$B(A)){let{attributes:Y,startTime:J,name:C,endTime:X,status:G,links:W}=A,F="parentSpanId"in A?A.parentSpanId:("parentSpanContext"in A)?A.parentSpanContext?.spanId:void 0;return{span_id:Q,trace_id:B,data:Y,description:C,parent_span_id:F,start_timestamp:r9(J),timestamp:r9(X)||void 0,status:bZ(G),op:Y[YQ],origin:Y[DQ],links:fZ(W)}}return{span_id:Q,trace_id:B,start_timestamp:0,data:{}}}function q$B(A){let Q=A;return!!Q.attributes&&!!Q.startTime&&!!Q.name&&!!Q.endTime&&!!Q.status}function M$B(A){return typeof A.getSpanJSON==="function"}function XX(A){let{traceFlags:Q}=A.spanContext();return Q===Rj}function bZ(A){if(!A||A.code===nu)return;if(A.code===BW)return"ok";return A.message||"unknown_error"}var IN="_sentryChildSpans",su="_sentryRootSpan";function uE(A,Q){let B=A[su]||A;if(p0(Q,su,B),A[IN])A[IN].add(Q);else p0(A,IN,new Set([Q]))}function DN(A){let Q=new Set;function B(Y){if(Q.has(Y))return;else if(XX(Y)){Q.add(Y);let J=Y[IN]?Array.from(Y[IN]):[];for(let C of J)B(C)}}return B(A),Array.from(Q)}function K0(A){return A[su]||A}function Q1(){let A=TJ(),Q=y5(A);if(Q.getActiveSpan)return Q.getActiveSpan();return tC(sQ())}function NN(){if(!$NA)f0(()=>{console.warn("[Sentry] Returning null from `beforeSendSpan` is disallowed. To drop certain spans, configure the respective integrations directly.")}),$NA=!0}function ru(A,Q){A.updateName(Q),A.setAttributes({[Q0]:"custom",[eC]:Q})}var ou="?",KNA=/\(error: (.*)\)/,VNA=/captureMessage|captureException/;function jj(...A){let Q=A.sort((B,Y)=>B[0]-Y[0]).map((B)=>B[1]);return(B,Y=0,J=0)=>{let C=[],X=B.split(` + }`});try{let Y=(await Q.next()).value?.data?.userById;if(!Y)return l.warning(`PlatformGateway.getPlayerCosmetics(): No cosmetic data returned for user id "${A}".`);let J=Y.equippedItems?Y.equippedItems.map((W)=>({slot:W.slot,item:W.itemInstance.item.slots.find((F)=>F.type===W.slot)})).filter((W)=>!!W.item):[],C=Y.characterSettings?.hair?.modelUrl,X=Y.characterSettings?.hair?.textureUrl,G=`https://d3qkovarww0lj1.cloudfront.net/?skin_tone=${Y.characterSettings?.skinTone||"SKIN_COLOR_1"}&clothing=${Y.characterSettings?.clothing||"CLOTHING_1"}&hair_style=${Y.characterSettings?.hairStyle||"HAIR_STYLE_1"}&hair_color=${Y.characterSettings?.hairColor||"HAIR_COLOR_1"}&eye_color=${Y.characterSettings?.eyeColor||"00FF00"}`;return{equippedItems:J,hairModelUri:C,hairTextureUri:X,skinTextureUri:G}}finally{await Q.return?.()}}async getPlayerSession(A){if(!this._creativeGateway)return;return await this._creativeGateway.getSession(A)}async scheduleNotification(A,Q,B){if(!tw)return l.warning("PlatformGateway.scheduleNotification(): HYTOPIA_NOTIFICATION_SERVICE_URL is not set. Unable to schedule notification.");if(!this.gameId||!this.creatorApiKey)return l.warning("PlatformGateway.scheduleNotification(): HYTOPIA_GAME_ID or HYTOPIA_API_KEY is not set. Unable to schedule notification.");if(BsetTimeout(J,500))}l.warning(`PersistenceManager.getGlobalData(): Failed to get global data after ${Q} attempts.`);return}async getPlayerData(A){let Q=await this._saveStatesClient.load(this._getPlayerKey(A));if(!Q)return l.warning(`PersistenceManager.getPlayerData(): Failed to get player data for player ${A.id}. Persistence service may be down.`),{};return Q}async setGlobalData(A,Q){let B=await P5.instance.setGlobalData(A,Q);if(!B||B.error){if(B?.error)l.warning(`PersistenceManager.setGlobalData(): ${B.error.message}`)}}async setPlayerData(A,Q){let B=await this.getPlayerData(A);for(let[Y,J]of Object.entries(Q))B[Y]=J}async unloadPlayerData(A){await this._saveStatesClient.unload(this._getPlayerKey(A))}_getPlayerKey(A){return`player-${A.id}`}}var tm;((Y)=>{Y[Y.FIRST_PERSON=0]="FIRST_PERSON";Y[Y.THIRD_PERSON=1]="THIRD_PERSON";Y[Y.SPECTATOR=2]="SPECTATOR"})(tm||={});var em;((L)=>{L.FACE_ENTITY="PLAYER_CAMERA.FACE_ENTITY";L.FACE_POSITION="PLAYER_CAMERA.FACE_POSITION";L.SET_ATTACHED_TO_ENTITY="PLAYER_CAMERA.SET_ATTACHED_TO_ENTITY";L.SET_ATTACHED_TO_POSITION="PLAYER_CAMERA.SET_ATTACHED_TO_POSITION";L.SET_COLLIDES_WITH_BLOCKS="PLAYER_CAMERA.SET_COLLIDES_WITH_BLOCKS";L.SET_FILM_OFFSET="PLAYER_CAMERA.SET_FILM_OFFSET";L.SET_FORWARD_OFFSET="PLAYER_CAMERA.SET_FORWARD_OFFSET";L.SET_FOV="PLAYER_CAMERA.SET_FOV";L.SET_MODE="PLAYER_CAMERA.SET_MODE";L.SET_OFFSET="PLAYER_CAMERA.SET_OFFSET";L.SET_SHOULDER_ANGLE="PLAYER_CAMERA.SET_SHOULDER_ANGLE";L.SET_TARGET_ENTITY="PLAYER_CAMERA.SET_TARGET_ENTITY";L.SET_TARGET_POSITION="PLAYER_CAMERA.SET_TARGET_POSITION";L.SET_VIEW_MODEL="PLAYER_CAMERA.SET_VIEW_MODEL";L.SET_VIEW_MODEL_HIDDEN_NODES="PLAYER_CAMERA.SET_VIEW_MODEL_HIDDEN_NODES";L.SET_VIEW_MODEL_PITCHES_WITH_CAMERA="PLAYER_CAMERA.SET_VIEW_MODEL_PITCHES_WITH_CAMERA";L.SET_VIEW_MODEL_SHOWN_NODES="PLAYER_CAMERA.SET_VIEW_MODEL_SHOWN_NODES";L.SET_VIEW_MODEL_YAWS_WITH_CAMERA="PLAYER_CAMERA.SET_VIEW_MODEL_YAWS_WITH_CAMERA";L.SET_ZOOM="PLAYER_CAMERA.SET_ZOOM"})(em||={});class aD extends BQ{player;_attachedToEntity;_attachedToPosition;_collidesWithBlocks=!0;_filmOffset=0;_forwardOffset=0;_fov=75;_mode=1;_offset={x:0,y:0,z:0};_orientation={pitch:0,yaw:0};_shoulderAngle=0;_targetEntity;_targetPosition;_viewModelUri;_viewModelHiddenNodes=new Set;_viewModelPitchesWithCamera=!1;_viewModelShownNodes=new Set;_viewModelYawsWithCamera=!1;_zoom=1;constructor(A){super();this.player=A}get attachedToEntity(){return this._attachedToEntity}get attachedToPosition(){return this._attachedToPosition}get collidesWithBlocks(){return this._collidesWithBlocks}get facingDirection(){return{x:-Math.sin(this._orientation.yaw)*Math.cos(this._orientation.pitch),y:Math.sin(this._orientation.pitch),z:-Math.cos(this._orientation.yaw)*Math.cos(this._orientation.pitch)}}get facingQuaternion(){let A=this._orientation.pitch*0.5,Q=this._orientation.yaw*0.5,B=Math.cos(A),Y=Math.sin(A),J=Math.cos(Q),C=Math.sin(Q);return{x:Y*J,y:B*C,z:-Y*C,w:B*J}}get filmOffset(){return this._filmOffset}get forwardOffset(){return this._forwardOffset}get fov(){return this._fov}get modelHiddenNodes(){return this._viewModelHiddenNodes}get modelShownNodes(){return this._viewModelShownNodes}get mode(){return this._mode}get offset(){return this._offset}get orientation(){return this._orientation}get shoulderAngle(){return this._shoulderAngle}get targetEntity(){return this._targetEntity}get targetPosition(){return this._targetPosition}get viewModelUri(){return this._viewModelUri??this._attachedToEntity?.modelUri}get viewModelHiddenNodes(){return this._viewModelHiddenNodes}get viewModelPitchesWithCamera(){return this._viewModelPitchesWithCamera}get viewModelShownNodes(){return this._viewModelShownNodes}get viewModelYawsWithCamera(){return this._viewModelYawsWithCamera}get zoom(){return this._zoom}faceEntity(A){if(!this._requirePlayerWorld("faceEntity"))return;this._targetEntity=void 0,this._targetPosition=void 0,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.FACE_ENTITY",{playerCamera:this,entity:A})}facePosition(A){if(!this._requirePlayerWorld("facePosition"))return;this._targetEntity=void 0,this._targetPosition=void 0,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.FACE_POSITION",{playerCamera:this,position:A})}reset(){this._attachedToEntity=void 0,this._attachedToPosition=void 0,this._orientation={pitch:0,yaw:0},this._targetEntity=void 0,this._targetPosition=void 0}setAttachedToEntity(A){if(!this._requirePlayerWorld("setAttachedToEntity"))return;if(!A.isSpawned)return l.error(`PlayerCamera.setAttachedToEntity(): Entity ${A.id} is not spawned!`);if(this._targetEntity===A)return l.error(`PlayerCamera.setAttachedToEntity(): Entity ${A.id} is already set as the target. Attachment and target cannot be the same!`);this._attachedToEntity=A,this._attachedToPosition=void 0,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_ATTACHED_TO_ENTITY",{playerCamera:this,entity:A})}setAttachedToPosition(A){if(!this._requirePlayerWorld("setAttachedToPosition"))return;if(A&&this._targetPosition?.x===A.x&&this._targetPosition?.y===A.y&&this._targetPosition?.z===A.z)return l.error(`PlayerCamera.setAttachedToPosition(): Position ${A.x}, ${A.y}, ${A.z} is already set as the target. Attachment and target cannot be the same!`);this._attachedToPosition=A,this._attachedToEntity=void 0,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_ATTACHED_TO_POSITION",{playerCamera:this,position:A})}setCollidesWithBlocks(A){if(!this._requirePlayerWorld("setCollidesWithBlocks"))return;this._collidesWithBlocks=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_COLLIDES_WITH_BLOCKS",{playerCamera:this,collidesWithBlocks:A})}setFilmOffset(A){if(!this._requirePlayerWorld("setFilmOffset"))return;this._filmOffset=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_FILM_OFFSET",{playerCamera:this,filmOffset:A})}setForwardOffset(A){if(!this._requirePlayerWorld("setForwardOffset"))return;this._forwardOffset=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_FORWARD_OFFSET",{playerCamera:this,forwardOffset:A})}setFov(A){if(!this._requirePlayerWorld("setFov"))return;this._fov=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_FOV",{playerCamera:this,fov:A})}setMode(A){if(!this._requirePlayerWorld("setMode"))return;this._mode=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_MODE",{playerCamera:this,mode:A})}setOffset(A){if(!this._requirePlayerWorld("setOffset"))return;this._offset=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_OFFSET",{playerCamera:this,offset:A})}setOrientationPitch(A){this._orientation.pitch=A}setOrientationYaw(A){this._orientation.yaw=A}setShoulderAngle(A){if(!this._requirePlayerWorld("setShoulderAngle"))return;this._shoulderAngle=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_SHOULDER_ANGLE",{playerCamera:this,shoulderAngle:A})}setTargetEntity(A){if(!this._requirePlayerWorld("setTargetEntity"))return;if(A&&this._attachedToEntity===A)return l.error(`PlayerCamera.setTargetEntity(): Entity ${A.id} is already set as the attachment. Attachment and target cannot be the same!`);if(this._targetEntity=A,A)this._targetPosition=void 0;this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_TARGET_ENTITY",{playerCamera:this,entity:A})}setTargetPosition(A){if(!this._requirePlayerWorld("setTargetPosition"))return;if(A&&this._attachedToPosition?.x===A.x&&this._attachedToPosition?.y===A.y&&this._attachedToPosition?.z===A.z)return l.error(`PlayerCamera.setTargetPosition(): Position ${A.x}, ${A.y}, ${A.z} is already set as the attachment. Attachment and target cannot be the same!`);if(this._targetPosition=A,A)this._targetEntity=void 0;this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_TARGET_POSITION",{playerCamera:this,position:A})}setViewModel(A){if(!this._requirePlayerWorld("setViewModel"))return;if(!this._attachedToEntity)return l.error("PlayerCamera.setViewModel(): Camera is not attached to an entity, cannot set view model! Use camera.setAttachedToEntity() first.");this._viewModelUri=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_VIEW_MODEL",{playerCamera:this,viewModelUri:A})}setViewModelHiddenNodes(A){if(!this._requirePlayerWorld("setViewModelHiddenNodes"))return;this._viewModelHiddenNodes=new Set(A.map((Q)=>Q.toLowerCase())),this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_VIEW_MODEL_HIDDEN_NODES",{playerCamera:this,viewModelHiddenNodes:this._viewModelHiddenNodes})}setViewModelPitchesWithCamera(A){if(!this._requirePlayerWorld("setViewModelPitchesWithCamera"))return;this._viewModelPitchesWithCamera=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_VIEW_MODEL_PITCHES_WITH_CAMERA",{playerCamera:this,viewModelPitchesWithCamera:A})}setViewModelShownNodes(A){if(!this._requirePlayerWorld("setViewModelShownNodes"))return;this._viewModelShownNodes=new Set(A.map((Q)=>Q.toLowerCase())),this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_VIEW_MODEL_SHOWN_NODES",{playerCamera:this,viewModelShownNodes:this._viewModelShownNodes})}setViewModelYawsWithCamera(A){if(!this._requirePlayerWorld("setViewModelYawsWithCamera"))return;this._viewModelYawsWithCamera=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_VIEW_MODEL_YAWS_WITH_CAMERA",{playerCamera:this,viewModelYawsWithCamera:A})}setZoom(A){if(!this._requirePlayerWorld("setZoom"))return;this._zoom=A,this.emitWithWorld(this.player.world,"PLAYER_CAMERA.SET_ZOOM",{playerCamera:this,zoom:A})}serialize(){return GQ.serializePlayerCamera(this)}_requirePlayerWorld(A){if(!this.player.world)l.error(`PlayerCamera._requirePlayerWorld(): Player ${this.player.id} is not in a world, invoked method: ${A}()`);return!!this.player.world}}var ew;((X)=>{X.APPEND="PLAYER_UI.APPEND";X.DATA="PLAYER_UI.DATA";X.FREEZE_POINTER_LOCK="PLAYER_UI.FREEZE_POINTER_LOCK";X.LOAD="PLAYER_UI.LOAD";X.LOCK_POINTER="PLAYER_UI.LOCK_POINTER";X.SEND_DATA="PLAYER_UI.SEND_DATA"})(ew||={});class oD extends BQ{player;constructor(A){super();this.player=A}append(A){if(!this.player.world)return;this.emitWithWorld(this.player.world,"PLAYER_UI.APPEND",{playerUI:this,htmlUri:A})}freezePointerLock(A){if(!this.player.world)return;this.emitWithWorld(this.player.world,"PLAYER_UI.FREEZE_POINTER_LOCK",{playerUI:this,freeze:A})}load(A){if(!this.player.world)return;this.emitWithWorld(this.player.world,"PLAYER_UI.LOAD",{playerUI:this,htmlUri:A})}lockPointer(A){if(!this.player.world)return;this.emitWithWorld(this.player.world,"PLAYER_UI.LOCK_POINTER",{playerUI:this,lock:A})}sendData(A){if(!this.player.world)return;this.emitWithWorld(this.player.world,"PLAYER_UI.SEND_DATA",{playerUI:this,data:A})}}var lWB=["w","a","s","d","sp","sh","tb","ml","mr","q","e","r","f","z","x","c","v","u","i","o","j","k","l","n","m","1","2","3","4","5","6","7","8","9","0","cp","cy","iro","ird","jd"],tD;((G)=>{G.CHAT_MESSAGE_SEND="PLAYER.CHAT_MESSAGE_SEND";G.INTERACT="PLAYER.INTERACT";G.JOINED_WORLD="PLAYER.JOINED_WORLD";G.LEFT_WORLD="PLAYER.LEFT_WORLD";G.RECONNECTED_WORLD="PLAYER.RECONNECTED_WORLD";G.REQUEST_NOTIFICATION_PERMISSION="PLAYER.REQUEST_NOTIFICATION_PERMISSION";G.REQUEST_SYNC="PLAYER.REQUEST_SYNC"})(tD||={});class TE extends BQ{static _devNextPlayerId=1;id;username;profilePictureUrl;camera;connection;cosmetics;ui;_input={};_interactEnabled=!0;_lastUnreliableInputSequenceNumber=0;_maxInteractDistance=20;_persistedData;_world;_worldSwitched=!1;constructor(A,Q){super();this.id=Q?.user.id??`player-${TE._devNextPlayerId++}`,this.username=Q?.user.username??this.id,this.profilePictureUrl=Q?.user.profilePictureURL??void 0,this.camera=new aD(this),this.connection=A,this.cosmetics=Q?.user.id?P5.instance.getPlayerCosmetics(this.id):Promise.resolve(void 0),this.ui=new oD(this),A.onPacket(gQ.PacketId.CHAT_MESSAGE_SEND,this._onChatMessageSendPacket),A.onPacket(gQ.PacketId.DEBUG_CONFIG,this._onDebugConfigPacket),A.onPacket(gQ.PacketId.INPUT,this._onInputPacket),A.onPacket(gQ.PacketId.SYNC_REQUEST,this._onSyncRequestPacket),A.onPacket(gQ.PacketId.UI_DATA_SEND,this._onUIDataSendPacket)}get input(){return this._input}get isInteractEnabled(){return this._interactEnabled}get maxInteractDistance(){return this._maxInteractDistance}get world(){return this._world}disconnect(){this._leaveWorld(),this.connection.disconnect()}getPersistedData(){if(!this._persistedData)return;let A=Object.keys(this._persistedData);if(A.length===0||A.length===1&&A[0]==="__version")return;return this._persistedData}joinWorld(A){if(this._world===A)return;if(!this._world)this._world=A,this.emitWithWorld(this._world,"PLAYER.JOINED_WORLD",{player:this,world:this._world});else{for(let Q of this._world.entityManager.getPlayerEntitiesByPlayer(this))if(Q.isSpawned)Q.despawn();this.disconnect(),this._world=A,this._worldSwitched=!0}}async scheduleNotification(A,Q){if(!this._world)return l.warning("Player.scheduleNotification(): Player must be in a world to schedule a notification.");return this.emitWithWorld(this._world,"PLAYER.REQUEST_NOTIFICATION_PERMISSION",{player:this}),P5.instance.scheduleNotification(this.id,A,Q)}async unscheduleNotification(A){if(!A)return!1;return P5.instance.unscheduleNotification(A)}async loadInitialPersistedData(){if(this._persistedData)return;this._persistedData=await s7.instance.getPlayerData(this)}reconnected(){if(!this._world)return;if(this._lastUnreliableInputSequenceNumber=0,!this._worldSwitched)this.emitWithWorld(this._world,"PLAYER.RECONNECTED_WORLD",{player:this,world:this._world});else this._worldSwitched=!1,this.emitWithWorld(this._world,"PLAYER.JOINED_WORLD",{player:this,world:this._world})}resetInputs(){this._input={}}setInteractEnabled(A){this._interactEnabled=A}setMaxInteractDistance(A){this._maxInteractDistance=A}setPersistedData(A){if(!this._persistedData){l.warning(`Player.setPersistedData(): Persisted data not found for player ${this.id}`);return}for(let[Q,B]of Object.entries(A))this._persistedData[Q]=B}serialize(){return GQ.serializePlayer(this)}_leaveWorld(){if(!this._world)return;this.emitWithWorld(this._world,"PLAYER.LEFT_WORLD",{player:this,world:this._world}),this._world=void 0}_onChatMessageSendPacket=(A)=>{if(!this._world)return;let Q=A[1].m;if(this._world.chatManager.handleCommand(this,Q)){this._world.chatManager.sendPlayerMessage(this,`Command Entered: ${Q}`,"CCCCCC");return}this.emitWithWorld(this._world,"PLAYER.CHAT_MESSAGE_SEND",{player:this,message:Q})};_onDebugConfigPacket=(A)=>{console.log(A)};_onInputPacket=(A)=>{let Q=A[1];if(Q.sq!==void 0){if(Q.sq{if(!this.world||!this._input.ird||!this._input.iro)return;if(this._interactEnabled){let A={x:this._input.iro[0],y:this._input.iro[1],z:this._input.iro[2]},Q={x:this._input.ird[0],y:this._input.ird[1],z:this._input.ird[2]},B=this.world.entityManager.getPlayerEntitiesByPlayer(this)[0],Y=this.world.simulation.raycast(A,Q,this._maxInteractDistance,{filterExcludeRigidBody:B?.rawRigidBody,filterFlags:WB.QueryFilterFlags.EXCLUDE_SENSORS});if(this.emitWithWorld(this.world,"PLAYER.INTERACT",{player:this,interactOrigin:A,interactDirection:Q,raycastHit:Y}),Y?.hitEntity)Y.hitEntity.interact(this,Y);if(Y?.hitBlock)Y.hitBlock.blockType.interact(this,Y)}};_onSyncRequestPacket=()=>{if(this._world)this.emitWithWorld(this._world,"PLAYER.REQUEST_SYNC",{player:this,receivedAt:Date.now(),receivedAtMs:performance.now()})};_onUIDataSendPacket=(A)=>{this.ui.emit("PLAYER_UI.DATA",{playerUI:this.ui,data:A[1]})}}var Au;((B)=>{B.BROADCAST_MESSAGE="CHAT.BROADCAST_MESSAGE";B.PLAYER_MESSAGE="CHAT.PLAYER_MESSAGE"})(Au||={});class eD extends BQ{_commandCallbacks={};_world;constructor(A){super();this._world=A,this._subscribeToPlayerEvents()}registerCommand(A,Q){this._commandCallbacks[A]=Q}unregisterCommand(A){delete this._commandCallbacks[A]}sendBroadcastMessage(A,Q){this._sendBroadcastMessage(void 0,A,Q)}handleCommand(A,Q){let[B,...Y]=Q.split(" "),J=this._commandCallbacks[B];if(J)return J(A,Y,Q),!0;return!1}sendPlayerMessage(A,Q,B){this.emitWithWorld(this._world,"CHAT.PLAYER_MESSAGE",{player:A,message:Q,color:B})}_subscribeToPlayerEvents(){this._world.on("PLAYER.CHAT_MESSAGE_SEND",(A)=>{let{player:Q,message:B}=A;this._sendBroadcastMessage(Q,B)})}_sendBroadcastMessage(A,Q,B){this.emitWithWorld(this._world,"CHAT.BROADCAST_MESSAGE",{player:A,message:Q,color:B})}}var d9=16,T5=d9-1,wZ=Math.log2(d9),c9=d9**3,SE=255;class MY{_blocks;_blockRotations=new Map;_originCoordinate;constructor(A){this._blocks=new Uint8Array(c9),this._originCoordinate=A}get blocks(){return this._blocks}get blockRotations(){return this._blockRotations}get originCoordinate(){return this._originCoordinate}static blockIndexToLocalCoordinate(A){return{x:A&T5,y:A>>wZ&T5,z:A>>wZ*2&T5}}static localCoordinateToBlockIndex(A){return A.x+(A.y<SE)return l.error(`Chunk.setBlock(): Block type id ${Q} is out of bounds (expected 0-${SE}).`);let Y=this._getIndex(A);if(this._blocks[Y]=Q,this._blockRotations.delete(Y),B&&B!==w8.Y_0)this._blockRotations.set(Y,B)}serialize(){return GQ.serializeChunk(this)}_getIndex(A){return MY.localCoordinateToBlockIndex(A)}_isValidLocalCoordinate(A){return A.x>=0&&A.x<=T5&&A.y>=0&&A.y<=T5&&A.z>=0&&A.z<=T5}}var pWB=32,iWB=c9/pWB,AN=54,nWB=BigInt(AN),sWB=BigInt(AN*2),Qu;((Y)=>{Y.ADD_CHUNK="CHUNK_LATTICE.ADD_CHUNK";Y.REMOVE_CHUNK="CHUNK_LATTICE.REMOVE_CHUNK";Y.SET_BLOCK="CHUNK_LATTICE.SET_BLOCK"})(Qu||={});class QN extends BQ{_blockTypeColliders=new Map;_blockTypeChunkMasks=new Map;_blockTypeCounts=new Map;_chunks=new Map;_rigidBody;_world;constructor(A){super();this._world=A}get chunkCount(){return this._chunks.size}clear(){for(let A of this._blockTypeColliders.values())A.removeFromSimulation();this._chunks.forEach((A)=>{this.emitWithWorld(this._world,"CHUNK_LATTICE.REMOVE_CHUNK",{chunkLattice:this,chunk:A})}),this._blockTypeColliders.clear(),this._blockTypeChunkMasks.clear(),this._blockTypeCounts.clear(),this._chunks.clear()}getBlockId(A){let Q=this.getChunk(A);if(!Q)return 0;return Q.getBlockId(MY.globalCoordinateToLocalCoordinate(A))}getBlockTypeCollider(A){return this._blockTypeColliders.get(A)}getBlockType(A){let Q=this.getBlockId(A);return Q?this._world.blockTypeRegistry.getBlockType(Q):null}getBlockTypeCount(A){if(!this._isValidBlockTypeId(A))return 0;return this._blockTypeCounts.get(A)??0}getChunk(A){return this._chunks.get(this._getChunkKey(A))}getOrCreateBlockTypeCollider(A,Q){let B=this._blockTypeColliders.get(A);if(B)return B;let J=this._world.blockTypeRegistry.getBlockType(A).createCollider(Q);return this._blockTypeColliders.set(A,J),J}getOrCreateChunk(A){let Q=MY.globalCoordinateToOriginCoordinate(A),B=this._packCoordinate(Q),Y=this._chunks.get(B);if(Y)return Y;return Y=new MY(Q),this._chunks.set(B,Y),this.emitWithWorld(this._world,"CHUNK_LATTICE.ADD_CHUNK",{chunkLattice:this,chunk:Y}),Y}getAllChunks(){return Array.from(this._chunks.values())}hasBlock(A){let Q=this.getChunk(A);if(!Q)return!1;return Q.hasBlock(MY.globalCoordinateToLocalCoordinate(A))}hasChunk(A){return this._chunks.has(this._getChunkKey(A))}initializeBlocks(A){let Q=function*(){for(let B in A){let Y=Number(B),J=A[Y];for(let C=0;C>>0;if(G===0)continue;let W=G;while(W!==0){let F=W&-W,Z=31-Math.clz32(F),U=(X<<5)+Z,$=MY.blockIndexToLocalCoordinate(U),E=C.getBlockRotation($);Q.push({globalCoordinate:{x:C.originCoordinate.x+$.x,y:C.originCoordinate.y+$.y,z:C.originCoordinate.z+$.z},blockRotation:E===w8.Y_0?void 0:E}),W=(W&W-1)>>>0}}}return Q}_isChunkMaskEmpty(A){for(let Q=0;Q=0&&A<=SE;if(!Q)l.error(`ChunkLattice._isValidBlockTypeId(): Block type id ${A} is out of bounds (expected 0-${SE}).`);return Q}_setBlockTypePlacement(A,Q,B){let Y=this._blockTypeChunkMasks.get(A);if(!Y){if(!B)return;Y=new Map,this._blockTypeChunkMasks.set(A,Y)}let J=this._getChunkKey(Q),C=MY.globalCoordinateToLocalCoordinate(Q),X=MY.localCoordinateToBlockIndex(C),G=X>>>5,W=1<<(X&31)>>>0,F=Y.get(J);if(!F){if(!B)return;F=new Uint32Array(iWB),Y.set(J,F)}let Z=(F[G]&W)!==0;if(B){if(Z)return;F[G]|=W,this._blockTypeCounts.set(A,(this._blockTypeCounts.get(A)??0)+1);return}if(!Z)return;F[G]&=~W;let U=Math.max(0,(this._blockTypeCounts.get(A)??0)-1);if(U>0)this._blockTypeCounts.set(A,U);else this._blockTypeCounts.delete(A),this._blockTypeChunkMasks.delete(A);if(this._blockTypeChunkMasks.has(A)&&this._isChunkMaskEmpty(F))Y.delete(J)}}class BN{_colliderHandleBlockTypeMap=new Map;_colliderHandleCollisionCallbackMap=new Map;_colliderHandleEntityMap=new Map;_cleanupBlockTypeColliderHandles=new Set;_pendingCleanupBlockTypeColliderHandles=new Set;_cleanupCollisionCallbackColliderHandles=new Set;_pendingCleanupCollisionCallbackColliderHandles=new Set;_cleanupEntityColliderHandles=new Set;_pendingCleanupEntityColliderHandles=new Set;getColliderBlockType(A){if(!this._requireSimulatedCollider(A))return;return this._colliderHandleBlockTypeMap.get(A.rawCollider.handle)}getColliderCollisionCallback(A){if(!this._requireSimulatedCollider(A))return;return this._colliderHandleCollisionCallbackMap.get(A.rawCollider.handle)}getColliderEntity(A){if(!this._requireSimulatedCollider(A))return;return this._colliderHandleEntityMap.get(A.rawCollider.handle)}getColliderHandleBlockType(A){return this._colliderHandleBlockTypeMap.get(A)}getColliderHandleCollisionCallback(A){return this._colliderHandleCollisionCallbackMap.get(A)}getColliderHandleEntity(A){return this._colliderHandleEntityMap.get(A)}removeColliderBlockType(A){if(!this._requireSimulatedCollider(A))return;this.removeColliderHandleBlockType(A.rawCollider.handle)}removeColliderCollisionCallback(A){if(!this._requireSimulatedCollider(A))return;this.removeColliderHandleCollisionCallback(A.rawCollider.handle)}removeColliderEntity(A){if(!this._requireSimulatedCollider(A))return;this.removeColliderHandleEntity(A.rawCollider.handle)}removeColliderHandleBlockType(A){this._colliderHandleBlockTypeMap.delete(A)}removeColliderHandleCollisionCallback(A){this._colliderHandleCollisionCallbackMap.delete(A)}removeColliderHandleEntity(A){this._colliderHandleEntityMap.delete(A)}setColliderBlockType(A,Q){if(!this._requireSimulatedCollider(A))return;this.setColliderHandleBlockType(A.rawCollider.handle,Q)}setColliderCollisionCallback(A,Q){if(!this._requireSimulatedCollider(A))return;this.setColliderHandleCollisionCallback(A.rawCollider.handle,Q)}setColliderEntity(A,Q){if(!this._requireSimulatedCollider(A))return;this.setColliderHandleEntity(A.rawCollider.handle,Q)}setColliderHandleBlockType(A,Q){this._colliderHandleBlockTypeMap.set(A,Q),this._cleanupBlockTypeColliderHandles.delete(A),this._pendingCleanupBlockTypeColliderHandles.delete(A)}setColliderHandleCollisionCallback(A,Q){this._colliderHandleCollisionCallbackMap.set(A,Q),this._cleanupCollisionCallbackColliderHandles.delete(A),this._pendingCleanupCollisionCallbackColliderHandles.delete(A)}setColliderHandleEntity(A,Q){this._colliderHandleEntityMap.set(A,Q),this._cleanupEntityColliderHandles.delete(A),this._pendingCleanupEntityColliderHandles.delete(A)}queueColliderHandleForCleanup(A){if(this._colliderHandleBlockTypeMap.has(A))this._pendingCleanupBlockTypeColliderHandles.add(A);if(this._colliderHandleCollisionCallbackMap.has(A))this._pendingCleanupCollisionCallbackColliderHandles.add(A);if(this._colliderHandleEntityMap.has(A))this._pendingCleanupEntityColliderHandles.add(A)}cleanup(){for(let A of this._cleanupBlockTypeColliderHandles)this._colliderHandleBlockTypeMap.delete(A);if(this._cleanupBlockTypeColliderHandles.size>0)this._cleanupBlockTypeColliderHandles.clear();for(let A of this._cleanupCollisionCallbackColliderHandles)this._colliderHandleCollisionCallbackMap.delete(A);if(this._cleanupCollisionCallbackColliderHandles.size>0)this._cleanupCollisionCallbackColliderHandles.clear();for(let A of this._cleanupEntityColliderHandles)this._colliderHandleEntityMap.delete(A);if(this._cleanupEntityColliderHandles.size>0)this._cleanupEntityColliderHandles.clear();for(let A of this._pendingCleanupBlockTypeColliderHandles)this._cleanupBlockTypeColliderHandles.add(A);if(this._pendingCleanupBlockTypeColliderHandles.size>0)this._pendingCleanupBlockTypeColliderHandles.clear();for(let A of this._pendingCleanupCollisionCallbackColliderHandles)this._cleanupCollisionCallbackColliderHandles.add(A);if(this._pendingCleanupCollisionCallbackColliderHandles.size>0)this._pendingCleanupCollisionCallbackColliderHandles.clear();for(let A of this._pendingCleanupEntityColliderHandles)this._cleanupEntityColliderHandles.add(A);if(this._pendingCleanupEntityColliderHandles.size>0)this._pendingCleanupEntityColliderHandles.clear()}_requireSimulatedCollider(A){if(!A.rawCollider)l.error("ColliderMap._requireSimulatedCollider(): Collider is not in the simulation.");return!!A.rawCollider}}class G0 extends UZ{static BASE_ENTITY_HEIGHT=1.5;static GROUND_SENSOR_HEIGHT_SCALE=0.125;static GROUND_SENSOR_RADIUS_SCALE=0.23;static JUMP_LAND_HEAVY_VELOCITY_THRESHOLD=-12;static WALL_COLLIDER_HEIGHT_SCALE=0.33;static WALL_COLLIDER_RADIUS_SCALE=0.4;static MOVEMENT_ROTATIONS={wa:Math.PI/4,wd:-Math.PI/4,sa:Math.PI-Math.PI/4,sd:Math.PI+Math.PI/4,s:Math.PI,asd:Math.PI,a:Math.PI/2,d:-Math.PI/2};static EXTERNAL_IMPULSE_DECAY_RATE=0.253;static SWIM_UPWARD_COOLDOWN_MS=600;static SWIMMING_DRAG_FACTOR=0.05;static WATER_ENTRY_SINKING_FACTOR=0.8;static WATER_ENTRY_SINKING_MS=250;applyDirectionalMovementRotations=!0;autoCancelMouseLeftClick=!0;canJump=()=>!0;canRun=()=>!0;canSwim=()=>!0;canWalk=()=>!0;facesCameraWhenIdle=!1;idleLoopedAnimations=["idle-upper","idle-lower"];interactOneshotAnimations=["simple-interact"];jumpLandHeavyOneshotAnimations=["jump-post-heavy"];jumpLandLightOneshotAnimations=["jump-post-light"];jumpOneshotAnimations=["jump-loop"];jumpVelocity=10;runLoopedAnimations=["run-upper","run-lower"];runVelocity=8;sticksToPlatforms=!0;swimFastVelocity=5;swimGravity=0;swimIdleLoopedAnimations=["swim-idle"];swimLoopedAnimations=["swim-forward"];swimMaxGravityVelocity=-1;swimSlowVelocity=3;swimUpwardVelocity=2;walkLoopedAnimations=["walk-upper","walk-lower"];walkVelocity=4;_externalVelocity={x:0,y:0,z:0};_magnitudeYTracker=0;_groundContactCount=0;_internalApplyImpulse=()=>{};_isActivelyMoving=!1;_isFullySubmerged=!1;_justSubmergedUntil=0;_liquidContactCount=0;_platform;_reusableImpulse={x:0,y:0,z:0};_reusablePlatformVelocity={x:0,y:0,z:0};_reusableTargetVelocities={x:0,y:0,z:0};_reusableVelocityClamp={x:0,y:0,z:0};_stepAudio;_swimUpwardCooldownAt=0;constructor(A={}){super();this.applyDirectionalMovementRotations=A.applyDirectionalMovementRotations??this.applyDirectionalMovementRotations,this.autoCancelMouseLeftClick=A.autoCancelMouseLeftClick??this.autoCancelMouseLeftClick,this.facesCameraWhenIdle=A.facesCameraWhenIdle??this.facesCameraWhenIdle,this.sticksToPlatforms=A.sticksToPlatforms??this.sticksToPlatforms,this.canJump=A.canJump??this.canJump,this.canRun=A.canRun??this.canRun,this.canSwim=A.canSwim??this.canSwim,this.canWalk=A.canWalk??this.canWalk,this.jumpVelocity=A.jumpVelocity??this.jumpVelocity,this.runVelocity=A.runVelocity??this.runVelocity,this.walkVelocity=A.walkVelocity??this.walkVelocity,this.swimFastVelocity=A.swimFastVelocity??this.swimFastVelocity,this.swimSlowVelocity=A.swimSlowVelocity??this.swimSlowVelocity,this.swimUpwardVelocity=A.swimUpwardVelocity??this.swimUpwardVelocity,this.swimGravity=A.swimGravity??this.swimGravity,this.swimMaxGravityVelocity=A.swimMaxGravityVelocity??this.swimMaxGravityVelocity,this.idleLoopedAnimations=A.idleLoopedAnimations??this.idleLoopedAnimations,this.interactOneshotAnimations=A.interactOneshotAnimations??this.interactOneshotAnimations,this.jumpOneshotAnimations=A.jumpOneshotAnimations??this.jumpOneshotAnimations,this.jumpLandHeavyOneshotAnimations=A.jumpLandHeavyOneshotAnimations??this.jumpLandHeavyOneshotAnimations,this.jumpLandLightOneshotAnimations=A.jumpLandLightOneshotAnimations??this.jumpLandLightOneshotAnimations,this.runLoopedAnimations=A.runLoopedAnimations??this.runLoopedAnimations,this.swimLoopedAnimations=A.swimLoopedAnimations??this.swimLoopedAnimations,this.swimIdleLoopedAnimations=A.swimIdleLoopedAnimations??this.swimIdleLoopedAnimations,this.walkLoopedAnimations=A.walkLoopedAnimations??this.walkLoopedAnimations}get isActivelyMoving(){return this._isActivelyMoving}get isGrounded(){return this._groundContactCount>0}get isOnPlatform(){return!!this._platform}get isSwimming(){return this._liquidContactCount>0}get platform(){return this._platform}attach(A){super.attach(A),this._internalApplyImpulse=A.applyImpulse.bind(A),A.applyImpulse=(Q)=>{let B=A.mass||1;this._externalVelocity.x+=Q.x/B,this._externalVelocity.y+=Q.y/B,this._externalVelocity.z+=Q.z/B},this._stepAudio=new $D({uri:"audio/sfx/step/stone/stone-step-04.mp3",loop:!0,volume:0.1,referenceDistance:2,cutoffDistance:15,attachedToEntity:A}),A.setCcdEnabled(!0),A.lockAllRotations(),A.on("ENTITY.BLOCK_COLLISION",({blockType:Q,started:B})=>{if(!Q.isLiquid||!this.canSwim(this))return;if(this._liquidContactCount<=0&&B){let Y=A.linearVelocity;A.setLinearVelocity({x:Y.x*this.swimGravity,y:Y.y*this.swimGravity,z:Y.z*this.swimGravity})}if(this._liquidContactCount+=B?1:-1,this._liquidContactCount>0)A.setGravityScale(this.swimGravity),A.stopAllModelAnimations((Y)=>this.swimLoopedAnimations.includes(Y.name)),this._swimUpwardCooldownAt=performance.now()+G0.SWIM_UPWARD_COOLDOWN_MS;else A.setGravityScale(1),A.stopModelAnimations(this.swimLoopedAnimations)})}spawn(A){if(!A.isSpawned)return l.error("DefaultPlayerEntityController.spawn(): Entity is not spawned!");A.createAndAddChildCollider({shape:"cylinder",radius:G0.GROUND_SENSOR_RADIUS_SCALE*(A.height/G0.BASE_ENTITY_HEIGHT),halfHeight:G0.GROUND_SENSOR_HEIGHT_SCALE*(A.height/G0.BASE_ENTITY_HEIGHT),collisionGroups:{belongsTo:[4],collidesWith:[1,2,8]},isSensor:!0,relativePosition:{x:0,y:-A.height/2,z:0},tag:"groundSensor",onCollision:(Q,B)=>{if(!A.isSpawned)return;if(!(Q instanceof O8)||!Q.isLiquid){if(B&&this._groundContactCount===0&&A.linearVelocity.y<-1)if(A.linearVelocity.yw.includes(P.name)||P.loopMode===0);for(let P of w)A.getModelAnimation(P)?.setLoopMode(1),A.getModelAnimation(P)?.play();this._stepAudio?.setPlaybackRate(V?0.75:0.51),this._stepAudio?.play(A.world,!this._stepAudio?.isPlaying)}else if(this._isFullySubmerged&&this.canSwim(this))if(this._stepAudio?.pause(),this._isActivelyMoving){A.stopAllModelAnimations((w)=>this.swimLoopedAnimations.includes(w.name)||w.loopMode===0);for(let w of this.swimLoopedAnimations)A.getModelAnimation(w)?.setLoopMode(1),A.getModelAnimation(w)?.play()}else{A.stopAllModelAnimations((w)=>this.swimIdleLoopedAnimations.includes(w.name)||w.loopMode===0);for(let w of this.swimIdleLoopedAnimations)A.getModelAnimation(w)?.setLoopMode(1),A.getModelAnimation(w)?.play()}else{this._stepAudio?.pause(),A.stopAllModelAnimations((w)=>this.idleLoopedAnimations.includes(w.name)||w.loopMode===0);for(let w of this.idleLoopedAnimations)A.getModelAnimation(w)?.setLoopMode(1),A.getModelAnimation(w)?.play()}let L;if(this.applyDirectionalMovementRotations&&D){if(I)L=$;else if(J&&C&&!G&&!X)L=G0.MOVEMENT_ROTATIONS.wa;else if(J&&G&&!C&&!X)L=G0.MOVEMENT_ROTATIONS.wd;else if(X&&C&&!J&&!G)L=G0.MOVEMENT_ROTATIONS.sa;else if(X&&G&&!J&&!C)L=G0.MOVEMENT_ROTATIONS.sd;else if(X&&!J&&!C&&!G||C&&X&&G&&!J)L=G0.MOVEMENT_ROTATIONS.s;else if(C&&!J&&!X&&!G)L=G0.MOVEMENT_ROTATIONS.a;else if(G&&!J&&!C&&!X)L=G0.MOVEMENT_ROTATIONS.d}if(U){for(let w of this.interactOneshotAnimations)A.getModelAnimation(w)?.setBlendMode(0),A.getModelAnimation(w)?.restart();Q.ml=!this.autoCancelMouseLeftClick}if(D){let w=!this.isSwimming?V?this.runVelocity:this.walkVelocity:V?this.swimFastVelocity:this.swimSlowVelocity;if(I){let P=E+$;this._reusableTargetVelocities.x=-w*Math.sin(P),this._reusableTargetVelocities.z=-w*Math.cos(P)}else{let P=Math.sin(E),_=Math.cos(E);if(J)this._reusableTargetVelocities.x-=w*P,this._reusableTargetVelocities.z-=w*_;if(X)this._reusableTargetVelocities.x+=w*P,this._reusableTargetVelocities.z+=w*_;if(C)this._reusableTargetVelocities.x-=w*_,this._reusableTargetVelocities.z+=w*P;if(G)this._reusableTargetVelocities.x+=w*_,this._reusableTargetVelocities.z-=w*P;let j=Math.sqrt(this._reusableTargetVelocities.x*this._reusableTargetVelocities.x+this._reusableTargetVelocities.z*this._reusableTargetVelocities.z);if(j>w){let k=w/j;this._reusableTargetVelocities.x*=k,this._reusableTargetVelocities.z*=k}}}if(this.isSwimming){if(K.ythis.swimUpwardVelocity*2)this._reusableVelocityClamp.x=K.x,this._reusableVelocityClamp.y=this.swimUpwardVelocity*2,this._reusableVelocityClamp.z=K.z,A.setLinearVelocity(this._reusableVelocityClamp);if(W)this._reusableTargetVelocities.y=-this.swimUpwardVelocity;else if(performance.now()-0.001&&K.y<=3)this._reusableTargetVelocities.y=this.jumpVelocity;else if(this.isSwimming&&performance.now()>this._swimUpwardCooldownAt)this._reusableTargetVelocities.y=this.swimUpwardVelocity}let z=this._platform?.linearVelocity??this._reusablePlatformVelocity;if(this._externalVelocity.y!==0)this._magnitudeYTracker+=this._externalVelocity.y;if(this._externalVelocity.x!==0||this._externalVelocity.y!==0||this._externalVelocity.z!==0){if(this.isGrounded){let w=Math.sqrt(this._externalVelocity.x*this._externalVelocity.x+this._magnitudeYTracker*this._magnitudeYTracker+this._externalVelocity.z*this._externalVelocity.z);if(w>0.01){let _=Math.max(0,w-G0.EXTERNAL_IMPULSE_DECAY_RATE)/w;this._externalVelocity.x*=_,this._magnitudeYTracker*=_,this._externalVelocity.z*=_}else this._externalVelocity.x=0,this._externalVelocity.y=0,this._magnitudeYTracker=0,this._externalVelocity.z=0}}let M=this._reusableTargetVelocities.x+this._externalVelocity.x-K.x+z.x,N=this._reusableTargetVelocities.y+this._externalVelocity.y+z.y,q=this._reusableTargetVelocities.z+this._externalVelocity.z-K.z+z.z;if(this._externalVelocity.y=0,M!==0||N!==0||q!==0){let w=A.mass;this._reusableImpulse.x=M*w,this._reusableImpulse.y=N*w,this._reusableImpulse.z=q*w,this._internalApplyImpulse(this._reusableImpulse)}if(E!==void 0&&(this.facesCameraWhenIdle||this.isActivelyMoving)){let P=(L!==void 0?E+L:E)*0.5;A.setRotation({x:0,y:Math.sin(P),z:0,w:Math.cos(P)})}}}var Bu;((G)=>{G.LOAD="SCENE_UI.LOAD";G.SET_ATTACHED_TO_ENTITY="SCENE_UI.SET_ATTACHED_TO_ENTITY";G.SET_OFFSET="SCENE_UI.SET_OFFSET";G.SET_POSITION="SCENE_UI.SET_POSITION";G.SET_STATE="SCENE_UI.SET_STATE";G.SET_VIEW_DISTANCE="SCENE_UI.SET_VIEW_DISTANCE";G.UNLOAD="SCENE_UI.UNLOAD"})(Bu||={});class YN extends BQ{_id;_attachedToEntity;_offset;_position;_state={};_templateId;_viewDistance;_world;constructor(A){if(!!A.attachedToEntity===!!A.position)l.fatalError("Either attachedToEntity or position must be set, but not both");super();this._attachedToEntity=A.attachedToEntity,this._offset=A.offset,this._position=A.position,this._state=A.state??{},this._templateId=A.templateId,this._viewDistance=A.viewDistance}get id(){return this._id}get attachedToEntity(){return this._attachedToEntity}get isLoaded(){return this._id!==void 0}get offset(){return this._offset}get position(){return this._position}get state(){return this._state}get templateId(){return this._templateId}get viewDistance(){return this._viewDistance}get world(){return this._world}load(A){if(this.isLoaded)return;if(this._attachedToEntity&&!this._attachedToEntity.isSpawned)return l.error(`SceneUI.load(): Attached entity ${this._attachedToEntity.id} must be spawned before loading SceneUI!`);this._id=A.sceneUIManager.registerSceneUI(this),this._world=A,this.emitWithWorld(A,"SCENE_UI.LOAD",{sceneUI:this})}setAttachedToEntity(A){if(!A.isSpawned)return l.error(`SceneUI.setAttachedToEntity(): Entity ${A.id} is not spawned!`);if(this._attachedToEntity===A)return;if(this._attachedToEntity=A,this._position=void 0,this.isLoaded)this.emitWithWorld(this._world,"SCENE_UI.SET_ATTACHED_TO_ENTITY",{sceneUI:this,entity:A})}setOffset(A){if(this._offset===A)return;if(this._offset=A,this.isLoaded)this.emitWithWorld(this._world,"SCENE_UI.SET_OFFSET",{sceneUI:this,offset:A})}setPosition(A){if(this._position===A)return;if(this._attachedToEntity=void 0,this._position=A,this.isLoaded)this.emitWithWorld(this._world,"SCENE_UI.SET_POSITION",{sceneUI:this,position:A})}setState(A){if(this._state={...this._state,...A},this.isLoaded)this.emitWithWorld(this._world,"SCENE_UI.SET_STATE",{sceneUI:this,state:this._state})}setViewDistance(A){if(this._viewDistance=A,this.isLoaded)this.emitWithWorld(this._world,"SCENE_UI.SET_VIEW_DISTANCE",{sceneUI:this,viewDistance:A})}unload(){if(!this.isLoaded||!this._world)return;this._world.sceneUIManager.unregisterSceneUI(this),this.emitWithWorld(this._world,"SCENE_UI.UNLOAD",{sceneUI:this}),this._id=void 0,this._world=void 0}serialize(){return GQ.serializeSceneUI(this)}}var xIA=0.010000000000000002,fIA=Math.cos(0.026);class BX extends X0{player;nametagSceneUI;_tickWithPlayerInputEnabled=!0;constructor(A){super(A);this._positionUpdateThresholdSq=xIA,this._rotationUpdateThreshold=fIA,this.player=A.player,this.nametagSceneUI=new YN({templateId:"hytopia:nametag",attachedToEntity:this,offset:{x:0,y:1,z:0},viewDistance:15,state:{username:this.player.username,profilePictureUrl:this.player.profilePictureUrl}})}get isTickWithPlayerInputEnabled(){return this._tickWithPlayerInputEnabled}setTickWithPlayerInputEnabled(A){this._tickWithPlayerInputEnabled=A}spawn(A,Q,B){super.spawn(A,Q,B),this.nametagSceneUI.load(A),this.player.on("PLAYER.CHAT_MESSAGE_SEND",({message:Y})=>{this.nametagSceneUI.setState({chat:Y})})}tick(A){if(!this.isSpawned||!this.world)return;if(!this.controller)return l.error(`PlayerEntity.tick(): PlayerEntity "${this.name}" must have a controller.`);if(this._tickWithPlayerInputEnabled){let{input:Q,camera:B}=this.player;this.controller.tickWithPlayerInput(this,Q,B.orientation,A)}super.tick(A)}}var bIA="models/players/player.gltf",rWB={BACK:"back-anchor",HEAD:"head-anchor",LEFT_ARM:"arm-left-anchor",LEFT_FOOT:"foot-left-anchor",LEFT_HAND:"hand-left-anchor",LEFT_ITEM:"hand-left-anchor",LEFT_LEG:"leg-left-anchor",RIGHT_ARM:"arm-right-anchor",RIGHT_FOOT:"foot-right-anchor",RIGHT_HAND:"hand-right-anchor",RIGHT_ITEM:"hand-right-anchor",RIGHT_LEG:"leg-right-anchor",TORSO:"torso-anchor"};class Yu extends BX{_cosmeticHiddenSlots;constructor(A){super({controller:new G0,modelAnimations:[{name:"idle-lower",loopMode:1,play:!0},{name:"idle-upper",loopMode:1,play:!0}],modelUri:bIA,...A});this._cosmeticHiddenSlots=A.cosmeticHiddenSlots??[]}get cosmeticHiddenSlots(){return this._cosmeticHiddenSlots}spawn(A,Q,B){super.spawn(A,Q,B),this.player.cosmetics.then((Y)=>{if(!Y||!this.modelUri)return;if(!(Y.equippedItems.some((C)=>C.item.flags.includes("HIDES_HAIR"))&&!this._cosmeticHiddenSlots.includes("ALL")&&!this._cosmeticHiddenSlots.includes("HEAD"))&&Y.hairModelUri)new X0({modelUri:Y.hairModelUri,modelPreferredShape:"none",modelTextureUri:Y.hairTextureUri,parent:this,parentNodeName:"head-anchor"}).spawn(A,{x:0,y:0,z:0});if(this.modelUri===bIA)this.setModelTextureUri(Y.skinTextureUri);if(this._cosmeticHiddenSlots.includes("ALL"))return;for(let C of Y.equippedItems){let{item:X,slot:G}=C;if(this._cosmeticHiddenSlots.includes(G))continue;let W=rWB[G];if(!W||!yY.instance.modelHasNode(this.modelUri,W))continue;new X0({modelUri:X.modelUrl,modelPreferredShape:"none",parent:this,parentNodeName:W}).spawn(A,{x:0,y:0,z:0})}}).catch((Y)=>l.warning(`DefaultPlayerEntity.spawn(): Failed to get player cosmetics: ${Y}`))}}var mIA;((Y)=>{Y.TICK_REPORT="PERFORMANCE_MONITOR.TICK_REPORT";Y.SPIKE_DETECTED="PERFORMANCE_MONITOR.SPIKE_DETECTED";Y.SNAPSHOT="PERFORMANCE_MONITOR.SNAPSHOT"})(mIA||={});class O0 extends BQ{static _instance;static get instance(){if(!O0._instance)O0._instance=new O0;return O0._instance}_enabled=!1;_entityProfilingEnabled=!1;_spikeThresholdMs=50;_tickBudgetMs=16.67;_snapshotIntervalMs=5000;_historySize=3600;_startTime=0;_operations=new Map;_worldTicks=new Map;_entityCosts=new Map;_snapshotTimer=null;constructor(){super()}get isEnabled(){return this._enabled}get isEntityProfilingEnabled(){return this._enabled&&this._entityProfilingEnabled}enable(A){if(this._enabled)return;if(this._enabled=!0,this._startTime=performance.now(),this._spikeThresholdMs=A?.spikeThresholdMs??50,this._tickBudgetMs=A?.tickBudgetMs??16.67,this._snapshotIntervalMs=A?.snapshotIntervalMs??5000,this._historySize=A?.historySize??3600,this._worldTicks.clear(),this._operations.clear(),this._entityCosts.clear(),this._snapshotIntervalMs>0)this._snapshotTimer=setInterval(()=>{let Q=this.getSnapshot();this.emit("PERFORMANCE_MONITOR.SNAPSHOT",Q)},this._snapshotIntervalMs)}disable(){if(this._enabled=!1,this._entityProfilingEnabled=!1,this._snapshotTimer)clearInterval(this._snapshotTimer),this._snapshotTimer=null}enableEntityProfiling(A){if(this._entityProfilingEnabled=A,!A)this._entityCosts.clear()}measure(A,Q){if(!this._enabled)return Q();let B=performance.now(),Y=Q(),J=performance.now()-B;return this._recordOperation(A,J),Y}async measureAsync(A,Q){if(!this._enabled)return Q();let B=performance.now(),Y=await Q(),J=performance.now()-B;return this._recordOperation(A,J),Y}startTiming(A){if(!this._enabled)return()=>{};let Q=performance.now();return()=>{this._recordOperation(A,performance.now()-Q)}}beginTick(A,Q,B,Y=0){let J=this._getOrCreateWorldTickState(Y);J.currentTick=A,J.currentTickStart=performance.now(),J.currentPhases={},J.currentEntityCount=Q,J.currentPlayerCount=B}recordPhase(A,Q,B=0){let Y=this._worldTicks.get(B);if(!Y)return;Y.currentPhases[A]=Q}endTick(A=0){let Q=this._worldTicks.get(A);if(!Q)return;let B=performance.now()-Q.currentTickStart;if(Q.tickDurations[Q.tickIndex]=B,Q.tickIndex=(Q.tickIndex+1)%Q.tickDurations.length,Q.tickCount=Math.min(Q.tickCount+1,Q.tickDurations.length),Q.totalTicks++,B>Q.maxTickMs)Q.maxTickMs=B;if(B>this._tickBudgetMs)Q.ticksOverBudget++;let Y=process.memoryUsage().heapUsed/1048576,J={worldId:A,tick:Q.currentTick,durationMs:B,budgetMs:this._tickBudgetMs,budgetPercent:B/this._tickBudgetMs*100,phases:{...Q.currentPhases},entityCount:Q.currentEntityCount,playerCount:Q.currentPlayerCount,heapUsedMb:Y};if(this.emit("PERFORMANCE_MONITOR.TICK_REPORT",J),B>this._spikeThresholdMs)this.emit("PERFORMANCE_MONITOR.SPIKE_DETECTED",J)}recordEntityCost(A,Q,B){this._entityCosts.set(A,{tickMs:B,name:Q})}getEntityCosts(){return new Map(this._entityCosts)}getSnapshot(A){let Q=process.memoryUsage(),Y=(typeof A==="number"?this._getTickSamples(A):this._getAllTickSamples()).slice().sort((C,X)=>C-X),J=typeof A==="number"?this._getRollup(A):this._getGlobalRollup();return{uptimeMs:performance.now()-this._startTime,tickRate:60,avgTickMs:Y.length>0?Y.reduce((C,X)=>C+X,0)/Y.length:0,maxTickMs:J.maxTickMs,p95TickMs:Y.length>0?Y[Math.floor(Y.length*0.95)]:0,p99TickMs:Y.length>0?Y[Math.floor(Y.length*0.99)]:0,ticksOverBudget:J.ticksOverBudget,totalTicks:J.totalTicks,budgetMs:this._tickBudgetMs,operations:this._getOperationStats(),memory:{heapUsedMb:Q.heapUsed/1048576,heapTotalMb:Q.heapTotal/1048576,rssMb:Q.rss/1048576}}}resetStats(){this._worldTicks.clear(),this._operations.clear(),this._entityCosts.clear()}_recordOperation(A,Q){let B=this._operations.get(A);if(!B)B={count:0,totalMs:0,minMs:1/0,maxMs:0,lastMs:0,samples:new Float64Array(1000),sampleIndex:0,sampleCount:0},this._operations.set(A,B);if(B.count++,B.totalMs+=Q,B.lastMs=Q,QB.maxMs)B.maxMs=Q;B.samples[B.sampleIndex]=Q,B.sampleIndex=(B.sampleIndex+1)%B.samples.length,B.sampleCount=Math.min(B.sampleCount+1,B.samples.length)}_getOrCreateWorldTickState(A){let Q=Math.floor(A),B=this._worldTicks.get(Q);if(!B)B={tickDurations:new Float64Array(this._historySize),tickIndex:0,tickCount:0,ticksOverBudget:0,maxTickMs:0,totalTicks:0,currentTick:0,currentTickStart:0,currentPhases:{},currentEntityCount:0,currentPlayerCount:0},this._worldTicks.set(Q,B);return B}_getTickSamples(A){let Q=this._worldTicks.get(Math.floor(A));if(!Q||Q.tickCount===0)return[];let B=[];for(let Y=0;YJ-C),A[Q]={count:B.count,totalMs:B.totalMs,avgMs:B.count>0?B.totalMs/B.count:0,minMs:B.minMs===1/0?0:B.minMs,maxMs:B.maxMs,lastMs:B.lastMs,p50Ms:Y.length>0?Y[Math.floor(Y.length*0.5)]:0,p95Ms:Y.length>0?Y[Math.floor(Y.length*0.95)]:0,p99Ms:Y.length>0?Y[Math.floor(Y.length*0.99)]:0}}return A}}class JN{_activeEntities=new Set;_entities=new Map;_nextEntityId=1;_world;constructor(A){this._world=A}get entityCount(){return this._entities.size}get world(){return this._world}registerEntity(A){if(A.id!==void 0)l.fatalError(`EntityManager.registerEntity(): Entity ${A.name} is already assigned the id ${A.id}!`);let Q=this._nextEntityId;if(this._entities.set(Q,A),this._nextEntityId++,!A.isEnvironmental)this._activeEntities.add(A);return Q}unregisterEntity(A){if(A.id===void 0)return l.error(`EntityManager.unregisterEntity(): Entity ${A.name} is not assigned an id!`);if(this._entities.delete(A.id),!A.isEnvironmental)this._activeEntities.delete(A)}getAllEntities(){return Array.from(this._entities.values())}getAllPlayerEntities(){let A=[];return this._entities.forEach((Q)=>{if(Q instanceof BX)A.push(Q)}),A}getPlayerEntitiesByPlayer(A){let Q=[];return this._entities.forEach((B)=>{if(B instanceof BX&&B.player===A)Q.push(B)}),Q}getEntity(A){return this._entities.get(A)}getEntitiesByTag(A){let Q=[];return this._entities.forEach((B)=>{if(B.tag===A)Q.push(B)}),Q}getEntitiesByTagSubstring(A){let Q=[];return this._entities.forEach((B)=>{if(B.tag?.includes(A))Q.push(B)}),Q}getEntityChildren(A){let Q=[];return this._entities.forEach((B)=>{if(B.parent===A)Q.push(B)}),Q}tickEntities(A){let Q=O0.instance,B=Q.isEntityProfilingEnabled;for(let Y of this._activeEntities)if(B){let J=performance.now();Y.tick(A),Q.recordEntityCost(Y.id??0,Y.name,performance.now()-J)}else Y.tick(A)}checkAndEmitUpdates(){for(let A of this._activeEntities)A.checkAndEmitUpdates()}}import{gzipSync as om0}from"zlib";var Z9=qA(lHA(),1),qqY=Z9.default.v1,MqY=Z9.default.v1ToV6,zqY=Z9.default.v3,pHA=Z9.default.v4,RqY=Z9.default.v5,wqY=Z9.default.v6,jqY=Z9.default.v6ToV1,OqY=Z9.default.v7,PqY=Z9.default.NIL,TqY=Z9.default.MAX,SqY=Z9.default.version,kqY=Z9.default.validate,_qY=Z9.default.stringify,vqY=Z9.default.parse;var $u;try{$u=new TextDecoder}catch(A){}var _A,_8,t=0;var Vu=[],OZ=Vu,GN=0,A0={},DB,r6,k8=0,S5=0,hY,a6,p9=[],UB,iHA={useRecords:!1,mapsAsObjects:!0};class Gj{}var Iu=new Gj;Iu.name="MessagePack 0xC1";var r7=!1,ADA=2,Uu,Eu,Ku;try{Function("")}catch(A){ADA=1/0}class o6{constructor(A){if(A){if(A.useRecords===!1&&A.mapsAsObjects===void 0)A.mapsAsObjects=!0;if(A.sequential&&A.trusted!==!1){if(A.trusted=!0,!A.structures&&A.useRecords!=!1){if(A.structures=[],!A.maxSharedStructures)A.maxSharedStructures=0}}if(A.structures)A.structures.sharedLength=A.structures.length;else if(A.getStructures)(A.structures=[]).uninitialized=!0,A.structures.sharedLength=0;if(A.int64AsNumber)A.int64AsType="number"}Object.assign(this,A)}unpack(A,Q){if(_A)return ZDA(()=>{return Xj(),this?this.unpack(A,Q):o6.prototype.unpack.call(iHA,A,Q)});if(!A.buffer&&A.constructor===ArrayBuffer)A=typeof Buffer<"u"?Buffer.from(A):new Uint8Array(A);if(typeof Q==="object")_8=Q.end||A.length,t=Q.start||0;else t=0,_8=Q>-1?Q:A.length;GN=0,S5=0,r6=null,OZ=Vu,hY=null,_A=A;try{UB=A.dataView||(A.dataView=new DataView(A.buffer,A.byteOffset,A.byteLength))}catch(B){if(_A=null,A instanceof Uint8Array)throw B;throw Error("Source must be a Uint8Array or Buffer but was a "+(A&&typeof A=="object"?A.constructor.name:typeof A))}if(this instanceof o6){if(A0=this,this.structures)return DB=this.structures,Jj(Q);else if(!DB||DB.length>0)DB=[]}else if(A0=iHA,!DB||DB.length>0)DB=[];return Jj(Q)}unpackMultiple(A,Q){let B,Y=0;try{r7=!0;let J=A.length,C=this?this.unpack(A,J):Fj.unpack(A,J);if(Q){if(Q(C,Y,t)===!1)return;while(tB.slice(0));for(let B=0,Y=A.length;B=32)J.highByte=B-32>>5}}A.sharedLength=A.length;for(let B in Q||[])if(B>=0){let Y=A[B],J=Q[B];if(J){if(Y)(A.restoreStructures||(A.restoreStructures=[]))[B]=Y;A[B]=J}}return this.structures=A}decode(A,Q){return this.unpack(A,Q)}}function Jj(A){try{if(!A0.trusted&&!r7){let B=DB.sharedLength||0;if(B=32&&Uu){if(Q=Uu(_A,t,_8,A0),_A=null,!(A&&A.lazy)&&Q)Q=Q.toJSON();t=_8}else Q=ZY();if(hY)t=hY.postBundlePosition,hY=null;if(r7)DB.restoreStructures=null;if(t==_8){if(DB&&DB.restoreStructures)nHA();if(DB=null,_A=null,a6)a6=null}else if(t>_8)throw Error("Unexpected end of MessagePack data");else if(!r7){let B;try{B=JSON.stringify(Q,(Y,J)=>typeof J==="bigint"?`${J}n`:J).slice(0,100)}catch(Y){B="(JSON view not available "+Y+")"}throw Error("Data read, but end of buffer not reached "+B)}return Q}catch(Q){if(DB&&DB.restoreStructures)nHA();if(Xj(),Q instanceof RangeError||Q.message.startsWith("Unexpected end of buffer")||t>_8)Q.incomplete=!0;throw Q}}function nHA(){for(let A in DB.restoreStructures)DB[A]=DB.restoreStructures[A];DB.restoreStructures=null}function ZY(){let A=_A[t++];if(A<160)if(A<128)if(A<64)return A;else{let Q=DB[A&63]||A0.getStructures&&QDA()[A&63];if(Q){if(!Q.read)Q.read=Hu(Q,A&63);return Q.read()}else return A}else if(A<144)if(A-=128,A0.mapsAsObjects){let Q={};for(let B=0;B=t)return r6.slice(t-k8,(t+=Q)-k8);if(S5==0&&_8<140){let B=Q<16?Du(Q):GDA(Q);if(B!=null)return B}return Cj(Q)}else{let Q;switch(A){case 192:return null;case 193:if(hY)if(Q=ZY(),Q>0)return hY[1].slice(hY.position1,hY.position1+=Q);else return hY[0].slice(hY.position0,hY.position0-=Q);return Iu;case 194:return!1;case 195:return!0;case 196:if(Q=_A[t++],Q===void 0)throw Error("Unexpected end of buffer");return Zu(Q);case 197:return Q=UB.getUint16(t),t+=2,Zu(Q);case 198:return Q=UB.getUint32(t),t+=4,Zu(Q);case 199:return jZ(_A[t++]);case 200:return Q=UB.getUint16(t),t+=2,jZ(Q);case 201:return Q=UB.getUint32(t),t+=4,jZ(Q);case 202:if(Q=UB.getFloat32(t),A0.useFloat32>2){let B=TZ[(_A[t]&127)<<1|_A[t+1]>>7];return t+=4,(B*Q+(Q>0?0.5:-0.5)>>0)/B}return t+=4,Q;case 203:return Q=UB.getFloat64(t),t+=8,Q;case 204:return _A[t++];case 205:return Q=UB.getUint16(t),t+=2,Q;case 206:return Q=UB.getUint32(t),t+=4,Q;case 207:if(A0.int64AsType==="number")Q=UB.getUint32(t)*4294967296,Q+=UB.getUint32(t+4);else if(A0.int64AsType==="string")Q=UB.getBigUint64(t).toString();else if(A0.int64AsType==="auto"){if(Q=UB.getBigUint64(t),Q<=BigInt(2)<=BigInt(-2)<=t)return r6.slice(t-k8,(t+=Q)-k8);return BDA(Q);case 218:if(Q=UB.getUint16(t),t+=2,S5>=t)return r6.slice(t-k8,(t+=Q)-k8);return YDA(Q);case 219:if(Q=UB.getUint32(t),t+=4,S5>=t)return r6.slice(t-k8,(t+=Q)-k8);return JDA(Q);case 220:return Q=UB.getUint16(t),t+=2,rHA(Q);case 221:return Q=UB.getUint32(t),t+=4,rHA(Q);case 222:return Q=UB.getUint16(t),t+=2,aHA(Q);case 223:return Q=UB.getUint32(t),t+=4,aHA(Q);default:if(A>=224)return A-256;if(A===void 0){let B=Error("Unexpected end of MessagePack data");throw B.incomplete=!0,B}throw Error("Unknown MessagePack token "+A)}}}var RZB=/^[a-zA-Z_$][a-zA-Z\d_$]*$/;function Hu(A,Q){function B(){if(B.count++>ADA){let J=A.read=Function("r","return function(){return "+(A0.freezeData?"Object.freeze":"")+"({"+A.map((C)=>C==="__proto__"?"__proto_:r()":RZB.test(C)?C+":r()":"["+JSON.stringify(C)+"]:r()").join(",")+"})}")(ZY);if(A.highByte===0)A.read=sHA(Q,A.read);return J()}let Y={};for(let J=0,C=A.length;J{return function(){let B=_A[t++];if(B===0)return Q();let Y=A<32?-(A+(B<<5)):A+(B<<5),J=DB[Y]||QDA()[Y];if(!J)throw Error("Record id is not defined for "+Y);if(!J.read)J.read=Hu(J,A);return J.read()}};function QDA(){let A=ZDA(()=>{return _A=null,A0.getStructures()});return DB=A0._mergeStructures(A,DB)}var Cj=PZ,BDA=PZ,YDA=PZ,JDA=PZ,Wj=!1;function CDA(A){Wj=!0,Cj=Q(1),BDA=Q(2),YDA=Q(3),JDA=Q(5);function Q(B){return function(J){let C=OZ[GN++];if(C==null){if(hY)return PZ(J);let G=_A.byteOffset,W=A(t-B+G,_8+G,_A.buffer);if(typeof W=="string")C=W,OZ=Vu;else if(OZ=W,GN=1,S5=1,C=OZ[0],C===void 0)throw Error("Unexpected end of buffer")}let X=C.length;if(X<=J)return t+=J,C;return r6=C,k8=t,S5=t+X,t+=J,C.slice(0,J)}}}function PZ(A){let Q;if(A<16){if(Q=Du(A))return Q}if(A>64&&$u)return $u.decode(_A.subarray(t,t+=A));let B=t+A,Y=[];Q="";while(t65535)W-=65536,Y.push(W>>>10&1023|55296),W=56320|W&1023;Y.push(W)}else Y.push(J);if(Y.length>=4096)Q+=sY.apply(String,Y),Y.length=0}if(Y.length>0)Q+=sY.apply(String,Y);return Q}function XDA(A,Q,B){let Y=_A;_A=A,t=Q;try{return PZ(B)}finally{_A=Y}}function rHA(A){let Q=Array(A);for(let B=0;B0){t=Q;return}B[Y]=J}return sY.apply(String,B)}function Du(A){if(A<4)if(A<2)if(A===0)return"";else{let Q=_A[t++];if((Q&128)>1){t-=1;return}return sY(Q)}else{let Q=_A[t++],B=_A[t++];if((Q&128)>0||(B&128)>0){t-=2;return}if(A<3)return sY(Q,B);let Y=_A[t++];if((Y&128)>0){t-=3;return}return sY(Q,B,Y)}else{let Q=_A[t++],B=_A[t++],Y=_A[t++],J=_A[t++];if((Q&128)>0||(B&128)>0||(Y&128)>0||(J&128)>0){t-=4;return}if(A<6)if(A===4)return sY(Q,B,Y,J);else{let C=_A[t++];if((C&128)>0){t-=5;return}return sY(Q,B,Y,J,C)}else if(A<8){let C=_A[t++],X=_A[t++];if((C&128)>0||(X&128)>0){t-=6;return}if(A<7)return sY(Q,B,Y,J,C,X);let G=_A[t++];if((G&128)>0){t-=7;return}return sY(Q,B,Y,J,C,X,G)}else{let C=_A[t++],X=_A[t++],G=_A[t++],W=_A[t++];if((C&128)>0||(X&128)>0||(G&128)>0||(W&128)>0){t-=8;return}if(A<10)if(A===8)return sY(Q,B,Y,J,C,X,G,W);else{let F=_A[t++];if((F&128)>0){t-=9;return}return sY(Q,B,Y,J,C,X,G,W,F)}else if(A<12){let F=_A[t++],Z=_A[t++];if((F&128)>0||(Z&128)>0){t-=10;return}if(A<11)return sY(Q,B,Y,J,C,X,G,W,F,Z);let U=_A[t++];if((U&128)>0){t-=11;return}return sY(Q,B,Y,J,C,X,G,W,F,Z,U)}else{let F=_A[t++],Z=_A[t++],U=_A[t++],$=_A[t++];if((F&128)>0||(Z&128)>0||(U&128)>0||($&128)>0){t-=12;return}if(A<14)if(A===12)return sY(Q,B,Y,J,C,X,G,W,F,Z,U,$);else{let E=_A[t++];if((E&128)>0){t-=13;return}return sY(Q,B,Y,J,C,X,G,W,F,Z,U,$,E)}else{let E=_A[t++],K=_A[t++];if((E&128)>0||(K&128)>0){t-=14;return}if(A<15)return sY(Q,B,Y,J,C,X,G,W,F,Z,U,$,E,K);let I=_A[t++];if((I&128)>0){t-=15;return}return sY(Q,B,Y,J,C,X,G,W,F,Z,U,$,E,K,I)}}}}}function oHA(){let A=_A[t++],Q;if(A<192)Q=A-160;else switch(A){case 217:Q=_A[t++];break;case 218:Q=UB.getUint16(t),t+=2;break;case 219:Q=UB.getUint32(t),t+=4;break;default:throw Error("Expected string")}return PZ(Q)}function Zu(A){return A0.copyBuffers?Uint8Array.prototype.slice.call(_A,t,t+=A):_A.subarray(t,t+=A)}function jZ(A){let Q=_A[t++];if(p9[Q]){let B;return p9[Q](_A.subarray(t,B=t+=A),(Y)=>{t=Y;try{return ZY()}finally{t=B}})}else throw Error("Unknown extension type "+Q)}var tHA=Array(4096);function WDA(){let A=_A[t++];if(A>=160&&A<192){if(A=A-160,S5>=t)return r6.slice(t-k8,(t+=A)-k8);else if(!(S5==0&&_8<180))return Cj(A)}else return t--,FDA(ZY());let Q=(A<<5^(A>1?UB.getUint16(t):A>0?_A[t]:0))&4095,B=tHA[Q],Y=t,J=t+A-3,C,X=0;if(B&&B.bytes==A){while(Y["string","number","boolean","bigint"].includes(typeof Q)))return A.flat().toString();throw Error(`Invalid property type for record: ${typeof A}`)}var eHA=(A,Q)=>{let B=ZY().map(FDA),Y=A;if(Q!==void 0)A=A<32?-((Q<<5)+A):(Q<<5)+A,B.highByte=Q;let J=DB[A];if(J&&(J.isShared||r7))(DB.restoreStructures||(DB.restoreStructures=[]))[A]=J;return DB[A]=B,B.read=Hu(B,Y),B.read()};p9[0]=()=>{};p9[0].noBuffer=!0;p9[66]=(A)=>{let Q=A.length,B=BigInt(A[0]&128?A[0]-256:A[0]);for(let Y=1;Y{let A=ZY();return(wZB[A[0]]||Error)(A[1],{cause:A[2]})};p9[105]=(A)=>{if(A0.structuredClone===!1)throw Error("Structured clone extension is disabled");let Q=UB.getUint32(t-4);if(!a6)a6=new Map;let B=_A[t],Y;if(B>=144&&B<160||B==220||B==221)Y=[];else if(B>=128&&B<144||B==222||B==223)Y=new Map;else if((B>=199&&B<=201||B>=212&&B<=216)&&_A[t+1]===115)Y=new Set;else Y={};let J={target:Y};a6.set(Q,J);let C=ZY();if(!J.used)return J.target=C;else Object.assign(Y,C);if(Y instanceof Map)for(let[X,G]of C.entries())Y.set(X,G);if(Y instanceof Set)for(let X of Array.from(C))Y.add(X);return Y};p9[112]=(A)=>{if(A0.structuredClone===!1)throw Error("Structured clone extension is disabled");let Q=UB.getUint32(t-4),B=a6.get(Q);return B.used=!0,B.target};p9[115]=()=>new Set(ZY());var Nu=["Int8","Uint8","Uint8Clamped","Int16","Uint16","Int32","Uint32","Float32","Float64","BigInt64","BigUint64"].map((A)=>A+"Array"),jZB=typeof globalThis==="object"?globalThis:window;p9[116]=(A)=>{let Q=A[0],B=Uint8Array.prototype.slice.call(A,1).buffer,Y=Nu[Q];if(!Y){if(Q===16)return B;if(Q===17)return new DataView(B);throw Error("Could not find typed array for code "+Q)}return new jZB[Y](B)};p9[120]=()=>{let A=ZY();return new RegExp(A[0],A[1])};var OZB=[];p9[98]=(A)=>{let Q=(A[0]<<24)+(A[1]<<16)+(A[2]<<8)+A[3],B=t;return t+=Q-A.length,hY=OZB,hY=[oHA(),oHA()],hY.position0=0,hY.position1=0,hY.postBundlePosition=t,t=B,ZY()};p9[255]=(A)=>{if(A.length==4)return new Date((A[0]*16777216+(A[1]<<16)+(A[2]<<8)+A[3])*1000);else if(A.length==8)return new Date(((A[0]<<22)+(A[1]<<14)+(A[2]<<6)+(A[3]>>2))/1e6+((A[3]&3)*4294967296+A[4]*16777216+(A[5]<<16)+(A[6]<<8)+A[7])*1000);else if(A.length==12)return new Date(((A[0]<<24)+(A[1]<<16)+(A[2]<<8)+A[3])/1e6+((A[4]&128?-281474976710656:0)+A[6]*1099511627776+A[7]*4294967296+A[8]*16777216+(A[9]<<16)+(A[10]<<8)+A[11])*1000);else return new Date("invalid")};function ZDA(A){if(Ku)Ku();let Q=_8,B=t,Y=GN,J=k8,C=S5,X=r6,G=OZ,W=a6,F=hY,Z=new Uint8Array(_A.slice(0,_8)),U=DB,$=DB.slice(0,DB.length),E=A0,K=r7,I=A();return _8=Q,t=B,GN=Y,k8=J,S5=C,r6=X,OZ=G,a6=W,hY=F,_A=Z,r7=K,DB=U,DB.splice(0,DB.length,...$),A0=E,UB=new DataView(_A.buffer,_A.byteOffset,_A.byteLength),I}function Xj(){_A=null,a6=null,DB=null}var TZ=Array(147);for(let A=0;A<256;A++)TZ[A]=+("1e"+Math.floor(45.15-A*0.30103));var Fj=new o6({useRecords:!1}),PZB=Fj.unpack,TZB=Fj.unpackMultiple,SZB=Fj.unpack,WN={NEVER:0,ALWAYS:1,DECIMAL_ROUND:3,DECIMAL_FIT:4},kZB=new Float32Array(1),gqY=new Uint8Array(kZB.buffer,0,4);function $DA(A,Q,B){Uu=A,Eu=Q,Ku=B}var $j;try{$j=new TextEncoder}catch(A){}var Mu,KDA,ZN=typeof Buffer<"u",Zj=ZN?function(A){return Buffer.allocUnsafeSlow(A)}:Uint8Array,VDA=ZN?Buffer:Uint8Array,UDA=ZN?4294967296:2144337920,$A,FN,W0,BA=0,$9,x0=null,IDA,_ZB=21760,vZB=/[\u0080-\uFFFF]/,YX=Symbol("record-id");class SZ extends o6{constructor(A){super(A);this.offset=0;let Q,B,Y,J,C,X=VDA.prototype.utf8Write?function(T,S){return $A.utf8Write(T,S,$A.byteLength-S)}:$j&&$j.encodeInto?function(T,S){return $j.encodeInto(T,$A.subarray(S)).written}:!1,G=this;if(!A)A={};let W=A&&A.sequential,F=A.structures||A.saveStructures,Z=A.maxSharedStructures;if(Z==null)Z=F?32:0;if(Z>8160)throw Error("Maximum maxSharedStructure is 8160");if(A.structuredClone&&A.moreTypes==null)this.moreTypes=!0;let U=A.maxOwnStructures;if(U==null)U=F?32:64;if(!this.structures&&A.useRecords!=!1)this.structures=[];let $=Z>32||U+Z>64,E=Z+64,K=Z+U+64;if(K>8256)throw Error("Maximum maxSharedStructure + maxOwnStructure is 8192");let I=[],V=0,H=0;this.pack=this.encode=function(T,S){if(!$A)$A=new Zj(8192),W0=$A.dataView||($A.dataView=new DataView($A.buffer,0,8192)),BA=0;if($9=$A.length-10,$9-BA<2048)$A=new Zj($A.length),W0=$A.dataView||($A.dataView=new DataView($A.buffer,0,$A.length)),$9=$A.length-10,BA=0;else BA=BA+7&2147483640;if(B=BA,S&mZB)BA+=S&255;if(C=G.structuredClone?new Map:null,G.bundleStrings&&typeof T!=="string")x0=[],x0.size=1/0;else x0=null;if(J=G.structures,J){if(J.uninitialized)J=G._mergeStructures(G.getStructures());let y=J.sharedLength||0;if(y>Z)throw Error("Shared structures is larger than maximum shared structures, try increasing maxSharedStructures to "+J.sharedLength);if(!J.transitions){J.transitions=Object.create(null);for(let h=0;hi.offset>p.offset?1:-1),g=h.length,m=-1;while(y&&g>0){let i=h[--g].offset+B;if(iy.position+B){if(m>=0)m+=6}else{if(m>=0)W0.setUint32(y.position+B,W0.getUint32(y.position+B)+m),m=-1;y=y.previous,g++}}if(m>=0&&y)W0.setUint32(y.position+B,W0.getUint32(y.position+B)+m);if(BA+=h.length*6,BA>$9)P(BA);G.offset=BA;let n=gZB($A.subarray(B,BA),h);return C=null,n}if(G.offset=BA,S&fZB)return $A.start=B,$A.end=BA,$A;return $A.subarray(B,BA)}catch(y){throw v=y,y}finally{if(J){if(D(),Y&&G.saveStructures){let y=J.sharedLength||0,h=$A.subarray(B,BA),g=HDA(J,G);if(!v){if(G.saveStructures(g,g.isCompatible)===!1)return G.pack(T,S);if(G.lastNamedStructuresLength=y,$A.length>1073741824)$A=null;return h}}}if($A.length>1073741824)$A=null;if(S&bZB)BA=B}};let D=()=>{if(H<10)H++;let T=J.sharedLength||0;if(J.length>T&&!W)J.length=T;if(V>1e4){if(J.transitions=null,H=0,V=0,I.length>0)I=[]}else if(I.length>0&&!W){for(let S=0,v=I.length;S{var S=T.length;if(S<16)$A[BA++]=144|S;else if(S<65536)$A[BA++]=220,$A[BA++]=S>>8,$A[BA++]=S&255;else $A[BA++]=221,W0.setUint32(BA,S),BA+=4;for(let v=0;v{if(BA>$9)$A=P(BA);var S=typeof T,v;if(S==="string"){let y=T.length;if(x0&&y>=4&&y<4096){if((x0.size+=y)>_ZB){let n,i=(x0[0]?x0[0].length*3+x0[1].length:0)+10;if(BA+i>$9)$A=P(BA+i);let p;if(x0.position)p=x0,$A[BA]=200,BA+=3,$A[BA++]=98,n=BA-B,BA+=4,EDA(B,z,0),W0.setUint16(n+B-3,BA-B-n);else $A[BA++]=214,$A[BA++]=98,n=BA-B,BA+=4;x0=["",""],x0.previous=p,x0.size=0,x0.position=n}let m=vZB.test(T);x0[m?0:1]+=T,$A[BA++]=193,z(m?-y:y);return}let h;if(y<32)h=1;else if(y<256)h=2;else if(y<65536)h=3;else h=5;let g=y*3;if(BA+g>$9)$A=P(BA+g);if(y<64||!X){let m,n,i,p=BA+h;for(m=0;m>6|192,$A[p++]=n&63|128;else if((n&64512)===55296&&((i=T.charCodeAt(m+1))&64512)===56320)n=65536+((n&1023)<<10)+(i&1023),m++,$A[p++]=n>>18|240,$A[p++]=n>>12&63|128,$A[p++]=n>>6&63|128,$A[p++]=n&63|128;else $A[p++]=n>>12|224,$A[p++]=n>>6&63|128,$A[p++]=n&63|128;v=p-BA-h}else v=X(T,BA+h);if(v<32)$A[BA++]=160|v;else if(v<256){if(h<2)$A.copyWithin(BA+2,BA+1,BA+1+v);$A[BA++]=217,$A[BA++]=v}else if(v<65536){if(h<3)$A.copyWithin(BA+3,BA+2,BA+2+v);$A[BA++]=218,$A[BA++]=v>>8,$A[BA++]=v&255}else{if(h<5)$A.copyWithin(BA+5,BA+3,BA+3+v);$A[BA++]=219,W0.setUint32(BA,v),BA+=4}BA+=v}else if(S==="number")if(T>>>0===T)if(T<32||T<128&&this.useRecords===!1||T<64&&!this.randomAccessStructure)$A[BA++]=T;else if(T<256)$A[BA++]=204,$A[BA++]=T;else if(T<65536)$A[BA++]=205,$A[BA++]=T>>8,$A[BA++]=T&255;else $A[BA++]=206,W0.setUint32(BA,T),BA+=4;else if(T>>0===T)if(T>=-32)$A[BA++]=256+T;else if(T>=-128)$A[BA++]=208,$A[BA++]=T+256;else if(T>=-32768)$A[BA++]=209,W0.setInt16(BA,T),BA+=2;else $A[BA++]=210,W0.setInt32(BA,T),BA+=4;else{let y;if((y=this.useFloat32)>0&&T<4294967296&&T>=-2147483648){$A[BA++]=202,W0.setFloat32(BA,T);let h;if(y<4||(h=T*TZ[($A[BA]&127)<<1|$A[BA+1]>>7])>>0===h){BA+=4;return}else BA--}$A[BA++]=203,W0.setFloat64(BA,T),BA+=8}else if(S==="object"||S==="function")if(!T)$A[BA++]=192;else{if(C){let h=C.get(T);if(h){if(!h.id){let g=C.idsToInsert||(C.idsToInsert=[]);h.id=g.push(h)}$A[BA++]=214,$A[BA++]=112,W0.setUint32(BA,h.id),BA+=4;return}else C.set(T,{offset:BA-B})}let y=T.constructor;if(y===Object)w(T);else if(y===Array)L(T);else if(y===Map)if(this.mapAsEmptyObject)$A[BA++]=128;else{if(v=T.size,v<16)$A[BA++]=128|v;else if(v<65536)$A[BA++]=222,$A[BA++]=v>>8,$A[BA++]=v&255;else $A[BA++]=223,W0.setUint32(BA,v),BA+=4;for(let[h,g]of T)z(h),z(g)}else{for(let h=0,g=Mu.length;h{if($A=i,i=null,BA+=b,BA>$9)P(BA);return{target:$A,targetView:W0,position:BA-b}},z)}finally{if(i)$A=i,W0=p,BA=d,$9=$A.length-10}if(x){if(x.length+BA>$9)P(x.length+BA);BA=yZB(x,$A,BA,n.type)}return}}if(Array.isArray(T))L(T);else{if(T.toJSON){let h=T.toJSON();if(h!==T)return z(h)}if(S==="function")return z(this.writeFunction&&this.writeFunction(T));w(T)}}}else if(S==="boolean")$A[BA++]=T?195:194;else if(S==="bigint"){if(T<9223372036854776000&&T>=-9223372036854776000)$A[BA++]=211,W0.setBigInt64(BA,T);else if(T<18446744073709552000&&T>0)$A[BA++]=207,W0.setBigUint64(BA,T);else if(this.largeBigIntToFloat)$A[BA++]=203,W0.setFloat64(BA,Number(T));else if(this.largeBigIntToString)return z(T.toString());else if((this.useBigIntExtension||this.moreTypes)&&T-(BigInt(2)**BigInt(1023))){$A[BA++]=199,BA++,$A[BA++]=66;let y=[],h;do{let g=T&BigInt(255);h=(g&BigInt(128))===(T>=BigInt(8)}while(!((T===BigInt(0)||T===BigInt(-1))&&h));$A[BA-2]=y.length;for(let g=y.length;g>0;)$A[BA++]=Number(y[--g]);return}else throw RangeError(T+" was too large to fit in MessagePack 64-bit integer format, use useBigIntExtension, or set largeBigIntToFloat to convert to float-64, or set largeBigIntToString to convert to string");BA+=8}else if(S==="undefined")if(this.encodeUndefinedAsNil)$A[BA++]=192;else $A[BA++]=212,$A[BA++]=0,$A[BA++]=0;else throw Error("Unknown type: "+S)},M=this.variableMapSize||this.coercibleKeyAsNumber||this.skipValues?(T)=>{let S;if(this.skipValues){S=[];for(let h in T)if((typeof T.hasOwnProperty!=="function"||T.hasOwnProperty(h))&&!this.skipValues.includes(T[h]))S.push(h)}else S=Object.keys(T);let v=S.length;if(v<16)$A[BA++]=128|v;else if(v<65536)$A[BA++]=222,$A[BA++]=v>>8,$A[BA++]=v&255;else $A[BA++]=223,W0.setUint32(BA,v),BA+=4;let y;if(this.coercibleKeyAsNumber)for(let h=0;h{$A[BA++]=222;let S=BA-B;BA+=2;let v=0;for(let y in T)if(typeof T.hasOwnProperty!=="function"||T.hasOwnProperty(y))z(y),z(T[y]),v++;if(v>65535)throw Error('Object is too large to serialize with fast 16-bit map size, use the "variableMapSize" option to serialize this object');$A[S+++B]=v>>8,$A[S+B]=v&255},N=this.useRecords===!1?M:A.progressiveRecords&&!$?(T)=>{let S,v=J.transitions||(J.transitions=Object.create(null)),y=BA++-B,h;for(let g in T)if(typeof T.hasOwnProperty!=="function"||T.hasOwnProperty(g)){if(S=v[g],S)v=S;else{let m=Object.keys(T),n=v;v=J.transitions;let i=0;for(let p=0,d=m.length;p{let S,v=J.transitions||(J.transitions=Object.create(null)),y=0;for(let g in T)if(typeof T.hasOwnProperty!=="function"||T.hasOwnProperty(g)){if(S=v[g],!S)S=v[g]=Object.create(null),y++;v=S}let h=v[YX];if(h)if(h>=96&&$)$A[BA++]=((h-=96)&31)+96,$A[BA++]=h>>5;else $A[BA++]=h;else _(v,v.__keys__||Object.keys(T),y);for(let g in T)if(typeof T.hasOwnProperty!=="function"||T.hasOwnProperty(g))z(T[g])},q=typeof this.useRecords=="function"&&this.useRecords,w=q?(T)=>{q(T)?N(T):M(T)}:N,P=(T)=>{let S;if(T>16777216){if(T-B>UDA)throw Error("Packed buffer would be larger than maximum buffer size");S=Math.min(UDA,Math.round(Math.max((T-B)*(T>67108864?1.25:2),4194304)/4096)*4096)}else S=(Math.max(T-B<<2,$A.length-1)>>12)+1<<12;let v=new Zj(S);if(W0=v.dataView||(v.dataView=new DataView(v.buffer,0,S)),T=Math.min(T,$A.length),$A.copy)$A.copy(v,0,B,T);else v.set($A.slice(B,T));return BA-=B,B=0,$9=v.length-10,$A=v},_=(T,S,v)=>{let y=J.nextId;if(!y)y=64;if(y=K)y=E;J.nextId=y+1}let h=S.highByte=y>=96&&$?y-96>>5:-1;if(T[YX]=y,T.__keys__=S,J[y-64]=S,y=0)$A[BA++]=(y&31)+96,$A[BA++]=h;else $A[BA++]=y;else{if(h>=0)$A[BA++]=213,$A[BA++]=114,$A[BA++]=(y&31)+96,$A[BA++]=h;else $A[BA++]=212,$A[BA++]=114,$A[BA++]=y;if(v)V+=H*v;if(I.length>=U)I.shift()[YX]=0;I.push(T),z(S)}},j=(T,S,v,y)=>{let h=$A,g=BA,m=$9,n=B;if($A=FN,BA=0,B=0,!$A)FN=$A=new Zj(8192);$9=$A.length-10,_(T,S,y),FN=$A;let i=BA;if($A=h,BA=g,$9=m,B=n,i>1){let p=BA+i-1;if(p>$9)P(p);let d=v+B;$A.copyWithin(d+i,d+1,BA),$A.set(FN.slice(0,i),d),BA=p}else $A[v+B]=FN[0]},k=(T)=>{let S=IDA(T,$A,B,BA,J,P,(v,y,h)=>{if(h)return Y=!0;BA=y;let g=$A;if(z(v),D(),g!==$A)return{position:BA,targetView:W0,target:$A};return BA},this);if(S===0)return w(T);BA=S}}useBuffer(A){$A=A,$A.dataView||($A.dataView=new DataView($A.buffer,$A.byteOffset,$A.byteLength)),BA=0}set position(A){BA=A}get position(){return BA}clearSharedData(){if(this.structures)this.structures=[];if(this.typedStructs)this.typedStructs=[]}}KDA=[Date,Set,Error,RegExp,ArrayBuffer,Object.getPrototypeOf(Uint8Array.prototype).constructor,DataView,Gj];Mu=[{pack(A,Q,B){let Y=A.getTime()/1000;if((this.useTimestamp32||A.getMilliseconds()===0)&&Y>=0&&Y<4294967296){let{target:J,targetView:C,position:X}=Q(6);J[X++]=214,J[X++]=255,C.setUint32(X,Y)}else if(Y>0&&Y<4294967296){let{target:J,targetView:C,position:X}=Q(10);J[X++]=215,J[X++]=255,C.setUint32(X,A.getMilliseconds()*4000000+(Y/1000/4294967296>>0)),C.setUint32(X+4,Y)}else if(isNaN(Y)){if(this.onInvalidDate)return Q(0),B(this.onInvalidDate());let{target:J,targetView:C,position:X}=Q(3);J[X++]=212,J[X++]=255,J[X++]=255}else{let{target:J,targetView:C,position:X}=Q(15);J[X++]=199,J[X++]=12,J[X++]=255,C.setUint32(X,A.getMilliseconds()*1e6),C.setBigInt64(X+4,BigInt(Math.floor(Y)))}}},{pack(A,Q,B){if(this.setAsEmptyObject)return Q(0),B({});let Y=Array.from(A),{target:J,position:C}=Q(this.moreTypes?3:0);if(this.moreTypes)J[C++]=212,J[C++]=115,J[C++]=0;B(Y)}},{pack(A,Q,B){let{target:Y,position:J}=Q(this.moreTypes?3:0);if(this.moreTypes)Y[J++]=212,Y[J++]=101,Y[J++]=0;B([A.name,A.message,A.cause])}},{pack(A,Q,B){let{target:Y,position:J}=Q(this.moreTypes?3:0);if(this.moreTypes)Y[J++]=212,Y[J++]=120,Y[J++]=0;B([A.source,A.flags])}},{pack(A,Q){if(this.moreTypes)Lu(A,16,Q);else qu(ZN?Buffer.from(A):new Uint8Array(A),Q)}},{pack(A,Q){let B=A.constructor;if(B!==VDA&&this.moreTypes)Lu(A,Nu.indexOf(B.name),Q);else qu(A,Q)}},{pack(A,Q){if(this.moreTypes)Lu(A,17,Q);else qu(ZN?Buffer.from(A):new Uint8Array(A),Q)}},{pack(A,Q){let{target:B,position:Y}=Q(1);B[Y]=193}}];function Lu(A,Q,B,Y){let J=A.byteLength;if(J+1<256){var{target:C,position:X}=B(4+J);C[X++]=199,C[X++]=J+1}else if(J+1<65536){var{target:C,position:X}=B(5+J);C[X++]=200,C[X++]=J+1>>8,C[X++]=J+1&255}else{var{target:C,position:X,targetView:G}=B(7+J);C[X++]=201,G.setUint32(X,J+1),X+=4}if(C[X++]=116,C[X++]=Q,!A.buffer)A=new Uint8Array(A);C.set(new Uint8Array(A.buffer,A.byteOffset,A.byteLength),X)}function qu(A,Q){let B=A.byteLength;var Y,J;if(B<256){var{target:Y,position:J}=Q(B+2);Y[J++]=196,Y[J++]=B}else if(B<65536){var{target:Y,position:J}=Q(B+3);Y[J++]=197,Y[J++]=B>>8,Y[J++]=B&255}else{var{target:Y,position:J,targetView:C}=Q(B+5);Y[J++]=198,C.setUint32(J,B),J+=4}Y.set(A,J)}function yZB(A,Q,B,Y){let J=A.length;switch(J){case 1:Q[B++]=212;break;case 2:Q[B++]=213;break;case 4:Q[B++]=214;break;case 8:Q[B++]=215;break;case 16:Q[B++]=216;break;default:if(J<256)Q[B++]=199,Q[B++]=J;else if(J<65536)Q[B++]=200,Q[B++]=J>>8,Q[B++]=J&255;else Q[B++]=201,Q[B++]=J>>24,Q[B++]=J>>16&255,Q[B++]=J>>8&255,Q[B++]=J&255}return Q[B++]=Y,Q.set(A,B),B+=J,B}function gZB(A,Q){let B,Y=Q.length*6,J=A.length-Y;while(B=Q.pop()){let{offset:C,id:X}=B;A.copyWithin(C+Y,C,J),Y-=6;let G=C+Y;A[G++]=214,A[G++]=105,A[G++]=X>>24,A[G++]=X>>16&255,A[G++]=X>>8&255,A[G++]=X&255,J=C}return A}function EDA(A,Q,B){if(x0.length>0){W0.setUint32(x0.position+A,BA+B-x0.position-A),x0.stringsPosition=BA-A;let Y=x0;x0=null,Q(Y[0]),Q(Y[1])}}function HDA(A,Q){return A.isCompatible=(B)=>{let Y=!B||(Q.lastNamedStructuresLength||0)===B.length;if(!Y)Q._mergeStructures(B);return Y},A}function DDA(A,Q){IDA=A,HDA=Q}var NDA=new SZ({useRecords:!1}),hZB=NDA.pack,xZB=NDA.pack;var fZB=512,bZB=1024,mZB=2048;var zu=3,_E=0,$N=2,Uj=1,wu=16,qDA=["num","object","string","ascii"];qDA[wu]="date";var dZB=[!1,!0,!0,!1,!1,!0,!0,!1],MDA;try{Function(""),MDA=!0}catch(A){}var kZ,cZB=typeof Buffer<"u",Ej,JX;try{Ej=new TextEncoder}catch(A){}var lZB=cZB?function(A,Q,B){return A.utf8Write(Q,B,A.byteLength-B)}:Ej&&Ej.encodeInto?function(A,Q,B){return Ej.encodeInto(Q,A.subarray(B)).written}:!1,lqY=Symbol("type"),pqY=Symbol("parent");DDA(zDA,rZB);function zDA(A,Q,B,Y,J,C,X,G){let W=G.typedStructs||(G.typedStructs=[]),F=Q.dataView,Z=(W.lastStringStart||100)+Y,U=Q.length-10,$=Y;if(Y>U)Q=C(Y),F=Q.dataView,Y-=B,$-=B,Z-=B,B=0,U=Q.length-10;let E,K=Z,I=W.transitions||(W.transitions=Object.create(null)),V=W.nextId||W.length,H=V<15?1:V<240?2:V<61440?3:V<15728640?4:0;if(H===0)return 0;Y+=H;let D=[],L,z=0;for(let N in A){let q=A[N],w=I[N];if(!w)I[N]=w={key:N,parent:I,enumerationOffset:0,ascii0:null,ascii8:null,num8:null,string16:null,object16:null,num32:null,float64:null,date64:null};if(Y>U)Q=C(Y),F=Q.dataView,Y-=B,$-=B,Z-=B,K-=B,B=0,U=Q.length-10;switch(typeof q){case"number":let P=q;if(V<200||!w.num64){if(P>>0===P&&P<536870912&&P>-520093696){if(P<246&&P>=0&&(w.num8&&!(V>200&&w.num32)||P<32&&!w.num32))I=w.num8||i9(w,_E,1),Q[Y++]=P;else I=w.num32||i9(w,_E,4),F.setUint32(Y,P,!0),Y+=4;break}else if(P<4294967296&&P>=-2147483648){if(F.setFloat32(Y,P,!0),dZB[Q[Y+3]>>>5]){let T;if((T=P*TZ[(Q[Y+3]&127)<<1|Q[Y+2]>>7])>>0===T){I=w.num32||i9(w,_E,4),Y+=4;break}}}}I=w.num64||i9(w,_E,8),F.setFloat64(Y,P,!0),Y+=8;break;case"string":let _=q.length;if(E=K-Z,(_<<2)+K>U)Q=C((_<<2)+K),F=Q.dataView,Y-=B,$-=B,Z-=B,K-=B,B=0,U=Q.length-10;if(_>65280+E>>2){D.push(N,q,Y-$);break}let j,k=K;if(_<64){let T,S,v;for(T=0;T<_;T++)if(S=q.charCodeAt(T),S<128)Q[K++]=S;else if(S<2048)j=!0,Q[K++]=S>>6|192,Q[K++]=S&63|128;else if((S&64512)===55296&&((v=q.charCodeAt(T+1))&64512)===56320)j=!0,S=65536+((S&1023)<<10)+(v&1023),T++,Q[K++]=S>>18|240,Q[K++]=S>>12&63|128,Q[K++]=S>>6&63|128,Q[K++]=S&63|128;else j=!0,Q[K++]=S>>12|224,Q[K++]=S>>6&63|128,Q[K++]=S&63|128}else K+=lZB(Q,q,K),j=K-k>_;if(E<160||E<246&&(w.ascii8||w.string8)){if(j){if(!(I=w.string8))if(W.length>10&&(I=w.ascii8))I.__type=$N,w.ascii8=null,w.string8=I,X(null,0,!0);else I=i9(w,$N,1)}else if(E===0&&!L){L=!0,I=w.ascii0||i9(w,zu,0);break}else if(!(I=w.ascii8)&&!(W.length>10&&(I=w.string8)))I=i9(w,zu,1);Q[Y++]=E}else I=w.string16||i9(w,$N,2),F.setUint16(Y,E,!0),Y+=2;break;case"object":if(q){if(q.constructor===Date)I=w.date64||i9(w,wu,8),F.setFloat64(Y,q.getTime(),!0),Y+=8;else D.push(N,q,z);break}else if(w=LDA(w,Y,F,-10),w)I=w,Y=kZ;else D.push(N,q,z);break;case"boolean":I=w.num8||w.ascii8||i9(w,_E,1),Q[Y++]=q?249:248;break;case"undefined":if(w=LDA(w,Y,F,-9),w)I=w,Y=kZ;else D.push(N,q,z);break;default:D.push(N,q,z)}z++}for(let N=0,q=D.length;N=16)return 0;Q[$]=M+32;break;case 2:if(M>=256)return 0;Q[$]=56,Q[$+1]=M;break;case 3:if(M>=65536)return 0;Q[$]=57,F.setUint16($+1,M,!0);break;case 4:if(M>=16777216)return 0;F.setUint32($,(M<<8)+58,!0);break}if(YZ){if(Z===K)return Y;return W.lastStringStart=Y-$,zDA(A,Q,B,$,J,C,X,G)}return K}function LDA(A,Q,B,Y){let J;if(J=A.ascii8||A.num8)return B.setInt8(Q,Y,!0),kZ=Q+1,J;if(J=A.string16||A.object16)return B.setInt16(Q,Y,!0),kZ=Q+2,J;if(J=A.num32)return B.setUint32(Q,3758096640+Y,!0),kZ=Q+4,J;if(J=A.num64)return B.setFloat64(Q,NaN,!0),B.setInt8(Q,Y),kZ=Q+8,J;kZ=Q;return}function i9(A,Q,B){let Y=qDA[Q]+(B<<3),J=A[Y]||(A[Y]=Object.create(null));return J.__type=Q,J.__size=B,J.__parent=A,J}function pZB(A){if(!(A instanceof Map))return A;let Q=A.get("typed")||[];if(Object.isFrozen(Q))Q=Q.map((J)=>J.slice(0));let B=A.get("named"),Y=Object.create(null);for(let J=0,C=Q.length;J=24)switch(J){case 24:J=A[Q++];break;case 25:J=A[Q++]+(A[Q++]<<8);break;case 26:J=A[Q++]+(A[Q++]<<8)+(A[Q++]<<16);break;case 27:J=A[Q++]+(A[Q++]<<8)+(A[Q++]<<16)+(A[Q++]<<24);break}let C=Y.typedStructs&&Y.typedStructs[J];if(!C){if(A=Uint8Array.prototype.slice.call(A,Q,B),B-=Q,Q=0,!Y.getStructures)throw Error(`Reference to shared structure ${J} without getStructures method`);if(Y._mergeStructures(Y.getStructures()),!Y.typedStructs)throw Error("Could not find any shared typed structures");if(Y.lastTypedStructuresLength=Y.typedStructs.length,C=Y.typedStructs[J],!C)throw Error("Could not find typed structure "+J)}var{construct:X,fullConstruct:G}=C;if(!X){X=C.construct=function(){},G=C.fullConstruct=function(){},G.prototype=Y.structPrototype??{};var W=X.prototype=Y.structPrototype?Object.create(Y.structPrototype):{};let Z=[],U=0,$;for(let E=0,K=C.length;E0;break;case 1:M=(q,w)=>{let P=q.bytes[w+z.offset];return P>=246?kE(P):P};break;case 2:M=(q,w)=>{let P=q.bytes,j=(P.dataView||(P.dataView=new DataView(P.buffer,P.byteOffset,P.byteLength))).getUint16(w+z.offset,!0);return j>=65280?kE(j&255):j};break;case 4:M=(q,w)=>{let P=q.bytes,j=(P.dataView||(P.dataView=new DataView(P.buffer,P.byteOffset,P.byteLength))).getUint32(w+z.offset,!0);return j>=4294967040?kE(j&255):j};break}z.getRef=M,U+=H;let N;switch(V){case zu:if($&&!$.next)$.next=z;$=z,z.multiGetCount=0,N=function(q){let{bytes:w,position:P}=q,_=U+P,j=M(q,P);if(typeof j!=="number")return j;let k,T=z.next;while(T){if(k=T.getRef(q,P),typeof k==="number")break;else k=null;T=T.next}if(k==null)k=q.bytesEnd-_;if(q.srcString)return q.srcString.slice(j,k);return XDA(w,j+_,k-j)};break;case $N:case Uj:if($&&!$.next)$.next=z;$=z,N=function(q){let w=q.position,P=U+w,_=M(q,w);if(typeof _!=="number")return _;let j=q.bytes,k,T=z.next;while(T){if(k=T.getRef(q,w),typeof k==="number")break;else k=null;T=T.next}if(k==null)k=q.bytesEnd-P;if(V===$N)return j.toString("utf8",_+P,k+P);else{JX=q;try{return Y.unpack(j,{start:_+P,end:k+P})}finally{JX=null}}};break;case _E:switch(H){case 4:N=function(q){let w=q.bytes,P=w.dataView||(w.dataView=new DataView(w.buffer,w.byteOffset,w.byteLength)),_=q.position+z.offset,j=P.getInt32(_,!0);if(j<536870912){if(j>-520093696)return j;if(j>-536870912)return kE(j&255)}let k=P.getFloat32(_,!0),T=TZ[(w[_+3]&127)<<1|w[_+2]>>7];return(T*k+(k>0?0.5:-0.5)>>0)/T};break;case 8:N=function(q){let w=q.bytes,_=(w.dataView||(w.dataView=new DataView(w.buffer,w.byteOffset,w.byteLength))).getFloat64(q.position+z.offset,!0);if(isNaN(_)){let j=w[q.position+z.offset];if(j>=246)return kE(j)}return _};break;case 1:N=function(q){let P=q.bytes[q.position+z.offset];return P<246?P:kE(P)};break}break;case wu:N=function(q){let w=q.bytes,P=w.dataView||(w.dataView=new DataView(w.buffer,w.byteOffset,w.byteLength));return new Date(P.getFloat64(q.position+z.offset,!0))};break}z.get=N}if(MDA){let E=[],K=[],I=0,V;for(let D of Z){if(Y.alwaysLazyProperty&&Y.alwaysLazyProperty(D.key)){V=!0;continue}Object.defineProperty(W,D.key,{get:nZB(D.get),enumerable:!0});let L="v"+I++;K.push(L),E.push("o["+JSON.stringify(D.key)+"]="+L+"(s)")}if(V)E.push("__proto__:this");let H=Function(...K,"var c=this;return function(s){var o=new c();"+E.join(";")+";return o;}").apply(G,Z.map((D)=>D.get));Object.defineProperty(W,"toJSON",{value(D){return H.call(this,this[Ru])}})}else Object.defineProperty(W,"toJSON",{value(E){let K={};for(let I=0,V=Z.length;I{let J=!0;if(Y instanceof Map){if((Y.get("named")||[]).length!==(Q.lastNamedStructuresLength||0))J=!1;if((Y.get("typed")||[]).length!==B)J=!1}else if(Y instanceof Array||Array.isArray(Y)){if(Y.length!==(Q.lastNamedStructuresLength||0))J=!1}if(!J)Q._mergeStructures(Y);return J},Q.lastTypedStructuresLength=Q.typedStructs&&Q.typedStructs.length,A}$DA(iZB,pZB,sZB);var X$B=process.env.MSGPACKR_NATIVE_ACCELERATION_DISABLED!==void 0&&process.env.MSGPACKR_NATIVE_ACCELERATION_DISABLED.toLowerCase()==="true";if(!X$B){let A;try{if(A=mDA(),A)CDA(A.extractStrings)}catch(Q){}}if(!Wj)console.warn("Msgpackr: msgpackr native acceleration is not enabled, using fallback implementation.");var vu=new SZ({useFloat32:WN.ALWAYS});class $Y{static _instance;static get instance(){if(!$Y._instance)$Y._instance=new $Y;return $Y._instance}_enabled=!1;_bytesSentTotal=0;_bytesReceivedTotal=0;_packetsSentTotal=0;_packetsReceivedTotal=0;_compressionCount=0;_serializationTotalMs=0;_serializationCount=0;_lastSnapshotTime=0;_lastBytesSent=0;_lastBytesReceived=0;_lastPacketsSent=0;_lastPacketsReceived=0;_connectedPlayers=0;get isEnabled(){return this._enabled}enable(){this._enabled=!0,this._lastSnapshotTime=performance.now(),this._reset()}disable(){this._enabled=!1}reset(){this._lastSnapshotTime=performance.now(),this._reset()}setConnectedPlayers(A){this._connectedPlayers=A}recordBytesSent(A){if(!this._enabled)return;this._bytesSentTotal+=A}recordBytesReceived(A){if(!this._enabled)return;this._bytesReceivedTotal+=A}recordPacketSent(){if(!this._enabled)return;this._packetsSentTotal++}recordPacketReceived(){if(!this._enabled)return;this._packetsReceivedTotal++}recordSerialization(A){if(!this._enabled)return;this._serializationTotalMs+=A,this._serializationCount++}recordCompression(){if(!this._enabled)return;this._compressionCount++}getSnapshot(){let A=performance.now(),Q=Math.max((A-this._lastSnapshotTime)/1000,0.001),B={connectedPlayers:this._connectedPlayers,bytesSentTotal:this._bytesSentTotal,bytesReceivedTotal:this._bytesReceivedTotal,bytesSentPerSecond:(this._bytesSentTotal-this._lastBytesSent)/Q,bytesReceivedPerSecond:(this._bytesReceivedTotal-this._lastBytesReceived)/Q,packetsSentPerSecond:(this._packetsSentTotal-this._lastPacketsSent)/Q,packetsReceivedPerSecond:(this._packetsReceivedTotal-this._lastPacketsReceived)/Q,avgSerializationMs:this._serializationCount>0?this._serializationTotalMs/this._serializationCount:0,compressionCount:this._compressionCount};return this._lastSnapshotTime=A,this._lastBytesSent=this._bytesSentTotal,this._lastBytesReceived=this._bytesReceivedTotal,this._lastPacketsSent=this._packetsSentTotal,this._lastPacketsReceived=this._packetsReceivedTotal,B}_reset(){this._bytesSentTotal=0,this._bytesReceivedTotal=0,this._packetsSentTotal=0,this._packetsReceivedTotal=0,this._compressionCount=0,this._serializationTotalMs=0,this._serializationCount=0,this._lastBytesSent=0,this._lastBytesReceived=0,this._lastPacketsSent=0,this._lastPacketsReceived=0}}var Qr={};iG(Qr,{zodErrorsIntegration:()=>Qc,wrapMcpServerWithSentry:()=>Xc,withScope:()=>h8,withMonitor:()=>GX,withIsolationScope:()=>BG,withActiveSpan:()=>GW,vercelAIIntegration:()=>uT,validateOpenTelemetrySetup:()=>Ar,updateSpanName:()=>ru,trpcMiddleware:()=>Yc,tediousIntegration:()=>gT,suppressTracing:()=>ON,supabaseIntegration:()=>Ac,startSpanManual:()=>jN,startSpan:()=>b8,startSession:()=>vN,startNewTrace:()=>Vd,startInactiveSpan:()=>Ed,spotlightIntegration:()=>ST,spanToTraceHeader:()=>HN,spanToJSON:()=>eA,spanToBaggageHeader:()=>Yd,setupKoaErrorHandler:()=>BNQ,setupHapiErrorHandler:()=>SDQ,setupFastifyErrorHandler:()=>cEQ,setupExpressErrorHandler:()=>oUQ,setupConnectErrorHandler:()=>wNQ,setUser:()=>wd,setTags:()=>zd,setTag:()=>Rd,setNodeAsyncContextStrategy:()=>LP,setMeasurement:()=>$d,setHttpStatus:()=>mE,setExtras:()=>qd,setExtra:()=>Md,setCurrentClient:()=>bd,setContext:()=>Ld,rewriteFramesIntegration:()=>ed,requestDataIntegration:()=>xN,redisIntegration:()=>KT,profiler:()=>Bc,prismaIntegration:()=>LT,preloadOpenTelemetry:()=>gqQ,postgresIntegration:()=>DT,parameterize:()=>dj,onUnhandledRejectionIntegration:()=>fP,onUncaughtExceptionIntegration:()=>xP,nodeContextIntegration:()=>kP,nativeNodeFetchIntegration:()=>PP,mysqlIntegration:()=>ZT,mysql2Integration:()=>UT,mongooseIntegration:()=>WT,mongoIntegration:()=>XT,modulesIntegration:()=>hP,makeNodeTransport:()=>sT,lruMemoizerIntegration:()=>CT,logger:()=>Zc,localVariablesIntegration:()=>gP,linkedErrorsIntegration:()=>hN,lastEventId:()=>jd,koaIntegration:()=>OT,knexIntegration:()=>sNQ,kafkaIntegration:()=>JT,isInitialized:()=>lZ,instrumentSupabaseClient:()=>sj,initWithoutDefaultIntegrations:()=>xqQ,initOpenTelemetry:()=>eT,init:()=>AS,inboundFiltersIntegration:()=>gN,httpIntegration:()=>RP,hapiIntegration:()=>RT,graphqlIntegration:()=>YT,getTraceMetaTags:()=>cd,getTraceData:()=>CG,getSpanStatusFromHttpCode:()=>bE,getSpanDescendants:()=>DN,getSentryRelease:()=>oT,getRootSpan:()=>K0,getIsolationScope:()=>RQ,getGlobalScope:()=>QG,getDefaultIntegrationsWithoutPerformance:()=>ts,getDefaultIntegrations:()=>es,getCurrentScope:()=>sQ,getClient:()=>gA,getAutoPerformanceIntegrations:()=>pT,getActiveSpan:()=>Q1,genericPoolIntegration:()=>hT,generateInstrumentOnce:()=>EQ,functionToStringIntegration:()=>yN,fsIntegration:()=>o4Q,flush:()=>Od,fastifyIntegration:()=>eP,extraErrorDataIntegration:()=>sd,expressIntegration:()=>lP,expressErrorHandler:()=>qn,eventFiltersIntegration:()=>lj,endSession:()=>pZ,disableAnrDetectionForCallback:()=>IUQ,defaultStackParser:()=>tT,dedupeIntegration:()=>nd,dataloaderIntegration:()=>bLQ,cron:()=>cqQ,createTransport:()=>nE,createSentryWinstonTransport:()=>ZqQ,createGetModuleFromFilename:()=>aT,continueTrace:()=>Kd,contextLinesIntegration:()=>_P,consoleLoggingIntegration:()=>Wc,consoleIntegration:()=>fN,connectIntegration:()=>TT,close:()=>Pd,childProcessIntegration:()=>dT,captureSession:()=>Sd,captureMessage:()=>iE,captureFeedback:()=>Gc,captureException:()=>jB,captureEvent:()=>kN,captureConsoleIntegration:()=>id,captureCheckIn:()=>SN,anrIntegration:()=>VUQ,amqplibIntegration:()=>bT,addIntegration:()=>yd,addEventProcessor:()=>Td,addBreadcrumb:()=>E9,SentryContextManager:()=>lT,Scope:()=>UJ,SEMANTIC_ATTRIBUTE_SENTRY_SOURCE:()=>Q0,SEMANTIC_ATTRIBUTE_SENTRY_SAMPLE_RATE:()=>g5,SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN:()=>DQ,SEMANTIC_ATTRIBUTE_SENTRY_OP:()=>YQ,SDK_VERSION:()=>l0,NodeClient:()=>Gq});var Zc={};iG(Zc,{warn:()=>uUB,trace:()=>fUB,info:()=>mUB,fmt:()=>ud,fatal:()=>cUB,error:()=>dUB,debug:()=>bUB});import{format as xUB}from"node:util";var OA=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__;var l0="9.22.0";var AQ=globalThis;function TJ(){return a7(AQ),AQ}function a7(A){let Q=A.__SENTRY__=A.__SENTRY__||{};return Q.version=Q.version||l0,Q[l0]=Q[l0]||{}}function _Z(A,Q,B=AQ){let Y=B.__SENTRY__=B.__SENTRY__||{},J=Y[l0]=Y[l0]||{};return J[A]||(J[A]=Q())}var uDA=Object.prototype.toString;function aC(A){switch(uDA.call(A)){case"[object Error]":case"[object Exception]":case"[object DOMException]":case"[object WebAssembly.Exception]":return!0;default:return t6(A,Error)}}function Ij(A,Q){return uDA.call(A)===`[object ${Q}]`}function dDA(A){return Ij(A,"ErrorEvent")}function vZ(A){return Ij(A,"String")}function yZ(A){return typeof A==="object"&&A!==null&&"__sentry_template_string__"in A&&"__sentry_template_values__"in A}function UN(A){return A===null||yZ(A)||typeof A!=="object"&&typeof A!=="function"}function k5(A){return Ij(A,"Object")}function cDA(A){return typeof Event<"u"&&t6(A,Event)}function lDA(A){return typeof Element<"u"&&t6(A,Element)}function pDA(A){return Ij(A,"RegExp")}function _5(A){return Boolean(A?.then&&typeof A.then==="function")}function iDA(A){return k5(A)&&"nativeEvent"in A&&"preventDefault"in A&&"stopPropagation"in A}function t6(A,Q){try{return A instanceof Q}catch(B){return!1}}function Hj(A){return!!(typeof A==="object"&&A!==null&&(A.__isVue||A._isVue))}var G$B=AQ,W$B=80;function nDA(A,Q={}){if(!A)return"";try{let B=A,Y=5,J=[],C=0,X=0,G=" > ",W=G.length,F,Z=Array.isArray(Q)?Q:Q.keyAttrs,U=!Array.isArray(Q)&&Q.maxStringLength||W$B;while(B&&C++1&&X+J.length*W+F.length>=U)break;J.push(F),X+=F.length,B=B.parentNode}return J.reverse().join(G)}catch(B){return""}}function F$B(A,Q){let B=A,Y=[];if(!B?.tagName)return"";if(G$B.HTMLElement){if(B instanceof HTMLElement&&B.dataset){if(B.dataset.sentryComponent)return B.dataset.sentryComponent;if(B.dataset.sentryElement)return B.dataset.sentryElement}}Y.push(B.tagName.toLowerCase());let J=Q?.length?Q.filter((X)=>B.getAttribute(X)).map((X)=>[X,B.getAttribute(X)]):null;if(J?.length)J.forEach((X)=>{Y.push(`[${X[0]}="${X[1]}"]`)});else{if(B.id)Y.push(`#${B.id}`);let X=B.className;if(X&&vZ(X)){let G=X.split(/\s+/);for(let W of G)Y.push(`.${W}`)}}let C=["aria-label","type","name","title","alt"];for(let X of C){let G=B.getAttribute(X);if(G)Y.push(`[${X}="${G}"]`)}return Y.join("")}var Z$B="Sentry Logger ",oC=["debug","info","warn","error","log","assert","trace"],vE={};function f0(A){if(!("console"in AQ))return A();let Q=AQ.console,B={},Y=Object.keys(vE);Y.forEach((J)=>{let C=vE[J];B[J]=Q[J],Q[J]=C});try{return A()}finally{Y.forEach((J)=>{Q[J]=B[J]})}}function $$B(){let A=!1,Q={enable:()=>{A=!0},disable:()=>{A=!1},isEnabled:()=>A};if(OA)oC.forEach((B)=>{Q[B]=(...Y)=>{if(A)f0(()=>{AQ.console[B](`${Z$B}[${B}]:`,...Y)})}});else oC.forEach((B)=>{Q[B]=()=>{return}});return Q}var e=_Z("logger",$$B);function n9(A,Q=0){if(typeof A!=="string"||Q===0)return A;return A.length<=Q?A:`${A.slice(0,Q)}...`}function yu(A,Q){let B=A,Y=B.length;if(Y<=150)return B;if(Q>Y)Q=Y;let J=Math.max(Q-60,0);if(J<5)J=0;let C=Math.min(J+140,Y);if(C>Y-5)C=Y;if(C===Y)J=Math.max(C-140,0);if(B=B.slice(J,C),J>0)B=`'{snip} ${B}`;if(CsDA(A,Y,B))}function gu(A,Q,B){if(!(Q in A))return;let Y=A[Q];if(typeof Y!=="function")return;let J=B(Y);if(typeof J==="function")oDA(J,Y);try{A[Q]=J}catch{OA&&e.log(`Failed to replace method "${Q}" in object`,A)}}function p0(A,Q,B){try{Object.defineProperty(A,Q,{value:B,writable:!0,configurable:!0})}catch(Y){OA&&e.log(`Failed to add non-enumerable property "${Q}" to object`,A)}}function oDA(A,Q){try{let B=Q.prototype||{};A.prototype=Q.prototype=B,p0(A,"__sentry_original__",Q)}catch(B){}}function hu(A){return A.__sentry_original__}function Dj(A){if(aC(A))return{message:A.message,name:A.name,stack:A.stack,...aDA(A)};else if(cDA(A)){let Q={type:A.type,target:rDA(A.target),currentTarget:rDA(A.currentTarget),...aDA(A)};if(typeof CustomEvent<"u"&&t6(A,CustomEvent))Q.detail=A.detail;return Q}else return A}function rDA(A){try{return lDA(A)?nDA(A):Object.prototype.toString.call(A)}catch(Q){return""}}function aDA(A){if(typeof A==="object"&&A!==null){let Q={};for(let B in A)if(Object.prototype.hasOwnProperty.call(A,B))Q[B]=A[B];return Q}else return{}}function xu(A,Q=40){let B=Object.keys(Dj(A));B.sort();let Y=B[0];if(!Y)return"[object has no keys]";if(Y.length>=Q)return n9(Y,Q);for(let J=B.length;J>0;J--){let C=B.slice(0,J).join(", ");if(C.length>Q)continue;if(J===B.length)return C;return n9(C,Q)}return""}function U$B(){let A=AQ;return A.crypto||A.msCrypto}function UY(A=U$B()){let Q=()=>Math.random()*16;try{if(A?.randomUUID)return A.randomUUID().replace(/-/g,"");if(A?.getRandomValues)Q=()=>{let B=new Uint8Array(1);return A.getRandomValues(B),B[0]}}catch(B){}return([1e7]+1000+4000+8000+100000000000).replace(/[018]/g,(B)=>(B^(Q()&15)>>B/4).toString(16))}function tDA(A){return A.exception?.values?.[0]}function e7(A){let{message:Q,event_id:B}=A;if(Q)return Q;let Y=tDA(A);if(Y){if(Y.type&&Y.value)return`${Y.type}: ${Y.value}`;return Y.type||Y.value||B||""}return B||""}function bu(A,Q,B){let Y=A.exception=A.exception||{},J=Y.values=Y.values||[],C=J[0]=J[0]||{};if(!C.value)C.value=Q||"";if(!C.type)C.type=B||"Error"}function AW(A,Q){let B=tDA(A);if(!B)return;let Y={type:"generic",handled:!0},J=B.mechanism;if(B.mechanism={...Y,...J,...Q},Q&&"data"in Q){let C={...J?.data,...Q.data};B.mechanism.data=C}}var E$B=/^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/;function fu(A){return parseInt(A||"",10)}function mu(A){let Q=A.match(E$B)||[],B=fu(Q[1]),Y=fu(Q[2]),J=fu(Q[3]);return{buildmetadata:Q[5],major:isNaN(B)?void 0:B,minor:isNaN(Y)?void 0:Y,patch:isNaN(J)?void 0:J,prerelease:Q[4]}}function Nj(A){if(K$B(A))return!0;try{p0(A,"__sentry_captured__",!0)}catch(Q){}return!1}function K$B(A){try{return A.__sentry_captured__}catch{}}var eDA=1000;function e6(){return Date.now()/eDA}function V$B(){let{performance:A}=AQ;if(!A?.now)return e6;let Q=Date.now()-A.now(),B=A.timeOrigin==null?Q:A.timeOrigin;return()=>{return(B+A.now())/eDA}}var v8=V$B();function ANA(A){let Q=v8(),B={sid:UY(),init:!0,timestamp:Q,started:Q,duration:0,status:"ok",errors:0,ignoreDuration:!1,toJSON:()=>I$B(B)};if(A)AG(B,A);return B}function AG(A,Q={}){if(Q.user){if(!A.ipAddress&&Q.user.ip_address)A.ipAddress=Q.user.ip_address;if(!A.did&&!Q.did)A.did=Q.user.id||Q.user.email||Q.user.username}if(A.timestamp=Q.timestamp||v8(),Q.abnormal_mechanism)A.abnormal_mechanism=Q.abnormal_mechanism;if(Q.ignoreDuration)A.ignoreDuration=Q.ignoreDuration;if(Q.sid)A.sid=Q.sid.length===32?Q.sid:UY();if(Q.init!==void 0)A.init=Q.init;if(!A.did&&Q.did)A.did=`${Q.did}`;if(typeof Q.started==="number")A.started=Q.started;if(A.ignoreDuration)A.duration=void 0;else if(typeof Q.duration==="number")A.duration=Q.duration;else{let B=A.timestamp-A.started;A.duration=B>=0?B:0}if(Q.release)A.release=Q.release;if(Q.environment)A.environment=Q.environment;if(!A.ipAddress&&Q.ipAddress)A.ipAddress=Q.ipAddress;if(!A.userAgent&&Q.userAgent)A.userAgent=Q.userAgent;if(typeof Q.errors==="number")A.errors=Q.errors;if(Q.status)A.status=Q.status}function QNA(A,Q){let B={};if(Q)B={status:Q};else if(A.status==="ok")B={status:"exited"};AG(A,B)}function I$B(A){return{sid:`${A.sid}`,init:A.init,started:new Date(A.started*1000).toISOString(),timestamp:new Date(A.timestamp*1000).toISOString(),status:A.status,errors:A.errors,did:typeof A.did==="number"||typeof A.did==="string"?`${A.did}`:void 0,duration:A.duration,abnormal_mechanism:A.abnormal_mechanism,attrs:{release:A.release,environment:A.environment,ip_address:A.ipAddress,user_agent:A.userAgent}}}function QW(A,Q,B=2){if(!Q||typeof Q!=="object"||B<=0)return Q;if(A&&Object.keys(Q).length===0)return A;let Y={...A};for(let J in Q)if(Object.prototype.hasOwnProperty.call(Q,J))Y[J]=QW(Y[J],Q[J],B-1);return Y}var uu="_sentrySpan";function gZ(A,Q){if(Q)p0(A,uu,Q);else delete A[uu]}function tC(A){return A[uu]}function y8(){return UY()}function g8(){return UY().substring(16)}var H$B=100;class UJ{constructor(){this._notifyingListeners=!1,this._scopeListeners=[],this._eventProcessors=[],this._breadcrumbs=[],this._attachments=[],this._user={},this._tags={},this._extra={},this._contexts={},this._sdkProcessingMetadata={},this._propagationContext={traceId:y8(),sampleRand:Math.random()}}clone(){let A=new UJ;if(A._breadcrumbs=[...this._breadcrumbs],A._tags={...this._tags},A._extra={...this._extra},A._contexts={...this._contexts},this._contexts.flags)A._contexts.flags={values:[...this._contexts.flags.values]};return A._user=this._user,A._level=this._level,A._session=this._session,A._transactionName=this._transactionName,A._fingerprint=this._fingerprint,A._eventProcessors=[...this._eventProcessors],A._attachments=[...this._attachments],A._sdkProcessingMetadata={...this._sdkProcessingMetadata},A._propagationContext={...this._propagationContext},A._client=this._client,A._lastEventId=this._lastEventId,gZ(A,tC(this)),A}setClient(A){this._client=A}setLastEventId(A){this._lastEventId=A}getClient(){return this._client}lastEventId(){return this._lastEventId}addScopeListener(A){this._scopeListeners.push(A)}addEventProcessor(A){return this._eventProcessors.push(A),this}setUser(A){if(this._user=A||{email:void 0,id:void 0,ip_address:void 0,username:void 0},this._session)AG(this._session,{user:A});return this._notifyScopeListeners(),this}getUser(){return this._user}setTags(A){return this._tags={...this._tags,...A},this._notifyScopeListeners(),this}setTag(A,Q){return this._tags={...this._tags,[A]:Q},this._notifyScopeListeners(),this}setExtras(A){return this._extra={...this._extra,...A},this._notifyScopeListeners(),this}setExtra(A,Q){return this._extra={...this._extra,[A]:Q},this._notifyScopeListeners(),this}setFingerprint(A){return this._fingerprint=A,this._notifyScopeListeners(),this}setLevel(A){return this._level=A,this._notifyScopeListeners(),this}setTransactionName(A){return this._transactionName=A,this._notifyScopeListeners(),this}setContext(A,Q){if(Q===null)delete this._contexts[A];else this._contexts[A]=Q;return this._notifyScopeListeners(),this}setSession(A){if(!A)delete this._session;else this._session=A;return this._notifyScopeListeners(),this}getSession(){return this._session}update(A){if(!A)return this;let Q=typeof A==="function"?A(this):A,B=Q instanceof UJ?Q.getScopeData():k5(Q)?A:void 0,{tags:Y,extra:J,user:C,contexts:X,level:G,fingerprint:W=[],propagationContext:F}=B||{};if(this._tags={...this._tags,...Y},this._extra={...this._extra,...J},this._contexts={...this._contexts,...X},C&&Object.keys(C).length)this._user=C;if(G)this._level=G;if(W.length)this._fingerprint=W;if(F)this._propagationContext=F;return this}clear(){return this._breadcrumbs=[],this._tags={},this._extra={},this._user={},this._contexts={},this._level=void 0,this._transactionName=void 0,this._fingerprint=void 0,this._session=void 0,gZ(this,void 0),this._attachments=[],this.setPropagationContext({traceId:y8(),sampleRand:Math.random()}),this._notifyScopeListeners(),this}addBreadcrumb(A,Q){let B=typeof Q==="number"?Q:H$B;if(B<=0)return this;let Y={timestamp:e6(),...A,message:A.message?n9(A.message,2048):A.message};if(this._breadcrumbs.push(Y),this._breadcrumbs.length>B)this._breadcrumbs=this._breadcrumbs.slice(-B),this._client?.recordDroppedEvent("buffer_overflow","log_item");return this._notifyScopeListeners(),this}getLastBreadcrumb(){return this._breadcrumbs[this._breadcrumbs.length-1]}clearBreadcrumbs(){return this._breadcrumbs=[],this._notifyScopeListeners(),this}addAttachment(A){return this._attachments.push(A),this}clearAttachments(){return this._attachments=[],this}getScopeData(){return{breadcrumbs:this._breadcrumbs,attachments:this._attachments,contexts:this._contexts,tags:this._tags,extra:this._extra,user:this._user,level:this._level,fingerprint:this._fingerprint||[],eventProcessors:this._eventProcessors,propagationContext:this._propagationContext,sdkProcessingMetadata:this._sdkProcessingMetadata,transactionName:this._transactionName,span:tC(this)}}setSDKProcessingMetadata(A){return this._sdkProcessingMetadata=QW(this._sdkProcessingMetadata,A,2),this}setPropagationContext(A){return this._propagationContext=A,this}getPropagationContext(){return this._propagationContext}captureException(A,Q){let B=Q?.event_id||UY();if(!this._client)return e.warn("No client configured on scope - will not capture exception!"),B;let Y=Error("Sentry syntheticException");return this._client.captureException(A,{originalException:A,syntheticException:Y,...Q,event_id:B},this),B}captureMessage(A,Q,B){let Y=B?.event_id||UY();if(!this._client)return e.warn("No client configured on scope - will not capture message!"),Y;let J=Error(A);return this._client.captureMessage(A,Q,{originalException:A,syntheticException:J,...B,event_id:Y},this),Y}captureEvent(A,Q){let B=Q?.event_id||UY();if(!this._client)return e.warn("No client configured on scope - will not capture event!"),B;return this._client.captureEvent(A,{...Q,event_id:B},this),B}_notifyScopeListeners(){if(!this._notifyingListeners)this._notifyingListeners=!0,this._scopeListeners.forEach((A)=>{A(this)}),this._notifyingListeners=!1}}function yE(){return _Z("defaultCurrentScope",()=>new UJ)}function v5(){return _Z("defaultIsolationScope",()=>new UJ)}class YNA{constructor(A,Q){let B;if(!A)B=new UJ;else B=A;let Y;if(!Q)Y=new UJ;else Y=Q;this._stack=[{scope:B}],this._isolationScope=Y}withScope(A){let Q=this._pushScope(),B;try{B=A(Q)}catch(Y){throw this._popScope(),Y}if(_5(B))return B.then((Y)=>{return this._popScope(),Y},(Y)=>{throw this._popScope(),Y});return this._popScope(),B}getClient(){return this.getStackTop().client}getScope(){return this.getStackTop().scope}getIsolationScope(){return this._isolationScope}getStackTop(){return this._stack[this._stack.length-1]}_pushScope(){let A=this.getScope().clone();return this._stack.push({client:this.getClient(),scope:A}),A}_popScope(){if(this._stack.length<=1)return!1;return!!this._stack.pop()}}function gE(){let A=TJ(),Q=a7(A);return Q.stack=Q.stack||new YNA(yE(),v5())}function D$B(A){return gE().withScope(A)}function N$B(A,Q){let B=gE();return B.withScope(()=>{return B.getStackTop().scope=A,Q(A)})}function BNA(A){return gE().withScope(()=>{return A(gE().getIsolationScope())})}function JNA(){return{withIsolationScope:BNA,withScope:D$B,withSetScope:N$B,withSetIsolationScope:(A,Q)=>{return BNA(Q)},getCurrentScope:()=>gE().getScope(),getIsolationScope:()=>gE().getIsolationScope()}}function du(A){let Q=TJ(),B=a7(Q);B.acs=A}function y5(A){let Q=a7(A);if(Q.acs)return Q.acs;return JNA()}function sQ(){let A=TJ();return y5(A).getCurrentScope()}function RQ(){let A=TJ();return y5(A).getIsolationScope()}function QG(){return _Z("globalScope",()=>new UJ)}function h8(...A){let Q=TJ(),B=y5(Q);if(A.length===2){let[Y,J]=A;if(!Y)return B.withScope(J);return B.withSetScope(Y,J)}return B.withScope(A[0])}function BG(...A){let Q=TJ(),B=y5(Q);if(A.length===2){let[Y,J]=A;if(!Y)return B.withIsolationScope(J);return B.withSetIsolationScope(Y,J)}return B.withIsolationScope(A[0])}function gA(){return sQ().getClient()}function hE(A){let Q=A.getPropagationContext(),{traceId:B,parentSpanId:Y,propagationSpanId:J}=Q,C={trace_id:B,span_id:J||g8()};if(Y)C.parent_span_id=Y;return C}var Q0="sentry.source",g5="sentry.sample_rate",cu="sentry.previous_trace_sample_rate",YQ="sentry.op",DQ="sentry.origin";var Lj="sentry.measurement_unit",qj="sentry.measurement_value",eC="sentry.custom_span_name",xE="sentry.profile_id",fE="sentry.exclusive_time",lu="cache.hit",pu="cache.key",iu="cache.item_size";var nu=0,BW=1,s9=2;function bE(A){if(A<400&&A>=100)return{code:1};if(A>=400&&A<500)switch(A){case 401:return{code:2,message:"unauthenticated"};case 403:return{code:2,message:"permission_denied"};case 404:return{code:2,message:"not_found"};case 409:return{code:2,message:"already_exists"};case 413:return{code:2,message:"failed_precondition"};case 429:return{code:2,message:"resource_exhausted"};case 499:return{code:2,message:"cancelled"};default:return{code:2,message:"invalid_argument"}}if(A>=500&&A<600)switch(A){case 501:return{code:2,message:"unimplemented"};case 503:return{code:2,message:"unavailable"};case 504:return{code:2,message:"deadline_exceeded"};default:return{code:2,message:"internal_error"}}return{code:2,message:"unknown_error"}}function mE(A,Q){A.setAttribute("http.response.status_code",Q);let B=bE(Q);if(B.message!=="unknown_error")A.setStatus(B)}var CNA="_sentryScope",XNA="_sentryIsolationScope";function EN(A,Q,B){if(A)p0(A,XNA,B),p0(A,CNA,Q)}function A1(A){return{scope:A[CNA],isolationScope:A[XNA]}}function x8(A){if(typeof A==="boolean")return Number(A);let Q=typeof A==="string"?parseFloat(A):A;if(typeof Q!=="number"||isNaN(Q)||Q<0||Q>1)return;return Q}var KN="sentry-",WNA=/^sentry-/,FNA=8192;function YW(A){let Q=hZ(A);if(!Q)return;let B=Object.entries(Q).reduce((Y,[J,C])=>{if(J.match(WNA)){let X=J.slice(KN.length);Y[X]=C}return Y},{});if(Object.keys(B).length>0)return B;else return}function JW(A){if(!A)return;let Q=Object.entries(A).reduce((B,[Y,J])=>{if(J)B[`${KN}${Y}`]=J;return B},{});return Mj(Q)}function hZ(A){if(!A||!vZ(A)&&!Array.isArray(A))return;if(Array.isArray(A))return A.reduce((Q,B)=>{let Y=GNA(B);return Object.entries(Y).forEach(([J,C])=>{Q[J]=C}),Q},{});return GNA(A)}function GNA(A){return A.split(",").map((Q)=>Q.split("=").map((B)=>{try{return decodeURIComponent(B.trim())}catch{return}})).reduce((Q,[B,Y])=>{if(B&&Y)Q[B]=Y;return Q},{})}function Mj(A){if(Object.keys(A).length===0)return;return Object.entries(A).reduce((Q,[B,Y],J)=>{let C=`${encodeURIComponent(B)}=${encodeURIComponent(Y)}`,X=J===0?C:`${Q},${C}`;if(X.length>FNA)return OA&&e.warn(`Not adding key: ${B} with val: ${Y} to baggage header due to exceeding baggage size limits.`),Q;else return X},"")}var VN=new RegExp("^[ \\t]*([0-9a-f]{32})?-?([0-9a-f]{16})?-?([01])?[ \\t]*$");function ZNA(A){if(!A)return;let Q=A.match(VN);if(!Q)return;let B;if(Q[3]==="1")B=!0;else if(Q[3]==="0")B=!1;return{traceId:Q[1],parentSampled:B,parentSpanId:Q[2]}}function xZ(A,Q){let B=ZNA(A),Y=YW(Q);if(!B?.traceId)return{traceId:y8(),sampleRand:Math.random()};let J=L$B(B,Y);if(Y)Y.sample_rand=J.toString();let{traceId:C,parentSpanId:X,parentSampled:G}=B;return{traceId:C,parentSpanId:X,sampled:G,dsc:Y||{},sampleRand:J}}function CW(A=y8(),Q=g8(),B){let Y="";if(B!==void 0)Y=B?"-1":"-0";return`${A}-${Q}${Y}`}function L$B(A,Q){let B=x8(Q?.sample_rand);if(B!==void 0)return B;let Y=x8(Q?.sample_rate);if(Y&&A?.parentSampled!==void 0)return A.parentSampled?Math.random()*Y:Y+Math.random()*(1-Y);else return Math.random()}var zj=0,Rj=1,$NA=!1;function ENA(A){let{spanId:Q,traceId:B}=A.spanContext(),{data:Y,op:J,parent_span_id:C,status:X,origin:G,links:W}=eA(A);return{parent_span_id:C,span_id:Q,trace_id:B,data:Y,op:J,status:X,origin:G,links:W}}function XW(A){let{spanId:Q,traceId:B,isRemote:Y}=A.spanContext(),J=Y?Q:eA(A).parent_span_id,C=A1(A).scope,X=Y?C?.getPropagationContext().propagationSpanId||g8():Q;return{parent_span_id:J,span_id:X,trace_id:B}}function HN(A){let{traceId:Q,spanId:B}=A.spanContext(),Y=XX(A);return CW(Q,B,Y)}function fZ(A){if(A&&A.length>0)return A.map(({context:{spanId:Q,traceId:B,traceFlags:Y,...J},attributes:C})=>({span_id:Q,trace_id:B,sampled:Y===Rj,attributes:C,...J}));else return}function r9(A){if(typeof A==="number")return UNA(A);if(Array.isArray(A))return A[0]+A[1]/1e9;if(A instanceof Date)return UNA(A.getTime());return v8()}function UNA(A){return A>9999999999?A/1000:A}function eA(A){if(M$B(A))return A.getSpanJSON();let{spanId:Q,traceId:B}=A.spanContext();if(q$B(A)){let{attributes:Y,startTime:J,name:C,endTime:X,status:G,links:W}=A,F="parentSpanId"in A?A.parentSpanId:("parentSpanContext"in A)?A.parentSpanContext?.spanId:void 0;return{span_id:Q,trace_id:B,data:Y,description:C,parent_span_id:F,start_timestamp:r9(J),timestamp:r9(X)||void 0,status:bZ(G),op:Y[YQ],origin:Y[DQ],links:fZ(W)}}return{span_id:Q,trace_id:B,start_timestamp:0,data:{}}}function q$B(A){let Q=A;return!!Q.attributes&&!!Q.startTime&&!!Q.name&&!!Q.endTime&&!!Q.status}function M$B(A){return typeof A.getSpanJSON==="function"}function XX(A){let{traceFlags:Q}=A.spanContext();return Q===Rj}function bZ(A){if(!A||A.code===nu)return;if(A.code===BW)return"ok";return A.message||"unknown_error"}var IN="_sentryChildSpans",su="_sentryRootSpan";function uE(A,Q){let B=A[su]||A;if(p0(Q,su,B),A[IN])A[IN].add(Q);else p0(A,IN,new Set([Q]))}function DN(A){let Q=new Set;function B(Y){if(Q.has(Y))return;else if(XX(Y)){Q.add(Y);let J=Y[IN]?Array.from(Y[IN]):[];for(let C of J)B(C)}}return B(A),Array.from(Q)}function K0(A){return A[su]||A}function Q1(){let A=TJ(),Q=y5(A);if(Q.getActiveSpan)return Q.getActiveSpan();return tC(sQ())}function NN(){if(!$NA)f0(()=>{console.warn("[Sentry] Returning null from `beforeSendSpan` is disallowed. To drop certain spans, configure the respective integrations directly.")}),$NA=!0}function ru(A,Q){A.updateName(Q),A.setAttributes({[Q0]:"custom",[eC]:Q})}var ou="?",KNA=/\(error: (.*)\)/,VNA=/captureMessage|captureException/;function jj(...A){let Q=A.sort((B,Y)=>B[0]-Y[0]).map((B)=>B[1]);return(B,Y=0,J=0)=>{let C=[],X=B.split(` `);for(let G=Y;G1024)continue;let F=KNA.test(W)?W.replace(KNA,"$1"):W;if(F.match(/\S*Error: /))continue;for(let Z of Q){let U=Z(F);if(U){C.push(U);break}}if(C.length>=50+J)break}return INA(C.slice(J))}}function tu(A){if(Array.isArray(A))return jj(...A);return A}function INA(A){if(!A.length)return[];let Q=Array.from(A);if(/sentryWrapped/.test(wj(Q).function||""))Q.pop();if(Q.reverse(),VNA.test(wj(Q).function||"")){if(Q.pop(),VNA.test(wj(Q).function||""))Q.pop()}return Q.slice(0,50).map((B)=>({...B,filename:B.filename||wj(Q).filename,function:B.function||"?"}))}function wj(A){return A[A.length-1]||{}}var au="";function LN(A){try{if(!A||typeof A!=="function")return au;return A.name||au}catch(Q){return au}}function Oj(A){let Q=A.exception;if(Q){let B=[];try{return Q.values.forEach((Y)=>{if(Y.stacktrace.frames)B.push(...Y.stacktrace.frames)}),B}catch(Y){return}}return}var Pj={},HNA={};function dE(A,Q){Pj[A]=Pj[A]||[],Pj[A].push(Q)}function cE(A,Q){if(!HNA[A]){HNA[A]=!0;try{Q()}catch(B){OA&&e.error(`Error while instrumenting ${A}`,B)}}}function lE(A,Q){let B=A&&Pj[A];if(!B)return;for(let Y of B)try{Y(Q)}catch(J){OA&&e.error(`Error while triggering instrumentation handler. Type: ${A} Name: ${LN(Y)} diff --git a/server/src/networking/PlatformGateway.ts b/server/src/networking/PlatformGateway.ts index b1859fd5..26c91c6e 100644 --- a/server/src/networking/PlatformGateway.ts +++ b/server/src/networking/PlatformGateway.ts @@ -102,16 +102,15 @@ export default class PlatformGateway { public readonly lobbyId: string | undefined = process.env.HYTOPIA_LOBBY_ID; private _creativeGateway: CreativeGateway | undefined; - private _gqlWs: graphQLWS.Client; + private _gqlWs: graphQLWS.Client | undefined; private constructor() { - this._gqlWs = graphQLWS.createClient({ - url: 'wss://prod.gql.hytopia.com/graphql', - webSocketImpl: WebSocket, - }); - try { this._creativeGateway = new CreativeGateway(); + this._gqlWs = graphQLWS.createClient({ + url: 'wss://prod.gql.hytopia.com/graphql', + webSocketImpl: WebSocket, + }); } catch { console.warn([ '━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━', @@ -196,6 +195,10 @@ export default class PlatformGateway { * **Category:** Networking */ public async getPlayerCosmetics(userId: string): Promise { + if (!this._creativeGateway || !this._gqlWs) { + return; + } + const iterator = this._gqlWs.iterate({ query: `{ userById(id: "${userId}") { diff --git a/server/src/players/Player.ts b/server/src/players/Player.ts index 1221c941..ea4a9369 100644 --- a/server/src/players/Player.ts +++ b/server/src/players/Player.ts @@ -187,7 +187,9 @@ export default class Player extends EventRouter implements protocol.Serializable this.profilePictureUrl = session?.user.profilePictureURL ?? undefined; this.camera = new PlayerCamera(this); this.connection = connection; - this.cosmetics = PlatformGateway.instance.getPlayerCosmetics(this.id); + this.cosmetics = session?.user.id + ? PlatformGateway.instance.getPlayerCosmetics(this.id) + : Promise.resolve(undefined); this.ui = new PlayerUI(this); connection.onPacket(protocol.PacketId.CHAT_MESSAGE_SEND, this._onChatMessageSendPacket); From 3c549b8d7f33d41bcb24aed1f484fef69c5205e3 Mon Sep 17 00:00:00 2001 From: web3dev1337 <160291380+web3dev1337@users.noreply.github.com> Date: Sat, 7 Mar 2026 20:12:59 +1100 Subject: [PATCH 33/40] docs: capture repeatable hyfire2 perf flow --- CODEBASE_DOCUMENTATION.md | 2 +- ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md | 4 +++- .../scripts/run-external-game-benchmark.sh | 12 ++++++++++++ packages/perf-tools/scripts/setup-game.sh | 2 +- 4 files changed, 17 insertions(+), 3 deletions(-) diff --git a/CODEBASE_DOCUMENTATION.md b/CODEBASE_DOCUMENTATION.md index 6be6c71c..8d6f517b 100644 --- a/CODEBASE_DOCUMENTATION.md +++ b/CODEBASE_DOCUMENTATION.md @@ -16,7 +16,7 @@ PROTOCOL: protocol/ - Packet schemas + definitions (@hytopia.com/server-protocol SDK: sdk/ - Git submodule → hytopiagg/sdk (build output lands here) EXAMPLES: sdk-examples/ - Reference games built with the SDK ASSETS: assets/release/ - Default game assets (audio, blocks, maps, models, particles, skyboxes, ui) -PERF: packages/perf-tools/ - Benchmark CLI + trace analysis (`hytopia-bench`), headless client metrics, synthetic + real-game presets (`zoo-game-full` single-client benchmark, `zoo-game-observe` 5-client joinable Zoo run), helper scripts for linking/running external games (including linked SDK runtime deps) +PERF: packages/perf-tools/ - Benchmark CLI + trace analysis (`hytopia-bench`), headless client metrics, synthetic + real-game presets (`zoo-game-full` single-client benchmark, `zoo-game-observe` 5-client joinable Zoo run), helper scripts for linking/running external games (including linked SDK runtime deps and repeatable HyFire2/Zoo Game workflows) CONFIG: package.json - Monorepo root (npm workspaces) server/package.json - Server deps + build scripts server/tsconfig.json - Strict TS, path alias @/* → ./src/* diff --git a/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md b/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md index 29a4115b..fed517f4 100644 --- a/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md +++ b/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md @@ -24,6 +24,7 @@ Follow-up update from local real-game verification: - joinable external-game runs exposed a local-dev crash path where sessionless local players still attempted live platform cosmetics lookup - that engine-side issue is now fixed in [PlatformGateway.ts](/home/ab/GitHub/hytopia/work1/server/src/networking/PlatformGateway.ts) and [Player.ts](/home/ab/GitHub/hytopia/work1/server/src/players/Player.ts) - result: local HyFire2 observation runs no longer fall over on human join just because the production GraphQL cosmetics websocket rejects the request +- HyFire2 itself also needed a game-side PlayerCamera compatibility fix so bots-only spectator setup no longer crashes after human team selection during observation runs After this cleanup, the branch should be understood as: @@ -159,7 +160,7 @@ HyFire2 and Zoo Game are not first-class game source trees inside this repo. Thi The concrete local game paths that were actually discovered and used during verification on this machine are: -- HyFire2: `/home/ab/GitHub/games/hyfire2` +- HyFire2: `/home/ab/GitHub/games/hyfire2-sdk-compat` - Zoo Game: `/home/ab/GitHub/games/hytopia/zoo-game/work1` These paths are machine-specific and do not belong in the repo-wide codebase inventory, but they do belong in this perf state/runbook so the next real-game benchmark does not require rediscovery. @@ -207,6 +208,7 @@ Bottom line: - the framework was exercised end-to-end - it produced usable data - it reached both synthetic and real-game scenarios +- HyFire2 human-join observation runs are now part of the validated real-game flow, provided the game repo is on its SDK-compat branch with the PlayerCamera hidden-node fix ## Branch Timeline diff --git a/packages/perf-tools/scripts/run-external-game-benchmark.sh b/packages/perf-tools/scripts/run-external-game-benchmark.sh index 4d0acc38..dee3da62 100755 --- a/packages/perf-tools/scripts/run-external-game-benchmark.sh +++ b/packages/perf-tools/scripts/run-external-game-benchmark.sh @@ -31,6 +31,14 @@ Options: --verbose Enable verbose benchmark logging Examples: + bash packages/perf-tools/scripts/run-external-game-benchmark.sh \ + --game-dir /home/ab/GitHub/games/hyfire2-sdk-compat \ + --preset hyfire2-bots \ + --client-url http://localhost:4173 \ + --server-cmd "AUTO_START_WITH_BOTS=true hytopia start" \ + --port 8082 \ + --output perf-results/hyfire2-under-test.json + bash packages/perf-tools/scripts/run-external-game-benchmark.sh \ --game-dir /home/ab/GitHub/games/hytopia/zoo-game/work1 \ --preset zoo-game-full \ @@ -43,6 +51,10 @@ Examples: --client-url http://localhost:4173 \ --cpu-throttle 4 \ --verbose + +For a long manual HyFire2 observation run instead of a measured benchmark: + cd /home/ab/GitHub/games/hyfire2-sdk-compat + PORT=8082 AUTO_START_WITH_BOTS=true hytopia start EOF } diff --git a/packages/perf-tools/scripts/setup-game.sh b/packages/perf-tools/scripts/setup-game.sh index d17f5689..2a016c6d 100755 --- a/packages/perf-tools/scripts/setup-game.sh +++ b/packages/perf-tools/scripts/setup-game.sh @@ -9,7 +9,7 @@ REPO_ROOT="$(cd "$SCRIPT_DIR/../../.." && pwd)" if [ -z "$1" ]; then echo "Usage: $0 " echo "Examples:" - echo " $0 /home/ab/GitHub/games/hyfire2" + echo " $0 /home/ab/GitHub/games/hyfire2-sdk-compat" echo " $0 /home/ab/GitHub/games/hytopia/zoo-game/work1" exit 1 fi From 614a48f5ea17396f76ae0460357560db29d6d9ab Mon Sep 17 00:00:00 2001 From: web3dev1337 <160291380+web3dev1337@users.noreply.github.com> Date: Sun, 8 Mar 2026 11:05:35 +1100 Subject: [PATCH 34/40] feat: add owned stack perf suite runner --- CODEBASE_DOCUMENTATION.md | 2 +- .../perf-branch-state-2026-03-06/FINAL.md | 17 + .../scripts/run-owned-stack-suite.sh | 402 ++++++++++++++++++ 3 files changed, 420 insertions(+), 1 deletion(-) create mode 100755 packages/perf-tools/scripts/run-owned-stack-suite.sh diff --git a/CODEBASE_DOCUMENTATION.md b/CODEBASE_DOCUMENTATION.md index 8d6f517b..f442449a 100644 --- a/CODEBASE_DOCUMENTATION.md +++ b/CODEBASE_DOCUMENTATION.md @@ -16,7 +16,7 @@ PROTOCOL: protocol/ - Packet schemas + definitions (@hytopia.com/server-protocol SDK: sdk/ - Git submodule → hytopiagg/sdk (build output lands here) EXAMPLES: sdk-examples/ - Reference games built with the SDK ASSETS: assets/release/ - Default game assets (audio, blocks, maps, models, particles, skyboxes, ui) -PERF: packages/perf-tools/ - Benchmark CLI + trace analysis (`hytopia-bench`), headless client metrics, synthetic + real-game presets (`zoo-game-full` single-client benchmark, `zoo-game-observe` 5-client joinable Zoo run), helper scripts for linking/running external games (including linked SDK runtime deps and repeatable HyFire2/Zoo Game workflows) +PERF: packages/perf-tools/ - Benchmark CLI + trace analysis (`hytopia-bench`), headless client metrics, synthetic + real-game presets (`zoo-game-full` single-client benchmark, `zoo-game-observe` 5-client joinable Zoo run), helper scripts for linking/running external games (including linked SDK runtime deps, repeatable HyFire2/Zoo Game workflows, and `run-owned-stack-suite.sh` for one-command multi-game runs against a chosen engine ref/PR) CONFIG: package.json - Monorepo root (npm workspaces) server/package.json - Server deps + build scripts server/tsconfig.json - Strict TS, path alias @/* → ./src/* diff --git a/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md b/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md index fed517f4..a79830cb 100644 --- a/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md +++ b/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md @@ -144,14 +144,31 @@ Core files: - [link-sdk.sh](/home/ab/GitHub/hytopia/work1/packages/perf-tools/scripts/link-sdk.sh) - [setup-game.sh](/home/ab/GitHub/hytopia/work1/packages/perf-tools/scripts/setup-game.sh) - [run-external-game-benchmark.sh](/home/ab/GitHub/hytopia/work1/packages/perf-tools/scripts/run-external-game-benchmark.sh) +- [run-owned-stack-suite.sh](/home/ab/GitHub/hytopia/work1/packages/perf-tools/scripts/run-owned-stack-suite.sh) What these do: - build the local SDK from this repo - link it into external game repos and install the linked SDK's external runtime deps - run a real-game preset end-to-end against an external game using the current source checkout under test +- run the core synthetic presets plus owned-game presets from one wrapper command against a chosen engine branch, commit, or PR number - let HyFire2 or Zoo Game run against local engine changes +The simplest “test this engine PR across our stack” entrypoint is now: + +```bash +bash packages/perf-tools/scripts/run-owned-stack-suite.sh \ + --engine-ref pr:2 \ + --client-url http://localhost:4173 +``` + +That wrapper can: + +- resolve a branch, commit, or `pr:` to a temporary engine worktree +- run internal synthetic presets with client metrics enabled +- run Zoo Game and HyFire2 through the external-game wrapper with the owned local paths baked in +- write all JSON outputs plus a per-run markdown summary into `packages/perf-tools/perf-results/owned-stack/` + Important clarification: HyFire2 and Zoo Game are not first-class game source trees inside this repo. This repo provides the engine plus the tooling to benchmark those games from their own directories. diff --git a/packages/perf-tools/scripts/run-owned-stack-suite.sh b/packages/perf-tools/scripts/run-owned-stack-suite.sh new file mode 100755 index 00000000..615634c0 --- /dev/null +++ b/packages/perf-tools/scripts/run-owned-stack-suite.sh @@ -0,0 +1,402 @@ +#!/bin/bash +set -euo pipefail + +SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)" +REPO_ROOT="$(cd "$SCRIPT_DIR/../../.." && pwd)" + +ENGINE_REPO="$REPO_ROOT" +ENGINE_REF="" +CLIENT_URL="http://localhost:4173" +CPU_THROTTLE="" +OUTPUT_ROOT="$REPO_ROOT/packages/perf-tools/perf-results/owned-stack" +INTERNAL_PRESETS="idle,stress,stress-walkthrough" +EXTERNAL_GAMES="zoo,hyfire2" +ZOO_DIR="/home/ab/GitHub/games/hytopia/zoo-game/work1" +ZOO_PRESET="zoo-game-full" +ZOO_PORT="9091" +HYFIRE2_DIR="/home/ab/GitHub/games/hyfire2-sdk-compat" +HYFIRE2_PRESET="hyfire2-bots" +HYFIRE2_PORT="8082" +HYFIRE2_SERVER_CMD="AUTO_START_WITH_BOTS=true hytopia start" +KEEP_WORKTREE="false" + +WORKTREE_DIR="" +ACTIVE_ENGINE_REPO="$ENGINE_REPO" +RESOLVED_COMMIT="" +RESOLVED_LABEL="" +SUMMARY_PATH="" + +declare -a SUMMARY_ROWS=() + +usage() { + cat <<'EOF' +Usage: + run-owned-stack-suite.sh [options] + +Runs the HYTOPIA perf stack against the owned games and core synthetic presets +using either the current checkout or a specific engine ref / PR. + +Options: + --engine-ref Git ref, commit, branch, or PR number / pr: + --engine-repo Engine repo to test (default: current repo) + --client-url Browser client URL for all client-side runs + --cpu-throttle Browser CPU throttle rate for client runs + --output-root Root directory for suite outputs + --internal-presets Comma-separated built-in presets, or none + --external-games Comma-separated games: zoo,hyfire2, or none + --zoo-dir Zoo Game repo/worktree + --zoo-preset Zoo preset to run + --zoo-port Zoo external server port + --hyfire2-dir HyFire2 repo/worktree + --hyfire2-preset HyFire2 preset to run + --hyfire2-port HyFire2 external server port + --keep-worktree Leave the temporary engine worktree on disk + -h, --help Show this help + +Examples: + bash packages/perf-tools/scripts/run-owned-stack-suite.sh \ + --engine-ref pr:2 \ + --client-url http://localhost:4173 + + bash packages/perf-tools/scripts/run-owned-stack-suite.sh \ + --engine-ref feature/blob-shadows \ + --cpu-throttle 4 \ + --output-root /tmp/hytopia-bench + + bash packages/perf-tools/scripts/run-owned-stack-suite.sh \ + --internal-presets idle,stress,stress-walkthrough,join-storm \ + --external-games zoo,hyfire2 +EOF +} + +sanitize_slug() { + echo "$1" | tr '/: ' '---' | tr -cd '[:alnum:]._-' | cut -c1-80 +} + +join_by() { + local sep="$1" + shift + local first="true" + + for item in "$@"; do + if [[ "$first" == "true" ]]; then + printf '%s' "$item" + first="false" + else + printf '%s%s' "$sep" "$item" + fi + done +} + +cleanup() { + if [[ -n "$WORKTREE_DIR" && -d "$WORKTREE_DIR" && "$KEEP_WORKTREE" != "true" ]]; then + git -C "$ENGINE_REPO" worktree remove --force "$WORKTREE_DIR" >/dev/null 2>&1 || true + fi +} + +trap cleanup EXIT INT TERM + +while [[ $# -gt 0 ]]; do + case "$1" in + --engine-ref) + ENGINE_REF="$2" + shift 2 + ;; + --engine-repo) + ENGINE_REPO="$(cd "$2" && pwd)" + ACTIVE_ENGINE_REPO="$ENGINE_REPO" + shift 2 + ;; + --client-url) + CLIENT_URL="$2" + shift 2 + ;; + --cpu-throttle) + CPU_THROTTLE="$2" + shift 2 + ;; + --output-root) + OUTPUT_ROOT="$2" + shift 2 + ;; + --internal-presets) + INTERNAL_PRESETS="$2" + shift 2 + ;; + --external-games) + EXTERNAL_GAMES="$2" + shift 2 + ;; + --zoo-dir) + ZOO_DIR="$(cd "$2" && pwd)" + shift 2 + ;; + --zoo-preset) + ZOO_PRESET="$2" + shift 2 + ;; + --zoo-port) + ZOO_PORT="$2" + shift 2 + ;; + --hyfire2-dir) + HYFIRE2_DIR="$(cd "$2" && pwd)" + shift 2 + ;; + --hyfire2-preset) + HYFIRE2_PRESET="$2" + shift 2 + ;; + --hyfire2-port) + HYFIRE2_PORT="$2" + shift 2 + ;; + --keep-worktree) + KEEP_WORKTREE="true" + shift + ;; + -h|--help) + usage + exit 0 + ;; + *) + echo "Unknown argument: $1" >&2 + echo "" >&2 + usage >&2 + exit 1 + ;; + esac +done + +if [[ ! -d "$ENGINE_REPO/.git" && ! -f "$ENGINE_REPO/.git" ]]; then + echo "Error: $ENGINE_REPO is not a git repo" >&2 + exit 1 +fi + +hydrate_worktree_dependencies() { + if [[ -z "$WORKTREE_DIR" || ! -d "$WORKTREE_DIR" ]]; then + return + fi + + local dep_dir="" + + for dep_dir in \ + node_modules \ + server/node_modules \ + client/node_modules \ + packages/perf-tools/node_modules + do + if [[ -d "$ENGINE_REPO/$dep_dir" && ! -e "$WORKTREE_DIR/$dep_dir" ]]; then + mkdir -p "$(dirname "$WORKTREE_DIR/$dep_dir")" + ln -s "$ENGINE_REPO/$dep_dir" "$WORKTREE_DIR/$dep_dir" + fi + done +} + +resolve_engine_checkout() { + if [[ -z "$ENGINE_REF" ]]; then + ACTIVE_ENGINE_REPO="$ENGINE_REPO" + RESOLVED_COMMIT="$(git -C "$ENGINE_REPO" rev-parse HEAD)" + local branch_name + branch_name="$(git -C "$ENGINE_REPO" rev-parse --abbrev-ref HEAD)" + RESOLVED_LABEL="$(sanitize_slug "${branch_name}-$(git -C "$ENGINE_REPO" rev-parse --short HEAD)")" + return + fi + + local fetch_target="" + + if [[ "$ENGINE_REF" =~ ^pr:[0-9]+$ ]]; then + fetch_target="pull/${ENGINE_REF#pr:}/head" + elif [[ "$ENGINE_REF" =~ ^[0-9]+$ ]]; then + fetch_target="pull/${ENGINE_REF}/head" + fi + + if [[ -n "$fetch_target" ]]; then + git -C "$ENGINE_REPO" fetch origin "$fetch_target" + RESOLVED_COMMIT="$(git -C "$ENGINE_REPO" rev-parse FETCH_HEAD)" + RESOLVED_LABEL="$(sanitize_slug "pr-${fetch_target#pull/}")" + RESOLVED_LABEL="${RESOLVED_LABEL%-head}" + elif git -C "$ENGINE_REPO" rev-parse --verify "${ENGINE_REF}^{commit}" >/dev/null 2>&1; then + RESOLVED_COMMIT="$(git -C "$ENGINE_REPO" rev-parse "${ENGINE_REF}^{commit}")" + RESOLVED_LABEL="$(sanitize_slug "${ENGINE_REF}-$(git -C "$ENGINE_REPO" rev-parse --short "$RESOLVED_COMMIT")")" + else + git -C "$ENGINE_REPO" fetch origin "$ENGINE_REF" + RESOLVED_COMMIT="$(git -C "$ENGINE_REPO" rev-parse FETCH_HEAD)" + RESOLVED_LABEL="$(sanitize_slug "${ENGINE_REF}-$(git -C "$ENGINE_REPO" rev-parse --short "$RESOLVED_COMMIT")")" + fi + + WORKTREE_DIR="$(mktemp -d "/tmp/hytopia-owned-stack-${RESOLVED_LABEL}-XXXXXX")" + git -C "$ENGINE_REPO" worktree add --detach "$WORKTREE_DIR" "$RESOLVED_COMMIT" >/dev/null + ACTIVE_ENGINE_REPO="$WORKTREE_DIR" + hydrate_worktree_dependencies +} + +run_and_capture() { + local label="$1" + local category="$2" + local output_path="$3" + shift 3 + + echo "" + echo "==> Running $label" + echo "Output: $output_path" + + set +e + "$@" + local status=$? + set -e + + SUMMARY_ROWS+=("| $label | $category | $status | $output_path |") + + if [[ $status -ne 0 ]]; then + echo "WARNING: $label failed with exit code $status" >&2 + fi + + return $status +} + +write_summary() { + local output_dir="$1" + local internal_display="$2" + local external_display="$3" + local resolved_ref="${ENGINE_REF:-current-checkout}" + + cat > "$SUMMARY_PATH" <> "$SUMMARY_PATH" + done + + cat >> "$SUMMARY_PATH" <&2 + exit 1 + ;; + esac + done +fi + +write_summary "$OUTPUT_DIR" "$internal_display" "$external_display" + +echo "" +echo "Suite summary: $SUMMARY_PATH" + +exit "$overall_status" From e258de2bed7f8f08193ab032db92508bc7b0bb60 Mon Sep 17 00:00:00 2001 From: web3dev1337 <160291380+web3dev1337@users.noreply.github.com> Date: Sun, 8 Mar 2026 18:42:59 +1100 Subject: [PATCH 35/40] feat: harden cross-ref perf benchmarking --- CODEBASE_DOCUMENTATION.md | 2 +- .../perf-branch-state-2026-03-06/FINAL.md | 15 + .../perf-tools/scripts/ensure-node-modules.sh | 123 ++++++++ packages/perf-tools/scripts/link-sdk.sh | 42 ++- .../scripts/run-external-game-benchmark.sh | 16 +- .../scripts/run-owned-stack-suite.sh | 123 +++++--- packages/perf-tools/scripts/setup-game.sh | 39 ++- packages/perf-tools/src/cli.ts | 92 +++++- .../src/reporters/ConsoleReporter.ts | 15 + .../perf-tools/src/reporters/JsonReporter.ts | 16 + .../src/runners/BaselineComparer.ts | 79 +++-- .../perf-tools/src/runners/BenchmarkRunner.ts | 64 ++++ .../perf-tools/src/runners/HeadlessClient.ts | 274 +++++++++++++++++- .../perf-tools/src/runners/MetricCollector.ts | 1 + 14 files changed, 813 insertions(+), 88 deletions(-) create mode 100644 packages/perf-tools/scripts/ensure-node-modules.sh diff --git a/CODEBASE_DOCUMENTATION.md b/CODEBASE_DOCUMENTATION.md index f442449a..a5bd4470 100644 --- a/CODEBASE_DOCUMENTATION.md +++ b/CODEBASE_DOCUMENTATION.md @@ -16,7 +16,7 @@ PROTOCOL: protocol/ - Packet schemas + definitions (@hytopia.com/server-protocol SDK: sdk/ - Git submodule → hytopiagg/sdk (build output lands here) EXAMPLES: sdk-examples/ - Reference games built with the SDK ASSETS: assets/release/ - Default game assets (audio, blocks, maps, models, particles, skyboxes, ui) -PERF: packages/perf-tools/ - Benchmark CLI + trace analysis (`hytopia-bench`), headless client metrics, synthetic + real-game presets (`zoo-game-full` single-client benchmark, `zoo-game-observe` 5-client joinable Zoo run), helper scripts for linking/running external games (including linked SDK runtime deps, repeatable HyFire2/Zoo Game workflows, and `run-owned-stack-suite.sh` for one-command multi-game runs against a chosen engine ref/PR) +PERF: packages/perf-tools/ - Benchmark CLI + trace analysis (`hytopia-bench`), headless client metrics, synthetic + real-game presets (`zoo-game-full` single-client benchmark, `zoo-game-observe` 5-client joinable Zoo run), helper scripts for linking/running external games (including linked SDK runtime deps, target-ref dependency prep via `ensure-node-modules.sh`, repeatable HyFire2/Zoo Game workflows, and `run-owned-stack-suite.sh` for one-command multi-game runs against a chosen engine ref/PR). Older engine refs without PerfHarness/PerfBridge now degrade to validated client-only reports plus compare-time metric skipping instead of misleading zero baselines. CONFIG: package.json - Monorepo root (npm workspaces) server/package.json - Server deps + build scripts server/tsconfig.json - Strict TS, path alias @/* → ./src/* diff --git a/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md b/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md index a79830cb..ae763097 100644 --- a/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md +++ b/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md @@ -141,6 +141,7 @@ Representative presets: Core files: +- [ensure-node-modules.sh](/home/ab/GitHub/hytopia/work1/packages/perf-tools/scripts/ensure-node-modules.sh) - [link-sdk.sh](/home/ab/GitHub/hytopia/work1/packages/perf-tools/scripts/link-sdk.sh) - [setup-game.sh](/home/ab/GitHub/hytopia/work1/packages/perf-tools/scripts/setup-game.sh) - [run-external-game-benchmark.sh](/home/ab/GitHub/hytopia/work1/packages/perf-tools/scripts/run-external-game-benchmark.sh) @@ -154,6 +155,15 @@ What these do: - run the core synthetic presets plus owned-game presets from one wrapper command against a chosen engine branch, commit, or PR number - let HyFire2 or Zoo Game run against local engine changes +Cross-ref hardening added after testing `RZDESIGN/hytopia-source@merged-all-prs-into-one`: + +- target engine worktrees no longer borrow current-branch `client/node_modules` or `server/node_modules` blindly +- dependency reuse only happens when the target package lockfile or manifest matches; otherwise the target ref gets its own install +- SDK linking for external-game runs now does a runtime `build:server` build instead of the full declaration/docs pipeline, so older engine refs do not fail just because their type/doc build is stale +- the suite auto-picks the actual free client port starting from `4173` and launches Vite with `--strictPort`, preventing silent `4173` -> `4174` drift +- benchmark JSON now records validation/capability state so missing snapshots are surfaced as warnings/issues instead of silently becoming zero baselines +- `compare` now skips non-shared metric families such as server snapshots or render counters when one side lacks them, instead of treating missing data as an improvement + The simplest “test this engine PR across our stack” entrypoint is now: ```bash @@ -169,6 +179,11 @@ That wrapper can: - run Zoo Game and HyFire2 through the external-game wrapper with the owned local paths baked in - write all JSON outputs plus a per-run markdown summary into `packages/perf-tools/perf-results/owned-stack/` +Important limitation: + +- very old engine refs can still produce client-only real-game reports if they predate PerfHarness server snapshots +- those runs are still valid for FPS/frame-time comparison when the client loads, but the framework now labels them that way explicitly instead of pretending they are full-stack apples-to-apples + Important clarification: HyFire2 and Zoo Game are not first-class game source trees inside this repo. This repo provides the engine plus the tooling to benchmark those games from their own directories. diff --git a/packages/perf-tools/scripts/ensure-node-modules.sh b/packages/perf-tools/scripts/ensure-node-modules.sh new file mode 100644 index 00000000..3a7c8aaa --- /dev/null +++ b/packages/perf-tools/scripts/ensure-node-modules.sh @@ -0,0 +1,123 @@ +#!/bin/bash +set -euo pipefail + +SOURCE_REPO="" +TARGET_REPO="" +PACKAGES="server,client,protocol" + +usage() { + cat <<'EOF' +Usage: + ensure-node-modules.sh --source-repo --target-repo [options] + +Options: + --source-repo Reference repo used for lockfile-compatible symlink reuse + --target-repo Engine repo/worktree whose dependencies should be prepared + --packages Comma-separated package dirs to prepare (default: server,client,protocol) + -h, --help Show this help +EOF +} + +while [[ $# -gt 0 ]]; do + case "$1" in + --source-repo) + SOURCE_REPO="$(cd "$2" && pwd)" + shift 2 + ;; + --target-repo) + TARGET_REPO="$(cd "$2" && pwd)" + shift 2 + ;; + --packages) + PACKAGES="$2" + shift 2 + ;; + -h|--help) + usage + exit 0 + ;; + *) + echo "Unknown argument: $1" >&2 + usage >&2 + exit 1 + ;; + esac +done + +if [[ -z "$SOURCE_REPO" || -z "$TARGET_REPO" ]]; then + usage >&2 + exit 1 +fi + +if [[ ! -d "$SOURCE_REPO" || ! -d "$TARGET_REPO" ]]; then + echo "Error: source and target repos must both exist" >&2 + exit 1 +fi + +ensure_package_deps() { + local package_rel="$1" + local source_dir="$SOURCE_REPO/$package_rel" + local target_dir="$TARGET_REPO/$package_rel" + local source_manifest="$source_dir/package.json" + local target_manifest="$target_dir/package.json" + local source_lock="$source_dir/package-lock.json" + local target_lock="$target_dir/package-lock.json" + local target_node_modules="$target_dir/node_modules" + local can_reuse="false" + + if [[ ! -f "$target_manifest" ]]; then + return + fi + + if [[ -d "$source_dir/node_modules" ]]; then + if [[ -f "$source_lock" && -f "$target_lock" ]] && cmp -s "$source_lock" "$target_lock"; then + can_reuse="true" + elif [[ ! -f "$source_lock" && ! -f "$target_lock" && -f "$source_manifest" ]] && cmp -s "$source_manifest" "$target_manifest"; then + can_reuse="true" + fi + fi + + if [[ -L "$target_node_modules" ]]; then + local target_link + target_link="$(readlink "$target_node_modules")" + + if [[ -n "$target_link" && "$target_link" == "$source_dir/node_modules" && "$can_reuse" == "true" ]]; then + return + fi + + rm -f "$target_node_modules" + fi + + if [[ -d "$target_node_modules" ]]; then + return + fi + + if [[ "$can_reuse" == "true" ]]; then + mkdir -p "$target_dir" + ln -s "$source_dir/node_modules" "$target_node_modules" + echo "Reused $package_rel/node_modules from $SOURCE_REPO" + return + fi + + echo "Installing dependencies in $target_dir" + + if [[ -f "$target_lock" ]]; then + ( + cd "$target_dir" + npm ci --no-audit --no-fund + ) + else + ( + cd "$target_dir" + npm install --no-audit --no-fund + ) + fi +} + +IFS=',' read -r -a PACKAGE_ARRAY <<< "$PACKAGES" + +for package_rel in "${PACKAGE_ARRAY[@]}"; do + package_rel="${package_rel// /}" + [[ -z "$package_rel" ]] && continue + ensure_package_deps "$package_rel" +done diff --git a/packages/perf-tools/scripts/link-sdk.sh b/packages/perf-tools/scripts/link-sdk.sh index a8ca68d5..9030faa7 100755 --- a/packages/perf-tools/scripts/link-sdk.sh +++ b/packages/perf-tools/scripts/link-sdk.sh @@ -1,13 +1,49 @@ #!/bin/bash # Build modified SDK and npm-link it for use by external games -set -e +set -euo pipefail SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)" -REPO_ROOT="$(cd "$SCRIPT_DIR/../../.." && pwd)" +DEFAULT_REPO_ROOT="$(cd "$SCRIPT_DIR/../../.." && pwd)" +REPO_ROOT="$DEFAULT_REPO_ROOT" + +while [[ $# -gt 0 ]]; do + case "$1" in + --engine-repo) + REPO_ROOT="$(cd "$2" && pwd)" + shift 2 + ;; + -h|--help) + echo "Usage: $0 [--engine-repo ]" + exit 0 + ;; + *) + echo "Unknown argument: $1" >&2 + exit 1 + ;; + esac +done + +bash "$SCRIPT_DIR/ensure-node-modules.sh" \ + --source-repo "$DEFAULT_REPO_ROOT" \ + --target-repo "$REPO_ROOT" \ + --packages "server,protocol,sdk" echo "Building SDK from $REPO_ROOT/server ..." cd "$REPO_ROOT/server" -npm run build + +SERVER_BUILD_SCRIPT=$(node - <<'NODE' +const pkg = require('./package.json'); + +if (pkg.scripts && pkg.scripts['build:server']) { + console.log('build:server'); + process.exit(0); +} + +console.log('build'); +NODE +) + +npm run "$SERVER_BUILD_SCRIPT" echo "Linking SDK from $REPO_ROOT/sdk ..." cd "$REPO_ROOT/sdk" diff --git a/packages/perf-tools/scripts/run-external-game-benchmark.sh b/packages/perf-tools/scripts/run-external-game-benchmark.sh index dee3da62..35dae576 100755 --- a/packages/perf-tools/scripts/run-external-game-benchmark.sh +++ b/packages/perf-tools/scripts/run-external-game-benchmark.sh @@ -7,6 +7,7 @@ REPO_ROOT="$(cd "$SCRIPT_DIR/../../.." && pwd)" GAME_DIR="" PRESET="" CLIENT_URL="" +ENGINE_REPO="$REPO_ROOT" SERVER_CMD="npm start" PORT="9091" CPU_THROTTLE="" @@ -24,6 +25,7 @@ Required: --client-url Client dev/prod URL used by the benchmark browser Options: + --engine-repo Engine repo/worktree whose SDK/client is under test --server-cmd Command used to start the external game server (default: npm start) --port HTTPS port for the external game server (default: 9091) --cpu-throttle Browser CPU throttle rate (example: 4, 16) @@ -32,6 +34,7 @@ Options: Examples: bash packages/perf-tools/scripts/run-external-game-benchmark.sh \ + --engine-repo /home/ab/GitHub/hytopia/work1 \ --game-dir /home/ab/GitHub/games/hyfire2-sdk-compat \ --preset hyfire2-bots \ --client-url http://localhost:4173 \ @@ -40,12 +43,14 @@ Examples: --output perf-results/hyfire2-under-test.json bash packages/perf-tools/scripts/run-external-game-benchmark.sh \ + --engine-repo /home/ab/GitHub/hytopia/work1 \ --game-dir /home/ab/GitHub/games/hytopia/zoo-game/work1 \ --preset zoo-game-full \ --client-url http://localhost:4173 \ --output perf-results/zoo-pr2.json bash packages/perf-tools/scripts/run-external-game-benchmark.sh \ + --engine-repo /home/ab/GitHub/hytopia/work1 \ --game-dir /home/ab/GitHub/games/hytopia/zoo-game/work1 \ --preset zoo-game-observe \ --client-url http://localhost:4173 \ @@ -72,6 +77,10 @@ while [[ $# -gt 0 ]]; do CLIENT_URL="$2" shift 2 ;; + --engine-repo) + ENGINE_REPO="$(cd "$2" && pwd)" + shift 2 + ;; --server-cmd) SERVER_CMD="$2" shift 2 @@ -126,9 +135,10 @@ cleanup() { trap cleanup EXIT INT TERM -echo "==> Linking current SDK checkout into external game" -bash "$SCRIPT_DIR/link-sdk.sh" -bash "$SCRIPT_DIR/setup-game.sh" "$GAME_DIR" +echo "==> Linking SDK checkout into external game" +echo "Engine repo: $ENGINE_REPO" +bash "$SCRIPT_DIR/link-sdk.sh" --engine-repo "$ENGINE_REPO" +bash "$SCRIPT_DIR/setup-game.sh" "$GAME_DIR" --engine-repo "$ENGINE_REPO" echo "" echo "==> Starting external game server" diff --git a/packages/perf-tools/scripts/run-owned-stack-suite.sh b/packages/perf-tools/scripts/run-owned-stack-suite.sh index 615634c0..097a4be5 100755 --- a/packages/perf-tools/scripts/run-owned-stack-suite.sh +++ b/packages/perf-tools/scripts/run-owned-stack-suite.sh @@ -3,10 +3,12 @@ set -euo pipefail SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)" REPO_ROOT="$(cd "$SCRIPT_DIR/../../.." && pwd)" +TOOLS_REPO="$REPO_ROOT" ENGINE_REPO="$REPO_ROOT" ENGINE_REF="" -CLIENT_URL="http://localhost:4173" +CLIENT_URL="" +CLIENT_PORT="4173" CPU_THROTTLE="" OUTPUT_ROOT="$REPO_ROOT/packages/perf-tools/perf-results/owned-stack" INTERNAL_PRESETS="idle,stress,stress-walkthrough" @@ -25,6 +27,8 @@ ACTIVE_ENGINE_REPO="$ENGINE_REPO" RESOLVED_COMMIT="" RESOLVED_LABEL="" SUMMARY_PATH="" +CLIENT_SERVER_PID="" +CLIENT_SERVER_LOG="" declare -a SUMMARY_ROWS=() @@ -40,6 +44,7 @@ Options: --engine-ref Git ref, commit, branch, or PR number / pr: --engine-repo Engine repo to test (default: current repo) --client-url Browser client URL for all client-side runs + --client-port Port to use when auto-launching client dev server --cpu-throttle Browser CPU throttle rate for client runs --output-root Root directory for suite outputs --internal-presets Comma-separated built-in presets, or none @@ -56,7 +61,7 @@ Options: Examples: bash packages/perf-tools/scripts/run-owned-stack-suite.sh \ --engine-ref pr:2 \ - --client-url http://localhost:4173 + --client-port 4173 bash packages/perf-tools/scripts/run-owned-stack-suite.sh \ --engine-ref feature/blob-shadows \ @@ -89,6 +94,11 @@ join_by() { } cleanup() { + if [[ -n "$CLIENT_SERVER_PID" ]]; then + kill -TERM "-$CLIENT_SERVER_PID" >/dev/null 2>&1 || true + wait "$CLIENT_SERVER_PID" >/dev/null 2>&1 || true + fi + if [[ -n "$WORKTREE_DIR" && -d "$WORKTREE_DIR" && "$KEEP_WORKTREE" != "true" ]]; then git -C "$ENGINE_REPO" worktree remove --force "$WORKTREE_DIR" >/dev/null 2>&1 || true fi @@ -111,6 +121,10 @@ while [[ $# -gt 0 ]]; do CLIENT_URL="$2" shift 2 ;; + --client-port) + CLIENT_PORT="$2" + shift 2 + ;; --cpu-throttle) CPU_THROTTLE="$2" shift 2 @@ -173,24 +187,45 @@ if [[ ! -d "$ENGINE_REPO/.git" && ! -f "$ENGINE_REPO/.git" ]]; then exit 1 fi -hydrate_worktree_dependencies() { - if [[ -z "$WORKTREE_DIR" || ! -d "$WORKTREE_DIR" ]]; then +prepare_engine_checkout() { + bash "$TOOLS_REPO/packages/perf-tools/scripts/ensure-node-modules.sh" \ + --source-repo "$ENGINE_REPO" \ + --target-repo "$ACTIVE_ENGINE_REPO" \ + --packages "server,client,protocol" +} + +start_client_server() { + if [[ -n "$CLIENT_URL" ]]; then return fi - local dep_dir="" - - for dep_dir in \ - node_modules \ - server/node_modules \ - client/node_modules \ - packages/perf-tools/node_modules - do - if [[ -d "$ENGINE_REPO/$dep_dir" && ! -e "$WORKTREE_DIR/$dep_dir" ]]; then - mkdir -p "$(dirname "$WORKTREE_DIR/$dep_dir")" - ln -s "$ENGINE_REPO/$dep_dir" "$WORKTREE_DIR/$dep_dir" + while lsof -iTCP:"$CLIENT_PORT" -sTCP:LISTEN -P -n >/dev/null 2>&1; do + CLIENT_PORT="$((CLIENT_PORT + 1))" + done + + CLIENT_URL="http://localhost:$CLIENT_PORT" + CLIENT_SERVER_LOG="$OUTPUT_DIR/client-dev.log" + + ( + cd "$ACTIVE_ENGINE_REPO/client" + exec setsid npm run dev -- --host 0.0.0.0 --port "$CLIENT_PORT" --strictPort + ) >"$CLIENT_SERVER_LOG" 2>&1 & + CLIENT_SERVER_PID=$! + + for _ in $(seq 1 180); do + if curl -sf "$CLIENT_URL" >/dev/null 2>&1; then + return fi + + sleep 1 done + + echo "Error: client dev server did not become healthy at $CLIENT_URL" >&2 + exit 1 +} + +can_run_internal_presets() { + [[ -f "$ACTIVE_ENGINE_REPO/server/src/perf-harness.ts" ]] } resolve_engine_checkout() { @@ -228,7 +263,6 @@ resolve_engine_checkout() { WORKTREE_DIR="$(mktemp -d "/tmp/hytopia-owned-stack-${RESOLVED_LABEL}-XXXXXX")" git -C "$ENGINE_REPO" worktree add --detach "$WORKTREE_DIR" "$RESOLVED_COMMIT" >/dev/null ACTIVE_ENGINE_REPO="$WORKTREE_DIR" - hydrate_worktree_dependencies } run_and_capture() { @@ -297,11 +331,14 @@ EOF } resolve_engine_checkout +prepare_engine_checkout OUTPUT_DIR="$OUTPUT_ROOT/$RESOLVED_LABEL-$(date +%Y%m%d-%H%M%S)" SUMMARY_PATH="$OUTPUT_DIR/README.md" mkdir -p "$OUTPUT_DIR" +start_client_server + IFS=',' read -r -a INTERNAL_PRESET_ARRAY <<< "$INTERNAL_PRESETS" IFS=',' read -r -a EXTERNAL_GAME_ARRAY <<< "$EXTERNAL_GAMES" @@ -319,29 +356,39 @@ fi echo "Engine checkout: $ACTIVE_ENGINE_REPO" echo "Resolved commit: $RESOLVED_COMMIT" echo "Output dir: $OUTPUT_DIR" +echo "Client URL: $CLIENT_URL" overall_status=0 if [[ "$INTERNAL_PRESETS" != "none" ]]; then - for preset in "${INTERNAL_PRESET_ARRAY[@]}"; do - [[ -z "$preset" ]] && continue - - cmd=( - npx tsx src/cli.ts run - --preset "$preset" - --with-client - --client-dev-url "$CLIENT_URL" - --output "$OUTPUT_DIR/${preset}.json" - ) - - if [[ -n "$CPU_THROTTLE" ]]; then - cmd+=(--cpu-throttle "$CPU_THROTTLE") - fi - - if ! run_and_capture "$preset" "internal" "$OUTPUT_DIR/${preset}.json" bash -lc "cd '$ACTIVE_ENGINE_REPO/packages/perf-tools' && ${cmd[*]@Q}"; then - overall_status=1 - fi - done + if can_run_internal_presets; then + for preset in "${INTERNAL_PRESET_ARRAY[@]}"; do + [[ -z "$preset" ]] && continue + + cmd=( + npx tsx src/cli.ts run + --preset "$preset" + --server-cwd "$ACTIVE_ENGINE_REPO/server" + --with-client + --client-dev-url "$CLIENT_URL" + --output "$OUTPUT_DIR/${preset}.json" + ) + + if [[ -n "$CPU_THROTTLE" ]]; then + cmd+=(--cpu-throttle "$CPU_THROTTLE") + fi + + if ! run_and_capture "$preset" "internal" "$OUTPUT_DIR/${preset}.json" bash -lc "cd '$TOOLS_REPO/packages/perf-tools' && ${cmd[*]@Q}"; then + overall_status=1 + fi + done + else + echo "WARNING: skipping internal presets because $ACTIVE_ENGINE_REPO does not contain perf-harness support" >&2 + for preset in "${INTERNAL_PRESET_ARRAY[@]}"; do + [[ -z "$preset" ]] && continue + SUMMARY_ROWS+=("| $preset | internal | skipped | perf-harness missing |") + done + fi fi if [[ "$EXTERNAL_GAMES" != "none" ]]; then @@ -351,7 +398,8 @@ if [[ "$EXTERNAL_GAMES" != "none" ]]; then case "$game" in zoo) game_cmd=( - bash "$ACTIVE_ENGINE_REPO/packages/perf-tools/scripts/run-external-game-benchmark.sh" + bash "$TOOLS_REPO/packages/perf-tools/scripts/run-external-game-benchmark.sh" + --engine-repo "$ACTIVE_ENGINE_REPO" --game-dir "$ZOO_DIR" --preset "$ZOO_PRESET" --client-url "$CLIENT_URL" @@ -369,7 +417,8 @@ if [[ "$EXTERNAL_GAMES" != "none" ]]; then ;; hyfire2) game_cmd=( - bash "$ACTIVE_ENGINE_REPO/packages/perf-tools/scripts/run-external-game-benchmark.sh" + bash "$TOOLS_REPO/packages/perf-tools/scripts/run-external-game-benchmark.sh" + --engine-repo "$ACTIVE_ENGINE_REPO" --game-dir "$HYFIRE2_DIR" --preset "$HYFIRE2_PRESET" --client-url "$CLIENT_URL" diff --git a/packages/perf-tools/scripts/setup-game.sh b/packages/perf-tools/scripts/setup-game.sh index 2a016c6d..5bbb2833 100755 --- a/packages/perf-tools/scripts/setup-game.sh +++ b/packages/perf-tools/scripts/setup-game.sh @@ -1,21 +1,48 @@ #!/bin/bash # Usage: ./setup-game.sh # Links our modified SDK into a game directory -set -e +set -euo pipefail SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)" -REPO_ROOT="$(cd "$SCRIPT_DIR/../../.." && pwd)" +DEFAULT_REPO_ROOT="$(cd "$SCRIPT_DIR/../../.." && pwd)" +REPO_ROOT="$DEFAULT_REPO_ROOT" +GAME_DIR="" -if [ -z "$1" ]; then - echo "Usage: $0 " +usage() { + echo "Usage: $0 [--engine-repo ]" echo "Examples:" echo " $0 /home/ab/GitHub/games/hyfire2-sdk-compat" echo " $0 /home/ab/GitHub/games/hytopia/zoo-game/work1" +} + +while [[ $# -gt 0 ]]; do + case "$1" in + --engine-repo) + REPO_ROOT="$(cd "$2" && pwd)" + shift 2 + ;; + -h|--help) + usage + exit 0 + ;; + *) + if [[ -z "$GAME_DIR" ]]; then + GAME_DIR="$(cd "$1" && pwd)" + shift + else + echo "Unknown argument: $1" >&2 + usage >&2 + exit 1 + fi + ;; + esac +done + +if [[ -z "$GAME_DIR" ]]; then + usage exit 1 fi -GAME_DIR="$(cd "$1" && pwd)" - if [ ! -f "$GAME_DIR/package.json" ]; then echo "Error: No package.json found in $GAME_DIR" exit 1 diff --git a/packages/perf-tools/src/cli.ts b/packages/perf-tools/src/cli.ts index 64814c03..459e65a8 100644 --- a/packages/perf-tools/src/cli.ts +++ b/packages/perf-tools/src/cli.ts @@ -34,7 +34,7 @@ program .option('--no-perf-api', 'Skip PerfHarness API, use only OS-level monitoring') .option('--log-file ', 'Capture server stdout/stderr to file') .option('--with-client', 'Launch headless browser client and collect client-side metrics') - .option('--client-dev-url ', 'URL for the Vite client dev server', 'http://localhost:5173') + .option('--client-dev-url ', 'URL for the Vite client dev server', 'http://localhost:4173') .option('--cpu-throttle ', 'Apply browser CPU throttle rate (1=no throttle, 4=mid mobile, 16=low-end)', parseFloat) .option('--external-server ', 'Use an already-running external server (skip server startup)') .option('--verbose', 'Enable verbose logging') @@ -79,7 +79,11 @@ program consoleReporter.reportBenchmark(result); - if (options.baseline) { + if (!result.validation.valid) { + process.exitCode = 1; + } + + if (options.baseline && result.validation.valid) { const baseline = BaselineComparer.loadBaseline(options.baseline); const comparer = new BaselineComparer(); const comparison = comparer.compare(baseline, result.baseline, scenario.name); @@ -89,6 +93,8 @@ program if (comparison.overallStatus === 'fail') { process.exitCode = 1; } + } else if (options.baseline && !result.validation.valid) { + console.error('Skipping baseline comparison because the new run is invalid.'); } if (options.output) { @@ -115,15 +121,65 @@ program .option('--fail ', 'Failure threshold percentage', '15') .option('--fail-on-regression', 'Exit with code 1 if any metric regresses beyond fail threshold') .action((beforePath, afterPath, options) => { - const before = BaselineComparer.loadBaseline(beforePath); - const after = BaselineComparer.loadBaseline(afterPath); + const beforeInput = BaselineComparer.loadInput(beforePath); + const afterInput = BaselineComparer.loadInput(afterPath); + const before = beforeInput.baseline; + const after = afterInput.baseline; const comparer = new BaselineComparer({ warningThresholdPct: parseFloat(options.warn), failThresholdPct: parseFloat(options.fail), }); - const comparison = comparer.compare(before, after, `${path.basename(beforePath)} vs ${path.basename(afterPath)}`); + if (beforeInput.validation?.valid === false || afterInput.validation?.valid === false) { + console.error('Cannot compare invalid benchmark reports.'); + + if (beforeInput.validation?.valid === false) { + console.error(` ${beforePath}`); + for (const issue of beforeInput.validation.issues ?? []) { + console.error(` - ${issue}`); + } + } + + if (afterInput.validation?.valid === false) { + console.error(` ${afterPath}`); + for (const issue of afterInput.validation.issues ?? []) { + console.error(` - ${issue}`); + } + } + + process.exit(1); + } + + const includeServerMetrics = hasServerMetrics(beforeInput) && hasServerMetrics(afterInput); + const includeClientMetrics = hasClientMetrics(beforeInput) && hasClientMetrics(afterInput); + const includeClientRenderMetrics = includeClientMetrics && hasClientRenderMetrics(beforeInput) && hasClientRenderMetrics(afterInput); + + if (!includeServerMetrics && !includeClientMetrics) { + console.error('Cannot compare these reports because they do not share any comparable metric categories.'); + process.exit(1); + } + + if (!includeServerMetrics) { + console.log('Skipping server metrics: one or both reports lack server snapshots.'); + } + + if (!includeClientMetrics) { + console.log('Skipping client metrics: one or both reports lack client snapshots.'); + } else if (!includeClientRenderMetrics) { + console.log('Skipping client draw-call and triangle metrics: one or both reports lack usable render counters.'); + } + + const comparison = comparer.compare( + before, + after, + `${path.basename(beforePath)} vs ${path.basename(afterPath)}`, + { + includeServerMetrics, + includeClientMetrics, + includeClientRenderMetrics, + }, + ); const reporter = new ConsoleReporter(); @@ -157,3 +213,29 @@ program }); program.parse(); + +function hasServerMetrics(input: ReturnType): boolean { + if ((input.metrics?.serverSnapshotCount ?? 0) > 0) { + return true; + } + + return input.baseline.avgTickMs > 0 || Object.keys(input.baseline.operations ?? {}).length > 0 || input.baseline.network !== undefined; +} + +function hasClientMetrics(input: ReturnType): boolean { + if ((input.metrics?.clientSnapshotCount ?? 0) > 0) { + return true; + } + + return input.baseline.client !== undefined || input.baseline.avgFps !== undefined; +} + +function hasClientRenderMetrics(input: ReturnType): boolean { + const client = input.baseline.client; + + if (!client) { + return false; + } + + return client.avgDrawCalls > 0 || client.maxDrawCalls > 0 || client.avgTriangles > 0 || client.maxTriangles > 0; +} diff --git a/packages/perf-tools/src/reporters/ConsoleReporter.ts b/packages/perf-tools/src/reporters/ConsoleReporter.ts index 1b158ade..433f0048 100644 --- a/packages/perf-tools/src/reporters/ConsoleReporter.ts +++ b/packages/perf-tools/src/reporters/ConsoleReporter.ts @@ -83,6 +83,21 @@ export default class ConsoleReporter { } console.log(''); + + if (result.validation.warnings.length > 0 || result.validation.issues.length > 0) { + console.log('Validation:'); + + for (const warning of result.validation.warnings) { + console.log(` WARN ${warning}`); + } + + for (const issue of result.validation.issues) { + console.log(` FAIL ${issue}`); + } + + console.log(` Overall: ${result.validation.valid ? 'VALID' : 'INVALID'}`); + console.log(''); + } } public reportComparison(comparison: ComparisonResult): void { diff --git a/packages/perf-tools/src/reporters/JsonReporter.ts b/packages/perf-tools/src/reporters/JsonReporter.ts index 7d99e921..f6387037 100644 --- a/packages/perf-tools/src/reporters/JsonReporter.ts +++ b/packages/perf-tools/src/reporters/JsonReporter.ts @@ -15,6 +15,16 @@ export interface JsonReport { serverSnapshotCount: number; clientSnapshotCount: number; }; + capabilities?: { + serverMetrics: boolean; + clientMetrics: boolean; + clientMetricSources: string[]; + }; + validation?: { + valid: boolean; + warnings: string[]; + issues: string[]; + }; } export default class JsonReporter { @@ -32,6 +42,12 @@ export default class JsonReporter { serverSnapshotCount: result.metrics.serverSnapshots.length, clientSnapshotCount: result.metrics.clientSnapshots.length, }, + capabilities: { + serverMetrics: result.capabilities.serverMetrics, + clientMetrics: result.capabilities.clientMetrics, + clientMetricSources: result.capabilities.clientMetricSources, + }, + validation: result.validation, }; } diff --git a/packages/perf-tools/src/runners/BaselineComparer.ts b/packages/perf-tools/src/runners/BaselineComparer.ts index 27134711..a81c802d 100644 --- a/packages/perf-tools/src/runners/BaselineComparer.ts +++ b/packages/perf-tools/src/runners/BaselineComparer.ts @@ -60,6 +60,25 @@ export interface BaselineComparerOptions { failThresholdPct?: number; } +export interface ComparisonScope { + includeServerMetrics?: boolean; + includeClientMetrics?: boolean; + includeClientRenderMetrics?: boolean; +} + +export interface LoadedBenchmarkInput { + baseline: BaselineResult; + metrics?: { + serverSnapshotCount?: number; + clientSnapshotCount?: number; + }; + validation?: { + valid?: boolean; + warnings?: string[]; + issues?: string[]; + }; +} + export default class BaselineComparer { private _warningPct: number; private _failPct: number; @@ -69,35 +88,50 @@ export default class BaselineComparer { this._failPct = options?.failThresholdPct ?? 15; } - public compare(baseline: BaselineResult, current: BaselineResult, scenarioName: string = 'benchmark'): ComparisonResult { + public compare( + baseline: BaselineResult, + current: BaselineResult, + scenarioName: string = 'benchmark', + scope?: ComparisonScope, + ): ComparisonResult { const entries: ComparisonEntry[] = []; + const includeServerMetrics = scope?.includeServerMetrics ?? true; + const includeClientMetrics = scope?.includeClientMetrics ?? true; + const includeClientRenderMetrics = scope?.includeClientRenderMetrics ?? includeClientMetrics; + + if (includeServerMetrics) { + entries.push(this._compareMetric('avgTickMs', baseline.avgTickMs, current.avgTickMs)); + entries.push(this._compareMetric('maxTickMs', baseline.maxTickMs, current.maxTickMs)); + entries.push(this._compareMetric('p95TickMs', baseline.p95TickMs, current.p95TickMs)); + entries.push(this._compareMetric('p99TickMs', baseline.p99TickMs, current.p99TickMs)); + entries.push(this._compareMetric('ticksOverBudgetPct', baseline.ticksOverBudgetPct, current.ticksOverBudgetPct)); + entries.push(this._compareMetric('avgMemoryMb', baseline.avgMemoryMb, current.avgMemoryMb)); + } - entries.push(this._compareMetric('avgTickMs', baseline.avgTickMs, current.avgTickMs)); - entries.push(this._compareMetric('maxTickMs', baseline.maxTickMs, current.maxTickMs)); - entries.push(this._compareMetric('p95TickMs', baseline.p95TickMs, current.p95TickMs)); - entries.push(this._compareMetric('p99TickMs', baseline.p99TickMs, current.p99TickMs)); - entries.push(this._compareMetric('ticksOverBudgetPct', baseline.ticksOverBudgetPct, current.ticksOverBudgetPct)); - entries.push(this._compareMetric('avgMemoryMb', baseline.avgMemoryMb, current.avgMemoryMb)); - - if (baseline.avgFps !== undefined && current.avgFps !== undefined) { + if (includeClientMetrics && baseline.avgFps !== undefined && current.avgFps !== undefined) { entries.push(this._compareMetric('avgFps', baseline.avgFps, current.avgFps, true)); } - if (baseline.client && current.client) { + if (includeClientMetrics && baseline.client && current.client) { entries.push(this._compareMetric('client.avgFps', baseline.client.avgFps, current.client.avgFps, true)); entries.push(this._compareMetric('client.minFps', baseline.client.minFps, current.client.minFps, true)); - entries.push(this._compareMetric('client.avgDrawCalls', baseline.client.avgDrawCalls, current.client.avgDrawCalls)); - entries.push(this._compareMetric('client.avgTriangles', baseline.client.avgTriangles, current.client.avgTriangles)); entries.push(this._compareMetric('client.avgFrameTimeMs', baseline.client.avgFrameTimeMs, current.client.avgFrameTimeMs)); + + if (includeClientRenderMetrics) { + entries.push(this._compareMetric('client.avgDrawCalls', baseline.client.avgDrawCalls, current.client.avgDrawCalls)); + entries.push(this._compareMetric('client.avgTriangles', baseline.client.avgTriangles, current.client.avgTriangles)); + } } - if (baseline.network && current.network) { + if (includeServerMetrics && baseline.network && current.network) { entries.push(this._compareMetric('net.maxBytesSentPerSecond', baseline.network.maxBytesSentPerSecond, current.network.maxBytesSentPerSecond)); entries.push(this._compareMetric('net.avgBytesSentPerSecond', baseline.network.avgBytesSentPerSecond, current.network.avgBytesSentPerSecond)); entries.push(this._compareMetric('net.avgSerializationMs', baseline.network.avgSerializationMs, current.network.avgSerializationMs)); } - const allBaselineOps = new Set([...Object.keys(baseline.operations ?? {}), ...Object.keys(current.operations ?? {})]); + const allBaselineOps = includeServerMetrics + ? new Set([...Object.keys(baseline.operations ?? {}), ...Object.keys(current.operations ?? {})]) + : new Set(); for (const op of allBaselineOps) { if (baseline.operations?.[op] && current.operations?.[op]) { @@ -121,16 +155,25 @@ export default class BaselineComparer { }; } - public static loadBaseline(filePath: string): BaselineResult { + public static loadInput(filePath: string): LoadedBenchmarkInput { const content = fs.readFileSync(filePath, 'utf-8'); const data = JSON.parse(content); - // Support both raw baseline files and full report files (which have a .baseline field) if (data.baseline && typeof data.baseline === 'object' && 'avgTickMs' in data.baseline) { - return data.baseline as BaselineResult; + return { + baseline: data.baseline as BaselineResult, + metrics: data.metrics, + validation: data.validation, + }; } - return data as BaselineResult; + return { + baseline: data as BaselineResult, + }; + } + + public static loadBaseline(filePath: string): BaselineResult { + return BaselineComparer.loadInput(filePath).baseline; } public static saveBaseline(filePath: string, baseline: BaselineResult): void { diff --git a/packages/perf-tools/src/runners/BenchmarkRunner.ts b/packages/perf-tools/src/runners/BenchmarkRunner.ts index 62011821..a48d10fd 100644 --- a/packages/perf-tools/src/runners/BenchmarkRunner.ts +++ b/packages/perf-tools/src/runners/BenchmarkRunner.ts @@ -32,6 +32,8 @@ export interface BenchmarkResult { processMetrics?: ProcessMetrics; durationMs: number; phaseResults: PhaseResult[]; + capabilities: BenchmarkCapabilities; + validation: BenchmarkValidation; } export interface PhaseResult { @@ -40,6 +42,18 @@ export interface PhaseResult { collected: boolean; } +export interface BenchmarkCapabilities { + serverMetrics: boolean; + clientMetrics: boolean; + clientMetricSources: Array<'perf_bridge' | 'webgl_fallback'>; +} + +export interface BenchmarkValidation { + valid: boolean; + warnings: string[]; + issues: string[]; +} + export default class BenchmarkRunner { private _options: Required; private _collector: MetricCollector; @@ -173,6 +187,8 @@ export default class BenchmarkRunner { const metrics = this._collector.stopCollecting(); const baseline = this._buildBaseline(metrics); + const capabilities = this._buildCapabilities(metrics); + const validation = this._buildValidation(metrics, capabilities, scenario); return { scenario, @@ -181,6 +197,8 @@ export default class BenchmarkRunner { processMetrics, durationMs: Date.now() - startTime, phaseResults, + capabilities, + validation, }; } @@ -625,6 +643,52 @@ export default class BenchmarkRunner { } } + private _buildCapabilities(metrics: CollectedMetrics): BenchmarkCapabilities { + const clientMetricSources = Array.from(new Set( + metrics.clientSnapshots + .map(snapshot => snapshot.source) + .filter((source): source is 'perf_bridge' | 'webgl_fallback' => source === 'perf_bridge' || source === 'webgl_fallback'), + )); + + return { + serverMetrics: metrics.serverSnapshots.length > 0, + clientMetrics: metrics.clientSnapshots.length > 0, + clientMetricSources, + }; + } + + private _buildValidation( + metrics: CollectedMetrics, + capabilities: BenchmarkCapabilities, + scenario: Scenario, + ): BenchmarkValidation { + const warnings: string[] = []; + const issues: string[] = []; + const collectedPhaseCount = scenario.phases.filter(phase => phase.collect).length; + + if (collectedPhaseCount > 0 && !capabilities.serverMetrics && !capabilities.clientMetrics) { + issues.push('No benchmark snapshots were collected. The target client/server likely failed to expose metrics or failed to load.'); + } + + if (this._options.withClient && collectedPhaseCount > 0 && !capabilities.clientMetrics) { + issues.push('Client metrics were requested but no client snapshots were collected.'); + } + + if (!this._options.noPerfApi && collectedPhaseCount > 0 && !capabilities.serverMetrics) { + warnings.push('No server snapshots were collected. This run only supports client-side comparison.'); + } + + if (capabilities.clientMetricSources.includes('webgl_fallback') && !capabilities.clientMetricSources.includes('perf_bridge')) { + warnings.push('Client metrics were collected via WebGL fallback instrumentation because PerfBridge was unavailable.'); + } + + return { + valid: issues.length === 0, + warnings, + issues, + }; + } + private _buildBaseline(metrics: CollectedMetrics): BaselineResult { const snapshots = metrics.serverSnapshots; const clientSnapshots = metrics.clientSnapshots; diff --git a/packages/perf-tools/src/runners/HeadlessClient.ts b/packages/perf-tools/src/runners/HeadlessClient.ts index 4e7e29c3..449cc15c 100644 --- a/packages/perf-tools/src/runners/HeadlessClient.ts +++ b/packages/perf-tools/src/runners/HeadlessClient.ts @@ -1,5 +1,15 @@ import type { ClientSnapshot } from './MetricCollector.js'; +declare global { + interface Performance { + memory?: { + jsHeapSizeLimit: number; + totalJSHeapSize: number; + usedJSHeapSize: number; + }; + } +} + export interface HeadlessClientOptions { url: string; headless?: boolean; @@ -108,6 +118,124 @@ export default class HeadlessClient { }; }); + + await page.evaluateOnNewDocument(() => { + if ((window as any).__HYTOPIA_FALLBACK_PERF__) { + return; + } + + const state = { + fps: 0, + frameTimeMs: 0, + lastFrameTimestamp: 0, + fpsWindowStart: 0, + fpsWindowFrames: 0, + drawCallsThisFrame: 0, + trianglesThisFrame: 0, + drawCallsLastFrame: 0, + trianglesLastFrame: 0, + usedMemoryMb: 0, + totalMemoryMb: 0, + hasSeenDrawCall: false, + }; + + const getTrianglesPerCall = (mode: number, count: number): number => { + switch (mode) { + case WebGLRenderingContext.TRIANGLES: + return Math.floor(count / 3); + case WebGLRenderingContext.TRIANGLE_STRIP: + case WebGLRenderingContext.TRIANGLE_FAN: + return Math.max(0, count - 2); + default: + return 0; + } + }; + + const wrapDraw = (proto: any, methodName: string, getCount: (...args: any[]) => number, getInstances?: (...args: any[]) => number) => { + if (!proto?.[methodName] || proto[methodName].__hytopiaPerfWrapped) { + return; + } + + const original = proto[methodName]; + + const wrapped = function(this: unknown, ...args: any[]) { + const count = getCount(...args); + const instances = getInstances ? Math.max(1, getInstances(...args)) : 1; + + state.drawCallsThisFrame += 1; + state.trianglesThisFrame += getTrianglesPerCall(args[0], count) * instances; + state.hasSeenDrawCall = true; + + return original.apply(this, args); + }; + + wrapped.__hytopiaPerfWrapped = true; + proto[methodName] = wrapped; + }; + + const webgl1Prototype = typeof WebGLRenderingContext !== 'undefined' ? WebGLRenderingContext.prototype : undefined; + const webgl2Prototype = typeof WebGL2RenderingContext !== 'undefined' ? WebGL2RenderingContext.prototype : undefined; + + wrapDraw(webgl1Prototype, 'drawArrays', (_mode: number, _first: number, count: number) => count); + wrapDraw(webgl1Prototype, 'drawElements', (_mode: number, count: number) => count); + wrapDraw(webgl2Prototype, 'drawArrays', (_mode: number, _first: number, count: number) => count); + wrapDraw(webgl2Prototype, 'drawElements', (_mode: number, count: number) => count); + wrapDraw(webgl2Prototype, 'drawArraysInstanced', (_mode: number, _first: number, count: number) => count, (_mode: number, _first: number, _count: number, instanceCount: number) => instanceCount); + wrapDraw(webgl2Prototype, 'drawElementsInstanced', (_mode: number, count: number) => count, (_mode: number, _count: number, _type: number, _offset: number, instanceCount: number) => instanceCount); + + const tick = (timestamp: number) => { + if (state.lastFrameTimestamp > 0) { + state.frameTimeMs = timestamp - state.lastFrameTimestamp; + } + + if (state.fpsWindowStart === 0) { + state.fpsWindowStart = timestamp; + } + + state.fpsWindowFrames += 1; + + if (timestamp - state.fpsWindowStart >= 1000) { + state.fps = (state.fpsWindowFrames * 1000) / (timestamp - state.fpsWindowStart); + state.fpsWindowFrames = 0; + state.fpsWindowStart = timestamp; + } + + state.lastFrameTimestamp = timestamp; + state.drawCallsLastFrame = state.drawCallsThisFrame; + state.trianglesLastFrame = state.trianglesThisFrame; + state.drawCallsThisFrame = 0; + state.trianglesThisFrame = 0; + + const memory = performance.memory; + + if (memory) { + state.usedMemoryMb = memory.usedJSHeapSize / (1024 * 1024); + state.totalMemoryMb = memory.totalJSHeapSize / (1024 * 1024); + } + + requestAnimationFrame(tick); + }; + + requestAnimationFrame(tick); + + (window as any).__HYTOPIA_FALLBACK_PERF__ = { + isReady() { + return state.hasSeenDrawCall; + }, + snapshot() { + return { + source: 'webgl_fallback', + fps: state.fps, + frameTimeMs: state.frameTimeMs, + drawCalls: state.drawCallsLastFrame, + triangles: state.trianglesLastFrame, + textureMemoryMb: 0, + usedMemoryMb: state.usedMemoryMb, + totalMemoryMb: state.totalMemoryMb, + }; + }, + }; + }); } /** @@ -150,8 +278,17 @@ export default class HeadlessClient { try { const ready = await page.evaluate(() => { const perf = (window as any).__HYTOPIA_PERF__; + const fallbackPerf = (window as any).__HYTOPIA_FALLBACK_PERF__; - return perf && typeof perf.snapshot === 'function'; + if (perf && typeof perf.snapshot === 'function') { + return true; + } + + if (fallbackPerf && typeof fallbackPerf.isReady === 'function') { + return fallbackPerf.isReady(); + } + + return false; }); if (ready) return true; @@ -192,28 +329,23 @@ export default class HeadlessClient { const metrics = await page.evaluate(() => { const perf = (window as any).__HYTOPIA_PERF__; - - if (!perf) return null; - - // Prefer snapshot() method (rich data), fall back to flat properties - if (typeof perf.snapshot === 'function') { - return perf.snapshot(); - } + const fallbackPerf = (window as any).__HYTOPIA_FALLBACK_PERF__; return { - fps: perf.fps ?? 0, - frameTimeMs: perf.frameTimeMs ?? 0, - drawCalls: perf.drawCalls ?? 0, - triangles: perf.triangles ?? 0, - textureMemoryMb: perf.textureMemoryMb ?? 0, + perfSnapshot: perf && typeof perf.snapshot === 'function' ? perf.snapshot() : null, + fallbackSnapshot: fallbackPerf && typeof fallbackPerf.snapshot === 'function' && fallbackPerf.isReady() + ? fallbackPerf.snapshot() + : null, }; }); - if (!metrics) return null; + const normalized = normalizeClientMetrics(metrics?.perfSnapshot, metrics?.fallbackSnapshot); + + if (!normalized) return null; const snapshot: ClientSnapshot = { timestamp: Date.now(), - ...metrics, + ...normalized, }; this._performanceEntries.push(snapshot); @@ -437,3 +569,115 @@ export default class HeadlessClient { return this._connected; } } + +type RawPerfSnapshot = Record | null | undefined; + +function normalizeClientMetrics(perfSnapshot: RawPerfSnapshot, fallbackSnapshot: RawPerfSnapshot): Omit | null { + if (!perfSnapshot && !fallbackSnapshot) { + return null; + } + + const perf = asObject(perfSnapshot); + const fallback = asObject(fallbackSnapshot); + const perfFrame = asObject(perf?.frame); + const perfMemory = asObject(perf?.memory); + const perfEntities = asObject(perf?.entities); + const perfWorld = asObject(perf?.world); + const perfChunks = asObject(perf?.chunks); + const perfGltf = asObject(perf?.gltf); + + const entityCount = asNumber(perfEntities?.count) ?? asNumber(perfWorld?.entityCount); + const chunkCount = asNumber(perfChunks?.count) ?? asNumber(perfWorld?.chunkCount); + const visibleChunkCount = asNumber(perfChunks?.visible); + + return { + source: perf ? 'perf_bridge' : 'webgl_fallback', + fps: coalesceNumber( + asNumber(perf?.fps), + asNumber(perfFrame?.currentFps), + asNumber(fallback?.fps), + 0, + ), + frameTimeMs: coalesceNumber( + asNumber(perf?.frameTimeMs), + asNumber(perfFrame?.currentFrameMs), + asNumber(fallback?.frameTimeMs), + 0, + ), + drawCalls: coalesceNumber( + asNumber(perf?.drawCalls), + asNumber(fallback?.drawCalls), + 0, + ), + triangles: coalesceNumber( + asNumber(perf?.triangles), + asNumber(fallback?.triangles), + 0, + ), + textureMemoryMb: coalesceNumber(asNumber(perf?.textureMemoryMb), 0), + geometries: asNumber(perf?.geometries) ?? undefined, + textures: asNumber(perf?.textures) ?? undefined, + programs: asNumber(perf?.programs) ?? undefined, + usedMemoryMb: coalesceNumber( + asNumber(perf?.usedMemoryMb), + asNumber(perfMemory?.usedHeapMb), + asNumber(fallback?.usedMemoryMb), + 0, + ), + totalMemoryMb: coalesceNumber( + asNumber(perf?.totalMemoryMb), + asNumber(perfMemory?.totalHeapMb), + asNumber(fallback?.totalMemoryMb), + 0, + ), + entities: entityCount === undefined + ? undefined + : { + count: entityCount, + inViewDistance: coalesceNumber(asNumber(perfEntities?.inViewDistance), entityCount), + frustumCulled: coalesceNumber(asNumber(perfEntities?.frustumCulled), 0), + staticEnvironment: coalesceNumber(asNumber(perfEntities?.staticEnvironment), 0), + }, + chunks: chunkCount === undefined && visibleChunkCount === undefined + ? undefined + : { + count: coalesceNumber(chunkCount, visibleChunkCount, 0), + visible: coalesceNumber(visibleChunkCount, chunkCount, 0), + blocks: coalesceNumber(asNumber(perfChunks?.blocks), 0), + opaqueFaces: coalesceNumber(asNumber(perfChunks?.opaqueFaces), 0), + transparentFaces: coalesceNumber(asNumber(perfChunks?.transparentFaces), 0), + liquidFaces: coalesceNumber(asNumber(perfChunks?.liquidFaces), 0), + }, + gltf: perfGltf + ? { + files: coalesceNumber(asNumber(perfGltf?.files), 0), + sourceMeshes: coalesceNumber(asNumber(perfGltf?.sourceMeshes), 0), + clonedMeshes: coalesceNumber(asNumber(perfGltf?.clonedMeshes), asNumber(perfGltf?.clonedMeshCount), 0), + instancedMeshes: coalesceNumber(asNumber(perfGltf?.instancedMeshes), asNumber(perfGltf?.instancedMeshCount), 0), + drawCallsSaved: coalesceNumber(asNumber(perfGltf?.drawCallsSaved), 0), + } + : undefined, + }; +} + +function asObject(value: unknown): Record | undefined { + if (!value || typeof value !== 'object') { + return undefined; + } + + return value as Record; +} + +function asNumber(value: unknown): number | undefined { + return typeof value === 'number' && Number.isFinite(value) ? value : undefined; +} + +function coalesceNumber(...values: Array): number { + for (const value of values) { + if (value !== undefined) { + return value; + } + } + + return 0; +} diff --git a/packages/perf-tools/src/runners/MetricCollector.ts b/packages/perf-tools/src/runners/MetricCollector.ts index fad15ae1..475c3ed5 100644 --- a/packages/perf-tools/src/runners/MetricCollector.ts +++ b/packages/perf-tools/src/runners/MetricCollector.ts @@ -50,6 +50,7 @@ export interface OperationSnapshot { export interface ClientSnapshot { timestamp: number; + source?: 'perf_bridge' | 'webgl_fallback'; fps: number; frameTimeMs: number; drawCalls: number; From 6cdf9c17bb2324d73a2c8ee3ab805a5bb31e1906 Mon Sep 17 00:00:00 2001 From: web3dev1337 <160291380+web3dev1337@users.noreply.github.com> Date: Sun, 8 Mar 2026 19:28:07 +1100 Subject: [PATCH 36/40] feat: add legacy perf instrumentation overlay --- CODEBASE_DOCUMENTATION.md | 2 +- .../perf-branch-state-2026-03-06/FINAL.md | 9 +- .../overlays/legacy-server/PerfHarness.ts | 263 ++++++++++++++++ .../scripts/apply-instrumentation-overlay.sh | 289 ++++++++++++++++++ .../scripts/run-external-game-benchmark.sh | 12 + .../scripts/run-owned-stack-suite.sh | 58 +++- packages/perf-tools/src/cli.ts | 15 + .../perf-tools/src/reporters/JsonReporter.ts | 2 + .../src/runners/BaselineComparer.ts | 23 +- .../perf-tools/src/runners/BenchmarkRunner.ts | 11 + .../perf-tools/src/runners/MetricCollector.ts | 1 + .../perf-tools/src/runners/ServerApiClient.ts | 193 ++++++++++++ 12 files changed, 869 insertions(+), 9 deletions(-) create mode 100644 packages/perf-tools/overlays/legacy-server/PerfHarness.ts create mode 100755 packages/perf-tools/scripts/apply-instrumentation-overlay.sh diff --git a/CODEBASE_DOCUMENTATION.md b/CODEBASE_DOCUMENTATION.md index a5bd4470..8c8167f1 100644 --- a/CODEBASE_DOCUMENTATION.md +++ b/CODEBASE_DOCUMENTATION.md @@ -16,7 +16,7 @@ PROTOCOL: protocol/ - Packet schemas + definitions (@hytopia.com/server-protocol SDK: sdk/ - Git submodule → hytopiagg/sdk (build output lands here) EXAMPLES: sdk-examples/ - Reference games built with the SDK ASSETS: assets/release/ - Default game assets (audio, blocks, maps, models, particles, skyboxes, ui) -PERF: packages/perf-tools/ - Benchmark CLI + trace analysis (`hytopia-bench`), headless client metrics, synthetic + real-game presets (`zoo-game-full` single-client benchmark, `zoo-game-observe` 5-client joinable Zoo run), helper scripts for linking/running external games (including linked SDK runtime deps, target-ref dependency prep via `ensure-node-modules.sh`, repeatable HyFire2/Zoo Game workflows, and `run-owned-stack-suite.sh` for one-command multi-game runs against a chosen engine ref/PR). Older engine refs without PerfHarness/PerfBridge now degrade to validated client-only reports plus compare-time metric skipping instead of misleading zero baselines. +PERF: packages/perf-tools/ - Benchmark CLI + trace analysis (`hytopia-bench`), headless client metrics, synthetic + real-game presets (`zoo-game-full` single-client benchmark, `zoo-game-observe` 5-client joinable Zoo run), helper scripts for linking/running external games (including linked SDK runtime deps, target-ref dependency prep via `ensure-node-modules.sh`, `apply-instrumentation-overlay.sh` for temporary legacy-ref PerfBridge/PerfHarness patching, repeatable HyFire2/Zoo Game workflows, and `run-owned-stack-suite.sh` for one-command multi-game runs against a chosen engine ref/PR). Older engine refs now prefer overlayed client/server perf hooks, then fall back to validated legacy `/__perf` normalization plus compare-time metric skipping instead of misleading zero baselines. CONFIG: package.json - Monorepo root (npm workspaces) server/package.json - Server deps + build scripts server/tsconfig.json - Strict TS, path alias @/* → ./src/* diff --git a/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md b/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md index ae763097..6f20b2aa 100644 --- a/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md +++ b/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md @@ -181,8 +181,8 @@ That wrapper can: Important limitation: -- very old engine refs can still produce client-only real-game reports if they predate PerfHarness server snapshots -- those runs are still valid for FPS/frame-time comparison when the client loads, but the framework now labels them that way explicitly instead of pretending they are full-stack apples-to-apples +- very old engine refs now get a temporary instrumentation overlay first, which patches in the current client `PerfBridge`, a compatible server `PerfHarness` shim, and the legacy entrypoint glue needed for repeatable real-game runs +- if a target ref still cannot expose the full modern server metric surface after that overlay, the framework falls back to normalized legacy `/__perf` snapshots and labels the missing metric families explicitly instead of pretending they are full-stack apples-to-apples Important clarification: @@ -267,11 +267,12 @@ This cleanup retains the broadly reusable framework improvements that were still - `--external-server` support in [cli.ts](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/cli.ts) - `send_chat` scenario action in [ScenarioLoader.ts](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/runners/ScenarioLoader.ts) - chat-triggered setup support in [HeadlessClient.ts](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/runners/HeadlessClient.ts) -- external-server handling and client-only baseline generation in [BenchmarkRunner.ts](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/runners/BenchmarkRunner.ts) +- external-server handling, legacy-server metric normalization, and validation-aware baseline generation in [BenchmarkRunner.ts](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/runners/BenchmarkRunner.ts) - a cleaned [zoo-game-full.yaml](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/presets/zoo-game-full.yaml) preset - a documented [zoo-game-observe.yaml](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/presets/zoo-game-observe.yaml) preset for live join/observation runs - runner-level `--cpu-throttle` support so desktop/mobile/low-end comparisons no longer require editing YAML -- scoped local HTTPS handling in [ServerApiClient.ts](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/runners/ServerApiClient.ts) instead of a global TLS-disable environment hack +- scoped local HTTPS handling and legacy `/__perf` snapshot compatibility in [ServerApiClient.ts](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/runners/ServerApiClient.ts) instead of a global TLS-disable environment hack +- temporary target-ref instrumentation overlay support in [apply-instrumentation-overlay.sh](/home/ab/GitHub/hytopia/work1/packages/perf-tools/scripts/apply-instrumentation-overlay.sh) These are deliberate framework improvements, not feature-under-test patches. diff --git a/packages/perf-tools/overlays/legacy-server/PerfHarness.ts b/packages/perf-tools/overlays/legacy-server/PerfHarness.ts new file mode 100644 index 00000000..06a3dc1d --- /dev/null +++ b/packages/perf-tools/overlays/legacy-server/PerfHarness.ts @@ -0,0 +1,263 @@ +import type http from 'http'; +import PerformanceBaseline from '@/metrics/PerformanceBaseline'; +import Telemetry from '@/metrics/Telemetry'; +import PlayerManager from '@/players/PlayerManager'; + +const PERF_PREFIX = '/__perf'; +const DEFAULT_BUDGET_MS = 1000 / 60; +const MAX_BODY_BYTES = 1024 * 1024; + +type LegacyStatsWindowSnapshot = { + average: number; + count: number; + max: number; + min: number; + p50: number; + p95: number; + sampleCount: number; +}; + +type LegacyPerformanceBaselineSnapshot = { + generatedAt: string; + packets?: { + batches?: { + compressedBatches?: number; + rawBytes?: number; + reliableBatches?: number; + totalBatches?: number; + unreliableBatches?: number; + wireBytes?: number; + }; + families?: Record; + }; + spans?: Record; +}; + +let previousNetworkSample: + | { timestamp: number; bytesSentTotal: number; packetsSentTotal: number } + | undefined; + +function isPerfToolsEnabled(): boolean { + const value = process.env.HYTOPIA_PERF_TOOLS; + + return value === '1' || value === 'true'; +} + +function isAuthorized(req: http.IncomingMessage): boolean { + const token = process.env.HYTOPIA_PERF_TOOLS_TOKEN; + + if (!token) { + return true; + } + + return req.headers['x-hytopia-perf-token'] === token; +} + +function respondJson(res: http.ServerResponse, status: number, body: unknown): void { + res.writeHead(status, { + 'content-type': 'application/json', + 'cache-control': 'no-store', + 'access-control-allow-origin': '*', + }); + res.end(JSON.stringify(body)); +} + +function drainBody(req: http.IncomingMessage, onDone: () => void): void { + let received = 0; + + req.on('data', chunk => { + received += Buffer.isBuffer(chunk) ? chunk.length : Buffer.byteLength(String(chunk)); + + if (received > MAX_BODY_BYTES) { + req.destroy(); + } + }); + + req.on('error', onDone); + req.on('end', onDone); +} + +function findTickWindow( + spans: Record, +): LegacyStatsWindowSnapshot | undefined { + const preferred = ['world_tick', 'ticker_tick']; + + for (const name of preferred) { + if (spans[name]) { + return spans[name]; + } + } + + for (const [name, snapshot] of Object.entries(spans)) { + if (name.includes('tick')) { + return snapshot; + } + } + + return undefined; +} + +function sumLegacyPacketCount(snapshot: LegacyPerformanceBaselineSnapshot): number { + return Object.values(snapshot.packets?.families ?? {}).reduce((total, family) => { + return total + (family.packetCount ?? 0); + }, 0); +} + +function getSerializationAverageMs( + spans: Record, +): number { + return spans.serialize_packets?.average + ?? spans.serialize_packets_encode?.average + ?? 0; +} + +function toOperationSnapshot(snapshot: LegacyStatsWindowSnapshot) { + return { + count: snapshot.count || snapshot.sampleCount || 0, + avgMs: snapshot.average || 0, + p95Ms: snapshot.p95 || 0, + p99Ms: snapshot.max || snapshot.p95 || 0, + maxMs: snapshot.max || 0, + }; +} + +function toModernSnapshot( + legacySnapshot: LegacyPerformanceBaselineSnapshot, + processStats: Record, + playerCount: number, +) { + const generatedAtMs = Date.parse(legacySnapshot.generatedAt); + const timestamp = Number.isFinite(generatedAtMs) ? generatedAtMs : Date.now(); + const spans = legacySnapshot.spans ?? {}; + const tickWindow = findTickWindow(spans); + const bytesSentTotal = legacySnapshot.packets?.batches?.wireBytes ?? 0; + const packetsSentTotal = sumLegacyPacketCount(legacySnapshot); + let bytesSentPerSecond = 0; + let packetsSentPerSecond = 0; + + if (previousNetworkSample && timestamp > previousNetworkSample.timestamp) { + const elapsedSeconds = (timestamp - previousNetworkSample.timestamp) / 1000; + + if (elapsedSeconds > 0) { + bytesSentPerSecond = Math.max(0, (bytesSentTotal - previousNetworkSample.bytesSentTotal) / elapsedSeconds); + packetsSentPerSecond = Math.max(0, (packetsSentTotal - previousNetworkSample.packetsSentTotal) / elapsedSeconds); + } + } + + previousNetworkSample = { + timestamp, + bytesSentTotal, + packetsSentTotal, + }; + + return { + source: 'legacy_perf_api', + timestamp, + avgTickMs: tickWindow?.average ?? 0, + maxTickMs: tickWindow?.max ?? 0, + p95TickMs: tickWindow?.p95 ?? 0, + p99TickMs: tickWindow?.max ?? tickWindow?.p95 ?? 0, + ticksOverBudget: 0, + totalTicks: tickWindow?.count ?? tickWindow?.sampleCount ?? 0, + budgetMs: DEFAULT_BUDGET_MS, + operations: Object.fromEntries( + Object.entries(spans).map(([name, snapshot]) => [name, toOperationSnapshot(snapshot)]), + ), + memory: { + heapUsedMb: Number(processStats.jsHeapSizeMb ?? processStats.processHeapSizeMb ?? 0), + heapTotalMb: Number(processStats.jsHeapCapacityMb ?? 0), + rssMb: Number(processStats.rssSizeMb ?? 0), + }, + network: { + connectedPlayers: playerCount, + bytesSentTotal, + bytesReceivedTotal: 0, + bytesSentPerSecond, + bytesReceivedPerSecond: 0, + packetsSentPerSecond, + packetsReceivedPerSecond: 0, + avgSerializationMs: getSerializationAverageMs(spans), + compressionCount: legacySnapshot.packets?.batches?.compressedBatches ?? 0, + }, + }; +} + +export default class PerfHarness { + public static enableIfConfigured(): void {} + + public static handleWebRequest(req: http.IncomingMessage, res: http.ServerResponse): boolean { + if (!isPerfToolsEnabled()) { + return false; + } + + const reqPath = req.url?.split('?')[0] ?? '/'; + + if (!reqPath.startsWith(PERF_PREFIX)) { + return false; + } + + if (!isAuthorized(req)) { + respondJson(res, 401, { ok: false, error: 'Unauthorized' }); + return true; + } + + if (req.method === 'OPTIONS') { + res.writeHead(204, { + 'access-control-allow-origin': '*', + 'access-control-allow-methods': 'GET,POST,DELETE,OPTIONS', + 'access-control-allow-headers': 'content-type,x-hytopia-perf-token', + }); + res.end(); + return true; + } + + if ((reqPath === `${PERF_PREFIX}/reset`) && (req.method === 'POST' || req.method === 'DELETE')) { + previousNetworkSample = undefined; + PerformanceBaseline.reset(); + res.writeHead(204, { 'access-control-allow-origin': '*' }); + res.end(); + return true; + } + + if ((reqPath === `${PERF_PREFIX}/snapshot` || reqPath === PERF_PREFIX) && req.method === 'GET') { + const processStats = Telemetry.getProcessStats() as Record; + const legacySnapshot = PerformanceBaseline.snapshot() as LegacyPerformanceBaselineSnapshot; + + if (reqPath === PERF_PREFIX) { + respondJson(res, 200, { + playerCount: PlayerManager.instance.playerCount, + process: processStats, + snapshot: legacySnapshot, + }); + } else { + respondJson(res, 200, toModernSnapshot( + legacySnapshot, + processStats, + PlayerManager.instance.playerCount, + )); + } + + return true; + } + + if (reqPath === `${PERF_PREFIX}/action` && req.method === 'POST') { + drainBody(req, () => { + respondJson(res, 501, { + ok: false, + error: 'Perf actions are not available on this legacy overlay target.', + }); + }); + return true; + } + + respondJson(res, 404, { ok: false, error: 'Perf endpoint not found' }); + return true; + } +} diff --git a/packages/perf-tools/scripts/apply-instrumentation-overlay.sh b/packages/perf-tools/scripts/apply-instrumentation-overlay.sh new file mode 100755 index 00000000..52ca465f --- /dev/null +++ b/packages/perf-tools/scripts/apply-instrumentation-overlay.sh @@ -0,0 +1,289 @@ +#!/bin/bash +set -euo pipefail + +SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)" +DEFAULT_SOURCE_REPO="$(cd "$SCRIPT_DIR/../../.." && pwd)" +SOURCE_ENGINE_REPO="$DEFAULT_SOURCE_REPO" +TARGET_ENGINE_REPO="" + +usage() { + cat <<'EOF' +Usage: + apply-instrumentation-overlay.sh --target-engine-repo [options] + +Options: + --source-engine-repo Repo providing the current overlay sources + --target-engine-repo Engine repo/worktree to patch temporarily + -h, --help Show this help +EOF +} + +while [[ $# -gt 0 ]]; do + case "$1" in + --source-engine-repo) + SOURCE_ENGINE_REPO="$(cd "$2" && pwd)" + shift 2 + ;; + --target-engine-repo) + TARGET_ENGINE_REPO="$(cd "$2" && pwd)" + shift 2 + ;; + -h|--help) + usage + exit 0 + ;; + *) + echo "Unknown argument: $1" >&2 + usage >&2 + exit 1 + ;; + esac +done + +if [[ -z "$TARGET_ENGINE_REPO" ]]; then + usage >&2 + exit 1 +fi + +if [[ ! -d "$SOURCE_ENGINE_REPO" || ! -d "$TARGET_ENGINE_REPO" ]]; then + echo "Error: source and target engine repos must both exist" >&2 + exit 1 +fi + +SOURCE_SERVER_PKG="$SOURCE_ENGINE_REPO/server/package.json" +TARGET_SERVER_PKG="$TARGET_ENGINE_REPO/server/package.json" +TARGET_GAME_TS="$TARGET_ENGINE_REPO/client/src/Game.ts" +TARGET_WEB_SERVER_TS="$TARGET_ENGINE_REPO/server/src/networking/WebServer.ts" +TARGET_PERF_BRIDGE_TS="$TARGET_ENGINE_REPO/client/src/core/PerfBridge.ts" +TARGET_PERF_HARNESS_ENTRY_TS="$TARGET_ENGINE_REPO/server/src/perf/perf-harness.ts" +TARGET_PERF_HARNESS_TS="$TARGET_ENGINE_REPO/server/src/perf/PerfHarness.ts" +MANIFEST_PATH="$TARGET_ENGINE_REPO/.perf-tools-overlay.json" + +TARGET_ENGINE_REPO="$TARGET_ENGINE_REPO" \ +SOURCE_ENGINE_REPO="$SOURCE_ENGINE_REPO" \ +SOURCE_SERVER_PKG="$SOURCE_SERVER_PKG" \ +TARGET_SERVER_PKG="$TARGET_SERVER_PKG" \ +TARGET_GAME_TS="$TARGET_GAME_TS" \ +TARGET_WEB_SERVER_TS="$TARGET_WEB_SERVER_TS" \ +TARGET_PERF_BRIDGE_TS="$TARGET_PERF_BRIDGE_TS" \ +TARGET_PERF_HARNESS_ENTRY_TS="$TARGET_PERF_HARNESS_ENTRY_TS" \ +TARGET_PERF_HARNESS_TS="$TARGET_PERF_HARNESS_TS" \ +MANIFEST_PATH="$MANIFEST_PATH" \ +node <<'NODE' +const fs = require('fs'); +const path = require('path'); + +const sourceRepo = process.env.SOURCE_ENGINE_REPO; +const targetRepo = process.env.TARGET_ENGINE_REPO; +const sourceServerPkgPath = process.env.SOURCE_SERVER_PKG; +const targetServerPkgPath = process.env.TARGET_SERVER_PKG; +const targetGamePath = process.env.TARGET_GAME_TS; +const targetWebServerPath = process.env.TARGET_WEB_SERVER_TS; +const targetPerfBridgePath = process.env.TARGET_PERF_BRIDGE_TS; +const targetPerfHarnessEntryPath = process.env.TARGET_PERF_HARNESS_ENTRY_TS; +const targetPerfHarnessPath = process.env.TARGET_PERF_HARNESS_TS; +const manifestPath = process.env.MANIFEST_PATH; + +const sourcePerfBridgePath = path.join(sourceRepo, 'client/src/core/PerfBridge.ts'); +const sourcePerfHarnessEntryPath = path.join(sourceRepo, 'server/src/perf/perf-harness.ts'); +const legacyPerfHarnessPath = path.join(sourceRepo, 'packages/perf-tools/overlays/legacy-server/PerfHarness.ts'); + +const manifest = { + sourceEngineRepo: sourceRepo, + targetEngineRepo: targetRepo, + applied: false, + client: { + perfBridge: 'none', + gamePatched: false, + }, + server: { + perfHarness: 'none', + perfHarnessEntry: 'none', + webServerPatched: false, + buildScriptPatched: false, + snapshotApi: false, + actionApi: false, + }, +}; + +function exists(filePath) { + return filePath && fs.existsSync(filePath); +} + +function read(filePath) { + return fs.readFileSync(filePath, 'utf8'); +} + +function write(filePath, content) { + fs.mkdirSync(path.dirname(filePath), { recursive: true }); + fs.writeFileSync(filePath, content, 'utf8'); +} + +function copyIfMissing(sourcePath, targetPath) { + if (exists(targetPath)) { + return false; + } + + write(targetPath, read(sourcePath)); + return true; +} + +function patchGame() { + if (!exists(targetGamePath)) { + return false; + } + + let text = read(targetGamePath); + let changed = false; + + if (!text.includes("import PerfBridge from './core/PerfBridge';")) { + const anchor = "import PerformanceMetricsManager from './core/PerformanceMetricsManager';"; + if (text.includes(anchor)) { + text = text.replace(anchor, `${anchor}\nimport PerfBridge from './core/PerfBridge';`); + changed = true; + } + } + + if (!text.includes('readonly inPerfMode')) { + const anchor = "readonly inDebugMode = new URLSearchParams(window.location.search).has(DEBUG_QUERY_STRINGS);"; + if (text.includes(anchor)) { + text = text.replace(anchor, `${anchor}\n readonly inPerfMode = new URLSearchParams(window.location.search).get('perf') === '1';`); + changed = true; + } + } + + if (!text.includes('new PerfBridge(this);')) { + const anchor = ' this._chunkWorkerClient = new ChunkWorkerClient();'; + if (text.includes(anchor)) { + text = text.replace(anchor, `${anchor}\n\n if (this.inPerfMode) {\n new PerfBridge(this);\n }`); + changed = true; + } + } + + if (changed) { + write(targetGamePath, text); + } + + return changed; +} + +function patchWebServer() { + if (!exists(targetWebServerPath)) { + return false; + } + + let text = read(targetWebServerPath); + let changed = false; + + if (!text.includes("import PerfHarness from '@/perf/PerfHarness';")) { + const anchor = "import PlayerManager from '@/players/PlayerManager';"; + if (text.includes(anchor)) { + text = text.replace(anchor, `${anchor}\nimport PerfHarness from '@/perf/PerfHarness';`); + changed = true; + } + } + + if (!text.includes('PerfHarness.enableIfConfigured();')) { + const anchor = " if (this._server) {\n return ErrorHandler.warning('WebServer.start(): already started');\n }\n"; + if (text.includes(anchor)) { + text = text.replace(anchor, `${anchor}\n PerfHarness.enableIfConfigured();\n`); + changed = true; + } + } + + if (!text.includes('PerfHarness.handleWebRequest(req, res)')) { + const anchor = ' // Health check'; + if (text.includes(anchor)) { + text = text.replace(anchor, " if (PerfHarness.handleWebRequest(req, res)) {\n return;\n }\n\n // Health check"); + changed = true; + } + } + + if (changed) { + write(targetWebServerPath, text); + } + + return changed; +} + +function patchBuildScript() { + if (!exists(sourceServerPkgPath) || !exists(targetServerPkgPath)) { + return false; + } + + const sourcePkg = JSON.parse(read(sourceServerPkgPath)); + const targetPkg = JSON.parse(read(targetServerPkgPath)); + const buildScript = sourcePkg.scripts?.['build:perf-harness']; + + if (!buildScript || targetPkg.scripts?.['build:perf-harness']) { + return false; + } + + targetPkg.scripts = targetPkg.scripts || {}; + targetPkg.scripts['build:perf-harness'] = buildScript; + write(targetServerPkgPath, `${JSON.stringify(targetPkg, null, 2)}\n`); + return true; +} + +function hasModernServerPerfHarness() { + if (!exists(targetPerfHarnessPath)) { + return false; + } + + const text = read(targetPerfHarnessPath); + return text.includes('/__perf/action') && text.includes('/__perf/snapshot'); +} + +if (path.resolve(sourceRepo) === path.resolve(targetRepo)) { + console.log('Instrumentation overlay manifest: none (source and target are the same checkout)'); + process.exit(0); +} + +if (hasModernServerPerfHarness()) { + manifest.server.perfHarness = 'existing'; + manifest.server.snapshotApi = true; + manifest.server.actionApi = true; +} else { + write(targetPerfHarnessPath, read(legacyPerfHarnessPath)); + manifest.applied = true; + manifest.server.perfHarness = 'overlay'; + + if (patchWebServer()) { + manifest.applied = true; + manifest.server.webServerPatched = true; + } + + manifest.server.snapshotApi = true; + manifest.server.actionApi = false; +} + +if (exists(sourcePerfHarnessEntryPath)) { + if (copyIfMissing(sourcePerfHarnessEntryPath, targetPerfHarnessEntryPath)) { + manifest.applied = true; + manifest.server.perfHarnessEntry = 'overlay'; + } else if (exists(targetPerfHarnessEntryPath)) { + manifest.server.perfHarnessEntry = 'existing'; + } +} + +if (patchBuildScript()) { + manifest.applied = true; + manifest.server.buildScriptPatched = true; +} + +if (exists(targetPerfBridgePath)) { + manifest.client.perfBridge = 'existing'; +} else if (exists(sourcePerfBridgePath)) { + write(targetPerfBridgePath, read(sourcePerfBridgePath)); + manifest.applied = true; + manifest.client.perfBridge = 'overlay'; +} + +if (patchGame()) { + manifest.applied = true; + manifest.client.gamePatched = true; +} + +write(manifestPath, `${JSON.stringify(manifest, null, 2)}\n`); +console.log(`Instrumentation overlay manifest: ${manifestPath}`); +NODE diff --git a/packages/perf-tools/scripts/run-external-game-benchmark.sh b/packages/perf-tools/scripts/run-external-game-benchmark.sh index 35dae576..2a8a1d7d 100755 --- a/packages/perf-tools/scripts/run-external-game-benchmark.sh +++ b/packages/perf-tools/scripts/run-external-game-benchmark.sh @@ -13,6 +13,7 @@ PORT="9091" CPU_THROTTLE="" OUTPUT="" VERBOSE="false" +INSTRUMENTATION_OVERLAY="true" usage() { cat <<'EOF' @@ -30,6 +31,8 @@ Options: --port HTTPS port for the external game server (default: 9091) --cpu-throttle Browser CPU throttle rate (example: 4, 16) --output Write benchmark JSON to this path + --no-instrumentation-overlay + Do not patch older engine refs with temporary perf hooks --verbose Enable verbose benchmark logging Examples: @@ -97,6 +100,10 @@ while [[ $# -gt 0 ]]; do OUTPUT="$2" shift 2 ;; + --no-instrumentation-overlay) + INSTRUMENTATION_OVERLAY="false" + shift + ;; --verbose) VERBOSE="true" shift @@ -137,6 +144,11 @@ trap cleanup EXIT INT TERM echo "==> Linking SDK checkout into external game" echo "Engine repo: $ENGINE_REPO" +if [[ "$INSTRUMENTATION_OVERLAY" == "true" ]]; then + bash "$SCRIPT_DIR/apply-instrumentation-overlay.sh" \ + --source-engine-repo "$REPO_ROOT" \ + --target-engine-repo "$ENGINE_REPO" +fi bash "$SCRIPT_DIR/link-sdk.sh" --engine-repo "$ENGINE_REPO" bash "$SCRIPT_DIR/setup-game.sh" "$GAME_DIR" --engine-repo "$ENGINE_REPO" diff --git a/packages/perf-tools/scripts/run-owned-stack-suite.sh b/packages/perf-tools/scripts/run-owned-stack-suite.sh index 097a4be5..7027d7c2 100755 --- a/packages/perf-tools/scripts/run-owned-stack-suite.sh +++ b/packages/perf-tools/scripts/run-owned-stack-suite.sh @@ -21,6 +21,7 @@ HYFIRE2_PRESET="hyfire2-bots" HYFIRE2_PORT="8082" HYFIRE2_SERVER_CMD="AUTO_START_WITH_BOTS=true hytopia start" KEEP_WORKTREE="false" +INSTRUMENTATION_OVERLAY="true" WORKTREE_DIR="" ACTIVE_ENGINE_REPO="$ENGINE_REPO" @@ -29,6 +30,7 @@ RESOLVED_LABEL="" SUMMARY_PATH="" CLIENT_SERVER_PID="" CLIENT_SERVER_LOG="" +OVERLAY_MANIFEST="" declare -a SUMMARY_ROWS=() @@ -55,6 +57,8 @@ Options: --hyfire2-dir HyFire2 repo/worktree --hyfire2-preset HyFire2 preset to run --hyfire2-port HyFire2 external server port + --no-instrumentation-overlay + Do not patch older target refs with temporary perf hooks --keep-worktree Leave the temporary engine worktree on disk -h, --help Show this help @@ -169,6 +173,10 @@ while [[ $# -gt 0 ]]; do KEEP_WORKTREE="true" shift ;; + --no-instrumentation-overlay) + INSTRUMENTATION_OVERLAY="false" + shift + ;; -h|--help) usage exit 0 @@ -194,6 +202,22 @@ prepare_engine_checkout() { --packages "server,client,protocol" } +apply_instrumentation_overlay() { + if [[ "$INSTRUMENTATION_OVERLAY" != "true" ]]; then + return + fi + + bash "$TOOLS_REPO/packages/perf-tools/scripts/apply-instrumentation-overlay.sh" \ + --source-engine-repo "$TOOLS_REPO" \ + --target-engine-repo "$ACTIVE_ENGINE_REPO" + + if [[ -f "$ACTIVE_ENGINE_REPO/.perf-tools-overlay.json" ]]; then + OVERLAY_MANIFEST="$ACTIVE_ENGINE_REPO/.perf-tools-overlay.json" + else + OVERLAY_MANIFEST="" + fi +} + start_client_server() { if [[ -n "$CLIENT_URL" ]]; then return @@ -225,7 +249,30 @@ start_client_server() { } can_run_internal_presets() { - [[ -f "$ACTIVE_ENGINE_REPO/server/src/perf-harness.ts" ]] + [[ -f "$ACTIVE_ENGINE_REPO/server/src/perf/perf-harness.ts" ]] || return 1 + + node -e "const pkg=require(process.argv[1]); process.exit(pkg.scripts && pkg.scripts['build:perf-harness'] ? 0 : 1)" \ + "$ACTIVE_ENGINE_REPO/server/package.json" >/dev/null 2>&1 +} + +server_supports_action_api() { + if [[ -n "$OVERLAY_MANIFEST" && -f "$OVERLAY_MANIFEST" ]]; then + node -e "const data=require(process.argv[1]); process.exit(data.server?.actionApi ? 0 : 1)" \ + "$OVERLAY_MANIFEST" >/dev/null 2>&1 + return + fi + + [[ -f "$ACTIVE_ENGINE_REPO/server/src/perf/PerfHarness.ts" ]] || return 1 + rg -q '/__perf/action' "$ACTIVE_ENGINE_REPO/server/src/perf/PerfHarness.ts" +} + +preset_requires_server_actions() { + local preset="$1" + local preset_path="$TOOLS_REPO/packages/perf-tools/src/presets/${preset}.yaml" + + [[ -f "$preset_path" ]] || return 1 + + rg -q 'type: (spawn_bots|despawn_bots|load_map|generate_blocks|spawn_entities|despawn_entities|start_block_churn|stop_block_churn|create_worlds|set_default_world|clear_world)' "$preset_path" } resolve_engine_checkout() { @@ -304,6 +351,8 @@ write_summary() { - Resolved commit: \`$RESOLVED_COMMIT\` - Client URL: \`$CLIENT_URL\` - CPU throttle: \`${CPU_THROTTLE:-none}\` +- Instrumentation overlay: \`${INSTRUMENTATION_OVERLAY}\` +- Overlay manifest: \`${OVERLAY_MANIFEST:-none}\` - Internal presets: \`$internal_display\` - External games: \`$external_display\` - Output dir: \`$output_dir\` @@ -331,6 +380,7 @@ EOF } resolve_engine_checkout +apply_instrumentation_overlay prepare_engine_checkout OUTPUT_DIR="$OUTPUT_ROOT/$RESOLVED_LABEL-$(date +%Y%m%d-%H%M%S)" @@ -365,6 +415,12 @@ if [[ "$INTERNAL_PRESETS" != "none" ]]; then for preset in "${INTERNAL_PRESET_ARRAY[@]}"; do [[ -z "$preset" ]] && continue + if ! server_supports_action_api && preset_requires_server_actions "$preset"; then + echo "WARNING: skipping $preset because the target ref only has snapshot/reset perf overlay support" >&2 + SUMMARY_ROWS+=("| $preset | internal | skipped | server action API unavailable |") + continue + fi + cmd=( npx tsx src/cli.ts run --preset "$preset" diff --git a/packages/perf-tools/src/cli.ts b/packages/perf-tools/src/cli.ts index 459e65a8..24086922 100644 --- a/packages/perf-tools/src/cli.ts +++ b/packages/perf-tools/src/cli.ts @@ -152,8 +152,14 @@ program } const includeServerMetrics = hasServerMetrics(beforeInput) && hasServerMetrics(afterInput); + const usesLegacyServerMetrics = reportUsesLegacyServerMetrics(beforeInput) || reportUsesLegacyServerMetrics(afterInput); const includeClientMetrics = hasClientMetrics(beforeInput) && hasClientMetrics(afterInput); const includeClientRenderMetrics = includeClientMetrics && hasClientRenderMetrics(beforeInput) && hasClientRenderMetrics(afterInput); + const includeServerTailMetrics = includeServerMetrics && !usesLegacyServerMetrics; + const includeServerBudgetMetrics = includeServerMetrics && !usesLegacyServerMetrics; + const includeServerNetworkMetrics = includeServerMetrics && !usesLegacyServerMetrics + && before.network !== undefined + && after.network !== undefined; if (!includeServerMetrics && !includeClientMetrics) { console.error('Cannot compare these reports because they do not share any comparable metric categories.'); @@ -162,6 +168,8 @@ program if (!includeServerMetrics) { console.log('Skipping server metrics: one or both reports lack server snapshots.'); + } else if (usesLegacyServerMetrics) { + console.log('Skipping server p99, budget, and network metrics: one or both reports used the legacy server perf API.'); } if (!includeClientMetrics) { @@ -176,6 +184,9 @@ program `${path.basename(beforePath)} vs ${path.basename(afterPath)}`, { includeServerMetrics, + includeServerTailMetrics, + includeServerBudgetMetrics, + includeServerNetworkMetrics, includeClientMetrics, includeClientRenderMetrics, }, @@ -222,6 +233,10 @@ function hasServerMetrics(input: ReturnType): return input.baseline.avgTickMs > 0 || Object.keys(input.baseline.operations ?? {}).length > 0 || input.baseline.network !== undefined; } +function reportUsesLegacyServerMetrics(input: ReturnType): boolean { + return input.capabilities?.serverMetricSources?.includes('legacy_perf_api') ?? false; +} + function hasClientMetrics(input: ReturnType): boolean { if ((input.metrics?.clientSnapshotCount ?? 0) > 0) { return true; diff --git a/packages/perf-tools/src/reporters/JsonReporter.ts b/packages/perf-tools/src/reporters/JsonReporter.ts index f6387037..26fa7be1 100644 --- a/packages/perf-tools/src/reporters/JsonReporter.ts +++ b/packages/perf-tools/src/reporters/JsonReporter.ts @@ -17,6 +17,7 @@ export interface JsonReport { }; capabilities?: { serverMetrics: boolean; + serverMetricSources: string[]; clientMetrics: boolean; clientMetricSources: string[]; }; @@ -44,6 +45,7 @@ export default class JsonReporter { }, capabilities: { serverMetrics: result.capabilities.serverMetrics, + serverMetricSources: result.capabilities.serverMetricSources, clientMetrics: result.capabilities.clientMetrics, clientMetricSources: result.capabilities.clientMetricSources, }, diff --git a/packages/perf-tools/src/runners/BaselineComparer.ts b/packages/perf-tools/src/runners/BaselineComparer.ts index a81c802d..a1d7a4db 100644 --- a/packages/perf-tools/src/runners/BaselineComparer.ts +++ b/packages/perf-tools/src/runners/BaselineComparer.ts @@ -62,6 +62,9 @@ export interface BaselineComparerOptions { export interface ComparisonScope { includeServerMetrics?: boolean; + includeServerTailMetrics?: boolean; + includeServerBudgetMetrics?: boolean; + includeServerNetworkMetrics?: boolean; includeClientMetrics?: boolean; includeClientRenderMetrics?: boolean; } @@ -77,6 +80,10 @@ export interface LoadedBenchmarkInput { warnings?: string[]; issues?: string[]; }; + capabilities?: { + serverMetricSources?: string[]; + clientMetricSources?: string[]; + }; } export default class BaselineComparer { @@ -96,6 +103,9 @@ export default class BaselineComparer { ): ComparisonResult { const entries: ComparisonEntry[] = []; const includeServerMetrics = scope?.includeServerMetrics ?? true; + const includeServerTailMetrics = scope?.includeServerTailMetrics ?? includeServerMetrics; + const includeServerBudgetMetrics = scope?.includeServerBudgetMetrics ?? includeServerMetrics; + const includeServerNetworkMetrics = scope?.includeServerNetworkMetrics ?? includeServerMetrics; const includeClientMetrics = scope?.includeClientMetrics ?? true; const includeClientRenderMetrics = scope?.includeClientRenderMetrics ?? includeClientMetrics; @@ -103,9 +113,15 @@ export default class BaselineComparer { entries.push(this._compareMetric('avgTickMs', baseline.avgTickMs, current.avgTickMs)); entries.push(this._compareMetric('maxTickMs', baseline.maxTickMs, current.maxTickMs)); entries.push(this._compareMetric('p95TickMs', baseline.p95TickMs, current.p95TickMs)); - entries.push(this._compareMetric('p99TickMs', baseline.p99TickMs, current.p99TickMs)); - entries.push(this._compareMetric('ticksOverBudgetPct', baseline.ticksOverBudgetPct, current.ticksOverBudgetPct)); entries.push(this._compareMetric('avgMemoryMb', baseline.avgMemoryMb, current.avgMemoryMb)); + + if (includeServerTailMetrics) { + entries.push(this._compareMetric('p99TickMs', baseline.p99TickMs, current.p99TickMs)); + } + + if (includeServerBudgetMetrics) { + entries.push(this._compareMetric('ticksOverBudgetPct', baseline.ticksOverBudgetPct, current.ticksOverBudgetPct)); + } } if (includeClientMetrics && baseline.avgFps !== undefined && current.avgFps !== undefined) { @@ -123,7 +139,7 @@ export default class BaselineComparer { } } - if (includeServerMetrics && baseline.network && current.network) { + if (includeServerMetrics && includeServerNetworkMetrics && baseline.network && current.network) { entries.push(this._compareMetric('net.maxBytesSentPerSecond', baseline.network.maxBytesSentPerSecond, current.network.maxBytesSentPerSecond)); entries.push(this._compareMetric('net.avgBytesSentPerSecond', baseline.network.avgBytesSentPerSecond, current.network.avgBytesSentPerSecond)); entries.push(this._compareMetric('net.avgSerializationMs', baseline.network.avgSerializationMs, current.network.avgSerializationMs)); @@ -164,6 +180,7 @@ export default class BaselineComparer { baseline: data.baseline as BaselineResult, metrics: data.metrics, validation: data.validation, + capabilities: data.capabilities, }; } diff --git a/packages/perf-tools/src/runners/BenchmarkRunner.ts b/packages/perf-tools/src/runners/BenchmarkRunner.ts index a48d10fd..36575dec 100644 --- a/packages/perf-tools/src/runners/BenchmarkRunner.ts +++ b/packages/perf-tools/src/runners/BenchmarkRunner.ts @@ -44,6 +44,7 @@ export interface PhaseResult { export interface BenchmarkCapabilities { serverMetrics: boolean; + serverMetricSources: Array<'perf_harness' | 'legacy_perf_api'>; clientMetrics: boolean; clientMetricSources: Array<'perf_bridge' | 'webgl_fallback'>; } @@ -644,6 +645,11 @@ export default class BenchmarkRunner { } private _buildCapabilities(metrics: CollectedMetrics): BenchmarkCapabilities { + const serverMetricSources = Array.from(new Set( + metrics.serverSnapshots + .map(snapshot => snapshot.source) + .filter((source): source is 'perf_harness' | 'legacy_perf_api' => source === 'perf_harness' || source === 'legacy_perf_api'), + )); const clientMetricSources = Array.from(new Set( metrics.clientSnapshots .map(snapshot => snapshot.source) @@ -652,6 +658,7 @@ export default class BenchmarkRunner { return { serverMetrics: metrics.serverSnapshots.length > 0, + serverMetricSources, clientMetrics: metrics.clientSnapshots.length > 0, clientMetricSources, }; @@ -678,6 +685,10 @@ export default class BenchmarkRunner { warnings.push('No server snapshots were collected. This run only supports client-side comparison.'); } + if (capabilities.serverMetricSources.includes('legacy_perf_api')) { + warnings.push('Server metrics were normalized from a legacy /__perf endpoint. Network, budget, and p99 comparisons may be limited.'); + } + if (capabilities.clientMetricSources.includes('webgl_fallback') && !capabilities.clientMetricSources.includes('perf_bridge')) { warnings.push('Client metrics were collected via WebGL fallback instrumentation because PerfBridge was unavailable.'); } diff --git a/packages/perf-tools/src/runners/MetricCollector.ts b/packages/perf-tools/src/runners/MetricCollector.ts index 475c3ed5..598de81d 100644 --- a/packages/perf-tools/src/runners/MetricCollector.ts +++ b/packages/perf-tools/src/runners/MetricCollector.ts @@ -18,6 +18,7 @@ export interface CollectedMetrics { export interface ServerSnapshot { timestamp: number; + source?: 'perf_harness' | 'legacy_perf_api'; avgTickMs: number; maxTickMs: number; p95TickMs: number; diff --git a/packages/perf-tools/src/runners/ServerApiClient.ts b/packages/perf-tools/src/runners/ServerApiClient.ts index 62f4dc94..3a7bbf60 100644 --- a/packages/perf-tools/src/runners/ServerApiClient.ts +++ b/packages/perf-tools/src/runners/ServerApiClient.ts @@ -22,6 +22,7 @@ export interface NetworkSnapshot { } interface PerfSnapshotResponse { + source?: 'perf_harness' | 'legacy_perf_api'; timestamp: number; avgTickMs: number; maxTickMs: number; @@ -41,6 +42,52 @@ interface PerfSnapshotResponse { network?: NetworkSnapshot; } +interface LegacyStatsWindowSnapshot { + average?: number; + count?: number; + max?: number; + min?: number; + p50?: number; + p95?: number; + sampleCount?: number; +} + +interface LegacyPerfSnapshotResponse { + generatedAt?: string; + packets?: { + batches?: { + compressedBatches?: number; + rawBytes?: number; + reliableBatches?: number; + totalBatches?: number; + unreliableBatches?: number; + wireBytes?: number; + }; + families?: Record; + }; + spans?: Record; + worlds?: Record>; +} + +interface LegacyPerfEnvelopeResponse { + playerCount?: number; + process?: { + jsHeapSizeMb?: number; + jsHeapCapacityMb?: number; + processHeapSizeMb?: number; + rssSizeMb?: number; + }; + snapshot?: LegacyPerfSnapshotResponse; + version?: string; +} + export type ServerAction = | { type: 'spawn_bots'; count: number; behavior?: string; origin?: { x: number; y: number; z: number } } | { type: 'despawn_bots'; count?: number } @@ -58,6 +105,10 @@ export type ServerAction = export default class ServerApiClient { private _baseUrl: URL; private _token: string | undefined; + private _perfApiMode: 'modern' | 'legacy' | undefined; + private _previousLegacyNetworkSample: + | { timestamp: number; bytesSentTotal: number; packetsSentTotal: number } + | undefined; constructor(baseUrl: string, options?: { token?: string }) { this._baseUrl = new URL(baseUrl); @@ -110,6 +161,10 @@ export default class ServerApiClient { } public async action(action: ServerAction): Promise { + if (this._perfApiMode === 'legacy') { + throw new Error('Perf action failed: target only exposes the legacy snapshot/reset perf API'); + } + const url = new URL('/__perf/action', this._baseUrl); const res = await this._request(url, { method: 'POST', @@ -121,11 +176,37 @@ export default class ServerApiClient { }); if (res.statusCode < 200 || res.statusCode >= 300) { + if (res.statusCode === 404 || res.statusCode === 501) { + this._perfApiMode = 'legacy'; + } + throw new Error(`Action failed: ${res.statusCode} ${res.statusMessage}${res.body ? ` - ${res.body}` : ''}`); } } public async snapshot(): Promise { + if (this._perfApiMode === 'legacy') { + return await this._snapshotLegacy(); + } + + try { + const snapshot = await this._snapshotModern(); + + this._perfApiMode = 'modern'; + return snapshot; + } catch (error) { + if (!this._looksLikeMissingModernPerfApi(error)) { + throw error; + } + } + + const legacySnapshot = await this._snapshotLegacy(); + + this._perfApiMode = 'legacy'; + return legacySnapshot; + } + + private async _snapshotModern(): Promise { const url = new URL('/__perf/snapshot', this._baseUrl); const res = await this._request(url, { method: 'GET', headers: this._headers() }); @@ -136,6 +217,7 @@ export default class ServerApiClient { const data = JSON.parse(res.body) as PerfSnapshotResponse; return { + source: data.source ?? 'perf_harness', timestamp: data.timestamp, avgTickMs: data.avgTickMs, maxTickMs: data.maxTickMs, @@ -150,6 +232,117 @@ export default class ServerApiClient { }; } + private async _snapshotLegacy(): Promise { + const url = new URL('/__perf', this._baseUrl); + const res = await this._request(url, { method: 'GET', headers: this._headers() }); + + if (res.statusCode < 200 || res.statusCode >= 300) { + throw new Error(`Legacy snapshot failed: ${res.statusCode} ${res.statusMessage}`); + } + + const data = JSON.parse(res.body) as LegacyPerfEnvelopeResponse; + const snapshot = data.snapshot; + const spans = snapshot?.spans ?? {}; + const tickSnapshot = this._resolveLegacyTickSnapshot(spans); + const timestamp = this._resolveLegacyTimestamp(snapshot?.generatedAt); + const bytesSentTotal = snapshot?.packets?.batches?.wireBytes ?? 0; + const packetsSentTotal = Object.values(snapshot?.packets?.families ?? {}).reduce((total, family) => { + return total + (family.packetCount ?? 0); + }, 0); + let bytesSentPerSecond = 0; + let packetsSentPerSecond = 0; + + if (this._previousLegacyNetworkSample && timestamp > this._previousLegacyNetworkSample.timestamp) { + const elapsedSeconds = (timestamp - this._previousLegacyNetworkSample.timestamp) / 1000; + + if (elapsedSeconds > 0) { + bytesSentPerSecond = Math.max(0, (bytesSentTotal - this._previousLegacyNetworkSample.bytesSentTotal) / elapsedSeconds); + packetsSentPerSecond = Math.max(0, (packetsSentTotal - this._previousLegacyNetworkSample.packetsSentTotal) / elapsedSeconds); + } + } + + this._previousLegacyNetworkSample = { + timestamp, + bytesSentTotal, + packetsSentTotal, + }; + + return { + source: 'legacy_perf_api', + timestamp, + avgTickMs: tickSnapshot?.average ?? 0, + maxTickMs: tickSnapshot?.max ?? 0, + p95TickMs: tickSnapshot?.p95 ?? 0, + p99TickMs: tickSnapshot?.max ?? tickSnapshot?.p95 ?? 0, + ticksOverBudget: 0, + totalTicks: tickSnapshot?.count ?? tickSnapshot?.sampleCount ?? 0, + budgetMs: 1000 / 60, + operations: Object.fromEntries( + Object.entries(spans).map(([name, legacySpan]) => [name, { + count: legacySpan.count ?? legacySpan.sampleCount ?? 0, + avgMs: legacySpan.average ?? 0, + p95Ms: legacySpan.p95 ?? 0, + p99Ms: legacySpan.max ?? legacySpan.p95 ?? 0, + maxMs: legacySpan.max ?? 0, + }]), + ), + memory: { + heapUsedMb: data.process?.jsHeapSizeMb ?? data.process?.processHeapSizeMb ?? 0, + heapTotalMb: data.process?.jsHeapCapacityMb ?? 0, + rssMb: data.process?.rssSizeMb ?? 0, + }, + network: { + connectedPlayers: data.playerCount ?? 0, + bytesSentTotal, + bytesReceivedTotal: 0, + bytesSentPerSecond, + bytesReceivedPerSecond: 0, + packetsSentPerSecond, + packetsReceivedPerSecond: 0, + avgSerializationMs: spans.serialize_packets?.average ?? spans.serialize_packets_encode?.average ?? 0, + compressionCount: snapshot?.packets?.batches?.compressedBatches ?? 0, + }, + }; + } + + private _looksLikeMissingModernPerfApi(error: unknown): boolean { + if (!(error instanceof Error)) { + return false; + } + + return /Snapshot failed: (404|500|501)\b/.test(error.message); + } + + private _resolveLegacyTimestamp(generatedAt: string | undefined): number { + if (!generatedAt) { + return Date.now(); + } + + const parsed = Date.parse(generatedAt); + + return Number.isFinite(parsed) ? parsed : Date.now(); + } + + private _resolveLegacyTickSnapshot( + spans: Record, + ): LegacyStatsWindowSnapshot | undefined { + const preferred = ['world_tick', 'ticker_tick']; + + for (const name of preferred) { + if (spans[name]) { + return spans[name]; + } + } + + for (const [name, snapshot] of Object.entries(spans)) { + if (name.includes('tick')) { + return snapshot; + } + } + + return undefined; + } + private _headers(): Record { if (!this._token) return {}; From 7daa0c0ad33c0c18fe3dc8268f83a818a6386d93 Mon Sep 17 00:00:00 2001 From: web3dev1337 <160291380+web3dev1337@users.noreply.github.com> Date: Sun, 8 Mar 2026 20:25:33 +1100 Subject: [PATCH 37/40] fix: harden legacy perf overlays --- CODEBASE_DOCUMENTATION.md | 2 +- .../overlays/minimal-server/PerfHarness.ts | 136 ++++++ .../scripts/apply-instrumentation-overlay.sh | 461 ++++++++++++++++-- .../scripts/run-external-game-benchmark.sh | 5 + .../scripts/run-owned-stack-suite.sh | 5 + .../perf-tools/src/reporters/JsonReporter.ts | 3 + 6 files changed, 580 insertions(+), 32 deletions(-) create mode 100644 packages/perf-tools/overlays/minimal-server/PerfHarness.ts diff --git a/CODEBASE_DOCUMENTATION.md b/CODEBASE_DOCUMENTATION.md index 8c8167f1..25dc39d6 100644 --- a/CODEBASE_DOCUMENTATION.md +++ b/CODEBASE_DOCUMENTATION.md @@ -16,7 +16,7 @@ PROTOCOL: protocol/ - Packet schemas + definitions (@hytopia.com/server-protocol SDK: sdk/ - Git submodule → hytopiagg/sdk (build output lands here) EXAMPLES: sdk-examples/ - Reference games built with the SDK ASSETS: assets/release/ - Default game assets (audio, blocks, maps, models, particles, skyboxes, ui) -PERF: packages/perf-tools/ - Benchmark CLI + trace analysis (`hytopia-bench`), headless client metrics, synthetic + real-game presets (`zoo-game-full` single-client benchmark, `zoo-game-observe` 5-client joinable Zoo run), helper scripts for linking/running external games (including linked SDK runtime deps, target-ref dependency prep via `ensure-node-modules.sh`, `apply-instrumentation-overlay.sh` for temporary legacy-ref PerfBridge/PerfHarness patching, repeatable HyFire2/Zoo Game workflows, and `run-owned-stack-suite.sh` for one-command multi-game runs against a chosen engine ref/PR). Older engine refs now prefer overlayed client/server perf hooks, then fall back to validated legacy `/__perf` normalization plus compare-time metric skipping instead of misleading zero baselines. +PERF: packages/perf-tools/ - Benchmark CLI + trace analysis (`hytopia-bench`), headless client metrics, synthetic + real-game presets (`zoo-game-full` single-client benchmark, `zoo-game-observe` 5-client joinable Zoo run), helper scripts for linking/running external games (including linked SDK runtime deps, target-ref dependency prep via `ensure-node-modules.sh`, `apply-instrumentation-overlay.sh` for temporary legacy-ref PerfBridge/PerfHarness patching, `overlays/legacy-server/` for older PerfBaseline refs, `overlays/minimal-server/` for telemetry-minimal refs that need injected monitor/network hooks, repeatable HyFire2/Zoo Game workflows, and `run-owned-stack-suite.sh` for one-command multi-game runs against a chosen engine ref/PR). Older engine refs now prefer overlayed client/server perf hooks, normalize report outputs to stable paths, then fall back to validated legacy `/__perf` normalization plus compare-time metric skipping instead of misleading zero baselines. CONFIG: package.json - Monorepo root (npm workspaces) server/package.json - Server deps + build scripts server/tsconfig.json - Strict TS, path alias @/* → ./src/* diff --git a/packages/perf-tools/overlays/minimal-server/PerfHarness.ts b/packages/perf-tools/overlays/minimal-server/PerfHarness.ts new file mode 100644 index 00000000..7d39fc8e --- /dev/null +++ b/packages/perf-tools/overlays/minimal-server/PerfHarness.ts @@ -0,0 +1,136 @@ +import type http from 'http'; +import ErrorHandler from '@/errors/ErrorHandler'; +import NetworkMetrics from '@/metrics/NetworkMetrics'; +import PerformanceMonitor from '@/metrics/PerformanceMonitor'; + +const PERF_PREFIX = '/__perf'; +const MAX_BODY_BYTES = 1024 * 1024; + +function isPerfToolsEnabled(): boolean { + const value = process.env.HYTOPIA_PERF_TOOLS; + + return value === '1' || value === 'true'; +} + +function isAuthorized(req: http.IncomingMessage): boolean { + const token = process.env.HYTOPIA_PERF_TOOLS_TOKEN; + + if (!token) { + return true; + } + + return req.headers['x-hytopia-perf-token'] === token; +} + +function respondJson(res: http.ServerResponse, status: number, body: unknown): void { + res.writeHead(status, { + 'content-type': 'application/json', + 'cache-control': 'no-store', + 'access-control-allow-origin': '*', + }); + res.end(JSON.stringify(body)); +} + +function drainBody(req: http.IncomingMessage, onDone: () => void): void { + let received = 0; + + req.on('data', chunk => { + received += Buffer.isBuffer(chunk) ? chunk.length : Buffer.byteLength(String(chunk)); + + if (received > MAX_BODY_BYTES) { + req.destroy(); + } + }); + + req.on('error', onDone); + req.on('end', onDone); +} + +export default class PerfHarness { + public static enableIfConfigured(): void { + if (!isPerfToolsEnabled()) { + return; + } + + try { + if (!PerformanceMonitor.instance.isEnabled) { + PerformanceMonitor.instance.enable({ snapshotIntervalMs: 0 }); + } + + if (!NetworkMetrics.instance.isEnabled) { + NetworkMetrics.instance.enable(); + } + } catch (error) { + ErrorHandler.warning(`PerfHarness.enableIfConfigured(): Failed to enable perf tools. Error: ${String(error)}`); + } + } + + public static handleWebRequest(req: http.IncomingMessage, res: http.ServerResponse): boolean { + if (!isPerfToolsEnabled()) { + return false; + } + + const reqPath = req.url?.split('?')[0] ?? '/'; + + if (!reqPath.startsWith(PERF_PREFIX)) { + return false; + } + + if (!isAuthorized(req)) { + respondJson(res, 401, { ok: false, error: 'Unauthorized' }); + return true; + } + + if (req.method === 'OPTIONS') { + res.writeHead(204, { + 'access-control-allow-origin': '*', + 'access-control-allow-methods': 'GET,POST,DELETE,OPTIONS', + 'access-control-allow-headers': 'content-type,x-hytopia-perf-token', + }); + res.end(); + return true; + } + + if ((reqPath === `${PERF_PREFIX}/reset`) && (req.method === 'POST' || req.method === 'DELETE')) { + PerformanceMonitor.instance.resetStats(); + NetworkMetrics.instance.reset(); + res.writeHead(204, { 'access-control-allow-origin': '*' }); + res.end(); + return true; + } + + if ((reqPath === `${PERF_PREFIX}/snapshot` || reqPath === PERF_PREFIX) && req.method === 'GET') { + const snapshot = PerformanceMonitor.instance.getSnapshot(); + const network = NetworkMetrics.instance.getSnapshot(); + + respondJson(res, 200, { + source: 'perf_harness', + timestamp: Date.now(), + avgTickMs: snapshot.avgTickMs, + maxTickMs: snapshot.maxTickMs, + p95TickMs: snapshot.p95TickMs, + p99TickMs: snapshot.p99TickMs, + ticksOverBudget: snapshot.ticksOverBudget, + totalTicks: snapshot.totalTicks, + budgetMs: snapshot.budgetMs, + operations: snapshot.operations, + memory: snapshot.memory, + network, + }); + return true; + } + + if (reqPath === `${PERF_PREFIX}/action` && req.method === 'POST') { + drainBody(req, () => { + respondJson(res, 501, { + ok: false, + error: 'Perf actions are not available on this overlay target.', + }); + }); + return true; + } + + respondJson(res, 404, { ok: false, error: 'Perf endpoint not found' }); + return true; + } +} diff --git a/packages/perf-tools/scripts/apply-instrumentation-overlay.sh b/packages/perf-tools/scripts/apply-instrumentation-overlay.sh index 52ca465f..7928da75 100755 --- a/packages/perf-tools/scripts/apply-instrumentation-overlay.sh +++ b/packages/perf-tools/scripts/apply-instrumentation-overlay.sh @@ -54,9 +54,14 @@ SOURCE_SERVER_PKG="$SOURCE_ENGINE_REPO/server/package.json" TARGET_SERVER_PKG="$TARGET_ENGINE_REPO/server/package.json" TARGET_GAME_TS="$TARGET_ENGINE_REPO/client/src/Game.ts" TARGET_WEB_SERVER_TS="$TARGET_ENGINE_REPO/server/src/networking/WebServer.ts" +TARGET_WORLD_LOOP_TS="$TARGET_ENGINE_REPO/server/src/worlds/WorldLoop.ts" +TARGET_CONNECTION_TS="$TARGET_ENGINE_REPO/server/src/networking/Connection.ts" +TARGET_PLAYER_MANAGER_TS="$TARGET_ENGINE_REPO/server/src/players/PlayerManager.ts" TARGET_PERF_BRIDGE_TS="$TARGET_ENGINE_REPO/client/src/core/PerfBridge.ts" TARGET_PERF_HARNESS_ENTRY_TS="$TARGET_ENGINE_REPO/server/src/perf/perf-harness.ts" TARGET_PERF_HARNESS_TS="$TARGET_ENGINE_REPO/server/src/perf/PerfHarness.ts" +TARGET_PERF_MONITOR_TS="$TARGET_ENGINE_REPO/server/src/metrics/PerformanceMonitor.ts" +TARGET_NETWORK_METRICS_TS="$TARGET_ENGINE_REPO/server/src/metrics/NetworkMetrics.ts" MANIFEST_PATH="$TARGET_ENGINE_REPO/.perf-tools-overlay.json" TARGET_ENGINE_REPO="$TARGET_ENGINE_REPO" \ @@ -65,9 +70,14 @@ SOURCE_SERVER_PKG="$SOURCE_SERVER_PKG" \ TARGET_SERVER_PKG="$TARGET_SERVER_PKG" \ TARGET_GAME_TS="$TARGET_GAME_TS" \ TARGET_WEB_SERVER_TS="$TARGET_WEB_SERVER_TS" \ +TARGET_WORLD_LOOP_TS="$TARGET_WORLD_LOOP_TS" \ +TARGET_CONNECTION_TS="$TARGET_CONNECTION_TS" \ +TARGET_PLAYER_MANAGER_TS="$TARGET_PLAYER_MANAGER_TS" \ TARGET_PERF_BRIDGE_TS="$TARGET_PERF_BRIDGE_TS" \ TARGET_PERF_HARNESS_ENTRY_TS="$TARGET_PERF_HARNESS_ENTRY_TS" \ TARGET_PERF_HARNESS_TS="$TARGET_PERF_HARNESS_TS" \ +TARGET_PERF_MONITOR_TS="$TARGET_PERF_MONITOR_TS" \ +TARGET_NETWORK_METRICS_TS="$TARGET_NETWORK_METRICS_TS" \ MANIFEST_PATH="$MANIFEST_PATH" \ node <<'NODE' const fs = require('fs'); @@ -79,14 +89,22 @@ const sourceServerPkgPath = process.env.SOURCE_SERVER_PKG; const targetServerPkgPath = process.env.TARGET_SERVER_PKG; const targetGamePath = process.env.TARGET_GAME_TS; const targetWebServerPath = process.env.TARGET_WEB_SERVER_TS; +const targetWorldLoopPath = process.env.TARGET_WORLD_LOOP_TS; +const targetConnectionPath = process.env.TARGET_CONNECTION_TS; +const targetPlayerManagerPath = process.env.TARGET_PLAYER_MANAGER_TS; const targetPerfBridgePath = process.env.TARGET_PERF_BRIDGE_TS; const targetPerfHarnessEntryPath = process.env.TARGET_PERF_HARNESS_ENTRY_TS; const targetPerfHarnessPath = process.env.TARGET_PERF_HARNESS_TS; +const targetPerfMonitorPath = process.env.TARGET_PERF_MONITOR_TS; +const targetNetworkMetricsPath = process.env.TARGET_NETWORK_METRICS_TS; const manifestPath = process.env.MANIFEST_PATH; const sourcePerfBridgePath = path.join(sourceRepo, 'client/src/core/PerfBridge.ts'); const sourcePerfHarnessEntryPath = path.join(sourceRepo, 'server/src/perf/perf-harness.ts'); const legacyPerfHarnessPath = path.join(sourceRepo, 'packages/perf-tools/overlays/legacy-server/PerfHarness.ts'); +const minimalPerfHarnessPath = path.join(sourceRepo, 'packages/perf-tools/overlays/minimal-server/PerfHarness.ts'); +const sourcePerfMonitorPath = path.join(sourceRepo, 'server/src/metrics/PerformanceMonitor.ts'); +const sourceNetworkMetricsPath = path.join(sourceRepo, 'server/src/metrics/NetworkMetrics.ts'); const manifest = { sourceEngineRepo: sourceRepo, @@ -99,7 +117,11 @@ const manifest = { server: { perfHarness: 'none', perfHarnessEntry: 'none', + mode: 'none', webServerPatched: false, + worldLoopPatched: false, + connectionPatched: false, + playerManagerPatched: false, buildScriptPatched: false, snapshotApi: false, actionApi: false, @@ -128,6 +150,26 @@ function copyIfMissing(sourcePath, targetPath) { return true; } +function replaceOnce(text, searchValue, replaceValue) { + if (!text.includes(searchValue)) { + return { text, changed: false }; + } + + return { + text: text.replace(searchValue, replaceValue), + changed: true, + }; +} + +function replaceRegexOnce(text, pattern, replaceValue) { + const nextText = text.replace(pattern, replaceValue); + + return { + text: nextText, + changed: nextText !== text, + }; +} + function patchGame() { if (!exists(targetGamePath)) { return false; @@ -137,27 +179,33 @@ function patchGame() { let changed = false; if (!text.includes("import PerfBridge from './core/PerfBridge';")) { - const anchor = "import PerformanceMetricsManager from './core/PerformanceMetricsManager';"; - if (text.includes(anchor)) { - text = text.replace(anchor, `${anchor}\nimport PerfBridge from './core/PerfBridge';`); - changed = true; - } + const replaced = replaceRegexOnce( + text, + /(import PerformanceMetricsManager from '\.\/core\/PerformanceMetricsManager';\n)/, + `$1import PerfBridge from './core/PerfBridge';\n`, + ); + text = replaced.text; + changed = changed || replaced.changed; } if (!text.includes('readonly inPerfMode')) { - const anchor = "readonly inDebugMode = new URLSearchParams(window.location.search).has(DEBUG_QUERY_STRINGS);"; - if (text.includes(anchor)) { - text = text.replace(anchor, `${anchor}\n readonly inPerfMode = new URLSearchParams(window.location.search).get('perf') === '1';`); - changed = true; - } + const replaced = replaceRegexOnce( + text, + /( readonly inDebugMode = [^\n]+;\n)/, + `$1 readonly inPerfMode = new URLSearchParams(window.location.search).get('perf') === '1';\n`, + ); + text = replaced.text; + changed = changed || replaced.changed; } if (!text.includes('new PerfBridge(this);')) { - const anchor = ' this._chunkWorkerClient = new ChunkWorkerClient();'; - if (text.includes(anchor)) { - text = text.replace(anchor, `${anchor}\n\n if (this.inPerfMode) {\n new PerfBridge(this);\n }`); - changed = true; - } + const replaced = replaceRegexOnce( + text, + /( this\._chunkWorkerClient = new ChunkWorkerClient\(\);\n)/, + `$1\n if (this.inPerfMode) {\n new PerfBridge(this);\n }\n`, + ); + text = replaced.text; + changed = changed || replaced.changed; } if (changed) { @@ -176,27 +224,33 @@ function patchWebServer() { let changed = false; if (!text.includes("import PerfHarness from '@/perf/PerfHarness';")) { - const anchor = "import PlayerManager from '@/players/PlayerManager';"; - if (text.includes(anchor)) { - text = text.replace(anchor, `${anchor}\nimport PerfHarness from '@/perf/PerfHarness';`); - changed = true; - } + const replaced = replaceRegexOnce( + text, + /(import PlayerManager from '@\/players\/PlayerManager';\n)/, + `$1import PerfHarness from '@/perf/PerfHarness';\n`, + ); + text = replaced.text; + changed = changed || replaced.changed; } if (!text.includes('PerfHarness.enableIfConfigured();')) { - const anchor = " if (this._server) {\n return ErrorHandler.warning('WebServer.start(): already started');\n }\n"; - if (text.includes(anchor)) { - text = text.replace(anchor, `${anchor}\n PerfHarness.enableIfConfigured();\n`); - changed = true; - } + const replaced = replaceRegexOnce( + text, + /( this\._server = http2\.createSecureServer\(\{ key: SSL_KEY, cert: SSL_CERT, allowHTTP1: true \}\);\n)/, + ` PerfHarness.enableIfConfigured();\n\n$1`, + ); + text = replaced.text; + changed = changed || replaced.changed; } if (!text.includes('PerfHarness.handleWebRequest(req, res)')) { - const anchor = ' // Health check'; - if (text.includes(anchor)) { - text = text.replace(anchor, " if (PerfHarness.handleWebRequest(req, res)) {\n return;\n }\n\n // Health check"); - changed = true; - } + const replaced = replaceRegexOnce( + text, + /( \/\/ Health check\n)/, + ` if (PerfHarness.handleWebRequest(req, res)) {\n return;\n }\n\n$1`, + ); + text = replaced.text; + changed = changed || replaced.changed; } if (changed) { @@ -234,6 +288,319 @@ function hasModernServerPerfHarness() { return text.includes('/__perf/action') && text.includes('/__perf/snapshot'); } +function hasLegacyPerformanceBaseline() { + return exists(path.join(targetRepo, 'server/src/metrics/PerformanceBaseline.ts')); +} + +function patchWorldLoop() { + if (!exists(targetWorldLoopPath)) { + return false; + } + + let text = read(targetWorldLoopPath); + let changed = false; + + if (!text.includes("import PerformanceMonitor from '@/metrics/PerformanceMonitor';")) { + const replaced = replaceRegexOnce( + text, + /(import PlayerManager from '@\/players\/PlayerManager';\n)/, + `$1import PerformanceMonitor from '@/metrics/PerformanceMonitor';\n`, + ); + text = replaced.text; + changed = changed || replaced.changed; + } + + if (!text.includes('const perfMon = PerformanceMonitor.instance;')) { + const replaced = replaceRegexOnce( + text, + /( const tickStart = performance\.now\(\);\n)/, + `${[ + '$1', + ' const perfMon = PerformanceMonitor.instance;', + ' const profiling = perfMon.isEnabled;', + '', + ' if (profiling) {', + ' perfMon.beginTick(', + ' this._currentTick,', + ' this._world.entityManager.entityCount,', + ' PlayerManager.instance.playerCount,', + ' this._world.id,', + ' );', + ' }', + '', + ].join('\n')}`, + ); + text = replaced.text; + changed = changed || replaced.changed; + } + + if (!text.includes("perfMon.recordPhase('entities_tick'")) { + const replaced = replaceOnce( + text, + " }, () => this._world.entityManager.tickEntities(tickDeltaMs));", + [ + " }, () => {", + ' const phaseStart = profiling ? performance.now() : 0;', + ' this._world.entityManager.tickEntities(tickDeltaMs);', + " if (profiling) perfMon.recordPhase('entities_tick', performance.now() - phaseStart, this._world.id);", + ' });', + ].join('\n'), + ); + text = replaced.text; + changed = changed || replaced.changed; + } + + if (!text.includes("perfMon.recordPhase('simulation_step'")) { + const replaced = replaceOnce( + text, + " }, () => this._world.simulation.step(tickDeltaMs));", + [ + " }, () => {", + ' const phaseStart = profiling ? performance.now() : 0;', + ' this._world.simulation.step(tickDeltaMs);', + " if (profiling) perfMon.recordPhase('simulation_step', performance.now() - phaseStart, this._world.id);", + ' });', + ].join('\n'), + ); + text = replaced.text; + changed = changed || replaced.changed; + } + + if (!text.includes("perfMon.recordPhase('entities_emit_updates'")) { + const replaced = replaceOnce( + text, + " }, () => this._world.entityManager.checkAndEmitUpdates());", + [ + " }, () => {", + ' const phaseStart = profiling ? performance.now() : 0;', + ' this._world.entityManager.checkAndEmitUpdates();', + " if (profiling) perfMon.recordPhase('entities_emit_updates', performance.now() - phaseStart, this._world.id);", + ' });', + ].join('\n'), + ); + text = replaced.text; + changed = changed || replaced.changed; + } + + if (!text.includes("perfMon.recordPhase('network_synchronize'")) { + const replaced = replaceOnce( + text, + " }, () => this._world.networkSynchronizer.synchronize());", + [ + ' }, () => {', + ' const phaseStart = profiling ? performance.now() : 0;', + ' this._world.networkSynchronizer.synchronize();', + " if (profiling) perfMon.recordPhase('network_synchronize', performance.now() - phaseStart, this._world.id);", + ' });', + ].join('\n'), + ); + text = replaced.text; + changed = changed || replaced.changed; + } + + if (!text.includes('perfMon.endTick(this._world.id);')) { + const replaced = replaceRegexOnce( + text, + /(\n this\._currentTick\+\+;\n)/, + `\n if (profiling) {\n perfMon.endTick(this._world.id);\n }$1`, + ); + text = replaced.text; + changed = changed || replaced.changed; + } + + if (changed) { + write(targetWorldLoopPath, text); + } + + return changed; +} + +function patchConnection() { + if (!exists(targetConnectionPath)) { + return false; + } + + let text = read(targetConnectionPath); + let changed = false; + + if (!text.includes("import NetworkMetrics from '@/metrics/NetworkMetrics';")) { + const replaced = replaceRegexOnce( + text, + /(import EventRouter from '@\/events\/EventRouter';\n)/, + `$1import NetworkMetrics from '@/metrics/NetworkMetrics';\n`, + ); + text = replaced.text; + changed = changed || replaced.changed; + } + + if (!text.includes('netMetrics.recordSerialization(')) { + let replaced = replaceOnce( + text, + " }, span => {\n let outputBuffer = msgpackr.pack(packets);", + [ + ' }, span => {', + ' const netMetrics = NetworkMetrics.instance;', + ' const recordNetwork = netMetrics.isEnabled;', + ' const start = recordNetwork ? performance.now() : 0;', + '', + ' let outputBuffer = msgpackr.pack(packets);', + ].join('\n'), + ); + text = replaced.text; + changed = changed || replaced.changed; + + replaced = replaceOnce( + text, + ' if (outputBuffer.byteLength > 64 * 1024) { // Compress packets larger than 64kb, mainly chunks.', + [ + ' const shouldCompress = outputBuffer.byteLength > 64 * 1024;', + '', + ' if (shouldCompress) { // Compress packets larger than 64kb, mainly chunks.', + ].join('\n'), + ); + text = replaced.text; + changed = changed || replaced.changed; + + replaced = replaceOnce( + text, + '\n return outputBuffer;\n });', + [ + '', + ' if (recordNetwork) {', + ' netMetrics.recordSerialization(performance.now() - start);', + ' if (shouldCompress) {', + ' netMetrics.recordCompression();', + ' }', + ' }', + '', + ' return outputBuffer;', + ' });', + ].join('\n'), + ); + text = replaced.text; + changed = changed || replaced.changed; + } + + if (!text.includes('netMetrics.recordBytesSent(bytesSent);')) { + let replaced = replaceOnce( + text, + ' if (wtConnected) {', + [ + ' const netMetrics = NetworkMetrics.instance;', + ' const recordNetwork = netMetrics.isEnabled;', + '', + ' let bytesSent = serializedBuffer.byteLength;', + '', + ' if (wtConnected) {', + ].join('\n'), + ); + text = replaced.text; + changed = changed || replaced.changed; + + replaced = replaceOnce( + text, + ' this._wtReliableWriter?.write(protocol.framePacketBuffer(serializedBuffer)).catch(() => {', + [ + ' const framed = protocol.framePacketBuffer(serializedBuffer);', + ' bytesSent = framed.byteLength;', + '', + ' this._wtReliableWriter?.write(framed).catch(() => {', + ].join('\n'), + ); + text = replaced.text; + changed = changed || replaced.changed; + + replaced = replaceOnce( + text, + '\n this.emitWithGlobal(ConnectionEvent.PACKETS_SENT, {', + [ + '', + ' if (recordNetwork) {', + ' netMetrics.recordBytesSent(bytesSent);', + ' for (let i = 0; i < packets.length; i++) {', + ' netMetrics.recordPacketSent();', + ' }', + ' }', + '', + ' this.emitWithGlobal(ConnectionEvent.PACKETS_SENT, {', + ].join('\n'), + ); + text = replaced.text; + changed = changed || replaced.changed; + } + + if (!text.includes('netMetrics.recordBytesReceived(data.byteLength);')) { + const replaced = replaceOnce( + text, + " private _onMessage = (data: Buffer): void => {\n try {\n const packet = this._deserialize(data);", + [ + ' private _onMessage = (data: Buffer): void => {', + ' const netMetrics = NetworkMetrics.instance;', + ' const recordNetwork = netMetrics.isEnabled;', + '', + ' if (recordNetwork) {', + ' netMetrics.recordBytesReceived(data.byteLength);', + ' netMetrics.recordPacketReceived();', + ' }', + '', + ' try {', + ' const packet = this._deserialize(data);', + ].join('\n'), + ); + text = replaced.text; + changed = changed || replaced.changed; + } + + if (changed) { + write(targetConnectionPath, text); + } + + return changed; +} + +function patchPlayerManager() { + if (!exists(targetPlayerManagerPath)) { + return false; + } + + let text = read(targetPlayerManagerPath); + let changed = false; + + if (!text.includes("import NetworkMetrics from '@/metrics/NetworkMetrics';")) { + const replaced = replaceRegexOnce( + text, + /(import ErrorHandler from '@\/errors\/ErrorHandler';\n)/, + `$1import NetworkMetrics from '@/metrics/NetworkMetrics';\n`, + ); + text = replaced.text; + changed = changed || replaced.changed; + } + + if (!text.includes('NetworkMetrics.instance.setConnectedPlayers(this.playerCount);')) { + let replaced = replaceOnce( + text, + ' this._connectionPlayers.set(connection, player);\n', + ' this._connectionPlayers.set(connection, player);\n NetworkMetrics.instance.setConnectedPlayers(this.playerCount);\n', + ); + text = replaced.text; + changed = changed || replaced.changed; + + replaced = replaceOnce( + text, + ' this._connectionPlayers.delete(connection);\n', + ' this._connectionPlayers.delete(connection);\n NetworkMetrics.instance.setConnectedPlayers(this.playerCount);\n', + ); + text = replaced.text; + changed = changed || replaced.changed; + } + + if (changed) { + write(targetPlayerManagerPath, text); + } + + return changed; +} + if (path.resolve(sourceRepo) === path.resolve(targetRepo)) { console.log('Instrumentation overlay manifest: none (source and target are the same checkout)'); process.exit(0); @@ -241,18 +608,50 @@ if (path.resolve(sourceRepo) === path.resolve(targetRepo)) { if (hasModernServerPerfHarness()) { manifest.server.perfHarness = 'existing'; + manifest.server.mode = 'modern-existing'; manifest.server.snapshotApi = true; manifest.server.actionApi = true; -} else { +} else if (hasLegacyPerformanceBaseline()) { write(targetPerfHarnessPath, read(legacyPerfHarnessPath)); manifest.applied = true; manifest.server.perfHarness = 'overlay'; + manifest.server.mode = 'legacy-baseline'; + + if (patchWebServer()) { + manifest.applied = true; + manifest.server.webServerPatched = true; + } + + manifest.server.snapshotApi = true; + manifest.server.actionApi = false; +} else { + write(targetPerfHarnessPath, read(minimalPerfHarnessPath)); + write(targetPerfMonitorPath, read(sourcePerfMonitorPath)); + write(targetNetworkMetricsPath, read(sourceNetworkMetricsPath)); + manifest.applied = true; + manifest.server.perfHarness = 'overlay'; + manifest.server.mode = 'telemetry-minimal'; if (patchWebServer()) { manifest.applied = true; manifest.server.webServerPatched = true; } + if (patchWorldLoop()) { + manifest.applied = true; + manifest.server.worldLoopPatched = true; + } + + if (patchConnection()) { + manifest.applied = true; + manifest.server.connectionPatched = true; + } + + if (patchPlayerManager()) { + manifest.applied = true; + manifest.server.playerManagerPatched = true; + } + manifest.server.snapshotApi = true; manifest.server.actionApi = false; } diff --git a/packages/perf-tools/scripts/run-external-game-benchmark.sh b/packages/perf-tools/scripts/run-external-game-benchmark.sh index 2a8a1d7d..3e203550 100755 --- a/packages/perf-tools/scripts/run-external-game-benchmark.sh +++ b/packages/perf-tools/scripts/run-external-game-benchmark.sh @@ -3,6 +3,7 @@ set -euo pipefail SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)" REPO_ROOT="$(cd "$SCRIPT_DIR/../../.." && pwd)" +INVOCATION_CWD="$(pwd)" GAME_DIR="" PRESET="" @@ -131,6 +132,10 @@ if [[ ! -f "$GAME_DIR/package.json" ]]; then exit 1 fi +if [[ -n "$OUTPUT" && "$OUTPUT" != /* ]]; then + OUTPUT="$INVOCATION_CWD/$OUTPUT" +fi + SERVER_PID="" cleanup() { diff --git a/packages/perf-tools/scripts/run-owned-stack-suite.sh b/packages/perf-tools/scripts/run-owned-stack-suite.sh index 7027d7c2..6ae471d2 100755 --- a/packages/perf-tools/scripts/run-owned-stack-suite.sh +++ b/packages/perf-tools/scripts/run-owned-stack-suite.sh @@ -4,6 +4,7 @@ set -euo pipefail SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)" REPO_ROOT="$(cd "$SCRIPT_DIR/../../.." && pwd)" TOOLS_REPO="$REPO_ROOT" +INVOCATION_CWD="$(pwd)" ENGINE_REPO="$REPO_ROOT" ENGINE_REF="" @@ -195,6 +196,10 @@ if [[ ! -d "$ENGINE_REPO/.git" && ! -f "$ENGINE_REPO/.git" ]]; then exit 1 fi +if [[ "$OUTPUT_ROOT" != /* ]]; then + OUTPUT_ROOT="$INVOCATION_CWD/$OUTPUT_ROOT" +fi + prepare_engine_checkout() { bash "$TOOLS_REPO/packages/perf-tools/scripts/ensure-node-modules.sh" \ --source-repo "$ENGINE_REPO" \ diff --git a/packages/perf-tools/src/reporters/JsonReporter.ts b/packages/perf-tools/src/reporters/JsonReporter.ts index 26fa7be1..93e5015b 100644 --- a/packages/perf-tools/src/reporters/JsonReporter.ts +++ b/packages/perf-tools/src/reporters/JsonReporter.ts @@ -1,4 +1,5 @@ import * as fs from 'node:fs'; +import * as path from 'node:path'; import type { BenchmarkResult } from '../runners/BenchmarkRunner.js'; import type { ComparisonResult } from '../runners/BaselineComparer.js'; @@ -54,6 +55,7 @@ export default class JsonReporter { } public writeReport(report: JsonReport, outputPath: string): void { + fs.mkdirSync(path.dirname(outputPath), { recursive: true }); fs.writeFileSync(outputPath, JSON.stringify(report, null, 2), 'utf-8'); } @@ -68,6 +70,7 @@ export default class JsonReporter { }, }; + fs.mkdirSync(path.dirname(outputPath), { recursive: true }); fs.writeFileSync(outputPath, JSON.stringify(data, null, 2), 'utf-8'); } } From bec65376af5b8728cc35800c141dfcd940aab655 Mon Sep 17 00:00:00 2001 From: web3dev1337 <160291380+web3dev1337@users.noreply.github.com> Date: Mon, 9 Mar 2026 09:21:11 +1100 Subject: [PATCH 38/40] fix: resolve perf PR refs from upstream --- CODEBASE_DOCUMENTATION.md | 2 +- .../perf-branch-state-2026-03-06/FINAL.md | 1 + .../scripts/run-owned-stack-suite.sh | 21 +++++++++++++++++-- 3 files changed, 21 insertions(+), 3 deletions(-) diff --git a/CODEBASE_DOCUMENTATION.md b/CODEBASE_DOCUMENTATION.md index 25dc39d6..472c651f 100644 --- a/CODEBASE_DOCUMENTATION.md +++ b/CODEBASE_DOCUMENTATION.md @@ -16,7 +16,7 @@ PROTOCOL: protocol/ - Packet schemas + definitions (@hytopia.com/server-protocol SDK: sdk/ - Git submodule → hytopiagg/sdk (build output lands here) EXAMPLES: sdk-examples/ - Reference games built with the SDK ASSETS: assets/release/ - Default game assets (audio, blocks, maps, models, particles, skyboxes, ui) -PERF: packages/perf-tools/ - Benchmark CLI + trace analysis (`hytopia-bench`), headless client metrics, synthetic + real-game presets (`zoo-game-full` single-client benchmark, `zoo-game-observe` 5-client joinable Zoo run), helper scripts for linking/running external games (including linked SDK runtime deps, target-ref dependency prep via `ensure-node-modules.sh`, `apply-instrumentation-overlay.sh` for temporary legacy-ref PerfBridge/PerfHarness patching, `overlays/legacy-server/` for older PerfBaseline refs, `overlays/minimal-server/` for telemetry-minimal refs that need injected monitor/network hooks, repeatable HyFire2/Zoo Game workflows, and `run-owned-stack-suite.sh` for one-command multi-game runs against a chosen engine ref/PR). Older engine refs now prefer overlayed client/server perf hooks, normalize report outputs to stable paths, then fall back to validated legacy `/__perf` normalization plus compare-time metric skipping instead of misleading zero baselines. +PERF: packages/perf-tools/ - Benchmark CLI + trace analysis (`hytopia-bench`), headless client metrics, synthetic + real-game presets (`zoo-game-full` single-client benchmark, `zoo-game-observe` 5-client joinable Zoo run), helper scripts for linking/running external games (including linked SDK runtime deps, target-ref dependency prep via `ensure-node-modules.sh`, `apply-instrumentation-overlay.sh` for temporary legacy-ref PerfBridge/PerfHarness patching, `overlays/legacy-server/` for older PerfBaseline refs, `overlays/minimal-server/` for telemetry-minimal refs that need injected monitor/network hooks, repeatable HyFire2/Zoo Game workflows, and `run-owned-stack-suite.sh` for one-command multi-game runs against a chosen engine ref/PR with `origin`/`upstream` fetch fallback). Older engine refs now prefer overlayed client/server perf hooks, normalize report outputs to stable paths, then fall back to validated legacy `/__perf` normalization plus compare-time metric skipping instead of misleading zero baselines. CONFIG: package.json - Monorepo root (npm workspaces) server/package.json - Server deps + build scripts server/tsconfig.json - Strict TS, path alias @/* → ./src/* diff --git a/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md b/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md index 6f20b2aa..d9948cf1 100644 --- a/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md +++ b/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md @@ -161,6 +161,7 @@ Cross-ref hardening added after testing `RZDESIGN/hytopia-source@merged-all-prs- - dependency reuse only happens when the target package lockfile or manifest matches; otherwise the target ref gets its own install - SDK linking for external-game runs now does a runtime `build:server` build instead of the full declaration/docs pipeline, so older engine refs do not fail just because their type/doc build is stale - the suite auto-picks the actual free client port starting from `4173` and launches Vite with `--strictPort`, preventing silent `4173` -> `4174` drift +- `run-owned-stack-suite.sh` now resolves `--engine-ref pr:` and other fetched refs through `origin` first and then `upstream`, so upstream PRs can be benchmarked directly from this fork checkout - benchmark JSON now records validation/capability state so missing snapshots are surfaced as warnings/issues instead of silently becoming zero baselines - `compare` now skips non-shared metric families such as server snapshots or render counters when one side lacks them, instead of treating missing data as an improvement diff --git a/packages/perf-tools/scripts/run-owned-stack-suite.sh b/packages/perf-tools/scripts/run-owned-stack-suite.sh index 6ae471d2..14928e47 100755 --- a/packages/perf-tools/scripts/run-owned-stack-suite.sh +++ b/packages/perf-tools/scripts/run-owned-stack-suite.sh @@ -98,6 +98,23 @@ join_by() { done } +fetch_engine_ref() { + local ref="$1" + local remote + + for remote in origin upstream; do + if ! git -C "$ENGINE_REPO" remote get-url "$remote" >/dev/null 2>&1; then + continue + fi + + if git -C "$ENGINE_REPO" fetch "$remote" "$ref"; then + return 0 + fi + done + + return 1 +} + cleanup() { if [[ -n "$CLIENT_SERVER_PID" ]]; then kill -TERM "-$CLIENT_SERVER_PID" >/dev/null 2>&1 || true @@ -299,7 +316,7 @@ resolve_engine_checkout() { fi if [[ -n "$fetch_target" ]]; then - git -C "$ENGINE_REPO" fetch origin "$fetch_target" + fetch_engine_ref "$fetch_target" RESOLVED_COMMIT="$(git -C "$ENGINE_REPO" rev-parse FETCH_HEAD)" RESOLVED_LABEL="$(sanitize_slug "pr-${fetch_target#pull/}")" RESOLVED_LABEL="${RESOLVED_LABEL%-head}" @@ -307,7 +324,7 @@ resolve_engine_checkout() { RESOLVED_COMMIT="$(git -C "$ENGINE_REPO" rev-parse "${ENGINE_REF}^{commit}")" RESOLVED_LABEL="$(sanitize_slug "${ENGINE_REF}-$(git -C "$ENGINE_REPO" rev-parse --short "$RESOLVED_COMMIT")")" else - git -C "$ENGINE_REPO" fetch origin "$ENGINE_REF" + fetch_engine_ref "$ENGINE_REF" RESOLVED_COMMIT="$(git -C "$ENGINE_REPO" rev-parse FETCH_HEAD)" RESOLVED_LABEL="$(sanitize_slug "${ENGINE_REF}-$(git -C "$ENGINE_REPO" rev-parse --short "$RESOLVED_COMMIT")")" fi From 5f6a8646c66e0843c965a12364da88678d886c75 Mon Sep 17 00:00:00 2001 From: web3dev1337 <160291380+web3dev1337@users.noreply.github.com> Date: Mon, 9 Mar 2026 09:29:11 +1100 Subject: [PATCH 39/40] docs: add RZDESIGN Zoo perf sweep report --- ...esign-prs-vs-main-zoo-report-2026-03-09.md | 81 +++++++++++++++++++ 1 file changed, 81 insertions(+) create mode 100644 packages/perf-tools/perf-results/rzdesign-prs-vs-main-zoo-report-2026-03-09.md diff --git a/packages/perf-tools/perf-results/rzdesign-prs-vs-main-zoo-report-2026-03-09.md b/packages/perf-tools/perf-results/rzdesign-prs-vs-main-zoo-report-2026-03-09.md new file mode 100644 index 00000000..80dafa89 --- /dev/null +++ b/packages/perf-tools/perf-results/rzdesign-prs-vs-main-zoo-report-2026-03-09.md @@ -0,0 +1,81 @@ +# RZDESIGN PR Sweep vs `upstream/main` on Zoo Game + +Date: 2026-03-09 + +Baseline: +- Engine ref: `upstream/main` +- Commit: `44f2a42979999ef76413a6afdad02b416aecc000` +- Scenario: `zoo-game-full` +- CPU throttle: none + +Baseline metrics: +- Avg tick: `0.91ms` +- Avg FPS: `17.02` +- Min FPS: `15` +- Avg frame time: `60.47ms` + +## Summary + +- Open `RZDESIGN` PRs tested one-by-one against the same Zoo baseline: `18` +- `FAIL`: `13` +- `WARN`: `5` +- `PASS`: `0` + +Closest to acceptable: +- `#30` `WARN` +- `#31` `WARN` +- `#33` `WARN` +- `#9` `WARN` +- `#34` `WARN` + +Most concerning regressions: +- `#23` strong server and memory regression +- `#24` strongest `p99` regression in the sweep +- `#29` and `#32` both dropped min FPS from `15` to `7` +- `#14` regressed both server tick and client frame time materially + +Interesting mixed cases: +- `#22` improved average FPS and average frame time, but still failed on server tick cost and min FPS stability +- `#26` was roughly flat on client averages, but still failed on server tick thresholds +- `#32` improved average FPS, but failed badly on server metrics and min FPS + +## Important Note + +The initial tail of the sweep for PRs `#14+` was invalid because `run-owned-stack-suite.sh` resolved `pr:` through `origin` only. Those PRs were rerun after fixing the resolver to fall back to `upstream`. Final verdicts below use the successful reruns. + +Framework fix: +- Commit: `bec6537` +- PR: https://github.com/web3dev1337/hytopia-source/pull/11 + +Raw outputs: +- Initial batch: `packages/perf-tools/perf-results/rzdesign-pr-zoo-20260309-083752/` +- Rerun batch: `packages/perf-tools/perf-results/rzdesign-pr-zoo-rerun-20260309-0850-fix/` + +## Results + +| PR | Title | Overall | Avg Tick | Avg FPS | Min FPS | Avg Frame Time | +| --- | --- | --- | --- | --- | --- | --- | +| #2 | [Add configurable blob shadows for entities with quality-based performance controls](https://github.com/hytopiagg/hytopia-source/pull/2) | FAIL FAIL | 0.91 -> 1.05 (+15.3%) | 17.02 -> 15.71 (+7.7%) | 15.00 -> 14.00 (+6.7%) | 60.47 -> 63.38 (+4.8%) | +| #9 | [Improve movement/camera smoothness with deterministic prediction; ack-aware replay; and tick-aligned input application](https://github.com/hytopiagg/hytopia-source/pull/9) | WARN WARNING | 0.91 -> 0.95 (+3.6%) | 17.02 -> 16.44 (+3.4%) | 15.00 -> 14.00 (+6.7%) | 60.47 -> 59.68 (-1.3%) | +| #10 | [client(camera): smooth fixed-camera world-space follow and eliminate jitter](https://github.com/hytopiagg/hytopia-source/pull/10) | FAIL FAIL | 0.91 -> 1.01 (+11.0%) | 17.02 -> 16.40 (+3.7%) | 15.00 -> 14.00 (+6.7%) | 60.47 -> 62.20 (+2.9%) | +| #12 | [Update ThreeJS to 0.183 ](https://github.com/hytopiagg/hytopia-source/pull/12) | FAIL FAIL | 0.91 -> 1.02 (+11.9%) | 17.02 -> 16.31 (+4.2%) | 15.00 -> 11.00 (+26.7%) | 60.47 -> 68.09 (+12.6%) | +| #13 | [chore(client): update all dependencies and resolve compatibility changes](https://github.com/hytopiagg/hytopia-source/pull/13) | FAIL FAIL | 0.91 -> 0.98 (+6.7%) | 17.02 -> 16.18 (+5.0%) | 15.00 -> 13.00 (+13.3%) | 60.47 -> 61.64 (+1.9%) | +| #14 | [Enhance Local Server Discovery UI & Mobile Testing Flow](https://github.com/hytopiagg/hytopia-source/pull/14) | FAIL FAIL | 0.91 -> 1.18 (+29.2%) | 17.02 -> 14.16 (+16.8%) | 15.00 -> 12.00 (+20.0%) | 60.47 -> 71.37 (+18.0%) | +| #22 | [Improve adaptive render resolution for high-DPI displays.](https://github.com/hytopiagg/hytopia-source/pull/22) | FAIL FAIL | 0.91 -> 1.18 (+29.0%) | 17.02 -> 21.76 (-27.8%) | 15.00 -> 12.00 (+20.0%) | 60.47 -> 52.17 (-13.7%) | +| #23 | [Optimize chunk visibility with incremental culling updates.](https://github.com/hytopiagg/hytopia-source/pull/23) | FAIL FAIL | 0.91 -> 1.23 (+35.0%) | 17.02 -> 14.58 (+14.4%) | 15.00 -> 12.00 (+20.0%) | 60.47 -> 72.01 (+19.1%) | +| #24 | [Optimize GLTF instancing and outline rendering hot paths.](https://github.com/hytopiagg/hytopia-source/pull/24) | FAIL FAIL | 0.91 -> 1.24 (+36.0%) | 17.02 -> 14.36 (+15.7%) | 15.00 -> 11.00 (+26.7%) | 60.47 -> 70.21 (+16.1%) | +| #26 | [perf(client): skip GPU uploads for unchanged GLTF instance attributes](https://github.com/hytopiagg/hytopia-source/pull/26) | FAIL FAIL | 0.91 -> 1.05 (+14.9%) | 17.02 -> 17.16 (-0.8%) | 15.00 -> 15.00 (0.0%) | 60.47 -> 58.99 (-2.4%) | +| #27 | [perf(client): reuse chunk mesh geometry instead of dispose/recreate cycle](https://github.com/hytopiagg/hytopia-source/pull/27) | FAIL FAIL | 0.91 -> 1.05 (+15.1%) | 17.02 -> 15.82 (+7.0%) | 15.00 -> 13.00 (+13.3%) | 60.47 -> 65.08 (+7.6%) | +| #28 | [perf(client): quick-win settings — discrete GPU; faster quality ramp-up](https://github.com/hytopiagg/hytopia-source/pull/28) | FAIL FAIL | 0.91 -> 0.95 (+4.1%) | 17.02 -> 16.04 (+5.7%) | 15.00 -> 11.00 (+26.7%) | 60.47 -> 63.83 (+5.6%) | +| #29 | [perf(server): reuse Entity.tick() event payload to eliminate per-tick allocations](https://github.com/hytopiagg/hytopia-source/pull/29) | FAIL FAIL | 0.91 -> 1.11 (+21.7%) | 17.02 -> 16.93 (+0.5%) | 15.00 -> 7.00 (+53.3%) | 60.47 -> 68.99 (+14.1%) | +| #30 | [perf(client): render bloom pass at quarter resolution (~16× less fill)](https://github.com/hytopiagg/hytopia-source/pull/30) | WARN WARNING | 0.91 -> 0.97 (+6.1%) | 17.02 -> 16.56 (+2.7%) | 15.00 -> 15.00 (0.0%) | 60.47 -> 60.40 (-0.1%) | +| #31 | [perf(client): cache parsed chunk/batch origin coordinates](https://github.com/hytopiagg/hytopia-source/pull/31) | WARN WARNING | 0.91 -> 0.97 (+5.7%) | 17.02 -> 17.16 (-0.8%) | 15.00 -> 15.00 (0.0%) | 60.47 -> 59.95 (-0.9%) | +| #32 | [perf(server): reuse position/rotation arrays in network entity sync](https://github.com/hytopiagg/hytopia-source/pull/32) | FAIL FAIL | 0.91 -> 1.09 (+18.9%) | 17.02 -> 19.60 (-15.1%) | 15.00 -> 7.00 (+53.3%) | 60.47 -> 64.20 (+6.2%) | +| #33 | [Optimize network hot paths on client and server](https://github.com/hytopiagg/hytopia-source/pull/33) | WARN WARNING | 0.91 -> 0.97 (+6.5%) | 17.02 -> 16.60 (+2.5%) | 15.00 -> 15.00 (0.0%) | 60.47 -> 60.90 (+0.7%) | +| #34 | [feat(client): add gamepad controller support](https://github.com/hytopiagg/hytopia-source/pull/34) | WARN WARNING | 0.91 -> 1.01 (+10.3%) | 17.02 -> 16.27 (+4.4%) | 15.00 -> 13.00 (+13.3%) | 60.47 -> 62.14 (+2.8%) | + +## Bottom Line + +- On this Zoo scenario, no open `RZDESIGN` PR beat `upstream/main` cleanly. +- The safest-looking PRs from a perf perspective were `#30`, `#31`, `#33`, `#9`, and `#34`, but all still registered warnings. +- The strongest regressions were concentrated in `#14`, `#23`, `#24`, `#29`, and `#32`. From 5cfe803049f87d07f5bc6c125592c604688c9d6d Mon Sep 17 00:00:00 2001 From: web3dev1337 <160291380+web3dev1337@users.noreply.github.com> Date: Mon, 9 Mar 2026 10:53:52 +1100 Subject: [PATCH 40/40] feat: add repeated perf run aggregation --- .gitignore | 1 + CODEBASE_DOCUMENTATION.md | 2 +- .../perf-branch-state-2026-03-06/FINAL.md | 9 +- .../scripts/run-owned-stack-suite.sh | 175 +++++++++++-- packages/perf-tools/src/cli.ts | 104 ++++++++ .../src/runners/BaselineComparer.ts | 4 + .../src/runners/BenchmarkSeriesAggregator.ts | 242 ++++++++++++++++++ 7 files changed, 511 insertions(+), 26 deletions(-) create mode 100644 packages/perf-tools/src/runners/BenchmarkSeriesAggregator.ts diff --git a/.gitignore b/.gitignore index 82552e74..85aac67b 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,4 @@ node_modules/ server/src/playground.mjs server/src/perf-harness.mjs packages/*/dist/ +packages/perf-tools/perf-results/*/ diff --git a/CODEBASE_DOCUMENTATION.md b/CODEBASE_DOCUMENTATION.md index 472c651f..f436e9a0 100644 --- a/CODEBASE_DOCUMENTATION.md +++ b/CODEBASE_DOCUMENTATION.md @@ -16,7 +16,7 @@ PROTOCOL: protocol/ - Packet schemas + definitions (@hytopia.com/server-protocol SDK: sdk/ - Git submodule → hytopiagg/sdk (build output lands here) EXAMPLES: sdk-examples/ - Reference games built with the SDK ASSETS: assets/release/ - Default game assets (audio, blocks, maps, models, particles, skyboxes, ui) -PERF: packages/perf-tools/ - Benchmark CLI + trace analysis (`hytopia-bench`), headless client metrics, synthetic + real-game presets (`zoo-game-full` single-client benchmark, `zoo-game-observe` 5-client joinable Zoo run), helper scripts for linking/running external games (including linked SDK runtime deps, target-ref dependency prep via `ensure-node-modules.sh`, `apply-instrumentation-overlay.sh` for temporary legacy-ref PerfBridge/PerfHarness patching, `overlays/legacy-server/` for older PerfBaseline refs, `overlays/minimal-server/` for telemetry-minimal refs that need injected monitor/network hooks, repeatable HyFire2/Zoo Game workflows, and `run-owned-stack-suite.sh` for one-command multi-game runs against a chosen engine ref/PR with `origin`/`upstream` fetch fallback). Older engine refs now prefer overlayed client/server perf hooks, normalize report outputs to stable paths, then fall back to validated legacy `/__perf` normalization plus compare-time metric skipping instead of misleading zero baselines. +PERF: packages/perf-tools/ - Benchmark CLI + trace analysis (`hytopia-bench`), headless client metrics, synthetic + real-game presets (`zoo-game-full` single-client benchmark, `zoo-game-observe` 5-client joinable Zoo run), helper scripts for linking/running external games (including linked SDK runtime deps, target-ref dependency prep via `ensure-node-modules.sh`, `apply-instrumentation-overlay.sh` for temporary legacy-ref PerfBridge/PerfHarness patching, `overlays/legacy-server/` for older PerfBaseline refs, `overlays/minimal-server/` for telemetry-minimal refs that need injected monitor/network hooks, repeatable HyFire2/Zoo Game workflows, and `run-owned-stack-suite.sh` for one-command multi-game runs against a chosen engine ref/PR with `origin`/`upstream` fetch fallback). The perf CLI now supports repeated-run median workflows via `BenchmarkSeriesAggregator.ts`, `hytopia-bench aggregate`, `hytopia-bench compare-series`, and `run-owned-stack-suite.sh --repeat `, so noisy real-game/client scenarios can be judged on stable medians instead of one-off runs. Older engine refs now prefer overlayed client/server perf hooks, normalize report outputs to stable paths, then fall back to validated legacy `/__perf` normalization plus compare-time metric skipping instead of misleading zero baselines. CONFIG: package.json - Monorepo root (npm workspaces) server/package.json - Server deps + build scripts server/tsconfig.json - Strict TS, path alias @/* → ./src/* diff --git a/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md b/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md index d9948cf1..de1afe8d 100644 --- a/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md +++ b/ai-memory/docs/perf-branch-state-2026-03-06/FINAL.md @@ -79,6 +79,7 @@ Core files: - [cli.ts](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/cli.ts) - [BenchmarkRunner.ts](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/runners/BenchmarkRunner.ts) +- [BenchmarkSeriesAggregator.ts](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/runners/BenchmarkSeriesAggregator.ts) - [MetricCollector.ts](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/runners/MetricCollector.ts) - [ProcessMonitor.ts](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/runners/ProcessMonitor.ts) - [ServerApiClient.ts](/home/ab/GitHub/hytopia/work1/packages/perf-tools/src/runners/ServerApiClient.ts) @@ -91,6 +92,8 @@ Capabilities: - scenario-based benchmark execution - JSON report output - baseline comparisons +- repeated-run median aggregation +- series comparison verdicts for noisy scenarios - regression thresholds - OS-level process monitoring - log capture @@ -164,13 +167,17 @@ Cross-ref hardening added after testing `RZDESIGN/hytopia-source@merged-all-prs- - `run-owned-stack-suite.sh` now resolves `--engine-ref pr:` and other fetched refs through `origin` first and then `upstream`, so upstream PRs can be benchmarked directly from this fork checkout - benchmark JSON now records validation/capability state so missing snapshots are surfaced as warnings/issues instead of silently becoming zero baselines - `compare` now skips non-shared metric families such as server snapshots or render counters when one side lacks them, instead of treating missing data as an improvement +- `hytopia-bench aggregate` can combine repeated benchmark JSONs into a single median report, preserving validation/capability metadata and the source file list +- `hytopia-bench compare-series` compares two repeated benchmark sets via median aggregation and emits a simple series verdict (`improves`, `neutral`, `regresses`, `inconclusive`) based on the core metrics +- `run-owned-stack-suite.sh --repeat ` now runs each scenario multiple times, stores the per-run JSON under `repeats//`, and writes a median aggregate to the stable top-level scenario path used by follow-up compare commands The simplest “test this engine PR across our stack” entrypoint is now: ```bash bash packages/perf-tools/scripts/run-owned-stack-suite.sh \ --engine-ref pr:2 \ - --client-url http://localhost:4173 + --client-url http://localhost:4173 \ + --repeat 3 ``` That wrapper can: diff --git a/packages/perf-tools/scripts/run-owned-stack-suite.sh b/packages/perf-tools/scripts/run-owned-stack-suite.sh index 14928e47..62af64c3 100755 --- a/packages/perf-tools/scripts/run-owned-stack-suite.sh +++ b/packages/perf-tools/scripts/run-owned-stack-suite.sh @@ -11,6 +11,7 @@ ENGINE_REF="" CLIENT_URL="" CLIENT_PORT="4173" CPU_THROTTLE="" +REPEAT_COUNT="1" OUTPUT_ROOT="$REPO_ROOT/packages/perf-tools/perf-results/owned-stack" INTERNAL_PRESETS="idle,stress,stress-walkthrough" EXTERNAL_GAMES="zoo,hyfire2" @@ -49,6 +50,7 @@ Options: --client-url Browser client URL for all client-side runs --client-port Port to use when auto-launching client dev server --cpu-throttle Browser CPU throttle rate for client runs + --repeat Run each scenario N times and aggregate via median --output-root Root directory for suite outputs --internal-presets Comma-separated built-in presets, or none --external-games Comma-separated games: zoo,hyfire2, or none @@ -70,6 +72,7 @@ Examples: bash packages/perf-tools/scripts/run-owned-stack-suite.sh \ --engine-ref feature/blob-shadows \ + --repeat 3 \ --cpu-throttle 4 \ --output-root /tmp/hytopia-bench @@ -151,6 +154,10 @@ while [[ $# -gt 0 ]]; do CPU_THROTTLE="$2" shift 2 ;; + --repeat) + REPEAT_COUNT="$2" + shift 2 + ;; --output-root) OUTPUT_ROOT="$2" shift 2 @@ -213,6 +220,11 @@ if [[ ! -d "$ENGINE_REPO/.git" && ! -f "$ENGINE_REPO/.git" ]]; then exit 1 fi +if ! [[ "$REPEAT_COUNT" =~ ^[1-9][0-9]*$ ]]; then + echo "Error: --repeat must be a positive integer" >&2 + exit 1 +fi + if [[ "$OUTPUT_ROOT" != /* ]]; then OUTPUT_ROOT="$INVOCATION_CWD/$OUTPUT_ROOT" fi @@ -334,11 +346,19 @@ resolve_engine_checkout() { ACTIVE_ENGINE_REPO="$WORKTREE_DIR" } -run_and_capture() { +record_summary_row() { local label="$1" local category="$2" - local output_path="$3" - shift 3 + local status="$3" + local output="$4" + + SUMMARY_ROWS+=("| $label | $category | $status | $output |") +} + +run_command() { + local label="$1" + local output_path="$2" + shift 2 echo "" echo "==> Running $label" @@ -349,8 +369,6 @@ run_and_capture() { local status=$? set -e - SUMMARY_ROWS+=("| $label | $category | $status | $output_path |") - if [[ $status -ne 0 ]]; then echo "WARNING: $label failed with exit code $status" >&2 fi @@ -358,6 +376,129 @@ run_and_capture() { return $status } +aggregate_reports() { + local output_path="$1" + shift + + ( + cd "$TOOLS_REPO/packages/perf-tools" + npx tsx src/cli.ts aggregate --output "$output_path" "$@" + ) +} + +run_internal_preset() { + local preset="$1" + local output_path="$OUTPUT_DIR/${preset}.json" + local repeat_dir="$OUTPUT_DIR/repeats/${preset}" + local repeat_output + local -a repeat_outputs=() + local status=0 + local repeat_index + + if (( REPEAT_COUNT <= 1 )); then + local -a cmd=( + npx tsx src/cli.ts run + --preset "$preset" + --server-cwd "$ACTIVE_ENGINE_REPO/server" + --with-client + --client-dev-url "$CLIENT_URL" + --output "$output_path" + ) + + if [[ -n "$CPU_THROTTLE" ]]; then + cmd+=(--cpu-throttle "$CPU_THROTTLE") + fi + + if run_command "$preset" "$output_path" bash -lc "cd '$TOOLS_REPO/packages/perf-tools' && ${cmd[*]@Q}"; then + record_summary_row "$preset" "internal" "0" "$output_path" + return 0 + fi + + record_summary_row "$preset" "internal" "1" "$output_path" + return 1 + fi + + mkdir -p "$repeat_dir" + + for repeat_index in $(seq 1 "$REPEAT_COUNT"); do + repeat_output="$repeat_dir/run-$repeat_index.json" + repeat_outputs+=("$repeat_output") + + local -a repeat_cmd=( + npx tsx src/cli.ts run + --preset "$preset" + --server-cwd "$ACTIVE_ENGINE_REPO/server" + --with-client + --client-dev-url "$CLIENT_URL" + --output "$repeat_output" + ) + + if [[ -n "$CPU_THROTTLE" ]]; then + repeat_cmd+=(--cpu-throttle "$CPU_THROTTLE") + fi + + if ! run_command "$preset (run $repeat_index/$REPEAT_COUNT)" "$repeat_output" bash -lc "cd '$TOOLS_REPO/packages/perf-tools' && ${repeat_cmd[*]@Q}"; then + status=1 + fi + done + + if [[ $status -eq 0 ]]; then + echo "" + echo "==> Aggregating $preset repeats into $output_path" + if ! aggregate_reports "$output_path" "${repeat_outputs[@]}"; then + status=1 + fi + fi + + record_summary_row "$preset" "internal" "$status" "$output_path (median of $REPEAT_COUNT runs)" + return "$status" +} + +run_external_game_preset() { + local label="$1" + local preset="$2" + local output_name="$3" + shift 3 + local output_path="$OUTPUT_DIR/${output_name}.json" + local repeat_dir="$OUTPUT_DIR/repeats/${output_name}" + local repeat_output + local -a repeat_outputs=() + local status=0 + local repeat_index + + if (( REPEAT_COUNT <= 1 )); then + if run_command "$label" "$output_path" "$@" --output "$output_path"; then + record_summary_row "$label" "external" "0" "$output_path" + return 0 + fi + + record_summary_row "$label" "external" "1" "$output_path" + return 1 + fi + + mkdir -p "$repeat_dir" + + for repeat_index in $(seq 1 "$REPEAT_COUNT"); do + repeat_output="$repeat_dir/run-$repeat_index.json" + repeat_outputs+=("$repeat_output") + + if ! run_command "$label (run $repeat_index/$REPEAT_COUNT)" "$repeat_output" "$@" --output "$repeat_output"; then + status=1 + fi + done + + if [[ $status -eq 0 ]]; then + echo "" + echo "==> Aggregating $label repeats into $output_path" + if ! aggregate_reports "$output_path" "${repeat_outputs[@]}"; then + status=1 + fi + fi + + record_summary_row "$label" "external" "$status" "$output_path (median of $REPEAT_COUNT runs)" + return "$status" +} + write_summary() { local output_dir="$1" local internal_display="$2" @@ -373,6 +514,7 @@ write_summary() { - Resolved commit: \`$RESOLVED_COMMIT\` - Client URL: \`$CLIENT_URL\` - CPU throttle: \`${CPU_THROTTLE:-none}\` +- Repeat count: \`$REPEAT_COUNT\` - Instrumentation overlay: \`${INSTRUMENTATION_OVERLAY}\` - Overlay manifest: \`${OVERLAY_MANIFEST:-none}\` - Internal presets: \`$internal_display\` @@ -396,7 +538,7 @@ EOF \`\`\`bash bash packages/perf-tools/scripts/run-owned-stack-suite.sh \\ --engine-ref "$resolved_ref" \\ - --client-url "$CLIENT_URL"$(if [[ -n "$CPU_THROTTLE" ]]; then printf ' \\\n --cpu-throttle "%s"' "$CPU_THROTTLE"; fi)$(if [[ "$internal_display" != "none" ]]; then printf ' \\\n --internal-presets "%s"' "$internal_display"; fi)$(if [[ "$external_display" != "none" ]]; then printf ' \\\n --external-games "%s"' "$external_display"; fi) + --client-url "$CLIENT_URL"$(if [[ "$REPEAT_COUNT" != "1" ]]; then printf ' \\\n --repeat "%s"' "$REPEAT_COUNT"; fi)$(if [[ -n "$CPU_THROTTLE" ]]; then printf ' \\\n --cpu-throttle "%s"' "$CPU_THROTTLE"; fi)$(if [[ "$internal_display" != "none" ]]; then printf ' \\\n --internal-presets "%s"' "$internal_display"; fi)$(if [[ "$external_display" != "none" ]]; then printf ' \\\n --external-games "%s"' "$external_display"; fi) \`\`\` EOF } @@ -443,20 +585,7 @@ if [[ "$INTERNAL_PRESETS" != "none" ]]; then continue fi - cmd=( - npx tsx src/cli.ts run - --preset "$preset" - --server-cwd "$ACTIVE_ENGINE_REPO/server" - --with-client - --client-dev-url "$CLIENT_URL" - --output "$OUTPUT_DIR/${preset}.json" - ) - - if [[ -n "$CPU_THROTTLE" ]]; then - cmd+=(--cpu-throttle "$CPU_THROTTLE") - fi - - if ! run_and_capture "$preset" "internal" "$OUTPUT_DIR/${preset}.json" bash -lc "cd '$TOOLS_REPO/packages/perf-tools' && ${cmd[*]@Q}"; then + if ! run_internal_preset "$preset"; then overall_status=1 fi done @@ -482,14 +611,13 @@ if [[ "$EXTERNAL_GAMES" != "none" ]]; then --preset "$ZOO_PRESET" --client-url "$CLIENT_URL" --port "$ZOO_PORT" - --output "$OUTPUT_DIR/${ZOO_PRESET}.json" ) if [[ -n "$CPU_THROTTLE" ]]; then game_cmd+=(--cpu-throttle "$CPU_THROTTLE") fi - if ! run_and_capture "zoo:$ZOO_PRESET" "external" "$OUTPUT_DIR/${ZOO_PRESET}.json" "${game_cmd[@]}"; then + if ! run_external_game_preset "zoo:$ZOO_PRESET" "$ZOO_PRESET" "$ZOO_PRESET" "${game_cmd[@]}"; then overall_status=1 fi ;; @@ -502,14 +630,13 @@ if [[ "$EXTERNAL_GAMES" != "none" ]]; then --client-url "$CLIENT_URL" --server-cmd "$HYFIRE2_SERVER_CMD" --port "$HYFIRE2_PORT" - --output "$OUTPUT_DIR/${HYFIRE2_PRESET}.json" ) if [[ -n "$CPU_THROTTLE" ]]; then game_cmd+=(--cpu-throttle "$CPU_THROTTLE") fi - if ! run_and_capture "hyfire2:$HYFIRE2_PRESET" "external" "$OUTPUT_DIR/${HYFIRE2_PRESET}.json" "${game_cmd[@]}"; then + if ! run_external_game_preset "hyfire2:$HYFIRE2_PRESET" "$HYFIRE2_PRESET" "$HYFIRE2_PRESET" "${game_cmd[@]}"; then overall_status=1 fi ;; diff --git a/packages/perf-tools/src/cli.ts b/packages/perf-tools/src/cli.ts index 24086922..6c26a9cb 100644 --- a/packages/perf-tools/src/cli.ts +++ b/packages/perf-tools/src/cli.ts @@ -7,6 +7,7 @@ import { Command } from 'commander'; import { loadScenario } from './runners/ScenarioLoader.js'; import BenchmarkRunner from './runners/BenchmarkRunner.js'; import BaselineComparer from './runners/BaselineComparer.js'; +import BenchmarkSeriesAggregator from './runners/BenchmarkSeriesAggregator.js'; import ConsoleReporter from './reporters/ConsoleReporter.js'; import JsonReporter from './reporters/JsonReporter.js'; @@ -112,6 +113,23 @@ program } }); +program + .command('aggregate') + .description('Aggregate repeated benchmark JSONs into a median report') + .argument('', 'Benchmark report JSON files to aggregate') + .requiredOption('--output ', 'Write the aggregated report to JSON file') + .action((reportPaths, options) => { + const aggregator = new BenchmarkSeriesAggregator(); + const outputPath = options.output; + const absoluteOutputPath = path.isAbsolute(outputPath) ? outputPath : path.resolve(process.cwd(), outputPath); + const report = aggregator.aggregateFiles(reportPaths); + + fs.mkdirSync(path.dirname(absoluteOutputPath), { recursive: true }); + fs.writeFileSync(absoluteOutputPath, JSON.stringify(report, null, 2), 'utf-8'); + + console.log(`Aggregated ${reportPaths.length} reports into: ${absoluteOutputPath}`); + }); + program .command('compare') .description('Compare two baseline files') @@ -201,6 +219,84 @@ program } }); +program + .command('compare-series') + .description('Compare two repeated benchmark sets using median aggregation') + .requiredOption('--before ', 'Comma-separated list of baseline report JSON files') + .requiredOption('--after ', 'Comma-separated list of candidate report JSON files') + .option('--warn ', 'Warning threshold percentage', '5') + .option('--fail ', 'Failure threshold percentage', '15') + .option('--fail-on-regression', 'Exit with code 1 if the aggregate verdict regresses') + .action((options) => { + const beforePaths = splitPathList(options.before); + const afterPaths = splitPathList(options.after); + const aggregator = new BenchmarkSeriesAggregator(); + const beforeAggregate = aggregator.aggregateFiles(beforePaths); + const afterAggregate = aggregator.aggregateFiles(afterPaths); + const comparer = new BaselineComparer({ + warningThresholdPct: parseFloat(options.warn), + failThresholdPct: parseFloat(options.fail), + }); + const includeServerMetrics = hasServerMetrics(beforeAggregate) && hasServerMetrics(afterAggregate); + const usesLegacyServerMetrics = reportUsesLegacyServerMetrics(beforeAggregate) || reportUsesLegacyServerMetrics(afterAggregate); + const includeClientMetrics = hasClientMetrics(beforeAggregate) && hasClientMetrics(afterAggregate); + const includeClientRenderMetrics = includeClientMetrics && hasClientRenderMetrics(beforeAggregate) && hasClientRenderMetrics(afterAggregate); + const includeServerTailMetrics = includeServerMetrics && !usesLegacyServerMetrics; + const includeServerBudgetMetrics = includeServerMetrics && !usesLegacyServerMetrics; + const includeServerNetworkMetrics = includeServerMetrics && !usesLegacyServerMetrics + && beforeAggregate.baseline.network !== undefined + && afterAggregate.baseline.network !== undefined; + + if (!includeServerMetrics && !includeClientMetrics) { + console.error('Cannot compare these report series because they do not share any comparable metric categories.'); + process.exit(1); + } + + if (!includeServerMetrics) { + console.log('Skipping server metrics: one or both report series lack server snapshots.'); + } else if (usesLegacyServerMetrics) { + console.log('Skipping server p99, budget, and network metrics: one or both report series used the legacy server perf API.'); + } + + if (!includeClientMetrics) { + console.log('Skipping client metrics: one or both report series lack client snapshots.'); + } else if (!includeClientRenderMetrics) { + console.log('Skipping client draw-call and triangle metrics: one or both report series lack usable render counters.'); + } + + const comparison = comparer.compare( + beforeAggregate.baseline, + afterAggregate.baseline, + `${beforePaths.length}x before vs ${afterPaths.length}x after`, + { + includeServerMetrics, + includeServerTailMetrics, + includeServerBudgetMetrics, + includeServerNetworkMetrics, + includeClientMetrics, + includeClientRenderMetrics, + }, + ); + const summary = aggregator.classifyComparison(comparison); + const reporter = new ConsoleReporter(); + + reporter.reportComparison(comparison); + console.log(`Series verdict: ${summary.verdict.toUpperCase()}`); + + if (summary.keyEntries.length > 0) { + console.log('Key metrics:'); + for (const entry of summary.keyEntries) { + const change = entry.changePct > 0 ? `+${entry.changePct.toFixed(1)}%` : `${entry.changePct.toFixed(1)}%`; + console.log(` ${entry.metric}: ${entry.baseline.toFixed(2)} -> ${entry.current.toFixed(2)} (${change})`); + } + console.log(''); + } + + if (options.failOnRegression && summary.verdict === 'regresses') { + process.exitCode = 1; + } + }); + program .command('presets') .description('List available built-in presets') @@ -254,3 +350,11 @@ function hasClientRenderMetrics(input: ReturnType 0 || client.maxDrawCalls > 0 || client.avgTriangles > 0 || client.maxTriangles > 0; } + +function splitPathList(value: string): string[] { + return value + .split(',') + .map(item => item.trim()) + .filter(item => item.length > 0) + .map(item => path.isAbsolute(item) ? item : path.resolve(process.cwd(), item)); +} diff --git a/packages/perf-tools/src/runners/BaselineComparer.ts b/packages/perf-tools/src/runners/BaselineComparer.ts index a1d7a4db..34b4e4f2 100644 --- a/packages/perf-tools/src/runners/BaselineComparer.ts +++ b/packages/perf-tools/src/runners/BaselineComparer.ts @@ -72,6 +72,8 @@ export interface ComparisonScope { export interface LoadedBenchmarkInput { baseline: BaselineResult; metrics?: { + tickReportCount?: number; + spikeCount?: number; serverSnapshotCount?: number; clientSnapshotCount?: number; }; @@ -81,7 +83,9 @@ export interface LoadedBenchmarkInput { issues?: string[]; }; capabilities?: { + serverMetrics?: boolean; serverMetricSources?: string[]; + clientMetrics?: boolean; clientMetricSources?: string[]; }; } diff --git a/packages/perf-tools/src/runners/BenchmarkSeriesAggregator.ts b/packages/perf-tools/src/runners/BenchmarkSeriesAggregator.ts new file mode 100644 index 00000000..c445cdb7 --- /dev/null +++ b/packages/perf-tools/src/runners/BenchmarkSeriesAggregator.ts @@ -0,0 +1,242 @@ +import * as fs from 'node:fs'; +import type { BaselineResult, ComparisonEntry, ComparisonResult, LoadedBenchmarkInput } from './BaselineComparer.js'; + +export interface AggregatedBenchmarkInput extends LoadedBenchmarkInput { + scenario?: string; + durationMs?: number; + aggregation: { + method: 'median'; + runCount: number; + sourceFiles: string[]; + }; +} + +export type SeriesVerdict = 'improves' | 'neutral' | 'regresses' | 'inconclusive'; + +export interface SeriesComparisonSummary { + comparison: ComparisonResult; + verdict: SeriesVerdict; + keyEntries: ComparisonEntry[]; +} + +const CORE_METRICS = new Set([ + 'avgTickMs', + 'p95TickMs', + 'avgFps', + 'client.avgFrameTimeMs', +]); + +type ReportWithMetadata = LoadedBenchmarkInput & { + scenario?: string; + durationMs?: number; +}; + +export default class BenchmarkSeriesAggregator { + public aggregateFiles(filePaths: string[]): AggregatedBenchmarkInput { + if (filePaths.length === 0) { + throw new Error('aggregateFiles(): expected at least one benchmark report.'); + } + + const reports = filePaths.map(filePath => this._loadReport(filePath)); + + for (const [index, report] of reports.entries()) { + if (report.validation?.valid === false) { + throw new Error(`aggregateFiles(): ${filePaths[index]} is invalid and cannot be aggregated.`); + } + } + + const scenario = this._firstDefined(reports.map(report => report.scenario)); + const durationMsValues = reports + .map(report => report.durationMs) + .filter((value): value is number => value !== undefined); + + return { + scenario, + durationMs: durationMsValues.length > 0 ? this._median(durationMsValues) : undefined, + baseline: this._aggregateBaseline(reports.map(report => report.baseline)), + metrics: this._aggregateMetrics(reports), + validation: { + valid: true, + warnings: [ + `Aggregated ${filePaths.length} benchmark reports using the median for each numeric metric.`, + ], + issues: [], + }, + capabilities: this._aggregateCapabilities(reports), + aggregation: { + method: 'median', + runCount: filePaths.length, + sourceFiles: filePaths, + }, + }; + } + + public classifyComparison(comparison: ComparisonResult): SeriesComparisonSummary { + const keyEntries = comparison.entries.filter(entry => CORE_METRICS.has(entry.metric)); + const improvements = keyEntries.filter(entry => entry.changePct < -comparison.warningThresholdPct); + const regressions = keyEntries.filter(entry => entry.changePct > comparison.warningThresholdPct); + + let verdict: SeriesVerdict = 'inconclusive'; + + if (keyEntries.length === 0) { + verdict = 'inconclusive'; + } else if (regressions.length === 0 && improvements.length === 0) { + verdict = 'neutral'; + } else if (regressions.length > 0 && improvements.length === 0) { + verdict = 'regresses'; + } else if (improvements.length > 0 && regressions.length === 0) { + verdict = 'improves'; + } else { + verdict = 'inconclusive'; + } + + return { + comparison, + verdict, + keyEntries, + }; + } + + private _loadReport(filePath: string): ReportWithMetadata { + const content = fs.readFileSync(filePath, 'utf-8'); + const data = JSON.parse(content); + const loaded = ('baseline' in data ? data : { baseline: data }) as ReportWithMetadata; + + return { + scenario: loaded.scenario, + durationMs: loaded.durationMs, + baseline: loaded.baseline, + metrics: loaded.metrics, + validation: loaded.validation, + capabilities: loaded.capabilities, + }; + } + + private _aggregateBaseline(results: BaselineResult[]): BaselineResult { + const baseline: BaselineResult = { + avgTickMs: this._median(results.map(result => result.avgTickMs)), + maxTickMs: this._median(results.map(result => result.maxTickMs)), + p95TickMs: this._median(results.map(result => result.p95TickMs)), + p99TickMs: this._median(results.map(result => result.p99TickMs)), + ticksOverBudgetPct: this._median(results.map(result => result.ticksOverBudgetPct)), + avgMemoryMb: this._median(results.map(result => result.avgMemoryMb)), + operations: this._aggregateOperations(results), + }; + + if (results.every(result => result.avgFps !== undefined)) { + baseline.avgFps = this._median(results.map(result => result.avgFps as number)); + } + + if (results.every(result => result.client !== undefined)) { + baseline.client = { + avgFps: this._median(results.map(result => result.client!.avgFps)), + minFps: this._median(results.map(result => result.client!.minFps)), + avgFrameTimeMs: this._median(results.map(result => result.client!.avgFrameTimeMs)), + avgDrawCalls: this._median(results.map(result => result.client!.avgDrawCalls)), + maxDrawCalls: this._median(results.map(result => result.client!.maxDrawCalls)), + avgTriangles: this._median(results.map(result => result.client!.avgTriangles)), + maxTriangles: this._median(results.map(result => result.client!.maxTriangles)), + avgGeometries: this._median(results.map(result => result.client!.avgGeometries)), + avgEntities: this._median(results.map(result => result.client!.avgEntities)), + avgVisibleChunks: this._median(results.map(result => result.client!.avgVisibleChunks)), + avgUsedMemoryMb: this._median(results.map(result => result.client!.avgUsedMemoryMb)), + }; + } + + if (results.every(result => result.network !== undefined)) { + baseline.network = { + totalBytesSent: this._median(results.map(result => result.network!.totalBytesSent)), + totalBytesReceived: this._median(results.map(result => result.network!.totalBytesReceived)), + maxConnectedPlayers: this._median(results.map(result => result.network!.maxConnectedPlayers)), + avgBytesSentPerSecond: this._median(results.map(result => result.network!.avgBytesSentPerSecond)), + maxBytesSentPerSecond: this._median(results.map(result => result.network!.maxBytesSentPerSecond)), + avgBytesReceivedPerSecond: this._median(results.map(result => result.network!.avgBytesReceivedPerSecond)), + maxBytesReceivedPerSecond: this._median(results.map(result => result.network!.maxBytesReceivedPerSecond)), + avgPacketsSentPerSecond: this._median(results.map(result => result.network!.avgPacketsSentPerSecond)), + maxPacketsSentPerSecond: this._median(results.map(result => result.network!.maxPacketsSentPerSecond)), + avgPacketsReceivedPerSecond: this._median(results.map(result => result.network!.avgPacketsReceivedPerSecond)), + maxPacketsReceivedPerSecond: this._median(results.map(result => result.network!.maxPacketsReceivedPerSecond)), + avgSerializationMs: this._median(results.map(result => result.network!.avgSerializationMs)), + compressionCountTotal: this._median(results.map(result => result.network!.compressionCountTotal)), + }; + } + + return baseline; + } + + private _aggregateOperations(results: BaselineResult[]): BaselineResult['operations'] { + if (results.length === 0) { + return {}; + } + + const sharedOperationNames = results + .map(result => new Set(Object.keys(result.operations ?? {}))) + .reduce((shared, current) => { + return new Set([...shared].filter(name => current.has(name))); + }); + + const operations: BaselineResult['operations'] = {}; + + for (const operationName of sharedOperationNames) { + operations[operationName] = { + avgMs: this._median(results.map(result => result.operations[operationName].avgMs)), + p95Ms: this._median(results.map(result => result.operations[operationName].p95Ms)), + }; + } + + return operations; + } + + private _aggregateMetrics(reports: ReportWithMetadata[]): AggregatedBenchmarkInput['metrics'] { + const tickReportCounts = reports + .map(report => report.metrics?.tickReportCount) + .filter((value): value is number => value !== undefined); + const spikeCounts = reports + .map(report => report.metrics?.spikeCount) + .filter((value): value is number => value !== undefined); + const serverSnapshotCounts = reports + .map(report => report.metrics?.serverSnapshotCount) + .filter((value): value is number => value !== undefined); + const clientSnapshotCounts = reports + .map(report => report.metrics?.clientSnapshotCount) + .filter((value): value is number => value !== undefined); + + return { + tickReportCount: tickReportCounts.length > 0 ? this._median(tickReportCounts) : undefined, + spikeCount: spikeCounts.length > 0 ? this._median(spikeCounts) : undefined, + serverSnapshotCount: serverSnapshotCounts.length > 0 ? this._median(serverSnapshotCounts) : undefined, + clientSnapshotCount: clientSnapshotCounts.length > 0 ? this._median(clientSnapshotCounts) : undefined, + }; + } + + private _aggregateCapabilities(reports: ReportWithMetadata[]): AggregatedBenchmarkInput['capabilities'] { + const serverMetricSources = reports + .map(report => report.capabilities?.serverMetricSources ?? []) + .reduce((shared, sources) => shared.filter(source => sources.includes(source))); + const clientMetricSources = reports + .map(report => report.capabilities?.clientMetricSources ?? []) + .reduce((shared, sources) => shared.filter(source => sources.includes(source))); + + return { + serverMetrics: reports.every(report => report.capabilities?.serverMetrics !== false), + serverMetricSources, + clientMetrics: reports.every(report => report.capabilities?.clientMetrics !== false), + clientMetricSources, + }; + } + + private _median(values: number[]): number { + const sorted = [...values].sort((a, b) => a - b); + const middleIndex = Math.floor(sorted.length / 2); + + if (sorted.length % 2 === 1) { + return sorted[middleIndex]; + } + + return (sorted[middleIndex - 1] + sorted[middleIndex]) / 2; + } + + private _firstDefined(values: Array): T | undefined { + return values.find((value): value is T => value !== undefined); + } +}